/* Tests imported from Project Wycheproof (https://github.com/google/wycheproof) * The following vectors have been extracted from the json files in: * https://github.com/google/wycheproof/tree/master/testvectors * */ /** * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except * in compliance with the License. You may obtain a copy of the License at * *

http://www.apache.org/licenses/LICENSE-2.0 * *

Unless required by applicable law or agreed to in writing, software distributed under the * License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either * express or implied. See the License for the specific language governing permissions and * limitations under the License. */ /* Test 0 for ECDSA, tcId is 1 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_0_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_0_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_0_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x13, 0x9c, 0x78, 0x24, 0x3a, 0x6e, 0x36, 0xe1, 0x24, 0xd5, 0xf5, 0xe1, 0x4b, 0x4c, 0xb8, 0x75, 0x4a, 0xbd, 0xf2, 0x0f, 0xf1, 0xa5, 0x01, 0xd5, 0x66, 0x6a, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_0 = { .name = "ecdsa_brainpoolp224r1_sha224_0", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_0_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_0_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_0_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 1 for ECDSA, tcId is 2 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_1_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_1_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_1_sig[] = { 0x01, 0xa3, 0x29, 0xe1, 0x41, 0x8c, 0x0a, 0xca, 0x9d, 0xaf, 0xf7, 0x53, 0xa4, 0x0f, 0x22, 0xdc, 0xdb, 0x66, 0x98, 0x43, 0xe6, 0x60, 0x41, 0xd1, 0x03, 0xaa, 0x30, 0xf5, 0x72, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_1 = { .name = "ecdsa_brainpoolp224r1_sha224_1", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_1_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_1_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_1_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2 for ECDSA, tcId is 3 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_2_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_2_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_2_sig[] = { 0x0c, 0x58, 0x88, 0x12, 0xc0, 0x7c, 0x02, 0x6e, 0xa4, 0x39, 0x0c, 0xa6, 0xdc, 0x7f, 0x1a, 0x56, 0x3b, 0x95, 0x34, 0xb0, 0x7b, 0x7b, 0xa8, 0x43, 0xa1, 0x1e, 0x31, 0xcc, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_2 = { .name = "ecdsa_brainpoolp224r1_sha224_2", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_2_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_2_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_2_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 3 for ECDSA, tcId is 4 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_3_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_3_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_3_sig[] = { 0x01, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_3 = { .name = "ecdsa_brainpoolp224r1_sha224_3", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_3_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_3_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_3_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 4 for ECDSA, tcId is 5 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_4_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_4_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_4_sig[] = { 0x34, 0x97, 0x53, 0x68, 0x9a, 0x38, 0x9b, 0xe8, 0x7a, 0x20, 0xdc, 0x81, 0x66, 0xae, 0x1e, 0xbd, 0x6a, 0x7e, 0x78, 0x65, 0x0d, 0x9c, 0xeb, 0x9f, 0xfb, 0x76, 0x9e, 0x2d, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_4 = { .name = "ecdsa_brainpoolp224r1_sha224_4", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_4_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_4_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_4_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 5 for ECDSA, tcId is 6 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_5_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_5_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_5_sig[] = { 0x00, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x01, 0x9b, 0xe5, 0xf1, 0x30, 0x12, 0x18, 0x96, 0x2b, 0x2f, 0x5a, 0x6a, 0x69, 0xa0, 0x55, 0x3e, 0xbc, 0x57, 0x6f, 0x86, 0x86, 0xea, 0x18, 0x77, 0x71, 0xe4, 0xe4, 0xe4, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_5 = { .name = "ecdsa_brainpoolp224r1_sha224_5", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_5_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_5_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_5_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 6 for ECDSA, tcId is 7 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_6_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_6_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_6_sig[] = { 0x00, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x01, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_6 = { .name = "ecdsa_brainpoolp224r1_sha224_6", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_6_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_6_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_6_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 7 for ECDSA, tcId is 8 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_7_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_7_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_7_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x3b, 0xdb, 0x43, 0x7a, 0x14, 0x2a, 0xd0, 0x5a, 0xfa, 0xbd, 0xc5, 0xbb, 0xd5, 0x7b, 0xbc, 0xdc, 0x79, 0xa7, 0x35, 0xc4, 0x83, 0xc6, 0x45, 0x31, 0xc0, 0xc2, 0xae, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_7 = { .name = "ecdsa_brainpoolp224r1_sha224_7", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_7_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_7_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_7_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 8 for ECDSA, tcId is 9 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_8_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_8_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_8_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_8 = { .name = "ecdsa_brainpoolp224r1_sha224_8", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_8_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_8_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_8_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 9 for ECDSA, tcId is 10 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_9_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_9_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_9_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_9 = { .name = "ecdsa_brainpoolp224r1_sha224_9", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_9_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_9_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_9_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 10 for ECDSA, tcId is 11 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_10_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_10_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_10_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_10 = { .name = "ecdsa_brainpoolp224r1_sha224_10", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_10_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_10_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_10_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11 for ECDSA, tcId is 12 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_11_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_11_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_11_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_11 = { .name = "ecdsa_brainpoolp224r1_sha224_11", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_11_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_11_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_11_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 12 for ECDSA, tcId is 13 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_12_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_12_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_12_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_12 = { .name = "ecdsa_brainpoolp224r1_sha224_12", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_12_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_12_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_12_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 13 for ECDSA, tcId is 14 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_13_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_13_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_13_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_13 = { .name = "ecdsa_brainpoolp224r1_sha224_13", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_13_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_13_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_13_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 14 for ECDSA, tcId is 15 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_14_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_14_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_14_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_14 = { .name = "ecdsa_brainpoolp224r1_sha224_14", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_14_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_14_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_14_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 15 for ECDSA, tcId is 16 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_15_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_15_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_15_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_15 = { .name = "ecdsa_brainpoolp224r1_sha224_15", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_15_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_15_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_15_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 16 for ECDSA, tcId is 17 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_16_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_16_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_16_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_16 = { .name = "ecdsa_brainpoolp224r1_sha224_16", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_16_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_16_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_16_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 17 for ECDSA, tcId is 18 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_17_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_17_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_17_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_17 = { .name = "ecdsa_brainpoolp224r1_sha224_17", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_17_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_17_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_17_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 18 for ECDSA, tcId is 19 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_18_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_18_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_18_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_18 = { .name = "ecdsa_brainpoolp224r1_sha224_18", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_18_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_18_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_18_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 19 for ECDSA, tcId is 20 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_19_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_19_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_19_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_19 = { .name = "ecdsa_brainpoolp224r1_sha224_19", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_19_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_19_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_19_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 20 for ECDSA, tcId is 21 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_20_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_20_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_20_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_20 = { .name = "ecdsa_brainpoolp224r1_sha224_20", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_20_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_20_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_20_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 21 for ECDSA, tcId is 22 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_21_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_21_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_21_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_21 = { .name = "ecdsa_brainpoolp224r1_sha224_21", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_21_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_21_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_21_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 22 for ECDSA, tcId is 23 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_22_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_22_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_22_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_22 = { .name = "ecdsa_brainpoolp224r1_sha224_22", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_22_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_22_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_22_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 23 for ECDSA, tcId is 24 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_23_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_23_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_23_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_23 = { .name = "ecdsa_brainpoolp224r1_sha224_23", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_23_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_23_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_23_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 24 for ECDSA, tcId is 25 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_24_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_24_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_24_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_24 = { .name = "ecdsa_brainpoolp224r1_sha224_24", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_24_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_24_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_24_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 25 for ECDSA, tcId is 26 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_25_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_25_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_25_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_25 = { .name = "ecdsa_brainpoolp224r1_sha224_25", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_25_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_25_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_25_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 26 for ECDSA, tcId is 27 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_26_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_26_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_26_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_26 = { .name = "ecdsa_brainpoolp224r1_sha224_26", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_26_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_26_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_26_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 27 for ECDSA, tcId is 28 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_27_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_27_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_27_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_27 = { .name = "ecdsa_brainpoolp224r1_sha224_27", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_27_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_27_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_27_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 28 for ECDSA, tcId is 29 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_28_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_28_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_28_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_28 = { .name = "ecdsa_brainpoolp224r1_sha224_28", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_28_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_28_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_28_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 29 for ECDSA, tcId is 30 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_29_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_29_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_29_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_29 = { .name = "ecdsa_brainpoolp224r1_sha224_29", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_29_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_29_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_29_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 30 for ECDSA, tcId is 31 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_30_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_30_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_30_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_30 = { .name = "ecdsa_brainpoolp224r1_sha224_30", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_30_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_30_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_30_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 31 for ECDSA, tcId is 32 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_31_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_31_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_31_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_31 = { .name = "ecdsa_brainpoolp224r1_sha224_31", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_31_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_31_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_31_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 32 for ECDSA, tcId is 33 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_32_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_32_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_32_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_32 = { .name = "ecdsa_brainpoolp224r1_sha224_32", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_32_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_32_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_32_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 33 for ECDSA, tcId is 34 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_33_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_33_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_33_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_33 = { .name = "ecdsa_brainpoolp224r1_sha224_33", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_33_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_33_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_33_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 34 for ECDSA, tcId is 35 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_34_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_34_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_34_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_34 = { .name = "ecdsa_brainpoolp224r1_sha224_34", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_34_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_34_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_34_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 35 for ECDSA, tcId is 36 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_35_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_35_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_35_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_35 = { .name = "ecdsa_brainpoolp224r1_sha224_35", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_35_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_35_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_35_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 36 for ECDSA, tcId is 37 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_36_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_36_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_36_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_36 = { .name = "ecdsa_brainpoolp224r1_sha224_36", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_36_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_36_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_36_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 37 for ECDSA, tcId is 38 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_37_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_37_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_37_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_37 = { .name = "ecdsa_brainpoolp224r1_sha224_37", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_37_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_37_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_37_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 38 for ECDSA, tcId is 39 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_38_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_38_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_38_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_38 = { .name = "ecdsa_brainpoolp224r1_sha224_38", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_38_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_38_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_38_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 39 for ECDSA, tcId is 40 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_39_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_39_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_39_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_39 = { .name = "ecdsa_brainpoolp224r1_sha224_39", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_39_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_39_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_39_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 40 for ECDSA, tcId is 41 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_40_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_40_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_40_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_40 = { .name = "ecdsa_brainpoolp224r1_sha224_40", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_40_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_40_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_40_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 41 for ECDSA, tcId is 42 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_41_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_41_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_41_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_41 = { .name = "ecdsa_brainpoolp224r1_sha224_41", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_41_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_41_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_41_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 42 for ECDSA, tcId is 43 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_42_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_42_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_42_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_42 = { .name = "ecdsa_brainpoolp224r1_sha224_42", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_42_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_42_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_42_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 43 for ECDSA, tcId is 44 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_43_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_43_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_43_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_43 = { .name = "ecdsa_brainpoolp224r1_sha224_43", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_43_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_43_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_43_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 44 for ECDSA, tcId is 45 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_44_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_44_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_44_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_44 = { .name = "ecdsa_brainpoolp224r1_sha224_44", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_44_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_44_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_44_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 45 for ECDSA, tcId is 46 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_45_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_45_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_45_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_45 = { .name = "ecdsa_brainpoolp224r1_sha224_45", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_45_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_45_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_45_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 46 for ECDSA, tcId is 47 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_46_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_46_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_46_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_46 = { .name = "ecdsa_brainpoolp224r1_sha224_46", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_46_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_46_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_46_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 47 for ECDSA, tcId is 48 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_47_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_47_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_47_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_47 = { .name = "ecdsa_brainpoolp224r1_sha224_47", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_47_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_47_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_47_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 48 for ECDSA, tcId is 49 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_48_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_48_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_48_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_48 = { .name = "ecdsa_brainpoolp224r1_sha224_48", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_48_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_48_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_48_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 49 for ECDSA, tcId is 50 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_49_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_49_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_49_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_49 = { .name = "ecdsa_brainpoolp224r1_sha224_49", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_49_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_49_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_49_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 50 for ECDSA, tcId is 51 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_50_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_50_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_50_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_50 = { .name = "ecdsa_brainpoolp224r1_sha224_50", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_50_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_50_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_50_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 51 for ECDSA, tcId is 52 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_51_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_51_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_51_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_51 = { .name = "ecdsa_brainpoolp224r1_sha224_51", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_51_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_51_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_51_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 52 for ECDSA, tcId is 53 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_52_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_52_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_52_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_52 = { .name = "ecdsa_brainpoolp224r1_sha224_52", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_52_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_52_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_52_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 53 for ECDSA, tcId is 54 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_53_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_53_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_53_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_53 = { .name = "ecdsa_brainpoolp224r1_sha224_53", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_53_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_53_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_53_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 54 for ECDSA, tcId is 55 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_54_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_54_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_54_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_54 = { .name = "ecdsa_brainpoolp224r1_sha224_54", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_54_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_54_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_54_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 55 for ECDSA, tcId is 56 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_55_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_55_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_55_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_55 = { .name = "ecdsa_brainpoolp224r1_sha224_55", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_55_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_55_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_55_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 56 for ECDSA, tcId is 57 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_56_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_56_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_56_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_56 = { .name = "ecdsa_brainpoolp224r1_sha224_56", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_56_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_56_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_56_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 57 for ECDSA, tcId is 58 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_57_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_57_msg[] = { 0x39, 0x35, 0x33, 0x38, 0x38, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_57_sig[] = { 0x0e, 0x7e, 0xca, 0xb2, 0x27, 0x6f, 0x03, 0x5c, 0x0d, 0xc7, 0x05, 0x20, 0xeb, 0xd5, 0xae, 0x3c, 0xb7, 0xb7, 0xa8, 0xf2, 0x1f, 0xa5, 0x68, 0x7e, 0xee, 0x92, 0xc4, 0x62, 0x85, 0xa8, 0x53, 0x32, 0xf8, 0xc8, 0x99, 0xb5, 0x3d, 0x43, 0x09, 0x1b, 0x02, 0xe6, 0x95, 0x6b, 0x39, 0x18, 0x17, 0xe1, 0x75, 0xa8, 0xb1, 0xf4, 0x0d, 0xca, 0x7e, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_57 = { .name = "ecdsa_brainpoolp224r1_sha224_57", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_57_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_57_msg, .msglen = 5, .sig = ecdsa_brainpoolp224r1_sha224_57_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 58 for ECDSA, tcId is 59 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_58_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_58_msg[] = { 0x32, 0x32, 0x35, 0x34, 0x36, 0x32, 0x38, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_58_sig[] = { 0x2f, 0xc2, 0xef, 0x9f, 0x76, 0x63, 0xf6, 0x6f, 0x13, 0xb0, 0x4e, 0x49, 0xf2, 0x06, 0xc2, 0x24, 0x41, 0xeb, 0x3e, 0xe1, 0x91, 0x7b, 0x8b, 0xf8, 0x1a, 0x9b, 0x53, 0x76, 0xd1, 0xdf, 0x3d, 0xd0, 0x27, 0x0e, 0x58, 0x84, 0xe9, 0x84, 0x8e, 0xa2, 0x81, 0x2b, 0x66, 0xf5, 0x01, 0x5b, 0xe9, 0x6d, 0x25, 0x85, 0xfe, 0xd3, 0x95, 0x7b, 0x31, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_58 = { .name = "ecdsa_brainpoolp224r1_sha224_58", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_58_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_58_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_58_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 59 for ECDSA, tcId is 60 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_59_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_59_msg[] = { 0x31, 0x38, 0x32, 0x37, 0x38, 0x37, 0x38, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_59_sig[] = { 0xc6, 0x82, 0x58, 0x7b, 0xf4, 0x3e, 0x0c, 0x95, 0x4e, 0xb5, 0x8b, 0xbc, 0xfe, 0xb9, 0x4d, 0xfa, 0xc8, 0xba, 0xd4, 0x04, 0x99, 0x5a, 0xc2, 0x6e, 0x8e, 0x51, 0xff, 0x20, 0x92, 0xbf, 0x10, 0xda, 0x10, 0x32, 0x4c, 0xc3, 0x22, 0xf7, 0x9c, 0x41, 0x2d, 0xae, 0xd3, 0x05, 0xb2, 0x75, 0xfc, 0x19, 0x93, 0xbf, 0x3a, 0xf5, 0x23, 0xde, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_59 = { .name = "ecdsa_brainpoolp224r1_sha224_59", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_59_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_59_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_59_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 60 for ECDSA, tcId is 61 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_60_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_60_msg[] = { 0x31, 0x35, 0x31, 0x38, 0x38, 0x36, 0x31, 0x37, 0x30, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_60_sig[] = { 0x02, 0x5d, 0x1c, 0xf1, 0x6f, 0x03, 0x34, 0x1f, 0x3c, 0x8d, 0x16, 0xa7, 0x78, 0x39, 0xb5, 0xc1, 0xd6, 0x96, 0x36, 0x3d, 0xae, 0x89, 0x8d, 0x91, 0xe1, 0x4a, 0xd5, 0x22, 0xb7, 0x37, 0x9c, 0xc3, 0x5c, 0x97, 0xa8, 0xf0, 0x8b, 0x0e, 0xfb, 0x32, 0xee, 0x82, 0xce, 0x0e, 0x19, 0x11, 0x69, 0x5d, 0x37, 0x2e, 0xe6, 0xd6, 0x79, 0xec, 0x54, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_60 = { .name = "ecdsa_brainpoolp224r1_sha224_60", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_60_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_60_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_60_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 61 for ECDSA, tcId is 62 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_61_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_61_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x33, 0x33, 0x34, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_61_sig[] = { 0xc0, 0xc9, 0x49, 0xe0, 0xf0, 0xf8, 0x57, 0x18, 0x02, 0xea, 0x7e, 0x02, 0x61, 0x7c, 0xa9, 0x25, 0xb9, 0x5d, 0x29, 0x0a, 0x17, 0x4f, 0x68, 0x6d, 0x80, 0xbb, 0xa1, 0xd4, 0xb9, 0x66, 0x17, 0x3c, 0xe3, 0xf1, 0x3c, 0xa5, 0x4c, 0xcd, 0xc8, 0xa2, 0x49, 0xfe, 0xa7, 0x2e, 0x32, 0x60, 0xad, 0x3e, 0x78, 0x54, 0xa7, 0x31, 0x05, 0x1d, 0x8c, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_61 = { .name = "ecdsa_brainpoolp224r1_sha224_61", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_61_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_61_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_61_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 62 for ECDSA, tcId is 63 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_62_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_62_msg[] = { 0x31, 0x32, 0x32, 0x31, 0x39, 0x37, 0x39, 0x30, 0x35, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_62_sig[] = { 0x5d, 0x57, 0xf1, 0x42, 0x75, 0x94, 0x7c, 0x9b, 0xff, 0xea, 0x66, 0xf9, 0xf3, 0x0a, 0xe2, 0x03, 0x19, 0x45, 0x35, 0xf8, 0x02, 0x0c, 0x42, 0xbb, 0xc1, 0xef, 0xec, 0x73, 0xc3, 0x58, 0x65, 0x1b, 0xa2, 0x52, 0x7c, 0x32, 0xd8, 0x58, 0x65, 0x7c, 0xcf, 0x08, 0xe5, 0x35, 0xd3, 0x28, 0x51, 0xfb, 0xd8, 0xc3, 0x54, 0x77, 0xba, 0x17, 0x56, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_62 = { .name = "ecdsa_brainpoolp224r1_sha224_62", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_62_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_62_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_62_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 63 for ECDSA, tcId is 64 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_63_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_63_msg[] = { 0x32, 0x33, 0x30, 0x32, 0x35, 0x36, 0x37, 0x36, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_63_sig[] = { 0x13, 0x3b, 0xb1, 0x2f, 0x10, 0x96, 0x98, 0x9d, 0xc8, 0x67, 0xd8, 0x74, 0xf6, 0x75, 0xfd, 0xf9, 0xe9, 0x79, 0x75, 0xc2, 0xe2, 0x2c, 0x71, 0xe4, 0x4f, 0x59, 0xbf, 0x35, 0x65, 0x57, 0xee, 0xb2, 0xb5, 0xb4, 0xf1, 0xf7, 0xc8, 0x51, 0x84, 0xdc, 0xc6, 0x53, 0x85, 0x0c, 0x34, 0xb1, 0xc3, 0x48, 0x0d, 0x2f, 0x32, 0xd1, 0x56, 0x7c, 0x25, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_63 = { .name = "ecdsa_brainpoolp224r1_sha224_63", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_63_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_63_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_63_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 64 for ECDSA, tcId is 65 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_64_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_64_msg[] = { 0x31, 0x31, 0x30, 0x35, 0x38, 0x36, 0x38, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_64_sig[] = { 0xd1, 0xdc, 0x7d, 0x1c, 0xc8, 0x86, 0xca, 0x90, 0xe0, 0xd9, 0x60, 0xb6, 0xc7, 0xfd, 0xa9, 0x2e, 0xd5, 0x82, 0xec, 0x61, 0x6c, 0x1c, 0x79, 0xb1, 0x71, 0xef, 0x31, 0x08, 0x41, 0xa7, 0xd2, 0x14, 0x38, 0xe7, 0xc3, 0x4b, 0x27, 0x17, 0x60, 0x05, 0xef, 0x67, 0xc0, 0x4a, 0x63, 0xf3, 0x62, 0xd2, 0xda, 0xf1, 0x0b, 0x62, 0xc5, 0x3b, 0x88, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_64 = { .name = "ecdsa_brainpoolp224r1_sha224_64", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_64_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_64_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_64_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 65 for ECDSA, tcId is 66 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_65_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_65_msg[] = { 0x31, 0x34, 0x36, 0x36, 0x36, 0x31, 0x34, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_65_sig[] = { 0x9e, 0xc3, 0xb7, 0xb4, 0xa0, 0xf1, 0x23, 0x51, 0x69, 0xb6, 0x4a, 0x20, 0x58, 0x4d, 0x36, 0xb9, 0x6b, 0xb7, 0xa2, 0xbd, 0xe0, 0x0d, 0x23, 0x16, 0x3c, 0xc3, 0xb1, 0xbf, 0xac, 0x32, 0xef, 0x3b, 0x9e, 0x94, 0x8d, 0x96, 0x7f, 0x96, 0xcd, 0x08, 0x50, 0x78, 0x09, 0xe3, 0xb9, 0xa0, 0xe0, 0x93, 0xbe, 0x3e, 0x76, 0xb8, 0x18, 0x33, 0x1d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_65 = { .name = "ecdsa_brainpoolp224r1_sha224_65", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_65_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_65_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_65_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 66 for ECDSA, tcId is 67 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_66_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_66_msg[] = { 0x34, 0x34, 0x31, 0x39, 0x35, 0x36, 0x34, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_66_sig[] = { 0x39, 0x2a, 0xe3, 0x81, 0xda, 0x4c, 0xcf, 0xd9, 0xd5, 0xad, 0x09, 0x3d, 0x49, 0xb2, 0x2d, 0x57, 0x94, 0x11, 0xf7, 0xc1, 0xcd, 0x04, 0xe8, 0x84, 0x73, 0xab, 0x6e, 0xf5, 0xa2, 0x89, 0x8b, 0x8b, 0xf1, 0x20, 0xd1, 0x8e, 0x4e, 0xe0, 0xd1, 0x5c, 0x41, 0x90, 0x44, 0x32, 0x4d, 0xe3, 0xc0, 0x92, 0x7e, 0xe9, 0x0f, 0xd6, 0xf3, 0x87, 0x11, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_66 = { .name = "ecdsa_brainpoolp224r1_sha224_66", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_66_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_66_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_66_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 67 for ECDSA, tcId is 68 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_67_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_67_msg[] = { 0x31, 0x39, 0x36, 0x39, 0x34, 0x38, 0x36, 0x30, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_67_sig[] = { 0xa3, 0x7b, 0x0c, 0xc8, 0x7f, 0x6d, 0x46, 0x20, 0x30, 0x30, 0x30, 0xd7, 0xac, 0x4a, 0x65, 0x72, 0xf9, 0x4c, 0x0c, 0xf4, 0x4f, 0x0a, 0x03, 0x5c, 0x0e, 0x59, 0xd0, 0x7c, 0x30, 0xc7, 0xac, 0xd8, 0xdb, 0x9e, 0x72, 0x01, 0x22, 0x08, 0xf0, 0x8d, 0xb5, 0x38, 0x1a, 0x1e, 0x54, 0xfa, 0x09, 0x8c, 0x03, 0x14, 0xa0, 0x9a, 0x30, 0x58, 0xc4, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_67 = { .name = "ecdsa_brainpoolp224r1_sha224_67", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_67_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_67_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_67_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 68 for ECDSA, tcId is 69 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_68_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_68_msg[] = { 0x32, 0x32, 0x33, 0x35, 0x36, 0x37, 0x32, 0x38, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_68_sig[] = { 0x62, 0xf6, 0x60, 0xd9, 0x3a, 0x45, 0xdf, 0xa3, 0xb6, 0x61, 0xf8, 0xb6, 0xa4, 0xd5, 0xe0, 0x6e, 0x5a, 0x1e, 0xe8, 0xa8, 0x85, 0x5a, 0xba, 0xfa, 0x40, 0x73, 0xb5, 0x13, 0xd6, 0x97, 0x8f, 0x5d, 0xa8, 0xaf, 0xcc, 0x5b, 0x39, 0x5f, 0xd4, 0xb5, 0xf3, 0xc0, 0xfd, 0xb7, 0xa2, 0x68, 0x9e, 0x6d, 0xe4, 0x6d, 0x08, 0xfb, 0x9d, 0xe7, 0x18, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_68 = { .name = "ecdsa_brainpoolp224r1_sha224_68", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_68_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_68_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_68_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 69 for ECDSA, tcId is 70 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_69_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_69_msg[] = { 0x32, 0x32, 0x35, 0x37, 0x38, 0x34, 0x33, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_69_sig[] = { 0x61, 0xaf, 0x9a, 0x2c, 0xa2, 0x05, 0x03, 0xfd, 0x62, 0xbc, 0x3c, 0x6f, 0x84, 0x34, 0x99, 0x5c, 0x6c, 0xf3, 0x03, 0x7e, 0xb6, 0xf9, 0xff, 0x62, 0x13, 0x48, 0xcf, 0x53, 0x09, 0xf8, 0xf6, 0x47, 0x13, 0x87, 0x69, 0x54, 0x8d, 0xb4, 0x60, 0xef, 0xdd, 0x83, 0x23, 0xf8, 0xca, 0xd1, 0x8a, 0x70, 0x71, 0xd3, 0xd0, 0x4d, 0x6a, 0xd3, 0x3d, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_69 = { .name = "ecdsa_brainpoolp224r1_sha224_69", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_69_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_69_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_69_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 70 for ECDSA, tcId is 71 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_70_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_70_msg[] = { 0x39, 0x34, 0x34, 0x35, 0x30, 0x30, 0x39, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_70_sig[] = { 0x0e, 0x45, 0x9c, 0xfe, 0x37, 0x01, 0x7c, 0x8b, 0x60, 0x5e, 0x38, 0xbf, 0x5d, 0x25, 0x17, 0x65, 0x76, 0xd4, 0x75, 0xfa, 0x88, 0xde, 0xd2, 0x7b, 0xe2, 0x6a, 0xbc, 0xa7, 0xb1, 0xbb, 0x6a, 0x60, 0xcc, 0xc3, 0xd4, 0x8e, 0x8d, 0x1d, 0x4c, 0x53, 0xf9, 0x01, 0x42, 0x80, 0x6e, 0x44, 0xd9, 0x94, 0x9e, 0xbc, 0xaa, 0x05, 0xb8, 0x3e, 0x20, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_70 = { .name = "ecdsa_brainpoolp224r1_sha224_70", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_70_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_70_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_70_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 71 for ECDSA, tcId is 72 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_71_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_71_msg[] = { 0x31, 0x36, 0x38, 0x37, 0x37, 0x38, 0x39, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_71_sig[] = { 0xd0, 0x18, 0x48, 0x82, 0xbd, 0xd6, 0xfa, 0x09, 0x99, 0x6c, 0x2f, 0xec, 0xf3, 0xcd, 0x26, 0xed, 0x86, 0xa3, 0xce, 0x15, 0x98, 0x7e, 0x06, 0xdb, 0x85, 0x0b, 0x8b, 0x2b, 0xcf, 0xf0, 0x72, 0xb2, 0x7c, 0x33, 0xf9, 0x16, 0x81, 0xd3, 0xe9, 0x5a, 0x47, 0xbe, 0xc0, 0x00, 0xcc, 0x96, 0xc5, 0xdc, 0x91, 0xf6, 0x8e, 0xcc, 0xc2, 0x1c, 0xa3, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_71 = { .name = "ecdsa_brainpoolp224r1_sha224_71", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_71_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_71_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_71_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 72 for ECDSA, tcId is 73 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_72_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_72_msg[] = { 0x33, 0x39, 0x33, 0x32, 0x36, 0x31, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_72_sig[] = { 0x35, 0x7e, 0x96, 0xab, 0x54, 0xf4, 0xdb, 0xb3, 0xa6, 0xa3, 0xa9, 0xd1, 0xed, 0xe6, 0xdf, 0x52, 0x94, 0x63, 0x9a, 0xed, 0xfd, 0xea, 0x96, 0xe7, 0xff, 0xc9, 0xda, 0x31, 0x24, 0xeb, 0x6b, 0x7f, 0x55, 0x90, 0x67, 0x39, 0x31, 0x3e, 0xa2, 0x66, 0x5a, 0x05, 0x04, 0xa3, 0xb0, 0xbf, 0x7a, 0x9b, 0x32, 0x9c, 0x69, 0x0f, 0x4a, 0x2e, 0xdf, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_72 = { .name = "ecdsa_brainpoolp224r1_sha224_72", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_72_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_72_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_72_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 73 for ECDSA, tcId is 74 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_73_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_73_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x35, 0x37, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_73_sig[] = { 0x0b, 0xaa, 0xf7, 0x9d, 0x52, 0x35, 0xe3, 0x26, 0x8e, 0x55, 0x43, 0x1c, 0xbd, 0x79, 0x00, 0x46, 0xc2, 0x58, 0x1e, 0xbd, 0x3f, 0x8b, 0x90, 0x62, 0x7b, 0xd4, 0x6b, 0x8b, 0x83, 0xd5, 0x6f, 0x6b, 0x56, 0xca, 0x93, 0x81, 0xb1, 0x4c, 0xa8, 0x88, 0x28, 0x1b, 0x48, 0x1c, 0xf8, 0x28, 0xe9, 0xb4, 0x3b, 0x0d, 0x41, 0x81, 0x08, 0xe8, 0x2d, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_73 = { .name = "ecdsa_brainpoolp224r1_sha224_73", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_73_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_73_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_73_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 74 for ECDSA, tcId is 75 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_74_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_74_msg[] = { 0x36, 0x30, 0x38, 0x38, 0x37, 0x34, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_74_sig[] = { 0x7e, 0xbe, 0xf1, 0xad, 0x41, 0xde, 0x94, 0x34, 0xeb, 0x3f, 0x6f, 0x83, 0x33, 0x8f, 0x01, 0x09, 0x66, 0x6c, 0x26, 0x4d, 0x89, 0x12, 0x33, 0x42, 0xb0, 0x90, 0x0f, 0x05, 0x78, 0xa3, 0xa9, 0xfa, 0x72, 0x01, 0xc4, 0x8f, 0x92, 0x83, 0x44, 0x00, 0x4a, 0x1f, 0x51, 0x80, 0x53, 0x09, 0x9d, 0xf8, 0x69, 0x08, 0xde, 0x29, 0xee, 0xb7, 0x6a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_74 = { .name = "ecdsa_brainpoolp224r1_sha224_74", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_74_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_74_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_74_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 75 for ECDSA, tcId is 76 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_75_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_75_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x35, 0x36, 0x39, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_75_sig[] = { 0x9f, 0x20, 0xab, 0xef, 0xf0, 0xaf, 0x96, 0x5d, 0xa9, 0xc5, 0x1c, 0x99, 0x50, 0x7c, 0xf5, 0xf9, 0x1d, 0x75, 0xf2, 0x3f, 0xe0, 0x2b, 0x61, 0x15, 0x02, 0x96, 0x16, 0x7c, 0xbf, 0x6f, 0xed, 0x8a, 0x8e, 0xf7, 0x26, 0xf2, 0xf6, 0x62, 0x9c, 0x4e, 0x4b, 0x50, 0xb3, 0xc2, 0xce, 0x14, 0xff, 0x43, 0x9f, 0xe9, 0xbf, 0xe6, 0x15, 0x78, 0x68, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_75 = { .name = "ecdsa_brainpoolp224r1_sha224_75", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_75_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_75_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_75_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 76 for ECDSA, tcId is 77 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_76_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_76_msg[] = { 0x39, 0x30, 0x30, 0x37, 0x36, 0x30, 0x39, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_76_sig[] = { 0x5a, 0xd6, 0x7f, 0xf0, 0xdd, 0xf8, 0xcb, 0x88, 0x40, 0x79, 0x74, 0xf8, 0x3f, 0xea, 0x43, 0xd9, 0xd1, 0x47, 0xcb, 0xb2, 0x3d, 0xba, 0x26, 0x1f, 0xad, 0xad, 0xae, 0xdb, 0x7f, 0xd3, 0x1c, 0xcc, 0x4b, 0x36, 0x05, 0xdb, 0x42, 0xb7, 0x00, 0xa2, 0x45, 0xdf, 0x8f, 0xc6, 0x0e, 0xfb, 0xf1, 0x40, 0x6a, 0xfb, 0x4d, 0x6c, 0x8c, 0x16, 0xe0, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_76 = { .name = "ecdsa_brainpoolp224r1_sha224_76", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_76_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_76_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_76_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 77 for ECDSA, tcId is 78 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_77_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_77_msg[] = { 0x31, 0x36, 0x30, 0x32, 0x38, 0x33, 0x36, 0x31, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_77_sig[] = { 0x40, 0xe0, 0xbd, 0x9a, 0x2f, 0xa5, 0xa8, 0x86, 0x78, 0xc8, 0x5c, 0x3f, 0x4d, 0x27, 0xe2, 0xae, 0x2d, 0xd0, 0x46, 0xf2, 0x9a, 0x36, 0x39, 0xec, 0x2f, 0xf2, 0x51, 0x1a, 0x16, 0xcd, 0x49, 0x21, 0x5c, 0xb0, 0x05, 0x33, 0xfd, 0x13, 0x9a, 0xe1, 0xd3, 0x63, 0x1d, 0x45, 0xfb, 0x06, 0xd5, 0xec, 0xd1, 0x13, 0x8a, 0xb4, 0x6c, 0x48, 0xa4, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_77 = { .name = "ecdsa_brainpoolp224r1_sha224_77", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_77_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_77_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_77_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 78 for ECDSA, tcId is 79 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_78_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_78_msg[] = { 0x32, 0x30, 0x38, 0x30, 0x32, 0x34, 0x35, 0x36, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_78_sig[] = { 0x9a, 0x70, 0x5d, 0xdc, 0x87, 0x67, 0xe5, 0x4c, 0xec, 0x4d, 0x1c, 0x37, 0xa2, 0x46, 0x0b, 0x3c, 0x0b, 0x31, 0xe9, 0x81, 0x1c, 0x3a, 0x42, 0x75, 0x26, 0x49, 0x9c, 0x01, 0x36, 0xa6, 0xb9, 0xdc, 0xd7, 0xc8, 0xa8, 0x1e, 0x34, 0xaf, 0xdf, 0x84, 0x5c, 0x4c, 0xc0, 0xe7, 0x34, 0x55, 0x01, 0x1b, 0xbc, 0xd7, 0x98, 0x7f, 0x88, 0x72, 0x58, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_78 = { .name = "ecdsa_brainpoolp224r1_sha224_78", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_78_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_78_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_78_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 79 for ECDSA, tcId is 80 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_79_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_79_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x37, 0x34, 0x36, 0x35, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_79_sig[] = { 0xa5, 0x1a, 0x62, 0x5b, 0x99, 0x56, 0x8d, 0x00, 0x3e, 0x4b, 0x96, 0xe6, 0x93, 0x13, 0x6b, 0xa7, 0x52, 0x21, 0xe8, 0xe5, 0x6c, 0x9a, 0xb5, 0xe9, 0xec, 0x68, 0x16, 0xee, 0x7e, 0x20, 0x89, 0x18, 0x78, 0x55, 0x16, 0xcd, 0xa7, 0xcf, 0x70, 0x87, 0x0d, 0xd8, 0x12, 0xe8, 0x0e, 0x8f, 0x9f, 0x1b, 0x52, 0x48, 0xd9, 0x19, 0xb1, 0xff, 0x1d, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_79 = { .name = "ecdsa_brainpoolp224r1_sha224_79", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_79_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_79_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_79_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 80 for ECDSA, tcId is 81 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_80_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_80_msg[] = { 0x31, 0x31, 0x35, 0x35, 0x35, 0x37, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_80_sig[] = { 0x47, 0x20, 0xf9, 0x37, 0x10, 0x0d, 0xf5, 0x2e, 0x6a, 0xe1, 0xba, 0xf4, 0x0f, 0x8b, 0xc9, 0x50, 0xe5, 0xaf, 0x2b, 0x1f, 0x94, 0x7d, 0x04, 0x17, 0x80, 0x4a, 0x82, 0x25, 0x8b, 0x82, 0x22, 0x73, 0xfb, 0x5d, 0x47, 0x3c, 0x9c, 0x88, 0xaa, 0x3c, 0x8d, 0xde, 0xa1, 0x67, 0x61, 0x9c, 0xda, 0x12, 0xee, 0x41, 0xce, 0x65, 0xde, 0x26, 0x8a, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_80 = { .name = "ecdsa_brainpoolp224r1_sha224_80", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_80_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_80_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_80_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 81 for ECDSA, tcId is 82 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_81_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_81_msg[] = { 0x32, 0x34, 0x33, 0x32, 0x34, 0x37, 0x34, 0x36, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_81_sig[] = { 0x3d, 0x28, 0x1d, 0x98, 0xb6, 0xa6, 0x76, 0xa6, 0xed, 0xa7, 0x57, 0x0d, 0x7b, 0x4f, 0x9a, 0x08, 0xe9, 0x24, 0xc7, 0x1a, 0xfd, 0x2c, 0xb6, 0xe0, 0x62, 0xa7, 0xeb, 0xfd, 0x84, 0x46, 0xe4, 0x27, 0x47, 0xa3, 0x52, 0x51, 0x8e, 0xf6, 0x8e, 0xff, 0x05, 0x56, 0x95, 0xb4, 0x76, 0x6b, 0xdc, 0x2a, 0xd8, 0xd3, 0xfa, 0x97, 0xbc, 0x20, 0x2b, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_81 = { .name = "ecdsa_brainpoolp224r1_sha224_81", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_81_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_81_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_81_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 82 for ECDSA, tcId is 83 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_82_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_82_msg[] = { 0x32, 0x34, 0x31, 0x37, 0x32, 0x38, 0x32, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_82_sig[] = { 0x4d, 0x34, 0x69, 0xe9, 0x39, 0xff, 0xea, 0xd9, 0x41, 0xe3, 0xcb, 0xce, 0xbc, 0xa3, 0xbc, 0xb6, 0xf3, 0xc0, 0x29, 0x64, 0x1f, 0x97, 0x70, 0x0e, 0x02, 0x81, 0x77, 0x38, 0x42, 0xcb, 0x87, 0xa1, 0x0e, 0xa1, 0x7c, 0x0e, 0x58, 0xc3, 0x82, 0x2f, 0x6a, 0xe1, 0xf3, 0xa8, 0x91, 0x8d, 0x86, 0xa8, 0x32, 0x5d, 0xef, 0x4a, 0x8c, 0x80, 0x82, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_82 = { .name = "ecdsa_brainpoolp224r1_sha224_82", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_82_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_82_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_82_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 83 for ECDSA, tcId is 84 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_83_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_83_msg[] = { 0x37, 0x37, 0x38, 0x37, 0x34, 0x37, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_83_sig[] = { 0x21, 0xe5, 0x1b, 0x79, 0xe8, 0x55, 0x4e, 0x22, 0x93, 0x7c, 0x3e, 0x5b, 0x19, 0x83, 0xb3, 0x77, 0x62, 0x59, 0x1e, 0x21, 0xf5, 0x70, 0x6e, 0x5c, 0x19, 0x82, 0xa5, 0x0c, 0x4b, 0xcd, 0xbd, 0x23, 0xb0, 0xa4, 0x71, 0xdb, 0x84, 0xd1, 0xee, 0x3e, 0xdf, 0x76, 0x77, 0xbb, 0xb1, 0x43, 0x07, 0xec, 0xc5, 0xe1, 0x02, 0x31, 0x74, 0xec, 0x5b, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_83 = { .name = "ecdsa_brainpoolp224r1_sha224_83", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_83_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_83_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_83_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 84 for ECDSA, tcId is 85 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_84_pubkey[] = { 0xa0, 0xef, 0x7d, 0xb1, 0xbe, 0xe0, 0xae, 0xdb, 0x5a, 0x56, 0x34, 0xf4, 0xf3, 0xb1, 0xb8, 0x8d, 0x97, 0xd2, 0xa0, 0x7f, 0x80, 0x6a, 0x71, 0x8e, 0xfe, 0x19, 0x01, 0x4d, 0xae, 0xe1, 0x04, 0x3f, 0x9e, 0x92, 0x9c, 0x32, 0xd7, 0x4a, 0xb0, 0xe4, 0xee, 0xba, 0x26, 0x23, 0xf1, 0x7b, 0xa2, 0x81, 0xb6, 0xbe, 0x87, 0x74, 0x5b, 0x59, 0xf6, 0x0e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_84_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_84_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xee, 0xdf, 0x88, 0x4b, 0x0c, 0x29, 0xfb, 0xcd, 0x51, 0xd9, 0x21, 0x2d, 0x5f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_84 = { .name = "ecdsa_brainpoolp224r1_sha224_84", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_84_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_84_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_84_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 85 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 85 for ECDSA, tcId is 86 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_85_pubkey[] = { 0xa0, 0xef, 0x7d, 0xb1, 0xbe, 0xe0, 0xae, 0xdb, 0x5a, 0x56, 0x34, 0xf4, 0xf3, 0xb1, 0xb8, 0x8d, 0x97, 0xd2, 0xa0, 0x7f, 0x80, 0x6a, 0x71, 0x8e, 0xfe, 0x19, 0x01, 0x4d, 0xae, 0xe1, 0x04, 0x3f, 0x9e, 0x92, 0x9c, 0x32, 0xd7, 0x4a, 0xb0, 0xe4, 0xee, 0xba, 0x26, 0x23, 0xf1, 0x7b, 0xa2, 0x81, 0xb6, 0xbe, 0x87, 0x74, 0x5b, 0x59, 0xf6, 0x0e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_85_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_85_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_85 = { .name = "ecdsa_brainpoolp224r1_sha224_85", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_85_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_85_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_85_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 86 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 86 for ECDSA, tcId is 87 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_86_pubkey[] = { 0x3a, 0xdd, 0xa4, 0x07, 0xba, 0xd7, 0xf5, 0x93, 0xe8, 0x3d, 0x7d, 0x48, 0x4f, 0xd1, 0x4c, 0x23, 0xdd, 0xa1, 0x7f, 0x8d, 0x46, 0x0c, 0x22, 0x2a, 0xa7, 0x25, 0x75, 0x77, 0xcd, 0x62, 0x44, 0x3b, 0x2b, 0x77, 0x02, 0x91, 0xf6, 0x59, 0x04, 0xda, 0xcf, 0x75, 0xff, 0x97, 0x5f, 0x1a, 0x66, 0x71, 0x87, 0xe0, 0xe4, 0xf5, 0x0c, 0x14, 0x88, 0x9c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_86_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_86_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_86 = { .name = "ecdsa_brainpoolp224r1_sha224_86", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_86_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_86_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_86_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 87 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 87 for ECDSA, tcId is 88 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_87_pubkey[] = { 0x24, 0x58, 0x7c, 0xe1, 0xdb, 0xff, 0x28, 0x1d, 0xca, 0xb1, 0x79, 0x45, 0x19, 0x80, 0x62, 0x81, 0xad, 0x4e, 0x09, 0x97, 0x49, 0x25, 0x10, 0x67, 0x7f, 0xb6, 0x51, 0x06, 0x92, 0x96, 0x99, 0x6e, 0x83, 0xb8, 0x08, 0x67, 0x6c, 0xbf, 0x6f, 0x28, 0xc9, 0x2b, 0x84, 0x30, 0x33, 0x14, 0xb6, 0x3a, 0x03, 0x08, 0x13, 0x4f, 0x22, 0x2d, 0x0e, 0xc2, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_87_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_87_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x63, 0xf0, 0xe3, 0x42, 0x58, 0xbb, 0x90, 0x61, 0x54, 0x79, 0x06, 0xd0, 0xc3, 0x82, 0x7c, 0x50, 0x44, 0x22, 0xc1, 0x39, 0xe6, 0xd6, 0xe1, 0x07, 0x8b, 0x37, 0xaa, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_87 = { .name = "ecdsa_brainpoolp224r1_sha224_87", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_87_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_87_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_87_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 88 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 88 for ECDSA, tcId is 89 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_88_pubkey[] = { 0xc4, 0x5c, 0x51, 0xd5, 0xa9, 0xb2, 0x13, 0xe4, 0x1c, 0xa6, 0xf1, 0x5c, 0xb8, 0xaa, 0x1b, 0xc0, 0xb8, 0xb7, 0x3d, 0x3a, 0x8a, 0x23, 0xa1, 0x4f, 0x5a, 0x3d, 0xa4, 0xdf, 0xbc, 0x78, 0xcc, 0x61, 0x76, 0xd3, 0xb8, 0x31, 0xe6, 0x88, 0x00, 0x67, 0x17, 0x68, 0x04, 0x3c, 0x11, 0xbf, 0x63, 0xa6, 0x95, 0x91, 0x8d, 0xf6, 0xec, 0x87, 0x37, 0x8a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_88_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_88_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6e, 0xb1, 0xfb, 0xfa, 0x8d, 0xf8, 0x7d, 0x4f, 0xa1, 0x0c, 0x83, 0x3f, 0x7d, 0xd1, 0xbb, 0xe7, 0xef, 0x01, 0x44, 0xff, 0x71, 0x53, 0x79, 0x75, 0x37, 0x8f, 0x91, 0xec, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_88 = { .name = "ecdsa_brainpoolp224r1_sha224_88", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_88_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_88_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_88_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 89 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 89 for ECDSA, tcId is 90 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_89_pubkey[] = { 0x36, 0xa5, 0x34, 0x4d, 0xa0, 0x8a, 0x42, 0x1e, 0xdc, 0x6c, 0x3b, 0xeb, 0x7d, 0xe9, 0x7a, 0x75, 0x59, 0xfc, 0x10, 0x1c, 0x14, 0x89, 0xff, 0x2b, 0x50, 0x36, 0xd8, 0xf6, 0x20, 0x7b, 0xf4, 0x66, 0x6e, 0x4d, 0xf6, 0x06, 0xbd, 0x0d, 0x98, 0x23, 0xa5, 0x2b, 0x58, 0xdd, 0xfd, 0xfc, 0x1d, 0xa7, 0x05, 0x13, 0xc5, 0xf9, 0x99, 0x0f, 0x80, 0x85, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_89_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_89_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_89 = { .name = "ecdsa_brainpoolp224r1_sha224_89", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_89_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_89_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_89_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 90 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 90 for ECDSA, tcId is 91 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_90_pubkey[] = { 0x36, 0xa5, 0x34, 0x4d, 0xa0, 0x8a, 0x42, 0x1e, 0xdc, 0x6c, 0x3b, 0xeb, 0x7d, 0xe9, 0x7a, 0x75, 0x59, 0xfc, 0x10, 0x1c, 0x14, 0x89, 0xff, 0x2b, 0x50, 0x36, 0xd8, 0xf6, 0x20, 0x7b, 0xf4, 0x66, 0x6e, 0x4d, 0xf6, 0x06, 0xbd, 0x0d, 0x98, 0x23, 0xa5, 0x2b, 0x58, 0xdd, 0xfd, 0xfc, 0x1d, 0xa7, 0x05, 0x13, 0xc5, 0xf9, 0x99, 0x0f, 0x80, 0x85, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_90_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_90_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_90 = { .name = "ecdsa_brainpoolp224r1_sha224_90", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_90_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_90_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_90_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 91 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 91 for ECDSA, tcId is 92 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_91_pubkey[] = { 0x40, 0x95, 0xc0, 0x95, 0xa9, 0x64, 0x89, 0x51, 0xda, 0x35, 0x2b, 0x83, 0x7f, 0x36, 0x8e, 0x0b, 0xe6, 0x7d, 0x79, 0xfd, 0x57, 0xea, 0xdf, 0xff, 0xed, 0xdf, 0xb4, 0x55, 0xcc, 0xdc, 0xfa, 0xbe, 0xa1, 0x9e, 0x96, 0xd4, 0xd2, 0x0e, 0x42, 0xb8, 0xae, 0x23, 0xc2, 0x51, 0x94, 0x26, 0x01, 0x8e, 0x25, 0xa6, 0x4d, 0xea, 0x85, 0xd8, 0xa6, 0x8b, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_91_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_91_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_91 = { .name = "ecdsa_brainpoolp224r1_sha224_91", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_91_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_91_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_91_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 92 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 92 for ECDSA, tcId is 93 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_92_pubkey[] = { 0x40, 0x95, 0xc0, 0x95, 0xa9, 0x64, 0x89, 0x51, 0xda, 0x35, 0x2b, 0x83, 0x7f, 0x36, 0x8e, 0x0b, 0xe6, 0x7d, 0x79, 0xfd, 0x57, 0xea, 0xdf, 0xff, 0xed, 0xdf, 0xb4, 0x55, 0xcc, 0xdc, 0xfa, 0xbe, 0xa1, 0x9e, 0x96, 0xd4, 0xd2, 0x0e, 0x42, 0xb8, 0xae, 0x23, 0xc2, 0x51, 0x94, 0x26, 0x01, 0x8e, 0x25, 0xa6, 0x4d, 0xea, 0x85, 0xd8, 0xa6, 0x8b, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_92_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_92_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_92 = { .name = "ecdsa_brainpoolp224r1_sha224_92", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_92_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_92_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_92_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 93 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 93 for ECDSA, tcId is 94 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_93_pubkey[] = { 0xcc, 0x35, 0x2a, 0xc4, 0x8a, 0xac, 0xb6, 0x49, 0x5e, 0xc3, 0x83, 0x1b, 0x21, 0xcc, 0xd4, 0xd3, 0x19, 0x71, 0x36, 0x29, 0x2b, 0xf6, 0xf2, 0x0f, 0x22, 0x80, 0x25, 0x66, 0x64, 0x32, 0x19, 0x91, 0xe6, 0x7f, 0x7d, 0xbc, 0x22, 0x60, 0x2e, 0xcb, 0xdb, 0x31, 0x22, 0xed, 0xce, 0x5f, 0xf8, 0x5d, 0x92, 0x31, 0x43, 0xce, 0xcc, 0x0d, 0x4f, 0x6d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_93_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_93_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_93 = { .name = "ecdsa_brainpoolp224r1_sha224_93", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_93_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_93_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_93_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 94 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 94 for ECDSA, tcId is 95 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_94_pubkey[] = { 0xcc, 0x35, 0x2a, 0xc4, 0x8a, 0xac, 0xb6, 0x49, 0x5e, 0xc3, 0x83, 0x1b, 0x21, 0xcc, 0xd4, 0xd3, 0x19, 0x71, 0x36, 0x29, 0x2b, 0xf6, 0xf2, 0x0f, 0x22, 0x80, 0x25, 0x66, 0x64, 0x32, 0x19, 0x91, 0xe6, 0x7f, 0x7d, 0xbc, 0x22, 0x60, 0x2e, 0xcb, 0xdb, 0x31, 0x22, 0xed, 0xce, 0x5f, 0xf8, 0x5d, 0x92, 0x31, 0x43, 0xce, 0xcc, 0x0d, 0x4f, 0x6d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_94_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_94_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_94 = { .name = "ecdsa_brainpoolp224r1_sha224_94", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_94_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_94_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_94_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 95 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 95 for ECDSA, tcId is 96 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_95_pubkey[] = { 0xcc, 0x35, 0x2a, 0xc4, 0x8a, 0xac, 0xb6, 0x49, 0x5e, 0xc3, 0x83, 0x1b, 0x21, 0xcc, 0xd4, 0xd3, 0x19, 0x71, 0x36, 0x29, 0x2b, 0xf6, 0xf2, 0x0f, 0x22, 0x80, 0x25, 0x66, 0x64, 0x32, 0x19, 0x91, 0xe6, 0x7f, 0x7d, 0xbc, 0x22, 0x60, 0x2e, 0xcb, 0xdb, 0x31, 0x22, 0xed, 0xce, 0x5f, 0xf8, 0x5d, 0x92, 0x31, 0x43, 0xce, 0xcc, 0x0d, 0x4f, 0x6d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_95_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_95_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_95 = { .name = "ecdsa_brainpoolp224r1_sha224_95", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_95_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_95_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_95_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 96 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 96 for ECDSA, tcId is 97 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_96_pubkey[] = { 0x91, 0x48, 0xf2, 0x9c, 0x67, 0xf8, 0x3c, 0x70, 0x5e, 0xef, 0xb5, 0x9c, 0x92, 0x95, 0x47, 0x75, 0xf9, 0x0c, 0x15, 0xe2, 0x25, 0xda, 0x2e, 0x99, 0x6a, 0xbc, 0xdd, 0x1d, 0xc9, 0xdb, 0x1a, 0xa1, 0xe1, 0x52, 0x77, 0xc4, 0x55, 0x5d, 0x24, 0x11, 0x82, 0x39, 0xe5, 0x3f, 0xd2, 0xf0, 0xb5, 0xe7, 0xea, 0x80, 0x7e, 0xb3, 0xde, 0x1e, 0xe3, 0x50, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_96_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_96_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xba, 0x6a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_96 = { .name = "ecdsa_brainpoolp224r1_sha224_96", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_96_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_96_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_96_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 97 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 97 for ECDSA, tcId is 98 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_97_pubkey[] = { 0x9b, 0xf0, 0x45, 0xa4, 0x3a, 0x5f, 0x14, 0xd5, 0xe4, 0x12, 0xee, 0x18, 0x1f, 0x11, 0x1d, 0x6e, 0x53, 0x96, 0x11, 0x20, 0x53, 0x1f, 0x3c, 0x50, 0xca, 0x70, 0x1e, 0x78, 0xbe, 0x9e, 0xb9, 0x51, 0x46, 0xf4, 0xf2, 0xbe, 0x96, 0x94, 0x99, 0x76, 0xa7, 0xaa, 0x49, 0xd3, 0x15, 0x93, 0xa7, 0xda, 0x2e, 0xdd, 0x90, 0x76, 0x52, 0x39, 0x8c, 0x3a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_97_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_97_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x9d, 0xfe, 0x5c, 0xfd, 0x9b, 0x02, 0xfe, 0x7a, 0x6f, 0x74, 0x7b, 0xf3, 0x1d, 0xd5, 0x81, 0xd0, 0xa9, 0x3c, 0xfe, 0xcc, 0x66, 0xa1, 0x17, 0x3d, 0x61, 0x1d, 0xfd, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_97 = { .name = "ecdsa_brainpoolp224r1_sha224_97", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_97_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_97_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_97_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 98 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 98 for ECDSA, tcId is 99 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_98_pubkey[] = { 0x87, 0x73, 0x9e, 0x28, 0x21, 0xed, 0x95, 0x67, 0xe8, 0x87, 0x02, 0xfa, 0x8c, 0x6d, 0x08, 0x3c, 0x97, 0xc1, 0xf3, 0xf1, 0xeb, 0x32, 0xd1, 0x3f, 0x75, 0x1f, 0xb0, 0x73, 0x6d, 0x02, 0xeb, 0xa0, 0x5e, 0x8c, 0xb9, 0x46, 0x72, 0xd0, 0x9e, 0xbc, 0x11, 0x05, 0x1d, 0x52, 0xec, 0x7b, 0xd4, 0xdc, 0x77, 0x67, 0x30, 0x1b, 0x67, 0x03, 0x42, 0x12, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_98_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_98_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x43, 0xe2, 0x35, 0x74, 0x8b, 0xd3, 0xb1, 0xbf, 0xa1, 0x4c, 0x92, 0x23, 0x4a, 0x90, 0x26, 0x1a, 0xcc, 0x3e, 0x90, 0x86, 0x81, 0x08, 0x01, 0xa3, 0x67, 0x46, 0xbc, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_98 = { .name = "ecdsa_brainpoolp224r1_sha224_98", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_98_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_98_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_98_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 99 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 99 for ECDSA, tcId is 100 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_99_pubkey[] = { 0x1a, 0x51, 0x5c, 0xbe, 0x95, 0x7b, 0xfc, 0x07, 0x0e, 0x4c, 0x4a, 0x75, 0xd6, 0xfd, 0x5e, 0x7c, 0x15, 0xb1, 0xe2, 0x55, 0xeb, 0x42, 0xfe, 0xad, 0x06, 0xc9, 0xd2, 0x63, 0x62, 0x52, 0xcc, 0x0d, 0x23, 0x43, 0x18, 0x39, 0x4d, 0xf7, 0xdb, 0x65, 0xb0, 0xa5, 0x2e, 0x06, 0x95, 0x3c, 0xa6, 0xc2, 0x1e, 0xc9, 0x57, 0x74, 0xd3, 0x9e, 0xfd, 0xc9, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_99_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_99_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0xa8, 0xbd, 0xf4, 0x65, 0x32, 0xd8, 0x13, 0x6b, 0xeb, 0x21, 0xdb, 0xf1, 0x78, 0x09, 0x0c, 0x7e, 0x7d, 0xad, 0x2c, 0xaa, 0x8e, 0xb5, 0x2c, 0xef, 0x8d, 0x83, 0x0f, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_99 = { .name = "ecdsa_brainpoolp224r1_sha224_99", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_99_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_99_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_99_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 100 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 100 for ECDSA, tcId is 101 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_100_pubkey[] = { 0xd6, 0xa1, 0x6e, 0x19, 0x4e, 0x12, 0xb9, 0x6d, 0xb8, 0xe1, 0xbb, 0x02, 0x50, 0xd9, 0x50, 0xf7, 0xb3, 0x12, 0x9b, 0x14, 0xbb, 0xa0, 0xef, 0xb1, 0x57, 0xc4, 0x42, 0x3e, 0x62, 0x5a, 0x0c, 0x8c, 0x20, 0x83, 0x8b, 0xd9, 0x7f, 0xbc, 0x89, 0xf1, 0x67, 0x00, 0x28, 0x75, 0x4a, 0x09, 0xad, 0x28, 0xf6, 0x2d, 0xe5, 0xee, 0xa6, 0xe0, 0x7b, 0xc1, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_100_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x73, 0x16, 0x8a, 0x89, 0x94, 0xe5, 0xf7, 0x17, 0x93, 0x08, 0x1c, 0xb7, 0xaf, 0xbe, 0x3c, 0x0a, 0xf4, 0xbf, 0x7a, 0xa3, 0x36, 0xcf, 0x9d, 0xe3, 0x1e, 0xf8, 0x53, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_100 = { .name = "ecdsa_brainpoolp224r1_sha224_100", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_100_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_100_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_100_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 101 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 101 for ECDSA, tcId is 102 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_101_pubkey[] = { 0xc0, 0x12, 0x95, 0x0d, 0x07, 0x4b, 0xb0, 0x1b, 0x0a, 0x19, 0x88, 0xa5, 0xb5, 0x9b, 0x95, 0x91, 0x04, 0x27, 0x5b, 0xaf, 0x75, 0x7e, 0x53, 0x02, 0x9b, 0x04, 0x6a, 0x15, 0x42, 0xf5, 0x0f, 0xe2, 0x7f, 0x3e, 0xba, 0xc9, 0x03, 0x65, 0x58, 0xef, 0x30, 0xeb, 0xcb, 0x81, 0x20, 0x27, 0xbf, 0x0e, 0xf4, 0x6c, 0xda, 0x51, 0x96, 0x95, 0x41, 0xbb, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_101_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x73, 0x16, 0x8a, 0x89, 0x94, 0xe5, 0xf7, 0x17, 0x93, 0x08, 0x1c, 0xb7, 0xaf, 0xbe, 0x3c, 0x0a, 0xf4, 0xbf, 0x7a, 0xa3, 0x36, 0xcf, 0x9d, 0xe3, 0x1e, 0xf8, 0x53, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_101 = { .name = "ecdsa_brainpoolp224r1_sha224_101", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_101_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_101_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_101_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 102 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 102 for ECDSA, tcId is 103 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_102_pubkey[] = { 0xd1, 0x5c, 0x13, 0xa1, 0xbe, 0x99, 0xd9, 0xeb, 0x77, 0xd6, 0x88, 0x10, 0x4a, 0x18, 0xe2, 0x42, 0x42, 0xd2, 0x05, 0xa4, 0x02, 0x6f, 0x4a, 0x65, 0x62, 0x9e, 0x59, 0xee, 0x7e, 0x3d, 0xdf, 0x9a, 0xbb, 0xb7, 0xd5, 0x32, 0xb6, 0xe8, 0x1a, 0x6e, 0x11, 0xf3, 0x0d, 0x5b, 0x55, 0xfe, 0xb8, 0xee, 0x70, 0x7c, 0x4f, 0xed, 0xf9, 0x9c, 0x06, 0x07, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_102_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x1f, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_102 = { .name = "ecdsa_brainpoolp224r1_sha224_102", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_102_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_102_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_102_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 103 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 103 for ECDSA, tcId is 104 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_103_pubkey[] = { 0x3f, 0xe0, 0x19, 0x72, 0xc0, 0x62, 0x2e, 0xa8, 0x12, 0xd3, 0x06, 0x52, 0xc9, 0xfe, 0x2f, 0xeb, 0xee, 0x70, 0x81, 0x23, 0xb1, 0x62, 0x6d, 0x74, 0x4f, 0x87, 0xdb, 0x0d, 0xa5, 0x72, 0xc7, 0xe1, 0xe3, 0xa4, 0x81, 0x95, 0xe6, 0x22, 0x1d, 0x98, 0x3f, 0x78, 0x2f, 0xdc, 0x9e, 0x7c, 0x55, 0xbd, 0x5f, 0xdf, 0x7b, 0x67, 0x9b, 0x0f, 0x87, 0x56, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_103_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_103 = { .name = "ecdsa_brainpoolp224r1_sha224_103", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_103_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_103_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_103_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 104 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 104 for ECDSA, tcId is 105 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_104_pubkey[] = { 0x3f, 0xe0, 0x19, 0x72, 0xc0, 0x62, 0x2e, 0xa8, 0x12, 0xd3, 0x06, 0x52, 0xc9, 0xfe, 0x2f, 0xeb, 0xee, 0x70, 0x81, 0x23, 0xb1, 0x62, 0x6d, 0x74, 0x4f, 0x87, 0xdb, 0x0d, 0xa5, 0x72, 0xc7, 0xe1, 0xe3, 0xa4, 0x81, 0x95, 0xe6, 0x22, 0x1d, 0x98, 0x3f, 0x78, 0x2f, 0xdc, 0x9e, 0x7c, 0x55, 0xbd, 0x5f, 0xdf, 0x7b, 0x67, 0x9b, 0x0f, 0x87, 0x56, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_104_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_104 = { .name = "ecdsa_brainpoolp224r1_sha224_104", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_104_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_104_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_104_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 105 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 105 for ECDSA, tcId is 106 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_105_pubkey[] = { 0xd4, 0xb6, 0xe5, 0x11, 0x24, 0x06, 0xfb, 0x74, 0x3b, 0x6b, 0xb5, 0x5f, 0x49, 0xea, 0x20, 0x30, 0xd9, 0x04, 0x42, 0x08, 0x31, 0xeb, 0xdd, 0xac, 0xd6, 0x7b, 0xba, 0x89, 0x65, 0x22, 0x65, 0x38, 0x4b, 0x75, 0xd8, 0x50, 0xe7, 0xc2, 0x7f, 0x4e, 0x33, 0xed, 0x6c, 0x57, 0x6d, 0xf0, 0xff, 0x96, 0x94, 0x70, 0xa9, 0xef, 0x25, 0xff, 0xaf, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_105_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xcf, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_105 = { .name = "ecdsa_brainpoolp224r1_sha224_105", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_105_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_105_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_105_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 106 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 106 for ECDSA, tcId is 107 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_106_pubkey[] = { 0x16, 0xc2, 0x12, 0x9d, 0x54, 0xb9, 0x34, 0x79, 0xb5, 0x6a, 0x9f, 0xf5, 0xb8, 0x3e, 0x4c, 0x75, 0x0b, 0xb4, 0xf3, 0x3e, 0xe1, 0xe7, 0x0f, 0x38, 0xb5, 0x44, 0x9f, 0x2d, 0x34, 0xcc, 0xaf, 0x79, 0xc5, 0x1c, 0x7d, 0xff, 0x3a, 0x7f, 0x9a, 0x05, 0xcd, 0x15, 0xa3, 0x96, 0xe0, 0xcf, 0xfe, 0x25, 0x42, 0x1c, 0x37, 0xe9, 0xb8, 0x0e, 0x14, 0x89, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_106_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_106 = { .name = "ecdsa_brainpoolp224r1_sha224_106", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_106_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_106_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_106_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 107 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 107 for ECDSA, tcId is 108 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_107_pubkey[] = { 0x65, 0xab, 0xa0, 0xe4, 0x42, 0x7a, 0x0a, 0xe5, 0x58, 0x72, 0x1a, 0x5a, 0x8e, 0x72, 0xcb, 0x37, 0x62, 0xeb, 0x50, 0x22, 0x3b, 0xbe, 0x4c, 0x41, 0xa4, 0x50, 0xfe, 0x49, 0xc8, 0x1d, 0x3a, 0xe4, 0x86, 0x47, 0x8b, 0x42, 0x98, 0xc9, 0x43, 0x28, 0x3d, 0x2e, 0xc2, 0x13, 0x0b, 0xac, 0x22, 0xfa, 0xbc, 0x52, 0xf7, 0x43, 0xb1, 0xab, 0x7f, 0xa7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_107_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_107 = { .name = "ecdsa_brainpoolp224r1_sha224_107", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_107_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_107_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_107_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 108 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 108 for ECDSA, tcId is 109 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_108_pubkey[] = { 0x55, 0xa7, 0xb0, 0x10, 0x06, 0x13, 0xfa, 0xbd, 0x95, 0x7b, 0x42, 0x60, 0x08, 0x35, 0xc6, 0xd4, 0x2e, 0x01, 0xe0, 0x42, 0x52, 0x59, 0x3b, 0xdd, 0xe3, 0xb1, 0x72, 0x78, 0x87, 0x70, 0x8a, 0x05, 0xab, 0xa2, 0xf9, 0x3f, 0x1a, 0x1e, 0x1e, 0xcb, 0x70, 0x3e, 0xc9, 0xa8, 0xee, 0x6d, 0x60, 0x13, 0xa1, 0x01, 0xd3, 0x97, 0x01, 0x2a, 0x8c, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_108_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_108 = { .name = "ecdsa_brainpoolp224r1_sha224_108", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_108_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_108_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_108_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 109 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 109 for ECDSA, tcId is 110 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_109_pubkey[] = { 0x1a, 0xda, 0x54, 0xdc, 0x01, 0x58, 0x61, 0x68, 0x0d, 0x8b, 0xb2, 0xd3, 0x11, 0xb9, 0x0e, 0x82, 0xdb, 0x75, 0xaa, 0x9e, 0x82, 0x17, 0xb9, 0x26, 0x11, 0xfa, 0x03, 0xcb, 0x84, 0xc6, 0x11, 0x55, 0x11, 0x97, 0x29, 0x8b, 0x32, 0x74, 0x87, 0x5c, 0xb9, 0x46, 0x86, 0xe7, 0x58, 0xf0, 0xa1, 0xa9, 0x67, 0x5c, 0x0b, 0xc1, 0x57, 0x45, 0x1a, 0x76, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_109_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_109 = { .name = "ecdsa_brainpoolp224r1_sha224_109", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_109_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_109_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_109_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 110 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 110 for ECDSA, tcId is 111 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_110_pubkey[] = { 0xc6, 0x7b, 0x64, 0x29, 0x78, 0x53, 0x34, 0xa6, 0x08, 0xdd, 0xe9, 0x49, 0xa8, 0xab, 0xe6, 0x41, 0xdb, 0xd3, 0x60, 0x1e, 0xbc, 0xe1, 0xe6, 0x75, 0xfe, 0x71, 0xa8, 0xe5, 0x27, 0xd2, 0xe8, 0x72, 0x7d, 0xc4, 0xf6, 0x18, 0x49, 0x35, 0x50, 0xbb, 0x94, 0x01, 0x51, 0xbc, 0xa6, 0x82, 0x6f, 0x71, 0x4c, 0x5b, 0x31, 0x85, 0x40, 0x38, 0xf4, 0x4d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_110_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_110 = { .name = "ecdsa_brainpoolp224r1_sha224_110", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_110_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_110_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_110_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 111 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 111 for ECDSA, tcId is 112 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_111_pubkey[] = { 0x1d, 0xcc, 0x7a, 0x5a, 0xd1, 0x11, 0xa3, 0x36, 0x27, 0xf9, 0x2d, 0xd8, 0x75, 0xba, 0x4a, 0x06, 0xf6, 0xa7, 0xc2, 0xbe, 0xfd, 0xd1, 0x05, 0x04, 0x88, 0xd0, 0x57, 0xa7, 0x34, 0x1c, 0xae, 0x0b, 0xe7, 0x2a, 0x99, 0x77, 0x6d, 0xb5, 0xbd, 0x79, 0xb4, 0x63, 0xe2, 0xd3, 0x88, 0x27, 0x64, 0xaf, 0x9c, 0x02, 0x45, 0xd0, 0x84, 0xa3, 0x34, 0x2d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_111_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x8f, 0xd6, 0x23, 0x1c, 0x19, 0x82, 0x44, 0x59, 0x71, 0x65, 0x75, 0x6e, 0x4e, 0x8b, 0x52, 0x65, 0xe0, 0xb9, 0xd2, 0xdc, 0xf3, 0xe9, 0xd3, 0x17, 0xc3, 0xc5, 0x0d, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_111 = { .name = "ecdsa_brainpoolp224r1_sha224_111", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_111_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_111_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_111_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 112 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 112 for ECDSA, tcId is 113 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_112_pubkey[] = { 0xbd, 0xf7, 0x08, 0xa0, 0x1c, 0x6a, 0x81, 0x47, 0x28, 0xd3, 0x94, 0xb7, 0xf2, 0x9b, 0xf6, 0x57, 0x97, 0x34, 0x86, 0x2d, 0x8a, 0xf8, 0xe6, 0xff, 0x78, 0x6f, 0xbe, 0x49, 0x90, 0x1c, 0xd4, 0x62, 0x94, 0x6e, 0x5e, 0x36, 0xcc, 0x97, 0xc9, 0x89, 0x6d, 0xf2, 0xe1, 0x81, 0x77, 0x45, 0x6d, 0x28, 0x2a, 0x7a, 0x26, 0xa3, 0x80, 0x84, 0xc0, 0x86, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_112_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xb6, 0xea, 0x09, 0xc6, 0xec, 0x5e, 0x04, 0x84, 0xb9, 0x4f, 0x25, 0xd8, 0x90, 0x14, 0x5b, 0x0a, 0xe3, 0xff, 0xbb, 0x98, 0xb7, 0x16, 0xad, 0xdd, 0x92, 0xde, 0xbd, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_112 = { .name = "ecdsa_brainpoolp224r1_sha224_112", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_112_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_112_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_112_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 113 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 113 for ECDSA, tcId is 114 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_113_pubkey[] = { 0x0c, 0x53, 0x1f, 0xb3, 0xd9, 0x96, 0xfa, 0xa2, 0x24, 0x07, 0xdf, 0x13, 0x05, 0xff, 0x6a, 0xe0, 0xbf, 0xe9, 0x4e, 0x1c, 0x20, 0x22, 0xf4, 0x73, 0x0d, 0x0f, 0x8a, 0x4a, 0xbd, 0x80, 0x73, 0x95, 0x04, 0x59, 0x56, 0x2e, 0x53, 0x9a, 0xc0, 0x89, 0x54, 0x33, 0x75, 0x7e, 0x25, 0x20, 0x9b, 0x12, 0x53, 0x4f, 0xf3, 0x0f, 0xe3, 0xd3, 0x7c, 0x71, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_113_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x2f, 0x62, 0xa9, 0xcf, 0x48, 0xe3, 0xca, 0x60, 0x2e, 0xef, 0x4e, 0x33, 0xaf, 0xa4, 0x3f, 0x2d, 0xce, 0xb9, 0x22, 0xa4, 0x0a, 0x67, 0xde, 0x79, 0xf7, 0xb1, 0xae, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_113 = { .name = "ecdsa_brainpoolp224r1_sha224_113", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_113_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_113_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_113_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 114 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 114 for ECDSA, tcId is 115 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_114_pubkey[] = { 0x67, 0x82, 0x95, 0x40, 0x82, 0x41, 0x8e, 0x00, 0x02, 0xa0, 0x81, 0x26, 0x72, 0xac, 0x21, 0x23, 0xb6, 0x33, 0x4b, 0x34, 0x13, 0x40, 0x55, 0x50, 0x96, 0xbc, 0xf6, 0xc6, 0x1f, 0x6f, 0xa1, 0xa8, 0xfe, 0xa6, 0x17, 0xd9, 0xdd, 0xa1, 0x44, 0x61, 0xd6, 0x3a, 0xa4, 0x48, 0xf2, 0x05, 0xa3, 0x9b, 0x25, 0x50, 0x1a, 0x6b, 0x1d, 0x42, 0xee, 0x5f, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_114_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x61, 0x8d, 0xfc, 0x54, 0x40, 0x8b, 0xec, 0x1c, 0xb3, 0x7c, 0x7e, 0xe5, 0x2b, 0x60, 0xad, 0xbc, 0x8d, 0x3a, 0x6c, 0x26, 0x45, 0x7c, 0x39, 0xd0, 0x13, 0xe8, 0x8e, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_114 = { .name = "ecdsa_brainpoolp224r1_sha224_114", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_114_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_114_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_114_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 115 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 115 for ECDSA, tcId is 116 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_115_pubkey[] = { 0x5b, 0x5e, 0x6e, 0xab, 0xa7, 0x59, 0x7a, 0xe6, 0x41, 0x42, 0x0a, 0xce, 0x6a, 0xf2, 0x57, 0x58, 0x39, 0xf1, 0x61, 0xb2, 0x7b, 0x91, 0xb2, 0x70, 0xf1, 0x8b, 0xf7, 0xd0, 0x49, 0x6a, 0xb3, 0xc3, 0x07, 0x2f, 0xa6, 0xee, 0x55, 0x78, 0xfc, 0x81, 0x4f, 0x74, 0xd1, 0x48, 0xec, 0xbc, 0x2a, 0x98, 0xcf, 0xdc, 0x5d, 0x40, 0xec, 0x7e, 0x69, 0x80, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_115_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x01, 0x0d, 0xe5, 0x71, 0x24, 0xc0, 0x93, 0x0e, 0xf8, 0x00, 0xe7, 0x64, 0xb5, 0x58, 0x59, 0x27, 0x97, 0x7e, 0x2a, 0xd2, 0xd8, 0xb8, 0x2e, 0x7c, 0xb6, 0x48, 0xaf, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_115 = { .name = "ecdsa_brainpoolp224r1_sha224_115", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_115_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_115_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_115_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 116 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 116 for ECDSA, tcId is 117 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_116_pubkey[] = { 0x8e, 0x66, 0x1a, 0x06, 0xad, 0x55, 0xb5, 0x22, 0x78, 0x01, 0xea, 0x43, 0x09, 0xa7, 0x2b, 0x9c, 0xd9, 0x49, 0x73, 0xbc, 0x87, 0x3c, 0x04, 0x05, 0xe1, 0x24, 0x7d, 0x1e, 0x64, 0x89, 0x8b, 0x82, 0x2c, 0x36, 0x3c, 0xac, 0x88, 0x21, 0x30, 0x2d, 0xe3, 0x8a, 0x91, 0x42, 0x68, 0xaa, 0xa6, 0x7d, 0xb2, 0x56, 0x18, 0x78, 0xf0, 0xf9, 0x0a, 0x02, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_116_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x03, 0x3e, 0xf5, 0x01, 0x0b, 0xec, 0xed, 0x04, 0xc4, 0x92, 0x88, 0x68, 0x51, 0x3e, 0xd1, 0x87, 0x8c, 0xe6, 0x77, 0xa6, 0xed, 0x81, 0x0e, 0x9b, 0x99, 0xdd, 0x97, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_116 = { .name = "ecdsa_brainpoolp224r1_sha224_116", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_116_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_116_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_116_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 117 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 117 for ECDSA, tcId is 118 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_117_pubkey[] = { 0xb3, 0xd2, 0xb9, 0x3f, 0x14, 0x88, 0x65, 0x72, 0x62, 0x14, 0x0f, 0x96, 0xc1, 0x08, 0xaa, 0x04, 0x85, 0x93, 0x9b, 0xd9, 0x94, 0x40, 0x24, 0x0a, 0x7a, 0x7d, 0x54, 0xe3, 0x88, 0x96, 0x81, 0x74, 0xb0, 0x61, 0x85, 0x37, 0x39, 0xf8, 0xb0, 0x47, 0x1c, 0x76, 0x12, 0x65, 0x39, 0xdc, 0x57, 0xcc, 0x6d, 0x7c, 0x1f, 0x53, 0x9f, 0x68, 0x66, 0x74, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_117_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x06, 0x7d, 0xea, 0x02, 0x17, 0xd9, 0xda, 0x09, 0x89, 0x25, 0x10, 0xd0, 0xa2, 0x7d, 0xa3, 0x0f, 0x19, 0xcc, 0xef, 0x4d, 0xdb, 0x02, 0x1d, 0x37, 0x33, 0xbb, 0x2f, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_117 = { .name = "ecdsa_brainpoolp224r1_sha224_117", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_117_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_117_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_117_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 118 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 118 for ECDSA, tcId is 119 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_118_pubkey[] = { 0xba, 0x83, 0x0d, 0xbf, 0x83, 0x07, 0x5c, 0xd1, 0x82, 0xbc, 0x93, 0x22, 0xc1, 0xf6, 0x29, 0x9a, 0x4c, 0xe3, 0xcf, 0x4d, 0xdd, 0xe0, 0xe6, 0xfc, 0xee, 0x50, 0xf0, 0xd6, 0x2b, 0x15, 0x3f, 0x6f, 0x37, 0x7a, 0x88, 0x80, 0x9c, 0x9d, 0xd5, 0x0d, 0x8d, 0x61, 0xeb, 0x67, 0x94, 0x51, 0x44, 0x48, 0x16, 0x57, 0x86, 0xa7, 0xc6, 0x55, 0x8d, 0xcc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_118_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x45, 0x84, 0x7e, 0x02, 0xfd, 0x01, 0xa3, 0xcc, 0x9e, 0x06, 0x3f, 0x96, 0x1f, 0xb9, 0x20, 0xab, 0x32, 0x71, 0xec, 0x09, 0x99, 0x6f, 0x75, 0xbc, 0xa7, 0xfe, 0x6d, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_118 = { .name = "ecdsa_brainpoolp224r1_sha224_118", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_118_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_118_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_118_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 119 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 119 for ECDSA, tcId is 120 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_119_pubkey[] = { 0x77, 0xf4, 0x02, 0x22, 0xe4, 0xa7, 0x9a, 0x0f, 0xa7, 0xe5, 0x10, 0x88, 0x7e, 0x69, 0xeb, 0xa3, 0x1f, 0x6d, 0xd7, 0x06, 0x71, 0x21, 0xda, 0xfe, 0x73, 0x9b, 0xbe, 0x13, 0xd0, 0xff, 0xab, 0x72, 0x22, 0xcf, 0x6d, 0x82, 0x7c, 0x51, 0xeb, 0x53, 0xab, 0xac, 0x50, 0x6b, 0xc0, 0xa5, 0xd7, 0xc1, 0xa5, 0xa7, 0xe1, 0x68, 0x3d, 0x49, 0xe4, 0x3e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_119_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x0b, 0x4c, 0xbe, 0x86, 0x6d, 0x19, 0x20, 0x63, 0x41, 0x38, 0xc8, 0x79, 0x8f, 0xcc, 0x41, 0x47, 0x94, 0x47, 0xe5, 0xae, 0x76, 0x07, 0x94, 0xe1, 0xe5, 0x79, 0x79, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_119 = { .name = "ecdsa_brainpoolp224r1_sha224_119", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_119_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_119_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_119_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 120 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 120 for ECDSA, tcId is 121 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_120_pubkey[] = { 0x59, 0x7b, 0x5a, 0x3c, 0x10, 0x6b, 0x8c, 0x4e, 0x9a, 0x7e, 0x7a, 0x51, 0x7c, 0xd7, 0x40, 0xe7, 0x76, 0x67, 0xc8, 0xa2, 0xd0, 0x6c, 0x51, 0x0e, 0x5e, 0x3b, 0x72, 0x8d, 0x9c, 0xc2, 0x49, 0xe8, 0x27, 0xf5, 0xff, 0xf9, 0x02, 0x12, 0x2e, 0xb2, 0x6b, 0xad, 0xc4, 0xa7, 0xda, 0x65, 0x55, 0xb4, 0x89, 0xba, 0x98, 0x98, 0x2d, 0x38, 0x81, 0x25, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_120_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x20, 0xd7, 0x2a, 0xe3, 0x39, 0xe5, 0x62, 0x01, 0x70, 0xc9, 0x0a, 0x4c, 0xe5, 0xbc, 0xa0, 0x8d, 0xed, 0x17, 0x00, 0xb2, 0xb6, 0xc8, 0x0e, 0xc6, 0x12, 0xc8, 0xd5, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_120 = { .name = "ecdsa_brainpoolp224r1_sha224_120", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_120_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_120_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_120_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 121 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 121 for ECDSA, tcId is 122 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_121_pubkey[] = { 0x0f, 0x24, 0x53, 0xe7, 0x58, 0x5c, 0xb1, 0x39, 0x2f, 0xf4, 0xfa, 0x11, 0x86, 0x9f, 0x8c, 0x10, 0xb2, 0xf9, 0xcf, 0x4f, 0x2a, 0x18, 0xb8, 0x66, 0xe8, 0xf3, 0x7c, 0x2b, 0xd1, 0x56, 0x6e, 0xf0, 0x49, 0x28, 0x79, 0x75, 0x79, 0xd4, 0x0f, 0x33, 0x10, 0xeb, 0xaf, 0x47, 0x7a, 0x4e, 0x78, 0xa2, 0x35, 0x86, 0x19, 0x28, 0x32, 0x86, 0x34, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_121_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x9d, 0x23, 0x5a, 0xa9, 0xe9, 0xf9, 0xc6, 0x45, 0x3e, 0x39, 0xa7, 0x86, 0x13, 0x83, 0x6e, 0xa1, 0x4c, 0x2d, 0xdf, 0x31, 0xc9, 0x1b, 0x74, 0x7a, 0xef, 0x01, 0x0a, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_121 = { .name = "ecdsa_brainpoolp224r1_sha224_121", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_121_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_121_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_121_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 122 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 122 for ECDSA, tcId is 123 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_122_pubkey[] = { 0x10, 0xcb, 0x3d, 0xbc, 0xe4, 0xda, 0x51, 0x8e, 0x04, 0xeb, 0x12, 0x5c, 0xf3, 0xb4, 0x4b, 0xef, 0x04, 0x51, 0xba, 0xd3, 0xe7, 0xcb, 0xba, 0xd5, 0x32, 0x8b, 0x85, 0xbb, 0x35, 0x86, 0x51, 0xb4, 0x78, 0xbc, 0xf2, 0x00, 0x68, 0x4f, 0xd3, 0x10, 0xe6, 0xd1, 0x4a, 0xcd, 0x23, 0xdc, 0x2a, 0x76, 0x04, 0x75, 0xdf, 0x0f, 0x5b, 0x8a, 0x75, 0x8c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_122_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x9c, 0xa7, 0x98, 0x7f, 0x33, 0x67, 0xa9, 0x51, 0x6e, 0xca, 0x57, 0x85, 0x50, 0x98, 0xd4, 0xaa, 0xaf, 0x28, 0x94, 0x38, 0xd9, 0xad, 0x7b, 0x39, 0xdc, 0xc8, 0x11, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_122 = { .name = "ecdsa_brainpoolp224r1_sha224_122", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_122_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_122_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_122_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 123 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 123 for ECDSA, tcId is 124 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_123_pubkey[] = { 0x2c, 0x27, 0x73, 0x2a, 0xaa, 0xa3, 0xf8, 0xb1, 0x66, 0x64, 0xa4, 0x8a, 0x1d, 0xd0, 0x6f, 0xc0, 0xfe, 0x40, 0xf6, 0x57, 0x42, 0x75, 0x1e, 0x5c, 0x04, 0xb7, 0xef, 0xf5, 0x07, 0x80, 0x4b, 0x2d, 0xbe, 0xe7, 0x9f, 0xfe, 0x56, 0xdc, 0x4f, 0x4a, 0x60, 0x62, 0xce, 0xd6, 0xf3, 0x75, 0xb8, 0x0b, 0x5a, 0xd2, 0xcf, 0x3a, 0x29, 0x21, 0xb3, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_123_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x72, 0x95, 0xbc, 0x38, 0xb7, 0x6b, 0xcc, 0xd7, 0x63, 0x5d, 0x65, 0x61, 0xd1, 0xf0, 0x53, 0xdd, 0x9b, 0x07, 0x94, 0x19, 0x24, 0x9f, 0x94, 0x36, 0x8c, 0x8d, 0x31, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_123 = { .name = "ecdsa_brainpoolp224r1_sha224_123", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_123_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_123_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_123_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 124 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 124 for ECDSA, tcId is 125 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_124_pubkey[] = { 0x8c, 0xed, 0x55, 0x68, 0x77, 0xee, 0x15, 0xaf, 0x31, 0x4a, 0xed, 0x5d, 0xfc, 0x43, 0xa0, 0x0f, 0xbb, 0x76, 0x26, 0xfb, 0xdc, 0x7b, 0x81, 0xff, 0x7d, 0xbe, 0xa2, 0xf8, 0x98, 0xf5, 0xe2, 0x6f, 0x7f, 0xc3, 0x27, 0x6d, 0xa2, 0xa8, 0xe8, 0x69, 0xb0, 0xaf, 0xbc, 0x41, 0xef, 0x3b, 0x40, 0x32, 0x60, 0x80, 0xaa, 0x85, 0xce, 0x62, 0xc2, 0xab, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_124_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x93, 0x8f, 0x2d, 0xb2, 0xb7, 0x20, 0x61, 0xab, 0xd7, 0xeb, 0x6e, 0x5c, 0x8f, 0xe6, 0x85, 0x39, 0x1e, 0x96, 0x6e, 0xc0, 0xc7, 0x69, 0xd0, 0xc5, 0x38, 0xe0, 0x67, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_124 = { .name = "ecdsa_brainpoolp224r1_sha224_124", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_124_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_124_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_124_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 125 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 125 for ECDSA, tcId is 126 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_125_pubkey[] = { 0x42, 0xb1, 0x9b, 0x22, 0x50, 0x6c, 0x4f, 0xd8, 0x9f, 0xa2, 0x8c, 0x59, 0x09, 0xd9, 0x7f, 0x8f, 0xfe, 0xbd, 0xc8, 0x28, 0x04, 0xdc, 0xc7, 0xbf, 0x6a, 0x57, 0x0a, 0xe2, 0x1a, 0x97, 0x4e, 0xe0, 0x8b, 0x48, 0x4f, 0xa0, 0x5e, 0x1f, 0xbb, 0x89, 0xc4, 0x8c, 0x50, 0x75, 0x4b, 0xa1, 0xe4, 0x0a, 0x65, 0x8a, 0x5c, 0xed, 0x40, 0x9c, 0x63, 0x61, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_125_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x7f, 0x90, 0x7c, 0x8e, 0x32, 0xe6, 0x0e, 0x2b, 0xa4, 0x03, 0x3e, 0xe7, 0xd6, 0x5f, 0x3f, 0xe8, 0xfd, 0x23, 0x71, 0x9c, 0x7a, 0x9c, 0x6f, 0x5e, 0x52, 0xf1, 0x8c, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_125 = { .name = "ecdsa_brainpoolp224r1_sha224_125", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_125_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_125_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_125_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 126 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 126 for ECDSA, tcId is 127 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_126_pubkey[] = { 0x20, 0x95, 0xe1, 0x21, 0x16, 0xce, 0xbd, 0xd4, 0xe8, 0xbc, 0x1c, 0xc1, 0x84, 0xb5, 0x38, 0xb1, 0x51, 0x5f, 0x78, 0x9e, 0x3b, 0xe4, 0xb0, 0x3a, 0x41, 0x83, 0xfa, 0xe5, 0xd0, 0x92, 0x6e, 0x44, 0x68, 0x75, 0xab, 0xdc, 0xd1, 0x2c, 0x82, 0x39, 0xe6, 0x07, 0x96, 0x1c, 0xad, 0xd0, 0x0a, 0x2e, 0x89, 0x9d, 0x82, 0x1d, 0xb1, 0x1d, 0x56, 0x79, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_126_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x34, 0xc3, 0x97, 0x8c, 0x3a, 0x1d, 0xac, 0x92, 0x1f, 0x62, 0x35, 0xc8, 0x2a, 0x02, 0xed, 0xb9, 0x34, 0x22, 0x85, 0x46, 0x94, 0x26, 0xbb, 0x10, 0xf8, 0x28, 0x97, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_126 = { .name = "ecdsa_brainpoolp224r1_sha224_126", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_126_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_126_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_126_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 127 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 127 for ECDSA, tcId is 128 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_127_pubkey[] = { 0x58, 0xf8, 0x2e, 0xb2, 0xca, 0x6e, 0x34, 0x74, 0xa9, 0x0e, 0x29, 0xac, 0x56, 0xdc, 0xb6, 0x3d, 0x88, 0xe6, 0x69, 0xe0, 0xa4, 0x02, 0x04, 0xe6, 0x20, 0x2a, 0xf7, 0xc5, 0xa0, 0xe8, 0x5e, 0x40, 0x39, 0xf3, 0x43, 0x25, 0x5b, 0x4f, 0xe4, 0xbd, 0xc1, 0x19, 0x1a, 0x78, 0x45, 0xbd, 0xd7, 0xeb, 0x90, 0x8e, 0xcd, 0x87, 0x79, 0xa2, 0x79, 0x63, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_127_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x97, 0x01, 0xd6, 0x52, 0x3d, 0x3d, 0x3f, 0x5b, 0x8a, 0xc8, 0x40, 0x26, 0x80, 0xb3, 0xca, 0xb8, 0x96, 0x6e, 0x26, 0x51, 0xcf, 0xc1, 0x73, 0x9f, 0xcd, 0x3c, 0x07, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_127 = { .name = "ecdsa_brainpoolp224r1_sha224_127", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_127_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_127_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_127_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 128 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 128 for ECDSA, tcId is 129 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_128_pubkey[] = { 0x71, 0xf2, 0xc4, 0xa7, 0xc3, 0xf7, 0x13, 0x11, 0xa7, 0x93, 0x45, 0x8f, 0xf1, 0x22, 0x62, 0xa8, 0x63, 0x51, 0x8f, 0xb3, 0x0d, 0xbb, 0x7a, 0x80, 0x70, 0x10, 0x30, 0xb8, 0xb6, 0xb0, 0x84, 0x28, 0xfa, 0xbd, 0xb6, 0x9c, 0x8a, 0x8e, 0x9e, 0x32, 0x7d, 0xae, 0xd0, 0x79, 0x5f, 0xb8, 0x4e, 0x0d, 0x88, 0x17, 0x08, 0x60, 0x22, 0xd3, 0xb2, 0x3b, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_128_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x56, 0x42, 0x77, 0xfa, 0x54, 0x37, 0x18, 0x30, 0xeb, 0x78, 0x50, 0x27, 0x8b, 0x96, 0x99, 0xd8, 0x5b, 0xc5, 0x90, 0x58, 0x31, 0xa4, 0x2a, 0x9b, 0xf4, 0xd0, 0x7a, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_128 = { .name = "ecdsa_brainpoolp224r1_sha224_128", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_128_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_128_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_128_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 129 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 129 for ECDSA, tcId is 130 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_129_pubkey[] = { 0x3c, 0xfc, 0xf6, 0x4e, 0xec, 0xe9, 0x94, 0xc3, 0x5c, 0x56, 0xe9, 0x15, 0xe4, 0xed, 0x18, 0x83, 0xba, 0x6e, 0xc3, 0x4f, 0xe3, 0x96, 0xc1, 0x1a, 0xcd, 0x8f, 0x47, 0xd2, 0x63, 0xcd, 0xfb, 0xaa, 0x34, 0x40, 0x11, 0x00, 0xb5, 0xb1, 0x0a, 0xf7, 0x71, 0xbb, 0x46, 0xc0, 0xd5, 0x34, 0x46, 0xf7, 0xaa, 0x84, 0x79, 0x56, 0xc9, 0x36, 0x34, 0x94, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_129_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x77, 0x94, 0xfb, 0xde, 0xe6, 0x38, 0xf6, 0x57, 0xac, 0x1e, 0x4c, 0x65, 0x28, 0x4c, 0x14, 0x4b, 0x3e, 0xfa, 0x7b, 0xf4, 0x10, 0x9e, 0x6c, 0xca, 0x60, 0x5c, 0x4f, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_129 = { .name = "ecdsa_brainpoolp224r1_sha224_129", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_129_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_129_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_129_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 130 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 130 for ECDSA, tcId is 131 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_130_pubkey[] = { 0x4c, 0x40, 0x4d, 0xec, 0xbc, 0x06, 0x97, 0xb2, 0x07, 0xfa, 0x08, 0x98, 0x2e, 0xf0, 0xfe, 0xdb, 0x00, 0x1e, 0xeb, 0x43, 0xf3, 0x74, 0x04, 0xda, 0xb9, 0x7a, 0x9a, 0x77, 0x47, 0x19, 0x1b, 0xc2, 0x40, 0xdf, 0xd4, 0x40, 0x27, 0x4e, 0x06, 0x95, 0x56, 0x11, 0xf9, 0x92, 0x3f, 0xad, 0x69, 0x49, 0xb2, 0xcc, 0x15, 0x7a, 0x18, 0x5c, 0x82, 0x29, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_130_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xb5, 0x20, 0x0d, 0xa7, 0xa4, 0x58, 0x37, 0xf5, 0xb7, 0x1c, 0x47, 0xe1, 0xb9, 0x4c, 0x78, 0x62, 0xa1, 0xe4, 0xbe, 0xcb, 0xa3, 0x0a, 0x90, 0x8a, 0xda, 0x21, 0x94, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_130 = { .name = "ecdsa_brainpoolp224r1_sha224_130", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_130_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_130_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_130_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 131 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 131 for ECDSA, tcId is 132 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_131_pubkey[] = { 0x7b, 0xe4, 0xb0, 0xea, 0x0b, 0x15, 0xb9, 0x6f, 0x91, 0x31, 0x2c, 0x15, 0xc8, 0x16, 0x29, 0xe4, 0x0c, 0x44, 0x18, 0xf7, 0x0b, 0x86, 0xc5, 0xbc, 0xdc, 0x25, 0x8f, 0xd9, 0x79, 0xcb, 0xef, 0x8e, 0xa2, 0xa7, 0x7c, 0xa0, 0x92, 0xdb, 0x0e, 0xb9, 0x54, 0xa9, 0xe3, 0x3e, 0x82, 0xb9, 0xc5, 0xf1, 0x10, 0xc8, 0xc9, 0x90, 0xb9, 0x23, 0x5a, 0x57, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_131_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x65, 0x2b, 0x78, 0x71, 0x6e, 0xd7, 0x99, 0xae, 0xc6, 0xba, 0xca, 0xc3, 0xa3, 0xe0, 0xa7, 0xbb, 0x36, 0x0f, 0x28, 0x32, 0x49, 0x3f, 0x28, 0x6d, 0x19, 0x1a, 0x62, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_131 = { .name = "ecdsa_brainpoolp224r1_sha224_131", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_131_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_131_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_131_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 132 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 132 for ECDSA, tcId is 133 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_132_pubkey[] = { 0x64, 0xa6, 0x4c, 0xff, 0xa5, 0x40, 0x66, 0x49, 0x92, 0x64, 0x99, 0x1e, 0x47, 0xa0, 0xf1, 0x4b, 0xca, 0x63, 0x19, 0xa1, 0xc2, 0x7e, 0x15, 0x08, 0xe2, 0x01, 0x6b, 0x56, 0xbd, 0xa7, 0xc1, 0x7a, 0x04, 0xd9, 0xcb, 0x88, 0xea, 0xdb, 0x72, 0x96, 0xcf, 0x87, 0xdf, 0xbf, 0xad, 0xfe, 0x65, 0x05, 0x68, 0x37, 0xa7, 0x97, 0xd6, 0x69, 0x97, 0xdd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_132_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x97, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_132 = { .name = "ecdsa_brainpoolp224r1_sha224_132", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_132_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_132_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_132_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 133 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 133 for ECDSA, tcId is 134 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_133_pubkey[] = { 0x3d, 0x4c, 0x4e, 0x3c, 0x5b, 0xa7, 0xa5, 0x33, 0xc8, 0xa3, 0x38, 0x6d, 0x6f, 0xf7, 0x7a, 0x81, 0x35, 0x13, 0x46, 0xe1, 0x89, 0x4b, 0x25, 0x60, 0xb4, 0x06, 0xa6, 0x3e, 0xa3, 0x49, 0x77, 0x59, 0x46, 0x79, 0x9e, 0xeb, 0x27, 0x49, 0x26, 0xb4, 0xd9, 0x57, 0x32, 0x8f, 0x6c, 0x7d, 0x50, 0xf6, 0x76, 0x02, 0x91, 0xac, 0xda, 0xeb, 0x11, 0x4f, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_133_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xab, 0xa8, 0xd8, 0x9c, 0x2c, 0x94, 0xba, 0x58, 0xe7, 0x0d, 0xb7, 0x86, 0xa6, 0x18, 0x1d, 0xc0, 0xe7, 0x1d, 0x16, 0xf3, 0xf4, 0x3d, 0x96, 0x00, 0xfc, 0x4c, 0x8f, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_133 = { .name = "ecdsa_brainpoolp224r1_sha224_133", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_133_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_133_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_133_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 134 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 134 for ECDSA, tcId is 135 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_134_pubkey[] = { 0x4d, 0xb8, 0xe8, 0xac, 0x43, 0xf2, 0x2d, 0xf7, 0x5c, 0x9c, 0x09, 0xfe, 0x19, 0x3b, 0x9c, 0xd8, 0x3d, 0x5c, 0x9b, 0x73, 0xf3, 0x7d, 0x14, 0x94, 0x76, 0x17, 0x24, 0xb0, 0xa7, 0x60, 0x82, 0xc3, 0x5d, 0xa8, 0x62, 0xa1, 0xe2, 0xe8, 0x62, 0x6f, 0xfa, 0x94, 0xed, 0x18, 0xfc, 0xb1, 0xd8, 0x97, 0xec, 0x7a, 0xb5, 0x2c, 0x32, 0x25, 0x53, 0xff, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_134_sig[] = { 0x7a, 0xf2, 0x95, 0xe6, 0xe4, 0x78, 0x72, 0x52, 0xf3, 0x4c, 0x52, 0x7a, 0xf5, 0x62, 0xca, 0x27, 0x21, 0x4a, 0x66, 0xf6, 0xd6, 0xdb, 0x4f, 0xd2, 0xc1, 0x12, 0xb5, 0x64, 0xb1, 0xd0, 0x10, 0xf7, 0x40, 0x62, 0xee, 0xaa, 0xc0, 0xce, 0xcb, 0x2c, 0x3c, 0x2c, 0x4d, 0x28, 0x8a, 0x57, 0x6b, 0xf6, 0xf0, 0xa0, 0x03, 0x47, 0xc6, 0xa5, 0xb5, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_134 = { .name = "ecdsa_brainpoolp224r1_sha224_134", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_134_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_134_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_134_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 135 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 135 for ECDSA, tcId is 136 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_135_pubkey[] = { 0x4d, 0xb8, 0xe8, 0xac, 0x43, 0xf2, 0x2d, 0xf7, 0x5c, 0x9c, 0x09, 0xfe, 0x19, 0x3b, 0x9c, 0xd8, 0x3d, 0x5c, 0x9b, 0x73, 0xf3, 0x7d, 0x14, 0x94, 0x76, 0x17, 0x24, 0xb0, 0x30, 0x60, 0xb1, 0xe6, 0xc8, 0x9b, 0x03, 0xe4, 0x47, 0x2f, 0xcd, 0xb5, 0x7b, 0x3c, 0xea, 0x6e, 0xb3, 0xed, 0x2e, 0xbf, 0xab, 0x5f, 0xd4, 0xc9, 0x4c, 0xa3, 0x6d, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_135_sig[] = { 0x7a, 0xf2, 0x95, 0xe6, 0xe4, 0x78, 0x72, 0x52, 0xf3, 0x4c, 0x52, 0x7a, 0xf5, 0x62, 0xca, 0x27, 0x21, 0x4a, 0x66, 0xf6, 0xd6, 0xdb, 0x4f, 0xd2, 0xc1, 0x12, 0xb5, 0x64, 0xb1, 0xd0, 0x10, 0xf7, 0x40, 0x62, 0xee, 0xaa, 0xc0, 0xce, 0xcb, 0x2c, 0x3c, 0x2c, 0x4d, 0x28, 0x8a, 0x57, 0x6b, 0xf6, 0xf0, 0xa0, 0x03, 0x47, 0xc6, 0xa5, 0xb5, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_135 = { .name = "ecdsa_brainpoolp224r1_sha224_135", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_135_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_135_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_135_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 136 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 136 for ECDSA, tcId is 137 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_136_pubkey[] = { 0x2b, 0x92, 0x26, 0x82, 0x08, 0xd5, 0x22, 0x45, 0x0c, 0x42, 0xf3, 0xfc, 0xbd, 0xa4, 0x09, 0xc3, 0xac, 0xe2, 0xa5, 0xf8, 0x57, 0xea, 0x10, 0x61, 0x2c, 0x60, 0x93, 0xf8, 0x31, 0x5e, 0xb2, 0xd4, 0x48, 0x13, 0x4e, 0x71, 0x6b, 0x03, 0x20, 0x78, 0xb6, 0x83, 0x01, 0x62, 0x2e, 0x3c, 0x21, 0x86, 0xab, 0x58, 0x3d, 0x97, 0x6e, 0x76, 0x9f, 0xeb, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_136_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_136 = { .name = "ecdsa_brainpoolp224r1_sha224_136", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_136_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_136_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_136_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 137 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 137 for ECDSA, tcId is 138 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_137_pubkey[] = { 0x4d, 0x4b, 0xd5, 0x69, 0x3d, 0x86, 0xdd, 0x9a, 0x60, 0x16, 0xba, 0x80, 0x6d, 0x80, 0x31, 0xf9, 0x4d, 0xc8, 0xe2, 0xd3, 0x3c, 0x6f, 0x58, 0x71, 0xa0, 0x0b, 0x64, 0x73, 0x2a, 0x46, 0x62, 0xf2, 0x95, 0x24, 0xec, 0xe7, 0x54, 0x82, 0x8b, 0x9d, 0x82, 0x9c, 0x0a, 0x07, 0x24, 0xd9, 0xbd, 0x9d, 0x28, 0x8d, 0x21, 0xf8, 0x7e, 0x3f, 0xb1, 0xfa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_137_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_137 = { .name = "ecdsa_brainpoolp224r1_sha224_137", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_137_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_137_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_137_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 138 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 138 for ECDSA, tcId is 139 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_138_pubkey[] = { 0xbe, 0x0e, 0xfb, 0x48, 0x41, 0xdf, 0x37, 0xab, 0xcd, 0xcf, 0x3f, 0x28, 0xdd, 0xb0, 0xd5, 0x75, 0x1a, 0x92, 0xa0, 0xfe, 0x7a, 0x3e, 0x88, 0xd1, 0xab, 0x02, 0x83, 0x2c, 0xbb, 0x53, 0xcc, 0xd6, 0x6b, 0x9c, 0x0e, 0x42, 0x43, 0x80, 0x69, 0x3d, 0x64, 0x16, 0xfc, 0x2e, 0x1a, 0x3c, 0x79, 0x3a, 0x35, 0x5f, 0x7d, 0x05, 0xf9, 0x63, 0xf4, 0x35, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_138_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0xb8, 0xee, 0xbf, 0x6d, 0x45, 0x5e, 0x57, 0xe0, 0xb6, 0x5d, 0xe0, 0x20, 0x1b, 0xd7, 0xb3, 0x15, 0x45, 0x81, 0x33, 0xae, 0x5e, 0x2c, 0xa1, 0xb0, 0xd7, 0x21, 0xec, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_138 = { .name = "ecdsa_brainpoolp224r1_sha224_138", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_138_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_138_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_138_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 139 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 139 for ECDSA, tcId is 140 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_139_pubkey[] = { 0xbc, 0x02, 0x72, 0xe3, 0x69, 0x3a, 0x05, 0xe7, 0x88, 0x39, 0x2c, 0x88, 0x0f, 0x9d, 0xe9, 0x5c, 0x72, 0xe2, 0x93, 0xfd, 0x1b, 0x13, 0xf1, 0xe2, 0x2a, 0x99, 0x07, 0xa3, 0x69, 0x95, 0x06, 0xe4, 0x59, 0x0f, 0xa9, 0x0c, 0x62, 0x57, 0xb1, 0xc4, 0xe3, 0x63, 0x2c, 0xcc, 0x48, 0x6c, 0xb8, 0x33, 0xcb, 0xbc, 0xbf, 0x21, 0xb4, 0xa2, 0x60, 0x41, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_139_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0xac, 0x9a, 0x90, 0x88, 0x1e, 0x9c, 0x52, 0x04, 0xee, 0x79, 0xc0, 0x1d, 0xf7, 0xda, 0x62, 0xe0, 0xa7, 0x45, 0x63, 0x6f, 0x8b, 0x18, 0x96, 0xe9, 0x51, 0x52, 0xdc, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_139 = { .name = "ecdsa_brainpoolp224r1_sha224_139", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_139_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_139_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_139_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 140 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 140 for ECDSA, tcId is 141 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_140_pubkey[] = { 0xa8, 0x3b, 0xc3, 0xe9, 0x04, 0x3c, 0xb9, 0x38, 0xda, 0xe1, 0x67, 0xbb, 0xea, 0x2f, 0x7d, 0x62, 0x34, 0x86, 0xf4, 0x03, 0x8d, 0xf4, 0x53, 0x12, 0xe8, 0x46, 0x7b, 0xda, 0x73, 0x63, 0xfa, 0x58, 0xaf, 0x36, 0x3a, 0x71, 0x83, 0x5d, 0xa0, 0x94, 0x13, 0xc8, 0x82, 0x27, 0x84, 0x9c, 0x6f, 0x0f, 0xfe, 0x8e, 0x4e, 0x40, 0xaf, 0xf5, 0x10, 0x23, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_140_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_140 = { .name = "ecdsa_brainpoolp224r1_sha224_140", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_140_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_140_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_140_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 141 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 141 for ECDSA, tcId is 142 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_141_pubkey[] = { 0x3b, 0xd0, 0x8a, 0x1c, 0x46, 0x63, 0x85, 0x64, 0x52, 0x1d, 0xed, 0x3f, 0xa7, 0x7c, 0xe9, 0xc9, 0x55, 0x38, 0xe4, 0x97, 0x03, 0xeb, 0xb9, 0xf8, 0xd3, 0x6b, 0xe6, 0xf7, 0x27, 0x6f, 0xfa, 0x12, 0x80, 0x51, 0x67, 0x1f, 0x7e, 0x4c, 0x63, 0xe9, 0xb8, 0x13, 0x2d, 0xe9, 0xf3, 0x38, 0x9c, 0xc5, 0x25, 0xd7, 0x26, 0x82, 0xb6, 0x01, 0x9e, 0xc3, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_141_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_141 = { .name = "ecdsa_brainpoolp224r1_sha224_141", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_141_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_141_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_141_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 142 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 142 for ECDSA, tcId is 143 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_142_pubkey[] = { 0xa3, 0xdb, 0x2b, 0x3e, 0x2c, 0x62, 0xc4, 0x2b, 0xf4, 0xfb, 0x0e, 0x11, 0xc2, 0x90, 0x8f, 0xd1, 0x7f, 0xe8, 0x3d, 0xa3, 0xac, 0x9c, 0x09, 0x80, 0x23, 0x4e, 0xfd, 0xbd, 0x3c, 0xbe, 0xec, 0x40, 0x27, 0xbd, 0x7c, 0x10, 0x9b, 0x27, 0xae, 0x2f, 0x7c, 0xf0, 0x4d, 0xc6, 0x5e, 0xea, 0xf1, 0x3f, 0xaa, 0x22, 0x4d, 0x32, 0xa2, 0x0f, 0x31, 0x63, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_142_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x58, 0xe3, 0x75, 0x18, 0xc6, 0xe4, 0x7a, 0x84, 0xde, 0x10, 0xcc, 0xb2, 0x54, 0xc0, 0x36, 0x93, 0x27, 0x11, 0x45, 0xf1, 0x3e, 0x00, 0xa9, 0x12, 0x37, 0xa4, 0xa5, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_142 = { .name = "ecdsa_brainpoolp224r1_sha224_142", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_142_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_142_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_142_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 143 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 143 for ECDSA, tcId is 144 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_143_pubkey[] = { 0x60, 0x6c, 0xe6, 0xf8, 0xc7, 0x7a, 0xc1, 0x7d, 0x5b, 0x75, 0x15, 0xd5, 0x85, 0x1e, 0xed, 0x15, 0x5e, 0xa1, 0x20, 0xcd, 0x07, 0xca, 0x42, 0x77, 0xb3, 0x5b, 0x8d, 0x36, 0x5f, 0x71, 0x6b, 0x62, 0xae, 0xe9, 0xa8, 0x1a, 0x01, 0x1b, 0xd1, 0xd2, 0xbc, 0xea, 0xf3, 0x7d, 0x5f, 0x3a, 0x61, 0xe5, 0xf7, 0x30, 0x7e, 0x0b, 0xb9, 0xc8, 0x92, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_143_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_143 = { .name = "ecdsa_brainpoolp224r1_sha224_143", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_143_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_143_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_143_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 144 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 144 for ECDSA, tcId is 145 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_144_pubkey[] = { 0x2a, 0xff, 0xbb, 0x82, 0x69, 0xcb, 0x78, 0x83, 0xda, 0xda, 0x33, 0x50, 0x39, 0x45, 0x79, 0x91, 0x2e, 0xf7, 0x56, 0xa8, 0xdf, 0x6b, 0xdd, 0x7d, 0xa3, 0x5d, 0x39, 0x8e, 0x90, 0x21, 0x3d, 0x93, 0x82, 0xb3, 0xd5, 0xfb, 0x9d, 0xde, 0x82, 0x72, 0x4d, 0x38, 0xe5, 0x67, 0x8c, 0x17, 0xe6, 0x10, 0xf4, 0x17, 0xcf, 0xe6, 0xf7, 0xef, 0xcd, 0x91, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_144_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0xb8, 0xee, 0xbf, 0x6d, 0x45, 0x5e, 0x57, 0xe0, 0xb6, 0x5d, 0xe0, 0x20, 0x1b, 0xd7, 0xb3, 0x15, 0x45, 0x81, 0x33, 0xae, 0x5e, 0x2c, 0xa1, 0xb0, 0xd7, 0x21, 0xec, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_144 = { .name = "ecdsa_brainpoolp224r1_sha224_144", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_144_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_144_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_144_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 145 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 145 for ECDSA, tcId is 146 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_145_pubkey[] = { 0x19, 0xcd, 0xd4, 0x4e, 0x2a, 0x33, 0x11, 0x3a, 0x88, 0x45, 0x58, 0xe7, 0xee, 0x0e, 0xfb, 0x41, 0xba, 0xfe, 0x1a, 0xdc, 0xdc, 0xf9, 0x5d, 0xf6, 0xde, 0x6a, 0x25, 0x11, 0x5f, 0x42, 0x8e, 0xe9, 0x98, 0xa3, 0x48, 0x56, 0xf2, 0xac, 0x3f, 0x6f, 0x39, 0xc7, 0x23, 0x7b, 0xf1, 0xf9, 0xde, 0x23, 0x21, 0x75, 0xd7, 0x47, 0xb5, 0xcd, 0x97, 0xfe, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_145_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0xac, 0x9a, 0x90, 0x88, 0x1e, 0x9c, 0x52, 0x04, 0xee, 0x79, 0xc0, 0x1d, 0xf7, 0xda, 0x62, 0xe0, 0xa7, 0x45, 0x63, 0x6f, 0x8b, 0x18, 0x96, 0xe9, 0x51, 0x52, 0xdc, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_145 = { .name = "ecdsa_brainpoolp224r1_sha224_145", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_145_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_145_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_145_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 146 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 146 for ECDSA, tcId is 147 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_146_pubkey[] = { 0xb7, 0x2f, 0x7c, 0x1a, 0x3c, 0x85, 0x62, 0xcb, 0x8d, 0xe9, 0x92, 0x5e, 0xec, 0x04, 0x1c, 0xcc, 0x26, 0x36, 0x49, 0xc6, 0x52, 0x47, 0x62, 0xb9, 0xf4, 0x58, 0x5e, 0xe3, 0x9d, 0xf7, 0x56, 0xda, 0x08, 0xd1, 0x27, 0x4a, 0xd7, 0x2d, 0x8c, 0xac, 0x29, 0x3a, 0xa6, 0x0d, 0x15, 0x0c, 0x77, 0x13, 0x1f, 0x9f, 0xa2, 0x8c, 0xcd, 0xff, 0xdf, 0xa0, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_146_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_146 = { .name = "ecdsa_brainpoolp224r1_sha224_146", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_146_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_146_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_146_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 147 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 147 for ECDSA, tcId is 148 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_147_pubkey[] = { 0x9d, 0x37, 0x03, 0xb3, 0x20, 0x5b, 0x12, 0x3c, 0x90, 0x3a, 0x04, 0x46, 0x97, 0x32, 0x47, 0xc1, 0x6a, 0x88, 0xd1, 0x03, 0xfe, 0xa9, 0xd0, 0x4d, 0xd0, 0x2a, 0x70, 0x2b, 0x65, 0x18, 0x6b, 0x77, 0x7b, 0x57, 0xea, 0xde, 0xe8, 0x15, 0x4c, 0x02, 0xfc, 0xe0, 0xe9, 0x5c, 0x3f, 0x06, 0x14, 0x68, 0x49, 0x9b, 0xac, 0x3d, 0xc6, 0x02, 0x9e, 0x8c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_147_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_147 = { .name = "ecdsa_brainpoolp224r1_sha224_147", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_147_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_147_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_147_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 148 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 148 for ECDSA, tcId is 149 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_148_pubkey[] = { 0x3e, 0xa5, 0x72, 0x50, 0x5a, 0x48, 0xb1, 0xbe, 0xd0, 0x85, 0x95, 0x3d, 0xa7, 0xd4, 0xc9, 0x63, 0xc2, 0xc5, 0xb6, 0xad, 0x99, 0x77, 0x9d, 0x9d, 0x54, 0xba, 0x40, 0x12, 0x94, 0x47, 0x00, 0x74, 0xe0, 0x25, 0x2d, 0xa1, 0x59, 0xa0, 0xc0, 0xd0, 0xb2, 0xf8, 0xd4, 0xc2, 0x42, 0xcb, 0x94, 0xba, 0xb2, 0xc2, 0x02, 0x0c, 0x4b, 0x2d, 0xf4, 0x99, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_148_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xe3, 0x75, 0x18, 0xc6, 0xe4, 0x7a, 0x84, 0xde, 0x10, 0xcc, 0xb2, 0x54, 0xc0, 0x36, 0x93, 0x27, 0x11, 0x45, 0xf1, 0x3e, 0x00, 0xa9, 0x12, 0x37, 0xa4, 0xa5, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_148 = { .name = "ecdsa_brainpoolp224r1_sha224_148", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_148_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_148_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_148_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 149 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 149 for ECDSA, tcId is 150 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_149_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xaa, 0x56, 0xf7, 0x72, 0xc0, 0x72, 0x6f, 0x24, 0xc6, 0xb8, 0x9e, 0x4e, 0xcd, 0xac, 0x24, 0x35, 0x4b, 0x9e, 0x99, 0xca, 0xa3, 0xf6, 0xd3, 0x76, 0x14, 0x02, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_149_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_149 = { .name = "ecdsa_brainpoolp224r1_sha224_149", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_149_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_149_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_149_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 150 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 150 for ECDSA, tcId is 151 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_150_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xaa, 0x56, 0xf7, 0x72, 0xc0, 0x72, 0x6f, 0x24, 0xc6, 0xb8, 0x9e, 0x4e, 0xcd, 0xac, 0x24, 0x35, 0x4b, 0x9e, 0x99, 0xca, 0xa3, 0xf6, 0xd3, 0x76, 0x14, 0x02, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_150_sig[] = { 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_150 = { .name = "ecdsa_brainpoolp224r1_sha224_150", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_150_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_150_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_150_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 151 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 151 for ECDSA, tcId is 152 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_151_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x7f, 0x16, 0xdd, 0xb2, 0xb3, 0x82, 0xf4, 0x17, 0x05, 0x51, 0x77, 0x87, 0x27, 0x04, 0x2b, 0x63, 0x7b, 0x53, 0x68, 0xbd, 0xcd, 0x36, 0x93, 0x22, 0x08, 0xb4, 0xbe, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_151_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_151 = { .name = "ecdsa_brainpoolp224r1_sha224_151", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_151_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_151_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_151_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 152 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 152 for ECDSA, tcId is 153 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_152_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x7f, 0x16, 0xdd, 0xb2, 0xb3, 0x82, 0xf4, 0x17, 0x05, 0x51, 0x77, 0x87, 0x27, 0x04, 0x2b, 0x63, 0x7b, 0x53, 0x68, 0xbd, 0xcd, 0x36, 0x93, 0x22, 0x08, 0xb4, 0xbe, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_152_sig[] = { 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_152 = { .name = "ecdsa_brainpoolp224r1_sha224_152", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_152_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_152_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_152_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 153 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 153 for ECDSA, tcId is 154 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_153_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_153_sig[] = { 0xb9, 0x82, 0xbe, 0xa8, 0x0d, 0x10, 0x81, 0x6b, 0xb4, 0x50, 0xa3, 0xfa, 0xaa, 0xed, 0x4e, 0xd5, 0x4f, 0xb1, 0x97, 0xb3, 0xbf, 0xf9, 0x5a, 0xf2, 0x5d, 0x7d, 0x37, 0x86, 0x9e, 0x6e, 0xa2, 0xe5, 0x87, 0x13, 0xf1, 0x30, 0x4d, 0x29, 0xde, 0xbf, 0x85, 0x59, 0xa7, 0x4a, 0x89, 0xe0, 0x18, 0xba, 0xe2, 0x8b, 0x05, 0x55, 0x6e, 0x54, 0x82, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_153 = { .name = "ecdsa_brainpoolp224r1_sha224_153", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_153_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp224r1_sha224_153_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 154 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 154 for ECDSA, tcId is 155 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_154_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_154_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_154_sig[] = { 0x4d, 0xab, 0xc5, 0xfe, 0x96, 0x2b, 0x5f, 0x8a, 0x66, 0x81, 0xe9, 0x4a, 0x21, 0x65, 0xd9, 0xb6, 0xbe, 0x19, 0x40, 0xf2, 0x0e, 0x27, 0xce, 0xb7, 0x3f, 0xc4, 0xea, 0x7d, 0x74, 0x6e, 0x9b, 0xba, 0x7e, 0xfb, 0x90, 0xfc, 0xec, 0xc2, 0x63, 0xc2, 0x29, 0xa1, 0x6d, 0x80, 0x9d, 0x35, 0x47, 0xc2, 0x8a, 0x26, 0xcd, 0x71, 0xa5, 0x2a, 0xbd, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_154 = { .name = "ecdsa_brainpoolp224r1_sha224_154", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_154_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_154_msg, .msglen = 3, .sig = ecdsa_brainpoolp224r1_sha224_154_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 155 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 155 for ECDSA, tcId is 156 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_155_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_155_sig[] = { 0x95, 0xb1, 0x1e, 0x32, 0x00, 0x07, 0xa2, 0xe0, 0xf8, 0xce, 0x00, 0xf9, 0x05, 0x8c, 0xa9, 0xb9, 0x19, 0xe8, 0xd6, 0xaa, 0xd5, 0x44, 0xa8, 0xf9, 0x80, 0x8b, 0x44, 0xa1, 0x15, 0xa9, 0x62, 0x01, 0x9c, 0x85, 0xa5, 0xb1, 0xfa, 0x74, 0x74, 0x16, 0x2d, 0x03, 0xcd, 0x0e, 0x52, 0x8e, 0x8b, 0x93, 0xbc, 0xc8, 0x49, 0x20, 0xaf, 0x57, 0x9f, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_155 = { .name = "ecdsa_brainpoolp224r1_sha224_155", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_155_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_155_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_155_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 156 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 156 for ECDSA, tcId is 157 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_156_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_156_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_156_sig[] = { 0x9e, 0x4d, 0xab, 0x9e, 0x0b, 0x00, 0x97, 0xe3, 0x65, 0x78, 0x3f, 0xc0, 0x5f, 0x01, 0x0c, 0x16, 0x0d, 0x36, 0x1d, 0xf7, 0x92, 0x5b, 0x0d, 0xdb, 0xdf, 0xec, 0xe8, 0x8b, 0x84, 0x06, 0xa3, 0x65, 0xf0, 0x78, 0xf0, 0x31, 0xe6, 0xfa, 0xd6, 0x51, 0x1d, 0x69, 0xf8, 0xa6, 0x54, 0x83, 0xc1, 0x9a, 0x5a, 0x80, 0x0c, 0x39, 0x49, 0x0f, 0x75, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_156 = { .name = "ecdsa_brainpoolp224r1_sha224_156", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_156_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_156_msg, .msglen = 20, .sig = ecdsa_brainpoolp224r1_sha224_156_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 157 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 157 for ECDSA, tcId is 158 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_157_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_157_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_157_sig[] = { 0x0c, 0x93, 0xfd, 0x7f, 0x6d, 0xd0, 0xb6, 0x97, 0xd5, 0xc2, 0x87, 0xee, 0x61, 0xae, 0xe4, 0xdc, 0xbe, 0xdc, 0xc2, 0x08, 0x85, 0xc1, 0xe6, 0x21, 0x5b, 0x8b, 0x36, 0x08, 0x3b, 0xc7, 0xa1, 0xbe, 0xcc, 0xf1, 0xa8, 0xe8, 0x3a, 0xf2, 0xf5, 0x16, 0x2f, 0xc5, 0x39, 0xa1, 0xd0, 0x62, 0xbd, 0x63, 0x9a, 0x2f, 0xbe, 0xc5, 0x12, 0x90, 0x7a, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_157 = { .name = "ecdsa_brainpoolp224r1_sha224_157", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_157_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_157_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_157_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 158 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 158 for ECDSA, tcId is 159 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_158_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_158_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_158_sig[] = { 0x9e, 0x0b, 0x62, 0x0a, 0x2f, 0x31, 0x3a, 0xda, 0x75, 0x64, 0x63, 0xa2, 0x29, 0x88, 0xaf, 0xb6, 0x57, 0x1b, 0x3b, 0x03, 0x0a, 0x42, 0x85, 0xb1, 0x85, 0xe1, 0xcc, 0x80, 0xc3, 0xeb, 0xa0, 0x4c, 0x42, 0xe6, 0x4d, 0x40, 0x28, 0xac, 0xab, 0xcd, 0xcb, 0x7b, 0x2e, 0xed, 0x1b, 0x3c, 0xfb, 0x56, 0x0b, 0x8d, 0x7d, 0x14, 0xfb, 0x26, 0xac, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_158 = { .name = "ecdsa_brainpoolp224r1_sha224_158", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_158_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_158_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_158_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 159 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 159 for ECDSA, tcId is 160 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_159_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_159_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_159_sig[] = { 0xa3, 0x06, 0xf5, 0x00, 0xda, 0x4f, 0x0a, 0x30, 0x94, 0x64, 0x79, 0x93, 0x6a, 0xaf, 0x9c, 0x63, 0x76, 0x76, 0xb0, 0xf0, 0x2d, 0x20, 0xae, 0x0d, 0x98, 0x1c, 0x25, 0xeb, 0x01, 0x56, 0x47, 0xf2, 0x50, 0x0b, 0xcb, 0xe3, 0x20, 0x4b, 0xdb, 0x80, 0x49, 0x72, 0xb8, 0x41, 0x89, 0x0b, 0x4e, 0x53, 0x19, 0x6c, 0xd8, 0xb1, 0x88, 0x99, 0x31, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_159 = { .name = "ecdsa_brainpoolp224r1_sha224_159", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_159_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_159_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_159_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 160 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 160 for ECDSA, tcId is 161 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_160_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_160_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_160_sig[] = { 0x04, 0xf0, 0x0d, 0xd4, 0x4f, 0xdd, 0x8a, 0xe6, 0xb0, 0x8b, 0x86, 0xcc, 0xbd, 0xd7, 0xd6, 0x15, 0xaa, 0x9e, 0x49, 0x8a, 0x89, 0xb3, 0x50, 0x94, 0xc8, 0xa9, 0xa6, 0xfe, 0x49, 0x61, 0x7a, 0x16, 0x17, 0xc5, 0x6c, 0xe9, 0x0d, 0x41, 0xc5, 0x3e, 0xef, 0x4e, 0x62, 0x8f, 0x24, 0xc0, 0x47, 0xa0, 0x6e, 0x02, 0xc1, 0xf9, 0x21, 0x23, 0x44, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_160 = { .name = "ecdsa_brainpoolp224r1_sha224_160", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_160_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_160_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_160_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 161 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 161 for ECDSA, tcId is 162 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_161_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_161_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_161_sig[] = { 0x12, 0x86, 0xf6, 0xa7, 0x37, 0x5b, 0xf6, 0x80, 0x51, 0xe3, 0x1b, 0x2e, 0x32, 0xb5, 0xf6, 0xc0, 0x98, 0x8c, 0x91, 0x89, 0x79, 0x92, 0x56, 0xe7, 0xce, 0x64, 0xe2, 0x91, 0x52, 0xd3, 0xc1, 0xf9, 0xe7, 0x77, 0xf2, 0x3c, 0x17, 0xcb, 0xc8, 0x32, 0xd0, 0xe5, 0xa8, 0x4b, 0xb6, 0x8b, 0x13, 0xde, 0xbf, 0x39, 0x38, 0x78, 0xd1, 0xa0, 0x64, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_161 = { .name = "ecdsa_brainpoolp224r1_sha224_161", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_161_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_161_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_161_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 162 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 162 for ECDSA, tcId is 163 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_162_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_162_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_162_sig[] = { 0x58, 0x28, 0x25, 0xdf, 0x23, 0x68, 0xdc, 0xb9, 0x2f, 0xbb, 0xa3, 0xfa, 0x64, 0x54, 0xd1, 0x49, 0xd3, 0xb8, 0x60, 0xe3, 0xff, 0x32, 0x6a, 0xfe, 0x36, 0x21, 0x58, 0x13, 0x49, 0x33, 0x4f, 0xc6, 0xa7, 0x04, 0x18, 0xdb, 0xc4, 0x54, 0xda, 0x6a, 0x99, 0x7b, 0xc8, 0x37, 0x62, 0x70, 0xc3, 0xa3, 0x88, 0x63, 0xad, 0xb2, 0xaa, 0x70, 0xbb, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_162 = { .name = "ecdsa_brainpoolp224r1_sha224_162", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_162_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_162_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_162_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 163 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 163 for ECDSA, tcId is 164 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_163_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_163_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_163_sig[] = { 0x5a, 0x11, 0x71, 0x8c, 0x90, 0xa0, 0x24, 0x59, 0x80, 0x0f, 0x10, 0x9e, 0x4e, 0x84, 0x0c, 0xc2, 0x61, 0xd7, 0x82, 0xd6, 0x4e, 0x1c, 0x8a, 0x47, 0x12, 0xdd, 0x90, 0x81, 0xd2, 0x83, 0xb1, 0xc1, 0xe1, 0x10, 0xa4, 0x62, 0x0a, 0x69, 0x6f, 0xdf, 0x74, 0xa9, 0xc7, 0x79, 0x23, 0x52, 0x13, 0x9d, 0x54, 0xcc, 0xed, 0x8c, 0x97, 0x3d, 0x9e, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_163 = { .name = "ecdsa_brainpoolp224r1_sha224_163", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_163_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_163_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_163_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 164 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 164 for ECDSA, tcId is 165 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_164_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_164_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_164_sig[] = { 0xd5, 0x77, 0xf2, 0x3e, 0x59, 0x24, 0x14, 0xe3, 0x51, 0xb3, 0x92, 0x8a, 0x59, 0x3c, 0x5d, 0x2f, 0x89, 0xf0, 0xc7, 0x2d, 0xf5, 0x13, 0xbf, 0xbc, 0x65, 0x35, 0xba, 0xbb, 0x1b, 0xb0, 0x9d, 0xd2, 0x35, 0x12, 0x4a, 0x14, 0xe0, 0x24, 0x69, 0x46, 0xf2, 0x80, 0x45, 0x0f, 0x15, 0x57, 0x69, 0x12, 0xae, 0xb7, 0x35, 0xb7, 0x3c, 0xe8, 0x28, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_164 = { .name = "ecdsa_brainpoolp224r1_sha224_164", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_164_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_164_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_164_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 165 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 165 for ECDSA, tcId is 166 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_165_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_165_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_165_sig[] = { 0xaf, 0x8f, 0x83, 0x6e, 0x63, 0x99, 0x5d, 0xc7, 0x15, 0xa4, 0xd3, 0xc6, 0x84, 0x2c, 0x4e, 0x6c, 0x6c, 0xf4, 0x58, 0x6d, 0xf7, 0x6e, 0x46, 0x59, 0xd8, 0x09, 0xee, 0xc9, 0x85, 0xbe, 0xfd, 0x0b, 0x1b, 0xb8, 0xae, 0x18, 0x2c, 0x05, 0xd0, 0x71, 0xda, 0xd1, 0x80, 0x22, 0x4d, 0x22, 0x53, 0x3d, 0xce, 0x73, 0x7d, 0x4d, 0xda, 0x74, 0xd5, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_165 = { .name = "ecdsa_brainpoolp224r1_sha224_165", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_165_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_165_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_165_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 166 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 166 for ECDSA, tcId is 167 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_166_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_166_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_166_sig[] = { 0x15, 0x6a, 0xa7, 0x86, 0x92, 0xc7, 0x8e, 0x97, 0x69, 0xab, 0xa7, 0x28, 0xc9, 0xee, 0xa7, 0x88, 0x35, 0xb5, 0x50, 0x00, 0x90, 0x1b, 0xa5, 0x07, 0x94, 0xa3, 0x3e, 0xfc, 0xb9, 0x78, 0x5d, 0xf4, 0x0a, 0x22, 0x13, 0x37, 0x74, 0x81, 0x31, 0x1b, 0x1a, 0x81, 0xd3, 0x10, 0xe7, 0x63, 0x41, 0x92, 0x7b, 0x8f, 0xba, 0x0d, 0x6e, 0x3e, 0xc7, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_166 = { .name = "ecdsa_brainpoolp224r1_sha224_166", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_166_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_166_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_166_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 167 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 167 for ECDSA, tcId is 168 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_167_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_167_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_167_sig[] = { 0x92, 0x74, 0xd4, 0x6a, 0x7f, 0xfa, 0x12, 0x99, 0xa3, 0x72, 0xe8, 0x21, 0xbd, 0x89, 0x72, 0x8d, 0xe8, 0x3e, 0xf8, 0x7c, 0x46, 0xaf, 0x67, 0x04, 0x3a, 0x63, 0x4b, 0x02, 0x19, 0xe4, 0xbb, 0xec, 0x8b, 0x03, 0xfa, 0x77, 0x2a, 0x36, 0x22, 0xbf, 0x48, 0x93, 0xe5, 0x81, 0xef, 0xad, 0xf9, 0xd2, 0x0b, 0xd6, 0x08, 0x06, 0xd8, 0x26, 0x76, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_167 = { .name = "ecdsa_brainpoolp224r1_sha224_167", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_167_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_167_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_167_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 168 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 168 for ECDSA, tcId is 169 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_168_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_168_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_168_sig[] = { 0xcf, 0x6a, 0x9c, 0xba, 0x28, 0x5e, 0x56, 0x49, 0x3c, 0xbb, 0x46, 0x2b, 0x7b, 0x16, 0x12, 0x8a, 0x0c, 0xf1, 0xc7, 0x05, 0x84, 0x47, 0x94, 0x5d, 0xae, 0xf3, 0x41, 0x49, 0x29, 0xa6, 0x87, 0x83, 0x9e, 0x8e, 0xe0, 0x3c, 0x53, 0x72, 0xa1, 0x13, 0x73, 0x3c, 0x08, 0x1f, 0x41, 0x3d, 0x1f, 0x94, 0x05, 0xdd, 0xfe, 0x47, 0xe1, 0x8f, 0xcc, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_168 = { .name = "ecdsa_brainpoolp224r1_sha224_168", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_168_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_168_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_168_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 169 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 169 for ECDSA, tcId is 170 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_169_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_169_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_169_sig[] = { 0x59, 0x2e, 0x54, 0xa0, 0xea, 0x95, 0x0a, 0xc7, 0xcd, 0x83, 0x0f, 0x56, 0xc7, 0x95, 0x4a, 0x76, 0x9f, 0x81, 0xaa, 0x55, 0xe8, 0xe1, 0x01, 0xbe, 0xe1, 0x9b, 0x3b, 0x27, 0x48, 0x37, 0x5f, 0xdd, 0x4d, 0x90, 0x14, 0xc9, 0xb6, 0x0b, 0x63, 0xc7, 0x0b, 0xfe, 0x98, 0xc8, 0x44, 0xbe, 0x66, 0x8f, 0x2d, 0x3a, 0x2e, 0x25, 0x92, 0x62, 0xb9, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_169 = { .name = "ecdsa_brainpoolp224r1_sha224_169", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_169_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_169_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_169_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 170 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 170 for ECDSA, tcId is 171 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_170_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_170_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_170_sig[] = { 0x1e, 0xc0, 0xef, 0x4d, 0x5b, 0xed, 0xaf, 0xe5, 0x08, 0x1f, 0x7a, 0xda, 0xe3, 0x2d, 0xb4, 0xd0, 0xaa, 0x94, 0x6f, 0x13, 0x0a, 0xce, 0xda, 0xba, 0xe2, 0x6d, 0x90, 0xdc, 0x62, 0x7e, 0x81, 0xd7, 0xeb, 0x35, 0x8f, 0x59, 0xe8, 0xa8, 0x63, 0x05, 0x27, 0xd4, 0xe8, 0x94, 0x6d, 0x1c, 0xad, 0x21, 0x96, 0x76, 0x18, 0x36, 0xd9, 0x7d, 0x95, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_170 = { .name = "ecdsa_brainpoolp224r1_sha224_170", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_170_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_170_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_170_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 171 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 171 for ECDSA, tcId is 172 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_171_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_171_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_171_sig[] = { 0x5f, 0xaf, 0x03, 0x5e, 0xd5, 0x77, 0x4e, 0xeb, 0x0a, 0xdc, 0x18, 0x7f, 0xf4, 0x85, 0xa8, 0x46, 0xaa, 0x2a, 0xbc, 0xf1, 0xe7, 0xf8, 0x59, 0xb1, 0xb9, 0x10, 0xf2, 0x5c, 0x8b, 0xf1, 0x2a, 0x1c, 0x00, 0xb1, 0x8f, 0x66, 0xc2, 0x28, 0x35, 0x2d, 0xe4, 0x9c, 0xc4, 0xfb, 0x82, 0x7a, 0x09, 0xfc, 0x86, 0xf7, 0x22, 0xce, 0x56, 0x1b, 0xa5, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_171 = { .name = "ecdsa_brainpoolp224r1_sha224_171", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_171_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_171_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_171_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 172 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 172 for ECDSA, tcId is 173 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_172_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_172_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_172_sig[] = { 0x52, 0xb2, 0xd3, 0x69, 0xf1, 0x8d, 0xf5, 0x63, 0x72, 0xaf, 0xe7, 0xfe, 0xb3, 0x84, 0x13, 0xf2, 0x32, 0xb4, 0xfb, 0x9c, 0xa1, 0x6c, 0x6f, 0x6f, 0xed, 0xc6, 0x41, 0x89, 0xc1, 0xb1, 0x9f, 0x13, 0x77, 0x73, 0xef, 0x32, 0x01, 0xcd, 0x34, 0x1c, 0x38, 0x1e, 0x4f, 0x94, 0x49, 0xcc, 0x0e, 0x6c, 0x68, 0x8a, 0x35, 0x1d, 0x7a, 0x60, 0x70, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_172 = { .name = "ecdsa_brainpoolp224r1_sha224_172", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_172_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_172_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_172_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 173 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 173 for ECDSA, tcId is 174 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_173_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_173_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_173_sig[] = { 0x5b, 0x88, 0x9d, 0x28, 0x8a, 0xaa, 0x81, 0x67, 0x4d, 0x32, 0x00, 0x6e, 0x81, 0x27, 0x9c, 0x57, 0xed, 0x56, 0xa0, 0x35, 0xc8, 0x78, 0xd3, 0xe2, 0xb6, 0x87, 0xbe, 0xc3, 0x0d, 0xa6, 0x21, 0xd5, 0xfa, 0x98, 0x13, 0x26, 0x3c, 0x7f, 0x58, 0xf8, 0xe0, 0x15, 0x5d, 0x6f, 0x0c, 0x33, 0x0a, 0x56, 0xc5, 0x94, 0xde, 0xfc, 0x2e, 0xbd, 0xf0, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_173 = { .name = "ecdsa_brainpoolp224r1_sha224_173", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_173_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_173_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_173_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 174 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 174 for ECDSA, tcId is 175 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_174_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_174_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_174_sig[] = { 0xb6, 0xf8, 0xa8, 0x01, 0x87, 0x18, 0x0a, 0xad, 0x8a, 0x5c, 0x89, 0x6b, 0xe2, 0x14, 0x31, 0x46, 0x01, 0xa1, 0x58, 0x5f, 0x2c, 0xcb, 0x28, 0xbc, 0x7e, 0x8e, 0x8f, 0x01, 0xa9, 0x0c, 0x68, 0xc1, 0x4a, 0x67, 0xf5, 0xd5, 0x9c, 0xec, 0x70, 0xdc, 0x0f, 0x47, 0x3b, 0x5c, 0x14, 0x01, 0x3b, 0x05, 0x6d, 0x12, 0xcb, 0xc0, 0xf7, 0x15, 0x3b, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_174 = { .name = "ecdsa_brainpoolp224r1_sha224_174", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_174_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_174_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_174_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 175 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 175 for ECDSA, tcId is 176 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_175_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_175_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_175_sig[] = { 0x16, 0xd4, 0xa8, 0x50, 0x9c, 0x9b, 0xce, 0x2c, 0x73, 0xf8, 0xdb, 0x4b, 0x73, 0x25, 0x7c, 0x7e, 0x33, 0xf4, 0x17, 0x26, 0xc2, 0x5c, 0x4c, 0x64, 0x54, 0x6b, 0x1d, 0xcc, 0x79, 0xba, 0x35, 0xa9, 0x6d, 0x23, 0x45, 0xad, 0x19, 0x4f, 0x39, 0x10, 0x91, 0x20, 0x9d, 0xfc, 0xce, 0xd7, 0x99, 0x17, 0xe0, 0x4d, 0xf3, 0xb6, 0x5f, 0x44, 0xd1, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_175 = { .name = "ecdsa_brainpoolp224r1_sha224_175", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_175_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_175_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_175_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 176 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 176 for ECDSA, tcId is 177 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_176_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_176_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_176_sig[] = { 0x5d, 0xa1, 0x56, 0x97, 0xbb, 0xe4, 0xeb, 0xa7, 0x70, 0x7e, 0x34, 0x9f, 0xf3, 0x23, 0x9d, 0x50, 0x84, 0x55, 0x37, 0x81, 0x13, 0xd2, 0x4e, 0x7e, 0x1d, 0x7a, 0x02, 0x0c, 0x45, 0xbe, 0x44, 0xa5, 0x70, 0xfb, 0x53, 0x0c, 0x49, 0xd7, 0x59, 0x71, 0x2c, 0x10, 0x04, 0x13, 0x45, 0xf7, 0xc0, 0x89, 0x0a, 0x79, 0x46, 0xd9, 0x1d, 0x32, 0xba, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_176 = { .name = "ecdsa_brainpoolp224r1_sha224_176", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_176_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_176_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_176_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 177 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 177 for ECDSA, tcId is 178 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_177_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_177_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_177_sig[] = { 0xc1, 0xf8, 0xd4, 0x34, 0x79, 0xc4, 0xf2, 0x9b, 0x19, 0xb9, 0xb2, 0xc7, 0xb5, 0x74, 0x70, 0x10, 0x49, 0x14, 0x40, 0x74, 0x6c, 0xc8, 0x00, 0xd5, 0xbe, 0x89, 0xb0, 0x11, 0x81, 0x54, 0x34, 0x8b, 0x7c, 0x37, 0xf0, 0x50, 0x4d, 0xca, 0x2b, 0x11, 0x59, 0x41, 0xf7, 0xba, 0x58, 0x57, 0x32, 0x1e, 0xae, 0x8f, 0x64, 0x17, 0x5b, 0xe9, 0xcb, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_177 = { .name = "ecdsa_brainpoolp224r1_sha224_177", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_177_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_177_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_177_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 178 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 178 for ECDSA, tcId is 179 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_178_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_178_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_178_sig[] = { 0x87, 0x15, 0x81, 0xb5, 0x00, 0x92, 0x57, 0x82, 0x11, 0x16, 0x0e, 0x47, 0x0d, 0xdd, 0xaa, 0x64, 0x0d, 0x5a, 0x2d, 0x9e, 0x22, 0x4f, 0xaf, 0xca, 0x87, 0x91, 0x06, 0xd4, 0xbe, 0x70, 0xfd, 0x5c, 0x75, 0x91, 0xa3, 0x13, 0x0f, 0x5c, 0x2a, 0xf5, 0x36, 0xff, 0xff, 0x8e, 0x72, 0xc1, 0x62, 0x51, 0x74, 0x4c, 0x97, 0x96, 0x8f, 0x92, 0x17, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_178 = { .name = "ecdsa_brainpoolp224r1_sha224_178", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_178_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_178_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_178_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 179 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 179 for ECDSA, tcId is 180 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_179_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_179_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_179_sig[] = { 0xa9, 0x87, 0x35, 0xe5, 0x65, 0x90, 0x22, 0xb0, 0x27, 0x4a, 0xe6, 0xf7, 0xbc, 0xb1, 0x64, 0x6e, 0x9e, 0x6b, 0x4b, 0x88, 0x40, 0x8d, 0xb3, 0xf9, 0x26, 0xec, 0xcc, 0x89, 0xa9, 0x23, 0xff, 0x5e, 0x15, 0xe0, 0xd7, 0x64, 0xcd, 0x5c, 0xef, 0xff, 0xc5, 0xc4, 0x0c, 0x08, 0x2c, 0x6e, 0xb7, 0x72, 0xdb, 0x76, 0x62, 0xfb, 0x1b, 0x82, 0xd5, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_179 = { .name = "ecdsa_brainpoolp224r1_sha224_179", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_179_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_179_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_179_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 180 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 180 for ECDSA, tcId is 181 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_180_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_180_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_180_sig[] = { 0xa9, 0x6b, 0x5c, 0x24, 0xe3, 0x3d, 0x59, 0x00, 0x4c, 0xf3, 0x1a, 0xae, 0xf4, 0x4a, 0xe4, 0xc7, 0x57, 0x9e, 0x0b, 0x5b, 0x21, 0x9a, 0xb2, 0x5d, 0x7f, 0x1c, 0x69, 0x0a, 0x88, 0xc0, 0x13, 0x78, 0x84, 0x7c, 0x38, 0x41, 0xf4, 0x9e, 0xc1, 0x48, 0x40, 0xe2, 0xd0, 0x23, 0xd7, 0xb9, 0x12, 0xb5, 0x03, 0xf2, 0xd9, 0x8a, 0x92, 0x3b, 0xe8, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_180 = { .name = "ecdsa_brainpoolp224r1_sha224_180", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_180_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_180_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_180_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 181 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 181 for ECDSA, tcId is 182 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_181_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_181_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_181_sig[] = { 0x6b, 0x57, 0xb7, 0x3a, 0xb7, 0xc3, 0x9b, 0x56, 0x98, 0x54, 0x9d, 0xd5, 0xcd, 0xd4, 0xdf, 0x73, 0x98, 0x18, 0x1b, 0x55, 0x6e, 0x7c, 0x72, 0x83, 0x37, 0x5e, 0x3f, 0x86, 0x9f, 0x59, 0xd1, 0x86, 0x3d, 0x6f, 0xd6, 0x01, 0x32, 0x47, 0xd4, 0xe6, 0x78, 0xa1, 0xc4, 0xfc, 0x1d, 0x89, 0x6d, 0xc6, 0x61, 0xfa, 0x31, 0xfb, 0x73, 0xc3, 0x3f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_181 = { .name = "ecdsa_brainpoolp224r1_sha224_181", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_181_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_181_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_181_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 182 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 182 for ECDSA, tcId is 183 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_182_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_182_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_182_sig[] = { 0x2f, 0x85, 0xaf, 0x7e, 0x53, 0x5f, 0x66, 0xcf, 0xc9, 0xa9, 0xda, 0xb7, 0xbe, 0x78, 0x16, 0x31, 0xdd, 0x62, 0x2b, 0xe4, 0x35, 0xd7, 0x64, 0x2b, 0x5b, 0x51, 0xfc, 0xc7, 0x61, 0x93, 0x01, 0xc2, 0x1c, 0x93, 0x42, 0x55, 0xdf, 0x93, 0xee, 0xdd, 0x5b, 0x45, 0x9c, 0x8d, 0xd2, 0x80, 0xfd, 0xd0, 0x7e, 0xe6, 0x56, 0xa7, 0x14, 0x7d, 0x4d, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_182 = { .name = "ecdsa_brainpoolp224r1_sha224_182", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_182_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_182_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_182_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 183 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 183 for ECDSA, tcId is 184 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_183_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_183_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_183_sig[] = { 0x98, 0xa8, 0xa9, 0x8f, 0xcc, 0x82, 0xf8, 0x04, 0xa8, 0x23, 0xcc, 0x91, 0x07, 0x24, 0x37, 0xcf, 0xd8, 0x83, 0x22, 0xb8, 0x67, 0x16, 0x86, 0x51, 0x7f, 0x19, 0x78, 0xab, 0x6a, 0xc3, 0xe8, 0x37, 0x76, 0x68, 0x5b, 0xce, 0xce, 0xfe, 0xba, 0xe4, 0x73, 0xac, 0x07, 0xc7, 0x71, 0xe8, 0x3b, 0x0c, 0x5a, 0x55, 0x7e, 0xfe, 0x83, 0x50, 0x20, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_183 = { .name = "ecdsa_brainpoolp224r1_sha224_183", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_183_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_183_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_183_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 184 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 184 for ECDSA, tcId is 185 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_184_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_184_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_184_sig[] = { 0x69, 0x9c, 0x40, 0xb7, 0x35, 0x23, 0x6b, 0xd9, 0x23, 0x97, 0x70, 0xa5, 0xde, 0x2c, 0x1a, 0x75, 0x54, 0x63, 0x1e, 0x6b, 0xa6, 0xef, 0x51, 0x2f, 0x85, 0x53, 0xd0, 0x2f, 0x0b, 0xca, 0x9c, 0x51, 0x6c, 0xa4, 0x05, 0xff, 0xc9, 0xae, 0x2d, 0xce, 0xe1, 0x2a, 0xd7, 0xd9, 0x6b, 0x58, 0x6b, 0xfd, 0xc8, 0x18, 0xa3, 0xd4, 0x5d, 0xcf, 0xcf, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_184 = { .name = "ecdsa_brainpoolp224r1_sha224_184", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_184_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_184_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_184_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 185 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 185 for ECDSA, tcId is 186 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_185_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_185_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_185_sig[] = { 0x76, 0x8a, 0x81, 0x9d, 0x39, 0x43, 0xfc, 0x30, 0x78, 0x1a, 0xae, 0xf2, 0x8f, 0xa1, 0x20, 0x18, 0x4c, 0x72, 0x12, 0xd0, 0x91, 0x1f, 0xe0, 0x3d, 0xfc, 0x8c, 0x62, 0x60, 0x51, 0xb3, 0xdb, 0x0e, 0x1c, 0x3e, 0x93, 0x91, 0x49, 0xcc, 0xbf, 0x9d, 0x46, 0x19, 0xbb, 0xbf, 0xf0, 0xe2, 0xe1, 0x74, 0x11, 0x0f, 0x6e, 0xce, 0x43, 0x13, 0xb4, 0xca, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_185 = { .name = "ecdsa_brainpoolp224r1_sha224_185", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_185_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_185_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_185_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 186 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 186 for ECDSA, tcId is 187 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_186_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_186_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_186_sig[] = { 0x58, 0xfc, 0xc0, 0xff, 0xb1, 0x25, 0xc2, 0x3c, 0x43, 0x57, 0x35, 0xb7, 0xc3, 0x90, 0x69, 0x20, 0x37, 0xc0, 0x3a, 0x67, 0x65, 0xef, 0x7b, 0x53, 0x65, 0xa1, 0x7d, 0xd4, 0x95, 0x18, 0xd2, 0x9d, 0x78, 0xed, 0xa9, 0xcb, 0x25, 0x03, 0xfd, 0xe3, 0x8d, 0x3b, 0x73, 0xd6, 0xfb, 0x90, 0xa0, 0xd4, 0x0a, 0x23, 0xf0, 0xec, 0x26, 0x16, 0x69, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_186 = { .name = "ecdsa_brainpoolp224r1_sha224_186", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_186_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_186_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_186_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 187 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 187 for ECDSA, tcId is 188 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_187_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_187_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_187_sig[] = { 0xd1, 0x93, 0xee, 0x0a, 0x3d, 0x42, 0xa2, 0x3a, 0xf0, 0x18, 0xab, 0x90, 0x89, 0x6b, 0x35, 0xd5, 0xc2, 0x50, 0x18, 0x7b, 0xf9, 0xfb, 0x1c, 0xca, 0xc3, 0x64, 0x74, 0x8c, 0xa0, 0x92, 0x2a, 0xcc, 0xc7, 0x56, 0x2d, 0x01, 0x71, 0x09, 0xe9, 0x1d, 0x2f, 0x83, 0xe4, 0x8b, 0xfa, 0x3c, 0x1f, 0xa2, 0xee, 0x04, 0xd8, 0x46, 0x9b, 0xe9, 0x40, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_187 = { .name = "ecdsa_brainpoolp224r1_sha224_187", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_187_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_187_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_187_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 188 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 188 for ECDSA, tcId is 189 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_188_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_188_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_188_sig[] = { 0x09, 0x74, 0x52, 0x1d, 0x7c, 0xe7, 0x53, 0xde, 0xa5, 0xd1, 0x15, 0x6f, 0xb4, 0xd9, 0x92, 0xcc, 0x61, 0x40, 0x79, 0xeb, 0x86, 0x77, 0xab, 0x36, 0xa4, 0x07, 0x8a, 0x4f, 0x83, 0x74, 0xdf, 0xba, 0xe8, 0xd0, 0x42, 0x9a, 0x6f, 0xba, 0x60, 0xfb, 0xb5, 0xd2, 0xfd, 0x55, 0x98, 0x56, 0xa5, 0xd7, 0x39, 0xf3, 0x9a, 0xa2, 0xbf, 0x1d, 0xa1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_188 = { .name = "ecdsa_brainpoolp224r1_sha224_188", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_188_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_188_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_188_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 189 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 189 for ECDSA, tcId is 190 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_189_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_189_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_189_sig[] = { 0x62, 0x5f, 0x47, 0x3c, 0xa2, 0xd1, 0x5b, 0xb7, 0xf1, 0x2d, 0xa1, 0x23, 0x5f, 0x90, 0xad, 0xcb, 0x69, 0xed, 0x48, 0x18, 0x74, 0x6c, 0xae, 0x2e, 0x2d, 0xb2, 0x6f, 0xe6, 0x4a, 0xb8, 0x17, 0xf6, 0xf1, 0xb9, 0xc8, 0xc4, 0x9f, 0x68, 0x1b, 0xed, 0x15, 0x68, 0x34, 0x6f, 0x53, 0xec, 0xbf, 0xac, 0xfd, 0x52, 0xd4, 0x5e, 0x27, 0xab, 0xcb, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_189 = { .name = "ecdsa_brainpoolp224r1_sha224_189", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_189_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_189_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_189_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 190 in file ecdsa_brainpoolP224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 190 for ECDSA, tcId is 1 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_190_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_190_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x13, 0x9c, 0x78, 0x24, 0x3a, 0x6e, 0x36, 0xe1, 0x24, 0xd5, 0xf5, 0xe1, 0x4b, 0x4c, 0xb8, 0x75, 0x4a, 0xbd, 0xf2, 0x0f, 0xf1, 0xa5, 0x01, 0xd5, 0x66, 0x6a, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_190 = { .name = "ecdsa_brainpoolp224r1_sha224_190", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_190_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_190_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_190_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 191 for ECDSA, tcId is 2 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_191_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_191_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_191 = { .name = "ecdsa_brainpoolp224r1_sha224_191", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_191_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_191_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_191_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 192 for ECDSA, tcId is 3 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_192_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_192_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_192 = { .name = "ecdsa_brainpoolp224r1_sha224_192", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_192_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_192_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_192_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 193 for ECDSA, tcId is 4 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_193_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_193_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_193 = { .name = "ecdsa_brainpoolp224r1_sha224_193", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_193_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_193_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_193_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 194 for ECDSA, tcId is 5 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_194_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_194_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_194 = { .name = "ecdsa_brainpoolp224r1_sha224_194", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_194_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_194_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_194_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 195 for ECDSA, tcId is 6 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_195_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_195_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_195 = { .name = "ecdsa_brainpoolp224r1_sha224_195", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_195_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_195_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_195_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 196 for ECDSA, tcId is 69 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_196_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_196_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_196 = { .name = "ecdsa_brainpoolp224r1_sha224_196", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_196_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_196_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_196_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 197 for ECDSA, tcId is 70 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_197_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_197_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_197 = { .name = "ecdsa_brainpoolp224r1_sha224_197", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_197_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_197_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_197_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 198 for ECDSA, tcId is 71 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_198_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_198_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_198 = { .name = "ecdsa_brainpoolp224r1_sha224_198", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_198_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_198_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_198_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 199 for ECDSA, tcId is 72 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_199_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_199_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_199 = { .name = "ecdsa_brainpoolp224r1_sha224_199", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_199_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_199_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_199_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 200 for ECDSA, tcId is 94 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_200_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_200_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_200 = { .name = "ecdsa_brainpoolp224r1_sha224_200", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_200_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_200_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_200_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 201 for ECDSA, tcId is 95 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_201_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_201_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_201 = { .name = "ecdsa_brainpoolp224r1_sha224_201", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_201_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_201_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_201_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 202 for ECDSA, tcId is 96 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_202_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_202_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_202 = { .name = "ecdsa_brainpoolp224r1_sha224_202", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_202_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_202_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_202_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 203 for ECDSA, tcId is 97 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_203_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_203_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_203 = { .name = "ecdsa_brainpoolp224r1_sha224_203", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_203_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_203_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_203_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 204 for ECDSA, tcId is 99 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_204_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_204_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x05, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_204 = { .name = "ecdsa_brainpoolp224r1_sha224_204", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_204_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_204_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_204_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 205 for ECDSA, tcId is 100 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_205_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_205_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_205 = { .name = "ecdsa_brainpoolp224r1_sha224_205", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_205_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_205_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_205_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 206 for ECDSA, tcId is 115 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_206_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_206_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_206 = { .name = "ecdsa_brainpoolp224r1_sha224_206", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_206_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_206_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_206_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 207 for ECDSA, tcId is 116 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_207_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_207_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_207 = { .name = "ecdsa_brainpoolp224r1_sha224_207", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_207_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_207_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_207_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 208 for ECDSA, tcId is 119 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_208_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_208_sig[] = { 0x02, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_208 = { .name = "ecdsa_brainpoolp224r1_sha224_208", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_208_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_208_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_208_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 209 for ECDSA, tcId is 120 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_209_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_209_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x02, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_209 = { .name = "ecdsa_brainpoolp224r1_sha224_209", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_209_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_209_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_209_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 210 for ECDSA, tcId is 121 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_210_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_210_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0x53, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_210 = { .name = "ecdsa_brainpoolp224r1_sha224_210", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_210_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_210_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_210_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 211 for ECDSA, tcId is 122 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_211_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_211_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x90, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_211 = { .name = "ecdsa_brainpoolp224r1_sha224_211", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_211_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_211_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_211_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 212 for ECDSA, tcId is 123 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_212_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_212_sig[] = { 0x00, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_212 = { .name = "ecdsa_brainpoolp224r1_sha224_212", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_212_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_212_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_212_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 213 for ECDSA, tcId is 124 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_213_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_213_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_213 = { .name = "ecdsa_brainpoolp224r1_sha224_213", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_213_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_213_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_213_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 214 for ECDSA, tcId is 125 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_214_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_214_sig[] = { 0x00, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_214 = { .name = "ecdsa_brainpoolp224r1_sha224_214", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_214_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_214_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_214_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 215 for ECDSA, tcId is 126 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_215_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_215_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_215 = { .name = "ecdsa_brainpoolp224r1_sha224_215", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_215_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_215_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_215_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_brainpoolP224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 216 for ECDSA, tcId is 129 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_216_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_216_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_216 = { .name = "ecdsa_brainpoolp224r1_sha224_216", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_216_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_216_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_216_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 217 for ECDSA, tcId is 130 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_217_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_217_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_217 = { .name = "ecdsa_brainpoolp224r1_sha224_217", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_217_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_217_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_217_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 218 for ECDSA, tcId is 131 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_218_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_218_sig[] = { 0x01, 0xa3, 0x29, 0xe1, 0x41, 0x8c, 0x0a, 0xca, 0x9d, 0xaf, 0xf7, 0x53, 0xa4, 0x0f, 0x22, 0xdc, 0xdb, 0x66, 0x98, 0x43, 0xe6, 0x60, 0x41, 0xd1, 0x03, 0xaa, 0x30, 0xf5, 0x72, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_218 = { .name = "ecdsa_brainpoolp224r1_sha224_218", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_218_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_218_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_218_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 219 for ECDSA, tcId is 132 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_219_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_219_sig[] = { 0xf3, 0xa7, 0x77, 0xed, 0x3f, 0x83, 0xfd, 0x91, 0x5b, 0xc6, 0xf3, 0x59, 0x23, 0x80, 0xe5, 0xa9, 0xc4, 0x6a, 0xcb, 0x4f, 0x84, 0x84, 0x57, 0xbc, 0x5e, 0xe1, 0xce, 0x34, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_219 = { .name = "ecdsa_brainpoolp224r1_sha224_219", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_219_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_219_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_219_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 220 for ECDSA, tcId is 133 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_220_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_220_sig[] = { 0x34, 0x97, 0x53, 0x68, 0x9a, 0x38, 0x9b, 0xe8, 0x7a, 0x20, 0xdc, 0x81, 0x66, 0xae, 0x1e, 0xbd, 0x6a, 0x7e, 0x78, 0x65, 0x0d, 0x9c, 0xeb, 0x9f, 0xfb, 0x76, 0x9e, 0x2d, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_220 = { .name = "ecdsa_brainpoolp224r1_sha224_220", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_220_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_220_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_220_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 221 for ECDSA, tcId is 134 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_221_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_221_sig[] = { 0x0c, 0x58, 0x88, 0x12, 0xc0, 0x7c, 0x02, 0x6e, 0xa4, 0x39, 0x0c, 0xa6, 0xdc, 0x7f, 0x1a, 0x56, 0x3b, 0x95, 0x34, 0xb0, 0x7b, 0x7b, 0xa8, 0x43, 0xa1, 0x1e, 0x31, 0xcc, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_221 = { .name = "ecdsa_brainpoolp224r1_sha224_221", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_221_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_221_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_221_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 222 for ECDSA, tcId is 135 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_222_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_222_sig[] = { 0xfe, 0x5c, 0xd6, 0x1e, 0xbe, 0x73, 0xf5, 0x35, 0x62, 0x50, 0x08, 0xac, 0x5b, 0xf0, 0xdd, 0x23, 0x24, 0x99, 0x67, 0xbc, 0x19, 0x9f, 0xbe, 0x2e, 0xfc, 0x55, 0xcf, 0x0a, 0x8e, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_222 = { .name = "ecdsa_brainpoolp224r1_sha224_222", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_222_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_222_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_222_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 223 for ECDSA, tcId is 136 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_223_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_223_sig[] = { 0x01, 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_223 = { .name = "ecdsa_brainpoolp224r1_sha224_223", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_223_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_223_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_223_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 224 for ECDSA, tcId is 137 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_224_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_224_sig[] = { 0x34, 0x97, 0x53, 0x68, 0x9a, 0x38, 0x9b, 0xe8, 0x7a, 0x20, 0xdc, 0x81, 0x66, 0xae, 0x1e, 0xbd, 0x6a, 0x7e, 0x78, 0x65, 0x0d, 0x9c, 0xeb, 0x9f, 0xfb, 0x76, 0x9e, 0x2d, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_224 = { .name = "ecdsa_brainpoolp224r1_sha224_224", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_224_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_224_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_224_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 225 for ECDSA, tcId is 138 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_225_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_225_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x01, 0x9b, 0xe5, 0xf1, 0x30, 0x12, 0x18, 0x96, 0x2b, 0x2f, 0x5a, 0x6a, 0x69, 0xa0, 0x55, 0x3e, 0xbc, 0x57, 0x6f, 0x86, 0x86, 0xea, 0x18, 0x77, 0x71, 0xe4, 0xe4, 0xe4, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_225 = { .name = "ecdsa_brainpoolp224r1_sha224_225", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_225_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_225_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_225_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 226 for ECDSA, tcId is 139 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_226_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_226_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xec, 0x63, 0x87, 0xdb, 0xc5, 0x91, 0xc9, 0x1e, 0xdb, 0x2a, 0x0a, 0x1e, 0xb4, 0xb3, 0x47, 0x8a, 0xb5, 0x42, 0x0d, 0xf0, 0x0e, 0x5a, 0xfe, 0x2a, 0x99, 0x95, 0xbd, 0x71, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_226 = { .name = "ecdsa_brainpoolp224r1_sha224_226", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_226_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_226_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_226_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 227 for ECDSA, tcId is 140 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_227_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_227_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x3b, 0xdb, 0x43, 0x7a, 0x14, 0x2a, 0xd0, 0x5a, 0xfa, 0xbd, 0xc5, 0xbb, 0xd5, 0x7b, 0xbc, 0xdc, 0x79, 0xa7, 0x35, 0xc4, 0x83, 0xc6, 0x45, 0x31, 0xc0, 0xc2, 0xae, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_227 = { .name = "ecdsa_brainpoolp224r1_sha224_227", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_227_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_227_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_227_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 228 for ECDSA, tcId is 141 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_228_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_228_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0xfe, 0x64, 0x1a, 0x0e, 0xcf, 0xed, 0xe7, 0x69, 0xd4, 0xd0, 0xa5, 0x95, 0x96, 0x5f, 0xaa, 0xc1, 0x43, 0xa8, 0x90, 0x79, 0x79, 0x15, 0xe7, 0x88, 0x8e, 0x1b, 0x1b, 0x1b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_228 = { .name = "ecdsa_brainpoolp224r1_sha224_228", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_228_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_228_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_228_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 229 for ECDSA, tcId is 142 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_229_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_229_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x01, 0xc4, 0x24, 0xbc, 0x85, 0xeb, 0xd5, 0x2f, 0xa5, 0x05, 0x42, 0x3a, 0x44, 0x2a, 0x84, 0x43, 0x23, 0x86, 0x58, 0xca, 0x3b, 0x7c, 0x39, 0xba, 0xce, 0x3f, 0x3d, 0x51, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_229 = { .name = "ecdsa_brainpoolp224r1_sha224_229", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_229_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_229_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_229_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 230 for ECDSA, tcId is 143 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_230_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_230_sig[] = { 0xcb, 0x68, 0xac, 0x97, 0x65, 0xc7, 0x64, 0x17, 0x85, 0xdf, 0x23, 0x7e, 0x99, 0x51, 0xe1, 0x42, 0x95, 0x81, 0x87, 0x9a, 0xf2, 0x63, 0x14, 0x60, 0x04, 0x89, 0x61, 0xd3, 0x3b, 0xdb, 0x43, 0x7a, 0x14, 0x2a, 0xd0, 0x5a, 0xfa, 0xbd, 0xc5, 0xbb, 0xd5, 0x7b, 0xbc, 0xdc, 0x79, 0xa7, 0x35, 0xc4, 0x83, 0xc6, 0x45, 0x31, 0xc0, 0xc2, 0xae, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_230 = { .name = "ecdsa_brainpoolp224r1_sha224_230", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_230_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_230_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_230_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 231 for ECDSA, tcId is 144 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_231_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_231_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_231 = { .name = "ecdsa_brainpoolp224r1_sha224_231", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_231_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_231_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_231_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 232 for ECDSA, tcId is 145 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_232_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_232_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_232 = { .name = "ecdsa_brainpoolp224r1_sha224_232", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_232_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_232_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_232_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 233 for ECDSA, tcId is 146 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_233_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_233_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_233 = { .name = "ecdsa_brainpoolp224r1_sha224_233", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_233_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_233_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_233_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 234 for ECDSA, tcId is 147 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_234_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_234_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_234 = { .name = "ecdsa_brainpoolp224r1_sha224_234", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_234_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_234_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_234_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 235 for ECDSA, tcId is 148 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_235_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_235_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_235 = { .name = "ecdsa_brainpoolp224r1_sha224_235", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_235_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_235_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_235_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 236 for ECDSA, tcId is 149 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_236_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_236_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_236 = { .name = "ecdsa_brainpoolp224r1_sha224_236", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_236_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_236_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_236_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 237 for ECDSA, tcId is 150 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_237_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_237_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_237 = { .name = "ecdsa_brainpoolp224r1_sha224_237", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_237_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_237_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_237_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 238 for ECDSA, tcId is 151 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_238_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_238_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_238 = { .name = "ecdsa_brainpoolp224r1_sha224_238", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_238_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_238_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_238_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 239 for ECDSA, tcId is 154 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_239_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_239_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_239 = { .name = "ecdsa_brainpoolp224r1_sha224_239", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_239_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_239_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_239_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 240 for ECDSA, tcId is 155 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_240_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_240_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_240 = { .name = "ecdsa_brainpoolp224r1_sha224_240", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_240_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_240_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_240_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 241 for ECDSA, tcId is 156 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_241_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_241_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_241 = { .name = "ecdsa_brainpoolp224r1_sha224_241", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_241_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_241_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_241_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 242 for ECDSA, tcId is 157 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_242_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_242_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_242 = { .name = "ecdsa_brainpoolp224r1_sha224_242", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_242_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_242_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_242_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 243 for ECDSA, tcId is 158 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_243_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_243_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_243 = { .name = "ecdsa_brainpoolp224r1_sha224_243", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_243_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_243_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_243_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 244 for ECDSA, tcId is 159 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_244_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_244_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_244 = { .name = "ecdsa_brainpoolp224r1_sha224_244", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_244_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_244_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_244_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 245 for ECDSA, tcId is 160 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_245_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_245_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_245 = { .name = "ecdsa_brainpoolp224r1_sha224_245", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_245_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_245_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_245_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 246 for ECDSA, tcId is 161 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_246_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_246_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_246 = { .name = "ecdsa_brainpoolp224r1_sha224_246", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_246_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_246_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_246_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 247 for ECDSA, tcId is 164 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_247_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_247_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_247 = { .name = "ecdsa_brainpoolp224r1_sha224_247", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_247_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_247_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_247_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 248 for ECDSA, tcId is 165 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_248_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_248_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_248 = { .name = "ecdsa_brainpoolp224r1_sha224_248", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_248_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_248_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_248_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 249 for ECDSA, tcId is 166 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_249_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_249_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_249 = { .name = "ecdsa_brainpoolp224r1_sha224_249", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_249_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_249_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_249_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 250 for ECDSA, tcId is 167 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_250_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_250_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_250 = { .name = "ecdsa_brainpoolp224r1_sha224_250", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_250_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_250_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_250_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 251 for ECDSA, tcId is 168 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_251_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_251_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_251 = { .name = "ecdsa_brainpoolp224r1_sha224_251", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_251_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_251_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_251_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 252 for ECDSA, tcId is 169 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_252_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_252_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_252 = { .name = "ecdsa_brainpoolp224r1_sha224_252", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_252_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_252_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_252_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 253 for ECDSA, tcId is 170 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_253_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_253_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_253 = { .name = "ecdsa_brainpoolp224r1_sha224_253", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_253_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_253_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_253_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 254 for ECDSA, tcId is 171 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_254_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_254_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_254 = { .name = "ecdsa_brainpoolp224r1_sha224_254", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_254_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_254_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_254_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 255 for ECDSA, tcId is 174 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_255_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_255_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_255 = { .name = "ecdsa_brainpoolp224r1_sha224_255", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_255_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_255_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_255_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 256 for ECDSA, tcId is 175 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_256_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_256_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_256 = { .name = "ecdsa_brainpoolp224r1_sha224_256", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_256_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_256_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_256_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 257 for ECDSA, tcId is 176 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_257_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_257_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_257 = { .name = "ecdsa_brainpoolp224r1_sha224_257", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_257_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_257_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_257_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 258 for ECDSA, tcId is 177 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_258_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_258_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_258 = { .name = "ecdsa_brainpoolp224r1_sha224_258", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_258_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_258_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_258_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 259 for ECDSA, tcId is 178 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_259_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_259_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_259 = { .name = "ecdsa_brainpoolp224r1_sha224_259", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_259_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_259_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_259_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 260 for ECDSA, tcId is 179 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_260_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_260_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_260 = { .name = "ecdsa_brainpoolp224r1_sha224_260", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_260_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_260_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_260_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 261 for ECDSA, tcId is 180 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_261_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_261_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_261 = { .name = "ecdsa_brainpoolp224r1_sha224_261", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_261_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_261_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_261_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 262 for ECDSA, tcId is 181 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_262_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_262_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_262 = { .name = "ecdsa_brainpoolp224r1_sha224_262", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_262_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_262_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_262_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 263 for ECDSA, tcId is 184 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_263_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_263_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_263 = { .name = "ecdsa_brainpoolp224r1_sha224_263", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_263_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_263_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_263_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 264 for ECDSA, tcId is 185 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_264_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_264_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_264 = { .name = "ecdsa_brainpoolp224r1_sha224_264", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_264_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_264_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_264_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 265 for ECDSA, tcId is 186 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_265_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_265_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_265 = { .name = "ecdsa_brainpoolp224r1_sha224_265", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_265_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_265_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_265_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 266 for ECDSA, tcId is 187 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_266_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_266_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_266 = { .name = "ecdsa_brainpoolp224r1_sha224_266", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_266_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_266_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_266_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 267 for ECDSA, tcId is 188 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_267_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_267_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_267 = { .name = "ecdsa_brainpoolp224r1_sha224_267", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_267_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_267_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_267_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 268 for ECDSA, tcId is 189 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_268_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_268_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_268 = { .name = "ecdsa_brainpoolp224r1_sha224_268", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_268_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_268_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_268_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 269 for ECDSA, tcId is 190 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_269_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_269_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_269 = { .name = "ecdsa_brainpoolp224r1_sha224_269", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_269_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_269_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_269_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 270 for ECDSA, tcId is 191 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_270_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_270_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_270 = { .name = "ecdsa_brainpoolp224r1_sha224_270", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_270_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_270_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_270_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 271 for ECDSA, tcId is 194 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_271_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_271_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_271 = { .name = "ecdsa_brainpoolp224r1_sha224_271", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_271_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_271_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_271_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 272 for ECDSA, tcId is 195 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_272_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_272_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_272 = { .name = "ecdsa_brainpoolp224r1_sha224_272", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_272_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_272_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_272_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 273 for ECDSA, tcId is 196 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_273_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_273_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_273 = { .name = "ecdsa_brainpoolp224r1_sha224_273", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_273_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_273_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_273_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 274 for ECDSA, tcId is 197 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_274_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_274_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_274 = { .name = "ecdsa_brainpoolp224r1_sha224_274", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_274_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_274_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_274_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 275 for ECDSA, tcId is 198 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_275_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_275_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_275 = { .name = "ecdsa_brainpoolp224r1_sha224_275", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_275_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_275_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_275_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 276 for ECDSA, tcId is 199 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_276_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_276_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_276 = { .name = "ecdsa_brainpoolp224r1_sha224_276", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_276_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_276_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_276_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 277 for ECDSA, tcId is 200 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_277_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_277_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_277 = { .name = "ecdsa_brainpoolp224r1_sha224_277", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_277_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_277_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_277_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 278 for ECDSA, tcId is 201 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_278_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_278_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_278 = { .name = "ecdsa_brainpoolp224r1_sha224_278", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_278_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_278_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_278_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 279 for ECDSA, tcId is 204 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_279_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_279_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_279 = { .name = "ecdsa_brainpoolp224r1_sha224_279", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_279_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_279_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_279_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 280 for ECDSA, tcId is 205 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_280_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_280_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_280 = { .name = "ecdsa_brainpoolp224r1_sha224_280", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_280_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_280_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_280_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 281 for ECDSA, tcId is 206 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_281_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_281_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_281 = { .name = "ecdsa_brainpoolp224r1_sha224_281", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_281_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_281_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_281_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 282 for ECDSA, tcId is 207 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_282_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_282_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_282 = { .name = "ecdsa_brainpoolp224r1_sha224_282", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_282_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_282_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_282_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 283 for ECDSA, tcId is 208 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_283_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_283_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_283 = { .name = "ecdsa_brainpoolp224r1_sha224_283", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_283_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_283_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_283_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 284 for ECDSA, tcId is 209 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_284_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_284_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_284 = { .name = "ecdsa_brainpoolp224r1_sha224_284", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_284_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_284_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_284_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 285 for ECDSA, tcId is 210 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_285_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_285_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_285 = { .name = "ecdsa_brainpoolp224r1_sha224_285", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_285_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_285_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_285_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 286 for ECDSA, tcId is 211 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_286_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_286_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_286 = { .name = "ecdsa_brainpoolp224r1_sha224_286", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_286_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_286_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_286_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 287 for ECDSA, tcId is 214 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_287_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_287_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_287 = { .name = "ecdsa_brainpoolp224r1_sha224_287", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_287_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_287_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_287_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 288 for ECDSA, tcId is 215 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_288_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_288_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_288 = { .name = "ecdsa_brainpoolp224r1_sha224_288", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_288_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_288_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_288_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 289 for ECDSA, tcId is 216 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_289_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_289_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_289 = { .name = "ecdsa_brainpoolp224r1_sha224_289", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_289_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_289_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_289_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 290 for ECDSA, tcId is 217 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_290_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_290_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_290 = { .name = "ecdsa_brainpoolp224r1_sha224_290", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_290_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_290_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_290_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 291 for ECDSA, tcId is 218 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_291_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_291_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_291 = { .name = "ecdsa_brainpoolp224r1_sha224_291", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_291_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_291_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_291_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 292 for ECDSA, tcId is 219 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_292_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_292_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_292 = { .name = "ecdsa_brainpoolp224r1_sha224_292", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_292_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_292_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_292_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 293 for ECDSA, tcId is 220 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_293_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_293_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_293 = { .name = "ecdsa_brainpoolp224r1_sha224_293", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_293_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_293_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_293_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 294 for ECDSA, tcId is 221 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_294_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_294_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc1, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_294 = { .name = "ecdsa_brainpoolp224r1_sha224_294", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_294_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_294_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_294_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 295 for ECDSA, tcId is 230 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_295_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_295_msg[] = { 0x39, 0x35, 0x33, 0x38, 0x38, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_295_sig[] = { 0x0e, 0x7e, 0xca, 0xb2, 0x27, 0x6f, 0x03, 0x5c, 0x0d, 0xc7, 0x05, 0x20, 0xeb, 0xd5, 0xae, 0x3c, 0xb7, 0xb7, 0xa8, 0xf2, 0x1f, 0xa5, 0x68, 0x7e, 0xee, 0x92, 0xc4, 0x62, 0x85, 0xa8, 0x53, 0x32, 0xf8, 0xc8, 0x99, 0xb5, 0x3d, 0x43, 0x09, 0x1b, 0x02, 0xe6, 0x95, 0x6b, 0x39, 0x18, 0x17, 0xe1, 0x75, 0xa8, 0xb1, 0xf4, 0x0d, 0xca, 0x7e, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_295 = { .name = "ecdsa_brainpoolp224r1_sha224_295", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_295_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_295_msg, .msglen = 5, .sig = ecdsa_brainpoolp224r1_sha224_295_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 296 for ECDSA, tcId is 231 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_296_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_296_msg[] = { 0x32, 0x32, 0x35, 0x34, 0x36, 0x32, 0x38, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_296_sig[] = { 0x2f, 0xc2, 0xef, 0x9f, 0x76, 0x63, 0xf6, 0x6f, 0x13, 0xb0, 0x4e, 0x49, 0xf2, 0x06, 0xc2, 0x24, 0x41, 0xeb, 0x3e, 0xe1, 0x91, 0x7b, 0x8b, 0xf8, 0x1a, 0x9b, 0x53, 0x76, 0xd1, 0xdf, 0x3d, 0xd0, 0x27, 0x0e, 0x58, 0x84, 0xe9, 0x84, 0x8e, 0xa2, 0x81, 0x2b, 0x66, 0xf5, 0x01, 0x5b, 0xe9, 0x6d, 0x25, 0x85, 0xfe, 0xd3, 0x95, 0x7b, 0x31, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_296 = { .name = "ecdsa_brainpoolp224r1_sha224_296", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_296_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_296_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_296_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 297 for ECDSA, tcId is 232 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_297_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_297_msg[] = { 0x31, 0x38, 0x32, 0x37, 0x38, 0x37, 0x38, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_297_sig[] = { 0xc6, 0x82, 0x58, 0x7b, 0xf4, 0x3e, 0x0c, 0x95, 0x4e, 0xb5, 0x8b, 0xbc, 0xfe, 0xb9, 0x4d, 0xfa, 0xc8, 0xba, 0xd4, 0x04, 0x99, 0x5a, 0xc2, 0x6e, 0x8e, 0x51, 0xff, 0x20, 0x92, 0xbf, 0x10, 0xda, 0x10, 0x32, 0x4c, 0xc3, 0x22, 0xf7, 0x9c, 0x41, 0x2d, 0xae, 0xd3, 0x05, 0xb2, 0x75, 0xfc, 0x19, 0x93, 0xbf, 0x3a, 0xf5, 0x23, 0xde, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_297 = { .name = "ecdsa_brainpoolp224r1_sha224_297", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_297_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_297_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_297_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 298 for ECDSA, tcId is 233 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_298_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_298_msg[] = { 0x31, 0x35, 0x31, 0x38, 0x38, 0x36, 0x31, 0x37, 0x30, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_298_sig[] = { 0x02, 0x5d, 0x1c, 0xf1, 0x6f, 0x03, 0x34, 0x1f, 0x3c, 0x8d, 0x16, 0xa7, 0x78, 0x39, 0xb5, 0xc1, 0xd6, 0x96, 0x36, 0x3d, 0xae, 0x89, 0x8d, 0x91, 0xe1, 0x4a, 0xd5, 0x22, 0xb7, 0x37, 0x9c, 0xc3, 0x5c, 0x97, 0xa8, 0xf0, 0x8b, 0x0e, 0xfb, 0x32, 0xee, 0x82, 0xce, 0x0e, 0x19, 0x11, 0x69, 0x5d, 0x37, 0x2e, 0xe6, 0xd6, 0x79, 0xec, 0x54, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_298 = { .name = "ecdsa_brainpoolp224r1_sha224_298", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_298_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_298_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_298_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 299 for ECDSA, tcId is 234 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_299_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_299_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x33, 0x33, 0x34, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_299_sig[] = { 0xc0, 0xc9, 0x49, 0xe0, 0xf0, 0xf8, 0x57, 0x18, 0x02, 0xea, 0x7e, 0x02, 0x61, 0x7c, 0xa9, 0x25, 0xb9, 0x5d, 0x29, 0x0a, 0x17, 0x4f, 0x68, 0x6d, 0x80, 0xbb, 0xa1, 0xd4, 0xb9, 0x66, 0x17, 0x3c, 0xe3, 0xf1, 0x3c, 0xa5, 0x4c, 0xcd, 0xc8, 0xa2, 0x49, 0xfe, 0xa7, 0x2e, 0x32, 0x60, 0xad, 0x3e, 0x78, 0x54, 0xa7, 0x31, 0x05, 0x1d, 0x8c, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_299 = { .name = "ecdsa_brainpoolp224r1_sha224_299", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_299_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_299_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_299_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 300 for ECDSA, tcId is 235 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_300_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_300_msg[] = { 0x31, 0x32, 0x32, 0x31, 0x39, 0x37, 0x39, 0x30, 0x35, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_300_sig[] = { 0x5d, 0x57, 0xf1, 0x42, 0x75, 0x94, 0x7c, 0x9b, 0xff, 0xea, 0x66, 0xf9, 0xf3, 0x0a, 0xe2, 0x03, 0x19, 0x45, 0x35, 0xf8, 0x02, 0x0c, 0x42, 0xbb, 0xc1, 0xef, 0xec, 0x73, 0xc3, 0x58, 0x65, 0x1b, 0xa2, 0x52, 0x7c, 0x32, 0xd8, 0x58, 0x65, 0x7c, 0xcf, 0x08, 0xe5, 0x35, 0xd3, 0x28, 0x51, 0xfb, 0xd8, 0xc3, 0x54, 0x77, 0xba, 0x17, 0x56, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_300 = { .name = "ecdsa_brainpoolp224r1_sha224_300", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_300_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_300_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_300_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 301 for ECDSA, tcId is 236 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_301_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_301_msg[] = { 0x32, 0x33, 0x30, 0x32, 0x35, 0x36, 0x37, 0x36, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_301_sig[] = { 0x13, 0x3b, 0xb1, 0x2f, 0x10, 0x96, 0x98, 0x9d, 0xc8, 0x67, 0xd8, 0x74, 0xf6, 0x75, 0xfd, 0xf9, 0xe9, 0x79, 0x75, 0xc2, 0xe2, 0x2c, 0x71, 0xe4, 0x4f, 0x59, 0xbf, 0x35, 0x65, 0x57, 0xee, 0xb2, 0xb5, 0xb4, 0xf1, 0xf7, 0xc8, 0x51, 0x84, 0xdc, 0xc6, 0x53, 0x85, 0x0c, 0x34, 0xb1, 0xc3, 0x48, 0x0d, 0x2f, 0x32, 0xd1, 0x56, 0x7c, 0x25, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_301 = { .name = "ecdsa_brainpoolp224r1_sha224_301", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_301_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_301_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_301_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 302 for ECDSA, tcId is 237 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_302_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_302_msg[] = { 0x31, 0x31, 0x30, 0x35, 0x38, 0x36, 0x38, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_302_sig[] = { 0xd1, 0xdc, 0x7d, 0x1c, 0xc8, 0x86, 0xca, 0x90, 0xe0, 0xd9, 0x60, 0xb6, 0xc7, 0xfd, 0xa9, 0x2e, 0xd5, 0x82, 0xec, 0x61, 0x6c, 0x1c, 0x79, 0xb1, 0x71, 0xef, 0x31, 0x08, 0x41, 0xa7, 0xd2, 0x14, 0x38, 0xe7, 0xc3, 0x4b, 0x27, 0x17, 0x60, 0x05, 0xef, 0x67, 0xc0, 0x4a, 0x63, 0xf3, 0x62, 0xd2, 0xda, 0xf1, 0x0b, 0x62, 0xc5, 0x3b, 0x88, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_302 = { .name = "ecdsa_brainpoolp224r1_sha224_302", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_302_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_302_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_302_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 303 for ECDSA, tcId is 238 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_303_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_303_msg[] = { 0x31, 0x34, 0x36, 0x36, 0x36, 0x31, 0x34, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_303_sig[] = { 0x9e, 0xc3, 0xb7, 0xb4, 0xa0, 0xf1, 0x23, 0x51, 0x69, 0xb6, 0x4a, 0x20, 0x58, 0x4d, 0x36, 0xb9, 0x6b, 0xb7, 0xa2, 0xbd, 0xe0, 0x0d, 0x23, 0x16, 0x3c, 0xc3, 0xb1, 0xbf, 0xac, 0x32, 0xef, 0x3b, 0x9e, 0x94, 0x8d, 0x96, 0x7f, 0x96, 0xcd, 0x08, 0x50, 0x78, 0x09, 0xe3, 0xb9, 0xa0, 0xe0, 0x93, 0xbe, 0x3e, 0x76, 0xb8, 0x18, 0x33, 0x1d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_303 = { .name = "ecdsa_brainpoolp224r1_sha224_303", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_303_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_303_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_303_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 304 for ECDSA, tcId is 239 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_304_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_304_msg[] = { 0x34, 0x34, 0x31, 0x39, 0x35, 0x36, 0x34, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_304_sig[] = { 0x39, 0x2a, 0xe3, 0x81, 0xda, 0x4c, 0xcf, 0xd9, 0xd5, 0xad, 0x09, 0x3d, 0x49, 0xb2, 0x2d, 0x57, 0x94, 0x11, 0xf7, 0xc1, 0xcd, 0x04, 0xe8, 0x84, 0x73, 0xab, 0x6e, 0xf5, 0xa2, 0x89, 0x8b, 0x8b, 0xf1, 0x20, 0xd1, 0x8e, 0x4e, 0xe0, 0xd1, 0x5c, 0x41, 0x90, 0x44, 0x32, 0x4d, 0xe3, 0xc0, 0x92, 0x7e, 0xe9, 0x0f, 0xd6, 0xf3, 0x87, 0x11, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_304 = { .name = "ecdsa_brainpoolp224r1_sha224_304", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_304_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_304_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_304_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 305 for ECDSA, tcId is 240 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_305_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_305_msg[] = { 0x31, 0x39, 0x36, 0x39, 0x34, 0x38, 0x36, 0x30, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_305_sig[] = { 0xa3, 0x7b, 0x0c, 0xc8, 0x7f, 0x6d, 0x46, 0x20, 0x30, 0x30, 0x30, 0xd7, 0xac, 0x4a, 0x65, 0x72, 0xf9, 0x4c, 0x0c, 0xf4, 0x4f, 0x0a, 0x03, 0x5c, 0x0e, 0x59, 0xd0, 0x7c, 0x30, 0xc7, 0xac, 0xd8, 0xdb, 0x9e, 0x72, 0x01, 0x22, 0x08, 0xf0, 0x8d, 0xb5, 0x38, 0x1a, 0x1e, 0x54, 0xfa, 0x09, 0x8c, 0x03, 0x14, 0xa0, 0x9a, 0x30, 0x58, 0xc4, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_305 = { .name = "ecdsa_brainpoolp224r1_sha224_305", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_305_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_305_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_305_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 306 for ECDSA, tcId is 241 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_306_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_306_msg[] = { 0x32, 0x32, 0x33, 0x35, 0x36, 0x37, 0x32, 0x38, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_306_sig[] = { 0x62, 0xf6, 0x60, 0xd9, 0x3a, 0x45, 0xdf, 0xa3, 0xb6, 0x61, 0xf8, 0xb6, 0xa4, 0xd5, 0xe0, 0x6e, 0x5a, 0x1e, 0xe8, 0xa8, 0x85, 0x5a, 0xba, 0xfa, 0x40, 0x73, 0xb5, 0x13, 0xd6, 0x97, 0x8f, 0x5d, 0xa8, 0xaf, 0xcc, 0x5b, 0x39, 0x5f, 0xd4, 0xb5, 0xf3, 0xc0, 0xfd, 0xb7, 0xa2, 0x68, 0x9e, 0x6d, 0xe4, 0x6d, 0x08, 0xfb, 0x9d, 0xe7, 0x18, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_306 = { .name = "ecdsa_brainpoolp224r1_sha224_306", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_306_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_306_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_306_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 307 for ECDSA, tcId is 242 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_307_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_307_msg[] = { 0x32, 0x32, 0x35, 0x37, 0x38, 0x34, 0x33, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_307_sig[] = { 0x61, 0xaf, 0x9a, 0x2c, 0xa2, 0x05, 0x03, 0xfd, 0x62, 0xbc, 0x3c, 0x6f, 0x84, 0x34, 0x99, 0x5c, 0x6c, 0xf3, 0x03, 0x7e, 0xb6, 0xf9, 0xff, 0x62, 0x13, 0x48, 0xcf, 0x53, 0x09, 0xf8, 0xf6, 0x47, 0x13, 0x87, 0x69, 0x54, 0x8d, 0xb4, 0x60, 0xef, 0xdd, 0x83, 0x23, 0xf8, 0xca, 0xd1, 0x8a, 0x70, 0x71, 0xd3, 0xd0, 0x4d, 0x6a, 0xd3, 0x3d, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_307 = { .name = "ecdsa_brainpoolp224r1_sha224_307", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_307_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_307_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_307_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 308 for ECDSA, tcId is 243 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_308_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_308_msg[] = { 0x39, 0x34, 0x34, 0x35, 0x30, 0x30, 0x39, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_308_sig[] = { 0x0e, 0x45, 0x9c, 0xfe, 0x37, 0x01, 0x7c, 0x8b, 0x60, 0x5e, 0x38, 0xbf, 0x5d, 0x25, 0x17, 0x65, 0x76, 0xd4, 0x75, 0xfa, 0x88, 0xde, 0xd2, 0x7b, 0xe2, 0x6a, 0xbc, 0xa7, 0xb1, 0xbb, 0x6a, 0x60, 0xcc, 0xc3, 0xd4, 0x8e, 0x8d, 0x1d, 0x4c, 0x53, 0xf9, 0x01, 0x42, 0x80, 0x6e, 0x44, 0xd9, 0x94, 0x9e, 0xbc, 0xaa, 0x05, 0xb8, 0x3e, 0x20, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_308 = { .name = "ecdsa_brainpoolp224r1_sha224_308", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_308_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_308_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_308_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 309 for ECDSA, tcId is 244 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_309_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_309_msg[] = { 0x31, 0x36, 0x38, 0x37, 0x37, 0x38, 0x39, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_309_sig[] = { 0xd0, 0x18, 0x48, 0x82, 0xbd, 0xd6, 0xfa, 0x09, 0x99, 0x6c, 0x2f, 0xec, 0xf3, 0xcd, 0x26, 0xed, 0x86, 0xa3, 0xce, 0x15, 0x98, 0x7e, 0x06, 0xdb, 0x85, 0x0b, 0x8b, 0x2b, 0xcf, 0xf0, 0x72, 0xb2, 0x7c, 0x33, 0xf9, 0x16, 0x81, 0xd3, 0xe9, 0x5a, 0x47, 0xbe, 0xc0, 0x00, 0xcc, 0x96, 0xc5, 0xdc, 0x91, 0xf6, 0x8e, 0xcc, 0xc2, 0x1c, 0xa3, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_309 = { .name = "ecdsa_brainpoolp224r1_sha224_309", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_309_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_309_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_309_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 310 for ECDSA, tcId is 245 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_310_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_310_msg[] = { 0x33, 0x39, 0x33, 0x32, 0x36, 0x31, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_310_sig[] = { 0x35, 0x7e, 0x96, 0xab, 0x54, 0xf4, 0xdb, 0xb3, 0xa6, 0xa3, 0xa9, 0xd1, 0xed, 0xe6, 0xdf, 0x52, 0x94, 0x63, 0x9a, 0xed, 0xfd, 0xea, 0x96, 0xe7, 0xff, 0xc9, 0xda, 0x31, 0x24, 0xeb, 0x6b, 0x7f, 0x55, 0x90, 0x67, 0x39, 0x31, 0x3e, 0xa2, 0x66, 0x5a, 0x05, 0x04, 0xa3, 0xb0, 0xbf, 0x7a, 0x9b, 0x32, 0x9c, 0x69, 0x0f, 0x4a, 0x2e, 0xdf, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_310 = { .name = "ecdsa_brainpoolp224r1_sha224_310", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_310_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_310_msg, .msglen = 9, .sig = ecdsa_brainpoolp224r1_sha224_310_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 311 for ECDSA, tcId is 246 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_311_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_311_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x35, 0x37, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_311_sig[] = { 0x0b, 0xaa, 0xf7, 0x9d, 0x52, 0x35, 0xe3, 0x26, 0x8e, 0x55, 0x43, 0x1c, 0xbd, 0x79, 0x00, 0x46, 0xc2, 0x58, 0x1e, 0xbd, 0x3f, 0x8b, 0x90, 0x62, 0x7b, 0xd4, 0x6b, 0x8b, 0x83, 0xd5, 0x6f, 0x6b, 0x56, 0xca, 0x93, 0x81, 0xb1, 0x4c, 0xa8, 0x88, 0x28, 0x1b, 0x48, 0x1c, 0xf8, 0x28, 0xe9, 0xb4, 0x3b, 0x0d, 0x41, 0x81, 0x08, 0xe8, 0x2d, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_311 = { .name = "ecdsa_brainpoolp224r1_sha224_311", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_311_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_311_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_311_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 312 for ECDSA, tcId is 247 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_312_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_312_msg[] = { 0x36, 0x30, 0x38, 0x38, 0x37, 0x34, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_312_sig[] = { 0x7e, 0xbe, 0xf1, 0xad, 0x41, 0xde, 0x94, 0x34, 0xeb, 0x3f, 0x6f, 0x83, 0x33, 0x8f, 0x01, 0x09, 0x66, 0x6c, 0x26, 0x4d, 0x89, 0x12, 0x33, 0x42, 0xb0, 0x90, 0x0f, 0x05, 0x78, 0xa3, 0xa9, 0xfa, 0x72, 0x01, 0xc4, 0x8f, 0x92, 0x83, 0x44, 0x00, 0x4a, 0x1f, 0x51, 0x80, 0x53, 0x09, 0x9d, 0xf8, 0x69, 0x08, 0xde, 0x29, 0xee, 0xb7, 0x6a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_312 = { .name = "ecdsa_brainpoolp224r1_sha224_312", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_312_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_312_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_312_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 313 for ECDSA, tcId is 248 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_313_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_313_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x35, 0x36, 0x39, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_313_sig[] = { 0x9f, 0x20, 0xab, 0xef, 0xf0, 0xaf, 0x96, 0x5d, 0xa9, 0xc5, 0x1c, 0x99, 0x50, 0x7c, 0xf5, 0xf9, 0x1d, 0x75, 0xf2, 0x3f, 0xe0, 0x2b, 0x61, 0x15, 0x02, 0x96, 0x16, 0x7c, 0xbf, 0x6f, 0xed, 0x8a, 0x8e, 0xf7, 0x26, 0xf2, 0xf6, 0x62, 0x9c, 0x4e, 0x4b, 0x50, 0xb3, 0xc2, 0xce, 0x14, 0xff, 0x43, 0x9f, 0xe9, 0xbf, 0xe6, 0x15, 0x78, 0x68, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_313 = { .name = "ecdsa_brainpoolp224r1_sha224_313", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_313_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_313_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_313_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 314 for ECDSA, tcId is 249 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_314_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_314_msg[] = { 0x39, 0x30, 0x30, 0x37, 0x36, 0x30, 0x39, 0x33, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_314_sig[] = { 0x5a, 0xd6, 0x7f, 0xf0, 0xdd, 0xf8, 0xcb, 0x88, 0x40, 0x79, 0x74, 0xf8, 0x3f, 0xea, 0x43, 0xd9, 0xd1, 0x47, 0xcb, 0xb2, 0x3d, 0xba, 0x26, 0x1f, 0xad, 0xad, 0xae, 0xdb, 0x7f, 0xd3, 0x1c, 0xcc, 0x4b, 0x36, 0x05, 0xdb, 0x42, 0xb7, 0x00, 0xa2, 0x45, 0xdf, 0x8f, 0xc6, 0x0e, 0xfb, 0xf1, 0x40, 0x6a, 0xfb, 0x4d, 0x6c, 0x8c, 0x16, 0xe0, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_314 = { .name = "ecdsa_brainpoolp224r1_sha224_314", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_314_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_314_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_314_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 315 for ECDSA, tcId is 250 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_315_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_315_msg[] = { 0x31, 0x36, 0x30, 0x32, 0x38, 0x33, 0x36, 0x31, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_315_sig[] = { 0x40, 0xe0, 0xbd, 0x9a, 0x2f, 0xa5, 0xa8, 0x86, 0x78, 0xc8, 0x5c, 0x3f, 0x4d, 0x27, 0xe2, 0xae, 0x2d, 0xd0, 0x46, 0xf2, 0x9a, 0x36, 0x39, 0xec, 0x2f, 0xf2, 0x51, 0x1a, 0x16, 0xcd, 0x49, 0x21, 0x5c, 0xb0, 0x05, 0x33, 0xfd, 0x13, 0x9a, 0xe1, 0xd3, 0x63, 0x1d, 0x45, 0xfb, 0x06, 0xd5, 0xec, 0xd1, 0x13, 0x8a, 0xb4, 0x6c, 0x48, 0xa4, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_315 = { .name = "ecdsa_brainpoolp224r1_sha224_315", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_315_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_315_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_315_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 316 for ECDSA, tcId is 251 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_316_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_316_msg[] = { 0x32, 0x30, 0x38, 0x30, 0x32, 0x34, 0x35, 0x36, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_316_sig[] = { 0x9a, 0x70, 0x5d, 0xdc, 0x87, 0x67, 0xe5, 0x4c, 0xec, 0x4d, 0x1c, 0x37, 0xa2, 0x46, 0x0b, 0x3c, 0x0b, 0x31, 0xe9, 0x81, 0x1c, 0x3a, 0x42, 0x75, 0x26, 0x49, 0x9c, 0x01, 0x36, 0xa6, 0xb9, 0xdc, 0xd7, 0xc8, 0xa8, 0x1e, 0x34, 0xaf, 0xdf, 0x84, 0x5c, 0x4c, 0xc0, 0xe7, 0x34, 0x55, 0x01, 0x1b, 0xbc, 0xd7, 0x98, 0x7f, 0x88, 0x72, 0x58, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_316 = { .name = "ecdsa_brainpoolp224r1_sha224_316", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_316_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_316_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_316_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 317 for ECDSA, tcId is 252 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_317_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_317_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x37, 0x34, 0x36, 0x35, 0x39, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_317_sig[] = { 0xa5, 0x1a, 0x62, 0x5b, 0x99, 0x56, 0x8d, 0x00, 0x3e, 0x4b, 0x96, 0xe6, 0x93, 0x13, 0x6b, 0xa7, 0x52, 0x21, 0xe8, 0xe5, 0x6c, 0x9a, 0xb5, 0xe9, 0xec, 0x68, 0x16, 0xee, 0x7e, 0x20, 0x89, 0x18, 0x78, 0x55, 0x16, 0xcd, 0xa7, 0xcf, 0x70, 0x87, 0x0d, 0xd8, 0x12, 0xe8, 0x0e, 0x8f, 0x9f, 0x1b, 0x52, 0x48, 0xd9, 0x19, 0xb1, 0xff, 0x1d, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_317 = { .name = "ecdsa_brainpoolp224r1_sha224_317", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_317_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_317_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_317_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 318 for ECDSA, tcId is 253 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_318_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_318_msg[] = { 0x31, 0x31, 0x35, 0x35, 0x35, 0x37, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_318_sig[] = { 0x47, 0x20, 0xf9, 0x37, 0x10, 0x0d, 0xf5, 0x2e, 0x6a, 0xe1, 0xba, 0xf4, 0x0f, 0x8b, 0xc9, 0x50, 0xe5, 0xaf, 0x2b, 0x1f, 0x94, 0x7d, 0x04, 0x17, 0x80, 0x4a, 0x82, 0x25, 0x8b, 0x82, 0x22, 0x73, 0xfb, 0x5d, 0x47, 0x3c, 0x9c, 0x88, 0xaa, 0x3c, 0x8d, 0xde, 0xa1, 0x67, 0x61, 0x9c, 0xda, 0x12, 0xee, 0x41, 0xce, 0x65, 0xde, 0x26, 0x8a, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_318 = { .name = "ecdsa_brainpoolp224r1_sha224_318", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_318_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_318_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_318_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 319 for ECDSA, tcId is 254 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_319_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_319_msg[] = { 0x32, 0x34, 0x33, 0x32, 0x34, 0x37, 0x34, 0x36, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_319_sig[] = { 0x3d, 0x28, 0x1d, 0x98, 0xb6, 0xa6, 0x76, 0xa6, 0xed, 0xa7, 0x57, 0x0d, 0x7b, 0x4f, 0x9a, 0x08, 0xe9, 0x24, 0xc7, 0x1a, 0xfd, 0x2c, 0xb6, 0xe0, 0x62, 0xa7, 0xeb, 0xfd, 0x84, 0x46, 0xe4, 0x27, 0x47, 0xa3, 0x52, 0x51, 0x8e, 0xf6, 0x8e, 0xff, 0x05, 0x56, 0x95, 0xb4, 0x76, 0x6b, 0xdc, 0x2a, 0xd8, 0xd3, 0xfa, 0x97, 0xbc, 0x20, 0x2b, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_319 = { .name = "ecdsa_brainpoolp224r1_sha224_319", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_319_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_319_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_319_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 320 for ECDSA, tcId is 255 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_320_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_320_msg[] = { 0x32, 0x34, 0x31, 0x37, 0x32, 0x38, 0x32, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_320_sig[] = { 0x4d, 0x34, 0x69, 0xe9, 0x39, 0xff, 0xea, 0xd9, 0x41, 0xe3, 0xcb, 0xce, 0xbc, 0xa3, 0xbc, 0xb6, 0xf3, 0xc0, 0x29, 0x64, 0x1f, 0x97, 0x70, 0x0e, 0x02, 0x81, 0x77, 0x38, 0x42, 0xcb, 0x87, 0xa1, 0x0e, 0xa1, 0x7c, 0x0e, 0x58, 0xc3, 0x82, 0x2f, 0x6a, 0xe1, 0xf3, 0xa8, 0x91, 0x8d, 0x86, 0xa8, 0x32, 0x5d, 0xef, 0x4a, 0x8c, 0x80, 0x82, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_320 = { .name = "ecdsa_brainpoolp224r1_sha224_320", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_320_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_320_msg, .msglen = 10, .sig = ecdsa_brainpoolp224r1_sha224_320_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 321 for ECDSA, tcId is 256 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_321_pubkey[] = { 0x57, 0x2e, 0xab, 0x73, 0x76, 0xd0, 0x52, 0xdf, 0xc4, 0x09, 0x23, 0xdb, 0x25, 0x34, 0x2e, 0xa9, 0xcb, 0xfc, 0xe4, 0xb8, 0x58, 0x1e, 0x10, 0x4a, 0x4c, 0x8f, 0x37, 0xc9, 0x4a, 0x70, 0x0e, 0xc5, 0xdc, 0x05, 0xa4, 0x81, 0xb2, 0xb6, 0x95, 0x32, 0x0c, 0x6f, 0x1a, 0xd2, 0xdd, 0x86, 0x28, 0x63, 0x3c, 0xdb, 0x75, 0xa9, 0x12, 0x45, 0xc2, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_321_msg[] = { 0x37, 0x37, 0x38, 0x37, 0x34, 0x37, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_321_sig[] = { 0x21, 0xe5, 0x1b, 0x79, 0xe8, 0x55, 0x4e, 0x22, 0x93, 0x7c, 0x3e, 0x5b, 0x19, 0x83, 0xb3, 0x77, 0x62, 0x59, 0x1e, 0x21, 0xf5, 0x70, 0x6e, 0x5c, 0x19, 0x82, 0xa5, 0x0c, 0x4b, 0xcd, 0xbd, 0x23, 0xb0, 0xa4, 0x71, 0xdb, 0x84, 0xd1, 0xee, 0x3e, 0xdf, 0x76, 0x77, 0xbb, 0xb1, 0x43, 0x07, 0xec, 0xc5, 0xe1, 0x02, 0x31, 0x74, 0xec, 0x5b, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_321 = { .name = "ecdsa_brainpoolp224r1_sha224_321", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_321_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_321_msg, .msglen = 8, .sig = ecdsa_brainpoolp224r1_sha224_321_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 322 for ECDSA, tcId is 257 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_322_pubkey[] = { 0xa0, 0xef, 0x7d, 0xb1, 0xbe, 0xe0, 0xae, 0xdb, 0x5a, 0x56, 0x34, 0xf4, 0xf3, 0xb1, 0xb8, 0x8d, 0x97, 0xd2, 0xa0, 0x7f, 0x80, 0x6a, 0x71, 0x8e, 0xfe, 0x19, 0x01, 0x4d, 0xae, 0xe1, 0x04, 0x3f, 0x9e, 0x92, 0x9c, 0x32, 0xd7, 0x4a, 0xb0, 0xe4, 0xee, 0xba, 0x26, 0x23, 0xf1, 0x7b, 0xa2, 0x81, 0xb6, 0xbe, 0x87, 0x74, 0x5b, 0x59, 0xf6, 0x0e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_322_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdb, 0xee, 0xdf, 0x88, 0x4b, 0x0c, 0x29, 0xfb, 0xcd, 0x51, 0xd9, 0x21, 0x2d, 0x5f, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_322 = { .name = "ecdsa_brainpoolp224r1_sha224_322", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_322_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_322_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_322_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 257 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 323 for ECDSA, tcId is 258 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_323_pubkey[] = { 0xa0, 0xef, 0x7d, 0xb1, 0xbe, 0xe0, 0xae, 0xdb, 0x5a, 0x56, 0x34, 0xf4, 0xf3, 0xb1, 0xb8, 0x8d, 0x97, 0xd2, 0xa0, 0x7f, 0x80, 0x6a, 0x71, 0x8e, 0xfe, 0x19, 0x01, 0x4d, 0xae, 0xe1, 0x04, 0x3f, 0x9e, 0x92, 0x9c, 0x32, 0xd7, 0x4a, 0xb0, 0xe4, 0xee, 0xba, 0x26, 0x23, 0xf1, 0x7b, 0xa2, 0x81, 0xb6, 0xbe, 0x87, 0x74, 0x5b, 0x59, 0xf6, 0x0e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_323_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_323_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_323 = { .name = "ecdsa_brainpoolp224r1_sha224_323", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_323_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_323_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_323_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 258 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 324 for ECDSA, tcId is 259 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_324_pubkey[] = { 0x3a, 0xdd, 0xa4, 0x07, 0xba, 0xd7, 0xf5, 0x93, 0xe8, 0x3d, 0x7d, 0x48, 0x4f, 0xd1, 0x4c, 0x23, 0xdd, 0xa1, 0x7f, 0x8d, 0x46, 0x0c, 0x22, 0x2a, 0xa7, 0x25, 0x75, 0x77, 0xcd, 0x62, 0x44, 0x3b, 0x2b, 0x77, 0x02, 0x91, 0xf6, 0x59, 0x04, 0xda, 0xcf, 0x75, 0xff, 0x97, 0x5f, 0x1a, 0x66, 0x71, 0x87, 0xe0, 0xe4, 0xf5, 0x0c, 0x14, 0x88, 0x9c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_324_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_324_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9e, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_324 = { .name = "ecdsa_brainpoolp224r1_sha224_324", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_324_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_324_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_324_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 259 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 325 for ECDSA, tcId is 260 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_325_pubkey[] = { 0x24, 0x58, 0x7c, 0xe1, 0xdb, 0xff, 0x28, 0x1d, 0xca, 0xb1, 0x79, 0x45, 0x19, 0x80, 0x62, 0x81, 0xad, 0x4e, 0x09, 0x97, 0x49, 0x25, 0x10, 0x67, 0x7f, 0xb6, 0x51, 0x06, 0x92, 0x96, 0x99, 0x6e, 0x83, 0xb8, 0x08, 0x67, 0x6c, 0xbf, 0x6f, 0x28, 0xc9, 0x2b, 0x84, 0x30, 0x33, 0x14, 0xb6, 0x3a, 0x03, 0x08, 0x13, 0x4f, 0x22, 0x2d, 0x0e, 0xc2, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_325_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_325_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x63, 0xf0, 0xe3, 0x42, 0x58, 0xbb, 0x90, 0x61, 0x54, 0x79, 0x06, 0xd0, 0xc3, 0x82, 0x7c, 0x50, 0x44, 0x22, 0xc1, 0x39, 0xe6, 0xd6, 0xe1, 0x07, 0x8b, 0x37, 0xaa, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_325 = { .name = "ecdsa_brainpoolp224r1_sha224_325", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_325_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_325_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_325_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 260 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 326 for ECDSA, tcId is 261 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_326_pubkey[] = { 0xc4, 0x5c, 0x51, 0xd5, 0xa9, 0xb2, 0x13, 0xe4, 0x1c, 0xa6, 0xf1, 0x5c, 0xb8, 0xaa, 0x1b, 0xc0, 0xb8, 0xb7, 0x3d, 0x3a, 0x8a, 0x23, 0xa1, 0x4f, 0x5a, 0x3d, 0xa4, 0xdf, 0xbc, 0x78, 0xcc, 0x61, 0x76, 0xd3, 0xb8, 0x31, 0xe6, 0x88, 0x00, 0x67, 0x17, 0x68, 0x04, 0x3c, 0x11, 0xbf, 0x63, 0xa6, 0x95, 0x91, 0x8d, 0xf6, 0xec, 0x87, 0x37, 0x8a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_326_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_326_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6e, 0xb1, 0xfb, 0xfa, 0x8d, 0xf8, 0x7d, 0x4f, 0xa1, 0x0c, 0x83, 0x3f, 0x7d, 0xd1, 0xbb, 0xe7, 0xef, 0x01, 0x44, 0xff, 0x71, 0x53, 0x79, 0x75, 0x37, 0x8f, 0x91, 0xec, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_326 = { .name = "ecdsa_brainpoolp224r1_sha224_326", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_326_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_326_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_326_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 261 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 327 for ECDSA, tcId is 262 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_327_pubkey[] = { 0x36, 0xa5, 0x34, 0x4d, 0xa0, 0x8a, 0x42, 0x1e, 0xdc, 0x6c, 0x3b, 0xeb, 0x7d, 0xe9, 0x7a, 0x75, 0x59, 0xfc, 0x10, 0x1c, 0x14, 0x89, 0xff, 0x2b, 0x50, 0x36, 0xd8, 0xf6, 0x20, 0x7b, 0xf4, 0x66, 0x6e, 0x4d, 0xf6, 0x06, 0xbd, 0x0d, 0x98, 0x23, 0xa5, 0x2b, 0x58, 0xdd, 0xfd, 0xfc, 0x1d, 0xa7, 0x05, 0x13, 0xc5, 0xf9, 0x99, 0x0f, 0x80, 0x85, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_327_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_327 = { .name = "ecdsa_brainpoolp224r1_sha224_327", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_327_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_327_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_327_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 262 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 328 for ECDSA, tcId is 263 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_328_pubkey[] = { 0x40, 0x95, 0xc0, 0x95, 0xa9, 0x64, 0x89, 0x51, 0xda, 0x35, 0x2b, 0x83, 0x7f, 0x36, 0x8e, 0x0b, 0xe6, 0x7d, 0x79, 0xfd, 0x57, 0xea, 0xdf, 0xff, 0xed, 0xdf, 0xb4, 0x55, 0xcc, 0xdc, 0xfa, 0xbe, 0xa1, 0x9e, 0x96, 0xd4, 0xd2, 0x0e, 0x42, 0xb8, 0xae, 0x23, 0xc2, 0x51, 0x94, 0x26, 0x01, 0x8e, 0x25, 0xa6, 0x4d, 0xea, 0x85, 0xd8, 0xa6, 0x8b, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_328_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_328 = { .name = "ecdsa_brainpoolp224r1_sha224_328", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_328_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_328_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_328_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 263 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 329 for ECDSA, tcId is 264 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_329_pubkey[] = { 0xcc, 0x35, 0x2a, 0xc4, 0x8a, 0xac, 0xb6, 0x49, 0x5e, 0xc3, 0x83, 0x1b, 0x21, 0xcc, 0xd4, 0xd3, 0x19, 0x71, 0x36, 0x29, 0x2b, 0xf6, 0xf2, 0x0f, 0x22, 0x80, 0x25, 0x66, 0x64, 0x32, 0x19, 0x91, 0xe6, 0x7f, 0x7d, 0xbc, 0x22, 0x60, 0x2e, 0xcb, 0xdb, 0x31, 0x22, 0xed, 0xce, 0x5f, 0xf8, 0x5d, 0x92, 0x31, 0x43, 0xce, 0xcc, 0x0d, 0x4f, 0x6d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_329_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_329 = { .name = "ecdsa_brainpoolp224r1_sha224_329", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_329_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_329_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_329_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 264 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 330 for ECDSA, tcId is 265 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_330_pubkey[] = { 0xcc, 0x35, 0x2a, 0xc4, 0x8a, 0xac, 0xb6, 0x49, 0x5e, 0xc3, 0x83, 0x1b, 0x21, 0xcc, 0xd4, 0xd3, 0x19, 0x71, 0x36, 0x29, 0x2b, 0xf6, 0xf2, 0x0f, 0x22, 0x80, 0x25, 0x66, 0x64, 0x32, 0x19, 0x91, 0xe6, 0x7f, 0x7d, 0xbc, 0x22, 0x60, 0x2e, 0xcb, 0xdb, 0x31, 0x22, 0xed, 0xce, 0x5f, 0xf8, 0x5d, 0x92, 0x31, 0x43, 0xce, 0xcc, 0x0d, 0x4f, 0x6d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_330_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_330 = { .name = "ecdsa_brainpoolp224r1_sha224_330", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_330_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_330_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_330_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 265 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 331 for ECDSA, tcId is 266 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_331_pubkey[] = { 0x91, 0x48, 0xf2, 0x9c, 0x67, 0xf8, 0x3c, 0x70, 0x5e, 0xef, 0xb5, 0x9c, 0x92, 0x95, 0x47, 0x75, 0xf9, 0x0c, 0x15, 0xe2, 0x25, 0xda, 0x2e, 0x99, 0x6a, 0xbc, 0xdd, 0x1d, 0xc9, 0xdb, 0x1a, 0xa1, 0xe1, 0x52, 0x77, 0xc4, 0x55, 0x5d, 0x24, 0x11, 0x82, 0x39, 0xe5, 0x3f, 0xd2, 0xf0, 0xb5, 0xe7, 0xea, 0x80, 0x7e, 0xb3, 0xde, 0x1e, 0xe3, 0x50, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_331_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xba, 0x6a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_331 = { .name = "ecdsa_brainpoolp224r1_sha224_331", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_331_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_331_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_331_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 266 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 332 for ECDSA, tcId is 267 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_332_pubkey[] = { 0x9b, 0xf0, 0x45, 0xa4, 0x3a, 0x5f, 0x14, 0xd5, 0xe4, 0x12, 0xee, 0x18, 0x1f, 0x11, 0x1d, 0x6e, 0x53, 0x96, 0x11, 0x20, 0x53, 0x1f, 0x3c, 0x50, 0xca, 0x70, 0x1e, 0x78, 0xbe, 0x9e, 0xb9, 0x51, 0x46, 0xf4, 0xf2, 0xbe, 0x96, 0x94, 0x99, 0x76, 0xa7, 0xaa, 0x49, 0xd3, 0x15, 0x93, 0xa7, 0xda, 0x2e, 0xdd, 0x90, 0x76, 0x52, 0x39, 0x8c, 0x3a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_332_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x9d, 0xfe, 0x5c, 0xfd, 0x9b, 0x02, 0xfe, 0x7a, 0x6f, 0x74, 0x7b, 0xf3, 0x1d, 0xd5, 0x81, 0xd0, 0xa9, 0x3c, 0xfe, 0xcc, 0x66, 0xa1, 0x17, 0x3d, 0x61, 0x1d, 0xfd, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_332 = { .name = "ecdsa_brainpoolp224r1_sha224_332", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_332_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_332_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_332_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 267 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 333 for ECDSA, tcId is 268 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_333_pubkey[] = { 0x87, 0x73, 0x9e, 0x28, 0x21, 0xed, 0x95, 0x67, 0xe8, 0x87, 0x02, 0xfa, 0x8c, 0x6d, 0x08, 0x3c, 0x97, 0xc1, 0xf3, 0xf1, 0xeb, 0x32, 0xd1, 0x3f, 0x75, 0x1f, 0xb0, 0x73, 0x6d, 0x02, 0xeb, 0xa0, 0x5e, 0x8c, 0xb9, 0x46, 0x72, 0xd0, 0x9e, 0xbc, 0x11, 0x05, 0x1d, 0x52, 0xec, 0x7b, 0xd4, 0xdc, 0x77, 0x67, 0x30, 0x1b, 0x67, 0x03, 0x42, 0x12, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_333_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x43, 0xe2, 0x35, 0x74, 0x8b, 0xd3, 0xb1, 0xbf, 0xa1, 0x4c, 0x92, 0x23, 0x4a, 0x90, 0x26, 0x1a, 0xcc, 0x3e, 0x90, 0x86, 0x81, 0x08, 0x01, 0xa3, 0x67, 0x46, 0xbc, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_333 = { .name = "ecdsa_brainpoolp224r1_sha224_333", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_333_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_333_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_333_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 268 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 334 for ECDSA, tcId is 269 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_334_pubkey[] = { 0x1a, 0x51, 0x5c, 0xbe, 0x95, 0x7b, 0xfc, 0x07, 0x0e, 0x4c, 0x4a, 0x75, 0xd6, 0xfd, 0x5e, 0x7c, 0x15, 0xb1, 0xe2, 0x55, 0xeb, 0x42, 0xfe, 0xad, 0x06, 0xc9, 0xd2, 0x63, 0x62, 0x52, 0xcc, 0x0d, 0x23, 0x43, 0x18, 0x39, 0x4d, 0xf7, 0xdb, 0x65, 0xb0, 0xa5, 0x2e, 0x06, 0x95, 0x3c, 0xa6, 0xc2, 0x1e, 0xc9, 0x57, 0x74, 0xd3, 0x9e, 0xfd, 0xc9, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_334_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0xa8, 0xbd, 0xf4, 0x65, 0x32, 0xd8, 0x13, 0x6b, 0xeb, 0x21, 0xdb, 0xf1, 0x78, 0x09, 0x0c, 0x7e, 0x7d, 0xad, 0x2c, 0xaa, 0x8e, 0xb5, 0x2c, 0xef, 0x8d, 0x83, 0x0f, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_334 = { .name = "ecdsa_brainpoolp224r1_sha224_334", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_334_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_334_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_334_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 269 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 335 for ECDSA, tcId is 270 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_335_pubkey[] = { 0xd6, 0xa1, 0x6e, 0x19, 0x4e, 0x12, 0xb9, 0x6d, 0xb8, 0xe1, 0xbb, 0x02, 0x50, 0xd9, 0x50, 0xf7, 0xb3, 0x12, 0x9b, 0x14, 0xbb, 0xa0, 0xef, 0xb1, 0x57, 0xc4, 0x42, 0x3e, 0x62, 0x5a, 0x0c, 0x8c, 0x20, 0x83, 0x8b, 0xd9, 0x7f, 0xbc, 0x89, 0xf1, 0x67, 0x00, 0x28, 0x75, 0x4a, 0x09, 0xad, 0x28, 0xf6, 0x2d, 0xe5, 0xee, 0xa6, 0xe0, 0x7b, 0xc1, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_335_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x73, 0x16, 0x8a, 0x89, 0x94, 0xe5, 0xf7, 0x17, 0x93, 0x08, 0x1c, 0xb7, 0xaf, 0xbe, 0x3c, 0x0a, 0xf4, 0xbf, 0x7a, 0xa3, 0x36, 0xcf, 0x9d, 0xe3, 0x1e, 0xf8, 0x53, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_335 = { .name = "ecdsa_brainpoolp224r1_sha224_335", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_335_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_335_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_335_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 270 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 336 for ECDSA, tcId is 271 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_336_pubkey[] = { 0xc0, 0x12, 0x95, 0x0d, 0x07, 0x4b, 0xb0, 0x1b, 0x0a, 0x19, 0x88, 0xa5, 0xb5, 0x9b, 0x95, 0x91, 0x04, 0x27, 0x5b, 0xaf, 0x75, 0x7e, 0x53, 0x02, 0x9b, 0x04, 0x6a, 0x15, 0x42, 0xf5, 0x0f, 0xe2, 0x7f, 0x3e, 0xba, 0xc9, 0x03, 0x65, 0x58, 0xef, 0x30, 0xeb, 0xcb, 0x81, 0x20, 0x27, 0xbf, 0x0e, 0xf4, 0x6c, 0xda, 0x51, 0x96, 0x95, 0x41, 0xbb, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_336_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x73, 0x16, 0x8a, 0x89, 0x94, 0xe5, 0xf7, 0x17, 0x93, 0x08, 0x1c, 0xb7, 0xaf, 0xbe, 0x3c, 0x0a, 0xf4, 0xbf, 0x7a, 0xa3, 0x36, 0xcf, 0x9d, 0xe3, 0x1e, 0xf8, 0x53, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_336 = { .name = "ecdsa_brainpoolp224r1_sha224_336", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_336_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_336_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_336_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 271 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 337 for ECDSA, tcId is 272 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_337_pubkey[] = { 0xd1, 0x5c, 0x13, 0xa1, 0xbe, 0x99, 0xd9, 0xeb, 0x77, 0xd6, 0x88, 0x10, 0x4a, 0x18, 0xe2, 0x42, 0x42, 0xd2, 0x05, 0xa4, 0x02, 0x6f, 0x4a, 0x65, 0x62, 0x9e, 0x59, 0xee, 0x7e, 0x3d, 0xdf, 0x9a, 0xbb, 0xb7, 0xd5, 0x32, 0xb6, 0xe8, 0x1a, 0x6e, 0x11, 0xf3, 0x0d, 0x5b, 0x55, 0xfe, 0xb8, 0xee, 0x70, 0x7c, 0x4f, 0xed, 0xf9, 0x9c, 0x06, 0x07, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_337_sig[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x1f, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_337 = { .name = "ecdsa_brainpoolp224r1_sha224_337", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_337_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_337_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_337_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 272 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 338 for ECDSA, tcId is 273 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_338_pubkey[] = { 0x3f, 0xe0, 0x19, 0x72, 0xc0, 0x62, 0x2e, 0xa8, 0x12, 0xd3, 0x06, 0x52, 0xc9, 0xfe, 0x2f, 0xeb, 0xee, 0x70, 0x81, 0x23, 0xb1, 0x62, 0x6d, 0x74, 0x4f, 0x87, 0xdb, 0x0d, 0xa5, 0x72, 0xc7, 0xe1, 0xe3, 0xa4, 0x81, 0x95, 0xe6, 0x22, 0x1d, 0x98, 0x3f, 0x78, 0x2f, 0xdc, 0x9e, 0x7c, 0x55, 0xbd, 0x5f, 0xdf, 0x7b, 0x67, 0x9b, 0x0f, 0x87, 0x56, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_338_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_338 = { .name = "ecdsa_brainpoolp224r1_sha224_338", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_338_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_338_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_338_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 273 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 339 for ECDSA, tcId is 274 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_339_pubkey[] = { 0x3f, 0xe0, 0x19, 0x72, 0xc0, 0x62, 0x2e, 0xa8, 0x12, 0xd3, 0x06, 0x52, 0xc9, 0xfe, 0x2f, 0xeb, 0xee, 0x70, 0x81, 0x23, 0xb1, 0x62, 0x6d, 0x74, 0x4f, 0x87, 0xdb, 0x0d, 0xa5, 0x72, 0xc7, 0xe1, 0xe3, 0xa4, 0x81, 0x95, 0xe6, 0x22, 0x1d, 0x98, 0x3f, 0x78, 0x2f, 0xdc, 0x9e, 0x7c, 0x55, 0xbd, 0x5f, 0xdf, 0x7b, 0x67, 0x9b, 0x0f, 0x87, 0x56, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_339_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_339 = { .name = "ecdsa_brainpoolp224r1_sha224_339", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_339_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_339_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_339_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 274 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 340 for ECDSA, tcId is 275 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_340_pubkey[] = { 0xd4, 0xb6, 0xe5, 0x11, 0x24, 0x06, 0xfb, 0x74, 0x3b, 0x6b, 0xb5, 0x5f, 0x49, 0xea, 0x20, 0x30, 0xd9, 0x04, 0x42, 0x08, 0x31, 0xeb, 0xdd, 0xac, 0xd6, 0x7b, 0xba, 0x89, 0x65, 0x22, 0x65, 0x38, 0x4b, 0x75, 0xd8, 0x50, 0xe7, 0xc2, 0x7f, 0x4e, 0x33, 0xed, 0x6c, 0x57, 0x6d, 0xf0, 0xff, 0x96, 0x94, 0x70, 0xa9, 0xef, 0x25, 0xff, 0xaf, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_340_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xcf, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_340 = { .name = "ecdsa_brainpoolp224r1_sha224_340", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_340_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_340_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_340_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 275 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 341 for ECDSA, tcId is 276 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_341_pubkey[] = { 0x16, 0xc2, 0x12, 0x9d, 0x54, 0xb9, 0x34, 0x79, 0xb5, 0x6a, 0x9f, 0xf5, 0xb8, 0x3e, 0x4c, 0x75, 0x0b, 0xb4, 0xf3, 0x3e, 0xe1, 0xe7, 0x0f, 0x38, 0xb5, 0x44, 0x9f, 0x2d, 0x34, 0xcc, 0xaf, 0x79, 0xc5, 0x1c, 0x7d, 0xff, 0x3a, 0x7f, 0x9a, 0x05, 0xcd, 0x15, 0xa3, 0x96, 0xe0, 0xcf, 0xfe, 0x25, 0x42, 0x1c, 0x37, 0xe9, 0xb8, 0x0e, 0x14, 0x89, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_341_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_341 = { .name = "ecdsa_brainpoolp224r1_sha224_341", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_341_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_341_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_341_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 276 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 342 for ECDSA, tcId is 277 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_342_pubkey[] = { 0x65, 0xab, 0xa0, 0xe4, 0x42, 0x7a, 0x0a, 0xe5, 0x58, 0x72, 0x1a, 0x5a, 0x8e, 0x72, 0xcb, 0x37, 0x62, 0xeb, 0x50, 0x22, 0x3b, 0xbe, 0x4c, 0x41, 0xa4, 0x50, 0xfe, 0x49, 0xc8, 0x1d, 0x3a, 0xe4, 0x86, 0x47, 0x8b, 0x42, 0x98, 0xc9, 0x43, 0x28, 0x3d, 0x2e, 0xc2, 0x13, 0x0b, 0xac, 0x22, 0xfa, 0xbc, 0x52, 0xf7, 0x43, 0xb1, 0xab, 0x7f, 0xa7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_342_sig[] = { 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, 0x6b, 0xe0, 0x9a, 0x55, 0x13, 0x21, 0xb3, 0x43, 0x15, 0x0c, 0x18, 0x12, 0xba, 0xe8, 0x7d, 0xcc, 0x68, 0x8b, 0x5e, 0x25, 0xb6, 0xef, 0x5e, 0x51, 0xd2, 0xd3, 0xc9, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_342 = { .name = "ecdsa_brainpoolp224r1_sha224_342", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_342_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_342_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_342_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 277 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 343 for ECDSA, tcId is 278 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_343_pubkey[] = { 0x55, 0xa7, 0xb0, 0x10, 0x06, 0x13, 0xfa, 0xbd, 0x95, 0x7b, 0x42, 0x60, 0x08, 0x35, 0xc6, 0xd4, 0x2e, 0x01, 0xe0, 0x42, 0x52, 0x59, 0x3b, 0xdd, 0xe3, 0xb1, 0x72, 0x78, 0x87, 0x70, 0x8a, 0x05, 0xab, 0xa2, 0xf9, 0x3f, 0x1a, 0x1e, 0x1e, 0xcb, 0x70, 0x3e, 0xc9, 0xa8, 0xee, 0x6d, 0x60, 0x13, 0xa1, 0x01, 0xd3, 0x97, 0x01, 0x2a, 0x8c, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_343_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_343 = { .name = "ecdsa_brainpoolp224r1_sha224_343", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_343_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_343_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_343_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 278 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 344 for ECDSA, tcId is 279 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_344_pubkey[] = { 0x1a, 0xda, 0x54, 0xdc, 0x01, 0x58, 0x61, 0x68, 0x0d, 0x8b, 0xb2, 0xd3, 0x11, 0xb9, 0x0e, 0x82, 0xdb, 0x75, 0xaa, 0x9e, 0x82, 0x17, 0xb9, 0x26, 0x11, 0xfa, 0x03, 0xcb, 0x84, 0xc6, 0x11, 0x55, 0x11, 0x97, 0x29, 0x8b, 0x32, 0x74, 0x87, 0x5c, 0xb9, 0x46, 0x86, 0xe7, 0x58, 0xf0, 0xa1, 0xa9, 0x67, 0x5c, 0x0b, 0xc1, 0x57, 0x45, 0x1a, 0x76, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_344_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_344 = { .name = "ecdsa_brainpoolp224r1_sha224_344", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_344_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_344_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_344_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 279 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 345 for ECDSA, tcId is 280 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_345_pubkey[] = { 0xc6, 0x7b, 0x64, 0x29, 0x78, 0x53, 0x34, 0xa6, 0x08, 0xdd, 0xe9, 0x49, 0xa8, 0xab, 0xe6, 0x41, 0xdb, 0xd3, 0x60, 0x1e, 0xbc, 0xe1, 0xe6, 0x75, 0xfe, 0x71, 0xa8, 0xe5, 0x27, 0xd2, 0xe8, 0x72, 0x7d, 0xc4, 0xf6, 0x18, 0x49, 0x35, 0x50, 0xbb, 0x94, 0x01, 0x51, 0xbc, 0xa6, 0x82, 0x6f, 0x71, 0x4c, 0x5b, 0x31, 0x85, 0x40, 0x38, 0xf4, 0x4d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_345_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_345 = { .name = "ecdsa_brainpoolp224r1_sha224_345", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_345_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_345_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_345_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 280 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 346 for ECDSA, tcId is 281 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_346_pubkey[] = { 0x1d, 0xcc, 0x7a, 0x5a, 0xd1, 0x11, 0xa3, 0x36, 0x27, 0xf9, 0x2d, 0xd8, 0x75, 0xba, 0x4a, 0x06, 0xf6, 0xa7, 0xc2, 0xbe, 0xfd, 0xd1, 0x05, 0x04, 0x88, 0xd0, 0x57, 0xa7, 0x34, 0x1c, 0xae, 0x0b, 0xe7, 0x2a, 0x99, 0x77, 0x6d, 0xb5, 0xbd, 0x79, 0xb4, 0x63, 0xe2, 0xd3, 0x88, 0x27, 0x64, 0xaf, 0x9c, 0x02, 0x45, 0xd0, 0x84, 0xa3, 0x34, 0x2d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_346_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x8f, 0xd6, 0x23, 0x1c, 0x19, 0x82, 0x44, 0x59, 0x71, 0x65, 0x75, 0x6e, 0x4e, 0x8b, 0x52, 0x65, 0xe0, 0xb9, 0xd2, 0xdc, 0xf3, 0xe9, 0xd3, 0x17, 0xc3, 0xc5, 0x0d, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_346 = { .name = "ecdsa_brainpoolp224r1_sha224_346", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_346_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_346_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_346_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 281 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 347 for ECDSA, tcId is 282 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_347_pubkey[] = { 0xbd, 0xf7, 0x08, 0xa0, 0x1c, 0x6a, 0x81, 0x47, 0x28, 0xd3, 0x94, 0xb7, 0xf2, 0x9b, 0xf6, 0x57, 0x97, 0x34, 0x86, 0x2d, 0x8a, 0xf8, 0xe6, 0xff, 0x78, 0x6f, 0xbe, 0x49, 0x90, 0x1c, 0xd4, 0x62, 0x94, 0x6e, 0x5e, 0x36, 0xcc, 0x97, 0xc9, 0x89, 0x6d, 0xf2, 0xe1, 0x81, 0x77, 0x45, 0x6d, 0x28, 0x2a, 0x7a, 0x26, 0xa3, 0x80, 0x84, 0xc0, 0x86, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_347_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xb6, 0xea, 0x09, 0xc6, 0xec, 0x5e, 0x04, 0x84, 0xb9, 0x4f, 0x25, 0xd8, 0x90, 0x14, 0x5b, 0x0a, 0xe3, 0xff, 0xbb, 0x98, 0xb7, 0x16, 0xad, 0xdd, 0x92, 0xde, 0xbd, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_347 = { .name = "ecdsa_brainpoolp224r1_sha224_347", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_347_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_347_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_347_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 282 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 348 for ECDSA, tcId is 283 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_348_pubkey[] = { 0x0c, 0x53, 0x1f, 0xb3, 0xd9, 0x96, 0xfa, 0xa2, 0x24, 0x07, 0xdf, 0x13, 0x05, 0xff, 0x6a, 0xe0, 0xbf, 0xe9, 0x4e, 0x1c, 0x20, 0x22, 0xf4, 0x73, 0x0d, 0x0f, 0x8a, 0x4a, 0xbd, 0x80, 0x73, 0x95, 0x04, 0x59, 0x56, 0x2e, 0x53, 0x9a, 0xc0, 0x89, 0x54, 0x33, 0x75, 0x7e, 0x25, 0x20, 0x9b, 0x12, 0x53, 0x4f, 0xf3, 0x0f, 0xe3, 0xd3, 0x7c, 0x71, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_348_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x2f, 0x62, 0xa9, 0xcf, 0x48, 0xe3, 0xca, 0x60, 0x2e, 0xef, 0x4e, 0x33, 0xaf, 0xa4, 0x3f, 0x2d, 0xce, 0xb9, 0x22, 0xa4, 0x0a, 0x67, 0xde, 0x79, 0xf7, 0xb1, 0xae, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_348 = { .name = "ecdsa_brainpoolp224r1_sha224_348", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_348_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_348_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_348_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 283 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 349 for ECDSA, tcId is 284 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_349_pubkey[] = { 0x67, 0x82, 0x95, 0x40, 0x82, 0x41, 0x8e, 0x00, 0x02, 0xa0, 0x81, 0x26, 0x72, 0xac, 0x21, 0x23, 0xb6, 0x33, 0x4b, 0x34, 0x13, 0x40, 0x55, 0x50, 0x96, 0xbc, 0xf6, 0xc6, 0x1f, 0x6f, 0xa1, 0xa8, 0xfe, 0xa6, 0x17, 0xd9, 0xdd, 0xa1, 0x44, 0x61, 0xd6, 0x3a, 0xa4, 0x48, 0xf2, 0x05, 0xa3, 0x9b, 0x25, 0x50, 0x1a, 0x6b, 0x1d, 0x42, 0xee, 0x5f, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_349_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x61, 0x8d, 0xfc, 0x54, 0x40, 0x8b, 0xec, 0x1c, 0xb3, 0x7c, 0x7e, 0xe5, 0x2b, 0x60, 0xad, 0xbc, 0x8d, 0x3a, 0x6c, 0x26, 0x45, 0x7c, 0x39, 0xd0, 0x13, 0xe8, 0x8e, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_349 = { .name = "ecdsa_brainpoolp224r1_sha224_349", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_349_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_349_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_349_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 284 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 350 for ECDSA, tcId is 285 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_350_pubkey[] = { 0x5b, 0x5e, 0x6e, 0xab, 0xa7, 0x59, 0x7a, 0xe6, 0x41, 0x42, 0x0a, 0xce, 0x6a, 0xf2, 0x57, 0x58, 0x39, 0xf1, 0x61, 0xb2, 0x7b, 0x91, 0xb2, 0x70, 0xf1, 0x8b, 0xf7, 0xd0, 0x49, 0x6a, 0xb3, 0xc3, 0x07, 0x2f, 0xa6, 0xee, 0x55, 0x78, 0xfc, 0x81, 0x4f, 0x74, 0xd1, 0x48, 0xec, 0xbc, 0x2a, 0x98, 0xcf, 0xdc, 0x5d, 0x40, 0xec, 0x7e, 0x69, 0x80, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_350_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x01, 0x0d, 0xe5, 0x71, 0x24, 0xc0, 0x93, 0x0e, 0xf8, 0x00, 0xe7, 0x64, 0xb5, 0x58, 0x59, 0x27, 0x97, 0x7e, 0x2a, 0xd2, 0xd8, 0xb8, 0x2e, 0x7c, 0xb6, 0x48, 0xaf, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_350 = { .name = "ecdsa_brainpoolp224r1_sha224_350", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_350_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_350_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_350_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 285 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 351 for ECDSA, tcId is 286 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_351_pubkey[] = { 0x8e, 0x66, 0x1a, 0x06, 0xad, 0x55, 0xb5, 0x22, 0x78, 0x01, 0xea, 0x43, 0x09, 0xa7, 0x2b, 0x9c, 0xd9, 0x49, 0x73, 0xbc, 0x87, 0x3c, 0x04, 0x05, 0xe1, 0x24, 0x7d, 0x1e, 0x64, 0x89, 0x8b, 0x82, 0x2c, 0x36, 0x3c, 0xac, 0x88, 0x21, 0x30, 0x2d, 0xe3, 0x8a, 0x91, 0x42, 0x68, 0xaa, 0xa6, 0x7d, 0xb2, 0x56, 0x18, 0x78, 0xf0, 0xf9, 0x0a, 0x02, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_351_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x03, 0x3e, 0xf5, 0x01, 0x0b, 0xec, 0xed, 0x04, 0xc4, 0x92, 0x88, 0x68, 0x51, 0x3e, 0xd1, 0x87, 0x8c, 0xe6, 0x77, 0xa6, 0xed, 0x81, 0x0e, 0x9b, 0x99, 0xdd, 0x97, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_351 = { .name = "ecdsa_brainpoolp224r1_sha224_351", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_351_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_351_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_351_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 286 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 352 for ECDSA, tcId is 287 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_352_pubkey[] = { 0xb3, 0xd2, 0xb9, 0x3f, 0x14, 0x88, 0x65, 0x72, 0x62, 0x14, 0x0f, 0x96, 0xc1, 0x08, 0xaa, 0x04, 0x85, 0x93, 0x9b, 0xd9, 0x94, 0x40, 0x24, 0x0a, 0x7a, 0x7d, 0x54, 0xe3, 0x88, 0x96, 0x81, 0x74, 0xb0, 0x61, 0x85, 0x37, 0x39, 0xf8, 0xb0, 0x47, 0x1c, 0x76, 0x12, 0x65, 0x39, 0xdc, 0x57, 0xcc, 0x6d, 0x7c, 0x1f, 0x53, 0x9f, 0x68, 0x66, 0x74, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_352_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x06, 0x7d, 0xea, 0x02, 0x17, 0xd9, 0xda, 0x09, 0x89, 0x25, 0x10, 0xd0, 0xa2, 0x7d, 0xa3, 0x0f, 0x19, 0xcc, 0xef, 0x4d, 0xdb, 0x02, 0x1d, 0x37, 0x33, 0xbb, 0x2f, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_352 = { .name = "ecdsa_brainpoolp224r1_sha224_352", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_352_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_352_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_352_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 287 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 353 for ECDSA, tcId is 288 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_353_pubkey[] = { 0xba, 0x83, 0x0d, 0xbf, 0x83, 0x07, 0x5c, 0xd1, 0x82, 0xbc, 0x93, 0x22, 0xc1, 0xf6, 0x29, 0x9a, 0x4c, 0xe3, 0xcf, 0x4d, 0xdd, 0xe0, 0xe6, 0xfc, 0xee, 0x50, 0xf0, 0xd6, 0x2b, 0x15, 0x3f, 0x6f, 0x37, 0x7a, 0x88, 0x80, 0x9c, 0x9d, 0xd5, 0x0d, 0x8d, 0x61, 0xeb, 0x67, 0x94, 0x51, 0x44, 0x48, 0x16, 0x57, 0x86, 0xa7, 0xc6, 0x55, 0x8d, 0xcc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_353_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x45, 0x84, 0x7e, 0x02, 0xfd, 0x01, 0xa3, 0xcc, 0x9e, 0x06, 0x3f, 0x96, 0x1f, 0xb9, 0x20, 0xab, 0x32, 0x71, 0xec, 0x09, 0x99, 0x6f, 0x75, 0xbc, 0xa7, 0xfe, 0x6d, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_353 = { .name = "ecdsa_brainpoolp224r1_sha224_353", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_353_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_353_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_353_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 288 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 354 for ECDSA, tcId is 289 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_354_pubkey[] = { 0x77, 0xf4, 0x02, 0x22, 0xe4, 0xa7, 0x9a, 0x0f, 0xa7, 0xe5, 0x10, 0x88, 0x7e, 0x69, 0xeb, 0xa3, 0x1f, 0x6d, 0xd7, 0x06, 0x71, 0x21, 0xda, 0xfe, 0x73, 0x9b, 0xbe, 0x13, 0xd0, 0xff, 0xab, 0x72, 0x22, 0xcf, 0x6d, 0x82, 0x7c, 0x51, 0xeb, 0x53, 0xab, 0xac, 0x50, 0x6b, 0xc0, 0xa5, 0xd7, 0xc1, 0xa5, 0xa7, 0xe1, 0x68, 0x3d, 0x49, 0xe4, 0x3e, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_354_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x0b, 0x4c, 0xbe, 0x86, 0x6d, 0x19, 0x20, 0x63, 0x41, 0x38, 0xc8, 0x79, 0x8f, 0xcc, 0x41, 0x47, 0x94, 0x47, 0xe5, 0xae, 0x76, 0x07, 0x94, 0xe1, 0xe5, 0x79, 0x79, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_354 = { .name = "ecdsa_brainpoolp224r1_sha224_354", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_354_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_354_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_354_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 289 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 355 for ECDSA, tcId is 290 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_355_pubkey[] = { 0x59, 0x7b, 0x5a, 0x3c, 0x10, 0x6b, 0x8c, 0x4e, 0x9a, 0x7e, 0x7a, 0x51, 0x7c, 0xd7, 0x40, 0xe7, 0x76, 0x67, 0xc8, 0xa2, 0xd0, 0x6c, 0x51, 0x0e, 0x5e, 0x3b, 0x72, 0x8d, 0x9c, 0xc2, 0x49, 0xe8, 0x27, 0xf5, 0xff, 0xf9, 0x02, 0x12, 0x2e, 0xb2, 0x6b, 0xad, 0xc4, 0xa7, 0xda, 0x65, 0x55, 0xb4, 0x89, 0xba, 0x98, 0x98, 0x2d, 0x38, 0x81, 0x25, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_355_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x20, 0xd7, 0x2a, 0xe3, 0x39, 0xe5, 0x62, 0x01, 0x70, 0xc9, 0x0a, 0x4c, 0xe5, 0xbc, 0xa0, 0x8d, 0xed, 0x17, 0x00, 0xb2, 0xb6, 0xc8, 0x0e, 0xc6, 0x12, 0xc8, 0xd5, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_355 = { .name = "ecdsa_brainpoolp224r1_sha224_355", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_355_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_355_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_355_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 290 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 356 for ECDSA, tcId is 291 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_356_pubkey[] = { 0x0f, 0x24, 0x53, 0xe7, 0x58, 0x5c, 0xb1, 0x39, 0x2f, 0xf4, 0xfa, 0x11, 0x86, 0x9f, 0x8c, 0x10, 0xb2, 0xf9, 0xcf, 0x4f, 0x2a, 0x18, 0xb8, 0x66, 0xe8, 0xf3, 0x7c, 0x2b, 0xd1, 0x56, 0x6e, 0xf0, 0x49, 0x28, 0x79, 0x75, 0x79, 0xd4, 0x0f, 0x33, 0x10, 0xeb, 0xaf, 0x47, 0x7a, 0x4e, 0x78, 0xa2, 0x35, 0x86, 0x19, 0x28, 0x32, 0x86, 0x34, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_356_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x9d, 0x23, 0x5a, 0xa9, 0xe9, 0xf9, 0xc6, 0x45, 0x3e, 0x39, 0xa7, 0x86, 0x13, 0x83, 0x6e, 0xa1, 0x4c, 0x2d, 0xdf, 0x31, 0xc9, 0x1b, 0x74, 0x7a, 0xef, 0x01, 0x0a, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_356 = { .name = "ecdsa_brainpoolp224r1_sha224_356", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_356_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_356_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_356_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 291 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 357 for ECDSA, tcId is 292 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_357_pubkey[] = { 0x10, 0xcb, 0x3d, 0xbc, 0xe4, 0xda, 0x51, 0x8e, 0x04, 0xeb, 0x12, 0x5c, 0xf3, 0xb4, 0x4b, 0xef, 0x04, 0x51, 0xba, 0xd3, 0xe7, 0xcb, 0xba, 0xd5, 0x32, 0x8b, 0x85, 0xbb, 0x35, 0x86, 0x51, 0xb4, 0x78, 0xbc, 0xf2, 0x00, 0x68, 0x4f, 0xd3, 0x10, 0xe6, 0xd1, 0x4a, 0xcd, 0x23, 0xdc, 0x2a, 0x76, 0x04, 0x75, 0xdf, 0x0f, 0x5b, 0x8a, 0x75, 0x8c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_357_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x9c, 0xa7, 0x98, 0x7f, 0x33, 0x67, 0xa9, 0x51, 0x6e, 0xca, 0x57, 0x85, 0x50, 0x98, 0xd4, 0xaa, 0xaf, 0x28, 0x94, 0x38, 0xd9, 0xad, 0x7b, 0x39, 0xdc, 0xc8, 0x11, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_357 = { .name = "ecdsa_brainpoolp224r1_sha224_357", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_357_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_357_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_357_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 292 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 358 for ECDSA, tcId is 293 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_358_pubkey[] = { 0x2c, 0x27, 0x73, 0x2a, 0xaa, 0xa3, 0xf8, 0xb1, 0x66, 0x64, 0xa4, 0x8a, 0x1d, 0xd0, 0x6f, 0xc0, 0xfe, 0x40, 0xf6, 0x57, 0x42, 0x75, 0x1e, 0x5c, 0x04, 0xb7, 0xef, 0xf5, 0x07, 0x80, 0x4b, 0x2d, 0xbe, 0xe7, 0x9f, 0xfe, 0x56, 0xdc, 0x4f, 0x4a, 0x60, 0x62, 0xce, 0xd6, 0xf3, 0x75, 0xb8, 0x0b, 0x5a, 0xd2, 0xcf, 0x3a, 0x29, 0x21, 0xb3, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_358_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x72, 0x95, 0xbc, 0x38, 0xb7, 0x6b, 0xcc, 0xd7, 0x63, 0x5d, 0x65, 0x61, 0xd1, 0xf0, 0x53, 0xdd, 0x9b, 0x07, 0x94, 0x19, 0x24, 0x9f, 0x94, 0x36, 0x8c, 0x8d, 0x31, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_358 = { .name = "ecdsa_brainpoolp224r1_sha224_358", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_358_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_358_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_358_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 293 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 359 for ECDSA, tcId is 294 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_359_pubkey[] = { 0x8c, 0xed, 0x55, 0x68, 0x77, 0xee, 0x15, 0xaf, 0x31, 0x4a, 0xed, 0x5d, 0xfc, 0x43, 0xa0, 0x0f, 0xbb, 0x76, 0x26, 0xfb, 0xdc, 0x7b, 0x81, 0xff, 0x7d, 0xbe, 0xa2, 0xf8, 0x98, 0xf5, 0xe2, 0x6f, 0x7f, 0xc3, 0x27, 0x6d, 0xa2, 0xa8, 0xe8, 0x69, 0xb0, 0xaf, 0xbc, 0x41, 0xef, 0x3b, 0x40, 0x32, 0x60, 0x80, 0xaa, 0x85, 0xce, 0x62, 0xc2, 0xab, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_359_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x93, 0x8f, 0x2d, 0xb2, 0xb7, 0x20, 0x61, 0xab, 0xd7, 0xeb, 0x6e, 0x5c, 0x8f, 0xe6, 0x85, 0x39, 0x1e, 0x96, 0x6e, 0xc0, 0xc7, 0x69, 0xd0, 0xc5, 0x38, 0xe0, 0x67, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_359 = { .name = "ecdsa_brainpoolp224r1_sha224_359", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_359_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_359_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_359_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 294 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 360 for ECDSA, tcId is 295 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_360_pubkey[] = { 0x42, 0xb1, 0x9b, 0x22, 0x50, 0x6c, 0x4f, 0xd8, 0x9f, 0xa2, 0x8c, 0x59, 0x09, 0xd9, 0x7f, 0x8f, 0xfe, 0xbd, 0xc8, 0x28, 0x04, 0xdc, 0xc7, 0xbf, 0x6a, 0x57, 0x0a, 0xe2, 0x1a, 0x97, 0x4e, 0xe0, 0x8b, 0x48, 0x4f, 0xa0, 0x5e, 0x1f, 0xbb, 0x89, 0xc4, 0x8c, 0x50, 0x75, 0x4b, 0xa1, 0xe4, 0x0a, 0x65, 0x8a, 0x5c, 0xed, 0x40, 0x9c, 0x63, 0x61, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_360_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x7f, 0x90, 0x7c, 0x8e, 0x32, 0xe6, 0x0e, 0x2b, 0xa4, 0x03, 0x3e, 0xe7, 0xd6, 0x5f, 0x3f, 0xe8, 0xfd, 0x23, 0x71, 0x9c, 0x7a, 0x9c, 0x6f, 0x5e, 0x52, 0xf1, 0x8c, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_360 = { .name = "ecdsa_brainpoolp224r1_sha224_360", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_360_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_360_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_360_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 295 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 361 for ECDSA, tcId is 296 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_361_pubkey[] = { 0x20, 0x95, 0xe1, 0x21, 0x16, 0xce, 0xbd, 0xd4, 0xe8, 0xbc, 0x1c, 0xc1, 0x84, 0xb5, 0x38, 0xb1, 0x51, 0x5f, 0x78, 0x9e, 0x3b, 0xe4, 0xb0, 0x3a, 0x41, 0x83, 0xfa, 0xe5, 0xd0, 0x92, 0x6e, 0x44, 0x68, 0x75, 0xab, 0xdc, 0xd1, 0x2c, 0x82, 0x39, 0xe6, 0x07, 0x96, 0x1c, 0xad, 0xd0, 0x0a, 0x2e, 0x89, 0x9d, 0x82, 0x1d, 0xb1, 0x1d, 0x56, 0x79, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_361_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x34, 0xc3, 0x97, 0x8c, 0x3a, 0x1d, 0xac, 0x92, 0x1f, 0x62, 0x35, 0xc8, 0x2a, 0x02, 0xed, 0xb9, 0x34, 0x22, 0x85, 0x46, 0x94, 0x26, 0xbb, 0x10, 0xf8, 0x28, 0x97, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_361 = { .name = "ecdsa_brainpoolp224r1_sha224_361", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_361_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_361_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_361_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 296 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 362 for ECDSA, tcId is 297 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_362_pubkey[] = { 0x58, 0xf8, 0x2e, 0xb2, 0xca, 0x6e, 0x34, 0x74, 0xa9, 0x0e, 0x29, 0xac, 0x56, 0xdc, 0xb6, 0x3d, 0x88, 0xe6, 0x69, 0xe0, 0xa4, 0x02, 0x04, 0xe6, 0x20, 0x2a, 0xf7, 0xc5, 0xa0, 0xe8, 0x5e, 0x40, 0x39, 0xf3, 0x43, 0x25, 0x5b, 0x4f, 0xe4, 0xbd, 0xc1, 0x19, 0x1a, 0x78, 0x45, 0xbd, 0xd7, 0xeb, 0x90, 0x8e, 0xcd, 0x87, 0x79, 0xa2, 0x79, 0x63, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_362_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x97, 0x01, 0xd6, 0x52, 0x3d, 0x3d, 0x3f, 0x5b, 0x8a, 0xc8, 0x40, 0x26, 0x80, 0xb3, 0xca, 0xb8, 0x96, 0x6e, 0x26, 0x51, 0xcf, 0xc1, 0x73, 0x9f, 0xcd, 0x3c, 0x07, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_362 = { .name = "ecdsa_brainpoolp224r1_sha224_362", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_362_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_362_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_362_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 297 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 363 for ECDSA, tcId is 298 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_363_pubkey[] = { 0x71, 0xf2, 0xc4, 0xa7, 0xc3, 0xf7, 0x13, 0x11, 0xa7, 0x93, 0x45, 0x8f, 0xf1, 0x22, 0x62, 0xa8, 0x63, 0x51, 0x8f, 0xb3, 0x0d, 0xbb, 0x7a, 0x80, 0x70, 0x10, 0x30, 0xb8, 0xb6, 0xb0, 0x84, 0x28, 0xfa, 0xbd, 0xb6, 0x9c, 0x8a, 0x8e, 0x9e, 0x32, 0x7d, 0xae, 0xd0, 0x79, 0x5f, 0xb8, 0x4e, 0x0d, 0x88, 0x17, 0x08, 0x60, 0x22, 0xd3, 0xb2, 0x3b, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_363_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x56, 0x42, 0x77, 0xfa, 0x54, 0x37, 0x18, 0x30, 0xeb, 0x78, 0x50, 0x27, 0x8b, 0x96, 0x99, 0xd8, 0x5b, 0xc5, 0x90, 0x58, 0x31, 0xa4, 0x2a, 0x9b, 0xf4, 0xd0, 0x7a, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_363 = { .name = "ecdsa_brainpoolp224r1_sha224_363", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_363_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_363_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_363_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 298 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 364 for ECDSA, tcId is 299 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_364_pubkey[] = { 0x3c, 0xfc, 0xf6, 0x4e, 0xec, 0xe9, 0x94, 0xc3, 0x5c, 0x56, 0xe9, 0x15, 0xe4, 0xed, 0x18, 0x83, 0xba, 0x6e, 0xc3, 0x4f, 0xe3, 0x96, 0xc1, 0x1a, 0xcd, 0x8f, 0x47, 0xd2, 0x63, 0xcd, 0xfb, 0xaa, 0x34, 0x40, 0x11, 0x00, 0xb5, 0xb1, 0x0a, 0xf7, 0x71, 0xbb, 0x46, 0xc0, 0xd5, 0x34, 0x46, 0xf7, 0xaa, 0x84, 0x79, 0x56, 0xc9, 0x36, 0x34, 0x94, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_364_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x77, 0x94, 0xfb, 0xde, 0xe6, 0x38, 0xf6, 0x57, 0xac, 0x1e, 0x4c, 0x65, 0x28, 0x4c, 0x14, 0x4b, 0x3e, 0xfa, 0x7b, 0xf4, 0x10, 0x9e, 0x6c, 0xca, 0x60, 0x5c, 0x4f, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_364 = { .name = "ecdsa_brainpoolp224r1_sha224_364", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_364_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_364_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_364_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 299 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 365 for ECDSA, tcId is 300 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_365_pubkey[] = { 0x4c, 0x40, 0x4d, 0xec, 0xbc, 0x06, 0x97, 0xb2, 0x07, 0xfa, 0x08, 0x98, 0x2e, 0xf0, 0xfe, 0xdb, 0x00, 0x1e, 0xeb, 0x43, 0xf3, 0x74, 0x04, 0xda, 0xb9, 0x7a, 0x9a, 0x77, 0x47, 0x19, 0x1b, 0xc2, 0x40, 0xdf, 0xd4, 0x40, 0x27, 0x4e, 0x06, 0x95, 0x56, 0x11, 0xf9, 0x92, 0x3f, 0xad, 0x69, 0x49, 0xb2, 0xcc, 0x15, 0x7a, 0x18, 0x5c, 0x82, 0x29, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_365_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xb5, 0x20, 0x0d, 0xa7, 0xa4, 0x58, 0x37, 0xf5, 0xb7, 0x1c, 0x47, 0xe1, 0xb9, 0x4c, 0x78, 0x62, 0xa1, 0xe4, 0xbe, 0xcb, 0xa3, 0x0a, 0x90, 0x8a, 0xda, 0x21, 0x94, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_365 = { .name = "ecdsa_brainpoolp224r1_sha224_365", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_365_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_365_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_365_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 300 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 366 for ECDSA, tcId is 301 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_366_pubkey[] = { 0x7b, 0xe4, 0xb0, 0xea, 0x0b, 0x15, 0xb9, 0x6f, 0x91, 0x31, 0x2c, 0x15, 0xc8, 0x16, 0x29, 0xe4, 0x0c, 0x44, 0x18, 0xf7, 0x0b, 0x86, 0xc5, 0xbc, 0xdc, 0x25, 0x8f, 0xd9, 0x79, 0xcb, 0xef, 0x8e, 0xa2, 0xa7, 0x7c, 0xa0, 0x92, 0xdb, 0x0e, 0xb9, 0x54, 0xa9, 0xe3, 0x3e, 0x82, 0xb9, 0xc5, 0xf1, 0x10, 0xc8, 0xc9, 0x90, 0xb9, 0x23, 0x5a, 0x57, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_366_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x65, 0x2b, 0x78, 0x71, 0x6e, 0xd7, 0x99, 0xae, 0xc6, 0xba, 0xca, 0xc3, 0xa3, 0xe0, 0xa7, 0xbb, 0x36, 0x0f, 0x28, 0x32, 0x49, 0x3f, 0x28, 0x6d, 0x19, 0x1a, 0x62, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_366 = { .name = "ecdsa_brainpoolp224r1_sha224_366", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_366_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_366_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_366_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 301 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 367 for ECDSA, tcId is 302 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_367_pubkey[] = { 0x64, 0xa6, 0x4c, 0xff, 0xa5, 0x40, 0x66, 0x49, 0x92, 0x64, 0x99, 0x1e, 0x47, 0xa0, 0xf1, 0x4b, 0xca, 0x63, 0x19, 0xa1, 0xc2, 0x7e, 0x15, 0x08, 0xe2, 0x01, 0x6b, 0x56, 0xbd, 0xa7, 0xc1, 0x7a, 0x04, 0xd9, 0xcb, 0x88, 0xea, 0xdb, 0x72, 0x96, 0xcf, 0x87, 0xdf, 0xbf, 0xad, 0xfe, 0x65, 0x05, 0x68, 0x37, 0xa7, 0x97, 0xd6, 0x69, 0x97, 0xdd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_367_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x97, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_367 = { .name = "ecdsa_brainpoolp224r1_sha224_367", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_367_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_367_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_367_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 302 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 368 for ECDSA, tcId is 303 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_368_pubkey[] = { 0x3d, 0x4c, 0x4e, 0x3c, 0x5b, 0xa7, 0xa5, 0x33, 0xc8, 0xa3, 0x38, 0x6d, 0x6f, 0xf7, 0x7a, 0x81, 0x35, 0x13, 0x46, 0xe1, 0x89, 0x4b, 0x25, 0x60, 0xb4, 0x06, 0xa6, 0x3e, 0xa3, 0x49, 0x77, 0x59, 0x46, 0x79, 0x9e, 0xeb, 0x27, 0x49, 0x26, 0xb4, 0xd9, 0x57, 0x32, 0x8f, 0x6c, 0x7d, 0x50, 0xf6, 0x76, 0x02, 0x91, 0xac, 0xda, 0xeb, 0x11, 0x4f, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_368_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xab, 0xa8, 0xd8, 0x9c, 0x2c, 0x94, 0xba, 0x58, 0xe7, 0x0d, 0xb7, 0x86, 0xa6, 0x18, 0x1d, 0xc0, 0xe7, 0x1d, 0x16, 0xf3, 0xf4, 0x3d, 0x96, 0x00, 0xfc, 0x4c, 0x8f, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_368 = { .name = "ecdsa_brainpoolp224r1_sha224_368", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_368_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_368_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_368_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 303 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 369 for ECDSA, tcId is 304 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_369_pubkey[] = { 0x4d, 0xb8, 0xe8, 0xac, 0x43, 0xf2, 0x2d, 0xf7, 0x5c, 0x9c, 0x09, 0xfe, 0x19, 0x3b, 0x9c, 0xd8, 0x3d, 0x5c, 0x9b, 0x73, 0xf3, 0x7d, 0x14, 0x94, 0x76, 0x17, 0x24, 0xb0, 0xa7, 0x60, 0x82, 0xc3, 0x5d, 0xa8, 0x62, 0xa1, 0xe2, 0xe8, 0x62, 0x6f, 0xfa, 0x94, 0xed, 0x18, 0xfc, 0xb1, 0xd8, 0x97, 0xec, 0x7a, 0xb5, 0x2c, 0x32, 0x25, 0x53, 0xff, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_369_sig[] = { 0x7a, 0xf2, 0x95, 0xe6, 0xe4, 0x78, 0x72, 0x52, 0xf3, 0x4c, 0x52, 0x7a, 0xf5, 0x62, 0xca, 0x27, 0x21, 0x4a, 0x66, 0xf6, 0xd6, 0xdb, 0x4f, 0xd2, 0xc1, 0x12, 0xb5, 0x64, 0xb1, 0xd0, 0x10, 0xf7, 0x40, 0x62, 0xee, 0xaa, 0xc0, 0xce, 0xcb, 0x2c, 0x3c, 0x2c, 0x4d, 0x28, 0x8a, 0x57, 0x6b, 0xf6, 0xf0, 0xa0, 0x03, 0x47, 0xc6, 0xa5, 0xb5, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_369 = { .name = "ecdsa_brainpoolp224r1_sha224_369", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_369_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_369_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_369_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 304 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 370 for ECDSA, tcId is 305 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_370_pubkey[] = { 0x4d, 0xb8, 0xe8, 0xac, 0x43, 0xf2, 0x2d, 0xf7, 0x5c, 0x9c, 0x09, 0xfe, 0x19, 0x3b, 0x9c, 0xd8, 0x3d, 0x5c, 0x9b, 0x73, 0xf3, 0x7d, 0x14, 0x94, 0x76, 0x17, 0x24, 0xb0, 0x30, 0x60, 0xb1, 0xe6, 0xc8, 0x9b, 0x03, 0xe4, 0x47, 0x2f, 0xcd, 0xb5, 0x7b, 0x3c, 0xea, 0x6e, 0xb3, 0xed, 0x2e, 0xbf, 0xab, 0x5f, 0xd4, 0xc9, 0x4c, 0xa3, 0x6d, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_370_sig[] = { 0x7a, 0xf2, 0x95, 0xe6, 0xe4, 0x78, 0x72, 0x52, 0xf3, 0x4c, 0x52, 0x7a, 0xf5, 0x62, 0xca, 0x27, 0x21, 0x4a, 0x66, 0xf6, 0xd6, 0xdb, 0x4f, 0xd2, 0xc1, 0x12, 0xb5, 0x64, 0xb1, 0xd0, 0x10, 0xf7, 0x40, 0x62, 0xee, 0xaa, 0xc0, 0xce, 0xcb, 0x2c, 0x3c, 0x2c, 0x4d, 0x28, 0x8a, 0x57, 0x6b, 0xf6, 0xf0, 0xa0, 0x03, 0x47, 0xc6, 0xa5, 0xb5, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_370 = { .name = "ecdsa_brainpoolp224r1_sha224_370", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_370_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_370_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_370_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 305 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 371 for ECDSA, tcId is 306 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_371_pubkey[] = { 0x2b, 0x92, 0x26, 0x82, 0x08, 0xd5, 0x22, 0x45, 0x0c, 0x42, 0xf3, 0xfc, 0xbd, 0xa4, 0x09, 0xc3, 0xac, 0xe2, 0xa5, 0xf8, 0x57, 0xea, 0x10, 0x61, 0x2c, 0x60, 0x93, 0xf8, 0x31, 0x5e, 0xb2, 0xd4, 0x48, 0x13, 0x4e, 0x71, 0x6b, 0x03, 0x20, 0x78, 0xb6, 0x83, 0x01, 0x62, 0x2e, 0x3c, 0x21, 0x86, 0xab, 0x58, 0x3d, 0x97, 0x6e, 0x76, 0x9f, 0xeb, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_371_sig[] = { 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_371 = { .name = "ecdsa_brainpoolp224r1_sha224_371", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_371_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_371_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_371_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 306 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 372 for ECDSA, tcId is 307 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_372_pubkey[] = { 0x4d, 0x4b, 0xd5, 0x69, 0x3d, 0x86, 0xdd, 0x9a, 0x60, 0x16, 0xba, 0x80, 0x6d, 0x80, 0x31, 0xf9, 0x4d, 0xc8, 0xe2, 0xd3, 0x3c, 0x6f, 0x58, 0x71, 0xa0, 0x0b, 0x64, 0x73, 0x2a, 0x46, 0x62, 0xf2, 0x95, 0x24, 0xec, 0xe7, 0x54, 0x82, 0x8b, 0x9d, 0x82, 0x9c, 0x0a, 0x07, 0x24, 0xd9, 0xbd, 0x9d, 0x28, 0x8d, 0x21, 0xf8, 0x7e, 0x3f, 0xb1, 0xfa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_372_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_372 = { .name = "ecdsa_brainpoolp224r1_sha224_372", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_372_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_372_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_372_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 307 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 373 for ECDSA, tcId is 308 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_373_pubkey[] = { 0xbe, 0x0e, 0xfb, 0x48, 0x41, 0xdf, 0x37, 0xab, 0xcd, 0xcf, 0x3f, 0x28, 0xdd, 0xb0, 0xd5, 0x75, 0x1a, 0x92, 0xa0, 0xfe, 0x7a, 0x3e, 0x88, 0xd1, 0xab, 0x02, 0x83, 0x2c, 0xbb, 0x53, 0xcc, 0xd6, 0x6b, 0x9c, 0x0e, 0x42, 0x43, 0x80, 0x69, 0x3d, 0x64, 0x16, 0xfc, 0x2e, 0x1a, 0x3c, 0x79, 0x3a, 0x35, 0x5f, 0x7d, 0x05, 0xf9, 0x63, 0xf4, 0x35, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_373_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0xb8, 0xee, 0xbf, 0x6d, 0x45, 0x5e, 0x57, 0xe0, 0xb6, 0x5d, 0xe0, 0x20, 0x1b, 0xd7, 0xb3, 0x15, 0x45, 0x81, 0x33, 0xae, 0x5e, 0x2c, 0xa1, 0xb0, 0xd7, 0x21, 0xec, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_373 = { .name = "ecdsa_brainpoolp224r1_sha224_373", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_373_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_373_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_373_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 308 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 374 for ECDSA, tcId is 309 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_374_pubkey[] = { 0xbc, 0x02, 0x72, 0xe3, 0x69, 0x3a, 0x05, 0xe7, 0x88, 0x39, 0x2c, 0x88, 0x0f, 0x9d, 0xe9, 0x5c, 0x72, 0xe2, 0x93, 0xfd, 0x1b, 0x13, 0xf1, 0xe2, 0x2a, 0x99, 0x07, 0xa3, 0x69, 0x95, 0x06, 0xe4, 0x59, 0x0f, 0xa9, 0x0c, 0x62, 0x57, 0xb1, 0xc4, 0xe3, 0x63, 0x2c, 0xcc, 0x48, 0x6c, 0xb8, 0x33, 0xcb, 0xbc, 0xbf, 0x21, 0xb4, 0xa2, 0x60, 0x41, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_374_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0xac, 0x9a, 0x90, 0x88, 0x1e, 0x9c, 0x52, 0x04, 0xee, 0x79, 0xc0, 0x1d, 0xf7, 0xda, 0x62, 0xe0, 0xa7, 0x45, 0x63, 0x6f, 0x8b, 0x18, 0x96, 0xe9, 0x51, 0x52, 0xdc, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_374 = { .name = "ecdsa_brainpoolp224r1_sha224_374", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_374_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_374_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_374_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 309 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 375 for ECDSA, tcId is 310 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_375_pubkey[] = { 0xa8, 0x3b, 0xc3, 0xe9, 0x04, 0x3c, 0xb9, 0x38, 0xda, 0xe1, 0x67, 0xbb, 0xea, 0x2f, 0x7d, 0x62, 0x34, 0x86, 0xf4, 0x03, 0x8d, 0xf4, 0x53, 0x12, 0xe8, 0x46, 0x7b, 0xda, 0x73, 0x63, 0xfa, 0x58, 0xaf, 0x36, 0x3a, 0x71, 0x83, 0x5d, 0xa0, 0x94, 0x13, 0xc8, 0x82, 0x27, 0x84, 0x9c, 0x6f, 0x0f, 0xfe, 0x8e, 0x4e, 0x40, 0xaf, 0xf5, 0x10, 0x23, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_375_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_375 = { .name = "ecdsa_brainpoolp224r1_sha224_375", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_375_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_375_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_375_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 310 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 376 for ECDSA, tcId is 311 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_376_pubkey[] = { 0x3b, 0xd0, 0x8a, 0x1c, 0x46, 0x63, 0x85, 0x64, 0x52, 0x1d, 0xed, 0x3f, 0xa7, 0x7c, 0xe9, 0xc9, 0x55, 0x38, 0xe4, 0x97, 0x03, 0xeb, 0xb9, 0xf8, 0xd3, 0x6b, 0xe6, 0xf7, 0x27, 0x6f, 0xfa, 0x12, 0x80, 0x51, 0x67, 0x1f, 0x7e, 0x4c, 0x63, 0xe9, 0xb8, 0x13, 0x2d, 0xe9, 0xf3, 0x38, 0x9c, 0xc5, 0x25, 0xd7, 0x26, 0x82, 0xb6, 0x01, 0x9e, 0xc3, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_376_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_376 = { .name = "ecdsa_brainpoolp224r1_sha224_376", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_376_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_376_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_376_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 311 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 377 for ECDSA, tcId is 312 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_377_pubkey[] = { 0xa3, 0xdb, 0x2b, 0x3e, 0x2c, 0x62, 0xc4, 0x2b, 0xf4, 0xfb, 0x0e, 0x11, 0xc2, 0x90, 0x8f, 0xd1, 0x7f, 0xe8, 0x3d, 0xa3, 0xac, 0x9c, 0x09, 0x80, 0x23, 0x4e, 0xfd, 0xbd, 0x3c, 0xbe, 0xec, 0x40, 0x27, 0xbd, 0x7c, 0x10, 0x9b, 0x27, 0xae, 0x2f, 0x7c, 0xf0, 0x4d, 0xc6, 0x5e, 0xea, 0xf1, 0x3f, 0xaa, 0x22, 0x4d, 0x32, 0xa2, 0x0f, 0x31, 0x63, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_377_sig[] = { 0x33, 0xb7, 0xe4, 0x98, 0xbc, 0xda, 0x1a, 0x33, 0xe6, 0x1a, 0x67, 0xaf, 0x56, 0xa3, 0x6d, 0x12, 0xdf, 0x70, 0x32, 0x25, 0x5d, 0xdf, 0x5e, 0x1e, 0xc6, 0x5a, 0x56, 0x69, 0x58, 0xe3, 0x75, 0x18, 0xc6, 0xe4, 0x7a, 0x84, 0xde, 0x10, 0xcc, 0xb2, 0x54, 0xc0, 0x36, 0x93, 0x27, 0x11, 0x45, 0xf1, 0x3e, 0x00, 0xa9, 0x12, 0x37, 0xa4, 0xa5, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_377 = { .name = "ecdsa_brainpoolp224r1_sha224_377", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_377_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_377_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_377_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 312 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 378 for ECDSA, tcId is 313 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_378_pubkey[] = { 0x60, 0x6c, 0xe6, 0xf8, 0xc7, 0x7a, 0xc1, 0x7d, 0x5b, 0x75, 0x15, 0xd5, 0x85, 0x1e, 0xed, 0x15, 0x5e, 0xa1, 0x20, 0xcd, 0x07, 0xca, 0x42, 0x77, 0xb3, 0x5b, 0x8d, 0x36, 0x5f, 0x71, 0x6b, 0x62, 0xae, 0xe9, 0xa8, 0x1a, 0x01, 0x1b, 0xd1, 0xd2, 0xbc, 0xea, 0xf3, 0x7d, 0x5f, 0x3a, 0x61, 0xe5, 0xf7, 0x30, 0x7e, 0x0b, 0xb9, 0xc8, 0x92, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_378_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x47, 0xeb, 0x11, 0x8e, 0x0c, 0xc1, 0x22, 0x2c, 0xb8, 0xb2, 0xba, 0xb7, 0x27, 0x45, 0xa9, 0x32, 0xf0, 0x5c, 0xe9, 0x6e, 0x79, 0xf4, 0xe9, 0x8b, 0xe1, 0xe2, 0x86, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_378 = { .name = "ecdsa_brainpoolp224r1_sha224_378", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_378_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_378_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_378_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 313 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 379 for ECDSA, tcId is 314 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_379_pubkey[] = { 0x2a, 0xff, 0xbb, 0x82, 0x69, 0xcb, 0x78, 0x83, 0xda, 0xda, 0x33, 0x50, 0x39, 0x45, 0x79, 0x91, 0x2e, 0xf7, 0x56, 0xa8, 0xdf, 0x6b, 0xdd, 0x7d, 0xa3, 0x5d, 0x39, 0x8e, 0x90, 0x21, 0x3d, 0x93, 0x82, 0xb3, 0xd5, 0xfb, 0x9d, 0xde, 0x82, 0x72, 0x4d, 0x38, 0xe5, 0x67, 0x8c, 0x17, 0xe6, 0x10, 0xf4, 0x17, 0xcf, 0xe6, 0xf7, 0xef, 0xcd, 0x91, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_379_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0xb8, 0xee, 0xbf, 0x6d, 0x45, 0x5e, 0x57, 0xe0, 0xb6, 0x5d, 0xe0, 0x20, 0x1b, 0xd7, 0xb3, 0x15, 0x45, 0x81, 0x33, 0xae, 0x5e, 0x2c, 0xa1, 0xb0, 0xd7, 0x21, 0xec, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_379 = { .name = "ecdsa_brainpoolp224r1_sha224_379", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_379_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_379_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_379_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 314 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 380 for ECDSA, tcId is 315 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_380_pubkey[] = { 0x19, 0xcd, 0xd4, 0x4e, 0x2a, 0x33, 0x11, 0x3a, 0x88, 0x45, 0x58, 0xe7, 0xee, 0x0e, 0xfb, 0x41, 0xba, 0xfe, 0x1a, 0xdc, 0xdc, 0xf9, 0x5d, 0xf6, 0xde, 0x6a, 0x25, 0x11, 0x5f, 0x42, 0x8e, 0xe9, 0x98, 0xa3, 0x48, 0x56, 0xf2, 0xac, 0x3f, 0x6f, 0x39, 0xc7, 0x23, 0x7b, 0xf1, 0xf9, 0xde, 0x23, 0x21, 0x75, 0xd7, 0x47, 0xb5, 0xcd, 0x97, 0xfe, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_380_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0xac, 0x9a, 0x90, 0x88, 0x1e, 0x9c, 0x52, 0x04, 0xee, 0x79, 0xc0, 0x1d, 0xf7, 0xda, 0x62, 0xe0, 0xa7, 0x45, 0x63, 0x6f, 0x8b, 0x18, 0x96, 0xe9, 0x51, 0x52, 0xdc, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_380 = { .name = "ecdsa_brainpoolp224r1_sha224_380", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_380_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_380_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_380_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 315 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 381 for ECDSA, tcId is 316 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_381_pubkey[] = { 0xb7, 0x2f, 0x7c, 0x1a, 0x3c, 0x85, 0x62, 0xcb, 0x8d, 0xe9, 0x92, 0x5e, 0xec, 0x04, 0x1c, 0xcc, 0x26, 0x36, 0x49, 0xc6, 0x52, 0x47, 0x62, 0xb9, 0xf4, 0x58, 0x5e, 0xe3, 0x9d, 0xf7, 0x56, 0xda, 0x08, 0xd1, 0x27, 0x4a, 0xd7, 0x2d, 0x8c, 0xac, 0x29, 0x3a, 0xa6, 0x0d, 0x15, 0x0c, 0x77, 0x13, 0x1f, 0x9f, 0xa2, 0x8c, 0xcd, 0xff, 0xdf, 0xa0, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_381_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x2b, 0x26, 0xa4, 0x22, 0x07, 0xa7, 0x14, 0x81, 0x3b, 0x9e, 0x70, 0x07, 0x7d, 0xf6, 0x98, 0xb8, 0x29, 0xd1, 0x58, 0xdb, 0xe2, 0xc6, 0x25, 0xba, 0x54, 0x54, 0xb7, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_381 = { .name = "ecdsa_brainpoolp224r1_sha224_381", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_381_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_381_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_381_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 316 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 382 for ECDSA, tcId is 317 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_382_pubkey[] = { 0x9d, 0x37, 0x03, 0xb3, 0x20, 0x5b, 0x12, 0x3c, 0x90, 0x3a, 0x04, 0x46, 0x97, 0x32, 0x47, 0xc1, 0x6a, 0x88, 0xd1, 0x03, 0xfe, 0xa9, 0xd0, 0x4d, 0xd0, 0x2a, 0x70, 0x2b, 0x65, 0x18, 0x6b, 0x77, 0x7b, 0x57, 0xea, 0xde, 0xe8, 0x15, 0x4c, 0x02, 0xfc, 0xe0, 0xe9, 0x5c, 0x3f, 0x06, 0x14, 0x68, 0x49, 0x9b, 0xac, 0x3d, 0xc6, 0x02, 0x9e, 0x8c, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_382_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_382 = { .name = "ecdsa_brainpoolp224r1_sha224_382", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_382_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_382_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_382_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 317 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 383 for ECDSA, tcId is 318 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_383_pubkey[] = { 0x3e, 0xa5, 0x72, 0x50, 0x5a, 0x48, 0xb1, 0xbe, 0xd0, 0x85, 0x95, 0x3d, 0xa7, 0xd4, 0xc9, 0x63, 0xc2, 0xc5, 0xb6, 0xad, 0x99, 0x77, 0x9d, 0x9d, 0x54, 0xba, 0x40, 0x12, 0x94, 0x47, 0x00, 0x74, 0xe0, 0x25, 0x2d, 0xa1, 0x59, 0xa0, 0xc0, 0xd0, 0xb2, 0xf8, 0xd4, 0xc2, 0x42, 0xcb, 0x94, 0xba, 0xb2, 0xc2, 0x02, 0x0c, 0x4b, 0x2d, 0xf4, 0x99, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_383_sig[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xe3, 0x75, 0x18, 0xc6, 0xe4, 0x7a, 0x84, 0xde, 0x10, 0xcc, 0xb2, 0x54, 0xc0, 0x36, 0x93, 0x27, 0x11, 0x45, 0xf1, 0x3e, 0x00, 0xa9, 0x12, 0x37, 0xa4, 0xa5, 0x47, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_383 = { .name = "ecdsa_brainpoolp224r1_sha224_383", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_383_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_383_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_383_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 318 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 384 for ECDSA, tcId is 319 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_384_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xaa, 0x56, 0xf7, 0x72, 0xc0, 0x72, 0x6f, 0x24, 0xc6, 0xb8, 0x9e, 0x4e, 0xcd, 0xac, 0x24, 0x35, 0x4b, 0x9e, 0x99, 0xca, 0xa3, 0xf6, 0xd3, 0x76, 0x14, 0x02, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_384_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_384 = { .name = "ecdsa_brainpoolp224r1_sha224_384", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_384_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_384_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_384_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 319 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 385 for ECDSA, tcId is 320 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_385_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x58, 0xaa, 0x56, 0xf7, 0x72, 0xc0, 0x72, 0x6f, 0x24, 0xc6, 0xb8, 0x9e, 0x4e, 0xcd, 0xac, 0x24, 0x35, 0x4b, 0x9e, 0x99, 0xca, 0xa3, 0xf6, 0xd3, 0x76, 0x14, 0x02, 0xcd, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_385_sig[] = { 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_385 = { .name = "ecdsa_brainpoolp224r1_sha224_385", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_385_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_385_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_385_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 320 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 386 for ECDSA, tcId is 321 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_386_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x7f, 0x16, 0xdd, 0xb2, 0xb3, 0x82, 0xf4, 0x17, 0x05, 0x51, 0x77, 0x87, 0x27, 0x04, 0x2b, 0x63, 0x7b, 0x53, 0x68, 0xbd, 0xcd, 0x36, 0x93, 0x22, 0x08, 0xb4, 0xbe, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_386_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_386 = { .name = "ecdsa_brainpoolp224r1_sha224_386", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_386_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_386_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_386_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 321 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 387 for ECDSA, tcId is 322 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_387_pubkey[] = { 0x0d, 0x90, 0x29, 0xad, 0x2c, 0x7e, 0x5c, 0xf4, 0x34, 0x08, 0x23, 0xb2, 0xa8, 0x7d, 0xc6, 0x8c, 0x9e, 0x4c, 0xe3, 0x17, 0x4c, 0x1e, 0x6e, 0xfd, 0xee, 0x12, 0xc0, 0x7d, 0x7f, 0x16, 0xdd, 0xb2, 0xb3, 0x82, 0xf4, 0x17, 0x05, 0x51, 0x77, 0x87, 0x27, 0x04, 0x2b, 0x63, 0x7b, 0x53, 0x68, 0xbd, 0xcd, 0x36, 0x93, 0x22, 0x08, 0xb4, 0xbe, 0x32, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_387_sig[] = { 0x62, 0x85, 0x80, 0xa9, 0xad, 0xb0, 0x26, 0x04, 0x52, 0x5b, 0x1e, 0xe6, 0xb1, 0x35, 0xe1, 0xa9, 0xc7, 0x45, 0x02, 0x18, 0x24, 0x58, 0x2c, 0x52, 0x38, 0x5a, 0x81, 0x73, 0x1e, 0xd2, 0x75, 0x3c, 0xe0, 0xe5, 0x0e, 0xa5, 0x73, 0xba, 0x50, 0x05, 0x59, 0xf9, 0x48, 0x83, 0x8b, 0x95, 0x88, 0x9d, 0x0f, 0xb2, 0x1a, 0xf2, 0xce, 0x85, 0xa7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_387 = { .name = "ecdsa_brainpoolp224r1_sha224_387", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_387_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_387_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_387_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 322 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 388 for ECDSA, tcId is 323 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_388_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_388_sig[] = { 0xb9, 0x82, 0xbe, 0xa8, 0x0d, 0x10, 0x81, 0x6b, 0xb4, 0x50, 0xa3, 0xfa, 0xaa, 0xed, 0x4e, 0xd5, 0x4f, 0xb1, 0x97, 0xb3, 0xbf, 0xf9, 0x5a, 0xf2, 0x5d, 0x7d, 0x37, 0x86, 0x9e, 0x6e, 0xa2, 0xe5, 0x87, 0x13, 0xf1, 0x30, 0x4d, 0x29, 0xde, 0xbf, 0x85, 0x59, 0xa7, 0x4a, 0x89, 0xe0, 0x18, 0xba, 0xe2, 0x8b, 0x05, 0x55, 0x6e, 0x54, 0x82, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_388 = { .name = "ecdsa_brainpoolp224r1_sha224_388", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_388_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp224r1_sha224_388_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 323 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 389 for ECDSA, tcId is 324 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_389_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_389_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_389_sig[] = { 0x4d, 0xab, 0xc5, 0xfe, 0x96, 0x2b, 0x5f, 0x8a, 0x66, 0x81, 0xe9, 0x4a, 0x21, 0x65, 0xd9, 0xb6, 0xbe, 0x19, 0x40, 0xf2, 0x0e, 0x27, 0xce, 0xb7, 0x3f, 0xc4, 0xea, 0x7d, 0x74, 0x6e, 0x9b, 0xba, 0x7e, 0xfb, 0x90, 0xfc, 0xec, 0xc2, 0x63, 0xc2, 0x29, 0xa1, 0x6d, 0x80, 0x9d, 0x35, 0x47, 0xc2, 0x8a, 0x26, 0xcd, 0x71, 0xa5, 0x2a, 0xbd, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_389 = { .name = "ecdsa_brainpoolp224r1_sha224_389", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_389_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_389_msg, .msglen = 3, .sig = ecdsa_brainpoolp224r1_sha224_389_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 324 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 390 for ECDSA, tcId is 325 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_390_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_390_sig[] = { 0x95, 0xb1, 0x1e, 0x32, 0x00, 0x07, 0xa2, 0xe0, 0xf8, 0xce, 0x00, 0xf9, 0x05, 0x8c, 0xa9, 0xb9, 0x19, 0xe8, 0xd6, 0xaa, 0xd5, 0x44, 0xa8, 0xf9, 0x80, 0x8b, 0x44, 0xa1, 0x15, 0xa9, 0x62, 0x01, 0x9c, 0x85, 0xa5, 0xb1, 0xfa, 0x74, 0x74, 0x16, 0x2d, 0x03, 0xcd, 0x0e, 0x52, 0x8e, 0x8b, 0x93, 0xbc, 0xc8, 0x49, 0x20, 0xaf, 0x57, 0x9f, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_390 = { .name = "ecdsa_brainpoolp224r1_sha224_390", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_390_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_390_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha224_390_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 325 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 391 for ECDSA, tcId is 326 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_391_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_391_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_391_sig[] = { 0x9e, 0x4d, 0xab, 0x9e, 0x0b, 0x00, 0x97, 0xe3, 0x65, 0x78, 0x3f, 0xc0, 0x5f, 0x01, 0x0c, 0x16, 0x0d, 0x36, 0x1d, 0xf7, 0x92, 0x5b, 0x0d, 0xdb, 0xdf, 0xec, 0xe8, 0x8b, 0x84, 0x06, 0xa3, 0x65, 0xf0, 0x78, 0xf0, 0x31, 0xe6, 0xfa, 0xd6, 0x51, 0x1d, 0x69, 0xf8, 0xa6, 0x54, 0x83, 0xc1, 0x9a, 0x5a, 0x80, 0x0c, 0x39, 0x49, 0x0f, 0x75, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_391 = { .name = "ecdsa_brainpoolp224r1_sha224_391", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_391_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_391_msg, .msglen = 20, .sig = ecdsa_brainpoolp224r1_sha224_391_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 326 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 392 for ECDSA, tcId is 327 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_392_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_392_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_392_sig[] = { 0x0c, 0x93, 0xfd, 0x7f, 0x6d, 0xd0, 0xb6, 0x97, 0xd5, 0xc2, 0x87, 0xee, 0x61, 0xae, 0xe4, 0xdc, 0xbe, 0xdc, 0xc2, 0x08, 0x85, 0xc1, 0xe6, 0x21, 0x5b, 0x8b, 0x36, 0x08, 0x3b, 0xc7, 0xa1, 0xbe, 0xcc, 0xf1, 0xa8, 0xe8, 0x3a, 0xf2, 0xf5, 0x16, 0x2f, 0xc5, 0x39, 0xa1, 0xd0, 0x62, 0xbd, 0x63, 0x9a, 0x2f, 0xbe, 0xc5, 0x12, 0x90, 0x7a, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_392 = { .name = "ecdsa_brainpoolp224r1_sha224_392", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_392_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_392_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_392_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 327 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 393 for ECDSA, tcId is 328 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_393_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_393_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_393_sig[] = { 0x9e, 0x0b, 0x62, 0x0a, 0x2f, 0x31, 0x3a, 0xda, 0x75, 0x64, 0x63, 0xa2, 0x29, 0x88, 0xaf, 0xb6, 0x57, 0x1b, 0x3b, 0x03, 0x0a, 0x42, 0x85, 0xb1, 0x85, 0xe1, 0xcc, 0x80, 0xc3, 0xeb, 0xa0, 0x4c, 0x42, 0xe6, 0x4d, 0x40, 0x28, 0xac, 0xab, 0xcd, 0xcb, 0x7b, 0x2e, 0xed, 0x1b, 0x3c, 0xfb, 0x56, 0x0b, 0x8d, 0x7d, 0x14, 0xfb, 0x26, 0xac, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_393 = { .name = "ecdsa_brainpoolp224r1_sha224_393", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_393_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_393_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_393_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 328 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 394 for ECDSA, tcId is 329 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_394_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_394_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_394_sig[] = { 0xa3, 0x06, 0xf5, 0x00, 0xda, 0x4f, 0x0a, 0x30, 0x94, 0x64, 0x79, 0x93, 0x6a, 0xaf, 0x9c, 0x63, 0x76, 0x76, 0xb0, 0xf0, 0x2d, 0x20, 0xae, 0x0d, 0x98, 0x1c, 0x25, 0xeb, 0x01, 0x56, 0x47, 0xf2, 0x50, 0x0b, 0xcb, 0xe3, 0x20, 0x4b, 0xdb, 0x80, 0x49, 0x72, 0xb8, 0x41, 0x89, 0x0b, 0x4e, 0x53, 0x19, 0x6c, 0xd8, 0xb1, 0x88, 0x99, 0x31, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_394 = { .name = "ecdsa_brainpoolp224r1_sha224_394", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_394_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_394_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_394_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 329 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 395 for ECDSA, tcId is 330 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_395_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_395_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_395_sig[] = { 0x04, 0xf0, 0x0d, 0xd4, 0x4f, 0xdd, 0x8a, 0xe6, 0xb0, 0x8b, 0x86, 0xcc, 0xbd, 0xd7, 0xd6, 0x15, 0xaa, 0x9e, 0x49, 0x8a, 0x89, 0xb3, 0x50, 0x94, 0xc8, 0xa9, 0xa6, 0xfe, 0x49, 0x61, 0x7a, 0x16, 0x17, 0xc5, 0x6c, 0xe9, 0x0d, 0x41, 0xc5, 0x3e, 0xef, 0x4e, 0x62, 0x8f, 0x24, 0xc0, 0x47, 0xa0, 0x6e, 0x02, 0xc1, 0xf9, 0x21, 0x23, 0x44, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_395 = { .name = "ecdsa_brainpoolp224r1_sha224_395", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_395_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_395_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_395_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 330 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 396 for ECDSA, tcId is 331 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_396_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_396_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_396_sig[] = { 0x12, 0x86, 0xf6, 0xa7, 0x37, 0x5b, 0xf6, 0x80, 0x51, 0xe3, 0x1b, 0x2e, 0x32, 0xb5, 0xf6, 0xc0, 0x98, 0x8c, 0x91, 0x89, 0x79, 0x92, 0x56, 0xe7, 0xce, 0x64, 0xe2, 0x91, 0x52, 0xd3, 0xc1, 0xf9, 0xe7, 0x77, 0xf2, 0x3c, 0x17, 0xcb, 0xc8, 0x32, 0xd0, 0xe5, 0xa8, 0x4b, 0xb6, 0x8b, 0x13, 0xde, 0xbf, 0x39, 0x38, 0x78, 0xd1, 0xa0, 0x64, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_396 = { .name = "ecdsa_brainpoolp224r1_sha224_396", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_396_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_396_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_396_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 331 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 397 for ECDSA, tcId is 332 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_397_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_397_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_397_sig[] = { 0x58, 0x28, 0x25, 0xdf, 0x23, 0x68, 0xdc, 0xb9, 0x2f, 0xbb, 0xa3, 0xfa, 0x64, 0x54, 0xd1, 0x49, 0xd3, 0xb8, 0x60, 0xe3, 0xff, 0x32, 0x6a, 0xfe, 0x36, 0x21, 0x58, 0x13, 0x49, 0x33, 0x4f, 0xc6, 0xa7, 0x04, 0x18, 0xdb, 0xc4, 0x54, 0xda, 0x6a, 0x99, 0x7b, 0xc8, 0x37, 0x62, 0x70, 0xc3, 0xa3, 0x88, 0x63, 0xad, 0xb2, 0xaa, 0x70, 0xbb, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_397 = { .name = "ecdsa_brainpoolp224r1_sha224_397", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_397_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_397_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_397_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 332 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 398 for ECDSA, tcId is 333 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_398_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_398_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_398_sig[] = { 0x5a, 0x11, 0x71, 0x8c, 0x90, 0xa0, 0x24, 0x59, 0x80, 0x0f, 0x10, 0x9e, 0x4e, 0x84, 0x0c, 0xc2, 0x61, 0xd7, 0x82, 0xd6, 0x4e, 0x1c, 0x8a, 0x47, 0x12, 0xdd, 0x90, 0x81, 0xd2, 0x83, 0xb1, 0xc1, 0xe1, 0x10, 0xa4, 0x62, 0x0a, 0x69, 0x6f, 0xdf, 0x74, 0xa9, 0xc7, 0x79, 0x23, 0x52, 0x13, 0x9d, 0x54, 0xcc, 0xed, 0x8c, 0x97, 0x3d, 0x9e, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_398 = { .name = "ecdsa_brainpoolp224r1_sha224_398", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_398_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_398_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_398_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 333 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 399 for ECDSA, tcId is 334 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_399_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_399_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_399_sig[] = { 0xd5, 0x77, 0xf2, 0x3e, 0x59, 0x24, 0x14, 0xe3, 0x51, 0xb3, 0x92, 0x8a, 0x59, 0x3c, 0x5d, 0x2f, 0x89, 0xf0, 0xc7, 0x2d, 0xf5, 0x13, 0xbf, 0xbc, 0x65, 0x35, 0xba, 0xbb, 0x1b, 0xb0, 0x9d, 0xd2, 0x35, 0x12, 0x4a, 0x14, 0xe0, 0x24, 0x69, 0x46, 0xf2, 0x80, 0x45, 0x0f, 0x15, 0x57, 0x69, 0x12, 0xae, 0xb7, 0x35, 0xb7, 0x3c, 0xe8, 0x28, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_399 = { .name = "ecdsa_brainpoolp224r1_sha224_399", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_399_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_399_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_399_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 334 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 400 for ECDSA, tcId is 335 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_400_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_400_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_400_sig[] = { 0xaf, 0x8f, 0x83, 0x6e, 0x63, 0x99, 0x5d, 0xc7, 0x15, 0xa4, 0xd3, 0xc6, 0x84, 0x2c, 0x4e, 0x6c, 0x6c, 0xf4, 0x58, 0x6d, 0xf7, 0x6e, 0x46, 0x59, 0xd8, 0x09, 0xee, 0xc9, 0x85, 0xbe, 0xfd, 0x0b, 0x1b, 0xb8, 0xae, 0x18, 0x2c, 0x05, 0xd0, 0x71, 0xda, 0xd1, 0x80, 0x22, 0x4d, 0x22, 0x53, 0x3d, 0xce, 0x73, 0x7d, 0x4d, 0xda, 0x74, 0xd5, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_400 = { .name = "ecdsa_brainpoolp224r1_sha224_400", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_400_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_400_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_400_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 335 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 401 for ECDSA, tcId is 336 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_401_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_401_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_401_sig[] = { 0x15, 0x6a, 0xa7, 0x86, 0x92, 0xc7, 0x8e, 0x97, 0x69, 0xab, 0xa7, 0x28, 0xc9, 0xee, 0xa7, 0x88, 0x35, 0xb5, 0x50, 0x00, 0x90, 0x1b, 0xa5, 0x07, 0x94, 0xa3, 0x3e, 0xfc, 0xb9, 0x78, 0x5d, 0xf4, 0x0a, 0x22, 0x13, 0x37, 0x74, 0x81, 0x31, 0x1b, 0x1a, 0x81, 0xd3, 0x10, 0xe7, 0x63, 0x41, 0x92, 0x7b, 0x8f, 0xba, 0x0d, 0x6e, 0x3e, 0xc7, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_401 = { .name = "ecdsa_brainpoolp224r1_sha224_401", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_401_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_401_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_401_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 336 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 402 for ECDSA, tcId is 337 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_402_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_402_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_402_sig[] = { 0x92, 0x74, 0xd4, 0x6a, 0x7f, 0xfa, 0x12, 0x99, 0xa3, 0x72, 0xe8, 0x21, 0xbd, 0x89, 0x72, 0x8d, 0xe8, 0x3e, 0xf8, 0x7c, 0x46, 0xaf, 0x67, 0x04, 0x3a, 0x63, 0x4b, 0x02, 0x19, 0xe4, 0xbb, 0xec, 0x8b, 0x03, 0xfa, 0x77, 0x2a, 0x36, 0x22, 0xbf, 0x48, 0x93, 0xe5, 0x81, 0xef, 0xad, 0xf9, 0xd2, 0x0b, 0xd6, 0x08, 0x06, 0xd8, 0x26, 0x76, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_402 = { .name = "ecdsa_brainpoolp224r1_sha224_402", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_402_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_402_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_402_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 337 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 403 for ECDSA, tcId is 338 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_403_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_403_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_403_sig[] = { 0xcf, 0x6a, 0x9c, 0xba, 0x28, 0x5e, 0x56, 0x49, 0x3c, 0xbb, 0x46, 0x2b, 0x7b, 0x16, 0x12, 0x8a, 0x0c, 0xf1, 0xc7, 0x05, 0x84, 0x47, 0x94, 0x5d, 0xae, 0xf3, 0x41, 0x49, 0x29, 0xa6, 0x87, 0x83, 0x9e, 0x8e, 0xe0, 0x3c, 0x53, 0x72, 0xa1, 0x13, 0x73, 0x3c, 0x08, 0x1f, 0x41, 0x3d, 0x1f, 0x94, 0x05, 0xdd, 0xfe, 0x47, 0xe1, 0x8f, 0xcc, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_403 = { .name = "ecdsa_brainpoolp224r1_sha224_403", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_403_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_403_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_403_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 338 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 404 for ECDSA, tcId is 339 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_404_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_404_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_404_sig[] = { 0x59, 0x2e, 0x54, 0xa0, 0xea, 0x95, 0x0a, 0xc7, 0xcd, 0x83, 0x0f, 0x56, 0xc7, 0x95, 0x4a, 0x76, 0x9f, 0x81, 0xaa, 0x55, 0xe8, 0xe1, 0x01, 0xbe, 0xe1, 0x9b, 0x3b, 0x27, 0x48, 0x37, 0x5f, 0xdd, 0x4d, 0x90, 0x14, 0xc9, 0xb6, 0x0b, 0x63, 0xc7, 0x0b, 0xfe, 0x98, 0xc8, 0x44, 0xbe, 0x66, 0x8f, 0x2d, 0x3a, 0x2e, 0x25, 0x92, 0x62, 0xb9, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_404 = { .name = "ecdsa_brainpoolp224r1_sha224_404", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_404_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_404_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_404_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 339 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 405 for ECDSA, tcId is 340 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_405_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_405_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_405_sig[] = { 0x1e, 0xc0, 0xef, 0x4d, 0x5b, 0xed, 0xaf, 0xe5, 0x08, 0x1f, 0x7a, 0xda, 0xe3, 0x2d, 0xb4, 0xd0, 0xaa, 0x94, 0x6f, 0x13, 0x0a, 0xce, 0xda, 0xba, 0xe2, 0x6d, 0x90, 0xdc, 0x62, 0x7e, 0x81, 0xd7, 0xeb, 0x35, 0x8f, 0x59, 0xe8, 0xa8, 0x63, 0x05, 0x27, 0xd4, 0xe8, 0x94, 0x6d, 0x1c, 0xad, 0x21, 0x96, 0x76, 0x18, 0x36, 0xd9, 0x7d, 0x95, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_405 = { .name = "ecdsa_brainpoolp224r1_sha224_405", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_405_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_405_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_405_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 340 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 406 for ECDSA, tcId is 341 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_406_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_406_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_406_sig[] = { 0x5f, 0xaf, 0x03, 0x5e, 0xd5, 0x77, 0x4e, 0xeb, 0x0a, 0xdc, 0x18, 0x7f, 0xf4, 0x85, 0xa8, 0x46, 0xaa, 0x2a, 0xbc, 0xf1, 0xe7, 0xf8, 0x59, 0xb1, 0xb9, 0x10, 0xf2, 0x5c, 0x8b, 0xf1, 0x2a, 0x1c, 0x00, 0xb1, 0x8f, 0x66, 0xc2, 0x28, 0x35, 0x2d, 0xe4, 0x9c, 0xc4, 0xfb, 0x82, 0x7a, 0x09, 0xfc, 0x86, 0xf7, 0x22, 0xce, 0x56, 0x1b, 0xa5, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_406 = { .name = "ecdsa_brainpoolp224r1_sha224_406", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_406_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_406_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_406_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 341 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 407 for ECDSA, tcId is 342 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_407_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_407_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_407_sig[] = { 0x52, 0xb2, 0xd3, 0x69, 0xf1, 0x8d, 0xf5, 0x63, 0x72, 0xaf, 0xe7, 0xfe, 0xb3, 0x84, 0x13, 0xf2, 0x32, 0xb4, 0xfb, 0x9c, 0xa1, 0x6c, 0x6f, 0x6f, 0xed, 0xc6, 0x41, 0x89, 0xc1, 0xb1, 0x9f, 0x13, 0x77, 0x73, 0xef, 0x32, 0x01, 0xcd, 0x34, 0x1c, 0x38, 0x1e, 0x4f, 0x94, 0x49, 0xcc, 0x0e, 0x6c, 0x68, 0x8a, 0x35, 0x1d, 0x7a, 0x60, 0x70, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_407 = { .name = "ecdsa_brainpoolp224r1_sha224_407", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_407_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_407_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_407_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 342 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 408 for ECDSA, tcId is 343 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_408_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_408_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_408_sig[] = { 0x5b, 0x88, 0x9d, 0x28, 0x8a, 0xaa, 0x81, 0x67, 0x4d, 0x32, 0x00, 0x6e, 0x81, 0x27, 0x9c, 0x57, 0xed, 0x56, 0xa0, 0x35, 0xc8, 0x78, 0xd3, 0xe2, 0xb6, 0x87, 0xbe, 0xc3, 0x0d, 0xa6, 0x21, 0xd5, 0xfa, 0x98, 0x13, 0x26, 0x3c, 0x7f, 0x58, 0xf8, 0xe0, 0x15, 0x5d, 0x6f, 0x0c, 0x33, 0x0a, 0x56, 0xc5, 0x94, 0xde, 0xfc, 0x2e, 0xbd, 0xf0, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_408 = { .name = "ecdsa_brainpoolp224r1_sha224_408", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_408_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_408_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_408_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 343 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 409 for ECDSA, tcId is 344 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_409_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_409_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_409_sig[] = { 0xb6, 0xf8, 0xa8, 0x01, 0x87, 0x18, 0x0a, 0xad, 0x8a, 0x5c, 0x89, 0x6b, 0xe2, 0x14, 0x31, 0x46, 0x01, 0xa1, 0x58, 0x5f, 0x2c, 0xcb, 0x28, 0xbc, 0x7e, 0x8e, 0x8f, 0x01, 0xa9, 0x0c, 0x68, 0xc1, 0x4a, 0x67, 0xf5, 0xd5, 0x9c, 0xec, 0x70, 0xdc, 0x0f, 0x47, 0x3b, 0x5c, 0x14, 0x01, 0x3b, 0x05, 0x6d, 0x12, 0xcb, 0xc0, 0xf7, 0x15, 0x3b, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_409 = { .name = "ecdsa_brainpoolp224r1_sha224_409", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_409_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_409_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_409_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 344 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 410 for ECDSA, tcId is 345 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_410_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_410_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_410_sig[] = { 0x16, 0xd4, 0xa8, 0x50, 0x9c, 0x9b, 0xce, 0x2c, 0x73, 0xf8, 0xdb, 0x4b, 0x73, 0x25, 0x7c, 0x7e, 0x33, 0xf4, 0x17, 0x26, 0xc2, 0x5c, 0x4c, 0x64, 0x54, 0x6b, 0x1d, 0xcc, 0x79, 0xba, 0x35, 0xa9, 0x6d, 0x23, 0x45, 0xad, 0x19, 0x4f, 0x39, 0x10, 0x91, 0x20, 0x9d, 0xfc, 0xce, 0xd7, 0x99, 0x17, 0xe0, 0x4d, 0xf3, 0xb6, 0x5f, 0x44, 0xd1, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_410 = { .name = "ecdsa_brainpoolp224r1_sha224_410", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_410_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_410_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_410_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 345 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 411 for ECDSA, tcId is 346 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_411_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_411_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_411_sig[] = { 0x5d, 0xa1, 0x56, 0x97, 0xbb, 0xe4, 0xeb, 0xa7, 0x70, 0x7e, 0x34, 0x9f, 0xf3, 0x23, 0x9d, 0x50, 0x84, 0x55, 0x37, 0x81, 0x13, 0xd2, 0x4e, 0x7e, 0x1d, 0x7a, 0x02, 0x0c, 0x45, 0xbe, 0x44, 0xa5, 0x70, 0xfb, 0x53, 0x0c, 0x49, 0xd7, 0x59, 0x71, 0x2c, 0x10, 0x04, 0x13, 0x45, 0xf7, 0xc0, 0x89, 0x0a, 0x79, 0x46, 0xd9, 0x1d, 0x32, 0xba, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_411 = { .name = "ecdsa_brainpoolp224r1_sha224_411", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_411_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_411_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_411_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 346 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 412 for ECDSA, tcId is 347 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_412_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_412_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_412_sig[] = { 0xc1, 0xf8, 0xd4, 0x34, 0x79, 0xc4, 0xf2, 0x9b, 0x19, 0xb9, 0xb2, 0xc7, 0xb5, 0x74, 0x70, 0x10, 0x49, 0x14, 0x40, 0x74, 0x6c, 0xc8, 0x00, 0xd5, 0xbe, 0x89, 0xb0, 0x11, 0x81, 0x54, 0x34, 0x8b, 0x7c, 0x37, 0xf0, 0x50, 0x4d, 0xca, 0x2b, 0x11, 0x59, 0x41, 0xf7, 0xba, 0x58, 0x57, 0x32, 0x1e, 0xae, 0x8f, 0x64, 0x17, 0x5b, 0xe9, 0xcb, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_412 = { .name = "ecdsa_brainpoolp224r1_sha224_412", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_412_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_412_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_412_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 347 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 413 for ECDSA, tcId is 348 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_413_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_413_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_413_sig[] = { 0x87, 0x15, 0x81, 0xb5, 0x00, 0x92, 0x57, 0x82, 0x11, 0x16, 0x0e, 0x47, 0x0d, 0xdd, 0xaa, 0x64, 0x0d, 0x5a, 0x2d, 0x9e, 0x22, 0x4f, 0xaf, 0xca, 0x87, 0x91, 0x06, 0xd4, 0xbe, 0x70, 0xfd, 0x5c, 0x75, 0x91, 0xa3, 0x13, 0x0f, 0x5c, 0x2a, 0xf5, 0x36, 0xff, 0xff, 0x8e, 0x72, 0xc1, 0x62, 0x51, 0x74, 0x4c, 0x97, 0x96, 0x8f, 0x92, 0x17, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_413 = { .name = "ecdsa_brainpoolp224r1_sha224_413", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_413_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_413_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_413_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 348 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 414 for ECDSA, tcId is 349 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_414_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_414_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_414_sig[] = { 0xa9, 0x87, 0x35, 0xe5, 0x65, 0x90, 0x22, 0xb0, 0x27, 0x4a, 0xe6, 0xf7, 0xbc, 0xb1, 0x64, 0x6e, 0x9e, 0x6b, 0x4b, 0x88, 0x40, 0x8d, 0xb3, 0xf9, 0x26, 0xec, 0xcc, 0x89, 0xa9, 0x23, 0xff, 0x5e, 0x15, 0xe0, 0xd7, 0x64, 0xcd, 0x5c, 0xef, 0xff, 0xc5, 0xc4, 0x0c, 0x08, 0x2c, 0x6e, 0xb7, 0x72, 0xdb, 0x76, 0x62, 0xfb, 0x1b, 0x82, 0xd5, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_414 = { .name = "ecdsa_brainpoolp224r1_sha224_414", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_414_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_414_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_414_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 349 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 415 for ECDSA, tcId is 350 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_415_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_415_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_415_sig[] = { 0xa9, 0x6b, 0x5c, 0x24, 0xe3, 0x3d, 0x59, 0x00, 0x4c, 0xf3, 0x1a, 0xae, 0xf4, 0x4a, 0xe4, 0xc7, 0x57, 0x9e, 0x0b, 0x5b, 0x21, 0x9a, 0xb2, 0x5d, 0x7f, 0x1c, 0x69, 0x0a, 0x88, 0xc0, 0x13, 0x78, 0x84, 0x7c, 0x38, 0x41, 0xf4, 0x9e, 0xc1, 0x48, 0x40, 0xe2, 0xd0, 0x23, 0xd7, 0xb9, 0x12, 0xb5, 0x03, 0xf2, 0xd9, 0x8a, 0x92, 0x3b, 0xe8, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_415 = { .name = "ecdsa_brainpoolp224r1_sha224_415", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_415_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_415_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_415_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 350 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 416 for ECDSA, tcId is 351 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_416_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_416_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_416_sig[] = { 0x6b, 0x57, 0xb7, 0x3a, 0xb7, 0xc3, 0x9b, 0x56, 0x98, 0x54, 0x9d, 0xd5, 0xcd, 0xd4, 0xdf, 0x73, 0x98, 0x18, 0x1b, 0x55, 0x6e, 0x7c, 0x72, 0x83, 0x37, 0x5e, 0x3f, 0x86, 0x9f, 0x59, 0xd1, 0x86, 0x3d, 0x6f, 0xd6, 0x01, 0x32, 0x47, 0xd4, 0xe6, 0x78, 0xa1, 0xc4, 0xfc, 0x1d, 0x89, 0x6d, 0xc6, 0x61, 0xfa, 0x31, 0xfb, 0x73, 0xc3, 0x3f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_416 = { .name = "ecdsa_brainpoolp224r1_sha224_416", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_416_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_416_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_416_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 351 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 417 for ECDSA, tcId is 352 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_417_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_417_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_417_sig[] = { 0x2f, 0x85, 0xaf, 0x7e, 0x53, 0x5f, 0x66, 0xcf, 0xc9, 0xa9, 0xda, 0xb7, 0xbe, 0x78, 0x16, 0x31, 0xdd, 0x62, 0x2b, 0xe4, 0x35, 0xd7, 0x64, 0x2b, 0x5b, 0x51, 0xfc, 0xc7, 0x61, 0x93, 0x01, 0xc2, 0x1c, 0x93, 0x42, 0x55, 0xdf, 0x93, 0xee, 0xdd, 0x5b, 0x45, 0x9c, 0x8d, 0xd2, 0x80, 0xfd, 0xd0, 0x7e, 0xe6, 0x56, 0xa7, 0x14, 0x7d, 0x4d, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_417 = { .name = "ecdsa_brainpoolp224r1_sha224_417", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_417_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_417_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_417_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 352 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 418 for ECDSA, tcId is 353 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_418_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_418_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_418_sig[] = { 0x98, 0xa8, 0xa9, 0x8f, 0xcc, 0x82, 0xf8, 0x04, 0xa8, 0x23, 0xcc, 0x91, 0x07, 0x24, 0x37, 0xcf, 0xd8, 0x83, 0x22, 0xb8, 0x67, 0x16, 0x86, 0x51, 0x7f, 0x19, 0x78, 0xab, 0x6a, 0xc3, 0xe8, 0x37, 0x76, 0x68, 0x5b, 0xce, 0xce, 0xfe, 0xba, 0xe4, 0x73, 0xac, 0x07, 0xc7, 0x71, 0xe8, 0x3b, 0x0c, 0x5a, 0x55, 0x7e, 0xfe, 0x83, 0x50, 0x20, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_418 = { .name = "ecdsa_brainpoolp224r1_sha224_418", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_418_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_418_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_418_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 353 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 419 for ECDSA, tcId is 354 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_419_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_419_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_419_sig[] = { 0x69, 0x9c, 0x40, 0xb7, 0x35, 0x23, 0x6b, 0xd9, 0x23, 0x97, 0x70, 0xa5, 0xde, 0x2c, 0x1a, 0x75, 0x54, 0x63, 0x1e, 0x6b, 0xa6, 0xef, 0x51, 0x2f, 0x85, 0x53, 0xd0, 0x2f, 0x0b, 0xca, 0x9c, 0x51, 0x6c, 0xa4, 0x05, 0xff, 0xc9, 0xae, 0x2d, 0xce, 0xe1, 0x2a, 0xd7, 0xd9, 0x6b, 0x58, 0x6b, 0xfd, 0xc8, 0x18, 0xa3, 0xd4, 0x5d, 0xcf, 0xcf, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_419 = { .name = "ecdsa_brainpoolp224r1_sha224_419", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_419_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_419_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_419_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 354 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 420 for ECDSA, tcId is 355 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_420_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_420_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_420_sig[] = { 0x76, 0x8a, 0x81, 0x9d, 0x39, 0x43, 0xfc, 0x30, 0x78, 0x1a, 0xae, 0xf2, 0x8f, 0xa1, 0x20, 0x18, 0x4c, 0x72, 0x12, 0xd0, 0x91, 0x1f, 0xe0, 0x3d, 0xfc, 0x8c, 0x62, 0x60, 0x51, 0xb3, 0xdb, 0x0e, 0x1c, 0x3e, 0x93, 0x91, 0x49, 0xcc, 0xbf, 0x9d, 0x46, 0x19, 0xbb, 0xbf, 0xf0, 0xe2, 0xe1, 0x74, 0x11, 0x0f, 0x6e, 0xce, 0x43, 0x13, 0xb4, 0xca, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_420 = { .name = "ecdsa_brainpoolp224r1_sha224_420", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_420_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_420_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_420_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 355 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 421 for ECDSA, tcId is 356 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_421_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_421_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_421_sig[] = { 0x58, 0xfc, 0xc0, 0xff, 0xb1, 0x25, 0xc2, 0x3c, 0x43, 0x57, 0x35, 0xb7, 0xc3, 0x90, 0x69, 0x20, 0x37, 0xc0, 0x3a, 0x67, 0x65, 0xef, 0x7b, 0x53, 0x65, 0xa1, 0x7d, 0xd4, 0x95, 0x18, 0xd2, 0x9d, 0x78, 0xed, 0xa9, 0xcb, 0x25, 0x03, 0xfd, 0xe3, 0x8d, 0x3b, 0x73, 0xd6, 0xfb, 0x90, 0xa0, 0xd4, 0x0a, 0x23, 0xf0, 0xec, 0x26, 0x16, 0x69, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_421 = { .name = "ecdsa_brainpoolp224r1_sha224_421", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_421_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_421_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_421_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 356 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 422 for ECDSA, tcId is 357 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_422_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_422_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_422_sig[] = { 0xd1, 0x93, 0xee, 0x0a, 0x3d, 0x42, 0xa2, 0x3a, 0xf0, 0x18, 0xab, 0x90, 0x89, 0x6b, 0x35, 0xd5, 0xc2, 0x50, 0x18, 0x7b, 0xf9, 0xfb, 0x1c, 0xca, 0xc3, 0x64, 0x74, 0x8c, 0xa0, 0x92, 0x2a, 0xcc, 0xc7, 0x56, 0x2d, 0x01, 0x71, 0x09, 0xe9, 0x1d, 0x2f, 0x83, 0xe4, 0x8b, 0xfa, 0x3c, 0x1f, 0xa2, 0xee, 0x04, 0xd8, 0x46, 0x9b, 0xe9, 0x40, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_422 = { .name = "ecdsa_brainpoolp224r1_sha224_422", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_422_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_422_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_422_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 357 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 423 for ECDSA, tcId is 358 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_423_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_423_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_423_sig[] = { 0x09, 0x74, 0x52, 0x1d, 0x7c, 0xe7, 0x53, 0xde, 0xa5, 0xd1, 0x15, 0x6f, 0xb4, 0xd9, 0x92, 0xcc, 0x61, 0x40, 0x79, 0xeb, 0x86, 0x77, 0xab, 0x36, 0xa4, 0x07, 0x8a, 0x4f, 0x83, 0x74, 0xdf, 0xba, 0xe8, 0xd0, 0x42, 0x9a, 0x6f, 0xba, 0x60, 0xfb, 0xb5, 0xd2, 0xfd, 0x55, 0x98, 0x56, 0xa5, 0xd7, 0x39, 0xf3, 0x9a, 0xa2, 0xbf, 0x1d, 0xa1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_423 = { .name = "ecdsa_brainpoolp224r1_sha224_423", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_423_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_423_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_423_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 358 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 424 for ECDSA, tcId is 359 in file ecdsa_brainpoolP224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_brainpoolp224r1_sha224_424_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_424_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha224_424_sig[] = { 0x62, 0x5f, 0x47, 0x3c, 0xa2, 0xd1, 0x5b, 0xb7, 0xf1, 0x2d, 0xa1, 0x23, 0x5f, 0x90, 0xad, 0xcb, 0x69, 0xed, 0x48, 0x18, 0x74, 0x6c, 0xae, 0x2e, 0x2d, 0xb2, 0x6f, 0xe6, 0x4a, 0xb8, 0x17, 0xf6, 0xf1, 0xb9, 0xc8, 0xc4, 0x9f, 0x68, 0x1b, 0xed, 0x15, 0x68, 0x34, 0x6f, 0x53, 0xec, 0xbf, 0xac, 0xfd, 0x52, 0xd4, 0x5e, 0x27, 0xab, 0xcb, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha224_424 = { .name = "ecdsa_brainpoolp224r1_sha224_424", .sig_alg = ECDSA, .hash = SHA224, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha224_424_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha224_424_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha224_424_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 359 in file ecdsa_brainpoolP224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) */ /* Test 425 for ECDSA, tcId is 1 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_425_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_425_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x42, 0x6e, 0x85, 0x7a, 0xad, 0x3f, 0xf7, 0xaa, 0x96, 0xe4, 0xd2, 0x00, 0xc0, 0x3b, 0x45, 0xf1, 0x84, 0x6a, 0x36, 0xd0, 0x89, 0xee, 0x39, 0x17, 0x76, 0x8c, 0xa1, 0xa0, 0xd6, 0xd4, 0xda, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_425 = { .name = "ecdsa_brainpoolp256r1_sha256_425", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_425_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_425_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_425_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 426 for ECDSA, tcId is 2 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_426_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_426_sig[] = { 0xb4, 0x5a, 0xe4, 0x4c, 0x5c, 0x1b, 0xb1, 0xff, 0x14, 0x37, 0x02, 0xd2, 0x8e, 0xe4, 0x3a, 0x86, 0xa5, 0x90, 0xe4, 0x4b, 0xca, 0xfd, 0xa5, 0x60, 0xb6, 0x52, 0xe5, 0xbf, 0xdd, 0xe5, 0x67, 0xc6, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_426 = { .name = "ecdsa_brainpoolp256r1_sha256_426", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_426_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_426_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_426_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 427 for ECDSA, tcId is 3 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_427_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_427_sig[] = { 0x9f, 0x9b, 0xcb, 0x6a, 0xe7, 0xc1, 0xa1, 0x79, 0x68, 0x95, 0x12, 0x4e, 0xac, 0x22, 0xe0, 0x5c, 0x72, 0xe2, 0x10, 0xfb, 0x9f, 0xc5, 0xa8, 0x8e, 0x69, 0xe9, 0x37, 0x45, 0x50, 0xab, 0x45, 0x88, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_427 = { .name = "ecdsa_brainpoolp256r1_sha256_427", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_427_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_427_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_427_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 428 for ECDSA, tcId is 4 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_428_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_428_sig[] = { 0x01, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_428 = { .name = "ecdsa_brainpoolp256r1_sha256_428", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_428_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_428_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_428_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 429 for ECDSA, tcId is 5 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_429_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_429_sig[] = { 0xf5, 0xa0, 0x73, 0x8f, 0x45, 0xd2, 0xf7, 0xbd, 0x2a, 0x2f, 0x07, 0xbe, 0x0e, 0x9f, 0x52, 0xea, 0xe6, 0xa8, 0x96, 0x57, 0xea, 0x64, 0x01, 0x96, 0xd9, 0xcb, 0x28, 0xc2, 0xb9, 0x62, 0xee, 0xe1, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_429 = { .name = "ecdsa_brainpoolp256r1_sha256_429", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_429_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_429_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_429_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 430 for ECDSA, tcId is 6 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_430_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_430_sig[] = { 0x00, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x01, 0x11, 0x88, 0x2a, 0x3c, 0x96, 0x9d, 0x5b, 0xcd, 0xe5, 0xe7, 0x43, 0x20, 0x7a, 0xcb, 0xd4, 0xf1, 0x94, 0x08, 0xbe, 0x76, 0xe0, 0xd5, 0x14, 0xd7, 0xa9, 0xaf, 0x7b, 0x64, 0x57, 0xbb, 0xd2, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_430 = { .name = "ecdsa_brainpoolp256r1_sha256_430", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_430_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_430_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_430_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 431 for ECDSA, tcId is 7 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_431_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_431_sig[] = { 0x00, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x01, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_431 = { .name = "ecdsa_brainpoolp256r1_sha256_431", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_431_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_431_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_431_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 432 for ECDSA, tcId is 8 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_432_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_432_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x98, 0x73, 0x2d, 0x9f, 0x0b, 0x51, 0x4d, 0xee, 0x58, 0x7e, 0xc7, 0x70, 0x22, 0xb7, 0xb8, 0x7f, 0xf8, 0x30, 0xbc, 0x2c, 0xd4, 0x8c, 0x92, 0x1f, 0xe6, 0x6e, 0x93, 0x1e, 0x3f, 0x8c, 0x83, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_432 = { .name = "ecdsa_brainpoolp256r1_sha256_432", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_432_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_432_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_432_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 433 for ECDSA, tcId is 9 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_433_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_433_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_433 = { .name = "ecdsa_brainpoolp256r1_sha256_433", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_433_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_433_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_433_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 434 for ECDSA, tcId is 10 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_434_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_434_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_434 = { .name = "ecdsa_brainpoolp256r1_sha256_434", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_434_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_434_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_434_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 435 for ECDSA, tcId is 11 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_435_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_435_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_435 = { .name = "ecdsa_brainpoolp256r1_sha256_435", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_435_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_435_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_435_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 436 for ECDSA, tcId is 12 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_436_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_436_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_436 = { .name = "ecdsa_brainpoolp256r1_sha256_436", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_436_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_436_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_436_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 437 for ECDSA, tcId is 13 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_437_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_437_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_437 = { .name = "ecdsa_brainpoolp256r1_sha256_437", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_437_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_437_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_437_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 438 for ECDSA, tcId is 14 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_438_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_438_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_438 = { .name = "ecdsa_brainpoolp256r1_sha256_438", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_438_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_438_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_438_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 439 for ECDSA, tcId is 15 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_439_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_439_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_439 = { .name = "ecdsa_brainpoolp256r1_sha256_439", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_439_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_439_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_439_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 440 for ECDSA, tcId is 16 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_440_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_440_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_440 = { .name = "ecdsa_brainpoolp256r1_sha256_440", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_440_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_440_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_440_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 441 for ECDSA, tcId is 17 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_441_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_441_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_441 = { .name = "ecdsa_brainpoolp256r1_sha256_441", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_441_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_441_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_441_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 442 for ECDSA, tcId is 18 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_442_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_442_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_442 = { .name = "ecdsa_brainpoolp256r1_sha256_442", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_442_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_442_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_442_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 443 for ECDSA, tcId is 19 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_443_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_443_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_443 = { .name = "ecdsa_brainpoolp256r1_sha256_443", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_443_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_443_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_443_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 444 for ECDSA, tcId is 20 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_444_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_444_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_444 = { .name = "ecdsa_brainpoolp256r1_sha256_444", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_444_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_444_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_444_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 445 for ECDSA, tcId is 21 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_445_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_445_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_445 = { .name = "ecdsa_brainpoolp256r1_sha256_445", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_445_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_445_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_445_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 446 for ECDSA, tcId is 22 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_446_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_446_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_446 = { .name = "ecdsa_brainpoolp256r1_sha256_446", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_446_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_446_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_446_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 447 for ECDSA, tcId is 23 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_447_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_447_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_447 = { .name = "ecdsa_brainpoolp256r1_sha256_447", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_447_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_447_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_447_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 448 for ECDSA, tcId is 24 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_448_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_448_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_448 = { .name = "ecdsa_brainpoolp256r1_sha256_448", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_448_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_448_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_448_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 449 for ECDSA, tcId is 25 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_449_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_449_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_449 = { .name = "ecdsa_brainpoolp256r1_sha256_449", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_449_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_449_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_449_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 450 for ECDSA, tcId is 26 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_450_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_450_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_450 = { .name = "ecdsa_brainpoolp256r1_sha256_450", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_450_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_450_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_450_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 451 for ECDSA, tcId is 27 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_451_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_451_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_451 = { .name = "ecdsa_brainpoolp256r1_sha256_451", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_451_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_451_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_451_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 452 for ECDSA, tcId is 28 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_452_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_452_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_452 = { .name = "ecdsa_brainpoolp256r1_sha256_452", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_452_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_452_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_452_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 453 for ECDSA, tcId is 29 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_453_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_453_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_453 = { .name = "ecdsa_brainpoolp256r1_sha256_453", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_453_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_453_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_453_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 454 for ECDSA, tcId is 30 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_454_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_454_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_454 = { .name = "ecdsa_brainpoolp256r1_sha256_454", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_454_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_454_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_454_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 455 for ECDSA, tcId is 31 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_455_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_455_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_455 = { .name = "ecdsa_brainpoolp256r1_sha256_455", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_455_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_455_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_455_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 456 for ECDSA, tcId is 32 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_456_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_456_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_456 = { .name = "ecdsa_brainpoolp256r1_sha256_456", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_456_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_456_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_456_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 457 for ECDSA, tcId is 33 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_457_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_457_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_457 = { .name = "ecdsa_brainpoolp256r1_sha256_457", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_457_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_457_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_457_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 458 for ECDSA, tcId is 34 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_458_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_458_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_458_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_458 = { .name = "ecdsa_brainpoolp256r1_sha256_458", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_458_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_458_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_458_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 459 for ECDSA, tcId is 35 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_459_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_459_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_459_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_459 = { .name = "ecdsa_brainpoolp256r1_sha256_459", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_459_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_459_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_459_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 460 for ECDSA, tcId is 36 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_460_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_460_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_460 = { .name = "ecdsa_brainpoolp256r1_sha256_460", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_460_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_460_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_460_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 461 for ECDSA, tcId is 37 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_461_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_461_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_461_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_461 = { .name = "ecdsa_brainpoolp256r1_sha256_461", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_461_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_461_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_461_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 462 for ECDSA, tcId is 38 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_462_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_462_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_462_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_462 = { .name = "ecdsa_brainpoolp256r1_sha256_462", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_462_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_462_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_462_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 463 for ECDSA, tcId is 39 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_463_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_463_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_463_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_463 = { .name = "ecdsa_brainpoolp256r1_sha256_463", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_463_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_463_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_463_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 464 for ECDSA, tcId is 40 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_464_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_464_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_464_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_464 = { .name = "ecdsa_brainpoolp256r1_sha256_464", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_464_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_464_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_464_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 465 for ECDSA, tcId is 41 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_465_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_465_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_465_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_465 = { .name = "ecdsa_brainpoolp256r1_sha256_465", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_465_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_465_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_465_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 466 for ECDSA, tcId is 42 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_466_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_466_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_466_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_466 = { .name = "ecdsa_brainpoolp256r1_sha256_466", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_466_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_466_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_466_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 467 for ECDSA, tcId is 43 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_467_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_467_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_467_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_467 = { .name = "ecdsa_brainpoolp256r1_sha256_467", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_467_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_467_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_467_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 468 for ECDSA, tcId is 44 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_468_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_468_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_468_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_468 = { .name = "ecdsa_brainpoolp256r1_sha256_468", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_468_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_468_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_468_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 469 for ECDSA, tcId is 45 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_469_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_469_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_469_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_469 = { .name = "ecdsa_brainpoolp256r1_sha256_469", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_469_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_469_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_469_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 470 for ECDSA, tcId is 46 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_470_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_470_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_470_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_470 = { .name = "ecdsa_brainpoolp256r1_sha256_470", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_470_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_470_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_470_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 471 for ECDSA, tcId is 47 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_471_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_471_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_471_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_471 = { .name = "ecdsa_brainpoolp256r1_sha256_471", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_471_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_471_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_471_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 472 for ECDSA, tcId is 48 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_472_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_472_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_472_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_472 = { .name = "ecdsa_brainpoolp256r1_sha256_472", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_472_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_472_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_472_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 473 for ECDSA, tcId is 49 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_473_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_473_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_473 = { .name = "ecdsa_brainpoolp256r1_sha256_473", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_473_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_473_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_473_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 474 for ECDSA, tcId is 50 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_474_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_474_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_474_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_474 = { .name = "ecdsa_brainpoolp256r1_sha256_474", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_474_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_474_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_474_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 475 for ECDSA, tcId is 51 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_475_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_475_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_475_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_475 = { .name = "ecdsa_brainpoolp256r1_sha256_475", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_475_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_475_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_475_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 476 for ECDSA, tcId is 52 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_476_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_476_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_476_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_476 = { .name = "ecdsa_brainpoolp256r1_sha256_476", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_476_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_476_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_476_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 477 for ECDSA, tcId is 53 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_477_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_477_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_477_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_477 = { .name = "ecdsa_brainpoolp256r1_sha256_477", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_477_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_477_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_477_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 478 for ECDSA, tcId is 54 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_478_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_478_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_478_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_478 = { .name = "ecdsa_brainpoolp256r1_sha256_478", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_478_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_478_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_478_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 479 for ECDSA, tcId is 55 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_479_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_479_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_479 = { .name = "ecdsa_brainpoolp256r1_sha256_479", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_479_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_479_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_479_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 480 for ECDSA, tcId is 56 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_480_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_480_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_480 = { .name = "ecdsa_brainpoolp256r1_sha256_480", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_480_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_480_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_480_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 481 for ECDSA, tcId is 57 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_481_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_481_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_481 = { .name = "ecdsa_brainpoolp256r1_sha256_481", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_481_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_481_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_481_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 482 for ECDSA, tcId is 58 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_482_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_482_msg[] = { 0x36, 0x38, 0x39, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_482_sig[] = { 0x0c, 0x93, 0x9a, 0x92, 0x48, 0x6c, 0x6d, 0x0d, 0x61, 0x95, 0x10, 0xb4, 0xa9, 0x41, 0x62, 0xb9, 0x22, 0x1b, 0xe2, 0xeb, 0x15, 0xfa, 0xf8, 0x78, 0xbf, 0xf7, 0x5e, 0x6c, 0xdf, 0x4e, 0x37, 0x07, 0x39, 0x77, 0x61, 0x9b, 0x43, 0xe6, 0xb4, 0xea, 0x18, 0x70, 0xd8, 0x61, 0x20, 0x64, 0x83, 0xb3, 0x06, 0x56, 0x0e, 0x3c, 0x4a, 0x3e, 0xf8, 0x2b, 0x11, 0xa8, 0x02, 0xff, 0x88, 0x92, 0xdc, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_482 = { .name = "ecdsa_brainpoolp256r1_sha256_482", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_482_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_482_msg, .msglen = 5, .sig = ecdsa_brainpoolp256r1_sha256_482_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 483 for ECDSA, tcId is 59 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_483_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_483_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_483_sig[] = { 0x55, 0x83, 0xdd, 0x48, 0x09, 0x64, 0xbd, 0x23, 0x32, 0x88, 0x5f, 0xbb, 0x50, 0xb7, 0x47, 0x5e, 0xbd, 0x42, 0x83, 0x99, 0xe7, 0x16, 0x6f, 0xd9, 0xbd, 0x52, 0x96, 0x11, 0x53, 0x4b, 0x9f, 0x34, 0x0e, 0xd0, 0x35, 0xa0, 0x2c, 0x4b, 0x66, 0x5c, 0xac, 0xb7, 0x0d, 0xe8, 0xe8, 0x22, 0xfa, 0xcd, 0x71, 0x64, 0x5a, 0x15, 0xf9, 0x3f, 0xee, 0x66, 0x13, 0x24, 0xf8, 0x50, 0xb8, 0x47, 0xb5, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_483 = { .name = "ecdsa_brainpoolp256r1_sha256_483", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_483_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_483_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_483_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 484 for ECDSA, tcId is 60 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_484_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_484_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_484_sig[] = { 0x30, 0x0e, 0x26, 0x02, 0x7c, 0xe7, 0xd3, 0xf2, 0x1c, 0x85, 0x71, 0xdc, 0x69, 0x0b, 0x1b, 0xb9, 0x90, 0xe8, 0xfc, 0x49, 0xad, 0x3e, 0x95, 0x37, 0x4b, 0xd5, 0x43, 0xb2, 0xe2, 0x2b, 0xad, 0xc6, 0x22, 0xbc, 0x8f, 0x24, 0x45, 0xcd, 0x49, 0x56, 0xbc, 0x0d, 0xb5, 0x53, 0x96, 0x6a, 0x07, 0x18, 0xae, 0xb5, 0xea, 0xd6, 0x5b, 0xc6, 0x6d, 0xdb, 0x21, 0xfe, 0xa0, 0xe5, 0x71, 0xa8, 0x7e, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_484 = { .name = "ecdsa_brainpoolp256r1_sha256_484", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_484_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_484_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_484_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 485 for ECDSA, tcId is 61 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_485_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_485_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_485_sig[] = { 0x29, 0x07, 0xcb, 0x01, 0xa8, 0x2a, 0x88, 0x04, 0x66, 0x40, 0xa5, 0x23, 0xf9, 0xb9, 0x85, 0x4d, 0x95, 0xb7, 0xec, 0x2d, 0xdd, 0x67, 0xc2, 0x07, 0x23, 0xd0, 0x58, 0x29, 0xe8, 0x43, 0x8a, 0x77, 0x38, 0xca, 0x08, 0xe5, 0x86, 0x23, 0x56, 0x0f, 0x72, 0x4a, 0x3e, 0x3f, 0x9b, 0xa0, 0xe9, 0xec, 0x79, 0x74, 0x97, 0x6d, 0xd3, 0x4e, 0x69, 0x40, 0xc0, 0xfe, 0x61, 0x68, 0xd5, 0x40, 0xe3, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_485 = { .name = "ecdsa_brainpoolp256r1_sha256_485", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_485_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_485_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_485_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 486 for ECDSA, tcId is 62 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_486_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_486_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_486_sig[] = { 0x0c, 0x35, 0x84, 0x0f, 0x7b, 0x73, 0x19, 0xf1, 0x9f, 0xd7, 0x2f, 0x29, 0xfe, 0xa4, 0xcf, 0x93, 0x7a, 0xba, 0x2c, 0x3f, 0xe1, 0xdc, 0x01, 0xae, 0xc6, 0x3c, 0x21, 0x09, 0x4c, 0x5d, 0x35, 0x48, 0x7b, 0xf6, 0x99, 0x86, 0x8c, 0x2b, 0x69, 0x45, 0x47, 0xae, 0xbe, 0x9b, 0x98, 0xc0, 0x1c, 0x5e, 0xfb, 0xe9, 0x82, 0xa8, 0x41, 0x50, 0x39, 0x08, 0x94, 0x56, 0x3d, 0x4e, 0x2c, 0xb2, 0x40, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_486 = { .name = "ecdsa_brainpoolp256r1_sha256_486", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_486_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_486_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_486_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 487 for ECDSA, tcId is 63 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_487_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_487_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_487_sig[] = { 0x42, 0x72, 0xff, 0x20, 0xb8, 0xc3, 0xd1, 0x9e, 0x8c, 0x84, 0x14, 0x1f, 0xbe, 0x4d, 0x16, 0x81, 0xfa, 0x71, 0xb5, 0x1f, 0x6c, 0x10, 0x36, 0x0d, 0xb7, 0xaf, 0xfa, 0xc9, 0x89, 0x27, 0x4d, 0x23, 0x67, 0x72, 0xff, 0x76, 0x8e, 0xe6, 0xa3, 0xed, 0xaf, 0x0d, 0xbd, 0xd7, 0xb5, 0xc6, 0x96, 0x2c, 0x2a, 0xcc, 0x8c, 0xb1, 0x4e, 0x63, 0x47, 0x63, 0x1e, 0x25, 0x94, 0x01, 0x89, 0x72, 0x94, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_487 = { .name = "ecdsa_brainpoolp256r1_sha256_487", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_487_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_487_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_487_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 488 for ECDSA, tcId is 64 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_488_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_488_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_488_sig[] = { 0x0a, 0x1e, 0x07, 0x2c, 0x48, 0xa6, 0x2a, 0x58, 0x3b, 0xf9, 0x4f, 0xe6, 0x38, 0x09, 0xe9, 0x5f, 0x32, 0x02, 0x17, 0x6b, 0xfa, 0x6d, 0x28, 0xde, 0x8f, 0x75, 0xa4, 0xa3, 0x25, 0x6c, 0xa2, 0x1f, 0x95, 0x14, 0xa6, 0xe5, 0xb2, 0x35, 0xc2, 0x91, 0x52, 0x56, 0x1c, 0xc9, 0x49, 0x2c, 0xf4, 0x74, 0x77, 0xa0, 0xfe, 0x23, 0xf5, 0x60, 0x40, 0xd7, 0x20, 0x6b, 0xfb, 0x4e, 0xb3, 0xe1, 0x87, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_488 = { .name = "ecdsa_brainpoolp256r1_sha256_488", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_488_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_488_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_488_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 489 for ECDSA, tcId is 65 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_489_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_489_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_489_sig[] = { 0x02, 0xbc, 0xbd, 0x38, 0xa3, 0xe3, 0x11, 0x34, 0x45, 0xad, 0x2e, 0xe4, 0x2f, 0xae, 0xae, 0xe9, 0xfe, 0xd0, 0x02, 0x77, 0xe0, 0xb1, 0x55, 0x21, 0x32, 0x9f, 0x4c, 0x27, 0xc9, 0x63, 0xaf, 0x01, 0x06, 0xcf, 0x39, 0x9d, 0xeb, 0x1f, 0x6f, 0xd6, 0x92, 0x07, 0x5d, 0x23, 0x62, 0x72, 0xb9, 0x9c, 0x33, 0x36, 0xae, 0xa2, 0xcf, 0xac, 0x34, 0xd9, 0x04, 0x64, 0x6c, 0xc1, 0xda, 0xf5, 0x4d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_489 = { .name = "ecdsa_brainpoolp256r1_sha256_489", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_489_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_489_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_489_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 490 for ECDSA, tcId is 66 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_490_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_490_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_490_sig[] = { 0x62, 0xf3, 0xa6, 0xa9, 0xc9, 0xf4, 0x57, 0x21, 0x1b, 0x46, 0xb1, 0xca, 0x3a, 0x78, 0x2f, 0x11, 0xf4, 0x4c, 0xb9, 0x36, 0x0b, 0xb3, 0x07, 0x02, 0xe6, 0x71, 0x36, 0x03, 0x6c, 0xcb, 0xa3, 0x9e, 0x22, 0xf0, 0x2e, 0x5f, 0x64, 0x7c, 0xeb, 0x3d, 0x0c, 0x49, 0xf2, 0xe7, 0xac, 0x9b, 0xbb, 0x31, 0xb7, 0xe3, 0xae, 0x29, 0xa5, 0xed, 0x67, 0x0c, 0x96, 0xca, 0xd6, 0xd0, 0xf4, 0x5d, 0xf3, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_490 = { .name = "ecdsa_brainpoolp256r1_sha256_490", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_490_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_490_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_490_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 491 for ECDSA, tcId is 67 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_491_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_491_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_491_sig[] = { 0x23, 0xd6, 0x79, 0xae, 0xd9, 0x06, 0x6b, 0x61, 0x18, 0x20, 0xa8, 0xe0, 0x2b, 0x3d, 0xaa, 0x92, 0x2b, 0x10, 0xd5, 0x59, 0x6c, 0x8c, 0xeb, 0x7b, 0xd4, 0xe4, 0xfc, 0xd6, 0xe5, 0xe1, 0xdc, 0xa7, 0x96, 0x26, 0xe1, 0xd2, 0x20, 0x5d, 0x60, 0xe3, 0x9b, 0x63, 0x38, 0x52, 0xf6, 0x23, 0xf0, 0xf8, 0xb3, 0x5e, 0x44, 0x79, 0x7e, 0x08, 0xc6, 0xfa, 0xd1, 0x96, 0xc3, 0x3b, 0xe6, 0x9b, 0x5a, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_491 = { .name = "ecdsa_brainpoolp256r1_sha256_491", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_491_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_491_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_491_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 492 for ECDSA, tcId is 68 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_492_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_492_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_492_sig[] = { 0x0e, 0x4c, 0x5c, 0x07, 0x7f, 0x14, 0xa4, 0xdb, 0x19, 0x76, 0x54, 0xf8, 0x08, 0x1f, 0x10, 0xac, 0x22, 0x29, 0xe6, 0xf2, 0x08, 0x44, 0x05, 0xae, 0xa5, 0x25, 0x67, 0x9e, 0x59, 0x25, 0x39, 0xa9, 0x13, 0x55, 0xd4, 0x36, 0x67, 0x40, 0x2b, 0x9f, 0x01, 0x95, 0x91, 0x40, 0xc4, 0x14, 0xf1, 0x8d, 0x90, 0x8e, 0x25, 0x59, 0xe5, 0x7a, 0xdf, 0x35, 0xce, 0x79, 0x4d, 0xbc, 0x8e, 0x22, 0x20, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_492 = { .name = "ecdsa_brainpoolp256r1_sha256_492", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_492_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_492_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_492_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 493 for ECDSA, tcId is 69 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_493_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_493_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_493_sig[] = { 0x32, 0x46, 0xb3, 0x39, 0x54, 0xcf, 0x1d, 0xd4, 0xa2, 0x16, 0x21, 0x8d, 0x49, 0xb1, 0x4e, 0x39, 0xdb, 0x82, 0x00, 0x4b, 0xa0, 0x55, 0x6f, 0xb5, 0x91, 0x35, 0x7a, 0xff, 0x76, 0xa1, 0xea, 0x63, 0x5b, 0x5f, 0xcb, 0x72, 0x6e, 0xbf, 0x18, 0xc9, 0x15, 0x1a, 0x26, 0xa5, 0xb0, 0x80, 0x0c, 0xbf, 0x95, 0xb5, 0xed, 0xc0, 0x84, 0xb4, 0x2d, 0xc6, 0xdc, 0x7f, 0xbb, 0x9a, 0x0a, 0xed, 0x84, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_493 = { .name = "ecdsa_brainpoolp256r1_sha256_493", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_493_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_493_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_493_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 494 for ECDSA, tcId is 70 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_494_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_494_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_494_sig[] = { 0x36, 0x1a, 0x8d, 0xef, 0x87, 0x40, 0x57, 0xc7, 0x15, 0x42, 0x38, 0x43, 0xbd, 0x7b, 0xf0, 0x77, 0x5b, 0xa6, 0x36, 0x6f, 0xa4, 0x8c, 0xa8, 0x3e, 0x1c, 0xdc, 0xe2, 0x06, 0xbf, 0x94, 0xc2, 0xbf, 0x36, 0x5e, 0x97, 0x49, 0x3d, 0x33, 0x82, 0x68, 0x1f, 0x1d, 0x94, 0x65, 0x7e, 0x98, 0x88, 0x24, 0x5c, 0x9b, 0x07, 0x62, 0xee, 0x7f, 0x4c, 0xa0, 0x2e, 0x73, 0x8a, 0xfd, 0xbb, 0xa2, 0x74, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_494 = { .name = "ecdsa_brainpoolp256r1_sha256_494", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_494_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_494_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_494_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 495 for ECDSA, tcId is 71 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_495_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_495_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_495_sig[] = { 0x2c, 0x5f, 0x51, 0xbc, 0x91, 0x96, 0x9f, 0xd5, 0xb8, 0x04, 0xe7, 0x51, 0x32, 0x3f, 0xc8, 0x02, 0x94, 0xb0, 0xb5, 0xb1, 0xe2, 0x0e, 0x19, 0x5e, 0xc9, 0xbd, 0xc6, 0xa7, 0x80, 0x6d, 0xa1, 0x3f, 0x4c, 0x24, 0x6c, 0x94, 0x9b, 0xce, 0x43, 0xd3, 0x03, 0x20, 0x1f, 0xa0, 0xd9, 0x89, 0xe7, 0x06, 0x74, 0x76, 0x65, 0x55, 0xe8, 0xd3, 0xa9, 0x9c, 0x26, 0xba, 0xbb, 0x65, 0x8d, 0x1f, 0x7d, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_495 = { .name = "ecdsa_brainpoolp256r1_sha256_495", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_495_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_495_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_495_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 496 for ECDSA, tcId is 72 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_496_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_496_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_496_sig[] = { 0xa9, 0xe3, 0xf1, 0xe8, 0x31, 0x08, 0xbe, 0x78, 0x66, 0x8d, 0x4b, 0xac, 0x7f, 0xfb, 0x29, 0x18, 0xd3, 0x81, 0x00, 0xba, 0x01, 0xf3, 0x7d, 0xe5, 0xb9, 0x23, 0xee, 0xca, 0x07, 0xcc, 0x05, 0xe3, 0x3f, 0x0d, 0x81, 0xbc, 0xc0, 0x88, 0x02, 0xa4, 0x35, 0x59, 0x97, 0x59, 0xf5, 0x1c, 0x89, 0xf8, 0x16, 0x74, 0x27, 0x10, 0x88, 0x5b, 0x41, 0x37, 0x75, 0x81, 0x30, 0xe8, 0xac, 0xf7, 0x07, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_496 = { .name = "ecdsa_brainpoolp256r1_sha256_496", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_496_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_496_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_496_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 497 for ECDSA, tcId is 73 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_497_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_497_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_497_sig[] = { 0x95, 0x9e, 0x98, 0x11, 0xbb, 0x18, 0xb4, 0x86, 0x5f, 0xde, 0x6d, 0x5f, 0x9c, 0x24, 0x6d, 0x67, 0xe4, 0x8d, 0x7a, 0x5c, 0x7c, 0xe4, 0x6d, 0x7a, 0xfb, 0x6f, 0x5e, 0xc0, 0xb2, 0x6d, 0x50, 0x60, 0x00, 0x91, 0xa0, 0x97, 0x61, 0x8f, 0x25, 0x17, 0xad, 0x6d, 0xcf, 0x49, 0xbc, 0xc2, 0x08, 0xe9, 0x4c, 0xb8, 0x1a, 0xf8, 0x7f, 0x65, 0xb7, 0x88, 0x05, 0x80, 0xf9, 0x98, 0x58, 0xa9, 0xa9, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_497 = { .name = "ecdsa_brainpoolp256r1_sha256_497", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_497_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_497_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_497_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 498 for ECDSA, tcId is 74 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_498_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_498_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_498_sig[] = { 0x4f, 0x92, 0x31, 0xb1, 0xcb, 0xae, 0xa1, 0x83, 0xed, 0x9d, 0x85, 0x91, 0xae, 0x3e, 0x9f, 0x04, 0x39, 0x20, 0x1e, 0x10, 0x67, 0xff, 0x00, 0x53, 0x5a, 0x41, 0x53, 0x96, 0xb7, 0x78, 0x11, 0xd6, 0x98, 0x51, 0xc7, 0x99, 0xa3, 0x11, 0xab, 0xae, 0xfa, 0x08, 0xc4, 0x12, 0xf6, 0xf6, 0x79, 0xa0, 0x00, 0xa6, 0xed, 0xaa, 0x00, 0x5d, 0x05, 0xf5, 0x50, 0xa6, 0x2f, 0xf9, 0xa6, 0xa1, 0xa5, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_498 = { .name = "ecdsa_brainpoolp256r1_sha256_498", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_498_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_498_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_498_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 499 for ECDSA, tcId is 75 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_499_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_499_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_499_sig[] = { 0x54, 0x79, 0xac, 0xb7, 0x6c, 0x38, 0xd4, 0x7f, 0x21, 0x94, 0x08, 0x55, 0xf1, 0x80, 0x09, 0x78, 0xa5, 0x2f, 0xb1, 0x0b, 0x7c, 0xc9, 0xb0, 0x7c, 0xaf, 0x88, 0xaf, 0x67, 0xf2, 0x69, 0x71, 0x43, 0x24, 0x4f, 0x3c, 0xdd, 0x68, 0x35, 0x55, 0xb8, 0x8a, 0x45, 0xe9, 0x75, 0x07, 0x37, 0x35, 0xd3, 0x87, 0x13, 0xda, 0x4b, 0xde, 0xa3, 0x40, 0xb5, 0xfb, 0x87, 0xd3, 0xc4, 0x43, 0xad, 0xb0, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_499 = { .name = "ecdsa_brainpoolp256r1_sha256_499", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_499_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_499_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_499_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 500 for ECDSA, tcId is 76 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_500_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_500_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_500_sig[] = { 0x14, 0x99, 0x01, 0x49, 0xd3, 0xa8, 0xf3, 0xc9, 0x6e, 0x9c, 0x62, 0x95, 0x2f, 0x90, 0xef, 0x21, 0xcb, 0xcc, 0x0d, 0x03, 0xda, 0x80, 0x2f, 0x72, 0x43, 0x2a, 0x04, 0x1d, 0xa5, 0x4d, 0xb5, 0xbe, 0x87, 0x42, 0x7b, 0x96, 0xd2, 0x84, 0x99, 0x70, 0x7a, 0x67, 0x88, 0x70, 0x5c, 0xd8, 0xa5, 0xee, 0x9f, 0xd4, 0x2e, 0x2d, 0x1f, 0x12, 0x73, 0x75, 0x23, 0x37, 0xef, 0xcd, 0x06, 0xaa, 0x88, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_500 = { .name = "ecdsa_brainpoolp256r1_sha256_500", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_500_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_500_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_500_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 501 for ECDSA, tcId is 77 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_501_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_501_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_501_sig[] = { 0x5b, 0xb2, 0x44, 0xb5, 0x11, 0xa9, 0x82, 0x8f, 0xbe, 0x7a, 0x04, 0x1a, 0xf3, 0x41, 0xa9, 0x3b, 0x24, 0x2b, 0x51, 0x33, 0x10, 0xde, 0x9f, 0x4b, 0xc3, 0x66, 0xe1, 0x8b, 0x93, 0xa3, 0xce, 0x34, 0x97, 0x8b, 0xe5, 0xd5, 0x8c, 0xe7, 0x0c, 0x92, 0xde, 0xa7, 0x5c, 0xe2, 0xf8, 0xe8, 0x8f, 0x09, 0x3f, 0x5e, 0x46, 0x75, 0xe7, 0x50, 0xfd, 0x08, 0x87, 0x77, 0xa7, 0x41, 0x15, 0x26, 0xc1, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_501 = { .name = "ecdsa_brainpoolp256r1_sha256_501", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_501_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_501_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_501_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 502 for ECDSA, tcId is 78 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_502_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_502_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_502_sig[] = { 0x07, 0x0e, 0x64, 0xf4, 0xd1, 0x9f, 0x9f, 0xd9, 0xa8, 0xd3, 0xf0, 0xa6, 0x4f, 0x95, 0x1c, 0x41, 0xdb, 0x2f, 0x0e, 0x13, 0x49, 0x0e, 0x7a, 0xc0, 0xb3, 0xf6, 0x06, 0x6b, 0xc1, 0xe5, 0x40, 0xa7, 0x83, 0x5b, 0x25, 0x02, 0x9a, 0x2c, 0xed, 0x8d, 0xf5, 0x7b, 0x03, 0x43, 0xa2, 0xc7, 0x18, 0xdb, 0x72, 0xc2, 0xd3, 0x1f, 0x7e, 0xf6, 0x6b, 0x23, 0x0c, 0x97, 0xd2, 0x02, 0x81, 0xd4, 0x9a, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_502 = { .name = "ecdsa_brainpoolp256r1_sha256_502", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_502_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_502_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_502_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 503 for ECDSA, tcId is 79 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_503_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_503_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_503_sig[] = { 0x2b, 0x5a, 0x6d, 0xc1, 0x4e, 0x98, 0xd2, 0xe6, 0xc0, 0xb6, 0x27, 0x56, 0x8a, 0x74, 0x8b, 0xda, 0x04, 0xc0, 0x95, 0x00, 0xbc, 0x63, 0xbd, 0x74, 0x4f, 0x5d, 0xee, 0x96, 0x7d, 0xb0, 0xf0, 0xb1, 0x34, 0x52, 0xb1, 0x3e, 0xf8, 0xdc, 0x01, 0xa0, 0xb7, 0x85, 0xfb, 0xb4, 0xfc, 0xd0, 0x57, 0xa5, 0x88, 0x0c, 0x41, 0x84, 0x27, 0x28, 0x3a, 0xbc, 0x7a, 0xa7, 0xfa, 0x07, 0xd5, 0x07, 0xee, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_503 = { .name = "ecdsa_brainpoolp256r1_sha256_503", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_503_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_503_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_503_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 504 for ECDSA, tcId is 80 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_504_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_504_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_504_sig[] = { 0x1d, 0x91, 0xbd, 0xa9, 0x0d, 0x08, 0x31, 0xbe, 0x05, 0x8f, 0x61, 0x0f, 0xe3, 0xe6, 0x45, 0x17, 0x91, 0xe0, 0x96, 0x89, 0xc5, 0x2b, 0xd4, 0x66, 0xef, 0x74, 0xdd, 0x85, 0xb3, 0xcb, 0xd1, 0x21, 0x4b, 0xa3, 0x7a, 0x93, 0x41, 0xe5, 0x92, 0x3e, 0xa9, 0x3e, 0x35, 0x73, 0x44, 0xfe, 0x7b, 0x73, 0x44, 0x6e, 0x20, 0x7a, 0x7e, 0x44, 0x96, 0x07, 0xb1, 0x48, 0x2c, 0x51, 0x0e, 0x93, 0xb6, 0x30, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_504 = { .name = "ecdsa_brainpoolp256r1_sha256_504", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_504_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_504_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_504_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 505 for ECDSA, tcId is 81 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_505_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_505_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_505_sig[] = { 0x6a, 0x32, 0xe1, 0x62, 0x5c, 0x1e, 0xb7, 0xd4, 0x0b, 0x31, 0x45, 0xf8, 0x94, 0xc7, 0x13, 0x8d, 0x62, 0x32, 0xa6, 0x11, 0x6d, 0x50, 0xf1, 0x27, 0x0a, 0x0e, 0x97, 0x1e, 0x2b, 0x7a, 0x8e, 0x75, 0x61, 0xb6, 0xaa, 0xe5, 0x68, 0x19, 0x27, 0x28, 0x13, 0x31, 0x9f, 0x7c, 0x21, 0x4f, 0x83, 0xce, 0x5f, 0xcc, 0xdb, 0x58, 0x87, 0x8d, 0x59, 0x2a, 0xb0, 0xf4, 0x47, 0x9a, 0x52, 0xd9, 0x70, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_505 = { .name = "ecdsa_brainpoolp256r1_sha256_505", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_505_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_505_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_505_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 506 for ECDSA, tcId is 82 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_506_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_506_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_506_sig[] = { 0x5b, 0x75, 0x26, 0xf0, 0x9d, 0xab, 0x24, 0x85, 0x51, 0xed, 0x8b, 0x12, 0x29, 0xc2, 0x44, 0x7a, 0x45, 0x21, 0xd2, 0xd6, 0xe2, 0x29, 0x02, 0xac, 0xbc, 0x17, 0x6c, 0x50, 0x1f, 0x5f, 0x5f, 0x7e, 0x31, 0x86, 0x55, 0x2f, 0x70, 0x0d, 0x9e, 0x6b, 0x55, 0x1c, 0x89, 0x3e, 0xd2, 0xae, 0xd9, 0x55, 0x6b, 0x3f, 0x0a, 0xc2, 0xa5, 0xe2, 0x77, 0x2f, 0x8f, 0xb1, 0xa1, 0x84, 0x94, 0x92, 0x62, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_506 = { .name = "ecdsa_brainpoolp256r1_sha256_506", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_506_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_506_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_506_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 507 for ECDSA, tcId is 83 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_507_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_507_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_507_sig[] = { 0x30, 0xd0, 0xff, 0xa9, 0xc2, 0xbe, 0x04, 0x2c, 0xcd, 0x2c, 0x9a, 0xdb, 0xcb, 0xbb, 0xa2, 0x2c, 0xc0, 0x44, 0xd6, 0x9a, 0xbf, 0x37, 0xef, 0xf2, 0xbc, 0xab, 0x91, 0xd4, 0x5b, 0xe9, 0xb0, 0xbd, 0x48, 0x2d, 0xd7, 0x2a, 0xa3, 0xb3, 0xf3, 0xf2, 0xe6, 0xdd, 0x4a, 0x07, 0x5f, 0xa9, 0x62, 0xb8, 0xf6, 0xfc, 0x25, 0xe9, 0xd3, 0x2d, 0x0d, 0xcc, 0xbd, 0x80, 0x83, 0x1a, 0xcf, 0x75, 0x95, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_507 = { .name = "ecdsa_brainpoolp256r1_sha256_507", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_507_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_507_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_507_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 508 for ECDSA, tcId is 84 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_508_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_508_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_508_sig[] = { 0x20, 0x0d, 0x3b, 0x5f, 0x91, 0x58, 0x63, 0xad, 0xa8, 0xc8, 0x4e, 0xf5, 0xeb, 0x50, 0xec, 0xf0, 0xab, 0x43, 0xe2, 0xba, 0xc1, 0x0a, 0x4c, 0x42, 0xcf, 0x37, 0x19, 0x12, 0x1a, 0x8d, 0x37, 0xcd, 0x9d, 0x13, 0x7e, 0x11, 0xa0, 0x50, 0xbf, 0xbb, 0xa7, 0x46, 0xc1, 0x9a, 0xd5, 0xf7, 0x19, 0x5c, 0x86, 0xf2, 0x41, 0x15, 0xd1, 0xfa, 0xdf, 0xb1, 0x9a, 0xd2, 0xcb, 0x56, 0x24, 0x12, 0x6c, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_508 = { .name = "ecdsa_brainpoolp256r1_sha256_508", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_508_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_508_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_508_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 509 for ECDSA, tcId is 85 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_509_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_509_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_509_sig[] = { 0x4a, 0xc5, 0x54, 0x70, 0x78, 0x90, 0x95, 0xe9, 0xe2, 0x50, 0x33, 0x2f, 0x37, 0x90, 0xf8, 0x65, 0xfb, 0xcc, 0x58, 0x93, 0x45, 0x88, 0xc7, 0x74, 0xba, 0xbf, 0x22, 0xde, 0x6a, 0x8a, 0x69, 0x58, 0x2c, 0xfe, 0xfb, 0x0e, 0x2b, 0xe0, 0x54, 0x2c, 0x97, 0xeb, 0x61, 0x91, 0x4f, 0x23, 0xfb, 0x37, 0xb5, 0x8f, 0xb1, 0x7d, 0x0d, 0x6b, 0x76, 0x6a, 0x8f, 0x63, 0xc8, 0xd0, 0xdc, 0x79, 0xe5, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_509 = { .name = "ecdsa_brainpoolp256r1_sha256_509", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_509_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_509_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_509_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 510 for ECDSA, tcId is 86 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_510_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_510_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_510_sig[] = { 0x90, 0x8c, 0x1e, 0x6d, 0xa6, 0x25, 0x87, 0x9f, 0xc1, 0x16, 0xdd, 0xb6, 0x51, 0x73, 0xb9, 0x35, 0x5f, 0xa8, 0xeb, 0x03, 0x80, 0x63, 0xde, 0x2c, 0xec, 0x19, 0x34, 0xe8, 0xfb, 0x2b, 0xfc, 0x27, 0x6e, 0x08, 0x4f, 0xf7, 0xc0, 0x43, 0xed, 0xfb, 0x16, 0x1a, 0xea, 0x26, 0x05, 0xa1, 0x11, 0xcf, 0x43, 0xd5, 0x83, 0x88, 0xe0, 0x61, 0xe8, 0x01, 0x9e, 0x99, 0x52, 0x63, 0x76, 0xe4, 0xc7, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_510 = { .name = "ecdsa_brainpoolp256r1_sha256_510", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_510_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_510_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_510_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 511 for ECDSA, tcId is 87 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_511_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_511_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_511_sig[] = { 0x97, 0x32, 0x8e, 0x10, 0x50, 0xfc, 0x2d, 0x44, 0xec, 0x89, 0x83, 0x6a, 0x7e, 0xaa, 0xe3, 0x60, 0xd6, 0xf9, 0xd9, 0x96, 0x85, 0x5e, 0x8b, 0x14, 0x4d, 0x0c, 0x27, 0x3c, 0x48, 0x66, 0xd7, 0xfe, 0x39, 0x19, 0xd7, 0xce, 0xd9, 0xf3, 0xe3, 0x28, 0x49, 0x78, 0x54, 0x63, 0x94, 0xfb, 0xb2, 0x77, 0xf8, 0x4d, 0x26, 0x59, 0x8d, 0xbe, 0x83, 0xda, 0x4b, 0xa7, 0xc1, 0xde, 0x37, 0x2b, 0x33, 0x40, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_511 = { .name = "ecdsa_brainpoolp256r1_sha256_511", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_511_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_511_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_511_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 512 for ECDSA, tcId is 88 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_512_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_512_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_512_sig[] = { 0x98, 0x81, 0xe8, 0xf7, 0x5d, 0xb8, 0x16, 0x3d, 0x2b, 0xe1, 0xfc, 0x11, 0x49, 0x19, 0x26, 0xc4, 0x12, 0x53, 0x74, 0x44, 0x0d, 0xa9, 0x47, 0x50, 0xa1, 0x9e, 0xca, 0xf8, 0xa8, 0x3b, 0x71, 0xfc, 0x4a, 0x9a, 0x19, 0x1a, 0x9d, 0xa8, 0xfa, 0x3d, 0x56, 0x41, 0xcb, 0xb5, 0xa8, 0x8c, 0xac, 0x5b, 0x37, 0x80, 0xfb, 0xbe, 0xf8, 0xef, 0x1a, 0x44, 0x57, 0x82, 0x39, 0x49, 0x25, 0xef, 0xc5, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_512 = { .name = "ecdsa_brainpoolp256r1_sha256_512", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_512_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_512_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_512_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 513 for ECDSA, tcId is 89 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_513_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_513_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_513_sig[] = { 0x70, 0xcb, 0x8b, 0xc7, 0xd5, 0xc3, 0x72, 0xc7, 0x3c, 0xf3, 0x6f, 0xe6, 0x9a, 0xa1, 0xa5, 0x09, 0xfe, 0x0c, 0xf2, 0xbe, 0x64, 0x2e, 0x08, 0x5a, 0xc9, 0x79, 0xd6, 0xee, 0xfd, 0xda, 0xa9, 0xe1, 0x50, 0x04, 0x02, 0xf4, 0x96, 0xdc, 0x8d, 0x90, 0x4c, 0x70, 0x96, 0x95, 0xff, 0x02, 0x71, 0x4e, 0x60, 0x7c, 0x4b, 0xee, 0x9d, 0x06, 0x4c, 0xd4, 0x65, 0x4b, 0x6c, 0x46, 0x6f, 0x40, 0x10, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_513 = { .name = "ecdsa_brainpoolp256r1_sha256_513", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_513_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_513_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_513_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 514 for ECDSA, tcId is 90 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_514_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_514_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_514_sig[] = { 0x39, 0xc8, 0xf8, 0x70, 0x18, 0x5f, 0x87, 0x95, 0x7e, 0x00, 0x9d, 0x01, 0xe5, 0x2f, 0xbf, 0x6c, 0x7a, 0xe5, 0x0d, 0x73, 0x4d, 0x39, 0xec, 0x41, 0x13, 0xb3, 0x7b, 0x7b, 0xd1, 0xb6, 0x80, 0x66, 0x73, 0xd6, 0xda, 0x2b, 0x77, 0x7c, 0xe0, 0xc4, 0x3d, 0x49, 0x08, 0x08, 0x57, 0xc6, 0xec, 0x58, 0x54, 0x6f, 0xdd, 0xf1, 0x7d, 0x26, 0x76, 0xf1, 0x0f, 0x88, 0xdd, 0xc9, 0x00, 0xca, 0x18, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_514 = { .name = "ecdsa_brainpoolp256r1_sha256_514", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_514_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_514_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_514_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 515 for ECDSA, tcId is 91 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_515_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_515_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_515_sig[] = { 0x2e, 0x95, 0xb7, 0x02, 0xed, 0x13, 0x8f, 0x42, 0x61, 0x4f, 0x07, 0xa1, 0xb2, 0x15, 0x48, 0xea, 0x1d, 0x24, 0x7a, 0x4a, 0x7f, 0xd7, 0x65, 0x62, 0x8b, 0xab, 0x68, 0x55, 0x11, 0x29, 0xad, 0x38, 0x2e, 0x9a, 0x6a, 0xf0, 0x78, 0xb5, 0x18, 0x12, 0xed, 0x71, 0xb0, 0xea, 0xb6, 0x53, 0x50, 0xcd, 0x08, 0x1f, 0x79, 0x99, 0xa2, 0x4a, 0x56, 0xe9, 0x6a, 0xf9, 0xd5, 0xc5, 0xf6, 0xbd, 0xaf, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_515 = { .name = "ecdsa_brainpoolp256r1_sha256_515", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_515_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_515_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_515_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 516 for ECDSA, tcId is 92 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_516_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_516_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_516_sig[] = { 0x58, 0x37, 0xb6, 0x87, 0xf2, 0x12, 0x80, 0x63, 0xdc, 0x67, 0xf5, 0x12, 0xcb, 0x66, 0x70, 0xf1, 0x22, 0xb6, 0x11, 0x25, 0x7f, 0x53, 0x6d, 0x45, 0xe3, 0x98, 0x4f, 0x5e, 0xbb, 0xc3, 0xcd, 0x4d, 0x6a, 0x6c, 0x0c, 0x41, 0xb9, 0xcc, 0x37, 0xae, 0x02, 0xc2, 0x21, 0x8d, 0x3b, 0x8c, 0xd8, 0x0c, 0xd3, 0xc4, 0xfc, 0x25, 0x77, 0x1c, 0x0c, 0xaa, 0xb3, 0xb8, 0xed, 0x2c, 0x61, 0x1c, 0xf7, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_516 = { .name = "ecdsa_brainpoolp256r1_sha256_516", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_516_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_516_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_516_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 517 for ECDSA, tcId is 93 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_517_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_517_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_517_sig[] = { 0x5a, 0x73, 0xc7, 0x5d, 0x2b, 0x5c, 0x48, 0xaf, 0x17, 0xb7, 0x84, 0x72, 0x44, 0x26, 0x2b, 0xb9, 0xb2, 0xc3, 0xf2, 0x69, 0x7a, 0x9d, 0x8c, 0x60, 0x57, 0x58, 0xa2, 0xd3, 0x3c, 0xcc, 0xd1, 0x8f, 0x97, 0xf1, 0x2a, 0xa0, 0x4b, 0x25, 0x82, 0x37, 0x3f, 0x9b, 0xea, 0x64, 0x6b, 0xce, 0x1b, 0x12, 0x90, 0x30, 0xea, 0x5f, 0x35, 0xc9, 0xdc, 0x2a, 0x14, 0x9e, 0x90, 0xaa, 0x3b, 0x56, 0x34, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_517 = { .name = "ecdsa_brainpoolp256r1_sha256_517", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_517_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_517_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_517_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 518 for ECDSA, tcId is 94 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_518_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_518_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_518_sig[] = { 0x32, 0xb6, 0x03, 0x13, 0x2a, 0x96, 0xc5, 0xb9, 0x57, 0xb0, 0x8c, 0x88, 0x53, 0x2e, 0x49, 0xfc, 0xb7, 0x3c, 0xd7, 0xc5, 0xf7, 0x1a, 0x1e, 0x6e, 0xd1, 0x4a, 0x5c, 0xc1, 0x77, 0x6d, 0x2d, 0xa7, 0x93, 0xbe, 0x0e, 0x4c, 0x98, 0x44, 0xbe, 0xc9, 0xd2, 0xb6, 0x2b, 0x42, 0x4e, 0x61, 0x8a, 0x84, 0x5a, 0x98, 0x53, 0x7b, 0x23, 0x56, 0xc1, 0xf4, 0x73, 0xbb, 0xa1, 0x3b, 0x08, 0x45, 0x8e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_518 = { .name = "ecdsa_brainpoolp256r1_sha256_518", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_518_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_518_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_518_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 519 for ECDSA, tcId is 95 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_519_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_519_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_519_sig[] = { 0x9b, 0x76, 0xb7, 0xaa, 0xc0, 0xa1, 0x3b, 0xf2, 0x17, 0xf2, 0x4d, 0x33, 0x5b, 0xc0, 0x46, 0x94, 0xec, 0xdb, 0xd5, 0xac, 0xfe, 0x4e, 0xc2, 0x3c, 0x06, 0x5e, 0xfe, 0xb7, 0x93, 0x6a, 0x1c, 0x62, 0x43, 0x2c, 0xde, 0x74, 0xfd, 0xbb, 0x4f, 0x54, 0x37, 0xcd, 0xec, 0xa5, 0x3c, 0xb7, 0xab, 0x79, 0xf6, 0x92, 0x69, 0x4f, 0x91, 0xed, 0x37, 0x35, 0xfb, 0xc4, 0xe0, 0x8a, 0x3f, 0x52, 0x78, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_519 = { .name = "ecdsa_brainpoolp256r1_sha256_519", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_519_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_519_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_519_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 520 for ECDSA, tcId is 96 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_520_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_520_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_520_sig[] = { 0x8f, 0x25, 0x65, 0xb5, 0x17, 0xf6, 0x2a, 0x3b, 0x1e, 0x19, 0xb0, 0x91, 0x7a, 0xb2, 0xb2, 0x23, 0xfc, 0x81, 0x93, 0xcc, 0x0f, 0xdf, 0x3a, 0xb9, 0x69, 0x2b, 0xc4, 0x2c, 0xf4, 0x09, 0x10, 0xe8, 0x1d, 0xcc, 0xfb, 0xed, 0x8b, 0x90, 0xee, 0x53, 0x91, 0xea, 0x74, 0x3e, 0x35, 0xb6, 0x0e, 0xd3, 0x1d, 0x19, 0xed, 0xfb, 0xd9, 0x45, 0x04, 0xba, 0xdc, 0xa4, 0xaa, 0x4c, 0xf2, 0xa7, 0xbb, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_520 = { .name = "ecdsa_brainpoolp256r1_sha256_520", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_520_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_520_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_520_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 521 for ECDSA, tcId is 97 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_521_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_521_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_521_sig[] = { 0x31, 0xc6, 0x27, 0xfd, 0x79, 0x1f, 0x73, 0x44, 0x21, 0xe5, 0x50, 0x26, 0x18, 0xae, 0xc4, 0x47, 0xc6, 0x70, 0x29, 0xb2, 0x79, 0x4e, 0xe1, 0x2b, 0x08, 0xee, 0xb6, 0xc5, 0x9a, 0xed, 0xb3, 0xee, 0x08, 0xf9, 0x1f, 0x37, 0x89, 0xbd, 0x01, 0xe5, 0xb9, 0xd9, 0x39, 0x41, 0xcf, 0x46, 0x69, 0x8d, 0x5e, 0x1a, 0x27, 0x08, 0xe7, 0x0e, 0xe9, 0xa2, 0x26, 0xe8, 0x1e, 0x7f, 0x4a, 0x41, 0x4e, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_521 = { .name = "ecdsa_brainpoolp256r1_sha256_521", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_521_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_521_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_521_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 522 for ECDSA, tcId is 98 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_522_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_522_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_522_sig[] = { 0x60, 0x05, 0x29, 0x31, 0x32, 0xd7, 0xea, 0xc0, 0xe7, 0x2b, 0x9b, 0x21, 0x8d, 0x03, 0x21, 0x26, 0x75, 0xd5, 0xaa, 0xe0, 0xda, 0x97, 0xbc, 0xcd, 0xf1, 0xa5, 0xff, 0x78, 0x4d, 0xe5, 0xcd, 0xe6, 0x13, 0xa1, 0x55, 0xc7, 0x4a, 0x9a, 0xb2, 0x7c, 0xbd, 0xf6, 0xca, 0xe1, 0x8d, 0x4d, 0x1f, 0x18, 0xb8, 0x21, 0x2d, 0x80, 0x18, 0x55, 0x1e, 0x2b, 0xae, 0xc9, 0x19, 0x79, 0xea, 0x5b, 0x4c, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_522 = { .name = "ecdsa_brainpoolp256r1_sha256_522", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_522_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_522_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_522_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 523 for ECDSA, tcId is 99 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_523_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_523_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_523_sig[] = { 0x3a, 0x6d, 0xab, 0x51, 0xed, 0x90, 0x27, 0xf5, 0xca, 0xe1, 0x92, 0xe0, 0x58, 0x6a, 0x32, 0xc8, 0xef, 0x22, 0x76, 0xce, 0xba, 0x3b, 0x79, 0x60, 0x59, 0xdc, 0xa1, 0x35, 0xe3, 0x61, 0x79, 0x5d, 0x4b, 0xf1, 0x6b, 0x0e, 0x62, 0xe3, 0x2a, 0x94, 0x50, 0x88, 0xf5, 0x5f, 0xb4, 0x28, 0x15, 0x9a, 0xf7, 0x82, 0x96, 0xdd, 0x4f, 0x8d, 0xfd, 0x97, 0x13, 0xbd, 0xb2, 0xf6, 0x77, 0xcb, 0xcd, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_523 = { .name = "ecdsa_brainpoolp256r1_sha256_523", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_523_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_523_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_523_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 524 for ECDSA, tcId is 100 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_524_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_524_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_524_sig[] = { 0x96, 0x1d, 0xe7, 0x7e, 0xd9, 0xcf, 0x61, 0x70, 0xd9, 0x25, 0xc2, 0x33, 0xbd, 0x3e, 0x20, 0xee, 0xf9, 0xbb, 0xe6, 0xd6, 0xc8, 0xda, 0xc2, 0x8a, 0xcd, 0xe4, 0x60, 0x11, 0xf9, 0x9f, 0x8b, 0xff, 0x97, 0x7d, 0xe0, 0x47, 0x79, 0xff, 0xe3, 0xaf, 0xe7, 0x08, 0xd8, 0x1c, 0xe8, 0xa1, 0xed, 0x6c, 0x7d, 0x2a, 0x9a, 0x25, 0xef, 0x99, 0x59, 0xc7, 0xa9, 0x51, 0xa0, 0x55, 0x5a, 0x6d, 0x37, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_524 = { .name = "ecdsa_brainpoolp256r1_sha256_524", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_524_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_524_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_524_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 525 for ECDSA, tcId is 101 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_525_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_525_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_525_sig[] = { 0x77, 0x85, 0x81, 0xb3, 0xd4, 0x03, 0x00, 0x31, 0x14, 0x1e, 0x55, 0x5f, 0xa1, 0xdb, 0xeb, 0xae, 0xf0, 0xee, 0xd0, 0x19, 0xe0, 0xb8, 0x97, 0xb5, 0x07, 0x65, 0x44, 0xab, 0x80, 0x49, 0x8b, 0x9c, 0x71, 0x32, 0xc8, 0xd1, 0x09, 0xc1, 0xf1, 0xa6, 0xc1, 0x0f, 0x81, 0xe9, 0xfc, 0x11, 0xad, 0xea, 0x4b, 0x9c, 0xff, 0x59, 0x92, 0x08, 0xb6, 0xd9, 0xcb, 0x4e, 0x4b, 0x27, 0xf1, 0x97, 0x28, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_525 = { .name = "ecdsa_brainpoolp256r1_sha256_525", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_525_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_525_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_525_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 526 for ECDSA, tcId is 102 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_526_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_526_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_526_sig[] = { 0x9e, 0xea, 0xc8, 0xf0, 0x7c, 0x40, 0xcc, 0x8e, 0xe3, 0xcb, 0xa1, 0x07, 0xaf, 0x49, 0xd5, 0x26, 0x73, 0x1d, 0x8b, 0x7c, 0x70, 0x13, 0x0c, 0xbb, 0x6e, 0xfa, 0x3c, 0x61, 0x50, 0x5d, 0x63, 0x37, 0x62, 0xdb, 0x38, 0x22, 0x6b, 0x71, 0xf6, 0x4a, 0x5b, 0x59, 0x8a, 0xb7, 0xc4, 0xe3, 0xf8, 0x98, 0x80, 0xfe, 0x0d, 0x07, 0x49, 0xdf, 0xd5, 0xc7, 0xa3, 0x8a, 0x3e, 0xec, 0x3c, 0x79, 0x38, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_526 = { .name = "ecdsa_brainpoolp256r1_sha256_526", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_526_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_526_msg, .msglen = 8, .sig = ecdsa_brainpoolp256r1_sha256_526_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 527 for ECDSA, tcId is 103 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_527_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_527_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_527_sig[] = { 0x67, 0x3d, 0x41, 0xc1, 0x7e, 0x72, 0x7f, 0x01, 0x25, 0x17, 0x5b, 0x2a, 0x9f, 0x05, 0x61, 0xec, 0xc5, 0xcf, 0x9c, 0xd4, 0x90, 0x35, 0x82, 0x8b, 0xa7, 0xc4, 0x75, 0x45, 0xa0, 0xb3, 0x38, 0xf4, 0x00, 0x45, 0x9e, 0xf9, 0x78, 0xe7, 0xb0, 0x34, 0x68, 0xc8, 0x0f, 0xd4, 0x53, 0x3a, 0x33, 0x47, 0x55, 0xa0, 0x82, 0x6b, 0xf5, 0xa3, 0x0d, 0xf9, 0x19, 0x12, 0x9e, 0x35, 0x2d, 0x34, 0x75, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_527 = { .name = "ecdsa_brainpoolp256r1_sha256_527", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_527_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_527_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_527_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 528 for ECDSA, tcId is 104 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_528_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_528_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_528_sig[] = { 0x8a, 0x97, 0xf1, 0x9b, 0x08, 0x09, 0x04, 0x2c, 0xda, 0xfe, 0x9c, 0x32, 0xbc, 0x0b, 0x0b, 0x01, 0x21, 0x8a, 0x49, 0x86, 0x7a, 0x68, 0x82, 0xd6, 0x4d, 0x5b, 0x7b, 0xc2, 0x55, 0xeb, 0x77, 0x3d, 0x90, 0x46, 0x62, 0xb5, 0xdf, 0xd8, 0xcd, 0x94, 0xea, 0xef, 0xd5, 0x7e, 0x5d, 0x4f, 0x2d, 0x14, 0x26, 0x8e, 0x1b, 0x8c, 0x4f, 0xbd, 0x4a, 0xc4, 0xe5, 0x08, 0x0f, 0x79, 0xd5, 0x3f, 0xd2, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_528 = { .name = "ecdsa_brainpoolp256r1_sha256_528", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_528_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_528_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_528_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 529 for ECDSA, tcId is 105 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_529_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_529_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_529_sig[] = { 0x28, 0x7a, 0x88, 0xbd, 0xb5, 0x61, 0xfa, 0x27, 0x85, 0xca, 0x25, 0x86, 0x63, 0xf8, 0x6d, 0x3b, 0x07, 0xaa, 0xc9, 0x49, 0xf6, 0x47, 0xee, 0x57, 0x26, 0x21, 0xb0, 0xb7, 0x0e, 0xb3, 0xe9, 0xca, 0x4a, 0x6d, 0x79, 0x16, 0x41, 0x84, 0x43, 0xde, 0xb4, 0xc4, 0x3f, 0x5c, 0x69, 0xf6, 0x49, 0x09, 0x52, 0xcf, 0x53, 0xee, 0x69, 0xee, 0xc1, 0xac, 0x69, 0xe1, 0x44, 0xb8, 0xf9, 0xe2, 0x63, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_529 = { .name = "ecdsa_brainpoolp256r1_sha256_529", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_529_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_529_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_529_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 530 for ECDSA, tcId is 106 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_530_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_530_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_530_sig[] = { 0x25, 0x0d, 0xb6, 0xa8, 0xb3, 0x81, 0x3b, 0x13, 0xb6, 0xfb, 0x7b, 0xf1, 0x98, 0x96, 0xf1, 0x3a, 0x50, 0x2b, 0xe4, 0x53, 0xc2, 0x04, 0xe6, 0xa8, 0x13, 0xa1, 0x64, 0xdb, 0xdd, 0x9c, 0x66, 0xca, 0x1d, 0x96, 0x68, 0x3a, 0xc9, 0x7f, 0x58, 0x74, 0xac, 0x95, 0x38, 0xb5, 0x7b, 0xf1, 0xea, 0xa5, 0x0a, 0x11, 0xa3, 0x3e, 0x9a, 0xbb, 0x82, 0x5d, 0x6b, 0x7a, 0x75, 0x46, 0xa6, 0x98, 0x60, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_530 = { .name = "ecdsa_brainpoolp256r1_sha256_530", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_530_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_530_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_530_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 531 for ECDSA, tcId is 107 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_531_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_531_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_531_sig[] = { 0xa2, 0x9b, 0x2c, 0x4b, 0xe5, 0x0f, 0x17, 0x24, 0xa1, 0xce, 0x9a, 0xcd, 0x4c, 0x51, 0x29, 0xb3, 0x91, 0xb4, 0xb9, 0x00, 0x9a, 0xbb, 0x58, 0x23, 0x97, 0xa5, 0x22, 0xc7, 0x71, 0xd5, 0x4a, 0xbd, 0x0e, 0xc1, 0xd7, 0xae, 0xdb, 0xfe, 0x4e, 0x74, 0x3d, 0x76, 0x27, 0xea, 0x8d, 0x20, 0x7c, 0x24, 0x60, 0xae, 0x4c, 0x9f, 0x21, 0x34, 0xb0, 0xf8, 0x4a, 0x02, 0x55, 0x20, 0x5a, 0xc2, 0x34, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_531 = { .name = "ecdsa_brainpoolp256r1_sha256_531", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_531_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_531_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_531_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 532 for ECDSA, tcId is 108 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_532_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_532_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_532_sig[] = { 0x14, 0x9f, 0x05, 0x08, 0xae, 0xf9, 0xfb, 0xcc, 0xf3, 0x2e, 0x1b, 0xd3, 0x19, 0x9d, 0x63, 0x02, 0x40, 0xbb, 0x65, 0x77, 0x59, 0x3e, 0x87, 0x56, 0x6b, 0x0a, 0x14, 0xa5, 0xb6, 0xf2, 0x09, 0x99, 0x5d, 0x37, 0xb4, 0x09, 0xc0, 0x1f, 0xb9, 0xb6, 0xcf, 0x4e, 0xa1, 0x44, 0x32, 0xc3, 0x56, 0x31, 0x69, 0x44, 0x02, 0xd2, 0x87, 0x5a, 0x30, 0x1d, 0x76, 0x1d, 0x81, 0x81, 0x14, 0x69, 0x62, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_532 = { .name = "ecdsa_brainpoolp256r1_sha256_532", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_532_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_532_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_532_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 533 for ECDSA, tcId is 109 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_533_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_533_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_533_sig[] = { 0x6c, 0x9b, 0x11, 0x0d, 0x8e, 0x44, 0x53, 0xd8, 0x2e, 0xc5, 0x1a, 0x5a, 0x69, 0x1b, 0x15, 0x2e, 0xdf, 0x9f, 0xb1, 0xa9, 0x94, 0x7b, 0xd0, 0x01, 0xbe, 0xb2, 0x4d, 0x56, 0xf3, 0xbf, 0x27, 0xaf, 0x2a, 0x80, 0xbb, 0xd2, 0xf8, 0x27, 0xcc, 0x23, 0x15, 0x75, 0x26, 0xdf, 0x6e, 0xa4, 0xe0, 0xe3, 0x24, 0xb7, 0x65, 0xa5, 0x0b, 0xe7, 0x7f, 0x7e, 0x96, 0x67, 0x55, 0x8a, 0x16, 0x5e, 0xb6, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_533 = { .name = "ecdsa_brainpoolp256r1_sha256_533", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_533_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_533_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_533_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 534 for ECDSA, tcId is 110 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_534_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_534_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_534_sig[] = { 0x90, 0x86, 0xa5, 0xc9, 0x38, 0x23, 0xb1, 0xdf, 0x21, 0xf6, 0x39, 0x51, 0xed, 0x6e, 0x70, 0x7f, 0xba, 0x0d, 0x89, 0x9e, 0xef, 0x71, 0x11, 0x00, 0xe3, 0x2f, 0x2d, 0x60, 0x17, 0xda, 0x65, 0x90, 0x1f, 0x83, 0x1e, 0xd3, 0x0c, 0x12, 0x9d, 0xab, 0x42, 0x66, 0x27, 0x2e, 0x01, 0x28, 0x32, 0x10, 0xed, 0x82, 0x3c, 0x55, 0x90, 0x7a, 0xc5, 0xec, 0xda, 0x85, 0xd7, 0x0b, 0xd8, 0x02, 0x79, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_534 = { .name = "ecdsa_brainpoolp256r1_sha256_534", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_534_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_534_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_534_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 535 for ECDSA, tcId is 111 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_535_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_535_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_535_sig[] = { 0x2a, 0xf6, 0x35, 0x47, 0xdc, 0x5f, 0xfc, 0x8b, 0xa4, 0xd1, 0x68, 0xd3, 0x68, 0xd9, 0x22, 0x81, 0x32, 0xa0, 0xef, 0xa2, 0x0e, 0x32, 0x55, 0xc3, 0x32, 0x21, 0x9f, 0xec, 0xed, 0x80, 0x03, 0x95, 0x36, 0x42, 0xf5, 0x3c, 0xe9, 0x52, 0x1f, 0xab, 0x75, 0x4b, 0xe7, 0x71, 0x1f, 0x00, 0xaf, 0x78, 0x88, 0x22, 0x2b, 0xf2, 0xbb, 0xf1, 0xed, 0x89, 0x95, 0xe0, 0x3b, 0x55, 0xc9, 0x8a, 0x60, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_535 = { .name = "ecdsa_brainpoolp256r1_sha256_535", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_535_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_535_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_535_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 536 for ECDSA, tcId is 112 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_536_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_536_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_536_sig[] = { 0x91, 0xe9, 0xac, 0xef, 0x9b, 0xc2, 0x8c, 0x91, 0x08, 0x91, 0xb8, 0x03, 0x20, 0xaf, 0x36, 0x03, 0xc4, 0x30, 0x61, 0x74, 0xf1, 0x7e, 0x97, 0x05, 0x92, 0x67, 0xfc, 0x81, 0x78, 0x14, 0xff, 0x1f, 0x7a, 0x9c, 0x83, 0x3b, 0xeb, 0x73, 0xbd, 0xd6, 0x2d, 0xf6, 0x49, 0x52, 0xb4, 0xc8, 0x48, 0xd2, 0x18, 0x0f, 0xae, 0x38, 0x5f, 0x80, 0x84, 0xf1, 0xfc, 0x5b, 0x1b, 0x1c, 0x64, 0x57, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_536 = { .name = "ecdsa_brainpoolp256r1_sha256_536", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_536_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_536_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_536_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 537 for ECDSA, tcId is 113 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_537_pubkey[] = { 0x4b, 0x40, 0x2a, 0x9a, 0xe1, 0x8f, 0xc1, 0xa8, 0x7c, 0xda, 0x33, 0x74, 0x83, 0x90, 0x04, 0x99, 0xfe, 0x72, 0x9e, 0x47, 0x16, 0x07, 0x67, 0x16, 0x51, 0xa2, 0x63, 0xfb, 0xf0, 0xd9, 0x3f, 0x78, 0x1e, 0xf9, 0xb0, 0xf9, 0x8f, 0xb7, 0x3b, 0xcb, 0x60, 0x5a, 0x78, 0x23, 0xa4, 0x27, 0xea, 0x5f, 0x0d, 0x98, 0x78, 0x8c, 0x7d, 0xae, 0x42, 0xa0, 0x45, 0x36, 0x20, 0x20, 0x22, 0xc0, 0x21, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_537_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_537_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0x02, 0x7b, 0x80, 0x1f, 0xc4, 0x79, 0x30, 0x8f, 0xf5, 0x39, 0x9a, 0x88, 0x25, 0xfc, 0xcf, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_537 = { .name = "ecdsa_brainpoolp256r1_sha256_537", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_537_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_537_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_537_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 113 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 538 for ECDSA, tcId is 114 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_538_pubkey[] = { 0x4b, 0x40, 0x2a, 0x9a, 0xe1, 0x8f, 0xc1, 0xa8, 0x7c, 0xda, 0x33, 0x74, 0x83, 0x90, 0x04, 0x99, 0xfe, 0x72, 0x9e, 0x47, 0x16, 0x07, 0x67, 0x16, 0x51, 0xa2, 0x63, 0xfb, 0xf0, 0xd9, 0x3f, 0x78, 0x1e, 0xf9, 0xb0, 0xf9, 0x8f, 0xb7, 0x3b, 0xcb, 0x60, 0x5a, 0x78, 0x23, 0xa4, 0x27, 0xea, 0x5f, 0x0d, 0x98, 0x78, 0x8c, 0x7d, 0xae, 0x42, 0xa0, 0x45, 0x36, 0x20, 0x20, 0x22, 0xc0, 0x21, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_538_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_538_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_538 = { .name = "ecdsa_brainpoolp256r1_sha256_538", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_538_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_538_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_538_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 114 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 539 for ECDSA, tcId is 115 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_539_pubkey[] = { 0x40, 0xa2, 0xdf, 0x0f, 0x17, 0xc7, 0x87, 0x34, 0x59, 0xd5, 0xe9, 0xac, 0x11, 0xff, 0xf8, 0x4d, 0xeb, 0x5f, 0x40, 0xff, 0x9a, 0x52, 0xdf, 0x87, 0x45, 0xbb, 0x47, 0x70, 0xf6, 0xdb, 0xf5, 0x81, 0x99, 0xc2, 0xbf, 0x49, 0x20, 0xe9, 0xc8, 0xf7, 0x58, 0xc2, 0xde, 0x69, 0xe4, 0x2c, 0x1c, 0xb7, 0x7c, 0x58, 0x42, 0x5a, 0x9d, 0xaf, 0xa4, 0x1d, 0x7b, 0x08, 0x73, 0xef, 0xa8, 0x94, 0xce, 0xdc, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_539_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa3, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_539 = { .name = "ecdsa_brainpoolp256r1_sha256_539", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_539_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_539_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_539_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 115 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 540 for ECDSA, tcId is 116 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_540_pubkey[] = { 0x9d, 0xe6, 0x69, 0xf9, 0x44, 0x4d, 0xa8, 0x2e, 0x42, 0x9f, 0x84, 0x2f, 0x31, 0xc6, 0x44, 0x18, 0xd4, 0xd7, 0xb0, 0x5e, 0x93, 0xf4, 0x1d, 0xad, 0xdd, 0x09, 0xfc, 0x18, 0x1a, 0xc2, 0x27, 0xc6, 0x1c, 0x86, 0x21, 0x0e, 0x82, 0x91, 0xfc, 0x5a, 0xe3, 0x0c, 0x72, 0xe2, 0x01, 0x3e, 0xc2, 0x2b, 0xb9, 0x7d, 0x88, 0xbf, 0x37, 0x6d, 0x4a, 0x85, 0xdd, 0x1b, 0xb7, 0x1b, 0x22, 0x52, 0x6d, 0x1f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_540_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4a, 0xb8, 0xde, 0x0a, 0x51, 0x48, 0x1b, 0xc4, 0x57, 0x94, 0xb9, 0x24, 0x51, 0x8f, 0x2d, 0xd6, 0xac, 0x5c, 0xce, 0x31, 0xf3, 0x22, 0x8d, 0x62, 0x4c, 0x5a, 0x89, 0x6f, 0x79, 0xa2, 0xd6, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_540 = { .name = "ecdsa_brainpoolp256r1_sha256_540", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_540_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_540_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_540_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 116 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 541 for ECDSA, tcId is 117 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_541_pubkey[] = { 0x30, 0x34, 0x5b, 0x64, 0x51, 0x37, 0x7b, 0x78, 0xa5, 0x4a, 0xc6, 0xe1, 0x10, 0xf5, 0x0c, 0x7d, 0xe7, 0x1c, 0x2c, 0x76, 0x02, 0x78, 0x37, 0x36, 0x07, 0x72, 0x2c, 0x53, 0xf5, 0x86, 0x79, 0x07, 0x59, 0xac, 0xc4, 0x00, 0x14, 0xc9, 0x3d, 0x4a, 0xd4, 0x47, 0x78, 0xbc, 0x1a, 0x44, 0xeb, 0xae, 0xbe, 0x1a, 0x97, 0xc8, 0x8a, 0xd1, 0x1c, 0x10, 0x25, 0x05, 0x7b, 0x6b, 0xc4, 0x37, 0x7f, 0x2d, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_541_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x1b, 0x5f, 0x89, 0xf5, 0xbb, 0x74, 0xca, 0xa4, 0x2d, 0x36, 0xe6, 0x01, 0xa9, 0xf3, 0xc2, 0x0b, 0x4e, 0x6c, 0x91, 0xce, 0xb9, 0x8a, 0x52, 0xfb, 0xfa, 0x9f, 0x81, 0x78, 0x1b, 0x8a, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_541 = { .name = "ecdsa_brainpoolp256r1_sha256_541", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_541_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_541_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_541_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 117 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 542 for ECDSA, tcId is 118 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_542_pubkey[] = { 0x14, 0x9d, 0x89, 0x3f, 0x13, 0x06, 0xfb, 0x25, 0x3b, 0xbf, 0x3a, 0x86, 0x91, 0xab, 0xa8, 0xa5, 0x00, 0x02, 0xb0, 0xa2, 0x76, 0x93, 0xaa, 0x97, 0x43, 0x5a, 0x7b, 0x5c, 0xb3, 0x3a, 0x55, 0xee, 0x24, 0xb0, 0x75, 0xfc, 0xdb, 0xc1, 0xa7, 0x39, 0xf2, 0xf4, 0x92, 0xdb, 0xe4, 0x79, 0x94, 0x74, 0xee, 0x3a, 0xd3, 0x80, 0x44, 0x47, 0xe7, 0xd5, 0x84, 0xe3, 0x43, 0x0c, 0xe1, 0x5a, 0x96, 0x8a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_542_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_542 = { .name = "ecdsa_brainpoolp256r1_sha256_542", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_542_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_542_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_542_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 118 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 543 for ECDSA, tcId is 119 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_543_pubkey[] = { 0x14, 0x9d, 0x89, 0x3f, 0x13, 0x06, 0xfb, 0x25, 0x3b, 0xbf, 0x3a, 0x86, 0x91, 0xab, 0xa8, 0xa5, 0x00, 0x02, 0xb0, 0xa2, 0x76, 0x93, 0xaa, 0x97, 0x43, 0x5a, 0x7b, 0x5c, 0xb3, 0x3a, 0x55, 0xee, 0x24, 0xb0, 0x75, 0xfc, 0xdb, 0xc1, 0xa7, 0x39, 0xf2, 0xf4, 0x92, 0xdb, 0xe4, 0x79, 0x94, 0x74, 0xee, 0x3a, 0xd3, 0x80, 0x44, 0x47, 0xe7, 0xd5, 0x84, 0xe3, 0x43, 0x0c, 0xe1, 0x5a, 0x96, 0x8a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_543_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_543_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_543 = { .name = "ecdsa_brainpoolp256r1_sha256_543", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_543_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_543_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_543_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 119 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 544 for ECDSA, tcId is 120 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_544_pubkey[] = { 0x15, 0x6e, 0x62, 0x66, 0x49, 0xce, 0x82, 0x36, 0x98, 0x22, 0x01, 0xa2, 0x49, 0x35, 0xfb, 0x3d, 0x36, 0xb0, 0xd7, 0x30, 0x41, 0xb6, 0xfd, 0xca, 0x97, 0x99, 0x0a, 0x8d, 0x15, 0x2e, 0xfb, 0x8b, 0x32, 0x6f, 0x4b, 0x20, 0xa0, 0xcc, 0x46, 0x23, 0xb0, 0x2a, 0x6b, 0xb1, 0x71, 0x14, 0x90, 0x1a, 0x01, 0xde, 0x0d, 0xf1, 0x71, 0x6d, 0x66, 0x9d, 0x25, 0x3d, 0xe4, 0x40, 0xcc, 0x8f, 0x9c, 0xdd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_544_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_544_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_544 = { .name = "ecdsa_brainpoolp256r1_sha256_544", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_544_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_544_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_544_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 120 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 545 for ECDSA, tcId is 121 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_545_pubkey[] = { 0x15, 0x6e, 0x62, 0x66, 0x49, 0xce, 0x82, 0x36, 0x98, 0x22, 0x01, 0xa2, 0x49, 0x35, 0xfb, 0x3d, 0x36, 0xb0, 0xd7, 0x30, 0x41, 0xb6, 0xfd, 0xca, 0x97, 0x99, 0x0a, 0x8d, 0x15, 0x2e, 0xfb, 0x8b, 0x32, 0x6f, 0x4b, 0x20, 0xa0, 0xcc, 0x46, 0x23, 0xb0, 0x2a, 0x6b, 0xb1, 0x71, 0x14, 0x90, 0x1a, 0x01, 0xde, 0x0d, 0xf1, 0x71, 0x6d, 0x66, 0x9d, 0x25, 0x3d, 0xe4, 0x40, 0xcc, 0x8f, 0x9c, 0xdd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_545_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_545 = { .name = "ecdsa_brainpoolp256r1_sha256_545", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_545_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_545_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_545_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 121 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 546 for ECDSA, tcId is 122 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_546_pubkey[] = { 0x10, 0xcc, 0x79, 0x92, 0xed, 0xe2, 0x8c, 0x7b, 0x4d, 0xda, 0x5c, 0x35, 0xcb, 0xd7, 0x11, 0x74, 0x91, 0x8e, 0x83, 0xad, 0xab, 0x03, 0x42, 0xcc, 0x3d, 0x55, 0x6a, 0x41, 0x3b, 0x4c, 0xe9, 0x3b, 0x3f, 0x9c, 0x3b, 0x38, 0xae, 0xf0, 0xa0, 0xe6, 0x87, 0xd7, 0xee, 0x6a, 0xfd, 0xe7, 0x0d, 0x47, 0xd6, 0x90, 0x0f, 0xf0, 0xce, 0x62, 0x15, 0x6e, 0x86, 0x45, 0xb8, 0x10, 0x3f, 0xc6, 0x6c, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_546_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_546_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_546 = { .name = "ecdsa_brainpoolp256r1_sha256_546", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_546_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_546_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_546_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 122 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 547 for ECDSA, tcId is 123 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_547_pubkey[] = { 0x10, 0xcc, 0x79, 0x92, 0xed, 0xe2, 0x8c, 0x7b, 0x4d, 0xda, 0x5c, 0x35, 0xcb, 0xd7, 0x11, 0x74, 0x91, 0x8e, 0x83, 0xad, 0xab, 0x03, 0x42, 0xcc, 0x3d, 0x55, 0x6a, 0x41, 0x3b, 0x4c, 0xe9, 0x3b, 0x3f, 0x9c, 0x3b, 0x38, 0xae, 0xf0, 0xa0, 0xe6, 0x87, 0xd7, 0xee, 0x6a, 0xfd, 0xe7, 0x0d, 0x47, 0xd6, 0x90, 0x0f, 0xf0, 0xce, 0x62, 0x15, 0x6e, 0x86, 0x45, 0xb8, 0x10, 0x3f, 0xc6, 0x6c, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_547_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_547_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_547 = { .name = "ecdsa_brainpoolp256r1_sha256_547", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_547_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_547_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_547_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 123 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 548 for ECDSA, tcId is 124 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_548_pubkey[] = { 0x10, 0xcc, 0x79, 0x92, 0xed, 0xe2, 0x8c, 0x7b, 0x4d, 0xda, 0x5c, 0x35, 0xcb, 0xd7, 0x11, 0x74, 0x91, 0x8e, 0x83, 0xad, 0xab, 0x03, 0x42, 0xcc, 0x3d, 0x55, 0x6a, 0x41, 0x3b, 0x4c, 0xe9, 0x3b, 0x3f, 0x9c, 0x3b, 0x38, 0xae, 0xf0, 0xa0, 0xe6, 0x87, 0xd7, 0xee, 0x6a, 0xfd, 0xe7, 0x0d, 0x47, 0xd6, 0x90, 0x0f, 0xf0, 0xce, 0x62, 0x15, 0x6e, 0x86, 0x45, 0xb8, 0x10, 0x3f, 0xc6, 0x6c, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_548_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_548 = { .name = "ecdsa_brainpoolp256r1_sha256_548", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_548_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_548_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_548_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 124 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 549 for ECDSA, tcId is 125 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_549_pubkey[] = { 0x2b, 0xa2, 0x8f, 0x62, 0x36, 0xc5, 0xa7, 0x74, 0xcd, 0x10, 0x4b, 0x03, 0x6d, 0x2e, 0x01, 0x67, 0x11, 0xcb, 0x4a, 0x83, 0xfa, 0x07, 0x8b, 0x51, 0x50, 0xf6, 0x9e, 0x50, 0x98, 0xde, 0x7b, 0x4c, 0xa7, 0xc1, 0x3e, 0xf8, 0xc5, 0x7f, 0xcb, 0xe6, 0x84, 0xce, 0xff, 0x31, 0x2e, 0xf5, 0x3a, 0xf1, 0xb1, 0x43, 0x97, 0xd4, 0x15, 0x4b, 0xa6, 0x10, 0x6a, 0x33, 0x83, 0xaa, 0xed, 0x16, 0xec, 0xb1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_549_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x5b, 0x2d, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_549 = { .name = "ecdsa_brainpoolp256r1_sha256_549", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_549_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_549_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_549_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 125 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 550 for ECDSA, tcId is 126 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_550_pubkey[] = { 0x11, 0x34, 0x89, 0x55, 0x5b, 0xdc, 0x11, 0x23, 0x52, 0xb0, 0x8b, 0x7f, 0xfe, 0xbc, 0xf0, 0x50, 0x90, 0xf9, 0x4d, 0xa6, 0x23, 0x67, 0x64, 0x6b, 0x2e, 0x03, 0xa3, 0x47, 0x88, 0x63, 0x91, 0x4b, 0x4b, 0x4a, 0x0a, 0x43, 0x54, 0x62, 0xa1, 0x22, 0xf6, 0xd9, 0xac, 0x80, 0x13, 0x19, 0xbb, 0xc6, 0xd2, 0xc5, 0x92, 0x28, 0x86, 0x1a, 0x34, 0x14, 0xb5, 0x00, 0xe5, 0xcf, 0x59, 0x43, 0xc9, 0x64, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_550_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x28, 0x27, 0x37, 0x05, 0x84, 0xfd, 0xeb, 0x9f, 0x5d, 0x5a, 0x9f, 0xb9, 0x57, 0x9a, 0x09, 0x39, 0x0e, 0xfb, 0x6f, 0x9d, 0x99, 0xb6, 0x4f, 0xc1, 0x88, 0xd8, 0xbc, 0xe0, 0x5c, 0x2d, 0x4e, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_550 = { .name = "ecdsa_brainpoolp256r1_sha256_550", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_550_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_550_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_550_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 126 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 551 for ECDSA, tcId is 127 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_551_pubkey[] = { 0x34, 0x22, 0x47, 0x46, 0xef, 0xa8, 0xc5, 0xd4, 0xf4, 0xc6, 0xb8, 0x2d, 0xe4, 0xd7, 0x6d, 0x3e, 0x71, 0x50, 0xc1, 0xb6, 0x9e, 0x23, 0x33, 0x9f, 0x09, 0x8f, 0xf7, 0x69, 0xbc, 0xac, 0x94, 0xbf, 0x94, 0x61, 0x8e, 0x36, 0x24, 0xa5, 0x7d, 0x48, 0xd1, 0x9e, 0x72, 0x86, 0x7d, 0xbc, 0x19, 0x1a, 0x0f, 0xd0, 0x5c, 0xf6, 0xf4, 0xb5, 0xec, 0x49, 0x7b, 0x79, 0x76, 0x26, 0xa5, 0x7b, 0xaa, 0x22, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_551_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xce, 0x49, 0x37, 0xa0, 0x87, 0x73, 0x1d, 0xf4, 0xfe, 0xbc, 0x2c, 0x3a, 0x81, 0xdd, 0xfb, 0xab, 0x5d, 0xc3, 0xaf, 0x95, 0x08, 0x17, 0xf4, 0x1b, 0x59, 0x0d, 0x15, 0x6e, 0xd4, 0x09, 0xad, 0x28, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_551 = { .name = "ecdsa_brainpoolp256r1_sha256_551", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_551_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_551_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_551_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 127 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 552 for ECDSA, tcId is 128 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_552_pubkey[] = { 0x6f, 0xb0, 0xcd, 0xf3, 0xb0, 0x8d, 0xc5, 0xd8, 0xb7, 0xe5, 0x25, 0x9c, 0x7d, 0x1b, 0xbd, 0x31, 0xa2, 0x23, 0x53, 0x45, 0xb7, 0xb4, 0x45, 0x63, 0x1e, 0x89, 0x4b, 0x56, 0x7d, 0x23, 0xc0, 0x79, 0x53, 0x24, 0x32, 0x07, 0xdf, 0x5c, 0x44, 0x60, 0x11, 0xc1, 0xcf, 0xed, 0xde, 0x6e, 0x53, 0x51, 0x95, 0x8a, 0xff, 0xa8, 0xf2, 0x74, 0xfe, 0x5a, 0xf4, 0x35, 0x75, 0x9d, 0xe8, 0x7d, 0xb3, 0x43, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_552_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x91, 0x82, 0x7d, 0x03, 0xbb, 0x6d, 0xac, 0x31, 0x94, 0x0b, 0xa5, 0x6e, 0xd8, 0x84, 0x89, 0x04, 0x8f, 0xf1, 0x73, 0xf0, 0xbf, 0x20, 0xca, 0xb2, 0x0d, 0xcc, 0x08, 0x6f, 0xca, 0x37, 0xf2, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_552 = { .name = "ecdsa_brainpoolp256r1_sha256_552", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_552_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_552_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_552_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 128 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 553 for ECDSA, tcId is 129 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_553_pubkey[] = { 0x0b, 0x8d, 0x3b, 0xef, 0x12, 0xeb, 0xab, 0x43, 0xf2, 0xf6, 0xf6, 0x61, 0x8f, 0x08, 0x43, 0xd5, 0xf4, 0x5d, 0x97, 0x87, 0x4f, 0x26, 0xf9, 0xa3, 0x6b, 0x78, 0x8c, 0xb7, 0xa6, 0x9e, 0xcf, 0x5f, 0x85, 0x55, 0x88, 0xc9, 0x9b, 0x38, 0x39, 0xca, 0x93, 0x61, 0xdd, 0xc7, 0x76, 0x45, 0xf7, 0x59, 0x2a, 0xd3, 0x71, 0x43, 0x8e, 0xe3, 0xe1, 0x86, 0xc7, 0x40, 0x81, 0xc4, 0x81, 0xdd, 0x52, 0x95, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_553_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_553 = { .name = "ecdsa_brainpoolp256r1_sha256_553", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_553_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_553_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_553_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 129 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 554 for ECDSA, tcId is 130 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_554_pubkey[] = { 0x6d, 0x24, 0x98, 0x53, 0x42, 0xa4, 0x5a, 0x55, 0xfd, 0x99, 0xe4, 0x75, 0x21, 0xfe, 0x3e, 0x99, 0x1b, 0x8a, 0x1d, 0x37, 0x6f, 0xa7, 0x38, 0x99, 0xd3, 0xba, 0xcc, 0x06, 0x7c, 0x12, 0xee, 0x0d, 0x65, 0x42, 0xf1, 0x48, 0x59, 0x9f, 0xcc, 0xb9, 0x9b, 0x1b, 0xa2, 0x8d, 0x38, 0x05, 0x81, 0x42, 0x92, 0xa9, 0x9b, 0xff, 0xe3, 0x71, 0xdf, 0x27, 0x7b, 0x09, 0xe8, 0xad, 0xa1, 0x25, 0x3d, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_554_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_554 = { .name = "ecdsa_brainpoolp256r1_sha256_554", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_554_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_554_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_554_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 130 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 555 for ECDSA, tcId is 131 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_555_pubkey[] = { 0x41, 0x25, 0xe4, 0x68, 0x20, 0xf4, 0x12, 0x06, 0xb6, 0x70, 0x88, 0x2a, 0x9d, 0x8d, 0x51, 0xb6, 0xba, 0xc3, 0x90, 0x91, 0x15, 0x0c, 0x9c, 0xb3, 0x3b, 0x6d, 0x00, 0x9e, 0x0c, 0xff, 0x52, 0x23, 0x65, 0x74, 0x92, 0x40, 0x62, 0x2b, 0x40, 0xd7, 0x0a, 0x63, 0x40, 0x79, 0x52, 0xc1, 0xb8, 0x76, 0x1c, 0x9f, 0x8e, 0x85, 0xab, 0xa6, 0xf0, 0x3b, 0xbc, 0x72, 0x19, 0xe2, 0x4e, 0x6f, 0xb2, 0x76, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_555_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x28, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_555 = { .name = "ecdsa_brainpoolp256r1_sha256_555", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_555_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_555_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_555_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 131 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 556 for ECDSA, tcId is 132 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_556_pubkey[] = { 0x91, 0xba, 0x17, 0x06, 0xa1, 0x9c, 0xe5, 0x8f, 0xac, 0xa2, 0x63, 0x66, 0xdc, 0xed, 0x29, 0x33, 0x99, 0x45, 0x0e, 0xfa, 0x48, 0x8f, 0x2c, 0x4b, 0xaa, 0x95, 0x69, 0x3b, 0x97, 0x4d, 0x07, 0x5d, 0x5e, 0x84, 0x01, 0x56, 0x5a, 0x37, 0xb0, 0x5b, 0x93, 0x51, 0xe4, 0x08, 0xaf, 0x54, 0x2b, 0xf0, 0xf7, 0x95, 0x7e, 0x5e, 0xed, 0x18, 0x2a, 0xfe, 0xab, 0xea, 0xfa, 0x2b, 0xf7, 0xbb, 0xbb, 0x47, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_556_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_556 = { .name = "ecdsa_brainpoolp256r1_sha256_556", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_556_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_556_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_556_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 132 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 557 for ECDSA, tcId is 133 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_557_pubkey[] = { 0x91, 0xba, 0x17, 0x06, 0xa1, 0x9c, 0xe5, 0x8f, 0xac, 0xa2, 0x63, 0x66, 0xdc, 0xed, 0x29, 0x33, 0x99, 0x45, 0x0e, 0xfa, 0x48, 0x8f, 0x2c, 0x4b, 0xaa, 0x95, 0x69, 0x3b, 0x97, 0x4d, 0x07, 0x5d, 0x5e, 0x84, 0x01, 0x56, 0x5a, 0x37, 0xb0, 0x5b, 0x93, 0x51, 0xe4, 0x08, 0xaf, 0x54, 0x2b, 0xf0, 0xf7, 0x95, 0x7e, 0x5e, 0xed, 0x18, 0x2a, 0xfe, 0xab, 0xea, 0xfa, 0x2b, 0xf7, 0xbb, 0xbb, 0x47, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_557_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_557 = { .name = "ecdsa_brainpoolp256r1_sha256_557", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_557_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_557_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_557_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 133 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 558 for ECDSA, tcId is 134 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_558_pubkey[] = { 0x25, 0xd1, 0x75, 0x70, 0xe4, 0xba, 0xe1, 0xe4, 0x68, 0xe6, 0xdd, 0x09, 0x75, 0xb3, 0x82, 0x36, 0x80, 0x61, 0xe0, 0xc7, 0x04, 0x24, 0x1c, 0x1d, 0x18, 0xfd, 0x5b, 0xaa, 0x8c, 0xa8, 0xdc, 0x13, 0x5a, 0xca, 0xdc, 0xd1, 0x39, 0x92, 0xf6, 0x66, 0x5b, 0x46, 0x9c, 0x9f, 0x9a, 0xb7, 0x79, 0x7e, 0x3c, 0x4b, 0x88, 0x1c, 0x6d, 0x7f, 0x4d, 0x26, 0x01, 0xc9, 0x6a, 0x15, 0x36, 0xf7, 0x6d, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_558_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_558 = { .name = "ecdsa_brainpoolp256r1_sha256_558", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_558_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_558_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_558_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 134 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 559 for ECDSA, tcId is 135 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_559_pubkey[] = { 0x1d, 0xc3, 0x32, 0x5f, 0xfa, 0x55, 0xe1, 0x79, 0xe2, 0x17, 0x1a, 0x66, 0xb2, 0xe7, 0x53, 0x4a, 0xe1, 0x2c, 0xfc, 0x29, 0x2a, 0xf2, 0xe0, 0xfb, 0xf1, 0xc3, 0xfc, 0xce, 0x55, 0x58, 0xfc, 0x6a, 0x24, 0x20, 0xab, 0xcd, 0xb7, 0xdf, 0x8c, 0xf3, 0x86, 0x34, 0x64, 0x82, 0x64, 0xa6, 0x81, 0xd5, 0xed, 0x19, 0x5b, 0xf1, 0x6a, 0x97, 0x0f, 0xfa, 0x68, 0xab, 0x25, 0x0b, 0x34, 0xa9, 0x35, 0x14, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_559_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_559 = { .name = "ecdsa_brainpoolp256r1_sha256_559", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_559_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_559_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_559_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 135 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 560 for ECDSA, tcId is 136 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_560_pubkey[] = { 0x3f, 0xff, 0xa6, 0xdb, 0xaf, 0x66, 0x7b, 0x0a, 0x94, 0xe5, 0xf8, 0x6b, 0x37, 0x74, 0xb9, 0x75, 0x97, 0x1a, 0x4d, 0x24, 0x39, 0x60, 0x7d, 0xef, 0x4e, 0x5d, 0xe1, 0xd1, 0x78, 0x20, 0xa3, 0xb2, 0x1b, 0xf3, 0x66, 0x13, 0xb5, 0x0b, 0x92, 0x52, 0x64, 0x55, 0x18, 0x15, 0xc5, 0xda, 0x78, 0x3b, 0xd1, 0x58, 0xaa, 0xa1, 0xc6, 0x24, 0x4b, 0x40, 0xa9, 0xfa, 0x31, 0xa2, 0xa4, 0x33, 0xf8, 0xe8, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_560_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_560 = { .name = "ecdsa_brainpoolp256r1_sha256_560", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_560_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_560_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_560_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 136 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 561 for ECDSA, tcId is 137 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_561_pubkey[] = { 0x8a, 0xfd, 0x47, 0xeb, 0x06, 0x67, 0x86, 0x0b, 0xec, 0x98, 0xd5, 0xdc, 0xd2, 0xf6, 0x0d, 0xa9, 0xea, 0xc1, 0xae, 0x99, 0x62, 0x05, 0x69, 0x89, 0x2f, 0x14, 0xe0, 0x94, 0xd6, 0x35, 0x87, 0x2a, 0x5e, 0x8f, 0x0b, 0xc6, 0x7b, 0x98, 0xa2, 0x33, 0xad, 0xe7, 0x15, 0xc0, 0x4d, 0x9d, 0xaa, 0xb1, 0x1a, 0x27, 0x51, 0x7a, 0x92, 0xcf, 0x26, 0x51, 0xc9, 0xe5, 0xf2, 0xfd, 0xe4, 0xe2, 0xdb, 0x98, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_561_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_561 = { .name = "ecdsa_brainpoolp256r1_sha256_561", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_561_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_561_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_561_sig, .siglen = 64, .result = -1, .comment = "u1 == 1, tcId is 137 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 562 for ECDSA, tcId is 138 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_562_pubkey[] = { 0x08, 0x76, 0x61, 0x66, 0x36, 0xa8, 0xdb, 0xc8, 0x21, 0x60, 0xac, 0x01, 0xaf, 0x29, 0x41, 0x35, 0x3b, 0xa0, 0xee, 0xa4, 0xa3, 0xb8, 0xfe, 0x31, 0x69, 0x6b, 0x47, 0x31, 0x7d, 0x49, 0x72, 0xc9, 0x23, 0x18, 0x00, 0x73, 0x06, 0x1d, 0x27, 0x98, 0x4e, 0xcf, 0x49, 0x1f, 0x39, 0x40, 0x04, 0xc3, 0xa4, 0x84, 0x6d, 0x77, 0x3f, 0x58, 0xdc, 0x2a, 0xb5, 0xe4, 0x3d, 0xcb, 0xf9, 0x68, 0xd0, 0x27, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_562_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_562 = { .name = "ecdsa_brainpoolp256r1_sha256_562", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_562_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_562_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_562_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 138 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 563 for ECDSA, tcId is 139 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_563_pubkey[] = { 0x0f, 0xab, 0xb0, 0x52, 0x21, 0x7e, 0xae, 0x8e, 0x63, 0xfe, 0xa4, 0xee, 0xa0, 0x99, 0x53, 0xd5, 0x18, 0x62, 0x42, 0x7f, 0x34, 0x13, 0x07, 0xd8, 0x19, 0xff, 0x6e, 0x93, 0x3b, 0xf7, 0x2b, 0xa9, 0x4b, 0x89, 0x7f, 0x2c, 0x4a, 0x4c, 0xf5, 0x70, 0x54, 0xc3, 0x63, 0xc7, 0x20, 0xda, 0x3d, 0x24, 0x24, 0x71, 0xcc, 0x8e, 0x49, 0x3b, 0xec, 0xb0, 0xde, 0x02, 0x22, 0x51, 0xd2, 0xee, 0x4c, 0x8c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_563_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_563 = { .name = "ecdsa_brainpoolp256r1_sha256_563", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_563_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_563_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_563_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 139 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 564 for ECDSA, tcId is 140 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_564_pubkey[] = { 0x72, 0xeb, 0xad, 0x74, 0x9b, 0x50, 0x4c, 0x87, 0x4d, 0x21, 0xbc, 0x5e, 0x4b, 0xba, 0x54, 0x5d, 0xd4, 0x2e, 0xb5, 0xfb, 0xf7, 0x8a, 0xf4, 0x20, 0x43, 0xf5, 0xce, 0xf1, 0x0a, 0xeb, 0x3a, 0xd7, 0x45, 0x22, 0x74, 0x64, 0xe1, 0xe9, 0xce, 0xf6, 0x62, 0xf4, 0x3f, 0xc8, 0x0d, 0x4c, 0xe7, 0xeb, 0x7e, 0xb6, 0x15, 0xa2, 0x36, 0x99, 0xd4, 0x8e, 0x89, 0xb2, 0x78, 0xab, 0xd4, 0x6c, 0xcc, 0x46, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_564_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x71, 0x52, 0x3a, 0x92, 0x6b, 0xf4, 0x71, 0x28, 0x29, 0x99, 0x5c, 0x60, 0x69, 0x02, 0x5e, 0x4b, 0xb2, 0xd0, 0xfc, 0x6d, 0x23, 0x96, 0x6f, 0x4f, 0xb5, 0x69, 0x5f, 0x01, 0xba, 0x30, 0x39, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_564 = { .name = "ecdsa_brainpoolp256r1_sha256_564", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_564_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_564_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_564_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 140 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 565 for ECDSA, tcId is 141 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_565_pubkey[] = { 0x74, 0x4e, 0x21, 0x8a, 0x04, 0xb3, 0x14, 0x71, 0xb0, 0x5e, 0x67, 0x9c, 0x94, 0x81, 0x44, 0x6b, 0xcd, 0x72, 0xa4, 0xd0, 0xfc, 0xa7, 0xa7, 0xaf, 0x1a, 0x1f, 0xe2, 0xf5, 0x74, 0xd9, 0x36, 0x2f, 0x60, 0xc0, 0xc5, 0x28, 0x43, 0xd8, 0xd7, 0x2c, 0xd6, 0x36, 0x15, 0x3f, 0x0f, 0x51, 0x0a, 0x09, 0x08, 0x9f, 0xc4, 0x47, 0x83, 0x72, 0xdf, 0xc5, 0x0e, 0x5b, 0x91, 0xd5, 0x30, 0x1b, 0xa7, 0x5e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_565_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x05, 0xca, 0x53, 0xb2, 0xd9, 0xe4, 0xa2, 0xe1, 0xe4, 0xf4, 0x72, 0x76, 0xfc, 0xdf, 0xb1, 0x7b, 0x26, 0xa9, 0xcf, 0x0a, 0x7c, 0x97, 0x21, 0xda, 0xd2, 0x82, 0x03, 0xd4, 0x11, 0x07, 0xfd, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_565 = { .name = "ecdsa_brainpoolp256r1_sha256_565", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_565_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_565_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_565_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 141 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 566 for ECDSA, tcId is 142 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_566_pubkey[] = { 0x7e, 0xa5, 0x3d, 0x3c, 0x46, 0x35, 0xa4, 0xd5, 0xb6, 0x0d, 0x79, 0xaa, 0xc7, 0x9d, 0x97, 0x4c, 0x75, 0x92, 0x63, 0x36, 0x34, 0x72, 0x14, 0x6a, 0x46, 0x05, 0x28, 0x0d, 0x93, 0x5f, 0xfc, 0x75, 0x59, 0x79, 0x04, 0x03, 0xc9, 0x64, 0x59, 0xb2, 0x04, 0x77, 0xea, 0xa4, 0x37, 0xb3, 0xc7, 0xde, 0xcd, 0x5e, 0x69, 0x0f, 0xaa, 0x94, 0x0c, 0x08, 0x91, 0xde, 0x0c, 0xd0, 0x7d, 0x41, 0x81, 0x3c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_566_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x54, 0x48, 0xaa, 0x82, 0xfc, 0x57, 0x74, 0x0b, 0x2e, 0x1e, 0xbd, 0xf9, 0x89, 0xba, 0xa1, 0x45, 0xb0, 0x18, 0xb4, 0x23, 0xb3, 0x76, 0x1f, 0xeb, 0x05, 0x59, 0x59, 0xeb, 0x6a, 0x01, 0xf1, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_566 = { .name = "ecdsa_brainpoolp256r1_sha256_566", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_566_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_566_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_566_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 142 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 567 for ECDSA, tcId is 143 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_567_pubkey[] = { 0x75, 0x04, 0x62, 0xa1, 0x63, 0x65, 0x57, 0x46, 0xaf, 0x66, 0xba, 0x3e, 0xb4, 0x80, 0x09, 0xa4, 0x90, 0xd9, 0x70, 0x79, 0x92, 0x80, 0x58, 0x6c, 0xfe, 0x59, 0x31, 0x63, 0x65, 0xdc, 0x4e, 0xf0, 0xa2, 0xf1, 0x56, 0x72, 0x57, 0xbd, 0x9a, 0xa1, 0xdc, 0xca, 0x3c, 0xd2, 0x76, 0xff, 0xae, 0xb1, 0xdd, 0x85, 0xce, 0xa2, 0x8d, 0x88, 0x8a, 0x98, 0x64, 0x2b, 0xf0, 0x9a, 0x98, 0xf6, 0x9f, 0x11, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_567_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0xbf, 0xcc, 0xe6, 0x9b, 0x89, 0xef, 0xf5, 0x45, 0xfb, 0x0a, 0x67, 0xd2, 0x58, 0x1a, 0x5f, 0x25, 0x34, 0x84, 0xef, 0x53, 0x8b, 0x9b, 0x55, 0xfa, 0x86, 0x2d, 0xfd, 0x2d, 0x48, 0x8d, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_567 = { .name = "ecdsa_brainpoolp256r1_sha256_567", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_567_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_567_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_567_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 143 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 568 for ECDSA, tcId is 144 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_568_pubkey[] = { 0x32, 0x3a, 0xe5, 0x75, 0x4b, 0x41, 0x75, 0x52, 0xcf, 0x96, 0x8f, 0x5f, 0x3e, 0xea, 0x71, 0x87, 0xf7, 0xb1, 0x72, 0x6e, 0x8c, 0x2e, 0x51, 0x0f, 0x98, 0xd2, 0x64, 0x30, 0xac, 0x58, 0x49, 0xbc, 0x32, 0x71, 0x01, 0xd8, 0x2a, 0xdf, 0x87, 0xc9, 0x32, 0xe8, 0xea, 0xa6, 0xa5, 0x7e, 0x1d, 0x11, 0xbd, 0x65, 0xdc, 0x8f, 0x40, 0x4c, 0x11, 0x3f, 0x65, 0xab, 0xaa, 0x6e, 0xea, 0xf5, 0xc7, 0xc4, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_568_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7a, 0x45, 0x9e, 0x04, 0x73, 0x95, 0xd8, 0x1d, 0x3b, 0x00, 0xf4, 0xb8, 0xd5, 0xad, 0x34, 0x44, 0x2b, 0x35, 0xde, 0xc5, 0xe6, 0xc1, 0xb4, 0x5a, 0x06, 0x78, 0xe6, 0x5a, 0x1f, 0xe9, 0xe9, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_568 = { .name = "ecdsa_brainpoolp256r1_sha256_568", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_568_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_568_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_568_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 144 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 569 for ECDSA, tcId is 145 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_569_pubkey[] = { 0x37, 0xa1, 0x05, 0xe3, 0xce, 0x3f, 0xb6, 0x36, 0x73, 0x30, 0x32, 0xd1, 0xca, 0x56, 0xb4, 0xc6, 0x59, 0xb4, 0x51, 0xf6, 0x4f, 0x4b, 0xa7, 0x37, 0x8b, 0x08, 0x79, 0x87, 0xe7, 0xa5, 0x44, 0xd2, 0x78, 0x2b, 0xad, 0x9b, 0x16, 0x54, 0xf2, 0x77, 0x0d, 0x7a, 0x3e, 0xe3, 0x5b, 0x67, 0x2a, 0x36, 0x6f, 0x68, 0x5b, 0xc7, 0x19, 0x18, 0x89, 0xff, 0x2f, 0xa5, 0xc6, 0xb9, 0x4e, 0xbe, 0x7a, 0xb8, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_569_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3b, 0x77, 0x39, 0xbb, 0xe1, 0x04, 0x8b, 0x69, 0xfd, 0x05, 0xf9, 0x26, 0x2f, 0x62, 0x8e, 0x03, 0xb0, 0x77, 0x0e, 0x7e, 0xcd, 0x82, 0x33, 0x7f, 0x14, 0x82, 0xa7, 0x2d, 0xb0, 0x29, 0x32, 0x32, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_569 = { .name = "ecdsa_brainpoolp256r1_sha256_569", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_569_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_569_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_569_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 145 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 570 for ECDSA, tcId is 146 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_570_pubkey[] = { 0x13, 0xdd, 0x59, 0x45, 0x4f, 0x6a, 0xf3, 0xe9, 0xdb, 0x11, 0x5b, 0x7e, 0xc8, 0xc3, 0xa1, 0xc8, 0xd3, 0x08, 0xfd, 0xcb, 0x49, 0x63, 0xc3, 0xb8, 0xea, 0x12, 0x64, 0xe4, 0xaf, 0xda, 0x65, 0x2c, 0x5d, 0x26, 0x0b, 0x7f, 0xc9, 0xbf, 0xd2, 0x00, 0x89, 0x6d, 0x22, 0x9f, 0x3c, 0x8d, 0xaa, 0xb9, 0xdf, 0x2f, 0x55, 0xaa, 0x9a, 0xd9, 0x5d, 0x4e, 0xa7, 0x6a, 0xed, 0x8d, 0x74, 0xc5, 0x49, 0x4d, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_570_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x76, 0xee, 0x73, 0x77, 0xc2, 0x09, 0x16, 0xd3, 0xfa, 0x0b, 0xf2, 0x4c, 0x5e, 0xc5, 0x1c, 0x07, 0x60, 0xee, 0x1c, 0xfd, 0x9b, 0x04, 0x66, 0xfe, 0x29, 0x05, 0x4e, 0x5b, 0x60, 0x52, 0x64, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_570 = { .name = "ecdsa_brainpoolp256r1_sha256_570", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_570_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_570_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_570_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 146 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 571 for ECDSA, tcId is 147 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_571_pubkey[] = { 0x2c, 0x1d, 0xc5, 0x64, 0x59, 0xbf, 0x09, 0xdf, 0x50, 0xfb, 0x2d, 0x96, 0x2f, 0x59, 0x89, 0xf3, 0x64, 0x30, 0x21, 0xc5, 0xc3, 0x60, 0x36, 0x3e, 0x10, 0xe6, 0x95, 0xa7, 0x0b, 0x59, 0x42, 0xe8, 0x62, 0x16, 0xd3, 0xca, 0x0c, 0xca, 0x31, 0xdb, 0xd9, 0x2a, 0x4d, 0x28, 0xbf, 0x95, 0x14, 0x37, 0xf6, 0xf4, 0x5d, 0xb4, 0x1e, 0x8e, 0x41, 0xfd, 0xf7, 0x24, 0x14, 0xa2, 0x93, 0xf5, 0x30, 0x87, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_571_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4a, 0x99, 0x28, 0x24, 0xc7, 0x37, 0xb0, 0x0f, 0x02, 0xd2, 0x3d, 0x2f, 0x2e, 0x3d, 0xec, 0xf0, 0x90, 0xb2, 0x8f, 0xfa, 0x0e, 0x90, 0xe6, 0xd1, 0xe5, 0xdd, 0x15, 0x70, 0x70, 0x71, 0x9f, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_571 = { .name = "ecdsa_brainpoolp256r1_sha256_571", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_571_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_571_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_571_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 147 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 572 for ECDSA, tcId is 148 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_572_pubkey[] = { 0x13, 0x7d, 0x6f, 0xdf, 0x83, 0x6b, 0x18, 0x24, 0x37, 0x8c, 0x08, 0xb3, 0x5f, 0xa7, 0xeb, 0xe4, 0xe8, 0x07, 0xd8, 0xa2, 0x01, 0x05, 0xce, 0x9c, 0xb3, 0xcd, 0x28, 0x1f, 0x0a, 0x47, 0xc9, 0xc3, 0x07, 0xd6, 0x47, 0x5d, 0x49, 0x58, 0xc1, 0x6d, 0x95, 0x0f, 0x04, 0x39, 0xd3, 0xdb, 0xf8, 0x6c, 0x2d, 0x7e, 0x2b, 0x12, 0xe8, 0xb1, 0x37, 0xef, 0xc6, 0x2d, 0xd1, 0xc7, 0x23, 0xb8, 0x3a, 0x62, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_572_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9c, 0x09, 0x2d, 0x16, 0x5e, 0xf1, 0xb1, 0x1a, 0x82, 0xb5, 0x9c, 0x73, 0xaa, 0xb3, 0x49, 0x66, 0x31, 0xe3, 0x03, 0x20, 0x38, 0xfe, 0xda, 0x23, 0x6d, 0xb7, 0xb0, 0xf5, 0xa8, 0xe0, 0xca, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_572 = { .name = "ecdsa_brainpoolp256r1_sha256_572", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_572_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_572_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_572_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 148 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 573 for ECDSA, tcId is 149 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_573_pubkey[] = { 0x64, 0x02, 0x13, 0xbe, 0x16, 0x98, 0xb1, 0x66, 0xf0, 0xc5, 0x4e, 0x58, 0x8e, 0x1b, 0x57, 0xa6, 0x48, 0x26, 0xbf, 0x84, 0x8a, 0xda, 0xbf, 0xef, 0x60, 0x68, 0x1d, 0x77, 0x74, 0x7d, 0x2c, 0xa8, 0x64, 0x6e, 0x45, 0xd9, 0x61, 0x41, 0x9d, 0x4a, 0xd1, 0x33, 0x8c, 0x36, 0x12, 0x28, 0xe1, 0xc6, 0xb6, 0x61, 0x53, 0x98, 0x58, 0x2c, 0x0e, 0x3e, 0x97, 0xf7, 0xeb, 0xc8, 0x5a, 0x50, 0x44, 0x23, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_573_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa9, 0x04, 0x49, 0xe8, 0x7d, 0x9d, 0xe3, 0xeb, 0xed, 0x92, 0xa2, 0x27, 0x73, 0x5e, 0x45, 0x32, 0x5b, 0x1d, 0x2d, 0x77, 0x4b, 0x48, 0x76, 0xa8, 0x6d, 0x08, 0x63, 0x34, 0x94, 0x71, 0xac, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_573 = { .name = "ecdsa_brainpoolp256r1_sha256_573", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_573_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_573_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_573_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 149 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 574 for ECDSA, tcId is 150 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_574_pubkey[] = { 0x26, 0x91, 0x54, 0xca, 0x58, 0x31, 0x75, 0x52, 0xc6, 0x55, 0xd2, 0xa9, 0xb3, 0x80, 0x4d, 0xd9, 0x4c, 0x27, 0x11, 0x14, 0x5b, 0x9c, 0xd9, 0x3c, 0x36, 0x0f, 0x2d, 0xfe, 0x34, 0xcc, 0x19, 0x71, 0x98, 0x04, 0x6c, 0xc9, 0x0c, 0xc6, 0xa8, 0xac, 0x48, 0xef, 0x7b, 0xac, 0xc5, 0xcb, 0x7e, 0x57, 0x33, 0x4f, 0xa9, 0x1f, 0xac, 0xba, 0xdb, 0x48, 0x95, 0x2c, 0x9f, 0xee, 0x54, 0x3d, 0x1b, 0xb5, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_574_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x31, 0x04, 0x28, 0xc8, 0x0a, 0x06, 0xda, 0x59, 0x71, 0x98, 0x19, 0xa0, 0xa3, 0xdb, 0xf6, 0x65, 0x8f, 0xab, 0x99, 0x38, 0xca, 0x85, 0x1c, 0xbd, 0x9c, 0x0a, 0xae, 0x86, 0x40, 0x58, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_574 = { .name = "ecdsa_brainpoolp256r1_sha256_574", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_574_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_574_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_574_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 150 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 575 for ECDSA, tcId is 151 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_575_pubkey[] = { 0x24, 0x0e, 0x0b, 0x64, 0xce, 0xe2, 0xe0, 0xb8, 0x89, 0x0c, 0x2f, 0xa8, 0x2d, 0xe5, 0x84, 0x8a, 0x56, 0x42, 0xef, 0x0f, 0x7b, 0x24, 0x14, 0xf8, 0x8f, 0x58, 0x52, 0x81, 0xdf, 0x7a, 0x1f, 0xf5, 0x3a, 0x59, 0x90, 0xf8, 0x60, 0xda, 0x30, 0x53, 0xf8, 0x21, 0xbe, 0xa9, 0x14, 0x05, 0x9c, 0xed, 0x85, 0xc9, 0xc2, 0x39, 0x0b, 0x0d, 0x86, 0x05, 0x32, 0xdb, 0xcc, 0xca, 0x7f, 0xf6, 0x66, 0x92, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_575_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa1, 0x4b, 0xda, 0x4f, 0x5b, 0x17, 0xb5, 0x69, 0x66, 0xf7, 0x5e, 0xde, 0x22, 0x34, 0x03, 0x38, 0xd2, 0x3a, 0xc4, 0x13, 0xfa, 0x7e, 0xf4, 0x2f, 0x54, 0x5b, 0x08, 0xc4, 0x7d, 0xbc, 0x59, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_575 = { .name = "ecdsa_brainpoolp256r1_sha256_575", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_575_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_575_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_575_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 151 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 576 for ECDSA, tcId is 152 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_576_pubkey[] = { 0x96, 0xf3, 0xcb, 0x5e, 0xb0, 0xc3, 0x3b, 0xe2, 0x05, 0xec, 0x05, 0x8a, 0x22, 0x09, 0x3d, 0x73, 0x9f, 0xe8, 0x0a, 0x7e, 0xcc, 0x87, 0x43, 0x99, 0xc1, 0x4f, 0x7f, 0x6c, 0x38, 0xcf, 0xcc, 0x51, 0x47, 0xb3, 0xec, 0xca, 0xec, 0xc9, 0xad, 0xd2, 0xb1, 0xdf, 0xfc, 0x98, 0x8f, 0x13, 0xdc, 0xab, 0x15, 0xb7, 0xe9, 0x10, 0xd0, 0x25, 0x0e, 0x70, 0xa1, 0xd7, 0x9b, 0x3b, 0x93, 0x1c, 0x32, 0xed, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_576_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x32, 0xdf, 0xe6, 0x73, 0x4d, 0xc4, 0xf7, 0xfa, 0xa2, 0xfd, 0x85, 0x33, 0xe9, 0x2c, 0x0d, 0x2f, 0x92, 0x9a, 0x42, 0x77, 0xa9, 0xc5, 0xcd, 0xaa, 0xfd, 0x43, 0x16, 0xfe, 0x96, 0xa4, 0x46, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_576 = { .name = "ecdsa_brainpoolp256r1_sha256_576", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_576_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_576_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_576_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 152 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 577 for ECDSA, tcId is 153 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_577_pubkey[] = { 0x10, 0x3b, 0x1b, 0xf6, 0x34, 0x3d, 0x57, 0x26, 0x0f, 0x65, 0x2d, 0x27, 0x2a, 0xae, 0xff, 0x6c, 0xfa, 0x43, 0x9f, 0x15, 0x83, 0x33, 0x5e, 0xba, 0x66, 0xfa, 0x72, 0xd0, 0x0e, 0xff, 0x7f, 0x85, 0x20, 0xf2, 0xbb, 0x03, 0x5b, 0xd0, 0x56, 0xc6, 0x7c, 0xa2, 0x2c, 0xa9, 0x52, 0xab, 0xb5, 0xe1, 0xbc, 0xb6, 0x8d, 0x67, 0xca, 0x81, 0x79, 0x0d, 0x24, 0x09, 0x7f, 0x13, 0xd4, 0x52, 0x09, 0xa1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_577_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x63, 0x53, 0xc7, 0xf3, 0xe0, 0xa4, 0xe3, 0x3e, 0xbf, 0x77, 0x58, 0xda, 0xdf, 0x2b, 0xd9, 0xd0, 0x84, 0x13, 0x28, 0xe1, 0x3c, 0x75, 0xe2, 0x52, 0x85, 0x5f, 0x5a, 0x2b, 0x87, 0xc2, 0xc7, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_577 = { .name = "ecdsa_brainpoolp256r1_sha256_577", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_577_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_577_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_577_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 153 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 578 for ECDSA, tcId is 154 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_578_pubkey[] = { 0x95, 0x9b, 0x3b, 0xf3, 0x72, 0x30, 0x19, 0x93, 0xb3, 0x7e, 0x20, 0xb4, 0x34, 0x4f, 0x13, 0xc0, 0x6d, 0x5c, 0x1c, 0x53, 0xc7, 0x73, 0x7f, 0x16, 0x6e, 0xfb, 0x94, 0x83, 0x2c, 0x3b, 0x9b, 0xbb, 0x40, 0xd3, 0x5e, 0xf4, 0x6e, 0x4c, 0xfa, 0xd4, 0x75, 0xdd, 0xd1, 0xa1, 0xd9, 0x60, 0x9f, 0xec, 0xa7, 0x06, 0x97, 0x12, 0xd3, 0x0b, 0xdf, 0x46, 0x38, 0xd4, 0xc8, 0x8b, 0xc9, 0xa1, 0x21, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_578_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0x89, 0x9b, 0xc6, 0xff, 0x5e, 0x72, 0x33, 0x8f, 0x3c, 0x98, 0x47, 0xfa, 0x65, 0x31, 0xc4, 0x33, 0x7f, 0xde, 0x3f, 0xcf, 0x1c, 0x8c, 0x32, 0xf7, 0x68, 0xfb, 0xa3, 0xa4, 0x02, 0xa9, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_578 = { .name = "ecdsa_brainpoolp256r1_sha256_578", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_578_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_578_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_578_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 154 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 579 for ECDSA, tcId is 155 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_579_pubkey[] = { 0x6e, 0x69, 0xb1, 0x7d, 0x83, 0x89, 0x4e, 0x2e, 0x71, 0xff, 0xce, 0x35, 0x1b, 0x53, 0x45, 0x9c, 0x0b, 0xb2, 0x9b, 0xec, 0x37, 0x9f, 0xf4, 0x35, 0xf2, 0x3c, 0x01, 0xa9, 0xb3, 0x7d, 0xf4, 0x9e, 0x3b, 0xa1, 0x05, 0x3a, 0xd8, 0x42, 0x36, 0xd8, 0x2c, 0xf7, 0xc7, 0x62, 0x36, 0x2b, 0x37, 0xb2, 0x4e, 0x3b, 0x0e, 0xe1, 0xf8, 0xea, 0x6c, 0x54, 0x3a, 0x25, 0x91, 0xdc, 0xb6, 0x68, 0x1a, 0x8f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_579_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x65, 0x5c, 0x5e, 0x4f, 0x1c, 0xef, 0xca, 0x22, 0xf4, 0x13, 0xa6, 0x12, 0xe5, 0xbf, 0xdd, 0x7b, 0xa9, 0xae, 0x71, 0x05, 0x3f, 0x68, 0xb0, 0xc7, 0x4d, 0x9a, 0x73, 0x59, 0x00, 0x13, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_579 = { .name = "ecdsa_brainpoolp256r1_sha256_579", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_579_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_579_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_579_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 155 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 580 for ECDSA, tcId is 156 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_580_pubkey[] = { 0x33, 0x6f, 0xc2, 0x8e, 0x1f, 0x25, 0x04, 0x85, 0x27, 0x67, 0x47, 0xdf, 0xc3, 0x48, 0x59, 0xb4, 0x74, 0x16, 0x67, 0xb3, 0xac, 0x46, 0xa0, 0xf6, 0x38, 0x4d, 0xec, 0xc1, 0xac, 0x79, 0x03, 0x04, 0x40, 0x12, 0x06, 0xb5, 0x50, 0x8a, 0xa0, 0x66, 0x01, 0xa2, 0x24, 0x6e, 0x73, 0x81, 0xdf, 0xec, 0xca, 0x6a, 0xdb, 0x2b, 0x19, 0x7a, 0xe1, 0x45, 0x49, 0xa2, 0x4c, 0x35, 0x5c, 0xd5, 0x3b, 0xe1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_580_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x03, 0x0d, 0xbf, 0x01, 0xd8, 0xc9, 0xde, 0x29, 0x00, 0xdc, 0x38, 0x45, 0xfd, 0xa4, 0xe4, 0xc6, 0xbc, 0x04, 0x9c, 0x4c, 0xd5, 0x71, 0x7a, 0x9c, 0x62, 0x9b, 0x9e, 0xd2, 0x9d, 0x18, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_580 = { .name = "ecdsa_brainpoolp256r1_sha256_580", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_580_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_580_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_580_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 156 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 581 for ECDSA, tcId is 157 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_581_pubkey[] = { 0x91, 0x3d, 0x9c, 0xe3, 0x5b, 0x9c, 0x73, 0x20, 0x35, 0x78, 0xe2, 0x55, 0xd4, 0xdd, 0x35, 0xff, 0x20, 0x21, 0x2d, 0x35, 0x72, 0x27, 0xd2, 0x6b, 0x8a, 0x95, 0x91, 0x80, 0x66, 0x5b, 0x54, 0x2b, 0xa5, 0x03, 0xd9, 0x22, 0xd3, 0xfd, 0x65, 0xa0, 0x7e, 0xca, 0x18, 0xc0, 0xa4, 0xe2, 0xd3, 0xf2, 0xcf, 0x7c, 0x05, 0x92, 0x8b, 0x40, 0x64, 0x58, 0xcb, 0x28, 0x6e, 0x11, 0xdc, 0x62, 0xdc, 0xb6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_581_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa1, 0xdb, 0x72, 0x93, 0xb6, 0xf0, 0x15, 0x94, 0xb8, 0x08, 0x71, 0x8e, 0x61, 0xa4, 0xd6, 0x42, 0xdf, 0xf4, 0xfe, 0xe2, 0xfb, 0x47, 0x11, 0x67, 0xef, 0x7a, 0xb4, 0x29, 0x59, 0xa4, 0x73, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_581 = { .name = "ecdsa_brainpoolp256r1_sha256_581", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_581_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_581_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_581_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 157 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 582 for ECDSA, tcId is 158 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_582_pubkey[] = { 0x6b, 0x76, 0x91, 0x5c, 0xc1, 0xc8, 0x54, 0x74, 0x4a, 0x78, 0xda, 0xc9, 0xba, 0xec, 0xd5, 0x98, 0x45, 0xb9, 0x0a, 0xd9, 0xcd, 0x30, 0x8f, 0x5a, 0x88, 0x7d, 0xcc, 0xc9, 0x09, 0xda, 0xcd, 0x4a, 0x72, 0x60, 0x45, 0x6f, 0x8f, 0x8d, 0x31, 0x76, 0x0d, 0x81, 0xbf, 0x85, 0x34, 0x8d, 0x9f, 0x50, 0xc9, 0x9d, 0x99, 0x18, 0xb4, 0x80, 0xb1, 0xec, 0x25, 0xf4, 0xe2, 0xe3, 0x4d, 0xe0, 0x37, 0x69, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_582_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x99, 0xbb, 0x8d, 0x4b, 0xcb, 0xf1, 0x81, 0x6d, 0x31, 0xaa, 0xd8, 0x8c, 0x25, 0xc6, 0x1f, 0x14, 0x33, 0xb0, 0x83, 0x22, 0x41, 0x2c, 0x7b, 0xd8, 0x4e, 0xd7, 0x59, 0xd0, 0x1c, 0x00, 0x91, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_582 = { .name = "ecdsa_brainpoolp256r1_sha256_582", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_582_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_582_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_582_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 158 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 583 for ECDSA, tcId is 159 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_583_pubkey[] = { 0x64, 0x7b, 0x37, 0xb7, 0x31, 0xd3, 0xea, 0xd7, 0x59, 0x76, 0x27, 0x51, 0x99, 0x54, 0x83, 0x46, 0x90, 0x31, 0x08, 0x4c, 0xd7, 0x09, 0x88, 0x7c, 0x9b, 0x6b, 0xaf, 0xba, 0x46, 0x2c, 0xbf, 0x84, 0x88, 0x8c, 0x5b, 0x17, 0x1f, 0x2b, 0x2f, 0xb7, 0xbb, 0x2b, 0x9d, 0x88, 0x20, 0x0d, 0x79, 0xac, 0x94, 0xd7, 0xd4, 0x02, 0x5f, 0x79, 0x34, 0x8e, 0x22, 0x83, 0x51, 0x1c, 0x04, 0x78, 0x91, 0xbf, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_583_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x41, 0xce, 0xe8, 0x2a, 0x69, 0x57, 0xef, 0x02, 0xab, 0x3a, 0xa0, 0x7a, 0x33, 0x15, 0xac, 0xcc, 0x0d, 0x0d, 0x66, 0xc2, 0x08, 0x1d, 0x53, 0x02, 0x46, 0xd6, 0xe6, 0x81, 0x87, 0x3c, 0x90, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_583 = { .name = "ecdsa_brainpoolp256r1_sha256_583", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_583_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_583_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_583_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 159 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 584 for ECDSA, tcId is 160 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_584_pubkey[] = { 0x1f, 0x76, 0x1a, 0x1a, 0xe1, 0xe8, 0x2e, 0x4a, 0xf2, 0x77, 0xb3, 0x99, 0xda, 0x0a, 0x52, 0x3e, 0x85, 0x64, 0x4c, 0xe9, 0x71, 0xc7, 0xb9, 0x02, 0x36, 0xd0, 0x31, 0x15, 0xae, 0xd9, 0x85, 0x5b, 0x55, 0xcd, 0xb3, 0xe1, 0x04, 0x36, 0x1f, 0xd2, 0xe0, 0x97, 0x98, 0x63, 0xf2, 0x9a, 0x3b, 0x0b, 0xf5, 0x54, 0x2c, 0x51, 0x05, 0xc9, 0x1d, 0xfc, 0x7c, 0x94, 0x64, 0x3b, 0x78, 0xa2, 0xb7, 0xf2, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_584_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x74, 0x6d, 0x61, 0x57, 0x2e, 0xca, 0xe7, 0x74, 0x69, 0x1e, 0x78, 0x09, 0x12, 0x19, 0x86, 0xd9, 0xb9, 0x32, 0x79, 0xb0, 0x09, 0x34, 0xff, 0x1d, 0xef, 0x1f, 0x47, 0x98, 0xda, 0x89, 0xad, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_584 = { .name = "ecdsa_brainpoolp256r1_sha256_584", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_584_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_584_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_584_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 160 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 585 for ECDSA, tcId is 161 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_585_pubkey[] = { 0x63, 0xd3, 0x03, 0x16, 0x25, 0x74, 0x96, 0x28, 0x99, 0xfd, 0x9a, 0x32, 0x3c, 0x5f, 0xe2, 0x4a, 0x09, 0x18, 0x8f, 0xa2, 0x0d, 0x47, 0xa8, 0xd9, 0x2b, 0xa5, 0x02, 0xd4, 0xf8, 0x86, 0xf5, 0xb3, 0x72, 0xcd, 0x0d, 0x82, 0xb3, 0xfd, 0x4f, 0x54, 0xfe, 0xdc, 0x5d, 0x86, 0x18, 0xb1, 0x42, 0xf6, 0x35, 0x53, 0xe4, 0x38, 0xcc, 0x12, 0x69, 0x71, 0x9d, 0xee, 0x3a, 0xbd, 0x33, 0x16, 0xfa, 0x21, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_585_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x1b, 0x26, 0xa0, 0x90, 0x89, 0x68, 0x09, 0x9f, 0x8e, 0x1f, 0x61, 0x0f, 0x4f, 0x35, 0x83, 0x18, 0xba, 0xa2, 0x11, 0x07, 0xb7, 0x91, 0xef, 0x6f, 0x24, 0xcb, 0x24, 0x46, 0x77, 0xa6, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_585 = { .name = "ecdsa_brainpoolp256r1_sha256_585", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_585_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_585_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_585_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 161 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 586 for ECDSA, tcId is 162 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_586_pubkey[] = { 0x3e, 0x1d, 0x96, 0x6e, 0x05, 0xf0, 0x4c, 0x44, 0xe1, 0x62, 0x13, 0x3d, 0x97, 0x73, 0x0f, 0x64, 0x08, 0xa8, 0x8a, 0xd9, 0x90, 0xa2, 0xc6, 0xef, 0xb7, 0xe3, 0xe7, 0x3a, 0x88, 0x6f, 0x7e, 0xd4, 0xa4, 0x0e, 0x3b, 0x3f, 0xd8, 0xb0, 0x05, 0xfc, 0x41, 0x74, 0x37, 0xf2, 0x10, 0x11, 0xd9, 0xfb, 0xe3, 0x8b, 0x32, 0x9a, 0x2e, 0x79, 0x59, 0xed, 0x9b, 0x04, 0x0c, 0x8e, 0x1e, 0xb6, 0x77, 0xfd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_586_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x46, 0xa7, 0x8f, 0xe7, 0xc1, 0x49, 0xc6, 0x7d, 0x7e, 0xee, 0xb1, 0xb5, 0xbe, 0x57, 0xb3, 0xa1, 0x08, 0x26, 0x51, 0xc2, 0x78, 0xeb, 0xc4, 0xa5, 0x0a, 0xbe, 0xb4, 0x57, 0x0f, 0x85, 0x8f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_586 = { .name = "ecdsa_brainpoolp256r1_sha256_586", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_586_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_586_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_586_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 162 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 587 for ECDSA, tcId is 163 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_587_pubkey[] = { 0x56, 0xac, 0x8e, 0x49, 0xb3, 0x19, 0xd5, 0xd0, 0x41, 0xae, 0x3d, 0x3f, 0x91, 0xde, 0x22, 0x9c, 0x0a, 0x82, 0x0d, 0x7f, 0xfd, 0x97, 0xea, 0x06, 0x19, 0x6e, 0xee, 0x75, 0x07, 0x36, 0x3f, 0x42, 0x78, 0x7f, 0xc0, 0x5e, 0xba, 0x60, 0x6f, 0x77, 0xb9, 0x84, 0xe5, 0x7c, 0xab, 0xf9, 0x11, 0x20, 0x97, 0x00, 0xb5, 0xd3, 0x91, 0x47, 0xa1, 0x4c, 0x5d, 0x1a, 0x95, 0xf5, 0x6c, 0xd5, 0xfe, 0xb4, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_587_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_587 = { .name = "ecdsa_brainpoolp256r1_sha256_587", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_587_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_587_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_587_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 163 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 588 for ECDSA, tcId is 164 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_588_pubkey[] = { 0x5e, 0x2f, 0x22, 0x86, 0x31, 0xee, 0x7f, 0x00, 0xce, 0xaf, 0x93, 0x62, 0x78, 0xf2, 0xe2, 0x68, 0x1b, 0x42, 0x9f, 0xcf, 0xb8, 0xcb, 0x2c, 0x01, 0x9b, 0x31, 0xf1, 0x88, 0x83, 0x98, 0x84, 0xf5, 0x30, 0xe1, 0x07, 0x9a, 0x6b, 0x88, 0x93, 0x93, 0xcc, 0x83, 0xfa, 0xbb, 0xd5, 0x24, 0xf2, 0x1b, 0xb4, 0x86, 0xc6, 0x5b, 0x83, 0xab, 0x0a, 0xfa, 0xfb, 0x17, 0x26, 0x5d, 0x97, 0x1b, 0xae, 0x91, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_588_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0x30, 0x5a, 0x1c, 0xf8, 0x85, 0xcc, 0xc3, 0x30, 0xad, 0x0f, 0x1b, 0x58, 0x34, 0xa6, 0xa7, 0x83, 0xf1, 0x94, 0x8a, 0x5d, 0x50, 0x87, 0xd4, 0x2b, 0xb5, 0xd4, 0x7a, 0xf8, 0x24, 0x35, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_588 = { .name = "ecdsa_brainpoolp256r1_sha256_588", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_588_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_588_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_588_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 164 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 589 for ECDSA, tcId is 165 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_589_pubkey[] = { 0x6d, 0xbc, 0x56, 0x05, 0xb4, 0xe1, 0x13, 0x93, 0x2f, 0xed, 0xe7, 0xb4, 0x74, 0x3f, 0x4d, 0xfc, 0x62, 0xfd, 0xec, 0xae, 0x16, 0x73, 0x5b, 0x51, 0x65, 0x3d, 0x79, 0xee, 0x00, 0x8f, 0x2f, 0xc5, 0x12, 0x88, 0xfb, 0x2c, 0xa0, 0x9e, 0xe3, 0x36, 0xef, 0x31, 0x6b, 0x73, 0x91, 0x9a, 0x7f, 0x3b, 0x32, 0x9f, 0xca, 0x2f, 0x5c, 0x36, 0x5c, 0xc4, 0x27, 0x42, 0x5f, 0xec, 0xf6, 0x4f, 0x7b, 0xf3, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_589_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x20, 0x35, 0xac, 0x9e, 0xa7, 0x11, 0x9e, 0x30, 0xe5, 0x4f, 0x36, 0x9c, 0xd2, 0x2a, 0xa2, 0x7a, 0xf3, 0x8b, 0x56, 0x6a, 0xe6, 0x09, 0x3f, 0x1d, 0xf3, 0x5b, 0x61, 0x2d, 0xe6, 0xf0, 0x75, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_589 = { .name = "ecdsa_brainpoolp256r1_sha256_589", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_589_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_589_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_589_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 165 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 590 for ECDSA, tcId is 166 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_590_pubkey[] = { 0x6d, 0xbc, 0x56, 0x05, 0xb4, 0xe1, 0x13, 0x93, 0x2f, 0xed, 0xe7, 0xb4, 0x74, 0x3f, 0x4d, 0xfc, 0x62, 0xfd, 0xec, 0xae, 0x16, 0x73, 0x5b, 0x51, 0x65, 0x3d, 0x79, 0xee, 0x00, 0x8f, 0x2f, 0xc5, 0x97, 0x72, 0x5c, 0xaf, 0x01, 0x4f, 0xc6, 0x85, 0x4f, 0x34, 0x9f, 0x1d, 0x0b, 0xe9, 0x0e, 0x37, 0x3b, 0x9c, 0x2b, 0xf4, 0x78, 0xef, 0xc3, 0x63, 0xf8, 0xd0, 0xe8, 0x30, 0x29, 0x1e, 0xd7, 0x84, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_590_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x20, 0x35, 0xac, 0x9e, 0xa7, 0x11, 0x9e, 0x30, 0xe5, 0x4f, 0x36, 0x9c, 0xd2, 0x2a, 0xa2, 0x7a, 0xf3, 0x8b, 0x56, 0x6a, 0xe6, 0x09, 0x3f, 0x1d, 0xf3, 0x5b, 0x61, 0x2d, 0xe6, 0xf0, 0x75, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_590 = { .name = "ecdsa_brainpoolp256r1_sha256_590", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_590_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_590_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_590_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 166 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 591 for ECDSA, tcId is 167 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_591_pubkey[] = { 0x8c, 0x56, 0x35, 0xee, 0xaf, 0x7e, 0x99, 0x4f, 0xf1, 0x63, 0xeb, 0xdc, 0x9a, 0xac, 0xfd, 0xad, 0x1d, 0x50, 0xf9, 0x92, 0x9a, 0x80, 0x35, 0xc3, 0x6c, 0xf1, 0xc1, 0xe1, 0x6d, 0x5b, 0x28, 0xf1, 0x3d, 0xe4, 0x84, 0x31, 0xf3, 0xeb, 0x82, 0x3a, 0x38, 0x4c, 0x94, 0x0b, 0x2b, 0x0a, 0x01, 0x51, 0x2d, 0xa9, 0x8b, 0x8f, 0x72, 0xbd, 0x95, 0x45, 0xd1, 0x79, 0xd6, 0xf1, 0xcd, 0x5a, 0x2a, 0x63, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_591_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_591 = { .name = "ecdsa_brainpoolp256r1_sha256_591", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_591_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_591_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_591_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 167 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 592 for ECDSA, tcId is 168 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_592_pubkey[] = { 0x2b, 0x99, 0x99, 0xcf, 0x86, 0xf1, 0x5a, 0x74, 0x71, 0xff, 0x8d, 0x21, 0x2c, 0xa3, 0xf9, 0xa9, 0x92, 0x25, 0x85, 0x1b, 0x6d, 0x96, 0x08, 0x03, 0x4c, 0xe0, 0xaf, 0x55, 0xfd, 0x53, 0x9b, 0x5a, 0x25, 0xd1, 0xd0, 0x64, 0x49, 0xa6, 0xa9, 0xf4, 0xdb, 0x83, 0x3a, 0xb6, 0x9d, 0x11, 0x70, 0xb4, 0xf0, 0xf0, 0x7d, 0x2e, 0x5f, 0x74, 0xa9, 0xb5, 0x62, 0x12, 0x56, 0x3a, 0x03, 0x56, 0xe0, 0xb6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_592_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_592 = { .name = "ecdsa_brainpoolp256r1_sha256_592", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_592_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_592_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_592_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 168 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 593 for ECDSA, tcId is 169 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_593_pubkey[] = { 0x8d, 0x40, 0xdb, 0xb2, 0x64, 0x92, 0x3c, 0x02, 0xa4, 0x84, 0xfd, 0xc7, 0xf0, 0x61, 0x08, 0xc7, 0x27, 0xe5, 0xd1, 0x81, 0x72, 0xc9, 0x09, 0xf7, 0x9a, 0x38, 0x45, 0x48, 0x5c, 0x93, 0x9f, 0x45, 0x94, 0xdd, 0x7b, 0x7c, 0x67, 0x65, 0x3a, 0x71, 0x20, 0x74, 0xd9, 0x48, 0x90, 0xa8, 0xeb, 0x56, 0xa7, 0xd4, 0xb9, 0x75, 0x02, 0x4d, 0x3c, 0x82, 0xa1, 0x15, 0x16, 0x69, 0xa6, 0xb8, 0x38, 0x21, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_593_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_593 = { .name = "ecdsa_brainpoolp256r1_sha256_593", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_593_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_593_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_593_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 169 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 594 for ECDSA, tcId is 170 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_594_pubkey[] = { 0x1f, 0xb4, 0x4c, 0x46, 0xfc, 0xdc, 0xfe, 0x8e, 0x37, 0xf0, 0x47, 0xbc, 0xcf, 0x57, 0xba, 0x18, 0x90, 0x64, 0x3f, 0x00, 0x33, 0xd4, 0x92, 0xc4, 0xb1, 0x97, 0xca, 0x70, 0x57, 0xc8, 0x60, 0x67, 0x76, 0x3f, 0x10, 0x41, 0xf8, 0xc3, 0x8b, 0xe3, 0xad, 0x20, 0x94, 0x5a, 0x6f, 0x0f, 0xad, 0x6f, 0x53, 0x0a, 0xf9, 0x6f, 0xed, 0x28, 0x9b, 0x4e, 0x8f, 0x02, 0xab, 0xd8, 0x0b, 0x2f, 0x2d, 0x83, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_594_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_594 = { .name = "ecdsa_brainpoolp256r1_sha256_594", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_594_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_594_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_594_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 170 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 595 for ECDSA, tcId is 171 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_595_pubkey[] = { 0x8a, 0x42, 0xae, 0xf3, 0x25, 0x68, 0xd8, 0x45, 0x1e, 0x18, 0x7a, 0x94, 0x41, 0xa6, 0xe8, 0x86, 0x34, 0x2d, 0x00, 0x33, 0xb0, 0x4a, 0xaa, 0x4d, 0xdb, 0xd4, 0xd6, 0x00, 0xc6, 0xa5, 0xc8, 0x6a, 0x85, 0x5f, 0xbb, 0x08, 0x61, 0xc7, 0xa6, 0x42, 0x33, 0x3f, 0x37, 0x23, 0xc6, 0xc3, 0xdd, 0x96, 0x1f, 0x27, 0x9d, 0x99, 0x43, 0x77, 0x9d, 0x4c, 0x23, 0x7d, 0xee, 0xc9, 0x4b, 0xff, 0x84, 0x6e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_595_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_595 = { .name = "ecdsa_brainpoolp256r1_sha256_595", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_595_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_595_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_595_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 171 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 596 for ECDSA, tcId is 172 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_596_pubkey[] = { 0x67, 0xf9, 0x99, 0xeb, 0x1a, 0x40, 0xfd, 0xda, 0x28, 0x04, 0x4d, 0x2a, 0xf2, 0x33, 0x57, 0xaa, 0xc0, 0x45, 0x17, 0x2e, 0xf1, 0xe8, 0x9c, 0x64, 0x30, 0xa6, 0x8d, 0xeb, 0x0a, 0x5e, 0x2c, 0x21, 0x55, 0x0d, 0x93, 0x56, 0x5d, 0xfc, 0x6a, 0x0c, 0x5b, 0x5c, 0xf4, 0xe7, 0xd9, 0x11, 0x1b, 0xf4, 0xe3, 0x1a, 0x0d, 0x0f, 0x94, 0xb8, 0xad, 0xfd, 0x9b, 0x80, 0x0c, 0x5b, 0x38, 0xcc, 0x22, 0xb0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_596_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_596 = { .name = "ecdsa_brainpoolp256r1_sha256_596", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_596_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_596_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_596_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 172 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 597 for ECDSA, tcId is 173 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_597_pubkey[] = { 0x7c, 0xbf, 0x2b, 0xd2, 0xc8, 0x90, 0x69, 0xd2, 0x3e, 0xf7, 0x41, 0x7c, 0xb7, 0x83, 0xde, 0xc5, 0x00, 0x89, 0xb3, 0xc4, 0x55, 0x73, 0xad, 0x00, 0xe1, 0x21, 0x4b, 0x0c, 0x6f, 0x51, 0xce, 0xd5, 0x6e, 0xf5, 0xcb, 0xc5, 0x78, 0xda, 0x2f, 0x35, 0xcd, 0x8a, 0x43, 0xcf, 0x01, 0xa7, 0x07, 0x88, 0x41, 0xff, 0xfe, 0xf2, 0xbf, 0xaa, 0x4b, 0x93, 0x19, 0x20, 0xad, 0xa7, 0x92, 0x01, 0x9b, 0x29, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_597_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_597 = { .name = "ecdsa_brainpoolp256r1_sha256_597", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_597_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_597_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_597_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 173 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 598 for ECDSA, tcId is 174 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_598_pubkey[] = { 0x33, 0xd4, 0x25, 0x9f, 0x3a, 0xc0, 0xce, 0x8a, 0x53, 0x4e, 0x76, 0x55, 0xf2, 0x06, 0x8f, 0x80, 0xf4, 0x01, 0xc7, 0x42, 0xec, 0x04, 0x08, 0x47, 0x84, 0xd2, 0x69, 0xc4, 0x9e, 0xf0, 0x70, 0x1f, 0x3e, 0x1d, 0xd6, 0xfc, 0x7c, 0x20, 0x6d, 0x4d, 0x75, 0x9c, 0x80, 0xe3, 0x61, 0x2d, 0xa4, 0xd0, 0xfc, 0xd4, 0x20, 0x0a, 0xfe, 0x7a, 0x68, 0x30, 0x0e, 0x9c, 0x13, 0xf4, 0xef, 0x23, 0xf8, 0x80, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_598_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_598 = { .name = "ecdsa_brainpoolp256r1_sha256_598", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_598_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_598_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_598_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 174 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 599 for ECDSA, tcId is 175 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_599_pubkey[] = { 0x6e, 0xac, 0xd3, 0xac, 0x7f, 0x7b, 0xe6, 0x39, 0x42, 0xb8, 0x97, 0xb7, 0x5d, 0x28, 0x26, 0x21, 0x05, 0x53, 0xe1, 0x97, 0x3a, 0x5b, 0x38, 0x48, 0x75, 0x31, 0xe0, 0xdb, 0x4a, 0x84, 0x18, 0xcc, 0x6b, 0x78, 0x1f, 0x1e, 0xc2, 0x30, 0x2b, 0xf2, 0x7f, 0x8c, 0x4a, 0x46, 0xc9, 0x17, 0x91, 0x85, 0xb9, 0x2a, 0x53, 0xa2, 0x8b, 0x85, 0xb3, 0xc6, 0x41, 0x71, 0x13, 0x9d, 0xed, 0xe3, 0x5a, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_599_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_599 = { .name = "ecdsa_brainpoolp256r1_sha256_599", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_599_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_599_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_599_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 175 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 600 for ECDSA, tcId is 176 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_600_pubkey[] = { 0x49, 0x68, 0x0c, 0x57, 0xa9, 0x64, 0x4a, 0xf8, 0xa3, 0xcb, 0x5d, 0x60, 0xf3, 0x3b, 0xbe, 0xb5, 0x4c, 0x91, 0x0b, 0xd4, 0x0d, 0xab, 0x3f, 0xdb, 0x8d, 0xaa, 0x09, 0x18, 0x2e, 0x4d, 0x79, 0x18, 0x80, 0xfc, 0xa5, 0xd9, 0x24, 0x09, 0x2c, 0x31, 0x6a, 0xe8, 0x26, 0x6b, 0x2a, 0x32, 0xb7, 0x4f, 0x18, 0x6f, 0x6c, 0xf2, 0x2c, 0x29, 0x52, 0x08, 0x71, 0xfb, 0x2a, 0xd2, 0xc4, 0x4e, 0xe7, 0x1a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_600_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_600 = { .name = "ecdsa_brainpoolp256r1_sha256_600", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_600_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_600_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_600_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 176 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 601 for ECDSA, tcId is 177 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_601_pubkey[] = { 0x69, 0x56, 0x6f, 0x1e, 0x46, 0x19, 0x34, 0x6b, 0xf8, 0x1d, 0x4b, 0x7e, 0x76, 0x70, 0x57, 0x81, 0xae, 0x6a, 0x3e, 0x84, 0x70, 0x80, 0x6a, 0xe4, 0xf7, 0x3d, 0x53, 0xbb, 0x03, 0xc2, 0x07, 0xa1, 0x39, 0x6a, 0x54, 0xd5, 0x7b, 0x45, 0x95, 0x1e, 0xbc, 0xe9, 0x98, 0x7f, 0x6a, 0xdb, 0x45, 0x7d, 0x7c, 0xe7, 0x7c, 0x6c, 0x38, 0x20, 0xd6, 0x57, 0xf9, 0xa8, 0x88, 0x2c, 0xdf, 0xad, 0x66, 0xcf, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_601_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_601 = { .name = "ecdsa_brainpoolp256r1_sha256_601", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_601_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_601_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_601_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 177 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 602 for ECDSA, tcId is 178 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_602_pubkey[] = { 0x46, 0x86, 0x8f, 0xbf, 0xc7, 0x15, 0x0d, 0x0b, 0xdb, 0x1c, 0x8e, 0x99, 0x76, 0xd8, 0x45, 0xdc, 0x4b, 0x88, 0x40, 0xf4, 0xd9, 0x21, 0x29, 0x9b, 0x6d, 0x8f, 0x98, 0x9d, 0x4d, 0xce, 0x86, 0x57, 0x83, 0x92, 0x1b, 0x9a, 0x72, 0x9e, 0x51, 0xd2, 0xde, 0xb5, 0x95, 0x5f, 0x4d, 0x87, 0xcc, 0x2b, 0x29, 0x9c, 0x7f, 0x01, 0x37, 0x2a, 0xe8, 0x2c, 0xd6, 0x3f, 0x52, 0x9a, 0x26, 0x6d, 0x4b, 0x52, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_602_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_602 = { .name = "ecdsa_brainpoolp256r1_sha256_602", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_602_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_602_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_602_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 178 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 603 for ECDSA, tcId is 179 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_603_pubkey[] = { 0x4b, 0xa9, 0xff, 0xba, 0xd2, 0x6f, 0x90, 0x9e, 0x59, 0xff, 0x58, 0x11, 0x8f, 0xb2, 0x5d, 0x05, 0xe1, 0xfd, 0x27, 0x22, 0xcf, 0x1b, 0x9d, 0x88, 0xab, 0xfe, 0xb7, 0x16, 0xc9, 0xf5, 0x46, 0x1f, 0x76, 0xb2, 0xf3, 0x95, 0xfd, 0xac, 0xb8, 0x9f, 0x3b, 0x85, 0xfd, 0xf4, 0xcd, 0x73, 0x36, 0x30, 0x40, 0x30, 0x68, 0x55, 0x9b, 0xa1, 0x2c, 0x0f, 0x43, 0x8f, 0x85, 0x62, 0x86, 0x77, 0x3f, 0x9b, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_603_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_603 = { .name = "ecdsa_brainpoolp256r1_sha256_603", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_603_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_603_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_603_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 179 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 604 for ECDSA, tcId is 180 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_604_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_604_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_604 = { .name = "ecdsa_brainpoolp256r1_sha256_604", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_604_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_604_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_604_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 180 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 605 for ECDSA, tcId is 181 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_605_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_605_sig[] = { 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_605 = { .name = "ecdsa_brainpoolp256r1_sha256_605", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_605_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_605_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_605_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 181 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 606 for ECDSA, tcId is 182 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_606_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_606_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_606 = { .name = "ecdsa_brainpoolp256r1_sha256_606", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_606_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_606_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_606_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 182 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 607 for ECDSA, tcId is 183 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_607_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_607_sig[] = { 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_607 = { .name = "ecdsa_brainpoolp256r1_sha256_607", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_607_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_607_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_607_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 183 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 608 for ECDSA, tcId is 184 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_608_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_608_sig[] = { 0x74, 0x5b, 0xe1, 0xda, 0x90, 0x2d, 0x19, 0xc7, 0x6c, 0x8f, 0x57, 0xd4, 0xa1, 0xf3, 0x36, 0x2b, 0x4b, 0x20, 0xed, 0x7c, 0x8d, 0xe8, 0xfc, 0x04, 0x63, 0xd5, 0x66, 0x79, 0x5f, 0x97, 0x9c, 0xea, 0x59, 0x16, 0xc3, 0x17, 0xa1, 0xe3, 0x25, 0xb5, 0x37, 0x35, 0x21, 0x6a, 0x0f, 0xa3, 0x77, 0x37, 0xf0, 0x8b, 0x32, 0x24, 0x5c, 0x88, 0x08, 0x48, 0x17, 0xb4, 0x68, 0xa4, 0x1f, 0x5a, 0xfe, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_608 = { .name = "ecdsa_brainpoolp256r1_sha256_608", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_608_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp256r1_sha256_608_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 184 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 609 for ECDSA, tcId is 185 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_609_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_609_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_609_sig[] = { 0x0f, 0xf9, 0x27, 0x9a, 0x07, 0x75, 0x74, 0x0b, 0x7d, 0xb8, 0xbe, 0xc0, 0x7f, 0x9a, 0x04, 0x01, 0xb7, 0x90, 0x38, 0x86, 0xcb, 0x19, 0x8c, 0x1b, 0x18, 0xc4, 0x6d, 0xe0, 0x67, 0x3b, 0x31, 0xc3, 0x8b, 0x3c, 0x86, 0x86, 0xbd, 0x1a, 0x15, 0x08, 0xb5, 0xb7, 0x85, 0xe7, 0x62, 0xfe, 0xce, 0x8c, 0x6c, 0xf1, 0x9b, 0x61, 0x56, 0x98, 0x3e, 0x5c, 0x36, 0xb2, 0xbb, 0xe7, 0x24, 0xd6, 0xc2, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_609 = { .name = "ecdsa_brainpoolp256r1_sha256_609", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_609_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_609_msg, .msglen = 3, .sig = ecdsa_brainpoolp256r1_sha256_609_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 185 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 610 for ECDSA, tcId is 186 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_610_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_610_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_610_sig[] = { 0x35, 0x1e, 0x72, 0x70, 0x03, 0x89, 0x6e, 0xc0, 0x29, 0x49, 0xa3, 0xcf, 0x75, 0x22, 0x23, 0xbc, 0xc6, 0xc2, 0xb6, 0x11, 0xb3, 0x03, 0x91, 0xed, 0xd6, 0x0d, 0xc0, 0xc8, 0x3d, 0xc9, 0xc9, 0x8f, 0x92, 0x4a, 0xd9, 0xdc, 0x00, 0x36, 0x4d, 0x4a, 0xa2, 0x09, 0x14, 0x16, 0xd1, 0x73, 0x86, 0x2f, 0x9b, 0x02, 0x96, 0x5f, 0xf1, 0x76, 0xe8, 0x80, 0xea, 0x62, 0xa6, 0x73, 0xe1, 0x6d, 0xb9, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_610 = { .name = "ecdsa_brainpoolp256r1_sha256_610", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_610_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_610_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_610_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 186 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 611 for ECDSA, tcId is 187 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_611_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_611_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_611_sig[] = { 0x44, 0xa8, 0x11, 0xb2, 0x32, 0x1a, 0xcb, 0xc6, 0x5c, 0xac, 0xf8, 0x0d, 0x2d, 0xbe, 0x84, 0x89, 0x46, 0xf1, 0xda, 0xc5, 0x28, 0xf3, 0xe1, 0xae, 0x38, 0xb0, 0xe5, 0x4d, 0x08, 0x3c, 0x25, 0x8f, 0x55, 0xd7, 0xed, 0xfa, 0xec, 0xdd, 0xa3, 0xbb, 0xc0, 0x62, 0xd5, 0x07, 0x4e, 0x3c, 0x37, 0x19, 0xd3, 0x27, 0x61, 0x15, 0x9d, 0x02, 0x7c, 0xa2, 0x7c, 0x17, 0x25, 0xdd, 0xbd, 0x62, 0xf6, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_611 = { .name = "ecdsa_brainpoolp256r1_sha256_611", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_611_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_611_msg, .msglen = 20, .sig = ecdsa_brainpoolp256r1_sha256_611_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 187 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 612 for ECDSA, tcId is 188 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_612_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_612_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_612_sig[] = { 0x62, 0xaa, 0xb4, 0x0a, 0x36, 0xd6, 0xa0, 0xd2, 0x56, 0x44, 0x71, 0x9c, 0xe3, 0x1d, 0xc6, 0x29, 0xec, 0x68, 0x4f, 0x6f, 0x0d, 0xa3, 0x2f, 0x9d, 0xd0, 0x34, 0xcc, 0xc4, 0x21, 0xdb, 0xd0, 0xed, 0xa1, 0xfa, 0x6b, 0x0d, 0xfd, 0x95, 0x58, 0xda, 0x29, 0x37, 0x4f, 0xb7, 0x75, 0x05, 0xee, 0x8a, 0xb3, 0x57, 0x21, 0x61, 0x71, 0x1f, 0x82, 0x1d, 0x11, 0x80, 0x7c, 0x7f, 0xff, 0x91, 0x0c, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_612 = { .name = "ecdsa_brainpoolp256r1_sha256_612", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_612_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_612_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_612_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 188 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 613 for ECDSA, tcId is 189 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_613_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_613_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_613_sig[] = { 0x74, 0x0c, 0xd3, 0xd3, 0xa9, 0xcd, 0x9d, 0xbe, 0x05, 0xea, 0xd4, 0xe3, 0x9e, 0x54, 0xdb, 0x27, 0xc0, 0xf1, 0x57, 0x9d, 0xa6, 0x8e, 0x3a, 0xa5, 0xc9, 0x24, 0x5b, 0x04, 0x7a, 0xeb, 0xc3, 0xb8, 0x8a, 0xe7, 0x8c, 0x12, 0x23, 0x3d, 0x37, 0x8f, 0xe2, 0xce, 0x3c, 0x0f, 0xb2, 0xb7, 0x69, 0xf8, 0x46, 0x38, 0x30, 0xa7, 0x1a, 0x5e, 0x51, 0x87, 0xc1, 0x1b, 0x20, 0xfd, 0xd7, 0xe5, 0x04, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_613 = { .name = "ecdsa_brainpoolp256r1_sha256_613", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_613_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_613_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_613_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 189 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 614 for ECDSA, tcId is 190 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_614_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_614_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_614_sig[] = { 0xa2, 0x8f, 0x30, 0x24, 0x5c, 0x5f, 0xb0, 0xc2, 0x25, 0xfd, 0xec, 0x23, 0x92, 0x4d, 0xc2, 0xcd, 0x4c, 0x2d, 0xa8, 0x88, 0xd1, 0xee, 0x1b, 0xc5, 0x44, 0x58, 0x58, 0xc6, 0x46, 0x01, 0x5c, 0xa8, 0x0e, 0xe3, 0x64, 0xc1, 0x49, 0x1c, 0x45, 0x51, 0xef, 0x35, 0x09, 0xbe, 0x8f, 0x88, 0xdb, 0x0e, 0x04, 0xd0, 0xaf, 0xb3, 0x65, 0x28, 0xae, 0xda, 0x13, 0x01, 0xb1, 0x49, 0x48, 0xcc, 0x9c, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_614 = { .name = "ecdsa_brainpoolp256r1_sha256_614", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_614_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_614_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_614_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 190 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 615 for ECDSA, tcId is 191 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_615_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_615_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_615_sig[] = { 0x7f, 0x20, 0x2f, 0x54, 0xf5, 0x91, 0xb5, 0x11, 0x05, 0xb2, 0x27, 0xee, 0x6d, 0x6d, 0xa3, 0xad, 0xdd, 0xfc, 0x4b, 0x5e, 0x81, 0x9e, 0xfc, 0x04, 0xbe, 0xfc, 0xdc, 0xbf, 0x74, 0x84, 0xf7, 0x83, 0x43, 0x60, 0xea, 0x04, 0x50, 0x39, 0x55, 0xfc, 0x3f, 0x02, 0x59, 0x28, 0xb2, 0xdc, 0xe5, 0x0f, 0xf2, 0xd5, 0x8b, 0x90, 0x60, 0xb3, 0x4b, 0xbe, 0xdf, 0xc3, 0xc2, 0x19, 0xb3, 0xb4, 0x35, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_615 = { .name = "ecdsa_brainpoolp256r1_sha256_615", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_615_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_615_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_615_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 191 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 616 for ECDSA, tcId is 192 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_616_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_616_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_616_sig[] = { 0x62, 0xe2, 0x18, 0xdc, 0xa3, 0x2e, 0x4e, 0xf3, 0x56, 0x92, 0xe9, 0x31, 0x5e, 0x1e, 0x03, 0x6b, 0xef, 0x17, 0x66, 0x07, 0x3b, 0x84, 0x6e, 0x38, 0xde, 0x20, 0xd2, 0xd2, 0x93, 0x49, 0xf9, 0xfe, 0x51, 0x9d, 0x4d, 0x4c, 0x61, 0x58, 0xd9, 0x54, 0x74, 0xd7, 0x93, 0xa0, 0xee, 0x9c, 0x26, 0x0a, 0x0c, 0x54, 0x69, 0xc5, 0xaa, 0xb7, 0x95, 0x10, 0x97, 0x1b, 0x41, 0xfb, 0x4f, 0xae, 0x4b, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_616 = { .name = "ecdsa_brainpoolp256r1_sha256_616", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_616_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_616_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_616_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 192 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 617 for ECDSA, tcId is 193 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_617_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_617_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_617_sig[] = { 0xa3, 0x90, 0x22, 0x95, 0xf6, 0xf7, 0x43, 0xac, 0x75, 0x4d, 0xb7, 0xb3, 0xfc, 0xd8, 0x23, 0xbe, 0x91, 0x7b, 0x11, 0x91, 0xa5, 0x70, 0x57, 0x28, 0xf5, 0x68, 0x24, 0x92, 0x78, 0x4d, 0xa7, 0xf1, 0x43, 0xde, 0xf6, 0x36, 0x66, 0x0e, 0xff, 0x72, 0xe6, 0x43, 0x5e, 0xdb, 0x85, 0x0c, 0x91, 0x26, 0xc7, 0x06, 0x79, 0x38, 0x66, 0x8f, 0x24, 0x99, 0x98, 0xa0, 0xe4, 0x00, 0x6b, 0x8e, 0xe7, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_617 = { .name = "ecdsa_brainpoolp256r1_sha256_617", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_617_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_617_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_617_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 193 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 618 for ECDSA, tcId is 194 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_618_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_618_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_618_sig[] = { 0x86, 0xd0, 0x5b, 0x26, 0xa9, 0xca, 0x7e, 0x10, 0xae, 0x06, 0x81, 0xbb, 0x4c, 0x35, 0xa0, 0x6d, 0x7a, 0x4e, 0x91, 0x8f, 0x86, 0x25, 0xe3, 0xdf, 0xa7, 0xac, 0x2d, 0x5a, 0xed, 0xa9, 0x1c, 0x05, 0x08, 0xc5, 0xf4, 0x75, 0xa9, 0x58, 0x88, 0x76, 0x9d, 0xa4, 0xa0, 0xe1, 0xb6, 0x35, 0xc2, 0x29, 0x2f, 0x65, 0x4f, 0x93, 0x4a, 0x5c, 0x50, 0x10, 0xfe, 0x0c, 0x72, 0x9f, 0x3d, 0x11, 0xe1, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_618 = { .name = "ecdsa_brainpoolp256r1_sha256_618", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_618_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_618_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_618_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 194 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 619 for ECDSA, tcId is 195 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_619_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_619_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_619_sig[] = { 0x43, 0xc4, 0x47, 0x47, 0x10, 0xd2, 0x50, 0x94, 0xa2, 0xe2, 0x1a, 0x9c, 0xc0, 0x85, 0x85, 0xc2, 0x60, 0x15, 0xf9, 0xf9, 0x40, 0x12, 0xb1, 0x00, 0xe7, 0x2c, 0x07, 0x63, 0xaa, 0x9e, 0x0c, 0xff, 0x83, 0x45, 0xc4, 0x6f, 0xd5, 0x59, 0x2c, 0xef, 0xbd, 0x5e, 0xbb, 0x25, 0x89, 0x65, 0xc0, 0x5d, 0x96, 0x4e, 0x6e, 0x6a, 0x27, 0x81, 0x98, 0xdd, 0xc1, 0xe3, 0x88, 0xcf, 0x1e, 0x75, 0x86, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_619 = { .name = "ecdsa_brainpoolp256r1_sha256_619", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_619_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_619_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_619_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 195 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 620 for ECDSA, tcId is 196 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_620_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_620_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_620_sig[] = { 0x6d, 0x27, 0x24, 0x16, 0x7e, 0x81, 0x65, 0x28, 0x49, 0x1c, 0xce, 0x57, 0x4f, 0x05, 0x26, 0x20, 0x9d, 0xe5, 0x2c, 0xd0, 0xf2, 0xaf, 0x00, 0x85, 0x28, 0x4f, 0xd0, 0x50, 0x16, 0x3d, 0x37, 0xc5, 0x76, 0xdd, 0x1d, 0xd5, 0x0f, 0xf9, 0xb5, 0x53, 0xb0, 0xe1, 0x42, 0xb7, 0xe6, 0xc6, 0xbe, 0x8e, 0xdf, 0x37, 0x08, 0xdd, 0x29, 0x2f, 0x03, 0xf3, 0xe9, 0xbf, 0x15, 0x7d, 0x21, 0xda, 0xa9, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_620 = { .name = "ecdsa_brainpoolp256r1_sha256_620", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_620_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_620_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_620_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 196 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 621 for ECDSA, tcId is 197 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_621_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_621_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_621_sig[] = { 0x32, 0x10, 0x09, 0xa0, 0x6c, 0x75, 0x9c, 0x54, 0xcd, 0x66, 0xba, 0xaf, 0xa0, 0xcb, 0xfd, 0x07, 0xee, 0xdb, 0x19, 0xf1, 0x2a, 0x1e, 0xd6, 0x54, 0xdd, 0x52, 0xb5, 0x6f, 0x9c, 0x4f, 0xac, 0x7c, 0x19, 0x56, 0x31, 0x0a, 0x7e, 0x47, 0x57, 0xec, 0x83, 0xdd, 0xb9, 0x2d, 0x27, 0x63, 0x60, 0x73, 0x54, 0x67, 0x81, 0x49, 0xf1, 0xad, 0x92, 0x38, 0x79, 0x28, 0xcf, 0x88, 0x7b, 0x4b, 0xed, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_621 = { .name = "ecdsa_brainpoolp256r1_sha256_621", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_621_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_621_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_621_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 197 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 622 for ECDSA, tcId is 198 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_622_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_622_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_622_sig[] = { 0x9b, 0xdd, 0x35, 0x98, 0x81, 0xc2, 0x39, 0xe2, 0x41, 0x5c, 0xa2, 0xaf, 0x3d, 0x18, 0x46, 0x3b, 0xb2, 0x4b, 0xe5, 0x3f, 0x6f, 0x63, 0x6c, 0xbd, 0x20, 0x36, 0x0b, 0x6b, 0x33, 0x3b, 0xc3, 0x45, 0x0f, 0xf0, 0x3b, 0xc3, 0x6c, 0xc1, 0x97, 0x5b, 0xdc, 0x86, 0x80, 0xc4, 0x4f, 0xbf, 0x2a, 0xef, 0xdd, 0xf6, 0x7c, 0x11, 0x8c, 0x30, 0x4b, 0x8b, 0x3d, 0x36, 0x0e, 0xb1, 0x02, 0x03, 0xc3, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_622 = { .name = "ecdsa_brainpoolp256r1_sha256_622", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_622_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_622_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_622_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 198 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 623 for ECDSA, tcId is 199 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_623_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_623_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_623_sig[] = { 0x48, 0x56, 0x5e, 0xb7, 0xe7, 0x82, 0x0d, 0x40, 0x75, 0x4b, 0x5f, 0x26, 0x4a, 0x4c, 0xea, 0xfa, 0x62, 0xbf, 0x75, 0x08, 0x42, 0x41, 0x51, 0x4b, 0x49, 0x19, 0x95, 0xe7, 0x97, 0x1e, 0x69, 0x95, 0x3d, 0xa6, 0xdf, 0x3d, 0x35, 0x4f, 0x48, 0xda, 0xef, 0x6d, 0x07, 0x8c, 0xf1, 0x12, 0x42, 0x95, 0xfc, 0x8c, 0x32, 0x11, 0xf2, 0x75, 0x79, 0x67, 0xc7, 0x81, 0xdc, 0x2e, 0x9c, 0x62, 0xed, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_623 = { .name = "ecdsa_brainpoolp256r1_sha256_623", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_623_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_623_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_623_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 199 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 624 for ECDSA, tcId is 200 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_624_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_624_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_624_sig[] = { 0x51, 0x8e, 0x88, 0x5d, 0xef, 0x02, 0x2e, 0xb5, 0x02, 0x0f, 0xc9, 0x0f, 0x40, 0x24, 0xd8, 0x71, 0x22, 0xdc, 0x0f, 0x3e, 0xd7, 0xf8, 0x69, 0xed, 0x77, 0x20, 0xff, 0x74, 0xa0, 0x09, 0xfb, 0x7b, 0x8a, 0x3e, 0x26, 0xa8, 0xcd, 0x42, 0x6d, 0x21, 0xeb, 0xa5, 0xcd, 0x7a, 0x56, 0x14, 0xf3, 0x64, 0x43, 0x95, 0xcf, 0xce, 0xcb, 0x24, 0xfe, 0x76, 0x0a, 0x68, 0xa7, 0xa9, 0xe8, 0xf0, 0x9c, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_624 = { .name = "ecdsa_brainpoolp256r1_sha256_624", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_624_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_624_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_624_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 200 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 625 for ECDSA, tcId is 201 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_625_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_625_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_625_sig[] = { 0x04, 0xb0, 0x1e, 0x5c, 0xc3, 0xce, 0x9b, 0xf1, 0x08, 0x44, 0xbc, 0x1c, 0xb2, 0x1d, 0xee, 0xff, 0x6e, 0xbc, 0x9e, 0x2a, 0x70, 0x10, 0xcf, 0xbb, 0x3a, 0xf0, 0x81, 0x13, 0x54, 0x59, 0x9c, 0x81, 0x2e, 0x65, 0xfb, 0x8d, 0xb6, 0x2f, 0x25, 0x59, 0x10, 0xea, 0x4d, 0x52, 0x35, 0xbb, 0x21, 0xaa, 0x67, 0xaa, 0x59, 0xff, 0xd5, 0x19, 0x91, 0x1e, 0xcd, 0x98, 0x93, 0x00, 0x0a, 0xb6, 0x7b, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_625 = { .name = "ecdsa_brainpoolp256r1_sha256_625", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_625_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_625_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_625_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 201 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 626 for ECDSA, tcId is 202 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_626_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_626_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_626_sig[] = { 0x94, 0xbb, 0x06, 0x01, 0x19, 0x8c, 0x4c, 0xe2, 0x66, 0xb0, 0x93, 0x24, 0x26, 0xff, 0xd0, 0x01, 0x32, 0xd7, 0xd4, 0xe2, 0xde, 0x65, 0xef, 0x47, 0xf5, 0x63, 0x60, 0x82, 0x5f, 0x26, 0x24, 0x38, 0x27, 0x34, 0x32, 0x7d, 0x19, 0x89, 0xc9, 0x58, 0x0f, 0x54, 0x58, 0xf0, 0x4a, 0xac, 0x6f, 0xd5, 0x75, 0x2a, 0x1e, 0xe5, 0xe2, 0x36, 0xe9, 0xed, 0x1a, 0x7c, 0x0b, 0x2d, 0x9b, 0x36, 0xdb, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_626 = { .name = "ecdsa_brainpoolp256r1_sha256_626", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_626_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_626_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_626_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 202 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 627 for ECDSA, tcId is 203 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_627_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_627_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_627_sig[] = { 0x4d, 0xde, 0x19, 0x7f, 0x96, 0x2c, 0x63, 0xa7, 0x79, 0x9c, 0x86, 0x2e, 0x89, 0x7b, 0x3b, 0xb1, 0xe7, 0xa7, 0xdd, 0xfb, 0x9a, 0xb7, 0x7c, 0x2a, 0x17, 0xa5, 0x41, 0x51, 0xce, 0x60, 0x4a, 0xd6, 0x01, 0x7e, 0x7a, 0xef, 0x86, 0xe5, 0x33, 0x08, 0x64, 0x25, 0xa2, 0xc4, 0xb3, 0x20, 0x82, 0xf1, 0x18, 0x91, 0x3e, 0xf3, 0x66, 0x7c, 0x84, 0x37, 0x67, 0x2e, 0x0b, 0xbc, 0x7c, 0x2b, 0x8d, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_627 = { .name = "ecdsa_brainpoolp256r1_sha256_627", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_627_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_627_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_627_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 203 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 628 for ECDSA, tcId is 204 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_628_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_628_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_628_sig[] = { 0x7c, 0x53, 0xed, 0x1d, 0x50, 0x4a, 0xd4, 0xba, 0x53, 0xd3, 0x97, 0x92, 0x01, 0x2a, 0x34, 0xd0, 0x07, 0x25, 0x0a, 0x2b, 0x8d, 0x1c, 0xa1, 0x89, 0xc0, 0xd9, 0xf7, 0x5c, 0xcc, 0x9a, 0x99, 0x57, 0x09, 0xb9, 0x7d, 0xcc, 0x5c, 0x67, 0x48, 0x71, 0x14, 0x23, 0x1d, 0x60, 0x13, 0x74, 0xa8, 0x36, 0x4c, 0xaf, 0xa3, 0x95, 0x81, 0x29, 0x17, 0x62, 0x20, 0x2b, 0x92, 0x15, 0xd5, 0x11, 0x35, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_628 = { .name = "ecdsa_brainpoolp256r1_sha256_628", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_628_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_628_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_628_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 204 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 629 for ECDSA, tcId is 205 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_629_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_629_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_629_sig[] = { 0x51, 0x32, 0x45, 0xab, 0x2b, 0x6a, 0x42, 0x06, 0xbb, 0x0f, 0x69, 0x70, 0xc8, 0xad, 0x04, 0x0a, 0x94, 0x72, 0x5d, 0xdc, 0x9a, 0x08, 0xdb, 0x0f, 0xd9, 0xde, 0xf9, 0x38, 0x66, 0xff, 0xbb, 0xa1, 0xa5, 0x3a, 0x7a, 0xb3, 0x7d, 0xec, 0xed, 0xae, 0x18, 0xdd, 0x5b, 0x5c, 0x48, 0xeb, 0x64, 0x2b, 0x7a, 0x9c, 0x92, 0x7e, 0x6b, 0xcf, 0x6b, 0xda, 0xc3, 0xa7, 0x57, 0xe6, 0xd2, 0xc1, 0x69, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_629 = { .name = "ecdsa_brainpoolp256r1_sha256_629", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_629_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_629_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_629_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 205 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 630 for ECDSA, tcId is 206 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_630_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_630_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_630_sig[] = { 0xa5, 0x03, 0x18, 0xc3, 0x06, 0x6a, 0x49, 0x66, 0xad, 0x18, 0xae, 0x8f, 0x85, 0x25, 0x3f, 0xbb, 0x58, 0x35, 0xa3, 0x4b, 0x2f, 0x91, 0x87, 0xda, 0xac, 0x71, 0xee, 0x28, 0xd3, 0xd5, 0xd0, 0xeb, 0x08, 0x90, 0xef, 0x0f, 0xc9, 0x3d, 0xf2, 0x22, 0xd1, 0x11, 0x97, 0xcb, 0x22, 0x14, 0x83, 0xce, 0x89, 0x7b, 0x0c, 0xf1, 0xac, 0xf4, 0xa9, 0x09, 0xc3, 0x06, 0xc5, 0xa4, 0x85, 0x77, 0x6a, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_630 = { .name = "ecdsa_brainpoolp256r1_sha256_630", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_630_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_630_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_630_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 206 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 631 for ECDSA, tcId is 207 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_631_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_631_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_631_sig[] = { 0x04, 0x1e, 0x03, 0x89, 0xdd, 0xa2, 0xcf, 0x2a, 0xe3, 0xa9, 0x56, 0x2a, 0x0f, 0xb5, 0xd4, 0x1c, 0x1f, 0x75, 0x33, 0xe6, 0xcc, 0x84, 0xa8, 0x96, 0xe9, 0x9a, 0xf7, 0x81, 0xe2, 0x10, 0x97, 0x70, 0x36, 0x6b, 0x5d, 0x88, 0xc3, 0x6f, 0x12, 0x27, 0xdf, 0x52, 0x2f, 0xda, 0xb6, 0x5e, 0x12, 0x34, 0x7d, 0x68, 0xeb, 0x64, 0xf2, 0xde, 0x82, 0xc6, 0x48, 0x11, 0x5f, 0xd5, 0x65, 0xbd, 0x37, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_631 = { .name = "ecdsa_brainpoolp256r1_sha256_631", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_631_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_631_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_631_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 207 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 632 for ECDSA, tcId is 208 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_632_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_632_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_632_sig[] = { 0x2a, 0x76, 0x39, 0x4a, 0x04, 0xae, 0x19, 0xb2, 0x5c, 0x54, 0x29, 0x1e, 0x28, 0xbc, 0xd4, 0x2a, 0x7e, 0xde, 0xb2, 0x09, 0x81, 0xb8, 0xa3, 0xb8, 0x38, 0xf9, 0xdd, 0x0e, 0x29, 0xb5, 0x74, 0xc1, 0x9c, 0xe8, 0x99, 0x80, 0xae, 0x43, 0x2c, 0x4f, 0xa6, 0xa6, 0x80, 0x25, 0xda, 0x55, 0x4b, 0xf9, 0x00, 0xcc, 0x2e, 0xb0, 0xc6, 0x69, 0x06, 0x42, 0x0d, 0x32, 0x2c, 0x14, 0xb4, 0x53, 0x04, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_632 = { .name = "ecdsa_brainpoolp256r1_sha256_632", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_632_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_632_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_632_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 208 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 633 for ECDSA, tcId is 209 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_633_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_633_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_633_sig[] = { 0x66, 0x95, 0x8b, 0xe3, 0x37, 0x94, 0x05, 0x82, 0x6a, 0x00, 0xda, 0xf5, 0x49, 0x5b, 0x16, 0x57, 0x69, 0x81, 0x26, 0xa5, 0xff, 0x44, 0x9f, 0x96, 0x49, 0xaf, 0x26, 0xca, 0x96, 0xdf, 0x96, 0x67, 0x9b, 0x41, 0x00, 0x81, 0x6e, 0x27, 0x41, 0xf8, 0x6c, 0x5c, 0x0b, 0x0d, 0xcf, 0x82, 0xe5, 0x79, 0xf4, 0x28, 0x1d, 0x2b, 0x8e, 0x70, 0xc2, 0x34, 0x80, 0x8d, 0x84, 0xc1, 0xa4, 0x95, 0x07, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_633 = { .name = "ecdsa_brainpoolp256r1_sha256_633", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_633_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_633_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_633_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 209 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 634 for ECDSA, tcId is 210 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_634_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_634_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_634_sig[] = { 0x53, 0xed, 0x0f, 0x4b, 0x8f, 0xb3, 0x3e, 0xf2, 0x77, 0xcd, 0xd1, 0x06, 0x04, 0x35, 0xed, 0x3d, 0xec, 0x51, 0x8a, 0x22, 0x56, 0x59, 0xf7, 0x1f, 0x67, 0xf9, 0xa1, 0xf0, 0x7f, 0x85, 0xc1, 0xca, 0x12, 0x4d, 0x5f, 0x94, 0xdd, 0xf1, 0x2b, 0xb4, 0xcb, 0xe3, 0xc5, 0xce, 0xa6, 0xd2, 0x68, 0x6d, 0x44, 0x80, 0xda, 0xbb, 0x8f, 0xfb, 0xb0, 0x5e, 0x52, 0x38, 0xc8, 0x77, 0xfe, 0x20, 0x38, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_634 = { .name = "ecdsa_brainpoolp256r1_sha256_634", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_634_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_634_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_634_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 210 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 635 for ECDSA, tcId is 211 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_635_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_635_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_635_sig[] = { 0x46, 0x64, 0x3c, 0x7f, 0xe0, 0xf3, 0x08, 0xb8, 0xaf, 0x4c, 0xe2, 0x97, 0x8d, 0x79, 0x7e, 0x8c, 0x46, 0xa7, 0xe1, 0xf8, 0xbf, 0xee, 0x0b, 0x5c, 0xdb, 0xae, 0xcd, 0xe1, 0xf5, 0x9b, 0xe4, 0x1d, 0x1b, 0xd1, 0x1a, 0x81, 0x4d, 0x1f, 0xbd, 0x9a, 0xe9, 0x7a, 0x49, 0xdf, 0x99, 0xbe, 0xca, 0x7f, 0xec, 0x25, 0x12, 0x56, 0x3c, 0x00, 0x31, 0xc5, 0xaa, 0xd5, 0xb9, 0xfc, 0x2f, 0xb0, 0xa5, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_635 = { .name = "ecdsa_brainpoolp256r1_sha256_635", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_635_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_635_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_635_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 211 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 636 for ECDSA, tcId is 212 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_636_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_636_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_636_sig[] = { 0x4f, 0x83, 0x3b, 0xec, 0x9c, 0x80, 0x18, 0x5b, 0xea, 0xcb, 0xb7, 0x3b, 0x5f, 0x98, 0x4e, 0x2c, 0x03, 0xd9, 0x22, 0x35, 0x9b, 0xe7, 0x46, 0x8c, 0xe3, 0x75, 0x84, 0xf5, 0x3d, 0x1a, 0xea, 0x4a, 0x66, 0x36, 0x74, 0x4a, 0xb7, 0xfe, 0xca, 0xa5, 0x35, 0x41, 0xbc, 0xf5, 0xf3, 0x7c, 0x6c, 0xbe, 0x82, 0x8a, 0x8e, 0xfb, 0xc4, 0xd0, 0x0f, 0x64, 0x69, 0xba, 0x39, 0x0a, 0x86, 0x70, 0x8a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_636 = { .name = "ecdsa_brainpoolp256r1_sha256_636", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_636_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_636_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_636_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 212 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 637 for ECDSA, tcId is 213 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_637_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_637_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_637_sig[] = { 0xa2, 0x86, 0x9d, 0xa4, 0x16, 0x52, 0x3a, 0xad, 0x2b, 0x8f, 0xa8, 0xaa, 0xd5, 0xc3, 0xb3, 0x1c, 0x5a, 0x53, 0x5f, 0xdd, 0x41, 0x3b, 0x71, 0xaf, 0x4d, 0xff, 0xb9, 0x0c, 0x6f, 0x96, 0xa6, 0x69, 0x29, 0xff, 0x3e, 0x8d, 0x49, 0x9c, 0xab, 0xc3, 0xcc, 0x4c, 0xcc, 0xd0, 0xfa, 0x81, 0x1c, 0xc3, 0xb0, 0x47, 0x70, 0xaa, 0x71, 0xf0, 0xd0, 0x52, 0x18, 0x52, 0x10, 0xb1, 0x4d, 0x31, 0x99, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_637 = { .name = "ecdsa_brainpoolp256r1_sha256_637", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_637_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_637_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_637_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 213 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 638 for ECDSA, tcId is 214 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_638_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_638_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_638_sig[] = { 0x63, 0xdb, 0xfe, 0x29, 0x24, 0x9a, 0x50, 0x6b, 0x89, 0xfb, 0xd2, 0xcb, 0x1f, 0xaf, 0xc2, 0x54, 0xa9, 0x58, 0x2d, 0xfc, 0x4b, 0x08, 0xd1, 0x43, 0xb6, 0xd2, 0x5b, 0xf2, 0xab, 0x49, 0xd5, 0x5e, 0x44, 0xca, 0xd8, 0x0c, 0x00, 0x46, 0x09, 0x05, 0xe1, 0x03, 0xf2, 0x6d, 0xa8, 0x4c, 0xef, 0xd7, 0x1a, 0xf4, 0xbc, 0x7a, 0x71, 0x96, 0x2a, 0x3b, 0xce, 0x32, 0x1b, 0xc3, 0xb5, 0x84, 0x27, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_638 = { .name = "ecdsa_brainpoolp256r1_sha256_638", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_638_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_638_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_638_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 214 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 639 for ECDSA, tcId is 215 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_639_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_639_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_639_sig[] = { 0x9d, 0x90, 0x7c, 0xf8, 0x8e, 0x10, 0xd6, 0x0c, 0x3f, 0x23, 0x89, 0x24, 0x98, 0xfe, 0x43, 0xdd, 0xb0, 0x2f, 0x82, 0x4f, 0xb1, 0x8e, 0x6b, 0xe3, 0x13, 0xe0, 0x2d, 0x94, 0xf2, 0xc8, 0xe0, 0x90, 0x0c, 0x16, 0xb9, 0xe0, 0xdb, 0x4d, 0xc8, 0x60, 0x6c, 0x02, 0x3b, 0x00, 0x1f, 0x69, 0xb3, 0xc8, 0x86, 0x08, 0x07, 0x94, 0xfc, 0x9d, 0x7f, 0xe3, 0x1b, 0x00, 0xc1, 0xcf, 0x09, 0x35, 0xe4, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_639 = { .name = "ecdsa_brainpoolp256r1_sha256_639", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_639_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_639_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_639_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 215 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 640 for ECDSA, tcId is 216 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_640_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_640_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_640_sig[] = { 0x73, 0x95, 0xce, 0x0e, 0xf6, 0x52, 0x84, 0x8a, 0x86, 0xb6, 0x10, 0x97, 0xcc, 0x95, 0x43, 0x99, 0x8d, 0x39, 0xda, 0xe8, 0x8a, 0x1f, 0xc9, 0xe4, 0xdf, 0xdd, 0x69, 0x64, 0x29, 0x49, 0x54, 0x89, 0x7d, 0xe2, 0x9e, 0x25, 0x6e, 0x82, 0x02, 0x38, 0x2f, 0x91, 0xc1, 0x16, 0xa6, 0x67, 0xa8, 0xb9, 0x46, 0xf2, 0x10, 0x44, 0x7a, 0x57, 0x36, 0x9b, 0xa6, 0x1a, 0xe4, 0xfa, 0xe7, 0x3d, 0xd1, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_640 = { .name = "ecdsa_brainpoolp256r1_sha256_640", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_640_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_640_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_640_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 216 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 641 for ECDSA, tcId is 217 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_641_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_641_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_641_sig[] = { 0x7b, 0xaf, 0x1f, 0xde, 0x87, 0xcc, 0xb1, 0xbe, 0xa0, 0xf8, 0x93, 0xb3, 0xbf, 0xb2, 0x54, 0x9c, 0x04, 0xbc, 0xa1, 0x88, 0x35, 0xd8, 0xeb, 0x5a, 0x31, 0xb8, 0xd2, 0x05, 0x06, 0xff, 0x88, 0xc3, 0x28, 0x9e, 0xbe, 0x82, 0x9f, 0xef, 0xb9, 0xad, 0x00, 0x9d, 0x7c, 0xdd, 0x62, 0x28, 0x74, 0xae, 0xf5, 0xfa, 0x08, 0x8f, 0x05, 0x08, 0xa4, 0xb4, 0x3d, 0x58, 0x95, 0xd6, 0x16, 0x45, 0xce, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_641 = { .name = "ecdsa_brainpoolp256r1_sha256_641", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_641_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_641_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_641_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 217 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 642 for ECDSA, tcId is 218 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_642_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_642_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_642_sig[] = { 0x33, 0xe3, 0x7c, 0x3b, 0x66, 0xac, 0xab, 0xee, 0x3d, 0x68, 0xcb, 0xbb, 0x9c, 0x55, 0xcd, 0x52, 0xb5, 0x86, 0xde, 0x51, 0x64, 0x77, 0x23, 0xfa, 0x84, 0xe5, 0x32, 0xa3, 0xec, 0x59, 0x53, 0xef, 0x3b, 0x8a, 0x9e, 0xe7, 0x07, 0xd1, 0xbc, 0x5f, 0x83, 0xe1, 0x7e, 0xa0, 0x72, 0xad, 0xc2, 0xec, 0xda, 0x92, 0xe6, 0x37, 0xd7, 0xc0, 0x60, 0x60, 0xf1, 0xaf, 0x79, 0xb9, 0x29, 0xa8, 0x50, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_642 = { .name = "ecdsa_brainpoolp256r1_sha256_642", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_642_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_642_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_642_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 218 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 643 for ECDSA, tcId is 219 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_643_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_643_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_643_sig[] = { 0x1f, 0x8e, 0xbd, 0xc9, 0x4e, 0xcd, 0xdd, 0x84, 0xf9, 0x09, 0x60, 0xcc, 0x55, 0xd0, 0xca, 0x02, 0xe3, 0x3d, 0x70, 0x53, 0x5f, 0xc1, 0xc7, 0x32, 0x2b, 0x3c, 0x27, 0x83, 0xb9, 0xdc, 0x92, 0x38, 0x20, 0x5a, 0xa8, 0x62, 0x6c, 0x3a, 0x5d, 0xa2, 0x14, 0xe5, 0x48, 0x5b, 0x11, 0x15, 0x4a, 0x37, 0x8d, 0x70, 0xb0, 0xd3, 0x32, 0x3a, 0xb8, 0x68, 0x52, 0x8a, 0xe8, 0x04, 0x8d, 0x17, 0xb6, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_643 = { .name = "ecdsa_brainpoolp256r1_sha256_643", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_643_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_643_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_643_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 219 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 644 for ECDSA, tcId is 220 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_644_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_644_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_644_sig[] = { 0x6b, 0x0d, 0x70, 0xe0, 0x9b, 0xa1, 0x64, 0x2a, 0xda, 0xc0, 0x6d, 0xff, 0x9b, 0x52, 0xe2, 0x2a, 0x3e, 0x4a, 0xab, 0x41, 0x80, 0xe3, 0x72, 0x66, 0x56, 0x91, 0x41, 0x22, 0x41, 0xe7, 0x43, 0xa0, 0x4d, 0x7d, 0x30, 0xff, 0x8a, 0x21, 0x0d, 0xe6, 0x9e, 0x3e, 0x6d, 0x1e, 0xcf, 0x71, 0x75, 0xf8, 0x9f, 0x48, 0x1a, 0x4d, 0x9e, 0xd0, 0x6b, 0xea, 0xf7, 0x14, 0x8d, 0xa4, 0x7f, 0x4a, 0xf9, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_644 = { .name = "ecdsa_brainpoolp256r1_sha256_644", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_644_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_644_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_644_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 220 in file ecdsa_brainpoolP256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 645 for ECDSA, tcId is 1 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_645_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_645_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x42, 0x6e, 0x85, 0x7a, 0xad, 0x3f, 0xf7, 0xaa, 0x96, 0xe4, 0xd2, 0x00, 0xc0, 0x3b, 0x45, 0xf1, 0x84, 0x6a, 0x36, 0xd0, 0x89, 0xee, 0x39, 0x17, 0x76, 0x8c, 0xa1, 0xa0, 0xd6, 0xd4, 0xda, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_645 = { .name = "ecdsa_brainpoolp256r1_sha256_645", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_645_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_645_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_645_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 646 for ECDSA, tcId is 2 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_646_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_646_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_646 = { .name = "ecdsa_brainpoolp256r1_sha256_646", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_646_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_646_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_646_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 647 for ECDSA, tcId is 3 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_647_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_647_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_647 = { .name = "ecdsa_brainpoolp256r1_sha256_647", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_647_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_647_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_647_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 3 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 648 for ECDSA, tcId is 4 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_648_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_648_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_648 = { .name = "ecdsa_brainpoolp256r1_sha256_648", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_648_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_648_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_648_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 4 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 649 for ECDSA, tcId is 67 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_649_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_649_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_649 = { .name = "ecdsa_brainpoolp256r1_sha256_649", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_649_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_649_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_649_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 650 for ECDSA, tcId is 68 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_650_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_650_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_650 = { .name = "ecdsa_brainpoolp256r1_sha256_650", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_650_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_650_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_650_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 651 for ECDSA, tcId is 69 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_651_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_651_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_651 = { .name = "ecdsa_brainpoolp256r1_sha256_651", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_651_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_651_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_651_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 652 for ECDSA, tcId is 70 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_652_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_652_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_652 = { .name = "ecdsa_brainpoolp256r1_sha256_652", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_652_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_652_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_652_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 653 for ECDSA, tcId is 72 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_653_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_653_sig[] = { 0x00, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_653 = { .name = "ecdsa_brainpoolp256r1_sha256_653", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_653_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_653_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_653_sig, .siglen = 64, .result = -1, .comment = "wrong length of integer, tcId is 72 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 654 for ECDSA, tcId is 92 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_654_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_654_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_654 = { .name = "ecdsa_brainpoolp256r1_sha256_654", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_654_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_654_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_654_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 655 for ECDSA, tcId is 93 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_655_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_655_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_655 = { .name = "ecdsa_brainpoolp256r1_sha256_655", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_655_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_655_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_655_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 656 for ECDSA, tcId is 94 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_656_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_656_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_656 = { .name = "ecdsa_brainpoolp256r1_sha256_656", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_656_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_656_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_656_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 657 for ECDSA, tcId is 95 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_657_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_657_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_657 = { .name = "ecdsa_brainpoolp256r1_sha256_657", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_657_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_657_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_657_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 658 for ECDSA, tcId is 97 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_658_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_658_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x05, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_658 = { .name = "ecdsa_brainpoolp256r1_sha256_658", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_658_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_658_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_658_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 659 for ECDSA, tcId is 98 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_659_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_659_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_659 = { .name = "ecdsa_brainpoolp256r1_sha256_659", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_659_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_659_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_659_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 660 for ECDSA, tcId is 113 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_660_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_660_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_660 = { .name = "ecdsa_brainpoolp256r1_sha256_660", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_660_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_660_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_660_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 661 for ECDSA, tcId is 114 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_661_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_661_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_661 = { .name = "ecdsa_brainpoolp256r1_sha256_661", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_661_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_661_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_661_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 662 for ECDSA, tcId is 117 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_662_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_662_sig[] = { 0x08, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_662 = { .name = "ecdsa_brainpoolp256r1_sha256_662", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_662_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_662_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_662_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 663 for ECDSA, tcId is 118 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_663_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_663_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x65, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_663 = { .name = "ecdsa_brainpoolp256r1_sha256_663", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_663_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_663_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_663_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 664 for ECDSA, tcId is 119 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_664_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_664_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x9f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_664 = { .name = "ecdsa_brainpoolp256r1_sha256_664", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_664_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_664_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_664_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 665 for ECDSA, tcId is 120 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_665_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_665_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_665 = { .name = "ecdsa_brainpoolp256r1_sha256_665", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_665_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_665_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_665_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 666 for ECDSA, tcId is 121 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_666_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_666_sig[] = { 0x00, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_666 = { .name = "ecdsa_brainpoolp256r1_sha256_666", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_666_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_666_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_666_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 667 for ECDSA, tcId is 122 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_667_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_667_sig[] = { 0x00, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_667 = { .name = "ecdsa_brainpoolp256r1_sha256_667", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_667_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_667_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_667_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 668 for ECDSA, tcId is 123 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_668_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_668_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_668 = { .name = "ecdsa_brainpoolp256r1_sha256_668", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_668_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_668_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_668_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 669 for ECDSA, tcId is 124 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_669_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_669_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_669 = { .name = "ecdsa_brainpoolp256r1_sha256_669", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_669_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_669_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_669_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 670 for ECDSA, tcId is 125 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_670_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_670_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_670 = { .name = "ecdsa_brainpoolp256r1_sha256_670", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_670_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_670_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_670_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 671 for ECDSA, tcId is 126 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_671_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_671_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_671 = { .name = "ecdsa_brainpoolp256r1_sha256_671", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_671_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_671_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_671_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_brainpoolP256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 672 for ECDSA, tcId is 129 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_672_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_672_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_672 = { .name = "ecdsa_brainpoolp256r1_sha256_672", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_672_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_672_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_672_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 673 for ECDSA, tcId is 130 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_673_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_673_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_673 = { .name = "ecdsa_brainpoolp256r1_sha256_673", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_673_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_673_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_673_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 674 for ECDSA, tcId is 131 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_674_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_674_sig[] = { 0xb4, 0x5a, 0xe4, 0x4c, 0x5c, 0x1b, 0xb1, 0xff, 0x14, 0x37, 0x02, 0xd2, 0x8e, 0xe4, 0x3a, 0x86, 0xa5, 0x90, 0xe4, 0x4b, 0xca, 0xfd, 0xa5, 0x60, 0xb6, 0x52, 0xe5, 0xbf, 0xdd, 0xe5, 0x67, 0xc6, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_674 = { .name = "ecdsa_brainpoolp256r1_sha256_674", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_674_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_674_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_674_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 675 for ECDSA, tcId is 132 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_675_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_675_sig[] = { 0x60, 0x64, 0x34, 0x95, 0x18, 0x3e, 0x5e, 0x86, 0x97, 0x6a, 0xed, 0xb1, 0x53, 0xdd, 0x1f, 0xa3, 0x8d, 0x1d, 0xef, 0x04, 0x60, 0x3a, 0x57, 0x71, 0x96, 0x16, 0xc8, 0xba, 0xaf, 0x54, 0xba, 0x78, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_675 = { .name = "ecdsa_brainpoolp256r1_sha256_675", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_675_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_675_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_675_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 676 for ECDSA, tcId is 133 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_676_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_676_sig[] = { 0xf5, 0xa0, 0x73, 0x8f, 0x45, 0xd2, 0xf7, 0xbd, 0x2a, 0x2f, 0x07, 0xbe, 0x0e, 0x9f, 0x52, 0xea, 0xe6, 0xa8, 0x96, 0x57, 0xea, 0x64, 0x01, 0x96, 0xd9, 0xcb, 0x28, 0xc2, 0xb9, 0x62, 0xee, 0xe1, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_676 = { .name = "ecdsa_brainpoolp256r1_sha256_676", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_676_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_676_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_676_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 677 for ECDSA, tcId is 134 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_677_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_677_sig[] = { 0x9f, 0x9b, 0xcb, 0x6a, 0xe7, 0xc1, 0xa1, 0x79, 0x68, 0x95, 0x12, 0x4e, 0xac, 0x22, 0xe0, 0x5c, 0x72, 0xe2, 0x10, 0xfb, 0x9f, 0xc5, 0xa8, 0x8e, 0x69, 0xe9, 0x37, 0x45, 0x50, 0xab, 0x45, 0x88, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_677 = { .name = "ecdsa_brainpoolp256r1_sha256_677", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_677_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_677_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_677_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 678 for ECDSA, tcId is 135 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_678_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_678_sig[] = { 0x4b, 0xa5, 0x1b, 0xb3, 0xa3, 0xe4, 0x4e, 0x00, 0xeb, 0xc8, 0xfd, 0x2d, 0x71, 0x1b, 0xc5, 0x79, 0x5a, 0x6f, 0x1b, 0xb4, 0x35, 0x02, 0x5a, 0x9f, 0x49, 0xad, 0x1a, 0x40, 0x22, 0x1a, 0x98, 0x3a, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_678 = { .name = "ecdsa_brainpoolp256r1_sha256_678", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_678_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_678_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_678_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 679 for ECDSA, tcId is 136 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_679_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_679_sig[] = { 0x01, 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_679 = { .name = "ecdsa_brainpoolp256r1_sha256_679", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_679_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_679_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_679_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 680 for ECDSA, tcId is 137 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_680_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_680_sig[] = { 0xf5, 0xa0, 0x73, 0x8f, 0x45, 0xd2, 0xf7, 0xbd, 0x2a, 0x2f, 0x07, 0xbe, 0x0e, 0x9f, 0x52, 0xea, 0xe6, 0xa8, 0x96, 0x57, 0xea, 0x64, 0x01, 0x96, 0xd9, 0xcb, 0x28, 0xc2, 0xb9, 0x62, 0xee, 0xe1, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_680 = { .name = "ecdsa_brainpoolp256r1_sha256_680", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_680_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_680_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_680_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 681 for ECDSA, tcId is 138 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_681_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_681_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x01, 0x11, 0x88, 0x2a, 0x3c, 0x96, 0x9d, 0x5b, 0xcd, 0xe5, 0xe7, 0x43, 0x20, 0x7a, 0xcb, 0xd4, 0xf1, 0x94, 0x08, 0xbe, 0x76, 0xe0, 0xd5, 0x14, 0xd7, 0xa9, 0xaf, 0x7b, 0x64, 0x57, 0xbb, 0xd2, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_681 = { .name = "ecdsa_brainpoolp256r1_sha256_681", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_681_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_681_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_681_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 682 for ECDSA, tcId is 139 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_682_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_682_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0xbd, 0x91, 0x7a, 0x85, 0x52, 0xc0, 0x08, 0x55, 0x69, 0x1b, 0x2d, 0xff, 0x3f, 0xc4, 0xba, 0x0e, 0x7b, 0x95, 0xc9, 0x2f, 0x76, 0x11, 0xc6, 0xe8, 0x89, 0x73, 0x5e, 0x5f, 0x29, 0x2b, 0x25, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_682 = { .name = "ecdsa_brainpoolp256r1_sha256_682", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_682_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_682_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_682_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 683 for ECDSA, tcId is 140 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_683_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_683_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x98, 0x73, 0x2d, 0x9f, 0x0b, 0x51, 0x4d, 0xee, 0x58, 0x7e, 0xc7, 0x70, 0x22, 0xb7, 0xb8, 0x7f, 0xf8, 0x30, 0xbc, 0x2c, 0xd4, 0x8c, 0x92, 0x1f, 0xe6, 0x6e, 0x93, 0x1e, 0x3f, 0x8c, 0x83, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_683 = { .name = "ecdsa_brainpoolp256r1_sha256_683", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_683_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_683_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_683_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 684 for ECDSA, tcId is 141 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_684_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_684_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0xfe, 0xee, 0x77, 0xd5, 0xc3, 0x69, 0x62, 0xa4, 0x32, 0x1a, 0x18, 0xbc, 0xdf, 0x85, 0x34, 0x2b, 0x0e, 0x6b, 0xf7, 0x41, 0x89, 0x1f, 0x2a, 0xeb, 0x28, 0x56, 0x50, 0x84, 0x9b, 0xa8, 0x44, 0x2d, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_684 = { .name = "ecdsa_brainpoolp256r1_sha256_684", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_684_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_684_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_684_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 685 for ECDSA, tcId is 142 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_685_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_685_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x01, 0x67, 0x8c, 0xd2, 0x60, 0xf4, 0xae, 0xb2, 0x11, 0xa7, 0x81, 0x38, 0x8f, 0xdd, 0x48, 0x47, 0x80, 0x07, 0xcf, 0x43, 0xd3, 0x2b, 0x73, 0x6d, 0xe0, 0x19, 0x91, 0x6c, 0xe1, 0xc0, 0x73, 0x7c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_685 = { .name = "ecdsa_brainpoolp256r1_sha256_685", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_685_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_685_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_685_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 686 for ECDSA, tcId is 143 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_686_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_686_sig[] = { 0x0a, 0x5f, 0x8c, 0x70, 0xba, 0x2d, 0x08, 0x42, 0xd5, 0xd0, 0xf8, 0x41, 0xf1, 0x60, 0xad, 0x15, 0x19, 0x57, 0x69, 0xa8, 0x15, 0x9b, 0xfe, 0x69, 0x26, 0x34, 0xd7, 0x3d, 0x46, 0x9d, 0x11, 0x1f, 0x98, 0x73, 0x2d, 0x9f, 0x0b, 0x51, 0x4d, 0xee, 0x58, 0x7e, 0xc7, 0x70, 0x22, 0xb7, 0xb8, 0x7f, 0xf8, 0x30, 0xbc, 0x2c, 0xd4, 0x8c, 0x92, 0x1f, 0xe6, 0x6e, 0x93, 0x1e, 0x3f, 0x8c, 0x83, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_686 = { .name = "ecdsa_brainpoolp256r1_sha256_686", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_686_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_686_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_686_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 687 for ECDSA, tcId is 144 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_687_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_687_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_687 = { .name = "ecdsa_brainpoolp256r1_sha256_687", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_687_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_687_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_687_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 688 for ECDSA, tcId is 145 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_688_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_688_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_688 = { .name = "ecdsa_brainpoolp256r1_sha256_688", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_688_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_688_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_688_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 689 for ECDSA, tcId is 146 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_689_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_689_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_689 = { .name = "ecdsa_brainpoolp256r1_sha256_689", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_689_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_689_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_689_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 690 for ECDSA, tcId is 147 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_690_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_690_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_690 = { .name = "ecdsa_brainpoolp256r1_sha256_690", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_690_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_690_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_690_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 691 for ECDSA, tcId is 148 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_691_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_691_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_691 = { .name = "ecdsa_brainpoolp256r1_sha256_691", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_691_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_691_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_691_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 692 for ECDSA, tcId is 149 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_692_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_692_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_692 = { .name = "ecdsa_brainpoolp256r1_sha256_692", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_692_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_692_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_692_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 693 for ECDSA, tcId is 150 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_693_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_693_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_693 = { .name = "ecdsa_brainpoolp256r1_sha256_693", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_693_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_693_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_693_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 694 for ECDSA, tcId is 151 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_694_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_694_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_694 = { .name = "ecdsa_brainpoolp256r1_sha256_694", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_694_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_694_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_694_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 695 for ECDSA, tcId is 154 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_695_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_695_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_695 = { .name = "ecdsa_brainpoolp256r1_sha256_695", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_695_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_695_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_695_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 696 for ECDSA, tcId is 155 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_696_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_696_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_696 = { .name = "ecdsa_brainpoolp256r1_sha256_696", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_696_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_696_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_696_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 697 for ECDSA, tcId is 156 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_697_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_697_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_697 = { .name = "ecdsa_brainpoolp256r1_sha256_697", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_697_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_697_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_697_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 698 for ECDSA, tcId is 157 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_698_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_698_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_698 = { .name = "ecdsa_brainpoolp256r1_sha256_698", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_698_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_698_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_698_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 699 for ECDSA, tcId is 158 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_699_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_699_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_699 = { .name = "ecdsa_brainpoolp256r1_sha256_699", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_699_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_699_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_699_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 700 for ECDSA, tcId is 159 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_700_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_700_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_700 = { .name = "ecdsa_brainpoolp256r1_sha256_700", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_700_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_700_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_700_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 701 for ECDSA, tcId is 160 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_701_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_701_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_701 = { .name = "ecdsa_brainpoolp256r1_sha256_701", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_701_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_701_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_701_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 702 for ECDSA, tcId is 161 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_702_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_702_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_702 = { .name = "ecdsa_brainpoolp256r1_sha256_702", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_702_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_702_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_702_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 703 for ECDSA, tcId is 164 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_703_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_703_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_703 = { .name = "ecdsa_brainpoolp256r1_sha256_703", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_703_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_703_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_703_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 704 for ECDSA, tcId is 165 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_704_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_704_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_704 = { .name = "ecdsa_brainpoolp256r1_sha256_704", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_704_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_704_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_704_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 705 for ECDSA, tcId is 166 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_705_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_705_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_705 = { .name = "ecdsa_brainpoolp256r1_sha256_705", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_705_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_705_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_705_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 706 for ECDSA, tcId is 167 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_706_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_706_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_706 = { .name = "ecdsa_brainpoolp256r1_sha256_706", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_706_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_706_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_706_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 707 for ECDSA, tcId is 168 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_707_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_707_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_707 = { .name = "ecdsa_brainpoolp256r1_sha256_707", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_707_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_707_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_707_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 708 for ECDSA, tcId is 169 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_708_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_708_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_708 = { .name = "ecdsa_brainpoolp256r1_sha256_708", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_708_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_708_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_708_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 709 for ECDSA, tcId is 170 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_709_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_709_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_709 = { .name = "ecdsa_brainpoolp256r1_sha256_709", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_709_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_709_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_709_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 710 for ECDSA, tcId is 171 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_710_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_710_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_710 = { .name = "ecdsa_brainpoolp256r1_sha256_710", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_710_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_710_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_710_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 711 for ECDSA, tcId is 174 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_711_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_711_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_711 = { .name = "ecdsa_brainpoolp256r1_sha256_711", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_711_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_711_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_711_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 712 for ECDSA, tcId is 175 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_712_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_712_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_712 = { .name = "ecdsa_brainpoolp256r1_sha256_712", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_712_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_712_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_712_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 713 for ECDSA, tcId is 176 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_713_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_713_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_713 = { .name = "ecdsa_brainpoolp256r1_sha256_713", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_713_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_713_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_713_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 714 for ECDSA, tcId is 177 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_714_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_714_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_714 = { .name = "ecdsa_brainpoolp256r1_sha256_714", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_714_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_714_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_714_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 715 for ECDSA, tcId is 178 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_715_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_715_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_715 = { .name = "ecdsa_brainpoolp256r1_sha256_715", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_715_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_715_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_715_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 716 for ECDSA, tcId is 179 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_716_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_716_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_716 = { .name = "ecdsa_brainpoolp256r1_sha256_716", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_716_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_716_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_716_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 717 for ECDSA, tcId is 180 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_717_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_717_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_717 = { .name = "ecdsa_brainpoolp256r1_sha256_717", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_717_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_717_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_717_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 718 for ECDSA, tcId is 181 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_718_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_718_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_718 = { .name = "ecdsa_brainpoolp256r1_sha256_718", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_718_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_718_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_718_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 719 for ECDSA, tcId is 184 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_719_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_719_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_719 = { .name = "ecdsa_brainpoolp256r1_sha256_719", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_719_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_719_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_719_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 720 for ECDSA, tcId is 185 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_720_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_720_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_720 = { .name = "ecdsa_brainpoolp256r1_sha256_720", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_720_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_720_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_720_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 721 for ECDSA, tcId is 186 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_721_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_721_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_721 = { .name = "ecdsa_brainpoolp256r1_sha256_721", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_721_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_721_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_721_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 722 for ECDSA, tcId is 187 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_722_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_722_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_722 = { .name = "ecdsa_brainpoolp256r1_sha256_722", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_722_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_722_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_722_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 723 for ECDSA, tcId is 188 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_723_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_723_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_723 = { .name = "ecdsa_brainpoolp256r1_sha256_723", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_723_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_723_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_723_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 724 for ECDSA, tcId is 189 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_724_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_724_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_724 = { .name = "ecdsa_brainpoolp256r1_sha256_724", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_724_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_724_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_724_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 725 for ECDSA, tcId is 190 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_725_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_725_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_725 = { .name = "ecdsa_brainpoolp256r1_sha256_725", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_725_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_725_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_725_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 726 for ECDSA, tcId is 191 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_726_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_726_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_726 = { .name = "ecdsa_brainpoolp256r1_sha256_726", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_726_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_726_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_726_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 727 for ECDSA, tcId is 194 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_727_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_727_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_727 = { .name = "ecdsa_brainpoolp256r1_sha256_727", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_727_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_727_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_727_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 728 for ECDSA, tcId is 195 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_728_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_728_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_728 = { .name = "ecdsa_brainpoolp256r1_sha256_728", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_728_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_728_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_728_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 729 for ECDSA, tcId is 196 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_729_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_729_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_729 = { .name = "ecdsa_brainpoolp256r1_sha256_729", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_729_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_729_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_729_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 730 for ECDSA, tcId is 197 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_730_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_730_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_730 = { .name = "ecdsa_brainpoolp256r1_sha256_730", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_730_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_730_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_730_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 731 for ECDSA, tcId is 198 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_731_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_731_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_731 = { .name = "ecdsa_brainpoolp256r1_sha256_731", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_731_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_731_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_731_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 732 for ECDSA, tcId is 199 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_732_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_732_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_732 = { .name = "ecdsa_brainpoolp256r1_sha256_732", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_732_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_732_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_732_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 733 for ECDSA, tcId is 200 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_733_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_733_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_733 = { .name = "ecdsa_brainpoolp256r1_sha256_733", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_733_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_733_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_733_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 734 for ECDSA, tcId is 201 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_734_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_734_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_734 = { .name = "ecdsa_brainpoolp256r1_sha256_734", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_734_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_734_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_734_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 735 for ECDSA, tcId is 204 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_735_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_735_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_735 = { .name = "ecdsa_brainpoolp256r1_sha256_735", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_735_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_735_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_735_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 736 for ECDSA, tcId is 205 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_736_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_736_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_736_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_736 = { .name = "ecdsa_brainpoolp256r1_sha256_736", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_736_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_736_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_736_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 737 for ECDSA, tcId is 206 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_737_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_737_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_737 = { .name = "ecdsa_brainpoolp256r1_sha256_737", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_737_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_737_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_737_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 738 for ECDSA, tcId is 207 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_738_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_738_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_738 = { .name = "ecdsa_brainpoolp256r1_sha256_738", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_738_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_738_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_738_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 739 for ECDSA, tcId is 208 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_739_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_739_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_739 = { .name = "ecdsa_brainpoolp256r1_sha256_739", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_739_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_739_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_739_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 740 for ECDSA, tcId is 209 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_740_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_740_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_740 = { .name = "ecdsa_brainpoolp256r1_sha256_740", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_740_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_740_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_740_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 741 for ECDSA, tcId is 210 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_741_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_741_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_741 = { .name = "ecdsa_brainpoolp256r1_sha256_741", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_741_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_741_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_741_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 742 for ECDSA, tcId is 211 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_742_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_742_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_742 = { .name = "ecdsa_brainpoolp256r1_sha256_742", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_742_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_742_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_742_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 743 for ECDSA, tcId is 214 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_743_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_743_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_743 = { .name = "ecdsa_brainpoolp256r1_sha256_743", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_743_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_743_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_743_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 744 for ECDSA, tcId is 215 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_744_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_744_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_744 = { .name = "ecdsa_brainpoolp256r1_sha256_744", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_744_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_744_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_744_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 745 for ECDSA, tcId is 216 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_745_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_745_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_745 = { .name = "ecdsa_brainpoolp256r1_sha256_745", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_745_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_745_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_745_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 746 for ECDSA, tcId is 217 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_746_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_746_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_746 = { .name = "ecdsa_brainpoolp256r1_sha256_746", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_746_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_746_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_746_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 747 for ECDSA, tcId is 218 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_747_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_747_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_747 = { .name = "ecdsa_brainpoolp256r1_sha256_747", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_747_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_747_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_747_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 748 for ECDSA, tcId is 219 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_748_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_748_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_748 = { .name = "ecdsa_brainpoolp256r1_sha256_748", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_748_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_748_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_748_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 749 for ECDSA, tcId is 220 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_749_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_749_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_749 = { .name = "ecdsa_brainpoolp256r1_sha256_749", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_749_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_749_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_749_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 750 for ECDSA, tcId is 221 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_750_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_750_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_750 = { .name = "ecdsa_brainpoolp256r1_sha256_750", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_750_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_750_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_750_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 751 for ECDSA, tcId is 230 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_751_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_751_msg[] = { 0x36, 0x38, 0x39, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_751_sig[] = { 0x0c, 0x93, 0x9a, 0x92, 0x48, 0x6c, 0x6d, 0x0d, 0x61, 0x95, 0x10, 0xb4, 0xa9, 0x41, 0x62, 0xb9, 0x22, 0x1b, 0xe2, 0xeb, 0x15, 0xfa, 0xf8, 0x78, 0xbf, 0xf7, 0x5e, 0x6c, 0xdf, 0x4e, 0x37, 0x07, 0x39, 0x77, 0x61, 0x9b, 0x43, 0xe6, 0xb4, 0xea, 0x18, 0x70, 0xd8, 0x61, 0x20, 0x64, 0x83, 0xb3, 0x06, 0x56, 0x0e, 0x3c, 0x4a, 0x3e, 0xf8, 0x2b, 0x11, 0xa8, 0x02, 0xff, 0x88, 0x92, 0xdc, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_751 = { .name = "ecdsa_brainpoolp256r1_sha256_751", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_751_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_751_msg, .msglen = 5, .sig = ecdsa_brainpoolp256r1_sha256_751_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 752 for ECDSA, tcId is 231 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_752_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_752_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_752_sig[] = { 0x55, 0x83, 0xdd, 0x48, 0x09, 0x64, 0xbd, 0x23, 0x32, 0x88, 0x5f, 0xbb, 0x50, 0xb7, 0x47, 0x5e, 0xbd, 0x42, 0x83, 0x99, 0xe7, 0x16, 0x6f, 0xd9, 0xbd, 0x52, 0x96, 0x11, 0x53, 0x4b, 0x9f, 0x34, 0x0e, 0xd0, 0x35, 0xa0, 0x2c, 0x4b, 0x66, 0x5c, 0xac, 0xb7, 0x0d, 0xe8, 0xe8, 0x22, 0xfa, 0xcd, 0x71, 0x64, 0x5a, 0x15, 0xf9, 0x3f, 0xee, 0x66, 0x13, 0x24, 0xf8, 0x50, 0xb8, 0x47, 0xb5, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_752 = { .name = "ecdsa_brainpoolp256r1_sha256_752", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_752_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_752_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_752_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 753 for ECDSA, tcId is 232 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_753_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_753_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_753_sig[] = { 0x30, 0x0e, 0x26, 0x02, 0x7c, 0xe7, 0xd3, 0xf2, 0x1c, 0x85, 0x71, 0xdc, 0x69, 0x0b, 0x1b, 0xb9, 0x90, 0xe8, 0xfc, 0x49, 0xad, 0x3e, 0x95, 0x37, 0x4b, 0xd5, 0x43, 0xb2, 0xe2, 0x2b, 0xad, 0xc6, 0x22, 0xbc, 0x8f, 0x24, 0x45, 0xcd, 0x49, 0x56, 0xbc, 0x0d, 0xb5, 0x53, 0x96, 0x6a, 0x07, 0x18, 0xae, 0xb5, 0xea, 0xd6, 0x5b, 0xc6, 0x6d, 0xdb, 0x21, 0xfe, 0xa0, 0xe5, 0x71, 0xa8, 0x7e, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_753 = { .name = "ecdsa_brainpoolp256r1_sha256_753", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_753_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_753_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_753_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 754 for ECDSA, tcId is 233 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_754_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_754_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_754_sig[] = { 0x29, 0x07, 0xcb, 0x01, 0xa8, 0x2a, 0x88, 0x04, 0x66, 0x40, 0xa5, 0x23, 0xf9, 0xb9, 0x85, 0x4d, 0x95, 0xb7, 0xec, 0x2d, 0xdd, 0x67, 0xc2, 0x07, 0x23, 0xd0, 0x58, 0x29, 0xe8, 0x43, 0x8a, 0x77, 0x38, 0xca, 0x08, 0xe5, 0x86, 0x23, 0x56, 0x0f, 0x72, 0x4a, 0x3e, 0x3f, 0x9b, 0xa0, 0xe9, 0xec, 0x79, 0x74, 0x97, 0x6d, 0xd3, 0x4e, 0x69, 0x40, 0xc0, 0xfe, 0x61, 0x68, 0xd5, 0x40, 0xe3, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_754 = { .name = "ecdsa_brainpoolp256r1_sha256_754", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_754_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_754_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_754_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 755 for ECDSA, tcId is 234 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_755_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_755_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_755_sig[] = { 0x0c, 0x35, 0x84, 0x0f, 0x7b, 0x73, 0x19, 0xf1, 0x9f, 0xd7, 0x2f, 0x29, 0xfe, 0xa4, 0xcf, 0x93, 0x7a, 0xba, 0x2c, 0x3f, 0xe1, 0xdc, 0x01, 0xae, 0xc6, 0x3c, 0x21, 0x09, 0x4c, 0x5d, 0x35, 0x48, 0x7b, 0xf6, 0x99, 0x86, 0x8c, 0x2b, 0x69, 0x45, 0x47, 0xae, 0xbe, 0x9b, 0x98, 0xc0, 0x1c, 0x5e, 0xfb, 0xe9, 0x82, 0xa8, 0x41, 0x50, 0x39, 0x08, 0x94, 0x56, 0x3d, 0x4e, 0x2c, 0xb2, 0x40, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_755 = { .name = "ecdsa_brainpoolp256r1_sha256_755", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_755_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_755_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_755_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 756 for ECDSA, tcId is 235 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_756_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_756_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_756_sig[] = { 0x42, 0x72, 0xff, 0x20, 0xb8, 0xc3, 0xd1, 0x9e, 0x8c, 0x84, 0x14, 0x1f, 0xbe, 0x4d, 0x16, 0x81, 0xfa, 0x71, 0xb5, 0x1f, 0x6c, 0x10, 0x36, 0x0d, 0xb7, 0xaf, 0xfa, 0xc9, 0x89, 0x27, 0x4d, 0x23, 0x67, 0x72, 0xff, 0x76, 0x8e, 0xe6, 0xa3, 0xed, 0xaf, 0x0d, 0xbd, 0xd7, 0xb5, 0xc6, 0x96, 0x2c, 0x2a, 0xcc, 0x8c, 0xb1, 0x4e, 0x63, 0x47, 0x63, 0x1e, 0x25, 0x94, 0x01, 0x89, 0x72, 0x94, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_756 = { .name = "ecdsa_brainpoolp256r1_sha256_756", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_756_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_756_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_756_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 757 for ECDSA, tcId is 236 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_757_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_757_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_757_sig[] = { 0x0a, 0x1e, 0x07, 0x2c, 0x48, 0xa6, 0x2a, 0x58, 0x3b, 0xf9, 0x4f, 0xe6, 0x38, 0x09, 0xe9, 0x5f, 0x32, 0x02, 0x17, 0x6b, 0xfa, 0x6d, 0x28, 0xde, 0x8f, 0x75, 0xa4, 0xa3, 0x25, 0x6c, 0xa2, 0x1f, 0x95, 0x14, 0xa6, 0xe5, 0xb2, 0x35, 0xc2, 0x91, 0x52, 0x56, 0x1c, 0xc9, 0x49, 0x2c, 0xf4, 0x74, 0x77, 0xa0, 0xfe, 0x23, 0xf5, 0x60, 0x40, 0xd7, 0x20, 0x6b, 0xfb, 0x4e, 0xb3, 0xe1, 0x87, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_757 = { .name = "ecdsa_brainpoolp256r1_sha256_757", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_757_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_757_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_757_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 758 for ECDSA, tcId is 237 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_758_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_758_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_758_sig[] = { 0x02, 0xbc, 0xbd, 0x38, 0xa3, 0xe3, 0x11, 0x34, 0x45, 0xad, 0x2e, 0xe4, 0x2f, 0xae, 0xae, 0xe9, 0xfe, 0xd0, 0x02, 0x77, 0xe0, 0xb1, 0x55, 0x21, 0x32, 0x9f, 0x4c, 0x27, 0xc9, 0x63, 0xaf, 0x01, 0x06, 0xcf, 0x39, 0x9d, 0xeb, 0x1f, 0x6f, 0xd6, 0x92, 0x07, 0x5d, 0x23, 0x62, 0x72, 0xb9, 0x9c, 0x33, 0x36, 0xae, 0xa2, 0xcf, 0xac, 0x34, 0xd9, 0x04, 0x64, 0x6c, 0xc1, 0xda, 0xf5, 0x4d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_758 = { .name = "ecdsa_brainpoolp256r1_sha256_758", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_758_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_758_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_758_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 759 for ECDSA, tcId is 238 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_759_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_759_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_759_sig[] = { 0x62, 0xf3, 0xa6, 0xa9, 0xc9, 0xf4, 0x57, 0x21, 0x1b, 0x46, 0xb1, 0xca, 0x3a, 0x78, 0x2f, 0x11, 0xf4, 0x4c, 0xb9, 0x36, 0x0b, 0xb3, 0x07, 0x02, 0xe6, 0x71, 0x36, 0x03, 0x6c, 0xcb, 0xa3, 0x9e, 0x22, 0xf0, 0x2e, 0x5f, 0x64, 0x7c, 0xeb, 0x3d, 0x0c, 0x49, 0xf2, 0xe7, 0xac, 0x9b, 0xbb, 0x31, 0xb7, 0xe3, 0xae, 0x29, 0xa5, 0xed, 0x67, 0x0c, 0x96, 0xca, 0xd6, 0xd0, 0xf4, 0x5d, 0xf3, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_759 = { .name = "ecdsa_brainpoolp256r1_sha256_759", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_759_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_759_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_759_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 760 for ECDSA, tcId is 239 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_760_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_760_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_760_sig[] = { 0x23, 0xd6, 0x79, 0xae, 0xd9, 0x06, 0x6b, 0x61, 0x18, 0x20, 0xa8, 0xe0, 0x2b, 0x3d, 0xaa, 0x92, 0x2b, 0x10, 0xd5, 0x59, 0x6c, 0x8c, 0xeb, 0x7b, 0xd4, 0xe4, 0xfc, 0xd6, 0xe5, 0xe1, 0xdc, 0xa7, 0x96, 0x26, 0xe1, 0xd2, 0x20, 0x5d, 0x60, 0xe3, 0x9b, 0x63, 0x38, 0x52, 0xf6, 0x23, 0xf0, 0xf8, 0xb3, 0x5e, 0x44, 0x79, 0x7e, 0x08, 0xc6, 0xfa, 0xd1, 0x96, 0xc3, 0x3b, 0xe6, 0x9b, 0x5a, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_760 = { .name = "ecdsa_brainpoolp256r1_sha256_760", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_760_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_760_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_760_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 761 for ECDSA, tcId is 240 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_761_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_761_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_761_sig[] = { 0x0e, 0x4c, 0x5c, 0x07, 0x7f, 0x14, 0xa4, 0xdb, 0x19, 0x76, 0x54, 0xf8, 0x08, 0x1f, 0x10, 0xac, 0x22, 0x29, 0xe6, 0xf2, 0x08, 0x44, 0x05, 0xae, 0xa5, 0x25, 0x67, 0x9e, 0x59, 0x25, 0x39, 0xa9, 0x13, 0x55, 0xd4, 0x36, 0x67, 0x40, 0x2b, 0x9f, 0x01, 0x95, 0x91, 0x40, 0xc4, 0x14, 0xf1, 0x8d, 0x90, 0x8e, 0x25, 0x59, 0xe5, 0x7a, 0xdf, 0x35, 0xce, 0x79, 0x4d, 0xbc, 0x8e, 0x22, 0x20, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_761 = { .name = "ecdsa_brainpoolp256r1_sha256_761", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_761_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_761_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_761_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 762 for ECDSA, tcId is 241 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_762_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_762_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_762_sig[] = { 0x32, 0x46, 0xb3, 0x39, 0x54, 0xcf, 0x1d, 0xd4, 0xa2, 0x16, 0x21, 0x8d, 0x49, 0xb1, 0x4e, 0x39, 0xdb, 0x82, 0x00, 0x4b, 0xa0, 0x55, 0x6f, 0xb5, 0x91, 0x35, 0x7a, 0xff, 0x76, 0xa1, 0xea, 0x63, 0x5b, 0x5f, 0xcb, 0x72, 0x6e, 0xbf, 0x18, 0xc9, 0x15, 0x1a, 0x26, 0xa5, 0xb0, 0x80, 0x0c, 0xbf, 0x95, 0xb5, 0xed, 0xc0, 0x84, 0xb4, 0x2d, 0xc6, 0xdc, 0x7f, 0xbb, 0x9a, 0x0a, 0xed, 0x84, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_762 = { .name = "ecdsa_brainpoolp256r1_sha256_762", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_762_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_762_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_762_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 763 for ECDSA, tcId is 242 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_763_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_763_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_763_sig[] = { 0x36, 0x1a, 0x8d, 0xef, 0x87, 0x40, 0x57, 0xc7, 0x15, 0x42, 0x38, 0x43, 0xbd, 0x7b, 0xf0, 0x77, 0x5b, 0xa6, 0x36, 0x6f, 0xa4, 0x8c, 0xa8, 0x3e, 0x1c, 0xdc, 0xe2, 0x06, 0xbf, 0x94, 0xc2, 0xbf, 0x36, 0x5e, 0x97, 0x49, 0x3d, 0x33, 0x82, 0x68, 0x1f, 0x1d, 0x94, 0x65, 0x7e, 0x98, 0x88, 0x24, 0x5c, 0x9b, 0x07, 0x62, 0xee, 0x7f, 0x4c, 0xa0, 0x2e, 0x73, 0x8a, 0xfd, 0xbb, 0xa2, 0x74, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_763 = { .name = "ecdsa_brainpoolp256r1_sha256_763", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_763_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_763_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_763_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 764 for ECDSA, tcId is 243 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_764_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_764_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_764_sig[] = { 0x2c, 0x5f, 0x51, 0xbc, 0x91, 0x96, 0x9f, 0xd5, 0xb8, 0x04, 0xe7, 0x51, 0x32, 0x3f, 0xc8, 0x02, 0x94, 0xb0, 0xb5, 0xb1, 0xe2, 0x0e, 0x19, 0x5e, 0xc9, 0xbd, 0xc6, 0xa7, 0x80, 0x6d, 0xa1, 0x3f, 0x4c, 0x24, 0x6c, 0x94, 0x9b, 0xce, 0x43, 0xd3, 0x03, 0x20, 0x1f, 0xa0, 0xd9, 0x89, 0xe7, 0x06, 0x74, 0x76, 0x65, 0x55, 0xe8, 0xd3, 0xa9, 0x9c, 0x26, 0xba, 0xbb, 0x65, 0x8d, 0x1f, 0x7d, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_764 = { .name = "ecdsa_brainpoolp256r1_sha256_764", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_764_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_764_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_764_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 765 for ECDSA, tcId is 244 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_765_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_765_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_765_sig[] = { 0xa9, 0xe3, 0xf1, 0xe8, 0x31, 0x08, 0xbe, 0x78, 0x66, 0x8d, 0x4b, 0xac, 0x7f, 0xfb, 0x29, 0x18, 0xd3, 0x81, 0x00, 0xba, 0x01, 0xf3, 0x7d, 0xe5, 0xb9, 0x23, 0xee, 0xca, 0x07, 0xcc, 0x05, 0xe3, 0x3f, 0x0d, 0x81, 0xbc, 0xc0, 0x88, 0x02, 0xa4, 0x35, 0x59, 0x97, 0x59, 0xf5, 0x1c, 0x89, 0xf8, 0x16, 0x74, 0x27, 0x10, 0x88, 0x5b, 0x41, 0x37, 0x75, 0x81, 0x30, 0xe8, 0xac, 0xf7, 0x07, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_765 = { .name = "ecdsa_brainpoolp256r1_sha256_765", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_765_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_765_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_765_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 766 for ECDSA, tcId is 245 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_766_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_766_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_766_sig[] = { 0x95, 0x9e, 0x98, 0x11, 0xbb, 0x18, 0xb4, 0x86, 0x5f, 0xde, 0x6d, 0x5f, 0x9c, 0x24, 0x6d, 0x67, 0xe4, 0x8d, 0x7a, 0x5c, 0x7c, 0xe4, 0x6d, 0x7a, 0xfb, 0x6f, 0x5e, 0xc0, 0xb2, 0x6d, 0x50, 0x60, 0x00, 0x91, 0xa0, 0x97, 0x61, 0x8f, 0x25, 0x17, 0xad, 0x6d, 0xcf, 0x49, 0xbc, 0xc2, 0x08, 0xe9, 0x4c, 0xb8, 0x1a, 0xf8, 0x7f, 0x65, 0xb7, 0x88, 0x05, 0x80, 0xf9, 0x98, 0x58, 0xa9, 0xa9, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_766 = { .name = "ecdsa_brainpoolp256r1_sha256_766", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_766_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_766_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_766_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 767 for ECDSA, tcId is 246 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_767_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_767_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_767_sig[] = { 0x4f, 0x92, 0x31, 0xb1, 0xcb, 0xae, 0xa1, 0x83, 0xed, 0x9d, 0x85, 0x91, 0xae, 0x3e, 0x9f, 0x04, 0x39, 0x20, 0x1e, 0x10, 0x67, 0xff, 0x00, 0x53, 0x5a, 0x41, 0x53, 0x96, 0xb7, 0x78, 0x11, 0xd6, 0x98, 0x51, 0xc7, 0x99, 0xa3, 0x11, 0xab, 0xae, 0xfa, 0x08, 0xc4, 0x12, 0xf6, 0xf6, 0x79, 0xa0, 0x00, 0xa6, 0xed, 0xaa, 0x00, 0x5d, 0x05, 0xf5, 0x50, 0xa6, 0x2f, 0xf9, 0xa6, 0xa1, 0xa5, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_767 = { .name = "ecdsa_brainpoolp256r1_sha256_767", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_767_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_767_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_767_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 768 for ECDSA, tcId is 247 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_768_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_768_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_768_sig[] = { 0x54, 0x79, 0xac, 0xb7, 0x6c, 0x38, 0xd4, 0x7f, 0x21, 0x94, 0x08, 0x55, 0xf1, 0x80, 0x09, 0x78, 0xa5, 0x2f, 0xb1, 0x0b, 0x7c, 0xc9, 0xb0, 0x7c, 0xaf, 0x88, 0xaf, 0x67, 0xf2, 0x69, 0x71, 0x43, 0x24, 0x4f, 0x3c, 0xdd, 0x68, 0x35, 0x55, 0xb8, 0x8a, 0x45, 0xe9, 0x75, 0x07, 0x37, 0x35, 0xd3, 0x87, 0x13, 0xda, 0x4b, 0xde, 0xa3, 0x40, 0xb5, 0xfb, 0x87, 0xd3, 0xc4, 0x43, 0xad, 0xb0, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_768 = { .name = "ecdsa_brainpoolp256r1_sha256_768", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_768_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_768_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_768_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 769 for ECDSA, tcId is 248 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_769_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_769_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_769_sig[] = { 0x14, 0x99, 0x01, 0x49, 0xd3, 0xa8, 0xf3, 0xc9, 0x6e, 0x9c, 0x62, 0x95, 0x2f, 0x90, 0xef, 0x21, 0xcb, 0xcc, 0x0d, 0x03, 0xda, 0x80, 0x2f, 0x72, 0x43, 0x2a, 0x04, 0x1d, 0xa5, 0x4d, 0xb5, 0xbe, 0x87, 0x42, 0x7b, 0x96, 0xd2, 0x84, 0x99, 0x70, 0x7a, 0x67, 0x88, 0x70, 0x5c, 0xd8, 0xa5, 0xee, 0x9f, 0xd4, 0x2e, 0x2d, 0x1f, 0x12, 0x73, 0x75, 0x23, 0x37, 0xef, 0xcd, 0x06, 0xaa, 0x88, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_769 = { .name = "ecdsa_brainpoolp256r1_sha256_769", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_769_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_769_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_769_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 770 for ECDSA, tcId is 249 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_770_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_770_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_770_sig[] = { 0x5b, 0xb2, 0x44, 0xb5, 0x11, 0xa9, 0x82, 0x8f, 0xbe, 0x7a, 0x04, 0x1a, 0xf3, 0x41, 0xa9, 0x3b, 0x24, 0x2b, 0x51, 0x33, 0x10, 0xde, 0x9f, 0x4b, 0xc3, 0x66, 0xe1, 0x8b, 0x93, 0xa3, 0xce, 0x34, 0x97, 0x8b, 0xe5, 0xd5, 0x8c, 0xe7, 0x0c, 0x92, 0xde, 0xa7, 0x5c, 0xe2, 0xf8, 0xe8, 0x8f, 0x09, 0x3f, 0x5e, 0x46, 0x75, 0xe7, 0x50, 0xfd, 0x08, 0x87, 0x77, 0xa7, 0x41, 0x15, 0x26, 0xc1, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_770 = { .name = "ecdsa_brainpoolp256r1_sha256_770", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_770_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_770_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_770_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 771 for ECDSA, tcId is 250 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_771_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_771_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_771_sig[] = { 0x07, 0x0e, 0x64, 0xf4, 0xd1, 0x9f, 0x9f, 0xd9, 0xa8, 0xd3, 0xf0, 0xa6, 0x4f, 0x95, 0x1c, 0x41, 0xdb, 0x2f, 0x0e, 0x13, 0x49, 0x0e, 0x7a, 0xc0, 0xb3, 0xf6, 0x06, 0x6b, 0xc1, 0xe5, 0x40, 0xa7, 0x83, 0x5b, 0x25, 0x02, 0x9a, 0x2c, 0xed, 0x8d, 0xf5, 0x7b, 0x03, 0x43, 0xa2, 0xc7, 0x18, 0xdb, 0x72, 0xc2, 0xd3, 0x1f, 0x7e, 0xf6, 0x6b, 0x23, 0x0c, 0x97, 0xd2, 0x02, 0x81, 0xd4, 0x9a, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_771 = { .name = "ecdsa_brainpoolp256r1_sha256_771", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_771_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_771_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_771_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 772 for ECDSA, tcId is 251 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_772_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_772_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_772_sig[] = { 0x2b, 0x5a, 0x6d, 0xc1, 0x4e, 0x98, 0xd2, 0xe6, 0xc0, 0xb6, 0x27, 0x56, 0x8a, 0x74, 0x8b, 0xda, 0x04, 0xc0, 0x95, 0x00, 0xbc, 0x63, 0xbd, 0x74, 0x4f, 0x5d, 0xee, 0x96, 0x7d, 0xb0, 0xf0, 0xb1, 0x34, 0x52, 0xb1, 0x3e, 0xf8, 0xdc, 0x01, 0xa0, 0xb7, 0x85, 0xfb, 0xb4, 0xfc, 0xd0, 0x57, 0xa5, 0x88, 0x0c, 0x41, 0x84, 0x27, 0x28, 0x3a, 0xbc, 0x7a, 0xa7, 0xfa, 0x07, 0xd5, 0x07, 0xee, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_772 = { .name = "ecdsa_brainpoolp256r1_sha256_772", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_772_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_772_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_772_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 773 for ECDSA, tcId is 252 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_773_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_773_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_773_sig[] = { 0x1d, 0x91, 0xbd, 0xa9, 0x0d, 0x08, 0x31, 0xbe, 0x05, 0x8f, 0x61, 0x0f, 0xe3, 0xe6, 0x45, 0x17, 0x91, 0xe0, 0x96, 0x89, 0xc5, 0x2b, 0xd4, 0x66, 0xef, 0x74, 0xdd, 0x85, 0xb3, 0xcb, 0xd1, 0x21, 0x4b, 0xa3, 0x7a, 0x93, 0x41, 0xe5, 0x92, 0x3e, 0xa9, 0x3e, 0x35, 0x73, 0x44, 0xfe, 0x7b, 0x73, 0x44, 0x6e, 0x20, 0x7a, 0x7e, 0x44, 0x96, 0x07, 0xb1, 0x48, 0x2c, 0x51, 0x0e, 0x93, 0xb6, 0x30, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_773 = { .name = "ecdsa_brainpoolp256r1_sha256_773", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_773_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_773_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_773_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 774 for ECDSA, tcId is 253 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_774_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_774_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_774_sig[] = { 0x6a, 0x32, 0xe1, 0x62, 0x5c, 0x1e, 0xb7, 0xd4, 0x0b, 0x31, 0x45, 0xf8, 0x94, 0xc7, 0x13, 0x8d, 0x62, 0x32, 0xa6, 0x11, 0x6d, 0x50, 0xf1, 0x27, 0x0a, 0x0e, 0x97, 0x1e, 0x2b, 0x7a, 0x8e, 0x75, 0x61, 0xb6, 0xaa, 0xe5, 0x68, 0x19, 0x27, 0x28, 0x13, 0x31, 0x9f, 0x7c, 0x21, 0x4f, 0x83, 0xce, 0x5f, 0xcc, 0xdb, 0x58, 0x87, 0x8d, 0x59, 0x2a, 0xb0, 0xf4, 0x47, 0x9a, 0x52, 0xd9, 0x70, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_774 = { .name = "ecdsa_brainpoolp256r1_sha256_774", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_774_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_774_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_774_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 775 for ECDSA, tcId is 254 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_775_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_775_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_775_sig[] = { 0x5b, 0x75, 0x26, 0xf0, 0x9d, 0xab, 0x24, 0x85, 0x51, 0xed, 0x8b, 0x12, 0x29, 0xc2, 0x44, 0x7a, 0x45, 0x21, 0xd2, 0xd6, 0xe2, 0x29, 0x02, 0xac, 0xbc, 0x17, 0x6c, 0x50, 0x1f, 0x5f, 0x5f, 0x7e, 0x31, 0x86, 0x55, 0x2f, 0x70, 0x0d, 0x9e, 0x6b, 0x55, 0x1c, 0x89, 0x3e, 0xd2, 0xae, 0xd9, 0x55, 0x6b, 0x3f, 0x0a, 0xc2, 0xa5, 0xe2, 0x77, 0x2f, 0x8f, 0xb1, 0xa1, 0x84, 0x94, 0x92, 0x62, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_775 = { .name = "ecdsa_brainpoolp256r1_sha256_775", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_775_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_775_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_775_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 776 for ECDSA, tcId is 255 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_776_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_776_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_776_sig[] = { 0x30, 0xd0, 0xff, 0xa9, 0xc2, 0xbe, 0x04, 0x2c, 0xcd, 0x2c, 0x9a, 0xdb, 0xcb, 0xbb, 0xa2, 0x2c, 0xc0, 0x44, 0xd6, 0x9a, 0xbf, 0x37, 0xef, 0xf2, 0xbc, 0xab, 0x91, 0xd4, 0x5b, 0xe9, 0xb0, 0xbd, 0x48, 0x2d, 0xd7, 0x2a, 0xa3, 0xb3, 0xf3, 0xf2, 0xe6, 0xdd, 0x4a, 0x07, 0x5f, 0xa9, 0x62, 0xb8, 0xf6, 0xfc, 0x25, 0xe9, 0xd3, 0x2d, 0x0d, 0xcc, 0xbd, 0x80, 0x83, 0x1a, 0xcf, 0x75, 0x95, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_776 = { .name = "ecdsa_brainpoolp256r1_sha256_776", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_776_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_776_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_776_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 777 for ECDSA, tcId is 256 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_777_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_777_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_777_sig[] = { 0x20, 0x0d, 0x3b, 0x5f, 0x91, 0x58, 0x63, 0xad, 0xa8, 0xc8, 0x4e, 0xf5, 0xeb, 0x50, 0xec, 0xf0, 0xab, 0x43, 0xe2, 0xba, 0xc1, 0x0a, 0x4c, 0x42, 0xcf, 0x37, 0x19, 0x12, 0x1a, 0x8d, 0x37, 0xcd, 0x9d, 0x13, 0x7e, 0x11, 0xa0, 0x50, 0xbf, 0xbb, 0xa7, 0x46, 0xc1, 0x9a, 0xd5, 0xf7, 0x19, 0x5c, 0x86, 0xf2, 0x41, 0x15, 0xd1, 0xfa, 0xdf, 0xb1, 0x9a, 0xd2, 0xcb, 0x56, 0x24, 0x12, 0x6c, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_777 = { .name = "ecdsa_brainpoolp256r1_sha256_777", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_777_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_777_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_777_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 778 for ECDSA, tcId is 257 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_778_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_778_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_778_sig[] = { 0x4a, 0xc5, 0x54, 0x70, 0x78, 0x90, 0x95, 0xe9, 0xe2, 0x50, 0x33, 0x2f, 0x37, 0x90, 0xf8, 0x65, 0xfb, 0xcc, 0x58, 0x93, 0x45, 0x88, 0xc7, 0x74, 0xba, 0xbf, 0x22, 0xde, 0x6a, 0x8a, 0x69, 0x58, 0x2c, 0xfe, 0xfb, 0x0e, 0x2b, 0xe0, 0x54, 0x2c, 0x97, 0xeb, 0x61, 0x91, 0x4f, 0x23, 0xfb, 0x37, 0xb5, 0x8f, 0xb1, 0x7d, 0x0d, 0x6b, 0x76, 0x6a, 0x8f, 0x63, 0xc8, 0xd0, 0xdc, 0x79, 0xe5, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_778 = { .name = "ecdsa_brainpoolp256r1_sha256_778", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_778_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_778_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_778_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 779 for ECDSA, tcId is 258 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_779_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_779_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_779_sig[] = { 0x90, 0x8c, 0x1e, 0x6d, 0xa6, 0x25, 0x87, 0x9f, 0xc1, 0x16, 0xdd, 0xb6, 0x51, 0x73, 0xb9, 0x35, 0x5f, 0xa8, 0xeb, 0x03, 0x80, 0x63, 0xde, 0x2c, 0xec, 0x19, 0x34, 0xe8, 0xfb, 0x2b, 0xfc, 0x27, 0x6e, 0x08, 0x4f, 0xf7, 0xc0, 0x43, 0xed, 0xfb, 0x16, 0x1a, 0xea, 0x26, 0x05, 0xa1, 0x11, 0xcf, 0x43, 0xd5, 0x83, 0x88, 0xe0, 0x61, 0xe8, 0x01, 0x9e, 0x99, 0x52, 0x63, 0x76, 0xe4, 0xc7, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_779 = { .name = "ecdsa_brainpoolp256r1_sha256_779", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_779_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_779_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_779_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 780 for ECDSA, tcId is 259 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_780_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_780_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_780_sig[] = { 0x97, 0x32, 0x8e, 0x10, 0x50, 0xfc, 0x2d, 0x44, 0xec, 0x89, 0x83, 0x6a, 0x7e, 0xaa, 0xe3, 0x60, 0xd6, 0xf9, 0xd9, 0x96, 0x85, 0x5e, 0x8b, 0x14, 0x4d, 0x0c, 0x27, 0x3c, 0x48, 0x66, 0xd7, 0xfe, 0x39, 0x19, 0xd7, 0xce, 0xd9, 0xf3, 0xe3, 0x28, 0x49, 0x78, 0x54, 0x63, 0x94, 0xfb, 0xb2, 0x77, 0xf8, 0x4d, 0x26, 0x59, 0x8d, 0xbe, 0x83, 0xda, 0x4b, 0xa7, 0xc1, 0xde, 0x37, 0x2b, 0x33, 0x40, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_780 = { .name = "ecdsa_brainpoolp256r1_sha256_780", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_780_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_780_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_780_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 781 for ECDSA, tcId is 260 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_781_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_781_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_781_sig[] = { 0x98, 0x81, 0xe8, 0xf7, 0x5d, 0xb8, 0x16, 0x3d, 0x2b, 0xe1, 0xfc, 0x11, 0x49, 0x19, 0x26, 0xc4, 0x12, 0x53, 0x74, 0x44, 0x0d, 0xa9, 0x47, 0x50, 0xa1, 0x9e, 0xca, 0xf8, 0xa8, 0x3b, 0x71, 0xfc, 0x4a, 0x9a, 0x19, 0x1a, 0x9d, 0xa8, 0xfa, 0x3d, 0x56, 0x41, 0xcb, 0xb5, 0xa8, 0x8c, 0xac, 0x5b, 0x37, 0x80, 0xfb, 0xbe, 0xf8, 0xef, 0x1a, 0x44, 0x57, 0x82, 0x39, 0x49, 0x25, 0xef, 0xc5, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_781 = { .name = "ecdsa_brainpoolp256r1_sha256_781", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_781_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_781_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_781_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 782 for ECDSA, tcId is 261 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_782_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_782_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_782_sig[] = { 0x70, 0xcb, 0x8b, 0xc7, 0xd5, 0xc3, 0x72, 0xc7, 0x3c, 0xf3, 0x6f, 0xe6, 0x9a, 0xa1, 0xa5, 0x09, 0xfe, 0x0c, 0xf2, 0xbe, 0x64, 0x2e, 0x08, 0x5a, 0xc9, 0x79, 0xd6, 0xee, 0xfd, 0xda, 0xa9, 0xe1, 0x50, 0x04, 0x02, 0xf4, 0x96, 0xdc, 0x8d, 0x90, 0x4c, 0x70, 0x96, 0x95, 0xff, 0x02, 0x71, 0x4e, 0x60, 0x7c, 0x4b, 0xee, 0x9d, 0x06, 0x4c, 0xd4, 0x65, 0x4b, 0x6c, 0x46, 0x6f, 0x40, 0x10, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_782 = { .name = "ecdsa_brainpoolp256r1_sha256_782", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_782_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_782_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_782_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 783 for ECDSA, tcId is 262 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_783_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_783_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_783_sig[] = { 0x39, 0xc8, 0xf8, 0x70, 0x18, 0x5f, 0x87, 0x95, 0x7e, 0x00, 0x9d, 0x01, 0xe5, 0x2f, 0xbf, 0x6c, 0x7a, 0xe5, 0x0d, 0x73, 0x4d, 0x39, 0xec, 0x41, 0x13, 0xb3, 0x7b, 0x7b, 0xd1, 0xb6, 0x80, 0x66, 0x73, 0xd6, 0xda, 0x2b, 0x77, 0x7c, 0xe0, 0xc4, 0x3d, 0x49, 0x08, 0x08, 0x57, 0xc6, 0xec, 0x58, 0x54, 0x6f, 0xdd, 0xf1, 0x7d, 0x26, 0x76, 0xf1, 0x0f, 0x88, 0xdd, 0xc9, 0x00, 0xca, 0x18, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_783 = { .name = "ecdsa_brainpoolp256r1_sha256_783", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_783_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_783_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_783_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 784 for ECDSA, tcId is 263 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_784_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_784_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_784_sig[] = { 0x2e, 0x95, 0xb7, 0x02, 0xed, 0x13, 0x8f, 0x42, 0x61, 0x4f, 0x07, 0xa1, 0xb2, 0x15, 0x48, 0xea, 0x1d, 0x24, 0x7a, 0x4a, 0x7f, 0xd7, 0x65, 0x62, 0x8b, 0xab, 0x68, 0x55, 0x11, 0x29, 0xad, 0x38, 0x2e, 0x9a, 0x6a, 0xf0, 0x78, 0xb5, 0x18, 0x12, 0xed, 0x71, 0xb0, 0xea, 0xb6, 0x53, 0x50, 0xcd, 0x08, 0x1f, 0x79, 0x99, 0xa2, 0x4a, 0x56, 0xe9, 0x6a, 0xf9, 0xd5, 0xc5, 0xf6, 0xbd, 0xaf, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_784 = { .name = "ecdsa_brainpoolp256r1_sha256_784", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_784_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_784_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_784_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 785 for ECDSA, tcId is 264 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_785_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_785_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_785_sig[] = { 0x58, 0x37, 0xb6, 0x87, 0xf2, 0x12, 0x80, 0x63, 0xdc, 0x67, 0xf5, 0x12, 0xcb, 0x66, 0x70, 0xf1, 0x22, 0xb6, 0x11, 0x25, 0x7f, 0x53, 0x6d, 0x45, 0xe3, 0x98, 0x4f, 0x5e, 0xbb, 0xc3, 0xcd, 0x4d, 0x6a, 0x6c, 0x0c, 0x41, 0xb9, 0xcc, 0x37, 0xae, 0x02, 0xc2, 0x21, 0x8d, 0x3b, 0x8c, 0xd8, 0x0c, 0xd3, 0xc4, 0xfc, 0x25, 0x77, 0x1c, 0x0c, 0xaa, 0xb3, 0xb8, 0xed, 0x2c, 0x61, 0x1c, 0xf7, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_785 = { .name = "ecdsa_brainpoolp256r1_sha256_785", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_785_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_785_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_785_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 786 for ECDSA, tcId is 265 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_786_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_786_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_786_sig[] = { 0x5a, 0x73, 0xc7, 0x5d, 0x2b, 0x5c, 0x48, 0xaf, 0x17, 0xb7, 0x84, 0x72, 0x44, 0x26, 0x2b, 0xb9, 0xb2, 0xc3, 0xf2, 0x69, 0x7a, 0x9d, 0x8c, 0x60, 0x57, 0x58, 0xa2, 0xd3, 0x3c, 0xcc, 0xd1, 0x8f, 0x97, 0xf1, 0x2a, 0xa0, 0x4b, 0x25, 0x82, 0x37, 0x3f, 0x9b, 0xea, 0x64, 0x6b, 0xce, 0x1b, 0x12, 0x90, 0x30, 0xea, 0x5f, 0x35, 0xc9, 0xdc, 0x2a, 0x14, 0x9e, 0x90, 0xaa, 0x3b, 0x56, 0x34, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_786 = { .name = "ecdsa_brainpoolp256r1_sha256_786", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_786_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_786_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_786_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 787 for ECDSA, tcId is 266 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_787_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_787_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_787_sig[] = { 0x32, 0xb6, 0x03, 0x13, 0x2a, 0x96, 0xc5, 0xb9, 0x57, 0xb0, 0x8c, 0x88, 0x53, 0x2e, 0x49, 0xfc, 0xb7, 0x3c, 0xd7, 0xc5, 0xf7, 0x1a, 0x1e, 0x6e, 0xd1, 0x4a, 0x5c, 0xc1, 0x77, 0x6d, 0x2d, 0xa7, 0x93, 0xbe, 0x0e, 0x4c, 0x98, 0x44, 0xbe, 0xc9, 0xd2, 0xb6, 0x2b, 0x42, 0x4e, 0x61, 0x8a, 0x84, 0x5a, 0x98, 0x53, 0x7b, 0x23, 0x56, 0xc1, 0xf4, 0x73, 0xbb, 0xa1, 0x3b, 0x08, 0x45, 0x8e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_787 = { .name = "ecdsa_brainpoolp256r1_sha256_787", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_787_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_787_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_787_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 788 for ECDSA, tcId is 267 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_788_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_788_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_788_sig[] = { 0x9b, 0x76, 0xb7, 0xaa, 0xc0, 0xa1, 0x3b, 0xf2, 0x17, 0xf2, 0x4d, 0x33, 0x5b, 0xc0, 0x46, 0x94, 0xec, 0xdb, 0xd5, 0xac, 0xfe, 0x4e, 0xc2, 0x3c, 0x06, 0x5e, 0xfe, 0xb7, 0x93, 0x6a, 0x1c, 0x62, 0x43, 0x2c, 0xde, 0x74, 0xfd, 0xbb, 0x4f, 0x54, 0x37, 0xcd, 0xec, 0xa5, 0x3c, 0xb7, 0xab, 0x79, 0xf6, 0x92, 0x69, 0x4f, 0x91, 0xed, 0x37, 0x35, 0xfb, 0xc4, 0xe0, 0x8a, 0x3f, 0x52, 0x78, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_788 = { .name = "ecdsa_brainpoolp256r1_sha256_788", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_788_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_788_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_788_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 789 for ECDSA, tcId is 268 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_789_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_789_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_789_sig[] = { 0x8f, 0x25, 0x65, 0xb5, 0x17, 0xf6, 0x2a, 0x3b, 0x1e, 0x19, 0xb0, 0x91, 0x7a, 0xb2, 0xb2, 0x23, 0xfc, 0x81, 0x93, 0xcc, 0x0f, 0xdf, 0x3a, 0xb9, 0x69, 0x2b, 0xc4, 0x2c, 0xf4, 0x09, 0x10, 0xe8, 0x1d, 0xcc, 0xfb, 0xed, 0x8b, 0x90, 0xee, 0x53, 0x91, 0xea, 0x74, 0x3e, 0x35, 0xb6, 0x0e, 0xd3, 0x1d, 0x19, 0xed, 0xfb, 0xd9, 0x45, 0x04, 0xba, 0xdc, 0xa4, 0xaa, 0x4c, 0xf2, 0xa7, 0xbb, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_789 = { .name = "ecdsa_brainpoolp256r1_sha256_789", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_789_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_789_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_789_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 790 for ECDSA, tcId is 269 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_790_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_790_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_790_sig[] = { 0x31, 0xc6, 0x27, 0xfd, 0x79, 0x1f, 0x73, 0x44, 0x21, 0xe5, 0x50, 0x26, 0x18, 0xae, 0xc4, 0x47, 0xc6, 0x70, 0x29, 0xb2, 0x79, 0x4e, 0xe1, 0x2b, 0x08, 0xee, 0xb6, 0xc5, 0x9a, 0xed, 0xb3, 0xee, 0x08, 0xf9, 0x1f, 0x37, 0x89, 0xbd, 0x01, 0xe5, 0xb9, 0xd9, 0x39, 0x41, 0xcf, 0x46, 0x69, 0x8d, 0x5e, 0x1a, 0x27, 0x08, 0xe7, 0x0e, 0xe9, 0xa2, 0x26, 0xe8, 0x1e, 0x7f, 0x4a, 0x41, 0x4e, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_790 = { .name = "ecdsa_brainpoolp256r1_sha256_790", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_790_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_790_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_790_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 791 for ECDSA, tcId is 270 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_791_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_791_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_791_sig[] = { 0x60, 0x05, 0x29, 0x31, 0x32, 0xd7, 0xea, 0xc0, 0xe7, 0x2b, 0x9b, 0x21, 0x8d, 0x03, 0x21, 0x26, 0x75, 0xd5, 0xaa, 0xe0, 0xda, 0x97, 0xbc, 0xcd, 0xf1, 0xa5, 0xff, 0x78, 0x4d, 0xe5, 0xcd, 0xe6, 0x13, 0xa1, 0x55, 0xc7, 0x4a, 0x9a, 0xb2, 0x7c, 0xbd, 0xf6, 0xca, 0xe1, 0x8d, 0x4d, 0x1f, 0x18, 0xb8, 0x21, 0x2d, 0x80, 0x18, 0x55, 0x1e, 0x2b, 0xae, 0xc9, 0x19, 0x79, 0xea, 0x5b, 0x4c, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_791 = { .name = "ecdsa_brainpoolp256r1_sha256_791", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_791_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_791_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_791_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 792 for ECDSA, tcId is 271 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_792_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_792_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_792_sig[] = { 0x3a, 0x6d, 0xab, 0x51, 0xed, 0x90, 0x27, 0xf5, 0xca, 0xe1, 0x92, 0xe0, 0x58, 0x6a, 0x32, 0xc8, 0xef, 0x22, 0x76, 0xce, 0xba, 0x3b, 0x79, 0x60, 0x59, 0xdc, 0xa1, 0x35, 0xe3, 0x61, 0x79, 0x5d, 0x4b, 0xf1, 0x6b, 0x0e, 0x62, 0xe3, 0x2a, 0x94, 0x50, 0x88, 0xf5, 0x5f, 0xb4, 0x28, 0x15, 0x9a, 0xf7, 0x82, 0x96, 0xdd, 0x4f, 0x8d, 0xfd, 0x97, 0x13, 0xbd, 0xb2, 0xf6, 0x77, 0xcb, 0xcd, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_792 = { .name = "ecdsa_brainpoolp256r1_sha256_792", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_792_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_792_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_792_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 793 for ECDSA, tcId is 272 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_793_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_793_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_793_sig[] = { 0x96, 0x1d, 0xe7, 0x7e, 0xd9, 0xcf, 0x61, 0x70, 0xd9, 0x25, 0xc2, 0x33, 0xbd, 0x3e, 0x20, 0xee, 0xf9, 0xbb, 0xe6, 0xd6, 0xc8, 0xda, 0xc2, 0x8a, 0xcd, 0xe4, 0x60, 0x11, 0xf9, 0x9f, 0x8b, 0xff, 0x97, 0x7d, 0xe0, 0x47, 0x79, 0xff, 0xe3, 0xaf, 0xe7, 0x08, 0xd8, 0x1c, 0xe8, 0xa1, 0xed, 0x6c, 0x7d, 0x2a, 0x9a, 0x25, 0xef, 0x99, 0x59, 0xc7, 0xa9, 0x51, 0xa0, 0x55, 0x5a, 0x6d, 0x37, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_793 = { .name = "ecdsa_brainpoolp256r1_sha256_793", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_793_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_793_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_793_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 794 for ECDSA, tcId is 273 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_794_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_794_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_794_sig[] = { 0x77, 0x85, 0x81, 0xb3, 0xd4, 0x03, 0x00, 0x31, 0x14, 0x1e, 0x55, 0x5f, 0xa1, 0xdb, 0xeb, 0xae, 0xf0, 0xee, 0xd0, 0x19, 0xe0, 0xb8, 0x97, 0xb5, 0x07, 0x65, 0x44, 0xab, 0x80, 0x49, 0x8b, 0x9c, 0x71, 0x32, 0xc8, 0xd1, 0x09, 0xc1, 0xf1, 0xa6, 0xc1, 0x0f, 0x81, 0xe9, 0xfc, 0x11, 0xad, 0xea, 0x4b, 0x9c, 0xff, 0x59, 0x92, 0x08, 0xb6, 0xd9, 0xcb, 0x4e, 0x4b, 0x27, 0xf1, 0x97, 0x28, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_794 = { .name = "ecdsa_brainpoolp256r1_sha256_794", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_794_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_794_msg, .msglen = 11, .sig = ecdsa_brainpoolp256r1_sha256_794_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 795 for ECDSA, tcId is 274 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_795_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_795_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_795_sig[] = { 0x9e, 0xea, 0xc8, 0xf0, 0x7c, 0x40, 0xcc, 0x8e, 0xe3, 0xcb, 0xa1, 0x07, 0xaf, 0x49, 0xd5, 0x26, 0x73, 0x1d, 0x8b, 0x7c, 0x70, 0x13, 0x0c, 0xbb, 0x6e, 0xfa, 0x3c, 0x61, 0x50, 0x5d, 0x63, 0x37, 0x62, 0xdb, 0x38, 0x22, 0x6b, 0x71, 0xf6, 0x4a, 0x5b, 0x59, 0x8a, 0xb7, 0xc4, 0xe3, 0xf8, 0x98, 0x80, 0xfe, 0x0d, 0x07, 0x49, 0xdf, 0xd5, 0xc7, 0xa3, 0x8a, 0x3e, 0xec, 0x3c, 0x79, 0x38, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_795 = { .name = "ecdsa_brainpoolp256r1_sha256_795", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_795_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_795_msg, .msglen = 8, .sig = ecdsa_brainpoolp256r1_sha256_795_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 796 for ECDSA, tcId is 275 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_796_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_796_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_796_sig[] = { 0x67, 0x3d, 0x41, 0xc1, 0x7e, 0x72, 0x7f, 0x01, 0x25, 0x17, 0x5b, 0x2a, 0x9f, 0x05, 0x61, 0xec, 0xc5, 0xcf, 0x9c, 0xd4, 0x90, 0x35, 0x82, 0x8b, 0xa7, 0xc4, 0x75, 0x45, 0xa0, 0xb3, 0x38, 0xf4, 0x00, 0x45, 0x9e, 0xf9, 0x78, 0xe7, 0xb0, 0x34, 0x68, 0xc8, 0x0f, 0xd4, 0x53, 0x3a, 0x33, 0x47, 0x55, 0xa0, 0x82, 0x6b, 0xf5, 0xa3, 0x0d, 0xf9, 0x19, 0x12, 0x9e, 0x35, 0x2d, 0x34, 0x75, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_796 = { .name = "ecdsa_brainpoolp256r1_sha256_796", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_796_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_796_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_796_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 797 for ECDSA, tcId is 276 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_797_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_797_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_797_sig[] = { 0x8a, 0x97, 0xf1, 0x9b, 0x08, 0x09, 0x04, 0x2c, 0xda, 0xfe, 0x9c, 0x32, 0xbc, 0x0b, 0x0b, 0x01, 0x21, 0x8a, 0x49, 0x86, 0x7a, 0x68, 0x82, 0xd6, 0x4d, 0x5b, 0x7b, 0xc2, 0x55, 0xeb, 0x77, 0x3d, 0x90, 0x46, 0x62, 0xb5, 0xdf, 0xd8, 0xcd, 0x94, 0xea, 0xef, 0xd5, 0x7e, 0x5d, 0x4f, 0x2d, 0x14, 0x26, 0x8e, 0x1b, 0x8c, 0x4f, 0xbd, 0x4a, 0xc4, 0xe5, 0x08, 0x0f, 0x79, 0xd5, 0x3f, 0xd2, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_797 = { .name = "ecdsa_brainpoolp256r1_sha256_797", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_797_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_797_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_797_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 798 for ECDSA, tcId is 277 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_798_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_798_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_798_sig[] = { 0x28, 0x7a, 0x88, 0xbd, 0xb5, 0x61, 0xfa, 0x27, 0x85, 0xca, 0x25, 0x86, 0x63, 0xf8, 0x6d, 0x3b, 0x07, 0xaa, 0xc9, 0x49, 0xf6, 0x47, 0xee, 0x57, 0x26, 0x21, 0xb0, 0xb7, 0x0e, 0xb3, 0xe9, 0xca, 0x4a, 0x6d, 0x79, 0x16, 0x41, 0x84, 0x43, 0xde, 0xb4, 0xc4, 0x3f, 0x5c, 0x69, 0xf6, 0x49, 0x09, 0x52, 0xcf, 0x53, 0xee, 0x69, 0xee, 0xc1, 0xac, 0x69, 0xe1, 0x44, 0xb8, 0xf9, 0xe2, 0x63, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_798 = { .name = "ecdsa_brainpoolp256r1_sha256_798", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_798_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_798_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_798_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 799 for ECDSA, tcId is 278 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_799_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_799_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_799_sig[] = { 0x25, 0x0d, 0xb6, 0xa8, 0xb3, 0x81, 0x3b, 0x13, 0xb6, 0xfb, 0x7b, 0xf1, 0x98, 0x96, 0xf1, 0x3a, 0x50, 0x2b, 0xe4, 0x53, 0xc2, 0x04, 0xe6, 0xa8, 0x13, 0xa1, 0x64, 0xdb, 0xdd, 0x9c, 0x66, 0xca, 0x1d, 0x96, 0x68, 0x3a, 0xc9, 0x7f, 0x58, 0x74, 0xac, 0x95, 0x38, 0xb5, 0x7b, 0xf1, 0xea, 0xa5, 0x0a, 0x11, 0xa3, 0x3e, 0x9a, 0xbb, 0x82, 0x5d, 0x6b, 0x7a, 0x75, 0x46, 0xa6, 0x98, 0x60, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_799 = { .name = "ecdsa_brainpoolp256r1_sha256_799", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_799_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_799_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_799_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 800 for ECDSA, tcId is 279 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_800_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_800_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_800_sig[] = { 0xa2, 0x9b, 0x2c, 0x4b, 0xe5, 0x0f, 0x17, 0x24, 0xa1, 0xce, 0x9a, 0xcd, 0x4c, 0x51, 0x29, 0xb3, 0x91, 0xb4, 0xb9, 0x00, 0x9a, 0xbb, 0x58, 0x23, 0x97, 0xa5, 0x22, 0xc7, 0x71, 0xd5, 0x4a, 0xbd, 0x0e, 0xc1, 0xd7, 0xae, 0xdb, 0xfe, 0x4e, 0x74, 0x3d, 0x76, 0x27, 0xea, 0x8d, 0x20, 0x7c, 0x24, 0x60, 0xae, 0x4c, 0x9f, 0x21, 0x34, 0xb0, 0xf8, 0x4a, 0x02, 0x55, 0x20, 0x5a, 0xc2, 0x34, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_800 = { .name = "ecdsa_brainpoolp256r1_sha256_800", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_800_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_800_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_800_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 801 for ECDSA, tcId is 280 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_801_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_801_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_801_sig[] = { 0x14, 0x9f, 0x05, 0x08, 0xae, 0xf9, 0xfb, 0xcc, 0xf3, 0x2e, 0x1b, 0xd3, 0x19, 0x9d, 0x63, 0x02, 0x40, 0xbb, 0x65, 0x77, 0x59, 0x3e, 0x87, 0x56, 0x6b, 0x0a, 0x14, 0xa5, 0xb6, 0xf2, 0x09, 0x99, 0x5d, 0x37, 0xb4, 0x09, 0xc0, 0x1f, 0xb9, 0xb6, 0xcf, 0x4e, 0xa1, 0x44, 0x32, 0xc3, 0x56, 0x31, 0x69, 0x44, 0x02, 0xd2, 0x87, 0x5a, 0x30, 0x1d, 0x76, 0x1d, 0x81, 0x81, 0x14, 0x69, 0x62, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_801 = { .name = "ecdsa_brainpoolp256r1_sha256_801", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_801_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_801_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_801_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 802 for ECDSA, tcId is 281 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_802_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_802_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_802_sig[] = { 0x6c, 0x9b, 0x11, 0x0d, 0x8e, 0x44, 0x53, 0xd8, 0x2e, 0xc5, 0x1a, 0x5a, 0x69, 0x1b, 0x15, 0x2e, 0xdf, 0x9f, 0xb1, 0xa9, 0x94, 0x7b, 0xd0, 0x01, 0xbe, 0xb2, 0x4d, 0x56, 0xf3, 0xbf, 0x27, 0xaf, 0x2a, 0x80, 0xbb, 0xd2, 0xf8, 0x27, 0xcc, 0x23, 0x15, 0x75, 0x26, 0xdf, 0x6e, 0xa4, 0xe0, 0xe3, 0x24, 0xb7, 0x65, 0xa5, 0x0b, 0xe7, 0x7f, 0x7e, 0x96, 0x67, 0x55, 0x8a, 0x16, 0x5e, 0xb6, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_802 = { .name = "ecdsa_brainpoolp256r1_sha256_802", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_802_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_802_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_802_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 803 for ECDSA, tcId is 282 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_803_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_803_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_803_sig[] = { 0x90, 0x86, 0xa5, 0xc9, 0x38, 0x23, 0xb1, 0xdf, 0x21, 0xf6, 0x39, 0x51, 0xed, 0x6e, 0x70, 0x7f, 0xba, 0x0d, 0x89, 0x9e, 0xef, 0x71, 0x11, 0x00, 0xe3, 0x2f, 0x2d, 0x60, 0x17, 0xda, 0x65, 0x90, 0x1f, 0x83, 0x1e, 0xd3, 0x0c, 0x12, 0x9d, 0xab, 0x42, 0x66, 0x27, 0x2e, 0x01, 0x28, 0x32, 0x10, 0xed, 0x82, 0x3c, 0x55, 0x90, 0x7a, 0xc5, 0xec, 0xda, 0x85, 0xd7, 0x0b, 0xd8, 0x02, 0x79, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_803 = { .name = "ecdsa_brainpoolp256r1_sha256_803", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_803_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_803_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_803_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 804 for ECDSA, tcId is 283 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_804_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_804_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_804_sig[] = { 0x2a, 0xf6, 0x35, 0x47, 0xdc, 0x5f, 0xfc, 0x8b, 0xa4, 0xd1, 0x68, 0xd3, 0x68, 0xd9, 0x22, 0x81, 0x32, 0xa0, 0xef, 0xa2, 0x0e, 0x32, 0x55, 0xc3, 0x32, 0x21, 0x9f, 0xec, 0xed, 0x80, 0x03, 0x95, 0x36, 0x42, 0xf5, 0x3c, 0xe9, 0x52, 0x1f, 0xab, 0x75, 0x4b, 0xe7, 0x71, 0x1f, 0x00, 0xaf, 0x78, 0x88, 0x22, 0x2b, 0xf2, 0xbb, 0xf1, 0xed, 0x89, 0x95, 0xe0, 0x3b, 0x55, 0xc9, 0x8a, 0x60, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_804 = { .name = "ecdsa_brainpoolp256r1_sha256_804", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_804_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_804_msg, .msglen = 10, .sig = ecdsa_brainpoolp256r1_sha256_804_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 805 for ECDSA, tcId is 284 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_805_pubkey[] = { 0x01, 0x9a, 0x2d, 0x96, 0x37, 0x74, 0x3a, 0x63, 0xdd, 0xae, 0xfd, 0xbc, 0xa0, 0xee, 0x22, 0x9a, 0x16, 0x3b, 0x80, 0x9b, 0x9b, 0x14, 0x5e, 0x53, 0x13, 0xbb, 0xeb, 0x8d, 0xef, 0xea, 0xb9, 0xd6, 0x54, 0x8c, 0xaf, 0x89, 0xbf, 0x5b, 0xa4, 0x94, 0x99, 0x40, 0x41, 0x45, 0x65, 0x12, 0x34, 0x33, 0x64, 0x01, 0xb9, 0xb2, 0x84, 0x3a, 0x57, 0x9e, 0xd1, 0x52, 0xe0, 0x90, 0xf1, 0x1b, 0x9e, 0x59, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_805_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_805_sig[] = { 0x91, 0xe9, 0xac, 0xef, 0x9b, 0xc2, 0x8c, 0x91, 0x08, 0x91, 0xb8, 0x03, 0x20, 0xaf, 0x36, 0x03, 0xc4, 0x30, 0x61, 0x74, 0xf1, 0x7e, 0x97, 0x05, 0x92, 0x67, 0xfc, 0x81, 0x78, 0x14, 0xff, 0x1f, 0x7a, 0x9c, 0x83, 0x3b, 0xeb, 0x73, 0xbd, 0xd6, 0x2d, 0xf6, 0x49, 0x52, 0xb4, 0xc8, 0x48, 0xd2, 0x18, 0x0f, 0xae, 0x38, 0x5f, 0x80, 0x84, 0xf1, 0xfc, 0x5b, 0x1b, 0x1c, 0x64, 0x57, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_805 = { .name = "ecdsa_brainpoolp256r1_sha256_805", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_805_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_805_msg, .msglen = 9, .sig = ecdsa_brainpoolp256r1_sha256_805_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 806 for ECDSA, tcId is 285 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_806_pubkey[] = { 0x4b, 0x40, 0x2a, 0x9a, 0xe1, 0x8f, 0xc1, 0xa8, 0x7c, 0xda, 0x33, 0x74, 0x83, 0x90, 0x04, 0x99, 0xfe, 0x72, 0x9e, 0x47, 0x16, 0x07, 0x67, 0x16, 0x51, 0xa2, 0x63, 0xfb, 0xf0, 0xd9, 0x3f, 0x78, 0x1e, 0xf9, 0xb0, 0xf9, 0x8f, 0xb7, 0x3b, 0xcb, 0x60, 0x5a, 0x78, 0x23, 0xa4, 0x27, 0xea, 0x5f, 0x0d, 0x98, 0x78, 0x8c, 0x7d, 0xae, 0x42, 0xa0, 0x45, 0x36, 0x20, 0x20, 0x22, 0xc0, 0x21, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_806_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0x02, 0x7b, 0x80, 0x1f, 0xc4, 0x79, 0x30, 0x8f, 0xf5, 0x39, 0x9a, 0x88, 0x25, 0xfc, 0xcf, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_806 = { .name = "ecdsa_brainpoolp256r1_sha256_806", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_806_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_806_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_806_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 285 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 807 for ECDSA, tcId is 286 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_807_pubkey[] = { 0x4b, 0x40, 0x2a, 0x9a, 0xe1, 0x8f, 0xc1, 0xa8, 0x7c, 0xda, 0x33, 0x74, 0x83, 0x90, 0x04, 0x99, 0xfe, 0x72, 0x9e, 0x47, 0x16, 0x07, 0x67, 0x16, 0x51, 0xa2, 0x63, 0xfb, 0xf0, 0xd9, 0x3f, 0x78, 0x1e, 0xf9, 0xb0, 0xf9, 0x8f, 0xb7, 0x3b, 0xcb, 0x60, 0x5a, 0x78, 0x23, 0xa4, 0x27, 0xea, 0x5f, 0x0d, 0x98, 0x78, 0x8c, 0x7d, 0xae, 0x42, 0xa0, 0x45, 0x36, 0x20, 0x20, 0x22, 0xc0, 0x21, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_807_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_807 = { .name = "ecdsa_brainpoolp256r1_sha256_807", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_807_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_807_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_807_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 286 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 808 for ECDSA, tcId is 287 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_808_pubkey[] = { 0x40, 0xa2, 0xdf, 0x0f, 0x17, 0xc7, 0x87, 0x34, 0x59, 0xd5, 0xe9, 0xac, 0x11, 0xff, 0xf8, 0x4d, 0xeb, 0x5f, 0x40, 0xff, 0x9a, 0x52, 0xdf, 0x87, 0x45, 0xbb, 0x47, 0x70, 0xf6, 0xdb, 0xf5, 0x81, 0x99, 0xc2, 0xbf, 0x49, 0x20, 0xe9, 0xc8, 0xf7, 0x58, 0xc2, 0xde, 0x69, 0xe4, 0x2c, 0x1c, 0xb7, 0x7c, 0x58, 0x42, 0x5a, 0x9d, 0xaf, 0xa4, 0x1d, 0x7b, 0x08, 0x73, 0xef, 0xa8, 0x94, 0xce, 0xdc, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_808_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa3, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_808 = { .name = "ecdsa_brainpoolp256r1_sha256_808", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_808_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_808_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_808_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 287 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 809 for ECDSA, tcId is 288 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_809_pubkey[] = { 0x9d, 0xe6, 0x69, 0xf9, 0x44, 0x4d, 0xa8, 0x2e, 0x42, 0x9f, 0x84, 0x2f, 0x31, 0xc6, 0x44, 0x18, 0xd4, 0xd7, 0xb0, 0x5e, 0x93, 0xf4, 0x1d, 0xad, 0xdd, 0x09, 0xfc, 0x18, 0x1a, 0xc2, 0x27, 0xc6, 0x1c, 0x86, 0x21, 0x0e, 0x82, 0x91, 0xfc, 0x5a, 0xe3, 0x0c, 0x72, 0xe2, 0x01, 0x3e, 0xc2, 0x2b, 0xb9, 0x7d, 0x88, 0xbf, 0x37, 0x6d, 0x4a, 0x85, 0xdd, 0x1b, 0xb7, 0x1b, 0x22, 0x52, 0x6d, 0x1f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_809_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4a, 0xb8, 0xde, 0x0a, 0x51, 0x48, 0x1b, 0xc4, 0x57, 0x94, 0xb9, 0x24, 0x51, 0x8f, 0x2d, 0xd6, 0xac, 0x5c, 0xce, 0x31, 0xf3, 0x22, 0x8d, 0x62, 0x4c, 0x5a, 0x89, 0x6f, 0x79, 0xa2, 0xd6, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_809 = { .name = "ecdsa_brainpoolp256r1_sha256_809", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_809_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_809_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_809_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 288 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 810 for ECDSA, tcId is 289 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_810_pubkey[] = { 0x30, 0x34, 0x5b, 0x64, 0x51, 0x37, 0x7b, 0x78, 0xa5, 0x4a, 0xc6, 0xe1, 0x10, 0xf5, 0x0c, 0x7d, 0xe7, 0x1c, 0x2c, 0x76, 0x02, 0x78, 0x37, 0x36, 0x07, 0x72, 0x2c, 0x53, 0xf5, 0x86, 0x79, 0x07, 0x59, 0xac, 0xc4, 0x00, 0x14, 0xc9, 0x3d, 0x4a, 0xd4, 0x47, 0x78, 0xbc, 0x1a, 0x44, 0xeb, 0xae, 0xbe, 0x1a, 0x97, 0xc8, 0x8a, 0xd1, 0x1c, 0x10, 0x25, 0x05, 0x7b, 0x6b, 0xc4, 0x37, 0x7f, 0x2d, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_810_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x1b, 0x5f, 0x89, 0xf5, 0xbb, 0x74, 0xca, 0xa4, 0x2d, 0x36, 0xe6, 0x01, 0xa9, 0xf3, 0xc2, 0x0b, 0x4e, 0x6c, 0x91, 0xce, 0xb9, 0x8a, 0x52, 0xfb, 0xfa, 0x9f, 0x81, 0x78, 0x1b, 0x8a, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_810 = { .name = "ecdsa_brainpoolp256r1_sha256_810", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_810_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_810_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_810_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 289 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 811 for ECDSA, tcId is 290 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_811_pubkey[] = { 0x14, 0x9d, 0x89, 0x3f, 0x13, 0x06, 0xfb, 0x25, 0x3b, 0xbf, 0x3a, 0x86, 0x91, 0xab, 0xa8, 0xa5, 0x00, 0x02, 0xb0, 0xa2, 0x76, 0x93, 0xaa, 0x97, 0x43, 0x5a, 0x7b, 0x5c, 0xb3, 0x3a, 0x55, 0xee, 0x24, 0xb0, 0x75, 0xfc, 0xdb, 0xc1, 0xa7, 0x39, 0xf2, 0xf4, 0x92, 0xdb, 0xe4, 0x79, 0x94, 0x74, 0xee, 0x3a, 0xd3, 0x80, 0x44, 0x47, 0xe7, 0xd5, 0x84, 0xe3, 0x43, 0x0c, 0xe1, 0x5a, 0x96, 0x8a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_811_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_811 = { .name = "ecdsa_brainpoolp256r1_sha256_811", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_811_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_811_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_811_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 290 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 812 for ECDSA, tcId is 291 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_812_pubkey[] = { 0x15, 0x6e, 0x62, 0x66, 0x49, 0xce, 0x82, 0x36, 0x98, 0x22, 0x01, 0xa2, 0x49, 0x35, 0xfb, 0x3d, 0x36, 0xb0, 0xd7, 0x30, 0x41, 0xb6, 0xfd, 0xca, 0x97, 0x99, 0x0a, 0x8d, 0x15, 0x2e, 0xfb, 0x8b, 0x32, 0x6f, 0x4b, 0x20, 0xa0, 0xcc, 0x46, 0x23, 0xb0, 0x2a, 0x6b, 0xb1, 0x71, 0x14, 0x90, 0x1a, 0x01, 0xde, 0x0d, 0xf1, 0x71, 0x6d, 0x66, 0x9d, 0x25, 0x3d, 0xe4, 0x40, 0xcc, 0x8f, 0x9c, 0xdd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_812_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_812 = { .name = "ecdsa_brainpoolp256r1_sha256_812", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_812_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_812_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_812_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 291 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 813 for ECDSA, tcId is 292 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_813_pubkey[] = { 0x10, 0xcc, 0x79, 0x92, 0xed, 0xe2, 0x8c, 0x7b, 0x4d, 0xda, 0x5c, 0x35, 0xcb, 0xd7, 0x11, 0x74, 0x91, 0x8e, 0x83, 0xad, 0xab, 0x03, 0x42, 0xcc, 0x3d, 0x55, 0x6a, 0x41, 0x3b, 0x4c, 0xe9, 0x3b, 0x3f, 0x9c, 0x3b, 0x38, 0xae, 0xf0, 0xa0, 0xe6, 0x87, 0xd7, 0xee, 0x6a, 0xfd, 0xe7, 0x0d, 0x47, 0xd6, 0x90, 0x0f, 0xf0, 0xce, 0x62, 0x15, 0x6e, 0x86, 0x45, 0xb8, 0x10, 0x3f, 0xc6, 0x6c, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_813_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_813 = { .name = "ecdsa_brainpoolp256r1_sha256_813", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_813_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_813_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_813_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 292 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 814 for ECDSA, tcId is 293 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_814_pubkey[] = { 0x10, 0xcc, 0x79, 0x92, 0xed, 0xe2, 0x8c, 0x7b, 0x4d, 0xda, 0x5c, 0x35, 0xcb, 0xd7, 0x11, 0x74, 0x91, 0x8e, 0x83, 0xad, 0xab, 0x03, 0x42, 0xcc, 0x3d, 0x55, 0x6a, 0x41, 0x3b, 0x4c, 0xe9, 0x3b, 0x3f, 0x9c, 0x3b, 0x38, 0xae, 0xf0, 0xa0, 0xe6, 0x87, 0xd7, 0xee, 0x6a, 0xfd, 0xe7, 0x0d, 0x47, 0xd6, 0x90, 0x0f, 0xf0, 0xce, 0x62, 0x15, 0x6e, 0x86, 0x45, 0xb8, 0x10, 0x3f, 0xc6, 0x6c, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_814_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_814 = { .name = "ecdsa_brainpoolp256r1_sha256_814", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_814_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_814_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_814_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 293 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 815 for ECDSA, tcId is 294 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_815_pubkey[] = { 0x2b, 0xa2, 0x8f, 0x62, 0x36, 0xc5, 0xa7, 0x74, 0xcd, 0x10, 0x4b, 0x03, 0x6d, 0x2e, 0x01, 0x67, 0x11, 0xcb, 0x4a, 0x83, 0xfa, 0x07, 0x8b, 0x51, 0x50, 0xf6, 0x9e, 0x50, 0x98, 0xde, 0x7b, 0x4c, 0xa7, 0xc1, 0x3e, 0xf8, 0xc5, 0x7f, 0xcb, 0xe6, 0x84, 0xce, 0xff, 0x31, 0x2e, 0xf5, 0x3a, 0xf1, 0xb1, 0x43, 0x97, 0xd4, 0x15, 0x4b, 0xa6, 0x10, 0x6a, 0x33, 0x83, 0xaa, 0xed, 0x16, 0xec, 0xb1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_815_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x5b, 0x2d, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_815 = { .name = "ecdsa_brainpoolp256r1_sha256_815", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_815_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_815_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_815_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 294 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 816 for ECDSA, tcId is 295 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_816_pubkey[] = { 0x11, 0x34, 0x89, 0x55, 0x5b, 0xdc, 0x11, 0x23, 0x52, 0xb0, 0x8b, 0x7f, 0xfe, 0xbc, 0xf0, 0x50, 0x90, 0xf9, 0x4d, 0xa6, 0x23, 0x67, 0x64, 0x6b, 0x2e, 0x03, 0xa3, 0x47, 0x88, 0x63, 0x91, 0x4b, 0x4b, 0x4a, 0x0a, 0x43, 0x54, 0x62, 0xa1, 0x22, 0xf6, 0xd9, 0xac, 0x80, 0x13, 0x19, 0xbb, 0xc6, 0xd2, 0xc5, 0x92, 0x28, 0x86, 0x1a, 0x34, 0x14, 0xb5, 0x00, 0xe5, 0xcf, 0x59, 0x43, 0xc9, 0x64, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_816_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_816_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x28, 0x27, 0x37, 0x05, 0x84, 0xfd, 0xeb, 0x9f, 0x5d, 0x5a, 0x9f, 0xb9, 0x57, 0x9a, 0x09, 0x39, 0x0e, 0xfb, 0x6f, 0x9d, 0x99, 0xb6, 0x4f, 0xc1, 0x88, 0xd8, 0xbc, 0xe0, 0x5c, 0x2d, 0x4e, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_816 = { .name = "ecdsa_brainpoolp256r1_sha256_816", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_816_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_816_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_816_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 295 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 817 for ECDSA, tcId is 296 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_817_pubkey[] = { 0x34, 0x22, 0x47, 0x46, 0xef, 0xa8, 0xc5, 0xd4, 0xf4, 0xc6, 0xb8, 0x2d, 0xe4, 0xd7, 0x6d, 0x3e, 0x71, 0x50, 0xc1, 0xb6, 0x9e, 0x23, 0x33, 0x9f, 0x09, 0x8f, 0xf7, 0x69, 0xbc, 0xac, 0x94, 0xbf, 0x94, 0x61, 0x8e, 0x36, 0x24, 0xa5, 0x7d, 0x48, 0xd1, 0x9e, 0x72, 0x86, 0x7d, 0xbc, 0x19, 0x1a, 0x0f, 0xd0, 0x5c, 0xf6, 0xf4, 0xb5, 0xec, 0x49, 0x7b, 0x79, 0x76, 0x26, 0xa5, 0x7b, 0xaa, 0x22, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_817_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_817_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xce, 0x49, 0x37, 0xa0, 0x87, 0x73, 0x1d, 0xf4, 0xfe, 0xbc, 0x2c, 0x3a, 0x81, 0xdd, 0xfb, 0xab, 0x5d, 0xc3, 0xaf, 0x95, 0x08, 0x17, 0xf4, 0x1b, 0x59, 0x0d, 0x15, 0x6e, 0xd4, 0x09, 0xad, 0x28, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_817 = { .name = "ecdsa_brainpoolp256r1_sha256_817", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_817_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_817_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_817_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 296 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 818 for ECDSA, tcId is 297 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_818_pubkey[] = { 0x6f, 0xb0, 0xcd, 0xf3, 0xb0, 0x8d, 0xc5, 0xd8, 0xb7, 0xe5, 0x25, 0x9c, 0x7d, 0x1b, 0xbd, 0x31, 0xa2, 0x23, 0x53, 0x45, 0xb7, 0xb4, 0x45, 0x63, 0x1e, 0x89, 0x4b, 0x56, 0x7d, 0x23, 0xc0, 0x79, 0x53, 0x24, 0x32, 0x07, 0xdf, 0x5c, 0x44, 0x60, 0x11, 0xc1, 0xcf, 0xed, 0xde, 0x6e, 0x53, 0x51, 0x95, 0x8a, 0xff, 0xa8, 0xf2, 0x74, 0xfe, 0x5a, 0xf4, 0x35, 0x75, 0x9d, 0xe8, 0x7d, 0xb3, 0x43, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_818_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x91, 0x82, 0x7d, 0x03, 0xbb, 0x6d, 0xac, 0x31, 0x94, 0x0b, 0xa5, 0x6e, 0xd8, 0x84, 0x89, 0x04, 0x8f, 0xf1, 0x73, 0xf0, 0xbf, 0x20, 0xca, 0xb2, 0x0d, 0xcc, 0x08, 0x6f, 0xca, 0x37, 0xf2, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_818 = { .name = "ecdsa_brainpoolp256r1_sha256_818", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_818_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_818_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_818_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 297 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 819 for ECDSA, tcId is 298 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_819_pubkey[] = { 0x0b, 0x8d, 0x3b, 0xef, 0x12, 0xeb, 0xab, 0x43, 0xf2, 0xf6, 0xf6, 0x61, 0x8f, 0x08, 0x43, 0xd5, 0xf4, 0x5d, 0x97, 0x87, 0x4f, 0x26, 0xf9, 0xa3, 0x6b, 0x78, 0x8c, 0xb7, 0xa6, 0x9e, 0xcf, 0x5f, 0x85, 0x55, 0x88, 0xc9, 0x9b, 0x38, 0x39, 0xca, 0x93, 0x61, 0xdd, 0xc7, 0x76, 0x45, 0xf7, 0x59, 0x2a, 0xd3, 0x71, 0x43, 0x8e, 0xe3, 0xe1, 0x86, 0xc7, 0x40, 0x81, 0xc4, 0x81, 0xdd, 0x52, 0x95, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_819_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_819_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_819 = { .name = "ecdsa_brainpoolp256r1_sha256_819", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_819_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_819_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_819_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 298 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 820 for ECDSA, tcId is 299 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_820_pubkey[] = { 0x6d, 0x24, 0x98, 0x53, 0x42, 0xa4, 0x5a, 0x55, 0xfd, 0x99, 0xe4, 0x75, 0x21, 0xfe, 0x3e, 0x99, 0x1b, 0x8a, 0x1d, 0x37, 0x6f, 0xa7, 0x38, 0x99, 0xd3, 0xba, 0xcc, 0x06, 0x7c, 0x12, 0xee, 0x0d, 0x65, 0x42, 0xf1, 0x48, 0x59, 0x9f, 0xcc, 0xb9, 0x9b, 0x1b, 0xa2, 0x8d, 0x38, 0x05, 0x81, 0x42, 0x92, 0xa9, 0x9b, 0xff, 0xe3, 0x71, 0xdf, 0x27, 0x7b, 0x09, 0xe8, 0xad, 0xa1, 0x25, 0x3d, 0xcd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_820_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_820_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_820 = { .name = "ecdsa_brainpoolp256r1_sha256_820", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_820_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_820_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_820_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 299 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 821 for ECDSA, tcId is 300 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_821_pubkey[] = { 0x41, 0x25, 0xe4, 0x68, 0x20, 0xf4, 0x12, 0x06, 0xb6, 0x70, 0x88, 0x2a, 0x9d, 0x8d, 0x51, 0xb6, 0xba, 0xc3, 0x90, 0x91, 0x15, 0x0c, 0x9c, 0xb3, 0x3b, 0x6d, 0x00, 0x9e, 0x0c, 0xff, 0x52, 0x23, 0x65, 0x74, 0x92, 0x40, 0x62, 0x2b, 0x40, 0xd7, 0x0a, 0x63, 0x40, 0x79, 0x52, 0xc1, 0xb8, 0x76, 0x1c, 0x9f, 0x8e, 0x85, 0xab, 0xa6, 0xf0, 0x3b, 0xbc, 0x72, 0x19, 0xe2, 0x4e, 0x6f, 0xb2, 0x76, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_821_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_821_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x28, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_821 = { .name = "ecdsa_brainpoolp256r1_sha256_821", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_821_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_821_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_821_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 300 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 822 for ECDSA, tcId is 301 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_822_pubkey[] = { 0x91, 0xba, 0x17, 0x06, 0xa1, 0x9c, 0xe5, 0x8f, 0xac, 0xa2, 0x63, 0x66, 0xdc, 0xed, 0x29, 0x33, 0x99, 0x45, 0x0e, 0xfa, 0x48, 0x8f, 0x2c, 0x4b, 0xaa, 0x95, 0x69, 0x3b, 0x97, 0x4d, 0x07, 0x5d, 0x5e, 0x84, 0x01, 0x56, 0x5a, 0x37, 0xb0, 0x5b, 0x93, 0x51, 0xe4, 0x08, 0xaf, 0x54, 0x2b, 0xf0, 0xf7, 0x95, 0x7e, 0x5e, 0xed, 0x18, 0x2a, 0xfe, 0xab, 0xea, 0xfa, 0x2b, 0xf7, 0xbb, 0xbb, 0x47, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_822_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_822 = { .name = "ecdsa_brainpoolp256r1_sha256_822", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_822_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_822_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_822_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 301 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 823 for ECDSA, tcId is 302 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_823_pubkey[] = { 0x91, 0xba, 0x17, 0x06, 0xa1, 0x9c, 0xe5, 0x8f, 0xac, 0xa2, 0x63, 0x66, 0xdc, 0xed, 0x29, 0x33, 0x99, 0x45, 0x0e, 0xfa, 0x48, 0x8f, 0x2c, 0x4b, 0xaa, 0x95, 0x69, 0x3b, 0x97, 0x4d, 0x07, 0x5d, 0x5e, 0x84, 0x01, 0x56, 0x5a, 0x37, 0xb0, 0x5b, 0x93, 0x51, 0xe4, 0x08, 0xaf, 0x54, 0x2b, 0xf0, 0xf7, 0x95, 0x7e, 0x5e, 0xed, 0x18, 0x2a, 0xfe, 0xab, 0xea, 0xfa, 0x2b, 0xf7, 0xbb, 0xbb, 0x47, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_823_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_823_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_823 = { .name = "ecdsa_brainpoolp256r1_sha256_823", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_823_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_823_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_823_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 302 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 824 for ECDSA, tcId is 303 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_824_pubkey[] = { 0x25, 0xd1, 0x75, 0x70, 0xe4, 0xba, 0xe1, 0xe4, 0x68, 0xe6, 0xdd, 0x09, 0x75, 0xb3, 0x82, 0x36, 0x80, 0x61, 0xe0, 0xc7, 0x04, 0x24, 0x1c, 0x1d, 0x18, 0xfd, 0x5b, 0xaa, 0x8c, 0xa8, 0xdc, 0x13, 0x5a, 0xca, 0xdc, 0xd1, 0x39, 0x92, 0xf6, 0x66, 0x5b, 0x46, 0x9c, 0x9f, 0x9a, 0xb7, 0x79, 0x7e, 0x3c, 0x4b, 0x88, 0x1c, 0x6d, 0x7f, 0x4d, 0x26, 0x01, 0xc9, 0x6a, 0x15, 0x36, 0xf7, 0x6d, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_824_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_824_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_824 = { .name = "ecdsa_brainpoolp256r1_sha256_824", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_824_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_824_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_824_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 303 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 825 for ECDSA, tcId is 304 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_825_pubkey[] = { 0x1d, 0xc3, 0x32, 0x5f, 0xfa, 0x55, 0xe1, 0x79, 0xe2, 0x17, 0x1a, 0x66, 0xb2, 0xe7, 0x53, 0x4a, 0xe1, 0x2c, 0xfc, 0x29, 0x2a, 0xf2, 0xe0, 0xfb, 0xf1, 0xc3, 0xfc, 0xce, 0x55, 0x58, 0xfc, 0x6a, 0x24, 0x20, 0xab, 0xcd, 0xb7, 0xdf, 0x8c, 0xf3, 0x86, 0x34, 0x64, 0x82, 0x64, 0xa6, 0x81, 0xd5, 0xed, 0x19, 0x5b, 0xf1, 0x6a, 0x97, 0x0f, 0xfa, 0x68, 0xab, 0x25, 0x0b, 0x34, 0xa9, 0x35, 0x14, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_825_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_825_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_825 = { .name = "ecdsa_brainpoolp256r1_sha256_825", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_825_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_825_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_825_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 304 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 826 for ECDSA, tcId is 305 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_826_pubkey[] = { 0x3f, 0xff, 0xa6, 0xdb, 0xaf, 0x66, 0x7b, 0x0a, 0x94, 0xe5, 0xf8, 0x6b, 0x37, 0x74, 0xb9, 0x75, 0x97, 0x1a, 0x4d, 0x24, 0x39, 0x60, 0x7d, 0xef, 0x4e, 0x5d, 0xe1, 0xd1, 0x78, 0x20, 0xa3, 0xb2, 0x1b, 0xf3, 0x66, 0x13, 0xb5, 0x0b, 0x92, 0x52, 0x64, 0x55, 0x18, 0x15, 0xc5, 0xda, 0x78, 0x3b, 0xd1, 0x58, 0xaa, 0xa1, 0xc6, 0x24, 0x4b, 0x40, 0xa9, 0xfa, 0x31, 0xa2, 0xa4, 0x33, 0xf8, 0xe8, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_826_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_826_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_826 = { .name = "ecdsa_brainpoolp256r1_sha256_826", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_826_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_826_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_826_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 305 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 827 for ECDSA, tcId is 306 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_827_pubkey[] = { 0x8a, 0xfd, 0x47, 0xeb, 0x06, 0x67, 0x86, 0x0b, 0xec, 0x98, 0xd5, 0xdc, 0xd2, 0xf6, 0x0d, 0xa9, 0xea, 0xc1, 0xae, 0x99, 0x62, 0x05, 0x69, 0x89, 0x2f, 0x14, 0xe0, 0x94, 0xd6, 0x35, 0x87, 0x2a, 0x5e, 0x8f, 0x0b, 0xc6, 0x7b, 0x98, 0xa2, 0x33, 0xad, 0xe7, 0x15, 0xc0, 0x4d, 0x9d, 0xaa, 0xb1, 0x1a, 0x27, 0x51, 0x7a, 0x92, 0xcf, 0x26, 0x51, 0xc9, 0xe5, 0xf2, 0xfd, 0xe4, 0xe2, 0xdb, 0x98, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_827_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_827_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_827 = { .name = "ecdsa_brainpoolp256r1_sha256_827", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_827_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_827_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_827_sig, .siglen = 64, .result = -1, .comment = "u1 == 1, tcId is 306 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 828 for ECDSA, tcId is 307 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_828_pubkey[] = { 0x08, 0x76, 0x61, 0x66, 0x36, 0xa8, 0xdb, 0xc8, 0x21, 0x60, 0xac, 0x01, 0xaf, 0x29, 0x41, 0x35, 0x3b, 0xa0, 0xee, 0xa4, 0xa3, 0xb8, 0xfe, 0x31, 0x69, 0x6b, 0x47, 0x31, 0x7d, 0x49, 0x72, 0xc9, 0x23, 0x18, 0x00, 0x73, 0x06, 0x1d, 0x27, 0x98, 0x4e, 0xcf, 0x49, 0x1f, 0x39, 0x40, 0x04, 0xc3, 0xa4, 0x84, 0x6d, 0x77, 0x3f, 0x58, 0xdc, 0x2a, 0xb5, 0xe4, 0x3d, 0xcb, 0xf9, 0x68, 0xd0, 0x27, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_828_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_828_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_828 = { .name = "ecdsa_brainpoolp256r1_sha256_828", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_828_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_828_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_828_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 307 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 829 for ECDSA, tcId is 308 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_829_pubkey[] = { 0x0f, 0xab, 0xb0, 0x52, 0x21, 0x7e, 0xae, 0x8e, 0x63, 0xfe, 0xa4, 0xee, 0xa0, 0x99, 0x53, 0xd5, 0x18, 0x62, 0x42, 0x7f, 0x34, 0x13, 0x07, 0xd8, 0x19, 0xff, 0x6e, 0x93, 0x3b, 0xf7, 0x2b, 0xa9, 0x4b, 0x89, 0x7f, 0x2c, 0x4a, 0x4c, 0xf5, 0x70, 0x54, 0xc3, 0x63, 0xc7, 0x20, 0xda, 0x3d, 0x24, 0x24, 0x71, 0xcc, 0x8e, 0x49, 0x3b, 0xec, 0xb0, 0xde, 0x02, 0x22, 0x51, 0xd2, 0xee, 0x4c, 0x8c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_829_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_829_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_829 = { .name = "ecdsa_brainpoolp256r1_sha256_829", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_829_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_829_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_829_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 308 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 830 for ECDSA, tcId is 309 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_830_pubkey[] = { 0x72, 0xeb, 0xad, 0x74, 0x9b, 0x50, 0x4c, 0x87, 0x4d, 0x21, 0xbc, 0x5e, 0x4b, 0xba, 0x54, 0x5d, 0xd4, 0x2e, 0xb5, 0xfb, 0xf7, 0x8a, 0xf4, 0x20, 0x43, 0xf5, 0xce, 0xf1, 0x0a, 0xeb, 0x3a, 0xd7, 0x45, 0x22, 0x74, 0x64, 0xe1, 0xe9, 0xce, 0xf6, 0x62, 0xf4, 0x3f, 0xc8, 0x0d, 0x4c, 0xe7, 0xeb, 0x7e, 0xb6, 0x15, 0xa2, 0x36, 0x99, 0xd4, 0x8e, 0x89, 0xb2, 0x78, 0xab, 0xd4, 0x6c, 0xcc, 0x46, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_830_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_830_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x71, 0x52, 0x3a, 0x92, 0x6b, 0xf4, 0x71, 0x28, 0x29, 0x99, 0x5c, 0x60, 0x69, 0x02, 0x5e, 0x4b, 0xb2, 0xd0, 0xfc, 0x6d, 0x23, 0x96, 0x6f, 0x4f, 0xb5, 0x69, 0x5f, 0x01, 0xba, 0x30, 0x39, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_830 = { .name = "ecdsa_brainpoolp256r1_sha256_830", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_830_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_830_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_830_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 309 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 831 for ECDSA, tcId is 310 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_831_pubkey[] = { 0x74, 0x4e, 0x21, 0x8a, 0x04, 0xb3, 0x14, 0x71, 0xb0, 0x5e, 0x67, 0x9c, 0x94, 0x81, 0x44, 0x6b, 0xcd, 0x72, 0xa4, 0xd0, 0xfc, 0xa7, 0xa7, 0xaf, 0x1a, 0x1f, 0xe2, 0xf5, 0x74, 0xd9, 0x36, 0x2f, 0x60, 0xc0, 0xc5, 0x28, 0x43, 0xd8, 0xd7, 0x2c, 0xd6, 0x36, 0x15, 0x3f, 0x0f, 0x51, 0x0a, 0x09, 0x08, 0x9f, 0xc4, 0x47, 0x83, 0x72, 0xdf, 0xc5, 0x0e, 0x5b, 0x91, 0xd5, 0x30, 0x1b, 0xa7, 0x5e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_831_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_831_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x05, 0xca, 0x53, 0xb2, 0xd9, 0xe4, 0xa2, 0xe1, 0xe4, 0xf4, 0x72, 0x76, 0xfc, 0xdf, 0xb1, 0x7b, 0x26, 0xa9, 0xcf, 0x0a, 0x7c, 0x97, 0x21, 0xda, 0xd2, 0x82, 0x03, 0xd4, 0x11, 0x07, 0xfd, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_831 = { .name = "ecdsa_brainpoolp256r1_sha256_831", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_831_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_831_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_831_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 310 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 832 for ECDSA, tcId is 311 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_832_pubkey[] = { 0x7e, 0xa5, 0x3d, 0x3c, 0x46, 0x35, 0xa4, 0xd5, 0xb6, 0x0d, 0x79, 0xaa, 0xc7, 0x9d, 0x97, 0x4c, 0x75, 0x92, 0x63, 0x36, 0x34, 0x72, 0x14, 0x6a, 0x46, 0x05, 0x28, 0x0d, 0x93, 0x5f, 0xfc, 0x75, 0x59, 0x79, 0x04, 0x03, 0xc9, 0x64, 0x59, 0xb2, 0x04, 0x77, 0xea, 0xa4, 0x37, 0xb3, 0xc7, 0xde, 0xcd, 0x5e, 0x69, 0x0f, 0xaa, 0x94, 0x0c, 0x08, 0x91, 0xde, 0x0c, 0xd0, 0x7d, 0x41, 0x81, 0x3c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_832_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_832_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x54, 0x48, 0xaa, 0x82, 0xfc, 0x57, 0x74, 0x0b, 0x2e, 0x1e, 0xbd, 0xf9, 0x89, 0xba, 0xa1, 0x45, 0xb0, 0x18, 0xb4, 0x23, 0xb3, 0x76, 0x1f, 0xeb, 0x05, 0x59, 0x59, 0xeb, 0x6a, 0x01, 0xf1, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_832 = { .name = "ecdsa_brainpoolp256r1_sha256_832", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_832_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_832_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_832_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 311 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 833 for ECDSA, tcId is 312 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_833_pubkey[] = { 0x75, 0x04, 0x62, 0xa1, 0x63, 0x65, 0x57, 0x46, 0xaf, 0x66, 0xba, 0x3e, 0xb4, 0x80, 0x09, 0xa4, 0x90, 0xd9, 0x70, 0x79, 0x92, 0x80, 0x58, 0x6c, 0xfe, 0x59, 0x31, 0x63, 0x65, 0xdc, 0x4e, 0xf0, 0xa2, 0xf1, 0x56, 0x72, 0x57, 0xbd, 0x9a, 0xa1, 0xdc, 0xca, 0x3c, 0xd2, 0x76, 0xff, 0xae, 0xb1, 0xdd, 0x85, 0xce, 0xa2, 0x8d, 0x88, 0x8a, 0x98, 0x64, 0x2b, 0xf0, 0x9a, 0x98, 0xf6, 0x9f, 0x11, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_833_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_833_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0xbf, 0xcc, 0xe6, 0x9b, 0x89, 0xef, 0xf5, 0x45, 0xfb, 0x0a, 0x67, 0xd2, 0x58, 0x1a, 0x5f, 0x25, 0x34, 0x84, 0xef, 0x53, 0x8b, 0x9b, 0x55, 0xfa, 0x86, 0x2d, 0xfd, 0x2d, 0x48, 0x8d, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_833 = { .name = "ecdsa_brainpoolp256r1_sha256_833", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_833_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_833_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_833_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 312 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 834 for ECDSA, tcId is 313 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_834_pubkey[] = { 0x32, 0x3a, 0xe5, 0x75, 0x4b, 0x41, 0x75, 0x52, 0xcf, 0x96, 0x8f, 0x5f, 0x3e, 0xea, 0x71, 0x87, 0xf7, 0xb1, 0x72, 0x6e, 0x8c, 0x2e, 0x51, 0x0f, 0x98, 0xd2, 0x64, 0x30, 0xac, 0x58, 0x49, 0xbc, 0x32, 0x71, 0x01, 0xd8, 0x2a, 0xdf, 0x87, 0xc9, 0x32, 0xe8, 0xea, 0xa6, 0xa5, 0x7e, 0x1d, 0x11, 0xbd, 0x65, 0xdc, 0x8f, 0x40, 0x4c, 0x11, 0x3f, 0x65, 0xab, 0xaa, 0x6e, 0xea, 0xf5, 0xc7, 0xc4, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_834_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_834_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7a, 0x45, 0x9e, 0x04, 0x73, 0x95, 0xd8, 0x1d, 0x3b, 0x00, 0xf4, 0xb8, 0xd5, 0xad, 0x34, 0x44, 0x2b, 0x35, 0xde, 0xc5, 0xe6, 0xc1, 0xb4, 0x5a, 0x06, 0x78, 0xe6, 0x5a, 0x1f, 0xe9, 0xe9, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_834 = { .name = "ecdsa_brainpoolp256r1_sha256_834", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_834_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_834_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_834_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 313 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 835 for ECDSA, tcId is 314 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_835_pubkey[] = { 0x37, 0xa1, 0x05, 0xe3, 0xce, 0x3f, 0xb6, 0x36, 0x73, 0x30, 0x32, 0xd1, 0xca, 0x56, 0xb4, 0xc6, 0x59, 0xb4, 0x51, 0xf6, 0x4f, 0x4b, 0xa7, 0x37, 0x8b, 0x08, 0x79, 0x87, 0xe7, 0xa5, 0x44, 0xd2, 0x78, 0x2b, 0xad, 0x9b, 0x16, 0x54, 0xf2, 0x77, 0x0d, 0x7a, 0x3e, 0xe3, 0x5b, 0x67, 0x2a, 0x36, 0x6f, 0x68, 0x5b, 0xc7, 0x19, 0x18, 0x89, 0xff, 0x2f, 0xa5, 0xc6, 0xb9, 0x4e, 0xbe, 0x7a, 0xb8, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_835_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_835_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3b, 0x77, 0x39, 0xbb, 0xe1, 0x04, 0x8b, 0x69, 0xfd, 0x05, 0xf9, 0x26, 0x2f, 0x62, 0x8e, 0x03, 0xb0, 0x77, 0x0e, 0x7e, 0xcd, 0x82, 0x33, 0x7f, 0x14, 0x82, 0xa7, 0x2d, 0xb0, 0x29, 0x32, 0x32, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_835 = { .name = "ecdsa_brainpoolp256r1_sha256_835", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_835_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_835_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_835_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 314 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 836 for ECDSA, tcId is 315 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_836_pubkey[] = { 0x13, 0xdd, 0x59, 0x45, 0x4f, 0x6a, 0xf3, 0xe9, 0xdb, 0x11, 0x5b, 0x7e, 0xc8, 0xc3, 0xa1, 0xc8, 0xd3, 0x08, 0xfd, 0xcb, 0x49, 0x63, 0xc3, 0xb8, 0xea, 0x12, 0x64, 0xe4, 0xaf, 0xda, 0x65, 0x2c, 0x5d, 0x26, 0x0b, 0x7f, 0xc9, 0xbf, 0xd2, 0x00, 0x89, 0x6d, 0x22, 0x9f, 0x3c, 0x8d, 0xaa, 0xb9, 0xdf, 0x2f, 0x55, 0xaa, 0x9a, 0xd9, 0x5d, 0x4e, 0xa7, 0x6a, 0xed, 0x8d, 0x74, 0xc5, 0x49, 0x4d, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_836_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_836_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x76, 0xee, 0x73, 0x77, 0xc2, 0x09, 0x16, 0xd3, 0xfa, 0x0b, 0xf2, 0x4c, 0x5e, 0xc5, 0x1c, 0x07, 0x60, 0xee, 0x1c, 0xfd, 0x9b, 0x04, 0x66, 0xfe, 0x29, 0x05, 0x4e, 0x5b, 0x60, 0x52, 0x64, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_836 = { .name = "ecdsa_brainpoolp256r1_sha256_836", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_836_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_836_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_836_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 315 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 837 for ECDSA, tcId is 316 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_837_pubkey[] = { 0x2c, 0x1d, 0xc5, 0x64, 0x59, 0xbf, 0x09, 0xdf, 0x50, 0xfb, 0x2d, 0x96, 0x2f, 0x59, 0x89, 0xf3, 0x64, 0x30, 0x21, 0xc5, 0xc3, 0x60, 0x36, 0x3e, 0x10, 0xe6, 0x95, 0xa7, 0x0b, 0x59, 0x42, 0xe8, 0x62, 0x16, 0xd3, 0xca, 0x0c, 0xca, 0x31, 0xdb, 0xd9, 0x2a, 0x4d, 0x28, 0xbf, 0x95, 0x14, 0x37, 0xf6, 0xf4, 0x5d, 0xb4, 0x1e, 0x8e, 0x41, 0xfd, 0xf7, 0x24, 0x14, 0xa2, 0x93, 0xf5, 0x30, 0x87, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_837_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_837_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4a, 0x99, 0x28, 0x24, 0xc7, 0x37, 0xb0, 0x0f, 0x02, 0xd2, 0x3d, 0x2f, 0x2e, 0x3d, 0xec, 0xf0, 0x90, 0xb2, 0x8f, 0xfa, 0x0e, 0x90, 0xe6, 0xd1, 0xe5, 0xdd, 0x15, 0x70, 0x70, 0x71, 0x9f, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_837 = { .name = "ecdsa_brainpoolp256r1_sha256_837", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_837_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_837_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_837_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 316 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 838 for ECDSA, tcId is 317 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_838_pubkey[] = { 0x13, 0x7d, 0x6f, 0xdf, 0x83, 0x6b, 0x18, 0x24, 0x37, 0x8c, 0x08, 0xb3, 0x5f, 0xa7, 0xeb, 0xe4, 0xe8, 0x07, 0xd8, 0xa2, 0x01, 0x05, 0xce, 0x9c, 0xb3, 0xcd, 0x28, 0x1f, 0x0a, 0x47, 0xc9, 0xc3, 0x07, 0xd6, 0x47, 0x5d, 0x49, 0x58, 0xc1, 0x6d, 0x95, 0x0f, 0x04, 0x39, 0xd3, 0xdb, 0xf8, 0x6c, 0x2d, 0x7e, 0x2b, 0x12, 0xe8, 0xb1, 0x37, 0xef, 0xc6, 0x2d, 0xd1, 0xc7, 0x23, 0xb8, 0x3a, 0x62, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_838_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_838_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9c, 0x09, 0x2d, 0x16, 0x5e, 0xf1, 0xb1, 0x1a, 0x82, 0xb5, 0x9c, 0x73, 0xaa, 0xb3, 0x49, 0x66, 0x31, 0xe3, 0x03, 0x20, 0x38, 0xfe, 0xda, 0x23, 0x6d, 0xb7, 0xb0, 0xf5, 0xa8, 0xe0, 0xca, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_838 = { .name = "ecdsa_brainpoolp256r1_sha256_838", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_838_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_838_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_838_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 317 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 839 for ECDSA, tcId is 318 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_839_pubkey[] = { 0x64, 0x02, 0x13, 0xbe, 0x16, 0x98, 0xb1, 0x66, 0xf0, 0xc5, 0x4e, 0x58, 0x8e, 0x1b, 0x57, 0xa6, 0x48, 0x26, 0xbf, 0x84, 0x8a, 0xda, 0xbf, 0xef, 0x60, 0x68, 0x1d, 0x77, 0x74, 0x7d, 0x2c, 0xa8, 0x64, 0x6e, 0x45, 0xd9, 0x61, 0x41, 0x9d, 0x4a, 0xd1, 0x33, 0x8c, 0x36, 0x12, 0x28, 0xe1, 0xc6, 0xb6, 0x61, 0x53, 0x98, 0x58, 0x2c, 0x0e, 0x3e, 0x97, 0xf7, 0xeb, 0xc8, 0x5a, 0x50, 0x44, 0x23, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_839_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_839_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa9, 0x04, 0x49, 0xe8, 0x7d, 0x9d, 0xe3, 0xeb, 0xed, 0x92, 0xa2, 0x27, 0x73, 0x5e, 0x45, 0x32, 0x5b, 0x1d, 0x2d, 0x77, 0x4b, 0x48, 0x76, 0xa8, 0x6d, 0x08, 0x63, 0x34, 0x94, 0x71, 0xac, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_839 = { .name = "ecdsa_brainpoolp256r1_sha256_839", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_839_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_839_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_839_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 840 for ECDSA, tcId is 319 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_840_pubkey[] = { 0x26, 0x91, 0x54, 0xca, 0x58, 0x31, 0x75, 0x52, 0xc6, 0x55, 0xd2, 0xa9, 0xb3, 0x80, 0x4d, 0xd9, 0x4c, 0x27, 0x11, 0x14, 0x5b, 0x9c, 0xd9, 0x3c, 0x36, 0x0f, 0x2d, 0xfe, 0x34, 0xcc, 0x19, 0x71, 0x98, 0x04, 0x6c, 0xc9, 0x0c, 0xc6, 0xa8, 0xac, 0x48, 0xef, 0x7b, 0xac, 0xc5, 0xcb, 0x7e, 0x57, 0x33, 0x4f, 0xa9, 0x1f, 0xac, 0xba, 0xdb, 0x48, 0x95, 0x2c, 0x9f, 0xee, 0x54, 0x3d, 0x1b, 0xb5, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_840_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_840_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x31, 0x04, 0x28, 0xc8, 0x0a, 0x06, 0xda, 0x59, 0x71, 0x98, 0x19, 0xa0, 0xa3, 0xdb, 0xf6, 0x65, 0x8f, 0xab, 0x99, 0x38, 0xca, 0x85, 0x1c, 0xbd, 0x9c, 0x0a, 0xae, 0x86, 0x40, 0x58, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_840 = { .name = "ecdsa_brainpoolp256r1_sha256_840", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_840_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_840_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_840_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 841 for ECDSA, tcId is 320 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_841_pubkey[] = { 0x24, 0x0e, 0x0b, 0x64, 0xce, 0xe2, 0xe0, 0xb8, 0x89, 0x0c, 0x2f, 0xa8, 0x2d, 0xe5, 0x84, 0x8a, 0x56, 0x42, 0xef, 0x0f, 0x7b, 0x24, 0x14, 0xf8, 0x8f, 0x58, 0x52, 0x81, 0xdf, 0x7a, 0x1f, 0xf5, 0x3a, 0x59, 0x90, 0xf8, 0x60, 0xda, 0x30, 0x53, 0xf8, 0x21, 0xbe, 0xa9, 0x14, 0x05, 0x9c, 0xed, 0x85, 0xc9, 0xc2, 0x39, 0x0b, 0x0d, 0x86, 0x05, 0x32, 0xdb, 0xcc, 0xca, 0x7f, 0xf6, 0x66, 0x92, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_841_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_841_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa1, 0x4b, 0xda, 0x4f, 0x5b, 0x17, 0xb5, 0x69, 0x66, 0xf7, 0x5e, 0xde, 0x22, 0x34, 0x03, 0x38, 0xd2, 0x3a, 0xc4, 0x13, 0xfa, 0x7e, 0xf4, 0x2f, 0x54, 0x5b, 0x08, 0xc4, 0x7d, 0xbc, 0x59, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_841 = { .name = "ecdsa_brainpoolp256r1_sha256_841", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_841_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_841_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_841_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 842 for ECDSA, tcId is 321 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_842_pubkey[] = { 0x96, 0xf3, 0xcb, 0x5e, 0xb0, 0xc3, 0x3b, 0xe2, 0x05, 0xec, 0x05, 0x8a, 0x22, 0x09, 0x3d, 0x73, 0x9f, 0xe8, 0x0a, 0x7e, 0xcc, 0x87, 0x43, 0x99, 0xc1, 0x4f, 0x7f, 0x6c, 0x38, 0xcf, 0xcc, 0x51, 0x47, 0xb3, 0xec, 0xca, 0xec, 0xc9, 0xad, 0xd2, 0xb1, 0xdf, 0xfc, 0x98, 0x8f, 0x13, 0xdc, 0xab, 0x15, 0xb7, 0xe9, 0x10, 0xd0, 0x25, 0x0e, 0x70, 0xa1, 0xd7, 0x9b, 0x3b, 0x93, 0x1c, 0x32, 0xed, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_842_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_842_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x32, 0xdf, 0xe6, 0x73, 0x4d, 0xc4, 0xf7, 0xfa, 0xa2, 0xfd, 0x85, 0x33, 0xe9, 0x2c, 0x0d, 0x2f, 0x92, 0x9a, 0x42, 0x77, 0xa9, 0xc5, 0xcd, 0xaa, 0xfd, 0x43, 0x16, 0xfe, 0x96, 0xa4, 0x46, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_842 = { .name = "ecdsa_brainpoolp256r1_sha256_842", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_842_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_842_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_842_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 843 for ECDSA, tcId is 322 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_843_pubkey[] = { 0x10, 0x3b, 0x1b, 0xf6, 0x34, 0x3d, 0x57, 0x26, 0x0f, 0x65, 0x2d, 0x27, 0x2a, 0xae, 0xff, 0x6c, 0xfa, 0x43, 0x9f, 0x15, 0x83, 0x33, 0x5e, 0xba, 0x66, 0xfa, 0x72, 0xd0, 0x0e, 0xff, 0x7f, 0x85, 0x20, 0xf2, 0xbb, 0x03, 0x5b, 0xd0, 0x56, 0xc6, 0x7c, 0xa2, 0x2c, 0xa9, 0x52, 0xab, 0xb5, 0xe1, 0xbc, 0xb6, 0x8d, 0x67, 0xca, 0x81, 0x79, 0x0d, 0x24, 0x09, 0x7f, 0x13, 0xd4, 0x52, 0x09, 0xa1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_843_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_843_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x63, 0x53, 0xc7, 0xf3, 0xe0, 0xa4, 0xe3, 0x3e, 0xbf, 0x77, 0x58, 0xda, 0xdf, 0x2b, 0xd9, 0xd0, 0x84, 0x13, 0x28, 0xe1, 0x3c, 0x75, 0xe2, 0x52, 0x85, 0x5f, 0x5a, 0x2b, 0x87, 0xc2, 0xc7, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_843 = { .name = "ecdsa_brainpoolp256r1_sha256_843", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_843_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_843_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_843_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 322 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 844 for ECDSA, tcId is 323 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_844_pubkey[] = { 0x95, 0x9b, 0x3b, 0xf3, 0x72, 0x30, 0x19, 0x93, 0xb3, 0x7e, 0x20, 0xb4, 0x34, 0x4f, 0x13, 0xc0, 0x6d, 0x5c, 0x1c, 0x53, 0xc7, 0x73, 0x7f, 0x16, 0x6e, 0xfb, 0x94, 0x83, 0x2c, 0x3b, 0x9b, 0xbb, 0x40, 0xd3, 0x5e, 0xf4, 0x6e, 0x4c, 0xfa, 0xd4, 0x75, 0xdd, 0xd1, 0xa1, 0xd9, 0x60, 0x9f, 0xec, 0xa7, 0x06, 0x97, 0x12, 0xd3, 0x0b, 0xdf, 0x46, 0x38, 0xd4, 0xc8, 0x8b, 0xc9, 0xa1, 0x21, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_844_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_844_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0x89, 0x9b, 0xc6, 0xff, 0x5e, 0x72, 0x33, 0x8f, 0x3c, 0x98, 0x47, 0xfa, 0x65, 0x31, 0xc4, 0x33, 0x7f, 0xde, 0x3f, 0xcf, 0x1c, 0x8c, 0x32, 0xf7, 0x68, 0xfb, 0xa3, 0xa4, 0x02, 0xa9, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_844 = { .name = "ecdsa_brainpoolp256r1_sha256_844", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_844_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_844_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_844_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 323 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 845 for ECDSA, tcId is 324 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_845_pubkey[] = { 0x6e, 0x69, 0xb1, 0x7d, 0x83, 0x89, 0x4e, 0x2e, 0x71, 0xff, 0xce, 0x35, 0x1b, 0x53, 0x45, 0x9c, 0x0b, 0xb2, 0x9b, 0xec, 0x37, 0x9f, 0xf4, 0x35, 0xf2, 0x3c, 0x01, 0xa9, 0xb3, 0x7d, 0xf4, 0x9e, 0x3b, 0xa1, 0x05, 0x3a, 0xd8, 0x42, 0x36, 0xd8, 0x2c, 0xf7, 0xc7, 0x62, 0x36, 0x2b, 0x37, 0xb2, 0x4e, 0x3b, 0x0e, 0xe1, 0xf8, 0xea, 0x6c, 0x54, 0x3a, 0x25, 0x91, 0xdc, 0xb6, 0x68, 0x1a, 0x8f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_845_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_845_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x65, 0x5c, 0x5e, 0x4f, 0x1c, 0xef, 0xca, 0x22, 0xf4, 0x13, 0xa6, 0x12, 0xe5, 0xbf, 0xdd, 0x7b, 0xa9, 0xae, 0x71, 0x05, 0x3f, 0x68, 0xb0, 0xc7, 0x4d, 0x9a, 0x73, 0x59, 0x00, 0x13, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_845 = { .name = "ecdsa_brainpoolp256r1_sha256_845", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_845_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_845_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_845_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 324 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 846 for ECDSA, tcId is 325 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_846_pubkey[] = { 0x33, 0x6f, 0xc2, 0x8e, 0x1f, 0x25, 0x04, 0x85, 0x27, 0x67, 0x47, 0xdf, 0xc3, 0x48, 0x59, 0xb4, 0x74, 0x16, 0x67, 0xb3, 0xac, 0x46, 0xa0, 0xf6, 0x38, 0x4d, 0xec, 0xc1, 0xac, 0x79, 0x03, 0x04, 0x40, 0x12, 0x06, 0xb5, 0x50, 0x8a, 0xa0, 0x66, 0x01, 0xa2, 0x24, 0x6e, 0x73, 0x81, 0xdf, 0xec, 0xca, 0x6a, 0xdb, 0x2b, 0x19, 0x7a, 0xe1, 0x45, 0x49, 0xa2, 0x4c, 0x35, 0x5c, 0xd5, 0x3b, 0xe1, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_846_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_846_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x03, 0x0d, 0xbf, 0x01, 0xd8, 0xc9, 0xde, 0x29, 0x00, 0xdc, 0x38, 0x45, 0xfd, 0xa4, 0xe4, 0xc6, 0xbc, 0x04, 0x9c, 0x4c, 0xd5, 0x71, 0x7a, 0x9c, 0x62, 0x9b, 0x9e, 0xd2, 0x9d, 0x18, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_846 = { .name = "ecdsa_brainpoolp256r1_sha256_846", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_846_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_846_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_846_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 325 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 847 for ECDSA, tcId is 326 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_847_pubkey[] = { 0x91, 0x3d, 0x9c, 0xe3, 0x5b, 0x9c, 0x73, 0x20, 0x35, 0x78, 0xe2, 0x55, 0xd4, 0xdd, 0x35, 0xff, 0x20, 0x21, 0x2d, 0x35, 0x72, 0x27, 0xd2, 0x6b, 0x8a, 0x95, 0x91, 0x80, 0x66, 0x5b, 0x54, 0x2b, 0xa5, 0x03, 0xd9, 0x22, 0xd3, 0xfd, 0x65, 0xa0, 0x7e, 0xca, 0x18, 0xc0, 0xa4, 0xe2, 0xd3, 0xf2, 0xcf, 0x7c, 0x05, 0x92, 0x8b, 0x40, 0x64, 0x58, 0xcb, 0x28, 0x6e, 0x11, 0xdc, 0x62, 0xdc, 0xb6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_847_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa1, 0xdb, 0x72, 0x93, 0xb6, 0xf0, 0x15, 0x94, 0xb8, 0x08, 0x71, 0x8e, 0x61, 0xa4, 0xd6, 0x42, 0xdf, 0xf4, 0xfe, 0xe2, 0xfb, 0x47, 0x11, 0x67, 0xef, 0x7a, 0xb4, 0x29, 0x59, 0xa4, 0x73, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_847 = { .name = "ecdsa_brainpoolp256r1_sha256_847", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_847_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_847_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_847_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 326 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 848 for ECDSA, tcId is 327 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_848_pubkey[] = { 0x6b, 0x76, 0x91, 0x5c, 0xc1, 0xc8, 0x54, 0x74, 0x4a, 0x78, 0xda, 0xc9, 0xba, 0xec, 0xd5, 0x98, 0x45, 0xb9, 0x0a, 0xd9, 0xcd, 0x30, 0x8f, 0x5a, 0x88, 0x7d, 0xcc, 0xc9, 0x09, 0xda, 0xcd, 0x4a, 0x72, 0x60, 0x45, 0x6f, 0x8f, 0x8d, 0x31, 0x76, 0x0d, 0x81, 0xbf, 0x85, 0x34, 0x8d, 0x9f, 0x50, 0xc9, 0x9d, 0x99, 0x18, 0xb4, 0x80, 0xb1, 0xec, 0x25, 0xf4, 0xe2, 0xe3, 0x4d, 0xe0, 0x37, 0x69, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_848_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x99, 0xbb, 0x8d, 0x4b, 0xcb, 0xf1, 0x81, 0x6d, 0x31, 0xaa, 0xd8, 0x8c, 0x25, 0xc6, 0x1f, 0x14, 0x33, 0xb0, 0x83, 0x22, 0x41, 0x2c, 0x7b, 0xd8, 0x4e, 0xd7, 0x59, 0xd0, 0x1c, 0x00, 0x91, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_848 = { .name = "ecdsa_brainpoolp256r1_sha256_848", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_848_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_848_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_848_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 327 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 849 for ECDSA, tcId is 328 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_849_pubkey[] = { 0x64, 0x7b, 0x37, 0xb7, 0x31, 0xd3, 0xea, 0xd7, 0x59, 0x76, 0x27, 0x51, 0x99, 0x54, 0x83, 0x46, 0x90, 0x31, 0x08, 0x4c, 0xd7, 0x09, 0x88, 0x7c, 0x9b, 0x6b, 0xaf, 0xba, 0x46, 0x2c, 0xbf, 0x84, 0x88, 0x8c, 0x5b, 0x17, 0x1f, 0x2b, 0x2f, 0xb7, 0xbb, 0x2b, 0x9d, 0x88, 0x20, 0x0d, 0x79, 0xac, 0x94, 0xd7, 0xd4, 0x02, 0x5f, 0x79, 0x34, 0x8e, 0x22, 0x83, 0x51, 0x1c, 0x04, 0x78, 0x91, 0xbf, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_849_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x41, 0xce, 0xe8, 0x2a, 0x69, 0x57, 0xef, 0x02, 0xab, 0x3a, 0xa0, 0x7a, 0x33, 0x15, 0xac, 0xcc, 0x0d, 0x0d, 0x66, 0xc2, 0x08, 0x1d, 0x53, 0x02, 0x46, 0xd6, 0xe6, 0x81, 0x87, 0x3c, 0x90, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_849 = { .name = "ecdsa_brainpoolp256r1_sha256_849", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_849_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_849_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_849_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 328 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 850 for ECDSA, tcId is 329 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_850_pubkey[] = { 0x1f, 0x76, 0x1a, 0x1a, 0xe1, 0xe8, 0x2e, 0x4a, 0xf2, 0x77, 0xb3, 0x99, 0xda, 0x0a, 0x52, 0x3e, 0x85, 0x64, 0x4c, 0xe9, 0x71, 0xc7, 0xb9, 0x02, 0x36, 0xd0, 0x31, 0x15, 0xae, 0xd9, 0x85, 0x5b, 0x55, 0xcd, 0xb3, 0xe1, 0x04, 0x36, 0x1f, 0xd2, 0xe0, 0x97, 0x98, 0x63, 0xf2, 0x9a, 0x3b, 0x0b, 0xf5, 0x54, 0x2c, 0x51, 0x05, 0xc9, 0x1d, 0xfc, 0x7c, 0x94, 0x64, 0x3b, 0x78, 0xa2, 0xb7, 0xf2, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_850_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x74, 0x6d, 0x61, 0x57, 0x2e, 0xca, 0xe7, 0x74, 0x69, 0x1e, 0x78, 0x09, 0x12, 0x19, 0x86, 0xd9, 0xb9, 0x32, 0x79, 0xb0, 0x09, 0x34, 0xff, 0x1d, 0xef, 0x1f, 0x47, 0x98, 0xda, 0x89, 0xad, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_850 = { .name = "ecdsa_brainpoolp256r1_sha256_850", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_850_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_850_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_850_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 329 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 851 for ECDSA, tcId is 330 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_851_pubkey[] = { 0x63, 0xd3, 0x03, 0x16, 0x25, 0x74, 0x96, 0x28, 0x99, 0xfd, 0x9a, 0x32, 0x3c, 0x5f, 0xe2, 0x4a, 0x09, 0x18, 0x8f, 0xa2, 0x0d, 0x47, 0xa8, 0xd9, 0x2b, 0xa5, 0x02, 0xd4, 0xf8, 0x86, 0xf5, 0xb3, 0x72, 0xcd, 0x0d, 0x82, 0xb3, 0xfd, 0x4f, 0x54, 0xfe, 0xdc, 0x5d, 0x86, 0x18, 0xb1, 0x42, 0xf6, 0x35, 0x53, 0xe4, 0x38, 0xcc, 0x12, 0x69, 0x71, 0x9d, 0xee, 0x3a, 0xbd, 0x33, 0x16, 0xfa, 0x21, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_851_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x1b, 0x26, 0xa0, 0x90, 0x89, 0x68, 0x09, 0x9f, 0x8e, 0x1f, 0x61, 0x0f, 0x4f, 0x35, 0x83, 0x18, 0xba, 0xa2, 0x11, 0x07, 0xb7, 0x91, 0xef, 0x6f, 0x24, 0xcb, 0x24, 0x46, 0x77, 0xa6, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_851 = { .name = "ecdsa_brainpoolp256r1_sha256_851", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_851_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_851_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_851_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 852 for ECDSA, tcId is 331 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_852_pubkey[] = { 0x3e, 0x1d, 0x96, 0x6e, 0x05, 0xf0, 0x4c, 0x44, 0xe1, 0x62, 0x13, 0x3d, 0x97, 0x73, 0x0f, 0x64, 0x08, 0xa8, 0x8a, 0xd9, 0x90, 0xa2, 0xc6, 0xef, 0xb7, 0xe3, 0xe7, 0x3a, 0x88, 0x6f, 0x7e, 0xd4, 0xa4, 0x0e, 0x3b, 0x3f, 0xd8, 0xb0, 0x05, 0xfc, 0x41, 0x74, 0x37, 0xf2, 0x10, 0x11, 0xd9, 0xfb, 0xe3, 0x8b, 0x32, 0x9a, 0x2e, 0x79, 0x59, 0xed, 0x9b, 0x04, 0x0c, 0x8e, 0x1e, 0xb6, 0x77, 0xfd, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_852_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x46, 0xa7, 0x8f, 0xe7, 0xc1, 0x49, 0xc6, 0x7d, 0x7e, 0xee, 0xb1, 0xb5, 0xbe, 0x57, 0xb3, 0xa1, 0x08, 0x26, 0x51, 0xc2, 0x78, 0xeb, 0xc4, 0xa5, 0x0a, 0xbe, 0xb4, 0x57, 0x0f, 0x85, 0x8f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_852 = { .name = "ecdsa_brainpoolp256r1_sha256_852", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_852_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_852_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_852_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 853 for ECDSA, tcId is 332 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_853_pubkey[] = { 0x56, 0xac, 0x8e, 0x49, 0xb3, 0x19, 0xd5, 0xd0, 0x41, 0xae, 0x3d, 0x3f, 0x91, 0xde, 0x22, 0x9c, 0x0a, 0x82, 0x0d, 0x7f, 0xfd, 0x97, 0xea, 0x06, 0x19, 0x6e, 0xee, 0x75, 0x07, 0x36, 0x3f, 0x42, 0x78, 0x7f, 0xc0, 0x5e, 0xba, 0x60, 0x6f, 0x77, 0xb9, 0x84, 0xe5, 0x7c, 0xab, 0xf9, 0x11, 0x20, 0x97, 0x00, 0xb5, 0xd3, 0x91, 0x47, 0xa1, 0x4c, 0x5d, 0x1a, 0x95, 0xf5, 0x6c, 0xd5, 0xfe, 0xb4, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_853_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_853 = { .name = "ecdsa_brainpoolp256r1_sha256_853", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_853_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_853_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_853_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 332 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 854 for ECDSA, tcId is 333 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_854_pubkey[] = { 0x5e, 0x2f, 0x22, 0x86, 0x31, 0xee, 0x7f, 0x00, 0xce, 0xaf, 0x93, 0x62, 0x78, 0xf2, 0xe2, 0x68, 0x1b, 0x42, 0x9f, 0xcf, 0xb8, 0xcb, 0x2c, 0x01, 0x9b, 0x31, 0xf1, 0x88, 0x83, 0x98, 0x84, 0xf5, 0x30, 0xe1, 0x07, 0x9a, 0x6b, 0x88, 0x93, 0x93, 0xcc, 0x83, 0xfa, 0xbb, 0xd5, 0x24, 0xf2, 0x1b, 0xb4, 0x86, 0xc6, 0x5b, 0x83, 0xab, 0x0a, 0xfa, 0xfb, 0x17, 0x26, 0x5d, 0x97, 0x1b, 0xae, 0x91, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_854_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0x30, 0x5a, 0x1c, 0xf8, 0x85, 0xcc, 0xc3, 0x30, 0xad, 0x0f, 0x1b, 0x58, 0x34, 0xa6, 0xa7, 0x83, 0xf1, 0x94, 0x8a, 0x5d, 0x50, 0x87, 0xd4, 0x2b, 0xb5, 0xd4, 0x7a, 0xf8, 0x24, 0x35, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_854 = { .name = "ecdsa_brainpoolp256r1_sha256_854", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_854_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_854_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_854_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 855 for ECDSA, tcId is 334 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_855_pubkey[] = { 0x6d, 0xbc, 0x56, 0x05, 0xb4, 0xe1, 0x13, 0x93, 0x2f, 0xed, 0xe7, 0xb4, 0x74, 0x3f, 0x4d, 0xfc, 0x62, 0xfd, 0xec, 0xae, 0x16, 0x73, 0x5b, 0x51, 0x65, 0x3d, 0x79, 0xee, 0x00, 0x8f, 0x2f, 0xc5, 0x12, 0x88, 0xfb, 0x2c, 0xa0, 0x9e, 0xe3, 0x36, 0xef, 0x31, 0x6b, 0x73, 0x91, 0x9a, 0x7f, 0x3b, 0x32, 0x9f, 0xca, 0x2f, 0x5c, 0x36, 0x5c, 0xc4, 0x27, 0x42, 0x5f, 0xec, 0xf6, 0x4f, 0x7b, 0xf3, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_855_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x20, 0x35, 0xac, 0x9e, 0xa7, 0x11, 0x9e, 0x30, 0xe5, 0x4f, 0x36, 0x9c, 0xd2, 0x2a, 0xa2, 0x7a, 0xf3, 0x8b, 0x56, 0x6a, 0xe6, 0x09, 0x3f, 0x1d, 0xf3, 0x5b, 0x61, 0x2d, 0xe6, 0xf0, 0x75, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_855 = { .name = "ecdsa_brainpoolp256r1_sha256_855", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_855_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_855_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_855_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 334 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 856 for ECDSA, tcId is 335 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_856_pubkey[] = { 0x6d, 0xbc, 0x56, 0x05, 0xb4, 0xe1, 0x13, 0x93, 0x2f, 0xed, 0xe7, 0xb4, 0x74, 0x3f, 0x4d, 0xfc, 0x62, 0xfd, 0xec, 0xae, 0x16, 0x73, 0x5b, 0x51, 0x65, 0x3d, 0x79, 0xee, 0x00, 0x8f, 0x2f, 0xc5, 0x97, 0x72, 0x5c, 0xaf, 0x01, 0x4f, 0xc6, 0x85, 0x4f, 0x34, 0x9f, 0x1d, 0x0b, 0xe9, 0x0e, 0x37, 0x3b, 0x9c, 0x2b, 0xf4, 0x78, 0xef, 0xc3, 0x63, 0xf8, 0xd0, 0xe8, 0x30, 0x29, 0x1e, 0xd7, 0x84, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_856_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x20, 0x35, 0xac, 0x9e, 0xa7, 0x11, 0x9e, 0x30, 0xe5, 0x4f, 0x36, 0x9c, 0xd2, 0x2a, 0xa2, 0x7a, 0xf3, 0x8b, 0x56, 0x6a, 0xe6, 0x09, 0x3f, 0x1d, 0xf3, 0x5b, 0x61, 0x2d, 0xe6, 0xf0, 0x75, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_856 = { .name = "ecdsa_brainpoolp256r1_sha256_856", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_856_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_856_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_856_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 335 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 857 for ECDSA, tcId is 336 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_857_pubkey[] = { 0x8c, 0x56, 0x35, 0xee, 0xaf, 0x7e, 0x99, 0x4f, 0xf1, 0x63, 0xeb, 0xdc, 0x9a, 0xac, 0xfd, 0xad, 0x1d, 0x50, 0xf9, 0x92, 0x9a, 0x80, 0x35, 0xc3, 0x6c, 0xf1, 0xc1, 0xe1, 0x6d, 0x5b, 0x28, 0xf1, 0x3d, 0xe4, 0x84, 0x31, 0xf3, 0xeb, 0x82, 0x3a, 0x38, 0x4c, 0x94, 0x0b, 0x2b, 0x0a, 0x01, 0x51, 0x2d, 0xa9, 0x8b, 0x8f, 0x72, 0xbd, 0x95, 0x45, 0xd1, 0x79, 0xd6, 0xf1, 0xcd, 0x5a, 0x2a, 0x63, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_857_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_857 = { .name = "ecdsa_brainpoolp256r1_sha256_857", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_857_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_857_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_857_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 336 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 858 for ECDSA, tcId is 337 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_858_pubkey[] = { 0x2b, 0x99, 0x99, 0xcf, 0x86, 0xf1, 0x5a, 0x74, 0x71, 0xff, 0x8d, 0x21, 0x2c, 0xa3, 0xf9, 0xa9, 0x92, 0x25, 0x85, 0x1b, 0x6d, 0x96, 0x08, 0x03, 0x4c, 0xe0, 0xaf, 0x55, 0xfd, 0x53, 0x9b, 0x5a, 0x25, 0xd1, 0xd0, 0x64, 0x49, 0xa6, 0xa9, 0xf4, 0xdb, 0x83, 0x3a, 0xb6, 0x9d, 0x11, 0x70, 0xb4, 0xf0, 0xf0, 0x7d, 0x2e, 0x5f, 0x74, 0xa9, 0xb5, 0x62, 0x12, 0x56, 0x3a, 0x03, 0x56, 0xe0, 0xb6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_858_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_858 = { .name = "ecdsa_brainpoolp256r1_sha256_858", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_858_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_858_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_858_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 337 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 859 for ECDSA, tcId is 338 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_859_pubkey[] = { 0x8d, 0x40, 0xdb, 0xb2, 0x64, 0x92, 0x3c, 0x02, 0xa4, 0x84, 0xfd, 0xc7, 0xf0, 0x61, 0x08, 0xc7, 0x27, 0xe5, 0xd1, 0x81, 0x72, 0xc9, 0x09, 0xf7, 0x9a, 0x38, 0x45, 0x48, 0x5c, 0x93, 0x9f, 0x45, 0x94, 0xdd, 0x7b, 0x7c, 0x67, 0x65, 0x3a, 0x71, 0x20, 0x74, 0xd9, 0x48, 0x90, 0xa8, 0xeb, 0x56, 0xa7, 0xd4, 0xb9, 0x75, 0x02, 0x4d, 0x3c, 0x82, 0xa1, 0x15, 0x16, 0x69, 0xa6, 0xb8, 0x38, 0x21, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_859_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_859 = { .name = "ecdsa_brainpoolp256r1_sha256_859", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_859_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_859_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_859_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 338 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 860 for ECDSA, tcId is 339 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_860_pubkey[] = { 0x1f, 0xb4, 0x4c, 0x46, 0xfc, 0xdc, 0xfe, 0x8e, 0x37, 0xf0, 0x47, 0xbc, 0xcf, 0x57, 0xba, 0x18, 0x90, 0x64, 0x3f, 0x00, 0x33, 0xd4, 0x92, 0xc4, 0xb1, 0x97, 0xca, 0x70, 0x57, 0xc8, 0x60, 0x67, 0x76, 0x3f, 0x10, 0x41, 0xf8, 0xc3, 0x8b, 0xe3, 0xad, 0x20, 0x94, 0x5a, 0x6f, 0x0f, 0xad, 0x6f, 0x53, 0x0a, 0xf9, 0x6f, 0xed, 0x28, 0x9b, 0x4e, 0x8f, 0x02, 0xab, 0xd8, 0x0b, 0x2f, 0x2d, 0x83, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_860_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_860 = { .name = "ecdsa_brainpoolp256r1_sha256_860", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_860_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_860_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_860_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 339 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 861 for ECDSA, tcId is 340 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_861_pubkey[] = { 0x8a, 0x42, 0xae, 0xf3, 0x25, 0x68, 0xd8, 0x45, 0x1e, 0x18, 0x7a, 0x94, 0x41, 0xa6, 0xe8, 0x86, 0x34, 0x2d, 0x00, 0x33, 0xb0, 0x4a, 0xaa, 0x4d, 0xdb, 0xd4, 0xd6, 0x00, 0xc6, 0xa5, 0xc8, 0x6a, 0x85, 0x5f, 0xbb, 0x08, 0x61, 0xc7, 0xa6, 0x42, 0x33, 0x3f, 0x37, 0x23, 0xc6, 0xc3, 0xdd, 0x96, 0x1f, 0x27, 0x9d, 0x99, 0x43, 0x77, 0x9d, 0x4c, 0x23, 0x7d, 0xee, 0xc9, 0x4b, 0xff, 0x84, 0x6e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_861_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_861 = { .name = "ecdsa_brainpoolp256r1_sha256_861", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_861_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_861_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_861_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 340 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 862 for ECDSA, tcId is 341 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_862_pubkey[] = { 0x67, 0xf9, 0x99, 0xeb, 0x1a, 0x40, 0xfd, 0xda, 0x28, 0x04, 0x4d, 0x2a, 0xf2, 0x33, 0x57, 0xaa, 0xc0, 0x45, 0x17, 0x2e, 0xf1, 0xe8, 0x9c, 0x64, 0x30, 0xa6, 0x8d, 0xeb, 0x0a, 0x5e, 0x2c, 0x21, 0x55, 0x0d, 0x93, 0x56, 0x5d, 0xfc, 0x6a, 0x0c, 0x5b, 0x5c, 0xf4, 0xe7, 0xd9, 0x11, 0x1b, 0xf4, 0xe3, 0x1a, 0x0d, 0x0f, 0x94, 0xb8, 0xad, 0xfd, 0x9b, 0x80, 0x0c, 0x5b, 0x38, 0xcc, 0x22, 0xb0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_862_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_862 = { .name = "ecdsa_brainpoolp256r1_sha256_862", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_862_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_862_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_862_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 341 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 863 for ECDSA, tcId is 342 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_863_pubkey[] = { 0x7c, 0xbf, 0x2b, 0xd2, 0xc8, 0x90, 0x69, 0xd2, 0x3e, 0xf7, 0x41, 0x7c, 0xb7, 0x83, 0xde, 0xc5, 0x00, 0x89, 0xb3, 0xc4, 0x55, 0x73, 0xad, 0x00, 0xe1, 0x21, 0x4b, 0x0c, 0x6f, 0x51, 0xce, 0xd5, 0x6e, 0xf5, 0xcb, 0xc5, 0x78, 0xda, 0x2f, 0x35, 0xcd, 0x8a, 0x43, 0xcf, 0x01, 0xa7, 0x07, 0x88, 0x41, 0xff, 0xfe, 0xf2, 0xbf, 0xaa, 0x4b, 0x93, 0x19, 0x20, 0xad, 0xa7, 0x92, 0x01, 0x9b, 0x29, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_863_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_863 = { .name = "ecdsa_brainpoolp256r1_sha256_863", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_863_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_863_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_863_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 342 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 864 for ECDSA, tcId is 343 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_864_pubkey[] = { 0x33, 0xd4, 0x25, 0x9f, 0x3a, 0xc0, 0xce, 0x8a, 0x53, 0x4e, 0x76, 0x55, 0xf2, 0x06, 0x8f, 0x80, 0xf4, 0x01, 0xc7, 0x42, 0xec, 0x04, 0x08, 0x47, 0x84, 0xd2, 0x69, 0xc4, 0x9e, 0xf0, 0x70, 0x1f, 0x3e, 0x1d, 0xd6, 0xfc, 0x7c, 0x20, 0x6d, 0x4d, 0x75, 0x9c, 0x80, 0xe3, 0x61, 0x2d, 0xa4, 0xd0, 0xfc, 0xd4, 0x20, 0x0a, 0xfe, 0x7a, 0x68, 0x30, 0x0e, 0x9c, 0x13, 0xf4, 0xef, 0x23, 0xf8, 0x80, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_864_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_864 = { .name = "ecdsa_brainpoolp256r1_sha256_864", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_864_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_864_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_864_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 343 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 865 for ECDSA, tcId is 344 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_865_pubkey[] = { 0x6e, 0xac, 0xd3, 0xac, 0x7f, 0x7b, 0xe6, 0x39, 0x42, 0xb8, 0x97, 0xb7, 0x5d, 0x28, 0x26, 0x21, 0x05, 0x53, 0xe1, 0x97, 0x3a, 0x5b, 0x38, 0x48, 0x75, 0x31, 0xe0, 0xdb, 0x4a, 0x84, 0x18, 0xcc, 0x6b, 0x78, 0x1f, 0x1e, 0xc2, 0x30, 0x2b, 0xf2, 0x7f, 0x8c, 0x4a, 0x46, 0xc9, 0x17, 0x91, 0x85, 0xb9, 0x2a, 0x53, 0xa2, 0x8b, 0x85, 0xb3, 0xc6, 0x41, 0x71, 0x13, 0x9d, 0xed, 0xe3, 0x5a, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_865_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_865 = { .name = "ecdsa_brainpoolp256r1_sha256_865", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_865_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_865_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_865_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 344 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 866 for ECDSA, tcId is 345 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_866_pubkey[] = { 0x49, 0x68, 0x0c, 0x57, 0xa9, 0x64, 0x4a, 0xf8, 0xa3, 0xcb, 0x5d, 0x60, 0xf3, 0x3b, 0xbe, 0xb5, 0x4c, 0x91, 0x0b, 0xd4, 0x0d, 0xab, 0x3f, 0xdb, 0x8d, 0xaa, 0x09, 0x18, 0x2e, 0x4d, 0x79, 0x18, 0x80, 0xfc, 0xa5, 0xd9, 0x24, 0x09, 0x2c, 0x31, 0x6a, 0xe8, 0x26, 0x6b, 0x2a, 0x32, 0xb7, 0x4f, 0x18, 0x6f, 0x6c, 0xf2, 0x2c, 0x29, 0x52, 0x08, 0x71, 0xfb, 0x2a, 0xd2, 0xc4, 0x4e, 0xe7, 0x1a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_866_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_866 = { .name = "ecdsa_brainpoolp256r1_sha256_866", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_866_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_866_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_866_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 867 for ECDSA, tcId is 346 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_867_pubkey[] = { 0x69, 0x56, 0x6f, 0x1e, 0x46, 0x19, 0x34, 0x6b, 0xf8, 0x1d, 0x4b, 0x7e, 0x76, 0x70, 0x57, 0x81, 0xae, 0x6a, 0x3e, 0x84, 0x70, 0x80, 0x6a, 0xe4, 0xf7, 0x3d, 0x53, 0xbb, 0x03, 0xc2, 0x07, 0xa1, 0x39, 0x6a, 0x54, 0xd5, 0x7b, 0x45, 0x95, 0x1e, 0xbc, 0xe9, 0x98, 0x7f, 0x6a, 0xdb, 0x45, 0x7d, 0x7c, 0xe7, 0x7c, 0x6c, 0x38, 0x20, 0xd6, 0x57, 0xf9, 0xa8, 0x88, 0x2c, 0xdf, 0xad, 0x66, 0xcf, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_867_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_867 = { .name = "ecdsa_brainpoolp256r1_sha256_867", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_867_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_867_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_867_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 346 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 868 for ECDSA, tcId is 347 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_868_pubkey[] = { 0x46, 0x86, 0x8f, 0xbf, 0xc7, 0x15, 0x0d, 0x0b, 0xdb, 0x1c, 0x8e, 0x99, 0x76, 0xd8, 0x45, 0xdc, 0x4b, 0x88, 0x40, 0xf4, 0xd9, 0x21, 0x29, 0x9b, 0x6d, 0x8f, 0x98, 0x9d, 0x4d, 0xce, 0x86, 0x57, 0x83, 0x92, 0x1b, 0x9a, 0x72, 0x9e, 0x51, 0xd2, 0xde, 0xb5, 0x95, 0x5f, 0x4d, 0x87, 0xcc, 0x2b, 0x29, 0x9c, 0x7f, 0x01, 0x37, 0x2a, 0xe8, 0x2c, 0xd6, 0x3f, 0x52, 0x9a, 0x26, 0x6d, 0x4b, 0x52, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_868_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_868 = { .name = "ecdsa_brainpoolp256r1_sha256_868", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_868_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_868_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_868_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 347 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 869 for ECDSA, tcId is 348 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_869_pubkey[] = { 0x4b, 0xa9, 0xff, 0xba, 0xd2, 0x6f, 0x90, 0x9e, 0x59, 0xff, 0x58, 0x11, 0x8f, 0xb2, 0x5d, 0x05, 0xe1, 0xfd, 0x27, 0x22, 0xcf, 0x1b, 0x9d, 0x88, 0xab, 0xfe, 0xb7, 0x16, 0xc9, 0xf5, 0x46, 0x1f, 0x76, 0xb2, 0xf3, 0x95, 0xfd, 0xac, 0xb8, 0x9f, 0x3b, 0x85, 0xfd, 0xf4, 0xcd, 0x73, 0x36, 0x30, 0x40, 0x30, 0x68, 0x55, 0x9b, 0xa1, 0x2c, 0x0f, 0x43, 0x8f, 0x85, 0x62, 0x86, 0x77, 0x3f, 0x9b, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_869_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_869 = { .name = "ecdsa_brainpoolp256r1_sha256_869", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_869_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_869_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_869_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 348 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 870 for ECDSA, tcId is 349 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_870_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_870_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_870 = { .name = "ecdsa_brainpoolp256r1_sha256_870", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_870_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_870_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_870_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 349 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 871 for ECDSA, tcId is 350 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_871_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_871_sig[] = { 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_871 = { .name = "ecdsa_brainpoolp256r1_sha256_871", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_871_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_871_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_871_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 350 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 872 for ECDSA, tcId is 351 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_872_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_872_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_872 = { .name = "ecdsa_brainpoolp256r1_sha256_872", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_872_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_872_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_872_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 351 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 873 for ECDSA, tcId is 352 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_873_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_873_sig[] = { 0x98, 0x9c, 0x5c, 0xc3, 0x14, 0x40, 0xc1, 0x16, 0x8f, 0x88, 0xb3, 0x2b, 0xa6, 0xe4, 0x79, 0x00, 0x18, 0x3c, 0x0d, 0x84, 0x3f, 0x9c, 0x41, 0x67, 0x18, 0x98, 0x03, 0x06, 0x64, 0x30, 0x5d, 0x2b, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_873 = { .name = "ecdsa_brainpoolp256r1_sha256_873", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_873_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_873_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_873_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 352 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 874 for ECDSA, tcId is 353 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_874_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_874_sig[] = { 0x74, 0x5b, 0xe1, 0xda, 0x90, 0x2d, 0x19, 0xc7, 0x6c, 0x8f, 0x57, 0xd4, 0xa1, 0xf3, 0x36, 0x2b, 0x4b, 0x20, 0xed, 0x7c, 0x8d, 0xe8, 0xfc, 0x04, 0x63, 0xd5, 0x66, 0x79, 0x5f, 0x97, 0x9c, 0xea, 0x59, 0x16, 0xc3, 0x17, 0xa1, 0xe3, 0x25, 0xb5, 0x37, 0x35, 0x21, 0x6a, 0x0f, 0xa3, 0x77, 0x37, 0xf0, 0x8b, 0x32, 0x24, 0x5c, 0x88, 0x08, 0x48, 0x17, 0xb4, 0x68, 0xa4, 0x1f, 0x5a, 0xfe, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_874 = { .name = "ecdsa_brainpoolp256r1_sha256_874", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_874_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp256r1_sha256_874_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 353 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 875 for ECDSA, tcId is 354 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_875_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_875_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_875_sig[] = { 0x0f, 0xf9, 0x27, 0x9a, 0x07, 0x75, 0x74, 0x0b, 0x7d, 0xb8, 0xbe, 0xc0, 0x7f, 0x9a, 0x04, 0x01, 0xb7, 0x90, 0x38, 0x86, 0xcb, 0x19, 0x8c, 0x1b, 0x18, 0xc4, 0x6d, 0xe0, 0x67, 0x3b, 0x31, 0xc3, 0x8b, 0x3c, 0x86, 0x86, 0xbd, 0x1a, 0x15, 0x08, 0xb5, 0xb7, 0x85, 0xe7, 0x62, 0xfe, 0xce, 0x8c, 0x6c, 0xf1, 0x9b, 0x61, 0x56, 0x98, 0x3e, 0x5c, 0x36, 0xb2, 0xbb, 0xe7, 0x24, 0xd6, 0xc2, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_875 = { .name = "ecdsa_brainpoolp256r1_sha256_875", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_875_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_875_msg, .msglen = 3, .sig = ecdsa_brainpoolp256r1_sha256_875_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 354 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 876 for ECDSA, tcId is 355 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_876_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_876_sig[] = { 0x35, 0x1e, 0x72, 0x70, 0x03, 0x89, 0x6e, 0xc0, 0x29, 0x49, 0xa3, 0xcf, 0x75, 0x22, 0x23, 0xbc, 0xc6, 0xc2, 0xb6, 0x11, 0xb3, 0x03, 0x91, 0xed, 0xd6, 0x0d, 0xc0, 0xc8, 0x3d, 0xc9, 0xc9, 0x8f, 0x92, 0x4a, 0xd9, 0xdc, 0x00, 0x36, 0x4d, 0x4a, 0xa2, 0x09, 0x14, 0x16, 0xd1, 0x73, 0x86, 0x2f, 0x9b, 0x02, 0x96, 0x5f, 0xf1, 0x76, 0xe8, 0x80, 0xea, 0x62, 0xa6, 0x73, 0xe1, 0x6d, 0xb9, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_876 = { .name = "ecdsa_brainpoolp256r1_sha256_876", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_876_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_876_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_876_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 355 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 877 for ECDSA, tcId is 356 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_877_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_877_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_877_sig[] = { 0x44, 0xa8, 0x11, 0xb2, 0x32, 0x1a, 0xcb, 0xc6, 0x5c, 0xac, 0xf8, 0x0d, 0x2d, 0xbe, 0x84, 0x89, 0x46, 0xf1, 0xda, 0xc5, 0x28, 0xf3, 0xe1, 0xae, 0x38, 0xb0, 0xe5, 0x4d, 0x08, 0x3c, 0x25, 0x8f, 0x55, 0xd7, 0xed, 0xfa, 0xec, 0xdd, 0xa3, 0xbb, 0xc0, 0x62, 0xd5, 0x07, 0x4e, 0x3c, 0x37, 0x19, 0xd3, 0x27, 0x61, 0x15, 0x9d, 0x02, 0x7c, 0xa2, 0x7c, 0x17, 0x25, 0xdd, 0xbd, 0x62, 0xf6, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_877 = { .name = "ecdsa_brainpoolp256r1_sha256_877", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_877_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_877_msg, .msglen = 20, .sig = ecdsa_brainpoolp256r1_sha256_877_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 356 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 878 for ECDSA, tcId is 357 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_878_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_878_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_878_sig[] = { 0x62, 0xaa, 0xb4, 0x0a, 0x36, 0xd6, 0xa0, 0xd2, 0x56, 0x44, 0x71, 0x9c, 0xe3, 0x1d, 0xc6, 0x29, 0xec, 0x68, 0x4f, 0x6f, 0x0d, 0xa3, 0x2f, 0x9d, 0xd0, 0x34, 0xcc, 0xc4, 0x21, 0xdb, 0xd0, 0xed, 0xa1, 0xfa, 0x6b, 0x0d, 0xfd, 0x95, 0x58, 0xda, 0x29, 0x37, 0x4f, 0xb7, 0x75, 0x05, 0xee, 0x8a, 0xb3, 0x57, 0x21, 0x61, 0x71, 0x1f, 0x82, 0x1d, 0x11, 0x80, 0x7c, 0x7f, 0xff, 0x91, 0x0c, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_878 = { .name = "ecdsa_brainpoolp256r1_sha256_878", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_878_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_878_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_878_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 357 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 879 for ECDSA, tcId is 358 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_879_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_879_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_879_sig[] = { 0x74, 0x0c, 0xd3, 0xd3, 0xa9, 0xcd, 0x9d, 0xbe, 0x05, 0xea, 0xd4, 0xe3, 0x9e, 0x54, 0xdb, 0x27, 0xc0, 0xf1, 0x57, 0x9d, 0xa6, 0x8e, 0x3a, 0xa5, 0xc9, 0x24, 0x5b, 0x04, 0x7a, 0xeb, 0xc3, 0xb8, 0x8a, 0xe7, 0x8c, 0x12, 0x23, 0x3d, 0x37, 0x8f, 0xe2, 0xce, 0x3c, 0x0f, 0xb2, 0xb7, 0x69, 0xf8, 0x46, 0x38, 0x30, 0xa7, 0x1a, 0x5e, 0x51, 0x87, 0xc1, 0x1b, 0x20, 0xfd, 0xd7, 0xe5, 0x04, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_879 = { .name = "ecdsa_brainpoolp256r1_sha256_879", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_879_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_879_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_879_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 358 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 880 for ECDSA, tcId is 359 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_880_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_880_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_880_sig[] = { 0xa2, 0x8f, 0x30, 0x24, 0x5c, 0x5f, 0xb0, 0xc2, 0x25, 0xfd, 0xec, 0x23, 0x92, 0x4d, 0xc2, 0xcd, 0x4c, 0x2d, 0xa8, 0x88, 0xd1, 0xee, 0x1b, 0xc5, 0x44, 0x58, 0x58, 0xc6, 0x46, 0x01, 0x5c, 0xa8, 0x0e, 0xe3, 0x64, 0xc1, 0x49, 0x1c, 0x45, 0x51, 0xef, 0x35, 0x09, 0xbe, 0x8f, 0x88, 0xdb, 0x0e, 0x04, 0xd0, 0xaf, 0xb3, 0x65, 0x28, 0xae, 0xda, 0x13, 0x01, 0xb1, 0x49, 0x48, 0xcc, 0x9c, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_880 = { .name = "ecdsa_brainpoolp256r1_sha256_880", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_880_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_880_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_880_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 359 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 881 for ECDSA, tcId is 360 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_881_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_881_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_881_sig[] = { 0x7f, 0x20, 0x2f, 0x54, 0xf5, 0x91, 0xb5, 0x11, 0x05, 0xb2, 0x27, 0xee, 0x6d, 0x6d, 0xa3, 0xad, 0xdd, 0xfc, 0x4b, 0x5e, 0x81, 0x9e, 0xfc, 0x04, 0xbe, 0xfc, 0xdc, 0xbf, 0x74, 0x84, 0xf7, 0x83, 0x43, 0x60, 0xea, 0x04, 0x50, 0x39, 0x55, 0xfc, 0x3f, 0x02, 0x59, 0x28, 0xb2, 0xdc, 0xe5, 0x0f, 0xf2, 0xd5, 0x8b, 0x90, 0x60, 0xb3, 0x4b, 0xbe, 0xdf, 0xc3, 0xc2, 0x19, 0xb3, 0xb4, 0x35, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_881 = { .name = "ecdsa_brainpoolp256r1_sha256_881", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_881_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_881_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_881_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 360 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 882 for ECDSA, tcId is 361 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_882_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_882_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_882_sig[] = { 0x62, 0xe2, 0x18, 0xdc, 0xa3, 0x2e, 0x4e, 0xf3, 0x56, 0x92, 0xe9, 0x31, 0x5e, 0x1e, 0x03, 0x6b, 0xef, 0x17, 0x66, 0x07, 0x3b, 0x84, 0x6e, 0x38, 0xde, 0x20, 0xd2, 0xd2, 0x93, 0x49, 0xf9, 0xfe, 0x51, 0x9d, 0x4d, 0x4c, 0x61, 0x58, 0xd9, 0x54, 0x74, 0xd7, 0x93, 0xa0, 0xee, 0x9c, 0x26, 0x0a, 0x0c, 0x54, 0x69, 0xc5, 0xaa, 0xb7, 0x95, 0x10, 0x97, 0x1b, 0x41, 0xfb, 0x4f, 0xae, 0x4b, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_882 = { .name = "ecdsa_brainpoolp256r1_sha256_882", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_882_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_882_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_882_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 361 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 883 for ECDSA, tcId is 362 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_883_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_883_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_883_sig[] = { 0xa3, 0x90, 0x22, 0x95, 0xf6, 0xf7, 0x43, 0xac, 0x75, 0x4d, 0xb7, 0xb3, 0xfc, 0xd8, 0x23, 0xbe, 0x91, 0x7b, 0x11, 0x91, 0xa5, 0x70, 0x57, 0x28, 0xf5, 0x68, 0x24, 0x92, 0x78, 0x4d, 0xa7, 0xf1, 0x43, 0xde, 0xf6, 0x36, 0x66, 0x0e, 0xff, 0x72, 0xe6, 0x43, 0x5e, 0xdb, 0x85, 0x0c, 0x91, 0x26, 0xc7, 0x06, 0x79, 0x38, 0x66, 0x8f, 0x24, 0x99, 0x98, 0xa0, 0xe4, 0x00, 0x6b, 0x8e, 0xe7, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_883 = { .name = "ecdsa_brainpoolp256r1_sha256_883", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_883_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_883_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_883_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 362 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 884 for ECDSA, tcId is 363 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_884_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_884_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_884_sig[] = { 0x86, 0xd0, 0x5b, 0x26, 0xa9, 0xca, 0x7e, 0x10, 0xae, 0x06, 0x81, 0xbb, 0x4c, 0x35, 0xa0, 0x6d, 0x7a, 0x4e, 0x91, 0x8f, 0x86, 0x25, 0xe3, 0xdf, 0xa7, 0xac, 0x2d, 0x5a, 0xed, 0xa9, 0x1c, 0x05, 0x08, 0xc5, 0xf4, 0x75, 0xa9, 0x58, 0x88, 0x76, 0x9d, 0xa4, 0xa0, 0xe1, 0xb6, 0x35, 0xc2, 0x29, 0x2f, 0x65, 0x4f, 0x93, 0x4a, 0x5c, 0x50, 0x10, 0xfe, 0x0c, 0x72, 0x9f, 0x3d, 0x11, 0xe1, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_884 = { .name = "ecdsa_brainpoolp256r1_sha256_884", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_884_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_884_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_884_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 363 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 885 for ECDSA, tcId is 364 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_885_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_885_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_885_sig[] = { 0x43, 0xc4, 0x47, 0x47, 0x10, 0xd2, 0x50, 0x94, 0xa2, 0xe2, 0x1a, 0x9c, 0xc0, 0x85, 0x85, 0xc2, 0x60, 0x15, 0xf9, 0xf9, 0x40, 0x12, 0xb1, 0x00, 0xe7, 0x2c, 0x07, 0x63, 0xaa, 0x9e, 0x0c, 0xff, 0x83, 0x45, 0xc4, 0x6f, 0xd5, 0x59, 0x2c, 0xef, 0xbd, 0x5e, 0xbb, 0x25, 0x89, 0x65, 0xc0, 0x5d, 0x96, 0x4e, 0x6e, 0x6a, 0x27, 0x81, 0x98, 0xdd, 0xc1, 0xe3, 0x88, 0xcf, 0x1e, 0x75, 0x86, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_885 = { .name = "ecdsa_brainpoolp256r1_sha256_885", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_885_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_885_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_885_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 364 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 886 for ECDSA, tcId is 365 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_886_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_886_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_886_sig[] = { 0x6d, 0x27, 0x24, 0x16, 0x7e, 0x81, 0x65, 0x28, 0x49, 0x1c, 0xce, 0x57, 0x4f, 0x05, 0x26, 0x20, 0x9d, 0xe5, 0x2c, 0xd0, 0xf2, 0xaf, 0x00, 0x85, 0x28, 0x4f, 0xd0, 0x50, 0x16, 0x3d, 0x37, 0xc5, 0x76, 0xdd, 0x1d, 0xd5, 0x0f, 0xf9, 0xb5, 0x53, 0xb0, 0xe1, 0x42, 0xb7, 0xe6, 0xc6, 0xbe, 0x8e, 0xdf, 0x37, 0x08, 0xdd, 0x29, 0x2f, 0x03, 0xf3, 0xe9, 0xbf, 0x15, 0x7d, 0x21, 0xda, 0xa9, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_886 = { .name = "ecdsa_brainpoolp256r1_sha256_886", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_886_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_886_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_886_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 365 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 887 for ECDSA, tcId is 366 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_887_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_887_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_887_sig[] = { 0x32, 0x10, 0x09, 0xa0, 0x6c, 0x75, 0x9c, 0x54, 0xcd, 0x66, 0xba, 0xaf, 0xa0, 0xcb, 0xfd, 0x07, 0xee, 0xdb, 0x19, 0xf1, 0x2a, 0x1e, 0xd6, 0x54, 0xdd, 0x52, 0xb5, 0x6f, 0x9c, 0x4f, 0xac, 0x7c, 0x19, 0x56, 0x31, 0x0a, 0x7e, 0x47, 0x57, 0xec, 0x83, 0xdd, 0xb9, 0x2d, 0x27, 0x63, 0x60, 0x73, 0x54, 0x67, 0x81, 0x49, 0xf1, 0xad, 0x92, 0x38, 0x79, 0x28, 0xcf, 0x88, 0x7b, 0x4b, 0xed, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_887 = { .name = "ecdsa_brainpoolp256r1_sha256_887", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_887_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_887_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_887_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 366 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 888 for ECDSA, tcId is 367 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_888_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_888_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_888_sig[] = { 0x9b, 0xdd, 0x35, 0x98, 0x81, 0xc2, 0x39, 0xe2, 0x41, 0x5c, 0xa2, 0xaf, 0x3d, 0x18, 0x46, 0x3b, 0xb2, 0x4b, 0xe5, 0x3f, 0x6f, 0x63, 0x6c, 0xbd, 0x20, 0x36, 0x0b, 0x6b, 0x33, 0x3b, 0xc3, 0x45, 0x0f, 0xf0, 0x3b, 0xc3, 0x6c, 0xc1, 0x97, 0x5b, 0xdc, 0x86, 0x80, 0xc4, 0x4f, 0xbf, 0x2a, 0xef, 0xdd, 0xf6, 0x7c, 0x11, 0x8c, 0x30, 0x4b, 0x8b, 0x3d, 0x36, 0x0e, 0xb1, 0x02, 0x03, 0xc3, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_888 = { .name = "ecdsa_brainpoolp256r1_sha256_888", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_888_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_888_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_888_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 367 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 889 for ECDSA, tcId is 368 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_889_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_889_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_889_sig[] = { 0x48, 0x56, 0x5e, 0xb7, 0xe7, 0x82, 0x0d, 0x40, 0x75, 0x4b, 0x5f, 0x26, 0x4a, 0x4c, 0xea, 0xfa, 0x62, 0xbf, 0x75, 0x08, 0x42, 0x41, 0x51, 0x4b, 0x49, 0x19, 0x95, 0xe7, 0x97, 0x1e, 0x69, 0x95, 0x3d, 0xa6, 0xdf, 0x3d, 0x35, 0x4f, 0x48, 0xda, 0xef, 0x6d, 0x07, 0x8c, 0xf1, 0x12, 0x42, 0x95, 0xfc, 0x8c, 0x32, 0x11, 0xf2, 0x75, 0x79, 0x67, 0xc7, 0x81, 0xdc, 0x2e, 0x9c, 0x62, 0xed, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_889 = { .name = "ecdsa_brainpoolp256r1_sha256_889", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_889_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_889_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_889_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 368 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 890 for ECDSA, tcId is 369 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_890_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_890_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_890_sig[] = { 0x51, 0x8e, 0x88, 0x5d, 0xef, 0x02, 0x2e, 0xb5, 0x02, 0x0f, 0xc9, 0x0f, 0x40, 0x24, 0xd8, 0x71, 0x22, 0xdc, 0x0f, 0x3e, 0xd7, 0xf8, 0x69, 0xed, 0x77, 0x20, 0xff, 0x74, 0xa0, 0x09, 0xfb, 0x7b, 0x8a, 0x3e, 0x26, 0xa8, 0xcd, 0x42, 0x6d, 0x21, 0xeb, 0xa5, 0xcd, 0x7a, 0x56, 0x14, 0xf3, 0x64, 0x43, 0x95, 0xcf, 0xce, 0xcb, 0x24, 0xfe, 0x76, 0x0a, 0x68, 0xa7, 0xa9, 0xe8, 0xf0, 0x9c, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_890 = { .name = "ecdsa_brainpoolp256r1_sha256_890", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_890_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_890_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_890_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 369 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 891 for ECDSA, tcId is 370 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_891_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_891_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_891_sig[] = { 0x04, 0xb0, 0x1e, 0x5c, 0xc3, 0xce, 0x9b, 0xf1, 0x08, 0x44, 0xbc, 0x1c, 0xb2, 0x1d, 0xee, 0xff, 0x6e, 0xbc, 0x9e, 0x2a, 0x70, 0x10, 0xcf, 0xbb, 0x3a, 0xf0, 0x81, 0x13, 0x54, 0x59, 0x9c, 0x81, 0x2e, 0x65, 0xfb, 0x8d, 0xb6, 0x2f, 0x25, 0x59, 0x10, 0xea, 0x4d, 0x52, 0x35, 0xbb, 0x21, 0xaa, 0x67, 0xaa, 0x59, 0xff, 0xd5, 0x19, 0x91, 0x1e, 0xcd, 0x98, 0x93, 0x00, 0x0a, 0xb6, 0x7b, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_891 = { .name = "ecdsa_brainpoolp256r1_sha256_891", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_891_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_891_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_891_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 370 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 892 for ECDSA, tcId is 371 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_892_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_892_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_892_sig[] = { 0x94, 0xbb, 0x06, 0x01, 0x19, 0x8c, 0x4c, 0xe2, 0x66, 0xb0, 0x93, 0x24, 0x26, 0xff, 0xd0, 0x01, 0x32, 0xd7, 0xd4, 0xe2, 0xde, 0x65, 0xef, 0x47, 0xf5, 0x63, 0x60, 0x82, 0x5f, 0x26, 0x24, 0x38, 0x27, 0x34, 0x32, 0x7d, 0x19, 0x89, 0xc9, 0x58, 0x0f, 0x54, 0x58, 0xf0, 0x4a, 0xac, 0x6f, 0xd5, 0x75, 0x2a, 0x1e, 0xe5, 0xe2, 0x36, 0xe9, 0xed, 0x1a, 0x7c, 0x0b, 0x2d, 0x9b, 0x36, 0xdb, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_892 = { .name = "ecdsa_brainpoolp256r1_sha256_892", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_892_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_892_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_892_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 371 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 893 for ECDSA, tcId is 372 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_893_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_893_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_893_sig[] = { 0x4d, 0xde, 0x19, 0x7f, 0x96, 0x2c, 0x63, 0xa7, 0x79, 0x9c, 0x86, 0x2e, 0x89, 0x7b, 0x3b, 0xb1, 0xe7, 0xa7, 0xdd, 0xfb, 0x9a, 0xb7, 0x7c, 0x2a, 0x17, 0xa5, 0x41, 0x51, 0xce, 0x60, 0x4a, 0xd6, 0x01, 0x7e, 0x7a, 0xef, 0x86, 0xe5, 0x33, 0x08, 0x64, 0x25, 0xa2, 0xc4, 0xb3, 0x20, 0x82, 0xf1, 0x18, 0x91, 0x3e, 0xf3, 0x66, 0x7c, 0x84, 0x37, 0x67, 0x2e, 0x0b, 0xbc, 0x7c, 0x2b, 0x8d, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_893 = { .name = "ecdsa_brainpoolp256r1_sha256_893", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_893_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_893_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_893_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 372 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 894 for ECDSA, tcId is 373 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_894_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_894_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_894_sig[] = { 0x7c, 0x53, 0xed, 0x1d, 0x50, 0x4a, 0xd4, 0xba, 0x53, 0xd3, 0x97, 0x92, 0x01, 0x2a, 0x34, 0xd0, 0x07, 0x25, 0x0a, 0x2b, 0x8d, 0x1c, 0xa1, 0x89, 0xc0, 0xd9, 0xf7, 0x5c, 0xcc, 0x9a, 0x99, 0x57, 0x09, 0xb9, 0x7d, 0xcc, 0x5c, 0x67, 0x48, 0x71, 0x14, 0x23, 0x1d, 0x60, 0x13, 0x74, 0xa8, 0x36, 0x4c, 0xaf, 0xa3, 0x95, 0x81, 0x29, 0x17, 0x62, 0x20, 0x2b, 0x92, 0x15, 0xd5, 0x11, 0x35, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_894 = { .name = "ecdsa_brainpoolp256r1_sha256_894", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_894_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_894_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_894_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 373 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 895 for ECDSA, tcId is 374 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_895_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_895_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_895_sig[] = { 0x51, 0x32, 0x45, 0xab, 0x2b, 0x6a, 0x42, 0x06, 0xbb, 0x0f, 0x69, 0x70, 0xc8, 0xad, 0x04, 0x0a, 0x94, 0x72, 0x5d, 0xdc, 0x9a, 0x08, 0xdb, 0x0f, 0xd9, 0xde, 0xf9, 0x38, 0x66, 0xff, 0xbb, 0xa1, 0xa5, 0x3a, 0x7a, 0xb3, 0x7d, 0xec, 0xed, 0xae, 0x18, 0xdd, 0x5b, 0x5c, 0x48, 0xeb, 0x64, 0x2b, 0x7a, 0x9c, 0x92, 0x7e, 0x6b, 0xcf, 0x6b, 0xda, 0xc3, 0xa7, 0x57, 0xe6, 0xd2, 0xc1, 0x69, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_895 = { .name = "ecdsa_brainpoolp256r1_sha256_895", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_895_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_895_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_895_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 374 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 896 for ECDSA, tcId is 375 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_896_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_896_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_896_sig[] = { 0xa5, 0x03, 0x18, 0xc3, 0x06, 0x6a, 0x49, 0x66, 0xad, 0x18, 0xae, 0x8f, 0x85, 0x25, 0x3f, 0xbb, 0x58, 0x35, 0xa3, 0x4b, 0x2f, 0x91, 0x87, 0xda, 0xac, 0x71, 0xee, 0x28, 0xd3, 0xd5, 0xd0, 0xeb, 0x08, 0x90, 0xef, 0x0f, 0xc9, 0x3d, 0xf2, 0x22, 0xd1, 0x11, 0x97, 0xcb, 0x22, 0x14, 0x83, 0xce, 0x89, 0x7b, 0x0c, 0xf1, 0xac, 0xf4, 0xa9, 0x09, 0xc3, 0x06, 0xc5, 0xa4, 0x85, 0x77, 0x6a, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_896 = { .name = "ecdsa_brainpoolp256r1_sha256_896", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_896_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_896_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_896_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 375 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 897 for ECDSA, tcId is 376 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_897_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_897_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_897_sig[] = { 0x04, 0x1e, 0x03, 0x89, 0xdd, 0xa2, 0xcf, 0x2a, 0xe3, 0xa9, 0x56, 0x2a, 0x0f, 0xb5, 0xd4, 0x1c, 0x1f, 0x75, 0x33, 0xe6, 0xcc, 0x84, 0xa8, 0x96, 0xe9, 0x9a, 0xf7, 0x81, 0xe2, 0x10, 0x97, 0x70, 0x36, 0x6b, 0x5d, 0x88, 0xc3, 0x6f, 0x12, 0x27, 0xdf, 0x52, 0x2f, 0xda, 0xb6, 0x5e, 0x12, 0x34, 0x7d, 0x68, 0xeb, 0x64, 0xf2, 0xde, 0x82, 0xc6, 0x48, 0x11, 0x5f, 0xd5, 0x65, 0xbd, 0x37, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_897 = { .name = "ecdsa_brainpoolp256r1_sha256_897", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_897_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_897_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_897_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 376 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 898 for ECDSA, tcId is 377 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_898_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_898_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_898_sig[] = { 0x2a, 0x76, 0x39, 0x4a, 0x04, 0xae, 0x19, 0xb2, 0x5c, 0x54, 0x29, 0x1e, 0x28, 0xbc, 0xd4, 0x2a, 0x7e, 0xde, 0xb2, 0x09, 0x81, 0xb8, 0xa3, 0xb8, 0x38, 0xf9, 0xdd, 0x0e, 0x29, 0xb5, 0x74, 0xc1, 0x9c, 0xe8, 0x99, 0x80, 0xae, 0x43, 0x2c, 0x4f, 0xa6, 0xa6, 0x80, 0x25, 0xda, 0x55, 0x4b, 0xf9, 0x00, 0xcc, 0x2e, 0xb0, 0xc6, 0x69, 0x06, 0x42, 0x0d, 0x32, 0x2c, 0x14, 0xb4, 0x53, 0x04, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_898 = { .name = "ecdsa_brainpoolp256r1_sha256_898", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_898_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_898_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_898_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 377 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 899 for ECDSA, tcId is 378 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_899_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_899_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_899_sig[] = { 0x66, 0x95, 0x8b, 0xe3, 0x37, 0x94, 0x05, 0x82, 0x6a, 0x00, 0xda, 0xf5, 0x49, 0x5b, 0x16, 0x57, 0x69, 0x81, 0x26, 0xa5, 0xff, 0x44, 0x9f, 0x96, 0x49, 0xaf, 0x26, 0xca, 0x96, 0xdf, 0x96, 0x67, 0x9b, 0x41, 0x00, 0x81, 0x6e, 0x27, 0x41, 0xf8, 0x6c, 0x5c, 0x0b, 0x0d, 0xcf, 0x82, 0xe5, 0x79, 0xf4, 0x28, 0x1d, 0x2b, 0x8e, 0x70, 0xc2, 0x34, 0x80, 0x8d, 0x84, 0xc1, 0xa4, 0x95, 0x07, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_899 = { .name = "ecdsa_brainpoolp256r1_sha256_899", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_899_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_899_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_899_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 378 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 900 for ECDSA, tcId is 379 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_900_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_900_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_900_sig[] = { 0x53, 0xed, 0x0f, 0x4b, 0x8f, 0xb3, 0x3e, 0xf2, 0x77, 0xcd, 0xd1, 0x06, 0x04, 0x35, 0xed, 0x3d, 0xec, 0x51, 0x8a, 0x22, 0x56, 0x59, 0xf7, 0x1f, 0x67, 0xf9, 0xa1, 0xf0, 0x7f, 0x85, 0xc1, 0xca, 0x12, 0x4d, 0x5f, 0x94, 0xdd, 0xf1, 0x2b, 0xb4, 0xcb, 0xe3, 0xc5, 0xce, 0xa6, 0xd2, 0x68, 0x6d, 0x44, 0x80, 0xda, 0xbb, 0x8f, 0xfb, 0xb0, 0x5e, 0x52, 0x38, 0xc8, 0x77, 0xfe, 0x20, 0x38, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_900 = { .name = "ecdsa_brainpoolp256r1_sha256_900", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_900_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_900_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_900_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 379 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 901 for ECDSA, tcId is 380 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_901_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_901_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_901_sig[] = { 0x46, 0x64, 0x3c, 0x7f, 0xe0, 0xf3, 0x08, 0xb8, 0xaf, 0x4c, 0xe2, 0x97, 0x8d, 0x79, 0x7e, 0x8c, 0x46, 0xa7, 0xe1, 0xf8, 0xbf, 0xee, 0x0b, 0x5c, 0xdb, 0xae, 0xcd, 0xe1, 0xf5, 0x9b, 0xe4, 0x1d, 0x1b, 0xd1, 0x1a, 0x81, 0x4d, 0x1f, 0xbd, 0x9a, 0xe9, 0x7a, 0x49, 0xdf, 0x99, 0xbe, 0xca, 0x7f, 0xec, 0x25, 0x12, 0x56, 0x3c, 0x00, 0x31, 0xc5, 0xaa, 0xd5, 0xb9, 0xfc, 0x2f, 0xb0, 0xa5, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_901 = { .name = "ecdsa_brainpoolp256r1_sha256_901", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_901_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_901_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_901_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 380 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 902 for ECDSA, tcId is 381 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_902_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_902_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_902_sig[] = { 0x4f, 0x83, 0x3b, 0xec, 0x9c, 0x80, 0x18, 0x5b, 0xea, 0xcb, 0xb7, 0x3b, 0x5f, 0x98, 0x4e, 0x2c, 0x03, 0xd9, 0x22, 0x35, 0x9b, 0xe7, 0x46, 0x8c, 0xe3, 0x75, 0x84, 0xf5, 0x3d, 0x1a, 0xea, 0x4a, 0x66, 0x36, 0x74, 0x4a, 0xb7, 0xfe, 0xca, 0xa5, 0x35, 0x41, 0xbc, 0xf5, 0xf3, 0x7c, 0x6c, 0xbe, 0x82, 0x8a, 0x8e, 0xfb, 0xc4, 0xd0, 0x0f, 0x64, 0x69, 0xba, 0x39, 0x0a, 0x86, 0x70, 0x8a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_902 = { .name = "ecdsa_brainpoolp256r1_sha256_902", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_902_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_902_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_902_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 381 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 903 for ECDSA, tcId is 382 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_903_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_903_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_903_sig[] = { 0xa2, 0x86, 0x9d, 0xa4, 0x16, 0x52, 0x3a, 0xad, 0x2b, 0x8f, 0xa8, 0xaa, 0xd5, 0xc3, 0xb3, 0x1c, 0x5a, 0x53, 0x5f, 0xdd, 0x41, 0x3b, 0x71, 0xaf, 0x4d, 0xff, 0xb9, 0x0c, 0x6f, 0x96, 0xa6, 0x69, 0x29, 0xff, 0x3e, 0x8d, 0x49, 0x9c, 0xab, 0xc3, 0xcc, 0x4c, 0xcc, 0xd0, 0xfa, 0x81, 0x1c, 0xc3, 0xb0, 0x47, 0x70, 0xaa, 0x71, 0xf0, 0xd0, 0x52, 0x18, 0x52, 0x10, 0xb1, 0x4d, 0x31, 0x99, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_903 = { .name = "ecdsa_brainpoolp256r1_sha256_903", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_903_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_903_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_903_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 382 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 904 for ECDSA, tcId is 383 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_904_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_904_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_904_sig[] = { 0x63, 0xdb, 0xfe, 0x29, 0x24, 0x9a, 0x50, 0x6b, 0x89, 0xfb, 0xd2, 0xcb, 0x1f, 0xaf, 0xc2, 0x54, 0xa9, 0x58, 0x2d, 0xfc, 0x4b, 0x08, 0xd1, 0x43, 0xb6, 0xd2, 0x5b, 0xf2, 0xab, 0x49, 0xd5, 0x5e, 0x44, 0xca, 0xd8, 0x0c, 0x00, 0x46, 0x09, 0x05, 0xe1, 0x03, 0xf2, 0x6d, 0xa8, 0x4c, 0xef, 0xd7, 0x1a, 0xf4, 0xbc, 0x7a, 0x71, 0x96, 0x2a, 0x3b, 0xce, 0x32, 0x1b, 0xc3, 0xb5, 0x84, 0x27, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_904 = { .name = "ecdsa_brainpoolp256r1_sha256_904", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_904_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_904_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_904_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 383 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 905 for ECDSA, tcId is 384 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_905_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_905_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_905_sig[] = { 0x9d, 0x90, 0x7c, 0xf8, 0x8e, 0x10, 0xd6, 0x0c, 0x3f, 0x23, 0x89, 0x24, 0x98, 0xfe, 0x43, 0xdd, 0xb0, 0x2f, 0x82, 0x4f, 0xb1, 0x8e, 0x6b, 0xe3, 0x13, 0xe0, 0x2d, 0x94, 0xf2, 0xc8, 0xe0, 0x90, 0x0c, 0x16, 0xb9, 0xe0, 0xdb, 0x4d, 0xc8, 0x60, 0x6c, 0x02, 0x3b, 0x00, 0x1f, 0x69, 0xb3, 0xc8, 0x86, 0x08, 0x07, 0x94, 0xfc, 0x9d, 0x7f, 0xe3, 0x1b, 0x00, 0xc1, 0xcf, 0x09, 0x35, 0xe4, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_905 = { .name = "ecdsa_brainpoolp256r1_sha256_905", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_905_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_905_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_905_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 384 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 906 for ECDSA, tcId is 385 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_906_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_906_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_906_sig[] = { 0x73, 0x95, 0xce, 0x0e, 0xf6, 0x52, 0x84, 0x8a, 0x86, 0xb6, 0x10, 0x97, 0xcc, 0x95, 0x43, 0x99, 0x8d, 0x39, 0xda, 0xe8, 0x8a, 0x1f, 0xc9, 0xe4, 0xdf, 0xdd, 0x69, 0x64, 0x29, 0x49, 0x54, 0x89, 0x7d, 0xe2, 0x9e, 0x25, 0x6e, 0x82, 0x02, 0x38, 0x2f, 0x91, 0xc1, 0x16, 0xa6, 0x67, 0xa8, 0xb9, 0x46, 0xf2, 0x10, 0x44, 0x7a, 0x57, 0x36, 0x9b, 0xa6, 0x1a, 0xe4, 0xfa, 0xe7, 0x3d, 0xd1, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_906 = { .name = "ecdsa_brainpoolp256r1_sha256_906", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_906_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_906_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_906_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 385 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 907 for ECDSA, tcId is 386 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_907_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_907_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_907_sig[] = { 0x7b, 0xaf, 0x1f, 0xde, 0x87, 0xcc, 0xb1, 0xbe, 0xa0, 0xf8, 0x93, 0xb3, 0xbf, 0xb2, 0x54, 0x9c, 0x04, 0xbc, 0xa1, 0x88, 0x35, 0xd8, 0xeb, 0x5a, 0x31, 0xb8, 0xd2, 0x05, 0x06, 0xff, 0x88, 0xc3, 0x28, 0x9e, 0xbe, 0x82, 0x9f, 0xef, 0xb9, 0xad, 0x00, 0x9d, 0x7c, 0xdd, 0x62, 0x28, 0x74, 0xae, 0xf5, 0xfa, 0x08, 0x8f, 0x05, 0x08, 0xa4, 0xb4, 0x3d, 0x58, 0x95, 0xd6, 0x16, 0x45, 0xce, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_907 = { .name = "ecdsa_brainpoolp256r1_sha256_907", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_907_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_907_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_907_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 386 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 908 for ECDSA, tcId is 387 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_908_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_908_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_908_sig[] = { 0x33, 0xe3, 0x7c, 0x3b, 0x66, 0xac, 0xab, 0xee, 0x3d, 0x68, 0xcb, 0xbb, 0x9c, 0x55, 0xcd, 0x52, 0xb5, 0x86, 0xde, 0x51, 0x64, 0x77, 0x23, 0xfa, 0x84, 0xe5, 0x32, 0xa3, 0xec, 0x59, 0x53, 0xef, 0x3b, 0x8a, 0x9e, 0xe7, 0x07, 0xd1, 0xbc, 0x5f, 0x83, 0xe1, 0x7e, 0xa0, 0x72, 0xad, 0xc2, 0xec, 0xda, 0x92, 0xe6, 0x37, 0xd7, 0xc0, 0x60, 0x60, 0xf1, 0xaf, 0x79, 0xb9, 0x29, 0xa8, 0x50, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_908 = { .name = "ecdsa_brainpoolp256r1_sha256_908", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_908_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_908_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_908_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 387 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 909 for ECDSA, tcId is 388 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_909_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_909_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_909_sig[] = { 0x1f, 0x8e, 0xbd, 0xc9, 0x4e, 0xcd, 0xdd, 0x84, 0xf9, 0x09, 0x60, 0xcc, 0x55, 0xd0, 0xca, 0x02, 0xe3, 0x3d, 0x70, 0x53, 0x5f, 0xc1, 0xc7, 0x32, 0x2b, 0x3c, 0x27, 0x83, 0xb9, 0xdc, 0x92, 0x38, 0x20, 0x5a, 0xa8, 0x62, 0x6c, 0x3a, 0x5d, 0xa2, 0x14, 0xe5, 0x48, 0x5b, 0x11, 0x15, 0x4a, 0x37, 0x8d, 0x70, 0xb0, 0xd3, 0x32, 0x3a, 0xb8, 0x68, 0x52, 0x8a, 0xe8, 0x04, 0x8d, 0x17, 0xb6, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_909 = { .name = "ecdsa_brainpoolp256r1_sha256_909", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_909_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_909_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_909_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 388 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 910 for ECDSA, tcId is 389 in file ecdsa_brainpoolP256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_910_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_910_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_910_sig[] = { 0x6b, 0x0d, 0x70, 0xe0, 0x9b, 0xa1, 0x64, 0x2a, 0xda, 0xc0, 0x6d, 0xff, 0x9b, 0x52, 0xe2, 0x2a, 0x3e, 0x4a, 0xab, 0x41, 0x80, 0xe3, 0x72, 0x66, 0x56, 0x91, 0x41, 0x22, 0x41, 0xe7, 0x43, 0xa0, 0x4d, 0x7d, 0x30, 0xff, 0x8a, 0x21, 0x0d, 0xe6, 0x9e, 0x3e, 0x6d, 0x1e, 0xcf, 0x71, 0x75, 0xf8, 0x9f, 0x48, 0x1a, 0x4d, 0x9e, 0xd0, 0x6b, 0xea, 0xf7, 0x14, 0x8d, 0xa4, 0x7f, 0x4a, 0xf9, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_910 = { .name = "ecdsa_brainpoolp256r1_sha256_910", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_910_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_910_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_910_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 389 in file ecdsa_brainpoolP256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 911 for ECDSA, tcId is 1 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_911_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_911_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x83, 0x3d, 0x66, 0x61, 0xb0, 0x57, 0x6d, 0x61, 0xa8, 0x0f, 0xfe, 0x4d, 0x32, 0x71, 0xc4, 0x3b, 0x2a, 0x56, 0xc1, 0x4b, 0x3b, 0xd9, 0x03, 0x05, 0x92, 0x3c, 0xcd, 0xcf, 0x7b, 0x3d, 0x98, 0x8c, 0x07, 0xeb, 0xb1, 0xc4, 0xcc, 0x67, 0x38, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_911 = { .name = "ecdsa_brainpoolp320r1_sha384_911", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_911_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_911_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_911_sig, .siglen = 80, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 912 for ECDSA, tcId is 2 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_912_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_912_sig[] = { 0x01, 0x59, 0x10, 0x03, 0x78, 0xa2, 0xb1, 0x90, 0x37, 0x7d, 0xcb, 0x3b, 0xd5, 0x31, 0xe2, 0x0c, 0x37, 0x8d, 0x10, 0x69, 0x31, 0xfc, 0x18, 0x3f, 0x70, 0x7d, 0xc9, 0xd0, 0x85, 0x76, 0xf8, 0xfb, 0x56, 0x61, 0x85, 0x59, 0x42, 0x20, 0xb8, 0xdd, 0x7f, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_912 = { .name = "ecdsa_brainpoolp320r1_sha384_912", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_912_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_912_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_912_sig, .siglen = 82, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 913 for ECDSA, tcId is 3 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_913_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_913_sig[] = { 0x4d, 0xac, 0x8a, 0xc7, 0xca, 0xc7, 0x0f, 0x38, 0x44, 0xad, 0xb4, 0xe8, 0x72, 0x21, 0xb4, 0x94, 0x66, 0x0f, 0x36, 0x19, 0x71, 0x05, 0xe5, 0xd5, 0xdc, 0xc6, 0x8d, 0x0a, 0x66, 0x13, 0xb6, 0x7c, 0xab, 0x9d, 0x51, 0x74, 0x68, 0xd2, 0x48, 0xa3, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_913 = { .name = "ecdsa_brainpoolp320r1_sha384_913", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_913_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_913_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_913_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 914 for ECDSA, tcId is 4 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_914_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_914_sig[] = { 0x01, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_914 = { .name = "ecdsa_brainpoolp320r1_sha384_914", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_914_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_914_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_914_sig, .siglen = 82, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 915 for ECDSA, tcId is 5 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_915_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_915_sig[] = { 0x7a, 0x4e, 0x43, 0xa7, 0x94, 0x0a, 0xbf, 0x80, 0x63, 0x71, 0x3c, 0x89, 0xa0, 0x1f, 0xd4, 0x2e, 0x6c, 0x7f, 0x66, 0x73, 0xba, 0x76, 0xd3, 0x32, 0xaf, 0x7e, 0x5e, 0x42, 0x77, 0x8d, 0x5d, 0x93, 0x25, 0x0b, 0xfc, 0x19, 0x24, 0x0c, 0xb5, 0x92, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_915 = { .name = "ecdsa_brainpoolp320r1_sha384_915", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_915_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_915_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_915_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 916 for ECDSA, tcId is 6 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_916_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_916_sig[] = { 0x00, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x01, 0x23, 0x7f, 0x27, 0xde, 0xbd, 0x21, 0x32, 0x0e, 0x1a, 0x68, 0xf2, 0x70, 0x71, 0x91, 0xfc, 0x90, 0xc8, 0xc8, 0xde, 0x00, 0x31, 0x45, 0x22, 0x40, 0xc8, 0x53, 0x8f, 0xc0, 0x61, 0xcf, 0x19, 0x47, 0x05, 0x36, 0xf8, 0xf1, 0xbd, 0x23, 0xee, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_916 = { .name = "ecdsa_brainpoolp320r1_sha384_916", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_916_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_916_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_916_sig, .siglen = 82, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 917 for ECDSA, tcId is 7 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_917_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_917_sig[] = { 0x00, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x01, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_917 = { .name = "ecdsa_brainpoolp320r1_sha384_917", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_917_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_917_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_917_sig, .siglen = 82, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 918 for ECDSA, tcId is 8 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_918_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_918_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0xaf, 0xdf, 0x1f, 0x41, 0x79, 0x9b, 0x1d, 0xa9, 0xc6, 0xd3, 0x85, 0xee, 0x60, 0x6f, 0xe3, 0xd5, 0x30, 0xc6, 0xf1, 0xa5, 0x85, 0x49, 0xf0, 0x62, 0x64, 0xf4, 0x9f, 0x07, 0x8c, 0xb7, 0x3f, 0xa2, 0x81, 0x5a, 0x5c, 0x69, 0x87, 0xa1, 0xa5, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_918 = { .name = "ecdsa_brainpoolp320r1_sha384_918", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_918_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_918_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_918_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 919 for ECDSA, tcId is 9 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_919_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_919_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_919 = { .name = "ecdsa_brainpoolp320r1_sha384_919", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_919_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_919_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_919_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 920 for ECDSA, tcId is 10 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_920_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_920_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_920 = { .name = "ecdsa_brainpoolp320r1_sha384_920", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_920_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_920_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_920_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 921 for ECDSA, tcId is 11 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_921_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_921_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_921 = { .name = "ecdsa_brainpoolp320r1_sha384_921", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_921_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_921_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_921_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 922 for ECDSA, tcId is 12 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_922_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_922_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_922 = { .name = "ecdsa_brainpoolp320r1_sha384_922", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_922_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_922_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_922_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 923 for ECDSA, tcId is 13 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_923_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_923_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_923 = { .name = "ecdsa_brainpoolp320r1_sha384_923", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_923_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_923_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_923_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 924 for ECDSA, tcId is 14 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_924_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_924_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_924 = { .name = "ecdsa_brainpoolp320r1_sha384_924", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_924_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_924_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_924_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 925 for ECDSA, tcId is 15 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_925_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_925_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_925 = { .name = "ecdsa_brainpoolp320r1_sha384_925", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_925_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_925_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_925_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 926 for ECDSA, tcId is 16 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_926_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_926_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_926 = { .name = "ecdsa_brainpoolp320r1_sha384_926", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_926_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_926_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_926_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 927 for ECDSA, tcId is 17 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_927_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_927_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_927 = { .name = "ecdsa_brainpoolp320r1_sha384_927", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_927_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_927_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_927_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 928 for ECDSA, tcId is 18 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_928_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_928_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_928 = { .name = "ecdsa_brainpoolp320r1_sha384_928", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_928_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_928_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_928_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 929 for ECDSA, tcId is 19 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_929_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_929_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_929 = { .name = "ecdsa_brainpoolp320r1_sha384_929", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_929_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_929_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_929_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 930 for ECDSA, tcId is 20 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_930_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_930_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_930 = { .name = "ecdsa_brainpoolp320r1_sha384_930", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_930_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_930_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_930_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 931 for ECDSA, tcId is 21 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_931_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_931_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_931 = { .name = "ecdsa_brainpoolp320r1_sha384_931", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_931_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_931_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_931_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 932 for ECDSA, tcId is 22 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_932_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_932_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_932 = { .name = "ecdsa_brainpoolp320r1_sha384_932", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_932_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_932_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_932_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 933 for ECDSA, tcId is 23 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_933_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_933_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_933 = { .name = "ecdsa_brainpoolp320r1_sha384_933", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_933_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_933_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_933_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 934 for ECDSA, tcId is 24 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_934_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_934_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_934 = { .name = "ecdsa_brainpoolp320r1_sha384_934", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_934_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_934_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_934_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 935 for ECDSA, tcId is 25 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_935_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_935_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_935 = { .name = "ecdsa_brainpoolp320r1_sha384_935", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_935_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_935_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_935_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 936 for ECDSA, tcId is 26 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_936_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_936_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_936 = { .name = "ecdsa_brainpoolp320r1_sha384_936", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_936_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_936_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_936_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 937 for ECDSA, tcId is 27 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_937_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_937_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_937 = { .name = "ecdsa_brainpoolp320r1_sha384_937", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_937_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_937_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_937_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 938 for ECDSA, tcId is 28 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_938_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_938_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_938 = { .name = "ecdsa_brainpoolp320r1_sha384_938", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_938_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_938_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_938_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 939 for ECDSA, tcId is 29 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_939_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_939_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_939 = { .name = "ecdsa_brainpoolp320r1_sha384_939", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_939_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_939_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_939_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 940 for ECDSA, tcId is 30 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_940_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_940_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_940 = { .name = "ecdsa_brainpoolp320r1_sha384_940", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_940_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_940_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_940_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 941 for ECDSA, tcId is 31 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_941_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_941_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_941 = { .name = "ecdsa_brainpoolp320r1_sha384_941", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_941_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_941_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_941_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 942 for ECDSA, tcId is 32 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_942_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_942_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_942 = { .name = "ecdsa_brainpoolp320r1_sha384_942", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_942_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_942_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_942_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 943 for ECDSA, tcId is 33 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_943_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_943_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_943 = { .name = "ecdsa_brainpoolp320r1_sha384_943", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_943_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_943_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_943_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 944 for ECDSA, tcId is 34 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_944_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_944_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_944 = { .name = "ecdsa_brainpoolp320r1_sha384_944", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_944_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_944_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_944_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 945 for ECDSA, tcId is 35 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_945_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_945_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_945 = { .name = "ecdsa_brainpoolp320r1_sha384_945", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_945_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_945_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_945_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 946 for ECDSA, tcId is 36 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_946_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_946_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_946 = { .name = "ecdsa_brainpoolp320r1_sha384_946", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_946_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_946_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_946_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 947 for ECDSA, tcId is 37 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_947_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_947_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_947 = { .name = "ecdsa_brainpoolp320r1_sha384_947", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_947_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_947_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_947_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 948 for ECDSA, tcId is 38 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_948_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_948_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_948 = { .name = "ecdsa_brainpoolp320r1_sha384_948", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_948_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_948_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_948_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 949 for ECDSA, tcId is 39 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_949_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_949_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_949 = { .name = "ecdsa_brainpoolp320r1_sha384_949", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_949_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_949_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_949_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 950 for ECDSA, tcId is 40 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_950_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_950_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_950 = { .name = "ecdsa_brainpoolp320r1_sha384_950", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_950_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_950_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_950_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 951 for ECDSA, tcId is 41 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_951_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_951_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_951 = { .name = "ecdsa_brainpoolp320r1_sha384_951", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_951_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_951_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_951_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 952 for ECDSA, tcId is 42 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_952_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_952_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_952 = { .name = "ecdsa_brainpoolp320r1_sha384_952", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_952_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_952_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_952_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 953 for ECDSA, tcId is 43 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_953_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_953_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_953 = { .name = "ecdsa_brainpoolp320r1_sha384_953", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_953_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_953_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_953_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 954 for ECDSA, tcId is 44 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_954_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_954_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_954 = { .name = "ecdsa_brainpoolp320r1_sha384_954", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_954_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_954_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_954_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 955 for ECDSA, tcId is 45 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_955_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_955_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_955 = { .name = "ecdsa_brainpoolp320r1_sha384_955", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_955_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_955_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_955_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 956 for ECDSA, tcId is 46 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_956_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_956_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_956 = { .name = "ecdsa_brainpoolp320r1_sha384_956", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_956_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_956_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_956_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 957 for ECDSA, tcId is 47 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_957_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_957_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_957 = { .name = "ecdsa_brainpoolp320r1_sha384_957", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_957_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_957_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_957_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 958 for ECDSA, tcId is 48 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_958_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_958_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_958 = { .name = "ecdsa_brainpoolp320r1_sha384_958", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_958_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_958_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_958_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 959 for ECDSA, tcId is 49 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_959_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_959_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_959 = { .name = "ecdsa_brainpoolp320r1_sha384_959", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_959_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_959_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_959_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 960 for ECDSA, tcId is 50 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_960_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_960_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_960 = { .name = "ecdsa_brainpoolp320r1_sha384_960", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_960_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_960_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_960_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 961 for ECDSA, tcId is 51 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_961_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_961_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_961 = { .name = "ecdsa_brainpoolp320r1_sha384_961", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_961_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_961_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_961_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 962 for ECDSA, tcId is 52 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_962_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_962_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_962 = { .name = "ecdsa_brainpoolp320r1_sha384_962", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_962_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_962_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_962_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 963 for ECDSA, tcId is 53 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_963_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_963_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_963 = { .name = "ecdsa_brainpoolp320r1_sha384_963", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_963_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_963_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_963_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 964 for ECDSA, tcId is 54 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_964_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_964_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_964 = { .name = "ecdsa_brainpoolp320r1_sha384_964", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_964_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_964_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_964_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 965 for ECDSA, tcId is 55 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_965_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_965_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_965 = { .name = "ecdsa_brainpoolp320r1_sha384_965", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_965_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_965_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_965_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 966 for ECDSA, tcId is 56 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_966_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_966_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_966 = { .name = "ecdsa_brainpoolp320r1_sha384_966", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_966_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_966_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_966_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 967 for ECDSA, tcId is 57 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_967_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_967_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_967 = { .name = "ecdsa_brainpoolp320r1_sha384_967", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_967_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_967_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_967_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 968 for ECDSA, tcId is 58 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_968_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_968_msg[] = { 0x37, 0x30, 0x37, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_968_sig[] = { 0x25, 0x16, 0x6f, 0x47, 0xac, 0x99, 0xc6, 0xbe, 0xc3, 0xb0, 0x38, 0x84, 0x9a, 0xb4, 0xea, 0xd3, 0xb2, 0x51, 0xf1, 0x8a, 0xfb, 0x0d, 0xa1, 0xda, 0x5c, 0xaa, 0x60, 0x4a, 0x92, 0xa9, 0x09, 0xc8, 0x56, 0x18, 0x17, 0x68, 0x4a, 0xbf, 0xfb, 0x92, 0x31, 0x07, 0xff, 0xd1, 0xaa, 0xdc, 0xe5, 0xb5, 0x8a, 0x2a, 0x1b, 0x95, 0x17, 0xcc, 0xed, 0xda, 0x09, 0x04, 0x33, 0xac, 0x63, 0x44, 0xb0, 0x27, 0xf3, 0x6f, 0xc6, 0xb3, 0x58, 0xef, 0x4a, 0x8e, 0x43, 0x6d, 0xf3, 0xfd, 0x05, 0x52, 0x16, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_968 = { .name = "ecdsa_brainpoolp320r1_sha384_968", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_968_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_968_msg, .msglen = 5, .sig = ecdsa_brainpoolp320r1_sha384_968_sig, .siglen = 80, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 969 for ECDSA, tcId is 59 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_969_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_969_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_969_sig[] = { 0x10, 0x3c, 0x3e, 0xf2, 0xb4, 0x3a, 0x8f, 0x57, 0xd0, 0x1e, 0x2d, 0xa6, 0x7e, 0xdf, 0xa0, 0x03, 0xa0, 0xd3, 0x42, 0xd7, 0xfb, 0xde, 0x05, 0x41, 0x33, 0x2b, 0x0b, 0x24, 0xde, 0xea, 0x76, 0xaf, 0xff, 0x4e, 0x2c, 0xd0, 0x57, 0x2d, 0x73, 0xbb, 0x0a, 0x0a, 0x68, 0x0e, 0xbe, 0x36, 0x44, 0xc4, 0x6b, 0x58, 0xd6, 0x7e, 0xd8, 0xee, 0x94, 0xf3, 0xaa, 0xee, 0x28, 0x39, 0xbc, 0x27, 0x0d, 0x6b, 0x93, 0x9b, 0xcb, 0x76, 0x57, 0xee, 0xeb, 0xbb, 0x6c, 0xcc, 0xf2, 0xbc, 0x54, 0xaf, 0x97, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_969 = { .name = "ecdsa_brainpoolp320r1_sha384_969", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_969_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_969_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_969_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 970 for ECDSA, tcId is 60 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_970_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_970_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_970_sig[] = { 0x8c, 0x70, 0x21, 0x60, 0x94, 0xfe, 0xda, 0x4e, 0x72, 0x1a, 0x72, 0xd8, 0xa9, 0x1c, 0x51, 0xdd, 0x17, 0x39, 0x2c, 0xf4, 0xc4, 0x48, 0x1d, 0x7c, 0xd9, 0x4b, 0xe5, 0x6d, 0xa9, 0x94, 0xe5, 0xba, 0xaa, 0x56, 0x10, 0x85, 0xce, 0xcf, 0xe8, 0x0d, 0x1b, 0x19, 0xf7, 0xe8, 0x95, 0x25, 0x60, 0x18, 0x20, 0xbc, 0x17, 0xbd, 0x59, 0x5a, 0x7d, 0xbd, 0xef, 0x76, 0xe5, 0xb3, 0x52, 0xfc, 0xb1, 0x6c, 0x3a, 0x8a, 0x1c, 0x33, 0x2f, 0xf6, 0xa5, 0x30, 0x8f, 0xf4, 0x7a, 0x7e, 0x54, 0xe0, 0xb1, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_970 = { .name = "ecdsa_brainpoolp320r1_sha384_970", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_970_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_970_msg, .msglen = 8, .sig = ecdsa_brainpoolp320r1_sha384_970_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 971 for ECDSA, tcId is 61 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_971_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_971_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_971_sig[] = { 0xb4, 0xa4, 0xa0, 0x35, 0xdb, 0xea, 0xee, 0x12, 0x6d, 0x09, 0xc7, 0xb1, 0x58, 0x16, 0xb0, 0x4b, 0xc7, 0x17, 0xcb, 0x71, 0xbb, 0x5f, 0xe7, 0x64, 0x9a, 0xc0, 0x26, 0x26, 0x9b, 0x7f, 0xe6, 0xd5, 0x93, 0xfe, 0x1f, 0xf8, 0xfc, 0x52, 0x78, 0xa1, 0x63, 0x55, 0x16, 0xde, 0x53, 0x11, 0x04, 0xe7, 0x21, 0x76, 0xe8, 0x9a, 0x84, 0x50, 0x32, 0xb3, 0x09, 0x6e, 0x32, 0x69, 0xe4, 0x14, 0x31, 0xc1, 0x85, 0x4f, 0xbc, 0x43, 0x37, 0xba, 0x6f, 0xb5, 0xea, 0x91, 0xde, 0xfd, 0x33, 0x72, 0x9d, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_971 = { .name = "ecdsa_brainpoolp320r1_sha384_971", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_971_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_971_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_971_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 972 for ECDSA, tcId is 62 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_972_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_972_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_972_sig[] = { 0x2a, 0x31, 0x03, 0xcd, 0xaa, 0xd1, 0xdd, 0x28, 0xec, 0xf8, 0x97, 0x49, 0x10, 0x51, 0xdd, 0x0a, 0x9c, 0x9d, 0xa9, 0x48, 0x37, 0x53, 0xc9, 0x34, 0x90, 0xb4, 0xa0, 0x5f, 0x1c, 0x42, 0xe1, 0x64, 0x29, 0x25, 0xa3, 0xa0, 0x15, 0x4d, 0x40, 0x62, 0x67, 0x29, 0x03, 0x24, 0x3b, 0x68, 0x58, 0xa5, 0xe0, 0x91, 0x48, 0xe4, 0x03, 0x46, 0x1f, 0x31, 0xc1, 0xff, 0x0e, 0x12, 0x6c, 0x36, 0x59, 0x42, 0xe0, 0x68, 0x0d, 0x31, 0x4c, 0x1a, 0x7a, 0x7c, 0x57, 0xe2, 0xf0, 0x52, 0x8c, 0x8c, 0xab, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_972 = { .name = "ecdsa_brainpoolp320r1_sha384_972", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_972_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_972_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_972_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 973 for ECDSA, tcId is 63 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_973_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_973_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_973_sig[] = { 0xb8, 0x80, 0xb6, 0xbe, 0x2a, 0x12, 0x95, 0xaf, 0x38, 0x40, 0xa5, 0xf3, 0x74, 0xfe, 0x77, 0xcd, 0xe1, 0xff, 0xdd, 0x6d, 0xf3, 0xbb, 0x86, 0x09, 0x7d, 0x5c, 0xe1, 0x48, 0x52, 0xf7, 0x3a, 0x19, 0x25, 0xfa, 0x6d, 0x19, 0x2a, 0x27, 0xb7, 0x4c, 0xc2, 0xcb, 0x21, 0x13, 0x03, 0xae, 0xa0, 0x30, 0xa5, 0xb9, 0x2b, 0xe9, 0x8f, 0xc3, 0x67, 0x70, 0x82, 0x2f, 0x81, 0x95, 0xad, 0x73, 0xee, 0xe5, 0xa9, 0xbb, 0x87, 0xc5, 0x71, 0x7b, 0xa4, 0x34, 0x5c, 0xb6, 0x0b, 0x09, 0x9e, 0x4d, 0x4d, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_973 = { .name = "ecdsa_brainpoolp320r1_sha384_973", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_973_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_973_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_973_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 974 for ECDSA, tcId is 64 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_974_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_974_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_974_sig[] = { 0x67, 0x7f, 0x84, 0xa0, 0x65, 0x37, 0x25, 0xb9, 0x4e, 0x4e, 0xed, 0xdb, 0xe0, 0xb7, 0x0a, 0xef, 0xdf, 0x59, 0x4f, 0x5e, 0xf9, 0xe4, 0x84, 0xb4, 0x06, 0x05, 0x67, 0xa8, 0x36, 0x5c, 0x43, 0xa7, 0x83, 0xd8, 0x15, 0x48, 0xd1, 0xf2, 0x74, 0x08, 0x4c, 0xb2, 0x4e, 0x15, 0x37, 0x5b, 0xda, 0xe0, 0xb4, 0x4b, 0x33, 0x6f, 0xc7, 0xe6, 0xc1, 0x18, 0x56, 0xd4, 0xc6, 0xf9, 0xdd, 0x7e, 0x83, 0x14, 0x8d, 0xc3, 0x87, 0xc4, 0xa8, 0x86, 0x9b, 0x11, 0x53, 0x8b, 0x7e, 0xe9, 0x4f, 0x05, 0x3f, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_974 = { .name = "ecdsa_brainpoolp320r1_sha384_974", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_974_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_974_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_974_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 975 for ECDSA, tcId is 65 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_975_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_975_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_975_sig[] = { 0x9d, 0x5d, 0x98, 0x4c, 0x75, 0x44, 0xef, 0x73, 0x7a, 0x10, 0x01, 0xd6, 0x7f, 0x9d, 0xbb, 0xed, 0x52, 0x1b, 0x46, 0xf7, 0x4b, 0xc4, 0x68, 0xc0, 0x38, 0x81, 0xc2, 0xab, 0x59, 0x44, 0x63, 0x5a, 0xf5, 0x46, 0x5c, 0x3f, 0xa0, 0x1c, 0xf5, 0x1e, 0x0c, 0x70, 0x6d, 0xcf, 0xe1, 0x1a, 0x4e, 0x30, 0xd6, 0x23, 0x87, 0x0f, 0xb0, 0xf2, 0xb9, 0x79, 0xd0, 0xfd, 0x9d, 0xaa, 0x97, 0x0d, 0x86, 0xf6, 0x4b, 0xb4, 0x8f, 0x49, 0xaa, 0x48, 0x4d, 0x92, 0x4e, 0x9b, 0x93, 0xbc, 0xaf, 0x40, 0x69, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_975 = { .name = "ecdsa_brainpoolp320r1_sha384_975", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_975_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_975_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_975_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 976 for ECDSA, tcId is 66 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_976_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_976_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_976_sig[] = { 0x44, 0x84, 0x64, 0xbe, 0xcc, 0x13, 0x52, 0x2c, 0x90, 0x70, 0x8a, 0xa5, 0x20, 0x49, 0x30, 0xe6, 0x76, 0xfe, 0xdf, 0xba, 0xef, 0xe8, 0xfe, 0x02, 0x50, 0x9a, 0x4f, 0xe8, 0x22, 0xcc, 0x88, 0xfd, 0x6d, 0x92, 0xa9, 0x58, 0x43, 0x8d, 0xed, 0x7c, 0x5d, 0xe6, 0x59, 0xe0, 0x80, 0xa6, 0x1c, 0x50, 0xb5, 0xb7, 0x48, 0x9f, 0x46, 0x77, 0xec, 0x4c, 0x69, 0x31, 0xfa, 0xaf, 0x17, 0x1f, 0x2a, 0x69, 0x75, 0x6e, 0x2f, 0x2d, 0x12, 0x14, 0x23, 0x5b, 0xdb, 0x1e, 0xa3, 0xd2, 0xa4, 0xa7, 0x53, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_976 = { .name = "ecdsa_brainpoolp320r1_sha384_976", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_976_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_976_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_976_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 977 for ECDSA, tcId is 67 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_977_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_977_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_977_sig[] = { 0x59, 0xc0, 0xc9, 0x59, 0x41, 0xe1, 0xa5, 0x23, 0x90, 0xe0, 0x0c, 0x2d, 0x77, 0x96, 0xc6, 0x85, 0xdc, 0xc4, 0xd7, 0x3d, 0x6d, 0x69, 0x67, 0x59, 0x0a, 0xa1, 0x76, 0x7c, 0x97, 0x2e, 0x19, 0x9d, 0xe3, 0xc6, 0xdb, 0xfc, 0xa7, 0x7d, 0xca, 0xc8, 0x50, 0x7f, 0x27, 0xab, 0x5a, 0xc0, 0x5a, 0xd2, 0x3c, 0xb2, 0x5f, 0xc4, 0x8f, 0xfc, 0x76, 0x6d, 0xcb, 0x6d, 0xc0, 0xcd, 0x25, 0x60, 0x65, 0x05, 0xa2, 0xd2, 0x70, 0x06, 0x6c, 0x3a, 0x74, 0x84, 0x27, 0x68, 0xb5, 0x4a, 0xf2, 0xc8, 0x47, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_977 = { .name = "ecdsa_brainpoolp320r1_sha384_977", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_977_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_977_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_977_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 978 for ECDSA, tcId is 68 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_978_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_978_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_978_sig[] = { 0x59, 0x90, 0x2d, 0x77, 0x63, 0xe7, 0xf1, 0x87, 0x5a, 0x42, 0x52, 0xd1, 0x33, 0xeb, 0x61, 0x14, 0xcf, 0xc1, 0x97, 0x2b, 0x68, 0x3a, 0xdf, 0xd7, 0x67, 0xa7, 0x1c, 0xa8, 0x0c, 0x3f, 0x78, 0x05, 0x7c, 0xea, 0x75, 0x9e, 0xa1, 0x95, 0xd3, 0x1e, 0x39, 0x7d, 0xea, 0xf9, 0x6e, 0x29, 0x03, 0xa2, 0x07, 0xf6, 0x8e, 0x53, 0x30, 0xc9, 0xf2, 0xc6, 0x27, 0x6a, 0x45, 0xd0, 0xfd, 0xba, 0x96, 0x1a, 0x04, 0xc2, 0x75, 0xfa, 0x20, 0x36, 0x78, 0x17, 0x62, 0x01, 0xed, 0x37, 0x09, 0x99, 0xa3, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_978 = { .name = "ecdsa_brainpoolp320r1_sha384_978", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_978_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_978_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_978_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 979 for ECDSA, tcId is 69 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_979_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_979_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_979_sig[] = { 0xd1, 0x42, 0x21, 0x75, 0x84, 0xe8, 0x52, 0xa4, 0x99, 0xef, 0xa7, 0x34, 0xa1, 0x0a, 0x43, 0x6a, 0x39, 0x7b, 0xa7, 0xe0, 0x68, 0xad, 0x70, 0xf3, 0xee, 0xfc, 0x4d, 0x67, 0x31, 0xe7, 0x6a, 0x48, 0x1b, 0x26, 0x0e, 0xac, 0x1d, 0x21, 0x47, 0xf0, 0x17, 0xc8, 0x48, 0x26, 0x39, 0xdf, 0x8d, 0x20, 0xfc, 0xb8, 0x35, 0xbf, 0xe0, 0xf3, 0xec, 0xd2, 0x73, 0x17, 0xeb, 0x83, 0x15, 0xc6, 0x9b, 0x65, 0x6e, 0xbf, 0x13, 0x7d, 0xde, 0x65, 0x82, 0xf3, 0x40, 0x9d, 0x7c, 0x44, 0xa8, 0xb6, 0xe0, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_979 = { .name = "ecdsa_brainpoolp320r1_sha384_979", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_979_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_979_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_979_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 980 for ECDSA, tcId is 70 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_980_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_980_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_980_sig[] = { 0x8a, 0x55, 0xfa, 0x49, 0x22, 0x45, 0x92, 0xf7, 0xe4, 0x03, 0xa4, 0xb3, 0xe6, 0x47, 0xbf, 0x38, 0x2a, 0x26, 0x49, 0x9b, 0x37, 0xec, 0x2c, 0xff, 0x51, 0xa2, 0xbe, 0x2a, 0x13, 0x57, 0x80, 0x7f, 0xe8, 0x75, 0x35, 0x9e, 0xc8, 0x65, 0x4f, 0x87, 0xb9, 0x50, 0x6e, 0x74, 0xaf, 0x8f, 0x55, 0x2d, 0x4a, 0xbb, 0x2c, 0x47, 0x2b, 0x85, 0x08, 0xce, 0x24, 0x81, 0x4e, 0x20, 0xb2, 0x7d, 0x19, 0x2e, 0x24, 0xd3, 0x6d, 0x5a, 0xc7, 0x51, 0x92, 0x2b, 0x0c, 0x80, 0x7b, 0xf9, 0x7a, 0x7b, 0x1a, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_980 = { .name = "ecdsa_brainpoolp320r1_sha384_980", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_980_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_980_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_980_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 981 for ECDSA, tcId is 71 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_981_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_981_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_981_sig[] = { 0x68, 0xad, 0x2d, 0xa6, 0x43, 0xd6, 0x6f, 0xc5, 0xd2, 0x7b, 0x63, 0xd7, 0x22, 0x2f, 0x83, 0x5d, 0x09, 0xfe, 0x0b, 0x32, 0x8f, 0xc4, 0xda, 0x46, 0x84, 0xb8, 0x6d, 0x9c, 0x12, 0xb3, 0x99, 0x26, 0x26, 0xf6, 0x10, 0xe3, 0x39, 0x5e, 0x4e, 0xd0, 0x96, 0x62, 0xf7, 0x4d, 0x52, 0x71, 0x2a, 0x2a, 0xf5, 0x4f, 0x60, 0x1c, 0x44, 0x88, 0x93, 0x4f, 0xe2, 0x82, 0x6d, 0x50, 0xe1, 0xee, 0x86, 0x80, 0x22, 0x43, 0x7c, 0x9b, 0x62, 0x0c, 0x93, 0xd4, 0x3f, 0xc7, 0x50, 0xf0, 0x33, 0x12, 0x89, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_981 = { .name = "ecdsa_brainpoolp320r1_sha384_981", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_981_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_981_msg, .msglen = 11, .sig = ecdsa_brainpoolp320r1_sha384_981_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 982 for ECDSA, tcId is 72 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_982_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_982_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_982_sig[] = { 0x57, 0x8b, 0xdd, 0x50, 0xde, 0x99, 0x86, 0xfa, 0xd3, 0x41, 0xa9, 0x54, 0xe5, 0x11, 0x26, 0xff, 0x0c, 0xb5, 0x40, 0x02, 0x6a, 0xbb, 0x3d, 0x42, 0xb3, 0xc2, 0x08, 0xe4, 0xad, 0x18, 0x7f, 0x7b, 0xa2, 0xd9, 0x9b, 0x3e, 0xfe, 0x49, 0x5c, 0x92, 0xb9, 0x5a, 0xfd, 0x2d, 0x12, 0xcd, 0xee, 0x68, 0xc3, 0x57, 0x2a, 0x5f, 0xe1, 0x26, 0x33, 0x4e, 0xd0, 0xed, 0x7b, 0xa8, 0x2d, 0x30, 0x97, 0xea, 0xa6, 0xd9, 0xd7, 0x37, 0xc0, 0x9b, 0x83, 0x0b, 0x6c, 0xd3, 0xe8, 0x78, 0xf4, 0x70, 0xe7, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_982 = { .name = "ecdsa_brainpoolp320r1_sha384_982", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_982_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_982_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_982_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 983 for ECDSA, tcId is 73 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_983_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_983_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_983_sig[] = { 0x9d, 0x61, 0x26, 0x63, 0x49, 0x7c, 0x48, 0x40, 0x84, 0xd3, 0xd1, 0x5d, 0x8e, 0x79, 0x9e, 0x1f, 0xe3, 0x8b, 0x7b, 0x59, 0x22, 0x95, 0x5f, 0xc5, 0xa7, 0xfe, 0xa4, 0xec, 0xfc, 0x41, 0x95, 0x4c, 0xa7, 0x07, 0x52, 0x5c, 0x1e, 0x0d, 0xc0, 0x10, 0x59, 0xe8, 0x0c, 0xf6, 0x9b, 0xe6, 0x87, 0x6b, 0x95, 0x35, 0x7d, 0xed, 0x13, 0xca, 0x61, 0xa4, 0x94, 0xfa, 0xc7, 0x35, 0x5a, 0xc2, 0xe8, 0x0a, 0x89, 0xbe, 0x02, 0x19, 0x55, 0x2d, 0x91, 0x68, 0x52, 0x63, 0x26, 0x17, 0xc0, 0x94, 0x6b, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_983 = { .name = "ecdsa_brainpoolp320r1_sha384_983", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_983_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_983_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_983_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 984 for ECDSA, tcId is 74 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_984_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_984_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_984_sig[] = { 0xb4, 0xc0, 0x0f, 0x58, 0x9d, 0xbb, 0x51, 0xea, 0x68, 0x27, 0x0f, 0x4b, 0x02, 0xef, 0xf4, 0x8a, 0x4b, 0x12, 0x3c, 0x01, 0x67, 0xbb, 0xd2, 0x4d, 0xaf, 0x2a, 0x83, 0x79, 0x03, 0xe7, 0x34, 0x33, 0x9b, 0x8a, 0x25, 0x42, 0x04, 0x1f, 0x87, 0xaa, 0x94, 0xc3, 0x26, 0x34, 0xba, 0xea, 0x44, 0x52, 0xc0, 0x54, 0x29, 0x5d, 0x7a, 0xeb, 0xe2, 0x3b, 0xe7, 0xe8, 0x0a, 0xbb, 0xf5, 0x37, 0x89, 0x65, 0x16, 0x74, 0x18, 0x22, 0x63, 0xee, 0x5c, 0x29, 0x02, 0xfb, 0xfb, 0x3d, 0xf7, 0xda, 0x74, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_984 = { .name = "ecdsa_brainpoolp320r1_sha384_984", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_984_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_984_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_984_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 985 for ECDSA, tcId is 75 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_985_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_985_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_985_sig[] = { 0xb9, 0x20, 0x1e, 0x49, 0x95, 0x0c, 0xe0, 0xd1, 0xdf, 0x64, 0x43, 0x56, 0x40, 0x5f, 0x0a, 0x78, 0x5a, 0x8b, 0x84, 0x70, 0xf8, 0x3e, 0x78, 0xa6, 0xf3, 0x5e, 0x62, 0x34, 0xda, 0xa9, 0x2a, 0x76, 0x85, 0x87, 0x7a, 0x59, 0xd8, 0xc9, 0x1a, 0x97, 0x8b, 0xee, 0x90, 0x77, 0x44, 0x3e, 0xed, 0xde, 0x34, 0xa2, 0xfc, 0x2c, 0x26, 0x6f, 0x18, 0x8e, 0x84, 0x4e, 0xab, 0x29, 0x04, 0xc8, 0x42, 0x04, 0xc8, 0x16, 0xba, 0x3c, 0xb1, 0xc4, 0xb9, 0xb2, 0x53, 0xd4, 0xa7, 0x8c, 0xe4, 0xe8, 0x11, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_985 = { .name = "ecdsa_brainpoolp320r1_sha384_985", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_985_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_985_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_985_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 986 for ECDSA, tcId is 76 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_986_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_986_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_986_sig[] = { 0x0d, 0x42, 0xa1, 0x89, 0x9f, 0x73, 0xac, 0x70, 0xc9, 0x19, 0x25, 0x58, 0xb4, 0x78, 0xdb, 0x88, 0x03, 0xc6, 0x83, 0x37, 0xd4, 0x15, 0xfa, 0xeb, 0xab, 0x76, 0x85, 0x8c, 0x32, 0xa3, 0x7e, 0x39, 0x9f, 0x17, 0x27, 0xfd, 0x59, 0x9a, 0x18, 0x17, 0x36, 0x3f, 0x13, 0x46, 0xc0, 0x22, 0x7e, 0xc5, 0x4d, 0xa1, 0x65, 0x91, 0x65, 0xee, 0x7b, 0x07, 0xe0, 0x66, 0x10, 0xd3, 0x6b, 0x1c, 0xe6, 0x22, 0x6f, 0x60, 0x8b, 0xf6, 0xce, 0xf2, 0x14, 0x42, 0x48, 0xde, 0x37, 0x56, 0x2b, 0xe8, 0x53, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_986 = { .name = "ecdsa_brainpoolp320r1_sha384_986", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_986_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_986_msg, .msglen = 8, .sig = ecdsa_brainpoolp320r1_sha384_986_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 987 for ECDSA, tcId is 77 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_987_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_987_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_987_sig[] = { 0xc5, 0xd6, 0x5e, 0xff, 0xab, 0x2e, 0xc3, 0xe4, 0x43, 0x5c, 0x25, 0x81, 0x21, 0xc4, 0x93, 0xe2, 0x4a, 0xe9, 0x20, 0x05, 0xac, 0x80, 0x13, 0x6f, 0x21, 0xf2, 0xf4, 0x29, 0x46, 0xfc, 0x37, 0x45, 0x84, 0x1d, 0xbc, 0x2a, 0x3e, 0xb9, 0x96, 0x95, 0x85, 0xfe, 0xc2, 0xa9, 0x08, 0x0a, 0x1e, 0xce, 0x18, 0x89, 0x69, 0x70, 0xc9, 0xa2, 0xe1, 0xb3, 0x22, 0x40, 0xea, 0xf1, 0x87, 0xd6, 0x5f, 0x6f, 0x9e, 0x91, 0xd2, 0x71, 0x11, 0xc4, 0x03, 0x3d, 0x47, 0x1e, 0xda, 0x67, 0xeb, 0x89, 0x86, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_987 = { .name = "ecdsa_brainpoolp320r1_sha384_987", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_987_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_987_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_987_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 988 for ECDSA, tcId is 78 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_988_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_988_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_988_sig[] = { 0xa2, 0x40, 0xad, 0xea, 0x61, 0xf7, 0x48, 0x99, 0x8d, 0xf2, 0xcd, 0xe9, 0x5b, 0xe9, 0xd7, 0xdf, 0x30, 0xf4, 0x54, 0xbd, 0xe5, 0xb9, 0x07, 0xec, 0x7d, 0xe6, 0xdc, 0xdb, 0x12, 0x1b, 0xea, 0x41, 0xbd, 0x42, 0xc4, 0x39, 0x24, 0x76, 0xc4, 0xf9, 0x3e, 0xf9, 0x91, 0xd6, 0x42, 0xbd, 0x02, 0x65, 0xb4, 0xa7, 0xb5, 0x21, 0xb2, 0x0a, 0x42, 0xfb, 0x2c, 0x68, 0x7c, 0xa2, 0xf0, 0x69, 0x4b, 0x23, 0x9a, 0x11, 0x3a, 0x83, 0x57, 0x5b, 0x57, 0x27, 0xdc, 0xb6, 0x32, 0x48, 0x2a, 0x57, 0x26, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_988 = { .name = "ecdsa_brainpoolp320r1_sha384_988", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_988_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_988_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_988_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 989 for ECDSA, tcId is 79 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_989_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_989_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_989_sig[] = { 0xca, 0xd5, 0x2b, 0xdb, 0x35, 0xaf, 0x7e, 0xe0, 0xe8, 0xf6, 0x87, 0xc8, 0x1f, 0x2e, 0xdd, 0x8e, 0xfc, 0x2d, 0x6e, 0xe3, 0x17, 0xf3, 0xc6, 0xa8, 0x21, 0x21, 0x04, 0x8e, 0xf7, 0xa3, 0xff, 0x3b, 0x69, 0x18, 0x7a, 0xae, 0xa5, 0x3f, 0x49, 0x26, 0x58, 0xf8, 0x4e, 0x18, 0x66, 0x16, 0x54, 0x4a, 0xf4, 0x94, 0x90, 0x02, 0x41, 0xd2, 0xb8, 0x02, 0xdf, 0x2e, 0xae, 0x3e, 0x3f, 0x14, 0x10, 0x86, 0x5e, 0x4c, 0xd1, 0x6e, 0x22, 0x1f, 0x27, 0x7e, 0x7b, 0x50, 0x93, 0xff, 0x18, 0x6e, 0x4d, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_989 = { .name = "ecdsa_brainpoolp320r1_sha384_989", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_989_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_989_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_989_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 990 for ECDSA, tcId is 80 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_990_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_990_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_990_sig[] = { 0x93, 0x01, 0x3f, 0xf8, 0x41, 0x51, 0xa0, 0x4e, 0xa1, 0x46, 0xa3, 0x6d, 0x2a, 0x3b, 0x9f, 0x49, 0x7b, 0xa5, 0xd9, 0x32, 0x30, 0x19, 0xb7, 0x30, 0xbe, 0x32, 0x2b, 0xc5, 0x19, 0xe2, 0x70, 0x1e, 0x3f, 0x0e, 0xc1, 0xb6, 0xc8, 0x01, 0x5e, 0x8f, 0x87, 0x26, 0x69, 0xf3, 0x3b, 0x9b, 0x4b, 0x93, 0x38, 0x4d, 0x9a, 0xc3, 0xf7, 0xc3, 0x09, 0x25, 0x60, 0xb9, 0xaf, 0x7e, 0x67, 0x38, 0x22, 0x1e, 0x3b, 0x28, 0x94, 0x21, 0x81, 0x36, 0x01, 0xfe, 0x56, 0x9b, 0x2c, 0x49, 0xaf, 0xec, 0x8b, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_990 = { .name = "ecdsa_brainpoolp320r1_sha384_990", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_990_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_990_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_990_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 991 for ECDSA, tcId is 81 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_991_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_991_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_991_sig[] = { 0x26, 0x22, 0x8c, 0xdd, 0x2c, 0x08, 0xfb, 0xf8, 0xdd, 0x4a, 0xd5, 0xd2, 0xf8, 0x0e, 0xd1, 0x51, 0x29, 0x86, 0x8e, 0x89, 0x2d, 0x33, 0xcd, 0x89, 0x25, 0x03, 0x20, 0x7e, 0x91, 0x11, 0x4c, 0x86, 0x8d, 0x00, 0x64, 0xc6, 0x0f, 0x1b, 0xb6, 0x12, 0xaf, 0xde, 0xdc, 0x05, 0xf0, 0xb2, 0x7e, 0x93, 0x63, 0xc3, 0x4d, 0x9b, 0xd1, 0xbc, 0x64, 0xec, 0x01, 0x42, 0xfc, 0xd9, 0xf4, 0x0f, 0x35, 0x84, 0x60, 0x5b, 0xbc, 0xcf, 0x12, 0xb0, 0xe2, 0x79, 0xe4, 0xb3, 0xe3, 0xd0, 0x92, 0x7a, 0x48, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_991 = { .name = "ecdsa_brainpoolp320r1_sha384_991", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_991_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_991_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_991_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 992 for ECDSA, tcId is 82 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_992_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_992_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_992_sig[] = { 0x73, 0x1d, 0x59, 0x7c, 0x36, 0x94, 0xa4, 0x93, 0x2f, 0x0f, 0x14, 0xfc, 0x31, 0x32, 0xd2, 0xba, 0x9f, 0x5b, 0x7d, 0x83, 0x3a, 0xe9, 0x1c, 0xbe, 0x9a, 0x45, 0x03, 0x52, 0xf4, 0x24, 0x0d, 0x5b, 0xb7, 0x12, 0xf6, 0x5b, 0x0e, 0xea, 0x04, 0x12, 0x1b, 0x8a, 0x6f, 0xc9, 0xbc, 0x1e, 0xcf, 0x8c, 0x09, 0xb1, 0xba, 0x27, 0xc4, 0xc8, 0xdc, 0xeb, 0xaf, 0x1e, 0x66, 0x9a, 0x89, 0x03, 0x6b, 0x34, 0xfa, 0x8f, 0xf5, 0x72, 0x80, 0xe5, 0x74, 0x19, 0x59, 0xe6, 0xc0, 0x5e, 0x05, 0x88, 0x0a, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_992 = { .name = "ecdsa_brainpoolp320r1_sha384_992", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_992_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_992_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_992_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 993 for ECDSA, tcId is 83 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_993_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_993_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_993_sig[] = { 0xd2, 0xab, 0x69, 0xae, 0x61, 0x10, 0xbb, 0x67, 0xed, 0x99, 0xff, 0xbd, 0xad, 0x80, 0x36, 0xdf, 0xab, 0xc4, 0x6d, 0xe8, 0xae, 0x1f, 0xc7, 0xe7, 0x99, 0x98, 0x6b, 0x91, 0xba, 0x7d, 0x45, 0x46, 0x72, 0xeb, 0xe4, 0x89, 0x6c, 0xf7, 0x20, 0x11, 0xd2, 0x9d, 0x67, 0xbf, 0x2b, 0x88, 0x27, 0x70, 0xd4, 0x6d, 0xbd, 0x06, 0xa6, 0xfb, 0xaa, 0xd5, 0x83, 0xc2, 0xce, 0xed, 0xcb, 0xd7, 0x72, 0x20, 0x0b, 0x75, 0x32, 0xe3, 0x54, 0xf8, 0x6e, 0xaf, 0x9a, 0x94, 0x18, 0x19, 0x1e, 0xaf, 0xc5, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_993 = { .name = "ecdsa_brainpoolp320r1_sha384_993", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_993_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_993_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_993_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 994 for ECDSA, tcId is 84 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_994_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_994_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_994_sig[] = { 0x81, 0xda, 0x10, 0xc5, 0xfe, 0xf4, 0xbf, 0xb5, 0x8b, 0x4a, 0x73, 0xb4, 0xcf, 0x3f, 0xd4, 0xf0, 0xf0, 0x28, 0xb4, 0x48, 0xb3, 0x46, 0x3d, 0xab, 0xe0, 0xd6, 0xf1, 0xe1, 0x01, 0xaf, 0x57, 0x0f, 0xa6, 0x41, 0x16, 0x73, 0x1e, 0xa5, 0xb9, 0xc2, 0xce, 0xac, 0x01, 0xeb, 0xad, 0x70, 0x6e, 0xf4, 0x3c, 0x80, 0xca, 0xa1, 0xd8, 0x96, 0x2c, 0x65, 0x5b, 0xfd, 0x81, 0x03, 0x96, 0xb9, 0x4d, 0x2b, 0xbe, 0xa2, 0x99, 0xbd, 0x5c, 0xbc, 0xce, 0xd7, 0x55, 0x62, 0xb0, 0xfa, 0xb4, 0x46, 0xff, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_994 = { .name = "ecdsa_brainpoolp320r1_sha384_994", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_994_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_994_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_994_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 995 for ECDSA, tcId is 85 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_995_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_995_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_995_sig[] = { 0x38, 0x35, 0x8b, 0xa2, 0xc4, 0x6f, 0x61, 0xf3, 0x9b, 0xef, 0x22, 0x87, 0x3a, 0x5b, 0xf2, 0x64, 0x64, 0xf2, 0xb0, 0x5e, 0x48, 0x74, 0xbb, 0xb6, 0x2a, 0x23, 0x23, 0x38, 0x5f, 0x8e, 0x87, 0xa5, 0xb1, 0x18, 0xa0, 0x07, 0x90, 0x78, 0xb4, 0x4d, 0x93, 0xf8, 0x4f, 0x06, 0x29, 0x0f, 0x48, 0x16, 0x19, 0x22, 0x55, 0x25, 0x77, 0x48, 0x2a, 0x97, 0x34, 0x04, 0xf4, 0x7c, 0x84, 0xc6, 0xe1, 0xa9, 0x46, 0x43, 0xc3, 0x83, 0x2f, 0xb2, 0x91, 0x2f, 0xc4, 0xb3, 0x85, 0x29, 0xe2, 0xf1, 0x3e, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_995 = { .name = "ecdsa_brainpoolp320r1_sha384_995", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_995_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_995_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_995_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 996 for ECDSA, tcId is 86 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_996_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_996_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_996_sig[] = { 0xaf, 0xd1, 0xfb, 0xa7, 0x00, 0xfc, 0x70, 0x3f, 0xb7, 0x72, 0xf7, 0x01, 0x59, 0x7a, 0xdd, 0xdc, 0xce, 0x4f, 0xf9, 0xf5, 0x30, 0xc8, 0x30, 0xdc, 0x8c, 0x8c, 0xbd, 0x4b, 0x30, 0x70, 0xf4, 0xa2, 0x2b, 0x80, 0x51, 0x6b, 0x0b, 0x82, 0x09, 0x70, 0x76, 0xc2, 0xe8, 0x90, 0x86, 0x0c, 0x36, 0xbb, 0xb5, 0xf6, 0xa1, 0x05, 0x34, 0x01, 0xf1, 0xb5, 0x1a, 0xa8, 0x3c, 0xdf, 0xd9, 0x6a, 0x3c, 0x15, 0xe1, 0xa1, 0x83, 0xfd, 0xf8, 0x35, 0x7e, 0x49, 0xd2, 0x98, 0x4e, 0x4f, 0xcf, 0x19, 0xc2, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_996 = { .name = "ecdsa_brainpoolp320r1_sha384_996", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_996_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_996_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_996_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 997 for ECDSA, tcId is 87 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_997_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_997_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_997_sig[] = { 0x8c, 0x90, 0xd4, 0xc8, 0xbf, 0x02, 0x19, 0x06, 0xd3, 0xd5, 0x77, 0xbd, 0x16, 0xb3, 0xe1, 0x39, 0xbb, 0xc3, 0x5d, 0x76, 0x92, 0xa8, 0x28, 0xf0, 0xef, 0x5c, 0xdf, 0x9d, 0x51, 0xa8, 0x44, 0x22, 0x65, 0xf8, 0x15, 0x84, 0x9f, 0xe7, 0x93, 0xb8, 0x0b, 0xfe, 0x16, 0x49, 0x2a, 0xbb, 0x58, 0xa1, 0xd8, 0x06, 0x47, 0x67, 0x54, 0x6d, 0x29, 0xaa, 0xf6, 0x13, 0x8c, 0x58, 0x42, 0xc7, 0xf7, 0x00, 0x2f, 0xba, 0xc3, 0x4b, 0x78, 0xb3, 0x24, 0xb8, 0x44, 0x26, 0x51, 0x0c, 0x1b, 0x7b, 0x0d, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_997 = { .name = "ecdsa_brainpoolp320r1_sha384_997", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_997_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_997_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_997_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 998 for ECDSA, tcId is 88 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_998_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_998_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_998_sig[] = { 0x6d, 0x07, 0xda, 0x92, 0xbd, 0x40, 0x59, 0x12, 0xb2, 0x2a, 0x99, 0x3e, 0xd3, 0x0e, 0x06, 0x14, 0x9c, 0x78, 0x74, 0x3f, 0xa1, 0x95, 0xfc, 0xd3, 0xba, 0xf0, 0x58, 0x03, 0xfd, 0xdd, 0x5a, 0x64, 0x08, 0x20, 0x1e, 0x68, 0xfa, 0xee, 0x62, 0x2a, 0x5a, 0xd3, 0xc8, 0xb4, 0xc1, 0xc6, 0x80, 0x80, 0x27, 0x9f, 0x20, 0xba, 0x15, 0x54, 0x83, 0x43, 0xfc, 0xa9, 0xec, 0x52, 0xfe, 0x23, 0xbd, 0xf5, 0x96, 0x19, 0x73, 0x8d, 0xd1, 0xbd, 0x41, 0x84, 0x14, 0xac, 0x53, 0xad, 0x7c, 0xe1, 0x6c, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_998 = { .name = "ecdsa_brainpoolp320r1_sha384_998", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_998_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_998_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_998_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 999 for ECDSA, tcId is 89 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_999_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_999_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_999_sig[] = { 0xbe, 0x43, 0xdf, 0x61, 0x7f, 0x79, 0xef, 0x83, 0x40, 0x4e, 0x7c, 0x73, 0x93, 0xed, 0x3c, 0x38, 0xc8, 0x15, 0xd0, 0x6e, 0x3c, 0x0d, 0xeb, 0xf9, 0xba, 0x37, 0xf3, 0x6c, 0x41, 0x9a, 0x6c, 0x3e, 0xa6, 0x90, 0x82, 0x2f, 0x88, 0x01, 0x1f, 0xf1, 0x2f, 0x0a, 0xd4, 0xee, 0x5f, 0xe7, 0xad, 0x12, 0x8f, 0x58, 0xa5, 0x20, 0xa4, 0xfb, 0xad, 0x3f, 0x0a, 0x50, 0x2a, 0x4a, 0x44, 0x12, 0x63, 0x9b, 0x3d, 0xbc, 0x20, 0x6e, 0xdf, 0xb2, 0xa0, 0x3d, 0x56, 0x40, 0x10, 0xd7, 0x8d, 0x22, 0x28, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_999 = { .name = "ecdsa_brainpoolp320r1_sha384_999", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_999_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_999_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_999_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1000 for ECDSA, tcId is 90 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1000_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1000_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1000_sig[] = { 0x84, 0x4c, 0xa2, 0x93, 0x40, 0x11, 0x2d, 0x0e, 0xb9, 0xdd, 0x15, 0xf6, 0x26, 0x55, 0xa0, 0xcf, 0xa9, 0x93, 0x41, 0x5e, 0x57, 0x05, 0x11, 0xa3, 0xf7, 0x27, 0x36, 0x23, 0xb8, 0x2d, 0x89, 0x2d, 0x13, 0x6c, 0x6e, 0x8b, 0xc5, 0x7d, 0xb8, 0x4e, 0x71, 0x11, 0x4a, 0xe5, 0x79, 0xd0, 0x53, 0xb5, 0xcb, 0x3d, 0x77, 0xd2, 0xe9, 0xfa, 0xf1, 0xc0, 0x6c, 0xc2, 0x63, 0xab, 0x8f, 0xd8, 0x45, 0xa0, 0x37, 0x8f, 0x4a, 0x75, 0xda, 0x86, 0xdd, 0xc2, 0x3a, 0xb4, 0xd0, 0x79, 0x46, 0x83, 0x2a, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1000 = { .name = "ecdsa_brainpoolp320r1_sha384_1000", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1000_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1000_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1000_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1001 for ECDSA, tcId is 91 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1001_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1001_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1001_sig[] = { 0xcd, 0xa8, 0x53, 0x12, 0x22, 0x50, 0x2a, 0x62, 0x36, 0x8f, 0xdd, 0xc7, 0x24, 0x79, 0x88, 0x70, 0x03, 0x83, 0x33, 0xb9, 0xfa, 0x77, 0x14, 0x1d, 0x4b, 0xc5, 0xef, 0x75, 0x8f, 0x7e, 0x97, 0x3e, 0x5a, 0xb8, 0xb4, 0xcf, 0xae, 0x90, 0xea, 0xa1, 0x9e, 0xad, 0x50, 0xa2, 0x53, 0x32, 0x87, 0xab, 0xe5, 0x50, 0x4e, 0xfd, 0x8d, 0xb5, 0x7f, 0x8b, 0x96, 0xa7, 0xfe, 0x03, 0x9c, 0xc9, 0x5d, 0x16, 0x90, 0xea, 0x0c, 0x1e, 0x2c, 0x9d, 0xf5, 0xfc, 0x29, 0xcd, 0xdd, 0x7b, 0x01, 0xed, 0xb9, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1001 = { .name = "ecdsa_brainpoolp320r1_sha384_1001", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1001_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1001_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1001_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1002 for ECDSA, tcId is 92 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1002_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1002_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1002_sig[] = { 0x5c, 0x2c, 0x6a, 0x66, 0x13, 0x38, 0xdf, 0x36, 0x5a, 0xf8, 0xba, 0x10, 0x80, 0xb9, 0x94, 0xe5, 0x99, 0x89, 0xf0, 0x02, 0xfa, 0x4f, 0xff, 0x42, 0xfc, 0x89, 0x94, 0xca, 0x63, 0x95, 0x62, 0x01, 0x52, 0xf3, 0x97, 0x13, 0x00, 0xaf, 0xf6, 0xf9, 0x86, 0x81, 0xea, 0x17, 0x93, 0xbd, 0x3e, 0x06, 0x94, 0x26, 0x12, 0x7a, 0x6b, 0x66, 0x57, 0x25, 0xdd, 0xba, 0x4a, 0x8f, 0x19, 0x45, 0x85, 0x17, 0x43, 0x47, 0x7a, 0x1c, 0xbd, 0xc7, 0x35, 0x67, 0x13, 0xae, 0x70, 0xfc, 0x13, 0x85, 0x31, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1002 = { .name = "ecdsa_brainpoolp320r1_sha384_1002", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1002_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1002_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1002_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1003 for ECDSA, tcId is 93 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1003_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1003_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1003_sig[] = { 0x0e, 0x06, 0x1b, 0x48, 0xb5, 0xf7, 0x83, 0x6e, 0x0c, 0xaf, 0x73, 0xc9, 0x77, 0x0c, 0x3f, 0xee, 0x1f, 0x67, 0xec, 0x18, 0xde, 0xd9, 0xe1, 0xd3, 0x39, 0xab, 0x56, 0xd0, 0x5b, 0x9a, 0xdd, 0xe3, 0x69, 0x50, 0x4f, 0xed, 0xff, 0x1d, 0x66, 0x81, 0x00, 0x9d, 0xbc, 0x4a, 0xd8, 0xed, 0xc1, 0x89, 0x6f, 0xa0, 0x41, 0xca, 0x60, 0xac, 0x64, 0xb7, 0xfa, 0x14, 0x8e, 0x3f, 0x02, 0xb0, 0xf6, 0x97, 0xae, 0x22, 0xd9, 0x23, 0xf5, 0x26, 0xfd, 0x49, 0x36, 0xe5, 0xf5, 0x84, 0xb2, 0x3d, 0xdb, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1003 = { .name = "ecdsa_brainpoolp320r1_sha384_1003", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1003_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1003_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1003_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1004 for ECDSA, tcId is 94 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1004_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1004_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1004_sig[] = { 0xa8, 0x46, 0x26, 0x05, 0xc7, 0x94, 0x37, 0xc0, 0x68, 0x52, 0x3d, 0x93, 0xd2, 0xe1, 0x52, 0x9c, 0xca, 0xe1, 0xb5, 0x24, 0x8e, 0x8f, 0x9a, 0x90, 0xf2, 0xef, 0x08, 0xd9, 0xd5, 0xe5, 0x02, 0x5b, 0x36, 0x39, 0xf8, 0x2b, 0x70, 0xf1, 0xe7, 0xed, 0x67, 0xaa, 0x5f, 0xe4, 0xe7, 0x9e, 0x7c, 0x54, 0xa8, 0xce, 0x38, 0x9b, 0x90, 0xe1, 0xce, 0x15, 0x56, 0xaa, 0x68, 0x9b, 0x44, 0x81, 0x4a, 0x6c, 0xb5, 0xc2, 0xf0, 0xfe, 0x45, 0x69, 0xc5, 0xcf, 0xce, 0xe3, 0x4c, 0xbb, 0x4a, 0x08, 0x62, 0x19, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1004 = { .name = "ecdsa_brainpoolp320r1_sha384_1004", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1004_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1004_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1004_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1005 for ECDSA, tcId is 95 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1005_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1005_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1005_sig[] = { 0x93, 0xb0, 0x10, 0x29, 0x42, 0x1c, 0xa3, 0x0d, 0x8a, 0xbb, 0xd0, 0x6f, 0x13, 0x4e, 0xe9, 0xdc, 0xbe, 0x81, 0x79, 0x0d, 0x01, 0x27, 0x22, 0xae, 0x65, 0x21, 0x4f, 0x0a, 0xaa, 0x34, 0xbb, 0xa6, 0x42, 0xf4, 0x39, 0x49, 0xd5, 0xec, 0x51, 0xa5, 0x11, 0x0e, 0x4f, 0xce, 0x36, 0xe0, 0xc2, 0xac, 0xd8, 0x98, 0x12, 0x2f, 0xba, 0x75, 0x6e, 0x71, 0x1a, 0xd0, 0x82, 0x08, 0x7c, 0x36, 0xb1, 0x25, 0x08, 0x4f, 0x67, 0xb2, 0x2e, 0x37, 0xa0, 0x2b, 0xd6, 0x86, 0x28, 0xcd, 0xb1, 0x64, 0xec, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1005 = { .name = "ecdsa_brainpoolp320r1_sha384_1005", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1005_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1005_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1005_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1006 for ECDSA, tcId is 96 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1006_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1006_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1006_sig[] = { 0x6b, 0x6d, 0x89, 0x3c, 0x30, 0x55, 0xda, 0x5d, 0x5a, 0x2f, 0xf6, 0xce, 0x03, 0x8a, 0x1b, 0xec, 0x59, 0xb0, 0x49, 0x50, 0xbf, 0xd8, 0x01, 0x26, 0x48, 0xd6, 0x06, 0x31, 0x86, 0xff, 0x86, 0x1d, 0x7a, 0xa9, 0x1a, 0x51, 0x85, 0xaa, 0x3c, 0x0c, 0xa6, 0x02, 0xed, 0x34, 0xee, 0x41, 0xe4, 0x81, 0x12, 0x51, 0xa5, 0x1b, 0xd6, 0x70, 0x10, 0xf8, 0xeb, 0x33, 0x55, 0xb8, 0x69, 0x1d, 0xad, 0x66, 0x03, 0x5e, 0x72, 0x3d, 0x97, 0x13, 0x46, 0xf5, 0x7c, 0x8a, 0x0f, 0x47, 0x9f, 0xef, 0x66, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1006 = { .name = "ecdsa_brainpoolp320r1_sha384_1006", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1006_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1006_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1006_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1007 for ECDSA, tcId is 97 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1007_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1007_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1007_sig[] = { 0x6f, 0xc4, 0x2c, 0xf2, 0x3a, 0xa4, 0x2c, 0x36, 0x67, 0x5f, 0xf1, 0x26, 0x41, 0x2c, 0x75, 0x7d, 0xde, 0x74, 0xef, 0x73, 0xca, 0xdb, 0x04, 0x25, 0xe2, 0x3c, 0xb7, 0x62, 0x30, 0xa5, 0x8b, 0x3d, 0x00, 0x23, 0x70, 0xb4, 0x16, 0x6b, 0xfd, 0x29, 0x4e, 0x61, 0xb9, 0xb1, 0x0a, 0x13, 0xfe, 0x0d, 0xd2, 0x75, 0x87, 0x33, 0xf6, 0xb1, 0x78, 0xaf, 0x98, 0xe0, 0x07, 0x98, 0x67, 0x83, 0x7d, 0x55, 0xf8, 0xe5, 0xe9, 0x0b, 0x57, 0x7d, 0xe9, 0x0c, 0xe0, 0xd8, 0xdc, 0x34, 0x5e, 0xd1, 0x6b, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1007 = { .name = "ecdsa_brainpoolp320r1_sha384_1007", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1007_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1007_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1007_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1008 for ECDSA, tcId is 98 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1008_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1008_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1008_sig[] = { 0xb5, 0x29, 0xa5, 0x63, 0xa2, 0xf4, 0x06, 0x5d, 0x33, 0x3c, 0x81, 0x2b, 0x0b, 0x61, 0x34, 0xde, 0x97, 0x35, 0xbb, 0x26, 0x9f, 0xea, 0x76, 0x3f, 0x01, 0xcf, 0x7d, 0x1c, 0x6a, 0x0e, 0xc7, 0x0d, 0x72, 0x23, 0xc7, 0xe6, 0xc1, 0xb0, 0x40, 0xe8, 0x34, 0x7f, 0xcb, 0x8f, 0x39, 0x71, 0xb3, 0xd9, 0x68, 0xba, 0x70, 0x9b, 0x1b, 0xd4, 0xd3, 0x1b, 0x55, 0x0c, 0xce, 0xed, 0x23, 0x22, 0x68, 0xca, 0x0d, 0xf1, 0xe0, 0x05, 0x02, 0xa5, 0x6a, 0xa4, 0x2d, 0xde, 0x73, 0x30, 0xbd, 0x91, 0x9d, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1008 = { .name = "ecdsa_brainpoolp320r1_sha384_1008", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1008_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1008_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1008_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1009 for ECDSA, tcId is 99 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1009_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1009_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1009_sig[] = { 0xb9, 0x1b, 0x2a, 0x73, 0x44, 0x95, 0x60, 0x52, 0x21, 0x12, 0xfa, 0x4f, 0xd1, 0xb5, 0x7b, 0x8c, 0x24, 0x75, 0x47, 0x91, 0xaf, 0x24, 0x7a, 0x8c, 0x9d, 0xe4, 0x23, 0xe0, 0xbd, 0x53, 0x62, 0x89, 0xa4, 0xfe, 0x85, 0x0f, 0x7e, 0x3c, 0x43, 0xae, 0x2e, 0xb3, 0xf8, 0x74, 0xf2, 0xe5, 0xec, 0x56, 0x35, 0x6b, 0xf6, 0xba, 0xf1, 0x0b, 0x64, 0xb7, 0xc5, 0x4b, 0x13, 0x44, 0x7c, 0xcc, 0xa1, 0xff, 0xc6, 0x6a, 0x1f, 0xc8, 0x9d, 0xc8, 0xe9, 0x77, 0x80, 0x17, 0x48, 0xf8, 0xf0, 0xce, 0x5a, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1009 = { .name = "ecdsa_brainpoolp320r1_sha384_1009", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1009_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1009_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1009_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1010 for ECDSA, tcId is 100 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1010_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1010_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1010_sig[] = { 0x31, 0x43, 0x38, 0x68, 0x3f, 0x23, 0xb1, 0x11, 0x0d, 0x18, 0x40, 0x73, 0x2f, 0x67, 0x22, 0x54, 0xf3, 0x80, 0x79, 0xbf, 0x11, 0xee, 0xaf, 0xff, 0x1e, 0xc2, 0xe5, 0x3a, 0x53, 0x73, 0xf7, 0x4c, 0x98, 0x88, 0x7b, 0x11, 0xeb, 0xb7, 0x8c, 0x86, 0xb7, 0xe3, 0xa6, 0xb4, 0x59, 0xdd, 0x10, 0xcf, 0xb5, 0xdf, 0x6d, 0x2e, 0xa7, 0xaf, 0xb1, 0x5e, 0xfe, 0xb1, 0xe5, 0xe9, 0x17, 0xe5, 0xaa, 0x44, 0xfa, 0x54, 0x74, 0x36, 0x89, 0xd7, 0xda, 0xf1, 0x63, 0xf9, 0x98, 0xe0, 0x57, 0x19, 0x12, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1010 = { .name = "ecdsa_brainpoolp320r1_sha384_1010", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1010_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1010_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1010_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1011 for ECDSA, tcId is 101 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1011_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1011_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1011_sig[] = { 0x22, 0xd1, 0x88, 0x1a, 0x94, 0xe1, 0xe1, 0x1c, 0xf1, 0x06, 0x20, 0xf3, 0x7d, 0x70, 0x8e, 0xbe, 0xd8, 0x47, 0xf1, 0x45, 0x91, 0x29, 0xa0, 0xd4, 0x2c, 0xb4, 0x57, 0xda, 0x80, 0x51, 0xf8, 0x1a, 0x0f, 0x9d, 0xa8, 0x46, 0x28, 0x1a, 0x68, 0xf7, 0x40, 0x46, 0x52, 0xeb, 0xd2, 0x61, 0xf5, 0xf6, 0xb1, 0x85, 0xde, 0x4a, 0x16, 0x98, 0x0d, 0xc3, 0x66, 0x2f, 0xc4, 0x57, 0x3e, 0x24, 0x55, 0x77, 0xe7, 0xef, 0x6e, 0x3c, 0xbf, 0xdd, 0x47, 0xbc, 0x1e, 0x48, 0x7b, 0xa2, 0x06, 0xcc, 0xf7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1011 = { .name = "ecdsa_brainpoolp320r1_sha384_1011", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1011_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1011_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1011_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1012 for ECDSA, tcId is 102 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1012_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1012_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1012_sig[] = { 0x86, 0x39, 0x70, 0xca, 0xec, 0x6c, 0x6f, 0xf0, 0xa1, 0xc7, 0x0f, 0x60, 0x85, 0x95, 0x76, 0xe3, 0x58, 0x3e, 0x6b, 0x52, 0x9d, 0xe3, 0xf9, 0x28, 0x13, 0x6e, 0x84, 0x8c, 0x56, 0xb6, 0xc6, 0x71, 0x50, 0x45, 0xfd, 0xfe, 0x52, 0x63, 0x77, 0x47, 0x66, 0x7f, 0x52, 0x5a, 0x88, 0xbe, 0x89, 0x1e, 0xc6, 0xb9, 0xf9, 0x6d, 0x1a, 0x68, 0xc4, 0xf0, 0x6b, 0x3b, 0x3d, 0x2a, 0xd1, 0xc1, 0x5f, 0x06, 0x3d, 0x11, 0x0e, 0xc9, 0xfb, 0x60, 0xae, 0x74, 0x63, 0xdd, 0x56, 0x8a, 0x69, 0xce, 0x45, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1012 = { .name = "ecdsa_brainpoolp320r1_sha384_1012", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1012_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1012_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1012_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1013 for ECDSA, tcId is 103 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1013_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1013_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1013_sig[] = { 0x69, 0xcf, 0x06, 0x00, 0x38, 0x4c, 0xeb, 0x83, 0x2e, 0x23, 0x7b, 0x6b, 0x45, 0x3d, 0xea, 0x81, 0xa3, 0xc1, 0x9c, 0xb8, 0xfa, 0xe4, 0x8b, 0xa1, 0x86, 0xd2, 0x8e, 0x3b, 0x11, 0x84, 0x64, 0xb2, 0x7a, 0xf9, 0x10, 0x0f, 0x18, 0x1b, 0x73, 0x8a, 0x27, 0x80, 0x26, 0x9a, 0x8f, 0xa4, 0x07, 0x90, 0xed, 0x72, 0x63, 0x72, 0xee, 0x09, 0x56, 0x26, 0x5e, 0x72, 0x89, 0x6d, 0x9e, 0x84, 0xf7, 0x13, 0xf8, 0x83, 0xa3, 0xbc, 0x05, 0x48, 0xe8, 0xd3, 0xa2, 0xb3, 0x57, 0x33, 0x3d, 0xda, 0x4c, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1013 = { .name = "ecdsa_brainpoolp320r1_sha384_1013", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1013_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1013_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1013_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1014 for ECDSA, tcId is 104 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1014_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1014_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1014_sig[] = { 0x30, 0xf3, 0x81, 0x39, 0x88, 0x3f, 0x71, 0xc0, 0xc6, 0x4d, 0x63, 0xad, 0xcb, 0x73, 0x1f, 0x1c, 0x38, 0x5d, 0xf8, 0x7d, 0xb7, 0xce, 0x73, 0x26, 0xbf, 0x50, 0x41, 0x0a, 0xcc, 0x50, 0xf0, 0xba, 0xbf, 0x50, 0x17, 0xf9, 0x2a, 0x1e, 0x1a, 0x6e, 0x59, 0x77, 0x34, 0x22, 0x24, 0x82, 0x72, 0x46, 0x43, 0xf6, 0x0e, 0x48, 0xb3, 0xb5, 0x89, 0xde, 0xaa, 0x37, 0xb8, 0x6e, 0x1d, 0xe1, 0xcf, 0x0b, 0x12, 0x9b, 0x28, 0x6e, 0xc6, 0x76, 0x86, 0x57, 0x4f, 0x16, 0xcf, 0xb5, 0xf2, 0xcc, 0x6f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1014 = { .name = "ecdsa_brainpoolp320r1_sha384_1014", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1014_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1014_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1014_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1015 for ECDSA, tcId is 105 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1015_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1015_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1015_sig[] = { 0x17, 0x4a, 0xe9, 0x8c, 0xc2, 0x5d, 0xbe, 0xd7, 0x47, 0xce, 0xdf, 0x86, 0x97, 0x26, 0x6d, 0x16, 0xe9, 0x6b, 0xb4, 0xf8, 0x07, 0x1c, 0x90, 0x59, 0x90, 0xf4, 0xe7, 0x2c, 0x72, 0x8c, 0x94, 0xaa, 0xa3, 0x2d, 0xce, 0x24, 0xa5, 0x21, 0x66, 0xfb, 0x57, 0x80, 0x99, 0x83, 0x5a, 0x3d, 0xcb, 0x3d, 0xa2, 0xfd, 0x42, 0x75, 0x01, 0x80, 0x07, 0x9d, 0xa4, 0x07, 0xc7, 0xa1, 0x42, 0xcb, 0xcc, 0xb6, 0x99, 0xfe, 0xd7, 0xaf, 0x89, 0xdd, 0x70, 0x3b, 0xa0, 0xca, 0xd9, 0x4c, 0xdf, 0x2c, 0x05, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1015 = { .name = "ecdsa_brainpoolp320r1_sha384_1015", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1015_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1015_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1015_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1016 for ECDSA, tcId is 106 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1016_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1016_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1016_sig[] = { 0x58, 0xcf, 0xb1, 0x51, 0x1a, 0x22, 0x3c, 0x06, 0xb3, 0xe9, 0x74, 0xb6, 0x60, 0xbe, 0xd8, 0x27, 0xbe, 0xe3, 0x8c, 0x59, 0xc4, 0x52, 0x30, 0x68, 0xe9, 0xc9, 0xfa, 0xa3, 0x30, 0xc9, 0x70, 0xe6, 0x27, 0x1e, 0xa3, 0x87, 0xdb, 0x6b, 0x40, 0xb0, 0x76, 0x35, 0x94, 0xce, 0xd6, 0xe8, 0x41, 0x3b, 0xfd, 0x90, 0xd5, 0xce, 0xca, 0x18, 0xd6, 0x77, 0x4a, 0x3d, 0xa8, 0x74, 0x73, 0xcc, 0x4d, 0xee, 0x72, 0x6b, 0x03, 0x25, 0xe2, 0xdf, 0x8b, 0x25, 0x7d, 0x9e, 0x01, 0x31, 0x8a, 0xe7, 0xe0, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1016 = { .name = "ecdsa_brainpoolp320r1_sha384_1016", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1016_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1016_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1016_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1017 for ECDSA, tcId is 107 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1017_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1017_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1017_sig[] = { 0x8d, 0xdb, 0xa4, 0xf7, 0xaa, 0x8c, 0xc5, 0xe0, 0x0a, 0x3f, 0xfd, 0x2a, 0x08, 0x27, 0x10, 0xd4, 0x2d, 0x3a, 0x88, 0xf9, 0xf9, 0x47, 0xba, 0x51, 0xf0, 0x94, 0x66, 0xc2, 0xa9, 0x29, 0x5c, 0xaa, 0x13, 0x1b, 0x8a, 0xe9, 0xef, 0x51, 0xb3, 0x5c, 0xbc, 0x34, 0x10, 0x03, 0x3a, 0x57, 0x98, 0xd9, 0xe4, 0xc6, 0xa8, 0x17, 0xda, 0x17, 0x59, 0xc0, 0x0c, 0x0d, 0x38, 0xe3, 0xc1, 0xff, 0x22, 0xf0, 0xa4, 0x1e, 0x5a, 0xd0, 0xd1, 0xe9, 0x14, 0xe7, 0x1c, 0x90, 0x7d, 0xa8, 0xc2, 0x45, 0xca, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1017 = { .name = "ecdsa_brainpoolp320r1_sha384_1017", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1017_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1017_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1017_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1018 for ECDSA, tcId is 108 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1018_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1018_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1018_sig[] = { 0x2f, 0x7e, 0x50, 0xee, 0x96, 0x70, 0x6d, 0x59, 0x7d, 0x8b, 0xf0, 0x10, 0x3f, 0xa4, 0x67, 0x86, 0x74, 0x6a, 0x2c, 0x65, 0xc0, 0x21, 0xfa, 0xc7, 0xfa, 0x37, 0x8d, 0x24, 0x4c, 0x41, 0x8a, 0x42, 0xb7, 0x90, 0x8f, 0x0f, 0xab, 0x2d, 0xff, 0xca, 0xb7, 0xb9, 0x4f, 0x2a, 0x88, 0x3b, 0xa1, 0xb4, 0x98, 0x58, 0x32, 0x9c, 0xc7, 0x8f, 0xc2, 0xa9, 0x92, 0x10, 0x98, 0x09, 0xb4, 0x70, 0xb8, 0x78, 0xcc, 0x38, 0xe1, 0xbd, 0xd4, 0xdf, 0x3e, 0xe0, 0x0a, 0x0a, 0xe7, 0xe2, 0x28, 0xe4, 0x66, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1018 = { .name = "ecdsa_brainpoolp320r1_sha384_1018", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1018_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1018_msg, .msglen = 11, .sig = ecdsa_brainpoolp320r1_sha384_1018_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1019 for ECDSA, tcId is 109 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1019_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1019_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1019_sig[] = { 0x45, 0x91, 0x49, 0x1e, 0xee, 0x04, 0xe1, 0x0a, 0x40, 0xa1, 0xe8, 0xeb, 0x82, 0x14, 0x81, 0x95, 0x12, 0x33, 0x48, 0xec, 0x1a, 0x7c, 0xba, 0x06, 0x04, 0x4e, 0x8f, 0x22, 0x6e, 0xd3, 0x09, 0x10, 0xb6, 0x93, 0xeb, 0xbb, 0xae, 0xe0, 0x68, 0x5f, 0x1b, 0x8b, 0x37, 0x33, 0xcc, 0x5c, 0xa1, 0x5d, 0xad, 0x84, 0x80, 0x9d, 0xf8, 0x49, 0x97, 0x88, 0xb4, 0x89, 0x9c, 0xba, 0x30, 0x7f, 0x93, 0xb4, 0x9e, 0xa6, 0xa6, 0x3b, 0x9e, 0x77, 0x48, 0x7c, 0x3c, 0x98, 0xb8, 0x03, 0xfc, 0xe6, 0x9c, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1019 = { .name = "ecdsa_brainpoolp320r1_sha384_1019", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1019_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1019_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1019_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1020 for ECDSA, tcId is 110 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1020_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1020_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1020_sig[] = { 0x9d, 0x22, 0xb8, 0x64, 0xe2, 0x70, 0x6f, 0xa4, 0x3a, 0x67, 0xea, 0x62, 0xf3, 0x9e, 0x4d, 0x3f, 0x40, 0x27, 0x67, 0xd9, 0xd0, 0x38, 0xc7, 0x8e, 0x28, 0x44, 0xd6, 0x99, 0xf4, 0x1e, 0xaf, 0x1a, 0x64, 0x1c, 0xfd, 0xd9, 0xd6, 0xa6, 0x3f, 0xb5, 0x1e, 0xaa, 0xcd, 0xad, 0x82, 0x94, 0xec, 0xc2, 0xca, 0x0c, 0x55, 0xe6, 0xe7, 0x3d, 0xf0, 0x3d, 0x83, 0x2b, 0xea, 0xfe, 0x04, 0x8f, 0xc6, 0x90, 0x89, 0x5b, 0xec, 0xa5, 0xce, 0xad, 0x9d, 0x01, 0xd3, 0x7b, 0x3f, 0xed, 0x57, 0x41, 0xcb, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1020 = { .name = "ecdsa_brainpoolp320r1_sha384_1020", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1020_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1020_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1020_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1021 for ECDSA, tcId is 111 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1021_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1021_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1021_sig[] = { 0x8f, 0x15, 0x02, 0x14, 0x3e, 0xff, 0x37, 0x2f, 0xb9, 0xbd, 0xd9, 0x56, 0xec, 0xe3, 0x5d, 0x23, 0x24, 0x03, 0xfe, 0xd7, 0xf7, 0x7e, 0xb4, 0xf4, 0x55, 0x2d, 0x4f, 0xc8, 0x4e, 0x4a, 0x2e, 0x5d, 0x6c, 0x8c, 0xcf, 0x06, 0xf5, 0xa6, 0xad, 0x61, 0x46, 0x21, 0xc9, 0xfb, 0xc3, 0x74, 0x66, 0xf7, 0xc7, 0x57, 0xf6, 0x6d, 0x17, 0x1d, 0xa8, 0xee, 0x0a, 0x0d, 0xd5, 0xf2, 0x41, 0x13, 0xe2, 0xf5, 0x17, 0xa0, 0x82, 0xb7, 0xab, 0x5d, 0x41, 0x23, 0xc3, 0xee, 0xc9, 0xee, 0xad, 0xf6, 0x99, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1021 = { .name = "ecdsa_brainpoolp320r1_sha384_1021", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1021_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1021_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1021_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1022 for ECDSA, tcId is 112 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1022_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1022_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1022_sig[] = { 0x8d, 0xcd, 0xcc, 0x74, 0xa2, 0x5f, 0xcd, 0x92, 0xe4, 0x37, 0x2e, 0x11, 0x36, 0x4a, 0x36, 0x1c, 0x7a, 0x2d, 0x7f, 0x3d, 0xd7, 0x4c, 0x5d, 0x6b, 0xc3, 0x76, 0x1c, 0x07, 0xfe, 0x78, 0xf0, 0x84, 0x76, 0x5d, 0xe8, 0xce, 0x70, 0xe4, 0x48, 0xfa, 0xb3, 0xcf, 0xdb, 0x35, 0xc2, 0x0b, 0x1e, 0x30, 0xd3, 0xc2, 0x16, 0xdc, 0xef, 0x3c, 0x73, 0xcd, 0x44, 0xef, 0x19, 0x73, 0xc8, 0x69, 0x5c, 0x8a, 0xb4, 0x39, 0xf7, 0xe2, 0x66, 0x28, 0x57, 0x4e, 0x0f, 0x34, 0x9d, 0x81, 0xc5, 0x98, 0xd1, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1022 = { .name = "ecdsa_brainpoolp320r1_sha384_1022", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1022_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1022_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1022_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1023 for ECDSA, tcId is 113 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1023_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1023_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1023_sig[] = { 0xbc, 0x2a, 0x5b, 0x09, 0x8f, 0x72, 0x48, 0x30, 0xa1, 0x90, 0x48, 0x0f, 0xff, 0x5f, 0xaf, 0xa0, 0xf2, 0xfe, 0x85, 0xbf, 0x17, 0x17, 0x6a, 0xf8, 0xd4, 0xeb, 0x67, 0x0e, 0x1d, 0x55, 0x53, 0x3f, 0x82, 0x0d, 0x69, 0x0e, 0x76, 0xb3, 0xbc, 0xcd, 0x51, 0x6c, 0x57, 0x64, 0x44, 0xbe, 0x02, 0x50, 0xe3, 0x38, 0x23, 0x30, 0x2a, 0xdb, 0x70, 0x8b, 0x66, 0x22, 0xf1, 0x7e, 0x24, 0x38, 0xf0, 0x18, 0x00, 0xc5, 0x8e, 0xdc, 0xf9, 0x07, 0xe5, 0x05, 0xb4, 0x19, 0xf6, 0xc0, 0xdf, 0xf1, 0x1a, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1023 = { .name = "ecdsa_brainpoolp320r1_sha384_1023", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1023_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1023_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1023_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1024 for ECDSA, tcId is 114 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1024_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1024_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1024_sig[] = { 0xb3, 0x20, 0x8e, 0x3c, 0x49, 0xa8, 0xce, 0x5f, 0xb8, 0x9e, 0xff, 0xb2, 0x48, 0x0e, 0x8c, 0xa6, 0xb9, 0xe1, 0x1b, 0x16, 0xa0, 0x49, 0xae, 0xcf, 0x0c, 0xe3, 0x54, 0x50, 0xe1, 0xe5, 0x35, 0x09, 0x90, 0x9b, 0x02, 0xab, 0x33, 0xe6, 0x63, 0xe2, 0x36, 0x2a, 0xff, 0xc0, 0x91, 0xfa, 0x46, 0xd7, 0x1a, 0xe8, 0x4e, 0x27, 0x97, 0x9a, 0xb5, 0x75, 0xc6, 0x0f, 0x11, 0x58, 0x45, 0xfc, 0x52, 0x1e, 0x0a, 0x81, 0x59, 0x1a, 0xb2, 0x33, 0xbd, 0x32, 0xe6, 0xab, 0x0e, 0x8b, 0x08, 0x80, 0x98, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1024 = { .name = "ecdsa_brainpoolp320r1_sha384_1024", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1024_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1024_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1024_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1025 for ECDSA, tcId is 115 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1025_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1025_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1025_sig[] = { 0x91, 0xcd, 0x13, 0x3d, 0x74, 0xc7, 0x01, 0xc9, 0x36, 0x75, 0x80, 0x54, 0x75, 0x35, 0x91, 0xd3, 0x1f, 0x1d, 0x85, 0x42, 0x13, 0xb4, 0x06, 0x7e, 0x03, 0x38, 0x80, 0x11, 0x6d, 0x46, 0x53, 0xcf, 0x25, 0x70, 0x15, 0x44, 0x5c, 0x55, 0x63, 0xea, 0x43, 0x18, 0x5b, 0x31, 0xdb, 0xee, 0x46, 0xdb, 0xb6, 0x2d, 0x1c, 0xda, 0xad, 0xf4, 0x79, 0xaa, 0x4f, 0x4b, 0x0b, 0x32, 0xdb, 0xc4, 0x9e, 0xf5, 0xcc, 0xad, 0x43, 0xc9, 0xf0, 0xfc, 0xd9, 0x4f, 0x06, 0xbd, 0xf6, 0x31, 0x5e, 0x67, 0xc7, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1025 = { .name = "ecdsa_brainpoolp320r1_sha384_1025", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1025_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1025_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1025_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1026 for ECDSA, tcId is 116 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1026_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1026_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1026_sig[] = { 0xc6, 0x3a, 0xc9, 0xad, 0xa6, 0xe0, 0xa0, 0x0d, 0xbd, 0xc1, 0x71, 0xf4, 0xce, 0xd1, 0xc1, 0x62, 0x94, 0x88, 0x1c, 0xd7, 0xb8, 0xcc, 0x91, 0xe6, 0x7d, 0x0f, 0x97, 0xf5, 0xa6, 0x19, 0x09, 0xac, 0x6a, 0x69, 0x4a, 0xb0, 0xb0, 0xd3, 0x7a, 0x6c, 0xb3, 0x3d, 0x68, 0x76, 0xf4, 0x46, 0x4e, 0x7a, 0xd8, 0xe2, 0x7a, 0x19, 0x5f, 0x63, 0xb4, 0x9f, 0xad, 0x3b, 0xe8, 0xf4, 0x68, 0x4f, 0x4c, 0x3d, 0x42, 0xf5, 0x89, 0x13, 0x94, 0x4a, 0xbc, 0x60, 0x17, 0x3e, 0x51, 0x13, 0x58, 0x1d, 0x94, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1026 = { .name = "ecdsa_brainpoolp320r1_sha384_1026", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1026_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1026_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1026_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1027 for ECDSA, tcId is 117 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1027_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1027_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1027_sig[] = { 0x48, 0x9d, 0xb4, 0x6f, 0x6a, 0xb8, 0x76, 0x24, 0xa3, 0x32, 0x37, 0x67, 0x35, 0xaa, 0xf8, 0xe6, 0xc4, 0xc4, 0x3a, 0xff, 0xdb, 0x9b, 0x93, 0xc7, 0x86, 0x82, 0xd3, 0xf9, 0x0c, 0x1e, 0x01, 0xca, 0xad, 0xbc, 0xac, 0x4c, 0x97, 0x5a, 0x22, 0x13, 0x8e, 0x10, 0xc6, 0x41, 0x16, 0xc4, 0x04, 0x2b, 0x71, 0xbd, 0x98, 0x72, 0xc0, 0x50, 0x6a, 0x7b, 0x34, 0xb6, 0xff, 0xfa, 0x9c, 0x3e, 0x24, 0xf8, 0x43, 0xce, 0x18, 0x27, 0x0e, 0x3f, 0x16, 0x36, 0x59, 0xdd, 0xc4, 0xa2, 0x46, 0x0a, 0x43, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1027 = { .name = "ecdsa_brainpoolp320r1_sha384_1027", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1027_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1027_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1027_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1028 for ECDSA, tcId is 118 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1028_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1028_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1028_sig[] = { 0x09, 0xf7, 0xe1, 0x03, 0x55, 0x03, 0x37, 0xe3, 0x6e, 0xa0, 0x9f, 0x9a, 0xb3, 0xb8, 0x35, 0x80, 0xdd, 0xc6, 0x25, 0x9f, 0xb9, 0xda, 0xf3, 0x8b, 0x42, 0x41, 0x75, 0xd6, 0x41, 0x34, 0xd1, 0x4c, 0xae, 0x31, 0x12, 0xbd, 0xdd, 0x7b, 0x21, 0xaf, 0x25, 0x37, 0x19, 0xf8, 0xce, 0x11, 0x61, 0x95, 0x98, 0x41, 0xb0, 0x6a, 0xe3, 0x1d, 0xc9, 0xd8, 0x4c, 0xf0, 0xdf, 0x90, 0xdf, 0xfc, 0x10, 0x1f, 0x04, 0x42, 0xc8, 0xe9, 0x8c, 0x04, 0x0e, 0x4d, 0x53, 0xf8, 0xec, 0xd7, 0x09, 0xb6, 0x20, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1028 = { .name = "ecdsa_brainpoolp320r1_sha384_1028", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1028_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1028_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1028_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1029 for ECDSA, tcId is 119 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1029_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1029_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1029_sig[] = { 0x41, 0x31, 0x07, 0x39, 0xde, 0x7f, 0x1e, 0x06, 0x16, 0x9f, 0x37, 0x5d, 0x73, 0xe0, 0x65, 0x50, 0xa5, 0x08, 0x50, 0xbe, 0x6a, 0xef, 0x43, 0x2e, 0xf2, 0x14, 0x3d, 0x7a, 0xdd, 0xfa, 0xf2, 0x18, 0xf6, 0x88, 0x36, 0x37, 0x59, 0x21, 0x00, 0x6e, 0x43, 0xc4, 0x59, 0x4e, 0x62, 0x5f, 0x7a, 0xaa, 0x75, 0x7e, 0xea, 0x84, 0x74, 0x51, 0xd0, 0x15, 0x5b, 0xd6, 0xb8, 0x20, 0x88, 0x33, 0x06, 0xb9, 0x21, 0x18, 0x4e, 0xc8, 0x14, 0x1c, 0xa2, 0xb8, 0xc2, 0x3b, 0x1d, 0xd6, 0x4b, 0x98, 0x0f, 0x97, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1029 = { .name = "ecdsa_brainpoolp320r1_sha384_1029", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1029_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1029_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1029_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1030 for ECDSA, tcId is 120 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1030_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1030_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1030_sig[] = { 0xcf, 0x06, 0x72, 0xd1, 0x8f, 0x93, 0xbd, 0x9c, 0x8c, 0x1c, 0x5e, 0x17, 0xd9, 0x0a, 0x91, 0x8c, 0x5c, 0xc8, 0xfd, 0xb9, 0x67, 0xf9, 0xd2, 0xad, 0x72, 0x7d, 0xd7, 0x2e, 0xc9, 0x92, 0x11, 0x67, 0x41, 0xb1, 0x75, 0xd3, 0x53, 0x93, 0x88, 0x5d, 0x02, 0x9e, 0x74, 0x7e, 0xa2, 0xc1, 0xd6, 0x6f, 0x1b, 0x4c, 0x5b, 0xe4, 0x92, 0xbd, 0x3b, 0x0c, 0xe0, 0x1e, 0x84, 0x20, 0xa6, 0x26, 0xa8, 0xa8, 0xe1, 0x25, 0xc3, 0xb5, 0x8c, 0x61, 0x4c, 0xab, 0x12, 0xe6, 0xed, 0xbf, 0xc1, 0x3f, 0x8a, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1030 = { .name = "ecdsa_brainpoolp320r1_sha384_1030", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1030_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1030_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1030_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1031 for ECDSA, tcId is 121 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1031_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1031_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1031_sig[] = { 0x2a, 0x24, 0x7a, 0x37, 0xc4, 0x89, 0x97, 0x4e, 0xd8, 0x94, 0x6e, 0x5e, 0x8b, 0xd5, 0xa9, 0xd2, 0x98, 0xd7, 0xaf, 0xcc, 0x41, 0x6b, 0x5e, 0xfc, 0x3a, 0x9c, 0x69, 0xba, 0x61, 0xd6, 0x53, 0x8a, 0xd5, 0x29, 0x47, 0x75, 0xd1, 0xc2, 0xa4, 0x79, 0x48, 0xf5, 0x71, 0x6a, 0xb8, 0xb4, 0x09, 0xf2, 0x84, 0x35, 0x10, 0x51, 0xdc, 0xd2, 0x22, 0xcc, 0x5e, 0xc4, 0xf1, 0xb8, 0xc7, 0x17, 0x08, 0xb1, 0xe8, 0x5e, 0xd4, 0xdb, 0x1e, 0xce, 0xc7, 0x38, 0x88, 0xbd, 0x8f, 0x78, 0xc1, 0xe7, 0x4d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1031 = { .name = "ecdsa_brainpoolp320r1_sha384_1031", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1031_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1031_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1031_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1032 for ECDSA, tcId is 122 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1032_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1032_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1032_sig[] = { 0x7a, 0x2d, 0x71, 0xce, 0x07, 0x4e, 0xaa, 0xa4, 0xdf, 0xf6, 0xd1, 0x04, 0xfb, 0x6e, 0x7b, 0x07, 0x0c, 0xb0, 0x9c, 0x23, 0x5d, 0xeb, 0x69, 0x7f, 0x53, 0x34, 0x91, 0x8e, 0x18, 0x1c, 0xe9, 0xbb, 0xe5, 0x47, 0xb7, 0x9a, 0xb3, 0x79, 0x69, 0xf1, 0x6d, 0xc1, 0x4d, 0x2b, 0xfa, 0x01, 0xe0, 0xcb, 0x36, 0x87, 0x8d, 0x1a, 0xef, 0x21, 0x6d, 0xf9, 0x92, 0xb5, 0xc3, 0xf0, 0x58, 0xfa, 0xb8, 0xce, 0x92, 0x22, 0x49, 0xb5, 0x9c, 0xb7, 0x25, 0x56, 0x36, 0x41, 0x38, 0x38, 0x95, 0x61, 0xaf, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1032 = { .name = "ecdsa_brainpoolp320r1_sha384_1032", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1032_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1032_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1032_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1033 for ECDSA, tcId is 123 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1033_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1033_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1033_sig[] = { 0x85, 0x1f, 0x1d, 0x14, 0x83, 0x71, 0x9c, 0xd1, 0x83, 0x94, 0x0c, 0xf4, 0xe9, 0xeb, 0x30, 0xea, 0xdd, 0xe6, 0x99, 0xd8, 0xba, 0x80, 0x90, 0xe2, 0x16, 0x12, 0x3f, 0xf6, 0x1e, 0x41, 0xd1, 0x66, 0x50, 0x5a, 0x59, 0x1a, 0x75, 0xda, 0xc6, 0xce, 0x29, 0x2a, 0x45, 0xf3, 0x1e, 0xf3, 0x4b, 0xf3, 0x4c, 0x3c, 0xcf, 0xd4, 0xa2, 0x2a, 0xdc, 0x4c, 0xc1, 0x9c, 0x41, 0x61, 0x51, 0xf7, 0x0e, 0x95, 0xad, 0x19, 0x99, 0x9f, 0x9c, 0x59, 0x68, 0x5e, 0x5f, 0xd9, 0x07, 0x9a, 0x27, 0xb8, 0x6f, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1033 = { .name = "ecdsa_brainpoolp320r1_sha384_1033", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1033_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1033_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1033_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1034 for ECDSA, tcId is 124 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1034_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1034_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1034_sig[] = { 0x06, 0x1d, 0xf3, 0x26, 0xb4, 0x3a, 0xd7, 0xaa, 0x7b, 0xc4, 0xaf, 0x8f, 0x3a, 0x58, 0x30, 0xbb, 0x0e, 0x63, 0x29, 0x7c, 0xf6, 0x90, 0xec, 0x60, 0xa7, 0x25, 0x9a, 0x94, 0x2d, 0xce, 0x63, 0x1e, 0x66, 0x76, 0x74, 0x2a, 0xd1, 0x28, 0x30, 0xcf, 0x0e, 0x88, 0x67, 0x52, 0x28, 0xb7, 0xfa, 0x47, 0x43, 0xab, 0x53, 0xd2, 0x48, 0x65, 0x19, 0x37, 0x42, 0xcd, 0x6c, 0x5d, 0xb2, 0x18, 0xdd, 0xe0, 0x04, 0x4b, 0x30, 0x16, 0x54, 0xbb, 0xab, 0x63, 0x9a, 0xbc, 0x77, 0x5a, 0xae, 0x69, 0x06, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1034 = { .name = "ecdsa_brainpoolp320r1_sha384_1034", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1034_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1034_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1034_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1035 for ECDSA, tcId is 125 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1035_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1035_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1035_sig[] = { 0x56, 0x0e, 0x6e, 0x54, 0x14, 0x41, 0x4d, 0xbb, 0xd6, 0xe9, 0xd4, 0x05, 0x22, 0xc9, 0xf3, 0xfc, 0xe6, 0x65, 0xc4, 0x45, 0x5e, 0xae, 0x07, 0xea, 0xfa, 0x37, 0x24, 0xd7, 0x08, 0x68, 0x93, 0x15, 0xf6, 0xc7, 0x51, 0x5c, 0xfe, 0x1a, 0xed, 0xbf, 0xa3, 0xe6, 0x19, 0xbf, 0x5f, 0x9d, 0x77, 0x6a, 0x59, 0x1f, 0xf7, 0x4a, 0x92, 0x52, 0xe4, 0x3b, 0xd0, 0x4a, 0xe1, 0xf1, 0xc3, 0x4f, 0xe5, 0xb8, 0x4f, 0x04, 0xc3, 0xd9, 0xc9, 0x72, 0xa8, 0x0e, 0x18, 0x78, 0x88, 0xba, 0xde, 0x5a, 0xa9, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1035 = { .name = "ecdsa_brainpoolp320r1_sha384_1035", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1035_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1035_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1035_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1036 for ECDSA, tcId is 126 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1036_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1036_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1036_sig[] = { 0x34, 0xf9, 0xde, 0xf6, 0xf2, 0x1f, 0x53, 0x28, 0xd1, 0xc5, 0xe3, 0x49, 0x85, 0x7f, 0x3a, 0x70, 0x08, 0xf0, 0xaf, 0xa5, 0xbb, 0xcb, 0x89, 0x6f, 0xf6, 0x24, 0x7b, 0x21, 0xa4, 0xab, 0xac, 0x7a, 0xed, 0xad, 0xa6, 0x4f, 0xa2, 0x3f, 0x95, 0x6e, 0xcb, 0x44, 0xdb, 0xc5, 0x3b, 0x0b, 0x0b, 0x43, 0xd6, 0xb1, 0x58, 0xd9, 0x02, 0x47, 0x20, 0x9c, 0x2c, 0x74, 0x15, 0x2c, 0x4e, 0x19, 0xa1, 0xc7, 0x03, 0x57, 0x7c, 0xf4, 0x07, 0xad, 0xa1, 0x4b, 0x19, 0x8b, 0xde, 0x1b, 0xa7, 0x9a, 0x34, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1036 = { .name = "ecdsa_brainpoolp320r1_sha384_1036", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1036_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1036_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1036_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1037 for ECDSA, tcId is 127 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1037_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1037_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1037_sig[] = { 0x97, 0x21, 0xd7, 0x99, 0x1f, 0x29, 0x68, 0xc2, 0x38, 0x56, 0xa0, 0x75, 0xe8, 0x6b, 0x70, 0xa3, 0x9f, 0x4a, 0xa3, 0x0f, 0xd6, 0x87, 0x77, 0xdb, 0xbf, 0x46, 0xc1, 0xd3, 0x7c, 0xc3, 0xbe, 0x44, 0x97, 0xcb, 0x47, 0x14, 0xb2, 0xf1, 0x65, 0x6a, 0x0a, 0xa3, 0x4e, 0x85, 0x81, 0x75, 0xfe, 0xf3, 0xc0, 0x73, 0x4c, 0x5c, 0x7c, 0x4c, 0xcd, 0x04, 0x59, 0x92, 0x7b, 0x0f, 0x72, 0x2e, 0x86, 0xaf, 0x6c, 0x40, 0x45, 0x75, 0x2b, 0x4b, 0xa1, 0x54, 0xe7, 0x25, 0x94, 0x63, 0x19, 0xdc, 0x42, 0x74, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1037 = { .name = "ecdsa_brainpoolp320r1_sha384_1037", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1037_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1037_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1037_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1038 for ECDSA, tcId is 128 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1038_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1038_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1038_sig[] = { 0xae, 0xc9, 0x21, 0x08, 0x75, 0x1a, 0xfc, 0x4a, 0x0c, 0x62, 0xa9, 0xda, 0x21, 0x63, 0xbb, 0x52, 0xbd, 0xab, 0xb9, 0xe7, 0xa8, 0xb5, 0x66, 0xca, 0x8d, 0x30, 0xfa, 0xc3, 0x89, 0xc6, 0x8a, 0x38, 0x17, 0xd2, 0x1a, 0x33, 0xdf, 0x2f, 0x68, 0xda, 0xbe, 0xfb, 0xac, 0xfb, 0x03, 0x95, 0x7c, 0x93, 0x78, 0x90, 0x3c, 0xf9, 0xb4, 0x32, 0x09, 0x3f, 0x78, 0x95, 0x4e, 0x52, 0x24, 0x30, 0x36, 0x11, 0xe9, 0xe9, 0x6c, 0x92, 0xa7, 0x67, 0x04, 0xe3, 0xa6, 0x43, 0x2a, 0x24, 0x41, 0x3b, 0xd2, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1038 = { .name = "ecdsa_brainpoolp320r1_sha384_1038", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1038_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1038_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1038_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1039 for ECDSA, tcId is 129 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1039_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1039_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1039_sig[] = { 0x6e, 0x85, 0x26, 0x89, 0xb9, 0x04, 0x51, 0xa1, 0x59, 0x2f, 0xad, 0x58, 0x5e, 0xa5, 0x7c, 0x71, 0xeb, 0x5b, 0x44, 0x61, 0x96, 0xc0, 0x7d, 0xcf, 0x45, 0x09, 0x72, 0xad, 0x13, 0xfd, 0xcd, 0x81, 0x17, 0x31, 0x9e, 0xec, 0x75, 0xd0, 0x78, 0x1f, 0x36, 0x08, 0xd1, 0x1f, 0x0b, 0x8e, 0xb7, 0x73, 0xb3, 0x58, 0x78, 0xcc, 0x43, 0xea, 0x95, 0xfb, 0x4d, 0x35, 0x4a, 0xb0, 0xff, 0xec, 0x9f, 0x78, 0x5a, 0x41, 0xa1, 0x7e, 0xbc, 0xf8, 0xf7, 0xd9, 0x57, 0xf7, 0x93, 0x47, 0x9a, 0xe8, 0x99, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1039 = { .name = "ecdsa_brainpoolp320r1_sha384_1039", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1039_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1039_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1039_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1040 for ECDSA, tcId is 130 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1040_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1040_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1040_sig[] = { 0xa3, 0x4e, 0xbb, 0x41, 0x33, 0x6c, 0x25, 0x2a, 0x05, 0x60, 0x97, 0x98, 0x3d, 0x56, 0xde, 0xdd, 0x1e, 0xda, 0x04, 0x2c, 0x73, 0x78, 0xb8, 0xb5, 0x6d, 0x90, 0x5a, 0xa9, 0xbe, 0x1d, 0x7f, 0x6a, 0xfb, 0x60, 0x54, 0x66, 0xc0, 0x02, 0x6c, 0x44, 0x41, 0x4c, 0x12, 0xe2, 0xa9, 0x7f, 0x8e, 0x42, 0x7e, 0xe9, 0xbd, 0x95, 0xe1, 0x5b, 0xd5, 0xc1, 0x0c, 0x16, 0xc1, 0xee, 0xa6, 0x01, 0x1f, 0x01, 0xf2, 0x71, 0xfe, 0x75, 0x86, 0x9a, 0x60, 0x00, 0xfb, 0xfb, 0xc2, 0x5a, 0x6d, 0x1f, 0x85, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1040 = { .name = "ecdsa_brainpoolp320r1_sha384_1040", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1040_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1040_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1040_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1041 for ECDSA, tcId is 131 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1041_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1041_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1041_sig[] = { 0x1c, 0xf2, 0x7f, 0xa9, 0x6f, 0x13, 0x7e, 0x0f, 0xbc, 0xe4, 0xda, 0x47, 0x6b, 0xdb, 0x5c, 0x3b, 0x87, 0x5b, 0x7f, 0xb4, 0x55, 0xfc, 0xfe, 0x7e, 0xfd, 0x86, 0x3c, 0xb8, 0xed, 0x61, 0x09, 0x0f, 0x6c, 0xf6, 0xa2, 0xb9, 0x27, 0xfa, 0xbb, 0xdb, 0x94, 0x5b, 0xc7, 0xe4, 0xf3, 0x19, 0x00, 0x4b, 0x2e, 0xf4, 0xce, 0x2f, 0xa2, 0xef, 0x27, 0x0c, 0x4a, 0xbc, 0x36, 0x0e, 0x21, 0xd8, 0xf8, 0xb2, 0x10, 0x74, 0x08, 0x0e, 0xe8, 0xa3, 0x42, 0x21, 0x37, 0xc9, 0x6f, 0x82, 0xe2, 0x6c, 0xfa, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1041 = { .name = "ecdsa_brainpoolp320r1_sha384_1041", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1041_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1041_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1041_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1042 for ECDSA, tcId is 132 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1042_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1042_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1042_sig[] = { 0xcd, 0xb4, 0xf0, 0xb7, 0xf7, 0xde, 0x92, 0xec, 0x59, 0xa2, 0xe0, 0xa1, 0x90, 0x03, 0x18, 0xbd, 0xd6, 0x49, 0x15, 0x5b, 0xcd, 0x3e, 0x09, 0x14, 0x13, 0x6a, 0x7c, 0x46, 0xc5, 0xe4, 0xbf, 0xd8, 0x42, 0x31, 0xc0, 0x4d, 0x64, 0xcc, 0x5c, 0x53, 0x7b, 0x0e, 0xe0, 0xd7, 0xb7, 0x77, 0x3c, 0x3b, 0xcd, 0x59, 0x21, 0x23, 0x9f, 0x36, 0xb0, 0x93, 0xbd, 0x23, 0x28, 0x59, 0xd6, 0x85, 0x92, 0x0e, 0xaf, 0xf5, 0x3a, 0x91, 0xff, 0x71, 0x88, 0x34, 0x4a, 0x30, 0x75, 0xfe, 0x7f, 0x34, 0x2c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1042 = { .name = "ecdsa_brainpoolp320r1_sha384_1042", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1042_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1042_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1042_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1043 for ECDSA, tcId is 133 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1043_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1043_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1043_sig[] = { 0xaa, 0x8e, 0xf3, 0x3f, 0x59, 0x50, 0x8e, 0xa9, 0x61, 0x7a, 0x41, 0x08, 0x4a, 0x35, 0x32, 0xe1, 0x17, 0x9d, 0x0f, 0x57, 0x55, 0xe0, 0x82, 0x77, 0xa5, 0x68, 0x19, 0x22, 0x72, 0xce, 0xc6, 0x3f, 0x91, 0x03, 0x77, 0xa8, 0x71, 0x02, 0x1c, 0x7e, 0x70, 0x87, 0x51, 0xc6, 0x28, 0x4f, 0x7c, 0x3c, 0xfc, 0x57, 0xa5, 0x98, 0xc1, 0x19, 0x9c, 0x1c, 0xfc, 0xb3, 0xd2, 0x6e, 0x45, 0x46, 0x48, 0x4d, 0xe5, 0x52, 0x28, 0xc2, 0x92, 0xbc, 0xa9, 0x78, 0xea, 0x76, 0x98, 0xd3, 0xf7, 0xd8, 0x06, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1043 = { .name = "ecdsa_brainpoolp320r1_sha384_1043", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1043_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1043_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1043_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1044 for ECDSA, tcId is 134 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1044_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1044_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1044_sig[] = { 0x7d, 0x57, 0xfe, 0x00, 0x6a, 0x05, 0x63, 0xd5, 0x57, 0x0a, 0xcb, 0xca, 0xbd, 0xf9, 0x4e, 0xd5, 0x15, 0x02, 0x9f, 0x52, 0xe0, 0x22, 0x98, 0xc7, 0x9c, 0x98, 0x91, 0x18, 0x1b, 0xd8, 0xb4, 0x97, 0x4d, 0xde, 0x57, 0x65, 0x43, 0x3d, 0x89, 0xcb, 0x3b, 0xe8, 0x3d, 0x7d, 0xc7, 0xa5, 0xdc, 0x1a, 0x15, 0x1f, 0x2b, 0x09, 0x57, 0xf6, 0x78, 0xb9, 0xef, 0xca, 0x3d, 0x08, 0x18, 0xec, 0x35, 0x92, 0x02, 0xd9, 0xa4, 0xcf, 0xe7, 0x92, 0xe9, 0x59, 0x24, 0xbe, 0x9e, 0x36, 0xe2, 0x0e, 0xf9, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1044 = { .name = "ecdsa_brainpoolp320r1_sha384_1044", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1044_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1044_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1044_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1045 for ECDSA, tcId is 135 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1045_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1045_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1045_sig[] = { 0x99, 0x8c, 0x25, 0x1f, 0x0c, 0x1f, 0x96, 0x23, 0x98, 0x0c, 0x1c, 0xff, 0x0e, 0x36, 0x9c, 0x7b, 0x0a, 0x38, 0x3f, 0xc7, 0x40, 0x79, 0x11, 0x31, 0x21, 0xf9, 0x82, 0xbf, 0xe7, 0xb8, 0x7f, 0x17, 0xb4, 0x8e, 0x5c, 0xdd, 0x29, 0xb0, 0xe1, 0xc0, 0xd0, 0xd3, 0x3d, 0x8b, 0xe8, 0xc3, 0x7f, 0xb4, 0x9c, 0x4f, 0x49, 0xce, 0xee, 0x32, 0x11, 0x86, 0xff, 0x30, 0xb9, 0x95, 0x0a, 0x70, 0x6c, 0x6f, 0xdd, 0xd1, 0x05, 0x47, 0x72, 0xaf, 0x3c, 0x32, 0x66, 0xfb, 0x28, 0x66, 0x77, 0x59, 0x2d, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1045 = { .name = "ecdsa_brainpoolp320r1_sha384_1045", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1045_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1045_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1045_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1046 for ECDSA, tcId is 136 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1046_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1046_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1046_sig[] = { 0x2e, 0x23, 0x84, 0xe2, 0x62, 0x1b, 0x0f, 0x24, 0x8a, 0xd3, 0x49, 0x22, 0xf7, 0x21, 0xf4, 0x34, 0x52, 0x7d, 0x35, 0x4a, 0x7e, 0xf8, 0x76, 0xde, 0xfb, 0x8e, 0x80, 0xf6, 0x86, 0x48, 0x67, 0xae, 0x60, 0xc7, 0x6c, 0xe2, 0x48, 0x96, 0xa4, 0x0f, 0x08, 0xec, 0xea, 0x05, 0x48, 0x00, 0xec, 0x20, 0x1f, 0x0d, 0x1a, 0xc8, 0x93, 0xf3, 0xbd, 0x79, 0xae, 0x48, 0x53, 0x35, 0x29, 0x34, 0x5e, 0x1d, 0x33, 0x10, 0xfd, 0xc7, 0x47, 0xd7, 0x65, 0x97, 0x0f, 0xa5, 0x5e, 0xe0, 0xa4, 0x7b, 0xdc, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1046 = { .name = "ecdsa_brainpoolp320r1_sha384_1046", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1046_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1046_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1046_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1047 for ECDSA, tcId is 137 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1047_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1047_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1047_sig[] = { 0xd2, 0x90, 0xcf, 0x0f, 0x9f, 0xbd, 0x69, 0x17, 0x43, 0xb9, 0xdc, 0xdc, 0x00, 0xc0, 0x81, 0x6f, 0xb9, 0x9b, 0x5a, 0xd3, 0xb8, 0x9a, 0x23, 0xf1, 0x31, 0x3e, 0x0b, 0xf0, 0x0c, 0xb3, 0xe1, 0x2c, 0x95, 0x64, 0x8d, 0xce, 0x17, 0x5e, 0x34, 0x47, 0x58, 0x77, 0x07, 0xdb, 0x7e, 0x9d, 0xdf, 0x61, 0x3f, 0xf7, 0xd9, 0x79, 0xba, 0x9c, 0xa4, 0x11, 0xb4, 0xbb, 0x78, 0x26, 0x86, 0x2a, 0x38, 0x0c, 0xe7, 0xce, 0xbe, 0xcd, 0x52, 0xf5, 0x2f, 0xf8, 0x85, 0xf8, 0xad, 0x53, 0x6f, 0xbf, 0x11, 0x23, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1047 = { .name = "ecdsa_brainpoolp320r1_sha384_1047", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1047_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1047_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1047_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1048 for ECDSA, tcId is 138 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1048_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1048_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1048_sig[] = { 0x34, 0xb2, 0x52, 0x60, 0x4e, 0xbd, 0x86, 0x75, 0x10, 0x42, 0x66, 0xbe, 0x4d, 0xf8, 0x4b, 0x51, 0x94, 0x26, 0x87, 0xa2, 0x12, 0x95, 0x7d, 0xed, 0xd4, 0xab, 0x6d, 0xff, 0x43, 0x55, 0xa0, 0x02, 0x7b, 0x71, 0x22, 0xae, 0xb1, 0xe9, 0xf4, 0x49, 0x15, 0x08, 0x2c, 0x57, 0x64, 0xdf, 0x74, 0x2c, 0x40, 0x19, 0x3a, 0x8b, 0xf1, 0xe3, 0x8d, 0x43, 0xa5, 0xfa, 0x4c, 0x77, 0x41, 0x6c, 0xd8, 0x75, 0x30, 0x57, 0x52, 0x1c, 0x76, 0x50, 0x62, 0xc6, 0x76, 0xf9, 0x9b, 0xe6, 0x59, 0xfc, 0xd0, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1048 = { .name = "ecdsa_brainpoolp320r1_sha384_1048", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1048_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1048_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1048_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1049 for ECDSA, tcId is 139 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1049_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1049_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1049_sig[] = { 0xb4, 0x5b, 0xaf, 0x5e, 0xe1, 0x88, 0xce, 0xf5, 0x41, 0x3e, 0xf3, 0xe6, 0xf0, 0xd9, 0x17, 0xa9, 0x0c, 0xf2, 0x63, 0xd2, 0xbe, 0x0a, 0x70, 0x39, 0xa6, 0x06, 0x4e, 0x6e, 0x40, 0x53, 0xb6, 0xc9, 0x60, 0xf4, 0x4d, 0xe1, 0x59, 0x32, 0x85, 0x5a, 0x47, 0x60, 0x2d, 0xef, 0xee, 0x00, 0xb2, 0xfd, 0xea, 0x09, 0x53, 0x46, 0xde, 0xae, 0x00, 0xb4, 0x60, 0x69, 0xc9, 0x5c, 0x09, 0xe4, 0x35, 0x94, 0x88, 0x9b, 0x8d, 0x3a, 0xa3, 0xd7, 0x53, 0x50, 0x37, 0x7a, 0xa3, 0x43, 0x1e, 0xf6, 0x3c, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1049 = { .name = "ecdsa_brainpoolp320r1_sha384_1049", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1049_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1049_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1049_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1050 for ECDSA, tcId is 140 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1050_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1050_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1050_sig[] = { 0x6d, 0x82, 0x67, 0x06, 0x5d, 0x60, 0xdc, 0xd3, 0x75, 0xce, 0x04, 0x18, 0x13, 0xd6, 0x08, 0x5f, 0xa9, 0x02, 0x46, 0xcd, 0xdb, 0xba, 0xba, 0x12, 0x64, 0x3c, 0x73, 0x6c, 0xc9, 0xb7, 0xe6, 0xd6, 0x19, 0x17, 0x8f, 0x12, 0xc6, 0xfd, 0x2d, 0x3a, 0x9b, 0x72, 0x61, 0x1a, 0x5b, 0x4f, 0x87, 0x63, 0xe3, 0x0c, 0x11, 0xaa, 0x79, 0x1e, 0xff, 0x6b, 0x74, 0xc3, 0x4d, 0x05, 0xe6, 0x54, 0x51, 0x73, 0x6e, 0x2a, 0x2b, 0x72, 0x8f, 0x2e, 0x5e, 0xf4, 0x85, 0xdc, 0x4e, 0x2e, 0x5c, 0x3d, 0xaa, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1050 = { .name = "ecdsa_brainpoolp320r1_sha384_1050", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1050_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1050_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1050_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1051 for ECDSA, tcId is 141 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1051_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1051_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1051_sig[] = { 0xa1, 0xa3, 0x02, 0xaa, 0x27, 0xa3, 0x2c, 0xd2, 0x5c, 0x33, 0x6c, 0x9e, 0xd7, 0xad, 0xaf, 0x5c, 0xaf, 0x33, 0xdc, 0x34, 0x85, 0xa8, 0x13, 0x71, 0x8f, 0xce, 0x39, 0x5e, 0xc0, 0xc9, 0x3e, 0xef, 0x4c, 0xb3, 0x4a, 0x65, 0x18, 0xa6, 0x1c, 0xc8, 0x25, 0x8a, 0xcd, 0x1b, 0x45, 0x00, 0x82, 0xfd, 0xdc, 0x05, 0x43, 0x3e, 0x2d, 0xd6, 0x6b, 0x03, 0x21, 0x11, 0x43, 0x95, 0xa3, 0x3b, 0xd9, 0x82, 0x7d, 0x4c, 0x44, 0xd4, 0x86, 0xc8, 0x2c, 0x2d, 0x22, 0x98, 0x69, 0xf3, 0x76, 0x20, 0x12, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1051 = { .name = "ecdsa_brainpoolp320r1_sha384_1051", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1051_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1051_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1051_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1052 for ECDSA, tcId is 142 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1052_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1052_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1052_sig[] = { 0x63, 0xfa, 0xd2, 0x85, 0x70, 0xb4, 0x20, 0x35, 0x02, 0xa1, 0xd1, 0x05, 0x90, 0x32, 0x44, 0xdf, 0xe2, 0xb0, 0x95, 0x30, 0xa9, 0x3d, 0x8e, 0xa4, 0x29, 0xa1, 0x97, 0xc7, 0x12, 0x13, 0x37, 0xa9, 0x9d, 0x4c, 0x73, 0x51, 0x6e, 0xc6, 0x61, 0x35, 0x7b, 0x4a, 0x08, 0xb7, 0xcd, 0xea, 0xf6, 0xee, 0xde, 0xec, 0x63, 0x06, 0xa0, 0xc4, 0x10, 0xb0, 0x92, 0x71, 0x8c, 0x25, 0x59, 0x01, 0x90, 0x03, 0x0c, 0x52, 0x55, 0xbf, 0x83, 0x73, 0x93, 0xd8, 0x29, 0x38, 0x90, 0xc8, 0x49, 0x09, 0xf4, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1052 = { .name = "ecdsa_brainpoolp320r1_sha384_1052", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1052_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1052_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1052_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1053 for ECDSA, tcId is 143 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1053_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1053_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1053_sig[] = { 0xc1, 0xe6, 0x23, 0x2f, 0x06, 0xa4, 0x4d, 0xe1, 0xd7, 0x21, 0x3b, 0x20, 0xea, 0xa1, 0xb8, 0x9c, 0x31, 0xdd, 0x2f, 0x5b, 0xb0, 0x33, 0x24, 0x5e, 0x81, 0x71, 0x52, 0x4c, 0xc9, 0x11, 0x08, 0x76, 0xd7, 0x78, 0xa0, 0x48, 0x34, 0xac, 0x88, 0xee, 0xcb, 0x4a, 0xa2, 0x0d, 0x15, 0x8c, 0x3b, 0x8d, 0x11, 0x5e, 0xc6, 0x2b, 0xb5, 0x15, 0x45, 0xbd, 0x58, 0xb6, 0x3f, 0x1f, 0x01, 0x76, 0xad, 0xa0, 0x48, 0x69, 0xdf, 0xee, 0x84, 0x01, 0x97, 0x37, 0xcb, 0x80, 0x72, 0xf7, 0xa8, 0xb9, 0x40, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1053 = { .name = "ecdsa_brainpoolp320r1_sha384_1053", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1053_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1053_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1053_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1054 for ECDSA, tcId is 144 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1054_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1054_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1054_sig[] = { 0x47, 0xb6, 0xba, 0xa1, 0xa0, 0x53, 0xea, 0xb8, 0xb3, 0x8e, 0xd6, 0xc9, 0x86, 0x2f, 0x2f, 0xfe, 0xd3, 0x81, 0x14, 0x49, 0xe4, 0x9f, 0xf2, 0xe1, 0x8a, 0x58, 0x85, 0x12, 0x12, 0x9d, 0x1d, 0xea, 0x0a, 0x6c, 0x4f, 0xb8, 0x11, 0xdc, 0x5e, 0xb0, 0xa6, 0xcc, 0xee, 0xf5, 0xa1, 0xe1, 0x2f, 0x9b, 0x04, 0x9f, 0x72, 0xf5, 0x37, 0x32, 0xd4, 0x29, 0x03, 0xa7, 0x33, 0xca, 0x6f, 0x3f, 0xae, 0x95, 0x96, 0xe1, 0x7d, 0x9c, 0x75, 0x7e, 0xd4, 0xef, 0x04, 0xfc, 0xc3, 0x73, 0x02, 0xad, 0x1f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1054 = { .name = "ecdsa_brainpoolp320r1_sha384_1054", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1054_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1054_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1054_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1055 for ECDSA, tcId is 145 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1055_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1055_sig[] = { 0x67, 0xbe, 0xa5, 0x34, 0x78, 0x36, 0x4a, 0xd2, 0xcc, 0x40, 0xea, 0xb4, 0x25, 0x35, 0xa4, 0xbf, 0x8e, 0x41, 0x58, 0x3c, 0x94, 0x1c, 0xb0, 0x4e, 0xf3, 0x7f, 0x11, 0xf0, 0x35, 0x65, 0x4c, 0x33, 0x1d, 0x3b, 0xb0, 0xdd, 0xfd, 0x74, 0x03, 0x1d, 0x76, 0xa9, 0xeb, 0xa4, 0x37, 0x13, 0xed, 0x88, 0x92, 0xa6, 0x27, 0xed, 0x3b, 0xcb, 0xf7, 0xd8, 0x7f, 0x79, 0x91, 0xd1, 0x28, 0x58, 0x0a, 0x05, 0x7c, 0x1b, 0x63, 0x88, 0xb6, 0x04, 0x95, 0x4d, 0x34, 0x0e, 0x92, 0xf4, 0x18, 0x27, 0x67, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1055 = { .name = "ecdsa_brainpoolp320r1_sha384_1055", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1055_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1055_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1055_sig, .siglen = 80, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 145 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1056 for ECDSA, tcId is 146 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1056_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1056_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x40, 0x64, 0xfb, 0x4c, 0x22, 0x4a, 0x8b, 0x24, 0x8a, 0x0d, 0x93, 0x3f, 0x76, 0x42, 0xbd, 0x56, 0xac, 0xed, 0x9b, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1056 = { .name = "ecdsa_brainpoolp320r1_sha384_1056", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1056_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1056_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1056_sig, .siglen = 80, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 146 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1057 for ECDSA, tcId is 147 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1057_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1057_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x23, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1057 = { .name = "ecdsa_brainpoolp320r1_sha384_1057", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1057_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1057_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1057_sig, .siglen = 80, .result = -1, .comment = "r too large, tcId is 147 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1058 for ECDSA, tcId is 148 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1058_pubkey[] = { 0x9c, 0x97, 0x01, 0xde, 0x2f, 0xfd, 0xb2, 0x96, 0xe6, 0xd5, 0x6a, 0x5f, 0x3c, 0x18, 0x9e, 0xcb, 0xb0, 0xe4, 0x44, 0x8e, 0x38, 0xed, 0x65, 0xda, 0x46, 0xee, 0xaa, 0x51, 0xa7, 0xb3, 0x4e, 0x65, 0x0a, 0x91, 0xda, 0x95, 0xfa, 0xf1, 0x79, 0x00, 0x1e, 0x0a, 0x98, 0xa5, 0x98, 0x52, 0x3a, 0x34, 0xc4, 0x91, 0x8d, 0x41, 0x80, 0xf8, 0x7d, 0x64, 0x1e, 0x46, 0x26, 0xce, 0x11, 0xfa, 0x3a, 0x24, 0x4a, 0xbf, 0xb2, 0x45, 0x07, 0x36, 0x69, 0x3d, 0x38, 0x65, 0x23, 0x09, 0x24, 0x0e, 0xbd, 0xa9, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1058_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1058 = { .name = "ecdsa_brainpoolp320r1_sha384_1058", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1058_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1058_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1058_sig, .siglen = 80, .result = 1, .comment = "r,s are large, tcId is 148 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1059 for ECDSA, tcId is 149 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1059_pubkey[] = { 0xb6, 0xf0, 0xdd, 0xc8, 0x34, 0xef, 0x8a, 0x67, 0x90, 0x36, 0x81, 0xea, 0x02, 0xb7, 0x88, 0xfc, 0xff, 0x82, 0xd1, 0x23, 0x07, 0xc8, 0xc3, 0xf4, 0xa4, 0x4b, 0x30, 0xd7, 0xc5, 0xf6, 0x14, 0xda, 0xfc, 0xc9, 0xa8, 0x39, 0x99, 0x1f, 0x8e, 0xe4, 0x27, 0x53, 0x8e, 0x30, 0xae, 0x51, 0x02, 0xb2, 0x04, 0x39, 0x57, 0xdd, 0x61, 0x24, 0xfb, 0xa3, 0xa1, 0xb6, 0x01, 0xc0, 0x4b, 0xdd, 0xaf, 0x6c, 0x92, 0x9f, 0xfd, 0xf2, 0xf7, 0x79, 0x6f, 0xd7, 0x09, 0x8c, 0x38, 0x7d, 0xbc, 0x0b, 0x26, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1059_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8c, 0x07, 0x36, 0x55, 0x4d, 0xbc, 0x44, 0x60, 0x63, 0xe8, 0xe1, 0x5f, 0x29, 0x7f, 0xd4, 0xb6, 0x6f, 0xa8, 0x87, 0x99, 0x45, 0xbb, 0xb5, 0xc2, 0x27, 0x14, 0xa9, 0x64, 0x5f, 0x4f, 0xa4, 0xef, 0x9d, 0x71, 0x0e, 0xaf, 0xa6, 0xb2, 0x26, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1059 = { .name = "ecdsa_brainpoolp320r1_sha384_1059", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1059_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1059_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1059_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 149 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1060 for ECDSA, tcId is 150 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1060_pubkey[] = { 0x6d, 0xf4, 0x43, 0x21, 0xd4, 0xa5, 0xf6, 0xaf, 0x63, 0xe0, 0x1b, 0x79, 0xbb, 0x60, 0x8e, 0xa0, 0x4a, 0xc6, 0xf3, 0x5f, 0x79, 0x50, 0x44, 0xa0, 0x4f, 0xf4, 0x00, 0xf5, 0x47, 0xfd, 0x34, 0xd9, 0xb7, 0x8c, 0x12, 0xc4, 0x59, 0x78, 0xf9, 0x6f, 0xb5, 0x29, 0x01, 0xce, 0xce, 0x48, 0xaa, 0xb4, 0x32, 0xc3, 0xdb, 0xdc, 0xbc, 0x0e, 0x27, 0x0b, 0x2c, 0xc9, 0xb9, 0x91, 0x5c, 0xc1, 0xff, 0xb6, 0x9a, 0x36, 0x5d, 0x84, 0xc3, 0x91, 0x86, 0xc4, 0x81, 0x77, 0x38, 0x7a, 0xa9, 0xee, 0x0a, 0x48, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1060_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x07, 0xcd, 0xd5, 0x93, 0xac, 0xb5, 0x01, 0xfc, 0x28, 0x48, 0x35, 0x1f, 0x9d, 0x2e, 0x6b, 0x54, 0x57, 0xd3, 0xde, 0x43, 0xc3, 0x13, 0x0e, 0x3b, 0x74, 0xe6, 0xa9, 0x24, 0x2b, 0x3c, 0xce, 0x1c, 0x24, 0xf0, 0x94, 0xf1, 0x18, 0xbc, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1060 = { .name = "ecdsa_brainpoolp320r1_sha384_1060", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1060_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1060_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1060_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 150 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1061 for ECDSA, tcId is 151 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1061_pubkey[] = { 0x4e, 0x49, 0x6f, 0x05, 0x6a, 0xb5, 0xd0, 0x7f, 0x96, 0x56, 0x2c, 0x68, 0x36, 0x43, 0x44, 0x0e, 0x31, 0xfe, 0xa2, 0x6d, 0x35, 0xe6, 0xc5, 0xb6, 0x9e, 0xef, 0xaa, 0x41, 0x07, 0xd3, 0x45, 0xc8, 0x07, 0xbf, 0x27, 0x9f, 0x2e, 0xa2, 0x6b, 0x60, 0x28, 0x85, 0x39, 0x76, 0x6f, 0xc7, 0x26, 0xcb, 0x9e, 0x84, 0x1d, 0xb5, 0xdc, 0xfb, 0xbb, 0x79, 0x2c, 0xad, 0xe3, 0xc1, 0xef, 0x64, 0xb6, 0x9d, 0xcb, 0xda, 0x7f, 0x5e, 0x49, 0x7b, 0x45, 0x5a, 0x91, 0x1c, 0xe2, 0xf0, 0xeb, 0xca, 0xca, 0xad, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1061_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1061 = { .name = "ecdsa_brainpoolp320r1_sha384_1061", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1061_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1061_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1061_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 151 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1062 for ECDSA, tcId is 152 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1062_pubkey[] = { 0x4e, 0x49, 0x6f, 0x05, 0x6a, 0xb5, 0xd0, 0x7f, 0x96, 0x56, 0x2c, 0x68, 0x36, 0x43, 0x44, 0x0e, 0x31, 0xfe, 0xa2, 0x6d, 0x35, 0xe6, 0xc5, 0xb6, 0x9e, 0xef, 0xaa, 0x41, 0x07, 0xd3, 0x45, 0xc8, 0x07, 0xbf, 0x27, 0x9f, 0x2e, 0xa2, 0x6b, 0x60, 0x28, 0x85, 0x39, 0x76, 0x6f, 0xc7, 0x26, 0xcb, 0x9e, 0x84, 0x1d, 0xb5, 0xdc, 0xfb, 0xbb, 0x79, 0x2c, 0xad, 0xe3, 0xc1, 0xef, 0x64, 0xb6, 0x9d, 0xcb, 0xda, 0x7f, 0x5e, 0x49, 0x7b, 0x45, 0x5a, 0x91, 0x1c, 0xe2, 0xf0, 0xeb, 0xca, 0xca, 0xad, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1062_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1062 = { .name = "ecdsa_brainpoolp320r1_sha384_1062", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1062_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1062_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1062_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 152 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1063 for ECDSA, tcId is 153 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1063_pubkey[] = { 0x11, 0xe0, 0x94, 0xf4, 0x70, 0x94, 0x8e, 0x4e, 0xaa, 0x6a, 0xa1, 0x3f, 0xab, 0x4e, 0x06, 0x33, 0x86, 0xe9, 0x1a, 0x63, 0x8f, 0xa2, 0x26, 0xd9, 0x88, 0xd0, 0x69, 0x3d, 0xea, 0x71, 0x9c, 0xa9, 0x5f, 0x61, 0xe4, 0x93, 0xe9, 0x83, 0x5a, 0xf4, 0x3f, 0x53, 0x3e, 0x89, 0xaa, 0x20, 0x85, 0xa9, 0xf8, 0x12, 0x10, 0x86, 0xa2, 0x59, 0x7f, 0x10, 0x60, 0xf7, 0x3c, 0x8d, 0x75, 0xd6, 0x69, 0x40, 0xe5, 0x0e, 0xea, 0xd7, 0x3d, 0xfd, 0x03, 0xc4, 0x76, 0xea, 0x19, 0x47, 0xcd, 0xd4, 0xdd, 0x3f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1063_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1063 = { .name = "ecdsa_brainpoolp320r1_sha384_1063", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1063_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1063_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1063_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 153 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1064 for ECDSA, tcId is 154 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1064_pubkey[] = { 0x11, 0xe0, 0x94, 0xf4, 0x70, 0x94, 0x8e, 0x4e, 0xaa, 0x6a, 0xa1, 0x3f, 0xab, 0x4e, 0x06, 0x33, 0x86, 0xe9, 0x1a, 0x63, 0x8f, 0xa2, 0x26, 0xd9, 0x88, 0xd0, 0x69, 0x3d, 0xea, 0x71, 0x9c, 0xa9, 0x5f, 0x61, 0xe4, 0x93, 0xe9, 0x83, 0x5a, 0xf4, 0x3f, 0x53, 0x3e, 0x89, 0xaa, 0x20, 0x85, 0xa9, 0xf8, 0x12, 0x10, 0x86, 0xa2, 0x59, 0x7f, 0x10, 0x60, 0xf7, 0x3c, 0x8d, 0x75, 0xd6, 0x69, 0x40, 0xe5, 0x0e, 0xea, 0xd7, 0x3d, 0xfd, 0x03, 0xc4, 0x76, 0xea, 0x19, 0x47, 0xcd, 0xd4, 0xdd, 0x3f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1064_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1064 = { .name = "ecdsa_brainpoolp320r1_sha384_1064", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1064_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1064_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1064_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 154 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1065 for ECDSA, tcId is 155 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1065_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1065_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1065 = { .name = "ecdsa_brainpoolp320r1_sha384_1065", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1065_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1065_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1065_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 155 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1066 for ECDSA, tcId is 156 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1066_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1066_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1066 = { .name = "ecdsa_brainpoolp320r1_sha384_1066", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1066_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1066_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1066_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 156 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1067 for ECDSA, tcId is 157 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1067_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1067_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1067 = { .name = "ecdsa_brainpoolp320r1_sha384_1067", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1067_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1067_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1067_sig, .siglen = 80, .result = -1, .comment = "r is larger than n, tcId is 157 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1068 for ECDSA, tcId is 158 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1068_pubkey[] = { 0x3a, 0x26, 0x68, 0xbc, 0x09, 0x61, 0x4d, 0x26, 0x38, 0xed, 0x58, 0xf1, 0xc4, 0x21, 0xbb, 0x61, 0xf2, 0xd4, 0x99, 0xa8, 0x6f, 0xe7, 0xd5, 0x73, 0xbd, 0x13, 0x92, 0xac, 0xef, 0x9e, 0x29, 0x6b, 0x1e, 0xf2, 0xb1, 0x0d, 0x7f, 0x4e, 0xc5, 0x24, 0xd1, 0xb7, 0x8e, 0xb2, 0x71, 0x6c, 0xe6, 0x68, 0x05, 0x4d, 0x29, 0x67, 0x7c, 0x6f, 0x4d, 0x32, 0x35, 0xf2, 0x7d, 0x3a, 0x92, 0x95, 0xec, 0xef, 0x9d, 0xdf, 0xd2, 0xf6, 0x58, 0xba, 0x00, 0x20, 0x52, 0xd0, 0xe1, 0xe6, 0x71, 0x72, 0x1e, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1068_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xd8, 0x69, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1068 = { .name = "ecdsa_brainpoolp320r1_sha384_1068", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1068_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1068_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1068_sig, .siglen = 80, .result = -1, .comment = "s is larger than n, tcId is 158 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1069 for ECDSA, tcId is 159 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1069_pubkey[] = { 0xcd, 0x16, 0x97, 0xc6, 0xe1, 0x07, 0xf3, 0xd9, 0x0b, 0x8d, 0xf4, 0x62, 0xeb, 0x36, 0x8b, 0x75, 0xeb, 0xa5, 0x85, 0x63, 0x59, 0x50, 0x17, 0x7e, 0x0a, 0x64, 0xb1, 0xad, 0x4b, 0xe5, 0x27, 0xc9, 0x09, 0x57, 0xfb, 0xdf, 0x20, 0x3d, 0x67, 0xc8, 0x4b, 0x00, 0x3f, 0x20, 0xe8, 0x16, 0x59, 0x09, 0x9b, 0x7e, 0x46, 0x66, 0x18, 0xf2, 0x61, 0x0c, 0x6f, 0x1d, 0xf3, 0x15, 0xb2, 0x01, 0x1d, 0xb0, 0x7b, 0x90, 0xf3, 0x66, 0x2b, 0x51, 0x56, 0x1f, 0xff, 0xdf, 0x3e, 0xbb, 0x5d, 0x44, 0x34, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1069_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x21, 0x49, 0x4d, 0xb8, 0x79, 0x80, 0x6d, 0x4f, 0x59, 0xe5, 0x3d, 0x49, 0x63, 0x97, 0x7a, 0x03, 0xf6, 0xec, 0x51, 0x14, 0x0c, 0x9f, 0x9a, 0x1d, 0xba, 0x88, 0x57, 0xff, 0x3b, 0xbc, 0x76, 0xd2, 0x21, 0x49, 0x47, 0xe6, 0x0e, 0xdc, 0x98, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1069 = { .name = "ecdsa_brainpoolp320r1_sha384_1069", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1069_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1069_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1069_sig, .siglen = 80, .result = 1, .comment = "small r and s^-1, tcId is 159 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1070 for ECDSA, tcId is 160 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1070_pubkey[] = { 0xb1, 0xe3, 0x61, 0x9d, 0x9e, 0x35, 0x87, 0x3e, 0x95, 0x9b, 0xb7, 0xde, 0x77, 0x40, 0xe9, 0x27, 0xe3, 0xcb, 0x7f, 0xcf, 0x44, 0x13, 0xbf, 0xdb, 0xbe, 0xd7, 0x2e, 0xcc, 0x9a, 0x86, 0xa5, 0x0d, 0x70, 0x29, 0xca, 0xe0, 0x8e, 0xc2, 0x85, 0xab, 0x48, 0x6b, 0x5d, 0x2f, 0x7c, 0x9b, 0x93, 0x14, 0x42, 0x0b, 0xc8, 0x64, 0xcf, 0xe2, 0x9b, 0x40, 0x64, 0xbf, 0x7b, 0x92, 0x2b, 0xbb, 0x5b, 0xbc, 0xd1, 0x6f, 0x3a, 0x81, 0xea, 0x7d, 0x0a, 0x61, 0xb0, 0xa0, 0x9a, 0x62, 0x95, 0x9b, 0x76, 0x90, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1070_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x43, 0xbe, 0xcc, 0x87, 0x6a, 0x63, 0x56, 0x4b, 0x45, 0x82, 0x80, 0x19, 0x9e, 0x38, 0x2c, 0xba, 0xd8, 0xef, 0x68, 0xd4, 0x06, 0x66, 0x5b, 0xbf, 0x30, 0x7f, 0xfe, 0xa4, 0x58, 0x45, 0xa9, 0xac, 0x69, 0x34, 0x5a, 0x84, 0xa5, 0xa7, 0x2b, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1070 = { .name = "ecdsa_brainpoolp320r1_sha384_1070", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1070_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1070_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1070_sig, .siglen = 80, .result = 1, .comment = "smallish r and s^-1, tcId is 160 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1071 for ECDSA, tcId is 161 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1071_pubkey[] = { 0x97, 0xcf, 0xeb, 0xab, 0x58, 0x8a, 0x54, 0x24, 0x2a, 0x4d, 0x96, 0x2e, 0xf8, 0x03, 0x37, 0x6c, 0x3f, 0x43, 0x07, 0x9a, 0xa5, 0x0a, 0x88, 0x71, 0xd6, 0xe7, 0x76, 0xf7, 0xa0, 0xb3, 0x3a, 0xea, 0x46, 0xab, 0x9a, 0x2d, 0xa6, 0x3a, 0x33, 0xd8, 0xc8, 0x1a, 0xf3, 0x4a, 0xf2, 0xe9, 0xa0, 0xc5, 0x71, 0xef, 0xfb, 0x50, 0x1c, 0x4a, 0x27, 0xfd, 0x2a, 0xed, 0xc1, 0x36, 0x23, 0x44, 0x7a, 0xf2, 0xbc, 0x8b, 0x6d, 0x5e, 0x72, 0x08, 0xc2, 0x3e, 0x87, 0xe2, 0xd7, 0x97, 0xcc, 0x3c, 0xf5, 0x7e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1071_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x39, 0x92, 0x35, 0x3d, 0x91, 0x66, 0x17, 0xb4, 0x93, 0x03, 0x85, 0x64, 0x88, 0xe3, 0x9f, 0xbc, 0x26, 0x17, 0x3b, 0x8b, 0xc4, 0x26, 0xf8, 0x20, 0x7d, 0xe3, 0xd8, 0xf1, 0xb9, 0x7f, 0x3d, 0x12, 0xc8, 0x03, 0xb9, 0x9d, 0x57, 0x76, 0x8f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1071 = { .name = "ecdsa_brainpoolp320r1_sha384_1071", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1071_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1071_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1071_sig, .siglen = 80, .result = 1, .comment = "100-bit r and small s^-1, tcId is 161 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1072 for ECDSA, tcId is 162 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1072_pubkey[] = { 0x29, 0x6e, 0x00, 0x67, 0x94, 0x7e, 0xfc, 0x07, 0xa0, 0x6a, 0xe2, 0x18, 0xfb, 0x00, 0x16, 0x4d, 0x1e, 0xbe, 0xbc, 0xd3, 0x78, 0x7f, 0x79, 0x34, 0x81, 0x40, 0x7e, 0x27, 0x96, 0x24, 0x8e, 0x8b, 0x65, 0xea, 0xc5, 0x7d, 0xb0, 0xc1, 0x46, 0x06, 0x72, 0x9e, 0x80, 0x94, 0xb9, 0xa5, 0x4e, 0xea, 0xc2, 0x3d, 0x98, 0xd5, 0x1d, 0x66, 0x2e, 0xff, 0x2d, 0xf3, 0x3a, 0x86, 0x93, 0x00, 0x8f, 0xd0, 0x2a, 0x04, 0x29, 0xef, 0x68, 0x51, 0xec, 0xbd, 0xcd, 0x93, 0xaa, 0xc6, 0x7c, 0x2f, 0xbd, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1072_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1072 = { .name = "ecdsa_brainpoolp320r1_sha384_1072", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1072_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1072_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1072_sig, .siglen = 80, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 162 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1073 for ECDSA, tcId is 163 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1073_pubkey[] = { 0xa3, 0x78, 0x3b, 0x01, 0x45, 0x5d, 0x92, 0x08, 0x0f, 0x52, 0x0d, 0x17, 0x1f, 0x92, 0xab, 0xea, 0xf4, 0x8c, 0x72, 0x38, 0xe1, 0x68, 0xb2, 0x93, 0x1f, 0x2b, 0x32, 0x2f, 0x9c, 0x0f, 0xaa, 0x69, 0xa2, 0x40, 0x97, 0x83, 0x6c, 0xb0, 0xa6, 0x85, 0x1c, 0xbf, 0x1a, 0x22, 0xba, 0xc2, 0x43, 0x75, 0x51, 0x24, 0x46, 0x05, 0x68, 0x2d, 0xab, 0xcd, 0xd4, 0xcf, 0x39, 0xff, 0x9d, 0x08, 0x44, 0x39, 0x21, 0xc9, 0x94, 0x48, 0xcb, 0xce, 0xa5, 0xde, 0xb8, 0x5a, 0xd9, 0x52, 0xdb, 0xb2, 0xb9, 0x67, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1073_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1073 = { .name = "ecdsa_brainpoolp320r1_sha384_1073", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1073_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1073_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1073_sig, .siglen = 80, .result = 1, .comment = "100-bit r and s^-1, tcId is 163 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1074 for ECDSA, tcId is 164 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1074_pubkey[] = { 0x70, 0xd5, 0xfd, 0x41, 0xc4, 0x16, 0xd5, 0xb7, 0xcd, 0xbc, 0xb9, 0x44, 0x20, 0x5b, 0xd6, 0x9f, 0xf0, 0x0e, 0xd6, 0x35, 0x4a, 0xa5, 0x02, 0x75, 0x7e, 0x08, 0x9c, 0xb1, 0x9a, 0xf6, 0xf7, 0x77, 0xbe, 0xb0, 0xf6, 0x92, 0x1c, 0x0f, 0xaf, 0xac, 0x22, 0xae, 0x7c, 0xc6, 0x5e, 0x0e, 0x7b, 0x61, 0x74, 0x23, 0x75, 0x0b, 0x84, 0x93, 0xa5, 0x85, 0x12, 0xe3, 0x79, 0xc0, 0x0d, 0xe6, 0x26, 0xc1, 0x7f, 0x7c, 0x82, 0xbf, 0xc9, 0x07, 0xf2, 0x66, 0x10, 0xa3, 0xf1, 0xe4, 0xd1, 0x32, 0xc5, 0x75, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1074_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x94, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1074 = { .name = "ecdsa_brainpoolp320r1_sha384_1074", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1074_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1074_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1074_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 are close to n, tcId is 164 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1075 for ECDSA, tcId is 165 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1075_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1075_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1075 = { .name = "ecdsa_brainpoolp320r1_sha384_1075", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1075_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1075_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1075_sig, .siglen = 80, .result = 1, .comment = "s == 1, tcId is 165 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1076 for ECDSA, tcId is 166 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1076_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1076_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1076 = { .name = "ecdsa_brainpoolp320r1_sha384_1076", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1076_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1076_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1076_sig, .siglen = 80, .result = -1, .comment = "s == 0, tcId is 166 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1077 for ECDSA, tcId is 167 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1077_pubkey[] = { 0x20, 0x25, 0x16, 0xad, 0x66, 0x37, 0x75, 0xf1, 0x21, 0x55, 0x52, 0x10, 0x79, 0x03, 0x7f, 0x3f, 0xca, 0x50, 0xc6, 0x4f, 0xaa, 0x4a, 0xfd, 0x88, 0x6a, 0xdd, 0x4d, 0xaa, 0xb9, 0x27, 0xf3, 0xf6, 0x2a, 0xa2, 0xda, 0xe6, 0x84, 0xa6, 0x35, 0xd6, 0x63, 0x2a, 0xed, 0xd5, 0x30, 0xe6, 0x1d, 0xab, 0x35, 0x91, 0x69, 0x62, 0xee, 0x8f, 0x23, 0xed, 0x68, 0x81, 0x98, 0xaf, 0xd5, 0xad, 0x6b, 0x07, 0x05, 0xe2, 0xef, 0x9d, 0x0b, 0xa3, 0xc5, 0x33, 0x3b, 0x15, 0xbd, 0xab, 0x43, 0x2e, 0xe3, 0x42, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1077_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1077 = { .name = "ecdsa_brainpoolp320r1_sha384_1077", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1077_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1077_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1077_sig, .siglen = 80, .result = -1, .comment = "point at infinity during verify, tcId is 167 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1078 for ECDSA, tcId is 168 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1078_pubkey[] = { 0x82, 0x3a, 0x83, 0x0c, 0x58, 0xd9, 0xdd, 0x37, 0x0f, 0x68, 0x7f, 0xf8, 0x19, 0x14, 0x2b, 0x64, 0x4a, 0xc9, 0xdc, 0x18, 0xa9, 0x46, 0x81, 0xe2, 0x24, 0x5e, 0xb2, 0x2f, 0x27, 0xe3, 0x33, 0xe6, 0x2f, 0xec, 0xe3, 0x97, 0x23, 0x17, 0x69, 0xda, 0x36, 0xa7, 0xe2, 0x37, 0xea, 0x2f, 0x3e, 0x24, 0x72, 0xde, 0x14, 0x7e, 0x16, 0x6c, 0xe4, 0xbd, 0x82, 0x48, 0x20, 0x8d, 0xf5, 0x38, 0xac, 0x00, 0xf5, 0xb2, 0x29, 0x9e, 0x2d, 0x72, 0x9b, 0x0d, 0xd8, 0x0e, 0x3e, 0x10, 0x6c, 0x06, 0x08, 0x44, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1078_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1078 = { .name = "ecdsa_brainpoolp320r1_sha384_1078", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1078_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1078_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1078_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 168 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1079 for ECDSA, tcId is 169 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1079_pubkey[] = { 0x38, 0x7a, 0x75, 0x92, 0x84, 0xf6, 0x5d, 0x2d, 0x93, 0xf5, 0x41, 0xf2, 0x76, 0x6f, 0x84, 0x6a, 0xbd, 0xec, 0x23, 0x91, 0x90, 0xe8, 0xcd, 0xdb, 0xa9, 0xb7, 0x56, 0x4a, 0x83, 0xd5, 0x81, 0x62, 0xa4, 0x89, 0xf2, 0x5f, 0x0d, 0x43, 0xb4, 0xf8, 0x42, 0x46, 0x25, 0xa6, 0xc1, 0xe1, 0x58, 0x94, 0x74, 0xc3, 0x0e, 0x63, 0x83, 0xc9, 0x25, 0xb3, 0x63, 0x23, 0x9d, 0x1a, 0x87, 0xb9, 0x63, 0x4f, 0xd8, 0xaa, 0xc2, 0xeb, 0x0c, 0xe3, 0x9e, 0x37, 0x63, 0x87, 0x3d, 0xe7, 0x73, 0x58, 0xbd, 0x4b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1079_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1079 = { .name = "ecdsa_brainpoolp320r1_sha384_1079", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1079_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1079_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1079_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 169 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1080 for ECDSA, tcId is 170 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1080_pubkey[] = { 0x6b, 0x43, 0x27, 0x11, 0x7e, 0x9c, 0x04, 0xd7, 0xa5, 0x82, 0x59, 0xc5, 0x20, 0x7a, 0x36, 0xe8, 0xd2, 0x78, 0xe8, 0x73, 0xb9, 0x2b, 0x5b, 0x3a, 0x70, 0xa3, 0xc4, 0x74, 0x2c, 0xc5, 0x83, 0xb4, 0x14, 0x08, 0xaa, 0xab, 0x23, 0xa1, 0x2a, 0x9c, 0x9b, 0x0b, 0x26, 0x16, 0x0c, 0x54, 0x8a, 0xba, 0xcd, 0x7f, 0x0e, 0x37, 0x27, 0x6f, 0x91, 0x7c, 0x09, 0x72, 0x1b, 0x38, 0x44, 0xd0, 0xb2, 0x6e, 0x9e, 0xd5, 0xc7, 0x6c, 0x99, 0x78, 0x79, 0x92, 0x25, 0x9b, 0xf0, 0xf7, 0xb0, 0x24, 0x45, 0xd3, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1080_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1080 = { .name = "ecdsa_brainpoolp320r1_sha384_1080", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1080_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1080_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1080_sig, .siglen = 80, .result = -1, .comment = "u1 == 1, tcId is 170 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1081 for ECDSA, tcId is 171 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1081_pubkey[] = { 0x27, 0x7f, 0x48, 0x7f, 0xaf, 0x77, 0xa6, 0x5d, 0xbb, 0x79, 0x15, 0x36, 0xe8, 0x63, 0xb8, 0xc7, 0x0f, 0x90, 0x4f, 0xcd, 0xca, 0xf5, 0x27, 0x40, 0xd4, 0xbd, 0x5c, 0x46, 0x97, 0x31, 0xe5, 0x8e, 0xa6, 0xbd, 0x53, 0xe8, 0xd7, 0x72, 0x02, 0x28, 0x2d, 0x34, 0x6f, 0x2b, 0x4c, 0xa7, 0xba, 0xcb, 0x88, 0x2f, 0xef, 0x74, 0x9c, 0x27, 0x13, 0xf1, 0xa7, 0x5f, 0x00, 0x82, 0x7e, 0x8b, 0x9b, 0x9f, 0x74, 0x4a, 0x0e, 0x1e, 0x34, 0xbc, 0xf8, 0x07, 0x99, 0xa1, 0x20, 0x95, 0x0d, 0xe9, 0x5d, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1081_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1081 = { .name = "ecdsa_brainpoolp320r1_sha384_1081", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1081_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1081_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1081_sig, .siglen = 80, .result = 1, .comment = "u1 == n - 1, tcId is 171 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1082 for ECDSA, tcId is 172 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1082_pubkey[] = { 0x73, 0xbd, 0x62, 0xf3, 0xbb, 0x32, 0x9d, 0x65, 0x09, 0x2b, 0x5d, 0x13, 0xc5, 0x74, 0x6d, 0x46, 0x24, 0x01, 0xd2, 0x60, 0x09, 0x94, 0xd8, 0xfe, 0x2e, 0xc5, 0xef, 0x5b, 0x9f, 0x33, 0x99, 0x08, 0x4b, 0x1d, 0xdc, 0x64, 0xcb, 0x33, 0x4b, 0xae, 0xc1, 0xd1, 0xac, 0x4f, 0x9a, 0x0c, 0x2a, 0x79, 0xef, 0x7c, 0xcc, 0x4a, 0xe9, 0x16, 0x5d, 0xdf, 0xa7, 0x61, 0x38, 0x23, 0x57, 0x18, 0xcf, 0x24, 0x03, 0x2c, 0x33, 0xf9, 0xdb, 0x4a, 0x26, 0xb2, 0xb0, 0x36, 0x92, 0xa5, 0x6f, 0x52, 0x02, 0xeb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1082_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1082 = { .name = "ecdsa_brainpoolp320r1_sha384_1082", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1082_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1082_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1082_sig, .siglen = 80, .result = 1, .comment = "u2 == 1, tcId is 172 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1083 for ECDSA, tcId is 173 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1083_pubkey[] = { 0x20, 0xa7, 0x55, 0x51, 0x03, 0x5d, 0xb9, 0x5d, 0x7a, 0x1a, 0x67, 0x3d, 0x46, 0x4d, 0x27, 0x6d, 0xa0, 0x86, 0x10, 0x08, 0xe4, 0x64, 0x4c, 0x58, 0x2b, 0xc1, 0x0a, 0x1b, 0xee, 0xae, 0xb0, 0x70, 0x82, 0x3f, 0xd0, 0x64, 0xa2, 0x62, 0x5e, 0xbb, 0x5d, 0x47, 0xf0, 0xc7, 0x7f, 0xc5, 0x7e, 0x3b, 0xb0, 0xe1, 0x53, 0xbb, 0xc7, 0xe9, 0xbb, 0xde, 0x8d, 0xb9, 0x8b, 0x0c, 0x46, 0xc5, 0x81, 0x54, 0xaf, 0x5b, 0x97, 0x86, 0xb1, 0x0b, 0xa1, 0x2a, 0xb3, 0xba, 0x85, 0x33, 0xa3, 0x99, 0x28, 0x83, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1083_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1083 = { .name = "ecdsa_brainpoolp320r1_sha384_1083", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1083_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1083_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1083_sig, .siglen = 80, .result = 1, .comment = "u2 == n - 1, tcId is 173 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1084 for ECDSA, tcId is 174 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1084_pubkey[] = { 0x3f, 0x43, 0x6d, 0x07, 0xcb, 0x02, 0x64, 0xb1, 0x3f, 0x92, 0xfd, 0x69, 0x63, 0x34, 0xa4, 0xe5, 0x1b, 0x7d, 0x66, 0x19, 0xe2, 0xd0, 0x43, 0xb2, 0xd0, 0xd2, 0x78, 0x96, 0x3f, 0x25, 0x16, 0x20, 0x0e, 0xf9, 0x05, 0xeb, 0xf6, 0x71, 0x66, 0x63, 0x40, 0xe6, 0x42, 0xb6, 0xc9, 0x66, 0x07, 0x2b, 0x79, 0x27, 0x80, 0x03, 0x65, 0x11, 0x28, 0x87, 0x9f, 0x19, 0xde, 0xe0, 0x12, 0x73, 0xb6, 0x6b, 0xea, 0xd8, 0x04, 0x51, 0x94, 0x27, 0x7c, 0x92, 0x84, 0x09, 0x33, 0x48, 0xd9, 0x05, 0x69, 0xb1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1084_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0c, 0xc6, 0x4a, 0xf0, 0x35, 0xcb, 0x79, 0xb3, 0x33, 0x6a, 0x62, 0xd9, 0x15, 0xb3, 0x81, 0xe2, 0x68, 0xd3, 0xbc, 0xb8, 0x34, 0xf9, 0xcf, 0xd0, 0xf5, 0x97, 0xc3, 0x7c, 0xa5, 0xfc, 0xf5, 0x0f, 0x58, 0x86, 0x14, 0xef, 0x0e, 0xf7, 0xb6, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1084 = { .name = "ecdsa_brainpoolp320r1_sha384_1084", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1084_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1084_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1084_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 174 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1085 for ECDSA, tcId is 175 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1085_pubkey[] = { 0xc1, 0x6f, 0xbe, 0x6d, 0x0d, 0x77, 0x32, 0x7c, 0xf9, 0xa6, 0x5f, 0x98, 0x7c, 0x2f, 0xe7, 0xee, 0x18, 0x07, 0x85, 0x1c, 0x0e, 0x1c, 0x8b, 0xc4, 0xf0, 0x62, 0x28, 0x07, 0xdc, 0xd4, 0xa8, 0x8b, 0x3b, 0x91, 0x2e, 0xb0, 0x47, 0x54, 0x71, 0xe5, 0x75, 0x42, 0x1c, 0x40, 0x54, 0x00, 0x50, 0x50, 0x7a, 0x16, 0x3f, 0x23, 0xcc, 0x7c, 0xb9, 0x0a, 0xcc, 0x52, 0x82, 0x2d, 0x01, 0xd2, 0x45, 0xab, 0x70, 0xdc, 0xaa, 0xc0, 0x6e, 0x2e, 0xa6, 0x44, 0x32, 0x7a, 0x85, 0xf5, 0x95, 0xd0, 0x26, 0xef, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1085_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8e, 0x76, 0x5d, 0x0d, 0x1c, 0xf9, 0x53, 0x9f, 0x68, 0x2a, 0x41, 0x55, 0xb6, 0xd6, 0x0e, 0xb6, 0xaa, 0x68, 0x62, 0xb2, 0xaf, 0x9e, 0x9d, 0x3f, 0x94, 0xc9, 0xad, 0x46, 0xd3, 0x32, 0xf0, 0xe0, 0x29, 0x77, 0x55, 0x22, 0x81, 0x5c, 0x0e, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1085 = { .name = "ecdsa_brainpoolp320r1_sha384_1085", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1085_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1085_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1085_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 175 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1086 for ECDSA, tcId is 176 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1086_pubkey[] = { 0xbe, 0x92, 0x40, 0x07, 0xd6, 0xe2, 0x2b, 0x94, 0x4a, 0xc7, 0x6d, 0xa7, 0xfc, 0x26, 0x60, 0xd1, 0xae, 0xfa, 0xb6, 0x94, 0x71, 0xbd, 0x83, 0x5b, 0xd7, 0x8e, 0xdd, 0x2c, 0x10, 0x62, 0x1e, 0x76, 0xf7, 0x18, 0xbf, 0xd0, 0xa5, 0xe2, 0x30, 0x7e, 0xc6, 0x25, 0x83, 0xd5, 0xba, 0x5c, 0xc1, 0xc5, 0x47, 0x63, 0x04, 0x76, 0xb3, 0x99, 0x86, 0x6e, 0x7e, 0xd9, 0x53, 0xb5, 0x38, 0xf7, 0x6c, 0x86, 0xaf, 0xe9, 0xcf, 0xd0, 0x85, 0x4b, 0x57, 0xe3, 0x36, 0x91, 0xc7, 0x7e, 0x44, 0x4c, 0xca, 0xb8, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1086_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x72, 0x25, 0xa9, 0x60, 0xd9, 0x67, 0xcf, 0xe5, 0x2a, 0xc1, 0x26, 0xa5, 0x0f, 0xd7, 0x9f, 0xa8, 0x5a, 0x58, 0x63, 0x97, 0xc0, 0xb2, 0x98, 0xc8, 0xad, 0xfa, 0xf1, 0x38, 0x31, 0x7b, 0x0f, 0x79, 0x4b, 0x24, 0xf5, 0x3b, 0xd9, 0x20, 0xc1, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1086 = { .name = "ecdsa_brainpoolp320r1_sha384_1086", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1086_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1086_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1086_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 176 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1087 for ECDSA, tcId is 177 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1087_pubkey[] = { 0xac, 0xf2, 0x40, 0x13, 0x0d, 0x47, 0xd4, 0xa5, 0x7d, 0x60, 0x65, 0x95, 0xf9, 0x89, 0x12, 0x9f, 0xea, 0x7e, 0x97, 0x44, 0xb1, 0xe5, 0x3f, 0x5c, 0xe6, 0x79, 0xc2, 0x44, 0xc8, 0x5a, 0xf3, 0x5c, 0x61, 0x86, 0x07, 0xe2, 0xec, 0xce, 0x1a, 0x43, 0x1b, 0x69, 0x6a, 0x79, 0x59, 0xfe, 0x30, 0xd0, 0x49, 0x10, 0x0d, 0xd5, 0x42, 0x58, 0x18, 0x1b, 0x08, 0xa2, 0xfe, 0x44, 0x2e, 0x41, 0xff, 0x29, 0x52, 0x3c, 0x11, 0xa3, 0xe0, 0x10, 0x28, 0xeb, 0x64, 0xb3, 0x21, 0xc2, 0xb7, 0x02, 0x57, 0x9c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1087_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x87, 0x4f, 0x31, 0x1b, 0x6b, 0x9a, 0xc7, 0x4f, 0xc3, 0x4c, 0x60, 0xc0, 0x94, 0x18, 0x73, 0x65, 0x1b, 0x3c, 0x0e, 0xc1, 0xd0, 0x97, 0xa7, 0x86, 0x1e, 0x0c, 0x7f, 0xbe, 0xc3, 0x22, 0x6f, 0x23, 0xa5, 0xe2, 0xc9, 0x29, 0xd8, 0x56, 0xec, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1087 = { .name = "ecdsa_brainpoolp320r1_sha384_1087", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1087_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1087_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1087_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 177 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1088 for ECDSA, tcId is 178 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1088_pubkey[] = { 0x46, 0x24, 0x3b, 0x39, 0xe7, 0x76, 0x39, 0xac, 0x19, 0xe9, 0xbe, 0x53, 0x66, 0x93, 0x17, 0xd9, 0x59, 0x8e, 0x03, 0xec, 0x30, 0xa0, 0xcf, 0x69, 0x30, 0xf8, 0x00, 0x00, 0x98, 0x33, 0x82, 0x6a, 0x59, 0xad, 0xe5, 0x32, 0x19, 0x33, 0xff, 0x2f, 0x69, 0xd7, 0x70, 0xb9, 0x78, 0xcc, 0xc3, 0x6c, 0x90, 0xb7, 0x48, 0xe5, 0x01, 0x06, 0x36, 0xe7, 0x00, 0x4d, 0xdc, 0x19, 0x88, 0x5d, 0xa7, 0xbb, 0x90, 0xdb, 0xfa, 0xd4, 0x79, 0xfc, 0x52, 0xdc, 0xe4, 0xb9, 0x28, 0x14, 0x05, 0xf1, 0xc6, 0xbd, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1088_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0x75, 0x3a, 0xc9, 0x0f, 0xbc, 0x7e, 0xdf, 0xdc, 0xb3, 0x2e, 0x16, 0x97, 0xfd, 0xfd, 0x41, 0xb1, 0xfb, 0x59, 0xc5, 0xad, 0x17, 0x7e, 0x96, 0xfe, 0xac, 0xc8, 0x75, 0x22, 0xef, 0x92, 0x8d, 0xe8, 0x0a, 0x60, 0xbb, 0x0f, 0x32, 0xe7, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1088 = { .name = "ecdsa_brainpoolp320r1_sha384_1088", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1088_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1088_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1088_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 178 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1089 for ECDSA, tcId is 179 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1089_pubkey[] = { 0xb4, 0xb9, 0xb6, 0xba, 0x3c, 0x0e, 0x75, 0x09, 0xc2, 0x75, 0x89, 0x4e, 0x84, 0xe8, 0x18, 0xd7, 0x1d, 0xe1, 0x45, 0x77, 0xbd, 0xb4, 0xbf, 0x0b, 0x8e, 0x5e, 0x13, 0x32, 0xd1, 0x08, 0x7f, 0x3c, 0x33, 0x3b, 0x73, 0xe8, 0xab, 0x75, 0xf2, 0xc9, 0x4f, 0x33, 0xd0, 0xe2, 0xab, 0x34, 0x2d, 0x2e, 0x19, 0x68, 0xce, 0x3e, 0x1c, 0x47, 0xbe, 0x87, 0xe3, 0x9e, 0xe8, 0x82, 0x73, 0xae, 0x4c, 0xf7, 0x77, 0x86, 0x9d, 0x3a, 0x17, 0x03, 0xb6, 0x3a, 0x98, 0x3d, 0x2d, 0x43, 0xc5, 0x93, 0x03, 0xe5, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1089_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x26, 0xea, 0x75, 0x92, 0x1f, 0x78, 0xfd, 0xbf, 0xb9, 0x66, 0x5c, 0x2d, 0x2f, 0xfb, 0xfa, 0x83, 0x63, 0xf6, 0xb3, 0x8b, 0x5a, 0x2e, 0xfd, 0x2d, 0xfd, 0x59, 0x90, 0xea, 0x45, 0xdf, 0x25, 0x1b, 0xd0, 0x14, 0xc1, 0x76, 0x1e, 0x65, 0xcf, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1089 = { .name = "ecdsa_brainpoolp320r1_sha384_1089", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1089_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1089_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1089_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 179 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1090 for ECDSA, tcId is 180 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1090_pubkey[] = { 0x03, 0x01, 0x5b, 0x3c, 0xa6, 0x76, 0x83, 0x46, 0x7c, 0x79, 0x44, 0x6d, 0x4b, 0x93, 0xd1, 0x09, 0x78, 0x33, 0x08, 0x56, 0xee, 0xe4, 0x0d, 0x6d, 0x58, 0x68, 0x3a, 0xc7, 0x35, 0x00, 0xae, 0x31, 0x5c, 0x5b, 0x58, 0x23, 0x51, 0xc4, 0x22, 0x6b, 0x18, 0xd8, 0x95, 0x61, 0xd3, 0xff, 0xa0, 0xf9, 0x31, 0x1a, 0xa6, 0x16, 0x54, 0x7f, 0x7e, 0xb1, 0xd3, 0x6e, 0x73, 0xa6, 0xcc, 0x4b, 0xd2, 0x30, 0xdf, 0x34, 0xa1, 0xf3, 0x19, 0xbe, 0x66, 0xbc, 0xb2, 0xfb, 0x0e, 0x1f, 0x68, 0xcc, 0x19, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1090_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9f, 0xee, 0x19, 0x29, 0x30, 0xd3, 0x05, 0x02, 0xc0, 0x5e, 0x56, 0xad, 0xf0, 0x86, 0xec, 0xd1, 0x3a, 0x92, 0xcd, 0x43, 0xce, 0x0c, 0x72, 0xea, 0x65, 0xea, 0xd4, 0x36, 0x67, 0x89, 0x0a, 0xe1, 0x9b, 0xe8, 0x35, 0x33, 0x3c, 0x32, 0xc5, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1090 = { .name = "ecdsa_brainpoolp320r1_sha384_1090", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1090_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1090_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1090_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 180 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1091 for ECDSA, tcId is 181 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1091_pubkey[] = { 0x18, 0x7d, 0x93, 0xf8, 0x4a, 0x0e, 0x60, 0x43, 0xf0, 0x97, 0xd0, 0xa8, 0x7f, 0x8d, 0xca, 0x07, 0x73, 0x9c, 0xf4, 0x45, 0x48, 0xa7, 0xd3, 0x40, 0x3e, 0x03, 0x9e, 0x49, 0xc4, 0xc5, 0x12, 0x85, 0x48, 0x29, 0x75, 0xaf, 0x54, 0xec, 0x05, 0x6c, 0x06, 0x23, 0xc5, 0x75, 0x38, 0xfe, 0xfb, 0x72, 0x31, 0xd6, 0x19, 0xbb, 0xef, 0xd4, 0xca, 0xb3, 0x73, 0xa5, 0x4b, 0x36, 0x13, 0x54, 0xe5, 0x86, 0xb1, 0xd9, 0x98, 0x1a, 0x88, 0x35, 0xe9, 0xc6, 0xbe, 0xab, 0x08, 0x2c, 0xb9, 0x3e, 0x13, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1091_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x96, 0x3f, 0x97, 0xcb, 0x35, 0xa3, 0x21, 0xdf, 0x62, 0xfc, 0x21, 0x9e, 0xb2, 0xf3, 0x70, 0x39, 0x49, 0xc4, 0x83, 0x16, 0x5d, 0x06, 0xdb, 0x13, 0xc4, 0x03, 0x08, 0x0a, 0x86, 0xc1, 0xe5, 0xd9, 0xb4, 0x3d, 0x2e, 0x8d, 0xd9, 0x64, 0x3c, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1091 = { .name = "ecdsa_brainpoolp320r1_sha384_1091", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1091_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1091_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1091_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 181 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1092 for ECDSA, tcId is 182 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1092_pubkey[] = { 0x08, 0x55, 0xcc, 0x20, 0x35, 0x11, 0x26, 0xb3, 0x8f, 0x93, 0x4f, 0xbb, 0x56, 0xc3, 0x02, 0xf6, 0x2a, 0x36, 0x0e, 0x62, 0x49, 0x3c, 0x2d, 0x52, 0x9f, 0xb8, 0x7c, 0xae, 0xa0, 0xd7, 0x1b, 0xfd, 0xaf, 0x5f, 0xcc, 0x33, 0x68, 0xd4, 0x95, 0xfd, 0x1c, 0xe7, 0x57, 0x86, 0x10, 0xcb, 0xec, 0x46, 0x53, 0x98, 0xb2, 0xc1, 0x23, 0x8b, 0x3e, 0x23, 0xb9, 0xe2, 0x9b, 0x47, 0x61, 0x96, 0x10, 0x64, 0x30, 0xd7, 0x63, 0x16, 0xaa, 0xf2, 0x99, 0x37, 0xac, 0xe6, 0x58, 0xb6, 0x9c, 0x8b, 0xfb, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1092_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0xdb, 0xff, 0x9e, 0x66, 0x7e, 0x7b, 0xcd, 0x44, 0x95, 0x02, 0x26, 0xf9, 0x3b, 0x09, 0x73, 0x8e, 0x79, 0x35, 0x17, 0xc0, 0x28, 0x86, 0xae, 0x9f, 0x2b, 0x3d, 0xed, 0xed, 0xa7, 0x56, 0xc9, 0x04, 0x9a, 0xb9, 0xa4, 0x6b, 0xc7, 0xc9, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1092 = { .name = "ecdsa_brainpoolp320r1_sha384_1092", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1092_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1092_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1092_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 182 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1093 for ECDSA, tcId is 183 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1093_pubkey[] = { 0x94, 0xc5, 0x49, 0x19, 0x00, 0x40, 0x79, 0xbe, 0x0d, 0xb4, 0xc9, 0x2d, 0xc1, 0xfc, 0x94, 0x7d, 0x79, 0xeb, 0x0f, 0x8e, 0x86, 0x9d, 0x94, 0x81, 0x38, 0x86, 0xad, 0xa4, 0x25, 0x4f, 0x1d, 0xad, 0xb4, 0xd8, 0x7a, 0x61, 0x12, 0xa5, 0x83, 0x36, 0x86, 0xd8, 0xb5, 0xbe, 0xac, 0x00, 0xfa, 0xfd, 0x64, 0x7e, 0xf8, 0xb6, 0x31, 0xe8, 0x99, 0xa6, 0xa8, 0xb7, 0x2a, 0x51, 0x1d, 0x4f, 0x50, 0xce, 0x15, 0x66, 0x48, 0xad, 0x9c, 0xb7, 0x08, 0xfb, 0x2f, 0xb2, 0xc6, 0x38, 0xfd, 0xb9, 0xf3, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1093_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x85, 0x24, 0x66, 0xce, 0xf3, 0x16, 0x99, 0x2b, 0x3c, 0xa2, 0x5c, 0xc5, 0x4b, 0x7f, 0x4f, 0xda, 0x2e, 0x8a, 0x81, 0x9e, 0x7c, 0x4b, 0x04, 0x05, 0x43, 0xe9, 0x4f, 0x9c, 0xac, 0xa0, 0x29, 0x37, 0x68, 0x1c, 0x20, 0x19, 0xbb, 0x49, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1093 = { .name = "ecdsa_brainpoolp320r1_sha384_1093", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1093_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1093_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1093_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 183 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1094 for ECDSA, tcId is 184 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1094_pubkey[] = { 0x2b, 0xca, 0x76, 0x04, 0x37, 0x28, 0xb5, 0xee, 0xef, 0xde, 0x89, 0xd2, 0x5a, 0xcd, 0xf2, 0xe0, 0xb1, 0x60, 0xc5, 0xae, 0x0c, 0xcd, 0xab, 0x6b, 0xd3, 0xba, 0xa4, 0x79, 0xf1, 0x77, 0x53, 0xc3, 0xc0, 0x00, 0xcc, 0xf8, 0xba, 0x86, 0x23, 0xde, 0x92, 0xf0, 0xc2, 0xd6, 0x8a, 0x1b, 0xd4, 0x05, 0xe4, 0x49, 0x82, 0x3f, 0xe6, 0x3b, 0x21, 0x40, 0x2a, 0xef, 0x3e, 0x9a, 0x01, 0x7d, 0xcb, 0xc3, 0x0a, 0xf1, 0x8b, 0xcc, 0x79, 0xa8, 0x52, 0x64, 0x83, 0x43, 0x98, 0xc7, 0x2f, 0xa2, 0xbb, 0x16, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1094_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x4b, 0xfe, 0x18, 0x00, 0x78, 0x6b, 0x02, 0x56, 0xe9, 0x0a, 0xc2, 0xde, 0x27, 0x2f, 0x41, 0xc8, 0x5e, 0x09, 0x76, 0xc0, 0xca, 0xa1, 0x69, 0x1b, 0xd8, 0x35, 0xa5, 0xa4, 0x44, 0xb1, 0xed, 0x17, 0x05, 0xa0, 0x36, 0x1a, 0xe6, 0xee, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1094 = { .name = "ecdsa_brainpoolp320r1_sha384_1094", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1094_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1094_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1094_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 184 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1095 for ECDSA, tcId is 185 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1095_pubkey[] = { 0x1c, 0x01, 0x3b, 0x3a, 0x32, 0x60, 0xcc, 0xfb, 0x53, 0xe3, 0xf6, 0xce, 0x93, 0xe6, 0x98, 0x48, 0x65, 0xdc, 0x8e, 0x12, 0x93, 0xe9, 0x23, 0x01, 0xf4, 0xcb, 0x3a, 0x55, 0x4b, 0xd5, 0xda, 0x8a, 0x53, 0xee, 0x10, 0x1b, 0x3e, 0x1a, 0x30, 0x09, 0x97, 0xd2, 0x90, 0x1e, 0x26, 0x72, 0x93, 0x03, 0xe1, 0xcb, 0x93, 0xa8, 0xb7, 0x2d, 0xc2, 0xaf, 0xc9, 0x0f, 0xf5, 0xb4, 0x4f, 0xd5, 0xb6, 0x62, 0x44, 0x55, 0x48, 0x79, 0x74, 0xed, 0x71, 0xc7, 0x83, 0x3e, 0xff, 0x03, 0xcc, 0x12, 0x8d, 0x0c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1095_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc6, 0x97, 0xfc, 0x30, 0x00, 0xf0, 0xd6, 0x04, 0xad, 0xd2, 0x15, 0x85, 0xbc, 0x4e, 0x5e, 0x83, 0x90, 0xbc, 0x12, 0xed, 0x81, 0x95, 0x42, 0xd2, 0x37, 0xb0, 0x6b, 0x4b, 0x48, 0x89, 0x63, 0xda, 0x2e, 0x0b, 0x40, 0x6c, 0x35, 0xcd, 0xdc, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1095 = { .name = "ecdsa_brainpoolp320r1_sha384_1095", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1095_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1095_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1095_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 185 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1096 for ECDSA, tcId is 186 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1096_pubkey[] = { 0x62, 0x4b, 0xec, 0x45, 0x20, 0xe6, 0x04, 0x4a, 0xbe, 0xd1, 0xee, 0xe4, 0x96, 0x46, 0x68, 0x77, 0x51, 0x81, 0x46, 0x4c, 0x5d, 0x6b, 0xf5, 0xa8, 0xb5, 0x39, 0xf1, 0x15, 0x6f, 0x32, 0x48, 0xc0, 0x22, 0x71, 0xbf, 0x94, 0x25, 0xb9, 0x66, 0xb5, 0x47, 0xf4, 0x06, 0xbc, 0xc1, 0x43, 0x22, 0x6d, 0x81, 0x4c, 0xdb, 0x98, 0x8d, 0x76, 0x41, 0x2a, 0xd1, 0x86, 0xbd, 0xee, 0xb8, 0x69, 0xad, 0x78, 0xa3, 0x2f, 0xe8, 0x7c, 0x76, 0xf2, 0x54, 0x54, 0x47, 0xdd, 0xf8, 0xfb, 0xd0, 0x43, 0x08, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1096_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x85, 0xb3, 0x27, 0xca, 0xac, 0xf1, 0x4f, 0x23, 0x7e, 0xa7, 0xe9, 0xc8, 0x73, 0xad, 0x5f, 0x5f, 0x8a, 0x4c, 0xbe, 0x8b, 0xd0, 0xd1, 0x98, 0x26, 0x40, 0x72, 0x28, 0xfe, 0x47, 0xbc, 0xdd, 0xbe, 0x7f, 0x8b, 0x47, 0x0b, 0xef, 0x37, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1096 = { .name = "ecdsa_brainpoolp320r1_sha384_1096", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1096_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1096_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1096_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 186 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1097 for ECDSA, tcId is 187 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1097_pubkey[] = { 0x1b, 0x2b, 0x27, 0x38, 0xe3, 0x05, 0x5d, 0x15, 0x96, 0xf6, 0x41, 0x76, 0xcf, 0x0a, 0xc3, 0x81, 0xb3, 0xa8, 0x17, 0x8a, 0x2f, 0x02, 0x14, 0x03, 0x35, 0x02, 0x18, 0xfa, 0x18, 0xf9, 0xf8, 0x60, 0xc1, 0xbb, 0xa3, 0x9f, 0xc5, 0x24, 0xbc, 0x82, 0x09, 0xfb, 0xaf, 0xca, 0x1a, 0xfc, 0x5a, 0xf7, 0x59, 0x8b, 0x87, 0x8d, 0x69, 0xcb, 0x87, 0x5b, 0xe0, 0xd3, 0x9f, 0x41, 0xff, 0x01, 0xb0, 0x93, 0x88, 0x69, 0x3e, 0xb3, 0x10, 0xad, 0xc9, 0xd4, 0x83, 0x6e, 0x22, 0x6c, 0x23, 0x67, 0x7e, 0x51, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1097_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa2, 0xc1, 0xf8, 0x40, 0x88, 0x12, 0x0f, 0xce, 0x85, 0xfe, 0xcf, 0x81, 0xf0, 0xec, 0xc0, 0x07, 0x29, 0xf4, 0x19, 0x9e, 0xbb, 0xa0, 0xd5, 0xb5, 0xed, 0xa1, 0x90, 0x00, 0x10, 0x00, 0xb4, 0x31, 0x68, 0xdb, 0x25, 0x4b, 0x8e, 0xf3, 0x2a, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1097 = { .name = "ecdsa_brainpoolp320r1_sha384_1097", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1097_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1097_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1097_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 187 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1098 for ECDSA, tcId is 188 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1098_pubkey[] = { 0x40, 0x90, 0x2b, 0xf6, 0xb2, 0x39, 0xd2, 0xf3, 0x58, 0x82, 0x60, 0xe9, 0xd7, 0xf5, 0x12, 0x25, 0x3f, 0xa4, 0x4f, 0x30, 0x8a, 0x0a, 0xb8, 0x1d, 0xff, 0x05, 0xb8, 0xfa, 0x2e, 0x25, 0x81, 0x4d, 0x65, 0xc2, 0x01, 0x8d, 0x49, 0x39, 0x0a, 0xae, 0x01, 0x6f, 0x8a, 0xe5, 0x69, 0x19, 0x38, 0x40, 0x2a, 0xdc, 0x0f, 0xfa, 0x29, 0xbb, 0x87, 0xef, 0x0a, 0xf0, 0xec, 0xf3, 0xcd, 0x44, 0x6d, 0x97, 0xc3, 0xe8, 0xd1, 0x2b, 0x3b, 0x09, 0xeb, 0x78, 0x90, 0x9c, 0x1b, 0x91, 0xb1, 0xb8, 0x78, 0x5f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1098_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x71, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1098 = { .name = "ecdsa_brainpoolp320r1_sha384_1098", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1098_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1098_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1098_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 188 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1099 for ECDSA, tcId is 189 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1099_pubkey[] = { 0x72, 0x65, 0x33, 0xe2, 0x67, 0x73, 0xac, 0x72, 0x0a, 0x11, 0x5b, 0x02, 0xde, 0x89, 0xac, 0x15, 0x96, 0x66, 0x77, 0xe2, 0x39, 0xb7, 0xc5, 0x77, 0xa1, 0xc1, 0x5b, 0x81, 0x02, 0x7b, 0x1f, 0xeb, 0x73, 0xe6, 0x73, 0x60, 0x1e, 0x21, 0x1a, 0xa9, 0x2a, 0xcc, 0xb5, 0x85, 0xbc, 0x06, 0xcc, 0x27, 0x4b, 0x61, 0xc9, 0xe6, 0x14, 0x74, 0x6e, 0xdd, 0x24, 0x8d, 0x1c, 0xcc, 0xf8, 0xd8, 0xb1, 0xab, 0x4b, 0xc1, 0x5c, 0xc5, 0x8c, 0xdf, 0x11, 0x60, 0x65, 0xce, 0x97, 0x67, 0xf2, 0xa3, 0x22, 0x3d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1099_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x02, 0xa6, 0xeb, 0x40, 0x84, 0x43, 0xd2, 0x4e, 0x96, 0xbe, 0x4c, 0xa0, 0x27, 0x84, 0x42, 0xa8, 0xa4, 0x26, 0x08, 0x7f, 0x9b, 0xeb, 0x03, 0xff, 0xe5, 0x52, 0x61, 0x62, 0xbf, 0x1d, 0xc3, 0x04, 0x34, 0xcf, 0x7e, 0xa7, 0x95, 0x74, 0xb1, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1099 = { .name = "ecdsa_brainpoolp320r1_sha384_1099", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1099_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1099_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1099_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 189 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1100 for ECDSA, tcId is 190 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1100_pubkey[] = { 0x53, 0xc3, 0xda, 0x4d, 0xe1, 0x4f, 0x7d, 0x35, 0x77, 0x5f, 0x9b, 0xec, 0xa6, 0xd5, 0x3e, 0xe7, 0x8d, 0xac, 0x73, 0xcd, 0x3f, 0x18, 0xc6, 0xfb, 0xf7, 0x09, 0xb4, 0xff, 0xa7, 0xdd, 0x3e, 0x70, 0xb4, 0x36, 0x40, 0x9b, 0x9b, 0x28, 0x5d, 0x1c, 0x2a, 0x5b, 0x60, 0xe4, 0x57, 0xe5, 0x84, 0x22, 0xc9, 0x59, 0x14, 0x2b, 0x5e, 0xcf, 0xf2, 0x36, 0xdf, 0xd7, 0x6c, 0x99, 0xc3, 0x01, 0x8c, 0xea, 0x90, 0x40, 0x58, 0x09, 0x9a, 0x13, 0x64, 0x7d, 0xb0, 0x88, 0x98, 0xcf, 0xd0, 0x50, 0x9e, 0x84, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1100_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb6, 0xba, 0x1a, 0xec, 0xd2, 0x40, 0xde, 0xbe, 0x77, 0x21, 0x3a, 0x42, 0x28, 0xb1, 0x25, 0x60, 0x36, 0x71, 0xc9, 0xd5, 0x14, 0x7b, 0x6c, 0x0b, 0x36, 0xdd, 0x23, 0xe4, 0x2b, 0x7c, 0xb5, 0x07, 0x8a, 0x1b, 0x8f, 0xdf, 0x1b, 0x98, 0xb9, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1100 = { .name = "ecdsa_brainpoolp320r1_sha384_1100", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1100_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1100_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1100_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 190 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1101 for ECDSA, tcId is 191 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1101_pubkey[] = { 0xcd, 0x24, 0xae, 0x7f, 0x75, 0x23, 0xad, 0xf8, 0x59, 0xdb, 0x92, 0xe5, 0x1d, 0x48, 0x74, 0x6b, 0x8b, 0x2f, 0x86, 0x86, 0x20, 0x89, 0x8a, 0x9c, 0x42, 0xf8, 0xba, 0xe8, 0x17, 0x3e, 0x36, 0x46, 0xf5, 0x86, 0xfd, 0x81, 0x87, 0x12, 0x43, 0x0e, 0x55, 0xb1, 0x2d, 0x59, 0xf7, 0x34, 0x41, 0x68, 0xf7, 0x96, 0xfe, 0x59, 0xc0, 0x26, 0xea, 0xaa, 0x13, 0x97, 0x45, 0xa8, 0xac, 0xe9, 0x7d, 0xf1, 0xd5, 0xc6, 0xbc, 0xc2, 0x1f, 0x0c, 0xfa, 0x68, 0x60, 0xf9, 0xc8, 0xc7, 0x5f, 0x39, 0x16, 0x29, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1101_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x7b, 0x38, 0x3b, 0xa1, 0xce, 0xbf, 0x5c, 0xa5, 0x79, 0xef, 0x6e, 0xd1, 0x00, 0x27, 0x98, 0x8f, 0x84, 0x24, 0xf4, 0x2f, 0xfb, 0xea, 0x2e, 0x51, 0xb3, 0x34, 0x0d, 0xf9, 0xf8, 0xc3, 0xc6, 0x0b, 0x55, 0x8d, 0x6d, 0xc2, 0xdf, 0x10, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1101 = { .name = "ecdsa_brainpoolp320r1_sha384_1101", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1101_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1101_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1101_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 191 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1102 for ECDSA, tcId is 192 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1102_pubkey[] = { 0x4d, 0xb4, 0x60, 0x20, 0x99, 0x72, 0xc8, 0xe9, 0xc3, 0x65, 0x11, 0x95, 0x46, 0xac, 0x45, 0x7a, 0xdd, 0x15, 0x7f, 0x0c, 0x4d, 0x2b, 0x3c, 0xd6, 0x5c, 0x63, 0x5d, 0xca, 0xec, 0xa6, 0x17, 0x02, 0x9c, 0xab, 0xf7, 0x5c, 0x06, 0x10, 0x1b, 0xb6, 0x9e, 0xf8, 0xb7, 0x62, 0x6e, 0x6b, 0x2f, 0x98, 0x45, 0xb0, 0x08, 0x6d, 0x2a, 0x96, 0x40, 0x18, 0xb9, 0xb2, 0x5e, 0xb8, 0xdb, 0x42, 0x6b, 0xc9, 0x06, 0x94, 0xcc, 0x61, 0x4b, 0x76, 0x02, 0xb1, 0xfd, 0x60, 0x87, 0xa9, 0xa7, 0x1c, 0xbf, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1102_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x98, 0xff, 0x1d, 0xb1, 0xb9, 0xaf, 0xfa, 0x33, 0xa2, 0xe5, 0x3c, 0x68, 0x4d, 0x3f, 0x07, 0x61, 0x17, 0x72, 0x40, 0x5e, 0x8c, 0x20, 0x0f, 0x2a, 0xf2, 0xaf, 0xa9, 0xe5, 0x3c, 0x6e, 0x8e, 0xf3, 0x0c, 0xc1, 0x43, 0xb3, 0xf5, 0xff, 0x7f, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1102 = { .name = "ecdsa_brainpoolp320r1_sha384_1102", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1102_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1102_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1102_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 192 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1103 for ECDSA, tcId is 193 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1103_pubkey[] = { 0x3e, 0x7a, 0xb8, 0x50, 0x84, 0x0d, 0x75, 0x98, 0x7d, 0x33, 0x83, 0x7e, 0xad, 0x46, 0x49, 0x9c, 0xe4, 0x33, 0xf3, 0xfc, 0xe6, 0x73, 0x83, 0xb2, 0xe3, 0x25, 0xdd, 0x2f, 0xc7, 0xe0, 0xf5, 0x00, 0x76, 0x9c, 0xbb, 0x67, 0xb4, 0x55, 0x0a, 0x28, 0xc3, 0x03, 0x14, 0x48, 0x7a, 0x87, 0x09, 0x47, 0x50, 0x33, 0x44, 0x99, 0xdb, 0xfb, 0xeb, 0x2d, 0x5c, 0xb9, 0x76, 0xee, 0x2d, 0x47, 0x99, 0x73, 0x21, 0x59, 0x7a, 0x41, 0x12, 0x4a, 0x03, 0x8f, 0xe8, 0x67, 0xbe, 0x0e, 0xf6, 0x68, 0xc4, 0xce, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1103_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x9f, 0xf4, 0x43, 0x3c, 0xa3, 0xa4, 0xaf, 0x64, 0x8e, 0x00, 0x71, 0xc8, 0x7c, 0x2e, 0x5c, 0x35, 0x54, 0xb1, 0x17, 0x61, 0xb1, 0x0b, 0xb2, 0xb8, 0x17, 0x25, 0x02, 0x8a, 0x56, 0xc4, 0xfc, 0x92, 0xf1, 0x32, 0x0c, 0xa7, 0x39, 0x6c, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1103 = { .name = "ecdsa_brainpoolp320r1_sha384_1103", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1103_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1103_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1103_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 193 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1104 for ECDSA, tcId is 194 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1104_pubkey[] = { 0x7a, 0xcc, 0x91, 0x99, 0x34, 0xb0, 0xfd, 0x90, 0x01, 0x1c, 0xd9, 0x6f, 0x59, 0xdd, 0xba, 0x52, 0xe1, 0x20, 0x94, 0xda, 0xc1, 0x8a, 0x2c, 0xad, 0xcb, 0x03, 0xa0, 0xf3, 0x1a, 0xc7, 0x2d, 0x3f, 0xd5, 0x98, 0x4a, 0x11, 0xe9, 0x22, 0x0f, 0x8c, 0x06, 0x29, 0xbc, 0x5f, 0x3f, 0x0d, 0xab, 0xbd, 0x3f, 0xdd, 0x30, 0xf4, 0x7a, 0x0a, 0x5b, 0xea, 0x30, 0x52, 0x89, 0x2f, 0x8e, 0x50, 0xa4, 0x03, 0x3b, 0xe4, 0x79, 0x5b, 0x32, 0xc6, 0x67, 0x1d, 0x14, 0x1b, 0x47, 0x30, 0x80, 0xe5, 0x79, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1104_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc7, 0x6c, 0xe5, 0x35, 0x60, 0x16, 0x3f, 0x15, 0x7b, 0x11, 0xe4, 0xd0, 0x5c, 0x61, 0x54, 0x0a, 0x5d, 0xf6, 0xb8, 0x24, 0x1c, 0xbd, 0x3b, 0xa7, 0xd9, 0x11, 0xa7, 0x54, 0x1e, 0xec, 0x55, 0xe9, 0x86, 0xeb, 0xf8, 0x11, 0xae, 0x50, 0xa8, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1104 = { .name = "ecdsa_brainpoolp320r1_sha384_1104", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1104_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1104_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1104_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 194 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1105 for ECDSA, tcId is 195 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1105_pubkey[] = { 0x12, 0xc1, 0x63, 0xfe, 0x25, 0xcb, 0x79, 0xad, 0x59, 0xc7, 0x6b, 0x52, 0x80, 0xdc, 0x67, 0x06, 0xa4, 0x2c, 0x58, 0x59, 0x62, 0x30, 0xbf, 0x7b, 0xa7, 0x20, 0x6e, 0x6c, 0xe2, 0xb4, 0x67, 0xe1, 0xb7, 0xa7, 0x06, 0x3e, 0x59, 0xb0, 0xbe, 0xd6, 0xcc, 0xbe, 0xaf, 0x22, 0xac, 0xcb, 0x1a, 0xc4, 0x1e, 0xd4, 0x3a, 0xc7, 0x75, 0xb9, 0x7a, 0xea, 0x3a, 0x68, 0x8e, 0x2f, 0x09, 0x6c, 0x3a, 0x5e, 0x59, 0xf8, 0x68, 0xbc, 0x91, 0x9d, 0xa5, 0xce, 0x25, 0x2c, 0xf5, 0xd7, 0x12, 0xe7, 0xde, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1105_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x42, 0x18, 0xa4, 0x51, 0x16, 0xea, 0x65, 0xb2, 0x83, 0xcc, 0x7d, 0x90, 0xa5, 0x10, 0xf0, 0x77, 0xb1, 0xb0, 0x9e, 0xdd, 0xbc, 0xfc, 0xa3, 0xe7, 0xd2, 0x89, 0x6b, 0x86, 0x9d, 0xd3, 0xba, 0x55, 0x6c, 0x4f, 0x10, 0x59, 0x0b, 0x0e, 0x08, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1105 = { .name = "ecdsa_brainpoolp320r1_sha384_1105", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1105_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1105_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1105_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 195 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1106 for ECDSA, tcId is 196 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1106_pubkey[] = { 0x69, 0x60, 0xbf, 0xcd, 0xdd, 0x00, 0x21, 0xfc, 0xb8, 0xa3, 0xd7, 0xaa, 0x85, 0xf9, 0x6c, 0xf3, 0x60, 0xa7, 0x11, 0x3e, 0x38, 0x24, 0x50, 0x85, 0x25, 0x02, 0x1f, 0x83, 0xe3, 0x08, 0x59, 0x89, 0xc3, 0x5e, 0x0c, 0x57, 0x72, 0x65, 0x03, 0x30, 0x5c, 0x12, 0x75, 0xb9, 0xd8, 0xb5, 0x19, 0x9d, 0x46, 0x1f, 0xcb, 0x9d, 0x34, 0xf8, 0x85, 0x7b, 0x65, 0xa1, 0x40, 0x46, 0x2f, 0xd5, 0xcd, 0xc7, 0xa3, 0x3e, 0x5c, 0xf7, 0xf4, 0xe2, 0xd0, 0x8a, 0x5a, 0x34, 0xd9, 0xae, 0x00, 0xb2, 0x93, 0x9a, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1106_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x5f, 0x32, 0x42, 0x3b, 0xad, 0x36, 0x44, 0xbe, 0x71, 0x8d, 0x81, 0x95, 0x34, 0x13, 0x62, 0xc9, 0xcb, 0xa5, 0x2b, 0x33, 0x0f, 0x91, 0x3b, 0x15, 0x21, 0xaf, 0x6e, 0x5e, 0x3e, 0xb2, 0x06, 0x94, 0x21, 0xb0, 0x5d, 0xca, 0xc2, 0x99, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1106 = { .name = "ecdsa_brainpoolp320r1_sha384_1106", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1106_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1106_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1106_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 196 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1107 for ECDSA, tcId is 197 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1107_pubkey[] = { 0x66, 0xad, 0x2c, 0x26, 0x01, 0x23, 0x88, 0xc8, 0xb9, 0x04, 0x6a, 0x46, 0x6b, 0x87, 0xbd, 0x71, 0xb6, 0x4a, 0xb8, 0x1b, 0x54, 0xcf, 0xfc, 0x5a, 0x61, 0x1f, 0x4b, 0x75, 0x81, 0xad, 0x83, 0x65, 0xed, 0xd0, 0x8e, 0x6a, 0xfd, 0x4a, 0x52, 0xf6, 0x1a, 0x30, 0x66, 0xc0, 0xb3, 0xb7, 0x03, 0xdd, 0xce, 0x74, 0x62, 0x39, 0xa4, 0xd3, 0xdb, 0xf1, 0x93, 0x89, 0x45, 0xf1, 0x5e, 0xa9, 0x49, 0x7b, 0xbf, 0xc4, 0x5b, 0x38, 0x9e, 0x13, 0x03, 0x50, 0xb9, 0x94, 0x59, 0x22, 0xb8, 0x7c, 0xe3, 0x74, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1107_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xac, 0x07, 0xaa, 0xad, 0xe5, 0xc5, 0xfb, 0x2f, 0xe5, 0xa1, 0x8b, 0xbe, 0xfd, 0x26, 0x2e, 0x0e, 0x43, 0x9f, 0xd6, 0x8e, 0x0a, 0x31, 0x7d, 0xb0, 0x6f, 0xf4, 0xba, 0x62, 0x3a, 0x2a, 0x03, 0x11, 0x4e, 0xc5, 0xb6, 0xe0, 0x84, 0x17, 0x10, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1107 = { .name = "ecdsa_brainpoolp320r1_sha384_1107", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1107_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1107_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1107_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 197 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1108 for ECDSA, tcId is 198 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1108_pubkey[] = { 0x0c, 0xfa, 0x6e, 0x38, 0x38, 0xd8, 0x11, 0x3a, 0x24, 0xd8, 0x7d, 0xb9, 0x74, 0x17, 0xd6, 0x8f, 0x00, 0xc4, 0x26, 0xe9, 0xb8, 0x55, 0x0d, 0x8a, 0x95, 0x1f, 0xed, 0x53, 0x15, 0x72, 0xe7, 0xcc, 0xa6, 0x6f, 0xfe, 0x0a, 0xe1, 0x76, 0xff, 0x0e, 0x31, 0x2f, 0xa0, 0x2e, 0x5c, 0xc7, 0x7c, 0x21, 0xf4, 0xa6, 0x63, 0x0e, 0x25, 0xbc, 0xb9, 0x87, 0xdc, 0x1e, 0xef, 0x14, 0xae, 0xc8, 0x0c, 0x15, 0xb9, 0xb2, 0x92, 0xe3, 0xac, 0xfb, 0x30, 0xbc, 0x2c, 0x04, 0x38, 0xf0, 0xa9, 0x83, 0x1c, 0x07, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1108_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x31, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1108 = { .name = "ecdsa_brainpoolp320r1_sha384_1108", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1108_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1108_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1108_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 198 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1109 for ECDSA, tcId is 199 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1109_pubkey[] = { 0x3d, 0xab, 0xbc, 0x36, 0xa4, 0x55, 0xba, 0x07, 0x43, 0x2d, 0xa1, 0xaa, 0x72, 0x39, 0xae, 0xfd, 0xef, 0xb7, 0x2a, 0xc0, 0x93, 0x13, 0xc3, 0xa7, 0xf3, 0x43, 0x98, 0x50, 0xf6, 0x02, 0x54, 0x3e, 0xb4, 0xaf, 0xfc, 0x5d, 0x82, 0x25, 0xb5, 0xee, 0xce, 0x48, 0xe2, 0xf6, 0x7e, 0x82, 0xd4, 0x48, 0xb3, 0xd8, 0xb9, 0xb0, 0xfc, 0x20, 0x08, 0x32, 0xa3, 0xd1, 0xac, 0x88, 0x05, 0x88, 0x72, 0x76, 0x2f, 0xcb, 0xf0, 0x27, 0xe9, 0xf5, 0x70, 0x5d, 0x8f, 0x58, 0x12, 0xe5, 0x07, 0xda, 0xe1, 0x25, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1109_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x62, 0x3e, 0xda, 0x15, 0x79, 0xd2, 0xdf, 0xcf, 0xeb, 0x7d, 0xa5, 0x94, 0x8c, 0x01, 0x40, 0x43, 0xfb, 0xb5, 0x35, 0x19, 0x24, 0x5f, 0x61, 0xc2, 0x1e, 0x30, 0x1f, 0x2f, 0xf4, 0x59, 0x90, 0x9b, 0xaf, 0x0b, 0x8e, 0x3c, 0xd8, 0x83, 0xb7, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1109 = { .name = "ecdsa_brainpoolp320r1_sha384_1109", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1109_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1109_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1109_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 199 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1110 for ECDSA, tcId is 200 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1110_pubkey[] = { 0x8a, 0x96, 0x58, 0xdc, 0x5f, 0x91, 0xaa, 0x57, 0x77, 0x06, 0xf1, 0xd9, 0x1d, 0x22, 0x52, 0xcb, 0x0d, 0x09, 0xf2, 0x05, 0x3e, 0x56, 0x11, 0x29, 0x10, 0x5c, 0x7f, 0x37, 0xdd, 0xb2, 0xf9, 0x72, 0xb3, 0x22, 0x4f, 0x12, 0xcf, 0x9e, 0x43, 0xfe, 0x08, 0x78, 0x2e, 0xc6, 0x10, 0x5f, 0x4c, 0x06, 0x58, 0x7e, 0xb1, 0xec, 0xec, 0xb2, 0xf4, 0xf4, 0xa0, 0x4e, 0x23, 0x63, 0x04, 0xdc, 0x75, 0xeb, 0x2e, 0xff, 0xf0, 0xbe, 0x66, 0xb9, 0x77, 0xfa, 0x80, 0x4a, 0xf7, 0x3b, 0xfc, 0xba, 0xc7, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1110_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x93, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1110 = { .name = "ecdsa_brainpoolp320r1_sha384_1110", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1110_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1110_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1110_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 200 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1111 for ECDSA, tcId is 201 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1111_pubkey[] = { 0x06, 0xb4, 0x3b, 0xb9, 0x58, 0x7e, 0xe1, 0x58, 0xad, 0x57, 0x52, 0xd1, 0xad, 0x11, 0xf6, 0xf0, 0xf5, 0xe3, 0x16, 0xad, 0x21, 0x93, 0x7c, 0xdd, 0x92, 0x53, 0xf3, 0x84, 0x48, 0x57, 0xf0, 0xa2, 0x5e, 0x7b, 0x67, 0x7b, 0xbf, 0x99, 0x94, 0x44, 0x97, 0x05, 0x36, 0x23, 0x34, 0xbd, 0xce, 0xb6, 0x8a, 0xe6, 0xa5, 0x84, 0x64, 0x0c, 0x95, 0xcb, 0x10, 0x78, 0x9b, 0x19, 0x95, 0x3f, 0x5e, 0x11, 0x99, 0x73, 0xee, 0xd7, 0x35, 0x17, 0x7a, 0xab, 0xfc, 0xb2, 0x63, 0xfc, 0x8e, 0xf5, 0xef, 0x97, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1111_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x5d, 0x0d, 0x76, 0x69, 0x20, 0x6f, 0x5f, 0x3b, 0x90, 0x9d, 0x21, 0x14, 0x58, 0x92, 0xb0, 0x1b, 0x38, 0xe4, 0xea, 0x8a, 0x3d, 0xb6, 0x05, 0x9b, 0x6e, 0x91, 0xf2, 0x15, 0xbe, 0x5a, 0x83, 0xc5, 0x0d, 0xc7, 0xef, 0x8d, 0xcc, 0x5c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1111 = { .name = "ecdsa_brainpoolp320r1_sha384_1111", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1111_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1111_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1111_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 201 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1112 for ECDSA, tcId is 202 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1112_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0xc0, 0x83, 0x67, 0x94, 0x54, 0x95, 0xd9, 0x33, 0xf2, 0x06, 0x92, 0x7a, 0x2b, 0x7f, 0x5b, 0x74, 0xb2, 0x2f, 0x97, 0x3a, 0x89, 0x83, 0x55, 0xaa, 0x2f, 0x7e, 0x29, 0x5e, 0x06, 0xef, 0x3a, 0x4f, 0x56, 0x15, 0x46, 0xdb, 0x97, 0xf7, 0x9a, 0xfa, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1112_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1112 = { .name = "ecdsa_brainpoolp320r1_sha384_1112", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1112_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1112_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1112_sig, .siglen = 80, .result = 1, .comment = "point duplication during verification, tcId is 202 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1113 for ECDSA, tcId is 203 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1113_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0x12, 0xda, 0xdf, 0x8b, 0xe2, 0x26, 0x76, 0x83, 0xef, 0x35, 0xe5, 0xe4, 0xa6, 0x82, 0x84, 0xf1, 0x47, 0x60, 0x38, 0x6c, 0x6d, 0x70, 0xb8, 0x45, 0x20, 0x14, 0x90, 0x8e, 0x71, 0xa4, 0xb1, 0xd9, 0xa6, 0xbe, 0xcb, 0xd6, 0x59, 0xbb, 0x93, 0x2d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1113_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1113 = { .name = "ecdsa_brainpoolp320r1_sha384_1113", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1113_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1113_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1113_sig, .siglen = 80, .result = -1, .comment = "duplication bug, tcId is 203 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1114 for ECDSA, tcId is 204 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1114_pubkey[] = { 0x5d, 0x1a, 0x10, 0x01, 0x18, 0xbd, 0x36, 0x10, 0xf1, 0x0e, 0x13, 0xb5, 0xad, 0xcc, 0x7a, 0x90, 0xa3, 0x7f, 0x4f, 0x98, 0x8c, 0xfa, 0x4e, 0x22, 0xcc, 0xa7, 0x7e, 0x88, 0x44, 0x4b, 0x00, 0x21, 0x6d, 0xcf, 0xe5, 0xf6, 0x84, 0x18, 0xd3, 0x42, 0x5d, 0x5b, 0x88, 0xc9, 0xb8, 0xc9, 0x2b, 0x3d, 0xec, 0x7f, 0x7b, 0xcc, 0x68, 0x8a, 0x6d, 0x18, 0xe6, 0xcd, 0xeb, 0x91, 0x76, 0x15, 0x0d, 0x4b, 0x10, 0x62, 0xa8, 0x32, 0xc8, 0xa3, 0xbc, 0x37, 0x7f, 0x8d, 0x7e, 0x98, 0xb1, 0xdb, 0x0b, 0x9d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1114_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1114 = { .name = "ecdsa_brainpoolp320r1_sha384_1114", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1114_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1114_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1114_sig, .siglen = 80, .result = -1, .comment = "comparison with point at infinity , tcId is 204 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1115 for ECDSA, tcId is 205 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1115_pubkey[] = { 0xcc, 0xa9, 0xac, 0x38, 0xde, 0x5b, 0x36, 0xcf, 0x79, 0xd8, 0xe4, 0x15, 0xcb, 0x72, 0x9e, 0x68, 0x5e, 0x0b, 0xbd, 0xaf, 0xe1, 0x61, 0xc5, 0xe7, 0xec, 0xfa, 0x41, 0x77, 0xe8, 0x26, 0xe8, 0x15, 0xd6, 0x65, 0x26, 0xaa, 0x5d, 0xaf, 0x32, 0x27, 0x9b, 0x77, 0x99, 0xbc, 0xef, 0xc6, 0xb5, 0xd8, 0xd0, 0x9f, 0xf1, 0xa0, 0x73, 0x9f, 0xd4, 0x23, 0x18, 0x81, 0x26, 0xf8, 0x0a, 0xf7, 0x03, 0x31, 0x4d, 0xa0, 0xd2, 0x6b, 0xa6, 0x71, 0x4a, 0xa1, 0x97, 0xa6, 0x58, 0x2c, 0x36, 0xb0, 0xf0, 0x5d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1115_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1115 = { .name = "ecdsa_brainpoolp320r1_sha384_1115", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1115_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1115_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1115_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 205 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1116 for ECDSA, tcId is 206 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1116_pubkey[] = { 0xcc, 0xea, 0xa1, 0x20, 0x3b, 0xdc, 0xbe, 0x15, 0xe2, 0x04, 0x34, 0xd6, 0x24, 0xf0, 0xed, 0x9a, 0xca, 0x81, 0xd4, 0xc8, 0x2f, 0x84, 0x0b, 0xba, 0x3a, 0x86, 0xc6, 0x75, 0x62, 0x62, 0xaa, 0x37, 0xef, 0xed, 0x62, 0xf5, 0xf1, 0xd0, 0x97, 0xf7, 0x45, 0x70, 0x57, 0xb9, 0x8d, 0x2b, 0x9e, 0xa6, 0xbd, 0x28, 0x58, 0x1d, 0x40, 0xac, 0x20, 0xfc, 0xc9, 0xd5, 0x36, 0xa1, 0x17, 0x76, 0x92, 0x03, 0x44, 0x7b, 0xf4, 0x1e, 0x10, 0xce, 0x4d, 0xa1, 0xad, 0x79, 0x4c, 0xa2, 0x0f, 0x8e, 0xe1, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1116_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1116 = { .name = "ecdsa_brainpoolp320r1_sha384_1116", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1116_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1116_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1116_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 206 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1117 for ECDSA, tcId is 207 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1117_pubkey[] = { 0xcc, 0x9e, 0xd2, 0x5f, 0x13, 0xe9, 0x4a, 0x6e, 0xbd, 0x53, 0x1f, 0x3b, 0x14, 0x2f, 0xab, 0xc4, 0xed, 0x52, 0x2d, 0xc6, 0x12, 0x78, 0x61, 0x52, 0x88, 0x30, 0xc6, 0x78, 0x7d, 0x6e, 0xcf, 0xd4, 0xb7, 0x04, 0xe1, 0x77, 0x4e, 0x91, 0x18, 0xed, 0x68, 0xe4, 0xe1, 0x72, 0xf9, 0x3f, 0x1d, 0x5b, 0x8d, 0x78, 0x60, 0xfa, 0xe2, 0xc1, 0x15, 0xf4, 0xaa, 0x0d, 0xaa, 0xf6, 0xdf, 0x5c, 0xa3, 0x80, 0x9d, 0x79, 0xac, 0xfd, 0xb9, 0xed, 0x2b, 0xe1, 0x99, 0x95, 0x65, 0x8d, 0x2f, 0x44, 0xd2, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1117_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1117 = { .name = "ecdsa_brainpoolp320r1_sha384_1117", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1117_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1117_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1117_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 207 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1118 for ECDSA, tcId is 208 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1118_pubkey[] = { 0x6a, 0x3c, 0xae, 0x0e, 0xdc, 0x84, 0x55, 0xae, 0x16, 0xb5, 0xee, 0xb6, 0x56, 0x96, 0x03, 0xbd, 0xae, 0xb5, 0x79, 0x36, 0x99, 0xe8, 0x5d, 0x37, 0x28, 0x57, 0xf1, 0x31, 0x9c, 0x70, 0xdd, 0x52, 0x5b, 0x1e, 0xa3, 0x0a, 0x0f, 0x5c, 0x7b, 0x44, 0x07, 0x55, 0x37, 0xcd, 0x82, 0x2d, 0x9e, 0xe2, 0xd0, 0xe7, 0xa4, 0x9c, 0x4c, 0x31, 0x41, 0x44, 0x5d, 0x01, 0xb7, 0x89, 0xbb, 0xca, 0xd0, 0x2e, 0xc4, 0x24, 0x9c, 0x2e, 0x23, 0x55, 0xd6, 0x1d, 0xb5, 0x58, 0x1d, 0xbd, 0xb3, 0x42, 0xc9, 0x93, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1118_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1118 = { .name = "ecdsa_brainpoolp320r1_sha384_1118", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1118_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1118_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1118_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 208 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1119 for ECDSA, tcId is 209 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1119_pubkey[] = { 0x4e, 0xfb, 0x51, 0x61, 0xca, 0x1a, 0x1e, 0xeb, 0x59, 0xa5, 0xfc, 0x39, 0xcd, 0x52, 0x1d, 0x40, 0xbd, 0x3e, 0x03, 0x45, 0x12, 0xfa, 0x2a, 0x1e, 0xaf, 0x3b, 0x7e, 0x92, 0xbb, 0x9e, 0x95, 0xc0, 0x6a, 0x4c, 0x72, 0x6c, 0xec, 0xcd, 0xf9, 0xbc, 0x6b, 0xfa, 0x80, 0x1b, 0x06, 0x71, 0x37, 0xf1, 0xb6, 0xb4, 0x50, 0x60, 0x41, 0x13, 0x0b, 0x4d, 0x40, 0x2d, 0x90, 0x08, 0x7a, 0xd0, 0x05, 0xe3, 0xf6, 0x52, 0xe1, 0xd9, 0x1c, 0x9d, 0x34, 0x4c, 0xd1, 0xee, 0xff, 0xff, 0x61, 0xd3, 0xa3, 0x06, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1119_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1119 = { .name = "ecdsa_brainpoolp320r1_sha384_1119", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1119_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1119_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1119_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 209 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1120 for ECDSA, tcId is 210 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1120_pubkey[] = { 0x5f, 0x65, 0x86, 0x87, 0xe6, 0xa5, 0x42, 0xa9, 0x1d, 0x89, 0x3b, 0x48, 0x77, 0x6a, 0x86, 0xd5, 0x28, 0xfd, 0x39, 0x97, 0x81, 0xbb, 0xb9, 0x30, 0x5b, 0xe0, 0x79, 0x7e, 0x3a, 0x6f, 0x36, 0x11, 0x8a, 0xe1, 0x9e, 0x68, 0xdc, 0x16, 0x73, 0xf6, 0x67, 0x6e, 0x53, 0x6c, 0x78, 0x97, 0xa0, 0x00, 0x2f, 0x96, 0x64, 0x92, 0x96, 0x31, 0xf4, 0x18, 0xc4, 0x53, 0x7d, 0x23, 0x74, 0x92, 0x20, 0xc5, 0x0a, 0x32, 0x12, 0x1c, 0x43, 0x4d, 0xca, 0xd2, 0xa6, 0xcd, 0xc2, 0x03, 0xcd, 0x03, 0x5a, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1120_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1120 = { .name = "ecdsa_brainpoolp320r1_sha384_1120", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1120_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1120_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1120_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 210 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1121 for ECDSA, tcId is 211 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1121_pubkey[] = { 0x90, 0x53, 0x7a, 0x68, 0x27, 0xa2, 0x50, 0x60, 0x27, 0x3d, 0x44, 0xd4, 0x84, 0x6a, 0xea, 0x59, 0x66, 0x82, 0xdf, 0x0a, 0x59, 0xd0, 0xff, 0xe7, 0x9b, 0xe2, 0xa1, 0xeb, 0xe9, 0x18, 0x70, 0x3c, 0xab, 0xfa, 0xc6, 0x4d, 0xa5, 0xe5, 0x91, 0x00, 0x33, 0x09, 0x18, 0x0d, 0x9d, 0xa5, 0xe7, 0x82, 0x37, 0xb9, 0x54, 0x03, 0xc5, 0x2f, 0x3c, 0xee, 0xe5, 0x03, 0x06, 0x7b, 0x67, 0x27, 0x15, 0xe9, 0x7d, 0x8b, 0x63, 0x69, 0x34, 0x26, 0x84, 0xa7, 0x2f, 0x46, 0x76, 0x98, 0x74, 0x1b, 0x1a, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1121_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1121 = { .name = "ecdsa_brainpoolp320r1_sha384_1121", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1121_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1121_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1121_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 211 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1122 for ECDSA, tcId is 212 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1122_pubkey[] = { 0xa8, 0x1c, 0xcb, 0xf4, 0xfc, 0x44, 0x57, 0x03, 0x3b, 0xd4, 0x9c, 0xea, 0xc8, 0xfa, 0x52, 0xe4, 0x59, 0x40, 0x07, 0x30, 0xb8, 0x77, 0x30, 0x5b, 0xe0, 0x41, 0x81, 0x53, 0xd2, 0x78, 0xd3, 0x0b, 0x59, 0x73, 0x77, 0x7a, 0x7d, 0xd1, 0xc2, 0xc1, 0x75, 0x44, 0xff, 0x1b, 0x76, 0x20, 0x8e, 0x84, 0x10, 0x53, 0xec, 0xae, 0xf7, 0xa5, 0x86, 0x9e, 0x92, 0xda, 0x08, 0xc5, 0xc4, 0xc3, 0xd0, 0xa1, 0x67, 0xd5, 0x68, 0x5e, 0xb7, 0x21, 0xd6, 0x20, 0x33, 0x9c, 0xc9, 0xb0, 0x01, 0x49, 0x83, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1122_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1122 = { .name = "ecdsa_brainpoolp320r1_sha384_1122", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1122_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1122_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1122_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 212 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1123 for ECDSA, tcId is 213 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1123_pubkey[] = { 0xba, 0x16, 0x00, 0x89, 0x32, 0x7c, 0xf8, 0xba, 0x16, 0x3e, 0xef, 0xa4, 0x76, 0xa4, 0xea, 0xfd, 0x0f, 0x6c, 0xe9, 0xd5, 0x52, 0x92, 0xf6, 0x72, 0x4d, 0x02, 0x0f, 0x0e, 0xfa, 0xc5, 0x4b, 0xf6, 0x84, 0xf9, 0xd5, 0xf5, 0x69, 0x5f, 0x89, 0xc2, 0xb4, 0xde, 0x70, 0xdc, 0x4a, 0xb2, 0x65, 0x76, 0x18, 0x27, 0x32, 0x3d, 0xa3, 0xb2, 0xb0, 0x55, 0xac, 0x11, 0x87, 0xfc, 0x53, 0x41, 0xe4, 0x55, 0x5e, 0xbc, 0x6f, 0x69, 0x93, 0xb4, 0xc3, 0xfd, 0xd8, 0x98, 0x63, 0xfc, 0x55, 0xea, 0x38, 0xb4, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1123_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1123 = { .name = "ecdsa_brainpoolp320r1_sha384_1123", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1123_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1123_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1123_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 213 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1124 for ECDSA, tcId is 214 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1124_pubkey[] = { 0x4a, 0x5c, 0xf4, 0x47, 0x55, 0x0f, 0x0f, 0xf2, 0xef, 0xa1, 0x93, 0xc3, 0xe1, 0x85, 0xdb, 0x60, 0x4f, 0xcf, 0xd7, 0xde, 0x5c, 0x47, 0xa5, 0x9a, 0x39, 0x2d, 0xa0, 0xc7, 0x57, 0x2f, 0x06, 0x10, 0x38, 0xc6, 0xaf, 0x5a, 0xfc, 0xfa, 0x9b, 0xd5, 0x30, 0xb7, 0x68, 0x2b, 0x82, 0x01, 0x0c, 0x39, 0x33, 0x4b, 0xa2, 0xed, 0xec, 0xf0, 0xa2, 0x3b, 0xca, 0x09, 0xe8, 0x10, 0xd7, 0x45, 0xbd, 0xf7, 0x3e, 0x44, 0x5e, 0x80, 0xac, 0xe0, 0xe5, 0x39, 0x9f, 0xa2, 0x61, 0x02, 0xcb, 0x3f, 0xae, 0xe6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1124_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1124 = { .name = "ecdsa_brainpoolp320r1_sha384_1124", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1124_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1124_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1124_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 214 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1125 for ECDSA, tcId is 215 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1125_pubkey[] = { 0x5d, 0x3f, 0xef, 0x1b, 0x96, 0xdb, 0xc8, 0xca, 0x93, 0x30, 0x50, 0x8a, 0xd4, 0xce, 0xd4, 0x91, 0xe6, 0x27, 0xeb, 0x67, 0xcb, 0xa8, 0xc6, 0xb1, 0x53, 0x79, 0x37, 0x49, 0x8e, 0xe3, 0x02, 0x1b, 0x45, 0xca, 0x67, 0x59, 0x11, 0x7d, 0x89, 0xc4, 0xad, 0x2b, 0x69, 0x9e, 0x3e, 0xf9, 0x51, 0x6f, 0xff, 0x2e, 0xd2, 0xe1, 0x34, 0x93, 0x1c, 0x96, 0xd2, 0x8d, 0x3e, 0x14, 0xdd, 0x51, 0xc5, 0xb8, 0x75, 0x89, 0xa8, 0xfa, 0x88, 0xaf, 0x25, 0x29, 0xb8, 0xca, 0xa0, 0xf7, 0x85, 0xce, 0x20, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1125_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1125 = { .name = "ecdsa_brainpoolp320r1_sha384_1125", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1125_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1125_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1125_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 215 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1126 for ECDSA, tcId is 216 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1126_pubkey[] = { 0xa8, 0x33, 0x67, 0x02, 0xc1, 0x58, 0xdc, 0xae, 0x49, 0x5f, 0x1c, 0x9c, 0xd7, 0x20, 0xc3, 0x9f, 0x15, 0xc1, 0x23, 0xa6, 0x77, 0x50, 0xdc, 0xd7, 0x45, 0x20, 0xc3, 0x4c, 0xf6, 0x79, 0x07, 0xe4, 0x92, 0x20, 0xbc, 0xd0, 0x20, 0xcc, 0x3a, 0x60, 0x15, 0x1a, 0x43, 0x2e, 0xe3, 0xe2, 0x3a, 0x74, 0xc8, 0xb8, 0xa9, 0x8d, 0x8e, 0x7c, 0x67, 0x22, 0x16, 0xdf, 0x48, 0xd8, 0xa6, 0x0d, 0x3f, 0x59, 0x2f, 0x66, 0x73, 0x83, 0x0a, 0xc9, 0xec, 0xfb, 0xcd, 0x00, 0x55, 0x0d, 0xb7, 0xad, 0x5c, 0x62, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1126_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1126 = { .name = "ecdsa_brainpoolp320r1_sha384_1126", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1126_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1126_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1126_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 216 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1127 for ECDSA, tcId is 217 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1127_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1127_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1127 = { .name = "ecdsa_brainpoolp320r1_sha384_1127", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1127_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1127_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1127_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 217 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1128 for ECDSA, tcId is 218 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1128_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1128_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1128 = { .name = "ecdsa_brainpoolp320r1_sha384_1128", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1128_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1128_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1128_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 218 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1129 for ECDSA, tcId is 219 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1129_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1129_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1129 = { .name = "ecdsa_brainpoolp320r1_sha384_1129", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1129_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1129_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1129_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 219 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1130 for ECDSA, tcId is 220 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1130_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1130_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1130 = { .name = "ecdsa_brainpoolp320r1_sha384_1130", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1130_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1130_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1130_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 220 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1131 for ECDSA, tcId is 221 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1131_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1131_sig[] = { 0x9c, 0xf7, 0xf0, 0xd6, 0x0c, 0xc1, 0xfb, 0x2d, 0x4b, 0x3e, 0x78, 0xd5, 0xf8, 0x3b, 0x37, 0x4e, 0x17, 0xa4, 0xae, 0xbc, 0xcc, 0x6e, 0x72, 0x3f, 0x1a, 0xd3, 0x5b, 0xab, 0xb2, 0xac, 0xfb, 0x2b, 0x75, 0x53, 0x03, 0x89, 0x18, 0x93, 0x95, 0xf8, 0x00, 0x11, 0x10, 0xc5, 0xb8, 0xb8, 0xe5, 0xfa, 0x8d, 0xc7, 0x95, 0x2a, 0x7b, 0xf6, 0x20, 0x0b, 0xdd, 0xae, 0x6c, 0x1d, 0x66, 0x63, 0x9a, 0x07, 0xa4, 0xb6, 0x04, 0x6e, 0x00, 0xbf, 0xa7, 0xa2, 0xbd, 0x9d, 0x57, 0x77, 0xb8, 0x0c, 0x3a, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1131 = { .name = "ecdsa_brainpoolp320r1_sha384_1131", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1131_pubkey, .pubkeylen = 80, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp320r1_sha384_1131_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 221 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1132 for ECDSA, tcId is 222 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1132_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1132_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1132_sig[] = { 0x26, 0xfd, 0x69, 0x5e, 0xe1, 0xcc, 0x50, 0xc2, 0x66, 0x1c, 0x24, 0x34, 0xf8, 0x69, 0x95, 0x77, 0xaf, 0x18, 0x13, 0x04, 0xbc, 0xeb, 0x76, 0x90, 0xc5, 0x38, 0xb0, 0x34, 0x63, 0xdf, 0x24, 0x33, 0x43, 0x95, 0xe7, 0x91, 0xf6, 0x75, 0x0f, 0xf6, 0xb3, 0x22, 0x61, 0x8c, 0xd5, 0x0c, 0x6a, 0x7c, 0xff, 0xcb, 0x41, 0x9e, 0xc0, 0x5b, 0x67, 0xec, 0x6a, 0x11, 0x70, 0x88, 0xc7, 0x8d, 0x57, 0xce, 0xcd, 0xd2, 0x24, 0x90, 0x2d, 0x39, 0x18, 0x92, 0xca, 0x03, 0xe4, 0xbc, 0x1b, 0xd0, 0x46, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1132 = { .name = "ecdsa_brainpoolp320r1_sha384_1132", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1132_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1132_msg, .msglen = 3, .sig = ecdsa_brainpoolp320r1_sha384_1132_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 222 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1133 for ECDSA, tcId is 223 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1133_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1133_sig[] = { 0x7a, 0x31, 0xb7, 0x37, 0x5f, 0x92, 0x43, 0x69, 0xec, 0x12, 0xbc, 0x33, 0xb8, 0x34, 0x72, 0x6c, 0x95, 0x44, 0x4a, 0x4c, 0x26, 0x35, 0x57, 0x34, 0x4a, 0xfa, 0x73, 0x2c, 0xf4, 0x8a, 0x15, 0x5e, 0x71, 0xa6, 0xee, 0x7d, 0xe4, 0x2e, 0x91, 0xce, 0x24, 0xd3, 0xd7, 0x28, 0x61, 0xf4, 0xd2, 0xb5, 0x51, 0xc1, 0x0f, 0x02, 0x94, 0xd1, 0x6a, 0x3b, 0xf1, 0xd4, 0xee, 0x3e, 0x48, 0x44, 0x39, 0xb8, 0x04, 0xd0, 0x97, 0xde, 0xa2, 0xd7, 0xca, 0xce, 0x76, 0xad, 0xe1, 0x4a, 0xf1, 0x66, 0x33, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1133 = { .name = "ecdsa_brainpoolp320r1_sha384_1133", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1133_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1133_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1133_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 223 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1134 for ECDSA, tcId is 224 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1134_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1134_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1134_sig[] = { 0x24, 0x17, 0xeb, 0x10, 0xa5, 0x38, 0x92, 0x16, 0x21, 0x06, 0x66, 0x08, 0x24, 0x3f, 0xd6, 0x57, 0x4d, 0xe8, 0x4e, 0xf1, 0x28, 0x15, 0x20, 0xf0, 0x1e, 0xbe, 0x04, 0x44, 0xb4, 0x6a, 0x60, 0x7a, 0xb9, 0xed, 0xa8, 0xf3, 0x72, 0x17, 0x79, 0xa6, 0x8f, 0x1e, 0x2e, 0xa2, 0x94, 0x02, 0x8b, 0xae, 0xb7, 0x38, 0x18, 0x1e, 0x12, 0x8c, 0x86, 0xad, 0x55, 0xcb, 0x19, 0x45, 0x43, 0x6c, 0xf6, 0x9e, 0x09, 0x0c, 0x2f, 0x61, 0x59, 0xf6, 0xf2, 0x20, 0x11, 0xd7, 0x31, 0x73, 0x3b, 0x44, 0x33, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1134 = { .name = "ecdsa_brainpoolp320r1_sha384_1134", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1134_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1134_msg, .msglen = 20, .sig = ecdsa_brainpoolp320r1_sha384_1134_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 224 in file ecdsa_brainpoolP320r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1135 for ECDSA, tcId is 1 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1135_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1135_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x83, 0x3d, 0x66, 0x61, 0xb0, 0x57, 0x6d, 0x61, 0xa8, 0x0f, 0xfe, 0x4d, 0x32, 0x71, 0xc4, 0x3b, 0x2a, 0x56, 0xc1, 0x4b, 0x3b, 0xd9, 0x03, 0x05, 0x92, 0x3c, 0xcd, 0xcf, 0x7b, 0x3d, 0x98, 0x8c, 0x07, 0xeb, 0xb1, 0xc4, 0xcc, 0x67, 0x38, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1135 = { .name = "ecdsa_brainpoolp320r1_sha384_1135", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1135_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1135_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1135_sig, .siglen = 80, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1136 for ECDSA, tcId is 2 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1136_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1136_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1136 = { .name = "ecdsa_brainpoolp320r1_sha384_1136", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1136_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1136_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1136_sig, .siglen = 80, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1137 for ECDSA, tcId is 3 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1137_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1137_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1137 = { .name = "ecdsa_brainpoolp320r1_sha384_1137", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1137_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1137_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1137_sig, .siglen = 80, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1138 for ECDSA, tcId is 4 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1138_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1138_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1138 = { .name = "ecdsa_brainpoolp320r1_sha384_1138", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1138_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1138_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1138_sig, .siglen = 80, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1139 for ECDSA, tcId is 5 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1139_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1139_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1139 = { .name = "ecdsa_brainpoolp320r1_sha384_1139", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1139_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1139_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1139_sig, .siglen = 80, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1140 for ECDSA, tcId is 68 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1140_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1140_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1140 = { .name = "ecdsa_brainpoolp320r1_sha384_1140", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1140_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1140_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1140_sig, .siglen = 80, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1141 for ECDSA, tcId is 69 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1141_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1141_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1141 = { .name = "ecdsa_brainpoolp320r1_sha384_1141", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1141_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1141_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1141_sig, .siglen = 80, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1142 for ECDSA, tcId is 70 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1142_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1142_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1142 = { .name = "ecdsa_brainpoolp320r1_sha384_1142", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1142_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1142_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1142_sig, .siglen = 80, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1143 for ECDSA, tcId is 71 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1143_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1143_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1143 = { .name = "ecdsa_brainpoolp320r1_sha384_1143", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1143_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1143_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1143_sig, .siglen = 80, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1144 for ECDSA, tcId is 93 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1144_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1144_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1144 = { .name = "ecdsa_brainpoolp320r1_sha384_1144", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1144_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1144_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1144_sig, .siglen = 82, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1145 for ECDSA, tcId is 94 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1145_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1145_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1145 = { .name = "ecdsa_brainpoolp320r1_sha384_1145", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1145_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1145_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1145_sig, .siglen = 82, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1146 for ECDSA, tcId is 95 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1146_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1146_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1146 = { .name = "ecdsa_brainpoolp320r1_sha384_1146", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1146_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1146_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1146_sig, .siglen = 80, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1147 for ECDSA, tcId is 96 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1147_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1147_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1147 = { .name = "ecdsa_brainpoolp320r1_sha384_1147", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1147_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1147_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1147_sig, .siglen = 80, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1148 for ECDSA, tcId is 98 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1148_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1148_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x05, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1148 = { .name = "ecdsa_brainpoolp320r1_sha384_1148", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1148_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1148_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1148_sig, .siglen = 82, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1149 for ECDSA, tcId is 99 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1149_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1149_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1149 = { .name = "ecdsa_brainpoolp320r1_sha384_1149", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1149_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1149_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1149_sig, .siglen = 82, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1150 for ECDSA, tcId is 114 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1150_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1150_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1150 = { .name = "ecdsa_brainpoolp320r1_sha384_1150", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1150_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1150_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1150_sig, .siglen = 80, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1151 for ECDSA, tcId is 115 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1151_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1151_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1151 = { .name = "ecdsa_brainpoolp320r1_sha384_1151", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1151_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1151_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1151_sig, .siglen = 80, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1152 for ECDSA, tcId is 118 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1152_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1152_sig[] = { 0x02, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1152 = { .name = "ecdsa_brainpoolp320r1_sha384_1152", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1152_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1152_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1152_sig, .siglen = 81, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1153 for ECDSA, tcId is 119 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1153_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1153_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x52, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1153 = { .name = "ecdsa_brainpoolp320r1_sha384_1153", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1153_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1153_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1153_sig, .siglen = 80, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1154 for ECDSA, tcId is 120 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1154_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1154_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0xee, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1154 = { .name = "ecdsa_brainpoolp320r1_sha384_1154", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1154_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1154_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1154_sig, .siglen = 80, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1155 for ECDSA, tcId is 121 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1155_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1155_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1155 = { .name = "ecdsa_brainpoolp320r1_sha384_1155", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1155_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1155_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1155_sig, .siglen = 80, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1156 for ECDSA, tcId is 122 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1156_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1156_sig[] = { 0x00, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1156 = { .name = "ecdsa_brainpoolp320r1_sha384_1156", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1156_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1156_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1156_sig, .siglen = 80, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1157 for ECDSA, tcId is 123 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1157_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1157_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1157 = { .name = "ecdsa_brainpoolp320r1_sha384_1157", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1157_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1157_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1157_sig, .siglen = 80, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1158 for ECDSA, tcId is 124 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1158_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1158_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1158 = { .name = "ecdsa_brainpoolp320r1_sha384_1158", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1158_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1158_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1158_sig, .siglen = 80, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1159 for ECDSA, tcId is 125 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1159_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1159_sig[] = { 0x00, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1159 = { .name = "ecdsa_brainpoolp320r1_sha384_1159", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1159_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1159_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1159_sig, .siglen = 81, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1160 for ECDSA, tcId is 126 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1160_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1160_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1160 = { .name = "ecdsa_brainpoolp320r1_sha384_1160", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1160_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1160_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1160_sig, .siglen = 80, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_brainpoolP320r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1161 for ECDSA, tcId is 129 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1161_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1161_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1161 = { .name = "ecdsa_brainpoolp320r1_sha384_1161", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1161_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1161_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1161_sig, .siglen = 80, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1162 for ECDSA, tcId is 130 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1162_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1162_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1162 = { .name = "ecdsa_brainpoolp320r1_sha384_1162", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1162_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1162_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1162_sig, .siglen = 80, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1163 for ECDSA, tcId is 131 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1163_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1163_sig[] = { 0x01, 0x59, 0x10, 0x03, 0x78, 0xa2, 0xb1, 0x90, 0x37, 0x7d, 0xcb, 0x3b, 0xd5, 0x31, 0xe2, 0x0c, 0x37, 0x8d, 0x10, 0x69, 0x31, 0xfc, 0x18, 0x3f, 0x70, 0x7d, 0xc9, 0xd0, 0x85, 0x76, 0xf8, 0xfb, 0x56, 0x61, 0x85, 0x59, 0x42, 0x20, 0xb8, 0xdd, 0x7f, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1163 = { .name = "ecdsa_brainpoolp320r1_sha384_1163", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1163_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1163_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1163_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1164 for ECDSA, tcId is 132 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1164_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1164_sig[] = { 0xb2, 0x53, 0x75, 0x38, 0x35, 0x38, 0xf0, 0xc7, 0xbb, 0x52, 0x4b, 0x17, 0x8d, 0xde, 0x4b, 0x6b, 0x99, 0xf0, 0xc9, 0xe6, 0x8e, 0xfa, 0x1a, 0x2a, 0x23, 0x39, 0x72, 0xf5, 0x99, 0xec, 0x49, 0x83, 0x54, 0x62, 0xae, 0x8b, 0x97, 0x2d, 0xb7, 0x5d, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1164 = { .name = "ecdsa_brainpoolp320r1_sha384_1164", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1164_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1164_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1164_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1165 for ECDSA, tcId is 133 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1165_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1165_sig[] = { 0x7a, 0x4e, 0x43, 0xa7, 0x94, 0x0a, 0xbf, 0x80, 0x63, 0x71, 0x3c, 0x89, 0xa0, 0x1f, 0xd4, 0x2e, 0x6c, 0x7f, 0x66, 0x73, 0xba, 0x76, 0xd3, 0x32, 0xaf, 0x7e, 0x5e, 0x42, 0x77, 0x8d, 0x5d, 0x93, 0x25, 0x0b, 0xfc, 0x19, 0x24, 0x0c, 0xb5, 0x92, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1165 = { .name = "ecdsa_brainpoolp320r1_sha384_1165", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1165_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1165_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1165_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1166 for ECDSA, tcId is 134 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1166_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1166_sig[] = { 0x4d, 0xac, 0x8a, 0xc7, 0xca, 0xc7, 0x0f, 0x38, 0x44, 0xad, 0xb4, 0xe8, 0x72, 0x21, 0xb4, 0x94, 0x66, 0x0f, 0x36, 0x19, 0x71, 0x05, 0xe5, 0xd5, 0xdc, 0xc6, 0x8d, 0x0a, 0x66, 0x13, 0xb6, 0x7c, 0xab, 0x9d, 0x51, 0x74, 0x68, 0xd2, 0x48, 0xa3, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1166 = { .name = "ecdsa_brainpoolp320r1_sha384_1166", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1166_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1166_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1166_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1167 for ECDSA, tcId is 135 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1167_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1167_sig[] = { 0xfe, 0xa6, 0xef, 0xfc, 0x87, 0x5d, 0x4e, 0x6f, 0xc8, 0x82, 0x34, 0xc4, 0x2a, 0xce, 0x1d, 0xf3, 0xc8, 0x72, 0xef, 0x96, 0xce, 0x03, 0xe7, 0xc0, 0x8f, 0x82, 0x36, 0x2f, 0x7a, 0x89, 0x07, 0x04, 0xa9, 0x9e, 0x7a, 0xa6, 0xbd, 0xdf, 0x47, 0x22, 0x81, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1167 = { .name = "ecdsa_brainpoolp320r1_sha384_1167", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1167_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1167_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1167_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1168 for ECDSA, tcId is 136 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1168_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1168_sig[] = { 0x01, 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1168 = { .name = "ecdsa_brainpoolp320r1_sha384_1168", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1168_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1168_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1168_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1169 for ECDSA, tcId is 137 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1169_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1169_sig[] = { 0x7a, 0x4e, 0x43, 0xa7, 0x94, 0x0a, 0xbf, 0x80, 0x63, 0x71, 0x3c, 0x89, 0xa0, 0x1f, 0xd4, 0x2e, 0x6c, 0x7f, 0x66, 0x73, 0xba, 0x76, 0xd3, 0x32, 0xaf, 0x7e, 0x5e, 0x42, 0x77, 0x8d, 0x5d, 0x93, 0x25, 0x0b, 0xfc, 0x19, 0x24, 0x0c, 0xb5, 0x92, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1169 = { .name = "ecdsa_brainpoolp320r1_sha384_1169", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1169_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1169_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1169_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1170 for ECDSA, tcId is 138 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1170_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1170_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x01, 0x23, 0x7f, 0x27, 0xde, 0xbd, 0x21, 0x32, 0x0e, 0x1a, 0x68, 0xf2, 0x70, 0x71, 0x91, 0xfc, 0x90, 0xc8, 0xc8, 0xde, 0x00, 0x31, 0x45, 0x22, 0x40, 0xc8, 0x53, 0x8f, 0xc0, 0x61, 0xcf, 0x19, 0x47, 0x05, 0x36, 0xf8, 0xf1, 0xbd, 0x23, 0xee, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1170 = { .name = "ecdsa_brainpoolp320r1_sha384_1170", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1170_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1170_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1170_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1171 for ECDSA, tcId is 139 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1171_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1171_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x7c, 0xc2, 0x99, 0x9e, 0x4f, 0xa8, 0x92, 0x9e, 0x57, 0xf0, 0x01, 0xb2, 0xcd, 0x8e, 0x3b, 0xc4, 0xd5, 0xa9, 0x3e, 0xb4, 0xc4, 0x26, 0xfc, 0xfa, 0x6d, 0xc3, 0x32, 0x30, 0x84, 0xc2, 0x67, 0x73, 0xf8, 0x14, 0x4e, 0x3b, 0x33, 0x98, 0xc7, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1171 = { .name = "ecdsa_brainpoolp320r1_sha384_1171", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1171_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1171_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1171_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1172 for ECDSA, tcId is 140 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1172_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1172_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0xaf, 0xdf, 0x1f, 0x41, 0x79, 0x9b, 0x1d, 0xa9, 0xc6, 0xd3, 0x85, 0xee, 0x60, 0x6f, 0xe3, 0xd5, 0x30, 0xc6, 0xf1, 0xa5, 0x85, 0x49, 0xf0, 0x62, 0x64, 0xf4, 0x9f, 0x07, 0x8c, 0xb7, 0x3f, 0xa2, 0x81, 0x5a, 0x5c, 0x69, 0x87, 0xa1, 0xa5, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1172 = { .name = "ecdsa_brainpoolp320r1_sha384_1172", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1172_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1172_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1172_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1173 for ECDSA, tcId is 141 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1173_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1173_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0xfe, 0xdc, 0x80, 0xd8, 0x21, 0x42, 0xde, 0xcd, 0xf1, 0xe5, 0x97, 0x0d, 0x8f, 0x8e, 0x6e, 0x03, 0x6f, 0x37, 0x37, 0x21, 0xff, 0xce, 0xba, 0xdd, 0xbf, 0x37, 0xac, 0x70, 0x3f, 0x9e, 0x30, 0xe6, 0xb8, 0xfa, 0xc9, 0x07, 0x0e, 0x42, 0xdc, 0x11, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1173 = { .name = "ecdsa_brainpoolp320r1_sha384_1173", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1173_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1173_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1173_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1174 for ECDSA, tcId is 142 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1174_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1174_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0x01, 0x50, 0x20, 0xe0, 0xbe, 0x86, 0x64, 0xe2, 0x56, 0x39, 0x2c, 0x7a, 0x11, 0x9f, 0x90, 0x1c, 0x2a, 0xcf, 0x39, 0x0e, 0x5a, 0x7a, 0xb6, 0x0f, 0x9d, 0x9b, 0x0b, 0x60, 0xf8, 0x73, 0x48, 0xc0, 0x5d, 0x7e, 0xa5, 0xa3, 0x96, 0x78, 0x5e, 0x5a, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1174 = { .name = "ecdsa_brainpoolp320r1_sha384_1174", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1174_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1174_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1174_sig, .siglen = 81, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1175 for ECDSA, tcId is 143 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1175_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1175_sig[] = { 0x85, 0xb1, 0xbc, 0x58, 0x6b, 0xf5, 0x40, 0x7f, 0x9c, 0x8e, 0xc3, 0x76, 0x5f, 0xe0, 0x2b, 0xd1, 0x93, 0x80, 0x99, 0x8c, 0x45, 0x89, 0x2c, 0xcd, 0x50, 0x81, 0xa1, 0xbd, 0x88, 0x72, 0xa2, 0x6c, 0xda, 0xf4, 0x03, 0xe6, 0xdb, 0xf3, 0x4a, 0x6e, 0xaf, 0xdf, 0x1f, 0x41, 0x79, 0x9b, 0x1d, 0xa9, 0xc6, 0xd3, 0x85, 0xee, 0x60, 0x6f, 0xe3, 0xd5, 0x30, 0xc6, 0xf1, 0xa5, 0x85, 0x49, 0xf0, 0x62, 0x64, 0xf4, 0x9f, 0x07, 0x8c, 0xb7, 0x3f, 0xa2, 0x81, 0x5a, 0x5c, 0x69, 0x87, 0xa1, 0xa5, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1175 = { .name = "ecdsa_brainpoolp320r1_sha384_1175", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1175_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1175_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1175_sig, .siglen = 80, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1176 for ECDSA, tcId is 144 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1176_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1176_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1176 = { .name = "ecdsa_brainpoolp320r1_sha384_1176", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1176_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1176_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1176_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1177 for ECDSA, tcId is 145 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1177_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1177_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1177 = { .name = "ecdsa_brainpoolp320r1_sha384_1177", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1177_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1177_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1177_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1178 for ECDSA, tcId is 146 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1178_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1178_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1178 = { .name = "ecdsa_brainpoolp320r1_sha384_1178", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1178_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1178_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1178_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1179 for ECDSA, tcId is 147 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1179_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1179_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1179 = { .name = "ecdsa_brainpoolp320r1_sha384_1179", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1179_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1179_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1179_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1180 for ECDSA, tcId is 148 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1180_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1180_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1180 = { .name = "ecdsa_brainpoolp320r1_sha384_1180", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1180_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1180_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1180_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1181 for ECDSA, tcId is 149 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1181_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1181_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1181 = { .name = "ecdsa_brainpoolp320r1_sha384_1181", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1181_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1181_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1181_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1182 for ECDSA, tcId is 150 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1182_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1182_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1182 = { .name = "ecdsa_brainpoolp320r1_sha384_1182", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1182_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1182_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1182_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1183 for ECDSA, tcId is 151 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1183_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1183_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1183 = { .name = "ecdsa_brainpoolp320r1_sha384_1183", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1183_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1183_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1183_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1184 for ECDSA, tcId is 154 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1184_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1184_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1184_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1184 = { .name = "ecdsa_brainpoolp320r1_sha384_1184", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1184_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1184_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1184_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1185 for ECDSA, tcId is 155 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1185_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1185_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1185_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1185 = { .name = "ecdsa_brainpoolp320r1_sha384_1185", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1185_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1185_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1185_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1186 for ECDSA, tcId is 156 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1186_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1186_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1186 = { .name = "ecdsa_brainpoolp320r1_sha384_1186", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1186_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1186_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1186_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1187 for ECDSA, tcId is 157 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1187_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1187_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1187_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1187 = { .name = "ecdsa_brainpoolp320r1_sha384_1187", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1187_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1187_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1187_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1188 for ECDSA, tcId is 158 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1188_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1188_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1188_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1188 = { .name = "ecdsa_brainpoolp320r1_sha384_1188", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1188_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1188_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1188_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1189 for ECDSA, tcId is 159 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1189_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1189_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1189_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1189 = { .name = "ecdsa_brainpoolp320r1_sha384_1189", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1189_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1189_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1189_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1190 for ECDSA, tcId is 160 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1190_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1190_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1190 = { .name = "ecdsa_brainpoolp320r1_sha384_1190", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1190_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1190_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1190_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1191 for ECDSA, tcId is 161 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1191_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1191_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1191 = { .name = "ecdsa_brainpoolp320r1_sha384_1191", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1191_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1191_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1191_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1192 for ECDSA, tcId is 164 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1192_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1192_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1192 = { .name = "ecdsa_brainpoolp320r1_sha384_1192", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1192_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1192_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1192_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1193 for ECDSA, tcId is 165 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1193_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1193_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1193 = { .name = "ecdsa_brainpoolp320r1_sha384_1193", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1193_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1193_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1193_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1194 for ECDSA, tcId is 166 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1194_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1194_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1194 = { .name = "ecdsa_brainpoolp320r1_sha384_1194", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1194_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1194_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1194_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1195 for ECDSA, tcId is 167 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1195_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1195_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1195 = { .name = "ecdsa_brainpoolp320r1_sha384_1195", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1195_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1195_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1195_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1196 for ECDSA, tcId is 168 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1196_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1196_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1196 = { .name = "ecdsa_brainpoolp320r1_sha384_1196", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1196_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1196_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1196_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1197 for ECDSA, tcId is 169 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1197_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1197_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1197 = { .name = "ecdsa_brainpoolp320r1_sha384_1197", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1197_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1197_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1197_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1198 for ECDSA, tcId is 170 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1198_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1198_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1198 = { .name = "ecdsa_brainpoolp320r1_sha384_1198", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1198_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1198_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1198_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1199 for ECDSA, tcId is 171 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1199_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1199_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1199 = { .name = "ecdsa_brainpoolp320r1_sha384_1199", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1199_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1199_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1199_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1200 for ECDSA, tcId is 174 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1200_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1200_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1200 = { .name = "ecdsa_brainpoolp320r1_sha384_1200", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1200_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1200_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1200_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1201 for ECDSA, tcId is 175 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1201_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1201_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1201 = { .name = "ecdsa_brainpoolp320r1_sha384_1201", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1201_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1201_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1201_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1202 for ECDSA, tcId is 176 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1202_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1202_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1202 = { .name = "ecdsa_brainpoolp320r1_sha384_1202", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1202_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1202_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1202_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1203 for ECDSA, tcId is 177 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1203_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1203_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1203 = { .name = "ecdsa_brainpoolp320r1_sha384_1203", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1203_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1203_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1203_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1204 for ECDSA, tcId is 178 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1204_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1204_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1204 = { .name = "ecdsa_brainpoolp320r1_sha384_1204", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1204_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1204_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1204_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1205 for ECDSA, tcId is 179 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1205_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1205_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1205 = { .name = "ecdsa_brainpoolp320r1_sha384_1205", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1205_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1205_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1205_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1206 for ECDSA, tcId is 180 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1206_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1206_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1206 = { .name = "ecdsa_brainpoolp320r1_sha384_1206", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1206_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1206_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1206_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1207 for ECDSA, tcId is 181 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1207_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1207_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1207 = { .name = "ecdsa_brainpoolp320r1_sha384_1207", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1207_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1207_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1207_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1208 for ECDSA, tcId is 184 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1208_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1208_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1208 = { .name = "ecdsa_brainpoolp320r1_sha384_1208", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1208_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1208_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1208_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1209 for ECDSA, tcId is 185 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1209_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1209_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1209 = { .name = "ecdsa_brainpoolp320r1_sha384_1209", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1209_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1209_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1209_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1210 for ECDSA, tcId is 186 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1210_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1210_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1210 = { .name = "ecdsa_brainpoolp320r1_sha384_1210", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1210_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1210_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1210_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1211 for ECDSA, tcId is 187 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1211_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1211_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1211 = { .name = "ecdsa_brainpoolp320r1_sha384_1211", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1211_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1211_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1211_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1212 for ECDSA, tcId is 188 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1212_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1212_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1212 = { .name = "ecdsa_brainpoolp320r1_sha384_1212", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1212_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1212_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1212_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1213 for ECDSA, tcId is 189 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1213_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1213_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1213 = { .name = "ecdsa_brainpoolp320r1_sha384_1213", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1213_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1213_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1213_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1214 for ECDSA, tcId is 190 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1214_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1214_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1214 = { .name = "ecdsa_brainpoolp320r1_sha384_1214", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1214_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1214_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1214_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1215 for ECDSA, tcId is 191 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1215_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1215_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1215 = { .name = "ecdsa_brainpoolp320r1_sha384_1215", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1215_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1215_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1215_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1216 for ECDSA, tcId is 194 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1216_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1216_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1216 = { .name = "ecdsa_brainpoolp320r1_sha384_1216", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1216_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1216_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1216_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1217 for ECDSA, tcId is 195 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1217_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1217_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1217 = { .name = "ecdsa_brainpoolp320r1_sha384_1217", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1217_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1217_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1217_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1218 for ECDSA, tcId is 196 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1218_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1218_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1218 = { .name = "ecdsa_brainpoolp320r1_sha384_1218", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1218_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1218_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1218_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1219 for ECDSA, tcId is 197 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1219_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1219_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1219 = { .name = "ecdsa_brainpoolp320r1_sha384_1219", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1219_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1219_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1219_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1220 for ECDSA, tcId is 198 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1220_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1220_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1220 = { .name = "ecdsa_brainpoolp320r1_sha384_1220", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1220_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1220_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1220_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1221 for ECDSA, tcId is 199 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1221_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1221_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1221 = { .name = "ecdsa_brainpoolp320r1_sha384_1221", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1221_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1221_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1221_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1222 for ECDSA, tcId is 200 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1222_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1222_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1222 = { .name = "ecdsa_brainpoolp320r1_sha384_1222", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1222_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1222_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1222_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1223 for ECDSA, tcId is 201 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1223_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1223_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1223 = { .name = "ecdsa_brainpoolp320r1_sha384_1223", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1223_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1223_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1223_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1224 for ECDSA, tcId is 204 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1224_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1224_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1224 = { .name = "ecdsa_brainpoolp320r1_sha384_1224", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1224_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1224_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1224_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1225 for ECDSA, tcId is 205 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1225_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1225_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1225 = { .name = "ecdsa_brainpoolp320r1_sha384_1225", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1225_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1225_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1225_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1226 for ECDSA, tcId is 206 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1226_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1226_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1226 = { .name = "ecdsa_brainpoolp320r1_sha384_1226", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1226_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1226_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1226_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1227 for ECDSA, tcId is 207 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1227_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1227_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1227 = { .name = "ecdsa_brainpoolp320r1_sha384_1227", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1227_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1227_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1227_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1228 for ECDSA, tcId is 208 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1228_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1228_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1228 = { .name = "ecdsa_brainpoolp320r1_sha384_1228", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1228_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1228_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1228_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1229 for ECDSA, tcId is 209 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1229_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1229_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1229 = { .name = "ecdsa_brainpoolp320r1_sha384_1229", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1229_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1229_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1229_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1230 for ECDSA, tcId is 210 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1230_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1230_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1230 = { .name = "ecdsa_brainpoolp320r1_sha384_1230", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1230_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1230_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1230_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1231 for ECDSA, tcId is 211 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1231_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1231_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1231 = { .name = "ecdsa_brainpoolp320r1_sha384_1231", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1231_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1231_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1231_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1232 for ECDSA, tcId is 214 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1232_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1232_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1232 = { .name = "ecdsa_brainpoolp320r1_sha384_1232", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1232_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1232_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1232_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1233 for ECDSA, tcId is 215 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1233_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1233_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1233 = { .name = "ecdsa_brainpoolp320r1_sha384_1233", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1233_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1233_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1233_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1234 for ECDSA, tcId is 216 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1234_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1234_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1234 = { .name = "ecdsa_brainpoolp320r1_sha384_1234", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1234_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1234_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1234_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1235 for ECDSA, tcId is 217 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1235_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1235_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1235 = { .name = "ecdsa_brainpoolp320r1_sha384_1235", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1235_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1235_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1235_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1236 for ECDSA, tcId is 218 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1236_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1236_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1236 = { .name = "ecdsa_brainpoolp320r1_sha384_1236", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1236_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1236_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1236_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1237 for ECDSA, tcId is 219 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1237_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1237_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1237 = { .name = "ecdsa_brainpoolp320r1_sha384_1237", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1237_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1237_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1237_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1238 for ECDSA, tcId is 220 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1238_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1238_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1238 = { .name = "ecdsa_brainpoolp320r1_sha384_1238", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1238_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1238_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1238_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1239 for ECDSA, tcId is 221 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1239_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1239_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1239 = { .name = "ecdsa_brainpoolp320r1_sha384_1239", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1239_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1239_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1239_sig, .siglen = 80, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1240 for ECDSA, tcId is 230 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1240_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1240_msg[] = { 0x37, 0x30, 0x37, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1240_sig[] = { 0x25, 0x16, 0x6f, 0x47, 0xac, 0x99, 0xc6, 0xbe, 0xc3, 0xb0, 0x38, 0x84, 0x9a, 0xb4, 0xea, 0xd3, 0xb2, 0x51, 0xf1, 0x8a, 0xfb, 0x0d, 0xa1, 0xda, 0x5c, 0xaa, 0x60, 0x4a, 0x92, 0xa9, 0x09, 0xc8, 0x56, 0x18, 0x17, 0x68, 0x4a, 0xbf, 0xfb, 0x92, 0x31, 0x07, 0xff, 0xd1, 0xaa, 0xdc, 0xe5, 0xb5, 0x8a, 0x2a, 0x1b, 0x95, 0x17, 0xcc, 0xed, 0xda, 0x09, 0x04, 0x33, 0xac, 0x63, 0x44, 0xb0, 0x27, 0xf3, 0x6f, 0xc6, 0xb3, 0x58, 0xef, 0x4a, 0x8e, 0x43, 0x6d, 0xf3, 0xfd, 0x05, 0x52, 0x16, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1240 = { .name = "ecdsa_brainpoolp320r1_sha384_1240", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1240_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1240_msg, .msglen = 5, .sig = ecdsa_brainpoolp320r1_sha384_1240_sig, .siglen = 80, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1241 for ECDSA, tcId is 231 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1241_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1241_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1241_sig[] = { 0x10, 0x3c, 0x3e, 0xf2, 0xb4, 0x3a, 0x8f, 0x57, 0xd0, 0x1e, 0x2d, 0xa6, 0x7e, 0xdf, 0xa0, 0x03, 0xa0, 0xd3, 0x42, 0xd7, 0xfb, 0xde, 0x05, 0x41, 0x33, 0x2b, 0x0b, 0x24, 0xde, 0xea, 0x76, 0xaf, 0xff, 0x4e, 0x2c, 0xd0, 0x57, 0x2d, 0x73, 0xbb, 0x0a, 0x0a, 0x68, 0x0e, 0xbe, 0x36, 0x44, 0xc4, 0x6b, 0x58, 0xd6, 0x7e, 0xd8, 0xee, 0x94, 0xf3, 0xaa, 0xee, 0x28, 0x39, 0xbc, 0x27, 0x0d, 0x6b, 0x93, 0x9b, 0xcb, 0x76, 0x57, 0xee, 0xeb, 0xbb, 0x6c, 0xcc, 0xf2, 0xbc, 0x54, 0xaf, 0x97, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1241 = { .name = "ecdsa_brainpoolp320r1_sha384_1241", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1241_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1241_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1241_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1242 for ECDSA, tcId is 232 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1242_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1242_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1242_sig[] = { 0x8c, 0x70, 0x21, 0x60, 0x94, 0xfe, 0xda, 0x4e, 0x72, 0x1a, 0x72, 0xd8, 0xa9, 0x1c, 0x51, 0xdd, 0x17, 0x39, 0x2c, 0xf4, 0xc4, 0x48, 0x1d, 0x7c, 0xd9, 0x4b, 0xe5, 0x6d, 0xa9, 0x94, 0xe5, 0xba, 0xaa, 0x56, 0x10, 0x85, 0xce, 0xcf, 0xe8, 0x0d, 0x1b, 0x19, 0xf7, 0xe8, 0x95, 0x25, 0x60, 0x18, 0x20, 0xbc, 0x17, 0xbd, 0x59, 0x5a, 0x7d, 0xbd, 0xef, 0x76, 0xe5, 0xb3, 0x52, 0xfc, 0xb1, 0x6c, 0x3a, 0x8a, 0x1c, 0x33, 0x2f, 0xf6, 0xa5, 0x30, 0x8f, 0xf4, 0x7a, 0x7e, 0x54, 0xe0, 0xb1, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1242 = { .name = "ecdsa_brainpoolp320r1_sha384_1242", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1242_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1242_msg, .msglen = 8, .sig = ecdsa_brainpoolp320r1_sha384_1242_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1243 for ECDSA, tcId is 233 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1243_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1243_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1243_sig[] = { 0xb4, 0xa4, 0xa0, 0x35, 0xdb, 0xea, 0xee, 0x12, 0x6d, 0x09, 0xc7, 0xb1, 0x58, 0x16, 0xb0, 0x4b, 0xc7, 0x17, 0xcb, 0x71, 0xbb, 0x5f, 0xe7, 0x64, 0x9a, 0xc0, 0x26, 0x26, 0x9b, 0x7f, 0xe6, 0xd5, 0x93, 0xfe, 0x1f, 0xf8, 0xfc, 0x52, 0x78, 0xa1, 0x63, 0x55, 0x16, 0xde, 0x53, 0x11, 0x04, 0xe7, 0x21, 0x76, 0xe8, 0x9a, 0x84, 0x50, 0x32, 0xb3, 0x09, 0x6e, 0x32, 0x69, 0xe4, 0x14, 0x31, 0xc1, 0x85, 0x4f, 0xbc, 0x43, 0x37, 0xba, 0x6f, 0xb5, 0xea, 0x91, 0xde, 0xfd, 0x33, 0x72, 0x9d, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1243 = { .name = "ecdsa_brainpoolp320r1_sha384_1243", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1243_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1243_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1243_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1244 for ECDSA, tcId is 234 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1244_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1244_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1244_sig[] = { 0x2a, 0x31, 0x03, 0xcd, 0xaa, 0xd1, 0xdd, 0x28, 0xec, 0xf8, 0x97, 0x49, 0x10, 0x51, 0xdd, 0x0a, 0x9c, 0x9d, 0xa9, 0x48, 0x37, 0x53, 0xc9, 0x34, 0x90, 0xb4, 0xa0, 0x5f, 0x1c, 0x42, 0xe1, 0x64, 0x29, 0x25, 0xa3, 0xa0, 0x15, 0x4d, 0x40, 0x62, 0x67, 0x29, 0x03, 0x24, 0x3b, 0x68, 0x58, 0xa5, 0xe0, 0x91, 0x48, 0xe4, 0x03, 0x46, 0x1f, 0x31, 0xc1, 0xff, 0x0e, 0x12, 0x6c, 0x36, 0x59, 0x42, 0xe0, 0x68, 0x0d, 0x31, 0x4c, 0x1a, 0x7a, 0x7c, 0x57, 0xe2, 0xf0, 0x52, 0x8c, 0x8c, 0xab, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1244 = { .name = "ecdsa_brainpoolp320r1_sha384_1244", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1244_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1244_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1244_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1245 for ECDSA, tcId is 235 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1245_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1245_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1245_sig[] = { 0xb8, 0x80, 0xb6, 0xbe, 0x2a, 0x12, 0x95, 0xaf, 0x38, 0x40, 0xa5, 0xf3, 0x74, 0xfe, 0x77, 0xcd, 0xe1, 0xff, 0xdd, 0x6d, 0xf3, 0xbb, 0x86, 0x09, 0x7d, 0x5c, 0xe1, 0x48, 0x52, 0xf7, 0x3a, 0x19, 0x25, 0xfa, 0x6d, 0x19, 0x2a, 0x27, 0xb7, 0x4c, 0xc2, 0xcb, 0x21, 0x13, 0x03, 0xae, 0xa0, 0x30, 0xa5, 0xb9, 0x2b, 0xe9, 0x8f, 0xc3, 0x67, 0x70, 0x82, 0x2f, 0x81, 0x95, 0xad, 0x73, 0xee, 0xe5, 0xa9, 0xbb, 0x87, 0xc5, 0x71, 0x7b, 0xa4, 0x34, 0x5c, 0xb6, 0x0b, 0x09, 0x9e, 0x4d, 0x4d, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1245 = { .name = "ecdsa_brainpoolp320r1_sha384_1245", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1245_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1245_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1245_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1246 for ECDSA, tcId is 236 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1246_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1246_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1246_sig[] = { 0x67, 0x7f, 0x84, 0xa0, 0x65, 0x37, 0x25, 0xb9, 0x4e, 0x4e, 0xed, 0xdb, 0xe0, 0xb7, 0x0a, 0xef, 0xdf, 0x59, 0x4f, 0x5e, 0xf9, 0xe4, 0x84, 0xb4, 0x06, 0x05, 0x67, 0xa8, 0x36, 0x5c, 0x43, 0xa7, 0x83, 0xd8, 0x15, 0x48, 0xd1, 0xf2, 0x74, 0x08, 0x4c, 0xb2, 0x4e, 0x15, 0x37, 0x5b, 0xda, 0xe0, 0xb4, 0x4b, 0x33, 0x6f, 0xc7, 0xe6, 0xc1, 0x18, 0x56, 0xd4, 0xc6, 0xf9, 0xdd, 0x7e, 0x83, 0x14, 0x8d, 0xc3, 0x87, 0xc4, 0xa8, 0x86, 0x9b, 0x11, 0x53, 0x8b, 0x7e, 0xe9, 0x4f, 0x05, 0x3f, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1246 = { .name = "ecdsa_brainpoolp320r1_sha384_1246", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1246_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1246_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1246_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1247 for ECDSA, tcId is 237 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1247_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1247_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1247_sig[] = { 0x9d, 0x5d, 0x98, 0x4c, 0x75, 0x44, 0xef, 0x73, 0x7a, 0x10, 0x01, 0xd6, 0x7f, 0x9d, 0xbb, 0xed, 0x52, 0x1b, 0x46, 0xf7, 0x4b, 0xc4, 0x68, 0xc0, 0x38, 0x81, 0xc2, 0xab, 0x59, 0x44, 0x63, 0x5a, 0xf5, 0x46, 0x5c, 0x3f, 0xa0, 0x1c, 0xf5, 0x1e, 0x0c, 0x70, 0x6d, 0xcf, 0xe1, 0x1a, 0x4e, 0x30, 0xd6, 0x23, 0x87, 0x0f, 0xb0, 0xf2, 0xb9, 0x79, 0xd0, 0xfd, 0x9d, 0xaa, 0x97, 0x0d, 0x86, 0xf6, 0x4b, 0xb4, 0x8f, 0x49, 0xaa, 0x48, 0x4d, 0x92, 0x4e, 0x9b, 0x93, 0xbc, 0xaf, 0x40, 0x69, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1247 = { .name = "ecdsa_brainpoolp320r1_sha384_1247", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1247_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1247_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1247_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1248 for ECDSA, tcId is 238 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1248_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1248_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1248_sig[] = { 0x44, 0x84, 0x64, 0xbe, 0xcc, 0x13, 0x52, 0x2c, 0x90, 0x70, 0x8a, 0xa5, 0x20, 0x49, 0x30, 0xe6, 0x76, 0xfe, 0xdf, 0xba, 0xef, 0xe8, 0xfe, 0x02, 0x50, 0x9a, 0x4f, 0xe8, 0x22, 0xcc, 0x88, 0xfd, 0x6d, 0x92, 0xa9, 0x58, 0x43, 0x8d, 0xed, 0x7c, 0x5d, 0xe6, 0x59, 0xe0, 0x80, 0xa6, 0x1c, 0x50, 0xb5, 0xb7, 0x48, 0x9f, 0x46, 0x77, 0xec, 0x4c, 0x69, 0x31, 0xfa, 0xaf, 0x17, 0x1f, 0x2a, 0x69, 0x75, 0x6e, 0x2f, 0x2d, 0x12, 0x14, 0x23, 0x5b, 0xdb, 0x1e, 0xa3, 0xd2, 0xa4, 0xa7, 0x53, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1248 = { .name = "ecdsa_brainpoolp320r1_sha384_1248", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1248_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1248_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1248_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1249 for ECDSA, tcId is 239 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1249_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1249_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1249_sig[] = { 0x59, 0xc0, 0xc9, 0x59, 0x41, 0xe1, 0xa5, 0x23, 0x90, 0xe0, 0x0c, 0x2d, 0x77, 0x96, 0xc6, 0x85, 0xdc, 0xc4, 0xd7, 0x3d, 0x6d, 0x69, 0x67, 0x59, 0x0a, 0xa1, 0x76, 0x7c, 0x97, 0x2e, 0x19, 0x9d, 0xe3, 0xc6, 0xdb, 0xfc, 0xa7, 0x7d, 0xca, 0xc8, 0x50, 0x7f, 0x27, 0xab, 0x5a, 0xc0, 0x5a, 0xd2, 0x3c, 0xb2, 0x5f, 0xc4, 0x8f, 0xfc, 0x76, 0x6d, 0xcb, 0x6d, 0xc0, 0xcd, 0x25, 0x60, 0x65, 0x05, 0xa2, 0xd2, 0x70, 0x06, 0x6c, 0x3a, 0x74, 0x84, 0x27, 0x68, 0xb5, 0x4a, 0xf2, 0xc8, 0x47, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1249 = { .name = "ecdsa_brainpoolp320r1_sha384_1249", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1249_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1249_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1249_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1250 for ECDSA, tcId is 240 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1250_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1250_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1250_sig[] = { 0x59, 0x90, 0x2d, 0x77, 0x63, 0xe7, 0xf1, 0x87, 0x5a, 0x42, 0x52, 0xd1, 0x33, 0xeb, 0x61, 0x14, 0xcf, 0xc1, 0x97, 0x2b, 0x68, 0x3a, 0xdf, 0xd7, 0x67, 0xa7, 0x1c, 0xa8, 0x0c, 0x3f, 0x78, 0x05, 0x7c, 0xea, 0x75, 0x9e, 0xa1, 0x95, 0xd3, 0x1e, 0x39, 0x7d, 0xea, 0xf9, 0x6e, 0x29, 0x03, 0xa2, 0x07, 0xf6, 0x8e, 0x53, 0x30, 0xc9, 0xf2, 0xc6, 0x27, 0x6a, 0x45, 0xd0, 0xfd, 0xba, 0x96, 0x1a, 0x04, 0xc2, 0x75, 0xfa, 0x20, 0x36, 0x78, 0x17, 0x62, 0x01, 0xed, 0x37, 0x09, 0x99, 0xa3, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1250 = { .name = "ecdsa_brainpoolp320r1_sha384_1250", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1250_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1250_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1250_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1251 for ECDSA, tcId is 241 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1251_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1251_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1251_sig[] = { 0xd1, 0x42, 0x21, 0x75, 0x84, 0xe8, 0x52, 0xa4, 0x99, 0xef, 0xa7, 0x34, 0xa1, 0x0a, 0x43, 0x6a, 0x39, 0x7b, 0xa7, 0xe0, 0x68, 0xad, 0x70, 0xf3, 0xee, 0xfc, 0x4d, 0x67, 0x31, 0xe7, 0x6a, 0x48, 0x1b, 0x26, 0x0e, 0xac, 0x1d, 0x21, 0x47, 0xf0, 0x17, 0xc8, 0x48, 0x26, 0x39, 0xdf, 0x8d, 0x20, 0xfc, 0xb8, 0x35, 0xbf, 0xe0, 0xf3, 0xec, 0xd2, 0x73, 0x17, 0xeb, 0x83, 0x15, 0xc6, 0x9b, 0x65, 0x6e, 0xbf, 0x13, 0x7d, 0xde, 0x65, 0x82, 0xf3, 0x40, 0x9d, 0x7c, 0x44, 0xa8, 0xb6, 0xe0, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1251 = { .name = "ecdsa_brainpoolp320r1_sha384_1251", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1251_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1251_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1251_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1252 for ECDSA, tcId is 242 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1252_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1252_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1252_sig[] = { 0x8a, 0x55, 0xfa, 0x49, 0x22, 0x45, 0x92, 0xf7, 0xe4, 0x03, 0xa4, 0xb3, 0xe6, 0x47, 0xbf, 0x38, 0x2a, 0x26, 0x49, 0x9b, 0x37, 0xec, 0x2c, 0xff, 0x51, 0xa2, 0xbe, 0x2a, 0x13, 0x57, 0x80, 0x7f, 0xe8, 0x75, 0x35, 0x9e, 0xc8, 0x65, 0x4f, 0x87, 0xb9, 0x50, 0x6e, 0x74, 0xaf, 0x8f, 0x55, 0x2d, 0x4a, 0xbb, 0x2c, 0x47, 0x2b, 0x85, 0x08, 0xce, 0x24, 0x81, 0x4e, 0x20, 0xb2, 0x7d, 0x19, 0x2e, 0x24, 0xd3, 0x6d, 0x5a, 0xc7, 0x51, 0x92, 0x2b, 0x0c, 0x80, 0x7b, 0xf9, 0x7a, 0x7b, 0x1a, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1252 = { .name = "ecdsa_brainpoolp320r1_sha384_1252", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1252_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1252_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1252_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1253 for ECDSA, tcId is 243 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1253_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1253_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1253_sig[] = { 0x68, 0xad, 0x2d, 0xa6, 0x43, 0xd6, 0x6f, 0xc5, 0xd2, 0x7b, 0x63, 0xd7, 0x22, 0x2f, 0x83, 0x5d, 0x09, 0xfe, 0x0b, 0x32, 0x8f, 0xc4, 0xda, 0x46, 0x84, 0xb8, 0x6d, 0x9c, 0x12, 0xb3, 0x99, 0x26, 0x26, 0xf6, 0x10, 0xe3, 0x39, 0x5e, 0x4e, 0xd0, 0x96, 0x62, 0xf7, 0x4d, 0x52, 0x71, 0x2a, 0x2a, 0xf5, 0x4f, 0x60, 0x1c, 0x44, 0x88, 0x93, 0x4f, 0xe2, 0x82, 0x6d, 0x50, 0xe1, 0xee, 0x86, 0x80, 0x22, 0x43, 0x7c, 0x9b, 0x62, 0x0c, 0x93, 0xd4, 0x3f, 0xc7, 0x50, 0xf0, 0x33, 0x12, 0x89, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1253 = { .name = "ecdsa_brainpoolp320r1_sha384_1253", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1253_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1253_msg, .msglen = 11, .sig = ecdsa_brainpoolp320r1_sha384_1253_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1254 for ECDSA, tcId is 244 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1254_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1254_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1254_sig[] = { 0x57, 0x8b, 0xdd, 0x50, 0xde, 0x99, 0x86, 0xfa, 0xd3, 0x41, 0xa9, 0x54, 0xe5, 0x11, 0x26, 0xff, 0x0c, 0xb5, 0x40, 0x02, 0x6a, 0xbb, 0x3d, 0x42, 0xb3, 0xc2, 0x08, 0xe4, 0xad, 0x18, 0x7f, 0x7b, 0xa2, 0xd9, 0x9b, 0x3e, 0xfe, 0x49, 0x5c, 0x92, 0xb9, 0x5a, 0xfd, 0x2d, 0x12, 0xcd, 0xee, 0x68, 0xc3, 0x57, 0x2a, 0x5f, 0xe1, 0x26, 0x33, 0x4e, 0xd0, 0xed, 0x7b, 0xa8, 0x2d, 0x30, 0x97, 0xea, 0xa6, 0xd9, 0xd7, 0x37, 0xc0, 0x9b, 0x83, 0x0b, 0x6c, 0xd3, 0xe8, 0x78, 0xf4, 0x70, 0xe7, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1254 = { .name = "ecdsa_brainpoolp320r1_sha384_1254", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1254_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1254_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1254_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1255 for ECDSA, tcId is 245 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1255_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1255_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1255_sig[] = { 0x9d, 0x61, 0x26, 0x63, 0x49, 0x7c, 0x48, 0x40, 0x84, 0xd3, 0xd1, 0x5d, 0x8e, 0x79, 0x9e, 0x1f, 0xe3, 0x8b, 0x7b, 0x59, 0x22, 0x95, 0x5f, 0xc5, 0xa7, 0xfe, 0xa4, 0xec, 0xfc, 0x41, 0x95, 0x4c, 0xa7, 0x07, 0x52, 0x5c, 0x1e, 0x0d, 0xc0, 0x10, 0x59, 0xe8, 0x0c, 0xf6, 0x9b, 0xe6, 0x87, 0x6b, 0x95, 0x35, 0x7d, 0xed, 0x13, 0xca, 0x61, 0xa4, 0x94, 0xfa, 0xc7, 0x35, 0x5a, 0xc2, 0xe8, 0x0a, 0x89, 0xbe, 0x02, 0x19, 0x55, 0x2d, 0x91, 0x68, 0x52, 0x63, 0x26, 0x17, 0xc0, 0x94, 0x6b, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1255 = { .name = "ecdsa_brainpoolp320r1_sha384_1255", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1255_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1255_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1255_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1256 for ECDSA, tcId is 246 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1256_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1256_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1256_sig[] = { 0xb4, 0xc0, 0x0f, 0x58, 0x9d, 0xbb, 0x51, 0xea, 0x68, 0x27, 0x0f, 0x4b, 0x02, 0xef, 0xf4, 0x8a, 0x4b, 0x12, 0x3c, 0x01, 0x67, 0xbb, 0xd2, 0x4d, 0xaf, 0x2a, 0x83, 0x79, 0x03, 0xe7, 0x34, 0x33, 0x9b, 0x8a, 0x25, 0x42, 0x04, 0x1f, 0x87, 0xaa, 0x94, 0xc3, 0x26, 0x34, 0xba, 0xea, 0x44, 0x52, 0xc0, 0x54, 0x29, 0x5d, 0x7a, 0xeb, 0xe2, 0x3b, 0xe7, 0xe8, 0x0a, 0xbb, 0xf5, 0x37, 0x89, 0x65, 0x16, 0x74, 0x18, 0x22, 0x63, 0xee, 0x5c, 0x29, 0x02, 0xfb, 0xfb, 0x3d, 0xf7, 0xda, 0x74, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1256 = { .name = "ecdsa_brainpoolp320r1_sha384_1256", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1256_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1256_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1256_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1257 for ECDSA, tcId is 247 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1257_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1257_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1257_sig[] = { 0xb9, 0x20, 0x1e, 0x49, 0x95, 0x0c, 0xe0, 0xd1, 0xdf, 0x64, 0x43, 0x56, 0x40, 0x5f, 0x0a, 0x78, 0x5a, 0x8b, 0x84, 0x70, 0xf8, 0x3e, 0x78, 0xa6, 0xf3, 0x5e, 0x62, 0x34, 0xda, 0xa9, 0x2a, 0x76, 0x85, 0x87, 0x7a, 0x59, 0xd8, 0xc9, 0x1a, 0x97, 0x8b, 0xee, 0x90, 0x77, 0x44, 0x3e, 0xed, 0xde, 0x34, 0xa2, 0xfc, 0x2c, 0x26, 0x6f, 0x18, 0x8e, 0x84, 0x4e, 0xab, 0x29, 0x04, 0xc8, 0x42, 0x04, 0xc8, 0x16, 0xba, 0x3c, 0xb1, 0xc4, 0xb9, 0xb2, 0x53, 0xd4, 0xa7, 0x8c, 0xe4, 0xe8, 0x11, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1257 = { .name = "ecdsa_brainpoolp320r1_sha384_1257", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1257_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1257_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1257_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1258 for ECDSA, tcId is 248 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1258_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1258_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1258_sig[] = { 0x0d, 0x42, 0xa1, 0x89, 0x9f, 0x73, 0xac, 0x70, 0xc9, 0x19, 0x25, 0x58, 0xb4, 0x78, 0xdb, 0x88, 0x03, 0xc6, 0x83, 0x37, 0xd4, 0x15, 0xfa, 0xeb, 0xab, 0x76, 0x85, 0x8c, 0x32, 0xa3, 0x7e, 0x39, 0x9f, 0x17, 0x27, 0xfd, 0x59, 0x9a, 0x18, 0x17, 0x36, 0x3f, 0x13, 0x46, 0xc0, 0x22, 0x7e, 0xc5, 0x4d, 0xa1, 0x65, 0x91, 0x65, 0xee, 0x7b, 0x07, 0xe0, 0x66, 0x10, 0xd3, 0x6b, 0x1c, 0xe6, 0x22, 0x6f, 0x60, 0x8b, 0xf6, 0xce, 0xf2, 0x14, 0x42, 0x48, 0xde, 0x37, 0x56, 0x2b, 0xe8, 0x53, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1258 = { .name = "ecdsa_brainpoolp320r1_sha384_1258", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1258_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1258_msg, .msglen = 8, .sig = ecdsa_brainpoolp320r1_sha384_1258_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1259 for ECDSA, tcId is 249 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1259_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1259_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1259_sig[] = { 0xc5, 0xd6, 0x5e, 0xff, 0xab, 0x2e, 0xc3, 0xe4, 0x43, 0x5c, 0x25, 0x81, 0x21, 0xc4, 0x93, 0xe2, 0x4a, 0xe9, 0x20, 0x05, 0xac, 0x80, 0x13, 0x6f, 0x21, 0xf2, 0xf4, 0x29, 0x46, 0xfc, 0x37, 0x45, 0x84, 0x1d, 0xbc, 0x2a, 0x3e, 0xb9, 0x96, 0x95, 0x85, 0xfe, 0xc2, 0xa9, 0x08, 0x0a, 0x1e, 0xce, 0x18, 0x89, 0x69, 0x70, 0xc9, 0xa2, 0xe1, 0xb3, 0x22, 0x40, 0xea, 0xf1, 0x87, 0xd6, 0x5f, 0x6f, 0x9e, 0x91, 0xd2, 0x71, 0x11, 0xc4, 0x03, 0x3d, 0x47, 0x1e, 0xda, 0x67, 0xeb, 0x89, 0x86, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1259 = { .name = "ecdsa_brainpoolp320r1_sha384_1259", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1259_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1259_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1259_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1260 for ECDSA, tcId is 250 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1260_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1260_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1260_sig[] = { 0xa2, 0x40, 0xad, 0xea, 0x61, 0xf7, 0x48, 0x99, 0x8d, 0xf2, 0xcd, 0xe9, 0x5b, 0xe9, 0xd7, 0xdf, 0x30, 0xf4, 0x54, 0xbd, 0xe5, 0xb9, 0x07, 0xec, 0x7d, 0xe6, 0xdc, 0xdb, 0x12, 0x1b, 0xea, 0x41, 0xbd, 0x42, 0xc4, 0x39, 0x24, 0x76, 0xc4, 0xf9, 0x3e, 0xf9, 0x91, 0xd6, 0x42, 0xbd, 0x02, 0x65, 0xb4, 0xa7, 0xb5, 0x21, 0xb2, 0x0a, 0x42, 0xfb, 0x2c, 0x68, 0x7c, 0xa2, 0xf0, 0x69, 0x4b, 0x23, 0x9a, 0x11, 0x3a, 0x83, 0x57, 0x5b, 0x57, 0x27, 0xdc, 0xb6, 0x32, 0x48, 0x2a, 0x57, 0x26, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1260 = { .name = "ecdsa_brainpoolp320r1_sha384_1260", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1260_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1260_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1260_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1261 for ECDSA, tcId is 251 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1261_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1261_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1261_sig[] = { 0xca, 0xd5, 0x2b, 0xdb, 0x35, 0xaf, 0x7e, 0xe0, 0xe8, 0xf6, 0x87, 0xc8, 0x1f, 0x2e, 0xdd, 0x8e, 0xfc, 0x2d, 0x6e, 0xe3, 0x17, 0xf3, 0xc6, 0xa8, 0x21, 0x21, 0x04, 0x8e, 0xf7, 0xa3, 0xff, 0x3b, 0x69, 0x18, 0x7a, 0xae, 0xa5, 0x3f, 0x49, 0x26, 0x58, 0xf8, 0x4e, 0x18, 0x66, 0x16, 0x54, 0x4a, 0xf4, 0x94, 0x90, 0x02, 0x41, 0xd2, 0xb8, 0x02, 0xdf, 0x2e, 0xae, 0x3e, 0x3f, 0x14, 0x10, 0x86, 0x5e, 0x4c, 0xd1, 0x6e, 0x22, 0x1f, 0x27, 0x7e, 0x7b, 0x50, 0x93, 0xff, 0x18, 0x6e, 0x4d, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1261 = { .name = "ecdsa_brainpoolp320r1_sha384_1261", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1261_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1261_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1261_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1262 for ECDSA, tcId is 252 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1262_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1262_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1262_sig[] = { 0x93, 0x01, 0x3f, 0xf8, 0x41, 0x51, 0xa0, 0x4e, 0xa1, 0x46, 0xa3, 0x6d, 0x2a, 0x3b, 0x9f, 0x49, 0x7b, 0xa5, 0xd9, 0x32, 0x30, 0x19, 0xb7, 0x30, 0xbe, 0x32, 0x2b, 0xc5, 0x19, 0xe2, 0x70, 0x1e, 0x3f, 0x0e, 0xc1, 0xb6, 0xc8, 0x01, 0x5e, 0x8f, 0x87, 0x26, 0x69, 0xf3, 0x3b, 0x9b, 0x4b, 0x93, 0x38, 0x4d, 0x9a, 0xc3, 0xf7, 0xc3, 0x09, 0x25, 0x60, 0xb9, 0xaf, 0x7e, 0x67, 0x38, 0x22, 0x1e, 0x3b, 0x28, 0x94, 0x21, 0x81, 0x36, 0x01, 0xfe, 0x56, 0x9b, 0x2c, 0x49, 0xaf, 0xec, 0x8b, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1262 = { .name = "ecdsa_brainpoolp320r1_sha384_1262", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1262_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1262_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1262_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1263 for ECDSA, tcId is 253 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1263_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1263_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1263_sig[] = { 0x26, 0x22, 0x8c, 0xdd, 0x2c, 0x08, 0xfb, 0xf8, 0xdd, 0x4a, 0xd5, 0xd2, 0xf8, 0x0e, 0xd1, 0x51, 0x29, 0x86, 0x8e, 0x89, 0x2d, 0x33, 0xcd, 0x89, 0x25, 0x03, 0x20, 0x7e, 0x91, 0x11, 0x4c, 0x86, 0x8d, 0x00, 0x64, 0xc6, 0x0f, 0x1b, 0xb6, 0x12, 0xaf, 0xde, 0xdc, 0x05, 0xf0, 0xb2, 0x7e, 0x93, 0x63, 0xc3, 0x4d, 0x9b, 0xd1, 0xbc, 0x64, 0xec, 0x01, 0x42, 0xfc, 0xd9, 0xf4, 0x0f, 0x35, 0x84, 0x60, 0x5b, 0xbc, 0xcf, 0x12, 0xb0, 0xe2, 0x79, 0xe4, 0xb3, 0xe3, 0xd0, 0x92, 0x7a, 0x48, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1263 = { .name = "ecdsa_brainpoolp320r1_sha384_1263", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1263_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1263_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1263_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1264 for ECDSA, tcId is 254 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1264_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1264_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1264_sig[] = { 0x73, 0x1d, 0x59, 0x7c, 0x36, 0x94, 0xa4, 0x93, 0x2f, 0x0f, 0x14, 0xfc, 0x31, 0x32, 0xd2, 0xba, 0x9f, 0x5b, 0x7d, 0x83, 0x3a, 0xe9, 0x1c, 0xbe, 0x9a, 0x45, 0x03, 0x52, 0xf4, 0x24, 0x0d, 0x5b, 0xb7, 0x12, 0xf6, 0x5b, 0x0e, 0xea, 0x04, 0x12, 0x1b, 0x8a, 0x6f, 0xc9, 0xbc, 0x1e, 0xcf, 0x8c, 0x09, 0xb1, 0xba, 0x27, 0xc4, 0xc8, 0xdc, 0xeb, 0xaf, 0x1e, 0x66, 0x9a, 0x89, 0x03, 0x6b, 0x34, 0xfa, 0x8f, 0xf5, 0x72, 0x80, 0xe5, 0x74, 0x19, 0x59, 0xe6, 0xc0, 0x5e, 0x05, 0x88, 0x0a, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1264 = { .name = "ecdsa_brainpoolp320r1_sha384_1264", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1264_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1264_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1264_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1265 for ECDSA, tcId is 255 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1265_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1265_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1265_sig[] = { 0xd2, 0xab, 0x69, 0xae, 0x61, 0x10, 0xbb, 0x67, 0xed, 0x99, 0xff, 0xbd, 0xad, 0x80, 0x36, 0xdf, 0xab, 0xc4, 0x6d, 0xe8, 0xae, 0x1f, 0xc7, 0xe7, 0x99, 0x98, 0x6b, 0x91, 0xba, 0x7d, 0x45, 0x46, 0x72, 0xeb, 0xe4, 0x89, 0x6c, 0xf7, 0x20, 0x11, 0xd2, 0x9d, 0x67, 0xbf, 0x2b, 0x88, 0x27, 0x70, 0xd4, 0x6d, 0xbd, 0x06, 0xa6, 0xfb, 0xaa, 0xd5, 0x83, 0xc2, 0xce, 0xed, 0xcb, 0xd7, 0x72, 0x20, 0x0b, 0x75, 0x32, 0xe3, 0x54, 0xf8, 0x6e, 0xaf, 0x9a, 0x94, 0x18, 0x19, 0x1e, 0xaf, 0xc5, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1265 = { .name = "ecdsa_brainpoolp320r1_sha384_1265", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1265_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1265_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1265_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1266 for ECDSA, tcId is 256 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1266_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1266_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1266_sig[] = { 0x81, 0xda, 0x10, 0xc5, 0xfe, 0xf4, 0xbf, 0xb5, 0x8b, 0x4a, 0x73, 0xb4, 0xcf, 0x3f, 0xd4, 0xf0, 0xf0, 0x28, 0xb4, 0x48, 0xb3, 0x46, 0x3d, 0xab, 0xe0, 0xd6, 0xf1, 0xe1, 0x01, 0xaf, 0x57, 0x0f, 0xa6, 0x41, 0x16, 0x73, 0x1e, 0xa5, 0xb9, 0xc2, 0xce, 0xac, 0x01, 0xeb, 0xad, 0x70, 0x6e, 0xf4, 0x3c, 0x80, 0xca, 0xa1, 0xd8, 0x96, 0x2c, 0x65, 0x5b, 0xfd, 0x81, 0x03, 0x96, 0xb9, 0x4d, 0x2b, 0xbe, 0xa2, 0x99, 0xbd, 0x5c, 0xbc, 0xce, 0xd7, 0x55, 0x62, 0xb0, 0xfa, 0xb4, 0x46, 0xff, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1266 = { .name = "ecdsa_brainpoolp320r1_sha384_1266", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1266_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1266_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1266_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1267 for ECDSA, tcId is 257 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1267_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1267_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1267_sig[] = { 0x38, 0x35, 0x8b, 0xa2, 0xc4, 0x6f, 0x61, 0xf3, 0x9b, 0xef, 0x22, 0x87, 0x3a, 0x5b, 0xf2, 0x64, 0x64, 0xf2, 0xb0, 0x5e, 0x48, 0x74, 0xbb, 0xb6, 0x2a, 0x23, 0x23, 0x38, 0x5f, 0x8e, 0x87, 0xa5, 0xb1, 0x18, 0xa0, 0x07, 0x90, 0x78, 0xb4, 0x4d, 0x93, 0xf8, 0x4f, 0x06, 0x29, 0x0f, 0x48, 0x16, 0x19, 0x22, 0x55, 0x25, 0x77, 0x48, 0x2a, 0x97, 0x34, 0x04, 0xf4, 0x7c, 0x84, 0xc6, 0xe1, 0xa9, 0x46, 0x43, 0xc3, 0x83, 0x2f, 0xb2, 0x91, 0x2f, 0xc4, 0xb3, 0x85, 0x29, 0xe2, 0xf1, 0x3e, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1267 = { .name = "ecdsa_brainpoolp320r1_sha384_1267", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1267_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1267_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1267_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1268 for ECDSA, tcId is 258 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1268_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1268_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1268_sig[] = { 0xaf, 0xd1, 0xfb, 0xa7, 0x00, 0xfc, 0x70, 0x3f, 0xb7, 0x72, 0xf7, 0x01, 0x59, 0x7a, 0xdd, 0xdc, 0xce, 0x4f, 0xf9, 0xf5, 0x30, 0xc8, 0x30, 0xdc, 0x8c, 0x8c, 0xbd, 0x4b, 0x30, 0x70, 0xf4, 0xa2, 0x2b, 0x80, 0x51, 0x6b, 0x0b, 0x82, 0x09, 0x70, 0x76, 0xc2, 0xe8, 0x90, 0x86, 0x0c, 0x36, 0xbb, 0xb5, 0xf6, 0xa1, 0x05, 0x34, 0x01, 0xf1, 0xb5, 0x1a, 0xa8, 0x3c, 0xdf, 0xd9, 0x6a, 0x3c, 0x15, 0xe1, 0xa1, 0x83, 0xfd, 0xf8, 0x35, 0x7e, 0x49, 0xd2, 0x98, 0x4e, 0x4f, 0xcf, 0x19, 0xc2, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1268 = { .name = "ecdsa_brainpoolp320r1_sha384_1268", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1268_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1268_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1268_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1269 for ECDSA, tcId is 259 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1269_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1269_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1269_sig[] = { 0x8c, 0x90, 0xd4, 0xc8, 0xbf, 0x02, 0x19, 0x06, 0xd3, 0xd5, 0x77, 0xbd, 0x16, 0xb3, 0xe1, 0x39, 0xbb, 0xc3, 0x5d, 0x76, 0x92, 0xa8, 0x28, 0xf0, 0xef, 0x5c, 0xdf, 0x9d, 0x51, 0xa8, 0x44, 0x22, 0x65, 0xf8, 0x15, 0x84, 0x9f, 0xe7, 0x93, 0xb8, 0x0b, 0xfe, 0x16, 0x49, 0x2a, 0xbb, 0x58, 0xa1, 0xd8, 0x06, 0x47, 0x67, 0x54, 0x6d, 0x29, 0xaa, 0xf6, 0x13, 0x8c, 0x58, 0x42, 0xc7, 0xf7, 0x00, 0x2f, 0xba, 0xc3, 0x4b, 0x78, 0xb3, 0x24, 0xb8, 0x44, 0x26, 0x51, 0x0c, 0x1b, 0x7b, 0x0d, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1269 = { .name = "ecdsa_brainpoolp320r1_sha384_1269", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1269_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1269_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1269_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1270 for ECDSA, tcId is 260 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1270_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1270_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1270_sig[] = { 0x6d, 0x07, 0xda, 0x92, 0xbd, 0x40, 0x59, 0x12, 0xb2, 0x2a, 0x99, 0x3e, 0xd3, 0x0e, 0x06, 0x14, 0x9c, 0x78, 0x74, 0x3f, 0xa1, 0x95, 0xfc, 0xd3, 0xba, 0xf0, 0x58, 0x03, 0xfd, 0xdd, 0x5a, 0x64, 0x08, 0x20, 0x1e, 0x68, 0xfa, 0xee, 0x62, 0x2a, 0x5a, 0xd3, 0xc8, 0xb4, 0xc1, 0xc6, 0x80, 0x80, 0x27, 0x9f, 0x20, 0xba, 0x15, 0x54, 0x83, 0x43, 0xfc, 0xa9, 0xec, 0x52, 0xfe, 0x23, 0xbd, 0xf5, 0x96, 0x19, 0x73, 0x8d, 0xd1, 0xbd, 0x41, 0x84, 0x14, 0xac, 0x53, 0xad, 0x7c, 0xe1, 0x6c, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1270 = { .name = "ecdsa_brainpoolp320r1_sha384_1270", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1270_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1270_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1270_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1271 for ECDSA, tcId is 261 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1271_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1271_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1271_sig[] = { 0xbe, 0x43, 0xdf, 0x61, 0x7f, 0x79, 0xef, 0x83, 0x40, 0x4e, 0x7c, 0x73, 0x93, 0xed, 0x3c, 0x38, 0xc8, 0x15, 0xd0, 0x6e, 0x3c, 0x0d, 0xeb, 0xf9, 0xba, 0x37, 0xf3, 0x6c, 0x41, 0x9a, 0x6c, 0x3e, 0xa6, 0x90, 0x82, 0x2f, 0x88, 0x01, 0x1f, 0xf1, 0x2f, 0x0a, 0xd4, 0xee, 0x5f, 0xe7, 0xad, 0x12, 0x8f, 0x58, 0xa5, 0x20, 0xa4, 0xfb, 0xad, 0x3f, 0x0a, 0x50, 0x2a, 0x4a, 0x44, 0x12, 0x63, 0x9b, 0x3d, 0xbc, 0x20, 0x6e, 0xdf, 0xb2, 0xa0, 0x3d, 0x56, 0x40, 0x10, 0xd7, 0x8d, 0x22, 0x28, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1271 = { .name = "ecdsa_brainpoolp320r1_sha384_1271", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1271_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1271_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1271_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1272 for ECDSA, tcId is 262 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1272_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1272_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1272_sig[] = { 0x84, 0x4c, 0xa2, 0x93, 0x40, 0x11, 0x2d, 0x0e, 0xb9, 0xdd, 0x15, 0xf6, 0x26, 0x55, 0xa0, 0xcf, 0xa9, 0x93, 0x41, 0x5e, 0x57, 0x05, 0x11, 0xa3, 0xf7, 0x27, 0x36, 0x23, 0xb8, 0x2d, 0x89, 0x2d, 0x13, 0x6c, 0x6e, 0x8b, 0xc5, 0x7d, 0xb8, 0x4e, 0x71, 0x11, 0x4a, 0xe5, 0x79, 0xd0, 0x53, 0xb5, 0xcb, 0x3d, 0x77, 0xd2, 0xe9, 0xfa, 0xf1, 0xc0, 0x6c, 0xc2, 0x63, 0xab, 0x8f, 0xd8, 0x45, 0xa0, 0x37, 0x8f, 0x4a, 0x75, 0xda, 0x86, 0xdd, 0xc2, 0x3a, 0xb4, 0xd0, 0x79, 0x46, 0x83, 0x2a, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1272 = { .name = "ecdsa_brainpoolp320r1_sha384_1272", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1272_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1272_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1272_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1273 for ECDSA, tcId is 263 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1273_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1273_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1273_sig[] = { 0xcd, 0xa8, 0x53, 0x12, 0x22, 0x50, 0x2a, 0x62, 0x36, 0x8f, 0xdd, 0xc7, 0x24, 0x79, 0x88, 0x70, 0x03, 0x83, 0x33, 0xb9, 0xfa, 0x77, 0x14, 0x1d, 0x4b, 0xc5, 0xef, 0x75, 0x8f, 0x7e, 0x97, 0x3e, 0x5a, 0xb8, 0xb4, 0xcf, 0xae, 0x90, 0xea, 0xa1, 0x9e, 0xad, 0x50, 0xa2, 0x53, 0x32, 0x87, 0xab, 0xe5, 0x50, 0x4e, 0xfd, 0x8d, 0xb5, 0x7f, 0x8b, 0x96, 0xa7, 0xfe, 0x03, 0x9c, 0xc9, 0x5d, 0x16, 0x90, 0xea, 0x0c, 0x1e, 0x2c, 0x9d, 0xf5, 0xfc, 0x29, 0xcd, 0xdd, 0x7b, 0x01, 0xed, 0xb9, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1273 = { .name = "ecdsa_brainpoolp320r1_sha384_1273", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1273_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1273_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1273_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1274 for ECDSA, tcId is 264 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1274_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1274_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1274_sig[] = { 0x5c, 0x2c, 0x6a, 0x66, 0x13, 0x38, 0xdf, 0x36, 0x5a, 0xf8, 0xba, 0x10, 0x80, 0xb9, 0x94, 0xe5, 0x99, 0x89, 0xf0, 0x02, 0xfa, 0x4f, 0xff, 0x42, 0xfc, 0x89, 0x94, 0xca, 0x63, 0x95, 0x62, 0x01, 0x52, 0xf3, 0x97, 0x13, 0x00, 0xaf, 0xf6, 0xf9, 0x86, 0x81, 0xea, 0x17, 0x93, 0xbd, 0x3e, 0x06, 0x94, 0x26, 0x12, 0x7a, 0x6b, 0x66, 0x57, 0x25, 0xdd, 0xba, 0x4a, 0x8f, 0x19, 0x45, 0x85, 0x17, 0x43, 0x47, 0x7a, 0x1c, 0xbd, 0xc7, 0x35, 0x67, 0x13, 0xae, 0x70, 0xfc, 0x13, 0x85, 0x31, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1274 = { .name = "ecdsa_brainpoolp320r1_sha384_1274", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1274_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1274_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1274_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1275 for ECDSA, tcId is 265 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1275_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1275_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1275_sig[] = { 0x0e, 0x06, 0x1b, 0x48, 0xb5, 0xf7, 0x83, 0x6e, 0x0c, 0xaf, 0x73, 0xc9, 0x77, 0x0c, 0x3f, 0xee, 0x1f, 0x67, 0xec, 0x18, 0xde, 0xd9, 0xe1, 0xd3, 0x39, 0xab, 0x56, 0xd0, 0x5b, 0x9a, 0xdd, 0xe3, 0x69, 0x50, 0x4f, 0xed, 0xff, 0x1d, 0x66, 0x81, 0x00, 0x9d, 0xbc, 0x4a, 0xd8, 0xed, 0xc1, 0x89, 0x6f, 0xa0, 0x41, 0xca, 0x60, 0xac, 0x64, 0xb7, 0xfa, 0x14, 0x8e, 0x3f, 0x02, 0xb0, 0xf6, 0x97, 0xae, 0x22, 0xd9, 0x23, 0xf5, 0x26, 0xfd, 0x49, 0x36, 0xe5, 0xf5, 0x84, 0xb2, 0x3d, 0xdb, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1275 = { .name = "ecdsa_brainpoolp320r1_sha384_1275", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1275_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1275_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1275_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1276 for ECDSA, tcId is 266 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1276_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1276_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1276_sig[] = { 0xa8, 0x46, 0x26, 0x05, 0xc7, 0x94, 0x37, 0xc0, 0x68, 0x52, 0x3d, 0x93, 0xd2, 0xe1, 0x52, 0x9c, 0xca, 0xe1, 0xb5, 0x24, 0x8e, 0x8f, 0x9a, 0x90, 0xf2, 0xef, 0x08, 0xd9, 0xd5, 0xe5, 0x02, 0x5b, 0x36, 0x39, 0xf8, 0x2b, 0x70, 0xf1, 0xe7, 0xed, 0x67, 0xaa, 0x5f, 0xe4, 0xe7, 0x9e, 0x7c, 0x54, 0xa8, 0xce, 0x38, 0x9b, 0x90, 0xe1, 0xce, 0x15, 0x56, 0xaa, 0x68, 0x9b, 0x44, 0x81, 0x4a, 0x6c, 0xb5, 0xc2, 0xf0, 0xfe, 0x45, 0x69, 0xc5, 0xcf, 0xce, 0xe3, 0x4c, 0xbb, 0x4a, 0x08, 0x62, 0x19, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1276 = { .name = "ecdsa_brainpoolp320r1_sha384_1276", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1276_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1276_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1276_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1277 for ECDSA, tcId is 267 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1277_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1277_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1277_sig[] = { 0x93, 0xb0, 0x10, 0x29, 0x42, 0x1c, 0xa3, 0x0d, 0x8a, 0xbb, 0xd0, 0x6f, 0x13, 0x4e, 0xe9, 0xdc, 0xbe, 0x81, 0x79, 0x0d, 0x01, 0x27, 0x22, 0xae, 0x65, 0x21, 0x4f, 0x0a, 0xaa, 0x34, 0xbb, 0xa6, 0x42, 0xf4, 0x39, 0x49, 0xd5, 0xec, 0x51, 0xa5, 0x11, 0x0e, 0x4f, 0xce, 0x36, 0xe0, 0xc2, 0xac, 0xd8, 0x98, 0x12, 0x2f, 0xba, 0x75, 0x6e, 0x71, 0x1a, 0xd0, 0x82, 0x08, 0x7c, 0x36, 0xb1, 0x25, 0x08, 0x4f, 0x67, 0xb2, 0x2e, 0x37, 0xa0, 0x2b, 0xd6, 0x86, 0x28, 0xcd, 0xb1, 0x64, 0xec, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1277 = { .name = "ecdsa_brainpoolp320r1_sha384_1277", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1277_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1277_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1277_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1278 for ECDSA, tcId is 268 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1278_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1278_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1278_sig[] = { 0x6b, 0x6d, 0x89, 0x3c, 0x30, 0x55, 0xda, 0x5d, 0x5a, 0x2f, 0xf6, 0xce, 0x03, 0x8a, 0x1b, 0xec, 0x59, 0xb0, 0x49, 0x50, 0xbf, 0xd8, 0x01, 0x26, 0x48, 0xd6, 0x06, 0x31, 0x86, 0xff, 0x86, 0x1d, 0x7a, 0xa9, 0x1a, 0x51, 0x85, 0xaa, 0x3c, 0x0c, 0xa6, 0x02, 0xed, 0x34, 0xee, 0x41, 0xe4, 0x81, 0x12, 0x51, 0xa5, 0x1b, 0xd6, 0x70, 0x10, 0xf8, 0xeb, 0x33, 0x55, 0xb8, 0x69, 0x1d, 0xad, 0x66, 0x03, 0x5e, 0x72, 0x3d, 0x97, 0x13, 0x46, 0xf5, 0x7c, 0x8a, 0x0f, 0x47, 0x9f, 0xef, 0x66, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1278 = { .name = "ecdsa_brainpoolp320r1_sha384_1278", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1278_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1278_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1278_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1279 for ECDSA, tcId is 269 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1279_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1279_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1279_sig[] = { 0x6f, 0xc4, 0x2c, 0xf2, 0x3a, 0xa4, 0x2c, 0x36, 0x67, 0x5f, 0xf1, 0x26, 0x41, 0x2c, 0x75, 0x7d, 0xde, 0x74, 0xef, 0x73, 0xca, 0xdb, 0x04, 0x25, 0xe2, 0x3c, 0xb7, 0x62, 0x30, 0xa5, 0x8b, 0x3d, 0x00, 0x23, 0x70, 0xb4, 0x16, 0x6b, 0xfd, 0x29, 0x4e, 0x61, 0xb9, 0xb1, 0x0a, 0x13, 0xfe, 0x0d, 0xd2, 0x75, 0x87, 0x33, 0xf6, 0xb1, 0x78, 0xaf, 0x98, 0xe0, 0x07, 0x98, 0x67, 0x83, 0x7d, 0x55, 0xf8, 0xe5, 0xe9, 0x0b, 0x57, 0x7d, 0xe9, 0x0c, 0xe0, 0xd8, 0xdc, 0x34, 0x5e, 0xd1, 0x6b, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1279 = { .name = "ecdsa_brainpoolp320r1_sha384_1279", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1279_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1279_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1279_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1280 for ECDSA, tcId is 270 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1280_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1280_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1280_sig[] = { 0xb5, 0x29, 0xa5, 0x63, 0xa2, 0xf4, 0x06, 0x5d, 0x33, 0x3c, 0x81, 0x2b, 0x0b, 0x61, 0x34, 0xde, 0x97, 0x35, 0xbb, 0x26, 0x9f, 0xea, 0x76, 0x3f, 0x01, 0xcf, 0x7d, 0x1c, 0x6a, 0x0e, 0xc7, 0x0d, 0x72, 0x23, 0xc7, 0xe6, 0xc1, 0xb0, 0x40, 0xe8, 0x34, 0x7f, 0xcb, 0x8f, 0x39, 0x71, 0xb3, 0xd9, 0x68, 0xba, 0x70, 0x9b, 0x1b, 0xd4, 0xd3, 0x1b, 0x55, 0x0c, 0xce, 0xed, 0x23, 0x22, 0x68, 0xca, 0x0d, 0xf1, 0xe0, 0x05, 0x02, 0xa5, 0x6a, 0xa4, 0x2d, 0xde, 0x73, 0x30, 0xbd, 0x91, 0x9d, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1280 = { .name = "ecdsa_brainpoolp320r1_sha384_1280", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1280_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1280_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1280_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1281 for ECDSA, tcId is 271 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1281_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1281_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1281_sig[] = { 0xb9, 0x1b, 0x2a, 0x73, 0x44, 0x95, 0x60, 0x52, 0x21, 0x12, 0xfa, 0x4f, 0xd1, 0xb5, 0x7b, 0x8c, 0x24, 0x75, 0x47, 0x91, 0xaf, 0x24, 0x7a, 0x8c, 0x9d, 0xe4, 0x23, 0xe0, 0xbd, 0x53, 0x62, 0x89, 0xa4, 0xfe, 0x85, 0x0f, 0x7e, 0x3c, 0x43, 0xae, 0x2e, 0xb3, 0xf8, 0x74, 0xf2, 0xe5, 0xec, 0x56, 0x35, 0x6b, 0xf6, 0xba, 0xf1, 0x0b, 0x64, 0xb7, 0xc5, 0x4b, 0x13, 0x44, 0x7c, 0xcc, 0xa1, 0xff, 0xc6, 0x6a, 0x1f, 0xc8, 0x9d, 0xc8, 0xe9, 0x77, 0x80, 0x17, 0x48, 0xf8, 0xf0, 0xce, 0x5a, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1281 = { .name = "ecdsa_brainpoolp320r1_sha384_1281", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1281_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1281_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1281_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1282 for ECDSA, tcId is 272 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1282_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1282_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1282_sig[] = { 0x31, 0x43, 0x38, 0x68, 0x3f, 0x23, 0xb1, 0x11, 0x0d, 0x18, 0x40, 0x73, 0x2f, 0x67, 0x22, 0x54, 0xf3, 0x80, 0x79, 0xbf, 0x11, 0xee, 0xaf, 0xff, 0x1e, 0xc2, 0xe5, 0x3a, 0x53, 0x73, 0xf7, 0x4c, 0x98, 0x88, 0x7b, 0x11, 0xeb, 0xb7, 0x8c, 0x86, 0xb7, 0xe3, 0xa6, 0xb4, 0x59, 0xdd, 0x10, 0xcf, 0xb5, 0xdf, 0x6d, 0x2e, 0xa7, 0xaf, 0xb1, 0x5e, 0xfe, 0xb1, 0xe5, 0xe9, 0x17, 0xe5, 0xaa, 0x44, 0xfa, 0x54, 0x74, 0x36, 0x89, 0xd7, 0xda, 0xf1, 0x63, 0xf9, 0x98, 0xe0, 0x57, 0x19, 0x12, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1282 = { .name = "ecdsa_brainpoolp320r1_sha384_1282", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1282_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1282_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1282_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1283 for ECDSA, tcId is 273 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1283_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1283_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1283_sig[] = { 0x22, 0xd1, 0x88, 0x1a, 0x94, 0xe1, 0xe1, 0x1c, 0xf1, 0x06, 0x20, 0xf3, 0x7d, 0x70, 0x8e, 0xbe, 0xd8, 0x47, 0xf1, 0x45, 0x91, 0x29, 0xa0, 0xd4, 0x2c, 0xb4, 0x57, 0xda, 0x80, 0x51, 0xf8, 0x1a, 0x0f, 0x9d, 0xa8, 0x46, 0x28, 0x1a, 0x68, 0xf7, 0x40, 0x46, 0x52, 0xeb, 0xd2, 0x61, 0xf5, 0xf6, 0xb1, 0x85, 0xde, 0x4a, 0x16, 0x98, 0x0d, 0xc3, 0x66, 0x2f, 0xc4, 0x57, 0x3e, 0x24, 0x55, 0x77, 0xe7, 0xef, 0x6e, 0x3c, 0xbf, 0xdd, 0x47, 0xbc, 0x1e, 0x48, 0x7b, 0xa2, 0x06, 0xcc, 0xf7, 0x60, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1283 = { .name = "ecdsa_brainpoolp320r1_sha384_1283", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1283_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1283_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1283_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1284 for ECDSA, tcId is 274 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1284_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1284_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1284_sig[] = { 0x86, 0x39, 0x70, 0xca, 0xec, 0x6c, 0x6f, 0xf0, 0xa1, 0xc7, 0x0f, 0x60, 0x85, 0x95, 0x76, 0xe3, 0x58, 0x3e, 0x6b, 0x52, 0x9d, 0xe3, 0xf9, 0x28, 0x13, 0x6e, 0x84, 0x8c, 0x56, 0xb6, 0xc6, 0x71, 0x50, 0x45, 0xfd, 0xfe, 0x52, 0x63, 0x77, 0x47, 0x66, 0x7f, 0x52, 0x5a, 0x88, 0xbe, 0x89, 0x1e, 0xc6, 0xb9, 0xf9, 0x6d, 0x1a, 0x68, 0xc4, 0xf0, 0x6b, 0x3b, 0x3d, 0x2a, 0xd1, 0xc1, 0x5f, 0x06, 0x3d, 0x11, 0x0e, 0xc9, 0xfb, 0x60, 0xae, 0x74, 0x63, 0xdd, 0x56, 0x8a, 0x69, 0xce, 0x45, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1284 = { .name = "ecdsa_brainpoolp320r1_sha384_1284", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1284_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1284_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1284_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1285 for ECDSA, tcId is 275 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1285_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1285_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1285_sig[] = { 0x69, 0xcf, 0x06, 0x00, 0x38, 0x4c, 0xeb, 0x83, 0x2e, 0x23, 0x7b, 0x6b, 0x45, 0x3d, 0xea, 0x81, 0xa3, 0xc1, 0x9c, 0xb8, 0xfa, 0xe4, 0x8b, 0xa1, 0x86, 0xd2, 0x8e, 0x3b, 0x11, 0x84, 0x64, 0xb2, 0x7a, 0xf9, 0x10, 0x0f, 0x18, 0x1b, 0x73, 0x8a, 0x27, 0x80, 0x26, 0x9a, 0x8f, 0xa4, 0x07, 0x90, 0xed, 0x72, 0x63, 0x72, 0xee, 0x09, 0x56, 0x26, 0x5e, 0x72, 0x89, 0x6d, 0x9e, 0x84, 0xf7, 0x13, 0xf8, 0x83, 0xa3, 0xbc, 0x05, 0x48, 0xe8, 0xd3, 0xa2, 0xb3, 0x57, 0x33, 0x3d, 0xda, 0x4c, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1285 = { .name = "ecdsa_brainpoolp320r1_sha384_1285", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1285_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1285_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1285_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1286 for ECDSA, tcId is 276 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1286_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1286_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1286_sig[] = { 0x30, 0xf3, 0x81, 0x39, 0x88, 0x3f, 0x71, 0xc0, 0xc6, 0x4d, 0x63, 0xad, 0xcb, 0x73, 0x1f, 0x1c, 0x38, 0x5d, 0xf8, 0x7d, 0xb7, 0xce, 0x73, 0x26, 0xbf, 0x50, 0x41, 0x0a, 0xcc, 0x50, 0xf0, 0xba, 0xbf, 0x50, 0x17, 0xf9, 0x2a, 0x1e, 0x1a, 0x6e, 0x59, 0x77, 0x34, 0x22, 0x24, 0x82, 0x72, 0x46, 0x43, 0xf6, 0x0e, 0x48, 0xb3, 0xb5, 0x89, 0xde, 0xaa, 0x37, 0xb8, 0x6e, 0x1d, 0xe1, 0xcf, 0x0b, 0x12, 0x9b, 0x28, 0x6e, 0xc6, 0x76, 0x86, 0x57, 0x4f, 0x16, 0xcf, 0xb5, 0xf2, 0xcc, 0x6f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1286 = { .name = "ecdsa_brainpoolp320r1_sha384_1286", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1286_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1286_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1286_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1287 for ECDSA, tcId is 277 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1287_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1287_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1287_sig[] = { 0x17, 0x4a, 0xe9, 0x8c, 0xc2, 0x5d, 0xbe, 0xd7, 0x47, 0xce, 0xdf, 0x86, 0x97, 0x26, 0x6d, 0x16, 0xe9, 0x6b, 0xb4, 0xf8, 0x07, 0x1c, 0x90, 0x59, 0x90, 0xf4, 0xe7, 0x2c, 0x72, 0x8c, 0x94, 0xaa, 0xa3, 0x2d, 0xce, 0x24, 0xa5, 0x21, 0x66, 0xfb, 0x57, 0x80, 0x99, 0x83, 0x5a, 0x3d, 0xcb, 0x3d, 0xa2, 0xfd, 0x42, 0x75, 0x01, 0x80, 0x07, 0x9d, 0xa4, 0x07, 0xc7, 0xa1, 0x42, 0xcb, 0xcc, 0xb6, 0x99, 0xfe, 0xd7, 0xaf, 0x89, 0xdd, 0x70, 0x3b, 0xa0, 0xca, 0xd9, 0x4c, 0xdf, 0x2c, 0x05, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1287 = { .name = "ecdsa_brainpoolp320r1_sha384_1287", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1287_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1287_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1287_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1288 for ECDSA, tcId is 278 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1288_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1288_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1288_sig[] = { 0x58, 0xcf, 0xb1, 0x51, 0x1a, 0x22, 0x3c, 0x06, 0xb3, 0xe9, 0x74, 0xb6, 0x60, 0xbe, 0xd8, 0x27, 0xbe, 0xe3, 0x8c, 0x59, 0xc4, 0x52, 0x30, 0x68, 0xe9, 0xc9, 0xfa, 0xa3, 0x30, 0xc9, 0x70, 0xe6, 0x27, 0x1e, 0xa3, 0x87, 0xdb, 0x6b, 0x40, 0xb0, 0x76, 0x35, 0x94, 0xce, 0xd6, 0xe8, 0x41, 0x3b, 0xfd, 0x90, 0xd5, 0xce, 0xca, 0x18, 0xd6, 0x77, 0x4a, 0x3d, 0xa8, 0x74, 0x73, 0xcc, 0x4d, 0xee, 0x72, 0x6b, 0x03, 0x25, 0xe2, 0xdf, 0x8b, 0x25, 0x7d, 0x9e, 0x01, 0x31, 0x8a, 0xe7, 0xe0, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1288 = { .name = "ecdsa_brainpoolp320r1_sha384_1288", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1288_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1288_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1288_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1289 for ECDSA, tcId is 279 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1289_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1289_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1289_sig[] = { 0x8d, 0xdb, 0xa4, 0xf7, 0xaa, 0x8c, 0xc5, 0xe0, 0x0a, 0x3f, 0xfd, 0x2a, 0x08, 0x27, 0x10, 0xd4, 0x2d, 0x3a, 0x88, 0xf9, 0xf9, 0x47, 0xba, 0x51, 0xf0, 0x94, 0x66, 0xc2, 0xa9, 0x29, 0x5c, 0xaa, 0x13, 0x1b, 0x8a, 0xe9, 0xef, 0x51, 0xb3, 0x5c, 0xbc, 0x34, 0x10, 0x03, 0x3a, 0x57, 0x98, 0xd9, 0xe4, 0xc6, 0xa8, 0x17, 0xda, 0x17, 0x59, 0xc0, 0x0c, 0x0d, 0x38, 0xe3, 0xc1, 0xff, 0x22, 0xf0, 0xa4, 0x1e, 0x5a, 0xd0, 0xd1, 0xe9, 0x14, 0xe7, 0x1c, 0x90, 0x7d, 0xa8, 0xc2, 0x45, 0xca, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1289 = { .name = "ecdsa_brainpoolp320r1_sha384_1289", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1289_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1289_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1289_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1290 for ECDSA, tcId is 280 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1290_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1290_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1290_sig[] = { 0x2f, 0x7e, 0x50, 0xee, 0x96, 0x70, 0x6d, 0x59, 0x7d, 0x8b, 0xf0, 0x10, 0x3f, 0xa4, 0x67, 0x86, 0x74, 0x6a, 0x2c, 0x65, 0xc0, 0x21, 0xfa, 0xc7, 0xfa, 0x37, 0x8d, 0x24, 0x4c, 0x41, 0x8a, 0x42, 0xb7, 0x90, 0x8f, 0x0f, 0xab, 0x2d, 0xff, 0xca, 0xb7, 0xb9, 0x4f, 0x2a, 0x88, 0x3b, 0xa1, 0xb4, 0x98, 0x58, 0x32, 0x9c, 0xc7, 0x8f, 0xc2, 0xa9, 0x92, 0x10, 0x98, 0x09, 0xb4, 0x70, 0xb8, 0x78, 0xcc, 0x38, 0xe1, 0xbd, 0xd4, 0xdf, 0x3e, 0xe0, 0x0a, 0x0a, 0xe7, 0xe2, 0x28, 0xe4, 0x66, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1290 = { .name = "ecdsa_brainpoolp320r1_sha384_1290", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1290_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1290_msg, .msglen = 11, .sig = ecdsa_brainpoolp320r1_sha384_1290_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1291 for ECDSA, tcId is 281 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1291_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1291_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1291_sig[] = { 0x45, 0x91, 0x49, 0x1e, 0xee, 0x04, 0xe1, 0x0a, 0x40, 0xa1, 0xe8, 0xeb, 0x82, 0x14, 0x81, 0x95, 0x12, 0x33, 0x48, 0xec, 0x1a, 0x7c, 0xba, 0x06, 0x04, 0x4e, 0x8f, 0x22, 0x6e, 0xd3, 0x09, 0x10, 0xb6, 0x93, 0xeb, 0xbb, 0xae, 0xe0, 0x68, 0x5f, 0x1b, 0x8b, 0x37, 0x33, 0xcc, 0x5c, 0xa1, 0x5d, 0xad, 0x84, 0x80, 0x9d, 0xf8, 0x49, 0x97, 0x88, 0xb4, 0x89, 0x9c, 0xba, 0x30, 0x7f, 0x93, 0xb4, 0x9e, 0xa6, 0xa6, 0x3b, 0x9e, 0x77, 0x48, 0x7c, 0x3c, 0x98, 0xb8, 0x03, 0xfc, 0xe6, 0x9c, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1291 = { .name = "ecdsa_brainpoolp320r1_sha384_1291", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1291_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1291_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1291_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1292 for ECDSA, tcId is 282 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1292_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1292_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1292_sig[] = { 0x9d, 0x22, 0xb8, 0x64, 0xe2, 0x70, 0x6f, 0xa4, 0x3a, 0x67, 0xea, 0x62, 0xf3, 0x9e, 0x4d, 0x3f, 0x40, 0x27, 0x67, 0xd9, 0xd0, 0x38, 0xc7, 0x8e, 0x28, 0x44, 0xd6, 0x99, 0xf4, 0x1e, 0xaf, 0x1a, 0x64, 0x1c, 0xfd, 0xd9, 0xd6, 0xa6, 0x3f, 0xb5, 0x1e, 0xaa, 0xcd, 0xad, 0x82, 0x94, 0xec, 0xc2, 0xca, 0x0c, 0x55, 0xe6, 0xe7, 0x3d, 0xf0, 0x3d, 0x83, 0x2b, 0xea, 0xfe, 0x04, 0x8f, 0xc6, 0x90, 0x89, 0x5b, 0xec, 0xa5, 0xce, 0xad, 0x9d, 0x01, 0xd3, 0x7b, 0x3f, 0xed, 0x57, 0x41, 0xcb, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1292 = { .name = "ecdsa_brainpoolp320r1_sha384_1292", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1292_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1292_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1292_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1293 for ECDSA, tcId is 283 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1293_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1293_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1293_sig[] = { 0x8f, 0x15, 0x02, 0x14, 0x3e, 0xff, 0x37, 0x2f, 0xb9, 0xbd, 0xd9, 0x56, 0xec, 0xe3, 0x5d, 0x23, 0x24, 0x03, 0xfe, 0xd7, 0xf7, 0x7e, 0xb4, 0xf4, 0x55, 0x2d, 0x4f, 0xc8, 0x4e, 0x4a, 0x2e, 0x5d, 0x6c, 0x8c, 0xcf, 0x06, 0xf5, 0xa6, 0xad, 0x61, 0x46, 0x21, 0xc9, 0xfb, 0xc3, 0x74, 0x66, 0xf7, 0xc7, 0x57, 0xf6, 0x6d, 0x17, 0x1d, 0xa8, 0xee, 0x0a, 0x0d, 0xd5, 0xf2, 0x41, 0x13, 0xe2, 0xf5, 0x17, 0xa0, 0x82, 0xb7, 0xab, 0x5d, 0x41, 0x23, 0xc3, 0xee, 0xc9, 0xee, 0xad, 0xf6, 0x99, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1293 = { .name = "ecdsa_brainpoolp320r1_sha384_1293", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1293_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1293_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1293_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1294 for ECDSA, tcId is 284 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1294_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1294_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1294_sig[] = { 0x8d, 0xcd, 0xcc, 0x74, 0xa2, 0x5f, 0xcd, 0x92, 0xe4, 0x37, 0x2e, 0x11, 0x36, 0x4a, 0x36, 0x1c, 0x7a, 0x2d, 0x7f, 0x3d, 0xd7, 0x4c, 0x5d, 0x6b, 0xc3, 0x76, 0x1c, 0x07, 0xfe, 0x78, 0xf0, 0x84, 0x76, 0x5d, 0xe8, 0xce, 0x70, 0xe4, 0x48, 0xfa, 0xb3, 0xcf, 0xdb, 0x35, 0xc2, 0x0b, 0x1e, 0x30, 0xd3, 0xc2, 0x16, 0xdc, 0xef, 0x3c, 0x73, 0xcd, 0x44, 0xef, 0x19, 0x73, 0xc8, 0x69, 0x5c, 0x8a, 0xb4, 0x39, 0xf7, 0xe2, 0x66, 0x28, 0x57, 0x4e, 0x0f, 0x34, 0x9d, 0x81, 0xc5, 0x98, 0xd1, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1294 = { .name = "ecdsa_brainpoolp320r1_sha384_1294", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1294_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1294_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1294_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1295 for ECDSA, tcId is 285 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1295_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1295_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1295_sig[] = { 0xbc, 0x2a, 0x5b, 0x09, 0x8f, 0x72, 0x48, 0x30, 0xa1, 0x90, 0x48, 0x0f, 0xff, 0x5f, 0xaf, 0xa0, 0xf2, 0xfe, 0x85, 0xbf, 0x17, 0x17, 0x6a, 0xf8, 0xd4, 0xeb, 0x67, 0x0e, 0x1d, 0x55, 0x53, 0x3f, 0x82, 0x0d, 0x69, 0x0e, 0x76, 0xb3, 0xbc, 0xcd, 0x51, 0x6c, 0x57, 0x64, 0x44, 0xbe, 0x02, 0x50, 0xe3, 0x38, 0x23, 0x30, 0x2a, 0xdb, 0x70, 0x8b, 0x66, 0x22, 0xf1, 0x7e, 0x24, 0x38, 0xf0, 0x18, 0x00, 0xc5, 0x8e, 0xdc, 0xf9, 0x07, 0xe5, 0x05, 0xb4, 0x19, 0xf6, 0xc0, 0xdf, 0xf1, 0x1a, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1295 = { .name = "ecdsa_brainpoolp320r1_sha384_1295", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1295_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1295_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1295_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1296 for ECDSA, tcId is 286 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1296_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1296_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1296_sig[] = { 0xb3, 0x20, 0x8e, 0x3c, 0x49, 0xa8, 0xce, 0x5f, 0xb8, 0x9e, 0xff, 0xb2, 0x48, 0x0e, 0x8c, 0xa6, 0xb9, 0xe1, 0x1b, 0x16, 0xa0, 0x49, 0xae, 0xcf, 0x0c, 0xe3, 0x54, 0x50, 0xe1, 0xe5, 0x35, 0x09, 0x90, 0x9b, 0x02, 0xab, 0x33, 0xe6, 0x63, 0xe2, 0x36, 0x2a, 0xff, 0xc0, 0x91, 0xfa, 0x46, 0xd7, 0x1a, 0xe8, 0x4e, 0x27, 0x97, 0x9a, 0xb5, 0x75, 0xc6, 0x0f, 0x11, 0x58, 0x45, 0xfc, 0x52, 0x1e, 0x0a, 0x81, 0x59, 0x1a, 0xb2, 0x33, 0xbd, 0x32, 0xe6, 0xab, 0x0e, 0x8b, 0x08, 0x80, 0x98, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1296 = { .name = "ecdsa_brainpoolp320r1_sha384_1296", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1296_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1296_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1296_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1297 for ECDSA, tcId is 287 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1297_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1297_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1297_sig[] = { 0x91, 0xcd, 0x13, 0x3d, 0x74, 0xc7, 0x01, 0xc9, 0x36, 0x75, 0x80, 0x54, 0x75, 0x35, 0x91, 0xd3, 0x1f, 0x1d, 0x85, 0x42, 0x13, 0xb4, 0x06, 0x7e, 0x03, 0x38, 0x80, 0x11, 0x6d, 0x46, 0x53, 0xcf, 0x25, 0x70, 0x15, 0x44, 0x5c, 0x55, 0x63, 0xea, 0x43, 0x18, 0x5b, 0x31, 0xdb, 0xee, 0x46, 0xdb, 0xb6, 0x2d, 0x1c, 0xda, 0xad, 0xf4, 0x79, 0xaa, 0x4f, 0x4b, 0x0b, 0x32, 0xdb, 0xc4, 0x9e, 0xf5, 0xcc, 0xad, 0x43, 0xc9, 0xf0, 0xfc, 0xd9, 0x4f, 0x06, 0xbd, 0xf6, 0x31, 0x5e, 0x67, 0xc7, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1297 = { .name = "ecdsa_brainpoolp320r1_sha384_1297", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1297_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1297_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1297_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1298 for ECDSA, tcId is 288 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1298_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1298_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1298_sig[] = { 0xc6, 0x3a, 0xc9, 0xad, 0xa6, 0xe0, 0xa0, 0x0d, 0xbd, 0xc1, 0x71, 0xf4, 0xce, 0xd1, 0xc1, 0x62, 0x94, 0x88, 0x1c, 0xd7, 0xb8, 0xcc, 0x91, 0xe6, 0x7d, 0x0f, 0x97, 0xf5, 0xa6, 0x19, 0x09, 0xac, 0x6a, 0x69, 0x4a, 0xb0, 0xb0, 0xd3, 0x7a, 0x6c, 0xb3, 0x3d, 0x68, 0x76, 0xf4, 0x46, 0x4e, 0x7a, 0xd8, 0xe2, 0x7a, 0x19, 0x5f, 0x63, 0xb4, 0x9f, 0xad, 0x3b, 0xe8, 0xf4, 0x68, 0x4f, 0x4c, 0x3d, 0x42, 0xf5, 0x89, 0x13, 0x94, 0x4a, 0xbc, 0x60, 0x17, 0x3e, 0x51, 0x13, 0x58, 0x1d, 0x94, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1298 = { .name = "ecdsa_brainpoolp320r1_sha384_1298", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1298_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1298_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1298_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1299 for ECDSA, tcId is 289 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1299_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1299_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1299_sig[] = { 0x48, 0x9d, 0xb4, 0x6f, 0x6a, 0xb8, 0x76, 0x24, 0xa3, 0x32, 0x37, 0x67, 0x35, 0xaa, 0xf8, 0xe6, 0xc4, 0xc4, 0x3a, 0xff, 0xdb, 0x9b, 0x93, 0xc7, 0x86, 0x82, 0xd3, 0xf9, 0x0c, 0x1e, 0x01, 0xca, 0xad, 0xbc, 0xac, 0x4c, 0x97, 0x5a, 0x22, 0x13, 0x8e, 0x10, 0xc6, 0x41, 0x16, 0xc4, 0x04, 0x2b, 0x71, 0xbd, 0x98, 0x72, 0xc0, 0x50, 0x6a, 0x7b, 0x34, 0xb6, 0xff, 0xfa, 0x9c, 0x3e, 0x24, 0xf8, 0x43, 0xce, 0x18, 0x27, 0x0e, 0x3f, 0x16, 0x36, 0x59, 0xdd, 0xc4, 0xa2, 0x46, 0x0a, 0x43, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1299 = { .name = "ecdsa_brainpoolp320r1_sha384_1299", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1299_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1299_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1299_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1300 for ECDSA, tcId is 290 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1300_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1300_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1300_sig[] = { 0x09, 0xf7, 0xe1, 0x03, 0x55, 0x03, 0x37, 0xe3, 0x6e, 0xa0, 0x9f, 0x9a, 0xb3, 0xb8, 0x35, 0x80, 0xdd, 0xc6, 0x25, 0x9f, 0xb9, 0xda, 0xf3, 0x8b, 0x42, 0x41, 0x75, 0xd6, 0x41, 0x34, 0xd1, 0x4c, 0xae, 0x31, 0x12, 0xbd, 0xdd, 0x7b, 0x21, 0xaf, 0x25, 0x37, 0x19, 0xf8, 0xce, 0x11, 0x61, 0x95, 0x98, 0x41, 0xb0, 0x6a, 0xe3, 0x1d, 0xc9, 0xd8, 0x4c, 0xf0, 0xdf, 0x90, 0xdf, 0xfc, 0x10, 0x1f, 0x04, 0x42, 0xc8, 0xe9, 0x8c, 0x04, 0x0e, 0x4d, 0x53, 0xf8, 0xec, 0xd7, 0x09, 0xb6, 0x20, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1300 = { .name = "ecdsa_brainpoolp320r1_sha384_1300", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1300_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1300_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1300_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1301 for ECDSA, tcId is 291 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1301_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1301_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1301_sig[] = { 0x41, 0x31, 0x07, 0x39, 0xde, 0x7f, 0x1e, 0x06, 0x16, 0x9f, 0x37, 0x5d, 0x73, 0xe0, 0x65, 0x50, 0xa5, 0x08, 0x50, 0xbe, 0x6a, 0xef, 0x43, 0x2e, 0xf2, 0x14, 0x3d, 0x7a, 0xdd, 0xfa, 0xf2, 0x18, 0xf6, 0x88, 0x36, 0x37, 0x59, 0x21, 0x00, 0x6e, 0x43, 0xc4, 0x59, 0x4e, 0x62, 0x5f, 0x7a, 0xaa, 0x75, 0x7e, 0xea, 0x84, 0x74, 0x51, 0xd0, 0x15, 0x5b, 0xd6, 0xb8, 0x20, 0x88, 0x33, 0x06, 0xb9, 0x21, 0x18, 0x4e, 0xc8, 0x14, 0x1c, 0xa2, 0xb8, 0xc2, 0x3b, 0x1d, 0xd6, 0x4b, 0x98, 0x0f, 0x97, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1301 = { .name = "ecdsa_brainpoolp320r1_sha384_1301", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1301_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1301_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1301_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1302 for ECDSA, tcId is 292 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1302_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1302_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1302_sig[] = { 0xcf, 0x06, 0x72, 0xd1, 0x8f, 0x93, 0xbd, 0x9c, 0x8c, 0x1c, 0x5e, 0x17, 0xd9, 0x0a, 0x91, 0x8c, 0x5c, 0xc8, 0xfd, 0xb9, 0x67, 0xf9, 0xd2, 0xad, 0x72, 0x7d, 0xd7, 0x2e, 0xc9, 0x92, 0x11, 0x67, 0x41, 0xb1, 0x75, 0xd3, 0x53, 0x93, 0x88, 0x5d, 0x02, 0x9e, 0x74, 0x7e, 0xa2, 0xc1, 0xd6, 0x6f, 0x1b, 0x4c, 0x5b, 0xe4, 0x92, 0xbd, 0x3b, 0x0c, 0xe0, 0x1e, 0x84, 0x20, 0xa6, 0x26, 0xa8, 0xa8, 0xe1, 0x25, 0xc3, 0xb5, 0x8c, 0x61, 0x4c, 0xab, 0x12, 0xe6, 0xed, 0xbf, 0xc1, 0x3f, 0x8a, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1302 = { .name = "ecdsa_brainpoolp320r1_sha384_1302", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1302_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1302_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1302_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1303 for ECDSA, tcId is 293 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1303_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1303_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1303_sig[] = { 0x2a, 0x24, 0x7a, 0x37, 0xc4, 0x89, 0x97, 0x4e, 0xd8, 0x94, 0x6e, 0x5e, 0x8b, 0xd5, 0xa9, 0xd2, 0x98, 0xd7, 0xaf, 0xcc, 0x41, 0x6b, 0x5e, 0xfc, 0x3a, 0x9c, 0x69, 0xba, 0x61, 0xd6, 0x53, 0x8a, 0xd5, 0x29, 0x47, 0x75, 0xd1, 0xc2, 0xa4, 0x79, 0x48, 0xf5, 0x71, 0x6a, 0xb8, 0xb4, 0x09, 0xf2, 0x84, 0x35, 0x10, 0x51, 0xdc, 0xd2, 0x22, 0xcc, 0x5e, 0xc4, 0xf1, 0xb8, 0xc7, 0x17, 0x08, 0xb1, 0xe8, 0x5e, 0xd4, 0xdb, 0x1e, 0xce, 0xc7, 0x38, 0x88, 0xbd, 0x8f, 0x78, 0xc1, 0xe7, 0x4d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1303 = { .name = "ecdsa_brainpoolp320r1_sha384_1303", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1303_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1303_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1303_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1304 for ECDSA, tcId is 294 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1304_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1304_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1304_sig[] = { 0x7a, 0x2d, 0x71, 0xce, 0x07, 0x4e, 0xaa, 0xa4, 0xdf, 0xf6, 0xd1, 0x04, 0xfb, 0x6e, 0x7b, 0x07, 0x0c, 0xb0, 0x9c, 0x23, 0x5d, 0xeb, 0x69, 0x7f, 0x53, 0x34, 0x91, 0x8e, 0x18, 0x1c, 0xe9, 0xbb, 0xe5, 0x47, 0xb7, 0x9a, 0xb3, 0x79, 0x69, 0xf1, 0x6d, 0xc1, 0x4d, 0x2b, 0xfa, 0x01, 0xe0, 0xcb, 0x36, 0x87, 0x8d, 0x1a, 0xef, 0x21, 0x6d, 0xf9, 0x92, 0xb5, 0xc3, 0xf0, 0x58, 0xfa, 0xb8, 0xce, 0x92, 0x22, 0x49, 0xb5, 0x9c, 0xb7, 0x25, 0x56, 0x36, 0x41, 0x38, 0x38, 0x95, 0x61, 0xaf, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1304 = { .name = "ecdsa_brainpoolp320r1_sha384_1304", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1304_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1304_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1304_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1305 for ECDSA, tcId is 295 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1305_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1305_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1305_sig[] = { 0x85, 0x1f, 0x1d, 0x14, 0x83, 0x71, 0x9c, 0xd1, 0x83, 0x94, 0x0c, 0xf4, 0xe9, 0xeb, 0x30, 0xea, 0xdd, 0xe6, 0x99, 0xd8, 0xba, 0x80, 0x90, 0xe2, 0x16, 0x12, 0x3f, 0xf6, 0x1e, 0x41, 0xd1, 0x66, 0x50, 0x5a, 0x59, 0x1a, 0x75, 0xda, 0xc6, 0xce, 0x29, 0x2a, 0x45, 0xf3, 0x1e, 0xf3, 0x4b, 0xf3, 0x4c, 0x3c, 0xcf, 0xd4, 0xa2, 0x2a, 0xdc, 0x4c, 0xc1, 0x9c, 0x41, 0x61, 0x51, 0xf7, 0x0e, 0x95, 0xad, 0x19, 0x99, 0x9f, 0x9c, 0x59, 0x68, 0x5e, 0x5f, 0xd9, 0x07, 0x9a, 0x27, 0xb8, 0x6f, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1305 = { .name = "ecdsa_brainpoolp320r1_sha384_1305", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1305_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1305_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1305_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1306 for ECDSA, tcId is 296 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1306_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1306_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1306_sig[] = { 0x06, 0x1d, 0xf3, 0x26, 0xb4, 0x3a, 0xd7, 0xaa, 0x7b, 0xc4, 0xaf, 0x8f, 0x3a, 0x58, 0x30, 0xbb, 0x0e, 0x63, 0x29, 0x7c, 0xf6, 0x90, 0xec, 0x60, 0xa7, 0x25, 0x9a, 0x94, 0x2d, 0xce, 0x63, 0x1e, 0x66, 0x76, 0x74, 0x2a, 0xd1, 0x28, 0x30, 0xcf, 0x0e, 0x88, 0x67, 0x52, 0x28, 0xb7, 0xfa, 0x47, 0x43, 0xab, 0x53, 0xd2, 0x48, 0x65, 0x19, 0x37, 0x42, 0xcd, 0x6c, 0x5d, 0xb2, 0x18, 0xdd, 0xe0, 0x04, 0x4b, 0x30, 0x16, 0x54, 0xbb, 0xab, 0x63, 0x9a, 0xbc, 0x77, 0x5a, 0xae, 0x69, 0x06, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1306 = { .name = "ecdsa_brainpoolp320r1_sha384_1306", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1306_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1306_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1306_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1307 for ECDSA, tcId is 297 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1307_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1307_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1307_sig[] = { 0x56, 0x0e, 0x6e, 0x54, 0x14, 0x41, 0x4d, 0xbb, 0xd6, 0xe9, 0xd4, 0x05, 0x22, 0xc9, 0xf3, 0xfc, 0xe6, 0x65, 0xc4, 0x45, 0x5e, 0xae, 0x07, 0xea, 0xfa, 0x37, 0x24, 0xd7, 0x08, 0x68, 0x93, 0x15, 0xf6, 0xc7, 0x51, 0x5c, 0xfe, 0x1a, 0xed, 0xbf, 0xa3, 0xe6, 0x19, 0xbf, 0x5f, 0x9d, 0x77, 0x6a, 0x59, 0x1f, 0xf7, 0x4a, 0x92, 0x52, 0xe4, 0x3b, 0xd0, 0x4a, 0xe1, 0xf1, 0xc3, 0x4f, 0xe5, 0xb8, 0x4f, 0x04, 0xc3, 0xd9, 0xc9, 0x72, 0xa8, 0x0e, 0x18, 0x78, 0x88, 0xba, 0xde, 0x5a, 0xa9, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1307 = { .name = "ecdsa_brainpoolp320r1_sha384_1307", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1307_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1307_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1307_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1308 for ECDSA, tcId is 298 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1308_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1308_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1308_sig[] = { 0x34, 0xf9, 0xde, 0xf6, 0xf2, 0x1f, 0x53, 0x28, 0xd1, 0xc5, 0xe3, 0x49, 0x85, 0x7f, 0x3a, 0x70, 0x08, 0xf0, 0xaf, 0xa5, 0xbb, 0xcb, 0x89, 0x6f, 0xf6, 0x24, 0x7b, 0x21, 0xa4, 0xab, 0xac, 0x7a, 0xed, 0xad, 0xa6, 0x4f, 0xa2, 0x3f, 0x95, 0x6e, 0xcb, 0x44, 0xdb, 0xc5, 0x3b, 0x0b, 0x0b, 0x43, 0xd6, 0xb1, 0x58, 0xd9, 0x02, 0x47, 0x20, 0x9c, 0x2c, 0x74, 0x15, 0x2c, 0x4e, 0x19, 0xa1, 0xc7, 0x03, 0x57, 0x7c, 0xf4, 0x07, 0xad, 0xa1, 0x4b, 0x19, 0x8b, 0xde, 0x1b, 0xa7, 0x9a, 0x34, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1308 = { .name = "ecdsa_brainpoolp320r1_sha384_1308", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1308_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1308_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1308_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1309 for ECDSA, tcId is 299 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1309_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1309_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1309_sig[] = { 0x97, 0x21, 0xd7, 0x99, 0x1f, 0x29, 0x68, 0xc2, 0x38, 0x56, 0xa0, 0x75, 0xe8, 0x6b, 0x70, 0xa3, 0x9f, 0x4a, 0xa3, 0x0f, 0xd6, 0x87, 0x77, 0xdb, 0xbf, 0x46, 0xc1, 0xd3, 0x7c, 0xc3, 0xbe, 0x44, 0x97, 0xcb, 0x47, 0x14, 0xb2, 0xf1, 0x65, 0x6a, 0x0a, 0xa3, 0x4e, 0x85, 0x81, 0x75, 0xfe, 0xf3, 0xc0, 0x73, 0x4c, 0x5c, 0x7c, 0x4c, 0xcd, 0x04, 0x59, 0x92, 0x7b, 0x0f, 0x72, 0x2e, 0x86, 0xaf, 0x6c, 0x40, 0x45, 0x75, 0x2b, 0x4b, 0xa1, 0x54, 0xe7, 0x25, 0x94, 0x63, 0x19, 0xdc, 0x42, 0x74, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1309 = { .name = "ecdsa_brainpoolp320r1_sha384_1309", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1309_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1309_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1309_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1310 for ECDSA, tcId is 300 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1310_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1310_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1310_sig[] = { 0xae, 0xc9, 0x21, 0x08, 0x75, 0x1a, 0xfc, 0x4a, 0x0c, 0x62, 0xa9, 0xda, 0x21, 0x63, 0xbb, 0x52, 0xbd, 0xab, 0xb9, 0xe7, 0xa8, 0xb5, 0x66, 0xca, 0x8d, 0x30, 0xfa, 0xc3, 0x89, 0xc6, 0x8a, 0x38, 0x17, 0xd2, 0x1a, 0x33, 0xdf, 0x2f, 0x68, 0xda, 0xbe, 0xfb, 0xac, 0xfb, 0x03, 0x95, 0x7c, 0x93, 0x78, 0x90, 0x3c, 0xf9, 0xb4, 0x32, 0x09, 0x3f, 0x78, 0x95, 0x4e, 0x52, 0x24, 0x30, 0x36, 0x11, 0xe9, 0xe9, 0x6c, 0x92, 0xa7, 0x67, 0x04, 0xe3, 0xa6, 0x43, 0x2a, 0x24, 0x41, 0x3b, 0xd2, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1310 = { .name = "ecdsa_brainpoolp320r1_sha384_1310", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1310_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1310_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1310_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1311 for ECDSA, tcId is 301 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1311_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1311_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1311_sig[] = { 0x6e, 0x85, 0x26, 0x89, 0xb9, 0x04, 0x51, 0xa1, 0x59, 0x2f, 0xad, 0x58, 0x5e, 0xa5, 0x7c, 0x71, 0xeb, 0x5b, 0x44, 0x61, 0x96, 0xc0, 0x7d, 0xcf, 0x45, 0x09, 0x72, 0xad, 0x13, 0xfd, 0xcd, 0x81, 0x17, 0x31, 0x9e, 0xec, 0x75, 0xd0, 0x78, 0x1f, 0x36, 0x08, 0xd1, 0x1f, 0x0b, 0x8e, 0xb7, 0x73, 0xb3, 0x58, 0x78, 0xcc, 0x43, 0xea, 0x95, 0xfb, 0x4d, 0x35, 0x4a, 0xb0, 0xff, 0xec, 0x9f, 0x78, 0x5a, 0x41, 0xa1, 0x7e, 0xbc, 0xf8, 0xf7, 0xd9, 0x57, 0xf7, 0x93, 0x47, 0x9a, 0xe8, 0x99, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1311 = { .name = "ecdsa_brainpoolp320r1_sha384_1311", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1311_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1311_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1311_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1312 for ECDSA, tcId is 302 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1312_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1312_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1312_sig[] = { 0xa3, 0x4e, 0xbb, 0x41, 0x33, 0x6c, 0x25, 0x2a, 0x05, 0x60, 0x97, 0x98, 0x3d, 0x56, 0xde, 0xdd, 0x1e, 0xda, 0x04, 0x2c, 0x73, 0x78, 0xb8, 0xb5, 0x6d, 0x90, 0x5a, 0xa9, 0xbe, 0x1d, 0x7f, 0x6a, 0xfb, 0x60, 0x54, 0x66, 0xc0, 0x02, 0x6c, 0x44, 0x41, 0x4c, 0x12, 0xe2, 0xa9, 0x7f, 0x8e, 0x42, 0x7e, 0xe9, 0xbd, 0x95, 0xe1, 0x5b, 0xd5, 0xc1, 0x0c, 0x16, 0xc1, 0xee, 0xa6, 0x01, 0x1f, 0x01, 0xf2, 0x71, 0xfe, 0x75, 0x86, 0x9a, 0x60, 0x00, 0xfb, 0xfb, 0xc2, 0x5a, 0x6d, 0x1f, 0x85, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1312 = { .name = "ecdsa_brainpoolp320r1_sha384_1312", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1312_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1312_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1312_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1313 for ECDSA, tcId is 303 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1313_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1313_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1313_sig[] = { 0x1c, 0xf2, 0x7f, 0xa9, 0x6f, 0x13, 0x7e, 0x0f, 0xbc, 0xe4, 0xda, 0x47, 0x6b, 0xdb, 0x5c, 0x3b, 0x87, 0x5b, 0x7f, 0xb4, 0x55, 0xfc, 0xfe, 0x7e, 0xfd, 0x86, 0x3c, 0xb8, 0xed, 0x61, 0x09, 0x0f, 0x6c, 0xf6, 0xa2, 0xb9, 0x27, 0xfa, 0xbb, 0xdb, 0x94, 0x5b, 0xc7, 0xe4, 0xf3, 0x19, 0x00, 0x4b, 0x2e, 0xf4, 0xce, 0x2f, 0xa2, 0xef, 0x27, 0x0c, 0x4a, 0xbc, 0x36, 0x0e, 0x21, 0xd8, 0xf8, 0xb2, 0x10, 0x74, 0x08, 0x0e, 0xe8, 0xa3, 0x42, 0x21, 0x37, 0xc9, 0x6f, 0x82, 0xe2, 0x6c, 0xfa, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1313 = { .name = "ecdsa_brainpoolp320r1_sha384_1313", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1313_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1313_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1313_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1314 for ECDSA, tcId is 304 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1314_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1314_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1314_sig[] = { 0xcd, 0xb4, 0xf0, 0xb7, 0xf7, 0xde, 0x92, 0xec, 0x59, 0xa2, 0xe0, 0xa1, 0x90, 0x03, 0x18, 0xbd, 0xd6, 0x49, 0x15, 0x5b, 0xcd, 0x3e, 0x09, 0x14, 0x13, 0x6a, 0x7c, 0x46, 0xc5, 0xe4, 0xbf, 0xd8, 0x42, 0x31, 0xc0, 0x4d, 0x64, 0xcc, 0x5c, 0x53, 0x7b, 0x0e, 0xe0, 0xd7, 0xb7, 0x77, 0x3c, 0x3b, 0xcd, 0x59, 0x21, 0x23, 0x9f, 0x36, 0xb0, 0x93, 0xbd, 0x23, 0x28, 0x59, 0xd6, 0x85, 0x92, 0x0e, 0xaf, 0xf5, 0x3a, 0x91, 0xff, 0x71, 0x88, 0x34, 0x4a, 0x30, 0x75, 0xfe, 0x7f, 0x34, 0x2c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1314 = { .name = "ecdsa_brainpoolp320r1_sha384_1314", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1314_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1314_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1314_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1315 for ECDSA, tcId is 305 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1315_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1315_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1315_sig[] = { 0xaa, 0x8e, 0xf3, 0x3f, 0x59, 0x50, 0x8e, 0xa9, 0x61, 0x7a, 0x41, 0x08, 0x4a, 0x35, 0x32, 0xe1, 0x17, 0x9d, 0x0f, 0x57, 0x55, 0xe0, 0x82, 0x77, 0xa5, 0x68, 0x19, 0x22, 0x72, 0xce, 0xc6, 0x3f, 0x91, 0x03, 0x77, 0xa8, 0x71, 0x02, 0x1c, 0x7e, 0x70, 0x87, 0x51, 0xc6, 0x28, 0x4f, 0x7c, 0x3c, 0xfc, 0x57, 0xa5, 0x98, 0xc1, 0x19, 0x9c, 0x1c, 0xfc, 0xb3, 0xd2, 0x6e, 0x45, 0x46, 0x48, 0x4d, 0xe5, 0x52, 0x28, 0xc2, 0x92, 0xbc, 0xa9, 0x78, 0xea, 0x76, 0x98, 0xd3, 0xf7, 0xd8, 0x06, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1315 = { .name = "ecdsa_brainpoolp320r1_sha384_1315", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1315_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1315_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1315_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1316 for ECDSA, tcId is 306 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1316_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1316_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1316_sig[] = { 0x7d, 0x57, 0xfe, 0x00, 0x6a, 0x05, 0x63, 0xd5, 0x57, 0x0a, 0xcb, 0xca, 0xbd, 0xf9, 0x4e, 0xd5, 0x15, 0x02, 0x9f, 0x52, 0xe0, 0x22, 0x98, 0xc7, 0x9c, 0x98, 0x91, 0x18, 0x1b, 0xd8, 0xb4, 0x97, 0x4d, 0xde, 0x57, 0x65, 0x43, 0x3d, 0x89, 0xcb, 0x3b, 0xe8, 0x3d, 0x7d, 0xc7, 0xa5, 0xdc, 0x1a, 0x15, 0x1f, 0x2b, 0x09, 0x57, 0xf6, 0x78, 0xb9, 0xef, 0xca, 0x3d, 0x08, 0x18, 0xec, 0x35, 0x92, 0x02, 0xd9, 0xa4, 0xcf, 0xe7, 0x92, 0xe9, 0x59, 0x24, 0xbe, 0x9e, 0x36, 0xe2, 0x0e, 0xf9, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1316 = { .name = "ecdsa_brainpoolp320r1_sha384_1316", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1316_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1316_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1316_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1317 for ECDSA, tcId is 307 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1317_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1317_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1317_sig[] = { 0x99, 0x8c, 0x25, 0x1f, 0x0c, 0x1f, 0x96, 0x23, 0x98, 0x0c, 0x1c, 0xff, 0x0e, 0x36, 0x9c, 0x7b, 0x0a, 0x38, 0x3f, 0xc7, 0x40, 0x79, 0x11, 0x31, 0x21, 0xf9, 0x82, 0xbf, 0xe7, 0xb8, 0x7f, 0x17, 0xb4, 0x8e, 0x5c, 0xdd, 0x29, 0xb0, 0xe1, 0xc0, 0xd0, 0xd3, 0x3d, 0x8b, 0xe8, 0xc3, 0x7f, 0xb4, 0x9c, 0x4f, 0x49, 0xce, 0xee, 0x32, 0x11, 0x86, 0xff, 0x30, 0xb9, 0x95, 0x0a, 0x70, 0x6c, 0x6f, 0xdd, 0xd1, 0x05, 0x47, 0x72, 0xaf, 0x3c, 0x32, 0x66, 0xfb, 0x28, 0x66, 0x77, 0x59, 0x2d, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1317 = { .name = "ecdsa_brainpoolp320r1_sha384_1317", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1317_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1317_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1317_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1318 for ECDSA, tcId is 308 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1318_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1318_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1318_sig[] = { 0x2e, 0x23, 0x84, 0xe2, 0x62, 0x1b, 0x0f, 0x24, 0x8a, 0xd3, 0x49, 0x22, 0xf7, 0x21, 0xf4, 0x34, 0x52, 0x7d, 0x35, 0x4a, 0x7e, 0xf8, 0x76, 0xde, 0xfb, 0x8e, 0x80, 0xf6, 0x86, 0x48, 0x67, 0xae, 0x60, 0xc7, 0x6c, 0xe2, 0x48, 0x96, 0xa4, 0x0f, 0x08, 0xec, 0xea, 0x05, 0x48, 0x00, 0xec, 0x20, 0x1f, 0x0d, 0x1a, 0xc8, 0x93, 0xf3, 0xbd, 0x79, 0xae, 0x48, 0x53, 0x35, 0x29, 0x34, 0x5e, 0x1d, 0x33, 0x10, 0xfd, 0xc7, 0x47, 0xd7, 0x65, 0x97, 0x0f, 0xa5, 0x5e, 0xe0, 0xa4, 0x7b, 0xdc, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1318 = { .name = "ecdsa_brainpoolp320r1_sha384_1318", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1318_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1318_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1318_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1319 for ECDSA, tcId is 309 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1319_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1319_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1319_sig[] = { 0xd2, 0x90, 0xcf, 0x0f, 0x9f, 0xbd, 0x69, 0x17, 0x43, 0xb9, 0xdc, 0xdc, 0x00, 0xc0, 0x81, 0x6f, 0xb9, 0x9b, 0x5a, 0xd3, 0xb8, 0x9a, 0x23, 0xf1, 0x31, 0x3e, 0x0b, 0xf0, 0x0c, 0xb3, 0xe1, 0x2c, 0x95, 0x64, 0x8d, 0xce, 0x17, 0x5e, 0x34, 0x47, 0x58, 0x77, 0x07, 0xdb, 0x7e, 0x9d, 0xdf, 0x61, 0x3f, 0xf7, 0xd9, 0x79, 0xba, 0x9c, 0xa4, 0x11, 0xb4, 0xbb, 0x78, 0x26, 0x86, 0x2a, 0x38, 0x0c, 0xe7, 0xce, 0xbe, 0xcd, 0x52, 0xf5, 0x2f, 0xf8, 0x85, 0xf8, 0xad, 0x53, 0x6f, 0xbf, 0x11, 0x23, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1319 = { .name = "ecdsa_brainpoolp320r1_sha384_1319", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1319_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1319_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1319_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1320 for ECDSA, tcId is 310 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1320_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1320_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1320_sig[] = { 0x34, 0xb2, 0x52, 0x60, 0x4e, 0xbd, 0x86, 0x75, 0x10, 0x42, 0x66, 0xbe, 0x4d, 0xf8, 0x4b, 0x51, 0x94, 0x26, 0x87, 0xa2, 0x12, 0x95, 0x7d, 0xed, 0xd4, 0xab, 0x6d, 0xff, 0x43, 0x55, 0xa0, 0x02, 0x7b, 0x71, 0x22, 0xae, 0xb1, 0xe9, 0xf4, 0x49, 0x15, 0x08, 0x2c, 0x57, 0x64, 0xdf, 0x74, 0x2c, 0x40, 0x19, 0x3a, 0x8b, 0xf1, 0xe3, 0x8d, 0x43, 0xa5, 0xfa, 0x4c, 0x77, 0x41, 0x6c, 0xd8, 0x75, 0x30, 0x57, 0x52, 0x1c, 0x76, 0x50, 0x62, 0xc6, 0x76, 0xf9, 0x9b, 0xe6, 0x59, 0xfc, 0xd0, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1320 = { .name = "ecdsa_brainpoolp320r1_sha384_1320", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1320_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1320_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1320_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1321 for ECDSA, tcId is 311 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1321_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1321_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1321_sig[] = { 0xb4, 0x5b, 0xaf, 0x5e, 0xe1, 0x88, 0xce, 0xf5, 0x41, 0x3e, 0xf3, 0xe6, 0xf0, 0xd9, 0x17, 0xa9, 0x0c, 0xf2, 0x63, 0xd2, 0xbe, 0x0a, 0x70, 0x39, 0xa6, 0x06, 0x4e, 0x6e, 0x40, 0x53, 0xb6, 0xc9, 0x60, 0xf4, 0x4d, 0xe1, 0x59, 0x32, 0x85, 0x5a, 0x47, 0x60, 0x2d, 0xef, 0xee, 0x00, 0xb2, 0xfd, 0xea, 0x09, 0x53, 0x46, 0xde, 0xae, 0x00, 0xb4, 0x60, 0x69, 0xc9, 0x5c, 0x09, 0xe4, 0x35, 0x94, 0x88, 0x9b, 0x8d, 0x3a, 0xa3, 0xd7, 0x53, 0x50, 0x37, 0x7a, 0xa3, 0x43, 0x1e, 0xf6, 0x3c, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1321 = { .name = "ecdsa_brainpoolp320r1_sha384_1321", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1321_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1321_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1321_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1322 for ECDSA, tcId is 312 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1322_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1322_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1322_sig[] = { 0x6d, 0x82, 0x67, 0x06, 0x5d, 0x60, 0xdc, 0xd3, 0x75, 0xce, 0x04, 0x18, 0x13, 0xd6, 0x08, 0x5f, 0xa9, 0x02, 0x46, 0xcd, 0xdb, 0xba, 0xba, 0x12, 0x64, 0x3c, 0x73, 0x6c, 0xc9, 0xb7, 0xe6, 0xd6, 0x19, 0x17, 0x8f, 0x12, 0xc6, 0xfd, 0x2d, 0x3a, 0x9b, 0x72, 0x61, 0x1a, 0x5b, 0x4f, 0x87, 0x63, 0xe3, 0x0c, 0x11, 0xaa, 0x79, 0x1e, 0xff, 0x6b, 0x74, 0xc3, 0x4d, 0x05, 0xe6, 0x54, 0x51, 0x73, 0x6e, 0x2a, 0x2b, 0x72, 0x8f, 0x2e, 0x5e, 0xf4, 0x85, 0xdc, 0x4e, 0x2e, 0x5c, 0x3d, 0xaa, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1322 = { .name = "ecdsa_brainpoolp320r1_sha384_1322", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1322_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1322_msg, .msglen = 9, .sig = ecdsa_brainpoolp320r1_sha384_1322_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1323 for ECDSA, tcId is 313 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1323_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1323_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1323_sig[] = { 0xa1, 0xa3, 0x02, 0xaa, 0x27, 0xa3, 0x2c, 0xd2, 0x5c, 0x33, 0x6c, 0x9e, 0xd7, 0xad, 0xaf, 0x5c, 0xaf, 0x33, 0xdc, 0x34, 0x85, 0xa8, 0x13, 0x71, 0x8f, 0xce, 0x39, 0x5e, 0xc0, 0xc9, 0x3e, 0xef, 0x4c, 0xb3, 0x4a, 0x65, 0x18, 0xa6, 0x1c, 0xc8, 0x25, 0x8a, 0xcd, 0x1b, 0x45, 0x00, 0x82, 0xfd, 0xdc, 0x05, 0x43, 0x3e, 0x2d, 0xd6, 0x6b, 0x03, 0x21, 0x11, 0x43, 0x95, 0xa3, 0x3b, 0xd9, 0x82, 0x7d, 0x4c, 0x44, 0xd4, 0x86, 0xc8, 0x2c, 0x2d, 0x22, 0x98, 0x69, 0xf3, 0x76, 0x20, 0x12, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1323 = { .name = "ecdsa_brainpoolp320r1_sha384_1323", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1323_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1323_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1323_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1324 for ECDSA, tcId is 314 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1324_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1324_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1324_sig[] = { 0x63, 0xfa, 0xd2, 0x85, 0x70, 0xb4, 0x20, 0x35, 0x02, 0xa1, 0xd1, 0x05, 0x90, 0x32, 0x44, 0xdf, 0xe2, 0xb0, 0x95, 0x30, 0xa9, 0x3d, 0x8e, 0xa4, 0x29, 0xa1, 0x97, 0xc7, 0x12, 0x13, 0x37, 0xa9, 0x9d, 0x4c, 0x73, 0x51, 0x6e, 0xc6, 0x61, 0x35, 0x7b, 0x4a, 0x08, 0xb7, 0xcd, 0xea, 0xf6, 0xee, 0xde, 0xec, 0x63, 0x06, 0xa0, 0xc4, 0x10, 0xb0, 0x92, 0x71, 0x8c, 0x25, 0x59, 0x01, 0x90, 0x03, 0x0c, 0x52, 0x55, 0xbf, 0x83, 0x73, 0x93, 0xd8, 0x29, 0x38, 0x90, 0xc8, 0x49, 0x09, 0xf4, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1324 = { .name = "ecdsa_brainpoolp320r1_sha384_1324", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1324_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1324_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1324_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1325 for ECDSA, tcId is 315 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1325_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1325_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1325_sig[] = { 0xc1, 0xe6, 0x23, 0x2f, 0x06, 0xa4, 0x4d, 0xe1, 0xd7, 0x21, 0x3b, 0x20, 0xea, 0xa1, 0xb8, 0x9c, 0x31, 0xdd, 0x2f, 0x5b, 0xb0, 0x33, 0x24, 0x5e, 0x81, 0x71, 0x52, 0x4c, 0xc9, 0x11, 0x08, 0x76, 0xd7, 0x78, 0xa0, 0x48, 0x34, 0xac, 0x88, 0xee, 0xcb, 0x4a, 0xa2, 0x0d, 0x15, 0x8c, 0x3b, 0x8d, 0x11, 0x5e, 0xc6, 0x2b, 0xb5, 0x15, 0x45, 0xbd, 0x58, 0xb6, 0x3f, 0x1f, 0x01, 0x76, 0xad, 0xa0, 0x48, 0x69, 0xdf, 0xee, 0x84, 0x01, 0x97, 0x37, 0xcb, 0x80, 0x72, 0xf7, 0xa8, 0xb9, 0x40, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1325 = { .name = "ecdsa_brainpoolp320r1_sha384_1325", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1325_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1325_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1325_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1326 for ECDSA, tcId is 316 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1326_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1326_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1326_sig[] = { 0x47, 0xb6, 0xba, 0xa1, 0xa0, 0x53, 0xea, 0xb8, 0xb3, 0x8e, 0xd6, 0xc9, 0x86, 0x2f, 0x2f, 0xfe, 0xd3, 0x81, 0x14, 0x49, 0xe4, 0x9f, 0xf2, 0xe1, 0x8a, 0x58, 0x85, 0x12, 0x12, 0x9d, 0x1d, 0xea, 0x0a, 0x6c, 0x4f, 0xb8, 0x11, 0xdc, 0x5e, 0xb0, 0xa6, 0xcc, 0xee, 0xf5, 0xa1, 0xe1, 0x2f, 0x9b, 0x04, 0x9f, 0x72, 0xf5, 0x37, 0x32, 0xd4, 0x29, 0x03, 0xa7, 0x33, 0xca, 0x6f, 0x3f, 0xae, 0x95, 0x96, 0xe1, 0x7d, 0x9c, 0x75, 0x7e, 0xd4, 0xef, 0x04, 0xfc, 0xc3, 0x73, 0x02, 0xad, 0x1f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1326 = { .name = "ecdsa_brainpoolp320r1_sha384_1326", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1326_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1326_msg, .msglen = 10, .sig = ecdsa_brainpoolp320r1_sha384_1326_sig, .siglen = 80, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1327 for ECDSA, tcId is 317 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1327_pubkey[] = { 0x0f, 0xcc, 0x88, 0x60, 0xcb, 0x26, 0xe2, 0x62, 0xca, 0x8b, 0x4e, 0xcb, 0x9c, 0x52, 0xf7, 0x8d, 0x82, 0xa1, 0x0a, 0x1d, 0x30, 0xdd, 0x0c, 0x8e, 0xcd, 0x75, 0x84, 0xce, 0x80, 0xdb, 0xb7, 0x5c, 0x48, 0x8a, 0x06, 0x2b, 0x64, 0x37, 0x55, 0x00, 0x1f, 0x27, 0xe6, 0x76, 0xc2, 0x6c, 0xd3, 0x48, 0x8c, 0x1e, 0xf4, 0xec, 0x3e, 0xdd, 0x88, 0xcf, 0x8a, 0xf7, 0x8d, 0xaf, 0x90, 0x36, 0x72, 0x4b, 0x57, 0xe6, 0x6d, 0xa0, 0x2c, 0xf7, 0xc6, 0x76, 0xa5, 0x36, 0x64, 0xbe, 0xcd, 0xfe, 0xdc, 0x3b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1327_sig[] = { 0x67, 0xbe, 0xa5, 0x34, 0x78, 0x36, 0x4a, 0xd2, 0xcc, 0x40, 0xea, 0xb4, 0x25, 0x35, 0xa4, 0xbf, 0x8e, 0x41, 0x58, 0x3c, 0x94, 0x1c, 0xb0, 0x4e, 0xf3, 0x7f, 0x11, 0xf0, 0x35, 0x65, 0x4c, 0x33, 0x1d, 0x3b, 0xb0, 0xdd, 0xfd, 0x74, 0x03, 0x1d, 0x76, 0xa9, 0xeb, 0xa4, 0x37, 0x13, 0xed, 0x88, 0x92, 0xa6, 0x27, 0xed, 0x3b, 0xcb, 0xf7, 0xd8, 0x7f, 0x79, 0x91, 0xd1, 0x28, 0x58, 0x0a, 0x05, 0x7c, 0x1b, 0x63, 0x88, 0xb6, 0x04, 0x95, 0x4d, 0x34, 0x0e, 0x92, 0xf4, 0x18, 0x27, 0x67, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1327 = { .name = "ecdsa_brainpoolp320r1_sha384_1327", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1327_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1327_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1327_sig, .siglen = 80, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 317 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1328 for ECDSA, tcId is 318 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1328_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1328_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x40, 0x64, 0xfb, 0x4c, 0x22, 0x4a, 0x8b, 0x24, 0x8a, 0x0d, 0x93, 0x3f, 0x76, 0x42, 0xbd, 0x56, 0xac, 0xed, 0x9b, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1328 = { .name = "ecdsa_brainpoolp320r1_sha384_1328", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1328_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1328_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1328_sig, .siglen = 80, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 318 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1329 for ECDSA, tcId is 319 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1329_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1329_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x23, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1329 = { .name = "ecdsa_brainpoolp320r1_sha384_1329", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1329_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1329_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1329_sig, .siglen = 80, .result = -1, .comment = "r too large, tcId is 319 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1330 for ECDSA, tcId is 320 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1330_pubkey[] = { 0x9c, 0x97, 0x01, 0xde, 0x2f, 0xfd, 0xb2, 0x96, 0xe6, 0xd5, 0x6a, 0x5f, 0x3c, 0x18, 0x9e, 0xcb, 0xb0, 0xe4, 0x44, 0x8e, 0x38, 0xed, 0x65, 0xda, 0x46, 0xee, 0xaa, 0x51, 0xa7, 0xb3, 0x4e, 0x65, 0x0a, 0x91, 0xda, 0x95, 0xfa, 0xf1, 0x79, 0x00, 0x1e, 0x0a, 0x98, 0xa5, 0x98, 0x52, 0x3a, 0x34, 0xc4, 0x91, 0x8d, 0x41, 0x80, 0xf8, 0x7d, 0x64, 0x1e, 0x46, 0x26, 0xce, 0x11, 0xfa, 0x3a, 0x24, 0x4a, 0xbf, 0xb2, 0x45, 0x07, 0x36, 0x69, 0x3d, 0x38, 0x65, 0x23, 0x09, 0x24, 0x0e, 0xbd, 0xa9, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1330_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1330 = { .name = "ecdsa_brainpoolp320r1_sha384_1330", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1330_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1330_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1330_sig, .siglen = 80, .result = 1, .comment = "r,s are large, tcId is 320 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1331 for ECDSA, tcId is 321 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1331_pubkey[] = { 0xb6, 0xf0, 0xdd, 0xc8, 0x34, 0xef, 0x8a, 0x67, 0x90, 0x36, 0x81, 0xea, 0x02, 0xb7, 0x88, 0xfc, 0xff, 0x82, 0xd1, 0x23, 0x07, 0xc8, 0xc3, 0xf4, 0xa4, 0x4b, 0x30, 0xd7, 0xc5, 0xf6, 0x14, 0xda, 0xfc, 0xc9, 0xa8, 0x39, 0x99, 0x1f, 0x8e, 0xe4, 0x27, 0x53, 0x8e, 0x30, 0xae, 0x51, 0x02, 0xb2, 0x04, 0x39, 0x57, 0xdd, 0x61, 0x24, 0xfb, 0xa3, 0xa1, 0xb6, 0x01, 0xc0, 0x4b, 0xdd, 0xaf, 0x6c, 0x92, 0x9f, 0xfd, 0xf2, 0xf7, 0x79, 0x6f, 0xd7, 0x09, 0x8c, 0x38, 0x7d, 0xbc, 0x0b, 0x26, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1331_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8c, 0x07, 0x36, 0x55, 0x4d, 0xbc, 0x44, 0x60, 0x63, 0xe8, 0xe1, 0x5f, 0x29, 0x7f, 0xd4, 0xb6, 0x6f, 0xa8, 0x87, 0x99, 0x45, 0xbb, 0xb5, 0xc2, 0x27, 0x14, 0xa9, 0x64, 0x5f, 0x4f, 0xa4, 0xef, 0x9d, 0x71, 0x0e, 0xaf, 0xa6, 0xb2, 0x26, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1331 = { .name = "ecdsa_brainpoolp320r1_sha384_1331", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1331_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1331_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1331_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 321 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1332 for ECDSA, tcId is 322 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1332_pubkey[] = { 0x6d, 0xf4, 0x43, 0x21, 0xd4, 0xa5, 0xf6, 0xaf, 0x63, 0xe0, 0x1b, 0x79, 0xbb, 0x60, 0x8e, 0xa0, 0x4a, 0xc6, 0xf3, 0x5f, 0x79, 0x50, 0x44, 0xa0, 0x4f, 0xf4, 0x00, 0xf5, 0x47, 0xfd, 0x34, 0xd9, 0xb7, 0x8c, 0x12, 0xc4, 0x59, 0x78, 0xf9, 0x6f, 0xb5, 0x29, 0x01, 0xce, 0xce, 0x48, 0xaa, 0xb4, 0x32, 0xc3, 0xdb, 0xdc, 0xbc, 0x0e, 0x27, 0x0b, 0x2c, 0xc9, 0xb9, 0x91, 0x5c, 0xc1, 0xff, 0xb6, 0x9a, 0x36, 0x5d, 0x84, 0xc3, 0x91, 0x86, 0xc4, 0x81, 0x77, 0x38, 0x7a, 0xa9, 0xee, 0x0a, 0x48, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1332_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x07, 0xcd, 0xd5, 0x93, 0xac, 0xb5, 0x01, 0xfc, 0x28, 0x48, 0x35, 0x1f, 0x9d, 0x2e, 0x6b, 0x54, 0x57, 0xd3, 0xde, 0x43, 0xc3, 0x13, 0x0e, 0x3b, 0x74, 0xe6, 0xa9, 0x24, 0x2b, 0x3c, 0xce, 0x1c, 0x24, 0xf0, 0x94, 0xf1, 0x18, 0xbc, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1332 = { .name = "ecdsa_brainpoolp320r1_sha384_1332", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1332_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1332_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1332_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 322 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1333 for ECDSA, tcId is 323 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1333_pubkey[] = { 0x4e, 0x49, 0x6f, 0x05, 0x6a, 0xb5, 0xd0, 0x7f, 0x96, 0x56, 0x2c, 0x68, 0x36, 0x43, 0x44, 0x0e, 0x31, 0xfe, 0xa2, 0x6d, 0x35, 0xe6, 0xc5, 0xb6, 0x9e, 0xef, 0xaa, 0x41, 0x07, 0xd3, 0x45, 0xc8, 0x07, 0xbf, 0x27, 0x9f, 0x2e, 0xa2, 0x6b, 0x60, 0x28, 0x85, 0x39, 0x76, 0x6f, 0xc7, 0x26, 0xcb, 0x9e, 0x84, 0x1d, 0xb5, 0xdc, 0xfb, 0xbb, 0x79, 0x2c, 0xad, 0xe3, 0xc1, 0xef, 0x64, 0xb6, 0x9d, 0xcb, 0xda, 0x7f, 0x5e, 0x49, 0x7b, 0x45, 0x5a, 0x91, 0x1c, 0xe2, 0xf0, 0xeb, 0xca, 0xca, 0xad, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1333_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1333 = { .name = "ecdsa_brainpoolp320r1_sha384_1333", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1333_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1333_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1333_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 323 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1334 for ECDSA, tcId is 324 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1334_pubkey[] = { 0x11, 0xe0, 0x94, 0xf4, 0x70, 0x94, 0x8e, 0x4e, 0xaa, 0x6a, 0xa1, 0x3f, 0xab, 0x4e, 0x06, 0x33, 0x86, 0xe9, 0x1a, 0x63, 0x8f, 0xa2, 0x26, 0xd9, 0x88, 0xd0, 0x69, 0x3d, 0xea, 0x71, 0x9c, 0xa9, 0x5f, 0x61, 0xe4, 0x93, 0xe9, 0x83, 0x5a, 0xf4, 0x3f, 0x53, 0x3e, 0x89, 0xaa, 0x20, 0x85, 0xa9, 0xf8, 0x12, 0x10, 0x86, 0xa2, 0x59, 0x7f, 0x10, 0x60, 0xf7, 0x3c, 0x8d, 0x75, 0xd6, 0x69, 0x40, 0xe5, 0x0e, 0xea, 0xd7, 0x3d, 0xfd, 0x03, 0xc4, 0x76, 0xea, 0x19, 0x47, 0xcd, 0xd4, 0xdd, 0x3f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1334_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1334 = { .name = "ecdsa_brainpoolp320r1_sha384_1334", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1334_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1334_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1334_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 324 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1335 for ECDSA, tcId is 325 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1335_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1335_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1335 = { .name = "ecdsa_brainpoolp320r1_sha384_1335", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1335_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1335_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1335_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 325 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1336 for ECDSA, tcId is 326 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1336_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1336_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1336 = { .name = "ecdsa_brainpoolp320r1_sha384_1336", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1336_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1336_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1336_sig, .siglen = 80, .result = -1, .comment = "r is larger than n, tcId is 326 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1337 for ECDSA, tcId is 327 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1337_pubkey[] = { 0x3a, 0x26, 0x68, 0xbc, 0x09, 0x61, 0x4d, 0x26, 0x38, 0xed, 0x58, 0xf1, 0xc4, 0x21, 0xbb, 0x61, 0xf2, 0xd4, 0x99, 0xa8, 0x6f, 0xe7, 0xd5, 0x73, 0xbd, 0x13, 0x92, 0xac, 0xef, 0x9e, 0x29, 0x6b, 0x1e, 0xf2, 0xb1, 0x0d, 0x7f, 0x4e, 0xc5, 0x24, 0xd1, 0xb7, 0x8e, 0xb2, 0x71, 0x6c, 0xe6, 0x68, 0x05, 0x4d, 0x29, 0x67, 0x7c, 0x6f, 0x4d, 0x32, 0x35, 0xf2, 0x7d, 0x3a, 0x92, 0x95, 0xec, 0xef, 0x9d, 0xdf, 0xd2, 0xf6, 0x58, 0xba, 0x00, 0x20, 0x52, 0xd0, 0xe1, 0xe6, 0x71, 0x72, 0x1e, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1337_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xd8, 0x69, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1337 = { .name = "ecdsa_brainpoolp320r1_sha384_1337", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1337_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1337_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1337_sig, .siglen = 80, .result = -1, .comment = "s is larger than n, tcId is 327 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1338 for ECDSA, tcId is 328 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1338_pubkey[] = { 0xcd, 0x16, 0x97, 0xc6, 0xe1, 0x07, 0xf3, 0xd9, 0x0b, 0x8d, 0xf4, 0x62, 0xeb, 0x36, 0x8b, 0x75, 0xeb, 0xa5, 0x85, 0x63, 0x59, 0x50, 0x17, 0x7e, 0x0a, 0x64, 0xb1, 0xad, 0x4b, 0xe5, 0x27, 0xc9, 0x09, 0x57, 0xfb, 0xdf, 0x20, 0x3d, 0x67, 0xc8, 0x4b, 0x00, 0x3f, 0x20, 0xe8, 0x16, 0x59, 0x09, 0x9b, 0x7e, 0x46, 0x66, 0x18, 0xf2, 0x61, 0x0c, 0x6f, 0x1d, 0xf3, 0x15, 0xb2, 0x01, 0x1d, 0xb0, 0x7b, 0x90, 0xf3, 0x66, 0x2b, 0x51, 0x56, 0x1f, 0xff, 0xdf, 0x3e, 0xbb, 0x5d, 0x44, 0x34, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1338_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x21, 0x49, 0x4d, 0xb8, 0x79, 0x80, 0x6d, 0x4f, 0x59, 0xe5, 0x3d, 0x49, 0x63, 0x97, 0x7a, 0x03, 0xf6, 0xec, 0x51, 0x14, 0x0c, 0x9f, 0x9a, 0x1d, 0xba, 0x88, 0x57, 0xff, 0x3b, 0xbc, 0x76, 0xd2, 0x21, 0x49, 0x47, 0xe6, 0x0e, 0xdc, 0x98, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1338 = { .name = "ecdsa_brainpoolp320r1_sha384_1338", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1338_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1338_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1338_sig, .siglen = 80, .result = 1, .comment = "small r and s^-1, tcId is 328 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1339 for ECDSA, tcId is 329 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1339_pubkey[] = { 0xb1, 0xe3, 0x61, 0x9d, 0x9e, 0x35, 0x87, 0x3e, 0x95, 0x9b, 0xb7, 0xde, 0x77, 0x40, 0xe9, 0x27, 0xe3, 0xcb, 0x7f, 0xcf, 0x44, 0x13, 0xbf, 0xdb, 0xbe, 0xd7, 0x2e, 0xcc, 0x9a, 0x86, 0xa5, 0x0d, 0x70, 0x29, 0xca, 0xe0, 0x8e, 0xc2, 0x85, 0xab, 0x48, 0x6b, 0x5d, 0x2f, 0x7c, 0x9b, 0x93, 0x14, 0x42, 0x0b, 0xc8, 0x64, 0xcf, 0xe2, 0x9b, 0x40, 0x64, 0xbf, 0x7b, 0x92, 0x2b, 0xbb, 0x5b, 0xbc, 0xd1, 0x6f, 0x3a, 0x81, 0xea, 0x7d, 0x0a, 0x61, 0xb0, 0xa0, 0x9a, 0x62, 0x95, 0x9b, 0x76, 0x90, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1339_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x43, 0xbe, 0xcc, 0x87, 0x6a, 0x63, 0x56, 0x4b, 0x45, 0x82, 0x80, 0x19, 0x9e, 0x38, 0x2c, 0xba, 0xd8, 0xef, 0x68, 0xd4, 0x06, 0x66, 0x5b, 0xbf, 0x30, 0x7f, 0xfe, 0xa4, 0x58, 0x45, 0xa9, 0xac, 0x69, 0x34, 0x5a, 0x84, 0xa5, 0xa7, 0x2b, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1339 = { .name = "ecdsa_brainpoolp320r1_sha384_1339", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1339_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1339_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1339_sig, .siglen = 80, .result = 1, .comment = "smallish r and s^-1, tcId is 329 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1340 for ECDSA, tcId is 330 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1340_pubkey[] = { 0x97, 0xcf, 0xeb, 0xab, 0x58, 0x8a, 0x54, 0x24, 0x2a, 0x4d, 0x96, 0x2e, 0xf8, 0x03, 0x37, 0x6c, 0x3f, 0x43, 0x07, 0x9a, 0xa5, 0x0a, 0x88, 0x71, 0xd6, 0xe7, 0x76, 0xf7, 0xa0, 0xb3, 0x3a, 0xea, 0x46, 0xab, 0x9a, 0x2d, 0xa6, 0x3a, 0x33, 0xd8, 0xc8, 0x1a, 0xf3, 0x4a, 0xf2, 0xe9, 0xa0, 0xc5, 0x71, 0xef, 0xfb, 0x50, 0x1c, 0x4a, 0x27, 0xfd, 0x2a, 0xed, 0xc1, 0x36, 0x23, 0x44, 0x7a, 0xf2, 0xbc, 0x8b, 0x6d, 0x5e, 0x72, 0x08, 0xc2, 0x3e, 0x87, 0xe2, 0xd7, 0x97, 0xcc, 0x3c, 0xf5, 0x7e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1340_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x39, 0x92, 0x35, 0x3d, 0x91, 0x66, 0x17, 0xb4, 0x93, 0x03, 0x85, 0x64, 0x88, 0xe3, 0x9f, 0xbc, 0x26, 0x17, 0x3b, 0x8b, 0xc4, 0x26, 0xf8, 0x20, 0x7d, 0xe3, 0xd8, 0xf1, 0xb9, 0x7f, 0x3d, 0x12, 0xc8, 0x03, 0xb9, 0x9d, 0x57, 0x76, 0x8f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1340 = { .name = "ecdsa_brainpoolp320r1_sha384_1340", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1340_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1340_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1340_sig, .siglen = 80, .result = 1, .comment = "100-bit r and small s^-1, tcId is 330 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1341 for ECDSA, tcId is 331 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1341_pubkey[] = { 0x29, 0x6e, 0x00, 0x67, 0x94, 0x7e, 0xfc, 0x07, 0xa0, 0x6a, 0xe2, 0x18, 0xfb, 0x00, 0x16, 0x4d, 0x1e, 0xbe, 0xbc, 0xd3, 0x78, 0x7f, 0x79, 0x34, 0x81, 0x40, 0x7e, 0x27, 0x96, 0x24, 0x8e, 0x8b, 0x65, 0xea, 0xc5, 0x7d, 0xb0, 0xc1, 0x46, 0x06, 0x72, 0x9e, 0x80, 0x94, 0xb9, 0xa5, 0x4e, 0xea, 0xc2, 0x3d, 0x98, 0xd5, 0x1d, 0x66, 0x2e, 0xff, 0x2d, 0xf3, 0x3a, 0x86, 0x93, 0x00, 0x8f, 0xd0, 0x2a, 0x04, 0x29, 0xef, 0x68, 0x51, 0xec, 0xbd, 0xcd, 0x93, 0xaa, 0xc6, 0x7c, 0x2f, 0xbd, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1341_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1341 = { .name = "ecdsa_brainpoolp320r1_sha384_1341", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1341_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1341_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1341_sig, .siglen = 80, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 331 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1342 for ECDSA, tcId is 332 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1342_pubkey[] = { 0xa3, 0x78, 0x3b, 0x01, 0x45, 0x5d, 0x92, 0x08, 0x0f, 0x52, 0x0d, 0x17, 0x1f, 0x92, 0xab, 0xea, 0xf4, 0x8c, 0x72, 0x38, 0xe1, 0x68, 0xb2, 0x93, 0x1f, 0x2b, 0x32, 0x2f, 0x9c, 0x0f, 0xaa, 0x69, 0xa2, 0x40, 0x97, 0x83, 0x6c, 0xb0, 0xa6, 0x85, 0x1c, 0xbf, 0x1a, 0x22, 0xba, 0xc2, 0x43, 0x75, 0x51, 0x24, 0x46, 0x05, 0x68, 0x2d, 0xab, 0xcd, 0xd4, 0xcf, 0x39, 0xff, 0x9d, 0x08, 0x44, 0x39, 0x21, 0xc9, 0x94, 0x48, 0xcb, 0xce, 0xa5, 0xde, 0xb8, 0x5a, 0xd9, 0x52, 0xdb, 0xb2, 0xb9, 0x67, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1342_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1342 = { .name = "ecdsa_brainpoolp320r1_sha384_1342", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1342_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1342_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1342_sig, .siglen = 80, .result = 1, .comment = "100-bit r and s^-1, tcId is 332 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1343 for ECDSA, tcId is 333 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1343_pubkey[] = { 0x70, 0xd5, 0xfd, 0x41, 0xc4, 0x16, 0xd5, 0xb7, 0xcd, 0xbc, 0xb9, 0x44, 0x20, 0x5b, 0xd6, 0x9f, 0xf0, 0x0e, 0xd6, 0x35, 0x4a, 0xa5, 0x02, 0x75, 0x7e, 0x08, 0x9c, 0xb1, 0x9a, 0xf6, 0xf7, 0x77, 0xbe, 0xb0, 0xf6, 0x92, 0x1c, 0x0f, 0xaf, 0xac, 0x22, 0xae, 0x7c, 0xc6, 0x5e, 0x0e, 0x7b, 0x61, 0x74, 0x23, 0x75, 0x0b, 0x84, 0x93, 0xa5, 0x85, 0x12, 0xe3, 0x79, 0xc0, 0x0d, 0xe6, 0x26, 0xc1, 0x7f, 0x7c, 0x82, 0xbf, 0xc9, 0x07, 0xf2, 0x66, 0x10, 0xa3, 0xf1, 0xe4, 0xd1, 0x32, 0xc5, 0x75, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1343_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x94, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1343 = { .name = "ecdsa_brainpoolp320r1_sha384_1343", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1343_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1343_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1343_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 are close to n, tcId is 333 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1344 for ECDSA, tcId is 334 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1344_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1344_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1344 = { .name = "ecdsa_brainpoolp320r1_sha384_1344", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1344_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1344_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1344_sig, .siglen = 80, .result = 1, .comment = "s == 1, tcId is 334 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1345 for ECDSA, tcId is 335 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1345_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1345_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1345 = { .name = "ecdsa_brainpoolp320r1_sha384_1345", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1345_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1345_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1345_sig, .siglen = 80, .result = -1, .comment = "s == 0, tcId is 335 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1346 for ECDSA, tcId is 336 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1346_pubkey[] = { 0x20, 0x25, 0x16, 0xad, 0x66, 0x37, 0x75, 0xf1, 0x21, 0x55, 0x52, 0x10, 0x79, 0x03, 0x7f, 0x3f, 0xca, 0x50, 0xc6, 0x4f, 0xaa, 0x4a, 0xfd, 0x88, 0x6a, 0xdd, 0x4d, 0xaa, 0xb9, 0x27, 0xf3, 0xf6, 0x2a, 0xa2, 0xda, 0xe6, 0x84, 0xa6, 0x35, 0xd6, 0x63, 0x2a, 0xed, 0xd5, 0x30, 0xe6, 0x1d, 0xab, 0x35, 0x91, 0x69, 0x62, 0xee, 0x8f, 0x23, 0xed, 0x68, 0x81, 0x98, 0xaf, 0xd5, 0xad, 0x6b, 0x07, 0x05, 0xe2, 0xef, 0x9d, 0x0b, 0xa3, 0xc5, 0x33, 0x3b, 0x15, 0xbd, 0xab, 0x43, 0x2e, 0xe3, 0x42, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1346_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1346 = { .name = "ecdsa_brainpoolp320r1_sha384_1346", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1346_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1346_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1346_sig, .siglen = 80, .result = -1, .comment = "point at infinity during verify, tcId is 336 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1347 for ECDSA, tcId is 337 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1347_pubkey[] = { 0x82, 0x3a, 0x83, 0x0c, 0x58, 0xd9, 0xdd, 0x37, 0x0f, 0x68, 0x7f, 0xf8, 0x19, 0x14, 0x2b, 0x64, 0x4a, 0xc9, 0xdc, 0x18, 0xa9, 0x46, 0x81, 0xe2, 0x24, 0x5e, 0xb2, 0x2f, 0x27, 0xe3, 0x33, 0xe6, 0x2f, 0xec, 0xe3, 0x97, 0x23, 0x17, 0x69, 0xda, 0x36, 0xa7, 0xe2, 0x37, 0xea, 0x2f, 0x3e, 0x24, 0x72, 0xde, 0x14, 0x7e, 0x16, 0x6c, 0xe4, 0xbd, 0x82, 0x48, 0x20, 0x8d, 0xf5, 0x38, 0xac, 0x00, 0xf5, 0xb2, 0x29, 0x9e, 0x2d, 0x72, 0x9b, 0x0d, 0xd8, 0x0e, 0x3e, 0x10, 0x6c, 0x06, 0x08, 0x44, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1347_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1347 = { .name = "ecdsa_brainpoolp320r1_sha384_1347", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1347_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1347_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1347_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 337 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1348 for ECDSA, tcId is 338 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1348_pubkey[] = { 0x38, 0x7a, 0x75, 0x92, 0x84, 0xf6, 0x5d, 0x2d, 0x93, 0xf5, 0x41, 0xf2, 0x76, 0x6f, 0x84, 0x6a, 0xbd, 0xec, 0x23, 0x91, 0x90, 0xe8, 0xcd, 0xdb, 0xa9, 0xb7, 0x56, 0x4a, 0x83, 0xd5, 0x81, 0x62, 0xa4, 0x89, 0xf2, 0x5f, 0x0d, 0x43, 0xb4, 0xf8, 0x42, 0x46, 0x25, 0xa6, 0xc1, 0xe1, 0x58, 0x94, 0x74, 0xc3, 0x0e, 0x63, 0x83, 0xc9, 0x25, 0xb3, 0x63, 0x23, 0x9d, 0x1a, 0x87, 0xb9, 0x63, 0x4f, 0xd8, 0xaa, 0xc2, 0xeb, 0x0c, 0xe3, 0x9e, 0x37, 0x63, 0x87, 0x3d, 0xe7, 0x73, 0x58, 0xbd, 0x4b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1348_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1348 = { .name = "ecdsa_brainpoolp320r1_sha384_1348", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1348_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1348_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1348_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 338 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1349 for ECDSA, tcId is 339 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1349_pubkey[] = { 0x6b, 0x43, 0x27, 0x11, 0x7e, 0x9c, 0x04, 0xd7, 0xa5, 0x82, 0x59, 0xc5, 0x20, 0x7a, 0x36, 0xe8, 0xd2, 0x78, 0xe8, 0x73, 0xb9, 0x2b, 0x5b, 0x3a, 0x70, 0xa3, 0xc4, 0x74, 0x2c, 0xc5, 0x83, 0xb4, 0x14, 0x08, 0xaa, 0xab, 0x23, 0xa1, 0x2a, 0x9c, 0x9b, 0x0b, 0x26, 0x16, 0x0c, 0x54, 0x8a, 0xba, 0xcd, 0x7f, 0x0e, 0x37, 0x27, 0x6f, 0x91, 0x7c, 0x09, 0x72, 0x1b, 0x38, 0x44, 0xd0, 0xb2, 0x6e, 0x9e, 0xd5, 0xc7, 0x6c, 0x99, 0x78, 0x79, 0x92, 0x25, 0x9b, 0xf0, 0xf7, 0xb0, 0x24, 0x45, 0xd3, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1349_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1349 = { .name = "ecdsa_brainpoolp320r1_sha384_1349", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1349_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1349_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1349_sig, .siglen = 80, .result = -1, .comment = "u1 == 1, tcId is 339 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1350 for ECDSA, tcId is 340 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1350_pubkey[] = { 0x27, 0x7f, 0x48, 0x7f, 0xaf, 0x77, 0xa6, 0x5d, 0xbb, 0x79, 0x15, 0x36, 0xe8, 0x63, 0xb8, 0xc7, 0x0f, 0x90, 0x4f, 0xcd, 0xca, 0xf5, 0x27, 0x40, 0xd4, 0xbd, 0x5c, 0x46, 0x97, 0x31, 0xe5, 0x8e, 0xa6, 0xbd, 0x53, 0xe8, 0xd7, 0x72, 0x02, 0x28, 0x2d, 0x34, 0x6f, 0x2b, 0x4c, 0xa7, 0xba, 0xcb, 0x88, 0x2f, 0xef, 0x74, 0x9c, 0x27, 0x13, 0xf1, 0xa7, 0x5f, 0x00, 0x82, 0x7e, 0x8b, 0x9b, 0x9f, 0x74, 0x4a, 0x0e, 0x1e, 0x34, 0xbc, 0xf8, 0x07, 0x99, 0xa1, 0x20, 0x95, 0x0d, 0xe9, 0x5d, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1350_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1350 = { .name = "ecdsa_brainpoolp320r1_sha384_1350", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1350_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1350_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1350_sig, .siglen = 80, .result = 1, .comment = "u1 == n - 1, tcId is 340 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1351 for ECDSA, tcId is 341 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1351_pubkey[] = { 0x73, 0xbd, 0x62, 0xf3, 0xbb, 0x32, 0x9d, 0x65, 0x09, 0x2b, 0x5d, 0x13, 0xc5, 0x74, 0x6d, 0x46, 0x24, 0x01, 0xd2, 0x60, 0x09, 0x94, 0xd8, 0xfe, 0x2e, 0xc5, 0xef, 0x5b, 0x9f, 0x33, 0x99, 0x08, 0x4b, 0x1d, 0xdc, 0x64, 0xcb, 0x33, 0x4b, 0xae, 0xc1, 0xd1, 0xac, 0x4f, 0x9a, 0x0c, 0x2a, 0x79, 0xef, 0x7c, 0xcc, 0x4a, 0xe9, 0x16, 0x5d, 0xdf, 0xa7, 0x61, 0x38, 0x23, 0x57, 0x18, 0xcf, 0x24, 0x03, 0x2c, 0x33, 0xf9, 0xdb, 0x4a, 0x26, 0xb2, 0xb0, 0x36, 0x92, 0xa5, 0x6f, 0x52, 0x02, 0xeb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1351_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1351 = { .name = "ecdsa_brainpoolp320r1_sha384_1351", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1351_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1351_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1351_sig, .siglen = 80, .result = 1, .comment = "u2 == 1, tcId is 341 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1352 for ECDSA, tcId is 342 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1352_pubkey[] = { 0x20, 0xa7, 0x55, 0x51, 0x03, 0x5d, 0xb9, 0x5d, 0x7a, 0x1a, 0x67, 0x3d, 0x46, 0x4d, 0x27, 0x6d, 0xa0, 0x86, 0x10, 0x08, 0xe4, 0x64, 0x4c, 0x58, 0x2b, 0xc1, 0x0a, 0x1b, 0xee, 0xae, 0xb0, 0x70, 0x82, 0x3f, 0xd0, 0x64, 0xa2, 0x62, 0x5e, 0xbb, 0x5d, 0x47, 0xf0, 0xc7, 0x7f, 0xc5, 0x7e, 0x3b, 0xb0, 0xe1, 0x53, 0xbb, 0xc7, 0xe9, 0xbb, 0xde, 0x8d, 0xb9, 0x8b, 0x0c, 0x46, 0xc5, 0x81, 0x54, 0xaf, 0x5b, 0x97, 0x86, 0xb1, 0x0b, 0xa1, 0x2a, 0xb3, 0xba, 0x85, 0x33, 0xa3, 0x99, 0x28, 0x83, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1352_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1352 = { .name = "ecdsa_brainpoolp320r1_sha384_1352", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1352_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1352_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1352_sig, .siglen = 80, .result = 1, .comment = "u2 == n - 1, tcId is 342 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1353 for ECDSA, tcId is 343 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1353_pubkey[] = { 0x3f, 0x43, 0x6d, 0x07, 0xcb, 0x02, 0x64, 0xb1, 0x3f, 0x92, 0xfd, 0x69, 0x63, 0x34, 0xa4, 0xe5, 0x1b, 0x7d, 0x66, 0x19, 0xe2, 0xd0, 0x43, 0xb2, 0xd0, 0xd2, 0x78, 0x96, 0x3f, 0x25, 0x16, 0x20, 0x0e, 0xf9, 0x05, 0xeb, 0xf6, 0x71, 0x66, 0x63, 0x40, 0xe6, 0x42, 0xb6, 0xc9, 0x66, 0x07, 0x2b, 0x79, 0x27, 0x80, 0x03, 0x65, 0x11, 0x28, 0x87, 0x9f, 0x19, 0xde, 0xe0, 0x12, 0x73, 0xb6, 0x6b, 0xea, 0xd8, 0x04, 0x51, 0x94, 0x27, 0x7c, 0x92, 0x84, 0x09, 0x33, 0x48, 0xd9, 0x05, 0x69, 0xb1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1353_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0c, 0xc6, 0x4a, 0xf0, 0x35, 0xcb, 0x79, 0xb3, 0x33, 0x6a, 0x62, 0xd9, 0x15, 0xb3, 0x81, 0xe2, 0x68, 0xd3, 0xbc, 0xb8, 0x34, 0xf9, 0xcf, 0xd0, 0xf5, 0x97, 0xc3, 0x7c, 0xa5, 0xfc, 0xf5, 0x0f, 0x58, 0x86, 0x14, 0xef, 0x0e, 0xf7, 0xb6, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1353 = { .name = "ecdsa_brainpoolp320r1_sha384_1353", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1353_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1353_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1353_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 343 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1354 for ECDSA, tcId is 344 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1354_pubkey[] = { 0xc1, 0x6f, 0xbe, 0x6d, 0x0d, 0x77, 0x32, 0x7c, 0xf9, 0xa6, 0x5f, 0x98, 0x7c, 0x2f, 0xe7, 0xee, 0x18, 0x07, 0x85, 0x1c, 0x0e, 0x1c, 0x8b, 0xc4, 0xf0, 0x62, 0x28, 0x07, 0xdc, 0xd4, 0xa8, 0x8b, 0x3b, 0x91, 0x2e, 0xb0, 0x47, 0x54, 0x71, 0xe5, 0x75, 0x42, 0x1c, 0x40, 0x54, 0x00, 0x50, 0x50, 0x7a, 0x16, 0x3f, 0x23, 0xcc, 0x7c, 0xb9, 0x0a, 0xcc, 0x52, 0x82, 0x2d, 0x01, 0xd2, 0x45, 0xab, 0x70, 0xdc, 0xaa, 0xc0, 0x6e, 0x2e, 0xa6, 0x44, 0x32, 0x7a, 0x85, 0xf5, 0x95, 0xd0, 0x26, 0xef, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1354_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8e, 0x76, 0x5d, 0x0d, 0x1c, 0xf9, 0x53, 0x9f, 0x68, 0x2a, 0x41, 0x55, 0xb6, 0xd6, 0x0e, 0xb6, 0xaa, 0x68, 0x62, 0xb2, 0xaf, 0x9e, 0x9d, 0x3f, 0x94, 0xc9, 0xad, 0x46, 0xd3, 0x32, 0xf0, 0xe0, 0x29, 0x77, 0x55, 0x22, 0x81, 0x5c, 0x0e, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1354 = { .name = "ecdsa_brainpoolp320r1_sha384_1354", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1354_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1354_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1354_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 344 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1355 for ECDSA, tcId is 345 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1355_pubkey[] = { 0xbe, 0x92, 0x40, 0x07, 0xd6, 0xe2, 0x2b, 0x94, 0x4a, 0xc7, 0x6d, 0xa7, 0xfc, 0x26, 0x60, 0xd1, 0xae, 0xfa, 0xb6, 0x94, 0x71, 0xbd, 0x83, 0x5b, 0xd7, 0x8e, 0xdd, 0x2c, 0x10, 0x62, 0x1e, 0x76, 0xf7, 0x18, 0xbf, 0xd0, 0xa5, 0xe2, 0x30, 0x7e, 0xc6, 0x25, 0x83, 0xd5, 0xba, 0x5c, 0xc1, 0xc5, 0x47, 0x63, 0x04, 0x76, 0xb3, 0x99, 0x86, 0x6e, 0x7e, 0xd9, 0x53, 0xb5, 0x38, 0xf7, 0x6c, 0x86, 0xaf, 0xe9, 0xcf, 0xd0, 0x85, 0x4b, 0x57, 0xe3, 0x36, 0x91, 0xc7, 0x7e, 0x44, 0x4c, 0xca, 0xb8, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1355_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x72, 0x25, 0xa9, 0x60, 0xd9, 0x67, 0xcf, 0xe5, 0x2a, 0xc1, 0x26, 0xa5, 0x0f, 0xd7, 0x9f, 0xa8, 0x5a, 0x58, 0x63, 0x97, 0xc0, 0xb2, 0x98, 0xc8, 0xad, 0xfa, 0xf1, 0x38, 0x31, 0x7b, 0x0f, 0x79, 0x4b, 0x24, 0xf5, 0x3b, 0xd9, 0x20, 0xc1, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1355 = { .name = "ecdsa_brainpoolp320r1_sha384_1355", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1355_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1355_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1355_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 345 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1356 for ECDSA, tcId is 346 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1356_pubkey[] = { 0xac, 0xf2, 0x40, 0x13, 0x0d, 0x47, 0xd4, 0xa5, 0x7d, 0x60, 0x65, 0x95, 0xf9, 0x89, 0x12, 0x9f, 0xea, 0x7e, 0x97, 0x44, 0xb1, 0xe5, 0x3f, 0x5c, 0xe6, 0x79, 0xc2, 0x44, 0xc8, 0x5a, 0xf3, 0x5c, 0x61, 0x86, 0x07, 0xe2, 0xec, 0xce, 0x1a, 0x43, 0x1b, 0x69, 0x6a, 0x79, 0x59, 0xfe, 0x30, 0xd0, 0x49, 0x10, 0x0d, 0xd5, 0x42, 0x58, 0x18, 0x1b, 0x08, 0xa2, 0xfe, 0x44, 0x2e, 0x41, 0xff, 0x29, 0x52, 0x3c, 0x11, 0xa3, 0xe0, 0x10, 0x28, 0xeb, 0x64, 0xb3, 0x21, 0xc2, 0xb7, 0x02, 0x57, 0x9c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1356_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x87, 0x4f, 0x31, 0x1b, 0x6b, 0x9a, 0xc7, 0x4f, 0xc3, 0x4c, 0x60, 0xc0, 0x94, 0x18, 0x73, 0x65, 0x1b, 0x3c, 0x0e, 0xc1, 0xd0, 0x97, 0xa7, 0x86, 0x1e, 0x0c, 0x7f, 0xbe, 0xc3, 0x22, 0x6f, 0x23, 0xa5, 0xe2, 0xc9, 0x29, 0xd8, 0x56, 0xec, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1356 = { .name = "ecdsa_brainpoolp320r1_sha384_1356", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1356_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1356_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1356_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 346 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1357 for ECDSA, tcId is 347 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1357_pubkey[] = { 0x46, 0x24, 0x3b, 0x39, 0xe7, 0x76, 0x39, 0xac, 0x19, 0xe9, 0xbe, 0x53, 0x66, 0x93, 0x17, 0xd9, 0x59, 0x8e, 0x03, 0xec, 0x30, 0xa0, 0xcf, 0x69, 0x30, 0xf8, 0x00, 0x00, 0x98, 0x33, 0x82, 0x6a, 0x59, 0xad, 0xe5, 0x32, 0x19, 0x33, 0xff, 0x2f, 0x69, 0xd7, 0x70, 0xb9, 0x78, 0xcc, 0xc3, 0x6c, 0x90, 0xb7, 0x48, 0xe5, 0x01, 0x06, 0x36, 0xe7, 0x00, 0x4d, 0xdc, 0x19, 0x88, 0x5d, 0xa7, 0xbb, 0x90, 0xdb, 0xfa, 0xd4, 0x79, 0xfc, 0x52, 0xdc, 0xe4, 0xb9, 0x28, 0x14, 0x05, 0xf1, 0xc6, 0xbd, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1357_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0x75, 0x3a, 0xc9, 0x0f, 0xbc, 0x7e, 0xdf, 0xdc, 0xb3, 0x2e, 0x16, 0x97, 0xfd, 0xfd, 0x41, 0xb1, 0xfb, 0x59, 0xc5, 0xad, 0x17, 0x7e, 0x96, 0xfe, 0xac, 0xc8, 0x75, 0x22, 0xef, 0x92, 0x8d, 0xe8, 0x0a, 0x60, 0xbb, 0x0f, 0x32, 0xe7, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1357 = { .name = "ecdsa_brainpoolp320r1_sha384_1357", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1357_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1357_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1357_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 347 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1358 for ECDSA, tcId is 348 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1358_pubkey[] = { 0xb4, 0xb9, 0xb6, 0xba, 0x3c, 0x0e, 0x75, 0x09, 0xc2, 0x75, 0x89, 0x4e, 0x84, 0xe8, 0x18, 0xd7, 0x1d, 0xe1, 0x45, 0x77, 0xbd, 0xb4, 0xbf, 0x0b, 0x8e, 0x5e, 0x13, 0x32, 0xd1, 0x08, 0x7f, 0x3c, 0x33, 0x3b, 0x73, 0xe8, 0xab, 0x75, 0xf2, 0xc9, 0x4f, 0x33, 0xd0, 0xe2, 0xab, 0x34, 0x2d, 0x2e, 0x19, 0x68, 0xce, 0x3e, 0x1c, 0x47, 0xbe, 0x87, 0xe3, 0x9e, 0xe8, 0x82, 0x73, 0xae, 0x4c, 0xf7, 0x77, 0x86, 0x9d, 0x3a, 0x17, 0x03, 0xb6, 0x3a, 0x98, 0x3d, 0x2d, 0x43, 0xc5, 0x93, 0x03, 0xe5, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1358_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x26, 0xea, 0x75, 0x92, 0x1f, 0x78, 0xfd, 0xbf, 0xb9, 0x66, 0x5c, 0x2d, 0x2f, 0xfb, 0xfa, 0x83, 0x63, 0xf6, 0xb3, 0x8b, 0x5a, 0x2e, 0xfd, 0x2d, 0xfd, 0x59, 0x90, 0xea, 0x45, 0xdf, 0x25, 0x1b, 0xd0, 0x14, 0xc1, 0x76, 0x1e, 0x65, 0xcf, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1358 = { .name = "ecdsa_brainpoolp320r1_sha384_1358", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1358_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1358_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1358_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 348 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1359 for ECDSA, tcId is 349 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1359_pubkey[] = { 0x03, 0x01, 0x5b, 0x3c, 0xa6, 0x76, 0x83, 0x46, 0x7c, 0x79, 0x44, 0x6d, 0x4b, 0x93, 0xd1, 0x09, 0x78, 0x33, 0x08, 0x56, 0xee, 0xe4, 0x0d, 0x6d, 0x58, 0x68, 0x3a, 0xc7, 0x35, 0x00, 0xae, 0x31, 0x5c, 0x5b, 0x58, 0x23, 0x51, 0xc4, 0x22, 0x6b, 0x18, 0xd8, 0x95, 0x61, 0xd3, 0xff, 0xa0, 0xf9, 0x31, 0x1a, 0xa6, 0x16, 0x54, 0x7f, 0x7e, 0xb1, 0xd3, 0x6e, 0x73, 0xa6, 0xcc, 0x4b, 0xd2, 0x30, 0xdf, 0x34, 0xa1, 0xf3, 0x19, 0xbe, 0x66, 0xbc, 0xb2, 0xfb, 0x0e, 0x1f, 0x68, 0xcc, 0x19, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1359_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9f, 0xee, 0x19, 0x29, 0x30, 0xd3, 0x05, 0x02, 0xc0, 0x5e, 0x56, 0xad, 0xf0, 0x86, 0xec, 0xd1, 0x3a, 0x92, 0xcd, 0x43, 0xce, 0x0c, 0x72, 0xea, 0x65, 0xea, 0xd4, 0x36, 0x67, 0x89, 0x0a, 0xe1, 0x9b, 0xe8, 0x35, 0x33, 0x3c, 0x32, 0xc5, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1359 = { .name = "ecdsa_brainpoolp320r1_sha384_1359", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1359_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1359_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1359_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 349 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1360 for ECDSA, tcId is 350 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1360_pubkey[] = { 0x18, 0x7d, 0x93, 0xf8, 0x4a, 0x0e, 0x60, 0x43, 0xf0, 0x97, 0xd0, 0xa8, 0x7f, 0x8d, 0xca, 0x07, 0x73, 0x9c, 0xf4, 0x45, 0x48, 0xa7, 0xd3, 0x40, 0x3e, 0x03, 0x9e, 0x49, 0xc4, 0xc5, 0x12, 0x85, 0x48, 0x29, 0x75, 0xaf, 0x54, 0xec, 0x05, 0x6c, 0x06, 0x23, 0xc5, 0x75, 0x38, 0xfe, 0xfb, 0x72, 0x31, 0xd6, 0x19, 0xbb, 0xef, 0xd4, 0xca, 0xb3, 0x73, 0xa5, 0x4b, 0x36, 0x13, 0x54, 0xe5, 0x86, 0xb1, 0xd9, 0x98, 0x1a, 0x88, 0x35, 0xe9, 0xc6, 0xbe, 0xab, 0x08, 0x2c, 0xb9, 0x3e, 0x13, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1360_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x96, 0x3f, 0x97, 0xcb, 0x35, 0xa3, 0x21, 0xdf, 0x62, 0xfc, 0x21, 0x9e, 0xb2, 0xf3, 0x70, 0x39, 0x49, 0xc4, 0x83, 0x16, 0x5d, 0x06, 0xdb, 0x13, 0xc4, 0x03, 0x08, 0x0a, 0x86, 0xc1, 0xe5, 0xd9, 0xb4, 0x3d, 0x2e, 0x8d, 0xd9, 0x64, 0x3c, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1360 = { .name = "ecdsa_brainpoolp320r1_sha384_1360", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1360_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1360_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1360_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 350 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1361 for ECDSA, tcId is 351 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1361_pubkey[] = { 0x08, 0x55, 0xcc, 0x20, 0x35, 0x11, 0x26, 0xb3, 0x8f, 0x93, 0x4f, 0xbb, 0x56, 0xc3, 0x02, 0xf6, 0x2a, 0x36, 0x0e, 0x62, 0x49, 0x3c, 0x2d, 0x52, 0x9f, 0xb8, 0x7c, 0xae, 0xa0, 0xd7, 0x1b, 0xfd, 0xaf, 0x5f, 0xcc, 0x33, 0x68, 0xd4, 0x95, 0xfd, 0x1c, 0xe7, 0x57, 0x86, 0x10, 0xcb, 0xec, 0x46, 0x53, 0x98, 0xb2, 0xc1, 0x23, 0x8b, 0x3e, 0x23, 0xb9, 0xe2, 0x9b, 0x47, 0x61, 0x96, 0x10, 0x64, 0x30, 0xd7, 0x63, 0x16, 0xaa, 0xf2, 0x99, 0x37, 0xac, 0xe6, 0x58, 0xb6, 0x9c, 0x8b, 0xfb, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1361_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0xdb, 0xff, 0x9e, 0x66, 0x7e, 0x7b, 0xcd, 0x44, 0x95, 0x02, 0x26, 0xf9, 0x3b, 0x09, 0x73, 0x8e, 0x79, 0x35, 0x17, 0xc0, 0x28, 0x86, 0xae, 0x9f, 0x2b, 0x3d, 0xed, 0xed, 0xa7, 0x56, 0xc9, 0x04, 0x9a, 0xb9, 0xa4, 0x6b, 0xc7, 0xc9, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1361 = { .name = "ecdsa_brainpoolp320r1_sha384_1361", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1361_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1361_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1361_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 351 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1362 for ECDSA, tcId is 352 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1362_pubkey[] = { 0x94, 0xc5, 0x49, 0x19, 0x00, 0x40, 0x79, 0xbe, 0x0d, 0xb4, 0xc9, 0x2d, 0xc1, 0xfc, 0x94, 0x7d, 0x79, 0xeb, 0x0f, 0x8e, 0x86, 0x9d, 0x94, 0x81, 0x38, 0x86, 0xad, 0xa4, 0x25, 0x4f, 0x1d, 0xad, 0xb4, 0xd8, 0x7a, 0x61, 0x12, 0xa5, 0x83, 0x36, 0x86, 0xd8, 0xb5, 0xbe, 0xac, 0x00, 0xfa, 0xfd, 0x64, 0x7e, 0xf8, 0xb6, 0x31, 0xe8, 0x99, 0xa6, 0xa8, 0xb7, 0x2a, 0x51, 0x1d, 0x4f, 0x50, 0xce, 0x15, 0x66, 0x48, 0xad, 0x9c, 0xb7, 0x08, 0xfb, 0x2f, 0xb2, 0xc6, 0x38, 0xfd, 0xb9, 0xf3, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1362_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x85, 0x24, 0x66, 0xce, 0xf3, 0x16, 0x99, 0x2b, 0x3c, 0xa2, 0x5c, 0xc5, 0x4b, 0x7f, 0x4f, 0xda, 0x2e, 0x8a, 0x81, 0x9e, 0x7c, 0x4b, 0x04, 0x05, 0x43, 0xe9, 0x4f, 0x9c, 0xac, 0xa0, 0x29, 0x37, 0x68, 0x1c, 0x20, 0x19, 0xbb, 0x49, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1362 = { .name = "ecdsa_brainpoolp320r1_sha384_1362", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1362_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1362_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1362_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 352 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1363 for ECDSA, tcId is 353 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1363_pubkey[] = { 0x2b, 0xca, 0x76, 0x04, 0x37, 0x28, 0xb5, 0xee, 0xef, 0xde, 0x89, 0xd2, 0x5a, 0xcd, 0xf2, 0xe0, 0xb1, 0x60, 0xc5, 0xae, 0x0c, 0xcd, 0xab, 0x6b, 0xd3, 0xba, 0xa4, 0x79, 0xf1, 0x77, 0x53, 0xc3, 0xc0, 0x00, 0xcc, 0xf8, 0xba, 0x86, 0x23, 0xde, 0x92, 0xf0, 0xc2, 0xd6, 0x8a, 0x1b, 0xd4, 0x05, 0xe4, 0x49, 0x82, 0x3f, 0xe6, 0x3b, 0x21, 0x40, 0x2a, 0xef, 0x3e, 0x9a, 0x01, 0x7d, 0xcb, 0xc3, 0x0a, 0xf1, 0x8b, 0xcc, 0x79, 0xa8, 0x52, 0x64, 0x83, 0x43, 0x98, 0xc7, 0x2f, 0xa2, 0xbb, 0x16, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1363_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x4b, 0xfe, 0x18, 0x00, 0x78, 0x6b, 0x02, 0x56, 0xe9, 0x0a, 0xc2, 0xde, 0x27, 0x2f, 0x41, 0xc8, 0x5e, 0x09, 0x76, 0xc0, 0xca, 0xa1, 0x69, 0x1b, 0xd8, 0x35, 0xa5, 0xa4, 0x44, 0xb1, 0xed, 0x17, 0x05, 0xa0, 0x36, 0x1a, 0xe6, 0xee, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1363 = { .name = "ecdsa_brainpoolp320r1_sha384_1363", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1363_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1363_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1363_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 353 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1364 for ECDSA, tcId is 354 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1364_pubkey[] = { 0x1c, 0x01, 0x3b, 0x3a, 0x32, 0x60, 0xcc, 0xfb, 0x53, 0xe3, 0xf6, 0xce, 0x93, 0xe6, 0x98, 0x48, 0x65, 0xdc, 0x8e, 0x12, 0x93, 0xe9, 0x23, 0x01, 0xf4, 0xcb, 0x3a, 0x55, 0x4b, 0xd5, 0xda, 0x8a, 0x53, 0xee, 0x10, 0x1b, 0x3e, 0x1a, 0x30, 0x09, 0x97, 0xd2, 0x90, 0x1e, 0x26, 0x72, 0x93, 0x03, 0xe1, 0xcb, 0x93, 0xa8, 0xb7, 0x2d, 0xc2, 0xaf, 0xc9, 0x0f, 0xf5, 0xb4, 0x4f, 0xd5, 0xb6, 0x62, 0x44, 0x55, 0x48, 0x79, 0x74, 0xed, 0x71, 0xc7, 0x83, 0x3e, 0xff, 0x03, 0xcc, 0x12, 0x8d, 0x0c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1364_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc6, 0x97, 0xfc, 0x30, 0x00, 0xf0, 0xd6, 0x04, 0xad, 0xd2, 0x15, 0x85, 0xbc, 0x4e, 0x5e, 0x83, 0x90, 0xbc, 0x12, 0xed, 0x81, 0x95, 0x42, 0xd2, 0x37, 0xb0, 0x6b, 0x4b, 0x48, 0x89, 0x63, 0xda, 0x2e, 0x0b, 0x40, 0x6c, 0x35, 0xcd, 0xdc, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1364 = { .name = "ecdsa_brainpoolp320r1_sha384_1364", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1364_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1364_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1364_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 354 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1365 for ECDSA, tcId is 355 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1365_pubkey[] = { 0x62, 0x4b, 0xec, 0x45, 0x20, 0xe6, 0x04, 0x4a, 0xbe, 0xd1, 0xee, 0xe4, 0x96, 0x46, 0x68, 0x77, 0x51, 0x81, 0x46, 0x4c, 0x5d, 0x6b, 0xf5, 0xa8, 0xb5, 0x39, 0xf1, 0x15, 0x6f, 0x32, 0x48, 0xc0, 0x22, 0x71, 0xbf, 0x94, 0x25, 0xb9, 0x66, 0xb5, 0x47, 0xf4, 0x06, 0xbc, 0xc1, 0x43, 0x22, 0x6d, 0x81, 0x4c, 0xdb, 0x98, 0x8d, 0x76, 0x41, 0x2a, 0xd1, 0x86, 0xbd, 0xee, 0xb8, 0x69, 0xad, 0x78, 0xa3, 0x2f, 0xe8, 0x7c, 0x76, 0xf2, 0x54, 0x54, 0x47, 0xdd, 0xf8, 0xfb, 0xd0, 0x43, 0x08, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1365_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x85, 0xb3, 0x27, 0xca, 0xac, 0xf1, 0x4f, 0x23, 0x7e, 0xa7, 0xe9, 0xc8, 0x73, 0xad, 0x5f, 0x5f, 0x8a, 0x4c, 0xbe, 0x8b, 0xd0, 0xd1, 0x98, 0x26, 0x40, 0x72, 0x28, 0xfe, 0x47, 0xbc, 0xdd, 0xbe, 0x7f, 0x8b, 0x47, 0x0b, 0xef, 0x37, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1365 = { .name = "ecdsa_brainpoolp320r1_sha384_1365", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1365_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1365_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1365_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 355 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1366 for ECDSA, tcId is 356 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1366_pubkey[] = { 0x1b, 0x2b, 0x27, 0x38, 0xe3, 0x05, 0x5d, 0x15, 0x96, 0xf6, 0x41, 0x76, 0xcf, 0x0a, 0xc3, 0x81, 0xb3, 0xa8, 0x17, 0x8a, 0x2f, 0x02, 0x14, 0x03, 0x35, 0x02, 0x18, 0xfa, 0x18, 0xf9, 0xf8, 0x60, 0xc1, 0xbb, 0xa3, 0x9f, 0xc5, 0x24, 0xbc, 0x82, 0x09, 0xfb, 0xaf, 0xca, 0x1a, 0xfc, 0x5a, 0xf7, 0x59, 0x8b, 0x87, 0x8d, 0x69, 0xcb, 0x87, 0x5b, 0xe0, 0xd3, 0x9f, 0x41, 0xff, 0x01, 0xb0, 0x93, 0x88, 0x69, 0x3e, 0xb3, 0x10, 0xad, 0xc9, 0xd4, 0x83, 0x6e, 0x22, 0x6c, 0x23, 0x67, 0x7e, 0x51, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1366_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa2, 0xc1, 0xf8, 0x40, 0x88, 0x12, 0x0f, 0xce, 0x85, 0xfe, 0xcf, 0x81, 0xf0, 0xec, 0xc0, 0x07, 0x29, 0xf4, 0x19, 0x9e, 0xbb, 0xa0, 0xd5, 0xb5, 0xed, 0xa1, 0x90, 0x00, 0x10, 0x00, 0xb4, 0x31, 0x68, 0xdb, 0x25, 0x4b, 0x8e, 0xf3, 0x2a, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1366 = { .name = "ecdsa_brainpoolp320r1_sha384_1366", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1366_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1366_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1366_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 356 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1367 for ECDSA, tcId is 357 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1367_pubkey[] = { 0x40, 0x90, 0x2b, 0xf6, 0xb2, 0x39, 0xd2, 0xf3, 0x58, 0x82, 0x60, 0xe9, 0xd7, 0xf5, 0x12, 0x25, 0x3f, 0xa4, 0x4f, 0x30, 0x8a, 0x0a, 0xb8, 0x1d, 0xff, 0x05, 0xb8, 0xfa, 0x2e, 0x25, 0x81, 0x4d, 0x65, 0xc2, 0x01, 0x8d, 0x49, 0x39, 0x0a, 0xae, 0x01, 0x6f, 0x8a, 0xe5, 0x69, 0x19, 0x38, 0x40, 0x2a, 0xdc, 0x0f, 0xfa, 0x29, 0xbb, 0x87, 0xef, 0x0a, 0xf0, 0xec, 0xf3, 0xcd, 0x44, 0x6d, 0x97, 0xc3, 0xe8, 0xd1, 0x2b, 0x3b, 0x09, 0xeb, 0x78, 0x90, 0x9c, 0x1b, 0x91, 0xb1, 0xb8, 0x78, 0x5f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1367_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x71, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1367 = { .name = "ecdsa_brainpoolp320r1_sha384_1367", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1367_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1367_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1367_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 357 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1368 for ECDSA, tcId is 358 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1368_pubkey[] = { 0x72, 0x65, 0x33, 0xe2, 0x67, 0x73, 0xac, 0x72, 0x0a, 0x11, 0x5b, 0x02, 0xde, 0x89, 0xac, 0x15, 0x96, 0x66, 0x77, 0xe2, 0x39, 0xb7, 0xc5, 0x77, 0xa1, 0xc1, 0x5b, 0x81, 0x02, 0x7b, 0x1f, 0xeb, 0x73, 0xe6, 0x73, 0x60, 0x1e, 0x21, 0x1a, 0xa9, 0x2a, 0xcc, 0xb5, 0x85, 0xbc, 0x06, 0xcc, 0x27, 0x4b, 0x61, 0xc9, 0xe6, 0x14, 0x74, 0x6e, 0xdd, 0x24, 0x8d, 0x1c, 0xcc, 0xf8, 0xd8, 0xb1, 0xab, 0x4b, 0xc1, 0x5c, 0xc5, 0x8c, 0xdf, 0x11, 0x60, 0x65, 0xce, 0x97, 0x67, 0xf2, 0xa3, 0x22, 0x3d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1368_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x02, 0xa6, 0xeb, 0x40, 0x84, 0x43, 0xd2, 0x4e, 0x96, 0xbe, 0x4c, 0xa0, 0x27, 0x84, 0x42, 0xa8, 0xa4, 0x26, 0x08, 0x7f, 0x9b, 0xeb, 0x03, 0xff, 0xe5, 0x52, 0x61, 0x62, 0xbf, 0x1d, 0xc3, 0x04, 0x34, 0xcf, 0x7e, 0xa7, 0x95, 0x74, 0xb1, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1368 = { .name = "ecdsa_brainpoolp320r1_sha384_1368", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1368_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1368_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1368_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 358 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1369 for ECDSA, tcId is 359 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1369_pubkey[] = { 0x53, 0xc3, 0xda, 0x4d, 0xe1, 0x4f, 0x7d, 0x35, 0x77, 0x5f, 0x9b, 0xec, 0xa6, 0xd5, 0x3e, 0xe7, 0x8d, 0xac, 0x73, 0xcd, 0x3f, 0x18, 0xc6, 0xfb, 0xf7, 0x09, 0xb4, 0xff, 0xa7, 0xdd, 0x3e, 0x70, 0xb4, 0x36, 0x40, 0x9b, 0x9b, 0x28, 0x5d, 0x1c, 0x2a, 0x5b, 0x60, 0xe4, 0x57, 0xe5, 0x84, 0x22, 0xc9, 0x59, 0x14, 0x2b, 0x5e, 0xcf, 0xf2, 0x36, 0xdf, 0xd7, 0x6c, 0x99, 0xc3, 0x01, 0x8c, 0xea, 0x90, 0x40, 0x58, 0x09, 0x9a, 0x13, 0x64, 0x7d, 0xb0, 0x88, 0x98, 0xcf, 0xd0, 0x50, 0x9e, 0x84, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1369_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb6, 0xba, 0x1a, 0xec, 0xd2, 0x40, 0xde, 0xbe, 0x77, 0x21, 0x3a, 0x42, 0x28, 0xb1, 0x25, 0x60, 0x36, 0x71, 0xc9, 0xd5, 0x14, 0x7b, 0x6c, 0x0b, 0x36, 0xdd, 0x23, 0xe4, 0x2b, 0x7c, 0xb5, 0x07, 0x8a, 0x1b, 0x8f, 0xdf, 0x1b, 0x98, 0xb9, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1369 = { .name = "ecdsa_brainpoolp320r1_sha384_1369", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1369_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1369_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1369_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 359 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1370 for ECDSA, tcId is 360 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1370_pubkey[] = { 0xcd, 0x24, 0xae, 0x7f, 0x75, 0x23, 0xad, 0xf8, 0x59, 0xdb, 0x92, 0xe5, 0x1d, 0x48, 0x74, 0x6b, 0x8b, 0x2f, 0x86, 0x86, 0x20, 0x89, 0x8a, 0x9c, 0x42, 0xf8, 0xba, 0xe8, 0x17, 0x3e, 0x36, 0x46, 0xf5, 0x86, 0xfd, 0x81, 0x87, 0x12, 0x43, 0x0e, 0x55, 0xb1, 0x2d, 0x59, 0xf7, 0x34, 0x41, 0x68, 0xf7, 0x96, 0xfe, 0x59, 0xc0, 0x26, 0xea, 0xaa, 0x13, 0x97, 0x45, 0xa8, 0xac, 0xe9, 0x7d, 0xf1, 0xd5, 0xc6, 0xbc, 0xc2, 0x1f, 0x0c, 0xfa, 0x68, 0x60, 0xf9, 0xc8, 0xc7, 0x5f, 0x39, 0x16, 0x29, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1370_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x7b, 0x38, 0x3b, 0xa1, 0xce, 0xbf, 0x5c, 0xa5, 0x79, 0xef, 0x6e, 0xd1, 0x00, 0x27, 0x98, 0x8f, 0x84, 0x24, 0xf4, 0x2f, 0xfb, 0xea, 0x2e, 0x51, 0xb3, 0x34, 0x0d, 0xf9, 0xf8, 0xc3, 0xc6, 0x0b, 0x55, 0x8d, 0x6d, 0xc2, 0xdf, 0x10, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1370 = { .name = "ecdsa_brainpoolp320r1_sha384_1370", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1370_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1370_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1370_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 360 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1371 for ECDSA, tcId is 361 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1371_pubkey[] = { 0x4d, 0xb4, 0x60, 0x20, 0x99, 0x72, 0xc8, 0xe9, 0xc3, 0x65, 0x11, 0x95, 0x46, 0xac, 0x45, 0x7a, 0xdd, 0x15, 0x7f, 0x0c, 0x4d, 0x2b, 0x3c, 0xd6, 0x5c, 0x63, 0x5d, 0xca, 0xec, 0xa6, 0x17, 0x02, 0x9c, 0xab, 0xf7, 0x5c, 0x06, 0x10, 0x1b, 0xb6, 0x9e, 0xf8, 0xb7, 0x62, 0x6e, 0x6b, 0x2f, 0x98, 0x45, 0xb0, 0x08, 0x6d, 0x2a, 0x96, 0x40, 0x18, 0xb9, 0xb2, 0x5e, 0xb8, 0xdb, 0x42, 0x6b, 0xc9, 0x06, 0x94, 0xcc, 0x61, 0x4b, 0x76, 0x02, 0xb1, 0xfd, 0x60, 0x87, 0xa9, 0xa7, 0x1c, 0xbf, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1371_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x98, 0xff, 0x1d, 0xb1, 0xb9, 0xaf, 0xfa, 0x33, 0xa2, 0xe5, 0x3c, 0x68, 0x4d, 0x3f, 0x07, 0x61, 0x17, 0x72, 0x40, 0x5e, 0x8c, 0x20, 0x0f, 0x2a, 0xf2, 0xaf, 0xa9, 0xe5, 0x3c, 0x6e, 0x8e, 0xf3, 0x0c, 0xc1, 0x43, 0xb3, 0xf5, 0xff, 0x7f, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1371 = { .name = "ecdsa_brainpoolp320r1_sha384_1371", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1371_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1371_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1371_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 361 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1372 for ECDSA, tcId is 362 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1372_pubkey[] = { 0x3e, 0x7a, 0xb8, 0x50, 0x84, 0x0d, 0x75, 0x98, 0x7d, 0x33, 0x83, 0x7e, 0xad, 0x46, 0x49, 0x9c, 0xe4, 0x33, 0xf3, 0xfc, 0xe6, 0x73, 0x83, 0xb2, 0xe3, 0x25, 0xdd, 0x2f, 0xc7, 0xe0, 0xf5, 0x00, 0x76, 0x9c, 0xbb, 0x67, 0xb4, 0x55, 0x0a, 0x28, 0xc3, 0x03, 0x14, 0x48, 0x7a, 0x87, 0x09, 0x47, 0x50, 0x33, 0x44, 0x99, 0xdb, 0xfb, 0xeb, 0x2d, 0x5c, 0xb9, 0x76, 0xee, 0x2d, 0x47, 0x99, 0x73, 0x21, 0x59, 0x7a, 0x41, 0x12, 0x4a, 0x03, 0x8f, 0xe8, 0x67, 0xbe, 0x0e, 0xf6, 0x68, 0xc4, 0xce, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1372_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x9f, 0xf4, 0x43, 0x3c, 0xa3, 0xa4, 0xaf, 0x64, 0x8e, 0x00, 0x71, 0xc8, 0x7c, 0x2e, 0x5c, 0x35, 0x54, 0xb1, 0x17, 0x61, 0xb1, 0x0b, 0xb2, 0xb8, 0x17, 0x25, 0x02, 0x8a, 0x56, 0xc4, 0xfc, 0x92, 0xf1, 0x32, 0x0c, 0xa7, 0x39, 0x6c, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1372 = { .name = "ecdsa_brainpoolp320r1_sha384_1372", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1372_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1372_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1372_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 362 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1373 for ECDSA, tcId is 363 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1373_pubkey[] = { 0x7a, 0xcc, 0x91, 0x99, 0x34, 0xb0, 0xfd, 0x90, 0x01, 0x1c, 0xd9, 0x6f, 0x59, 0xdd, 0xba, 0x52, 0xe1, 0x20, 0x94, 0xda, 0xc1, 0x8a, 0x2c, 0xad, 0xcb, 0x03, 0xa0, 0xf3, 0x1a, 0xc7, 0x2d, 0x3f, 0xd5, 0x98, 0x4a, 0x11, 0xe9, 0x22, 0x0f, 0x8c, 0x06, 0x29, 0xbc, 0x5f, 0x3f, 0x0d, 0xab, 0xbd, 0x3f, 0xdd, 0x30, 0xf4, 0x7a, 0x0a, 0x5b, 0xea, 0x30, 0x52, 0x89, 0x2f, 0x8e, 0x50, 0xa4, 0x03, 0x3b, 0xe4, 0x79, 0x5b, 0x32, 0xc6, 0x67, 0x1d, 0x14, 0x1b, 0x47, 0x30, 0x80, 0xe5, 0x79, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1373_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc7, 0x6c, 0xe5, 0x35, 0x60, 0x16, 0x3f, 0x15, 0x7b, 0x11, 0xe4, 0xd0, 0x5c, 0x61, 0x54, 0x0a, 0x5d, 0xf6, 0xb8, 0x24, 0x1c, 0xbd, 0x3b, 0xa7, 0xd9, 0x11, 0xa7, 0x54, 0x1e, 0xec, 0x55, 0xe9, 0x86, 0xeb, 0xf8, 0x11, 0xae, 0x50, 0xa8, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1373 = { .name = "ecdsa_brainpoolp320r1_sha384_1373", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1373_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1373_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1373_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 363 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1374 for ECDSA, tcId is 364 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1374_pubkey[] = { 0x12, 0xc1, 0x63, 0xfe, 0x25, 0xcb, 0x79, 0xad, 0x59, 0xc7, 0x6b, 0x52, 0x80, 0xdc, 0x67, 0x06, 0xa4, 0x2c, 0x58, 0x59, 0x62, 0x30, 0xbf, 0x7b, 0xa7, 0x20, 0x6e, 0x6c, 0xe2, 0xb4, 0x67, 0xe1, 0xb7, 0xa7, 0x06, 0x3e, 0x59, 0xb0, 0xbe, 0xd6, 0xcc, 0xbe, 0xaf, 0x22, 0xac, 0xcb, 0x1a, 0xc4, 0x1e, 0xd4, 0x3a, 0xc7, 0x75, 0xb9, 0x7a, 0xea, 0x3a, 0x68, 0x8e, 0x2f, 0x09, 0x6c, 0x3a, 0x5e, 0x59, 0xf8, 0x68, 0xbc, 0x91, 0x9d, 0xa5, 0xce, 0x25, 0x2c, 0xf5, 0xd7, 0x12, 0xe7, 0xde, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1374_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x42, 0x18, 0xa4, 0x51, 0x16, 0xea, 0x65, 0xb2, 0x83, 0xcc, 0x7d, 0x90, 0xa5, 0x10, 0xf0, 0x77, 0xb1, 0xb0, 0x9e, 0xdd, 0xbc, 0xfc, 0xa3, 0xe7, 0xd2, 0x89, 0x6b, 0x86, 0x9d, 0xd3, 0xba, 0x55, 0x6c, 0x4f, 0x10, 0x59, 0x0b, 0x0e, 0x08, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1374 = { .name = "ecdsa_brainpoolp320r1_sha384_1374", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1374_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1374_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1374_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 364 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1375 for ECDSA, tcId is 365 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1375_pubkey[] = { 0x69, 0x60, 0xbf, 0xcd, 0xdd, 0x00, 0x21, 0xfc, 0xb8, 0xa3, 0xd7, 0xaa, 0x85, 0xf9, 0x6c, 0xf3, 0x60, 0xa7, 0x11, 0x3e, 0x38, 0x24, 0x50, 0x85, 0x25, 0x02, 0x1f, 0x83, 0xe3, 0x08, 0x59, 0x89, 0xc3, 0x5e, 0x0c, 0x57, 0x72, 0x65, 0x03, 0x30, 0x5c, 0x12, 0x75, 0xb9, 0xd8, 0xb5, 0x19, 0x9d, 0x46, 0x1f, 0xcb, 0x9d, 0x34, 0xf8, 0x85, 0x7b, 0x65, 0xa1, 0x40, 0x46, 0x2f, 0xd5, 0xcd, 0xc7, 0xa3, 0x3e, 0x5c, 0xf7, 0xf4, 0xe2, 0xd0, 0x8a, 0x5a, 0x34, 0xd9, 0xae, 0x00, 0xb2, 0x93, 0x9a, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1375_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x5f, 0x32, 0x42, 0x3b, 0xad, 0x36, 0x44, 0xbe, 0x71, 0x8d, 0x81, 0x95, 0x34, 0x13, 0x62, 0xc9, 0xcb, 0xa5, 0x2b, 0x33, 0x0f, 0x91, 0x3b, 0x15, 0x21, 0xaf, 0x6e, 0x5e, 0x3e, 0xb2, 0x06, 0x94, 0x21, 0xb0, 0x5d, 0xca, 0xc2, 0x99, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1375 = { .name = "ecdsa_brainpoolp320r1_sha384_1375", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1375_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1375_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1375_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 365 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1376 for ECDSA, tcId is 366 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1376_pubkey[] = { 0x66, 0xad, 0x2c, 0x26, 0x01, 0x23, 0x88, 0xc8, 0xb9, 0x04, 0x6a, 0x46, 0x6b, 0x87, 0xbd, 0x71, 0xb6, 0x4a, 0xb8, 0x1b, 0x54, 0xcf, 0xfc, 0x5a, 0x61, 0x1f, 0x4b, 0x75, 0x81, 0xad, 0x83, 0x65, 0xed, 0xd0, 0x8e, 0x6a, 0xfd, 0x4a, 0x52, 0xf6, 0x1a, 0x30, 0x66, 0xc0, 0xb3, 0xb7, 0x03, 0xdd, 0xce, 0x74, 0x62, 0x39, 0xa4, 0xd3, 0xdb, 0xf1, 0x93, 0x89, 0x45, 0xf1, 0x5e, 0xa9, 0x49, 0x7b, 0xbf, 0xc4, 0x5b, 0x38, 0x9e, 0x13, 0x03, 0x50, 0xb9, 0x94, 0x59, 0x22, 0xb8, 0x7c, 0xe3, 0x74, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1376_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xac, 0x07, 0xaa, 0xad, 0xe5, 0xc5, 0xfb, 0x2f, 0xe5, 0xa1, 0x8b, 0xbe, 0xfd, 0x26, 0x2e, 0x0e, 0x43, 0x9f, 0xd6, 0x8e, 0x0a, 0x31, 0x7d, 0xb0, 0x6f, 0xf4, 0xba, 0x62, 0x3a, 0x2a, 0x03, 0x11, 0x4e, 0xc5, 0xb6, 0xe0, 0x84, 0x17, 0x10, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1376 = { .name = "ecdsa_brainpoolp320r1_sha384_1376", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1376_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1376_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1376_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 366 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1377 for ECDSA, tcId is 367 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1377_pubkey[] = { 0x0c, 0xfa, 0x6e, 0x38, 0x38, 0xd8, 0x11, 0x3a, 0x24, 0xd8, 0x7d, 0xb9, 0x74, 0x17, 0xd6, 0x8f, 0x00, 0xc4, 0x26, 0xe9, 0xb8, 0x55, 0x0d, 0x8a, 0x95, 0x1f, 0xed, 0x53, 0x15, 0x72, 0xe7, 0xcc, 0xa6, 0x6f, 0xfe, 0x0a, 0xe1, 0x76, 0xff, 0x0e, 0x31, 0x2f, 0xa0, 0x2e, 0x5c, 0xc7, 0x7c, 0x21, 0xf4, 0xa6, 0x63, 0x0e, 0x25, 0xbc, 0xb9, 0x87, 0xdc, 0x1e, 0xef, 0x14, 0xae, 0xc8, 0x0c, 0x15, 0xb9, 0xb2, 0x92, 0xe3, 0xac, 0xfb, 0x30, 0xbc, 0x2c, 0x04, 0x38, 0xf0, 0xa9, 0x83, 0x1c, 0x07, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1377_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x31, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1377 = { .name = "ecdsa_brainpoolp320r1_sha384_1377", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1377_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1377_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1377_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 367 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1378 for ECDSA, tcId is 368 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1378_pubkey[] = { 0x3d, 0xab, 0xbc, 0x36, 0xa4, 0x55, 0xba, 0x07, 0x43, 0x2d, 0xa1, 0xaa, 0x72, 0x39, 0xae, 0xfd, 0xef, 0xb7, 0x2a, 0xc0, 0x93, 0x13, 0xc3, 0xa7, 0xf3, 0x43, 0x98, 0x50, 0xf6, 0x02, 0x54, 0x3e, 0xb4, 0xaf, 0xfc, 0x5d, 0x82, 0x25, 0xb5, 0xee, 0xce, 0x48, 0xe2, 0xf6, 0x7e, 0x82, 0xd4, 0x48, 0xb3, 0xd8, 0xb9, 0xb0, 0xfc, 0x20, 0x08, 0x32, 0xa3, 0xd1, 0xac, 0x88, 0x05, 0x88, 0x72, 0x76, 0x2f, 0xcb, 0xf0, 0x27, 0xe9, 0xf5, 0x70, 0x5d, 0x8f, 0x58, 0x12, 0xe5, 0x07, 0xda, 0xe1, 0x25, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1378_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x62, 0x3e, 0xda, 0x15, 0x79, 0xd2, 0xdf, 0xcf, 0xeb, 0x7d, 0xa5, 0x94, 0x8c, 0x01, 0x40, 0x43, 0xfb, 0xb5, 0x35, 0x19, 0x24, 0x5f, 0x61, 0xc2, 0x1e, 0x30, 0x1f, 0x2f, 0xf4, 0x59, 0x90, 0x9b, 0xaf, 0x0b, 0x8e, 0x3c, 0xd8, 0x83, 0xb7, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1378 = { .name = "ecdsa_brainpoolp320r1_sha384_1378", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1378_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1378_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1378_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 368 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1379 for ECDSA, tcId is 369 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1379_pubkey[] = { 0x8a, 0x96, 0x58, 0xdc, 0x5f, 0x91, 0xaa, 0x57, 0x77, 0x06, 0xf1, 0xd9, 0x1d, 0x22, 0x52, 0xcb, 0x0d, 0x09, 0xf2, 0x05, 0x3e, 0x56, 0x11, 0x29, 0x10, 0x5c, 0x7f, 0x37, 0xdd, 0xb2, 0xf9, 0x72, 0xb3, 0x22, 0x4f, 0x12, 0xcf, 0x9e, 0x43, 0xfe, 0x08, 0x78, 0x2e, 0xc6, 0x10, 0x5f, 0x4c, 0x06, 0x58, 0x7e, 0xb1, 0xec, 0xec, 0xb2, 0xf4, 0xf4, 0xa0, 0x4e, 0x23, 0x63, 0x04, 0xdc, 0x75, 0xeb, 0x2e, 0xff, 0xf0, 0xbe, 0x66, 0xb9, 0x77, 0xfa, 0x80, 0x4a, 0xf7, 0x3b, 0xfc, 0xba, 0xc7, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1379_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x93, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1379 = { .name = "ecdsa_brainpoolp320r1_sha384_1379", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1379_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1379_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1379_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 369 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1380 for ECDSA, tcId is 370 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1380_pubkey[] = { 0x06, 0xb4, 0x3b, 0xb9, 0x58, 0x7e, 0xe1, 0x58, 0xad, 0x57, 0x52, 0xd1, 0xad, 0x11, 0xf6, 0xf0, 0xf5, 0xe3, 0x16, 0xad, 0x21, 0x93, 0x7c, 0xdd, 0x92, 0x53, 0xf3, 0x84, 0x48, 0x57, 0xf0, 0xa2, 0x5e, 0x7b, 0x67, 0x7b, 0xbf, 0x99, 0x94, 0x44, 0x97, 0x05, 0x36, 0x23, 0x34, 0xbd, 0xce, 0xb6, 0x8a, 0xe6, 0xa5, 0x84, 0x64, 0x0c, 0x95, 0xcb, 0x10, 0x78, 0x9b, 0x19, 0x95, 0x3f, 0x5e, 0x11, 0x99, 0x73, 0xee, 0xd7, 0x35, 0x17, 0x7a, 0xab, 0xfc, 0xb2, 0x63, 0xfc, 0x8e, 0xf5, 0xef, 0x97, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1380_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x5d, 0x0d, 0x76, 0x69, 0x20, 0x6f, 0x5f, 0x3b, 0x90, 0x9d, 0x21, 0x14, 0x58, 0x92, 0xb0, 0x1b, 0x38, 0xe4, 0xea, 0x8a, 0x3d, 0xb6, 0x05, 0x9b, 0x6e, 0x91, 0xf2, 0x15, 0xbe, 0x5a, 0x83, 0xc5, 0x0d, 0xc7, 0xef, 0x8d, 0xcc, 0x5c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1380 = { .name = "ecdsa_brainpoolp320r1_sha384_1380", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1380_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1380_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1380_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 370 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1381 for ECDSA, tcId is 371 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1381_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0xc0, 0x83, 0x67, 0x94, 0x54, 0x95, 0xd9, 0x33, 0xf2, 0x06, 0x92, 0x7a, 0x2b, 0x7f, 0x5b, 0x74, 0xb2, 0x2f, 0x97, 0x3a, 0x89, 0x83, 0x55, 0xaa, 0x2f, 0x7e, 0x29, 0x5e, 0x06, 0xef, 0x3a, 0x4f, 0x56, 0x15, 0x46, 0xdb, 0x97, 0xf7, 0x9a, 0xfa, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1381_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1381 = { .name = "ecdsa_brainpoolp320r1_sha384_1381", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1381_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1381_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1381_sig, .siglen = 80, .result = 1, .comment = "point duplication during verification, tcId is 371 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1382 for ECDSA, tcId is 372 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1382_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0x12, 0xda, 0xdf, 0x8b, 0xe2, 0x26, 0x76, 0x83, 0xef, 0x35, 0xe5, 0xe4, 0xa6, 0x82, 0x84, 0xf1, 0x47, 0x60, 0x38, 0x6c, 0x6d, 0x70, 0xb8, 0x45, 0x20, 0x14, 0x90, 0x8e, 0x71, 0xa4, 0xb1, 0xd9, 0xa6, 0xbe, 0xcb, 0xd6, 0x59, 0xbb, 0x93, 0x2d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1382_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1382 = { .name = "ecdsa_brainpoolp320r1_sha384_1382", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1382_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1382_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1382_sig, .siglen = 80, .result = -1, .comment = "duplication bug, tcId is 372 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1383 for ECDSA, tcId is 373 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1383_pubkey[] = { 0x5d, 0x1a, 0x10, 0x01, 0x18, 0xbd, 0x36, 0x10, 0xf1, 0x0e, 0x13, 0xb5, 0xad, 0xcc, 0x7a, 0x90, 0xa3, 0x7f, 0x4f, 0x98, 0x8c, 0xfa, 0x4e, 0x22, 0xcc, 0xa7, 0x7e, 0x88, 0x44, 0x4b, 0x00, 0x21, 0x6d, 0xcf, 0xe5, 0xf6, 0x84, 0x18, 0xd3, 0x42, 0x5d, 0x5b, 0x88, 0xc9, 0xb8, 0xc9, 0x2b, 0x3d, 0xec, 0x7f, 0x7b, 0xcc, 0x68, 0x8a, 0x6d, 0x18, 0xe6, 0xcd, 0xeb, 0x91, 0x76, 0x15, 0x0d, 0x4b, 0x10, 0x62, 0xa8, 0x32, 0xc8, 0xa3, 0xbc, 0x37, 0x7f, 0x8d, 0x7e, 0x98, 0xb1, 0xdb, 0x0b, 0x9d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1383_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1383 = { .name = "ecdsa_brainpoolp320r1_sha384_1383", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1383_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1383_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1383_sig, .siglen = 80, .result = -1, .comment = "comparison with point at infinity , tcId is 373 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1384 for ECDSA, tcId is 374 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1384_pubkey[] = { 0xcc, 0xa9, 0xac, 0x38, 0xde, 0x5b, 0x36, 0xcf, 0x79, 0xd8, 0xe4, 0x15, 0xcb, 0x72, 0x9e, 0x68, 0x5e, 0x0b, 0xbd, 0xaf, 0xe1, 0x61, 0xc5, 0xe7, 0xec, 0xfa, 0x41, 0x77, 0xe8, 0x26, 0xe8, 0x15, 0xd6, 0x65, 0x26, 0xaa, 0x5d, 0xaf, 0x32, 0x27, 0x9b, 0x77, 0x99, 0xbc, 0xef, 0xc6, 0xb5, 0xd8, 0xd0, 0x9f, 0xf1, 0xa0, 0x73, 0x9f, 0xd4, 0x23, 0x18, 0x81, 0x26, 0xf8, 0x0a, 0xf7, 0x03, 0x31, 0x4d, 0xa0, 0xd2, 0x6b, 0xa6, 0x71, 0x4a, 0xa1, 0x97, 0xa6, 0x58, 0x2c, 0x36, 0xb0, 0xf0, 0x5d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1384_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1384 = { .name = "ecdsa_brainpoolp320r1_sha384_1384", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1384_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1384_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1384_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 374 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1385 for ECDSA, tcId is 375 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1385_pubkey[] = { 0xcc, 0xea, 0xa1, 0x20, 0x3b, 0xdc, 0xbe, 0x15, 0xe2, 0x04, 0x34, 0xd6, 0x24, 0xf0, 0xed, 0x9a, 0xca, 0x81, 0xd4, 0xc8, 0x2f, 0x84, 0x0b, 0xba, 0x3a, 0x86, 0xc6, 0x75, 0x62, 0x62, 0xaa, 0x37, 0xef, 0xed, 0x62, 0xf5, 0xf1, 0xd0, 0x97, 0xf7, 0x45, 0x70, 0x57, 0xb9, 0x8d, 0x2b, 0x9e, 0xa6, 0xbd, 0x28, 0x58, 0x1d, 0x40, 0xac, 0x20, 0xfc, 0xc9, 0xd5, 0x36, 0xa1, 0x17, 0x76, 0x92, 0x03, 0x44, 0x7b, 0xf4, 0x1e, 0x10, 0xce, 0x4d, 0xa1, 0xad, 0x79, 0x4c, 0xa2, 0x0f, 0x8e, 0xe1, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1385_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1385 = { .name = "ecdsa_brainpoolp320r1_sha384_1385", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1385_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1385_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1385_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 375 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1386 for ECDSA, tcId is 376 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1386_pubkey[] = { 0xcc, 0x9e, 0xd2, 0x5f, 0x13, 0xe9, 0x4a, 0x6e, 0xbd, 0x53, 0x1f, 0x3b, 0x14, 0x2f, 0xab, 0xc4, 0xed, 0x52, 0x2d, 0xc6, 0x12, 0x78, 0x61, 0x52, 0x88, 0x30, 0xc6, 0x78, 0x7d, 0x6e, 0xcf, 0xd4, 0xb7, 0x04, 0xe1, 0x77, 0x4e, 0x91, 0x18, 0xed, 0x68, 0xe4, 0xe1, 0x72, 0xf9, 0x3f, 0x1d, 0x5b, 0x8d, 0x78, 0x60, 0xfa, 0xe2, 0xc1, 0x15, 0xf4, 0xaa, 0x0d, 0xaa, 0xf6, 0xdf, 0x5c, 0xa3, 0x80, 0x9d, 0x79, 0xac, 0xfd, 0xb9, 0xed, 0x2b, 0xe1, 0x99, 0x95, 0x65, 0x8d, 0x2f, 0x44, 0xd2, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1386_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1386 = { .name = "ecdsa_brainpoolp320r1_sha384_1386", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1386_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1386_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1386_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 376 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1387 for ECDSA, tcId is 377 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1387_pubkey[] = { 0x6a, 0x3c, 0xae, 0x0e, 0xdc, 0x84, 0x55, 0xae, 0x16, 0xb5, 0xee, 0xb6, 0x56, 0x96, 0x03, 0xbd, 0xae, 0xb5, 0x79, 0x36, 0x99, 0xe8, 0x5d, 0x37, 0x28, 0x57, 0xf1, 0x31, 0x9c, 0x70, 0xdd, 0x52, 0x5b, 0x1e, 0xa3, 0x0a, 0x0f, 0x5c, 0x7b, 0x44, 0x07, 0x55, 0x37, 0xcd, 0x82, 0x2d, 0x9e, 0xe2, 0xd0, 0xe7, 0xa4, 0x9c, 0x4c, 0x31, 0x41, 0x44, 0x5d, 0x01, 0xb7, 0x89, 0xbb, 0xca, 0xd0, 0x2e, 0xc4, 0x24, 0x9c, 0x2e, 0x23, 0x55, 0xd6, 0x1d, 0xb5, 0x58, 0x1d, 0xbd, 0xb3, 0x42, 0xc9, 0x93, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1387_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1387 = { .name = "ecdsa_brainpoolp320r1_sha384_1387", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1387_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1387_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1387_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 377 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1388 for ECDSA, tcId is 378 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1388_pubkey[] = { 0x4e, 0xfb, 0x51, 0x61, 0xca, 0x1a, 0x1e, 0xeb, 0x59, 0xa5, 0xfc, 0x39, 0xcd, 0x52, 0x1d, 0x40, 0xbd, 0x3e, 0x03, 0x45, 0x12, 0xfa, 0x2a, 0x1e, 0xaf, 0x3b, 0x7e, 0x92, 0xbb, 0x9e, 0x95, 0xc0, 0x6a, 0x4c, 0x72, 0x6c, 0xec, 0xcd, 0xf9, 0xbc, 0x6b, 0xfa, 0x80, 0x1b, 0x06, 0x71, 0x37, 0xf1, 0xb6, 0xb4, 0x50, 0x60, 0x41, 0x13, 0x0b, 0x4d, 0x40, 0x2d, 0x90, 0x08, 0x7a, 0xd0, 0x05, 0xe3, 0xf6, 0x52, 0xe1, 0xd9, 0x1c, 0x9d, 0x34, 0x4c, 0xd1, 0xee, 0xff, 0xff, 0x61, 0xd3, 0xa3, 0x06, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1388_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1388 = { .name = "ecdsa_brainpoolp320r1_sha384_1388", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1388_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1388_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1388_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 378 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1389 for ECDSA, tcId is 379 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1389_pubkey[] = { 0x5f, 0x65, 0x86, 0x87, 0xe6, 0xa5, 0x42, 0xa9, 0x1d, 0x89, 0x3b, 0x48, 0x77, 0x6a, 0x86, 0xd5, 0x28, 0xfd, 0x39, 0x97, 0x81, 0xbb, 0xb9, 0x30, 0x5b, 0xe0, 0x79, 0x7e, 0x3a, 0x6f, 0x36, 0x11, 0x8a, 0xe1, 0x9e, 0x68, 0xdc, 0x16, 0x73, 0xf6, 0x67, 0x6e, 0x53, 0x6c, 0x78, 0x97, 0xa0, 0x00, 0x2f, 0x96, 0x64, 0x92, 0x96, 0x31, 0xf4, 0x18, 0xc4, 0x53, 0x7d, 0x23, 0x74, 0x92, 0x20, 0xc5, 0x0a, 0x32, 0x12, 0x1c, 0x43, 0x4d, 0xca, 0xd2, 0xa6, 0xcd, 0xc2, 0x03, 0xcd, 0x03, 0x5a, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1389_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1389 = { .name = "ecdsa_brainpoolp320r1_sha384_1389", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1389_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1389_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1389_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 379 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1390 for ECDSA, tcId is 380 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1390_pubkey[] = { 0x90, 0x53, 0x7a, 0x68, 0x27, 0xa2, 0x50, 0x60, 0x27, 0x3d, 0x44, 0xd4, 0x84, 0x6a, 0xea, 0x59, 0x66, 0x82, 0xdf, 0x0a, 0x59, 0xd0, 0xff, 0xe7, 0x9b, 0xe2, 0xa1, 0xeb, 0xe9, 0x18, 0x70, 0x3c, 0xab, 0xfa, 0xc6, 0x4d, 0xa5, 0xe5, 0x91, 0x00, 0x33, 0x09, 0x18, 0x0d, 0x9d, 0xa5, 0xe7, 0x82, 0x37, 0xb9, 0x54, 0x03, 0xc5, 0x2f, 0x3c, 0xee, 0xe5, 0x03, 0x06, 0x7b, 0x67, 0x27, 0x15, 0xe9, 0x7d, 0x8b, 0x63, 0x69, 0x34, 0x26, 0x84, 0xa7, 0x2f, 0x46, 0x76, 0x98, 0x74, 0x1b, 0x1a, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1390_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1390 = { .name = "ecdsa_brainpoolp320r1_sha384_1390", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1390_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1390_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1390_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 380 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1391 for ECDSA, tcId is 381 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1391_pubkey[] = { 0xa8, 0x1c, 0xcb, 0xf4, 0xfc, 0x44, 0x57, 0x03, 0x3b, 0xd4, 0x9c, 0xea, 0xc8, 0xfa, 0x52, 0xe4, 0x59, 0x40, 0x07, 0x30, 0xb8, 0x77, 0x30, 0x5b, 0xe0, 0x41, 0x81, 0x53, 0xd2, 0x78, 0xd3, 0x0b, 0x59, 0x73, 0x77, 0x7a, 0x7d, 0xd1, 0xc2, 0xc1, 0x75, 0x44, 0xff, 0x1b, 0x76, 0x20, 0x8e, 0x84, 0x10, 0x53, 0xec, 0xae, 0xf7, 0xa5, 0x86, 0x9e, 0x92, 0xda, 0x08, 0xc5, 0xc4, 0xc3, 0xd0, 0xa1, 0x67, 0xd5, 0x68, 0x5e, 0xb7, 0x21, 0xd6, 0x20, 0x33, 0x9c, 0xc9, 0xb0, 0x01, 0x49, 0x83, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1391_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1391 = { .name = "ecdsa_brainpoolp320r1_sha384_1391", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1391_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1391_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1391_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 381 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1392 for ECDSA, tcId is 382 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1392_pubkey[] = { 0xba, 0x16, 0x00, 0x89, 0x32, 0x7c, 0xf8, 0xba, 0x16, 0x3e, 0xef, 0xa4, 0x76, 0xa4, 0xea, 0xfd, 0x0f, 0x6c, 0xe9, 0xd5, 0x52, 0x92, 0xf6, 0x72, 0x4d, 0x02, 0x0f, 0x0e, 0xfa, 0xc5, 0x4b, 0xf6, 0x84, 0xf9, 0xd5, 0xf5, 0x69, 0x5f, 0x89, 0xc2, 0xb4, 0xde, 0x70, 0xdc, 0x4a, 0xb2, 0x65, 0x76, 0x18, 0x27, 0x32, 0x3d, 0xa3, 0xb2, 0xb0, 0x55, 0xac, 0x11, 0x87, 0xfc, 0x53, 0x41, 0xe4, 0x55, 0x5e, 0xbc, 0x6f, 0x69, 0x93, 0xb4, 0xc3, 0xfd, 0xd8, 0x98, 0x63, 0xfc, 0x55, 0xea, 0x38, 0xb4, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1392_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1392 = { .name = "ecdsa_brainpoolp320r1_sha384_1392", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1392_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1392_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1392_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 382 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1393 for ECDSA, tcId is 383 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1393_pubkey[] = { 0x4a, 0x5c, 0xf4, 0x47, 0x55, 0x0f, 0x0f, 0xf2, 0xef, 0xa1, 0x93, 0xc3, 0xe1, 0x85, 0xdb, 0x60, 0x4f, 0xcf, 0xd7, 0xde, 0x5c, 0x47, 0xa5, 0x9a, 0x39, 0x2d, 0xa0, 0xc7, 0x57, 0x2f, 0x06, 0x10, 0x38, 0xc6, 0xaf, 0x5a, 0xfc, 0xfa, 0x9b, 0xd5, 0x30, 0xb7, 0x68, 0x2b, 0x82, 0x01, 0x0c, 0x39, 0x33, 0x4b, 0xa2, 0xed, 0xec, 0xf0, 0xa2, 0x3b, 0xca, 0x09, 0xe8, 0x10, 0xd7, 0x45, 0xbd, 0xf7, 0x3e, 0x44, 0x5e, 0x80, 0xac, 0xe0, 0xe5, 0x39, 0x9f, 0xa2, 0x61, 0x02, 0xcb, 0x3f, 0xae, 0xe6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1393_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1393 = { .name = "ecdsa_brainpoolp320r1_sha384_1393", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1393_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1393_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1393_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 383 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1394 for ECDSA, tcId is 384 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1394_pubkey[] = { 0x5d, 0x3f, 0xef, 0x1b, 0x96, 0xdb, 0xc8, 0xca, 0x93, 0x30, 0x50, 0x8a, 0xd4, 0xce, 0xd4, 0x91, 0xe6, 0x27, 0xeb, 0x67, 0xcb, 0xa8, 0xc6, 0xb1, 0x53, 0x79, 0x37, 0x49, 0x8e, 0xe3, 0x02, 0x1b, 0x45, 0xca, 0x67, 0x59, 0x11, 0x7d, 0x89, 0xc4, 0xad, 0x2b, 0x69, 0x9e, 0x3e, 0xf9, 0x51, 0x6f, 0xff, 0x2e, 0xd2, 0xe1, 0x34, 0x93, 0x1c, 0x96, 0xd2, 0x8d, 0x3e, 0x14, 0xdd, 0x51, 0xc5, 0xb8, 0x75, 0x89, 0xa8, 0xfa, 0x88, 0xaf, 0x25, 0x29, 0xb8, 0xca, 0xa0, 0xf7, 0x85, 0xce, 0x20, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1394_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1394 = { .name = "ecdsa_brainpoolp320r1_sha384_1394", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1394_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1394_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1394_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 384 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1395 for ECDSA, tcId is 385 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1395_pubkey[] = { 0xa8, 0x33, 0x67, 0x02, 0xc1, 0x58, 0xdc, 0xae, 0x49, 0x5f, 0x1c, 0x9c, 0xd7, 0x20, 0xc3, 0x9f, 0x15, 0xc1, 0x23, 0xa6, 0x77, 0x50, 0xdc, 0xd7, 0x45, 0x20, 0xc3, 0x4c, 0xf6, 0x79, 0x07, 0xe4, 0x92, 0x20, 0xbc, 0xd0, 0x20, 0xcc, 0x3a, 0x60, 0x15, 0x1a, 0x43, 0x2e, 0xe3, 0xe2, 0x3a, 0x74, 0xc8, 0xb8, 0xa9, 0x8d, 0x8e, 0x7c, 0x67, 0x22, 0x16, 0xdf, 0x48, 0xd8, 0xa6, 0x0d, 0x3f, 0x59, 0x2f, 0x66, 0x73, 0x83, 0x0a, 0xc9, 0xec, 0xfb, 0xcd, 0x00, 0x55, 0x0d, 0xb7, 0xad, 0x5c, 0x62, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1395_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1395 = { .name = "ecdsa_brainpoolp320r1_sha384_1395", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1395_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1395_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1395_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 385 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1396 for ECDSA, tcId is 386 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1396_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1396_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1396 = { .name = "ecdsa_brainpoolp320r1_sha384_1396", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1396_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1396_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1396_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 386 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1397 for ECDSA, tcId is 387 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1397_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1397_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1397 = { .name = "ecdsa_brainpoolp320r1_sha384_1397", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1397_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1397_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1397_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 387 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1398 for ECDSA, tcId is 388 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1398_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1398_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1398 = { .name = "ecdsa_brainpoolp320r1_sha384_1398", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1398_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1398_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1398_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 388 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1399 for ECDSA, tcId is 389 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1399_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1399_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1399 = { .name = "ecdsa_brainpoolp320r1_sha384_1399", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1399_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1399_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1399_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 389 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1400 for ECDSA, tcId is 390 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1400_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1400_sig[] = { 0x9c, 0xf7, 0xf0, 0xd6, 0x0c, 0xc1, 0xfb, 0x2d, 0x4b, 0x3e, 0x78, 0xd5, 0xf8, 0x3b, 0x37, 0x4e, 0x17, 0xa4, 0xae, 0xbc, 0xcc, 0x6e, 0x72, 0x3f, 0x1a, 0xd3, 0x5b, 0xab, 0xb2, 0xac, 0xfb, 0x2b, 0x75, 0x53, 0x03, 0x89, 0x18, 0x93, 0x95, 0xf8, 0x00, 0x11, 0x10, 0xc5, 0xb8, 0xb8, 0xe5, 0xfa, 0x8d, 0xc7, 0x95, 0x2a, 0x7b, 0xf6, 0x20, 0x0b, 0xdd, 0xae, 0x6c, 0x1d, 0x66, 0x63, 0x9a, 0x07, 0xa4, 0xb6, 0x04, 0x6e, 0x00, 0xbf, 0xa7, 0xa2, 0xbd, 0x9d, 0x57, 0x77, 0xb8, 0x0c, 0x3a, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1400 = { .name = "ecdsa_brainpoolp320r1_sha384_1400", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1400_pubkey, .pubkeylen = 80, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp320r1_sha384_1400_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 390 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1401 for ECDSA, tcId is 391 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1401_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1401_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1401_sig[] = { 0x26, 0xfd, 0x69, 0x5e, 0xe1, 0xcc, 0x50, 0xc2, 0x66, 0x1c, 0x24, 0x34, 0xf8, 0x69, 0x95, 0x77, 0xaf, 0x18, 0x13, 0x04, 0xbc, 0xeb, 0x76, 0x90, 0xc5, 0x38, 0xb0, 0x34, 0x63, 0xdf, 0x24, 0x33, 0x43, 0x95, 0xe7, 0x91, 0xf6, 0x75, 0x0f, 0xf6, 0xb3, 0x22, 0x61, 0x8c, 0xd5, 0x0c, 0x6a, 0x7c, 0xff, 0xcb, 0x41, 0x9e, 0xc0, 0x5b, 0x67, 0xec, 0x6a, 0x11, 0x70, 0x88, 0xc7, 0x8d, 0x57, 0xce, 0xcd, 0xd2, 0x24, 0x90, 0x2d, 0x39, 0x18, 0x92, 0xca, 0x03, 0xe4, 0xbc, 0x1b, 0xd0, 0x46, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1401 = { .name = "ecdsa_brainpoolp320r1_sha384_1401", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1401_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1401_msg, .msglen = 3, .sig = ecdsa_brainpoolp320r1_sha384_1401_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 391 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1402 for ECDSA, tcId is 392 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1402_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1402_sig[] = { 0x7a, 0x31, 0xb7, 0x37, 0x5f, 0x92, 0x43, 0x69, 0xec, 0x12, 0xbc, 0x33, 0xb8, 0x34, 0x72, 0x6c, 0x95, 0x44, 0x4a, 0x4c, 0x26, 0x35, 0x57, 0x34, 0x4a, 0xfa, 0x73, 0x2c, 0xf4, 0x8a, 0x15, 0x5e, 0x71, 0xa6, 0xee, 0x7d, 0xe4, 0x2e, 0x91, 0xce, 0x24, 0xd3, 0xd7, 0x28, 0x61, 0xf4, 0xd2, 0xb5, 0x51, 0xc1, 0x0f, 0x02, 0x94, 0xd1, 0x6a, 0x3b, 0xf1, 0xd4, 0xee, 0x3e, 0x48, 0x44, 0x39, 0xb8, 0x04, 0xd0, 0x97, 0xde, 0xa2, 0xd7, 0xca, 0xce, 0x76, 0xad, 0xe1, 0x4a, 0xf1, 0x66, 0x33, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1402 = { .name = "ecdsa_brainpoolp320r1_sha384_1402", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1402_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1402_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_1402_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 392 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1403 for ECDSA, tcId is 393 in file ecdsa_brainpoolP320r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_1403_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1403_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_1403_sig[] = { 0x24, 0x17, 0xeb, 0x10, 0xa5, 0x38, 0x92, 0x16, 0x21, 0x06, 0x66, 0x08, 0x24, 0x3f, 0xd6, 0x57, 0x4d, 0xe8, 0x4e, 0xf1, 0x28, 0x15, 0x20, 0xf0, 0x1e, 0xbe, 0x04, 0x44, 0xb4, 0x6a, 0x60, 0x7a, 0xb9, 0xed, 0xa8, 0xf3, 0x72, 0x17, 0x79, 0xa6, 0x8f, 0x1e, 0x2e, 0xa2, 0x94, 0x02, 0x8b, 0xae, 0xb7, 0x38, 0x18, 0x1e, 0x12, 0x8c, 0x86, 0xad, 0x55, 0xcb, 0x19, 0x45, 0x43, 0x6c, 0xf6, 0x9e, 0x09, 0x0c, 0x2f, 0x61, 0x59, 0xf6, 0xf2, 0x20, 0x11, 0xd7, 0x31, 0x73, 0x3b, 0x44, 0x33, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_1403 = { .name = "ecdsa_brainpoolp320r1_sha384_1403", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_1403_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_1403_msg, .msglen = 20, .sig = ecdsa_brainpoolp320r1_sha384_1403_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 393 in file ecdsa_brainpoolP320r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 1404 for ECDSA, tcId is 1 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1404_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1404_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x83, 0xaa, 0x7b, 0xa4, 0x85, 0xdc, 0x06, 0x0d, 0xf9, 0x92, 0x2f, 0x9c, 0xcc, 0x5d, 0xa2, 0x9a, 0xdb, 0x75, 0xd4, 0x46, 0x71, 0xd1, 0x8b, 0xad, 0x06, 0x36, 0xd2, 0xe0, 0x9c, 0x5e, 0x2f, 0x95, 0xe8, 0x92, 0xa7, 0x9b, 0x9f, 0xd3, 0xb3, 0x7e, 0x1f, 0x79, 0x8b, 0x15, 0x7b, 0x56, 0x7a, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1404 = { .name = "ecdsa_brainpoolp384r1_sha384_1404", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1404_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1404_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1404_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1405 for ECDSA, tcId is 2 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1405_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1405_sig[] = { 0x9b, 0x47, 0x2f, 0xcc, 0xbf, 0x6d, 0x81, 0x2d, 0x65, 0x69, 0x68, 0x52, 0xcb, 0xfc, 0xad, 0xdd, 0xaa, 0x9f, 0xf8, 0xb1, 0xed, 0x8f, 0x8b, 0xe7, 0x52, 0xcc, 0x82, 0xbc, 0x2a, 0xeb, 0xfc, 0x9f, 0x6b, 0xc8, 0x87, 0xfe, 0x5d, 0xa9, 0xbd, 0x8a, 0x6a, 0xaf, 0xb4, 0xc2, 0x1c, 0x74, 0xf0, 0xf6, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1405 = { .name = "ecdsa_brainpoolp384r1_sha384_1405", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1405_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1405_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1405_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1406 for ECDSA, tcId is 3 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1406_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1406_sig[] = { 0x7e, 0x2b, 0x0d, 0x38, 0x87, 0x03, 0x59, 0x22, 0xb9, 0x51, 0x76, 0xa9, 0xd5, 0xcf, 0xd5, 0xe0, 0x7f, 0xbe, 0xe9, 0x61, 0xed, 0x19, 0x21, 0x7e, 0xeb, 0x60, 0x5a, 0x1d, 0x2d, 0x1c, 0x4e, 0xb0, 0x32, 0xac, 0xe5, 0x60, 0x79, 0x55, 0xc8, 0x96, 0x0c, 0x60, 0xaf, 0x43, 0xb5, 0x93, 0xd9, 0xd4, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1406 = { .name = "ecdsa_brainpoolp384r1_sha384_1406", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1406_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1406_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1406_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1407 for ECDSA, tcId is 4 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1407_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1407_sig[] = { 0x01, 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1407 = { .name = "ecdsa_brainpoolp384r1_sha384_1407", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1407_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1407_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1407_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1408 for ECDSA, tcId is 5 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1408_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1408_sig[] = { 0xf1, 0x71, 0xee, 0xb5, 0xe3, 0xca, 0xeb, 0xfa, 0xa9, 0xf4, 0x07, 0x2b, 0x84, 0xe9, 0x94, 0x01, 0x6a, 0x8f, 0x78, 0x57, 0xff, 0xc4, 0xca, 0xcb, 0xcc, 0x49, 0xeb, 0xb0, 0x81, 0x18, 0x29, 0x08, 0x63, 0x72, 0x2e, 0xb1, 0x0d, 0xd6, 0x05, 0x85, 0xd0, 0xd8, 0x7d, 0x40, 0xcc, 0x8f, 0x74, 0x6f, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1408 = { .name = "ecdsa_brainpoolp384r1_sha384_1408", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1408_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1408_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1408_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1409 for ECDSA, tcId is 6 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1409_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1409_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x95, 0xc7, 0xc1, 0x60, 0xc0, 0x94, 0xd4, 0x42, 0x25, 0x28, 0xaf, 0x5f, 0xd5, 0x6e, 0xe1, 0x23, 0x4e, 0xe9, 0x0d, 0xcd, 0x68, 0xd7, 0x21, 0xb9, 0x37, 0xf6, 0x09, 0xf8, 0xbb, 0xaa, 0x1b, 0xb9, 0xb5, 0xe2, 0xc5, 0xc3, 0x37, 0x2b, 0xd2, 0xa2, 0x57, 0x96, 0xd8, 0xf0, 0x56, 0xb2, 0x50, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1409 = { .name = "ecdsa_brainpoolp384r1_sha384_1409", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1409_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1409_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1409_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1410 for ECDSA, tcId is 7 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1410_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1410_sig[] = { 0x00, 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x01, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1410 = { .name = "ecdsa_brainpoolp384r1_sha384_1410", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1410_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1410_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1410_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1411 for ECDSA, tcId is 8 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1411_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1411_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0xf6, 0xf1, 0x5d, 0x21, 0xe2, 0xa3, 0x98, 0xe5, 0xea, 0x34, 0xc0, 0x1e, 0x7b, 0x77, 0x60, 0xbb, 0xc6, 0x46, 0x63, 0x3c, 0x84, 0x7d, 0x34, 0xf9, 0xe7, 0x20, 0x64, 0x73, 0xf0, 0x5a, 0x09, 0xee, 0x19, 0x57, 0xf0, 0xec, 0x34, 0x53, 0xf0, 0x6d, 0xe3, 0xf1, 0x59, 0x12, 0x92, 0x52, 0x14, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1411 = { .name = "ecdsa_brainpoolp384r1_sha384_1411", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1411_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1411_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1411_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1412 for ECDSA, tcId is 9 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1412_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1412_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1412 = { .name = "ecdsa_brainpoolp384r1_sha384_1412", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1412_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1412_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1412_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1413 for ECDSA, tcId is 10 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1413_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1413_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1413 = { .name = "ecdsa_brainpoolp384r1_sha384_1413", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1413_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1413_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1413_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1414 for ECDSA, tcId is 11 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1414_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1414_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1414 = { .name = "ecdsa_brainpoolp384r1_sha384_1414", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1414_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1414_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1414_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1415 for ECDSA, tcId is 12 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1415_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1415_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1415 = { .name = "ecdsa_brainpoolp384r1_sha384_1415", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1415_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1415_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1415_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1416 for ECDSA, tcId is 13 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1416_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1416_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1416 = { .name = "ecdsa_brainpoolp384r1_sha384_1416", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1416_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1416_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1416_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1417 for ECDSA, tcId is 14 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1417_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1417_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1417 = { .name = "ecdsa_brainpoolp384r1_sha384_1417", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1417_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1417_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1417_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1418 for ECDSA, tcId is 15 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1418_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1418_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1418 = { .name = "ecdsa_brainpoolp384r1_sha384_1418", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1418_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1418_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1418_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1419 for ECDSA, tcId is 16 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1419_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1419_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1419 = { .name = "ecdsa_brainpoolp384r1_sha384_1419", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1419_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1419_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1419_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1420 for ECDSA, tcId is 17 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1420_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1420_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1420 = { .name = "ecdsa_brainpoolp384r1_sha384_1420", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1420_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1420_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1420_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1421 for ECDSA, tcId is 18 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1421_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1421_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1421 = { .name = "ecdsa_brainpoolp384r1_sha384_1421", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1421_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1421_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1421_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1422 for ECDSA, tcId is 19 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1422_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1422_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1422 = { .name = "ecdsa_brainpoolp384r1_sha384_1422", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1422_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1422_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1422_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1423 for ECDSA, tcId is 20 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1423_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1423_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1423 = { .name = "ecdsa_brainpoolp384r1_sha384_1423", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1423_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1423_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1423_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1424 for ECDSA, tcId is 21 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1424_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1424_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1424 = { .name = "ecdsa_brainpoolp384r1_sha384_1424", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1424_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1424_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1424_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1425 for ECDSA, tcId is 22 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1425_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1425_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1425 = { .name = "ecdsa_brainpoolp384r1_sha384_1425", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1425_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1425_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1425_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1426 for ECDSA, tcId is 23 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1426_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1426_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1426 = { .name = "ecdsa_brainpoolp384r1_sha384_1426", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1426_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1426_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1426_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1427 for ECDSA, tcId is 24 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1427_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1427_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1427 = { .name = "ecdsa_brainpoolp384r1_sha384_1427", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1427_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1427_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1427_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1428 for ECDSA, tcId is 25 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1428_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1428_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1428 = { .name = "ecdsa_brainpoolp384r1_sha384_1428", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1428_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1428_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1428_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1429 for ECDSA, tcId is 26 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1429_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1429_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1429 = { .name = "ecdsa_brainpoolp384r1_sha384_1429", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1429_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1429_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1429_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1430 for ECDSA, tcId is 27 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1430_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1430_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1430 = { .name = "ecdsa_brainpoolp384r1_sha384_1430", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1430_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1430_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1430_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1431 for ECDSA, tcId is 28 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1431_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1431_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1431 = { .name = "ecdsa_brainpoolp384r1_sha384_1431", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1431_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1431_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1431_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1432 for ECDSA, tcId is 29 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1432_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1432_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1432 = { .name = "ecdsa_brainpoolp384r1_sha384_1432", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1432_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1432_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1432_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1433 for ECDSA, tcId is 30 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1433_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1433_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1433 = { .name = "ecdsa_brainpoolp384r1_sha384_1433", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1433_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1433_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1433_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1434 for ECDSA, tcId is 31 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1434_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1434_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1434 = { .name = "ecdsa_brainpoolp384r1_sha384_1434", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1434_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1434_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1434_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1435 for ECDSA, tcId is 32 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1435_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1435_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1435 = { .name = "ecdsa_brainpoolp384r1_sha384_1435", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1435_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1435_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1435_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1436 for ECDSA, tcId is 33 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1436_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1436_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1436 = { .name = "ecdsa_brainpoolp384r1_sha384_1436", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1436_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1436_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1436_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1437 for ECDSA, tcId is 34 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1437_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1437_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1437 = { .name = "ecdsa_brainpoolp384r1_sha384_1437", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1437_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1437_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1437_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1438 for ECDSA, tcId is 35 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1438_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1438_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1438 = { .name = "ecdsa_brainpoolp384r1_sha384_1438", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1438_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1438_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1438_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1439 for ECDSA, tcId is 36 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1439_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1439_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1439 = { .name = "ecdsa_brainpoolp384r1_sha384_1439", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1439_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1439_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1439_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1440 for ECDSA, tcId is 37 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1440_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1440_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1440 = { .name = "ecdsa_brainpoolp384r1_sha384_1440", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1440_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1440_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1440_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1441 for ECDSA, tcId is 38 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1441_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1441_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1441 = { .name = "ecdsa_brainpoolp384r1_sha384_1441", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1441_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1441_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1441_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1442 for ECDSA, tcId is 39 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1442_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1442_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1442 = { .name = "ecdsa_brainpoolp384r1_sha384_1442", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1442_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1442_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1442_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1443 for ECDSA, tcId is 40 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1443_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1443_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1443 = { .name = "ecdsa_brainpoolp384r1_sha384_1443", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1443_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1443_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1443_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1444 for ECDSA, tcId is 41 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1444_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1444_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1444 = { .name = "ecdsa_brainpoolp384r1_sha384_1444", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1444_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1444_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1444_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1445 for ECDSA, tcId is 42 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1445_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1445_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1445 = { .name = "ecdsa_brainpoolp384r1_sha384_1445", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1445_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1445_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1445_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1446 for ECDSA, tcId is 43 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1446_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1446_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1446 = { .name = "ecdsa_brainpoolp384r1_sha384_1446", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1446_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1446_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1446_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1447 for ECDSA, tcId is 44 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1447_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1447_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1447 = { .name = "ecdsa_brainpoolp384r1_sha384_1447", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1447_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1447_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1447_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1448 for ECDSA, tcId is 45 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1448_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1448_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1448 = { .name = "ecdsa_brainpoolp384r1_sha384_1448", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1448_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1448_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1448_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1449 for ECDSA, tcId is 46 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1449_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1449_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1449 = { .name = "ecdsa_brainpoolp384r1_sha384_1449", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1449_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1449_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1449_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1450 for ECDSA, tcId is 47 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1450_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1450_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1450 = { .name = "ecdsa_brainpoolp384r1_sha384_1450", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1450_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1450_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1450_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1451 for ECDSA, tcId is 48 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1451_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1451_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1451 = { .name = "ecdsa_brainpoolp384r1_sha384_1451", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1451_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1451_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1451_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1452 for ECDSA, tcId is 49 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1452_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1452_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1452 = { .name = "ecdsa_brainpoolp384r1_sha384_1452", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1452_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1452_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1452_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1453 for ECDSA, tcId is 50 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1453_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1453_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1453 = { .name = "ecdsa_brainpoolp384r1_sha384_1453", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1453_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1453_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1453_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1454 for ECDSA, tcId is 51 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1454_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1454_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1454 = { .name = "ecdsa_brainpoolp384r1_sha384_1454", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1454_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1454_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1454_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1455 for ECDSA, tcId is 52 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1455_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1455_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1455 = { .name = "ecdsa_brainpoolp384r1_sha384_1455", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1455_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1455_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1455_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1456 for ECDSA, tcId is 53 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1456_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1456_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1456 = { .name = "ecdsa_brainpoolp384r1_sha384_1456", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1456_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1456_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1456_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1457 for ECDSA, tcId is 54 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1457_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1457_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1457 = { .name = "ecdsa_brainpoolp384r1_sha384_1457", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1457_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1457_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1457_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1458 for ECDSA, tcId is 55 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1458_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1458_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1458_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1458 = { .name = "ecdsa_brainpoolp384r1_sha384_1458", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1458_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1458_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1458_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1459 for ECDSA, tcId is 56 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1459_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1459_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1459_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1459 = { .name = "ecdsa_brainpoolp384r1_sha384_1459", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1459_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1459_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1459_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1460 for ECDSA, tcId is 57 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1460_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1460_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1460 = { .name = "ecdsa_brainpoolp384r1_sha384_1460", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1460_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1460_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1460_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1461 for ECDSA, tcId is 58 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1461_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1461_msg[] = { 0x33, 0x35, 0x37, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1461_sig[] = { 0x70, 0x5c, 0x79, 0x0f, 0x8f, 0x50, 0x06, 0x1c, 0x50, 0x8c, 0x15, 0xfc, 0x9a, 0xab, 0xc1, 0xf5, 0x81, 0x93, 0xab, 0x15, 0xb3, 0x94, 0xab, 0x21, 0x95, 0xe3, 0x58, 0xcb, 0x62, 0x0a, 0x5b, 0xf4, 0xb6, 0x54, 0x49, 0xaf, 0xb9, 0xc4, 0x17, 0xbd, 0x1a, 0x31, 0x05, 0xe5, 0x3a, 0x97, 0x42, 0xce, 0x6d, 0xd7, 0xab, 0xda, 0x40, 0x01, 0xbc, 0x41, 0x69, 0x82, 0xab, 0x43, 0x26, 0xb5, 0xd2, 0x7b, 0x12, 0x80, 0xf0, 0x2b, 0x14, 0x2f, 0x04, 0x0c, 0xe2, 0x49, 0x7f, 0x9e, 0x15, 0x3e, 0x4e, 0x1e, 0x3a, 0x35, 0xc5, 0xff, 0xae, 0xf7, 0x26, 0x94, 0xe6, 0x77, 0x87, 0x2e, 0xb1, 0x9d, 0xdf, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1461 = { .name = "ecdsa_brainpoolp384r1_sha384_1461", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1461_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1461_msg, .msglen = 5, .sig = ecdsa_brainpoolp384r1_sha384_1461_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1462 for ECDSA, tcId is 59 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1462_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1462_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1462_sig[] = { 0x79, 0xdf, 0x11, 0xf0, 0x22, 0x1d, 0xe0, 0x47, 0x3c, 0xcf, 0x84, 0x4c, 0xa7, 0x02, 0xb0, 0xd3, 0x98, 0x1b, 0x8a, 0x97, 0xeb, 0x8f, 0x68, 0x84, 0xf4, 0xef, 0xeb, 0x84, 0x71, 0x5d, 0x2c, 0x6e, 0xde, 0x43, 0x20, 0x8c, 0x7e, 0x98, 0xdb, 0x8e, 0x09, 0x1e, 0x6c, 0x91, 0x7f, 0xd9, 0xf0, 0xbb, 0x1d, 0xa9, 0x88, 0x19, 0x57, 0xbf, 0xfe, 0x20, 0x9d, 0x61, 0xdd, 0xe8, 0x7e, 0xcd, 0x9c, 0x9d, 0x8c, 0x5c, 0xda, 0xd0, 0xe4, 0xcf, 0xb6, 0xe0, 0x8c, 0xe2, 0xe0, 0x6a, 0x43, 0x1c, 0x3e, 0xeb, 0x2d, 0x14, 0x1d, 0x3b, 0x13, 0xb5, 0xba, 0xac, 0x30, 0xeb, 0xfd, 0x62, 0x2c, 0xbf, 0x5e, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1462 = { .name = "ecdsa_brainpoolp384r1_sha384_1462", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1462_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1462_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1462_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1463 for ECDSA, tcId is 60 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1463_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1463_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1463_sig[] = { 0x1c, 0xfc, 0xe0, 0xce, 0x5f, 0xbf, 0x61, 0x78, 0xab, 0xb6, 0xc2, 0x7d, 0xb2, 0xd4, 0xa4, 0x8b, 0xa5, 0x79, 0x7d, 0xc9, 0xb9, 0x9c, 0xdf, 0xe5, 0x2f, 0x74, 0x9d, 0x07, 0x9c, 0x78, 0x9e, 0xcb, 0xe1, 0xbd, 0x8e, 0x7d, 0xe1, 0x0e, 0x2a, 0xc7, 0xb8, 0x3d, 0x03, 0x81, 0xba, 0x0c, 0x61, 0x1f, 0x24, 0xc3, 0x7f, 0x70, 0x69, 0x1e, 0x44, 0x3b, 0x1b, 0x70, 0x29, 0x31, 0x00, 0xc9, 0x8c, 0xf5, 0x49, 0x4e, 0x0d, 0x6e, 0x0b, 0x14, 0xe4, 0x40, 0x0e, 0xef, 0x72, 0xcd, 0x0a, 0xa1, 0x0f, 0xb4, 0xa6, 0x89, 0xf6, 0xb8, 0x8a, 0xe0, 0xf0, 0xab, 0xc3, 0xaf, 0x7d, 0x09, 0xeb, 0x1b, 0x0c, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1463 = { .name = "ecdsa_brainpoolp384r1_sha384_1463", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1463_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1463_msg, .msglen = 8, .sig = ecdsa_brainpoolp384r1_sha384_1463_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1464 for ECDSA, tcId is 61 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1464_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1464_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1464_sig[] = { 0x8c, 0x29, 0x75, 0x29, 0xb9, 0xce, 0x54, 0x01, 0xf5, 0x1e, 0x5e, 0xae, 0xb5, 0x31, 0x15, 0xf4, 0xb0, 0x70, 0x66, 0xc7, 0x9c, 0x4b, 0x54, 0xa9, 0xfa, 0xc0, 0x06, 0x38, 0xfc, 0xd1, 0x6c, 0xfa, 0xaa, 0x96, 0x26, 0xdc, 0x6d, 0xa6, 0x59, 0x88, 0x33, 0xd9, 0x24, 0xb0, 0xb9, 0x28, 0x67, 0xa6, 0x78, 0x77, 0x62, 0x67, 0x8f, 0x96, 0x85, 0x8f, 0x22, 0x25, 0x05, 0xf1, 0x10, 0xb9, 0x7a, 0x24, 0x98, 0x73, 0x38, 0xd5, 0xe5, 0xdc, 0x0c, 0x29, 0x06, 0x24, 0xc2, 0x43, 0x90, 0x4f, 0x65, 0xc0, 0xb5, 0x78, 0x05, 0x17, 0x83, 0x8a, 0x7b, 0xa2, 0x17, 0xfa, 0xc9, 0xff, 0x59, 0xb6, 0xde, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1464 = { .name = "ecdsa_brainpoolp384r1_sha384_1464", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1464_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1464_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1464_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1465 for ECDSA, tcId is 62 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1465_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1465_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1465_sig[] = { 0x69, 0xfc, 0xb7, 0x52, 0x54, 0x5d, 0x65, 0x76, 0xb0, 0xce, 0x45, 0xf8, 0x90, 0x36, 0x51, 0x83, 0x1e, 0x79, 0xef, 0x0e, 0x17, 0x3a, 0xd1, 0xc8, 0xfd, 0xad, 0x99, 0xd6, 0xb3, 0x80, 0xaa, 0x7c, 0xe4, 0xa5, 0x88, 0xd1, 0x4a, 0xaf, 0x0a, 0x30, 0x7e, 0x5b, 0xb0, 0x5b, 0x81, 0x94, 0x5d, 0x10, 0x3f, 0xc4, 0x15, 0x1f, 0x72, 0xc1, 0x11, 0xcd, 0x2b, 0x0a, 0x38, 0xfe, 0xc1, 0x38, 0x08, 0x3f, 0x7d, 0x05, 0x8b, 0x73, 0x89, 0xa2, 0x66, 0xf7, 0x03, 0x0f, 0xc5, 0x5b, 0x7d, 0x69, 0xe4, 0x90, 0xae, 0xe0, 0x5f, 0x93, 0x1c, 0x55, 0xb7, 0x69, 0xca, 0xe9, 0x32, 0x29, 0xe7, 0xaf, 0x5e, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1465 = { .name = "ecdsa_brainpoolp384r1_sha384_1465", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1465_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1465_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1465_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1466 for ECDSA, tcId is 63 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1466_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1466_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1466_sig[] = { 0x1f, 0xf3, 0x9a, 0xa7, 0xf8, 0x66, 0x34, 0x7b, 0x6c, 0x5a, 0x0b, 0x62, 0xbb, 0xc9, 0x32, 0x94, 0x83, 0x24, 0x5d, 0x52, 0x4e, 0x93, 0xdb, 0xae, 0x9f, 0xc3, 0x50, 0x19, 0x71, 0x43, 0x46, 0x0b, 0xa6, 0xbf, 0xf2, 0xa1, 0x24, 0x01, 0xac, 0x12, 0xc5, 0x75, 0xfc, 0x33, 0x1d, 0x89, 0x04, 0x2a, 0x15, 0x91, 0x93, 0x3f, 0x0e, 0x33, 0x89, 0x4a, 0xbc, 0xb7, 0x2c, 0x0e, 0x53, 0xde, 0x68, 0x89, 0xa0, 0x0e, 0xbc, 0x0a, 0xb5, 0x97, 0x4d, 0x3a, 0xb8, 0x61, 0x3a, 0x49, 0x3b, 0x16, 0x8d, 0xb3, 0x3d, 0xa5, 0x11, 0x8f, 0x3f, 0x34, 0x77, 0xa7, 0x3d, 0xf4, 0x9a, 0xf2, 0x7e, 0xd8, 0x0d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1466 = { .name = "ecdsa_brainpoolp384r1_sha384_1466", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1466_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1466_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1466_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1467 for ECDSA, tcId is 64 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1467_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1467_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1467_sig[] = { 0x61, 0xd3, 0x22, 0xd1, 0x6c, 0xa8, 0x06, 0x20, 0xbb, 0x09, 0x33, 0x33, 0xac, 0x1f, 0x7b, 0x5f, 0x38, 0xad, 0x5d, 0x1b, 0xf3, 0x9b, 0x68, 0x64, 0x71, 0xb3, 0x83, 0x8d, 0x19, 0x4a, 0x43, 0x37, 0xd3, 0xd0, 0xca, 0x30, 0x01, 0x25, 0xd4, 0xb7, 0x24, 0xdc, 0x6c, 0x7c, 0xd1, 0xb0, 0xaa, 0x00, 0x59, 0x5b, 0x3d, 0x2e, 0x24, 0x35, 0x48, 0x10, 0xc5, 0xd2, 0x0d, 0xc8, 0x1b, 0x2b, 0xa3, 0xd7, 0x19, 0x03, 0x6c, 0x7d, 0x40, 0x73, 0xb1, 0x70, 0xd3, 0x1d, 0x21, 0x0f, 0x58, 0xf3, 0xb5, 0xf7, 0xca, 0x0f, 0x03, 0x00, 0x7e, 0x33, 0x70, 0x2b, 0xe1, 0x49, 0x51, 0x7f, 0x8e, 0xd6, 0x9a, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1467 = { .name = "ecdsa_brainpoolp384r1_sha384_1467", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1467_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1467_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1467_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1468 for ECDSA, tcId is 65 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1468_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1468_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1468_sig[] = { 0x7c, 0x8c, 0xd6, 0xb9, 0xab, 0x60, 0x68, 0x29, 0x7f, 0x8b, 0xd2, 0xf4, 0xfb, 0x5c, 0xb8, 0x61, 0x82, 0x84, 0x3b, 0x80, 0xdd, 0x75, 0x82, 0x31, 0x7e, 0x81, 0x78, 0x99, 0xc6, 0x12, 0xbf, 0x13, 0xbc, 0xdf, 0x52, 0x0d, 0xcd, 0x61, 0x35, 0x3f, 0x27, 0xa4, 0x35, 0x6d, 0xbd, 0x16, 0x70, 0x70, 0x43, 0x31, 0xc1, 0x4c, 0x7f, 0x03, 0x3c, 0x5f, 0x6e, 0x5d, 0x9d, 0x2d, 0xe7, 0x6a, 0x90, 0x20, 0xb4, 0x26, 0x35, 0x7d, 0x5d, 0xdb, 0xaf, 0x12, 0x57, 0x65, 0xb8, 0xed, 0x47, 0x6a, 0x18, 0xeb, 0xe1, 0xba, 0xfa, 0xf9, 0x41, 0x7b, 0xbe, 0x0f, 0x8f, 0x96, 0x72, 0xfb, 0xf2, 0x0a, 0x5c, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1468 = { .name = "ecdsa_brainpoolp384r1_sha384_1468", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1468_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1468_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1468_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1469 for ECDSA, tcId is 66 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1469_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1469_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1469_sig[] = { 0x77, 0x11, 0x17, 0x17, 0x74, 0x96, 0xa9, 0x11, 0x8f, 0x28, 0x83, 0xe5, 0x7f, 0x63, 0xa5, 0x89, 0x98, 0xd5, 0x78, 0x79, 0x16, 0x66, 0x59, 0x31, 0x4c, 0x50, 0x8b, 0x60, 0x28, 0x09, 0x4d, 0x4e, 0x16, 0x09, 0x0f, 0x27, 0x7a, 0xcf, 0xd4, 0x7e, 0x09, 0x7f, 0x5b, 0xef, 0x3d, 0xc6, 0x59, 0x39, 0x3e, 0xc4, 0xbc, 0x04, 0x0a, 0xaf, 0x47, 0xf9, 0xac, 0xba, 0x60, 0x93, 0xc8, 0x2c, 0x3e, 0x07, 0xc1, 0xe6, 0x07, 0xee, 0x23, 0x8b, 0xeb, 0xb5, 0xdb, 0x96, 0x59, 0x69, 0x64, 0xbc, 0x3a, 0xf7, 0xe5, 0x7b, 0x80, 0x8c, 0x2f, 0x6b, 0xe0, 0x41, 0x28, 0x46, 0x7a, 0x56, 0x57, 0x7b, 0x40, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1469 = { .name = "ecdsa_brainpoolp384r1_sha384_1469", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1469_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1469_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1469_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1470 for ECDSA, tcId is 67 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1470_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1470_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1470_sig[] = { 0x6a, 0x05, 0x48, 0x8b, 0x75, 0xac, 0xec, 0x47, 0x18, 0xd7, 0x16, 0x4e, 0xc1, 0x9d, 0xcd, 0x6d, 0x35, 0x1a, 0x5f, 0xb2, 0x85, 0x2a, 0xfc, 0x49, 0x15, 0xe9, 0xeb, 0xcd, 0x80, 0x73, 0x89, 0x7a, 0x5d, 0x55, 0x9d, 0xc9, 0xec, 0x56, 0xa5, 0xaa, 0xe4, 0x00, 0xdd, 0x0c, 0xde, 0xef, 0xc7, 0x16, 0x2e, 0x51, 0x1d, 0x8b, 0xf6, 0x0e, 0xbe, 0x46, 0x8f, 0x5e, 0x04, 0x53, 0x33, 0xd4, 0x3d, 0x4b, 0xe5, 0x9b, 0x43, 0x93, 0xc8, 0xe6, 0x50, 0xe3, 0xe6, 0xfa, 0xbc, 0xbf, 0x10, 0xda, 0x7a, 0xe5, 0xf2, 0x31, 0x8b, 0xff, 0x04, 0x74, 0x13, 0xdf, 0x4d, 0xc1, 0x7f, 0xb3, 0x72, 0xd9, 0x8d, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1470 = { .name = "ecdsa_brainpoolp384r1_sha384_1470", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1470_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1470_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1470_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1471 for ECDSA, tcId is 68 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1471_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1471_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1471_sig[] = { 0x85, 0x42, 0xc5, 0x84, 0x27, 0xf1, 0xde, 0xb1, 0xdb, 0xd3, 0x62, 0x27, 0xeb, 0x96, 0xfb, 0xff, 0x15, 0x3e, 0xdb, 0xd2, 0x3e, 0xbd, 0x13, 0xe7, 0x86, 0xa5, 0x2e, 0x48, 0x63, 0xc8, 0x88, 0xa2, 0xdd, 0x50, 0x94, 0x16, 0x54, 0xe5, 0x51, 0xa4, 0xfc, 0xa9, 0x1b, 0x5b, 0xf3, 0x51, 0x97, 0x89, 0x82, 0xb6, 0x8b, 0x14, 0xb6, 0x08, 0x03, 0x29, 0x45, 0xbd, 0xe3, 0xd7, 0x06, 0x1d, 0x5f, 0x68, 0x74, 0x58, 0xed, 0xe1, 0xb3, 0x02, 0xaf, 0x88, 0x42, 0x44, 0x97, 0x88, 0xf8, 0x31, 0x4b, 0x10, 0x85, 0x79, 0xf6, 0xc5, 0x28, 0xbd, 0xc8, 0x00, 0xaf, 0xe6, 0xb2, 0xc8, 0xb1, 0x85, 0xfb, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1471 = { .name = "ecdsa_brainpoolp384r1_sha384_1471", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1471_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1471_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1471_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1472 for ECDSA, tcId is 69 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1472_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1472_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1472_sig[] = { 0x58, 0xfb, 0x97, 0x4b, 0xef, 0x2a, 0xca, 0xf2, 0x54, 0x7c, 0xac, 0xb6, 0xf0, 0xcc, 0x93, 0x4b, 0x59, 0x91, 0xc6, 0x6e, 0xb7, 0xa2, 0x23, 0x75, 0x52, 0x09, 0xac, 0xaf, 0x5b, 0x9e, 0x4b, 0x0f, 0xed, 0x71, 0x2c, 0x76, 0x60, 0x6c, 0x59, 0xc1, 0x01, 0x4b, 0xa2, 0xc2, 0xeb, 0x1b, 0xb3, 0x22, 0x7d, 0x9e, 0x26, 0x5d, 0xc0, 0x9e, 0x03, 0x10, 0x14, 0x18, 0x2b, 0x36, 0x9e, 0x15, 0xb4, 0xa3, 0x4d, 0xba, 0x39, 0x01, 0x06, 0x2d, 0x62, 0x7c, 0xff, 0xab, 0x56, 0x1e, 0x73, 0xd3, 0x8b, 0xbe, 0xa9, 0x07, 0x27, 0x23, 0x46, 0xfb, 0xb2, 0x47, 0xd3, 0xec, 0x63, 0x56, 0x4f, 0xe1, 0xcb, 0xef, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1472 = { .name = "ecdsa_brainpoolp384r1_sha384_1472", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1472_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1472_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1472_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1473 for ECDSA, tcId is 70 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1473_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1473_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1473_sig[] = { 0x06, 0x5e, 0xd5, 0x99, 0x4d, 0x4b, 0x49, 0x8a, 0xf7, 0xf5, 0xab, 0x7d, 0x4c, 0x08, 0x81, 0x0c, 0xb7, 0x6d, 0x24, 0x2b, 0x5d, 0x8b, 0x7b, 0x55, 0x37, 0xcb, 0x8a, 0xfa, 0x6e, 0xa8, 0x52, 0xab, 0x71, 0x4f, 0x66, 0xb1, 0x44, 0xa4, 0x86, 0xd0, 0x5b, 0x2a, 0x56, 0xf2, 0x05, 0x6b, 0xaa, 0x11, 0x37, 0xe6, 0x76, 0xa8, 0xd5, 0x35, 0xd0, 0xa8, 0x18, 0xdc, 0xec, 0xcc, 0xaa, 0x47, 0x83, 0xdb, 0x6d, 0x25, 0x49, 0x25, 0xa0, 0x0d, 0xcf, 0x6a, 0x03, 0x5a, 0x7d, 0x9e, 0x0d, 0x67, 0x7d, 0xc7, 0x81, 0x95, 0xa7, 0xec, 0xcf, 0xc7, 0xbe, 0xee, 0x8e, 0x8e, 0xea, 0x74, 0x56, 0xc3, 0x69, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1473 = { .name = "ecdsa_brainpoolp384r1_sha384_1473", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1473_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1473_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1473_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1474 for ECDSA, tcId is 71 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1474_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1474_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1474_sig[] = { 0x25, 0xc1, 0x47, 0xaa, 0x99, 0xa6, 0x15, 0xa3, 0x4a, 0x6b, 0xd1, 0x52, 0xd1, 0x71, 0x84, 0xc4, 0x8d, 0x28, 0xbf, 0x79, 0xfa, 0x6f, 0xba, 0x92, 0x8e, 0x67, 0x8e, 0xf6, 0x38, 0xa0, 0x64, 0xda, 0x79, 0xd5, 0xf2, 0x53, 0xf7, 0xfe, 0xb8, 0x91, 0x5a, 0x40, 0xd6, 0x43, 0x7b, 0x7b, 0xdf, 0xa5, 0x0c, 0xf7, 0xe1, 0x4c, 0x03, 0xcf, 0x67, 0x89, 0x57, 0x21, 0xcc, 0x2f, 0xbd, 0xd6, 0x2d, 0x6a, 0x0f, 0x89, 0xae, 0xc4, 0x3d, 0xd1, 0x23, 0xd5, 0x1f, 0x81, 0x3d, 0x9b, 0x5c, 0x82, 0x85, 0x0c, 0x07, 0xd0, 0x89, 0xe7, 0xae, 0xa0, 0xdf, 0x2f, 0x59, 0x7e, 0x6a, 0x1c, 0x8e, 0x2b, 0xfd, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1474 = { .name = "ecdsa_brainpoolp384r1_sha384_1474", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1474_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1474_msg, .msglen = 11, .sig = ecdsa_brainpoolp384r1_sha384_1474_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1475 for ECDSA, tcId is 72 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1475_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1475_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1475_sig[] = { 0x85, 0x3d, 0xf8, 0xd6, 0x19, 0xf3, 0xaa, 0x7d, 0xd0, 0xbd, 0xd2, 0x4c, 0x34, 0xd3, 0x87, 0xcc, 0x59, 0xab, 0xff, 0x4a, 0x05, 0x85, 0xe2, 0xe9, 0xc8, 0x20, 0x66, 0xe4, 0xd2, 0xe9, 0x57, 0xb0, 0x43, 0x70, 0x31, 0xbc, 0x12, 0x84, 0xba, 0x3d, 0x39, 0x54, 0x5d, 0x5e, 0x85, 0x0e, 0x27, 0xa3, 0x04, 0x35, 0x98, 0x2c, 0xef, 0xe2, 0xcd, 0x15, 0x81, 0xf3, 0x78, 0xc6, 0xbe, 0x16, 0xea, 0x77, 0x28, 0x4a, 0x17, 0x8b, 0x3f, 0x0d, 0xc1, 0x4c, 0x16, 0x9c, 0x9e, 0xd8, 0x63, 0xcc, 0x4a, 0x8d, 0x8f, 0x78, 0x65, 0x13, 0x80, 0x60, 0x9d, 0xf5, 0xe0, 0x5b, 0x65, 0x04, 0x1d, 0xd7, 0xa2, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1475 = { .name = "ecdsa_brainpoolp384r1_sha384_1475", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1475_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1475_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1475_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1476 for ECDSA, tcId is 73 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1476_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1476_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1476_sig[] = { 0x1b, 0x29, 0xb1, 0xe6, 0x08, 0x95, 0xa4, 0x92, 0x0d, 0x68, 0x61, 0x83, 0x6f, 0xaa, 0x22, 0x77, 0x65, 0x40, 0x46, 0x02, 0xf4, 0xbb, 0xa3, 0xb4, 0xfa, 0xa8, 0x88, 0xa4, 0xb1, 0x69, 0x3a, 0x7c, 0x8b, 0x58, 0x5b, 0x59, 0xb9, 0x42, 0x48, 0x71, 0x22, 0xa9, 0x88, 0x9f, 0x4f, 0x14, 0x54, 0xef, 0x7d, 0x9f, 0xcf, 0xbc, 0x2e, 0xe7, 0x1f, 0xbe, 0x32, 0xa4, 0x26, 0x2e, 0x47, 0x77, 0xda, 0xa3, 0x8f, 0x97, 0x22, 0xb0, 0xa6, 0x75, 0x00, 0xb9, 0x50, 0xaa, 0xe4, 0xb4, 0x69, 0xbf, 0xf9, 0x52, 0x5a, 0xe1, 0xde, 0x38, 0x9c, 0xc1, 0x7a, 0xe7, 0x19, 0xe2, 0x4e, 0xcd, 0x19, 0x72, 0x84, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1476 = { .name = "ecdsa_brainpoolp384r1_sha384_1476", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1476_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1476_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1476_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1477 for ECDSA, tcId is 74 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1477_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1477_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1477_sig[] = { 0x89, 0x37, 0xdd, 0x05, 0x00, 0x4f, 0x6e, 0x78, 0x2a, 0x2c, 0x91, 0xc8, 0xd7, 0x9f, 0x40, 0x79, 0x5d, 0x16, 0x9f, 0xab, 0x6a, 0xf3, 0x85, 0xf9, 0x1f, 0x5c, 0xee, 0x92, 0x8c, 0x2a, 0x22, 0x86, 0x9f, 0x10, 0x93, 0x8e, 0xe2, 0xed, 0xb3, 0xed, 0x0e, 0x0a, 0x0e, 0x38, 0x14, 0x4d, 0x50, 0x64, 0x48, 0xc6, 0x92, 0xb4, 0xb8, 0x87, 0x76, 0xb0, 0x15, 0x8b, 0x99, 0xe1, 0x5e, 0x99, 0xde, 0x39, 0x55, 0xab, 0x9d, 0x88, 0x44, 0x77, 0x41, 0x8c, 0xb7, 0x40, 0xff, 0x91, 0x7a, 0x70, 0x4c, 0x77, 0x07, 0xf3, 0x99, 0x54, 0x18, 0x6a, 0x03, 0x97, 0x7c, 0xbe, 0xdf, 0x34, 0xba, 0xc0, 0x27, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1477 = { .name = "ecdsa_brainpoolp384r1_sha384_1477", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1477_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1477_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1477_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1478 for ECDSA, tcId is 75 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1478_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1478_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1478_sig[] = { 0x1e, 0x42, 0xfa, 0xe8, 0x34, 0x60, 0xbb, 0x8f, 0x30, 0xd7, 0xd6, 0xbe, 0xdf, 0x98, 0x46, 0x22, 0xa5, 0x50, 0x35, 0xd5, 0x02, 0xfc, 0x2d, 0x7f, 0x9c, 0xe5, 0x2c, 0x56, 0x51, 0x5f, 0xd6, 0x6d, 0x1d, 0x59, 0x30, 0x94, 0xd4, 0x16, 0x7f, 0x4a, 0xe0, 0x51, 0xf2, 0xb1, 0x2d, 0x0e, 0x67, 0xab, 0x28, 0x4d, 0x00, 0xf9, 0x8f, 0x29, 0x20, 0x2f, 0x03, 0xb3, 0x79, 0x71, 0x97, 0x8e, 0xeb, 0xf2, 0xfb, 0xfb, 0x94, 0xbe, 0xf2, 0xb4, 0xd6, 0x3f, 0xbe, 0xd8, 0x8c, 0x7d, 0x29, 0xd1, 0x8b, 0x61, 0xca, 0x40, 0x98, 0x82, 0xae, 0xee, 0xa9, 0x7e, 0x30, 0xa0, 0xb1, 0x56, 0xdc, 0xe2, 0xbb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1478 = { .name = "ecdsa_brainpoolp384r1_sha384_1478", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1478_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1478_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1478_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1479 for ECDSA, tcId is 76 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1479_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1479_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1479_sig[] = { 0x2c, 0x07, 0xe1, 0x85, 0x94, 0x1b, 0x20, 0x62, 0x8d, 0xf8, 0x48, 0x08, 0xff, 0x9a, 0x01, 0x0e, 0x5e, 0x11, 0x2c, 0x06, 0x32, 0xcb, 0x32, 0x31, 0x26, 0x6e, 0x84, 0x18, 0xab, 0x06, 0xf6, 0xf1, 0x8e, 0xb4, 0x1f, 0x2f, 0x98, 0xa5, 0xa0, 0xca, 0x1a, 0x46, 0x23, 0x39, 0x22, 0x8f, 0xad, 0x9a, 0x29, 0x05, 0x1e, 0x92, 0x31, 0xd6, 0x8a, 0xb4, 0x62, 0xba, 0x7a, 0xae, 0xe3, 0x9e, 0xde, 0xf6, 0x9c, 0x05, 0xf8, 0x1b, 0xa7, 0xea, 0xb1, 0x61, 0x45, 0x4b, 0xcf, 0x49, 0x69, 0xba, 0x29, 0x34, 0x63, 0xe6, 0xde, 0x2e, 0x78, 0x46, 0x77, 0xe8, 0xd2, 0xa9, 0x29, 0x53, 0x40, 0x0f, 0xe9, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1479 = { .name = "ecdsa_brainpoolp384r1_sha384_1479", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1479_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1479_msg, .msglen = 8, .sig = ecdsa_brainpoolp384r1_sha384_1479_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1480 for ECDSA, tcId is 77 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1480_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1480_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1480_sig[] = { 0x03, 0x06, 0x87, 0x25, 0x3a, 0xd2, 0xcc, 0xb9, 0x43, 0x42, 0xd3, 0x25, 0xa8, 0xad, 0x19, 0x27, 0x8f, 0xf2, 0xac, 0x8c, 0xfe, 0x00, 0x20, 0x9a, 0xb0, 0x30, 0xc7, 0x99, 0x7b, 0x30, 0x08, 0xd4, 0xe9, 0x58, 0x8b, 0xa2, 0x92, 0x2d, 0x62, 0xe7, 0x5a, 0x5e, 0x6c, 0xb8, 0x42, 0x32, 0x4f, 0x72, 0x75, 0x2a, 0xe1, 0xbd, 0xbd, 0x94, 0xe3, 0x5b, 0xc5, 0x78, 0x15, 0xd2, 0x75, 0x8b, 0x1f, 0xdf, 0xee, 0x70, 0x6f, 0x41, 0x0c, 0x0e, 0xd9, 0x66, 0xbe, 0x87, 0x92, 0xee, 0xb5, 0x4c, 0xae, 0x86, 0x31, 0xba, 0xa0, 0xc0, 0x95, 0xe0, 0x74, 0x2d, 0x6d, 0xd7, 0xd1, 0xe0, 0x41, 0x9b, 0xc5, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1480 = { .name = "ecdsa_brainpoolp384r1_sha384_1480", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1480_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1480_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1480_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1481 for ECDSA, tcId is 78 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1481_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1481_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1481_sig[] = { 0x39, 0xab, 0xdc, 0x19, 0x43, 0x60, 0x8e, 0xf4, 0xf5, 0xc4, 0x6b, 0xac, 0x7a, 0xe1, 0xe2, 0x3d, 0x2e, 0x32, 0x52, 0xe6, 0xfc, 0xc2, 0xb0, 0xce, 0x8f, 0x41, 0x50, 0x1d, 0xf0, 0x24, 0xb7, 0xd2, 0x97, 0x36, 0x24, 0x01, 0xbe, 0x87, 0xb1, 0x22, 0xbb, 0x9c, 0xcd, 0x98, 0xda, 0xa5, 0x33, 0xce, 0x58, 0xf8, 0xd8, 0x08, 0x8f, 0xaf, 0x75, 0xfa, 0x06, 0xd7, 0x6e, 0x8c, 0xc1, 0x0a, 0x1d, 0x7b, 0xcf, 0xc2, 0x25, 0xd5, 0x8b, 0x75, 0xd8, 0xa2, 0x04, 0xe6, 0xa5, 0xce, 0x4d, 0x6d, 0x95, 0x14, 0x6e, 0x85, 0x3b, 0x68, 0x18, 0x74, 0x6c, 0xeb, 0xf7, 0x86, 0x4f, 0xac, 0xb4, 0x4a, 0x21, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1481 = { .name = "ecdsa_brainpoolp384r1_sha384_1481", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1481_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1481_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1481_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1482 for ECDSA, tcId is 79 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1482_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1482_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1482_sig[] = { 0x51, 0x0f, 0x56, 0x02, 0xdb, 0xf3, 0xa0, 0x95, 0x27, 0x6e, 0x99, 0xa6, 0x7a, 0x65, 0x24, 0x92, 0x17, 0xc6, 0xe6, 0xc1, 0x68, 0xa6, 0xca, 0xa6, 0x4f, 0x5a, 0xad, 0x80, 0x6b, 0x57, 0xd2, 0x90, 0x02, 0xe6, 0x07, 0x86, 0xc6, 0xf3, 0xed, 0x27, 0x46, 0x90, 0x58, 0x3d, 0x18, 0xcd, 0xe7, 0x2b, 0x68, 0x75, 0x68, 0xeb, 0x41, 0xaf, 0x3f, 0x5c, 0xcf, 0x7f, 0x2b, 0x16, 0xe6, 0x7a, 0x1f, 0x4f, 0xbc, 0xb3, 0xbf, 0x68, 0x3d, 0x86, 0xe4, 0x9a, 0x61, 0xff, 0xf0, 0xc2, 0x8f, 0xc0, 0x3d, 0x79, 0x7a, 0x72, 0x2a, 0xf9, 0xb0, 0x2c, 0x39, 0x1a, 0x49, 0xf5, 0x66, 0x9c, 0x79, 0x68, 0xdb, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1482 = { .name = "ecdsa_brainpoolp384r1_sha384_1482", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1482_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1482_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1482_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1483 for ECDSA, tcId is 80 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1483_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1483_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1483_sig[] = { 0x84, 0xbe, 0xda, 0xfb, 0x46, 0x87, 0x32, 0x74, 0xef, 0x91, 0xde, 0x67, 0xb2, 0x03, 0x75, 0xc7, 0x69, 0x8a, 0xfb, 0xe3, 0x7f, 0x3d, 0x5b, 0xac, 0x1b, 0xbc, 0xab, 0xcb, 0xb4, 0xaa, 0x66, 0x16, 0xb3, 0x45, 0x26, 0x7f, 0xc9, 0xd5, 0x28, 0x5b, 0xaa, 0xcc, 0xa6, 0xf1, 0xb6, 0x94, 0x61, 0x9f, 0x89, 0xb3, 0x91, 0x65, 0x94, 0x9c, 0xc4, 0x35, 0x50, 0x3f, 0x4a, 0x6a, 0xc5, 0x75, 0x4d, 0x2a, 0xfd, 0xdb, 0x99, 0xb5, 0x5a, 0x3b, 0xa8, 0x40, 0x04, 0x0d, 0x51, 0x62, 0x4a, 0x09, 0x85, 0x25, 0x1f, 0x2c, 0x97, 0x87, 0xb5, 0xcb, 0x26, 0x6a, 0x21, 0x81, 0x43, 0xdb, 0x5b, 0x04, 0x18, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1483 = { .name = "ecdsa_brainpoolp384r1_sha384_1483", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1483_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1483_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1483_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1484 for ECDSA, tcId is 81 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1484_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1484_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1484_sig[] = { 0x25, 0x1b, 0x50, 0xb6, 0x3f, 0xe1, 0xcb, 0xae, 0x21, 0x04, 0x31, 0xbd, 0x1e, 0x76, 0x56, 0x3f, 0x07, 0x84, 0x54, 0xf7, 0xc2, 0xb2, 0xe4, 0x75, 0xab, 0xc1, 0xb7, 0x75, 0x89, 0x20, 0xf0, 0x3b, 0x97, 0x11, 0x12, 0xc6, 0x2c, 0xa6, 0x13, 0x2a, 0x48, 0x07, 0x38, 0x76, 0x8e, 0xdc, 0x35, 0xd3, 0x8b, 0x8c, 0x16, 0x46, 0x90, 0x06, 0x01, 0xde, 0x4f, 0xc9, 0xc9, 0xdb, 0xea, 0x22, 0x8c, 0xe9, 0xc9, 0xed, 0xbb, 0xce, 0x7c, 0x31, 0xa4, 0x2d, 0x3c, 0xba, 0x58, 0x0e, 0x19, 0x1c, 0x92, 0xd1, 0x23, 0xe1, 0x1c, 0x06, 0x34, 0xb8, 0x7b, 0xc0, 0x94, 0xcf, 0xf1, 0x6e, 0x20, 0x9b, 0x69, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1484 = { .name = "ecdsa_brainpoolp384r1_sha384_1484", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1484_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1484_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1484_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1485 for ECDSA, tcId is 82 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1485_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1485_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1485_sig[] = { 0x34, 0xb3, 0xc6, 0xaf, 0xc0, 0xfa, 0x7a, 0x75, 0x38, 0x5e, 0x3d, 0x0d, 0xbf, 0xb2, 0x37, 0xb5, 0xc7, 0x6a, 0xfe, 0x16, 0xf0, 0xf6, 0x9e, 0x44, 0x53, 0x3b, 0x7a, 0xc3, 0xab, 0xf4, 0x23, 0x37, 0x99, 0x20, 0x15, 0x04, 0xeb, 0xec, 0x03, 0x10, 0xb2, 0xfd, 0x7e, 0x86, 0x7f, 0x9f, 0xdd, 0x01, 0x2f, 0x83, 0x1f, 0x59, 0x55, 0xc2, 0xe4, 0xfa, 0x5b, 0x29, 0x8b, 0xef, 0x8f, 0x09, 0x73, 0x2d, 0x0b, 0x15, 0xea, 0x7c, 0xe1, 0x41, 0xa6, 0xdc, 0xdb, 0xbc, 0x60, 0x37, 0x8f, 0xd9, 0xc9, 0x69, 0x33, 0x9e, 0x82, 0x6d, 0xef, 0x56, 0x81, 0xe9, 0x6f, 0x0a, 0x1d, 0xbc, 0x36, 0xad, 0xaf, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1485 = { .name = "ecdsa_brainpoolp384r1_sha384_1485", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1485_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1485_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1485_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1486 for ECDSA, tcId is 83 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1486_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1486_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1486_sig[] = { 0x33, 0x5b, 0xf6, 0xb1, 0x52, 0x64, 0x7b, 0xdf, 0x8a, 0x3c, 0x5d, 0xe8, 0xde, 0x3c, 0x69, 0x83, 0x21, 0x01, 0x90, 0x26, 0x79, 0xbc, 0x80, 0x26, 0x12, 0xd2, 0xf4, 0xbf, 0xf8, 0xc7, 0xed, 0x7d, 0xf2, 0x25, 0xa0, 0x80, 0xef, 0xf6, 0xde, 0xaa, 0x5d, 0xac, 0xc7, 0x40, 0x16, 0xc5, 0xce, 0x3d, 0x7f, 0x1b, 0x11, 0x6f, 0x8d, 0x27, 0xd8, 0x94, 0xff, 0xe6, 0xab, 0x57, 0x54, 0x68, 0x51, 0xba, 0xa5, 0x51, 0x3d, 0x11, 0x0e, 0x69, 0x60, 0xd7, 0x13, 0x26, 0x3a, 0xfd, 0x54, 0x2e, 0x97, 0xf0, 0x1f, 0x4d, 0xf4, 0xf7, 0xb6, 0x4d, 0x49, 0x49, 0x6d, 0x22, 0xc2, 0xf6, 0xc5, 0x60, 0x50, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1486 = { .name = "ecdsa_brainpoolp384r1_sha384_1486", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1486_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1486_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1486_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1487 for ECDSA, tcId is 84 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1487_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1487_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1487_sig[] = { 0x32, 0x9c, 0x5d, 0x35, 0xad, 0xef, 0x35, 0x73, 0x39, 0xf9, 0x01, 0x65, 0x7a, 0xf5, 0x5d, 0xa7, 0xb0, 0x41, 0xe8, 0xc1, 0x83, 0x74, 0xc7, 0x9a, 0xb4, 0x44, 0x49, 0xb2, 0x7a, 0x83, 0x02, 0x28, 0x00, 0xf0, 0xc9, 0x38, 0x50, 0x3b, 0xdd, 0x85, 0xb7, 0x88, 0x4a, 0x32, 0xdf, 0x90, 0x57, 0xfe, 0x74, 0xf5, 0x61, 0x01, 0xc7, 0xf7, 0xb3, 0x6d, 0x63, 0x4c, 0x21, 0x75, 0xa0, 0xd1, 0x7c, 0xec, 0x05, 0x46, 0xb6, 0xcd, 0xf1, 0x8e, 0x86, 0xef, 0x9a, 0xbb, 0x6d, 0x6d, 0x0b, 0xcc, 0xdd, 0x04, 0x42, 0xaf, 0x12, 0x55, 0xe0, 0x2a, 0x5d, 0xde, 0x70, 0x78, 0x40, 0xdb, 0x48, 0x54, 0x31, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1487 = { .name = "ecdsa_brainpoolp384r1_sha384_1487", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1487_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1487_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1487_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1488 for ECDSA, tcId is 85 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1488_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1488_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1488_sig[] = { 0x1a, 0xc3, 0xd4, 0x63, 0xdf, 0x22, 0x19, 0x45, 0xad, 0xbd, 0x28, 0xa7, 0x46, 0x81, 0x7b, 0xa8, 0x3d, 0x59, 0x57, 0xd9, 0x56, 0x57, 0xc7, 0x24, 0xf1, 0xad, 0x68, 0xb9, 0x8b, 0xde, 0x6b, 0xf7, 0x95, 0x9f, 0x73, 0x63, 0x25, 0x3e, 0xce, 0x17, 0x4d, 0x7a, 0xed, 0x34, 0x64, 0x10, 0xdc, 0x21, 0x2a, 0x5a, 0x30, 0xa8, 0x19, 0x1a, 0x48, 0x83, 0xba, 0xbf, 0x69, 0xba, 0x88, 0x3a, 0xf7, 0xf5, 0x06, 0x7b, 0xc9, 0x90, 0xf8, 0xda, 0xc4, 0xa3, 0x5b, 0xc6, 0xef, 0x38, 0x71, 0x02, 0xfa, 0xd8, 0x5d, 0x26, 0x85, 0x64, 0xc6, 0x12, 0x46, 0xdf, 0xf1, 0x75, 0x10, 0x63, 0x41, 0x68, 0xa1, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1488 = { .name = "ecdsa_brainpoolp384r1_sha384_1488", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1488_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1488_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1488_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1489 for ECDSA, tcId is 86 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1489_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1489_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1489_sig[] = { 0x5c, 0xc9, 0xa0, 0x74, 0xe1, 0x0c, 0x41, 0x72, 0x4d, 0x55, 0x50, 0x2d, 0x72, 0x43, 0x0d, 0x70, 0x7b, 0xa7, 0x55, 0xc4, 0x1d, 0x56, 0x8d, 0x79, 0x98, 0x7d, 0xc3, 0xcd, 0xe4, 0x5c, 0xf6, 0xf7, 0x03, 0x41, 0xf9, 0x1f, 0xa2, 0xa2, 0x0e, 0x3b, 0xa5, 0xb5, 0x7f, 0xeb, 0xde, 0x05, 0xb5, 0xc4, 0x6d, 0x80, 0x25, 0x16, 0x2a, 0xf3, 0x0c, 0xfa, 0xb2, 0xcd, 0x16, 0xa1, 0x34, 0x2b, 0x41, 0x74, 0xae, 0x17, 0x1d, 0xc3, 0xc7, 0x5b, 0xc1, 0xfe, 0x99, 0x4e, 0xc6, 0xc0, 0x35, 0x92, 0x95, 0xf0, 0x39, 0x0e, 0x65, 0x85, 0x6a, 0xec, 0x5e, 0xbd, 0x89, 0x4a, 0x15, 0xc6, 0x85, 0x77, 0xab, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1489 = { .name = "ecdsa_brainpoolp384r1_sha384_1489", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1489_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1489_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1489_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1490 for ECDSA, tcId is 87 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1490_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1490_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1490_sig[] = { 0x0c, 0x13, 0xdd, 0xef, 0x4e, 0x7e, 0x83, 0x16, 0x30, 0x90, 0x55, 0x9f, 0xa5, 0x92, 0xed, 0xba, 0x35, 0xa9, 0x2d, 0x66, 0xe5, 0x4a, 0x34, 0xaa, 0xe2, 0x90, 0x5a, 0x10, 0xb0, 0x3a, 0x31, 0x6f, 0xfd, 0x0c, 0x01, 0x3f, 0x7b, 0x06, 0x19, 0x09, 0xf3, 0xa9, 0x24, 0xac, 0x25, 0xf1, 0xc9, 0x0a, 0x40, 0xab, 0x2d, 0x40, 0xb4, 0x00, 0x7f, 0xec, 0x32, 0xa6, 0x47, 0x78, 0x4a, 0xe4, 0xa2, 0xd5, 0xcb, 0x4f, 0x70, 0x42, 0xcc, 0xe8, 0xc3, 0x74, 0x29, 0x8c, 0x34, 0x51, 0x80, 0xd0, 0xe3, 0x8a, 0xaa, 0x5d, 0x73, 0x87, 0x5e, 0xb8, 0x59, 0xb0, 0x82, 0xd0, 0xa1, 0x7c, 0xd4, 0x96, 0xd2, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1490 = { .name = "ecdsa_brainpoolp384r1_sha384_1490", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1490_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1490_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1490_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1491 for ECDSA, tcId is 88 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1491_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1491_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1491_sig[] = { 0x0a, 0xf7, 0x4a, 0x3e, 0xa3, 0xc4, 0x12, 0x17, 0x11, 0xd1, 0x0f, 0x2e, 0x4d, 0x72, 0x50, 0x31, 0xb1, 0xb0, 0x8c, 0xf8, 0xef, 0xf2, 0x28, 0x34, 0x74, 0x84, 0x02, 0x45, 0x3b, 0x8e, 0xaa, 0x00, 0xb1, 0x57, 0x86, 0x11, 0xee, 0x45, 0x22, 0x07, 0x53, 0xbc, 0xbd, 0x20, 0xa3, 0x91, 0x40, 0x2e, 0x15, 0xeb, 0x2d, 0xaf, 0x4f, 0xb9, 0x32, 0x12, 0x83, 0xf6, 0x91, 0x57, 0xe7, 0xc7, 0x47, 0xd6, 0x37, 0x67, 0x59, 0xd0, 0x13, 0x0e, 0x79, 0x05, 0x52, 0xb4, 0xfd, 0x89, 0x57, 0x71, 0x39, 0xa2, 0x8d, 0xae, 0xd4, 0x3b, 0xa9, 0x76, 0xa7, 0x6b, 0xec, 0x1c, 0x7d, 0x53, 0xa4, 0x9c, 0x98, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1491 = { .name = "ecdsa_brainpoolp384r1_sha384_1491", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1491_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1491_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1491_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1492 for ECDSA, tcId is 89 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1492_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1492_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1492_sig[] = { 0x67, 0x4b, 0x6a, 0xc9, 0x89, 0x0d, 0xcb, 0xab, 0xa4, 0xd7, 0x44, 0xce, 0x99, 0x92, 0xe9, 0xdc, 0x69, 0x8e, 0x52, 0x4b, 0x0d, 0x1c, 0xf4, 0xd7, 0x6d, 0x35, 0x53, 0x72, 0x63, 0x1d, 0x6f, 0x7d, 0xce, 0x6f, 0xf5, 0xa6, 0x07, 0x27, 0x3c, 0x0c, 0x14, 0x69, 0xd8, 0xe5, 0xb1, 0x2a, 0xb6, 0x0e, 0x7c, 0xf8, 0xf9, 0x83, 0x28, 0xf9, 0x20, 0xd2, 0x94, 0x75, 0xd5, 0xcb, 0x38, 0xbc, 0x35, 0xfe, 0x71, 0xff, 0xd8, 0x7f, 0x1b, 0xe7, 0x88, 0xd2, 0x02, 0x90, 0x8e, 0xb9, 0x39, 0xc7, 0x6b, 0x76, 0x94, 0xce, 0xcf, 0xc2, 0x1d, 0xae, 0x50, 0xf4, 0x33, 0x77, 0x3d, 0x75, 0xe2, 0x79, 0xe3, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1492 = { .name = "ecdsa_brainpoolp384r1_sha384_1492", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1492_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1492_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1492_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1493 for ECDSA, tcId is 90 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1493_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1493_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1493_sig[] = { 0x89, 0xab, 0x51, 0x35, 0x7a, 0x7d, 0xb3, 0x6d, 0x1c, 0x26, 0xb1, 0xe9, 0x06, 0x08, 0x8b, 0x9a, 0xa3, 0xe3, 0xd5, 0x96, 0x58, 0xe2, 0xbe, 0xd5, 0x5d, 0xd0, 0x3d, 0xeb, 0x56, 0x90, 0x86, 0x77, 0xa5, 0x9a, 0x4b, 0x24, 0xcd, 0x65, 0xea, 0xe6, 0x35, 0x1b, 0x03, 0xa9, 0x30, 0x0a, 0xe5, 0x18, 0x39, 0x5e, 0x10, 0xa6, 0xac, 0xcc, 0x3c, 0x6e, 0x56, 0x68, 0x44, 0xc4, 0xfa, 0xc4, 0xca, 0xa2, 0xa8, 0xce, 0xda, 0x47, 0x51, 0xdf, 0x5a, 0xab, 0x5b, 0x32, 0x75, 0xf8, 0x25, 0xc5, 0x94, 0x0b, 0x1d, 0xb6, 0x08, 0x86, 0xf1, 0x39, 0x53, 0x18, 0x11, 0x0c, 0xa5, 0x3c, 0x69, 0x32, 0x83, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1493 = { .name = "ecdsa_brainpoolp384r1_sha384_1493", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1493_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1493_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1493_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1494 for ECDSA, tcId is 91 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1494_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1494_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1494_sig[] = { 0x5b, 0x3f, 0x30, 0xc8, 0x3a, 0xca, 0xa0, 0x88, 0xa3, 0x72, 0xd5, 0x58, 0x82, 0x29, 0xa3, 0x55, 0x5d, 0xba, 0x14, 0xfb, 0xed, 0x8c, 0xbc, 0x29, 0x35, 0xf6, 0xf6, 0xea, 0xbd, 0x80, 0x77, 0xc8, 0x53, 0xdb, 0xc7, 0xb2, 0xe3, 0x54, 0x68, 0x3d, 0x41, 0xdc, 0xe5, 0xb5, 0xd4, 0xc9, 0xde, 0x58, 0x76, 0x70, 0x24, 0x28, 0x0e, 0x5e, 0x13, 0x1b, 0x4a, 0x46, 0xd6, 0x6b, 0x35, 0xf2, 0xb3, 0x04, 0xa5, 0x5e, 0x64, 0x81, 0xf0, 0x94, 0xb3, 0x55, 0xe8, 0x73, 0xa7, 0xf8, 0x61, 0x02, 0x96, 0x02, 0x09, 0x7a, 0x4d, 0x30, 0x01, 0x36, 0xea, 0x00, 0x5b, 0xf5, 0xfb, 0xc1, 0x08, 0x43, 0xba, 0x95, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1494 = { .name = "ecdsa_brainpoolp384r1_sha384_1494", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1494_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1494_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1494_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1495 for ECDSA, tcId is 92 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1495_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1495_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1495_sig[] = { 0x32, 0xe8, 0xab, 0xc3, 0x66, 0x23, 0xfc, 0xb2, 0x03, 0x46, 0x62, 0x10, 0x50, 0x66, 0xaf, 0xd7, 0x1f, 0xae, 0x4d, 0x75, 0xb8, 0x30, 0x0e, 0x32, 0xbe, 0xf4, 0x63, 0x2f, 0xac, 0x65, 0xec, 0xbd, 0x28, 0x5c, 0x40, 0x61, 0xca, 0x64, 0xf6, 0x81, 0x3e, 0xdd, 0x2a, 0xbf, 0xbc, 0xc2, 0x13, 0xe8, 0x0b, 0x00, 0x13, 0xe2, 0xa5, 0x6c, 0x36, 0xde, 0x1b, 0xa1, 0x9a, 0x9c, 0x30, 0x48, 0x69, 0xf3, 0xd6, 0x98, 0x06, 0xec, 0xe6, 0xf4, 0xa8, 0x01, 0xc2, 0x7a, 0x3d, 0x4f, 0x1c, 0x20, 0xaf, 0x5e, 0xb1, 0x75, 0xe9, 0x5e, 0x73, 0x4e, 0xf6, 0x37, 0x65, 0x3a, 0x6c, 0xdb, 0x2a, 0x9e, 0xcb, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1495 = { .name = "ecdsa_brainpoolp384r1_sha384_1495", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1495_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1495_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1495_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1496 for ECDSA, tcId is 93 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1496_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1496_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1496_sig[] = { 0x45, 0xdf, 0x52, 0x9d, 0x25, 0x31, 0xd4, 0x8c, 0xab, 0x41, 0x2b, 0x68, 0x0c, 0xad, 0xb5, 0x32, 0xcd, 0x62, 0x25, 0x30, 0x4f, 0xb7, 0x42, 0x84, 0x1c, 0x89, 0x54, 0x59, 0x59, 0xb7, 0x9e, 0x19, 0x8c, 0x3b, 0x12, 0x97, 0xdc, 0x5c, 0x4b, 0xd9, 0xaa, 0x75, 0x49, 0x19, 0x3e, 0x07, 0x80, 0xd1, 0x5c, 0x8f, 0x62, 0xfc, 0x48, 0x52, 0x06, 0x9d, 0x35, 0x23, 0x2a, 0xab, 0x77, 0x25, 0x71, 0x5e, 0x91, 0x57, 0xd1, 0xaa, 0x68, 0x80, 0x50, 0xf8, 0x96, 0xd6, 0x90, 0xdc, 0xd4, 0xe4, 0x1b, 0xaa, 0x66, 0xea, 0x6f, 0x9b, 0x34, 0xde, 0xea, 0x5a, 0x60, 0x7c, 0xc3, 0x91, 0xff, 0x09, 0x7d, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1496 = { .name = "ecdsa_brainpoolp384r1_sha384_1496", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1496_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1496_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1496_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1497 for ECDSA, tcId is 94 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1497_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1497_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1497_sig[] = { 0x10, 0x20, 0x07, 0x8f, 0x6e, 0x57, 0x17, 0x53, 0x8f, 0xef, 0x87, 0x9c, 0x56, 0x35, 0xd4, 0xd7, 0xd5, 0x27, 0x21, 0xbe, 0x15, 0x29, 0x58, 0x5b, 0x0a, 0x77, 0x08, 0x3c, 0x5f, 0x34, 0x7f, 0x21, 0xb1, 0x31, 0x6d, 0x03, 0x99, 0xa8, 0xbc, 0x17, 0xb3, 0x67, 0x33, 0x64, 0x75, 0xa6, 0xd9, 0x7e, 0x1a, 0xde, 0x87, 0xed, 0x2e, 0x2b, 0xdb, 0x24, 0x81, 0xa0, 0x27, 0xdd, 0x3f, 0xa5, 0xb9, 0x3a, 0x81, 0xf4, 0xff, 0xdc, 0x33, 0xd4, 0xa9, 0x08, 0xd9, 0x7b, 0x40, 0xf8, 0x41, 0x82, 0x1c, 0x02, 0x92, 0x9b, 0x03, 0x61, 0x35, 0xf4, 0x19, 0x75, 0x2c, 0x88, 0xd5, 0x75, 0x09, 0xd1, 0x7b, 0xef, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1497 = { .name = "ecdsa_brainpoolp384r1_sha384_1497", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1497_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1497_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1497_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1498 for ECDSA, tcId is 95 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1498_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1498_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1498_sig[] = { 0x0d, 0x93, 0xd5, 0xc6, 0x37, 0x41, 0x44, 0x7f, 0xdb, 0xed, 0x17, 0xa7, 0x38, 0xa4, 0x1e, 0xfd, 0xbb, 0x70, 0x93, 0x33, 0x37, 0x97, 0x49, 0x9f, 0xe7, 0x0d, 0x5c, 0x54, 0xbc, 0x86, 0xb6, 0xbb, 0x65, 0x04, 0x24, 0xbb, 0xd6, 0x49, 0x07, 0x37, 0x5e, 0xf9, 0x2e, 0xfd, 0x13, 0xee, 0x25, 0xec, 0x66, 0x19, 0x2a, 0xc1, 0xfb, 0x22, 0xdb, 0x75, 0x88, 0x1d, 0xf7, 0xae, 0x89, 0x0d, 0xa4, 0x95, 0x3a, 0x74, 0xfa, 0x95, 0x4e, 0x0b, 0x5e, 0x6b, 0x69, 0x2e, 0xca, 0x23, 0xc3, 0xbc, 0xfd, 0x5f, 0xb3, 0x22, 0x8d, 0x09, 0x2d, 0x99, 0x91, 0x07, 0x1b, 0xaa, 0x4b, 0x6e, 0x8f, 0xa2, 0x06, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1498 = { .name = "ecdsa_brainpoolp384r1_sha384_1498", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1498_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1498_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1498_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1499 for ECDSA, tcId is 96 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1499_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1499_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1499_sig[] = { 0x04, 0x93, 0x34, 0xbf, 0x43, 0xf7, 0xd9, 0xc2, 0x13, 0x44, 0x3c, 0x96, 0xc4, 0xba, 0x11, 0x9b, 0x33, 0x57, 0x57, 0xa3, 0xe6, 0x9b, 0xa8, 0x73, 0xbd, 0xc4, 0xef, 0x64, 0x21, 0x39, 0xb8, 0x68, 0x7a, 0x8a, 0x57, 0x82, 0xb6, 0xa9, 0x00, 0x21, 0x1d, 0x6f, 0xc1, 0xec, 0xf1, 0x4c, 0x2c, 0xf9, 0x18, 0x29, 0x90, 0xbe, 0xe4, 0x78, 0x72, 0x67, 0xb6, 0xd6, 0x3b, 0x7e, 0xa6, 0x7a, 0x25, 0x85, 0x29, 0x51, 0xd1, 0x45, 0xcf, 0x5a, 0x39, 0xd2, 0x01, 0xba, 0xbe, 0x9f, 0x3f, 0x11, 0x20, 0x92, 0x4e, 0x5b, 0x28, 0x3e, 0xeb, 0x63, 0x6a, 0x8f, 0xbb, 0xb0, 0xc2, 0xfc, 0x66, 0xdd, 0xf7, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1499 = { .name = "ecdsa_brainpoolp384r1_sha384_1499", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1499_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1499_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1499_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1500 for ECDSA, tcId is 97 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1500_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1500_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1500_sig[] = { 0x6b, 0x0c, 0x24, 0x8f, 0xa3, 0x93, 0x17, 0x62, 0x1a, 0xf5, 0x34, 0x4f, 0x97, 0x8b, 0xd7, 0x65, 0xec, 0x61, 0x25, 0xcc, 0xe2, 0xf4, 0x0c, 0xdd, 0xdf, 0xa4, 0x0f, 0x7e, 0x8c, 0x7f, 0x4f, 0xe9, 0x21, 0x63, 0x54, 0xbd, 0xaf, 0xc2, 0x06, 0x72, 0x88, 0xc5, 0x67, 0x94, 0xeb, 0x5d, 0x17, 0xd2, 0x75, 0x84, 0xc0, 0x77, 0xad, 0x35, 0xb5, 0x8f, 0xb2, 0x94, 0x03, 0xb9, 0xc2, 0xc6, 0x41, 0x27, 0x17, 0x94, 0xe2, 0x6b, 0x24, 0x1d, 0xfc, 0x8d, 0x74, 0xd4, 0xda, 0xa7, 0xde, 0x3f, 0x07, 0x6c, 0x9c, 0x4c, 0x6d, 0x39, 0x09, 0xe2, 0xc0, 0xab, 0x9b, 0x9a, 0x70, 0x2c, 0x08, 0x12, 0xee, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1500 = { .name = "ecdsa_brainpoolp384r1_sha384_1500", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1500_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1500_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1500_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1501 for ECDSA, tcId is 98 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1501_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1501_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1501_sig[] = { 0x8c, 0x04, 0x8a, 0x8e, 0xab, 0xa1, 0xb6, 0x54, 0xc3, 0xf6, 0x87, 0xdf, 0x01, 0x71, 0x4d, 0xf3, 0xb6, 0x1b, 0x98, 0xe5, 0x78, 0x20, 0x5c, 0x80, 0x4a, 0x72, 0xbd, 0xe3, 0x2d, 0xaa, 0xe8, 0x7b, 0x37, 0xfd, 0x2f, 0x9f, 0x5f, 0x82, 0xb3, 0xc5, 0xf7, 0xb4, 0xa0, 0x07, 0xea, 0xa1, 0x98, 0x6a, 0x30, 0xb7, 0x9f, 0x44, 0xc8, 0x3b, 0xd5, 0x2e, 0x53, 0x7c, 0xcf, 0x9a, 0x35, 0x77, 0x2f, 0xab, 0x5b, 0xa9, 0xfa, 0xf0, 0xde, 0xcb, 0xe3, 0x47, 0x63, 0xb5, 0xae, 0x28, 0x09, 0x84, 0xac, 0x7f, 0xf2, 0x7f, 0xb8, 0xdb, 0xad, 0x57, 0x21, 0x8c, 0x36, 0x4b, 0x39, 0xdc, 0x2a, 0x03, 0xb5, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1501 = { .name = "ecdsa_brainpoolp384r1_sha384_1501", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1501_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1501_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1501_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1502 for ECDSA, tcId is 99 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1502_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1502_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1502_sig[] = { 0x2e, 0xbc, 0xd9, 0x4d, 0x17, 0x12, 0x24, 0x42, 0xd3, 0xe7, 0xbd, 0x12, 0xc4, 0xb6, 0x09, 0xdb, 0xce, 0xef, 0x69, 0xb3, 0x24, 0x60, 0x92, 0xe4, 0xad, 0x0c, 0x83, 0xd6, 0x02, 0xc2, 0x51, 0x6e, 0x09, 0x16, 0x9b, 0x59, 0x2f, 0xdf, 0x61, 0xa7, 0xe8, 0x81, 0xe2, 0x62, 0xbf, 0x49, 0x57, 0x14, 0x70, 0x39, 0x2c, 0xd4, 0xe5, 0xe1, 0x76, 0x06, 0x60, 0x8c, 0x2e, 0x4f, 0xff, 0xf7, 0xa9, 0xc0, 0xe9, 0x17, 0x11, 0x98, 0x91, 0x5c, 0xf7, 0xe5, 0x06, 0x33, 0x26, 0x3d, 0x7e, 0x07, 0x19, 0x54, 0xf1, 0x2e, 0xbb, 0x1a, 0x4f, 0x4a, 0xcc, 0x76, 0x83, 0xa1, 0x60, 0xd6, 0x4d, 0xda, 0x3b, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1502 = { .name = "ecdsa_brainpoolp384r1_sha384_1502", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1502_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1502_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1502_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1503 for ECDSA, tcId is 100 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1503_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1503_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1503_sig[] = { 0x4d, 0x71, 0x91, 0x59, 0x6f, 0x50, 0xb8, 0x30, 0x9e, 0x14, 0x90, 0x89, 0x5e, 0x62, 0xb1, 0x6c, 0x41, 0x5c, 0x1f, 0x7b, 0x50, 0xd2, 0xa4, 0x26, 0x09, 0x04, 0xbc, 0x5b, 0x7b, 0xff, 0xde, 0x4f, 0x92, 0x68, 0x7b, 0x02, 0x9f, 0x32, 0x6f, 0x4b, 0x48, 0xe6, 0xfd, 0x8d, 0x1f, 0x19, 0xee, 0x50, 0x0a, 0x54, 0x51, 0x5f, 0xad, 0x47, 0xbb, 0x08, 0xe5, 0x86, 0x69, 0x7f, 0x28, 0xe2, 0xbb, 0xf9, 0x8d, 0x75, 0x75, 0xc7, 0xbb, 0x91, 0x1b, 0xd7, 0x4d, 0xb3, 0xd9, 0xaa, 0x84, 0x84, 0x75, 0xbb, 0xdd, 0xac, 0x66, 0x18, 0x1e, 0xfd, 0x63, 0xa2, 0x49, 0x18, 0xde, 0xc2, 0xdd, 0x01, 0xa2, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1503 = { .name = "ecdsa_brainpoolp384r1_sha384_1503", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1503_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1503_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1503_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1504 for ECDSA, tcId is 101 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1504_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1504_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1504_sig[] = { 0x6f, 0xde, 0xfa, 0x7d, 0x91, 0x2c, 0xd2, 0xc3, 0x0c, 0xf1, 0x2b, 0xae, 0x60, 0x8a, 0xb8, 0x7d, 0xe1, 0x2d, 0x49, 0xee, 0x08, 0x4d, 0x23, 0x90, 0x81, 0xe8, 0x92, 0x46, 0xe4, 0x93, 0x9d, 0x60, 0x71, 0xdf, 0xd1, 0x1f, 0x74, 0x01, 0x89, 0x4a, 0xee, 0x9c, 0x13, 0xd1, 0x10, 0x13, 0xec, 0x75, 0x79, 0x37, 0x49, 0x5d, 0xc0, 0xa3, 0xa3, 0xd6, 0x6c, 0x43, 0x94, 0x5d, 0x99, 0xcd, 0x98, 0xdc, 0x84, 0x2a, 0xe8, 0x67, 0x7f, 0x14, 0xd6, 0x49, 0xb2, 0x2c, 0x1e, 0x7e, 0xc1, 0x48, 0x57, 0xa0, 0x56, 0x39, 0xec, 0x1f, 0xe0, 0x8b, 0xe2, 0x28, 0x11, 0x28, 0x32, 0xb5, 0xe3, 0x2f, 0xcf, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1504 = { .name = "ecdsa_brainpoolp384r1_sha384_1504", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1504_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1504_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1504_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1505 for ECDSA, tcId is 102 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1505_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1505_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1505_sig[] = { 0x05, 0x86, 0x7e, 0x5f, 0x8a, 0xbd, 0x70, 0x40, 0x07, 0xb9, 0x8c, 0x1a, 0x8f, 0x2c, 0x69, 0xf4, 0xee, 0xa1, 0x4c, 0xb4, 0xa4, 0x21, 0x02, 0x62, 0xb4, 0x74, 0xc4, 0xeb, 0xa9, 0x07, 0x33, 0x74, 0xca, 0xb5, 0xdd, 0x1b, 0xb5, 0xc7, 0x81, 0xdf, 0x04, 0x0d, 0xf3, 0x2b, 0xf7, 0x94, 0x31, 0x87, 0x68, 0xaf, 0xdc, 0x70, 0xaa, 0xca, 0x5f, 0x1b, 0x36, 0xef, 0x32, 0x59, 0x3d, 0x88, 0x9e, 0x37, 0x7d, 0x3f, 0x83, 0xb3, 0x29, 0x38, 0x6c, 0x98, 0x2a, 0xcf, 0x9b, 0x40, 0x1b, 0x7c, 0xd2, 0x6b, 0x75, 0xa5, 0x38, 0x93, 0x95, 0xc1, 0x5d, 0x50, 0x7d, 0x7d, 0x67, 0x02, 0x3d, 0x6d, 0x07, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1505 = { .name = "ecdsa_brainpoolp384r1_sha384_1505", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1505_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1505_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1505_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1506 for ECDSA, tcId is 103 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1506_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1506_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1506_sig[] = { 0x88, 0xd5, 0xf4, 0x06, 0x9b, 0xe3, 0x1f, 0xc5, 0x8a, 0x38, 0xfd, 0x8d, 0xe9, 0xdb, 0xc7, 0xfe, 0xc6, 0x40, 0x65, 0xde, 0x42, 0x68, 0xd4, 0x1c, 0x8d, 0xb7, 0x99, 0xd0, 0xa2, 0x0a, 0xe1, 0x04, 0x92, 0xc7, 0xe8, 0x0b, 0x30, 0x03, 0x4b, 0x7f, 0x32, 0x1c, 0xd4, 0x9b, 0x2b, 0x9c, 0x3f, 0x33, 0x09, 0x91, 0x2b, 0x63, 0xc4, 0xf8, 0x8b, 0xe7, 0x72, 0x11, 0xab, 0x53, 0x3c, 0xf1, 0x3f, 0x2b, 0x63, 0x47, 0x20, 0x06, 0xaa, 0xb5, 0xe7, 0x0d, 0xf2, 0x1b, 0x87, 0x30, 0x1f, 0xe5, 0x13, 0x9a, 0xae, 0xd4, 0x84, 0x5a, 0x42, 0x1b, 0x0f, 0x07, 0x6f, 0x96, 0x8a, 0xe4, 0xb3, 0x24, 0x90, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1506 = { .name = "ecdsa_brainpoolp384r1_sha384_1506", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1506_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1506_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1506_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1507 for ECDSA, tcId is 104 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1507_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1507_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1507_sig[] = { 0x75, 0x0e, 0x5b, 0xae, 0xef, 0x69, 0x34, 0xb3, 0x65, 0x12, 0x57, 0x2d, 0xd3, 0x30, 0xfa, 0x88, 0x35, 0x3e, 0x32, 0x1a, 0x52, 0x13, 0x63, 0xbd, 0xa8, 0x89, 0xfd, 0x25, 0x7e, 0x4e, 0xa4, 0x02, 0x4f, 0xb5, 0xf9, 0x2e, 0x39, 0xf2, 0x65, 0xd7, 0x89, 0xd2, 0xa9, 0x49, 0xdd, 0x91, 0x84, 0x3b, 0x18, 0xb8, 0x46, 0x7c, 0x63, 0x89, 0x25, 0x14, 0x84, 0x7c, 0x3b, 0x98, 0xee, 0x27, 0x9e, 0x3f, 0x41, 0xb3, 0x91, 0xa4, 0x79, 0x75, 0xd7, 0xf4, 0xd6, 0x66, 0x93, 0x85, 0xac, 0x0b, 0xd2, 0xe3, 0x22, 0xf8, 0x86, 0x08, 0x87, 0x03, 0x10, 0xb6, 0x35, 0xad, 0x28, 0x25, 0x6d, 0x8d, 0xca, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1507 = { .name = "ecdsa_brainpoolp384r1_sha384_1507", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1507_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1507_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1507_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1508 for ECDSA, tcId is 105 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1508_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1508_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1508_sig[] = { 0x8b, 0xb6, 0x56, 0x97, 0x37, 0xc5, 0xe0, 0x1d, 0x25, 0x96, 0xd3, 0xba, 0x5d, 0x01, 0x89, 0x0f, 0x23, 0x11, 0x36, 0xc6, 0x9c, 0x6c, 0x9f, 0x42, 0xa9, 0x44, 0xf0, 0x66, 0x02, 0x29, 0x6b, 0x11, 0x59, 0xf2, 0x9f, 0xc1, 0xd9, 0x8b, 0x68, 0xbe, 0x06, 0xf3, 0x05, 0x2c, 0x5f, 0xa8, 0x61, 0x9b, 0x2d, 0x1d, 0x4c, 0xcd, 0x79, 0xb0, 0x09, 0x98, 0xac, 0xf0, 0x3d, 0x34, 0x12, 0x88, 0x8f, 0x27, 0xd2, 0x74, 0xb8, 0x78, 0x87, 0x42, 0xbe, 0x27, 0xd7, 0x98, 0xdd, 0x7d, 0xb6, 0x54, 0xd9, 0x64, 0xfa, 0x4c, 0xde, 0x33, 0x84, 0xd8, 0x8c, 0x2a, 0x50, 0x24, 0x77, 0x92, 0xe8, 0x82, 0x0a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1508 = { .name = "ecdsa_brainpoolp384r1_sha384_1508", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1508_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1508_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1508_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1509 for ECDSA, tcId is 106 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1509_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1509_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1509_sig[] = { 0x27, 0x7b, 0x8f, 0xe0, 0x06, 0x51, 0x99, 0x8c, 0xdc, 0xf8, 0xb4, 0xf4, 0x07, 0x95, 0xf4, 0x54, 0xe4, 0xdc, 0xa2, 0xfd, 0xc2, 0xc1, 0x0d, 0xce, 0x1f, 0xff, 0x8f, 0x0c, 0x85, 0x2a, 0xac, 0x0b, 0xf6, 0x18, 0x3b, 0x1a, 0xc3, 0xc3, 0x82, 0x67, 0x06, 0xc3, 0xe6, 0x59, 0x85, 0x41, 0x98, 0xa0, 0x0d, 0x71, 0xf3, 0xf3, 0xf6, 0x81, 0xfc, 0x39, 0x1c, 0x3c, 0xfd, 0xb8, 0x1b, 0x61, 0xeb, 0xa0, 0x15, 0x5c, 0xb4, 0xa8, 0xe9, 0xce, 0x80, 0x49, 0xcd, 0xf9, 0xb4, 0x59, 0xaa, 0xf2, 0x64, 0x52, 0x5f, 0xbb, 0x89, 0x3e, 0xaa, 0x71, 0x59, 0x3a, 0x96, 0x18, 0xc0, 0xf1, 0x17, 0xef, 0xd9, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1509 = { .name = "ecdsa_brainpoolp384r1_sha384_1509", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1509_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1509_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1509_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1510 for ECDSA, tcId is 107 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1510_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1510_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1510_sig[] = { 0x26, 0x9d, 0x14, 0xd9, 0x86, 0x7e, 0xd2, 0x34, 0x10, 0xca, 0xf2, 0x4f, 0x5f, 0x9f, 0x17, 0x1b, 0xc0, 0xe5, 0x2f, 0x00, 0x6d, 0x8d, 0x16, 0xc0, 0x2c, 0x81, 0xf1, 0xb4, 0xed, 0xba, 0x22, 0x2d, 0xe7, 0x35, 0x1a, 0xd7, 0x29, 0x43, 0xed, 0x09, 0xa2, 0xe7, 0xac, 0x17, 0x6a, 0x1b, 0x21, 0x56, 0x4a, 0xf9, 0x3b, 0x80, 0x0f, 0xbd, 0xca, 0x45, 0xac, 0x74, 0xcf, 0xd2, 0x2c, 0xba, 0x9a, 0x50, 0x87, 0x39, 0xf8, 0xfc, 0xf3, 0xce, 0x14, 0xe5, 0x5c, 0x39, 0xbc, 0x77, 0x0a, 0x14, 0x3f, 0x80, 0x99, 0x70, 0xe8, 0x36, 0x44, 0x7a, 0x45, 0x42, 0xd0, 0xbb, 0x36, 0x7d, 0xe6, 0x61, 0x2c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1510 = { .name = "ecdsa_brainpoolp384r1_sha384_1510", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1510_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1510_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1510_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1511 for ECDSA, tcId is 108 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1511_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1511_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1511_sig[] = { 0x40, 0x73, 0x1d, 0xbe, 0x64, 0x63, 0x6c, 0xd5, 0xef, 0x5d, 0x25, 0x60, 0xa2, 0x3f, 0x38, 0x91, 0xac, 0xcf, 0x0a, 0x53, 0x0a, 0x44, 0x6c, 0x6a, 0xd2, 0x13, 0xb4, 0xba, 0x7f, 0xf9, 0xcb, 0x50, 0x5a, 0xba, 0x93, 0x31, 0x83, 0x6a, 0xb8, 0xa9, 0x8f, 0xe5, 0x65, 0xe8, 0x66, 0xc8, 0x79, 0x79, 0x19, 0xeb, 0x3c, 0xf6, 0xb5, 0xfa, 0xf1, 0x1e, 0x97, 0x17, 0xd6, 0xd0, 0x44, 0x96, 0x24, 0xa5, 0x09, 0x35, 0x89, 0x36, 0xdd, 0x00, 0x67, 0xff, 0xc1, 0x8f, 0x22, 0xe6, 0xbc, 0xbc, 0x6a, 0xa1, 0xdf, 0x3a, 0x45, 0xf1, 0x5a, 0xe7, 0x32, 0x19, 0x77, 0x90, 0xcc, 0x6f, 0xdb, 0x92, 0xc3, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1511 = { .name = "ecdsa_brainpoolp384r1_sha384_1511", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1511_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1511_msg, .msglen = 11, .sig = ecdsa_brainpoolp384r1_sha384_1511_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1512 for ECDSA, tcId is 109 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1512_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1512_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1512_sig[] = { 0x84, 0x33, 0x5a, 0x1c, 0x93, 0xd9, 0x96, 0xe3, 0x6c, 0x22, 0xae, 0xe4, 0xf3, 0x3c, 0xef, 0xf7, 0xc6, 0xff, 0x08, 0x8c, 0xd5, 0x60, 0x4d, 0xb8, 0x27, 0x50, 0x98, 0x60, 0x06, 0x66, 0x14, 0x46, 0x07, 0xbc, 0xfa, 0xc7, 0xe6, 0x95, 0xf2, 0xf7, 0x9a, 0x77, 0x56, 0x28, 0xa1, 0xab, 0x6f, 0x82, 0x28, 0xca, 0x8c, 0xdc, 0x6b, 0xd7, 0x72, 0xcc, 0x9f, 0x24, 0xc1, 0x4e, 0xf7, 0x13, 0x32, 0xf1, 0x92, 0xfe, 0xfd, 0x52, 0xd0, 0x3b, 0x8d, 0xf9, 0x9a, 0x25, 0x7f, 0x31, 0x5e, 0x0f, 0x6f, 0x32, 0x96, 0xe4, 0xa4, 0x5f, 0xd1, 0x82, 0xf0, 0x6a, 0x3d, 0x2b, 0xa2, 0x77, 0x9c, 0x10, 0xa4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1512 = { .name = "ecdsa_brainpoolp384r1_sha384_1512", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1512_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1512_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1512_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1513 for ECDSA, tcId is 110 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1513_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1513_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1513_sig[] = { 0x52, 0x0b, 0x74, 0xd5, 0xd3, 0x3b, 0xa2, 0x89, 0xff, 0xcc, 0xf5, 0x18, 0x7a, 0x60, 0x00, 0x38, 0x0c, 0x31, 0x30, 0x4b, 0x1d, 0x6f, 0x8f, 0xb5, 0x4d, 0x88, 0x0c, 0x19, 0x08, 0xfb, 0xd8, 0xdf, 0x5e, 0x08, 0x57, 0xff, 0xa8, 0xca, 0x34, 0x4f, 0xf7, 0xa4, 0xfa, 0x9b, 0xb6, 0xed, 0x5f, 0x38, 0x03, 0xae, 0x87, 0x7b, 0xc1, 0xf0, 0xbc, 0x8e, 0x7c, 0x90, 0x39, 0x38, 0x1f, 0x0b, 0x66, 0xa5, 0x20, 0x47, 0x16, 0x3c, 0xb7, 0x8e, 0xab, 0xd7, 0xa3, 0xdb, 0xfc, 0x53, 0x8b, 0x42, 0x4f, 0xef, 0x31, 0xd1, 0xe0, 0xaf, 0x76, 0xc0, 0xe1, 0xbe, 0xd7, 0x93, 0x6a, 0x88, 0x33, 0x8f, 0x1b, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1513 = { .name = "ecdsa_brainpoolp384r1_sha384_1513", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1513_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1513_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1513_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1514 for ECDSA, tcId is 111 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1514_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1514_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1514_sig[] = { 0x59, 0x49, 0x2f, 0x3e, 0x58, 0xb5, 0xba, 0xd9, 0x41, 0x21, 0x05, 0xb4, 0x82, 0x4d, 0xbe, 0x93, 0x9d, 0x7c, 0xb2, 0x86, 0x4a, 0x27, 0x68, 0x06, 0x20, 0xac, 0x10, 0x72, 0x85, 0x50, 0x5c, 0x42, 0xeb, 0xfa, 0xeb, 0x15, 0x4c, 0x4e, 0xb6, 0xd9, 0xe6, 0x78, 0x3a, 0x12, 0xab, 0xaa, 0x35, 0xaa, 0x8b, 0x41, 0x14, 0xca, 0xf3, 0x26, 0x0e, 0x50, 0x96, 0x58, 0x24, 0x3a, 0x5f, 0x41, 0x90, 0xe4, 0x0c, 0x26, 0x8d, 0x01, 0x25, 0x78, 0xdf, 0x86, 0x86, 0x6a, 0x4e, 0x95, 0x03, 0xc8, 0x49, 0x08, 0x04, 0x88, 0x2d, 0x08, 0x12, 0xaa, 0x10, 0x5e, 0x24, 0x5c, 0x8c, 0x46, 0xfb, 0x36, 0x48, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1514 = { .name = "ecdsa_brainpoolp384r1_sha384_1514", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1514_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1514_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1514_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1515 for ECDSA, tcId is 112 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1515_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1515_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1515_sig[] = { 0x42, 0x1d, 0xc8, 0x54, 0x47, 0x9a, 0xa6, 0x11, 0x88, 0x7a, 0xa3, 0x68, 0x9b, 0x63, 0x27, 0x6f, 0xbd, 0xc1, 0x6e, 0xc7, 0xd3, 0xdc, 0xa4, 0x49, 0xb4, 0x82, 0xdd, 0x27, 0xb1, 0x40, 0x3c, 0x91, 0x1e, 0xf6, 0x26, 0x5a, 0xd6, 0x25, 0x27, 0x9e, 0x9d, 0x83, 0xce, 0x75, 0x34, 0xf4, 0xac, 0x3f, 0x28, 0x52, 0xe1, 0x6b, 0x42, 0x76, 0x21, 0x5a, 0x62, 0xeb, 0xcb, 0xcf, 0xfa, 0xdd, 0xbd, 0xb2, 0x35, 0x8d, 0xce, 0xa7, 0x08, 0x49, 0x48, 0xbc, 0x94, 0x8f, 0x9b, 0x3d, 0x0f, 0x91, 0x69, 0x3a, 0xba, 0x66, 0x36, 0x2d, 0x4a, 0x2c, 0xec, 0x70, 0xf7, 0x95, 0x2e, 0x37, 0x48, 0x86, 0x21, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1515 = { .name = "ecdsa_brainpoolp384r1_sha384_1515", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1515_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1515_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1515_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1516 for ECDSA, tcId is 113 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1516_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1516_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1516_sig[] = { 0x49, 0x11, 0x0e, 0x41, 0x3a, 0xa3, 0xe0, 0x2f, 0xc0, 0x59, 0x37, 0xd1, 0x00, 0xae, 0x4d, 0xb1, 0x4c, 0xf3, 0xf0, 0x03, 0x8b, 0x38, 0x67, 0x9a, 0x4a, 0xa2, 0x97, 0xb1, 0x1f, 0x9c, 0x47, 0xf7, 0xdf, 0x53, 0x8d, 0xf8, 0xce, 0xe3, 0x0e, 0xfd, 0xa4, 0xdd, 0xab, 0x2c, 0xc5, 0x1a, 0x6b, 0x0f, 0x01, 0x8a, 0x09, 0xa1, 0x8e, 0x1e, 0x79, 0x83, 0xe5, 0x2b, 0x8e, 0x6c, 0xc8, 0xda, 0x9c, 0x6d, 0x71, 0x55, 0xc5, 0x40, 0x90, 0x82, 0xf6, 0x95, 0x87, 0x42, 0x09, 0x06, 0xb7, 0x5c, 0xb5, 0x15, 0x7d, 0x37, 0x58, 0xe9, 0x92, 0xb2, 0x23, 0xeb, 0x7e, 0x9c, 0x27, 0x4f, 0xbf, 0xf4, 0xa9, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1516 = { .name = "ecdsa_brainpoolp384r1_sha384_1516", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1516_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1516_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1516_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1517 for ECDSA, tcId is 114 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1517_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1517_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1517_sig[] = { 0x88, 0x4c, 0xf6, 0x4c, 0xe7, 0x26, 0xd5, 0x75, 0x8e, 0xfb, 0x9f, 0x2f, 0x35, 0xc9, 0x2d, 0xcc, 0x60, 0x63, 0xb0, 0x1b, 0x74, 0x32, 0xfa, 0xff, 0xd0, 0xf8, 0x18, 0x6a, 0xc1, 0x77, 0xe3, 0x11, 0x29, 0x63, 0x3a, 0x64, 0x8a, 0x1a, 0x69, 0x86, 0x14, 0x83, 0x84, 0xa7, 0xd1, 0xc4, 0xd3, 0xf5, 0x01, 0x85, 0x07, 0x18, 0xd7, 0xa2, 0xd4, 0x1e, 0xb9, 0x89, 0x2f, 0x54, 0x40, 0xef, 0x4b, 0x9f, 0xc8, 0xb9, 0x96, 0xd3, 0xb6, 0x74, 0x2e, 0xae, 0xc3, 0xd4, 0x0b, 0x10, 0xc5, 0xca, 0xa8, 0x90, 0xb9, 0xa8, 0x53, 0xe1, 0xd2, 0x11, 0xf7, 0xfd, 0x11, 0x78, 0x11, 0x6a, 0x9e, 0x7c, 0x5f, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1517 = { .name = "ecdsa_brainpoolp384r1_sha384_1517", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1517_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1517_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1517_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1518 for ECDSA, tcId is 115 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1518_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1518_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1518_sig[] = { 0x0d, 0x9d, 0xbf, 0x8e, 0xbc, 0xf8, 0x0f, 0x25, 0x6e, 0xe2, 0xd1, 0xf4, 0xfb, 0x45, 0xcd, 0x54, 0x33, 0x81, 0xf6, 0x27, 0x5c, 0x4c, 0x10, 0xaf, 0xa8, 0x52, 0x08, 0x82, 0x8e, 0x27, 0xe6, 0xfb, 0x3d, 0xf3, 0xca, 0x74, 0x91, 0x89, 0x9c, 0x68, 0x30, 0x7d, 0xb6, 0x6a, 0x50, 0x5c, 0x7a, 0x90, 0x1f, 0x0d, 0xb2, 0x6d, 0xc6, 0x91, 0x68, 0x08, 0x32, 0xb3, 0xe3, 0x59, 0x90, 0x5e, 0x5e, 0x63, 0x2b, 0xc9, 0xea, 0xef, 0xd1, 0xd5, 0xeb, 0x4f, 0x05, 0x8a, 0x0d, 0x88, 0xf8, 0xf2, 0xdf, 0x0d, 0x1a, 0x60, 0xc2, 0xf7, 0x71, 0x72, 0xca, 0xf6, 0x55, 0x4b, 0x2d, 0x25, 0x6c, 0xce, 0x8c, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1518 = { .name = "ecdsa_brainpoolp384r1_sha384_1518", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1518_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1518_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1518_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1519 for ECDSA, tcId is 116 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1519_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1519_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1519_sig[] = { 0x6f, 0xa1, 0x80, 0x2a, 0xc4, 0xc2, 0xe7, 0x9b, 0x8b, 0x5a, 0x47, 0x7b, 0x0a, 0x5f, 0xeb, 0xf6, 0x30, 0xc2, 0x9c, 0x08, 0x98, 0x41, 0x48, 0x4c, 0x1d, 0x56, 0x9d, 0xae, 0xdb, 0xf1, 0x3c, 0x0b, 0xdf, 0x79, 0x3d, 0x0a, 0x8f, 0x69, 0x15, 0xbd, 0xc6, 0x7d, 0xd1, 0x48, 0x08, 0x24, 0xa1, 0xce, 0x28, 0xb8, 0x06, 0x32, 0x58, 0x11, 0x1e, 0x32, 0xaa, 0x10, 0xaf, 0x0b, 0x20, 0x68, 0xc7, 0xf5, 0x4f, 0x0d, 0x5e, 0x9f, 0x02, 0xad, 0x39, 0xa4, 0x15, 0xc9, 0x17, 0x43, 0xd6, 0x44, 0x4c, 0x20, 0x15, 0x6c, 0x35, 0x92, 0xd2, 0xbc, 0xc2, 0x34, 0xf2, 0x65, 0xb4, 0x6a, 0x35, 0x86, 0x4e, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1519 = { .name = "ecdsa_brainpoolp384r1_sha384_1519", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1519_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1519_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1519_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1520 for ECDSA, tcId is 117 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1520_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1520_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1520_sig[] = { 0x3d, 0xc1, 0x36, 0x3d, 0xd0, 0x11, 0x9a, 0x50, 0x54, 0xaf, 0xd9, 0x94, 0x84, 0x02, 0x6a, 0x26, 0x92, 0x56, 0x7d, 0x2f, 0xbe, 0xeb, 0x4c, 0x6d, 0x80, 0xa3, 0x0d, 0x22, 0xf1, 0x66, 0xb6, 0x30, 0x45, 0x44, 0x24, 0x6a, 0x35, 0xba, 0x85, 0x4f, 0x85, 0x46, 0x01, 0x39, 0x7c, 0xe4, 0x5b, 0xd5, 0x2b, 0x02, 0x0a, 0x77, 0x09, 0x01, 0x10, 0x8c, 0xe6, 0xdd, 0xf6, 0x91, 0x17, 0xa2, 0xe8, 0x07, 0x34, 0x78, 0x81, 0x71, 0x60, 0x4a, 0x8f, 0x05, 0x71, 0xdb, 0x61, 0xa4, 0xa8, 0xc3, 0xc4, 0xda, 0xe3, 0x3a, 0xf8, 0x41, 0xaf, 0xe4, 0xa9, 0x89, 0x23, 0x06, 0xb4, 0xf9, 0xec, 0xb1, 0x9b, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1520 = { .name = "ecdsa_brainpoolp384r1_sha384_1520", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1520_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1520_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1520_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1521 for ECDSA, tcId is 118 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1521_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1521_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1521_sig[] = { 0x7b, 0x98, 0x4b, 0xfa, 0x80, 0x7a, 0x8e, 0x9b, 0x0e, 0xef, 0x94, 0xed, 0x28, 0xc2, 0x4b, 0x04, 0xd4, 0x2e, 0x06, 0x64, 0xfb, 0xfc, 0x0e, 0xe1, 0xc1, 0xb5, 0x94, 0x5c, 0x8f, 0x0e, 0x97, 0xfd, 0xc5, 0x15, 0xfe, 0x09, 0xed, 0xd6, 0xcd, 0xaf, 0x7f, 0xef, 0x31, 0x51, 0xca, 0x40, 0x44, 0xdf, 0x4e, 0x87, 0x87, 0x41, 0x52, 0x9d, 0x7a, 0x90, 0x12, 0x5d, 0xeb, 0x8f, 0xa5, 0xfd, 0xab, 0x8e, 0x9f, 0x7d, 0x25, 0x4b, 0x8a, 0xa4, 0x8a, 0x59, 0xa2, 0xf3, 0x35, 0xc7, 0xd4, 0x34, 0x02, 0xf2, 0x59, 0x0f, 0x10, 0x82, 0xc7, 0x6b, 0x22, 0x63, 0x58, 0x2c, 0x9d, 0xd9, 0x8c, 0xa6, 0x86, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1521 = { .name = "ecdsa_brainpoolp384r1_sha384_1521", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1521_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1521_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1521_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1522 for ECDSA, tcId is 119 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1522_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1522_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1522_sig[] = { 0x87, 0x73, 0x15, 0x25, 0xe7, 0x87, 0x23, 0x9a, 0x23, 0x2b, 0xa3, 0xc2, 0x4b, 0x9c, 0xae, 0xff, 0x3c, 0xe5, 0x91, 0xc1, 0x68, 0x22, 0x7b, 0x8e, 0x28, 0x64, 0x14, 0x0b, 0x1d, 0x7c, 0x0c, 0x50, 0xa7, 0xd5, 0xfa, 0x9f, 0x4f, 0x64, 0x68, 0xbc, 0xa8, 0x17, 0x45, 0x8c, 0x17, 0x1a, 0xa4, 0x47, 0x67, 0x05, 0x98, 0xb6, 0xe5, 0xdf, 0xba, 0xab, 0x3b, 0x62, 0x2b, 0xad, 0x9b, 0x5b, 0x6a, 0xe4, 0x2c, 0x9d, 0x27, 0xbd, 0x45, 0xb1, 0xb0, 0xb8, 0x92, 0xaf, 0x9f, 0xd9, 0x73, 0x9d, 0xd5, 0x04, 0x14, 0xe8, 0xee, 0xde, 0x3c, 0x6d, 0xc1, 0x0f, 0xc2, 0x24, 0x46, 0x3b, 0x44, 0xc8, 0xc2, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1522 = { .name = "ecdsa_brainpoolp384r1_sha384_1522", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1522_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1522_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1522_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1523 for ECDSA, tcId is 120 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1523_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1523_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1523_sig[] = { 0x19, 0x01, 0xd0, 0xd8, 0x61, 0x20, 0x5c, 0xc3, 0xe3, 0xf4, 0xa1, 0x89, 0xb8, 0x79, 0xee, 0x24, 0x64, 0x86, 0xf0, 0xcf, 0xdc, 0x48, 0x1d, 0x63, 0x72, 0x73, 0x84, 0xfe, 0xed, 0xc4, 0x6c, 0x8b, 0xad, 0xdf, 0x89, 0x1a, 0x6e, 0x6e, 0xab, 0x6b, 0xed, 0xe4, 0xe4, 0x6b, 0xbf, 0xf1, 0x64, 0x96, 0x40, 0x17, 0xc9, 0xed, 0xda, 0xea, 0x31, 0x12, 0xf2, 0x6f, 0x7c, 0x6e, 0xe4, 0x72, 0xee, 0x19, 0x83, 0xd7, 0xa2, 0x96, 0xa7, 0x40, 0x22, 0x95, 0x79, 0x4f, 0xdd, 0xd9, 0xe2, 0x67, 0xfe, 0x62, 0xd8, 0x5b, 0x07, 0xb9, 0x9e, 0x81, 0xea, 0x51, 0x3e, 0xca, 0x8d, 0x1a, 0x67, 0xe7, 0x05, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1523 = { .name = "ecdsa_brainpoolp384r1_sha384_1523", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1523_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1523_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1523_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1524 for ECDSA, tcId is 121 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1524_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1524_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1524_sig[] = { 0x04, 0x14, 0x3d, 0x73, 0xf1, 0x40, 0xfe, 0xba, 0xc8, 0xfd, 0x4d, 0x67, 0x62, 0xb9, 0xa5, 0x5b, 0xc9, 0x32, 0x64, 0xcc, 0x33, 0x72, 0xbf, 0x16, 0x61, 0xb3, 0x5a, 0x4b, 0x11, 0xbe, 0x9a, 0xf7, 0x91, 0x0d, 0x3a, 0xa8, 0xe4, 0xf5, 0xcb, 0x5e, 0xaf, 0xe1, 0xde, 0x3a, 0x9d, 0x96, 0x95, 0x77, 0x59, 0x66, 0xb4, 0xe1, 0xe9, 0xef, 0x78, 0xe5, 0x23, 0x91, 0x6d, 0xbe, 0xa3, 0x7e, 0x03, 0xec, 0xc3, 0x56, 0xf4, 0x66, 0x44, 0x1d, 0xc4, 0x5b, 0x9b, 0x98, 0xfe, 0x6d, 0x09, 0xaf, 0x83, 0xe7, 0xd5, 0x7a, 0x86, 0x1c, 0x5d, 0x2c, 0xf9, 0x4b, 0xf0, 0xb8, 0x7f, 0x62, 0x75, 0x2b, 0x28, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1524 = { .name = "ecdsa_brainpoolp384r1_sha384_1524", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1524_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1524_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1524_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1525 for ECDSA, tcId is 122 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1525_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1525_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1525_sig[] = { 0x5d, 0x24, 0xa6, 0xcb, 0x0a, 0x9f, 0x7f, 0x8b, 0x9f, 0x8d, 0x72, 0xda, 0x98, 0x9f, 0xcb, 0xe8, 0x5c, 0x94, 0x48, 0xb4, 0x25, 0xa3, 0x68, 0x20, 0x7f, 0xce, 0x84, 0x21, 0xe5, 0xa6, 0x0f, 0x02, 0x91, 0x84, 0xf1, 0x86, 0x11, 0xb9, 0xa5, 0xa1, 0xeb, 0x66, 0xd0, 0x54, 0xd3, 0x60, 0x57, 0xda, 0x32, 0xb8, 0xa4, 0xd4, 0xac, 0xa1, 0x7e, 0x83, 0x35, 0xd8, 0x4f, 0x2a, 0x68, 0xd7, 0x4f, 0x38, 0xd8, 0xcc, 0xe5, 0x29, 0x7e, 0xfe, 0x9e, 0x6d, 0x0e, 0x1a, 0x8e, 0x5b, 0xed, 0x1b, 0x57, 0x59, 0xbc, 0xb7, 0x3c, 0xff, 0x28, 0x06, 0x29, 0x63, 0xa2, 0x8b, 0xbc, 0x1c, 0x57, 0x1e, 0x3e, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1525 = { .name = "ecdsa_brainpoolp384r1_sha384_1525", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1525_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1525_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1525_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1526 for ECDSA, tcId is 123 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1526_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1526_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1526_sig[] = { 0x1d, 0x10, 0xc1, 0xec, 0x20, 0x3f, 0xa0, 0x5d, 0xee, 0xd6, 0x26, 0x44, 0xb8, 0x09, 0x15, 0x0c, 0xd5, 0xe3, 0xfa, 0x15, 0xc9, 0x12, 0x91, 0x56, 0xfb, 0xc0, 0x47, 0x77, 0x42, 0x32, 0x8d, 0x8d, 0x35, 0xb1, 0xc4, 0xca, 0x8b, 0xaa, 0x61, 0x38, 0xe2, 0xe1, 0x29, 0x36, 0xa0, 0xf4, 0xc3, 0x32, 0x4a, 0x02, 0x9b, 0xb5, 0x2d, 0xdf, 0xb1, 0x71, 0xe4, 0xb1, 0x25, 0xd3, 0x32, 0x6d, 0xee, 0xc4, 0x88, 0xcc, 0x9f, 0x6f, 0x2b, 0x36, 0xd0, 0x51, 0xa3, 0x5d, 0x75, 0xc1, 0xde, 0x4b, 0x7a, 0xbd, 0x17, 0x8c, 0x7d, 0x43, 0x90, 0xe5, 0x11, 0xf1, 0x4d, 0x58, 0xf4, 0x9b, 0xae, 0xf6, 0x2d, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1526 = { .name = "ecdsa_brainpoolp384r1_sha384_1526", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1526_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1526_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1526_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1527 for ECDSA, tcId is 124 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1527_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1527_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1527_sig[] = { 0x2d, 0xcd, 0xa3, 0x11, 0x89, 0xd8, 0xd1, 0x79, 0xf7, 0xde, 0xff, 0x20, 0x8a, 0xea, 0x8b, 0xdf, 0xe0, 0xcb, 0x08, 0xa6, 0xda, 0x46, 0xf6, 0x63, 0xc5, 0xca, 0x64, 0x9c, 0x84, 0xd8, 0xfe, 0xc9, 0xc4, 0x49, 0x59, 0x21, 0xc7, 0x79, 0x1d, 0x32, 0xac, 0xa4, 0x25, 0x57, 0xc3, 0xbf, 0x65, 0x8b, 0x67, 0x53, 0x6e, 0x33, 0x64, 0x28, 0xbd, 0xdf, 0xb0, 0x86, 0x2b, 0xff, 0x5b, 0xf5, 0xd5, 0xb1, 0x69, 0x4b, 0x82, 0xc1, 0xe1, 0x48, 0x54, 0x98, 0xe1, 0x4f, 0xe5, 0xc8, 0x8f, 0x75, 0xa9, 0xd7, 0xf5, 0x20, 0x11, 0x5a, 0x35, 0x70, 0x3c, 0xc3, 0x0b, 0xa0, 0xce, 0x97, 0x38, 0x15, 0x18, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1527 = { .name = "ecdsa_brainpoolp384r1_sha384_1527", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1527_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1527_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1527_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1528 for ECDSA, tcId is 125 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1528_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1528_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1528_sig[] = { 0x2c, 0xb8, 0x1c, 0x03, 0xc3, 0xce, 0xfc, 0x41, 0x7f, 0xc6, 0x0f, 0x19, 0xb7, 0x40, 0xe2, 0x30, 0x98, 0x2e, 0x0b, 0x1c, 0x68, 0xce, 0xd1, 0x21, 0x21, 0x30, 0x0d, 0x53, 0x3f, 0x48, 0x55, 0x97, 0xd1, 0xc5, 0x32, 0xd8, 0x7b, 0x23, 0x5d, 0x13, 0x6b, 0xe3, 0xa4, 0x3d, 0xd8, 0x58, 0x82, 0xca, 0x48, 0xa0, 0x4c, 0x5d, 0x8d, 0x86, 0x7e, 0x88, 0x49, 0xbd, 0x3b, 0x98, 0x1f, 0x01, 0x06, 0x91, 0xf0, 0xe7, 0x42, 0x28, 0x82, 0x57, 0x3b, 0xd5, 0xbf, 0xcc, 0x33, 0xd6, 0xf0, 0x69, 0xa6, 0x22, 0xd1, 0x59, 0xca, 0x71, 0xbd, 0x56, 0x25, 0x02, 0xec, 0x00, 0x1b, 0xd2, 0xb4, 0x53, 0x71, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1528 = { .name = "ecdsa_brainpoolp384r1_sha384_1528", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1528_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1528_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1528_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1529 for ECDSA, tcId is 126 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1529_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1529_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1529_sig[] = { 0x15, 0x24, 0x64, 0x66, 0x8c, 0xef, 0xda, 0x80, 0xde, 0xa5, 0x23, 0x2d, 0x36, 0xbf, 0x24, 0x0a, 0xc3, 0x25, 0xe3, 0xca, 0x27, 0x9d, 0x8c, 0x8e, 0x04, 0x58, 0x30, 0x6b, 0x18, 0xfb, 0x12, 0xac, 0x1e, 0xd1, 0x65, 0x86, 0xd2, 0xd0, 0x75, 0x62, 0x69, 0x1c, 0x32, 0x05, 0xeb, 0xb4, 0xc7, 0x74, 0x3c, 0x38, 0x55, 0x67, 0x26, 0x92, 0x79, 0xe9, 0xbc, 0x5a, 0x2d, 0x07, 0x6a, 0xe9, 0xa0, 0x9e, 0x79, 0x0d, 0x1d, 0x8d, 0x08, 0x97, 0x88, 0x71, 0xdf, 0xc5, 0x86, 0x29, 0x8f, 0x56, 0x12, 0x1b, 0x4b, 0xc8, 0x4f, 0x78, 0x91, 0xe9, 0x1c, 0x3d, 0x76, 0x12, 0x24, 0x9d, 0x32, 0x0e, 0x36, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1529 = { .name = "ecdsa_brainpoolp384r1_sha384_1529", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1529_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1529_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1529_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1530 for ECDSA, tcId is 127 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1530_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1530_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1530_sig[] = { 0x05, 0x25, 0x95, 0xa1, 0x6d, 0x03, 0xa1, 0x38, 0xd6, 0x56, 0xde, 0xc7, 0x5a, 0x55, 0x40, 0xb8, 0x0f, 0x7e, 0xfe, 0x63, 0xb1, 0x93, 0x25, 0x0d, 0xe3, 0xbf, 0x81, 0x1f, 0xb2, 0x79, 0x9d, 0x7e, 0xb9, 0xa6, 0xae, 0x27, 0x4a, 0xc9, 0x53, 0xa8, 0xfb, 0xee, 0x74, 0x1d, 0xc1, 0xf5, 0x21, 0x00, 0x55, 0xf0, 0x59, 0x4f, 0xfa, 0x8d, 0x32, 0xb9, 0x1e, 0xea, 0x8b, 0xf0, 0x79, 0xb8, 0xf5, 0xa9, 0xf6, 0xb6, 0x08, 0x88, 0x50, 0x02, 0x25, 0x01, 0x60, 0x95, 0xb3, 0xe7, 0x11, 0x81, 0xff, 0x32, 0xdb, 0xab, 0xca, 0xa5, 0xe9, 0x92, 0xb4, 0x34, 0x09, 0xf5, 0x54, 0x67, 0xbb, 0xb6, 0x51, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1530 = { .name = "ecdsa_brainpoolp384r1_sha384_1530", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1530_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1530_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1530_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1531 for ECDSA, tcId is 128 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1531_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1531_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1531_sig[] = { 0x29, 0x6f, 0x6b, 0x38, 0x51, 0x55, 0x32, 0x03, 0x82, 0x2d, 0x74, 0x17, 0xc1, 0x76, 0xeb, 0x3e, 0xc5, 0xe5, 0x56, 0xe3, 0x52, 0xd2, 0x4f, 0x28, 0x34, 0xbb, 0xdf, 0x70, 0x89, 0xa1, 0x68, 0xe6, 0x37, 0xf3, 0xe8, 0x09, 0x99, 0xe7, 0xa8, 0x61, 0x14, 0x66, 0xde, 0xc3, 0x70, 0x59, 0x00, 0x29, 0x64, 0xf7, 0x96, 0x94, 0x5f, 0x53, 0xfe, 0x0b, 0x27, 0xbb, 0xfb, 0xc5, 0xb5, 0xe9, 0x57, 0xd4, 0x13, 0x2c, 0x24, 0xc8, 0xb4, 0x62, 0x07, 0x5e, 0x82, 0x1b, 0xca, 0x24, 0x98, 0x3e, 0x8b, 0x8f, 0x85, 0x05, 0x31, 0x61, 0x7a, 0x42, 0xed, 0x31, 0x57, 0xdb, 0xe2, 0x0e, 0xab, 0x31, 0xcb, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1531 = { .name = "ecdsa_brainpoolp384r1_sha384_1531", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1531_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1531_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1531_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1532 for ECDSA, tcId is 129 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1532_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1532_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1532_sig[] = { 0x61, 0x93, 0x80, 0x55, 0x8c, 0xd1, 0x4a, 0xc9, 0x09, 0xb5, 0x65, 0xe0, 0x49, 0xaf, 0xa2, 0x24, 0xf7, 0xe7, 0x20, 0xaf, 0x1b, 0x22, 0xe1, 0x8b, 0x59, 0xcb, 0x05, 0x5f, 0xdc, 0x0f, 0x19, 0x1d, 0xef, 0xf4, 0x6a, 0x60, 0x50, 0xd1, 0x64, 0x2c, 0x56, 0x36, 0xc0, 0x32, 0xe9, 0xa7, 0xb4, 0x6b, 0x3c, 0x3f, 0xd2, 0xf2, 0x78, 0xf0, 0x79, 0x54, 0x93, 0x6c, 0x61, 0x83, 0xda, 0x8a, 0xaf, 0xc0, 0xf6, 0x13, 0x19, 0xd9, 0xa9, 0x0b, 0x7d, 0x3d, 0xd1, 0x1a, 0xbe, 0x13, 0xe5, 0x5e, 0x2a, 0xfa, 0x81, 0x51, 0x2f, 0x38, 0x4c, 0x13, 0x33, 0x1a, 0xf1, 0xd6, 0xfb, 0x4d, 0x7c, 0x69, 0x29, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1532 = { .name = "ecdsa_brainpoolp384r1_sha384_1532", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1532_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1532_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1532_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1533 for ECDSA, tcId is 130 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1533_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1533_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1533_sig[] = { 0x35, 0x4e, 0xe9, 0x49, 0xbf, 0xac, 0xa3, 0x5b, 0x19, 0x34, 0xe8, 0x8e, 0x03, 0x6b, 0x7f, 0x37, 0x60, 0x06, 0xb7, 0x98, 0x86, 0x13, 0x3d, 0x07, 0xff, 0x4a, 0xea, 0x3e, 0x05, 0x7e, 0xee, 0xee, 0xc0, 0xb9, 0x3f, 0x62, 0x99, 0x61, 0xc9, 0xac, 0x1e, 0xe1, 0x88, 0xc1, 0xc8, 0x7e, 0x2c, 0xd2, 0x1d, 0x02, 0x62, 0x4a, 0x91, 0x10, 0xf7, 0xba, 0xd6, 0x3e, 0xf7, 0x0e, 0x13, 0x4a, 0x7f, 0xf5, 0x72, 0xd7, 0x72, 0xaa, 0xe3, 0x0b, 0x4d, 0xe6, 0x79, 0x49, 0x4d, 0x00, 0xba, 0x9c, 0xd8, 0x35, 0xd4, 0xec, 0x84, 0x0d, 0x77, 0x2a, 0xf9, 0xf7, 0xc0, 0xb0, 0xda, 0xe8, 0xca, 0xd3, 0x83, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1533 = { .name = "ecdsa_brainpoolp384r1_sha384_1533", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1533_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1533_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1533_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1534 for ECDSA, tcId is 131 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1534_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1534_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1534_sig[] = { 0x88, 0x1e, 0x4e, 0xae, 0xff, 0x3d, 0x3e, 0xd1, 0x73, 0xda, 0xa1, 0x66, 0x22, 0x3d, 0x95, 0x83, 0xac, 0x8d, 0xd2, 0x8a, 0x31, 0x07, 0x65, 0xe7, 0x26, 0x1b, 0x0f, 0xf5, 0x2b, 0x2b, 0x3f, 0xaf, 0xee, 0x80, 0x5d, 0x61, 0x32, 0x58, 0xad, 0xd6, 0xd0, 0x56, 0x15, 0x7c, 0xcc, 0x40, 0xda, 0x73, 0x53, 0xbc, 0x28, 0xcf, 0xfd, 0xed, 0xab, 0x64, 0x52, 0x16, 0x1e, 0x05, 0x51, 0x71, 0x94, 0xe6, 0x6a, 0xfc, 0xc1, 0x4d, 0x10, 0x7d, 0x1e, 0x5d, 0xed, 0x72, 0x9f, 0x66, 0x1c, 0xd6, 0x63, 0x0d, 0x8b, 0x65, 0x81, 0xa8, 0xc2, 0x52, 0x51, 0xed, 0x7c, 0x4b, 0x5c, 0x36, 0x41, 0x29, 0xb5, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1534 = { .name = "ecdsa_brainpoolp384r1_sha384_1534", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1534_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1534_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1534_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1535 for ECDSA, tcId is 132 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1535_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1535_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1535_sig[] = { 0x17, 0x34, 0xf6, 0x66, 0xae, 0x2d, 0x87, 0x27, 0x1d, 0x9e, 0xde, 0x0d, 0xa5, 0x3b, 0xa8, 0xfc, 0x6c, 0xc2, 0xf8, 0x3e, 0xdc, 0x15, 0xdd, 0x26, 0xb9, 0x34, 0x9c, 0x9e, 0x4c, 0xc5, 0x38, 0x04, 0x34, 0xfc, 0x37, 0xb4, 0xff, 0xcf, 0xd9, 0xb7, 0x81, 0xf0, 0x71, 0x25, 0xd8, 0x5d, 0xd6, 0x60, 0x53, 0x1d, 0xae, 0xd4, 0xb8, 0x55, 0xe9, 0x11, 0x7a, 0x1e, 0xba, 0xfa, 0x23, 0x2f, 0x06, 0xb4, 0x7f, 0x50, 0xbe, 0x43, 0x86, 0xdb, 0x27, 0xff, 0xa5, 0xce, 0xca, 0x3e, 0x24, 0x7b, 0xe9, 0x54, 0x97, 0x56, 0x5c, 0x0c, 0x97, 0xb4, 0x37, 0xd3, 0x2d, 0x76, 0x94, 0x97, 0x4b, 0x22, 0xf2, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1535 = { .name = "ecdsa_brainpoolp384r1_sha384_1535", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1535_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1535_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1535_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1536 for ECDSA, tcId is 133 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1536_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1536_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1536_sig[] = { 0x29, 0x69, 0x17, 0xdd, 0x85, 0x47, 0x5f, 0x8e, 0x7b, 0x6f, 0x85, 0x8e, 0x84, 0x74, 0x0b, 0xfa, 0x96, 0x79, 0x96, 0xe1, 0x73, 0xd6, 0x3d, 0x85, 0xaa, 0x08, 0xf1, 0xb6, 0xd3, 0x68, 0x30, 0x97, 0x39, 0x5e, 0x4a, 0x76, 0x48, 0xd1, 0x4e, 0x0b, 0xed, 0xbb, 0xe3, 0x66, 0x7d, 0x3d, 0xb4, 0xf5, 0x4d, 0x3e, 0x02, 0x79, 0xe9, 0x3b, 0xb1, 0x92, 0xf2, 0x44, 0x18, 0xa0, 0xa0, 0x5b, 0xf1, 0x72, 0x38, 0xdc, 0xf7, 0x8d, 0xbe, 0x83, 0x43, 0xe5, 0x5a, 0x66, 0x34, 0x18, 0x10, 0x6d, 0x7a, 0xe2, 0x28, 0x45, 0x94, 0x34, 0x59, 0xb2, 0x64, 0x1f, 0x45, 0xef, 0x4e, 0xd6, 0x06, 0xc5, 0x34, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1536 = { .name = "ecdsa_brainpoolp384r1_sha384_1536", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1536_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1536_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1536_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1537 for ECDSA, tcId is 134 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1537_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1537_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1537_sig[] = { 0x47, 0xf3, 0x15, 0x0d, 0xb2, 0xf4, 0xfa, 0x59, 0x8e, 0xc2, 0x5d, 0xfe, 0x86, 0x4e, 0x11, 0xf9, 0x2b, 0xbd, 0xd5, 0xd6, 0x04, 0x6a, 0xef, 0x74, 0x4b, 0x79, 0x4f, 0x56, 0x70, 0x4e, 0x32, 0x3c, 0xde, 0x1e, 0xb6, 0xea, 0xbd, 0xc3, 0xf7, 0x2f, 0x89, 0x40, 0xd6, 0xa6, 0xfb, 0x30, 0xa1, 0xc8, 0x4e, 0x41, 0xa7, 0x4f, 0x6f, 0x6c, 0xd1, 0x95, 0x0d, 0xf4, 0x11, 0x33, 0xc5, 0x86, 0x08, 0xfb, 0xd8, 0xfb, 0x92, 0xb1, 0x7b, 0xd3, 0xbf, 0xbe, 0xb1, 0xc1, 0xcc, 0x77, 0x84, 0x89, 0xa4, 0xfc, 0xf8, 0x84, 0xe8, 0x00, 0x65, 0x46, 0xcb, 0x69, 0xfa, 0x9d, 0x34, 0x92, 0x65, 0x2d, 0x12, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1537 = { .name = "ecdsa_brainpoolp384r1_sha384_1537", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1537_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1537_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1537_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1538 for ECDSA, tcId is 135 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1538_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1538_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1538_sig[] = { 0x41, 0xb9, 0x03, 0xc2, 0x55, 0xe9, 0x0c, 0xb7, 0x19, 0xb7, 0x46, 0x84, 0xed, 0x97, 0x00, 0xa9, 0x24, 0x36, 0x2e, 0xcd, 0x1c, 0xc8, 0xce, 0x35, 0xb4, 0x4d, 0xaa, 0x1d, 0x41, 0xe3, 0xae, 0x2a, 0xd3, 0xdf, 0x2d, 0x01, 0xb9, 0x10, 0x03, 0x37, 0xef, 0xba, 0xb6, 0x8c, 0x53, 0xc6, 0xc7, 0x6b, 0x47, 0x1f, 0x45, 0x1c, 0x32, 0x40, 0x25, 0xdd, 0xbf, 0xbe, 0x35, 0x9f, 0x1d, 0x3a, 0xc5, 0xe4, 0x0f, 0x71, 0x2b, 0x4e, 0x8a, 0xe0, 0xbb, 0x31, 0x6f, 0x54, 0xa1, 0xae, 0x1d, 0xef, 0x08, 0xc9, 0x5f, 0x53, 0xec, 0xc5, 0x1a, 0xfc, 0x37, 0x5d, 0xe4, 0x36, 0x8d, 0x03, 0xd5, 0x09, 0x59, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1538 = { .name = "ecdsa_brainpoolp384r1_sha384_1538", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1538_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1538_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1538_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1539 for ECDSA, tcId is 136 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1539_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1539_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1539_sig[] = { 0x61, 0xb9, 0xb0, 0x42, 0xfd, 0x65, 0x4c, 0xa9, 0xc6, 0x85, 0xaa, 0xab, 0x03, 0xed, 0x05, 0x44, 0xe3, 0x9e, 0x18, 0x48, 0x37, 0x05, 0x37, 0xa0, 0xd0, 0xac, 0x42, 0xea, 0x74, 0x53, 0xd6, 0x85, 0x37, 0x95, 0x69, 0x5d, 0xda, 0x8f, 0x4c, 0x34, 0x9b, 0x89, 0x7c, 0x2f, 0x61, 0xf9, 0x50, 0x36, 0x63, 0x4d, 0x5a, 0x0a, 0x8c, 0x85, 0x71, 0xf7, 0x68, 0x5c, 0x6c, 0x4b, 0x68, 0xde, 0x8b, 0x29, 0x16, 0xd8, 0xaf, 0x22, 0x33, 0x69, 0x3a, 0x17, 0x39, 0x9a, 0xcb, 0x60, 0x48, 0xa4, 0xd1, 0x41, 0x6e, 0xd3, 0xb2, 0xf9, 0x1b, 0x78, 0x53, 0x86, 0x8d, 0xef, 0x58, 0xa0, 0xea, 0xdd, 0xce, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1539 = { .name = "ecdsa_brainpoolp384r1_sha384_1539", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1539_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1539_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1539_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1540 for ECDSA, tcId is 137 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1540_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1540_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1540_sig[] = { 0x1a, 0xc6, 0xec, 0x44, 0x2c, 0xbc, 0xea, 0x48, 0xa8, 0xc4, 0x04, 0xac, 0x27, 0xe4, 0x2e, 0x21, 0x22, 0xa1, 0x21, 0xef, 0x84, 0x84, 0xbd, 0x91, 0xc0, 0x4a, 0xa2, 0x59, 0x43, 0x8f, 0xed, 0x1e, 0xe8, 0xa8, 0x0b, 0xa5, 0x94, 0x64, 0xb8, 0xa4, 0x35, 0x10, 0x89, 0x92, 0x3b, 0xb0, 0x1e, 0x92, 0x78, 0xc0, 0xed, 0x4e, 0xea, 0x7f, 0xed, 0xda, 0x04, 0xda, 0xd0, 0xd3, 0xf0, 0xd2, 0x28, 0xbc, 0x54, 0x14, 0x8b, 0x12, 0x38, 0xc6, 0x34, 0x28, 0xfc, 0x39, 0xa7, 0x72, 0x14, 0x69, 0x47, 0x79, 0x89, 0x65, 0xca, 0xf7, 0xec, 0x92, 0x76, 0xa0, 0x5a, 0x97, 0x2c, 0xa1, 0xe4, 0x21, 0x8f, 0x84, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1540 = { .name = "ecdsa_brainpoolp384r1_sha384_1540", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1540_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1540_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1540_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1541 for ECDSA, tcId is 138 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1541_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1541_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1541_sig[] = { 0x6d, 0xf0, 0xb3, 0x64, 0x56, 0xbd, 0xcf, 0x91, 0xf6, 0x65, 0x7d, 0x05, 0xb9, 0x37, 0x38, 0x77, 0x1f, 0x18, 0x39, 0x12, 0xe2, 0x7b, 0x9f, 0xd8, 0x88, 0xaf, 0x48, 0x50, 0xb3, 0xd9, 0x79, 0xc4, 0xb7, 0xcb, 0x04, 0x2f, 0x27, 0xe3, 0x86, 0x15, 0xf0, 0x54, 0xd5, 0x17, 0x59, 0x38, 0x13, 0x18, 0x6a, 0x63, 0x8b, 0xe5, 0xf7, 0x7c, 0xbe, 0xc3, 0x7a, 0x97, 0x66, 0x03, 0x6e, 0xfb, 0xc9, 0x00, 0x49, 0x8e, 0xe4, 0xfc, 0x85, 0x0a, 0xc9, 0x83, 0xe5, 0xb6, 0x02, 0xc9, 0x48, 0x30, 0x38, 0xda, 0x98, 0x73, 0x74, 0xd7, 0x55, 0xaa, 0x08, 0x9c, 0xfd, 0x50, 0xbf, 0x2c, 0xc2, 0xde, 0x3b, 0x95, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1541 = { .name = "ecdsa_brainpoolp384r1_sha384_1541", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1541_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1541_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1541_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1542 for ECDSA, tcId is 139 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1542_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1542_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1542_sig[] = { 0x31, 0xc8, 0x68, 0xd4, 0xf0, 0x28, 0xe3, 0x18, 0xc6, 0x91, 0x3a, 0x8d, 0x1a, 0xf0, 0x8a, 0xbb, 0x1f, 0x8a, 0xd9, 0x61, 0xa8, 0x53, 0x38, 0xf8, 0xba, 0xed, 0x7c, 0xbd, 0x8d, 0x79, 0xe1, 0x33, 0x7f, 0x35, 0xbe, 0x3b, 0x03, 0xf1, 0xf6, 0x2c, 0x03, 0x3f, 0x13, 0x88, 0xd6, 0x2b, 0x70, 0x1e, 0x77, 0xa8, 0xd6, 0x3d, 0xe6, 0x8f, 0x69, 0xca, 0x29, 0x9a, 0xa3, 0xeb, 0xab, 0x08, 0x36, 0xd1, 0xe7, 0x17, 0x28, 0x5b, 0xf4, 0x03, 0x68, 0x3e, 0x03, 0x21, 0x0b, 0xd2, 0xa3, 0x33, 0xd7, 0xb6, 0x19, 0x84, 0xd1, 0xe1, 0x39, 0x18, 0x91, 0x3c, 0x8d, 0x1e, 0x7d, 0x6a, 0x93, 0xab, 0x7f, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1542 = { .name = "ecdsa_brainpoolp384r1_sha384_1542", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1542_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1542_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1542_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1543 for ECDSA, tcId is 140 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1543_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1543_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1543_sig[] = { 0x7d, 0x45, 0xc7, 0xdf, 0xa5, 0x9f, 0x13, 0x83, 0x0e, 0x9d, 0xd7, 0x9a, 0x28, 0x3e, 0x21, 0x29, 0xd5, 0x82, 0x9b, 0xe4, 0xcb, 0x84, 0xe0, 0x43, 0x69, 0xed, 0x3b, 0xfa, 0xa0, 0x8f, 0xdb, 0x38, 0xea, 0x64, 0x3c, 0xce, 0xda, 0x16, 0x3f, 0xdb, 0xe5, 0x01, 0x66, 0x23, 0xd3, 0xf1, 0xe4, 0x1e, 0x5b, 0x51, 0xf7, 0xb0, 0xca, 0x78, 0x01, 0x25, 0xdd, 0x6f, 0x60, 0xd3, 0xb4, 0x09, 0x23, 0xfc, 0xaf, 0xe6, 0xe0, 0xd4, 0x9b, 0x84, 0xb3, 0xdb, 0xe5, 0x08, 0xbb, 0x16, 0x94, 0x59, 0x49, 0x5a, 0x84, 0x20, 0x02, 0x8a, 0x3e, 0x44, 0x84, 0x41, 0x20, 0x48, 0x42, 0x9e, 0x67, 0xca, 0x60, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1543 = { .name = "ecdsa_brainpoolp384r1_sha384_1543", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1543_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1543_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1543_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1544 for ECDSA, tcId is 141 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1544_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1544_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1544_sig[] = { 0x87, 0x32, 0x95, 0x1e, 0x64, 0xe1, 0x5e, 0xc1, 0x20, 0x33, 0x32, 0xb9, 0xca, 0x9a, 0x1d, 0xfb, 0xed, 0xdf, 0xb0, 0xd1, 0x23, 0x1d, 0x0e, 0x28, 0x98, 0xc0, 0x99, 0xf7, 0x5e, 0xfd, 0x4d, 0xe9, 0xa4, 0x6d, 0xb9, 0xa7, 0x80, 0x53, 0x9b, 0xb0, 0xe2, 0x84, 0x35, 0xd5, 0xb2, 0x97, 0x00, 0x78, 0x86, 0xb2, 0x11, 0x84, 0x54, 0x2c, 0xe5, 0x0d, 0x04, 0x6d, 0x49, 0xec, 0x53, 0x9d, 0x33, 0x56, 0x9a, 0x5c, 0xc4, 0x5c, 0x64, 0x32, 0xd9, 0x65, 0xfb, 0x4c, 0x45, 0x5c, 0x63, 0xd4, 0x48, 0x19, 0x43, 0x55, 0x77, 0x1d, 0x7d, 0xdc, 0x47, 0xaf, 0x74, 0xfd, 0x28, 0x27, 0xe1, 0xd7, 0x2e, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1544 = { .name = "ecdsa_brainpoolp384r1_sha384_1544", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1544_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1544_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1544_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1545 for ECDSA, tcId is 142 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1545_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1545_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1545_sig[] = { 0x26, 0x31, 0xc7, 0x59, 0xa6, 0xa8, 0x69, 0x14, 0x16, 0x07, 0x66, 0xb9, 0x4a, 0x4e, 0x4f, 0x47, 0x4a, 0x0a, 0xd6, 0x79, 0xb5, 0xaf, 0xed, 0x8a, 0x72, 0x37, 0xea, 0xc7, 0x73, 0xc6, 0xb0, 0xd6, 0x7f, 0xf3, 0xec, 0x36, 0xdf, 0x37, 0x30, 0xe8, 0x1a, 0xde, 0xba, 0x58, 0xd6, 0xe2, 0x95, 0x17, 0x16, 0x20, 0x9d, 0xcc, 0x92, 0x37, 0xa9, 0xae, 0x32, 0xd8, 0x62, 0xb3, 0x31, 0x53, 0x94, 0x3f, 0x1e, 0xaf, 0x2a, 0x92, 0x14, 0x6a, 0xf7, 0x73, 0xcf, 0x3e, 0x5b, 0xba, 0x48, 0xa8, 0x55, 0x1d, 0x9c, 0x2f, 0xa1, 0x2a, 0x01, 0xdf, 0xf3, 0xb0, 0x05, 0x42, 0x6c, 0xda, 0xff, 0x05, 0xa8, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1545 = { .name = "ecdsa_brainpoolp384r1_sha384_1545", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1545_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1545_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1545_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1546 for ECDSA, tcId is 143 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1546_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1546_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1546_sig[] = { 0x59, 0xb1, 0x2f, 0x62, 0x20, 0xb0, 0x46, 0xb0, 0x8f, 0x89, 0x2d, 0x69, 0xba, 0xef, 0xc8, 0x1c, 0x51, 0x0c, 0xc2, 0x5a, 0xd0, 0x90, 0x61, 0x6b, 0x35, 0x06, 0x06, 0x08, 0x42, 0x16, 0xe6, 0xc4, 0x0e, 0x1d, 0x8c, 0xd9, 0x6a, 0x1b, 0x31, 0x5e, 0x64, 0xce, 0x1d, 0x84, 0x98, 0x6d, 0x89, 0xac, 0x39, 0x94, 0xa6, 0x85, 0x2b, 0x23, 0x77, 0xdc, 0xc8, 0x09, 0x35, 0xe2, 0xea, 0x1e, 0xaf, 0x78, 0x89, 0xed, 0x69, 0x4c, 0xd3, 0x21, 0xbb, 0xda, 0x34, 0x2d, 0xbd, 0x57, 0xed, 0xe1, 0xa4, 0x7c, 0x2b, 0x30, 0xde, 0x46, 0xbb, 0x05, 0xca, 0xc6, 0x6a, 0x62, 0x35, 0xc4, 0xbb, 0x29, 0x0c, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1546 = { .name = "ecdsa_brainpoolp384r1_sha384_1546", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1546_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1546_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1546_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1547 for ECDSA, tcId is 144 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1547_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1547_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1547_sig[] = { 0x4f, 0x69, 0x18, 0x0f, 0xb6, 0x60, 0x59, 0x7f, 0x8e, 0x70, 0x33, 0x4b, 0x7b, 0x6f, 0xa9, 0x7e, 0x59, 0x28, 0xa6, 0xc1, 0x75, 0xde, 0x91, 0x29, 0x05, 0x26, 0x1f, 0x3e, 0x1f, 0x4d, 0xf1, 0x75, 0x2d, 0x34, 0x15, 0x37, 0x0e, 0x62, 0x72, 0x71, 0x0c, 0x7b, 0xd4, 0xbd, 0x42, 0xed, 0xad, 0xec, 0x44, 0x5b, 0x0b, 0x78, 0x09, 0x9b, 0xd9, 0x9f, 0xa7, 0x8a, 0x99, 0x45, 0xd7, 0xbd, 0x20, 0x58, 0xa9, 0x00, 0xb9, 0x41, 0x38, 0xd6, 0x7a, 0xbd, 0x37, 0xfd, 0xfc, 0xf2, 0xe9, 0xfa, 0xb6, 0x64, 0x4c, 0xb1, 0xa8, 0xc3, 0x76, 0x16, 0x3e, 0xcb, 0x69, 0x95, 0x5e, 0x95, 0x4c, 0xe8, 0xc3, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1547 = { .name = "ecdsa_brainpoolp384r1_sha384_1547", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1547_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1547_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1547_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1548 for ECDSA, tcId is 145 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1548_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1548_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x9b, 0x6b, 0xac, 0xd3, 0xb2, 0xeb, 0x7b, 0xdd, 0x98, 0xf0, 0x7a, 0x24, 0x9d, 0x57, 0x61, 0x4b, 0xbe, 0xce, 0x10, 0x48, 0x03, 0x86, 0xe8, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1548 = { .name = "ecdsa_brainpoolp384r1_sha384_1548", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1548_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1548_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1548_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 145 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1549 for ECDSA, tcId is 146 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1549_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1549_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x4d, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1549 = { .name = "ecdsa_brainpoolp384r1_sha384_1549", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1549_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1549_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1549_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 146 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1550 for ECDSA, tcId is 147 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1550_pubkey[] = { 0x73, 0xf8, 0x4a, 0xb6, 0x37, 0x89, 0x30, 0x1e, 0x88, 0xb4, 0xcb, 0x82, 0xcb, 0x93, 0x5d, 0xec, 0xff, 0xb8, 0xf4, 0x2b, 0x2c, 0x97, 0x84, 0xc7, 0x54, 0x46, 0x15, 0xb9, 0x07, 0x6e, 0xc7, 0xa7, 0xab, 0x94, 0x70, 0x2c, 0xa7, 0xf1, 0xd9, 0xaa, 0xcf, 0xb9, 0x05, 0x37, 0xb5, 0xd3, 0x68, 0xdc, 0x50, 0x2c, 0xb7, 0xc8, 0xc1, 0x82, 0x85, 0x99, 0x4c, 0x7b, 0x19, 0xfa, 0x3e, 0x24, 0x01, 0xfd, 0xc2, 0x6d, 0xe5, 0x4f, 0xfe, 0x00, 0x6b, 0xb7, 0x9b, 0xdd, 0x78, 0x52, 0xc6, 0x66, 0xd7, 0x30, 0xbd, 0xf7, 0x6a, 0x16, 0xc0, 0x79, 0x2a, 0x6c, 0x66, 0x81, 0xed, 0x6b, 0x64, 0x7f, 0xc8, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1550_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1550 = { .name = "ecdsa_brainpoolp384r1_sha384_1550", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1550_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1550_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1550_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 147 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1551 for ECDSA, tcId is 148 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1551_pubkey[] = { 0x89, 0x5e, 0x84, 0x61, 0xed, 0xdb, 0xe2, 0x13, 0x67, 0xa9, 0x5b, 0x25, 0xcd, 0x85, 0xcd, 0x31, 0xe8, 0x0e, 0xcf, 0x1f, 0x95, 0x53, 0x90, 0x56, 0xfb, 0x7e, 0x10, 0xb4, 0xaa, 0x49, 0x90, 0x0b, 0x21, 0x94, 0xd9, 0x19, 0xb2, 0x9c, 0xd9, 0xbf, 0x37, 0x3a, 0x1d, 0x53, 0xef, 0x57, 0x11, 0x74, 0x76, 0x7c, 0x02, 0xe3, 0x6b, 0x93, 0x5a, 0x65, 0xe5, 0xa9, 0xcb, 0xb3, 0x55, 0x89, 0xa2, 0xa0, 0x18, 0x48, 0x20, 0x65, 0xc5, 0xe3, 0x3d, 0xa8, 0xce, 0x48, 0x3d, 0xc7, 0xf7, 0xfe, 0x44, 0x15, 0x74, 0xf9, 0xe7, 0xab, 0x06, 0x14, 0xbd, 0xcf, 0xc6, 0x10, 0x22, 0xc7, 0x80, 0xa3, 0x00, 0x09, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1551_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x48, 0x0e, 0xca, 0x28, 0x74, 0xaa, 0x6b, 0xa7, 0x1e, 0x7f, 0xb5, 0x71, 0x13, 0x39, 0xac, 0x0a, 0x7b, 0xf8, 0x40, 0x65, 0xb3, 0xc7, 0xd5, 0x9c, 0x64, 0xa2, 0xc6, 0x01, 0x5e, 0x6f, 0x79, 0x4e, 0x7d, 0xfa, 0x2b, 0x1f, 0xec, 0x73, 0xa7, 0x2a, 0xdb, 0x32, 0xbd, 0xb7, 0xdd, 0x55, 0xcd, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1551 = { .name = "ecdsa_brainpoolp384r1_sha384_1551", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1551_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1551_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1551_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 148 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1552 for ECDSA, tcId is 149 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1552_pubkey[] = { 0x61, 0x8a, 0xd8, 0x19, 0x12, 0xe4, 0xc3, 0x1f, 0x23, 0xea, 0xb2, 0xf0, 0xc6, 0x93, 0xb3, 0xef, 0x84, 0x04, 0x07, 0x4a, 0xb1, 0xdc, 0xe0, 0x1d, 0xc8, 0x2a, 0x76, 0x81, 0x51, 0xc9, 0xfa, 0x03, 0x93, 0xb4, 0xd6, 0xae, 0xae, 0xec, 0x68, 0x58, 0xd3, 0xf4, 0x19, 0x95, 0x7a, 0x5b, 0x99, 0x7f, 0x31, 0xfa, 0x80, 0x9b, 0x1b, 0x44, 0x67, 0x7c, 0xc5, 0xae, 0xf1, 0x89, 0x48, 0x46, 0x14, 0x2c, 0x3e, 0x44, 0xbb, 0xa6, 0xc4, 0x71, 0x12, 0x3f, 0xa1, 0x4f, 0xeb, 0x8f, 0x3a, 0xa9, 0xe9, 0x2f, 0x76, 0x9b, 0xe5, 0x49, 0xce, 0xf9, 0xc1, 0xd5, 0x5b, 0xc6, 0xf1, 0xf4, 0xf8, 0x41, 0x81, 0x3d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1552_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x16, 0x29, 0xef, 0x2d, 0x71, 0x82, 0xd6, 0x7b, 0x6b, 0xd9, 0xcf, 0x68, 0x42, 0x25, 0x1f, 0xe0, 0x9c, 0x96, 0xbf, 0xe0, 0x22, 0xb8, 0xad, 0x9a, 0x0e, 0x54, 0x6f, 0xdc, 0x8e, 0xcf, 0x5d, 0xc8, 0x63, 0x6f, 0xa1, 0x30, 0x59, 0xd7, 0xe9, 0xd8, 0x3f, 0xde, 0x50, 0xe0, 0xd2, 0xb3, 0x92, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1552 = { .name = "ecdsa_brainpoolp384r1_sha384_1552", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1552_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1552_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1552_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 149 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1553 for ECDSA, tcId is 150 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1553_pubkey[] = { 0x79, 0x58, 0x3b, 0x49, 0x68, 0xb5, 0x76, 0x81, 0x1b, 0x56, 0x7e, 0x16, 0x20, 0xe0, 0x0b, 0x0a, 0xab, 0x8a, 0xa2, 0x23, 0xc5, 0xe6, 0x55, 0xb2, 0x7b, 0x1e, 0xbe, 0xaf, 0x83, 0xbc, 0xd3, 0x5f, 0x42, 0x05, 0xa5, 0xa0, 0xe5, 0x1a, 0x20, 0x52, 0xff, 0xfe, 0x9f, 0xd2, 0x37, 0x85, 0xc9, 0x8f, 0x77, 0x35, 0x7c, 0x8a, 0x10, 0x08, 0xfc, 0xb7, 0xa3, 0x57, 0x96, 0x14, 0xc2, 0xff, 0x47, 0x98, 0x0f, 0xa9, 0xe4, 0x4b, 0x6b, 0x5e, 0xa3, 0xf8, 0xa3, 0x3c, 0x91, 0x9d, 0xd2, 0xae, 0xa5, 0xda, 0xd0, 0xca, 0x1a, 0x01, 0xa9, 0xe2, 0x10, 0x65, 0x18, 0xb1, 0x64, 0x29, 0x06, 0xe4, 0xf2, 0x75, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1553_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1553 = { .name = "ecdsa_brainpoolp384r1_sha384_1553", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1553_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1553_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1553_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 150 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1554 for ECDSA, tcId is 151 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1554_pubkey[] = { 0x79, 0x58, 0x3b, 0x49, 0x68, 0xb5, 0x76, 0x81, 0x1b, 0x56, 0x7e, 0x16, 0x20, 0xe0, 0x0b, 0x0a, 0xab, 0x8a, 0xa2, 0x23, 0xc5, 0xe6, 0x55, 0xb2, 0x7b, 0x1e, 0xbe, 0xaf, 0x83, 0xbc, 0xd3, 0x5f, 0x42, 0x05, 0xa5, 0xa0, 0xe5, 0x1a, 0x20, 0x52, 0xff, 0xfe, 0x9f, 0xd2, 0x37, 0x85, 0xc9, 0x8f, 0x77, 0x35, 0x7c, 0x8a, 0x10, 0x08, 0xfc, 0xb7, 0xa3, 0x57, 0x96, 0x14, 0xc2, 0xff, 0x47, 0x98, 0x0f, 0xa9, 0xe4, 0x4b, 0x6b, 0x5e, 0xa3, 0xf8, 0xa3, 0x3c, 0x91, 0x9d, 0xd2, 0xae, 0xa5, 0xda, 0xd0, 0xca, 0x1a, 0x01, 0xa9, 0xe2, 0x10, 0x65, 0x18, 0xb1, 0x64, 0x29, 0x06, 0xe4, 0xf2, 0x75, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1554_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1554 = { .name = "ecdsa_brainpoolp384r1_sha384_1554", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1554_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1554_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1554_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 151 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1555 for ECDSA, tcId is 152 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1555_pubkey[] = { 0x89, 0x65, 0x7b, 0xac, 0x21, 0x6c, 0x3a, 0xc4, 0xa3, 0xa2, 0xd5, 0xaf, 0xd3, 0x42, 0xad, 0x24, 0xa4, 0xeb, 0x10, 0x3d, 0x4d, 0xbe, 0x2e, 0x44, 0x61, 0xe0, 0x3c, 0x70, 0x11, 0x82, 0x65, 0x13, 0xfe, 0x82, 0xbd, 0x06, 0xe1, 0x7e, 0x3a, 0xe8, 0xeb, 0x58, 0x11, 0xda, 0x0b, 0xec, 0x88, 0xbb, 0x33, 0xee, 0x1e, 0xdd, 0xd5, 0xd4, 0x9d, 0xd8, 0x6e, 0x78, 0x5f, 0xbf, 0xeb, 0xb9, 0x28, 0x86, 0x61, 0x96, 0x4e, 0x6f, 0xbe, 0x0c, 0x07, 0xaf, 0x9a, 0x4b, 0xa3, 0x14, 0x5f, 0xc4, 0xbe, 0x11, 0xe5, 0x48, 0x4b, 0x65, 0x0c, 0x97, 0x09, 0x6d, 0xb8, 0x2e, 0xbb, 0x0c, 0xa2, 0xbb, 0x84, 0xed, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1555_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1555 = { .name = "ecdsa_brainpoolp384r1_sha384_1555", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1555_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1555_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1555_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 152 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1556 for ECDSA, tcId is 153 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1556_pubkey[] = { 0x89, 0x65, 0x7b, 0xac, 0x21, 0x6c, 0x3a, 0xc4, 0xa3, 0xa2, 0xd5, 0xaf, 0xd3, 0x42, 0xad, 0x24, 0xa4, 0xeb, 0x10, 0x3d, 0x4d, 0xbe, 0x2e, 0x44, 0x61, 0xe0, 0x3c, 0x70, 0x11, 0x82, 0x65, 0x13, 0xfe, 0x82, 0xbd, 0x06, 0xe1, 0x7e, 0x3a, 0xe8, 0xeb, 0x58, 0x11, 0xda, 0x0b, 0xec, 0x88, 0xbb, 0x33, 0xee, 0x1e, 0xdd, 0xd5, 0xd4, 0x9d, 0xd8, 0x6e, 0x78, 0x5f, 0xbf, 0xeb, 0xb9, 0x28, 0x86, 0x61, 0x96, 0x4e, 0x6f, 0xbe, 0x0c, 0x07, 0xaf, 0x9a, 0x4b, 0xa3, 0x14, 0x5f, 0xc4, 0xbe, 0x11, 0xe5, 0x48, 0x4b, 0x65, 0x0c, 0x97, 0x09, 0x6d, 0xb8, 0x2e, 0xbb, 0x0c, 0xa2, 0xbb, 0x84, 0xed, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1556_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1556 = { .name = "ecdsa_brainpoolp384r1_sha384_1556", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1556_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1556_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1556_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 153 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1557 for ECDSA, tcId is 154 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1557_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1557_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1557 = { .name = "ecdsa_brainpoolp384r1_sha384_1557", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1557_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1557_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1557_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 154 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1558 for ECDSA, tcId is 155 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1558_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1558_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1558 = { .name = "ecdsa_brainpoolp384r1_sha384_1558", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1558_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1558_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1558_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 155 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1559 for ECDSA, tcId is 156 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1559_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1559_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1559 = { .name = "ecdsa_brainpoolp384r1_sha384_1559", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1559_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1559_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1559_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 156 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1560 for ECDSA, tcId is 157 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1560_pubkey[] = { 0x1b, 0xee, 0x74, 0x1f, 0xa1, 0x92, 0xa9, 0xbd, 0x05, 0x35, 0xd0, 0x06, 0x27, 0x73, 0x70, 0x79, 0xe9, 0x8f, 0x00, 0x07, 0x63, 0x94, 0xc9, 0x78, 0xa9, 0x6a, 0x0f, 0x9f, 0xba, 0x64, 0xe9, 0xe2, 0x1d, 0xec, 0xff, 0x6b, 0x4b, 0x8f, 0xe1, 0x1f, 0x60, 0xb1, 0x8d, 0x5d, 0x75, 0x86, 0x84, 0xde, 0x06, 0xd1, 0x93, 0x21, 0xea, 0xb7, 0xe8, 0x60, 0x1f, 0x8f, 0x46, 0x06, 0xfe, 0x93, 0xfd, 0x3b, 0x2f, 0x02, 0x98, 0x6a, 0x58, 0xca, 0x56, 0x41, 0x32, 0x82, 0xc6, 0x6d, 0xd3, 0x6b, 0xa6, 0x72, 0x4a, 0x3c, 0xbc, 0xee, 0xe7, 0x99, 0x48, 0xba, 0x2d, 0x55, 0xc7, 0x56, 0x58, 0x6b, 0x58, 0xe2, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1560_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x17, 0x3b, 0xec, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1560 = { .name = "ecdsa_brainpoolp384r1_sha384_1560", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1560_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1560_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1560_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 157 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1561 for ECDSA, tcId is 158 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1561_pubkey[] = { 0x6b, 0x25, 0xf8, 0xc1, 0x62, 0x9f, 0x75, 0x79, 0xe3, 0xc7, 0xee, 0x4b, 0x02, 0x9c, 0xc0, 0x29, 0xb4, 0xbd, 0xbe, 0xd8, 0x8b, 0x9b, 0x39, 0x93, 0x03, 0xe4, 0xa1, 0x43, 0x52, 0xd1, 0xf3, 0xf6, 0x04, 0x8e, 0xcd, 0xd0, 0x62, 0xd3, 0x7c, 0xba, 0x7b, 0x70, 0xbc, 0xbd, 0x58, 0x72, 0x31, 0xe7, 0x62, 0x13, 0x13, 0xf9, 0x3d, 0x31, 0x0f, 0x14, 0x4b, 0xd3, 0x32, 0x25, 0x82, 0x80, 0x46, 0x39, 0xdd, 0x29, 0x60, 0x96, 0x9a, 0x99, 0x3a, 0x9f, 0x2a, 0x36, 0x09, 0xf8, 0x56, 0xe1, 0x41, 0x5a, 0x0a, 0x4d, 0xcf, 0x58, 0xa7, 0x86, 0x4e, 0x41, 0xe2, 0xa8, 0xc8, 0x0d, 0xfc, 0x15, 0x8a, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1561_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x89, 0x66, 0x21, 0xd2, 0x32, 0x83, 0xb1, 0x21, 0x11, 0x04, 0x8d, 0x1c, 0x97, 0x8e, 0x2c, 0x28, 0x6d, 0x60, 0xb6, 0xef, 0x7c, 0xe3, 0x7a, 0xf3, 0x6c, 0xf7, 0xaa, 0x4d, 0xe2, 0x68, 0xd6, 0x26, 0xde, 0x7d, 0xdc, 0xb3, 0x56, 0xd1, 0x67, 0xc7, 0x48, 0x3c, 0x69, 0x45, 0x5c, 0x75, 0x2c, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1561 = { .name = "ecdsa_brainpoolp384r1_sha384_1561", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1561_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1561_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1561_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 158 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1562 for ECDSA, tcId is 159 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1562_pubkey[] = { 0x5d, 0x08, 0x2c, 0xde, 0x60, 0x86, 0xf8, 0xea, 0x69, 0x94, 0xf4, 0x6e, 0x9d, 0xc0, 0x6c, 0x1c, 0x1d, 0x2c, 0x3a, 0x3c, 0x2d, 0xc5, 0xc9, 0x7b, 0xf1, 0x37, 0x65, 0x3d, 0x9b, 0x2e, 0xd2, 0x11, 0x01, 0xba, 0xd8, 0x43, 0xd4, 0x6e, 0x4b, 0x79, 0x25, 0xb9, 0xaf, 0x70, 0x34, 0xc6, 0xd0, 0x21, 0x12, 0xc7, 0xf5, 0x6e, 0x65, 0xd2, 0x33, 0x10, 0x40, 0x63, 0x39, 0x1f, 0xb3, 0x82, 0x8b, 0x39, 0x90, 0xe6, 0x89, 0x3d, 0x77, 0x74, 0x6e, 0x42, 0x30, 0x5e, 0x6a, 0x5b, 0xa1, 0x11, 0xd9, 0x76, 0xd6, 0x93, 0xf5, 0x95, 0xaf, 0x85, 0x8f, 0x19, 0xfa, 0xc7, 0x23, 0x4f, 0x74, 0x84, 0xc4, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1562_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x38, 0xe8, 0xda, 0xe2, 0x16, 0xc6, 0x3f, 0x06, 0xb3, 0xed, 0xbd, 0x0f, 0x9b, 0xa7, 0xa5, 0xe4, 0xa3, 0x32, 0xec, 0x18, 0x72, 0x51, 0xe3, 0xd6, 0x27, 0x83, 0x9d, 0x1b, 0xaa, 0xc6, 0x67, 0xd7, 0xca, 0xad, 0x2a, 0xb0, 0xa1, 0xea, 0x9f, 0xbb, 0x12, 0xdc, 0x5a, 0x71, 0xe3, 0xb4, 0x9b, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1562 = { .name = "ecdsa_brainpoolp384r1_sha384_1562", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1562_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1562_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1562_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 159 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1563 for ECDSA, tcId is 160 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1563_pubkey[] = { 0x74, 0x07, 0xca, 0x6c, 0x2a, 0x18, 0x3f, 0x9c, 0xa1, 0x37, 0x66, 0x09, 0xe9, 0xc7, 0x8a, 0x8d, 0x08, 0x0e, 0xff, 0xad, 0x15, 0xa4, 0xf6, 0x3c, 0xbb, 0x7a, 0x16, 0x8e, 0x3c, 0x78, 0x9b, 0x8b, 0x59, 0xce, 0x4d, 0x31, 0x22, 0xca, 0x08, 0xa8, 0x69, 0x07, 0xba, 0x48, 0x7f, 0x71, 0x7f, 0xbc, 0x3e, 0x2c, 0x56, 0xa9, 0xb3, 0x46, 0x0a, 0x51, 0x36, 0xb2, 0x13, 0xbe, 0x8d, 0x48, 0xcb, 0x3d, 0xc9, 0xc7, 0xad, 0x94, 0x5b, 0x1d, 0xce, 0xcb, 0xf9, 0x3f, 0xa6, 0xcf, 0xaa, 0xf8, 0xdb, 0xd7, 0x0f, 0x10, 0x40, 0xb9, 0x7a, 0xd8, 0xe3, 0xac, 0x30, 0xf2, 0xe6, 0x4f, 0xd7, 0xcc, 0x76, 0xd6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1563_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x0d, 0x24, 0x36, 0xa5, 0x99, 0xb3, 0x96, 0xa5, 0x1c, 0x54, 0x6e, 0x05, 0xd1, 0xc3, 0xd2, 0x5a, 0x8f, 0x6d, 0x05, 0x93, 0x5a, 0xe5, 0x03, 0x1d, 0xad, 0x3c, 0xdd, 0x7c, 0xb3, 0x6c, 0xf6, 0x91, 0x2a, 0x43, 0x3d, 0xe2, 0x8f, 0x84, 0x75, 0xd3, 0xb1, 0xe2, 0xe1, 0xce, 0x77, 0x61, 0x08, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1563 = { .name = "ecdsa_brainpoolp384r1_sha384_1563", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1563_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1563_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1563_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 160 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1564 for ECDSA, tcId is 161 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1564_pubkey[] = { 0x4f, 0xc3, 0x2a, 0x52, 0x26, 0x82, 0x0e, 0xc9, 0xc3, 0xff, 0xf2, 0xc7, 0x4e, 0x0b, 0x36, 0xd7, 0xde, 0x02, 0x8e, 0x59, 0xfc, 0x00, 0x5f, 0x38, 0x07, 0xa3, 0xbd, 0x59, 0x89, 0x2c, 0x9a, 0xd2, 0x0d, 0xba, 0x71, 0x68, 0xef, 0x9e, 0xd9, 0xbf, 0x99, 0xb2, 0x5e, 0xd0, 0x1b, 0xcf, 0xc6, 0xca, 0x6a, 0x13, 0xda, 0x2e, 0x85, 0x27, 0x77, 0xa6, 0xf9, 0x9d, 0x04, 0x32, 0x2a, 0x1b, 0x9f, 0xb4, 0x22, 0x76, 0x84, 0xbf, 0x7c, 0x40, 0xd4, 0xd3, 0xef, 0x92, 0x79, 0x80, 0x03, 0xa3, 0xbf, 0x2d, 0xa1, 0x58, 0xd5, 0x68, 0x64, 0x57, 0xc3, 0x3d, 0x0e, 0x24, 0xbe, 0x5c, 0x26, 0x5f, 0xc4, 0x73, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1564_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1564 = { .name = "ecdsa_brainpoolp384r1_sha384_1564", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1564_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1564_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1564_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 161 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1565 for ECDSA, tcId is 162 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1565_pubkey[] = { 0x73, 0x50, 0xa7, 0xd0, 0x0d, 0x77, 0x19, 0xa3, 0x18, 0x52, 0x2e, 0xf4, 0xc5, 0xe6, 0xbe, 0x24, 0xb3, 0xb2, 0xcb, 0x30, 0x0c, 0x59, 0x6f, 0x79, 0xe8, 0xdd, 0x31, 0xa4, 0x68, 0x8f, 0xe6, 0x5a, 0x54, 0xb2, 0xd7, 0x49, 0x7a, 0x06, 0x82, 0x1e, 0xec, 0xba, 0xf3, 0x1b, 0x2f, 0xa7, 0xcd, 0xcb, 0x4b, 0xd7, 0x2f, 0xc7, 0xf0, 0x5e, 0x32, 0x45, 0x7f, 0xda, 0x0c, 0xc3, 0xf3, 0x21, 0x15, 0x77, 0x44, 0xf1, 0x84, 0x1c, 0x30, 0xbd, 0x08, 0x6e, 0x6d, 0xdd, 0x5b, 0xf4, 0x15, 0xeb, 0x71, 0xec, 0xbe, 0x36, 0xf0, 0xf3, 0xfd, 0x23, 0xd3, 0xc4, 0x14, 0x87, 0xfb, 0x28, 0x3e, 0x0e, 0x97, 0x94, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1565_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1565 = { .name = "ecdsa_brainpoolp384r1_sha384_1565", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1565_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1565_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1565_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 162 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1566 for ECDSA, tcId is 163 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1566_pubkey[] = { 0x61, 0x49, 0x8a, 0xd3, 0x1a, 0x84, 0xee, 0xd1, 0x02, 0xba, 0x27, 0x12, 0xeb, 0x8a, 0x7b, 0xd9, 0x23, 0x20, 0xbd, 0xa4, 0xac, 0x6d, 0x07, 0xb4, 0x32, 0x6a, 0x30, 0x86, 0x9d, 0x19, 0xeb, 0x1b, 0x96, 0x22, 0x9d, 0x21, 0xef, 0xd7, 0x11, 0xdc, 0xf7, 0x30, 0x48, 0xbf, 0x16, 0x68, 0x00, 0xe3, 0x0c, 0xfc, 0xc1, 0x3a, 0x09, 0x14, 0x13, 0x22, 0x84, 0xdb, 0xea, 0xb6, 0xfc, 0xf5, 0xd7, 0x0b, 0x34, 0xca, 0x86, 0xa6, 0x81, 0x15, 0x7e, 0x48, 0x74, 0xab, 0xff, 0xae, 0xeb, 0xb6, 0x9b, 0x8b, 0x71, 0xf6, 0x9d, 0x33, 0x23, 0x06, 0x56, 0x78, 0x23, 0xdd, 0xe5, 0x40, 0x7c, 0xe7, 0x39, 0xe8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1566_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x64, 0xe5, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1566 = { .name = "ecdsa_brainpoolp384r1_sha384_1566", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1566_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1566_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1566_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 163 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1567 for ECDSA, tcId is 164 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1567_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1567_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1567 = { .name = "ecdsa_brainpoolp384r1_sha384_1567", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1567_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1567_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1567_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 164 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1568 for ECDSA, tcId is 165 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1568_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1568_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1568 = { .name = "ecdsa_brainpoolp384r1_sha384_1568", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1568_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1568_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1568_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 165 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1569 for ECDSA, tcId is 166 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1569_pubkey[] = { 0x4d, 0xf8, 0x98, 0x54, 0x4c, 0x2b, 0x10, 0xdc, 0x3c, 0x4d, 0x32, 0x49, 0xfc, 0xa5, 0x13, 0x0e, 0x75, 0x3d, 0x26, 0xe0, 0x83, 0x20, 0xbd, 0x82, 0x39, 0x26, 0xac, 0xb0, 0x50, 0xd8, 0xb6, 0xa4, 0xfe, 0xad, 0xf2, 0x9b, 0xef, 0x07, 0xec, 0xdb, 0x00, 0xe8, 0x5b, 0x34, 0x1f, 0x22, 0x06, 0x9a, 0x00, 0x33, 0x43, 0x69, 0x5d, 0x1e, 0x0a, 0xc0, 0xa7, 0x8b, 0x38, 0x49, 0x0d, 0x97, 0xc1, 0xe9, 0x0e, 0x4f, 0xf4, 0xca, 0x0d, 0x21, 0x40, 0xb9, 0x10, 0x1f, 0x1b, 0x63, 0xf2, 0x9c, 0xa4, 0xf2, 0xbf, 0x91, 0x76, 0xe1, 0x60, 0x04, 0x83, 0x91, 0x62, 0x16, 0xbd, 0x35, 0xab, 0xce, 0x67, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1569_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1569 = { .name = "ecdsa_brainpoolp384r1_sha384_1569", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1569_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1569_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1569_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 166 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1570 for ECDSA, tcId is 167 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1570_pubkey[] = { 0x3e, 0x95, 0x5d, 0x28, 0x45, 0x89, 0x77, 0x58, 0x37, 0xc9, 0xb8, 0x3d, 0xbc, 0xb4, 0x91, 0x86, 0xd6, 0x95, 0xd6, 0xb5, 0x3f, 0x57, 0x71, 0x68, 0x9f, 0x64, 0x58, 0xe4, 0x0a, 0x2b, 0x6d, 0xad, 0x62, 0x54, 0xcb, 0xb2, 0x27, 0xde, 0x46, 0x75, 0x84, 0x9d, 0x11, 0xe0, 0xfd, 0xf3, 0x21, 0x14, 0x3c, 0x4f, 0x0a, 0xe8, 0x80, 0x33, 0x67, 0x71, 0x61, 0x86, 0x17, 0x4f, 0x91, 0xb7, 0x03, 0x5b, 0x35, 0xbf, 0x84, 0x90, 0xe4, 0x9f, 0x9c, 0x46, 0x14, 0x7b, 0x6d, 0x3b, 0x71, 0xd9, 0x6f, 0x74, 0xab, 0xfa, 0x5e, 0x40, 0xf3, 0x3c, 0x10, 0x0f, 0x79, 0xd4, 0x59, 0x62, 0x41, 0x91, 0xce, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1570_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1570 = { .name = "ecdsa_brainpoolp384r1_sha384_1570", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1570_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1570_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1570_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 167 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1571 for ECDSA, tcId is 168 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1571_pubkey[] = { 0x39, 0xc4, 0x48, 0x73, 0xcc, 0xab, 0x02, 0x3c, 0x4b, 0x36, 0x6a, 0x64, 0x6d, 0xec, 0xb4, 0xbe, 0xb5, 0x67, 0x2b, 0x6d, 0x21, 0x40, 0xfa, 0x0f, 0xd2, 0x00, 0x37, 0x4a, 0xa0, 0x13, 0x01, 0x00, 0x8c, 0x04, 0x19, 0xc3, 0x39, 0x2c, 0x58, 0x90, 0x00, 0x81, 0x6e, 0x1f, 0x18, 0x05, 0x9a, 0x4c, 0x2b, 0x61, 0x04, 0xbe, 0x5e, 0x26, 0xc6, 0x57, 0xaa, 0x1f, 0x6f, 0xa4, 0xad, 0xdf, 0x3f, 0xf5, 0x2a, 0x45, 0x67, 0x98, 0x00, 0xdd, 0x28, 0xcd, 0x62, 0x87, 0x11, 0xf2, 0xd1, 0xc1, 0x11, 0x53, 0xa3, 0x6c, 0x6c, 0x42, 0xfb, 0xa6, 0x95, 0x4c, 0xd3, 0x7f, 0xd2, 0x52, 0x11, 0x2d, 0xe1, 0xa4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1571_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1571 = { .name = "ecdsa_brainpoolp384r1_sha384_1571", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1571_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1571_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1571_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 168 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1572 for ECDSA, tcId is 169 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1572_pubkey[] = { 0x5d, 0x77, 0x13, 0x4e, 0x89, 0x0a, 0xc7, 0x2f, 0x9c, 0x69, 0xfc, 0xc3, 0xf1, 0x81, 0xae, 0x74, 0x6f, 0xef, 0xff, 0xda, 0xfc, 0x1d, 0xfc, 0x79, 0x1c, 0xf3, 0x3a, 0x22, 0xfb, 0x0f, 0x8e, 0x58, 0x61, 0x88, 0xcf, 0x2d, 0x5d, 0x06, 0x0d, 0xdb, 0x04, 0x00, 0x4b, 0xaf, 0x56, 0x19, 0x1c, 0x9f, 0x0e, 0x74, 0x01, 0xdd, 0xcc, 0x47, 0xa0, 0x9b, 0x5e, 0xcf, 0x27, 0x19, 0xcc, 0x93, 0x60, 0x10, 0xa9, 0x37, 0x1a, 0x7f, 0x76, 0x24, 0xe6, 0x3e, 0x7a, 0x00, 0x55, 0x0a, 0x13, 0xd0, 0x35, 0xcf, 0x58, 0x6d, 0x3b, 0x52, 0x2c, 0x7f, 0xd0, 0x62, 0x51, 0xad, 0xbb, 0x0f, 0x0a, 0xad, 0x3d, 0xd7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1572_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1572 = { .name = "ecdsa_brainpoolp384r1_sha384_1572", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1572_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1572_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1572_sig, .siglen = 96, .result = -1, .comment = "u1 == 1, tcId is 169 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1573 for ECDSA, tcId is 170 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1573_pubkey[] = { 0x60, 0x7c, 0xd9, 0x4c, 0x42, 0xf5, 0xbb, 0xfc, 0xf8, 0x57, 0xa7, 0x08, 0xac, 0x16, 0x3f, 0x0a, 0xfc, 0x0a, 0x65, 0xc8, 0xd8, 0x87, 0x25, 0xf1, 0x8c, 0x4b, 0xf7, 0xeb, 0x7c, 0xf5, 0xd3, 0x4a, 0xca, 0x60, 0x08, 0xa2, 0x7b, 0x4e, 0x5f, 0xd9, 0x47, 0x61, 0x34, 0xed, 0x85, 0xfc, 0xd3, 0x2c, 0x89, 0xf2, 0x48, 0x29, 0x0c, 0x59, 0xb8, 0xfb, 0x96, 0x3e, 0x90, 0xba, 0xb9, 0xb0, 0xb3, 0xe3, 0x13, 0xd3, 0xb8, 0xe0, 0xa6, 0xc8, 0x90, 0x14, 0x55, 0xa2, 0x2b, 0x7b, 0x74, 0xa1, 0x08, 0x15, 0x2c, 0x5b, 0x81, 0x4b, 0xa5, 0x75, 0xde, 0x8d, 0xe0, 0x7c, 0xdb, 0x8d, 0x67, 0xba, 0x2b, 0x50, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1573_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1573 = { .name = "ecdsa_brainpoolp384r1_sha384_1573", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1573_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1573_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1573_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 170 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1574 for ECDSA, tcId is 171 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1574_pubkey[] = { 0x4b, 0x4a, 0xfb, 0xd9, 0x17, 0x46, 0xb1, 0xa4, 0xdf, 0x6d, 0x0d, 0x71, 0x7a, 0xfc, 0x75, 0x28, 0xfa, 0x4a, 0x9d, 0xda, 0x9a, 0x62, 0xaf, 0xee, 0x19, 0xa7, 0x2f, 0xc0, 0x01, 0x9a, 0xa2, 0xea, 0x89, 0xa1, 0x25, 0xbe, 0xa7, 0x67, 0x55, 0x06, 0x23, 0x06, 0x56, 0xca, 0xaf, 0xf5, 0x2c, 0x73, 0x5f, 0x5c, 0x35, 0x75, 0xbf, 0x66, 0x96, 0x37, 0xef, 0xdb, 0x67, 0x24, 0x77, 0x50, 0x0f, 0x1f, 0xe3, 0x7b, 0x45, 0xdc, 0xf8, 0x79, 0x48, 0x7a, 0xd6, 0xca, 0x36, 0xc4, 0x14, 0x73, 0x29, 0xfb, 0x74, 0x17, 0x06, 0xce, 0x9b, 0x92, 0x8c, 0xe4, 0x7b, 0xf6, 0xdc, 0x0f, 0x9e, 0x44, 0x01, 0x7f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1574_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1574 = { .name = "ecdsa_brainpoolp384r1_sha384_1574", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1574_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1574_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1574_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 171 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1575 for ECDSA, tcId is 172 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1575_pubkey[] = { 0x0d, 0x8b, 0x24, 0x6c, 0x62, 0x31, 0x88, 0xb7, 0x45, 0x57, 0x16, 0xac, 0x18, 0x9b, 0x9a, 0xf4, 0x41, 0x67, 0x6a, 0x1c, 0x41, 0xcd, 0x57, 0x57, 0x54, 0xbd, 0x02, 0xae, 0x4d, 0x68, 0x25, 0x30, 0x4b, 0x96, 0x1d, 0xdf, 0x08, 0x26, 0xbb, 0x16, 0x1e, 0x3d, 0x63, 0xe9, 0xbc, 0x71, 0xf1, 0xd4, 0x6e, 0xdb, 0xed, 0xdc, 0x2d, 0x40, 0xda, 0xfd, 0xcc, 0xac, 0x90, 0xae, 0x85, 0xcd, 0x61, 0x6a, 0x0e, 0xa1, 0xe4, 0xa0, 0x8a, 0xe8, 0xfc, 0x33, 0x58, 0xce, 0x7d, 0x51, 0x42, 0xee, 0xe8, 0xf3, 0xbe, 0xbd, 0xc1, 0x45, 0x91, 0xc4, 0xc9, 0xb1, 0x5b, 0xff, 0x12, 0xb8, 0xcf, 0x08, 0x33, 0x4a, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1575_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1575 = { .name = "ecdsa_brainpoolp384r1_sha384_1575", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1575_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1575_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1575_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 172 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1576 for ECDSA, tcId is 173 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1576_pubkey[] = { 0x04, 0xd9, 0xd4, 0xa6, 0x2d, 0x6e, 0xb0, 0x20, 0x73, 0xe7, 0x38, 0xb1, 0xe4, 0x39, 0xce, 0xcd, 0x54, 0x40, 0x03, 0x19, 0x11, 0xf4, 0x51, 0x90, 0xeb, 0x60, 0x62, 0xa3, 0x35, 0x35, 0xfc, 0x52, 0x69, 0xbc, 0xfc, 0x25, 0xd4, 0xaf, 0xc1, 0xda, 0xe0, 0xeb, 0xad, 0x94, 0x8d, 0x77, 0x32, 0xd8, 0x02, 0x9a, 0xf3, 0x7e, 0x89, 0xa3, 0xce, 0xa7, 0xdf, 0x38, 0xb0, 0x20, 0xf6, 0x24, 0x90, 0x6f, 0xca, 0x6d, 0x94, 0x4e, 0x14, 0x86, 0x85, 0x3f, 0xe8, 0xe5, 0xba, 0x9c, 0xfb, 0xa2, 0xd7, 0x4a, 0x85, 0x2e, 0xc5, 0x87, 0xd4, 0x6f, 0xe4, 0x99, 0x17, 0xc3, 0x64, 0x41, 0x8e, 0xf7, 0xec, 0xa5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1576_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1576 = { .name = "ecdsa_brainpoolp384r1_sha384_1576", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1576_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1576_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1576_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 173 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1577 for ECDSA, tcId is 174 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1577_pubkey[] = { 0x1a, 0x4a, 0x55, 0xc9, 0xb0, 0xce, 0x43, 0xd7, 0xed, 0x78, 0xa9, 0x8d, 0x9b, 0xf6, 0x45, 0x9c, 0xcf, 0x34, 0x94, 0x66, 0xfc, 0xcc, 0x45, 0x75, 0x98, 0xfc, 0x15, 0xa1, 0xd6, 0x95, 0x6d, 0x8c, 0xe8, 0x34, 0x8b, 0x23, 0x32, 0xff, 0xfb, 0x3d, 0x51, 0x6b, 0x07, 0x8d, 0x28, 0xd3, 0x29, 0xdd, 0x73, 0xf4, 0x5a, 0x4c, 0xe1, 0xf5, 0xdc, 0x77, 0x2f, 0x3c, 0x32, 0x83, 0xaf, 0x65, 0x64, 0xe6, 0xe4, 0x10, 0xf9, 0xd5, 0x06, 0x4b, 0x64, 0x84, 0x06, 0x59, 0x66, 0x93, 0x66, 0x93, 0xf6, 0x2a, 0xc9, 0x94, 0x0e, 0xb2, 0x89, 0x14, 0xa0, 0x91, 0xd2, 0x96, 0x4c, 0xd8, 0x43, 0xb4, 0x10, 0x28, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1577_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0xa8, 0xe8, 0x17, 0xf4, 0xea, 0x82, 0xb8, 0x31, 0xba, 0x5e, 0x67, 0x18, 0x30, 0xb4, 0x31, 0x28, 0x46, 0xb2, 0x3d, 0xa1, 0x4f, 0xf7, 0xd4, 0x3b, 0xaf, 0x3a, 0x7e, 0xe7, 0xaa, 0x06, 0x1c, 0x86, 0x42, 0x2a, 0xaf, 0x27, 0xff, 0xc5, 0xc6, 0x55, 0x40, 0x68, 0x68, 0xb5, 0xbf, 0x19, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1577 = { .name = "ecdsa_brainpoolp384r1_sha384_1577", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1577_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1577_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1577_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 174 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1578 for ECDSA, tcId is 175 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1578_pubkey[] = { 0x37, 0x3a, 0xc9, 0x8f, 0x08, 0x82, 0x68, 0xa8, 0x6d, 0x13, 0x6d, 0xe4, 0xfa, 0x0c, 0xe2, 0xc4, 0x10, 0x42, 0xcd, 0x33, 0xed, 0x2d, 0x07, 0x25, 0x0f, 0x53, 0xcd, 0x4e, 0xd4, 0x3f, 0xa1, 0xda, 0x42, 0x5d, 0xa5, 0x97, 0xbd, 0x5b, 0x41, 0x3d, 0x56, 0xcf, 0xff, 0x95, 0x42, 0x67, 0x10, 0x4f, 0x06, 0x9e, 0x04, 0x53, 0xbb, 0xbd, 0x79, 0x28, 0x03, 0x16, 0xf8, 0xc1, 0xc1, 0x61, 0xa8, 0x46, 0xaf, 0x37, 0x9a, 0x94, 0x1e, 0xd2, 0x86, 0xe5, 0x93, 0xe7, 0xf2, 0x89, 0xba, 0x4f, 0xff, 0x42, 0x45, 0x8b, 0x27, 0x3a, 0x3b, 0xa4, 0x99, 0x57, 0x4e, 0x13, 0x4e, 0x7f, 0xb4, 0xa7, 0xdc, 0x19, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1578_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x32, 0x6c, 0x08, 0x72, 0xa7, 0x22, 0x4e, 0x7a, 0x10, 0x40, 0x87, 0xac, 0xf4, 0xc4, 0xb4, 0xe3, 0xe5, 0xab, 0xa4, 0xff, 0xe4, 0x62, 0x5f, 0xc3, 0x95, 0x5c, 0xe9, 0x64, 0x7b, 0xf7, 0x1f, 0xb5, 0x96, 0xb8, 0x39, 0x71, 0xad, 0x2b, 0x52, 0x47, 0x3a, 0x28, 0x21, 0x99, 0x1c, 0x80, 0x89, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1578 = { .name = "ecdsa_brainpoolp384r1_sha384_1578", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1578_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1578_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1578_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 175 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1579 for ECDSA, tcId is 176 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1579_pubkey[] = { 0x7e, 0x6a, 0xb4, 0x29, 0xb9, 0xe3, 0x3a, 0x97, 0x4f, 0x6a, 0xb9, 0xa4, 0x9e, 0xb1, 0x52, 0xc4, 0x84, 0x57, 0x5f, 0xad, 0x5d, 0x9b, 0xcd, 0xdc, 0xb8, 0x7e, 0xdc, 0xe1, 0x6e, 0x79, 0x33, 0x3a, 0x93, 0x72, 0x76, 0xf3, 0x6a, 0xec, 0x91, 0x21, 0xde, 0x45, 0x03, 0x84, 0xcb, 0x20, 0xbb, 0x2e, 0x85, 0x95, 0xf6, 0xc2, 0x88, 0x0d, 0x89, 0x19, 0x8e, 0x1b, 0x62, 0x5e, 0x65, 0x05, 0x6d, 0x0a, 0x19, 0xa5, 0x8d, 0x1d, 0x1c, 0x55, 0x1b, 0xcc, 0x5d, 0xd3, 0x9d, 0x28, 0x1d, 0x72, 0x6d, 0xad, 0x41, 0x08, 0x48, 0x8c, 0x8f, 0x94, 0x1a, 0xc9, 0x83, 0x16, 0x9c, 0xac, 0xe3, 0xec, 0xc7, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1579_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x65, 0xcf, 0x0a, 0x5b, 0xce, 0x70, 0xaf, 0x07, 0x8a, 0xf6, 0xd5, 0xa1, 0x45, 0x45, 0xca, 0x61, 0x9e, 0x47, 0xd6, 0xeb, 0x0f, 0xd0, 0x53, 0x1e, 0xcc, 0x74, 0x3a, 0x76, 0x85, 0x53, 0x02, 0x84, 0xa8, 0x32, 0x89, 0xc2, 0xd0, 0x9e, 0x02, 0x43, 0x84, 0xae, 0x5e, 0x77, 0x87, 0x99, 0xe4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1579 = { .name = "ecdsa_brainpoolp384r1_sha384_1579", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1579_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1579_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1579_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 176 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1580 for ECDSA, tcId is 177 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1580_pubkey[] = { 0x1f, 0xbb, 0x37, 0xf7, 0x51, 0x95, 0xc3, 0xf2, 0xde, 0x3a, 0xfc, 0xc8, 0x8a, 0xd7, 0xeb, 0x32, 0x10, 0x81, 0x44, 0x60, 0x89, 0x43, 0xfa, 0xce, 0x3a, 0x89, 0x00, 0x05, 0xff, 0x2a, 0x3e, 0x0b, 0x55, 0x80, 0x79, 0xc5, 0x84, 0x26, 0x20, 0xf4, 0x4a, 0xdc, 0x0c, 0x38, 0xdd, 0x88, 0xaa, 0xc5, 0x51, 0x73, 0x4f, 0x8e, 0xb8, 0x27, 0xdf, 0x92, 0x9d, 0x73, 0x17, 0x71, 0x4a, 0x29, 0xcf, 0x8b, 0xa4, 0x32, 0xca, 0xf6, 0x89, 0x09, 0x4d, 0x00, 0xeb, 0x9d, 0x63, 0xcb, 0xc9, 0x08, 0xba, 0x76, 0xca, 0x5b, 0x1f, 0x93, 0xd2, 0x29, 0x47, 0x7c, 0x96, 0x08, 0x42, 0x94, 0x0f, 0x42, 0x24, 0xd3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1580_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2e, 0x09, 0x9a, 0xdf, 0xe4, 0xd9, 0x12, 0x05, 0x96, 0xe8, 0xa1, 0x52, 0x03, 0x99, 0xb0, 0xe2, 0x49, 0x55, 0x5b, 0x17, 0x1e, 0x0a, 0x71, 0x96, 0x73, 0x07, 0x54, 0x8a, 0x3c, 0x28, 0x75, 0x3f, 0xa4, 0x0b, 0xbc, 0xb0, 0xa8, 0x65, 0x83, 0x69, 0xdc, 0x8c, 0xa0, 0xca, 0xa0, 0x5f, 0xb0, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1580 = { .name = "ecdsa_brainpoolp384r1_sha384_1580", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1580_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1580_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1580_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 177 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1581 for ECDSA, tcId is 178 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1581_pubkey[] = { 0x07, 0xfa, 0x30, 0xc8, 0x37, 0xc8, 0xad, 0x02, 0x93, 0x26, 0xa1, 0xd4, 0x48, 0xbd, 0x27, 0x52, 0x1b, 0x5d, 0x26, 0xaa, 0xd4, 0xd8, 0x24, 0x4b, 0x72, 0x42, 0x49, 0x3d, 0xf7, 0x01, 0x72, 0xe6, 0xdd, 0x1d, 0xaf, 0x5c, 0x7e, 0x07, 0xf4, 0xfa, 0x10, 0x2f, 0x5c, 0x41, 0x5a, 0x4e, 0xc6, 0x1f, 0x09, 0x04, 0x52, 0x7d, 0xf8, 0x77, 0x52, 0x7f, 0x7d, 0x0f, 0x5a, 0x7f, 0x71, 0xb6, 0xd9, 0xc0, 0x3f, 0x2d, 0xe1, 0xdf, 0x88, 0x04, 0x86, 0x8e, 0x73, 0x37, 0xda, 0x35, 0xc9, 0xb1, 0xff, 0xc9, 0xbf, 0x2e, 0x27, 0x9c, 0x3a, 0xf8, 0xa0, 0x78, 0x6e, 0x6f, 0x39, 0x83, 0x2c, 0xc6, 0xed, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1581_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5c, 0x13, 0x35, 0xbf, 0xc9, 0xb2, 0x24, 0x0b, 0x2d, 0xd1, 0x42, 0xa4, 0x07, 0x33, 0x61, 0xc4, 0x92, 0xaa, 0xb6, 0x2e, 0x3c, 0x14, 0xe3, 0x2c, 0xe6, 0x0e, 0xa9, 0x14, 0x78, 0x50, 0xea, 0x7f, 0x48, 0x17, 0x79, 0x61, 0x50, 0xcb, 0x06, 0xd3, 0xb9, 0x19, 0x41, 0x95, 0x40, 0xbf, 0x60, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1581 = { .name = "ecdsa_brainpoolp384r1_sha384_1581", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1581_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1581_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1581_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 178 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1582 for ECDSA, tcId is 179 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1582_pubkey[] = { 0x61, 0x39, 0x7a, 0xe7, 0xfe, 0x8e, 0x7e, 0x89, 0x4b, 0xfa, 0x68, 0x9e, 0x58, 0x13, 0x51, 0x42, 0x93, 0xa0, 0xf1, 0xb9, 0xf1, 0x09, 0x0c, 0x0d, 0x96, 0x96, 0x37, 0x9b, 0x61, 0x28, 0x7a, 0x75, 0x2a, 0x3f, 0x7d, 0x1d, 0x24, 0x80, 0xfe, 0x41, 0x27, 0x49, 0x8d, 0x0e, 0xed, 0xa8, 0x4c, 0x63, 0x0c, 0x2f, 0xad, 0xd3, 0x7e, 0xa3, 0x6b, 0xfe, 0x53, 0x2b, 0x5d, 0x3a, 0x0f, 0x10, 0x1d, 0xdd, 0x3a, 0xc5, 0x94, 0x58, 0x39, 0x96, 0x48, 0xf3, 0xef, 0xaf, 0x58, 0x33, 0xde, 0xc1, 0xc8, 0xc8, 0xec, 0xe0, 0x55, 0x15, 0x89, 0x35, 0x53, 0xef, 0x4d, 0x58, 0x12, 0x0d, 0x37, 0xce, 0x2e, 0xcd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1582_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x25, 0x91, 0x60, 0xb3, 0x21, 0xc3, 0x50, 0xf4, 0xf2, 0x29, 0x9a, 0xa7, 0x7c, 0x72, 0xa0, 0x92, 0x48, 0x92, 0x79, 0x57, 0xb6, 0x41, 0x43, 0x08, 0xbf, 0x8c, 0x7f, 0xb4, 0xf2, 0xdb, 0xba, 0x5c, 0xa7, 0x91, 0x98, 0xf8, 0x0a, 0x15, 0x0e, 0x1c, 0xeb, 0x5a, 0x98, 0x45, 0x14, 0x4e, 0xee, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1582 = { .name = "ecdsa_brainpoolp384r1_sha384_1582", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1582_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1582_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1582_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 179 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1583 for ECDSA, tcId is 180 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1583_pubkey[] = { 0x7f, 0x16, 0x6e, 0xfa, 0x8d, 0x84, 0x16, 0xd9, 0x22, 0xf5, 0x76, 0x73, 0xa2, 0x18, 0x0c, 0xfb, 0xb4, 0x9e, 0x8d, 0x16, 0x0d, 0x60, 0xba, 0x5e, 0xc9, 0x0b, 0xa5, 0x47, 0xf3, 0xec, 0xcd, 0x22, 0xce, 0x6a, 0xfd, 0x99, 0xa0, 0xfb, 0x29, 0x2c, 0xfd, 0x16, 0xb0, 0x69, 0x2b, 0x9c, 0xab, 0x03, 0x41, 0x85, 0x79, 0xe6, 0x7c, 0x87, 0xb3, 0x59, 0x91, 0x2f, 0x6c, 0xb4, 0x15, 0x8b, 0xdd, 0x7e, 0xa1, 0x30, 0xb5, 0x00, 0x77, 0x26, 0xdf, 0x2f, 0xce, 0x31, 0x99, 0x15, 0xde, 0xed, 0xc4, 0xf7, 0xe8, 0x9e, 0xe2, 0x3f, 0x78, 0x6e, 0x25, 0x37, 0x3c, 0x99, 0x37, 0x49, 0x8b, 0xab, 0x81, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1583_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x88, 0x19, 0x64, 0xe1, 0xbb, 0xa9, 0xa2, 0x8c, 0x7a, 0x1d, 0x84, 0x37, 0x9c, 0x65, 0xbb, 0x3d, 0xa7, 0x2f, 0x3c, 0xc8, 0x79, 0xf7, 0xf5, 0x79, 0xd2, 0xf9, 0xb3, 0x4a, 0x57, 0x44, 0x32, 0xd6, 0xc7, 0xd1, 0xc2, 0x29, 0xee, 0x22, 0x7d, 0x4d, 0xdb, 0xdd, 0x9f, 0x15, 0xdf, 0x99, 0x78, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1583 = { .name = "ecdsa_brainpoolp384r1_sha384_1583", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1583_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1583_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1583_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 180 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1584 for ECDSA, tcId is 181 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1584_pubkey[] = { 0x77, 0xc9, 0xc2, 0xe6, 0x58, 0xb0, 0x04, 0xab, 0x68, 0x40, 0xd7, 0xc3, 0x3a, 0x5e, 0x7e, 0xb5, 0xf9, 0x3b, 0xa3, 0xa7, 0xc5, 0xb3, 0x2f, 0x72, 0x75, 0xfd, 0x75, 0xb0, 0x7c, 0x1c, 0x92, 0xf5, 0xae, 0x31, 0x57, 0x6b, 0x9c, 0xbc, 0xa0, 0x46, 0x33, 0x7e, 0x6d, 0x6e, 0xa7, 0x6c, 0x14, 0x5e, 0x67, 0xc5, 0x60, 0x10, 0xdd, 0x97, 0x49, 0xe2, 0xd9, 0x0b, 0x3e, 0xb5, 0x7e, 0xf1, 0xc4, 0xc7, 0x37, 0x41, 0x23, 0x3a, 0x32, 0xa6, 0xa4, 0x35, 0x5b, 0x8c, 0x4e, 0x3a, 0x24, 0xbc, 0xf5, 0x98, 0x66, 0x27, 0xc7, 0x48, 0x07, 0x83, 0x16, 0x1d, 0xb1, 0xd2, 0xa5, 0x33, 0x2b, 0xd7, 0x5f, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1584_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0e, 0x3c, 0x83, 0xbb, 0x59, 0xab, 0xc5, 0x72, 0x20, 0x17, 0x01, 0x52, 0x25, 0x1c, 0xf0, 0x10, 0xb0, 0x08, 0x1f, 0xec, 0xca, 0x2c, 0x95, 0x7c, 0xa7, 0xec, 0x1a, 0x33, 0xda, 0xe3, 0xca, 0x1d, 0x70, 0x94, 0xb1, 0xc0, 0xf7, 0x1b, 0x03, 0xe0, 0x08, 0xbb, 0xe6, 0x46, 0x59, 0x11, 0x9f, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1584 = { .name = "ecdsa_brainpoolp384r1_sha384_1584", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1584_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1584_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1584_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 181 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1585 for ECDSA, tcId is 182 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1585_pubkey[] = { 0x64, 0xd9, 0xa3, 0x17, 0xd5, 0xb4, 0x1a, 0xf3, 0x0f, 0xdf, 0xc7, 0x38, 0x94, 0x60, 0xf3, 0x57, 0xfa, 0x99, 0x78, 0x30, 0x4d, 0x02, 0x6b, 0x31, 0x2a, 0xa5, 0xca, 0x04, 0xa1, 0x9b, 0xdc, 0x0c, 0x56, 0x44, 0x0c, 0xfd, 0x14, 0xa0, 0xb0, 0x60, 0xc3, 0xb8, 0xf4, 0xee, 0x8d, 0x4a, 0x5a, 0x37, 0x77, 0x29, 0x9b, 0x22, 0x80, 0xab, 0x4c, 0x85, 0x7e, 0xd2, 0x53, 0x1e, 0x8d, 0xb0, 0x27, 0xf8, 0xc7, 0x23, 0x80, 0x28, 0xbd, 0x7f, 0x7b, 0xa5, 0x9b, 0xc8, 0x05, 0x47, 0xd4, 0xf1, 0x0d, 0xa6, 0xf2, 0xe6, 0x13, 0x58, 0x05, 0x53, 0x40, 0x6f, 0x04, 0x27, 0xec, 0xbd, 0x7b, 0x75, 0x91, 0x6e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1585_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x1b, 0x97, 0xda, 0x7f, 0x33, 0x4d, 0xaf, 0xd0, 0x1e, 0x2a, 0x01, 0xf8, 0x61, 0x86, 0x32, 0x37, 0x2d, 0x9a, 0xbc, 0xdf, 0x14, 0xeb, 0xaf, 0x72, 0x13, 0xda, 0x37, 0xb1, 0x44, 0x9c, 0x4e, 0x8c, 0x8a, 0x1d, 0xfe, 0x03, 0x38, 0x4f, 0x3a, 0xde, 0x89, 0x07, 0xad, 0x94, 0x42, 0x13, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1585 = { .name = "ecdsa_brainpoolp384r1_sha384_1585", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1585_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1585_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1585_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 182 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1586 for ECDSA, tcId is 183 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1586_pubkey[] = { 0x26, 0x4b, 0xa4, 0x47, 0xf8, 0x0d, 0x72, 0x1b, 0xf1, 0xe7, 0x98, 0x77, 0xf2, 0x7a, 0x23, 0xee, 0x58, 0x56, 0x5e, 0x88, 0xc4, 0x9f, 0x6b, 0x9c, 0xd6, 0x44, 0x8c, 0x02, 0x4b, 0x6f, 0xf5, 0x3a, 0xeb, 0xb2, 0xb0, 0x8c, 0xec, 0x22, 0xeb, 0x2e, 0xb3, 0x8e, 0x30, 0xfd, 0x54, 0x72, 0x7f, 0x01, 0x80, 0x18, 0x87, 0xf9, 0xf9, 0x4d, 0xce, 0x62, 0x5e, 0xd1, 0xd5, 0x63, 0x50, 0xa4, 0xb2, 0x52, 0xe0, 0xdc, 0xfc, 0x09, 0x84, 0x92, 0x8f, 0x25, 0xad, 0x22, 0xa1, 0x31, 0x35, 0xba, 0xf9, 0x96, 0xbf, 0xa8, 0x28, 0x09, 0xfb, 0xe7, 0x9c, 0x09, 0x79, 0x67, 0x0f, 0xdd, 0xc9, 0xfb, 0xa9, 0xe6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1586_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x39, 0x7e, 0x11, 0x32, 0x5b, 0x2e, 0x2e, 0x37, 0x90, 0xde, 0xe4, 0x85, 0x9f, 0xdc, 0xca, 0x85, 0x59, 0x2b, 0xc4, 0x6f, 0xd0, 0xd5, 0x80, 0xab, 0xc5, 0x11, 0x46, 0x02, 0xb6, 0x85, 0x12, 0xf5, 0x49, 0xd9, 0x85, 0x4c, 0x9a, 0xf0, 0xdb, 0x65, 0x81, 0x89, 0xdd, 0x58, 0x3f, 0x7f, 0xc1, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1586 = { .name = "ecdsa_brainpoolp384r1_sha384_1586", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1586_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1586_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1586_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 183 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1587 for ECDSA, tcId is 184 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1587_pubkey[] = { 0x04, 0x91, 0x80, 0x40, 0xa5, 0x8d, 0xc4, 0x77, 0xa7, 0x24, 0x55, 0x61, 0x27, 0x3d, 0xf2, 0xd8, 0xbd, 0x97, 0x7e, 0x5f, 0xd3, 0x9c, 0x40, 0xd3, 0x01, 0x15, 0x36, 0xcb, 0x2b, 0x9c, 0xfe, 0xe8, 0x2e, 0x2a, 0xb5, 0xf5, 0x39, 0xe5, 0x90, 0x8d, 0xcb, 0xf3, 0xff, 0x24, 0xc6, 0x45, 0xdb, 0x4e, 0x59, 0x69, 0xa9, 0xd8, 0xdf, 0x5c, 0xda, 0xaf, 0xe3, 0x49, 0x0c, 0xaa, 0x49, 0x46, 0xac, 0xf5, 0xeb, 0xe3, 0xe9, 0x3a, 0xab, 0x28, 0xa8, 0xd4, 0xa6, 0xf6, 0x1e, 0x2c, 0x8e, 0x5c, 0x02, 0xdc, 0x60, 0x5c, 0x75, 0x80, 0x6d, 0xdd, 0xdd, 0xeb, 0xe2, 0x39, 0x15, 0x63, 0x11, 0x59, 0xc1, 0xf7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1587_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xe0, 0x8a, 0x8a, 0x37, 0x29, 0x0e, 0xbf, 0x51, 0x9f, 0x9f, 0x09, 0x47, 0x58, 0x0e, 0xd8, 0x7b, 0x29, 0xee, 0x22, 0xc2, 0x96, 0x15, 0xa8, 0x18, 0x0e, 0xb1, 0xcd, 0xbb, 0xc5, 0x89, 0x9c, 0x07, 0x28, 0xec, 0x9b, 0x32, 0xa9, 0x67, 0x90, 0x24, 0x8a, 0xb3, 0x02, 0xea, 0xbd, 0x6f, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1587 = { .name = "ecdsa_brainpoolp384r1_sha384_1587", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1587_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1587_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1587_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 184 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1588 for ECDSA, tcId is 185 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1588_pubkey[] = { 0x22, 0xe4, 0x4e, 0xbe, 0x0a, 0x35, 0x1e, 0x4c, 0x91, 0xf7, 0xbd, 0xfc, 0x0c, 0x0c, 0x3c, 0x6e, 0x1c, 0x67, 0x9d, 0xa8, 0x4a, 0x32, 0x53, 0x9c, 0x2d, 0xbb, 0x41, 0xea, 0x31, 0x06, 0x1b, 0x08, 0x25, 0xe3, 0xf3, 0x4d, 0x7b, 0x0a, 0xd5, 0x25, 0x26, 0x1e, 0xb9, 0xe4, 0x57, 0xc4, 0x08, 0x19, 0x60, 0x89, 0xe3, 0x30, 0x34, 0x73, 0x1b, 0xa8, 0xe9, 0xf9, 0x5f, 0x5a, 0x23, 0x4b, 0xf8, 0xd3, 0x53, 0x9c, 0x83, 0x81, 0xf4, 0xd9, 0x55, 0x10, 0xd5, 0xe0, 0xf1, 0x45, 0xfd, 0x48, 0x20, 0x5e, 0x5c, 0x60, 0x21, 0x8c, 0x3f, 0x84, 0xb1, 0x89, 0xc8, 0xe4, 0xfd, 0x56, 0x08, 0xb4, 0x97, 0x78, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1588_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5f, 0x92, 0x93, 0x7a, 0xa5, 0x2d, 0x5d, 0xd1, 0x0f, 0xce, 0xfb, 0x95, 0xa2, 0xd5, 0x7b, 0x61, 0x7d, 0x6d, 0x8b, 0x04, 0xe8, 0xdb, 0x5b, 0x3b, 0x5a, 0x39, 0xab, 0xe8, 0x93, 0xfd, 0xa2, 0xae, 0xb2, 0xf9, 0x78, 0x10, 0x8c, 0x55, 0x8a, 0xab, 0xba, 0xd8, 0x29, 0xce, 0x02, 0xc2, 0x77, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1588 = { .name = "ecdsa_brainpoolp384r1_sha384_1588", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1588_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1588_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1588_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 185 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1589 for ECDSA, tcId is 186 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1589_pubkey[] = { 0x66, 0xed, 0x49, 0x77, 0x9e, 0xd6, 0xa7, 0xb1, 0x0c, 0x81, 0x2b, 0xc7, 0xee, 0x7b, 0x47, 0xa5, 0xd1, 0x1c, 0x5e, 0xa5, 0x02, 0x77, 0x27, 0x3d, 0xa1, 0x40, 0xbc, 0x1b, 0x0c, 0xf5, 0xb8, 0x21, 0x0a, 0x6a, 0x73, 0x7f, 0x7e, 0x9d, 0x92, 0xee, 0xe6, 0xd8, 0x45, 0x13, 0x7e, 0x5c, 0x44, 0xa2, 0x8a, 0xcc, 0xb8, 0xf6, 0x37, 0x38, 0x5c, 0xf6, 0x51, 0x9b, 0xfa, 0xe3, 0xed, 0x3a, 0xe4, 0xd0, 0xac, 0xaa, 0x19, 0xa2, 0x60, 0xa0, 0x1b, 0xd8, 0xcb, 0x53, 0xad, 0x24, 0xda, 0xca, 0xb1, 0x95, 0x4b, 0x20, 0xd1, 0x47, 0x2c, 0xf3, 0x97, 0x5e, 0x87, 0xcc, 0x73, 0x3f, 0x32, 0x9a, 0xb6, 0xbd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1589_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x59, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1589 = { .name = "ecdsa_brainpoolp384r1_sha384_1589", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1589_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1589_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1589_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 186 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1590 for ECDSA, tcId is 187 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1590_pubkey[] = { 0x30, 0x24, 0x91, 0x20, 0x41, 0xbc, 0x98, 0x9a, 0x93, 0x6f, 0xb4, 0xdc, 0xdd, 0x17, 0x8b, 0x15, 0xe0, 0x3a, 0x0a, 0xa9, 0x4a, 0xba, 0xfb, 0x44, 0x65, 0xb4, 0xa8, 0x9d, 0x44, 0x16, 0xb7, 0xa8, 0xb0, 0x29, 0xd4, 0x7c, 0x17, 0xe6, 0x9a, 0x25, 0x96, 0x2f, 0xf3, 0xae, 0xfe, 0x86, 0x2d, 0xcb, 0x24, 0x9e, 0xe9, 0x25, 0x2b, 0x57, 0x13, 0xe7, 0x47, 0xa2, 0xda, 0x8a, 0xac, 0x2b, 0x96, 0x1e, 0xe2, 0xb6, 0xac, 0xa1, 0x57, 0xa4, 0x48, 0x88, 0x74, 0x86, 0x48, 0xfb, 0xcd, 0xc5, 0x66, 0x1c, 0xd4, 0xa1, 0x69, 0xbb, 0x92, 0xc9, 0xc1, 0xce, 0x50, 0xa7, 0x9a, 0x63, 0x73, 0x50, 0x02, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1590_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x14, 0x49, 0x90, 0x1c, 0xe4, 0xb0, 0x0f, 0x0e, 0x3a, 0x5f, 0xf8, 0x4c, 0xff, 0x8c, 0x13, 0x48, 0x54, 0xb8, 0x08, 0xe5, 0x04, 0xd1, 0xb8, 0xf0, 0x27, 0xac, 0xe9, 0x59, 0x12, 0x34, 0xe3, 0xf6, 0x2c, 0xe7, 0x0c, 0x35, 0xa8, 0xaa, 0x8e, 0x60, 0xca, 0xfe, 0x1e, 0x0d, 0xf3, 0xed, 0x80, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1590 = { .name = "ecdsa_brainpoolp384r1_sha384_1590", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1590_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1590_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1590_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 187 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1591 for ECDSA, tcId is 188 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1591_pubkey[] = { 0x6c, 0x93, 0x93, 0xb0, 0x0e, 0x9a, 0x62, 0xce, 0x0b, 0x83, 0x67, 0x4c, 0xdc, 0xca, 0x59, 0xb1, 0x8d, 0x5b, 0x34, 0x24, 0x63, 0x48, 0xe3, 0x7c, 0x1d, 0x78, 0x89, 0x8a, 0x52, 0x2d, 0x81, 0x3c, 0x49, 0xd0, 0x8e, 0xfc, 0x5f, 0x3f, 0x7e, 0xf3, 0x3f, 0x3d, 0xc9, 0xdd, 0x1b, 0xc2, 0xe5, 0xc2, 0x00, 0x0b, 0x94, 0x10, 0xce, 0x04, 0xa6, 0x4c, 0xd0, 0x95, 0xae, 0x11, 0x94, 0xbc, 0x1f, 0x51, 0x4c, 0x70, 0x09, 0xa4, 0xe0, 0x68, 0x71, 0xb5, 0x57, 0x15, 0x4c, 0xf4, 0x92, 0xe7, 0xc5, 0x77, 0x49, 0x48, 0x7e, 0xcf, 0xcd, 0x04, 0xcb, 0x31, 0x42, 0x6a, 0xb7, 0x85, 0xff, 0xa9, 0x5e, 0x2f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1591_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x89, 0xae, 0x6f, 0x8e, 0x21, 0x5b, 0xcf, 0x35, 0xc7, 0xe2, 0xaf, 0xed, 0x1a, 0x6b, 0x98, 0x55, 0x17, 0x16, 0x87, 0xd9, 0xed, 0xbe, 0xa8, 0xaf, 0x5b, 0xf8, 0xe9, 0xdd, 0xc6, 0x67, 0xaa, 0xc4, 0xe1, 0x66, 0xf0, 0x50, 0x97, 0x38, 0x5f, 0xa9, 0xea, 0x3a, 0x62, 0x45, 0xfc, 0x07, 0xb4, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1591 = { .name = "ecdsa_brainpoolp384r1_sha384_1591", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1591_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1591_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1591_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 188 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1592 for ECDSA, tcId is 189 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1592_pubkey[] = { 0x2c, 0x58, 0x27, 0x7a, 0xaa, 0x61, 0xc4, 0x00, 0xd7, 0x03, 0x61, 0x83, 0xaf, 0x49, 0xc9, 0x9a, 0x97, 0xfe, 0xa5, 0xa8, 0xd5, 0xf8, 0x60, 0x8c, 0x4c, 0x6a, 0xc7, 0xa2, 0x82, 0x75, 0x7e, 0x4d, 0xc4, 0xb6, 0xf9, 0x2d, 0x82, 0xa1, 0x02, 0x72, 0xf2, 0xa1, 0x96, 0x96, 0xa4, 0x8f, 0xa7, 0x9f, 0x5a, 0x8a, 0xdb, 0x77, 0x07, 0x40, 0x66, 0x9d, 0x60, 0x10, 0xe5, 0x5f, 0x66, 0x25, 0xb1, 0x41, 0xbe, 0x46, 0x9f, 0xe1, 0x77, 0x9f, 0x4a, 0xdf, 0xe6, 0x4e, 0xab, 0x2e, 0x4a, 0x9a, 0xc5, 0xbf, 0x1c, 0x25, 0xb3, 0xde, 0x0b, 0x74, 0xb8, 0xf9, 0x64, 0x4f, 0xc2, 0x16, 0x01, 0x0d, 0x96, 0x59, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1592_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xc1, 0x62, 0x56, 0xa0, 0x91, 0x4c, 0xe2, 0x66, 0x1a, 0x54, 0x68, 0x8a, 0xf4, 0xb2, 0x54, 0x6b, 0x1b, 0x59, 0xb0, 0x43, 0x66, 0x7d, 0xa6, 0xab, 0xb5, 0xb1, 0xa1, 0xe0, 0xe2, 0xe6, 0xab, 0x86, 0x2f, 0xe8, 0xbb, 0x74, 0x9f, 0x72, 0x51, 0x57, 0x2b, 0xc1, 0x60, 0x56, 0x75, 0x30, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1592 = { .name = "ecdsa_brainpoolp384r1_sha384_1592", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1592_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1592_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1592_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 189 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1593 for ECDSA, tcId is 190 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1593_pubkey[] = { 0x6e, 0x5f, 0x82, 0x7e, 0x1a, 0xa2, 0x25, 0xc4, 0xb9, 0x5d, 0xb5, 0x26, 0x55, 0xf6, 0x7d, 0x65, 0x4b, 0xdc, 0x69, 0xa4, 0xbf, 0x8f, 0x49, 0xc1, 0x9d, 0x1e, 0x65, 0xdc, 0xf1, 0x2c, 0xa5, 0x11, 0x50, 0x5a, 0xa1, 0x72, 0x6c, 0xa2, 0xf5, 0xcd, 0xf8, 0xab, 0x37, 0x6f, 0x94, 0xa0, 0xc5, 0xbd, 0x5d, 0xae, 0xc6, 0xf3, 0x5f, 0x1d, 0xfb, 0xc6, 0x8f, 0xba, 0x02, 0x4c, 0xc8, 0xc5, 0xf7, 0x9c, 0xe9, 0xba, 0xa8, 0x6a, 0xdf, 0xd8, 0xd2, 0xba, 0x53, 0xa7, 0x98, 0xcd, 0xcc, 0x90, 0x25, 0xeb, 0x97, 0x97, 0xd3, 0xbe, 0x20, 0x7b, 0xc6, 0x94, 0xab, 0xb3, 0x38, 0xe4, 0x37, 0x78, 0xff, 0xdd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1593_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0xc1, 0x55, 0x6c, 0x5e, 0xef, 0x31, 0x1a, 0x4f, 0x3b, 0xa4, 0x63, 0x16, 0xad, 0xf7, 0x37, 0x32, 0xd6, 0xed, 0x47, 0xb1, 0xba, 0x2e, 0xcd, 0x17, 0x8f, 0xf8, 0x9b, 0xbc, 0x5d, 0xdd, 0x6c, 0x64, 0x19, 0xf6, 0x2e, 0x04, 0x5e, 0xa2, 0xd3, 0x5c, 0x33, 0xa2, 0x50, 0xdc, 0x2f, 0xb9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1593 = { .name = "ecdsa_brainpoolp384r1_sha384_1593", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1593_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1593_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1593_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 190 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1594 for ECDSA, tcId is 191 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1594_pubkey[] = { 0x7f, 0xe8, 0x52, 0xa7, 0x61, 0x2a, 0x67, 0x3d, 0xf3, 0x51, 0xf0, 0x5a, 0xfe, 0xaf, 0xcb, 0xb1, 0x6c, 0xe4, 0xca, 0xdf, 0x85, 0x68, 0x1b, 0x2b, 0x5f, 0x46, 0xcc, 0x31, 0xef, 0x33, 0xd6, 0xb6, 0x95, 0x37, 0x8e, 0x73, 0x25, 0xe9, 0xcb, 0x31, 0x85, 0xd7, 0x13, 0x7b, 0x2b, 0x17, 0x00, 0x46, 0x5c, 0xbd, 0x4c, 0x81, 0x00, 0x76, 0xd1, 0x35, 0x31, 0x68, 0x87, 0xe9, 0x4b, 0x14, 0xb4, 0xb0, 0x10, 0x8d, 0xb1, 0xc9, 0x44, 0x79, 0x4c, 0x39, 0x89, 0x38, 0xd4, 0x21, 0x76, 0xc3, 0x25, 0x75, 0xb6, 0x42, 0x8b, 0x3e, 0x37, 0xb6, 0x02, 0x21, 0x1c, 0x57, 0x4a, 0xca, 0xfe, 0xf0, 0x91, 0x1e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1594_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3c, 0xc9, 0x8c, 0x56, 0x1a, 0xa5, 0xf5, 0x0c, 0x8f, 0x19, 0xd9, 0x47, 0xdc, 0x75, 0xac, 0x8f, 0x50, 0x7e, 0x69, 0x85, 0x76, 0x20, 0x06, 0xe7, 0x10, 0x09, 0x82, 0xca, 0xcc, 0xb7, 0x95, 0x30, 0xf8, 0xf9, 0x35, 0xac, 0x9d, 0x3d, 0x82, 0x96, 0x7c, 0xdf, 0x12, 0x9e, 0xcf, 0x5b, 0x0c, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1594 = { .name = "ecdsa_brainpoolp384r1_sha384_1594", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1594_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1594_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1594_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 191 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1595 for ECDSA, tcId is 192 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1595_pubkey[] = { 0x0a, 0x49, 0xdc, 0x35, 0x9e, 0xd4, 0xfe, 0xf6, 0x83, 0xe4, 0x62, 0xdf, 0xe6, 0x85, 0x44, 0x2c, 0xea, 0x77, 0xb7, 0x33, 0xfd, 0x95, 0x63, 0x32, 0x16, 0x79, 0x4d, 0x9a, 0x61, 0xf7, 0xe1, 0x02, 0x2d, 0x94, 0x2a, 0x36, 0xe7, 0x81, 0xa4, 0x84, 0xa2, 0xb4, 0x79, 0xa6, 0x43, 0x46, 0x9a, 0xf4, 0x51, 0x2e, 0xbd, 0x09, 0x66, 0xb6, 0x8b, 0xfe, 0xcf, 0x7a, 0x47, 0x02, 0x1b, 0xcd, 0x9e, 0x6a, 0xa2, 0x70, 0x3d, 0xcc, 0x55, 0x6a, 0x9a, 0x44, 0x3d, 0x16, 0x19, 0x5a, 0xa1, 0x45, 0x73, 0x8f, 0xa3, 0x6a, 0x4d, 0xff, 0x3d, 0x09, 0x48, 0x1f, 0x4a, 0x86, 0x55, 0x0a, 0x8d, 0x1f, 0x35, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1595_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0x20, 0x95, 0x53, 0x0f, 0x36, 0x14, 0x4e, 0x00, 0x90, 0x19, 0xee, 0xe1, 0x02, 0xb2, 0x86, 0x7d, 0x83, 0xc9, 0xeb, 0x4f, 0x28, 0xbc, 0xb3, 0x1b, 0x38, 0x3e, 0x00, 0xc8, 0xc3, 0x74, 0x6b, 0x20, 0xcc, 0x90, 0xe8, 0xef, 0xc8, 0x13, 0xae, 0xfb, 0x5b, 0x6a, 0x49, 0x65, 0x20, 0x4c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1595 = { .name = "ecdsa_brainpoolp384r1_sha384_1595", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1595_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1595_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1595_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 192 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1596 for ECDSA, tcId is 193 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1596_pubkey[] = { 0x27, 0x67, 0x15, 0x08, 0x74, 0x95, 0xd5, 0x2c, 0x41, 0x60, 0xd1, 0x54, 0x46, 0xeb, 0xb4, 0xd7, 0x58, 0x29, 0x1b, 0xf5, 0xbc, 0x9c, 0xa8, 0x7b, 0x56, 0xc3, 0xf0, 0x0a, 0xdc, 0x41, 0xfa, 0x45, 0x2d, 0x66, 0x68, 0x41, 0x52, 0xd3, 0xe1, 0x9d, 0x2f, 0xc3, 0xad, 0x5d, 0x28, 0x97, 0x87, 0xad, 0x36, 0x73, 0x85, 0xd3, 0xc3, 0xf5, 0xc3, 0xc2, 0xc6, 0xc3, 0x16, 0x6a, 0xdc, 0xfa, 0xfc, 0x3d, 0x20, 0x44, 0x53, 0xca, 0xb8, 0x79, 0x7d, 0x56, 0xe9, 0x55, 0xfb, 0xf1, 0xcf, 0x42, 0x17, 0x63, 0xa6, 0x65, 0x3e, 0x40, 0xef, 0xd9, 0x03, 0x5d, 0xf8, 0x12, 0x81, 0x35, 0x54, 0x6b, 0x62, 0x61, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1596_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0x4a, 0xfc, 0x6a, 0x72, 0x08, 0x0d, 0x17, 0x28, 0xf6, 0xcc, 0x9f, 0xd0, 0x23, 0xe9, 0xd2, 0x37, 0x30, 0x23, 0x37, 0x7f, 0x02, 0x59, 0x9b, 0x6e, 0xa9, 0xfb, 0x29, 0x23, 0xdd, 0x74, 0x03, 0xfe, 0x2f, 0xd7, 0x39, 0x99, 0xf6, 0x53, 0x16, 0xb5, 0x3f, 0x91, 0x0b, 0xda, 0x4f, 0x6f, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1596 = { .name = "ecdsa_brainpoolp384r1_sha384_1596", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1596_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1596_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1596_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 193 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1597 for ECDSA, tcId is 194 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1597_pubkey[] = { 0x59, 0x43, 0xdb, 0xd6, 0x6c, 0x79, 0xfc, 0xb8, 0x82, 0x93, 0x6e, 0xcc, 0xdd, 0x6d, 0x86, 0x0c, 0x42, 0xe2, 0x07, 0x27, 0xa2, 0xcd, 0xb2, 0x91, 0x65, 0xc8, 0x42, 0x6c, 0x9d, 0x19, 0x29, 0x90, 0xb7, 0x1d, 0x9a, 0x3c, 0x7f, 0x24, 0x0e, 0x46, 0xac, 0xab, 0x27, 0x41, 0xb7, 0xee, 0x9c, 0x7a, 0x46, 0x1e, 0x5a, 0xb1, 0xdb, 0x3e, 0xb9, 0xb5, 0x1b, 0x32, 0x38, 0xd3, 0xad, 0xa3, 0x35, 0x67, 0xd2, 0x51, 0xd8, 0xfd, 0x0f, 0xba, 0xf5, 0x9a, 0xa1, 0xcf, 0xb4, 0x0f, 0xe7, 0xb2, 0x2e, 0x02, 0x77, 0xf1, 0x66, 0xa3, 0x2e, 0xdb, 0x81, 0xab, 0x6a, 0x85, 0x80, 0xf9, 0xb1, 0xfb, 0x3e, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1597_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x46, 0xf0, 0x9c, 0x47, 0x41, 0xc1, 0xaf, 0xe7, 0x4e, 0x32, 0xf6, 0xff, 0x14, 0xda, 0xaf, 0x90, 0xf4, 0x48, 0x6c, 0x33, 0xf5, 0xd0, 0xe9, 0x78, 0xf9, 0xaf, 0x24, 0xf5, 0x75, 0x19, 0x88, 0xe7, 0x2b, 0x37, 0x4c, 0x5f, 0xae, 0xff, 0xde, 0xc3, 0x09, 0x33, 0x04, 0x01, 0x96, 0x5f, 0x7d, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1597 = { .name = "ecdsa_brainpoolp384r1_sha384_1597", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1597_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1597_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1597_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 194 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1598 for ECDSA, tcId is 195 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1598_pubkey[] = { 0x52, 0x85, 0xd7, 0x29, 0x25, 0xc8, 0x7c, 0x75, 0xb6, 0xad, 0x99, 0x55, 0x06, 0x41, 0x82, 0xbf, 0x2d, 0xeb, 0xcb, 0x25, 0xc8, 0x8d, 0x06, 0x06, 0xf6, 0x67, 0x28, 0x63, 0xde, 0x41, 0x3e, 0x54, 0x96, 0x88, 0xa4, 0xfc, 0xfb, 0xe6, 0x68, 0x9b, 0xb2, 0x3d, 0xba, 0x2b, 0x75, 0x7b, 0xcd, 0xa6, 0x4e, 0xf6, 0xb0, 0x17, 0x66, 0xc9, 0x5b, 0x66, 0xff, 0x10, 0x49, 0x6d, 0x5d, 0xee, 0xba, 0xc4, 0xb4, 0xbf, 0x8c, 0x3b, 0xb4, 0x23, 0x2c, 0x01, 0x9f, 0x80, 0xb6, 0x9d, 0x8a, 0xb0, 0x21, 0x4c, 0xea, 0xf5, 0x81, 0x30, 0x27, 0xec, 0xec, 0x13, 0x3a, 0x5a, 0x5b, 0x97, 0x19, 0x48, 0x82, 0x2e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1598_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x19, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1598 = { .name = "ecdsa_brainpoolp384r1_sha384_1598", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1598_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1598_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1598_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 195 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1599 for ECDSA, tcId is 196 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1599_pubkey[] = { 0x07, 0x86, 0xaf, 0xb0, 0x3d, 0xd7, 0x91, 0xdb, 0xfc, 0x37, 0x1a, 0xb5, 0x1f, 0xfa, 0x28, 0x8b, 0x7c, 0xed, 0xd9, 0x0d, 0x6a, 0x35, 0xa3, 0xc3, 0xa9, 0x25, 0x66, 0xf8, 0x95, 0xf3, 0x8c, 0xb1, 0x85, 0x36, 0x13, 0x7e, 0x01, 0x0f, 0x1c, 0xfb, 0xa2, 0xfb, 0xed, 0x70, 0x56, 0x8d, 0x77, 0xb8, 0x4e, 0xec, 0x84, 0x0c, 0xca, 0x8b, 0x6f, 0x3f, 0x61, 0x23, 0x04, 0xb6, 0x02, 0xff, 0xad, 0x8d, 0xcb, 0xae, 0x17, 0x86, 0xb2, 0xc2, 0x21, 0x6e, 0x9a, 0x1e, 0x59, 0xa6, 0xb6, 0x96, 0x28, 0xb5, 0x2a, 0x40, 0x8b, 0x6a, 0x08, 0x3d, 0x72, 0x7f, 0x3c, 0xcd, 0x0e, 0x70, 0x6f, 0x9a, 0xee, 0xf8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1599_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x33, 0x26, 0x14, 0x57, 0x17, 0x7a, 0xf3, 0x70, 0x0a, 0x3e, 0x4a, 0x54, 0x35, 0xee, 0xd6, 0x94, 0xb8, 0xca, 0x4b, 0x5b, 0xf3, 0x8d, 0x8f, 0x22, 0x14, 0xb9, 0x9e, 0xf3, 0x1d, 0x58, 0x19, 0x1a, 0x8a, 0x27, 0x24, 0x74, 0xf2, 0x55, 0x2c, 0xb5, 0x7d, 0x05, 0x76, 0xac, 0x9b, 0x58, 0x43, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1599 = { .name = "ecdsa_brainpoolp384r1_sha384_1599", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1599_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1599_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1599_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 196 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1600 for ECDSA, tcId is 197 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1600_pubkey[] = { 0x46, 0x69, 0x0d, 0xb4, 0x03, 0x90, 0x42, 0x28, 0xe4, 0xf7, 0x36, 0xb1, 0x34, 0x47, 0x91, 0x59, 0x66, 0x28, 0xe8, 0x56, 0x69, 0xd4, 0xdd, 0x01, 0x37, 0x4b, 0x21, 0x27, 0x42, 0x80, 0xb4, 0x21, 0xe4, 0x2f, 0x5b, 0xa3, 0xf3, 0xf2, 0xfa, 0xda, 0xd2, 0x7d, 0x44, 0x69, 0xbe, 0x7d, 0x9b, 0xdb, 0x7e, 0x88, 0x3b, 0x43, 0xc2, 0x72, 0x17, 0xf6, 0x06, 0xe0, 0xa5, 0xba, 0x6c, 0x9d, 0xf7, 0x81, 0xc1, 0x45, 0x77, 0x6c, 0x0e, 0x5a, 0x89, 0x93, 0xf0, 0xed, 0x65, 0xc6, 0xde, 0xd6, 0x5a, 0x43, 0xbd, 0xdd, 0x0f, 0xe7, 0x61, 0x14, 0x85, 0xe8, 0xe8, 0xd9, 0xe7, 0xde, 0xcd, 0xf2, 0xd8, 0xb5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1600_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x4c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1600 = { .name = "ecdsa_brainpoolp384r1_sha384_1600", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1600_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1600_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1600_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 197 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1601 for ECDSA, tcId is 198 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1601_pubkey[] = { 0x8b, 0xe6, 0x92, 0x8a, 0xca, 0xd4, 0x4c, 0x95, 0x71, 0xb5, 0xc4, 0x01, 0x5f, 0xa3, 0xff, 0xae, 0x5e, 0x63, 0x9e, 0x41, 0x30, 0xa1, 0xa6, 0x6b, 0x47, 0x3e, 0x5d, 0xfd, 0xfe, 0x93, 0xb6, 0x8a, 0x8d, 0xe8, 0x95, 0x83, 0x66, 0x6d, 0x4d, 0x69, 0x9e, 0x88, 0x85, 0x46, 0x9f, 0x9b, 0x1a, 0x4d, 0x83, 0xb1, 0xd5, 0x31, 0x23, 0x10, 0xe4, 0x45, 0xae, 0x57, 0xc8, 0x5a, 0xb1, 0xa3, 0xdf, 0x8d, 0xbb, 0xb7, 0x06, 0xa5, 0x98, 0xfb, 0xc0, 0x07, 0xef, 0xb6, 0x02, 0xa1, 0x4a, 0x59, 0x52, 0xfd, 0x7e, 0x7d, 0xf0, 0x46, 0x4d, 0x53, 0x3e, 0x06, 0x2e, 0xa2, 0x11, 0x28, 0x5c, 0x2f, 0x5c, 0x27, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1601_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8b, 0x33, 0xc7, 0x08, 0x62, 0x4a, 0x1e, 0x2e, 0xeb, 0xa0, 0x0f, 0xb5, 0xb5, 0xa8, 0xed, 0x1a, 0x16, 0x22, 0xfc, 0x71, 0xed, 0x89, 0x7f, 0xb1, 0x3d, 0x87, 0xac, 0x25, 0x39, 0x35, 0xe8, 0x36, 0x58, 0x50, 0xd3, 0x80, 0x01, 0x5c, 0x11, 0x5d, 0x12, 0xe1, 0x4a, 0x24, 0x72, 0x86, 0x0d, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1601 = { .name = "ecdsa_brainpoolp384r1_sha384_1601", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1601_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1601_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1601_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 198 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1602 for ECDSA, tcId is 199 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1602_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x6a, 0x0f, 0x0e, 0xd8, 0xd7, 0xf2, 0x8f, 0x91, 0x6a, 0x4e, 0x72, 0x7e, 0x55, 0xbf, 0x08, 0x18, 0xdc, 0xc8, 0x4e, 0xd1, 0x13, 0x2b, 0xd7, 0xda, 0x9f, 0x98, 0xff, 0x95, 0xfb, 0x2a, 0xec, 0x23, 0x8f, 0x4d, 0xf9, 0x18, 0x5b, 0x09, 0x82, 0xa6, 0x68, 0x2c, 0x06, 0xc8, 0x5e, 0x6a, 0x89, 0x5e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1602_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1602 = { .name = "ecdsa_brainpoolp384r1_sha384_1602", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1602_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1602_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1602_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 199 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1603 for ECDSA, tcId is 200 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1603_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x22, 0xaa, 0x0f, 0xa9, 0xcb, 0x45, 0xdd, 0x96, 0xa5, 0x0e, 0xfc, 0xff, 0xfb, 0x27, 0x39, 0xc6, 0x38, 0x67, 0x22, 0x38, 0xda, 0x28, 0x7e, 0xd9, 0x73, 0x18, 0xda, 0x83, 0x84, 0x8c, 0x25, 0x00, 0x1d, 0x85, 0xae, 0x11, 0x35, 0x13, 0x97, 0xcb, 0x1f, 0x1a, 0xf9, 0x4a, 0xd2, 0x9d, 0x62, 0xf5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1603_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1603 = { .name = "ecdsa_brainpoolp384r1_sha384_1603", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1603_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1603_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1603_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 200 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1604 for ECDSA, tcId is 201 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1604_pubkey[] = { 0x89, 0xdd, 0x73, 0x8e, 0xfc, 0xb0, 0xf7, 0x98, 0x11, 0xdf, 0x6b, 0xec, 0x87, 0x34, 0x85, 0x16, 0x94, 0x50, 0xad, 0xa1, 0x8e, 0x60, 0x27, 0x21, 0xe6, 0x17, 0x68, 0xbe, 0x0d, 0x81, 0xe5, 0xd4, 0x13, 0x81, 0xf2, 0x46, 0x68, 0x27, 0x6f, 0x32, 0xbf, 0xe3, 0x1f, 0xf1, 0xc1, 0x6b, 0xcb, 0x6b, 0x1f, 0x7a, 0x4d, 0x28, 0x23, 0xbc, 0xd7, 0x3f, 0x23, 0x6d, 0x90, 0xb6, 0xea, 0x61, 0xd8, 0x92, 0x02, 0x61, 0x90, 0xe1, 0x43, 0x17, 0xb5, 0xd1, 0x10, 0x52, 0x6e, 0x9e, 0x26, 0x75, 0xf0, 0x3d, 0x5e, 0xf3, 0xfc, 0xe8, 0x7b, 0x58, 0x27, 0xa3, 0x7e, 0x0c, 0xf1, 0x9b, 0x4d, 0x39, 0x88, 0xc0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1604_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1604 = { .name = "ecdsa_brainpoolp384r1_sha384_1604", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1604_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1604_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1604_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 201 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1605 for ECDSA, tcId is 202 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1605_pubkey[] = { 0x79, 0x55, 0x92, 0xa6, 0x73, 0xe8, 0x2d, 0xff, 0x3d, 0x77, 0x45, 0x01, 0x94, 0xe5, 0x30, 0x8d, 0x64, 0xf4, 0x5f, 0x11, 0xf7, 0x59, 0xf3, 0x4f, 0x7c, 0x7b, 0x5b, 0x7c, 0xc6, 0xad, 0x73, 0xf9, 0xbf, 0xf8, 0xf6, 0x63, 0x3c, 0xc2, 0x03, 0x78, 0xcf, 0xf2, 0xe5, 0x3f, 0xb7, 0xa5, 0x30, 0x30, 0x85, 0xb5, 0xcd, 0x46, 0x21, 0x66, 0x5a, 0xac, 0x84, 0x35, 0xd8, 0xce, 0x85, 0xb2, 0x6d, 0x44, 0x45, 0x08, 0xb7, 0x7b, 0x28, 0x2e, 0x91, 0xcd, 0x53, 0x15, 0xc7, 0x01, 0xd2, 0xe5, 0xb6, 0x6b, 0xa4, 0xc0, 0x0b, 0xf7, 0xe1, 0xeb, 0x08, 0x59, 0xa1, 0x3c, 0xc3, 0x51, 0xd0, 0x00, 0x41, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1605_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1605 = { .name = "ecdsa_brainpoolp384r1_sha384_1605", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1605_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1605_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1605_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 202 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1606 for ECDSA, tcId is 203 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1606_pubkey[] = { 0x39, 0xd9, 0x4f, 0xf8, 0x75, 0x7d, 0xcd, 0xb6, 0x74, 0x80, 0xcb, 0xc4, 0x8e, 0x96, 0x79, 0x42, 0x3e, 0x57, 0xde, 0x5a, 0x23, 0x23, 0x2d, 0xf0, 0xdb, 0x1e, 0x0f, 0xf7, 0xe9, 0x08, 0x61, 0x44, 0x01, 0xe6, 0xcd, 0x8d, 0x61, 0x50, 0x08, 0xea, 0x8b, 0xe5, 0x12, 0x99, 0xd9, 0xe2, 0x2d, 0xe9, 0x43, 0x81, 0x26, 0xd7, 0x0d, 0x14, 0xe7, 0x5c, 0xe4, 0x1e, 0xa2, 0xf4, 0x09, 0xbe, 0x88, 0xe2, 0x80, 0x6f, 0x7f, 0x73, 0xbd, 0x51, 0x37, 0x31, 0x69, 0x6b, 0xc5, 0x9e, 0x7a, 0x2c, 0x1d, 0x44, 0xd5, 0x68, 0x3d, 0x3b, 0xdc, 0x92, 0xba, 0xba, 0x1c, 0x2a, 0xda, 0x58, 0x80, 0x9f, 0x8b, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1606_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1606 = { .name = "ecdsa_brainpoolp384r1_sha384_1606", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1606_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1606_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1606_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 203 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1607 for ECDSA, tcId is 204 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1607_pubkey[] = { 0x20, 0xb1, 0xfc, 0x8e, 0x24, 0x80, 0xa9, 0x73, 0xe0, 0x97, 0x33, 0x73, 0x43, 0x49, 0x0b, 0x12, 0xae, 0x40, 0x65, 0x2e, 0x41, 0x80, 0xdd, 0x4a, 0xe5, 0x6d, 0xf5, 0x21, 0xda, 0xa9, 0xe3, 0x91, 0x77, 0x7c, 0x0d, 0x46, 0x6f, 0x01, 0x8a, 0xf5, 0x55, 0x19, 0x03, 0x8d, 0xea, 0xd3, 0x55, 0x01, 0x72, 0x32, 0x88, 0x2b, 0xca, 0x3c, 0xcd, 0x6b, 0x37, 0x55, 0x91, 0xf5, 0xb5, 0x09, 0x65, 0x38, 0xca, 0x57, 0x78, 0x35, 0x53, 0x07, 0xe6, 0x03, 0x14, 0x8f, 0xde, 0x31, 0xf5, 0xac, 0xff, 0xeb, 0x4c, 0x68, 0x63, 0x54, 0x1a, 0xd2, 0x33, 0xde, 0x3f, 0x28, 0x1e, 0xa0, 0xd2, 0x35, 0xb6, 0xf3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1607_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1607 = { .name = "ecdsa_brainpoolp384r1_sha384_1607", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1607_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1607_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1607_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 204 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1608 for ECDSA, tcId is 205 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1608_pubkey[] = { 0x4a, 0x39, 0x1d, 0x79, 0xcf, 0xa8, 0x2b, 0x94, 0x31, 0x23, 0xd6, 0x9e, 0xe2, 0xd1, 0xbc, 0x0e, 0x0b, 0x7e, 0x1e, 0x6f, 0x93, 0xc6, 0x91, 0x23, 0xbf, 0xce, 0x0b, 0xd4, 0xf3, 0x1a, 0x5e, 0x34, 0x34, 0x06, 0x2d, 0xd0, 0xe1, 0xaa, 0x8b, 0x88, 0x6c, 0xeb, 0xa3, 0x62, 0xc4, 0xd6, 0x72, 0x0c, 0x7a, 0x2b, 0x05, 0x43, 0xa1, 0x56, 0xf1, 0x93, 0x4e, 0x02, 0xd3, 0x1e, 0x81, 0xd5, 0xd2, 0x78, 0x5a, 0x71, 0xd5, 0x41, 0xcc, 0x7e, 0x1e, 0x6e, 0x61, 0x32, 0xeb, 0xee, 0x42, 0x11, 0x1f, 0x52, 0xa8, 0x44, 0x93, 0x72, 0x60, 0x71, 0x90, 0x56, 0xae, 0x7b, 0x10, 0xf7, 0x51, 0x60, 0x6c, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1608_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1608_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1608 = { .name = "ecdsa_brainpoolp384r1_sha384_1608", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1608_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1608_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1608_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 205 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1609 for ECDSA, tcId is 206 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1609_pubkey[] = { 0x36, 0x85, 0x4a, 0xda, 0xcf, 0x83, 0xce, 0x5f, 0x0e, 0x44, 0x22, 0x40, 0x6d, 0x7b, 0x6f, 0x7d, 0xb6, 0x3d, 0x73, 0xd4, 0xc8, 0x92, 0xa0, 0x1e, 0x97, 0x5e, 0xf6, 0xee, 0x6b, 0x71, 0xa9, 0x33, 0x4c, 0x9d, 0x57, 0xce, 0x6f, 0xfc, 0xdb, 0x1a, 0x2e, 0x41, 0x74, 0xdd, 0xba, 0x79, 0x9e, 0x12, 0x7d, 0x61, 0x96, 0x72, 0x03, 0x5d, 0xb4, 0xfd, 0x73, 0xe5, 0xe4, 0xb4, 0xea, 0x92, 0x0b, 0x74, 0xf2, 0xe7, 0x0f, 0xd2, 0x4e, 0xbc, 0xa4, 0x9d, 0x22, 0xfd, 0xb1, 0x1e, 0x96, 0xb7, 0x86, 0x7f, 0xa1, 0x83, 0x8c, 0xa5, 0xba, 0xbc, 0xd9, 0xdd, 0x09, 0x6a, 0xb8, 0x5e, 0x2f, 0x97, 0xb5, 0xae, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1609_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1609_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1609 = { .name = "ecdsa_brainpoolp384r1_sha384_1609", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1609_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1609_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1609_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 206 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1610 for ECDSA, tcId is 207 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1610_pubkey[] = { 0x80, 0x4e, 0x6c, 0x71, 0xe4, 0x93, 0xb7, 0x83, 0xec, 0xd3, 0x75, 0xa4, 0xed, 0xcf, 0x86, 0xc7, 0x7b, 0x1c, 0x2d, 0xf5, 0x51, 0xbb, 0xc7, 0x3b, 0xed, 0x85, 0x16, 0xe4, 0xd1, 0x1c, 0xe5, 0x1a, 0x1d, 0xd0, 0x81, 0xe1, 0x9a, 0xa6, 0xf5, 0x1c, 0x65, 0x68, 0x18, 0xb8, 0x53, 0x96, 0x21, 0x78, 0x58, 0x0b, 0xd6, 0xb2, 0xc4, 0xea, 0xbc, 0xf5, 0xb3, 0x74, 0x1e, 0x6b, 0x7d, 0x59, 0xb0, 0xe7, 0xf2, 0xbd, 0xdb, 0x24, 0x7f, 0x5f, 0x9d, 0x67, 0x51, 0xcf, 0x09, 0xe3, 0xc6, 0xc9, 0xd1, 0xf7, 0xc2, 0x7c, 0x0b, 0xb8, 0xd2, 0x1e, 0x77, 0xa8, 0x0e, 0xba, 0xda, 0xf9, 0x0a, 0xf8, 0xb0, 0xd0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1610_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1610_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1610 = { .name = "ecdsa_brainpoolp384r1_sha384_1610", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1610_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1610_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1610_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 207 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1611 for ECDSA, tcId is 208 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1611_pubkey[] = { 0x2c, 0x11, 0x57, 0x72, 0xdd, 0x29, 0x86, 0x12, 0x19, 0x7a, 0x1c, 0x59, 0xdf, 0x9c, 0x25, 0xa8, 0x6a, 0xc1, 0x6f, 0xa4, 0xf2, 0x7a, 0xdf, 0x74, 0xbc, 0xc6, 0x73, 0xbb, 0x4a, 0x6a, 0x4b, 0xb5, 0xd0, 0xb5, 0xb6, 0x44, 0x70, 0xd5, 0xd2, 0x6e, 0x03, 0x00, 0x92, 0x2a, 0xb7, 0x23, 0x73, 0x24, 0x42, 0xf6, 0xec, 0x20, 0x9e, 0x27, 0xce, 0x0b, 0x12, 0x7d, 0x33, 0x47, 0x45, 0x27, 0x26, 0x43, 0xd3, 0x66, 0x6b, 0xff, 0x54, 0x92, 0x74, 0x19, 0x76, 0x4d, 0xe5, 0x23, 0x22, 0xee, 0x16, 0x96, 0xe6, 0x20, 0xd1, 0x5e, 0x0e, 0xea, 0x62, 0xfe, 0xd0, 0xf2, 0x0e, 0xfe, 0x6c, 0x91, 0xe1, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1611_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1611 = { .name = "ecdsa_brainpoolp384r1_sha384_1611", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1611_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1611_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1611_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 208 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1612 for ECDSA, tcId is 209 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1612_pubkey[] = { 0x29, 0x57, 0x78, 0xc9, 0xa3, 0xbe, 0x2b, 0x37, 0x34, 0x50, 0xf5, 0x7d, 0xaf, 0x10, 0xde, 0x66, 0xd3, 0x24, 0x41, 0x75, 0x0a, 0xc4, 0x28, 0x9f, 0x67, 0x51, 0xff, 0x61, 0x40, 0x5c, 0xe0, 0x23, 0x7f, 0x64, 0xe2, 0x8a, 0xc5, 0x28, 0x1a, 0x81, 0xd1, 0x3f, 0xba, 0x81, 0xa8, 0x45, 0x4e, 0x58, 0x4c, 0x9f, 0x39, 0x91, 0xd6, 0x15, 0x51, 0x2f, 0xaf, 0x0d, 0xc9, 0x10, 0x71, 0x93, 0xb1, 0xb6, 0xf5, 0xcd, 0x68, 0x43, 0x56, 0xca, 0x51, 0x50, 0x4d, 0x15, 0xc1, 0xca, 0x4b, 0xa0, 0x0b, 0x21, 0xc7, 0xc6, 0x8e, 0xb4, 0x68, 0x32, 0x22, 0xa8, 0x21, 0x1e, 0x4f, 0xfd, 0x56, 0xda, 0x0e, 0x06, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1612_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1612_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1612 = { .name = "ecdsa_brainpoolp384r1_sha384_1612", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1612_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1612_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1612_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 209 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1613 for ECDSA, tcId is 210 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1613_pubkey[] = { 0x65, 0xa3, 0x40, 0xbc, 0x68, 0xf3, 0xfc, 0xea, 0xd4, 0xf0, 0x42, 0x77, 0xee, 0x86, 0x75, 0xf9, 0xc1, 0x7b, 0xc8, 0xc8, 0x84, 0x26, 0xc5, 0xba, 0x03, 0x13, 0xb8, 0xce, 0x7d, 0xa5, 0x8d, 0x92, 0xca, 0x9a, 0x0f, 0xfa, 0x32, 0xc7, 0xee, 0xe1, 0x95, 0x85, 0x7d, 0x86, 0x0b, 0xa1, 0xee, 0xbe, 0x4d, 0xcd, 0x5b, 0xe3, 0xa6, 0x77, 0x80, 0x08, 0xb3, 0x6e, 0xa1, 0x9d, 0x90, 0x2d, 0x93, 0xdd, 0x48, 0x8f, 0x6f, 0xb6, 0x5d, 0xc0, 0x71, 0x95, 0x21, 0x55, 0x3b, 0x39, 0xcb, 0x3c, 0x52, 0x4b, 0x12, 0x68, 0x1d, 0x2e, 0x07, 0xa8, 0xef, 0x72, 0x0c, 0xdc, 0x15, 0x01, 0x1c, 0x23, 0xba, 0x9d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1613_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1613_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1613 = { .name = "ecdsa_brainpoolp384r1_sha384_1613", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1613_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1613_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1613_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 210 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1614 for ECDSA, tcId is 211 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1614_pubkey[] = { 0x54, 0xa0, 0x39, 0x02, 0x65, 0x6b, 0xfa, 0xf4, 0xd6, 0xa5, 0x4f, 0xf3, 0x42, 0x9d, 0x9f, 0x97, 0x19, 0xbb, 0x61, 0xe6, 0xca, 0xf0, 0x00, 0xe1, 0x00, 0x99, 0x2b, 0x31, 0x70, 0x0e, 0x78, 0x0e, 0x0f, 0x73, 0xf5, 0x16, 0x14, 0x95, 0x4a, 0xcd, 0xdd, 0xca, 0xaa, 0x8b, 0x23, 0x11, 0x19, 0x5b, 0x04, 0xad, 0x3b, 0x19, 0xb0, 0x1e, 0x15, 0x0a, 0x39, 0xdc, 0x0c, 0xfa, 0xec, 0xc6, 0x49, 0x8b, 0x18, 0x13, 0x8c, 0xe6, 0x12, 0xc4, 0x92, 0x79, 0x56, 0x87, 0xa4, 0x88, 0x52, 0x26, 0x44, 0xb3, 0xdd, 0xf7, 0x46, 0x2c, 0x3c, 0x35, 0x9b, 0xd0, 0x91, 0xb7, 0xd3, 0x94, 0x69, 0x57, 0x18, 0x79, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1614_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1614_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1614 = { .name = "ecdsa_brainpoolp384r1_sha384_1614", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1614_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1614_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1614_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 211 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1615 for ECDSA, tcId is 212 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1615_pubkey[] = { 0x46, 0xd1, 0x0d, 0x74, 0x9a, 0x47, 0xa4, 0xd3, 0xf2, 0x5b, 0x6f, 0x28, 0x95, 0x1a, 0x11, 0xf0, 0x1a, 0x54, 0xc2, 0x41, 0x39, 0x57, 0xa4, 0x77, 0x16, 0x2d, 0xab, 0xe0, 0xd0, 0x8d, 0x8a, 0xe9, 0xb6, 0xa9, 0xf4, 0x4b, 0x68, 0xef, 0x34, 0x1f, 0xb8, 0x20, 0xb0, 0xc2, 0x4c, 0x7a, 0x1c, 0x0e, 0x67, 0x1f, 0xf1, 0x66, 0xcd, 0x35, 0xd2, 0xf3, 0xcc, 0x82, 0x1d, 0x58, 0xfa, 0x18, 0xe3, 0x5d, 0x25, 0xe6, 0x03, 0x3b, 0x9e, 0x79, 0x0f, 0xce, 0x48, 0x18, 0xf9, 0xe5, 0x70, 0x92, 0x1c, 0x00, 0x34, 0xb3, 0x81, 0xcc, 0x9a, 0xd2, 0x54, 0xee, 0xaf, 0x1b, 0x38, 0x6e, 0x51, 0x1b, 0x7c, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1615_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1615_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1615 = { .name = "ecdsa_brainpoolp384r1_sha384_1615", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1615_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1615_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1615_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 212 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1616 for ECDSA, tcId is 213 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1616_pubkey[] = { 0x8a, 0xe9, 0x2d, 0xe1, 0x0b, 0x24, 0x4a, 0xc7, 0xf0, 0xde, 0xb6, 0xb1, 0x02, 0xd0, 0x75, 0x95, 0x1d, 0x8c, 0x13, 0xb2, 0x96, 0x0c, 0x2e, 0x98, 0xd7, 0xfb, 0x42, 0xb8, 0xab, 0xe9, 0x0f, 0xd0, 0x7a, 0x4a, 0x21, 0xb8, 0x6e, 0xb4, 0xc7, 0x7e, 0xfe, 0x9a, 0xdb, 0x67, 0x25, 0x67, 0x6d, 0x17, 0x36, 0x06, 0x3f, 0x34, 0x07, 0xc7, 0x16, 0x27, 0xac, 0xaa, 0x83, 0xbe, 0x90, 0x29, 0xc7, 0xa4, 0x0e, 0x8a, 0xa8, 0x96, 0xcb, 0x68, 0xa9, 0xc2, 0xfa, 0x2a, 0xaa, 0x10, 0x79, 0x03, 0x5a, 0x28, 0x31, 0x81, 0xcd, 0x3f, 0x27, 0x23, 0xb2, 0x21, 0xd5, 0xa8, 0x74, 0x7a, 0xd3, 0x92, 0xa0, 0xf9, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1616_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1616_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1616 = { .name = "ecdsa_brainpoolp384r1_sha384_1616", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1616_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1616_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1616_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 213 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1617 for ECDSA, tcId is 214 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1617_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1617_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1617_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1617 = { .name = "ecdsa_brainpoolp384r1_sha384_1617", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1617_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1617_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1617_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 214 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1618 for ECDSA, tcId is 215 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1618_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1618_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1618_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1618 = { .name = "ecdsa_brainpoolp384r1_sha384_1618", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1618_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1618_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1618_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 215 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1619 for ECDSA, tcId is 216 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1619_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1619_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1619_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1619 = { .name = "ecdsa_brainpoolp384r1_sha384_1619", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1619_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1619_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1619_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 216 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1620 for ECDSA, tcId is 217 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1620_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1620_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1620_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1620 = { .name = "ecdsa_brainpoolp384r1_sha384_1620", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1620_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1620_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1620_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 217 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1621 for ECDSA, tcId is 218 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1621_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1621_sig[] = { 0x65, 0xfd, 0x45, 0x68, 0x14, 0x37, 0x1d, 0x60, 0x88, 0x3f, 0xfd, 0xa5, 0xf7, 0x4f, 0x36, 0xdc, 0x2d, 0x45, 0x88, 0x61, 0x21, 0x77, 0x0e, 0x29, 0xed, 0x31, 0x63, 0x75, 0x47, 0x16, 0xd1, 0x2c, 0x1c, 0xab, 0x03, 0xa2, 0xcb, 0x6a, 0x6e, 0x33, 0x76, 0xfc, 0x96, 0xd8, 0x72, 0x7b, 0xd1, 0xbf, 0x1a, 0xa6, 0x5e, 0x57, 0x93, 0x2d, 0x05, 0x78, 0x84, 0x13, 0x21, 0x9b, 0x7a, 0xb2, 0x3e, 0x53, 0x37, 0xf6, 0x3f, 0xb2, 0xdc, 0xb0, 0xf8, 0x9b, 0x42, 0x27, 0xd2, 0x84, 0xa3, 0xfc, 0xbd, 0xf3, 0xc5, 0x4c, 0x02, 0x1a, 0x6c, 0x0c, 0xa4, 0x24, 0x45, 0xbf, 0x80, 0x22, 0x13, 0x12, 0x16, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1621 = { .name = "ecdsa_brainpoolp384r1_sha384_1621", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1621_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp384r1_sha384_1621_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 218 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1622 for ECDSA, tcId is 219 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1622_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1622_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1622_sig[] = { 0x01, 0x05, 0x7e, 0x36, 0xad, 0x00, 0xf7, 0x9e, 0x7c, 0x1c, 0xfc, 0xf4, 0xde, 0xa3, 0x01, 0xe4, 0xe2, 0x35, 0x06, 0x44, 0xd5, 0xef, 0xf4, 0xd4, 0xc7, 0xf2, 0x3c, 0xdd, 0x2f, 0x4f, 0x23, 0x60, 0x93, 0xff, 0x27, 0xe3, 0x3e, 0xb4, 0x4f, 0xd8, 0x04, 0xb2, 0xf0, 0xda, 0xf5, 0xc3, 0x27, 0xa4, 0x2a, 0x9b, 0x2b, 0x91, 0x0d, 0xd2, 0x3b, 0x99, 0x4c, 0xac, 0x12, 0xf3, 0x22, 0x82, 0x84, 0x61, 0x09, 0x4c, 0x87, 0x90, 0x48, 0x1b, 0x39, 0x25, 0x69, 0xc6, 0x67, 0x4a, 0xc2, 0xec, 0xa7, 0x4d, 0xd7, 0x49, 0x57, 0xd9, 0x44, 0x56, 0x54, 0x85, 0x46, 0xb6, 0x5b, 0xd5, 0x05, 0x58, 0xf4, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1622 = { .name = "ecdsa_brainpoolp384r1_sha384_1622", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1622_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1622_msg, .msglen = 3, .sig = ecdsa_brainpoolp384r1_sha384_1622_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 219 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1623 for ECDSA, tcId is 220 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1623_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1623_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1623_sig[] = { 0x6d, 0xd9, 0xd4, 0xe9, 0x8c, 0x9c, 0x38, 0x82, 0x40, 0xe9, 0x5c, 0x49, 0xb2, 0x10, 0x0a, 0xfb, 0xe0, 0xd7, 0x22, 0xf8, 0xa1, 0x52, 0x65, 0x1c, 0x61, 0xd7, 0xef, 0x9b, 0xf4, 0x61, 0x50, 0xe3, 0xcd, 0xf9, 0xbf, 0x63, 0x30, 0xe7, 0x5e, 0x4b, 0xf2, 0xc2, 0x94, 0xcd, 0x66, 0xe4, 0x8d, 0x06, 0x12, 0x82, 0xd3, 0x3b, 0x5b, 0x79, 0xd4, 0xea, 0xaf, 0xa0, 0x3a, 0x77, 0xbb, 0x8b, 0xa2, 0xc3, 0x18, 0x29, 0x1f, 0x6e, 0xa0, 0x9d, 0x54, 0x8b, 0x77, 0x04, 0xbb, 0x00, 0x91, 0x08, 0x56, 0xdd, 0x36, 0x05, 0x57, 0xe6, 0x09, 0xad, 0xd8, 0x91, 0xc6, 0x43, 0x5d, 0x7a, 0x80, 0xaf, 0xdd, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1623 = { .name = "ecdsa_brainpoolp384r1_sha384_1623", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1623_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1623_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1623_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 220 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1624 for ECDSA, tcId is 221 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1624_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1624_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1624_sig[] = { 0x46, 0xcb, 0x43, 0x79, 0x8b, 0xc0, 0x6d, 0xbe, 0x78, 0x8a, 0x4f, 0x4b, 0x2b, 0x98, 0x13, 0x0e, 0x3a, 0xae, 0x91, 0x7f, 0x1d, 0x2a, 0x00, 0x56, 0x56, 0xbd, 0x70, 0xa3, 0x28, 0x8c, 0xaf, 0x7c, 0x37, 0xd1, 0xde, 0xe0, 0xc9, 0x10, 0x88, 0x28, 0xa6, 0x9d, 0x2a, 0x1e, 0xea, 0xe1, 0x13, 0xc6, 0x81, 0x80, 0xd0, 0xc5, 0xba, 0x1b, 0xed, 0x4f, 0x2b, 0x0d, 0x4d, 0x8e, 0xd7, 0xea, 0x17, 0x91, 0x6b, 0x63, 0x40, 0x03, 0x97, 0xe7, 0xb6, 0xd7, 0x0e, 0x73, 0x12, 0xc5, 0xff, 0x0f, 0x45, 0x24, 0xa4, 0x9a, 0xbf, 0x70, 0x71, 0xc8, 0xba, 0x47, 0x0d, 0xe6, 0x4f, 0xb6, 0x68, 0x57, 0x03, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1624 = { .name = "ecdsa_brainpoolp384r1_sha384_1624", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1624_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1624_msg, .msglen = 20, .sig = ecdsa_brainpoolp384r1_sha384_1624_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 221 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1625 for ECDSA, tcId is 222 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1625_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1625_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1625_sig[] = { 0x43, 0xa3, 0xac, 0x2f, 0x3d, 0x2b, 0x4d, 0x37, 0x23, 0xa9, 0x79, 0x30, 0xb0, 0x23, 0xee, 0x73, 0x01, 0x0a, 0x7c, 0xf8, 0xd2, 0xa9, 0x93, 0x72, 0xf3, 0x13, 0x2b, 0xd7, 0xd9, 0xc8, 0x35, 0x74, 0xde, 0x3a, 0xb8, 0x65, 0x25, 0xef, 0xc4, 0xee, 0x2c, 0x59, 0x79, 0x9d, 0x5f, 0xf7, 0xef, 0xb4, 0x34, 0xf5, 0x9a, 0x3e, 0xa9, 0xf5, 0x26, 0x7f, 0x84, 0x58, 0xaf, 0xda, 0xa3, 0x87, 0x3e, 0x23, 0x36, 0xe0, 0xab, 0x8a, 0x40, 0xca, 0x1b, 0x79, 0x7c, 0xbd, 0x97, 0x7d, 0x19, 0x2f, 0x20, 0x24, 0xf9, 0xeb, 0x8d, 0x39, 0xb3, 0x7b, 0x9a, 0x23, 0x8f, 0x20, 0x8d, 0x66, 0xba, 0xcd, 0x27, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1625 = { .name = "ecdsa_brainpoolp384r1_sha384_1625", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1625_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1625_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1625_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 222 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1626 for ECDSA, tcId is 223 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1626_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1626_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1626_sig[] = { 0x35, 0x31, 0xad, 0xa2, 0x5b, 0x8d, 0x9a, 0xf9, 0xb8, 0x7e, 0x52, 0x24, 0xcd, 0x6a, 0x6d, 0x95, 0x6c, 0x17, 0xdc, 0x32, 0x3e, 0xf8, 0x98, 0x0f, 0x49, 0x7a, 0x6e, 0x7e, 0x44, 0xc8, 0x3d, 0x69, 0xb7, 0x4d, 0xe7, 0x91, 0xd6, 0x2b, 0xce, 0xac, 0xaf, 0xf7, 0x37, 0x88, 0x63, 0xdd, 0x72, 0x5b, 0x45, 0x9d, 0x15, 0x53, 0x93, 0x99, 0x40, 0x93, 0x80, 0xaf, 0x99, 0xd5, 0x60, 0xc5, 0x61, 0x21, 0x7d, 0xaa, 0x5c, 0x53, 0x97, 0x29, 0x45, 0x30, 0x67, 0xdd, 0x1a, 0xa4, 0xbd, 0x9d, 0xf2, 0xb5, 0x34, 0x92, 0x0f, 0x0d, 0x62, 0x13, 0x26, 0x1e, 0xce, 0xa1, 0x6f, 0x0e, 0xd6, 0x85, 0x36, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1626 = { .name = "ecdsa_brainpoolp384r1_sha384_1626", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1626_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1626_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1626_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 223 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1627 for ECDSA, tcId is 224 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1627_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1627_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1627_sig[] = { 0x43, 0x8a, 0x0c, 0xff, 0x9f, 0xcf, 0xcf, 0x58, 0x7f, 0x8c, 0x40, 0x77, 0x5a, 0xd4, 0x4e, 0xa4, 0xb0, 0xed, 0x69, 0xf2, 0xd5, 0x47, 0xbe, 0xfe, 0x29, 0x5d, 0x1f, 0xb9, 0xc2, 0x4d, 0xdc, 0xb9, 0x7f, 0x22, 0x80, 0x27, 0xdf, 0x55, 0x2a, 0x06, 0xbf, 0x65, 0x7b, 0x4c, 0x20, 0x27, 0x26, 0x15, 0x5e, 0x15, 0x76, 0x30, 0xbb, 0x74, 0x4f, 0xc8, 0xe7, 0xf7, 0x59, 0x01, 0xde, 0x49, 0x8e, 0x5a, 0xf0, 0xb5, 0x51, 0x1d, 0xfe, 0xee, 0x0c, 0x4c, 0x1f, 0x2e, 0x5c, 0x4a, 0xa0, 0x12, 0x9d, 0xe5, 0x7b, 0x87, 0xa2, 0xa1, 0x3e, 0xa5, 0x9d, 0x18, 0x7d, 0x51, 0xcb, 0xeb, 0x6e, 0xf2, 0x24, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1627 = { .name = "ecdsa_brainpoolp384r1_sha384_1627", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1627_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1627_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1627_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 224 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1628 for ECDSA, tcId is 225 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1628_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1628_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1628_sig[] = { 0x16, 0x49, 0x6c, 0x08, 0xc3, 0x07, 0x67, 0x73, 0xfc, 0xd8, 0x41, 0xa5, 0xe2, 0x5e, 0x1a, 0x87, 0x10, 0x8e, 0x0b, 0xa9, 0x0f, 0x97, 0x27, 0xf5, 0x39, 0x03, 0x4b, 0xd2, 0xcf, 0x68, 0x8e, 0x01, 0xa9, 0x55, 0x68, 0x6a, 0x15, 0x11, 0x2e, 0x05, 0x90, 0xfc, 0x91, 0xe3, 0x99, 0x5f, 0xf5, 0xf8, 0x31, 0xb1, 0xb7, 0x33, 0x8f, 0x74, 0xad, 0xba, 0x33, 0x71, 0x2a, 0x83, 0xa7, 0xc6, 0x85, 0xe7, 0xcd, 0x5f, 0x3b, 0xe8, 0x4e, 0xf9, 0x51, 0xec, 0xad, 0x50, 0xfa, 0xcb, 0x7c, 0x6e, 0xc3, 0x93, 0xa3, 0xba, 0xc5, 0x2e, 0xa7, 0xb1, 0x21, 0x2b, 0xd9, 0x2f, 0x4f, 0x45, 0xa9, 0xf8, 0x51, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1628 = { .name = "ecdsa_brainpoolp384r1_sha384_1628", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1628_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1628_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1628_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 225 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1629 for ECDSA, tcId is 226 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1629_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1629_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1629_sig[] = { 0x87, 0xf3, 0x09, 0x02, 0x92, 0xe7, 0x9b, 0x72, 0x2c, 0xde, 0x5a, 0xed, 0xaf, 0xa4, 0x24, 0x4f, 0x6e, 0xb4, 0x60, 0xa2, 0x80, 0xe2, 0xe0, 0x50, 0x39, 0x9b, 0x9d, 0x80, 0x23, 0x91, 0xad, 0x50, 0x21, 0x08, 0x70, 0x4a, 0x3c, 0x0b, 0xb9, 0xf9, 0xae, 0x57, 0x1c, 0x3f, 0x7d, 0xec, 0x6c, 0x0b, 0x89, 0xae, 0x00, 0x43, 0xde, 0x38, 0xa5, 0x85, 0xa1, 0x63, 0x2c, 0x72, 0x11, 0xb7, 0x83, 0x03, 0xaf, 0xa3, 0xf8, 0x93, 0x61, 0x54, 0xa6, 0xe6, 0x5a, 0x6f, 0x72, 0x9c, 0x3b, 0x1e, 0xc6, 0x6a, 0x17, 0x75, 0xaa, 0x46, 0x5a, 0xf8, 0xee, 0xd6, 0xdf, 0xea, 0xa5, 0xba, 0x98, 0xce, 0xdb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1629 = { .name = "ecdsa_brainpoolp384r1_sha384_1629", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1629_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1629_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1629_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 226 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1630 for ECDSA, tcId is 227 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1630_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1630_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1630_sig[] = { 0x72, 0x08, 0x22, 0xab, 0xef, 0xa9, 0x12, 0x65, 0xa7, 0xb8, 0xd4, 0x46, 0xec, 0x3b, 0xc4, 0x05, 0xfd, 0x19, 0x21, 0x78, 0xaa, 0x1b, 0x85, 0xdd, 0x66, 0x33, 0x96, 0xa8, 0x96, 0xa3, 0x2c, 0x11, 0x9e, 0x64, 0xb1, 0xa2, 0x08, 0x43, 0xf8, 0x1e, 0xdd, 0x43, 0xc0, 0x37, 0x09, 0xb8, 0xdb, 0xc6, 0x20, 0x6a, 0xe9, 0x5b, 0xb1, 0x8d, 0x2d, 0x38, 0x44, 0xa3, 0x93, 0x40, 0x87, 0x2e, 0xdb, 0xa1, 0x61, 0x1e, 0x3e, 0xa0, 0xe8, 0x4c, 0xea, 0x7c, 0xb6, 0xcf, 0xf2, 0x82, 0xaf, 0x41, 0x4d, 0x8b, 0x5a, 0xa0, 0xbe, 0x8a, 0xab, 0xc1, 0xb5, 0x1b, 0x71, 0x21, 0xd4, 0x26, 0x91, 0x6b, 0x01, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1630 = { .name = "ecdsa_brainpoolp384r1_sha384_1630", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1630_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1630_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1630_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 227 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1631 for ECDSA, tcId is 228 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1631_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1631_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1631_sig[] = { 0x1e, 0x50, 0x27, 0xfc, 0xc6, 0x30, 0xaa, 0x08, 0x75, 0x0a, 0x47, 0x25, 0x91, 0x9d, 0xd9, 0x07, 0x24, 0x22, 0xa2, 0x1a, 0xca, 0x9d, 0x33, 0x26, 0xbe, 0xc3, 0xe6, 0xac, 0x04, 0x0b, 0xa9, 0x78, 0x49, 0x51, 0xb1, 0xfd, 0xa6, 0xf5, 0x88, 0xe6, 0x0d, 0xcb, 0x55, 0x0b, 0x75, 0x79, 0x3a, 0x4e, 0x0d, 0xf3, 0x22, 0x46, 0x41, 0xf6, 0x80, 0x4f, 0x4d, 0x1b, 0xf9, 0x51, 0x05, 0x1e, 0x08, 0x7c, 0xe1, 0xfa, 0x73, 0x65, 0xc4, 0x3b, 0xd2, 0x78, 0x78, 0x62, 0x68, 0x33, 0xf0, 0x91, 0x90, 0xcc, 0x0a, 0x7f, 0xa2, 0x9b, 0x16, 0xbc, 0x2c, 0xa0, 0xd3, 0x4f, 0xd0, 0x66, 0x0d, 0x24, 0x71, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1631 = { .name = "ecdsa_brainpoolp384r1_sha384_1631", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1631_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1631_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1631_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 228 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1632 for ECDSA, tcId is 229 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1632_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1632_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1632_sig[] = { 0x4e, 0x61, 0xe3, 0x47, 0x40, 0xa9, 0xf6, 0xdb, 0x08, 0x54, 0xfa, 0xf2, 0x05, 0x71, 0x9a, 0x3d, 0x98, 0xef, 0x64, 0x4b, 0x86, 0x24, 0x1b, 0x85, 0x8f, 0xa2, 0x29, 0x59, 0xc0, 0x43, 0x95, 0x57, 0x8b, 0xef, 0x7b, 0xe3, 0x50, 0x36, 0xae, 0x7a, 0x9f, 0xfe, 0xb9, 0xa2, 0x17, 0x33, 0x11, 0xf4, 0x1e, 0x96, 0x7c, 0x3b, 0x60, 0x71, 0xd3, 0x75, 0x60, 0xfd, 0x64, 0xa4, 0xfe, 0x09, 0x21, 0xb1, 0xd6, 0x00, 0xf6, 0x0d, 0x88, 0x3f, 0xde, 0xc8, 0x16, 0x83, 0x61, 0x76, 0xc5, 0xe6, 0x7a, 0xd0, 0x51, 0x82, 0xaa, 0x08, 0x0c, 0x7e, 0x21, 0x84, 0xc0, 0x71, 0x00, 0x50, 0xd5, 0x23, 0xf0, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1632 = { .name = "ecdsa_brainpoolp384r1_sha384_1632", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1632_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1632_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1632_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 229 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1633 for ECDSA, tcId is 230 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1633_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1633_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1633_sig[] = { 0x2c, 0x30, 0x90, 0xc5, 0x81, 0xe5, 0x75, 0xda, 0x58, 0xa8, 0xf6, 0x59, 0xf7, 0x4c, 0x5e, 0xee, 0x56, 0x64, 0x00, 0xeb, 0x1d, 0x91, 0xde, 0x0a, 0x95, 0x0e, 0x78, 0x75, 0x42, 0xe6, 0x57, 0x2f, 0x73, 0xb9, 0xf6, 0xd4, 0xf8, 0x1f, 0x1c, 0x8e, 0x42, 0xf9, 0xe4, 0x60, 0xda, 0xc3, 0xc1, 0xdc, 0x75, 0x6b, 0x1b, 0x69, 0x3e, 0x7f, 0xe0, 0x66, 0x86, 0x70, 0x8c, 0x2a, 0x60, 0x98, 0x54, 0xac, 0xcd, 0x21, 0xe3, 0x19, 0x5d, 0x84, 0xb7, 0x2c, 0x11, 0xc8, 0x73, 0x90, 0x8d, 0x17, 0x5d, 0xfc, 0x00, 0xc0, 0x0e, 0xbb, 0xdf, 0x8e, 0x2b, 0xb6, 0x97, 0x0f, 0x2f, 0x19, 0x78, 0x53, 0x03, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1633 = { .name = "ecdsa_brainpoolp384r1_sha384_1633", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1633_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1633_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1633_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 230 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1634 for ECDSA, tcId is 231 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1634_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1634_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1634_sig[] = { 0x09, 0x2f, 0x0e, 0xe1, 0xfe, 0xeb, 0x79, 0xc0, 0x54, 0xae, 0x36, 0x23, 0x5f, 0x87, 0x17, 0xe9, 0xee, 0x72, 0xb4, 0x66, 0xb1, 0x70, 0x4d, 0x4f, 0xa7, 0x8a, 0xdd, 0xfc, 0xd1, 0x35, 0x18, 0xa6, 0x4d, 0xb2, 0xb2, 0xfd, 0xb0, 0x64, 0x39, 0xac, 0xbc, 0x4c, 0x04, 0x5f, 0xb2, 0xc2, 0x3c, 0x3a, 0x23, 0x71, 0xca, 0x6d, 0x36, 0xf4, 0x26, 0x61, 0x62, 0xee, 0x5c, 0x65, 0x7c, 0x71, 0xce, 0xa3, 0x5d, 0xce, 0xc3, 0x63, 0x2c, 0x5b, 0x22, 0x0a, 0x6f, 0x23, 0xac, 0xe1, 0xba, 0x65, 0x62, 0xa8, 0x41, 0xae, 0xee, 0xef, 0xe8, 0x7a, 0x79, 0x98, 0xad, 0xfa, 0xf1, 0x85, 0xb8, 0x55, 0x8e, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1634 = { .name = "ecdsa_brainpoolp384r1_sha384_1634", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1634_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1634_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1634_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 231 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1635 for ECDSA, tcId is 232 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1635_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1635_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1635_sig[] = { 0x6c, 0x8f, 0x4b, 0xe6, 0x41, 0xaf, 0xaf, 0x5b, 0xf9, 0x1c, 0xe0, 0x89, 0x74, 0xd2, 0x84, 0xec, 0xe6, 0xae, 0xc7, 0x47, 0x92, 0x24, 0x72, 0x29, 0xfa, 0x86, 0xc6, 0x59, 0x7e, 0xed, 0x3f, 0xb5, 0x07, 0xb7, 0x12, 0xbb, 0x77, 0xaf, 0x02, 0x26, 0xe1, 0xbb, 0xb3, 0xba, 0xd6, 0x32, 0xb0, 0xd8, 0x77, 0x59, 0x54, 0xfe, 0x8b, 0xf9, 0x36, 0x15, 0x7b, 0x7a, 0xb7, 0xa6, 0x83, 0xf6, 0xdc, 0x18, 0x38, 0xa8, 0x71, 0x82, 0x00, 0x62, 0x1b, 0xc8, 0xbf, 0x2f, 0x32, 0xb7, 0x78, 0xf6, 0xc8, 0xe8, 0xc6, 0x56, 0x53, 0x2b, 0x50, 0xde, 0x39, 0xac, 0x22, 0xd2, 0x2b, 0x37, 0xdc, 0xcf, 0xd1, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1635 = { .name = "ecdsa_brainpoolp384r1_sha384_1635", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1635_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1635_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1635_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 232 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1636 for ECDSA, tcId is 233 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1636_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1636_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1636_sig[] = { 0x76, 0xe5, 0xc0, 0x75, 0x82, 0x17, 0x74, 0x00, 0xdf, 0x45, 0x31, 0x14, 0xfe, 0xd7, 0x46, 0xf4, 0x07, 0x04, 0x19, 0x78, 0x97, 0xb4, 0xca, 0x21, 0xb7, 0x2e, 0x5b, 0x44, 0xd4, 0xca, 0x40, 0xcf, 0xca, 0xa5, 0x5e, 0x44, 0x46, 0x35, 0x5c, 0x91, 0xea, 0x97, 0x67, 0xf3, 0x8c, 0x81, 0x72, 0xdf, 0x0c, 0x6d, 0xd7, 0x3e, 0xef, 0xbb, 0x4c, 0x06, 0xe8, 0x23, 0x22, 0x4d, 0x8e, 0xfa, 0xa3, 0xee, 0x93, 0x4e, 0x4a, 0x97, 0xee, 0xd2, 0x83, 0x35, 0x13, 0xb4, 0xd7, 0x35, 0xed, 0x06, 0xeb, 0x55, 0x0b, 0x2a, 0x5f, 0xa7, 0xf8, 0x66, 0x13, 0xd6, 0x27, 0xd9, 0xdb, 0x46, 0x6a, 0xfa, 0x66, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1636 = { .name = "ecdsa_brainpoolp384r1_sha384_1636", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1636_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1636_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1636_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 233 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1637 for ECDSA, tcId is 234 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1637_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1637_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1637_sig[] = { 0x0e, 0x44, 0xfd, 0xc3, 0x3a, 0xed, 0x0c, 0x32, 0x0e, 0x37, 0x1e, 0x2a, 0x78, 0xe9, 0xf1, 0x8f, 0xde, 0x83, 0x43, 0x4e, 0x68, 0x1a, 0xfb, 0x05, 0xa5, 0xbd, 0xb0, 0xf4, 0x3c, 0xac, 0x70, 0xe8, 0x3e, 0xde, 0x56, 0xbf, 0x8c, 0x56, 0xac, 0xf7, 0x0e, 0x05, 0x4e, 0x2f, 0xfe, 0xf5, 0x49, 0xcf, 0x13, 0x24, 0xb4, 0xcf, 0xe6, 0x84, 0xd4, 0x01, 0xea, 0xc1, 0x5b, 0x09, 0x40, 0xf5, 0x83, 0x54, 0x36, 0xd3, 0xa1, 0x02, 0x8e, 0x27, 0xc1, 0x96, 0x6d, 0xbf, 0x69, 0xfe, 0xfe, 0xf8, 0x27, 0x48, 0xa0, 0x5b, 0x44, 0x43, 0xc7, 0x7c, 0x87, 0x07, 0x89, 0x13, 0x57, 0x55, 0xd0, 0xd1, 0x84, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1637 = { .name = "ecdsa_brainpoolp384r1_sha384_1637", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1637_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1637_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1637_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 234 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1638 for ECDSA, tcId is 235 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1638_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1638_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1638_sig[] = { 0x59, 0x66, 0xac, 0xd8, 0xa7, 0x71, 0x4f, 0x20, 0x15, 0xe3, 0x6f, 0xd4, 0xfd, 0xb3, 0x45, 0x22, 0x58, 0xce, 0x0a, 0xae, 0xfb, 0x39, 0x72, 0x09, 0x1b, 0x49, 0x6b, 0xd5, 0x30, 0xbb, 0xaf, 0x1e, 0xc6, 0x7d, 0x7e, 0x37, 0xe5, 0x00, 0x31, 0xb3, 0xee, 0xa4, 0x4a, 0x8b, 0xb8, 0xf6, 0x2c, 0x20, 0x2a, 0x5f, 0x30, 0x9d, 0x2f, 0xad, 0x55, 0xb9, 0x3a, 0x7a, 0x30, 0x12, 0xcb, 0xda, 0x28, 0x45, 0xef, 0xaa, 0x4e, 0xa0, 0xd1, 0x87, 0xd3, 0x82, 0x4f, 0x4a, 0x6a, 0x92, 0x27, 0x73, 0x0d, 0x3a, 0xb1, 0x52, 0x46, 0xd8, 0xd0, 0x95, 0x2c, 0x7e, 0xe8, 0xc0, 0xb9, 0xeb, 0x83, 0xd1, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1638 = { .name = "ecdsa_brainpoolp384r1_sha384_1638", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1638_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1638_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1638_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 235 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1639 for ECDSA, tcId is 236 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1639_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1639_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1639_sig[] = { 0x26, 0x6e, 0xac, 0xe6, 0x57, 0xe1, 0xec, 0x88, 0xa2, 0xad, 0xbb, 0x38, 0xa5, 0xaf, 0xb4, 0xf7, 0x50, 0x27, 0x4c, 0xa6, 0x14, 0xd1, 0xfd, 0xe9, 0xea, 0x39, 0xdf, 0xf6, 0xf2, 0xa2, 0xaa, 0x69, 0x92, 0x3e, 0x9a, 0x74, 0x89, 0xf0, 0x6b, 0xf9, 0xd8, 0x4c, 0x51, 0x8c, 0xee, 0x57, 0xe5, 0x5b, 0x3d, 0x19, 0x02, 0x76, 0x84, 0xef, 0x22, 0x12, 0x16, 0xf6, 0x3a, 0x59, 0x1d, 0x8e, 0x79, 0x35, 0x24, 0xe4, 0xc1, 0x23, 0x4a, 0x56, 0xce, 0x41, 0x5b, 0xb9, 0xad, 0x9e, 0x2e, 0xbf, 0x25, 0xac, 0x94, 0xa9, 0x92, 0x61, 0xb9, 0x15, 0x7d, 0x19, 0xda, 0xa5, 0xaa, 0x87, 0x62, 0x91, 0xf3, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1639 = { .name = "ecdsa_brainpoolp384r1_sha384_1639", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1639_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1639_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1639_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 236 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1640 for ECDSA, tcId is 237 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1640_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1640_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1640_sig[] = { 0x13, 0xde, 0x6e, 0xb5, 0x32, 0x32, 0x1c, 0x02, 0x30, 0x92, 0xaa, 0x78, 0xc1, 0x99, 0xf9, 0xee, 0x4d, 0xce, 0x7a, 0x18, 0xdf, 0x15, 0x8c, 0x3e, 0x79, 0x94, 0x61, 0xaf, 0x9d, 0x96, 0xc2, 0xd3, 0x87, 0x65, 0xa7, 0x8f, 0xdb, 0x14, 0x40, 0x4d, 0x19, 0x93, 0x65, 0xde, 0x05, 0xbd, 0x44, 0xc5, 0x25, 0x14, 0xa0, 0x35, 0x9b, 0xcb, 0x66, 0x12, 0x2b, 0xf4, 0x8c, 0x18, 0x6a, 0x4b, 0xb2, 0xed, 0xcc, 0xf3, 0x05, 0xb0, 0x64, 0x14, 0xb1, 0x1f, 0x47, 0x0d, 0x25, 0x12, 0xca, 0xdd, 0xa1, 0x29, 0x36, 0x6f, 0x60, 0x72, 0xde, 0x71, 0x5b, 0xc2, 0xba, 0xbb, 0x8a, 0x3a, 0x5f, 0x26, 0x0d, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1640 = { .name = "ecdsa_brainpoolp384r1_sha384_1640", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1640_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1640_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1640_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 237 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1641 for ECDSA, tcId is 238 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1641_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1641_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1641_sig[] = { 0x13, 0x08, 0xd3, 0xd9, 0xed, 0xfe, 0x3a, 0xd0, 0x7e, 0x21, 0x5a, 0x97, 0x5b, 0x2b, 0x06, 0x7e, 0x9f, 0x0b, 0x80, 0x33, 0x71, 0xb3, 0x02, 0x9f, 0x43, 0x88, 0xa3, 0x47, 0x1f, 0x4d, 0xb2, 0x3f, 0x35, 0x8a, 0xea, 0x5c, 0x03, 0xdb, 0x62, 0xd7, 0x71, 0x15, 0xc5, 0x6c, 0x49, 0x62, 0x63, 0x3b, 0x4b, 0x8b, 0x1f, 0xe4, 0x4b, 0x32, 0xcc, 0x66, 0x91, 0x14, 0xa1, 0xce, 0x0b, 0xa0, 0x55, 0x54, 0x46, 0xd0, 0xc9, 0x6a, 0x32, 0xcb, 0x60, 0x21, 0x85, 0xe8, 0xfb, 0xa4, 0x14, 0xd3, 0xa8, 0x31, 0xcb, 0xf5, 0xb5, 0x19, 0xb0, 0xf9, 0x06, 0x47, 0xdc, 0x45, 0xe3, 0x0a, 0x1f, 0x23, 0xef, 0x90, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1641 = { .name = "ecdsa_brainpoolp384r1_sha384_1641", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1641_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1641_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1641_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 238 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1642 for ECDSA, tcId is 239 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1642_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1642_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1642_sig[] = { 0x5d, 0xa3, 0xdf, 0x09, 0x41, 0x55, 0xb8, 0xf8, 0x81, 0x2d, 0x0c, 0x63, 0x45, 0x34, 0x4e, 0x41, 0xc3, 0xb5, 0x91, 0xb6, 0x5b, 0x95, 0xfe, 0xdb, 0xbc, 0xbd, 0x3c, 0x3a, 0x3b, 0xb1, 0xc1, 0xdb, 0xfc, 0x4d, 0x4c, 0x5b, 0x84, 0x1b, 0x8f, 0x88, 0x74, 0xd5, 0x9b, 0x07, 0xcf, 0x22, 0x88, 0xfc, 0x4a, 0x1e, 0x4a, 0x83, 0x99, 0xab, 0xbd, 0xf2, 0x46, 0x92, 0x9b, 0x25, 0x59, 0xbb, 0x0f, 0xa4, 0x04, 0x77, 0x27, 0x55, 0xfc, 0x74, 0x52, 0x36, 0x26, 0xae, 0xef, 0x43, 0x2f, 0xe4, 0x76, 0x4d, 0xf1, 0xe1, 0xf5, 0xc9, 0xb0, 0xf8, 0x97, 0xed, 0x8f, 0x1f, 0xfd, 0x7a, 0x88, 0x16, 0x7f, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1642 = { .name = "ecdsa_brainpoolp384r1_sha384_1642", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1642_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1642_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1642_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 239 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1643 for ECDSA, tcId is 240 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1643_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1643_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1643_sig[] = { 0x0b, 0xf6, 0xfe, 0xc0, 0xa5, 0xbe, 0x27, 0xcd, 0xdb, 0x0e, 0x76, 0x69, 0xae, 0x06, 0xd1, 0x5d, 0xfa, 0x75, 0x83, 0x7f, 0x8e, 0xe7, 0x2b, 0x47, 0x44, 0x3a, 0xc8, 0x45, 0xff, 0xcd, 0x42, 0x7b, 0x08, 0x93, 0xe1, 0x0c, 0x85, 0xc2, 0x0c, 0x7a, 0xa5, 0x76, 0xfb, 0x70, 0xe8, 0x77, 0x61, 0xab, 0x74, 0x18, 0xb6, 0xf3, 0x74, 0x93, 0x6a, 0xdc, 0xa8, 0xb0, 0x7d, 0xc5, 0x15, 0x45, 0xee, 0x34, 0xed, 0x2e, 0x9f, 0x56, 0xf3, 0x26, 0x70, 0x33, 0xe3, 0x0e, 0xa0, 0x9a, 0x0a, 0xcd, 0x31, 0xb6, 0xce, 0x83, 0x50, 0x3e, 0xe7, 0xe0, 0x98, 0x62, 0x7f, 0x8b, 0xa8, 0xb4, 0xc5, 0x84, 0x34, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1643 = { .name = "ecdsa_brainpoolp384r1_sha384_1643", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1643_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1643_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1643_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 240 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1644 for ECDSA, tcId is 241 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1644_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1644_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1644_sig[] = { 0x03, 0xe3, 0x06, 0xa8, 0x6f, 0x6b, 0x2c, 0xb2, 0x48, 0xfc, 0xb6, 0x8d, 0x1d, 0x31, 0x7a, 0x60, 0x42, 0xb7, 0x08, 0x9e, 0x96, 0xd7, 0x4c, 0x2f, 0x5b, 0x93, 0x4e, 0x2e, 0x12, 0x28, 0x31, 0x26, 0x8a, 0x45, 0xe2, 0x18, 0x5b, 0x7c, 0x21, 0x27, 0x0e, 0x8b, 0x90, 0x6c, 0xd3, 0x72, 0xe6, 0xd7, 0x4c, 0x82, 0xab, 0x6d, 0xe6, 0xbc, 0x01, 0x94, 0xac, 0x1a, 0x2e, 0x34, 0x80, 0xa0, 0xc8, 0x04, 0x66, 0xaf, 0x7d, 0x2a, 0x32, 0x9d, 0x20, 0xb0, 0x31, 0x51, 0xd1, 0x80, 0x6a, 0x0b, 0xc0, 0x72, 0x0f, 0x55, 0xd3, 0x78, 0x1a, 0x7d, 0xb9, 0xfe, 0xbe, 0x7d, 0x8b, 0xbd, 0x0a, 0x71, 0x9b, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1644 = { .name = "ecdsa_brainpoolp384r1_sha384_1644", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1644_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1644_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1644_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 241 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1645 for ECDSA, tcId is 242 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1645_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1645_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1645_sig[] = { 0x14, 0xd1, 0xdf, 0x9b, 0x3d, 0xb5, 0x5e, 0xcc, 0x8d, 0x1e, 0x12, 0x66, 0x25, 0xbd, 0xf5, 0xb6, 0x31, 0x6b, 0xba, 0x1e, 0x7f, 0x4e, 0xa5, 0xec, 0x77, 0x41, 0x8c, 0x75, 0x4a, 0x59, 0x75, 0x63, 0xdc, 0x5d, 0xc2, 0x91, 0xb7, 0xdd, 0x04, 0x77, 0x82, 0xd5, 0x18, 0xfe, 0x74, 0xe0, 0xbe, 0x83, 0x33, 0xef, 0x70, 0x1c, 0x44, 0x0f, 0x28, 0x0e, 0xdf, 0x81, 0xa9, 0x63, 0x2d, 0xde, 0x9d, 0xc1, 0x7d, 0xe5, 0xf4, 0x38, 0xdc, 0xc1, 0x9e, 0x9c, 0xa5, 0x91, 0x9b, 0x4b, 0x73, 0xe6, 0x29, 0x05, 0xe5, 0xf7, 0xe0, 0xbc, 0x9d, 0xb0, 0xb1, 0x4b, 0xc5, 0x33, 0x27, 0xf7, 0x9f, 0x70, 0xc6, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1645 = { .name = "ecdsa_brainpoolp384r1_sha384_1645", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1645_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1645_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1645_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 242 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1646 for ECDSA, tcId is 243 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1646_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1646_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1646_sig[] = { 0x6a, 0x3a, 0x18, 0x40, 0x06, 0x86, 0x63, 0x5a, 0xe2, 0x79, 0xc3, 0x85, 0xb6, 0x40, 0xd4, 0xfa, 0x08, 0x0d, 0x9c, 0x44, 0xa5, 0xd4, 0x21, 0xfe, 0x4b, 0xe5, 0xa5, 0xec, 0x7a, 0x8a, 0xe3, 0x1b, 0x00, 0xbf, 0xa4, 0x06, 0xe9, 0x19, 0xe5, 0x7e, 0x39, 0xc1, 0x13, 0x60, 0xe6, 0x70, 0xd8, 0x69, 0x72, 0x9c, 0x0b, 0x9f, 0xf7, 0x7f, 0x88, 0xf8, 0x10, 0x54, 0x8d, 0x6d, 0xb1, 0x83, 0x53, 0x12, 0xa4, 0x48, 0x11, 0x4a, 0x3b, 0xd9, 0x3c, 0xf5, 0x94, 0x22, 0xfa, 0xa2, 0xea, 0x02, 0x6f, 0x5d, 0x47, 0x62, 0x7f, 0x0c, 0x11, 0xfb, 0x85, 0x91, 0x12, 0x24, 0x6d, 0x87, 0x9c, 0x85, 0x95, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1646 = { .name = "ecdsa_brainpoolp384r1_sha384_1646", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1646_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1646_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1646_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 243 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1647 for ECDSA, tcId is 244 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1647_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1647_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1647_sig[] = { 0x1a, 0xb8, 0xd6, 0xc3, 0x1d, 0x45, 0x77, 0xf5, 0x9c, 0xa5, 0x71, 0x4c, 0x9e, 0xad, 0xa9, 0x79, 0xfd, 0xb9, 0xec, 0x0c, 0xad, 0x32, 0xd8, 0xcb, 0x91, 0x5d, 0xbd, 0x70, 0x49, 0x29, 0x47, 0x18, 0x7f, 0x5a, 0x52, 0x71, 0x8e, 0x19, 0x98, 0x2f, 0x7a, 0x2d, 0x4c, 0xb4, 0x8b, 0x22, 0x77, 0x23, 0x87, 0x2e, 0x3c, 0xe7, 0xd1, 0xfd, 0x5a, 0xe1, 0x80, 0xfa, 0xf1, 0x99, 0x0b, 0x11, 0x93, 0x75, 0x58, 0xaa, 0x44, 0xcc, 0xda, 0xb6, 0x31, 0x49, 0x2b, 0x89, 0x25, 0xbe, 0x84, 0xfb, 0xcb, 0x45, 0x21, 0x48, 0xed, 0xad, 0x5b, 0xbf, 0xe4, 0x8c, 0x06, 0xb8, 0xc9, 0x90, 0x8c, 0xa2, 0x52, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1647 = { .name = "ecdsa_brainpoolp384r1_sha384_1647", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1647_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1647_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1647_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 244 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1648 for ECDSA, tcId is 245 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1648_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1648_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1648_sig[] = { 0x80, 0x3f, 0xfc, 0x58, 0xf8, 0x15, 0x0a, 0x9c, 0x4c, 0x22, 0x9a, 0x7b, 0x52, 0x23, 0x57, 0xf4, 0x9f, 0x9a, 0x5f, 0x48, 0xf8, 0x2d, 0x8b, 0xb9, 0x82, 0x95, 0x43, 0x95, 0x83, 0x6e, 0x09, 0xeb, 0x5f, 0x8c, 0xf1, 0xf3, 0x45, 0xce, 0x28, 0x46, 0x74, 0xbc, 0x36, 0x9d, 0x04, 0x6d, 0x5c, 0x8a, 0x8a, 0x9f, 0xeb, 0x64, 0xc4, 0x10, 0xcf, 0x3a, 0xe6, 0x26, 0x1a, 0xd3, 0x5f, 0x7e, 0x3e, 0x8d, 0xa1, 0x31, 0x29, 0xda, 0xf9, 0x49, 0x44, 0xf8, 0xe0, 0x8e, 0x96, 0x49, 0xcd, 0x00, 0x66, 0x22, 0xc3, 0xd5, 0xc9, 0x1e, 0xc5, 0xb9, 0x79, 0x8a, 0x1b, 0xe3, 0xa3, 0x15, 0x33, 0xa0, 0xa8, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1648 = { .name = "ecdsa_brainpoolp384r1_sha384_1648", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1648_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1648_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1648_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 245 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1649 for ECDSA, tcId is 246 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1649_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1649_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1649_sig[] = { 0x2e, 0xd5, 0x69, 0xf1, 0x2d, 0xbe, 0x30, 0xa2, 0xab, 0xf0, 0x21, 0x90, 0xbb, 0x9e, 0x4d, 0xe7, 0xe2, 0x18, 0xe9, 0xfd, 0x70, 0x5d, 0xc7, 0x1c, 0xbe, 0x14, 0x80, 0x02, 0x27, 0x81, 0xb2, 0xa2, 0x21, 0x3c, 0x3e, 0xf2, 0xf9, 0x10, 0x52, 0xe9, 0x08, 0x40, 0xa1, 0x8f, 0x74, 0xe3, 0x75, 0xae, 0x88, 0x72, 0xb5, 0x66, 0xf3, 0x87, 0xc2, 0xbc, 0xb6, 0x39, 0xdf, 0x9c, 0x2d, 0x86, 0x6f, 0x76, 0x31, 0xdf, 0x29, 0x0c, 0x5f, 0x66, 0xc2, 0x64, 0xd4, 0x94, 0x9e, 0x25, 0x63, 0x83, 0xb1, 0xb4, 0xb2, 0x09, 0x8c, 0x12, 0x0f, 0x13, 0x44, 0x9d, 0x9d, 0x7b, 0xff, 0x68, 0x91, 0x91, 0x9c, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1649 = { .name = "ecdsa_brainpoolp384r1_sha384_1649", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1649_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1649_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1649_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 246 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1650 for ECDSA, tcId is 247 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1650_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1650_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1650_sig[] = { 0x4b, 0x7e, 0x56, 0x51, 0xb0, 0x35, 0x95, 0x92, 0x95, 0x09, 0x2e, 0x2e, 0xfe, 0x54, 0x8d, 0xa5, 0x22, 0x06, 0xc8, 0xd0, 0xe4, 0x8b, 0xa4, 0x3e, 0x2b, 0x8e, 0xcd, 0x98, 0xec, 0xe2, 0x5d, 0xc0, 0x89, 0x55, 0xb6, 0xe7, 0xb0, 0x5e, 0x38, 0xc4, 0xe2, 0x28, 0x29, 0xd1, 0x65, 0x87, 0x11, 0xb5, 0x44, 0xa9, 0x73, 0xb7, 0x55, 0x28, 0x40, 0x0c, 0xef, 0x3f, 0x63, 0xf5, 0x5f, 0x21, 0x54, 0xd4, 0x8b, 0xb0, 0xb8, 0x26, 0x21, 0x42, 0x00, 0xd3, 0xf3, 0x3c, 0x7b, 0xc3, 0x11, 0x55, 0x24, 0x2d, 0x4e, 0x24, 0xf0, 0x7e, 0xd1, 0x96, 0x06, 0xfd, 0xb2, 0xc8, 0xec, 0xae, 0xb6, 0x98, 0x1e, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1650 = { .name = "ecdsa_brainpoolp384r1_sha384_1650", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1650_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1650_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1650_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 247 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1651 for ECDSA, tcId is 248 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1651_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1651_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1651_sig[] = { 0x1e, 0xca, 0xda, 0xce, 0xaa, 0x47, 0x9f, 0xa4, 0xe9, 0xaa, 0xba, 0xc4, 0x21, 0x0b, 0x1a, 0xb7, 0x7f, 0xc1, 0xd1, 0x3a, 0x9c, 0x4c, 0xb0, 0x22, 0x82, 0x6b, 0xb1, 0x80, 0x65, 0x75, 0x11, 0x58, 0x34, 0xa6, 0xec, 0xb9, 0xde, 0xc3, 0xe6, 0x68, 0xb8, 0xc9, 0x1d, 0x4a, 0xca, 0x28, 0x3d, 0xc9, 0x2d, 0xe8, 0x96, 0x5a, 0x66, 0xd5, 0x65, 0x45, 0xad, 0x84, 0xfd, 0xae, 0xe1, 0x6f, 0xff, 0xa0, 0xeb, 0x31, 0x02, 0x21, 0x86, 0xa5, 0xb6, 0xbe, 0x2a, 0x24, 0x75, 0x95, 0x8b, 0x9a, 0xd7, 0x2f, 0x48, 0x3e, 0xbd, 0x4b, 0x25, 0x57, 0x48, 0xa8, 0x11, 0x80, 0x6b, 0xcd, 0x42, 0x8a, 0xcf, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1651 = { .name = "ecdsa_brainpoolp384r1_sha384_1651", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1651_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1651_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1651_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 248 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1652 for ECDSA, tcId is 249 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1652_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1652_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1652_sig[] = { 0x37, 0xe2, 0x56, 0x87, 0x23, 0x40, 0xda, 0x9d, 0xc8, 0x84, 0xfd, 0x00, 0xda, 0xa1, 0x46, 0x28, 0x37, 0x2b, 0x4b, 0xed, 0xc0, 0xa8, 0xa0, 0x9f, 0x9d, 0x75, 0x13, 0x52, 0x1d, 0x3b, 0x80, 0x3a, 0x78, 0xdc, 0x0e, 0xdb, 0xab, 0x3c, 0x7d, 0xc2, 0xb2, 0x01, 0x4b, 0xaf, 0x7a, 0x9d, 0x21, 0x0e, 0x1b, 0xa4, 0xb4, 0x08, 0x79, 0x73, 0x07, 0x0c, 0xca, 0x9b, 0x95, 0x76, 0x50, 0x17, 0x7e, 0xeb, 0x41, 0xc5, 0x57, 0x73, 0x15, 0x96, 0xa9, 0x66, 0xb0, 0xb7, 0xf6, 0x87, 0x17, 0xd8, 0xe7, 0xb5, 0x54, 0xaf, 0xd0, 0x7c, 0x29, 0x37, 0xc9, 0x54, 0x03, 0xa9, 0x0c, 0x3a, 0x05, 0xfa, 0x96, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1652 = { .name = "ecdsa_brainpoolp384r1_sha384_1652", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1652_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1652_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1652_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 249 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1653 for ECDSA, tcId is 250 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1653_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1653_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1653_sig[] = { 0x00, 0x12, 0x8c, 0x19, 0x9d, 0xc2, 0x76, 0x77, 0xf2, 0x3f, 0xea, 0xe2, 0x8a, 0x9b, 0x28, 0x81, 0x3c, 0xbc, 0x3b, 0x02, 0xfc, 0xa4, 0x93, 0x00, 0x5a, 0x67, 0xc3, 0x12, 0x6a, 0x70, 0x5c, 0x49, 0xb9, 0x82, 0xcb, 0x58, 0x17, 0xee, 0x2c, 0x81, 0x16, 0x1e, 0x80, 0xb7, 0x38, 0xbb, 0xb5, 0x12, 0x73, 0xcb, 0x6d, 0x45, 0x47, 0x77, 0x1d, 0x25, 0x4b, 0xe7, 0x43, 0x48, 0x95, 0x5b, 0xee, 0x97, 0x90, 0x71, 0x35, 0x8a, 0xa3, 0xaf, 0xd6, 0x2a, 0x58, 0x38, 0x17, 0x9a, 0x09, 0x65, 0x46, 0x5a, 0xec, 0x79, 0xbd, 0x6c, 0xbd, 0x9b, 0x8b, 0x2a, 0xa2, 0xc7, 0x9b, 0xb8, 0x8a, 0xb2, 0x15, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1653 = { .name = "ecdsa_brainpoolp384r1_sha384_1653", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1653_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1653_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1653_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 250 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1654 for ECDSA, tcId is 251 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1654_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1654_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1654_sig[] = { 0x81, 0x8b, 0x0f, 0xd6, 0xca, 0x09, 0x78, 0xa5, 0x9c, 0xad, 0x3f, 0xa1, 0x5e, 0x84, 0xdb, 0x28, 0x96, 0xf3, 0x9b, 0x2a, 0xa4, 0x62, 0xf0, 0x58, 0x38, 0x34, 0xfa, 0x44, 0x44, 0xd1, 0x53, 0xfe, 0x61, 0xe0, 0xc9, 0x30, 0x71, 0xba, 0x96, 0xc5, 0xff, 0xa7, 0x19, 0x3f, 0x77, 0xb8, 0x06, 0xf3, 0x1d, 0x2d, 0x61, 0x44, 0x17, 0x23, 0x85, 0xf8, 0x57, 0xdb, 0x4b, 0x7e, 0x7e, 0x86, 0x39, 0x62, 0xea, 0xca, 0xcd, 0xec, 0x03, 0x4b, 0x4b, 0x4a, 0x9d, 0xd1, 0xaf, 0x27, 0x26, 0x04, 0x40, 0x3f, 0x39, 0xf4, 0x5a, 0x21, 0x94, 0x8b, 0x30, 0x97, 0x6e, 0x73, 0x8e, 0x9e, 0x98, 0xfd, 0x9c, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1654 = { .name = "ecdsa_brainpoolp384r1_sha384_1654", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1654_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1654_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1654_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 251 in file ecdsa_brainpoolP384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1655 for ECDSA, tcId is 1 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1655_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1655_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x83, 0xaa, 0x7b, 0xa4, 0x85, 0xdc, 0x06, 0x0d, 0xf9, 0x92, 0x2f, 0x9c, 0xcc, 0x5d, 0xa2, 0x9a, 0xdb, 0x75, 0xd4, 0x46, 0x71, 0xd1, 0x8b, 0xad, 0x06, 0x36, 0xd2, 0xe0, 0x9c, 0x5e, 0x2f, 0x95, 0xe8, 0x92, 0xa7, 0x9b, 0x9f, 0xd3, 0xb3, 0x7e, 0x1f, 0x79, 0x8b, 0x15, 0x7b, 0x56, 0x7a, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1655 = { .name = "ecdsa_brainpoolp384r1_sha384_1655", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1655_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1655_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1655_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1656 for ECDSA, tcId is 2 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1656_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1656_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1656 = { .name = "ecdsa_brainpoolp384r1_sha384_1656", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1656_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1656_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1656_sig, .siglen = 96, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1657 for ECDSA, tcId is 3 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1657_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1657_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1657 = { .name = "ecdsa_brainpoolp384r1_sha384_1657", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1657_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1657_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1657_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of sequence, tcId is 3 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1658 for ECDSA, tcId is 4 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1658_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1658_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1658 = { .name = "ecdsa_brainpoolp384r1_sha384_1658", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1658_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1658_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1658_sig, .siglen = 96, .result = 0, .comment = "length of sequence contains leading 0, tcId is 4 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1659 for ECDSA, tcId is 67 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1659_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1659_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1659 = { .name = "ecdsa_brainpoolp384r1_sha384_1659", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1659_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1659_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1659_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1660 for ECDSA, tcId is 68 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1660_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1660_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1660 = { .name = "ecdsa_brainpoolp384r1_sha384_1660", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1660_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1660_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1660_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1661 for ECDSA, tcId is 69 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1661_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1661_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1661 = { .name = "ecdsa_brainpoolp384r1_sha384_1661", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1661_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1661_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1661_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1662 for ECDSA, tcId is 70 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1662_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1662_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1662 = { .name = "ecdsa_brainpoolp384r1_sha384_1662", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1662_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1662_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1662_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1663 for ECDSA, tcId is 92 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1663_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1663_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1663 = { .name = "ecdsa_brainpoolp384r1_sha384_1663", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1663_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1663_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1663_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1664 for ECDSA, tcId is 93 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1664_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1664_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1664 = { .name = "ecdsa_brainpoolp384r1_sha384_1664", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1664_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1664_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1664_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1665 for ECDSA, tcId is 94 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1665_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1665_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1665 = { .name = "ecdsa_brainpoolp384r1_sha384_1665", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1665_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1665_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1665_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1666 for ECDSA, tcId is 95 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1666_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1666_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1666 = { .name = "ecdsa_brainpoolp384r1_sha384_1666", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1666_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1666_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1666_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1667 for ECDSA, tcId is 97 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1667_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1667_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x05, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1667 = { .name = "ecdsa_brainpoolp384r1_sha384_1667", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1667_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1667_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1667_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1668 for ECDSA, tcId is 98 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1668_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1668_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1668 = { .name = "ecdsa_brainpoolp384r1_sha384_1668", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1668_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1668_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1668_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1669 for ECDSA, tcId is 113 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1669_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1669_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1669 = { .name = "ecdsa_brainpoolp384r1_sha384_1669", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1669_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1669_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1669_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1670 for ECDSA, tcId is 114 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1670_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1670_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1670 = { .name = "ecdsa_brainpoolp384r1_sha384_1670", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1670_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1670_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1670_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1671 for ECDSA, tcId is 117 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1671_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1671_sig[] = { 0x0c, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1671 = { .name = "ecdsa_brainpoolp384r1_sha384_1671", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1671_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1671_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1671_sig, .siglen = 96, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1672 for ECDSA, tcId is 118 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1672_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1672_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x0b, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1672 = { .name = "ecdsa_brainpoolp384r1_sha384_1672", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1672_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1672_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1672_sig, .siglen = 96, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1673 for ECDSA, tcId is 119 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1673_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1673_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x11, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1673 = { .name = "ecdsa_brainpoolp384r1_sha384_1673", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1673_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1673_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1673_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1674 for ECDSA, tcId is 120 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1674_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1674_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1674 = { .name = "ecdsa_brainpoolp384r1_sha384_1674", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1674_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1674_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1674_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1675 for ECDSA, tcId is 121 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1675_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1675_sig[] = { 0x00, 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1675 = { .name = "ecdsa_brainpoolp384r1_sha384_1675", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1675_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1675_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1675_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1676 for ECDSA, tcId is 122 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1676_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1676_sig[] = { 0x00, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1676 = { .name = "ecdsa_brainpoolp384r1_sha384_1676", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1676_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1676_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1676_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1677 for ECDSA, tcId is 123 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1677_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1677_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1677 = { .name = "ecdsa_brainpoolp384r1_sha384_1677", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1677_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1677_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1677_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1678 for ECDSA, tcId is 124 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1678_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1678_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1678 = { .name = "ecdsa_brainpoolp384r1_sha384_1678", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1678_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1678_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1678_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1679 for ECDSA, tcId is 125 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1679_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1679_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1679 = { .name = "ecdsa_brainpoolp384r1_sha384_1679", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1679_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1679_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1679_sig, .siglen = 96, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1680 for ECDSA, tcId is 126 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1680_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1680_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1680 = { .name = "ecdsa_brainpoolp384r1_sha384_1680", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1680_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1680_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1680_sig, .siglen = 96, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_brainpoolP384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1681 for ECDSA, tcId is 129 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1681_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1681_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1681 = { .name = "ecdsa_brainpoolp384r1_sha384_1681", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1681_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1681_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1681_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1682 for ECDSA, tcId is 130 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1682_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1682_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1682 = { .name = "ecdsa_brainpoolp384r1_sha384_1682", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1682_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1682_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1682_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1683 for ECDSA, tcId is 131 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1683_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1683_sig[] = { 0x9b, 0x47, 0x2f, 0xcc, 0xbf, 0x6d, 0x81, 0x2d, 0x65, 0x69, 0x68, 0x52, 0xcb, 0xfc, 0xad, 0xdd, 0xaa, 0x9f, 0xf8, 0xb1, 0xed, 0x8f, 0x8b, 0xe7, 0x52, 0xcc, 0x82, 0xbc, 0x2a, 0xeb, 0xfc, 0x9f, 0x6b, 0xc8, 0x87, 0xfe, 0x5d, 0xa9, 0xbd, 0x8a, 0x6a, 0xaf, 0xb4, 0xc2, 0x1c, 0x74, 0xf0, 0xf6, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1683 = { .name = "ecdsa_brainpoolp384r1_sha384_1683", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1683_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1683_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1683_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1684 for ECDSA, tcId is 132 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1684_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1684_sig[] = { 0x81, 0xd4, 0xf2, 0xc7, 0x78, 0xfc, 0xa6, 0xdd, 0x46, 0xae, 0x89, 0x56, 0x2a, 0x30, 0x2a, 0x1f, 0x80, 0x41, 0x16, 0x9e, 0x12, 0xe6, 0xde, 0x81, 0x14, 0x9f, 0xa5, 0xe2, 0xd2, 0xe3, 0xb1, 0x4f, 0xcd, 0x53, 0x1a, 0x9f, 0x86, 0xaa, 0x37, 0x69, 0xf3, 0x9f, 0x50, 0xbc, 0x4a, 0x6c, 0x26, 0x2c, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1684 = { .name = "ecdsa_brainpoolp384r1_sha384_1684", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1684_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1684_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1684_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1685 for ECDSA, tcId is 133 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1685_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1685_sig[] = { 0xf1, 0x71, 0xee, 0xb5, 0xe3, 0xca, 0xeb, 0xfa, 0xa9, 0xf4, 0x07, 0x2b, 0x84, 0xe9, 0x94, 0x01, 0x6a, 0x8f, 0x78, 0x57, 0xff, 0xc4, 0xca, 0xcb, 0xcc, 0x49, 0xeb, 0xb0, 0x81, 0x18, 0x29, 0x08, 0x63, 0x72, 0x2e, 0xb1, 0x0d, 0xd6, 0x05, 0x85, 0xd0, 0xd8, 0x7d, 0x40, 0xcc, 0x8f, 0x74, 0x6f, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1685 = { .name = "ecdsa_brainpoolp384r1_sha384_1685", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1685_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1685_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1685_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1686 for ECDSA, tcId is 134 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1686_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1686_sig[] = { 0x7e, 0x2b, 0x0d, 0x38, 0x87, 0x03, 0x59, 0x22, 0xb9, 0x51, 0x76, 0xa9, 0xd5, 0xcf, 0xd5, 0xe0, 0x7f, 0xbe, 0xe9, 0x61, 0xed, 0x19, 0x21, 0x7e, 0xeb, 0x60, 0x5a, 0x1d, 0x2d, 0x1c, 0x4e, 0xb0, 0x32, 0xac, 0xe5, 0x60, 0x79, 0x55, 0xc8, 0x96, 0x0c, 0x60, 0xaf, 0x43, 0xb5, 0x93, 0xd9, 0xd4, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1686 = { .name = "ecdsa_brainpoolp384r1_sha384_1686", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1686_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1686_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1686_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1687 for ECDSA, tcId is 135 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1687_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1687_sig[] = { 0x64, 0xb8, 0xd0, 0x33, 0x40, 0x92, 0x7e, 0xd2, 0x9a, 0x96, 0x97, 0xad, 0x34, 0x03, 0x52, 0x22, 0x55, 0x60, 0x07, 0x4e, 0x12, 0x70, 0x74, 0x18, 0xad, 0x33, 0x7d, 0x43, 0xd5, 0x14, 0x03, 0x60, 0x94, 0x37, 0x78, 0x01, 0xa2, 0x56, 0x42, 0x75, 0x95, 0x50, 0x4b, 0x3d, 0xe3, 0x8b, 0x0f, 0x0a, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1687 = { .name = "ecdsa_brainpoolp384r1_sha384_1687", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1687_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1687_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1687_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1688 for ECDSA, tcId is 136 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1688_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1688_sig[] = { 0x01, 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1688 = { .name = "ecdsa_brainpoolp384r1_sha384_1688", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1688_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1688_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1688_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1689 for ECDSA, tcId is 137 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1689_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1689_sig[] = { 0xf1, 0x71, 0xee, 0xb5, 0xe3, 0xca, 0xeb, 0xfa, 0xa9, 0xf4, 0x07, 0x2b, 0x84, 0xe9, 0x94, 0x01, 0x6a, 0x8f, 0x78, 0x57, 0xff, 0xc4, 0xca, 0xcb, 0xcc, 0x49, 0xeb, 0xb0, 0x81, 0x18, 0x29, 0x08, 0x63, 0x72, 0x2e, 0xb1, 0x0d, 0xd6, 0x05, 0x85, 0xd0, 0xd8, 0x7d, 0x40, 0xcc, 0x8f, 0x74, 0x6f, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1689 = { .name = "ecdsa_brainpoolp384r1_sha384_1689", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1689_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1689_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1689_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1690 for ECDSA, tcId is 138 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1690_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1690_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x95, 0xc7, 0xc1, 0x60, 0xc0, 0x94, 0xd4, 0x42, 0x25, 0x28, 0xaf, 0x5f, 0xd5, 0x6e, 0xe1, 0x23, 0x4e, 0xe9, 0x0d, 0xcd, 0x68, 0xd7, 0x21, 0xb9, 0x37, 0xf6, 0x09, 0xf8, 0xbb, 0xaa, 0x1b, 0xb9, 0xb5, 0xe2, 0xc5, 0xc3, 0x37, 0x2b, 0xd2, 0xa2, 0x57, 0x96, 0xd8, 0xf0, 0x56, 0xb2, 0x50, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1690 = { .name = "ecdsa_brainpoolp384r1_sha384_1690", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1690_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1690_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1690_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1691 for ECDSA, tcId is 139 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1691_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1691_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x7c, 0x55, 0x84, 0x5b, 0x7a, 0x23, 0xf9, 0xf2, 0x06, 0x6d, 0xd0, 0x63, 0x33, 0xa2, 0x5d, 0x65, 0x24, 0x8a, 0x2b, 0xb9, 0x8e, 0x2e, 0x74, 0x52, 0xf9, 0xc9, 0x2d, 0x1f, 0x63, 0xa1, 0xd0, 0x6a, 0x17, 0x6d, 0x58, 0x64, 0x60, 0x2c, 0x4c, 0x81, 0xe0, 0x86, 0x74, 0xea, 0x84, 0xa9, 0x85, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1691 = { .name = "ecdsa_brainpoolp384r1_sha384_1691", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1691_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1691_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1691_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1692 for ECDSA, tcId is 140 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1692_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1692_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0xf6, 0xf1, 0x5d, 0x21, 0xe2, 0xa3, 0x98, 0xe5, 0xea, 0x34, 0xc0, 0x1e, 0x7b, 0x77, 0x60, 0xbb, 0xc6, 0x46, 0x63, 0x3c, 0x84, 0x7d, 0x34, 0xf9, 0xe7, 0x20, 0x64, 0x73, 0xf0, 0x5a, 0x09, 0xee, 0x19, 0x57, 0xf0, 0xec, 0x34, 0x53, 0xf0, 0x6d, 0xe3, 0xf1, 0x59, 0x12, 0x92, 0x52, 0x14, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1692 = { .name = "ecdsa_brainpoolp384r1_sha384_1692", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1692_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1692_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1692_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1693 for ECDSA, tcId is 141 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1693_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1693_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x6a, 0x38, 0x3e, 0x9f, 0x3f, 0x6b, 0x2b, 0xbd, 0xda, 0xd7, 0x50, 0xa0, 0x2a, 0x91, 0x1e, 0xdc, 0xb1, 0x16, 0xf2, 0x32, 0x97, 0x28, 0xde, 0x46, 0xc8, 0x09, 0xf6, 0x07, 0x44, 0x55, 0xe4, 0x46, 0x4a, 0x1d, 0x3a, 0x3c, 0xc8, 0xd4, 0x2d, 0x5d, 0xa8, 0x69, 0x27, 0x0f, 0xa9, 0x4d, 0xaf, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1693 = { .name = "ecdsa_brainpoolp384r1_sha384_1693", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1693_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1693_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1693_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1694 for ECDSA, tcId is 142 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1694_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1694_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0x01, 0x09, 0x0e, 0xa2, 0xde, 0x1d, 0x5c, 0x67, 0x1a, 0x15, 0xcb, 0x3f, 0xe1, 0x84, 0x88, 0x9f, 0x44, 0x39, 0xb9, 0x9c, 0xc3, 0x7b, 0x82, 0xcb, 0x06, 0x18, 0xdf, 0x9b, 0x8c, 0x0f, 0xa5, 0xf6, 0x11, 0xe6, 0xa8, 0x0f, 0x13, 0xcb, 0xac, 0x0f, 0x92, 0x1c, 0x0e, 0xa6, 0xed, 0x6d, 0xad, 0xeb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1694 = { .name = "ecdsa_brainpoolp384r1_sha384_1694", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1694_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1694_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1694_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1695 for ECDSA, tcId is 143 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1695_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1695_sig[] = { 0x0e, 0x8e, 0x11, 0x4a, 0x1c, 0x35, 0x14, 0x05, 0x56, 0x0b, 0xf8, 0xd4, 0x7b, 0x16, 0x6b, 0xfe, 0x95, 0x70, 0x87, 0xa8, 0x00, 0x3b, 0x35, 0x34, 0x33, 0xb6, 0x14, 0x4f, 0x7e, 0xe7, 0xd6, 0xf7, 0x9c, 0x8d, 0xd1, 0x4e, 0xf2, 0x29, 0xfa, 0x7a, 0x2f, 0x27, 0x82, 0xbf, 0x33, 0x70, 0x8b, 0x91, 0xf6, 0xf1, 0x5d, 0x21, 0xe2, 0xa3, 0x98, 0xe5, 0xea, 0x34, 0xc0, 0x1e, 0x7b, 0x77, 0x60, 0xbb, 0xc6, 0x46, 0x63, 0x3c, 0x84, 0x7d, 0x34, 0xf9, 0xe7, 0x20, 0x64, 0x73, 0xf0, 0x5a, 0x09, 0xee, 0x19, 0x57, 0xf0, 0xec, 0x34, 0x53, 0xf0, 0x6d, 0xe3, 0xf1, 0x59, 0x12, 0x92, 0x52, 0x14, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1695 = { .name = "ecdsa_brainpoolp384r1_sha384_1695", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1695_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1695_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1695_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1696 for ECDSA, tcId is 144 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1696_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1696_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1696 = { .name = "ecdsa_brainpoolp384r1_sha384_1696", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1696_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1696_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1696_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1697 for ECDSA, tcId is 145 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1697_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1697_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1697 = { .name = "ecdsa_brainpoolp384r1_sha384_1697", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1697_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1697_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1697_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1698 for ECDSA, tcId is 146 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1698_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1698_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1698 = { .name = "ecdsa_brainpoolp384r1_sha384_1698", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1698_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1698_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1698_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1699 for ECDSA, tcId is 147 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1699_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1699_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1699 = { .name = "ecdsa_brainpoolp384r1_sha384_1699", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1699_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1699_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1699_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1700 for ECDSA, tcId is 148 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1700_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1700_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1700 = { .name = "ecdsa_brainpoolp384r1_sha384_1700", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1700_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1700_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1700_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1701 for ECDSA, tcId is 149 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1701_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1701_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1701 = { .name = "ecdsa_brainpoolp384r1_sha384_1701", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1701_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1701_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1701_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1702 for ECDSA, tcId is 150 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1702_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1702_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1702 = { .name = "ecdsa_brainpoolp384r1_sha384_1702", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1702_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1702_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1702_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1703 for ECDSA, tcId is 151 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1703_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1703_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1703 = { .name = "ecdsa_brainpoolp384r1_sha384_1703", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1703_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1703_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1703_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1704 for ECDSA, tcId is 154 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1704_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1704_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1704 = { .name = "ecdsa_brainpoolp384r1_sha384_1704", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1704_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1704_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1704_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1705 for ECDSA, tcId is 155 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1705_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1705_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1705 = { .name = "ecdsa_brainpoolp384r1_sha384_1705", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1705_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1705_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1705_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1706 for ECDSA, tcId is 156 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1706_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1706_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1706 = { .name = "ecdsa_brainpoolp384r1_sha384_1706", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1706_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1706_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1706_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1707 for ECDSA, tcId is 157 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1707_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1707_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1707 = { .name = "ecdsa_brainpoolp384r1_sha384_1707", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1707_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1707_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1707_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1708 for ECDSA, tcId is 158 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1708_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1708_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1708 = { .name = "ecdsa_brainpoolp384r1_sha384_1708", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1708_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1708_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1708_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1709 for ECDSA, tcId is 159 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1709_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1709_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1709 = { .name = "ecdsa_brainpoolp384r1_sha384_1709", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1709_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1709_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1709_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1710 for ECDSA, tcId is 160 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1710_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1710_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1710 = { .name = "ecdsa_brainpoolp384r1_sha384_1710", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1710_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1710_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1710_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1711 for ECDSA, tcId is 161 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1711_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1711_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1711 = { .name = "ecdsa_brainpoolp384r1_sha384_1711", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1711_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1711_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1711_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1712 for ECDSA, tcId is 164 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1712_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1712_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1712 = { .name = "ecdsa_brainpoolp384r1_sha384_1712", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1712_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1712_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1712_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1713 for ECDSA, tcId is 165 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1713_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1713_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1713 = { .name = "ecdsa_brainpoolp384r1_sha384_1713", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1713_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1713_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1713_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1714 for ECDSA, tcId is 166 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1714_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1714_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1714 = { .name = "ecdsa_brainpoolp384r1_sha384_1714", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1714_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1714_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1714_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1715 for ECDSA, tcId is 167 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1715_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1715_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1715 = { .name = "ecdsa_brainpoolp384r1_sha384_1715", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1715_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1715_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1715_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1716 for ECDSA, tcId is 168 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1716_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1716_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1716 = { .name = "ecdsa_brainpoolp384r1_sha384_1716", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1716_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1716_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1716_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1717 for ECDSA, tcId is 169 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1717_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1717_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1717 = { .name = "ecdsa_brainpoolp384r1_sha384_1717", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1717_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1717_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1717_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1718 for ECDSA, tcId is 170 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1718_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1718_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1718 = { .name = "ecdsa_brainpoolp384r1_sha384_1718", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1718_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1718_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1718_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1719 for ECDSA, tcId is 171 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1719_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1719_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1719 = { .name = "ecdsa_brainpoolp384r1_sha384_1719", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1719_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1719_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1719_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1720 for ECDSA, tcId is 174 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1720_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1720_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1720 = { .name = "ecdsa_brainpoolp384r1_sha384_1720", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1720_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1720_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1720_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1721 for ECDSA, tcId is 175 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1721_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1721_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1721 = { .name = "ecdsa_brainpoolp384r1_sha384_1721", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1721_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1721_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1721_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1722 for ECDSA, tcId is 176 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1722_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1722_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1722 = { .name = "ecdsa_brainpoolp384r1_sha384_1722", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1722_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1722_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1722_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1723 for ECDSA, tcId is 177 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1723_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1723_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1723 = { .name = "ecdsa_brainpoolp384r1_sha384_1723", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1723_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1723_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1723_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1724 for ECDSA, tcId is 178 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1724_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1724_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1724 = { .name = "ecdsa_brainpoolp384r1_sha384_1724", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1724_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1724_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1724_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1725 for ECDSA, tcId is 179 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1725_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1725_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1725 = { .name = "ecdsa_brainpoolp384r1_sha384_1725", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1725_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1725_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1725_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1726 for ECDSA, tcId is 180 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1726_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1726_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1726 = { .name = "ecdsa_brainpoolp384r1_sha384_1726", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1726_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1726_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1726_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1727 for ECDSA, tcId is 181 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1727_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1727_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1727 = { .name = "ecdsa_brainpoolp384r1_sha384_1727", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1727_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1727_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1727_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1728 for ECDSA, tcId is 184 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1728_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1728_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1728 = { .name = "ecdsa_brainpoolp384r1_sha384_1728", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1728_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1728_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1728_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1729 for ECDSA, tcId is 185 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1729_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1729_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1729 = { .name = "ecdsa_brainpoolp384r1_sha384_1729", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1729_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1729_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1729_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1730 for ECDSA, tcId is 186 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1730_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1730_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1730 = { .name = "ecdsa_brainpoolp384r1_sha384_1730", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1730_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1730_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1730_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1731 for ECDSA, tcId is 187 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1731_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1731_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1731 = { .name = "ecdsa_brainpoolp384r1_sha384_1731", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1731_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1731_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1731_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1732 for ECDSA, tcId is 188 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1732_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1732_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1732 = { .name = "ecdsa_brainpoolp384r1_sha384_1732", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1732_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1732_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1732_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1733 for ECDSA, tcId is 189 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1733_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1733_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1733 = { .name = "ecdsa_brainpoolp384r1_sha384_1733", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1733_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1733_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1733_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1734 for ECDSA, tcId is 190 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1734_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1734_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1734 = { .name = "ecdsa_brainpoolp384r1_sha384_1734", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1734_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1734_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1734_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1735 for ECDSA, tcId is 191 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1735_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1735_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1735 = { .name = "ecdsa_brainpoolp384r1_sha384_1735", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1735_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1735_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1735_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1736 for ECDSA, tcId is 194 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1736_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1736_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1736_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1736 = { .name = "ecdsa_brainpoolp384r1_sha384_1736", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1736_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1736_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1736_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1737 for ECDSA, tcId is 195 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1737_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1737_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1737 = { .name = "ecdsa_brainpoolp384r1_sha384_1737", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1737_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1737_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1737_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1738 for ECDSA, tcId is 196 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1738_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1738_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1738 = { .name = "ecdsa_brainpoolp384r1_sha384_1738", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1738_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1738_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1738_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1739 for ECDSA, tcId is 197 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1739_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1739_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1739 = { .name = "ecdsa_brainpoolp384r1_sha384_1739", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1739_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1739_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1739_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1740 for ECDSA, tcId is 198 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1740_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1740_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1740 = { .name = "ecdsa_brainpoolp384r1_sha384_1740", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1740_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1740_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1740_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1741 for ECDSA, tcId is 199 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1741_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1741_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1741 = { .name = "ecdsa_brainpoolp384r1_sha384_1741", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1741_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1741_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1741_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1742 for ECDSA, tcId is 200 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1742_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1742_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1742 = { .name = "ecdsa_brainpoolp384r1_sha384_1742", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1742_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1742_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1742_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1743 for ECDSA, tcId is 201 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1743_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1743_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1743 = { .name = "ecdsa_brainpoolp384r1_sha384_1743", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1743_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1743_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1743_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1744 for ECDSA, tcId is 204 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1744_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1744_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1744 = { .name = "ecdsa_brainpoolp384r1_sha384_1744", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1744_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1744_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1744_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1745 for ECDSA, tcId is 205 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1745_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1745_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1745 = { .name = "ecdsa_brainpoolp384r1_sha384_1745", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1745_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1745_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1745_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1746 for ECDSA, tcId is 206 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1746_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1746_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1746 = { .name = "ecdsa_brainpoolp384r1_sha384_1746", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1746_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1746_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1746_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1747 for ECDSA, tcId is 207 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1747_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1747_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1747 = { .name = "ecdsa_brainpoolp384r1_sha384_1747", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1747_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1747_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1747_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1748 for ECDSA, tcId is 208 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1748_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1748_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1748 = { .name = "ecdsa_brainpoolp384r1_sha384_1748", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1748_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1748_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1748_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1749 for ECDSA, tcId is 209 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1749_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1749_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1749 = { .name = "ecdsa_brainpoolp384r1_sha384_1749", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1749_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1749_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1749_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1750 for ECDSA, tcId is 210 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1750_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1750_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1750 = { .name = "ecdsa_brainpoolp384r1_sha384_1750", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1750_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1750_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1750_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1751 for ECDSA, tcId is 211 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1751_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1751_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1751 = { .name = "ecdsa_brainpoolp384r1_sha384_1751", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1751_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1751_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1751_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1752 for ECDSA, tcId is 214 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1752_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1752_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1752 = { .name = "ecdsa_brainpoolp384r1_sha384_1752", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1752_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1752_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1752_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1753 for ECDSA, tcId is 215 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1753_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1753_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1753 = { .name = "ecdsa_brainpoolp384r1_sha384_1753", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1753_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1753_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1753_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1754 for ECDSA, tcId is 216 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1754_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1754_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1754 = { .name = "ecdsa_brainpoolp384r1_sha384_1754", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1754_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1754_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1754_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1755 for ECDSA, tcId is 217 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1755_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1755_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1755 = { .name = "ecdsa_brainpoolp384r1_sha384_1755", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1755_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1755_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1755_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1756 for ECDSA, tcId is 218 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1756_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1756_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1756 = { .name = "ecdsa_brainpoolp384r1_sha384_1756", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1756_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1756_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1756_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1757 for ECDSA, tcId is 219 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1757_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1757_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1757 = { .name = "ecdsa_brainpoolp384r1_sha384_1757", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1757_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1757_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1757_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1758 for ECDSA, tcId is 220 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1758_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1758_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1758 = { .name = "ecdsa_brainpoolp384r1_sha384_1758", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1758_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1758_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1758_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1759 for ECDSA, tcId is 221 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1759_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1759_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1759 = { .name = "ecdsa_brainpoolp384r1_sha384_1759", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1759_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1759_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1759_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1760 for ECDSA, tcId is 230 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1760_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1760_msg[] = { 0x33, 0x35, 0x37, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1760_sig[] = { 0x70, 0x5c, 0x79, 0x0f, 0x8f, 0x50, 0x06, 0x1c, 0x50, 0x8c, 0x15, 0xfc, 0x9a, 0xab, 0xc1, 0xf5, 0x81, 0x93, 0xab, 0x15, 0xb3, 0x94, 0xab, 0x21, 0x95, 0xe3, 0x58, 0xcb, 0x62, 0x0a, 0x5b, 0xf4, 0xb6, 0x54, 0x49, 0xaf, 0xb9, 0xc4, 0x17, 0xbd, 0x1a, 0x31, 0x05, 0xe5, 0x3a, 0x97, 0x42, 0xce, 0x6d, 0xd7, 0xab, 0xda, 0x40, 0x01, 0xbc, 0x41, 0x69, 0x82, 0xab, 0x43, 0x26, 0xb5, 0xd2, 0x7b, 0x12, 0x80, 0xf0, 0x2b, 0x14, 0x2f, 0x04, 0x0c, 0xe2, 0x49, 0x7f, 0x9e, 0x15, 0x3e, 0x4e, 0x1e, 0x3a, 0x35, 0xc5, 0xff, 0xae, 0xf7, 0x26, 0x94, 0xe6, 0x77, 0x87, 0x2e, 0xb1, 0x9d, 0xdf, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1760 = { .name = "ecdsa_brainpoolp384r1_sha384_1760", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1760_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1760_msg, .msglen = 5, .sig = ecdsa_brainpoolp384r1_sha384_1760_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1761 for ECDSA, tcId is 231 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1761_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1761_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1761_sig[] = { 0x79, 0xdf, 0x11, 0xf0, 0x22, 0x1d, 0xe0, 0x47, 0x3c, 0xcf, 0x84, 0x4c, 0xa7, 0x02, 0xb0, 0xd3, 0x98, 0x1b, 0x8a, 0x97, 0xeb, 0x8f, 0x68, 0x84, 0xf4, 0xef, 0xeb, 0x84, 0x71, 0x5d, 0x2c, 0x6e, 0xde, 0x43, 0x20, 0x8c, 0x7e, 0x98, 0xdb, 0x8e, 0x09, 0x1e, 0x6c, 0x91, 0x7f, 0xd9, 0xf0, 0xbb, 0x1d, 0xa9, 0x88, 0x19, 0x57, 0xbf, 0xfe, 0x20, 0x9d, 0x61, 0xdd, 0xe8, 0x7e, 0xcd, 0x9c, 0x9d, 0x8c, 0x5c, 0xda, 0xd0, 0xe4, 0xcf, 0xb6, 0xe0, 0x8c, 0xe2, 0xe0, 0x6a, 0x43, 0x1c, 0x3e, 0xeb, 0x2d, 0x14, 0x1d, 0x3b, 0x13, 0xb5, 0xba, 0xac, 0x30, 0xeb, 0xfd, 0x62, 0x2c, 0xbf, 0x5e, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1761 = { .name = "ecdsa_brainpoolp384r1_sha384_1761", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1761_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1761_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1761_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1762 for ECDSA, tcId is 232 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1762_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1762_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1762_sig[] = { 0x1c, 0xfc, 0xe0, 0xce, 0x5f, 0xbf, 0x61, 0x78, 0xab, 0xb6, 0xc2, 0x7d, 0xb2, 0xd4, 0xa4, 0x8b, 0xa5, 0x79, 0x7d, 0xc9, 0xb9, 0x9c, 0xdf, 0xe5, 0x2f, 0x74, 0x9d, 0x07, 0x9c, 0x78, 0x9e, 0xcb, 0xe1, 0xbd, 0x8e, 0x7d, 0xe1, 0x0e, 0x2a, 0xc7, 0xb8, 0x3d, 0x03, 0x81, 0xba, 0x0c, 0x61, 0x1f, 0x24, 0xc3, 0x7f, 0x70, 0x69, 0x1e, 0x44, 0x3b, 0x1b, 0x70, 0x29, 0x31, 0x00, 0xc9, 0x8c, 0xf5, 0x49, 0x4e, 0x0d, 0x6e, 0x0b, 0x14, 0xe4, 0x40, 0x0e, 0xef, 0x72, 0xcd, 0x0a, 0xa1, 0x0f, 0xb4, 0xa6, 0x89, 0xf6, 0xb8, 0x8a, 0xe0, 0xf0, 0xab, 0xc3, 0xaf, 0x7d, 0x09, 0xeb, 0x1b, 0x0c, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1762 = { .name = "ecdsa_brainpoolp384r1_sha384_1762", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1762_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1762_msg, .msglen = 8, .sig = ecdsa_brainpoolp384r1_sha384_1762_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1763 for ECDSA, tcId is 233 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1763_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1763_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1763_sig[] = { 0x8c, 0x29, 0x75, 0x29, 0xb9, 0xce, 0x54, 0x01, 0xf5, 0x1e, 0x5e, 0xae, 0xb5, 0x31, 0x15, 0xf4, 0xb0, 0x70, 0x66, 0xc7, 0x9c, 0x4b, 0x54, 0xa9, 0xfa, 0xc0, 0x06, 0x38, 0xfc, 0xd1, 0x6c, 0xfa, 0xaa, 0x96, 0x26, 0xdc, 0x6d, 0xa6, 0x59, 0x88, 0x33, 0xd9, 0x24, 0xb0, 0xb9, 0x28, 0x67, 0xa6, 0x78, 0x77, 0x62, 0x67, 0x8f, 0x96, 0x85, 0x8f, 0x22, 0x25, 0x05, 0xf1, 0x10, 0xb9, 0x7a, 0x24, 0x98, 0x73, 0x38, 0xd5, 0xe5, 0xdc, 0x0c, 0x29, 0x06, 0x24, 0xc2, 0x43, 0x90, 0x4f, 0x65, 0xc0, 0xb5, 0x78, 0x05, 0x17, 0x83, 0x8a, 0x7b, 0xa2, 0x17, 0xfa, 0xc9, 0xff, 0x59, 0xb6, 0xde, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1763 = { .name = "ecdsa_brainpoolp384r1_sha384_1763", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1763_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1763_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1763_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1764 for ECDSA, tcId is 234 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1764_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1764_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1764_sig[] = { 0x69, 0xfc, 0xb7, 0x52, 0x54, 0x5d, 0x65, 0x76, 0xb0, 0xce, 0x45, 0xf8, 0x90, 0x36, 0x51, 0x83, 0x1e, 0x79, 0xef, 0x0e, 0x17, 0x3a, 0xd1, 0xc8, 0xfd, 0xad, 0x99, 0xd6, 0xb3, 0x80, 0xaa, 0x7c, 0xe4, 0xa5, 0x88, 0xd1, 0x4a, 0xaf, 0x0a, 0x30, 0x7e, 0x5b, 0xb0, 0x5b, 0x81, 0x94, 0x5d, 0x10, 0x3f, 0xc4, 0x15, 0x1f, 0x72, 0xc1, 0x11, 0xcd, 0x2b, 0x0a, 0x38, 0xfe, 0xc1, 0x38, 0x08, 0x3f, 0x7d, 0x05, 0x8b, 0x73, 0x89, 0xa2, 0x66, 0xf7, 0x03, 0x0f, 0xc5, 0x5b, 0x7d, 0x69, 0xe4, 0x90, 0xae, 0xe0, 0x5f, 0x93, 0x1c, 0x55, 0xb7, 0x69, 0xca, 0xe9, 0x32, 0x29, 0xe7, 0xaf, 0x5e, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1764 = { .name = "ecdsa_brainpoolp384r1_sha384_1764", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1764_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1764_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1764_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1765 for ECDSA, tcId is 235 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1765_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1765_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1765_sig[] = { 0x1f, 0xf3, 0x9a, 0xa7, 0xf8, 0x66, 0x34, 0x7b, 0x6c, 0x5a, 0x0b, 0x62, 0xbb, 0xc9, 0x32, 0x94, 0x83, 0x24, 0x5d, 0x52, 0x4e, 0x93, 0xdb, 0xae, 0x9f, 0xc3, 0x50, 0x19, 0x71, 0x43, 0x46, 0x0b, 0xa6, 0xbf, 0xf2, 0xa1, 0x24, 0x01, 0xac, 0x12, 0xc5, 0x75, 0xfc, 0x33, 0x1d, 0x89, 0x04, 0x2a, 0x15, 0x91, 0x93, 0x3f, 0x0e, 0x33, 0x89, 0x4a, 0xbc, 0xb7, 0x2c, 0x0e, 0x53, 0xde, 0x68, 0x89, 0xa0, 0x0e, 0xbc, 0x0a, 0xb5, 0x97, 0x4d, 0x3a, 0xb8, 0x61, 0x3a, 0x49, 0x3b, 0x16, 0x8d, 0xb3, 0x3d, 0xa5, 0x11, 0x8f, 0x3f, 0x34, 0x77, 0xa7, 0x3d, 0xf4, 0x9a, 0xf2, 0x7e, 0xd8, 0x0d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1765 = { .name = "ecdsa_brainpoolp384r1_sha384_1765", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1765_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1765_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1765_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1766 for ECDSA, tcId is 236 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1766_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1766_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1766_sig[] = { 0x61, 0xd3, 0x22, 0xd1, 0x6c, 0xa8, 0x06, 0x20, 0xbb, 0x09, 0x33, 0x33, 0xac, 0x1f, 0x7b, 0x5f, 0x38, 0xad, 0x5d, 0x1b, 0xf3, 0x9b, 0x68, 0x64, 0x71, 0xb3, 0x83, 0x8d, 0x19, 0x4a, 0x43, 0x37, 0xd3, 0xd0, 0xca, 0x30, 0x01, 0x25, 0xd4, 0xb7, 0x24, 0xdc, 0x6c, 0x7c, 0xd1, 0xb0, 0xaa, 0x00, 0x59, 0x5b, 0x3d, 0x2e, 0x24, 0x35, 0x48, 0x10, 0xc5, 0xd2, 0x0d, 0xc8, 0x1b, 0x2b, 0xa3, 0xd7, 0x19, 0x03, 0x6c, 0x7d, 0x40, 0x73, 0xb1, 0x70, 0xd3, 0x1d, 0x21, 0x0f, 0x58, 0xf3, 0xb5, 0xf7, 0xca, 0x0f, 0x03, 0x00, 0x7e, 0x33, 0x70, 0x2b, 0xe1, 0x49, 0x51, 0x7f, 0x8e, 0xd6, 0x9a, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1766 = { .name = "ecdsa_brainpoolp384r1_sha384_1766", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1766_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1766_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1766_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1767 for ECDSA, tcId is 237 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1767_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1767_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1767_sig[] = { 0x7c, 0x8c, 0xd6, 0xb9, 0xab, 0x60, 0x68, 0x29, 0x7f, 0x8b, 0xd2, 0xf4, 0xfb, 0x5c, 0xb8, 0x61, 0x82, 0x84, 0x3b, 0x80, 0xdd, 0x75, 0x82, 0x31, 0x7e, 0x81, 0x78, 0x99, 0xc6, 0x12, 0xbf, 0x13, 0xbc, 0xdf, 0x52, 0x0d, 0xcd, 0x61, 0x35, 0x3f, 0x27, 0xa4, 0x35, 0x6d, 0xbd, 0x16, 0x70, 0x70, 0x43, 0x31, 0xc1, 0x4c, 0x7f, 0x03, 0x3c, 0x5f, 0x6e, 0x5d, 0x9d, 0x2d, 0xe7, 0x6a, 0x90, 0x20, 0xb4, 0x26, 0x35, 0x7d, 0x5d, 0xdb, 0xaf, 0x12, 0x57, 0x65, 0xb8, 0xed, 0x47, 0x6a, 0x18, 0xeb, 0xe1, 0xba, 0xfa, 0xf9, 0x41, 0x7b, 0xbe, 0x0f, 0x8f, 0x96, 0x72, 0xfb, 0xf2, 0x0a, 0x5c, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1767 = { .name = "ecdsa_brainpoolp384r1_sha384_1767", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1767_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1767_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1767_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1768 for ECDSA, tcId is 238 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1768_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1768_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1768_sig[] = { 0x77, 0x11, 0x17, 0x17, 0x74, 0x96, 0xa9, 0x11, 0x8f, 0x28, 0x83, 0xe5, 0x7f, 0x63, 0xa5, 0x89, 0x98, 0xd5, 0x78, 0x79, 0x16, 0x66, 0x59, 0x31, 0x4c, 0x50, 0x8b, 0x60, 0x28, 0x09, 0x4d, 0x4e, 0x16, 0x09, 0x0f, 0x27, 0x7a, 0xcf, 0xd4, 0x7e, 0x09, 0x7f, 0x5b, 0xef, 0x3d, 0xc6, 0x59, 0x39, 0x3e, 0xc4, 0xbc, 0x04, 0x0a, 0xaf, 0x47, 0xf9, 0xac, 0xba, 0x60, 0x93, 0xc8, 0x2c, 0x3e, 0x07, 0xc1, 0xe6, 0x07, 0xee, 0x23, 0x8b, 0xeb, 0xb5, 0xdb, 0x96, 0x59, 0x69, 0x64, 0xbc, 0x3a, 0xf7, 0xe5, 0x7b, 0x80, 0x8c, 0x2f, 0x6b, 0xe0, 0x41, 0x28, 0x46, 0x7a, 0x56, 0x57, 0x7b, 0x40, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1768 = { .name = "ecdsa_brainpoolp384r1_sha384_1768", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1768_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1768_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1768_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1769 for ECDSA, tcId is 239 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1769_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1769_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1769_sig[] = { 0x6a, 0x05, 0x48, 0x8b, 0x75, 0xac, 0xec, 0x47, 0x18, 0xd7, 0x16, 0x4e, 0xc1, 0x9d, 0xcd, 0x6d, 0x35, 0x1a, 0x5f, 0xb2, 0x85, 0x2a, 0xfc, 0x49, 0x15, 0xe9, 0xeb, 0xcd, 0x80, 0x73, 0x89, 0x7a, 0x5d, 0x55, 0x9d, 0xc9, 0xec, 0x56, 0xa5, 0xaa, 0xe4, 0x00, 0xdd, 0x0c, 0xde, 0xef, 0xc7, 0x16, 0x2e, 0x51, 0x1d, 0x8b, 0xf6, 0x0e, 0xbe, 0x46, 0x8f, 0x5e, 0x04, 0x53, 0x33, 0xd4, 0x3d, 0x4b, 0xe5, 0x9b, 0x43, 0x93, 0xc8, 0xe6, 0x50, 0xe3, 0xe6, 0xfa, 0xbc, 0xbf, 0x10, 0xda, 0x7a, 0xe5, 0xf2, 0x31, 0x8b, 0xff, 0x04, 0x74, 0x13, 0xdf, 0x4d, 0xc1, 0x7f, 0xb3, 0x72, 0xd9, 0x8d, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1769 = { .name = "ecdsa_brainpoolp384r1_sha384_1769", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1769_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1769_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1769_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1770 for ECDSA, tcId is 240 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1770_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1770_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1770_sig[] = { 0x85, 0x42, 0xc5, 0x84, 0x27, 0xf1, 0xde, 0xb1, 0xdb, 0xd3, 0x62, 0x27, 0xeb, 0x96, 0xfb, 0xff, 0x15, 0x3e, 0xdb, 0xd2, 0x3e, 0xbd, 0x13, 0xe7, 0x86, 0xa5, 0x2e, 0x48, 0x63, 0xc8, 0x88, 0xa2, 0xdd, 0x50, 0x94, 0x16, 0x54, 0xe5, 0x51, 0xa4, 0xfc, 0xa9, 0x1b, 0x5b, 0xf3, 0x51, 0x97, 0x89, 0x82, 0xb6, 0x8b, 0x14, 0xb6, 0x08, 0x03, 0x29, 0x45, 0xbd, 0xe3, 0xd7, 0x06, 0x1d, 0x5f, 0x68, 0x74, 0x58, 0xed, 0xe1, 0xb3, 0x02, 0xaf, 0x88, 0x42, 0x44, 0x97, 0x88, 0xf8, 0x31, 0x4b, 0x10, 0x85, 0x79, 0xf6, 0xc5, 0x28, 0xbd, 0xc8, 0x00, 0xaf, 0xe6, 0xb2, 0xc8, 0xb1, 0x85, 0xfb, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1770 = { .name = "ecdsa_brainpoolp384r1_sha384_1770", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1770_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1770_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1770_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1771 for ECDSA, tcId is 241 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1771_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1771_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1771_sig[] = { 0x58, 0xfb, 0x97, 0x4b, 0xef, 0x2a, 0xca, 0xf2, 0x54, 0x7c, 0xac, 0xb6, 0xf0, 0xcc, 0x93, 0x4b, 0x59, 0x91, 0xc6, 0x6e, 0xb7, 0xa2, 0x23, 0x75, 0x52, 0x09, 0xac, 0xaf, 0x5b, 0x9e, 0x4b, 0x0f, 0xed, 0x71, 0x2c, 0x76, 0x60, 0x6c, 0x59, 0xc1, 0x01, 0x4b, 0xa2, 0xc2, 0xeb, 0x1b, 0xb3, 0x22, 0x7d, 0x9e, 0x26, 0x5d, 0xc0, 0x9e, 0x03, 0x10, 0x14, 0x18, 0x2b, 0x36, 0x9e, 0x15, 0xb4, 0xa3, 0x4d, 0xba, 0x39, 0x01, 0x06, 0x2d, 0x62, 0x7c, 0xff, 0xab, 0x56, 0x1e, 0x73, 0xd3, 0x8b, 0xbe, 0xa9, 0x07, 0x27, 0x23, 0x46, 0xfb, 0xb2, 0x47, 0xd3, 0xec, 0x63, 0x56, 0x4f, 0xe1, 0xcb, 0xef, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1771 = { .name = "ecdsa_brainpoolp384r1_sha384_1771", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1771_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1771_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1771_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1772 for ECDSA, tcId is 242 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1772_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1772_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1772_sig[] = { 0x06, 0x5e, 0xd5, 0x99, 0x4d, 0x4b, 0x49, 0x8a, 0xf7, 0xf5, 0xab, 0x7d, 0x4c, 0x08, 0x81, 0x0c, 0xb7, 0x6d, 0x24, 0x2b, 0x5d, 0x8b, 0x7b, 0x55, 0x37, 0xcb, 0x8a, 0xfa, 0x6e, 0xa8, 0x52, 0xab, 0x71, 0x4f, 0x66, 0xb1, 0x44, 0xa4, 0x86, 0xd0, 0x5b, 0x2a, 0x56, 0xf2, 0x05, 0x6b, 0xaa, 0x11, 0x37, 0xe6, 0x76, 0xa8, 0xd5, 0x35, 0xd0, 0xa8, 0x18, 0xdc, 0xec, 0xcc, 0xaa, 0x47, 0x83, 0xdb, 0x6d, 0x25, 0x49, 0x25, 0xa0, 0x0d, 0xcf, 0x6a, 0x03, 0x5a, 0x7d, 0x9e, 0x0d, 0x67, 0x7d, 0xc7, 0x81, 0x95, 0xa7, 0xec, 0xcf, 0xc7, 0xbe, 0xee, 0x8e, 0x8e, 0xea, 0x74, 0x56, 0xc3, 0x69, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1772 = { .name = "ecdsa_brainpoolp384r1_sha384_1772", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1772_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1772_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1772_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1773 for ECDSA, tcId is 243 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1773_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1773_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1773_sig[] = { 0x25, 0xc1, 0x47, 0xaa, 0x99, 0xa6, 0x15, 0xa3, 0x4a, 0x6b, 0xd1, 0x52, 0xd1, 0x71, 0x84, 0xc4, 0x8d, 0x28, 0xbf, 0x79, 0xfa, 0x6f, 0xba, 0x92, 0x8e, 0x67, 0x8e, 0xf6, 0x38, 0xa0, 0x64, 0xda, 0x79, 0xd5, 0xf2, 0x53, 0xf7, 0xfe, 0xb8, 0x91, 0x5a, 0x40, 0xd6, 0x43, 0x7b, 0x7b, 0xdf, 0xa5, 0x0c, 0xf7, 0xe1, 0x4c, 0x03, 0xcf, 0x67, 0x89, 0x57, 0x21, 0xcc, 0x2f, 0xbd, 0xd6, 0x2d, 0x6a, 0x0f, 0x89, 0xae, 0xc4, 0x3d, 0xd1, 0x23, 0xd5, 0x1f, 0x81, 0x3d, 0x9b, 0x5c, 0x82, 0x85, 0x0c, 0x07, 0xd0, 0x89, 0xe7, 0xae, 0xa0, 0xdf, 0x2f, 0x59, 0x7e, 0x6a, 0x1c, 0x8e, 0x2b, 0xfd, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1773 = { .name = "ecdsa_brainpoolp384r1_sha384_1773", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1773_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1773_msg, .msglen = 11, .sig = ecdsa_brainpoolp384r1_sha384_1773_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1774 for ECDSA, tcId is 244 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1774_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1774_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1774_sig[] = { 0x85, 0x3d, 0xf8, 0xd6, 0x19, 0xf3, 0xaa, 0x7d, 0xd0, 0xbd, 0xd2, 0x4c, 0x34, 0xd3, 0x87, 0xcc, 0x59, 0xab, 0xff, 0x4a, 0x05, 0x85, 0xe2, 0xe9, 0xc8, 0x20, 0x66, 0xe4, 0xd2, 0xe9, 0x57, 0xb0, 0x43, 0x70, 0x31, 0xbc, 0x12, 0x84, 0xba, 0x3d, 0x39, 0x54, 0x5d, 0x5e, 0x85, 0x0e, 0x27, 0xa3, 0x04, 0x35, 0x98, 0x2c, 0xef, 0xe2, 0xcd, 0x15, 0x81, 0xf3, 0x78, 0xc6, 0xbe, 0x16, 0xea, 0x77, 0x28, 0x4a, 0x17, 0x8b, 0x3f, 0x0d, 0xc1, 0x4c, 0x16, 0x9c, 0x9e, 0xd8, 0x63, 0xcc, 0x4a, 0x8d, 0x8f, 0x78, 0x65, 0x13, 0x80, 0x60, 0x9d, 0xf5, 0xe0, 0x5b, 0x65, 0x04, 0x1d, 0xd7, 0xa2, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1774 = { .name = "ecdsa_brainpoolp384r1_sha384_1774", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1774_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1774_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1774_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1775 for ECDSA, tcId is 245 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1775_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1775_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1775_sig[] = { 0x1b, 0x29, 0xb1, 0xe6, 0x08, 0x95, 0xa4, 0x92, 0x0d, 0x68, 0x61, 0x83, 0x6f, 0xaa, 0x22, 0x77, 0x65, 0x40, 0x46, 0x02, 0xf4, 0xbb, 0xa3, 0xb4, 0xfa, 0xa8, 0x88, 0xa4, 0xb1, 0x69, 0x3a, 0x7c, 0x8b, 0x58, 0x5b, 0x59, 0xb9, 0x42, 0x48, 0x71, 0x22, 0xa9, 0x88, 0x9f, 0x4f, 0x14, 0x54, 0xef, 0x7d, 0x9f, 0xcf, 0xbc, 0x2e, 0xe7, 0x1f, 0xbe, 0x32, 0xa4, 0x26, 0x2e, 0x47, 0x77, 0xda, 0xa3, 0x8f, 0x97, 0x22, 0xb0, 0xa6, 0x75, 0x00, 0xb9, 0x50, 0xaa, 0xe4, 0xb4, 0x69, 0xbf, 0xf9, 0x52, 0x5a, 0xe1, 0xde, 0x38, 0x9c, 0xc1, 0x7a, 0xe7, 0x19, 0xe2, 0x4e, 0xcd, 0x19, 0x72, 0x84, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1775 = { .name = "ecdsa_brainpoolp384r1_sha384_1775", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1775_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1775_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1775_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1776 for ECDSA, tcId is 246 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1776_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1776_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1776_sig[] = { 0x89, 0x37, 0xdd, 0x05, 0x00, 0x4f, 0x6e, 0x78, 0x2a, 0x2c, 0x91, 0xc8, 0xd7, 0x9f, 0x40, 0x79, 0x5d, 0x16, 0x9f, 0xab, 0x6a, 0xf3, 0x85, 0xf9, 0x1f, 0x5c, 0xee, 0x92, 0x8c, 0x2a, 0x22, 0x86, 0x9f, 0x10, 0x93, 0x8e, 0xe2, 0xed, 0xb3, 0xed, 0x0e, 0x0a, 0x0e, 0x38, 0x14, 0x4d, 0x50, 0x64, 0x48, 0xc6, 0x92, 0xb4, 0xb8, 0x87, 0x76, 0xb0, 0x15, 0x8b, 0x99, 0xe1, 0x5e, 0x99, 0xde, 0x39, 0x55, 0xab, 0x9d, 0x88, 0x44, 0x77, 0x41, 0x8c, 0xb7, 0x40, 0xff, 0x91, 0x7a, 0x70, 0x4c, 0x77, 0x07, 0xf3, 0x99, 0x54, 0x18, 0x6a, 0x03, 0x97, 0x7c, 0xbe, 0xdf, 0x34, 0xba, 0xc0, 0x27, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1776 = { .name = "ecdsa_brainpoolp384r1_sha384_1776", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1776_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1776_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1776_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1777 for ECDSA, tcId is 247 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1777_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1777_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1777_sig[] = { 0x1e, 0x42, 0xfa, 0xe8, 0x34, 0x60, 0xbb, 0x8f, 0x30, 0xd7, 0xd6, 0xbe, 0xdf, 0x98, 0x46, 0x22, 0xa5, 0x50, 0x35, 0xd5, 0x02, 0xfc, 0x2d, 0x7f, 0x9c, 0xe5, 0x2c, 0x56, 0x51, 0x5f, 0xd6, 0x6d, 0x1d, 0x59, 0x30, 0x94, 0xd4, 0x16, 0x7f, 0x4a, 0xe0, 0x51, 0xf2, 0xb1, 0x2d, 0x0e, 0x67, 0xab, 0x28, 0x4d, 0x00, 0xf9, 0x8f, 0x29, 0x20, 0x2f, 0x03, 0xb3, 0x79, 0x71, 0x97, 0x8e, 0xeb, 0xf2, 0xfb, 0xfb, 0x94, 0xbe, 0xf2, 0xb4, 0xd6, 0x3f, 0xbe, 0xd8, 0x8c, 0x7d, 0x29, 0xd1, 0x8b, 0x61, 0xca, 0x40, 0x98, 0x82, 0xae, 0xee, 0xa9, 0x7e, 0x30, 0xa0, 0xb1, 0x56, 0xdc, 0xe2, 0xbb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1777 = { .name = "ecdsa_brainpoolp384r1_sha384_1777", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1777_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1777_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1777_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1778 for ECDSA, tcId is 248 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1778_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1778_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1778_sig[] = { 0x2c, 0x07, 0xe1, 0x85, 0x94, 0x1b, 0x20, 0x62, 0x8d, 0xf8, 0x48, 0x08, 0xff, 0x9a, 0x01, 0x0e, 0x5e, 0x11, 0x2c, 0x06, 0x32, 0xcb, 0x32, 0x31, 0x26, 0x6e, 0x84, 0x18, 0xab, 0x06, 0xf6, 0xf1, 0x8e, 0xb4, 0x1f, 0x2f, 0x98, 0xa5, 0xa0, 0xca, 0x1a, 0x46, 0x23, 0x39, 0x22, 0x8f, 0xad, 0x9a, 0x29, 0x05, 0x1e, 0x92, 0x31, 0xd6, 0x8a, 0xb4, 0x62, 0xba, 0x7a, 0xae, 0xe3, 0x9e, 0xde, 0xf6, 0x9c, 0x05, 0xf8, 0x1b, 0xa7, 0xea, 0xb1, 0x61, 0x45, 0x4b, 0xcf, 0x49, 0x69, 0xba, 0x29, 0x34, 0x63, 0xe6, 0xde, 0x2e, 0x78, 0x46, 0x77, 0xe8, 0xd2, 0xa9, 0x29, 0x53, 0x40, 0x0f, 0xe9, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1778 = { .name = "ecdsa_brainpoolp384r1_sha384_1778", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1778_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1778_msg, .msglen = 8, .sig = ecdsa_brainpoolp384r1_sha384_1778_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1779 for ECDSA, tcId is 249 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1779_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1779_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1779_sig[] = { 0x03, 0x06, 0x87, 0x25, 0x3a, 0xd2, 0xcc, 0xb9, 0x43, 0x42, 0xd3, 0x25, 0xa8, 0xad, 0x19, 0x27, 0x8f, 0xf2, 0xac, 0x8c, 0xfe, 0x00, 0x20, 0x9a, 0xb0, 0x30, 0xc7, 0x99, 0x7b, 0x30, 0x08, 0xd4, 0xe9, 0x58, 0x8b, 0xa2, 0x92, 0x2d, 0x62, 0xe7, 0x5a, 0x5e, 0x6c, 0xb8, 0x42, 0x32, 0x4f, 0x72, 0x75, 0x2a, 0xe1, 0xbd, 0xbd, 0x94, 0xe3, 0x5b, 0xc5, 0x78, 0x15, 0xd2, 0x75, 0x8b, 0x1f, 0xdf, 0xee, 0x70, 0x6f, 0x41, 0x0c, 0x0e, 0xd9, 0x66, 0xbe, 0x87, 0x92, 0xee, 0xb5, 0x4c, 0xae, 0x86, 0x31, 0xba, 0xa0, 0xc0, 0x95, 0xe0, 0x74, 0x2d, 0x6d, 0xd7, 0xd1, 0xe0, 0x41, 0x9b, 0xc5, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1779 = { .name = "ecdsa_brainpoolp384r1_sha384_1779", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1779_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1779_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1779_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1780 for ECDSA, tcId is 250 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1780_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1780_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1780_sig[] = { 0x39, 0xab, 0xdc, 0x19, 0x43, 0x60, 0x8e, 0xf4, 0xf5, 0xc4, 0x6b, 0xac, 0x7a, 0xe1, 0xe2, 0x3d, 0x2e, 0x32, 0x52, 0xe6, 0xfc, 0xc2, 0xb0, 0xce, 0x8f, 0x41, 0x50, 0x1d, 0xf0, 0x24, 0xb7, 0xd2, 0x97, 0x36, 0x24, 0x01, 0xbe, 0x87, 0xb1, 0x22, 0xbb, 0x9c, 0xcd, 0x98, 0xda, 0xa5, 0x33, 0xce, 0x58, 0xf8, 0xd8, 0x08, 0x8f, 0xaf, 0x75, 0xfa, 0x06, 0xd7, 0x6e, 0x8c, 0xc1, 0x0a, 0x1d, 0x7b, 0xcf, 0xc2, 0x25, 0xd5, 0x8b, 0x75, 0xd8, 0xa2, 0x04, 0xe6, 0xa5, 0xce, 0x4d, 0x6d, 0x95, 0x14, 0x6e, 0x85, 0x3b, 0x68, 0x18, 0x74, 0x6c, 0xeb, 0xf7, 0x86, 0x4f, 0xac, 0xb4, 0x4a, 0x21, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1780 = { .name = "ecdsa_brainpoolp384r1_sha384_1780", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1780_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1780_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1780_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1781 for ECDSA, tcId is 251 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1781_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1781_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1781_sig[] = { 0x51, 0x0f, 0x56, 0x02, 0xdb, 0xf3, 0xa0, 0x95, 0x27, 0x6e, 0x99, 0xa6, 0x7a, 0x65, 0x24, 0x92, 0x17, 0xc6, 0xe6, 0xc1, 0x68, 0xa6, 0xca, 0xa6, 0x4f, 0x5a, 0xad, 0x80, 0x6b, 0x57, 0xd2, 0x90, 0x02, 0xe6, 0x07, 0x86, 0xc6, 0xf3, 0xed, 0x27, 0x46, 0x90, 0x58, 0x3d, 0x18, 0xcd, 0xe7, 0x2b, 0x68, 0x75, 0x68, 0xeb, 0x41, 0xaf, 0x3f, 0x5c, 0xcf, 0x7f, 0x2b, 0x16, 0xe6, 0x7a, 0x1f, 0x4f, 0xbc, 0xb3, 0xbf, 0x68, 0x3d, 0x86, 0xe4, 0x9a, 0x61, 0xff, 0xf0, 0xc2, 0x8f, 0xc0, 0x3d, 0x79, 0x7a, 0x72, 0x2a, 0xf9, 0xb0, 0x2c, 0x39, 0x1a, 0x49, 0xf5, 0x66, 0x9c, 0x79, 0x68, 0xdb, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1781 = { .name = "ecdsa_brainpoolp384r1_sha384_1781", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1781_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1781_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1781_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1782 for ECDSA, tcId is 252 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1782_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1782_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1782_sig[] = { 0x84, 0xbe, 0xda, 0xfb, 0x46, 0x87, 0x32, 0x74, 0xef, 0x91, 0xde, 0x67, 0xb2, 0x03, 0x75, 0xc7, 0x69, 0x8a, 0xfb, 0xe3, 0x7f, 0x3d, 0x5b, 0xac, 0x1b, 0xbc, 0xab, 0xcb, 0xb4, 0xaa, 0x66, 0x16, 0xb3, 0x45, 0x26, 0x7f, 0xc9, 0xd5, 0x28, 0x5b, 0xaa, 0xcc, 0xa6, 0xf1, 0xb6, 0x94, 0x61, 0x9f, 0x89, 0xb3, 0x91, 0x65, 0x94, 0x9c, 0xc4, 0x35, 0x50, 0x3f, 0x4a, 0x6a, 0xc5, 0x75, 0x4d, 0x2a, 0xfd, 0xdb, 0x99, 0xb5, 0x5a, 0x3b, 0xa8, 0x40, 0x04, 0x0d, 0x51, 0x62, 0x4a, 0x09, 0x85, 0x25, 0x1f, 0x2c, 0x97, 0x87, 0xb5, 0xcb, 0x26, 0x6a, 0x21, 0x81, 0x43, 0xdb, 0x5b, 0x04, 0x18, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1782 = { .name = "ecdsa_brainpoolp384r1_sha384_1782", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1782_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1782_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1782_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1783 for ECDSA, tcId is 253 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1783_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1783_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1783_sig[] = { 0x25, 0x1b, 0x50, 0xb6, 0x3f, 0xe1, 0xcb, 0xae, 0x21, 0x04, 0x31, 0xbd, 0x1e, 0x76, 0x56, 0x3f, 0x07, 0x84, 0x54, 0xf7, 0xc2, 0xb2, 0xe4, 0x75, 0xab, 0xc1, 0xb7, 0x75, 0x89, 0x20, 0xf0, 0x3b, 0x97, 0x11, 0x12, 0xc6, 0x2c, 0xa6, 0x13, 0x2a, 0x48, 0x07, 0x38, 0x76, 0x8e, 0xdc, 0x35, 0xd3, 0x8b, 0x8c, 0x16, 0x46, 0x90, 0x06, 0x01, 0xde, 0x4f, 0xc9, 0xc9, 0xdb, 0xea, 0x22, 0x8c, 0xe9, 0xc9, 0xed, 0xbb, 0xce, 0x7c, 0x31, 0xa4, 0x2d, 0x3c, 0xba, 0x58, 0x0e, 0x19, 0x1c, 0x92, 0xd1, 0x23, 0xe1, 0x1c, 0x06, 0x34, 0xb8, 0x7b, 0xc0, 0x94, 0xcf, 0xf1, 0x6e, 0x20, 0x9b, 0x69, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1783 = { .name = "ecdsa_brainpoolp384r1_sha384_1783", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1783_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1783_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1783_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1784 for ECDSA, tcId is 254 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1784_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1784_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1784_sig[] = { 0x34, 0xb3, 0xc6, 0xaf, 0xc0, 0xfa, 0x7a, 0x75, 0x38, 0x5e, 0x3d, 0x0d, 0xbf, 0xb2, 0x37, 0xb5, 0xc7, 0x6a, 0xfe, 0x16, 0xf0, 0xf6, 0x9e, 0x44, 0x53, 0x3b, 0x7a, 0xc3, 0xab, 0xf4, 0x23, 0x37, 0x99, 0x20, 0x15, 0x04, 0xeb, 0xec, 0x03, 0x10, 0xb2, 0xfd, 0x7e, 0x86, 0x7f, 0x9f, 0xdd, 0x01, 0x2f, 0x83, 0x1f, 0x59, 0x55, 0xc2, 0xe4, 0xfa, 0x5b, 0x29, 0x8b, 0xef, 0x8f, 0x09, 0x73, 0x2d, 0x0b, 0x15, 0xea, 0x7c, 0xe1, 0x41, 0xa6, 0xdc, 0xdb, 0xbc, 0x60, 0x37, 0x8f, 0xd9, 0xc9, 0x69, 0x33, 0x9e, 0x82, 0x6d, 0xef, 0x56, 0x81, 0xe9, 0x6f, 0x0a, 0x1d, 0xbc, 0x36, 0xad, 0xaf, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1784 = { .name = "ecdsa_brainpoolp384r1_sha384_1784", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1784_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1784_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1784_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1785 for ECDSA, tcId is 255 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1785_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1785_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1785_sig[] = { 0x33, 0x5b, 0xf6, 0xb1, 0x52, 0x64, 0x7b, 0xdf, 0x8a, 0x3c, 0x5d, 0xe8, 0xde, 0x3c, 0x69, 0x83, 0x21, 0x01, 0x90, 0x26, 0x79, 0xbc, 0x80, 0x26, 0x12, 0xd2, 0xf4, 0xbf, 0xf8, 0xc7, 0xed, 0x7d, 0xf2, 0x25, 0xa0, 0x80, 0xef, 0xf6, 0xde, 0xaa, 0x5d, 0xac, 0xc7, 0x40, 0x16, 0xc5, 0xce, 0x3d, 0x7f, 0x1b, 0x11, 0x6f, 0x8d, 0x27, 0xd8, 0x94, 0xff, 0xe6, 0xab, 0x57, 0x54, 0x68, 0x51, 0xba, 0xa5, 0x51, 0x3d, 0x11, 0x0e, 0x69, 0x60, 0xd7, 0x13, 0x26, 0x3a, 0xfd, 0x54, 0x2e, 0x97, 0xf0, 0x1f, 0x4d, 0xf4, 0xf7, 0xb6, 0x4d, 0x49, 0x49, 0x6d, 0x22, 0xc2, 0xf6, 0xc5, 0x60, 0x50, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1785 = { .name = "ecdsa_brainpoolp384r1_sha384_1785", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1785_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1785_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1785_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1786 for ECDSA, tcId is 256 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1786_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1786_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1786_sig[] = { 0x32, 0x9c, 0x5d, 0x35, 0xad, 0xef, 0x35, 0x73, 0x39, 0xf9, 0x01, 0x65, 0x7a, 0xf5, 0x5d, 0xa7, 0xb0, 0x41, 0xe8, 0xc1, 0x83, 0x74, 0xc7, 0x9a, 0xb4, 0x44, 0x49, 0xb2, 0x7a, 0x83, 0x02, 0x28, 0x00, 0xf0, 0xc9, 0x38, 0x50, 0x3b, 0xdd, 0x85, 0xb7, 0x88, 0x4a, 0x32, 0xdf, 0x90, 0x57, 0xfe, 0x74, 0xf5, 0x61, 0x01, 0xc7, 0xf7, 0xb3, 0x6d, 0x63, 0x4c, 0x21, 0x75, 0xa0, 0xd1, 0x7c, 0xec, 0x05, 0x46, 0xb6, 0xcd, 0xf1, 0x8e, 0x86, 0xef, 0x9a, 0xbb, 0x6d, 0x6d, 0x0b, 0xcc, 0xdd, 0x04, 0x42, 0xaf, 0x12, 0x55, 0xe0, 0x2a, 0x5d, 0xde, 0x70, 0x78, 0x40, 0xdb, 0x48, 0x54, 0x31, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1786 = { .name = "ecdsa_brainpoolp384r1_sha384_1786", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1786_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1786_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1786_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1787 for ECDSA, tcId is 257 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1787_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1787_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1787_sig[] = { 0x1a, 0xc3, 0xd4, 0x63, 0xdf, 0x22, 0x19, 0x45, 0xad, 0xbd, 0x28, 0xa7, 0x46, 0x81, 0x7b, 0xa8, 0x3d, 0x59, 0x57, 0xd9, 0x56, 0x57, 0xc7, 0x24, 0xf1, 0xad, 0x68, 0xb9, 0x8b, 0xde, 0x6b, 0xf7, 0x95, 0x9f, 0x73, 0x63, 0x25, 0x3e, 0xce, 0x17, 0x4d, 0x7a, 0xed, 0x34, 0x64, 0x10, 0xdc, 0x21, 0x2a, 0x5a, 0x30, 0xa8, 0x19, 0x1a, 0x48, 0x83, 0xba, 0xbf, 0x69, 0xba, 0x88, 0x3a, 0xf7, 0xf5, 0x06, 0x7b, 0xc9, 0x90, 0xf8, 0xda, 0xc4, 0xa3, 0x5b, 0xc6, 0xef, 0x38, 0x71, 0x02, 0xfa, 0xd8, 0x5d, 0x26, 0x85, 0x64, 0xc6, 0x12, 0x46, 0xdf, 0xf1, 0x75, 0x10, 0x63, 0x41, 0x68, 0xa1, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1787 = { .name = "ecdsa_brainpoolp384r1_sha384_1787", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1787_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1787_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1787_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1788 for ECDSA, tcId is 258 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1788_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1788_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1788_sig[] = { 0x5c, 0xc9, 0xa0, 0x74, 0xe1, 0x0c, 0x41, 0x72, 0x4d, 0x55, 0x50, 0x2d, 0x72, 0x43, 0x0d, 0x70, 0x7b, 0xa7, 0x55, 0xc4, 0x1d, 0x56, 0x8d, 0x79, 0x98, 0x7d, 0xc3, 0xcd, 0xe4, 0x5c, 0xf6, 0xf7, 0x03, 0x41, 0xf9, 0x1f, 0xa2, 0xa2, 0x0e, 0x3b, 0xa5, 0xb5, 0x7f, 0xeb, 0xde, 0x05, 0xb5, 0xc4, 0x6d, 0x80, 0x25, 0x16, 0x2a, 0xf3, 0x0c, 0xfa, 0xb2, 0xcd, 0x16, 0xa1, 0x34, 0x2b, 0x41, 0x74, 0xae, 0x17, 0x1d, 0xc3, 0xc7, 0x5b, 0xc1, 0xfe, 0x99, 0x4e, 0xc6, 0xc0, 0x35, 0x92, 0x95, 0xf0, 0x39, 0x0e, 0x65, 0x85, 0x6a, 0xec, 0x5e, 0xbd, 0x89, 0x4a, 0x15, 0xc6, 0x85, 0x77, 0xab, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1788 = { .name = "ecdsa_brainpoolp384r1_sha384_1788", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1788_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1788_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1788_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1789 for ECDSA, tcId is 259 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1789_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1789_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1789_sig[] = { 0x0c, 0x13, 0xdd, 0xef, 0x4e, 0x7e, 0x83, 0x16, 0x30, 0x90, 0x55, 0x9f, 0xa5, 0x92, 0xed, 0xba, 0x35, 0xa9, 0x2d, 0x66, 0xe5, 0x4a, 0x34, 0xaa, 0xe2, 0x90, 0x5a, 0x10, 0xb0, 0x3a, 0x31, 0x6f, 0xfd, 0x0c, 0x01, 0x3f, 0x7b, 0x06, 0x19, 0x09, 0xf3, 0xa9, 0x24, 0xac, 0x25, 0xf1, 0xc9, 0x0a, 0x40, 0xab, 0x2d, 0x40, 0xb4, 0x00, 0x7f, 0xec, 0x32, 0xa6, 0x47, 0x78, 0x4a, 0xe4, 0xa2, 0xd5, 0xcb, 0x4f, 0x70, 0x42, 0xcc, 0xe8, 0xc3, 0x74, 0x29, 0x8c, 0x34, 0x51, 0x80, 0xd0, 0xe3, 0x8a, 0xaa, 0x5d, 0x73, 0x87, 0x5e, 0xb8, 0x59, 0xb0, 0x82, 0xd0, 0xa1, 0x7c, 0xd4, 0x96, 0xd2, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1789 = { .name = "ecdsa_brainpoolp384r1_sha384_1789", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1789_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1789_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1789_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1790 for ECDSA, tcId is 260 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1790_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1790_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1790_sig[] = { 0x0a, 0xf7, 0x4a, 0x3e, 0xa3, 0xc4, 0x12, 0x17, 0x11, 0xd1, 0x0f, 0x2e, 0x4d, 0x72, 0x50, 0x31, 0xb1, 0xb0, 0x8c, 0xf8, 0xef, 0xf2, 0x28, 0x34, 0x74, 0x84, 0x02, 0x45, 0x3b, 0x8e, 0xaa, 0x00, 0xb1, 0x57, 0x86, 0x11, 0xee, 0x45, 0x22, 0x07, 0x53, 0xbc, 0xbd, 0x20, 0xa3, 0x91, 0x40, 0x2e, 0x15, 0xeb, 0x2d, 0xaf, 0x4f, 0xb9, 0x32, 0x12, 0x83, 0xf6, 0x91, 0x57, 0xe7, 0xc7, 0x47, 0xd6, 0x37, 0x67, 0x59, 0xd0, 0x13, 0x0e, 0x79, 0x05, 0x52, 0xb4, 0xfd, 0x89, 0x57, 0x71, 0x39, 0xa2, 0x8d, 0xae, 0xd4, 0x3b, 0xa9, 0x76, 0xa7, 0x6b, 0xec, 0x1c, 0x7d, 0x53, 0xa4, 0x9c, 0x98, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1790 = { .name = "ecdsa_brainpoolp384r1_sha384_1790", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1790_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1790_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1790_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1791 for ECDSA, tcId is 261 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1791_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1791_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1791_sig[] = { 0x67, 0x4b, 0x6a, 0xc9, 0x89, 0x0d, 0xcb, 0xab, 0xa4, 0xd7, 0x44, 0xce, 0x99, 0x92, 0xe9, 0xdc, 0x69, 0x8e, 0x52, 0x4b, 0x0d, 0x1c, 0xf4, 0xd7, 0x6d, 0x35, 0x53, 0x72, 0x63, 0x1d, 0x6f, 0x7d, 0xce, 0x6f, 0xf5, 0xa6, 0x07, 0x27, 0x3c, 0x0c, 0x14, 0x69, 0xd8, 0xe5, 0xb1, 0x2a, 0xb6, 0x0e, 0x7c, 0xf8, 0xf9, 0x83, 0x28, 0xf9, 0x20, 0xd2, 0x94, 0x75, 0xd5, 0xcb, 0x38, 0xbc, 0x35, 0xfe, 0x71, 0xff, 0xd8, 0x7f, 0x1b, 0xe7, 0x88, 0xd2, 0x02, 0x90, 0x8e, 0xb9, 0x39, 0xc7, 0x6b, 0x76, 0x94, 0xce, 0xcf, 0xc2, 0x1d, 0xae, 0x50, 0xf4, 0x33, 0x77, 0x3d, 0x75, 0xe2, 0x79, 0xe3, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1791 = { .name = "ecdsa_brainpoolp384r1_sha384_1791", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1791_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1791_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1791_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1792 for ECDSA, tcId is 262 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1792_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1792_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1792_sig[] = { 0x89, 0xab, 0x51, 0x35, 0x7a, 0x7d, 0xb3, 0x6d, 0x1c, 0x26, 0xb1, 0xe9, 0x06, 0x08, 0x8b, 0x9a, 0xa3, 0xe3, 0xd5, 0x96, 0x58, 0xe2, 0xbe, 0xd5, 0x5d, 0xd0, 0x3d, 0xeb, 0x56, 0x90, 0x86, 0x77, 0xa5, 0x9a, 0x4b, 0x24, 0xcd, 0x65, 0xea, 0xe6, 0x35, 0x1b, 0x03, 0xa9, 0x30, 0x0a, 0xe5, 0x18, 0x39, 0x5e, 0x10, 0xa6, 0xac, 0xcc, 0x3c, 0x6e, 0x56, 0x68, 0x44, 0xc4, 0xfa, 0xc4, 0xca, 0xa2, 0xa8, 0xce, 0xda, 0x47, 0x51, 0xdf, 0x5a, 0xab, 0x5b, 0x32, 0x75, 0xf8, 0x25, 0xc5, 0x94, 0x0b, 0x1d, 0xb6, 0x08, 0x86, 0xf1, 0x39, 0x53, 0x18, 0x11, 0x0c, 0xa5, 0x3c, 0x69, 0x32, 0x83, 0x52, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1792 = { .name = "ecdsa_brainpoolp384r1_sha384_1792", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1792_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1792_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1792_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1793 for ECDSA, tcId is 263 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1793_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1793_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1793_sig[] = { 0x5b, 0x3f, 0x30, 0xc8, 0x3a, 0xca, 0xa0, 0x88, 0xa3, 0x72, 0xd5, 0x58, 0x82, 0x29, 0xa3, 0x55, 0x5d, 0xba, 0x14, 0xfb, 0xed, 0x8c, 0xbc, 0x29, 0x35, 0xf6, 0xf6, 0xea, 0xbd, 0x80, 0x77, 0xc8, 0x53, 0xdb, 0xc7, 0xb2, 0xe3, 0x54, 0x68, 0x3d, 0x41, 0xdc, 0xe5, 0xb5, 0xd4, 0xc9, 0xde, 0x58, 0x76, 0x70, 0x24, 0x28, 0x0e, 0x5e, 0x13, 0x1b, 0x4a, 0x46, 0xd6, 0x6b, 0x35, 0xf2, 0xb3, 0x04, 0xa5, 0x5e, 0x64, 0x81, 0xf0, 0x94, 0xb3, 0x55, 0xe8, 0x73, 0xa7, 0xf8, 0x61, 0x02, 0x96, 0x02, 0x09, 0x7a, 0x4d, 0x30, 0x01, 0x36, 0xea, 0x00, 0x5b, 0xf5, 0xfb, 0xc1, 0x08, 0x43, 0xba, 0x95, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1793 = { .name = "ecdsa_brainpoolp384r1_sha384_1793", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1793_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1793_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1793_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1794 for ECDSA, tcId is 264 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1794_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1794_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1794_sig[] = { 0x32, 0xe8, 0xab, 0xc3, 0x66, 0x23, 0xfc, 0xb2, 0x03, 0x46, 0x62, 0x10, 0x50, 0x66, 0xaf, 0xd7, 0x1f, 0xae, 0x4d, 0x75, 0xb8, 0x30, 0x0e, 0x32, 0xbe, 0xf4, 0x63, 0x2f, 0xac, 0x65, 0xec, 0xbd, 0x28, 0x5c, 0x40, 0x61, 0xca, 0x64, 0xf6, 0x81, 0x3e, 0xdd, 0x2a, 0xbf, 0xbc, 0xc2, 0x13, 0xe8, 0x0b, 0x00, 0x13, 0xe2, 0xa5, 0x6c, 0x36, 0xde, 0x1b, 0xa1, 0x9a, 0x9c, 0x30, 0x48, 0x69, 0xf3, 0xd6, 0x98, 0x06, 0xec, 0xe6, 0xf4, 0xa8, 0x01, 0xc2, 0x7a, 0x3d, 0x4f, 0x1c, 0x20, 0xaf, 0x5e, 0xb1, 0x75, 0xe9, 0x5e, 0x73, 0x4e, 0xf6, 0x37, 0x65, 0x3a, 0x6c, 0xdb, 0x2a, 0x9e, 0xcb, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1794 = { .name = "ecdsa_brainpoolp384r1_sha384_1794", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1794_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1794_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1794_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1795 for ECDSA, tcId is 265 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1795_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1795_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1795_sig[] = { 0x45, 0xdf, 0x52, 0x9d, 0x25, 0x31, 0xd4, 0x8c, 0xab, 0x41, 0x2b, 0x68, 0x0c, 0xad, 0xb5, 0x32, 0xcd, 0x62, 0x25, 0x30, 0x4f, 0xb7, 0x42, 0x84, 0x1c, 0x89, 0x54, 0x59, 0x59, 0xb7, 0x9e, 0x19, 0x8c, 0x3b, 0x12, 0x97, 0xdc, 0x5c, 0x4b, 0xd9, 0xaa, 0x75, 0x49, 0x19, 0x3e, 0x07, 0x80, 0xd1, 0x5c, 0x8f, 0x62, 0xfc, 0x48, 0x52, 0x06, 0x9d, 0x35, 0x23, 0x2a, 0xab, 0x77, 0x25, 0x71, 0x5e, 0x91, 0x57, 0xd1, 0xaa, 0x68, 0x80, 0x50, 0xf8, 0x96, 0xd6, 0x90, 0xdc, 0xd4, 0xe4, 0x1b, 0xaa, 0x66, 0xea, 0x6f, 0x9b, 0x34, 0xde, 0xea, 0x5a, 0x60, 0x7c, 0xc3, 0x91, 0xff, 0x09, 0x7d, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1795 = { .name = "ecdsa_brainpoolp384r1_sha384_1795", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1795_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1795_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1795_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1796 for ECDSA, tcId is 266 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1796_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1796_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1796_sig[] = { 0x10, 0x20, 0x07, 0x8f, 0x6e, 0x57, 0x17, 0x53, 0x8f, 0xef, 0x87, 0x9c, 0x56, 0x35, 0xd4, 0xd7, 0xd5, 0x27, 0x21, 0xbe, 0x15, 0x29, 0x58, 0x5b, 0x0a, 0x77, 0x08, 0x3c, 0x5f, 0x34, 0x7f, 0x21, 0xb1, 0x31, 0x6d, 0x03, 0x99, 0xa8, 0xbc, 0x17, 0xb3, 0x67, 0x33, 0x64, 0x75, 0xa6, 0xd9, 0x7e, 0x1a, 0xde, 0x87, 0xed, 0x2e, 0x2b, 0xdb, 0x24, 0x81, 0xa0, 0x27, 0xdd, 0x3f, 0xa5, 0xb9, 0x3a, 0x81, 0xf4, 0xff, 0xdc, 0x33, 0xd4, 0xa9, 0x08, 0xd9, 0x7b, 0x40, 0xf8, 0x41, 0x82, 0x1c, 0x02, 0x92, 0x9b, 0x03, 0x61, 0x35, 0xf4, 0x19, 0x75, 0x2c, 0x88, 0xd5, 0x75, 0x09, 0xd1, 0x7b, 0xef, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1796 = { .name = "ecdsa_brainpoolp384r1_sha384_1796", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1796_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1796_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1796_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1797 for ECDSA, tcId is 267 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1797_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1797_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1797_sig[] = { 0x0d, 0x93, 0xd5, 0xc6, 0x37, 0x41, 0x44, 0x7f, 0xdb, 0xed, 0x17, 0xa7, 0x38, 0xa4, 0x1e, 0xfd, 0xbb, 0x70, 0x93, 0x33, 0x37, 0x97, 0x49, 0x9f, 0xe7, 0x0d, 0x5c, 0x54, 0xbc, 0x86, 0xb6, 0xbb, 0x65, 0x04, 0x24, 0xbb, 0xd6, 0x49, 0x07, 0x37, 0x5e, 0xf9, 0x2e, 0xfd, 0x13, 0xee, 0x25, 0xec, 0x66, 0x19, 0x2a, 0xc1, 0xfb, 0x22, 0xdb, 0x75, 0x88, 0x1d, 0xf7, 0xae, 0x89, 0x0d, 0xa4, 0x95, 0x3a, 0x74, 0xfa, 0x95, 0x4e, 0x0b, 0x5e, 0x6b, 0x69, 0x2e, 0xca, 0x23, 0xc3, 0xbc, 0xfd, 0x5f, 0xb3, 0x22, 0x8d, 0x09, 0x2d, 0x99, 0x91, 0x07, 0x1b, 0xaa, 0x4b, 0x6e, 0x8f, 0xa2, 0x06, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1797 = { .name = "ecdsa_brainpoolp384r1_sha384_1797", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1797_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1797_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1797_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1798 for ECDSA, tcId is 268 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1798_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1798_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1798_sig[] = { 0x04, 0x93, 0x34, 0xbf, 0x43, 0xf7, 0xd9, 0xc2, 0x13, 0x44, 0x3c, 0x96, 0xc4, 0xba, 0x11, 0x9b, 0x33, 0x57, 0x57, 0xa3, 0xe6, 0x9b, 0xa8, 0x73, 0xbd, 0xc4, 0xef, 0x64, 0x21, 0x39, 0xb8, 0x68, 0x7a, 0x8a, 0x57, 0x82, 0xb6, 0xa9, 0x00, 0x21, 0x1d, 0x6f, 0xc1, 0xec, 0xf1, 0x4c, 0x2c, 0xf9, 0x18, 0x29, 0x90, 0xbe, 0xe4, 0x78, 0x72, 0x67, 0xb6, 0xd6, 0x3b, 0x7e, 0xa6, 0x7a, 0x25, 0x85, 0x29, 0x51, 0xd1, 0x45, 0xcf, 0x5a, 0x39, 0xd2, 0x01, 0xba, 0xbe, 0x9f, 0x3f, 0x11, 0x20, 0x92, 0x4e, 0x5b, 0x28, 0x3e, 0xeb, 0x63, 0x6a, 0x8f, 0xbb, 0xb0, 0xc2, 0xfc, 0x66, 0xdd, 0xf7, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1798 = { .name = "ecdsa_brainpoolp384r1_sha384_1798", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1798_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1798_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1798_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1799 for ECDSA, tcId is 269 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1799_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1799_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1799_sig[] = { 0x6b, 0x0c, 0x24, 0x8f, 0xa3, 0x93, 0x17, 0x62, 0x1a, 0xf5, 0x34, 0x4f, 0x97, 0x8b, 0xd7, 0x65, 0xec, 0x61, 0x25, 0xcc, 0xe2, 0xf4, 0x0c, 0xdd, 0xdf, 0xa4, 0x0f, 0x7e, 0x8c, 0x7f, 0x4f, 0xe9, 0x21, 0x63, 0x54, 0xbd, 0xaf, 0xc2, 0x06, 0x72, 0x88, 0xc5, 0x67, 0x94, 0xeb, 0x5d, 0x17, 0xd2, 0x75, 0x84, 0xc0, 0x77, 0xad, 0x35, 0xb5, 0x8f, 0xb2, 0x94, 0x03, 0xb9, 0xc2, 0xc6, 0x41, 0x27, 0x17, 0x94, 0xe2, 0x6b, 0x24, 0x1d, 0xfc, 0x8d, 0x74, 0xd4, 0xda, 0xa7, 0xde, 0x3f, 0x07, 0x6c, 0x9c, 0x4c, 0x6d, 0x39, 0x09, 0xe2, 0xc0, 0xab, 0x9b, 0x9a, 0x70, 0x2c, 0x08, 0x12, 0xee, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1799 = { .name = "ecdsa_brainpoolp384r1_sha384_1799", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1799_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1799_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1799_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1800 for ECDSA, tcId is 270 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1800_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1800_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1800_sig[] = { 0x8c, 0x04, 0x8a, 0x8e, 0xab, 0xa1, 0xb6, 0x54, 0xc3, 0xf6, 0x87, 0xdf, 0x01, 0x71, 0x4d, 0xf3, 0xb6, 0x1b, 0x98, 0xe5, 0x78, 0x20, 0x5c, 0x80, 0x4a, 0x72, 0xbd, 0xe3, 0x2d, 0xaa, 0xe8, 0x7b, 0x37, 0xfd, 0x2f, 0x9f, 0x5f, 0x82, 0xb3, 0xc5, 0xf7, 0xb4, 0xa0, 0x07, 0xea, 0xa1, 0x98, 0x6a, 0x30, 0xb7, 0x9f, 0x44, 0xc8, 0x3b, 0xd5, 0x2e, 0x53, 0x7c, 0xcf, 0x9a, 0x35, 0x77, 0x2f, 0xab, 0x5b, 0xa9, 0xfa, 0xf0, 0xde, 0xcb, 0xe3, 0x47, 0x63, 0xb5, 0xae, 0x28, 0x09, 0x84, 0xac, 0x7f, 0xf2, 0x7f, 0xb8, 0xdb, 0xad, 0x57, 0x21, 0x8c, 0x36, 0x4b, 0x39, 0xdc, 0x2a, 0x03, 0xb5, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1800 = { .name = "ecdsa_brainpoolp384r1_sha384_1800", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1800_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1800_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1800_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1801 for ECDSA, tcId is 271 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1801_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1801_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1801_sig[] = { 0x2e, 0xbc, 0xd9, 0x4d, 0x17, 0x12, 0x24, 0x42, 0xd3, 0xe7, 0xbd, 0x12, 0xc4, 0xb6, 0x09, 0xdb, 0xce, 0xef, 0x69, 0xb3, 0x24, 0x60, 0x92, 0xe4, 0xad, 0x0c, 0x83, 0xd6, 0x02, 0xc2, 0x51, 0x6e, 0x09, 0x16, 0x9b, 0x59, 0x2f, 0xdf, 0x61, 0xa7, 0xe8, 0x81, 0xe2, 0x62, 0xbf, 0x49, 0x57, 0x14, 0x70, 0x39, 0x2c, 0xd4, 0xe5, 0xe1, 0x76, 0x06, 0x60, 0x8c, 0x2e, 0x4f, 0xff, 0xf7, 0xa9, 0xc0, 0xe9, 0x17, 0x11, 0x98, 0x91, 0x5c, 0xf7, 0xe5, 0x06, 0x33, 0x26, 0x3d, 0x7e, 0x07, 0x19, 0x54, 0xf1, 0x2e, 0xbb, 0x1a, 0x4f, 0x4a, 0xcc, 0x76, 0x83, 0xa1, 0x60, 0xd6, 0x4d, 0xda, 0x3b, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1801 = { .name = "ecdsa_brainpoolp384r1_sha384_1801", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1801_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1801_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1801_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1802 for ECDSA, tcId is 272 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1802_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1802_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1802_sig[] = { 0x4d, 0x71, 0x91, 0x59, 0x6f, 0x50, 0xb8, 0x30, 0x9e, 0x14, 0x90, 0x89, 0x5e, 0x62, 0xb1, 0x6c, 0x41, 0x5c, 0x1f, 0x7b, 0x50, 0xd2, 0xa4, 0x26, 0x09, 0x04, 0xbc, 0x5b, 0x7b, 0xff, 0xde, 0x4f, 0x92, 0x68, 0x7b, 0x02, 0x9f, 0x32, 0x6f, 0x4b, 0x48, 0xe6, 0xfd, 0x8d, 0x1f, 0x19, 0xee, 0x50, 0x0a, 0x54, 0x51, 0x5f, 0xad, 0x47, 0xbb, 0x08, 0xe5, 0x86, 0x69, 0x7f, 0x28, 0xe2, 0xbb, 0xf9, 0x8d, 0x75, 0x75, 0xc7, 0xbb, 0x91, 0x1b, 0xd7, 0x4d, 0xb3, 0xd9, 0xaa, 0x84, 0x84, 0x75, 0xbb, 0xdd, 0xac, 0x66, 0x18, 0x1e, 0xfd, 0x63, 0xa2, 0x49, 0x18, 0xde, 0xc2, 0xdd, 0x01, 0xa2, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1802 = { .name = "ecdsa_brainpoolp384r1_sha384_1802", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1802_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1802_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1802_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1803 for ECDSA, tcId is 273 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1803_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1803_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1803_sig[] = { 0x6f, 0xde, 0xfa, 0x7d, 0x91, 0x2c, 0xd2, 0xc3, 0x0c, 0xf1, 0x2b, 0xae, 0x60, 0x8a, 0xb8, 0x7d, 0xe1, 0x2d, 0x49, 0xee, 0x08, 0x4d, 0x23, 0x90, 0x81, 0xe8, 0x92, 0x46, 0xe4, 0x93, 0x9d, 0x60, 0x71, 0xdf, 0xd1, 0x1f, 0x74, 0x01, 0x89, 0x4a, 0xee, 0x9c, 0x13, 0xd1, 0x10, 0x13, 0xec, 0x75, 0x79, 0x37, 0x49, 0x5d, 0xc0, 0xa3, 0xa3, 0xd6, 0x6c, 0x43, 0x94, 0x5d, 0x99, 0xcd, 0x98, 0xdc, 0x84, 0x2a, 0xe8, 0x67, 0x7f, 0x14, 0xd6, 0x49, 0xb2, 0x2c, 0x1e, 0x7e, 0xc1, 0x48, 0x57, 0xa0, 0x56, 0x39, 0xec, 0x1f, 0xe0, 0x8b, 0xe2, 0x28, 0x11, 0x28, 0x32, 0xb5, 0xe3, 0x2f, 0xcf, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1803 = { .name = "ecdsa_brainpoolp384r1_sha384_1803", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1803_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1803_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1803_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1804 for ECDSA, tcId is 274 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1804_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1804_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1804_sig[] = { 0x05, 0x86, 0x7e, 0x5f, 0x8a, 0xbd, 0x70, 0x40, 0x07, 0xb9, 0x8c, 0x1a, 0x8f, 0x2c, 0x69, 0xf4, 0xee, 0xa1, 0x4c, 0xb4, 0xa4, 0x21, 0x02, 0x62, 0xb4, 0x74, 0xc4, 0xeb, 0xa9, 0x07, 0x33, 0x74, 0xca, 0xb5, 0xdd, 0x1b, 0xb5, 0xc7, 0x81, 0xdf, 0x04, 0x0d, 0xf3, 0x2b, 0xf7, 0x94, 0x31, 0x87, 0x68, 0xaf, 0xdc, 0x70, 0xaa, 0xca, 0x5f, 0x1b, 0x36, 0xef, 0x32, 0x59, 0x3d, 0x88, 0x9e, 0x37, 0x7d, 0x3f, 0x83, 0xb3, 0x29, 0x38, 0x6c, 0x98, 0x2a, 0xcf, 0x9b, 0x40, 0x1b, 0x7c, 0xd2, 0x6b, 0x75, 0xa5, 0x38, 0x93, 0x95, 0xc1, 0x5d, 0x50, 0x7d, 0x7d, 0x67, 0x02, 0x3d, 0x6d, 0x07, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1804 = { .name = "ecdsa_brainpoolp384r1_sha384_1804", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1804_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1804_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1804_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1805 for ECDSA, tcId is 275 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1805_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1805_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1805_sig[] = { 0x88, 0xd5, 0xf4, 0x06, 0x9b, 0xe3, 0x1f, 0xc5, 0x8a, 0x38, 0xfd, 0x8d, 0xe9, 0xdb, 0xc7, 0xfe, 0xc6, 0x40, 0x65, 0xde, 0x42, 0x68, 0xd4, 0x1c, 0x8d, 0xb7, 0x99, 0xd0, 0xa2, 0x0a, 0xe1, 0x04, 0x92, 0xc7, 0xe8, 0x0b, 0x30, 0x03, 0x4b, 0x7f, 0x32, 0x1c, 0xd4, 0x9b, 0x2b, 0x9c, 0x3f, 0x33, 0x09, 0x91, 0x2b, 0x63, 0xc4, 0xf8, 0x8b, 0xe7, 0x72, 0x11, 0xab, 0x53, 0x3c, 0xf1, 0x3f, 0x2b, 0x63, 0x47, 0x20, 0x06, 0xaa, 0xb5, 0xe7, 0x0d, 0xf2, 0x1b, 0x87, 0x30, 0x1f, 0xe5, 0x13, 0x9a, 0xae, 0xd4, 0x84, 0x5a, 0x42, 0x1b, 0x0f, 0x07, 0x6f, 0x96, 0x8a, 0xe4, 0xb3, 0x24, 0x90, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1805 = { .name = "ecdsa_brainpoolp384r1_sha384_1805", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1805_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1805_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1805_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1806 for ECDSA, tcId is 276 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1806_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1806_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1806_sig[] = { 0x75, 0x0e, 0x5b, 0xae, 0xef, 0x69, 0x34, 0xb3, 0x65, 0x12, 0x57, 0x2d, 0xd3, 0x30, 0xfa, 0x88, 0x35, 0x3e, 0x32, 0x1a, 0x52, 0x13, 0x63, 0xbd, 0xa8, 0x89, 0xfd, 0x25, 0x7e, 0x4e, 0xa4, 0x02, 0x4f, 0xb5, 0xf9, 0x2e, 0x39, 0xf2, 0x65, 0xd7, 0x89, 0xd2, 0xa9, 0x49, 0xdd, 0x91, 0x84, 0x3b, 0x18, 0xb8, 0x46, 0x7c, 0x63, 0x89, 0x25, 0x14, 0x84, 0x7c, 0x3b, 0x98, 0xee, 0x27, 0x9e, 0x3f, 0x41, 0xb3, 0x91, 0xa4, 0x79, 0x75, 0xd7, 0xf4, 0xd6, 0x66, 0x93, 0x85, 0xac, 0x0b, 0xd2, 0xe3, 0x22, 0xf8, 0x86, 0x08, 0x87, 0x03, 0x10, 0xb6, 0x35, 0xad, 0x28, 0x25, 0x6d, 0x8d, 0xca, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1806 = { .name = "ecdsa_brainpoolp384r1_sha384_1806", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1806_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1806_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1806_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1807 for ECDSA, tcId is 277 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1807_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1807_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1807_sig[] = { 0x8b, 0xb6, 0x56, 0x97, 0x37, 0xc5, 0xe0, 0x1d, 0x25, 0x96, 0xd3, 0xba, 0x5d, 0x01, 0x89, 0x0f, 0x23, 0x11, 0x36, 0xc6, 0x9c, 0x6c, 0x9f, 0x42, 0xa9, 0x44, 0xf0, 0x66, 0x02, 0x29, 0x6b, 0x11, 0x59, 0xf2, 0x9f, 0xc1, 0xd9, 0x8b, 0x68, 0xbe, 0x06, 0xf3, 0x05, 0x2c, 0x5f, 0xa8, 0x61, 0x9b, 0x2d, 0x1d, 0x4c, 0xcd, 0x79, 0xb0, 0x09, 0x98, 0xac, 0xf0, 0x3d, 0x34, 0x12, 0x88, 0x8f, 0x27, 0xd2, 0x74, 0xb8, 0x78, 0x87, 0x42, 0xbe, 0x27, 0xd7, 0x98, 0xdd, 0x7d, 0xb6, 0x54, 0xd9, 0x64, 0xfa, 0x4c, 0xde, 0x33, 0x84, 0xd8, 0x8c, 0x2a, 0x50, 0x24, 0x77, 0x92, 0xe8, 0x82, 0x0a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1807 = { .name = "ecdsa_brainpoolp384r1_sha384_1807", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1807_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1807_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1807_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1808 for ECDSA, tcId is 278 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1808_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1808_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1808_sig[] = { 0x27, 0x7b, 0x8f, 0xe0, 0x06, 0x51, 0x99, 0x8c, 0xdc, 0xf8, 0xb4, 0xf4, 0x07, 0x95, 0xf4, 0x54, 0xe4, 0xdc, 0xa2, 0xfd, 0xc2, 0xc1, 0x0d, 0xce, 0x1f, 0xff, 0x8f, 0x0c, 0x85, 0x2a, 0xac, 0x0b, 0xf6, 0x18, 0x3b, 0x1a, 0xc3, 0xc3, 0x82, 0x67, 0x06, 0xc3, 0xe6, 0x59, 0x85, 0x41, 0x98, 0xa0, 0x0d, 0x71, 0xf3, 0xf3, 0xf6, 0x81, 0xfc, 0x39, 0x1c, 0x3c, 0xfd, 0xb8, 0x1b, 0x61, 0xeb, 0xa0, 0x15, 0x5c, 0xb4, 0xa8, 0xe9, 0xce, 0x80, 0x49, 0xcd, 0xf9, 0xb4, 0x59, 0xaa, 0xf2, 0x64, 0x52, 0x5f, 0xbb, 0x89, 0x3e, 0xaa, 0x71, 0x59, 0x3a, 0x96, 0x18, 0xc0, 0xf1, 0x17, 0xef, 0xd9, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1808 = { .name = "ecdsa_brainpoolp384r1_sha384_1808", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1808_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1808_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1808_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1809 for ECDSA, tcId is 279 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1809_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1809_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1809_sig[] = { 0x26, 0x9d, 0x14, 0xd9, 0x86, 0x7e, 0xd2, 0x34, 0x10, 0xca, 0xf2, 0x4f, 0x5f, 0x9f, 0x17, 0x1b, 0xc0, 0xe5, 0x2f, 0x00, 0x6d, 0x8d, 0x16, 0xc0, 0x2c, 0x81, 0xf1, 0xb4, 0xed, 0xba, 0x22, 0x2d, 0xe7, 0x35, 0x1a, 0xd7, 0x29, 0x43, 0xed, 0x09, 0xa2, 0xe7, 0xac, 0x17, 0x6a, 0x1b, 0x21, 0x56, 0x4a, 0xf9, 0x3b, 0x80, 0x0f, 0xbd, 0xca, 0x45, 0xac, 0x74, 0xcf, 0xd2, 0x2c, 0xba, 0x9a, 0x50, 0x87, 0x39, 0xf8, 0xfc, 0xf3, 0xce, 0x14, 0xe5, 0x5c, 0x39, 0xbc, 0x77, 0x0a, 0x14, 0x3f, 0x80, 0x99, 0x70, 0xe8, 0x36, 0x44, 0x7a, 0x45, 0x42, 0xd0, 0xbb, 0x36, 0x7d, 0xe6, 0x61, 0x2c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1809 = { .name = "ecdsa_brainpoolp384r1_sha384_1809", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1809_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1809_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1809_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1810 for ECDSA, tcId is 280 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1810_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1810_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1810_sig[] = { 0x40, 0x73, 0x1d, 0xbe, 0x64, 0x63, 0x6c, 0xd5, 0xef, 0x5d, 0x25, 0x60, 0xa2, 0x3f, 0x38, 0x91, 0xac, 0xcf, 0x0a, 0x53, 0x0a, 0x44, 0x6c, 0x6a, 0xd2, 0x13, 0xb4, 0xba, 0x7f, 0xf9, 0xcb, 0x50, 0x5a, 0xba, 0x93, 0x31, 0x83, 0x6a, 0xb8, 0xa9, 0x8f, 0xe5, 0x65, 0xe8, 0x66, 0xc8, 0x79, 0x79, 0x19, 0xeb, 0x3c, 0xf6, 0xb5, 0xfa, 0xf1, 0x1e, 0x97, 0x17, 0xd6, 0xd0, 0x44, 0x96, 0x24, 0xa5, 0x09, 0x35, 0x89, 0x36, 0xdd, 0x00, 0x67, 0xff, 0xc1, 0x8f, 0x22, 0xe6, 0xbc, 0xbc, 0x6a, 0xa1, 0xdf, 0x3a, 0x45, 0xf1, 0x5a, 0xe7, 0x32, 0x19, 0x77, 0x90, 0xcc, 0x6f, 0xdb, 0x92, 0xc3, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1810 = { .name = "ecdsa_brainpoolp384r1_sha384_1810", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1810_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1810_msg, .msglen = 11, .sig = ecdsa_brainpoolp384r1_sha384_1810_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1811 for ECDSA, tcId is 281 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1811_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1811_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1811_sig[] = { 0x84, 0x33, 0x5a, 0x1c, 0x93, 0xd9, 0x96, 0xe3, 0x6c, 0x22, 0xae, 0xe4, 0xf3, 0x3c, 0xef, 0xf7, 0xc6, 0xff, 0x08, 0x8c, 0xd5, 0x60, 0x4d, 0xb8, 0x27, 0x50, 0x98, 0x60, 0x06, 0x66, 0x14, 0x46, 0x07, 0xbc, 0xfa, 0xc7, 0xe6, 0x95, 0xf2, 0xf7, 0x9a, 0x77, 0x56, 0x28, 0xa1, 0xab, 0x6f, 0x82, 0x28, 0xca, 0x8c, 0xdc, 0x6b, 0xd7, 0x72, 0xcc, 0x9f, 0x24, 0xc1, 0x4e, 0xf7, 0x13, 0x32, 0xf1, 0x92, 0xfe, 0xfd, 0x52, 0xd0, 0x3b, 0x8d, 0xf9, 0x9a, 0x25, 0x7f, 0x31, 0x5e, 0x0f, 0x6f, 0x32, 0x96, 0xe4, 0xa4, 0x5f, 0xd1, 0x82, 0xf0, 0x6a, 0x3d, 0x2b, 0xa2, 0x77, 0x9c, 0x10, 0xa4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1811 = { .name = "ecdsa_brainpoolp384r1_sha384_1811", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1811_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1811_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1811_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1812 for ECDSA, tcId is 282 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1812_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1812_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1812_sig[] = { 0x52, 0x0b, 0x74, 0xd5, 0xd3, 0x3b, 0xa2, 0x89, 0xff, 0xcc, 0xf5, 0x18, 0x7a, 0x60, 0x00, 0x38, 0x0c, 0x31, 0x30, 0x4b, 0x1d, 0x6f, 0x8f, 0xb5, 0x4d, 0x88, 0x0c, 0x19, 0x08, 0xfb, 0xd8, 0xdf, 0x5e, 0x08, 0x57, 0xff, 0xa8, 0xca, 0x34, 0x4f, 0xf7, 0xa4, 0xfa, 0x9b, 0xb6, 0xed, 0x5f, 0x38, 0x03, 0xae, 0x87, 0x7b, 0xc1, 0xf0, 0xbc, 0x8e, 0x7c, 0x90, 0x39, 0x38, 0x1f, 0x0b, 0x66, 0xa5, 0x20, 0x47, 0x16, 0x3c, 0xb7, 0x8e, 0xab, 0xd7, 0xa3, 0xdb, 0xfc, 0x53, 0x8b, 0x42, 0x4f, 0xef, 0x31, 0xd1, 0xe0, 0xaf, 0x76, 0xc0, 0xe1, 0xbe, 0xd7, 0x93, 0x6a, 0x88, 0x33, 0x8f, 0x1b, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1812 = { .name = "ecdsa_brainpoolp384r1_sha384_1812", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1812_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1812_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1812_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1813 for ECDSA, tcId is 283 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1813_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1813_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1813_sig[] = { 0x59, 0x49, 0x2f, 0x3e, 0x58, 0xb5, 0xba, 0xd9, 0x41, 0x21, 0x05, 0xb4, 0x82, 0x4d, 0xbe, 0x93, 0x9d, 0x7c, 0xb2, 0x86, 0x4a, 0x27, 0x68, 0x06, 0x20, 0xac, 0x10, 0x72, 0x85, 0x50, 0x5c, 0x42, 0xeb, 0xfa, 0xeb, 0x15, 0x4c, 0x4e, 0xb6, 0xd9, 0xe6, 0x78, 0x3a, 0x12, 0xab, 0xaa, 0x35, 0xaa, 0x8b, 0x41, 0x14, 0xca, 0xf3, 0x26, 0x0e, 0x50, 0x96, 0x58, 0x24, 0x3a, 0x5f, 0x41, 0x90, 0xe4, 0x0c, 0x26, 0x8d, 0x01, 0x25, 0x78, 0xdf, 0x86, 0x86, 0x6a, 0x4e, 0x95, 0x03, 0xc8, 0x49, 0x08, 0x04, 0x88, 0x2d, 0x08, 0x12, 0xaa, 0x10, 0x5e, 0x24, 0x5c, 0x8c, 0x46, 0xfb, 0x36, 0x48, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1813 = { .name = "ecdsa_brainpoolp384r1_sha384_1813", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1813_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1813_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1813_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1814 for ECDSA, tcId is 284 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1814_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1814_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1814_sig[] = { 0x42, 0x1d, 0xc8, 0x54, 0x47, 0x9a, 0xa6, 0x11, 0x88, 0x7a, 0xa3, 0x68, 0x9b, 0x63, 0x27, 0x6f, 0xbd, 0xc1, 0x6e, 0xc7, 0xd3, 0xdc, 0xa4, 0x49, 0xb4, 0x82, 0xdd, 0x27, 0xb1, 0x40, 0x3c, 0x91, 0x1e, 0xf6, 0x26, 0x5a, 0xd6, 0x25, 0x27, 0x9e, 0x9d, 0x83, 0xce, 0x75, 0x34, 0xf4, 0xac, 0x3f, 0x28, 0x52, 0xe1, 0x6b, 0x42, 0x76, 0x21, 0x5a, 0x62, 0xeb, 0xcb, 0xcf, 0xfa, 0xdd, 0xbd, 0xb2, 0x35, 0x8d, 0xce, 0xa7, 0x08, 0x49, 0x48, 0xbc, 0x94, 0x8f, 0x9b, 0x3d, 0x0f, 0x91, 0x69, 0x3a, 0xba, 0x66, 0x36, 0x2d, 0x4a, 0x2c, 0xec, 0x70, 0xf7, 0x95, 0x2e, 0x37, 0x48, 0x86, 0x21, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1814 = { .name = "ecdsa_brainpoolp384r1_sha384_1814", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1814_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1814_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1814_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1815 for ECDSA, tcId is 285 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1815_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1815_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1815_sig[] = { 0x49, 0x11, 0x0e, 0x41, 0x3a, 0xa3, 0xe0, 0x2f, 0xc0, 0x59, 0x37, 0xd1, 0x00, 0xae, 0x4d, 0xb1, 0x4c, 0xf3, 0xf0, 0x03, 0x8b, 0x38, 0x67, 0x9a, 0x4a, 0xa2, 0x97, 0xb1, 0x1f, 0x9c, 0x47, 0xf7, 0xdf, 0x53, 0x8d, 0xf8, 0xce, 0xe3, 0x0e, 0xfd, 0xa4, 0xdd, 0xab, 0x2c, 0xc5, 0x1a, 0x6b, 0x0f, 0x01, 0x8a, 0x09, 0xa1, 0x8e, 0x1e, 0x79, 0x83, 0xe5, 0x2b, 0x8e, 0x6c, 0xc8, 0xda, 0x9c, 0x6d, 0x71, 0x55, 0xc5, 0x40, 0x90, 0x82, 0xf6, 0x95, 0x87, 0x42, 0x09, 0x06, 0xb7, 0x5c, 0xb5, 0x15, 0x7d, 0x37, 0x58, 0xe9, 0x92, 0xb2, 0x23, 0xeb, 0x7e, 0x9c, 0x27, 0x4f, 0xbf, 0xf4, 0xa9, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1815 = { .name = "ecdsa_brainpoolp384r1_sha384_1815", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1815_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1815_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1815_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1816 for ECDSA, tcId is 286 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1816_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1816_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1816_sig[] = { 0x88, 0x4c, 0xf6, 0x4c, 0xe7, 0x26, 0xd5, 0x75, 0x8e, 0xfb, 0x9f, 0x2f, 0x35, 0xc9, 0x2d, 0xcc, 0x60, 0x63, 0xb0, 0x1b, 0x74, 0x32, 0xfa, 0xff, 0xd0, 0xf8, 0x18, 0x6a, 0xc1, 0x77, 0xe3, 0x11, 0x29, 0x63, 0x3a, 0x64, 0x8a, 0x1a, 0x69, 0x86, 0x14, 0x83, 0x84, 0xa7, 0xd1, 0xc4, 0xd3, 0xf5, 0x01, 0x85, 0x07, 0x18, 0xd7, 0xa2, 0xd4, 0x1e, 0xb9, 0x89, 0x2f, 0x54, 0x40, 0xef, 0x4b, 0x9f, 0xc8, 0xb9, 0x96, 0xd3, 0xb6, 0x74, 0x2e, 0xae, 0xc3, 0xd4, 0x0b, 0x10, 0xc5, 0xca, 0xa8, 0x90, 0xb9, 0xa8, 0x53, 0xe1, 0xd2, 0x11, 0xf7, 0xfd, 0x11, 0x78, 0x11, 0x6a, 0x9e, 0x7c, 0x5f, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1816 = { .name = "ecdsa_brainpoolp384r1_sha384_1816", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1816_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1816_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1816_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1817 for ECDSA, tcId is 287 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1817_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1817_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1817_sig[] = { 0x0d, 0x9d, 0xbf, 0x8e, 0xbc, 0xf8, 0x0f, 0x25, 0x6e, 0xe2, 0xd1, 0xf4, 0xfb, 0x45, 0xcd, 0x54, 0x33, 0x81, 0xf6, 0x27, 0x5c, 0x4c, 0x10, 0xaf, 0xa8, 0x52, 0x08, 0x82, 0x8e, 0x27, 0xe6, 0xfb, 0x3d, 0xf3, 0xca, 0x74, 0x91, 0x89, 0x9c, 0x68, 0x30, 0x7d, 0xb6, 0x6a, 0x50, 0x5c, 0x7a, 0x90, 0x1f, 0x0d, 0xb2, 0x6d, 0xc6, 0x91, 0x68, 0x08, 0x32, 0xb3, 0xe3, 0x59, 0x90, 0x5e, 0x5e, 0x63, 0x2b, 0xc9, 0xea, 0xef, 0xd1, 0xd5, 0xeb, 0x4f, 0x05, 0x8a, 0x0d, 0x88, 0xf8, 0xf2, 0xdf, 0x0d, 0x1a, 0x60, 0xc2, 0xf7, 0x71, 0x72, 0xca, 0xf6, 0x55, 0x4b, 0x2d, 0x25, 0x6c, 0xce, 0x8c, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1817 = { .name = "ecdsa_brainpoolp384r1_sha384_1817", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1817_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1817_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1817_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1818 for ECDSA, tcId is 288 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1818_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1818_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1818_sig[] = { 0x6f, 0xa1, 0x80, 0x2a, 0xc4, 0xc2, 0xe7, 0x9b, 0x8b, 0x5a, 0x47, 0x7b, 0x0a, 0x5f, 0xeb, 0xf6, 0x30, 0xc2, 0x9c, 0x08, 0x98, 0x41, 0x48, 0x4c, 0x1d, 0x56, 0x9d, 0xae, 0xdb, 0xf1, 0x3c, 0x0b, 0xdf, 0x79, 0x3d, 0x0a, 0x8f, 0x69, 0x15, 0xbd, 0xc6, 0x7d, 0xd1, 0x48, 0x08, 0x24, 0xa1, 0xce, 0x28, 0xb8, 0x06, 0x32, 0x58, 0x11, 0x1e, 0x32, 0xaa, 0x10, 0xaf, 0x0b, 0x20, 0x68, 0xc7, 0xf5, 0x4f, 0x0d, 0x5e, 0x9f, 0x02, 0xad, 0x39, 0xa4, 0x15, 0xc9, 0x17, 0x43, 0xd6, 0x44, 0x4c, 0x20, 0x15, 0x6c, 0x35, 0x92, 0xd2, 0xbc, 0xc2, 0x34, 0xf2, 0x65, 0xb4, 0x6a, 0x35, 0x86, 0x4e, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1818 = { .name = "ecdsa_brainpoolp384r1_sha384_1818", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1818_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1818_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1818_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1819 for ECDSA, tcId is 289 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1819_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1819_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1819_sig[] = { 0x3d, 0xc1, 0x36, 0x3d, 0xd0, 0x11, 0x9a, 0x50, 0x54, 0xaf, 0xd9, 0x94, 0x84, 0x02, 0x6a, 0x26, 0x92, 0x56, 0x7d, 0x2f, 0xbe, 0xeb, 0x4c, 0x6d, 0x80, 0xa3, 0x0d, 0x22, 0xf1, 0x66, 0xb6, 0x30, 0x45, 0x44, 0x24, 0x6a, 0x35, 0xba, 0x85, 0x4f, 0x85, 0x46, 0x01, 0x39, 0x7c, 0xe4, 0x5b, 0xd5, 0x2b, 0x02, 0x0a, 0x77, 0x09, 0x01, 0x10, 0x8c, 0xe6, 0xdd, 0xf6, 0x91, 0x17, 0xa2, 0xe8, 0x07, 0x34, 0x78, 0x81, 0x71, 0x60, 0x4a, 0x8f, 0x05, 0x71, 0xdb, 0x61, 0xa4, 0xa8, 0xc3, 0xc4, 0xda, 0xe3, 0x3a, 0xf8, 0x41, 0xaf, 0xe4, 0xa9, 0x89, 0x23, 0x06, 0xb4, 0xf9, 0xec, 0xb1, 0x9b, 0x49, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1819 = { .name = "ecdsa_brainpoolp384r1_sha384_1819", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1819_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1819_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1819_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1820 for ECDSA, tcId is 290 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1820_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1820_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1820_sig[] = { 0x7b, 0x98, 0x4b, 0xfa, 0x80, 0x7a, 0x8e, 0x9b, 0x0e, 0xef, 0x94, 0xed, 0x28, 0xc2, 0x4b, 0x04, 0xd4, 0x2e, 0x06, 0x64, 0xfb, 0xfc, 0x0e, 0xe1, 0xc1, 0xb5, 0x94, 0x5c, 0x8f, 0x0e, 0x97, 0xfd, 0xc5, 0x15, 0xfe, 0x09, 0xed, 0xd6, 0xcd, 0xaf, 0x7f, 0xef, 0x31, 0x51, 0xca, 0x40, 0x44, 0xdf, 0x4e, 0x87, 0x87, 0x41, 0x52, 0x9d, 0x7a, 0x90, 0x12, 0x5d, 0xeb, 0x8f, 0xa5, 0xfd, 0xab, 0x8e, 0x9f, 0x7d, 0x25, 0x4b, 0x8a, 0xa4, 0x8a, 0x59, 0xa2, 0xf3, 0x35, 0xc7, 0xd4, 0x34, 0x02, 0xf2, 0x59, 0x0f, 0x10, 0x82, 0xc7, 0x6b, 0x22, 0x63, 0x58, 0x2c, 0x9d, 0xd9, 0x8c, 0xa6, 0x86, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1820 = { .name = "ecdsa_brainpoolp384r1_sha384_1820", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1820_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1820_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1820_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1821 for ECDSA, tcId is 291 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1821_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1821_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1821_sig[] = { 0x87, 0x73, 0x15, 0x25, 0xe7, 0x87, 0x23, 0x9a, 0x23, 0x2b, 0xa3, 0xc2, 0x4b, 0x9c, 0xae, 0xff, 0x3c, 0xe5, 0x91, 0xc1, 0x68, 0x22, 0x7b, 0x8e, 0x28, 0x64, 0x14, 0x0b, 0x1d, 0x7c, 0x0c, 0x50, 0xa7, 0xd5, 0xfa, 0x9f, 0x4f, 0x64, 0x68, 0xbc, 0xa8, 0x17, 0x45, 0x8c, 0x17, 0x1a, 0xa4, 0x47, 0x67, 0x05, 0x98, 0xb6, 0xe5, 0xdf, 0xba, 0xab, 0x3b, 0x62, 0x2b, 0xad, 0x9b, 0x5b, 0x6a, 0xe4, 0x2c, 0x9d, 0x27, 0xbd, 0x45, 0xb1, 0xb0, 0xb8, 0x92, 0xaf, 0x9f, 0xd9, 0x73, 0x9d, 0xd5, 0x04, 0x14, 0xe8, 0xee, 0xde, 0x3c, 0x6d, 0xc1, 0x0f, 0xc2, 0x24, 0x46, 0x3b, 0x44, 0xc8, 0xc2, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1821 = { .name = "ecdsa_brainpoolp384r1_sha384_1821", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1821_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1821_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1821_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1822 for ECDSA, tcId is 292 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1822_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1822_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1822_sig[] = { 0x19, 0x01, 0xd0, 0xd8, 0x61, 0x20, 0x5c, 0xc3, 0xe3, 0xf4, 0xa1, 0x89, 0xb8, 0x79, 0xee, 0x24, 0x64, 0x86, 0xf0, 0xcf, 0xdc, 0x48, 0x1d, 0x63, 0x72, 0x73, 0x84, 0xfe, 0xed, 0xc4, 0x6c, 0x8b, 0xad, 0xdf, 0x89, 0x1a, 0x6e, 0x6e, 0xab, 0x6b, 0xed, 0xe4, 0xe4, 0x6b, 0xbf, 0xf1, 0x64, 0x96, 0x40, 0x17, 0xc9, 0xed, 0xda, 0xea, 0x31, 0x12, 0xf2, 0x6f, 0x7c, 0x6e, 0xe4, 0x72, 0xee, 0x19, 0x83, 0xd7, 0xa2, 0x96, 0xa7, 0x40, 0x22, 0x95, 0x79, 0x4f, 0xdd, 0xd9, 0xe2, 0x67, 0xfe, 0x62, 0xd8, 0x5b, 0x07, 0xb9, 0x9e, 0x81, 0xea, 0x51, 0x3e, 0xca, 0x8d, 0x1a, 0x67, 0xe7, 0x05, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1822 = { .name = "ecdsa_brainpoolp384r1_sha384_1822", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1822_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1822_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1822_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1823 for ECDSA, tcId is 293 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1823_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1823_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1823_sig[] = { 0x04, 0x14, 0x3d, 0x73, 0xf1, 0x40, 0xfe, 0xba, 0xc8, 0xfd, 0x4d, 0x67, 0x62, 0xb9, 0xa5, 0x5b, 0xc9, 0x32, 0x64, 0xcc, 0x33, 0x72, 0xbf, 0x16, 0x61, 0xb3, 0x5a, 0x4b, 0x11, 0xbe, 0x9a, 0xf7, 0x91, 0x0d, 0x3a, 0xa8, 0xe4, 0xf5, 0xcb, 0x5e, 0xaf, 0xe1, 0xde, 0x3a, 0x9d, 0x96, 0x95, 0x77, 0x59, 0x66, 0xb4, 0xe1, 0xe9, 0xef, 0x78, 0xe5, 0x23, 0x91, 0x6d, 0xbe, 0xa3, 0x7e, 0x03, 0xec, 0xc3, 0x56, 0xf4, 0x66, 0x44, 0x1d, 0xc4, 0x5b, 0x9b, 0x98, 0xfe, 0x6d, 0x09, 0xaf, 0x83, 0xe7, 0xd5, 0x7a, 0x86, 0x1c, 0x5d, 0x2c, 0xf9, 0x4b, 0xf0, 0xb8, 0x7f, 0x62, 0x75, 0x2b, 0x28, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1823 = { .name = "ecdsa_brainpoolp384r1_sha384_1823", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1823_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1823_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1823_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1824 for ECDSA, tcId is 294 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1824_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1824_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1824_sig[] = { 0x5d, 0x24, 0xa6, 0xcb, 0x0a, 0x9f, 0x7f, 0x8b, 0x9f, 0x8d, 0x72, 0xda, 0x98, 0x9f, 0xcb, 0xe8, 0x5c, 0x94, 0x48, 0xb4, 0x25, 0xa3, 0x68, 0x20, 0x7f, 0xce, 0x84, 0x21, 0xe5, 0xa6, 0x0f, 0x02, 0x91, 0x84, 0xf1, 0x86, 0x11, 0xb9, 0xa5, 0xa1, 0xeb, 0x66, 0xd0, 0x54, 0xd3, 0x60, 0x57, 0xda, 0x32, 0xb8, 0xa4, 0xd4, 0xac, 0xa1, 0x7e, 0x83, 0x35, 0xd8, 0x4f, 0x2a, 0x68, 0xd7, 0x4f, 0x38, 0xd8, 0xcc, 0xe5, 0x29, 0x7e, 0xfe, 0x9e, 0x6d, 0x0e, 0x1a, 0x8e, 0x5b, 0xed, 0x1b, 0x57, 0x59, 0xbc, 0xb7, 0x3c, 0xff, 0x28, 0x06, 0x29, 0x63, 0xa2, 0x8b, 0xbc, 0x1c, 0x57, 0x1e, 0x3e, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1824 = { .name = "ecdsa_brainpoolp384r1_sha384_1824", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1824_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1824_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1824_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1825 for ECDSA, tcId is 295 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1825_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1825_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1825_sig[] = { 0x1d, 0x10, 0xc1, 0xec, 0x20, 0x3f, 0xa0, 0x5d, 0xee, 0xd6, 0x26, 0x44, 0xb8, 0x09, 0x15, 0x0c, 0xd5, 0xe3, 0xfa, 0x15, 0xc9, 0x12, 0x91, 0x56, 0xfb, 0xc0, 0x47, 0x77, 0x42, 0x32, 0x8d, 0x8d, 0x35, 0xb1, 0xc4, 0xca, 0x8b, 0xaa, 0x61, 0x38, 0xe2, 0xe1, 0x29, 0x36, 0xa0, 0xf4, 0xc3, 0x32, 0x4a, 0x02, 0x9b, 0xb5, 0x2d, 0xdf, 0xb1, 0x71, 0xe4, 0xb1, 0x25, 0xd3, 0x32, 0x6d, 0xee, 0xc4, 0x88, 0xcc, 0x9f, 0x6f, 0x2b, 0x36, 0xd0, 0x51, 0xa3, 0x5d, 0x75, 0xc1, 0xde, 0x4b, 0x7a, 0xbd, 0x17, 0x8c, 0x7d, 0x43, 0x90, 0xe5, 0x11, 0xf1, 0x4d, 0x58, 0xf4, 0x9b, 0xae, 0xf6, 0x2d, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1825 = { .name = "ecdsa_brainpoolp384r1_sha384_1825", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1825_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1825_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1825_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1826 for ECDSA, tcId is 296 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1826_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1826_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1826_sig[] = { 0x2d, 0xcd, 0xa3, 0x11, 0x89, 0xd8, 0xd1, 0x79, 0xf7, 0xde, 0xff, 0x20, 0x8a, 0xea, 0x8b, 0xdf, 0xe0, 0xcb, 0x08, 0xa6, 0xda, 0x46, 0xf6, 0x63, 0xc5, 0xca, 0x64, 0x9c, 0x84, 0xd8, 0xfe, 0xc9, 0xc4, 0x49, 0x59, 0x21, 0xc7, 0x79, 0x1d, 0x32, 0xac, 0xa4, 0x25, 0x57, 0xc3, 0xbf, 0x65, 0x8b, 0x67, 0x53, 0x6e, 0x33, 0x64, 0x28, 0xbd, 0xdf, 0xb0, 0x86, 0x2b, 0xff, 0x5b, 0xf5, 0xd5, 0xb1, 0x69, 0x4b, 0x82, 0xc1, 0xe1, 0x48, 0x54, 0x98, 0xe1, 0x4f, 0xe5, 0xc8, 0x8f, 0x75, 0xa9, 0xd7, 0xf5, 0x20, 0x11, 0x5a, 0x35, 0x70, 0x3c, 0xc3, 0x0b, 0xa0, 0xce, 0x97, 0x38, 0x15, 0x18, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1826 = { .name = "ecdsa_brainpoolp384r1_sha384_1826", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1826_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1826_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1826_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1827 for ECDSA, tcId is 297 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1827_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1827_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1827_sig[] = { 0x2c, 0xb8, 0x1c, 0x03, 0xc3, 0xce, 0xfc, 0x41, 0x7f, 0xc6, 0x0f, 0x19, 0xb7, 0x40, 0xe2, 0x30, 0x98, 0x2e, 0x0b, 0x1c, 0x68, 0xce, 0xd1, 0x21, 0x21, 0x30, 0x0d, 0x53, 0x3f, 0x48, 0x55, 0x97, 0xd1, 0xc5, 0x32, 0xd8, 0x7b, 0x23, 0x5d, 0x13, 0x6b, 0xe3, 0xa4, 0x3d, 0xd8, 0x58, 0x82, 0xca, 0x48, 0xa0, 0x4c, 0x5d, 0x8d, 0x86, 0x7e, 0x88, 0x49, 0xbd, 0x3b, 0x98, 0x1f, 0x01, 0x06, 0x91, 0xf0, 0xe7, 0x42, 0x28, 0x82, 0x57, 0x3b, 0xd5, 0xbf, 0xcc, 0x33, 0xd6, 0xf0, 0x69, 0xa6, 0x22, 0xd1, 0x59, 0xca, 0x71, 0xbd, 0x56, 0x25, 0x02, 0xec, 0x00, 0x1b, 0xd2, 0xb4, 0x53, 0x71, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1827 = { .name = "ecdsa_brainpoolp384r1_sha384_1827", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1827_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1827_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1827_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1828 for ECDSA, tcId is 298 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1828_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1828_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1828_sig[] = { 0x15, 0x24, 0x64, 0x66, 0x8c, 0xef, 0xda, 0x80, 0xde, 0xa5, 0x23, 0x2d, 0x36, 0xbf, 0x24, 0x0a, 0xc3, 0x25, 0xe3, 0xca, 0x27, 0x9d, 0x8c, 0x8e, 0x04, 0x58, 0x30, 0x6b, 0x18, 0xfb, 0x12, 0xac, 0x1e, 0xd1, 0x65, 0x86, 0xd2, 0xd0, 0x75, 0x62, 0x69, 0x1c, 0x32, 0x05, 0xeb, 0xb4, 0xc7, 0x74, 0x3c, 0x38, 0x55, 0x67, 0x26, 0x92, 0x79, 0xe9, 0xbc, 0x5a, 0x2d, 0x07, 0x6a, 0xe9, 0xa0, 0x9e, 0x79, 0x0d, 0x1d, 0x8d, 0x08, 0x97, 0x88, 0x71, 0xdf, 0xc5, 0x86, 0x29, 0x8f, 0x56, 0x12, 0x1b, 0x4b, 0xc8, 0x4f, 0x78, 0x91, 0xe9, 0x1c, 0x3d, 0x76, 0x12, 0x24, 0x9d, 0x32, 0x0e, 0x36, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1828 = { .name = "ecdsa_brainpoolp384r1_sha384_1828", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1828_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1828_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1828_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1829 for ECDSA, tcId is 299 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1829_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1829_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1829_sig[] = { 0x05, 0x25, 0x95, 0xa1, 0x6d, 0x03, 0xa1, 0x38, 0xd6, 0x56, 0xde, 0xc7, 0x5a, 0x55, 0x40, 0xb8, 0x0f, 0x7e, 0xfe, 0x63, 0xb1, 0x93, 0x25, 0x0d, 0xe3, 0xbf, 0x81, 0x1f, 0xb2, 0x79, 0x9d, 0x7e, 0xb9, 0xa6, 0xae, 0x27, 0x4a, 0xc9, 0x53, 0xa8, 0xfb, 0xee, 0x74, 0x1d, 0xc1, 0xf5, 0x21, 0x00, 0x55, 0xf0, 0x59, 0x4f, 0xfa, 0x8d, 0x32, 0xb9, 0x1e, 0xea, 0x8b, 0xf0, 0x79, 0xb8, 0xf5, 0xa9, 0xf6, 0xb6, 0x08, 0x88, 0x50, 0x02, 0x25, 0x01, 0x60, 0x95, 0xb3, 0xe7, 0x11, 0x81, 0xff, 0x32, 0xdb, 0xab, 0xca, 0xa5, 0xe9, 0x92, 0xb4, 0x34, 0x09, 0xf5, 0x54, 0x67, 0xbb, 0xb6, 0x51, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1829 = { .name = "ecdsa_brainpoolp384r1_sha384_1829", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1829_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1829_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1829_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1830 for ECDSA, tcId is 300 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1830_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1830_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1830_sig[] = { 0x29, 0x6f, 0x6b, 0x38, 0x51, 0x55, 0x32, 0x03, 0x82, 0x2d, 0x74, 0x17, 0xc1, 0x76, 0xeb, 0x3e, 0xc5, 0xe5, 0x56, 0xe3, 0x52, 0xd2, 0x4f, 0x28, 0x34, 0xbb, 0xdf, 0x70, 0x89, 0xa1, 0x68, 0xe6, 0x37, 0xf3, 0xe8, 0x09, 0x99, 0xe7, 0xa8, 0x61, 0x14, 0x66, 0xde, 0xc3, 0x70, 0x59, 0x00, 0x29, 0x64, 0xf7, 0x96, 0x94, 0x5f, 0x53, 0xfe, 0x0b, 0x27, 0xbb, 0xfb, 0xc5, 0xb5, 0xe9, 0x57, 0xd4, 0x13, 0x2c, 0x24, 0xc8, 0xb4, 0x62, 0x07, 0x5e, 0x82, 0x1b, 0xca, 0x24, 0x98, 0x3e, 0x8b, 0x8f, 0x85, 0x05, 0x31, 0x61, 0x7a, 0x42, 0xed, 0x31, 0x57, 0xdb, 0xe2, 0x0e, 0xab, 0x31, 0xcb, 0x28, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1830 = { .name = "ecdsa_brainpoolp384r1_sha384_1830", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1830_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1830_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1830_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1831 for ECDSA, tcId is 301 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1831_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1831_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1831_sig[] = { 0x61, 0x93, 0x80, 0x55, 0x8c, 0xd1, 0x4a, 0xc9, 0x09, 0xb5, 0x65, 0xe0, 0x49, 0xaf, 0xa2, 0x24, 0xf7, 0xe7, 0x20, 0xaf, 0x1b, 0x22, 0xe1, 0x8b, 0x59, 0xcb, 0x05, 0x5f, 0xdc, 0x0f, 0x19, 0x1d, 0xef, 0xf4, 0x6a, 0x60, 0x50, 0xd1, 0x64, 0x2c, 0x56, 0x36, 0xc0, 0x32, 0xe9, 0xa7, 0xb4, 0x6b, 0x3c, 0x3f, 0xd2, 0xf2, 0x78, 0xf0, 0x79, 0x54, 0x93, 0x6c, 0x61, 0x83, 0xda, 0x8a, 0xaf, 0xc0, 0xf6, 0x13, 0x19, 0xd9, 0xa9, 0x0b, 0x7d, 0x3d, 0xd1, 0x1a, 0xbe, 0x13, 0xe5, 0x5e, 0x2a, 0xfa, 0x81, 0x51, 0x2f, 0x38, 0x4c, 0x13, 0x33, 0x1a, 0xf1, 0xd6, 0xfb, 0x4d, 0x7c, 0x69, 0x29, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1831 = { .name = "ecdsa_brainpoolp384r1_sha384_1831", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1831_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1831_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1831_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1832 for ECDSA, tcId is 302 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1832_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1832_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1832_sig[] = { 0x35, 0x4e, 0xe9, 0x49, 0xbf, 0xac, 0xa3, 0x5b, 0x19, 0x34, 0xe8, 0x8e, 0x03, 0x6b, 0x7f, 0x37, 0x60, 0x06, 0xb7, 0x98, 0x86, 0x13, 0x3d, 0x07, 0xff, 0x4a, 0xea, 0x3e, 0x05, 0x7e, 0xee, 0xee, 0xc0, 0xb9, 0x3f, 0x62, 0x99, 0x61, 0xc9, 0xac, 0x1e, 0xe1, 0x88, 0xc1, 0xc8, 0x7e, 0x2c, 0xd2, 0x1d, 0x02, 0x62, 0x4a, 0x91, 0x10, 0xf7, 0xba, 0xd6, 0x3e, 0xf7, 0x0e, 0x13, 0x4a, 0x7f, 0xf5, 0x72, 0xd7, 0x72, 0xaa, 0xe3, 0x0b, 0x4d, 0xe6, 0x79, 0x49, 0x4d, 0x00, 0xba, 0x9c, 0xd8, 0x35, 0xd4, 0xec, 0x84, 0x0d, 0x77, 0x2a, 0xf9, 0xf7, 0xc0, 0xb0, 0xda, 0xe8, 0xca, 0xd3, 0x83, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1832 = { .name = "ecdsa_brainpoolp384r1_sha384_1832", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1832_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1832_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1832_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1833 for ECDSA, tcId is 303 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1833_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1833_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1833_sig[] = { 0x88, 0x1e, 0x4e, 0xae, 0xff, 0x3d, 0x3e, 0xd1, 0x73, 0xda, 0xa1, 0x66, 0x22, 0x3d, 0x95, 0x83, 0xac, 0x8d, 0xd2, 0x8a, 0x31, 0x07, 0x65, 0xe7, 0x26, 0x1b, 0x0f, 0xf5, 0x2b, 0x2b, 0x3f, 0xaf, 0xee, 0x80, 0x5d, 0x61, 0x32, 0x58, 0xad, 0xd6, 0xd0, 0x56, 0x15, 0x7c, 0xcc, 0x40, 0xda, 0x73, 0x53, 0xbc, 0x28, 0xcf, 0xfd, 0xed, 0xab, 0x64, 0x52, 0x16, 0x1e, 0x05, 0x51, 0x71, 0x94, 0xe6, 0x6a, 0xfc, 0xc1, 0x4d, 0x10, 0x7d, 0x1e, 0x5d, 0xed, 0x72, 0x9f, 0x66, 0x1c, 0xd6, 0x63, 0x0d, 0x8b, 0x65, 0x81, 0xa8, 0xc2, 0x52, 0x51, 0xed, 0x7c, 0x4b, 0x5c, 0x36, 0x41, 0x29, 0xb5, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1833 = { .name = "ecdsa_brainpoolp384r1_sha384_1833", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1833_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1833_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1833_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1834 for ECDSA, tcId is 304 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1834_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1834_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1834_sig[] = { 0x17, 0x34, 0xf6, 0x66, 0xae, 0x2d, 0x87, 0x27, 0x1d, 0x9e, 0xde, 0x0d, 0xa5, 0x3b, 0xa8, 0xfc, 0x6c, 0xc2, 0xf8, 0x3e, 0xdc, 0x15, 0xdd, 0x26, 0xb9, 0x34, 0x9c, 0x9e, 0x4c, 0xc5, 0x38, 0x04, 0x34, 0xfc, 0x37, 0xb4, 0xff, 0xcf, 0xd9, 0xb7, 0x81, 0xf0, 0x71, 0x25, 0xd8, 0x5d, 0xd6, 0x60, 0x53, 0x1d, 0xae, 0xd4, 0xb8, 0x55, 0xe9, 0x11, 0x7a, 0x1e, 0xba, 0xfa, 0x23, 0x2f, 0x06, 0xb4, 0x7f, 0x50, 0xbe, 0x43, 0x86, 0xdb, 0x27, 0xff, 0xa5, 0xce, 0xca, 0x3e, 0x24, 0x7b, 0xe9, 0x54, 0x97, 0x56, 0x5c, 0x0c, 0x97, 0xb4, 0x37, 0xd3, 0x2d, 0x76, 0x94, 0x97, 0x4b, 0x22, 0xf2, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1834 = { .name = "ecdsa_brainpoolp384r1_sha384_1834", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1834_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1834_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1834_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1835 for ECDSA, tcId is 305 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1835_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1835_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1835_sig[] = { 0x29, 0x69, 0x17, 0xdd, 0x85, 0x47, 0x5f, 0x8e, 0x7b, 0x6f, 0x85, 0x8e, 0x84, 0x74, 0x0b, 0xfa, 0x96, 0x79, 0x96, 0xe1, 0x73, 0xd6, 0x3d, 0x85, 0xaa, 0x08, 0xf1, 0xb6, 0xd3, 0x68, 0x30, 0x97, 0x39, 0x5e, 0x4a, 0x76, 0x48, 0xd1, 0x4e, 0x0b, 0xed, 0xbb, 0xe3, 0x66, 0x7d, 0x3d, 0xb4, 0xf5, 0x4d, 0x3e, 0x02, 0x79, 0xe9, 0x3b, 0xb1, 0x92, 0xf2, 0x44, 0x18, 0xa0, 0xa0, 0x5b, 0xf1, 0x72, 0x38, 0xdc, 0xf7, 0x8d, 0xbe, 0x83, 0x43, 0xe5, 0x5a, 0x66, 0x34, 0x18, 0x10, 0x6d, 0x7a, 0xe2, 0x28, 0x45, 0x94, 0x34, 0x59, 0xb2, 0x64, 0x1f, 0x45, 0xef, 0x4e, 0xd6, 0x06, 0xc5, 0x34, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1835 = { .name = "ecdsa_brainpoolp384r1_sha384_1835", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1835_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1835_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1835_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1836 for ECDSA, tcId is 306 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1836_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1836_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1836_sig[] = { 0x47, 0xf3, 0x15, 0x0d, 0xb2, 0xf4, 0xfa, 0x59, 0x8e, 0xc2, 0x5d, 0xfe, 0x86, 0x4e, 0x11, 0xf9, 0x2b, 0xbd, 0xd5, 0xd6, 0x04, 0x6a, 0xef, 0x74, 0x4b, 0x79, 0x4f, 0x56, 0x70, 0x4e, 0x32, 0x3c, 0xde, 0x1e, 0xb6, 0xea, 0xbd, 0xc3, 0xf7, 0x2f, 0x89, 0x40, 0xd6, 0xa6, 0xfb, 0x30, 0xa1, 0xc8, 0x4e, 0x41, 0xa7, 0x4f, 0x6f, 0x6c, 0xd1, 0x95, 0x0d, 0xf4, 0x11, 0x33, 0xc5, 0x86, 0x08, 0xfb, 0xd8, 0xfb, 0x92, 0xb1, 0x7b, 0xd3, 0xbf, 0xbe, 0xb1, 0xc1, 0xcc, 0x77, 0x84, 0x89, 0xa4, 0xfc, 0xf8, 0x84, 0xe8, 0x00, 0x65, 0x46, 0xcb, 0x69, 0xfa, 0x9d, 0x34, 0x92, 0x65, 0x2d, 0x12, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1836 = { .name = "ecdsa_brainpoolp384r1_sha384_1836", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1836_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1836_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1836_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1837 for ECDSA, tcId is 307 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1837_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1837_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1837_sig[] = { 0x41, 0xb9, 0x03, 0xc2, 0x55, 0xe9, 0x0c, 0xb7, 0x19, 0xb7, 0x46, 0x84, 0xed, 0x97, 0x00, 0xa9, 0x24, 0x36, 0x2e, 0xcd, 0x1c, 0xc8, 0xce, 0x35, 0xb4, 0x4d, 0xaa, 0x1d, 0x41, 0xe3, 0xae, 0x2a, 0xd3, 0xdf, 0x2d, 0x01, 0xb9, 0x10, 0x03, 0x37, 0xef, 0xba, 0xb6, 0x8c, 0x53, 0xc6, 0xc7, 0x6b, 0x47, 0x1f, 0x45, 0x1c, 0x32, 0x40, 0x25, 0xdd, 0xbf, 0xbe, 0x35, 0x9f, 0x1d, 0x3a, 0xc5, 0xe4, 0x0f, 0x71, 0x2b, 0x4e, 0x8a, 0xe0, 0xbb, 0x31, 0x6f, 0x54, 0xa1, 0xae, 0x1d, 0xef, 0x08, 0xc9, 0x5f, 0x53, 0xec, 0xc5, 0x1a, 0xfc, 0x37, 0x5d, 0xe4, 0x36, 0x8d, 0x03, 0xd5, 0x09, 0x59, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1837 = { .name = "ecdsa_brainpoolp384r1_sha384_1837", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1837_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1837_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1837_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1838 for ECDSA, tcId is 308 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1838_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1838_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1838_sig[] = { 0x61, 0xb9, 0xb0, 0x42, 0xfd, 0x65, 0x4c, 0xa9, 0xc6, 0x85, 0xaa, 0xab, 0x03, 0xed, 0x05, 0x44, 0xe3, 0x9e, 0x18, 0x48, 0x37, 0x05, 0x37, 0xa0, 0xd0, 0xac, 0x42, 0xea, 0x74, 0x53, 0xd6, 0x85, 0x37, 0x95, 0x69, 0x5d, 0xda, 0x8f, 0x4c, 0x34, 0x9b, 0x89, 0x7c, 0x2f, 0x61, 0xf9, 0x50, 0x36, 0x63, 0x4d, 0x5a, 0x0a, 0x8c, 0x85, 0x71, 0xf7, 0x68, 0x5c, 0x6c, 0x4b, 0x68, 0xde, 0x8b, 0x29, 0x16, 0xd8, 0xaf, 0x22, 0x33, 0x69, 0x3a, 0x17, 0x39, 0x9a, 0xcb, 0x60, 0x48, 0xa4, 0xd1, 0x41, 0x6e, 0xd3, 0xb2, 0xf9, 0x1b, 0x78, 0x53, 0x86, 0x8d, 0xef, 0x58, 0xa0, 0xea, 0xdd, 0xce, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1838 = { .name = "ecdsa_brainpoolp384r1_sha384_1838", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1838_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1838_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1838_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1839 for ECDSA, tcId is 309 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1839_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1839_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1839_sig[] = { 0x1a, 0xc6, 0xec, 0x44, 0x2c, 0xbc, 0xea, 0x48, 0xa8, 0xc4, 0x04, 0xac, 0x27, 0xe4, 0x2e, 0x21, 0x22, 0xa1, 0x21, 0xef, 0x84, 0x84, 0xbd, 0x91, 0xc0, 0x4a, 0xa2, 0x59, 0x43, 0x8f, 0xed, 0x1e, 0xe8, 0xa8, 0x0b, 0xa5, 0x94, 0x64, 0xb8, 0xa4, 0x35, 0x10, 0x89, 0x92, 0x3b, 0xb0, 0x1e, 0x92, 0x78, 0xc0, 0xed, 0x4e, 0xea, 0x7f, 0xed, 0xda, 0x04, 0xda, 0xd0, 0xd3, 0xf0, 0xd2, 0x28, 0xbc, 0x54, 0x14, 0x8b, 0x12, 0x38, 0xc6, 0x34, 0x28, 0xfc, 0x39, 0xa7, 0x72, 0x14, 0x69, 0x47, 0x79, 0x89, 0x65, 0xca, 0xf7, 0xec, 0x92, 0x76, 0xa0, 0x5a, 0x97, 0x2c, 0xa1, 0xe4, 0x21, 0x8f, 0x84, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1839 = { .name = "ecdsa_brainpoolp384r1_sha384_1839", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1839_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1839_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1839_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1840 for ECDSA, tcId is 310 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1840_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1840_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1840_sig[] = { 0x6d, 0xf0, 0xb3, 0x64, 0x56, 0xbd, 0xcf, 0x91, 0xf6, 0x65, 0x7d, 0x05, 0xb9, 0x37, 0x38, 0x77, 0x1f, 0x18, 0x39, 0x12, 0xe2, 0x7b, 0x9f, 0xd8, 0x88, 0xaf, 0x48, 0x50, 0xb3, 0xd9, 0x79, 0xc4, 0xb7, 0xcb, 0x04, 0x2f, 0x27, 0xe3, 0x86, 0x15, 0xf0, 0x54, 0xd5, 0x17, 0x59, 0x38, 0x13, 0x18, 0x6a, 0x63, 0x8b, 0xe5, 0xf7, 0x7c, 0xbe, 0xc3, 0x7a, 0x97, 0x66, 0x03, 0x6e, 0xfb, 0xc9, 0x00, 0x49, 0x8e, 0xe4, 0xfc, 0x85, 0x0a, 0xc9, 0x83, 0xe5, 0xb6, 0x02, 0xc9, 0x48, 0x30, 0x38, 0xda, 0x98, 0x73, 0x74, 0xd7, 0x55, 0xaa, 0x08, 0x9c, 0xfd, 0x50, 0xbf, 0x2c, 0xc2, 0xde, 0x3b, 0x95, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1840 = { .name = "ecdsa_brainpoolp384r1_sha384_1840", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1840_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1840_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1840_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1841 for ECDSA, tcId is 311 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1841_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1841_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1841_sig[] = { 0x31, 0xc8, 0x68, 0xd4, 0xf0, 0x28, 0xe3, 0x18, 0xc6, 0x91, 0x3a, 0x8d, 0x1a, 0xf0, 0x8a, 0xbb, 0x1f, 0x8a, 0xd9, 0x61, 0xa8, 0x53, 0x38, 0xf8, 0xba, 0xed, 0x7c, 0xbd, 0x8d, 0x79, 0xe1, 0x33, 0x7f, 0x35, 0xbe, 0x3b, 0x03, 0xf1, 0xf6, 0x2c, 0x03, 0x3f, 0x13, 0x88, 0xd6, 0x2b, 0x70, 0x1e, 0x77, 0xa8, 0xd6, 0x3d, 0xe6, 0x8f, 0x69, 0xca, 0x29, 0x9a, 0xa3, 0xeb, 0xab, 0x08, 0x36, 0xd1, 0xe7, 0x17, 0x28, 0x5b, 0xf4, 0x03, 0x68, 0x3e, 0x03, 0x21, 0x0b, 0xd2, 0xa3, 0x33, 0xd7, 0xb6, 0x19, 0x84, 0xd1, 0xe1, 0x39, 0x18, 0x91, 0x3c, 0x8d, 0x1e, 0x7d, 0x6a, 0x93, 0xab, 0x7f, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1841 = { .name = "ecdsa_brainpoolp384r1_sha384_1841", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1841_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1841_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1841_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1842 for ECDSA, tcId is 312 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1842_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1842_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1842_sig[] = { 0x7d, 0x45, 0xc7, 0xdf, 0xa5, 0x9f, 0x13, 0x83, 0x0e, 0x9d, 0xd7, 0x9a, 0x28, 0x3e, 0x21, 0x29, 0xd5, 0x82, 0x9b, 0xe4, 0xcb, 0x84, 0xe0, 0x43, 0x69, 0xed, 0x3b, 0xfa, 0xa0, 0x8f, 0xdb, 0x38, 0xea, 0x64, 0x3c, 0xce, 0xda, 0x16, 0x3f, 0xdb, 0xe5, 0x01, 0x66, 0x23, 0xd3, 0xf1, 0xe4, 0x1e, 0x5b, 0x51, 0xf7, 0xb0, 0xca, 0x78, 0x01, 0x25, 0xdd, 0x6f, 0x60, 0xd3, 0xb4, 0x09, 0x23, 0xfc, 0xaf, 0xe6, 0xe0, 0xd4, 0x9b, 0x84, 0xb3, 0xdb, 0xe5, 0x08, 0xbb, 0x16, 0x94, 0x59, 0x49, 0x5a, 0x84, 0x20, 0x02, 0x8a, 0x3e, 0x44, 0x84, 0x41, 0x20, 0x48, 0x42, 0x9e, 0x67, 0xca, 0x60, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1842 = { .name = "ecdsa_brainpoolp384r1_sha384_1842", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1842_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1842_msg, .msglen = 9, .sig = ecdsa_brainpoolp384r1_sha384_1842_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1843 for ECDSA, tcId is 313 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1843_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1843_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1843_sig[] = { 0x87, 0x32, 0x95, 0x1e, 0x64, 0xe1, 0x5e, 0xc1, 0x20, 0x33, 0x32, 0xb9, 0xca, 0x9a, 0x1d, 0xfb, 0xed, 0xdf, 0xb0, 0xd1, 0x23, 0x1d, 0x0e, 0x28, 0x98, 0xc0, 0x99, 0xf7, 0x5e, 0xfd, 0x4d, 0xe9, 0xa4, 0x6d, 0xb9, 0xa7, 0x80, 0x53, 0x9b, 0xb0, 0xe2, 0x84, 0x35, 0xd5, 0xb2, 0x97, 0x00, 0x78, 0x86, 0xb2, 0x11, 0x84, 0x54, 0x2c, 0xe5, 0x0d, 0x04, 0x6d, 0x49, 0xec, 0x53, 0x9d, 0x33, 0x56, 0x9a, 0x5c, 0xc4, 0x5c, 0x64, 0x32, 0xd9, 0x65, 0xfb, 0x4c, 0x45, 0x5c, 0x63, 0xd4, 0x48, 0x19, 0x43, 0x55, 0x77, 0x1d, 0x7d, 0xdc, 0x47, 0xaf, 0x74, 0xfd, 0x28, 0x27, 0xe1, 0xd7, 0x2e, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1843 = { .name = "ecdsa_brainpoolp384r1_sha384_1843", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1843_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1843_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1843_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1844 for ECDSA, tcId is 314 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1844_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1844_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1844_sig[] = { 0x26, 0x31, 0xc7, 0x59, 0xa6, 0xa8, 0x69, 0x14, 0x16, 0x07, 0x66, 0xb9, 0x4a, 0x4e, 0x4f, 0x47, 0x4a, 0x0a, 0xd6, 0x79, 0xb5, 0xaf, 0xed, 0x8a, 0x72, 0x37, 0xea, 0xc7, 0x73, 0xc6, 0xb0, 0xd6, 0x7f, 0xf3, 0xec, 0x36, 0xdf, 0x37, 0x30, 0xe8, 0x1a, 0xde, 0xba, 0x58, 0xd6, 0xe2, 0x95, 0x17, 0x16, 0x20, 0x9d, 0xcc, 0x92, 0x37, 0xa9, 0xae, 0x32, 0xd8, 0x62, 0xb3, 0x31, 0x53, 0x94, 0x3f, 0x1e, 0xaf, 0x2a, 0x92, 0x14, 0x6a, 0xf7, 0x73, 0xcf, 0x3e, 0x5b, 0xba, 0x48, 0xa8, 0x55, 0x1d, 0x9c, 0x2f, 0xa1, 0x2a, 0x01, 0xdf, 0xf3, 0xb0, 0x05, 0x42, 0x6c, 0xda, 0xff, 0x05, 0xa8, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1844 = { .name = "ecdsa_brainpoolp384r1_sha384_1844", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1844_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1844_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1844_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1845 for ECDSA, tcId is 315 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1845_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1845_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1845_sig[] = { 0x59, 0xb1, 0x2f, 0x62, 0x20, 0xb0, 0x46, 0xb0, 0x8f, 0x89, 0x2d, 0x69, 0xba, 0xef, 0xc8, 0x1c, 0x51, 0x0c, 0xc2, 0x5a, 0xd0, 0x90, 0x61, 0x6b, 0x35, 0x06, 0x06, 0x08, 0x42, 0x16, 0xe6, 0xc4, 0x0e, 0x1d, 0x8c, 0xd9, 0x6a, 0x1b, 0x31, 0x5e, 0x64, 0xce, 0x1d, 0x84, 0x98, 0x6d, 0x89, 0xac, 0x39, 0x94, 0xa6, 0x85, 0x2b, 0x23, 0x77, 0xdc, 0xc8, 0x09, 0x35, 0xe2, 0xea, 0x1e, 0xaf, 0x78, 0x89, 0xed, 0x69, 0x4c, 0xd3, 0x21, 0xbb, 0xda, 0x34, 0x2d, 0xbd, 0x57, 0xed, 0xe1, 0xa4, 0x7c, 0x2b, 0x30, 0xde, 0x46, 0xbb, 0x05, 0xca, 0xc6, 0x6a, 0x62, 0x35, 0xc4, 0xbb, 0x29, 0x0c, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1845 = { .name = "ecdsa_brainpoolp384r1_sha384_1845", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1845_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1845_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1845_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1846 for ECDSA, tcId is 316 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1846_pubkey[] = { 0x19, 0x2e, 0xd5, 0xce, 0x54, 0x7d, 0x23, 0x36, 0x91, 0x1d, 0x3f, 0x6c, 0xec, 0xba, 0x22, 0x7f, 0x08, 0xdf, 0x07, 0x7f, 0x62, 0x42, 0xa9, 0x14, 0x7a, 0x91, 0x4e, 0x85, 0x4e, 0x6e, 0x32, 0xd3, 0x25, 0xfd, 0x23, 0xcc, 0xc4, 0x29, 0x21, 0xdc, 0x4a, 0x7e, 0x4c, 0x2e, 0xb7, 0x1d, 0xef, 0xd3, 0x63, 0x1e, 0x69, 0x07, 0x9b, 0xa9, 0x82, 0xe7, 0xa1, 0xca, 0xd0, 0xa3, 0x9e, 0xff, 0x47, 0xfc, 0x6d, 0x6e, 0x3a, 0x28, 0x0d, 0x08, 0x12, 0x86, 0xb6, 0x24, 0x88, 0x6b, 0xa1, 0xf3, 0x06, 0x96, 0x71, 0xec, 0x1a, 0x29, 0x98, 0x6d, 0x84, 0xfb, 0x79, 0x73, 0x6d, 0x27, 0x99, 0xe6, 0xfc, 0x21, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1846_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1846_sig[] = { 0x4f, 0x69, 0x18, 0x0f, 0xb6, 0x60, 0x59, 0x7f, 0x8e, 0x70, 0x33, 0x4b, 0x7b, 0x6f, 0xa9, 0x7e, 0x59, 0x28, 0xa6, 0xc1, 0x75, 0xde, 0x91, 0x29, 0x05, 0x26, 0x1f, 0x3e, 0x1f, 0x4d, 0xf1, 0x75, 0x2d, 0x34, 0x15, 0x37, 0x0e, 0x62, 0x72, 0x71, 0x0c, 0x7b, 0xd4, 0xbd, 0x42, 0xed, 0xad, 0xec, 0x44, 0x5b, 0x0b, 0x78, 0x09, 0x9b, 0xd9, 0x9f, 0xa7, 0x8a, 0x99, 0x45, 0xd7, 0xbd, 0x20, 0x58, 0xa9, 0x00, 0xb9, 0x41, 0x38, 0xd6, 0x7a, 0xbd, 0x37, 0xfd, 0xfc, 0xf2, 0xe9, 0xfa, 0xb6, 0x64, 0x4c, 0xb1, 0xa8, 0xc3, 0x76, 0x16, 0x3e, 0xcb, 0x69, 0x95, 0x5e, 0x95, 0x4c, 0xe8, 0xc3, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1846 = { .name = "ecdsa_brainpoolp384r1_sha384_1846", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1846_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1846_msg, .msglen = 10, .sig = ecdsa_brainpoolp384r1_sha384_1846_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1847 for ECDSA, tcId is 317 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1847_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1847_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x9b, 0x6b, 0xac, 0xd3, 0xb2, 0xeb, 0x7b, 0xdd, 0x98, 0xf0, 0x7a, 0x24, 0x9d, 0x57, 0x61, 0x4b, 0xbe, 0xce, 0x10, 0x48, 0x03, 0x86, 0xe8, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1847 = { .name = "ecdsa_brainpoolp384r1_sha384_1847", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1847_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1847_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1847_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 317 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1848 for ECDSA, tcId is 318 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1848_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1848_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x4d, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1848 = { .name = "ecdsa_brainpoolp384r1_sha384_1848", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1848_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1848_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1848_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 318 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1849 for ECDSA, tcId is 319 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1849_pubkey[] = { 0x73, 0xf8, 0x4a, 0xb6, 0x37, 0x89, 0x30, 0x1e, 0x88, 0xb4, 0xcb, 0x82, 0xcb, 0x93, 0x5d, 0xec, 0xff, 0xb8, 0xf4, 0x2b, 0x2c, 0x97, 0x84, 0xc7, 0x54, 0x46, 0x15, 0xb9, 0x07, 0x6e, 0xc7, 0xa7, 0xab, 0x94, 0x70, 0x2c, 0xa7, 0xf1, 0xd9, 0xaa, 0xcf, 0xb9, 0x05, 0x37, 0xb5, 0xd3, 0x68, 0xdc, 0x50, 0x2c, 0xb7, 0xc8, 0xc1, 0x82, 0x85, 0x99, 0x4c, 0x7b, 0x19, 0xfa, 0x3e, 0x24, 0x01, 0xfd, 0xc2, 0x6d, 0xe5, 0x4f, 0xfe, 0x00, 0x6b, 0xb7, 0x9b, 0xdd, 0x78, 0x52, 0xc6, 0x66, 0xd7, 0x30, 0xbd, 0xf7, 0x6a, 0x16, 0xc0, 0x79, 0x2a, 0x6c, 0x66, 0x81, 0xed, 0x6b, 0x64, 0x7f, 0xc8, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1849_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1849 = { .name = "ecdsa_brainpoolp384r1_sha384_1849", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1849_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1849_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1849_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 319 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1850 for ECDSA, tcId is 320 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1850_pubkey[] = { 0x89, 0x5e, 0x84, 0x61, 0xed, 0xdb, 0xe2, 0x13, 0x67, 0xa9, 0x5b, 0x25, 0xcd, 0x85, 0xcd, 0x31, 0xe8, 0x0e, 0xcf, 0x1f, 0x95, 0x53, 0x90, 0x56, 0xfb, 0x7e, 0x10, 0xb4, 0xaa, 0x49, 0x90, 0x0b, 0x21, 0x94, 0xd9, 0x19, 0xb2, 0x9c, 0xd9, 0xbf, 0x37, 0x3a, 0x1d, 0x53, 0xef, 0x57, 0x11, 0x74, 0x76, 0x7c, 0x02, 0xe3, 0x6b, 0x93, 0x5a, 0x65, 0xe5, 0xa9, 0xcb, 0xb3, 0x55, 0x89, 0xa2, 0xa0, 0x18, 0x48, 0x20, 0x65, 0xc5, 0xe3, 0x3d, 0xa8, 0xce, 0x48, 0x3d, 0xc7, 0xf7, 0xfe, 0x44, 0x15, 0x74, 0xf9, 0xe7, 0xab, 0x06, 0x14, 0xbd, 0xcf, 0xc6, 0x10, 0x22, 0xc7, 0x80, 0xa3, 0x00, 0x09, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1850_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x48, 0x0e, 0xca, 0x28, 0x74, 0xaa, 0x6b, 0xa7, 0x1e, 0x7f, 0xb5, 0x71, 0x13, 0x39, 0xac, 0x0a, 0x7b, 0xf8, 0x40, 0x65, 0xb3, 0xc7, 0xd5, 0x9c, 0x64, 0xa2, 0xc6, 0x01, 0x5e, 0x6f, 0x79, 0x4e, 0x7d, 0xfa, 0x2b, 0x1f, 0xec, 0x73, 0xa7, 0x2a, 0xdb, 0x32, 0xbd, 0xb7, 0xdd, 0x55, 0xcd, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1850 = { .name = "ecdsa_brainpoolp384r1_sha384_1850", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1850_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1850_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1850_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 320 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1851 for ECDSA, tcId is 321 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1851_pubkey[] = { 0x61, 0x8a, 0xd8, 0x19, 0x12, 0xe4, 0xc3, 0x1f, 0x23, 0xea, 0xb2, 0xf0, 0xc6, 0x93, 0xb3, 0xef, 0x84, 0x04, 0x07, 0x4a, 0xb1, 0xdc, 0xe0, 0x1d, 0xc8, 0x2a, 0x76, 0x81, 0x51, 0xc9, 0xfa, 0x03, 0x93, 0xb4, 0xd6, 0xae, 0xae, 0xec, 0x68, 0x58, 0xd3, 0xf4, 0x19, 0x95, 0x7a, 0x5b, 0x99, 0x7f, 0x31, 0xfa, 0x80, 0x9b, 0x1b, 0x44, 0x67, 0x7c, 0xc5, 0xae, 0xf1, 0x89, 0x48, 0x46, 0x14, 0x2c, 0x3e, 0x44, 0xbb, 0xa6, 0xc4, 0x71, 0x12, 0x3f, 0xa1, 0x4f, 0xeb, 0x8f, 0x3a, 0xa9, 0xe9, 0x2f, 0x76, 0x9b, 0xe5, 0x49, 0xce, 0xf9, 0xc1, 0xd5, 0x5b, 0xc6, 0xf1, 0xf4, 0xf8, 0x41, 0x81, 0x3d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1851_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x16, 0x29, 0xef, 0x2d, 0x71, 0x82, 0xd6, 0x7b, 0x6b, 0xd9, 0xcf, 0x68, 0x42, 0x25, 0x1f, 0xe0, 0x9c, 0x96, 0xbf, 0xe0, 0x22, 0xb8, 0xad, 0x9a, 0x0e, 0x54, 0x6f, 0xdc, 0x8e, 0xcf, 0x5d, 0xc8, 0x63, 0x6f, 0xa1, 0x30, 0x59, 0xd7, 0xe9, 0xd8, 0x3f, 0xde, 0x50, 0xe0, 0xd2, 0xb3, 0x92, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1851 = { .name = "ecdsa_brainpoolp384r1_sha384_1851", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1851_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1851_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1851_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 321 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1852 for ECDSA, tcId is 322 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1852_pubkey[] = { 0x79, 0x58, 0x3b, 0x49, 0x68, 0xb5, 0x76, 0x81, 0x1b, 0x56, 0x7e, 0x16, 0x20, 0xe0, 0x0b, 0x0a, 0xab, 0x8a, 0xa2, 0x23, 0xc5, 0xe6, 0x55, 0xb2, 0x7b, 0x1e, 0xbe, 0xaf, 0x83, 0xbc, 0xd3, 0x5f, 0x42, 0x05, 0xa5, 0xa0, 0xe5, 0x1a, 0x20, 0x52, 0xff, 0xfe, 0x9f, 0xd2, 0x37, 0x85, 0xc9, 0x8f, 0x77, 0x35, 0x7c, 0x8a, 0x10, 0x08, 0xfc, 0xb7, 0xa3, 0x57, 0x96, 0x14, 0xc2, 0xff, 0x47, 0x98, 0x0f, 0xa9, 0xe4, 0x4b, 0x6b, 0x5e, 0xa3, 0xf8, 0xa3, 0x3c, 0x91, 0x9d, 0xd2, 0xae, 0xa5, 0xda, 0xd0, 0xca, 0x1a, 0x01, 0xa9, 0xe2, 0x10, 0x65, 0x18, 0xb1, 0x64, 0x29, 0x06, 0xe4, 0xf2, 0x75, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1852_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1852 = { .name = "ecdsa_brainpoolp384r1_sha384_1852", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1852_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1852_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1852_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 322 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1853 for ECDSA, tcId is 323 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1853_pubkey[] = { 0x89, 0x65, 0x7b, 0xac, 0x21, 0x6c, 0x3a, 0xc4, 0xa3, 0xa2, 0xd5, 0xaf, 0xd3, 0x42, 0xad, 0x24, 0xa4, 0xeb, 0x10, 0x3d, 0x4d, 0xbe, 0x2e, 0x44, 0x61, 0xe0, 0x3c, 0x70, 0x11, 0x82, 0x65, 0x13, 0xfe, 0x82, 0xbd, 0x06, 0xe1, 0x7e, 0x3a, 0xe8, 0xeb, 0x58, 0x11, 0xda, 0x0b, 0xec, 0x88, 0xbb, 0x33, 0xee, 0x1e, 0xdd, 0xd5, 0xd4, 0x9d, 0xd8, 0x6e, 0x78, 0x5f, 0xbf, 0xeb, 0xb9, 0x28, 0x86, 0x61, 0x96, 0x4e, 0x6f, 0xbe, 0x0c, 0x07, 0xaf, 0x9a, 0x4b, 0xa3, 0x14, 0x5f, 0xc4, 0xbe, 0x11, 0xe5, 0x48, 0x4b, 0x65, 0x0c, 0x97, 0x09, 0x6d, 0xb8, 0x2e, 0xbb, 0x0c, 0xa2, 0xbb, 0x84, 0xed, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1853_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1853 = { .name = "ecdsa_brainpoolp384r1_sha384_1853", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1853_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1853_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1853_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 323 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1854 for ECDSA, tcId is 324 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1854_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1854_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1854 = { .name = "ecdsa_brainpoolp384r1_sha384_1854", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1854_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1854_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1854_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 324 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1855 for ECDSA, tcId is 325 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1855_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1855_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1855 = { .name = "ecdsa_brainpoolp384r1_sha384_1855", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1855_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1855_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1855_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 325 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1856 for ECDSA, tcId is 326 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1856_pubkey[] = { 0x1b, 0xee, 0x74, 0x1f, 0xa1, 0x92, 0xa9, 0xbd, 0x05, 0x35, 0xd0, 0x06, 0x27, 0x73, 0x70, 0x79, 0xe9, 0x8f, 0x00, 0x07, 0x63, 0x94, 0xc9, 0x78, 0xa9, 0x6a, 0x0f, 0x9f, 0xba, 0x64, 0xe9, 0xe2, 0x1d, 0xec, 0xff, 0x6b, 0x4b, 0x8f, 0xe1, 0x1f, 0x60, 0xb1, 0x8d, 0x5d, 0x75, 0x86, 0x84, 0xde, 0x06, 0xd1, 0x93, 0x21, 0xea, 0xb7, 0xe8, 0x60, 0x1f, 0x8f, 0x46, 0x06, 0xfe, 0x93, 0xfd, 0x3b, 0x2f, 0x02, 0x98, 0x6a, 0x58, 0xca, 0x56, 0x41, 0x32, 0x82, 0xc6, 0x6d, 0xd3, 0x6b, 0xa6, 0x72, 0x4a, 0x3c, 0xbc, 0xee, 0xe7, 0x99, 0x48, 0xba, 0x2d, 0x55, 0xc7, 0x56, 0x58, 0x6b, 0x58, 0xe2, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1856_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x17, 0x3b, 0xec, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1856 = { .name = "ecdsa_brainpoolp384r1_sha384_1856", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1856_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1856_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1856_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 326 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1857 for ECDSA, tcId is 327 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1857_pubkey[] = { 0x6b, 0x25, 0xf8, 0xc1, 0x62, 0x9f, 0x75, 0x79, 0xe3, 0xc7, 0xee, 0x4b, 0x02, 0x9c, 0xc0, 0x29, 0xb4, 0xbd, 0xbe, 0xd8, 0x8b, 0x9b, 0x39, 0x93, 0x03, 0xe4, 0xa1, 0x43, 0x52, 0xd1, 0xf3, 0xf6, 0x04, 0x8e, 0xcd, 0xd0, 0x62, 0xd3, 0x7c, 0xba, 0x7b, 0x70, 0xbc, 0xbd, 0x58, 0x72, 0x31, 0xe7, 0x62, 0x13, 0x13, 0xf9, 0x3d, 0x31, 0x0f, 0x14, 0x4b, 0xd3, 0x32, 0x25, 0x82, 0x80, 0x46, 0x39, 0xdd, 0x29, 0x60, 0x96, 0x9a, 0x99, 0x3a, 0x9f, 0x2a, 0x36, 0x09, 0xf8, 0x56, 0xe1, 0x41, 0x5a, 0x0a, 0x4d, 0xcf, 0x58, 0xa7, 0x86, 0x4e, 0x41, 0xe2, 0xa8, 0xc8, 0x0d, 0xfc, 0x15, 0x8a, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1857_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x89, 0x66, 0x21, 0xd2, 0x32, 0x83, 0xb1, 0x21, 0x11, 0x04, 0x8d, 0x1c, 0x97, 0x8e, 0x2c, 0x28, 0x6d, 0x60, 0xb6, 0xef, 0x7c, 0xe3, 0x7a, 0xf3, 0x6c, 0xf7, 0xaa, 0x4d, 0xe2, 0x68, 0xd6, 0x26, 0xde, 0x7d, 0xdc, 0xb3, 0x56, 0xd1, 0x67, 0xc7, 0x48, 0x3c, 0x69, 0x45, 0x5c, 0x75, 0x2c, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1857 = { .name = "ecdsa_brainpoolp384r1_sha384_1857", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1857_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1857_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1857_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 327 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1858 for ECDSA, tcId is 328 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1858_pubkey[] = { 0x5d, 0x08, 0x2c, 0xde, 0x60, 0x86, 0xf8, 0xea, 0x69, 0x94, 0xf4, 0x6e, 0x9d, 0xc0, 0x6c, 0x1c, 0x1d, 0x2c, 0x3a, 0x3c, 0x2d, 0xc5, 0xc9, 0x7b, 0xf1, 0x37, 0x65, 0x3d, 0x9b, 0x2e, 0xd2, 0x11, 0x01, 0xba, 0xd8, 0x43, 0xd4, 0x6e, 0x4b, 0x79, 0x25, 0xb9, 0xaf, 0x70, 0x34, 0xc6, 0xd0, 0x21, 0x12, 0xc7, 0xf5, 0x6e, 0x65, 0xd2, 0x33, 0x10, 0x40, 0x63, 0x39, 0x1f, 0xb3, 0x82, 0x8b, 0x39, 0x90, 0xe6, 0x89, 0x3d, 0x77, 0x74, 0x6e, 0x42, 0x30, 0x5e, 0x6a, 0x5b, 0xa1, 0x11, 0xd9, 0x76, 0xd6, 0x93, 0xf5, 0x95, 0xaf, 0x85, 0x8f, 0x19, 0xfa, 0xc7, 0x23, 0x4f, 0x74, 0x84, 0xc4, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1858_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x38, 0xe8, 0xda, 0xe2, 0x16, 0xc6, 0x3f, 0x06, 0xb3, 0xed, 0xbd, 0x0f, 0x9b, 0xa7, 0xa5, 0xe4, 0xa3, 0x32, 0xec, 0x18, 0x72, 0x51, 0xe3, 0xd6, 0x27, 0x83, 0x9d, 0x1b, 0xaa, 0xc6, 0x67, 0xd7, 0xca, 0xad, 0x2a, 0xb0, 0xa1, 0xea, 0x9f, 0xbb, 0x12, 0xdc, 0x5a, 0x71, 0xe3, 0xb4, 0x9b, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1858 = { .name = "ecdsa_brainpoolp384r1_sha384_1858", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1858_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1858_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1858_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 328 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1859 for ECDSA, tcId is 329 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1859_pubkey[] = { 0x74, 0x07, 0xca, 0x6c, 0x2a, 0x18, 0x3f, 0x9c, 0xa1, 0x37, 0x66, 0x09, 0xe9, 0xc7, 0x8a, 0x8d, 0x08, 0x0e, 0xff, 0xad, 0x15, 0xa4, 0xf6, 0x3c, 0xbb, 0x7a, 0x16, 0x8e, 0x3c, 0x78, 0x9b, 0x8b, 0x59, 0xce, 0x4d, 0x31, 0x22, 0xca, 0x08, 0xa8, 0x69, 0x07, 0xba, 0x48, 0x7f, 0x71, 0x7f, 0xbc, 0x3e, 0x2c, 0x56, 0xa9, 0xb3, 0x46, 0x0a, 0x51, 0x36, 0xb2, 0x13, 0xbe, 0x8d, 0x48, 0xcb, 0x3d, 0xc9, 0xc7, 0xad, 0x94, 0x5b, 0x1d, 0xce, 0xcb, 0xf9, 0x3f, 0xa6, 0xcf, 0xaa, 0xf8, 0xdb, 0xd7, 0x0f, 0x10, 0x40, 0xb9, 0x7a, 0xd8, 0xe3, 0xac, 0x30, 0xf2, 0xe6, 0x4f, 0xd7, 0xcc, 0x76, 0xd6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1859_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x0d, 0x24, 0x36, 0xa5, 0x99, 0xb3, 0x96, 0xa5, 0x1c, 0x54, 0x6e, 0x05, 0xd1, 0xc3, 0xd2, 0x5a, 0x8f, 0x6d, 0x05, 0x93, 0x5a, 0xe5, 0x03, 0x1d, 0xad, 0x3c, 0xdd, 0x7c, 0xb3, 0x6c, 0xf6, 0x91, 0x2a, 0x43, 0x3d, 0xe2, 0x8f, 0x84, 0x75, 0xd3, 0xb1, 0xe2, 0xe1, 0xce, 0x77, 0x61, 0x08, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1859 = { .name = "ecdsa_brainpoolp384r1_sha384_1859", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1859_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1859_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1859_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 329 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1860 for ECDSA, tcId is 330 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1860_pubkey[] = { 0x4f, 0xc3, 0x2a, 0x52, 0x26, 0x82, 0x0e, 0xc9, 0xc3, 0xff, 0xf2, 0xc7, 0x4e, 0x0b, 0x36, 0xd7, 0xde, 0x02, 0x8e, 0x59, 0xfc, 0x00, 0x5f, 0x38, 0x07, 0xa3, 0xbd, 0x59, 0x89, 0x2c, 0x9a, 0xd2, 0x0d, 0xba, 0x71, 0x68, 0xef, 0x9e, 0xd9, 0xbf, 0x99, 0xb2, 0x5e, 0xd0, 0x1b, 0xcf, 0xc6, 0xca, 0x6a, 0x13, 0xda, 0x2e, 0x85, 0x27, 0x77, 0xa6, 0xf9, 0x9d, 0x04, 0x32, 0x2a, 0x1b, 0x9f, 0xb4, 0x22, 0x76, 0x84, 0xbf, 0x7c, 0x40, 0xd4, 0xd3, 0xef, 0x92, 0x79, 0x80, 0x03, 0xa3, 0xbf, 0x2d, 0xa1, 0x58, 0xd5, 0x68, 0x64, 0x57, 0xc3, 0x3d, 0x0e, 0x24, 0xbe, 0x5c, 0x26, 0x5f, 0xc4, 0x73, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1860_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1860 = { .name = "ecdsa_brainpoolp384r1_sha384_1860", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1860_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1860_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1860_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 330 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1861 for ECDSA, tcId is 331 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1861_pubkey[] = { 0x73, 0x50, 0xa7, 0xd0, 0x0d, 0x77, 0x19, 0xa3, 0x18, 0x52, 0x2e, 0xf4, 0xc5, 0xe6, 0xbe, 0x24, 0xb3, 0xb2, 0xcb, 0x30, 0x0c, 0x59, 0x6f, 0x79, 0xe8, 0xdd, 0x31, 0xa4, 0x68, 0x8f, 0xe6, 0x5a, 0x54, 0xb2, 0xd7, 0x49, 0x7a, 0x06, 0x82, 0x1e, 0xec, 0xba, 0xf3, 0x1b, 0x2f, 0xa7, 0xcd, 0xcb, 0x4b, 0xd7, 0x2f, 0xc7, 0xf0, 0x5e, 0x32, 0x45, 0x7f, 0xda, 0x0c, 0xc3, 0xf3, 0x21, 0x15, 0x77, 0x44, 0xf1, 0x84, 0x1c, 0x30, 0xbd, 0x08, 0x6e, 0x6d, 0xdd, 0x5b, 0xf4, 0x15, 0xeb, 0x71, 0xec, 0xbe, 0x36, 0xf0, 0xf3, 0xfd, 0x23, 0xd3, 0xc4, 0x14, 0x87, 0xfb, 0x28, 0x3e, 0x0e, 0x97, 0x94, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1861_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1861 = { .name = "ecdsa_brainpoolp384r1_sha384_1861", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1861_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1861_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1861_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 331 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1862 for ECDSA, tcId is 332 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1862_pubkey[] = { 0x61, 0x49, 0x8a, 0xd3, 0x1a, 0x84, 0xee, 0xd1, 0x02, 0xba, 0x27, 0x12, 0xeb, 0x8a, 0x7b, 0xd9, 0x23, 0x20, 0xbd, 0xa4, 0xac, 0x6d, 0x07, 0xb4, 0x32, 0x6a, 0x30, 0x86, 0x9d, 0x19, 0xeb, 0x1b, 0x96, 0x22, 0x9d, 0x21, 0xef, 0xd7, 0x11, 0xdc, 0xf7, 0x30, 0x48, 0xbf, 0x16, 0x68, 0x00, 0xe3, 0x0c, 0xfc, 0xc1, 0x3a, 0x09, 0x14, 0x13, 0x22, 0x84, 0xdb, 0xea, 0xb6, 0xfc, 0xf5, 0xd7, 0x0b, 0x34, 0xca, 0x86, 0xa6, 0x81, 0x15, 0x7e, 0x48, 0x74, 0xab, 0xff, 0xae, 0xeb, 0xb6, 0x9b, 0x8b, 0x71, 0xf6, 0x9d, 0x33, 0x23, 0x06, 0x56, 0x78, 0x23, 0xdd, 0xe5, 0x40, 0x7c, 0xe7, 0x39, 0xe8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1862_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x64, 0xe5, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1862 = { .name = "ecdsa_brainpoolp384r1_sha384_1862", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1862_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1862_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1862_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 332 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1863 for ECDSA, tcId is 333 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1863_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1863_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1863 = { .name = "ecdsa_brainpoolp384r1_sha384_1863", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1863_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1863_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1863_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 333 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1864 for ECDSA, tcId is 334 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1864_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1864_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1864 = { .name = "ecdsa_brainpoolp384r1_sha384_1864", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1864_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1864_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1864_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 334 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1865 for ECDSA, tcId is 335 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1865_pubkey[] = { 0x4d, 0xf8, 0x98, 0x54, 0x4c, 0x2b, 0x10, 0xdc, 0x3c, 0x4d, 0x32, 0x49, 0xfc, 0xa5, 0x13, 0x0e, 0x75, 0x3d, 0x26, 0xe0, 0x83, 0x20, 0xbd, 0x82, 0x39, 0x26, 0xac, 0xb0, 0x50, 0xd8, 0xb6, 0xa4, 0xfe, 0xad, 0xf2, 0x9b, 0xef, 0x07, 0xec, 0xdb, 0x00, 0xe8, 0x5b, 0x34, 0x1f, 0x22, 0x06, 0x9a, 0x00, 0x33, 0x43, 0x69, 0x5d, 0x1e, 0x0a, 0xc0, 0xa7, 0x8b, 0x38, 0x49, 0x0d, 0x97, 0xc1, 0xe9, 0x0e, 0x4f, 0xf4, 0xca, 0x0d, 0x21, 0x40, 0xb9, 0x10, 0x1f, 0x1b, 0x63, 0xf2, 0x9c, 0xa4, 0xf2, 0xbf, 0x91, 0x76, 0xe1, 0x60, 0x04, 0x83, 0x91, 0x62, 0x16, 0xbd, 0x35, 0xab, 0xce, 0x67, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1865_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1865 = { .name = "ecdsa_brainpoolp384r1_sha384_1865", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1865_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1865_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1865_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 335 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1866 for ECDSA, tcId is 336 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1866_pubkey[] = { 0x3e, 0x95, 0x5d, 0x28, 0x45, 0x89, 0x77, 0x58, 0x37, 0xc9, 0xb8, 0x3d, 0xbc, 0xb4, 0x91, 0x86, 0xd6, 0x95, 0xd6, 0xb5, 0x3f, 0x57, 0x71, 0x68, 0x9f, 0x64, 0x58, 0xe4, 0x0a, 0x2b, 0x6d, 0xad, 0x62, 0x54, 0xcb, 0xb2, 0x27, 0xde, 0x46, 0x75, 0x84, 0x9d, 0x11, 0xe0, 0xfd, 0xf3, 0x21, 0x14, 0x3c, 0x4f, 0x0a, 0xe8, 0x80, 0x33, 0x67, 0x71, 0x61, 0x86, 0x17, 0x4f, 0x91, 0xb7, 0x03, 0x5b, 0x35, 0xbf, 0x84, 0x90, 0xe4, 0x9f, 0x9c, 0x46, 0x14, 0x7b, 0x6d, 0x3b, 0x71, 0xd9, 0x6f, 0x74, 0xab, 0xfa, 0x5e, 0x40, 0xf3, 0x3c, 0x10, 0x0f, 0x79, 0xd4, 0x59, 0x62, 0x41, 0x91, 0xce, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1866_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1866 = { .name = "ecdsa_brainpoolp384r1_sha384_1866", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1866_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1866_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1866_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 336 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1867 for ECDSA, tcId is 337 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1867_pubkey[] = { 0x39, 0xc4, 0x48, 0x73, 0xcc, 0xab, 0x02, 0x3c, 0x4b, 0x36, 0x6a, 0x64, 0x6d, 0xec, 0xb4, 0xbe, 0xb5, 0x67, 0x2b, 0x6d, 0x21, 0x40, 0xfa, 0x0f, 0xd2, 0x00, 0x37, 0x4a, 0xa0, 0x13, 0x01, 0x00, 0x8c, 0x04, 0x19, 0xc3, 0x39, 0x2c, 0x58, 0x90, 0x00, 0x81, 0x6e, 0x1f, 0x18, 0x05, 0x9a, 0x4c, 0x2b, 0x61, 0x04, 0xbe, 0x5e, 0x26, 0xc6, 0x57, 0xaa, 0x1f, 0x6f, 0xa4, 0xad, 0xdf, 0x3f, 0xf5, 0x2a, 0x45, 0x67, 0x98, 0x00, 0xdd, 0x28, 0xcd, 0x62, 0x87, 0x11, 0xf2, 0xd1, 0xc1, 0x11, 0x53, 0xa3, 0x6c, 0x6c, 0x42, 0xfb, 0xa6, 0x95, 0x4c, 0xd3, 0x7f, 0xd2, 0x52, 0x11, 0x2d, 0xe1, 0xa4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1867_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1867 = { .name = "ecdsa_brainpoolp384r1_sha384_1867", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1867_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1867_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1867_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 337 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1868 for ECDSA, tcId is 338 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1868_pubkey[] = { 0x5d, 0x77, 0x13, 0x4e, 0x89, 0x0a, 0xc7, 0x2f, 0x9c, 0x69, 0xfc, 0xc3, 0xf1, 0x81, 0xae, 0x74, 0x6f, 0xef, 0xff, 0xda, 0xfc, 0x1d, 0xfc, 0x79, 0x1c, 0xf3, 0x3a, 0x22, 0xfb, 0x0f, 0x8e, 0x58, 0x61, 0x88, 0xcf, 0x2d, 0x5d, 0x06, 0x0d, 0xdb, 0x04, 0x00, 0x4b, 0xaf, 0x56, 0x19, 0x1c, 0x9f, 0x0e, 0x74, 0x01, 0xdd, 0xcc, 0x47, 0xa0, 0x9b, 0x5e, 0xcf, 0x27, 0x19, 0xcc, 0x93, 0x60, 0x10, 0xa9, 0x37, 0x1a, 0x7f, 0x76, 0x24, 0xe6, 0x3e, 0x7a, 0x00, 0x55, 0x0a, 0x13, 0xd0, 0x35, 0xcf, 0x58, 0x6d, 0x3b, 0x52, 0x2c, 0x7f, 0xd0, 0x62, 0x51, 0xad, 0xbb, 0x0f, 0x0a, 0xad, 0x3d, 0xd7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1868_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1868 = { .name = "ecdsa_brainpoolp384r1_sha384_1868", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1868_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1868_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1868_sig, .siglen = 96, .result = -1, .comment = "u1 == 1, tcId is 338 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1869 for ECDSA, tcId is 339 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1869_pubkey[] = { 0x60, 0x7c, 0xd9, 0x4c, 0x42, 0xf5, 0xbb, 0xfc, 0xf8, 0x57, 0xa7, 0x08, 0xac, 0x16, 0x3f, 0x0a, 0xfc, 0x0a, 0x65, 0xc8, 0xd8, 0x87, 0x25, 0xf1, 0x8c, 0x4b, 0xf7, 0xeb, 0x7c, 0xf5, 0xd3, 0x4a, 0xca, 0x60, 0x08, 0xa2, 0x7b, 0x4e, 0x5f, 0xd9, 0x47, 0x61, 0x34, 0xed, 0x85, 0xfc, 0xd3, 0x2c, 0x89, 0xf2, 0x48, 0x29, 0x0c, 0x59, 0xb8, 0xfb, 0x96, 0x3e, 0x90, 0xba, 0xb9, 0xb0, 0xb3, 0xe3, 0x13, 0xd3, 0xb8, 0xe0, 0xa6, 0xc8, 0x90, 0x14, 0x55, 0xa2, 0x2b, 0x7b, 0x74, 0xa1, 0x08, 0x15, 0x2c, 0x5b, 0x81, 0x4b, 0xa5, 0x75, 0xde, 0x8d, 0xe0, 0x7c, 0xdb, 0x8d, 0x67, 0xba, 0x2b, 0x50, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1869_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1869 = { .name = "ecdsa_brainpoolp384r1_sha384_1869", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1869_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1869_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1869_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 339 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1870 for ECDSA, tcId is 340 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1870_pubkey[] = { 0x4b, 0x4a, 0xfb, 0xd9, 0x17, 0x46, 0xb1, 0xa4, 0xdf, 0x6d, 0x0d, 0x71, 0x7a, 0xfc, 0x75, 0x28, 0xfa, 0x4a, 0x9d, 0xda, 0x9a, 0x62, 0xaf, 0xee, 0x19, 0xa7, 0x2f, 0xc0, 0x01, 0x9a, 0xa2, 0xea, 0x89, 0xa1, 0x25, 0xbe, 0xa7, 0x67, 0x55, 0x06, 0x23, 0x06, 0x56, 0xca, 0xaf, 0xf5, 0x2c, 0x73, 0x5f, 0x5c, 0x35, 0x75, 0xbf, 0x66, 0x96, 0x37, 0xef, 0xdb, 0x67, 0x24, 0x77, 0x50, 0x0f, 0x1f, 0xe3, 0x7b, 0x45, 0xdc, 0xf8, 0x79, 0x48, 0x7a, 0xd6, 0xca, 0x36, 0xc4, 0x14, 0x73, 0x29, 0xfb, 0x74, 0x17, 0x06, 0xce, 0x9b, 0x92, 0x8c, 0xe4, 0x7b, 0xf6, 0xdc, 0x0f, 0x9e, 0x44, 0x01, 0x7f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1870_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1870 = { .name = "ecdsa_brainpoolp384r1_sha384_1870", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1870_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1870_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1870_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 340 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1871 for ECDSA, tcId is 341 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1871_pubkey[] = { 0x0d, 0x8b, 0x24, 0x6c, 0x62, 0x31, 0x88, 0xb7, 0x45, 0x57, 0x16, 0xac, 0x18, 0x9b, 0x9a, 0xf4, 0x41, 0x67, 0x6a, 0x1c, 0x41, 0xcd, 0x57, 0x57, 0x54, 0xbd, 0x02, 0xae, 0x4d, 0x68, 0x25, 0x30, 0x4b, 0x96, 0x1d, 0xdf, 0x08, 0x26, 0xbb, 0x16, 0x1e, 0x3d, 0x63, 0xe9, 0xbc, 0x71, 0xf1, 0xd4, 0x6e, 0xdb, 0xed, 0xdc, 0x2d, 0x40, 0xda, 0xfd, 0xcc, 0xac, 0x90, 0xae, 0x85, 0xcd, 0x61, 0x6a, 0x0e, 0xa1, 0xe4, 0xa0, 0x8a, 0xe8, 0xfc, 0x33, 0x58, 0xce, 0x7d, 0x51, 0x42, 0xee, 0xe8, 0xf3, 0xbe, 0xbd, 0xc1, 0x45, 0x91, 0xc4, 0xc9, 0xb1, 0x5b, 0xff, 0x12, 0xb8, 0xcf, 0x08, 0x33, 0x4a, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1871_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1871 = { .name = "ecdsa_brainpoolp384r1_sha384_1871", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1871_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1871_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1871_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 341 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1872 for ECDSA, tcId is 342 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1872_pubkey[] = { 0x04, 0xd9, 0xd4, 0xa6, 0x2d, 0x6e, 0xb0, 0x20, 0x73, 0xe7, 0x38, 0xb1, 0xe4, 0x39, 0xce, 0xcd, 0x54, 0x40, 0x03, 0x19, 0x11, 0xf4, 0x51, 0x90, 0xeb, 0x60, 0x62, 0xa3, 0x35, 0x35, 0xfc, 0x52, 0x69, 0xbc, 0xfc, 0x25, 0xd4, 0xaf, 0xc1, 0xda, 0xe0, 0xeb, 0xad, 0x94, 0x8d, 0x77, 0x32, 0xd8, 0x02, 0x9a, 0xf3, 0x7e, 0x89, 0xa3, 0xce, 0xa7, 0xdf, 0x38, 0xb0, 0x20, 0xf6, 0x24, 0x90, 0x6f, 0xca, 0x6d, 0x94, 0x4e, 0x14, 0x86, 0x85, 0x3f, 0xe8, 0xe5, 0xba, 0x9c, 0xfb, 0xa2, 0xd7, 0x4a, 0x85, 0x2e, 0xc5, 0x87, 0xd4, 0x6f, 0xe4, 0x99, 0x17, 0xc3, 0x64, 0x41, 0x8e, 0xf7, 0xec, 0xa5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1872_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1872 = { .name = "ecdsa_brainpoolp384r1_sha384_1872", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1872_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1872_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1872_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 342 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1873 for ECDSA, tcId is 343 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1873_pubkey[] = { 0x1a, 0x4a, 0x55, 0xc9, 0xb0, 0xce, 0x43, 0xd7, 0xed, 0x78, 0xa9, 0x8d, 0x9b, 0xf6, 0x45, 0x9c, 0xcf, 0x34, 0x94, 0x66, 0xfc, 0xcc, 0x45, 0x75, 0x98, 0xfc, 0x15, 0xa1, 0xd6, 0x95, 0x6d, 0x8c, 0xe8, 0x34, 0x8b, 0x23, 0x32, 0xff, 0xfb, 0x3d, 0x51, 0x6b, 0x07, 0x8d, 0x28, 0xd3, 0x29, 0xdd, 0x73, 0xf4, 0x5a, 0x4c, 0xe1, 0xf5, 0xdc, 0x77, 0x2f, 0x3c, 0x32, 0x83, 0xaf, 0x65, 0x64, 0xe6, 0xe4, 0x10, 0xf9, 0xd5, 0x06, 0x4b, 0x64, 0x84, 0x06, 0x59, 0x66, 0x93, 0x66, 0x93, 0xf6, 0x2a, 0xc9, 0x94, 0x0e, 0xb2, 0x89, 0x14, 0xa0, 0x91, 0xd2, 0x96, 0x4c, 0xd8, 0x43, 0xb4, 0x10, 0x28, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1873_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0xa8, 0xe8, 0x17, 0xf4, 0xea, 0x82, 0xb8, 0x31, 0xba, 0x5e, 0x67, 0x18, 0x30, 0xb4, 0x31, 0x28, 0x46, 0xb2, 0x3d, 0xa1, 0x4f, 0xf7, 0xd4, 0x3b, 0xaf, 0x3a, 0x7e, 0xe7, 0xaa, 0x06, 0x1c, 0x86, 0x42, 0x2a, 0xaf, 0x27, 0xff, 0xc5, 0xc6, 0x55, 0x40, 0x68, 0x68, 0xb5, 0xbf, 0x19, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1873 = { .name = "ecdsa_brainpoolp384r1_sha384_1873", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1873_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1873_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1873_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 343 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1874 for ECDSA, tcId is 344 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1874_pubkey[] = { 0x37, 0x3a, 0xc9, 0x8f, 0x08, 0x82, 0x68, 0xa8, 0x6d, 0x13, 0x6d, 0xe4, 0xfa, 0x0c, 0xe2, 0xc4, 0x10, 0x42, 0xcd, 0x33, 0xed, 0x2d, 0x07, 0x25, 0x0f, 0x53, 0xcd, 0x4e, 0xd4, 0x3f, 0xa1, 0xda, 0x42, 0x5d, 0xa5, 0x97, 0xbd, 0x5b, 0x41, 0x3d, 0x56, 0xcf, 0xff, 0x95, 0x42, 0x67, 0x10, 0x4f, 0x06, 0x9e, 0x04, 0x53, 0xbb, 0xbd, 0x79, 0x28, 0x03, 0x16, 0xf8, 0xc1, 0xc1, 0x61, 0xa8, 0x46, 0xaf, 0x37, 0x9a, 0x94, 0x1e, 0xd2, 0x86, 0xe5, 0x93, 0xe7, 0xf2, 0x89, 0xba, 0x4f, 0xff, 0x42, 0x45, 0x8b, 0x27, 0x3a, 0x3b, 0xa4, 0x99, 0x57, 0x4e, 0x13, 0x4e, 0x7f, 0xb4, 0xa7, 0xdc, 0x19, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1874_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x32, 0x6c, 0x08, 0x72, 0xa7, 0x22, 0x4e, 0x7a, 0x10, 0x40, 0x87, 0xac, 0xf4, 0xc4, 0xb4, 0xe3, 0xe5, 0xab, 0xa4, 0xff, 0xe4, 0x62, 0x5f, 0xc3, 0x95, 0x5c, 0xe9, 0x64, 0x7b, 0xf7, 0x1f, 0xb5, 0x96, 0xb8, 0x39, 0x71, 0xad, 0x2b, 0x52, 0x47, 0x3a, 0x28, 0x21, 0x99, 0x1c, 0x80, 0x89, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1874 = { .name = "ecdsa_brainpoolp384r1_sha384_1874", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1874_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1874_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1874_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 344 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1875 for ECDSA, tcId is 345 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1875_pubkey[] = { 0x7e, 0x6a, 0xb4, 0x29, 0xb9, 0xe3, 0x3a, 0x97, 0x4f, 0x6a, 0xb9, 0xa4, 0x9e, 0xb1, 0x52, 0xc4, 0x84, 0x57, 0x5f, 0xad, 0x5d, 0x9b, 0xcd, 0xdc, 0xb8, 0x7e, 0xdc, 0xe1, 0x6e, 0x79, 0x33, 0x3a, 0x93, 0x72, 0x76, 0xf3, 0x6a, 0xec, 0x91, 0x21, 0xde, 0x45, 0x03, 0x84, 0xcb, 0x20, 0xbb, 0x2e, 0x85, 0x95, 0xf6, 0xc2, 0x88, 0x0d, 0x89, 0x19, 0x8e, 0x1b, 0x62, 0x5e, 0x65, 0x05, 0x6d, 0x0a, 0x19, 0xa5, 0x8d, 0x1d, 0x1c, 0x55, 0x1b, 0xcc, 0x5d, 0xd3, 0x9d, 0x28, 0x1d, 0x72, 0x6d, 0xad, 0x41, 0x08, 0x48, 0x8c, 0x8f, 0x94, 0x1a, 0xc9, 0x83, 0x16, 0x9c, 0xac, 0xe3, 0xec, 0xc7, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1875_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1875_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x65, 0xcf, 0x0a, 0x5b, 0xce, 0x70, 0xaf, 0x07, 0x8a, 0xf6, 0xd5, 0xa1, 0x45, 0x45, 0xca, 0x61, 0x9e, 0x47, 0xd6, 0xeb, 0x0f, 0xd0, 0x53, 0x1e, 0xcc, 0x74, 0x3a, 0x76, 0x85, 0x53, 0x02, 0x84, 0xa8, 0x32, 0x89, 0xc2, 0xd0, 0x9e, 0x02, 0x43, 0x84, 0xae, 0x5e, 0x77, 0x87, 0x99, 0xe4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1875 = { .name = "ecdsa_brainpoolp384r1_sha384_1875", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1875_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1875_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1875_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 345 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1876 for ECDSA, tcId is 346 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1876_pubkey[] = { 0x1f, 0xbb, 0x37, 0xf7, 0x51, 0x95, 0xc3, 0xf2, 0xde, 0x3a, 0xfc, 0xc8, 0x8a, 0xd7, 0xeb, 0x32, 0x10, 0x81, 0x44, 0x60, 0x89, 0x43, 0xfa, 0xce, 0x3a, 0x89, 0x00, 0x05, 0xff, 0x2a, 0x3e, 0x0b, 0x55, 0x80, 0x79, 0xc5, 0x84, 0x26, 0x20, 0xf4, 0x4a, 0xdc, 0x0c, 0x38, 0xdd, 0x88, 0xaa, 0xc5, 0x51, 0x73, 0x4f, 0x8e, 0xb8, 0x27, 0xdf, 0x92, 0x9d, 0x73, 0x17, 0x71, 0x4a, 0x29, 0xcf, 0x8b, 0xa4, 0x32, 0xca, 0xf6, 0x89, 0x09, 0x4d, 0x00, 0xeb, 0x9d, 0x63, 0xcb, 0xc9, 0x08, 0xba, 0x76, 0xca, 0x5b, 0x1f, 0x93, 0xd2, 0x29, 0x47, 0x7c, 0x96, 0x08, 0x42, 0x94, 0x0f, 0x42, 0x24, 0xd3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1876_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2e, 0x09, 0x9a, 0xdf, 0xe4, 0xd9, 0x12, 0x05, 0x96, 0xe8, 0xa1, 0x52, 0x03, 0x99, 0xb0, 0xe2, 0x49, 0x55, 0x5b, 0x17, 0x1e, 0x0a, 0x71, 0x96, 0x73, 0x07, 0x54, 0x8a, 0x3c, 0x28, 0x75, 0x3f, 0xa4, 0x0b, 0xbc, 0xb0, 0xa8, 0x65, 0x83, 0x69, 0xdc, 0x8c, 0xa0, 0xca, 0xa0, 0x5f, 0xb0, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1876 = { .name = "ecdsa_brainpoolp384r1_sha384_1876", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1876_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1876_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1876_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 346 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1877 for ECDSA, tcId is 347 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1877_pubkey[] = { 0x07, 0xfa, 0x30, 0xc8, 0x37, 0xc8, 0xad, 0x02, 0x93, 0x26, 0xa1, 0xd4, 0x48, 0xbd, 0x27, 0x52, 0x1b, 0x5d, 0x26, 0xaa, 0xd4, 0xd8, 0x24, 0x4b, 0x72, 0x42, 0x49, 0x3d, 0xf7, 0x01, 0x72, 0xe6, 0xdd, 0x1d, 0xaf, 0x5c, 0x7e, 0x07, 0xf4, 0xfa, 0x10, 0x2f, 0x5c, 0x41, 0x5a, 0x4e, 0xc6, 0x1f, 0x09, 0x04, 0x52, 0x7d, 0xf8, 0x77, 0x52, 0x7f, 0x7d, 0x0f, 0x5a, 0x7f, 0x71, 0xb6, 0xd9, 0xc0, 0x3f, 0x2d, 0xe1, 0xdf, 0x88, 0x04, 0x86, 0x8e, 0x73, 0x37, 0xda, 0x35, 0xc9, 0xb1, 0xff, 0xc9, 0xbf, 0x2e, 0x27, 0x9c, 0x3a, 0xf8, 0xa0, 0x78, 0x6e, 0x6f, 0x39, 0x83, 0x2c, 0xc6, 0xed, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1877_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1877_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5c, 0x13, 0x35, 0xbf, 0xc9, 0xb2, 0x24, 0x0b, 0x2d, 0xd1, 0x42, 0xa4, 0x07, 0x33, 0x61, 0xc4, 0x92, 0xaa, 0xb6, 0x2e, 0x3c, 0x14, 0xe3, 0x2c, 0xe6, 0x0e, 0xa9, 0x14, 0x78, 0x50, 0xea, 0x7f, 0x48, 0x17, 0x79, 0x61, 0x50, 0xcb, 0x06, 0xd3, 0xb9, 0x19, 0x41, 0x95, 0x40, 0xbf, 0x60, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1877 = { .name = "ecdsa_brainpoolp384r1_sha384_1877", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1877_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1877_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1877_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 347 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1878 for ECDSA, tcId is 348 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1878_pubkey[] = { 0x61, 0x39, 0x7a, 0xe7, 0xfe, 0x8e, 0x7e, 0x89, 0x4b, 0xfa, 0x68, 0x9e, 0x58, 0x13, 0x51, 0x42, 0x93, 0xa0, 0xf1, 0xb9, 0xf1, 0x09, 0x0c, 0x0d, 0x96, 0x96, 0x37, 0x9b, 0x61, 0x28, 0x7a, 0x75, 0x2a, 0x3f, 0x7d, 0x1d, 0x24, 0x80, 0xfe, 0x41, 0x27, 0x49, 0x8d, 0x0e, 0xed, 0xa8, 0x4c, 0x63, 0x0c, 0x2f, 0xad, 0xd3, 0x7e, 0xa3, 0x6b, 0xfe, 0x53, 0x2b, 0x5d, 0x3a, 0x0f, 0x10, 0x1d, 0xdd, 0x3a, 0xc5, 0x94, 0x58, 0x39, 0x96, 0x48, 0xf3, 0xef, 0xaf, 0x58, 0x33, 0xde, 0xc1, 0xc8, 0xc8, 0xec, 0xe0, 0x55, 0x15, 0x89, 0x35, 0x53, 0xef, 0x4d, 0x58, 0x12, 0x0d, 0x37, 0xce, 0x2e, 0xcd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1878_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1878_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x25, 0x91, 0x60, 0xb3, 0x21, 0xc3, 0x50, 0xf4, 0xf2, 0x29, 0x9a, 0xa7, 0x7c, 0x72, 0xa0, 0x92, 0x48, 0x92, 0x79, 0x57, 0xb6, 0x41, 0x43, 0x08, 0xbf, 0x8c, 0x7f, 0xb4, 0xf2, 0xdb, 0xba, 0x5c, 0xa7, 0x91, 0x98, 0xf8, 0x0a, 0x15, 0x0e, 0x1c, 0xeb, 0x5a, 0x98, 0x45, 0x14, 0x4e, 0xee, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1878 = { .name = "ecdsa_brainpoolp384r1_sha384_1878", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1878_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1878_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1878_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 348 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1879 for ECDSA, tcId is 349 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1879_pubkey[] = { 0x7f, 0x16, 0x6e, 0xfa, 0x8d, 0x84, 0x16, 0xd9, 0x22, 0xf5, 0x76, 0x73, 0xa2, 0x18, 0x0c, 0xfb, 0xb4, 0x9e, 0x8d, 0x16, 0x0d, 0x60, 0xba, 0x5e, 0xc9, 0x0b, 0xa5, 0x47, 0xf3, 0xec, 0xcd, 0x22, 0xce, 0x6a, 0xfd, 0x99, 0xa0, 0xfb, 0x29, 0x2c, 0xfd, 0x16, 0xb0, 0x69, 0x2b, 0x9c, 0xab, 0x03, 0x41, 0x85, 0x79, 0xe6, 0x7c, 0x87, 0xb3, 0x59, 0x91, 0x2f, 0x6c, 0xb4, 0x15, 0x8b, 0xdd, 0x7e, 0xa1, 0x30, 0xb5, 0x00, 0x77, 0x26, 0xdf, 0x2f, 0xce, 0x31, 0x99, 0x15, 0xde, 0xed, 0xc4, 0xf7, 0xe8, 0x9e, 0xe2, 0x3f, 0x78, 0x6e, 0x25, 0x37, 0x3c, 0x99, 0x37, 0x49, 0x8b, 0xab, 0x81, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1879_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1879_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x88, 0x19, 0x64, 0xe1, 0xbb, 0xa9, 0xa2, 0x8c, 0x7a, 0x1d, 0x84, 0x37, 0x9c, 0x65, 0xbb, 0x3d, 0xa7, 0x2f, 0x3c, 0xc8, 0x79, 0xf7, 0xf5, 0x79, 0xd2, 0xf9, 0xb3, 0x4a, 0x57, 0x44, 0x32, 0xd6, 0xc7, 0xd1, 0xc2, 0x29, 0xee, 0x22, 0x7d, 0x4d, 0xdb, 0xdd, 0x9f, 0x15, 0xdf, 0x99, 0x78, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1879 = { .name = "ecdsa_brainpoolp384r1_sha384_1879", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1879_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1879_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1879_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 349 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1880 for ECDSA, tcId is 350 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1880_pubkey[] = { 0x77, 0xc9, 0xc2, 0xe6, 0x58, 0xb0, 0x04, 0xab, 0x68, 0x40, 0xd7, 0xc3, 0x3a, 0x5e, 0x7e, 0xb5, 0xf9, 0x3b, 0xa3, 0xa7, 0xc5, 0xb3, 0x2f, 0x72, 0x75, 0xfd, 0x75, 0xb0, 0x7c, 0x1c, 0x92, 0xf5, 0xae, 0x31, 0x57, 0x6b, 0x9c, 0xbc, 0xa0, 0x46, 0x33, 0x7e, 0x6d, 0x6e, 0xa7, 0x6c, 0x14, 0x5e, 0x67, 0xc5, 0x60, 0x10, 0xdd, 0x97, 0x49, 0xe2, 0xd9, 0x0b, 0x3e, 0xb5, 0x7e, 0xf1, 0xc4, 0xc7, 0x37, 0x41, 0x23, 0x3a, 0x32, 0xa6, 0xa4, 0x35, 0x5b, 0x8c, 0x4e, 0x3a, 0x24, 0xbc, 0xf5, 0x98, 0x66, 0x27, 0xc7, 0x48, 0x07, 0x83, 0x16, 0x1d, 0xb1, 0xd2, 0xa5, 0x33, 0x2b, 0xd7, 0x5f, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1880_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1880_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0e, 0x3c, 0x83, 0xbb, 0x59, 0xab, 0xc5, 0x72, 0x20, 0x17, 0x01, 0x52, 0x25, 0x1c, 0xf0, 0x10, 0xb0, 0x08, 0x1f, 0xec, 0xca, 0x2c, 0x95, 0x7c, 0xa7, 0xec, 0x1a, 0x33, 0xda, 0xe3, 0xca, 0x1d, 0x70, 0x94, 0xb1, 0xc0, 0xf7, 0x1b, 0x03, 0xe0, 0x08, 0xbb, 0xe6, 0x46, 0x59, 0x11, 0x9f, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1880 = { .name = "ecdsa_brainpoolp384r1_sha384_1880", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1880_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1880_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1880_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 350 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1881 for ECDSA, tcId is 351 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1881_pubkey[] = { 0x64, 0xd9, 0xa3, 0x17, 0xd5, 0xb4, 0x1a, 0xf3, 0x0f, 0xdf, 0xc7, 0x38, 0x94, 0x60, 0xf3, 0x57, 0xfa, 0x99, 0x78, 0x30, 0x4d, 0x02, 0x6b, 0x31, 0x2a, 0xa5, 0xca, 0x04, 0xa1, 0x9b, 0xdc, 0x0c, 0x56, 0x44, 0x0c, 0xfd, 0x14, 0xa0, 0xb0, 0x60, 0xc3, 0xb8, 0xf4, 0xee, 0x8d, 0x4a, 0x5a, 0x37, 0x77, 0x29, 0x9b, 0x22, 0x80, 0xab, 0x4c, 0x85, 0x7e, 0xd2, 0x53, 0x1e, 0x8d, 0xb0, 0x27, 0xf8, 0xc7, 0x23, 0x80, 0x28, 0xbd, 0x7f, 0x7b, 0xa5, 0x9b, 0xc8, 0x05, 0x47, 0xd4, 0xf1, 0x0d, 0xa6, 0xf2, 0xe6, 0x13, 0x58, 0x05, 0x53, 0x40, 0x6f, 0x04, 0x27, 0xec, 0xbd, 0x7b, 0x75, 0x91, 0x6e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1881_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1881_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x1b, 0x97, 0xda, 0x7f, 0x33, 0x4d, 0xaf, 0xd0, 0x1e, 0x2a, 0x01, 0xf8, 0x61, 0x86, 0x32, 0x37, 0x2d, 0x9a, 0xbc, 0xdf, 0x14, 0xeb, 0xaf, 0x72, 0x13, 0xda, 0x37, 0xb1, 0x44, 0x9c, 0x4e, 0x8c, 0x8a, 0x1d, 0xfe, 0x03, 0x38, 0x4f, 0x3a, 0xde, 0x89, 0x07, 0xad, 0x94, 0x42, 0x13, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1881 = { .name = "ecdsa_brainpoolp384r1_sha384_1881", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1881_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1881_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1881_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 351 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1882 for ECDSA, tcId is 352 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1882_pubkey[] = { 0x26, 0x4b, 0xa4, 0x47, 0xf8, 0x0d, 0x72, 0x1b, 0xf1, 0xe7, 0x98, 0x77, 0xf2, 0x7a, 0x23, 0xee, 0x58, 0x56, 0x5e, 0x88, 0xc4, 0x9f, 0x6b, 0x9c, 0xd6, 0x44, 0x8c, 0x02, 0x4b, 0x6f, 0xf5, 0x3a, 0xeb, 0xb2, 0xb0, 0x8c, 0xec, 0x22, 0xeb, 0x2e, 0xb3, 0x8e, 0x30, 0xfd, 0x54, 0x72, 0x7f, 0x01, 0x80, 0x18, 0x87, 0xf9, 0xf9, 0x4d, 0xce, 0x62, 0x5e, 0xd1, 0xd5, 0x63, 0x50, 0xa4, 0xb2, 0x52, 0xe0, 0xdc, 0xfc, 0x09, 0x84, 0x92, 0x8f, 0x25, 0xad, 0x22, 0xa1, 0x31, 0x35, 0xba, 0xf9, 0x96, 0xbf, 0xa8, 0x28, 0x09, 0xfb, 0xe7, 0x9c, 0x09, 0x79, 0x67, 0x0f, 0xdd, 0xc9, 0xfb, 0xa9, 0xe6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1882_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1882_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x39, 0x7e, 0x11, 0x32, 0x5b, 0x2e, 0x2e, 0x37, 0x90, 0xde, 0xe4, 0x85, 0x9f, 0xdc, 0xca, 0x85, 0x59, 0x2b, 0xc4, 0x6f, 0xd0, 0xd5, 0x80, 0xab, 0xc5, 0x11, 0x46, 0x02, 0xb6, 0x85, 0x12, 0xf5, 0x49, 0xd9, 0x85, 0x4c, 0x9a, 0xf0, 0xdb, 0x65, 0x81, 0x89, 0xdd, 0x58, 0x3f, 0x7f, 0xc1, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1882 = { .name = "ecdsa_brainpoolp384r1_sha384_1882", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1882_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1882_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1882_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 352 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1883 for ECDSA, tcId is 353 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1883_pubkey[] = { 0x04, 0x91, 0x80, 0x40, 0xa5, 0x8d, 0xc4, 0x77, 0xa7, 0x24, 0x55, 0x61, 0x27, 0x3d, 0xf2, 0xd8, 0xbd, 0x97, 0x7e, 0x5f, 0xd3, 0x9c, 0x40, 0xd3, 0x01, 0x15, 0x36, 0xcb, 0x2b, 0x9c, 0xfe, 0xe8, 0x2e, 0x2a, 0xb5, 0xf5, 0x39, 0xe5, 0x90, 0x8d, 0xcb, 0xf3, 0xff, 0x24, 0xc6, 0x45, 0xdb, 0x4e, 0x59, 0x69, 0xa9, 0xd8, 0xdf, 0x5c, 0xda, 0xaf, 0xe3, 0x49, 0x0c, 0xaa, 0x49, 0x46, 0xac, 0xf5, 0xeb, 0xe3, 0xe9, 0x3a, 0xab, 0x28, 0xa8, 0xd4, 0xa6, 0xf6, 0x1e, 0x2c, 0x8e, 0x5c, 0x02, 0xdc, 0x60, 0x5c, 0x75, 0x80, 0x6d, 0xdd, 0xdd, 0xeb, 0xe2, 0x39, 0x15, 0x63, 0x11, 0x59, 0xc1, 0xf7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1883_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1883_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xe0, 0x8a, 0x8a, 0x37, 0x29, 0x0e, 0xbf, 0x51, 0x9f, 0x9f, 0x09, 0x47, 0x58, 0x0e, 0xd8, 0x7b, 0x29, 0xee, 0x22, 0xc2, 0x96, 0x15, 0xa8, 0x18, 0x0e, 0xb1, 0xcd, 0xbb, 0xc5, 0x89, 0x9c, 0x07, 0x28, 0xec, 0x9b, 0x32, 0xa9, 0x67, 0x90, 0x24, 0x8a, 0xb3, 0x02, 0xea, 0xbd, 0x6f, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1883 = { .name = "ecdsa_brainpoolp384r1_sha384_1883", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1883_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1883_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1883_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 353 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1884 for ECDSA, tcId is 354 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1884_pubkey[] = { 0x22, 0xe4, 0x4e, 0xbe, 0x0a, 0x35, 0x1e, 0x4c, 0x91, 0xf7, 0xbd, 0xfc, 0x0c, 0x0c, 0x3c, 0x6e, 0x1c, 0x67, 0x9d, 0xa8, 0x4a, 0x32, 0x53, 0x9c, 0x2d, 0xbb, 0x41, 0xea, 0x31, 0x06, 0x1b, 0x08, 0x25, 0xe3, 0xf3, 0x4d, 0x7b, 0x0a, 0xd5, 0x25, 0x26, 0x1e, 0xb9, 0xe4, 0x57, 0xc4, 0x08, 0x19, 0x60, 0x89, 0xe3, 0x30, 0x34, 0x73, 0x1b, 0xa8, 0xe9, 0xf9, 0x5f, 0x5a, 0x23, 0x4b, 0xf8, 0xd3, 0x53, 0x9c, 0x83, 0x81, 0xf4, 0xd9, 0x55, 0x10, 0xd5, 0xe0, 0xf1, 0x45, 0xfd, 0x48, 0x20, 0x5e, 0x5c, 0x60, 0x21, 0x8c, 0x3f, 0x84, 0xb1, 0x89, 0xc8, 0xe4, 0xfd, 0x56, 0x08, 0xb4, 0x97, 0x78, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1884_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1884_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5f, 0x92, 0x93, 0x7a, 0xa5, 0x2d, 0x5d, 0xd1, 0x0f, 0xce, 0xfb, 0x95, 0xa2, 0xd5, 0x7b, 0x61, 0x7d, 0x6d, 0x8b, 0x04, 0xe8, 0xdb, 0x5b, 0x3b, 0x5a, 0x39, 0xab, 0xe8, 0x93, 0xfd, 0xa2, 0xae, 0xb2, 0xf9, 0x78, 0x10, 0x8c, 0x55, 0x8a, 0xab, 0xba, 0xd8, 0x29, 0xce, 0x02, 0xc2, 0x77, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1884 = { .name = "ecdsa_brainpoolp384r1_sha384_1884", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1884_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1884_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1884_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 354 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1885 for ECDSA, tcId is 355 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1885_pubkey[] = { 0x66, 0xed, 0x49, 0x77, 0x9e, 0xd6, 0xa7, 0xb1, 0x0c, 0x81, 0x2b, 0xc7, 0xee, 0x7b, 0x47, 0xa5, 0xd1, 0x1c, 0x5e, 0xa5, 0x02, 0x77, 0x27, 0x3d, 0xa1, 0x40, 0xbc, 0x1b, 0x0c, 0xf5, 0xb8, 0x21, 0x0a, 0x6a, 0x73, 0x7f, 0x7e, 0x9d, 0x92, 0xee, 0xe6, 0xd8, 0x45, 0x13, 0x7e, 0x5c, 0x44, 0xa2, 0x8a, 0xcc, 0xb8, 0xf6, 0x37, 0x38, 0x5c, 0xf6, 0x51, 0x9b, 0xfa, 0xe3, 0xed, 0x3a, 0xe4, 0xd0, 0xac, 0xaa, 0x19, 0xa2, 0x60, 0xa0, 0x1b, 0xd8, 0xcb, 0x53, 0xad, 0x24, 0xda, 0xca, 0xb1, 0x95, 0x4b, 0x20, 0xd1, 0x47, 0x2c, 0xf3, 0x97, 0x5e, 0x87, 0xcc, 0x73, 0x3f, 0x32, 0x9a, 0xb6, 0xbd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1885_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1885_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x59, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1885 = { .name = "ecdsa_brainpoolp384r1_sha384_1885", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1885_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1885_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1885_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 355 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1886 for ECDSA, tcId is 356 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1886_pubkey[] = { 0x30, 0x24, 0x91, 0x20, 0x41, 0xbc, 0x98, 0x9a, 0x93, 0x6f, 0xb4, 0xdc, 0xdd, 0x17, 0x8b, 0x15, 0xe0, 0x3a, 0x0a, 0xa9, 0x4a, 0xba, 0xfb, 0x44, 0x65, 0xb4, 0xa8, 0x9d, 0x44, 0x16, 0xb7, 0xa8, 0xb0, 0x29, 0xd4, 0x7c, 0x17, 0xe6, 0x9a, 0x25, 0x96, 0x2f, 0xf3, 0xae, 0xfe, 0x86, 0x2d, 0xcb, 0x24, 0x9e, 0xe9, 0x25, 0x2b, 0x57, 0x13, 0xe7, 0x47, 0xa2, 0xda, 0x8a, 0xac, 0x2b, 0x96, 0x1e, 0xe2, 0xb6, 0xac, 0xa1, 0x57, 0xa4, 0x48, 0x88, 0x74, 0x86, 0x48, 0xfb, 0xcd, 0xc5, 0x66, 0x1c, 0xd4, 0xa1, 0x69, 0xbb, 0x92, 0xc9, 0xc1, 0xce, 0x50, 0xa7, 0x9a, 0x63, 0x73, 0x50, 0x02, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1886_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1886_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x14, 0x49, 0x90, 0x1c, 0xe4, 0xb0, 0x0f, 0x0e, 0x3a, 0x5f, 0xf8, 0x4c, 0xff, 0x8c, 0x13, 0x48, 0x54, 0xb8, 0x08, 0xe5, 0x04, 0xd1, 0xb8, 0xf0, 0x27, 0xac, 0xe9, 0x59, 0x12, 0x34, 0xe3, 0xf6, 0x2c, 0xe7, 0x0c, 0x35, 0xa8, 0xaa, 0x8e, 0x60, 0xca, 0xfe, 0x1e, 0x0d, 0xf3, 0xed, 0x80, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1886 = { .name = "ecdsa_brainpoolp384r1_sha384_1886", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1886_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1886_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1886_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 356 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1887 for ECDSA, tcId is 357 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1887_pubkey[] = { 0x6c, 0x93, 0x93, 0xb0, 0x0e, 0x9a, 0x62, 0xce, 0x0b, 0x83, 0x67, 0x4c, 0xdc, 0xca, 0x59, 0xb1, 0x8d, 0x5b, 0x34, 0x24, 0x63, 0x48, 0xe3, 0x7c, 0x1d, 0x78, 0x89, 0x8a, 0x52, 0x2d, 0x81, 0x3c, 0x49, 0xd0, 0x8e, 0xfc, 0x5f, 0x3f, 0x7e, 0xf3, 0x3f, 0x3d, 0xc9, 0xdd, 0x1b, 0xc2, 0xe5, 0xc2, 0x00, 0x0b, 0x94, 0x10, 0xce, 0x04, 0xa6, 0x4c, 0xd0, 0x95, 0xae, 0x11, 0x94, 0xbc, 0x1f, 0x51, 0x4c, 0x70, 0x09, 0xa4, 0xe0, 0x68, 0x71, 0xb5, 0x57, 0x15, 0x4c, 0xf4, 0x92, 0xe7, 0xc5, 0x77, 0x49, 0x48, 0x7e, 0xcf, 0xcd, 0x04, 0xcb, 0x31, 0x42, 0x6a, 0xb7, 0x85, 0xff, 0xa9, 0x5e, 0x2f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1887_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1887_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x89, 0xae, 0x6f, 0x8e, 0x21, 0x5b, 0xcf, 0x35, 0xc7, 0xe2, 0xaf, 0xed, 0x1a, 0x6b, 0x98, 0x55, 0x17, 0x16, 0x87, 0xd9, 0xed, 0xbe, 0xa8, 0xaf, 0x5b, 0xf8, 0xe9, 0xdd, 0xc6, 0x67, 0xaa, 0xc4, 0xe1, 0x66, 0xf0, 0x50, 0x97, 0x38, 0x5f, 0xa9, 0xea, 0x3a, 0x62, 0x45, 0xfc, 0x07, 0xb4, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1887 = { .name = "ecdsa_brainpoolp384r1_sha384_1887", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1887_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1887_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1887_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 357 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1888 for ECDSA, tcId is 358 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1888_pubkey[] = { 0x2c, 0x58, 0x27, 0x7a, 0xaa, 0x61, 0xc4, 0x00, 0xd7, 0x03, 0x61, 0x83, 0xaf, 0x49, 0xc9, 0x9a, 0x97, 0xfe, 0xa5, 0xa8, 0xd5, 0xf8, 0x60, 0x8c, 0x4c, 0x6a, 0xc7, 0xa2, 0x82, 0x75, 0x7e, 0x4d, 0xc4, 0xb6, 0xf9, 0x2d, 0x82, 0xa1, 0x02, 0x72, 0xf2, 0xa1, 0x96, 0x96, 0xa4, 0x8f, 0xa7, 0x9f, 0x5a, 0x8a, 0xdb, 0x77, 0x07, 0x40, 0x66, 0x9d, 0x60, 0x10, 0xe5, 0x5f, 0x66, 0x25, 0xb1, 0x41, 0xbe, 0x46, 0x9f, 0xe1, 0x77, 0x9f, 0x4a, 0xdf, 0xe6, 0x4e, 0xab, 0x2e, 0x4a, 0x9a, 0xc5, 0xbf, 0x1c, 0x25, 0xb3, 0xde, 0x0b, 0x74, 0xb8, 0xf9, 0x64, 0x4f, 0xc2, 0x16, 0x01, 0x0d, 0x96, 0x59, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1888_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1888_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xc1, 0x62, 0x56, 0xa0, 0x91, 0x4c, 0xe2, 0x66, 0x1a, 0x54, 0x68, 0x8a, 0xf4, 0xb2, 0x54, 0x6b, 0x1b, 0x59, 0xb0, 0x43, 0x66, 0x7d, 0xa6, 0xab, 0xb5, 0xb1, 0xa1, 0xe0, 0xe2, 0xe6, 0xab, 0x86, 0x2f, 0xe8, 0xbb, 0x74, 0x9f, 0x72, 0x51, 0x57, 0x2b, 0xc1, 0x60, 0x56, 0x75, 0x30, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1888 = { .name = "ecdsa_brainpoolp384r1_sha384_1888", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1888_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1888_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1888_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 358 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1889 for ECDSA, tcId is 359 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1889_pubkey[] = { 0x6e, 0x5f, 0x82, 0x7e, 0x1a, 0xa2, 0x25, 0xc4, 0xb9, 0x5d, 0xb5, 0x26, 0x55, 0xf6, 0x7d, 0x65, 0x4b, 0xdc, 0x69, 0xa4, 0xbf, 0x8f, 0x49, 0xc1, 0x9d, 0x1e, 0x65, 0xdc, 0xf1, 0x2c, 0xa5, 0x11, 0x50, 0x5a, 0xa1, 0x72, 0x6c, 0xa2, 0xf5, 0xcd, 0xf8, 0xab, 0x37, 0x6f, 0x94, 0xa0, 0xc5, 0xbd, 0x5d, 0xae, 0xc6, 0xf3, 0x5f, 0x1d, 0xfb, 0xc6, 0x8f, 0xba, 0x02, 0x4c, 0xc8, 0xc5, 0xf7, 0x9c, 0xe9, 0xba, 0xa8, 0x6a, 0xdf, 0xd8, 0xd2, 0xba, 0x53, 0xa7, 0x98, 0xcd, 0xcc, 0x90, 0x25, 0xeb, 0x97, 0x97, 0xd3, 0xbe, 0x20, 0x7b, 0xc6, 0x94, 0xab, 0xb3, 0x38, 0xe4, 0x37, 0x78, 0xff, 0xdd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1889_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1889_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0xc1, 0x55, 0x6c, 0x5e, 0xef, 0x31, 0x1a, 0x4f, 0x3b, 0xa4, 0x63, 0x16, 0xad, 0xf7, 0x37, 0x32, 0xd6, 0xed, 0x47, 0xb1, 0xba, 0x2e, 0xcd, 0x17, 0x8f, 0xf8, 0x9b, 0xbc, 0x5d, 0xdd, 0x6c, 0x64, 0x19, 0xf6, 0x2e, 0x04, 0x5e, 0xa2, 0xd3, 0x5c, 0x33, 0xa2, 0x50, 0xdc, 0x2f, 0xb9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1889 = { .name = "ecdsa_brainpoolp384r1_sha384_1889", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1889_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1889_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1889_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 359 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1890 for ECDSA, tcId is 360 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1890_pubkey[] = { 0x7f, 0xe8, 0x52, 0xa7, 0x61, 0x2a, 0x67, 0x3d, 0xf3, 0x51, 0xf0, 0x5a, 0xfe, 0xaf, 0xcb, 0xb1, 0x6c, 0xe4, 0xca, 0xdf, 0x85, 0x68, 0x1b, 0x2b, 0x5f, 0x46, 0xcc, 0x31, 0xef, 0x33, 0xd6, 0xb6, 0x95, 0x37, 0x8e, 0x73, 0x25, 0xe9, 0xcb, 0x31, 0x85, 0xd7, 0x13, 0x7b, 0x2b, 0x17, 0x00, 0x46, 0x5c, 0xbd, 0x4c, 0x81, 0x00, 0x76, 0xd1, 0x35, 0x31, 0x68, 0x87, 0xe9, 0x4b, 0x14, 0xb4, 0xb0, 0x10, 0x8d, 0xb1, 0xc9, 0x44, 0x79, 0x4c, 0x39, 0x89, 0x38, 0xd4, 0x21, 0x76, 0xc3, 0x25, 0x75, 0xb6, 0x42, 0x8b, 0x3e, 0x37, 0xb6, 0x02, 0x21, 0x1c, 0x57, 0x4a, 0xca, 0xfe, 0xf0, 0x91, 0x1e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1890_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1890_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3c, 0xc9, 0x8c, 0x56, 0x1a, 0xa5, 0xf5, 0x0c, 0x8f, 0x19, 0xd9, 0x47, 0xdc, 0x75, 0xac, 0x8f, 0x50, 0x7e, 0x69, 0x85, 0x76, 0x20, 0x06, 0xe7, 0x10, 0x09, 0x82, 0xca, 0xcc, 0xb7, 0x95, 0x30, 0xf8, 0xf9, 0x35, 0xac, 0x9d, 0x3d, 0x82, 0x96, 0x7c, 0xdf, 0x12, 0x9e, 0xcf, 0x5b, 0x0c, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1890 = { .name = "ecdsa_brainpoolp384r1_sha384_1890", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1890_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1890_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1890_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 360 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1891 for ECDSA, tcId is 361 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1891_pubkey[] = { 0x0a, 0x49, 0xdc, 0x35, 0x9e, 0xd4, 0xfe, 0xf6, 0x83, 0xe4, 0x62, 0xdf, 0xe6, 0x85, 0x44, 0x2c, 0xea, 0x77, 0xb7, 0x33, 0xfd, 0x95, 0x63, 0x32, 0x16, 0x79, 0x4d, 0x9a, 0x61, 0xf7, 0xe1, 0x02, 0x2d, 0x94, 0x2a, 0x36, 0xe7, 0x81, 0xa4, 0x84, 0xa2, 0xb4, 0x79, 0xa6, 0x43, 0x46, 0x9a, 0xf4, 0x51, 0x2e, 0xbd, 0x09, 0x66, 0xb6, 0x8b, 0xfe, 0xcf, 0x7a, 0x47, 0x02, 0x1b, 0xcd, 0x9e, 0x6a, 0xa2, 0x70, 0x3d, 0xcc, 0x55, 0x6a, 0x9a, 0x44, 0x3d, 0x16, 0x19, 0x5a, 0xa1, 0x45, 0x73, 0x8f, 0xa3, 0x6a, 0x4d, 0xff, 0x3d, 0x09, 0x48, 0x1f, 0x4a, 0x86, 0x55, 0x0a, 0x8d, 0x1f, 0x35, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1891_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1891_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0x20, 0x95, 0x53, 0x0f, 0x36, 0x14, 0x4e, 0x00, 0x90, 0x19, 0xee, 0xe1, 0x02, 0xb2, 0x86, 0x7d, 0x83, 0xc9, 0xeb, 0x4f, 0x28, 0xbc, 0xb3, 0x1b, 0x38, 0x3e, 0x00, 0xc8, 0xc3, 0x74, 0x6b, 0x20, 0xcc, 0x90, 0xe8, 0xef, 0xc8, 0x13, 0xae, 0xfb, 0x5b, 0x6a, 0x49, 0x65, 0x20, 0x4c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1891 = { .name = "ecdsa_brainpoolp384r1_sha384_1891", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1891_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1891_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1891_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 361 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1892 for ECDSA, tcId is 362 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1892_pubkey[] = { 0x27, 0x67, 0x15, 0x08, 0x74, 0x95, 0xd5, 0x2c, 0x41, 0x60, 0xd1, 0x54, 0x46, 0xeb, 0xb4, 0xd7, 0x58, 0x29, 0x1b, 0xf5, 0xbc, 0x9c, 0xa8, 0x7b, 0x56, 0xc3, 0xf0, 0x0a, 0xdc, 0x41, 0xfa, 0x45, 0x2d, 0x66, 0x68, 0x41, 0x52, 0xd3, 0xe1, 0x9d, 0x2f, 0xc3, 0xad, 0x5d, 0x28, 0x97, 0x87, 0xad, 0x36, 0x73, 0x85, 0xd3, 0xc3, 0xf5, 0xc3, 0xc2, 0xc6, 0xc3, 0x16, 0x6a, 0xdc, 0xfa, 0xfc, 0x3d, 0x20, 0x44, 0x53, 0xca, 0xb8, 0x79, 0x7d, 0x56, 0xe9, 0x55, 0xfb, 0xf1, 0xcf, 0x42, 0x17, 0x63, 0xa6, 0x65, 0x3e, 0x40, 0xef, 0xd9, 0x03, 0x5d, 0xf8, 0x12, 0x81, 0x35, 0x54, 0x6b, 0x62, 0x61, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1892_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1892_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0x4a, 0xfc, 0x6a, 0x72, 0x08, 0x0d, 0x17, 0x28, 0xf6, 0xcc, 0x9f, 0xd0, 0x23, 0xe9, 0xd2, 0x37, 0x30, 0x23, 0x37, 0x7f, 0x02, 0x59, 0x9b, 0x6e, 0xa9, 0xfb, 0x29, 0x23, 0xdd, 0x74, 0x03, 0xfe, 0x2f, 0xd7, 0x39, 0x99, 0xf6, 0x53, 0x16, 0xb5, 0x3f, 0x91, 0x0b, 0xda, 0x4f, 0x6f, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1892 = { .name = "ecdsa_brainpoolp384r1_sha384_1892", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1892_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1892_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1892_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 362 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1893 for ECDSA, tcId is 363 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1893_pubkey[] = { 0x59, 0x43, 0xdb, 0xd6, 0x6c, 0x79, 0xfc, 0xb8, 0x82, 0x93, 0x6e, 0xcc, 0xdd, 0x6d, 0x86, 0x0c, 0x42, 0xe2, 0x07, 0x27, 0xa2, 0xcd, 0xb2, 0x91, 0x65, 0xc8, 0x42, 0x6c, 0x9d, 0x19, 0x29, 0x90, 0xb7, 0x1d, 0x9a, 0x3c, 0x7f, 0x24, 0x0e, 0x46, 0xac, 0xab, 0x27, 0x41, 0xb7, 0xee, 0x9c, 0x7a, 0x46, 0x1e, 0x5a, 0xb1, 0xdb, 0x3e, 0xb9, 0xb5, 0x1b, 0x32, 0x38, 0xd3, 0xad, 0xa3, 0x35, 0x67, 0xd2, 0x51, 0xd8, 0xfd, 0x0f, 0xba, 0xf5, 0x9a, 0xa1, 0xcf, 0xb4, 0x0f, 0xe7, 0xb2, 0x2e, 0x02, 0x77, 0xf1, 0x66, 0xa3, 0x2e, 0xdb, 0x81, 0xab, 0x6a, 0x85, 0x80, 0xf9, 0xb1, 0xfb, 0x3e, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1893_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1893_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x46, 0xf0, 0x9c, 0x47, 0x41, 0xc1, 0xaf, 0xe7, 0x4e, 0x32, 0xf6, 0xff, 0x14, 0xda, 0xaf, 0x90, 0xf4, 0x48, 0x6c, 0x33, 0xf5, 0xd0, 0xe9, 0x78, 0xf9, 0xaf, 0x24, 0xf5, 0x75, 0x19, 0x88, 0xe7, 0x2b, 0x37, 0x4c, 0x5f, 0xae, 0xff, 0xde, 0xc3, 0x09, 0x33, 0x04, 0x01, 0x96, 0x5f, 0x7d, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1893 = { .name = "ecdsa_brainpoolp384r1_sha384_1893", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1893_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1893_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1893_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 363 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1894 for ECDSA, tcId is 364 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1894_pubkey[] = { 0x52, 0x85, 0xd7, 0x29, 0x25, 0xc8, 0x7c, 0x75, 0xb6, 0xad, 0x99, 0x55, 0x06, 0x41, 0x82, 0xbf, 0x2d, 0xeb, 0xcb, 0x25, 0xc8, 0x8d, 0x06, 0x06, 0xf6, 0x67, 0x28, 0x63, 0xde, 0x41, 0x3e, 0x54, 0x96, 0x88, 0xa4, 0xfc, 0xfb, 0xe6, 0x68, 0x9b, 0xb2, 0x3d, 0xba, 0x2b, 0x75, 0x7b, 0xcd, 0xa6, 0x4e, 0xf6, 0xb0, 0x17, 0x66, 0xc9, 0x5b, 0x66, 0xff, 0x10, 0x49, 0x6d, 0x5d, 0xee, 0xba, 0xc4, 0xb4, 0xbf, 0x8c, 0x3b, 0xb4, 0x23, 0x2c, 0x01, 0x9f, 0x80, 0xb6, 0x9d, 0x8a, 0xb0, 0x21, 0x4c, 0xea, 0xf5, 0x81, 0x30, 0x27, 0xec, 0xec, 0x13, 0x3a, 0x5a, 0x5b, 0x97, 0x19, 0x48, 0x82, 0x2e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1894_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1894_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x19, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1894 = { .name = "ecdsa_brainpoolp384r1_sha384_1894", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1894_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1894_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1894_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 364 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1895 for ECDSA, tcId is 365 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1895_pubkey[] = { 0x07, 0x86, 0xaf, 0xb0, 0x3d, 0xd7, 0x91, 0xdb, 0xfc, 0x37, 0x1a, 0xb5, 0x1f, 0xfa, 0x28, 0x8b, 0x7c, 0xed, 0xd9, 0x0d, 0x6a, 0x35, 0xa3, 0xc3, 0xa9, 0x25, 0x66, 0xf8, 0x95, 0xf3, 0x8c, 0xb1, 0x85, 0x36, 0x13, 0x7e, 0x01, 0x0f, 0x1c, 0xfb, 0xa2, 0xfb, 0xed, 0x70, 0x56, 0x8d, 0x77, 0xb8, 0x4e, 0xec, 0x84, 0x0c, 0xca, 0x8b, 0x6f, 0x3f, 0x61, 0x23, 0x04, 0xb6, 0x02, 0xff, 0xad, 0x8d, 0xcb, 0xae, 0x17, 0x86, 0xb2, 0xc2, 0x21, 0x6e, 0x9a, 0x1e, 0x59, 0xa6, 0xb6, 0x96, 0x28, 0xb5, 0x2a, 0x40, 0x8b, 0x6a, 0x08, 0x3d, 0x72, 0x7f, 0x3c, 0xcd, 0x0e, 0x70, 0x6f, 0x9a, 0xee, 0xf8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1895_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1895_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x33, 0x26, 0x14, 0x57, 0x17, 0x7a, 0xf3, 0x70, 0x0a, 0x3e, 0x4a, 0x54, 0x35, 0xee, 0xd6, 0x94, 0xb8, 0xca, 0x4b, 0x5b, 0xf3, 0x8d, 0x8f, 0x22, 0x14, 0xb9, 0x9e, 0xf3, 0x1d, 0x58, 0x19, 0x1a, 0x8a, 0x27, 0x24, 0x74, 0xf2, 0x55, 0x2c, 0xb5, 0x7d, 0x05, 0x76, 0xac, 0x9b, 0x58, 0x43, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1895 = { .name = "ecdsa_brainpoolp384r1_sha384_1895", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1895_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1895_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1895_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 365 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1896 for ECDSA, tcId is 366 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1896_pubkey[] = { 0x46, 0x69, 0x0d, 0xb4, 0x03, 0x90, 0x42, 0x28, 0xe4, 0xf7, 0x36, 0xb1, 0x34, 0x47, 0x91, 0x59, 0x66, 0x28, 0xe8, 0x56, 0x69, 0xd4, 0xdd, 0x01, 0x37, 0x4b, 0x21, 0x27, 0x42, 0x80, 0xb4, 0x21, 0xe4, 0x2f, 0x5b, 0xa3, 0xf3, 0xf2, 0xfa, 0xda, 0xd2, 0x7d, 0x44, 0x69, 0xbe, 0x7d, 0x9b, 0xdb, 0x7e, 0x88, 0x3b, 0x43, 0xc2, 0x72, 0x17, 0xf6, 0x06, 0xe0, 0xa5, 0xba, 0x6c, 0x9d, 0xf7, 0x81, 0xc1, 0x45, 0x77, 0x6c, 0x0e, 0x5a, 0x89, 0x93, 0xf0, 0xed, 0x65, 0xc6, 0xde, 0xd6, 0x5a, 0x43, 0xbd, 0xdd, 0x0f, 0xe7, 0x61, 0x14, 0x85, 0xe8, 0xe8, 0xd9, 0xe7, 0xde, 0xcd, 0xf2, 0xd8, 0xb5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1896_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x4c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1896 = { .name = "ecdsa_brainpoolp384r1_sha384_1896", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1896_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1896_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1896_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 366 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1897 for ECDSA, tcId is 367 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1897_pubkey[] = { 0x8b, 0xe6, 0x92, 0x8a, 0xca, 0xd4, 0x4c, 0x95, 0x71, 0xb5, 0xc4, 0x01, 0x5f, 0xa3, 0xff, 0xae, 0x5e, 0x63, 0x9e, 0x41, 0x30, 0xa1, 0xa6, 0x6b, 0x47, 0x3e, 0x5d, 0xfd, 0xfe, 0x93, 0xb6, 0x8a, 0x8d, 0xe8, 0x95, 0x83, 0x66, 0x6d, 0x4d, 0x69, 0x9e, 0x88, 0x85, 0x46, 0x9f, 0x9b, 0x1a, 0x4d, 0x83, 0xb1, 0xd5, 0x31, 0x23, 0x10, 0xe4, 0x45, 0xae, 0x57, 0xc8, 0x5a, 0xb1, 0xa3, 0xdf, 0x8d, 0xbb, 0xb7, 0x06, 0xa5, 0x98, 0xfb, 0xc0, 0x07, 0xef, 0xb6, 0x02, 0xa1, 0x4a, 0x59, 0x52, 0xfd, 0x7e, 0x7d, 0xf0, 0x46, 0x4d, 0x53, 0x3e, 0x06, 0x2e, 0xa2, 0x11, 0x28, 0x5c, 0x2f, 0x5c, 0x27, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1897_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8b, 0x33, 0xc7, 0x08, 0x62, 0x4a, 0x1e, 0x2e, 0xeb, 0xa0, 0x0f, 0xb5, 0xb5, 0xa8, 0xed, 0x1a, 0x16, 0x22, 0xfc, 0x71, 0xed, 0x89, 0x7f, 0xb1, 0x3d, 0x87, 0xac, 0x25, 0x39, 0x35, 0xe8, 0x36, 0x58, 0x50, 0xd3, 0x80, 0x01, 0x5c, 0x11, 0x5d, 0x12, 0xe1, 0x4a, 0x24, 0x72, 0x86, 0x0d, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1897 = { .name = "ecdsa_brainpoolp384r1_sha384_1897", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1897_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1897_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1897_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 367 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1898 for ECDSA, tcId is 368 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1898_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x6a, 0x0f, 0x0e, 0xd8, 0xd7, 0xf2, 0x8f, 0x91, 0x6a, 0x4e, 0x72, 0x7e, 0x55, 0xbf, 0x08, 0x18, 0xdc, 0xc8, 0x4e, 0xd1, 0x13, 0x2b, 0xd7, 0xda, 0x9f, 0x98, 0xff, 0x95, 0xfb, 0x2a, 0xec, 0x23, 0x8f, 0x4d, 0xf9, 0x18, 0x5b, 0x09, 0x82, 0xa6, 0x68, 0x2c, 0x06, 0xc8, 0x5e, 0x6a, 0x89, 0x5e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1898_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1898 = { .name = "ecdsa_brainpoolp384r1_sha384_1898", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1898_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1898_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1898_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 368 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1899 for ECDSA, tcId is 369 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1899_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x22, 0xaa, 0x0f, 0xa9, 0xcb, 0x45, 0xdd, 0x96, 0xa5, 0x0e, 0xfc, 0xff, 0xfb, 0x27, 0x39, 0xc6, 0x38, 0x67, 0x22, 0x38, 0xda, 0x28, 0x7e, 0xd9, 0x73, 0x18, 0xda, 0x83, 0x84, 0x8c, 0x25, 0x00, 0x1d, 0x85, 0xae, 0x11, 0x35, 0x13, 0x97, 0xcb, 0x1f, 0x1a, 0xf9, 0x4a, 0xd2, 0x9d, 0x62, 0xf5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1899_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1899 = { .name = "ecdsa_brainpoolp384r1_sha384_1899", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1899_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1899_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1899_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 369 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1900 for ECDSA, tcId is 370 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1900_pubkey[] = { 0x89, 0xdd, 0x73, 0x8e, 0xfc, 0xb0, 0xf7, 0x98, 0x11, 0xdf, 0x6b, 0xec, 0x87, 0x34, 0x85, 0x16, 0x94, 0x50, 0xad, 0xa1, 0x8e, 0x60, 0x27, 0x21, 0xe6, 0x17, 0x68, 0xbe, 0x0d, 0x81, 0xe5, 0xd4, 0x13, 0x81, 0xf2, 0x46, 0x68, 0x27, 0x6f, 0x32, 0xbf, 0xe3, 0x1f, 0xf1, 0xc1, 0x6b, 0xcb, 0x6b, 0x1f, 0x7a, 0x4d, 0x28, 0x23, 0xbc, 0xd7, 0x3f, 0x23, 0x6d, 0x90, 0xb6, 0xea, 0x61, 0xd8, 0x92, 0x02, 0x61, 0x90, 0xe1, 0x43, 0x17, 0xb5, 0xd1, 0x10, 0x52, 0x6e, 0x9e, 0x26, 0x75, 0xf0, 0x3d, 0x5e, 0xf3, 0xfc, 0xe8, 0x7b, 0x58, 0x27, 0xa3, 0x7e, 0x0c, 0xf1, 0x9b, 0x4d, 0x39, 0x88, 0xc0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1900_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1900 = { .name = "ecdsa_brainpoolp384r1_sha384_1900", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1900_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1900_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1900_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 370 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1901 for ECDSA, tcId is 371 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1901_pubkey[] = { 0x79, 0x55, 0x92, 0xa6, 0x73, 0xe8, 0x2d, 0xff, 0x3d, 0x77, 0x45, 0x01, 0x94, 0xe5, 0x30, 0x8d, 0x64, 0xf4, 0x5f, 0x11, 0xf7, 0x59, 0xf3, 0x4f, 0x7c, 0x7b, 0x5b, 0x7c, 0xc6, 0xad, 0x73, 0xf9, 0xbf, 0xf8, 0xf6, 0x63, 0x3c, 0xc2, 0x03, 0x78, 0xcf, 0xf2, 0xe5, 0x3f, 0xb7, 0xa5, 0x30, 0x30, 0x85, 0xb5, 0xcd, 0x46, 0x21, 0x66, 0x5a, 0xac, 0x84, 0x35, 0xd8, 0xce, 0x85, 0xb2, 0x6d, 0x44, 0x45, 0x08, 0xb7, 0x7b, 0x28, 0x2e, 0x91, 0xcd, 0x53, 0x15, 0xc7, 0x01, 0xd2, 0xe5, 0xb6, 0x6b, 0xa4, 0xc0, 0x0b, 0xf7, 0xe1, 0xeb, 0x08, 0x59, 0xa1, 0x3c, 0xc3, 0x51, 0xd0, 0x00, 0x41, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1901_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1901 = { .name = "ecdsa_brainpoolp384r1_sha384_1901", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1901_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1901_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1901_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 371 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1902 for ECDSA, tcId is 372 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1902_pubkey[] = { 0x39, 0xd9, 0x4f, 0xf8, 0x75, 0x7d, 0xcd, 0xb6, 0x74, 0x80, 0xcb, 0xc4, 0x8e, 0x96, 0x79, 0x42, 0x3e, 0x57, 0xde, 0x5a, 0x23, 0x23, 0x2d, 0xf0, 0xdb, 0x1e, 0x0f, 0xf7, 0xe9, 0x08, 0x61, 0x44, 0x01, 0xe6, 0xcd, 0x8d, 0x61, 0x50, 0x08, 0xea, 0x8b, 0xe5, 0x12, 0x99, 0xd9, 0xe2, 0x2d, 0xe9, 0x43, 0x81, 0x26, 0xd7, 0x0d, 0x14, 0xe7, 0x5c, 0xe4, 0x1e, 0xa2, 0xf4, 0x09, 0xbe, 0x88, 0xe2, 0x80, 0x6f, 0x7f, 0x73, 0xbd, 0x51, 0x37, 0x31, 0x69, 0x6b, 0xc5, 0x9e, 0x7a, 0x2c, 0x1d, 0x44, 0xd5, 0x68, 0x3d, 0x3b, 0xdc, 0x92, 0xba, 0xba, 0x1c, 0x2a, 0xda, 0x58, 0x80, 0x9f, 0x8b, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1902_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1902 = { .name = "ecdsa_brainpoolp384r1_sha384_1902", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1902_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1902_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1902_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 372 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1903 for ECDSA, tcId is 373 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1903_pubkey[] = { 0x20, 0xb1, 0xfc, 0x8e, 0x24, 0x80, 0xa9, 0x73, 0xe0, 0x97, 0x33, 0x73, 0x43, 0x49, 0x0b, 0x12, 0xae, 0x40, 0x65, 0x2e, 0x41, 0x80, 0xdd, 0x4a, 0xe5, 0x6d, 0xf5, 0x21, 0xda, 0xa9, 0xe3, 0x91, 0x77, 0x7c, 0x0d, 0x46, 0x6f, 0x01, 0x8a, 0xf5, 0x55, 0x19, 0x03, 0x8d, 0xea, 0xd3, 0x55, 0x01, 0x72, 0x32, 0x88, 0x2b, 0xca, 0x3c, 0xcd, 0x6b, 0x37, 0x55, 0x91, 0xf5, 0xb5, 0x09, 0x65, 0x38, 0xca, 0x57, 0x78, 0x35, 0x53, 0x07, 0xe6, 0x03, 0x14, 0x8f, 0xde, 0x31, 0xf5, 0xac, 0xff, 0xeb, 0x4c, 0x68, 0x63, 0x54, 0x1a, 0xd2, 0x33, 0xde, 0x3f, 0x28, 0x1e, 0xa0, 0xd2, 0x35, 0xb6, 0xf3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1903_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1903 = { .name = "ecdsa_brainpoolp384r1_sha384_1903", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1903_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1903_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1903_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 373 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1904 for ECDSA, tcId is 374 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1904_pubkey[] = { 0x4a, 0x39, 0x1d, 0x79, 0xcf, 0xa8, 0x2b, 0x94, 0x31, 0x23, 0xd6, 0x9e, 0xe2, 0xd1, 0xbc, 0x0e, 0x0b, 0x7e, 0x1e, 0x6f, 0x93, 0xc6, 0x91, 0x23, 0xbf, 0xce, 0x0b, 0xd4, 0xf3, 0x1a, 0x5e, 0x34, 0x34, 0x06, 0x2d, 0xd0, 0xe1, 0xaa, 0x8b, 0x88, 0x6c, 0xeb, 0xa3, 0x62, 0xc4, 0xd6, 0x72, 0x0c, 0x7a, 0x2b, 0x05, 0x43, 0xa1, 0x56, 0xf1, 0x93, 0x4e, 0x02, 0xd3, 0x1e, 0x81, 0xd5, 0xd2, 0x78, 0x5a, 0x71, 0xd5, 0x41, 0xcc, 0x7e, 0x1e, 0x6e, 0x61, 0x32, 0xeb, 0xee, 0x42, 0x11, 0x1f, 0x52, 0xa8, 0x44, 0x93, 0x72, 0x60, 0x71, 0x90, 0x56, 0xae, 0x7b, 0x10, 0xf7, 0x51, 0x60, 0x6c, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1904_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1904 = { .name = "ecdsa_brainpoolp384r1_sha384_1904", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1904_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1904_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1904_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 374 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1905 for ECDSA, tcId is 375 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1905_pubkey[] = { 0x36, 0x85, 0x4a, 0xda, 0xcf, 0x83, 0xce, 0x5f, 0x0e, 0x44, 0x22, 0x40, 0x6d, 0x7b, 0x6f, 0x7d, 0xb6, 0x3d, 0x73, 0xd4, 0xc8, 0x92, 0xa0, 0x1e, 0x97, 0x5e, 0xf6, 0xee, 0x6b, 0x71, 0xa9, 0x33, 0x4c, 0x9d, 0x57, 0xce, 0x6f, 0xfc, 0xdb, 0x1a, 0x2e, 0x41, 0x74, 0xdd, 0xba, 0x79, 0x9e, 0x12, 0x7d, 0x61, 0x96, 0x72, 0x03, 0x5d, 0xb4, 0xfd, 0x73, 0xe5, 0xe4, 0xb4, 0xea, 0x92, 0x0b, 0x74, 0xf2, 0xe7, 0x0f, 0xd2, 0x4e, 0xbc, 0xa4, 0x9d, 0x22, 0xfd, 0xb1, 0x1e, 0x96, 0xb7, 0x86, 0x7f, 0xa1, 0x83, 0x8c, 0xa5, 0xba, 0xbc, 0xd9, 0xdd, 0x09, 0x6a, 0xb8, 0x5e, 0x2f, 0x97, 0xb5, 0xae, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1905_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1905 = { .name = "ecdsa_brainpoolp384r1_sha384_1905", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1905_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1905_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1905_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 375 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1906 for ECDSA, tcId is 376 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1906_pubkey[] = { 0x80, 0x4e, 0x6c, 0x71, 0xe4, 0x93, 0xb7, 0x83, 0xec, 0xd3, 0x75, 0xa4, 0xed, 0xcf, 0x86, 0xc7, 0x7b, 0x1c, 0x2d, 0xf5, 0x51, 0xbb, 0xc7, 0x3b, 0xed, 0x85, 0x16, 0xe4, 0xd1, 0x1c, 0xe5, 0x1a, 0x1d, 0xd0, 0x81, 0xe1, 0x9a, 0xa6, 0xf5, 0x1c, 0x65, 0x68, 0x18, 0xb8, 0x53, 0x96, 0x21, 0x78, 0x58, 0x0b, 0xd6, 0xb2, 0xc4, 0xea, 0xbc, 0xf5, 0xb3, 0x74, 0x1e, 0x6b, 0x7d, 0x59, 0xb0, 0xe7, 0xf2, 0xbd, 0xdb, 0x24, 0x7f, 0x5f, 0x9d, 0x67, 0x51, 0xcf, 0x09, 0xe3, 0xc6, 0xc9, 0xd1, 0xf7, 0xc2, 0x7c, 0x0b, 0xb8, 0xd2, 0x1e, 0x77, 0xa8, 0x0e, 0xba, 0xda, 0xf9, 0x0a, 0xf8, 0xb0, 0xd0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1906_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1906 = { .name = "ecdsa_brainpoolp384r1_sha384_1906", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1906_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1906_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1906_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 376 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1907 for ECDSA, tcId is 377 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1907_pubkey[] = { 0x2c, 0x11, 0x57, 0x72, 0xdd, 0x29, 0x86, 0x12, 0x19, 0x7a, 0x1c, 0x59, 0xdf, 0x9c, 0x25, 0xa8, 0x6a, 0xc1, 0x6f, 0xa4, 0xf2, 0x7a, 0xdf, 0x74, 0xbc, 0xc6, 0x73, 0xbb, 0x4a, 0x6a, 0x4b, 0xb5, 0xd0, 0xb5, 0xb6, 0x44, 0x70, 0xd5, 0xd2, 0x6e, 0x03, 0x00, 0x92, 0x2a, 0xb7, 0x23, 0x73, 0x24, 0x42, 0xf6, 0xec, 0x20, 0x9e, 0x27, 0xce, 0x0b, 0x12, 0x7d, 0x33, 0x47, 0x45, 0x27, 0x26, 0x43, 0xd3, 0x66, 0x6b, 0xff, 0x54, 0x92, 0x74, 0x19, 0x76, 0x4d, 0xe5, 0x23, 0x22, 0xee, 0x16, 0x96, 0xe6, 0x20, 0xd1, 0x5e, 0x0e, 0xea, 0x62, 0xfe, 0xd0, 0xf2, 0x0e, 0xfe, 0x6c, 0x91, 0xe1, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1907_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1907 = { .name = "ecdsa_brainpoolp384r1_sha384_1907", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1907_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1907_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1907_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 377 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1908 for ECDSA, tcId is 378 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1908_pubkey[] = { 0x29, 0x57, 0x78, 0xc9, 0xa3, 0xbe, 0x2b, 0x37, 0x34, 0x50, 0xf5, 0x7d, 0xaf, 0x10, 0xde, 0x66, 0xd3, 0x24, 0x41, 0x75, 0x0a, 0xc4, 0x28, 0x9f, 0x67, 0x51, 0xff, 0x61, 0x40, 0x5c, 0xe0, 0x23, 0x7f, 0x64, 0xe2, 0x8a, 0xc5, 0x28, 0x1a, 0x81, 0xd1, 0x3f, 0xba, 0x81, 0xa8, 0x45, 0x4e, 0x58, 0x4c, 0x9f, 0x39, 0x91, 0xd6, 0x15, 0x51, 0x2f, 0xaf, 0x0d, 0xc9, 0x10, 0x71, 0x93, 0xb1, 0xb6, 0xf5, 0xcd, 0x68, 0x43, 0x56, 0xca, 0x51, 0x50, 0x4d, 0x15, 0xc1, 0xca, 0x4b, 0xa0, 0x0b, 0x21, 0xc7, 0xc6, 0x8e, 0xb4, 0x68, 0x32, 0x22, 0xa8, 0x21, 0x1e, 0x4f, 0xfd, 0x56, 0xda, 0x0e, 0x06, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1908_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1908 = { .name = "ecdsa_brainpoolp384r1_sha384_1908", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1908_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1908_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1908_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 378 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1909 for ECDSA, tcId is 379 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1909_pubkey[] = { 0x65, 0xa3, 0x40, 0xbc, 0x68, 0xf3, 0xfc, 0xea, 0xd4, 0xf0, 0x42, 0x77, 0xee, 0x86, 0x75, 0xf9, 0xc1, 0x7b, 0xc8, 0xc8, 0x84, 0x26, 0xc5, 0xba, 0x03, 0x13, 0xb8, 0xce, 0x7d, 0xa5, 0x8d, 0x92, 0xca, 0x9a, 0x0f, 0xfa, 0x32, 0xc7, 0xee, 0xe1, 0x95, 0x85, 0x7d, 0x86, 0x0b, 0xa1, 0xee, 0xbe, 0x4d, 0xcd, 0x5b, 0xe3, 0xa6, 0x77, 0x80, 0x08, 0xb3, 0x6e, 0xa1, 0x9d, 0x90, 0x2d, 0x93, 0xdd, 0x48, 0x8f, 0x6f, 0xb6, 0x5d, 0xc0, 0x71, 0x95, 0x21, 0x55, 0x3b, 0x39, 0xcb, 0x3c, 0x52, 0x4b, 0x12, 0x68, 0x1d, 0x2e, 0x07, 0xa8, 0xef, 0x72, 0x0c, 0xdc, 0x15, 0x01, 0x1c, 0x23, 0xba, 0x9d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1909_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1909 = { .name = "ecdsa_brainpoolp384r1_sha384_1909", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1909_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1909_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1909_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 379 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1910 for ECDSA, tcId is 380 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1910_pubkey[] = { 0x54, 0xa0, 0x39, 0x02, 0x65, 0x6b, 0xfa, 0xf4, 0xd6, 0xa5, 0x4f, 0xf3, 0x42, 0x9d, 0x9f, 0x97, 0x19, 0xbb, 0x61, 0xe6, 0xca, 0xf0, 0x00, 0xe1, 0x00, 0x99, 0x2b, 0x31, 0x70, 0x0e, 0x78, 0x0e, 0x0f, 0x73, 0xf5, 0x16, 0x14, 0x95, 0x4a, 0xcd, 0xdd, 0xca, 0xaa, 0x8b, 0x23, 0x11, 0x19, 0x5b, 0x04, 0xad, 0x3b, 0x19, 0xb0, 0x1e, 0x15, 0x0a, 0x39, 0xdc, 0x0c, 0xfa, 0xec, 0xc6, 0x49, 0x8b, 0x18, 0x13, 0x8c, 0xe6, 0x12, 0xc4, 0x92, 0x79, 0x56, 0x87, 0xa4, 0x88, 0x52, 0x26, 0x44, 0xb3, 0xdd, 0xf7, 0x46, 0x2c, 0x3c, 0x35, 0x9b, 0xd0, 0x91, 0xb7, 0xd3, 0x94, 0x69, 0x57, 0x18, 0x79, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1910_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1910 = { .name = "ecdsa_brainpoolp384r1_sha384_1910", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1910_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1910_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1910_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 380 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1911 for ECDSA, tcId is 381 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1911_pubkey[] = { 0x46, 0xd1, 0x0d, 0x74, 0x9a, 0x47, 0xa4, 0xd3, 0xf2, 0x5b, 0x6f, 0x28, 0x95, 0x1a, 0x11, 0xf0, 0x1a, 0x54, 0xc2, 0x41, 0x39, 0x57, 0xa4, 0x77, 0x16, 0x2d, 0xab, 0xe0, 0xd0, 0x8d, 0x8a, 0xe9, 0xb6, 0xa9, 0xf4, 0x4b, 0x68, 0xef, 0x34, 0x1f, 0xb8, 0x20, 0xb0, 0xc2, 0x4c, 0x7a, 0x1c, 0x0e, 0x67, 0x1f, 0xf1, 0x66, 0xcd, 0x35, 0xd2, 0xf3, 0xcc, 0x82, 0x1d, 0x58, 0xfa, 0x18, 0xe3, 0x5d, 0x25, 0xe6, 0x03, 0x3b, 0x9e, 0x79, 0x0f, 0xce, 0x48, 0x18, 0xf9, 0xe5, 0x70, 0x92, 0x1c, 0x00, 0x34, 0xb3, 0x81, 0xcc, 0x9a, 0xd2, 0x54, 0xee, 0xaf, 0x1b, 0x38, 0x6e, 0x51, 0x1b, 0x7c, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1911_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1911 = { .name = "ecdsa_brainpoolp384r1_sha384_1911", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1911_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1911_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1911_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 381 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1912 for ECDSA, tcId is 382 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1912_pubkey[] = { 0x8a, 0xe9, 0x2d, 0xe1, 0x0b, 0x24, 0x4a, 0xc7, 0xf0, 0xde, 0xb6, 0xb1, 0x02, 0xd0, 0x75, 0x95, 0x1d, 0x8c, 0x13, 0xb2, 0x96, 0x0c, 0x2e, 0x98, 0xd7, 0xfb, 0x42, 0xb8, 0xab, 0xe9, 0x0f, 0xd0, 0x7a, 0x4a, 0x21, 0xb8, 0x6e, 0xb4, 0xc7, 0x7e, 0xfe, 0x9a, 0xdb, 0x67, 0x25, 0x67, 0x6d, 0x17, 0x36, 0x06, 0x3f, 0x34, 0x07, 0xc7, 0x16, 0x27, 0xac, 0xaa, 0x83, 0xbe, 0x90, 0x29, 0xc7, 0xa4, 0x0e, 0x8a, 0xa8, 0x96, 0xcb, 0x68, 0xa9, 0xc2, 0xfa, 0x2a, 0xaa, 0x10, 0x79, 0x03, 0x5a, 0x28, 0x31, 0x81, 0xcd, 0x3f, 0x27, 0x23, 0xb2, 0x21, 0xd5, 0xa8, 0x74, 0x7a, 0xd3, 0x92, 0xa0, 0xf9, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1912_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1912 = { .name = "ecdsa_brainpoolp384r1_sha384_1912", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1912_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1912_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1912_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 382 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1913 for ECDSA, tcId is 383 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1913_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1913_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1913 = { .name = "ecdsa_brainpoolp384r1_sha384_1913", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1913_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1913_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1913_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 383 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1914 for ECDSA, tcId is 384 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1914_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1914_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1914 = { .name = "ecdsa_brainpoolp384r1_sha384_1914", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1914_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1914_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1914_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 384 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1915 for ECDSA, tcId is 385 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1915_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1915_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1915 = { .name = "ecdsa_brainpoolp384r1_sha384_1915", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1915_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1915_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1915_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 385 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1916 for ECDSA, tcId is 386 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1916_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1916_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1916 = { .name = "ecdsa_brainpoolp384r1_sha384_1916", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1916_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1916_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1916_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 386 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1917 for ECDSA, tcId is 387 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1917_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1917_sig[] = { 0x65, 0xfd, 0x45, 0x68, 0x14, 0x37, 0x1d, 0x60, 0x88, 0x3f, 0xfd, 0xa5, 0xf7, 0x4f, 0x36, 0xdc, 0x2d, 0x45, 0x88, 0x61, 0x21, 0x77, 0x0e, 0x29, 0xed, 0x31, 0x63, 0x75, 0x47, 0x16, 0xd1, 0x2c, 0x1c, 0xab, 0x03, 0xa2, 0xcb, 0x6a, 0x6e, 0x33, 0x76, 0xfc, 0x96, 0xd8, 0x72, 0x7b, 0xd1, 0xbf, 0x1a, 0xa6, 0x5e, 0x57, 0x93, 0x2d, 0x05, 0x78, 0x84, 0x13, 0x21, 0x9b, 0x7a, 0xb2, 0x3e, 0x53, 0x37, 0xf6, 0x3f, 0xb2, 0xdc, 0xb0, 0xf8, 0x9b, 0x42, 0x27, 0xd2, 0x84, 0xa3, 0xfc, 0xbd, 0xf3, 0xc5, 0x4c, 0x02, 0x1a, 0x6c, 0x0c, 0xa4, 0x24, 0x45, 0xbf, 0x80, 0x22, 0x13, 0x12, 0x16, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1917 = { .name = "ecdsa_brainpoolp384r1_sha384_1917", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1917_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp384r1_sha384_1917_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 387 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1918 for ECDSA, tcId is 388 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1918_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1918_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1918_sig[] = { 0x01, 0x05, 0x7e, 0x36, 0xad, 0x00, 0xf7, 0x9e, 0x7c, 0x1c, 0xfc, 0xf4, 0xde, 0xa3, 0x01, 0xe4, 0xe2, 0x35, 0x06, 0x44, 0xd5, 0xef, 0xf4, 0xd4, 0xc7, 0xf2, 0x3c, 0xdd, 0x2f, 0x4f, 0x23, 0x60, 0x93, 0xff, 0x27, 0xe3, 0x3e, 0xb4, 0x4f, 0xd8, 0x04, 0xb2, 0xf0, 0xda, 0xf5, 0xc3, 0x27, 0xa4, 0x2a, 0x9b, 0x2b, 0x91, 0x0d, 0xd2, 0x3b, 0x99, 0x4c, 0xac, 0x12, 0xf3, 0x22, 0x82, 0x84, 0x61, 0x09, 0x4c, 0x87, 0x90, 0x48, 0x1b, 0x39, 0x25, 0x69, 0xc6, 0x67, 0x4a, 0xc2, 0xec, 0xa7, 0x4d, 0xd7, 0x49, 0x57, 0xd9, 0x44, 0x56, 0x54, 0x85, 0x46, 0xb6, 0x5b, 0xd5, 0x05, 0x58, 0xf4, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1918 = { .name = "ecdsa_brainpoolp384r1_sha384_1918", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1918_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1918_msg, .msglen = 3, .sig = ecdsa_brainpoolp384r1_sha384_1918_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 388 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1919 for ECDSA, tcId is 389 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1919_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1919_sig[] = { 0x6d, 0xd9, 0xd4, 0xe9, 0x8c, 0x9c, 0x38, 0x82, 0x40, 0xe9, 0x5c, 0x49, 0xb2, 0x10, 0x0a, 0xfb, 0xe0, 0xd7, 0x22, 0xf8, 0xa1, 0x52, 0x65, 0x1c, 0x61, 0xd7, 0xef, 0x9b, 0xf4, 0x61, 0x50, 0xe3, 0xcd, 0xf9, 0xbf, 0x63, 0x30, 0xe7, 0x5e, 0x4b, 0xf2, 0xc2, 0x94, 0xcd, 0x66, 0xe4, 0x8d, 0x06, 0x12, 0x82, 0xd3, 0x3b, 0x5b, 0x79, 0xd4, 0xea, 0xaf, 0xa0, 0x3a, 0x77, 0xbb, 0x8b, 0xa2, 0xc3, 0x18, 0x29, 0x1f, 0x6e, 0xa0, 0x9d, 0x54, 0x8b, 0x77, 0x04, 0xbb, 0x00, 0x91, 0x08, 0x56, 0xdd, 0x36, 0x05, 0x57, 0xe6, 0x09, 0xad, 0xd8, 0x91, 0xc6, 0x43, 0x5d, 0x7a, 0x80, 0xaf, 0xdd, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1919 = { .name = "ecdsa_brainpoolp384r1_sha384_1919", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1919_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1919_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_1919_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 389 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1920 for ECDSA, tcId is 390 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1920_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1920_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1920_sig[] = { 0x46, 0xcb, 0x43, 0x79, 0x8b, 0xc0, 0x6d, 0xbe, 0x78, 0x8a, 0x4f, 0x4b, 0x2b, 0x98, 0x13, 0x0e, 0x3a, 0xae, 0x91, 0x7f, 0x1d, 0x2a, 0x00, 0x56, 0x56, 0xbd, 0x70, 0xa3, 0x28, 0x8c, 0xaf, 0x7c, 0x37, 0xd1, 0xde, 0xe0, 0xc9, 0x10, 0x88, 0x28, 0xa6, 0x9d, 0x2a, 0x1e, 0xea, 0xe1, 0x13, 0xc6, 0x81, 0x80, 0xd0, 0xc5, 0xba, 0x1b, 0xed, 0x4f, 0x2b, 0x0d, 0x4d, 0x8e, 0xd7, 0xea, 0x17, 0x91, 0x6b, 0x63, 0x40, 0x03, 0x97, 0xe7, 0xb6, 0xd7, 0x0e, 0x73, 0x12, 0xc5, 0xff, 0x0f, 0x45, 0x24, 0xa4, 0x9a, 0xbf, 0x70, 0x71, 0xc8, 0xba, 0x47, 0x0d, 0xe6, 0x4f, 0xb6, 0x68, 0x57, 0x03, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1920 = { .name = "ecdsa_brainpoolp384r1_sha384_1920", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1920_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1920_msg, .msglen = 20, .sig = ecdsa_brainpoolp384r1_sha384_1920_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 390 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1921 for ECDSA, tcId is 391 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1921_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1921_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1921_sig[] = { 0x43, 0xa3, 0xac, 0x2f, 0x3d, 0x2b, 0x4d, 0x37, 0x23, 0xa9, 0x79, 0x30, 0xb0, 0x23, 0xee, 0x73, 0x01, 0x0a, 0x7c, 0xf8, 0xd2, 0xa9, 0x93, 0x72, 0xf3, 0x13, 0x2b, 0xd7, 0xd9, 0xc8, 0x35, 0x74, 0xde, 0x3a, 0xb8, 0x65, 0x25, 0xef, 0xc4, 0xee, 0x2c, 0x59, 0x79, 0x9d, 0x5f, 0xf7, 0xef, 0xb4, 0x34, 0xf5, 0x9a, 0x3e, 0xa9, 0xf5, 0x26, 0x7f, 0x84, 0x58, 0xaf, 0xda, 0xa3, 0x87, 0x3e, 0x23, 0x36, 0xe0, 0xab, 0x8a, 0x40, 0xca, 0x1b, 0x79, 0x7c, 0xbd, 0x97, 0x7d, 0x19, 0x2f, 0x20, 0x24, 0xf9, 0xeb, 0x8d, 0x39, 0xb3, 0x7b, 0x9a, 0x23, 0x8f, 0x20, 0x8d, 0x66, 0xba, 0xcd, 0x27, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1921 = { .name = "ecdsa_brainpoolp384r1_sha384_1921", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1921_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1921_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1921_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 391 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1922 for ECDSA, tcId is 392 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1922_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1922_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1922_sig[] = { 0x35, 0x31, 0xad, 0xa2, 0x5b, 0x8d, 0x9a, 0xf9, 0xb8, 0x7e, 0x52, 0x24, 0xcd, 0x6a, 0x6d, 0x95, 0x6c, 0x17, 0xdc, 0x32, 0x3e, 0xf8, 0x98, 0x0f, 0x49, 0x7a, 0x6e, 0x7e, 0x44, 0xc8, 0x3d, 0x69, 0xb7, 0x4d, 0xe7, 0x91, 0xd6, 0x2b, 0xce, 0xac, 0xaf, 0xf7, 0x37, 0x88, 0x63, 0xdd, 0x72, 0x5b, 0x45, 0x9d, 0x15, 0x53, 0x93, 0x99, 0x40, 0x93, 0x80, 0xaf, 0x99, 0xd5, 0x60, 0xc5, 0x61, 0x21, 0x7d, 0xaa, 0x5c, 0x53, 0x97, 0x29, 0x45, 0x30, 0x67, 0xdd, 0x1a, 0xa4, 0xbd, 0x9d, 0xf2, 0xb5, 0x34, 0x92, 0x0f, 0x0d, 0x62, 0x13, 0x26, 0x1e, 0xce, 0xa1, 0x6f, 0x0e, 0xd6, 0x85, 0x36, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1922 = { .name = "ecdsa_brainpoolp384r1_sha384_1922", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1922_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1922_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1922_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 392 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1923 for ECDSA, tcId is 393 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1923_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1923_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1923_sig[] = { 0x43, 0x8a, 0x0c, 0xff, 0x9f, 0xcf, 0xcf, 0x58, 0x7f, 0x8c, 0x40, 0x77, 0x5a, 0xd4, 0x4e, 0xa4, 0xb0, 0xed, 0x69, 0xf2, 0xd5, 0x47, 0xbe, 0xfe, 0x29, 0x5d, 0x1f, 0xb9, 0xc2, 0x4d, 0xdc, 0xb9, 0x7f, 0x22, 0x80, 0x27, 0xdf, 0x55, 0x2a, 0x06, 0xbf, 0x65, 0x7b, 0x4c, 0x20, 0x27, 0x26, 0x15, 0x5e, 0x15, 0x76, 0x30, 0xbb, 0x74, 0x4f, 0xc8, 0xe7, 0xf7, 0x59, 0x01, 0xde, 0x49, 0x8e, 0x5a, 0xf0, 0xb5, 0x51, 0x1d, 0xfe, 0xee, 0x0c, 0x4c, 0x1f, 0x2e, 0x5c, 0x4a, 0xa0, 0x12, 0x9d, 0xe5, 0x7b, 0x87, 0xa2, 0xa1, 0x3e, 0xa5, 0x9d, 0x18, 0x7d, 0x51, 0xcb, 0xeb, 0x6e, 0xf2, 0x24, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1923 = { .name = "ecdsa_brainpoolp384r1_sha384_1923", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1923_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1923_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1923_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 393 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1924 for ECDSA, tcId is 394 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1924_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1924_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1924_sig[] = { 0x16, 0x49, 0x6c, 0x08, 0xc3, 0x07, 0x67, 0x73, 0xfc, 0xd8, 0x41, 0xa5, 0xe2, 0x5e, 0x1a, 0x87, 0x10, 0x8e, 0x0b, 0xa9, 0x0f, 0x97, 0x27, 0xf5, 0x39, 0x03, 0x4b, 0xd2, 0xcf, 0x68, 0x8e, 0x01, 0xa9, 0x55, 0x68, 0x6a, 0x15, 0x11, 0x2e, 0x05, 0x90, 0xfc, 0x91, 0xe3, 0x99, 0x5f, 0xf5, 0xf8, 0x31, 0xb1, 0xb7, 0x33, 0x8f, 0x74, 0xad, 0xba, 0x33, 0x71, 0x2a, 0x83, 0xa7, 0xc6, 0x85, 0xe7, 0xcd, 0x5f, 0x3b, 0xe8, 0x4e, 0xf9, 0x51, 0xec, 0xad, 0x50, 0xfa, 0xcb, 0x7c, 0x6e, 0xc3, 0x93, 0xa3, 0xba, 0xc5, 0x2e, 0xa7, 0xb1, 0x21, 0x2b, 0xd9, 0x2f, 0x4f, 0x45, 0xa9, 0xf8, 0x51, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1924 = { .name = "ecdsa_brainpoolp384r1_sha384_1924", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1924_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1924_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1924_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 394 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1925 for ECDSA, tcId is 395 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1925_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1925_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1925_sig[] = { 0x87, 0xf3, 0x09, 0x02, 0x92, 0xe7, 0x9b, 0x72, 0x2c, 0xde, 0x5a, 0xed, 0xaf, 0xa4, 0x24, 0x4f, 0x6e, 0xb4, 0x60, 0xa2, 0x80, 0xe2, 0xe0, 0x50, 0x39, 0x9b, 0x9d, 0x80, 0x23, 0x91, 0xad, 0x50, 0x21, 0x08, 0x70, 0x4a, 0x3c, 0x0b, 0xb9, 0xf9, 0xae, 0x57, 0x1c, 0x3f, 0x7d, 0xec, 0x6c, 0x0b, 0x89, 0xae, 0x00, 0x43, 0xde, 0x38, 0xa5, 0x85, 0xa1, 0x63, 0x2c, 0x72, 0x11, 0xb7, 0x83, 0x03, 0xaf, 0xa3, 0xf8, 0x93, 0x61, 0x54, 0xa6, 0xe6, 0x5a, 0x6f, 0x72, 0x9c, 0x3b, 0x1e, 0xc6, 0x6a, 0x17, 0x75, 0xaa, 0x46, 0x5a, 0xf8, 0xee, 0xd6, 0xdf, 0xea, 0xa5, 0xba, 0x98, 0xce, 0xdb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1925 = { .name = "ecdsa_brainpoolp384r1_sha384_1925", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1925_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1925_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1925_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 395 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1926 for ECDSA, tcId is 396 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1926_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1926_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1926_sig[] = { 0x72, 0x08, 0x22, 0xab, 0xef, 0xa9, 0x12, 0x65, 0xa7, 0xb8, 0xd4, 0x46, 0xec, 0x3b, 0xc4, 0x05, 0xfd, 0x19, 0x21, 0x78, 0xaa, 0x1b, 0x85, 0xdd, 0x66, 0x33, 0x96, 0xa8, 0x96, 0xa3, 0x2c, 0x11, 0x9e, 0x64, 0xb1, 0xa2, 0x08, 0x43, 0xf8, 0x1e, 0xdd, 0x43, 0xc0, 0x37, 0x09, 0xb8, 0xdb, 0xc6, 0x20, 0x6a, 0xe9, 0x5b, 0xb1, 0x8d, 0x2d, 0x38, 0x44, 0xa3, 0x93, 0x40, 0x87, 0x2e, 0xdb, 0xa1, 0x61, 0x1e, 0x3e, 0xa0, 0xe8, 0x4c, 0xea, 0x7c, 0xb6, 0xcf, 0xf2, 0x82, 0xaf, 0x41, 0x4d, 0x8b, 0x5a, 0xa0, 0xbe, 0x8a, 0xab, 0xc1, 0xb5, 0x1b, 0x71, 0x21, 0xd4, 0x26, 0x91, 0x6b, 0x01, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1926 = { .name = "ecdsa_brainpoolp384r1_sha384_1926", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1926_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1926_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1926_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 396 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1927 for ECDSA, tcId is 397 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1927_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1927_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1927_sig[] = { 0x1e, 0x50, 0x27, 0xfc, 0xc6, 0x30, 0xaa, 0x08, 0x75, 0x0a, 0x47, 0x25, 0x91, 0x9d, 0xd9, 0x07, 0x24, 0x22, 0xa2, 0x1a, 0xca, 0x9d, 0x33, 0x26, 0xbe, 0xc3, 0xe6, 0xac, 0x04, 0x0b, 0xa9, 0x78, 0x49, 0x51, 0xb1, 0xfd, 0xa6, 0xf5, 0x88, 0xe6, 0x0d, 0xcb, 0x55, 0x0b, 0x75, 0x79, 0x3a, 0x4e, 0x0d, 0xf3, 0x22, 0x46, 0x41, 0xf6, 0x80, 0x4f, 0x4d, 0x1b, 0xf9, 0x51, 0x05, 0x1e, 0x08, 0x7c, 0xe1, 0xfa, 0x73, 0x65, 0xc4, 0x3b, 0xd2, 0x78, 0x78, 0x62, 0x68, 0x33, 0xf0, 0x91, 0x90, 0xcc, 0x0a, 0x7f, 0xa2, 0x9b, 0x16, 0xbc, 0x2c, 0xa0, 0xd3, 0x4f, 0xd0, 0x66, 0x0d, 0x24, 0x71, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1927 = { .name = "ecdsa_brainpoolp384r1_sha384_1927", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1927_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1927_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1927_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 397 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1928 for ECDSA, tcId is 398 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1928_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1928_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1928_sig[] = { 0x4e, 0x61, 0xe3, 0x47, 0x40, 0xa9, 0xf6, 0xdb, 0x08, 0x54, 0xfa, 0xf2, 0x05, 0x71, 0x9a, 0x3d, 0x98, 0xef, 0x64, 0x4b, 0x86, 0x24, 0x1b, 0x85, 0x8f, 0xa2, 0x29, 0x59, 0xc0, 0x43, 0x95, 0x57, 0x8b, 0xef, 0x7b, 0xe3, 0x50, 0x36, 0xae, 0x7a, 0x9f, 0xfe, 0xb9, 0xa2, 0x17, 0x33, 0x11, 0xf4, 0x1e, 0x96, 0x7c, 0x3b, 0x60, 0x71, 0xd3, 0x75, 0x60, 0xfd, 0x64, 0xa4, 0xfe, 0x09, 0x21, 0xb1, 0xd6, 0x00, 0xf6, 0x0d, 0x88, 0x3f, 0xde, 0xc8, 0x16, 0x83, 0x61, 0x76, 0xc5, 0xe6, 0x7a, 0xd0, 0x51, 0x82, 0xaa, 0x08, 0x0c, 0x7e, 0x21, 0x84, 0xc0, 0x71, 0x00, 0x50, 0xd5, 0x23, 0xf0, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1928 = { .name = "ecdsa_brainpoolp384r1_sha384_1928", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1928_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1928_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1928_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 398 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1929 for ECDSA, tcId is 399 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1929_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1929_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1929_sig[] = { 0x2c, 0x30, 0x90, 0xc5, 0x81, 0xe5, 0x75, 0xda, 0x58, 0xa8, 0xf6, 0x59, 0xf7, 0x4c, 0x5e, 0xee, 0x56, 0x64, 0x00, 0xeb, 0x1d, 0x91, 0xde, 0x0a, 0x95, 0x0e, 0x78, 0x75, 0x42, 0xe6, 0x57, 0x2f, 0x73, 0xb9, 0xf6, 0xd4, 0xf8, 0x1f, 0x1c, 0x8e, 0x42, 0xf9, 0xe4, 0x60, 0xda, 0xc3, 0xc1, 0xdc, 0x75, 0x6b, 0x1b, 0x69, 0x3e, 0x7f, 0xe0, 0x66, 0x86, 0x70, 0x8c, 0x2a, 0x60, 0x98, 0x54, 0xac, 0xcd, 0x21, 0xe3, 0x19, 0x5d, 0x84, 0xb7, 0x2c, 0x11, 0xc8, 0x73, 0x90, 0x8d, 0x17, 0x5d, 0xfc, 0x00, 0xc0, 0x0e, 0xbb, 0xdf, 0x8e, 0x2b, 0xb6, 0x97, 0x0f, 0x2f, 0x19, 0x78, 0x53, 0x03, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1929 = { .name = "ecdsa_brainpoolp384r1_sha384_1929", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1929_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1929_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1929_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 399 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1930 for ECDSA, tcId is 400 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1930_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1930_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1930_sig[] = { 0x09, 0x2f, 0x0e, 0xe1, 0xfe, 0xeb, 0x79, 0xc0, 0x54, 0xae, 0x36, 0x23, 0x5f, 0x87, 0x17, 0xe9, 0xee, 0x72, 0xb4, 0x66, 0xb1, 0x70, 0x4d, 0x4f, 0xa7, 0x8a, 0xdd, 0xfc, 0xd1, 0x35, 0x18, 0xa6, 0x4d, 0xb2, 0xb2, 0xfd, 0xb0, 0x64, 0x39, 0xac, 0xbc, 0x4c, 0x04, 0x5f, 0xb2, 0xc2, 0x3c, 0x3a, 0x23, 0x71, 0xca, 0x6d, 0x36, 0xf4, 0x26, 0x61, 0x62, 0xee, 0x5c, 0x65, 0x7c, 0x71, 0xce, 0xa3, 0x5d, 0xce, 0xc3, 0x63, 0x2c, 0x5b, 0x22, 0x0a, 0x6f, 0x23, 0xac, 0xe1, 0xba, 0x65, 0x62, 0xa8, 0x41, 0xae, 0xee, 0xef, 0xe8, 0x7a, 0x79, 0x98, 0xad, 0xfa, 0xf1, 0x85, 0xb8, 0x55, 0x8e, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1930 = { .name = "ecdsa_brainpoolp384r1_sha384_1930", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1930_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1930_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1930_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 400 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1931 for ECDSA, tcId is 401 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1931_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1931_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1931_sig[] = { 0x6c, 0x8f, 0x4b, 0xe6, 0x41, 0xaf, 0xaf, 0x5b, 0xf9, 0x1c, 0xe0, 0x89, 0x74, 0xd2, 0x84, 0xec, 0xe6, 0xae, 0xc7, 0x47, 0x92, 0x24, 0x72, 0x29, 0xfa, 0x86, 0xc6, 0x59, 0x7e, 0xed, 0x3f, 0xb5, 0x07, 0xb7, 0x12, 0xbb, 0x77, 0xaf, 0x02, 0x26, 0xe1, 0xbb, 0xb3, 0xba, 0xd6, 0x32, 0xb0, 0xd8, 0x77, 0x59, 0x54, 0xfe, 0x8b, 0xf9, 0x36, 0x15, 0x7b, 0x7a, 0xb7, 0xa6, 0x83, 0xf6, 0xdc, 0x18, 0x38, 0xa8, 0x71, 0x82, 0x00, 0x62, 0x1b, 0xc8, 0xbf, 0x2f, 0x32, 0xb7, 0x78, 0xf6, 0xc8, 0xe8, 0xc6, 0x56, 0x53, 0x2b, 0x50, 0xde, 0x39, 0xac, 0x22, 0xd2, 0x2b, 0x37, 0xdc, 0xcf, 0xd1, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1931 = { .name = "ecdsa_brainpoolp384r1_sha384_1931", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1931_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1931_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1931_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 401 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1932 for ECDSA, tcId is 402 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1932_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1932_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1932_sig[] = { 0x76, 0xe5, 0xc0, 0x75, 0x82, 0x17, 0x74, 0x00, 0xdf, 0x45, 0x31, 0x14, 0xfe, 0xd7, 0x46, 0xf4, 0x07, 0x04, 0x19, 0x78, 0x97, 0xb4, 0xca, 0x21, 0xb7, 0x2e, 0x5b, 0x44, 0xd4, 0xca, 0x40, 0xcf, 0xca, 0xa5, 0x5e, 0x44, 0x46, 0x35, 0x5c, 0x91, 0xea, 0x97, 0x67, 0xf3, 0x8c, 0x81, 0x72, 0xdf, 0x0c, 0x6d, 0xd7, 0x3e, 0xef, 0xbb, 0x4c, 0x06, 0xe8, 0x23, 0x22, 0x4d, 0x8e, 0xfa, 0xa3, 0xee, 0x93, 0x4e, 0x4a, 0x97, 0xee, 0xd2, 0x83, 0x35, 0x13, 0xb4, 0xd7, 0x35, 0xed, 0x06, 0xeb, 0x55, 0x0b, 0x2a, 0x5f, 0xa7, 0xf8, 0x66, 0x13, 0xd6, 0x27, 0xd9, 0xdb, 0x46, 0x6a, 0xfa, 0x66, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1932 = { .name = "ecdsa_brainpoolp384r1_sha384_1932", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1932_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1932_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1932_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 402 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1933 for ECDSA, tcId is 403 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1933_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1933_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1933_sig[] = { 0x0e, 0x44, 0xfd, 0xc3, 0x3a, 0xed, 0x0c, 0x32, 0x0e, 0x37, 0x1e, 0x2a, 0x78, 0xe9, 0xf1, 0x8f, 0xde, 0x83, 0x43, 0x4e, 0x68, 0x1a, 0xfb, 0x05, 0xa5, 0xbd, 0xb0, 0xf4, 0x3c, 0xac, 0x70, 0xe8, 0x3e, 0xde, 0x56, 0xbf, 0x8c, 0x56, 0xac, 0xf7, 0x0e, 0x05, 0x4e, 0x2f, 0xfe, 0xf5, 0x49, 0xcf, 0x13, 0x24, 0xb4, 0xcf, 0xe6, 0x84, 0xd4, 0x01, 0xea, 0xc1, 0x5b, 0x09, 0x40, 0xf5, 0x83, 0x54, 0x36, 0xd3, 0xa1, 0x02, 0x8e, 0x27, 0xc1, 0x96, 0x6d, 0xbf, 0x69, 0xfe, 0xfe, 0xf8, 0x27, 0x48, 0xa0, 0x5b, 0x44, 0x43, 0xc7, 0x7c, 0x87, 0x07, 0x89, 0x13, 0x57, 0x55, 0xd0, 0xd1, 0x84, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1933 = { .name = "ecdsa_brainpoolp384r1_sha384_1933", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1933_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1933_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1933_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 403 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1934 for ECDSA, tcId is 404 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1934_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1934_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1934_sig[] = { 0x59, 0x66, 0xac, 0xd8, 0xa7, 0x71, 0x4f, 0x20, 0x15, 0xe3, 0x6f, 0xd4, 0xfd, 0xb3, 0x45, 0x22, 0x58, 0xce, 0x0a, 0xae, 0xfb, 0x39, 0x72, 0x09, 0x1b, 0x49, 0x6b, 0xd5, 0x30, 0xbb, 0xaf, 0x1e, 0xc6, 0x7d, 0x7e, 0x37, 0xe5, 0x00, 0x31, 0xb3, 0xee, 0xa4, 0x4a, 0x8b, 0xb8, 0xf6, 0x2c, 0x20, 0x2a, 0x5f, 0x30, 0x9d, 0x2f, 0xad, 0x55, 0xb9, 0x3a, 0x7a, 0x30, 0x12, 0xcb, 0xda, 0x28, 0x45, 0xef, 0xaa, 0x4e, 0xa0, 0xd1, 0x87, 0xd3, 0x82, 0x4f, 0x4a, 0x6a, 0x92, 0x27, 0x73, 0x0d, 0x3a, 0xb1, 0x52, 0x46, 0xd8, 0xd0, 0x95, 0x2c, 0x7e, 0xe8, 0xc0, 0xb9, 0xeb, 0x83, 0xd1, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1934 = { .name = "ecdsa_brainpoolp384r1_sha384_1934", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1934_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1934_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1934_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 404 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1935 for ECDSA, tcId is 405 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1935_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1935_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1935_sig[] = { 0x26, 0x6e, 0xac, 0xe6, 0x57, 0xe1, 0xec, 0x88, 0xa2, 0xad, 0xbb, 0x38, 0xa5, 0xaf, 0xb4, 0xf7, 0x50, 0x27, 0x4c, 0xa6, 0x14, 0xd1, 0xfd, 0xe9, 0xea, 0x39, 0xdf, 0xf6, 0xf2, 0xa2, 0xaa, 0x69, 0x92, 0x3e, 0x9a, 0x74, 0x89, 0xf0, 0x6b, 0xf9, 0xd8, 0x4c, 0x51, 0x8c, 0xee, 0x57, 0xe5, 0x5b, 0x3d, 0x19, 0x02, 0x76, 0x84, 0xef, 0x22, 0x12, 0x16, 0xf6, 0x3a, 0x59, 0x1d, 0x8e, 0x79, 0x35, 0x24, 0xe4, 0xc1, 0x23, 0x4a, 0x56, 0xce, 0x41, 0x5b, 0xb9, 0xad, 0x9e, 0x2e, 0xbf, 0x25, 0xac, 0x94, 0xa9, 0x92, 0x61, 0xb9, 0x15, 0x7d, 0x19, 0xda, 0xa5, 0xaa, 0x87, 0x62, 0x91, 0xf3, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1935 = { .name = "ecdsa_brainpoolp384r1_sha384_1935", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1935_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1935_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1935_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 405 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1936 for ECDSA, tcId is 406 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1936_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1936_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1936_sig[] = { 0x13, 0xde, 0x6e, 0xb5, 0x32, 0x32, 0x1c, 0x02, 0x30, 0x92, 0xaa, 0x78, 0xc1, 0x99, 0xf9, 0xee, 0x4d, 0xce, 0x7a, 0x18, 0xdf, 0x15, 0x8c, 0x3e, 0x79, 0x94, 0x61, 0xaf, 0x9d, 0x96, 0xc2, 0xd3, 0x87, 0x65, 0xa7, 0x8f, 0xdb, 0x14, 0x40, 0x4d, 0x19, 0x93, 0x65, 0xde, 0x05, 0xbd, 0x44, 0xc5, 0x25, 0x14, 0xa0, 0x35, 0x9b, 0xcb, 0x66, 0x12, 0x2b, 0xf4, 0x8c, 0x18, 0x6a, 0x4b, 0xb2, 0xed, 0xcc, 0xf3, 0x05, 0xb0, 0x64, 0x14, 0xb1, 0x1f, 0x47, 0x0d, 0x25, 0x12, 0xca, 0xdd, 0xa1, 0x29, 0x36, 0x6f, 0x60, 0x72, 0xde, 0x71, 0x5b, 0xc2, 0xba, 0xbb, 0x8a, 0x3a, 0x5f, 0x26, 0x0d, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1936 = { .name = "ecdsa_brainpoolp384r1_sha384_1936", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1936_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1936_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1936_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 406 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1937 for ECDSA, tcId is 407 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1937_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1937_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1937_sig[] = { 0x13, 0x08, 0xd3, 0xd9, 0xed, 0xfe, 0x3a, 0xd0, 0x7e, 0x21, 0x5a, 0x97, 0x5b, 0x2b, 0x06, 0x7e, 0x9f, 0x0b, 0x80, 0x33, 0x71, 0xb3, 0x02, 0x9f, 0x43, 0x88, 0xa3, 0x47, 0x1f, 0x4d, 0xb2, 0x3f, 0x35, 0x8a, 0xea, 0x5c, 0x03, 0xdb, 0x62, 0xd7, 0x71, 0x15, 0xc5, 0x6c, 0x49, 0x62, 0x63, 0x3b, 0x4b, 0x8b, 0x1f, 0xe4, 0x4b, 0x32, 0xcc, 0x66, 0x91, 0x14, 0xa1, 0xce, 0x0b, 0xa0, 0x55, 0x54, 0x46, 0xd0, 0xc9, 0x6a, 0x32, 0xcb, 0x60, 0x21, 0x85, 0xe8, 0xfb, 0xa4, 0x14, 0xd3, 0xa8, 0x31, 0xcb, 0xf5, 0xb5, 0x19, 0xb0, 0xf9, 0x06, 0x47, 0xdc, 0x45, 0xe3, 0x0a, 0x1f, 0x23, 0xef, 0x90, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1937 = { .name = "ecdsa_brainpoolp384r1_sha384_1937", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1937_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1937_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1937_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 407 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1938 for ECDSA, tcId is 408 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1938_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1938_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1938_sig[] = { 0x5d, 0xa3, 0xdf, 0x09, 0x41, 0x55, 0xb8, 0xf8, 0x81, 0x2d, 0x0c, 0x63, 0x45, 0x34, 0x4e, 0x41, 0xc3, 0xb5, 0x91, 0xb6, 0x5b, 0x95, 0xfe, 0xdb, 0xbc, 0xbd, 0x3c, 0x3a, 0x3b, 0xb1, 0xc1, 0xdb, 0xfc, 0x4d, 0x4c, 0x5b, 0x84, 0x1b, 0x8f, 0x88, 0x74, 0xd5, 0x9b, 0x07, 0xcf, 0x22, 0x88, 0xfc, 0x4a, 0x1e, 0x4a, 0x83, 0x99, 0xab, 0xbd, 0xf2, 0x46, 0x92, 0x9b, 0x25, 0x59, 0xbb, 0x0f, 0xa4, 0x04, 0x77, 0x27, 0x55, 0xfc, 0x74, 0x52, 0x36, 0x26, 0xae, 0xef, 0x43, 0x2f, 0xe4, 0x76, 0x4d, 0xf1, 0xe1, 0xf5, 0xc9, 0xb0, 0xf8, 0x97, 0xed, 0x8f, 0x1f, 0xfd, 0x7a, 0x88, 0x16, 0x7f, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1938 = { .name = "ecdsa_brainpoolp384r1_sha384_1938", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1938_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1938_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1938_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 408 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1939 for ECDSA, tcId is 409 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1939_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1939_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1939_sig[] = { 0x0b, 0xf6, 0xfe, 0xc0, 0xa5, 0xbe, 0x27, 0xcd, 0xdb, 0x0e, 0x76, 0x69, 0xae, 0x06, 0xd1, 0x5d, 0xfa, 0x75, 0x83, 0x7f, 0x8e, 0xe7, 0x2b, 0x47, 0x44, 0x3a, 0xc8, 0x45, 0xff, 0xcd, 0x42, 0x7b, 0x08, 0x93, 0xe1, 0x0c, 0x85, 0xc2, 0x0c, 0x7a, 0xa5, 0x76, 0xfb, 0x70, 0xe8, 0x77, 0x61, 0xab, 0x74, 0x18, 0xb6, 0xf3, 0x74, 0x93, 0x6a, 0xdc, 0xa8, 0xb0, 0x7d, 0xc5, 0x15, 0x45, 0xee, 0x34, 0xed, 0x2e, 0x9f, 0x56, 0xf3, 0x26, 0x70, 0x33, 0xe3, 0x0e, 0xa0, 0x9a, 0x0a, 0xcd, 0x31, 0xb6, 0xce, 0x83, 0x50, 0x3e, 0xe7, 0xe0, 0x98, 0x62, 0x7f, 0x8b, 0xa8, 0xb4, 0xc5, 0x84, 0x34, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1939 = { .name = "ecdsa_brainpoolp384r1_sha384_1939", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1939_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1939_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1939_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 409 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1940 for ECDSA, tcId is 410 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1940_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1940_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1940_sig[] = { 0x03, 0xe3, 0x06, 0xa8, 0x6f, 0x6b, 0x2c, 0xb2, 0x48, 0xfc, 0xb6, 0x8d, 0x1d, 0x31, 0x7a, 0x60, 0x42, 0xb7, 0x08, 0x9e, 0x96, 0xd7, 0x4c, 0x2f, 0x5b, 0x93, 0x4e, 0x2e, 0x12, 0x28, 0x31, 0x26, 0x8a, 0x45, 0xe2, 0x18, 0x5b, 0x7c, 0x21, 0x27, 0x0e, 0x8b, 0x90, 0x6c, 0xd3, 0x72, 0xe6, 0xd7, 0x4c, 0x82, 0xab, 0x6d, 0xe6, 0xbc, 0x01, 0x94, 0xac, 0x1a, 0x2e, 0x34, 0x80, 0xa0, 0xc8, 0x04, 0x66, 0xaf, 0x7d, 0x2a, 0x32, 0x9d, 0x20, 0xb0, 0x31, 0x51, 0xd1, 0x80, 0x6a, 0x0b, 0xc0, 0x72, 0x0f, 0x55, 0xd3, 0x78, 0x1a, 0x7d, 0xb9, 0xfe, 0xbe, 0x7d, 0x8b, 0xbd, 0x0a, 0x71, 0x9b, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1940 = { .name = "ecdsa_brainpoolp384r1_sha384_1940", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1940_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1940_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1940_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 410 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1941 for ECDSA, tcId is 411 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1941_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1941_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1941_sig[] = { 0x14, 0xd1, 0xdf, 0x9b, 0x3d, 0xb5, 0x5e, 0xcc, 0x8d, 0x1e, 0x12, 0x66, 0x25, 0xbd, 0xf5, 0xb6, 0x31, 0x6b, 0xba, 0x1e, 0x7f, 0x4e, 0xa5, 0xec, 0x77, 0x41, 0x8c, 0x75, 0x4a, 0x59, 0x75, 0x63, 0xdc, 0x5d, 0xc2, 0x91, 0xb7, 0xdd, 0x04, 0x77, 0x82, 0xd5, 0x18, 0xfe, 0x74, 0xe0, 0xbe, 0x83, 0x33, 0xef, 0x70, 0x1c, 0x44, 0x0f, 0x28, 0x0e, 0xdf, 0x81, 0xa9, 0x63, 0x2d, 0xde, 0x9d, 0xc1, 0x7d, 0xe5, 0xf4, 0x38, 0xdc, 0xc1, 0x9e, 0x9c, 0xa5, 0x91, 0x9b, 0x4b, 0x73, 0xe6, 0x29, 0x05, 0xe5, 0xf7, 0xe0, 0xbc, 0x9d, 0xb0, 0xb1, 0x4b, 0xc5, 0x33, 0x27, 0xf7, 0x9f, 0x70, 0xc6, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1941 = { .name = "ecdsa_brainpoolp384r1_sha384_1941", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1941_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1941_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1941_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 411 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1942 for ECDSA, tcId is 412 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1942_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1942_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1942_sig[] = { 0x6a, 0x3a, 0x18, 0x40, 0x06, 0x86, 0x63, 0x5a, 0xe2, 0x79, 0xc3, 0x85, 0xb6, 0x40, 0xd4, 0xfa, 0x08, 0x0d, 0x9c, 0x44, 0xa5, 0xd4, 0x21, 0xfe, 0x4b, 0xe5, 0xa5, 0xec, 0x7a, 0x8a, 0xe3, 0x1b, 0x00, 0xbf, 0xa4, 0x06, 0xe9, 0x19, 0xe5, 0x7e, 0x39, 0xc1, 0x13, 0x60, 0xe6, 0x70, 0xd8, 0x69, 0x72, 0x9c, 0x0b, 0x9f, 0xf7, 0x7f, 0x88, 0xf8, 0x10, 0x54, 0x8d, 0x6d, 0xb1, 0x83, 0x53, 0x12, 0xa4, 0x48, 0x11, 0x4a, 0x3b, 0xd9, 0x3c, 0xf5, 0x94, 0x22, 0xfa, 0xa2, 0xea, 0x02, 0x6f, 0x5d, 0x47, 0x62, 0x7f, 0x0c, 0x11, 0xfb, 0x85, 0x91, 0x12, 0x24, 0x6d, 0x87, 0x9c, 0x85, 0x95, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1942 = { .name = "ecdsa_brainpoolp384r1_sha384_1942", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1942_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1942_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1942_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 412 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1943 for ECDSA, tcId is 413 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1943_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1943_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1943_sig[] = { 0x1a, 0xb8, 0xd6, 0xc3, 0x1d, 0x45, 0x77, 0xf5, 0x9c, 0xa5, 0x71, 0x4c, 0x9e, 0xad, 0xa9, 0x79, 0xfd, 0xb9, 0xec, 0x0c, 0xad, 0x32, 0xd8, 0xcb, 0x91, 0x5d, 0xbd, 0x70, 0x49, 0x29, 0x47, 0x18, 0x7f, 0x5a, 0x52, 0x71, 0x8e, 0x19, 0x98, 0x2f, 0x7a, 0x2d, 0x4c, 0xb4, 0x8b, 0x22, 0x77, 0x23, 0x87, 0x2e, 0x3c, 0xe7, 0xd1, 0xfd, 0x5a, 0xe1, 0x80, 0xfa, 0xf1, 0x99, 0x0b, 0x11, 0x93, 0x75, 0x58, 0xaa, 0x44, 0xcc, 0xda, 0xb6, 0x31, 0x49, 0x2b, 0x89, 0x25, 0xbe, 0x84, 0xfb, 0xcb, 0x45, 0x21, 0x48, 0xed, 0xad, 0x5b, 0xbf, 0xe4, 0x8c, 0x06, 0xb8, 0xc9, 0x90, 0x8c, 0xa2, 0x52, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1943 = { .name = "ecdsa_brainpoolp384r1_sha384_1943", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1943_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1943_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1943_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 413 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1944 for ECDSA, tcId is 414 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1944_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1944_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1944_sig[] = { 0x80, 0x3f, 0xfc, 0x58, 0xf8, 0x15, 0x0a, 0x9c, 0x4c, 0x22, 0x9a, 0x7b, 0x52, 0x23, 0x57, 0xf4, 0x9f, 0x9a, 0x5f, 0x48, 0xf8, 0x2d, 0x8b, 0xb9, 0x82, 0x95, 0x43, 0x95, 0x83, 0x6e, 0x09, 0xeb, 0x5f, 0x8c, 0xf1, 0xf3, 0x45, 0xce, 0x28, 0x46, 0x74, 0xbc, 0x36, 0x9d, 0x04, 0x6d, 0x5c, 0x8a, 0x8a, 0x9f, 0xeb, 0x64, 0xc4, 0x10, 0xcf, 0x3a, 0xe6, 0x26, 0x1a, 0xd3, 0x5f, 0x7e, 0x3e, 0x8d, 0xa1, 0x31, 0x29, 0xda, 0xf9, 0x49, 0x44, 0xf8, 0xe0, 0x8e, 0x96, 0x49, 0xcd, 0x00, 0x66, 0x22, 0xc3, 0xd5, 0xc9, 0x1e, 0xc5, 0xb9, 0x79, 0x8a, 0x1b, 0xe3, 0xa3, 0x15, 0x33, 0xa0, 0xa8, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1944 = { .name = "ecdsa_brainpoolp384r1_sha384_1944", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1944_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1944_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1944_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 414 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1945 for ECDSA, tcId is 415 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1945_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1945_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1945_sig[] = { 0x2e, 0xd5, 0x69, 0xf1, 0x2d, 0xbe, 0x30, 0xa2, 0xab, 0xf0, 0x21, 0x90, 0xbb, 0x9e, 0x4d, 0xe7, 0xe2, 0x18, 0xe9, 0xfd, 0x70, 0x5d, 0xc7, 0x1c, 0xbe, 0x14, 0x80, 0x02, 0x27, 0x81, 0xb2, 0xa2, 0x21, 0x3c, 0x3e, 0xf2, 0xf9, 0x10, 0x52, 0xe9, 0x08, 0x40, 0xa1, 0x8f, 0x74, 0xe3, 0x75, 0xae, 0x88, 0x72, 0xb5, 0x66, 0xf3, 0x87, 0xc2, 0xbc, 0xb6, 0x39, 0xdf, 0x9c, 0x2d, 0x86, 0x6f, 0x76, 0x31, 0xdf, 0x29, 0x0c, 0x5f, 0x66, 0xc2, 0x64, 0xd4, 0x94, 0x9e, 0x25, 0x63, 0x83, 0xb1, 0xb4, 0xb2, 0x09, 0x8c, 0x12, 0x0f, 0x13, 0x44, 0x9d, 0x9d, 0x7b, 0xff, 0x68, 0x91, 0x91, 0x9c, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1945 = { .name = "ecdsa_brainpoolp384r1_sha384_1945", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1945_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1945_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1945_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 415 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1946 for ECDSA, tcId is 416 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1946_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1946_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1946_sig[] = { 0x4b, 0x7e, 0x56, 0x51, 0xb0, 0x35, 0x95, 0x92, 0x95, 0x09, 0x2e, 0x2e, 0xfe, 0x54, 0x8d, 0xa5, 0x22, 0x06, 0xc8, 0xd0, 0xe4, 0x8b, 0xa4, 0x3e, 0x2b, 0x8e, 0xcd, 0x98, 0xec, 0xe2, 0x5d, 0xc0, 0x89, 0x55, 0xb6, 0xe7, 0xb0, 0x5e, 0x38, 0xc4, 0xe2, 0x28, 0x29, 0xd1, 0x65, 0x87, 0x11, 0xb5, 0x44, 0xa9, 0x73, 0xb7, 0x55, 0x28, 0x40, 0x0c, 0xef, 0x3f, 0x63, 0xf5, 0x5f, 0x21, 0x54, 0xd4, 0x8b, 0xb0, 0xb8, 0x26, 0x21, 0x42, 0x00, 0xd3, 0xf3, 0x3c, 0x7b, 0xc3, 0x11, 0x55, 0x24, 0x2d, 0x4e, 0x24, 0xf0, 0x7e, 0xd1, 0x96, 0x06, 0xfd, 0xb2, 0xc8, 0xec, 0xae, 0xb6, 0x98, 0x1e, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1946 = { .name = "ecdsa_brainpoolp384r1_sha384_1946", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1946_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1946_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1946_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 416 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1947 for ECDSA, tcId is 417 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1947_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1947_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1947_sig[] = { 0x1e, 0xca, 0xda, 0xce, 0xaa, 0x47, 0x9f, 0xa4, 0xe9, 0xaa, 0xba, 0xc4, 0x21, 0x0b, 0x1a, 0xb7, 0x7f, 0xc1, 0xd1, 0x3a, 0x9c, 0x4c, 0xb0, 0x22, 0x82, 0x6b, 0xb1, 0x80, 0x65, 0x75, 0x11, 0x58, 0x34, 0xa6, 0xec, 0xb9, 0xde, 0xc3, 0xe6, 0x68, 0xb8, 0xc9, 0x1d, 0x4a, 0xca, 0x28, 0x3d, 0xc9, 0x2d, 0xe8, 0x96, 0x5a, 0x66, 0xd5, 0x65, 0x45, 0xad, 0x84, 0xfd, 0xae, 0xe1, 0x6f, 0xff, 0xa0, 0xeb, 0x31, 0x02, 0x21, 0x86, 0xa5, 0xb6, 0xbe, 0x2a, 0x24, 0x75, 0x95, 0x8b, 0x9a, 0xd7, 0x2f, 0x48, 0x3e, 0xbd, 0x4b, 0x25, 0x57, 0x48, 0xa8, 0x11, 0x80, 0x6b, 0xcd, 0x42, 0x8a, 0xcf, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1947 = { .name = "ecdsa_brainpoolp384r1_sha384_1947", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1947_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1947_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1947_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 417 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1948 for ECDSA, tcId is 418 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1948_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1948_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1948_sig[] = { 0x37, 0xe2, 0x56, 0x87, 0x23, 0x40, 0xda, 0x9d, 0xc8, 0x84, 0xfd, 0x00, 0xda, 0xa1, 0x46, 0x28, 0x37, 0x2b, 0x4b, 0xed, 0xc0, 0xa8, 0xa0, 0x9f, 0x9d, 0x75, 0x13, 0x52, 0x1d, 0x3b, 0x80, 0x3a, 0x78, 0xdc, 0x0e, 0xdb, 0xab, 0x3c, 0x7d, 0xc2, 0xb2, 0x01, 0x4b, 0xaf, 0x7a, 0x9d, 0x21, 0x0e, 0x1b, 0xa4, 0xb4, 0x08, 0x79, 0x73, 0x07, 0x0c, 0xca, 0x9b, 0x95, 0x76, 0x50, 0x17, 0x7e, 0xeb, 0x41, 0xc5, 0x57, 0x73, 0x15, 0x96, 0xa9, 0x66, 0xb0, 0xb7, 0xf6, 0x87, 0x17, 0xd8, 0xe7, 0xb5, 0x54, 0xaf, 0xd0, 0x7c, 0x29, 0x37, 0xc9, 0x54, 0x03, 0xa9, 0x0c, 0x3a, 0x05, 0xfa, 0x96, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1948 = { .name = "ecdsa_brainpoolp384r1_sha384_1948", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1948_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1948_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1948_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 418 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1949 for ECDSA, tcId is 419 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1949_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1949_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1949_sig[] = { 0x00, 0x12, 0x8c, 0x19, 0x9d, 0xc2, 0x76, 0x77, 0xf2, 0x3f, 0xea, 0xe2, 0x8a, 0x9b, 0x28, 0x81, 0x3c, 0xbc, 0x3b, 0x02, 0xfc, 0xa4, 0x93, 0x00, 0x5a, 0x67, 0xc3, 0x12, 0x6a, 0x70, 0x5c, 0x49, 0xb9, 0x82, 0xcb, 0x58, 0x17, 0xee, 0x2c, 0x81, 0x16, 0x1e, 0x80, 0xb7, 0x38, 0xbb, 0xb5, 0x12, 0x73, 0xcb, 0x6d, 0x45, 0x47, 0x77, 0x1d, 0x25, 0x4b, 0xe7, 0x43, 0x48, 0x95, 0x5b, 0xee, 0x97, 0x90, 0x71, 0x35, 0x8a, 0xa3, 0xaf, 0xd6, 0x2a, 0x58, 0x38, 0x17, 0x9a, 0x09, 0x65, 0x46, 0x5a, 0xec, 0x79, 0xbd, 0x6c, 0xbd, 0x9b, 0x8b, 0x2a, 0xa2, 0xc7, 0x9b, 0xb8, 0x8a, 0xb2, 0x15, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1949 = { .name = "ecdsa_brainpoolp384r1_sha384_1949", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1949_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1949_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1949_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 419 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1950 for ECDSA, tcId is 420 in file ecdsa_brainpoolP384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_1950_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1950_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_1950_sig[] = { 0x81, 0x8b, 0x0f, 0xd6, 0xca, 0x09, 0x78, 0xa5, 0x9c, 0xad, 0x3f, 0xa1, 0x5e, 0x84, 0xdb, 0x28, 0x96, 0xf3, 0x9b, 0x2a, 0xa4, 0x62, 0xf0, 0x58, 0x38, 0x34, 0xfa, 0x44, 0x44, 0xd1, 0x53, 0xfe, 0x61, 0xe0, 0xc9, 0x30, 0x71, 0xba, 0x96, 0xc5, 0xff, 0xa7, 0x19, 0x3f, 0x77, 0xb8, 0x06, 0xf3, 0x1d, 0x2d, 0x61, 0x44, 0x17, 0x23, 0x85, 0xf8, 0x57, 0xdb, 0x4b, 0x7e, 0x7e, 0x86, 0x39, 0x62, 0xea, 0xca, 0xcd, 0xec, 0x03, 0x4b, 0x4b, 0x4a, 0x9d, 0xd1, 0xaf, 0x27, 0x26, 0x04, 0x40, 0x3f, 0x39, 0xf4, 0x5a, 0x21, 0x94, 0x8b, 0x30, 0x97, 0x6e, 0x73, 0x8e, 0x9e, 0x98, 0xfd, 0x9c, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_1950 = { .name = "ecdsa_brainpoolp384r1_sha384_1950", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_1950_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_1950_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_1950_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 420 in file ecdsa_brainpoolP384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 1951 for ECDSA, tcId is 1 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1951_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1951_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x44, 0xb4, 0x23, 0x04, 0xe6, 0x93, 0x79, 0x66, 0x18, 0xd0, 0x90, 0xdb, 0xcb, 0x2a, 0x25, 0x51, 0xc3, 0xcb, 0x78, 0x53, 0x46, 0x11, 0xe6, 0x1f, 0xd9, 0xd1, 0xa5, 0xc0, 0x93, 0x8b, 0x5b, 0x8e, 0xc6, 0xed, 0x53, 0xd2, 0xd2, 0x89, 0x99, 0xea, 0xbb, 0xd8, 0xe7, 0x79, 0x2d, 0x16, 0x7f, 0xcf, 0x58, 0x24, 0x92, 0x40, 0x3a, 0x6a, 0x0f, 0x7c, 0xc9, 0x4c, 0x73, 0xa2, 0x8f, 0xb7, 0x6b, 0x71, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1951 = { .name = "ecdsa_brainpoolp512r1_sha512_1951", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1951_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1951_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1951_sig, .siglen = 128, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1952 for ECDSA, tcId is 2 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1952_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1952_sig[] = { 0xb6, 0xaf, 0xf6, 0xed, 0x23, 0xb6, 0x30, 0x8e, 0x0a, 0xce, 0x84, 0x0e, 0x75, 0x57, 0xd0, 0x36, 0x65, 0x49, 0xda, 0x44, 0xc2, 0x31, 0x27, 0xfb, 0xe2, 0xd3, 0xf6, 0x77, 0x1c, 0x98, 0x73, 0x75, 0x22, 0x3c, 0x7a, 0xc4, 0x94, 0xef, 0x54, 0xfd, 0x71, 0xec, 0xe3, 0x54, 0x6d, 0xdb, 0xfd, 0xc3, 0xbd, 0xc4, 0xbd, 0x0a, 0x16, 0x59, 0x44, 0x64, 0x23, 0x02, 0x7f, 0x0e, 0x01, 0xaf, 0xfa, 0x30, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1952 = { .name = "ecdsa_brainpoolp512r1_sha512_1952", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1952_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1952_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1952_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1953 for ECDSA, tcId is 3 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1953_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1953_sig[] = { 0x9f, 0x0b, 0x44, 0x84, 0x94, 0x1d, 0x58, 0x88, 0x74, 0xdb, 0x49, 0x4d, 0xf2, 0x3c, 0x27, 0xd9, 0x31, 0x17, 0x41, 0x22, 0xa5, 0x62, 0x7c, 0x21, 0xc9, 0xf3, 0x43, 0x1d, 0xc3, 0xcd, 0x9d, 0x6b, 0x88, 0x40, 0x3d, 0xbe, 0x04, 0x62, 0xf7, 0x35, 0x11, 0x1f, 0xde, 0xde, 0x91, 0x7c, 0x22, 0xca, 0x7d, 0x9e, 0xe9, 0xf7, 0xfa, 0x62, 0x71, 0x57, 0x48, 0x0c, 0xad, 0xf7, 0x37, 0xa2, 0x06, 0xa2, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1953 = { .name = "ecdsa_brainpoolp512r1_sha512_1953", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1953_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1953_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1953_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1954 for ECDSA, tcId is 4 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1954_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1954_sig[] = { 0x01, 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1954 = { .name = "ecdsa_brainpoolp512r1_sha512_1954", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1954_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1954_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1954_sig, .siglen = 130, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1955 for ECDSA, tcId is 5 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1955_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1955_sig[] = { 0xf4, 0x2d, 0xa6, 0xcb, 0xb8, 0x33, 0x93, 0xfd, 0x35, 0x06, 0x62, 0x9f, 0xbe, 0x72, 0x2b, 0xd1, 0x65, 0xe6, 0xb3, 0x6e, 0xf1, 0x98, 0xaa, 0x12, 0xf3, 0x8f, 0xa6, 0x53, 0x53, 0x9a, 0x94, 0xfb, 0x33, 0x01, 0xe1, 0x7c, 0xb7, 0xb9, 0xd1, 0x1b, 0xcf, 0x99, 0x7d, 0xc5, 0x11, 0xd0, 0x12, 0x83, 0x5f, 0xed, 0x16, 0x76, 0xf2, 0x04, 0x96, 0x79, 0x92, 0x85, 0x17, 0x74, 0x9a, 0xf9, 0x06, 0x39, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1955 = { .name = "ecdsa_brainpoolp512r1_sha512_1955", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1955_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1955_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1955_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1956 for ECDSA, tcId is 6 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1956_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1956_sig[] = { 0x00, 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x01, 0x11, 0x07, 0x18, 0x6c, 0xd1, 0x40, 0x0f, 0xb0, 0x66, 0xd9, 0x3c, 0x80, 0x9c, 0x69, 0xd2, 0xbd, 0xd2, 0x95, 0xa3, 0x14, 0x21, 0x81, 0xbd, 0xfd, 0xd2, 0xf5, 0x93, 0xd4, 0x4c, 0xda, 0xb5, 0x51, 0xe3, 0x8f, 0x64, 0xaf, 0xc6, 0xc8, 0xb2, 0x47, 0xc7, 0x33, 0xda, 0xb9, 0xd2, 0x41, 0xa0, 0xbe, 0xe3, 0x3f, 0x14, 0xc1, 0xd6, 0x51, 0xa6, 0x3e, 0xa1, 0xc2, 0xb9, 0x62, 0xa9, 0x9a, 0x95, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1956 = { .name = "ecdsa_brainpoolp512r1_sha512_1956", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1956_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1956_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1956_sig, .siglen = 130, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1957 for ECDSA, tcId is 7 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1957_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1957_sig[] = { 0x00, 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x01, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1957 = { .name = "ecdsa_brainpoolp512r1_sha512_1957", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1957_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1957_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1957_sig, .siglen = 130, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1958 for ECDSA, tcId is 8 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1958_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1958_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x99, 0xd6, 0x85, 0x4c, 0x0a, 0xa9, 0xb4, 0xda, 0xd8, 0xfb, 0xaa, 0x2d, 0x97, 0x60, 0x29, 0x49, 0xf8, 0x9a, 0xea, 0x9f, 0x92, 0x48, 0x14, 0x11, 0x03, 0x6e, 0x08, 0xf6, 0x23, 0x58, 0x53, 0x1e, 0x71, 0xae, 0xf7, 0x91, 0x85, 0xe0, 0x73, 0xd1, 0x7a, 0x52, 0x86, 0x5f, 0xad, 0x6a, 0x6f, 0x88, 0x3a, 0x72, 0xbe, 0xbf, 0x32, 0x0c, 0x34, 0x9f, 0x13, 0xc4, 0xdd, 0x1f, 0xf3, 0x0e, 0x6b, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1958 = { .name = "ecdsa_brainpoolp512r1_sha512_1958", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1958_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1958_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1958_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1959 for ECDSA, tcId is 9 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1959_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1959_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1959 = { .name = "ecdsa_brainpoolp512r1_sha512_1959", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1959_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1959_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1959_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1960 for ECDSA, tcId is 10 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1960_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1960_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1960 = { .name = "ecdsa_brainpoolp512r1_sha512_1960", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1960_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1960_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1960_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1961 for ECDSA, tcId is 11 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1961_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1961_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1961 = { .name = "ecdsa_brainpoolp512r1_sha512_1961", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1961_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1961_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1961_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1962 for ECDSA, tcId is 12 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1962_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1962_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1962 = { .name = "ecdsa_brainpoolp512r1_sha512_1962", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1962_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1962_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1962_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1963 for ECDSA, tcId is 13 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1963_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1963_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1963 = { .name = "ecdsa_brainpoolp512r1_sha512_1963", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1963_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1963_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1963_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1964 for ECDSA, tcId is 14 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1964_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1964_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1964 = { .name = "ecdsa_brainpoolp512r1_sha512_1964", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1964_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1964_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1964_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1965 for ECDSA, tcId is 15 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1965_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1965_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1965 = { .name = "ecdsa_brainpoolp512r1_sha512_1965", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1965_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1965_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1965_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1966 for ECDSA, tcId is 16 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1966_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1966_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1966 = { .name = "ecdsa_brainpoolp512r1_sha512_1966", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1966_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1966_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1966_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1967 for ECDSA, tcId is 17 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1967_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1967_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1967 = { .name = "ecdsa_brainpoolp512r1_sha512_1967", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1967_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1967_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1967_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1968 for ECDSA, tcId is 18 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1968_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1968_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1968 = { .name = "ecdsa_brainpoolp512r1_sha512_1968", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1968_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1968_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1968_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1969 for ECDSA, tcId is 19 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1969_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1969_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1969 = { .name = "ecdsa_brainpoolp512r1_sha512_1969", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1969_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1969_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1969_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1970 for ECDSA, tcId is 20 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1970_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1970_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1970 = { .name = "ecdsa_brainpoolp512r1_sha512_1970", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1970_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1970_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1970_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1971 for ECDSA, tcId is 21 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1971_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1971_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1971 = { .name = "ecdsa_brainpoolp512r1_sha512_1971", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1971_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1971_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1971_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1972 for ECDSA, tcId is 22 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1972_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1972_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1972 = { .name = "ecdsa_brainpoolp512r1_sha512_1972", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1972_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1972_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1972_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1973 for ECDSA, tcId is 23 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1973_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1973_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1973 = { .name = "ecdsa_brainpoolp512r1_sha512_1973", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1973_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1973_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1973_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1974 for ECDSA, tcId is 24 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1974_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1974_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1974 = { .name = "ecdsa_brainpoolp512r1_sha512_1974", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1974_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1974_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1974_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1975 for ECDSA, tcId is 25 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1975_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1975_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1975 = { .name = "ecdsa_brainpoolp512r1_sha512_1975", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1975_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1975_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1975_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1976 for ECDSA, tcId is 26 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1976_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1976_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1976 = { .name = "ecdsa_brainpoolp512r1_sha512_1976", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1976_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1976_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1976_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1977 for ECDSA, tcId is 27 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1977_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1977_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1977 = { .name = "ecdsa_brainpoolp512r1_sha512_1977", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1977_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1977_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1977_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1978 for ECDSA, tcId is 28 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1978_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1978_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1978 = { .name = "ecdsa_brainpoolp512r1_sha512_1978", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1978_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1978_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1978_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1979 for ECDSA, tcId is 29 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1979_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1979_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1979_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1979 = { .name = "ecdsa_brainpoolp512r1_sha512_1979", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1979_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1979_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1979_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1980 for ECDSA, tcId is 30 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1980_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1980_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1980_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1980 = { .name = "ecdsa_brainpoolp512r1_sha512_1980", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1980_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1980_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1980_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1981 for ECDSA, tcId is 31 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1981_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1981_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1981 = { .name = "ecdsa_brainpoolp512r1_sha512_1981", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1981_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1981_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1981_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1982 for ECDSA, tcId is 32 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1982_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1982_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1982_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1982 = { .name = "ecdsa_brainpoolp512r1_sha512_1982", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1982_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1982_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1982_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1983 for ECDSA, tcId is 33 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1983_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1983_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1983_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1983 = { .name = "ecdsa_brainpoolp512r1_sha512_1983", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1983_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1983_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1983_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1984 for ECDSA, tcId is 34 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1984_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1984_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1984_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1984 = { .name = "ecdsa_brainpoolp512r1_sha512_1984", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1984_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1984_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1984_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1985 for ECDSA, tcId is 35 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1985_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1985_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1985_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1985 = { .name = "ecdsa_brainpoolp512r1_sha512_1985", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1985_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1985_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1985_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1986 for ECDSA, tcId is 36 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1986_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1986_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1986_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1986 = { .name = "ecdsa_brainpoolp512r1_sha512_1986", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1986_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1986_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1986_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1987 for ECDSA, tcId is 37 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1987_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1987_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1987 = { .name = "ecdsa_brainpoolp512r1_sha512_1987", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1987_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1987_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1987_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1988 for ECDSA, tcId is 38 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1988_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1988_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1988_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1988 = { .name = "ecdsa_brainpoolp512r1_sha512_1988", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1988_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1988_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1988_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1989 for ECDSA, tcId is 39 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1989_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1989_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1989 = { .name = "ecdsa_brainpoolp512r1_sha512_1989", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1989_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1989_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1989_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1990 for ECDSA, tcId is 40 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1990_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1990_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1990_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1990 = { .name = "ecdsa_brainpoolp512r1_sha512_1990", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1990_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1990_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1990_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1991 for ECDSA, tcId is 41 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1991_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1991_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1991_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1991 = { .name = "ecdsa_brainpoolp512r1_sha512_1991", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1991_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1991_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1991_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1992 for ECDSA, tcId is 42 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1992_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1992_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1992_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1992 = { .name = "ecdsa_brainpoolp512r1_sha512_1992", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1992_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1992_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1992_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1993 for ECDSA, tcId is 43 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1993_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1993_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1993 = { .name = "ecdsa_brainpoolp512r1_sha512_1993", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1993_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1993_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1993_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1994 for ECDSA, tcId is 44 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1994_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1994_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1994_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1994 = { .name = "ecdsa_brainpoolp512r1_sha512_1994", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1994_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1994_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1994_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1995 for ECDSA, tcId is 45 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1995_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1995_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1995_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1995 = { .name = "ecdsa_brainpoolp512r1_sha512_1995", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1995_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1995_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1995_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1996 for ECDSA, tcId is 46 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1996_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1996_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1996_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1996 = { .name = "ecdsa_brainpoolp512r1_sha512_1996", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1996_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1996_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1996_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1997 for ECDSA, tcId is 47 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1997_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1997_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1997_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1997 = { .name = "ecdsa_brainpoolp512r1_sha512_1997", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1997_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1997_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1997_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1998 for ECDSA, tcId is 48 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1998_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1998_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1998_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1998 = { .name = "ecdsa_brainpoolp512r1_sha512_1998", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1998_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1998_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1998_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 1999 for ECDSA, tcId is 49 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_1999_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1999_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_1999_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_1999 = { .name = "ecdsa_brainpoolp512r1_sha512_1999", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_1999_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_1999_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_1999_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2000 for ECDSA, tcId is 50 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2000_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2000_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2000_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2000 = { .name = "ecdsa_brainpoolp512r1_sha512_2000", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2000_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2000_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2000_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2001 for ECDSA, tcId is 51 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2001_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2001_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2001_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2001 = { .name = "ecdsa_brainpoolp512r1_sha512_2001", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2001_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2001_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2001_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2002 for ECDSA, tcId is 52 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2002_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2002_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2002_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2002 = { .name = "ecdsa_brainpoolp512r1_sha512_2002", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2002_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2002_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2002_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2003 for ECDSA, tcId is 53 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2003_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2003_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2003_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2003 = { .name = "ecdsa_brainpoolp512r1_sha512_2003", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2003_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2003_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2003_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2004 for ECDSA, tcId is 54 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2004_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2004_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2004 = { .name = "ecdsa_brainpoolp512r1_sha512_2004", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2004_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2004_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2004_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2005 for ECDSA, tcId is 55 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2005_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2005_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2005 = { .name = "ecdsa_brainpoolp512r1_sha512_2005", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2005_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2005_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2005_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2006 for ECDSA, tcId is 56 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2006_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2006_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2006 = { .name = "ecdsa_brainpoolp512r1_sha512_2006", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2006_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2006_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2006_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2007 for ECDSA, tcId is 57 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2007_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2007_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2007 = { .name = "ecdsa_brainpoolp512r1_sha512_2007", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2007_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2007_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2007_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2008 for ECDSA, tcId is 58 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2008_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2008_msg[] = { 0x31, 0x31, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2008_sig[] = { 0x7d, 0xa1, 0x1e, 0x5b, 0x4b, 0xb7, 0x93, 0x21, 0x35, 0xcd, 0x91, 0xac, 0xce, 0xf8, 0x89, 0x2c, 0x42, 0x86, 0x65, 0x4a, 0x7b, 0xe7, 0xc9, 0xd3, 0x84, 0xb6, 0x00, 0xd9, 0x79, 0x00, 0xee, 0x12, 0xa2, 0x3f, 0xf1, 0xf9, 0xae, 0x9a, 0x4f, 0xe7, 0x4c, 0xca, 0x18, 0x5d, 0x0d, 0xc9, 0xf5, 0x9d, 0xc2, 0x4b, 0xe0, 0x3d, 0x02, 0x23, 0xd8, 0xfe, 0xb5, 0x5b, 0x6d, 0xde, 0x17, 0x77, 0x47, 0x5f, 0x06, 0x86, 0xbc, 0x31, 0x3a, 0xa5, 0xc1, 0x92, 0x3a, 0xb0, 0x54, 0x33, 0x31, 0x39, 0x81, 0x90, 0xca, 0x5f, 0x22, 0xa3, 0xa9, 0x7e, 0x96, 0x3a, 0x13, 0xce, 0xdf, 0x68, 0x8d, 0xa1, 0xdf, 0xe4, 0xa3, 0x48, 0x94, 0x54, 0x97, 0xb2, 0x1c, 0x01, 0xc8, 0xa1, 0x7c, 0x23, 0x25, 0x2b, 0x3e, 0x8e, 0xac, 0x1f, 0x9a, 0x92, 0xd6, 0x32, 0x0e, 0xaa, 0x32, 0x4b, 0x44, 0x80, 0x7c, 0x32, 0x61, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2008 = { .name = "ecdsa_brainpoolp512r1_sha512_2008", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2008_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2008_msg, .msglen = 4, .sig = ecdsa_brainpoolp512r1_sha512_2008_sig, .siglen = 128, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2009 for ECDSA, tcId is 59 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2009_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2009_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2009_sig[] = { 0x6d, 0x87, 0xbe, 0x05, 0x95, 0x8c, 0xa5, 0xc7, 0x0c, 0x5d, 0x29, 0x62, 0x91, 0x60, 0x50, 0x21, 0x40, 0x2d, 0xeb, 0xa1, 0x77, 0x2f, 0x31, 0xbb, 0xba, 0x09, 0xdc, 0x65, 0xa8, 0x37, 0xb0, 0x9a, 0x78, 0xd3, 0x32, 0xb6, 0x16, 0x2a, 0x32, 0x01, 0xca, 0x1a, 0x30, 0xd4, 0x16, 0x2d, 0x8f, 0x18, 0x6b, 0x2b, 0xff, 0xca, 0x53, 0x02, 0x33, 0x3a, 0xca, 0x14, 0x89, 0x4d, 0x5f, 0x09, 0x3f, 0xe7, 0x10, 0xb8, 0xb3, 0xc9, 0x0b, 0x46, 0x09, 0xcc, 0xbd, 0xdd, 0xed, 0x27, 0x5d, 0x42, 0x49, 0x85, 0x7d, 0x88, 0x27, 0x49, 0xe4, 0xb8, 0x36, 0xd0, 0x17, 0xdb, 0xaa, 0xe0, 0x5e, 0x3a, 0x19, 0xcf, 0x78, 0x10, 0x63, 0x23, 0x29, 0xa0, 0x25, 0x80, 0xda, 0xe4, 0x41, 0x36, 0xca, 0xdc, 0xf0, 0x6c, 0xa5, 0x7d, 0xfe, 0x56, 0x0e, 0x1c, 0x11, 0x22, 0xe2, 0xec, 0x00, 0xff, 0x04, 0xd7, 0x88, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2009 = { .name = "ecdsa_brainpoolp512r1_sha512_2009", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2009_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2009_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2009_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2010 for ECDSA, tcId is 60 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2010_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2010_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2010_sig[] = { 0x23, 0xe9, 0xba, 0xc3, 0xf1, 0x4d, 0x56, 0x67, 0x9b, 0xda, 0x0b, 0xb2, 0xf4, 0xf1, 0x9e, 0xec, 0xaf, 0x6d, 0xd5, 0x03, 0x64, 0x9c, 0x81, 0x14, 0x92, 0x27, 0x88, 0x0f, 0x14, 0x37, 0x6d, 0x02, 0x24, 0x19, 0x3d, 0x2b, 0x1b, 0xda, 0x4b, 0x08, 0xf8, 0x7e, 0x46, 0x68, 0x7d, 0xd9, 0x14, 0x12, 0x78, 0xa3, 0x99, 0xf0, 0xa3, 0xcd, 0x0d, 0x00, 0x2f, 0x23, 0x6d, 0x0e, 0x7d, 0x73, 0x82, 0xb7, 0x9c, 0x24, 0xfb, 0x21, 0x28, 0xd6, 0x2e, 0x5d, 0xdf, 0x59, 0xbb, 0x86, 0xb3, 0xa6, 0xb7, 0x87, 0xb1, 0x0c, 0xc7, 0x58, 0x65, 0xe5, 0xae, 0xab, 0x41, 0xa8, 0x4f, 0x87, 0x8a, 0xb3, 0xa9, 0x47, 0xa2, 0xf6, 0xb4, 0xb0, 0x87, 0x1a, 0xf4, 0x94, 0xc1, 0x30, 0xf5, 0x8b, 0xb3, 0x95, 0x7c, 0xe0, 0x3d, 0x61, 0x37, 0x3f, 0x3f, 0xb5, 0xcb, 0xe9, 0x7e, 0xbe, 0xdc, 0x1b, 0x3a, 0xca, 0x17, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2010 = { .name = "ecdsa_brainpoolp512r1_sha512_2010", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2010_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2010_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2010_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2011 for ECDSA, tcId is 61 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2011_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2011_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2011_sig[] = { 0x2d, 0x07, 0xd8, 0xbb, 0x62, 0x77, 0xb7, 0x8f, 0xa4, 0x48, 0xd5, 0x2e, 0x3e, 0x1d, 0x90, 0x1c, 0xcb, 0xdd, 0x68, 0x29, 0x30, 0xfc, 0xa9, 0xd8, 0x69, 0x59, 0xa6, 0x3b, 0x5a, 0x79, 0x2a, 0x8a, 0xa8, 0x2f, 0xf9, 0xbd, 0x7d, 0xa3, 0xe4, 0x05, 0x7f, 0x40, 0x2a, 0x76, 0xe8, 0x28, 0x36, 0xaa, 0x3d, 0xa3, 0x4b, 0x6f, 0xf6, 0xbb, 0x8b, 0x21, 0x89, 0xac, 0x24, 0x2b, 0xae, 0xa2, 0xb0, 0xee, 0x58, 0xeb, 0xef, 0x50, 0xea, 0x30, 0xd1, 0x5a, 0xc2, 0x6f, 0xa0, 0x3e, 0x2b, 0x06, 0x5c, 0x7b, 0xa5, 0x0f, 0x33, 0x1a, 0x5c, 0xf2, 0x40, 0x17, 0x5f, 0xf3, 0xa6, 0xa1, 0xd8, 0xdb, 0x40, 0x0e, 0x15, 0x97, 0xce, 0x67, 0x5e, 0xb3, 0x2f, 0x26, 0x9b, 0x43, 0x67, 0x01, 0x1a, 0xcf, 0x32, 0x76, 0x58, 0x06, 0x02, 0xee, 0xd7, 0xc2, 0x93, 0x84, 0x39, 0x77, 0x2e, 0x1b, 0xe1, 0xb9, 0x38, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2011 = { .name = "ecdsa_brainpoolp512r1_sha512_2011", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2011_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2011_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2011_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2012 for ECDSA, tcId is 62 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2012_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2012_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2012_sig[] = { 0x0d, 0x67, 0x43, 0xa7, 0xbc, 0x90, 0x4a, 0x21, 0xd7, 0x31, 0x20, 0x5f, 0xca, 0xa7, 0xfc, 0xd0, 0x01, 0x8e, 0xad, 0x44, 0x6e, 0xcc, 0x9b, 0xaf, 0xc4, 0x53, 0x2b, 0xd0, 0xce, 0x6b, 0xfa, 0x69, 0x60, 0x15, 0x9f, 0x59, 0xb5, 0xeb, 0x37, 0xc7, 0x50, 0xd4, 0x23, 0xc4, 0xfb, 0xcf, 0xb2, 0x0a, 0x71, 0x8e, 0x56, 0x55, 0xd5, 0x17, 0xb7, 0x4f, 0xff, 0x89, 0x86, 0xc9, 0x63, 0x8f, 0x4f, 0x29, 0x03, 0x99, 0xd7, 0x94, 0x1f, 0xe5, 0xf3, 0xf3, 0x08, 0xaf, 0xb8, 0xa8, 0xa4, 0xff, 0x8f, 0x2b, 0xec, 0x1b, 0xfe, 0x6b, 0x91, 0x0c, 0x83, 0x99, 0xd8, 0x31, 0xeb, 0x62, 0x21, 0x68, 0x48, 0x75, 0xf6, 0x7f, 0xe6, 0xa2, 0x57, 0x6c, 0x86, 0xfe, 0xad, 0xf3, 0xcd, 0x2a, 0xf1, 0x47, 0x29, 0x78, 0x30, 0x11, 0x36, 0x11, 0xfc, 0xff, 0xfa, 0xcd, 0x8a, 0x8c, 0x8c, 0x52, 0xcf, 0x95, 0x7f, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2012 = { .name = "ecdsa_brainpoolp512r1_sha512_2012", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2012_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2012_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2012_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2013 for ECDSA, tcId is 63 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2013_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2013_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2013_sig[] = { 0xaa, 0xbc, 0x4b, 0xdc, 0xc4, 0x4c, 0xea, 0xcf, 0xe0, 0x3a, 0x96, 0xa7, 0x93, 0x9b, 0xf0, 0x8c, 0x40, 0x7d, 0x30, 0x0d, 0xe4, 0x46, 0x51, 0x4f, 0xc9, 0x64, 0xde, 0x4d, 0xab, 0xf2, 0x9e, 0xbd, 0xa0, 0x60, 0x8c, 0x17, 0x09, 0xc7, 0x22, 0x44, 0xf8, 0xd8, 0x88, 0xcb, 0x0e, 0x55, 0x6d, 0x75, 0x82, 0x87, 0x56, 0xd1, 0x1c, 0x11, 0xbe, 0x77, 0x87, 0x60, 0x3b, 0xff, 0xc6, 0x71, 0x8a, 0xc5, 0x81, 0xeb, 0x84, 0xc8, 0x74, 0x3a, 0xd6, 0xab, 0x78, 0xa0, 0x21, 0xa6, 0xf5, 0x5b, 0x3a, 0xe0, 0x84, 0x5f, 0x18, 0x30, 0x7e, 0xa1, 0x8e, 0x77, 0x1e, 0x3c, 0x4e, 0x11, 0xb3, 0x12, 0xeb, 0x8e, 0x53, 0x00, 0x02, 0xc9, 0x5c, 0xdb, 0x51, 0x78, 0x55, 0xb1, 0x7e, 0xa9, 0x72, 0x6e, 0xc9, 0x60, 0x2f, 0x34, 0x7e, 0x78, 0x9f, 0xab, 0x42, 0x05, 0x5e, 0x68, 0x8a, 0x55, 0x8e, 0x3f, 0xc9, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2013 = { .name = "ecdsa_brainpoolp512r1_sha512_2013", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2013_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2013_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2013_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2014 for ECDSA, tcId is 64 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2014_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2014_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2014_sig[] = { 0x4e, 0x7f, 0x75, 0x68, 0x1d, 0xd7, 0xcb, 0x2e, 0xea, 0x02, 0x2e, 0x5b, 0x86, 0x32, 0x9b, 0x25, 0x30, 0x7c, 0x21, 0xb8, 0x28, 0xc7, 0x41, 0x69, 0x16, 0xcf, 0x1f, 0x59, 0x38, 0x07, 0x15, 0x19, 0xcb, 0x7d, 0xa6, 0x68, 0xec, 0x6b, 0xc2, 0x19, 0xe7, 0x2d, 0x35, 0x87, 0x32, 0xf1, 0xc7, 0x7a, 0xbf, 0xcc, 0x61, 0x06, 0x5a, 0xa3, 0x23, 0x94, 0x19, 0x08, 0x9f, 0xab, 0xef, 0xe3, 0x96, 0xdf, 0x4f, 0x9e, 0xc1, 0x96, 0xa7, 0x1c, 0x5c, 0x8e, 0xd8, 0x8d, 0x7f, 0xe1, 0xd0, 0x03, 0x8f, 0x37, 0x2a, 0xc6, 0x0b, 0xfa, 0x18, 0x0c, 0xee, 0x24, 0x98, 0xaa, 0x9c, 0x02, 0x48, 0x16, 0x6f, 0x17, 0x38, 0x23, 0x68, 0xfa, 0x2b, 0x3b, 0x8c, 0xe2, 0x9d, 0x50, 0xd7, 0xa2, 0x1e, 0x91, 0xa8, 0x3c, 0xa8, 0x8d, 0xb5, 0xd4, 0xef, 0xd0, 0x73, 0xf8, 0x21, 0xa8, 0xc5, 0xaa, 0x4d, 0x26, 0x67, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2014 = { .name = "ecdsa_brainpoolp512r1_sha512_2014", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2014_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2014_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2014_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2015 for ECDSA, tcId is 65 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2015_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2015_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2015_sig[] = { 0xa0, 0xe1, 0xc2, 0xbb, 0x33, 0x20, 0x02, 0x54, 0xbe, 0xab, 0x5e, 0x73, 0x5c, 0x1a, 0x2c, 0x59, 0x0f, 0xc1, 0x18, 0x54, 0x03, 0x01, 0xad, 0xd7, 0xe5, 0x49, 0x17, 0x01, 0xd2, 0x2c, 0x71, 0x29, 0x3a, 0xdf, 0xed, 0xdf, 0x43, 0x08, 0x94, 0x0f, 0xd8, 0xa0, 0x66, 0x22, 0x2c, 0xcf, 0xb3, 0x80, 0x2e, 0xaf, 0xff, 0xe0, 0x3b, 0x21, 0x56, 0xc8, 0xe7, 0x9c, 0x32, 0x60, 0xd1, 0x80, 0xb3, 0xb8, 0x9d, 0x84, 0x82, 0x12, 0x7f, 0x22, 0xec, 0xa1, 0x0b, 0x27, 0x92, 0x74, 0x7d, 0x60, 0x16, 0xba, 0x71, 0x99, 0x65, 0x60, 0x3e, 0xe8, 0xe7, 0x1f, 0x2a, 0x39, 0x50, 0x0a, 0x2f, 0x21, 0x1d, 0xcb, 0x2d, 0xa5, 0x82, 0xd5, 0xdb, 0xd0, 0xc6, 0xa4, 0x07, 0x15, 0x5e, 0x1b, 0x01, 0x08, 0x5b, 0x75, 0x9c, 0x80, 0x97, 0x1c, 0xf1, 0x85, 0xfd, 0x0a, 0x26, 0xe3, 0x88, 0x92, 0x63, 0xa7, 0xf2, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2015 = { .name = "ecdsa_brainpoolp512r1_sha512_2015", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2015_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2015_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2015_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2016 for ECDSA, tcId is 66 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2016_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2016_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2016_sig[] = { 0x2e, 0xe9, 0xca, 0x54, 0xe2, 0xdf, 0x79, 0xd6, 0xe0, 0x6f, 0x13, 0x01, 0x89, 0xfa, 0xca, 0x80, 0x1c, 0xcb, 0x08, 0x1c, 0x43, 0x47, 0x2d, 0x4f, 0x88, 0x8a, 0xed, 0x89, 0x2d, 0xf8, 0x78, 0xd1, 0x2c, 0xa1, 0x4c, 0x8e, 0x80, 0x0f, 0xb7, 0xa7, 0x5c, 0x22, 0x90, 0xa0, 0x28, 0xfb, 0x7d, 0x12, 0x93, 0x64, 0x99, 0xc3, 0x01, 0x0b, 0xc5, 0xc7, 0xc0, 0x7b, 0x2f, 0x73, 0x89, 0x24, 0x76, 0x6e, 0x55, 0x8c, 0x02, 0xbc, 0xd1, 0x32, 0x90, 0xff, 0x34, 0xe0, 0x39, 0xa1, 0x99, 0x38, 0x43, 0x85, 0xa4, 0x4f, 0x97, 0xef, 0x9a, 0x7d, 0xcd, 0xaa, 0x0f, 0xac, 0xa6, 0x63, 0x57, 0xec, 0x7b, 0x9c, 0x1b, 0x40, 0xea, 0x7a, 0x35, 0x29, 0xf4, 0xbb, 0x79, 0x6f, 0xbd, 0xda, 0xdf, 0xbe, 0x64, 0xd3, 0xe6, 0xab, 0xfc, 0x54, 0xc2, 0x94, 0x6f, 0x5b, 0x1f, 0x54, 0x8f, 0xa0, 0x87, 0x7f, 0x3a, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2016 = { .name = "ecdsa_brainpoolp512r1_sha512_2016", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2016_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2016_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2016_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2017 for ECDSA, tcId is 67 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2017_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2017_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2017_sig[] = { 0x54, 0xf4, 0x5f, 0x0b, 0xc3, 0x0a, 0x88, 0x9a, 0x4f, 0xae, 0x7e, 0xaa, 0x04, 0x7e, 0xa0, 0x2c, 0xa0, 0xb9, 0xe3, 0x87, 0xd6, 0x36, 0x78, 0x01, 0xf8, 0xbc, 0xce, 0xc2, 0xec, 0x7c, 0x0f, 0xf8, 0x9d, 0x66, 0x03, 0xd7, 0x0f, 0x7c, 0x8e, 0x05, 0x5e, 0x59, 0xfa, 0x69, 0x90, 0x5b, 0x18, 0x5f, 0xaa, 0xb4, 0x37, 0x77, 0x9d, 0x62, 0xc4, 0xd2, 0xee, 0xf4, 0xb1, 0x2a, 0x90, 0xc2, 0x0a, 0xb4, 0x43, 0xc2, 0xca, 0x32, 0x05, 0xa7, 0xf8, 0xb6, 0x1f, 0x64, 0x66, 0x1d, 0x0f, 0xe7, 0x46, 0xbd, 0x23, 0xfd, 0x0f, 0x26, 0x49, 0x99, 0x31, 0x0a, 0x56, 0xb3, 0x98, 0x04, 0x8a, 0xd4, 0x6f, 0xba, 0xb8, 0xa5, 0xe3, 0xb3, 0xe2, 0xe1, 0x6c, 0x4b, 0x2f, 0x03, 0xf1, 0x01, 0x57, 0x3e, 0x2f, 0x65, 0x93, 0xb6, 0x4a, 0xcc, 0xf3, 0x19, 0xdc, 0x9e, 0x2e, 0x2e, 0x84, 0x7b, 0x06, 0xfc, 0xdd, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2017 = { .name = "ecdsa_brainpoolp512r1_sha512_2017", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2017_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2017_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2017_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2018 for ECDSA, tcId is 68 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2018_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2018_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2018_sig[] = { 0x8a, 0x03, 0x0f, 0xd4, 0xba, 0x48, 0xd3, 0xf5, 0x99, 0x80, 0x10, 0xc7, 0x64, 0xe8, 0x69, 0x21, 0x1a, 0x4c, 0xe3, 0x31, 0x22, 0xa7, 0xfd, 0xc7, 0xb8, 0xdf, 0x26, 0x76, 0x3b, 0xe1, 0x80, 0xf2, 0x5e, 0x06, 0x8d, 0xb6, 0xc9, 0x28, 0x20, 0xbe, 0x64, 0x1b, 0x8a, 0xfd, 0x17, 0x8a, 0x80, 0x33, 0x60, 0xbd, 0x19, 0x7a, 0x86, 0xcc, 0x8e, 0xf7, 0x6c, 0xa0, 0x08, 0x44, 0x3e, 0xc4, 0xad, 0x63, 0x80, 0x37, 0xc3, 0xa2, 0xc1, 0xca, 0xc2, 0x6e, 0x6f, 0xf8, 0x98, 0x94, 0xa0, 0x7b, 0x3e, 0x25, 0xf5, 0x13, 0x68, 0x0f, 0xc2, 0xe4, 0x6e, 0xd6, 0x93, 0xdf, 0x96, 0xd0, 0xee, 0x85, 0xb9, 0x40, 0x0c, 0xd6, 0x2d, 0x72, 0x3f, 0xc9, 0x8a, 0xdc, 0xa2, 0xa6, 0x79, 0xfa, 0xfe, 0xc9, 0xdb, 0x5f, 0xe0, 0x78, 0xf2, 0x5f, 0x98, 0x04, 0xe0, 0xd0, 0xce, 0x16, 0xd1, 0xa4, 0x32, 0xd1, 0x94, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2018 = { .name = "ecdsa_brainpoolp512r1_sha512_2018", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2018_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2018_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2018_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2019 for ECDSA, tcId is 69 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2019_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2019_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2019_sig[] = { 0x3b, 0xbd, 0x19, 0x97, 0x80, 0x2b, 0x5f, 0xc5, 0xd4, 0xf2, 0xb8, 0x7b, 0x6c, 0xdd, 0xb9, 0x75, 0x29, 0xca, 0xc1, 0xba, 0x29, 0xdd, 0x29, 0xcf, 0xff, 0x73, 0x15, 0xb7, 0x87, 0x11, 0x6d, 0x9d, 0x3d, 0xab, 0xdd, 0xd1, 0xb4, 0x41, 0x49, 0x95, 0xc2, 0x26, 0x99, 0x06, 0xa7, 0xbc, 0x19, 0x59, 0xa0, 0x6d, 0xe5, 0xbc, 0xd4, 0xd5, 0x63, 0x04, 0x2e, 0x17, 0x41, 0xaf, 0x00, 0x9c, 0xba, 0x9f, 0x51, 0xb3, 0xd4, 0x35, 0xef, 0xe7, 0x95, 0x73, 0xac, 0xa8, 0xef, 0xd3, 0xcc, 0x1c, 0x8a, 0x22, 0x7e, 0xcd, 0x94, 0xeb, 0x40, 0x79, 0x67, 0x54, 0x59, 0xb6, 0xf4, 0xf1, 0x68, 0xb6, 0x11, 0x1c, 0x07, 0xc6, 0x33, 0xe6, 0x4e, 0x60, 0xd4, 0x3a, 0x5f, 0x3b, 0x0d, 0x0b, 0x2f, 0x43, 0x71, 0xf6, 0x8c, 0x7c, 0xde, 0xb6, 0xbd, 0x8f, 0xbb, 0xf3, 0xbe, 0xd2, 0xef, 0xfa, 0x25, 0x42, 0xb0, 0xae, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2019 = { .name = "ecdsa_brainpoolp512r1_sha512_2019", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2019_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2019_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2019_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2020 for ECDSA, tcId is 70 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2020_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2020_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2020_sig[] = { 0x82, 0x93, 0xa5, 0x45, 0x97, 0x44, 0x30, 0xb3, 0xd7, 0xf7, 0xe3, 0x14, 0xab, 0x0e, 0xf4, 0x87, 0x31, 0x71, 0x5a, 0x5f, 0x79, 0xc2, 0xf3, 0x4b, 0x94, 0xf1, 0x20, 0xfc, 0x01, 0x70, 0x39, 0x71, 0x30, 0x29, 0x88, 0x03, 0x77, 0x8b, 0x53, 0x2f, 0xf1, 0x00, 0x20, 0xdb, 0x06, 0x0d, 0x19, 0xd9, 0x31, 0xd7, 0x48, 0x56, 0xfb, 0xf3, 0x30, 0xa7, 0x5b, 0x28, 0x41, 0x6d, 0x45, 0xaf, 0x54, 0xb6, 0x2b, 0x8d, 0xb4, 0x83, 0x08, 0xc0, 0xb1, 0xf6, 0x21, 0xe2, 0x2c, 0x7d, 0xc1, 0xe7, 0x62, 0xb0, 0x85, 0x08, 0xbe, 0x1a, 0x8e, 0xb4, 0x35, 0x5f, 0x6f, 0x9c, 0xcb, 0x84, 0x20, 0x85, 0xa1, 0xf6, 0x64, 0xd7, 0xb6, 0x8b, 0x1a, 0x24, 0xbd, 0x88, 0xf1, 0x7b, 0x16, 0xd1, 0x41, 0xb0, 0xc1, 0xc3, 0xa5, 0xd7, 0xf1, 0xa7, 0xef, 0x4d, 0x53, 0x3b, 0x90, 0x0d, 0x18, 0x53, 0xbc, 0x5a, 0x6f, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2020 = { .name = "ecdsa_brainpoolp512r1_sha512_2020", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2020_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2020_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2020_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2021 for ECDSA, tcId is 71 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2021_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2021_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2021_sig[] = { 0x52, 0x59, 0x40, 0xc2, 0x17, 0x98, 0x6b, 0x7e, 0xf0, 0xe1, 0x8c, 0x81, 0xfe, 0x10, 0x06, 0x3d, 0x65, 0xdb, 0xe1, 0x80, 0x9d, 0x72, 0x6c, 0x8a, 0x1a, 0xa0, 0xb6, 0x17, 0xf3, 0x34, 0x89, 0x1e, 0x94, 0xc5, 0xdf, 0x14, 0xf7, 0xb9, 0x44, 0xa1, 0x63, 0x99, 0x50, 0xa4, 0x3e, 0x98, 0xeb, 0x6f, 0x1c, 0x34, 0x91, 0x21, 0xd1, 0x07, 0xf9, 0x1c, 0xa7, 0x14, 0x2b, 0x7f, 0xf6, 0x2e, 0xc7, 0x76, 0x6b, 0x35, 0x67, 0xe4, 0x96, 0x5f, 0x2d, 0x76, 0x6f, 0xd0, 0x72, 0x80, 0xf3, 0x1f, 0x8c, 0x77, 0x92, 0x12, 0x65, 0xf0, 0x0e, 0x71, 0x9c, 0x7c, 0x00, 0x55, 0xe5, 0x1c, 0x85, 0xe1, 0xf3, 0xd4, 0x6a, 0xc9, 0x39, 0x67, 0x81, 0x61, 0x30, 0xa6, 0x53, 0x2c, 0x90, 0x25, 0x43, 0xa5, 0x30, 0xe2, 0x7b, 0x41, 0x97, 0xcf, 0xd1, 0x47, 0x8c, 0x90, 0xce, 0x1f, 0xc7, 0x41, 0x24, 0x63, 0x6b, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2021 = { .name = "ecdsa_brainpoolp512r1_sha512_2021", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2021_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2021_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2021_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2022 for ECDSA, tcId is 72 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2022_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2022_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2022_sig[] = { 0x20, 0x5c, 0xae, 0xf7, 0x8b, 0x7f, 0x03, 0x00, 0x26, 0x61, 0x08, 0xdd, 0xf4, 0xe2, 0x8b, 0x6e, 0xc1, 0xa2, 0x19, 0x8b, 0x85, 0x7f, 0x92, 0xb2, 0xdf, 0x58, 0xa6, 0xd9, 0x68, 0xd3, 0xdb, 0x3e, 0xf6, 0x46, 0x9f, 0x7a, 0xfc, 0x20, 0xc6, 0x32, 0x21, 0x9a, 0xc4, 0x31, 0x39, 0xea, 0x08, 0x47, 0x6e, 0x16, 0x58, 0xad, 0x14, 0x5c, 0xe8, 0xe3, 0x97, 0x3c, 0x67, 0x4b, 0xa8, 0x17, 0x3e, 0xfc, 0x4a, 0x7a, 0x53, 0x20, 0xe5, 0xe2, 0x49, 0xc3, 0xff, 0x54, 0xcf, 0x90, 0x3b, 0xac, 0xe8, 0x6f, 0x39, 0xb6, 0x20, 0xac, 0xc1, 0x90, 0x07, 0x41, 0x3c, 0xd1, 0x3a, 0x2d, 0xf0, 0xa1, 0xf5, 0x98, 0x4e, 0x7a, 0x4d, 0x18, 0xcd, 0x8d, 0x12, 0x97, 0x56, 0x02, 0x95, 0xd4, 0x18, 0x3a, 0xf1, 0x85, 0x7b, 0xd8, 0xe6, 0xe3, 0x38, 0xaa, 0x37, 0x99, 0xca, 0x15, 0x50, 0x63, 0x5e, 0x4a, 0xe0, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2022 = { .name = "ecdsa_brainpoolp512r1_sha512_2022", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2022_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2022_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2022_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2023 for ECDSA, tcId is 73 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2023_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2023_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2023_sig[] = { 0x89, 0xf6, 0xe2, 0xf3, 0x42, 0xb4, 0xbc, 0x2f, 0x00, 0x4f, 0xdc, 0x1d, 0x0e, 0x24, 0xa7, 0xd1, 0xd4, 0xcb, 0x6b, 0x00, 0x32, 0xb8, 0xfa, 0x2f, 0x50, 0xe3, 0xf9, 0x0f, 0x38, 0x80, 0x91, 0x8f, 0x31, 0xaa, 0xfd, 0x50, 0x22, 0xff, 0x74, 0xbb, 0xe1, 0xcc, 0x64, 0xfe, 0xba, 0xbb, 0x3b, 0xf3, 0x3a, 0x8e, 0x71, 0x4f, 0x59, 0x7d, 0xdb, 0x0b, 0xe8, 0x06, 0x7d, 0x8a, 0x09, 0x64, 0xdf, 0xe1, 0x3a, 0xd6, 0x7d, 0xd5, 0x53, 0x64, 0xc2, 0x9d, 0x4a, 0x5b, 0x44, 0x6c, 0x64, 0x6f, 0x30, 0xbc, 0x5e, 0x64, 0x8a, 0x88, 0x9a, 0xc7, 0xb1, 0xbe, 0xe4, 0x9b, 0x71, 0x91, 0x8c, 0x32, 0x55, 0x4d, 0x0d, 0x95, 0xd5, 0xa5, 0x7e, 0xf5, 0xe7, 0xf4, 0xb2, 0x67, 0x04, 0x2f, 0xa3, 0x02, 0x5f, 0x13, 0x23, 0xbd, 0x7d, 0xbd, 0x1d, 0x60, 0xc4, 0x4e, 0x32, 0x5d, 0x4f, 0x78, 0xc6, 0x5a, 0x4a, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2023 = { .name = "ecdsa_brainpoolp512r1_sha512_2023", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2023_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2023_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2023_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2024 for ECDSA, tcId is 74 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2024_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2024_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2024_sig[] = { 0x2f, 0x30, 0x52, 0x55, 0x0c, 0x59, 0x5e, 0xd8, 0x92, 0x0a, 0x79, 0x94, 0xb4, 0xad, 0xb7, 0x8b, 0x8f, 0x75, 0x02, 0xfc, 0x06, 0x6a, 0xc4, 0x7a, 0xb4, 0xff, 0xbe, 0x01, 0x0d, 0x4a, 0x5e, 0x3e, 0x54, 0x54, 0x52, 0x79, 0xa7, 0x47, 0xd2, 0x9c, 0x61, 0xc7, 0xd2, 0x85, 0x6b, 0x8e, 0x47, 0xd0, 0x04, 0x0e, 0x07, 0x13, 0xbd, 0xe5, 0x0e, 0x42, 0xe0, 0x38, 0xdf, 0xd5, 0xaf, 0x61, 0xe8, 0x91, 0x54, 0xf8, 0xc5, 0x88, 0x93, 0xf1, 0x9f, 0xbc, 0xf0, 0x10, 0xd2, 0x27, 0x01, 0x7b, 0x88, 0xa4, 0x9c, 0xb6, 0xfd, 0x1e, 0xe6, 0xab, 0x88, 0x3d, 0x21, 0xcb, 0x58, 0xfc, 0x08, 0x69, 0xc3, 0x7e, 0xd7, 0x3c, 0x73, 0x12, 0xc6, 0x7f, 0x5a, 0xc1, 0x9b, 0xf5, 0xbf, 0x0a, 0xbe, 0x4b, 0xc8, 0x36, 0xee, 0x35, 0xb2, 0xa2, 0xc8, 0x05, 0xc3, 0x95, 0x3c, 0x48, 0xe7, 0x9a, 0xb8, 0x66, 0x5a, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2024 = { .name = "ecdsa_brainpoolp512r1_sha512_2024", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2024_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2024_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2024_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2025 for ECDSA, tcId is 75 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2025_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2025_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2025_sig[] = { 0x8e, 0x36, 0x69, 0x55, 0xff, 0xb2, 0xa7, 0xfb, 0xc8, 0x36, 0x44, 0x14, 0x92, 0xf7, 0x4c, 0xae, 0x45, 0x52, 0xfb, 0x0d, 0x24, 0x96, 0xcf, 0xe7, 0xd8, 0xc4, 0x4b, 0x94, 0x20, 0x29, 0x09, 0x47, 0xe2, 0x9b, 0xf8, 0xa8, 0x82, 0x65, 0xe2, 0xc6, 0xcf, 0xc3, 0x7d, 0x29, 0xd2, 0xbb, 0xbd, 0x3d, 0x10, 0x51, 0x3e, 0x08, 0x95, 0xe7, 0x35, 0x51, 0xe2, 0xd7, 0xfa, 0x80, 0xd0, 0x69, 0x71, 0x06, 0x63, 0x11, 0x52, 0x81, 0x52, 0xbc, 0xf6, 0x12, 0x17, 0x33, 0x86, 0x7b, 0x61, 0xfc, 0x52, 0x3e, 0x7f, 0x01, 0xbd, 0x15, 0x00, 0x99, 0x84, 0xea, 0x30, 0xb1, 0x7e, 0xc1, 0x5b, 0x82, 0x40, 0xc1, 0x3f, 0x1a, 0xd1, 0x37, 0xdf, 0x37, 0xde, 0x4a, 0x32, 0xf6, 0xe3, 0xb9, 0x3b, 0xc1, 0x90, 0x95, 0x9d, 0xe1, 0x7a, 0x1b, 0xa3, 0xfe, 0x71, 0xb0, 0x3e, 0x97, 0x54, 0x1c, 0x90, 0xa8, 0x49, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2025 = { .name = "ecdsa_brainpoolp512r1_sha512_2025", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2025_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2025_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2025_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2026 for ECDSA, tcId is 76 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2026_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2026_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2026_sig[] = { 0x38, 0xa4, 0x9f, 0x5f, 0x88, 0xf9, 0x9e, 0x64, 0x07, 0x4f, 0x02, 0x81, 0xec, 0xfa, 0xb9, 0xb8, 0xbf, 0x02, 0x09, 0x2d, 0xbc, 0x11, 0xb8, 0x70, 0x41, 0xbf, 0xb5, 0x61, 0xb4, 0xb3, 0xcf, 0x29, 0x94, 0x5a, 0xb5, 0xd9, 0xdc, 0x45, 0xf1, 0xed, 0xf4, 0x16, 0x06, 0xef, 0x6d, 0x22, 0x04, 0xba, 0xdb, 0x67, 0x61, 0x15, 0x84, 0xb8, 0x92, 0x99, 0x3d, 0xe2, 0x7e, 0x8f, 0x64, 0x02, 0xcd, 0x9a, 0x97, 0xe2, 0xda, 0x75, 0x8a, 0x8e, 0x37, 0x7a, 0x7d, 0x68, 0x2f, 0x50, 0xb0, 0xe3, 0x0f, 0x69, 0x5a, 0x6f, 0x6c, 0x53, 0xe6, 0x71, 0x42, 0x43, 0xaa, 0x9d, 0x53, 0x3b, 0x4a, 0x9b, 0x98, 0x77, 0xd5, 0xd5, 0x0a, 0xf3, 0xe7, 0xa4, 0xf1, 0xfe, 0x60, 0x77, 0xc7, 0xea, 0x70, 0x4b, 0x91, 0x8c, 0x59, 0x95, 0x00, 0xaf, 0xb8, 0x4d, 0x0b, 0xa0, 0x16, 0x82, 0x8a, 0xa2, 0xe6, 0xfd, 0x13, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2026 = { .name = "ecdsa_brainpoolp512r1_sha512_2026", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2026_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2026_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2026_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2027 for ECDSA, tcId is 77 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2027_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2027_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2027_sig[] = { 0x6d, 0xe2, 0x9d, 0x0b, 0x50, 0x95, 0x0a, 0x64, 0x09, 0xd2, 0x9d, 0x25, 0x83, 0xe6, 0xc2, 0xd7, 0x73, 0x89, 0x74, 0x0e, 0xd0, 0xbe, 0x4e, 0xbb, 0xd4, 0x57, 0x1e, 0x82, 0xb5, 0x30, 0x3c, 0xa2, 0x70, 0x87, 0xce, 0x13, 0x27, 0x83, 0x2e, 0x99, 0x91, 0xcb, 0xf7, 0x33, 0x08, 0xa1, 0xba, 0xed, 0xf9, 0x7d, 0x1f, 0x3a, 0xf9, 0xed, 0xf3, 0x5e, 0x27, 0xc1, 0x5a, 0x0c, 0xc0, 0x03, 0xd6, 0xaa, 0x9a, 0x19, 0xf3, 0x3f, 0xf3, 0xa8, 0x8e, 0xd3, 0x03, 0xff, 0xf9, 0x05, 0x35, 0xaa, 0x16, 0x05, 0xbb, 0xdc, 0x00, 0x6b, 0x80, 0x3a, 0x80, 0x4e, 0xb1, 0xdf, 0x09, 0x2b, 0x5a, 0xeb, 0x9d, 0xb1, 0xbe, 0x0c, 0xb9, 0xb6, 0x76, 0x69, 0x45, 0x03, 0xe3, 0x6d, 0x2c, 0xd3, 0x86, 0x8d, 0xb0, 0xc3, 0x48, 0x96, 0xc9, 0x4c, 0xdd, 0xab, 0xd5, 0x4e, 0xc9, 0x5f, 0xfe, 0xb6, 0x98, 0x8a, 0x7f, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2027 = { .name = "ecdsa_brainpoolp512r1_sha512_2027", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2027_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2027_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2027_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2028 for ECDSA, tcId is 78 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2028_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2028_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2028_sig[] = { 0x17, 0x0f, 0x01, 0xe9, 0x2b, 0x69, 0xcb, 0xf0, 0xd3, 0xd9, 0xe4, 0xa5, 0x74, 0x01, 0x63, 0xd7, 0xeb, 0xaf, 0xa7, 0xbb, 0x8d, 0x38, 0x35, 0x03, 0x9f, 0x14, 0x0d, 0x07, 0x5e, 0x95, 0x0d, 0xd5, 0x7d, 0xfd, 0xf1, 0xb7, 0xb8, 0xd1, 0x67, 0x85, 0x48, 0x44, 0x64, 0x10, 0x46, 0x8c, 0xf2, 0x89, 0x8e, 0x13, 0x0c, 0x74, 0x5e, 0x07, 0xdd, 0xff, 0x92, 0x1c, 0x55, 0x42, 0x19, 0x1c, 0xae, 0xfa, 0xa7, 0xb5, 0xd9, 0x28, 0xbe, 0x42, 0x79, 0x9a, 0x55, 0xb0, 0x5e, 0x15, 0x75, 0x8a, 0x1a, 0xff, 0x02, 0x77, 0x5a, 0xf9, 0xed, 0xc2, 0x14, 0x21, 0x4c, 0xa8, 0x9f, 0x73, 0xad, 0x12, 0x01, 0x7d, 0x67, 0x2e, 0x59, 0xcd, 0x6a, 0xa5, 0x4f, 0x18, 0xf2, 0x70, 0xe0, 0x1a, 0xb4, 0xdb, 0xbb, 0x2f, 0x74, 0x8c, 0x87, 0xcb, 0xc2, 0xac, 0x90, 0x81, 0xdf, 0x2e, 0x76, 0x52, 0x4d, 0xa1, 0x77, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2028 = { .name = "ecdsa_brainpoolp512r1_sha512_2028", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2028_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2028_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2028_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2029 for ECDSA, tcId is 79 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2029_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2029_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2029_sig[] = { 0x8b, 0xc0, 0x89, 0xbc, 0xcd, 0xd8, 0x84, 0x3c, 0x06, 0xd5, 0xa7, 0x9e, 0x38, 0x6c, 0x51, 0x3a, 0xf5, 0x19, 0x31, 0x66, 0x0d, 0xb8, 0xb8, 0x88, 0xbc, 0xe5, 0xb5, 0xbd, 0xdb, 0xbe, 0x4c, 0x73, 0x95, 0x6a, 0x9a, 0xcb, 0xc3, 0x2e, 0x1c, 0xea, 0xa5, 0x05, 0x3f, 0xc3, 0x93, 0x08, 0xdd, 0x64, 0x51, 0xe6, 0xe4, 0x03, 0xca, 0x57, 0x43, 0x10, 0x66, 0x70, 0x93, 0xc6, 0xd7, 0x89, 0xb9, 0x80, 0x41, 0x7c, 0x96, 0x6d, 0xc3, 0x6d, 0xba, 0x5c, 0x13, 0xd9, 0x67, 0x01, 0x94, 0x6c, 0x86, 0xa0, 0x68, 0x38, 0x05, 0x69, 0x2f, 0x24, 0xc0, 0x12, 0xb1, 0xa7, 0xd5, 0x71, 0x40, 0x5e, 0xfd, 0x85, 0x0a, 0x99, 0x70, 0x65, 0xb1, 0x9d, 0x35, 0x62, 0x1b, 0xb4, 0xb3, 0x9c, 0x76, 0x49, 0x33, 0x84, 0x9f, 0xf7, 0xd8, 0xb8, 0xf7, 0xdf, 0x9f, 0xc5, 0x04, 0x8b, 0x59, 0x8e, 0xc1, 0xfa, 0xee, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2029 = { .name = "ecdsa_brainpoolp512r1_sha512_2029", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2029_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2029_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2029_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2030 for ECDSA, tcId is 80 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2030_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2030_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2030_sig[] = { 0x8f, 0xab, 0xc9, 0x39, 0xe7, 0xa6, 0xc1, 0x3a, 0xc6, 0x9c, 0xdd, 0x47, 0xf9, 0x96, 0x24, 0x8b, 0xfe, 0xbe, 0x3f, 0x8e, 0x80, 0xde, 0xaf, 0x9c, 0x35, 0xe5, 0xa5, 0xcd, 0xca, 0x08, 0x6f, 0x9f, 0x81, 0x66, 0x1a, 0x1a, 0x41, 0xf6, 0x9e, 0x35, 0x95, 0xb0, 0x55, 0xa5, 0x14, 0xd5, 0x7e, 0xfb, 0x2e, 0xaf, 0x5c, 0x15, 0x25, 0xdc, 0xcf, 0x21, 0x73, 0x6d, 0x2b, 0xbe, 0x89, 0xa5, 0x66, 0x8c, 0xa8, 0xf9, 0xb1, 0x71, 0xb3, 0xd3, 0x38, 0x98, 0xcf, 0x7e, 0xac, 0xe3, 0x5d, 0xad, 0x6c, 0x3f, 0xdb, 0x99, 0x8f, 0xc4, 0x09, 0xfd, 0xb7, 0x08, 0x33, 0x8f, 0x20, 0xc9, 0xe4, 0xb8, 0x29, 0x7b, 0x37, 0x54, 0x85, 0xa5, 0xe8, 0x7e, 0xae, 0x6f, 0xe6, 0x8b, 0x11, 0x39, 0xb1, 0xfb, 0x4a, 0x3b, 0xfa, 0x25, 0x0f, 0x47, 0x04, 0x5f, 0x12, 0xa5, 0xfa, 0xe9, 0x45, 0xa2, 0xab, 0xe7, 0x0c, 0x50, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2030 = { .name = "ecdsa_brainpoolp512r1_sha512_2030", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2030_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2030_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2030_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2031 for ECDSA, tcId is 81 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2031_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2031_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2031_sig[] = { 0x26, 0xf4, 0x05, 0xc9, 0xcf, 0x5a, 0xfb, 0x29, 0xe3, 0xf6, 0x0d, 0xe6, 0x72, 0xe2, 0x50, 0x16, 0xd3, 0x96, 0x66, 0xf6, 0xb3, 0x4a, 0xf5, 0x4b, 0x74, 0x56, 0x2d, 0x4c, 0xa9, 0xe0, 0x3d, 0xd8, 0x7e, 0x2b, 0xf0, 0x20, 0x18, 0x9e, 0x5d, 0x2f, 0xae, 0xa5, 0xbf, 0xba, 0xe2, 0x1a, 0xde, 0xce, 0x9f, 0x21, 0x0b, 0xcb, 0x02, 0xa7, 0x55, 0x8d, 0xad, 0x1b, 0x73, 0xd7, 0x8b, 0x05, 0x32, 0xf8, 0x2b, 0x4b, 0x0c, 0x35, 0x05, 0x7b, 0x95, 0x24, 0xe8, 0x66, 0x62, 0x5e, 0x7d, 0xf8, 0x20, 0xe1, 0x5c, 0x86, 0xc2, 0xef, 0xdc, 0x1c, 0xd6, 0xc4, 0xc3, 0xcd, 0x4e, 0x6e, 0xff, 0x5d, 0x57, 0x58, 0xbd, 0x7f, 0x95, 0xb8, 0xf7, 0x7e, 0x10, 0x16, 0x3f, 0xf6, 0x5b, 0x38, 0x0e, 0xff, 0x97, 0x0c, 0xaa, 0xa7, 0xed, 0x3b, 0xd0, 0xa1, 0x21, 0xd3, 0xbb, 0xff, 0x3b, 0x6e, 0x7a, 0x26, 0x1b, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2031 = { .name = "ecdsa_brainpoolp512r1_sha512_2031", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2031_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2031_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2031_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2032 for ECDSA, tcId is 82 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2032_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2032_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2032_sig[] = { 0x36, 0xc5, 0xc4, 0x72, 0x0d, 0x10, 0xa4, 0x55, 0xf4, 0x95, 0x2a, 0x95, 0x87, 0x2c, 0xc6, 0x9e, 0x5c, 0x48, 0xe9, 0x68, 0x9a, 0x6e, 0xa6, 0xe3, 0xe2, 0x82, 0xc9, 0xcb, 0xa5, 0x8b, 0x01, 0xfa, 0x3c, 0xf6, 0x4c, 0x9c, 0x99, 0xa6, 0x00, 0x3d, 0x42, 0x48, 0x95, 0xb9, 0x96, 0xe2, 0x60, 0x72, 0xab, 0x6e, 0x76, 0xb2, 0x9d, 0x1c, 0xf1, 0xda, 0xbc, 0x2b, 0x27, 0x68, 0x02, 0x35, 0x8a, 0xd6, 0x81, 0xa9, 0xe6, 0xb7, 0x9f, 0x80, 0x55, 0xe2, 0xbd, 0xe4, 0x36, 0x5e, 0xac, 0x15, 0x3d, 0xf4, 0x00, 0x3d, 0x48, 0x7b, 0x58, 0x9a, 0xd3, 0x30, 0x6d, 0x4a, 0x49, 0x38, 0x7d, 0x24, 0x4a, 0xbc, 0xda, 0xa0, 0x9c, 0x1b, 0x63, 0xf0, 0x87, 0x7b, 0x15, 0x46, 0x8f, 0xe3, 0xe1, 0x4d, 0xcf, 0x4c, 0xb6, 0x34, 0x00, 0xa9, 0x9f, 0xae, 0x7d, 0xce, 0x5f, 0xe9, 0x46, 0x54, 0x8e, 0x64, 0xab, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2032 = { .name = "ecdsa_brainpoolp512r1_sha512_2032", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2032_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2032_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2032_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2033 for ECDSA, tcId is 83 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2033_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2033_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2033_sig[] = { 0x6e, 0x68, 0x46, 0x11, 0x32, 0x7c, 0xfc, 0xd9, 0xd4, 0x0e, 0x52, 0x52, 0xab, 0xd3, 0xd4, 0x8f, 0xb7, 0x35, 0x88, 0x59, 0x70, 0xe9, 0xb3, 0xba, 0x3f, 0x55, 0xa1, 0x0b, 0x38, 0x78, 0x98, 0x5c, 0x54, 0x8f, 0x0c, 0x52, 0x44, 0x61, 0x96, 0x76, 0xa0, 0xe5, 0xc4, 0x4b, 0x4c, 0x9b, 0x1c, 0xcc, 0x1a, 0x20, 0xac, 0xce, 0x42, 0xe5, 0x0d, 0x4d, 0x1a, 0xee, 0xcb, 0x4a, 0xa6, 0xd8, 0x7a, 0xe5, 0x77, 0x49, 0xfd, 0x22, 0x82, 0x93, 0xae, 0x52, 0x7e, 0x3d, 0x30, 0xde, 0x8f, 0x6f, 0xae, 0x99, 0x15, 0x1e, 0x38, 0x32, 0x9a, 0x10, 0x94, 0xc9, 0x2b, 0x34, 0x72, 0x09, 0xa4, 0xf7, 0xb6, 0x94, 0x74, 0xac, 0x90, 0xf2, 0x1d, 0x56, 0xc6, 0x25, 0xf1, 0xc7, 0x6a, 0xb9, 0x1b, 0x4c, 0x3d, 0x12, 0xa2, 0xbf, 0x4b, 0xa2, 0x82, 0x6c, 0xf0, 0x0a, 0xdf, 0xba, 0x75, 0x36, 0x8e, 0xf5, 0x0c, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2033 = { .name = "ecdsa_brainpoolp512r1_sha512_2033", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2033_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2033_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2033_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2034 for ECDSA, tcId is 84 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2034_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2034_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2034_sig[] = { 0x88, 0x7f, 0xe5, 0x33, 0x94, 0x54, 0x5f, 0x10, 0x7a, 0x27, 0x86, 0x7d, 0xf0, 0x2f, 0xbc, 0x1f, 0x59, 0x86, 0x58, 0x5a, 0x42, 0xb5, 0x21, 0x95, 0x24, 0x3a, 0x0f, 0xb7, 0xd1, 0xe7, 0x00, 0xbc, 0xab, 0xed, 0x30, 0x1c, 0xaf, 0xf3, 0xad, 0x8c, 0x2a, 0xf2, 0x34, 0x97, 0xb2, 0xac, 0x02, 0x7f, 0xc1, 0x86, 0xb8, 0xaa, 0xf4, 0xe6, 0x51, 0x2b, 0xf5, 0xbe, 0xa5, 0xa3, 0x57, 0xad, 0x83, 0xfa, 0xa9, 0x23, 0xa3, 0xb4, 0xaf, 0xe3, 0x0e, 0xae, 0x49, 0xb0, 0x18, 0x76, 0x6d, 0xa2, 0x91, 0x3c, 0x66, 0x47, 0xd7, 0x38, 0x41, 0x78, 0xf6, 0x56, 0xd4, 0x0d, 0x01, 0x0f, 0xe1, 0x14, 0x7d, 0x78, 0x6e, 0xe5, 0x09, 0x32, 0x28, 0x6c, 0x81, 0x3e, 0xa4, 0x0e, 0x5c, 0x11, 0x55, 0x5f, 0x6b, 0x8d, 0x8a, 0x6f, 0x82, 0x75, 0x14, 0x5c, 0xb9, 0x4c, 0xc0, 0x41, 0xf1, 0xcd, 0xfc, 0xdf, 0xdd, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2034 = { .name = "ecdsa_brainpoolp512r1_sha512_2034", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2034_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2034_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2034_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2035 for ECDSA, tcId is 85 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2035_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2035_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2035_sig[] = { 0x68, 0xd9, 0xfb, 0x18, 0x1a, 0x84, 0x50, 0xae, 0x37, 0x7d, 0xc7, 0x50, 0xf3, 0xbf, 0xbf, 0x82, 0xcb, 0xc3, 0x93, 0x47, 0xcf, 0x5d, 0x25, 0x26, 0xbc, 0xb6, 0xc3, 0xf6, 0x34, 0x3a, 0x74, 0x51, 0x06, 0x5c, 0xb4, 0xa7, 0xb2, 0xc0, 0xed, 0x3d, 0x68, 0xce, 0x32, 0x0d, 0x9a, 0x9c, 0x35, 0xc9, 0x66, 0xc0, 0x5b, 0xbf, 0x45, 0xb1, 0xac, 0xd2, 0xcf, 0xea, 0xb3, 0x3b, 0x7b, 0xbf, 0x17, 0x6d, 0x85, 0x38, 0x46, 0x9e, 0x63, 0x19, 0x60, 0xf5, 0xe1, 0x3f, 0x6a, 0x3c, 0xdb, 0xd5, 0xcf, 0x6e, 0x89, 0x3d, 0x0b, 0x15, 0x4f, 0x43, 0x03, 0x2b, 0x1b, 0xdc, 0xdb, 0xe2, 0xc5, 0xff, 0x53, 0x38, 0xcf, 0xf5, 0x22, 0x3a, 0x1f, 0x0e, 0xae, 0x7c, 0xa3, 0xed, 0x39, 0x23, 0x22, 0x19, 0xc8, 0x48, 0xfa, 0x75, 0xb0, 0xaa, 0x18, 0xe3, 0x18, 0xc0, 0x6a, 0xbe, 0x47, 0x47, 0x30, 0xe2, 0x6e, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2035 = { .name = "ecdsa_brainpoolp512r1_sha512_2035", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2035_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2035_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2035_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2036 for ECDSA, tcId is 86 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2036_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2036_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2036_sig[] = { 0x0d, 0x0d, 0x1e, 0xb2, 0x12, 0x5e, 0xaf, 0xaa, 0xa4, 0x7d, 0x2e, 0x30, 0xe0, 0x65, 0x0b, 0xc7, 0xe5, 0xc9, 0x9f, 0x4f, 0xb5, 0xbe, 0x14, 0x73, 0x70, 0x8d, 0x19, 0xa9, 0x91, 0xf4, 0xcf, 0xd1, 0xfe, 0x31, 0x9c, 0xa7, 0x3e, 0xd1, 0xa8, 0xb5, 0x9d, 0x4c, 0x00, 0xb2, 0x2e, 0xe0, 0xcd, 0xa9, 0xbb, 0x2f, 0x00, 0xe7, 0x8f, 0x13, 0xbc, 0xbf, 0x37, 0x2e, 0xfc, 0x0a, 0x00, 0x3d, 0x2d, 0x1e, 0x87, 0x8e, 0x71, 0xc2, 0xf5, 0xd5, 0x3a, 0xc0, 0x7b, 0x2e, 0xa1, 0x34, 0x91, 0x10, 0xff, 0xac, 0x6d, 0xfd, 0xfa, 0x21, 0x52, 0xd3, 0xb9, 0xfb, 0x66, 0x2f, 0x6f, 0x9e, 0xf4, 0xe7, 0x60, 0xdf, 0xab, 0xdf, 0x81, 0xed, 0x69, 0x0e, 0x85, 0xd8, 0x0d, 0xb3, 0x21, 0x34, 0x81, 0xda, 0xbe, 0xf6, 0xda, 0xe1, 0x4b, 0x20, 0xc2, 0x5f, 0x6f, 0x56, 0xa3, 0x60, 0xec, 0x97, 0x62, 0x11, 0x4b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2036 = { .name = "ecdsa_brainpoolp512r1_sha512_2036", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2036_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2036_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2036_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2037 for ECDSA, tcId is 87 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2037_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2037_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2037_sig[] = { 0x1c, 0x75, 0xcf, 0xcc, 0xa1, 0x16, 0x61, 0xbc, 0x91, 0x28, 0x9b, 0x25, 0x99, 0x0a, 0x2c, 0x83, 0x68, 0x69, 0xa2, 0xfb, 0x5b, 0xb6, 0x1a, 0x55, 0x30, 0xcf, 0x24, 0x89, 0x18, 0xdb, 0x45, 0x88, 0x32, 0x73, 0xd8, 0xd9, 0xd2, 0x4a, 0x49, 0x2d, 0xcc, 0xc4, 0x29, 0x48, 0x0e, 0xb9, 0xd8, 0x43, 0x54, 0x4d, 0xfb, 0x8b, 0xf9, 0x6e, 0xa7, 0x5f, 0x06, 0xe4, 0xca, 0xee, 0x91, 0xfc, 0x3c, 0x5e, 0x45, 0x7a, 0x98, 0xf6, 0x87, 0x0b, 0x4d, 0x13, 0x1f, 0x9f, 0x76, 0x92, 0x29, 0xcb, 0xe9, 0x3e, 0x97, 0x61, 0x43, 0x2c, 0xf4, 0xe2, 0x2a, 0xe0, 0xf4, 0xb3, 0x5c, 0x55, 0x12, 0x37, 0x70, 0x33, 0x67, 0x84, 0x06, 0x0b, 0x74, 0x7c, 0x34, 0xbc, 0xd3, 0xba, 0xd3, 0xf8, 0x97, 0x07, 0x18, 0xfa, 0x88, 0x77, 0x7b, 0x2b, 0x56, 0x5d, 0xa3, 0xf3, 0x24, 0x98, 0x28, 0x6a, 0xd0, 0x01, 0x53, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2037 = { .name = "ecdsa_brainpoolp512r1_sha512_2037", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2037_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2037_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2037_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2038 for ECDSA, tcId is 88 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2038_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2038_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2038_sig[] = { 0x96, 0xbc, 0x97, 0x87, 0xcc, 0x6d, 0x51, 0x2a, 0x2f, 0xda, 0x9b, 0x34, 0x98, 0xb0, 0x4b, 0x53, 0xf9, 0xc0, 0x3f, 0x40, 0x60, 0xab, 0x03, 0x82, 0xbe, 0x7c, 0xb7, 0x07, 0x78, 0x55, 0x19, 0x6e, 0x60, 0xe0, 0xd1, 0x50, 0xea, 0xaa, 0xe6, 0x09, 0x9a, 0xcb, 0x93, 0x41, 0xa1, 0x5d, 0x06, 0xc9, 0x47, 0x8a, 0xfc, 0x44, 0x50, 0x21, 0xa5, 0xef, 0x29, 0x8f, 0x14, 0x98, 0xbf, 0xfe, 0xbd, 0x9c, 0x8d, 0xb2, 0x6e, 0x51, 0xfb, 0xf0, 0xd7, 0xa5, 0xea, 0xbc, 0x67, 0xa7, 0xf7, 0xdd, 0x69, 0x8d, 0x16, 0xa9, 0x76, 0x43, 0x78, 0x4d, 0x49, 0xc7, 0xf2, 0x92, 0x48, 0x11, 0x14, 0xa0, 0x1c, 0x58, 0x1f, 0xdf, 0xc6, 0xf7, 0x79, 0xb1, 0xcb, 0xcc, 0xf5, 0xe8, 0xea, 0x59, 0x5c, 0x98, 0xb7, 0x60, 0xc3, 0xc5, 0xa1, 0x0f, 0xfe, 0x1e, 0x6e, 0x2c, 0xb1, 0x01, 0xe1, 0xa5, 0xc8, 0xa1, 0x4a, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2038 = { .name = "ecdsa_brainpoolp512r1_sha512_2038", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2038_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2038_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2038_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2039 for ECDSA, tcId is 89 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2039_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2039_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2039_sig[] = { 0x06, 0xe2, 0x0f, 0x46, 0x8d, 0x6f, 0xce, 0x4b, 0x55, 0x71, 0xd6, 0xe1, 0x88, 0xf1, 0x0c, 0xea, 0x05, 0x54, 0x1d, 0x82, 0xc9, 0xf8, 0x17, 0x91, 0xd7, 0xe7, 0xb2, 0x71, 0x6d, 0x92, 0xdc, 0x57, 0x49, 0x40, 0x53, 0x71, 0x2b, 0x0b, 0x01, 0xb3, 0x46, 0xe5, 0x79, 0x72, 0x43, 0x32, 0x6d, 0xb9, 0x20, 0x28, 0xe8, 0x0f, 0x1d, 0x8e, 0x03, 0x82, 0xb1, 0xe6, 0x3c, 0x4d, 0x96, 0xda, 0xa9, 0xd9, 0x21, 0x55, 0xeb, 0x23, 0x64, 0x92, 0x6f, 0xc3, 0x47, 0x97, 0x92, 0x31, 0x25, 0x50, 0x3c, 0xda, 0xda, 0x99, 0x83, 0xe6, 0x25, 0x12, 0x73, 0xe5, 0xfe, 0x1e, 0x02, 0x98, 0xe6, 0x1e, 0x26, 0x85, 0x7d, 0xc4, 0x12, 0x19, 0x0c, 0x7e, 0x67, 0x77, 0x60, 0x56, 0x95, 0x00, 0xf8, 0x5a, 0xb2, 0x66, 0x5b, 0x6e, 0x88, 0x90, 0x1b, 0xe8, 0x61, 0xcf, 0xce, 0x3f, 0xa4, 0xe2, 0xbd, 0xa5, 0x54, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2039 = { .name = "ecdsa_brainpoolp512r1_sha512_2039", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2039_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2039_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2039_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2040 for ECDSA, tcId is 90 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2040_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2040_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2040_sig[] = { 0x1e, 0x24, 0x80, 0xc5, 0x6b, 0xe7, 0x2a, 0x52, 0xfe, 0x00, 0x94, 0x5f, 0xd7, 0xc2, 0xfe, 0xef, 0xdd, 0x03, 0xbd, 0x71, 0x3b, 0xc3, 0xe3, 0xd6, 0xe6, 0xd4, 0x34, 0xd5, 0xa2, 0xa7, 0xa2, 0xc8, 0xe1, 0xb4, 0x7c, 0xb1, 0x42, 0x8b, 0x96, 0xf4, 0xd8, 0x58, 0x9d, 0x6e, 0xe5, 0xfb, 0x32, 0xdd, 0x7d, 0x0a, 0x76, 0x77, 0x90, 0xf8, 0x20, 0x9b, 0x5f, 0xd3, 0x41, 0x2c, 0x0d, 0x56, 0x25, 0x79, 0x3c, 0x05, 0x00, 0xf7, 0x53, 0x1d, 0xc5, 0xf0, 0x04, 0x0f, 0x0b, 0xb0, 0xf5, 0x33, 0xbc, 0x5b, 0xf3, 0x44, 0xfd, 0x1f, 0x32, 0x5a, 0x80, 0xc4, 0x20, 0x43, 0x5f, 0x93, 0xd3, 0xca, 0x7e, 0xee, 0xb1, 0x5b, 0x1a, 0x4f, 0x43, 0x91, 0x40, 0x8f, 0x16, 0x69, 0x71, 0xc9, 0xdd, 0xb7, 0x9b, 0xfb, 0x68, 0xf2, 0x3c, 0x69, 0x97, 0xc2, 0xae, 0x40, 0xd6, 0x6c, 0xd0, 0xf4, 0xfa, 0x71, 0x12, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2040 = { .name = "ecdsa_brainpoolp512r1_sha512_2040", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2040_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2040_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2040_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2041 for ECDSA, tcId is 91 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2041_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2041_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2041_sig[] = { 0x77, 0x4d, 0x85, 0x2a, 0x1d, 0xf9, 0xf3, 0xb5, 0x30, 0xdb, 0x4d, 0x03, 0x45, 0xc3, 0xf7, 0xc4, 0x13, 0xc8, 0xdc, 0x4d, 0xf1, 0xc1, 0x8f, 0x42, 0x89, 0xcb, 0xdf, 0x39, 0xde, 0x2d, 0x9e, 0xb8, 0xbd, 0x90, 0xca, 0x78, 0x03, 0xc2, 0xb3, 0xfe, 0x8a, 0x8e, 0xb9, 0xd8, 0x04, 0xdf, 0xcf, 0x0d, 0x0b, 0xc7, 0x92, 0x11, 0xac, 0x19, 0x9d, 0xa1, 0xc0, 0x9a, 0xbd, 0x80, 0xb0, 0xf2, 0x20, 0xf4, 0x70, 0xfd, 0x03, 0xa6, 0xfb, 0x63, 0x58, 0x2b, 0xc6, 0x41, 0x28, 0x75, 0x8c, 0xc8, 0xbf, 0xfc, 0xf5, 0xba, 0x0b, 0xf1, 0x54, 0xed, 0x42, 0x1b, 0x37, 0xe9, 0x59, 0x87, 0xd4, 0x64, 0x7e, 0xd7, 0xa3, 0xed, 0xe5, 0x15, 0x9a, 0xc1, 0x75, 0xf7, 0x37, 0x0a, 0x2e, 0x23, 0xff, 0xf6, 0x45, 0x10, 0x5c, 0x4e, 0x0d, 0x99, 0xdd, 0xd1, 0x48, 0x6a, 0xd6, 0xac, 0x5a, 0x83, 0x29, 0x03, 0xd5, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2041 = { .name = "ecdsa_brainpoolp512r1_sha512_2041", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2041_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2041_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2041_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2042 for ECDSA, tcId is 92 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2042_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2042_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2042_sig[] = { 0x2e, 0x7f, 0x63, 0xda, 0x65, 0x7a, 0x65, 0x10, 0x52, 0x87, 0xc6, 0x44, 0xcb, 0xa0, 0x7b, 0x0f, 0x98, 0x6b, 0x4b, 0x2f, 0x3a, 0x18, 0xc0, 0x80, 0x9d, 0xcf, 0x8d, 0x8a, 0xc2, 0x16, 0x94, 0x50, 0xb2, 0x06, 0x7c, 0xc5, 0xe0, 0xac, 0x3d, 0x65, 0xe1, 0xea, 0xc6, 0x7f, 0x3c, 0xea, 0x3a, 0x62, 0xc7, 0x23, 0xee, 0xe0, 0x62, 0xd3, 0x07, 0x57, 0xdc, 0xaa, 0x9e, 0x92, 0x6e, 0xbf, 0xbd, 0x00, 0x61, 0xb2, 0x62, 0xa4, 0xaa, 0x85, 0x0b, 0xa1, 0x2e, 0x31, 0x76, 0x1d, 0xcb, 0xde, 0x8c, 0xc7, 0xc9, 0xab, 0xd4, 0x88, 0x52, 0xa7, 0x34, 0xb3, 0x8b, 0x26, 0xcb, 0xb1, 0x53, 0xa8, 0x02, 0x89, 0xc4, 0x78, 0x83, 0x89, 0xb1, 0x6b, 0xaf, 0x10, 0x1f, 0x6c, 0x5d, 0xa8, 0xee, 0xc6, 0xd5, 0x84, 0xd0, 0xba, 0x88, 0x3e, 0x53, 0xb6, 0xd7, 0xd2, 0xaf, 0xe3, 0x6d, 0xb8, 0x3e, 0xa9, 0x51, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2042 = { .name = "ecdsa_brainpoolp512r1_sha512_2042", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2042_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2042_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2042_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2043 for ECDSA, tcId is 93 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2043_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2043_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2043_sig[] = { 0x9b, 0x0b, 0xe1, 0xef, 0xf1, 0x1d, 0x16, 0xb6, 0xc4, 0x80, 0xa0, 0xe1, 0x7c, 0x5f, 0x34, 0x71, 0xea, 0xe4, 0xfc, 0xae, 0xff, 0x92, 0x48, 0x72, 0x09, 0xf0, 0xf2, 0x3c, 0x57, 0xa7, 0xdf, 0xab, 0xed, 0xe9, 0x75, 0x66, 0x98, 0xef, 0xc6, 0x25, 0xc7, 0x79, 0x35, 0x66, 0x7a, 0x51, 0x9e, 0x42, 0x06, 0x2e, 0x9d, 0x08, 0x78, 0x42, 0xc8, 0x3e, 0x08, 0xb9, 0x76, 0xd3, 0xb9, 0x6e, 0xa6, 0xdc, 0x9c, 0x9e, 0xf5, 0xe7, 0x76, 0x0a, 0x03, 0x6b, 0xc4, 0x0e, 0xc7, 0x10, 0xba, 0x88, 0xe9, 0xad, 0x6f, 0x8e, 0x06, 0x94, 0x8d, 0xfa, 0x77, 0xa2, 0x6c, 0xb8, 0xfd, 0x6c, 0x3b, 0x87, 0x11, 0x2d, 0xc0, 0xd0, 0xf6, 0xcc, 0xaf, 0xe0, 0x8f, 0xa5, 0xb6, 0x36, 0xf4, 0x29, 0xa0, 0x97, 0xaf, 0x39, 0xd5, 0x69, 0x43, 0x3c, 0x93, 0x3f, 0x90, 0x25, 0x16, 0xe8, 0x58, 0x71, 0xbe, 0xc3, 0x01, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2043 = { .name = "ecdsa_brainpoolp512r1_sha512_2043", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2043_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2043_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2043_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2044 for ECDSA, tcId is 94 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2044_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2044_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2044_sig[] = { 0x73, 0x96, 0xb4, 0x96, 0x96, 0x31, 0x1d, 0x10, 0xda, 0x5c, 0x85, 0xa3, 0x32, 0x4b, 0xc0, 0x7b, 0x85, 0x5a, 0xde, 0xd9, 0xf5, 0x56, 0xfc, 0xef, 0x6b, 0x3a, 0x15, 0x7c, 0xcd, 0xee, 0xce, 0xdf, 0xaf, 0xeb, 0xfe, 0xc2, 0x7e, 0x9b, 0x76, 0x4a, 0xcc, 0x84, 0xf0, 0xab, 0x13, 0x7e, 0xe3, 0x01, 0x6d, 0xba, 0x85, 0xf4, 0x56, 0x4e, 0xb9, 0xb2, 0x20, 0x64, 0x1e, 0x73, 0x67, 0x1f, 0x85, 0x09, 0x34, 0xd8, 0x5e, 0xae, 0x9b, 0xfd, 0x43, 0x89, 0x0f, 0xcd, 0x2b, 0x05, 0x11, 0xae, 0xaa, 0x75, 0x34, 0xa4, 0x70, 0xd4, 0xa6, 0x10, 0xfd, 0x59, 0x2a, 0xcd, 0x0e, 0x01, 0x78, 0x4d, 0xc6, 0xbe, 0x4a, 0xb0, 0xfa, 0xe5, 0xea, 0x6f, 0xae, 0xb6, 0xc1, 0x7a, 0x5c, 0x2a, 0x84, 0xdc, 0x75, 0xb9, 0x1a, 0x05, 0x17, 0x35, 0x94, 0xf6, 0x21, 0x2f, 0x2a, 0xa2, 0x16, 0x0f, 0x22, 0x9b, 0xd0, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2044 = { .name = "ecdsa_brainpoolp512r1_sha512_2044", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2044_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2044_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2044_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2045 for ECDSA, tcId is 95 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2045_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2045_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2045_sig[] = { 0x24, 0xdc, 0x7d, 0x0a, 0xa8, 0x9c, 0xa2, 0x2d, 0xce, 0xc2, 0x02, 0x48, 0xf6, 0x70, 0x6b, 0x62, 0x09, 0x58, 0x32, 0x36, 0xdb, 0xa3, 0xbc, 0x32, 0x6f, 0x29, 0x32, 0x1c, 0x5b, 0xef, 0x77, 0xdd, 0xf4, 0x96, 0x8e, 0x27, 0xab, 0x2d, 0xbf, 0x18, 0x82, 0xde, 0x29, 0x85, 0xe4, 0x90, 0x1c, 0x03, 0xdc, 0xe5, 0x39, 0xd0, 0xdf, 0x17, 0x16, 0x09, 0x7e, 0xa2, 0x07, 0xfa, 0xe6, 0xb6, 0x11, 0x40, 0x61, 0x68, 0xc1, 0x27, 0x7b, 0x7c, 0x88, 0x17, 0x66, 0xb7, 0x67, 0x08, 0x3d, 0xe4, 0xf4, 0xdf, 0x82, 0xaf, 0x8a, 0xc4, 0x07, 0x12, 0x22, 0x95, 0xec, 0xe5, 0x8f, 0xa4, 0x9c, 0xc0, 0x51, 0x30, 0x88, 0x48, 0xdc, 0x38, 0x06, 0x75, 0x80, 0x0a, 0x4a, 0x4d, 0xfd, 0x6b, 0x81, 0x32, 0x07, 0xd8, 0xd0, 0xe4, 0x22, 0xc2, 0x32, 0xf3, 0x0b, 0xdf, 0xf7, 0xdf, 0x7d, 0x89, 0xf4, 0x27, 0xc1, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2045 = { .name = "ecdsa_brainpoolp512r1_sha512_2045", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2045_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2045_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2045_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2046 for ECDSA, tcId is 96 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2046_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2046_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2046_sig[] = { 0x2d, 0x47, 0xca, 0x2c, 0x03, 0xad, 0xbf, 0xf2, 0x84, 0x03, 0x1e, 0x2c, 0x63, 0x15, 0x83, 0x63, 0x97, 0xba, 0x34, 0xb7, 0x60, 0x50, 0x57, 0x52, 0x6b, 0x15, 0x9e, 0x69, 0x75, 0xee, 0x66, 0x0e, 0xc8, 0x09, 0xea, 0x15, 0xf5, 0x52, 0x08, 0x7b, 0x2a, 0xb5, 0xbd, 0x3f, 0x71, 0x8f, 0x8f, 0x82, 0xf9, 0xe9, 0xee, 0x47, 0xf1, 0x0c, 0x7e, 0x96, 0xcb, 0x06, 0xa5, 0xa7, 0xb4, 0xb0, 0x24, 0x7a, 0x3c, 0xb1, 0xf5, 0x68, 0x1e, 0x4b, 0xa1, 0xb0, 0x5b, 0x5c, 0x9a, 0x2c, 0x03, 0xf0, 0xd6, 0xbd, 0x83, 0x9a, 0xd5, 0xbc, 0xcf, 0x4b, 0xe2, 0xea, 0x08, 0x5b, 0x6d, 0xb5, 0x51, 0x60, 0x37, 0xcc, 0x5d, 0x36, 0xfa, 0xa8, 0x3c, 0x67, 0xa1, 0x7c, 0xf7, 0x3f, 0x8f, 0x75, 0xe5, 0x0c, 0xa3, 0x3f, 0xb7, 0x59, 0x1c, 0xf2, 0x4f, 0x95, 0x08, 0xa7, 0xee, 0xd6, 0x13, 0x14, 0xa4, 0x7d, 0x9e, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2046 = { .name = "ecdsa_brainpoolp512r1_sha512_2046", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2046_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2046_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2046_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2047 for ECDSA, tcId is 97 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2047_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2047_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2047_sig[] = { 0x0a, 0xf3, 0x27, 0x3b, 0x41, 0x19, 0x62, 0x49, 0x79, 0xea, 0xb3, 0x05, 0xa0, 0xf8, 0x3e, 0x51, 0x36, 0xef, 0x6a, 0x56, 0x59, 0x7c, 0x53, 0x53, 0xd8, 0xd7, 0x67, 0x23, 0x52, 0x94, 0x03, 0x99, 0x5c, 0x45, 0xf3, 0xa2, 0x4b, 0xb1, 0x3a, 0xe8, 0x5d, 0x38, 0x72, 0xdc, 0x81, 0x1e, 0x00, 0x8e, 0xaa, 0x2c, 0x58, 0x42, 0xf4, 0x9a, 0x7c, 0x2e, 0xc6, 0x8d, 0xc7, 0xcb, 0x4f, 0x33, 0xcc, 0xc3, 0x61, 0xf5, 0xb2, 0x36, 0x33, 0x49, 0x64, 0xeb, 0x3e, 0xe2, 0xc6, 0xc6, 0xbc, 0xeb, 0x9f, 0x2f, 0x8e, 0xcf, 0x06, 0x44, 0xce, 0x9c, 0xa7, 0x23, 0xd5, 0x98, 0xe3, 0x94, 0x72, 0xe3, 0xd3, 0x9a, 0x99, 0x34, 0x81, 0xd2, 0x7c, 0x8d, 0xf5, 0xdf, 0x2b, 0x78, 0x1d, 0x6a, 0x02, 0x2a, 0xc4, 0x89, 0xa9, 0x19, 0x94, 0x75, 0x62, 0x0d, 0x4b, 0xab, 0x39, 0x0a, 0x3f, 0xcb, 0x6b, 0xf4, 0x49, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2047 = { .name = "ecdsa_brainpoolp512r1_sha512_2047", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2047_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2047_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2047_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2048 for ECDSA, tcId is 98 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2048_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2048_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2048_sig[] = { 0x9d, 0x54, 0xcc, 0xdc, 0xdd, 0xe1, 0xb7, 0xb1, 0x1f, 0xa6, 0xa7, 0x0f, 0xd7, 0x5d, 0xa9, 0xa2, 0x38, 0x7a, 0xee, 0xf9, 0x48, 0x82, 0x50, 0x6e, 0xb8, 0x98, 0xd7, 0x25, 0x6d, 0xa4, 0xd0, 0xae, 0x2e, 0xa0, 0xcf, 0x54, 0xf9, 0x66, 0xed, 0x35, 0x0c, 0xe4, 0x74, 0xc7, 0x4f, 0x00, 0xae, 0xff, 0x42, 0xcc, 0x16, 0x06, 0x4b, 0x06, 0x9b, 0x8a, 0x68, 0x82, 0x0b, 0xa5, 0x57, 0xb5, 0x34, 0xd0, 0x99, 0x12, 0xc6, 0x02, 0x99, 0x47, 0x81, 0x60, 0x6f, 0x98, 0x72, 0x13, 0xb4, 0xe1, 0xe0, 0x56, 0xf3, 0xae, 0x17, 0x93, 0x5d, 0xa0, 0x59, 0x34, 0x1b, 0xba, 0x17, 0x48, 0x4a, 0xc6, 0x2e, 0x32, 0xf2, 0xd0, 0x4b, 0x39, 0x73, 0x27, 0x5e, 0x73, 0x88, 0x76, 0xeb, 0xb1, 0x6f, 0xa1, 0x46, 0x5f, 0x8e, 0x6b, 0xd2, 0x60, 0x19, 0xd9, 0x6a, 0xaa, 0x28, 0xcc, 0xfe, 0x94, 0xab, 0x7e, 0xa9, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2048 = { .name = "ecdsa_brainpoolp512r1_sha512_2048", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2048_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2048_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2048_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2049 for ECDSA, tcId is 99 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2049_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2049_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2049_sig[] = { 0x7f, 0x7b, 0x14, 0xc2, 0x50, 0x2a, 0x2b, 0xbf, 0x3f, 0x7d, 0x18, 0x29, 0x01, 0x26, 0x37, 0xa1, 0xe4, 0x63, 0x11, 0xef, 0xb1, 0xb8, 0x7d, 0xb4, 0x13, 0x04, 0x31, 0x82, 0x50, 0xd0, 0xd1, 0xb2, 0x55, 0x2d, 0x24, 0x25, 0x37, 0x8d, 0xad, 0x4b, 0xfd, 0xa6, 0xef, 0x11, 0x97, 0xd7, 0xb9, 0x84, 0x63, 0x84, 0xac, 0xfd, 0xbf, 0xae, 0x03, 0x6a, 0x5f, 0x73, 0x2e, 0x94, 0x97, 0xc8, 0x58, 0x4a, 0x50, 0x69, 0x3e, 0xee, 0x71, 0xae, 0x5d, 0x70, 0x61, 0x05, 0xd8, 0x19, 0x08, 0x9a, 0xc9, 0x48, 0xb3, 0xd7, 0xb4, 0x15, 0x1b, 0x0a, 0xf5, 0x54, 0x36, 0x89, 0x98, 0x54, 0xd9, 0xcc, 0x8b, 0x75, 0x26, 0xae, 0xd8, 0x96, 0xae, 0x1f, 0x3d, 0xdd, 0xfe, 0x30, 0x19, 0x62, 0x04, 0x3f, 0x4f, 0x3b, 0xa1, 0x40, 0x86, 0x4e, 0xf8, 0xd1, 0xbb, 0x6d, 0x45, 0xd5, 0xad, 0xd1, 0x32, 0x5d, 0x84, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2049 = { .name = "ecdsa_brainpoolp512r1_sha512_2049", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2049_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2049_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2049_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2050 for ECDSA, tcId is 100 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2050_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2050_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2050_sig[] = { 0x8c, 0x33, 0xb1, 0x62, 0x3e, 0x10, 0xe2, 0xf5, 0x1e, 0xdc, 0x0b, 0x96, 0x86, 0x2c, 0xd2, 0xea, 0xf5, 0xfa, 0xee, 0x8e, 0xa6, 0xcc, 0xc9, 0x85, 0xcc, 0xdb, 0x94, 0xbf, 0xb1, 0x41, 0xd6, 0x3d, 0xb2, 0x51, 0xfa, 0xf1, 0xe7, 0xd6, 0x9e, 0xd3, 0x90, 0xa2, 0xbe, 0xb7, 0x11, 0x85, 0xdb, 0x40, 0x29, 0xf0, 0x7f, 0x03, 0xaf, 0x4a, 0xc4, 0xaa, 0xea, 0xf4, 0x8a, 0xf0, 0x1e, 0x6f, 0x24, 0x20, 0x55, 0xb0, 0x36, 0x5b, 0x12, 0xf7, 0xd6, 0x40, 0xf7, 0x58, 0xe5, 0xaf, 0x6e, 0x2d, 0x6a, 0x41, 0xfc, 0x5c, 0x56, 0xc8, 0x05, 0x98, 0xf7, 0xbb, 0xa0, 0x99, 0x0b, 0x0d, 0x89, 0x9f, 0x22, 0xcb, 0x63, 0x4c, 0x22, 0xf6, 0x4d, 0x7a, 0x1e, 0x97, 0x08, 0x56, 0xb3, 0xb3, 0x1b, 0xb0, 0x13, 0xd3, 0x9f, 0x76, 0x1d, 0x58, 0x8b, 0xa1, 0x4a, 0x95, 0x83, 0xf8, 0x38, 0x7d, 0x91, 0xd0, 0x58, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2050 = { .name = "ecdsa_brainpoolp512r1_sha512_2050", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2050_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2050_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2050_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2051 for ECDSA, tcId is 101 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2051_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2051_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2051_sig[] = { 0xa3, 0x4a, 0xc9, 0xc0, 0x77, 0x53, 0x8c, 0x21, 0xf9, 0x2a, 0xb4, 0xbf, 0x0d, 0xd4, 0x0d, 0x9f, 0xab, 0xee, 0x1f, 0x40, 0x9e, 0x81, 0xcc, 0xe7, 0x1b, 0xed, 0x23, 0xd0, 0x6b, 0xa7, 0x2e, 0xb1, 0x5b, 0x7b, 0x7a, 0x96, 0xfb, 0xe2, 0x56, 0xbd, 0x0c, 0x41, 0xa0, 0xd5, 0xe3, 0xf0, 0x74, 0x89, 0x96, 0xc1, 0x6d, 0x74, 0x27, 0x05, 0xd9, 0xa0, 0x6c, 0x54, 0x4a, 0x4e, 0x57, 0x3c, 0x35, 0x97, 0x45, 0x00, 0xed, 0x99, 0x5c, 0x26, 0x08, 0xdc, 0x62, 0xec, 0xc9, 0x20, 0xee, 0x56, 0x05, 0x90, 0x64, 0x81, 0x00, 0xe5, 0xb8, 0x9e, 0x7f, 0x10, 0x9a, 0x2c, 0x15, 0xa8, 0x51, 0x70, 0x89, 0x53, 0xe6, 0x99, 0x49, 0x9c, 0x98, 0x7c, 0x1e, 0x95, 0x23, 0xf9, 0xd8, 0x98, 0x5e, 0x60, 0x61, 0xcb, 0x9a, 0x84, 0xe5, 0x8e, 0x2c, 0x26, 0x57, 0x9b, 0xbb, 0x08, 0x4b, 0x9d, 0x5d, 0x71, 0xf3, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2051 = { .name = "ecdsa_brainpoolp512r1_sha512_2051", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2051_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2051_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2051_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2052 for ECDSA, tcId is 102 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2052_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2052_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2052_sig[] = { 0x63, 0x9a, 0x6c, 0xc0, 0xc3, 0xe5, 0x0f, 0x24, 0x57, 0xf8, 0x43, 0xc4, 0x0f, 0x17, 0x14, 0x09, 0x6e, 0x61, 0x63, 0x7c, 0x78, 0xba, 0x9d, 0x84, 0x7a, 0xdf, 0x0f, 0x6b, 0x2e, 0xce, 0x78, 0xad, 0xea, 0x98, 0xdd, 0x15, 0x6a, 0x91, 0x63, 0x8e, 0xea, 0xc7, 0x43, 0x97, 0x1f, 0x5d, 0x46, 0x95, 0x06, 0xfd, 0x19, 0xe1, 0x15, 0x55, 0xfc, 0x55, 0xfe, 0xe3, 0xf8, 0x2a, 0xe7, 0xb0, 0x5b, 0x8f, 0x24, 0x27, 0xb3, 0xfa, 0x23, 0x84, 0x30, 0xe0, 0xcd, 0x79, 0x4f, 0x28, 0xb4, 0xe0, 0xf2, 0xc1, 0xd3, 0xc8, 0x3a, 0xb6, 0xfd, 0x00, 0xd4, 0x7a, 0x4c, 0x63, 0x0f, 0x5f, 0x07, 0x2f, 0x96, 0x15, 0x23, 0xcd, 0x53, 0x16, 0xb0, 0xf8, 0xe7, 0xa1, 0x38, 0x77, 0x27, 0xe3, 0x30, 0xfe, 0xf6, 0x92, 0x89, 0x0a, 0x47, 0x24, 0x95, 0xc6, 0x9c, 0xf2, 0x16, 0x72, 0x7f, 0xba, 0x37, 0x71, 0xad, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2052 = { .name = "ecdsa_brainpoolp512r1_sha512_2052", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2052_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2052_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2052_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2053 for ECDSA, tcId is 103 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2053_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2053_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2053_sig[] = { 0x61, 0x94, 0x92, 0x20, 0xd6, 0x68, 0xcd, 0x59, 0x00, 0x9b, 0x00, 0x69, 0x60, 0x7a, 0xfa, 0xc3, 0xa3, 0xbe, 0x38, 0x66, 0xf5, 0x0b, 0x0c, 0x3b, 0xdb, 0xd9, 0x8e, 0x9e, 0xb3, 0x06, 0x08, 0x2b, 0x23, 0x13, 0x6f, 0xbe, 0x61, 0x73, 0xdc, 0xb6, 0xb8, 0xd3, 0x4e, 0x81, 0xa9, 0xe0, 0x38, 0xe8, 0xa7, 0x80, 0x71, 0x63, 0x5b, 0x7b, 0xc4, 0xc7, 0x87, 0xef, 0xb7, 0xbf, 0x8a, 0x8b, 0xa1, 0x2a, 0x84, 0x26, 0xf6, 0x8e, 0x8c, 0x7f, 0xc3, 0xe8, 0xbe, 0xa8, 0x4d, 0x7b, 0x56, 0xaa, 0x2e, 0x6b, 0xbb, 0x2b, 0x06, 0x3e, 0x32, 0x0e, 0xcd, 0x52, 0x0d, 0x36, 0x5a, 0x06, 0x6d, 0x92, 0x40, 0xf5, 0xda, 0xa5, 0x33, 0xda, 0xea, 0x28, 0xd9, 0x9c, 0xa1, 0xff, 0xae, 0x9c, 0x3b, 0x9b, 0x0e, 0x7c, 0xd2, 0x8d, 0x74, 0x21, 0xba, 0x35, 0xc3, 0x05, 0xc8, 0x91, 0x03, 0x48, 0x67, 0x76, 0x8b, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2053 = { .name = "ecdsa_brainpoolp512r1_sha512_2053", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2053_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2053_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2053_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2054 for ECDSA, tcId is 104 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2054_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2054_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2054_sig[] = { 0x47, 0xff, 0xc9, 0xcd, 0xf4, 0x0e, 0x55, 0x80, 0xa4, 0xa9, 0x38, 0xc3, 0x72, 0x7a, 0xcf, 0x8c, 0x37, 0xad, 0x63, 0x8b, 0x11, 0xc2, 0x35, 0xd0, 0x5e, 0x44, 0xbf, 0xb0, 0xa6, 0x80, 0xa3, 0xc6, 0xef, 0xf5, 0x79, 0x01, 0x54, 0x1b, 0xe0, 0xc6, 0x02, 0x46, 0x74, 0x9f, 0x1f, 0x00, 0x71, 0xa8, 0x59, 0x4e, 0xd6, 0xeb, 0xa4, 0x3e, 0xa1, 0xf9, 0x26, 0x68, 0xd5, 0x4d, 0x93, 0x8c, 0x98, 0xd3, 0x15, 0x21, 0xec, 0xb3, 0xeb, 0x40, 0x8c, 0x98, 0x60, 0xb8, 0x3b, 0xb7, 0x48, 0xaf, 0xe3, 0x06, 0xc3, 0x5b, 0x93, 0xee, 0x6b, 0x9e, 0x1e, 0x58, 0x4c, 0x98, 0xd7, 0x88, 0xd0, 0x4d, 0x01, 0x3d, 0xe6, 0x91, 0xca, 0xfc, 0xd0, 0xf5, 0xd7, 0x1f, 0xe3, 0xdc, 0x6c, 0x8c, 0x77, 0xed, 0x03, 0x48, 0x8d, 0x8b, 0x92, 0xab, 0x2c, 0x2e, 0x00, 0x7e, 0xe3, 0x5a, 0xd0, 0x2c, 0x4d, 0xdd, 0x05, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2054 = { .name = "ecdsa_brainpoolp512r1_sha512_2054", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2054_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2054_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2054_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2055 for ECDSA, tcId is 105 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2055_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2055_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2055_sig[] = { 0x64, 0x63, 0x8c, 0x51, 0xaf, 0x92, 0x69, 0xfb, 0x24, 0xd8, 0xe0, 0x97, 0x41, 0x02, 0xbe, 0x6e, 0x94, 0xbc, 0xea, 0xdf, 0xe9, 0xce, 0xa1, 0xa9, 0xc8, 0x9f, 0xd7, 0x78, 0x01, 0x08, 0x91, 0x84, 0x5d, 0x26, 0xe5, 0xdc, 0x7a, 0x0f, 0xe7, 0xf0, 0xa6, 0xea, 0x9e, 0xa0, 0xc1, 0xdd, 0x7c, 0x90, 0x5e, 0x8c, 0xe4, 0x3b, 0xe6, 0x48, 0x60, 0x9e, 0xaf, 0x84, 0x94, 0xf0, 0x60, 0x50, 0xb5, 0x50, 0x9f, 0xf2, 0xab, 0xd8, 0x31, 0x91, 0x59, 0xbf, 0x51, 0xc6, 0xf3, 0x30, 0x71, 0x98, 0xd3, 0xc0, 0x50, 0x0a, 0xd8, 0x67, 0x4f, 0x42, 0xa9, 0x16, 0x78, 0x31, 0x73, 0x42, 0xe8, 0x2e, 0xc0, 0x78, 0x1d, 0x43, 0x10, 0xd6, 0x18, 0x69, 0x4b, 0xd8, 0xd0, 0x74, 0x65, 0x0a, 0xe6, 0x49, 0x10, 0xa2, 0x4a, 0x03, 0x59, 0x8f, 0x00, 0x16, 0x81, 0x20, 0xe5, 0x30, 0xaa, 0x60, 0x31, 0x7a, 0xd4, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2055 = { .name = "ecdsa_brainpoolp512r1_sha512_2055", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2055_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2055_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2055_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2056 for ECDSA, tcId is 106 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2056_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2056_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2056_sig[] = { 0x25, 0x3d, 0x7a, 0xff, 0x81, 0x71, 0x37, 0x21, 0x96, 0xdd, 0x15, 0x2c, 0xe3, 0x53, 0x6e, 0x65, 0xff, 0x00, 0xac, 0x3f, 0xee, 0xfc, 0x32, 0xd7, 0x90, 0xb6, 0xdd, 0xc8, 0x5b, 0x0c, 0xef, 0x07, 0x4a, 0x17, 0x36, 0xbb, 0x47, 0x33, 0x31, 0xb3, 0x81, 0x4b, 0x2f, 0x69, 0xd2, 0x0e, 0x90, 0x05, 0x0e, 0xd2, 0xd3, 0xca, 0x12, 0x57, 0x35, 0x33, 0x6d, 0x15, 0xf9, 0xc0, 0x12, 0xe2, 0x89, 0xcb, 0x38, 0x50, 0x57, 0x3a, 0x85, 0x9b, 0x7f, 0x9b, 0x15, 0x3f, 0xe0, 0xd9, 0x5f, 0x48, 0xed, 0x30, 0x87, 0x7e, 0xeb, 0x34, 0xff, 0xd3, 0x0e, 0x99, 0x80, 0xf4, 0xc4, 0x2c, 0x26, 0xe9, 0x53, 0x8f, 0x7e, 0xdf, 0xe5, 0x0d, 0x52, 0xf8, 0xe4, 0x53, 0xaf, 0x03, 0xd4, 0x55, 0x4b, 0xca, 0x7a, 0xb2, 0xb3, 0xb9, 0x8d, 0x79, 0x4a, 0x31, 0x7d, 0xda, 0x12, 0x3f, 0xd3, 0x1e, 0x4e, 0xa7, 0x06, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2056 = { .name = "ecdsa_brainpoolp512r1_sha512_2056", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2056_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2056_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2056_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2057 for ECDSA, tcId is 107 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2057_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2057_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2057_sig[] = { 0x74, 0x82, 0xb5, 0xe6, 0xbc, 0x84, 0xf2, 0x89, 0xbe, 0x96, 0xff, 0x9c, 0x01, 0xea, 0x2d, 0xf6, 0x32, 0xcc, 0x1d, 0x23, 0xb9, 0x88, 0xf9, 0x53, 0x26, 0x41, 0x00, 0xe8, 0xa2, 0x12, 0xe7, 0x7c, 0x83, 0x6f, 0xc3, 0xf6, 0x60, 0x71, 0xd9, 0xec, 0x62, 0x54, 0x34, 0x1c, 0xec, 0xfc, 0xd8, 0xaa, 0xa9, 0x40, 0xcc, 0x0c, 0xc1, 0xe2, 0x60, 0x77, 0xf3, 0xc0, 0xa1, 0xa8, 0x55, 0xe3, 0x0c, 0x51, 0x32, 0x8e, 0x8a, 0x1f, 0xc1, 0x40, 0xc8, 0x79, 0x1b, 0x9d, 0x17, 0xe1, 0xe2, 0xdf, 0xdc, 0xeb, 0x96, 0x9a, 0x21, 0xd2, 0xb0, 0x24, 0x5b, 0x1c, 0xc2, 0x07, 0x66, 0xb6, 0xb4, 0x1a, 0x2d, 0x6c, 0xdf, 0x96, 0x09, 0xdd, 0xa1, 0xb1, 0xd2, 0xc2, 0xc6, 0xc3, 0x85, 0x98, 0x6e, 0x6c, 0x6f, 0xac, 0xbf, 0xd6, 0x8a, 0x67, 0x48, 0x60, 0xf4, 0x8f, 0xb8, 0xd1, 0x13, 0xf5, 0x77, 0xef, 0x23, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2057 = { .name = "ecdsa_brainpoolp512r1_sha512_2057", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2057_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2057_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2057_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2058 for ECDSA, tcId is 108 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2058_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2058_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2058_sig[] = { 0x65, 0x99, 0x44, 0x1c, 0x0e, 0xd9, 0xe2, 0xa8, 0x2f, 0x5f, 0x09, 0xcf, 0xa9, 0x62, 0x7b, 0x25, 0xd5, 0x01, 0x95, 0x75, 0x07, 0x23, 0xac, 0x18, 0x90, 0x7e, 0xde, 0xa3, 0xb5, 0x88, 0xb7, 0x36, 0xde, 0xed, 0xcd, 0xcd, 0x0a, 0xee, 0x44, 0xdf, 0x73, 0xf5, 0xf3, 0x64, 0xe4, 0x84, 0xb9, 0x94, 0x9b, 0x7d, 0x7b, 0x69, 0x8f, 0xde, 0x04, 0x3e, 0x61, 0x02, 0xcf, 0xee, 0xd6, 0x9d, 0xb4, 0x69, 0x40, 0x04, 0x9f, 0x8d, 0xd6, 0xee, 0x0b, 0xbb, 0x4b, 0x9a, 0x29, 0xf2, 0xed, 0xed, 0x3c, 0x8b, 0xf0, 0xb1, 0x0c, 0x8b, 0xd3, 0xbe, 0x6b, 0xf5, 0xe4, 0xf9, 0x7f, 0x07, 0x4d, 0x71, 0x68, 0x65, 0xfa, 0x82, 0x4f, 0x51, 0xfa, 0x79, 0xcc, 0xfe, 0x79, 0x1d, 0x5d, 0xf6, 0xad, 0x7f, 0xee, 0x6b, 0xad, 0x96, 0xac, 0x5b, 0xff, 0x21, 0xa5, 0x02, 0xf9, 0x0a, 0xb8, 0x0e, 0x21, 0x12, 0x53, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2058 = { .name = "ecdsa_brainpoolp512r1_sha512_2058", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2058_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2058_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2058_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2059 for ECDSA, tcId is 109 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2059_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2059_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2059_sig[] = { 0x74, 0xe1, 0x1c, 0x74, 0xd4, 0x13, 0x9e, 0xb9, 0xe5, 0x32, 0xe5, 0x83, 0xcf, 0x3e, 0xdd, 0x0b, 0x9e, 0x0e, 0x7b, 0x6e, 0x82, 0xa3, 0xb7, 0x9d, 0x82, 0x00, 0xe8, 0xe5, 0x81, 0xde, 0xb7, 0x1b, 0x15, 0x3b, 0x96, 0x16, 0x46, 0xa7, 0x63, 0x20, 0x33, 0x9f, 0x4c, 0x1a, 0x5f, 0x75, 0xa6, 0x38, 0xba, 0x2b, 0x0c, 0x3f, 0x06, 0x5e, 0xd8, 0x56, 0xad, 0x0a, 0x15, 0x8e, 0x32, 0x35, 0xc7, 0x0e, 0x6f, 0xf9, 0x40, 0x33, 0x9c, 0x04, 0x49, 0xd6, 0xe2, 0x40, 0x37, 0x30, 0xb5, 0x8d, 0x0d, 0xfc, 0x8d, 0xe7, 0x9b, 0xca, 0x0d, 0xf0, 0x6c, 0x5a, 0x6d, 0x43, 0x7c, 0xc2, 0xc1, 0x26, 0x6a, 0x46, 0x8a, 0x8a, 0xca, 0x2a, 0x29, 0x03, 0xc2, 0x99, 0x79, 0xd7, 0xf4, 0xd4, 0xf7, 0x87, 0x1a, 0x10, 0x6b, 0x31, 0xec, 0x48, 0x5c, 0x28, 0xca, 0xb6, 0x2e, 0xb2, 0x10, 0x01, 0x98, 0x87, 0x1b, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2059 = { .name = "ecdsa_brainpoolp512r1_sha512_2059", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2059_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2059_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2059_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2060 for ECDSA, tcId is 110 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2060_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2060_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2060_sig[] = { 0x55, 0x48, 0x02, 0x0c, 0x2a, 0x07, 0x64, 0x52, 0x4c, 0xa5, 0x43, 0xd0, 0x8e, 0x15, 0x26, 0xce, 0x14, 0x76, 0xba, 0x97, 0x6a, 0xf8, 0xd6, 0x15, 0x0d, 0x8d, 0x2a, 0xe4, 0x74, 0x95, 0xe5, 0xfe, 0x68, 0xcc, 0xe9, 0x84, 0x93, 0xb5, 0x03, 0x04, 0x13, 0x1d, 0xf7, 0x1c, 0x1a, 0x3d, 0x47, 0x76, 0xa7, 0x7d, 0x5c, 0xeb, 0x74, 0xe4, 0x7b, 0x2a, 0x8e, 0x65, 0x01, 0x08, 0xeb, 0xab, 0x14, 0x28, 0x62, 0x0e, 0x2d, 0xbf, 0x67, 0x21, 0x5f, 0x95, 0xfb, 0xbc, 0x92, 0xa9, 0x92, 0xf2, 0x0a, 0x4e, 0x7f, 0x30, 0x1a, 0x2c, 0x3c, 0x38, 0x80, 0xb7, 0xe8, 0x91, 0xad, 0x48, 0x46, 0x47, 0xa9, 0x7a, 0xa0, 0x0a, 0xec, 0xde, 0xfd, 0x03, 0x15, 0x52, 0x07, 0xa9, 0xe4, 0x59, 0xef, 0x74, 0x5a, 0x9d, 0x29, 0xa5, 0x4b, 0x08, 0xf4, 0x7b, 0x81, 0xca, 0xdb, 0xe4, 0xbe, 0xa4, 0x57, 0xea, 0xc6, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2060 = { .name = "ecdsa_brainpoolp512r1_sha512_2060", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2060_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2060_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2060_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2061 for ECDSA, tcId is 111 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2061_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2061_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2061_sig[] = { 0x83, 0xde, 0x91, 0x22, 0xab, 0x46, 0x27, 0x22, 0x93, 0x9d, 0x85, 0x1d, 0x45, 0x6b, 0x9b, 0x02, 0x29, 0x37, 0xbe, 0x85, 0xb1, 0x5e, 0xb6, 0x5d, 0x2e, 0xc1, 0xa4, 0x84, 0x10, 0xa2, 0xf2, 0x34, 0xe9, 0x81, 0x40, 0xf2, 0x08, 0xed, 0x59, 0x5d, 0xe2, 0xfb, 0x50, 0x73, 0xb2, 0xea, 0x49, 0x4a, 0xca, 0xde, 0x8d, 0xc5, 0xa4, 0x4e, 0xd7, 0x16, 0x2c, 0xfe, 0x7a, 0x70, 0x18, 0x24, 0x79, 0xdd, 0x2e, 0x0c, 0x93, 0x8f, 0x56, 0x53, 0x38, 0x57, 0x95, 0x6e, 0x56, 0xd7, 0x9c, 0x78, 0xfd, 0x10, 0x1d, 0xde, 0xcb, 0x1a, 0x96, 0x95, 0xa5, 0x6f, 0x18, 0xf6, 0xa8, 0x9b, 0x94, 0xc0, 0xd3, 0xdb, 0x47, 0x42, 0x9a, 0xfd, 0xde, 0x6b, 0x68, 0x28, 0x32, 0xbf, 0x4c, 0x0f, 0xb8, 0x49, 0xec, 0x7f, 0xaf, 0x72, 0x9c, 0xb5, 0x9d, 0x8e, 0x21, 0x9d, 0xad, 0x70, 0xb7, 0xc8, 0xe2, 0x57, 0xff, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2061 = { .name = "ecdsa_brainpoolp512r1_sha512_2061", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2061_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2061_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2061_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2062 for ECDSA, tcId is 112 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2062_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2062_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2062_sig[] = { 0x8d, 0x42, 0xb3, 0xbe, 0xd0, 0x20, 0x25, 0x93, 0xad, 0x44, 0xa9, 0x3b, 0x43, 0xeb, 0xac, 0x7e, 0xe0, 0xd9, 0xec, 0x1d, 0xbc, 0x5c, 0x54, 0x66, 0x19, 0xd5, 0xa9, 0xbf, 0xb5, 0xc9, 0xce, 0xe7, 0x44, 0xa4, 0x45, 0x87, 0x3f, 0x10, 0x53, 0x9b, 0x51, 0x54, 0x5e, 0xa7, 0x87, 0x64, 0x8d, 0xbc, 0x44, 0xba, 0x2d, 0x27, 0xf9, 0x1e, 0xee, 0xc5, 0x9d, 0xe9, 0x2f, 0x2d, 0x71, 0x60, 0x15, 0x53, 0x98, 0x5a, 0xc4, 0x97, 0x2c, 0x7b, 0x12, 0x23, 0x65, 0x6d, 0xfe, 0xc7, 0x96, 0xcd, 0x33, 0x52, 0xd9, 0x1d, 0x6c, 0x83, 0xce, 0x33, 0x0e, 0x1d, 0xcb, 0x1e, 0xc9, 0x81, 0x73, 0x99, 0x34, 0x0d, 0x7c, 0xa9, 0x74, 0x57, 0xaf, 0x51, 0xc1, 0x9c, 0x6f, 0xd0, 0x78, 0x7e, 0x69, 0x65, 0xd4, 0xf8, 0x5e, 0xde, 0x5c, 0x7f, 0x50, 0x75, 0x98, 0xb8, 0xbd, 0xd5, 0xc8, 0x08, 0xdb, 0x45, 0x9e, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2062 = { .name = "ecdsa_brainpoolp512r1_sha512_2062", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2062_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2062_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2062_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2063 for ECDSA, tcId is 113 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2063_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2063_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2063_sig[] = { 0x5b, 0x82, 0x6d, 0x16, 0x04, 0x0e, 0x44, 0x8d, 0xfb, 0x70, 0x19, 0x5d, 0xe1, 0x6e, 0x97, 0x45, 0x4b, 0x13, 0x3a, 0xeb, 0x10, 0x51, 0x37, 0x3d, 0x51, 0x11, 0xf1, 0x08, 0x14, 0xb7, 0xf4, 0xad, 0x17, 0x14, 0xb2, 0x5c, 0x0c, 0x56, 0x61, 0xef, 0xee, 0x43, 0xfa, 0x93, 0x29, 0xa4, 0xaf, 0x09, 0x60, 0x7e, 0xb6, 0x6c, 0x72, 0xb2, 0xbe, 0x2e, 0x21, 0xbb, 0x4d, 0x02, 0x29, 0xe3, 0xa1, 0xaf, 0x07, 0xf0, 0x0f, 0x39, 0x35, 0x56, 0x6f, 0x4c, 0xa1, 0x6e, 0x34, 0x6e, 0xf5, 0xac, 0x47, 0xb2, 0x95, 0x3f, 0xc8, 0xb5, 0xcc, 0x88, 0x70, 0xae, 0x63, 0x8c, 0x55, 0xfa, 0xde, 0x1b, 0x58, 0x6b, 0x37, 0xa1, 0x19, 0x01, 0x5f, 0xd7, 0xbe, 0x3a, 0x33, 0xfd, 0x39, 0x16, 0x55, 0x64, 0xf6, 0x11, 0x74, 0x35, 0xbc, 0x1a, 0x20, 0xbf, 0xd5, 0x74, 0x06, 0x60, 0x8b, 0x3b, 0x27, 0xa9, 0x1b, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2063 = { .name = "ecdsa_brainpoolp512r1_sha512_2063", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2063_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2063_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2063_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2064 for ECDSA, tcId is 114 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2064_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2064_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2064_sig[] = { 0x8f, 0x89, 0xdb, 0x5a, 0x6d, 0x6d, 0xc6, 0xfe, 0x96, 0xec, 0x5f, 0x95, 0x96, 0x0c, 0x2f, 0x03, 0xa6, 0xa0, 0x72, 0xe6, 0x44, 0xd1, 0x58, 0x24, 0x7d, 0x5b, 0x8b, 0x66, 0xe2, 0x34, 0x68, 0x34, 0xee, 0x11, 0xe5, 0xed, 0xe6, 0xbf, 0x9e, 0x8e, 0x02, 0x34, 0xa7, 0xf7, 0x5c, 0xe8, 0x64, 0x49, 0x14, 0xc5, 0x85, 0xe0, 0x95, 0x3d, 0x37, 0x1c, 0x36, 0x3e, 0x2f, 0x21, 0xfe, 0xaa, 0x27, 0x63, 0x66, 0x01, 0xd2, 0x28, 0xf4, 0xb5, 0x3d, 0xab, 0x15, 0x46, 0xeb, 0xf7, 0x67, 0x33, 0x60, 0xdb, 0xa5, 0xdc, 0x3d, 0x59, 0xc9, 0x53, 0xbf, 0x86, 0x7c, 0x75, 0x43, 0x25, 0xc0, 0xcf, 0xde, 0x85, 0xb6, 0x45, 0x05, 0xfc, 0x99, 0x59, 0x41, 0x92, 0x9b, 0x53, 0xc5, 0x56, 0x6b, 0x42, 0xf0, 0x34, 0xba, 0x1a, 0x09, 0xed, 0x96, 0xe1, 0x13, 0x96, 0x1a, 0x1a, 0x73, 0x57, 0xa2, 0x27, 0x93, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2064 = { .name = "ecdsa_brainpoolp512r1_sha512_2064", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2064_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2064_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2064_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2065 for ECDSA, tcId is 115 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2065_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2065_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2065_sig[] = { 0x7e, 0x61, 0x07, 0xbc, 0x6e, 0x5f, 0x0d, 0x09, 0x58, 0x78, 0x9e, 0x4b, 0x91, 0x20, 0x1c, 0xa1, 0x9d, 0x93, 0xc1, 0x2b, 0xc4, 0x19, 0x4c, 0x83, 0x16, 0xc2, 0x22, 0x44, 0x51, 0xf5, 0x74, 0x8b, 0xb6, 0xfb, 0x46, 0x49, 0x71, 0x06, 0xc6, 0x13, 0xb0, 0x7e, 0xfa, 0xac, 0x95, 0x4e, 0x2c, 0xcb, 0x21, 0x06, 0x20, 0x05, 0xb9, 0xef, 0x4e, 0xa7, 0x2c, 0xe4, 0x47, 0x1d, 0xaa, 0x5a, 0x3e, 0xa3, 0x7f, 0x18, 0x37, 0x82, 0x77, 0x27, 0x68, 0x5d, 0xe8, 0xc8, 0x86, 0x8d, 0x94, 0x25, 0xdb, 0x06, 0xe3, 0x3f, 0x67, 0x78, 0xb3, 0xb4, 0xd1, 0xe0, 0x8e, 0x5f, 0x73, 0xe2, 0x68, 0x04, 0xa1, 0x42, 0x72, 0x3a, 0x3d, 0x68, 0xa7, 0xd7, 0x5f, 0xdf, 0x82, 0x6e, 0x79, 0xf7, 0x91, 0xf7, 0xa6, 0xb0, 0xf8, 0x9a, 0x36, 0xe5, 0x79, 0xcd, 0xa9, 0x19, 0x6f, 0xdd, 0x9f, 0x64, 0x19, 0xf7, 0x1c, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2065 = { .name = "ecdsa_brainpoolp512r1_sha512_2065", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2065_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2065_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2065_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2066 for ECDSA, tcId is 116 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2066_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2066_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2066_sig[] = { 0x35, 0x39, 0x94, 0x4e, 0x52, 0xd0, 0xdb, 0x1f, 0xe5, 0xe9, 0xca, 0x3d, 0x4c, 0x8d, 0x93, 0x13, 0x9a, 0x2d, 0x5c, 0x85, 0xe5, 0x19, 0x60, 0xed, 0x68, 0xe8, 0xfb, 0x5f, 0x29, 0xcb, 0x10, 0x8f, 0xa1, 0x84, 0xfd, 0x66, 0x86, 0x4f, 0xed, 0x2b, 0xd9, 0x0e, 0x00, 0x17, 0x92, 0x5c, 0x5d, 0x54, 0x3d, 0x61, 0x8e, 0x28, 0x7d, 0xe4, 0x3d, 0x22, 0xf7, 0xa9, 0x4f, 0x17, 0x51, 0x4f, 0x85, 0xaa, 0x06, 0x0a, 0x37, 0xda, 0x27, 0x53, 0x92, 0x5c, 0x18, 0xba, 0x4b, 0x97, 0xc9, 0x5d, 0x16, 0xce, 0x57, 0x4c, 0xe9, 0x54, 0x2e, 0x91, 0x8b, 0x4e, 0xa2, 0xe7, 0xf3, 0x89, 0x0e, 0x72, 0x3a, 0x37, 0x5b, 0x0c, 0x7c, 0xcd, 0x49, 0x7c, 0xda, 0x6c, 0x24, 0x11, 0x15, 0x03, 0xff, 0x94, 0x8e, 0xe1, 0xb0, 0x97, 0x5b, 0x90, 0xb2, 0x1c, 0x07, 0x47, 0xf0, 0xb4, 0xbf, 0xd3, 0x54, 0xe2, 0xea, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2066 = { .name = "ecdsa_brainpoolp512r1_sha512_2066", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2066_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2066_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2066_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2067 for ECDSA, tcId is 117 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2067_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2067_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2067_sig[] = { 0x13, 0x39, 0xcc, 0x85, 0xb9, 0x10, 0xc8, 0x2c, 0x7d, 0x5a, 0x06, 0x04, 0x42, 0x71, 0x50, 0xe3, 0x25, 0xc4, 0x58, 0xcb, 0x2d, 0xe1, 0xcf, 0x27, 0x19, 0x45, 0x46, 0xdb, 0x13, 0xca, 0xb0, 0x56, 0xc0, 0x21, 0xf6, 0xa7, 0x8f, 0x55, 0x05, 0xe8, 0xbf, 0x68, 0x65, 0xf2, 0x9b, 0x36, 0xbf, 0x67, 0xa3, 0xc2, 0x30, 0x00, 0x61, 0x7e, 0x35, 0xf9, 0x2c, 0x87, 0x36, 0x85, 0x4c, 0x5d, 0x72, 0xa1, 0x80, 0x18, 0x93, 0x6e, 0x27, 0x84, 0x7e, 0xe6, 0x81, 0x9b, 0x10, 0x45, 0x85, 0x22, 0xd7, 0x89, 0x91, 0xcd, 0xe9, 0xd0, 0x8b, 0x5e, 0x85, 0xf2, 0xe3, 0x39, 0xba, 0xc6, 0xba, 0x9a, 0xfd, 0xba, 0x19, 0xa5, 0xc9, 0x9e, 0x21, 0x17, 0x75, 0x23, 0x45, 0xbd, 0xaa, 0x7a, 0x71, 0xbe, 0x57, 0xf0, 0x0e, 0x4a, 0x2d, 0x8d, 0xb0, 0x88, 0xf3, 0x50, 0x72, 0x18, 0x53, 0xf6, 0xea, 0x14, 0x40, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2067 = { .name = "ecdsa_brainpoolp512r1_sha512_2067", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2067_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2067_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2067_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2068 for ECDSA, tcId is 118 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2068_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2068_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2068_sig[] = { 0x0b, 0x62, 0xb7, 0x68, 0x86, 0x41, 0x2a, 0x3e, 0x92, 0x18, 0x0a, 0xda, 0x31, 0xe8, 0x6c, 0x28, 0xe2, 0x88, 0x65, 0x9e, 0xe7, 0x12, 0x51, 0xb5, 0xfc, 0xab, 0x69, 0xfb, 0xe3, 0xa3, 0xea, 0x7a, 0x9e, 0xcb, 0xe5, 0x13, 0xef, 0x2f, 0x7e, 0x09, 0x00, 0x73, 0x82, 0x50, 0xd2, 0x81, 0x8d, 0x25, 0x5b, 0x83, 0x8d, 0xc0, 0x92, 0xf0, 0x45, 0xfe, 0x5f, 0x90, 0xe9, 0x9a, 0x6f, 0xc4, 0x8c, 0x20, 0x75, 0x25, 0x5d, 0xeb, 0xf5, 0x53, 0x18, 0xa2, 0x65, 0x51, 0x1e, 0x3f, 0x7b, 0xdf, 0x64, 0x7c, 0x88, 0xdb, 0xce, 0x18, 0x5a, 0xe1, 0x39, 0x05, 0x0c, 0x43, 0x71, 0x54, 0xfc, 0x4d, 0xee, 0x27, 0x86, 0xc4, 0x40, 0xb4, 0xf6, 0x75, 0x28, 0xa1, 0xa3, 0x43, 0xc8, 0xf4, 0x20, 0x57, 0xe9, 0xbd, 0x22, 0x3d, 0xf6, 0x4c, 0xe7, 0x57, 0x08, 0x1d, 0xff, 0x7f, 0x16, 0xa7, 0x84, 0xef, 0x58, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2068 = { .name = "ecdsa_brainpoolp512r1_sha512_2068", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2068_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2068_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2068_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2069 for ECDSA, tcId is 119 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2069_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2069_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2069_sig[] = { 0x02, 0x51, 0x7c, 0xfd, 0xd2, 0x2c, 0x2b, 0xe4, 0xc6, 0x2f, 0xf7, 0x2f, 0x02, 0x42, 0xf8, 0x44, 0xcf, 0x13, 0x7f, 0x23, 0x0b, 0x41, 0xbd, 0x1b, 0x96, 0x84, 0x26, 0xd7, 0x5f, 0xd0, 0x1f, 0x2b, 0x46, 0x7a, 0x3d, 0x3d, 0xba, 0xe1, 0x56, 0xd1, 0x9e, 0xe3, 0x34, 0x98, 0x07, 0x0a, 0x67, 0x27, 0x94, 0x12, 0x99, 0x65, 0x06, 0x45, 0x14, 0x33, 0x75, 0x96, 0xd1, 0xbc, 0x66, 0x48, 0x1a, 0x1a, 0x1e, 0x40, 0x50, 0x9a, 0x67, 0x1f, 0xbf, 0x96, 0x38, 0xd1, 0xd2, 0xb2, 0x42, 0xf3, 0x04, 0x10, 0x96, 0xd6, 0xb5, 0x9d, 0x1e, 0xb7, 0x10, 0x72, 0x06, 0x86, 0x20, 0xfd, 0xf3, 0x19, 0x53, 0xb2, 0x0a, 0x4b, 0xde, 0xbf, 0xb0, 0x8d, 0x24, 0x8f, 0x0d, 0x7e, 0x34, 0xf0, 0x53, 0xe6, 0x34, 0xf4, 0x3a, 0xa4, 0x2a, 0x38, 0x63, 0xd7, 0x53, 0x14, 0x7d, 0xe7, 0x36, 0x8b, 0x28, 0xa7, 0x4d, 0x84, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2069 = { .name = "ecdsa_brainpoolp512r1_sha512_2069", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2069_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2069_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2069_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2070 for ECDSA, tcId is 120 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2070_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2070_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2070_sig[] = { 0x8f, 0xef, 0x6b, 0x52, 0xc4, 0xd6, 0x43, 0xfd, 0x9d, 0x5f, 0x28, 0xfd, 0x52, 0x04, 0xfc, 0x5b, 0x5b, 0x6a, 0x3e, 0x57, 0xe6, 0xdb, 0x9c, 0x8e, 0xef, 0x75, 0x14, 0x06, 0x89, 0x33, 0x37, 0x7a, 0x7f, 0x16, 0xa0, 0x69, 0xa9, 0x5b, 0xb6, 0xf6, 0x49, 0xdd, 0x33, 0x10, 0x92, 0x2a, 0x98, 0x22, 0x11, 0xf2, 0x42, 0x09, 0x3a, 0x23, 0xab, 0x44, 0xdf, 0x81, 0x0e, 0xb4, 0xd7, 0x44, 0xb0, 0x54, 0x5e, 0x38, 0x62, 0xa4, 0x2f, 0xe8, 0xa5, 0x60, 0x43, 0x2d, 0x5d, 0xe0, 0x42, 0xf9, 0x80, 0x61, 0x3e, 0x68, 0xf6, 0xb3, 0x44, 0x4d, 0x7d, 0x53, 0x52, 0x66, 0x00, 0xa5, 0x05, 0x99, 0x23, 0x71, 0xf6, 0xf7, 0x2d, 0xd1, 0xaa, 0x77, 0x5e, 0x58, 0xe2, 0x42, 0x12, 0xa0, 0xc2, 0x64, 0x39, 0xd2, 0xeb, 0x71, 0x73, 0x40, 0xfd, 0x53, 0x6d, 0x38, 0xf9, 0x14, 0x8d, 0x21, 0x36, 0x85, 0x0a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2070 = { .name = "ecdsa_brainpoolp512r1_sha512_2070", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2070_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2070_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2070_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2071 for ECDSA, tcId is 121 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2071_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2071_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2071_sig[] = { 0x14, 0xbe, 0x63, 0x6d, 0x9a, 0xa0, 0xaa, 0xcb, 0x84, 0xf1, 0xd7, 0xd0, 0xb8, 0x83, 0x72, 0xc0, 0x32, 0x26, 0x87, 0x76, 0x7d, 0x45, 0x23, 0x9d, 0x7b, 0x88, 0x37, 0xd7, 0x47, 0xd6, 0x0f, 0xc6, 0xcb, 0x0f, 0xa7, 0xe8, 0x97, 0xbb, 0xdb, 0x19, 0x19, 0x4c, 0x82, 0xde, 0xbd, 0xdb, 0x46, 0xdd, 0xd0, 0x94, 0xcb, 0x00, 0x1d, 0xdb, 0x7e, 0x02, 0x59, 0x23, 0x83, 0x5d, 0x7e, 0x0e, 0xed, 0xa4, 0x09, 0x0d, 0x62, 0x99, 0x7f, 0xb4, 0xff, 0x82, 0x89, 0x6d, 0x2e, 0x8a, 0x0a, 0xe2, 0x2c, 0xef, 0x6d, 0xac, 0xf1, 0x88, 0x9b, 0xef, 0x71, 0x80, 0x5d, 0xba, 0x0f, 0x70, 0x1d, 0x41, 0xac, 0x21, 0x98, 0x20, 0xe1, 0x5e, 0x91, 0x5e, 0x10, 0x51, 0x3d, 0x49, 0x1b, 0x6a, 0xa3, 0x08, 0xb3, 0x59, 0x06, 0xdc, 0x5d, 0x45, 0x19, 0x19, 0x28, 0xf5, 0x02, 0x56, 0x83, 0xbe, 0x8a, 0x3a, 0x9f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2071 = { .name = "ecdsa_brainpoolp512r1_sha512_2071", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2071_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2071_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2071_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2072 for ECDSA, tcId is 122 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2072_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2072_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2072_sig[] = { 0x9a, 0xf9, 0x8b, 0xee, 0x99, 0x11, 0x64, 0x0f, 0xb5, 0xd5, 0x8f, 0xa0, 0x80, 0x3e, 0x53, 0x93, 0xb7, 0x72, 0xfb, 0x0c, 0x86, 0x2e, 0xe9, 0xf8, 0x54, 0x5d, 0x9d, 0xad, 0xba, 0xfb, 0x1a, 0x6c, 0x73, 0xc8, 0x5b, 0x79, 0xf3, 0x9d, 0x11, 0x85, 0xf4, 0xb2, 0xc4, 0xbb, 0x54, 0xe5, 0x13, 0x17, 0xe2, 0x63, 0x3d, 0x50, 0xfc, 0x8f, 0x75, 0x88, 0x85, 0x04, 0x26, 0x8b, 0x84, 0xf4, 0x0e, 0x24, 0x87, 0xfb, 0x7c, 0x8a, 0x2d, 0x81, 0xf7, 0x22, 0x6d, 0xeb, 0xff, 0x31, 0xb4, 0xf0, 0xa2, 0x9a, 0x08, 0xf1, 0xf9, 0xa4, 0xc5, 0x0e, 0x56, 0x15, 0xb5, 0x70, 0x55, 0x5e, 0xf2, 0xcc, 0xa1, 0xdf, 0x2b, 0x70, 0x4e, 0x92, 0xe9, 0xb8, 0xad, 0xb4, 0x41, 0x89, 0xe6, 0x95, 0x53, 0xed, 0x79, 0xef, 0xfe, 0x31, 0x5b, 0xd4, 0x01, 0xd0, 0xb2, 0x32, 0x8c, 0xb0, 0x65, 0xcf, 0x10, 0xe1, 0x30, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2072 = { .name = "ecdsa_brainpoolp512r1_sha512_2072", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2072_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2072_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2072_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2073 for ECDSA, tcId is 123 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2073_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2073_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2073_sig[] = { 0xa6, 0x4a, 0x9d, 0xad, 0xf5, 0xb6, 0xa5, 0x70, 0x28, 0x04, 0x4e, 0x08, 0xd7, 0x88, 0x78, 0x4e, 0x07, 0xac, 0x98, 0xdf, 0xa1, 0xed, 0x23, 0x83, 0x48, 0xe4, 0x5e, 0x95, 0xd4, 0x4f, 0x63, 0x1d, 0x9f, 0x14, 0xab, 0xb9, 0x46, 0x43, 0xf8, 0x7d, 0x1c, 0xf3, 0xf9, 0xfe, 0xc5, 0xdc, 0x27, 0x20, 0xe4, 0x29, 0x64, 0x6c, 0x0e, 0xc7, 0x15, 0x1f, 0xb8, 0x99, 0x24, 0xcd, 0x43, 0x1c, 0x30, 0x73, 0x11, 0x5f, 0x65, 0x3a, 0x3d, 0x32, 0x7d, 0x93, 0x11, 0x8c, 0xdd, 0x24, 0xff, 0xff, 0x03, 0x9d, 0xa5, 0x16, 0xaf, 0xa2, 0x7f, 0x37, 0xc7, 0x87, 0x35, 0xc9, 0x85, 0x97, 0x3c, 0xfe, 0x55, 0x27, 0x5b, 0x61, 0x0d, 0x7b, 0xe2, 0x49, 0x69, 0xeb, 0x53, 0x17, 0x21, 0xa0, 0xa4, 0x86, 0x19, 0x4b, 0x6b, 0x88, 0x23, 0xd0, 0xd7, 0x0b, 0x0d, 0xc1, 0xfd, 0x4c, 0x76, 0x11, 0xc3, 0x28, 0x61, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2073 = { .name = "ecdsa_brainpoolp512r1_sha512_2073", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2073_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2073_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2073_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2074 for ECDSA, tcId is 124 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2074_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2074_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2074_sig[] = { 0x95, 0xd0, 0x81, 0xc0, 0x72, 0x8f, 0xee, 0x3f, 0x5b, 0x11, 0xa5, 0x93, 0x39, 0x58, 0x69, 0xaa, 0x34, 0x2c, 0x26, 0x0d, 0xfa, 0x05, 0xe5, 0x57, 0x53, 0x17, 0x15, 0x02, 0x36, 0x48, 0x2d, 0x00, 0xee, 0x80, 0xa6, 0xf0, 0xa3, 0xa2, 0x5c, 0x0c, 0x8e, 0x3a, 0x67, 0x90, 0x01, 0x4c, 0x67, 0x47, 0xd8, 0xb5, 0xdd, 0xb0, 0x81, 0x32, 0x8b, 0xd5, 0x3e, 0x4c, 0x64, 0x22, 0xc6, 0x23, 0xd7, 0x95, 0x98, 0x33, 0x4d, 0xdc, 0x2a, 0x1e, 0xd8, 0x87, 0xb2, 0x6f, 0xa2, 0x35, 0x99, 0x01, 0x2b, 0x31, 0xfb, 0xd5, 0xfa, 0x38, 0x4d, 0xb5, 0xc0, 0x90, 0x22, 0x33, 0xc1, 0xef, 0xe6, 0x1f, 0x85, 0xfc, 0xce, 0x09, 0xa9, 0xe7, 0xfc, 0x13, 0xfb, 0x02, 0x53, 0xc8, 0xcf, 0xce, 0xb8, 0x76, 0x23, 0x60, 0xee, 0x5d, 0x20, 0xe1, 0x7d, 0xeb, 0xbe, 0x84, 0xa1, 0xc8, 0xeb, 0x68, 0xdb, 0x7f, 0xfd, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2074 = { .name = "ecdsa_brainpoolp512r1_sha512_2074", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2074_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2074_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2074_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2075 for ECDSA, tcId is 125 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2075_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2075_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2075_sig[] = { 0x9d, 0xdd, 0x4a, 0xc3, 0x92, 0xe9, 0xb8, 0x39, 0x1d, 0x76, 0x6b, 0x6f, 0x5d, 0x26, 0xf1, 0x64, 0xef, 0x6f, 0x45, 0x52, 0xd7, 0x3f, 0x1e, 0xe9, 0xd0, 0x96, 0xb7, 0x7e, 0x3d, 0xcc, 0x3a, 0x42, 0x02, 0x35, 0x73, 0x15, 0x6c, 0x59, 0x54, 0x18, 0x7e, 0xbe, 0xcb, 0x2f, 0x60, 0xed, 0x7a, 0x01, 0x43, 0x98, 0x09, 0xdd, 0x8e, 0xba, 0x28, 0x6e, 0x53, 0x40, 0xee, 0xb7, 0xe1, 0x84, 0x59, 0x3d, 0x16, 0x6a, 0x4a, 0x2b, 0x9e, 0x0c, 0xee, 0xab, 0x82, 0x78, 0x3c, 0x1a, 0x7d, 0x62, 0x2d, 0xcf, 0x7b, 0xff, 0xc6, 0x9b, 0x85, 0xae, 0x41, 0xe5, 0xad, 0x9b, 0x55, 0x2b, 0xf3, 0xb6, 0x87, 0xa2, 0x28, 0xcf, 0xf6, 0x44, 0xd5, 0x49, 0x7b, 0xa0, 0xa1, 0x64, 0x4c, 0x03, 0x91, 0x62, 0xec, 0xdf, 0xb0, 0x95, 0xd2, 0x3d, 0xda, 0x25, 0xef, 0xe1, 0x4f, 0x48, 0x03, 0x2c, 0x6d, 0x09, 0xca, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2075 = { .name = "ecdsa_brainpoolp512r1_sha512_2075", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2075_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2075_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2075_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2076 for ECDSA, tcId is 126 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2076_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2076_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2076_sig[] = { 0x7d, 0xb0, 0xfb, 0xdd, 0xcf, 0x43, 0x7e, 0x25, 0x80, 0x4b, 0xfa, 0x6d, 0x47, 0x60, 0x07, 0xbb, 0x2e, 0x49, 0x13, 0x85, 0x27, 0xff, 0x27, 0xd7, 0x59, 0xd0, 0x5c, 0x0b, 0x1a, 0x3d, 0xad, 0xa2, 0x32, 0x7c, 0x49, 0x81, 0x32, 0x00, 0xcc, 0x24, 0xfd, 0x81, 0xf0, 0xde, 0xef, 0xb6, 0x06, 0x13, 0x14, 0xd0, 0x68, 0x29, 0x02, 0x4f, 0x44, 0x64, 0x59, 0x1f, 0x52, 0x0d, 0x5c, 0xbd, 0x9d, 0xae, 0x17, 0x53, 0xcb, 0xe7, 0xf6, 0xd1, 0x8e, 0x8f, 0xc2, 0x26, 0xa9, 0x50, 0x38, 0x5a, 0x43, 0x85, 0x8d, 0xdd, 0xdf, 0xba, 0x4b, 0x57, 0xc5, 0xc0, 0x7d, 0x58, 0x1f, 0x51, 0xcb, 0xf5, 0xc8, 0xf9, 0x37, 0x81, 0xb4, 0x8c, 0xcc, 0x88, 0x7c, 0x03, 0x9f, 0xcd, 0xec, 0xd6, 0xe6, 0x5e, 0x3e, 0x59, 0x48, 0x94, 0xc6, 0x78, 0x75, 0xed, 0x89, 0xe8, 0x6c, 0x44, 0xe5, 0x2d, 0x65, 0x6c, 0x34, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2076 = { .name = "ecdsa_brainpoolp512r1_sha512_2076", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2076_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2076_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2076_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2077 for ECDSA, tcId is 127 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2077_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2077_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2077_sig[] = { 0x89, 0x86, 0xb0, 0xea, 0x9c, 0x57, 0xe0, 0x37, 0x96, 0x0e, 0x76, 0xd8, 0xb5, 0x39, 0xaf, 0xc7, 0x14, 0xcc, 0x3a, 0xdc, 0x90, 0x39, 0x4b, 0x96, 0xbc, 0xfa, 0x3f, 0x7f, 0xbe, 0xad, 0x4f, 0xc5, 0x85, 0x13, 0x3e, 0x4f, 0x61, 0xb7, 0xce, 0x3e, 0xdf, 0xf0, 0x93, 0xb9, 0x8c, 0x25, 0x7d, 0xbb, 0xb4, 0x97, 0xf8, 0x6d, 0xbf, 0x46, 0x7f, 0x1a, 0xed, 0x8d, 0x7a, 0x7d, 0xbf, 0xb4, 0x46, 0x32, 0x9e, 0x7d, 0x1f, 0xa0, 0x9c, 0xcb, 0x4b, 0x4d, 0x49, 0xa2, 0x46, 0x3f, 0x12, 0xa9, 0xf7, 0x60, 0xd3, 0xcc, 0x0b, 0xe3, 0x8e, 0x40, 0x9a, 0x35, 0x21, 0x72, 0x3e, 0x6f, 0x48, 0x39, 0x80, 0x01, 0x90, 0x11, 0x53, 0xe1, 0x41, 0xc1, 0x21, 0x50, 0x0c, 0x8b, 0xa6, 0x89, 0x89, 0x6e, 0x2c, 0x3c, 0x88, 0x37, 0x67, 0x37, 0x89, 0x20, 0x37, 0x5c, 0xb5, 0x2f, 0x0c, 0xbe, 0x5a, 0xe9, 0x81, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2077 = { .name = "ecdsa_brainpoolp512r1_sha512_2077", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2077_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2077_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2077_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2078 for ECDSA, tcId is 128 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2078_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2078_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2078_sig[] = { 0x75, 0xdf, 0xf0, 0xfc, 0x67, 0x96, 0x4d, 0x57, 0xff, 0x01, 0x3e, 0x4e, 0xb8, 0xa7, 0xd3, 0x56, 0xb9, 0xf4, 0x08, 0xbe, 0x6f, 0x5a, 0xed, 0x81, 0x85, 0x46, 0xb0, 0x64, 0x10, 0x22, 0x70, 0xa8, 0x14, 0x7f, 0x3a, 0xb7, 0x8b, 0x94, 0x32, 0x7b, 0x60, 0x23, 0x2f, 0xe0, 0x86, 0x22, 0x2f, 0x7e, 0xe7, 0xc0, 0x27, 0xc6, 0xa2, 0xf8, 0x56, 0x46, 0x79, 0x22, 0x15, 0x6c, 0xd0, 0x0c, 0x52, 0x46, 0x59, 0x72, 0x54, 0x41, 0x17, 0x56, 0x72, 0x21, 0xcd, 0x67, 0x57, 0x54, 0x28, 0xc5, 0xc6, 0x1e, 0xdf, 0xb2, 0x28, 0xb1, 0x31, 0x46, 0x49, 0x27, 0x65, 0x7e, 0x45, 0xae, 0x8e, 0x55, 0x62, 0x5c, 0x87, 0x4c, 0x46, 0x97, 0x8c, 0x7d, 0xd4, 0x81, 0xd2, 0xdb, 0x8e, 0xe9, 0xca, 0xbd, 0x1a, 0x61, 0xbc, 0x24, 0x47, 0xce, 0xd2, 0xff, 0x9a, 0x72, 0xed, 0xe1, 0x22, 0xda, 0xbc, 0x6d, 0x9c, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2078 = { .name = "ecdsa_brainpoolp512r1_sha512_2078", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2078_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2078_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2078_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2079 for ECDSA, tcId is 129 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2079_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2079_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2079_sig[] = { 0xa2, 0xce, 0x4a, 0x96, 0x61, 0xc7, 0x1f, 0x7e, 0xde, 0x80, 0xc1, 0x67, 0xc6, 0x75, 0x86, 0x0c, 0xf6, 0x8d, 0x7e, 0xf5, 0x40, 0x03, 0x12, 0xf2, 0xae, 0x05, 0x0c, 0x41, 0x2d, 0xdd, 0xdd, 0x88, 0x69, 0xce, 0x09, 0x3b, 0x2e, 0x11, 0xe3, 0x84, 0x95, 0x24, 0x5d, 0x04, 0x25, 0x2e, 0x44, 0x12, 0x9e, 0x99, 0x45, 0x36, 0x43, 0x52, 0x10, 0xe3, 0xb7, 0xd1, 0xeb, 0xb0, 0xc0, 0x15, 0xba, 0xc5, 0x69, 0x32, 0x85, 0x5e, 0xfe, 0xcc, 0x41, 0x21, 0x5d, 0x2c, 0xaf, 0x8b, 0xbe, 0xd6, 0xf0, 0xa2, 0xd8, 0x06, 0xd2, 0xbe, 0x34, 0x85, 0x76, 0x0d, 0xfa, 0x8c, 0x88, 0x17, 0x95, 0x81, 0x47, 0xe2, 0x6f, 0x6f, 0x6b, 0xfd, 0x91, 0xf0, 0x87, 0x4e, 0x14, 0x49, 0xc9, 0x74, 0x56, 0x53, 0x48, 0x8c, 0x06, 0x8a, 0xb8, 0x0f, 0xd9, 0x92, 0x27, 0xb5, 0xa7, 0x9c, 0x17, 0xfd, 0x26, 0x6b, 0x7b, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2079 = { .name = "ecdsa_brainpoolp512r1_sha512_2079", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2079_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2079_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2079_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2080 for ECDSA, tcId is 130 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2080_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2080_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2080_sig[] = { 0x1b, 0x60, 0x26, 0x3f, 0x05, 0xe2, 0xe8, 0x18, 0xf6, 0x79, 0x41, 0xb1, 0xb5, 0xf5, 0xe8, 0x66, 0x8d, 0xbb, 0xa5, 0x1a, 0xaf, 0xc4, 0xdf, 0xdf, 0x9b, 0x49, 0x97, 0x9a, 0x80, 0xae, 0x0c, 0x51, 0xf2, 0xb1, 0xb2, 0x88, 0x24, 0xfd, 0x9d, 0x4b, 0x0a, 0x2d, 0x32, 0xb7, 0xe6, 0xf6, 0xe3, 0xea, 0xc5, 0x80, 0x59, 0x07, 0x52, 0xe1, 0x71, 0xbf, 0x1d, 0xed, 0x04, 0xda, 0x54, 0x17, 0xae, 0x29, 0x7a, 0xaf, 0xf6, 0x36, 0x85, 0xf5, 0x0e, 0x01, 0xfb, 0xb2, 0xd7, 0x27, 0xac, 0xa6, 0x63, 0x55, 0xc7, 0xf5, 0x24, 0xb3, 0xb0, 0xb7, 0xc5, 0x23, 0x01, 0xcb, 0x9b, 0x5a, 0xea, 0xa2, 0xb6, 0x23, 0x85, 0x42, 0x7c, 0xc6, 0xaa, 0xc1, 0x26, 0xe1, 0x65, 0x2f, 0xe0, 0xe6, 0x2c, 0xcb, 0x14, 0x79, 0xb1, 0xa4, 0x8a, 0xc7, 0xdd, 0x81, 0x73, 0xd7, 0x54, 0xd0, 0x6f, 0x50, 0x5d, 0xd4, 0x43, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2080 = { .name = "ecdsa_brainpoolp512r1_sha512_2080", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2080_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2080_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2080_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2081 for ECDSA, tcId is 131 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2081_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2081_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2081_sig[] = { 0x86, 0x03, 0x9c, 0x7f, 0x13, 0x94, 0x31, 0xe6, 0x64, 0x8b, 0xeb, 0xeb, 0x5e, 0xac, 0xa3, 0xda, 0xc0, 0x7c, 0xe8, 0x07, 0xb5, 0x1c, 0x68, 0xe7, 0x59, 0x01, 0x20, 0xfa, 0xae, 0xe7, 0xfa, 0xe4, 0x28, 0x0b, 0x33, 0xb1, 0xa4, 0xdc, 0x97, 0x92, 0x01, 0x82, 0x3b, 0x31, 0xf1, 0x50, 0xef, 0x2d, 0x02, 0x85, 0xa4, 0x58, 0x86, 0x62, 0xb7, 0xc8, 0x7e, 0x50, 0x15, 0x5d, 0x40, 0x62, 0x74, 0xa7, 0x5e, 0xd7, 0xcb, 0xcb, 0x6b, 0xa0, 0x8d, 0x0a, 0x20, 0x51, 0x4f, 0x80, 0x15, 0x03, 0xca, 0x84, 0xb4, 0xa4, 0x09, 0xce, 0x8f, 0x55, 0x65, 0x16, 0x43, 0x01, 0x39, 0x99, 0xf8, 0xd3, 0xff, 0x65, 0xa9, 0xb0, 0xbf, 0x2a, 0x7c, 0x52, 0xf8, 0x4d, 0xd2, 0x94, 0x5d, 0x22, 0x67, 0x7f, 0xa4, 0x62, 0x27, 0xa6, 0x4c, 0x73, 0x59, 0x18, 0x0f, 0xbb, 0x4b, 0x15, 0x03, 0x3e, 0xe8, 0xa8, 0xab, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2081 = { .name = "ecdsa_brainpoolp512r1_sha512_2081", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2081_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2081_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2081_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2082 for ECDSA, tcId is 132 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2082_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2082_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2082_sig[] = { 0x70, 0x16, 0x46, 0x8a, 0x36, 0xf8, 0x55, 0xab, 0xbb, 0xb4, 0xd4, 0xd8, 0x59, 0x93, 0x7f, 0x5f, 0xae, 0x56, 0xa4, 0xda, 0x2c, 0x4d, 0x27, 0x19, 0xfa, 0x77, 0xe1, 0x11, 0xa5, 0x6c, 0xd3, 0xa2, 0x1e, 0x92, 0x67, 0x12, 0x01, 0x27, 0xdb, 0x5a, 0x67, 0xaf, 0xe2, 0xb3, 0x2c, 0x7b, 0x4c, 0x3b, 0xfe, 0x15, 0xd0, 0xad, 0x44, 0xc6, 0x0c, 0x40, 0x89, 0xa4, 0xfe, 0x4f, 0xa5, 0x3c, 0xdc, 0xa9, 0x7f, 0xcb, 0x61, 0xda, 0x56, 0x1c, 0xb7, 0xcb, 0x8a, 0xba, 0x8c, 0x07, 0xe7, 0x41, 0x74, 0x23, 0xbe, 0xd2, 0xe9, 0x97, 0x84, 0xb5, 0xf6, 0x46, 0x99, 0x00, 0x14, 0xe6, 0x87, 0x25, 0x52, 0xa0, 0x7e, 0x10, 0x34, 0xd8, 0x0e, 0x69, 0xb3, 0x19, 0xb7, 0xcd, 0x2c, 0x7b, 0x15, 0x75, 0x46, 0x32, 0x3d, 0xf4, 0xa2, 0xab, 0x84, 0x33, 0xc6, 0x23, 0xeb, 0x0c, 0x77, 0xd4, 0x15, 0x9f, 0x01, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2082 = { .name = "ecdsa_brainpoolp512r1_sha512_2082", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2082_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2082_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2082_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2083 for ECDSA, tcId is 133 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2083_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2083_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2083_sig[] = { 0x43, 0xac, 0xf8, 0x4a, 0x07, 0x6d, 0x74, 0x0e, 0x99, 0x7b, 0xca, 0xa3, 0x5d, 0xec, 0x9e, 0x75, 0xdf, 0x3c, 0x0c, 0x4f, 0x25, 0xb2, 0x07, 0x5d, 0xaf, 0x07, 0x7d, 0xe6, 0x0b, 0x5b, 0x9f, 0xb7, 0xf7, 0x84, 0xa6, 0x02, 0x76, 0x99, 0xa2, 0x16, 0xa0, 0x47, 0xa2, 0x13, 0x5a, 0x3b, 0x53, 0x0f, 0xd8, 0xfa, 0x00, 0x77, 0x33, 0x8d, 0x4d, 0xc8, 0x5f, 0xbb, 0xaa, 0xce, 0xb6, 0x64, 0x10, 0x22, 0x80, 0x7a, 0x3c, 0xdf, 0xc0, 0xf3, 0x3b, 0xbe, 0x7a, 0x5a, 0x52, 0xf7, 0xe4, 0x78, 0x7c, 0x67, 0x34, 0x0d, 0x95, 0x8b, 0xaf, 0x0d, 0x95, 0x7d, 0x01, 0x5c, 0x73, 0xc9, 0xc8, 0xd0, 0xb6, 0x0f, 0x87, 0xa4, 0x26, 0xbf, 0xd2, 0xc9, 0x20, 0x9f, 0xa7, 0xf5, 0xfa, 0xb1, 0xb0, 0x5a, 0x88, 0x60, 0x85, 0x71, 0x71, 0x40, 0x07, 0x14, 0x08, 0x1b, 0x6f, 0x6e, 0x73, 0x3f, 0x38, 0x0c, 0x39, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2083 = { .name = "ecdsa_brainpoolp512r1_sha512_2083", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2083_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2083_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2083_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2084 for ECDSA, tcId is 134 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2084_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2084_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2084_sig[] = { 0x85, 0x1f, 0xa8, 0x85, 0x95, 0x49, 0x8d, 0xd5, 0xa5, 0xfb, 0x5a, 0x07, 0x10, 0xe0, 0x2f, 0xee, 0x1a, 0x02, 0x3e, 0x4b, 0x4a, 0xac, 0xfe, 0xba, 0x03, 0xf7, 0xc4, 0xc1, 0x4a, 0x8f, 0xb4, 0x33, 0x93, 0x4e, 0xa2, 0x33, 0xe5, 0xd2, 0x7d, 0xe1, 0x55, 0xda, 0xca, 0x4d, 0x4e, 0x38, 0x43, 0xf0, 0xf2, 0xcd, 0x58, 0x61, 0x70, 0x72, 0x8a, 0x2d, 0x4c, 0xe6, 0x52, 0x23, 0x58, 0x0c, 0xec, 0x66, 0x17, 0x31, 0xb6, 0xc0, 0x02, 0x00, 0xf4, 0x47, 0x4d, 0x4e, 0xa2, 0x04, 0x67, 0x75, 0xd9, 0x35, 0x0e, 0x45, 0xf2, 0xab, 0xd4, 0x5b, 0xbc, 0xc1, 0x16, 0x3c, 0x77, 0xde, 0xae, 0xaf, 0xc9, 0x42, 0x10, 0x98, 0x5b, 0x74, 0x66, 0xcf, 0x61, 0xbc, 0x78, 0xd5, 0x9b, 0xdd, 0x24, 0x39, 0xaa, 0x1c, 0x7d, 0xda, 0xc7, 0x1e, 0x00, 0x72, 0xd7, 0x3d, 0x87, 0x6a, 0x14, 0xf3, 0x26, 0x1a, 0xf7, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2084 = { .name = "ecdsa_brainpoolp512r1_sha512_2084", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2084_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2084_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2084_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2085 for ECDSA, tcId is 135 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2085_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2085_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2085_sig[] = { 0x78, 0x45, 0x6d, 0x35, 0x83, 0xb9, 0x3f, 0xba, 0x20, 0x9d, 0x6f, 0xaf, 0x73, 0x63, 0xf8, 0xe8, 0x78, 0x66, 0xcc, 0xe8, 0xf1, 0xa8, 0xf7, 0x56, 0x52, 0x0d, 0x5f, 0xc7, 0xd2, 0x2d, 0x36, 0x94, 0x08, 0x75, 0x33, 0x73, 0xa9, 0x99, 0xc8, 0xe5, 0xba, 0x58, 0x17, 0xc6, 0x1f, 0xf9, 0xa3, 0xa0, 0xa9, 0x80, 0x41, 0x21, 0xa0, 0x01, 0x04, 0xc7, 0xc1, 0x5d, 0xda, 0x9b, 0x60, 0xbd, 0x74, 0x4d, 0x67, 0xe1, 0x49, 0xae, 0x6a, 0x20, 0x6d, 0x3d, 0xee, 0xee, 0xaf, 0x78, 0xf9, 0x0f, 0xc5, 0xfc, 0x69, 0xc0, 0xc1, 0x01, 0x27, 0x35, 0x12, 0xad, 0x42, 0xd5, 0xfd, 0x39, 0x93, 0xba, 0xbc, 0x67, 0x1d, 0xe9, 0xc4, 0xaa, 0xc0, 0x15, 0x31, 0x0b, 0xe8, 0xeb, 0x6d, 0x83, 0x12, 0x1b, 0x97, 0x09, 0xb9, 0x3c, 0xd4, 0x37, 0x63, 0xbf, 0xba, 0x9d, 0xd8, 0x39, 0x76, 0xa9, 0x1a, 0x75, 0xf5, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2085 = { .name = "ecdsa_brainpoolp512r1_sha512_2085", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2085_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2085_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2085_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2086 for ECDSA, tcId is 136 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2086_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2086_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2086_sig[] = { 0x5f, 0xfc, 0x31, 0xa2, 0xe8, 0x16, 0x87, 0x48, 0xc6, 0x29, 0xe0, 0x69, 0x01, 0x61, 0xcc, 0x62, 0x49, 0x68, 0x0c, 0x03, 0xde, 0x5c, 0xba, 0xd4, 0x4b, 0x12, 0x1a, 0xa8, 0x56, 0xf5, 0x57, 0xcf, 0x9a, 0x84, 0x98, 0x3e, 0x49, 0x3f, 0x40, 0xe2, 0xc0, 0xf5, 0x98, 0x73, 0x8b, 0x0f, 0x6e, 0xc8, 0x57, 0x5b, 0x66, 0xe4, 0xc4, 0xe5, 0x9b, 0x6b, 0x63, 0x99, 0x60, 0x58, 0xe4, 0xac, 0xa2, 0xaa, 0x41, 0xe0, 0x85, 0x7e, 0x6e, 0x95, 0x9c, 0x55, 0xbd, 0x80, 0x76, 0x29, 0x36, 0x1a, 0xc4, 0x1d, 0xde, 0x64, 0x0f, 0xea, 0xcd, 0xc2, 0x12, 0xd7, 0xcd, 0x2e, 0x1d, 0xcb, 0x9a, 0x3a, 0x9a, 0x4e, 0x93, 0x3c, 0xf8, 0xe9, 0x1f, 0xc7, 0xb1, 0x25, 0x7b, 0x7a, 0x4f, 0x96, 0x96, 0x28, 0x3e, 0x06, 0xe3, 0x2f, 0x97, 0x69, 0x87, 0xdf, 0x86, 0xda, 0x2c, 0x87, 0x97, 0x8b, 0x34, 0xcc, 0x5e, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2086 = { .name = "ecdsa_brainpoolp512r1_sha512_2086", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2086_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2086_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2086_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2087 for ECDSA, tcId is 137 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2087_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2087_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2087_sig[] = { 0x31, 0x49, 0x2b, 0x08, 0x88, 0xf6, 0xff, 0xf5, 0x2d, 0x24, 0x7b, 0xee, 0x17, 0x34, 0xc8, 0x42, 0x5c, 0x35, 0x60, 0x6c, 0x9d, 0x8c, 0xc6, 0x3d, 0xf3, 0x82, 0xdc, 0xe5, 0x22, 0x4c, 0x8d, 0x55, 0xff, 0x2b, 0xa6, 0xcf, 0xa2, 0x9d, 0x09, 0x50, 0x01, 0x24, 0xe8, 0x57, 0x6a, 0xbb, 0xd0, 0xd7, 0x10, 0xba, 0xeb, 0x09, 0x9e, 0xfe, 0xf0, 0x2f, 0xe8, 0x10, 0xd4, 0xa1, 0x9d, 0xc2, 0xca, 0x44, 0x24, 0xd3, 0xb3, 0x20, 0xde, 0xf3, 0x94, 0x3a, 0xc8, 0x56, 0x68, 0x0e, 0x00, 0x89, 0x1c, 0x28, 0xda, 0x01, 0x18, 0x40, 0xaf, 0x29, 0xf4, 0xf2, 0xc8, 0x88, 0x4a, 0x02, 0x24, 0x63, 0xa1, 0xda, 0x9d, 0xbc, 0xcb, 0x11, 0xbd, 0x4b, 0x72, 0x0e, 0x72, 0xb9, 0xaf, 0xa8, 0xb6, 0xb8, 0x71, 0xa8, 0x6f, 0x12, 0xf8, 0x75, 0xcc, 0x1c, 0x09, 0x07, 0x7f, 0xcc, 0x15, 0xa9, 0x0f, 0x40, 0x2a, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2087 = { .name = "ecdsa_brainpoolp512r1_sha512_2087", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2087_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2087_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2087_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2088 for ECDSA, tcId is 138 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2088_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2088_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2088_sig[] = { 0x8e, 0xe3, 0xad, 0x5b, 0x61, 0xde, 0x2a, 0x1e, 0x3a, 0x10, 0xaa, 0xa2, 0xb5, 0xb7, 0xc1, 0xf9, 0xf7, 0x90, 0xeb, 0xcd, 0x11, 0x0a, 0xfd, 0xcc, 0x08, 0xac, 0x9b, 0x70, 0xfe, 0x75, 0x30, 0xfd, 0xa9, 0xce, 0x94, 0xe4, 0x40, 0x58, 0x74, 0x0e, 0x17, 0xb7, 0x30, 0x83, 0x31, 0xdd, 0xb0, 0xce, 0xb0, 0xbc, 0x69, 0xb9, 0x49, 0x44, 0x21, 0x22, 0x71, 0x35, 0x82, 0xe4, 0x94, 0x1a, 0xec, 0xd3, 0x32, 0x5d, 0xfe, 0xfb, 0x8f, 0x46, 0x2d, 0x5e, 0x7d, 0xc4, 0x12, 0x4e, 0xf0, 0x71, 0x9f, 0xef, 0x76, 0x49, 0xd4, 0x70, 0xf3, 0xf1, 0x55, 0x51, 0x72, 0x48, 0x4b, 0x03, 0x04, 0xe7, 0x5b, 0xa1, 0x22, 0x80, 0x2d, 0x1a, 0x85, 0x97, 0xb4, 0x62, 0xb3, 0x45, 0xf3, 0x4e, 0x17, 0xdf, 0x4a, 0x3c, 0x25, 0xea, 0xea, 0x26, 0x9e, 0xa1, 0x1e, 0xf5, 0xb0, 0x42, 0x44, 0x0b, 0x5c, 0xab, 0xb7, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2088 = { .name = "ecdsa_brainpoolp512r1_sha512_2088", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2088_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2088_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2088_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2089 for ECDSA, tcId is 139 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2089_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2089_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2089_sig[] = { 0x55, 0x6b, 0x51, 0x39, 0x02, 0x29, 0x14, 0x50, 0xe9, 0xa2, 0xb1, 0x26, 0xb8, 0x58, 0xe1, 0xe2, 0xbb, 0x0a, 0x23, 0xe2, 0xee, 0x90, 0x46, 0x77, 0xd9, 0xe5, 0xea, 0xc8, 0x8a, 0x25, 0xf0, 0x14, 0x08, 0xb8, 0xf5, 0x12, 0xd9, 0x13, 0x52, 0xc4, 0x3c, 0x51, 0x9d, 0x9d, 0x74, 0x57, 0x0b, 0x3d, 0x78, 0x36, 0x6d, 0xf4, 0x37, 0xa4, 0x29, 0x8b, 0x31, 0x1a, 0x39, 0xa6, 0x3c, 0x44, 0x2a, 0xbd, 0x7b, 0x84, 0x26, 0x25, 0x87, 0x89, 0x97, 0x1c, 0x56, 0xc5, 0x3d, 0x99, 0x7d, 0xcf, 0xa1, 0x27, 0x05, 0x43, 0xbc, 0x9f, 0x7c, 0x42, 0xca, 0x2e, 0xa2, 0xfa, 0xc0, 0x88, 0x52, 0xc4, 0x72, 0xbb, 0x2b, 0x28, 0x4a, 0xab, 0x59, 0xa4, 0xba, 0xaf, 0x0f, 0x2c, 0x98, 0x6a, 0x2c, 0x68, 0xfd, 0x3e, 0x6f, 0xc9, 0x1f, 0x1d, 0x28, 0xbe, 0x9b, 0x75, 0x77, 0xf7, 0x78, 0x4c, 0x58, 0x7f, 0x37, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2089 = { .name = "ecdsa_brainpoolp512r1_sha512_2089", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2089_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2089_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2089_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2090 for ECDSA, tcId is 140 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2090_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2090_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2090_sig[] = { 0x60, 0x55, 0x7b, 0x79, 0x3e, 0xfc, 0x6f, 0xd8, 0xe2, 0x2f, 0x6f, 0xb8, 0x80, 0xb9, 0xb2, 0x4f, 0x4c, 0xe9, 0x5b, 0x09, 0x0f, 0x69, 0x4f, 0xab, 0x28, 0x66, 0xbc, 0x18, 0xdd, 0x85, 0xed, 0x5f, 0x47, 0x9f, 0xa8, 0x96, 0xd8, 0x40, 0x92, 0xda, 0xdc, 0xb4, 0xb9, 0x68, 0x6a, 0xd8, 0x07, 0x4d, 0x69, 0xbe, 0x84, 0x29, 0xea, 0xad, 0x63, 0xd0, 0x3c, 0x63, 0xc6, 0x21, 0x7f, 0xd7, 0xcc, 0x71, 0x78, 0x19, 0x87, 0x9f, 0x51, 0x05, 0xf3, 0x0c, 0xe8, 0xef, 0xd8, 0x7c, 0x04, 0x42, 0x79, 0xae, 0x9e, 0xac, 0x32, 0x55, 0x32, 0x7d, 0x9a, 0x8b, 0x08, 0x3e, 0x9d, 0xcd, 0xbb, 0xda, 0x1e, 0x01, 0xec, 0xbc, 0x9e, 0xa6, 0x90, 0xbf, 0xab, 0x77, 0x1b, 0x63, 0x31, 0x8a, 0x96, 0x49, 0x42, 0xf4, 0x57, 0x78, 0x47, 0xf5, 0x71, 0xb6, 0x79, 0x36, 0x33, 0x11, 0xce, 0x1b, 0xd2, 0x0a, 0x2a, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2090 = { .name = "ecdsa_brainpoolp512r1_sha512_2090", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2090_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2090_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2090_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2091 for ECDSA, tcId is 141 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2091_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2091_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2091_sig[] = { 0x96, 0xa8, 0xb7, 0x36, 0xb4, 0xd1, 0xc2, 0xe4, 0x01, 0x32, 0xb0, 0xc1, 0xdc, 0x35, 0x1c, 0x70, 0x0b, 0x62, 0xdb, 0x81, 0xe8, 0xbb, 0x39, 0xaa, 0x71, 0x7a, 0x1e, 0xc0, 0x25, 0x8e, 0xb9, 0x2d, 0xa8, 0x19, 0xdf, 0x01, 0x17, 0xa7, 0x04, 0x7e, 0x6c, 0x33, 0x54, 0x9d, 0x38, 0x48, 0xd6, 0xee, 0xa3, 0xf7, 0x25, 0xaa, 0x39, 0xb0, 0x32, 0x22, 0x46, 0x3f, 0xf2, 0x46, 0xe8, 0x96, 0x64, 0x21, 0x6b, 0xb7, 0xc1, 0xe5, 0xfd, 0xe9, 0x8b, 0x5e, 0xab, 0x97, 0x61, 0x93, 0x68, 0x2c, 0xea, 0x86, 0x48, 0xdf, 0x80, 0xa6, 0x49, 0xc2, 0xad, 0x68, 0xe0, 0xb2, 0xed, 0xa5, 0xe2, 0xbe, 0xe9, 0xaa, 0x9b, 0x77, 0x3f, 0x4d, 0x62, 0x48, 0x6e, 0xdb, 0xb0, 0x9e, 0xcf, 0x43, 0x4c, 0x1a, 0xe0, 0xdb, 0xa2, 0x73, 0xf6, 0x8b, 0xfa, 0x0f, 0x98, 0x5c, 0xed, 0x5d, 0x7b, 0x01, 0x20, 0xed, 0x88, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2091 = { .name = "ecdsa_brainpoolp512r1_sha512_2091", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2091_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2091_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2091_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2092 for ECDSA, tcId is 142 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2092_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2092_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2092_sig[] = { 0x4d, 0x9d, 0x07, 0xd3, 0xa4, 0x5f, 0x1c, 0x91, 0x36, 0x34, 0x71, 0x3d, 0x7b, 0xa7, 0x4f, 0xfb, 0xd3, 0xcd, 0x11, 0x4a, 0xe7, 0x5f, 0x17, 0x8f, 0xe7, 0xac, 0x7d, 0xef, 0xce, 0x73, 0x14, 0x81, 0x8b, 0x61, 0x67, 0x76, 0x0c, 0xb6, 0xe7, 0xd0, 0xa2, 0x4f, 0x42, 0x7d, 0x8e, 0xee, 0x60, 0x12, 0xb5, 0x2c, 0x68, 0x38, 0x83, 0xbd, 0x97, 0xe3, 0x51, 0x40, 0x5c, 0x93, 0x7e, 0x4f, 0x6e, 0xda, 0x27, 0xbc, 0xb6, 0x29, 0xe3, 0x10, 0x66, 0xdd, 0x6a, 0x4c, 0x65, 0x43, 0x2d, 0x39, 0xc2, 0x5a, 0xdd, 0x00, 0xbf, 0xa3, 0x69, 0xd4, 0x8b, 0x0e, 0x48, 0x20, 0xa1, 0x9f, 0x08, 0x1e, 0x9e, 0xda, 0x97, 0x78, 0x75, 0x63, 0x6a, 0x8c, 0xf9, 0x84, 0x01, 0x22, 0xd5, 0xe1, 0xbb, 0x3c, 0xea, 0x5f, 0xef, 0xe0, 0x20, 0x3f, 0x60, 0x16, 0x16, 0xd6, 0xae, 0xc8, 0x20, 0xa1, 0x58, 0x05, 0x90, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2092 = { .name = "ecdsa_brainpoolp512r1_sha512_2092", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2092_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2092_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2092_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2093 for ECDSA, tcId is 143 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2093_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2093_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2093_sig[] = { 0x91, 0x51, 0xeb, 0x10, 0x14, 0x55, 0x7b, 0x00, 0xc8, 0xf2, 0x88, 0x92, 0xa2, 0x91, 0x1f, 0x5d, 0x67, 0xd5, 0x93, 0x96, 0xa9, 0x3d, 0xa4, 0x32, 0x7d, 0x00, 0x59, 0xfb, 0xa7, 0x67, 0xb9, 0x7d, 0xed, 0xd5, 0x2e, 0x0c, 0xc8, 0x5e, 0x0b, 0xf8, 0x98, 0x8c, 0x7e, 0xec, 0x23, 0x10, 0x08, 0xa0, 0xf9, 0x72, 0xd5, 0x11, 0x39, 0xa2, 0xfe, 0x12, 0xb7, 0x55, 0x91, 0xc0, 0x71, 0xfc, 0xe9, 0xec, 0xaa, 0x89, 0xb5, 0x92, 0xfd, 0x30, 0x93, 0x27, 0xe6, 0xc9, 0x11, 0xe2, 0xdf, 0x0d, 0x95, 0xfe, 0x99, 0xbf, 0x01, 0xde, 0x32, 0x6a, 0x9f, 0xf0, 0x66, 0x48, 0xa3, 0x21, 0xa3, 0x63, 0xa7, 0x9e, 0x7b, 0xd5, 0xb0, 0x51, 0xe0, 0x16, 0x0f, 0xef, 0x18, 0xab, 0x81, 0x40, 0x31, 0xa0, 0x76, 0x01, 0xa6, 0x78, 0x3c, 0xc4, 0xef, 0xc6, 0x8c, 0x68, 0x1d, 0x2d, 0xf6, 0x48, 0xfb, 0xc5, 0x47, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2093 = { .name = "ecdsa_brainpoolp512r1_sha512_2093", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2093_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2093_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2093_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2094 for ECDSA, tcId is 144 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2094_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2094_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2094_sig[] = { 0x37, 0x4e, 0x3d, 0x3b, 0xff, 0x57, 0xb2, 0xa0, 0xf9, 0x24, 0xaa, 0x19, 0xed, 0x2c, 0x8d, 0x44, 0x42, 0x9f, 0x8f, 0x8a, 0x62, 0x93, 0x4a, 0xda, 0x5c, 0x0b, 0xd8, 0x3c, 0x2c, 0xa9, 0xef, 0x25, 0x38, 0xf1, 0x86, 0xf2, 0x86, 0x36, 0x80, 0x18, 0x3c, 0x51, 0x32, 0x4e, 0xf4, 0xca, 0xc5, 0xa9, 0x45, 0xdc, 0xb9, 0x08, 0xac, 0x40, 0xf4, 0xdb, 0xcb, 0x1d, 0x20, 0x45, 0xca, 0xc6, 0x58, 0x54, 0x2b, 0xa1, 0xc3, 0x96, 0x03, 0x86, 0x17, 0x77, 0x23, 0x80, 0x9d, 0xdd, 0xab, 0x3f, 0x80, 0x6a, 0x10, 0xda, 0x5e, 0x74, 0xc6, 0x7c, 0x9c, 0x46, 0x0b, 0x6c, 0x41, 0x63, 0xf3, 0x72, 0x30, 0xc3, 0x55, 0xcd, 0x4b, 0x09, 0x8a, 0xad, 0x23, 0xda, 0x52, 0x4e, 0x1e, 0x70, 0x40, 0x36, 0x3f, 0x4d, 0x72, 0x8f, 0xaf, 0xe4, 0xd9, 0x52, 0xad, 0x5f, 0xf1, 0x37, 0x0c, 0x10, 0x10, 0xef, 0xbf, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2094 = { .name = "ecdsa_brainpoolp512r1_sha512_2094", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2094_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2094_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2094_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2095 for ECDSA, tcId is 145 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2095_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2095_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2095_sig[] = { 0x60, 0xf1, 0xa5, 0xbc, 0x4a, 0x35, 0xf0, 0x01, 0x11, 0x4e, 0x5d, 0x71, 0x05, 0xc2, 0x1d, 0x6e, 0x51, 0x61, 0xad, 0xeb, 0x5d, 0x1d, 0x88, 0x25, 0x17, 0x91, 0xfd, 0x08, 0xe0, 0x19, 0x2a, 0x6f, 0xc9, 0x4e, 0xde, 0x21, 0x09, 0x28, 0x83, 0x89, 0xb3, 0xea, 0x9d, 0x00, 0x57, 0x5b, 0x66, 0xec, 0x0c, 0xee, 0x5f, 0x1e, 0x53, 0x1c, 0x05, 0xc0, 0x88, 0x54, 0x27, 0xa3, 0xbd, 0x65, 0xd6, 0x47, 0x5f, 0x62, 0xc3, 0x5c, 0xfb, 0xaa, 0x2a, 0xef, 0xde, 0xc1, 0x13, 0x33, 0x5f, 0xc5, 0xf5, 0x64, 0x6e, 0xd8, 0x58, 0xda, 0x0b, 0xe4, 0x85, 0x21, 0x77, 0x13, 0x5d, 0x7e, 0xe6, 0x2c, 0x12, 0x20, 0xce, 0x44, 0x7c, 0xb6, 0xab, 0x26, 0xcb, 0xf5, 0x43, 0x21, 0x5b, 0x2c, 0x15, 0xaf, 0x42, 0xd9, 0x5a, 0x51, 0x5b, 0x72, 0x50, 0xfb, 0x5e, 0xd7, 0x92, 0x04, 0xa5, 0x7c, 0xb0, 0x4f, 0x65, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2095 = { .name = "ecdsa_brainpoolp512r1_sha512_2095", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2095_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2095_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2095_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2096 for ECDSA, tcId is 146 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2096_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2096_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2096_sig[] = { 0x4b, 0xec, 0xd6, 0x57, 0xfd, 0x4c, 0x98, 0x66, 0xfb, 0xdd, 0xa4, 0xcc, 0x07, 0xc4, 0xcd, 0x52, 0x89, 0x64, 0xb1, 0x20, 0xb4, 0x13, 0x7a, 0xfe, 0x1c, 0x14, 0x27, 0x58, 0xd0, 0x48, 0x03, 0x98, 0xa1, 0xfe, 0x6e, 0x20, 0x3b, 0x56, 0x46, 0x57, 0xc9, 0x9e, 0xf0, 0x3a, 0x04, 0x4f, 0x89, 0xc4, 0xa5, 0xbc, 0xfb, 0x3c, 0xfa, 0x66, 0x59, 0x67, 0x1f, 0xcf, 0xa1, 0xd8, 0x38, 0x4b, 0x82, 0xd9, 0xa1, 0x64, 0x92, 0x56, 0xd0, 0xc4, 0x3f, 0x7f, 0x6c, 0x19, 0x26, 0x77, 0x41, 0x73, 0x89, 0x03, 0xd8, 0x29, 0x76, 0xcc, 0x3a, 0x67, 0x8b, 0x48, 0x0c, 0x50, 0xb5, 0x2a, 0xea, 0x3d, 0x49, 0x3a, 0x80, 0xc2, 0x0f, 0xfd, 0xe7, 0xb5, 0x7f, 0x92, 0x91, 0xb2, 0x2b, 0xe5, 0xb4, 0x13, 0x0d, 0xce, 0xfc, 0x82, 0xfe, 0xe7, 0x0b, 0xc3, 0xf1, 0xf3, 0x08, 0xab, 0x0a, 0x84, 0x03, 0x82, 0x8e, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2096 = { .name = "ecdsa_brainpoolp512r1_sha512_2096", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2096_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2096_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2096_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2097 for ECDSA, tcId is 147 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2097_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2097_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2097_sig[] = { 0x6b, 0x3f, 0x15, 0x33, 0xf5, 0x3f, 0xda, 0x74, 0x48, 0xa7, 0x10, 0xa4, 0xd0, 0xe3, 0xd8, 0x27, 0x8c, 0x96, 0xd6, 0x56, 0x63, 0x5a, 0x8e, 0xc9, 0xc8, 0x60, 0x85, 0xed, 0x23, 0x37, 0xb7, 0x33, 0x68, 0xf5, 0xc5, 0x93, 0x4a, 0x46, 0xd5, 0x9d, 0xc7, 0x9e, 0xe6, 0xc3, 0x34, 0x9f, 0xc7, 0x88, 0x74, 0xc0, 0x5f, 0x5e, 0x5e, 0xf8, 0x59, 0xea, 0xb0, 0x3d, 0xd8, 0x58, 0xd2, 0xc2, 0x8e, 0x85, 0x25, 0xcf, 0x5a, 0x2f, 0x26, 0x38, 0xeb, 0xf2, 0xe7, 0x62, 0x38, 0xbb, 0x54, 0xda, 0xb1, 0xe9, 0x6e, 0x9d, 0xe0, 0xd6, 0x7d, 0x55, 0x79, 0x15, 0x1e, 0x22, 0x56, 0xc9, 0x52, 0x7e, 0xbd, 0x4d, 0x38, 0x57, 0x73, 0x1f, 0xae, 0x84, 0xab, 0x3b, 0x56, 0xb7, 0x4b, 0xc8, 0x9c, 0x4a, 0x99, 0x63, 0x9b, 0x0c, 0x68, 0x7b, 0x2a, 0x13, 0x3b, 0xf7, 0x70, 0x29, 0xd5, 0xab, 0xe4, 0xa5, 0xfd, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2097 = { .name = "ecdsa_brainpoolp512r1_sha512_2097", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2097_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2097_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2097_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2098 for ECDSA, tcId is 148 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2098_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2098_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2098_sig[] = { 0x6f, 0xf4, 0xbe, 0x5d, 0xf3, 0xf1, 0x2c, 0xf2, 0xcb, 0x78, 0x16, 0x98, 0x5e, 0x9b, 0xa0, 0x09, 0x9c, 0xf5, 0x89, 0xa2, 0xa2, 0x23, 0x67, 0xab, 0xe0, 0x19, 0x32, 0x87, 0x89, 0xad, 0x50, 0x92, 0x10, 0x7d, 0x12, 0xdf, 0xed, 0x83, 0x52, 0xa1, 0xdd, 0x4a, 0xd9, 0x75, 0xe8, 0x61, 0xab, 0x9f, 0x9c, 0x64, 0xcb, 0x6b, 0x5b, 0xc9, 0x8c, 0x57, 0x86, 0x24, 0x7b, 0xdb, 0x4e, 0xa4, 0x82, 0x9d, 0x5e, 0xff, 0x29, 0xe6, 0xe2, 0x0e, 0x9e, 0xbf, 0x1a, 0xc6, 0x02, 0x58, 0x9c, 0x5b, 0xa6, 0x4b, 0x20, 0x20, 0xd1, 0xf2, 0xfe, 0xe8, 0x3e, 0x6d, 0x0c, 0x9c, 0xdd, 0xa1, 0xaf, 0x8d, 0x7c, 0x0a, 0xb8, 0xe5, 0xff, 0x05, 0x9e, 0xa4, 0x57, 0xb9, 0x03, 0xd2, 0xfd, 0xd4, 0x8f, 0xf8, 0x4a, 0x32, 0xe3, 0x38, 0xf0, 0x27, 0x05, 0x15, 0xfb, 0x0b, 0xa4, 0x4c, 0x00, 0x95, 0x24, 0xab, 0x78, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2098 = { .name = "ecdsa_brainpoolp512r1_sha512_2098", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2098_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2098_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2098_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2099 for ECDSA, tcId is 149 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2099_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2099_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2099_sig[] = { 0x56, 0xb9, 0x1c, 0xe3, 0x7f, 0x56, 0x0c, 0x1c, 0x65, 0x57, 0xf7, 0xfe, 0x00, 0x29, 0x75, 0x4f, 0x87, 0xc8, 0xf1, 0x0d, 0x92, 0xdc, 0x52, 0x5d, 0xfc, 0xb4, 0xcd, 0x5a, 0x96, 0x6b, 0xe0, 0xe8, 0xd9, 0x9f, 0xc0, 0x08, 0x51, 0xe8, 0x5b, 0x85, 0x82, 0x7d, 0x31, 0xc8, 0x61, 0x03, 0x4c, 0x20, 0xd2, 0xac, 0xb4, 0x9e, 0x4f, 0x1e, 0xeb, 0xd8, 0xe0, 0xd0, 0x21, 0x5d, 0x54, 0xdb, 0x2b, 0x11, 0x7c, 0xec, 0x29, 0x70, 0xfe, 0x9f, 0x29, 0x3c, 0x9d, 0x3a, 0x67, 0x2d, 0x37, 0x77, 0xff, 0x0e, 0xdf, 0x72, 0x85, 0x45, 0xbc, 0xbe, 0x00, 0x5c, 0x17, 0x8e, 0x0b, 0x40, 0x5f, 0xe4, 0x22, 0x3a, 0xab, 0x60, 0xdd, 0x44, 0x52, 0x1b, 0xe3, 0x21, 0x67, 0x2e, 0x81, 0x44, 0x58, 0x92, 0x91, 0x11, 0x30, 0xe6, 0x02, 0xa4, 0xb8, 0x35, 0x9b, 0xb3, 0x63, 0x2f, 0x90, 0x99, 0x18, 0xe0, 0x2a, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2099 = { .name = "ecdsa_brainpoolp512r1_sha512_2099", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2099_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2099_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2099_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2100 for ECDSA, tcId is 150 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2100_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2100_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2100_sig[] = { 0x49, 0xcd, 0x57, 0xe2, 0x5c, 0xfb, 0x68, 0x04, 0x37, 0x05, 0x18, 0x49, 0x69, 0xe3, 0x09, 0x06, 0x69, 0x86, 0x05, 0x7d, 0x9c, 0x0b, 0x7a, 0x2f, 0x87, 0x76, 0x6a, 0xad, 0xcf, 0x76, 0xed, 0xa8, 0x02, 0x8d, 0x4e, 0xce, 0xac, 0xec, 0xed, 0x91, 0x53, 0xac, 0x97, 0x60, 0xf4, 0x75, 0x14, 0xdd, 0xdd, 0x33, 0x47, 0x3a, 0xf0, 0x9f, 0xf0, 0xdf, 0xc0, 0x00, 0xd5, 0x31, 0x30, 0xa2, 0x01, 0x0e, 0x73, 0xd5, 0x34, 0xbd, 0x76, 0x52, 0x26, 0x81, 0xe7, 0x11, 0x09, 0xc0, 0x7c, 0xb1, 0x7b, 0x09, 0xe6, 0x61, 0xc1, 0x1c, 0x51, 0x9b, 0x20, 0xfe, 0x6d, 0xb8, 0x0d, 0x47, 0x75, 0x6f, 0x84, 0x48, 0x40, 0xb7, 0xbe, 0x6b, 0x95, 0xc5, 0xdb, 0x49, 0x7e, 0x70, 0x6c, 0x5f, 0x58, 0xc7, 0x8a, 0x35, 0x0a, 0x8e, 0x80, 0x2e, 0xff, 0xbd, 0x55, 0xb5, 0x96, 0x7b, 0xdf, 0x87, 0xce, 0x75, 0xf0, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2100 = { .name = "ecdsa_brainpoolp512r1_sha512_2100", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2100_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2100_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2100_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2101 for ECDSA, tcId is 151 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2101_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2101_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2101_sig[] = { 0x68, 0x0d, 0x7c, 0x82, 0xbb, 0xff, 0x29, 0x1b, 0xb7, 0x1f, 0x2d, 0xa5, 0x32, 0xf1, 0xa9, 0x31, 0xeb, 0x39, 0xa2, 0x22, 0x33, 0x6d, 0x5e, 0x40, 0x65, 0x7c, 0xc2, 0xfb, 0x12, 0x6b, 0x22, 0x47, 0xcf, 0x2d, 0xae, 0x23, 0x35, 0x55, 0x56, 0x4e, 0xa4, 0x42, 0x4e, 0xc3, 0x79, 0x12, 0xb3, 0x7e, 0x88, 0x66, 0xd4, 0x5c, 0x39, 0x3c, 0x6a, 0x91, 0xce, 0x13, 0x2d, 0xbc, 0x9f, 0x46, 0x63, 0x5d, 0x1f, 0x0c, 0x51, 0x58, 0x56, 0xa6, 0x2a, 0xf6, 0x8f, 0x0f, 0x23, 0x14, 0x5a, 0xad, 0x92, 0xa7, 0x7d, 0x71, 0x07, 0xd8, 0xd8, 0xaa, 0x46, 0xca, 0xbc, 0xc7, 0x2b, 0x2c, 0x08, 0x21, 0x85, 0xdb, 0x1d, 0x75, 0xd1, 0x54, 0x6a, 0x4e, 0x6c, 0xf5, 0x27, 0xc6, 0x9f, 0xe5, 0x2c, 0xb7, 0x6e, 0xe1, 0x5e, 0xaa, 0x62, 0x04, 0x44, 0xb6, 0xf2, 0x72, 0xb4, 0x02, 0x76, 0x35, 0xeb, 0xe8, 0x36, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2101 = { .name = "ecdsa_brainpoolp512r1_sha512_2101", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2101_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2101_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2101_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2102 for ECDSA, tcId is 152 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2102_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2102_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2102_sig[] = { 0x59, 0xff, 0xf5, 0xae, 0x97, 0x29, 0xb2, 0x1c, 0x38, 0x9a, 0x12, 0x70, 0x23, 0x60, 0xac, 0xa2, 0x57, 0x5e, 0xd4, 0xa4, 0x49, 0x22, 0xe1, 0x7d, 0xe5, 0x7c, 0xe9, 0x39, 0x79, 0xf1, 0x95, 0x56, 0xde, 0x0e, 0x25, 0x58, 0x1c, 0xfc, 0x98, 0xc1, 0xa6, 0x8e, 0xf0, 0x01, 0xa7, 0xf8, 0xd1, 0x57, 0xe7, 0x59, 0x1b, 0xae, 0xa4, 0x4e, 0x00, 0x3c, 0x45, 0x4e, 0x94, 0x1b, 0xbf, 0x9e, 0x5f, 0x7e, 0x10, 0x91, 0x96, 0xa8, 0x0b, 0x32, 0xa0, 0xa5, 0x7a, 0x7b, 0xcd, 0x3a, 0x6c, 0xe7, 0xf9, 0x25, 0xd1, 0x4f, 0x51, 0xc6, 0x15, 0x2a, 0xd8, 0x66, 0xd3, 0x37, 0x30, 0x08, 0xd6, 0x50, 0xb5, 0xaf, 0x7a, 0x25, 0xe2, 0xbf, 0xbd, 0x59, 0xb6, 0x37, 0x1f, 0xff, 0xec, 0xfd, 0xe1, 0x16, 0xd2, 0xa3, 0x6a, 0x8d, 0x1f, 0xe9, 0x17, 0x8b, 0xa3, 0xb3, 0xf3, 0x7c, 0x09, 0xb2, 0x71, 0xa5, 0xb0, 0x50, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2102 = { .name = "ecdsa_brainpoolp512r1_sha512_2102", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2102_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2102_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2102_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2103 for ECDSA, tcId is 153 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2103_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2103_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2103_sig[] = { 0x66, 0xef, 0x24, 0x6c, 0x7b, 0x80, 0xb5, 0x6e, 0x0e, 0xa7, 0x83, 0xac, 0x73, 0x71, 0x51, 0xc7, 0x36, 0x10, 0x21, 0x8d, 0x00, 0xc9, 0x36, 0xf4, 0xc1, 0x8d, 0x5a, 0x6c, 0x44, 0xf3, 0x5e, 0xe1, 0x9d, 0x8a, 0xa1, 0x57, 0x65, 0xdf, 0xfd, 0xfe, 0x51, 0xaa, 0xa3, 0x31, 0x12, 0x3e, 0xe4, 0xc5, 0xc8, 0xd6, 0x72, 0x63, 0xf6, 0x95, 0x56, 0x1e, 0x7c, 0xf7, 0xe6, 0x48, 0xef, 0xb7, 0xa4, 0xf7, 0x2a, 0x0a, 0xc4, 0x9a, 0x98, 0x4c, 0xbd, 0xf6, 0x6c, 0x59, 0xc6, 0x5d, 0xee, 0x9a, 0x3c, 0xc5, 0x81, 0x6b, 0x78, 0x82, 0xaf, 0x45, 0x34, 0x1e, 0x9d, 0xc5, 0x14, 0xae, 0xfa, 0xec, 0xd2, 0x46, 0x8c, 0xd5, 0xb9, 0x67, 0xa5, 0x36, 0x54, 0x88, 0x00, 0x46, 0xe1, 0x8e, 0x1a, 0xdc, 0x99, 0x1f, 0xe1, 0xb7, 0xbc, 0x0e, 0x53, 0x79, 0x17, 0x9b, 0xa3, 0xdc, 0x84, 0xbc, 0xee, 0x12, 0xc6, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2103 = { .name = "ecdsa_brainpoolp512r1_sha512_2103", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2103_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2103_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2103_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2104 for ECDSA, tcId is 154 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2104_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2104_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2104_sig[] = { 0x74, 0x69, 0x76, 0x7e, 0x75, 0x12, 0xc7, 0xd2, 0x94, 0xd8, 0x32, 0x90, 0x87, 0x1b, 0x5c, 0xb7, 0xec, 0x5d, 0x6e, 0xbf, 0x05, 0xb2, 0xd7, 0x65, 0x18, 0x39, 0x72, 0x9b, 0x87, 0x27, 0x81, 0x8e, 0x9e, 0x53, 0x08, 0x75, 0xe9, 0x01, 0xb7, 0x59, 0xe9, 0x2c, 0x79, 0x86, 0x10, 0xd4, 0x47, 0x35, 0x91, 0xb2, 0xcf, 0xb8, 0x74, 0x28, 0xa2, 0xf0, 0xb1, 0xaf, 0xb2, 0x5d, 0x25, 0xf9, 0x86, 0x8c, 0x13, 0xaa, 0x65, 0xad, 0x34, 0x38, 0x8e, 0xe1, 0x02, 0xce, 0x4f, 0xe0, 0xf3, 0x80, 0x1d, 0xb5, 0xf1, 0xbe, 0x38, 0xb8, 0xf5, 0x91, 0x94, 0x6a, 0xe5, 0x5b, 0xe7, 0x15, 0x9a, 0x2e, 0x04, 0x7d, 0x03, 0x76, 0x18, 0xce, 0x45, 0xa0, 0x98, 0x0c, 0x9f, 0x68, 0x6a, 0x7b, 0xee, 0x7f, 0xe8, 0xc7, 0x88, 0x22, 0x62, 0xc4, 0xf7, 0xc6, 0x60, 0x85, 0x96, 0xe1, 0x29, 0x00, 0xce, 0xa6, 0x20, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2104 = { .name = "ecdsa_brainpoolp512r1_sha512_2104", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2104_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2104_msg, .msglen = 8, .sig = ecdsa_brainpoolp512r1_sha512_2104_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2105 for ECDSA, tcId is 155 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2105_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2105_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2105_sig[] = { 0x2d, 0xde, 0x8d, 0xae, 0x88, 0x3b, 0x5f, 0x5b, 0x82, 0x22, 0xb2, 0x61, 0xff, 0x19, 0x8b, 0x0d, 0x46, 0x15, 0xb2, 0x23, 0x73, 0x53, 0x80, 0x03, 0x1e, 0x37, 0x60, 0x3d, 0x97, 0x66, 0xc3, 0xa6, 0x60, 0xcc, 0xba, 0xe3, 0x50, 0xd4, 0x09, 0x94, 0xeb, 0xb4, 0x9a, 0x09, 0xd8, 0xc9, 0x02, 0xbe, 0xac, 0xf8, 0xf0, 0xde, 0x1c, 0xa2, 0xb0, 0xa4, 0xa3, 0x1d, 0x00, 0xb5, 0x6b, 0xd8, 0x45, 0xa4, 0x66, 0x04, 0xfd, 0xe7, 0x0a, 0xc7, 0x61, 0x42, 0x01, 0x33, 0x62, 0x4d, 0xef, 0x5c, 0x44, 0xb5, 0xd5, 0xa5, 0x79, 0x5d, 0x44, 0x12, 0xdd, 0x73, 0x98, 0x3a, 0xef, 0x62, 0x90, 0x80, 0xae, 0x47, 0x63, 0x64, 0x97, 0x01, 0x8c, 0xd5, 0xd3, 0x1c, 0x8b, 0x85, 0xb2, 0xb0, 0x3d, 0x72, 0x17, 0x14, 0x88, 0x42, 0x9e, 0xaf, 0x4b, 0x82, 0x47, 0xaa, 0x6b, 0x01, 0x04, 0x4c, 0x0a, 0xe4, 0x61, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2105 = { .name = "ecdsa_brainpoolp512r1_sha512_2105", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2105_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2105_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2105_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2106 for ECDSA, tcId is 156 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2106_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2106_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2106_sig[] = { 0x24, 0x5d, 0xbf, 0x6c, 0x53, 0xa2, 0xd7, 0x88, 0x1b, 0x8d, 0x15, 0x7a, 0x62, 0x00, 0xd9, 0xba, 0x32, 0x43, 0xe4, 0xd9, 0xc1, 0x2d, 0x3e, 0xde, 0xbd, 0x8f, 0xf9, 0xe1, 0x03, 0xc6, 0x15, 0x8f, 0x89, 0x6e, 0xd5, 0xbc, 0xab, 0x43, 0x38, 0x3c, 0xf6, 0xbe, 0xcd, 0xbc, 0xf0, 0x81, 0x60, 0x4a, 0x59, 0x55, 0x08, 0x17, 0x2b, 0xbf, 0x43, 0xf1, 0x52, 0xb6, 0x69, 0xc4, 0xf4, 0x1d, 0x21, 0xe5, 0xa1, 0xdf, 0xaf, 0x17, 0xa6, 0xe5, 0x51, 0xfe, 0x0b, 0xc0, 0xcc, 0x24, 0xca, 0xc5, 0xa8, 0x21, 0x4d, 0xbd, 0x75, 0x08, 0x60, 0xa6, 0x03, 0x00, 0x21, 0x0a, 0xe9, 0xdc, 0x4a, 0xa1, 0x60, 0xf7, 0x88, 0xdd, 0x58, 0xb8, 0x2f, 0x96, 0x88, 0x40, 0x75, 0x51, 0xb0, 0xa2, 0x0e, 0x36, 0x70, 0x83, 0xa1, 0xa0, 0xf9, 0x9c, 0x35, 0x71, 0x52, 0x28, 0xc2, 0x25, 0x2f, 0x0f, 0x0d, 0xdb, 0x25, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2106 = { .name = "ecdsa_brainpoolp512r1_sha512_2106", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2106_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2106_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2106_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2107 for ECDSA, tcId is 157 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2107_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2107_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2107_sig[] = { 0x45, 0x50, 0xb9, 0x86, 0xfb, 0x04, 0xcc, 0x7f, 0xde, 0x0d, 0xc8, 0x5a, 0x95, 0xa1, 0x58, 0x17, 0x94, 0xb2, 0x52, 0x10, 0x20, 0x53, 0x2d, 0xc0, 0x0f, 0xb5, 0xed, 0x4b, 0x0e, 0xbd, 0x68, 0x34, 0xf1, 0x83, 0xf3, 0xc6, 0x2a, 0x57, 0x56, 0xbf, 0x5b, 0xd0, 0xb9, 0xa5, 0x16, 0xbc, 0x3d, 0x6c, 0x7e, 0x81, 0xef, 0xe5, 0x51, 0x16, 0x4b, 0x9d, 0xe0, 0xc1, 0x52, 0x93, 0x82, 0x95, 0xe2, 0xfb, 0x48, 0x59, 0x76, 0x25, 0x3d, 0x58, 0x03, 0x2d, 0x27, 0xed, 0x61, 0x56, 0xec, 0x15, 0xcf, 0x85, 0x34, 0x40, 0xdd, 0xec, 0xdf, 0x63, 0xbd, 0xb3, 0x04, 0xe1, 0xe7, 0x4d, 0x13, 0x9c, 0x13, 0x19, 0x67, 0x46, 0x64, 0xc5, 0xaa, 0xed, 0x9b, 0xb3, 0x04, 0x3a, 0x6e, 0x8a, 0xab, 0x1c, 0xa2, 0xe1, 0x5a, 0xfd, 0xb4, 0x5d, 0x33, 0x20, 0x04, 0x27, 0x50, 0xf9, 0xea, 0x82, 0x96, 0xfc, 0xd5, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2107 = { .name = "ecdsa_brainpoolp512r1_sha512_2107", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2107_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2107_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2107_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2108 for ECDSA, tcId is 158 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2108_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2108_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2108_sig[] = { 0x53, 0x91, 0x83, 0xda, 0xde, 0xa6, 0x63, 0x0b, 0xd4, 0x41, 0x6a, 0x49, 0xa8, 0xd6, 0xe7, 0x79, 0x23, 0x03, 0xe1, 0xe4, 0x4d, 0x20, 0x28, 0x72, 0x6f, 0x84, 0x69, 0x7c, 0x49, 0x6c, 0x26, 0xda, 0xcc, 0xac, 0x5f, 0xc4, 0xa4, 0xad, 0x34, 0x86, 0x6e, 0x71, 0x8e, 0x90, 0x67, 0xc4, 0xaf, 0x1b, 0xc9, 0xe2, 0x2c, 0x70, 0xb9, 0x4e, 0x74, 0xf2, 0x82, 0x2f, 0xef, 0x92, 0x9e, 0x7b, 0xad, 0x56, 0x4a, 0xbb, 0x75, 0x51, 0x92, 0xa1, 0x8e, 0xfb, 0x2e, 0x72, 0xa2, 0xfb, 0x4e, 0xe5, 0x1e, 0x47, 0xdb, 0x6d, 0x3b, 0xb2, 0x1b, 0xe2, 0xdd, 0xef, 0xb8, 0xfc, 0xff, 0x5e, 0x08, 0x4a, 0x2d, 0x8c, 0x8c, 0x7a, 0x1f, 0x44, 0xd0, 0x4c, 0x54, 0xb6, 0xbc, 0xbb, 0x95, 0x7c, 0x14, 0xa6, 0x2d, 0x75, 0x47, 0xfe, 0xcc, 0xb5, 0xd3, 0xf2, 0x0e, 0xd2, 0x00, 0x93, 0x13, 0x6d, 0x97, 0xdc, 0xb6, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2108 = { .name = "ecdsa_brainpoolp512r1_sha512_2108", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2108_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2108_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2108_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2109 for ECDSA, tcId is 159 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2109_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2109_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2109_sig[] = { 0x20, 0x82, 0x50, 0xa2, 0xa6, 0x62, 0xf8, 0x53, 0x6b, 0x5c, 0xdc, 0xff, 0xa1, 0x37, 0xb8, 0x3c, 0x52, 0x55, 0x12, 0xd9, 0xe3, 0xcd, 0xfe, 0xd0, 0x20, 0x76, 0x0c, 0x1b, 0x05, 0xb5, 0x5f, 0xc9, 0xf6, 0x6c, 0x6d, 0x7a, 0x8c, 0x25, 0xbf, 0xa4, 0x75, 0xb1, 0x07, 0x83, 0x11, 0x53, 0x73, 0x8d, 0x55, 0xa4, 0xdd, 0x07, 0xa7, 0x81, 0x92, 0xd0, 0x41, 0x69, 0x2b, 0xf5, 0x35, 0xe1, 0xac, 0x04, 0x3d, 0x85, 0x7d, 0xdd, 0x8c, 0xb2, 0x46, 0xac, 0x6e, 0xd2, 0x1e, 0x1d, 0xc5, 0x36, 0x81, 0x90, 0xda, 0xa9, 0x9b, 0xf8, 0xc3, 0x64, 0x49, 0xed, 0xd3, 0x18, 0xb2, 0x78, 0x27, 0xa2, 0x4c, 0x9a, 0xb0, 0x31, 0x4c, 0x59, 0x26, 0x17, 0x24, 0x9a, 0x1d, 0xa9, 0xfd, 0xe1, 0x35, 0xbc, 0x85, 0xe4, 0xc4, 0x80, 0x5d, 0x05, 0x17, 0x9b, 0x40, 0xc8, 0xcf, 0x4e, 0xdb, 0xc0, 0xad, 0xf1, 0x9f, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2109 = { .name = "ecdsa_brainpoolp512r1_sha512_2109", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2109_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2109_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2109_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2110 for ECDSA, tcId is 160 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2110_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2110_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2110_sig[] = { 0x65, 0xc6, 0x39, 0xaa, 0x06, 0x86, 0x81, 0x53, 0xb7, 0x76, 0x3f, 0xf6, 0x8b, 0xce, 0x97, 0xc7, 0xd9, 0xfe, 0x2f, 0x02, 0x8d, 0x9b, 0xea, 0x62, 0x32, 0x85, 0x21, 0x4e, 0xc5, 0x57, 0x2f, 0x64, 0x12, 0x74, 0xe4, 0x19, 0xa8, 0x33, 0x5d, 0xec, 0x43, 0xff, 0xf2, 0x23, 0x4d, 0xed, 0x00, 0xbb, 0x01, 0x23, 0x41, 0x1d, 0xea, 0x84, 0x3e, 0x97, 0x0b, 0xfb, 0x8f, 0xed, 0x4a, 0x51, 0x4e, 0xe4, 0x3f, 0xd4, 0xea, 0xb5, 0x37, 0x13, 0x23, 0x1e, 0x91, 0x91, 0x90, 0x6e, 0xf0, 0xcb, 0xa9, 0xc4, 0xcb, 0x50, 0xfc, 0x24, 0x62, 0x8c, 0x8f, 0x2d, 0xb1, 0x91, 0x4d, 0x6c, 0xce, 0xc4, 0x91, 0xc7, 0x80, 0xc9, 0x6c, 0xdb, 0x1b, 0x9b, 0xe6, 0xa6, 0x3c, 0xd3, 0x79, 0xa8, 0x46, 0x39, 0x39, 0xaa, 0x8a, 0x6e, 0xca, 0x63, 0x57, 0x23, 0x7f, 0xa8, 0xe8, 0x29, 0xfa, 0x4a, 0x38, 0x44, 0x8f, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2110 = { .name = "ecdsa_brainpoolp512r1_sha512_2110", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2110_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2110_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2110_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2111 for ECDSA, tcId is 161 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2111_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2111_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2111_sig[] = { 0x4a, 0x11, 0x0c, 0xc6, 0xab, 0xa1, 0x29, 0x60, 0x3a, 0x61, 0x7f, 0x0f, 0x83, 0xc8, 0xd7, 0xe9, 0xa6, 0x61, 0xdf, 0x8b, 0x57, 0x1f, 0xed, 0x84, 0x98, 0x32, 0x2d, 0x5e, 0x44, 0x8b, 0x46, 0x6f, 0x79, 0x42, 0xe3, 0x9a, 0x56, 0xa0, 0x85, 0x30, 0x3d, 0xdb, 0x92, 0x2d, 0xb5, 0x9c, 0x7d, 0xca, 0xee, 0x44, 0xde, 0x09, 0x4a, 0x78, 0x53, 0xe7, 0x17, 0xa3, 0xe9, 0x28, 0x17, 0x9f, 0xbc, 0x76, 0x2e, 0x54, 0x84, 0x86, 0x7e, 0x70, 0xcf, 0x9e, 0x3b, 0xfc, 0xff, 0x30, 0x9e, 0x89, 0xee, 0x1d, 0x90, 0x99, 0x04, 0xf4, 0xb9, 0x40, 0x22, 0xae, 0x91, 0x17, 0x75, 0x54, 0x70, 0x61, 0x22, 0xe5, 0xc4, 0x5f, 0x9a, 0x72, 0xae, 0xe7, 0x64, 0x10, 0xbb, 0x84, 0x4f, 0x09, 0xf8, 0xe6, 0x6e, 0x0e, 0xed, 0xe2, 0x87, 0xd6, 0xc3, 0x65, 0x24, 0x4e, 0x76, 0x32, 0xf4, 0x78, 0xa7, 0x53, 0x0a, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2111 = { .name = "ecdsa_brainpoolp512r1_sha512_2111", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2111_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2111_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2111_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2112 for ECDSA, tcId is 162 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2112_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2112_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2112_sig[] = { 0x39, 0xc8, 0x96, 0xc0, 0x40, 0x99, 0x67, 0xf9, 0xbe, 0x11, 0xfd, 0xff, 0xf9, 0xe8, 0xf7, 0xb0, 0x8b, 0x7f, 0x2c, 0xf4, 0x4b, 0xe4, 0x71, 0xd4, 0xea, 0x1e, 0x25, 0x69, 0x32, 0x34, 0x44, 0x36, 0x66, 0x3a, 0x4d, 0xa8, 0xfe, 0x28, 0xff, 0xe7, 0x9d, 0x27, 0x74, 0x58, 0xe9, 0xea, 0x2f, 0x59, 0x7a, 0x7d, 0xb8, 0x47, 0x41, 0x4b, 0xb2, 0xad, 0x24, 0x38, 0x03, 0x7c, 0xb6, 0xc4, 0xa6, 0xcd, 0x91, 0x0d, 0x53, 0xab, 0x2c, 0x5c, 0x56, 0xbf, 0x05, 0x83, 0x74, 0x29, 0xe5, 0xe3, 0xd0, 0x8a, 0x02, 0xd0, 0xe6, 0x02, 0x27, 0x28, 0x30, 0x29, 0x79, 0x22, 0xbc, 0x91, 0xe2, 0x9f, 0x4f, 0x98, 0x82, 0x71, 0xfd, 0xd6, 0x0f, 0x07, 0x0e, 0xb0, 0xaa, 0x1e, 0x57, 0xd7, 0x42, 0xca, 0x75, 0x96, 0x56, 0x38, 0x27, 0x4f, 0x3c, 0xfb, 0x2b, 0x7b, 0x28, 0xd1, 0xa1, 0x46, 0x2a, 0x38, 0x4f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2112 = { .name = "ecdsa_brainpoolp512r1_sha512_2112", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2112_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2112_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2112_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2113 for ECDSA, tcId is 163 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2113_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2113_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2113_sig[] = { 0x43, 0x17, 0x01, 0xfe, 0x9a, 0x41, 0xc1, 0xcd, 0xa0, 0xa2, 0x3b, 0x6c, 0x4f, 0xff, 0xb7, 0x12, 0x8b, 0x53, 0x6b, 0xc9, 0xc0, 0xfa, 0x14, 0x55, 0xd7, 0x26, 0x3a, 0xf0, 0x4a, 0x1a, 0x1d, 0x40, 0x9a, 0x96, 0xa2, 0xe0, 0x4a, 0x56, 0xe1, 0x91, 0x28, 0x38, 0xd4, 0xad, 0x45, 0xae, 0x9d, 0x66, 0xdb, 0x7d, 0x93, 0x47, 0xe1, 0x60, 0x49, 0x5b, 0x4b, 0xe7, 0x71, 0x22, 0x85, 0x2a, 0x28, 0x1d, 0x82, 0x4c, 0xb1, 0x38, 0xa2, 0x9f, 0x22, 0x43, 0x5d, 0x40, 0x18, 0x80, 0x55, 0x6e, 0x16, 0xc5, 0x85, 0x93, 0x49, 0xbd, 0x19, 0xf5, 0x3c, 0x5c, 0x20, 0x51, 0x6a, 0xce, 0x4d, 0x84, 0xc5, 0xc6, 0x00, 0xbf, 0x61, 0x11, 0x4e, 0x05, 0x69, 0x7c, 0xde, 0x12, 0x16, 0x86, 0x92, 0x1b, 0x97, 0x74, 0xb8, 0x3b, 0x84, 0xd0, 0x0c, 0x2c, 0xd6, 0xb7, 0x8c, 0xc5, 0x92, 0x0c, 0x63, 0x21, 0x87, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2113 = { .name = "ecdsa_brainpoolp512r1_sha512_2113", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2113_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2113_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2113_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2114 for ECDSA, tcId is 164 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2114_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2114_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2114_sig[] = { 0x68, 0x4e, 0x6e, 0x41, 0xe2, 0x58, 0x85, 0x06, 0xb6, 0xec, 0x29, 0xb4, 0x58, 0x30, 0x1a, 0x79, 0x81, 0xc1, 0x09, 0x33, 0x00, 0x67, 0x5a, 0x9c, 0xfe, 0xc0, 0xf1, 0x95, 0x69, 0x6d, 0x35, 0xa1, 0x60, 0x68, 0xc4, 0xe2, 0x54, 0x24, 0xfc, 0x9b, 0x27, 0x6d, 0x84, 0xf7, 0xaf, 0xeb, 0x39, 0xaf, 0x09, 0x6e, 0xff, 0xec, 0xff, 0x09, 0xa6, 0xac, 0x67, 0x32, 0x70, 0x95, 0xe2, 0xe2, 0x5c, 0x2a, 0x1c, 0x30, 0x80, 0xb7, 0xf7, 0x0c, 0xeb, 0xd1, 0x93, 0x0a, 0x2b, 0x8b, 0xf6, 0x07, 0x31, 0xe8, 0x38, 0x0f, 0xae, 0x8a, 0x08, 0xf0, 0x31, 0x1a, 0x27, 0xab, 0xc1, 0x5d, 0x11, 0x05, 0xe4, 0xaa, 0x62, 0x62, 0x60, 0xce, 0xe8, 0x65, 0xd2, 0xcf, 0x22, 0x4a, 0xc7, 0xa9, 0x25, 0xc4, 0xeb, 0x5b, 0xab, 0xce, 0x2f, 0xec, 0xb5, 0xe2, 0x0d, 0x61, 0xf7, 0xa5, 0xdb, 0xbb, 0xe3, 0x3a, 0x01, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2114 = { .name = "ecdsa_brainpoolp512r1_sha512_2114", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2114_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2114_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2114_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2115 for ECDSA, tcId is 165 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2115_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2115_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2115_sig[] = { 0x4c, 0x56, 0xb1, 0x3a, 0x81, 0xa3, 0x9c, 0xb7, 0xf2, 0x76, 0x7b, 0x11, 0x5f, 0xb4, 0x09, 0xb9, 0xcb, 0x99, 0x88, 0xaa, 0xc5, 0x88, 0x5b, 0x63, 0x27, 0x12, 0xb1, 0x33, 0xf2, 0x3b, 0xec, 0x54, 0xc6, 0xfd, 0x53, 0x31, 0x8e, 0x26, 0x5f, 0xbc, 0xb1, 0x84, 0x76, 0x71, 0x73, 0x39, 0xea, 0x90, 0x12, 0x59, 0xfe, 0x62, 0x9a, 0x39, 0x62, 0x67, 0x74, 0x1e, 0xf4, 0x4e, 0x44, 0x75, 0xa7, 0xbb, 0x24, 0xfc, 0xa6, 0x80, 0x64, 0xbb, 0xf8, 0xbe, 0xe1, 0x55, 0x1c, 0x2d, 0x00, 0xb5, 0x4a, 0x16, 0xb5, 0x0b, 0x48, 0x21, 0xc2, 0x99, 0xe2, 0xaa, 0x1a, 0x73, 0xdf, 0xe2, 0xf8, 0x1c, 0x73, 0xc4, 0x09, 0x93, 0x16, 0x6a, 0xb8, 0xed, 0x9b, 0xd8, 0x48, 0x9c, 0xfe, 0x52, 0x3e, 0x41, 0xcf, 0x6e, 0x35, 0xef, 0x7a, 0x7a, 0x33, 0x1b, 0xd8, 0xd2, 0xa4, 0xdb, 0x77, 0xdf, 0xf4, 0x0d, 0x11, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2115 = { .name = "ecdsa_brainpoolp512r1_sha512_2115", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2115_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2115_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2115_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2116 for ECDSA, tcId is 166 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2116_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2116_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2116_sig[] = { 0x68, 0x2a, 0xfc, 0x3b, 0x92, 0x59, 0xdb, 0xc9, 0x16, 0x01, 0x19, 0x01, 0x46, 0x19, 0x37, 0x5a, 0x7d, 0x49, 0x16, 0xbd, 0x08, 0xa9, 0x31, 0xcf, 0x78, 0x77, 0x87, 0x5f, 0xc7, 0x77, 0xd1, 0x8a, 0x3c, 0xaa, 0xf2, 0x53, 0xc6, 0x05, 0xc1, 0x19, 0x73, 0x99, 0xef, 0x93, 0x72, 0xb9, 0xf5, 0x85, 0xa5, 0x84, 0x14, 0x98, 0x56, 0x5f, 0xb5, 0x77, 0x01, 0x81, 0x60, 0xf6, 0x2f, 0x9f, 0x3b, 0x6b, 0x56, 0xa7, 0xe2, 0xdc, 0x08, 0xf6, 0xfb, 0x56, 0x1b, 0x62, 0x0f, 0x09, 0xe8, 0x30, 0xce, 0x6f, 0xd5, 0x2b, 0x49, 0xda, 0x81, 0x5f, 0x9c, 0x3e, 0x89, 0x95, 0x9b, 0x0d, 0x2f, 0xcc, 0x79, 0xad, 0xfb, 0x6d, 0xd9, 0xf9, 0xdd, 0xf0, 0xed, 0x9e, 0x29, 0x5b, 0x72, 0x8c, 0x30, 0x5e, 0xff, 0xcb, 0x4d, 0x97, 0xef, 0xde, 0x40, 0xd9, 0x3d, 0xc2, 0xb6, 0x37, 0x7e, 0x9d, 0x4f, 0x72, 0xbe, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2116 = { .name = "ecdsa_brainpoolp512r1_sha512_2116", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2116_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2116_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2116_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2117 for ECDSA, tcId is 167 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2117_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2117_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2117_sig[] = { 0x8a, 0x68, 0x54, 0xac, 0xf4, 0xc8, 0x03, 0x27, 0xde, 0xf8, 0xe3, 0xec, 0x10, 0x46, 0xde, 0x4f, 0x35, 0x49, 0x8d, 0xf7, 0x98, 0xa9, 0x16, 0xed, 0xc8, 0x44, 0x31, 0x67, 0x4d, 0x4e, 0xb4, 0x5d, 0x20, 0x55, 0x9c, 0xcd, 0xb8, 0xc1, 0xa1, 0x47, 0x54, 0xde, 0x6e, 0xf4, 0x04, 0xb5, 0xe8, 0xa6, 0x6c, 0x36, 0x28, 0xab, 0xac, 0xd0, 0x7e, 0x8c, 0xa4, 0x06, 0xdd, 0xc0, 0xd9, 0x75, 0x60, 0xe6, 0x1e, 0x5a, 0x07, 0xf8, 0x2b, 0xf3, 0x20, 0xb7, 0x74, 0xa4, 0x60, 0xf3, 0xeb, 0xf5, 0x34, 0x96, 0xef, 0x63, 0x2f, 0x7a, 0x33, 0xd5, 0x1f, 0xa2, 0x84, 0x7f, 0x63, 0x93, 0x1f, 0xef, 0x13, 0x11, 0xb5, 0x3c, 0x21, 0x38, 0x40, 0xea, 0x3c, 0x6e, 0x70, 0xd2, 0x84, 0x6a, 0x57, 0x65, 0x99, 0x02, 0x6a, 0xc1, 0x66, 0x90, 0x25, 0x8e, 0x4f, 0xc8, 0xed, 0xbb, 0x12, 0x11, 0x81, 0x6f, 0xc1, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2117 = { .name = "ecdsa_brainpoolp512r1_sha512_2117", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2117_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2117_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2117_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2118 for ECDSA, tcId is 168 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2118_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2118_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2118_sig[] = { 0x1b, 0x06, 0x05, 0xbe, 0x20, 0xe4, 0x37, 0x4b, 0x17, 0xe4, 0xea, 0xc2, 0x6b, 0xd2, 0xbb, 0x95, 0x70, 0x20, 0xe1, 0xe0, 0x51, 0x08, 0x27, 0x9b, 0xd2, 0x69, 0x60, 0xde, 0x64, 0xd3, 0x9e, 0xf2, 0xd1, 0x9c, 0xc8, 0xcc, 0xbe, 0x8f, 0xd7, 0x2e, 0x12, 0x24, 0x12, 0xc2, 0xc6, 0x20, 0xcd, 0x2c, 0x46, 0x40, 0x26, 0x8b, 0x38, 0xdf, 0x93, 0x19, 0x3b, 0x8a, 0xc7, 0xe0, 0xd8, 0x38, 0x2c, 0xa5, 0x28, 0x99, 0x27, 0xed, 0x08, 0xef, 0x4e, 0x0e, 0x5a, 0x41, 0x72, 0x87, 0x75, 0xa1, 0x0d, 0xde, 0x8c, 0x6c, 0xc6, 0xe0, 0x8f, 0x9e, 0xab, 0xa5, 0x10, 0x77, 0xc8, 0x80, 0xc5, 0xaa, 0xd6, 0x47, 0xbc, 0x2f, 0x35, 0xde, 0xf5, 0x92, 0xd0, 0xdd, 0xd1, 0xd3, 0xe1, 0x40, 0xb6, 0xe7, 0x56, 0xc4, 0x6b, 0xe3, 0x60, 0x13, 0xcc, 0x5a, 0x6e, 0x5b, 0xb9, 0x87, 0x0b, 0x5c, 0x4d, 0xca, 0xf2, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2118 = { .name = "ecdsa_brainpoolp512r1_sha512_2118", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2118_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2118_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2118_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2119 for ECDSA, tcId is 169 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2119_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2119_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2119_sig[] = { 0x37, 0x38, 0x44, 0x06, 0x33, 0x23, 0xbe, 0xb4, 0xe6, 0xa4, 0xd2, 0x82, 0x19, 0x35, 0x92, 0xdf, 0x39, 0xdc, 0x57, 0x67, 0x51, 0x9a, 0x80, 0x31, 0xb6, 0x2d, 0x8a, 0xab, 0xd5, 0xde, 0xd6, 0x95, 0x40, 0x7b, 0xc4, 0x68, 0x7a, 0xc0, 0x9d, 0xe9, 0x3f, 0xa3, 0x8a, 0x89, 0x41, 0x2c, 0xfe, 0x6a, 0xcb, 0x5c, 0x09, 0x97, 0x57, 0x79, 0xa9, 0xe4, 0x17, 0x02, 0xe1, 0x81, 0x57, 0xb8, 0x44, 0x57, 0x92, 0x62, 0x01, 0x4c, 0xca, 0xcb, 0x90, 0xa4, 0xb8, 0x33, 0x3b, 0x97, 0x43, 0xf2, 0x5b, 0x89, 0x82, 0x5f, 0x3f, 0x7d, 0x21, 0x71, 0xe6, 0xf3, 0xaf, 0xd8, 0x2c, 0x04, 0x8a, 0x98, 0x05, 0x74, 0x5b, 0x78, 0x12, 0xb4, 0x6c, 0x2c, 0x54, 0x47, 0xfe, 0x10, 0x0e, 0x3b, 0xee, 0xa0, 0xec, 0x3b, 0xb4, 0xfd, 0xed, 0x37, 0x44, 0x53, 0x1e, 0xb0, 0x0c, 0x4d, 0xf1, 0xe0, 0x5d, 0x39, 0xc5, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2119 = { .name = "ecdsa_brainpoolp512r1_sha512_2119", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2119_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2119_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2119_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2120 for ECDSA, tcId is 170 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2120_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2120_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2120_sig[] = { 0x79, 0x8f, 0x30, 0x08, 0xa6, 0x28, 0xad, 0x65, 0xc7, 0xf8, 0x3a, 0xb5, 0x1f, 0x2e, 0x7b, 0x9e, 0x1d, 0x1b, 0x74, 0xca, 0xd8, 0x64, 0x33, 0x4c, 0xde, 0x33, 0x9b, 0xa3, 0xd2, 0xd7, 0x3f, 0x13, 0x54, 0x9a, 0x18, 0xc6, 0xbc, 0x8f, 0x82, 0x72, 0xd5, 0xa0, 0x36, 0x57, 0x0f, 0x45, 0xa1, 0xcf, 0xf2, 0x05, 0x1c, 0xbc, 0x48, 0xe8, 0xa9, 0x90, 0xc3, 0x30, 0x3b, 0xd6, 0xdf, 0x88, 0x7e, 0xd9, 0x60, 0xa1, 0xa0, 0xef, 0x92, 0xd5, 0xc2, 0x8b, 0x6d, 0x6a, 0xfe, 0xb2, 0x71, 0x8d, 0xec, 0xb5, 0x76, 0x61, 0x25, 0x3a, 0xc5, 0xfd, 0x2e, 0x13, 0x63, 0x9b, 0x04, 0xfe, 0x6d, 0x41, 0x7e, 0xeb, 0x40, 0xd7, 0x53, 0x14, 0x6f, 0xdb, 0x80, 0x49, 0x37, 0xac, 0x6b, 0xa9, 0x2c, 0x8f, 0x8b, 0xf9, 0x6a, 0x9e, 0x0c, 0x81, 0x53, 0x2e, 0xf0, 0x39, 0x10, 0xbf, 0x4c, 0xe0, 0x48, 0x3b, 0xf3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2120 = { .name = "ecdsa_brainpoolp512r1_sha512_2120", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2120_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2120_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2120_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2121 for ECDSA, tcId is 171 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2121_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2121_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2121_sig[] = { 0x95, 0x82, 0xbf, 0xa8, 0xa2, 0x12, 0xba, 0x8d, 0x08, 0x52, 0xa4, 0x69, 0x0b, 0xff, 0x7c, 0x93, 0x7b, 0xaf, 0xdd, 0xd2, 0xf8, 0x44, 0x7d, 0x85, 0x0a, 0xe5, 0x18, 0x38, 0x9f, 0x20, 0x18, 0x2b, 0xf8, 0x3b, 0x00, 0x05, 0x2c, 0x3b, 0x3d, 0xc6, 0x5b, 0x1a, 0x70, 0xcf, 0x21, 0x6c, 0xdf, 0xa6, 0x2d, 0xcd, 0x17, 0xa5, 0xad, 0xf3, 0x31, 0xa2, 0xa7, 0x32, 0xba, 0xae, 0xee, 0xc0, 0xad, 0x9d, 0xa4, 0xa1, 0xe4, 0x1f, 0x5f, 0xdb, 0xb9, 0x00, 0x0d, 0x0f, 0x3b, 0xbe, 0x31, 0x19, 0x95, 0xa2, 0x8a, 0xf8, 0x6b, 0x9b, 0x03, 0x34, 0xde, 0x54, 0x98, 0x82, 0x96, 0x4c, 0x53, 0x11, 0xaa, 0x52, 0xd8, 0x7d, 0xe9, 0x62, 0x67, 0x06, 0xbb, 0x25, 0x14, 0xc1, 0xcf, 0x40, 0x9e, 0x99, 0x07, 0xf4, 0xe9, 0x1e, 0x9a, 0x49, 0xd6, 0x55, 0x24, 0xb4, 0xdf, 0xcb, 0xa5, 0x20, 0x92, 0x02, 0x55, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2121 = { .name = "ecdsa_brainpoolp512r1_sha512_2121", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2121_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2121_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2121_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2122 for ECDSA, tcId is 172 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2122_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2122_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2122_sig[] = { 0x4d, 0x67, 0x90, 0xc4, 0x9c, 0x82, 0xa7, 0xac, 0x06, 0xce, 0x84, 0x21, 0x53, 0x94, 0xc8, 0x6c, 0x70, 0x11, 0xb1, 0xb5, 0xf7, 0x14, 0x73, 0x8b, 0x1a, 0xd4, 0xd7, 0xb0, 0x10, 0xd8, 0x54, 0x67, 0x63, 0xf6, 0x02, 0xc9, 0xaf, 0x1e, 0x67, 0x48, 0xa2, 0x7d, 0x29, 0x7b, 0xed, 0x04, 0xeb, 0xea, 0xd4, 0xbf, 0x62, 0x90, 0x43, 0xe4, 0xde, 0xb3, 0x98, 0xa2, 0x7d, 0x4f, 0x86, 0xf3, 0xd7, 0x95, 0x6a, 0x6d, 0xcf, 0x9c, 0x89, 0x8c, 0x07, 0xd2, 0x4f, 0x13, 0xe7, 0x63, 0x66, 0xfd, 0xfb, 0x76, 0xed, 0xdd, 0x41, 0x57, 0xef, 0x2b, 0xef, 0xa9, 0x10, 0x52, 0x49, 0x34, 0xa8, 0xd4, 0x10, 0x9c, 0x12, 0xe0, 0x1e, 0xc4, 0x5d, 0x9f, 0xd4, 0x97, 0x8f, 0xb2, 0x91, 0x06, 0x81, 0xe5, 0x46, 0x03, 0x71, 0xbb, 0xfc, 0x76, 0x52, 0x87, 0x03, 0xe8, 0xb8, 0xa8, 0xbc, 0xbe, 0x8a, 0x6c, 0x8a, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2122 = { .name = "ecdsa_brainpoolp512r1_sha512_2122", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2122_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2122_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2122_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2123 for ECDSA, tcId is 173 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2123_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2123_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2123_sig[] = { 0x65, 0xb4, 0x9e, 0xbf, 0x51, 0x98, 0xda, 0x39, 0x5a, 0xa1, 0x82, 0xba, 0x31, 0xd4, 0x73, 0x12, 0x9a, 0xcc, 0x2f, 0xd6, 0x5f, 0xdc, 0x0d, 0xf2, 0xcd, 0x59, 0xa1, 0xc6, 0x8a, 0x52, 0x78, 0x82, 0xc9, 0x22, 0xf7, 0x39, 0x93, 0x39, 0x63, 0x55, 0xbd, 0x6c, 0xdf, 0x4e, 0x4f, 0xe9, 0xc4, 0x2e, 0x17, 0x16, 0xf6, 0x6e, 0xaf, 0x3e, 0x0e, 0x73, 0x25, 0x3d, 0x5f, 0x61, 0x8c, 0x30, 0x06, 0x39, 0x8d, 0xeb, 0x03, 0xcc, 0x46, 0x40, 0x19, 0x4c, 0xe2, 0x30, 0xda, 0x1d, 0x77, 0xaa, 0xcb, 0x00, 0x74, 0x27, 0x55, 0x7f, 0x70, 0xd4, 0xa0, 0xee, 0x81, 0x48, 0x12, 0xc5, 0x60, 0x86, 0x5f, 0x14, 0xf2, 0x4a, 0x8f, 0x79, 0x39, 0x3c, 0xef, 0x1a, 0x15, 0x9d, 0x28, 0x34, 0xd9, 0xfd, 0xee, 0x0a, 0x16, 0xa8, 0x5b, 0xcd, 0x5c, 0xd5, 0x0e, 0x0f, 0x7c, 0x26, 0x32, 0x30, 0x36, 0x33, 0x5f, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2123 = { .name = "ecdsa_brainpoolp512r1_sha512_2123", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2123_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2123_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2123_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2124 for ECDSA, tcId is 174 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2124_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2124_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2124_sig[] = { 0x87, 0x3e, 0x39, 0xe7, 0xf6, 0xb7, 0xdd, 0xe5, 0xe4, 0x0c, 0xa7, 0xfd, 0x4b, 0x8e, 0x85, 0xf3, 0xcd, 0xee, 0xae, 0x46, 0x71, 0xd6, 0x32, 0x18, 0xb9, 0xf7, 0x19, 0x54, 0x45, 0x66, 0x1d, 0xa0, 0xd1, 0xf5, 0x46, 0x07, 0x59, 0x9a, 0xe7, 0x53, 0x12, 0x02, 0xeb, 0xba, 0xe9, 0xb5, 0xa1, 0xa5, 0x8d, 0x37, 0xc4, 0xa1, 0xfd, 0x3f, 0xff, 0x8e, 0x96, 0x54, 0x7f, 0xdd, 0x3f, 0x76, 0xf8, 0x83, 0x74, 0xbf, 0x6d, 0xb0, 0x93, 0x26, 0x0e, 0xff, 0x6c, 0xac, 0x9f, 0x06, 0xdb, 0x16, 0x46, 0xc0, 0x83, 0xe4, 0xbc, 0x09, 0xc8, 0xf1, 0x75, 0x5a, 0xa3, 0x02, 0xec, 0xf7, 0x91, 0x69, 0x79, 0x01, 0x9c, 0xad, 0x8b, 0xed, 0x73, 0x90, 0x07, 0x97, 0x0c, 0x2c, 0xee, 0x87, 0xd0, 0x25, 0x2c, 0xc6, 0x8f, 0x05, 0x6f, 0x71, 0x03, 0x30, 0xc6, 0x5f, 0xc5, 0x65, 0x51, 0x29, 0x73, 0x12, 0xb2, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2124 = { .name = "ecdsa_brainpoolp512r1_sha512_2124", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2124_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2124_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2124_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2125 for ECDSA, tcId is 175 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2125_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2125_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2125_sig[] = { 0x01, 0x27, 0xad, 0xa3, 0x3f, 0xf4, 0xc6, 0x44, 0x1e, 0x79, 0xf6, 0x01, 0x46, 0x51, 0xdf, 0x82, 0xd4, 0xd1, 0x0c, 0xf4, 0x60, 0x1a, 0xc5, 0x67, 0xd4, 0x41, 0x42, 0xb0, 0xdc, 0xfc, 0x93, 0x3f, 0x7c, 0x8a, 0x2e, 0x23, 0x1d, 0x0d, 0x29, 0x0c, 0xbf, 0x04, 0x2d, 0xf6, 0x11, 0x2d, 0x6f, 0xe1, 0x6d, 0xdd, 0x2c, 0x1e, 0x96, 0xf7, 0x98, 0x20, 0x5c, 0xbf, 0x59, 0x52, 0x68, 0xa9, 0x41, 0x57, 0x22, 0x35, 0x41, 0x1c, 0x90, 0xcc, 0x9a, 0xc1, 0x87, 0x2d, 0x23, 0x8e, 0x7c, 0x7d, 0x8d, 0xeb, 0x07, 0x55, 0xb3, 0x66, 0x2c, 0xd9, 0xf2, 0x49, 0xbf, 0x3c, 0x84, 0x4e, 0x75, 0x0c, 0xf5, 0x8f, 0x90, 0xfe, 0x90, 0x8f, 0x28, 0xb1, 0x38, 0x67, 0x6e, 0xf9, 0xcb, 0x24, 0xef, 0xbb, 0xaf, 0xab, 0x8d, 0x3b, 0xeb, 0xc1, 0x77, 0xa5, 0xb3, 0x2a, 0x32, 0xd1, 0x7b, 0x91, 0xfc, 0x49, 0xb0, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2125 = { .name = "ecdsa_brainpoolp512r1_sha512_2125", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2125_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2125_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2125_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2126 for ECDSA, tcId is 176 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2126_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2126_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2126_sig[] = { 0x82, 0x44, 0xc7, 0x33, 0x17, 0xb5, 0x3e, 0x37, 0x47, 0x3d, 0x7b, 0xee, 0xf9, 0xf8, 0xe5, 0xbd, 0x31, 0xed, 0x80, 0x1f, 0x9b, 0xbd, 0xb9, 0x63, 0x9b, 0x7f, 0x0f, 0x24, 0xe0, 0x32, 0x9c, 0x79, 0x14, 0x95, 0x9b, 0xf0, 0xcd, 0x20, 0x06, 0x98, 0x6f, 0xa8, 0x1f, 0x7f, 0x4b, 0x40, 0x02, 0x50, 0x33, 0x43, 0xae, 0xc0, 0x46, 0x5d, 0x8f, 0x1e, 0xd1, 0x7c, 0x97, 0x74, 0x6e, 0xd6, 0xca, 0xed, 0x14, 0xbc, 0x6c, 0xc4, 0xd1, 0x55, 0x37, 0x71, 0x75, 0xea, 0x95, 0xc3, 0x59, 0xc6, 0x96, 0x24, 0xaf, 0xe1, 0x85, 0x79, 0x01, 0x44, 0x21, 0xb6, 0x6a, 0x14, 0x0e, 0x87, 0xc1, 0x43, 0x9f, 0x7d, 0x78, 0xf5, 0x64, 0x5d, 0x4b, 0xd8, 0xc0, 0x27, 0x54, 0x95, 0x26, 0x86, 0x58, 0x55, 0xff, 0xf0, 0xfc, 0x52, 0x7f, 0x49, 0x36, 0x23, 0xc3, 0x64, 0x7b, 0x5c, 0x90, 0x1d, 0x8d, 0xe4, 0xb8, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2126 = { .name = "ecdsa_brainpoolp512r1_sha512_2126", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2126_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2126_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2126_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2127 for ECDSA, tcId is 177 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2127_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2127_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2127_sig[] = { 0x00, 0x11, 0xdd, 0xcc, 0x69, 0xdd, 0xa5, 0x67, 0x64, 0xaf, 0xdb, 0xea, 0xcd, 0x61, 0x5b, 0x3c, 0x29, 0x50, 0x58, 0x79, 0x43, 0x71, 0x6e, 0xd6, 0xda, 0xc7, 0x65, 0x86, 0x79, 0xa2, 0x1b, 0x2b, 0x4c, 0xdb, 0xe8, 0x5a, 0x5e, 0x40, 0x94, 0xde, 0xf2, 0x53, 0xed, 0xe5, 0x7f, 0x31, 0xef, 0x75, 0x88, 0xee, 0x31, 0x24, 0xd8, 0x05, 0xab, 0xc1, 0x2e, 0xcb, 0xf7, 0xf5, 0x5a, 0x7c, 0xb5, 0x5d, 0x11, 0x9d, 0x72, 0x2b, 0xc3, 0x72, 0xa4, 0xe6, 0xc5, 0xb4, 0xe3, 0x9f, 0xdf, 0x25, 0x81, 0x6f, 0x23, 0x87, 0xd0, 0x0e, 0xf0, 0x40, 0xd0, 0xad, 0x75, 0xbd, 0xa2, 0x79, 0x70, 0x00, 0x1c, 0xe5, 0xcd, 0xf5, 0xa2, 0xd4, 0xdd, 0x8b, 0xc8, 0x04, 0x21, 0x9f, 0xe8, 0xe9, 0x71, 0x52, 0x96, 0xad, 0xb5, 0x33, 0x03, 0xb9, 0x0f, 0x2c, 0x5c, 0x1f, 0x3f, 0x94, 0xb3, 0xf5, 0xf2, 0xfd, 0xa8, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2127 = { .name = "ecdsa_brainpoolp512r1_sha512_2127", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2127_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2127_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2127_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2128 for ECDSA, tcId is 178 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2128_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2128_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2128_sig[] = { 0x12, 0xe5, 0x9c, 0xd4, 0x84, 0xad, 0xba, 0x7d, 0x0f, 0xc2, 0xe4, 0x02, 0xd6, 0xca, 0xf0, 0xe4, 0x4a, 0x0e, 0xd2, 0x52, 0xa8, 0x91, 0x62, 0x3d, 0x26, 0x87, 0x90, 0x2b, 0x51, 0x83, 0x76, 0xef, 0xd7, 0x34, 0xa7, 0xb7, 0x53, 0x3d, 0x79, 0x7c, 0xe8, 0xf1, 0x45, 0x02, 0x8b, 0x42, 0x8c, 0x18, 0xf5, 0xf2, 0x04, 0x43, 0xc5, 0x3f, 0x04, 0xe6, 0x04, 0xaa, 0x31, 0x13, 0x15, 0xe9, 0x26, 0x6d, 0x47, 0x73, 0x6e, 0x60, 0x34, 0x5f, 0x1c, 0xb9, 0xbf, 0x7b, 0xd1, 0x17, 0xd8, 0xcb, 0x82, 0xc9, 0x41, 0x17, 0x9f, 0x08, 0x93, 0xa4, 0xb7, 0xd8, 0x76, 0x2f, 0x7b, 0xc9, 0x32, 0x20, 0x25, 0xa5, 0x64, 0xac, 0xbd, 0x7b, 0x3b, 0xb4, 0x7d, 0xe3, 0x84, 0xa4, 0x58, 0x2f, 0x33, 0x7b, 0x80, 0x9e, 0x84, 0xc4, 0x8b, 0x08, 0x61, 0x0a, 0x3d, 0xfd, 0x0c, 0x87, 0x5d, 0xfe, 0x9b, 0x88, 0x85, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2128 = { .name = "ecdsa_brainpoolp512r1_sha512_2128", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2128_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2128_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2128_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2129 for ECDSA, tcId is 179 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2129_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2129_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2129_sig[] = { 0x00, 0x9a, 0x5f, 0x64, 0x0c, 0xda, 0xaf, 0x26, 0xf1, 0xc1, 0x5c, 0xfc, 0x5c, 0x27, 0x49, 0x8a, 0x82, 0x31, 0x57, 0x1f, 0x22, 0x05, 0x31, 0x54, 0xcc, 0x2f, 0x52, 0x87, 0x7c, 0xbe, 0x5c, 0xf2, 0x89, 0xc5, 0x53, 0xd7, 0xbd, 0xf8, 0x6b, 0x19, 0x73, 0x26, 0x36, 0x04, 0xd5, 0x94, 0xe5, 0x29, 0xab, 0x2d, 0x1d, 0xf1, 0x06, 0x6d, 0x88, 0x5f, 0xd5, 0xa0, 0x61, 0xf6, 0x38, 0xe7, 0xa3, 0x46, 0x91, 0xfe, 0x33, 0xe0, 0x50, 0x74, 0x8b, 0xd7, 0xd7, 0x68, 0x83, 0xa0, 0x3d, 0x5f, 0x29, 0x76, 0x48, 0x7a, 0x03, 0x26, 0xa3, 0xa3, 0xc5, 0xef, 0x27, 0x6c, 0x38, 0xa9, 0xca, 0x09, 0x96, 0x25, 0x70, 0xec, 0xc8, 0xb8, 0x9f, 0x93, 0x1a, 0x14, 0x54, 0x97, 0xb7, 0x7a, 0x48, 0x2a, 0x73, 0x12, 0x89, 0xc2, 0xf7, 0x9c, 0x4a, 0x7b, 0x87, 0x19, 0x28, 0xb3, 0x9e, 0x94, 0xa1, 0x48, 0x8c, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2129 = { .name = "ecdsa_brainpoolp512r1_sha512_2129", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2129_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2129_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2129_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2130 for ECDSA, tcId is 180 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2130_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2130_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2130_sig[] = { 0x68, 0xc0, 0x01, 0xac, 0x8c, 0x88, 0x04, 0xc0, 0xa9, 0xc3, 0x8f, 0x18, 0x10, 0x9e, 0x26, 0xb4, 0xe8, 0xa1, 0xba, 0x18, 0xd0, 0xfb, 0xa8, 0x54, 0x7f, 0x70, 0xe3, 0x98, 0x9f, 0x3c, 0x51, 0x08, 0x71, 0xe8, 0x0f, 0x8a, 0x7b, 0x31, 0x4f, 0xc5, 0x21, 0xb7, 0xc7, 0x9c, 0x3b, 0xb3, 0xb6, 0x91, 0x56, 0x0a, 0xb9, 0xd6, 0x99, 0xa2, 0x49, 0x15, 0xfc, 0x68, 0x2f, 0xda, 0xc1, 0xf0, 0x1c, 0x6f, 0x8c, 0x2f, 0xa0, 0xa4, 0xd9, 0x60, 0xd2, 0x68, 0x84, 0x42, 0xdb, 0xd6, 0x63, 0xe8, 0x5f, 0x46, 0xd8, 0x58, 0xfa, 0xaa, 0xff, 0x91, 0xb7, 0xba, 0x9a, 0xe9, 0x6b, 0xa6, 0x61, 0x96, 0x63, 0x78, 0x0f, 0x05, 0x95, 0x0d, 0x0a, 0xd8, 0x9b, 0x79, 0xcd, 0x69, 0x5d, 0x14, 0xde, 0xe5, 0x7f, 0x27, 0xbc, 0xa9, 0x9f, 0x01, 0x65, 0xf1, 0xd4, 0xbb, 0x12, 0x3d, 0x17, 0xb1, 0xa4, 0x6b, 0xda, 0x32, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2130 = { .name = "ecdsa_brainpoolp512r1_sha512_2130", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2130_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2130_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2130_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2131 for ECDSA, tcId is 181 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2131_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2131_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2131_sig[] = { 0x4b, 0x1e, 0x61, 0x39, 0x4e, 0x6c, 0x26, 0x2b, 0x1e, 0x4a, 0x63, 0xea, 0x7c, 0xf4, 0x1e, 0x66, 0x00, 0x20, 0xb2, 0x47, 0x35, 0x8d, 0x1b, 0x15, 0xaa, 0xec, 0x95, 0x33, 0xd5, 0x87, 0xd8, 0x24, 0x25, 0xa8, 0x60, 0xdc, 0x9f, 0x7a, 0x8e, 0x2b, 0x17, 0x61, 0x39, 0x3d, 0x3f, 0xc2, 0xa9, 0xd1, 0xac, 0x43, 0x3a, 0x06, 0x62, 0xa1, 0xe2, 0xee, 0x25, 0x55, 0xfc, 0x9c, 0x38, 0x49, 0xad, 0x4b, 0x86, 0xda, 0xeb, 0x19, 0x61, 0xef, 0x42, 0x2a, 0x09, 0xf5, 0x3b, 0xfa, 0x0e, 0x5f, 0xfc, 0x7f, 0x52, 0xa3, 0xb5, 0x5e, 0x76, 0xf0, 0xc2, 0xeb, 0xb7, 0xf8, 0xb0, 0x34, 0xb3, 0xcf, 0xaf, 0xf0, 0x8c, 0x52, 0x7a, 0x15, 0xa9, 0xf9, 0x7e, 0x8d, 0x09, 0xda, 0x81, 0x2e, 0x39, 0x5d, 0x5c, 0x61, 0x16, 0x80, 0xb7, 0xf6, 0x51, 0xd4, 0x16, 0x94, 0xf0, 0xb5, 0x8f, 0xe9, 0xeb, 0x31, 0x0b, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2131 = { .name = "ecdsa_brainpoolp512r1_sha512_2131", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2131_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2131_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2131_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2132 for ECDSA, tcId is 182 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2132_pubkey[] = { 0x6b, 0x67, 0x63, 0xa1, 0x86, 0xaa, 0x51, 0x59, 0x04, 0x9f, 0x2e, 0xa5, 0xc8, 0xa2, 0x32, 0xdc, 0xbe, 0x63, 0x37, 0xb0, 0xd9, 0x2e, 0x96, 0x9d, 0xa5, 0x2a, 0xf3, 0x25, 0x24, 0xf6, 0x1d, 0xa3, 0x09, 0x7f, 0xa3, 0x14, 0xac, 0x79, 0x22, 0x34, 0xe5, 0x98, 0x67, 0xaf, 0x32, 0x04, 0x78, 0x77, 0x4b, 0xd4, 0xc7, 0x85, 0xa0, 0x33, 0x06, 0x24, 0xc0, 0xb4, 0xba, 0xbe, 0x25, 0x7f, 0x65, 0x97, 0x2e, 0x40, 0x63, 0xe4, 0x5e, 0x13, 0xd5, 0x05, 0xe1, 0x4d, 0xb6, 0xf5, 0xfe, 0xf3, 0x53, 0x8d, 0xb1, 0x81, 0xcc, 0x1a, 0x6e, 0x0a, 0x93, 0x81, 0xfa, 0x3f, 0x03, 0x21, 0xbe, 0x47, 0xf4, 0x0d, 0xc0, 0x5a, 0xb8, 0x0e, 0x9c, 0xaa, 0x3b, 0x75, 0x59, 0xc6, 0x75, 0x35, 0xe8, 0x3d, 0x98, 0x4f, 0x3b, 0x95, 0x57, 0x11, 0x8d, 0xde, 0x29, 0xc5, 0xe7, 0xa5, 0xa4, 0xa1, 0x8d, 0x0c, 0x9d, 0x43, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2132_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x28, 0x0f, 0x3e, 0xbf, 0x4f, 0x1d, 0x42, 0x29, 0x6d, 0x47, 0x40, 0x11, 0x66, 0xf7, 0x70, 0x9f, 0x0a, 0xd0, 0x2b, 0xae, 0x25, 0x24, 0xeb, 0xa7, 0x73, 0x22, 0xc9, 0xd3, 0xbb, 0x91, 0x48, 0x89, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2132 = { .name = "ecdsa_brainpoolp512r1_sha512_2132", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2132_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2132_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2132_sig, .siglen = 128, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 182 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2133 for ECDSA, tcId is 183 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2133_pubkey[] = { 0x6b, 0x67, 0x63, 0xa1, 0x86, 0xaa, 0x51, 0x59, 0x04, 0x9f, 0x2e, 0xa5, 0xc8, 0xa2, 0x32, 0xdc, 0xbe, 0x63, 0x37, 0xb0, 0xd9, 0x2e, 0x96, 0x9d, 0xa5, 0x2a, 0xf3, 0x25, 0x24, 0xf6, 0x1d, 0xa3, 0x09, 0x7f, 0xa3, 0x14, 0xac, 0x79, 0x22, 0x34, 0xe5, 0x98, 0x67, 0xaf, 0x32, 0x04, 0x78, 0x77, 0x4b, 0xd4, 0xc7, 0x85, 0xa0, 0x33, 0x06, 0x24, 0xc0, 0xb4, 0xba, 0xbe, 0x25, 0x7f, 0x65, 0x97, 0x2e, 0x40, 0x63, 0xe4, 0x5e, 0x13, 0xd5, 0x05, 0xe1, 0x4d, 0xb6, 0xf5, 0xfe, 0xf3, 0x53, 0x8d, 0xb1, 0x81, 0xcc, 0x1a, 0x6e, 0x0a, 0x93, 0x81, 0xfa, 0x3f, 0x03, 0x21, 0xbe, 0x47, 0xf4, 0x0d, 0xc0, 0x5a, 0xb8, 0x0e, 0x9c, 0xaa, 0x3b, 0x75, 0x59, 0xc6, 0x75, 0x35, 0xe8, 0x3d, 0x98, 0x4f, 0x3b, 0x95, 0x57, 0x11, 0x8d, 0xde, 0x29, 0xc5, 0xe7, 0xa5, 0xa4, 0xa1, 0x8d, 0x0c, 0x9d, 0x43, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2133_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2133 = { .name = "ecdsa_brainpoolp512r1_sha512_2133", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2133_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2133_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2133_sig, .siglen = 128, .result = -1, .comment = "r too large, tcId is 183 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2134 for ECDSA, tcId is 184 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2134_pubkey[] = { 0x8f, 0x67, 0x69, 0x59, 0xbf, 0xda, 0x02, 0xd3, 0x73, 0x97, 0x7a, 0x80, 0x52, 0x8b, 0x61, 0xd4, 0x14, 0x8f, 0x8e, 0xab, 0xc2, 0x02, 0x7f, 0xb5, 0xb5, 0xdb, 0x58, 0x27, 0x67, 0x7d, 0x14, 0x7a, 0x72, 0x86, 0x61, 0xfd, 0x5c, 0x54, 0x6b, 0x6a, 0xd5, 0xf0, 0xa8, 0x9a, 0x34, 0x74, 0x49, 0xaa, 0x2f, 0x32, 0x11, 0x2e, 0x3b, 0xbd, 0xa8, 0x03, 0x50, 0x89, 0x54, 0x79, 0x29, 0xb5, 0x6a, 0x55, 0x78, 0xc4, 0x5c, 0xe0, 0xa6, 0x88, 0xae, 0xa3, 0x90, 0xd4, 0xe4, 0xdb, 0x4d, 0x48, 0xd2, 0xcd, 0xb2, 0x18, 0x65, 0xbc, 0x8c, 0xef, 0xd1, 0x5f, 0x2b, 0xba, 0xe4, 0x27, 0x0a, 0xb7, 0x65, 0xa7, 0x6f, 0x04, 0x94, 0x49, 0xf1, 0x7c, 0xe1, 0xac, 0x7f, 0x51, 0x39, 0x77, 0xce, 0x0a, 0x52, 0x37, 0xe5, 0xbd, 0x63, 0xb4, 0xaf, 0x92, 0xa6, 0xcf, 0x49, 0x18, 0xd9, 0x1b, 0xcc, 0xd0, 0xf2, 0x79, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2134_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x65, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2134 = { .name = "ecdsa_brainpoolp512r1_sha512_2134", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2134_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2134_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2134_sig, .siglen = 128, .result = 1, .comment = "r,s are large, tcId is 184 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2135 for ECDSA, tcId is 185 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2135_pubkey[] = { 0x14, 0xf3, 0x8a, 0xfb, 0xc8, 0xd6, 0xbe, 0x59, 0xee, 0x70, 0x75, 0xbd, 0xfd, 0x26, 0x16, 0xa4, 0x4b, 0x86, 0x53, 0x56, 0x87, 0xd0, 0x5c, 0x23, 0x47, 0x55, 0x31, 0x73, 0xcd, 0x14, 0xdf, 0x8a, 0xbd, 0x0a, 0x4c, 0x10, 0x2c, 0x62, 0xe8, 0x14, 0x11, 0x27, 0xdc, 0x66, 0xd2, 0xdc, 0xaa, 0xe3, 0x8c, 0x93, 0x24, 0x98, 0x0e, 0xde, 0x20, 0x46, 0x88, 0xbb, 0x9f, 0x91, 0x6b, 0xa9, 0xf1, 0xa8, 0x23, 0xf3, 0x58, 0x13, 0x93, 0x16, 0xca, 0x27, 0xb8, 0x87, 0x4e, 0x68, 0xb9, 0x33, 0x88, 0xf9, 0x78, 0x0d, 0x9b, 0xa7, 0xe2, 0x3b, 0x84, 0x21, 0xbf, 0xad, 0x38, 0xa1, 0x9e, 0xd1, 0x61, 0x47, 0x7e, 0x0a, 0x05, 0x38, 0x0b, 0xeb, 0xd7, 0xa1, 0x15, 0x6d, 0xc3, 0x2f, 0x69, 0x04, 0x76, 0x79, 0xfa, 0x2b, 0x97, 0x7f, 0xad, 0xc0, 0xc2, 0x9e, 0xbc, 0x1e, 0xbc, 0xea, 0x6c, 0xc1, 0x89, 0x4c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2135_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x43, 0x38, 0xed, 0x95, 0xac, 0x0d, 0x09, 0xc5, 0x1d, 0x70, 0x44, 0xd5, 0x9f, 0x1b, 0xc2, 0x6f, 0x8f, 0x3f, 0x11, 0xfc, 0x7b, 0xf2, 0xf8, 0x1b, 0xdf, 0x0b, 0x21, 0xb5, 0xc0, 0xb9, 0xc8, 0x9b, 0xea, 0x3c, 0xc6, 0xdd, 0x8b, 0x36, 0x92, 0xc8, 0x31, 0x0b, 0x98, 0x11, 0x7b, 0x50, 0x8d, 0x13, 0x00, 0x73, 0xe7, 0x4b, 0x02, 0xb3, 0xba, 0x48, 0x2f, 0xb0, 0xa5, 0xef, 0x10, 0x36, 0xa3, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2135 = { .name = "ecdsa_brainpoolp512r1_sha512_2135", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2135_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2135_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2135_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 185 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2136 for ECDSA, tcId is 186 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2136_pubkey[] = { 0x3d, 0xf9, 0xe5, 0x86, 0x41, 0x0b, 0xa6, 0x33, 0xb9, 0xf1, 0x65, 0xd2, 0x9b, 0x07, 0x3b, 0x67, 0xa1, 0x67, 0x29, 0x7c, 0xb4, 0x08, 0x68, 0x89, 0xe5, 0x2b, 0x92, 0x5a, 0x9c, 0xb2, 0x5a, 0xcc, 0x4c, 0x85, 0xe5, 0xb8, 0x11, 0x22, 0x21, 0xba, 0x49, 0xec, 0xc9, 0x9a, 0x0c, 0xb7, 0xfb, 0x33, 0x85, 0x35, 0x2a, 0x71, 0x40, 0x07, 0x2f, 0x79, 0xc2, 0xf4, 0x43, 0x96, 0xee, 0x8b, 0x67, 0x86, 0x22, 0xc7, 0xb6, 0x18, 0x5e, 0x4b, 0x66, 0x7a, 0x5c, 0xc4, 0x27, 0xc9, 0x9c, 0xa5, 0x3f, 0xe5, 0x4f, 0x03, 0xdf, 0xee, 0xca, 0x92, 0xba, 0x2c, 0x1a, 0xe1, 0xf2, 0xb3, 0xfe, 0xeb, 0xed, 0xea, 0xba, 0x62, 0xee, 0x3b, 0xa0, 0x65, 0xac, 0x53, 0x03, 0xc2, 0xd5, 0x69, 0x69, 0xf0, 0xb3, 0x41, 0x48, 0x6f, 0x29, 0xf3, 0xb2, 0xa0, 0x6d, 0xf3, 0x28, 0x30, 0xf2, 0x59, 0x99, 0xc4, 0x2f, 0x88, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2136_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x39, 0xc9, 0x82, 0xe2, 0xa4, 0xf5, 0x60, 0xc5, 0x09, 0x05, 0x58, 0x88, 0xf6, 0x03, 0x17, 0xe6, 0xb5, 0xbb, 0x61, 0xd5, 0x94, 0xd7, 0xbd, 0x4f, 0x58, 0x97, 0x39, 0x6b, 0xf3, 0xe8, 0x1a, 0x09, 0xcf, 0x70, 0x3d, 0x31, 0x9f, 0x9b, 0x4a, 0x09, 0x2d, 0x46, 0xd5, 0xf2, 0x02, 0xff, 0x5d, 0xdb, 0x77, 0x6c, 0x57, 0xe8, 0xed, 0xe8, 0x45, 0x4d, 0xef, 0x70, 0x37, 0xb5, 0x41, 0xc9, 0x74, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2136 = { .name = "ecdsa_brainpoolp512r1_sha512_2136", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2136_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2136_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2136_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2137 for ECDSA, tcId is 187 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2137_pubkey[] = { 0x0a, 0xd6, 0x6a, 0xbd, 0xba, 0x9f, 0xbe, 0xe1, 0xfd, 0xd1, 0xb9, 0xe0, 0xdb, 0x9a, 0x74, 0x60, 0xf4, 0x60, 0xde, 0x39, 0x16, 0xef, 0xd1, 0x6d, 0x7d, 0x9c, 0x6c, 0xc7, 0xa6, 0xcc, 0x9f, 0xa5, 0xcc, 0x03, 0x02, 0x0d, 0x9f, 0x8c, 0x90, 0x94, 0xc0, 0xcb, 0x52, 0xfe, 0x1b, 0xab, 0xd6, 0x3c, 0x69, 0xab, 0x20, 0xf0, 0x4a, 0x11, 0x6e, 0xce, 0xe3, 0xa0, 0x09, 0xd5, 0xac, 0xb5, 0x72, 0x9d, 0x5b, 0x47, 0x65, 0x85, 0x8f, 0x69, 0x6b, 0x61, 0xbf, 0x6b, 0x3a, 0x18, 0x12, 0xd0, 0x57, 0xbe, 0xe9, 0x3b, 0x14, 0x38, 0x36, 0xa7, 0x64, 0x92, 0x79, 0x71, 0xfb, 0x74, 0x61, 0x41, 0xb5, 0x42, 0x2f, 0xc0, 0x77, 0xf7, 0x3c, 0xaa, 0x00, 0x0f, 0x62, 0xce, 0x00, 0x10, 0x35, 0x02, 0xd1, 0xec, 0xb0, 0x95, 0x4f, 0x2c, 0xad, 0x60, 0xb2, 0x24, 0xec, 0x6f, 0xe1, 0x03, 0x30, 0x09, 0xd6, 0x4c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2137_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2137 = { .name = "ecdsa_brainpoolp512r1_sha512_2137", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2137_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2137_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2137_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 187 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2138 for ECDSA, tcId is 188 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2138_pubkey[] = { 0x0a, 0xd6, 0x6a, 0xbd, 0xba, 0x9f, 0xbe, 0xe1, 0xfd, 0xd1, 0xb9, 0xe0, 0xdb, 0x9a, 0x74, 0x60, 0xf4, 0x60, 0xde, 0x39, 0x16, 0xef, 0xd1, 0x6d, 0x7d, 0x9c, 0x6c, 0xc7, 0xa6, 0xcc, 0x9f, 0xa5, 0xcc, 0x03, 0x02, 0x0d, 0x9f, 0x8c, 0x90, 0x94, 0xc0, 0xcb, 0x52, 0xfe, 0x1b, 0xab, 0xd6, 0x3c, 0x69, 0xab, 0x20, 0xf0, 0x4a, 0x11, 0x6e, 0xce, 0xe3, 0xa0, 0x09, 0xd5, 0xac, 0xb5, 0x72, 0x9d, 0x5b, 0x47, 0x65, 0x85, 0x8f, 0x69, 0x6b, 0x61, 0xbf, 0x6b, 0x3a, 0x18, 0x12, 0xd0, 0x57, 0xbe, 0xe9, 0x3b, 0x14, 0x38, 0x36, 0xa7, 0x64, 0x92, 0x79, 0x71, 0xfb, 0x74, 0x61, 0x41, 0xb5, 0x42, 0x2f, 0xc0, 0x77, 0xf7, 0x3c, 0xaa, 0x00, 0x0f, 0x62, 0xce, 0x00, 0x10, 0x35, 0x02, 0xd1, 0xec, 0xb0, 0x95, 0x4f, 0x2c, 0xad, 0x60, 0xb2, 0x24, 0xec, 0x6f, 0xe1, 0x03, 0x30, 0x09, 0xd6, 0x4c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2138_sig[] = { 0x03, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2138 = { .name = "ecdsa_brainpoolp512r1_sha512_2138", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2138_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2138_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2138_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 188 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2139 for ECDSA, tcId is 189 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2139_pubkey[] = { 0x97, 0x41, 0xc2, 0x63, 0x4e, 0x42, 0xf1, 0x86, 0x56, 0x25, 0xa9, 0xd9, 0x7e, 0xbc, 0x54, 0x9a, 0xc8, 0xc6, 0x7e, 0xb6, 0xd0, 0x3c, 0xd2, 0xa7, 0xc5, 0x98, 0x7f, 0x0f, 0x51, 0x64, 0xc9, 0xbe, 0x97, 0x75, 0xe3, 0x2c, 0x5d, 0x59, 0xd3, 0x17, 0x5d, 0xe4, 0x68, 0xe2, 0x43, 0x59, 0x10, 0x21, 0xab, 0x62, 0x3f, 0x6b, 0x09, 0xb3, 0x1a, 0x40, 0x28, 0x63, 0x9b, 0x04, 0x16, 0x84, 0xf3, 0x59, 0x47, 0x0d, 0xdf, 0xf1, 0x73, 0xc6, 0x7c, 0x71, 0x05, 0x5f, 0x5f, 0x71, 0x5b, 0x7b, 0x74, 0x99, 0x38, 0x00, 0x30, 0x59, 0x38, 0xbb, 0xda, 0x89, 0xd2, 0x4b, 0x18, 0x7f, 0x48, 0x19, 0xc3, 0x05, 0x75, 0xd5, 0xe2, 0x27, 0x5f, 0x08, 0xcb, 0xf3, 0xba, 0x86, 0xb1, 0xa1, 0x1f, 0x12, 0x67, 0x1d, 0x2e, 0xb0, 0x09, 0xd0, 0x25, 0x16, 0xf3, 0xd1, 0xda, 0x0a, 0xaf, 0xcd, 0x1d, 0x81, 0xa0, 0xc1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2139_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2139 = { .name = "ecdsa_brainpoolp512r1_sha512_2139", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2139_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2139_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2139_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 189 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2140 for ECDSA, tcId is 190 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2140_pubkey[] = { 0x97, 0x41, 0xc2, 0x63, 0x4e, 0x42, 0xf1, 0x86, 0x56, 0x25, 0xa9, 0xd9, 0x7e, 0xbc, 0x54, 0x9a, 0xc8, 0xc6, 0x7e, 0xb6, 0xd0, 0x3c, 0xd2, 0xa7, 0xc5, 0x98, 0x7f, 0x0f, 0x51, 0x64, 0xc9, 0xbe, 0x97, 0x75, 0xe3, 0x2c, 0x5d, 0x59, 0xd3, 0x17, 0x5d, 0xe4, 0x68, 0xe2, 0x43, 0x59, 0x10, 0x21, 0xab, 0x62, 0x3f, 0x6b, 0x09, 0xb3, 0x1a, 0x40, 0x28, 0x63, 0x9b, 0x04, 0x16, 0x84, 0xf3, 0x59, 0x47, 0x0d, 0xdf, 0xf1, 0x73, 0xc6, 0x7c, 0x71, 0x05, 0x5f, 0x5f, 0x71, 0x5b, 0x7b, 0x74, 0x99, 0x38, 0x00, 0x30, 0x59, 0x38, 0xbb, 0xda, 0x89, 0xd2, 0x4b, 0x18, 0x7f, 0x48, 0x19, 0xc3, 0x05, 0x75, 0xd5, 0xe2, 0x27, 0x5f, 0x08, 0xcb, 0xf3, 0xba, 0x86, 0xb1, 0xa1, 0x1f, 0x12, 0x67, 0x1d, 0x2e, 0xb0, 0x09, 0xd0, 0x25, 0x16, 0xf3, 0xd1, 0xda, 0x0a, 0xaf, 0xcd, 0x1d, 0x81, 0xa0, 0xc1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2140_sig[] = { 0x03, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2140 = { .name = "ecdsa_brainpoolp512r1_sha512_2140", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2140_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2140_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2140_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 190 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2141 for ECDSA, tcId is 191 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2141_pubkey[] = { 0x8b, 0x06, 0xa7, 0x76, 0x16, 0xea, 0x21, 0xf1, 0x40, 0x93, 0xd3, 0xa3, 0x73, 0xa8, 0xf5, 0x71, 0x06, 0xa7, 0x19, 0x39, 0xf2, 0x54, 0x15, 0xf6, 0xa9, 0xaa, 0x00, 0x16, 0x40, 0xb5, 0xed, 0x0a, 0xdf, 0x39, 0xfc, 0x2f, 0x5e, 0x58, 0xd4, 0x23, 0x3c, 0x2e, 0xef, 0xe4, 0xf1, 0x70, 0x49, 0x9d, 0xa5, 0x7e, 0x9d, 0xce, 0xb7, 0xf8, 0xcd, 0x5f, 0x38, 0xc4, 0x18, 0x1f, 0xa7, 0xd2, 0xf7, 0x68, 0x07, 0x4a, 0x91, 0xe9, 0x9e, 0xab, 0xce, 0xd1, 0xbd, 0xa3, 0x58, 0x65, 0x3e, 0x09, 0xb5, 0x1e, 0xb8, 0xb1, 0xa9, 0x52, 0x6f, 0x5a, 0x1b, 0x32, 0xc7, 0xed, 0xd3, 0xb7, 0x01, 0xf5, 0xaf, 0x41, 0x03, 0x31, 0x49, 0x71, 0xd5, 0xc0, 0x82, 0xc5, 0xf2, 0x00, 0x53, 0xc3, 0xb6, 0x6d, 0x39, 0xa1, 0xcb, 0x6c, 0x4d, 0x31, 0x0d, 0xbe, 0x89, 0x55, 0x46, 0x89, 0x2d, 0x42, 0x96, 0xd9, 0x6e, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2141_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2141 = { .name = "ecdsa_brainpoolp512r1_sha512_2141", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2141_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2141_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2141_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 191 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2142 for ECDSA, tcId is 192 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2142_pubkey[] = { 0x8b, 0x06, 0xa7, 0x76, 0x16, 0xea, 0x21, 0xf1, 0x40, 0x93, 0xd3, 0xa3, 0x73, 0xa8, 0xf5, 0x71, 0x06, 0xa7, 0x19, 0x39, 0xf2, 0x54, 0x15, 0xf6, 0xa9, 0xaa, 0x00, 0x16, 0x40, 0xb5, 0xed, 0x0a, 0xdf, 0x39, 0xfc, 0x2f, 0x5e, 0x58, 0xd4, 0x23, 0x3c, 0x2e, 0xef, 0xe4, 0xf1, 0x70, 0x49, 0x9d, 0xa5, 0x7e, 0x9d, 0xce, 0xb7, 0xf8, 0xcd, 0x5f, 0x38, 0xc4, 0x18, 0x1f, 0xa7, 0xd2, 0xf7, 0x68, 0x07, 0x4a, 0x91, 0xe9, 0x9e, 0xab, 0xce, 0xd1, 0xbd, 0xa3, 0x58, 0x65, 0x3e, 0x09, 0xb5, 0x1e, 0xb8, 0xb1, 0xa9, 0x52, 0x6f, 0x5a, 0x1b, 0x32, 0xc7, 0xed, 0xd3, 0xb7, 0x01, 0xf5, 0xaf, 0x41, 0x03, 0x31, 0x49, 0x71, 0xd5, 0xc0, 0x82, 0xc5, 0xf2, 0x00, 0x53, 0xc3, 0xb6, 0x6d, 0x39, 0xa1, 0xcb, 0x6c, 0x4d, 0x31, 0x0d, 0xbe, 0x89, 0x55, 0x46, 0x89, 0x2d, 0x42, 0x96, 0xd9, 0x6e, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2142_sig[] = { 0x03, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2142 = { .name = "ecdsa_brainpoolp512r1_sha512_2142", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2142_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2142_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2142_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 192 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2143 for ECDSA, tcId is 193 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2143_pubkey[] = { 0x8b, 0x06, 0xa7, 0x76, 0x16, 0xea, 0x21, 0xf1, 0x40, 0x93, 0xd3, 0xa3, 0x73, 0xa8, 0xf5, 0x71, 0x06, 0xa7, 0x19, 0x39, 0xf2, 0x54, 0x15, 0xf6, 0xa9, 0xaa, 0x00, 0x16, 0x40, 0xb5, 0xed, 0x0a, 0xdf, 0x39, 0xfc, 0x2f, 0x5e, 0x58, 0xd4, 0x23, 0x3c, 0x2e, 0xef, 0xe4, 0xf1, 0x70, 0x49, 0x9d, 0xa5, 0x7e, 0x9d, 0xce, 0xb7, 0xf8, 0xcd, 0x5f, 0x38, 0xc4, 0x18, 0x1f, 0xa7, 0xd2, 0xf7, 0x68, 0x07, 0x4a, 0x91, 0xe9, 0x9e, 0xab, 0xce, 0xd1, 0xbd, 0xa3, 0x58, 0x65, 0x3e, 0x09, 0xb5, 0x1e, 0xb8, 0xb1, 0xa9, 0x52, 0x6f, 0x5a, 0x1b, 0x32, 0xc7, 0xed, 0xd3, 0xb7, 0x01, 0xf5, 0xaf, 0x41, 0x03, 0x31, 0x49, 0x71, 0xd5, 0xc0, 0x82, 0xc5, 0xf2, 0x00, 0x53, 0xc3, 0xb6, 0x6d, 0x39, 0xa1, 0xcb, 0x6c, 0x4d, 0x31, 0x0d, 0xbe, 0x89, 0x55, 0x46, 0x89, 0x2d, 0x42, 0x96, 0xd9, 0x6e, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2143_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2143 = { .name = "ecdsa_brainpoolp512r1_sha512_2143", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2143_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2143_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2143_sig, .siglen = 128, .result = -1, .comment = "r is larger than n, tcId is 193 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2144 for ECDSA, tcId is 194 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2144_pubkey[] = { 0x79, 0x2f, 0xec, 0xee, 0xb3, 0x16, 0x63, 0x56, 0xd1, 0x0a, 0xeb, 0x09, 0x40, 0x12, 0x42, 0x94, 0x34, 0x18, 0x02, 0x92, 0x4c, 0x79, 0xf2, 0x39, 0x1b, 0x77, 0x87, 0x56, 0x57, 0xc1, 0x7f, 0x55, 0x95, 0x5b, 0x28, 0x68, 0x5c, 0xc2, 0x20, 0x3f, 0x18, 0xc2, 0x20, 0x04, 0xba, 0xb1, 0xda, 0x51, 0x68, 0x96, 0xf0, 0x1b, 0x05, 0x29, 0xc8, 0x04, 0x24, 0x5b, 0xaa, 0x3a, 0x69, 0x30, 0xb3, 0x55, 0x26, 0xde, 0xb7, 0x3e, 0x37, 0x21, 0x76, 0xcc, 0x73, 0x58, 0xc0, 0x42, 0x47, 0x92, 0x3a, 0x79, 0x11, 0x81, 0xce, 0x72, 0xc1, 0x83, 0x50, 0x60, 0x46, 0xe6, 0x9d, 0xe4, 0x97, 0x6d, 0x4f, 0x26, 0x37, 0xf1, 0x1e, 0x70, 0x5f, 0x1f, 0x9a, 0x5a, 0x0f, 0x99, 0xee, 0xa1, 0x84, 0x1e, 0x54, 0x0c, 0x6a, 0xa4, 0x3d, 0x4f, 0xb2, 0x00, 0x30, 0xd7, 0x0d, 0x4a, 0x54, 0xfb, 0x6a, 0x6e, 0x85, 0x59, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2144_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xbb, 0xd6, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2144 = { .name = "ecdsa_brainpoolp512r1_sha512_2144", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2144_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2144_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2144_sig, .siglen = 128, .result = -1, .comment = "s is larger than n, tcId is 194 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2145 for ECDSA, tcId is 195 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2145_pubkey[] = { 0x81, 0xb4, 0x2a, 0xda, 0xac, 0x02, 0xa5, 0xfd, 0x87, 0xa0, 0x4a, 0x16, 0xdd, 0xc2, 0x33, 0x30, 0x75, 0x77, 0x8f, 0x13, 0x3e, 0xa0, 0xaf, 0x66, 0x04, 0x9c, 0x72, 0xa0, 0x67, 0x21, 0xe3, 0x92, 0x49, 0x79, 0x24, 0x9e, 0x04, 0x29, 0x1e, 0x4b, 0x99, 0xd4, 0xec, 0xf4, 0x48, 0xb3, 0xfd, 0xc5, 0xe5, 0x6e, 0xa2, 0x33, 0x81, 0xd6, 0xd0, 0x6e, 0x23, 0x01, 0x19, 0x65, 0xd1, 0x65, 0x38, 0x16, 0x24, 0x43, 0x27, 0xf9, 0xd5, 0x9c, 0xa6, 0x78, 0x75, 0x75, 0xbb, 0x77, 0x07, 0xef, 0x26, 0x72, 0xf1, 0x13, 0xba, 0x7a, 0x30, 0x2d, 0x69, 0xc2, 0x9f, 0xea, 0x6f, 0xf6, 0x6f, 0x44, 0x9d, 0xcd, 0x3b, 0x27, 0x3b, 0x33, 0x98, 0x48, 0x17, 0x76, 0xc2, 0xf2, 0xa6, 0x85, 0xcb, 0x6d, 0xde, 0x31, 0xe1, 0x76, 0xbe, 0x8f, 0x2b, 0x78, 0x5f, 0xed, 0x31, 0x3b, 0xe5, 0x73, 0x0c, 0x66, 0x24, 0xed, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2145_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x12, 0xd5, 0xe9, 0x12, 0x5c, 0xc7, 0x1f, 0xbe, 0xb8, 0x6c, 0x21, 0x7e, 0x09, 0xbd, 0x92, 0xb6, 0x46, 0xc6, 0xdd, 0x3a, 0x1b, 0xe1, 0xd6, 0xa6, 0xed, 0x4d, 0x80, 0x26, 0x71, 0x27, 0xe4, 0xb5, 0xb4, 0xbc, 0x4a, 0xac, 0x7d, 0x5d, 0x3a, 0xa0, 0x03, 0x31, 0x14, 0xc8, 0x5a, 0xac, 0x2a, 0x1b, 0xff, 0x3d, 0xef, 0x00, 0x1d, 0x24, 0x8d, 0x0a, 0x54, 0x83, 0xdc, 0x2e, 0xa6, 0x6f, 0x5a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2145 = { .name = "ecdsa_brainpoolp512r1_sha512_2145", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2145_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2145_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2145_sig, .siglen = 128, .result = 1, .comment = "small r and s^-1, tcId is 195 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2146 for ECDSA, tcId is 196 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2146_pubkey[] = { 0x01, 0xa0, 0xe0, 0x0b, 0xb4, 0xa6, 0x69, 0xf1, 0x0f, 0x59, 0x44, 0x89, 0xa4, 0x2f, 0x1b, 0xab, 0xd3, 0xa0, 0x28, 0xb5, 0xea, 0x75, 0x75, 0x7a, 0x98, 0x6c, 0x55, 0xf6, 0x15, 0x94, 0x69, 0x75, 0x2b, 0x88, 0xbb, 0xe9, 0xf5, 0x2f, 0x24, 0x22, 0xd5, 0x03, 0xa4, 0xd9, 0xa8, 0x49, 0xc3, 0xda, 0xd4, 0x10, 0xa6, 0xdc, 0x4e, 0x4e, 0x32, 0xb9, 0x54, 0x69, 0xe0, 0x93, 0x86, 0x06, 0x34, 0x01, 0x57, 0x4c, 0x50, 0x11, 0x28, 0x90, 0x64, 0x59, 0xa2, 0x3a, 0xf9, 0x3b, 0x98, 0x30, 0xe2, 0x97, 0xf3, 0xe7, 0x3d, 0x31, 0x73, 0xdf, 0x78, 0x07, 0x67, 0x9b, 0x71, 0x3c, 0xe6, 0xb3, 0x4f, 0x64, 0xb1, 0xee, 0x75, 0x47, 0xb9, 0x27, 0xe4, 0x31, 0x05, 0x11, 0x8c, 0x49, 0x6b, 0x9a, 0x3c, 0x1e, 0x02, 0x64, 0xe8, 0x4b, 0x5b, 0x0f, 0xb4, 0x59, 0x58, 0x2a, 0xf9, 0x8e, 0xdf, 0x0c, 0x11, 0x7f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2146_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x76, 0x75, 0x2c, 0xe2, 0x89, 0xc3, 0x8f, 0x22, 0xde, 0x7f, 0x75, 0xd0, 0xfa, 0x6d, 0xa0, 0x56, 0xf4, 0x73, 0xc7, 0x71, 0x94, 0xde, 0x93, 0x1d, 0x97, 0xef, 0xd6, 0x54, 0x21, 0xff, 0x3e, 0xc8, 0x2c, 0x57, 0xa6, 0x39, 0x3a, 0x42, 0x70, 0x2e, 0x14, 0xa2, 0xd8, 0x31, 0x76, 0x88, 0x65, 0xab, 0x93, 0x32, 0x81, 0xab, 0xf1, 0xbc, 0xf5, 0x2a, 0x7e, 0xf6, 0xb7, 0x3f, 0x23, 0x73, 0xc9, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2146 = { .name = "ecdsa_brainpoolp512r1_sha512_2146", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2146_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2146_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2146_sig, .siglen = 128, .result = 1, .comment = "smallish r and s^-1, tcId is 196 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2147 for ECDSA, tcId is 197 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2147_pubkey[] = { 0x0d, 0xc4, 0xc5, 0x63, 0x9b, 0x76, 0x90, 0x15, 0x7c, 0x21, 0x0b, 0x75, 0xe7, 0xa0, 0x06, 0xd9, 0xcf, 0xdf, 0x80, 0xf9, 0xd0, 0xb2, 0xbb, 0xd6, 0x43, 0x03, 0x68, 0x90, 0xa8, 0x16, 0x8a, 0x88, 0x94, 0x7b, 0x19, 0x7a, 0xa9, 0xa6, 0x00, 0x47, 0xcd, 0x8f, 0x6e, 0x77, 0xc0, 0x77, 0x7b, 0xb9, 0xe0, 0x9d, 0xa7, 0x37, 0xdb, 0xbe, 0x57, 0xa9, 0x77, 0xa6, 0xae, 0x07, 0x07, 0x98, 0x35, 0x64, 0x60, 0xb0, 0xa4, 0x9d, 0x4f, 0x95, 0x78, 0x27, 0x3f, 0x6e, 0x5a, 0xb3, 0x87, 0x31, 0x94, 0x29, 0x2e, 0x89, 0x3e, 0x06, 0xc5, 0xa3, 0x9b, 0xb1, 0xf8, 0xa0, 0x55, 0x1f, 0x4e, 0x01, 0xca, 0x46, 0x0a, 0x03, 0xa7, 0x7c, 0x35, 0xcf, 0xf8, 0xd7, 0xd6, 0xe0, 0xf3, 0x3b, 0x8a, 0x88, 0xac, 0xdc, 0x36, 0xea, 0xe5, 0xa8, 0x3a, 0x12, 0x9b, 0xfe, 0xec, 0xc2, 0xa6, 0x89, 0x36, 0x88, 0x3d, 0x91, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2147_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfd, 0x9c, 0xe7, 0x66, 0x00, 0x6a, 0x51, 0x30, 0x00, 0x5e, 0x79, 0xca, 0xdd, 0xba, 0x04, 0x30, 0x27, 0x08, 0x48, 0x7a, 0x27, 0x82, 0x3b, 0xd1, 0xd3, 0xd9, 0xca, 0x0a, 0x80, 0x1f, 0x4f, 0xbc, 0x0b, 0x83, 0x12, 0x6a, 0xa1, 0x91, 0x1a, 0xd4, 0x4a, 0xfd, 0x6a, 0x77, 0x0c, 0x75, 0x3d, 0x61, 0x9f, 0xef, 0x70, 0x7e, 0x7c, 0x77, 0x3f, 0x46, 0x7d, 0xe5, 0x73, 0x8b, 0x35, 0x33, 0x38, 0x93, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2147 = { .name = "ecdsa_brainpoolp512r1_sha512_2147", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2147_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2147_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2147_sig, .siglen = 128, .result = 1, .comment = "100-bit r and small s^-1, tcId is 197 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2148 for ECDSA, tcId is 198 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2148_pubkey[] = { 0x86, 0x7d, 0xfd, 0xd7, 0x26, 0xce, 0xe9, 0x31, 0x25, 0x6d, 0xd9, 0xaa, 0xe0, 0xc1, 0xa6, 0x60, 0xa1, 0x2b, 0x1d, 0xfd, 0x6b, 0xaf, 0x18, 0x0b, 0x35, 0xe3, 0x9c, 0x0f, 0x93, 0xcb, 0xf9, 0x80, 0x0c, 0x5c, 0xf1, 0x1b, 0x29, 0xf1, 0x86, 0x78, 0xd3, 0x25, 0x12, 0x1f, 0xb2, 0x86, 0x54, 0x5a, 0x51, 0x2d, 0xd8, 0xf6, 0xc2, 0xcb, 0x81, 0xe5, 0x98, 0xd0, 0x5f, 0xc4, 0x0c, 0xfc, 0xf9, 0xdc, 0x91, 0xd4, 0xd2, 0x15, 0x3f, 0x66, 0x75, 0x93, 0xe2, 0x5f, 0xee, 0x42, 0xe3, 0x9d, 0xaf, 0xd1, 0x81, 0x19, 0x74, 0x94, 0x3e, 0x87, 0x5d, 0xfc, 0xc6, 0xba, 0xdc, 0x0e, 0xa2, 0x2d, 0xb4, 0x21, 0x26, 0x37, 0xbe, 0x71, 0xc6, 0xb7, 0x43, 0x75, 0xc4, 0x3c, 0xfb, 0xf7, 0x19, 0x08, 0x86, 0x91, 0xae, 0xc7, 0x0e, 0x69, 0x1e, 0x46, 0xed, 0xfe, 0x8c, 0xcd, 0xb4, 0xce, 0xfc, 0xb1, 0x35, 0x1e, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2148_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x9c, 0x0d, 0xe2, 0x21, 0x6b, 0xab, 0x72, 0xaf, 0x9e, 0xc8, 0x23, 0x41, 0x1e, 0x7e, 0xe4, 0x44, 0x48, 0x2b, 0xc2, 0x68, 0xae, 0x1b, 0xa9, 0x06, 0x4e, 0x04, 0x01, 0x96, 0x09, 0x75, 0x7d, 0x95, 0xb2, 0xe0, 0xc5, 0xa3, 0xfd, 0xe3, 0x77, 0xa8, 0x7f, 0xcd, 0x38, 0xb3, 0x2f, 0x80, 0x61, 0xbd, 0x3d, 0xc8, 0x1c, 0xbb, 0xdb, 0x96, 0xca, 0x62, 0x6e, 0x65, 0x82, 0xba, 0x61, 0xdc, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2148 = { .name = "ecdsa_brainpoolp512r1_sha512_2148", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2148_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2148_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2148_sig, .siglen = 128, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 198 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2149 for ECDSA, tcId is 199 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2149_pubkey[] = { 0x34, 0x30, 0x8c, 0x7d, 0x6e, 0xaa, 0x1b, 0xd7, 0xd8, 0xed, 0xc0, 0x2f, 0xc6, 0x27, 0x7c, 0x52, 0x71, 0xca, 0x84, 0x74, 0x28, 0xff, 0x21, 0x0d, 0x60, 0x78, 0xec, 0x96, 0x8d, 0xf4, 0xe8, 0x73, 0x0e, 0x21, 0xbc, 0x77, 0x15, 0xa7, 0xee, 0x85, 0xa7, 0x35, 0x28, 0x02, 0x46, 0x6c, 0x0a, 0xb2, 0x35, 0x60, 0x92, 0x9b, 0xab, 0x49, 0x29, 0x65, 0x09, 0x93, 0x7f, 0xe7, 0xcd, 0x6e, 0xdc, 0x02, 0x36, 0x49, 0x1a, 0x29, 0xb8, 0x6e, 0xa0, 0xe6, 0x12, 0x4f, 0x4b, 0x72, 0x10, 0x1f, 0x48, 0x23, 0x0b, 0xdc, 0x1f, 0x5b, 0x36, 0xd2, 0xe6, 0x50, 0x0c, 0x3f, 0xfd, 0x4b, 0xa9, 0x81, 0x8b, 0x43, 0x50, 0x46, 0x33, 0x5a, 0x2d, 0xa1, 0x5a, 0x89, 0xbc, 0x51, 0x11, 0x72, 0x04, 0xd3, 0x30, 0x83, 0x2a, 0xbc, 0x0f, 0x7b, 0x09, 0xa5, 0x9d, 0x82, 0xbb, 0xb0, 0x1d, 0x71, 0x76, 0x2d, 0x8d, 0xf5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2149_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x02, 0x9c, 0x0d, 0xe2, 0x21, 0x6b, 0xab, 0x72, 0xaf, 0x9e, 0xc8, 0x23, 0x41, 0x1e, 0x7e, 0xe4, 0x44, 0x48, 0x2b, 0xc2, 0x68, 0xae, 0x1b, 0xa9, 0x06, 0x4e, 0x04, 0x01, 0x96, 0x09, 0x75, 0x7d, 0x95, 0xb2, 0xe0, 0xc5, 0xa3, 0xfd, 0xe3, 0x77, 0xa8, 0x7f, 0xcd, 0x38, 0xb3, 0x2f, 0x80, 0x61, 0xbd, 0x3d, 0xc8, 0x1c, 0xbb, 0xdb, 0x96, 0xca, 0x62, 0x6e, 0x65, 0x82, 0xba, 0x61, 0xdc, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2149 = { .name = "ecdsa_brainpoolp512r1_sha512_2149", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2149_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2149_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2149_sig, .siglen = 128, .result = 1, .comment = "100-bit r and s^-1, tcId is 199 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2150 for ECDSA, tcId is 200 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2150_pubkey[] = { 0x78, 0xd3, 0x5a, 0x1c, 0x8a, 0x83, 0x99, 0x73, 0x00, 0xa0, 0x2e, 0xb4, 0x77, 0x91, 0x6e, 0x70, 0x95, 0xb0, 0x01, 0xbf, 0xc4, 0x73, 0x41, 0x52, 0x8f, 0x75, 0xc6, 0xce, 0xbe, 0xfd, 0x2d, 0x59, 0xc5, 0xd5, 0xef, 0xae, 0xae, 0x9c, 0x5b, 0xd8, 0xad, 0x4b, 0xdb, 0xad, 0x76, 0xda, 0x1c, 0xbc, 0xd3, 0x54, 0x7a, 0x95, 0xd3, 0x92, 0xdf, 0xf5, 0x3c, 0xe8, 0x5b, 0xc4, 0xe4, 0xb2, 0x3f, 0xf9, 0x4b, 0xb3, 0x42, 0x7e, 0x60, 0x74, 0x13, 0x8f, 0xc0, 0xe4, 0x38, 0x32, 0x0a, 0x31, 0x4e, 0x20, 0x36, 0x71, 0x37, 0x13, 0x3b, 0x4f, 0xee, 0x63, 0xd8, 0x0e, 0xcf, 0xb5, 0x93, 0x16, 0x66, 0xb0, 0x87, 0x3d, 0xcd, 0x45, 0x6a, 0x36, 0x99, 0x4e, 0xdf, 0xda, 0x75, 0xb0, 0xf3, 0xea, 0x81, 0x73, 0x22, 0x77, 0xe7, 0x7a, 0xdc, 0x43, 0xa4, 0x81, 0xff, 0x0f, 0x0e, 0xd4, 0xd2, 0xf3, 0x7f, 0xf0, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2150_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa8, 0xff, 0xe9, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2150 = { .name = "ecdsa_brainpoolp512r1_sha512_2150", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2150_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2150_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2150_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 are close to n, tcId is 200 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2151 for ECDSA, tcId is 201 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2151_pubkey[] = { 0x90, 0x19, 0xbe, 0x20, 0xf6, 0x40, 0xec, 0xb2, 0xb7, 0xc3, 0x31, 0x1b, 0xcd, 0xa8, 0x70, 0x95, 0x49, 0x38, 0xa7, 0x80, 0x68, 0x6c, 0x06, 0x3f, 0xe0, 0xab, 0x26, 0xf5, 0x7b, 0xa6, 0x05, 0x11, 0xff, 0x3c, 0xee, 0x32, 0x86, 0xd8, 0xd9, 0x04, 0x87, 0xeb, 0x80, 0x14, 0x78, 0x8a, 0x1f, 0x13, 0x4e, 0xd5, 0x9a, 0x77, 0x4f, 0xdb, 0x8b, 0x0d, 0x24, 0x77, 0x0b, 0xf2, 0x30, 0x1b, 0x2d, 0x18, 0x08, 0xfe, 0x93, 0x4d, 0xc9, 0x11, 0xd1, 0x5c, 0x44, 0xe5, 0x9b, 0x90, 0x26, 0x81, 0x1e, 0x7c, 0xd8, 0xfd, 0xd8, 0x74, 0x41, 0x0d, 0x51, 0xa5, 0x6f, 0x5a, 0xea, 0x13, 0x7b, 0xfc, 0x4a, 0x8e, 0x85, 0xb7, 0xeb, 0xa7, 0x52, 0x89, 0x49, 0xcd, 0xab, 0xc4, 0xd3, 0x3a, 0xef, 0x16, 0x15, 0x7d, 0x14, 0xe3, 0xf5, 0xf6, 0x8b, 0xde, 0x5d, 0xe1, 0xc5, 0x19, 0x69, 0x17, 0xa5, 0x6d, 0xab, 0x29, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2151_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2151 = { .name = "ecdsa_brainpoolp512r1_sha512_2151", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2151_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2151_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2151_sig, .siglen = 128, .result = 1, .comment = "s == 1, tcId is 201 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2152 for ECDSA, tcId is 202 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2152_pubkey[] = { 0x90, 0x19, 0xbe, 0x20, 0xf6, 0x40, 0xec, 0xb2, 0xb7, 0xc3, 0x31, 0x1b, 0xcd, 0xa8, 0x70, 0x95, 0x49, 0x38, 0xa7, 0x80, 0x68, 0x6c, 0x06, 0x3f, 0xe0, 0xab, 0x26, 0xf5, 0x7b, 0xa6, 0x05, 0x11, 0xff, 0x3c, 0xee, 0x32, 0x86, 0xd8, 0xd9, 0x04, 0x87, 0xeb, 0x80, 0x14, 0x78, 0x8a, 0x1f, 0x13, 0x4e, 0xd5, 0x9a, 0x77, 0x4f, 0xdb, 0x8b, 0x0d, 0x24, 0x77, 0x0b, 0xf2, 0x30, 0x1b, 0x2d, 0x18, 0x08, 0xfe, 0x93, 0x4d, 0xc9, 0x11, 0xd1, 0x5c, 0x44, 0xe5, 0x9b, 0x90, 0x26, 0x81, 0x1e, 0x7c, 0xd8, 0xfd, 0xd8, 0x74, 0x41, 0x0d, 0x51, 0xa5, 0x6f, 0x5a, 0xea, 0x13, 0x7b, 0xfc, 0x4a, 0x8e, 0x85, 0xb7, 0xeb, 0xa7, 0x52, 0x89, 0x49, 0xcd, 0xab, 0xc4, 0xd3, 0x3a, 0xef, 0x16, 0x15, 0x7d, 0x14, 0xe3, 0xf5, 0xf6, 0x8b, 0xde, 0x5d, 0xe1, 0xc5, 0x19, 0x69, 0x17, 0xa5, 0x6d, 0xab, 0x29, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2152_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2152 = { .name = "ecdsa_brainpoolp512r1_sha512_2152", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2152_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2152_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2152_sig, .siglen = 128, .result = -1, .comment = "s == 0, tcId is 202 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2153 for ECDSA, tcId is 203 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2153_pubkey[] = { 0x41, 0x7d, 0xb8, 0xe9, 0x5f, 0x89, 0x13, 0x14, 0x57, 0x98, 0x3e, 0x75, 0x37, 0x90, 0x09, 0x90, 0x5d, 0x2d, 0x80, 0x08, 0xb7, 0x90, 0x51, 0x9d, 0x65, 0xe6, 0x50, 0xd3, 0xb6, 0x0a, 0x32, 0x56, 0x3c, 0x18, 0xc5, 0xaf, 0xd0, 0x6c, 0xa3, 0x14, 0xbc, 0x3a, 0x17, 0x74, 0x60, 0x87, 0xa5, 0x78, 0xce, 0x78, 0xcb, 0xb6, 0x0c, 0xb5, 0x99, 0xcf, 0x0d, 0xd9, 0xcf, 0xf2, 0x2a, 0xcb, 0x84, 0xcf, 0x0b, 0x86, 0xf2, 0xe5, 0x7c, 0xe2, 0x98, 0xc8, 0x5b, 0xc2, 0x8f, 0x3d, 0x02, 0x74, 0xcf, 0x31, 0x40, 0xea, 0x5f, 0xc6, 0x01, 0x5f, 0x4b, 0x63, 0x6f, 0xb2, 0x71, 0xda, 0x09, 0x44, 0x5e, 0x15, 0xad, 0xcb, 0x60, 0xae, 0x1f, 0x6d, 0x00, 0x1a, 0xd4, 0xe2, 0x5e, 0x6d, 0x69, 0x76, 0x72, 0x36, 0xcc, 0x16, 0xe7, 0x25, 0xf5, 0xd7, 0xb2, 0xaf, 0x44, 0x99, 0x39, 0x01, 0x7a, 0x8c, 0x8c, 0x85, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2153_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2153 = { .name = "ecdsa_brainpoolp512r1_sha512_2153", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2153_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2153_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2153_sig, .siglen = 128, .result = -1, .comment = "point at infinity during verify, tcId is 203 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2154 for ECDSA, tcId is 204 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2154_pubkey[] = { 0x9a, 0x8e, 0x0c, 0x2a, 0xa4, 0x95, 0x52, 0x03, 0xdf, 0x86, 0x6d, 0x44, 0xea, 0x32, 0x0d, 0x62, 0xfa, 0x43, 0xf1, 0xba, 0xea, 0xbc, 0xcd, 0x34, 0xec, 0x08, 0x49, 0xb3, 0xfa, 0x19, 0xbe, 0x29, 0x00, 0xca, 0x10, 0x67, 0x7c, 0x03, 0x6d, 0xa9, 0xdb, 0xb5, 0x1c, 0xa6, 0x03, 0x81, 0xcd, 0x58, 0xdf, 0xab, 0x9b, 0x2a, 0x1f, 0x6f, 0x77, 0x6b, 0x71, 0x2a, 0x22, 0xd6, 0x57, 0x57, 0x85, 0xd5, 0x1b, 0xed, 0x65, 0x2c, 0xf7, 0x75, 0xd9, 0x1b, 0xff, 0x11, 0xf9, 0x88, 0x65, 0x4a, 0xde, 0x8d, 0xd2, 0x84, 0x15, 0xb7, 0xc0, 0xde, 0x7d, 0x2c, 0x74, 0x24, 0x25, 0x6c, 0x3f, 0xd7, 0x1e, 0x9c, 0x4f, 0xab, 0xf1, 0xef, 0xf3, 0x80, 0xfd, 0xe6, 0xf8, 0xa8, 0xfe, 0x0d, 0x15, 0x60, 0xd1, 0x21, 0xba, 0x65, 0x61, 0x84, 0x51, 0xef, 0x60, 0xf9, 0x35, 0xd2, 0x92, 0xac, 0x2a, 0x26, 0x72, 0x9c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2154_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2154 = { .name = "ecdsa_brainpoolp512r1_sha512_2154", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2154_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2154_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2154_sig, .siglen = 128, .result = 1, .comment = "edge case for signature malleability, tcId is 204 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2155 for ECDSA, tcId is 205 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2155_pubkey[] = { 0x23, 0xfa, 0xce, 0x62, 0x06, 0x2c, 0xed, 0x95, 0xc7, 0x88, 0x8f, 0xcf, 0x7d, 0x4c, 0x5a, 0xf3, 0xd2, 0xa2, 0xa1, 0xcb, 0xf0, 0x86, 0x93, 0x26, 0x49, 0x69, 0x62, 0x18, 0x82, 0x73, 0x8a, 0xd7, 0x98, 0x47, 0x6f, 0xac, 0x70, 0x36, 0x1b, 0xbf, 0x2c, 0xc7, 0x9c, 0x24, 0x9f, 0xc5, 0x02, 0x71, 0xc1, 0xbf, 0xdc, 0x3f, 0x5b, 0xca, 0x20, 0xeb, 0xcc, 0xea, 0x8c, 0x36, 0x58, 0xf8, 0xd4, 0xe3, 0x07, 0x3c, 0x1a, 0x74, 0xb3, 0xc4, 0x6a, 0x20, 0x5d, 0x97, 0x07, 0x78, 0x33, 0xdc, 0xa1, 0xf3, 0x63, 0xf7, 0x6f, 0x67, 0xb6, 0x8e, 0xe1, 0x76, 0x43, 0x85, 0x28, 0xaa, 0x76, 0xab, 0xbc, 0x36, 0xb6, 0xf0, 0xa9, 0x88, 0xfb, 0x22, 0x5f, 0xe7, 0xa3, 0x3e, 0xe8, 0x85, 0x1f, 0xf2, 0x4e, 0x37, 0x13, 0x82, 0x43, 0xe2, 0xb2, 0x1d, 0xa8, 0x52, 0xa3, 0x34, 0xdb, 0xd0, 0x36, 0xcf, 0x10, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2155_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2155 = { .name = "ecdsa_brainpoolp512r1_sha512_2155", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2155_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2155_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2155_sig, .siglen = 128, .result = 1, .comment = "edge case for signature malleability, tcId is 205 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2156 for ECDSA, tcId is 206 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2156_pubkey[] = { 0x38, 0x59, 0x7c, 0x68, 0xea, 0xbf, 0xbe, 0x64, 0x8b, 0xca, 0x0b, 0x3e, 0x8d, 0x23, 0x5f, 0x90, 0x82, 0xcf, 0x15, 0xd6, 0x94, 0xe1, 0x4e, 0x68, 0x6b, 0x1e, 0x0a, 0x89, 0xb7, 0x3e, 0x3d, 0xbc, 0x34, 0x6e, 0xbb, 0xde, 0x38, 0xda, 0x2c, 0x60, 0x2f, 0xe9, 0x75, 0xc2, 0x1a, 0x1f, 0xbc, 0x8f, 0x36, 0x3b, 0x59, 0x29, 0x03, 0xd0, 0x2d, 0x44, 0x34, 0xfa, 0xe5, 0x2e, 0xe8, 0xcc, 0x3b, 0x3a, 0x57, 0x2b, 0x82, 0x08, 0x47, 0x47, 0xea, 0x5a, 0xf0, 0x63, 0x39, 0x36, 0xb5, 0x70, 0x35, 0x43, 0x65, 0xee, 0x2d, 0x7f, 0xba, 0x4c, 0x40, 0x4b, 0xd6, 0x94, 0x58, 0xeb, 0x82, 0x50, 0x07, 0xed, 0x89, 0x06, 0x7e, 0xff, 0xec, 0x6b, 0x2e, 0x67, 0xc3, 0x2d, 0x19, 0x7e, 0x8c, 0x28, 0xec, 0xfe, 0xfa, 0x7e, 0xe7, 0x9c, 0xea, 0x09, 0xd7, 0xeb, 0x24, 0x89, 0x25, 0xc5, 0x43, 0xc3, 0x0b, 0xa5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2156_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2156 = { .name = "ecdsa_brainpoolp512r1_sha512_2156", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2156_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2156_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2156_sig, .siglen = 128, .result = 1, .comment = "u1 == 1, tcId is 206 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2157 for ECDSA, tcId is 207 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2157_pubkey[] = { 0x9d, 0x60, 0xec, 0x91, 0x97, 0x6a, 0x8f, 0xc7, 0xf8, 0x42, 0x28, 0x76, 0xcc, 0xb2, 0x28, 0x70, 0xec, 0xa8, 0xd3, 0x9b, 0x8c, 0xdf, 0xc3, 0x01, 0x93, 0xe3, 0xbb, 0x22, 0xa1, 0x0e, 0x37, 0xc5, 0x37, 0xa0, 0x92, 0xdb, 0xb0, 0x12, 0x4c, 0x8c, 0x4b, 0x26, 0x65, 0x5a, 0xd9, 0x61, 0x27, 0xd3, 0x14, 0x0b, 0xc1, 0xf9, 0x55, 0x6e, 0xba, 0xbf, 0x47, 0x7f, 0xd9, 0x59, 0x51, 0xb4, 0xb0, 0xdd, 0x2b, 0xc1, 0xfc, 0xd7, 0xd6, 0x84, 0x0f, 0xd8, 0x3a, 0x5e, 0x98, 0x23, 0x61, 0xc3, 0x04, 0xa3, 0x4e, 0xd1, 0x0e, 0x87, 0x3a, 0xa4, 0x63, 0x7e, 0xca, 0xc2, 0x9f, 0x55, 0x5c, 0x05, 0x26, 0xb5, 0x19, 0xc2, 0x38, 0xce, 0x0b, 0x00, 0x2d, 0x7e, 0x2f, 0x98, 0x22, 0x5d, 0xec, 0x88, 0x4c, 0x95, 0xd7, 0x42, 0xe8, 0x6f, 0xa6, 0x8c, 0xe6, 0xe8, 0x1f, 0x65, 0x42, 0xfe, 0x81, 0x73, 0x0c, 0xfb, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2157_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2157 = { .name = "ecdsa_brainpoolp512r1_sha512_2157", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2157_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2157_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2157_sig, .siglen = 128, .result = 1, .comment = "u1 == n - 1, tcId is 207 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2158 for ECDSA, tcId is 208 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2158_pubkey[] = { 0xa9, 0x11, 0xdf, 0x35, 0x0e, 0x95, 0xc0, 0xda, 0x4d, 0x56, 0xc3, 0xc4, 0x4a, 0x84, 0xaa, 0xd8, 0x8e, 0xe8, 0x5e, 0x62, 0x8c, 0xcc, 0x44, 0xc5, 0xe1, 0x31, 0xdf, 0xad, 0x8a, 0x3f, 0xc6, 0x9e, 0xed, 0x9c, 0x62, 0x0e, 0xd8, 0xc8, 0x21, 0xc8, 0x4d, 0xe2, 0xc2, 0x11, 0x3c, 0x1d, 0x6c, 0x10, 0xaa, 0xea, 0x55, 0x44, 0x90, 0x3b, 0x1d, 0x59, 0x67, 0x8d, 0x39, 0xb0, 0x52, 0xe0, 0xf1, 0xb3, 0xa2, 0xc1, 0x6d, 0x1e, 0x74, 0xae, 0x6f, 0xd9, 0x93, 0xb9, 0x86, 0x23, 0x46, 0x65, 0xed, 0xa1, 0x4f, 0xf6, 0x78, 0xe5, 0x8c, 0x41, 0x4a, 0xe5, 0x5d, 0xe8, 0xaa, 0x1e, 0xda, 0x26, 0x24, 0x2d, 0x61, 0x6b, 0x26, 0x7e, 0x6f, 0xdb, 0x74, 0x91, 0xef, 0xb5, 0xa3, 0xc1, 0x79, 0xb8, 0x49, 0x03, 0x12, 0x70, 0x70, 0xe5, 0xe2, 0x59, 0x7d, 0x2f, 0x0b, 0x2a, 0xf3, 0x33, 0xb6, 0x34, 0x98, 0x57, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2158_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2158 = { .name = "ecdsa_brainpoolp512r1_sha512_2158", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2158_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2158_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2158_sig, .siglen = 128, .result = 1, .comment = "u2 == 1, tcId is 208 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2159 for ECDSA, tcId is 209 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2159_pubkey[] = { 0x01, 0x82, 0x3d, 0xb8, 0xfd, 0x2b, 0xa4, 0xa3, 0x4b, 0xac, 0xc4, 0xf6, 0x42, 0x83, 0x90, 0x9f, 0x4d, 0x01, 0xd0, 0x2b, 0x8d, 0xb6, 0x6f, 0x9c, 0xb9, 0xbd, 0x77, 0x80, 0x6b, 0x89, 0x0b, 0xa3, 0x1a, 0x69, 0x15, 0xb9, 0x3d, 0xcb, 0xdd, 0x72, 0xc8, 0x33, 0x38, 0xeb, 0x60, 0x29, 0xf2, 0x2c, 0x31, 0x79, 0x57, 0x12, 0xb1, 0xac, 0x7a, 0x1f, 0xb8, 0x1a, 0x30, 0x4e, 0x3c, 0x58, 0xd8, 0xd5, 0x4e, 0xc2, 0x67, 0xba, 0xd3, 0x98, 0x4a, 0x3e, 0x2f, 0xd8, 0x7d, 0xef, 0xbe, 0x86, 0x3d, 0x73, 0x88, 0x58, 0x72, 0x48, 0x8b, 0xdd, 0xa9, 0xd6, 0xe3, 0xda, 0x8e, 0xcf, 0x8e, 0xab, 0xfd, 0x46, 0x74, 0xd2, 0x01, 0x27, 0x8f, 0xfc, 0x63, 0xcb, 0xc1, 0xff, 0xa0, 0xf9, 0x9e, 0xb5, 0xe8, 0x5c, 0x9b, 0x20, 0xae, 0x10, 0xa2, 0x26, 0xe1, 0xe5, 0x59, 0x4c, 0xa7, 0x8f, 0xc0, 0xd5, 0x31, 0xd8, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2159_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x71, 0xe9, 0x13, 0xd0, 0x92, 0x9b, 0xd8, 0x5c, 0xd5, 0x38, 0x99, 0xc9, 0x77, 0xdb, 0xfd, 0x5a, 0x87, 0x75, 0xb3, 0xcd, 0x22, 0x86, 0x8c, 0x09, 0xe4, 0x42, 0x68, 0x86, 0xf5, 0x77, 0x5a, 0xf5, 0x8e, 0x29, 0x92, 0xd6, 0x33, 0x1b, 0x6e, 0xbb, 0x81, 0x04, 0x40, 0xbb, 0xaa, 0x72, 0xb5, 0x84, 0xbe, 0x76, 0x8d, 0x00, 0xb0, 0x3e, 0x91, 0xe9, 0x23, 0xaf, 0xb9, 0xac, 0x68, 0x70, 0xaa, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2159 = { .name = "ecdsa_brainpoolp512r1_sha512_2159", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2159_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2159_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2159_sig, .siglen = 128, .result = 1, .comment = "u2 == n - 1, tcId is 209 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2160 for ECDSA, tcId is 210 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2160_pubkey[] = { 0x9f, 0xa4, 0x44, 0x01, 0xdb, 0x09, 0x8e, 0x9f, 0x28, 0x57, 0x9a, 0xaf, 0x02, 0xad, 0xff, 0x61, 0xfa, 0xf1, 0xe6, 0xf7, 0x03, 0x9c, 0xf1, 0xb3, 0x13, 0x4b, 0x83, 0xdf, 0xba, 0x96, 0x2b, 0x13, 0xa4, 0x39, 0x7d, 0xcd, 0xd6, 0xfe, 0xef, 0x4b, 0x64, 0xfc, 0x32, 0xeb, 0x3d, 0xfb, 0xa3, 0xf5, 0x96, 0xf5, 0xf7, 0x5b, 0xea, 0xbd, 0x3d, 0xad, 0xe4, 0x84, 0x08, 0x93, 0x10, 0xb6, 0x58, 0x22, 0x8b, 0xb1, 0x89, 0x7c, 0x75, 0xda, 0x51, 0xe5, 0x6d, 0xb1, 0x9d, 0x8d, 0xf1, 0x36, 0x23, 0x75, 0x4a, 0x0d, 0xb9, 0xd6, 0xda, 0x50, 0x02, 0xff, 0xc8, 0xa7, 0x3b, 0xe2, 0x1b, 0x80, 0xee, 0xec, 0xca, 0x35, 0xec, 0x54, 0x1e, 0x81, 0x83, 0x1b, 0x3f, 0xec, 0x4c, 0xc3, 0x19, 0x3d, 0xc5, 0x92, 0x9f, 0x12, 0xc4, 0xc4, 0x63, 0xa4, 0x10, 0x79, 0x11, 0xbb, 0xb0, 0xf1, 0x5a, 0xe3, 0x90, 0xef, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2160_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x4f, 0x9c, 0x8a, 0x3c, 0x42, 0x4b, 0xa2, 0xb2, 0x88, 0x2c, 0x20, 0x03, 0x55, 0xd2, 0x55, 0x96, 0xb1, 0xaa, 0x06, 0x3f, 0xf9, 0xb2, 0x57, 0x30, 0x79, 0x32, 0x51, 0x28, 0xdb, 0xc6, 0xae, 0x50, 0x98, 0xe8, 0x84, 0x60, 0xf4, 0xeb, 0x43, 0x31, 0xff, 0xa2, 0x80, 0x8a, 0xd3, 0xcf, 0x23, 0x05, 0xec, 0xcc, 0xe7, 0x0f, 0x3e, 0x6d, 0xf3, 0xcb, 0x11, 0x4c, 0x63, 0x8b, 0x45, 0x9d, 0x91, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2160 = { .name = "ecdsa_brainpoolp512r1_sha512_2160", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2160_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2160_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2160_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 210 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2161 for ECDSA, tcId is 211 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2161_pubkey[] = { 0x0f, 0xe7, 0xf7, 0xca, 0x44, 0x45, 0x35, 0x60, 0xe1, 0xba, 0x38, 0xb3, 0x4e, 0xc8, 0xdf, 0xbc, 0x74, 0x5e, 0xde, 0xfc, 0x58, 0x87, 0x82, 0x55, 0x45, 0x2f, 0x61, 0x4f, 0xee, 0x56, 0x1a, 0x8a, 0x62, 0x0b, 0x4d, 0x86, 0x24, 0xe1, 0x59, 0xbd, 0x48, 0x3d, 0xb0, 0x8c, 0x9a, 0x62, 0x10, 0x0f, 0xd2, 0xea, 0x69, 0xef, 0x73, 0x81, 0xf5, 0x20, 0xab, 0xe6, 0x51, 0xb2, 0xea, 0x22, 0x6e, 0xea, 0x15, 0x6e, 0x75, 0xaf, 0x46, 0x5b, 0x22, 0xd2, 0x26, 0x40, 0x83, 0x14, 0x53, 0x6d, 0x42, 0x38, 0xa7, 0x39, 0xfd, 0x2f, 0x40, 0x03, 0xba, 0xc5, 0x52, 0xae, 0x34, 0xbf, 0xa2, 0x7e, 0x9b, 0xe4, 0x60, 0xfe, 0x40, 0xa5, 0x46, 0x8c, 0xed, 0xd3, 0x22, 0x10, 0x48, 0xcd, 0x1b, 0x8d, 0x79, 0x6b, 0xc2, 0x74, 0x94, 0x56, 0x5f, 0x88, 0xaa, 0xf7, 0xfc, 0xcc, 0x4c, 0x0f, 0xc3, 0x6b, 0x78, 0xb1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2161_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x28, 0x20, 0xc6, 0x03, 0x53, 0x4f, 0x43, 0x0d, 0xb8, 0xe4, 0x97, 0x27, 0x24, 0x4a, 0x31, 0x6a, 0xcd, 0x6e, 0xa3, 0x07, 0x33, 0x07, 0x0d, 0xc4, 0xfd, 0xd2, 0x4e, 0x22, 0x11, 0xdd, 0xed, 0x80, 0x59, 0x7a, 0x9c, 0xb6, 0xbd, 0x86, 0x6f, 0x37, 0xb2, 0x55, 0x05, 0x7a, 0xb7, 0x71, 0x92, 0x5e, 0xb4, 0x39, 0x29, 0x33, 0x19, 0xa9, 0xa2, 0xc1, 0x2d, 0xc0, 0xb7, 0xcb, 0x1d, 0xbf, 0x4f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2161 = { .name = "ecdsa_brainpoolp512r1_sha512_2161", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2161_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2161_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2161_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 211 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2162 for ECDSA, tcId is 212 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2162_pubkey[] = { 0x99, 0xe5, 0xc3, 0xad, 0x1e, 0xf5, 0x3a, 0xd7, 0x80, 0xc3, 0xc4, 0xd9, 0x0c, 0x27, 0xcc, 0x19, 0x86, 0x49, 0x6a, 0x21, 0x5b, 0x25, 0x82, 0x9a, 0x88, 0xde, 0x20, 0x0a, 0x9c, 0x21, 0x46, 0xae, 0xc8, 0xf1, 0x82, 0xdc, 0x6d, 0xec, 0x66, 0x11, 0xc7, 0xff, 0xda, 0x1a, 0x55, 0xb0, 0xcc, 0xb2, 0x04, 0x5b, 0x1e, 0xd5, 0xc9, 0x23, 0x1b, 0x9e, 0xb3, 0xcb, 0x23, 0x24, 0x17, 0xe2, 0xfc, 0xfa, 0x35, 0xe8, 0xb3, 0xf6, 0x04, 0xf5, 0xd7, 0x93, 0xd1, 0x35, 0xce, 0x06, 0xe2, 0x3f, 0xc6, 0xac, 0x82, 0xc0, 0x99, 0x7d, 0xe9, 0xe3, 0xf4, 0xd2, 0xdc, 0x36, 0x36, 0xba, 0x0b, 0x52, 0x1c, 0x78, 0x57, 0x76, 0xdb, 0xc8, 0xd4, 0x8d, 0xa5, 0xd5, 0x9a, 0x86, 0xfb, 0x3e, 0x90, 0xfb, 0x00, 0xbc, 0xcb, 0x01, 0x7d, 0x25, 0x10, 0x0b, 0xe8, 0xe3, 0x5d, 0xb1, 0xdf, 0xb5, 0xb4, 0x49, 0x67, 0xef, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2162_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x6e, 0x5d, 0x2d, 0xd1, 0xe3, 0xd2, 0x78, 0xeb, 0xc6, 0xf7, 0x34, 0x09, 0x65, 0x1e, 0xbc, 0x46, 0xb6, 0x5c, 0x6c, 0x3e, 0xfe, 0x11, 0x65, 0xb7, 0x4b, 0x51, 0x64, 0x35, 0x67, 0x83, 0x25, 0x1e, 0x3b, 0xb6, 0x66, 0x80, 0x4f, 0xaa, 0x7b, 0xf3, 0x89, 0xb5, 0xff, 0x28, 0x5b, 0x66, 0xb9, 0x12, 0xc5, 0x1c, 0x47, 0x8c, 0x58, 0xcd, 0x2d, 0xbe, 0x52, 0x93, 0xd9, 0x57, 0x35, 0xab, 0x94, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2162 = { .name = "ecdsa_brainpoolp512r1_sha512_2162", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2162_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2162_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2162_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 212 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2163 for ECDSA, tcId is 213 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2163_pubkey[] = { 0x42, 0x3f, 0xc7, 0xaa, 0x8d, 0x6d, 0x77, 0xfa, 0xe6, 0x0b, 0xeb, 0xce, 0x77, 0x57, 0xe1, 0x56, 0x89, 0x42, 0x6c, 0xba, 0xbd, 0x2c, 0x3f, 0xa6, 0xff, 0x71, 0xda, 0x77, 0x65, 0xab, 0x88, 0x7a, 0x93, 0xc9, 0x3c, 0xb8, 0xe1, 0x00, 0x88, 0x92, 0xc0, 0xd8, 0xf1, 0xe0, 0x3e, 0x48, 0x55, 0x5c, 0x81, 0xdf, 0xc4, 0x33, 0xd4, 0x2f, 0x48, 0x90, 0xb7, 0x11, 0x77, 0xb8, 0x48, 0xaa, 0xb9, 0xcc, 0x1f, 0xf6, 0xab, 0xd7, 0xc7, 0xf9, 0x53, 0xde, 0x79, 0x74, 0x80, 0xe2, 0x92, 0xb9, 0x87, 0xdd, 0xf4, 0x75, 0x70, 0xd8, 0x8d, 0xc5, 0xe5, 0x1c, 0x7a, 0x47, 0xc3, 0x57, 0xd7, 0x19, 0x78, 0x19, 0x09, 0x31, 0x97, 0x6f, 0x55, 0xcc, 0x84, 0xc3, 0xa4, 0xcd, 0x46, 0x35, 0xed, 0x5b, 0xa4, 0x92, 0x0e, 0xfa, 0x82, 0x19, 0xc7, 0xaa, 0x16, 0x85, 0xbf, 0x1a, 0x9b, 0xc7, 0x12, 0x9f, 0xa2, 0xcb, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2163_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2b, 0xd0, 0xea, 0x22, 0xdf, 0x17, 0xe2, 0xf0, 0x85, 0x40, 0x94, 0x00, 0x2d, 0xf5, 0x6a, 0x63, 0xda, 0x80, 0x71, 0x32, 0x74, 0xb5, 0x19, 0x23, 0x27, 0xb1, 0xd8, 0x6c, 0x25, 0x64, 0x37, 0xbd, 0x10, 0xf7, 0xa2, 0x1e, 0x1c, 0x74, 0x80, 0x83, 0x6d, 0xea, 0x40, 0xf5, 0x6e, 0xe9, 0xb5, 0x81, 0x0c, 0x68, 0xf2, 0xa0, 0x6e, 0x72, 0x8a, 0x80, 0x2d, 0x01, 0xb5, 0xa5, 0x14, 0xdb, 0x69, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2163 = { .name = "ecdsa_brainpoolp512r1_sha512_2163", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2163_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2163_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2163_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2164 for ECDSA, tcId is 214 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2164_pubkey[] = { 0x41, 0x5e, 0x9d, 0x50, 0xaf, 0x5d, 0xa7, 0x11, 0x89, 0x60, 0x78, 0x11, 0x68, 0x0d, 0xc1, 0x6d, 0x3d, 0xa9, 0xa0, 0xe3, 0x39, 0xa5, 0x3d, 0x16, 0x6b, 0x9b, 0x22, 0x68, 0x06, 0xa6, 0xff, 0xda, 0xe0, 0x1e, 0xb4, 0x02, 0x95, 0xcf, 0x5e, 0x00, 0xf4, 0x7d, 0xdf, 0x0b, 0x4a, 0xfa, 0x67, 0x29, 0xa8, 0xf7, 0xd1, 0x8a, 0x43, 0x7d, 0x15, 0x7d, 0xf4, 0xd9, 0x9c, 0x19, 0x18, 0x1e, 0xf5, 0x24, 0x90, 0x7e, 0xfd, 0xc1, 0x5b, 0x33, 0x86, 0x64, 0xe9, 0x11, 0xb6, 0x2f, 0x9a, 0xc0, 0x15, 0xd9, 0xe3, 0x6b, 0xb7, 0xbe, 0x0c, 0xcc, 0xdf, 0x33, 0x05, 0x17, 0xd5, 0x29, 0x70, 0xda, 0xb1, 0x88, 0x48, 0xbc, 0xe0, 0xbf, 0xdf, 0xc0, 0xbd, 0x39, 0xc6, 0x75, 0x75, 0x36, 0x66, 0x03, 0x6e, 0x4c, 0x4c, 0x5e, 0xb0, 0xc6, 0x23, 0x21, 0xb2, 0x2b, 0xd1, 0xcb, 0x1f, 0xa3, 0x52, 0x67, 0x0f, 0xbc, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2164_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x3d, 0xa9, 0x45, 0xbb, 0x81, 0x5e, 0xe5, 0x30, 0x3a, 0x05, 0xdc, 0x5e, 0xec, 0x32, 0x85, 0xb0, 0xa1, 0xed, 0xf4, 0x3b, 0xe7, 0xca, 0xa1, 0x9f, 0xc8, 0xf5, 0xac, 0x06, 0x12, 0x2b, 0x34, 0x51, 0xd8, 0x5b, 0x7d, 0xf2, 0xda, 0x41, 0xf3, 0x47, 0xe2, 0xe5, 0x14, 0x58, 0xf3, 0x9d, 0x4d, 0x16, 0xc3, 0xcc, 0x87, 0xaa, 0xd7, 0xb4, 0x51, 0x75, 0x8d, 0x3a, 0xfd, 0x97, 0x29, 0x65, 0x91, 0x56, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2164 = { .name = "ecdsa_brainpoolp512r1_sha512_2164", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2164_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2164_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2164_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2165 for ECDSA, tcId is 215 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2165_pubkey[] = { 0x2c, 0x65, 0xb6, 0x1f, 0xa1, 0xf4, 0xd3, 0xc8, 0x6c, 0x82, 0x9d, 0x15, 0xd4, 0xde, 0x5b, 0x47, 0xc5, 0xb7, 0x89, 0xf5, 0x3a, 0x43, 0x55, 0x66, 0x1f, 0x09, 0xee, 0xf3, 0xb9, 0x7b, 0x21, 0xa3, 0xb9, 0x3f, 0xae, 0x0f, 0x03, 0x5b, 0xf3, 0x47, 0xa3, 0x15, 0x59, 0x47, 0x85, 0x05, 0x9b, 0x37, 0xcc, 0xf8, 0x06, 0x2a, 0x39, 0x1a, 0xce, 0x30, 0xe6, 0x9a, 0x98, 0x4d, 0x84, 0x17, 0xca, 0x2c, 0x34, 0x1a, 0x80, 0x19, 0x65, 0x3a, 0xd6, 0x17, 0xda, 0x57, 0xc9, 0x99, 0x7c, 0x2d, 0xeb, 0xfa, 0xf3, 0x40, 0xa6, 0x78, 0x0b, 0xd8, 0x37, 0x1a, 0xee, 0x2c, 0x66, 0x8b, 0x7d, 0xcc, 0x70, 0xfe, 0x06, 0x78, 0x9b, 0x8f, 0x36, 0xf8, 0xf1, 0x3f, 0x40, 0x82, 0x2f, 0x04, 0x01, 0x10, 0x2e, 0x03, 0x74, 0x2c, 0x8f, 0xfa, 0xa1, 0xdc, 0xf0, 0xba, 0xf9, 0x81, 0xc7, 0xec, 0xc1, 0xa7, 0xe2, 0x78, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2165_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x7b, 0x52, 0x8b, 0x77, 0x02, 0xbd, 0xca, 0x60, 0x74, 0x0b, 0xb8, 0xbd, 0xd8, 0x65, 0x0b, 0x61, 0x43, 0xdb, 0xe8, 0x77, 0xcf, 0x95, 0x43, 0x3f, 0x91, 0xeb, 0x58, 0x0c, 0x24, 0x56, 0x68, 0xa3, 0xb0, 0xb6, 0xfb, 0xe5, 0xb4, 0x83, 0xe6, 0x8f, 0xc5, 0xca, 0x28, 0xb1, 0xe7, 0x3a, 0x9a, 0x2d, 0x87, 0x99, 0x0f, 0x55, 0xaf, 0x68, 0xa2, 0xeb, 0x1a, 0x75, 0xfb, 0x2e, 0x52, 0xcb, 0x22, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2165 = { .name = "ecdsa_brainpoolp512r1_sha512_2165", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2165_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2165_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2165_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2166 for ECDSA, tcId is 216 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2166_pubkey[] = { 0x6a, 0x82, 0x22, 0xda, 0x63, 0x25, 0x50, 0xf8, 0x5a, 0x0d, 0x59, 0xfa, 0x8e, 0x8f, 0x32, 0x7e, 0x16, 0x27, 0x4b, 0x63, 0x97, 0xd5, 0xa4, 0x2a, 0xa1, 0xbf, 0x6f, 0x1a, 0x1b, 0x5c, 0xed, 0xd3, 0xa1, 0x18, 0x2d, 0xd0, 0xf2, 0x2f, 0xca, 0x69, 0x0c, 0x5e, 0xf5, 0xa2, 0x61, 0xe6, 0xe5, 0xd8, 0xba, 0xe3, 0x4f, 0x2e, 0x1a, 0xe2, 0x94, 0xb5, 0x0a, 0x28, 0x7c, 0x88, 0x25, 0x74, 0xee, 0x7c, 0x82, 0xd8, 0x62, 0x18, 0x78, 0x23, 0x38, 0x75, 0x7b, 0x9b, 0xab, 0x35, 0x9e, 0x63, 0x51, 0x6c, 0xe3, 0xdb, 0xf5, 0xe7, 0xfd, 0xbd, 0x5b, 0xaa, 0x4a, 0xe9, 0x97, 0x13, 0xfe, 0x5d, 0xd8, 0x5b, 0xb6, 0x1e, 0xa1, 0x2a, 0x17, 0x8c, 0xfb, 0x50, 0xa2, 0x5e, 0xef, 0x41, 0xa0, 0x85, 0xdc, 0xd5, 0xe5, 0xb8, 0x8f, 0x14, 0x8b, 0xad, 0xf4, 0xc8, 0xf4, 0x03, 0x1e, 0x03, 0xd4, 0x9a, 0xec, 0x6b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2166_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2d, 0x17, 0x04, 0x8e, 0xe5, 0x7e, 0x45, 0xb6, 0x60, 0x57, 0xac, 0xfa, 0xb9, 0xc3, 0xb2, 0xa4, 0x93, 0x9e, 0x81, 0xb1, 0xeb, 0x0f, 0x89, 0x72, 0xa8, 0xc2, 0xb5, 0xaa, 0x6b, 0x04, 0xc1, 0x55, 0x84, 0x89, 0x4e, 0x16, 0x8e, 0x15, 0xdc, 0x5c, 0xf8, 0x89, 0xfa, 0x09, 0xf7, 0x93, 0x4d, 0x10, 0x84, 0xde, 0xf3, 0x51, 0x04, 0x2c, 0x2b, 0x97, 0xcd, 0xe3, 0xc1, 0x00, 0xb8, 0x94, 0xba, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2166 = { .name = "ecdsa_brainpoolp512r1_sha512_2166", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2166_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2166_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2166_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2167 for ECDSA, tcId is 217 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2167_pubkey[] = { 0xaa, 0x17, 0xb5, 0xbd, 0x2b, 0xbf, 0xce, 0x1a, 0xe1, 0x33, 0xe2, 0x47, 0x9f, 0xe1, 0xf8, 0x7e, 0x64, 0xe6, 0x16, 0x58, 0x97, 0xee, 0x45, 0x73, 0x91, 0xbc, 0x2d, 0xae, 0xe9, 0xfd, 0x76, 0x86, 0xb8, 0xd4, 0xbe, 0xc8, 0xec, 0xfa, 0x8a, 0x56, 0x93, 0xf3, 0x9b, 0x4e, 0xf9, 0xb4, 0x16, 0x3c, 0xdb, 0xc5, 0xc4, 0x54, 0x6f, 0xad, 0xba, 0x0c, 0xfe, 0x3e, 0x15, 0x32, 0xea, 0x2a, 0xad, 0xd4, 0x73, 0xfa, 0x93, 0x03, 0x97, 0x17, 0xf9, 0xdf, 0xd4, 0x9a, 0x9c, 0x28, 0x84, 0xdc, 0x2d, 0x10, 0x12, 0xd7, 0x1d, 0x60, 0x54, 0xea, 0x0f, 0x39, 0x16, 0x85, 0xbd, 0xe5, 0xe8, 0xc0, 0xd5, 0xd6, 0x11, 0xb4, 0x0b, 0xd1, 0xfb, 0xe3, 0x5d, 0xc5, 0xbd, 0x7e, 0x91, 0x6d, 0xdc, 0x9a, 0x66, 0xba, 0x54, 0xae, 0x89, 0x49, 0x77, 0x6f, 0x2f, 0x21, 0xd4, 0xcf, 0x54, 0xb2, 0xf6, 0xc7, 0x57, 0xc5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2167_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2b, 0x18, 0x98, 0x6d, 0x87, 0xbd, 0x21, 0xcd, 0xcb, 0xf0, 0xf1, 0x31, 0x03, 0x79, 0x47, 0x35, 0x97, 0x93, 0x54, 0x29, 0x0c, 0x43, 0xaa, 0x8c, 0x29, 0x8d, 0xbd, 0x47, 0x3d, 0xe5, 0xa3, 0x89, 0xcb, 0x55, 0xf0, 0x0c, 0x21, 0x84, 0xa2, 0x35, 0xf6, 0xb7, 0x34, 0x73, 0x05, 0x92, 0x6c, 0x0e, 0x25, 0x78, 0x5e, 0xca, 0x6d, 0x98, 0xeb, 0x2b, 0xd9, 0x21, 0x56, 0x21, 0x64, 0xf3, 0x65, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2167 = { .name = "ecdsa_brainpoolp512r1_sha512_2167", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2167_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2167_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2167_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2168 for ECDSA, tcId is 218 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2168_pubkey[] = { 0xa7, 0x2d, 0xe8, 0xd4, 0xd2, 0x89, 0x6f, 0x9b, 0xc6, 0xd7, 0x2a, 0x68, 0xf8, 0xb2, 0x58, 0x8f, 0xa2, 0xec, 0xb4, 0x99, 0x2e, 0x8e, 0x36, 0x16, 0xfd, 0x58, 0xa1, 0xa1, 0x2f, 0x03, 0x27, 0xdb, 0x1f, 0xc3, 0x74, 0x0e, 0xd3, 0x84, 0x02, 0x20, 0x78, 0x15, 0x6f, 0xe6, 0x67, 0x12, 0xbf, 0x09, 0x2c, 0xab, 0xbc, 0x43, 0x65, 0x9c, 0xdd, 0xc9, 0xcf, 0x3d, 0xbf, 0x80, 0x7b, 0xcf, 0x36, 0x35, 0x88, 0x19, 0x31, 0x9a, 0xef, 0x0e, 0x23, 0xb1, 0x42, 0xe7, 0x5d, 0x9c, 0x4c, 0x13, 0x98, 0x12, 0xe5, 0x5e, 0x1c, 0x41, 0x9d, 0x96, 0x08, 0x4a, 0x68, 0xb9, 0x50, 0x35, 0x6c, 0x46, 0xeb, 0x23, 0x57, 0x51, 0x2f, 0x20, 0x8b, 0xb1, 0xdb, 0xe9, 0x70, 0xd1, 0x90, 0x0c, 0x8d, 0xfd, 0xa7, 0x7d, 0x2f, 0x47, 0x77, 0x60, 0xdb, 0x63, 0xd2, 0x28, 0xdb, 0xf8, 0xb3, 0x42, 0x26, 0x5b, 0xcb, 0xde, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2168_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x44, 0x5f, 0x8c, 0xaa, 0xf2, 0x09, 0x3f, 0x68, 0x82, 0xbc, 0x6c, 0x7a, 0xf5, 0x37, 0xeb, 0xac, 0xbf, 0x86, 0x20, 0xf0, 0xb6, 0xac, 0x68, 0xa1, 0x9a, 0x5d, 0xe1, 0x93, 0x52, 0x25, 0xcc, 0x94, 0x9c, 0x24, 0x36, 0x55, 0x04, 0x22, 0x29, 0x38, 0xc5, 0x69, 0x82, 0xb8, 0x24, 0xbb, 0xee, 0x59, 0x25, 0x3f, 0x4a, 0x86, 0x64, 0x85, 0x14, 0x9e, 0xc4, 0xc5, 0xb5, 0xec, 0x9a, 0xd7, 0x4e, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2168 = { .name = "ecdsa_brainpoolp512r1_sha512_2168", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2168_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2168_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2168_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2169 for ECDSA, tcId is 219 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2169_pubkey[] = { 0x37, 0xd8, 0x51, 0x9f, 0x0c, 0x74, 0x92, 0xff, 0x44, 0x3b, 0xad, 0x34, 0xcb, 0xd5, 0x4e, 0xee, 0x9b, 0xa1, 0x20, 0xe4, 0x1f, 0xbb, 0x9f, 0xd6, 0x04, 0xcd, 0xd6, 0xd4, 0x1b, 0x76, 0x2b, 0xf2, 0xbb, 0xa3, 0x92, 0xd4, 0xf4, 0x64, 0x69, 0x78, 0x73, 0x0f, 0x65, 0x56, 0x66, 0x2b, 0x99, 0x76, 0x8d, 0xcb, 0x27, 0x54, 0xc1, 0x80, 0xc0, 0xfb, 0xd8, 0xad, 0x70, 0x76, 0x36, 0xd8, 0xf8, 0xb1, 0x43, 0xb1, 0x7d, 0x72, 0x8f, 0xfe, 0xac, 0x45, 0x40, 0x19, 0x53, 0x0d, 0x2b, 0xb0, 0xf6, 0x9a, 0x58, 0x53, 0x5a, 0x2e, 0x8e, 0x60, 0x9f, 0xf6, 0x95, 0x96, 0xd5, 0x3d, 0x11, 0xa0, 0x0e, 0x6f, 0x65, 0x0d, 0x49, 0xd9, 0xa5, 0xf2, 0x11, 0x20, 0x4b, 0x4e, 0x5a, 0x42, 0x1c, 0x75, 0x7f, 0x8e, 0x17, 0x38, 0x95, 0x5d, 0xf9, 0x6b, 0xad, 0x5b, 0xfd, 0xd7, 0x1e, 0x15, 0x5a, 0x93, 0x2d, 0x1f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2169_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2d, 0xa0, 0x89, 0xbe, 0x4c, 0xcf, 0x10, 0xec, 0x5b, 0xd4, 0x63, 0x55, 0x6e, 0xfb, 0xd3, 0x38, 0x8c, 0xc3, 0x43, 0xb9, 0xdd, 0x0b, 0xbd, 0x6f, 0x2e, 0x98, 0xa5, 0xd0, 0xca, 0x36, 0x2d, 0x0f, 0xde, 0x2a, 0xeb, 0xf0, 0x2b, 0xde, 0xf1, 0x73, 0xa0, 0xf1, 0xf0, 0x47, 0x55, 0xee, 0x76, 0xa0, 0x98, 0x72, 0x76, 0x38, 0xe4, 0xf7, 0xf3, 0x89, 0x52, 0x1d, 0x99, 0x7b, 0xab, 0x85, 0xb7, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2169 = { .name = "ecdsa_brainpoolp512r1_sha512_2169", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2169_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2169_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2169_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2170 for ECDSA, tcId is 220 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2170_pubkey[] = { 0x2a, 0xfb, 0x78, 0x6d, 0x24, 0x6b, 0x43, 0xa5, 0x3d, 0xf6, 0x84, 0x1d, 0x04, 0xd4, 0xc7, 0x70, 0x53, 0x57, 0x93, 0x96, 0x97, 0x71, 0x4e, 0xd4, 0x68, 0x1d, 0xc5, 0x95, 0x18, 0x81, 0x91, 0x87, 0x7a, 0x46, 0xf3, 0xc6, 0xbb, 0xc6, 0x31, 0x70, 0x40, 0x6e, 0x0c, 0x6d, 0xb7, 0xdd, 0x67, 0x89, 0xa6, 0x44, 0x73, 0x8f, 0x7d, 0x0a, 0xcb, 0x7c, 0x9e, 0x59, 0x59, 0xc0, 0x1e, 0x39, 0xe9, 0x75, 0x20, 0x32, 0x7e, 0x6e, 0x5c, 0x92, 0x51, 0x98, 0xb7, 0x4a, 0xf0, 0xbe, 0xb5, 0x1a, 0x83, 0xea, 0x66, 0x2e, 0xfb, 0xc3, 0xf8, 0x5b, 0xba, 0x89, 0x24, 0x04, 0x6b, 0x97, 0xda, 0xcb, 0x07, 0x17, 0xd6, 0xb7, 0xf4, 0x22, 0xd8, 0x42, 0x66, 0x25, 0xea, 0x7f, 0x6b, 0x4c, 0xe8, 0x65, 0xdf, 0xab, 0x26, 0x4b, 0xa5, 0x24, 0x7b, 0x4d, 0xad, 0x3e, 0x2c, 0xa5, 0x61, 0x4b, 0xff, 0x4c, 0x0d, 0x5f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2170_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x5b, 0x41, 0x13, 0x7c, 0x99, 0x9e, 0x21, 0xd8, 0xb7, 0xa8, 0xc6, 0xaa, 0xdd, 0xf7, 0xa6, 0x71, 0x19, 0x86, 0x87, 0x73, 0xba, 0x17, 0x7a, 0xde, 0x5d, 0x31, 0x4b, 0xa1, 0x94, 0x6c, 0x5a, 0x1f, 0xbc, 0x55, 0xd7, 0xe0, 0x57, 0xbd, 0xe2, 0xe7, 0x41, 0xe3, 0xe0, 0x8e, 0xab, 0xdc, 0xed, 0x41, 0x30, 0xe4, 0xec, 0x71, 0xc9, 0xef, 0xe7, 0x12, 0xa4, 0x3b, 0x32, 0xf7, 0x57, 0x0b, 0x6f, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2170 = { .name = "ecdsa_brainpoolp512r1_sha512_2170", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2170_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2170_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2170_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2171 for ECDSA, tcId is 221 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2171_pubkey[] = { 0x1b, 0x41, 0x9a, 0xa3, 0x9d, 0x3e, 0x31, 0x25, 0xae, 0x70, 0x5f, 0x77, 0x88, 0x5c, 0x3b, 0x11, 0x38, 0x7b, 0xc4, 0x22, 0xfa, 0xdb, 0xba, 0x7e, 0xb0, 0xa6, 0x6a, 0xc1, 0x4a, 0xe2, 0x6c, 0x0f, 0x97, 0x83, 0x33, 0xdc, 0xe6, 0x4e, 0x4f, 0xe0, 0xd3, 0xbd, 0xbc, 0x6d, 0x52, 0xad, 0xce, 0xe3, 0xb5, 0x14, 0x93, 0xa2, 0x6d, 0x21, 0x37, 0x6b, 0xef, 0x76, 0x4e, 0x06, 0x28, 0xdf, 0xbb, 0x12, 0x73, 0xee, 0x3e, 0xf2, 0xea, 0xe0, 0x4a, 0x27, 0xe7, 0x98, 0x32, 0x3d, 0x50, 0xe0, 0xf4, 0xfe, 0xfb, 0xc4, 0x3f, 0xc4, 0x61, 0x36, 0x77, 0x31, 0x1d, 0xa8, 0x58, 0xf8, 0x3e, 0x5d, 0x9b, 0x3b, 0x9e, 0x41, 0xaf, 0x6c, 0x55, 0x82, 0x90, 0x8a, 0x3e, 0xf2, 0x94, 0x8e, 0x4b, 0x5d, 0xc8, 0xc5, 0xb8, 0xa5, 0x90, 0xb3, 0xce, 0xda, 0x18, 0xe4, 0xc4, 0xcc, 0x05, 0xdd, 0xc2, 0x68, 0xdc, 0xfe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2171_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x88, 0xe1, 0x9d, 0x3a, 0xe6, 0x6d, 0x32, 0xc5, 0x13, 0x7d, 0x2a, 0x00, 0x4c, 0xf3, 0x79, 0xa9, 0xa6, 0x49, 0xcb, 0x2d, 0x97, 0x23, 0x38, 0x4d, 0x8b, 0xc9, 0xf1, 0x72, 0x5e, 0xa2, 0x87, 0x2f, 0x9a, 0x80, 0xc3, 0xd0, 0x83, 0x9c, 0xd4, 0x5a, 0xe2, 0xd5, 0xd0, 0xd6, 0x01, 0xcb, 0x63, 0xe1, 0xc9, 0x57, 0x62, 0xaa, 0xae, 0xe7, 0xda, 0x9b, 0xf6, 0x58, 0xcc, 0x73, 0x02, 0x91, 0x26, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2171 = { .name = "ecdsa_brainpoolp512r1_sha512_2171", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2171_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2171_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2171_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2172 for ECDSA, tcId is 222 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2172_pubkey[] = { 0x32, 0x7a, 0x6e, 0x5e, 0x4e, 0xf2, 0xbe, 0xc0, 0x63, 0x1e, 0x13, 0x35, 0x40, 0x94, 0xcc, 0xa4, 0xdf, 0x5b, 0xc4, 0x01, 0x8a, 0x05, 0x72, 0xc0, 0x08, 0x73, 0x54, 0x3d, 0x98, 0x10, 0x0a, 0xc0, 0x9d, 0x76, 0xd2, 0x7b, 0xd6, 0xe0, 0xbc, 0x2d, 0xc9, 0x6b, 0xd8, 0xcb, 0xbe, 0x19, 0xae, 0xc0, 0xc1, 0x41, 0x32, 0x0f, 0xfd, 0x64, 0xae, 0xdb, 0xa5, 0xc1, 0x7a, 0x1b, 0xe4, 0xbd, 0x29, 0x60, 0x78, 0xdc, 0xcc, 0x45, 0x3c, 0x2a, 0xa7, 0xe9, 0x2a, 0x77, 0x34, 0x82, 0x33, 0x06, 0xc6, 0xc1, 0xae, 0x3e, 0x52, 0x13, 0x1e, 0xdb, 0xfa, 0x5f, 0xdd, 0xb7, 0x19, 0xc8, 0xd5, 0xd0, 0x0b, 0xa3, 0xd3, 0x8b, 0xaa, 0x8f, 0xb7, 0x27, 0xbb, 0x94, 0x1e, 0x21, 0xba, 0xff, 0x37, 0x55, 0x03, 0xc2, 0x7e, 0xed, 0x70, 0x46, 0xfa, 0x6d, 0x00, 0xc7, 0x0e, 0xf1, 0x36, 0xe0, 0x1d, 0x36, 0xef, 0xd5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2172_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x37, 0x2e, 0x96, 0xe8, 0xf1, 0xe9, 0x3c, 0x75, 0xe3, 0x7b, 0x9a, 0x04, 0xb2, 0x8f, 0x5e, 0x23, 0x5b, 0x2e, 0x36, 0x1f, 0x7f, 0x08, 0xb2, 0xdb, 0xa5, 0xa8, 0xb2, 0x1a, 0xb3, 0xc1, 0x92, 0x8f, 0x1d, 0xdb, 0x33, 0x40, 0x27, 0xd5, 0x3d, 0xf9, 0xc4, 0xda, 0xff, 0x94, 0x2d, 0xb3, 0x5c, 0x89, 0x62, 0x8e, 0x23, 0xc6, 0x2c, 0x66, 0x96, 0xdf, 0x29, 0x49, 0xec, 0xab, 0x9a, 0xd5, 0xca, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2172 = { .name = "ecdsa_brainpoolp512r1_sha512_2172", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2172_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2172_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2172_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2173 for ECDSA, tcId is 223 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2173_pubkey[] = { 0x9a, 0xa1, 0x89, 0xb5, 0xb1, 0xe5, 0xb6, 0x66, 0x41, 0xc7, 0xec, 0x3f, 0xa7, 0xd0, 0xdb, 0xb6, 0xa7, 0x2d, 0x87, 0x4d, 0x18, 0xc7, 0x92, 0x7c, 0xac, 0x84, 0x70, 0xa7, 0x09, 0x69, 0xf3, 0x57, 0x05, 0xbc, 0x73, 0x18, 0x2a, 0xbc, 0x10, 0xb5, 0xa1, 0x69, 0x55, 0x88, 0x96, 0x19, 0xbc, 0xba, 0x6f, 0xf3, 0x10, 0x20, 0x94, 0x73, 0xc3, 0x12, 0x0e, 0x44, 0xa2, 0xe1, 0xbf, 0x9f, 0xc9, 0xc7, 0x2e, 0x5d, 0xe7, 0x47, 0x49, 0xa0, 0x52, 0x27, 0x50, 0x9a, 0x2b, 0x3d, 0x03, 0x22, 0xa8, 0xf9, 0x02, 0x07, 0x09, 0xcb, 0x8e, 0x5d, 0xa6, 0x7d, 0xfe, 0xe2, 0x8e, 0x96, 0xe0, 0xab, 0x8a, 0x1c, 0x32, 0x08, 0x05, 0x5d, 0x1f, 0x08, 0xf3, 0x8f, 0xa1, 0xcc, 0x79, 0xc1, 0x19, 0xff, 0x70, 0x45, 0x92, 0xa8, 0xee, 0xf5, 0x8b, 0xf6, 0x62, 0x04, 0xb8, 0x1a, 0xd0, 0xb0, 0xab, 0xdd, 0x03, 0x90, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2173_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2173 = { .name = "ecdsa_brainpoolp512r1_sha512_2173", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2173_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2173_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2173_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 223 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2174 for ECDSA, tcId is 224 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2174_pubkey[] = { 0x43, 0x9a, 0x85, 0x9d, 0x7a, 0xaf, 0x99, 0xf5, 0x72, 0x05, 0xf2, 0x10, 0xc9, 0x3a, 0xb8, 0x9c, 0x31, 0x7b, 0xd2, 0xfa, 0x21, 0x5e, 0x79, 0x03, 0xa6, 0x79, 0x76, 0xd3, 0x36, 0xd8, 0x3b, 0x1b, 0xf9, 0x71, 0x90, 0x67, 0x07, 0x74, 0x20, 0x07, 0x8f, 0x83, 0x75, 0x14, 0xd6, 0x07, 0xae, 0x39, 0x81, 0x18, 0x5d, 0xc7, 0xb0, 0x26, 0x27, 0xb0, 0x5a, 0xc6, 0x6e, 0x49, 0x1a, 0x2b, 0x94, 0xc5, 0x4c, 0x3f, 0xa4, 0x7a, 0x92, 0x6d, 0xbd, 0x69, 0x45, 0xac, 0xa6, 0xd4, 0x04, 0xf8, 0x5f, 0x46, 0xe0, 0x70, 0xd0, 0x4e, 0x7d, 0xab, 0xf6, 0xfa, 0x9c, 0xb8, 0x8c, 0x34, 0x28, 0xdd, 0x02, 0xfd, 0x01, 0xa9, 0xb1, 0x90, 0xbb, 0x61, 0xdf, 0xb7, 0xb2, 0x43, 0x9e, 0x42, 0xd0, 0xb6, 0x89, 0xae, 0xf9, 0x68, 0x35, 0x6b, 0x01, 0x1c, 0xf3, 0x05, 0x4a, 0xb9, 0x29, 0xc8, 0x57, 0x77, 0xe6, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2174_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x48, 0xd7, 0x85, 0x1b, 0x07, 0x9f, 0x62, 0x02, 0x09, 0xe8, 0xba, 0x05, 0xeb, 0x24, 0xee, 0x51, 0x59, 0x64, 0xd3, 0x75, 0x77, 0xc7, 0xc3, 0xae, 0x30, 0x9a, 0xb2, 0xbd, 0xdd, 0x7e, 0xee, 0x71, 0x01, 0x89, 0x9d, 0x0c, 0x6c, 0x78, 0x01, 0x11, 0xbe, 0xde, 0x61, 0xed, 0x12, 0x15, 0xec, 0x42, 0x39, 0x94, 0x09, 0xd6, 0x05, 0xec, 0xcc, 0x9a, 0xac, 0x4c, 0x95, 0x48, 0xf8, 0x77, 0x70, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2174 = { .name = "ecdsa_brainpoolp512r1_sha512_2174", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2174_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2174_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2174_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 224 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2175 for ECDSA, tcId is 225 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2175_pubkey[] = { 0x66, 0xfa, 0x15, 0x8c, 0x51, 0xd3, 0xa9, 0x42, 0x1c, 0xbb, 0x13, 0x37, 0x99, 0xab, 0x90, 0xa1, 0x23, 0x87, 0xec, 0x78, 0x75, 0xa2, 0xb3, 0x54, 0xb8, 0x48, 0x76, 0x73, 0x49, 0x5b, 0xb1, 0x87, 0x9e, 0xf1, 0x67, 0x2f, 0x49, 0x28, 0xa2, 0x03, 0x40, 0x95, 0xa0, 0x2c, 0x7d, 0x08, 0x3f, 0x27, 0xe0, 0xea, 0xc0, 0xa4, 0x0b, 0x87, 0xd8, 0x37, 0xf5, 0x2e, 0x76, 0x48, 0x20, 0x0c, 0x56, 0x66, 0x27, 0x80, 0x37, 0xcd, 0x7e, 0x5e, 0x8b, 0xc6, 0x82, 0x10, 0x27, 0xb2, 0x1a, 0x2c, 0xa7, 0xae, 0x9c, 0x69, 0x4a, 0xe8, 0x09, 0x96, 0x6b, 0x79, 0xd4, 0x41, 0xdc, 0xdc, 0x9d, 0x3b, 0x44, 0x4f, 0x87, 0x93, 0x12, 0x2f, 0x30, 0x95, 0x6a, 0xe0, 0xa7, 0xaa, 0xdf, 0xbe, 0x43, 0x1a, 0x34, 0x2d, 0xcd, 0x85, 0x70, 0x95, 0xbd, 0x05, 0x8a, 0x74, 0x2b, 0xa5, 0x8a, 0xf1, 0x8b, 0x1a, 0x51, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2175_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0e, 0x6c, 0xf6, 0x8d, 0x5b, 0xe5, 0x13, 0x82, 0x53, 0xde, 0x29, 0x0e, 0xc4, 0x1b, 0xde, 0x7d, 0xcf, 0x96, 0x06, 0x5c, 0x28, 0x0d, 0x0a, 0x09, 0xd9, 0xa4, 0x88, 0x8d, 0x5d, 0xe0, 0x4d, 0xbe, 0xa7, 0x50, 0x38, 0xfc, 0x06, 0x1b, 0x65, 0x33, 0x40, 0x69, 0x6c, 0x62, 0xba, 0xae, 0xa9, 0x2d, 0x57, 0x47, 0xe5, 0x02, 0x49, 0x03, 0x4c, 0x42, 0x7f, 0x2f, 0x81, 0x3e, 0x2b, 0x98, 0xc2, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2175 = { .name = "ecdsa_brainpoolp512r1_sha512_2175", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2175_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2175_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2175_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 225 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2176 for ECDSA, tcId is 226 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2176_pubkey[] = { 0x29, 0xbd, 0xf2, 0xfe, 0xb7, 0x67, 0x40, 0x76, 0x3f, 0x50, 0x98, 0xcf, 0xd5, 0xef, 0xac, 0xa5, 0xfa, 0x2b, 0x19, 0x65, 0x4b, 0xd4, 0xe8, 0xd5, 0xd7, 0x59, 0x78, 0xb9, 0x05, 0x20, 0xe7, 0x48, 0x38, 0x75, 0xbf, 0xbe, 0x2a, 0xc0, 0xe5, 0x7a, 0xdf, 0x90, 0xcc, 0x14, 0x0a, 0xf5, 0x98, 0x21, 0x78, 0x67, 0x24, 0xe5, 0xea, 0xb9, 0x11, 0x14, 0x45, 0xa2, 0xde, 0x4b, 0x37, 0x68, 0x77, 0x4c, 0x32, 0xae, 0x39, 0x79, 0xb3, 0x52, 0xdc, 0xfb, 0x0c, 0x72, 0xe8, 0xf6, 0x79, 0x9a, 0xb7, 0x64, 0x15, 0x42, 0x8a, 0x99, 0x56, 0xca, 0x5d, 0x2b, 0x14, 0xd7, 0x4b, 0x9a, 0x1b, 0xe1, 0x89, 0xbc, 0xd3, 0x03, 0x2f, 0x74, 0x2e, 0xc9, 0x47, 0x44, 0xc3, 0x3a, 0x3c, 0xdc, 0xa1, 0x0d, 0xff, 0x4d, 0x5b, 0x07, 0x92, 0x96, 0x60, 0xd6, 0xe7, 0x87, 0x29, 0xad, 0xa6, 0xe5, 0xbe, 0x9a, 0xe1, 0x01, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2176_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x41, 0xb2, 0xaf, 0x78, 0x29, 0x41, 0x65, 0xd8, 0x6f, 0x75, 0x1c, 0xb8, 0x2a, 0x80, 0x32, 0x7a, 0x0e, 0xb4, 0xc0, 0x54, 0x4a, 0x06, 0xd4, 0xa5, 0x71, 0x9a, 0xea, 0x4a, 0x09, 0x8f, 0x11, 0x59, 0x73, 0xaf, 0xf4, 0xc1, 0xa8, 0xce, 0xc2, 0xdc, 0xf0, 0xf5, 0xf0, 0xfa, 0x24, 0x19, 0x0b, 0x47, 0x4a, 0x25, 0xb9, 0xab, 0x3b, 0xae, 0xf7, 0x77, 0x0f, 0x68, 0xba, 0x9c, 0x7e, 0xf7, 0xf7, 0xca, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2176 = { .name = "ecdsa_brainpoolp512r1_sha512_2176", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2176_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2176_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2176_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 226 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2177 for ECDSA, tcId is 227 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2177_pubkey[] = { 0x80, 0xaf, 0x1b, 0xb9, 0xdf, 0xce, 0x00, 0x96, 0x37, 0x99, 0xe0, 0x1a, 0xec, 0xbf, 0x8b, 0xf5, 0xa6, 0x59, 0xb6, 0xbb, 0xfa, 0x46, 0x89, 0xf0, 0x67, 0x4a, 0x61, 0x15, 0xbc, 0xdf, 0x99, 0x6d, 0x15, 0x5d, 0x9a, 0x75, 0xc5, 0x29, 0x51, 0x41, 0xe2, 0xcc, 0x3e, 0x61, 0x1b, 0x32, 0xc5, 0x89, 0xe6, 0xae, 0x76, 0xae, 0xf1, 0x90, 0xdc, 0x8a, 0x36, 0x3b, 0xa9, 0xf9, 0xc3, 0xcc, 0x57, 0x27, 0x03, 0x8c, 0xd9, 0x5b, 0xcd, 0x34, 0x42, 0x0e, 0x63, 0xae, 0x43, 0x5a, 0xfe, 0xd0, 0x9f, 0x70, 0xe4, 0xeb, 0xc3, 0x50, 0x1b, 0x42, 0xf3, 0x5e, 0xbb, 0xec, 0xd8, 0xb0, 0xa1, 0x65, 0xc6, 0x16, 0x16, 0x09, 0x0b, 0x11, 0x8e, 0xf0, 0x5a, 0x43, 0xc3, 0x1f, 0x3b, 0x71, 0x09, 0x07, 0xc7, 0x45, 0x26, 0x4b, 0x1f, 0x53, 0x7c, 0x28, 0x59, 0x6a, 0x40, 0x3c, 0x25, 0x19, 0x5e, 0x87, 0x54, 0x5e, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2177_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x9c, 0x5f, 0xc3, 0xfb, 0xf7, 0x0f, 0x16, 0xcc, 0xda, 0xc9, 0x2f, 0x95, 0x97, 0x44, 0x08, 0xff, 0xff, 0x7e, 0x05, 0xbd, 0x02, 0x68, 0xcf, 0xdf, 0x86, 0x2e, 0x9b, 0xeb, 0x17, 0x4f, 0xb4, 0x8e, 0xe1, 0xe0, 0xe1, 0x0f, 0x94, 0x2d, 0x8f, 0xc6, 0x7e, 0xd6, 0x9f, 0x7a, 0x94, 0xc8, 0x5f, 0x61, 0xc8, 0x40, 0x48, 0x61, 0x7e, 0x67, 0xc1, 0xcc, 0x6c, 0x02, 0x60, 0xe0, 0x48, 0x64, 0x1a, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2177 = { .name = "ecdsa_brainpoolp512r1_sha512_2177", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2177_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2177_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2177_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2178 for ECDSA, tcId is 228 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2178_pubkey[] = { 0x6e, 0xeb, 0x47, 0x35, 0x28, 0x6c, 0x2c, 0x09, 0x4d, 0xda, 0x29, 0x71, 0x0a, 0x77, 0x4e, 0xcc, 0xdb, 0x6c, 0xa5, 0xfa, 0x89, 0x91, 0xf9, 0xad, 0xbc, 0x76, 0x9b, 0x44, 0x8d, 0x38, 0x99, 0x94, 0x3c, 0x86, 0x0e, 0x3f, 0xb5, 0x0c, 0xff, 0x34, 0x82, 0x5a, 0xda, 0xee, 0x82, 0xaa, 0xb5, 0xa5, 0x33, 0xad, 0xaf, 0x74, 0xfb, 0xfe, 0x7e, 0x8b, 0x03, 0x2e, 0x26, 0x42, 0xfa, 0x5f, 0xc8, 0x6f, 0x5e, 0xf7, 0x4a, 0xa6, 0x1a, 0x26, 0x82, 0x3b, 0xc2, 0xed, 0x70, 0xf0, 0x8b, 0x64, 0xa6, 0x90, 0x6d, 0xb9, 0x81, 0x56, 0x4d, 0x5e, 0x0c, 0x15, 0xa0, 0x76, 0xa5, 0x82, 0xda, 0x8f, 0xee, 0x20, 0xb7, 0x73, 0xef, 0x59, 0x1f, 0x90, 0x54, 0xda, 0x34, 0xd9, 0x0a, 0x1f, 0x13, 0x17, 0x29, 0x46, 0x10, 0xa8, 0x1d, 0x3e, 0x0f, 0x1a, 0xdc, 0xe4, 0xf6, 0xd2, 0xfd, 0x6b, 0xa4, 0xb9, 0x35, 0x01, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2178_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x8d, 0xe1, 0xea, 0x3f, 0x12, 0x34, 0x69, 0x0e, 0x75, 0xbd, 0x78, 0x7c, 0xfa, 0xbe, 0x15, 0xf8, 0x33, 0xcb, 0x7d, 0xc6, 0x51, 0x07, 0xcd, 0xb0, 0x35, 0xf9, 0x9b, 0x0b, 0xbe, 0x6c, 0x60, 0xad, 0x6e, 0x83, 0x65, 0xdd, 0xdb, 0xb1, 0xf9, 0x73, 0xbc, 0x26, 0xdd, 0xdb, 0xa9, 0xe4, 0xae, 0x7c, 0x72, 0xce, 0xbd, 0x41, 0xf4, 0x71, 0xa8, 0xbb, 0x22, 0x7d, 0x2b, 0x3d, 0xf4, 0x1f, 0x34, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2178 = { .name = "ecdsa_brainpoolp512r1_sha512_2178", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2178_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2178_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2178_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2179 for ECDSA, tcId is 229 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2179_pubkey[] = { 0x93, 0x88, 0x41, 0x93, 0x75, 0x50, 0x13, 0x4c, 0x5a, 0x4b, 0xad, 0xe1, 0x9a, 0x50, 0x21, 0xc7, 0x3c, 0xff, 0xc7, 0x74, 0xfd, 0xca, 0x87, 0x54, 0x13, 0xa7, 0xd5, 0x41, 0xe6, 0x51, 0x45, 0xfb, 0x77, 0xda, 0xd4, 0xa7, 0xc7, 0xeb, 0x3a, 0x96, 0x6c, 0x18, 0x4d, 0x73, 0xcd, 0xcf, 0x3f, 0x1b, 0xea, 0x98, 0x4a, 0xd2, 0x5d, 0xd4, 0xfb, 0x7f, 0x47, 0x23, 0x9f, 0xaa, 0x5b, 0x53, 0x9f, 0x6d, 0x32, 0x75, 0xcd, 0xe5, 0x3c, 0x18, 0xf3, 0xbb, 0x53, 0x7a, 0x7f, 0x06, 0xc7, 0xea, 0x1b, 0x4f, 0x35, 0x50, 0x25, 0x91, 0x90, 0x02, 0xba, 0xe9, 0xa3, 0xa3, 0xc1, 0xdc, 0xf1, 0x50, 0xc1, 0xb5, 0x3b, 0xc8, 0xdf, 0xe5, 0x3f, 0x60, 0xcc, 0x78, 0x5e, 0x44, 0x05, 0x1c, 0x95, 0xb7, 0x35, 0x55, 0x2b, 0xa6, 0x22, 0x89, 0x7d, 0x5b, 0xf7, 0x55, 0x6f, 0xd7, 0xb9, 0xe3, 0x8b, 0x65, 0x31, 0xbe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2179_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x32, 0x6a, 0x7e, 0x59, 0xc4, 0xbc, 0xf9, 0xba, 0x52, 0x23, 0x5a, 0x8e, 0x06, 0xd2, 0x44, 0x55, 0x7a, 0xcf, 0x66, 0x88, 0x5b, 0x64, 0xf9, 0x23, 0x8c, 0xdd, 0xb3, 0xbe, 0x32, 0x7b, 0x62, 0x05, 0x75, 0x8b, 0x60, 0xf3, 0x20, 0x34, 0x18, 0xcb, 0xe5, 0xb3, 0x30, 0xe2, 0x8a, 0x9d, 0x7a, 0x36, 0x0e, 0xdf, 0xb8, 0xdd, 0xf3, 0x9d, 0x46, 0x34, 0x0d, 0x5c, 0x27, 0x92, 0x82, 0x4b, 0x7c, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2179 = { .name = "ecdsa_brainpoolp512r1_sha512_2179", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2179_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2179_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2179_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2180 for ECDSA, tcId is 230 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2180_pubkey[] = { 0x78, 0xfb, 0xd1, 0xe7, 0x62, 0x01, 0x96, 0x02, 0xff, 0x71, 0x87, 0xcf, 0x06, 0xa8, 0x86, 0xd2, 0xed, 0x2c, 0xb5, 0xd0, 0x64, 0x81, 0xb0, 0x6c, 0x3c, 0x4b, 0xe4, 0xf7, 0xf3, 0x74, 0x6c, 0xd0, 0x15, 0x1d, 0x57, 0xf4, 0xd6, 0xae, 0xbd, 0x60, 0x48, 0x89, 0x5c, 0xab, 0xfe, 0x95, 0x00, 0xad, 0xf3, 0xda, 0xec, 0x59, 0xff, 0xa6, 0xee, 0x96, 0x21, 0xc8, 0xb5, 0x84, 0xed, 0x6d, 0xad, 0x1a, 0x6f, 0x3c, 0x20, 0x70, 0xe0, 0x14, 0x21, 0xa1, 0xeb, 0xb9, 0x69, 0x60, 0x7d, 0x44, 0xf7, 0x67, 0x78, 0x74, 0x8b, 0xcb, 0x55, 0x9a, 0x8b, 0x5e, 0xed, 0x83, 0xb0, 0x47, 0x60, 0xab, 0x53, 0x55, 0x6b, 0x00, 0x39, 0xe8, 0x76, 0x5a, 0xb8, 0x5a, 0x92, 0x95, 0x0c, 0x10, 0xca, 0x6b, 0xbd, 0xcc, 0x9d, 0x6e, 0x2f, 0x03, 0xd8, 0x8b, 0x6d, 0x7b, 0xbd, 0xcd, 0x53, 0xc8, 0xb1, 0xff, 0x86, 0xcc, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2180_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x3c, 0x5d, 0x08, 0x33, 0x9f, 0x2f, 0x6f, 0x97, 0xa2, 0xb8, 0x6b, 0x83, 0x29, 0x66, 0x78, 0xf7, 0xbf, 0xf6, 0x1e, 0x1b, 0x74, 0x87, 0xcd, 0xa1, 0x4f, 0x3b, 0x12, 0xfc, 0xe6, 0xae, 0xaf, 0xa3, 0xf2, 0xfb, 0x38, 0x5a, 0xea, 0x3e, 0x82, 0xf3, 0x12, 0xa6, 0x88, 0x0e, 0xfd, 0x18, 0xa1, 0xd7, 0x7f, 0xd7, 0xfa, 0xaf, 0xaf, 0x9d, 0x1e, 0xcc, 0x5e, 0xe9, 0xc2, 0xc0, 0xf7, 0x1d, 0x10, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2180 = { .name = "ecdsa_brainpoolp512r1_sha512_2180", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2180_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2180_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2180_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2181 for ECDSA, tcId is 231 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2181_pubkey[] = { 0x4c, 0x9a, 0xda, 0x2f, 0xa2, 0xac, 0xf8, 0xd0, 0x1f, 0xba, 0x2b, 0x01, 0x5f, 0x7b, 0xad, 0xc3, 0x22, 0x78, 0x5c, 0x85, 0xf2, 0x19, 0x9b, 0x6c, 0x4a, 0xc4, 0x90, 0xda, 0x8e, 0x1e, 0xc9, 0x73, 0x38, 0x7f, 0x4a, 0xbe, 0x26, 0xd5, 0x26, 0xa0, 0x56, 0xdc, 0x71, 0x95, 0xfb, 0x1c, 0x9c, 0x0c, 0xa7, 0x61, 0x2c, 0xb6, 0x5f, 0x15, 0xf1, 0x06, 0x38, 0x0d, 0x8c, 0x5d, 0xec, 0xe5, 0x29, 0xf3, 0x21, 0x72, 0xc8, 0xb9, 0xb3, 0xb6, 0xfb, 0x0b, 0xbe, 0x9f, 0x22, 0x73, 0xd9, 0xa2, 0x18, 0xbd, 0x51, 0x24, 0x79, 0xdd, 0x27, 0x60, 0x5b, 0x2a, 0x6e, 0x8b, 0x44, 0xf5, 0x8d, 0x17, 0x61, 0x78, 0x39, 0x0c, 0x2b, 0xdd, 0x1c, 0xcf, 0x60, 0xc1, 0xe8, 0x23, 0xa2, 0x3e, 0x8b, 0x0f, 0xce, 0x7d, 0xab, 0x2f, 0x19, 0x79, 0x13, 0xb1, 0xfe, 0x30, 0xf6, 0x99, 0xe3, 0xbf, 0x36, 0x6b, 0xf1, 0xbf, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2181_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x95, 0x84, 0xa4, 0xbd, 0xf0, 0xc6, 0xc8, 0xca, 0x72, 0x21, 0x1f, 0x58, 0x9d, 0xcd, 0xd7, 0xbe, 0x18, 0x1a, 0xcc, 0xb9, 0x26, 0xf2, 0x43, 0x0d, 0xc7, 0x13, 0x5a, 0xbb, 0xfa, 0x78, 0x87, 0xd6, 0x06, 0x03, 0x0c, 0x85, 0xc7, 0x2f, 0x5a, 0x3c, 0x05, 0xfc, 0xc7, 0xe0, 0xd1, 0xfb, 0x33, 0xaf, 0xc0, 0x25, 0x1f, 0xd3, 0x3e, 0xa0, 0x4b, 0x3b, 0x96, 0x47, 0x0b, 0xc2, 0x6c, 0xe6, 0x12, 0xab, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2181 = { .name = "ecdsa_brainpoolp512r1_sha512_2181", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2181_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2181_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2181_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2182 for ECDSA, tcId is 232 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2182_pubkey[] = { 0x85, 0x4c, 0xf9, 0x60, 0x10, 0x10, 0xbe, 0x20, 0x63, 0x3f, 0x5d, 0x17, 0x21, 0x4c, 0xab, 0x68, 0x7d, 0xab, 0x3a, 0xa5, 0x4a, 0x38, 0xa0, 0x2c, 0x55, 0xed, 0x00, 0x36, 0x15, 0xec, 0x8e, 0xfa, 0xda, 0x2a, 0xc0, 0xd6, 0x2d, 0x92, 0x3d, 0x0e, 0x1d, 0xf9, 0xaa, 0x38, 0x2d, 0x51, 0x27, 0x06, 0xca, 0xdf, 0x55, 0x39, 0x85, 0x8a, 0x62, 0xa5, 0xec, 0x62, 0xfd, 0x82, 0x48, 0xe6, 0x32, 0x77, 0x6a, 0x78, 0x33, 0x03, 0x28, 0x52, 0x06, 0x01, 0x8c, 0xbb, 0x9f, 0xc1, 0xe9, 0x8c, 0xdf, 0x94, 0xac, 0x6f, 0x2f, 0xec, 0xbd, 0xc7, 0xd8, 0x42, 0x8f, 0xf4, 0x85, 0xe5, 0x9b, 0x00, 0xb2, 0xbf, 0xa4, 0x5a, 0x06, 0xaa, 0xa9, 0x3e, 0x6b, 0x51, 0xb7, 0xad, 0x1b, 0x8a, 0xc0, 0xdb, 0xe1, 0x35, 0x45, 0x5d, 0x8d, 0x28, 0x75, 0x23, 0x13, 0x57, 0x06, 0x09, 0x90, 0xab, 0xcd, 0xe5, 0x63, 0xde, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2182_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x40, 0x19, 0x79, 0x87, 0x18, 0x9f, 0x8c, 0xf0, 0x4a, 0x95, 0x1e, 0x01, 0xc4, 0x8f, 0xa8, 0xae, 0x90, 0x42, 0xf1, 0x84, 0x84, 0x8f, 0x93, 0xb2, 0x15, 0xdc, 0x79, 0x0f, 0xe2, 0xc4, 0x2e, 0xe2, 0xd5, 0x49, 0xd8, 0xcb, 0x50, 0xff, 0x3d, 0xb7, 0x4b, 0x6d, 0xdb, 0x37, 0x6a, 0x80, 0xb2, 0xce, 0x39, 0x83, 0x94, 0x6b, 0x2e, 0xd9, 0x98, 0x19, 0x85, 0x6e, 0x75, 0xeb, 0xf8, 0xff, 0x2a, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2182 = { .name = "ecdsa_brainpoolp512r1_sha512_2182", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2182_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2182_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2182_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2183 for ECDSA, tcId is 233 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2183_pubkey[] = { 0x5e, 0x3d, 0xe5, 0x09, 0xf7, 0x58, 0x5c, 0x0f, 0x6d, 0x05, 0xc3, 0x87, 0xa6, 0xd0, 0x7a, 0x06, 0x1c, 0x9f, 0x98, 0xc6, 0xad, 0xc8, 0xb3, 0xc3, 0x6e, 0xfb, 0xde, 0xfc, 0xbf, 0xf2, 0xe6, 0xad, 0x46, 0x78, 0x96, 0x05, 0x24, 0xd1, 0x16, 0x15, 0x4f, 0x5b, 0x17, 0x33, 0x22, 0x04, 0xe3, 0xa1, 0x86, 0x70, 0x82, 0xd2, 0xe5, 0x18, 0x50, 0x4f, 0x43, 0x3e, 0x27, 0x26, 0xad, 0x58, 0xe9, 0xd7, 0xa0, 0xb3, 0x2e, 0x9d, 0x3c, 0x52, 0x3b, 0xac, 0x3c, 0x1c, 0xcd, 0xd7, 0x5f, 0x82, 0xb9, 0x09, 0xa8, 0x30, 0x6c, 0x74, 0xbe, 0x89, 0x9f, 0x13, 0x22, 0x8a, 0xbf, 0x87, 0xdb, 0x76, 0xb9, 0x11, 0x5c, 0x0b, 0x29, 0x3d, 0x7d, 0x30, 0xf3, 0xc8, 0x62, 0x30, 0x46, 0x1b, 0x28, 0xa4, 0x5a, 0x6c, 0xc8, 0x8b, 0x8f, 0xe0, 0x79, 0x14, 0x31, 0x03, 0xc5, 0xb0, 0x10, 0x16, 0xba, 0x95, 0xbc, 0xd5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2183_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x80, 0x32, 0xf3, 0x0e, 0x31, 0x3f, 0x19, 0xe0, 0x95, 0x2a, 0x3c, 0x03, 0x89, 0x1f, 0x51, 0x5d, 0x20, 0x85, 0xe3, 0x09, 0x09, 0x1f, 0x27, 0x64, 0x2b, 0xb8, 0xf2, 0x1f, 0xc5, 0x88, 0x5d, 0xc5, 0xaa, 0x93, 0xb1, 0x96, 0xa1, 0xfe, 0x7b, 0x6e, 0x96, 0xdb, 0xb6, 0x6e, 0xd5, 0x01, 0x65, 0x9c, 0x73, 0x07, 0x28, 0xd6, 0x5d, 0xb3, 0x30, 0x33, 0x0a, 0xdc, 0xeb, 0xd7, 0xf1, 0xfe, 0x55, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2183 = { .name = "ecdsa_brainpoolp512r1_sha512_2183", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2183_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2183_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2183_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 233 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2184 for ECDSA, tcId is 234 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2184_pubkey[] = { 0x15, 0xd2, 0xff, 0xcd, 0x46, 0x17, 0xeb, 0x1b, 0x40, 0x06, 0x10, 0xcb, 0xa8, 0xd7, 0x38, 0xc7, 0x6c, 0x8e, 0x15, 0xad, 0x72, 0xb3, 0x4e, 0x57, 0x67, 0x72, 0xae, 0x19, 0xcd, 0x83, 0x45, 0x29, 0x46, 0x44, 0xd1, 0x3a, 0xc6, 0x2a, 0x29, 0x37, 0x88, 0xde, 0x2a, 0x92, 0xdd, 0x54, 0x7c, 0x2a, 0xc3, 0xa9, 0x8a, 0xba, 0x72, 0x95, 0x2d, 0x3e, 0xa2, 0xd4, 0x91, 0xd7, 0xee, 0xa5, 0xb9, 0xcb, 0xa3, 0xec, 0x2c, 0x79, 0xa2, 0xcf, 0x7b, 0xa0, 0x08, 0x39, 0x33, 0xb2, 0xc5, 0x34, 0xfd, 0x4b, 0x51, 0x58, 0x7c, 0x4e, 0xbc, 0x3c, 0xba, 0xaa, 0x28, 0xd9, 0x2b, 0x95, 0xe3, 0xc8, 0xe9, 0x01, 0x42, 0xef, 0xfa, 0xc2, 0x7b, 0xba, 0xb2, 0x15, 0xac, 0x0b, 0x39, 0xd1, 0xc5, 0xf3, 0x32, 0xfe, 0xb7, 0x79, 0x35, 0x1a, 0x66, 0xc2, 0x94, 0xe4, 0xed, 0x62, 0xf5, 0xcd, 0x32, 0x29, 0xa9, 0x23, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2184_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2184_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x15, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2184 = { .name = "ecdsa_brainpoolp512r1_sha512_2184", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2184_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2184_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2184_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2185 for ECDSA, tcId is 235 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2185_pubkey[] = { 0x97, 0x4d, 0xf3, 0xe7, 0xa6, 0x12, 0x83, 0x83, 0x0e, 0x54, 0x4b, 0xa9, 0x02, 0x34, 0x79, 0xcb, 0x8d, 0x75, 0x59, 0x52, 0x4d, 0xf7, 0x6f, 0xb3, 0x8d, 0x23, 0xc5, 0x5d, 0x29, 0x92, 0x3e, 0x72, 0xec, 0x5c, 0xb4, 0x87, 0x17, 0xfa, 0xb8, 0x59, 0xf2, 0xf3, 0x11, 0x15, 0x85, 0xbb, 0xee, 0x00, 0x45, 0x95, 0xc5, 0xfe, 0xd6, 0x44, 0x11, 0xfb, 0xbf, 0x9f, 0x63, 0x51, 0xbf, 0x5f, 0x69, 0xe8, 0x4e, 0x1f, 0xdd, 0x69, 0x1b, 0x30, 0xb0, 0xb4, 0xc2, 0x59, 0x0a, 0x88, 0x1c, 0xe4, 0x58, 0x05, 0x33, 0x49, 0x35, 0x6d, 0xa7, 0x47, 0xcd, 0x93, 0xba, 0x93, 0x1e, 0xee, 0x6a, 0xe8, 0x8c, 0xae, 0x82, 0x70, 0x07, 0x10, 0x5c, 0x3b, 0x16, 0x33, 0xa4, 0x8e, 0x1c, 0x9d, 0xb5, 0x27, 0x2a, 0xc0, 0x11, 0x45, 0xae, 0xe6, 0x13, 0x2b, 0xa7, 0x3a, 0xf8, 0x3d, 0x6e, 0x6c, 0x41, 0x06, 0xb2, 0x90, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2185_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2185_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x5c, 0xa5, 0x4a, 0x23, 0x1b, 0xe7, 0x6c, 0x06, 0xc9, 0xd9, 0x87, 0xde, 0x7b, 0xf2, 0xed, 0x42, 0xcd, 0x63, 0x4a, 0x07, 0xed, 0xeb, 0x6e, 0x0c, 0x58, 0x04, 0x12, 0xab, 0xe7, 0x09, 0xab, 0x17, 0x7e, 0x47, 0x4a, 0x9e, 0xa9, 0x62, 0x45, 0xa6, 0x40, 0xf7, 0xe6, 0xbe, 0x1d, 0x2d, 0x5c, 0xba, 0x3a, 0x7c, 0xdc, 0x41, 0xa8, 0xb0, 0x93, 0x90, 0x1a, 0x5b, 0x8b, 0xe0, 0x64, 0x20, 0xe1, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2185 = { .name = "ecdsa_brainpoolp512r1_sha512_2185", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2185_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2185_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2185_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 235 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2186 for ECDSA, tcId is 236 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2186_pubkey[] = { 0x2c, 0xb7, 0x36, 0x4c, 0xce, 0xc9, 0x14, 0x8a, 0x32, 0x42, 0xee, 0xe1, 0x7c, 0xe0, 0x1d, 0x82, 0xa5, 0x6d, 0x03, 0x7c, 0xb0, 0x17, 0x46, 0xfd, 0xd2, 0x4b, 0x89, 0x3f, 0x35, 0xe0, 0x72, 0x82, 0x7c, 0xe4, 0x63, 0xad, 0xaf, 0xca, 0x62, 0x82, 0xd9, 0x3c, 0xf6, 0x66, 0xa7, 0x40, 0xee, 0x88, 0xad, 0xbe, 0xf2, 0x41, 0xf1, 0x79, 0x55, 0xd2, 0xbf, 0x5f, 0x9f, 0x95, 0x95, 0x8a, 0x38, 0xa6, 0x96, 0xda, 0x56, 0x43, 0xe5, 0xfe, 0x05, 0x7f, 0x1c, 0x3b, 0x93, 0x1e, 0x36, 0xd3, 0x3f, 0x0e, 0x2f, 0x5f, 0xba, 0x68, 0x09, 0x32, 0xa3, 0x59, 0x87, 0xb7, 0x98, 0x55, 0xb6, 0xc1, 0xf0, 0xea, 0xd6, 0x4c, 0xbe, 0x9c, 0x72, 0x95, 0x9e, 0xce, 0x21, 0x84, 0xee, 0x65, 0xa7, 0x68, 0x41, 0x0d, 0xf1, 0xda, 0xd8, 0x1c, 0x4d, 0xba, 0x85, 0x33, 0x40, 0xa2, 0x39, 0x6a, 0xbf, 0x82, 0xe3, 0x6a, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2186_sig[] = { 0x1b, 0x8e, 0x84, 0x40, 0xbd, 0x94, 0x75, 0x2d, 0xc6, 0x03, 0x15, 0x97, 0x28, 0xa3, 0x46, 0x87, 0x2c, 0xad, 0x48, 0xdf, 0xff, 0x81, 0x9f, 0x18, 0x1f, 0x9d, 0x53, 0x53, 0x7a, 0x80, 0x86, 0x8b, 0xff, 0x12, 0x80, 0xac, 0xfd, 0x23, 0x97, 0xa8, 0x46, 0xd3, 0x25, 0x90, 0x49, 0x35, 0x2b, 0xc1, 0x1f, 0x5f, 0xb7, 0x39, 0x41, 0x0c, 0x76, 0x6d, 0x13, 0x44, 0xcb, 0xcb, 0xc0, 0x3b, 0xf7, 0x61, 0x21, 0x61, 0x07, 0x40, 0x79, 0x9a, 0x83, 0xa1, 0x3b, 0x49, 0xaa, 0x45, 0xdd, 0x85, 0x4d, 0x85, 0xb0, 0x58, 0xbd, 0x95, 0x5a, 0x41, 0x05, 0xd7, 0x49, 0xcb, 0xa7, 0x4b, 0x8f, 0x2a, 0x38, 0xcf, 0x7c, 0x33, 0xed, 0x56, 0x92, 0x1d, 0x02, 0x9e, 0x74, 0x93, 0x89, 0x4a, 0xd3, 0xd8, 0xf2, 0x8f, 0x44, 0x31, 0xdc, 0xeb, 0x89, 0xcd, 0x56, 0x31, 0x6d, 0xe9, 0x3d, 0xc0, 0x97, 0x77, 0xca, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2186 = { .name = "ecdsa_brainpoolp512r1_sha512_2186", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2186_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2186_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2186_sig, .siglen = 128, .result = 1, .comment = "point duplication during verification, tcId is 236 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2187 for ECDSA, tcId is 237 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2187_pubkey[] = { 0x2c, 0xb7, 0x36, 0x4c, 0xce, 0xc9, 0x14, 0x8a, 0x32, 0x42, 0xee, 0xe1, 0x7c, 0xe0, 0x1d, 0x82, 0xa5, 0x6d, 0x03, 0x7c, 0xb0, 0x17, 0x46, 0xfd, 0xd2, 0x4b, 0x89, 0x3f, 0x35, 0xe0, 0x72, 0x82, 0x7c, 0xe4, 0x63, 0xad, 0xaf, 0xca, 0x62, 0x82, 0xd9, 0x3c, 0xf6, 0x66, 0xa7, 0x40, 0xee, 0x88, 0xad, 0xbe, 0xf2, 0x41, 0xf1, 0x79, 0x55, 0xd2, 0xbf, 0x5f, 0x9f, 0x95, 0x95, 0x8a, 0x38, 0xa6, 0x14, 0x03, 0x47, 0x74, 0xf5, 0xeb, 0xbf, 0x0c, 0x23, 0x99, 0x53, 0x8f, 0xfc, 0xf6, 0xbc, 0xf9, 0x9b, 0xd0, 0xd3, 0x4b, 0xaa, 0x97, 0x2e, 0xb5, 0x4e, 0xac, 0x04, 0x74, 0xb9, 0x71, 0x17, 0x86, 0xa7, 0x00, 0xdc, 0x64, 0x29, 0x30, 0xc9, 0x74, 0x8d, 0x48, 0xb2, 0xc5, 0x3f, 0x3b, 0x3f, 0xd8, 0x36, 0xa7, 0x27, 0x12, 0xdf, 0xc8, 0x41, 0x51, 0xe8, 0x08, 0x26, 0xeb, 0x98, 0xb7, 0x65, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2187_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2187_sig[] = { 0x1b, 0x8e, 0x84, 0x40, 0xbd, 0x94, 0x75, 0x2d, 0xc6, 0x03, 0x15, 0x97, 0x28, 0xa3, 0x46, 0x87, 0x2c, 0xad, 0x48, 0xdf, 0xff, 0x81, 0x9f, 0x18, 0x1f, 0x9d, 0x53, 0x53, 0x7a, 0x80, 0x86, 0x8b, 0xff, 0x12, 0x80, 0xac, 0xfd, 0x23, 0x97, 0xa8, 0x46, 0xd3, 0x25, 0x90, 0x49, 0x35, 0x2b, 0xc1, 0x1f, 0x5f, 0xb7, 0x39, 0x41, 0x0c, 0x76, 0x6d, 0x13, 0x44, 0xcb, 0xcb, 0xc0, 0x3b, 0xf7, 0x61, 0x21, 0x61, 0x07, 0x40, 0x79, 0x9a, 0x83, 0xa1, 0x3b, 0x49, 0xaa, 0x45, 0xdd, 0x85, 0x4d, 0x85, 0xb0, 0x58, 0xbd, 0x95, 0x5a, 0x41, 0x05, 0xd7, 0x49, 0xcb, 0xa7, 0x4b, 0x8f, 0x2a, 0x38, 0xcf, 0x7c, 0x33, 0xed, 0x56, 0x92, 0x1d, 0x02, 0x9e, 0x74, 0x93, 0x89, 0x4a, 0xd3, 0xd8, 0xf2, 0x8f, 0x44, 0x31, 0xdc, 0xeb, 0x89, 0xcd, 0x56, 0x31, 0x6d, 0xe9, 0x3d, 0xc0, 0x97, 0x77, 0xca, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2187 = { .name = "ecdsa_brainpoolp512r1_sha512_2187", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2187_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2187_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2187_sig, .siglen = 128, .result = -1, .comment = "duplication bug, tcId is 237 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2188 for ECDSA, tcId is 238 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2188_pubkey[] = { 0x06, 0x3d, 0x56, 0x6f, 0xa9, 0x3e, 0xe2, 0x19, 0x48, 0x2e, 0xc9, 0x47, 0xe7, 0xbe, 0x46, 0x94, 0xf9, 0xc0, 0x73, 0xb2, 0xbb, 0x78, 0x6d, 0xb8, 0x49, 0xe1, 0xf3, 0x97, 0x3c, 0x51, 0x22, 0x39, 0x4c, 0xf6, 0x8e, 0xdd, 0x99, 0x47, 0xb5, 0x8e, 0x61, 0xfe, 0x42, 0xc9, 0x8d, 0x36, 0x40, 0x84, 0x4e, 0xd2, 0x77, 0x5b, 0x0c, 0x36, 0xb5, 0xf4, 0xc0, 0xc9, 0x60, 0x5d, 0x02, 0x8b, 0xc0, 0xc5, 0x07, 0x52, 0x1b, 0x29, 0x88, 0x96, 0x32, 0xbb, 0x07, 0x56, 0xfe, 0xc9, 0x8e, 0x8e, 0x95, 0x6c, 0xb7, 0xac, 0x51, 0x5a, 0x3f, 0xc9, 0x08, 0x2b, 0x87, 0x18, 0x61, 0x54, 0x8e, 0x97, 0x02, 0x78, 0x6f, 0x59, 0x1e, 0x9a, 0x22, 0x23, 0x91, 0x01, 0x47, 0x25, 0x16, 0x7a, 0x6c, 0x22, 0xaa, 0xf8, 0xc2, 0xc4, 0xbe, 0x94, 0x25, 0x24, 0x8b, 0x4d, 0x5f, 0x94, 0xf3, 0x1c, 0xbd, 0x8b, 0xd3, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2188_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2188_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2188 = { .name = "ecdsa_brainpoolp512r1_sha512_2188", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2188_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2188_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2188_sig, .siglen = 128, .result = -1, .comment = "comparison with point at infinity , tcId is 238 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2189 for ECDSA, tcId is 239 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2189_pubkey[] = { 0x13, 0xb9, 0xa0, 0x27, 0x3b, 0x3b, 0x28, 0x3c, 0xc8, 0xa2, 0x5a, 0xaa, 0xf2, 0xa8, 0x50, 0x8a, 0x74, 0x5d, 0xb0, 0x22, 0xe7, 0xf4, 0xdd, 0xc0, 0x6a, 0xcd, 0xf0, 0x6e, 0xb7, 0x77, 0x0f, 0xd9, 0x5b, 0xa6, 0x8b, 0x04, 0x7b, 0x03, 0x04, 0x19, 0xae, 0xc3, 0x66, 0xbd, 0x18, 0x7e, 0xb8, 0x40, 0xa4, 0x3d, 0xf7, 0xd9, 0x43, 0x94, 0x19, 0xe2, 0x63, 0x96, 0x14, 0xd5, 0xb4, 0xeb, 0x22, 0xd2, 0x3b, 0xa9, 0xa5, 0xc0, 0x30, 0x17, 0x08, 0xdc, 0x50, 0xab, 0x9e, 0x4a, 0xd4, 0xed, 0x48, 0xad, 0x0f, 0x70, 0x1c, 0xf3, 0x87, 0xf2, 0x10, 0xe5, 0x7b, 0x6d, 0x06, 0xfb, 0x69, 0xcd, 0x58, 0xdf, 0xb0, 0x68, 0x5f, 0x89, 0xd9, 0xed, 0x1a, 0x31, 0x9f, 0x00, 0x15, 0x1d, 0x90, 0x82, 0x66, 0x30, 0x46, 0xcc, 0x27, 0x10, 0x1b, 0x69, 0x2c, 0xa2, 0x2a, 0x6b, 0x3e, 0x08, 0x3d, 0xd0, 0xff, 0x7f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2189_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2189_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2189 = { .name = "ecdsa_brainpoolp512r1_sha512_2189", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2189_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2189_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2189_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 239 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2190 for ECDSA, tcId is 240 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2190_pubkey[] = { 0x45, 0xd4, 0xd4, 0xad, 0x6b, 0x3a, 0xaf, 0x94, 0xb6, 0xd7, 0x39, 0xa0, 0x72, 0xf3, 0x1b, 0x1e, 0x74, 0x4f, 0x13, 0x87, 0x63, 0x04, 0xea, 0x11, 0x11, 0x3f, 0xe8, 0x12, 0x3a, 0x15, 0x5e, 0x1a, 0x92, 0x1b, 0xe4, 0x6c, 0xde, 0x2f, 0x24, 0x12, 0xe0, 0x2a, 0x0f, 0xa5, 0xc1, 0x86, 0x5d, 0xb8, 0xa6, 0xdb, 0xd4, 0x4e, 0xea, 0xc1, 0x65, 0xb0, 0xf7, 0xfa, 0x73, 0xc0, 0x47, 0x83, 0x80, 0x2d, 0x1c, 0xb9, 0x51, 0xcc, 0x65, 0xc9, 0x05, 0x64, 0x80, 0x69, 0x5b, 0xc4, 0x67, 0xdc, 0xa5, 0x77, 0x96, 0x4c, 0xee, 0x04, 0x8a, 0x14, 0xc8, 0x17, 0x16, 0xce, 0x95, 0x58, 0xb4, 0x50, 0x98, 0x1c, 0xf3, 0xa0, 0xf0, 0x05, 0x9d, 0x58, 0x1b, 0x07, 0x6a, 0xfb, 0x69, 0xef, 0xe0, 0xa5, 0x05, 0x35, 0x7b, 0x80, 0x60, 0xe0, 0x2d, 0x6b, 0x9f, 0x13, 0xa0, 0x31, 0xa1, 0xda, 0xe5, 0xf1, 0xce, 0x3c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2190_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x7a, 0x0c, 0x02, 0xf1, 0xc1, 0xa6, 0xfa, 0x1a, 0x52, 0x2a, 0x5b, 0xa1, 0x00, 0x6b, 0xb4, 0x05, 0x91, 0x22, 0xae, 0x5b, 0xc9, 0x90, 0x28, 0x53, 0xbd, 0xb4, 0xdd, 0xb5, 0x2b, 0x92, 0x2a, 0x99, 0x61, 0x75, 0xaf, 0x9c, 0x5b, 0x54, 0x3f, 0xc8, 0xe5, 0xa9, 0x20, 0xc9, 0x12, 0x0d, 0x30, 0x32, 0xcc, 0x11, 0x4d, 0xee, 0x73, 0xb0, 0xc0, 0xe7, 0x81, 0xa9, 0xfd, 0xcb, 0x02, 0x2f, 0x92, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2190 = { .name = "ecdsa_brainpoolp512r1_sha512_2190", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2190_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2190_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2190_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 240 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2191 for ECDSA, tcId is 241 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2191_pubkey[] = { 0x90, 0x60, 0x43, 0x0c, 0x44, 0x39, 0xc3, 0x52, 0xcb, 0xc0, 0x8c, 0xd0, 0x90, 0x6f, 0x91, 0x46, 0x4c, 0xe3, 0x7a, 0x79, 0x74, 0xde, 0x99, 0x65, 0x25, 0x75, 0x86, 0x28, 0xb9, 0xd3, 0x58, 0x05, 0x40, 0xaf, 0xe9, 0xbe, 0x74, 0xba, 0x10, 0x50, 0xd0, 0x3a, 0xcb, 0xb0, 0xac, 0x29, 0xe6, 0x0a, 0xca, 0x9b, 0x96, 0x29, 0x5a, 0x6b, 0x5e, 0x49, 0x70, 0x74, 0x10, 0x25, 0x7f, 0xb7, 0x63, 0x9d, 0x59, 0xf8, 0x88, 0xad, 0x8a, 0x62, 0xbe, 0xcd, 0xe0, 0x66, 0x1d, 0xef, 0xee, 0xe4, 0x81, 0x35, 0xd3, 0x61, 0x67, 0xf9, 0xe8, 0x58, 0x0f, 0x27, 0x14, 0xbc, 0xd5, 0xb6, 0x7e, 0xc7, 0x0a, 0xe3, 0xde, 0xae, 0x5d, 0x80, 0xb1, 0xe9, 0xd1, 0x0c, 0x13, 0xf2, 0x1c, 0xe7, 0xc5, 0x9c, 0x79, 0xac, 0x2c, 0xf7, 0x05, 0xae, 0xe8, 0x90, 0xad, 0xf4, 0x34, 0xf2, 0x9a, 0xa8, 0x41, 0xa0, 0x5b, 0x0f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2191_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x88, 0xb1, 0x4a, 0xfa, 0x49, 0x87, 0xd0, 0x6f, 0x66, 0x43, 0xeb, 0xbe, 0x8f, 0xd4, 0xc9, 0x9f, 0xd5, 0xc0, 0x71, 0x5c, 0x8f, 0xd4, 0xa8, 0x0b, 0xde, 0xb6, 0x17, 0x08, 0x59, 0xc2, 0x6d, 0x26, 0xaa, 0x98, 0x49, 0xcd, 0xd6, 0xed, 0xb8, 0x14, 0x34, 0x6b, 0x80, 0xe1, 0x32, 0xf0, 0x0d, 0x05, 0xb1, 0x5b, 0x0f, 0x9a, 0x6d, 0x17, 0xe2, 0x4a, 0xf7, 0x9f, 0xab, 0x9b, 0xb0, 0x87, 0x33, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2191 = { .name = "ecdsa_brainpoolp512r1_sha512_2191", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2191_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2191_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2191_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 241 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2192 for ECDSA, tcId is 242 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2192_pubkey[] = { 0x73, 0x26, 0x13, 0x7c, 0x69, 0x9e, 0x6b, 0x1d, 0x2b, 0xf3, 0x13, 0xc0, 0x4c, 0x34, 0xb8, 0x6e, 0x63, 0x29, 0x3d, 0x7e, 0x20, 0x54, 0xe4, 0x71, 0x87, 0xef, 0x84, 0x3f, 0xb4, 0x26, 0x74, 0xf6, 0x5b, 0x7e, 0x01, 0x36, 0xec, 0xda, 0xf8, 0xe4, 0x11, 0xc6, 0xe2, 0xdb, 0xbf, 0x5a, 0xc5, 0x00, 0x74, 0x01, 0x74, 0x3e, 0xc7, 0x24, 0x4e, 0x7d, 0xac, 0x03, 0x79, 0x51, 0x6b, 0xb9, 0x2f, 0x39, 0x92, 0xe5, 0x46, 0xd0, 0x1c, 0x16, 0x55, 0xcf, 0x68, 0x54, 0x93, 0x91, 0xd8, 0x58, 0x20, 0x35, 0xee, 0x47, 0x1e, 0x58, 0xf4, 0x33, 0xea, 0x89, 0xf3, 0x8f, 0x8c, 0xc1, 0xed, 0xc1, 0x92, 0x82, 0x25, 0xb3, 0xf5, 0xa3, 0x76, 0xe0, 0x15, 0xce, 0xe6, 0xae, 0x9e, 0x1e, 0xaa, 0xe6, 0x09, 0xbe, 0x2e, 0x69, 0x53, 0x7e, 0x59, 0x6b, 0x06, 0xb7, 0x7e, 0x4b, 0x6b, 0x74, 0x82, 0xfa, 0xb6, 0x0b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2192_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2192 = { .name = "ecdsa_brainpoolp512r1_sha512_2192", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2192_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2192_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2192_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 242 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2193 for ECDSA, tcId is 243 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2193_pubkey[] = { 0x56, 0xbd, 0x4e, 0x3c, 0xa3, 0x22, 0xf6, 0x5c, 0x29, 0xb6, 0x11, 0xf7, 0x9f, 0x3f, 0x95, 0x0f, 0x21, 0x63, 0x8e, 0x02, 0x6f, 0xcc, 0xf6, 0x73, 0xb0, 0x8c, 0xff, 0xc7, 0x3c, 0xc3, 0x94, 0x95, 0xce, 0xd5, 0xb8, 0x8e, 0x26, 0x41, 0x9e, 0xbd, 0xe7, 0x5c, 0x85, 0xfd, 0xff, 0x14, 0x60, 0x94, 0x7e, 0xf7, 0xaf, 0xe9, 0x9a, 0xca, 0x58, 0x78, 0xb1, 0xaf, 0x79, 0x68, 0x81, 0x81, 0xe3, 0x23, 0x69, 0xe6, 0x46, 0xbb, 0x9d, 0x01, 0xa1, 0x0c, 0xc4, 0x93, 0x12, 0x59, 0xdc, 0x8f, 0x59, 0x7d, 0x95, 0xe8, 0x5e, 0xbd, 0x56, 0x72, 0x90, 0x98, 0xcf, 0xab, 0x14, 0x43, 0x16, 0x5e, 0x55, 0x8f, 0x05, 0x36, 0x98, 0xb0, 0xbb, 0x4f, 0x44, 0x22, 0x2e, 0xa2, 0x45, 0xac, 0x4c, 0x21, 0x71, 0x7e, 0xb2, 0x2a, 0xaf, 0xf6, 0x50, 0xa3, 0x29, 0xee, 0xe2, 0x42, 0x03, 0x84, 0x1c, 0x59, 0xd1, 0x3f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2193_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x30, 0xd1, 0x9a, 0xc7, 0x1a, 0x42, 0xca, 0x70, 0xed, 0xaa, 0x8b, 0x0d, 0x33, 0x5e, 0x48, 0x02, 0x3a, 0x0d, 0xdf, 0x57, 0xea, 0x39, 0xa9, 0xbb, 0x18, 0xae, 0xbf, 0x15, 0x44, 0xa0, 0xdd, 0xd6, 0xf3, 0xc8, 0xac, 0xa4, 0xf1, 0x54, 0xe6, 0x50, 0x5b, 0xdd, 0x40, 0x50, 0x6d, 0x9e, 0xe0, 0x14, 0x51, 0xa0, 0x85, 0x92, 0x94, 0xad, 0x19, 0xf6, 0x33, 0xdd, 0x98, 0xb7, 0x9a, 0x79, 0x6d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2193 = { .name = "ecdsa_brainpoolp512r1_sha512_2193", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2193_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2193_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2193_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 243 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2194 for ECDSA, tcId is 244 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2194_pubkey[] = { 0x68, 0x8d, 0x0f, 0x39, 0x4a, 0xcb, 0x16, 0x11, 0x9e, 0x0b, 0x29, 0xb5, 0x6e, 0x78, 0x0f, 0x29, 0x5a, 0x24, 0xdc, 0xba, 0x16, 0x15, 0xa2, 0x3e, 0x59, 0xe6, 0x7b, 0x1d, 0xc9, 0x54, 0x9b, 0xff, 0x87, 0x91, 0xa6, 0x21, 0x30, 0xd4, 0xb0, 0xd8, 0xd7, 0x57, 0x39, 0xf0, 0x6d, 0xfc, 0x08, 0xcf, 0x6b, 0x5c, 0xb1, 0xe3, 0x1a, 0x63, 0xbc, 0x72, 0xb1, 0xfa, 0xd6, 0xf0, 0x58, 0xb1, 0xcd, 0x59, 0x9f, 0x94, 0x46, 0xae, 0x8a, 0x7f, 0x41, 0xbd, 0xfb, 0xac, 0x1d, 0xdb, 0xcd, 0xd6, 0xe6, 0x49, 0x01, 0x93, 0x26, 0x0d, 0xcd, 0xad, 0xa0, 0x72, 0x07, 0x9c, 0xbf, 0x13, 0x9b, 0x66, 0x6c, 0xf5, 0x93, 0x4f, 0x11, 0xab, 0xf5, 0x72, 0xa3, 0x3e, 0x7f, 0x12, 0x35, 0xcd, 0xf7, 0x08, 0x20, 0xa5, 0x47, 0x5d, 0x14, 0xec, 0xed, 0x67, 0xad, 0x6a, 0x4a, 0x85, 0x78, 0xf9, 0xb6, 0xe4, 0x09, 0x3c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2194_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x10, 0xb9, 0x89, 0x00, 0x28, 0x55, 0xff, 0xaf, 0xbd, 0x8c, 0x23, 0xa6, 0x61, 0xf3, 0xb9, 0x3c, 0xcf, 0xff, 0x4f, 0xbe, 0x84, 0xa2, 0x3d, 0x1a, 0x6c, 0x4a, 0xff, 0x44, 0x05, 0xbd, 0xb9, 0x4c, 0x3f, 0x86, 0x02, 0x24, 0xe2, 0x05, 0x03, 0x2f, 0xdc, 0x9a, 0x1d, 0xc8, 0x0c, 0x7d, 0x6b, 0x21, 0x40, 0x9f, 0x96, 0x32, 0xe0, 0xfb, 0x54, 0x00, 0x21, 0xcc, 0xc4, 0x21, 0x61, 0xb7, 0x0f, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2194 = { .name = "ecdsa_brainpoolp512r1_sha512_2194", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2194_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2194_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2194_sig, .siglen = 128, .result = 1, .comment = "extreme value for k, tcId is 244 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2195 for ECDSA, tcId is 245 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2195_pubkey[] = { 0x83, 0x67, 0x2d, 0x9b, 0x61, 0xf7, 0x3f, 0x1a, 0x0b, 0x2e, 0x06, 0x6b, 0xc3, 0xd0, 0x09, 0x74, 0x9d, 0x28, 0xd4, 0xe5, 0x84, 0xa1, 0xaf, 0xea, 0x28, 0xdc, 0xff, 0xd7, 0x8b, 0x6b, 0x2d, 0x65, 0x9d, 0xbb, 0x0c, 0x5c, 0xf7, 0xbe, 0xd6, 0x1f, 0x3b, 0x03, 0xc3, 0xc1, 0x29, 0xe3, 0x1d, 0x4b, 0x49, 0xca, 0x8d, 0xa3, 0x81, 0x3c, 0xf2, 0x5b, 0x6f, 0x02, 0x5d, 0x84, 0xee, 0x82, 0xd5, 0x61, 0x37, 0x9b, 0xe7, 0xf5, 0xc8, 0x37, 0xfd, 0x23, 0xe0, 0xac, 0xd7, 0x49, 0x16, 0x75, 0x49, 0xe8, 0x70, 0x3d, 0xba, 0xd3, 0xbc, 0x7a, 0xdd, 0x9d, 0x3a, 0x9f, 0xf0, 0x1a, 0xbd, 0x34, 0xb5, 0x53, 0x42, 0xf5, 0x32, 0x42, 0x8d, 0x95, 0xcc, 0x1f, 0x0c, 0x9b, 0xae, 0x7f, 0x45, 0x8d, 0x94, 0x11, 0x91, 0x9a, 0x28, 0x16, 0x00, 0x96, 0x58, 0x22, 0x42, 0x18, 0x85, 0x1b, 0x0f, 0x8d, 0x57, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2195_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2195 = { .name = "ecdsa_brainpoolp512r1_sha512_2195", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2195_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2195_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2195_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 245 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2196 for ECDSA, tcId is 246 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2196_pubkey[] = { 0x73, 0x86, 0xa1, 0x09, 0x91, 0xc1, 0x47, 0x5c, 0x6c, 0x53, 0xf0, 0x58, 0x67, 0xe6, 0x9a, 0x35, 0x21, 0x9b, 0xc5, 0xca, 0xd4, 0x40, 0x5c, 0x96, 0x03, 0x22, 0x84, 0x3a, 0x56, 0xbb, 0x07, 0xbb, 0xaa, 0x31, 0x7d, 0x20, 0xa0, 0xbc, 0x98, 0x78, 0x6a, 0xb7, 0xb4, 0xc0, 0xcf, 0x6d, 0xea, 0xdf, 0x09, 0x3b, 0xb0, 0x7d, 0x5b, 0xd5, 0x63, 0xc0, 0xd5, 0x6b, 0x38, 0x0f, 0x88, 0x0e, 0x7a, 0xd1, 0x98, 0x19, 0xe9, 0xe8, 0x97, 0xc7, 0x64, 0x05, 0xda, 0xfb, 0xe1, 0xd7, 0x85, 0xb3, 0xbf, 0xf2, 0xe6, 0xe4, 0x87, 0x70, 0xad, 0xa1, 0xf4, 0x52, 0xec, 0x2b, 0x4a, 0x34, 0x7b, 0xda, 0xba, 0x7b, 0x6d, 0x71, 0x22, 0x00, 0x2d, 0x5f, 0x6e, 0xc4, 0xca, 0xbc, 0x58, 0x5b, 0x4e, 0xf8, 0x30, 0xe5, 0x2c, 0x62, 0x46, 0x41, 0xfe, 0x03, 0x82, 0x97, 0x80, 0x5e, 0xf0, 0xb7, 0xe8, 0xe8, 0x2b, 0xdd, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2196_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7a, 0x0c, 0x02, 0xf1, 0xc1, 0xa6, 0xfa, 0x1a, 0x52, 0x2a, 0x5b, 0xa1, 0x00, 0x6b, 0xb4, 0x05, 0x91, 0x22, 0xae, 0x5b, 0xc9, 0x90, 0x28, 0x53, 0xbd, 0xb4, 0xdd, 0xb5, 0x2b, 0x92, 0x2a, 0x99, 0x61, 0x75, 0xaf, 0x9c, 0x5b, 0x54, 0x3f, 0xc8, 0xe5, 0xa9, 0x20, 0xc9, 0x12, 0x0d, 0x30, 0x32, 0xcc, 0x11, 0x4d, 0xee, 0x73, 0xb0, 0xc0, 0xe7, 0x81, 0xa9, 0xfd, 0xcb, 0x02, 0x2f, 0x92, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2196 = { .name = "ecdsa_brainpoolp512r1_sha512_2196", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2196_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2196_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2196_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 246 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2197 for ECDSA, tcId is 247 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2197_pubkey[] = { 0x7d, 0x76, 0xf0, 0x9d, 0xb5, 0xfc, 0x7e, 0xd7, 0x67, 0xdf, 0xad, 0x2a, 0xf9, 0xaf, 0x54, 0x70, 0xa4, 0x3e, 0x06, 0x2f, 0x21, 0x49, 0x24, 0x99, 0xaf, 0x5f, 0xc7, 0x19, 0xf6, 0xbe, 0x17, 0x88, 0x19, 0x57, 0xef, 0x47, 0x66, 0x88, 0xfa, 0x30, 0x49, 0xb1, 0x3d, 0x48, 0xc5, 0x1f, 0x25, 0x9e, 0x5d, 0x60, 0x43, 0x44, 0x65, 0xd8, 0x44, 0x45, 0xd3, 0x59, 0xb8, 0x9f, 0x66, 0xc8, 0x8b, 0xac, 0x42, 0x06, 0x61, 0x69, 0x92, 0x73, 0xb2, 0x38, 0x38, 0x82, 0x7c, 0x69, 0x90, 0x89, 0x78, 0x06, 0x4b, 0x7c, 0x98, 0xf4, 0x19, 0x5a, 0xd5, 0xe2, 0xec, 0x70, 0x9a, 0x03, 0x6e, 0xad, 0x56, 0xe3, 0x4a, 0x3e, 0x99, 0x9e, 0x8c, 0x37, 0xdd, 0xea, 0x5b, 0x00, 0x49, 0x0a, 0x01, 0x1d, 0x9d, 0x11, 0x66, 0x76, 0xe9, 0x02, 0x2c, 0x12, 0x4b, 0x3c, 0x08, 0x18, 0xbc, 0xc3, 0x48, 0x8f, 0x78, 0xd3, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2197_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x88, 0xb1, 0x4a, 0xfa, 0x49, 0x87, 0xd0, 0x6f, 0x66, 0x43, 0xeb, 0xbe, 0x8f, 0xd4, 0xc9, 0x9f, 0xd5, 0xc0, 0x71, 0x5c, 0x8f, 0xd4, 0xa8, 0x0b, 0xde, 0xb6, 0x17, 0x08, 0x59, 0xc2, 0x6d, 0x26, 0xaa, 0x98, 0x49, 0xcd, 0xd6, 0xed, 0xb8, 0x14, 0x34, 0x6b, 0x80, 0xe1, 0x32, 0xf0, 0x0d, 0x05, 0xb1, 0x5b, 0x0f, 0x9a, 0x6d, 0x17, 0xe2, 0x4a, 0xf7, 0x9f, 0xab, 0x9b, 0xb0, 0x87, 0x33, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2197 = { .name = "ecdsa_brainpoolp512r1_sha512_2197", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2197_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2197_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2197_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 247 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2198 for ECDSA, tcId is 248 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2198_pubkey[] = { 0x2a, 0x3a, 0x7f, 0x88, 0x15, 0x98, 0x3c, 0x92, 0x51, 0xdf, 0x92, 0x20, 0xcb, 0x5f, 0x42, 0x4f, 0x4d, 0x8e, 0xb9, 0xcf, 0xce, 0x3d, 0x96, 0xde, 0x72, 0x5b, 0xbe, 0xa6, 0xdb, 0xfe, 0xfe, 0x22, 0x6d, 0x78, 0x9f, 0xef, 0x85, 0x33, 0x19, 0x47, 0x87, 0x66, 0x8b, 0x66, 0xf8, 0xfb, 0x64, 0x0d, 0x13, 0x5a, 0x25, 0xa3, 0x0f, 0x5a, 0x25, 0x11, 0x1d, 0xdc, 0xfc, 0x5c, 0x9c, 0x7e, 0xb2, 0x2d, 0x9b, 0xa3, 0x5f, 0x30, 0x54, 0xac, 0x43, 0x9e, 0x0f, 0x55, 0x8e, 0xad, 0x8d, 0x09, 0x79, 0xa0, 0xfa, 0xb0, 0x46, 0xa4, 0x7a, 0xa0, 0x33, 0x9e, 0xf1, 0x6c, 0x0e, 0x1d, 0x37, 0xe4, 0xd1, 0xd6, 0xf2, 0x9f, 0xb7, 0xf6, 0x74, 0xdd, 0x51, 0xed, 0x57, 0x23, 0x34, 0x09, 0xac, 0x9e, 0x50, 0x5e, 0x29, 0xd4, 0x03, 0x78, 0x89, 0x71, 0x94, 0xcf, 0x5f, 0xbc, 0x92, 0x59, 0x5f, 0xd7, 0x74, 0xbe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2198_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2198 = { .name = "ecdsa_brainpoolp512r1_sha512_2198", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2198_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2198_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2198_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 248 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2199 for ECDSA, tcId is 249 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2199_pubkey[] = { 0x03, 0xf4, 0x98, 0xf2, 0xea, 0x6e, 0x36, 0xb4, 0x98, 0xac, 0x66, 0x46, 0x3a, 0x06, 0x70, 0x8f, 0xb9, 0x31, 0xac, 0x59, 0xa2, 0xa1, 0xdf, 0xa6, 0xeb, 0xb4, 0x97, 0x3c, 0xf0, 0x1a, 0x06, 0xce, 0xef, 0x58, 0xb3, 0x44, 0xb8, 0x5e, 0x89, 0xfc, 0x78, 0x35, 0x12, 0x11, 0xf7, 0x1f, 0xd1, 0xf1, 0x18, 0x18, 0xf7, 0xef, 0x96, 0xe2, 0x96, 0x46, 0x6b, 0x0d, 0x3b, 0x70, 0xc2, 0xda, 0x69, 0x20, 0x64, 0xaa, 0x78, 0x28, 0x54, 0x39, 0xf1, 0x7d, 0x69, 0xa9, 0x8c, 0xae, 0x8a, 0x13, 0x79, 0xbd, 0xac, 0x05, 0xce, 0xd9, 0x30, 0xa1, 0x8f, 0x44, 0x93, 0x9b, 0xd9, 0x1f, 0x86, 0x69, 0xa3, 0x7f, 0xe8, 0xfb, 0x1e, 0x9a, 0xb1, 0xea, 0xd4, 0xdb, 0x0b, 0x33, 0x7a, 0xc5, 0x94, 0xfd, 0x21, 0xd9, 0xe0, 0xd4, 0x32, 0x5a, 0xb7, 0xee, 0x07, 0x20, 0x8f, 0x1c, 0x07, 0x60, 0x1b, 0xb9, 0x13, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2199_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x30, 0xd1, 0x9a, 0xc7, 0x1a, 0x42, 0xca, 0x70, 0xed, 0xaa, 0x8b, 0x0d, 0x33, 0x5e, 0x48, 0x02, 0x3a, 0x0d, 0xdf, 0x57, 0xea, 0x39, 0xa9, 0xbb, 0x18, 0xae, 0xbf, 0x15, 0x44, 0xa0, 0xdd, 0xd6, 0xf3, 0xc8, 0xac, 0xa4, 0xf1, 0x54, 0xe6, 0x50, 0x5b, 0xdd, 0x40, 0x50, 0x6d, 0x9e, 0xe0, 0x14, 0x51, 0xa0, 0x85, 0x92, 0x94, 0xad, 0x19, 0xf6, 0x33, 0xdd, 0x98, 0xb7, 0x9a, 0x79, 0x6d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2199 = { .name = "ecdsa_brainpoolp512r1_sha512_2199", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2199_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2199_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2199_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 249 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2200 for ECDSA, tcId is 250 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2200_pubkey[] = { 0x7b, 0xb5, 0xf9, 0xef, 0xbc, 0xc2, 0x60, 0xb0, 0x81, 0x20, 0xc7, 0xc4, 0x19, 0x35, 0x66, 0x13, 0x33, 0x22, 0xce, 0x47, 0xe6, 0x66, 0x04, 0x7e, 0xdf, 0xb4, 0x62, 0xfb, 0xc3, 0x10, 0xbb, 0x06, 0x50, 0x3e, 0x8d, 0x62, 0xd0, 0xcf, 0x60, 0x55, 0xe2, 0x71, 0xa8, 0x18, 0x7b, 0xe2, 0x2d, 0xc5, 0xa1, 0xd6, 0xb0, 0x97, 0x04, 0xa3, 0xb9, 0x90, 0x65, 0xed, 0xb8, 0x7b, 0x46, 0xc2, 0xae, 0x32, 0x40, 0x1f, 0x00, 0x40, 0x04, 0x8f, 0x94, 0x7f, 0xa0, 0x20, 0x17, 0xbc, 0xa6, 0x1a, 0xb6, 0xd6, 0x35, 0x3f, 0xc5, 0x88, 0x07, 0xbb, 0xa2, 0xf0, 0xa4, 0x65, 0x21, 0xe2, 0x0f, 0x20, 0x66, 0x82, 0x4e, 0xc8, 0x4b, 0xae, 0x1b, 0x54, 0x5a, 0x41, 0x4a, 0x29, 0x6a, 0xde, 0xe2, 0x23, 0x15, 0xfd, 0x48, 0x57, 0x3a, 0x7c, 0x5b, 0x3b, 0xd4, 0xc5, 0x39, 0x8b, 0x27, 0xd7, 0xf2, 0x82, 0x4f, 0x2c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2200_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x10, 0xb9, 0x89, 0x00, 0x28, 0x55, 0xff, 0xaf, 0xbd, 0x8c, 0x23, 0xa6, 0x61, 0xf3, 0xb9, 0x3c, 0xcf, 0xff, 0x4f, 0xbe, 0x84, 0xa2, 0x3d, 0x1a, 0x6c, 0x4a, 0xff, 0x44, 0x05, 0xbd, 0xb9, 0x4c, 0x3f, 0x86, 0x02, 0x24, 0xe2, 0x05, 0x03, 0x2f, 0xdc, 0x9a, 0x1d, 0xc8, 0x0c, 0x7d, 0x6b, 0x21, 0x40, 0x9f, 0x96, 0x32, 0xe0, 0xfb, 0x54, 0x00, 0x21, 0xcc, 0xc4, 0x21, 0x61, 0xb7, 0x0f, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2200 = { .name = "ecdsa_brainpoolp512r1_sha512_2200", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2200_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2200_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2200_sig, .siglen = 128, .result = 1, .comment = "extreme value for k, tcId is 250 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2201 for ECDSA, tcId is 251 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2201_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7d, 0xde, 0x38, 0x5d, 0x56, 0x63, 0x32, 0xec, 0xc0, 0xea, 0xbf, 0xa9, 0xcf, 0x78, 0x22, 0xfd, 0xf2, 0x09, 0xf7, 0x00, 0x24, 0xa5, 0x7b, 0x1a, 0xa0, 0x00, 0xc5, 0x5b, 0x88, 0x1f, 0x81, 0x11, 0xb2, 0xdc, 0xde, 0x49, 0x4a, 0x5f, 0x48, 0x5e, 0x5b, 0xca, 0x4b, 0xd8, 0x8a, 0x27, 0x63, 0xae, 0xd1, 0xca, 0x2b, 0x2f, 0xa8, 0xf0, 0x54, 0x06, 0x78, 0xcd, 0x1e, 0x0f, 0x3a, 0xd8, 0x08, 0x92, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2201_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2201 = { .name = "ecdsa_brainpoolp512r1_sha512_2201", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2201_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2201_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2201_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 251 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2202 for ECDSA, tcId is 252 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2202_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7d, 0xde, 0x38, 0x5d, 0x56, 0x63, 0x32, 0xec, 0xc0, 0xea, 0xbf, 0xa9, 0xcf, 0x78, 0x22, 0xfd, 0xf2, 0x09, 0xf7, 0x00, 0x24, 0xa5, 0x7b, 0x1a, 0xa0, 0x00, 0xc5, 0x5b, 0x88, 0x1f, 0x81, 0x11, 0xb2, 0xdc, 0xde, 0x49, 0x4a, 0x5f, 0x48, 0x5e, 0x5b, 0xca, 0x4b, 0xd8, 0x8a, 0x27, 0x63, 0xae, 0xd1, 0xca, 0x2b, 0x2f, 0xa8, 0xf0, 0x54, 0x06, 0x78, 0xcd, 0x1e, 0x0f, 0x3a, 0xd8, 0x08, 0x92, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2202_sig[] = { 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2202 = { .name = "ecdsa_brainpoolp512r1_sha512_2202", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2202_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2202_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2202_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 252 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2203 for ECDSA, tcId is 253 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2203_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x2c, 0xff, 0x65, 0x5b, 0x85, 0x86, 0x91, 0x9e, 0x7e, 0xea, 0x27, 0x04, 0x64, 0x51, 0xd9, 0x09, 0xd9, 0x26, 0x96, 0xb3, 0x8f, 0x24, 0x56, 0xf4, 0x36, 0x62, 0xd7, 0x6e, 0xe8, 0x13, 0x87, 0x5f, 0xca, 0x70, 0xbc, 0xb7, 0x51, 0x67, 0x1f, 0xe4, 0x53, 0x03, 0x55, 0x52, 0x5c, 0x7c, 0x1d, 0x37, 0x56, 0xb7, 0xd3, 0xff, 0x84, 0x92, 0x72, 0x7e, 0xaf, 0xdd, 0x42, 0x47, 0x1d, 0x62, 0x40, 0x61, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2203_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2203 = { .name = "ecdsa_brainpoolp512r1_sha512_2203", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2203_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2203_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2203_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 253 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2204 for ECDSA, tcId is 254 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2204_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x2c, 0xff, 0x65, 0x5b, 0x85, 0x86, 0x91, 0x9e, 0x7e, 0xea, 0x27, 0x04, 0x64, 0x51, 0xd9, 0x09, 0xd9, 0x26, 0x96, 0xb3, 0x8f, 0x24, 0x56, 0xf4, 0x36, 0x62, 0xd7, 0x6e, 0xe8, 0x13, 0x87, 0x5f, 0xca, 0x70, 0xbc, 0xb7, 0x51, 0x67, 0x1f, 0xe4, 0x53, 0x03, 0x55, 0x52, 0x5c, 0x7c, 0x1d, 0x37, 0x56, 0xb7, 0xd3, 0xff, 0x84, 0x92, 0x72, 0x7e, 0xaf, 0xdd, 0x42, 0x47, 0x1d, 0x62, 0x40, 0x61, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2204_sig[] = { 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2204 = { .name = "ecdsa_brainpoolp512r1_sha512_2204", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2204_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2204_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2204_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 254 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2205 for ECDSA, tcId is 255 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2205_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2205_sig[] = { 0x89, 0xed, 0xf7, 0x5e, 0x6e, 0x98, 0x63, 0x05, 0xd8, 0x18, 0x13, 0x86, 0xc1, 0x6d, 0xb4, 0x4b, 0xa0, 0xd7, 0xff, 0x40, 0xf4, 0x33, 0x55, 0x69, 0x75, 0x4a, 0x48, 0x1f, 0x5c, 0xd4, 0x8c, 0x62, 0x11, 0xa6, 0x3d, 0xe7, 0xbd, 0xaa, 0x48, 0x5e, 0x9f, 0xa7, 0x98, 0x58, 0xa4, 0xea, 0xbf, 0x11, 0x1f, 0xed, 0x29, 0x59, 0xf0, 0x31, 0xde, 0x2a, 0x13, 0x2b, 0xa7, 0x09, 0x41, 0x26, 0x83, 0xa9, 0x7a, 0x8c, 0x08, 0x56, 0x4f, 0x51, 0x53, 0x41, 0x28, 0xbb, 0x52, 0xfe, 0x36, 0xdf, 0xfa, 0xae, 0x89, 0x07, 0x90, 0x11, 0x25, 0x6e, 0xf8, 0x06, 0x9e, 0x64, 0xd6, 0x4c, 0x56, 0x10, 0xd3, 0xe6, 0x11, 0xc0, 0xba, 0x8b, 0x19, 0x02, 0x73, 0x88, 0xfc, 0xcc, 0x21, 0x25, 0x23, 0xb2, 0x2c, 0x44, 0xe8, 0x5a, 0x78, 0x9e, 0x16, 0xcb, 0x1b, 0xbd, 0x32, 0x40, 0xc8, 0x6b, 0x43, 0x48, 0x0f, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2205 = { .name = "ecdsa_brainpoolp512r1_sha512_2205", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2205_pubkey, .pubkeylen = 128, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp512r1_sha512_2205_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 255 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2206 for ECDSA, tcId is 256 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2206_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2206_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2206_sig[] = { 0x22, 0x5d, 0xc2, 0x31, 0x01, 0x77, 0xce, 0x62, 0x67, 0xef, 0xde, 0x99, 0x37, 0xef, 0xf8, 0x98, 0xfb, 0x0b, 0xad, 0x12, 0xb0, 0xdb, 0xeb, 0x4f, 0xa9, 0xc6, 0xbe, 0x6e, 0x20, 0xf8, 0x85, 0x63, 0xe6, 0xd2, 0x99, 0x1d, 0x47, 0xa6, 0x48, 0xb0, 0xba, 0x5a, 0x70, 0x39, 0x84, 0x2d, 0xbf, 0x88, 0x3b, 0xbd, 0x73, 0x5d, 0xf7, 0x93, 0xcc, 0xe0, 0xd1, 0x36, 0x02, 0x3f, 0xbf, 0xc9, 0xbe, 0x95, 0x00, 0xd5, 0x97, 0x83, 0xd8, 0xbd, 0x05, 0x0c, 0xf7, 0x28, 0xb3, 0x50, 0x6c, 0x16, 0xee, 0x4a, 0x78, 0xac, 0x26, 0xc1, 0x2f, 0xd3, 0x3d, 0xad, 0xb6, 0xee, 0x81, 0x46, 0x37, 0x2e, 0x4f, 0xb2, 0xa8, 0x80, 0xef, 0x77, 0xeb, 0x20, 0xac, 0x90, 0xf3, 0xa4, 0x27, 0x5c, 0x17, 0x18, 0xa0, 0x33, 0xa7, 0xc0, 0xb2, 0xdf, 0x53, 0x8e, 0xb3, 0x58, 0x27, 0x33, 0x01, 0x54, 0x19, 0x11, 0x53, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2206 = { .name = "ecdsa_brainpoolp512r1_sha512_2206", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2206_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2206_msg, .msglen = 3, .sig = ecdsa_brainpoolp512r1_sha512_2206_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 256 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2207 for ECDSA, tcId is 257 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2207_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2207_sig[] = { 0x61, 0x48, 0x3c, 0x72, 0x93, 0x69, 0x41, 0x31, 0x44, 0xa6, 0xbe, 0x0d, 0xd0, 0x5c, 0x1a, 0xc2, 0x9b, 0xc4, 0x40, 0xbb, 0xda, 0xf8, 0x7e, 0x57, 0x2a, 0xa9, 0x87, 0xe9, 0xca, 0x42, 0x36, 0x39, 0xf3, 0x39, 0xbc, 0xaa, 0xad, 0x99, 0xcb, 0x1f, 0xa8, 0x0b, 0x7c, 0x35, 0x41, 0x6a, 0x18, 0x34, 0xec, 0x04, 0xbc, 0xf0, 0xfe, 0x78, 0x12, 0xc7, 0x12, 0xeb, 0x1f, 0x06, 0xa1, 0x6d, 0xac, 0xa3, 0x41, 0xbb, 0x95, 0x6c, 0x33, 0x9e, 0xbc, 0xf5, 0xe4, 0xe4, 0x03, 0xc7, 0xd8, 0x92, 0x8d, 0x5e, 0xb4, 0xfd, 0xf7, 0xd3, 0xf5, 0x3a, 0x2c, 0x06, 0xd6, 0xc9, 0xfa, 0xc3, 0x47, 0xf6, 0x03, 0xac, 0x32, 0x09, 0xa2, 0xaf, 0x37, 0x51, 0x6f, 0x80, 0x7b, 0x50, 0x36, 0x3b, 0x53, 0x28, 0xbc, 0x98, 0xb9, 0x43, 0x54, 0xaf, 0x7d, 0x59, 0x96, 0x6d, 0x16, 0x0f, 0x68, 0xe8, 0x0c, 0x6b, 0x2d, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2207 = { .name = "ecdsa_brainpoolp512r1_sha512_2207", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2207_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2207_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2207_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 257 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2208 for ECDSA, tcId is 258 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2208_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2208_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2208_sig[] = { 0xa6, 0x20, 0x88, 0x0b, 0xb7, 0xfa, 0xb1, 0x18, 0x0e, 0x3d, 0x8f, 0x39, 0x3e, 0x4b, 0x33, 0x43, 0xdd, 0x4e, 0xb1, 0xc3, 0x74, 0xf9, 0xd6, 0x12, 0x52, 0xf8, 0xa2, 0x01, 0xd9, 0x09, 0x6b, 0xa8, 0x36, 0x72, 0x1f, 0x8e, 0x2d, 0x8b, 0x56, 0xcb, 0xf4, 0x06, 0x96, 0x0a, 0xae, 0x0e, 0x50, 0x32, 0x5a, 0xdf, 0xca, 0x6b, 0x1b, 0x52, 0x9f, 0x06, 0xa8, 0x12, 0x60, 0xbd, 0x8b, 0x15, 0xff, 0x68, 0x76, 0x53, 0x7f, 0xeb, 0xbc, 0x0e, 0x24, 0xab, 0x49, 0x92, 0xb5, 0x76, 0xab, 0xf8, 0xbc, 0x02, 0x01, 0xca, 0xcf, 0x5c, 0xcf, 0x67, 0x4a, 0xd3, 0xc3, 0xb1, 0x55, 0x2c, 0x98, 0xca, 0x64, 0x64, 0x2e, 0xff, 0x54, 0x01, 0xaf, 0xec, 0xab, 0x16, 0x7e, 0xc0, 0xbe, 0x19, 0x5f, 0xe5, 0xff, 0xa1, 0x78, 0xf1, 0x45, 0x67, 0xef, 0x17, 0x1b, 0x48, 0x27, 0x96, 0x4a, 0x55, 0x9d, 0x07, 0x9b, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2208 = { .name = "ecdsa_brainpoolp512r1_sha512_2208", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2208_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2208_msg, .msglen = 20, .sig = ecdsa_brainpoolp512r1_sha512_2208_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 258 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2209 for ECDSA, tcId is 259 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2209_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2209_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2209_sig[] = { 0x47, 0x9c, 0xe8, 0x45, 0x8b, 0x04, 0xb2, 0xdc, 0x12, 0x7b, 0x46, 0x97, 0x1e, 0x6c, 0x79, 0x83, 0x1b, 0xf7, 0x88, 0xf6, 0x5d, 0xdc, 0x77, 0x06, 0x20, 0xda, 0xaa, 0x15, 0x58, 0x3f, 0x8d, 0x50, 0x6f, 0x2a, 0x66, 0x52, 0xd8, 0x2b, 0x38, 0x56, 0x0e, 0xc1, 0x97, 0x75, 0x86, 0xe1, 0x19, 0x29, 0xb6, 0x66, 0xf6, 0xd7, 0x01, 0x2d, 0x81, 0x6f, 0xd3, 0x56, 0xd4, 0x1e, 0x93, 0x04, 0xd6, 0x0f, 0xa7, 0x50, 0xf7, 0x3c, 0xca, 0xef, 0xf5, 0xd9, 0x94, 0x06, 0x7e, 0x66, 0xe4, 0x5c, 0x20, 0x08, 0x92, 0xc6, 0x07, 0xb3, 0x29, 0xbe, 0x5e, 0x64, 0xdb, 0x5c, 0x38, 0x3c, 0x7b, 0xe7, 0x11, 0xc9, 0x7b, 0x5d, 0xd4, 0x25, 0xa5, 0x22, 0x50, 0xbc, 0x86, 0x24, 0x77, 0xe2, 0x8b, 0x3a, 0xfa, 0x4e, 0xf3, 0xd8, 0x31, 0x06, 0x6a, 0x7b, 0x14, 0x34, 0x32, 0xa5, 0xd1, 0x54, 0x03, 0x02, 0x14, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2209 = { .name = "ecdsa_brainpoolp512r1_sha512_2209", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2209_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2209_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2209_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 259 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2210 for ECDSA, tcId is 260 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2210_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2210_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2210_sig[] = { 0x68, 0x5b, 0x8b, 0x29, 0x29, 0xc9, 0xa0, 0xa9, 0xb0, 0xde, 0xb6, 0xba, 0xef, 0xd0, 0x0e, 0x26, 0xf5, 0x0d, 0x4c, 0x1f, 0xc3, 0xfe, 0xd4, 0x7d, 0x7e, 0xf8, 0x12, 0xc5, 0x2b, 0x66, 0xec, 0x6f, 0x6d, 0x09, 0xf5, 0x4e, 0x9b, 0xdb, 0x72, 0x02, 0x01, 0x65, 0x70, 0xf7, 0x5b, 0xb9, 0x91, 0x2a, 0xab, 0x3a, 0x57, 0x2b, 0xfb, 0x97, 0xea, 0x58, 0x9a, 0xce, 0x29, 0x4f, 0xf0, 0xfe, 0x66, 0x62, 0x4c, 0x28, 0x62, 0x67, 0xcb, 0x87, 0xa6, 0xbe, 0x56, 0xf4, 0xcd, 0x00, 0x80, 0x39, 0x8c, 0x23, 0xe5, 0x69, 0xf2, 0xeb, 0xda, 0x71, 0xd2, 0xcd, 0x16, 0x82, 0x08, 0x02, 0x90, 0xde, 0xb4, 0x14, 0x3b, 0xdc, 0x61, 0xe7, 0x5b, 0x42, 0xab, 0xef, 0xbc, 0xbb, 0xdd, 0xf4, 0xc7, 0x94, 0x54, 0x5a, 0x05, 0x37, 0x86, 0x56, 0xa1, 0x85, 0x86, 0x58, 0xe0, 0xa4, 0x59, 0x58, 0x33, 0xfc, 0x40, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2210 = { .name = "ecdsa_brainpoolp512r1_sha512_2210", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2210_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2210_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2210_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 260 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2211 for ECDSA, tcId is 261 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2211_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2211_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2211_sig[] = { 0x81, 0x11, 0x12, 0xd2, 0x7c, 0xa1, 0xe4, 0x34, 0xb0, 0x0c, 0x02, 0x93, 0x32, 0x02, 0x84, 0xb1, 0xc5, 0x36, 0x9f, 0xd0, 0x07, 0xf9, 0x0e, 0x7a, 0x99, 0xd4, 0x4c, 0x9c, 0x02, 0x01, 0x36, 0x88, 0xd1, 0x6e, 0x5e, 0x0a, 0x2f, 0xc3, 0xa0, 0x77, 0x06, 0x4a, 0x99, 0x5c, 0x42, 0x44, 0x19, 0x5c, 0x04, 0xf0, 0x03, 0x23, 0xe3, 0x3a, 0xde, 0xa6, 0xb3, 0x77, 0x01, 0xad, 0x5c, 0xb3, 0x62, 0x16, 0x82, 0xdd, 0x5c, 0x3e, 0x36, 0x42, 0xfc, 0x43, 0xe5, 0xc4, 0xc6, 0x52, 0xe3, 0xb2, 0xd0, 0x0f, 0x6d, 0x13, 0x72, 0x07, 0xbe, 0x8c, 0x9b, 0x21, 0x25, 0x56, 0x1c, 0x08, 0x70, 0x3e, 0x4a, 0x84, 0xd2, 0xa8, 0x27, 0x85, 0xf7, 0x75, 0xab, 0xd1, 0x8a, 0xab, 0x24, 0xe5, 0x2f, 0x12, 0xc5, 0xf8, 0xcb, 0x56, 0xb2, 0x8b, 0x91, 0x5f, 0x9c, 0x0b, 0x11, 0x10, 0xc5, 0x42, 0xba, 0x92, 0xb3, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2211 = { .name = "ecdsa_brainpoolp512r1_sha512_2211", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2211_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2211_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2211_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 261 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2212 for ECDSA, tcId is 262 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2212_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2212_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2212_sig[] = { 0x39, 0xd0, 0xc5, 0xc4, 0xe4, 0x8c, 0xa1, 0x40, 0x64, 0xb2, 0xe9, 0xb3, 0x60, 0x0d, 0xeb, 0x0e, 0xc2, 0xfb, 0x3e, 0x0c, 0x65, 0xb3, 0xbe, 0x5c, 0xe3, 0xf2, 0x06, 0x16, 0x6d, 0x76, 0xdf, 0xc5, 0xa5, 0xf6, 0xea, 0x87, 0x02, 0xda, 0x3a, 0xec, 0xb1, 0x3e, 0x7b, 0x55, 0xa8, 0x7b, 0x12, 0x63, 0xc4, 0x88, 0x46, 0x11, 0xe5, 0xde, 0x44, 0x0f, 0x6c, 0x89, 0xed, 0x12, 0xf8, 0x8a, 0xe5, 0x0f, 0x6a, 0xe7, 0x83, 0x98, 0xe7, 0xf9, 0x42, 0xb3, 0x5e, 0x7d, 0x87, 0xef, 0x27, 0xce, 0x83, 0x06, 0x90, 0xf7, 0x32, 0x7a, 0xd2, 0xa8, 0x3d, 0xf5, 0x6e, 0x9d, 0x02, 0x88, 0xb5, 0x19, 0x99, 0x45, 0x4b, 0xd9, 0x0f, 0x89, 0x5e, 0x78, 0x49, 0xf3, 0x5b, 0x2a, 0x65, 0x2a, 0x3a, 0xf9, 0x7b, 0xf5, 0x57, 0x95, 0xb4, 0x69, 0x8e, 0x0b, 0x01, 0x4e, 0xa6, 0xff, 0x02, 0x1a, 0x00, 0x87, 0x8f, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2212 = { .name = "ecdsa_brainpoolp512r1_sha512_2212", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2212_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2212_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2212_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 262 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2213 for ECDSA, tcId is 263 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2213_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2213_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2213_sig[] = { 0x7c, 0x3a, 0xb2, 0xe3, 0xde, 0xaf, 0xb8, 0x23, 0xee, 0x59, 0x1d, 0xc5, 0x3c, 0x97, 0xb3, 0x89, 0xc6, 0xd1, 0x8a, 0x8c, 0xa9, 0xa6, 0xae, 0x20, 0xc7, 0x43, 0x28, 0x60, 0x6d, 0xb2, 0xd7, 0xc7, 0xd2, 0xbb, 0x3c, 0xe2, 0x68, 0x94, 0xe3, 0xf3, 0x07, 0x85, 0x23, 0x7b, 0x9e, 0x87, 0x43, 0x50, 0xd6, 0x15, 0x78, 0x63, 0x81, 0xb0, 0xc8, 0xc4, 0x20, 0x22, 0x4d, 0x2f, 0x5e, 0x35, 0x94, 0x68, 0x34, 0xe7, 0x03, 0xdd, 0x93, 0x9b, 0x2b, 0x1a, 0x20, 0x08, 0x72, 0x33, 0x4e, 0x2f, 0x86, 0x4d, 0xbf, 0x26, 0x68, 0x8f, 0x84, 0x75, 0xc9, 0xe3, 0x8a, 0x38, 0x41, 0x02, 0xe0, 0x8a, 0x18, 0xc2, 0x7d, 0x4e, 0x30, 0xd8, 0x02, 0x09, 0x5f, 0xff, 0x3e, 0xdd, 0xa6, 0xdc, 0x1e, 0x03, 0xaa, 0x81, 0xae, 0xd9, 0x67, 0x19, 0xcb, 0x49, 0x61, 0x24, 0x71, 0xfa, 0x11, 0x88, 0x75, 0xa1, 0x5c, 0x18, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2213 = { .name = "ecdsa_brainpoolp512r1_sha512_2213", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2213_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2213_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2213_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 263 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2214 for ECDSA, tcId is 264 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2214_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2214_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2214_sig[] = { 0x4c, 0xd8, 0xa5, 0xf1, 0x97, 0x7a, 0x3c, 0xf8, 0xe8, 0x47, 0xa1, 0x37, 0x73, 0x59, 0xcc, 0xa7, 0x04, 0x6c, 0x79, 0x3a, 0xda, 0x06, 0x65, 0xf2, 0xc0, 0x69, 0x08, 0xfd, 0xce, 0xc2, 0x4e, 0x6c, 0xd5, 0x5a, 0x17, 0x50, 0xca, 0x57, 0x64, 0x21, 0xb8, 0xa6, 0x5a, 0xa9, 0x9a, 0xed, 0x86, 0x3c, 0xda, 0xaa, 0x77, 0xd7, 0xf7, 0xcf, 0x84, 0x44, 0x8e, 0xa5, 0x8e, 0x95, 0xc5, 0x7a, 0x13, 0x3c, 0xa3, 0x40, 0x57, 0x2d, 0x5d, 0x96, 0x83, 0xe7, 0x2e, 0x15, 0x7e, 0x68, 0x3a, 0xb1, 0x6d, 0x0e, 0x2a, 0x35, 0x03, 0x0f, 0xf3, 0xe1, 0x64, 0x1d, 0x1b, 0x4f, 0x80, 0x1d, 0x80, 0x73, 0x2c, 0x32, 0xb9, 0xfb, 0xb5, 0x3f, 0xdc, 0xae, 0xa9, 0x33, 0xf1, 0x31, 0x13, 0x6f, 0x8a, 0xb2, 0x53, 0x11, 0x01, 0x8b, 0x87, 0x1f, 0x53, 0x75, 0x37, 0x82, 0x98, 0x9a, 0x87, 0xef, 0x23, 0x1a, 0x38, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2214 = { .name = "ecdsa_brainpoolp512r1_sha512_2214", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2214_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2214_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2214_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 264 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2215 for ECDSA, tcId is 265 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2215_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2215_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2215_sig[] = { 0x53, 0x19, 0x2c, 0x28, 0x82, 0x0e, 0xc2, 0x66, 0x63, 0x9f, 0xee, 0x09, 0xe2, 0x14, 0xa5, 0x5c, 0xc0, 0xef, 0xb0, 0x7b, 0x22, 0xdc, 0x0d, 0x3f, 0x29, 0x3b, 0xda, 0x20, 0x72, 0xfc, 0xf9, 0xb4, 0x62, 0xda, 0x93, 0xec, 0x9e, 0x71, 0x69, 0xae, 0x1f, 0x11, 0x48, 0x70, 0x51, 0x89, 0xf7, 0xf1, 0x5d, 0x2c, 0xbe, 0xc4, 0x6d, 0x22, 0x41, 0x97, 0xa3, 0xa7, 0xa9, 0x24, 0xb0, 0xc0, 0x0a, 0x32, 0x1b, 0x66, 0x45, 0x36, 0xae, 0xdb, 0xdc, 0x97, 0xbe, 0xd4, 0xde, 0xe2, 0x3e, 0xb9, 0x4a, 0x49, 0xf2, 0x3d, 0xe3, 0xbd, 0x84, 0xa7, 0x8f, 0x29, 0x9e, 0x81, 0xed, 0xfe, 0x01, 0x7a, 0x7d, 0x3c, 0xa3, 0xa7, 0xc8, 0xaa, 0xce, 0x8d, 0x13, 0xb6, 0xb2, 0xeb, 0x47, 0x7b, 0x92, 0x2c, 0x43, 0x98, 0x39, 0xea, 0xcd, 0xff, 0x27, 0x83, 0x07, 0x07, 0x57, 0x75, 0x48, 0x63, 0x58, 0x2f, 0x71, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2215 = { .name = "ecdsa_brainpoolp512r1_sha512_2215", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2215_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2215_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2215_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 265 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2216 for ECDSA, tcId is 266 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2216_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2216_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2216_sig[] = { 0x96, 0x90, 0x58, 0xc1, 0x5d, 0x67, 0x5b, 0x1b, 0x26, 0x21, 0x52, 0xa4, 0x52, 0x0f, 0x7e, 0x80, 0x3a, 0xb4, 0x65, 0xa9, 0xe1, 0xee, 0xef, 0x7b, 0x8a, 0x5d, 0x0f, 0xb3, 0xe8, 0x80, 0x32, 0xb8, 0xe8, 0xf1, 0xbe, 0x9f, 0x37, 0xc8, 0x0f, 0x9c, 0x7b, 0x95, 0x0f, 0x4d, 0xa9, 0x50, 0xba, 0xae, 0x9b, 0x21, 0x6e, 0xcd, 0x6c, 0x79, 0x3d, 0xdb, 0x14, 0x59, 0xcf, 0xdf, 0x49, 0x77, 0x6b, 0xae, 0x20, 0xe0, 0xd0, 0x78, 0xa5, 0xa1, 0x13, 0xe9, 0x2f, 0xac, 0xdf, 0xe5, 0xcb, 0x39, 0x24, 0x32, 0x47, 0x25, 0x4a, 0xa0, 0xa6, 0x56, 0xb8, 0x3e, 0x7b, 0xaa, 0x34, 0x3d, 0x36, 0xf7, 0xb1, 0x4b, 0x86, 0xf1, 0x5e, 0x54, 0xb7, 0x1b, 0xa7, 0x50, 0x6d, 0x51, 0x19, 0xff, 0x52, 0xc4, 0x7e, 0x0e, 0xe5, 0x49, 0x92, 0x7a, 0x00, 0x8c, 0xbf, 0x2b, 0xbf, 0xe1, 0x91, 0x6d, 0x1c, 0xc2, 0x74, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2216 = { .name = "ecdsa_brainpoolp512r1_sha512_2216", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2216_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2216_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2216_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 266 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2217 for ECDSA, tcId is 267 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2217_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2217_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2217_sig[] = { 0x1d, 0xe5, 0xdf, 0x62, 0x13, 0x64, 0x43, 0x6b, 0xed, 0x5c, 0xac, 0xf8, 0xdb, 0xe4, 0x20, 0xe4, 0xe4, 0xe5, 0xd1, 0xb0, 0x43, 0x4f, 0xcf, 0x9d, 0xc3, 0x35, 0x64, 0x5d, 0xd0, 0xaa, 0x07, 0xcc, 0x1d, 0x1e, 0xa3, 0x0a, 0x8c, 0xaf, 0xe2, 0x53, 0x1c, 0xd4, 0x03, 0x5d, 0xd9, 0x72, 0xc0, 0xd6, 0xc3, 0x72, 0x0f, 0x16, 0x0e, 0x24, 0x26, 0x4f, 0xd6, 0xc4, 0x15, 0x21, 0xe4, 0x4e, 0xb0, 0xcb, 0x72, 0xe9, 0xab, 0xd5, 0x45, 0x61, 0xba, 0xc8, 0x9b, 0x23, 0x4b, 0xf9, 0xe5, 0x1a, 0x3f, 0x60, 0x03, 0x59, 0x0a, 0xf1, 0x77, 0x09, 0x8e, 0x25, 0xf0, 0x05, 0x3a, 0x3a, 0xe1, 0x8a, 0x6c, 0x74, 0xb3, 0x89, 0x67, 0x4a, 0x6e, 0xb8, 0x03, 0x78, 0xff, 0xd2, 0x55, 0xcf, 0xe5, 0x23, 0x23, 0x64, 0x5c, 0xdf, 0xe9, 0xa1, 0x0a, 0x96, 0x53, 0x41, 0xb4, 0xe4, 0x7f, 0xc0, 0xdd, 0x08, 0x2e, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2217 = { .name = "ecdsa_brainpoolp512r1_sha512_2217", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2217_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2217_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2217_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 267 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2218 for ECDSA, tcId is 268 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2218_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2218_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2218_sig[] = { 0x42, 0x2f, 0xb1, 0x8c, 0xde, 0xc9, 0x66, 0x93, 0x71, 0x45, 0xb0, 0xf1, 0x60, 0xb8, 0xce, 0x22, 0x2b, 0x0b, 0xa1, 0x6f, 0xab, 0x07, 0x5e, 0x16, 0xf1, 0xda, 0xc8, 0x39, 0xb8, 0xd7, 0x77, 0x2f, 0xee, 0x27, 0xa2, 0x83, 0xad, 0x72, 0x22, 0x25, 0xbe, 0xbe, 0x83, 0xdb, 0x2d, 0x5a, 0x8b, 0x25, 0xcb, 0x2c, 0xbe, 0x45, 0x24, 0x8b, 0x3a, 0xa8, 0x76, 0x55, 0x4c, 0x6a, 0x37, 0xf8, 0x13, 0x75, 0x7a, 0x38, 0x89, 0xd5, 0x3b, 0xb4, 0x2a, 0x6d, 0x41, 0xf3, 0x93, 0xeb, 0x00, 0xc4, 0x36, 0x23, 0x93, 0x70, 0x29, 0xd4, 0xcc, 0x1d, 0x36, 0x74, 0x69, 0xf6, 0xea, 0x4e, 0xc1, 0x66, 0x58, 0x61, 0x9d, 0x29, 0x35, 0xde, 0x0a, 0x65, 0x5a, 0xda, 0xe4, 0xcb, 0xb6, 0x24, 0xf2, 0xff, 0xe3, 0xce, 0x41, 0xf0, 0x24, 0x26, 0x9d, 0x91, 0x49, 0xdb, 0xd8, 0x3c, 0xb1, 0xc9, 0x7a, 0xed, 0x41, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2218 = { .name = "ecdsa_brainpoolp512r1_sha512_2218", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2218_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2218_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2218_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 268 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2219 for ECDSA, tcId is 269 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2219_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2219_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2219_sig[] = { 0x98, 0x36, 0xee, 0x7a, 0xe0, 0x44, 0x7e, 0xc0, 0x7a, 0x6a, 0x21, 0x66, 0x33, 0xe0, 0xa9, 0x7d, 0xe8, 0x31, 0xfa, 0x04, 0xfc, 0xd7, 0x60, 0xab, 0xe3, 0x9e, 0x8f, 0x45, 0x77, 0x96, 0xfd, 0xfc, 0xe9, 0xc6, 0x9e, 0xd1, 0x3c, 0x82, 0x7d, 0xe0, 0xca, 0x6b, 0x60, 0xd8, 0x49, 0xed, 0x69, 0x76, 0xac, 0x09, 0x1b, 0x7d, 0x90, 0xce, 0x3e, 0x98, 0xd3, 0xc9, 0x14, 0x4a, 0xfe, 0x63, 0x8d, 0x42, 0x1c, 0x9d, 0x8e, 0x14, 0x2b, 0xae, 0xe8, 0x57, 0xd6, 0xad, 0xec, 0x8e, 0xff, 0x84, 0xea, 0x1d, 0x23, 0xb0, 0x5f, 0x54, 0x82, 0xcc, 0x29, 0x50, 0x45, 0x15, 0x86, 0xcf, 0x5d, 0xe0, 0xcb, 0xf9, 0xe3, 0xa7, 0x27, 0xa4, 0xa4, 0xe9, 0x3e, 0x15, 0xb6, 0xcc, 0x01, 0x25, 0xe5, 0xfc, 0xd1, 0x91, 0x06, 0x36, 0x89, 0x80, 0x64, 0xa6, 0x38, 0x13, 0xa0, 0xc7, 0x5f, 0xee, 0x28, 0x04, 0x1b, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2219 = { .name = "ecdsa_brainpoolp512r1_sha512_2219", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2219_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2219_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2219_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 269 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2220 for ECDSA, tcId is 270 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2220_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2220_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2220_sig[] = { 0x08, 0x77, 0xd7, 0xa3, 0xff, 0xac, 0xf4, 0xef, 0x36, 0xcb, 0xed, 0xfd, 0x44, 0xe4, 0xcc, 0x02, 0x37, 0xbd, 0xee, 0xde, 0x8c, 0xe0, 0xbd, 0xfb, 0x33, 0x0b, 0xb7, 0x3b, 0x31, 0x7b, 0x7d, 0x16, 0x1c, 0x45, 0xbd, 0x14, 0x96, 0xe1, 0x23, 0x3c, 0xed, 0x8f, 0x7d, 0xcf, 0xd0, 0x5e, 0x0e, 0x1c, 0xc6, 0x65, 0xfb, 0x1d, 0xc9, 0x2b, 0x54, 0xfc, 0xbe, 0x9b, 0x0e, 0x55, 0xd9, 0xba, 0x1b, 0xe4, 0x0f, 0x7a, 0xb8, 0x71, 0x74, 0x2e, 0xbf, 0x22, 0xe0, 0xb7, 0x67, 0x46, 0x14, 0xd7, 0x15, 0x69, 0xd5, 0x08, 0x4c, 0xcc, 0x0c, 0x98, 0xc2, 0xe4, 0x0d, 0x08, 0x8a, 0xe8, 0x8e, 0xab, 0x37, 0x82, 0x0a, 0x89, 0xa2, 0xdb, 0xe4, 0x9e, 0x1b, 0x67, 0xec, 0x55, 0xae, 0x1a, 0x34, 0xfe, 0x48, 0x22, 0xd6, 0x91, 0xbb, 0xf5, 0x49, 0x0f, 0xcc, 0x2c, 0x47, 0xe7, 0xc1, 0xba, 0x4d, 0xc5, 0x6e, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2220 = { .name = "ecdsa_brainpoolp512r1_sha512_2220", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2220_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2220_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2220_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 270 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2221 for ECDSA, tcId is 271 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2221_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2221_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2221_sig[] = { 0xa7, 0x32, 0x20, 0x46, 0xba, 0x74, 0x73, 0x71, 0x6d, 0x35, 0x74, 0x2d, 0x96, 0x1a, 0xc5, 0xf2, 0xfe, 0x2e, 0x1d, 0xd5, 0x74, 0xec, 0xe7, 0xbd, 0x15, 0xda, 0x8c, 0x66, 0xa2, 0x62, 0xb2, 0xe7, 0x9b, 0x0d, 0x1d, 0xf2, 0x76, 0x19, 0xfd, 0xeb, 0xbb, 0x41, 0xda, 0x1b, 0x27, 0xba, 0x7c, 0x9a, 0x03, 0x70, 0xef, 0x96, 0x2e, 0xe8, 0xa4, 0x51, 0x05, 0xf4, 0x41, 0x6d, 0x16, 0xeb, 0xf1, 0x3e, 0x84, 0x18, 0xe4, 0x45, 0xdb, 0x45, 0xcf, 0xbd, 0xc8, 0x45, 0x80, 0x55, 0x38, 0x6d, 0x65, 0xe9, 0xbc, 0x07, 0xb4, 0x97, 0xb8, 0xd4, 0xbe, 0xf5, 0xf5, 0x15, 0xe7, 0x94, 0x70, 0x50, 0xd9, 0xab, 0x97, 0x99, 0xfb, 0x52, 0x0f, 0x32, 0x2b, 0xf0, 0x0f, 0xae, 0x4f, 0xae, 0x03, 0xc1, 0x26, 0x95, 0x10, 0xeb, 0xb3, 0xe1, 0xdc, 0x8c, 0xca, 0x59, 0x29, 0x8e, 0x26, 0x94, 0x58, 0x62, 0xe9, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2221 = { .name = "ecdsa_brainpoolp512r1_sha512_2221", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2221_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2221_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2221_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 271 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2222 for ECDSA, tcId is 272 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2222_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2222_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2222_sig[] = { 0x1b, 0xb4, 0x60, 0xac, 0x42, 0xbb, 0x36, 0x40, 0xbf, 0xc7, 0x39, 0xa0, 0x18, 0x6e, 0xf3, 0x36, 0x2e, 0xd2, 0x7b, 0x25, 0x4f, 0x54, 0x8c, 0x07, 0x39, 0x35, 0xca, 0xa2, 0x11, 0xa1, 0xaa, 0x30, 0x2e, 0x79, 0xa9, 0x46, 0x6d, 0x7f, 0xec, 0xe7, 0x74, 0xd2, 0x50, 0xc1, 0xae, 0xae, 0xf9, 0x64, 0x1b, 0x9a, 0x2f, 0x25, 0xe6, 0x1c, 0xa3, 0x7f, 0xad, 0xa8, 0xee, 0x07, 0xf4, 0x9f, 0xd5, 0x1e, 0x3d, 0x91, 0x8a, 0x07, 0xa3, 0x6f, 0x57, 0x8d, 0xa8, 0xb0, 0xd4, 0x2d, 0x30, 0xba, 0xd6, 0x0e, 0xcf, 0xbd, 0x60, 0x3a, 0x45, 0xd0, 0xc1, 0xa7, 0x1b, 0xb0, 0x14, 0x47, 0xea, 0xd8, 0x1a, 0x53, 0x13, 0x26, 0x5c, 0xc9, 0xb5, 0x86, 0x0a, 0xba, 0x03, 0xf1, 0xc9, 0x3a, 0x9c, 0xb9, 0xf3, 0xbd, 0xd9, 0xa8, 0x5f, 0x27, 0x0d, 0xd3, 0x69, 0x14, 0x65, 0x94, 0x1d, 0x2b, 0x80, 0x98, 0xf9, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2222 = { .name = "ecdsa_brainpoolp512r1_sha512_2222", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2222_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2222_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2222_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 272 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2223 for ECDSA, tcId is 273 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2223_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2223_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2223_sig[] = { 0x5b, 0x44, 0xe4, 0xfd, 0x49, 0x96, 0xf2, 0x7a, 0x7d, 0xcf, 0x30, 0x6b, 0xc9, 0xff, 0xf4, 0xa9, 0xc3, 0x6e, 0x3f, 0xe0, 0x90, 0x26, 0xfa, 0x72, 0x12, 0x2b, 0x64, 0xa4, 0xff, 0x65, 0xf8, 0x61, 0xa5, 0x95, 0x4c, 0xe8, 0xa4, 0x1f, 0x69, 0xa3, 0x91, 0x5c, 0x84, 0xa6, 0x3d, 0xb0, 0xc5, 0x7c, 0x6d, 0xfe, 0xcb, 0xac, 0x4f, 0xde, 0x99, 0xea, 0x5f, 0xcb, 0x10, 0x4d, 0x69, 0x67, 0xd6, 0x13, 0x08, 0x8e, 0x7b, 0x84, 0x6d, 0x6c, 0x5e, 0x09, 0x3a, 0x7b, 0xa1, 0x74, 0x27, 0xbc, 0xba, 0x0e, 0x92, 0x5a, 0xcb, 0x82, 0x6e, 0x4e, 0x9b, 0x97, 0x2b, 0x2d, 0x8a, 0x6d, 0x23, 0x2f, 0x63, 0x5c, 0xbe, 0x96, 0xbf, 0x6f, 0x16, 0x31, 0x74, 0xdb, 0x64, 0x6c, 0x2f, 0x66, 0x23, 0xc8, 0x9d, 0xc6, 0xe4, 0xa8, 0x28, 0xd4, 0xe2, 0xe2, 0xfc, 0xf3, 0xc4, 0x27, 0xc4, 0x2b, 0xdb, 0x72, 0xef, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2223 = { .name = "ecdsa_brainpoolp512r1_sha512_2223", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2223_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2223_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2223_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 273 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2224 for ECDSA, tcId is 274 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2224_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2224_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2224_sig[] = { 0x73, 0x96, 0x7e, 0xb2, 0x4e, 0x20, 0xf0, 0xd4, 0xba, 0x58, 0x89, 0x5a, 0x49, 0xf8, 0x12, 0xc2, 0x8d, 0x24, 0xe5, 0xf0, 0xfd, 0x5e, 0x35, 0xf1, 0x07, 0x58, 0x10, 0xa4, 0x78, 0xd9, 0x37, 0x17, 0xc8, 0xaa, 0x26, 0x05, 0xac, 0x84, 0x22, 0x6d, 0xd3, 0xd5, 0x3c, 0x39, 0xc0, 0xd8, 0xc5, 0x2e, 0xea, 0xc8, 0xe9, 0x98, 0xba, 0xd9, 0x31, 0xf5, 0xef, 0xdd, 0x66, 0x4b, 0x57, 0xce, 0xe5, 0x55, 0x05, 0xb0, 0x03, 0x1f, 0xb1, 0x0d, 0xfc, 0x7c, 0x36, 0xed, 0x89, 0xaa, 0xfe, 0x66, 0x44, 0x48, 0x35, 0xcd, 0x9c, 0x53, 0xe1, 0xc8, 0x50, 0xaf, 0x5f, 0x05, 0x5e, 0x2b, 0x26, 0x3d, 0x3e, 0x73, 0x7a, 0x4e, 0x6a, 0x83, 0xca, 0xdb, 0x9d, 0x76, 0xdd, 0xe5, 0x35, 0xe8, 0x09, 0xf4, 0x47, 0x45, 0x53, 0x24, 0xd4, 0xae, 0xe6, 0xf0, 0x36, 0x48, 0x5d, 0x41, 0x67, 0xa6, 0xe6, 0x0e, 0xed, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2224 = { .name = "ecdsa_brainpoolp512r1_sha512_2224", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2224_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2224_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2224_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 274 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2225 for ECDSA, tcId is 275 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2225_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2225_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2225_sig[] = { 0x63, 0x3f, 0x45, 0x69, 0x14, 0x70, 0x79, 0x23, 0xf4, 0xb0, 0x08, 0x6e, 0xa3, 0x18, 0xb8, 0xce, 0xbd, 0xba, 0x5f, 0xa1, 0x43, 0x52, 0xe3, 0xd9, 0xc6, 0x06, 0xbd, 0x8d, 0xab, 0xf0, 0x32, 0x83, 0x5b, 0xbd, 0xa7, 0x6a, 0xa5, 0x14, 0xc1, 0xa6, 0xdd, 0xe1, 0xb3, 0x21, 0x80, 0x3d, 0x27, 0xf2, 0x53, 0xdf, 0xe1, 0xca, 0xe5, 0x32, 0xa5, 0xbd, 0xcd, 0x9e, 0x93, 0xe5, 0xf9, 0x45, 0x96, 0xd1, 0x9b, 0x9c, 0x8b, 0xa0, 0x74, 0xde, 0xeb, 0x03, 0x74, 0x5d, 0x8a, 0xe3, 0x7c, 0x73, 0xe0, 0x22, 0x73, 0x07, 0x1a, 0x35, 0xdc, 0xfe, 0x0f, 0x65, 0xe4, 0x63, 0xe2, 0x08, 0xbd, 0x11, 0xc6, 0xcc, 0xb3, 0xad, 0xed, 0x6b, 0xe7, 0x31, 0x3d, 0x7a, 0x65, 0x6d, 0x5e, 0x87, 0x1b, 0x8e, 0xa4, 0xd1, 0xd5, 0x1b, 0x77, 0x84, 0x67, 0xb6, 0xdd, 0xe6, 0x57, 0x8e, 0x10, 0x5d, 0x56, 0xb6, 0x17, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2225 = { .name = "ecdsa_brainpoolp512r1_sha512_2225", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2225_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2225_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2225_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 275 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2226 for ECDSA, tcId is 276 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2226_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2226_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2226_sig[] = { 0x40, 0x89, 0x1a, 0x57, 0xb9, 0xb8, 0xf0, 0xbc, 0x6a, 0x87, 0x61, 0xd2, 0x42, 0x4c, 0xb6, 0x0b, 0x3f, 0x39, 0xde, 0x4e, 0x60, 0x1b, 0xc8, 0xda, 0xf1, 0x5a, 0xb3, 0x21, 0x6c, 0x2c, 0x56, 0xeb, 0xcc, 0x76, 0x0d, 0xe3, 0x09, 0x07, 0xe8, 0x92, 0x94, 0xaf, 0x58, 0x18, 0xf5, 0xa7, 0x2a, 0x2d, 0xf4, 0x09, 0xbb, 0x69, 0x18, 0xf3, 0xd6, 0xe5, 0x06, 0xce, 0x53, 0x14, 0x60, 0x2e, 0x50, 0xc1, 0x68, 0x62, 0x07, 0x56, 0xee, 0x2a, 0x60, 0x0a, 0x14, 0x67, 0xf2, 0x96, 0x08, 0xea, 0xd0, 0x19, 0xd0, 0xd5, 0x16, 0xb7, 0x9c, 0x8a, 0x75, 0x6f, 0xc5, 0x37, 0xa9, 0xfc, 0x73, 0x46, 0x16, 0xbf, 0xec, 0x13, 0x38, 0x39, 0xbe, 0xb4, 0x77, 0x8f, 0xdf, 0xfd, 0x3f, 0xb4, 0x22, 0x6e, 0x51, 0xce, 0x4b, 0xc0, 0x96, 0x27, 0x33, 0x1c, 0x8d, 0xae, 0xf1, 0xf7, 0x11, 0x64, 0x8a, 0x30, 0xfb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2226 = { .name = "ecdsa_brainpoolp512r1_sha512_2226", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2226_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2226_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2226_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 276 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2227 for ECDSA, tcId is 277 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2227_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2227_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2227_sig[] = { 0x4d, 0xeb, 0xd0, 0x68, 0x30, 0x28, 0xf2, 0x33, 0x5b, 0x23, 0x3c, 0x49, 0x53, 0x1b, 0x60, 0x96, 0xe7, 0xc5, 0x52, 0x1f, 0x75, 0xfc, 0xb4, 0xb5, 0xf5, 0xe3, 0x22, 0x41, 0xbe, 0x08, 0x1f, 0x3c, 0x2b, 0x85, 0x49, 0xb5, 0x7f, 0x31, 0x21, 0x7b, 0xe9, 0xb7, 0xaa, 0x1a, 0x46, 0x87, 0xa7, 0x2e, 0xc9, 0xa5, 0xd3, 0x76, 0x30, 0x72, 0x52, 0xca, 0x7c, 0x1b, 0x9b, 0x61, 0x0d, 0x25, 0xb4, 0xd0, 0x04, 0xd1, 0x30, 0x3f, 0x6b, 0x91, 0xac, 0x01, 0xc9, 0x14, 0x11, 0xa9, 0x83, 0xf3, 0xab, 0xb0, 0x4f, 0x36, 0x98, 0xb1, 0x69, 0xf8, 0xa3, 0x9f, 0xfd, 0x19, 0x31, 0xc0, 0x61, 0xe6, 0x6f, 0x43, 0x48, 0x2f, 0xec, 0x79, 0x5d, 0xfd, 0x0d, 0x0a, 0xbe, 0x87, 0x9f, 0xa8, 0xdb, 0x88, 0x5b, 0x61, 0x8a, 0xca, 0x2a, 0xe0, 0x13, 0xe6, 0x93, 0xf1, 0x54, 0xbb, 0x9d, 0x0a, 0x77, 0xad, 0xef, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2227 = { .name = "ecdsa_brainpoolp512r1_sha512_2227", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2227_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2227_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2227_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 277 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2228 for ECDSA, tcId is 278 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2228_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2228_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2228_sig[] = { 0x34, 0xac, 0x9a, 0x4e, 0x6f, 0xb1, 0x71, 0xf4, 0x24, 0xbb, 0x59, 0x2d, 0x1b, 0x84, 0x5b, 0xee, 0x55, 0x17, 0x3b, 0x42, 0x42, 0x2f, 0xd5, 0xb5, 0x13, 0x2f, 0x85, 0x9a, 0x27, 0xdd, 0xcd, 0xa5, 0x53, 0x2f, 0xd3, 0x81, 0x16, 0xe6, 0x27, 0x7d, 0x93, 0x75, 0x63, 0x9f, 0xb2, 0x5b, 0x0f, 0x66, 0xf1, 0xe8, 0xa1, 0xac, 0xca, 0xa7, 0x80, 0x0c, 0x91, 0xc8, 0x7e, 0x74, 0x39, 0x98, 0x7d, 0x58, 0x75, 0x89, 0x2b, 0xe8, 0xe1, 0x1d, 0x9b, 0xf3, 0xe8, 0x1e, 0x83, 0x70, 0xaf, 0x02, 0xd8, 0x8b, 0xda, 0x83, 0xce, 0x0a, 0xe9, 0xc2, 0x1a, 0xeb, 0x48, 0x7e, 0xef, 0x4c, 0x4c, 0x54, 0x58, 0xe5, 0x1a, 0x99, 0xe4, 0xd7, 0x88, 0xdb, 0x84, 0x06, 0x4c, 0xfb, 0xc4, 0x82, 0x40, 0xf5, 0x66, 0x12, 0x07, 0x87, 0x69, 0xfd, 0xe0, 0xe3, 0xb7, 0x06, 0x12, 0x5f, 0x46, 0xe2, 0xf2, 0x6a, 0x35, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2228 = { .name = "ecdsa_brainpoolp512r1_sha512_2228", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2228_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2228_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2228_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 278 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2229 for ECDSA, tcId is 279 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2229_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2229_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2229_sig[] = { 0x36, 0xb6, 0x8b, 0x5c, 0xad, 0x74, 0x28, 0x80, 0x3f, 0x60, 0x66, 0x15, 0x50, 0x58, 0x57, 0xaa, 0x7c, 0xfb, 0x68, 0x3d, 0x1e, 0x9c, 0xe8, 0x56, 0xd4, 0x99, 0xfa, 0x6e, 0x13, 0xee, 0x6a, 0x4f, 0x23, 0x5e, 0xdd, 0x00, 0x40, 0x34, 0x29, 0xff, 0x14, 0xbc, 0x57, 0x8d, 0xd1, 0x21, 0xfd, 0x25, 0x60, 0x04, 0x79, 0x4a, 0xdd, 0x4f, 0xb8, 0x19, 0x5b, 0x43, 0xa9, 0xe1, 0xee, 0xfb, 0xd3, 0xa1, 0x45, 0xc6, 0xaf, 0xfd, 0x60, 0x7f, 0x54, 0x24, 0xa0, 0xe4, 0x9c, 0x0f, 0x1a, 0x72, 0xeb, 0xf7, 0x94, 0x8a, 0x80, 0xb4, 0x82, 0xef, 0x17, 0x1e, 0xe1, 0x61, 0xdc, 0x36, 0x51, 0x56, 0x79, 0xe3, 0x2f, 0xa9, 0xed, 0xaa, 0x92, 0xc5, 0x74, 0x03, 0xe6, 0xe1, 0x02, 0x64, 0x3b, 0x77, 0x39, 0x1a, 0xed, 0xee, 0xc2, 0xb0, 0x54, 0x96, 0x43, 0x15, 0xde, 0xdd, 0x4c, 0xc3, 0x69, 0xf2, 0x3f, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2229 = { .name = "ecdsa_brainpoolp512r1_sha512_2229", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2229_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2229_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2229_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 279 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2230 for ECDSA, tcId is 280 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2230_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2230_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2230_sig[] = { 0x5e, 0x1b, 0xf4, 0xb1, 0xde, 0xba, 0xcb, 0xa4, 0x72, 0x5f, 0xc3, 0xcc, 0x82, 0x14, 0x53, 0x4d, 0xe5, 0xf6, 0xe5, 0x92, 0x64, 0x5b, 0x60, 0xf4, 0xc4, 0xa1, 0xdd, 0x22, 0x60, 0xd3, 0x35, 0x7d, 0x8f, 0xb2, 0xad, 0xa7, 0xf7, 0x2a, 0x48, 0x34, 0x6a, 0x7e, 0x34, 0x39, 0x5a, 0x6a, 0x18, 0x1c, 0x69, 0x40, 0x48, 0xae, 0x82, 0x58, 0xf1, 0xcb, 0x3b, 0x6f, 0x63, 0xf4, 0x93, 0x28, 0x29, 0xeb, 0x5e, 0x3d, 0xf0, 0xbe, 0xee, 0x22, 0xfa, 0x96, 0xd4, 0x65, 0x58, 0x33, 0x86, 0x2f, 0x73, 0xb5, 0x2f, 0x12, 0xe4, 0xc4, 0xc7, 0xd8, 0x18, 0xb2, 0x18, 0x46, 0xef, 0xfb, 0x39, 0xd6, 0xf0, 0x9f, 0xc3, 0x5b, 0x2d, 0x0f, 0xac, 0x8f, 0x5c, 0xb3, 0xc4, 0x05, 0x1f, 0xf4, 0x5f, 0x53, 0x05, 0xe9, 0x3b, 0x24, 0x13, 0x8a, 0x0f, 0x95, 0xfa, 0xd2, 0xfe, 0xf1, 0xc1, 0x0c, 0xd1, 0xdc, 0xf2, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2230 = { .name = "ecdsa_brainpoolp512r1_sha512_2230", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2230_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2230_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2230_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 280 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2231 for ECDSA, tcId is 281 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2231_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2231_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2231_sig[] = { 0x80, 0x40, 0x0b, 0xee, 0x9a, 0x34, 0x2f, 0x3a, 0xfb, 0xa2, 0xdb, 0xb0, 0x29, 0x23, 0x5a, 0xd5, 0x11, 0xae, 0xdb, 0x30, 0x96, 0x0c, 0x53, 0xba, 0xd6, 0x70, 0x46, 0x0b, 0x38, 0x30, 0x4d, 0x7c, 0xbd, 0x70, 0x6f, 0xf9, 0x8f, 0x12, 0x96, 0xcb, 0x7e, 0x74, 0x6f, 0x8c, 0xa3, 0xa4, 0x39, 0x37, 0xa5, 0xcd, 0x03, 0x5a, 0x00, 0xc6, 0x38, 0x68, 0x00, 0x1f, 0xa4, 0x29, 0xb4, 0x91, 0xbd, 0x8e, 0x5c, 0x66, 0x94, 0x1e, 0xdc, 0xda, 0x56, 0x22, 0x8e, 0xdc, 0xe7, 0x73, 0x73, 0xa7, 0xb9, 0xdc, 0xdd, 0x46, 0x4e, 0xd1, 0x80, 0x75, 0xe7, 0xda, 0x14, 0x27, 0x91, 0x17, 0x78, 0x78, 0x4f, 0x80, 0x17, 0xbe, 0xf6, 0xf1, 0x87, 0x51, 0xcb, 0xa1, 0x23, 0x55, 0xbd, 0x90, 0xba, 0x63, 0xb8, 0xd3, 0x1e, 0xa3, 0x73, 0x38, 0x7f, 0x36, 0x49, 0x4e, 0x36, 0x42, 0x00, 0x80, 0x82, 0xd3, 0x49, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2231 = { .name = "ecdsa_brainpoolp512r1_sha512_2231", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2231_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2231_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2231_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 281 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2232 for ECDSA, tcId is 282 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2232_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2232_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2232_sig[] = { 0x47, 0x68, 0xdf, 0xdd, 0xae, 0x4c, 0xb8, 0x35, 0x66, 0xf2, 0xc3, 0xa9, 0x34, 0x00, 0x91, 0xc2, 0x60, 0x8e, 0x0e, 0x27, 0x0a, 0x4b, 0x3f, 0x48, 0xde, 0xd7, 0xc7, 0x5b, 0x4a, 0xa1, 0x5a, 0xb6, 0x5c, 0xb0, 0x50, 0xcf, 0xdb, 0x31, 0x2c, 0x32, 0xbf, 0xaa, 0x77, 0x59, 0x86, 0x9c, 0x9c, 0x0c, 0xe2, 0x7f, 0x6c, 0xdf, 0x1f, 0xb5, 0x84, 0x37, 0x9f, 0x63, 0x98, 0xc9, 0x5e, 0xbf, 0x86, 0x44, 0x7e, 0x1a, 0x3a, 0xac, 0xd8, 0xd6, 0x03, 0xfa, 0xec, 0xf8, 0x79, 0x02, 0x14, 0x7b, 0x67, 0x43, 0x5d, 0x99, 0x2e, 0xe9, 0xe5, 0x43, 0xf9, 0x34, 0xdd, 0x4c, 0x40, 0xd8, 0xa1, 0x2c, 0xd1, 0xe1, 0x03, 0x66, 0xd0, 0x74, 0x3d, 0x78, 0x62, 0xb9, 0xc8, 0xba, 0x8b, 0x68, 0x16, 0x63, 0x9c, 0x35, 0x09, 0xb5, 0xca, 0xa2, 0xa9, 0x15, 0x33, 0xc0, 0xaf, 0x50, 0xec, 0xe2, 0xfd, 0x2c, 0x53, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2232 = { .name = "ecdsa_brainpoolp512r1_sha512_2232", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2232_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2232_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2232_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 282 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2233 for ECDSA, tcId is 283 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2233_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2233_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2233_sig[] = { 0x27, 0xd9, 0xc6, 0xc4, 0xdb, 0x31, 0xaf, 0xf2, 0x88, 0xfa, 0x4e, 0x40, 0x15, 0x9d, 0x6e, 0xe1, 0x8c, 0x98, 0x13, 0x94, 0x27, 0x48, 0x47, 0x96, 0xf1, 0xf8, 0x74, 0x5c, 0x98, 0x27, 0xdf, 0xc0, 0x8d, 0x39, 0x3a, 0xbe, 0x14, 0x4d, 0xf6, 0xb7, 0xc1, 0x2d, 0x48, 0x97, 0x1f, 0xdd, 0x28, 0x4b, 0x81, 0xe6, 0xe1, 0x08, 0x60, 0x35, 0x9e, 0xf7, 0x14, 0x73, 0xb9, 0xe6, 0xbb, 0x84, 0xcb, 0x1e, 0x07, 0xa0, 0x42, 0x0c, 0x8a, 0x9b, 0x26, 0x91, 0x1b, 0x63, 0x62, 0x65, 0x40, 0xa8, 0x5f, 0x60, 0xaa, 0x27, 0x7a, 0xfd, 0xef, 0x99, 0x90, 0xfc, 0x8d, 0xc1, 0xd3, 0xf1, 0xf2, 0xc5, 0xa9, 0x27, 0xe1, 0xe4, 0xa2, 0x9d, 0x81, 0xa7, 0x01, 0xb4, 0x8b, 0x36, 0x6f, 0x00, 0x0f, 0x96, 0x26, 0x14, 0x89, 0x9c, 0xbf, 0x19, 0x38, 0x26, 0xca, 0x8d, 0xe4, 0xa4, 0x25, 0x53, 0x8d, 0xe5, 0xac, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2233 = { .name = "ecdsa_brainpoolp512r1_sha512_2233", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2233_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2233_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2233_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 283 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2234 for ECDSA, tcId is 284 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2234_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2234_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2234_sig[] = { 0x49, 0x54, 0x2e, 0xec, 0x3b, 0x96, 0xc4, 0x76, 0xb5, 0x9b, 0x2b, 0x94, 0xd5, 0xfc, 0x7e, 0xe0, 0x8f, 0xd2, 0xa1, 0xb1, 0xe7, 0x32, 0xe6, 0x60, 0x90, 0x98, 0xab, 0x2a, 0x7f, 0x25, 0x04, 0x52, 0xfb, 0xc1, 0x05, 0x7a, 0x6d, 0x3f, 0xec, 0xcb, 0xca, 0xeb, 0x00, 0x46, 0x8b, 0x26, 0x22, 0x2e, 0xb4, 0x80, 0x65, 0xfc, 0xaa, 0xd7, 0x64, 0x76, 0x81, 0x82, 0x38, 0x60, 0x45, 0x1e, 0x1e, 0x91, 0x37, 0xdb, 0x33, 0x6d, 0xee, 0x1e, 0x45, 0xd9, 0xac, 0xe5, 0x50, 0x05, 0x35, 0x11, 0xc9, 0xc3, 0x75, 0x56, 0x57, 0xe7, 0x8e, 0xca, 0x10, 0x8d, 0x3d, 0xfd, 0x1e, 0x68, 0xfe, 0x83, 0xda, 0x62, 0x6b, 0x8d, 0xac, 0xbb, 0x19, 0xf0, 0xee, 0x23, 0x2b, 0x0f, 0x8b, 0xfe, 0x8d, 0xdb, 0xe7, 0xd5, 0xe9, 0x8b, 0x7a, 0x2e, 0xcc, 0xd0, 0x3f, 0x37, 0x5d, 0x16, 0x4c, 0xe8, 0x28, 0x63, 0x18, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2234 = { .name = "ecdsa_brainpoolp512r1_sha512_2234", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2234_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2234_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2234_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 284 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2235 for ECDSA, tcId is 285 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2235_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2235_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2235_sig[] = { 0x4f, 0x90, 0xce, 0xb7, 0x6b, 0xc7, 0x2f, 0x0c, 0xca, 0x10, 0x70, 0x5d, 0x3b, 0xad, 0xab, 0x6c, 0xaa, 0x60, 0x19, 0xef, 0x6b, 0xfe, 0x7d, 0xe1, 0xb7, 0x59, 0x51, 0xd5, 0x17, 0xd2, 0xb1, 0x61, 0x68, 0x51, 0x5b, 0xf3, 0x05, 0xf0, 0x00, 0x62, 0x92, 0xe4, 0x90, 0x05, 0x98, 0x25, 0x61, 0x41, 0xe4, 0x5c, 0x19, 0x07, 0x7f, 0xa4, 0x47, 0xdd, 0x5f, 0x32, 0xda, 0xa6, 0x2c, 0x25, 0x08, 0x15, 0x67, 0x12, 0xa7, 0x84, 0x10, 0x28, 0x02, 0x82, 0x1e, 0x97, 0x08, 0xe3, 0x49, 0xd0, 0x3a, 0x88, 0x29, 0x7b, 0x37, 0x4e, 0xf8, 0x1a, 0x4e, 0xdc, 0x35, 0x01, 0x65, 0x24, 0xcd, 0x2a, 0x22, 0xaf, 0xea, 0x7b, 0x8b, 0x31, 0x71, 0xde, 0x60, 0xac, 0x1b, 0x38, 0x82, 0x53, 0x36, 0x50, 0x58, 0x6d, 0xca, 0xd3, 0x38, 0xea, 0x48, 0x23, 0x14, 0x86, 0xe1, 0x0e, 0x31, 0x20, 0xce, 0x3d, 0x2a, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2235 = { .name = "ecdsa_brainpoolp512r1_sha512_2235", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2235_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2235_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2235_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 285 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2236 for ECDSA, tcId is 286 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2236_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2236_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2236_sig[] = { 0x45, 0x9e, 0x3e, 0x6e, 0x67, 0x1a, 0x6c, 0x34, 0x2d, 0x58, 0x5d, 0xb6, 0x89, 0x04, 0x3d, 0x32, 0xa4, 0x94, 0xce, 0x00, 0x39, 0xee, 0x71, 0xac, 0x67, 0xed, 0x6e, 0xc0, 0x86, 0x19, 0x08, 0xeb, 0xae, 0x6b, 0x2d, 0x6e, 0x4a, 0x67, 0xca, 0xa7, 0xa8, 0xf0, 0x57, 0x6a, 0x49, 0x88, 0x9a, 0x4a, 0x63, 0xd4, 0xb0, 0xb8, 0xaa, 0x88, 0x45, 0xc9, 0xcf, 0x78, 0x5b, 0x49, 0x41, 0x2a, 0x70, 0x71, 0xa5, 0xed, 0xd7, 0xab, 0xfc, 0xe9, 0xd4, 0x41, 0x3b, 0x22, 0x28, 0x93, 0x97, 0x78, 0x5b, 0x3d, 0x84, 0xb2, 0xc0, 0xd3, 0x71, 0x94, 0x09, 0x25, 0x5b, 0xb7, 0x12, 0x82, 0x68, 0xe0, 0xbc, 0xd3, 0x7d, 0x92, 0x8b, 0xea, 0x54, 0x86, 0xbf, 0x56, 0xff, 0xe2, 0x59, 0xc7, 0xec, 0x9f, 0x50, 0xb8, 0x78, 0xe0, 0x15, 0x5d, 0x73, 0xe3, 0xbd, 0xe5, 0xcf, 0xfe, 0x55, 0xe6, 0x12, 0xf8, 0xd7, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2236 = { .name = "ecdsa_brainpoolp512r1_sha512_2236", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2236_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2236_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2236_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 286 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2237 for ECDSA, tcId is 287 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2237_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2237_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2237_sig[] = { 0x1b, 0x2f, 0x7e, 0xa4, 0x09, 0x60, 0xe3, 0x7e, 0x28, 0xb5, 0x56, 0xb7, 0xe4, 0x46, 0xc4, 0x64, 0x1e, 0x2f, 0x3d, 0x8a, 0x82, 0x9d, 0xcc, 0x4a, 0x34, 0x95, 0x53, 0xe4, 0x2c, 0xf9, 0xce, 0x62, 0x72, 0xdc, 0x9c, 0xdc, 0xda, 0x01, 0x3e, 0x39, 0x81, 0xcb, 0x73, 0xb1, 0x0d, 0x46, 0x32, 0x1c, 0x80, 0x50, 0x1d, 0x6a, 0x34, 0xad, 0x7f, 0xd9, 0x59, 0xa0, 0xc7, 0x8f, 0x89, 0x1f, 0x33, 0xf0, 0x7f, 0x19, 0x5b, 0x76, 0x96, 0xed, 0xfc, 0x76, 0x87, 0xff, 0x01, 0x26, 0xea, 0xba, 0x13, 0xda, 0xd1, 0xe1, 0x95, 0x63, 0xe8, 0xd3, 0x95, 0xaf, 0x32, 0xdb, 0x3d, 0x6a, 0x7b, 0x4e, 0x82, 0xf2, 0x80, 0x04, 0x50, 0x1d, 0x92, 0xb7, 0x53, 0x7d, 0xa3, 0x97, 0x84, 0x5b, 0x7a, 0xa3, 0x98, 0xa1, 0x10, 0x51, 0x05, 0x2e, 0x52, 0x26, 0x4b, 0xd8, 0xcb, 0xcb, 0xa9, 0x98, 0x7e, 0xc6, 0x74, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2237 = { .name = "ecdsa_brainpoolp512r1_sha512_2237", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2237_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2237_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2237_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 287 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2238 for ECDSA, tcId is 288 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2238_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2238_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2238_sig[] = { 0x1b, 0x5c, 0x1d, 0x2b, 0x2b, 0x06, 0x59, 0x1a, 0x1f, 0xa5, 0x16, 0xcf, 0xfa, 0x9c, 0x8a, 0x57, 0xcf, 0x1f, 0xff, 0xc2, 0x2c, 0xec, 0xb7, 0x24, 0x92, 0x81, 0x67, 0x0b, 0xc2, 0x38, 0x83, 0xa6, 0x85, 0x53, 0xe0, 0xca, 0xf1, 0xed, 0xd9, 0xf1, 0x70, 0x3a, 0x25, 0xb7, 0x4e, 0x00, 0x00, 0xa3, 0x7e, 0x32, 0xe6, 0xcc, 0x35, 0x76, 0x93, 0x9f, 0x45, 0x8c, 0x3d, 0xd5, 0xc4, 0xdb, 0xcc, 0x9c, 0x4b, 0x23, 0xd7, 0xed, 0x7f, 0x8a, 0x6b, 0x7b, 0xa7, 0xd2, 0x2a, 0xef, 0xa8, 0xfd, 0xe0, 0x30, 0xec, 0xb3, 0xf2, 0xfe, 0xd4, 0xa5, 0xf2, 0x6f, 0x12, 0xd5, 0x9a, 0x29, 0xd6, 0x3c, 0xdd, 0x0e, 0xc0, 0x3f, 0xae, 0x55, 0x7d, 0x14, 0x1c, 0x7b, 0x0e, 0x87, 0x12, 0xc3, 0x06, 0xb0, 0xee, 0xbb, 0xd0, 0xca, 0xb2, 0x76, 0x96, 0x01, 0x20, 0x62, 0x62, 0x2b, 0xb1, 0x80, 0x04, 0x30, 0x34, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2238 = { .name = "ecdsa_brainpoolp512r1_sha512_2238", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2238_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2238_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2238_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 288 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2239 for ECDSA, tcId is 289 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2239_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2239_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2239_sig[] = { 0xa9, 0x52, 0x84, 0x7a, 0xcf, 0x21, 0x3c, 0x86, 0xe2, 0x31, 0x31, 0x6d, 0x8f, 0x91, 0x30, 0xf7, 0xcb, 0xdf, 0x7f, 0x39, 0x52, 0x30, 0x7a, 0x57, 0x70, 0x76, 0x34, 0x2d, 0x13, 0x93, 0x9b, 0x4a, 0xb5, 0xa1, 0x31, 0x3b, 0x34, 0xab, 0xb8, 0x92, 0x04, 0xd3, 0xfd, 0x1f, 0x87, 0x38, 0x85, 0xff, 0xfa, 0x68, 0x3c, 0x5a, 0x49, 0x3e, 0x54, 0x61, 0xc7, 0xf1, 0x40, 0x0a, 0xf8, 0x6a, 0xe7, 0xfe, 0x9a, 0x65, 0xa8, 0xa4, 0x15, 0x0d, 0xe5, 0x93, 0xb2, 0x96, 0x42, 0xb9, 0x88, 0xb2, 0xec, 0x2e, 0x23, 0xe1, 0x5e, 0x15, 0x6e, 0xcf, 0x0a, 0xf5, 0xfd, 0xe2, 0xfb, 0xd7, 0x32, 0x08, 0xf6, 0x9f, 0x25, 0x06, 0xd1, 0x41, 0xe0, 0xb4, 0x7c, 0x0e, 0x1f, 0x2f, 0xa0, 0x9e, 0xf2, 0x6b, 0x38, 0x9a, 0x6b, 0xd2, 0xb0, 0x23, 0x09, 0x30, 0xa1, 0x6f, 0xd1, 0x19, 0x76, 0x7e, 0x38, 0x27, 0x24, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2239 = { .name = "ecdsa_brainpoolp512r1_sha512_2239", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2239_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2239_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2239_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 289 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2240 for ECDSA, tcId is 290 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2240_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2240_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2240_sig[] = { 0x51, 0xbf, 0xb8, 0x0a, 0xae, 0x30, 0x26, 0x2a, 0x67, 0xbf, 0x07, 0x71, 0xa6, 0xb8, 0xd1, 0x95, 0xe5, 0x9a, 0xa0, 0x4e, 0x87, 0xbd, 0x06, 0x0f, 0xe5, 0xa9, 0xbd, 0x56, 0xd3, 0x53, 0x85, 0xa5, 0xfc, 0x3d, 0xa5, 0xdf, 0xc3, 0xae, 0x8c, 0x67, 0xdb, 0xd4, 0x08, 0x18, 0x44, 0x82, 0x85, 0x5e, 0x35, 0x63, 0xde, 0xde, 0xe7, 0x2a, 0x21, 0xb6, 0x0f, 0xaf, 0xd7, 0x38, 0x19, 0xaa, 0x83, 0x7c, 0x80, 0x7f, 0x0d, 0x69, 0x38, 0x54, 0x67, 0xad, 0x6c, 0xd8, 0xa4, 0x4d, 0x48, 0x2c, 0xa3, 0xb6, 0xe1, 0x8f, 0x7b, 0x35, 0x2e, 0xf1, 0x9a, 0x2b, 0xc9, 0x80, 0x50, 0x0b, 0x6d, 0x59, 0x04, 0x5f, 0x0d, 0x6f, 0x7a, 0xb7, 0xe4, 0x14, 0xc5, 0x0d, 0x2b, 0x68, 0xd7, 0xf6, 0xe6, 0xc0, 0x1d, 0x3e, 0x83, 0x53, 0xcd, 0xfd, 0x47, 0x5f, 0x24, 0x9b, 0x31, 0x84, 0x2f, 0xe5, 0x99, 0x55, 0xf4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2240 = { .name = "ecdsa_brainpoolp512r1_sha512_2240", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2240_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2240_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2240_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 290 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2241 for ECDSA, tcId is 291 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2241_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2241_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2241_sig[] = { 0x4e, 0x87, 0x11, 0xb0, 0x0d, 0xe3, 0x55, 0xf1, 0x4c, 0x8e, 0xb9, 0x19, 0x59, 0xc1, 0x3c, 0x77, 0xf9, 0x15, 0x57, 0x54, 0x76, 0x5f, 0x10, 0xf2, 0xaa, 0xa8, 0xfd, 0xad, 0x6a, 0x14, 0xc6, 0xa4, 0xe6, 0x2c, 0x5e, 0xd4, 0x8a, 0x9d, 0x8c, 0xa4, 0x03, 0xc9, 0x02, 0xdb, 0x0c, 0x2c, 0x07, 0x35, 0x42, 0x6b, 0x33, 0xe6, 0x78, 0x28, 0xac, 0x32, 0xae, 0x19, 0xb8, 0x4e, 0x65, 0x98, 0x68, 0x19, 0x7d, 0x10, 0x4a, 0xe5, 0xe5, 0xd0, 0xda, 0x26, 0xcb, 0x42, 0x7d, 0x79, 0x51, 0xd4, 0x0d, 0xf4, 0x29, 0xb4, 0x20, 0x50, 0x86, 0xe6, 0x33, 0xb8, 0x00, 0xd7, 0xd7, 0xb8, 0xbd, 0xe4, 0x8a, 0x9b, 0xec, 0x4e, 0x43, 0xdd, 0xeb, 0x42, 0x26, 0x19, 0x2b, 0x5c, 0x9b, 0x30, 0xff, 0xa3, 0xef, 0xa7, 0xd2, 0x38, 0x5a, 0xb2, 0x8a, 0x19, 0x0c, 0x16, 0x5f, 0xb2, 0xa2, 0xc5, 0x85, 0x72, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2241 = { .name = "ecdsa_brainpoolp512r1_sha512_2241", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2241_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2241_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2241_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 291 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2242 for ECDSA, tcId is 292 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2242_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2242_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2242_sig[] = { 0x4c, 0xd6, 0x17, 0x54, 0x21, 0x1d, 0x22, 0x23, 0x71, 0xe5, 0x52, 0x57, 0x8f, 0xf7, 0x05, 0xcc, 0x81, 0x9a, 0x2f, 0x9f, 0xb2, 0x72, 0x9f, 0x05, 0xd8, 0x48, 0xca, 0xab, 0xf4, 0x4a, 0x31, 0xfd, 0xa1, 0xbd, 0x03, 0x8f, 0x1b, 0x87, 0xef, 0xd2, 0x8a, 0x8c, 0xe5, 0x32, 0x22, 0xfd, 0xfe, 0xc1, 0x8d, 0x59, 0x29, 0xdf, 0x92, 0x6d, 0xf2, 0x7c, 0x2c, 0x7e, 0x73, 0x60, 0xbc, 0x5c, 0x0c, 0x70, 0x5c, 0xe9, 0x4c, 0x85, 0x1d, 0xb1, 0x80, 0x7d, 0xc7, 0x9d, 0xcc, 0x08, 0x7c, 0x08, 0x30, 0xd7, 0x0a, 0x00, 0x69, 0xcf, 0x52, 0xba, 0xff, 0xaf, 0x34, 0x7a, 0xef, 0xa1, 0xdd, 0xba, 0x77, 0xf6, 0xf7, 0x70, 0xc1, 0x48, 0x3f, 0xdd, 0xe3, 0x8f, 0x5d, 0x74, 0xbd, 0xb3, 0x23, 0x72, 0xe1, 0x2f, 0xee, 0x84, 0x3e, 0xff, 0xf0, 0xf2, 0xdc, 0x93, 0x44, 0xca, 0x1e, 0x3b, 0x26, 0xb9, 0xb0, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2242 = { .name = "ecdsa_brainpoolp512r1_sha512_2242", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2242_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2242_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2242_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 292 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2243 for ECDSA, tcId is 293 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2243_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2243_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2243_sig[] = { 0x48, 0xb4, 0xbd, 0xe7, 0xbe, 0xfb, 0x1b, 0x1c, 0xad, 0x50, 0xce, 0xe6, 0x23, 0x3c, 0xbf, 0x32, 0x81, 0x28, 0x60, 0xc8, 0x1d, 0x7a, 0xd5, 0xb0, 0xe9, 0xd6, 0x37, 0x72, 0x02, 0xbc, 0xd3, 0x48, 0x27, 0xc5, 0x34, 0xda, 0x0a, 0xc9, 0x64, 0x6a, 0xe0, 0x15, 0x46, 0x89, 0xe3, 0x8c, 0x60, 0x88, 0x94, 0xbb, 0x31, 0x26, 0xe1, 0x02, 0x5f, 0x69, 0xc8, 0x24, 0xc6, 0x9a, 0xb8, 0x21, 0x27, 0x4a, 0x83, 0x69, 0xf5, 0x84, 0x0f, 0x77, 0x66, 0x68, 0xeb, 0xb4, 0x35, 0xb3, 0x3b, 0xe0, 0x5d, 0xce, 0x4a, 0xdf, 0xab, 0xb8, 0x86, 0x0c, 0xcc, 0x90, 0x0d, 0x07, 0xdb, 0x00, 0x6a, 0x50, 0x19, 0x5f, 0xd4, 0xde, 0x98, 0x63, 0x21, 0x92, 0xfb, 0xe7, 0x31, 0x9c, 0xed, 0xff, 0x26, 0xaa, 0x86, 0x82, 0xcf, 0x7b, 0xf5, 0xf1, 0xc0, 0x2e, 0x58, 0xb9, 0xc1, 0x63, 0x23, 0x61, 0x03, 0xd9, 0xb3, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2243 = { .name = "ecdsa_brainpoolp512r1_sha512_2243", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2243_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2243_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2243_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 293 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2244 for ECDSA, tcId is 294 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2244_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2244_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2244_sig[] = { 0x19, 0x52, 0x4b, 0x15, 0xcf, 0x4e, 0xcb, 0x40, 0x0b, 0x93, 0x8e, 0xf5, 0xf7, 0x52, 0xb8, 0x6e, 0xc8, 0xf0, 0x7c, 0x59, 0x03, 0xda, 0x5d, 0xba, 0x9c, 0x91, 0xab, 0x79, 0x65, 0xb1, 0x22, 0x3a, 0x8e, 0x26, 0x2b, 0xef, 0x8c, 0xca, 0x89, 0x73, 0xed, 0x98, 0x79, 0x7f, 0x37, 0xa3, 0x5e, 0x1c, 0x59, 0x99, 0xcf, 0x20, 0x3e, 0x61, 0x0e, 0xf7, 0x73, 0xc6, 0xaa, 0x27, 0x86, 0xbb, 0xa0, 0x64, 0x98, 0xcf, 0x75, 0x26, 0xf5, 0xa2, 0x4a, 0x0e, 0x2f, 0x22, 0xf9, 0x09, 0xf8, 0x19, 0x0b, 0x13, 0x13, 0x04, 0x51, 0xb1, 0x5d, 0xd6, 0x77, 0x4b, 0xde, 0xa9, 0xd9, 0x29, 0x34, 0x2d, 0x92, 0x4b, 0xc7, 0xeb, 0xa1, 0xdf, 0x89, 0x91, 0x9c, 0x1b, 0x9a, 0xee, 0x8d, 0x09, 0x20, 0x36, 0x06, 0xd1, 0x0c, 0xeb, 0xff, 0x89, 0x90, 0x4c, 0xb7, 0xe7, 0x1a, 0x82, 0xd8, 0x97, 0x2d, 0x75, 0x53, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2244 = { .name = "ecdsa_brainpoolp512r1_sha512_2244", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2244_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2244_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2244_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 294 in file ecdsa_brainpoolP512r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2245 for ECDSA, tcId is 1 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2245_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2245_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x44, 0xb4, 0x23, 0x04, 0xe6, 0x93, 0x79, 0x66, 0x18, 0xd0, 0x90, 0xdb, 0xcb, 0x2a, 0x25, 0x51, 0xc3, 0xcb, 0x78, 0x53, 0x46, 0x11, 0xe6, 0x1f, 0xd9, 0xd1, 0xa5, 0xc0, 0x93, 0x8b, 0x5b, 0x8e, 0xc6, 0xed, 0x53, 0xd2, 0xd2, 0x89, 0x99, 0xea, 0xbb, 0xd8, 0xe7, 0x79, 0x2d, 0x16, 0x7f, 0xcf, 0x58, 0x24, 0x92, 0x40, 0x3a, 0x6a, 0x0f, 0x7c, 0xc9, 0x4c, 0x73, 0xa2, 0x8f, 0xb7, 0x6b, 0x71, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2245 = { .name = "ecdsa_brainpoolp512r1_sha512_2245", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2245_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2245_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2245_sig, .siglen = 128, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2246 for ECDSA, tcId is 2 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2246_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2246_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2246 = { .name = "ecdsa_brainpoolp512r1_sha512_2246", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2246_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2246_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2246_sig, .siglen = 128, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2247 for ECDSA, tcId is 3 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2247_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2247_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2247 = { .name = "ecdsa_brainpoolp512r1_sha512_2247", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2247_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2247_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2247_sig, .siglen = 128, .result = 0, .comment = "length of sequence contains leading 0, tcId is 3 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2248 for ECDSA, tcId is 66 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2248_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2248_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2248 = { .name = "ecdsa_brainpoolp512r1_sha512_2248", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2248_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2248_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2248_sig, .siglen = 128, .result = 0, .comment = "long form encoding of length of integer, tcId is 66 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2249 for ECDSA, tcId is 67 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2249_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2249_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2249 = { .name = "ecdsa_brainpoolp512r1_sha512_2249", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2249_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2249_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2249_sig, .siglen = 128, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2250 for ECDSA, tcId is 68 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2250_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2250_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2250 = { .name = "ecdsa_brainpoolp512r1_sha512_2250", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2250_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2250_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2250_sig, .siglen = 128, .result = 0, .comment = "length of integer contains leading 0, tcId is 68 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2251 for ECDSA, tcId is 69 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2251_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2251_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2251 = { .name = "ecdsa_brainpoolp512r1_sha512_2251", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2251_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2251_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2251_sig, .siglen = 128, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2252 for ECDSA, tcId is 91 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2252_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2252_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2252 = { .name = "ecdsa_brainpoolp512r1_sha512_2252", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2252_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2252_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2252_sig, .siglen = 130, .result = -1, .comment = "appending 0's to integer, tcId is 91 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2253 for ECDSA, tcId is 92 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2253_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2253_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2253 = { .name = "ecdsa_brainpoolp512r1_sha512_2253", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2253_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2253_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2253_sig, .siglen = 130, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2254 for ECDSA, tcId is 93 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2254_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2254_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2254 = { .name = "ecdsa_brainpoolp512r1_sha512_2254", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2254_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2254_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2254_sig, .siglen = 128, .result = 0, .comment = "prepending 0's to integer, tcId is 93 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2255 for ECDSA, tcId is 94 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2255_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2255_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2255 = { .name = "ecdsa_brainpoolp512r1_sha512_2255", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2255_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2255_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2255_sig, .siglen = 128, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2256 for ECDSA, tcId is 96 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2256_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2256_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x05, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2256 = { .name = "ecdsa_brainpoolp512r1_sha512_2256", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2256_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2256_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2256_sig, .siglen = 130, .result = -1, .comment = "appending null value to integer, tcId is 96 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2257 for ECDSA, tcId is 97 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2257_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2257_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2257 = { .name = "ecdsa_brainpoolp512r1_sha512_2257", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2257_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2257_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2257_sig, .siglen = 130, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2258 for ECDSA, tcId is 112 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2258_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2258_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2258 = { .name = "ecdsa_brainpoolp512r1_sha512_2258", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2258_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2258_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2258_sig, .siglen = 128, .result = -1, .comment = "dropping value of integer, tcId is 112 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2259 for ECDSA, tcId is 113 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2259_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2259_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2259 = { .name = "ecdsa_brainpoolp512r1_sha512_2259", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2259_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2259_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2259_sig, .siglen = 128, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2260 for ECDSA, tcId is 116 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2260_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2260_sig[] = { 0x09, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2260 = { .name = "ecdsa_brainpoolp512r1_sha512_2260", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2260_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2260_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2260_sig, .siglen = 128, .result = -1, .comment = "modify first byte of integer, tcId is 116 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2261 for ECDSA, tcId is 117 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2261_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2261_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x64, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2261 = { .name = "ecdsa_brainpoolp512r1_sha512_2261", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2261_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2261_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2261_sig, .siglen = 128, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2262 for ECDSA, tcId is 118 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2262_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2262_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0x47, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2262 = { .name = "ecdsa_brainpoolp512r1_sha512_2262", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2262_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2262_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2262_sig, .siglen = 128, .result = -1, .comment = "modify last byte of integer, tcId is 118 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2263 for ECDSA, tcId is 119 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2263_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2263_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2263 = { .name = "ecdsa_brainpoolp512r1_sha512_2263", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2263_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2263_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2263_sig, .siglen = 128, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2264 for ECDSA, tcId is 120 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2264_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2264_sig[] = { 0x00, 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2264 = { .name = "ecdsa_brainpoolp512r1_sha512_2264", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2264_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2264_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2264_sig, .siglen = 128, .result = -1, .comment = "truncated integer, tcId is 120 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2265 for ECDSA, tcId is 121 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2265_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2265_sig[] = { 0x00, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2265 = { .name = "ecdsa_brainpoolp512r1_sha512_2265", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2265_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2265_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2265_sig, .siglen = 128, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2266 for ECDSA, tcId is 122 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2266_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2266_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2266 = { .name = "ecdsa_brainpoolp512r1_sha512_2266", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2266_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2266_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2266_sig, .siglen = 128, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2267 for ECDSA, tcId is 123 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2267_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2267_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2267 = { .name = "ecdsa_brainpoolp512r1_sha512_2267", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2267_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2267_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2267_sig, .siglen = 128, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2268 for ECDSA, tcId is 124 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2268_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2268_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2268 = { .name = "ecdsa_brainpoolp512r1_sha512_2268", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2268_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2268_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2268_sig, .siglen = 128, .result = 0, .comment = "leading ff in integer, tcId is 124 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2269 for ECDSA, tcId is 125 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2269_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2269_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2269 = { .name = "ecdsa_brainpoolp512r1_sha512_2269", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2269_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2269_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2269_sig, .siglen = 128, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_brainpoolP512r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2270 for ECDSA, tcId is 128 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2270_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2270_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2270 = { .name = "ecdsa_brainpoolp512r1_sha512_2270", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2270_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2270_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2270_sig, .siglen = 128, .result = -1, .comment = "replacing integer with zero, tcId is 128 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2271 for ECDSA, tcId is 129 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2271_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2271_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2271 = { .name = "ecdsa_brainpoolp512r1_sha512_2271", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2271_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2271_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2271_sig, .siglen = 128, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2272 for ECDSA, tcId is 130 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2272_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2272_sig[] = { 0xb6, 0xaf, 0xf6, 0xed, 0x23, 0xb6, 0x30, 0x8e, 0x0a, 0xce, 0x84, 0x0e, 0x75, 0x57, 0xd0, 0x36, 0x65, 0x49, 0xda, 0x44, 0xc2, 0x31, 0x27, 0xfb, 0xe2, 0xd3, 0xf6, 0x77, 0x1c, 0x98, 0x73, 0x75, 0x22, 0x3c, 0x7a, 0xc4, 0x94, 0xef, 0x54, 0xfd, 0x71, 0xec, 0xe3, 0x54, 0x6d, 0xdb, 0xfd, 0xc3, 0xbd, 0xc4, 0xbd, 0x0a, 0x16, 0x59, 0x44, 0x64, 0x23, 0x02, 0x7f, 0x0e, 0x01, 0xaf, 0xfa, 0x30, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2272 = { .name = "ecdsa_brainpoolp512r1_sha512_2272", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2272_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2272_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2272_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 130 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2273 for ECDSA, tcId is 131 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2273_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2273_sig[] = { 0x60, 0xf4, 0xbb, 0x7b, 0x6b, 0xe2, 0xa7, 0x77, 0x8b, 0x24, 0xb6, 0xb2, 0x0d, 0xc3, 0xd8, 0x26, 0xce, 0xe8, 0xbe, 0xdd, 0x5a, 0x9d, 0x83, 0xde, 0x36, 0x0c, 0xbc, 0xe2, 0x3c, 0x32, 0x62, 0x94, 0x77, 0xbf, 0xc2, 0x41, 0xfb, 0x9d, 0x08, 0xca, 0xee, 0xe0, 0x21, 0x21, 0x6e, 0x83, 0xdd, 0x35, 0x82, 0x61, 0x16, 0x08, 0x05, 0x9d, 0x8e, 0xa8, 0xb7, 0xf3, 0x52, 0x08, 0xc8, 0x5d, 0xf9, 0x5e, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2273 = { .name = "ecdsa_brainpoolp512r1_sha512_2273", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2273_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2273_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2273_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2274 for ECDSA, tcId is 132 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2274_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2274_sig[] = { 0xf4, 0x2d, 0xa6, 0xcb, 0xb8, 0x33, 0x93, 0xfd, 0x35, 0x06, 0x62, 0x9f, 0xbe, 0x72, 0x2b, 0xd1, 0x65, 0xe6, 0xb3, 0x6e, 0xf1, 0x98, 0xaa, 0x12, 0xf3, 0x8f, 0xa6, 0x53, 0x53, 0x9a, 0x94, 0xfb, 0x33, 0x01, 0xe1, 0x7c, 0xb7, 0xb9, 0xd1, 0x1b, 0xcf, 0x99, 0x7d, 0xc5, 0x11, 0xd0, 0x12, 0x83, 0x5f, 0xed, 0x16, 0x76, 0xf2, 0x04, 0x96, 0x79, 0x92, 0x85, 0x17, 0x74, 0x9a, 0xf9, 0x06, 0x39, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2274 = { .name = "ecdsa_brainpoolp512r1_sha512_2274", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2274_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2274_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2274_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2275 for ECDSA, tcId is 133 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2275_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2275_sig[] = { 0x9f, 0x0b, 0x44, 0x84, 0x94, 0x1d, 0x58, 0x88, 0x74, 0xdb, 0x49, 0x4d, 0xf2, 0x3c, 0x27, 0xd9, 0x31, 0x17, 0x41, 0x22, 0xa5, 0x62, 0x7c, 0x21, 0xc9, 0xf3, 0x43, 0x1d, 0xc3, 0xcd, 0x9d, 0x6b, 0x88, 0x40, 0x3d, 0xbe, 0x04, 0x62, 0xf7, 0x35, 0x11, 0x1f, 0xde, 0xde, 0x91, 0x7c, 0x22, 0xca, 0x7d, 0x9e, 0xe9, 0xf7, 0xfa, 0x62, 0x71, 0x57, 0x48, 0x0c, 0xad, 0xf7, 0x37, 0xa2, 0x06, 0xa2, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2275 = { .name = "ecdsa_brainpoolp512r1_sha512_2275", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2275_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2275_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2275_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2276 for ECDSA, tcId is 134 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2276_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2276_sig[] = { 0x49, 0x50, 0x09, 0x12, 0xdc, 0x49, 0xcf, 0x71, 0xf5, 0x31, 0x7b, 0xf1, 0x8a, 0xa8, 0x2f, 0xc9, 0x9a, 0xb6, 0x25, 0xbb, 0x3d, 0xce, 0xd8, 0x04, 0x1d, 0x2c, 0x09, 0x88, 0xe3, 0x67, 0x8c, 0x8a, 0xdd, 0xc3, 0x85, 0x3b, 0x6b, 0x10, 0xab, 0x02, 0x8e, 0x13, 0x1c, 0xab, 0x92, 0x24, 0x02, 0x3c, 0x42, 0x3b, 0x42, 0xf5, 0xe9, 0xa6, 0xbb, 0x9b, 0xdc, 0xfd, 0x80, 0xf1, 0xfe, 0x50, 0x05, 0xd0, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2276 = { .name = "ecdsa_brainpoolp512r1_sha512_2276", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2276_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2276_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2276_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2277 for ECDSA, tcId is 135 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2277_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2277_sig[] = { 0x01, 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2277 = { .name = "ecdsa_brainpoolp512r1_sha512_2277", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2277_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2277_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2277_sig, .siglen = 129, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2278 for ECDSA, tcId is 136 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2278_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2278_sig[] = { 0xf4, 0x2d, 0xa6, 0xcb, 0xb8, 0x33, 0x93, 0xfd, 0x35, 0x06, 0x62, 0x9f, 0xbe, 0x72, 0x2b, 0xd1, 0x65, 0xe6, 0xb3, 0x6e, 0xf1, 0x98, 0xaa, 0x12, 0xf3, 0x8f, 0xa6, 0x53, 0x53, 0x9a, 0x94, 0xfb, 0x33, 0x01, 0xe1, 0x7c, 0xb7, 0xb9, 0xd1, 0x1b, 0xcf, 0x99, 0x7d, 0xc5, 0x11, 0xd0, 0x12, 0x83, 0x5f, 0xed, 0x16, 0x76, 0xf2, 0x04, 0x96, 0x79, 0x92, 0x85, 0x17, 0x74, 0x9a, 0xf9, 0x06, 0x39, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2278 = { .name = "ecdsa_brainpoolp512r1_sha512_2278", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2278_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2278_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2278_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2279 for ECDSA, tcId is 137 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2279_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2279_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x01, 0x11, 0x07, 0x18, 0x6c, 0xd1, 0x40, 0x0f, 0xb0, 0x66, 0xd9, 0x3c, 0x80, 0x9c, 0x69, 0xd2, 0xbd, 0xd2, 0x95, 0xa3, 0x14, 0x21, 0x81, 0xbd, 0xfd, 0xd2, 0xf5, 0x93, 0xd4, 0x4c, 0xda, 0xb5, 0x51, 0xe3, 0x8f, 0x64, 0xaf, 0xc6, 0xc8, 0xb2, 0x47, 0xc7, 0x33, 0xda, 0xb9, 0xd2, 0x41, 0xa0, 0xbe, 0xe3, 0x3f, 0x14, 0xc1, 0xd6, 0x51, 0xa6, 0x3e, 0xa1, 0xc2, 0xb9, 0x62, 0xa9, 0x9a, 0x95, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2279 = { .name = "ecdsa_brainpoolp512r1_sha512_2279", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2279_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2279_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2279_sig, .siglen = 129, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2280 for ECDSA, tcId is 138 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2280_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2280_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0xbb, 0x4b, 0xdc, 0xfb, 0x19, 0x6c, 0x86, 0x99, 0xe7, 0x2f, 0x6f, 0x24, 0x34, 0xd5, 0xda, 0xae, 0x3c, 0x34, 0x87, 0xac, 0xb9, 0xee, 0x19, 0xe0, 0x26, 0x2e, 0x5a, 0x3f, 0x6c, 0x74, 0xa4, 0x71, 0x39, 0x12, 0xac, 0x2d, 0x2d, 0x76, 0x66, 0x15, 0x44, 0x27, 0x18, 0x86, 0xd2, 0xe9, 0x80, 0x30, 0xa7, 0xdb, 0x6d, 0xbf, 0xc5, 0x95, 0xf0, 0x83, 0x36, 0xb3, 0x8c, 0x5d, 0x70, 0x48, 0x94, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2280 = { .name = "ecdsa_brainpoolp512r1_sha512_2280", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2280_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2280_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2280_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2281 for ECDSA, tcId is 139 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2281_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2281_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x99, 0xd6, 0x85, 0x4c, 0x0a, 0xa9, 0xb4, 0xda, 0xd8, 0xfb, 0xaa, 0x2d, 0x97, 0x60, 0x29, 0x49, 0xf8, 0x9a, 0xea, 0x9f, 0x92, 0x48, 0x14, 0x11, 0x03, 0x6e, 0x08, 0xf6, 0x23, 0x58, 0x53, 0x1e, 0x71, 0xae, 0xf7, 0x91, 0x85, 0xe0, 0x73, 0xd1, 0x7a, 0x52, 0x86, 0x5f, 0xad, 0x6a, 0x6f, 0x88, 0x3a, 0x72, 0xbe, 0xbf, 0x32, 0x0c, 0x34, 0x9f, 0x13, 0xc4, 0xdd, 0x1f, 0xf3, 0x0e, 0x6b, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2281 = { .name = "ecdsa_brainpoolp512r1_sha512_2281", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2281_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2281_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2281_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2282 for ECDSA, tcId is 140 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2282_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2282_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0xfe, 0xee, 0xf8, 0xe7, 0x93, 0x2e, 0xbf, 0xf0, 0x4f, 0x99, 0x26, 0xc3, 0x7f, 0x63, 0x96, 0x2d, 0x42, 0x2d, 0x6a, 0x5c, 0xeb, 0xde, 0x7e, 0x42, 0x02, 0x2d, 0x0a, 0x6c, 0x2b, 0xb3, 0x25, 0x4a, 0xae, 0x1c, 0x70, 0x9b, 0x50, 0x39, 0x37, 0x4d, 0xb8, 0x38, 0xcc, 0x25, 0x46, 0x2d, 0xbe, 0x5f, 0x41, 0x1c, 0xc0, 0xeb, 0x3e, 0x29, 0xae, 0x59, 0xc1, 0x5e, 0x3d, 0x46, 0x9d, 0x56, 0x65, 0x6a, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2282 = { .name = "ecdsa_brainpoolp512r1_sha512_2282", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2282_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2282_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2282_sig, .siglen = 129, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2283 for ECDSA, tcId is 141 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2283_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2283_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x01, 0x66, 0x29, 0x7a, 0xb3, 0xf5, 0x56, 0x4b, 0x25, 0x27, 0x04, 0x55, 0xd2, 0x68, 0x9f, 0xd6, 0xb6, 0x07, 0x65, 0x15, 0x60, 0x6d, 0xb7, 0xeb, 0xee, 0xfc, 0x91, 0xf7, 0x09, 0xdc, 0xa7, 0xac, 0xe1, 0x8e, 0x51, 0x08, 0x6e, 0x7a, 0x1f, 0x8c, 0x2e, 0x85, 0xad, 0x79, 0xa0, 0x52, 0x95, 0x90, 0x77, 0xc5, 0x8d, 0x41, 0x40, 0xcd, 0xf3, 0xcb, 0x60, 0xec, 0x3b, 0x22, 0xe0, 0x0c, 0xf1, 0x94, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2283 = { .name = "ecdsa_brainpoolp512r1_sha512_2283", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2283_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2283_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2283_sig, .siglen = 129, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2284 for ECDSA, tcId is 142 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2284_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2284_sig[] = { 0x0b, 0xd2, 0x59, 0x34, 0x47, 0xcc, 0x6c, 0x02, 0xca, 0xf9, 0x9d, 0x60, 0x41, 0x8d, 0xd4, 0x2e, 0x9a, 0x19, 0x4c, 0x91, 0x0e, 0x67, 0x55, 0xed, 0x0c, 0x70, 0x59, 0xac, 0xac, 0x65, 0x6b, 0x04, 0xcc, 0xfe, 0x1e, 0x83, 0x48, 0x46, 0x2e, 0xe4, 0x30, 0x66, 0x82, 0x3a, 0xee, 0x2f, 0xed, 0x7c, 0xa0, 0x12, 0xe9, 0x89, 0x0d, 0xfb, 0x69, 0x86, 0x6d, 0x7a, 0xe8, 0x8b, 0x65, 0x06, 0xf9, 0xc7, 0x99, 0xd6, 0x85, 0x4c, 0x0a, 0xa9, 0xb4, 0xda, 0xd8, 0xfb, 0xaa, 0x2d, 0x97, 0x60, 0x29, 0x49, 0xf8, 0x9a, 0xea, 0x9f, 0x92, 0x48, 0x14, 0x11, 0x03, 0x6e, 0x08, 0xf6, 0x23, 0x58, 0x53, 0x1e, 0x71, 0xae, 0xf7, 0x91, 0x85, 0xe0, 0x73, 0xd1, 0x7a, 0x52, 0x86, 0x5f, 0xad, 0x6a, 0x6f, 0x88, 0x3a, 0x72, 0xbe, 0xbf, 0x32, 0x0c, 0x34, 0x9f, 0x13, 0xc4, 0xdd, 0x1f, 0xf3, 0x0e, 0x6b, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2284 = { .name = "ecdsa_brainpoolp512r1_sha512_2284", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2284_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2284_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2284_sig, .siglen = 128, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2285 for ECDSA, tcId is 143 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2285_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2285_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2285 = { .name = "ecdsa_brainpoolp512r1_sha512_2285", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2285_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2285_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2285_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 143 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2286 for ECDSA, tcId is 144 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2286_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2286_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2286 = { .name = "ecdsa_brainpoolp512r1_sha512_2286", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2286_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2286_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2286_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2287 for ECDSA, tcId is 145 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2287_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2287_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2287 = { .name = "ecdsa_brainpoolp512r1_sha512_2287", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2287_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2287_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2287_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2288 for ECDSA, tcId is 146 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2288_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2288_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2288 = { .name = "ecdsa_brainpoolp512r1_sha512_2288", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2288_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2288_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2288_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2289 for ECDSA, tcId is 147 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2289_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2289_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2289 = { .name = "ecdsa_brainpoolp512r1_sha512_2289", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2289_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2289_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2289_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2290 for ECDSA, tcId is 148 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2290_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2290_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2290 = { .name = "ecdsa_brainpoolp512r1_sha512_2290", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2290_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2290_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2290_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2291 for ECDSA, tcId is 149 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2291_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2291_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2291 = { .name = "ecdsa_brainpoolp512r1_sha512_2291", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2291_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2291_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2291_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2292 for ECDSA, tcId is 150 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2292_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2292_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2292 = { .name = "ecdsa_brainpoolp512r1_sha512_2292", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2292_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2292_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2292_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2293 for ECDSA, tcId is 153 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2293_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2293_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2293 = { .name = "ecdsa_brainpoolp512r1_sha512_2293", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2293_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2293_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2293_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 153 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2294 for ECDSA, tcId is 154 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2294_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2294_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2294 = { .name = "ecdsa_brainpoolp512r1_sha512_2294", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2294_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2294_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2294_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2295 for ECDSA, tcId is 155 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2295_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2295_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2295 = { .name = "ecdsa_brainpoolp512r1_sha512_2295", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2295_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2295_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2295_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2296 for ECDSA, tcId is 156 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2296_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2296_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2296 = { .name = "ecdsa_brainpoolp512r1_sha512_2296", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2296_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2296_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2296_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2297 for ECDSA, tcId is 157 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2297_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2297_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2297 = { .name = "ecdsa_brainpoolp512r1_sha512_2297", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2297_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2297_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2297_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2298 for ECDSA, tcId is 158 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2298_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2298_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2298 = { .name = "ecdsa_brainpoolp512r1_sha512_2298", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2298_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2298_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2298_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2299 for ECDSA, tcId is 159 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2299_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2299_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2299 = { .name = "ecdsa_brainpoolp512r1_sha512_2299", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2299_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2299_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2299_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2300 for ECDSA, tcId is 160 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2300_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2300_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2300 = { .name = "ecdsa_brainpoolp512r1_sha512_2300", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2300_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2300_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2300_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2301 for ECDSA, tcId is 163 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2301_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2301_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2301 = { .name = "ecdsa_brainpoolp512r1_sha512_2301", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2301_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2301_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2301_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 163 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2302 for ECDSA, tcId is 164 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2302_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2302_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2302 = { .name = "ecdsa_brainpoolp512r1_sha512_2302", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2302_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2302_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2302_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2303 for ECDSA, tcId is 165 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2303_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2303_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2303 = { .name = "ecdsa_brainpoolp512r1_sha512_2303", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2303_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2303_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2303_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2304 for ECDSA, tcId is 166 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2304_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2304_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2304 = { .name = "ecdsa_brainpoolp512r1_sha512_2304", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2304_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2304_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2304_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2305 for ECDSA, tcId is 167 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2305_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2305_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2305 = { .name = "ecdsa_brainpoolp512r1_sha512_2305", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2305_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2305_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2305_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2306 for ECDSA, tcId is 168 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2306_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2306_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2306 = { .name = "ecdsa_brainpoolp512r1_sha512_2306", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2306_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2306_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2306_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2307 for ECDSA, tcId is 169 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2307_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2307_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2307 = { .name = "ecdsa_brainpoolp512r1_sha512_2307", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2307_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2307_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2307_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2308 for ECDSA, tcId is 170 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2308_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2308_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2308_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2308 = { .name = "ecdsa_brainpoolp512r1_sha512_2308", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2308_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2308_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2308_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2309 for ECDSA, tcId is 173 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2309_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2309_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2309_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2309 = { .name = "ecdsa_brainpoolp512r1_sha512_2309", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2309_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2309_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2309_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 173 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2310 for ECDSA, tcId is 174 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2310_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2310_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2310_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2310 = { .name = "ecdsa_brainpoolp512r1_sha512_2310", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2310_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2310_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2310_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2311 for ECDSA, tcId is 175 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2311_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2311_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2311 = { .name = "ecdsa_brainpoolp512r1_sha512_2311", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2311_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2311_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2311_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2312 for ECDSA, tcId is 176 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2312_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2312_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2312_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2312 = { .name = "ecdsa_brainpoolp512r1_sha512_2312", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2312_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2312_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2312_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2313 for ECDSA, tcId is 177 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2313_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2313_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2313_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2313 = { .name = "ecdsa_brainpoolp512r1_sha512_2313", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2313_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2313_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2313_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2314 for ECDSA, tcId is 178 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2314_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2314_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2314_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2314 = { .name = "ecdsa_brainpoolp512r1_sha512_2314", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2314_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2314_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2314_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2315 for ECDSA, tcId is 179 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2315_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2315_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2315_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2315 = { .name = "ecdsa_brainpoolp512r1_sha512_2315", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2315_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2315_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2315_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2316 for ECDSA, tcId is 180 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2316_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2316_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2316_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2316 = { .name = "ecdsa_brainpoolp512r1_sha512_2316", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2316_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2316_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2316_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2317 for ECDSA, tcId is 183 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2317_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2317_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2317_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2317 = { .name = "ecdsa_brainpoolp512r1_sha512_2317", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2317_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2317_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2317_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 183 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2318 for ECDSA, tcId is 184 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2318_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2318_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2318_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2318 = { .name = "ecdsa_brainpoolp512r1_sha512_2318", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2318_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2318_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2318_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2319 for ECDSA, tcId is 185 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2319_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2319_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2319_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2319 = { .name = "ecdsa_brainpoolp512r1_sha512_2319", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2319_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2319_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2319_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2320 for ECDSA, tcId is 186 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2320_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2320_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2320_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2320 = { .name = "ecdsa_brainpoolp512r1_sha512_2320", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2320_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2320_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2320_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2321 for ECDSA, tcId is 187 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2321_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2321_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2321_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2321 = { .name = "ecdsa_brainpoolp512r1_sha512_2321", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2321_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2321_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2321_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2322 for ECDSA, tcId is 188 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2322_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2322_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2322 = { .name = "ecdsa_brainpoolp512r1_sha512_2322", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2322_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2322_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2322_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2323 for ECDSA, tcId is 189 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2323_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2323_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2323_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2323 = { .name = "ecdsa_brainpoolp512r1_sha512_2323", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2323_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2323_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2323_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2324 for ECDSA, tcId is 190 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2324_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2324_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2324_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2324 = { .name = "ecdsa_brainpoolp512r1_sha512_2324", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2324_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2324_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2324_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2325 for ECDSA, tcId is 193 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2325_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2325_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2325_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2325 = { .name = "ecdsa_brainpoolp512r1_sha512_2325", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2325_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2325_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2325_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 193 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2326 for ECDSA, tcId is 194 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2326_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2326_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2326_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2326 = { .name = "ecdsa_brainpoolp512r1_sha512_2326", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2326_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2326_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2326_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2327 for ECDSA, tcId is 195 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2327_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2327_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2327 = { .name = "ecdsa_brainpoolp512r1_sha512_2327", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2327_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2327_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2327_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2328 for ECDSA, tcId is 196 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2328_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2328_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2328 = { .name = "ecdsa_brainpoolp512r1_sha512_2328", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2328_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2328_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2328_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2329 for ECDSA, tcId is 197 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2329_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2329_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2329 = { .name = "ecdsa_brainpoolp512r1_sha512_2329", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2329_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2329_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2329_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2330 for ECDSA, tcId is 198 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2330_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2330_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2330 = { .name = "ecdsa_brainpoolp512r1_sha512_2330", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2330_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2330_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2330_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2331 for ECDSA, tcId is 199 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2331_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2331_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2331 = { .name = "ecdsa_brainpoolp512r1_sha512_2331", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2331_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2331_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2331_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2332 for ECDSA, tcId is 200 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2332_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2332_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2332 = { .name = "ecdsa_brainpoolp512r1_sha512_2332", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2332_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2332_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2332_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2333 for ECDSA, tcId is 203 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2333_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2333_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2333 = { .name = "ecdsa_brainpoolp512r1_sha512_2333", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2333_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2333_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2333_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 203 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2334 for ECDSA, tcId is 204 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2334_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2334_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2334 = { .name = "ecdsa_brainpoolp512r1_sha512_2334", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2334_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2334_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2334_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2335 for ECDSA, tcId is 205 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2335_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2335_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2335 = { .name = "ecdsa_brainpoolp512r1_sha512_2335", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2335_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2335_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2335_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2336 for ECDSA, tcId is 206 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2336_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2336_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2336 = { .name = "ecdsa_brainpoolp512r1_sha512_2336", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2336_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2336_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2336_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2337 for ECDSA, tcId is 207 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2337_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2337_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2337 = { .name = "ecdsa_brainpoolp512r1_sha512_2337", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2337_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2337_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2337_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2338 for ECDSA, tcId is 208 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2338_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2338_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2338 = { .name = "ecdsa_brainpoolp512r1_sha512_2338", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2338_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2338_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2338_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2339 for ECDSA, tcId is 209 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2339_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2339_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2339 = { .name = "ecdsa_brainpoolp512r1_sha512_2339", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2339_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2339_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2339_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2340 for ECDSA, tcId is 210 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2340_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2340_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2340 = { .name = "ecdsa_brainpoolp512r1_sha512_2340", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2340_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2340_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2340_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2341 for ECDSA, tcId is 213 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2341_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2341_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2341 = { .name = "ecdsa_brainpoolp512r1_sha512_2341", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2341_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2341_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2341_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 213 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2342 for ECDSA, tcId is 214 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2342_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2342_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2342 = { .name = "ecdsa_brainpoolp512r1_sha512_2342", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2342_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2342_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2342_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2343 for ECDSA, tcId is 215 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2343_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2343_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2343 = { .name = "ecdsa_brainpoolp512r1_sha512_2343", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2343_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2343_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2343_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2344 for ECDSA, tcId is 216 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2344_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2344_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2344 = { .name = "ecdsa_brainpoolp512r1_sha512_2344", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2344_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2344_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2344_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2345 for ECDSA, tcId is 217 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2345_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2345_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2345 = { .name = "ecdsa_brainpoolp512r1_sha512_2345", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2345_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2345_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2345_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2346 for ECDSA, tcId is 218 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2346_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2346_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2346 = { .name = "ecdsa_brainpoolp512r1_sha512_2346", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2346_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2346_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2346_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2347 for ECDSA, tcId is 219 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2347_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2347_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2347 = { .name = "ecdsa_brainpoolp512r1_sha512_2347", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2347_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2347_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2347_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2348 for ECDSA, tcId is 220 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2348_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2348_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2348 = { .name = "ecdsa_brainpoolp512r1_sha512_2348", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2348_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2348_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2348_sig, .siglen = 128, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2349 for ECDSA, tcId is 229 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2349_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2349_msg[] = { 0x31, 0x31, 0x31, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2349_sig[] = { 0x7d, 0xa1, 0x1e, 0x5b, 0x4b, 0xb7, 0x93, 0x21, 0x35, 0xcd, 0x91, 0xac, 0xce, 0xf8, 0x89, 0x2c, 0x42, 0x86, 0x65, 0x4a, 0x7b, 0xe7, 0xc9, 0xd3, 0x84, 0xb6, 0x00, 0xd9, 0x79, 0x00, 0xee, 0x12, 0xa2, 0x3f, 0xf1, 0xf9, 0xae, 0x9a, 0x4f, 0xe7, 0x4c, 0xca, 0x18, 0x5d, 0x0d, 0xc9, 0xf5, 0x9d, 0xc2, 0x4b, 0xe0, 0x3d, 0x02, 0x23, 0xd8, 0xfe, 0xb5, 0x5b, 0x6d, 0xde, 0x17, 0x77, 0x47, 0x5f, 0x06, 0x86, 0xbc, 0x31, 0x3a, 0xa5, 0xc1, 0x92, 0x3a, 0xb0, 0x54, 0x33, 0x31, 0x39, 0x81, 0x90, 0xca, 0x5f, 0x22, 0xa3, 0xa9, 0x7e, 0x96, 0x3a, 0x13, 0xce, 0xdf, 0x68, 0x8d, 0xa1, 0xdf, 0xe4, 0xa3, 0x48, 0x94, 0x54, 0x97, 0xb2, 0x1c, 0x01, 0xc8, 0xa1, 0x7c, 0x23, 0x25, 0x2b, 0x3e, 0x8e, 0xac, 0x1f, 0x9a, 0x92, 0xd6, 0x32, 0x0e, 0xaa, 0x32, 0x4b, 0x44, 0x80, 0x7c, 0x32, 0x61, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2349 = { .name = "ecdsa_brainpoolp512r1_sha512_2349", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2349_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2349_msg, .msglen = 4, .sig = ecdsa_brainpoolp512r1_sha512_2349_sig, .siglen = 128, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 229 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2350 for ECDSA, tcId is 230 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2350_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2350_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2350_sig[] = { 0x6d, 0x87, 0xbe, 0x05, 0x95, 0x8c, 0xa5, 0xc7, 0x0c, 0x5d, 0x29, 0x62, 0x91, 0x60, 0x50, 0x21, 0x40, 0x2d, 0xeb, 0xa1, 0x77, 0x2f, 0x31, 0xbb, 0xba, 0x09, 0xdc, 0x65, 0xa8, 0x37, 0xb0, 0x9a, 0x78, 0xd3, 0x32, 0xb6, 0x16, 0x2a, 0x32, 0x01, 0xca, 0x1a, 0x30, 0xd4, 0x16, 0x2d, 0x8f, 0x18, 0x6b, 0x2b, 0xff, 0xca, 0x53, 0x02, 0x33, 0x3a, 0xca, 0x14, 0x89, 0x4d, 0x5f, 0x09, 0x3f, 0xe7, 0x10, 0xb8, 0xb3, 0xc9, 0x0b, 0x46, 0x09, 0xcc, 0xbd, 0xdd, 0xed, 0x27, 0x5d, 0x42, 0x49, 0x85, 0x7d, 0x88, 0x27, 0x49, 0xe4, 0xb8, 0x36, 0xd0, 0x17, 0xdb, 0xaa, 0xe0, 0x5e, 0x3a, 0x19, 0xcf, 0x78, 0x10, 0x63, 0x23, 0x29, 0xa0, 0x25, 0x80, 0xda, 0xe4, 0x41, 0x36, 0xca, 0xdc, 0xf0, 0x6c, 0xa5, 0x7d, 0xfe, 0x56, 0x0e, 0x1c, 0x11, 0x22, 0xe2, 0xec, 0x00, 0xff, 0x04, 0xd7, 0x88, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2350 = { .name = "ecdsa_brainpoolp512r1_sha512_2350", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2350_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2350_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2350_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 230 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2351 for ECDSA, tcId is 231 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2351_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2351_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2351_sig[] = { 0x23, 0xe9, 0xba, 0xc3, 0xf1, 0x4d, 0x56, 0x67, 0x9b, 0xda, 0x0b, 0xb2, 0xf4, 0xf1, 0x9e, 0xec, 0xaf, 0x6d, 0xd5, 0x03, 0x64, 0x9c, 0x81, 0x14, 0x92, 0x27, 0x88, 0x0f, 0x14, 0x37, 0x6d, 0x02, 0x24, 0x19, 0x3d, 0x2b, 0x1b, 0xda, 0x4b, 0x08, 0xf8, 0x7e, 0x46, 0x68, 0x7d, 0xd9, 0x14, 0x12, 0x78, 0xa3, 0x99, 0xf0, 0xa3, 0xcd, 0x0d, 0x00, 0x2f, 0x23, 0x6d, 0x0e, 0x7d, 0x73, 0x82, 0xb7, 0x9c, 0x24, 0xfb, 0x21, 0x28, 0xd6, 0x2e, 0x5d, 0xdf, 0x59, 0xbb, 0x86, 0xb3, 0xa6, 0xb7, 0x87, 0xb1, 0x0c, 0xc7, 0x58, 0x65, 0xe5, 0xae, 0xab, 0x41, 0xa8, 0x4f, 0x87, 0x8a, 0xb3, 0xa9, 0x47, 0xa2, 0xf6, 0xb4, 0xb0, 0x87, 0x1a, 0xf4, 0x94, 0xc1, 0x30, 0xf5, 0x8b, 0xb3, 0x95, 0x7c, 0xe0, 0x3d, 0x61, 0x37, 0x3f, 0x3f, 0xb5, 0xcb, 0xe9, 0x7e, 0xbe, 0xdc, 0x1b, 0x3a, 0xca, 0x17, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2351 = { .name = "ecdsa_brainpoolp512r1_sha512_2351", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2351_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2351_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2351_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2352 for ECDSA, tcId is 232 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2352_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2352_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2352_sig[] = { 0x2d, 0x07, 0xd8, 0xbb, 0x62, 0x77, 0xb7, 0x8f, 0xa4, 0x48, 0xd5, 0x2e, 0x3e, 0x1d, 0x90, 0x1c, 0xcb, 0xdd, 0x68, 0x29, 0x30, 0xfc, 0xa9, 0xd8, 0x69, 0x59, 0xa6, 0x3b, 0x5a, 0x79, 0x2a, 0x8a, 0xa8, 0x2f, 0xf9, 0xbd, 0x7d, 0xa3, 0xe4, 0x05, 0x7f, 0x40, 0x2a, 0x76, 0xe8, 0x28, 0x36, 0xaa, 0x3d, 0xa3, 0x4b, 0x6f, 0xf6, 0xbb, 0x8b, 0x21, 0x89, 0xac, 0x24, 0x2b, 0xae, 0xa2, 0xb0, 0xee, 0x58, 0xeb, 0xef, 0x50, 0xea, 0x30, 0xd1, 0x5a, 0xc2, 0x6f, 0xa0, 0x3e, 0x2b, 0x06, 0x5c, 0x7b, 0xa5, 0x0f, 0x33, 0x1a, 0x5c, 0xf2, 0x40, 0x17, 0x5f, 0xf3, 0xa6, 0xa1, 0xd8, 0xdb, 0x40, 0x0e, 0x15, 0x97, 0xce, 0x67, 0x5e, 0xb3, 0x2f, 0x26, 0x9b, 0x43, 0x67, 0x01, 0x1a, 0xcf, 0x32, 0x76, 0x58, 0x06, 0x02, 0xee, 0xd7, 0xc2, 0x93, 0x84, 0x39, 0x77, 0x2e, 0x1b, 0xe1, 0xb9, 0x38, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2352 = { .name = "ecdsa_brainpoolp512r1_sha512_2352", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2352_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2352_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2352_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2353 for ECDSA, tcId is 233 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2353_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2353_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2353_sig[] = { 0x0d, 0x67, 0x43, 0xa7, 0xbc, 0x90, 0x4a, 0x21, 0xd7, 0x31, 0x20, 0x5f, 0xca, 0xa7, 0xfc, 0xd0, 0x01, 0x8e, 0xad, 0x44, 0x6e, 0xcc, 0x9b, 0xaf, 0xc4, 0x53, 0x2b, 0xd0, 0xce, 0x6b, 0xfa, 0x69, 0x60, 0x15, 0x9f, 0x59, 0xb5, 0xeb, 0x37, 0xc7, 0x50, 0xd4, 0x23, 0xc4, 0xfb, 0xcf, 0xb2, 0x0a, 0x71, 0x8e, 0x56, 0x55, 0xd5, 0x17, 0xb7, 0x4f, 0xff, 0x89, 0x86, 0xc9, 0x63, 0x8f, 0x4f, 0x29, 0x03, 0x99, 0xd7, 0x94, 0x1f, 0xe5, 0xf3, 0xf3, 0x08, 0xaf, 0xb8, 0xa8, 0xa4, 0xff, 0x8f, 0x2b, 0xec, 0x1b, 0xfe, 0x6b, 0x91, 0x0c, 0x83, 0x99, 0xd8, 0x31, 0xeb, 0x62, 0x21, 0x68, 0x48, 0x75, 0xf6, 0x7f, 0xe6, 0xa2, 0x57, 0x6c, 0x86, 0xfe, 0xad, 0xf3, 0xcd, 0x2a, 0xf1, 0x47, 0x29, 0x78, 0x30, 0x11, 0x36, 0x11, 0xfc, 0xff, 0xfa, 0xcd, 0x8a, 0x8c, 0x8c, 0x52, 0xcf, 0x95, 0x7f, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2353 = { .name = "ecdsa_brainpoolp512r1_sha512_2353", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2353_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2353_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2353_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2354 for ECDSA, tcId is 234 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2354_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2354_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2354_sig[] = { 0xaa, 0xbc, 0x4b, 0xdc, 0xc4, 0x4c, 0xea, 0xcf, 0xe0, 0x3a, 0x96, 0xa7, 0x93, 0x9b, 0xf0, 0x8c, 0x40, 0x7d, 0x30, 0x0d, 0xe4, 0x46, 0x51, 0x4f, 0xc9, 0x64, 0xde, 0x4d, 0xab, 0xf2, 0x9e, 0xbd, 0xa0, 0x60, 0x8c, 0x17, 0x09, 0xc7, 0x22, 0x44, 0xf8, 0xd8, 0x88, 0xcb, 0x0e, 0x55, 0x6d, 0x75, 0x82, 0x87, 0x56, 0xd1, 0x1c, 0x11, 0xbe, 0x77, 0x87, 0x60, 0x3b, 0xff, 0xc6, 0x71, 0x8a, 0xc5, 0x81, 0xeb, 0x84, 0xc8, 0x74, 0x3a, 0xd6, 0xab, 0x78, 0xa0, 0x21, 0xa6, 0xf5, 0x5b, 0x3a, 0xe0, 0x84, 0x5f, 0x18, 0x30, 0x7e, 0xa1, 0x8e, 0x77, 0x1e, 0x3c, 0x4e, 0x11, 0xb3, 0x12, 0xeb, 0x8e, 0x53, 0x00, 0x02, 0xc9, 0x5c, 0xdb, 0x51, 0x78, 0x55, 0xb1, 0x7e, 0xa9, 0x72, 0x6e, 0xc9, 0x60, 0x2f, 0x34, 0x7e, 0x78, 0x9f, 0xab, 0x42, 0x05, 0x5e, 0x68, 0x8a, 0x55, 0x8e, 0x3f, 0xc9, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2354 = { .name = "ecdsa_brainpoolp512r1_sha512_2354", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2354_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2354_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2354_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2355 for ECDSA, tcId is 235 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2355_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2355_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2355_sig[] = { 0x4e, 0x7f, 0x75, 0x68, 0x1d, 0xd7, 0xcb, 0x2e, 0xea, 0x02, 0x2e, 0x5b, 0x86, 0x32, 0x9b, 0x25, 0x30, 0x7c, 0x21, 0xb8, 0x28, 0xc7, 0x41, 0x69, 0x16, 0xcf, 0x1f, 0x59, 0x38, 0x07, 0x15, 0x19, 0xcb, 0x7d, 0xa6, 0x68, 0xec, 0x6b, 0xc2, 0x19, 0xe7, 0x2d, 0x35, 0x87, 0x32, 0xf1, 0xc7, 0x7a, 0xbf, 0xcc, 0x61, 0x06, 0x5a, 0xa3, 0x23, 0x94, 0x19, 0x08, 0x9f, 0xab, 0xef, 0xe3, 0x96, 0xdf, 0x4f, 0x9e, 0xc1, 0x96, 0xa7, 0x1c, 0x5c, 0x8e, 0xd8, 0x8d, 0x7f, 0xe1, 0xd0, 0x03, 0x8f, 0x37, 0x2a, 0xc6, 0x0b, 0xfa, 0x18, 0x0c, 0xee, 0x24, 0x98, 0xaa, 0x9c, 0x02, 0x48, 0x16, 0x6f, 0x17, 0x38, 0x23, 0x68, 0xfa, 0x2b, 0x3b, 0x8c, 0xe2, 0x9d, 0x50, 0xd7, 0xa2, 0x1e, 0x91, 0xa8, 0x3c, 0xa8, 0x8d, 0xb5, 0xd4, 0xef, 0xd0, 0x73, 0xf8, 0x21, 0xa8, 0xc5, 0xaa, 0x4d, 0x26, 0x67, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2355 = { .name = "ecdsa_brainpoolp512r1_sha512_2355", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2355_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2355_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2355_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2356 for ECDSA, tcId is 236 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2356_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2356_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2356_sig[] = { 0xa0, 0xe1, 0xc2, 0xbb, 0x33, 0x20, 0x02, 0x54, 0xbe, 0xab, 0x5e, 0x73, 0x5c, 0x1a, 0x2c, 0x59, 0x0f, 0xc1, 0x18, 0x54, 0x03, 0x01, 0xad, 0xd7, 0xe5, 0x49, 0x17, 0x01, 0xd2, 0x2c, 0x71, 0x29, 0x3a, 0xdf, 0xed, 0xdf, 0x43, 0x08, 0x94, 0x0f, 0xd8, 0xa0, 0x66, 0x22, 0x2c, 0xcf, 0xb3, 0x80, 0x2e, 0xaf, 0xff, 0xe0, 0x3b, 0x21, 0x56, 0xc8, 0xe7, 0x9c, 0x32, 0x60, 0xd1, 0x80, 0xb3, 0xb8, 0x9d, 0x84, 0x82, 0x12, 0x7f, 0x22, 0xec, 0xa1, 0x0b, 0x27, 0x92, 0x74, 0x7d, 0x60, 0x16, 0xba, 0x71, 0x99, 0x65, 0x60, 0x3e, 0xe8, 0xe7, 0x1f, 0x2a, 0x39, 0x50, 0x0a, 0x2f, 0x21, 0x1d, 0xcb, 0x2d, 0xa5, 0x82, 0xd5, 0xdb, 0xd0, 0xc6, 0xa4, 0x07, 0x15, 0x5e, 0x1b, 0x01, 0x08, 0x5b, 0x75, 0x9c, 0x80, 0x97, 0x1c, 0xf1, 0x85, 0xfd, 0x0a, 0x26, 0xe3, 0x88, 0x92, 0x63, 0xa7, 0xf2, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2356 = { .name = "ecdsa_brainpoolp512r1_sha512_2356", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2356_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2356_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2356_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2357 for ECDSA, tcId is 237 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2357_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2357_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2357_sig[] = { 0x2e, 0xe9, 0xca, 0x54, 0xe2, 0xdf, 0x79, 0xd6, 0xe0, 0x6f, 0x13, 0x01, 0x89, 0xfa, 0xca, 0x80, 0x1c, 0xcb, 0x08, 0x1c, 0x43, 0x47, 0x2d, 0x4f, 0x88, 0x8a, 0xed, 0x89, 0x2d, 0xf8, 0x78, 0xd1, 0x2c, 0xa1, 0x4c, 0x8e, 0x80, 0x0f, 0xb7, 0xa7, 0x5c, 0x22, 0x90, 0xa0, 0x28, 0xfb, 0x7d, 0x12, 0x93, 0x64, 0x99, 0xc3, 0x01, 0x0b, 0xc5, 0xc7, 0xc0, 0x7b, 0x2f, 0x73, 0x89, 0x24, 0x76, 0x6e, 0x55, 0x8c, 0x02, 0xbc, 0xd1, 0x32, 0x90, 0xff, 0x34, 0xe0, 0x39, 0xa1, 0x99, 0x38, 0x43, 0x85, 0xa4, 0x4f, 0x97, 0xef, 0x9a, 0x7d, 0xcd, 0xaa, 0x0f, 0xac, 0xa6, 0x63, 0x57, 0xec, 0x7b, 0x9c, 0x1b, 0x40, 0xea, 0x7a, 0x35, 0x29, 0xf4, 0xbb, 0x79, 0x6f, 0xbd, 0xda, 0xdf, 0xbe, 0x64, 0xd3, 0xe6, 0xab, 0xfc, 0x54, 0xc2, 0x94, 0x6f, 0x5b, 0x1f, 0x54, 0x8f, 0xa0, 0x87, 0x7f, 0x3a, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2357 = { .name = "ecdsa_brainpoolp512r1_sha512_2357", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2357_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2357_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2357_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2358 for ECDSA, tcId is 238 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2358_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2358_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2358_sig[] = { 0x54, 0xf4, 0x5f, 0x0b, 0xc3, 0x0a, 0x88, 0x9a, 0x4f, 0xae, 0x7e, 0xaa, 0x04, 0x7e, 0xa0, 0x2c, 0xa0, 0xb9, 0xe3, 0x87, 0xd6, 0x36, 0x78, 0x01, 0xf8, 0xbc, 0xce, 0xc2, 0xec, 0x7c, 0x0f, 0xf8, 0x9d, 0x66, 0x03, 0xd7, 0x0f, 0x7c, 0x8e, 0x05, 0x5e, 0x59, 0xfa, 0x69, 0x90, 0x5b, 0x18, 0x5f, 0xaa, 0xb4, 0x37, 0x77, 0x9d, 0x62, 0xc4, 0xd2, 0xee, 0xf4, 0xb1, 0x2a, 0x90, 0xc2, 0x0a, 0xb4, 0x43, 0xc2, 0xca, 0x32, 0x05, 0xa7, 0xf8, 0xb6, 0x1f, 0x64, 0x66, 0x1d, 0x0f, 0xe7, 0x46, 0xbd, 0x23, 0xfd, 0x0f, 0x26, 0x49, 0x99, 0x31, 0x0a, 0x56, 0xb3, 0x98, 0x04, 0x8a, 0xd4, 0x6f, 0xba, 0xb8, 0xa5, 0xe3, 0xb3, 0xe2, 0xe1, 0x6c, 0x4b, 0x2f, 0x03, 0xf1, 0x01, 0x57, 0x3e, 0x2f, 0x65, 0x93, 0xb6, 0x4a, 0xcc, 0xf3, 0x19, 0xdc, 0x9e, 0x2e, 0x2e, 0x84, 0x7b, 0x06, 0xfc, 0xdd, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2358 = { .name = "ecdsa_brainpoolp512r1_sha512_2358", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2358_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2358_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2358_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2359 for ECDSA, tcId is 239 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2359_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2359_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2359_sig[] = { 0x8a, 0x03, 0x0f, 0xd4, 0xba, 0x48, 0xd3, 0xf5, 0x99, 0x80, 0x10, 0xc7, 0x64, 0xe8, 0x69, 0x21, 0x1a, 0x4c, 0xe3, 0x31, 0x22, 0xa7, 0xfd, 0xc7, 0xb8, 0xdf, 0x26, 0x76, 0x3b, 0xe1, 0x80, 0xf2, 0x5e, 0x06, 0x8d, 0xb6, 0xc9, 0x28, 0x20, 0xbe, 0x64, 0x1b, 0x8a, 0xfd, 0x17, 0x8a, 0x80, 0x33, 0x60, 0xbd, 0x19, 0x7a, 0x86, 0xcc, 0x8e, 0xf7, 0x6c, 0xa0, 0x08, 0x44, 0x3e, 0xc4, 0xad, 0x63, 0x80, 0x37, 0xc3, 0xa2, 0xc1, 0xca, 0xc2, 0x6e, 0x6f, 0xf8, 0x98, 0x94, 0xa0, 0x7b, 0x3e, 0x25, 0xf5, 0x13, 0x68, 0x0f, 0xc2, 0xe4, 0x6e, 0xd6, 0x93, 0xdf, 0x96, 0xd0, 0xee, 0x85, 0xb9, 0x40, 0x0c, 0xd6, 0x2d, 0x72, 0x3f, 0xc9, 0x8a, 0xdc, 0xa2, 0xa6, 0x79, 0xfa, 0xfe, 0xc9, 0xdb, 0x5f, 0xe0, 0x78, 0xf2, 0x5f, 0x98, 0x04, 0xe0, 0xd0, 0xce, 0x16, 0xd1, 0xa4, 0x32, 0xd1, 0x94, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2359 = { .name = "ecdsa_brainpoolp512r1_sha512_2359", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2359_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2359_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2359_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2360 for ECDSA, tcId is 240 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2360_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2360_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2360_sig[] = { 0x3b, 0xbd, 0x19, 0x97, 0x80, 0x2b, 0x5f, 0xc5, 0xd4, 0xf2, 0xb8, 0x7b, 0x6c, 0xdd, 0xb9, 0x75, 0x29, 0xca, 0xc1, 0xba, 0x29, 0xdd, 0x29, 0xcf, 0xff, 0x73, 0x15, 0xb7, 0x87, 0x11, 0x6d, 0x9d, 0x3d, 0xab, 0xdd, 0xd1, 0xb4, 0x41, 0x49, 0x95, 0xc2, 0x26, 0x99, 0x06, 0xa7, 0xbc, 0x19, 0x59, 0xa0, 0x6d, 0xe5, 0xbc, 0xd4, 0xd5, 0x63, 0x04, 0x2e, 0x17, 0x41, 0xaf, 0x00, 0x9c, 0xba, 0x9f, 0x51, 0xb3, 0xd4, 0x35, 0xef, 0xe7, 0x95, 0x73, 0xac, 0xa8, 0xef, 0xd3, 0xcc, 0x1c, 0x8a, 0x22, 0x7e, 0xcd, 0x94, 0xeb, 0x40, 0x79, 0x67, 0x54, 0x59, 0xb6, 0xf4, 0xf1, 0x68, 0xb6, 0x11, 0x1c, 0x07, 0xc6, 0x33, 0xe6, 0x4e, 0x60, 0xd4, 0x3a, 0x5f, 0x3b, 0x0d, 0x0b, 0x2f, 0x43, 0x71, 0xf6, 0x8c, 0x7c, 0xde, 0xb6, 0xbd, 0x8f, 0xbb, 0xf3, 0xbe, 0xd2, 0xef, 0xfa, 0x25, 0x42, 0xb0, 0xae, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2360 = { .name = "ecdsa_brainpoolp512r1_sha512_2360", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2360_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2360_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2360_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2361 for ECDSA, tcId is 241 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2361_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2361_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2361_sig[] = { 0x82, 0x93, 0xa5, 0x45, 0x97, 0x44, 0x30, 0xb3, 0xd7, 0xf7, 0xe3, 0x14, 0xab, 0x0e, 0xf4, 0x87, 0x31, 0x71, 0x5a, 0x5f, 0x79, 0xc2, 0xf3, 0x4b, 0x94, 0xf1, 0x20, 0xfc, 0x01, 0x70, 0x39, 0x71, 0x30, 0x29, 0x88, 0x03, 0x77, 0x8b, 0x53, 0x2f, 0xf1, 0x00, 0x20, 0xdb, 0x06, 0x0d, 0x19, 0xd9, 0x31, 0xd7, 0x48, 0x56, 0xfb, 0xf3, 0x30, 0xa7, 0x5b, 0x28, 0x41, 0x6d, 0x45, 0xaf, 0x54, 0xb6, 0x2b, 0x8d, 0xb4, 0x83, 0x08, 0xc0, 0xb1, 0xf6, 0x21, 0xe2, 0x2c, 0x7d, 0xc1, 0xe7, 0x62, 0xb0, 0x85, 0x08, 0xbe, 0x1a, 0x8e, 0xb4, 0x35, 0x5f, 0x6f, 0x9c, 0xcb, 0x84, 0x20, 0x85, 0xa1, 0xf6, 0x64, 0xd7, 0xb6, 0x8b, 0x1a, 0x24, 0xbd, 0x88, 0xf1, 0x7b, 0x16, 0xd1, 0x41, 0xb0, 0xc1, 0xc3, 0xa5, 0xd7, 0xf1, 0xa7, 0xef, 0x4d, 0x53, 0x3b, 0x90, 0x0d, 0x18, 0x53, 0xbc, 0x5a, 0x6f, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2361 = { .name = "ecdsa_brainpoolp512r1_sha512_2361", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2361_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2361_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2361_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2362 for ECDSA, tcId is 242 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2362_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2362_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2362_sig[] = { 0x52, 0x59, 0x40, 0xc2, 0x17, 0x98, 0x6b, 0x7e, 0xf0, 0xe1, 0x8c, 0x81, 0xfe, 0x10, 0x06, 0x3d, 0x65, 0xdb, 0xe1, 0x80, 0x9d, 0x72, 0x6c, 0x8a, 0x1a, 0xa0, 0xb6, 0x17, 0xf3, 0x34, 0x89, 0x1e, 0x94, 0xc5, 0xdf, 0x14, 0xf7, 0xb9, 0x44, 0xa1, 0x63, 0x99, 0x50, 0xa4, 0x3e, 0x98, 0xeb, 0x6f, 0x1c, 0x34, 0x91, 0x21, 0xd1, 0x07, 0xf9, 0x1c, 0xa7, 0x14, 0x2b, 0x7f, 0xf6, 0x2e, 0xc7, 0x76, 0x6b, 0x35, 0x67, 0xe4, 0x96, 0x5f, 0x2d, 0x76, 0x6f, 0xd0, 0x72, 0x80, 0xf3, 0x1f, 0x8c, 0x77, 0x92, 0x12, 0x65, 0xf0, 0x0e, 0x71, 0x9c, 0x7c, 0x00, 0x55, 0xe5, 0x1c, 0x85, 0xe1, 0xf3, 0xd4, 0x6a, 0xc9, 0x39, 0x67, 0x81, 0x61, 0x30, 0xa6, 0x53, 0x2c, 0x90, 0x25, 0x43, 0xa5, 0x30, 0xe2, 0x7b, 0x41, 0x97, 0xcf, 0xd1, 0x47, 0x8c, 0x90, 0xce, 0x1f, 0xc7, 0x41, 0x24, 0x63, 0x6b, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2362 = { .name = "ecdsa_brainpoolp512r1_sha512_2362", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2362_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2362_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2362_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2363 for ECDSA, tcId is 243 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2363_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2363_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2363_sig[] = { 0x20, 0x5c, 0xae, 0xf7, 0x8b, 0x7f, 0x03, 0x00, 0x26, 0x61, 0x08, 0xdd, 0xf4, 0xe2, 0x8b, 0x6e, 0xc1, 0xa2, 0x19, 0x8b, 0x85, 0x7f, 0x92, 0xb2, 0xdf, 0x58, 0xa6, 0xd9, 0x68, 0xd3, 0xdb, 0x3e, 0xf6, 0x46, 0x9f, 0x7a, 0xfc, 0x20, 0xc6, 0x32, 0x21, 0x9a, 0xc4, 0x31, 0x39, 0xea, 0x08, 0x47, 0x6e, 0x16, 0x58, 0xad, 0x14, 0x5c, 0xe8, 0xe3, 0x97, 0x3c, 0x67, 0x4b, 0xa8, 0x17, 0x3e, 0xfc, 0x4a, 0x7a, 0x53, 0x20, 0xe5, 0xe2, 0x49, 0xc3, 0xff, 0x54, 0xcf, 0x90, 0x3b, 0xac, 0xe8, 0x6f, 0x39, 0xb6, 0x20, 0xac, 0xc1, 0x90, 0x07, 0x41, 0x3c, 0xd1, 0x3a, 0x2d, 0xf0, 0xa1, 0xf5, 0x98, 0x4e, 0x7a, 0x4d, 0x18, 0xcd, 0x8d, 0x12, 0x97, 0x56, 0x02, 0x95, 0xd4, 0x18, 0x3a, 0xf1, 0x85, 0x7b, 0xd8, 0xe6, 0xe3, 0x38, 0xaa, 0x37, 0x99, 0xca, 0x15, 0x50, 0x63, 0x5e, 0x4a, 0xe0, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2363 = { .name = "ecdsa_brainpoolp512r1_sha512_2363", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2363_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2363_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2363_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2364 for ECDSA, tcId is 244 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2364_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2364_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2364_sig[] = { 0x89, 0xf6, 0xe2, 0xf3, 0x42, 0xb4, 0xbc, 0x2f, 0x00, 0x4f, 0xdc, 0x1d, 0x0e, 0x24, 0xa7, 0xd1, 0xd4, 0xcb, 0x6b, 0x00, 0x32, 0xb8, 0xfa, 0x2f, 0x50, 0xe3, 0xf9, 0x0f, 0x38, 0x80, 0x91, 0x8f, 0x31, 0xaa, 0xfd, 0x50, 0x22, 0xff, 0x74, 0xbb, 0xe1, 0xcc, 0x64, 0xfe, 0xba, 0xbb, 0x3b, 0xf3, 0x3a, 0x8e, 0x71, 0x4f, 0x59, 0x7d, 0xdb, 0x0b, 0xe8, 0x06, 0x7d, 0x8a, 0x09, 0x64, 0xdf, 0xe1, 0x3a, 0xd6, 0x7d, 0xd5, 0x53, 0x64, 0xc2, 0x9d, 0x4a, 0x5b, 0x44, 0x6c, 0x64, 0x6f, 0x30, 0xbc, 0x5e, 0x64, 0x8a, 0x88, 0x9a, 0xc7, 0xb1, 0xbe, 0xe4, 0x9b, 0x71, 0x91, 0x8c, 0x32, 0x55, 0x4d, 0x0d, 0x95, 0xd5, 0xa5, 0x7e, 0xf5, 0xe7, 0xf4, 0xb2, 0x67, 0x04, 0x2f, 0xa3, 0x02, 0x5f, 0x13, 0x23, 0xbd, 0x7d, 0xbd, 0x1d, 0x60, 0xc4, 0x4e, 0x32, 0x5d, 0x4f, 0x78, 0xc6, 0x5a, 0x4a, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2364 = { .name = "ecdsa_brainpoolp512r1_sha512_2364", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2364_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2364_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2364_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2365 for ECDSA, tcId is 245 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2365_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2365_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2365_sig[] = { 0x2f, 0x30, 0x52, 0x55, 0x0c, 0x59, 0x5e, 0xd8, 0x92, 0x0a, 0x79, 0x94, 0xb4, 0xad, 0xb7, 0x8b, 0x8f, 0x75, 0x02, 0xfc, 0x06, 0x6a, 0xc4, 0x7a, 0xb4, 0xff, 0xbe, 0x01, 0x0d, 0x4a, 0x5e, 0x3e, 0x54, 0x54, 0x52, 0x79, 0xa7, 0x47, 0xd2, 0x9c, 0x61, 0xc7, 0xd2, 0x85, 0x6b, 0x8e, 0x47, 0xd0, 0x04, 0x0e, 0x07, 0x13, 0xbd, 0xe5, 0x0e, 0x42, 0xe0, 0x38, 0xdf, 0xd5, 0xaf, 0x61, 0xe8, 0x91, 0x54, 0xf8, 0xc5, 0x88, 0x93, 0xf1, 0x9f, 0xbc, 0xf0, 0x10, 0xd2, 0x27, 0x01, 0x7b, 0x88, 0xa4, 0x9c, 0xb6, 0xfd, 0x1e, 0xe6, 0xab, 0x88, 0x3d, 0x21, 0xcb, 0x58, 0xfc, 0x08, 0x69, 0xc3, 0x7e, 0xd7, 0x3c, 0x73, 0x12, 0xc6, 0x7f, 0x5a, 0xc1, 0x9b, 0xf5, 0xbf, 0x0a, 0xbe, 0x4b, 0xc8, 0x36, 0xee, 0x35, 0xb2, 0xa2, 0xc8, 0x05, 0xc3, 0x95, 0x3c, 0x48, 0xe7, 0x9a, 0xb8, 0x66, 0x5a, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2365 = { .name = "ecdsa_brainpoolp512r1_sha512_2365", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2365_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2365_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2365_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2366 for ECDSA, tcId is 246 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2366_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2366_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2366_sig[] = { 0x8e, 0x36, 0x69, 0x55, 0xff, 0xb2, 0xa7, 0xfb, 0xc8, 0x36, 0x44, 0x14, 0x92, 0xf7, 0x4c, 0xae, 0x45, 0x52, 0xfb, 0x0d, 0x24, 0x96, 0xcf, 0xe7, 0xd8, 0xc4, 0x4b, 0x94, 0x20, 0x29, 0x09, 0x47, 0xe2, 0x9b, 0xf8, 0xa8, 0x82, 0x65, 0xe2, 0xc6, 0xcf, 0xc3, 0x7d, 0x29, 0xd2, 0xbb, 0xbd, 0x3d, 0x10, 0x51, 0x3e, 0x08, 0x95, 0xe7, 0x35, 0x51, 0xe2, 0xd7, 0xfa, 0x80, 0xd0, 0x69, 0x71, 0x06, 0x63, 0x11, 0x52, 0x81, 0x52, 0xbc, 0xf6, 0x12, 0x17, 0x33, 0x86, 0x7b, 0x61, 0xfc, 0x52, 0x3e, 0x7f, 0x01, 0xbd, 0x15, 0x00, 0x99, 0x84, 0xea, 0x30, 0xb1, 0x7e, 0xc1, 0x5b, 0x82, 0x40, 0xc1, 0x3f, 0x1a, 0xd1, 0x37, 0xdf, 0x37, 0xde, 0x4a, 0x32, 0xf6, 0xe3, 0xb9, 0x3b, 0xc1, 0x90, 0x95, 0x9d, 0xe1, 0x7a, 0x1b, 0xa3, 0xfe, 0x71, 0xb0, 0x3e, 0x97, 0x54, 0x1c, 0x90, 0xa8, 0x49, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2366 = { .name = "ecdsa_brainpoolp512r1_sha512_2366", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2366_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2366_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2366_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2367 for ECDSA, tcId is 247 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2367_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2367_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2367_sig[] = { 0x38, 0xa4, 0x9f, 0x5f, 0x88, 0xf9, 0x9e, 0x64, 0x07, 0x4f, 0x02, 0x81, 0xec, 0xfa, 0xb9, 0xb8, 0xbf, 0x02, 0x09, 0x2d, 0xbc, 0x11, 0xb8, 0x70, 0x41, 0xbf, 0xb5, 0x61, 0xb4, 0xb3, 0xcf, 0x29, 0x94, 0x5a, 0xb5, 0xd9, 0xdc, 0x45, 0xf1, 0xed, 0xf4, 0x16, 0x06, 0xef, 0x6d, 0x22, 0x04, 0xba, 0xdb, 0x67, 0x61, 0x15, 0x84, 0xb8, 0x92, 0x99, 0x3d, 0xe2, 0x7e, 0x8f, 0x64, 0x02, 0xcd, 0x9a, 0x97, 0xe2, 0xda, 0x75, 0x8a, 0x8e, 0x37, 0x7a, 0x7d, 0x68, 0x2f, 0x50, 0xb0, 0xe3, 0x0f, 0x69, 0x5a, 0x6f, 0x6c, 0x53, 0xe6, 0x71, 0x42, 0x43, 0xaa, 0x9d, 0x53, 0x3b, 0x4a, 0x9b, 0x98, 0x77, 0xd5, 0xd5, 0x0a, 0xf3, 0xe7, 0xa4, 0xf1, 0xfe, 0x60, 0x77, 0xc7, 0xea, 0x70, 0x4b, 0x91, 0x8c, 0x59, 0x95, 0x00, 0xaf, 0xb8, 0x4d, 0x0b, 0xa0, 0x16, 0x82, 0x8a, 0xa2, 0xe6, 0xfd, 0x13, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2367 = { .name = "ecdsa_brainpoolp512r1_sha512_2367", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2367_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2367_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2367_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2368 for ECDSA, tcId is 248 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2368_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2368_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2368_sig[] = { 0x6d, 0xe2, 0x9d, 0x0b, 0x50, 0x95, 0x0a, 0x64, 0x09, 0xd2, 0x9d, 0x25, 0x83, 0xe6, 0xc2, 0xd7, 0x73, 0x89, 0x74, 0x0e, 0xd0, 0xbe, 0x4e, 0xbb, 0xd4, 0x57, 0x1e, 0x82, 0xb5, 0x30, 0x3c, 0xa2, 0x70, 0x87, 0xce, 0x13, 0x27, 0x83, 0x2e, 0x99, 0x91, 0xcb, 0xf7, 0x33, 0x08, 0xa1, 0xba, 0xed, 0xf9, 0x7d, 0x1f, 0x3a, 0xf9, 0xed, 0xf3, 0x5e, 0x27, 0xc1, 0x5a, 0x0c, 0xc0, 0x03, 0xd6, 0xaa, 0x9a, 0x19, 0xf3, 0x3f, 0xf3, 0xa8, 0x8e, 0xd3, 0x03, 0xff, 0xf9, 0x05, 0x35, 0xaa, 0x16, 0x05, 0xbb, 0xdc, 0x00, 0x6b, 0x80, 0x3a, 0x80, 0x4e, 0xb1, 0xdf, 0x09, 0x2b, 0x5a, 0xeb, 0x9d, 0xb1, 0xbe, 0x0c, 0xb9, 0xb6, 0x76, 0x69, 0x45, 0x03, 0xe3, 0x6d, 0x2c, 0xd3, 0x86, 0x8d, 0xb0, 0xc3, 0x48, 0x96, 0xc9, 0x4c, 0xdd, 0xab, 0xd5, 0x4e, 0xc9, 0x5f, 0xfe, 0xb6, 0x98, 0x8a, 0x7f, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2368 = { .name = "ecdsa_brainpoolp512r1_sha512_2368", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2368_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2368_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2368_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2369 for ECDSA, tcId is 249 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2369_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2369_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2369_sig[] = { 0x17, 0x0f, 0x01, 0xe9, 0x2b, 0x69, 0xcb, 0xf0, 0xd3, 0xd9, 0xe4, 0xa5, 0x74, 0x01, 0x63, 0xd7, 0xeb, 0xaf, 0xa7, 0xbb, 0x8d, 0x38, 0x35, 0x03, 0x9f, 0x14, 0x0d, 0x07, 0x5e, 0x95, 0x0d, 0xd5, 0x7d, 0xfd, 0xf1, 0xb7, 0xb8, 0xd1, 0x67, 0x85, 0x48, 0x44, 0x64, 0x10, 0x46, 0x8c, 0xf2, 0x89, 0x8e, 0x13, 0x0c, 0x74, 0x5e, 0x07, 0xdd, 0xff, 0x92, 0x1c, 0x55, 0x42, 0x19, 0x1c, 0xae, 0xfa, 0xa7, 0xb5, 0xd9, 0x28, 0xbe, 0x42, 0x79, 0x9a, 0x55, 0xb0, 0x5e, 0x15, 0x75, 0x8a, 0x1a, 0xff, 0x02, 0x77, 0x5a, 0xf9, 0xed, 0xc2, 0x14, 0x21, 0x4c, 0xa8, 0x9f, 0x73, 0xad, 0x12, 0x01, 0x7d, 0x67, 0x2e, 0x59, 0xcd, 0x6a, 0xa5, 0x4f, 0x18, 0xf2, 0x70, 0xe0, 0x1a, 0xb4, 0xdb, 0xbb, 0x2f, 0x74, 0x8c, 0x87, 0xcb, 0xc2, 0xac, 0x90, 0x81, 0xdf, 0x2e, 0x76, 0x52, 0x4d, 0xa1, 0x77, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2369 = { .name = "ecdsa_brainpoolp512r1_sha512_2369", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2369_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2369_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2369_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2370 for ECDSA, tcId is 250 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2370_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2370_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2370_sig[] = { 0x8b, 0xc0, 0x89, 0xbc, 0xcd, 0xd8, 0x84, 0x3c, 0x06, 0xd5, 0xa7, 0x9e, 0x38, 0x6c, 0x51, 0x3a, 0xf5, 0x19, 0x31, 0x66, 0x0d, 0xb8, 0xb8, 0x88, 0xbc, 0xe5, 0xb5, 0xbd, 0xdb, 0xbe, 0x4c, 0x73, 0x95, 0x6a, 0x9a, 0xcb, 0xc3, 0x2e, 0x1c, 0xea, 0xa5, 0x05, 0x3f, 0xc3, 0x93, 0x08, 0xdd, 0x64, 0x51, 0xe6, 0xe4, 0x03, 0xca, 0x57, 0x43, 0x10, 0x66, 0x70, 0x93, 0xc6, 0xd7, 0x89, 0xb9, 0x80, 0x41, 0x7c, 0x96, 0x6d, 0xc3, 0x6d, 0xba, 0x5c, 0x13, 0xd9, 0x67, 0x01, 0x94, 0x6c, 0x86, 0xa0, 0x68, 0x38, 0x05, 0x69, 0x2f, 0x24, 0xc0, 0x12, 0xb1, 0xa7, 0xd5, 0x71, 0x40, 0x5e, 0xfd, 0x85, 0x0a, 0x99, 0x70, 0x65, 0xb1, 0x9d, 0x35, 0x62, 0x1b, 0xb4, 0xb3, 0x9c, 0x76, 0x49, 0x33, 0x84, 0x9f, 0xf7, 0xd8, 0xb8, 0xf7, 0xdf, 0x9f, 0xc5, 0x04, 0x8b, 0x59, 0x8e, 0xc1, 0xfa, 0xee, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2370 = { .name = "ecdsa_brainpoolp512r1_sha512_2370", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2370_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2370_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2370_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2371 for ECDSA, tcId is 251 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2371_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2371_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2371_sig[] = { 0x8f, 0xab, 0xc9, 0x39, 0xe7, 0xa6, 0xc1, 0x3a, 0xc6, 0x9c, 0xdd, 0x47, 0xf9, 0x96, 0x24, 0x8b, 0xfe, 0xbe, 0x3f, 0x8e, 0x80, 0xde, 0xaf, 0x9c, 0x35, 0xe5, 0xa5, 0xcd, 0xca, 0x08, 0x6f, 0x9f, 0x81, 0x66, 0x1a, 0x1a, 0x41, 0xf6, 0x9e, 0x35, 0x95, 0xb0, 0x55, 0xa5, 0x14, 0xd5, 0x7e, 0xfb, 0x2e, 0xaf, 0x5c, 0x15, 0x25, 0xdc, 0xcf, 0x21, 0x73, 0x6d, 0x2b, 0xbe, 0x89, 0xa5, 0x66, 0x8c, 0xa8, 0xf9, 0xb1, 0x71, 0xb3, 0xd3, 0x38, 0x98, 0xcf, 0x7e, 0xac, 0xe3, 0x5d, 0xad, 0x6c, 0x3f, 0xdb, 0x99, 0x8f, 0xc4, 0x09, 0xfd, 0xb7, 0x08, 0x33, 0x8f, 0x20, 0xc9, 0xe4, 0xb8, 0x29, 0x7b, 0x37, 0x54, 0x85, 0xa5, 0xe8, 0x7e, 0xae, 0x6f, 0xe6, 0x8b, 0x11, 0x39, 0xb1, 0xfb, 0x4a, 0x3b, 0xfa, 0x25, 0x0f, 0x47, 0x04, 0x5f, 0x12, 0xa5, 0xfa, 0xe9, 0x45, 0xa2, 0xab, 0xe7, 0x0c, 0x50, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2371 = { .name = "ecdsa_brainpoolp512r1_sha512_2371", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2371_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2371_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2371_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2372 for ECDSA, tcId is 252 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2372_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2372_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2372_sig[] = { 0x26, 0xf4, 0x05, 0xc9, 0xcf, 0x5a, 0xfb, 0x29, 0xe3, 0xf6, 0x0d, 0xe6, 0x72, 0xe2, 0x50, 0x16, 0xd3, 0x96, 0x66, 0xf6, 0xb3, 0x4a, 0xf5, 0x4b, 0x74, 0x56, 0x2d, 0x4c, 0xa9, 0xe0, 0x3d, 0xd8, 0x7e, 0x2b, 0xf0, 0x20, 0x18, 0x9e, 0x5d, 0x2f, 0xae, 0xa5, 0xbf, 0xba, 0xe2, 0x1a, 0xde, 0xce, 0x9f, 0x21, 0x0b, 0xcb, 0x02, 0xa7, 0x55, 0x8d, 0xad, 0x1b, 0x73, 0xd7, 0x8b, 0x05, 0x32, 0xf8, 0x2b, 0x4b, 0x0c, 0x35, 0x05, 0x7b, 0x95, 0x24, 0xe8, 0x66, 0x62, 0x5e, 0x7d, 0xf8, 0x20, 0xe1, 0x5c, 0x86, 0xc2, 0xef, 0xdc, 0x1c, 0xd6, 0xc4, 0xc3, 0xcd, 0x4e, 0x6e, 0xff, 0x5d, 0x57, 0x58, 0xbd, 0x7f, 0x95, 0xb8, 0xf7, 0x7e, 0x10, 0x16, 0x3f, 0xf6, 0x5b, 0x38, 0x0e, 0xff, 0x97, 0x0c, 0xaa, 0xa7, 0xed, 0x3b, 0xd0, 0xa1, 0x21, 0xd3, 0xbb, 0xff, 0x3b, 0x6e, 0x7a, 0x26, 0x1b, 0x75, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2372 = { .name = "ecdsa_brainpoolp512r1_sha512_2372", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2372_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2372_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2372_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2373 for ECDSA, tcId is 253 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2373_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2373_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2373_sig[] = { 0x36, 0xc5, 0xc4, 0x72, 0x0d, 0x10, 0xa4, 0x55, 0xf4, 0x95, 0x2a, 0x95, 0x87, 0x2c, 0xc6, 0x9e, 0x5c, 0x48, 0xe9, 0x68, 0x9a, 0x6e, 0xa6, 0xe3, 0xe2, 0x82, 0xc9, 0xcb, 0xa5, 0x8b, 0x01, 0xfa, 0x3c, 0xf6, 0x4c, 0x9c, 0x99, 0xa6, 0x00, 0x3d, 0x42, 0x48, 0x95, 0xb9, 0x96, 0xe2, 0x60, 0x72, 0xab, 0x6e, 0x76, 0xb2, 0x9d, 0x1c, 0xf1, 0xda, 0xbc, 0x2b, 0x27, 0x68, 0x02, 0x35, 0x8a, 0xd6, 0x81, 0xa9, 0xe6, 0xb7, 0x9f, 0x80, 0x55, 0xe2, 0xbd, 0xe4, 0x36, 0x5e, 0xac, 0x15, 0x3d, 0xf4, 0x00, 0x3d, 0x48, 0x7b, 0x58, 0x9a, 0xd3, 0x30, 0x6d, 0x4a, 0x49, 0x38, 0x7d, 0x24, 0x4a, 0xbc, 0xda, 0xa0, 0x9c, 0x1b, 0x63, 0xf0, 0x87, 0x7b, 0x15, 0x46, 0x8f, 0xe3, 0xe1, 0x4d, 0xcf, 0x4c, 0xb6, 0x34, 0x00, 0xa9, 0x9f, 0xae, 0x7d, 0xce, 0x5f, 0xe9, 0x46, 0x54, 0x8e, 0x64, 0xab, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2373 = { .name = "ecdsa_brainpoolp512r1_sha512_2373", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2373_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2373_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2373_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2374 for ECDSA, tcId is 254 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2374_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2374_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2374_sig[] = { 0x6e, 0x68, 0x46, 0x11, 0x32, 0x7c, 0xfc, 0xd9, 0xd4, 0x0e, 0x52, 0x52, 0xab, 0xd3, 0xd4, 0x8f, 0xb7, 0x35, 0x88, 0x59, 0x70, 0xe9, 0xb3, 0xba, 0x3f, 0x55, 0xa1, 0x0b, 0x38, 0x78, 0x98, 0x5c, 0x54, 0x8f, 0x0c, 0x52, 0x44, 0x61, 0x96, 0x76, 0xa0, 0xe5, 0xc4, 0x4b, 0x4c, 0x9b, 0x1c, 0xcc, 0x1a, 0x20, 0xac, 0xce, 0x42, 0xe5, 0x0d, 0x4d, 0x1a, 0xee, 0xcb, 0x4a, 0xa6, 0xd8, 0x7a, 0xe5, 0x77, 0x49, 0xfd, 0x22, 0x82, 0x93, 0xae, 0x52, 0x7e, 0x3d, 0x30, 0xde, 0x8f, 0x6f, 0xae, 0x99, 0x15, 0x1e, 0x38, 0x32, 0x9a, 0x10, 0x94, 0xc9, 0x2b, 0x34, 0x72, 0x09, 0xa4, 0xf7, 0xb6, 0x94, 0x74, 0xac, 0x90, 0xf2, 0x1d, 0x56, 0xc6, 0x25, 0xf1, 0xc7, 0x6a, 0xb9, 0x1b, 0x4c, 0x3d, 0x12, 0xa2, 0xbf, 0x4b, 0xa2, 0x82, 0x6c, 0xf0, 0x0a, 0xdf, 0xba, 0x75, 0x36, 0x8e, 0xf5, 0x0c, 0x24, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2374 = { .name = "ecdsa_brainpoolp512r1_sha512_2374", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2374_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2374_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2374_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2375 for ECDSA, tcId is 255 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2375_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2375_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2375_sig[] = { 0x88, 0x7f, 0xe5, 0x33, 0x94, 0x54, 0x5f, 0x10, 0x7a, 0x27, 0x86, 0x7d, 0xf0, 0x2f, 0xbc, 0x1f, 0x59, 0x86, 0x58, 0x5a, 0x42, 0xb5, 0x21, 0x95, 0x24, 0x3a, 0x0f, 0xb7, 0xd1, 0xe7, 0x00, 0xbc, 0xab, 0xed, 0x30, 0x1c, 0xaf, 0xf3, 0xad, 0x8c, 0x2a, 0xf2, 0x34, 0x97, 0xb2, 0xac, 0x02, 0x7f, 0xc1, 0x86, 0xb8, 0xaa, 0xf4, 0xe6, 0x51, 0x2b, 0xf5, 0xbe, 0xa5, 0xa3, 0x57, 0xad, 0x83, 0xfa, 0xa9, 0x23, 0xa3, 0xb4, 0xaf, 0xe3, 0x0e, 0xae, 0x49, 0xb0, 0x18, 0x76, 0x6d, 0xa2, 0x91, 0x3c, 0x66, 0x47, 0xd7, 0x38, 0x41, 0x78, 0xf6, 0x56, 0xd4, 0x0d, 0x01, 0x0f, 0xe1, 0x14, 0x7d, 0x78, 0x6e, 0xe5, 0x09, 0x32, 0x28, 0x6c, 0x81, 0x3e, 0xa4, 0x0e, 0x5c, 0x11, 0x55, 0x5f, 0x6b, 0x8d, 0x8a, 0x6f, 0x82, 0x75, 0x14, 0x5c, 0xb9, 0x4c, 0xc0, 0x41, 0xf1, 0xcd, 0xfc, 0xdf, 0xdd, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2375 = { .name = "ecdsa_brainpoolp512r1_sha512_2375", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2375_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2375_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2375_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2376 for ECDSA, tcId is 256 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2376_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2376_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2376_sig[] = { 0x68, 0xd9, 0xfb, 0x18, 0x1a, 0x84, 0x50, 0xae, 0x37, 0x7d, 0xc7, 0x50, 0xf3, 0xbf, 0xbf, 0x82, 0xcb, 0xc3, 0x93, 0x47, 0xcf, 0x5d, 0x25, 0x26, 0xbc, 0xb6, 0xc3, 0xf6, 0x34, 0x3a, 0x74, 0x51, 0x06, 0x5c, 0xb4, 0xa7, 0xb2, 0xc0, 0xed, 0x3d, 0x68, 0xce, 0x32, 0x0d, 0x9a, 0x9c, 0x35, 0xc9, 0x66, 0xc0, 0x5b, 0xbf, 0x45, 0xb1, 0xac, 0xd2, 0xcf, 0xea, 0xb3, 0x3b, 0x7b, 0xbf, 0x17, 0x6d, 0x85, 0x38, 0x46, 0x9e, 0x63, 0x19, 0x60, 0xf5, 0xe1, 0x3f, 0x6a, 0x3c, 0xdb, 0xd5, 0xcf, 0x6e, 0x89, 0x3d, 0x0b, 0x15, 0x4f, 0x43, 0x03, 0x2b, 0x1b, 0xdc, 0xdb, 0xe2, 0xc5, 0xff, 0x53, 0x38, 0xcf, 0xf5, 0x22, 0x3a, 0x1f, 0x0e, 0xae, 0x7c, 0xa3, 0xed, 0x39, 0x23, 0x22, 0x19, 0xc8, 0x48, 0xfa, 0x75, 0xb0, 0xaa, 0x18, 0xe3, 0x18, 0xc0, 0x6a, 0xbe, 0x47, 0x47, 0x30, 0xe2, 0x6e, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2376 = { .name = "ecdsa_brainpoolp512r1_sha512_2376", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2376_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2376_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2376_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2377 for ECDSA, tcId is 257 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2377_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2377_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2377_sig[] = { 0x0d, 0x0d, 0x1e, 0xb2, 0x12, 0x5e, 0xaf, 0xaa, 0xa4, 0x7d, 0x2e, 0x30, 0xe0, 0x65, 0x0b, 0xc7, 0xe5, 0xc9, 0x9f, 0x4f, 0xb5, 0xbe, 0x14, 0x73, 0x70, 0x8d, 0x19, 0xa9, 0x91, 0xf4, 0xcf, 0xd1, 0xfe, 0x31, 0x9c, 0xa7, 0x3e, 0xd1, 0xa8, 0xb5, 0x9d, 0x4c, 0x00, 0xb2, 0x2e, 0xe0, 0xcd, 0xa9, 0xbb, 0x2f, 0x00, 0xe7, 0x8f, 0x13, 0xbc, 0xbf, 0x37, 0x2e, 0xfc, 0x0a, 0x00, 0x3d, 0x2d, 0x1e, 0x87, 0x8e, 0x71, 0xc2, 0xf5, 0xd5, 0x3a, 0xc0, 0x7b, 0x2e, 0xa1, 0x34, 0x91, 0x10, 0xff, 0xac, 0x6d, 0xfd, 0xfa, 0x21, 0x52, 0xd3, 0xb9, 0xfb, 0x66, 0x2f, 0x6f, 0x9e, 0xf4, 0xe7, 0x60, 0xdf, 0xab, 0xdf, 0x81, 0xed, 0x69, 0x0e, 0x85, 0xd8, 0x0d, 0xb3, 0x21, 0x34, 0x81, 0xda, 0xbe, 0xf6, 0xda, 0xe1, 0x4b, 0x20, 0xc2, 0x5f, 0x6f, 0x56, 0xa3, 0x60, 0xec, 0x97, 0x62, 0x11, 0x4b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2377 = { .name = "ecdsa_brainpoolp512r1_sha512_2377", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2377_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2377_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2377_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2378 for ECDSA, tcId is 258 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2378_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2378_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2378_sig[] = { 0x1c, 0x75, 0xcf, 0xcc, 0xa1, 0x16, 0x61, 0xbc, 0x91, 0x28, 0x9b, 0x25, 0x99, 0x0a, 0x2c, 0x83, 0x68, 0x69, 0xa2, 0xfb, 0x5b, 0xb6, 0x1a, 0x55, 0x30, 0xcf, 0x24, 0x89, 0x18, 0xdb, 0x45, 0x88, 0x32, 0x73, 0xd8, 0xd9, 0xd2, 0x4a, 0x49, 0x2d, 0xcc, 0xc4, 0x29, 0x48, 0x0e, 0xb9, 0xd8, 0x43, 0x54, 0x4d, 0xfb, 0x8b, 0xf9, 0x6e, 0xa7, 0x5f, 0x06, 0xe4, 0xca, 0xee, 0x91, 0xfc, 0x3c, 0x5e, 0x45, 0x7a, 0x98, 0xf6, 0x87, 0x0b, 0x4d, 0x13, 0x1f, 0x9f, 0x76, 0x92, 0x29, 0xcb, 0xe9, 0x3e, 0x97, 0x61, 0x43, 0x2c, 0xf4, 0xe2, 0x2a, 0xe0, 0xf4, 0xb3, 0x5c, 0x55, 0x12, 0x37, 0x70, 0x33, 0x67, 0x84, 0x06, 0x0b, 0x74, 0x7c, 0x34, 0xbc, 0xd3, 0xba, 0xd3, 0xf8, 0x97, 0x07, 0x18, 0xfa, 0x88, 0x77, 0x7b, 0x2b, 0x56, 0x5d, 0xa3, 0xf3, 0x24, 0x98, 0x28, 0x6a, 0xd0, 0x01, 0x53, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2378 = { .name = "ecdsa_brainpoolp512r1_sha512_2378", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2378_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2378_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2378_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2379 for ECDSA, tcId is 259 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2379_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2379_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2379_sig[] = { 0x96, 0xbc, 0x97, 0x87, 0xcc, 0x6d, 0x51, 0x2a, 0x2f, 0xda, 0x9b, 0x34, 0x98, 0xb0, 0x4b, 0x53, 0xf9, 0xc0, 0x3f, 0x40, 0x60, 0xab, 0x03, 0x82, 0xbe, 0x7c, 0xb7, 0x07, 0x78, 0x55, 0x19, 0x6e, 0x60, 0xe0, 0xd1, 0x50, 0xea, 0xaa, 0xe6, 0x09, 0x9a, 0xcb, 0x93, 0x41, 0xa1, 0x5d, 0x06, 0xc9, 0x47, 0x8a, 0xfc, 0x44, 0x50, 0x21, 0xa5, 0xef, 0x29, 0x8f, 0x14, 0x98, 0xbf, 0xfe, 0xbd, 0x9c, 0x8d, 0xb2, 0x6e, 0x51, 0xfb, 0xf0, 0xd7, 0xa5, 0xea, 0xbc, 0x67, 0xa7, 0xf7, 0xdd, 0x69, 0x8d, 0x16, 0xa9, 0x76, 0x43, 0x78, 0x4d, 0x49, 0xc7, 0xf2, 0x92, 0x48, 0x11, 0x14, 0xa0, 0x1c, 0x58, 0x1f, 0xdf, 0xc6, 0xf7, 0x79, 0xb1, 0xcb, 0xcc, 0xf5, 0xe8, 0xea, 0x59, 0x5c, 0x98, 0xb7, 0x60, 0xc3, 0xc5, 0xa1, 0x0f, 0xfe, 0x1e, 0x6e, 0x2c, 0xb1, 0x01, 0xe1, 0xa5, 0xc8, 0xa1, 0x4a, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2379 = { .name = "ecdsa_brainpoolp512r1_sha512_2379", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2379_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2379_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2379_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2380 for ECDSA, tcId is 260 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2380_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2380_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2380_sig[] = { 0x06, 0xe2, 0x0f, 0x46, 0x8d, 0x6f, 0xce, 0x4b, 0x55, 0x71, 0xd6, 0xe1, 0x88, 0xf1, 0x0c, 0xea, 0x05, 0x54, 0x1d, 0x82, 0xc9, 0xf8, 0x17, 0x91, 0xd7, 0xe7, 0xb2, 0x71, 0x6d, 0x92, 0xdc, 0x57, 0x49, 0x40, 0x53, 0x71, 0x2b, 0x0b, 0x01, 0xb3, 0x46, 0xe5, 0x79, 0x72, 0x43, 0x32, 0x6d, 0xb9, 0x20, 0x28, 0xe8, 0x0f, 0x1d, 0x8e, 0x03, 0x82, 0xb1, 0xe6, 0x3c, 0x4d, 0x96, 0xda, 0xa9, 0xd9, 0x21, 0x55, 0xeb, 0x23, 0x64, 0x92, 0x6f, 0xc3, 0x47, 0x97, 0x92, 0x31, 0x25, 0x50, 0x3c, 0xda, 0xda, 0x99, 0x83, 0xe6, 0x25, 0x12, 0x73, 0xe5, 0xfe, 0x1e, 0x02, 0x98, 0xe6, 0x1e, 0x26, 0x85, 0x7d, 0xc4, 0x12, 0x19, 0x0c, 0x7e, 0x67, 0x77, 0x60, 0x56, 0x95, 0x00, 0xf8, 0x5a, 0xb2, 0x66, 0x5b, 0x6e, 0x88, 0x90, 0x1b, 0xe8, 0x61, 0xcf, 0xce, 0x3f, 0xa4, 0xe2, 0xbd, 0xa5, 0x54, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2380 = { .name = "ecdsa_brainpoolp512r1_sha512_2380", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2380_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2380_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2380_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2381 for ECDSA, tcId is 261 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2381_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2381_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2381_sig[] = { 0x1e, 0x24, 0x80, 0xc5, 0x6b, 0xe7, 0x2a, 0x52, 0xfe, 0x00, 0x94, 0x5f, 0xd7, 0xc2, 0xfe, 0xef, 0xdd, 0x03, 0xbd, 0x71, 0x3b, 0xc3, 0xe3, 0xd6, 0xe6, 0xd4, 0x34, 0xd5, 0xa2, 0xa7, 0xa2, 0xc8, 0xe1, 0xb4, 0x7c, 0xb1, 0x42, 0x8b, 0x96, 0xf4, 0xd8, 0x58, 0x9d, 0x6e, 0xe5, 0xfb, 0x32, 0xdd, 0x7d, 0x0a, 0x76, 0x77, 0x90, 0xf8, 0x20, 0x9b, 0x5f, 0xd3, 0x41, 0x2c, 0x0d, 0x56, 0x25, 0x79, 0x3c, 0x05, 0x00, 0xf7, 0x53, 0x1d, 0xc5, 0xf0, 0x04, 0x0f, 0x0b, 0xb0, 0xf5, 0x33, 0xbc, 0x5b, 0xf3, 0x44, 0xfd, 0x1f, 0x32, 0x5a, 0x80, 0xc4, 0x20, 0x43, 0x5f, 0x93, 0xd3, 0xca, 0x7e, 0xee, 0xb1, 0x5b, 0x1a, 0x4f, 0x43, 0x91, 0x40, 0x8f, 0x16, 0x69, 0x71, 0xc9, 0xdd, 0xb7, 0x9b, 0xfb, 0x68, 0xf2, 0x3c, 0x69, 0x97, 0xc2, 0xae, 0x40, 0xd6, 0x6c, 0xd0, 0xf4, 0xfa, 0x71, 0x12, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2381 = { .name = "ecdsa_brainpoolp512r1_sha512_2381", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2381_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2381_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2381_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2382 for ECDSA, tcId is 262 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2382_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2382_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2382_sig[] = { 0x77, 0x4d, 0x85, 0x2a, 0x1d, 0xf9, 0xf3, 0xb5, 0x30, 0xdb, 0x4d, 0x03, 0x45, 0xc3, 0xf7, 0xc4, 0x13, 0xc8, 0xdc, 0x4d, 0xf1, 0xc1, 0x8f, 0x42, 0x89, 0xcb, 0xdf, 0x39, 0xde, 0x2d, 0x9e, 0xb8, 0xbd, 0x90, 0xca, 0x78, 0x03, 0xc2, 0xb3, 0xfe, 0x8a, 0x8e, 0xb9, 0xd8, 0x04, 0xdf, 0xcf, 0x0d, 0x0b, 0xc7, 0x92, 0x11, 0xac, 0x19, 0x9d, 0xa1, 0xc0, 0x9a, 0xbd, 0x80, 0xb0, 0xf2, 0x20, 0xf4, 0x70, 0xfd, 0x03, 0xa6, 0xfb, 0x63, 0x58, 0x2b, 0xc6, 0x41, 0x28, 0x75, 0x8c, 0xc8, 0xbf, 0xfc, 0xf5, 0xba, 0x0b, 0xf1, 0x54, 0xed, 0x42, 0x1b, 0x37, 0xe9, 0x59, 0x87, 0xd4, 0x64, 0x7e, 0xd7, 0xa3, 0xed, 0xe5, 0x15, 0x9a, 0xc1, 0x75, 0xf7, 0x37, 0x0a, 0x2e, 0x23, 0xff, 0xf6, 0x45, 0x10, 0x5c, 0x4e, 0x0d, 0x99, 0xdd, 0xd1, 0x48, 0x6a, 0xd6, 0xac, 0x5a, 0x83, 0x29, 0x03, 0xd5, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2382 = { .name = "ecdsa_brainpoolp512r1_sha512_2382", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2382_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2382_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2382_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2383 for ECDSA, tcId is 263 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2383_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2383_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2383_sig[] = { 0x2e, 0x7f, 0x63, 0xda, 0x65, 0x7a, 0x65, 0x10, 0x52, 0x87, 0xc6, 0x44, 0xcb, 0xa0, 0x7b, 0x0f, 0x98, 0x6b, 0x4b, 0x2f, 0x3a, 0x18, 0xc0, 0x80, 0x9d, 0xcf, 0x8d, 0x8a, 0xc2, 0x16, 0x94, 0x50, 0xb2, 0x06, 0x7c, 0xc5, 0xe0, 0xac, 0x3d, 0x65, 0xe1, 0xea, 0xc6, 0x7f, 0x3c, 0xea, 0x3a, 0x62, 0xc7, 0x23, 0xee, 0xe0, 0x62, 0xd3, 0x07, 0x57, 0xdc, 0xaa, 0x9e, 0x92, 0x6e, 0xbf, 0xbd, 0x00, 0x61, 0xb2, 0x62, 0xa4, 0xaa, 0x85, 0x0b, 0xa1, 0x2e, 0x31, 0x76, 0x1d, 0xcb, 0xde, 0x8c, 0xc7, 0xc9, 0xab, 0xd4, 0x88, 0x52, 0xa7, 0x34, 0xb3, 0x8b, 0x26, 0xcb, 0xb1, 0x53, 0xa8, 0x02, 0x89, 0xc4, 0x78, 0x83, 0x89, 0xb1, 0x6b, 0xaf, 0x10, 0x1f, 0x6c, 0x5d, 0xa8, 0xee, 0xc6, 0xd5, 0x84, 0xd0, 0xba, 0x88, 0x3e, 0x53, 0xb6, 0xd7, 0xd2, 0xaf, 0xe3, 0x6d, 0xb8, 0x3e, 0xa9, 0x51, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2383 = { .name = "ecdsa_brainpoolp512r1_sha512_2383", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2383_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2383_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2383_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2384 for ECDSA, tcId is 264 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2384_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2384_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2384_sig[] = { 0x9b, 0x0b, 0xe1, 0xef, 0xf1, 0x1d, 0x16, 0xb6, 0xc4, 0x80, 0xa0, 0xe1, 0x7c, 0x5f, 0x34, 0x71, 0xea, 0xe4, 0xfc, 0xae, 0xff, 0x92, 0x48, 0x72, 0x09, 0xf0, 0xf2, 0x3c, 0x57, 0xa7, 0xdf, 0xab, 0xed, 0xe9, 0x75, 0x66, 0x98, 0xef, 0xc6, 0x25, 0xc7, 0x79, 0x35, 0x66, 0x7a, 0x51, 0x9e, 0x42, 0x06, 0x2e, 0x9d, 0x08, 0x78, 0x42, 0xc8, 0x3e, 0x08, 0xb9, 0x76, 0xd3, 0xb9, 0x6e, 0xa6, 0xdc, 0x9c, 0x9e, 0xf5, 0xe7, 0x76, 0x0a, 0x03, 0x6b, 0xc4, 0x0e, 0xc7, 0x10, 0xba, 0x88, 0xe9, 0xad, 0x6f, 0x8e, 0x06, 0x94, 0x8d, 0xfa, 0x77, 0xa2, 0x6c, 0xb8, 0xfd, 0x6c, 0x3b, 0x87, 0x11, 0x2d, 0xc0, 0xd0, 0xf6, 0xcc, 0xaf, 0xe0, 0x8f, 0xa5, 0xb6, 0x36, 0xf4, 0x29, 0xa0, 0x97, 0xaf, 0x39, 0xd5, 0x69, 0x43, 0x3c, 0x93, 0x3f, 0x90, 0x25, 0x16, 0xe8, 0x58, 0x71, 0xbe, 0xc3, 0x01, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2384 = { .name = "ecdsa_brainpoolp512r1_sha512_2384", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2384_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2384_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2384_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2385 for ECDSA, tcId is 265 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2385_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2385_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2385_sig[] = { 0x73, 0x96, 0xb4, 0x96, 0x96, 0x31, 0x1d, 0x10, 0xda, 0x5c, 0x85, 0xa3, 0x32, 0x4b, 0xc0, 0x7b, 0x85, 0x5a, 0xde, 0xd9, 0xf5, 0x56, 0xfc, 0xef, 0x6b, 0x3a, 0x15, 0x7c, 0xcd, 0xee, 0xce, 0xdf, 0xaf, 0xeb, 0xfe, 0xc2, 0x7e, 0x9b, 0x76, 0x4a, 0xcc, 0x84, 0xf0, 0xab, 0x13, 0x7e, 0xe3, 0x01, 0x6d, 0xba, 0x85, 0xf4, 0x56, 0x4e, 0xb9, 0xb2, 0x20, 0x64, 0x1e, 0x73, 0x67, 0x1f, 0x85, 0x09, 0x34, 0xd8, 0x5e, 0xae, 0x9b, 0xfd, 0x43, 0x89, 0x0f, 0xcd, 0x2b, 0x05, 0x11, 0xae, 0xaa, 0x75, 0x34, 0xa4, 0x70, 0xd4, 0xa6, 0x10, 0xfd, 0x59, 0x2a, 0xcd, 0x0e, 0x01, 0x78, 0x4d, 0xc6, 0xbe, 0x4a, 0xb0, 0xfa, 0xe5, 0xea, 0x6f, 0xae, 0xb6, 0xc1, 0x7a, 0x5c, 0x2a, 0x84, 0xdc, 0x75, 0xb9, 0x1a, 0x05, 0x17, 0x35, 0x94, 0xf6, 0x21, 0x2f, 0x2a, 0xa2, 0x16, 0x0f, 0x22, 0x9b, 0xd0, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2385 = { .name = "ecdsa_brainpoolp512r1_sha512_2385", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2385_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2385_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2385_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2386 for ECDSA, tcId is 266 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2386_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2386_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2386_sig[] = { 0x24, 0xdc, 0x7d, 0x0a, 0xa8, 0x9c, 0xa2, 0x2d, 0xce, 0xc2, 0x02, 0x48, 0xf6, 0x70, 0x6b, 0x62, 0x09, 0x58, 0x32, 0x36, 0xdb, 0xa3, 0xbc, 0x32, 0x6f, 0x29, 0x32, 0x1c, 0x5b, 0xef, 0x77, 0xdd, 0xf4, 0x96, 0x8e, 0x27, 0xab, 0x2d, 0xbf, 0x18, 0x82, 0xde, 0x29, 0x85, 0xe4, 0x90, 0x1c, 0x03, 0xdc, 0xe5, 0x39, 0xd0, 0xdf, 0x17, 0x16, 0x09, 0x7e, 0xa2, 0x07, 0xfa, 0xe6, 0xb6, 0x11, 0x40, 0x61, 0x68, 0xc1, 0x27, 0x7b, 0x7c, 0x88, 0x17, 0x66, 0xb7, 0x67, 0x08, 0x3d, 0xe4, 0xf4, 0xdf, 0x82, 0xaf, 0x8a, 0xc4, 0x07, 0x12, 0x22, 0x95, 0xec, 0xe5, 0x8f, 0xa4, 0x9c, 0xc0, 0x51, 0x30, 0x88, 0x48, 0xdc, 0x38, 0x06, 0x75, 0x80, 0x0a, 0x4a, 0x4d, 0xfd, 0x6b, 0x81, 0x32, 0x07, 0xd8, 0xd0, 0xe4, 0x22, 0xc2, 0x32, 0xf3, 0x0b, 0xdf, 0xf7, 0xdf, 0x7d, 0x89, 0xf4, 0x27, 0xc1, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2386 = { .name = "ecdsa_brainpoolp512r1_sha512_2386", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2386_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2386_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2386_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2387 for ECDSA, tcId is 267 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2387_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2387_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2387_sig[] = { 0x2d, 0x47, 0xca, 0x2c, 0x03, 0xad, 0xbf, 0xf2, 0x84, 0x03, 0x1e, 0x2c, 0x63, 0x15, 0x83, 0x63, 0x97, 0xba, 0x34, 0xb7, 0x60, 0x50, 0x57, 0x52, 0x6b, 0x15, 0x9e, 0x69, 0x75, 0xee, 0x66, 0x0e, 0xc8, 0x09, 0xea, 0x15, 0xf5, 0x52, 0x08, 0x7b, 0x2a, 0xb5, 0xbd, 0x3f, 0x71, 0x8f, 0x8f, 0x82, 0xf9, 0xe9, 0xee, 0x47, 0xf1, 0x0c, 0x7e, 0x96, 0xcb, 0x06, 0xa5, 0xa7, 0xb4, 0xb0, 0x24, 0x7a, 0x3c, 0xb1, 0xf5, 0x68, 0x1e, 0x4b, 0xa1, 0xb0, 0x5b, 0x5c, 0x9a, 0x2c, 0x03, 0xf0, 0xd6, 0xbd, 0x83, 0x9a, 0xd5, 0xbc, 0xcf, 0x4b, 0xe2, 0xea, 0x08, 0x5b, 0x6d, 0xb5, 0x51, 0x60, 0x37, 0xcc, 0x5d, 0x36, 0xfa, 0xa8, 0x3c, 0x67, 0xa1, 0x7c, 0xf7, 0x3f, 0x8f, 0x75, 0xe5, 0x0c, 0xa3, 0x3f, 0xb7, 0x59, 0x1c, 0xf2, 0x4f, 0x95, 0x08, 0xa7, 0xee, 0xd6, 0x13, 0x14, 0xa4, 0x7d, 0x9e, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2387 = { .name = "ecdsa_brainpoolp512r1_sha512_2387", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2387_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2387_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2387_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2388 for ECDSA, tcId is 268 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2388_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2388_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2388_sig[] = { 0x0a, 0xf3, 0x27, 0x3b, 0x41, 0x19, 0x62, 0x49, 0x79, 0xea, 0xb3, 0x05, 0xa0, 0xf8, 0x3e, 0x51, 0x36, 0xef, 0x6a, 0x56, 0x59, 0x7c, 0x53, 0x53, 0xd8, 0xd7, 0x67, 0x23, 0x52, 0x94, 0x03, 0x99, 0x5c, 0x45, 0xf3, 0xa2, 0x4b, 0xb1, 0x3a, 0xe8, 0x5d, 0x38, 0x72, 0xdc, 0x81, 0x1e, 0x00, 0x8e, 0xaa, 0x2c, 0x58, 0x42, 0xf4, 0x9a, 0x7c, 0x2e, 0xc6, 0x8d, 0xc7, 0xcb, 0x4f, 0x33, 0xcc, 0xc3, 0x61, 0xf5, 0xb2, 0x36, 0x33, 0x49, 0x64, 0xeb, 0x3e, 0xe2, 0xc6, 0xc6, 0xbc, 0xeb, 0x9f, 0x2f, 0x8e, 0xcf, 0x06, 0x44, 0xce, 0x9c, 0xa7, 0x23, 0xd5, 0x98, 0xe3, 0x94, 0x72, 0xe3, 0xd3, 0x9a, 0x99, 0x34, 0x81, 0xd2, 0x7c, 0x8d, 0xf5, 0xdf, 0x2b, 0x78, 0x1d, 0x6a, 0x02, 0x2a, 0xc4, 0x89, 0xa9, 0x19, 0x94, 0x75, 0x62, 0x0d, 0x4b, 0xab, 0x39, 0x0a, 0x3f, 0xcb, 0x6b, 0xf4, 0x49, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2388 = { .name = "ecdsa_brainpoolp512r1_sha512_2388", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2388_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2388_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2388_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2389 for ECDSA, tcId is 269 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2389_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2389_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2389_sig[] = { 0x9d, 0x54, 0xcc, 0xdc, 0xdd, 0xe1, 0xb7, 0xb1, 0x1f, 0xa6, 0xa7, 0x0f, 0xd7, 0x5d, 0xa9, 0xa2, 0x38, 0x7a, 0xee, 0xf9, 0x48, 0x82, 0x50, 0x6e, 0xb8, 0x98, 0xd7, 0x25, 0x6d, 0xa4, 0xd0, 0xae, 0x2e, 0xa0, 0xcf, 0x54, 0xf9, 0x66, 0xed, 0x35, 0x0c, 0xe4, 0x74, 0xc7, 0x4f, 0x00, 0xae, 0xff, 0x42, 0xcc, 0x16, 0x06, 0x4b, 0x06, 0x9b, 0x8a, 0x68, 0x82, 0x0b, 0xa5, 0x57, 0xb5, 0x34, 0xd0, 0x99, 0x12, 0xc6, 0x02, 0x99, 0x47, 0x81, 0x60, 0x6f, 0x98, 0x72, 0x13, 0xb4, 0xe1, 0xe0, 0x56, 0xf3, 0xae, 0x17, 0x93, 0x5d, 0xa0, 0x59, 0x34, 0x1b, 0xba, 0x17, 0x48, 0x4a, 0xc6, 0x2e, 0x32, 0xf2, 0xd0, 0x4b, 0x39, 0x73, 0x27, 0x5e, 0x73, 0x88, 0x76, 0xeb, 0xb1, 0x6f, 0xa1, 0x46, 0x5f, 0x8e, 0x6b, 0xd2, 0x60, 0x19, 0xd9, 0x6a, 0xaa, 0x28, 0xcc, 0xfe, 0x94, 0xab, 0x7e, 0xa9, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2389 = { .name = "ecdsa_brainpoolp512r1_sha512_2389", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2389_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2389_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2389_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2390 for ECDSA, tcId is 270 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2390_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2390_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2390_sig[] = { 0x7f, 0x7b, 0x14, 0xc2, 0x50, 0x2a, 0x2b, 0xbf, 0x3f, 0x7d, 0x18, 0x29, 0x01, 0x26, 0x37, 0xa1, 0xe4, 0x63, 0x11, 0xef, 0xb1, 0xb8, 0x7d, 0xb4, 0x13, 0x04, 0x31, 0x82, 0x50, 0xd0, 0xd1, 0xb2, 0x55, 0x2d, 0x24, 0x25, 0x37, 0x8d, 0xad, 0x4b, 0xfd, 0xa6, 0xef, 0x11, 0x97, 0xd7, 0xb9, 0x84, 0x63, 0x84, 0xac, 0xfd, 0xbf, 0xae, 0x03, 0x6a, 0x5f, 0x73, 0x2e, 0x94, 0x97, 0xc8, 0x58, 0x4a, 0x50, 0x69, 0x3e, 0xee, 0x71, 0xae, 0x5d, 0x70, 0x61, 0x05, 0xd8, 0x19, 0x08, 0x9a, 0xc9, 0x48, 0xb3, 0xd7, 0xb4, 0x15, 0x1b, 0x0a, 0xf5, 0x54, 0x36, 0x89, 0x98, 0x54, 0xd9, 0xcc, 0x8b, 0x75, 0x26, 0xae, 0xd8, 0x96, 0xae, 0x1f, 0x3d, 0xdd, 0xfe, 0x30, 0x19, 0x62, 0x04, 0x3f, 0x4f, 0x3b, 0xa1, 0x40, 0x86, 0x4e, 0xf8, 0xd1, 0xbb, 0x6d, 0x45, 0xd5, 0xad, 0xd1, 0x32, 0x5d, 0x84, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2390 = { .name = "ecdsa_brainpoolp512r1_sha512_2390", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2390_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2390_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2390_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2391 for ECDSA, tcId is 271 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2391_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2391_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2391_sig[] = { 0x8c, 0x33, 0xb1, 0x62, 0x3e, 0x10, 0xe2, 0xf5, 0x1e, 0xdc, 0x0b, 0x96, 0x86, 0x2c, 0xd2, 0xea, 0xf5, 0xfa, 0xee, 0x8e, 0xa6, 0xcc, 0xc9, 0x85, 0xcc, 0xdb, 0x94, 0xbf, 0xb1, 0x41, 0xd6, 0x3d, 0xb2, 0x51, 0xfa, 0xf1, 0xe7, 0xd6, 0x9e, 0xd3, 0x90, 0xa2, 0xbe, 0xb7, 0x11, 0x85, 0xdb, 0x40, 0x29, 0xf0, 0x7f, 0x03, 0xaf, 0x4a, 0xc4, 0xaa, 0xea, 0xf4, 0x8a, 0xf0, 0x1e, 0x6f, 0x24, 0x20, 0x55, 0xb0, 0x36, 0x5b, 0x12, 0xf7, 0xd6, 0x40, 0xf7, 0x58, 0xe5, 0xaf, 0x6e, 0x2d, 0x6a, 0x41, 0xfc, 0x5c, 0x56, 0xc8, 0x05, 0x98, 0xf7, 0xbb, 0xa0, 0x99, 0x0b, 0x0d, 0x89, 0x9f, 0x22, 0xcb, 0x63, 0x4c, 0x22, 0xf6, 0x4d, 0x7a, 0x1e, 0x97, 0x08, 0x56, 0xb3, 0xb3, 0x1b, 0xb0, 0x13, 0xd3, 0x9f, 0x76, 0x1d, 0x58, 0x8b, 0xa1, 0x4a, 0x95, 0x83, 0xf8, 0x38, 0x7d, 0x91, 0xd0, 0x58, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2391 = { .name = "ecdsa_brainpoolp512r1_sha512_2391", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2391_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2391_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2391_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2392 for ECDSA, tcId is 272 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2392_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2392_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2392_sig[] = { 0xa3, 0x4a, 0xc9, 0xc0, 0x77, 0x53, 0x8c, 0x21, 0xf9, 0x2a, 0xb4, 0xbf, 0x0d, 0xd4, 0x0d, 0x9f, 0xab, 0xee, 0x1f, 0x40, 0x9e, 0x81, 0xcc, 0xe7, 0x1b, 0xed, 0x23, 0xd0, 0x6b, 0xa7, 0x2e, 0xb1, 0x5b, 0x7b, 0x7a, 0x96, 0xfb, 0xe2, 0x56, 0xbd, 0x0c, 0x41, 0xa0, 0xd5, 0xe3, 0xf0, 0x74, 0x89, 0x96, 0xc1, 0x6d, 0x74, 0x27, 0x05, 0xd9, 0xa0, 0x6c, 0x54, 0x4a, 0x4e, 0x57, 0x3c, 0x35, 0x97, 0x45, 0x00, 0xed, 0x99, 0x5c, 0x26, 0x08, 0xdc, 0x62, 0xec, 0xc9, 0x20, 0xee, 0x56, 0x05, 0x90, 0x64, 0x81, 0x00, 0xe5, 0xb8, 0x9e, 0x7f, 0x10, 0x9a, 0x2c, 0x15, 0xa8, 0x51, 0x70, 0x89, 0x53, 0xe6, 0x99, 0x49, 0x9c, 0x98, 0x7c, 0x1e, 0x95, 0x23, 0xf9, 0xd8, 0x98, 0x5e, 0x60, 0x61, 0xcb, 0x9a, 0x84, 0xe5, 0x8e, 0x2c, 0x26, 0x57, 0x9b, 0xbb, 0x08, 0x4b, 0x9d, 0x5d, 0x71, 0xf3, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2392 = { .name = "ecdsa_brainpoolp512r1_sha512_2392", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2392_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2392_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2392_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2393 for ECDSA, tcId is 273 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2393_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2393_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2393_sig[] = { 0x63, 0x9a, 0x6c, 0xc0, 0xc3, 0xe5, 0x0f, 0x24, 0x57, 0xf8, 0x43, 0xc4, 0x0f, 0x17, 0x14, 0x09, 0x6e, 0x61, 0x63, 0x7c, 0x78, 0xba, 0x9d, 0x84, 0x7a, 0xdf, 0x0f, 0x6b, 0x2e, 0xce, 0x78, 0xad, 0xea, 0x98, 0xdd, 0x15, 0x6a, 0x91, 0x63, 0x8e, 0xea, 0xc7, 0x43, 0x97, 0x1f, 0x5d, 0x46, 0x95, 0x06, 0xfd, 0x19, 0xe1, 0x15, 0x55, 0xfc, 0x55, 0xfe, 0xe3, 0xf8, 0x2a, 0xe7, 0xb0, 0x5b, 0x8f, 0x24, 0x27, 0xb3, 0xfa, 0x23, 0x84, 0x30, 0xe0, 0xcd, 0x79, 0x4f, 0x28, 0xb4, 0xe0, 0xf2, 0xc1, 0xd3, 0xc8, 0x3a, 0xb6, 0xfd, 0x00, 0xd4, 0x7a, 0x4c, 0x63, 0x0f, 0x5f, 0x07, 0x2f, 0x96, 0x15, 0x23, 0xcd, 0x53, 0x16, 0xb0, 0xf8, 0xe7, 0xa1, 0x38, 0x77, 0x27, 0xe3, 0x30, 0xfe, 0xf6, 0x92, 0x89, 0x0a, 0x47, 0x24, 0x95, 0xc6, 0x9c, 0xf2, 0x16, 0x72, 0x7f, 0xba, 0x37, 0x71, 0xad, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2393 = { .name = "ecdsa_brainpoolp512r1_sha512_2393", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2393_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2393_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2393_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2394 for ECDSA, tcId is 274 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2394_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2394_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2394_sig[] = { 0x61, 0x94, 0x92, 0x20, 0xd6, 0x68, 0xcd, 0x59, 0x00, 0x9b, 0x00, 0x69, 0x60, 0x7a, 0xfa, 0xc3, 0xa3, 0xbe, 0x38, 0x66, 0xf5, 0x0b, 0x0c, 0x3b, 0xdb, 0xd9, 0x8e, 0x9e, 0xb3, 0x06, 0x08, 0x2b, 0x23, 0x13, 0x6f, 0xbe, 0x61, 0x73, 0xdc, 0xb6, 0xb8, 0xd3, 0x4e, 0x81, 0xa9, 0xe0, 0x38, 0xe8, 0xa7, 0x80, 0x71, 0x63, 0x5b, 0x7b, 0xc4, 0xc7, 0x87, 0xef, 0xb7, 0xbf, 0x8a, 0x8b, 0xa1, 0x2a, 0x84, 0x26, 0xf6, 0x8e, 0x8c, 0x7f, 0xc3, 0xe8, 0xbe, 0xa8, 0x4d, 0x7b, 0x56, 0xaa, 0x2e, 0x6b, 0xbb, 0x2b, 0x06, 0x3e, 0x32, 0x0e, 0xcd, 0x52, 0x0d, 0x36, 0x5a, 0x06, 0x6d, 0x92, 0x40, 0xf5, 0xda, 0xa5, 0x33, 0xda, 0xea, 0x28, 0xd9, 0x9c, 0xa1, 0xff, 0xae, 0x9c, 0x3b, 0x9b, 0x0e, 0x7c, 0xd2, 0x8d, 0x74, 0x21, 0xba, 0x35, 0xc3, 0x05, 0xc8, 0x91, 0x03, 0x48, 0x67, 0x76, 0x8b, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2394 = { .name = "ecdsa_brainpoolp512r1_sha512_2394", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2394_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2394_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2394_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2395 for ECDSA, tcId is 275 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2395_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2395_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2395_sig[] = { 0x47, 0xff, 0xc9, 0xcd, 0xf4, 0x0e, 0x55, 0x80, 0xa4, 0xa9, 0x38, 0xc3, 0x72, 0x7a, 0xcf, 0x8c, 0x37, 0xad, 0x63, 0x8b, 0x11, 0xc2, 0x35, 0xd0, 0x5e, 0x44, 0xbf, 0xb0, 0xa6, 0x80, 0xa3, 0xc6, 0xef, 0xf5, 0x79, 0x01, 0x54, 0x1b, 0xe0, 0xc6, 0x02, 0x46, 0x74, 0x9f, 0x1f, 0x00, 0x71, 0xa8, 0x59, 0x4e, 0xd6, 0xeb, 0xa4, 0x3e, 0xa1, 0xf9, 0x26, 0x68, 0xd5, 0x4d, 0x93, 0x8c, 0x98, 0xd3, 0x15, 0x21, 0xec, 0xb3, 0xeb, 0x40, 0x8c, 0x98, 0x60, 0xb8, 0x3b, 0xb7, 0x48, 0xaf, 0xe3, 0x06, 0xc3, 0x5b, 0x93, 0xee, 0x6b, 0x9e, 0x1e, 0x58, 0x4c, 0x98, 0xd7, 0x88, 0xd0, 0x4d, 0x01, 0x3d, 0xe6, 0x91, 0xca, 0xfc, 0xd0, 0xf5, 0xd7, 0x1f, 0xe3, 0xdc, 0x6c, 0x8c, 0x77, 0xed, 0x03, 0x48, 0x8d, 0x8b, 0x92, 0xab, 0x2c, 0x2e, 0x00, 0x7e, 0xe3, 0x5a, 0xd0, 0x2c, 0x4d, 0xdd, 0x05, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2395 = { .name = "ecdsa_brainpoolp512r1_sha512_2395", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2395_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2395_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2395_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2396 for ECDSA, tcId is 276 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2396_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2396_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2396_sig[] = { 0x64, 0x63, 0x8c, 0x51, 0xaf, 0x92, 0x69, 0xfb, 0x24, 0xd8, 0xe0, 0x97, 0x41, 0x02, 0xbe, 0x6e, 0x94, 0xbc, 0xea, 0xdf, 0xe9, 0xce, 0xa1, 0xa9, 0xc8, 0x9f, 0xd7, 0x78, 0x01, 0x08, 0x91, 0x84, 0x5d, 0x26, 0xe5, 0xdc, 0x7a, 0x0f, 0xe7, 0xf0, 0xa6, 0xea, 0x9e, 0xa0, 0xc1, 0xdd, 0x7c, 0x90, 0x5e, 0x8c, 0xe4, 0x3b, 0xe6, 0x48, 0x60, 0x9e, 0xaf, 0x84, 0x94, 0xf0, 0x60, 0x50, 0xb5, 0x50, 0x9f, 0xf2, 0xab, 0xd8, 0x31, 0x91, 0x59, 0xbf, 0x51, 0xc6, 0xf3, 0x30, 0x71, 0x98, 0xd3, 0xc0, 0x50, 0x0a, 0xd8, 0x67, 0x4f, 0x42, 0xa9, 0x16, 0x78, 0x31, 0x73, 0x42, 0xe8, 0x2e, 0xc0, 0x78, 0x1d, 0x43, 0x10, 0xd6, 0x18, 0x69, 0x4b, 0xd8, 0xd0, 0x74, 0x65, 0x0a, 0xe6, 0x49, 0x10, 0xa2, 0x4a, 0x03, 0x59, 0x8f, 0x00, 0x16, 0x81, 0x20, 0xe5, 0x30, 0xaa, 0x60, 0x31, 0x7a, 0xd4, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2396 = { .name = "ecdsa_brainpoolp512r1_sha512_2396", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2396_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2396_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2396_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2397 for ECDSA, tcId is 277 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2397_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2397_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2397_sig[] = { 0x25, 0x3d, 0x7a, 0xff, 0x81, 0x71, 0x37, 0x21, 0x96, 0xdd, 0x15, 0x2c, 0xe3, 0x53, 0x6e, 0x65, 0xff, 0x00, 0xac, 0x3f, 0xee, 0xfc, 0x32, 0xd7, 0x90, 0xb6, 0xdd, 0xc8, 0x5b, 0x0c, 0xef, 0x07, 0x4a, 0x17, 0x36, 0xbb, 0x47, 0x33, 0x31, 0xb3, 0x81, 0x4b, 0x2f, 0x69, 0xd2, 0x0e, 0x90, 0x05, 0x0e, 0xd2, 0xd3, 0xca, 0x12, 0x57, 0x35, 0x33, 0x6d, 0x15, 0xf9, 0xc0, 0x12, 0xe2, 0x89, 0xcb, 0x38, 0x50, 0x57, 0x3a, 0x85, 0x9b, 0x7f, 0x9b, 0x15, 0x3f, 0xe0, 0xd9, 0x5f, 0x48, 0xed, 0x30, 0x87, 0x7e, 0xeb, 0x34, 0xff, 0xd3, 0x0e, 0x99, 0x80, 0xf4, 0xc4, 0x2c, 0x26, 0xe9, 0x53, 0x8f, 0x7e, 0xdf, 0xe5, 0x0d, 0x52, 0xf8, 0xe4, 0x53, 0xaf, 0x03, 0xd4, 0x55, 0x4b, 0xca, 0x7a, 0xb2, 0xb3, 0xb9, 0x8d, 0x79, 0x4a, 0x31, 0x7d, 0xda, 0x12, 0x3f, 0xd3, 0x1e, 0x4e, 0xa7, 0x06, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2397 = { .name = "ecdsa_brainpoolp512r1_sha512_2397", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2397_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2397_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2397_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2398 for ECDSA, tcId is 278 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2398_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2398_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2398_sig[] = { 0x74, 0x82, 0xb5, 0xe6, 0xbc, 0x84, 0xf2, 0x89, 0xbe, 0x96, 0xff, 0x9c, 0x01, 0xea, 0x2d, 0xf6, 0x32, 0xcc, 0x1d, 0x23, 0xb9, 0x88, 0xf9, 0x53, 0x26, 0x41, 0x00, 0xe8, 0xa2, 0x12, 0xe7, 0x7c, 0x83, 0x6f, 0xc3, 0xf6, 0x60, 0x71, 0xd9, 0xec, 0x62, 0x54, 0x34, 0x1c, 0xec, 0xfc, 0xd8, 0xaa, 0xa9, 0x40, 0xcc, 0x0c, 0xc1, 0xe2, 0x60, 0x77, 0xf3, 0xc0, 0xa1, 0xa8, 0x55, 0xe3, 0x0c, 0x51, 0x32, 0x8e, 0x8a, 0x1f, 0xc1, 0x40, 0xc8, 0x79, 0x1b, 0x9d, 0x17, 0xe1, 0xe2, 0xdf, 0xdc, 0xeb, 0x96, 0x9a, 0x21, 0xd2, 0xb0, 0x24, 0x5b, 0x1c, 0xc2, 0x07, 0x66, 0xb6, 0xb4, 0x1a, 0x2d, 0x6c, 0xdf, 0x96, 0x09, 0xdd, 0xa1, 0xb1, 0xd2, 0xc2, 0xc6, 0xc3, 0x85, 0x98, 0x6e, 0x6c, 0x6f, 0xac, 0xbf, 0xd6, 0x8a, 0x67, 0x48, 0x60, 0xf4, 0x8f, 0xb8, 0xd1, 0x13, 0xf5, 0x77, 0xef, 0x23, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2398 = { .name = "ecdsa_brainpoolp512r1_sha512_2398", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2398_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2398_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2398_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2399 for ECDSA, tcId is 279 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2399_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2399_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2399_sig[] = { 0x65, 0x99, 0x44, 0x1c, 0x0e, 0xd9, 0xe2, 0xa8, 0x2f, 0x5f, 0x09, 0xcf, 0xa9, 0x62, 0x7b, 0x25, 0xd5, 0x01, 0x95, 0x75, 0x07, 0x23, 0xac, 0x18, 0x90, 0x7e, 0xde, 0xa3, 0xb5, 0x88, 0xb7, 0x36, 0xde, 0xed, 0xcd, 0xcd, 0x0a, 0xee, 0x44, 0xdf, 0x73, 0xf5, 0xf3, 0x64, 0xe4, 0x84, 0xb9, 0x94, 0x9b, 0x7d, 0x7b, 0x69, 0x8f, 0xde, 0x04, 0x3e, 0x61, 0x02, 0xcf, 0xee, 0xd6, 0x9d, 0xb4, 0x69, 0x40, 0x04, 0x9f, 0x8d, 0xd6, 0xee, 0x0b, 0xbb, 0x4b, 0x9a, 0x29, 0xf2, 0xed, 0xed, 0x3c, 0x8b, 0xf0, 0xb1, 0x0c, 0x8b, 0xd3, 0xbe, 0x6b, 0xf5, 0xe4, 0xf9, 0x7f, 0x07, 0x4d, 0x71, 0x68, 0x65, 0xfa, 0x82, 0x4f, 0x51, 0xfa, 0x79, 0xcc, 0xfe, 0x79, 0x1d, 0x5d, 0xf6, 0xad, 0x7f, 0xee, 0x6b, 0xad, 0x96, 0xac, 0x5b, 0xff, 0x21, 0xa5, 0x02, 0xf9, 0x0a, 0xb8, 0x0e, 0x21, 0x12, 0x53, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2399 = { .name = "ecdsa_brainpoolp512r1_sha512_2399", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2399_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2399_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2399_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2400 for ECDSA, tcId is 280 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2400_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2400_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2400_sig[] = { 0x74, 0xe1, 0x1c, 0x74, 0xd4, 0x13, 0x9e, 0xb9, 0xe5, 0x32, 0xe5, 0x83, 0xcf, 0x3e, 0xdd, 0x0b, 0x9e, 0x0e, 0x7b, 0x6e, 0x82, 0xa3, 0xb7, 0x9d, 0x82, 0x00, 0xe8, 0xe5, 0x81, 0xde, 0xb7, 0x1b, 0x15, 0x3b, 0x96, 0x16, 0x46, 0xa7, 0x63, 0x20, 0x33, 0x9f, 0x4c, 0x1a, 0x5f, 0x75, 0xa6, 0x38, 0xba, 0x2b, 0x0c, 0x3f, 0x06, 0x5e, 0xd8, 0x56, 0xad, 0x0a, 0x15, 0x8e, 0x32, 0x35, 0xc7, 0x0e, 0x6f, 0xf9, 0x40, 0x33, 0x9c, 0x04, 0x49, 0xd6, 0xe2, 0x40, 0x37, 0x30, 0xb5, 0x8d, 0x0d, 0xfc, 0x8d, 0xe7, 0x9b, 0xca, 0x0d, 0xf0, 0x6c, 0x5a, 0x6d, 0x43, 0x7c, 0xc2, 0xc1, 0x26, 0x6a, 0x46, 0x8a, 0x8a, 0xca, 0x2a, 0x29, 0x03, 0xc2, 0x99, 0x79, 0xd7, 0xf4, 0xd4, 0xf7, 0x87, 0x1a, 0x10, 0x6b, 0x31, 0xec, 0x48, 0x5c, 0x28, 0xca, 0xb6, 0x2e, 0xb2, 0x10, 0x01, 0x98, 0x87, 0x1b, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2400 = { .name = "ecdsa_brainpoolp512r1_sha512_2400", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2400_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2400_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2400_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2401 for ECDSA, tcId is 281 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2401_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2401_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2401_sig[] = { 0x55, 0x48, 0x02, 0x0c, 0x2a, 0x07, 0x64, 0x52, 0x4c, 0xa5, 0x43, 0xd0, 0x8e, 0x15, 0x26, 0xce, 0x14, 0x76, 0xba, 0x97, 0x6a, 0xf8, 0xd6, 0x15, 0x0d, 0x8d, 0x2a, 0xe4, 0x74, 0x95, 0xe5, 0xfe, 0x68, 0xcc, 0xe9, 0x84, 0x93, 0xb5, 0x03, 0x04, 0x13, 0x1d, 0xf7, 0x1c, 0x1a, 0x3d, 0x47, 0x76, 0xa7, 0x7d, 0x5c, 0xeb, 0x74, 0xe4, 0x7b, 0x2a, 0x8e, 0x65, 0x01, 0x08, 0xeb, 0xab, 0x14, 0x28, 0x62, 0x0e, 0x2d, 0xbf, 0x67, 0x21, 0x5f, 0x95, 0xfb, 0xbc, 0x92, 0xa9, 0x92, 0xf2, 0x0a, 0x4e, 0x7f, 0x30, 0x1a, 0x2c, 0x3c, 0x38, 0x80, 0xb7, 0xe8, 0x91, 0xad, 0x48, 0x46, 0x47, 0xa9, 0x7a, 0xa0, 0x0a, 0xec, 0xde, 0xfd, 0x03, 0x15, 0x52, 0x07, 0xa9, 0xe4, 0x59, 0xef, 0x74, 0x5a, 0x9d, 0x29, 0xa5, 0x4b, 0x08, 0xf4, 0x7b, 0x81, 0xca, 0xdb, 0xe4, 0xbe, 0xa4, 0x57, 0xea, 0xc6, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2401 = { .name = "ecdsa_brainpoolp512r1_sha512_2401", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2401_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2401_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2401_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2402 for ECDSA, tcId is 282 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2402_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2402_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2402_sig[] = { 0x83, 0xde, 0x91, 0x22, 0xab, 0x46, 0x27, 0x22, 0x93, 0x9d, 0x85, 0x1d, 0x45, 0x6b, 0x9b, 0x02, 0x29, 0x37, 0xbe, 0x85, 0xb1, 0x5e, 0xb6, 0x5d, 0x2e, 0xc1, 0xa4, 0x84, 0x10, 0xa2, 0xf2, 0x34, 0xe9, 0x81, 0x40, 0xf2, 0x08, 0xed, 0x59, 0x5d, 0xe2, 0xfb, 0x50, 0x73, 0xb2, 0xea, 0x49, 0x4a, 0xca, 0xde, 0x8d, 0xc5, 0xa4, 0x4e, 0xd7, 0x16, 0x2c, 0xfe, 0x7a, 0x70, 0x18, 0x24, 0x79, 0xdd, 0x2e, 0x0c, 0x93, 0x8f, 0x56, 0x53, 0x38, 0x57, 0x95, 0x6e, 0x56, 0xd7, 0x9c, 0x78, 0xfd, 0x10, 0x1d, 0xde, 0xcb, 0x1a, 0x96, 0x95, 0xa5, 0x6f, 0x18, 0xf6, 0xa8, 0x9b, 0x94, 0xc0, 0xd3, 0xdb, 0x47, 0x42, 0x9a, 0xfd, 0xde, 0x6b, 0x68, 0x28, 0x32, 0xbf, 0x4c, 0x0f, 0xb8, 0x49, 0xec, 0x7f, 0xaf, 0x72, 0x9c, 0xb5, 0x9d, 0x8e, 0x21, 0x9d, 0xad, 0x70, 0xb7, 0xc8, 0xe2, 0x57, 0xff, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2402 = { .name = "ecdsa_brainpoolp512r1_sha512_2402", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2402_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2402_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2402_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2403 for ECDSA, tcId is 283 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2403_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2403_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2403_sig[] = { 0x8d, 0x42, 0xb3, 0xbe, 0xd0, 0x20, 0x25, 0x93, 0xad, 0x44, 0xa9, 0x3b, 0x43, 0xeb, 0xac, 0x7e, 0xe0, 0xd9, 0xec, 0x1d, 0xbc, 0x5c, 0x54, 0x66, 0x19, 0xd5, 0xa9, 0xbf, 0xb5, 0xc9, 0xce, 0xe7, 0x44, 0xa4, 0x45, 0x87, 0x3f, 0x10, 0x53, 0x9b, 0x51, 0x54, 0x5e, 0xa7, 0x87, 0x64, 0x8d, 0xbc, 0x44, 0xba, 0x2d, 0x27, 0xf9, 0x1e, 0xee, 0xc5, 0x9d, 0xe9, 0x2f, 0x2d, 0x71, 0x60, 0x15, 0x53, 0x98, 0x5a, 0xc4, 0x97, 0x2c, 0x7b, 0x12, 0x23, 0x65, 0x6d, 0xfe, 0xc7, 0x96, 0xcd, 0x33, 0x52, 0xd9, 0x1d, 0x6c, 0x83, 0xce, 0x33, 0x0e, 0x1d, 0xcb, 0x1e, 0xc9, 0x81, 0x73, 0x99, 0x34, 0x0d, 0x7c, 0xa9, 0x74, 0x57, 0xaf, 0x51, 0xc1, 0x9c, 0x6f, 0xd0, 0x78, 0x7e, 0x69, 0x65, 0xd4, 0xf8, 0x5e, 0xde, 0x5c, 0x7f, 0x50, 0x75, 0x98, 0xb8, 0xbd, 0xd5, 0xc8, 0x08, 0xdb, 0x45, 0x9e, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2403 = { .name = "ecdsa_brainpoolp512r1_sha512_2403", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2403_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2403_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2403_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2404 for ECDSA, tcId is 284 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2404_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2404_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2404_sig[] = { 0x5b, 0x82, 0x6d, 0x16, 0x04, 0x0e, 0x44, 0x8d, 0xfb, 0x70, 0x19, 0x5d, 0xe1, 0x6e, 0x97, 0x45, 0x4b, 0x13, 0x3a, 0xeb, 0x10, 0x51, 0x37, 0x3d, 0x51, 0x11, 0xf1, 0x08, 0x14, 0xb7, 0xf4, 0xad, 0x17, 0x14, 0xb2, 0x5c, 0x0c, 0x56, 0x61, 0xef, 0xee, 0x43, 0xfa, 0x93, 0x29, 0xa4, 0xaf, 0x09, 0x60, 0x7e, 0xb6, 0x6c, 0x72, 0xb2, 0xbe, 0x2e, 0x21, 0xbb, 0x4d, 0x02, 0x29, 0xe3, 0xa1, 0xaf, 0x07, 0xf0, 0x0f, 0x39, 0x35, 0x56, 0x6f, 0x4c, 0xa1, 0x6e, 0x34, 0x6e, 0xf5, 0xac, 0x47, 0xb2, 0x95, 0x3f, 0xc8, 0xb5, 0xcc, 0x88, 0x70, 0xae, 0x63, 0x8c, 0x55, 0xfa, 0xde, 0x1b, 0x58, 0x6b, 0x37, 0xa1, 0x19, 0x01, 0x5f, 0xd7, 0xbe, 0x3a, 0x33, 0xfd, 0x39, 0x16, 0x55, 0x64, 0xf6, 0x11, 0x74, 0x35, 0xbc, 0x1a, 0x20, 0xbf, 0xd5, 0x74, 0x06, 0x60, 0x8b, 0x3b, 0x27, 0xa9, 0x1b, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2404 = { .name = "ecdsa_brainpoolp512r1_sha512_2404", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2404_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2404_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2404_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2405 for ECDSA, tcId is 285 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2405_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2405_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2405_sig[] = { 0x8f, 0x89, 0xdb, 0x5a, 0x6d, 0x6d, 0xc6, 0xfe, 0x96, 0xec, 0x5f, 0x95, 0x96, 0x0c, 0x2f, 0x03, 0xa6, 0xa0, 0x72, 0xe6, 0x44, 0xd1, 0x58, 0x24, 0x7d, 0x5b, 0x8b, 0x66, 0xe2, 0x34, 0x68, 0x34, 0xee, 0x11, 0xe5, 0xed, 0xe6, 0xbf, 0x9e, 0x8e, 0x02, 0x34, 0xa7, 0xf7, 0x5c, 0xe8, 0x64, 0x49, 0x14, 0xc5, 0x85, 0xe0, 0x95, 0x3d, 0x37, 0x1c, 0x36, 0x3e, 0x2f, 0x21, 0xfe, 0xaa, 0x27, 0x63, 0x66, 0x01, 0xd2, 0x28, 0xf4, 0xb5, 0x3d, 0xab, 0x15, 0x46, 0xeb, 0xf7, 0x67, 0x33, 0x60, 0xdb, 0xa5, 0xdc, 0x3d, 0x59, 0xc9, 0x53, 0xbf, 0x86, 0x7c, 0x75, 0x43, 0x25, 0xc0, 0xcf, 0xde, 0x85, 0xb6, 0x45, 0x05, 0xfc, 0x99, 0x59, 0x41, 0x92, 0x9b, 0x53, 0xc5, 0x56, 0x6b, 0x42, 0xf0, 0x34, 0xba, 0x1a, 0x09, 0xed, 0x96, 0xe1, 0x13, 0x96, 0x1a, 0x1a, 0x73, 0x57, 0xa2, 0x27, 0x93, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2405 = { .name = "ecdsa_brainpoolp512r1_sha512_2405", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2405_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2405_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2405_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2406 for ECDSA, tcId is 286 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2406_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2406_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2406_sig[] = { 0x7e, 0x61, 0x07, 0xbc, 0x6e, 0x5f, 0x0d, 0x09, 0x58, 0x78, 0x9e, 0x4b, 0x91, 0x20, 0x1c, 0xa1, 0x9d, 0x93, 0xc1, 0x2b, 0xc4, 0x19, 0x4c, 0x83, 0x16, 0xc2, 0x22, 0x44, 0x51, 0xf5, 0x74, 0x8b, 0xb6, 0xfb, 0x46, 0x49, 0x71, 0x06, 0xc6, 0x13, 0xb0, 0x7e, 0xfa, 0xac, 0x95, 0x4e, 0x2c, 0xcb, 0x21, 0x06, 0x20, 0x05, 0xb9, 0xef, 0x4e, 0xa7, 0x2c, 0xe4, 0x47, 0x1d, 0xaa, 0x5a, 0x3e, 0xa3, 0x7f, 0x18, 0x37, 0x82, 0x77, 0x27, 0x68, 0x5d, 0xe8, 0xc8, 0x86, 0x8d, 0x94, 0x25, 0xdb, 0x06, 0xe3, 0x3f, 0x67, 0x78, 0xb3, 0xb4, 0xd1, 0xe0, 0x8e, 0x5f, 0x73, 0xe2, 0x68, 0x04, 0xa1, 0x42, 0x72, 0x3a, 0x3d, 0x68, 0xa7, 0xd7, 0x5f, 0xdf, 0x82, 0x6e, 0x79, 0xf7, 0x91, 0xf7, 0xa6, 0xb0, 0xf8, 0x9a, 0x36, 0xe5, 0x79, 0xcd, 0xa9, 0x19, 0x6f, 0xdd, 0x9f, 0x64, 0x19, 0xf7, 0x1c, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2406 = { .name = "ecdsa_brainpoolp512r1_sha512_2406", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2406_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2406_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2406_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2407 for ECDSA, tcId is 287 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2407_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2407_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2407_sig[] = { 0x35, 0x39, 0x94, 0x4e, 0x52, 0xd0, 0xdb, 0x1f, 0xe5, 0xe9, 0xca, 0x3d, 0x4c, 0x8d, 0x93, 0x13, 0x9a, 0x2d, 0x5c, 0x85, 0xe5, 0x19, 0x60, 0xed, 0x68, 0xe8, 0xfb, 0x5f, 0x29, 0xcb, 0x10, 0x8f, 0xa1, 0x84, 0xfd, 0x66, 0x86, 0x4f, 0xed, 0x2b, 0xd9, 0x0e, 0x00, 0x17, 0x92, 0x5c, 0x5d, 0x54, 0x3d, 0x61, 0x8e, 0x28, 0x7d, 0xe4, 0x3d, 0x22, 0xf7, 0xa9, 0x4f, 0x17, 0x51, 0x4f, 0x85, 0xaa, 0x06, 0x0a, 0x37, 0xda, 0x27, 0x53, 0x92, 0x5c, 0x18, 0xba, 0x4b, 0x97, 0xc9, 0x5d, 0x16, 0xce, 0x57, 0x4c, 0xe9, 0x54, 0x2e, 0x91, 0x8b, 0x4e, 0xa2, 0xe7, 0xf3, 0x89, 0x0e, 0x72, 0x3a, 0x37, 0x5b, 0x0c, 0x7c, 0xcd, 0x49, 0x7c, 0xda, 0x6c, 0x24, 0x11, 0x15, 0x03, 0xff, 0x94, 0x8e, 0xe1, 0xb0, 0x97, 0x5b, 0x90, 0xb2, 0x1c, 0x07, 0x47, 0xf0, 0xb4, 0xbf, 0xd3, 0x54, 0xe2, 0xea, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2407 = { .name = "ecdsa_brainpoolp512r1_sha512_2407", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2407_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2407_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2407_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2408 for ECDSA, tcId is 288 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2408_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2408_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2408_sig[] = { 0x13, 0x39, 0xcc, 0x85, 0xb9, 0x10, 0xc8, 0x2c, 0x7d, 0x5a, 0x06, 0x04, 0x42, 0x71, 0x50, 0xe3, 0x25, 0xc4, 0x58, 0xcb, 0x2d, 0xe1, 0xcf, 0x27, 0x19, 0x45, 0x46, 0xdb, 0x13, 0xca, 0xb0, 0x56, 0xc0, 0x21, 0xf6, 0xa7, 0x8f, 0x55, 0x05, 0xe8, 0xbf, 0x68, 0x65, 0xf2, 0x9b, 0x36, 0xbf, 0x67, 0xa3, 0xc2, 0x30, 0x00, 0x61, 0x7e, 0x35, 0xf9, 0x2c, 0x87, 0x36, 0x85, 0x4c, 0x5d, 0x72, 0xa1, 0x80, 0x18, 0x93, 0x6e, 0x27, 0x84, 0x7e, 0xe6, 0x81, 0x9b, 0x10, 0x45, 0x85, 0x22, 0xd7, 0x89, 0x91, 0xcd, 0xe9, 0xd0, 0x8b, 0x5e, 0x85, 0xf2, 0xe3, 0x39, 0xba, 0xc6, 0xba, 0x9a, 0xfd, 0xba, 0x19, 0xa5, 0xc9, 0x9e, 0x21, 0x17, 0x75, 0x23, 0x45, 0xbd, 0xaa, 0x7a, 0x71, 0xbe, 0x57, 0xf0, 0x0e, 0x4a, 0x2d, 0x8d, 0xb0, 0x88, 0xf3, 0x50, 0x72, 0x18, 0x53, 0xf6, 0xea, 0x14, 0x40, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2408 = { .name = "ecdsa_brainpoolp512r1_sha512_2408", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2408_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2408_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2408_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2409 for ECDSA, tcId is 289 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2409_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2409_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2409_sig[] = { 0x0b, 0x62, 0xb7, 0x68, 0x86, 0x41, 0x2a, 0x3e, 0x92, 0x18, 0x0a, 0xda, 0x31, 0xe8, 0x6c, 0x28, 0xe2, 0x88, 0x65, 0x9e, 0xe7, 0x12, 0x51, 0xb5, 0xfc, 0xab, 0x69, 0xfb, 0xe3, 0xa3, 0xea, 0x7a, 0x9e, 0xcb, 0xe5, 0x13, 0xef, 0x2f, 0x7e, 0x09, 0x00, 0x73, 0x82, 0x50, 0xd2, 0x81, 0x8d, 0x25, 0x5b, 0x83, 0x8d, 0xc0, 0x92, 0xf0, 0x45, 0xfe, 0x5f, 0x90, 0xe9, 0x9a, 0x6f, 0xc4, 0x8c, 0x20, 0x75, 0x25, 0x5d, 0xeb, 0xf5, 0x53, 0x18, 0xa2, 0x65, 0x51, 0x1e, 0x3f, 0x7b, 0xdf, 0x64, 0x7c, 0x88, 0xdb, 0xce, 0x18, 0x5a, 0xe1, 0x39, 0x05, 0x0c, 0x43, 0x71, 0x54, 0xfc, 0x4d, 0xee, 0x27, 0x86, 0xc4, 0x40, 0xb4, 0xf6, 0x75, 0x28, 0xa1, 0xa3, 0x43, 0xc8, 0xf4, 0x20, 0x57, 0xe9, 0xbd, 0x22, 0x3d, 0xf6, 0x4c, 0xe7, 0x57, 0x08, 0x1d, 0xff, 0x7f, 0x16, 0xa7, 0x84, 0xef, 0x58, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2409 = { .name = "ecdsa_brainpoolp512r1_sha512_2409", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2409_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2409_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2409_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2410 for ECDSA, tcId is 290 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2410_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2410_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2410_sig[] = { 0x02, 0x51, 0x7c, 0xfd, 0xd2, 0x2c, 0x2b, 0xe4, 0xc6, 0x2f, 0xf7, 0x2f, 0x02, 0x42, 0xf8, 0x44, 0xcf, 0x13, 0x7f, 0x23, 0x0b, 0x41, 0xbd, 0x1b, 0x96, 0x84, 0x26, 0xd7, 0x5f, 0xd0, 0x1f, 0x2b, 0x46, 0x7a, 0x3d, 0x3d, 0xba, 0xe1, 0x56, 0xd1, 0x9e, 0xe3, 0x34, 0x98, 0x07, 0x0a, 0x67, 0x27, 0x94, 0x12, 0x99, 0x65, 0x06, 0x45, 0x14, 0x33, 0x75, 0x96, 0xd1, 0xbc, 0x66, 0x48, 0x1a, 0x1a, 0x1e, 0x40, 0x50, 0x9a, 0x67, 0x1f, 0xbf, 0x96, 0x38, 0xd1, 0xd2, 0xb2, 0x42, 0xf3, 0x04, 0x10, 0x96, 0xd6, 0xb5, 0x9d, 0x1e, 0xb7, 0x10, 0x72, 0x06, 0x86, 0x20, 0xfd, 0xf3, 0x19, 0x53, 0xb2, 0x0a, 0x4b, 0xde, 0xbf, 0xb0, 0x8d, 0x24, 0x8f, 0x0d, 0x7e, 0x34, 0xf0, 0x53, 0xe6, 0x34, 0xf4, 0x3a, 0xa4, 0x2a, 0x38, 0x63, 0xd7, 0x53, 0x14, 0x7d, 0xe7, 0x36, 0x8b, 0x28, 0xa7, 0x4d, 0x84, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2410 = { .name = "ecdsa_brainpoolp512r1_sha512_2410", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2410_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2410_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2410_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2411 for ECDSA, tcId is 291 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2411_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2411_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2411_sig[] = { 0x8f, 0xef, 0x6b, 0x52, 0xc4, 0xd6, 0x43, 0xfd, 0x9d, 0x5f, 0x28, 0xfd, 0x52, 0x04, 0xfc, 0x5b, 0x5b, 0x6a, 0x3e, 0x57, 0xe6, 0xdb, 0x9c, 0x8e, 0xef, 0x75, 0x14, 0x06, 0x89, 0x33, 0x37, 0x7a, 0x7f, 0x16, 0xa0, 0x69, 0xa9, 0x5b, 0xb6, 0xf6, 0x49, 0xdd, 0x33, 0x10, 0x92, 0x2a, 0x98, 0x22, 0x11, 0xf2, 0x42, 0x09, 0x3a, 0x23, 0xab, 0x44, 0xdf, 0x81, 0x0e, 0xb4, 0xd7, 0x44, 0xb0, 0x54, 0x5e, 0x38, 0x62, 0xa4, 0x2f, 0xe8, 0xa5, 0x60, 0x43, 0x2d, 0x5d, 0xe0, 0x42, 0xf9, 0x80, 0x61, 0x3e, 0x68, 0xf6, 0xb3, 0x44, 0x4d, 0x7d, 0x53, 0x52, 0x66, 0x00, 0xa5, 0x05, 0x99, 0x23, 0x71, 0xf6, 0xf7, 0x2d, 0xd1, 0xaa, 0x77, 0x5e, 0x58, 0xe2, 0x42, 0x12, 0xa0, 0xc2, 0x64, 0x39, 0xd2, 0xeb, 0x71, 0x73, 0x40, 0xfd, 0x53, 0x6d, 0x38, 0xf9, 0x14, 0x8d, 0x21, 0x36, 0x85, 0x0a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2411 = { .name = "ecdsa_brainpoolp512r1_sha512_2411", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2411_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2411_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2411_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2412 for ECDSA, tcId is 292 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2412_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2412_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2412_sig[] = { 0x14, 0xbe, 0x63, 0x6d, 0x9a, 0xa0, 0xaa, 0xcb, 0x84, 0xf1, 0xd7, 0xd0, 0xb8, 0x83, 0x72, 0xc0, 0x32, 0x26, 0x87, 0x76, 0x7d, 0x45, 0x23, 0x9d, 0x7b, 0x88, 0x37, 0xd7, 0x47, 0xd6, 0x0f, 0xc6, 0xcb, 0x0f, 0xa7, 0xe8, 0x97, 0xbb, 0xdb, 0x19, 0x19, 0x4c, 0x82, 0xde, 0xbd, 0xdb, 0x46, 0xdd, 0xd0, 0x94, 0xcb, 0x00, 0x1d, 0xdb, 0x7e, 0x02, 0x59, 0x23, 0x83, 0x5d, 0x7e, 0x0e, 0xed, 0xa4, 0x09, 0x0d, 0x62, 0x99, 0x7f, 0xb4, 0xff, 0x82, 0x89, 0x6d, 0x2e, 0x8a, 0x0a, 0xe2, 0x2c, 0xef, 0x6d, 0xac, 0xf1, 0x88, 0x9b, 0xef, 0x71, 0x80, 0x5d, 0xba, 0x0f, 0x70, 0x1d, 0x41, 0xac, 0x21, 0x98, 0x20, 0xe1, 0x5e, 0x91, 0x5e, 0x10, 0x51, 0x3d, 0x49, 0x1b, 0x6a, 0xa3, 0x08, 0xb3, 0x59, 0x06, 0xdc, 0x5d, 0x45, 0x19, 0x19, 0x28, 0xf5, 0x02, 0x56, 0x83, 0xbe, 0x8a, 0x3a, 0x9f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2412 = { .name = "ecdsa_brainpoolp512r1_sha512_2412", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2412_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2412_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2412_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2413 for ECDSA, tcId is 293 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2413_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2413_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2413_sig[] = { 0x9a, 0xf9, 0x8b, 0xee, 0x99, 0x11, 0x64, 0x0f, 0xb5, 0xd5, 0x8f, 0xa0, 0x80, 0x3e, 0x53, 0x93, 0xb7, 0x72, 0xfb, 0x0c, 0x86, 0x2e, 0xe9, 0xf8, 0x54, 0x5d, 0x9d, 0xad, 0xba, 0xfb, 0x1a, 0x6c, 0x73, 0xc8, 0x5b, 0x79, 0xf3, 0x9d, 0x11, 0x85, 0xf4, 0xb2, 0xc4, 0xbb, 0x54, 0xe5, 0x13, 0x17, 0xe2, 0x63, 0x3d, 0x50, 0xfc, 0x8f, 0x75, 0x88, 0x85, 0x04, 0x26, 0x8b, 0x84, 0xf4, 0x0e, 0x24, 0x87, 0xfb, 0x7c, 0x8a, 0x2d, 0x81, 0xf7, 0x22, 0x6d, 0xeb, 0xff, 0x31, 0xb4, 0xf0, 0xa2, 0x9a, 0x08, 0xf1, 0xf9, 0xa4, 0xc5, 0x0e, 0x56, 0x15, 0xb5, 0x70, 0x55, 0x5e, 0xf2, 0xcc, 0xa1, 0xdf, 0x2b, 0x70, 0x4e, 0x92, 0xe9, 0xb8, 0xad, 0xb4, 0x41, 0x89, 0xe6, 0x95, 0x53, 0xed, 0x79, 0xef, 0xfe, 0x31, 0x5b, 0xd4, 0x01, 0xd0, 0xb2, 0x32, 0x8c, 0xb0, 0x65, 0xcf, 0x10, 0xe1, 0x30, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2413 = { .name = "ecdsa_brainpoolp512r1_sha512_2413", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2413_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2413_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2413_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2414 for ECDSA, tcId is 294 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2414_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2414_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2414_sig[] = { 0xa6, 0x4a, 0x9d, 0xad, 0xf5, 0xb6, 0xa5, 0x70, 0x28, 0x04, 0x4e, 0x08, 0xd7, 0x88, 0x78, 0x4e, 0x07, 0xac, 0x98, 0xdf, 0xa1, 0xed, 0x23, 0x83, 0x48, 0xe4, 0x5e, 0x95, 0xd4, 0x4f, 0x63, 0x1d, 0x9f, 0x14, 0xab, 0xb9, 0x46, 0x43, 0xf8, 0x7d, 0x1c, 0xf3, 0xf9, 0xfe, 0xc5, 0xdc, 0x27, 0x20, 0xe4, 0x29, 0x64, 0x6c, 0x0e, 0xc7, 0x15, 0x1f, 0xb8, 0x99, 0x24, 0xcd, 0x43, 0x1c, 0x30, 0x73, 0x11, 0x5f, 0x65, 0x3a, 0x3d, 0x32, 0x7d, 0x93, 0x11, 0x8c, 0xdd, 0x24, 0xff, 0xff, 0x03, 0x9d, 0xa5, 0x16, 0xaf, 0xa2, 0x7f, 0x37, 0xc7, 0x87, 0x35, 0xc9, 0x85, 0x97, 0x3c, 0xfe, 0x55, 0x27, 0x5b, 0x61, 0x0d, 0x7b, 0xe2, 0x49, 0x69, 0xeb, 0x53, 0x17, 0x21, 0xa0, 0xa4, 0x86, 0x19, 0x4b, 0x6b, 0x88, 0x23, 0xd0, 0xd7, 0x0b, 0x0d, 0xc1, 0xfd, 0x4c, 0x76, 0x11, 0xc3, 0x28, 0x61, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2414 = { .name = "ecdsa_brainpoolp512r1_sha512_2414", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2414_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2414_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2414_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2415 for ECDSA, tcId is 295 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2415_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2415_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2415_sig[] = { 0x95, 0xd0, 0x81, 0xc0, 0x72, 0x8f, 0xee, 0x3f, 0x5b, 0x11, 0xa5, 0x93, 0x39, 0x58, 0x69, 0xaa, 0x34, 0x2c, 0x26, 0x0d, 0xfa, 0x05, 0xe5, 0x57, 0x53, 0x17, 0x15, 0x02, 0x36, 0x48, 0x2d, 0x00, 0xee, 0x80, 0xa6, 0xf0, 0xa3, 0xa2, 0x5c, 0x0c, 0x8e, 0x3a, 0x67, 0x90, 0x01, 0x4c, 0x67, 0x47, 0xd8, 0xb5, 0xdd, 0xb0, 0x81, 0x32, 0x8b, 0xd5, 0x3e, 0x4c, 0x64, 0x22, 0xc6, 0x23, 0xd7, 0x95, 0x98, 0x33, 0x4d, 0xdc, 0x2a, 0x1e, 0xd8, 0x87, 0xb2, 0x6f, 0xa2, 0x35, 0x99, 0x01, 0x2b, 0x31, 0xfb, 0xd5, 0xfa, 0x38, 0x4d, 0xb5, 0xc0, 0x90, 0x22, 0x33, 0xc1, 0xef, 0xe6, 0x1f, 0x85, 0xfc, 0xce, 0x09, 0xa9, 0xe7, 0xfc, 0x13, 0xfb, 0x02, 0x53, 0xc8, 0xcf, 0xce, 0xb8, 0x76, 0x23, 0x60, 0xee, 0x5d, 0x20, 0xe1, 0x7d, 0xeb, 0xbe, 0x84, 0xa1, 0xc8, 0xeb, 0x68, 0xdb, 0x7f, 0xfd, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2415 = { .name = "ecdsa_brainpoolp512r1_sha512_2415", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2415_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2415_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2415_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2416 for ECDSA, tcId is 296 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2416_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2416_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2416_sig[] = { 0x9d, 0xdd, 0x4a, 0xc3, 0x92, 0xe9, 0xb8, 0x39, 0x1d, 0x76, 0x6b, 0x6f, 0x5d, 0x26, 0xf1, 0x64, 0xef, 0x6f, 0x45, 0x52, 0xd7, 0x3f, 0x1e, 0xe9, 0xd0, 0x96, 0xb7, 0x7e, 0x3d, 0xcc, 0x3a, 0x42, 0x02, 0x35, 0x73, 0x15, 0x6c, 0x59, 0x54, 0x18, 0x7e, 0xbe, 0xcb, 0x2f, 0x60, 0xed, 0x7a, 0x01, 0x43, 0x98, 0x09, 0xdd, 0x8e, 0xba, 0x28, 0x6e, 0x53, 0x40, 0xee, 0xb7, 0xe1, 0x84, 0x59, 0x3d, 0x16, 0x6a, 0x4a, 0x2b, 0x9e, 0x0c, 0xee, 0xab, 0x82, 0x78, 0x3c, 0x1a, 0x7d, 0x62, 0x2d, 0xcf, 0x7b, 0xff, 0xc6, 0x9b, 0x85, 0xae, 0x41, 0xe5, 0xad, 0x9b, 0x55, 0x2b, 0xf3, 0xb6, 0x87, 0xa2, 0x28, 0xcf, 0xf6, 0x44, 0xd5, 0x49, 0x7b, 0xa0, 0xa1, 0x64, 0x4c, 0x03, 0x91, 0x62, 0xec, 0xdf, 0xb0, 0x95, 0xd2, 0x3d, 0xda, 0x25, 0xef, 0xe1, 0x4f, 0x48, 0x03, 0x2c, 0x6d, 0x09, 0xca, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2416 = { .name = "ecdsa_brainpoolp512r1_sha512_2416", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2416_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2416_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2416_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2417 for ECDSA, tcId is 297 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2417_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2417_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2417_sig[] = { 0x7d, 0xb0, 0xfb, 0xdd, 0xcf, 0x43, 0x7e, 0x25, 0x80, 0x4b, 0xfa, 0x6d, 0x47, 0x60, 0x07, 0xbb, 0x2e, 0x49, 0x13, 0x85, 0x27, 0xff, 0x27, 0xd7, 0x59, 0xd0, 0x5c, 0x0b, 0x1a, 0x3d, 0xad, 0xa2, 0x32, 0x7c, 0x49, 0x81, 0x32, 0x00, 0xcc, 0x24, 0xfd, 0x81, 0xf0, 0xde, 0xef, 0xb6, 0x06, 0x13, 0x14, 0xd0, 0x68, 0x29, 0x02, 0x4f, 0x44, 0x64, 0x59, 0x1f, 0x52, 0x0d, 0x5c, 0xbd, 0x9d, 0xae, 0x17, 0x53, 0xcb, 0xe7, 0xf6, 0xd1, 0x8e, 0x8f, 0xc2, 0x26, 0xa9, 0x50, 0x38, 0x5a, 0x43, 0x85, 0x8d, 0xdd, 0xdf, 0xba, 0x4b, 0x57, 0xc5, 0xc0, 0x7d, 0x58, 0x1f, 0x51, 0xcb, 0xf5, 0xc8, 0xf9, 0x37, 0x81, 0xb4, 0x8c, 0xcc, 0x88, 0x7c, 0x03, 0x9f, 0xcd, 0xec, 0xd6, 0xe6, 0x5e, 0x3e, 0x59, 0x48, 0x94, 0xc6, 0x78, 0x75, 0xed, 0x89, 0xe8, 0x6c, 0x44, 0xe5, 0x2d, 0x65, 0x6c, 0x34, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2417 = { .name = "ecdsa_brainpoolp512r1_sha512_2417", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2417_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2417_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2417_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2418 for ECDSA, tcId is 298 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2418_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2418_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2418_sig[] = { 0x89, 0x86, 0xb0, 0xea, 0x9c, 0x57, 0xe0, 0x37, 0x96, 0x0e, 0x76, 0xd8, 0xb5, 0x39, 0xaf, 0xc7, 0x14, 0xcc, 0x3a, 0xdc, 0x90, 0x39, 0x4b, 0x96, 0xbc, 0xfa, 0x3f, 0x7f, 0xbe, 0xad, 0x4f, 0xc5, 0x85, 0x13, 0x3e, 0x4f, 0x61, 0xb7, 0xce, 0x3e, 0xdf, 0xf0, 0x93, 0xb9, 0x8c, 0x25, 0x7d, 0xbb, 0xb4, 0x97, 0xf8, 0x6d, 0xbf, 0x46, 0x7f, 0x1a, 0xed, 0x8d, 0x7a, 0x7d, 0xbf, 0xb4, 0x46, 0x32, 0x9e, 0x7d, 0x1f, 0xa0, 0x9c, 0xcb, 0x4b, 0x4d, 0x49, 0xa2, 0x46, 0x3f, 0x12, 0xa9, 0xf7, 0x60, 0xd3, 0xcc, 0x0b, 0xe3, 0x8e, 0x40, 0x9a, 0x35, 0x21, 0x72, 0x3e, 0x6f, 0x48, 0x39, 0x80, 0x01, 0x90, 0x11, 0x53, 0xe1, 0x41, 0xc1, 0x21, 0x50, 0x0c, 0x8b, 0xa6, 0x89, 0x89, 0x6e, 0x2c, 0x3c, 0x88, 0x37, 0x67, 0x37, 0x89, 0x20, 0x37, 0x5c, 0xb5, 0x2f, 0x0c, 0xbe, 0x5a, 0xe9, 0x81, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2418 = { .name = "ecdsa_brainpoolp512r1_sha512_2418", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2418_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2418_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2418_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2419 for ECDSA, tcId is 299 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2419_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2419_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2419_sig[] = { 0x75, 0xdf, 0xf0, 0xfc, 0x67, 0x96, 0x4d, 0x57, 0xff, 0x01, 0x3e, 0x4e, 0xb8, 0xa7, 0xd3, 0x56, 0xb9, 0xf4, 0x08, 0xbe, 0x6f, 0x5a, 0xed, 0x81, 0x85, 0x46, 0xb0, 0x64, 0x10, 0x22, 0x70, 0xa8, 0x14, 0x7f, 0x3a, 0xb7, 0x8b, 0x94, 0x32, 0x7b, 0x60, 0x23, 0x2f, 0xe0, 0x86, 0x22, 0x2f, 0x7e, 0xe7, 0xc0, 0x27, 0xc6, 0xa2, 0xf8, 0x56, 0x46, 0x79, 0x22, 0x15, 0x6c, 0xd0, 0x0c, 0x52, 0x46, 0x59, 0x72, 0x54, 0x41, 0x17, 0x56, 0x72, 0x21, 0xcd, 0x67, 0x57, 0x54, 0x28, 0xc5, 0xc6, 0x1e, 0xdf, 0xb2, 0x28, 0xb1, 0x31, 0x46, 0x49, 0x27, 0x65, 0x7e, 0x45, 0xae, 0x8e, 0x55, 0x62, 0x5c, 0x87, 0x4c, 0x46, 0x97, 0x8c, 0x7d, 0xd4, 0x81, 0xd2, 0xdb, 0x8e, 0xe9, 0xca, 0xbd, 0x1a, 0x61, 0xbc, 0x24, 0x47, 0xce, 0xd2, 0xff, 0x9a, 0x72, 0xed, 0xe1, 0x22, 0xda, 0xbc, 0x6d, 0x9c, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2419 = { .name = "ecdsa_brainpoolp512r1_sha512_2419", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2419_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2419_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2419_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2420 for ECDSA, tcId is 300 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2420_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2420_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2420_sig[] = { 0xa2, 0xce, 0x4a, 0x96, 0x61, 0xc7, 0x1f, 0x7e, 0xde, 0x80, 0xc1, 0x67, 0xc6, 0x75, 0x86, 0x0c, 0xf6, 0x8d, 0x7e, 0xf5, 0x40, 0x03, 0x12, 0xf2, 0xae, 0x05, 0x0c, 0x41, 0x2d, 0xdd, 0xdd, 0x88, 0x69, 0xce, 0x09, 0x3b, 0x2e, 0x11, 0xe3, 0x84, 0x95, 0x24, 0x5d, 0x04, 0x25, 0x2e, 0x44, 0x12, 0x9e, 0x99, 0x45, 0x36, 0x43, 0x52, 0x10, 0xe3, 0xb7, 0xd1, 0xeb, 0xb0, 0xc0, 0x15, 0xba, 0xc5, 0x69, 0x32, 0x85, 0x5e, 0xfe, 0xcc, 0x41, 0x21, 0x5d, 0x2c, 0xaf, 0x8b, 0xbe, 0xd6, 0xf0, 0xa2, 0xd8, 0x06, 0xd2, 0xbe, 0x34, 0x85, 0x76, 0x0d, 0xfa, 0x8c, 0x88, 0x17, 0x95, 0x81, 0x47, 0xe2, 0x6f, 0x6f, 0x6b, 0xfd, 0x91, 0xf0, 0x87, 0x4e, 0x14, 0x49, 0xc9, 0x74, 0x56, 0x53, 0x48, 0x8c, 0x06, 0x8a, 0xb8, 0x0f, 0xd9, 0x92, 0x27, 0xb5, 0xa7, 0x9c, 0x17, 0xfd, 0x26, 0x6b, 0x7b, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2420 = { .name = "ecdsa_brainpoolp512r1_sha512_2420", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2420_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2420_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2420_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2421 for ECDSA, tcId is 301 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2421_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2421_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2421_sig[] = { 0x1b, 0x60, 0x26, 0x3f, 0x05, 0xe2, 0xe8, 0x18, 0xf6, 0x79, 0x41, 0xb1, 0xb5, 0xf5, 0xe8, 0x66, 0x8d, 0xbb, 0xa5, 0x1a, 0xaf, 0xc4, 0xdf, 0xdf, 0x9b, 0x49, 0x97, 0x9a, 0x80, 0xae, 0x0c, 0x51, 0xf2, 0xb1, 0xb2, 0x88, 0x24, 0xfd, 0x9d, 0x4b, 0x0a, 0x2d, 0x32, 0xb7, 0xe6, 0xf6, 0xe3, 0xea, 0xc5, 0x80, 0x59, 0x07, 0x52, 0xe1, 0x71, 0xbf, 0x1d, 0xed, 0x04, 0xda, 0x54, 0x17, 0xae, 0x29, 0x7a, 0xaf, 0xf6, 0x36, 0x85, 0xf5, 0x0e, 0x01, 0xfb, 0xb2, 0xd7, 0x27, 0xac, 0xa6, 0x63, 0x55, 0xc7, 0xf5, 0x24, 0xb3, 0xb0, 0xb7, 0xc5, 0x23, 0x01, 0xcb, 0x9b, 0x5a, 0xea, 0xa2, 0xb6, 0x23, 0x85, 0x42, 0x7c, 0xc6, 0xaa, 0xc1, 0x26, 0xe1, 0x65, 0x2f, 0xe0, 0xe6, 0x2c, 0xcb, 0x14, 0x79, 0xb1, 0xa4, 0x8a, 0xc7, 0xdd, 0x81, 0x73, 0xd7, 0x54, 0xd0, 0x6f, 0x50, 0x5d, 0xd4, 0x43, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2421 = { .name = "ecdsa_brainpoolp512r1_sha512_2421", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2421_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2421_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2421_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2422 for ECDSA, tcId is 302 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2422_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2422_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2422_sig[] = { 0x86, 0x03, 0x9c, 0x7f, 0x13, 0x94, 0x31, 0xe6, 0x64, 0x8b, 0xeb, 0xeb, 0x5e, 0xac, 0xa3, 0xda, 0xc0, 0x7c, 0xe8, 0x07, 0xb5, 0x1c, 0x68, 0xe7, 0x59, 0x01, 0x20, 0xfa, 0xae, 0xe7, 0xfa, 0xe4, 0x28, 0x0b, 0x33, 0xb1, 0xa4, 0xdc, 0x97, 0x92, 0x01, 0x82, 0x3b, 0x31, 0xf1, 0x50, 0xef, 0x2d, 0x02, 0x85, 0xa4, 0x58, 0x86, 0x62, 0xb7, 0xc8, 0x7e, 0x50, 0x15, 0x5d, 0x40, 0x62, 0x74, 0xa7, 0x5e, 0xd7, 0xcb, 0xcb, 0x6b, 0xa0, 0x8d, 0x0a, 0x20, 0x51, 0x4f, 0x80, 0x15, 0x03, 0xca, 0x84, 0xb4, 0xa4, 0x09, 0xce, 0x8f, 0x55, 0x65, 0x16, 0x43, 0x01, 0x39, 0x99, 0xf8, 0xd3, 0xff, 0x65, 0xa9, 0xb0, 0xbf, 0x2a, 0x7c, 0x52, 0xf8, 0x4d, 0xd2, 0x94, 0x5d, 0x22, 0x67, 0x7f, 0xa4, 0x62, 0x27, 0xa6, 0x4c, 0x73, 0x59, 0x18, 0x0f, 0xbb, 0x4b, 0x15, 0x03, 0x3e, 0xe8, 0xa8, 0xab, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2422 = { .name = "ecdsa_brainpoolp512r1_sha512_2422", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2422_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2422_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2422_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2423 for ECDSA, tcId is 303 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2423_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2423_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2423_sig[] = { 0x70, 0x16, 0x46, 0x8a, 0x36, 0xf8, 0x55, 0xab, 0xbb, 0xb4, 0xd4, 0xd8, 0x59, 0x93, 0x7f, 0x5f, 0xae, 0x56, 0xa4, 0xda, 0x2c, 0x4d, 0x27, 0x19, 0xfa, 0x77, 0xe1, 0x11, 0xa5, 0x6c, 0xd3, 0xa2, 0x1e, 0x92, 0x67, 0x12, 0x01, 0x27, 0xdb, 0x5a, 0x67, 0xaf, 0xe2, 0xb3, 0x2c, 0x7b, 0x4c, 0x3b, 0xfe, 0x15, 0xd0, 0xad, 0x44, 0xc6, 0x0c, 0x40, 0x89, 0xa4, 0xfe, 0x4f, 0xa5, 0x3c, 0xdc, 0xa9, 0x7f, 0xcb, 0x61, 0xda, 0x56, 0x1c, 0xb7, 0xcb, 0x8a, 0xba, 0x8c, 0x07, 0xe7, 0x41, 0x74, 0x23, 0xbe, 0xd2, 0xe9, 0x97, 0x84, 0xb5, 0xf6, 0x46, 0x99, 0x00, 0x14, 0xe6, 0x87, 0x25, 0x52, 0xa0, 0x7e, 0x10, 0x34, 0xd8, 0x0e, 0x69, 0xb3, 0x19, 0xb7, 0xcd, 0x2c, 0x7b, 0x15, 0x75, 0x46, 0x32, 0x3d, 0xf4, 0xa2, 0xab, 0x84, 0x33, 0xc6, 0x23, 0xeb, 0x0c, 0x77, 0xd4, 0x15, 0x9f, 0x01, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2423 = { .name = "ecdsa_brainpoolp512r1_sha512_2423", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2423_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2423_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2423_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2424 for ECDSA, tcId is 304 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2424_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2424_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2424_sig[] = { 0x43, 0xac, 0xf8, 0x4a, 0x07, 0x6d, 0x74, 0x0e, 0x99, 0x7b, 0xca, 0xa3, 0x5d, 0xec, 0x9e, 0x75, 0xdf, 0x3c, 0x0c, 0x4f, 0x25, 0xb2, 0x07, 0x5d, 0xaf, 0x07, 0x7d, 0xe6, 0x0b, 0x5b, 0x9f, 0xb7, 0xf7, 0x84, 0xa6, 0x02, 0x76, 0x99, 0xa2, 0x16, 0xa0, 0x47, 0xa2, 0x13, 0x5a, 0x3b, 0x53, 0x0f, 0xd8, 0xfa, 0x00, 0x77, 0x33, 0x8d, 0x4d, 0xc8, 0x5f, 0xbb, 0xaa, 0xce, 0xb6, 0x64, 0x10, 0x22, 0x80, 0x7a, 0x3c, 0xdf, 0xc0, 0xf3, 0x3b, 0xbe, 0x7a, 0x5a, 0x52, 0xf7, 0xe4, 0x78, 0x7c, 0x67, 0x34, 0x0d, 0x95, 0x8b, 0xaf, 0x0d, 0x95, 0x7d, 0x01, 0x5c, 0x73, 0xc9, 0xc8, 0xd0, 0xb6, 0x0f, 0x87, 0xa4, 0x26, 0xbf, 0xd2, 0xc9, 0x20, 0x9f, 0xa7, 0xf5, 0xfa, 0xb1, 0xb0, 0x5a, 0x88, 0x60, 0x85, 0x71, 0x71, 0x40, 0x07, 0x14, 0x08, 0x1b, 0x6f, 0x6e, 0x73, 0x3f, 0x38, 0x0c, 0x39, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2424 = { .name = "ecdsa_brainpoolp512r1_sha512_2424", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2424_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2424_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2424_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2425 for ECDSA, tcId is 305 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2425_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2425_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2425_sig[] = { 0x85, 0x1f, 0xa8, 0x85, 0x95, 0x49, 0x8d, 0xd5, 0xa5, 0xfb, 0x5a, 0x07, 0x10, 0xe0, 0x2f, 0xee, 0x1a, 0x02, 0x3e, 0x4b, 0x4a, 0xac, 0xfe, 0xba, 0x03, 0xf7, 0xc4, 0xc1, 0x4a, 0x8f, 0xb4, 0x33, 0x93, 0x4e, 0xa2, 0x33, 0xe5, 0xd2, 0x7d, 0xe1, 0x55, 0xda, 0xca, 0x4d, 0x4e, 0x38, 0x43, 0xf0, 0xf2, 0xcd, 0x58, 0x61, 0x70, 0x72, 0x8a, 0x2d, 0x4c, 0xe6, 0x52, 0x23, 0x58, 0x0c, 0xec, 0x66, 0x17, 0x31, 0xb6, 0xc0, 0x02, 0x00, 0xf4, 0x47, 0x4d, 0x4e, 0xa2, 0x04, 0x67, 0x75, 0xd9, 0x35, 0x0e, 0x45, 0xf2, 0xab, 0xd4, 0x5b, 0xbc, 0xc1, 0x16, 0x3c, 0x77, 0xde, 0xae, 0xaf, 0xc9, 0x42, 0x10, 0x98, 0x5b, 0x74, 0x66, 0xcf, 0x61, 0xbc, 0x78, 0xd5, 0x9b, 0xdd, 0x24, 0x39, 0xaa, 0x1c, 0x7d, 0xda, 0xc7, 0x1e, 0x00, 0x72, 0xd7, 0x3d, 0x87, 0x6a, 0x14, 0xf3, 0x26, 0x1a, 0xf7, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2425 = { .name = "ecdsa_brainpoolp512r1_sha512_2425", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2425_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2425_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2425_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2426 for ECDSA, tcId is 306 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2426_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2426_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2426_sig[] = { 0x78, 0x45, 0x6d, 0x35, 0x83, 0xb9, 0x3f, 0xba, 0x20, 0x9d, 0x6f, 0xaf, 0x73, 0x63, 0xf8, 0xe8, 0x78, 0x66, 0xcc, 0xe8, 0xf1, 0xa8, 0xf7, 0x56, 0x52, 0x0d, 0x5f, 0xc7, 0xd2, 0x2d, 0x36, 0x94, 0x08, 0x75, 0x33, 0x73, 0xa9, 0x99, 0xc8, 0xe5, 0xba, 0x58, 0x17, 0xc6, 0x1f, 0xf9, 0xa3, 0xa0, 0xa9, 0x80, 0x41, 0x21, 0xa0, 0x01, 0x04, 0xc7, 0xc1, 0x5d, 0xda, 0x9b, 0x60, 0xbd, 0x74, 0x4d, 0x67, 0xe1, 0x49, 0xae, 0x6a, 0x20, 0x6d, 0x3d, 0xee, 0xee, 0xaf, 0x78, 0xf9, 0x0f, 0xc5, 0xfc, 0x69, 0xc0, 0xc1, 0x01, 0x27, 0x35, 0x12, 0xad, 0x42, 0xd5, 0xfd, 0x39, 0x93, 0xba, 0xbc, 0x67, 0x1d, 0xe9, 0xc4, 0xaa, 0xc0, 0x15, 0x31, 0x0b, 0xe8, 0xeb, 0x6d, 0x83, 0x12, 0x1b, 0x97, 0x09, 0xb9, 0x3c, 0xd4, 0x37, 0x63, 0xbf, 0xba, 0x9d, 0xd8, 0x39, 0x76, 0xa9, 0x1a, 0x75, 0xf5, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2426 = { .name = "ecdsa_brainpoolp512r1_sha512_2426", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2426_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2426_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2426_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2427 for ECDSA, tcId is 307 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2427_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2427_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2427_sig[] = { 0x5f, 0xfc, 0x31, 0xa2, 0xe8, 0x16, 0x87, 0x48, 0xc6, 0x29, 0xe0, 0x69, 0x01, 0x61, 0xcc, 0x62, 0x49, 0x68, 0x0c, 0x03, 0xde, 0x5c, 0xba, 0xd4, 0x4b, 0x12, 0x1a, 0xa8, 0x56, 0xf5, 0x57, 0xcf, 0x9a, 0x84, 0x98, 0x3e, 0x49, 0x3f, 0x40, 0xe2, 0xc0, 0xf5, 0x98, 0x73, 0x8b, 0x0f, 0x6e, 0xc8, 0x57, 0x5b, 0x66, 0xe4, 0xc4, 0xe5, 0x9b, 0x6b, 0x63, 0x99, 0x60, 0x58, 0xe4, 0xac, 0xa2, 0xaa, 0x41, 0xe0, 0x85, 0x7e, 0x6e, 0x95, 0x9c, 0x55, 0xbd, 0x80, 0x76, 0x29, 0x36, 0x1a, 0xc4, 0x1d, 0xde, 0x64, 0x0f, 0xea, 0xcd, 0xc2, 0x12, 0xd7, 0xcd, 0x2e, 0x1d, 0xcb, 0x9a, 0x3a, 0x9a, 0x4e, 0x93, 0x3c, 0xf8, 0xe9, 0x1f, 0xc7, 0xb1, 0x25, 0x7b, 0x7a, 0x4f, 0x96, 0x96, 0x28, 0x3e, 0x06, 0xe3, 0x2f, 0x97, 0x69, 0x87, 0xdf, 0x86, 0xda, 0x2c, 0x87, 0x97, 0x8b, 0x34, 0xcc, 0x5e, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2427 = { .name = "ecdsa_brainpoolp512r1_sha512_2427", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2427_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2427_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2427_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2428 for ECDSA, tcId is 308 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2428_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2428_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2428_sig[] = { 0x31, 0x49, 0x2b, 0x08, 0x88, 0xf6, 0xff, 0xf5, 0x2d, 0x24, 0x7b, 0xee, 0x17, 0x34, 0xc8, 0x42, 0x5c, 0x35, 0x60, 0x6c, 0x9d, 0x8c, 0xc6, 0x3d, 0xf3, 0x82, 0xdc, 0xe5, 0x22, 0x4c, 0x8d, 0x55, 0xff, 0x2b, 0xa6, 0xcf, 0xa2, 0x9d, 0x09, 0x50, 0x01, 0x24, 0xe8, 0x57, 0x6a, 0xbb, 0xd0, 0xd7, 0x10, 0xba, 0xeb, 0x09, 0x9e, 0xfe, 0xf0, 0x2f, 0xe8, 0x10, 0xd4, 0xa1, 0x9d, 0xc2, 0xca, 0x44, 0x24, 0xd3, 0xb3, 0x20, 0xde, 0xf3, 0x94, 0x3a, 0xc8, 0x56, 0x68, 0x0e, 0x00, 0x89, 0x1c, 0x28, 0xda, 0x01, 0x18, 0x40, 0xaf, 0x29, 0xf4, 0xf2, 0xc8, 0x88, 0x4a, 0x02, 0x24, 0x63, 0xa1, 0xda, 0x9d, 0xbc, 0xcb, 0x11, 0xbd, 0x4b, 0x72, 0x0e, 0x72, 0xb9, 0xaf, 0xa8, 0xb6, 0xb8, 0x71, 0xa8, 0x6f, 0x12, 0xf8, 0x75, 0xcc, 0x1c, 0x09, 0x07, 0x7f, 0xcc, 0x15, 0xa9, 0x0f, 0x40, 0x2a, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2428 = { .name = "ecdsa_brainpoolp512r1_sha512_2428", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2428_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2428_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2428_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2429 for ECDSA, tcId is 309 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2429_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2429_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2429_sig[] = { 0x8e, 0xe3, 0xad, 0x5b, 0x61, 0xde, 0x2a, 0x1e, 0x3a, 0x10, 0xaa, 0xa2, 0xb5, 0xb7, 0xc1, 0xf9, 0xf7, 0x90, 0xeb, 0xcd, 0x11, 0x0a, 0xfd, 0xcc, 0x08, 0xac, 0x9b, 0x70, 0xfe, 0x75, 0x30, 0xfd, 0xa9, 0xce, 0x94, 0xe4, 0x40, 0x58, 0x74, 0x0e, 0x17, 0xb7, 0x30, 0x83, 0x31, 0xdd, 0xb0, 0xce, 0xb0, 0xbc, 0x69, 0xb9, 0x49, 0x44, 0x21, 0x22, 0x71, 0x35, 0x82, 0xe4, 0x94, 0x1a, 0xec, 0xd3, 0x32, 0x5d, 0xfe, 0xfb, 0x8f, 0x46, 0x2d, 0x5e, 0x7d, 0xc4, 0x12, 0x4e, 0xf0, 0x71, 0x9f, 0xef, 0x76, 0x49, 0xd4, 0x70, 0xf3, 0xf1, 0x55, 0x51, 0x72, 0x48, 0x4b, 0x03, 0x04, 0xe7, 0x5b, 0xa1, 0x22, 0x80, 0x2d, 0x1a, 0x85, 0x97, 0xb4, 0x62, 0xb3, 0x45, 0xf3, 0x4e, 0x17, 0xdf, 0x4a, 0x3c, 0x25, 0xea, 0xea, 0x26, 0x9e, 0xa1, 0x1e, 0xf5, 0xb0, 0x42, 0x44, 0x0b, 0x5c, 0xab, 0xb7, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2429 = { .name = "ecdsa_brainpoolp512r1_sha512_2429", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2429_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2429_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2429_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2430 for ECDSA, tcId is 310 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2430_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2430_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2430_sig[] = { 0x55, 0x6b, 0x51, 0x39, 0x02, 0x29, 0x14, 0x50, 0xe9, 0xa2, 0xb1, 0x26, 0xb8, 0x58, 0xe1, 0xe2, 0xbb, 0x0a, 0x23, 0xe2, 0xee, 0x90, 0x46, 0x77, 0xd9, 0xe5, 0xea, 0xc8, 0x8a, 0x25, 0xf0, 0x14, 0x08, 0xb8, 0xf5, 0x12, 0xd9, 0x13, 0x52, 0xc4, 0x3c, 0x51, 0x9d, 0x9d, 0x74, 0x57, 0x0b, 0x3d, 0x78, 0x36, 0x6d, 0xf4, 0x37, 0xa4, 0x29, 0x8b, 0x31, 0x1a, 0x39, 0xa6, 0x3c, 0x44, 0x2a, 0xbd, 0x7b, 0x84, 0x26, 0x25, 0x87, 0x89, 0x97, 0x1c, 0x56, 0xc5, 0x3d, 0x99, 0x7d, 0xcf, 0xa1, 0x27, 0x05, 0x43, 0xbc, 0x9f, 0x7c, 0x42, 0xca, 0x2e, 0xa2, 0xfa, 0xc0, 0x88, 0x52, 0xc4, 0x72, 0xbb, 0x2b, 0x28, 0x4a, 0xab, 0x59, 0xa4, 0xba, 0xaf, 0x0f, 0x2c, 0x98, 0x6a, 0x2c, 0x68, 0xfd, 0x3e, 0x6f, 0xc9, 0x1f, 0x1d, 0x28, 0xbe, 0x9b, 0x75, 0x77, 0xf7, 0x78, 0x4c, 0x58, 0x7f, 0x37, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2430 = { .name = "ecdsa_brainpoolp512r1_sha512_2430", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2430_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2430_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2430_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2431 for ECDSA, tcId is 311 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2431_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2431_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2431_sig[] = { 0x60, 0x55, 0x7b, 0x79, 0x3e, 0xfc, 0x6f, 0xd8, 0xe2, 0x2f, 0x6f, 0xb8, 0x80, 0xb9, 0xb2, 0x4f, 0x4c, 0xe9, 0x5b, 0x09, 0x0f, 0x69, 0x4f, 0xab, 0x28, 0x66, 0xbc, 0x18, 0xdd, 0x85, 0xed, 0x5f, 0x47, 0x9f, 0xa8, 0x96, 0xd8, 0x40, 0x92, 0xda, 0xdc, 0xb4, 0xb9, 0x68, 0x6a, 0xd8, 0x07, 0x4d, 0x69, 0xbe, 0x84, 0x29, 0xea, 0xad, 0x63, 0xd0, 0x3c, 0x63, 0xc6, 0x21, 0x7f, 0xd7, 0xcc, 0x71, 0x78, 0x19, 0x87, 0x9f, 0x51, 0x05, 0xf3, 0x0c, 0xe8, 0xef, 0xd8, 0x7c, 0x04, 0x42, 0x79, 0xae, 0x9e, 0xac, 0x32, 0x55, 0x32, 0x7d, 0x9a, 0x8b, 0x08, 0x3e, 0x9d, 0xcd, 0xbb, 0xda, 0x1e, 0x01, 0xec, 0xbc, 0x9e, 0xa6, 0x90, 0xbf, 0xab, 0x77, 0x1b, 0x63, 0x31, 0x8a, 0x96, 0x49, 0x42, 0xf4, 0x57, 0x78, 0x47, 0xf5, 0x71, 0xb6, 0x79, 0x36, 0x33, 0x11, 0xce, 0x1b, 0xd2, 0x0a, 0x2a, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2431 = { .name = "ecdsa_brainpoolp512r1_sha512_2431", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2431_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2431_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2431_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2432 for ECDSA, tcId is 312 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2432_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2432_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2432_sig[] = { 0x96, 0xa8, 0xb7, 0x36, 0xb4, 0xd1, 0xc2, 0xe4, 0x01, 0x32, 0xb0, 0xc1, 0xdc, 0x35, 0x1c, 0x70, 0x0b, 0x62, 0xdb, 0x81, 0xe8, 0xbb, 0x39, 0xaa, 0x71, 0x7a, 0x1e, 0xc0, 0x25, 0x8e, 0xb9, 0x2d, 0xa8, 0x19, 0xdf, 0x01, 0x17, 0xa7, 0x04, 0x7e, 0x6c, 0x33, 0x54, 0x9d, 0x38, 0x48, 0xd6, 0xee, 0xa3, 0xf7, 0x25, 0xaa, 0x39, 0xb0, 0x32, 0x22, 0x46, 0x3f, 0xf2, 0x46, 0xe8, 0x96, 0x64, 0x21, 0x6b, 0xb7, 0xc1, 0xe5, 0xfd, 0xe9, 0x8b, 0x5e, 0xab, 0x97, 0x61, 0x93, 0x68, 0x2c, 0xea, 0x86, 0x48, 0xdf, 0x80, 0xa6, 0x49, 0xc2, 0xad, 0x68, 0xe0, 0xb2, 0xed, 0xa5, 0xe2, 0xbe, 0xe9, 0xaa, 0x9b, 0x77, 0x3f, 0x4d, 0x62, 0x48, 0x6e, 0xdb, 0xb0, 0x9e, 0xcf, 0x43, 0x4c, 0x1a, 0xe0, 0xdb, 0xa2, 0x73, 0xf6, 0x8b, 0xfa, 0x0f, 0x98, 0x5c, 0xed, 0x5d, 0x7b, 0x01, 0x20, 0xed, 0x88, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2432 = { .name = "ecdsa_brainpoolp512r1_sha512_2432", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2432_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2432_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2432_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2433 for ECDSA, tcId is 313 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2433_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2433_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2433_sig[] = { 0x4d, 0x9d, 0x07, 0xd3, 0xa4, 0x5f, 0x1c, 0x91, 0x36, 0x34, 0x71, 0x3d, 0x7b, 0xa7, 0x4f, 0xfb, 0xd3, 0xcd, 0x11, 0x4a, 0xe7, 0x5f, 0x17, 0x8f, 0xe7, 0xac, 0x7d, 0xef, 0xce, 0x73, 0x14, 0x81, 0x8b, 0x61, 0x67, 0x76, 0x0c, 0xb6, 0xe7, 0xd0, 0xa2, 0x4f, 0x42, 0x7d, 0x8e, 0xee, 0x60, 0x12, 0xb5, 0x2c, 0x68, 0x38, 0x83, 0xbd, 0x97, 0xe3, 0x51, 0x40, 0x5c, 0x93, 0x7e, 0x4f, 0x6e, 0xda, 0x27, 0xbc, 0xb6, 0x29, 0xe3, 0x10, 0x66, 0xdd, 0x6a, 0x4c, 0x65, 0x43, 0x2d, 0x39, 0xc2, 0x5a, 0xdd, 0x00, 0xbf, 0xa3, 0x69, 0xd4, 0x8b, 0x0e, 0x48, 0x20, 0xa1, 0x9f, 0x08, 0x1e, 0x9e, 0xda, 0x97, 0x78, 0x75, 0x63, 0x6a, 0x8c, 0xf9, 0x84, 0x01, 0x22, 0xd5, 0xe1, 0xbb, 0x3c, 0xea, 0x5f, 0xef, 0xe0, 0x20, 0x3f, 0x60, 0x16, 0x16, 0xd6, 0xae, 0xc8, 0x20, 0xa1, 0x58, 0x05, 0x90, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2433 = { .name = "ecdsa_brainpoolp512r1_sha512_2433", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2433_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2433_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2433_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2434 for ECDSA, tcId is 314 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2434_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2434_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2434_sig[] = { 0x91, 0x51, 0xeb, 0x10, 0x14, 0x55, 0x7b, 0x00, 0xc8, 0xf2, 0x88, 0x92, 0xa2, 0x91, 0x1f, 0x5d, 0x67, 0xd5, 0x93, 0x96, 0xa9, 0x3d, 0xa4, 0x32, 0x7d, 0x00, 0x59, 0xfb, 0xa7, 0x67, 0xb9, 0x7d, 0xed, 0xd5, 0x2e, 0x0c, 0xc8, 0x5e, 0x0b, 0xf8, 0x98, 0x8c, 0x7e, 0xec, 0x23, 0x10, 0x08, 0xa0, 0xf9, 0x72, 0xd5, 0x11, 0x39, 0xa2, 0xfe, 0x12, 0xb7, 0x55, 0x91, 0xc0, 0x71, 0xfc, 0xe9, 0xec, 0xaa, 0x89, 0xb5, 0x92, 0xfd, 0x30, 0x93, 0x27, 0xe6, 0xc9, 0x11, 0xe2, 0xdf, 0x0d, 0x95, 0xfe, 0x99, 0xbf, 0x01, 0xde, 0x32, 0x6a, 0x9f, 0xf0, 0x66, 0x48, 0xa3, 0x21, 0xa3, 0x63, 0xa7, 0x9e, 0x7b, 0xd5, 0xb0, 0x51, 0xe0, 0x16, 0x0f, 0xef, 0x18, 0xab, 0x81, 0x40, 0x31, 0xa0, 0x76, 0x01, 0xa6, 0x78, 0x3c, 0xc4, 0xef, 0xc6, 0x8c, 0x68, 0x1d, 0x2d, 0xf6, 0x48, 0xfb, 0xc5, 0x47, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2434 = { .name = "ecdsa_brainpoolp512r1_sha512_2434", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2434_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2434_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2434_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2435 for ECDSA, tcId is 315 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2435_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2435_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2435_sig[] = { 0x37, 0x4e, 0x3d, 0x3b, 0xff, 0x57, 0xb2, 0xa0, 0xf9, 0x24, 0xaa, 0x19, 0xed, 0x2c, 0x8d, 0x44, 0x42, 0x9f, 0x8f, 0x8a, 0x62, 0x93, 0x4a, 0xda, 0x5c, 0x0b, 0xd8, 0x3c, 0x2c, 0xa9, 0xef, 0x25, 0x38, 0xf1, 0x86, 0xf2, 0x86, 0x36, 0x80, 0x18, 0x3c, 0x51, 0x32, 0x4e, 0xf4, 0xca, 0xc5, 0xa9, 0x45, 0xdc, 0xb9, 0x08, 0xac, 0x40, 0xf4, 0xdb, 0xcb, 0x1d, 0x20, 0x45, 0xca, 0xc6, 0x58, 0x54, 0x2b, 0xa1, 0xc3, 0x96, 0x03, 0x86, 0x17, 0x77, 0x23, 0x80, 0x9d, 0xdd, 0xab, 0x3f, 0x80, 0x6a, 0x10, 0xda, 0x5e, 0x74, 0xc6, 0x7c, 0x9c, 0x46, 0x0b, 0x6c, 0x41, 0x63, 0xf3, 0x72, 0x30, 0xc3, 0x55, 0xcd, 0x4b, 0x09, 0x8a, 0xad, 0x23, 0xda, 0x52, 0x4e, 0x1e, 0x70, 0x40, 0x36, 0x3f, 0x4d, 0x72, 0x8f, 0xaf, 0xe4, 0xd9, 0x52, 0xad, 0x5f, 0xf1, 0x37, 0x0c, 0x10, 0x10, 0xef, 0xbf, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2435 = { .name = "ecdsa_brainpoolp512r1_sha512_2435", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2435_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2435_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2435_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2436 for ECDSA, tcId is 316 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2436_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2436_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2436_sig[] = { 0x60, 0xf1, 0xa5, 0xbc, 0x4a, 0x35, 0xf0, 0x01, 0x11, 0x4e, 0x5d, 0x71, 0x05, 0xc2, 0x1d, 0x6e, 0x51, 0x61, 0xad, 0xeb, 0x5d, 0x1d, 0x88, 0x25, 0x17, 0x91, 0xfd, 0x08, 0xe0, 0x19, 0x2a, 0x6f, 0xc9, 0x4e, 0xde, 0x21, 0x09, 0x28, 0x83, 0x89, 0xb3, 0xea, 0x9d, 0x00, 0x57, 0x5b, 0x66, 0xec, 0x0c, 0xee, 0x5f, 0x1e, 0x53, 0x1c, 0x05, 0xc0, 0x88, 0x54, 0x27, 0xa3, 0xbd, 0x65, 0xd6, 0x47, 0x5f, 0x62, 0xc3, 0x5c, 0xfb, 0xaa, 0x2a, 0xef, 0xde, 0xc1, 0x13, 0x33, 0x5f, 0xc5, 0xf5, 0x64, 0x6e, 0xd8, 0x58, 0xda, 0x0b, 0xe4, 0x85, 0x21, 0x77, 0x13, 0x5d, 0x7e, 0xe6, 0x2c, 0x12, 0x20, 0xce, 0x44, 0x7c, 0xb6, 0xab, 0x26, 0xcb, 0xf5, 0x43, 0x21, 0x5b, 0x2c, 0x15, 0xaf, 0x42, 0xd9, 0x5a, 0x51, 0x5b, 0x72, 0x50, 0xfb, 0x5e, 0xd7, 0x92, 0x04, 0xa5, 0x7c, 0xb0, 0x4f, 0x65, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2436 = { .name = "ecdsa_brainpoolp512r1_sha512_2436", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2436_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2436_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2436_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2437 for ECDSA, tcId is 317 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2437_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2437_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2437_sig[] = { 0x4b, 0xec, 0xd6, 0x57, 0xfd, 0x4c, 0x98, 0x66, 0xfb, 0xdd, 0xa4, 0xcc, 0x07, 0xc4, 0xcd, 0x52, 0x89, 0x64, 0xb1, 0x20, 0xb4, 0x13, 0x7a, 0xfe, 0x1c, 0x14, 0x27, 0x58, 0xd0, 0x48, 0x03, 0x98, 0xa1, 0xfe, 0x6e, 0x20, 0x3b, 0x56, 0x46, 0x57, 0xc9, 0x9e, 0xf0, 0x3a, 0x04, 0x4f, 0x89, 0xc4, 0xa5, 0xbc, 0xfb, 0x3c, 0xfa, 0x66, 0x59, 0x67, 0x1f, 0xcf, 0xa1, 0xd8, 0x38, 0x4b, 0x82, 0xd9, 0xa1, 0x64, 0x92, 0x56, 0xd0, 0xc4, 0x3f, 0x7f, 0x6c, 0x19, 0x26, 0x77, 0x41, 0x73, 0x89, 0x03, 0xd8, 0x29, 0x76, 0xcc, 0x3a, 0x67, 0x8b, 0x48, 0x0c, 0x50, 0xb5, 0x2a, 0xea, 0x3d, 0x49, 0x3a, 0x80, 0xc2, 0x0f, 0xfd, 0xe7, 0xb5, 0x7f, 0x92, 0x91, 0xb2, 0x2b, 0xe5, 0xb4, 0x13, 0x0d, 0xce, 0xfc, 0x82, 0xfe, 0xe7, 0x0b, 0xc3, 0xf1, 0xf3, 0x08, 0xab, 0x0a, 0x84, 0x03, 0x82, 0x8e, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2437 = { .name = "ecdsa_brainpoolp512r1_sha512_2437", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2437_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2437_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2437_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2438 for ECDSA, tcId is 318 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2438_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2438_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2438_sig[] = { 0x6b, 0x3f, 0x15, 0x33, 0xf5, 0x3f, 0xda, 0x74, 0x48, 0xa7, 0x10, 0xa4, 0xd0, 0xe3, 0xd8, 0x27, 0x8c, 0x96, 0xd6, 0x56, 0x63, 0x5a, 0x8e, 0xc9, 0xc8, 0x60, 0x85, 0xed, 0x23, 0x37, 0xb7, 0x33, 0x68, 0xf5, 0xc5, 0x93, 0x4a, 0x46, 0xd5, 0x9d, 0xc7, 0x9e, 0xe6, 0xc3, 0x34, 0x9f, 0xc7, 0x88, 0x74, 0xc0, 0x5f, 0x5e, 0x5e, 0xf8, 0x59, 0xea, 0xb0, 0x3d, 0xd8, 0x58, 0xd2, 0xc2, 0x8e, 0x85, 0x25, 0xcf, 0x5a, 0x2f, 0x26, 0x38, 0xeb, 0xf2, 0xe7, 0x62, 0x38, 0xbb, 0x54, 0xda, 0xb1, 0xe9, 0x6e, 0x9d, 0xe0, 0xd6, 0x7d, 0x55, 0x79, 0x15, 0x1e, 0x22, 0x56, 0xc9, 0x52, 0x7e, 0xbd, 0x4d, 0x38, 0x57, 0x73, 0x1f, 0xae, 0x84, 0xab, 0x3b, 0x56, 0xb7, 0x4b, 0xc8, 0x9c, 0x4a, 0x99, 0x63, 0x9b, 0x0c, 0x68, 0x7b, 0x2a, 0x13, 0x3b, 0xf7, 0x70, 0x29, 0xd5, 0xab, 0xe4, 0xa5, 0xfd, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2438 = { .name = "ecdsa_brainpoolp512r1_sha512_2438", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2438_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2438_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2438_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2439 for ECDSA, tcId is 319 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2439_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2439_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2439_sig[] = { 0x6f, 0xf4, 0xbe, 0x5d, 0xf3, 0xf1, 0x2c, 0xf2, 0xcb, 0x78, 0x16, 0x98, 0x5e, 0x9b, 0xa0, 0x09, 0x9c, 0xf5, 0x89, 0xa2, 0xa2, 0x23, 0x67, 0xab, 0xe0, 0x19, 0x32, 0x87, 0x89, 0xad, 0x50, 0x92, 0x10, 0x7d, 0x12, 0xdf, 0xed, 0x83, 0x52, 0xa1, 0xdd, 0x4a, 0xd9, 0x75, 0xe8, 0x61, 0xab, 0x9f, 0x9c, 0x64, 0xcb, 0x6b, 0x5b, 0xc9, 0x8c, 0x57, 0x86, 0x24, 0x7b, 0xdb, 0x4e, 0xa4, 0x82, 0x9d, 0x5e, 0xff, 0x29, 0xe6, 0xe2, 0x0e, 0x9e, 0xbf, 0x1a, 0xc6, 0x02, 0x58, 0x9c, 0x5b, 0xa6, 0x4b, 0x20, 0x20, 0xd1, 0xf2, 0xfe, 0xe8, 0x3e, 0x6d, 0x0c, 0x9c, 0xdd, 0xa1, 0xaf, 0x8d, 0x7c, 0x0a, 0xb8, 0xe5, 0xff, 0x05, 0x9e, 0xa4, 0x57, 0xb9, 0x03, 0xd2, 0xfd, 0xd4, 0x8f, 0xf8, 0x4a, 0x32, 0xe3, 0x38, 0xf0, 0x27, 0x05, 0x15, 0xfb, 0x0b, 0xa4, 0x4c, 0x00, 0x95, 0x24, 0xab, 0x78, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2439 = { .name = "ecdsa_brainpoolp512r1_sha512_2439", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2439_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2439_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2439_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2440 for ECDSA, tcId is 320 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2440_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2440_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2440_sig[] = { 0x56, 0xb9, 0x1c, 0xe3, 0x7f, 0x56, 0x0c, 0x1c, 0x65, 0x57, 0xf7, 0xfe, 0x00, 0x29, 0x75, 0x4f, 0x87, 0xc8, 0xf1, 0x0d, 0x92, 0xdc, 0x52, 0x5d, 0xfc, 0xb4, 0xcd, 0x5a, 0x96, 0x6b, 0xe0, 0xe8, 0xd9, 0x9f, 0xc0, 0x08, 0x51, 0xe8, 0x5b, 0x85, 0x82, 0x7d, 0x31, 0xc8, 0x61, 0x03, 0x4c, 0x20, 0xd2, 0xac, 0xb4, 0x9e, 0x4f, 0x1e, 0xeb, 0xd8, 0xe0, 0xd0, 0x21, 0x5d, 0x54, 0xdb, 0x2b, 0x11, 0x7c, 0xec, 0x29, 0x70, 0xfe, 0x9f, 0x29, 0x3c, 0x9d, 0x3a, 0x67, 0x2d, 0x37, 0x77, 0xff, 0x0e, 0xdf, 0x72, 0x85, 0x45, 0xbc, 0xbe, 0x00, 0x5c, 0x17, 0x8e, 0x0b, 0x40, 0x5f, 0xe4, 0x22, 0x3a, 0xab, 0x60, 0xdd, 0x44, 0x52, 0x1b, 0xe3, 0x21, 0x67, 0x2e, 0x81, 0x44, 0x58, 0x92, 0x91, 0x11, 0x30, 0xe6, 0x02, 0xa4, 0xb8, 0x35, 0x9b, 0xb3, 0x63, 0x2f, 0x90, 0x99, 0x18, 0xe0, 0x2a, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2440 = { .name = "ecdsa_brainpoolp512r1_sha512_2440", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2440_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2440_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2440_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2441 for ECDSA, tcId is 321 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2441_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2441_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2441_sig[] = { 0x49, 0xcd, 0x57, 0xe2, 0x5c, 0xfb, 0x68, 0x04, 0x37, 0x05, 0x18, 0x49, 0x69, 0xe3, 0x09, 0x06, 0x69, 0x86, 0x05, 0x7d, 0x9c, 0x0b, 0x7a, 0x2f, 0x87, 0x76, 0x6a, 0xad, 0xcf, 0x76, 0xed, 0xa8, 0x02, 0x8d, 0x4e, 0xce, 0xac, 0xec, 0xed, 0x91, 0x53, 0xac, 0x97, 0x60, 0xf4, 0x75, 0x14, 0xdd, 0xdd, 0x33, 0x47, 0x3a, 0xf0, 0x9f, 0xf0, 0xdf, 0xc0, 0x00, 0xd5, 0x31, 0x30, 0xa2, 0x01, 0x0e, 0x73, 0xd5, 0x34, 0xbd, 0x76, 0x52, 0x26, 0x81, 0xe7, 0x11, 0x09, 0xc0, 0x7c, 0xb1, 0x7b, 0x09, 0xe6, 0x61, 0xc1, 0x1c, 0x51, 0x9b, 0x20, 0xfe, 0x6d, 0xb8, 0x0d, 0x47, 0x75, 0x6f, 0x84, 0x48, 0x40, 0xb7, 0xbe, 0x6b, 0x95, 0xc5, 0xdb, 0x49, 0x7e, 0x70, 0x6c, 0x5f, 0x58, 0xc7, 0x8a, 0x35, 0x0a, 0x8e, 0x80, 0x2e, 0xff, 0xbd, 0x55, 0xb5, 0x96, 0x7b, 0xdf, 0x87, 0xce, 0x75, 0xf0, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2441 = { .name = "ecdsa_brainpoolp512r1_sha512_2441", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2441_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2441_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2441_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2442 for ECDSA, tcId is 322 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2442_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2442_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2442_sig[] = { 0x68, 0x0d, 0x7c, 0x82, 0xbb, 0xff, 0x29, 0x1b, 0xb7, 0x1f, 0x2d, 0xa5, 0x32, 0xf1, 0xa9, 0x31, 0xeb, 0x39, 0xa2, 0x22, 0x33, 0x6d, 0x5e, 0x40, 0x65, 0x7c, 0xc2, 0xfb, 0x12, 0x6b, 0x22, 0x47, 0xcf, 0x2d, 0xae, 0x23, 0x35, 0x55, 0x56, 0x4e, 0xa4, 0x42, 0x4e, 0xc3, 0x79, 0x12, 0xb3, 0x7e, 0x88, 0x66, 0xd4, 0x5c, 0x39, 0x3c, 0x6a, 0x91, 0xce, 0x13, 0x2d, 0xbc, 0x9f, 0x46, 0x63, 0x5d, 0x1f, 0x0c, 0x51, 0x58, 0x56, 0xa6, 0x2a, 0xf6, 0x8f, 0x0f, 0x23, 0x14, 0x5a, 0xad, 0x92, 0xa7, 0x7d, 0x71, 0x07, 0xd8, 0xd8, 0xaa, 0x46, 0xca, 0xbc, 0xc7, 0x2b, 0x2c, 0x08, 0x21, 0x85, 0xdb, 0x1d, 0x75, 0xd1, 0x54, 0x6a, 0x4e, 0x6c, 0xf5, 0x27, 0xc6, 0x9f, 0xe5, 0x2c, 0xb7, 0x6e, 0xe1, 0x5e, 0xaa, 0x62, 0x04, 0x44, 0xb6, 0xf2, 0x72, 0xb4, 0x02, 0x76, 0x35, 0xeb, 0xe8, 0x36, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2442 = { .name = "ecdsa_brainpoolp512r1_sha512_2442", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2442_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2442_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2442_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2443 for ECDSA, tcId is 323 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2443_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2443_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2443_sig[] = { 0x59, 0xff, 0xf5, 0xae, 0x97, 0x29, 0xb2, 0x1c, 0x38, 0x9a, 0x12, 0x70, 0x23, 0x60, 0xac, 0xa2, 0x57, 0x5e, 0xd4, 0xa4, 0x49, 0x22, 0xe1, 0x7d, 0xe5, 0x7c, 0xe9, 0x39, 0x79, 0xf1, 0x95, 0x56, 0xde, 0x0e, 0x25, 0x58, 0x1c, 0xfc, 0x98, 0xc1, 0xa6, 0x8e, 0xf0, 0x01, 0xa7, 0xf8, 0xd1, 0x57, 0xe7, 0x59, 0x1b, 0xae, 0xa4, 0x4e, 0x00, 0x3c, 0x45, 0x4e, 0x94, 0x1b, 0xbf, 0x9e, 0x5f, 0x7e, 0x10, 0x91, 0x96, 0xa8, 0x0b, 0x32, 0xa0, 0xa5, 0x7a, 0x7b, 0xcd, 0x3a, 0x6c, 0xe7, 0xf9, 0x25, 0xd1, 0x4f, 0x51, 0xc6, 0x15, 0x2a, 0xd8, 0x66, 0xd3, 0x37, 0x30, 0x08, 0xd6, 0x50, 0xb5, 0xaf, 0x7a, 0x25, 0xe2, 0xbf, 0xbd, 0x59, 0xb6, 0x37, 0x1f, 0xff, 0xec, 0xfd, 0xe1, 0x16, 0xd2, 0xa3, 0x6a, 0x8d, 0x1f, 0xe9, 0x17, 0x8b, 0xa3, 0xb3, 0xf3, 0x7c, 0x09, 0xb2, 0x71, 0xa5, 0xb0, 0x50, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2443 = { .name = "ecdsa_brainpoolp512r1_sha512_2443", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2443_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2443_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2443_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2444 for ECDSA, tcId is 324 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2444_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2444_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2444_sig[] = { 0x66, 0xef, 0x24, 0x6c, 0x7b, 0x80, 0xb5, 0x6e, 0x0e, 0xa7, 0x83, 0xac, 0x73, 0x71, 0x51, 0xc7, 0x36, 0x10, 0x21, 0x8d, 0x00, 0xc9, 0x36, 0xf4, 0xc1, 0x8d, 0x5a, 0x6c, 0x44, 0xf3, 0x5e, 0xe1, 0x9d, 0x8a, 0xa1, 0x57, 0x65, 0xdf, 0xfd, 0xfe, 0x51, 0xaa, 0xa3, 0x31, 0x12, 0x3e, 0xe4, 0xc5, 0xc8, 0xd6, 0x72, 0x63, 0xf6, 0x95, 0x56, 0x1e, 0x7c, 0xf7, 0xe6, 0x48, 0xef, 0xb7, 0xa4, 0xf7, 0x2a, 0x0a, 0xc4, 0x9a, 0x98, 0x4c, 0xbd, 0xf6, 0x6c, 0x59, 0xc6, 0x5d, 0xee, 0x9a, 0x3c, 0xc5, 0x81, 0x6b, 0x78, 0x82, 0xaf, 0x45, 0x34, 0x1e, 0x9d, 0xc5, 0x14, 0xae, 0xfa, 0xec, 0xd2, 0x46, 0x8c, 0xd5, 0xb9, 0x67, 0xa5, 0x36, 0x54, 0x88, 0x00, 0x46, 0xe1, 0x8e, 0x1a, 0xdc, 0x99, 0x1f, 0xe1, 0xb7, 0xbc, 0x0e, 0x53, 0x79, 0x17, 0x9b, 0xa3, 0xdc, 0x84, 0xbc, 0xee, 0x12, 0xc6, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2444 = { .name = "ecdsa_brainpoolp512r1_sha512_2444", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2444_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2444_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2444_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2445 for ECDSA, tcId is 325 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2445_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2445_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2445_sig[] = { 0x74, 0x69, 0x76, 0x7e, 0x75, 0x12, 0xc7, 0xd2, 0x94, 0xd8, 0x32, 0x90, 0x87, 0x1b, 0x5c, 0xb7, 0xec, 0x5d, 0x6e, 0xbf, 0x05, 0xb2, 0xd7, 0x65, 0x18, 0x39, 0x72, 0x9b, 0x87, 0x27, 0x81, 0x8e, 0x9e, 0x53, 0x08, 0x75, 0xe9, 0x01, 0xb7, 0x59, 0xe9, 0x2c, 0x79, 0x86, 0x10, 0xd4, 0x47, 0x35, 0x91, 0xb2, 0xcf, 0xb8, 0x74, 0x28, 0xa2, 0xf0, 0xb1, 0xaf, 0xb2, 0x5d, 0x25, 0xf9, 0x86, 0x8c, 0x13, 0xaa, 0x65, 0xad, 0x34, 0x38, 0x8e, 0xe1, 0x02, 0xce, 0x4f, 0xe0, 0xf3, 0x80, 0x1d, 0xb5, 0xf1, 0xbe, 0x38, 0xb8, 0xf5, 0x91, 0x94, 0x6a, 0xe5, 0x5b, 0xe7, 0x15, 0x9a, 0x2e, 0x04, 0x7d, 0x03, 0x76, 0x18, 0xce, 0x45, 0xa0, 0x98, 0x0c, 0x9f, 0x68, 0x6a, 0x7b, 0xee, 0x7f, 0xe8, 0xc7, 0x88, 0x22, 0x62, 0xc4, 0xf7, 0xc6, 0x60, 0x85, 0x96, 0xe1, 0x29, 0x00, 0xce, 0xa6, 0x20, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2445 = { .name = "ecdsa_brainpoolp512r1_sha512_2445", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2445_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2445_msg, .msglen = 8, .sig = ecdsa_brainpoolp512r1_sha512_2445_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2446 for ECDSA, tcId is 326 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2446_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2446_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2446_sig[] = { 0x2d, 0xde, 0x8d, 0xae, 0x88, 0x3b, 0x5f, 0x5b, 0x82, 0x22, 0xb2, 0x61, 0xff, 0x19, 0x8b, 0x0d, 0x46, 0x15, 0xb2, 0x23, 0x73, 0x53, 0x80, 0x03, 0x1e, 0x37, 0x60, 0x3d, 0x97, 0x66, 0xc3, 0xa6, 0x60, 0xcc, 0xba, 0xe3, 0x50, 0xd4, 0x09, 0x94, 0xeb, 0xb4, 0x9a, 0x09, 0xd8, 0xc9, 0x02, 0xbe, 0xac, 0xf8, 0xf0, 0xde, 0x1c, 0xa2, 0xb0, 0xa4, 0xa3, 0x1d, 0x00, 0xb5, 0x6b, 0xd8, 0x45, 0xa4, 0x66, 0x04, 0xfd, 0xe7, 0x0a, 0xc7, 0x61, 0x42, 0x01, 0x33, 0x62, 0x4d, 0xef, 0x5c, 0x44, 0xb5, 0xd5, 0xa5, 0x79, 0x5d, 0x44, 0x12, 0xdd, 0x73, 0x98, 0x3a, 0xef, 0x62, 0x90, 0x80, 0xae, 0x47, 0x63, 0x64, 0x97, 0x01, 0x8c, 0xd5, 0xd3, 0x1c, 0x8b, 0x85, 0xb2, 0xb0, 0x3d, 0x72, 0x17, 0x14, 0x88, 0x42, 0x9e, 0xaf, 0x4b, 0x82, 0x47, 0xaa, 0x6b, 0x01, 0x04, 0x4c, 0x0a, 0xe4, 0x61, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2446 = { .name = "ecdsa_brainpoolp512r1_sha512_2446", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2446_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2446_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2446_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2447 for ECDSA, tcId is 327 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2447_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2447_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2447_sig[] = { 0x24, 0x5d, 0xbf, 0x6c, 0x53, 0xa2, 0xd7, 0x88, 0x1b, 0x8d, 0x15, 0x7a, 0x62, 0x00, 0xd9, 0xba, 0x32, 0x43, 0xe4, 0xd9, 0xc1, 0x2d, 0x3e, 0xde, 0xbd, 0x8f, 0xf9, 0xe1, 0x03, 0xc6, 0x15, 0x8f, 0x89, 0x6e, 0xd5, 0xbc, 0xab, 0x43, 0x38, 0x3c, 0xf6, 0xbe, 0xcd, 0xbc, 0xf0, 0x81, 0x60, 0x4a, 0x59, 0x55, 0x08, 0x17, 0x2b, 0xbf, 0x43, 0xf1, 0x52, 0xb6, 0x69, 0xc4, 0xf4, 0x1d, 0x21, 0xe5, 0xa1, 0xdf, 0xaf, 0x17, 0xa6, 0xe5, 0x51, 0xfe, 0x0b, 0xc0, 0xcc, 0x24, 0xca, 0xc5, 0xa8, 0x21, 0x4d, 0xbd, 0x75, 0x08, 0x60, 0xa6, 0x03, 0x00, 0x21, 0x0a, 0xe9, 0xdc, 0x4a, 0xa1, 0x60, 0xf7, 0x88, 0xdd, 0x58, 0xb8, 0x2f, 0x96, 0x88, 0x40, 0x75, 0x51, 0xb0, 0xa2, 0x0e, 0x36, 0x70, 0x83, 0xa1, 0xa0, 0xf9, 0x9c, 0x35, 0x71, 0x52, 0x28, 0xc2, 0x25, 0x2f, 0x0f, 0x0d, 0xdb, 0x25, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2447 = { .name = "ecdsa_brainpoolp512r1_sha512_2447", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2447_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2447_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2447_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2448 for ECDSA, tcId is 328 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2448_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2448_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2448_sig[] = { 0x45, 0x50, 0xb9, 0x86, 0xfb, 0x04, 0xcc, 0x7f, 0xde, 0x0d, 0xc8, 0x5a, 0x95, 0xa1, 0x58, 0x17, 0x94, 0xb2, 0x52, 0x10, 0x20, 0x53, 0x2d, 0xc0, 0x0f, 0xb5, 0xed, 0x4b, 0x0e, 0xbd, 0x68, 0x34, 0xf1, 0x83, 0xf3, 0xc6, 0x2a, 0x57, 0x56, 0xbf, 0x5b, 0xd0, 0xb9, 0xa5, 0x16, 0xbc, 0x3d, 0x6c, 0x7e, 0x81, 0xef, 0xe5, 0x51, 0x16, 0x4b, 0x9d, 0xe0, 0xc1, 0x52, 0x93, 0x82, 0x95, 0xe2, 0xfb, 0x48, 0x59, 0x76, 0x25, 0x3d, 0x58, 0x03, 0x2d, 0x27, 0xed, 0x61, 0x56, 0xec, 0x15, 0xcf, 0x85, 0x34, 0x40, 0xdd, 0xec, 0xdf, 0x63, 0xbd, 0xb3, 0x04, 0xe1, 0xe7, 0x4d, 0x13, 0x9c, 0x13, 0x19, 0x67, 0x46, 0x64, 0xc5, 0xaa, 0xed, 0x9b, 0xb3, 0x04, 0x3a, 0x6e, 0x8a, 0xab, 0x1c, 0xa2, 0xe1, 0x5a, 0xfd, 0xb4, 0x5d, 0x33, 0x20, 0x04, 0x27, 0x50, 0xf9, 0xea, 0x82, 0x96, 0xfc, 0xd5, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2448 = { .name = "ecdsa_brainpoolp512r1_sha512_2448", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2448_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2448_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2448_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2449 for ECDSA, tcId is 329 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2449_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2449_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2449_sig[] = { 0x53, 0x91, 0x83, 0xda, 0xde, 0xa6, 0x63, 0x0b, 0xd4, 0x41, 0x6a, 0x49, 0xa8, 0xd6, 0xe7, 0x79, 0x23, 0x03, 0xe1, 0xe4, 0x4d, 0x20, 0x28, 0x72, 0x6f, 0x84, 0x69, 0x7c, 0x49, 0x6c, 0x26, 0xda, 0xcc, 0xac, 0x5f, 0xc4, 0xa4, 0xad, 0x34, 0x86, 0x6e, 0x71, 0x8e, 0x90, 0x67, 0xc4, 0xaf, 0x1b, 0xc9, 0xe2, 0x2c, 0x70, 0xb9, 0x4e, 0x74, 0xf2, 0x82, 0x2f, 0xef, 0x92, 0x9e, 0x7b, 0xad, 0x56, 0x4a, 0xbb, 0x75, 0x51, 0x92, 0xa1, 0x8e, 0xfb, 0x2e, 0x72, 0xa2, 0xfb, 0x4e, 0xe5, 0x1e, 0x47, 0xdb, 0x6d, 0x3b, 0xb2, 0x1b, 0xe2, 0xdd, 0xef, 0xb8, 0xfc, 0xff, 0x5e, 0x08, 0x4a, 0x2d, 0x8c, 0x8c, 0x7a, 0x1f, 0x44, 0xd0, 0x4c, 0x54, 0xb6, 0xbc, 0xbb, 0x95, 0x7c, 0x14, 0xa6, 0x2d, 0x75, 0x47, 0xfe, 0xcc, 0xb5, 0xd3, 0xf2, 0x0e, 0xd2, 0x00, 0x93, 0x13, 0x6d, 0x97, 0xdc, 0xb6, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2449 = { .name = "ecdsa_brainpoolp512r1_sha512_2449", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2449_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2449_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2449_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2450 for ECDSA, tcId is 330 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2450_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2450_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2450_sig[] = { 0x20, 0x82, 0x50, 0xa2, 0xa6, 0x62, 0xf8, 0x53, 0x6b, 0x5c, 0xdc, 0xff, 0xa1, 0x37, 0xb8, 0x3c, 0x52, 0x55, 0x12, 0xd9, 0xe3, 0xcd, 0xfe, 0xd0, 0x20, 0x76, 0x0c, 0x1b, 0x05, 0xb5, 0x5f, 0xc9, 0xf6, 0x6c, 0x6d, 0x7a, 0x8c, 0x25, 0xbf, 0xa4, 0x75, 0xb1, 0x07, 0x83, 0x11, 0x53, 0x73, 0x8d, 0x55, 0xa4, 0xdd, 0x07, 0xa7, 0x81, 0x92, 0xd0, 0x41, 0x69, 0x2b, 0xf5, 0x35, 0xe1, 0xac, 0x04, 0x3d, 0x85, 0x7d, 0xdd, 0x8c, 0xb2, 0x46, 0xac, 0x6e, 0xd2, 0x1e, 0x1d, 0xc5, 0x36, 0x81, 0x90, 0xda, 0xa9, 0x9b, 0xf8, 0xc3, 0x64, 0x49, 0xed, 0xd3, 0x18, 0xb2, 0x78, 0x27, 0xa2, 0x4c, 0x9a, 0xb0, 0x31, 0x4c, 0x59, 0x26, 0x17, 0x24, 0x9a, 0x1d, 0xa9, 0xfd, 0xe1, 0x35, 0xbc, 0x85, 0xe4, 0xc4, 0x80, 0x5d, 0x05, 0x17, 0x9b, 0x40, 0xc8, 0xcf, 0x4e, 0xdb, 0xc0, 0xad, 0xf1, 0x9f, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2450 = { .name = "ecdsa_brainpoolp512r1_sha512_2450", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2450_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2450_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2450_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2451 for ECDSA, tcId is 331 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2451_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2451_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2451_sig[] = { 0x65, 0xc6, 0x39, 0xaa, 0x06, 0x86, 0x81, 0x53, 0xb7, 0x76, 0x3f, 0xf6, 0x8b, 0xce, 0x97, 0xc7, 0xd9, 0xfe, 0x2f, 0x02, 0x8d, 0x9b, 0xea, 0x62, 0x32, 0x85, 0x21, 0x4e, 0xc5, 0x57, 0x2f, 0x64, 0x12, 0x74, 0xe4, 0x19, 0xa8, 0x33, 0x5d, 0xec, 0x43, 0xff, 0xf2, 0x23, 0x4d, 0xed, 0x00, 0xbb, 0x01, 0x23, 0x41, 0x1d, 0xea, 0x84, 0x3e, 0x97, 0x0b, 0xfb, 0x8f, 0xed, 0x4a, 0x51, 0x4e, 0xe4, 0x3f, 0xd4, 0xea, 0xb5, 0x37, 0x13, 0x23, 0x1e, 0x91, 0x91, 0x90, 0x6e, 0xf0, 0xcb, 0xa9, 0xc4, 0xcb, 0x50, 0xfc, 0x24, 0x62, 0x8c, 0x8f, 0x2d, 0xb1, 0x91, 0x4d, 0x6c, 0xce, 0xc4, 0x91, 0xc7, 0x80, 0xc9, 0x6c, 0xdb, 0x1b, 0x9b, 0xe6, 0xa6, 0x3c, 0xd3, 0x79, 0xa8, 0x46, 0x39, 0x39, 0xaa, 0x8a, 0x6e, 0xca, 0x63, 0x57, 0x23, 0x7f, 0xa8, 0xe8, 0x29, 0xfa, 0x4a, 0x38, 0x44, 0x8f, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2451 = { .name = "ecdsa_brainpoolp512r1_sha512_2451", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2451_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2451_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2451_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2452 for ECDSA, tcId is 332 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2452_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2452_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2452_sig[] = { 0x4a, 0x11, 0x0c, 0xc6, 0xab, 0xa1, 0x29, 0x60, 0x3a, 0x61, 0x7f, 0x0f, 0x83, 0xc8, 0xd7, 0xe9, 0xa6, 0x61, 0xdf, 0x8b, 0x57, 0x1f, 0xed, 0x84, 0x98, 0x32, 0x2d, 0x5e, 0x44, 0x8b, 0x46, 0x6f, 0x79, 0x42, 0xe3, 0x9a, 0x56, 0xa0, 0x85, 0x30, 0x3d, 0xdb, 0x92, 0x2d, 0xb5, 0x9c, 0x7d, 0xca, 0xee, 0x44, 0xde, 0x09, 0x4a, 0x78, 0x53, 0xe7, 0x17, 0xa3, 0xe9, 0x28, 0x17, 0x9f, 0xbc, 0x76, 0x2e, 0x54, 0x84, 0x86, 0x7e, 0x70, 0xcf, 0x9e, 0x3b, 0xfc, 0xff, 0x30, 0x9e, 0x89, 0xee, 0x1d, 0x90, 0x99, 0x04, 0xf4, 0xb9, 0x40, 0x22, 0xae, 0x91, 0x17, 0x75, 0x54, 0x70, 0x61, 0x22, 0xe5, 0xc4, 0x5f, 0x9a, 0x72, 0xae, 0xe7, 0x64, 0x10, 0xbb, 0x84, 0x4f, 0x09, 0xf8, 0xe6, 0x6e, 0x0e, 0xed, 0xe2, 0x87, 0xd6, 0xc3, 0x65, 0x24, 0x4e, 0x76, 0x32, 0xf4, 0x78, 0xa7, 0x53, 0x0a, 0x11, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2452 = { .name = "ecdsa_brainpoolp512r1_sha512_2452", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2452_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2452_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2452_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2453 for ECDSA, tcId is 333 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2453_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2453_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2453_sig[] = { 0x39, 0xc8, 0x96, 0xc0, 0x40, 0x99, 0x67, 0xf9, 0xbe, 0x11, 0xfd, 0xff, 0xf9, 0xe8, 0xf7, 0xb0, 0x8b, 0x7f, 0x2c, 0xf4, 0x4b, 0xe4, 0x71, 0xd4, 0xea, 0x1e, 0x25, 0x69, 0x32, 0x34, 0x44, 0x36, 0x66, 0x3a, 0x4d, 0xa8, 0xfe, 0x28, 0xff, 0xe7, 0x9d, 0x27, 0x74, 0x58, 0xe9, 0xea, 0x2f, 0x59, 0x7a, 0x7d, 0xb8, 0x47, 0x41, 0x4b, 0xb2, 0xad, 0x24, 0x38, 0x03, 0x7c, 0xb6, 0xc4, 0xa6, 0xcd, 0x91, 0x0d, 0x53, 0xab, 0x2c, 0x5c, 0x56, 0xbf, 0x05, 0x83, 0x74, 0x29, 0xe5, 0xe3, 0xd0, 0x8a, 0x02, 0xd0, 0xe6, 0x02, 0x27, 0x28, 0x30, 0x29, 0x79, 0x22, 0xbc, 0x91, 0xe2, 0x9f, 0x4f, 0x98, 0x82, 0x71, 0xfd, 0xd6, 0x0f, 0x07, 0x0e, 0xb0, 0xaa, 0x1e, 0x57, 0xd7, 0x42, 0xca, 0x75, 0x96, 0x56, 0x38, 0x27, 0x4f, 0x3c, 0xfb, 0x2b, 0x7b, 0x28, 0xd1, 0xa1, 0x46, 0x2a, 0x38, 0x4f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2453 = { .name = "ecdsa_brainpoolp512r1_sha512_2453", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2453_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2453_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2453_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2454 for ECDSA, tcId is 334 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2454_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2454_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2454_sig[] = { 0x43, 0x17, 0x01, 0xfe, 0x9a, 0x41, 0xc1, 0xcd, 0xa0, 0xa2, 0x3b, 0x6c, 0x4f, 0xff, 0xb7, 0x12, 0x8b, 0x53, 0x6b, 0xc9, 0xc0, 0xfa, 0x14, 0x55, 0xd7, 0x26, 0x3a, 0xf0, 0x4a, 0x1a, 0x1d, 0x40, 0x9a, 0x96, 0xa2, 0xe0, 0x4a, 0x56, 0xe1, 0x91, 0x28, 0x38, 0xd4, 0xad, 0x45, 0xae, 0x9d, 0x66, 0xdb, 0x7d, 0x93, 0x47, 0xe1, 0x60, 0x49, 0x5b, 0x4b, 0xe7, 0x71, 0x22, 0x85, 0x2a, 0x28, 0x1d, 0x82, 0x4c, 0xb1, 0x38, 0xa2, 0x9f, 0x22, 0x43, 0x5d, 0x40, 0x18, 0x80, 0x55, 0x6e, 0x16, 0xc5, 0x85, 0x93, 0x49, 0xbd, 0x19, 0xf5, 0x3c, 0x5c, 0x20, 0x51, 0x6a, 0xce, 0x4d, 0x84, 0xc5, 0xc6, 0x00, 0xbf, 0x61, 0x11, 0x4e, 0x05, 0x69, 0x7c, 0xde, 0x12, 0x16, 0x86, 0x92, 0x1b, 0x97, 0x74, 0xb8, 0x3b, 0x84, 0xd0, 0x0c, 0x2c, 0xd6, 0xb7, 0x8c, 0xc5, 0x92, 0x0c, 0x63, 0x21, 0x87, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2454 = { .name = "ecdsa_brainpoolp512r1_sha512_2454", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2454_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2454_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2454_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2455 for ECDSA, tcId is 335 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2455_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2455_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2455_sig[] = { 0x68, 0x4e, 0x6e, 0x41, 0xe2, 0x58, 0x85, 0x06, 0xb6, 0xec, 0x29, 0xb4, 0x58, 0x30, 0x1a, 0x79, 0x81, 0xc1, 0x09, 0x33, 0x00, 0x67, 0x5a, 0x9c, 0xfe, 0xc0, 0xf1, 0x95, 0x69, 0x6d, 0x35, 0xa1, 0x60, 0x68, 0xc4, 0xe2, 0x54, 0x24, 0xfc, 0x9b, 0x27, 0x6d, 0x84, 0xf7, 0xaf, 0xeb, 0x39, 0xaf, 0x09, 0x6e, 0xff, 0xec, 0xff, 0x09, 0xa6, 0xac, 0x67, 0x32, 0x70, 0x95, 0xe2, 0xe2, 0x5c, 0x2a, 0x1c, 0x30, 0x80, 0xb7, 0xf7, 0x0c, 0xeb, 0xd1, 0x93, 0x0a, 0x2b, 0x8b, 0xf6, 0x07, 0x31, 0xe8, 0x38, 0x0f, 0xae, 0x8a, 0x08, 0xf0, 0x31, 0x1a, 0x27, 0xab, 0xc1, 0x5d, 0x11, 0x05, 0xe4, 0xaa, 0x62, 0x62, 0x60, 0xce, 0xe8, 0x65, 0xd2, 0xcf, 0x22, 0x4a, 0xc7, 0xa9, 0x25, 0xc4, 0xeb, 0x5b, 0xab, 0xce, 0x2f, 0xec, 0xb5, 0xe2, 0x0d, 0x61, 0xf7, 0xa5, 0xdb, 0xbb, 0xe3, 0x3a, 0x01, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2455 = { .name = "ecdsa_brainpoolp512r1_sha512_2455", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2455_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2455_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2455_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2456 for ECDSA, tcId is 336 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2456_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2456_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2456_sig[] = { 0x4c, 0x56, 0xb1, 0x3a, 0x81, 0xa3, 0x9c, 0xb7, 0xf2, 0x76, 0x7b, 0x11, 0x5f, 0xb4, 0x09, 0xb9, 0xcb, 0x99, 0x88, 0xaa, 0xc5, 0x88, 0x5b, 0x63, 0x27, 0x12, 0xb1, 0x33, 0xf2, 0x3b, 0xec, 0x54, 0xc6, 0xfd, 0x53, 0x31, 0x8e, 0x26, 0x5f, 0xbc, 0xb1, 0x84, 0x76, 0x71, 0x73, 0x39, 0xea, 0x90, 0x12, 0x59, 0xfe, 0x62, 0x9a, 0x39, 0x62, 0x67, 0x74, 0x1e, 0xf4, 0x4e, 0x44, 0x75, 0xa7, 0xbb, 0x24, 0xfc, 0xa6, 0x80, 0x64, 0xbb, 0xf8, 0xbe, 0xe1, 0x55, 0x1c, 0x2d, 0x00, 0xb5, 0x4a, 0x16, 0xb5, 0x0b, 0x48, 0x21, 0xc2, 0x99, 0xe2, 0xaa, 0x1a, 0x73, 0xdf, 0xe2, 0xf8, 0x1c, 0x73, 0xc4, 0x09, 0x93, 0x16, 0x6a, 0xb8, 0xed, 0x9b, 0xd8, 0x48, 0x9c, 0xfe, 0x52, 0x3e, 0x41, 0xcf, 0x6e, 0x35, 0xef, 0x7a, 0x7a, 0x33, 0x1b, 0xd8, 0xd2, 0xa4, 0xdb, 0x77, 0xdf, 0xf4, 0x0d, 0x11, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2456 = { .name = "ecdsa_brainpoolp512r1_sha512_2456", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2456_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2456_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2456_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2457 for ECDSA, tcId is 337 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2457_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2457_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2457_sig[] = { 0x68, 0x2a, 0xfc, 0x3b, 0x92, 0x59, 0xdb, 0xc9, 0x16, 0x01, 0x19, 0x01, 0x46, 0x19, 0x37, 0x5a, 0x7d, 0x49, 0x16, 0xbd, 0x08, 0xa9, 0x31, 0xcf, 0x78, 0x77, 0x87, 0x5f, 0xc7, 0x77, 0xd1, 0x8a, 0x3c, 0xaa, 0xf2, 0x53, 0xc6, 0x05, 0xc1, 0x19, 0x73, 0x99, 0xef, 0x93, 0x72, 0xb9, 0xf5, 0x85, 0xa5, 0x84, 0x14, 0x98, 0x56, 0x5f, 0xb5, 0x77, 0x01, 0x81, 0x60, 0xf6, 0x2f, 0x9f, 0x3b, 0x6b, 0x56, 0xa7, 0xe2, 0xdc, 0x08, 0xf6, 0xfb, 0x56, 0x1b, 0x62, 0x0f, 0x09, 0xe8, 0x30, 0xce, 0x6f, 0xd5, 0x2b, 0x49, 0xda, 0x81, 0x5f, 0x9c, 0x3e, 0x89, 0x95, 0x9b, 0x0d, 0x2f, 0xcc, 0x79, 0xad, 0xfb, 0x6d, 0xd9, 0xf9, 0xdd, 0xf0, 0xed, 0x9e, 0x29, 0x5b, 0x72, 0x8c, 0x30, 0x5e, 0xff, 0xcb, 0x4d, 0x97, 0xef, 0xde, 0x40, 0xd9, 0x3d, 0xc2, 0xb6, 0x37, 0x7e, 0x9d, 0x4f, 0x72, 0xbe, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2457 = { .name = "ecdsa_brainpoolp512r1_sha512_2457", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2457_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2457_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2457_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2458 for ECDSA, tcId is 338 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2458_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2458_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2458_sig[] = { 0x8a, 0x68, 0x54, 0xac, 0xf4, 0xc8, 0x03, 0x27, 0xde, 0xf8, 0xe3, 0xec, 0x10, 0x46, 0xde, 0x4f, 0x35, 0x49, 0x8d, 0xf7, 0x98, 0xa9, 0x16, 0xed, 0xc8, 0x44, 0x31, 0x67, 0x4d, 0x4e, 0xb4, 0x5d, 0x20, 0x55, 0x9c, 0xcd, 0xb8, 0xc1, 0xa1, 0x47, 0x54, 0xde, 0x6e, 0xf4, 0x04, 0xb5, 0xe8, 0xa6, 0x6c, 0x36, 0x28, 0xab, 0xac, 0xd0, 0x7e, 0x8c, 0xa4, 0x06, 0xdd, 0xc0, 0xd9, 0x75, 0x60, 0xe6, 0x1e, 0x5a, 0x07, 0xf8, 0x2b, 0xf3, 0x20, 0xb7, 0x74, 0xa4, 0x60, 0xf3, 0xeb, 0xf5, 0x34, 0x96, 0xef, 0x63, 0x2f, 0x7a, 0x33, 0xd5, 0x1f, 0xa2, 0x84, 0x7f, 0x63, 0x93, 0x1f, 0xef, 0x13, 0x11, 0xb5, 0x3c, 0x21, 0x38, 0x40, 0xea, 0x3c, 0x6e, 0x70, 0xd2, 0x84, 0x6a, 0x57, 0x65, 0x99, 0x02, 0x6a, 0xc1, 0x66, 0x90, 0x25, 0x8e, 0x4f, 0xc8, 0xed, 0xbb, 0x12, 0x11, 0x81, 0x6f, 0xc1, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2458 = { .name = "ecdsa_brainpoolp512r1_sha512_2458", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2458_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2458_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2458_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2459 for ECDSA, tcId is 339 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2459_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2459_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2459_sig[] = { 0x1b, 0x06, 0x05, 0xbe, 0x20, 0xe4, 0x37, 0x4b, 0x17, 0xe4, 0xea, 0xc2, 0x6b, 0xd2, 0xbb, 0x95, 0x70, 0x20, 0xe1, 0xe0, 0x51, 0x08, 0x27, 0x9b, 0xd2, 0x69, 0x60, 0xde, 0x64, 0xd3, 0x9e, 0xf2, 0xd1, 0x9c, 0xc8, 0xcc, 0xbe, 0x8f, 0xd7, 0x2e, 0x12, 0x24, 0x12, 0xc2, 0xc6, 0x20, 0xcd, 0x2c, 0x46, 0x40, 0x26, 0x8b, 0x38, 0xdf, 0x93, 0x19, 0x3b, 0x8a, 0xc7, 0xe0, 0xd8, 0x38, 0x2c, 0xa5, 0x28, 0x99, 0x27, 0xed, 0x08, 0xef, 0x4e, 0x0e, 0x5a, 0x41, 0x72, 0x87, 0x75, 0xa1, 0x0d, 0xde, 0x8c, 0x6c, 0xc6, 0xe0, 0x8f, 0x9e, 0xab, 0xa5, 0x10, 0x77, 0xc8, 0x80, 0xc5, 0xaa, 0xd6, 0x47, 0xbc, 0x2f, 0x35, 0xde, 0xf5, 0x92, 0xd0, 0xdd, 0xd1, 0xd3, 0xe1, 0x40, 0xb6, 0xe7, 0x56, 0xc4, 0x6b, 0xe3, 0x60, 0x13, 0xcc, 0x5a, 0x6e, 0x5b, 0xb9, 0x87, 0x0b, 0x5c, 0x4d, 0xca, 0xf2, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2459 = { .name = "ecdsa_brainpoolp512r1_sha512_2459", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2459_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2459_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2459_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2460 for ECDSA, tcId is 340 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2460_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2460_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2460_sig[] = { 0x37, 0x38, 0x44, 0x06, 0x33, 0x23, 0xbe, 0xb4, 0xe6, 0xa4, 0xd2, 0x82, 0x19, 0x35, 0x92, 0xdf, 0x39, 0xdc, 0x57, 0x67, 0x51, 0x9a, 0x80, 0x31, 0xb6, 0x2d, 0x8a, 0xab, 0xd5, 0xde, 0xd6, 0x95, 0x40, 0x7b, 0xc4, 0x68, 0x7a, 0xc0, 0x9d, 0xe9, 0x3f, 0xa3, 0x8a, 0x89, 0x41, 0x2c, 0xfe, 0x6a, 0xcb, 0x5c, 0x09, 0x97, 0x57, 0x79, 0xa9, 0xe4, 0x17, 0x02, 0xe1, 0x81, 0x57, 0xb8, 0x44, 0x57, 0x92, 0x62, 0x01, 0x4c, 0xca, 0xcb, 0x90, 0xa4, 0xb8, 0x33, 0x3b, 0x97, 0x43, 0xf2, 0x5b, 0x89, 0x82, 0x5f, 0x3f, 0x7d, 0x21, 0x71, 0xe6, 0xf3, 0xaf, 0xd8, 0x2c, 0x04, 0x8a, 0x98, 0x05, 0x74, 0x5b, 0x78, 0x12, 0xb4, 0x6c, 0x2c, 0x54, 0x47, 0xfe, 0x10, 0x0e, 0x3b, 0xee, 0xa0, 0xec, 0x3b, 0xb4, 0xfd, 0xed, 0x37, 0x44, 0x53, 0x1e, 0xb0, 0x0c, 0x4d, 0xf1, 0xe0, 0x5d, 0x39, 0xc5, 0x73, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2460 = { .name = "ecdsa_brainpoolp512r1_sha512_2460", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2460_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2460_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2460_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2461 for ECDSA, tcId is 341 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2461_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2461_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2461_sig[] = { 0x79, 0x8f, 0x30, 0x08, 0xa6, 0x28, 0xad, 0x65, 0xc7, 0xf8, 0x3a, 0xb5, 0x1f, 0x2e, 0x7b, 0x9e, 0x1d, 0x1b, 0x74, 0xca, 0xd8, 0x64, 0x33, 0x4c, 0xde, 0x33, 0x9b, 0xa3, 0xd2, 0xd7, 0x3f, 0x13, 0x54, 0x9a, 0x18, 0xc6, 0xbc, 0x8f, 0x82, 0x72, 0xd5, 0xa0, 0x36, 0x57, 0x0f, 0x45, 0xa1, 0xcf, 0xf2, 0x05, 0x1c, 0xbc, 0x48, 0xe8, 0xa9, 0x90, 0xc3, 0x30, 0x3b, 0xd6, 0xdf, 0x88, 0x7e, 0xd9, 0x60, 0xa1, 0xa0, 0xef, 0x92, 0xd5, 0xc2, 0x8b, 0x6d, 0x6a, 0xfe, 0xb2, 0x71, 0x8d, 0xec, 0xb5, 0x76, 0x61, 0x25, 0x3a, 0xc5, 0xfd, 0x2e, 0x13, 0x63, 0x9b, 0x04, 0xfe, 0x6d, 0x41, 0x7e, 0xeb, 0x40, 0xd7, 0x53, 0x14, 0x6f, 0xdb, 0x80, 0x49, 0x37, 0xac, 0x6b, 0xa9, 0x2c, 0x8f, 0x8b, 0xf9, 0x6a, 0x9e, 0x0c, 0x81, 0x53, 0x2e, 0xf0, 0x39, 0x10, 0xbf, 0x4c, 0xe0, 0x48, 0x3b, 0xf3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2461 = { .name = "ecdsa_brainpoolp512r1_sha512_2461", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2461_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2461_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2461_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2462 for ECDSA, tcId is 342 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2462_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2462_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2462_sig[] = { 0x95, 0x82, 0xbf, 0xa8, 0xa2, 0x12, 0xba, 0x8d, 0x08, 0x52, 0xa4, 0x69, 0x0b, 0xff, 0x7c, 0x93, 0x7b, 0xaf, 0xdd, 0xd2, 0xf8, 0x44, 0x7d, 0x85, 0x0a, 0xe5, 0x18, 0x38, 0x9f, 0x20, 0x18, 0x2b, 0xf8, 0x3b, 0x00, 0x05, 0x2c, 0x3b, 0x3d, 0xc6, 0x5b, 0x1a, 0x70, 0xcf, 0x21, 0x6c, 0xdf, 0xa6, 0x2d, 0xcd, 0x17, 0xa5, 0xad, 0xf3, 0x31, 0xa2, 0xa7, 0x32, 0xba, 0xae, 0xee, 0xc0, 0xad, 0x9d, 0xa4, 0xa1, 0xe4, 0x1f, 0x5f, 0xdb, 0xb9, 0x00, 0x0d, 0x0f, 0x3b, 0xbe, 0x31, 0x19, 0x95, 0xa2, 0x8a, 0xf8, 0x6b, 0x9b, 0x03, 0x34, 0xde, 0x54, 0x98, 0x82, 0x96, 0x4c, 0x53, 0x11, 0xaa, 0x52, 0xd8, 0x7d, 0xe9, 0x62, 0x67, 0x06, 0xbb, 0x25, 0x14, 0xc1, 0xcf, 0x40, 0x9e, 0x99, 0x07, 0xf4, 0xe9, 0x1e, 0x9a, 0x49, 0xd6, 0x55, 0x24, 0xb4, 0xdf, 0xcb, 0xa5, 0x20, 0x92, 0x02, 0x55, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2462 = { .name = "ecdsa_brainpoolp512r1_sha512_2462", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2462_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2462_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2462_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2463 for ECDSA, tcId is 343 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2463_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2463_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2463_sig[] = { 0x4d, 0x67, 0x90, 0xc4, 0x9c, 0x82, 0xa7, 0xac, 0x06, 0xce, 0x84, 0x21, 0x53, 0x94, 0xc8, 0x6c, 0x70, 0x11, 0xb1, 0xb5, 0xf7, 0x14, 0x73, 0x8b, 0x1a, 0xd4, 0xd7, 0xb0, 0x10, 0xd8, 0x54, 0x67, 0x63, 0xf6, 0x02, 0xc9, 0xaf, 0x1e, 0x67, 0x48, 0xa2, 0x7d, 0x29, 0x7b, 0xed, 0x04, 0xeb, 0xea, 0xd4, 0xbf, 0x62, 0x90, 0x43, 0xe4, 0xde, 0xb3, 0x98, 0xa2, 0x7d, 0x4f, 0x86, 0xf3, 0xd7, 0x95, 0x6a, 0x6d, 0xcf, 0x9c, 0x89, 0x8c, 0x07, 0xd2, 0x4f, 0x13, 0xe7, 0x63, 0x66, 0xfd, 0xfb, 0x76, 0xed, 0xdd, 0x41, 0x57, 0xef, 0x2b, 0xef, 0xa9, 0x10, 0x52, 0x49, 0x34, 0xa8, 0xd4, 0x10, 0x9c, 0x12, 0xe0, 0x1e, 0xc4, 0x5d, 0x9f, 0xd4, 0x97, 0x8f, 0xb2, 0x91, 0x06, 0x81, 0xe5, 0x46, 0x03, 0x71, 0xbb, 0xfc, 0x76, 0x52, 0x87, 0x03, 0xe8, 0xb8, 0xa8, 0xbc, 0xbe, 0x8a, 0x6c, 0x8a, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2463 = { .name = "ecdsa_brainpoolp512r1_sha512_2463", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2463_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2463_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2463_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2464 for ECDSA, tcId is 344 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2464_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2464_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2464_sig[] = { 0x65, 0xb4, 0x9e, 0xbf, 0x51, 0x98, 0xda, 0x39, 0x5a, 0xa1, 0x82, 0xba, 0x31, 0xd4, 0x73, 0x12, 0x9a, 0xcc, 0x2f, 0xd6, 0x5f, 0xdc, 0x0d, 0xf2, 0xcd, 0x59, 0xa1, 0xc6, 0x8a, 0x52, 0x78, 0x82, 0xc9, 0x22, 0xf7, 0x39, 0x93, 0x39, 0x63, 0x55, 0xbd, 0x6c, 0xdf, 0x4e, 0x4f, 0xe9, 0xc4, 0x2e, 0x17, 0x16, 0xf6, 0x6e, 0xaf, 0x3e, 0x0e, 0x73, 0x25, 0x3d, 0x5f, 0x61, 0x8c, 0x30, 0x06, 0x39, 0x8d, 0xeb, 0x03, 0xcc, 0x46, 0x40, 0x19, 0x4c, 0xe2, 0x30, 0xda, 0x1d, 0x77, 0xaa, 0xcb, 0x00, 0x74, 0x27, 0x55, 0x7f, 0x70, 0xd4, 0xa0, 0xee, 0x81, 0x48, 0x12, 0xc5, 0x60, 0x86, 0x5f, 0x14, 0xf2, 0x4a, 0x8f, 0x79, 0x39, 0x3c, 0xef, 0x1a, 0x15, 0x9d, 0x28, 0x34, 0xd9, 0xfd, 0xee, 0x0a, 0x16, 0xa8, 0x5b, 0xcd, 0x5c, 0xd5, 0x0e, 0x0f, 0x7c, 0x26, 0x32, 0x30, 0x36, 0x33, 0x5f, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2464 = { .name = "ecdsa_brainpoolp512r1_sha512_2464", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2464_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2464_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2464_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2465 for ECDSA, tcId is 345 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2465_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2465_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2465_sig[] = { 0x87, 0x3e, 0x39, 0xe7, 0xf6, 0xb7, 0xdd, 0xe5, 0xe4, 0x0c, 0xa7, 0xfd, 0x4b, 0x8e, 0x85, 0xf3, 0xcd, 0xee, 0xae, 0x46, 0x71, 0xd6, 0x32, 0x18, 0xb9, 0xf7, 0x19, 0x54, 0x45, 0x66, 0x1d, 0xa0, 0xd1, 0xf5, 0x46, 0x07, 0x59, 0x9a, 0xe7, 0x53, 0x12, 0x02, 0xeb, 0xba, 0xe9, 0xb5, 0xa1, 0xa5, 0x8d, 0x37, 0xc4, 0xa1, 0xfd, 0x3f, 0xff, 0x8e, 0x96, 0x54, 0x7f, 0xdd, 0x3f, 0x76, 0xf8, 0x83, 0x74, 0xbf, 0x6d, 0xb0, 0x93, 0x26, 0x0e, 0xff, 0x6c, 0xac, 0x9f, 0x06, 0xdb, 0x16, 0x46, 0xc0, 0x83, 0xe4, 0xbc, 0x09, 0xc8, 0xf1, 0x75, 0x5a, 0xa3, 0x02, 0xec, 0xf7, 0x91, 0x69, 0x79, 0x01, 0x9c, 0xad, 0x8b, 0xed, 0x73, 0x90, 0x07, 0x97, 0x0c, 0x2c, 0xee, 0x87, 0xd0, 0x25, 0x2c, 0xc6, 0x8f, 0x05, 0x6f, 0x71, 0x03, 0x30, 0xc6, 0x5f, 0xc5, 0x65, 0x51, 0x29, 0x73, 0x12, 0xb2, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2465 = { .name = "ecdsa_brainpoolp512r1_sha512_2465", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2465_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2465_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2465_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2466 for ECDSA, tcId is 346 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2466_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2466_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2466_sig[] = { 0x01, 0x27, 0xad, 0xa3, 0x3f, 0xf4, 0xc6, 0x44, 0x1e, 0x79, 0xf6, 0x01, 0x46, 0x51, 0xdf, 0x82, 0xd4, 0xd1, 0x0c, 0xf4, 0x60, 0x1a, 0xc5, 0x67, 0xd4, 0x41, 0x42, 0xb0, 0xdc, 0xfc, 0x93, 0x3f, 0x7c, 0x8a, 0x2e, 0x23, 0x1d, 0x0d, 0x29, 0x0c, 0xbf, 0x04, 0x2d, 0xf6, 0x11, 0x2d, 0x6f, 0xe1, 0x6d, 0xdd, 0x2c, 0x1e, 0x96, 0xf7, 0x98, 0x20, 0x5c, 0xbf, 0x59, 0x52, 0x68, 0xa9, 0x41, 0x57, 0x22, 0x35, 0x41, 0x1c, 0x90, 0xcc, 0x9a, 0xc1, 0x87, 0x2d, 0x23, 0x8e, 0x7c, 0x7d, 0x8d, 0xeb, 0x07, 0x55, 0xb3, 0x66, 0x2c, 0xd9, 0xf2, 0x49, 0xbf, 0x3c, 0x84, 0x4e, 0x75, 0x0c, 0xf5, 0x8f, 0x90, 0xfe, 0x90, 0x8f, 0x28, 0xb1, 0x38, 0x67, 0x6e, 0xf9, 0xcb, 0x24, 0xef, 0xbb, 0xaf, 0xab, 0x8d, 0x3b, 0xeb, 0xc1, 0x77, 0xa5, 0xb3, 0x2a, 0x32, 0xd1, 0x7b, 0x91, 0xfc, 0x49, 0xb0, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2466 = { .name = "ecdsa_brainpoolp512r1_sha512_2466", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2466_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2466_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2466_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2467 for ECDSA, tcId is 347 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2467_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2467_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2467_sig[] = { 0x82, 0x44, 0xc7, 0x33, 0x17, 0xb5, 0x3e, 0x37, 0x47, 0x3d, 0x7b, 0xee, 0xf9, 0xf8, 0xe5, 0xbd, 0x31, 0xed, 0x80, 0x1f, 0x9b, 0xbd, 0xb9, 0x63, 0x9b, 0x7f, 0x0f, 0x24, 0xe0, 0x32, 0x9c, 0x79, 0x14, 0x95, 0x9b, 0xf0, 0xcd, 0x20, 0x06, 0x98, 0x6f, 0xa8, 0x1f, 0x7f, 0x4b, 0x40, 0x02, 0x50, 0x33, 0x43, 0xae, 0xc0, 0x46, 0x5d, 0x8f, 0x1e, 0xd1, 0x7c, 0x97, 0x74, 0x6e, 0xd6, 0xca, 0xed, 0x14, 0xbc, 0x6c, 0xc4, 0xd1, 0x55, 0x37, 0x71, 0x75, 0xea, 0x95, 0xc3, 0x59, 0xc6, 0x96, 0x24, 0xaf, 0xe1, 0x85, 0x79, 0x01, 0x44, 0x21, 0xb6, 0x6a, 0x14, 0x0e, 0x87, 0xc1, 0x43, 0x9f, 0x7d, 0x78, 0xf5, 0x64, 0x5d, 0x4b, 0xd8, 0xc0, 0x27, 0x54, 0x95, 0x26, 0x86, 0x58, 0x55, 0xff, 0xf0, 0xfc, 0x52, 0x7f, 0x49, 0x36, 0x23, 0xc3, 0x64, 0x7b, 0x5c, 0x90, 0x1d, 0x8d, 0xe4, 0xb8, 0x29, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2467 = { .name = "ecdsa_brainpoolp512r1_sha512_2467", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2467_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2467_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2467_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2468 for ECDSA, tcId is 348 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2468_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2468_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2468_sig[] = { 0x00, 0x11, 0xdd, 0xcc, 0x69, 0xdd, 0xa5, 0x67, 0x64, 0xaf, 0xdb, 0xea, 0xcd, 0x61, 0x5b, 0x3c, 0x29, 0x50, 0x58, 0x79, 0x43, 0x71, 0x6e, 0xd6, 0xda, 0xc7, 0x65, 0x86, 0x79, 0xa2, 0x1b, 0x2b, 0x4c, 0xdb, 0xe8, 0x5a, 0x5e, 0x40, 0x94, 0xde, 0xf2, 0x53, 0xed, 0xe5, 0x7f, 0x31, 0xef, 0x75, 0x88, 0xee, 0x31, 0x24, 0xd8, 0x05, 0xab, 0xc1, 0x2e, 0xcb, 0xf7, 0xf5, 0x5a, 0x7c, 0xb5, 0x5d, 0x11, 0x9d, 0x72, 0x2b, 0xc3, 0x72, 0xa4, 0xe6, 0xc5, 0xb4, 0xe3, 0x9f, 0xdf, 0x25, 0x81, 0x6f, 0x23, 0x87, 0xd0, 0x0e, 0xf0, 0x40, 0xd0, 0xad, 0x75, 0xbd, 0xa2, 0x79, 0x70, 0x00, 0x1c, 0xe5, 0xcd, 0xf5, 0xa2, 0xd4, 0xdd, 0x8b, 0xc8, 0x04, 0x21, 0x9f, 0xe8, 0xe9, 0x71, 0x52, 0x96, 0xad, 0xb5, 0x33, 0x03, 0xb9, 0x0f, 0x2c, 0x5c, 0x1f, 0x3f, 0x94, 0xb3, 0xf5, 0xf2, 0xfd, 0xa8, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2468 = { .name = "ecdsa_brainpoolp512r1_sha512_2468", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2468_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2468_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2468_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2469 for ECDSA, tcId is 349 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2469_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2469_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2469_sig[] = { 0x12, 0xe5, 0x9c, 0xd4, 0x84, 0xad, 0xba, 0x7d, 0x0f, 0xc2, 0xe4, 0x02, 0xd6, 0xca, 0xf0, 0xe4, 0x4a, 0x0e, 0xd2, 0x52, 0xa8, 0x91, 0x62, 0x3d, 0x26, 0x87, 0x90, 0x2b, 0x51, 0x83, 0x76, 0xef, 0xd7, 0x34, 0xa7, 0xb7, 0x53, 0x3d, 0x79, 0x7c, 0xe8, 0xf1, 0x45, 0x02, 0x8b, 0x42, 0x8c, 0x18, 0xf5, 0xf2, 0x04, 0x43, 0xc5, 0x3f, 0x04, 0xe6, 0x04, 0xaa, 0x31, 0x13, 0x15, 0xe9, 0x26, 0x6d, 0x47, 0x73, 0x6e, 0x60, 0x34, 0x5f, 0x1c, 0xb9, 0xbf, 0x7b, 0xd1, 0x17, 0xd8, 0xcb, 0x82, 0xc9, 0x41, 0x17, 0x9f, 0x08, 0x93, 0xa4, 0xb7, 0xd8, 0x76, 0x2f, 0x7b, 0xc9, 0x32, 0x20, 0x25, 0xa5, 0x64, 0xac, 0xbd, 0x7b, 0x3b, 0xb4, 0x7d, 0xe3, 0x84, 0xa4, 0x58, 0x2f, 0x33, 0x7b, 0x80, 0x9e, 0x84, 0xc4, 0x8b, 0x08, 0x61, 0x0a, 0x3d, 0xfd, 0x0c, 0x87, 0x5d, 0xfe, 0x9b, 0x88, 0x85, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2469 = { .name = "ecdsa_brainpoolp512r1_sha512_2469", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2469_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2469_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2469_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2470 for ECDSA, tcId is 350 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2470_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2470_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2470_sig[] = { 0x00, 0x9a, 0x5f, 0x64, 0x0c, 0xda, 0xaf, 0x26, 0xf1, 0xc1, 0x5c, 0xfc, 0x5c, 0x27, 0x49, 0x8a, 0x82, 0x31, 0x57, 0x1f, 0x22, 0x05, 0x31, 0x54, 0xcc, 0x2f, 0x52, 0x87, 0x7c, 0xbe, 0x5c, 0xf2, 0x89, 0xc5, 0x53, 0xd7, 0xbd, 0xf8, 0x6b, 0x19, 0x73, 0x26, 0x36, 0x04, 0xd5, 0x94, 0xe5, 0x29, 0xab, 0x2d, 0x1d, 0xf1, 0x06, 0x6d, 0x88, 0x5f, 0xd5, 0xa0, 0x61, 0xf6, 0x38, 0xe7, 0xa3, 0x46, 0x91, 0xfe, 0x33, 0xe0, 0x50, 0x74, 0x8b, 0xd7, 0xd7, 0x68, 0x83, 0xa0, 0x3d, 0x5f, 0x29, 0x76, 0x48, 0x7a, 0x03, 0x26, 0xa3, 0xa3, 0xc5, 0xef, 0x27, 0x6c, 0x38, 0xa9, 0xca, 0x09, 0x96, 0x25, 0x70, 0xec, 0xc8, 0xb8, 0x9f, 0x93, 0x1a, 0x14, 0x54, 0x97, 0xb7, 0x7a, 0x48, 0x2a, 0x73, 0x12, 0x89, 0xc2, 0xf7, 0x9c, 0x4a, 0x7b, 0x87, 0x19, 0x28, 0xb3, 0x9e, 0x94, 0xa1, 0x48, 0x8c, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2470 = { .name = "ecdsa_brainpoolp512r1_sha512_2470", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2470_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2470_msg, .msglen = 9, .sig = ecdsa_brainpoolp512r1_sha512_2470_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2471 for ECDSA, tcId is 351 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2471_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2471_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2471_sig[] = { 0x68, 0xc0, 0x01, 0xac, 0x8c, 0x88, 0x04, 0xc0, 0xa9, 0xc3, 0x8f, 0x18, 0x10, 0x9e, 0x26, 0xb4, 0xe8, 0xa1, 0xba, 0x18, 0xd0, 0xfb, 0xa8, 0x54, 0x7f, 0x70, 0xe3, 0x98, 0x9f, 0x3c, 0x51, 0x08, 0x71, 0xe8, 0x0f, 0x8a, 0x7b, 0x31, 0x4f, 0xc5, 0x21, 0xb7, 0xc7, 0x9c, 0x3b, 0xb3, 0xb6, 0x91, 0x56, 0x0a, 0xb9, 0xd6, 0x99, 0xa2, 0x49, 0x15, 0xfc, 0x68, 0x2f, 0xda, 0xc1, 0xf0, 0x1c, 0x6f, 0x8c, 0x2f, 0xa0, 0xa4, 0xd9, 0x60, 0xd2, 0x68, 0x84, 0x42, 0xdb, 0xd6, 0x63, 0xe8, 0x5f, 0x46, 0xd8, 0x58, 0xfa, 0xaa, 0xff, 0x91, 0xb7, 0xba, 0x9a, 0xe9, 0x6b, 0xa6, 0x61, 0x96, 0x63, 0x78, 0x0f, 0x05, 0x95, 0x0d, 0x0a, 0xd8, 0x9b, 0x79, 0xcd, 0x69, 0x5d, 0x14, 0xde, 0xe5, 0x7f, 0x27, 0xbc, 0xa9, 0x9f, 0x01, 0x65, 0xf1, 0xd4, 0xbb, 0x12, 0x3d, 0x17, 0xb1, 0xa4, 0x6b, 0xda, 0x32, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2471 = { .name = "ecdsa_brainpoolp512r1_sha512_2471", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2471_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2471_msg, .msglen = 11, .sig = ecdsa_brainpoolp512r1_sha512_2471_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2472 for ECDSA, tcId is 352 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2472_pubkey[] = { 0x67, 0xce, 0xa1, 0xbe, 0xdf, 0x84, 0xcb, 0xdc, 0xba, 0x69, 0xa0, 0x5b, 0xb2, 0xce, 0x3a, 0x2d, 0x1c, 0x9d, 0x91, 0x1d, 0x23, 0x6c, 0x48, 0x09, 0x29, 0xa1, 0x6a, 0xd6, 0x97, 0xb4, 0x5a, 0x6c, 0xa1, 0x27, 0x07, 0x9f, 0xe8, 0xd7, 0x86, 0x86, 0x71, 0xe2, 0x8e, 0xf3, 0x3b, 0xdf, 0x93, 0x19, 0xe2, 0xe5, 0x1c, 0x84, 0xb1, 0x90, 0xac, 0x5c, 0x91, 0xb5, 0x1b, 0xaf, 0x0a, 0x98, 0x0b, 0xa5, 0x00, 0xa7, 0xe7, 0x90, 0x06, 0x19, 0x4b, 0x53, 0x78, 0xf6, 0x5c, 0xbe, 0x62, 0x5e, 0xf2, 0xc4, 0x7c, 0x64, 0xe5, 0x60, 0x40, 0xd8, 0x73, 0xb9, 0x95, 0xb5, 0xb1, 0xeb, 0xaa, 0x4a, 0x6c, 0xe9, 0x71, 0xda, 0x16, 0x43, 0x91, 0xff, 0x61, 0x9a, 0xf3, 0xbc, 0xfc, 0x71, 0xc5, 0xe1, 0xad, 0x27, 0xee, 0x0e, 0x85, 0x9c, 0x29, 0x43, 0xe2, 0xde, 0x8e, 0xf7, 0xc4, 0x3d, 0x3c, 0x97, 0x6e, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2472_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2472_sig[] = { 0x4b, 0x1e, 0x61, 0x39, 0x4e, 0x6c, 0x26, 0x2b, 0x1e, 0x4a, 0x63, 0xea, 0x7c, 0xf4, 0x1e, 0x66, 0x00, 0x20, 0xb2, 0x47, 0x35, 0x8d, 0x1b, 0x15, 0xaa, 0xec, 0x95, 0x33, 0xd5, 0x87, 0xd8, 0x24, 0x25, 0xa8, 0x60, 0xdc, 0x9f, 0x7a, 0x8e, 0x2b, 0x17, 0x61, 0x39, 0x3d, 0x3f, 0xc2, 0xa9, 0xd1, 0xac, 0x43, 0x3a, 0x06, 0x62, 0xa1, 0xe2, 0xee, 0x25, 0x55, 0xfc, 0x9c, 0x38, 0x49, 0xad, 0x4b, 0x86, 0xda, 0xeb, 0x19, 0x61, 0xef, 0x42, 0x2a, 0x09, 0xf5, 0x3b, 0xfa, 0x0e, 0x5f, 0xfc, 0x7f, 0x52, 0xa3, 0xb5, 0x5e, 0x76, 0xf0, 0xc2, 0xeb, 0xb7, 0xf8, 0xb0, 0x34, 0xb3, 0xcf, 0xaf, 0xf0, 0x8c, 0x52, 0x7a, 0x15, 0xa9, 0xf9, 0x7e, 0x8d, 0x09, 0xda, 0x81, 0x2e, 0x39, 0x5d, 0x5c, 0x61, 0x16, 0x80, 0xb7, 0xf6, 0x51, 0xd4, 0x16, 0x94, 0xf0, 0xb5, 0x8f, 0xe9, 0xeb, 0x31, 0x0b, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2472 = { .name = "ecdsa_brainpoolp512r1_sha512_2472", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2472_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2472_msg, .msglen = 10, .sig = ecdsa_brainpoolp512r1_sha512_2472_sig, .siglen = 128, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2473 for ECDSA, tcId is 353 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2473_pubkey[] = { 0x6b, 0x67, 0x63, 0xa1, 0x86, 0xaa, 0x51, 0x59, 0x04, 0x9f, 0x2e, 0xa5, 0xc8, 0xa2, 0x32, 0xdc, 0xbe, 0x63, 0x37, 0xb0, 0xd9, 0x2e, 0x96, 0x9d, 0xa5, 0x2a, 0xf3, 0x25, 0x24, 0xf6, 0x1d, 0xa3, 0x09, 0x7f, 0xa3, 0x14, 0xac, 0x79, 0x22, 0x34, 0xe5, 0x98, 0x67, 0xaf, 0x32, 0x04, 0x78, 0x77, 0x4b, 0xd4, 0xc7, 0x85, 0xa0, 0x33, 0x06, 0x24, 0xc0, 0xb4, 0xba, 0xbe, 0x25, 0x7f, 0x65, 0x97, 0x2e, 0x40, 0x63, 0xe4, 0x5e, 0x13, 0xd5, 0x05, 0xe1, 0x4d, 0xb6, 0xf5, 0xfe, 0xf3, 0x53, 0x8d, 0xb1, 0x81, 0xcc, 0x1a, 0x6e, 0x0a, 0x93, 0x81, 0xfa, 0x3f, 0x03, 0x21, 0xbe, 0x47, 0xf4, 0x0d, 0xc0, 0x5a, 0xb8, 0x0e, 0x9c, 0xaa, 0x3b, 0x75, 0x59, 0xc6, 0x75, 0x35, 0xe8, 0x3d, 0x98, 0x4f, 0x3b, 0x95, 0x57, 0x11, 0x8d, 0xde, 0x29, 0xc5, 0xe7, 0xa5, 0xa4, 0xa1, 0x8d, 0x0c, 0x9d, 0x43, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2473_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x28, 0x0f, 0x3e, 0xbf, 0x4f, 0x1d, 0x42, 0x29, 0x6d, 0x47, 0x40, 0x11, 0x66, 0xf7, 0x70, 0x9f, 0x0a, 0xd0, 0x2b, 0xae, 0x25, 0x24, 0xeb, 0xa7, 0x73, 0x22, 0xc9, 0xd3, 0xbb, 0x91, 0x48, 0x89, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2473 = { .name = "ecdsa_brainpoolp512r1_sha512_2473", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2473_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2473_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2473_sig, .siglen = 128, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 353 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2474 for ECDSA, tcId is 354 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2474_pubkey[] = { 0x6b, 0x67, 0x63, 0xa1, 0x86, 0xaa, 0x51, 0x59, 0x04, 0x9f, 0x2e, 0xa5, 0xc8, 0xa2, 0x32, 0xdc, 0xbe, 0x63, 0x37, 0xb0, 0xd9, 0x2e, 0x96, 0x9d, 0xa5, 0x2a, 0xf3, 0x25, 0x24, 0xf6, 0x1d, 0xa3, 0x09, 0x7f, 0xa3, 0x14, 0xac, 0x79, 0x22, 0x34, 0xe5, 0x98, 0x67, 0xaf, 0x32, 0x04, 0x78, 0x77, 0x4b, 0xd4, 0xc7, 0x85, 0xa0, 0x33, 0x06, 0x24, 0xc0, 0xb4, 0xba, 0xbe, 0x25, 0x7f, 0x65, 0x97, 0x2e, 0x40, 0x63, 0xe4, 0x5e, 0x13, 0xd5, 0x05, 0xe1, 0x4d, 0xb6, 0xf5, 0xfe, 0xf3, 0x53, 0x8d, 0xb1, 0x81, 0xcc, 0x1a, 0x6e, 0x0a, 0x93, 0x81, 0xfa, 0x3f, 0x03, 0x21, 0xbe, 0x47, 0xf4, 0x0d, 0xc0, 0x5a, 0xb8, 0x0e, 0x9c, 0xaa, 0x3b, 0x75, 0x59, 0xc6, 0x75, 0x35, 0xe8, 0x3d, 0x98, 0x4f, 0x3b, 0x95, 0x57, 0x11, 0x8d, 0xde, 0x29, 0xc5, 0xe7, 0xa5, 0xa4, 0xa1, 0x8d, 0x0c, 0x9d, 0x43, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2474_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2474_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2474 = { .name = "ecdsa_brainpoolp512r1_sha512_2474", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2474_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2474_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2474_sig, .siglen = 128, .result = -1, .comment = "r too large, tcId is 354 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2475 for ECDSA, tcId is 355 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2475_pubkey[] = { 0x8f, 0x67, 0x69, 0x59, 0xbf, 0xda, 0x02, 0xd3, 0x73, 0x97, 0x7a, 0x80, 0x52, 0x8b, 0x61, 0xd4, 0x14, 0x8f, 0x8e, 0xab, 0xc2, 0x02, 0x7f, 0xb5, 0xb5, 0xdb, 0x58, 0x27, 0x67, 0x7d, 0x14, 0x7a, 0x72, 0x86, 0x61, 0xfd, 0x5c, 0x54, 0x6b, 0x6a, 0xd5, 0xf0, 0xa8, 0x9a, 0x34, 0x74, 0x49, 0xaa, 0x2f, 0x32, 0x11, 0x2e, 0x3b, 0xbd, 0xa8, 0x03, 0x50, 0x89, 0x54, 0x79, 0x29, 0xb5, 0x6a, 0x55, 0x78, 0xc4, 0x5c, 0xe0, 0xa6, 0x88, 0xae, 0xa3, 0x90, 0xd4, 0xe4, 0xdb, 0x4d, 0x48, 0xd2, 0xcd, 0xb2, 0x18, 0x65, 0xbc, 0x8c, 0xef, 0xd1, 0x5f, 0x2b, 0xba, 0xe4, 0x27, 0x0a, 0xb7, 0x65, 0xa7, 0x6f, 0x04, 0x94, 0x49, 0xf1, 0x7c, 0xe1, 0xac, 0x7f, 0x51, 0x39, 0x77, 0xce, 0x0a, 0x52, 0x37, 0xe5, 0xbd, 0x63, 0xb4, 0xaf, 0x92, 0xa6, 0xcf, 0x49, 0x18, 0xd9, 0x1b, 0xcc, 0xd0, 0xf2, 0x79, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2475_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2475_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x65, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2475 = { .name = "ecdsa_brainpoolp512r1_sha512_2475", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2475_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2475_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2475_sig, .siglen = 128, .result = 1, .comment = "r,s are large, tcId is 355 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2476 for ECDSA, tcId is 356 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2476_pubkey[] = { 0x14, 0xf3, 0x8a, 0xfb, 0xc8, 0xd6, 0xbe, 0x59, 0xee, 0x70, 0x75, 0xbd, 0xfd, 0x26, 0x16, 0xa4, 0x4b, 0x86, 0x53, 0x56, 0x87, 0xd0, 0x5c, 0x23, 0x47, 0x55, 0x31, 0x73, 0xcd, 0x14, 0xdf, 0x8a, 0xbd, 0x0a, 0x4c, 0x10, 0x2c, 0x62, 0xe8, 0x14, 0x11, 0x27, 0xdc, 0x66, 0xd2, 0xdc, 0xaa, 0xe3, 0x8c, 0x93, 0x24, 0x98, 0x0e, 0xde, 0x20, 0x46, 0x88, 0xbb, 0x9f, 0x91, 0x6b, 0xa9, 0xf1, 0xa8, 0x23, 0xf3, 0x58, 0x13, 0x93, 0x16, 0xca, 0x27, 0xb8, 0x87, 0x4e, 0x68, 0xb9, 0x33, 0x88, 0xf9, 0x78, 0x0d, 0x9b, 0xa7, 0xe2, 0x3b, 0x84, 0x21, 0xbf, 0xad, 0x38, 0xa1, 0x9e, 0xd1, 0x61, 0x47, 0x7e, 0x0a, 0x05, 0x38, 0x0b, 0xeb, 0xd7, 0xa1, 0x15, 0x6d, 0xc3, 0x2f, 0x69, 0x04, 0x76, 0x79, 0xfa, 0x2b, 0x97, 0x7f, 0xad, 0xc0, 0xc2, 0x9e, 0xbc, 0x1e, 0xbc, 0xea, 0x6c, 0xc1, 0x89, 0x4c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2476_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2476_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x43, 0x38, 0xed, 0x95, 0xac, 0x0d, 0x09, 0xc5, 0x1d, 0x70, 0x44, 0xd5, 0x9f, 0x1b, 0xc2, 0x6f, 0x8f, 0x3f, 0x11, 0xfc, 0x7b, 0xf2, 0xf8, 0x1b, 0xdf, 0x0b, 0x21, 0xb5, 0xc0, 0xb9, 0xc8, 0x9b, 0xea, 0x3c, 0xc6, 0xdd, 0x8b, 0x36, 0x92, 0xc8, 0x31, 0x0b, 0x98, 0x11, 0x7b, 0x50, 0x8d, 0x13, 0x00, 0x73, 0xe7, 0x4b, 0x02, 0xb3, 0xba, 0x48, 0x2f, 0xb0, 0xa5, 0xef, 0x10, 0x36, 0xa3, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2476 = { .name = "ecdsa_brainpoolp512r1_sha512_2476", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2476_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2476_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2476_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 356 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2477 for ECDSA, tcId is 357 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2477_pubkey[] = { 0x3d, 0xf9, 0xe5, 0x86, 0x41, 0x0b, 0xa6, 0x33, 0xb9, 0xf1, 0x65, 0xd2, 0x9b, 0x07, 0x3b, 0x67, 0xa1, 0x67, 0x29, 0x7c, 0xb4, 0x08, 0x68, 0x89, 0xe5, 0x2b, 0x92, 0x5a, 0x9c, 0xb2, 0x5a, 0xcc, 0x4c, 0x85, 0xe5, 0xb8, 0x11, 0x22, 0x21, 0xba, 0x49, 0xec, 0xc9, 0x9a, 0x0c, 0xb7, 0xfb, 0x33, 0x85, 0x35, 0x2a, 0x71, 0x40, 0x07, 0x2f, 0x79, 0xc2, 0xf4, 0x43, 0x96, 0xee, 0x8b, 0x67, 0x86, 0x22, 0xc7, 0xb6, 0x18, 0x5e, 0x4b, 0x66, 0x7a, 0x5c, 0xc4, 0x27, 0xc9, 0x9c, 0xa5, 0x3f, 0xe5, 0x4f, 0x03, 0xdf, 0xee, 0xca, 0x92, 0xba, 0x2c, 0x1a, 0xe1, 0xf2, 0xb3, 0xfe, 0xeb, 0xed, 0xea, 0xba, 0x62, 0xee, 0x3b, 0xa0, 0x65, 0xac, 0x53, 0x03, 0xc2, 0xd5, 0x69, 0x69, 0xf0, 0xb3, 0x41, 0x48, 0x6f, 0x29, 0xf3, 0xb2, 0xa0, 0x6d, 0xf3, 0x28, 0x30, 0xf2, 0x59, 0x99, 0xc4, 0x2f, 0x88, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2477_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2477_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x39, 0xc9, 0x82, 0xe2, 0xa4, 0xf5, 0x60, 0xc5, 0x09, 0x05, 0x58, 0x88, 0xf6, 0x03, 0x17, 0xe6, 0xb5, 0xbb, 0x61, 0xd5, 0x94, 0xd7, 0xbd, 0x4f, 0x58, 0x97, 0x39, 0x6b, 0xf3, 0xe8, 0x1a, 0x09, 0xcf, 0x70, 0x3d, 0x31, 0x9f, 0x9b, 0x4a, 0x09, 0x2d, 0x46, 0xd5, 0xf2, 0x02, 0xff, 0x5d, 0xdb, 0x77, 0x6c, 0x57, 0xe8, 0xed, 0xe8, 0x45, 0x4d, 0xef, 0x70, 0x37, 0xb5, 0x41, 0xc9, 0x74, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2477 = { .name = "ecdsa_brainpoolp512r1_sha512_2477", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2477_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2477_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2477_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 357 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2478 for ECDSA, tcId is 358 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2478_pubkey[] = { 0x0a, 0xd6, 0x6a, 0xbd, 0xba, 0x9f, 0xbe, 0xe1, 0xfd, 0xd1, 0xb9, 0xe0, 0xdb, 0x9a, 0x74, 0x60, 0xf4, 0x60, 0xde, 0x39, 0x16, 0xef, 0xd1, 0x6d, 0x7d, 0x9c, 0x6c, 0xc7, 0xa6, 0xcc, 0x9f, 0xa5, 0xcc, 0x03, 0x02, 0x0d, 0x9f, 0x8c, 0x90, 0x94, 0xc0, 0xcb, 0x52, 0xfe, 0x1b, 0xab, 0xd6, 0x3c, 0x69, 0xab, 0x20, 0xf0, 0x4a, 0x11, 0x6e, 0xce, 0xe3, 0xa0, 0x09, 0xd5, 0xac, 0xb5, 0x72, 0x9d, 0x5b, 0x47, 0x65, 0x85, 0x8f, 0x69, 0x6b, 0x61, 0xbf, 0x6b, 0x3a, 0x18, 0x12, 0xd0, 0x57, 0xbe, 0xe9, 0x3b, 0x14, 0x38, 0x36, 0xa7, 0x64, 0x92, 0x79, 0x71, 0xfb, 0x74, 0x61, 0x41, 0xb5, 0x42, 0x2f, 0xc0, 0x77, 0xf7, 0x3c, 0xaa, 0x00, 0x0f, 0x62, 0xce, 0x00, 0x10, 0x35, 0x02, 0xd1, 0xec, 0xb0, 0x95, 0x4f, 0x2c, 0xad, 0x60, 0xb2, 0x24, 0xec, 0x6f, 0xe1, 0x03, 0x30, 0x09, 0xd6, 0x4c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2478_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2478_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2478 = { .name = "ecdsa_brainpoolp512r1_sha512_2478", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2478_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2478_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2478_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 358 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2479 for ECDSA, tcId is 359 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2479_pubkey[] = { 0x97, 0x41, 0xc2, 0x63, 0x4e, 0x42, 0xf1, 0x86, 0x56, 0x25, 0xa9, 0xd9, 0x7e, 0xbc, 0x54, 0x9a, 0xc8, 0xc6, 0x7e, 0xb6, 0xd0, 0x3c, 0xd2, 0xa7, 0xc5, 0x98, 0x7f, 0x0f, 0x51, 0x64, 0xc9, 0xbe, 0x97, 0x75, 0xe3, 0x2c, 0x5d, 0x59, 0xd3, 0x17, 0x5d, 0xe4, 0x68, 0xe2, 0x43, 0x59, 0x10, 0x21, 0xab, 0x62, 0x3f, 0x6b, 0x09, 0xb3, 0x1a, 0x40, 0x28, 0x63, 0x9b, 0x04, 0x16, 0x84, 0xf3, 0x59, 0x47, 0x0d, 0xdf, 0xf1, 0x73, 0xc6, 0x7c, 0x71, 0x05, 0x5f, 0x5f, 0x71, 0x5b, 0x7b, 0x74, 0x99, 0x38, 0x00, 0x30, 0x59, 0x38, 0xbb, 0xda, 0x89, 0xd2, 0x4b, 0x18, 0x7f, 0x48, 0x19, 0xc3, 0x05, 0x75, 0xd5, 0xe2, 0x27, 0x5f, 0x08, 0xcb, 0xf3, 0xba, 0x86, 0xb1, 0xa1, 0x1f, 0x12, 0x67, 0x1d, 0x2e, 0xb0, 0x09, 0xd0, 0x25, 0x16, 0xf3, 0xd1, 0xda, 0x0a, 0xaf, 0xcd, 0x1d, 0x81, 0xa0, 0xc1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2479_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2479 = { .name = "ecdsa_brainpoolp512r1_sha512_2479", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2479_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2479_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2479_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 359 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2480 for ECDSA, tcId is 360 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2480_pubkey[] = { 0x8b, 0x06, 0xa7, 0x76, 0x16, 0xea, 0x21, 0xf1, 0x40, 0x93, 0xd3, 0xa3, 0x73, 0xa8, 0xf5, 0x71, 0x06, 0xa7, 0x19, 0x39, 0xf2, 0x54, 0x15, 0xf6, 0xa9, 0xaa, 0x00, 0x16, 0x40, 0xb5, 0xed, 0x0a, 0xdf, 0x39, 0xfc, 0x2f, 0x5e, 0x58, 0xd4, 0x23, 0x3c, 0x2e, 0xef, 0xe4, 0xf1, 0x70, 0x49, 0x9d, 0xa5, 0x7e, 0x9d, 0xce, 0xb7, 0xf8, 0xcd, 0x5f, 0x38, 0xc4, 0x18, 0x1f, 0xa7, 0xd2, 0xf7, 0x68, 0x07, 0x4a, 0x91, 0xe9, 0x9e, 0xab, 0xce, 0xd1, 0xbd, 0xa3, 0x58, 0x65, 0x3e, 0x09, 0xb5, 0x1e, 0xb8, 0xb1, 0xa9, 0x52, 0x6f, 0x5a, 0x1b, 0x32, 0xc7, 0xed, 0xd3, 0xb7, 0x01, 0xf5, 0xaf, 0x41, 0x03, 0x31, 0x49, 0x71, 0xd5, 0xc0, 0x82, 0xc5, 0xf2, 0x00, 0x53, 0xc3, 0xb6, 0x6d, 0x39, 0xa1, 0xcb, 0x6c, 0x4d, 0x31, 0x0d, 0xbe, 0x89, 0x55, 0x46, 0x89, 0x2d, 0x42, 0x96, 0xd9, 0x6e, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2480_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2480 = { .name = "ecdsa_brainpoolp512r1_sha512_2480", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2480_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2480_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2480_sig, .siglen = 128, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2481 for ECDSA, tcId is 361 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2481_pubkey[] = { 0x8b, 0x06, 0xa7, 0x76, 0x16, 0xea, 0x21, 0xf1, 0x40, 0x93, 0xd3, 0xa3, 0x73, 0xa8, 0xf5, 0x71, 0x06, 0xa7, 0x19, 0x39, 0xf2, 0x54, 0x15, 0xf6, 0xa9, 0xaa, 0x00, 0x16, 0x40, 0xb5, 0xed, 0x0a, 0xdf, 0x39, 0xfc, 0x2f, 0x5e, 0x58, 0xd4, 0x23, 0x3c, 0x2e, 0xef, 0xe4, 0xf1, 0x70, 0x49, 0x9d, 0xa5, 0x7e, 0x9d, 0xce, 0xb7, 0xf8, 0xcd, 0x5f, 0x38, 0xc4, 0x18, 0x1f, 0xa7, 0xd2, 0xf7, 0x68, 0x07, 0x4a, 0x91, 0xe9, 0x9e, 0xab, 0xce, 0xd1, 0xbd, 0xa3, 0x58, 0x65, 0x3e, 0x09, 0xb5, 0x1e, 0xb8, 0xb1, 0xa9, 0x52, 0x6f, 0x5a, 0x1b, 0x32, 0xc7, 0xed, 0xd3, 0xb7, 0x01, 0xf5, 0xaf, 0x41, 0x03, 0x31, 0x49, 0x71, 0xd5, 0xc0, 0x82, 0xc5, 0xf2, 0x00, 0x53, 0xc3, 0xb6, 0x6d, 0x39, 0xa1, 0xcb, 0x6c, 0x4d, 0x31, 0x0d, 0xbe, 0x89, 0x55, 0x46, 0x89, 0x2d, 0x42, 0x96, 0xd9, 0x6e, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2481_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2481 = { .name = "ecdsa_brainpoolp512r1_sha512_2481", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2481_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2481_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2481_sig, .siglen = 128, .result = -1, .comment = "r is larger than n, tcId is 361 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2482 for ECDSA, tcId is 362 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2482_pubkey[] = { 0x79, 0x2f, 0xec, 0xee, 0xb3, 0x16, 0x63, 0x56, 0xd1, 0x0a, 0xeb, 0x09, 0x40, 0x12, 0x42, 0x94, 0x34, 0x18, 0x02, 0x92, 0x4c, 0x79, 0xf2, 0x39, 0x1b, 0x77, 0x87, 0x56, 0x57, 0xc1, 0x7f, 0x55, 0x95, 0x5b, 0x28, 0x68, 0x5c, 0xc2, 0x20, 0x3f, 0x18, 0xc2, 0x20, 0x04, 0xba, 0xb1, 0xda, 0x51, 0x68, 0x96, 0xf0, 0x1b, 0x05, 0x29, 0xc8, 0x04, 0x24, 0x5b, 0xaa, 0x3a, 0x69, 0x30, 0xb3, 0x55, 0x26, 0xde, 0xb7, 0x3e, 0x37, 0x21, 0x76, 0xcc, 0x73, 0x58, 0xc0, 0x42, 0x47, 0x92, 0x3a, 0x79, 0x11, 0x81, 0xce, 0x72, 0xc1, 0x83, 0x50, 0x60, 0x46, 0xe6, 0x9d, 0xe4, 0x97, 0x6d, 0x4f, 0x26, 0x37, 0xf1, 0x1e, 0x70, 0x5f, 0x1f, 0x9a, 0x5a, 0x0f, 0x99, 0xee, 0xa1, 0x84, 0x1e, 0x54, 0x0c, 0x6a, 0xa4, 0x3d, 0x4f, 0xb2, 0x00, 0x30, 0xd7, 0x0d, 0x4a, 0x54, 0xfb, 0x6a, 0x6e, 0x85, 0x59, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2482_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xbb, 0xd6, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2482 = { .name = "ecdsa_brainpoolp512r1_sha512_2482", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2482_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2482_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2482_sig, .siglen = 128, .result = -1, .comment = "s is larger than n, tcId is 362 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2483 for ECDSA, tcId is 363 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2483_pubkey[] = { 0x81, 0xb4, 0x2a, 0xda, 0xac, 0x02, 0xa5, 0xfd, 0x87, 0xa0, 0x4a, 0x16, 0xdd, 0xc2, 0x33, 0x30, 0x75, 0x77, 0x8f, 0x13, 0x3e, 0xa0, 0xaf, 0x66, 0x04, 0x9c, 0x72, 0xa0, 0x67, 0x21, 0xe3, 0x92, 0x49, 0x79, 0x24, 0x9e, 0x04, 0x29, 0x1e, 0x4b, 0x99, 0xd4, 0xec, 0xf4, 0x48, 0xb3, 0xfd, 0xc5, 0xe5, 0x6e, 0xa2, 0x33, 0x81, 0xd6, 0xd0, 0x6e, 0x23, 0x01, 0x19, 0x65, 0xd1, 0x65, 0x38, 0x16, 0x24, 0x43, 0x27, 0xf9, 0xd5, 0x9c, 0xa6, 0x78, 0x75, 0x75, 0xbb, 0x77, 0x07, 0xef, 0x26, 0x72, 0xf1, 0x13, 0xba, 0x7a, 0x30, 0x2d, 0x69, 0xc2, 0x9f, 0xea, 0x6f, 0xf6, 0x6f, 0x44, 0x9d, 0xcd, 0x3b, 0x27, 0x3b, 0x33, 0x98, 0x48, 0x17, 0x76, 0xc2, 0xf2, 0xa6, 0x85, 0xcb, 0x6d, 0xde, 0x31, 0xe1, 0x76, 0xbe, 0x8f, 0x2b, 0x78, 0x5f, 0xed, 0x31, 0x3b, 0xe5, 0x73, 0x0c, 0x66, 0x24, 0xed, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2483_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2483_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x12, 0xd5, 0xe9, 0x12, 0x5c, 0xc7, 0x1f, 0xbe, 0xb8, 0x6c, 0x21, 0x7e, 0x09, 0xbd, 0x92, 0xb6, 0x46, 0xc6, 0xdd, 0x3a, 0x1b, 0xe1, 0xd6, 0xa6, 0xed, 0x4d, 0x80, 0x26, 0x71, 0x27, 0xe4, 0xb5, 0xb4, 0xbc, 0x4a, 0xac, 0x7d, 0x5d, 0x3a, 0xa0, 0x03, 0x31, 0x14, 0xc8, 0x5a, 0xac, 0x2a, 0x1b, 0xff, 0x3d, 0xef, 0x00, 0x1d, 0x24, 0x8d, 0x0a, 0x54, 0x83, 0xdc, 0x2e, 0xa6, 0x6f, 0x5a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2483 = { .name = "ecdsa_brainpoolp512r1_sha512_2483", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2483_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2483_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2483_sig, .siglen = 128, .result = 1, .comment = "small r and s^-1, tcId is 363 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2484 for ECDSA, tcId is 364 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2484_pubkey[] = { 0x01, 0xa0, 0xe0, 0x0b, 0xb4, 0xa6, 0x69, 0xf1, 0x0f, 0x59, 0x44, 0x89, 0xa4, 0x2f, 0x1b, 0xab, 0xd3, 0xa0, 0x28, 0xb5, 0xea, 0x75, 0x75, 0x7a, 0x98, 0x6c, 0x55, 0xf6, 0x15, 0x94, 0x69, 0x75, 0x2b, 0x88, 0xbb, 0xe9, 0xf5, 0x2f, 0x24, 0x22, 0xd5, 0x03, 0xa4, 0xd9, 0xa8, 0x49, 0xc3, 0xda, 0xd4, 0x10, 0xa6, 0xdc, 0x4e, 0x4e, 0x32, 0xb9, 0x54, 0x69, 0xe0, 0x93, 0x86, 0x06, 0x34, 0x01, 0x57, 0x4c, 0x50, 0x11, 0x28, 0x90, 0x64, 0x59, 0xa2, 0x3a, 0xf9, 0x3b, 0x98, 0x30, 0xe2, 0x97, 0xf3, 0xe7, 0x3d, 0x31, 0x73, 0xdf, 0x78, 0x07, 0x67, 0x9b, 0x71, 0x3c, 0xe6, 0xb3, 0x4f, 0x64, 0xb1, 0xee, 0x75, 0x47, 0xb9, 0x27, 0xe4, 0x31, 0x05, 0x11, 0x8c, 0x49, 0x6b, 0x9a, 0x3c, 0x1e, 0x02, 0x64, 0xe8, 0x4b, 0x5b, 0x0f, 0xb4, 0x59, 0x58, 0x2a, 0xf9, 0x8e, 0xdf, 0x0c, 0x11, 0x7f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2484_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2484_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x76, 0x75, 0x2c, 0xe2, 0x89, 0xc3, 0x8f, 0x22, 0xde, 0x7f, 0x75, 0xd0, 0xfa, 0x6d, 0xa0, 0x56, 0xf4, 0x73, 0xc7, 0x71, 0x94, 0xde, 0x93, 0x1d, 0x97, 0xef, 0xd6, 0x54, 0x21, 0xff, 0x3e, 0xc8, 0x2c, 0x57, 0xa6, 0x39, 0x3a, 0x42, 0x70, 0x2e, 0x14, 0xa2, 0xd8, 0x31, 0x76, 0x88, 0x65, 0xab, 0x93, 0x32, 0x81, 0xab, 0xf1, 0xbc, 0xf5, 0x2a, 0x7e, 0xf6, 0xb7, 0x3f, 0x23, 0x73, 0xc9, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2484 = { .name = "ecdsa_brainpoolp512r1_sha512_2484", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2484_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2484_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2484_sig, .siglen = 128, .result = 1, .comment = "smallish r and s^-1, tcId is 364 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2485 for ECDSA, tcId is 365 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2485_pubkey[] = { 0x0d, 0xc4, 0xc5, 0x63, 0x9b, 0x76, 0x90, 0x15, 0x7c, 0x21, 0x0b, 0x75, 0xe7, 0xa0, 0x06, 0xd9, 0xcf, 0xdf, 0x80, 0xf9, 0xd0, 0xb2, 0xbb, 0xd6, 0x43, 0x03, 0x68, 0x90, 0xa8, 0x16, 0x8a, 0x88, 0x94, 0x7b, 0x19, 0x7a, 0xa9, 0xa6, 0x00, 0x47, 0xcd, 0x8f, 0x6e, 0x77, 0xc0, 0x77, 0x7b, 0xb9, 0xe0, 0x9d, 0xa7, 0x37, 0xdb, 0xbe, 0x57, 0xa9, 0x77, 0xa6, 0xae, 0x07, 0x07, 0x98, 0x35, 0x64, 0x60, 0xb0, 0xa4, 0x9d, 0x4f, 0x95, 0x78, 0x27, 0x3f, 0x6e, 0x5a, 0xb3, 0x87, 0x31, 0x94, 0x29, 0x2e, 0x89, 0x3e, 0x06, 0xc5, 0xa3, 0x9b, 0xb1, 0xf8, 0xa0, 0x55, 0x1f, 0x4e, 0x01, 0xca, 0x46, 0x0a, 0x03, 0xa7, 0x7c, 0x35, 0xcf, 0xf8, 0xd7, 0xd6, 0xe0, 0xf3, 0x3b, 0x8a, 0x88, 0xac, 0xdc, 0x36, 0xea, 0xe5, 0xa8, 0x3a, 0x12, 0x9b, 0xfe, 0xec, 0xc2, 0xa6, 0x89, 0x36, 0x88, 0x3d, 0x91, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2485_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2485_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfd, 0x9c, 0xe7, 0x66, 0x00, 0x6a, 0x51, 0x30, 0x00, 0x5e, 0x79, 0xca, 0xdd, 0xba, 0x04, 0x30, 0x27, 0x08, 0x48, 0x7a, 0x27, 0x82, 0x3b, 0xd1, 0xd3, 0xd9, 0xca, 0x0a, 0x80, 0x1f, 0x4f, 0xbc, 0x0b, 0x83, 0x12, 0x6a, 0xa1, 0x91, 0x1a, 0xd4, 0x4a, 0xfd, 0x6a, 0x77, 0x0c, 0x75, 0x3d, 0x61, 0x9f, 0xef, 0x70, 0x7e, 0x7c, 0x77, 0x3f, 0x46, 0x7d, 0xe5, 0x73, 0x8b, 0x35, 0x33, 0x38, 0x93, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2485 = { .name = "ecdsa_brainpoolp512r1_sha512_2485", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2485_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2485_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2485_sig, .siglen = 128, .result = 1, .comment = "100-bit r and small s^-1, tcId is 365 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2486 for ECDSA, tcId is 366 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2486_pubkey[] = { 0x86, 0x7d, 0xfd, 0xd7, 0x26, 0xce, 0xe9, 0x31, 0x25, 0x6d, 0xd9, 0xaa, 0xe0, 0xc1, 0xa6, 0x60, 0xa1, 0x2b, 0x1d, 0xfd, 0x6b, 0xaf, 0x18, 0x0b, 0x35, 0xe3, 0x9c, 0x0f, 0x93, 0xcb, 0xf9, 0x80, 0x0c, 0x5c, 0xf1, 0x1b, 0x29, 0xf1, 0x86, 0x78, 0xd3, 0x25, 0x12, 0x1f, 0xb2, 0x86, 0x54, 0x5a, 0x51, 0x2d, 0xd8, 0xf6, 0xc2, 0xcb, 0x81, 0xe5, 0x98, 0xd0, 0x5f, 0xc4, 0x0c, 0xfc, 0xf9, 0xdc, 0x91, 0xd4, 0xd2, 0x15, 0x3f, 0x66, 0x75, 0x93, 0xe2, 0x5f, 0xee, 0x42, 0xe3, 0x9d, 0xaf, 0xd1, 0x81, 0x19, 0x74, 0x94, 0x3e, 0x87, 0x5d, 0xfc, 0xc6, 0xba, 0xdc, 0x0e, 0xa2, 0x2d, 0xb4, 0x21, 0x26, 0x37, 0xbe, 0x71, 0xc6, 0xb7, 0x43, 0x75, 0xc4, 0x3c, 0xfb, 0xf7, 0x19, 0x08, 0x86, 0x91, 0xae, 0xc7, 0x0e, 0x69, 0x1e, 0x46, 0xed, 0xfe, 0x8c, 0xcd, 0xb4, 0xce, 0xfc, 0xb1, 0x35, 0x1e, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2486_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2486_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x9c, 0x0d, 0xe2, 0x21, 0x6b, 0xab, 0x72, 0xaf, 0x9e, 0xc8, 0x23, 0x41, 0x1e, 0x7e, 0xe4, 0x44, 0x48, 0x2b, 0xc2, 0x68, 0xae, 0x1b, 0xa9, 0x06, 0x4e, 0x04, 0x01, 0x96, 0x09, 0x75, 0x7d, 0x95, 0xb2, 0xe0, 0xc5, 0xa3, 0xfd, 0xe3, 0x77, 0xa8, 0x7f, 0xcd, 0x38, 0xb3, 0x2f, 0x80, 0x61, 0xbd, 0x3d, 0xc8, 0x1c, 0xbb, 0xdb, 0x96, 0xca, 0x62, 0x6e, 0x65, 0x82, 0xba, 0x61, 0xdc, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2486 = { .name = "ecdsa_brainpoolp512r1_sha512_2486", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2486_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2486_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2486_sig, .siglen = 128, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 366 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2487 for ECDSA, tcId is 367 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2487_pubkey[] = { 0x34, 0x30, 0x8c, 0x7d, 0x6e, 0xaa, 0x1b, 0xd7, 0xd8, 0xed, 0xc0, 0x2f, 0xc6, 0x27, 0x7c, 0x52, 0x71, 0xca, 0x84, 0x74, 0x28, 0xff, 0x21, 0x0d, 0x60, 0x78, 0xec, 0x96, 0x8d, 0xf4, 0xe8, 0x73, 0x0e, 0x21, 0xbc, 0x77, 0x15, 0xa7, 0xee, 0x85, 0xa7, 0x35, 0x28, 0x02, 0x46, 0x6c, 0x0a, 0xb2, 0x35, 0x60, 0x92, 0x9b, 0xab, 0x49, 0x29, 0x65, 0x09, 0x93, 0x7f, 0xe7, 0xcd, 0x6e, 0xdc, 0x02, 0x36, 0x49, 0x1a, 0x29, 0xb8, 0x6e, 0xa0, 0xe6, 0x12, 0x4f, 0x4b, 0x72, 0x10, 0x1f, 0x48, 0x23, 0x0b, 0xdc, 0x1f, 0x5b, 0x36, 0xd2, 0xe6, 0x50, 0x0c, 0x3f, 0xfd, 0x4b, 0xa9, 0x81, 0x8b, 0x43, 0x50, 0x46, 0x33, 0x5a, 0x2d, 0xa1, 0x5a, 0x89, 0xbc, 0x51, 0x11, 0x72, 0x04, 0xd3, 0x30, 0x83, 0x2a, 0xbc, 0x0f, 0x7b, 0x09, 0xa5, 0x9d, 0x82, 0xbb, 0xb0, 0x1d, 0x71, 0x76, 0x2d, 0x8d, 0xf5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2487_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2487_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x02, 0x9c, 0x0d, 0xe2, 0x21, 0x6b, 0xab, 0x72, 0xaf, 0x9e, 0xc8, 0x23, 0x41, 0x1e, 0x7e, 0xe4, 0x44, 0x48, 0x2b, 0xc2, 0x68, 0xae, 0x1b, 0xa9, 0x06, 0x4e, 0x04, 0x01, 0x96, 0x09, 0x75, 0x7d, 0x95, 0xb2, 0xe0, 0xc5, 0xa3, 0xfd, 0xe3, 0x77, 0xa8, 0x7f, 0xcd, 0x38, 0xb3, 0x2f, 0x80, 0x61, 0xbd, 0x3d, 0xc8, 0x1c, 0xbb, 0xdb, 0x96, 0xca, 0x62, 0x6e, 0x65, 0x82, 0xba, 0x61, 0xdc, 0x31, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2487 = { .name = "ecdsa_brainpoolp512r1_sha512_2487", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2487_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2487_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2487_sig, .siglen = 128, .result = 1, .comment = "100-bit r and s^-1, tcId is 367 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2488 for ECDSA, tcId is 368 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2488_pubkey[] = { 0x78, 0xd3, 0x5a, 0x1c, 0x8a, 0x83, 0x99, 0x73, 0x00, 0xa0, 0x2e, 0xb4, 0x77, 0x91, 0x6e, 0x70, 0x95, 0xb0, 0x01, 0xbf, 0xc4, 0x73, 0x41, 0x52, 0x8f, 0x75, 0xc6, 0xce, 0xbe, 0xfd, 0x2d, 0x59, 0xc5, 0xd5, 0xef, 0xae, 0xae, 0x9c, 0x5b, 0xd8, 0xad, 0x4b, 0xdb, 0xad, 0x76, 0xda, 0x1c, 0xbc, 0xd3, 0x54, 0x7a, 0x95, 0xd3, 0x92, 0xdf, 0xf5, 0x3c, 0xe8, 0x5b, 0xc4, 0xe4, 0xb2, 0x3f, 0xf9, 0x4b, 0xb3, 0x42, 0x7e, 0x60, 0x74, 0x13, 0x8f, 0xc0, 0xe4, 0x38, 0x32, 0x0a, 0x31, 0x4e, 0x20, 0x36, 0x71, 0x37, 0x13, 0x3b, 0x4f, 0xee, 0x63, 0xd8, 0x0e, 0xcf, 0xb5, 0x93, 0x16, 0x66, 0xb0, 0x87, 0x3d, 0xcd, 0x45, 0x6a, 0x36, 0x99, 0x4e, 0xdf, 0xda, 0x75, 0xb0, 0xf3, 0xea, 0x81, 0x73, 0x22, 0x77, 0xe7, 0x7a, 0xdc, 0x43, 0xa4, 0x81, 0xff, 0x0f, 0x0e, 0xd4, 0xd2, 0xf3, 0x7f, 0xf0, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2488_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2488_sig[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa8, 0xff, 0xe9, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2488 = { .name = "ecdsa_brainpoolp512r1_sha512_2488", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2488_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2488_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2488_sig, .siglen = 128, .result = 1, .comment = "r and s^-1 are close to n, tcId is 368 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2489 for ECDSA, tcId is 369 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2489_pubkey[] = { 0x90, 0x19, 0xbe, 0x20, 0xf6, 0x40, 0xec, 0xb2, 0xb7, 0xc3, 0x31, 0x1b, 0xcd, 0xa8, 0x70, 0x95, 0x49, 0x38, 0xa7, 0x80, 0x68, 0x6c, 0x06, 0x3f, 0xe0, 0xab, 0x26, 0xf5, 0x7b, 0xa6, 0x05, 0x11, 0xff, 0x3c, 0xee, 0x32, 0x86, 0xd8, 0xd9, 0x04, 0x87, 0xeb, 0x80, 0x14, 0x78, 0x8a, 0x1f, 0x13, 0x4e, 0xd5, 0x9a, 0x77, 0x4f, 0xdb, 0x8b, 0x0d, 0x24, 0x77, 0x0b, 0xf2, 0x30, 0x1b, 0x2d, 0x18, 0x08, 0xfe, 0x93, 0x4d, 0xc9, 0x11, 0xd1, 0x5c, 0x44, 0xe5, 0x9b, 0x90, 0x26, 0x81, 0x1e, 0x7c, 0xd8, 0xfd, 0xd8, 0x74, 0x41, 0x0d, 0x51, 0xa5, 0x6f, 0x5a, 0xea, 0x13, 0x7b, 0xfc, 0x4a, 0x8e, 0x85, 0xb7, 0xeb, 0xa7, 0x52, 0x89, 0x49, 0xcd, 0xab, 0xc4, 0xd3, 0x3a, 0xef, 0x16, 0x15, 0x7d, 0x14, 0xe3, 0xf5, 0xf6, 0x8b, 0xde, 0x5d, 0xe1, 0xc5, 0x19, 0x69, 0x17, 0xa5, 0x6d, 0xab, 0x29, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2489_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2489_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2489 = { .name = "ecdsa_brainpoolp512r1_sha512_2489", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2489_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2489_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2489_sig, .siglen = 128, .result = 1, .comment = "s == 1, tcId is 369 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2490 for ECDSA, tcId is 370 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2490_pubkey[] = { 0x90, 0x19, 0xbe, 0x20, 0xf6, 0x40, 0xec, 0xb2, 0xb7, 0xc3, 0x31, 0x1b, 0xcd, 0xa8, 0x70, 0x95, 0x49, 0x38, 0xa7, 0x80, 0x68, 0x6c, 0x06, 0x3f, 0xe0, 0xab, 0x26, 0xf5, 0x7b, 0xa6, 0x05, 0x11, 0xff, 0x3c, 0xee, 0x32, 0x86, 0xd8, 0xd9, 0x04, 0x87, 0xeb, 0x80, 0x14, 0x78, 0x8a, 0x1f, 0x13, 0x4e, 0xd5, 0x9a, 0x77, 0x4f, 0xdb, 0x8b, 0x0d, 0x24, 0x77, 0x0b, 0xf2, 0x30, 0x1b, 0x2d, 0x18, 0x08, 0xfe, 0x93, 0x4d, 0xc9, 0x11, 0xd1, 0x5c, 0x44, 0xe5, 0x9b, 0x90, 0x26, 0x81, 0x1e, 0x7c, 0xd8, 0xfd, 0xd8, 0x74, 0x41, 0x0d, 0x51, 0xa5, 0x6f, 0x5a, 0xea, 0x13, 0x7b, 0xfc, 0x4a, 0x8e, 0x85, 0xb7, 0xeb, 0xa7, 0x52, 0x89, 0x49, 0xcd, 0xab, 0xc4, 0xd3, 0x3a, 0xef, 0x16, 0x15, 0x7d, 0x14, 0xe3, 0xf5, 0xf6, 0x8b, 0xde, 0x5d, 0xe1, 0xc5, 0x19, 0x69, 0x17, 0xa5, 0x6d, 0xab, 0x29, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2490_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2490_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2490 = { .name = "ecdsa_brainpoolp512r1_sha512_2490", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2490_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2490_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2490_sig, .siglen = 128, .result = -1, .comment = "s == 0, tcId is 370 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2491 for ECDSA, tcId is 371 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2491_pubkey[] = { 0x41, 0x7d, 0xb8, 0xe9, 0x5f, 0x89, 0x13, 0x14, 0x57, 0x98, 0x3e, 0x75, 0x37, 0x90, 0x09, 0x90, 0x5d, 0x2d, 0x80, 0x08, 0xb7, 0x90, 0x51, 0x9d, 0x65, 0xe6, 0x50, 0xd3, 0xb6, 0x0a, 0x32, 0x56, 0x3c, 0x18, 0xc5, 0xaf, 0xd0, 0x6c, 0xa3, 0x14, 0xbc, 0x3a, 0x17, 0x74, 0x60, 0x87, 0xa5, 0x78, 0xce, 0x78, 0xcb, 0xb6, 0x0c, 0xb5, 0x99, 0xcf, 0x0d, 0xd9, 0xcf, 0xf2, 0x2a, 0xcb, 0x84, 0xcf, 0x0b, 0x86, 0xf2, 0xe5, 0x7c, 0xe2, 0x98, 0xc8, 0x5b, 0xc2, 0x8f, 0x3d, 0x02, 0x74, 0xcf, 0x31, 0x40, 0xea, 0x5f, 0xc6, 0x01, 0x5f, 0x4b, 0x63, 0x6f, 0xb2, 0x71, 0xda, 0x09, 0x44, 0x5e, 0x15, 0xad, 0xcb, 0x60, 0xae, 0x1f, 0x6d, 0x00, 0x1a, 0xd4, 0xe2, 0x5e, 0x6d, 0x69, 0x76, 0x72, 0x36, 0xcc, 0x16, 0xe7, 0x25, 0xf5, 0xd7, 0xb2, 0xaf, 0x44, 0x99, 0x39, 0x01, 0x7a, 0x8c, 0x8c, 0x85, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2491_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2491_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2491 = { .name = "ecdsa_brainpoolp512r1_sha512_2491", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2491_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2491_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2491_sig, .siglen = 128, .result = -1, .comment = "point at infinity during verify, tcId is 371 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2492 for ECDSA, tcId is 372 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2492_pubkey[] = { 0x9a, 0x8e, 0x0c, 0x2a, 0xa4, 0x95, 0x52, 0x03, 0xdf, 0x86, 0x6d, 0x44, 0xea, 0x32, 0x0d, 0x62, 0xfa, 0x43, 0xf1, 0xba, 0xea, 0xbc, 0xcd, 0x34, 0xec, 0x08, 0x49, 0xb3, 0xfa, 0x19, 0xbe, 0x29, 0x00, 0xca, 0x10, 0x67, 0x7c, 0x03, 0x6d, 0xa9, 0xdb, 0xb5, 0x1c, 0xa6, 0x03, 0x81, 0xcd, 0x58, 0xdf, 0xab, 0x9b, 0x2a, 0x1f, 0x6f, 0x77, 0x6b, 0x71, 0x2a, 0x22, 0xd6, 0x57, 0x57, 0x85, 0xd5, 0x1b, 0xed, 0x65, 0x2c, 0xf7, 0x75, 0xd9, 0x1b, 0xff, 0x11, 0xf9, 0x88, 0x65, 0x4a, 0xde, 0x8d, 0xd2, 0x84, 0x15, 0xb7, 0xc0, 0xde, 0x7d, 0x2c, 0x74, 0x24, 0x25, 0x6c, 0x3f, 0xd7, 0x1e, 0x9c, 0x4f, 0xab, 0xf1, 0xef, 0xf3, 0x80, 0xfd, 0xe6, 0xf8, 0xa8, 0xfe, 0x0d, 0x15, 0x60, 0xd1, 0x21, 0xba, 0x65, 0x61, 0x84, 0x51, 0xef, 0x60, 0xf9, 0x35, 0xd2, 0x92, 0xac, 0x2a, 0x26, 0x72, 0x9c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2492_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2492_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2492 = { .name = "ecdsa_brainpoolp512r1_sha512_2492", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2492_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2492_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2492_sig, .siglen = 128, .result = 1, .comment = "edge case for signature malleability, tcId is 372 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2493 for ECDSA, tcId is 373 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2493_pubkey[] = { 0x23, 0xfa, 0xce, 0x62, 0x06, 0x2c, 0xed, 0x95, 0xc7, 0x88, 0x8f, 0xcf, 0x7d, 0x4c, 0x5a, 0xf3, 0xd2, 0xa2, 0xa1, 0xcb, 0xf0, 0x86, 0x93, 0x26, 0x49, 0x69, 0x62, 0x18, 0x82, 0x73, 0x8a, 0xd7, 0x98, 0x47, 0x6f, 0xac, 0x70, 0x36, 0x1b, 0xbf, 0x2c, 0xc7, 0x9c, 0x24, 0x9f, 0xc5, 0x02, 0x71, 0xc1, 0xbf, 0xdc, 0x3f, 0x5b, 0xca, 0x20, 0xeb, 0xcc, 0xea, 0x8c, 0x36, 0x58, 0xf8, 0xd4, 0xe3, 0x07, 0x3c, 0x1a, 0x74, 0xb3, 0xc4, 0x6a, 0x20, 0x5d, 0x97, 0x07, 0x78, 0x33, 0xdc, 0xa1, 0xf3, 0x63, 0xf7, 0x6f, 0x67, 0xb6, 0x8e, 0xe1, 0x76, 0x43, 0x85, 0x28, 0xaa, 0x76, 0xab, 0xbc, 0x36, 0xb6, 0xf0, 0xa9, 0x88, 0xfb, 0x22, 0x5f, 0xe7, 0xa3, 0x3e, 0xe8, 0x85, 0x1f, 0xf2, 0x4e, 0x37, 0x13, 0x82, 0x43, 0xe2, 0xb2, 0x1d, 0xa8, 0x52, 0xa3, 0x34, 0xdb, 0xd0, 0x36, 0xcf, 0x10, 0x39, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2493_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2493_sig[] = { 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x34, 0x55, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2493 = { .name = "ecdsa_brainpoolp512r1_sha512_2493", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2493_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2493_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2493_sig, .siglen = 128, .result = 1, .comment = "edge case for signature malleability, tcId is 373 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2494 for ECDSA, tcId is 374 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2494_pubkey[] = { 0x38, 0x59, 0x7c, 0x68, 0xea, 0xbf, 0xbe, 0x64, 0x8b, 0xca, 0x0b, 0x3e, 0x8d, 0x23, 0x5f, 0x90, 0x82, 0xcf, 0x15, 0xd6, 0x94, 0xe1, 0x4e, 0x68, 0x6b, 0x1e, 0x0a, 0x89, 0xb7, 0x3e, 0x3d, 0xbc, 0x34, 0x6e, 0xbb, 0xde, 0x38, 0xda, 0x2c, 0x60, 0x2f, 0xe9, 0x75, 0xc2, 0x1a, 0x1f, 0xbc, 0x8f, 0x36, 0x3b, 0x59, 0x29, 0x03, 0xd0, 0x2d, 0x44, 0x34, 0xfa, 0xe5, 0x2e, 0xe8, 0xcc, 0x3b, 0x3a, 0x57, 0x2b, 0x82, 0x08, 0x47, 0x47, 0xea, 0x5a, 0xf0, 0x63, 0x39, 0x36, 0xb5, 0x70, 0x35, 0x43, 0x65, 0xee, 0x2d, 0x7f, 0xba, 0x4c, 0x40, 0x4b, 0xd6, 0x94, 0x58, 0xeb, 0x82, 0x50, 0x07, 0xed, 0x89, 0x06, 0x7e, 0xff, 0xec, 0x6b, 0x2e, 0x67, 0xc3, 0x2d, 0x19, 0x7e, 0x8c, 0x28, 0xec, 0xfe, 0xfa, 0x7e, 0xe7, 0x9c, 0xea, 0x09, 0xd7, 0xeb, 0x24, 0x89, 0x25, 0xc5, 0x43, 0xc3, 0x0b, 0xa5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2494_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2494_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2494 = { .name = "ecdsa_brainpoolp512r1_sha512_2494", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2494_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2494_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2494_sig, .siglen = 128, .result = 1, .comment = "u1 == 1, tcId is 374 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2495 for ECDSA, tcId is 375 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2495_pubkey[] = { 0x9d, 0x60, 0xec, 0x91, 0x97, 0x6a, 0x8f, 0xc7, 0xf8, 0x42, 0x28, 0x76, 0xcc, 0xb2, 0x28, 0x70, 0xec, 0xa8, 0xd3, 0x9b, 0x8c, 0xdf, 0xc3, 0x01, 0x93, 0xe3, 0xbb, 0x22, 0xa1, 0x0e, 0x37, 0xc5, 0x37, 0xa0, 0x92, 0xdb, 0xb0, 0x12, 0x4c, 0x8c, 0x4b, 0x26, 0x65, 0x5a, 0xd9, 0x61, 0x27, 0xd3, 0x14, 0x0b, 0xc1, 0xf9, 0x55, 0x6e, 0xba, 0xbf, 0x47, 0x7f, 0xd9, 0x59, 0x51, 0xb4, 0xb0, 0xdd, 0x2b, 0xc1, 0xfc, 0xd7, 0xd6, 0x84, 0x0f, 0xd8, 0x3a, 0x5e, 0x98, 0x23, 0x61, 0xc3, 0x04, 0xa3, 0x4e, 0xd1, 0x0e, 0x87, 0x3a, 0xa4, 0x63, 0x7e, 0xca, 0xc2, 0x9f, 0x55, 0x5c, 0x05, 0x26, 0xb5, 0x19, 0xc2, 0x38, 0xce, 0x0b, 0x00, 0x2d, 0x7e, 0x2f, 0x98, 0x22, 0x5d, 0xec, 0x88, 0x4c, 0x95, 0xd7, 0x42, 0xe8, 0x6f, 0xa6, 0x8c, 0xe6, 0xe8, 0x1f, 0x65, 0x42, 0xfe, 0x81, 0x73, 0x0c, 0xfb, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2495_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2495_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2495 = { .name = "ecdsa_brainpoolp512r1_sha512_2495", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2495_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2495_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2495_sig, .siglen = 128, .result = 1, .comment = "u1 == n - 1, tcId is 375 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2496 for ECDSA, tcId is 376 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2496_pubkey[] = { 0xa9, 0x11, 0xdf, 0x35, 0x0e, 0x95, 0xc0, 0xda, 0x4d, 0x56, 0xc3, 0xc4, 0x4a, 0x84, 0xaa, 0xd8, 0x8e, 0xe8, 0x5e, 0x62, 0x8c, 0xcc, 0x44, 0xc5, 0xe1, 0x31, 0xdf, 0xad, 0x8a, 0x3f, 0xc6, 0x9e, 0xed, 0x9c, 0x62, 0x0e, 0xd8, 0xc8, 0x21, 0xc8, 0x4d, 0xe2, 0xc2, 0x11, 0x3c, 0x1d, 0x6c, 0x10, 0xaa, 0xea, 0x55, 0x44, 0x90, 0x3b, 0x1d, 0x59, 0x67, 0x8d, 0x39, 0xb0, 0x52, 0xe0, 0xf1, 0xb3, 0xa2, 0xc1, 0x6d, 0x1e, 0x74, 0xae, 0x6f, 0xd9, 0x93, 0xb9, 0x86, 0x23, 0x46, 0x65, 0xed, 0xa1, 0x4f, 0xf6, 0x78, 0xe5, 0x8c, 0x41, 0x4a, 0xe5, 0x5d, 0xe8, 0xaa, 0x1e, 0xda, 0x26, 0x24, 0x2d, 0x61, 0x6b, 0x26, 0x7e, 0x6f, 0xdb, 0x74, 0x91, 0xef, 0xb5, 0xa3, 0xc1, 0x79, 0xb8, 0x49, 0x03, 0x12, 0x70, 0x70, 0xe5, 0xe2, 0x59, 0x7d, 0x2f, 0x0b, 0x2a, 0xf3, 0x33, 0xb6, 0x34, 0x98, 0x57, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2496_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2496_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2496 = { .name = "ecdsa_brainpoolp512r1_sha512_2496", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2496_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2496_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2496_sig, .siglen = 128, .result = 1, .comment = "u2 == 1, tcId is 376 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2497 for ECDSA, tcId is 377 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2497_pubkey[] = { 0x01, 0x82, 0x3d, 0xb8, 0xfd, 0x2b, 0xa4, 0xa3, 0x4b, 0xac, 0xc4, 0xf6, 0x42, 0x83, 0x90, 0x9f, 0x4d, 0x01, 0xd0, 0x2b, 0x8d, 0xb6, 0x6f, 0x9c, 0xb9, 0xbd, 0x77, 0x80, 0x6b, 0x89, 0x0b, 0xa3, 0x1a, 0x69, 0x15, 0xb9, 0x3d, 0xcb, 0xdd, 0x72, 0xc8, 0x33, 0x38, 0xeb, 0x60, 0x29, 0xf2, 0x2c, 0x31, 0x79, 0x57, 0x12, 0xb1, 0xac, 0x7a, 0x1f, 0xb8, 0x1a, 0x30, 0x4e, 0x3c, 0x58, 0xd8, 0xd5, 0x4e, 0xc2, 0x67, 0xba, 0xd3, 0x98, 0x4a, 0x3e, 0x2f, 0xd8, 0x7d, 0xef, 0xbe, 0x86, 0x3d, 0x73, 0x88, 0x58, 0x72, 0x48, 0x8b, 0xdd, 0xa9, 0xd6, 0xe3, 0xda, 0x8e, 0xcf, 0x8e, 0xab, 0xfd, 0x46, 0x74, 0xd2, 0x01, 0x27, 0x8f, 0xfc, 0x63, 0xcb, 0xc1, 0xff, 0xa0, 0xf9, 0x9e, 0xb5, 0xe8, 0x5c, 0x9b, 0x20, 0xae, 0x10, 0xa2, 0x26, 0xe1, 0xe5, 0x59, 0x4c, 0xa7, 0x8f, 0xc0, 0xd5, 0x31, 0xd8, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2497_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2497_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x71, 0xe9, 0x13, 0xd0, 0x92, 0x9b, 0xd8, 0x5c, 0xd5, 0x38, 0x99, 0xc9, 0x77, 0xdb, 0xfd, 0x5a, 0x87, 0x75, 0xb3, 0xcd, 0x22, 0x86, 0x8c, 0x09, 0xe4, 0x42, 0x68, 0x86, 0xf5, 0x77, 0x5a, 0xf5, 0x8e, 0x29, 0x92, 0xd6, 0x33, 0x1b, 0x6e, 0xbb, 0x81, 0x04, 0x40, 0xbb, 0xaa, 0x72, 0xb5, 0x84, 0xbe, 0x76, 0x8d, 0x00, 0xb0, 0x3e, 0x91, 0xe9, 0x23, 0xaf, 0xb9, 0xac, 0x68, 0x70, 0xaa, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2497 = { .name = "ecdsa_brainpoolp512r1_sha512_2497", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2497_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2497_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2497_sig, .siglen = 128, .result = 1, .comment = "u2 == n - 1, tcId is 377 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2498 for ECDSA, tcId is 378 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2498_pubkey[] = { 0x9f, 0xa4, 0x44, 0x01, 0xdb, 0x09, 0x8e, 0x9f, 0x28, 0x57, 0x9a, 0xaf, 0x02, 0xad, 0xff, 0x61, 0xfa, 0xf1, 0xe6, 0xf7, 0x03, 0x9c, 0xf1, 0xb3, 0x13, 0x4b, 0x83, 0xdf, 0xba, 0x96, 0x2b, 0x13, 0xa4, 0x39, 0x7d, 0xcd, 0xd6, 0xfe, 0xef, 0x4b, 0x64, 0xfc, 0x32, 0xeb, 0x3d, 0xfb, 0xa3, 0xf5, 0x96, 0xf5, 0xf7, 0x5b, 0xea, 0xbd, 0x3d, 0xad, 0xe4, 0x84, 0x08, 0x93, 0x10, 0xb6, 0x58, 0x22, 0x8b, 0xb1, 0x89, 0x7c, 0x75, 0xda, 0x51, 0xe5, 0x6d, 0xb1, 0x9d, 0x8d, 0xf1, 0x36, 0x23, 0x75, 0x4a, 0x0d, 0xb9, 0xd6, 0xda, 0x50, 0x02, 0xff, 0xc8, 0xa7, 0x3b, 0xe2, 0x1b, 0x80, 0xee, 0xec, 0xca, 0x35, 0xec, 0x54, 0x1e, 0x81, 0x83, 0x1b, 0x3f, 0xec, 0x4c, 0xc3, 0x19, 0x3d, 0xc5, 0x92, 0x9f, 0x12, 0xc4, 0xc4, 0x63, 0xa4, 0x10, 0x79, 0x11, 0xbb, 0xb0, 0xf1, 0x5a, 0xe3, 0x90, 0xef, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2498_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2498_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x4f, 0x9c, 0x8a, 0x3c, 0x42, 0x4b, 0xa2, 0xb2, 0x88, 0x2c, 0x20, 0x03, 0x55, 0xd2, 0x55, 0x96, 0xb1, 0xaa, 0x06, 0x3f, 0xf9, 0xb2, 0x57, 0x30, 0x79, 0x32, 0x51, 0x28, 0xdb, 0xc6, 0xae, 0x50, 0x98, 0xe8, 0x84, 0x60, 0xf4, 0xeb, 0x43, 0x31, 0xff, 0xa2, 0x80, 0x8a, 0xd3, 0xcf, 0x23, 0x05, 0xec, 0xcc, 0xe7, 0x0f, 0x3e, 0x6d, 0xf3, 0xcb, 0x11, 0x4c, 0x63, 0x8b, 0x45, 0x9d, 0x91, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2498 = { .name = "ecdsa_brainpoolp512r1_sha512_2498", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2498_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2498_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2498_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 378 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2499 for ECDSA, tcId is 379 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2499_pubkey[] = { 0x0f, 0xe7, 0xf7, 0xca, 0x44, 0x45, 0x35, 0x60, 0xe1, 0xba, 0x38, 0xb3, 0x4e, 0xc8, 0xdf, 0xbc, 0x74, 0x5e, 0xde, 0xfc, 0x58, 0x87, 0x82, 0x55, 0x45, 0x2f, 0x61, 0x4f, 0xee, 0x56, 0x1a, 0x8a, 0x62, 0x0b, 0x4d, 0x86, 0x24, 0xe1, 0x59, 0xbd, 0x48, 0x3d, 0xb0, 0x8c, 0x9a, 0x62, 0x10, 0x0f, 0xd2, 0xea, 0x69, 0xef, 0x73, 0x81, 0xf5, 0x20, 0xab, 0xe6, 0x51, 0xb2, 0xea, 0x22, 0x6e, 0xea, 0x15, 0x6e, 0x75, 0xaf, 0x46, 0x5b, 0x22, 0xd2, 0x26, 0x40, 0x83, 0x14, 0x53, 0x6d, 0x42, 0x38, 0xa7, 0x39, 0xfd, 0x2f, 0x40, 0x03, 0xba, 0xc5, 0x52, 0xae, 0x34, 0xbf, 0xa2, 0x7e, 0x9b, 0xe4, 0x60, 0xfe, 0x40, 0xa5, 0x46, 0x8c, 0xed, 0xd3, 0x22, 0x10, 0x48, 0xcd, 0x1b, 0x8d, 0x79, 0x6b, 0xc2, 0x74, 0x94, 0x56, 0x5f, 0x88, 0xaa, 0xf7, 0xfc, 0xcc, 0x4c, 0x0f, 0xc3, 0x6b, 0x78, 0xb1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2499_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2499_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x28, 0x20, 0xc6, 0x03, 0x53, 0x4f, 0x43, 0x0d, 0xb8, 0xe4, 0x97, 0x27, 0x24, 0x4a, 0x31, 0x6a, 0xcd, 0x6e, 0xa3, 0x07, 0x33, 0x07, 0x0d, 0xc4, 0xfd, 0xd2, 0x4e, 0x22, 0x11, 0xdd, 0xed, 0x80, 0x59, 0x7a, 0x9c, 0xb6, 0xbd, 0x86, 0x6f, 0x37, 0xb2, 0x55, 0x05, 0x7a, 0xb7, 0x71, 0x92, 0x5e, 0xb4, 0x39, 0x29, 0x33, 0x19, 0xa9, 0xa2, 0xc1, 0x2d, 0xc0, 0xb7, 0xcb, 0x1d, 0xbf, 0x4f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2499 = { .name = "ecdsa_brainpoolp512r1_sha512_2499", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2499_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2499_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2499_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 379 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2500 for ECDSA, tcId is 380 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2500_pubkey[] = { 0x99, 0xe5, 0xc3, 0xad, 0x1e, 0xf5, 0x3a, 0xd7, 0x80, 0xc3, 0xc4, 0xd9, 0x0c, 0x27, 0xcc, 0x19, 0x86, 0x49, 0x6a, 0x21, 0x5b, 0x25, 0x82, 0x9a, 0x88, 0xde, 0x20, 0x0a, 0x9c, 0x21, 0x46, 0xae, 0xc8, 0xf1, 0x82, 0xdc, 0x6d, 0xec, 0x66, 0x11, 0xc7, 0xff, 0xda, 0x1a, 0x55, 0xb0, 0xcc, 0xb2, 0x04, 0x5b, 0x1e, 0xd5, 0xc9, 0x23, 0x1b, 0x9e, 0xb3, 0xcb, 0x23, 0x24, 0x17, 0xe2, 0xfc, 0xfa, 0x35, 0xe8, 0xb3, 0xf6, 0x04, 0xf5, 0xd7, 0x93, 0xd1, 0x35, 0xce, 0x06, 0xe2, 0x3f, 0xc6, 0xac, 0x82, 0xc0, 0x99, 0x7d, 0xe9, 0xe3, 0xf4, 0xd2, 0xdc, 0x36, 0x36, 0xba, 0x0b, 0x52, 0x1c, 0x78, 0x57, 0x76, 0xdb, 0xc8, 0xd4, 0x8d, 0xa5, 0xd5, 0x9a, 0x86, 0xfb, 0x3e, 0x90, 0xfb, 0x00, 0xbc, 0xcb, 0x01, 0x7d, 0x25, 0x10, 0x0b, 0xe8, 0xe3, 0x5d, 0xb1, 0xdf, 0xb5, 0xb4, 0x49, 0x67, 0xef, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2500_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2500_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x6e, 0x5d, 0x2d, 0xd1, 0xe3, 0xd2, 0x78, 0xeb, 0xc6, 0xf7, 0x34, 0x09, 0x65, 0x1e, 0xbc, 0x46, 0xb6, 0x5c, 0x6c, 0x3e, 0xfe, 0x11, 0x65, 0xb7, 0x4b, 0x51, 0x64, 0x35, 0x67, 0x83, 0x25, 0x1e, 0x3b, 0xb6, 0x66, 0x80, 0x4f, 0xaa, 0x7b, 0xf3, 0x89, 0xb5, 0xff, 0x28, 0x5b, 0x66, 0xb9, 0x12, 0xc5, 0x1c, 0x47, 0x8c, 0x58, 0xcd, 0x2d, 0xbe, 0x52, 0x93, 0xd9, 0x57, 0x35, 0xab, 0x94, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2500 = { .name = "ecdsa_brainpoolp512r1_sha512_2500", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2500_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2500_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2500_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 380 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2501 for ECDSA, tcId is 381 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2501_pubkey[] = { 0x42, 0x3f, 0xc7, 0xaa, 0x8d, 0x6d, 0x77, 0xfa, 0xe6, 0x0b, 0xeb, 0xce, 0x77, 0x57, 0xe1, 0x56, 0x89, 0x42, 0x6c, 0xba, 0xbd, 0x2c, 0x3f, 0xa6, 0xff, 0x71, 0xda, 0x77, 0x65, 0xab, 0x88, 0x7a, 0x93, 0xc9, 0x3c, 0xb8, 0xe1, 0x00, 0x88, 0x92, 0xc0, 0xd8, 0xf1, 0xe0, 0x3e, 0x48, 0x55, 0x5c, 0x81, 0xdf, 0xc4, 0x33, 0xd4, 0x2f, 0x48, 0x90, 0xb7, 0x11, 0x77, 0xb8, 0x48, 0xaa, 0xb9, 0xcc, 0x1f, 0xf6, 0xab, 0xd7, 0xc7, 0xf9, 0x53, 0xde, 0x79, 0x74, 0x80, 0xe2, 0x92, 0xb9, 0x87, 0xdd, 0xf4, 0x75, 0x70, 0xd8, 0x8d, 0xc5, 0xe5, 0x1c, 0x7a, 0x47, 0xc3, 0x57, 0xd7, 0x19, 0x78, 0x19, 0x09, 0x31, 0x97, 0x6f, 0x55, 0xcc, 0x84, 0xc3, 0xa4, 0xcd, 0x46, 0x35, 0xed, 0x5b, 0xa4, 0x92, 0x0e, 0xfa, 0x82, 0x19, 0xc7, 0xaa, 0x16, 0x85, 0xbf, 0x1a, 0x9b, 0xc7, 0x12, 0x9f, 0xa2, 0xcb, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2501_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2501_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2b, 0xd0, 0xea, 0x22, 0xdf, 0x17, 0xe2, 0xf0, 0x85, 0x40, 0x94, 0x00, 0x2d, 0xf5, 0x6a, 0x63, 0xda, 0x80, 0x71, 0x32, 0x74, 0xb5, 0x19, 0x23, 0x27, 0xb1, 0xd8, 0x6c, 0x25, 0x64, 0x37, 0xbd, 0x10, 0xf7, 0xa2, 0x1e, 0x1c, 0x74, 0x80, 0x83, 0x6d, 0xea, 0x40, 0xf5, 0x6e, 0xe9, 0xb5, 0x81, 0x0c, 0x68, 0xf2, 0xa0, 0x6e, 0x72, 0x8a, 0x80, 0x2d, 0x01, 0xb5, 0xa5, 0x14, 0xdb, 0x69, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2501 = { .name = "ecdsa_brainpoolp512r1_sha512_2501", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2501_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2501_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2501_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2502 for ECDSA, tcId is 382 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2502_pubkey[] = { 0x41, 0x5e, 0x9d, 0x50, 0xaf, 0x5d, 0xa7, 0x11, 0x89, 0x60, 0x78, 0x11, 0x68, 0x0d, 0xc1, 0x6d, 0x3d, 0xa9, 0xa0, 0xe3, 0x39, 0xa5, 0x3d, 0x16, 0x6b, 0x9b, 0x22, 0x68, 0x06, 0xa6, 0xff, 0xda, 0xe0, 0x1e, 0xb4, 0x02, 0x95, 0xcf, 0x5e, 0x00, 0xf4, 0x7d, 0xdf, 0x0b, 0x4a, 0xfa, 0x67, 0x29, 0xa8, 0xf7, 0xd1, 0x8a, 0x43, 0x7d, 0x15, 0x7d, 0xf4, 0xd9, 0x9c, 0x19, 0x18, 0x1e, 0xf5, 0x24, 0x90, 0x7e, 0xfd, 0xc1, 0x5b, 0x33, 0x86, 0x64, 0xe9, 0x11, 0xb6, 0x2f, 0x9a, 0xc0, 0x15, 0xd9, 0xe3, 0x6b, 0xb7, 0xbe, 0x0c, 0xcc, 0xdf, 0x33, 0x05, 0x17, 0xd5, 0x29, 0x70, 0xda, 0xb1, 0x88, 0x48, 0xbc, 0xe0, 0xbf, 0xdf, 0xc0, 0xbd, 0x39, 0xc6, 0x75, 0x75, 0x36, 0x66, 0x03, 0x6e, 0x4c, 0x4c, 0x5e, 0xb0, 0xc6, 0x23, 0x21, 0xb2, 0x2b, 0xd1, 0xcb, 0x1f, 0xa3, 0x52, 0x67, 0x0f, 0xbc, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2502_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2502_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x3d, 0xa9, 0x45, 0xbb, 0x81, 0x5e, 0xe5, 0x30, 0x3a, 0x05, 0xdc, 0x5e, 0xec, 0x32, 0x85, 0xb0, 0xa1, 0xed, 0xf4, 0x3b, 0xe7, 0xca, 0xa1, 0x9f, 0xc8, 0xf5, 0xac, 0x06, 0x12, 0x2b, 0x34, 0x51, 0xd8, 0x5b, 0x7d, 0xf2, 0xda, 0x41, 0xf3, 0x47, 0xe2, 0xe5, 0x14, 0x58, 0xf3, 0x9d, 0x4d, 0x16, 0xc3, 0xcc, 0x87, 0xaa, 0xd7, 0xb4, 0x51, 0x75, 0x8d, 0x3a, 0xfd, 0x97, 0x29, 0x65, 0x91, 0x56, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2502 = { .name = "ecdsa_brainpoolp512r1_sha512_2502", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2502_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2502_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2502_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2503 for ECDSA, tcId is 383 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2503_pubkey[] = { 0x2c, 0x65, 0xb6, 0x1f, 0xa1, 0xf4, 0xd3, 0xc8, 0x6c, 0x82, 0x9d, 0x15, 0xd4, 0xde, 0x5b, 0x47, 0xc5, 0xb7, 0x89, 0xf5, 0x3a, 0x43, 0x55, 0x66, 0x1f, 0x09, 0xee, 0xf3, 0xb9, 0x7b, 0x21, 0xa3, 0xb9, 0x3f, 0xae, 0x0f, 0x03, 0x5b, 0xf3, 0x47, 0xa3, 0x15, 0x59, 0x47, 0x85, 0x05, 0x9b, 0x37, 0xcc, 0xf8, 0x06, 0x2a, 0x39, 0x1a, 0xce, 0x30, 0xe6, 0x9a, 0x98, 0x4d, 0x84, 0x17, 0xca, 0x2c, 0x34, 0x1a, 0x80, 0x19, 0x65, 0x3a, 0xd6, 0x17, 0xda, 0x57, 0xc9, 0x99, 0x7c, 0x2d, 0xeb, 0xfa, 0xf3, 0x40, 0xa6, 0x78, 0x0b, 0xd8, 0x37, 0x1a, 0xee, 0x2c, 0x66, 0x8b, 0x7d, 0xcc, 0x70, 0xfe, 0x06, 0x78, 0x9b, 0x8f, 0x36, 0xf8, 0xf1, 0x3f, 0x40, 0x82, 0x2f, 0x04, 0x01, 0x10, 0x2e, 0x03, 0x74, 0x2c, 0x8f, 0xfa, 0xa1, 0xdc, 0xf0, 0xba, 0xf9, 0x81, 0xc7, 0xec, 0xc1, 0xa7, 0xe2, 0x78, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2503_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2503_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x7b, 0x52, 0x8b, 0x77, 0x02, 0xbd, 0xca, 0x60, 0x74, 0x0b, 0xb8, 0xbd, 0xd8, 0x65, 0x0b, 0x61, 0x43, 0xdb, 0xe8, 0x77, 0xcf, 0x95, 0x43, 0x3f, 0x91, 0xeb, 0x58, 0x0c, 0x24, 0x56, 0x68, 0xa3, 0xb0, 0xb6, 0xfb, 0xe5, 0xb4, 0x83, 0xe6, 0x8f, 0xc5, 0xca, 0x28, 0xb1, 0xe7, 0x3a, 0x9a, 0x2d, 0x87, 0x99, 0x0f, 0x55, 0xaf, 0x68, 0xa2, 0xeb, 0x1a, 0x75, 0xfb, 0x2e, 0x52, 0xcb, 0x22, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2503 = { .name = "ecdsa_brainpoolp512r1_sha512_2503", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2503_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2503_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2503_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2504 for ECDSA, tcId is 384 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2504_pubkey[] = { 0x6a, 0x82, 0x22, 0xda, 0x63, 0x25, 0x50, 0xf8, 0x5a, 0x0d, 0x59, 0xfa, 0x8e, 0x8f, 0x32, 0x7e, 0x16, 0x27, 0x4b, 0x63, 0x97, 0xd5, 0xa4, 0x2a, 0xa1, 0xbf, 0x6f, 0x1a, 0x1b, 0x5c, 0xed, 0xd3, 0xa1, 0x18, 0x2d, 0xd0, 0xf2, 0x2f, 0xca, 0x69, 0x0c, 0x5e, 0xf5, 0xa2, 0x61, 0xe6, 0xe5, 0xd8, 0xba, 0xe3, 0x4f, 0x2e, 0x1a, 0xe2, 0x94, 0xb5, 0x0a, 0x28, 0x7c, 0x88, 0x25, 0x74, 0xee, 0x7c, 0x82, 0xd8, 0x62, 0x18, 0x78, 0x23, 0x38, 0x75, 0x7b, 0x9b, 0xab, 0x35, 0x9e, 0x63, 0x51, 0x6c, 0xe3, 0xdb, 0xf5, 0xe7, 0xfd, 0xbd, 0x5b, 0xaa, 0x4a, 0xe9, 0x97, 0x13, 0xfe, 0x5d, 0xd8, 0x5b, 0xb6, 0x1e, 0xa1, 0x2a, 0x17, 0x8c, 0xfb, 0x50, 0xa2, 0x5e, 0xef, 0x41, 0xa0, 0x85, 0xdc, 0xd5, 0xe5, 0xb8, 0x8f, 0x14, 0x8b, 0xad, 0xf4, 0xc8, 0xf4, 0x03, 0x1e, 0x03, 0xd4, 0x9a, 0xec, 0x6b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2504_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2504_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2d, 0x17, 0x04, 0x8e, 0xe5, 0x7e, 0x45, 0xb6, 0x60, 0x57, 0xac, 0xfa, 0xb9, 0xc3, 0xb2, 0xa4, 0x93, 0x9e, 0x81, 0xb1, 0xeb, 0x0f, 0x89, 0x72, 0xa8, 0xc2, 0xb5, 0xaa, 0x6b, 0x04, 0xc1, 0x55, 0x84, 0x89, 0x4e, 0x16, 0x8e, 0x15, 0xdc, 0x5c, 0xf8, 0x89, 0xfa, 0x09, 0xf7, 0x93, 0x4d, 0x10, 0x84, 0xde, 0xf3, 0x51, 0x04, 0x2c, 0x2b, 0x97, 0xcd, 0xe3, 0xc1, 0x00, 0xb8, 0x94, 0xba, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2504 = { .name = "ecdsa_brainpoolp512r1_sha512_2504", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2504_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2504_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2504_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2505 for ECDSA, tcId is 385 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2505_pubkey[] = { 0xaa, 0x17, 0xb5, 0xbd, 0x2b, 0xbf, 0xce, 0x1a, 0xe1, 0x33, 0xe2, 0x47, 0x9f, 0xe1, 0xf8, 0x7e, 0x64, 0xe6, 0x16, 0x58, 0x97, 0xee, 0x45, 0x73, 0x91, 0xbc, 0x2d, 0xae, 0xe9, 0xfd, 0x76, 0x86, 0xb8, 0xd4, 0xbe, 0xc8, 0xec, 0xfa, 0x8a, 0x56, 0x93, 0xf3, 0x9b, 0x4e, 0xf9, 0xb4, 0x16, 0x3c, 0xdb, 0xc5, 0xc4, 0x54, 0x6f, 0xad, 0xba, 0x0c, 0xfe, 0x3e, 0x15, 0x32, 0xea, 0x2a, 0xad, 0xd4, 0x73, 0xfa, 0x93, 0x03, 0x97, 0x17, 0xf9, 0xdf, 0xd4, 0x9a, 0x9c, 0x28, 0x84, 0xdc, 0x2d, 0x10, 0x12, 0xd7, 0x1d, 0x60, 0x54, 0xea, 0x0f, 0x39, 0x16, 0x85, 0xbd, 0xe5, 0xe8, 0xc0, 0xd5, 0xd6, 0x11, 0xb4, 0x0b, 0xd1, 0xfb, 0xe3, 0x5d, 0xc5, 0xbd, 0x7e, 0x91, 0x6d, 0xdc, 0x9a, 0x66, 0xba, 0x54, 0xae, 0x89, 0x49, 0x77, 0x6f, 0x2f, 0x21, 0xd4, 0xcf, 0x54, 0xb2, 0xf6, 0xc7, 0x57, 0xc5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2505_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2505_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2b, 0x18, 0x98, 0x6d, 0x87, 0xbd, 0x21, 0xcd, 0xcb, 0xf0, 0xf1, 0x31, 0x03, 0x79, 0x47, 0x35, 0x97, 0x93, 0x54, 0x29, 0x0c, 0x43, 0xaa, 0x8c, 0x29, 0x8d, 0xbd, 0x47, 0x3d, 0xe5, 0xa3, 0x89, 0xcb, 0x55, 0xf0, 0x0c, 0x21, 0x84, 0xa2, 0x35, 0xf6, 0xb7, 0x34, 0x73, 0x05, 0x92, 0x6c, 0x0e, 0x25, 0x78, 0x5e, 0xca, 0x6d, 0x98, 0xeb, 0x2b, 0xd9, 0x21, 0x56, 0x21, 0x64, 0xf3, 0x65, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2505 = { .name = "ecdsa_brainpoolp512r1_sha512_2505", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2505_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2505_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2505_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2506 for ECDSA, tcId is 386 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2506_pubkey[] = { 0xa7, 0x2d, 0xe8, 0xd4, 0xd2, 0x89, 0x6f, 0x9b, 0xc6, 0xd7, 0x2a, 0x68, 0xf8, 0xb2, 0x58, 0x8f, 0xa2, 0xec, 0xb4, 0x99, 0x2e, 0x8e, 0x36, 0x16, 0xfd, 0x58, 0xa1, 0xa1, 0x2f, 0x03, 0x27, 0xdb, 0x1f, 0xc3, 0x74, 0x0e, 0xd3, 0x84, 0x02, 0x20, 0x78, 0x15, 0x6f, 0xe6, 0x67, 0x12, 0xbf, 0x09, 0x2c, 0xab, 0xbc, 0x43, 0x65, 0x9c, 0xdd, 0xc9, 0xcf, 0x3d, 0xbf, 0x80, 0x7b, 0xcf, 0x36, 0x35, 0x88, 0x19, 0x31, 0x9a, 0xef, 0x0e, 0x23, 0xb1, 0x42, 0xe7, 0x5d, 0x9c, 0x4c, 0x13, 0x98, 0x12, 0xe5, 0x5e, 0x1c, 0x41, 0x9d, 0x96, 0x08, 0x4a, 0x68, 0xb9, 0x50, 0x35, 0x6c, 0x46, 0xeb, 0x23, 0x57, 0x51, 0x2f, 0x20, 0x8b, 0xb1, 0xdb, 0xe9, 0x70, 0xd1, 0x90, 0x0c, 0x8d, 0xfd, 0xa7, 0x7d, 0x2f, 0x47, 0x77, 0x60, 0xdb, 0x63, 0xd2, 0x28, 0xdb, 0xf8, 0xb3, 0x42, 0x26, 0x5b, 0xcb, 0xde, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2506_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2506_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x44, 0x5f, 0x8c, 0xaa, 0xf2, 0x09, 0x3f, 0x68, 0x82, 0xbc, 0x6c, 0x7a, 0xf5, 0x37, 0xeb, 0xac, 0xbf, 0x86, 0x20, 0xf0, 0xb6, 0xac, 0x68, 0xa1, 0x9a, 0x5d, 0xe1, 0x93, 0x52, 0x25, 0xcc, 0x94, 0x9c, 0x24, 0x36, 0x55, 0x04, 0x22, 0x29, 0x38, 0xc5, 0x69, 0x82, 0xb8, 0x24, 0xbb, 0xee, 0x59, 0x25, 0x3f, 0x4a, 0x86, 0x64, 0x85, 0x14, 0x9e, 0xc4, 0xc5, 0xb5, 0xec, 0x9a, 0xd7, 0x4e, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2506 = { .name = "ecdsa_brainpoolp512r1_sha512_2506", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2506_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2506_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2506_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2507 for ECDSA, tcId is 387 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2507_pubkey[] = { 0x37, 0xd8, 0x51, 0x9f, 0x0c, 0x74, 0x92, 0xff, 0x44, 0x3b, 0xad, 0x34, 0xcb, 0xd5, 0x4e, 0xee, 0x9b, 0xa1, 0x20, 0xe4, 0x1f, 0xbb, 0x9f, 0xd6, 0x04, 0xcd, 0xd6, 0xd4, 0x1b, 0x76, 0x2b, 0xf2, 0xbb, 0xa3, 0x92, 0xd4, 0xf4, 0x64, 0x69, 0x78, 0x73, 0x0f, 0x65, 0x56, 0x66, 0x2b, 0x99, 0x76, 0x8d, 0xcb, 0x27, 0x54, 0xc1, 0x80, 0xc0, 0xfb, 0xd8, 0xad, 0x70, 0x76, 0x36, 0xd8, 0xf8, 0xb1, 0x43, 0xb1, 0x7d, 0x72, 0x8f, 0xfe, 0xac, 0x45, 0x40, 0x19, 0x53, 0x0d, 0x2b, 0xb0, 0xf6, 0x9a, 0x58, 0x53, 0x5a, 0x2e, 0x8e, 0x60, 0x9f, 0xf6, 0x95, 0x96, 0xd5, 0x3d, 0x11, 0xa0, 0x0e, 0x6f, 0x65, 0x0d, 0x49, 0xd9, 0xa5, 0xf2, 0x11, 0x20, 0x4b, 0x4e, 0x5a, 0x42, 0x1c, 0x75, 0x7f, 0x8e, 0x17, 0x38, 0x95, 0x5d, 0xf9, 0x6b, 0xad, 0x5b, 0xfd, 0xd7, 0x1e, 0x15, 0x5a, 0x93, 0x2d, 0x1f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2507_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2507_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2d, 0xa0, 0x89, 0xbe, 0x4c, 0xcf, 0x10, 0xec, 0x5b, 0xd4, 0x63, 0x55, 0x6e, 0xfb, 0xd3, 0x38, 0x8c, 0xc3, 0x43, 0xb9, 0xdd, 0x0b, 0xbd, 0x6f, 0x2e, 0x98, 0xa5, 0xd0, 0xca, 0x36, 0x2d, 0x0f, 0xde, 0x2a, 0xeb, 0xf0, 0x2b, 0xde, 0xf1, 0x73, 0xa0, 0xf1, 0xf0, 0x47, 0x55, 0xee, 0x76, 0xa0, 0x98, 0x72, 0x76, 0x38, 0xe4, 0xf7, 0xf3, 0x89, 0x52, 0x1d, 0x99, 0x7b, 0xab, 0x85, 0xb7, 0x81, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2507 = { .name = "ecdsa_brainpoolp512r1_sha512_2507", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2507_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2507_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2507_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2508 for ECDSA, tcId is 388 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2508_pubkey[] = { 0x2a, 0xfb, 0x78, 0x6d, 0x24, 0x6b, 0x43, 0xa5, 0x3d, 0xf6, 0x84, 0x1d, 0x04, 0xd4, 0xc7, 0x70, 0x53, 0x57, 0x93, 0x96, 0x97, 0x71, 0x4e, 0xd4, 0x68, 0x1d, 0xc5, 0x95, 0x18, 0x81, 0x91, 0x87, 0x7a, 0x46, 0xf3, 0xc6, 0xbb, 0xc6, 0x31, 0x70, 0x40, 0x6e, 0x0c, 0x6d, 0xb7, 0xdd, 0x67, 0x89, 0xa6, 0x44, 0x73, 0x8f, 0x7d, 0x0a, 0xcb, 0x7c, 0x9e, 0x59, 0x59, 0xc0, 0x1e, 0x39, 0xe9, 0x75, 0x20, 0x32, 0x7e, 0x6e, 0x5c, 0x92, 0x51, 0x98, 0xb7, 0x4a, 0xf0, 0xbe, 0xb5, 0x1a, 0x83, 0xea, 0x66, 0x2e, 0xfb, 0xc3, 0xf8, 0x5b, 0xba, 0x89, 0x24, 0x04, 0x6b, 0x97, 0xda, 0xcb, 0x07, 0x17, 0xd6, 0xb7, 0xf4, 0x22, 0xd8, 0x42, 0x66, 0x25, 0xea, 0x7f, 0x6b, 0x4c, 0xe8, 0x65, 0xdf, 0xab, 0x26, 0x4b, 0xa5, 0x24, 0x7b, 0x4d, 0xad, 0x3e, 0x2c, 0xa5, 0x61, 0x4b, 0xff, 0x4c, 0x0d, 0x5f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2508_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2508_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x5b, 0x41, 0x13, 0x7c, 0x99, 0x9e, 0x21, 0xd8, 0xb7, 0xa8, 0xc6, 0xaa, 0xdd, 0xf7, 0xa6, 0x71, 0x19, 0x86, 0x87, 0x73, 0xba, 0x17, 0x7a, 0xde, 0x5d, 0x31, 0x4b, 0xa1, 0x94, 0x6c, 0x5a, 0x1f, 0xbc, 0x55, 0xd7, 0xe0, 0x57, 0xbd, 0xe2, 0xe7, 0x41, 0xe3, 0xe0, 0x8e, 0xab, 0xdc, 0xed, 0x41, 0x30, 0xe4, 0xec, 0x71, 0xc9, 0xef, 0xe7, 0x12, 0xa4, 0x3b, 0x32, 0xf7, 0x57, 0x0b, 0x6f, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2508 = { .name = "ecdsa_brainpoolp512r1_sha512_2508", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2508_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2508_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2508_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2509 for ECDSA, tcId is 389 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2509_pubkey[] = { 0x1b, 0x41, 0x9a, 0xa3, 0x9d, 0x3e, 0x31, 0x25, 0xae, 0x70, 0x5f, 0x77, 0x88, 0x5c, 0x3b, 0x11, 0x38, 0x7b, 0xc4, 0x22, 0xfa, 0xdb, 0xba, 0x7e, 0xb0, 0xa6, 0x6a, 0xc1, 0x4a, 0xe2, 0x6c, 0x0f, 0x97, 0x83, 0x33, 0xdc, 0xe6, 0x4e, 0x4f, 0xe0, 0xd3, 0xbd, 0xbc, 0x6d, 0x52, 0xad, 0xce, 0xe3, 0xb5, 0x14, 0x93, 0xa2, 0x6d, 0x21, 0x37, 0x6b, 0xef, 0x76, 0x4e, 0x06, 0x28, 0xdf, 0xbb, 0x12, 0x73, 0xee, 0x3e, 0xf2, 0xea, 0xe0, 0x4a, 0x27, 0xe7, 0x98, 0x32, 0x3d, 0x50, 0xe0, 0xf4, 0xfe, 0xfb, 0xc4, 0x3f, 0xc4, 0x61, 0x36, 0x77, 0x31, 0x1d, 0xa8, 0x58, 0xf8, 0x3e, 0x5d, 0x9b, 0x3b, 0x9e, 0x41, 0xaf, 0x6c, 0x55, 0x82, 0x90, 0x8a, 0x3e, 0xf2, 0x94, 0x8e, 0x4b, 0x5d, 0xc8, 0xc5, 0xb8, 0xa5, 0x90, 0xb3, 0xce, 0xda, 0x18, 0xe4, 0xc4, 0xcc, 0x05, 0xdd, 0xc2, 0x68, 0xdc, 0xfe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2509_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2509_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x88, 0xe1, 0x9d, 0x3a, 0xe6, 0x6d, 0x32, 0xc5, 0x13, 0x7d, 0x2a, 0x00, 0x4c, 0xf3, 0x79, 0xa9, 0xa6, 0x49, 0xcb, 0x2d, 0x97, 0x23, 0x38, 0x4d, 0x8b, 0xc9, 0xf1, 0x72, 0x5e, 0xa2, 0x87, 0x2f, 0x9a, 0x80, 0xc3, 0xd0, 0x83, 0x9c, 0xd4, 0x5a, 0xe2, 0xd5, 0xd0, 0xd6, 0x01, 0xcb, 0x63, 0xe1, 0xc9, 0x57, 0x62, 0xaa, 0xae, 0xe7, 0xda, 0x9b, 0xf6, 0x58, 0xcc, 0x73, 0x02, 0x91, 0x26, 0x83, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2509 = { .name = "ecdsa_brainpoolp512r1_sha512_2509", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2509_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2509_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2509_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2510 for ECDSA, tcId is 390 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2510_pubkey[] = { 0x32, 0x7a, 0x6e, 0x5e, 0x4e, 0xf2, 0xbe, 0xc0, 0x63, 0x1e, 0x13, 0x35, 0x40, 0x94, 0xcc, 0xa4, 0xdf, 0x5b, 0xc4, 0x01, 0x8a, 0x05, 0x72, 0xc0, 0x08, 0x73, 0x54, 0x3d, 0x98, 0x10, 0x0a, 0xc0, 0x9d, 0x76, 0xd2, 0x7b, 0xd6, 0xe0, 0xbc, 0x2d, 0xc9, 0x6b, 0xd8, 0xcb, 0xbe, 0x19, 0xae, 0xc0, 0xc1, 0x41, 0x32, 0x0f, 0xfd, 0x64, 0xae, 0xdb, 0xa5, 0xc1, 0x7a, 0x1b, 0xe4, 0xbd, 0x29, 0x60, 0x78, 0xdc, 0xcc, 0x45, 0x3c, 0x2a, 0xa7, 0xe9, 0x2a, 0x77, 0x34, 0x82, 0x33, 0x06, 0xc6, 0xc1, 0xae, 0x3e, 0x52, 0x13, 0x1e, 0xdb, 0xfa, 0x5f, 0xdd, 0xb7, 0x19, 0xc8, 0xd5, 0xd0, 0x0b, 0xa3, 0xd3, 0x8b, 0xaa, 0x8f, 0xb7, 0x27, 0xbb, 0x94, 0x1e, 0x21, 0xba, 0xff, 0x37, 0x55, 0x03, 0xc2, 0x7e, 0xed, 0x70, 0x46, 0xfa, 0x6d, 0x00, 0xc7, 0x0e, 0xf1, 0x36, 0xe0, 0x1d, 0x36, 0xef, 0xd5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2510_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2510_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x37, 0x2e, 0x96, 0xe8, 0xf1, 0xe9, 0x3c, 0x75, 0xe3, 0x7b, 0x9a, 0x04, 0xb2, 0x8f, 0x5e, 0x23, 0x5b, 0x2e, 0x36, 0x1f, 0x7f, 0x08, 0xb2, 0xdb, 0xa5, 0xa8, 0xb2, 0x1a, 0xb3, 0xc1, 0x92, 0x8f, 0x1d, 0xdb, 0x33, 0x40, 0x27, 0xd5, 0x3d, 0xf9, 0xc4, 0xda, 0xff, 0x94, 0x2d, 0xb3, 0x5c, 0x89, 0x62, 0x8e, 0x23, 0xc6, 0x2c, 0x66, 0x96, 0xdf, 0x29, 0x49, 0xec, 0xab, 0x9a, 0xd5, 0xca, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2510 = { .name = "ecdsa_brainpoolp512r1_sha512_2510", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2510_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2510_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2510_sig, .siglen = 128, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2511 for ECDSA, tcId is 391 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2511_pubkey[] = { 0x9a, 0xa1, 0x89, 0xb5, 0xb1, 0xe5, 0xb6, 0x66, 0x41, 0xc7, 0xec, 0x3f, 0xa7, 0xd0, 0xdb, 0xb6, 0xa7, 0x2d, 0x87, 0x4d, 0x18, 0xc7, 0x92, 0x7c, 0xac, 0x84, 0x70, 0xa7, 0x09, 0x69, 0xf3, 0x57, 0x05, 0xbc, 0x73, 0x18, 0x2a, 0xbc, 0x10, 0xb5, 0xa1, 0x69, 0x55, 0x88, 0x96, 0x19, 0xbc, 0xba, 0x6f, 0xf3, 0x10, 0x20, 0x94, 0x73, 0xc3, 0x12, 0x0e, 0x44, 0xa2, 0xe1, 0xbf, 0x9f, 0xc9, 0xc7, 0x2e, 0x5d, 0xe7, 0x47, 0x49, 0xa0, 0x52, 0x27, 0x50, 0x9a, 0x2b, 0x3d, 0x03, 0x22, 0xa8, 0xf9, 0x02, 0x07, 0x09, 0xcb, 0x8e, 0x5d, 0xa6, 0x7d, 0xfe, 0xe2, 0x8e, 0x96, 0xe0, 0xab, 0x8a, 0x1c, 0x32, 0x08, 0x05, 0x5d, 0x1f, 0x08, 0xf3, 0x8f, 0xa1, 0xcc, 0x79, 0xc1, 0x19, 0xff, 0x70, 0x45, 0x92, 0xa8, 0xee, 0xf5, 0x8b, 0xf6, 0x62, 0x04, 0xb8, 0x1a, 0xd0, 0xb0, 0xab, 0xdd, 0x03, 0x90, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2511_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2511_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2511 = { .name = "ecdsa_brainpoolp512r1_sha512_2511", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2511_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2511_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2511_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 391 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2512 for ECDSA, tcId is 392 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2512_pubkey[] = { 0x43, 0x9a, 0x85, 0x9d, 0x7a, 0xaf, 0x99, 0xf5, 0x72, 0x05, 0xf2, 0x10, 0xc9, 0x3a, 0xb8, 0x9c, 0x31, 0x7b, 0xd2, 0xfa, 0x21, 0x5e, 0x79, 0x03, 0xa6, 0x79, 0x76, 0xd3, 0x36, 0xd8, 0x3b, 0x1b, 0xf9, 0x71, 0x90, 0x67, 0x07, 0x74, 0x20, 0x07, 0x8f, 0x83, 0x75, 0x14, 0xd6, 0x07, 0xae, 0x39, 0x81, 0x18, 0x5d, 0xc7, 0xb0, 0x26, 0x27, 0xb0, 0x5a, 0xc6, 0x6e, 0x49, 0x1a, 0x2b, 0x94, 0xc5, 0x4c, 0x3f, 0xa4, 0x7a, 0x92, 0x6d, 0xbd, 0x69, 0x45, 0xac, 0xa6, 0xd4, 0x04, 0xf8, 0x5f, 0x46, 0xe0, 0x70, 0xd0, 0x4e, 0x7d, 0xab, 0xf6, 0xfa, 0x9c, 0xb8, 0x8c, 0x34, 0x28, 0xdd, 0x02, 0xfd, 0x01, 0xa9, 0xb1, 0x90, 0xbb, 0x61, 0xdf, 0xb7, 0xb2, 0x43, 0x9e, 0x42, 0xd0, 0xb6, 0x89, 0xae, 0xf9, 0x68, 0x35, 0x6b, 0x01, 0x1c, 0xf3, 0x05, 0x4a, 0xb9, 0x29, 0xc8, 0x57, 0x77, 0xe6, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2512_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x48, 0xd7, 0x85, 0x1b, 0x07, 0x9f, 0x62, 0x02, 0x09, 0xe8, 0xba, 0x05, 0xeb, 0x24, 0xee, 0x51, 0x59, 0x64, 0xd3, 0x75, 0x77, 0xc7, 0xc3, 0xae, 0x30, 0x9a, 0xb2, 0xbd, 0xdd, 0x7e, 0xee, 0x71, 0x01, 0x89, 0x9d, 0x0c, 0x6c, 0x78, 0x01, 0x11, 0xbe, 0xde, 0x61, 0xed, 0x12, 0x15, 0xec, 0x42, 0x39, 0x94, 0x09, 0xd6, 0x05, 0xec, 0xcc, 0x9a, 0xac, 0x4c, 0x95, 0x48, 0xf8, 0x77, 0x70, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2512 = { .name = "ecdsa_brainpoolp512r1_sha512_2512", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2512_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2512_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2512_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 392 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2513 for ECDSA, tcId is 393 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2513_pubkey[] = { 0x66, 0xfa, 0x15, 0x8c, 0x51, 0xd3, 0xa9, 0x42, 0x1c, 0xbb, 0x13, 0x37, 0x99, 0xab, 0x90, 0xa1, 0x23, 0x87, 0xec, 0x78, 0x75, 0xa2, 0xb3, 0x54, 0xb8, 0x48, 0x76, 0x73, 0x49, 0x5b, 0xb1, 0x87, 0x9e, 0xf1, 0x67, 0x2f, 0x49, 0x28, 0xa2, 0x03, 0x40, 0x95, 0xa0, 0x2c, 0x7d, 0x08, 0x3f, 0x27, 0xe0, 0xea, 0xc0, 0xa4, 0x0b, 0x87, 0xd8, 0x37, 0xf5, 0x2e, 0x76, 0x48, 0x20, 0x0c, 0x56, 0x66, 0x27, 0x80, 0x37, 0xcd, 0x7e, 0x5e, 0x8b, 0xc6, 0x82, 0x10, 0x27, 0xb2, 0x1a, 0x2c, 0xa7, 0xae, 0x9c, 0x69, 0x4a, 0xe8, 0x09, 0x96, 0x6b, 0x79, 0xd4, 0x41, 0xdc, 0xdc, 0x9d, 0x3b, 0x44, 0x4f, 0x87, 0x93, 0x12, 0x2f, 0x30, 0x95, 0x6a, 0xe0, 0xa7, 0xaa, 0xdf, 0xbe, 0x43, 0x1a, 0x34, 0x2d, 0xcd, 0x85, 0x70, 0x95, 0xbd, 0x05, 0x8a, 0x74, 0x2b, 0xa5, 0x8a, 0xf1, 0x8b, 0x1a, 0x51, 0x9b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2513_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2513_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0e, 0x6c, 0xf6, 0x8d, 0x5b, 0xe5, 0x13, 0x82, 0x53, 0xde, 0x29, 0x0e, 0xc4, 0x1b, 0xde, 0x7d, 0xcf, 0x96, 0x06, 0x5c, 0x28, 0x0d, 0x0a, 0x09, 0xd9, 0xa4, 0x88, 0x8d, 0x5d, 0xe0, 0x4d, 0xbe, 0xa7, 0x50, 0x38, 0xfc, 0x06, 0x1b, 0x65, 0x33, 0x40, 0x69, 0x6c, 0x62, 0xba, 0xae, 0xa9, 0x2d, 0x57, 0x47, 0xe5, 0x02, 0x49, 0x03, 0x4c, 0x42, 0x7f, 0x2f, 0x81, 0x3e, 0x2b, 0x98, 0xc2, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2513 = { .name = "ecdsa_brainpoolp512r1_sha512_2513", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2513_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2513_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2513_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 393 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2514 for ECDSA, tcId is 394 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2514_pubkey[] = { 0x29, 0xbd, 0xf2, 0xfe, 0xb7, 0x67, 0x40, 0x76, 0x3f, 0x50, 0x98, 0xcf, 0xd5, 0xef, 0xac, 0xa5, 0xfa, 0x2b, 0x19, 0x65, 0x4b, 0xd4, 0xe8, 0xd5, 0xd7, 0x59, 0x78, 0xb9, 0x05, 0x20, 0xe7, 0x48, 0x38, 0x75, 0xbf, 0xbe, 0x2a, 0xc0, 0xe5, 0x7a, 0xdf, 0x90, 0xcc, 0x14, 0x0a, 0xf5, 0x98, 0x21, 0x78, 0x67, 0x24, 0xe5, 0xea, 0xb9, 0x11, 0x14, 0x45, 0xa2, 0xde, 0x4b, 0x37, 0x68, 0x77, 0x4c, 0x32, 0xae, 0x39, 0x79, 0xb3, 0x52, 0xdc, 0xfb, 0x0c, 0x72, 0xe8, 0xf6, 0x79, 0x9a, 0xb7, 0x64, 0x15, 0x42, 0x8a, 0x99, 0x56, 0xca, 0x5d, 0x2b, 0x14, 0xd7, 0x4b, 0x9a, 0x1b, 0xe1, 0x89, 0xbc, 0xd3, 0x03, 0x2f, 0x74, 0x2e, 0xc9, 0x47, 0x44, 0xc3, 0x3a, 0x3c, 0xdc, 0xa1, 0x0d, 0xff, 0x4d, 0x5b, 0x07, 0x92, 0x96, 0x60, 0xd6, 0xe7, 0x87, 0x29, 0xad, 0xa6, 0xe5, 0xbe, 0x9a, 0xe1, 0x01, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2514_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2514_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x41, 0xb2, 0xaf, 0x78, 0x29, 0x41, 0x65, 0xd8, 0x6f, 0x75, 0x1c, 0xb8, 0x2a, 0x80, 0x32, 0x7a, 0x0e, 0xb4, 0xc0, 0x54, 0x4a, 0x06, 0xd4, 0xa5, 0x71, 0x9a, 0xea, 0x4a, 0x09, 0x8f, 0x11, 0x59, 0x73, 0xaf, 0xf4, 0xc1, 0xa8, 0xce, 0xc2, 0xdc, 0xf0, 0xf5, 0xf0, 0xfa, 0x24, 0x19, 0x0b, 0x47, 0x4a, 0x25, 0xb9, 0xab, 0x3b, 0xae, 0xf7, 0x77, 0x0f, 0x68, 0xba, 0x9c, 0x7e, 0xf7, 0xf7, 0xca, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2514 = { .name = "ecdsa_brainpoolp512r1_sha512_2514", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2514_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2514_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2514_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 394 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2515 for ECDSA, tcId is 395 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2515_pubkey[] = { 0x80, 0xaf, 0x1b, 0xb9, 0xdf, 0xce, 0x00, 0x96, 0x37, 0x99, 0xe0, 0x1a, 0xec, 0xbf, 0x8b, 0xf5, 0xa6, 0x59, 0xb6, 0xbb, 0xfa, 0x46, 0x89, 0xf0, 0x67, 0x4a, 0x61, 0x15, 0xbc, 0xdf, 0x99, 0x6d, 0x15, 0x5d, 0x9a, 0x75, 0xc5, 0x29, 0x51, 0x41, 0xe2, 0xcc, 0x3e, 0x61, 0x1b, 0x32, 0xc5, 0x89, 0xe6, 0xae, 0x76, 0xae, 0xf1, 0x90, 0xdc, 0x8a, 0x36, 0x3b, 0xa9, 0xf9, 0xc3, 0xcc, 0x57, 0x27, 0x03, 0x8c, 0xd9, 0x5b, 0xcd, 0x34, 0x42, 0x0e, 0x63, 0xae, 0x43, 0x5a, 0xfe, 0xd0, 0x9f, 0x70, 0xe4, 0xeb, 0xc3, 0x50, 0x1b, 0x42, 0xf3, 0x5e, 0xbb, 0xec, 0xd8, 0xb0, 0xa1, 0x65, 0xc6, 0x16, 0x16, 0x09, 0x0b, 0x11, 0x8e, 0xf0, 0x5a, 0x43, 0xc3, 0x1f, 0x3b, 0x71, 0x09, 0x07, 0xc7, 0x45, 0x26, 0x4b, 0x1f, 0x53, 0x7c, 0x28, 0x59, 0x6a, 0x40, 0x3c, 0x25, 0x19, 0x5e, 0x87, 0x54, 0x5e, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2515_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2515_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x9c, 0x5f, 0xc3, 0xfb, 0xf7, 0x0f, 0x16, 0xcc, 0xda, 0xc9, 0x2f, 0x95, 0x97, 0x44, 0x08, 0xff, 0xff, 0x7e, 0x05, 0xbd, 0x02, 0x68, 0xcf, 0xdf, 0x86, 0x2e, 0x9b, 0xeb, 0x17, 0x4f, 0xb4, 0x8e, 0xe1, 0xe0, 0xe1, 0x0f, 0x94, 0x2d, 0x8f, 0xc6, 0x7e, 0xd6, 0x9f, 0x7a, 0x94, 0xc8, 0x5f, 0x61, 0xc8, 0x40, 0x48, 0x61, 0x7e, 0x67, 0xc1, 0xcc, 0x6c, 0x02, 0x60, 0xe0, 0x48, 0x64, 0x1a, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2515 = { .name = "ecdsa_brainpoolp512r1_sha512_2515", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2515_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2515_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2515_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2516 for ECDSA, tcId is 396 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2516_pubkey[] = { 0x6e, 0xeb, 0x47, 0x35, 0x28, 0x6c, 0x2c, 0x09, 0x4d, 0xda, 0x29, 0x71, 0x0a, 0x77, 0x4e, 0xcc, 0xdb, 0x6c, 0xa5, 0xfa, 0x89, 0x91, 0xf9, 0xad, 0xbc, 0x76, 0x9b, 0x44, 0x8d, 0x38, 0x99, 0x94, 0x3c, 0x86, 0x0e, 0x3f, 0xb5, 0x0c, 0xff, 0x34, 0x82, 0x5a, 0xda, 0xee, 0x82, 0xaa, 0xb5, 0xa5, 0x33, 0xad, 0xaf, 0x74, 0xfb, 0xfe, 0x7e, 0x8b, 0x03, 0x2e, 0x26, 0x42, 0xfa, 0x5f, 0xc8, 0x6f, 0x5e, 0xf7, 0x4a, 0xa6, 0x1a, 0x26, 0x82, 0x3b, 0xc2, 0xed, 0x70, 0xf0, 0x8b, 0x64, 0xa6, 0x90, 0x6d, 0xb9, 0x81, 0x56, 0x4d, 0x5e, 0x0c, 0x15, 0xa0, 0x76, 0xa5, 0x82, 0xda, 0x8f, 0xee, 0x20, 0xb7, 0x73, 0xef, 0x59, 0x1f, 0x90, 0x54, 0xda, 0x34, 0xd9, 0x0a, 0x1f, 0x13, 0x17, 0x29, 0x46, 0x10, 0xa8, 0x1d, 0x3e, 0x0f, 0x1a, 0xdc, 0xe4, 0xf6, 0xd2, 0xfd, 0x6b, 0xa4, 0xb9, 0x35, 0x01, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2516_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2516_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x8d, 0xe1, 0xea, 0x3f, 0x12, 0x34, 0x69, 0x0e, 0x75, 0xbd, 0x78, 0x7c, 0xfa, 0xbe, 0x15, 0xf8, 0x33, 0xcb, 0x7d, 0xc6, 0x51, 0x07, 0xcd, 0xb0, 0x35, 0xf9, 0x9b, 0x0b, 0xbe, 0x6c, 0x60, 0xad, 0x6e, 0x83, 0x65, 0xdd, 0xdb, 0xb1, 0xf9, 0x73, 0xbc, 0x26, 0xdd, 0xdb, 0xa9, 0xe4, 0xae, 0x7c, 0x72, 0xce, 0xbd, 0x41, 0xf4, 0x71, 0xa8, 0xbb, 0x22, 0x7d, 0x2b, 0x3d, 0xf4, 0x1f, 0x34, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2516 = { .name = "ecdsa_brainpoolp512r1_sha512_2516", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2516_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2516_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2516_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2517 for ECDSA, tcId is 397 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2517_pubkey[] = { 0x93, 0x88, 0x41, 0x93, 0x75, 0x50, 0x13, 0x4c, 0x5a, 0x4b, 0xad, 0xe1, 0x9a, 0x50, 0x21, 0xc7, 0x3c, 0xff, 0xc7, 0x74, 0xfd, 0xca, 0x87, 0x54, 0x13, 0xa7, 0xd5, 0x41, 0xe6, 0x51, 0x45, 0xfb, 0x77, 0xda, 0xd4, 0xa7, 0xc7, 0xeb, 0x3a, 0x96, 0x6c, 0x18, 0x4d, 0x73, 0xcd, 0xcf, 0x3f, 0x1b, 0xea, 0x98, 0x4a, 0xd2, 0x5d, 0xd4, 0xfb, 0x7f, 0x47, 0x23, 0x9f, 0xaa, 0x5b, 0x53, 0x9f, 0x6d, 0x32, 0x75, 0xcd, 0xe5, 0x3c, 0x18, 0xf3, 0xbb, 0x53, 0x7a, 0x7f, 0x06, 0xc7, 0xea, 0x1b, 0x4f, 0x35, 0x50, 0x25, 0x91, 0x90, 0x02, 0xba, 0xe9, 0xa3, 0xa3, 0xc1, 0xdc, 0xf1, 0x50, 0xc1, 0xb5, 0x3b, 0xc8, 0xdf, 0xe5, 0x3f, 0x60, 0xcc, 0x78, 0x5e, 0x44, 0x05, 0x1c, 0x95, 0xb7, 0x35, 0x55, 0x2b, 0xa6, 0x22, 0x89, 0x7d, 0x5b, 0xf7, 0x55, 0x6f, 0xd7, 0xb9, 0xe3, 0x8b, 0x65, 0x31, 0xbe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2517_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2517_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x32, 0x6a, 0x7e, 0x59, 0xc4, 0xbc, 0xf9, 0xba, 0x52, 0x23, 0x5a, 0x8e, 0x06, 0xd2, 0x44, 0x55, 0x7a, 0xcf, 0x66, 0x88, 0x5b, 0x64, 0xf9, 0x23, 0x8c, 0xdd, 0xb3, 0xbe, 0x32, 0x7b, 0x62, 0x05, 0x75, 0x8b, 0x60, 0xf3, 0x20, 0x34, 0x18, 0xcb, 0xe5, 0xb3, 0x30, 0xe2, 0x8a, 0x9d, 0x7a, 0x36, 0x0e, 0xdf, 0xb8, 0xdd, 0xf3, 0x9d, 0x46, 0x34, 0x0d, 0x5c, 0x27, 0x92, 0x82, 0x4b, 0x7c, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2517 = { .name = "ecdsa_brainpoolp512r1_sha512_2517", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2517_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2517_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2517_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2518 for ECDSA, tcId is 398 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2518_pubkey[] = { 0x78, 0xfb, 0xd1, 0xe7, 0x62, 0x01, 0x96, 0x02, 0xff, 0x71, 0x87, 0xcf, 0x06, 0xa8, 0x86, 0xd2, 0xed, 0x2c, 0xb5, 0xd0, 0x64, 0x81, 0xb0, 0x6c, 0x3c, 0x4b, 0xe4, 0xf7, 0xf3, 0x74, 0x6c, 0xd0, 0x15, 0x1d, 0x57, 0xf4, 0xd6, 0xae, 0xbd, 0x60, 0x48, 0x89, 0x5c, 0xab, 0xfe, 0x95, 0x00, 0xad, 0xf3, 0xda, 0xec, 0x59, 0xff, 0xa6, 0xee, 0x96, 0x21, 0xc8, 0xb5, 0x84, 0xed, 0x6d, 0xad, 0x1a, 0x6f, 0x3c, 0x20, 0x70, 0xe0, 0x14, 0x21, 0xa1, 0xeb, 0xb9, 0x69, 0x60, 0x7d, 0x44, 0xf7, 0x67, 0x78, 0x74, 0x8b, 0xcb, 0x55, 0x9a, 0x8b, 0x5e, 0xed, 0x83, 0xb0, 0x47, 0x60, 0xab, 0x53, 0x55, 0x6b, 0x00, 0x39, 0xe8, 0x76, 0x5a, 0xb8, 0x5a, 0x92, 0x95, 0x0c, 0x10, 0xca, 0x6b, 0xbd, 0xcc, 0x9d, 0x6e, 0x2f, 0x03, 0xd8, 0x8b, 0x6d, 0x7b, 0xbd, 0xcd, 0x53, 0xc8, 0xb1, 0xff, 0x86, 0xcc, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2518_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2518_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x3c, 0x5d, 0x08, 0x33, 0x9f, 0x2f, 0x6f, 0x97, 0xa2, 0xb8, 0x6b, 0x83, 0x29, 0x66, 0x78, 0xf7, 0xbf, 0xf6, 0x1e, 0x1b, 0x74, 0x87, 0xcd, 0xa1, 0x4f, 0x3b, 0x12, 0xfc, 0xe6, 0xae, 0xaf, 0xa3, 0xf2, 0xfb, 0x38, 0x5a, 0xea, 0x3e, 0x82, 0xf3, 0x12, 0xa6, 0x88, 0x0e, 0xfd, 0x18, 0xa1, 0xd7, 0x7f, 0xd7, 0xfa, 0xaf, 0xaf, 0x9d, 0x1e, 0xcc, 0x5e, 0xe9, 0xc2, 0xc0, 0xf7, 0x1d, 0x10, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2518 = { .name = "ecdsa_brainpoolp512r1_sha512_2518", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2518_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2518_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2518_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2519 for ECDSA, tcId is 399 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2519_pubkey[] = { 0x4c, 0x9a, 0xda, 0x2f, 0xa2, 0xac, 0xf8, 0xd0, 0x1f, 0xba, 0x2b, 0x01, 0x5f, 0x7b, 0xad, 0xc3, 0x22, 0x78, 0x5c, 0x85, 0xf2, 0x19, 0x9b, 0x6c, 0x4a, 0xc4, 0x90, 0xda, 0x8e, 0x1e, 0xc9, 0x73, 0x38, 0x7f, 0x4a, 0xbe, 0x26, 0xd5, 0x26, 0xa0, 0x56, 0xdc, 0x71, 0x95, 0xfb, 0x1c, 0x9c, 0x0c, 0xa7, 0x61, 0x2c, 0xb6, 0x5f, 0x15, 0xf1, 0x06, 0x38, 0x0d, 0x8c, 0x5d, 0xec, 0xe5, 0x29, 0xf3, 0x21, 0x72, 0xc8, 0xb9, 0xb3, 0xb6, 0xfb, 0x0b, 0xbe, 0x9f, 0x22, 0x73, 0xd9, 0xa2, 0x18, 0xbd, 0x51, 0x24, 0x79, 0xdd, 0x27, 0x60, 0x5b, 0x2a, 0x6e, 0x8b, 0x44, 0xf5, 0x8d, 0x17, 0x61, 0x78, 0x39, 0x0c, 0x2b, 0xdd, 0x1c, 0xcf, 0x60, 0xc1, 0xe8, 0x23, 0xa2, 0x3e, 0x8b, 0x0f, 0xce, 0x7d, 0xab, 0x2f, 0x19, 0x79, 0x13, 0xb1, 0xfe, 0x30, 0xf6, 0x99, 0xe3, 0xbf, 0x36, 0x6b, 0xf1, 0xbf, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2519_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2519_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x95, 0x84, 0xa4, 0xbd, 0xf0, 0xc6, 0xc8, 0xca, 0x72, 0x21, 0x1f, 0x58, 0x9d, 0xcd, 0xd7, 0xbe, 0x18, 0x1a, 0xcc, 0xb9, 0x26, 0xf2, 0x43, 0x0d, 0xc7, 0x13, 0x5a, 0xbb, 0xfa, 0x78, 0x87, 0xd6, 0x06, 0x03, 0x0c, 0x85, 0xc7, 0x2f, 0x5a, 0x3c, 0x05, 0xfc, 0xc7, 0xe0, 0xd1, 0xfb, 0x33, 0xaf, 0xc0, 0x25, 0x1f, 0xd3, 0x3e, 0xa0, 0x4b, 0x3b, 0x96, 0x47, 0x0b, 0xc2, 0x6c, 0xe6, 0x12, 0xab, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2519 = { .name = "ecdsa_brainpoolp512r1_sha512_2519", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2519_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2519_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2519_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2520 for ECDSA, tcId is 400 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2520_pubkey[] = { 0x85, 0x4c, 0xf9, 0x60, 0x10, 0x10, 0xbe, 0x20, 0x63, 0x3f, 0x5d, 0x17, 0x21, 0x4c, 0xab, 0x68, 0x7d, 0xab, 0x3a, 0xa5, 0x4a, 0x38, 0xa0, 0x2c, 0x55, 0xed, 0x00, 0x36, 0x15, 0xec, 0x8e, 0xfa, 0xda, 0x2a, 0xc0, 0xd6, 0x2d, 0x92, 0x3d, 0x0e, 0x1d, 0xf9, 0xaa, 0x38, 0x2d, 0x51, 0x27, 0x06, 0xca, 0xdf, 0x55, 0x39, 0x85, 0x8a, 0x62, 0xa5, 0xec, 0x62, 0xfd, 0x82, 0x48, 0xe6, 0x32, 0x77, 0x6a, 0x78, 0x33, 0x03, 0x28, 0x52, 0x06, 0x01, 0x8c, 0xbb, 0x9f, 0xc1, 0xe9, 0x8c, 0xdf, 0x94, 0xac, 0x6f, 0x2f, 0xec, 0xbd, 0xc7, 0xd8, 0x42, 0x8f, 0xf4, 0x85, 0xe5, 0x9b, 0x00, 0xb2, 0xbf, 0xa4, 0x5a, 0x06, 0xaa, 0xa9, 0x3e, 0x6b, 0x51, 0xb7, 0xad, 0x1b, 0x8a, 0xc0, 0xdb, 0xe1, 0x35, 0x45, 0x5d, 0x8d, 0x28, 0x75, 0x23, 0x13, 0x57, 0x06, 0x09, 0x90, 0xab, 0xcd, 0xe5, 0x63, 0xde, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2520_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2520_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x40, 0x19, 0x79, 0x87, 0x18, 0x9f, 0x8c, 0xf0, 0x4a, 0x95, 0x1e, 0x01, 0xc4, 0x8f, 0xa8, 0xae, 0x90, 0x42, 0xf1, 0x84, 0x84, 0x8f, 0x93, 0xb2, 0x15, 0xdc, 0x79, 0x0f, 0xe2, 0xc4, 0x2e, 0xe2, 0xd5, 0x49, 0xd8, 0xcb, 0x50, 0xff, 0x3d, 0xb7, 0x4b, 0x6d, 0xdb, 0x37, 0x6a, 0x80, 0xb2, 0xce, 0x39, 0x83, 0x94, 0x6b, 0x2e, 0xd9, 0x98, 0x19, 0x85, 0x6e, 0x75, 0xeb, 0xf8, 0xff, 0x2a, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2520 = { .name = "ecdsa_brainpoolp512r1_sha512_2520", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2520_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2520_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2520_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2521 for ECDSA, tcId is 401 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2521_pubkey[] = { 0x5e, 0x3d, 0xe5, 0x09, 0xf7, 0x58, 0x5c, 0x0f, 0x6d, 0x05, 0xc3, 0x87, 0xa6, 0xd0, 0x7a, 0x06, 0x1c, 0x9f, 0x98, 0xc6, 0xad, 0xc8, 0xb3, 0xc3, 0x6e, 0xfb, 0xde, 0xfc, 0xbf, 0xf2, 0xe6, 0xad, 0x46, 0x78, 0x96, 0x05, 0x24, 0xd1, 0x16, 0x15, 0x4f, 0x5b, 0x17, 0x33, 0x22, 0x04, 0xe3, 0xa1, 0x86, 0x70, 0x82, 0xd2, 0xe5, 0x18, 0x50, 0x4f, 0x43, 0x3e, 0x27, 0x26, 0xad, 0x58, 0xe9, 0xd7, 0xa0, 0xb3, 0x2e, 0x9d, 0x3c, 0x52, 0x3b, 0xac, 0x3c, 0x1c, 0xcd, 0xd7, 0x5f, 0x82, 0xb9, 0x09, 0xa8, 0x30, 0x6c, 0x74, 0xbe, 0x89, 0x9f, 0x13, 0x22, 0x8a, 0xbf, 0x87, 0xdb, 0x76, 0xb9, 0x11, 0x5c, 0x0b, 0x29, 0x3d, 0x7d, 0x30, 0xf3, 0xc8, 0x62, 0x30, 0x46, 0x1b, 0x28, 0xa4, 0x5a, 0x6c, 0xc8, 0x8b, 0x8f, 0xe0, 0x79, 0x14, 0x31, 0x03, 0xc5, 0xb0, 0x10, 0x16, 0xba, 0x95, 0xbc, 0xd5, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2521_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2521_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x80, 0x32, 0xf3, 0x0e, 0x31, 0x3f, 0x19, 0xe0, 0x95, 0x2a, 0x3c, 0x03, 0x89, 0x1f, 0x51, 0x5d, 0x20, 0x85, 0xe3, 0x09, 0x09, 0x1f, 0x27, 0x64, 0x2b, 0xb8, 0xf2, 0x1f, 0xc5, 0x88, 0x5d, 0xc5, 0xaa, 0x93, 0xb1, 0x96, 0xa1, 0xfe, 0x7b, 0x6e, 0x96, 0xdb, 0xb6, 0x6e, 0xd5, 0x01, 0x65, 0x9c, 0x73, 0x07, 0x28, 0xd6, 0x5d, 0xb3, 0x30, 0x33, 0x0a, 0xdc, 0xeb, 0xd7, 0xf1, 0xfe, 0x55, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2521 = { .name = "ecdsa_brainpoolp512r1_sha512_2521", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2521_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2521_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2521_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2522 for ECDSA, tcId is 402 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2522_pubkey[] = { 0x15, 0xd2, 0xff, 0xcd, 0x46, 0x17, 0xeb, 0x1b, 0x40, 0x06, 0x10, 0xcb, 0xa8, 0xd7, 0x38, 0xc7, 0x6c, 0x8e, 0x15, 0xad, 0x72, 0xb3, 0x4e, 0x57, 0x67, 0x72, 0xae, 0x19, 0xcd, 0x83, 0x45, 0x29, 0x46, 0x44, 0xd1, 0x3a, 0xc6, 0x2a, 0x29, 0x37, 0x88, 0xde, 0x2a, 0x92, 0xdd, 0x54, 0x7c, 0x2a, 0xc3, 0xa9, 0x8a, 0xba, 0x72, 0x95, 0x2d, 0x3e, 0xa2, 0xd4, 0x91, 0xd7, 0xee, 0xa5, 0xb9, 0xcb, 0xa3, 0xec, 0x2c, 0x79, 0xa2, 0xcf, 0x7b, 0xa0, 0x08, 0x39, 0x33, 0xb2, 0xc5, 0x34, 0xfd, 0x4b, 0x51, 0x58, 0x7c, 0x4e, 0xbc, 0x3c, 0xba, 0xaa, 0x28, 0xd9, 0x2b, 0x95, 0xe3, 0xc8, 0xe9, 0x01, 0x42, 0xef, 0xfa, 0xc2, 0x7b, 0xba, 0xb2, 0x15, 0xac, 0x0b, 0x39, 0xd1, 0xc5, 0xf3, 0x32, 0xfe, 0xb7, 0x79, 0x35, 0x1a, 0x66, 0xc2, 0x94, 0xe4, 0xed, 0x62, 0xf5, 0xcd, 0x32, 0x29, 0xa9, 0x23, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2522_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2522_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x15, 0x6e, 0xce, 0xdc, 0x6d, 0xf4, 0xe2, 0x45, 0x9f, 0xea, 0x73, 0x57, 0x19, 0xe4, 0xfe, 0x03, 0xe5, 0x98, 0x46, 0xd9, 0xd9, 0xe4, 0xe9, 0x07, 0x6b, 0x31, 0xce, 0x65, 0x38, 0x19, 0x84, 0x38, 0x2a, 0x9f, 0x2e, 0x20, 0xa6, 0x54, 0x93, 0x0c, 0xa0, 0xc3, 0x30, 0x8c, 0xbf, 0xd6, 0x08, 0x23, 0x8e, 0xd8, 0xe9, 0xc0, 0x84, 0x2e, 0xed, 0x6e, 0xda, 0xc3, 0xcb, 0x41, 0x4e, 0x54, 0x80, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2522 = { .name = "ecdsa_brainpoolp512r1_sha512_2522", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2522_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2522_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2522_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2523 for ECDSA, tcId is 403 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2523_pubkey[] = { 0x97, 0x4d, 0xf3, 0xe7, 0xa6, 0x12, 0x83, 0x83, 0x0e, 0x54, 0x4b, 0xa9, 0x02, 0x34, 0x79, 0xcb, 0x8d, 0x75, 0x59, 0x52, 0x4d, 0xf7, 0x6f, 0xb3, 0x8d, 0x23, 0xc5, 0x5d, 0x29, 0x92, 0x3e, 0x72, 0xec, 0x5c, 0xb4, 0x87, 0x17, 0xfa, 0xb8, 0x59, 0xf2, 0xf3, 0x11, 0x15, 0x85, 0xbb, 0xee, 0x00, 0x45, 0x95, 0xc5, 0xfe, 0xd6, 0x44, 0x11, 0xfb, 0xbf, 0x9f, 0x63, 0x51, 0xbf, 0x5f, 0x69, 0xe8, 0x4e, 0x1f, 0xdd, 0x69, 0x1b, 0x30, 0xb0, 0xb4, 0xc2, 0x59, 0x0a, 0x88, 0x1c, 0xe4, 0x58, 0x05, 0x33, 0x49, 0x35, 0x6d, 0xa7, 0x47, 0xcd, 0x93, 0xba, 0x93, 0x1e, 0xee, 0x6a, 0xe8, 0x8c, 0xae, 0x82, 0x70, 0x07, 0x10, 0x5c, 0x3b, 0x16, 0x33, 0xa4, 0x8e, 0x1c, 0x9d, 0xb5, 0x27, 0x2a, 0xc0, 0x11, 0x45, 0xae, 0xe6, 0x13, 0x2b, 0xa7, 0x3a, 0xf8, 0x3d, 0x6e, 0x6c, 0x41, 0x06, 0xb2, 0x90, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2523_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x5c, 0xa5, 0x4a, 0x23, 0x1b, 0xe7, 0x6c, 0x06, 0xc9, 0xd9, 0x87, 0xde, 0x7b, 0xf2, 0xed, 0x42, 0xcd, 0x63, 0x4a, 0x07, 0xed, 0xeb, 0x6e, 0x0c, 0x58, 0x04, 0x12, 0xab, 0xe7, 0x09, 0xab, 0x17, 0x7e, 0x47, 0x4a, 0x9e, 0xa9, 0x62, 0x45, 0xa6, 0x40, 0xf7, 0xe6, 0xbe, 0x1d, 0x2d, 0x5c, 0xba, 0x3a, 0x7c, 0xdc, 0x41, 0xa8, 0xb0, 0x93, 0x90, 0x1a, 0x5b, 0x8b, 0xe0, 0x64, 0x20, 0xe1, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2523 = { .name = "ecdsa_brainpoolp512r1_sha512_2523", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2523_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2523_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2523_sig, .siglen = 128, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2524 for ECDSA, tcId is 404 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2524_pubkey[] = { 0x2c, 0xb7, 0x36, 0x4c, 0xce, 0xc9, 0x14, 0x8a, 0x32, 0x42, 0xee, 0xe1, 0x7c, 0xe0, 0x1d, 0x82, 0xa5, 0x6d, 0x03, 0x7c, 0xb0, 0x17, 0x46, 0xfd, 0xd2, 0x4b, 0x89, 0x3f, 0x35, 0xe0, 0x72, 0x82, 0x7c, 0xe4, 0x63, 0xad, 0xaf, 0xca, 0x62, 0x82, 0xd9, 0x3c, 0xf6, 0x66, 0xa7, 0x40, 0xee, 0x88, 0xad, 0xbe, 0xf2, 0x41, 0xf1, 0x79, 0x55, 0xd2, 0xbf, 0x5f, 0x9f, 0x95, 0x95, 0x8a, 0x38, 0xa6, 0x96, 0xda, 0x56, 0x43, 0xe5, 0xfe, 0x05, 0x7f, 0x1c, 0x3b, 0x93, 0x1e, 0x36, 0xd3, 0x3f, 0x0e, 0x2f, 0x5f, 0xba, 0x68, 0x09, 0x32, 0xa3, 0x59, 0x87, 0xb7, 0x98, 0x55, 0xb6, 0xc1, 0xf0, 0xea, 0xd6, 0x4c, 0xbe, 0x9c, 0x72, 0x95, 0x9e, 0xce, 0x21, 0x84, 0xee, 0x65, 0xa7, 0x68, 0x41, 0x0d, 0xf1, 0xda, 0xd8, 0x1c, 0x4d, 0xba, 0x85, 0x33, 0x40, 0xa2, 0x39, 0x6a, 0xbf, 0x82, 0xe3, 0x6a, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2524_sig[] = { 0x1b, 0x8e, 0x84, 0x40, 0xbd, 0x94, 0x75, 0x2d, 0xc6, 0x03, 0x15, 0x97, 0x28, 0xa3, 0x46, 0x87, 0x2c, 0xad, 0x48, 0xdf, 0xff, 0x81, 0x9f, 0x18, 0x1f, 0x9d, 0x53, 0x53, 0x7a, 0x80, 0x86, 0x8b, 0xff, 0x12, 0x80, 0xac, 0xfd, 0x23, 0x97, 0xa8, 0x46, 0xd3, 0x25, 0x90, 0x49, 0x35, 0x2b, 0xc1, 0x1f, 0x5f, 0xb7, 0x39, 0x41, 0x0c, 0x76, 0x6d, 0x13, 0x44, 0xcb, 0xcb, 0xc0, 0x3b, 0xf7, 0x61, 0x21, 0x61, 0x07, 0x40, 0x79, 0x9a, 0x83, 0xa1, 0x3b, 0x49, 0xaa, 0x45, 0xdd, 0x85, 0x4d, 0x85, 0xb0, 0x58, 0xbd, 0x95, 0x5a, 0x41, 0x05, 0xd7, 0x49, 0xcb, 0xa7, 0x4b, 0x8f, 0x2a, 0x38, 0xcf, 0x7c, 0x33, 0xed, 0x56, 0x92, 0x1d, 0x02, 0x9e, 0x74, 0x93, 0x89, 0x4a, 0xd3, 0xd8, 0xf2, 0x8f, 0x44, 0x31, 0xdc, 0xeb, 0x89, 0xcd, 0x56, 0x31, 0x6d, 0xe9, 0x3d, 0xc0, 0x97, 0x77, 0xca, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2524 = { .name = "ecdsa_brainpoolp512r1_sha512_2524", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2524_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2524_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2524_sig, .siglen = 128, .result = 1, .comment = "point duplication during verification, tcId is 404 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2525 for ECDSA, tcId is 405 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2525_pubkey[] = { 0x2c, 0xb7, 0x36, 0x4c, 0xce, 0xc9, 0x14, 0x8a, 0x32, 0x42, 0xee, 0xe1, 0x7c, 0xe0, 0x1d, 0x82, 0xa5, 0x6d, 0x03, 0x7c, 0xb0, 0x17, 0x46, 0xfd, 0xd2, 0x4b, 0x89, 0x3f, 0x35, 0xe0, 0x72, 0x82, 0x7c, 0xe4, 0x63, 0xad, 0xaf, 0xca, 0x62, 0x82, 0xd9, 0x3c, 0xf6, 0x66, 0xa7, 0x40, 0xee, 0x88, 0xad, 0xbe, 0xf2, 0x41, 0xf1, 0x79, 0x55, 0xd2, 0xbf, 0x5f, 0x9f, 0x95, 0x95, 0x8a, 0x38, 0xa6, 0x14, 0x03, 0x47, 0x74, 0xf5, 0xeb, 0xbf, 0x0c, 0x23, 0x99, 0x53, 0x8f, 0xfc, 0xf6, 0xbc, 0xf9, 0x9b, 0xd0, 0xd3, 0x4b, 0xaa, 0x97, 0x2e, 0xb5, 0x4e, 0xac, 0x04, 0x74, 0xb9, 0x71, 0x17, 0x86, 0xa7, 0x00, 0xdc, 0x64, 0x29, 0x30, 0xc9, 0x74, 0x8d, 0x48, 0xb2, 0xc5, 0x3f, 0x3b, 0x3f, 0xd8, 0x36, 0xa7, 0x27, 0x12, 0xdf, 0xc8, 0x41, 0x51, 0xe8, 0x08, 0x26, 0xeb, 0x98, 0xb7, 0x65, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2525_sig[] = { 0x1b, 0x8e, 0x84, 0x40, 0xbd, 0x94, 0x75, 0x2d, 0xc6, 0x03, 0x15, 0x97, 0x28, 0xa3, 0x46, 0x87, 0x2c, 0xad, 0x48, 0xdf, 0xff, 0x81, 0x9f, 0x18, 0x1f, 0x9d, 0x53, 0x53, 0x7a, 0x80, 0x86, 0x8b, 0xff, 0x12, 0x80, 0xac, 0xfd, 0x23, 0x97, 0xa8, 0x46, 0xd3, 0x25, 0x90, 0x49, 0x35, 0x2b, 0xc1, 0x1f, 0x5f, 0xb7, 0x39, 0x41, 0x0c, 0x76, 0x6d, 0x13, 0x44, 0xcb, 0xcb, 0xc0, 0x3b, 0xf7, 0x61, 0x21, 0x61, 0x07, 0x40, 0x79, 0x9a, 0x83, 0xa1, 0x3b, 0x49, 0xaa, 0x45, 0xdd, 0x85, 0x4d, 0x85, 0xb0, 0x58, 0xbd, 0x95, 0x5a, 0x41, 0x05, 0xd7, 0x49, 0xcb, 0xa7, 0x4b, 0x8f, 0x2a, 0x38, 0xcf, 0x7c, 0x33, 0xed, 0x56, 0x92, 0x1d, 0x02, 0x9e, 0x74, 0x93, 0x89, 0x4a, 0xd3, 0xd8, 0xf2, 0x8f, 0x44, 0x31, 0xdc, 0xeb, 0x89, 0xcd, 0x56, 0x31, 0x6d, 0xe9, 0x3d, 0xc0, 0x97, 0x77, 0xca, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2525 = { .name = "ecdsa_brainpoolp512r1_sha512_2525", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2525_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2525_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2525_sig, .siglen = 128, .result = -1, .comment = "duplication bug, tcId is 405 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2526 for ECDSA, tcId is 406 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2526_pubkey[] = { 0x06, 0x3d, 0x56, 0x6f, 0xa9, 0x3e, 0xe2, 0x19, 0x48, 0x2e, 0xc9, 0x47, 0xe7, 0xbe, 0x46, 0x94, 0xf9, 0xc0, 0x73, 0xb2, 0xbb, 0x78, 0x6d, 0xb8, 0x49, 0xe1, 0xf3, 0x97, 0x3c, 0x51, 0x22, 0x39, 0x4c, 0xf6, 0x8e, 0xdd, 0x99, 0x47, 0xb5, 0x8e, 0x61, 0xfe, 0x42, 0xc9, 0x8d, 0x36, 0x40, 0x84, 0x4e, 0xd2, 0x77, 0x5b, 0x0c, 0x36, 0xb5, 0xf4, 0xc0, 0xc9, 0x60, 0x5d, 0x02, 0x8b, 0xc0, 0xc5, 0x07, 0x52, 0x1b, 0x29, 0x88, 0x96, 0x32, 0xbb, 0x07, 0x56, 0xfe, 0xc9, 0x8e, 0x8e, 0x95, 0x6c, 0xb7, 0xac, 0x51, 0x5a, 0x3f, 0xc9, 0x08, 0x2b, 0x87, 0x18, 0x61, 0x54, 0x8e, 0x97, 0x02, 0x78, 0x6f, 0x59, 0x1e, 0x9a, 0x22, 0x23, 0x91, 0x01, 0x47, 0x25, 0x16, 0x7a, 0x6c, 0x22, 0xaa, 0xf8, 0xc2, 0xc4, 0xbe, 0x94, 0x25, 0x24, 0x8b, 0x4d, 0x5f, 0x94, 0xf3, 0x1c, 0xbd, 0x8b, 0xd3, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2526_sig[] = { 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2526 = { .name = "ecdsa_brainpoolp512r1_sha512_2526", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2526_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2526_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2526_sig, .siglen = 128, .result = -1, .comment = "comparison with point at infinity , tcId is 406 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2527 for ECDSA, tcId is 407 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2527_pubkey[] = { 0x13, 0xb9, 0xa0, 0x27, 0x3b, 0x3b, 0x28, 0x3c, 0xc8, 0xa2, 0x5a, 0xaa, 0xf2, 0xa8, 0x50, 0x8a, 0x74, 0x5d, 0xb0, 0x22, 0xe7, 0xf4, 0xdd, 0xc0, 0x6a, 0xcd, 0xf0, 0x6e, 0xb7, 0x77, 0x0f, 0xd9, 0x5b, 0xa6, 0x8b, 0x04, 0x7b, 0x03, 0x04, 0x19, 0xae, 0xc3, 0x66, 0xbd, 0x18, 0x7e, 0xb8, 0x40, 0xa4, 0x3d, 0xf7, 0xd9, 0x43, 0x94, 0x19, 0xe2, 0x63, 0x96, 0x14, 0xd5, 0xb4, 0xeb, 0x22, 0xd2, 0x3b, 0xa9, 0xa5, 0xc0, 0x30, 0x17, 0x08, 0xdc, 0x50, 0xab, 0x9e, 0x4a, 0xd4, 0xed, 0x48, 0xad, 0x0f, 0x70, 0x1c, 0xf3, 0x87, 0xf2, 0x10, 0xe5, 0x7b, 0x6d, 0x06, 0xfb, 0x69, 0xcd, 0x58, 0xdf, 0xb0, 0x68, 0x5f, 0x89, 0xd9, 0xed, 0x1a, 0x31, 0x9f, 0x00, 0x15, 0x1d, 0x90, 0x82, 0x66, 0x30, 0x46, 0xcc, 0x27, 0x10, 0x1b, 0x69, 0x2c, 0xa2, 0x2a, 0x6b, 0x3e, 0x08, 0x3d, 0xd0, 0xff, 0x7f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2527_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2527 = { .name = "ecdsa_brainpoolp512r1_sha512_2527", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2527_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2527_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2527_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 407 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2528 for ECDSA, tcId is 408 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2528_pubkey[] = { 0x45, 0xd4, 0xd4, 0xad, 0x6b, 0x3a, 0xaf, 0x94, 0xb6, 0xd7, 0x39, 0xa0, 0x72, 0xf3, 0x1b, 0x1e, 0x74, 0x4f, 0x13, 0x87, 0x63, 0x04, 0xea, 0x11, 0x11, 0x3f, 0xe8, 0x12, 0x3a, 0x15, 0x5e, 0x1a, 0x92, 0x1b, 0xe4, 0x6c, 0xde, 0x2f, 0x24, 0x12, 0xe0, 0x2a, 0x0f, 0xa5, 0xc1, 0x86, 0x5d, 0xb8, 0xa6, 0xdb, 0xd4, 0x4e, 0xea, 0xc1, 0x65, 0xb0, 0xf7, 0xfa, 0x73, 0xc0, 0x47, 0x83, 0x80, 0x2d, 0x1c, 0xb9, 0x51, 0xcc, 0x65, 0xc9, 0x05, 0x64, 0x80, 0x69, 0x5b, 0xc4, 0x67, 0xdc, 0xa5, 0x77, 0x96, 0x4c, 0xee, 0x04, 0x8a, 0x14, 0xc8, 0x17, 0x16, 0xce, 0x95, 0x58, 0xb4, 0x50, 0x98, 0x1c, 0xf3, 0xa0, 0xf0, 0x05, 0x9d, 0x58, 0x1b, 0x07, 0x6a, 0xfb, 0x69, 0xef, 0xe0, 0xa5, 0x05, 0x35, 0x7b, 0x80, 0x60, 0xe0, 0x2d, 0x6b, 0x9f, 0x13, 0xa0, 0x31, 0xa1, 0xda, 0xe5, 0xf1, 0xce, 0x3c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2528_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x7a, 0x0c, 0x02, 0xf1, 0xc1, 0xa6, 0xfa, 0x1a, 0x52, 0x2a, 0x5b, 0xa1, 0x00, 0x6b, 0xb4, 0x05, 0x91, 0x22, 0xae, 0x5b, 0xc9, 0x90, 0x28, 0x53, 0xbd, 0xb4, 0xdd, 0xb5, 0x2b, 0x92, 0x2a, 0x99, 0x61, 0x75, 0xaf, 0x9c, 0x5b, 0x54, 0x3f, 0xc8, 0xe5, 0xa9, 0x20, 0xc9, 0x12, 0x0d, 0x30, 0x32, 0xcc, 0x11, 0x4d, 0xee, 0x73, 0xb0, 0xc0, 0xe7, 0x81, 0xa9, 0xfd, 0xcb, 0x02, 0x2f, 0x92, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2528 = { .name = "ecdsa_brainpoolp512r1_sha512_2528", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2528_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2528_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2528_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 408 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2529 for ECDSA, tcId is 409 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2529_pubkey[] = { 0x90, 0x60, 0x43, 0x0c, 0x44, 0x39, 0xc3, 0x52, 0xcb, 0xc0, 0x8c, 0xd0, 0x90, 0x6f, 0x91, 0x46, 0x4c, 0xe3, 0x7a, 0x79, 0x74, 0xde, 0x99, 0x65, 0x25, 0x75, 0x86, 0x28, 0xb9, 0xd3, 0x58, 0x05, 0x40, 0xaf, 0xe9, 0xbe, 0x74, 0xba, 0x10, 0x50, 0xd0, 0x3a, 0xcb, 0xb0, 0xac, 0x29, 0xe6, 0x0a, 0xca, 0x9b, 0x96, 0x29, 0x5a, 0x6b, 0x5e, 0x49, 0x70, 0x74, 0x10, 0x25, 0x7f, 0xb7, 0x63, 0x9d, 0x59, 0xf8, 0x88, 0xad, 0x8a, 0x62, 0xbe, 0xcd, 0xe0, 0x66, 0x1d, 0xef, 0xee, 0xe4, 0x81, 0x35, 0xd3, 0x61, 0x67, 0xf9, 0xe8, 0x58, 0x0f, 0x27, 0x14, 0xbc, 0xd5, 0xb6, 0x7e, 0xc7, 0x0a, 0xe3, 0xde, 0xae, 0x5d, 0x80, 0xb1, 0xe9, 0xd1, 0x0c, 0x13, 0xf2, 0x1c, 0xe7, 0xc5, 0x9c, 0x79, 0xac, 0x2c, 0xf7, 0x05, 0xae, 0xe8, 0x90, 0xad, 0xf4, 0x34, 0xf2, 0x9a, 0xa8, 0x41, 0xa0, 0x5b, 0x0f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2529_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x88, 0xb1, 0x4a, 0xfa, 0x49, 0x87, 0xd0, 0x6f, 0x66, 0x43, 0xeb, 0xbe, 0x8f, 0xd4, 0xc9, 0x9f, 0xd5, 0xc0, 0x71, 0x5c, 0x8f, 0xd4, 0xa8, 0x0b, 0xde, 0xb6, 0x17, 0x08, 0x59, 0xc2, 0x6d, 0x26, 0xaa, 0x98, 0x49, 0xcd, 0xd6, 0xed, 0xb8, 0x14, 0x34, 0x6b, 0x80, 0xe1, 0x32, 0xf0, 0x0d, 0x05, 0xb1, 0x5b, 0x0f, 0x9a, 0x6d, 0x17, 0xe2, 0x4a, 0xf7, 0x9f, 0xab, 0x9b, 0xb0, 0x87, 0x33, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2529 = { .name = "ecdsa_brainpoolp512r1_sha512_2529", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2529_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2529_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2529_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 409 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2530 for ECDSA, tcId is 410 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2530_pubkey[] = { 0x73, 0x26, 0x13, 0x7c, 0x69, 0x9e, 0x6b, 0x1d, 0x2b, 0xf3, 0x13, 0xc0, 0x4c, 0x34, 0xb8, 0x6e, 0x63, 0x29, 0x3d, 0x7e, 0x20, 0x54, 0xe4, 0x71, 0x87, 0xef, 0x84, 0x3f, 0xb4, 0x26, 0x74, 0xf6, 0x5b, 0x7e, 0x01, 0x36, 0xec, 0xda, 0xf8, 0xe4, 0x11, 0xc6, 0xe2, 0xdb, 0xbf, 0x5a, 0xc5, 0x00, 0x74, 0x01, 0x74, 0x3e, 0xc7, 0x24, 0x4e, 0x7d, 0xac, 0x03, 0x79, 0x51, 0x6b, 0xb9, 0x2f, 0x39, 0x92, 0xe5, 0x46, 0xd0, 0x1c, 0x16, 0x55, 0xcf, 0x68, 0x54, 0x93, 0x91, 0xd8, 0x58, 0x20, 0x35, 0xee, 0x47, 0x1e, 0x58, 0xf4, 0x33, 0xea, 0x89, 0xf3, 0x8f, 0x8c, 0xc1, 0xed, 0xc1, 0x92, 0x82, 0x25, 0xb3, 0xf5, 0xa3, 0x76, 0xe0, 0x15, 0xce, 0xe6, 0xae, 0x9e, 0x1e, 0xaa, 0xe6, 0x09, 0xbe, 0x2e, 0x69, 0x53, 0x7e, 0x59, 0x6b, 0x06, 0xb7, 0x7e, 0x4b, 0x6b, 0x74, 0x82, 0xfa, 0xb6, 0x0b, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2530_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2530 = { .name = "ecdsa_brainpoolp512r1_sha512_2530", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2530_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2530_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2530_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 410 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2531 for ECDSA, tcId is 411 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2531_pubkey[] = { 0x56, 0xbd, 0x4e, 0x3c, 0xa3, 0x22, 0xf6, 0x5c, 0x29, 0xb6, 0x11, 0xf7, 0x9f, 0x3f, 0x95, 0x0f, 0x21, 0x63, 0x8e, 0x02, 0x6f, 0xcc, 0xf6, 0x73, 0xb0, 0x8c, 0xff, 0xc7, 0x3c, 0xc3, 0x94, 0x95, 0xce, 0xd5, 0xb8, 0x8e, 0x26, 0x41, 0x9e, 0xbd, 0xe7, 0x5c, 0x85, 0xfd, 0xff, 0x14, 0x60, 0x94, 0x7e, 0xf7, 0xaf, 0xe9, 0x9a, 0xca, 0x58, 0x78, 0xb1, 0xaf, 0x79, 0x68, 0x81, 0x81, 0xe3, 0x23, 0x69, 0xe6, 0x46, 0xbb, 0x9d, 0x01, 0xa1, 0x0c, 0xc4, 0x93, 0x12, 0x59, 0xdc, 0x8f, 0x59, 0x7d, 0x95, 0xe8, 0x5e, 0xbd, 0x56, 0x72, 0x90, 0x98, 0xcf, 0xab, 0x14, 0x43, 0x16, 0x5e, 0x55, 0x8f, 0x05, 0x36, 0x98, 0xb0, 0xbb, 0x4f, 0x44, 0x22, 0x2e, 0xa2, 0x45, 0xac, 0x4c, 0x21, 0x71, 0x7e, 0xb2, 0x2a, 0xaf, 0xf6, 0x50, 0xa3, 0x29, 0xee, 0xe2, 0x42, 0x03, 0x84, 0x1c, 0x59, 0xd1, 0x3f, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2531_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x30, 0xd1, 0x9a, 0xc7, 0x1a, 0x42, 0xca, 0x70, 0xed, 0xaa, 0x8b, 0x0d, 0x33, 0x5e, 0x48, 0x02, 0x3a, 0x0d, 0xdf, 0x57, 0xea, 0x39, 0xa9, 0xbb, 0x18, 0xae, 0xbf, 0x15, 0x44, 0xa0, 0xdd, 0xd6, 0xf3, 0xc8, 0xac, 0xa4, 0xf1, 0x54, 0xe6, 0x50, 0x5b, 0xdd, 0x40, 0x50, 0x6d, 0x9e, 0xe0, 0x14, 0x51, 0xa0, 0x85, 0x92, 0x94, 0xad, 0x19, 0xf6, 0x33, 0xdd, 0x98, 0xb7, 0x9a, 0x79, 0x6d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2531 = { .name = "ecdsa_brainpoolp512r1_sha512_2531", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2531_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2531_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2531_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 411 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2532 for ECDSA, tcId is 412 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2532_pubkey[] = { 0x68, 0x8d, 0x0f, 0x39, 0x4a, 0xcb, 0x16, 0x11, 0x9e, 0x0b, 0x29, 0xb5, 0x6e, 0x78, 0x0f, 0x29, 0x5a, 0x24, 0xdc, 0xba, 0x16, 0x15, 0xa2, 0x3e, 0x59, 0xe6, 0x7b, 0x1d, 0xc9, 0x54, 0x9b, 0xff, 0x87, 0x91, 0xa6, 0x21, 0x30, 0xd4, 0xb0, 0xd8, 0xd7, 0x57, 0x39, 0xf0, 0x6d, 0xfc, 0x08, 0xcf, 0x6b, 0x5c, 0xb1, 0xe3, 0x1a, 0x63, 0xbc, 0x72, 0xb1, 0xfa, 0xd6, 0xf0, 0x58, 0xb1, 0xcd, 0x59, 0x9f, 0x94, 0x46, 0xae, 0x8a, 0x7f, 0x41, 0xbd, 0xfb, 0xac, 0x1d, 0xdb, 0xcd, 0xd6, 0xe6, 0x49, 0x01, 0x93, 0x26, 0x0d, 0xcd, 0xad, 0xa0, 0x72, 0x07, 0x9c, 0xbf, 0x13, 0x9b, 0x66, 0x6c, 0xf5, 0x93, 0x4f, 0x11, 0xab, 0xf5, 0x72, 0xa3, 0x3e, 0x7f, 0x12, 0x35, 0xcd, 0xf7, 0x08, 0x20, 0xa5, 0x47, 0x5d, 0x14, 0xec, 0xed, 0x67, 0xad, 0x6a, 0x4a, 0x85, 0x78, 0xf9, 0xb6, 0xe4, 0x09, 0x3c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2532_sig[] = { 0x9f, 0x49, 0x45, 0xf6, 0x80, 0xed, 0xf9, 0x80, 0x0a, 0x63, 0x28, 0x57, 0x58, 0xf3, 0x99, 0xb3, 0xd1, 0x8d, 0x81, 0x41, 0xb8, 0xa1, 0x80, 0x64, 0xa3, 0x0d, 0x30, 0x35, 0xf4, 0xcb, 0x65, 0x81, 0x95, 0x78, 0x77, 0xf3, 0xa8, 0xf0, 0xf7, 0x25, 0x97, 0x11, 0x6e, 0x70, 0x29, 0x15, 0xa4, 0xf4, 0xf6, 0x98, 0xf4, 0x04, 0x08, 0x9a, 0x4c, 0xc5, 0x08, 0x04, 0x47, 0xde, 0xf0, 0x2f, 0x48, 0x50, 0x10, 0xb9, 0x89, 0x00, 0x28, 0x55, 0xff, 0xaf, 0xbd, 0x8c, 0x23, 0xa6, 0x61, 0xf3, 0xb9, 0x3c, 0xcf, 0xff, 0x4f, 0xbe, 0x84, 0xa2, 0x3d, 0x1a, 0x6c, 0x4a, 0xff, 0x44, 0x05, 0xbd, 0xb9, 0x4c, 0x3f, 0x86, 0x02, 0x24, 0xe2, 0x05, 0x03, 0x2f, 0xdc, 0x9a, 0x1d, 0xc8, 0x0c, 0x7d, 0x6b, 0x21, 0x40, 0x9f, 0x96, 0x32, 0xe0, 0xfb, 0x54, 0x00, 0x21, 0xcc, 0xc4, 0x21, 0x61, 0xb7, 0x0f, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2532 = { .name = "ecdsa_brainpoolp512r1_sha512_2532", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2532_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2532_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2532_sig, .siglen = 128, .result = 1, .comment = "extreme value for k, tcId is 412 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2533 for ECDSA, tcId is 413 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2533_pubkey[] = { 0x83, 0x67, 0x2d, 0x9b, 0x61, 0xf7, 0x3f, 0x1a, 0x0b, 0x2e, 0x06, 0x6b, 0xc3, 0xd0, 0x09, 0x74, 0x9d, 0x28, 0xd4, 0xe5, 0x84, 0xa1, 0xaf, 0xea, 0x28, 0xdc, 0xff, 0xd7, 0x8b, 0x6b, 0x2d, 0x65, 0x9d, 0xbb, 0x0c, 0x5c, 0xf7, 0xbe, 0xd6, 0x1f, 0x3b, 0x03, 0xc3, 0xc1, 0x29, 0xe3, 0x1d, 0x4b, 0x49, 0xca, 0x8d, 0xa3, 0x81, 0x3c, 0xf2, 0x5b, 0x6f, 0x02, 0x5d, 0x84, 0xee, 0x82, 0xd5, 0x61, 0x37, 0x9b, 0xe7, 0xf5, 0xc8, 0x37, 0xfd, 0x23, 0xe0, 0xac, 0xd7, 0x49, 0x16, 0x75, 0x49, 0xe8, 0x70, 0x3d, 0xba, 0xd3, 0xbc, 0x7a, 0xdd, 0x9d, 0x3a, 0x9f, 0xf0, 0x1a, 0xbd, 0x34, 0xb5, 0x53, 0x42, 0xf5, 0x32, 0x42, 0x8d, 0x95, 0xcc, 0x1f, 0x0c, 0x9b, 0xae, 0x7f, 0x45, 0x8d, 0x94, 0x11, 0x91, 0x9a, 0x28, 0x16, 0x00, 0x96, 0x58, 0x22, 0x42, 0x18, 0x85, 0x1b, 0x0f, 0x8d, 0x57, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2533_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x38, 0xf4, 0x89, 0xe8, 0x49, 0x4d, 0xec, 0x2e, 0x6a, 0x9c, 0x4c, 0xe4, 0xbb, 0xed, 0xfe, 0xad, 0x43, 0xba, 0xd9, 0xe6, 0x91, 0x43, 0x46, 0x04, 0xf2, 0x21, 0x34, 0x43, 0x7a, 0xbb, 0xad, 0x7a, 0xc7, 0x14, 0xc9, 0x6b, 0x19, 0x8d, 0xb7, 0x5d, 0xc0, 0x82, 0x20, 0x5d, 0xd5, 0x39, 0x5a, 0xc2, 0x5f, 0x3b, 0x46, 0x80, 0x58, 0x1f, 0x48, 0xf4, 0x91, 0xd7, 0xdc, 0xd6, 0x34, 0x38, 0x55, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2533 = { .name = "ecdsa_brainpoolp512r1_sha512_2533", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2533_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2533_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2533_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 413 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2534 for ECDSA, tcId is 414 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2534_pubkey[] = { 0x73, 0x86, 0xa1, 0x09, 0x91, 0xc1, 0x47, 0x5c, 0x6c, 0x53, 0xf0, 0x58, 0x67, 0xe6, 0x9a, 0x35, 0x21, 0x9b, 0xc5, 0xca, 0xd4, 0x40, 0x5c, 0x96, 0x03, 0x22, 0x84, 0x3a, 0x56, 0xbb, 0x07, 0xbb, 0xaa, 0x31, 0x7d, 0x20, 0xa0, 0xbc, 0x98, 0x78, 0x6a, 0xb7, 0xb4, 0xc0, 0xcf, 0x6d, 0xea, 0xdf, 0x09, 0x3b, 0xb0, 0x7d, 0x5b, 0xd5, 0x63, 0xc0, 0xd5, 0x6b, 0x38, 0x0f, 0x88, 0x0e, 0x7a, 0xd1, 0x98, 0x19, 0xe9, 0xe8, 0x97, 0xc7, 0x64, 0x05, 0xda, 0xfb, 0xe1, 0xd7, 0x85, 0xb3, 0xbf, 0xf2, 0xe6, 0xe4, 0x87, 0x70, 0xad, 0xa1, 0xf4, 0x52, 0xec, 0x2b, 0x4a, 0x34, 0x7b, 0xda, 0xba, 0x7b, 0x6d, 0x71, 0x22, 0x00, 0x2d, 0x5f, 0x6e, 0xc4, 0xca, 0xbc, 0x58, 0x5b, 0x4e, 0xf8, 0x30, 0xe5, 0x2c, 0x62, 0x46, 0x41, 0xfe, 0x03, 0x82, 0x97, 0x80, 0x5e, 0xf0, 0xb7, 0xe8, 0xe8, 0x2b, 0xdd, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2534_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7a, 0x0c, 0x02, 0xf1, 0xc1, 0xa6, 0xfa, 0x1a, 0x52, 0x2a, 0x5b, 0xa1, 0x00, 0x6b, 0xb4, 0x05, 0x91, 0x22, 0xae, 0x5b, 0xc9, 0x90, 0x28, 0x53, 0xbd, 0xb4, 0xdd, 0xb5, 0x2b, 0x92, 0x2a, 0x99, 0x61, 0x75, 0xaf, 0x9c, 0x5b, 0x54, 0x3f, 0xc8, 0xe5, 0xa9, 0x20, 0xc9, 0x12, 0x0d, 0x30, 0x32, 0xcc, 0x11, 0x4d, 0xee, 0x73, 0xb0, 0xc0, 0xe7, 0x81, 0xa9, 0xfd, 0xcb, 0x02, 0x2f, 0x92, 0x94, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2534 = { .name = "ecdsa_brainpoolp512r1_sha512_2534", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2534_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2534_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2534_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 414 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2535 for ECDSA, tcId is 415 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2535_pubkey[] = { 0x7d, 0x76, 0xf0, 0x9d, 0xb5, 0xfc, 0x7e, 0xd7, 0x67, 0xdf, 0xad, 0x2a, 0xf9, 0xaf, 0x54, 0x70, 0xa4, 0x3e, 0x06, 0x2f, 0x21, 0x49, 0x24, 0x99, 0xaf, 0x5f, 0xc7, 0x19, 0xf6, 0xbe, 0x17, 0x88, 0x19, 0x57, 0xef, 0x47, 0x66, 0x88, 0xfa, 0x30, 0x49, 0xb1, 0x3d, 0x48, 0xc5, 0x1f, 0x25, 0x9e, 0x5d, 0x60, 0x43, 0x44, 0x65, 0xd8, 0x44, 0x45, 0xd3, 0x59, 0xb8, 0x9f, 0x66, 0xc8, 0x8b, 0xac, 0x42, 0x06, 0x61, 0x69, 0x92, 0x73, 0xb2, 0x38, 0x38, 0x82, 0x7c, 0x69, 0x90, 0x89, 0x78, 0x06, 0x4b, 0x7c, 0x98, 0xf4, 0x19, 0x5a, 0xd5, 0xe2, 0xec, 0x70, 0x9a, 0x03, 0x6e, 0xad, 0x56, 0xe3, 0x4a, 0x3e, 0x99, 0x9e, 0x8c, 0x37, 0xdd, 0xea, 0x5b, 0x00, 0x49, 0x0a, 0x01, 0x1d, 0x9d, 0x11, 0x66, 0x76, 0xe9, 0x02, 0x2c, 0x12, 0x4b, 0x3c, 0x08, 0x18, 0xbc, 0xc3, 0x48, 0x8f, 0x78, 0xd3, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2535_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2535_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x88, 0xb1, 0x4a, 0xfa, 0x49, 0x87, 0xd0, 0x6f, 0x66, 0x43, 0xeb, 0xbe, 0x8f, 0xd4, 0xc9, 0x9f, 0xd5, 0xc0, 0x71, 0x5c, 0x8f, 0xd4, 0xa8, 0x0b, 0xde, 0xb6, 0x17, 0x08, 0x59, 0xc2, 0x6d, 0x26, 0xaa, 0x98, 0x49, 0xcd, 0xd6, 0xed, 0xb8, 0x14, 0x34, 0x6b, 0x80, 0xe1, 0x32, 0xf0, 0x0d, 0x05, 0xb1, 0x5b, 0x0f, 0x9a, 0x6d, 0x17, 0xe2, 0x4a, 0xf7, 0x9f, 0xab, 0x9b, 0xb0, 0x87, 0x33, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2535 = { .name = "ecdsa_brainpoolp512r1_sha512_2535", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2535_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2535_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2535_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2536 for ECDSA, tcId is 416 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2536_pubkey[] = { 0x2a, 0x3a, 0x7f, 0x88, 0x15, 0x98, 0x3c, 0x92, 0x51, 0xdf, 0x92, 0x20, 0xcb, 0x5f, 0x42, 0x4f, 0x4d, 0x8e, 0xb9, 0xcf, 0xce, 0x3d, 0x96, 0xde, 0x72, 0x5b, 0xbe, 0xa6, 0xdb, 0xfe, 0xfe, 0x22, 0x6d, 0x78, 0x9f, 0xef, 0x85, 0x33, 0x19, 0x47, 0x87, 0x66, 0x8b, 0x66, 0xf8, 0xfb, 0x64, 0x0d, 0x13, 0x5a, 0x25, 0xa3, 0x0f, 0x5a, 0x25, 0x11, 0x1d, 0xdc, 0xfc, 0x5c, 0x9c, 0x7e, 0xb2, 0x2d, 0x9b, 0xa3, 0x5f, 0x30, 0x54, 0xac, 0x43, 0x9e, 0x0f, 0x55, 0x8e, 0xad, 0x8d, 0x09, 0x79, 0xa0, 0xfa, 0xb0, 0x46, 0xa4, 0x7a, 0xa0, 0x33, 0x9e, 0xf1, 0x6c, 0x0e, 0x1d, 0x37, 0xe4, 0xd1, 0xd6, 0xf2, 0x9f, 0xb7, 0xf6, 0x74, 0xdd, 0x51, 0xed, 0x57, 0x23, 0x34, 0x09, 0xac, 0x9e, 0x50, 0x5e, 0x29, 0xd4, 0x03, 0x78, 0x89, 0x71, 0x94, 0xcf, 0x5f, 0xbc, 0x92, 0x59, 0x5f, 0xd7, 0x74, 0xbe, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2536_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2536_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x22, 0x2c, 0x52, 0xbe, 0x92, 0x61, 0xf4, 0x1b, 0xd9, 0x90, 0xfa, 0xef, 0xa3, 0xf5, 0x32, 0x67, 0xf5, 0x70, 0x1c, 0x57, 0x23, 0xf5, 0x2a, 0x02, 0xf7, 0xad, 0x85, 0xc2, 0x16, 0x70, 0x9b, 0x49, 0xaa, 0xa6, 0x12, 0x73, 0x75, 0xbb, 0x6e, 0x05, 0x0d, 0x1a, 0xe0, 0x38, 0x4c, 0xbc, 0x03, 0x41, 0x6c, 0x56, 0xc3, 0xe6, 0x9b, 0x45, 0xf8, 0x92, 0xbd, 0xe7, 0xea, 0xe6, 0xec, 0x21, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2536 = { .name = "ecdsa_brainpoolp512r1_sha512_2536", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2536_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2536_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2536_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2537 for ECDSA, tcId is 417 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2537_pubkey[] = { 0x03, 0xf4, 0x98, 0xf2, 0xea, 0x6e, 0x36, 0xb4, 0x98, 0xac, 0x66, 0x46, 0x3a, 0x06, 0x70, 0x8f, 0xb9, 0x31, 0xac, 0x59, 0xa2, 0xa1, 0xdf, 0xa6, 0xeb, 0xb4, 0x97, 0x3c, 0xf0, 0x1a, 0x06, 0xce, 0xef, 0x58, 0xb3, 0x44, 0xb8, 0x5e, 0x89, 0xfc, 0x78, 0x35, 0x12, 0x11, 0xf7, 0x1f, 0xd1, 0xf1, 0x18, 0x18, 0xf7, 0xef, 0x96, 0xe2, 0x96, 0x46, 0x6b, 0x0d, 0x3b, 0x70, 0xc2, 0xda, 0x69, 0x20, 0x64, 0xaa, 0x78, 0x28, 0x54, 0x39, 0xf1, 0x7d, 0x69, 0xa9, 0x8c, 0xae, 0x8a, 0x13, 0x79, 0xbd, 0xac, 0x05, 0xce, 0xd9, 0x30, 0xa1, 0x8f, 0x44, 0x93, 0x9b, 0xd9, 0x1f, 0x86, 0x69, 0xa3, 0x7f, 0xe8, 0xfb, 0x1e, 0x9a, 0xb1, 0xea, 0xd4, 0xdb, 0x0b, 0x33, 0x7a, 0xc5, 0x94, 0xfd, 0x21, 0xd9, 0xe0, 0xd4, 0x32, 0x5a, 0xb7, 0xee, 0x07, 0x20, 0x8f, 0x1c, 0x07, 0x60, 0x1b, 0xb9, 0x13, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2537_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2537_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x30, 0xd1, 0x9a, 0xc7, 0x1a, 0x42, 0xca, 0x70, 0xed, 0xaa, 0x8b, 0x0d, 0x33, 0x5e, 0x48, 0x02, 0x3a, 0x0d, 0xdf, 0x57, 0xea, 0x39, 0xa9, 0xbb, 0x18, 0xae, 0xbf, 0x15, 0x44, 0xa0, 0xdd, 0xd6, 0xf3, 0xc8, 0xac, 0xa4, 0xf1, 0x54, 0xe6, 0x50, 0x5b, 0xdd, 0x40, 0x50, 0x6d, 0x9e, 0xe0, 0x14, 0x51, 0xa0, 0x85, 0x92, 0x94, 0xad, 0x19, 0xf6, 0x33, 0xdd, 0x98, 0xb7, 0x9a, 0x79, 0x6d, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2537 = { .name = "ecdsa_brainpoolp512r1_sha512_2537", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2537_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2537_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2537_sig, .siglen = 128, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2538 for ECDSA, tcId is 418 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2538_pubkey[] = { 0x7b, 0xb5, 0xf9, 0xef, 0xbc, 0xc2, 0x60, 0xb0, 0x81, 0x20, 0xc7, 0xc4, 0x19, 0x35, 0x66, 0x13, 0x33, 0x22, 0xce, 0x47, 0xe6, 0x66, 0x04, 0x7e, 0xdf, 0xb4, 0x62, 0xfb, 0xc3, 0x10, 0xbb, 0x06, 0x50, 0x3e, 0x8d, 0x62, 0xd0, 0xcf, 0x60, 0x55, 0xe2, 0x71, 0xa8, 0x18, 0x7b, 0xe2, 0x2d, 0xc5, 0xa1, 0xd6, 0xb0, 0x97, 0x04, 0xa3, 0xb9, 0x90, 0x65, 0xed, 0xb8, 0x7b, 0x46, 0xc2, 0xae, 0x32, 0x40, 0x1f, 0x00, 0x40, 0x04, 0x8f, 0x94, 0x7f, 0xa0, 0x20, 0x17, 0xbc, 0xa6, 0x1a, 0xb6, 0xd6, 0x35, 0x3f, 0xc5, 0x88, 0x07, 0xbb, 0xa2, 0xf0, 0xa4, 0x65, 0x21, 0xe2, 0x0f, 0x20, 0x66, 0x82, 0x4e, 0xc8, 0x4b, 0xae, 0x1b, 0x54, 0x5a, 0x41, 0x4a, 0x29, 0x6a, 0xde, 0xe2, 0x23, 0x15, 0xfd, 0x48, 0x57, 0x3a, 0x7c, 0x5b, 0x3b, 0xd4, 0xc5, 0x39, 0x8b, 0x27, 0xd7, 0xf2, 0x82, 0x4f, 0x2c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2538_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2538_sig[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x10, 0xb9, 0x89, 0x00, 0x28, 0x55, 0xff, 0xaf, 0xbd, 0x8c, 0x23, 0xa6, 0x61, 0xf3, 0xb9, 0x3c, 0xcf, 0xff, 0x4f, 0xbe, 0x84, 0xa2, 0x3d, 0x1a, 0x6c, 0x4a, 0xff, 0x44, 0x05, 0xbd, 0xb9, 0x4c, 0x3f, 0x86, 0x02, 0x24, 0xe2, 0x05, 0x03, 0x2f, 0xdc, 0x9a, 0x1d, 0xc8, 0x0c, 0x7d, 0x6b, 0x21, 0x40, 0x9f, 0x96, 0x32, 0xe0, 0xfb, 0x54, 0x00, 0x21, 0xcc, 0xc4, 0x21, 0x61, 0xb7, 0x0f, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2538 = { .name = "ecdsa_brainpoolp512r1_sha512_2538", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2538_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2538_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2538_sig, .siglen = 128, .result = 1, .comment = "extreme value for k, tcId is 418 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2539 for ECDSA, tcId is 419 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2539_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7d, 0xde, 0x38, 0x5d, 0x56, 0x63, 0x32, 0xec, 0xc0, 0xea, 0xbf, 0xa9, 0xcf, 0x78, 0x22, 0xfd, 0xf2, 0x09, 0xf7, 0x00, 0x24, 0xa5, 0x7b, 0x1a, 0xa0, 0x00, 0xc5, 0x5b, 0x88, 0x1f, 0x81, 0x11, 0xb2, 0xdc, 0xde, 0x49, 0x4a, 0x5f, 0x48, 0x5e, 0x5b, 0xca, 0x4b, 0xd8, 0x8a, 0x27, 0x63, 0xae, 0xd1, 0xca, 0x2b, 0x2f, 0xa8, 0xf0, 0x54, 0x06, 0x78, 0xcd, 0x1e, 0x0f, 0x3a, 0xd8, 0x08, 0x92, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2539_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2539 = { .name = "ecdsa_brainpoolp512r1_sha512_2539", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2539_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2539_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2539_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 419 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2540 for ECDSA, tcId is 420 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2540_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x7d, 0xde, 0x38, 0x5d, 0x56, 0x63, 0x32, 0xec, 0xc0, 0xea, 0xbf, 0xa9, 0xcf, 0x78, 0x22, 0xfd, 0xf2, 0x09, 0xf7, 0x00, 0x24, 0xa5, 0x7b, 0x1a, 0xa0, 0x00, 0xc5, 0x5b, 0x88, 0x1f, 0x81, 0x11, 0xb2, 0xdc, 0xde, 0x49, 0x4a, 0x5f, 0x48, 0x5e, 0x5b, 0xca, 0x4b, 0xd8, 0x8a, 0x27, 0x63, 0xae, 0xd1, 0xca, 0x2b, 0x2f, 0xa8, 0xf0, 0x54, 0x06, 0x78, 0xcd, 0x1e, 0x0f, 0x3a, 0xd8, 0x08, 0x92, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2540_sig[] = { 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2540 = { .name = "ecdsa_brainpoolp512r1_sha512_2540", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2540_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2540_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2540_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 420 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2541 for ECDSA, tcId is 421 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2541_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x2c, 0xff, 0x65, 0x5b, 0x85, 0x86, 0x91, 0x9e, 0x7e, 0xea, 0x27, 0x04, 0x64, 0x51, 0xd9, 0x09, 0xd9, 0x26, 0x96, 0xb3, 0x8f, 0x24, 0x56, 0xf4, 0x36, 0x62, 0xd7, 0x6e, 0xe8, 0x13, 0x87, 0x5f, 0xca, 0x70, 0xbc, 0xb7, 0x51, 0x67, 0x1f, 0xe4, 0x53, 0x03, 0x55, 0x52, 0x5c, 0x7c, 0x1d, 0x37, 0x56, 0xb7, 0xd3, 0xff, 0x84, 0x92, 0x72, 0x7e, 0xaf, 0xdd, 0x42, 0x47, 0x1d, 0x62, 0x40, 0x61, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2541_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2541 = { .name = "ecdsa_brainpoolp512r1_sha512_2541", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2541_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2541_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2541_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 421 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2542 for ECDSA, tcId is 422 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2542_pubkey[] = { 0x81, 0xae, 0xe4, 0xbd, 0xd8, 0x2e, 0xd9, 0x64, 0x5a, 0x21, 0x32, 0x2e, 0x9c, 0x4c, 0x6a, 0x93, 0x85, 0xed, 0x9f, 0x70, 0xb5, 0xd9, 0x16, 0xc1, 0xb4, 0x3b, 0x62, 0xee, 0xf4, 0xd0, 0x09, 0x8e, 0xff, 0x3b, 0x1f, 0x78, 0xe2, 0xd0, 0xd4, 0x8d, 0x50, 0xd1, 0x68, 0x7b, 0x93, 0xb9, 0x7d, 0x5f, 0x7c, 0x6d, 0x50, 0x47, 0x40, 0x6a, 0x5e, 0x68, 0x8b, 0x35, 0x22, 0x09, 0xbc, 0xb9, 0xf8, 0x22, 0x2c, 0xff, 0x65, 0x5b, 0x85, 0x86, 0x91, 0x9e, 0x7e, 0xea, 0x27, 0x04, 0x64, 0x51, 0xd9, 0x09, 0xd9, 0x26, 0x96, 0xb3, 0x8f, 0x24, 0x56, 0xf4, 0x36, 0x62, 0xd7, 0x6e, 0xe8, 0x13, 0x87, 0x5f, 0xca, 0x70, 0xbc, 0xb7, 0x51, 0x67, 0x1f, 0xe4, 0x53, 0x03, 0x55, 0x52, 0x5c, 0x7c, 0x1d, 0x37, 0x56, 0xb7, 0xd3, 0xff, 0x84, 0x92, 0x72, 0x7e, 0xaf, 0xdd, 0x42, 0x47, 0x1d, 0x62, 0x40, 0x61, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2542_sig[] = { 0x66, 0xe5, 0x9c, 0xbc, 0xf0, 0xf0, 0xa0, 0xfe, 0xe7, 0x25, 0x6d, 0x52, 0x66, 0x1c, 0xf7, 0x4b, 0x81, 0x63, 0x08, 0xa7, 0x7a, 0x7c, 0x9e, 0x8c, 0x41, 0x30, 0x46, 0x1a, 0x4d, 0x12, 0x05, 0xee, 0xdf, 0xc3, 0x2b, 0x5f, 0xba, 0x90, 0x82, 0x9c, 0x84, 0x25, 0x40, 0x92, 0x83, 0xea, 0xb7, 0x7c, 0x74, 0xfc, 0xf1, 0xd4, 0x55, 0x71, 0xda, 0x5a, 0x37, 0x2a, 0x02, 0x63, 0x68, 0x79, 0x4c, 0x9d, 0x18, 0x68, 0xcd, 0x63, 0x8d, 0x21, 0x65, 0x38, 0x76, 0xd5, 0x45, 0x86, 0x99, 0xaf, 0x24, 0x01, 0x1d, 0x06, 0xef, 0xab, 0xf5, 0x1c, 0xd4, 0xdd, 0x8c, 0x57, 0x5f, 0x8a, 0xa2, 0x50, 0x6e, 0xeb, 0x79, 0xe4, 0x56, 0x52, 0x78, 0xaa, 0x73, 0x28, 0x2d, 0xee, 0xa0, 0x28, 0x36, 0xcf, 0x70, 0x0a, 0x28, 0xd0, 0x42, 0xc9, 0x4a, 0x56, 0x8c, 0xfb, 0x19, 0xee, 0xcc, 0x5b, 0xcd, 0x3c, 0xb6, 0xea, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2542 = { .name = "ecdsa_brainpoolp512r1_sha512_2542", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2542_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2542_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2542_sig, .siglen = 128, .result = -1, .comment = "testing point duplication, tcId is 422 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2543 for ECDSA, tcId is 423 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2543_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2543_sig[] = { 0x89, 0xed, 0xf7, 0x5e, 0x6e, 0x98, 0x63, 0x05, 0xd8, 0x18, 0x13, 0x86, 0xc1, 0x6d, 0xb4, 0x4b, 0xa0, 0xd7, 0xff, 0x40, 0xf4, 0x33, 0x55, 0x69, 0x75, 0x4a, 0x48, 0x1f, 0x5c, 0xd4, 0x8c, 0x62, 0x11, 0xa6, 0x3d, 0xe7, 0xbd, 0xaa, 0x48, 0x5e, 0x9f, 0xa7, 0x98, 0x58, 0xa4, 0xea, 0xbf, 0x11, 0x1f, 0xed, 0x29, 0x59, 0xf0, 0x31, 0xde, 0x2a, 0x13, 0x2b, 0xa7, 0x09, 0x41, 0x26, 0x83, 0xa9, 0x7a, 0x8c, 0x08, 0x56, 0x4f, 0x51, 0x53, 0x41, 0x28, 0xbb, 0x52, 0xfe, 0x36, 0xdf, 0xfa, 0xae, 0x89, 0x07, 0x90, 0x11, 0x25, 0x6e, 0xf8, 0x06, 0x9e, 0x64, 0xd6, 0x4c, 0x56, 0x10, 0xd3, 0xe6, 0x11, 0xc0, 0xba, 0x8b, 0x19, 0x02, 0x73, 0x88, 0xfc, 0xcc, 0x21, 0x25, 0x23, 0xb2, 0x2c, 0x44, 0xe8, 0x5a, 0x78, 0x9e, 0x16, 0xcb, 0x1b, 0xbd, 0x32, 0x40, 0xc8, 0x6b, 0x43, 0x48, 0x0f, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2543 = { .name = "ecdsa_brainpoolp512r1_sha512_2543", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2543_pubkey, .pubkeylen = 128, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp512r1_sha512_2543_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 423 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2544 for ECDSA, tcId is 424 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2544_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2544_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2544_sig[] = { 0x22, 0x5d, 0xc2, 0x31, 0x01, 0x77, 0xce, 0x62, 0x67, 0xef, 0xde, 0x99, 0x37, 0xef, 0xf8, 0x98, 0xfb, 0x0b, 0xad, 0x12, 0xb0, 0xdb, 0xeb, 0x4f, 0xa9, 0xc6, 0xbe, 0x6e, 0x20, 0xf8, 0x85, 0x63, 0xe6, 0xd2, 0x99, 0x1d, 0x47, 0xa6, 0x48, 0xb0, 0xba, 0x5a, 0x70, 0x39, 0x84, 0x2d, 0xbf, 0x88, 0x3b, 0xbd, 0x73, 0x5d, 0xf7, 0x93, 0xcc, 0xe0, 0xd1, 0x36, 0x02, 0x3f, 0xbf, 0xc9, 0xbe, 0x95, 0x00, 0xd5, 0x97, 0x83, 0xd8, 0xbd, 0x05, 0x0c, 0xf7, 0x28, 0xb3, 0x50, 0x6c, 0x16, 0xee, 0x4a, 0x78, 0xac, 0x26, 0xc1, 0x2f, 0xd3, 0x3d, 0xad, 0xb6, 0xee, 0x81, 0x46, 0x37, 0x2e, 0x4f, 0xb2, 0xa8, 0x80, 0xef, 0x77, 0xeb, 0x20, 0xac, 0x90, 0xf3, 0xa4, 0x27, 0x5c, 0x17, 0x18, 0xa0, 0x33, 0xa7, 0xc0, 0xb2, 0xdf, 0x53, 0x8e, 0xb3, 0x58, 0x27, 0x33, 0x01, 0x54, 0x19, 0x11, 0x53, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2544 = { .name = "ecdsa_brainpoolp512r1_sha512_2544", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2544_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2544_msg, .msglen = 3, .sig = ecdsa_brainpoolp512r1_sha512_2544_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 424 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2545 for ECDSA, tcId is 425 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2545_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2545_sig[] = { 0x61, 0x48, 0x3c, 0x72, 0x93, 0x69, 0x41, 0x31, 0x44, 0xa6, 0xbe, 0x0d, 0xd0, 0x5c, 0x1a, 0xc2, 0x9b, 0xc4, 0x40, 0xbb, 0xda, 0xf8, 0x7e, 0x57, 0x2a, 0xa9, 0x87, 0xe9, 0xca, 0x42, 0x36, 0x39, 0xf3, 0x39, 0xbc, 0xaa, 0xad, 0x99, 0xcb, 0x1f, 0xa8, 0x0b, 0x7c, 0x35, 0x41, 0x6a, 0x18, 0x34, 0xec, 0x04, 0xbc, 0xf0, 0xfe, 0x78, 0x12, 0xc7, 0x12, 0xeb, 0x1f, 0x06, 0xa1, 0x6d, 0xac, 0xa3, 0x41, 0xbb, 0x95, 0x6c, 0x33, 0x9e, 0xbc, 0xf5, 0xe4, 0xe4, 0x03, 0xc7, 0xd8, 0x92, 0x8d, 0x5e, 0xb4, 0xfd, 0xf7, 0xd3, 0xf5, 0x3a, 0x2c, 0x06, 0xd6, 0xc9, 0xfa, 0xc3, 0x47, 0xf6, 0x03, 0xac, 0x32, 0x09, 0xa2, 0xaf, 0x37, 0x51, 0x6f, 0x80, 0x7b, 0x50, 0x36, 0x3b, 0x53, 0x28, 0xbc, 0x98, 0xb9, 0x43, 0x54, 0xaf, 0x7d, 0x59, 0x96, 0x6d, 0x16, 0x0f, 0x68, 0xe8, 0x0c, 0x6b, 0x2d, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2545 = { .name = "ecdsa_brainpoolp512r1_sha512_2545", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2545_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2545_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_2545_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 425 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2546 for ECDSA, tcId is 426 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2546_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2546_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2546_sig[] = { 0xa6, 0x20, 0x88, 0x0b, 0xb7, 0xfa, 0xb1, 0x18, 0x0e, 0x3d, 0x8f, 0x39, 0x3e, 0x4b, 0x33, 0x43, 0xdd, 0x4e, 0xb1, 0xc3, 0x74, 0xf9, 0xd6, 0x12, 0x52, 0xf8, 0xa2, 0x01, 0xd9, 0x09, 0x6b, 0xa8, 0x36, 0x72, 0x1f, 0x8e, 0x2d, 0x8b, 0x56, 0xcb, 0xf4, 0x06, 0x96, 0x0a, 0xae, 0x0e, 0x50, 0x32, 0x5a, 0xdf, 0xca, 0x6b, 0x1b, 0x52, 0x9f, 0x06, 0xa8, 0x12, 0x60, 0xbd, 0x8b, 0x15, 0xff, 0x68, 0x76, 0x53, 0x7f, 0xeb, 0xbc, 0x0e, 0x24, 0xab, 0x49, 0x92, 0xb5, 0x76, 0xab, 0xf8, 0xbc, 0x02, 0x01, 0xca, 0xcf, 0x5c, 0xcf, 0x67, 0x4a, 0xd3, 0xc3, 0xb1, 0x55, 0x2c, 0x98, 0xca, 0x64, 0x64, 0x2e, 0xff, 0x54, 0x01, 0xaf, 0xec, 0xab, 0x16, 0x7e, 0xc0, 0xbe, 0x19, 0x5f, 0xe5, 0xff, 0xa1, 0x78, 0xf1, 0x45, 0x67, 0xef, 0x17, 0x1b, 0x48, 0x27, 0x96, 0x4a, 0x55, 0x9d, 0x07, 0x9b, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2546 = { .name = "ecdsa_brainpoolp512r1_sha512_2546", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2546_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2546_msg, .msglen = 20, .sig = ecdsa_brainpoolp512r1_sha512_2546_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 426 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2547 for ECDSA, tcId is 427 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2547_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2547_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2547_sig[] = { 0x47, 0x9c, 0xe8, 0x45, 0x8b, 0x04, 0xb2, 0xdc, 0x12, 0x7b, 0x46, 0x97, 0x1e, 0x6c, 0x79, 0x83, 0x1b, 0xf7, 0x88, 0xf6, 0x5d, 0xdc, 0x77, 0x06, 0x20, 0xda, 0xaa, 0x15, 0x58, 0x3f, 0x8d, 0x50, 0x6f, 0x2a, 0x66, 0x52, 0xd8, 0x2b, 0x38, 0x56, 0x0e, 0xc1, 0x97, 0x75, 0x86, 0xe1, 0x19, 0x29, 0xb6, 0x66, 0xf6, 0xd7, 0x01, 0x2d, 0x81, 0x6f, 0xd3, 0x56, 0xd4, 0x1e, 0x93, 0x04, 0xd6, 0x0f, 0xa7, 0x50, 0xf7, 0x3c, 0xca, 0xef, 0xf5, 0xd9, 0x94, 0x06, 0x7e, 0x66, 0xe4, 0x5c, 0x20, 0x08, 0x92, 0xc6, 0x07, 0xb3, 0x29, 0xbe, 0x5e, 0x64, 0xdb, 0x5c, 0x38, 0x3c, 0x7b, 0xe7, 0x11, 0xc9, 0x7b, 0x5d, 0xd4, 0x25, 0xa5, 0x22, 0x50, 0xbc, 0x86, 0x24, 0x77, 0xe2, 0x8b, 0x3a, 0xfa, 0x4e, 0xf3, 0xd8, 0x31, 0x06, 0x6a, 0x7b, 0x14, 0x34, 0x32, 0xa5, 0xd1, 0x54, 0x03, 0x02, 0x14, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2547 = { .name = "ecdsa_brainpoolp512r1_sha512_2547", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2547_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2547_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2547_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 427 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2548 for ECDSA, tcId is 428 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2548_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2548_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2548_sig[] = { 0x68, 0x5b, 0x8b, 0x29, 0x29, 0xc9, 0xa0, 0xa9, 0xb0, 0xde, 0xb6, 0xba, 0xef, 0xd0, 0x0e, 0x26, 0xf5, 0x0d, 0x4c, 0x1f, 0xc3, 0xfe, 0xd4, 0x7d, 0x7e, 0xf8, 0x12, 0xc5, 0x2b, 0x66, 0xec, 0x6f, 0x6d, 0x09, 0xf5, 0x4e, 0x9b, 0xdb, 0x72, 0x02, 0x01, 0x65, 0x70, 0xf7, 0x5b, 0xb9, 0x91, 0x2a, 0xab, 0x3a, 0x57, 0x2b, 0xfb, 0x97, 0xea, 0x58, 0x9a, 0xce, 0x29, 0x4f, 0xf0, 0xfe, 0x66, 0x62, 0x4c, 0x28, 0x62, 0x67, 0xcb, 0x87, 0xa6, 0xbe, 0x56, 0xf4, 0xcd, 0x00, 0x80, 0x39, 0x8c, 0x23, 0xe5, 0x69, 0xf2, 0xeb, 0xda, 0x71, 0xd2, 0xcd, 0x16, 0x82, 0x08, 0x02, 0x90, 0xde, 0xb4, 0x14, 0x3b, 0xdc, 0x61, 0xe7, 0x5b, 0x42, 0xab, 0xef, 0xbc, 0xbb, 0xdd, 0xf4, 0xc7, 0x94, 0x54, 0x5a, 0x05, 0x37, 0x86, 0x56, 0xa1, 0x85, 0x86, 0x58, 0xe0, 0xa4, 0x59, 0x58, 0x33, 0xfc, 0x40, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2548 = { .name = "ecdsa_brainpoolp512r1_sha512_2548", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2548_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2548_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2548_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 428 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2549 for ECDSA, tcId is 429 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2549_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2549_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2549_sig[] = { 0x81, 0x11, 0x12, 0xd2, 0x7c, 0xa1, 0xe4, 0x34, 0xb0, 0x0c, 0x02, 0x93, 0x32, 0x02, 0x84, 0xb1, 0xc5, 0x36, 0x9f, 0xd0, 0x07, 0xf9, 0x0e, 0x7a, 0x99, 0xd4, 0x4c, 0x9c, 0x02, 0x01, 0x36, 0x88, 0xd1, 0x6e, 0x5e, 0x0a, 0x2f, 0xc3, 0xa0, 0x77, 0x06, 0x4a, 0x99, 0x5c, 0x42, 0x44, 0x19, 0x5c, 0x04, 0xf0, 0x03, 0x23, 0xe3, 0x3a, 0xde, 0xa6, 0xb3, 0x77, 0x01, 0xad, 0x5c, 0xb3, 0x62, 0x16, 0x82, 0xdd, 0x5c, 0x3e, 0x36, 0x42, 0xfc, 0x43, 0xe5, 0xc4, 0xc6, 0x52, 0xe3, 0xb2, 0xd0, 0x0f, 0x6d, 0x13, 0x72, 0x07, 0xbe, 0x8c, 0x9b, 0x21, 0x25, 0x56, 0x1c, 0x08, 0x70, 0x3e, 0x4a, 0x84, 0xd2, 0xa8, 0x27, 0x85, 0xf7, 0x75, 0xab, 0xd1, 0x8a, 0xab, 0x24, 0xe5, 0x2f, 0x12, 0xc5, 0xf8, 0xcb, 0x56, 0xb2, 0x8b, 0x91, 0x5f, 0x9c, 0x0b, 0x11, 0x10, 0xc5, 0x42, 0xba, 0x92, 0xb3, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2549 = { .name = "ecdsa_brainpoolp512r1_sha512_2549", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2549_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2549_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2549_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 429 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2550 for ECDSA, tcId is 430 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2550_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2550_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2550_sig[] = { 0x39, 0xd0, 0xc5, 0xc4, 0xe4, 0x8c, 0xa1, 0x40, 0x64, 0xb2, 0xe9, 0xb3, 0x60, 0x0d, 0xeb, 0x0e, 0xc2, 0xfb, 0x3e, 0x0c, 0x65, 0xb3, 0xbe, 0x5c, 0xe3, 0xf2, 0x06, 0x16, 0x6d, 0x76, 0xdf, 0xc5, 0xa5, 0xf6, 0xea, 0x87, 0x02, 0xda, 0x3a, 0xec, 0xb1, 0x3e, 0x7b, 0x55, 0xa8, 0x7b, 0x12, 0x63, 0xc4, 0x88, 0x46, 0x11, 0xe5, 0xde, 0x44, 0x0f, 0x6c, 0x89, 0xed, 0x12, 0xf8, 0x8a, 0xe5, 0x0f, 0x6a, 0xe7, 0x83, 0x98, 0xe7, 0xf9, 0x42, 0xb3, 0x5e, 0x7d, 0x87, 0xef, 0x27, 0xce, 0x83, 0x06, 0x90, 0xf7, 0x32, 0x7a, 0xd2, 0xa8, 0x3d, 0xf5, 0x6e, 0x9d, 0x02, 0x88, 0xb5, 0x19, 0x99, 0x45, 0x4b, 0xd9, 0x0f, 0x89, 0x5e, 0x78, 0x49, 0xf3, 0x5b, 0x2a, 0x65, 0x2a, 0x3a, 0xf9, 0x7b, 0xf5, 0x57, 0x95, 0xb4, 0x69, 0x8e, 0x0b, 0x01, 0x4e, 0xa6, 0xff, 0x02, 0x1a, 0x00, 0x87, 0x8f, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2550 = { .name = "ecdsa_brainpoolp512r1_sha512_2550", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2550_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2550_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2550_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 430 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2551 for ECDSA, tcId is 431 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2551_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2551_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2551_sig[] = { 0x7c, 0x3a, 0xb2, 0xe3, 0xde, 0xaf, 0xb8, 0x23, 0xee, 0x59, 0x1d, 0xc5, 0x3c, 0x97, 0xb3, 0x89, 0xc6, 0xd1, 0x8a, 0x8c, 0xa9, 0xa6, 0xae, 0x20, 0xc7, 0x43, 0x28, 0x60, 0x6d, 0xb2, 0xd7, 0xc7, 0xd2, 0xbb, 0x3c, 0xe2, 0x68, 0x94, 0xe3, 0xf3, 0x07, 0x85, 0x23, 0x7b, 0x9e, 0x87, 0x43, 0x50, 0xd6, 0x15, 0x78, 0x63, 0x81, 0xb0, 0xc8, 0xc4, 0x20, 0x22, 0x4d, 0x2f, 0x5e, 0x35, 0x94, 0x68, 0x34, 0xe7, 0x03, 0xdd, 0x93, 0x9b, 0x2b, 0x1a, 0x20, 0x08, 0x72, 0x33, 0x4e, 0x2f, 0x86, 0x4d, 0xbf, 0x26, 0x68, 0x8f, 0x84, 0x75, 0xc9, 0xe3, 0x8a, 0x38, 0x41, 0x02, 0xe0, 0x8a, 0x18, 0xc2, 0x7d, 0x4e, 0x30, 0xd8, 0x02, 0x09, 0x5f, 0xff, 0x3e, 0xdd, 0xa6, 0xdc, 0x1e, 0x03, 0xaa, 0x81, 0xae, 0xd9, 0x67, 0x19, 0xcb, 0x49, 0x61, 0x24, 0x71, 0xfa, 0x11, 0x88, 0x75, 0xa1, 0x5c, 0x18, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2551 = { .name = "ecdsa_brainpoolp512r1_sha512_2551", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2551_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2551_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2551_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 431 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2552 for ECDSA, tcId is 432 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2552_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2552_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2552_sig[] = { 0x4c, 0xd8, 0xa5, 0xf1, 0x97, 0x7a, 0x3c, 0xf8, 0xe8, 0x47, 0xa1, 0x37, 0x73, 0x59, 0xcc, 0xa7, 0x04, 0x6c, 0x79, 0x3a, 0xda, 0x06, 0x65, 0xf2, 0xc0, 0x69, 0x08, 0xfd, 0xce, 0xc2, 0x4e, 0x6c, 0xd5, 0x5a, 0x17, 0x50, 0xca, 0x57, 0x64, 0x21, 0xb8, 0xa6, 0x5a, 0xa9, 0x9a, 0xed, 0x86, 0x3c, 0xda, 0xaa, 0x77, 0xd7, 0xf7, 0xcf, 0x84, 0x44, 0x8e, 0xa5, 0x8e, 0x95, 0xc5, 0x7a, 0x13, 0x3c, 0xa3, 0x40, 0x57, 0x2d, 0x5d, 0x96, 0x83, 0xe7, 0x2e, 0x15, 0x7e, 0x68, 0x3a, 0xb1, 0x6d, 0x0e, 0x2a, 0x35, 0x03, 0x0f, 0xf3, 0xe1, 0x64, 0x1d, 0x1b, 0x4f, 0x80, 0x1d, 0x80, 0x73, 0x2c, 0x32, 0xb9, 0xfb, 0xb5, 0x3f, 0xdc, 0xae, 0xa9, 0x33, 0xf1, 0x31, 0x13, 0x6f, 0x8a, 0xb2, 0x53, 0x11, 0x01, 0x8b, 0x87, 0x1f, 0x53, 0x75, 0x37, 0x82, 0x98, 0x9a, 0x87, 0xef, 0x23, 0x1a, 0x38, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2552 = { .name = "ecdsa_brainpoolp512r1_sha512_2552", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2552_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2552_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2552_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 432 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2553 for ECDSA, tcId is 433 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2553_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2553_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2553_sig[] = { 0x53, 0x19, 0x2c, 0x28, 0x82, 0x0e, 0xc2, 0x66, 0x63, 0x9f, 0xee, 0x09, 0xe2, 0x14, 0xa5, 0x5c, 0xc0, 0xef, 0xb0, 0x7b, 0x22, 0xdc, 0x0d, 0x3f, 0x29, 0x3b, 0xda, 0x20, 0x72, 0xfc, 0xf9, 0xb4, 0x62, 0xda, 0x93, 0xec, 0x9e, 0x71, 0x69, 0xae, 0x1f, 0x11, 0x48, 0x70, 0x51, 0x89, 0xf7, 0xf1, 0x5d, 0x2c, 0xbe, 0xc4, 0x6d, 0x22, 0x41, 0x97, 0xa3, 0xa7, 0xa9, 0x24, 0xb0, 0xc0, 0x0a, 0x32, 0x1b, 0x66, 0x45, 0x36, 0xae, 0xdb, 0xdc, 0x97, 0xbe, 0xd4, 0xde, 0xe2, 0x3e, 0xb9, 0x4a, 0x49, 0xf2, 0x3d, 0xe3, 0xbd, 0x84, 0xa7, 0x8f, 0x29, 0x9e, 0x81, 0xed, 0xfe, 0x01, 0x7a, 0x7d, 0x3c, 0xa3, 0xa7, 0xc8, 0xaa, 0xce, 0x8d, 0x13, 0xb6, 0xb2, 0xeb, 0x47, 0x7b, 0x92, 0x2c, 0x43, 0x98, 0x39, 0xea, 0xcd, 0xff, 0x27, 0x83, 0x07, 0x07, 0x57, 0x75, 0x48, 0x63, 0x58, 0x2f, 0x71, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2553 = { .name = "ecdsa_brainpoolp512r1_sha512_2553", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2553_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2553_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2553_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 433 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2554 for ECDSA, tcId is 434 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2554_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2554_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2554_sig[] = { 0x96, 0x90, 0x58, 0xc1, 0x5d, 0x67, 0x5b, 0x1b, 0x26, 0x21, 0x52, 0xa4, 0x52, 0x0f, 0x7e, 0x80, 0x3a, 0xb4, 0x65, 0xa9, 0xe1, 0xee, 0xef, 0x7b, 0x8a, 0x5d, 0x0f, 0xb3, 0xe8, 0x80, 0x32, 0xb8, 0xe8, 0xf1, 0xbe, 0x9f, 0x37, 0xc8, 0x0f, 0x9c, 0x7b, 0x95, 0x0f, 0x4d, 0xa9, 0x50, 0xba, 0xae, 0x9b, 0x21, 0x6e, 0xcd, 0x6c, 0x79, 0x3d, 0xdb, 0x14, 0x59, 0xcf, 0xdf, 0x49, 0x77, 0x6b, 0xae, 0x20, 0xe0, 0xd0, 0x78, 0xa5, 0xa1, 0x13, 0xe9, 0x2f, 0xac, 0xdf, 0xe5, 0xcb, 0x39, 0x24, 0x32, 0x47, 0x25, 0x4a, 0xa0, 0xa6, 0x56, 0xb8, 0x3e, 0x7b, 0xaa, 0x34, 0x3d, 0x36, 0xf7, 0xb1, 0x4b, 0x86, 0xf1, 0x5e, 0x54, 0xb7, 0x1b, 0xa7, 0x50, 0x6d, 0x51, 0x19, 0xff, 0x52, 0xc4, 0x7e, 0x0e, 0xe5, 0x49, 0x92, 0x7a, 0x00, 0x8c, 0xbf, 0x2b, 0xbf, 0xe1, 0x91, 0x6d, 0x1c, 0xc2, 0x74, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2554 = { .name = "ecdsa_brainpoolp512r1_sha512_2554", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2554_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2554_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2554_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 434 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2555 for ECDSA, tcId is 435 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2555_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2555_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2555_sig[] = { 0x1d, 0xe5, 0xdf, 0x62, 0x13, 0x64, 0x43, 0x6b, 0xed, 0x5c, 0xac, 0xf8, 0xdb, 0xe4, 0x20, 0xe4, 0xe4, 0xe5, 0xd1, 0xb0, 0x43, 0x4f, 0xcf, 0x9d, 0xc3, 0x35, 0x64, 0x5d, 0xd0, 0xaa, 0x07, 0xcc, 0x1d, 0x1e, 0xa3, 0x0a, 0x8c, 0xaf, 0xe2, 0x53, 0x1c, 0xd4, 0x03, 0x5d, 0xd9, 0x72, 0xc0, 0xd6, 0xc3, 0x72, 0x0f, 0x16, 0x0e, 0x24, 0x26, 0x4f, 0xd6, 0xc4, 0x15, 0x21, 0xe4, 0x4e, 0xb0, 0xcb, 0x72, 0xe9, 0xab, 0xd5, 0x45, 0x61, 0xba, 0xc8, 0x9b, 0x23, 0x4b, 0xf9, 0xe5, 0x1a, 0x3f, 0x60, 0x03, 0x59, 0x0a, 0xf1, 0x77, 0x09, 0x8e, 0x25, 0xf0, 0x05, 0x3a, 0x3a, 0xe1, 0x8a, 0x6c, 0x74, 0xb3, 0x89, 0x67, 0x4a, 0x6e, 0xb8, 0x03, 0x78, 0xff, 0xd2, 0x55, 0xcf, 0xe5, 0x23, 0x23, 0x64, 0x5c, 0xdf, 0xe9, 0xa1, 0x0a, 0x96, 0x53, 0x41, 0xb4, 0xe4, 0x7f, 0xc0, 0xdd, 0x08, 0x2e, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2555 = { .name = "ecdsa_brainpoolp512r1_sha512_2555", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2555_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2555_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2555_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 435 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2556 for ECDSA, tcId is 436 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2556_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2556_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2556_sig[] = { 0x42, 0x2f, 0xb1, 0x8c, 0xde, 0xc9, 0x66, 0x93, 0x71, 0x45, 0xb0, 0xf1, 0x60, 0xb8, 0xce, 0x22, 0x2b, 0x0b, 0xa1, 0x6f, 0xab, 0x07, 0x5e, 0x16, 0xf1, 0xda, 0xc8, 0x39, 0xb8, 0xd7, 0x77, 0x2f, 0xee, 0x27, 0xa2, 0x83, 0xad, 0x72, 0x22, 0x25, 0xbe, 0xbe, 0x83, 0xdb, 0x2d, 0x5a, 0x8b, 0x25, 0xcb, 0x2c, 0xbe, 0x45, 0x24, 0x8b, 0x3a, 0xa8, 0x76, 0x55, 0x4c, 0x6a, 0x37, 0xf8, 0x13, 0x75, 0x7a, 0x38, 0x89, 0xd5, 0x3b, 0xb4, 0x2a, 0x6d, 0x41, 0xf3, 0x93, 0xeb, 0x00, 0xc4, 0x36, 0x23, 0x93, 0x70, 0x29, 0xd4, 0xcc, 0x1d, 0x36, 0x74, 0x69, 0xf6, 0xea, 0x4e, 0xc1, 0x66, 0x58, 0x61, 0x9d, 0x29, 0x35, 0xde, 0x0a, 0x65, 0x5a, 0xda, 0xe4, 0xcb, 0xb6, 0x24, 0xf2, 0xff, 0xe3, 0xce, 0x41, 0xf0, 0x24, 0x26, 0x9d, 0x91, 0x49, 0xdb, 0xd8, 0x3c, 0xb1, 0xc9, 0x7a, 0xed, 0x41, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2556 = { .name = "ecdsa_brainpoolp512r1_sha512_2556", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2556_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2556_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2556_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 436 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2557 for ECDSA, tcId is 437 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2557_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2557_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2557_sig[] = { 0x98, 0x36, 0xee, 0x7a, 0xe0, 0x44, 0x7e, 0xc0, 0x7a, 0x6a, 0x21, 0x66, 0x33, 0xe0, 0xa9, 0x7d, 0xe8, 0x31, 0xfa, 0x04, 0xfc, 0xd7, 0x60, 0xab, 0xe3, 0x9e, 0x8f, 0x45, 0x77, 0x96, 0xfd, 0xfc, 0xe9, 0xc6, 0x9e, 0xd1, 0x3c, 0x82, 0x7d, 0xe0, 0xca, 0x6b, 0x60, 0xd8, 0x49, 0xed, 0x69, 0x76, 0xac, 0x09, 0x1b, 0x7d, 0x90, 0xce, 0x3e, 0x98, 0xd3, 0xc9, 0x14, 0x4a, 0xfe, 0x63, 0x8d, 0x42, 0x1c, 0x9d, 0x8e, 0x14, 0x2b, 0xae, 0xe8, 0x57, 0xd6, 0xad, 0xec, 0x8e, 0xff, 0x84, 0xea, 0x1d, 0x23, 0xb0, 0x5f, 0x54, 0x82, 0xcc, 0x29, 0x50, 0x45, 0x15, 0x86, 0xcf, 0x5d, 0xe0, 0xcb, 0xf9, 0xe3, 0xa7, 0x27, 0xa4, 0xa4, 0xe9, 0x3e, 0x15, 0xb6, 0xcc, 0x01, 0x25, 0xe5, 0xfc, 0xd1, 0x91, 0x06, 0x36, 0x89, 0x80, 0x64, 0xa6, 0x38, 0x13, 0xa0, 0xc7, 0x5f, 0xee, 0x28, 0x04, 0x1b, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2557 = { .name = "ecdsa_brainpoolp512r1_sha512_2557", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2557_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2557_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2557_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 437 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2558 for ECDSA, tcId is 438 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2558_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2558_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2558_sig[] = { 0x08, 0x77, 0xd7, 0xa3, 0xff, 0xac, 0xf4, 0xef, 0x36, 0xcb, 0xed, 0xfd, 0x44, 0xe4, 0xcc, 0x02, 0x37, 0xbd, 0xee, 0xde, 0x8c, 0xe0, 0xbd, 0xfb, 0x33, 0x0b, 0xb7, 0x3b, 0x31, 0x7b, 0x7d, 0x16, 0x1c, 0x45, 0xbd, 0x14, 0x96, 0xe1, 0x23, 0x3c, 0xed, 0x8f, 0x7d, 0xcf, 0xd0, 0x5e, 0x0e, 0x1c, 0xc6, 0x65, 0xfb, 0x1d, 0xc9, 0x2b, 0x54, 0xfc, 0xbe, 0x9b, 0x0e, 0x55, 0xd9, 0xba, 0x1b, 0xe4, 0x0f, 0x7a, 0xb8, 0x71, 0x74, 0x2e, 0xbf, 0x22, 0xe0, 0xb7, 0x67, 0x46, 0x14, 0xd7, 0x15, 0x69, 0xd5, 0x08, 0x4c, 0xcc, 0x0c, 0x98, 0xc2, 0xe4, 0x0d, 0x08, 0x8a, 0xe8, 0x8e, 0xab, 0x37, 0x82, 0x0a, 0x89, 0xa2, 0xdb, 0xe4, 0x9e, 0x1b, 0x67, 0xec, 0x55, 0xae, 0x1a, 0x34, 0xfe, 0x48, 0x22, 0xd6, 0x91, 0xbb, 0xf5, 0x49, 0x0f, 0xcc, 0x2c, 0x47, 0xe7, 0xc1, 0xba, 0x4d, 0xc5, 0x6e, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2558 = { .name = "ecdsa_brainpoolp512r1_sha512_2558", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2558_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2558_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2558_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 438 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2559 for ECDSA, tcId is 439 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2559_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2559_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2559_sig[] = { 0xa7, 0x32, 0x20, 0x46, 0xba, 0x74, 0x73, 0x71, 0x6d, 0x35, 0x74, 0x2d, 0x96, 0x1a, 0xc5, 0xf2, 0xfe, 0x2e, 0x1d, 0xd5, 0x74, 0xec, 0xe7, 0xbd, 0x15, 0xda, 0x8c, 0x66, 0xa2, 0x62, 0xb2, 0xe7, 0x9b, 0x0d, 0x1d, 0xf2, 0x76, 0x19, 0xfd, 0xeb, 0xbb, 0x41, 0xda, 0x1b, 0x27, 0xba, 0x7c, 0x9a, 0x03, 0x70, 0xef, 0x96, 0x2e, 0xe8, 0xa4, 0x51, 0x05, 0xf4, 0x41, 0x6d, 0x16, 0xeb, 0xf1, 0x3e, 0x84, 0x18, 0xe4, 0x45, 0xdb, 0x45, 0xcf, 0xbd, 0xc8, 0x45, 0x80, 0x55, 0x38, 0x6d, 0x65, 0xe9, 0xbc, 0x07, 0xb4, 0x97, 0xb8, 0xd4, 0xbe, 0xf5, 0xf5, 0x15, 0xe7, 0x94, 0x70, 0x50, 0xd9, 0xab, 0x97, 0x99, 0xfb, 0x52, 0x0f, 0x32, 0x2b, 0xf0, 0x0f, 0xae, 0x4f, 0xae, 0x03, 0xc1, 0x26, 0x95, 0x10, 0xeb, 0xb3, 0xe1, 0xdc, 0x8c, 0xca, 0x59, 0x29, 0x8e, 0x26, 0x94, 0x58, 0x62, 0xe9, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2559 = { .name = "ecdsa_brainpoolp512r1_sha512_2559", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2559_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2559_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2559_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 439 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2560 for ECDSA, tcId is 440 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2560_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2560_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2560_sig[] = { 0x1b, 0xb4, 0x60, 0xac, 0x42, 0xbb, 0x36, 0x40, 0xbf, 0xc7, 0x39, 0xa0, 0x18, 0x6e, 0xf3, 0x36, 0x2e, 0xd2, 0x7b, 0x25, 0x4f, 0x54, 0x8c, 0x07, 0x39, 0x35, 0xca, 0xa2, 0x11, 0xa1, 0xaa, 0x30, 0x2e, 0x79, 0xa9, 0x46, 0x6d, 0x7f, 0xec, 0xe7, 0x74, 0xd2, 0x50, 0xc1, 0xae, 0xae, 0xf9, 0x64, 0x1b, 0x9a, 0x2f, 0x25, 0xe6, 0x1c, 0xa3, 0x7f, 0xad, 0xa8, 0xee, 0x07, 0xf4, 0x9f, 0xd5, 0x1e, 0x3d, 0x91, 0x8a, 0x07, 0xa3, 0x6f, 0x57, 0x8d, 0xa8, 0xb0, 0xd4, 0x2d, 0x30, 0xba, 0xd6, 0x0e, 0xcf, 0xbd, 0x60, 0x3a, 0x45, 0xd0, 0xc1, 0xa7, 0x1b, 0xb0, 0x14, 0x47, 0xea, 0xd8, 0x1a, 0x53, 0x13, 0x26, 0x5c, 0xc9, 0xb5, 0x86, 0x0a, 0xba, 0x03, 0xf1, 0xc9, 0x3a, 0x9c, 0xb9, 0xf3, 0xbd, 0xd9, 0xa8, 0x5f, 0x27, 0x0d, 0xd3, 0x69, 0x14, 0x65, 0x94, 0x1d, 0x2b, 0x80, 0x98, 0xf9, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2560 = { .name = "ecdsa_brainpoolp512r1_sha512_2560", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2560_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2560_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2560_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 440 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2561 for ECDSA, tcId is 441 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2561_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2561_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2561_sig[] = { 0x5b, 0x44, 0xe4, 0xfd, 0x49, 0x96, 0xf2, 0x7a, 0x7d, 0xcf, 0x30, 0x6b, 0xc9, 0xff, 0xf4, 0xa9, 0xc3, 0x6e, 0x3f, 0xe0, 0x90, 0x26, 0xfa, 0x72, 0x12, 0x2b, 0x64, 0xa4, 0xff, 0x65, 0xf8, 0x61, 0xa5, 0x95, 0x4c, 0xe8, 0xa4, 0x1f, 0x69, 0xa3, 0x91, 0x5c, 0x84, 0xa6, 0x3d, 0xb0, 0xc5, 0x7c, 0x6d, 0xfe, 0xcb, 0xac, 0x4f, 0xde, 0x99, 0xea, 0x5f, 0xcb, 0x10, 0x4d, 0x69, 0x67, 0xd6, 0x13, 0x08, 0x8e, 0x7b, 0x84, 0x6d, 0x6c, 0x5e, 0x09, 0x3a, 0x7b, 0xa1, 0x74, 0x27, 0xbc, 0xba, 0x0e, 0x92, 0x5a, 0xcb, 0x82, 0x6e, 0x4e, 0x9b, 0x97, 0x2b, 0x2d, 0x8a, 0x6d, 0x23, 0x2f, 0x63, 0x5c, 0xbe, 0x96, 0xbf, 0x6f, 0x16, 0x31, 0x74, 0xdb, 0x64, 0x6c, 0x2f, 0x66, 0x23, 0xc8, 0x9d, 0xc6, 0xe4, 0xa8, 0x28, 0xd4, 0xe2, 0xe2, 0xfc, 0xf3, 0xc4, 0x27, 0xc4, 0x2b, 0xdb, 0x72, 0xef, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2561 = { .name = "ecdsa_brainpoolp512r1_sha512_2561", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2561_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2561_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2561_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 441 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2562 for ECDSA, tcId is 442 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2562_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2562_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2562_sig[] = { 0x73, 0x96, 0x7e, 0xb2, 0x4e, 0x20, 0xf0, 0xd4, 0xba, 0x58, 0x89, 0x5a, 0x49, 0xf8, 0x12, 0xc2, 0x8d, 0x24, 0xe5, 0xf0, 0xfd, 0x5e, 0x35, 0xf1, 0x07, 0x58, 0x10, 0xa4, 0x78, 0xd9, 0x37, 0x17, 0xc8, 0xaa, 0x26, 0x05, 0xac, 0x84, 0x22, 0x6d, 0xd3, 0xd5, 0x3c, 0x39, 0xc0, 0xd8, 0xc5, 0x2e, 0xea, 0xc8, 0xe9, 0x98, 0xba, 0xd9, 0x31, 0xf5, 0xef, 0xdd, 0x66, 0x4b, 0x57, 0xce, 0xe5, 0x55, 0x05, 0xb0, 0x03, 0x1f, 0xb1, 0x0d, 0xfc, 0x7c, 0x36, 0xed, 0x89, 0xaa, 0xfe, 0x66, 0x44, 0x48, 0x35, 0xcd, 0x9c, 0x53, 0xe1, 0xc8, 0x50, 0xaf, 0x5f, 0x05, 0x5e, 0x2b, 0x26, 0x3d, 0x3e, 0x73, 0x7a, 0x4e, 0x6a, 0x83, 0xca, 0xdb, 0x9d, 0x76, 0xdd, 0xe5, 0x35, 0xe8, 0x09, 0xf4, 0x47, 0x45, 0x53, 0x24, 0xd4, 0xae, 0xe6, 0xf0, 0x36, 0x48, 0x5d, 0x41, 0x67, 0xa6, 0xe6, 0x0e, 0xed, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2562 = { .name = "ecdsa_brainpoolp512r1_sha512_2562", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2562_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2562_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2562_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 442 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2563 for ECDSA, tcId is 443 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2563_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2563_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2563_sig[] = { 0x63, 0x3f, 0x45, 0x69, 0x14, 0x70, 0x79, 0x23, 0xf4, 0xb0, 0x08, 0x6e, 0xa3, 0x18, 0xb8, 0xce, 0xbd, 0xba, 0x5f, 0xa1, 0x43, 0x52, 0xe3, 0xd9, 0xc6, 0x06, 0xbd, 0x8d, 0xab, 0xf0, 0x32, 0x83, 0x5b, 0xbd, 0xa7, 0x6a, 0xa5, 0x14, 0xc1, 0xa6, 0xdd, 0xe1, 0xb3, 0x21, 0x80, 0x3d, 0x27, 0xf2, 0x53, 0xdf, 0xe1, 0xca, 0xe5, 0x32, 0xa5, 0xbd, 0xcd, 0x9e, 0x93, 0xe5, 0xf9, 0x45, 0x96, 0xd1, 0x9b, 0x9c, 0x8b, 0xa0, 0x74, 0xde, 0xeb, 0x03, 0x74, 0x5d, 0x8a, 0xe3, 0x7c, 0x73, 0xe0, 0x22, 0x73, 0x07, 0x1a, 0x35, 0xdc, 0xfe, 0x0f, 0x65, 0xe4, 0x63, 0xe2, 0x08, 0xbd, 0x11, 0xc6, 0xcc, 0xb3, 0xad, 0xed, 0x6b, 0xe7, 0x31, 0x3d, 0x7a, 0x65, 0x6d, 0x5e, 0x87, 0x1b, 0x8e, 0xa4, 0xd1, 0xd5, 0x1b, 0x77, 0x84, 0x67, 0xb6, 0xdd, 0xe6, 0x57, 0x8e, 0x10, 0x5d, 0x56, 0xb6, 0x17, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2563 = { .name = "ecdsa_brainpoolp512r1_sha512_2563", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2563_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2563_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2563_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 443 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2564 for ECDSA, tcId is 444 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2564_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2564_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2564_sig[] = { 0x40, 0x89, 0x1a, 0x57, 0xb9, 0xb8, 0xf0, 0xbc, 0x6a, 0x87, 0x61, 0xd2, 0x42, 0x4c, 0xb6, 0x0b, 0x3f, 0x39, 0xde, 0x4e, 0x60, 0x1b, 0xc8, 0xda, 0xf1, 0x5a, 0xb3, 0x21, 0x6c, 0x2c, 0x56, 0xeb, 0xcc, 0x76, 0x0d, 0xe3, 0x09, 0x07, 0xe8, 0x92, 0x94, 0xaf, 0x58, 0x18, 0xf5, 0xa7, 0x2a, 0x2d, 0xf4, 0x09, 0xbb, 0x69, 0x18, 0xf3, 0xd6, 0xe5, 0x06, 0xce, 0x53, 0x14, 0x60, 0x2e, 0x50, 0xc1, 0x68, 0x62, 0x07, 0x56, 0xee, 0x2a, 0x60, 0x0a, 0x14, 0x67, 0xf2, 0x96, 0x08, 0xea, 0xd0, 0x19, 0xd0, 0xd5, 0x16, 0xb7, 0x9c, 0x8a, 0x75, 0x6f, 0xc5, 0x37, 0xa9, 0xfc, 0x73, 0x46, 0x16, 0xbf, 0xec, 0x13, 0x38, 0x39, 0xbe, 0xb4, 0x77, 0x8f, 0xdf, 0xfd, 0x3f, 0xb4, 0x22, 0x6e, 0x51, 0xce, 0x4b, 0xc0, 0x96, 0x27, 0x33, 0x1c, 0x8d, 0xae, 0xf1, 0xf7, 0x11, 0x64, 0x8a, 0x30, 0xfb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2564 = { .name = "ecdsa_brainpoolp512r1_sha512_2564", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2564_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2564_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2564_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 444 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2565 for ECDSA, tcId is 445 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2565_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2565_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2565_sig[] = { 0x4d, 0xeb, 0xd0, 0x68, 0x30, 0x28, 0xf2, 0x33, 0x5b, 0x23, 0x3c, 0x49, 0x53, 0x1b, 0x60, 0x96, 0xe7, 0xc5, 0x52, 0x1f, 0x75, 0xfc, 0xb4, 0xb5, 0xf5, 0xe3, 0x22, 0x41, 0xbe, 0x08, 0x1f, 0x3c, 0x2b, 0x85, 0x49, 0xb5, 0x7f, 0x31, 0x21, 0x7b, 0xe9, 0xb7, 0xaa, 0x1a, 0x46, 0x87, 0xa7, 0x2e, 0xc9, 0xa5, 0xd3, 0x76, 0x30, 0x72, 0x52, 0xca, 0x7c, 0x1b, 0x9b, 0x61, 0x0d, 0x25, 0xb4, 0xd0, 0x04, 0xd1, 0x30, 0x3f, 0x6b, 0x91, 0xac, 0x01, 0xc9, 0x14, 0x11, 0xa9, 0x83, 0xf3, 0xab, 0xb0, 0x4f, 0x36, 0x98, 0xb1, 0x69, 0xf8, 0xa3, 0x9f, 0xfd, 0x19, 0x31, 0xc0, 0x61, 0xe6, 0x6f, 0x43, 0x48, 0x2f, 0xec, 0x79, 0x5d, 0xfd, 0x0d, 0x0a, 0xbe, 0x87, 0x9f, 0xa8, 0xdb, 0x88, 0x5b, 0x61, 0x8a, 0xca, 0x2a, 0xe0, 0x13, 0xe6, 0x93, 0xf1, 0x54, 0xbb, 0x9d, 0x0a, 0x77, 0xad, 0xef, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2565 = { .name = "ecdsa_brainpoolp512r1_sha512_2565", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2565_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2565_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2565_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 445 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2566 for ECDSA, tcId is 446 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2566_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2566_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2566_sig[] = { 0x34, 0xac, 0x9a, 0x4e, 0x6f, 0xb1, 0x71, 0xf4, 0x24, 0xbb, 0x59, 0x2d, 0x1b, 0x84, 0x5b, 0xee, 0x55, 0x17, 0x3b, 0x42, 0x42, 0x2f, 0xd5, 0xb5, 0x13, 0x2f, 0x85, 0x9a, 0x27, 0xdd, 0xcd, 0xa5, 0x53, 0x2f, 0xd3, 0x81, 0x16, 0xe6, 0x27, 0x7d, 0x93, 0x75, 0x63, 0x9f, 0xb2, 0x5b, 0x0f, 0x66, 0xf1, 0xe8, 0xa1, 0xac, 0xca, 0xa7, 0x80, 0x0c, 0x91, 0xc8, 0x7e, 0x74, 0x39, 0x98, 0x7d, 0x58, 0x75, 0x89, 0x2b, 0xe8, 0xe1, 0x1d, 0x9b, 0xf3, 0xe8, 0x1e, 0x83, 0x70, 0xaf, 0x02, 0xd8, 0x8b, 0xda, 0x83, 0xce, 0x0a, 0xe9, 0xc2, 0x1a, 0xeb, 0x48, 0x7e, 0xef, 0x4c, 0x4c, 0x54, 0x58, 0xe5, 0x1a, 0x99, 0xe4, 0xd7, 0x88, 0xdb, 0x84, 0x06, 0x4c, 0xfb, 0xc4, 0x82, 0x40, 0xf5, 0x66, 0x12, 0x07, 0x87, 0x69, 0xfd, 0xe0, 0xe3, 0xb7, 0x06, 0x12, 0x5f, 0x46, 0xe2, 0xf2, 0x6a, 0x35, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2566 = { .name = "ecdsa_brainpoolp512r1_sha512_2566", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2566_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2566_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2566_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 446 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2567 for ECDSA, tcId is 447 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2567_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2567_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2567_sig[] = { 0x36, 0xb6, 0x8b, 0x5c, 0xad, 0x74, 0x28, 0x80, 0x3f, 0x60, 0x66, 0x15, 0x50, 0x58, 0x57, 0xaa, 0x7c, 0xfb, 0x68, 0x3d, 0x1e, 0x9c, 0xe8, 0x56, 0xd4, 0x99, 0xfa, 0x6e, 0x13, 0xee, 0x6a, 0x4f, 0x23, 0x5e, 0xdd, 0x00, 0x40, 0x34, 0x29, 0xff, 0x14, 0xbc, 0x57, 0x8d, 0xd1, 0x21, 0xfd, 0x25, 0x60, 0x04, 0x79, 0x4a, 0xdd, 0x4f, 0xb8, 0x19, 0x5b, 0x43, 0xa9, 0xe1, 0xee, 0xfb, 0xd3, 0xa1, 0x45, 0xc6, 0xaf, 0xfd, 0x60, 0x7f, 0x54, 0x24, 0xa0, 0xe4, 0x9c, 0x0f, 0x1a, 0x72, 0xeb, 0xf7, 0x94, 0x8a, 0x80, 0xb4, 0x82, 0xef, 0x17, 0x1e, 0xe1, 0x61, 0xdc, 0x36, 0x51, 0x56, 0x79, 0xe3, 0x2f, 0xa9, 0xed, 0xaa, 0x92, 0xc5, 0x74, 0x03, 0xe6, 0xe1, 0x02, 0x64, 0x3b, 0x77, 0x39, 0x1a, 0xed, 0xee, 0xc2, 0xb0, 0x54, 0x96, 0x43, 0x15, 0xde, 0xdd, 0x4c, 0xc3, 0x69, 0xf2, 0x3f, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2567 = { .name = "ecdsa_brainpoolp512r1_sha512_2567", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2567_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2567_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2567_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2568 for ECDSA, tcId is 448 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2568_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2568_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2568_sig[] = { 0x5e, 0x1b, 0xf4, 0xb1, 0xde, 0xba, 0xcb, 0xa4, 0x72, 0x5f, 0xc3, 0xcc, 0x82, 0x14, 0x53, 0x4d, 0xe5, 0xf6, 0xe5, 0x92, 0x64, 0x5b, 0x60, 0xf4, 0xc4, 0xa1, 0xdd, 0x22, 0x60, 0xd3, 0x35, 0x7d, 0x8f, 0xb2, 0xad, 0xa7, 0xf7, 0x2a, 0x48, 0x34, 0x6a, 0x7e, 0x34, 0x39, 0x5a, 0x6a, 0x18, 0x1c, 0x69, 0x40, 0x48, 0xae, 0x82, 0x58, 0xf1, 0xcb, 0x3b, 0x6f, 0x63, 0xf4, 0x93, 0x28, 0x29, 0xeb, 0x5e, 0x3d, 0xf0, 0xbe, 0xee, 0x22, 0xfa, 0x96, 0xd4, 0x65, 0x58, 0x33, 0x86, 0x2f, 0x73, 0xb5, 0x2f, 0x12, 0xe4, 0xc4, 0xc7, 0xd8, 0x18, 0xb2, 0x18, 0x46, 0xef, 0xfb, 0x39, 0xd6, 0xf0, 0x9f, 0xc3, 0x5b, 0x2d, 0x0f, 0xac, 0x8f, 0x5c, 0xb3, 0xc4, 0x05, 0x1f, 0xf4, 0x5f, 0x53, 0x05, 0xe9, 0x3b, 0x24, 0x13, 0x8a, 0x0f, 0x95, 0xfa, 0xd2, 0xfe, 0xf1, 0xc1, 0x0c, 0xd1, 0xdc, 0xf2, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2568 = { .name = "ecdsa_brainpoolp512r1_sha512_2568", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2568_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2568_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2568_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 448 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2569 for ECDSA, tcId is 449 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2569_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2569_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2569_sig[] = { 0x80, 0x40, 0x0b, 0xee, 0x9a, 0x34, 0x2f, 0x3a, 0xfb, 0xa2, 0xdb, 0xb0, 0x29, 0x23, 0x5a, 0xd5, 0x11, 0xae, 0xdb, 0x30, 0x96, 0x0c, 0x53, 0xba, 0xd6, 0x70, 0x46, 0x0b, 0x38, 0x30, 0x4d, 0x7c, 0xbd, 0x70, 0x6f, 0xf9, 0x8f, 0x12, 0x96, 0xcb, 0x7e, 0x74, 0x6f, 0x8c, 0xa3, 0xa4, 0x39, 0x37, 0xa5, 0xcd, 0x03, 0x5a, 0x00, 0xc6, 0x38, 0x68, 0x00, 0x1f, 0xa4, 0x29, 0xb4, 0x91, 0xbd, 0x8e, 0x5c, 0x66, 0x94, 0x1e, 0xdc, 0xda, 0x56, 0x22, 0x8e, 0xdc, 0xe7, 0x73, 0x73, 0xa7, 0xb9, 0xdc, 0xdd, 0x46, 0x4e, 0xd1, 0x80, 0x75, 0xe7, 0xda, 0x14, 0x27, 0x91, 0x17, 0x78, 0x78, 0x4f, 0x80, 0x17, 0xbe, 0xf6, 0xf1, 0x87, 0x51, 0xcb, 0xa1, 0x23, 0x55, 0xbd, 0x90, 0xba, 0x63, 0xb8, 0xd3, 0x1e, 0xa3, 0x73, 0x38, 0x7f, 0x36, 0x49, 0x4e, 0x36, 0x42, 0x00, 0x80, 0x82, 0xd3, 0x49, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2569 = { .name = "ecdsa_brainpoolp512r1_sha512_2569", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2569_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2569_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2569_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 449 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2570 for ECDSA, tcId is 450 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2570_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2570_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2570_sig[] = { 0x47, 0x68, 0xdf, 0xdd, 0xae, 0x4c, 0xb8, 0x35, 0x66, 0xf2, 0xc3, 0xa9, 0x34, 0x00, 0x91, 0xc2, 0x60, 0x8e, 0x0e, 0x27, 0x0a, 0x4b, 0x3f, 0x48, 0xde, 0xd7, 0xc7, 0x5b, 0x4a, 0xa1, 0x5a, 0xb6, 0x5c, 0xb0, 0x50, 0xcf, 0xdb, 0x31, 0x2c, 0x32, 0xbf, 0xaa, 0x77, 0x59, 0x86, 0x9c, 0x9c, 0x0c, 0xe2, 0x7f, 0x6c, 0xdf, 0x1f, 0xb5, 0x84, 0x37, 0x9f, 0x63, 0x98, 0xc9, 0x5e, 0xbf, 0x86, 0x44, 0x7e, 0x1a, 0x3a, 0xac, 0xd8, 0xd6, 0x03, 0xfa, 0xec, 0xf8, 0x79, 0x02, 0x14, 0x7b, 0x67, 0x43, 0x5d, 0x99, 0x2e, 0xe9, 0xe5, 0x43, 0xf9, 0x34, 0xdd, 0x4c, 0x40, 0xd8, 0xa1, 0x2c, 0xd1, 0xe1, 0x03, 0x66, 0xd0, 0x74, 0x3d, 0x78, 0x62, 0xb9, 0xc8, 0xba, 0x8b, 0x68, 0x16, 0x63, 0x9c, 0x35, 0x09, 0xb5, 0xca, 0xa2, 0xa9, 0x15, 0x33, 0xc0, 0xaf, 0x50, 0xec, 0xe2, 0xfd, 0x2c, 0x53, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2570 = { .name = "ecdsa_brainpoolp512r1_sha512_2570", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2570_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2570_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2570_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 450 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2571 for ECDSA, tcId is 451 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2571_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2571_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2571_sig[] = { 0x27, 0xd9, 0xc6, 0xc4, 0xdb, 0x31, 0xaf, 0xf2, 0x88, 0xfa, 0x4e, 0x40, 0x15, 0x9d, 0x6e, 0xe1, 0x8c, 0x98, 0x13, 0x94, 0x27, 0x48, 0x47, 0x96, 0xf1, 0xf8, 0x74, 0x5c, 0x98, 0x27, 0xdf, 0xc0, 0x8d, 0x39, 0x3a, 0xbe, 0x14, 0x4d, 0xf6, 0xb7, 0xc1, 0x2d, 0x48, 0x97, 0x1f, 0xdd, 0x28, 0x4b, 0x81, 0xe6, 0xe1, 0x08, 0x60, 0x35, 0x9e, 0xf7, 0x14, 0x73, 0xb9, 0xe6, 0xbb, 0x84, 0xcb, 0x1e, 0x07, 0xa0, 0x42, 0x0c, 0x8a, 0x9b, 0x26, 0x91, 0x1b, 0x63, 0x62, 0x65, 0x40, 0xa8, 0x5f, 0x60, 0xaa, 0x27, 0x7a, 0xfd, 0xef, 0x99, 0x90, 0xfc, 0x8d, 0xc1, 0xd3, 0xf1, 0xf2, 0xc5, 0xa9, 0x27, 0xe1, 0xe4, 0xa2, 0x9d, 0x81, 0xa7, 0x01, 0xb4, 0x8b, 0x36, 0x6f, 0x00, 0x0f, 0x96, 0x26, 0x14, 0x89, 0x9c, 0xbf, 0x19, 0x38, 0x26, 0xca, 0x8d, 0xe4, 0xa4, 0x25, 0x53, 0x8d, 0xe5, 0xac, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2571 = { .name = "ecdsa_brainpoolp512r1_sha512_2571", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2571_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2571_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2571_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 451 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2572 for ECDSA, tcId is 452 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2572_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2572_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2572_sig[] = { 0x49, 0x54, 0x2e, 0xec, 0x3b, 0x96, 0xc4, 0x76, 0xb5, 0x9b, 0x2b, 0x94, 0xd5, 0xfc, 0x7e, 0xe0, 0x8f, 0xd2, 0xa1, 0xb1, 0xe7, 0x32, 0xe6, 0x60, 0x90, 0x98, 0xab, 0x2a, 0x7f, 0x25, 0x04, 0x52, 0xfb, 0xc1, 0x05, 0x7a, 0x6d, 0x3f, 0xec, 0xcb, 0xca, 0xeb, 0x00, 0x46, 0x8b, 0x26, 0x22, 0x2e, 0xb4, 0x80, 0x65, 0xfc, 0xaa, 0xd7, 0x64, 0x76, 0x81, 0x82, 0x38, 0x60, 0x45, 0x1e, 0x1e, 0x91, 0x37, 0xdb, 0x33, 0x6d, 0xee, 0x1e, 0x45, 0xd9, 0xac, 0xe5, 0x50, 0x05, 0x35, 0x11, 0xc9, 0xc3, 0x75, 0x56, 0x57, 0xe7, 0x8e, 0xca, 0x10, 0x8d, 0x3d, 0xfd, 0x1e, 0x68, 0xfe, 0x83, 0xda, 0x62, 0x6b, 0x8d, 0xac, 0xbb, 0x19, 0xf0, 0xee, 0x23, 0x2b, 0x0f, 0x8b, 0xfe, 0x8d, 0xdb, 0xe7, 0xd5, 0xe9, 0x8b, 0x7a, 0x2e, 0xcc, 0xd0, 0x3f, 0x37, 0x5d, 0x16, 0x4c, 0xe8, 0x28, 0x63, 0x18, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2572 = { .name = "ecdsa_brainpoolp512r1_sha512_2572", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2572_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2572_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2572_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 452 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2573 for ECDSA, tcId is 453 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2573_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2573_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2573_sig[] = { 0x4f, 0x90, 0xce, 0xb7, 0x6b, 0xc7, 0x2f, 0x0c, 0xca, 0x10, 0x70, 0x5d, 0x3b, 0xad, 0xab, 0x6c, 0xaa, 0x60, 0x19, 0xef, 0x6b, 0xfe, 0x7d, 0xe1, 0xb7, 0x59, 0x51, 0xd5, 0x17, 0xd2, 0xb1, 0x61, 0x68, 0x51, 0x5b, 0xf3, 0x05, 0xf0, 0x00, 0x62, 0x92, 0xe4, 0x90, 0x05, 0x98, 0x25, 0x61, 0x41, 0xe4, 0x5c, 0x19, 0x07, 0x7f, 0xa4, 0x47, 0xdd, 0x5f, 0x32, 0xda, 0xa6, 0x2c, 0x25, 0x08, 0x15, 0x67, 0x12, 0xa7, 0x84, 0x10, 0x28, 0x02, 0x82, 0x1e, 0x97, 0x08, 0xe3, 0x49, 0xd0, 0x3a, 0x88, 0x29, 0x7b, 0x37, 0x4e, 0xf8, 0x1a, 0x4e, 0xdc, 0x35, 0x01, 0x65, 0x24, 0xcd, 0x2a, 0x22, 0xaf, 0xea, 0x7b, 0x8b, 0x31, 0x71, 0xde, 0x60, 0xac, 0x1b, 0x38, 0x82, 0x53, 0x36, 0x50, 0x58, 0x6d, 0xca, 0xd3, 0x38, 0xea, 0x48, 0x23, 0x14, 0x86, 0xe1, 0x0e, 0x31, 0x20, 0xce, 0x3d, 0x2a, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2573 = { .name = "ecdsa_brainpoolp512r1_sha512_2573", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2573_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2573_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2573_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 453 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2574 for ECDSA, tcId is 454 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2574_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2574_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2574_sig[] = { 0x45, 0x9e, 0x3e, 0x6e, 0x67, 0x1a, 0x6c, 0x34, 0x2d, 0x58, 0x5d, 0xb6, 0x89, 0x04, 0x3d, 0x32, 0xa4, 0x94, 0xce, 0x00, 0x39, 0xee, 0x71, 0xac, 0x67, 0xed, 0x6e, 0xc0, 0x86, 0x19, 0x08, 0xeb, 0xae, 0x6b, 0x2d, 0x6e, 0x4a, 0x67, 0xca, 0xa7, 0xa8, 0xf0, 0x57, 0x6a, 0x49, 0x88, 0x9a, 0x4a, 0x63, 0xd4, 0xb0, 0xb8, 0xaa, 0x88, 0x45, 0xc9, 0xcf, 0x78, 0x5b, 0x49, 0x41, 0x2a, 0x70, 0x71, 0xa5, 0xed, 0xd7, 0xab, 0xfc, 0xe9, 0xd4, 0x41, 0x3b, 0x22, 0x28, 0x93, 0x97, 0x78, 0x5b, 0x3d, 0x84, 0xb2, 0xc0, 0xd3, 0x71, 0x94, 0x09, 0x25, 0x5b, 0xb7, 0x12, 0x82, 0x68, 0xe0, 0xbc, 0xd3, 0x7d, 0x92, 0x8b, 0xea, 0x54, 0x86, 0xbf, 0x56, 0xff, 0xe2, 0x59, 0xc7, 0xec, 0x9f, 0x50, 0xb8, 0x78, 0xe0, 0x15, 0x5d, 0x73, 0xe3, 0xbd, 0xe5, 0xcf, 0xfe, 0x55, 0xe6, 0x12, 0xf8, 0xd7, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2574 = { .name = "ecdsa_brainpoolp512r1_sha512_2574", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2574_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2574_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2574_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 454 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2575 for ECDSA, tcId is 455 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2575_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2575_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2575_sig[] = { 0x1b, 0x2f, 0x7e, 0xa4, 0x09, 0x60, 0xe3, 0x7e, 0x28, 0xb5, 0x56, 0xb7, 0xe4, 0x46, 0xc4, 0x64, 0x1e, 0x2f, 0x3d, 0x8a, 0x82, 0x9d, 0xcc, 0x4a, 0x34, 0x95, 0x53, 0xe4, 0x2c, 0xf9, 0xce, 0x62, 0x72, 0xdc, 0x9c, 0xdc, 0xda, 0x01, 0x3e, 0x39, 0x81, 0xcb, 0x73, 0xb1, 0x0d, 0x46, 0x32, 0x1c, 0x80, 0x50, 0x1d, 0x6a, 0x34, 0xad, 0x7f, 0xd9, 0x59, 0xa0, 0xc7, 0x8f, 0x89, 0x1f, 0x33, 0xf0, 0x7f, 0x19, 0x5b, 0x76, 0x96, 0xed, 0xfc, 0x76, 0x87, 0xff, 0x01, 0x26, 0xea, 0xba, 0x13, 0xda, 0xd1, 0xe1, 0x95, 0x63, 0xe8, 0xd3, 0x95, 0xaf, 0x32, 0xdb, 0x3d, 0x6a, 0x7b, 0x4e, 0x82, 0xf2, 0x80, 0x04, 0x50, 0x1d, 0x92, 0xb7, 0x53, 0x7d, 0xa3, 0x97, 0x84, 0x5b, 0x7a, 0xa3, 0x98, 0xa1, 0x10, 0x51, 0x05, 0x2e, 0x52, 0x26, 0x4b, 0xd8, 0xcb, 0xcb, 0xa9, 0x98, 0x7e, 0xc6, 0x74, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2575 = { .name = "ecdsa_brainpoolp512r1_sha512_2575", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2575_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2575_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2575_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 455 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2576 for ECDSA, tcId is 456 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2576_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2576_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2576_sig[] = { 0x1b, 0x5c, 0x1d, 0x2b, 0x2b, 0x06, 0x59, 0x1a, 0x1f, 0xa5, 0x16, 0xcf, 0xfa, 0x9c, 0x8a, 0x57, 0xcf, 0x1f, 0xff, 0xc2, 0x2c, 0xec, 0xb7, 0x24, 0x92, 0x81, 0x67, 0x0b, 0xc2, 0x38, 0x83, 0xa6, 0x85, 0x53, 0xe0, 0xca, 0xf1, 0xed, 0xd9, 0xf1, 0x70, 0x3a, 0x25, 0xb7, 0x4e, 0x00, 0x00, 0xa3, 0x7e, 0x32, 0xe6, 0xcc, 0x35, 0x76, 0x93, 0x9f, 0x45, 0x8c, 0x3d, 0xd5, 0xc4, 0xdb, 0xcc, 0x9c, 0x4b, 0x23, 0xd7, 0xed, 0x7f, 0x8a, 0x6b, 0x7b, 0xa7, 0xd2, 0x2a, 0xef, 0xa8, 0xfd, 0xe0, 0x30, 0xec, 0xb3, 0xf2, 0xfe, 0xd4, 0xa5, 0xf2, 0x6f, 0x12, 0xd5, 0x9a, 0x29, 0xd6, 0x3c, 0xdd, 0x0e, 0xc0, 0x3f, 0xae, 0x55, 0x7d, 0x14, 0x1c, 0x7b, 0x0e, 0x87, 0x12, 0xc3, 0x06, 0xb0, 0xee, 0xbb, 0xd0, 0xca, 0xb2, 0x76, 0x96, 0x01, 0x20, 0x62, 0x62, 0x2b, 0xb1, 0x80, 0x04, 0x30, 0x34, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2576 = { .name = "ecdsa_brainpoolp512r1_sha512_2576", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2576_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2576_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2576_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 456 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2577 for ECDSA, tcId is 457 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2577_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2577_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2577_sig[] = { 0xa9, 0x52, 0x84, 0x7a, 0xcf, 0x21, 0x3c, 0x86, 0xe2, 0x31, 0x31, 0x6d, 0x8f, 0x91, 0x30, 0xf7, 0xcb, 0xdf, 0x7f, 0x39, 0x52, 0x30, 0x7a, 0x57, 0x70, 0x76, 0x34, 0x2d, 0x13, 0x93, 0x9b, 0x4a, 0xb5, 0xa1, 0x31, 0x3b, 0x34, 0xab, 0xb8, 0x92, 0x04, 0xd3, 0xfd, 0x1f, 0x87, 0x38, 0x85, 0xff, 0xfa, 0x68, 0x3c, 0x5a, 0x49, 0x3e, 0x54, 0x61, 0xc7, 0xf1, 0x40, 0x0a, 0xf8, 0x6a, 0xe7, 0xfe, 0x9a, 0x65, 0xa8, 0xa4, 0x15, 0x0d, 0xe5, 0x93, 0xb2, 0x96, 0x42, 0xb9, 0x88, 0xb2, 0xec, 0x2e, 0x23, 0xe1, 0x5e, 0x15, 0x6e, 0xcf, 0x0a, 0xf5, 0xfd, 0xe2, 0xfb, 0xd7, 0x32, 0x08, 0xf6, 0x9f, 0x25, 0x06, 0xd1, 0x41, 0xe0, 0xb4, 0x7c, 0x0e, 0x1f, 0x2f, 0xa0, 0x9e, 0xf2, 0x6b, 0x38, 0x9a, 0x6b, 0xd2, 0xb0, 0x23, 0x09, 0x30, 0xa1, 0x6f, 0xd1, 0x19, 0x76, 0x7e, 0x38, 0x27, 0x24, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2577 = { .name = "ecdsa_brainpoolp512r1_sha512_2577", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2577_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2577_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2577_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 457 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2578 for ECDSA, tcId is 458 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2578_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2578_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2578_sig[] = { 0x51, 0xbf, 0xb8, 0x0a, 0xae, 0x30, 0x26, 0x2a, 0x67, 0xbf, 0x07, 0x71, 0xa6, 0xb8, 0xd1, 0x95, 0xe5, 0x9a, 0xa0, 0x4e, 0x87, 0xbd, 0x06, 0x0f, 0xe5, 0xa9, 0xbd, 0x56, 0xd3, 0x53, 0x85, 0xa5, 0xfc, 0x3d, 0xa5, 0xdf, 0xc3, 0xae, 0x8c, 0x67, 0xdb, 0xd4, 0x08, 0x18, 0x44, 0x82, 0x85, 0x5e, 0x35, 0x63, 0xde, 0xde, 0xe7, 0x2a, 0x21, 0xb6, 0x0f, 0xaf, 0xd7, 0x38, 0x19, 0xaa, 0x83, 0x7c, 0x80, 0x7f, 0x0d, 0x69, 0x38, 0x54, 0x67, 0xad, 0x6c, 0xd8, 0xa4, 0x4d, 0x48, 0x2c, 0xa3, 0xb6, 0xe1, 0x8f, 0x7b, 0x35, 0x2e, 0xf1, 0x9a, 0x2b, 0xc9, 0x80, 0x50, 0x0b, 0x6d, 0x59, 0x04, 0x5f, 0x0d, 0x6f, 0x7a, 0xb7, 0xe4, 0x14, 0xc5, 0x0d, 0x2b, 0x68, 0xd7, 0xf6, 0xe6, 0xc0, 0x1d, 0x3e, 0x83, 0x53, 0xcd, 0xfd, 0x47, 0x5f, 0x24, 0x9b, 0x31, 0x84, 0x2f, 0xe5, 0x99, 0x55, 0xf4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2578 = { .name = "ecdsa_brainpoolp512r1_sha512_2578", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2578_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2578_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2578_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 458 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2579 for ECDSA, tcId is 459 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2579_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2579_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2579_sig[] = { 0x4e, 0x87, 0x11, 0xb0, 0x0d, 0xe3, 0x55, 0xf1, 0x4c, 0x8e, 0xb9, 0x19, 0x59, 0xc1, 0x3c, 0x77, 0xf9, 0x15, 0x57, 0x54, 0x76, 0x5f, 0x10, 0xf2, 0xaa, 0xa8, 0xfd, 0xad, 0x6a, 0x14, 0xc6, 0xa4, 0xe6, 0x2c, 0x5e, 0xd4, 0x8a, 0x9d, 0x8c, 0xa4, 0x03, 0xc9, 0x02, 0xdb, 0x0c, 0x2c, 0x07, 0x35, 0x42, 0x6b, 0x33, 0xe6, 0x78, 0x28, 0xac, 0x32, 0xae, 0x19, 0xb8, 0x4e, 0x65, 0x98, 0x68, 0x19, 0x7d, 0x10, 0x4a, 0xe5, 0xe5, 0xd0, 0xda, 0x26, 0xcb, 0x42, 0x7d, 0x79, 0x51, 0xd4, 0x0d, 0xf4, 0x29, 0xb4, 0x20, 0x50, 0x86, 0xe6, 0x33, 0xb8, 0x00, 0xd7, 0xd7, 0xb8, 0xbd, 0xe4, 0x8a, 0x9b, 0xec, 0x4e, 0x43, 0xdd, 0xeb, 0x42, 0x26, 0x19, 0x2b, 0x5c, 0x9b, 0x30, 0xff, 0xa3, 0xef, 0xa7, 0xd2, 0x38, 0x5a, 0xb2, 0x8a, 0x19, 0x0c, 0x16, 0x5f, 0xb2, 0xa2, 0xc5, 0x85, 0x72, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2579 = { .name = "ecdsa_brainpoolp512r1_sha512_2579", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2579_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2579_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2579_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 459 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2580 for ECDSA, tcId is 460 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2580_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2580_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2580_sig[] = { 0x4c, 0xd6, 0x17, 0x54, 0x21, 0x1d, 0x22, 0x23, 0x71, 0xe5, 0x52, 0x57, 0x8f, 0xf7, 0x05, 0xcc, 0x81, 0x9a, 0x2f, 0x9f, 0xb2, 0x72, 0x9f, 0x05, 0xd8, 0x48, 0xca, 0xab, 0xf4, 0x4a, 0x31, 0xfd, 0xa1, 0xbd, 0x03, 0x8f, 0x1b, 0x87, 0xef, 0xd2, 0x8a, 0x8c, 0xe5, 0x32, 0x22, 0xfd, 0xfe, 0xc1, 0x8d, 0x59, 0x29, 0xdf, 0x92, 0x6d, 0xf2, 0x7c, 0x2c, 0x7e, 0x73, 0x60, 0xbc, 0x5c, 0x0c, 0x70, 0x5c, 0xe9, 0x4c, 0x85, 0x1d, 0xb1, 0x80, 0x7d, 0xc7, 0x9d, 0xcc, 0x08, 0x7c, 0x08, 0x30, 0xd7, 0x0a, 0x00, 0x69, 0xcf, 0x52, 0xba, 0xff, 0xaf, 0x34, 0x7a, 0xef, 0xa1, 0xdd, 0xba, 0x77, 0xf6, 0xf7, 0x70, 0xc1, 0x48, 0x3f, 0xdd, 0xe3, 0x8f, 0x5d, 0x74, 0xbd, 0xb3, 0x23, 0x72, 0xe1, 0x2f, 0xee, 0x84, 0x3e, 0xff, 0xf0, 0xf2, 0xdc, 0x93, 0x44, 0xca, 0x1e, 0x3b, 0x26, 0xb9, 0xb0, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2580 = { .name = "ecdsa_brainpoolp512r1_sha512_2580", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2580_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2580_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2580_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 460 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2581 for ECDSA, tcId is 461 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2581_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2581_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2581_sig[] = { 0x48, 0xb4, 0xbd, 0xe7, 0xbe, 0xfb, 0x1b, 0x1c, 0xad, 0x50, 0xce, 0xe6, 0x23, 0x3c, 0xbf, 0x32, 0x81, 0x28, 0x60, 0xc8, 0x1d, 0x7a, 0xd5, 0xb0, 0xe9, 0xd6, 0x37, 0x72, 0x02, 0xbc, 0xd3, 0x48, 0x27, 0xc5, 0x34, 0xda, 0x0a, 0xc9, 0x64, 0x6a, 0xe0, 0x15, 0x46, 0x89, 0xe3, 0x8c, 0x60, 0x88, 0x94, 0xbb, 0x31, 0x26, 0xe1, 0x02, 0x5f, 0x69, 0xc8, 0x24, 0xc6, 0x9a, 0xb8, 0x21, 0x27, 0x4a, 0x83, 0x69, 0xf5, 0x84, 0x0f, 0x77, 0x66, 0x68, 0xeb, 0xb4, 0x35, 0xb3, 0x3b, 0xe0, 0x5d, 0xce, 0x4a, 0xdf, 0xab, 0xb8, 0x86, 0x0c, 0xcc, 0x90, 0x0d, 0x07, 0xdb, 0x00, 0x6a, 0x50, 0x19, 0x5f, 0xd4, 0xde, 0x98, 0x63, 0x21, 0x92, 0xfb, 0xe7, 0x31, 0x9c, 0xed, 0xff, 0x26, 0xaa, 0x86, 0x82, 0xcf, 0x7b, 0xf5, 0xf1, 0xc0, 0x2e, 0x58, 0xb9, 0xc1, 0x63, 0x23, 0x61, 0x03, 0xd9, 0xb3, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2581 = { .name = "ecdsa_brainpoolp512r1_sha512_2581", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2581_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2581_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2581_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 461 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2582 for ECDSA, tcId is 462 in file ecdsa_brainpoolP512r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_2582_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2582_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_2582_sig[] = { 0x19, 0x52, 0x4b, 0x15, 0xcf, 0x4e, 0xcb, 0x40, 0x0b, 0x93, 0x8e, 0xf5, 0xf7, 0x52, 0xb8, 0x6e, 0xc8, 0xf0, 0x7c, 0x59, 0x03, 0xda, 0x5d, 0xba, 0x9c, 0x91, 0xab, 0x79, 0x65, 0xb1, 0x22, 0x3a, 0x8e, 0x26, 0x2b, 0xef, 0x8c, 0xca, 0x89, 0x73, 0xed, 0x98, 0x79, 0x7f, 0x37, 0xa3, 0x5e, 0x1c, 0x59, 0x99, 0xcf, 0x20, 0x3e, 0x61, 0x0e, 0xf7, 0x73, 0xc6, 0xaa, 0x27, 0x86, 0xbb, 0xa0, 0x64, 0x98, 0xcf, 0x75, 0x26, 0xf5, 0xa2, 0x4a, 0x0e, 0x2f, 0x22, 0xf9, 0x09, 0xf8, 0x19, 0x0b, 0x13, 0x13, 0x04, 0x51, 0xb1, 0x5d, 0xd6, 0x77, 0x4b, 0xde, 0xa9, 0xd9, 0x29, 0x34, 0x2d, 0x92, 0x4b, 0xc7, 0xeb, 0xa1, 0xdf, 0x89, 0x91, 0x9c, 0x1b, 0x9a, 0xee, 0x8d, 0x09, 0x20, 0x36, 0x06, 0xd1, 0x0c, 0xeb, 0xff, 0x89, 0x90, 0x4c, 0xb7, 0xe7, 0x1a, 0x82, 0xd8, 0x97, 0x2d, 0x75, 0x53, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_2582 = { .name = "ecdsa_brainpoolp512r1_sha512_2582", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_2582_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_2582_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_2582_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 462 in file ecdsa_brainpoolP512r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 2583 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2583_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2583_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x38, 0x78, 0x8e, 0x1b, 0x77, 0x70, 0xb1, 0x8f, 0xd1, 0xaa, 0x6a, 0x26, 0xd7, 0xc6, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2583 = { .name = "ecdsa_secp224r1_sha224_2583", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2583_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2583_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2583_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2584 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2584_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2584_sig[] = { 0x01, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x26, 0xfc, 0x2a, 0x84, 0xbb, 0xe2, 0xe2, 0xa2, 0xe8, 0x4a, 0xec, 0xed, 0x76, 0x72, 0x47, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2584 = { .name = "ecdsa_secp224r1_sha224_2584", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2584_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2584_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2584_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2585 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2585_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2585_sig[] = { 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd7, 0x31, 0x1b, 0x3c, 0xb5, 0xfd, 0x99, 0x84, 0xd2, 0x07, 0x9d, 0xcb, 0x41, 0xe2, 0x33, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2585 = { .name = "ecdsa_secp224r1_sha224_2585", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2585_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2585_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2585_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2586 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2586_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2586_sig[] = { 0x01, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2586 = { .name = "ecdsa_secp224r1_sha224_2586", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2586_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2586_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2586_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2587 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2587_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2587_sig[] = { 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd8, 0x1a, 0x78, 0x5b, 0xfd, 0x0d, 0x5b, 0x70, 0xf4, 0xde, 0x58, 0x6e, 0xe5, 0xb7, 0xf6, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2587 = { .name = "ecdsa_secp224r1_sha224_2587", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2587_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2587_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2587_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2588 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2588_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2588_sig[] = { 0x00, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x01, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc5, 0xb4, 0xb7, 0xa5, 0xfa, 0x6f, 0xca, 0x97, 0xe8, 0xa8, 0x20, 0x91, 0xe0, 0x8d, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2588 = { .name = "ecdsa_secp224r1_sha224_2588", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2588_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2588_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2588_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2589 for ECDSA, tcId is 7 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2589_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2589_sig[] = { 0x00, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x01, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2589 = { .name = "ecdsa_secp224r1_sha224_2589", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2589_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2589_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2589_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2590 for ECDSA, tcId is 8 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2590_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2590_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x39, 0x61, 0xeb, 0x3a, 0xbe, 0x80, 0x73, 0x7b, 0xf4, 0x81, 0x24, 0xca, 0x7b, 0x9c, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2590 = { .name = "ecdsa_secp224r1_sha224_2590", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2590_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2590_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2590_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2591 for ECDSA, tcId is 9 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2591_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2591_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2591 = { .name = "ecdsa_secp224r1_sha224_2591", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2591_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2591_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2591_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2592 for ECDSA, tcId is 10 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2592_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2592_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2592 = { .name = "ecdsa_secp224r1_sha224_2592", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2592_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2592_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2592_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2593 for ECDSA, tcId is 11 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2593_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2593_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2593 = { .name = "ecdsa_secp224r1_sha224_2593", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2593_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2593_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2593_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2594 for ECDSA, tcId is 12 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2594_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2594_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2594 = { .name = "ecdsa_secp224r1_sha224_2594", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2594_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2594_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2594_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2595 for ECDSA, tcId is 13 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2595_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2595_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2595 = { .name = "ecdsa_secp224r1_sha224_2595", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2595_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2595_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2595_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2596 for ECDSA, tcId is 14 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2596_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2596_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2596 = { .name = "ecdsa_secp224r1_sha224_2596", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2596_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2596_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2596_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2597 for ECDSA, tcId is 15 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2597_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2597_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2597 = { .name = "ecdsa_secp224r1_sha224_2597", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2597_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2597_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2597_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2598 for ECDSA, tcId is 16 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2598_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2598_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2598 = { .name = "ecdsa_secp224r1_sha224_2598", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2598_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2598_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2598_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2599 for ECDSA, tcId is 17 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2599_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2599_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2599 = { .name = "ecdsa_secp224r1_sha224_2599", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2599_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2599_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2599_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2600 for ECDSA, tcId is 18 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2600_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2600_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2600 = { .name = "ecdsa_secp224r1_sha224_2600", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2600_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2600_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2600_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2601 for ECDSA, tcId is 19 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2601_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2601_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2601 = { .name = "ecdsa_secp224r1_sha224_2601", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2601_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2601_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2601_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2602 for ECDSA, tcId is 20 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2602_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2602_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2602 = { .name = "ecdsa_secp224r1_sha224_2602", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2602_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2602_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2602_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2603 for ECDSA, tcId is 21 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2603_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2603_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2603 = { .name = "ecdsa_secp224r1_sha224_2603", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2603_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2603_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2603_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2604 for ECDSA, tcId is 22 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2604_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2604_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2604 = { .name = "ecdsa_secp224r1_sha224_2604", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2604_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2604_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2604_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2605 for ECDSA, tcId is 23 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2605_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2605_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2605 = { .name = "ecdsa_secp224r1_sha224_2605", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2605_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2605_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2605_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2606 for ECDSA, tcId is 24 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2606_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2606_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2606 = { .name = "ecdsa_secp224r1_sha224_2606", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2606_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2606_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2606_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2607 for ECDSA, tcId is 25 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2607_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2607_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2607 = { .name = "ecdsa_secp224r1_sha224_2607", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2607_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2607_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2607_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2608 for ECDSA, tcId is 26 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2608_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2608_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2608_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2608 = { .name = "ecdsa_secp224r1_sha224_2608", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2608_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2608_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2608_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2609 for ECDSA, tcId is 27 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2609_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2609_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2609_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2609 = { .name = "ecdsa_secp224r1_sha224_2609", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2609_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2609_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2609_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2610 for ECDSA, tcId is 28 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2610_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2610_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2610_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2610 = { .name = "ecdsa_secp224r1_sha224_2610", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2610_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2610_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2610_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2611 for ECDSA, tcId is 29 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2611_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2611_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2611 = { .name = "ecdsa_secp224r1_sha224_2611", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2611_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2611_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2611_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2612 for ECDSA, tcId is 30 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2612_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2612_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2612_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2612 = { .name = "ecdsa_secp224r1_sha224_2612", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2612_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2612_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2612_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2613 for ECDSA, tcId is 31 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2613_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2613_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2613_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2613 = { .name = "ecdsa_secp224r1_sha224_2613", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2613_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2613_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2613_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2614 for ECDSA, tcId is 32 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2614_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2614_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2614_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2614 = { .name = "ecdsa_secp224r1_sha224_2614", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2614_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2614_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2614_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2615 for ECDSA, tcId is 33 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2615_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2615_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2615_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2615 = { .name = "ecdsa_secp224r1_sha224_2615", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2615_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2615_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2615_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2616 for ECDSA, tcId is 34 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2616_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2616_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2616_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2616 = { .name = "ecdsa_secp224r1_sha224_2616", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2616_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2616_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2616_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2617 for ECDSA, tcId is 35 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2617_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2617_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2617_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2617 = { .name = "ecdsa_secp224r1_sha224_2617", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2617_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2617_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2617_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2618 for ECDSA, tcId is 36 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2618_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2618_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2618_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2618 = { .name = "ecdsa_secp224r1_sha224_2618", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2618_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2618_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2618_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2619 for ECDSA, tcId is 37 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2619_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2619_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2619_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2619 = { .name = "ecdsa_secp224r1_sha224_2619", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2619_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2619_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2619_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2620 for ECDSA, tcId is 38 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2620_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2620_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2620_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2620 = { .name = "ecdsa_secp224r1_sha224_2620", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2620_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2620_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2620_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2621 for ECDSA, tcId is 39 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2621_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2621_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2621_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2621 = { .name = "ecdsa_secp224r1_sha224_2621", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2621_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2621_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2621_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2622 for ECDSA, tcId is 40 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2622_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2622_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2622_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2622 = { .name = "ecdsa_secp224r1_sha224_2622", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2622_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2622_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2622_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2623 for ECDSA, tcId is 41 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2623_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2623_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2623_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2623 = { .name = "ecdsa_secp224r1_sha224_2623", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2623_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2623_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2623_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2624 for ECDSA, tcId is 42 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2624_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2624_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2624_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2624 = { .name = "ecdsa_secp224r1_sha224_2624", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2624_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2624_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2624_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2625 for ECDSA, tcId is 43 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2625_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2625_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2625_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2625 = { .name = "ecdsa_secp224r1_sha224_2625", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2625_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2625_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2625_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2626 for ECDSA, tcId is 44 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2626_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2626_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2626_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2626 = { .name = "ecdsa_secp224r1_sha224_2626", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2626_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2626_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2626_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2627 for ECDSA, tcId is 45 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2627_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2627_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2627 = { .name = "ecdsa_secp224r1_sha224_2627", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2627_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2627_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2627_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2628 for ECDSA, tcId is 46 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2628_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2628_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2628 = { .name = "ecdsa_secp224r1_sha224_2628", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2628_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2628_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2628_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2629 for ECDSA, tcId is 47 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2629_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2629_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2629 = { .name = "ecdsa_secp224r1_sha224_2629", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2629_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2629_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2629_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2630 for ECDSA, tcId is 48 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2630_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2630_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2630 = { .name = "ecdsa_secp224r1_sha224_2630", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2630_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2630_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2630_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2631 for ECDSA, tcId is 49 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2631_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2631_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2631 = { .name = "ecdsa_secp224r1_sha224_2631", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2631_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2631_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2631_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2632 for ECDSA, tcId is 50 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2632_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2632_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2632 = { .name = "ecdsa_secp224r1_sha224_2632", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2632_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2632_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2632_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2633 for ECDSA, tcId is 51 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2633_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2633_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2633 = { .name = "ecdsa_secp224r1_sha224_2633", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2633_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2633_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2633_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2634 for ECDSA, tcId is 52 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2634_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2634_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2634 = { .name = "ecdsa_secp224r1_sha224_2634", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2634_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2634_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2634_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2635 for ECDSA, tcId is 53 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2635_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2635_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2635 = { .name = "ecdsa_secp224r1_sha224_2635", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2635_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2635_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2635_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2636 for ECDSA, tcId is 54 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2636_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2636_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2636 = { .name = "ecdsa_secp224r1_sha224_2636", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2636_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2636_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2636_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2637 for ECDSA, tcId is 55 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2637_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2637_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2637 = { .name = "ecdsa_secp224r1_sha224_2637", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2637_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2637_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2637_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2638 for ECDSA, tcId is 56 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2638_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2638_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2638 = { .name = "ecdsa_secp224r1_sha224_2638", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2638_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2638_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2638_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2639 for ECDSA, tcId is 57 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2639_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2639_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2639 = { .name = "ecdsa_secp224r1_sha224_2639", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2639_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2639_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2639_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2640 for ECDSA, tcId is 58 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2640_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2640_msg[] = { 0x31, 0x37, 0x35, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2640_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x31, 0x16, 0xe1, 0xa3, 0x8e, 0x4a, 0xb2, 0x00, 0x8e, 0xca, 0x03, 0x2f, 0xb2, 0xd1, 0x85, 0xe5, 0xc2, 0x1a, 0x23, 0x2e, 0xaf, 0x45, 0x07, 0xae, 0x56, 0x17, 0x7f, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2640 = { .name = "ecdsa_secp224r1_sha224_2640", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2640_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2640_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha224_2640_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2641 for ECDSA, tcId is 59 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2641_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2641_msg[] = { 0x32, 0x32, 0x35, 0x34, 0x36, 0x32, 0x38, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2641_sig[] = { 0x8c, 0xe2, 0xaf, 0xe2, 0x0b, 0x68, 0x45, 0x76, 0xfd, 0xd9, 0x1b, 0x4b, 0x34, 0x16, 0x8c, 0x9c, 0x01, 0x19, 0x96, 0xaf, 0x5b, 0x0e, 0xb8, 0x5f, 0xa9, 0x29, 0xf3, 0x81, 0x66, 0x2a, 0xf5, 0xca, 0x65, 0x1b, 0xff, 0xbc, 0x62, 0x3c, 0x3a, 0x3b, 0x37, 0x27, 0x79, 0xbd, 0x09, 0xe1, 0x94, 0x8c, 0xd1, 0x91, 0x88, 0xf5, 0x33, 0x9a, 0x97, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2641 = { .name = "ecdsa_secp224r1_sha224_2641", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2641_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2641_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2641_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2642 for ECDSA, tcId is 60 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2642_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2642_msg[] = { 0x31, 0x38, 0x32, 0x37, 0x38, 0x37, 0x38, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2642_sig[] = { 0xda, 0x57, 0x3c, 0xf7, 0x3a, 0xed, 0x17, 0x47, 0x10, 0xc2, 0x32, 0x15, 0x57, 0x35, 0x24, 0x8f, 0x8e, 0xbe, 0xf6, 0x96, 0x37, 0x46, 0x47, 0x52, 0x7d, 0xa5, 0x22, 0x58, 0xb2, 0x51, 0x85, 0x6b, 0x66, 0xa8, 0x3c, 0x32, 0xbf, 0x0b, 0x7b, 0x81, 0xa0, 0x1f, 0x1d, 0xb4, 0x50, 0x7e, 0x62, 0x21, 0x25, 0xf3, 0x01, 0xbd, 0x83, 0x2a, 0x5c, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2642 = { .name = "ecdsa_secp224r1_sha224_2642", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2642_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2642_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2642_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2643 for ECDSA, tcId is 61 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2643_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2643_msg[] = { 0x31, 0x35, 0x31, 0x38, 0x38, 0x36, 0x31, 0x37, 0x30, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2643_sig[] = { 0xc3, 0x68, 0xda, 0x86, 0x58, 0x2b, 0x2c, 0x82, 0xb6, 0x96, 0xb2, 0xf7, 0xc7, 0x90, 0x27, 0x96, 0x8f, 0x3f, 0xd2, 0x5c, 0xbb, 0xa9, 0x68, 0x8c, 0xdc, 0x67, 0xb1, 0x7a, 0xab, 0xa8, 0xe3, 0xc2, 0xff, 0x1a, 0xf9, 0xbb, 0x9c, 0x66, 0xca, 0x88, 0xa3, 0x82, 0x5a, 0x19, 0xce, 0x17, 0x20, 0x6e, 0x7a, 0x65, 0x8f, 0xf4, 0x70, 0x25, 0x89, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2643 = { .name = "ecdsa_secp224r1_sha224_2643", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2643_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2643_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2643_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2644 for ECDSA, tcId is 62 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2644_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2644_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x33, 0x33, 0x34, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2644_sig[] = { 0xff, 0xce, 0xfc, 0xb5, 0x71, 0x90, 0xd0, 0xb8, 0x7e, 0xfb, 0x78, 0x9f, 0xb5, 0x34, 0x07, 0xfd, 0x2c, 0x65, 0xc5, 0xae, 0x35, 0x51, 0xda, 0x3e, 0xcc, 0xf8, 0xdd, 0xd5, 0x05, 0xc8, 0x9b, 0x41, 0x23, 0x8f, 0x1e, 0x1d, 0xef, 0x8f, 0xbe, 0x8d, 0x4a, 0xfe, 0xbf, 0x20, 0xbe, 0x07, 0x7e, 0x82, 0x97, 0x2f, 0x91, 0x29, 0x74, 0x87, 0xe1, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2644 = { .name = "ecdsa_secp224r1_sha224_2644", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2644_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2644_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2644_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2645 for ECDSA, tcId is 63 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2645_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2645_msg[] = { 0x31, 0x32, 0x32, 0x31, 0x39, 0x37, 0x39, 0x30, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2645_sig[] = { 0x2b, 0x98, 0xc6, 0x7e, 0xbf, 0x65, 0x97, 0xb0, 0x8b, 0xc7, 0xf1, 0xb7, 0x3f, 0xf8, 0x66, 0x2c, 0xf1, 0x25, 0xe9, 0x70, 0x0e, 0xc9, 0x73, 0xec, 0xe9, 0xc6, 0xff, 0x48, 0x2e, 0x3f, 0x72, 0xa8, 0xf7, 0x6e, 0x12, 0xc8, 0xcd, 0xf4, 0x48, 0x7e, 0x09, 0x56, 0xc1, 0xef, 0x45, 0x78, 0xe1, 0xda, 0x4d, 0x29, 0xd8, 0xdb, 0x82, 0x4d, 0x41, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2645 = { .name = "ecdsa_secp224r1_sha224_2645", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2645_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2645_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2645_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2646 for ECDSA, tcId is 64 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2646_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2646_msg[] = { 0x32, 0x33, 0x30, 0x32, 0x35, 0x36, 0x37, 0x36, 0x31, 0x31, }; static const unsigned char ecdsa_secp224r1_sha224_2646_sig[] = { 0x57, 0x94, 0xd7, 0x04, 0x40, 0xf1, 0x66, 0x90, 0x4d, 0x24, 0xd0, 0xb9, 0x10, 0xcd, 0x12, 0x7c, 0x63, 0xa9, 0xed, 0xdc, 0xa4, 0x5a, 0x4d, 0x90, 0x32, 0xdb, 0x47, 0xe8, 0x8b, 0xa5, 0xd2, 0x90, 0x83, 0x4d, 0x9a, 0x09, 0x63, 0x12, 0x2d, 0x92, 0x8d, 0xa9, 0x02, 0xf7, 0xb0, 0x34, 0x67, 0x39, 0x60, 0x72, 0x18, 0x0b, 0xb1, 0x80, 0x1b, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2646 = { .name = "ecdsa_secp224r1_sha224_2646", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2646_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2646_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2646_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2647 for ECDSA, tcId is 65 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2647_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2647_msg[] = { 0x31, 0x31, 0x30, 0x35, 0x38, 0x36, 0x38, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2647_sig[] = { 0xc2, 0x9c, 0x70, 0xb0, 0xb2, 0x17, 0x82, 0xd1, 0xc7, 0x27, 0xf4, 0x90, 0x7a, 0xef, 0x56, 0x41, 0xb6, 0xd6, 0xc6, 0xe7, 0xb2, 0xa1, 0xeb, 0xfa, 0x57, 0x79, 0x42, 0x23, 0xaa, 0xc2, 0xd3, 0xa0, 0x25, 0x92, 0xf2, 0x98, 0xdd, 0x31, 0x98, 0xe3, 0x88, 0x42, 0x5e, 0xc7, 0xa9, 0x1d, 0x7e, 0x6b, 0xe4, 0x82, 0x48, 0xa6, 0x47, 0x73, 0x61, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2647 = { .name = "ecdsa_secp224r1_sha224_2647", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2647_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2647_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2647_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2648 for ECDSA, tcId is 66 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2648_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2648_msg[] = { 0x31, 0x34, 0x36, 0x36, 0x36, 0x31, 0x34, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2648_sig[] = { 0x5c, 0x3e, 0xf3, 0x77, 0x8c, 0x81, 0x1e, 0x69, 0xef, 0x0b, 0x0e, 0x37, 0x0e, 0x45, 0xec, 0x0d, 0x7e, 0xb8, 0x85, 0x05, 0xc3, 0xe8, 0xff, 0xb8, 0xc5, 0x0b, 0x99, 0x93, 0xe0, 0x6b, 0x5c, 0x6e, 0x47, 0xdc, 0x4d, 0xa9, 0xe6, 0x4f, 0xd2, 0x1b, 0xc3, 0xe1, 0xda, 0x13, 0xcf, 0x7c, 0x26, 0x4f, 0xa6, 0x4c, 0xcb, 0x89, 0xda, 0x87, 0x38, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2648 = { .name = "ecdsa_secp224r1_sha224_2648", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2648_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2648_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2648_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2649 for ECDSA, tcId is 67 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2649_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2649_msg[] = { 0x34, 0x34, 0x31, 0x39, 0x35, 0x36, 0x34, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2649_sig[] = { 0xed, 0x8f, 0x58, 0x65, 0x63, 0x23, 0x2c, 0xf1, 0x5e, 0xbd, 0x01, 0x4b, 0xd4, 0xf9, 0x97, 0x27, 0xe3, 0x37, 0xcf, 0xe4, 0xce, 0x48, 0x69, 0x4f, 0xe6, 0x74, 0x8e, 0xc2, 0xff, 0xf7, 0x79, 0xa3, 0xec, 0xa9, 0x51, 0x35, 0x22, 0x90, 0x8e, 0x25, 0x2a, 0x2b, 0x4a, 0xab, 0x20, 0x60, 0x60, 0x8e, 0x6c, 0xd2, 0xd4, 0xf1, 0xb8, 0xc6, 0x96, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2649 = { .name = "ecdsa_secp224r1_sha224_2649", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2649_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2649_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2649_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2650 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2650_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2650_msg[] = { 0x31, 0x39, 0x36, 0x39, 0x34, 0x38, 0x36, 0x30, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2650_sig[] = { 0x64, 0xc0, 0x84, 0xf6, 0xb7, 0x75, 0xbb, 0xf7, 0x91, 0x5c, 0x19, 0x64, 0xa6, 0x8b, 0x02, 0x59, 0x62, 0x93, 0x28, 0x59, 0x8f, 0x13, 0x55, 0x78, 0x72, 0x86, 0x78, 0x30, 0x2a, 0x6f, 0x3b, 0x28, 0x9d, 0x13, 0x0e, 0xc3, 0xd9, 0x9e, 0x4c, 0xaa, 0xf6, 0x01, 0x49, 0x78, 0x95, 0xa0, 0x69, 0xc1, 0xa5, 0xa7, 0x5b, 0x55, 0x9a, 0xd2, 0x84, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2650 = { .name = "ecdsa_secp224r1_sha224_2650", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2650_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2650_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2650_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2651 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2651_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2651_msg[] = { 0x32, 0x32, 0x33, 0x35, 0x36, 0x37, 0x32, 0x38, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2651_sig[] = { 0x2b, 0x51, 0x4e, 0x9b, 0x0e, 0x0e, 0xb6, 0x8a, 0xdc, 0x01, 0x91, 0x5a, 0xbb, 0xee, 0x9f, 0xa2, 0x1f, 0x30, 0x34, 0xbe, 0x55, 0x81, 0xde, 0xda, 0xa6, 0xb1, 0x59, 0x82, 0xb8, 0xf7, 0x1c, 0x5f, 0xdc, 0x68, 0xd6, 0x98, 0x71, 0x6b, 0xfc, 0x62, 0x3b, 0x27, 0x82, 0x16, 0xc0, 0xfc, 0xc0, 0x29, 0x84, 0x97, 0xfc, 0x9c, 0x03, 0xdb, 0x44, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2651 = { .name = "ecdsa_secp224r1_sha224_2651", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2651_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2651_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2651_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2652 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2652_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2652_msg[] = { 0x32, 0x32, 0x35, 0x37, 0x38, 0x34, 0x33, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2652_sig[] = { 0xe4, 0x10, 0x3f, 0x4a, 0x8a, 0x81, 0x44, 0x85, 0xb6, 0xb4, 0x06, 0xfe, 0x8d, 0xd7, 0x22, 0x06, 0xba, 0xd6, 0xa5, 0x0e, 0x71, 0x26, 0xbc, 0x65, 0x5c, 0x3d, 0x22, 0x85, 0x9b, 0xcb, 0x99, 0x69, 0x32, 0x84, 0xca, 0xc2, 0x6e, 0x66, 0x41, 0xa8, 0x61, 0xdb, 0xec, 0x24, 0xf9, 0xcc, 0x5d, 0xd7, 0xbb, 0x53, 0x53, 0x39, 0xd0, 0x9a, 0xc9, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2652 = { .name = "ecdsa_secp224r1_sha224_2652", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2652_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2652_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2652_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2653 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2653_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2653_msg[] = { 0x39, 0x34, 0x34, 0x35, 0x30, 0x30, 0x39, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha224_2653_sig[] = { 0x9e, 0xdf, 0xb8, 0x33, 0x44, 0x6e, 0xc8, 0xb6, 0xfc, 0x84, 0xee, 0xa3, 0x4e, 0xe4, 0x0a, 0x85, 0xb7, 0x32, 0xe5, 0xc9, 0x9d, 0xa8, 0xab, 0xc8, 0xba, 0xfc, 0xc5, 0x15, 0x50, 0x52, 0xb4, 0x0f, 0x9d, 0x40, 0x7a, 0xe9, 0x00, 0x03, 0x29, 0x9c, 0xab, 0xe3, 0xe1, 0xa5, 0x87, 0xb0, 0x55, 0x81, 0x27, 0xca, 0xfb, 0x31, 0xde, 0x6b, 0x26, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2653 = { .name = "ecdsa_secp224r1_sha224_2653", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2653_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2653_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2653_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2654 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2654_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2654_msg[] = { 0x31, 0x36, 0x38, 0x37, 0x37, 0x38, 0x39, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2654_sig[] = { 0xad, 0x26, 0x47, 0xc8, 0xff, 0x37, 0x77, 0x98, 0xa6, 0xae, 0xae, 0xd4, 0x36, 0xd3, 0x0c, 0x7b, 0x25, 0xfb, 0x52, 0x42, 0x88, 0x29, 0xce, 0x64, 0x24, 0xdd, 0x34, 0xe8, 0x28, 0xf5, 0x86, 0x71, 0xd7, 0x7c, 0x86, 0xda, 0x30, 0x24, 0x18, 0xc5, 0x1e, 0x5a, 0xb8, 0x6d, 0x13, 0x7b, 0xa6, 0xef, 0x43, 0x89, 0x72, 0x2b, 0xc7, 0x9b, 0x87, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2654 = { .name = "ecdsa_secp224r1_sha224_2654", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2654_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2654_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2654_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2655 for ECDSA, tcId is 73 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2655_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2655_msg[] = { 0x33, 0x39, 0x33, 0x32, 0x36, 0x31, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2655_sig[] = { 0x5d, 0xfc, 0x6f, 0xad, 0x38, 0x5b, 0xdb, 0x24, 0xb2, 0xb7, 0x0a, 0x64, 0xfd, 0x42, 0x53, 0x40, 0x5c, 0x00, 0x28, 0xbb, 0x36, 0xf4, 0x79, 0x3a, 0xa3, 0xbd, 0x31, 0xfe, 0x1c, 0x21, 0x0b, 0x74, 0x92, 0x41, 0x71, 0x37, 0x89, 0x92, 0xb0, 0x3b, 0xb1, 0xbd, 0x78, 0xc5, 0xcf, 0xcf, 0xc8, 0x79, 0xd2, 0xe5, 0xc7, 0x36, 0xd3, 0x55, 0x16, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2655 = { .name = "ecdsa_secp224r1_sha224_2655", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2655_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2655_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2655_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2656 for ECDSA, tcId is 74 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2656_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2656_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x35, 0x37, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha224_2656_sig[] = { 0x76, 0x6b, 0xef, 0x46, 0x22, 0x96, 0x95, 0xe6, 0x82, 0x9d, 0xd1, 0x2c, 0xd5, 0x58, 0x36, 0x9e, 0xc3, 0x45, 0x19, 0xba, 0x4a, 0x72, 0xdc, 0xaf, 0x6f, 0x73, 0xf7, 0xb0, 0xfc, 0x01, 0x5c, 0xcd, 0xd1, 0xe9, 0x43, 0xb9, 0x10, 0x10, 0x16, 0x07, 0xd8, 0x1f, 0xf1, 0x39, 0x8c, 0xa6, 0xa4, 0xd7, 0x0c, 0x25, 0x83, 0x2b, 0x02, 0xb2, 0x21, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2656 = { .name = "ecdsa_secp224r1_sha224_2656", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2656_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2656_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2656_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2657 for ECDSA, tcId is 75 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2657_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2657_msg[] = { 0x36, 0x30, 0x38, 0x38, 0x37, 0x34, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2657_sig[] = { 0x12, 0x00, 0x55, 0xf9, 0x0a, 0xd1, 0x29, 0x0c, 0x4c, 0x5f, 0xc5, 0xfa, 0xf6, 0x9b, 0x21, 0x51, 0x39, 0x18, 0x2c, 0x77, 0x0d, 0x2b, 0x55, 0xe9, 0x57, 0x12, 0x44, 0x2f, 0x01, 0xac, 0x47, 0xf7, 0x44, 0x65, 0x43, 0xd4, 0x00, 0x3b, 0x03, 0x9d, 0x9f, 0x54, 0xda, 0xa9, 0xd0, 0x79, 0x9f, 0x98, 0x29, 0x1a, 0x32, 0xdf, 0x4f, 0xcd, 0x47, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2657 = { .name = "ecdsa_secp224r1_sha224_2657", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2657_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2657_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2657_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2658 for ECDSA, tcId is 76 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2658_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2658_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x35, 0x36, 0x39, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2658_sig[] = { 0xf4, 0x80, 0x59, 0x1f, 0x6f, 0x40, 0xa2, 0x5b, 0x37, 0xa0, 0x35, 0xfd, 0x91, 0x95, 0x41, 0x45, 0xec, 0x34, 0x2e, 0x59, 0x3d, 0x09, 0xe1, 0x42, 0xf2, 0x5d, 0xa4, 0x08, 0x5c, 0x6b, 0xa4, 0x4f, 0xf5, 0x2f, 0x52, 0xc5, 0x14, 0x90, 0x74, 0x3d, 0x9b, 0x65, 0x09, 0x16, 0xbe, 0x58, 0xd0, 0x6d, 0x7c, 0x1f, 0xd9, 0x9d, 0xfa, 0x2e, 0xab, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2658 = { .name = "ecdsa_secp224r1_sha224_2658", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2658_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2658_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2658_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2659 for ECDSA, tcId is 77 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2659_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2659_msg[] = { 0x39, 0x30, 0x30, 0x37, 0x36, 0x30, 0x39, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2659_sig[] = { 0x57, 0xda, 0xdd, 0xb0, 0xcb, 0x6a, 0xf9, 0x39, 0xb1, 0xea, 0x1a, 0xaf, 0x4b, 0xc7, 0x2e, 0x56, 0x15, 0x0c, 0x0c, 0x46, 0xa5, 0x81, 0x82, 0x71, 0x93, 0xe6, 0x5d, 0x17, 0x3b, 0xc3, 0x7b, 0xde, 0x4e, 0x60, 0xb7, 0x89, 0xba, 0x86, 0xa0, 0x54, 0xd3, 0x7f, 0x11, 0x91, 0xe0, 0x81, 0x49, 0x26, 0xc1, 0xa0, 0x10, 0x01, 0x68, 0xd1, 0x6c, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2659 = { .name = "ecdsa_secp224r1_sha224_2659", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2659_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2659_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2659_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2660 for ECDSA, tcId is 78 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2660_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2660_msg[] = { 0x31, 0x36, 0x30, 0x32, 0x38, 0x33, 0x36, 0x31, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2660_sig[] = { 0x3a, 0x74, 0x10, 0x2b, 0xd1, 0xfc, 0x61, 0x70, 0x18, 0xef, 0xc4, 0xfb, 0xc0, 0x42, 0xe7, 0x19, 0xa8, 0x1b, 0x55, 0x83, 0x0a, 0xac, 0x1f, 0x1d, 0xcd, 0xed, 0xec, 0x65, 0x4b, 0xb9, 0xfe, 0x90, 0x01, 0x5a, 0x45, 0xf3, 0x1c, 0x8c, 0x95, 0xdd, 0xa2, 0x4f, 0x54, 0xfc, 0xdb, 0x64, 0x68, 0x2c, 0x13, 0xf6, 0x8d, 0x4d, 0xa3, 0xd1, 0xab, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2660 = { .name = "ecdsa_secp224r1_sha224_2660", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2660_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2660_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2660_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2661 for ECDSA, tcId is 79 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2661_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2661_msg[] = { 0x32, 0x30, 0x38, 0x30, 0x32, 0x34, 0x35, 0x36, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2661_sig[] = { 0xe3, 0xb6, 0xbb, 0x1b, 0x5b, 0xee, 0xd0, 0x48, 0xe0, 0x17, 0x7e, 0x3e, 0x31, 0x0f, 0xa1, 0x4e, 0xb9, 0x23, 0xa1, 0xe3, 0x27, 0x4c, 0x09, 0x46, 0xf9, 0x27, 0x54, 0x54, 0xe0, 0x44, 0xe0, 0x49, 0x4f, 0xf4, 0x65, 0x73, 0xc3, 0x70, 0x07, 0xe3, 0xef, 0xa3, 0x23, 0x35, 0x88, 0xf1, 0xd1, 0x03, 0xce, 0xd1, 0x82, 0x3c, 0x7e, 0x87, 0xe7, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2661 = { .name = "ecdsa_secp224r1_sha224_2661", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2661_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2661_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2661_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2662 for ECDSA, tcId is 80 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2662_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2662_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x37, 0x34, 0x36, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2662_sig[] = { 0x3c, 0x21, 0x2b, 0x5a, 0x7e, 0x65, 0xd9, 0xaf, 0x44, 0x64, 0x3b, 0xd6, 0x2f, 0xa4, 0x2a, 0x9b, 0x9c, 0xff, 0xe6, 0xbd, 0xb6, 0x23, 0xe9, 0xb9, 0xe4, 0x33, 0x71, 0x56, 0x29, 0xc8, 0x12, 0x1a, 0x12, 0x42, 0x7a, 0x32, 0x4e, 0x5d, 0x55, 0x1f, 0xf5, 0xa8, 0x3d, 0x3c, 0x25, 0x2e, 0x32, 0x25, 0x7a, 0xf2, 0x80, 0x0d, 0x08, 0x08, 0x17, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2662 = { .name = "ecdsa_secp224r1_sha224_2662", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2662_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2662_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2662_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2663 for ECDSA, tcId is 81 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2663_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2663_msg[] = { 0x31, 0x31, 0x35, 0x35, 0x35, 0x37, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2663_sig[] = { 0x16, 0x30, 0x55, 0x49, 0x89, 0xff, 0xfd, 0x0e, 0x35, 0xf2, 0xd9, 0x10, 0x56, 0x23, 0xd7, 0x3a, 0x54, 0x36, 0x34, 0xc4, 0x80, 0x00, 0x48, 0x4c, 0x42, 0x22, 0x72, 0xca, 0x21, 0x4d, 0xa4, 0x87, 0xd5, 0xe5, 0x1f, 0x73, 0x81, 0x4d, 0xff, 0x80, 0xa0, 0x8c, 0x77, 0xbd, 0x8a, 0x83, 0xa9, 0x88, 0x9a, 0x1b, 0x26, 0xa5, 0x57, 0x8b, 0xa9, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2663 = { .name = "ecdsa_secp224r1_sha224_2663", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2663_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2663_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2663_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2664 for ECDSA, tcId is 82 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2664_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2664_msg[] = { 0x32, 0x34, 0x33, 0x32, 0x34, 0x37, 0x34, 0x36, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2664_sig[] = { 0x0a, 0x46, 0x09, 0x24, 0x2f, 0x21, 0x93, 0xb9, 0x4b, 0xc5, 0x4f, 0x49, 0xbc, 0xf5, 0x32, 0xa5, 0x76, 0xe0, 0x35, 0xce, 0xc5, 0x0e, 0x04, 0x36, 0x68, 0x57, 0x4b, 0xef, 0xaa, 0x68, 0xbd, 0x67, 0x62, 0x4d, 0x88, 0x12, 0x00, 0x2b, 0xbb, 0x3a, 0x5f, 0x53, 0x05, 0x94, 0x45, 0x13, 0x72, 0xd4, 0xab, 0x36, 0x89, 0x6a, 0x29, 0x29, 0xc3, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2664 = { .name = "ecdsa_secp224r1_sha224_2664", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2664_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2664_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2664_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2665 for ECDSA, tcId is 83 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2665_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2665_msg[] = { 0x32, 0x34, 0x31, 0x37, 0x32, 0x38, 0x32, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2665_sig[] = { 0xef, 0x9f, 0xf4, 0x46, 0xe8, 0xee, 0xf3, 0xe9, 0x48, 0xf4, 0x12, 0x9f, 0xe8, 0x80, 0x4f, 0x81, 0xf5, 0xb7, 0xf1, 0x16, 0xa5, 0x38, 0x3f, 0x9e, 0x8b, 0xc3, 0x59, 0xe4, 0xf4, 0xc7, 0x05, 0x5b, 0xd9, 0x8f, 0x4a, 0x7e, 0xa4, 0x9d, 0x95, 0x74, 0x16, 0x0e, 0xac, 0x16, 0x78, 0x09, 0xf6, 0xa7, 0x8b, 0x9d, 0xd2, 0x20, 0x95, 0x8d, 0xd0, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2665 = { .name = "ecdsa_secp224r1_sha224_2665", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2665_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2665_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2665_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2666 for ECDSA, tcId is 84 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2666_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2666_msg[] = { 0x37, 0x37, 0x38, 0x37, 0x34, 0x37, 0x37, 0x31, }; static const unsigned char ecdsa_secp224r1_sha224_2666_sig[] = { 0x1a, 0x6c, 0x59, 0xd8, 0x5d, 0x5b, 0x31, 0x20, 0xb2, 0x8c, 0x0d, 0x30, 0xbc, 0x05, 0x8a, 0x92, 0xdc, 0x72, 0x5d, 0x8e, 0xf4, 0x50, 0xc1, 0x98, 0xcc, 0x3c, 0xa5, 0x22, 0x8b, 0x17, 0xfe, 0xfc, 0x8a, 0xb1, 0xff, 0x0b, 0xb3, 0x7a, 0x93, 0x44, 0x64, 0x53, 0xd4, 0x0f, 0x65, 0xbc, 0x2c, 0xb9, 0x63, 0x6b, 0x11, 0x20, 0x7f, 0x5c, 0x90, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2666 = { .name = "ecdsa_secp224r1_sha224_2666", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2666_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2666_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2666_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2667 for ECDSA, tcId is 85 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2667_pubkey[] = { 0x8b, 0xf7, 0xe7, 0x92, 0xf7, 0xc8, 0x68, 0x77, 0xf1, 0xfd, 0x05, 0x52, 0xe4, 0x2d, 0x80, 0x65, 0x3b, 0x59, 0xe3, 0xa2, 0x9e, 0x76, 0x2a, 0x22, 0x81, 0x0d, 0xaa, 0xc7, 0xee, 0xc6, 0x15, 0xbb, 0xad, 0x04, 0xb5, 0x8d, 0xc2, 0xa7, 0x95, 0x60, 0x90, 0xb8, 0x04, 0x0b, 0xb5, 0x05, 0x53, 0x25, 0xbb, 0xa0, 0xaa, 0x8b, 0x3a, 0x5c, 0xaa, 0x6f, }; static const unsigned char ecdsa_secp224r1_sha224_2667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2667_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2667 = { .name = "ecdsa_secp224r1_sha224_2667", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2667_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2667_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2667_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 85 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2668 for ECDSA, tcId is 86 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2668_pubkey[] = { 0x8b, 0xf7, 0xe7, 0x92, 0xf7, 0xc8, 0x68, 0x77, 0xf1, 0xfd, 0x05, 0x52, 0xe4, 0x2d, 0x80, 0x65, 0x3b, 0x59, 0xe3, 0xa2, 0x9e, 0x76, 0x2a, 0x22, 0x81, 0x0d, 0xaa, 0xc7, 0xee, 0xc6, 0x15, 0xbb, 0xad, 0x04, 0xb5, 0x8d, 0xc2, 0xa7, 0x95, 0x60, 0x90, 0xb8, 0x04, 0x0b, 0xb5, 0x05, 0x53, 0x25, 0xbb, 0xa0, 0xaa, 0x8b, 0x3a, 0x5c, 0xaa, 0x6f, }; static const unsigned char ecdsa_secp224r1_sha224_2668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2668_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2668 = { .name = "ecdsa_secp224r1_sha224_2668", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2668_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2668_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2668_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 86 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2669 for ECDSA, tcId is 87 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2669_pubkey[] = { 0x26, 0x46, 0xff, 0x36, 0xd9, 0x69, 0x7a, 0xaa, 0xed, 0x0d, 0x64, 0x11, 0x17, 0xf9, 0x4f, 0x60, 0xe1, 0x38, 0xba, 0xb8, 0xe9, 0x91, 0x2b, 0x55, 0x8a, 0xe0, 0xa8, 0x18, 0xca, 0x48, 0xe4, 0x5a, 0x33, 0x55, 0x0c, 0x1b, 0x5b, 0xd2, 0x0a, 0x00, 0xe4, 0xd9, 0xdf, 0x30, 0x33, 0xc0, 0x32, 0x22, 0xe8, 0x7b, 0xd9, 0x6a, 0x81, 0x97, 0xf2, 0xdd, }; static const unsigned char ecdsa_secp224r1_sha224_2669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2669_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2669 = { .name = "ecdsa_secp224r1_sha224_2669", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2669_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2669_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2669_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 87 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2670 for ECDSA, tcId is 88 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2670_pubkey[] = { 0xea, 0x3e, 0xa2, 0x87, 0x3b, 0x6f, 0xc0, 0x99, 0xbf, 0xd7, 0x79, 0xb0, 0xa2, 0xc2, 0x3c, 0x2c, 0x43, 0x54, 0xe2, 0xfe, 0xc4, 0x53, 0x6f, 0x3b, 0x8e, 0x42, 0x09, 0x88, 0xf9, 0x7e, 0x1c, 0x76, 0x46, 0xb4, 0xeb, 0x3d, 0xe6, 0x16, 0x75, 0x2f, 0x41, 0x5a, 0xb3, 0xa6, 0xf6, 0x96, 0xd1, 0xd6, 0x74, 0xfb, 0x4b, 0x67, 0x32, 0x25, 0x23, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2670_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2670 = { .name = "ecdsa_secp224r1_sha224_2670", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2670_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2670_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2670_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 88 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2671 for ECDSA, tcId is 89 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2671_pubkey[] = { 0x92, 0xae, 0x54, 0xe3, 0x8b, 0x4e, 0x9c, 0x6a, 0xe9, 0x94, 0x31, 0x93, 0x74, 0x7c, 0x4c, 0x8a, 0xcc, 0x6c, 0x96, 0xf4, 0x22, 0x51, 0x52, 0x88, 0xe9, 0x69, 0x8a, 0x13, 0xe8, 0xf3, 0xa7, 0x59, 0xa1, 0xa8, 0x27, 0x3c, 0x53, 0xf4, 0xb4, 0xb1, 0x8b, 0xfc, 0xf7, 0x8d, 0x9b, 0xb9, 0x88, 0xad, 0xb3, 0xb0, 0x05, 0x00, 0x2d, 0xbe, 0x43, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha224_2671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2671_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2671 = { .name = "ecdsa_secp224r1_sha224_2671", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2671_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2671_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2671_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 89 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2672 for ECDSA, tcId is 90 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2672_pubkey[] = { 0xb1, 0x57, 0x31, 0x5c, 0xc1, 0xaa, 0xea, 0xe6, 0x4e, 0xb5, 0xb3, 0x84, 0x52, 0x88, 0x41, 0x95, 0xfd, 0xfe, 0x8a, 0x15, 0xfb, 0x56, 0x18, 0x28, 0x4f, 0x48, 0xaf, 0xe5, 0xe1, 0xfb, 0xba, 0xad, 0x72, 0x94, 0x77, 0xa4, 0x5f, 0x37, 0x52, 0xb7, 0xf7, 0x2a, 0xd2, 0xf9, 0xcd, 0x7d, 0xce, 0x41, 0x58, 0xa8, 0xe2, 0x1b, 0x81, 0x27, 0xe8, 0xa7, }; static const unsigned char ecdsa_secp224r1_sha224_2672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2672_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2672 = { .name = "ecdsa_secp224r1_sha224_2672", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2672_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2672_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2672_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 90 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2673 for ECDSA, tcId is 91 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2673_pubkey[] = { 0xb1, 0x57, 0x31, 0x5c, 0xc1, 0xaa, 0xea, 0xe6, 0x4e, 0xb5, 0xb3, 0x84, 0x52, 0x88, 0x41, 0x95, 0xfd, 0xfe, 0x8a, 0x15, 0xfb, 0x56, 0x18, 0x28, 0x4f, 0x48, 0xaf, 0xe5, 0xe1, 0xfb, 0xba, 0xad, 0x72, 0x94, 0x77, 0xa4, 0x5f, 0x37, 0x52, 0xb7, 0xf7, 0x2a, 0xd2, 0xf9, 0xcd, 0x7d, 0xce, 0x41, 0x58, 0xa8, 0xe2, 0x1b, 0x81, 0x27, 0xe8, 0xa7, }; static const unsigned char ecdsa_secp224r1_sha224_2673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2673_sig[] = { 0x03, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2673 = { .name = "ecdsa_secp224r1_sha224_2673", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2673_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2673_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2673_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 91 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2674 for ECDSA, tcId is 92 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2674_pubkey[] = { 0x87, 0xd9, 0xd9, 0x64, 0x04, 0x4b, 0x5b, 0x16, 0x80, 0x1f, 0x32, 0xde, 0x9f, 0x3f, 0x90, 0x66, 0x19, 0x4e, 0x8b, 0xf8, 0x0a, 0xff, 0xa3, 0xcb, 0x0d, 0x4d, 0xdb, 0x1d, 0xb5, 0xeb, 0x9b, 0x65, 0x94, 0xe6, 0xd1, 0xbc, 0xac, 0xd0, 0xfd, 0x9d, 0x67, 0xc4, 0x08, 0xf7, 0x89, 0xdf, 0xb9, 0x5f, 0xeb, 0x79, 0xa6, 0xe2, 0xfb, 0x9c, 0x4c, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2674_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2674 = { .name = "ecdsa_secp224r1_sha224_2674", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2674_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2674_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2674_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 92 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2675 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2675_pubkey[] = { 0x87, 0xd9, 0xd9, 0x64, 0x04, 0x4b, 0x5b, 0x16, 0x80, 0x1f, 0x32, 0xde, 0x9f, 0x3f, 0x90, 0x66, 0x19, 0x4e, 0x8b, 0xf8, 0x0a, 0xff, 0xa3, 0xcb, 0x0d, 0x4d, 0xdb, 0x1d, 0xb5, 0xeb, 0x9b, 0x65, 0x94, 0xe6, 0xd1, 0xbc, 0xac, 0xd0, 0xfd, 0x9d, 0x67, 0xc4, 0x08, 0xf7, 0x89, 0xdf, 0xb9, 0x5f, 0xeb, 0x79, 0xa6, 0xe2, 0xfb, 0x9c, 0x4c, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2675_sig[] = { 0x03, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2675 = { .name = "ecdsa_secp224r1_sha224_2675", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2675_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2675_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2675_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 93 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2676 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2676_pubkey[] = { 0x46, 0x1b, 0x43, 0x5a, 0xf0, 0x9e, 0xde, 0x35, 0xe7, 0x4d, 0xac, 0x21, 0xf9, 0xaf, 0x7b, 0x1b, 0x99, 0x98, 0x21, 0x30, 0x39, 0xf8, 0x78, 0x5d, 0x4a, 0x49, 0x05, 0xf5, 0x18, 0xb8, 0x9b, 0xde, 0x69, 0xde, 0x34, 0xa4, 0x82, 0x63, 0x84, 0x61, 0xd0, 0x93, 0x86, 0xe7, 0x19, 0x3c, 0xa9, 0x0c, 0xa5, 0xb3, 0x03, 0x8e, 0x2a, 0x38, 0x85, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha224_2676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2676_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2676 = { .name = "ecdsa_secp224r1_sha224_2676", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2676_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2676_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2676_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 94 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2677 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2677_pubkey[] = { 0x46, 0x1b, 0x43, 0x5a, 0xf0, 0x9e, 0xde, 0x35, 0xe7, 0x4d, 0xac, 0x21, 0xf9, 0xaf, 0x7b, 0x1b, 0x99, 0x98, 0x21, 0x30, 0x39, 0xf8, 0x78, 0x5d, 0x4a, 0x49, 0x05, 0xf5, 0x18, 0xb8, 0x9b, 0xde, 0x69, 0xde, 0x34, 0xa4, 0x82, 0x63, 0x84, 0x61, 0xd0, 0x93, 0x86, 0xe7, 0x19, 0x3c, 0xa9, 0x0c, 0xa5, 0xb3, 0x03, 0x8e, 0x2a, 0x38, 0x85, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha224_2677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2677_sig[] = { 0x03, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2677 = { .name = "ecdsa_secp224r1_sha224_2677", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2677_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2677_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2677_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 95 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2678 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2678_pubkey[] = { 0x46, 0x1b, 0x43, 0x5a, 0xf0, 0x9e, 0xde, 0x35, 0xe7, 0x4d, 0xac, 0x21, 0xf9, 0xaf, 0x7b, 0x1b, 0x99, 0x98, 0x21, 0x30, 0x39, 0xf8, 0x78, 0x5d, 0x4a, 0x49, 0x05, 0xf5, 0x18, 0xb8, 0x9b, 0xde, 0x69, 0xde, 0x34, 0xa4, 0x82, 0x63, 0x84, 0x61, 0xd0, 0x93, 0x86, 0xe7, 0x19, 0x3c, 0xa9, 0x0c, 0xa5, 0xb3, 0x03, 0x8e, 0x2a, 0x38, 0x85, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha224_2678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2678_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2678 = { .name = "ecdsa_secp224r1_sha224_2678", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2678_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2678_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2678_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 96 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2679 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2679_pubkey[] = { 0x80, 0x93, 0xaf, 0x8d, 0xb0, 0x4b, 0x3d, 0xd2, 0xe7, 0xc3, 0xc5, 0x9b, 0xb6, 0x4a, 0x83, 0x2c, 0x2f, 0xb8, 0xe8, 0xe1, 0x41, 0xba, 0xe7, 0xba, 0x15, 0x34, 0x95, 0x0a, 0x10, 0xc5, 0xe8, 0x7a, 0xec, 0xbd, 0x1f, 0xcd, 0xfc, 0x36, 0xcd, 0x18, 0xd4, 0x1b, 0x32, 0x38, 0xb2, 0xac, 0x61, 0x3e, 0xb7, 0xc9, 0xde, 0x98, 0x8d, 0x88, 0x18, 0x16, }; static const unsigned char ecdsa_secp224r1_sha224_2679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2679_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2679 = { .name = "ecdsa_secp224r1_sha224_2679", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2679_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2679_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2679_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 97 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2680 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2680_pubkey[] = { 0xc6, 0xd7, 0x1f, 0x4b, 0xa0, 0x93, 0x3f, 0x12, 0x69, 0xf7, 0xd6, 0xdf, 0x83, 0xfd, 0x0c, 0x9c, 0x67, 0x25, 0x4f, 0x10, 0x1d, 0xcc, 0x12, 0x6d, 0xc1, 0x5f, 0xaa, 0x3e, 0x3c, 0x45, 0xdc, 0x9f, 0xed, 0xc7, 0x1c, 0x9f, 0x2b, 0x0d, 0xd1, 0xb1, 0x2b, 0x65, 0x62, 0x41, 0xf5, 0xe3, 0x35, 0x06, 0x6f, 0x3f, 0x92, 0x5b, 0xdb, 0xcf, 0xe9, 0x8f, }; static const unsigned char ecdsa_secp224r1_sha224_2680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2680_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2680 = { .name = "ecdsa_secp224r1_sha224_2680", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2680_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2680_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2680_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 98 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2681 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2681_pubkey[] = { 0xbe, 0xb9, 0xd8, 0xdc, 0xba, 0x48, 0x14, 0x6b, 0x90, 0x32, 0x68, 0x8e, 0xce, 0xa9, 0x47, 0xa2, 0x31, 0xe7, 0xd0, 0xe6, 0xce, 0x17, 0xd7, 0x6b, 0x56, 0xed, 0x63, 0x48, 0x35, 0x50, 0x3f, 0x3b, 0x4a, 0xf4, 0x14, 0x87, 0x0e, 0xf0, 0x33, 0x83, 0x78, 0x4b, 0x1d, 0x84, 0x6b, 0x3e, 0x07, 0xb8, 0xe9, 0xfc, 0x2d, 0x61, 0x90, 0xa3, 0xbf, 0xda, }; static const unsigned char ecdsa_secp224r1_sha224_2681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2681_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2681 = { .name = "ecdsa_secp224r1_sha224_2681", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2681_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2681_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2681_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 99 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2682 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2682_pubkey[] = { 0x19, 0x55, 0xba, 0x3f, 0x90, 0xe7, 0xa7, 0x39, 0x47, 0x1a, 0x5d, 0x18, 0x2b, 0x59, 0x4c, 0x97, 0x47, 0xeb, 0x49, 0xd5, 0x35, 0x62, 0x03, 0xf3, 0xbb, 0x8b, 0x93, 0x9c, 0x80, 0x7d, 0x88, 0xce, 0x3a, 0x08, 0x85, 0xbf, 0xa5, 0xb5, 0xb7, 0xf6, 0xe9, 0xbe, 0xb1, 0x82, 0x85, 0xe7, 0x13, 0x05, 0x24, 0xb6, 0xc1, 0x49, 0x8b, 0x32, 0x69, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2682_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2682 = { .name = "ecdsa_secp224r1_sha224_2682", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2682_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2682_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2682_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 100 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2683 for ECDSA, tcId is 101 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2683_pubkey[] = { 0x5c, 0xb9, 0xe5, 0xa5, 0x07, 0x1f, 0x2b, 0x37, 0xaa, 0x3a, 0x5e, 0x5f, 0x38, 0x9f, 0x54, 0xf9, 0x96, 0xb0, 0xbc, 0x8a, 0x13, 0x2e, 0xcb, 0x68, 0x85, 0x31, 0x8f, 0xbf, 0x4e, 0xc5, 0xf8, 0xb9, 0x3d, 0x8b, 0xf2, 0xa3, 0xb6, 0x4f, 0xa7, 0xca, 0xc3, 0x16, 0x39, 0x25, 0x62, 0xc4, 0x65, 0x67, 0x96, 0x3c, 0x43, 0xa6, 0x9f, 0x7a, 0x37, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2683_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2683 = { .name = "ecdsa_secp224r1_sha224_2683", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2683_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2683_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2683_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 101 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2684 for ECDSA, tcId is 102 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2684_pubkey[] = { 0x7b, 0x34, 0xef, 0x87, 0x23, 0xa4, 0x30, 0x9c, 0x0f, 0xa8, 0xa7, 0xec, 0x3a, 0x78, 0x34, 0x77, 0x65, 0x2a, 0x82, 0x89, 0x23, 0x70, 0xf6, 0x76, 0x33, 0x14, 0xfe, 0x7b, 0xde, 0xe6, 0x63, 0x85, 0x30, 0x71, 0xe3, 0x5f, 0xd3, 0xc7, 0x6f, 0x99, 0x1d, 0x78, 0x43, 0xc5, 0xe1, 0x68, 0xca, 0x65, 0x9b, 0x93, 0xbd, 0x60, 0x15, 0x51, 0x8f, 0xba, }; static const unsigned char ecdsa_secp224r1_sha224_2684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2684_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2684 = { .name = "ecdsa_secp224r1_sha224_2684", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2684_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2684_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2684_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 102 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2685 for ECDSA, tcId is 103 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2685_pubkey[] = { 0x03, 0xf2, 0x6a, 0x9c, 0x13, 0x97, 0x9c, 0xf5, 0xd0, 0x90, 0xea, 0x25, 0xdc, 0x96, 0x63, 0x98, 0x02, 0x2c, 0xee, 0xc3, 0x15, 0x04, 0xab, 0xc4, 0xb1, 0x0f, 0x76, 0x76, 0x7d, 0x57, 0x7d, 0xcf, 0x47, 0xe1, 0x0e, 0x38, 0x4c, 0x6b, 0x9a, 0x22, 0x9a, 0x45, 0x5a, 0x9f, 0xd3, 0x3e, 0x54, 0xfe, 0x79, 0x60, 0xb8, 0xb0, 0x16, 0x0a, 0xef, 0x16, }; static const unsigned char ecdsa_secp224r1_sha224_2685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2685_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2685 = { .name = "ecdsa_secp224r1_sha224_2685", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2685_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2685_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2685_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 103 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2686 for ECDSA, tcId is 104 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2686_pubkey[] = { 0xb6, 0x71, 0x29, 0x6d, 0xd5, 0xf6, 0x90, 0x50, 0x2e, 0x4b, 0x15, 0x00, 0xe4, 0xac, 0xb4, 0xc8, 0x2d, 0x3a, 0xa8, 0xdf, 0xbc, 0x58, 0x68, 0xa6, 0x43, 0xf8, 0x6a, 0x3c, 0xa4, 0x6b, 0xa8, 0xc3, 0xa7, 0xb8, 0x23, 0x25, 0x95, 0x22, 0x29, 0x1e, 0x24, 0x16, 0x23, 0x22, 0x76, 0xcc, 0xa8, 0x50, 0x3c, 0xc8, 0xdb, 0xf9, 0x41, 0xf1, 0xd9, 0x3d, }; static const unsigned char ecdsa_secp224r1_sha224_2686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2686_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2686 = { .name = "ecdsa_secp224r1_sha224_2686", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2686_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2686_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2686_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 104 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2687 for ECDSA, tcId is 105 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2687_pubkey[] = { 0xb6, 0x71, 0x29, 0x6d, 0xd5, 0xf6, 0x90, 0x50, 0x2e, 0x4b, 0x15, 0x00, 0xe4, 0xac, 0xb4, 0xc8, 0x2d, 0x3a, 0xa8, 0xdf, 0xbc, 0x58, 0x68, 0xa6, 0x43, 0xf8, 0x6a, 0x3c, 0xa4, 0x6b, 0xa8, 0xc3, 0xa7, 0xb8, 0x23, 0x25, 0x95, 0x22, 0x29, 0x1e, 0x24, 0x16, 0x23, 0x22, 0x76, 0xcc, 0xa8, 0x50, 0x3c, 0xc8, 0xdb, 0xf9, 0x41, 0xf1, 0xd9, 0x3d, }; static const unsigned char ecdsa_secp224r1_sha224_2687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2687_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2687 = { .name = "ecdsa_secp224r1_sha224_2687", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2687_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2687_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2687_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 105 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2688 for ECDSA, tcId is 106 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2688_pubkey[] = { 0x76, 0xe3, 0x4b, 0x57, 0xa8, 0xc6, 0x1d, 0xf5, 0x9c, 0xb0, 0xb7, 0x92, 0x1c, 0xec, 0x6e, 0x54, 0x22, 0x34, 0x40, 0x33, 0xf7, 0xac, 0xcb, 0x7b, 0x31, 0x79, 0xe6, 0x82, 0xce, 0xfd, 0x0a, 0x84, 0x83, 0x09, 0xd1, 0xde, 0xcf, 0x98, 0xa3, 0xb9, 0xe3, 0x33, 0x69, 0x1b, 0x95, 0xc1, 0x78, 0x21, 0xcb, 0x68, 0x11, 0x37, 0x63, 0x0c, 0x02, 0xe2, }; static const unsigned char ecdsa_secp224r1_sha224_2688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2688_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2688 = { .name = "ecdsa_secp224r1_sha224_2688", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2688_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2688_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2688_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 106 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2689 for ECDSA, tcId is 107 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2689_pubkey[] = { 0x51, 0x83, 0x9e, 0x54, 0x5c, 0x87, 0x2f, 0x4a, 0x38, 0x1f, 0x27, 0x8e, 0xd5, 0xb4, 0xc2, 0x4c, 0xf3, 0x8a, 0xac, 0x77, 0xb0, 0x29, 0x53, 0x40, 0x56, 0x18, 0xbf, 0x27, 0x39, 0x4e, 0x41, 0x22, 0x65, 0x94, 0xc4, 0x99, 0xdb, 0x6a, 0x7d, 0xd7, 0xa6, 0x90, 0x1b, 0xda, 0x5e, 0x64, 0x74, 0xb1, 0xff, 0xa1, 0x0a, 0x65, 0x67, 0x21, 0x00, 0x10, }; static const unsigned char ecdsa_secp224r1_sha224_2689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2689_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2689 = { .name = "ecdsa_secp224r1_sha224_2689", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2689_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2689_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2689_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 107 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2690 for ECDSA, tcId is 108 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2690_pubkey[] = { 0xa3, 0xec, 0x90, 0x05, 0x3d, 0x1e, 0x10, 0x08, 0x15, 0xd1, 0xbe, 0xcf, 0xe9, 0x6c, 0x9b, 0x36, 0x46, 0xe5, 0x2d, 0xf7, 0x94, 0xf6, 0xb0, 0x3b, 0x76, 0x6a, 0x75, 0x74, 0xc3, 0xb7, 0xe1, 0x7e, 0x73, 0xac, 0xc8, 0xce, 0xfe, 0x71, 0xb6, 0xeb, 0x13, 0xd4, 0xf1, 0xc9, 0x4c, 0x57, 0xe5, 0x8b, 0xee, 0x43, 0xc6, 0x9d, 0x9d, 0x41, 0xa9, 0x64, }; static const unsigned char ecdsa_secp224r1_sha224_2690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2690_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2690 = { .name = "ecdsa_secp224r1_sha224_2690", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2690_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2690_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2690_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 108 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2691 for ECDSA, tcId is 109 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2691_pubkey[] = { 0xb5, 0xc0, 0x9b, 0x48, 0x51, 0xa6, 0x73, 0x71, 0xee, 0xe7, 0xbb, 0xf0, 0x24, 0x51, 0xe5, 0x20, 0x8c, 0x40, 0xde, 0x61, 0xbc, 0x1a, 0x33, 0xdf, 0x27, 0x10, 0xb3, 0x84, 0xdc, 0xce, 0x4e, 0x5b, 0x83, 0xc3, 0x2a, 0x80, 0x0e, 0x8d, 0xe2, 0x8f, 0xa9, 0x36, 0xd5, 0x82, 0xcd, 0xca, 0xd1, 0x85, 0xe8, 0x94, 0xca, 0xac, 0x79, 0x7f, 0x1d, 0x14, }; static const unsigned char ecdsa_secp224r1_sha224_2691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2691_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2691 = { .name = "ecdsa_secp224r1_sha224_2691", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2691_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2691_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2691_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 109 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2692 for ECDSA, tcId is 110 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2692_pubkey[] = { 0x94, 0x1e, 0x28, 0x3b, 0xe3, 0x13, 0x00, 0xbf, 0xd4, 0xf6, 0xa1, 0x2b, 0x87, 0x6f, 0xd3, 0x26, 0x73, 0x52, 0x55, 0x1c, 0xc4, 0x9e, 0x9e, 0xef, 0x73, 0xf7, 0x65, 0x38, 0xc1, 0x15, 0xe5, 0xfe, 0x3b, 0x92, 0xf6, 0x43, 0xc6, 0xce, 0xf1, 0xc5, 0x8f, 0x3f, 0x86, 0x57, 0x57, 0x4d, 0x1f, 0x64, 0x95, 0x7d, 0x48, 0x80, 0x99, 0x5c, 0xde, 0x83, }; static const unsigned char ecdsa_secp224r1_sha224_2692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2692_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2692 = { .name = "ecdsa_secp224r1_sha224_2692", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2692_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2692_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2692_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 110 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2693 for ECDSA, tcId is 111 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2693_pubkey[] = { 0x43, 0xc9, 0xcc, 0xd0, 0x8a, 0x80, 0xbc, 0xa1, 0x80, 0x22, 0x72, 0x2b, 0x0b, 0xdc, 0xd7, 0x90, 0xd8, 0x2a, 0x3e, 0xf8, 0xb6, 0x5c, 0x3f, 0x34, 0x20, 0x4b, 0xb4, 0x72, 0x9e, 0xe1, 0xc1, 0xf0, 0x05, 0x98, 0x13, 0x0b, 0x23, 0x13, 0xa3, 0xe3, 0x8a, 0x37, 0x98, 0xd0, 0x3d, 0xac, 0x66, 0x5c, 0xff, 0x20, 0xf3, 0x6c, 0xe8, 0xa2, 0x02, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha224_2693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2693_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2693 = { .name = "ecdsa_secp224r1_sha224_2693", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2693_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2693_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2693_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 111 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2694 for ECDSA, tcId is 112 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2694_pubkey[] = { 0xd9, 0x58, 0xe4, 0x18, 0xfa, 0xd1, 0xc5, 0xea, 0x5c, 0x92, 0x3e, 0x61, 0x85, 0xe0, 0x3e, 0xd5, 0x53, 0x9d, 0x3f, 0x5f, 0x58, 0xdf, 0xac, 0x8b, 0xb9, 0xf1, 0x04, 0x59, 0x69, 0x97, 0xe4, 0x08, 0xc9, 0x7b, 0xe5, 0xfd, 0xc0, 0x37, 0xa5, 0xc0, 0x04, 0x38, 0x9d, 0x4b, 0x97, 0xeb, 0x1f, 0x54, 0x63, 0x5e, 0x98, 0x58, 0x53, 0xc1, 0xf0, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2694_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2694 = { .name = "ecdsa_secp224r1_sha224_2694", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2694_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2694_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2694_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 112 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2695 for ECDSA, tcId is 113 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2695_pubkey[] = { 0xd6, 0x29, 0xb4, 0x34, 0xc9, 0xb5, 0xd1, 0x57, 0xbd, 0x72, 0xe1, 0x14, 0xfd, 0x83, 0x95, 0x53, 0xf7, 0xf0, 0xe9, 0x46, 0x00, 0x93, 0x4a, 0x0a, 0x49, 0xe5, 0x9a, 0xa4, 0x71, 0x3a, 0x13, 0xc0, 0x17, 0x75, 0xe7, 0x5e, 0x2e, 0xba, 0xe7, 0x5d, 0x9e, 0x29, 0xd2, 0x50, 0x61, 0x84, 0x17, 0x7b, 0x7d, 0xd0, 0x86, 0x86, 0x93, 0x87, 0x35, 0x96, }; static const unsigned char ecdsa_secp224r1_sha224_2695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2695_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xbe, 0x91, 0x55, 0x7d, 0x86, 0x6a, 0xd5, 0xf2, 0x94, 0x5b, 0x14, 0xec, 0x33, 0x17, 0xbc, 0x43, 0xc1, 0x33, 0x8f, 0xd0, 0x6a, 0xf6, 0x49, 0x62, 0x01, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2695 = { .name = "ecdsa_secp224r1_sha224_2695", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2695_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2695_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2695_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 113 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2696 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2696_pubkey[] = { 0x3d, 0x2e, 0x9b, 0xb9, 0xa7, 0x12, 0xbf, 0x3a, 0xd4, 0x2a, 0xc3, 0x06, 0x59, 0xfd, 0xbd, 0xa9, 0xbe, 0x99, 0x56, 0x53, 0x7f, 0x9f, 0x37, 0xcd, 0x05, 0xf0, 0xff, 0x37, 0x7d, 0x59, 0x82, 0xd6, 0xd9, 0x26, 0x6d, 0x77, 0x49, 0x42, 0xc4, 0x4d, 0x9e, 0xb3, 0x50, 0x10, 0x51, 0xd3, 0xb9, 0x68, 0x86, 0x10, 0x13, 0x1e, 0x78, 0x56, 0xef, 0x36, }; static const unsigned char ecdsa_secp224r1_sha224_2696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2696_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7a, 0xc5, 0x4a, 0x38, 0x1d, 0x9b, 0xd3, 0xf2, 0x69, 0x83, 0x59, 0xd6, 0xf6, 0x58, 0xb5, 0xe4, 0x16, 0x7d, 0x15, 0xa7, 0x5b, 0x57, 0x6e, 0x82, 0xd2, 0xef, 0xbd, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2696 = { .name = "ecdsa_secp224r1_sha224_2696", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2696_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2696_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2696_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 114 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2697 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2697_pubkey[] = { 0xa0, 0xbe, 0x2f, 0x10, 0x14, 0x4b, 0x9b, 0x42, 0xb0, 0x16, 0xf1, 0xbd, 0x9f, 0xca, 0x30, 0xe4, 0xc2, 0x4a, 0xae, 0x47, 0x75, 0x59, 0x6c, 0x7c, 0xdb, 0x07, 0xae, 0x60, 0xd6, 0x0f, 0xf3, 0xa7, 0x0f, 0x15, 0x41, 0x63, 0x1f, 0x60, 0x87, 0xd3, 0xf3, 0xb3, 0xfe, 0x37, 0x6d, 0x23, 0x05, 0xb5, 0x0b, 0x94, 0x82, 0x11, 0x06, 0x41, 0x24, 0x79, }; static const unsigned char ecdsa_secp224r1_sha224_2697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2697_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4f, 0xbb, 0x06, 0x3e, 0x82, 0x40, 0x2e, 0x16, 0xfe, 0x14, 0xed, 0xda, 0x4d, 0x79, 0x86, 0xb0, 0xb8, 0x83, 0x44, 0xa1, 0xf5, 0x3b, 0x0e, 0x26, 0x84, 0xee, 0x7e, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2697 = { .name = "ecdsa_secp224r1_sha224_2697", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2697_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2697_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2697_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 115 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2698 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2698_pubkey[] = { 0x4d, 0x74, 0x39, 0x7a, 0x58, 0x6c, 0x8a, 0xc5, 0xe3, 0x26, 0xbe, 0xd0, 0x37, 0x20, 0xbd, 0xe7, 0x03, 0x7e, 0x4a, 0x07, 0xae, 0xe7, 0x20, 0x9f, 0x70, 0x49, 0x3c, 0xab, 0x10, 0x67, 0x78, 0xbf, 0xd0, 0x81, 0xd1, 0x7a, 0xb6, 0xdc, 0xb8, 0xfd, 0x8a, 0x45, 0x49, 0x62, 0x94, 0x1c, 0x26, 0xec, 0xc1, 0x9c, 0xda, 0x9f, 0xb7, 0x77, 0x19, 0xdb, }; static const unsigned char ecdsa_secp224r1_sha224_2698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2698_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd3, 0xbe, 0x5f, 0x50, 0xd7, 0x26, 0xf9, 0x9b, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6b, 0xfe, 0x78, 0xdd, 0x7a, 0xe6, 0x30, 0xd2, 0x27, 0xef, 0x0b, 0xa8, 0x7a, 0xe3, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2698 = { .name = "ecdsa_secp224r1_sha224_2698", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2698_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2698_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2698_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 116 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2699 for ECDSA, tcId is 117 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2699_pubkey[] = { 0x8c, 0x2f, 0x14, 0x9b, 0x17, 0x38, 0x24, 0x3f, 0x81, 0xa6, 0xf1, 0x21, 0x35, 0x39, 0x5a, 0x2b, 0xa2, 0x71, 0x88, 0x63, 0x62, 0x2e, 0x66, 0xe3, 0x3e, 0xfc, 0x24, 0x1f, 0x56, 0x38, 0xcf, 0x6a, 0xe9, 0xcf, 0xb3, 0x95, 0x78, 0xcf, 0x3a, 0x71, 0x97, 0x02, 0x05, 0x2e, 0x5e, 0x9e, 0x94, 0x02, 0x16, 0xc5, 0x13, 0x6d, 0xcb, 0x6e, 0xf0, 0x85, }; static const unsigned char ecdsa_secp224r1_sha224_2699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2699_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe5, 0xf5, 0x0d, 0x72, 0x6f, 0x99, 0xb8, 0xac, 0x44, 0xbf, 0xf8, 0x76, 0xcb, 0xf7, 0x10, 0xe4, 0x7f, 0x90, 0x87, 0xd1, 0xaf, 0xdf, 0xb1, 0xda, 0xb6, 0xd6, 0xda, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2699 = { .name = "ecdsa_secp224r1_sha224_2699", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2699_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2699_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2699_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 117 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2700 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2700_pubkey[] = { 0xad, 0x52, 0x27, 0xe4, 0x8a, 0xfa, 0xa1, 0x65, 0xe7, 0xb9, 0x7e, 0xf8, 0x21, 0x06, 0x87, 0x55, 0x6e, 0x10, 0x64, 0x3f, 0xda, 0x8a, 0x37, 0x7a, 0xaf, 0x4f, 0x5b, 0xf4, 0x12, 0xe8, 0x6d, 0x4a, 0xe5, 0x5f, 0x44, 0x60, 0xab, 0xa6, 0xa9, 0x32, 0xf3, 0x07, 0xee, 0x78, 0xef, 0xdc, 0x13, 0x6e, 0x9a, 0x3d, 0xf6, 0x31, 0x31, 0x00, 0xbf, 0x4f, }; static const unsigned char ecdsa_secp224r1_sha224_2700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2700_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0xea, 0x1a, 0xe4, 0xdf, 0x33, 0x71, 0x58, 0x89, 0x7f, 0xf0, 0xed, 0x97, 0xef, 0x0b, 0x26, 0x1e, 0x68, 0x1f, 0x65, 0x4b, 0xe2, 0x3a, 0x70, 0x11, 0x51, 0x8b, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2700 = { .name = "ecdsa_secp224r1_sha224_2700", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2700_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2700_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2700_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 118 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2701 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2701_pubkey[] = { 0x3f, 0xb9, 0x4a, 0x31, 0x65, 0xec, 0xde, 0xf4, 0x3f, 0xa2, 0x79, 0x07, 0xed, 0x07, 0x5c, 0xaf, 0x52, 0xc2, 0x54, 0x20, 0xac, 0x7b, 0xc7, 0xbb, 0x90, 0x40, 0x89, 0x92, 0x02, 0x3c, 0x4d, 0x7b, 0x47, 0x75, 0xb5, 0x91, 0xae, 0x22, 0x3d, 0xd4, 0xda, 0x9c, 0xea, 0xab, 0xd7, 0x3b, 0x97, 0x43, 0xdd, 0xab, 0x8b, 0x40, 0x57, 0x6e, 0x39, 0x3f, }; static const unsigned char ecdsa_secp224r1_sha224_2701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2701_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd7, 0x26, 0xf9, 0x9b, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0x2a, 0xa0, 0x7e, 0xc3, 0xcb, 0x1d, 0x94, 0x72, 0xbd, 0x70, 0x4f, 0x40, 0x29, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2701 = { .name = "ecdsa_secp224r1_sha224_2701", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2701_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2701_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2701_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 119 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2702 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2702_pubkey[] = { 0xe4, 0x5f, 0xcf, 0x0a, 0x7f, 0x4d, 0xc2, 0xa3, 0x08, 0xdc, 0x78, 0x68, 0x25, 0x14, 0x23, 0xfb, 0xf7, 0x1a, 0x20, 0x5a, 0x95, 0x46, 0x85, 0x0a, 0x01, 0xa7, 0x32, 0xfc, 0x9a, 0x73, 0xca, 0x4d, 0x41, 0x17, 0x50, 0x76, 0xf2, 0xf3, 0x62, 0xb2, 0x76, 0xec, 0xb0, 0xcc, 0xdb, 0x6e, 0x0b, 0xb3, 0x0c, 0x4a, 0x1b, 0x35, 0xc2, 0xe3, 0xed, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2702_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x97, 0x20, 0xb7, 0x55, 0x41, 0x3c, 0xca, 0x95, 0x06, 0xb5, 0xd2, 0x75, 0x89, 0xe5, 0x8a, 0xc4, 0xbe, 0xd8, 0x56, 0x76, 0x2b, 0xa7, 0xae, 0x20, 0xab, 0x5b, 0x43, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2702 = { .name = "ecdsa_secp224r1_sha224_2702", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2702_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2702_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2702_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 120 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2703 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2703_pubkey[] = { 0x3c, 0x59, 0xe1, 0x39, 0x82, 0xfd, 0x9c, 0x1a, 0x45, 0x99, 0x1b, 0x1e, 0x9d, 0x79, 0xe9, 0x39, 0xa5, 0x2a, 0x62, 0xca, 0x47, 0x97, 0x64, 0xf1, 0x47, 0x7e, 0x28, 0x13, 0x1b, 0x00, 0x4c, 0x9b, 0xff, 0xd7, 0xf0, 0x0c, 0x05, 0xe3, 0x16, 0x8c, 0x62, 0x5c, 0xc9, 0x3a, 0xb7, 0xa0, 0xf1, 0xba, 0x8d, 0x6f, 0xa2, 0x6a, 0x4d, 0x51, 0x62, 0xcb, }; static const unsigned char ecdsa_secp224r1_sha224_2703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2703_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2e, 0x41, 0x6e, 0xaa, 0x82, 0x79, 0x95, 0x2a, 0x0d, 0x6b, 0xa4, 0xeb, 0x13, 0xcb, 0xfe, 0xe6, 0x9c, 0xf7, 0xbc, 0xae, 0x43, 0x72, 0x32, 0xfb, 0xfa, 0x5a, 0x5d, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2703 = { .name = "ecdsa_secp224r1_sha224_2703", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2703_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2703_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2703_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 121 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2704 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2704_pubkey[] = { 0xc6, 0xb8, 0xff, 0x15, 0x2d, 0x7a, 0x1b, 0x7a, 0x99, 0xce, 0x34, 0x83, 0xbd, 0xea, 0xaf, 0x5b, 0xd2, 0xce, 0x64, 0xdc, 0x6b, 0x0f, 0x89, 0xcf, 0x35, 0x44, 0xb8, 0x7c, 0x05, 0x3a, 0xb6, 0xcf, 0x9c, 0xb5, 0x10, 0xdc, 0x14, 0x40, 0xab, 0x4e, 0x41, 0x2a, 0x16, 0x7f, 0x4c, 0x69, 0x36, 0x5f, 0xcf, 0xc9, 0x7f, 0x31, 0xd5, 0xba, 0x45, 0x81, }; static const unsigned char ecdsa_secp224r1_sha224_2704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2704_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc5, 0x62, 0x25, 0xff, 0xc3, 0xb6, 0x5f, 0xbf, 0x14, 0x21, 0x77, 0x60, 0x9d, 0xb1, 0x89, 0xab, 0x5b, 0xd0, 0x13, 0x24, 0x6f, 0x19, 0xe1, 0x1c, 0xa5, 0xb5, 0xa1, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2704 = { .name = "ecdsa_secp224r1_sha224_2704", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2704_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2704_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2704_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 122 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2705 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2705_pubkey[] = { 0x7c, 0x07, 0x72, 0xfb, 0x65, 0x53, 0xc0, 0xec, 0x0d, 0xd1, 0xf7, 0x3b, 0x5d, 0xb3, 0x80, 0x76, 0x4d, 0x9f, 0x2f, 0x7a, 0xfb, 0x4e, 0xac, 0x1e, 0x77, 0x4d, 0xac, 0xd5, 0x6e, 0x2e, 0x5d, 0xe0, 0xdb, 0x63, 0xbf, 0x03, 0xcf, 0x96, 0x75, 0xea, 0xe6, 0xd2, 0xdf, 0xe5, 0x42, 0x4e, 0x79, 0xab, 0x39, 0x49, 0x51, 0xc9, 0xb6, 0x0a, 0xd5, 0xdf, }; static const unsigned char ecdsa_secp224r1_sha224_2705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2705_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa7, 0xdd, 0x83, 0x1f, 0x41, 0x20, 0x17, 0x0b, 0x7f, 0x0a, 0x76, 0xed, 0x26, 0xbc, 0x4e, 0xa9, 0xcc, 0x9e, 0x1a, 0x70, 0x04, 0x8c, 0x1b, 0xb5, 0xf0, 0xa5, 0x54, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2705 = { .name = "ecdsa_secp224r1_sha224_2705", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2705_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2705_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2705_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 123 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2706 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2706_pubkey[] = { 0x41, 0x08, 0xe0, 0xcc, 0xd4, 0x7c, 0xba, 0x09, 0xfb, 0x7e, 0xd4, 0xd9, 0xf3, 0x45, 0x58, 0x23, 0x78, 0x09, 0x65, 0x15, 0x78, 0x61, 0xc1, 0xbf, 0x8f, 0x93, 0xd3, 0x4b, 0x46, 0xd6, 0xfd, 0xb7, 0x1e, 0x9e, 0x89, 0xad, 0xaa, 0xe7, 0x13, 0x76, 0xb1, 0x3f, 0xd1, 0x76, 0x44, 0xb1, 0x1e, 0xed, 0x00, 0xd4, 0x98, 0x78, 0x3d, 0xa0, 0xba, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha224_2706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2706_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2706 = { .name = "ecdsa_secp224r1_sha224_2706", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2706_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2706_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2706_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 124 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2707 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2707_pubkey[] = { 0x2f, 0x2d, 0xa4, 0x0a, 0x1b, 0x72, 0xf6, 0x7b, 0xa6, 0x36, 0x13, 0xa2, 0x43, 0x11, 0x9c, 0x41, 0xc7, 0x25, 0x28, 0x39, 0xcf, 0x10, 0x6e, 0x86, 0xb5, 0xd8, 0xe6, 0xe3, 0x5a, 0x1e, 0x0e, 0x2f, 0xc4, 0x9b, 0x4f, 0x31, 0x6f, 0x0c, 0x0e, 0x72, 0x36, 0x78, 0x57, 0x49, 0xeb, 0x34, 0xce, 0x92, 0x3c, 0x23, 0xae, 0xf3, 0x30, 0xaf, 0x87, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2707_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2707 = { .name = "ecdsa_secp224r1_sha224_2707", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2707_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2707_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2707_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 125 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2708 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2708_pubkey[] = { 0x7d, 0xc0, 0x97, 0x10, 0xf4, 0xf5, 0x86, 0xaf, 0x05, 0xb0, 0x8f, 0x0c, 0x9d, 0xcd, 0x48, 0xb1, 0x30, 0x87, 0x33, 0xc9, 0x77, 0x67, 0xfc, 0x28, 0x6d, 0x1c, 0x72, 0x83, 0x43, 0x53, 0xa7, 0x04, 0xc7, 0x95, 0x0b, 0x8f, 0x4a, 0x11, 0x39, 0x4b, 0xc8, 0xdb, 0x06, 0xad, 0xcc, 0xf1, 0x9d, 0x8e, 0xd9, 0x5c, 0x7f, 0x21, 0x4a, 0x17, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2708_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2708 = { .name = "ecdsa_secp224r1_sha224_2708", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2708_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2708_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2708_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 126 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2709 for ECDSA, tcId is 127 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2709_pubkey[] = { 0xdb, 0xb4, 0x39, 0xe2, 0xc3, 0xe9, 0xd1, 0x82, 0x2b, 0x94, 0xcc, 0xc7, 0xd9, 0x8c, 0x9f, 0xcb, 0x66, 0x8e, 0x65, 0xdd, 0x6a, 0x75, 0x9a, 0xd2, 0xdf, 0xdc, 0xd3, 0x28, 0x82, 0x66, 0x32, 0x34, 0xe6, 0xda, 0x51, 0x2d, 0x7d, 0x7d, 0x5f, 0xe7, 0x91, 0x56, 0xad, 0x0e, 0x19, 0xff, 0xc6, 0x2d, 0x61, 0x8e, 0x3c, 0xf4, 0x82, 0x76, 0x10, 0x6d, }; static const unsigned char ecdsa_secp224r1_sha224_2709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2709_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2709 = { .name = "ecdsa_secp224r1_sha224_2709", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2709_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2709_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2709_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 127 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2710 for ECDSA, tcId is 128 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2710_pubkey[] = { 0xe0, 0x12, 0xdc, 0x20, 0xcc, 0xa5, 0xbd, 0x2a, 0xdf, 0xaa, 0x27, 0xf5, 0x74, 0x19, 0x59, 0x6c, 0xe0, 0x9e, 0xd0, 0xf1, 0x8a, 0x91, 0x48, 0xe3, 0x0a, 0x0f, 0x6e, 0xd2, 0x55, 0xbe, 0xca, 0x1b, 0x5e, 0x3e, 0x24, 0x85, 0xef, 0x95, 0x37, 0xae, 0x48, 0xa6, 0x7b, 0x72, 0xdb, 0xcf, 0x6d, 0x7b, 0x33, 0x37, 0x20, 0x23, 0xa5, 0xc4, 0x43, 0xe8, }; static const unsigned char ecdsa_secp224r1_sha224_2710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2710_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2710 = { .name = "ecdsa_secp224r1_sha224_2710", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2710_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2710_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2710_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 128 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2711 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2711_pubkey[] = { 0xc5, 0x10, 0xab, 0x34, 0xab, 0xd4, 0x85, 0x5c, 0x54, 0xd6, 0x24, 0x07, 0xab, 0xe6, 0xca, 0x09, 0x0c, 0x73, 0xba, 0x49, 0xac, 0xa9, 0xde, 0x9b, 0xf1, 0x17, 0xbc, 0xa2, 0x42, 0xb3, 0xb0, 0x0c, 0x27, 0x2c, 0x22, 0x68, 0x1a, 0xf7, 0xc2, 0x55, 0x12, 0x0f, 0xac, 0x14, 0x8a, 0xd7, 0x3c, 0x81, 0xb4, 0x78, 0x46, 0xe4, 0xad, 0x2f, 0x56, 0x27, }; static const unsigned char ecdsa_secp224r1_sha224_2711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2711_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2711 = { .name = "ecdsa_secp224r1_sha224_2711", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2711_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2711_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2711_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 129 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2712 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2712_pubkey[] = { 0x08, 0xa6, 0xe1, 0x67, 0x53, 0x6a, 0x47, 0xaa, 0xa2, 0x24, 0xfe, 0xc2, 0x1c, 0xe0, 0x77, 0x64, 0x2e, 0xfd, 0xb9, 0x7d, 0x93, 0xae, 0x16, 0xb9, 0x67, 0x22, 0x79, 0xf4, 0x33, 0xfb, 0x9f, 0x1a, 0xbb, 0x25, 0xf2, 0xc0, 0xc3, 0xe6, 0x00, 0x8a, 0xc8, 0x57, 0xed, 0xe4, 0xa8, 0x9c, 0xa8, 0xd9, 0xd0, 0x8b, 0x89, 0x96, 0x61, 0x49, 0x69, 0xac, }; static const unsigned char ecdsa_secp224r1_sha224_2712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2712_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2712 = { .name = "ecdsa_secp224r1_sha224_2712", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2712_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2712_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2712_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 130 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2713 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2713_pubkey[] = { 0x1a, 0x83, 0xe1, 0x85, 0xfc, 0xf3, 0x0e, 0x6c, 0x69, 0xcf, 0x29, 0x2e, 0x49, 0x7d, 0x63, 0xcc, 0x04, 0xe6, 0xfd, 0x07, 0xcb, 0x93, 0x65, 0xa7, 0x4b, 0xe3, 0xc3, 0x9c, 0x6b, 0x2d, 0x56, 0x24, 0x7d, 0xf4, 0x9c, 0xf9, 0x41, 0x76, 0xc4, 0xe8, 0xef, 0xc8, 0x4e, 0xc7, 0x10, 0xcd, 0x0d, 0x61, 0x4d, 0xd0, 0x66, 0xc1, 0x6f, 0x6a, 0xd3, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha224_2713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2713_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2713 = { .name = "ecdsa_secp224r1_sha224_2713", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2713_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2713_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2713_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 131 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2714 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2714_pubkey[] = { 0x2d, 0x59, 0xef, 0xd8, 0x41, 0xa4, 0x4b, 0x83, 0xfd, 0x42, 0xe6, 0xa2, 0x98, 0x4a, 0x53, 0xfa, 0x93, 0xad, 0x24, 0x2c, 0x11, 0x67, 0x8f, 0x92, 0x20, 0x2c, 0xcc, 0xfb, 0x95, 0xbc, 0xaf, 0x0b, 0x2f, 0x6e, 0xb0, 0xe6, 0xd4, 0xd8, 0x3e, 0x32, 0x60, 0xe0, 0x37, 0xd3, 0xdc, 0x0e, 0x48, 0xab, 0x6c, 0x41, 0x41, 0xce, 0x6b, 0x56, 0xca, 0xd0, }; static const unsigned char ecdsa_secp224r1_sha224_2714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2714_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2714 = { .name = "ecdsa_secp224r1_sha224_2714", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2714_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2714_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2714_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 132 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2715 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2715_pubkey[] = { 0x11, 0x61, 0xc7, 0xad, 0xd6, 0xf6, 0x7f, 0x99, 0x5b, 0x93, 0xe1, 0x9e, 0xb1, 0x8b, 0xd5, 0xe7, 0x3f, 0xd7, 0x1d, 0x6b, 0xb1, 0x0d, 0xce, 0xef, 0x0b, 0x79, 0x2e, 0x9c, 0x08, 0xc4, 0x4c, 0xef, 0x98, 0x26, 0xb4, 0xed, 0x67, 0x50, 0x8c, 0x09, 0xd0, 0x7e, 0xc8, 0x57, 0xa0, 0xea, 0x49, 0xed, 0x1a, 0x7f, 0x1f, 0xa2, 0xc7, 0x4c, 0xb8, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2715_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2715 = { .name = "ecdsa_secp224r1_sha224_2715", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2715_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2715_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2715_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 133 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2716 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2716_pubkey[] = { 0x84, 0xdc, 0x3d, 0x2e, 0xbf, 0xcf, 0x34, 0x80, 0x71, 0x3b, 0xae, 0xff, 0x30, 0xad, 0x07, 0x81, 0xbc, 0x8c, 0x4d, 0x06, 0xab, 0x6d, 0xdd, 0x4f, 0x7f, 0x10, 0x45, 0xaf, 0x75, 0x70, 0x53, 0x7c, 0x5d, 0x71, 0xa7, 0x8b, 0x1a, 0x04, 0x1a, 0xca, 0x0f, 0xe3, 0x5f, 0x64, 0x28, 0x24, 0xab, 0xda, 0x8c, 0x3f, 0xf2, 0xe9, 0xfc, 0xf5, 0xc8, 0xcb, }; static const unsigned char ecdsa_secp224r1_sha224_2716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2716_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2716 = { .name = "ecdsa_secp224r1_sha224_2716", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2716_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2716_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2716_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 134 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2717 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2717_pubkey[] = { 0x17, 0x67, 0x57, 0x4e, 0x64, 0x5c, 0x55, 0x0e, 0xf3, 0xd3, 0x53, 0xf7, 0x6d, 0x44, 0x28, 0xf9, 0x61, 0x6a, 0xc2, 0x88, 0xb3, 0x63, 0x78, 0x85, 0x7d, 0xe3, 0x32, 0x62, 0x9f, 0xe0, 0x98, 0x25, 0xa5, 0x7f, 0x3a, 0x0e, 0xc1, 0x11, 0x89, 0xf4, 0x56, 0x02, 0x72, 0x29, 0x7a, 0xb6, 0xd5, 0xe0, 0x95, 0x40, 0x1f, 0xeb, 0xb6, 0x0d, 0x0d, 0xc9, }; static const unsigned char ecdsa_secp224r1_sha224_2717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2717_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x1e, 0xf3, 0x59, 0xe4, 0xbd, 0x14, 0x6f, 0x63, 0xd8, 0x15, 0x5c, 0x5c, 0x25, 0x23, 0xfa, 0x33, 0x53, 0xc9, 0x82, 0x0f, 0x84, 0xf2, 0x81, 0x50, 0xba, 0xd3, 0x81, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2717 = { .name = "ecdsa_secp224r1_sha224_2717", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2717_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2717_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2717_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 135 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2718 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2718_pubkey[] = { 0x17, 0x67, 0x57, 0x4e, 0x64, 0x5c, 0x55, 0x0e, 0xf3, 0xd3, 0x53, 0xf7, 0x6d, 0x44, 0x28, 0xf9, 0x61, 0x6a, 0xc2, 0x88, 0xb3, 0x63, 0x78, 0x85, 0x7d, 0xe3, 0x32, 0x62, 0x60, 0x1f, 0x67, 0xda, 0x5a, 0x80, 0xc5, 0xf1, 0x3e, 0xee, 0x76, 0x0b, 0xa9, 0xfd, 0x8d, 0xd5, 0x85, 0x49, 0x2a, 0x1f, 0x6a, 0xbf, 0xe0, 0x14, 0x49, 0xf2, 0xf2, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2718_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x1e, 0xf3, 0x59, 0xe4, 0xbd, 0x14, 0x6f, 0x63, 0xd8, 0x15, 0x5c, 0x5c, 0x25, 0x23, 0xfa, 0x33, 0x53, 0xc9, 0x82, 0x0f, 0x84, 0xf2, 0x81, 0x50, 0xba, 0xd3, 0x81, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2718 = { .name = "ecdsa_secp224r1_sha224_2718", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2718_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2718_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2718_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 136 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2719 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2719_pubkey[] = { 0xe2, 0xef, 0x8c, 0x8c, 0xcb, 0x58, 0xeb, 0xa2, 0x87, 0xd9, 0x27, 0x9b, 0x34, 0x9e, 0x76, 0x52, 0xcc, 0xa3, 0xe7, 0xcd, 0xa1, 0x88, 0xa5, 0xf1, 0x79, 0xd7, 0x71, 0x42, 0xf8, 0x75, 0x94, 0xf3, 0x66, 0x4c, 0x0f, 0xaf, 0x7b, 0x59, 0x67, 0x0e, 0x35, 0x3a, 0x37, 0x0d, 0x1d, 0x68, 0xad, 0x89, 0xd6, 0xa1, 0xe2, 0x46, 0xb4, 0xd0, 0x3b, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2719_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2719 = { .name = "ecdsa_secp224r1_sha224_2719", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2719_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2719_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2719_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 137 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2720 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2720_pubkey[] = { 0xb8, 0xbf, 0x3e, 0xf9, 0x64, 0x6a, 0xbf, 0xff, 0xb8, 0x42, 0x20, 0x10, 0x4e, 0xc9, 0x96, 0xa9, 0x2c, 0xef, 0x33, 0xf9, 0x32, 0x8e, 0xc4, 0xcb, 0x1e, 0xa6, 0x99, 0x48, 0x4f, 0xea, 0x51, 0xa0, 0xde, 0x9e, 0x9d, 0x80, 0x1b, 0xab, 0xd4, 0x2c, 0xa0, 0x92, 0x4b, 0x36, 0x49, 0x8b, 0xc5, 0x90, 0x0f, 0xbe, 0xb9, 0xcb, 0xd5, 0xad, 0x9c, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha224_2720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2720_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2720 = { .name = "ecdsa_secp224r1_sha224_2720", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2720_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2720_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2720_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 138 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2721 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2721_pubkey[] = { 0x28, 0x6e, 0x80, 0x42, 0x9c, 0x87, 0x96, 0xdc, 0xd8, 0x85, 0xd9, 0x5f, 0x96, 0x0d, 0x20, 0x9f, 0xed, 0x19, 0xf8, 0x7e, 0x2c, 0xe4, 0x23, 0xd1, 0x66, 0xc8, 0xe2, 0x20, 0x2e, 0x30, 0x88, 0x2c, 0x09, 0x97, 0x0d, 0x5d, 0xd5, 0x8b, 0x67, 0xe5, 0xbb, 0x80, 0xaf, 0xfe, 0xc7, 0x42, 0x48, 0xa9, 0xcb, 0x4a, 0x78, 0x33, 0x84, 0xc8, 0xb6, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha224_2721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2721_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2721 = { .name = "ecdsa_secp224r1_sha224_2721", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2721_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2721_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2721_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 139 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2722 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2722_pubkey[] = { 0x55, 0x99, 0xa3, 0xfa, 0xf9, 0x6a, 0xba, 0x73, 0x02, 0xbd, 0x3d, 0x98, 0xcf, 0xde, 0x69, 0x52, 0x5b, 0x72, 0x92, 0x76, 0x23, 0x83, 0xf4, 0xa0, 0xb5, 0xc3, 0x10, 0x39, 0x3f, 0xaa, 0x45, 0xfe, 0xb6, 0xc3, 0x5d, 0x2b, 0x7b, 0xf2, 0x5f, 0xfc, 0x63, 0x3c, 0x42, 0x0e, 0xbf, 0xc4, 0xe7, 0x15, 0x76, 0x53, 0x02, 0xc5, 0xa1, 0x1a, 0xc7, 0x93, }; static const unsigned char ecdsa_secp224r1_sha224_2722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2722_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2722 = { .name = "ecdsa_secp224r1_sha224_2722", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2722_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2722_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2722_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 140 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2723 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2723_pubkey[] = { 0x5b, 0x52, 0x34, 0xb8, 0xdb, 0x6b, 0xbd, 0x39, 0x6e, 0xae, 0x7d, 0x1c, 0xa4, 0xe6, 0xd8, 0x77, 0x82, 0x4c, 0x98, 0xcd, 0xe9, 0xfb, 0xfa, 0xb3, 0x4b, 0x6b, 0x8c, 0xcb, 0x1f, 0x38, 0xae, 0x9f, 0x87, 0xad, 0xc3, 0xe6, 0xd2, 0x47, 0x4e, 0xb5, 0xe3, 0xcd, 0x9a, 0xef, 0xf0, 0x92, 0x73, 0x20, 0x21, 0x4b, 0xe5, 0x50, 0xf5, 0xe6, 0x2e, 0xd4, }; static const unsigned char ecdsa_secp224r1_sha224_2723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2723_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2723 = { .name = "ecdsa_secp224r1_sha224_2723", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2723_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2723_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2723_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 141 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2724 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2724_pubkey[] = { 0xac, 0xed, 0x4e, 0xa8, 0x94, 0x9e, 0x5a, 0xe3, 0x7e, 0xf2, 0xf5, 0xeb, 0x5e, 0x00, 0x67, 0x5d, 0x08, 0xe1, 0x7c, 0x34, 0xbe, 0x66, 0x77, 0xb0, 0xf2, 0x69, 0xb6, 0x72, 0x5e, 0x3a, 0xd0, 0xaf, 0x49, 0xeb, 0xff, 0xf4, 0x15, 0xee, 0x4f, 0x2a, 0x83, 0x8e, 0xad, 0x1f, 0x84, 0xca, 0xfa, 0xa6, 0x52, 0xc1, 0x7a, 0xcc, 0x26, 0x13, 0x07, 0x25, }; static const unsigned char ecdsa_secp224r1_sha224_2724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2724_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2724 = { .name = "ecdsa_secp224r1_sha224_2724", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2724_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2724_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2724_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 142 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2725 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2725_pubkey[] = { 0x3e, 0x8c, 0x1b, 0xcc, 0x16, 0x19, 0x5e, 0x87, 0x69, 0xe2, 0x5d, 0x4c, 0x85, 0x98, 0x07, 0xdf, 0xfe, 0x17, 0x8b, 0xed, 0x5b, 0xca, 0x9d, 0xb0, 0x6e, 0xfa, 0x15, 0x32, 0x4e, 0x3b, 0x53, 0xb3, 0x04, 0x8b, 0x8c, 0xcd, 0x8c, 0xdc, 0x12, 0x65, 0xbe, 0x24, 0x0c, 0x8e, 0xe2, 0x04, 0x06, 0x04, 0x86, 0xa9, 0x9a, 0xd3, 0x1e, 0xaa, 0xd3, 0xa4, }; static const unsigned char ecdsa_secp224r1_sha224_2725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2725_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2725 = { .name = "ecdsa_secp224r1_sha224_2725", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2725_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2725_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2725_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 143 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2726 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2726_pubkey[] = { 0x24, 0x81, 0x93, 0x23, 0xb7, 0xbe, 0x8a, 0xb0, 0x91, 0x0f, 0x7f, 0x33, 0xbd, 0x2f, 0x76, 0x69, 0xc4, 0x4b, 0x13, 0xf0, 0x94, 0x79, 0x96, 0x5e, 0x95, 0x28, 0x7d, 0x13, 0xb0, 0x59, 0x23, 0x45, 0xbe, 0xaf, 0xbf, 0xdb, 0x8c, 0xf3, 0x62, 0x92, 0x69, 0xbd, 0xd8, 0x17, 0x72, 0x8d, 0x5d, 0x5c, 0xd3, 0xc2, 0x8b, 0xc6, 0xc6, 0x41, 0x4a, 0x70, }; static const unsigned char ecdsa_secp224r1_sha224_2726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2726_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2726 = { .name = "ecdsa_secp224r1_sha224_2726", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2726_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2726_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2726_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 144 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2727 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2727_pubkey[] = { 0x44, 0xcf, 0x57, 0xba, 0xc3, 0x0a, 0x83, 0xda, 0x39, 0xf9, 0x0b, 0xf3, 0xfa, 0xac, 0xd5, 0x22, 0x11, 0xa7, 0x0f, 0xb9, 0x25, 0x47, 0xdb, 0x77, 0x78, 0xea, 0x6c, 0x81, 0x2b, 0x3f, 0xd1, 0xbf, 0x14, 0x68, 0x8d, 0x27, 0x70, 0xc5, 0x0c, 0xd5, 0xa8, 0x90, 0xa3, 0x80, 0x7b, 0xa0, 0xe8, 0x61, 0x21, 0x36, 0xa1, 0xb1, 0x1e, 0x03, 0x0f, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2727_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2727 = { .name = "ecdsa_secp224r1_sha224_2727", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2727_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2727_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2727_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 145 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2728 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2728_pubkey[] = { 0xdc, 0x17, 0xf1, 0x00, 0x1d, 0x32, 0x61, 0x27, 0xf7, 0x37, 0x5c, 0xff, 0xa7, 0x0b, 0x75, 0x30, 0xbc, 0xa4, 0xda, 0x10, 0x40, 0xdc, 0x43, 0xd0, 0x04, 0x4a, 0xac, 0xa0, 0x7a, 0x14, 0x6f, 0x04, 0xc5, 0x29, 0x4c, 0xfe, 0x7e, 0x1e, 0xd5, 0x87, 0xda, 0x55, 0xba, 0xe7, 0x0b, 0x7f, 0xa8, 0xe3, 0x2f, 0x6a, 0xa8, 0x00, 0x31, 0x4d, 0x01, 0xdd, }; static const unsigned char ecdsa_secp224r1_sha224_2728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2728_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2728 = { .name = "ecdsa_secp224r1_sha224_2728", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2728_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2728_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2728_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 146 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2729 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2729_pubkey[] = { 0x68, 0xe2, 0xd7, 0x08, 0x8e, 0xac, 0x18, 0xba, 0x77, 0x5b, 0xf6, 0x8c, 0x5c, 0x50, 0x9e, 0x86, 0xaf, 0xd6, 0xf9, 0x34, 0x51, 0xb4, 0xe4, 0xee, 0x1d, 0x73, 0xe2, 0x77, 0xe2, 0x4f, 0xf4, 0xe2, 0x7e, 0xf6, 0xc5, 0x19, 0xdb, 0x67, 0x6d, 0x82, 0x2c, 0x5d, 0xb0, 0x40, 0x48, 0x28, 0x88, 0x01, 0x3c, 0x8f, 0x38, 0x81, 0xbc, 0x9a, 0xc6, 0x5a, }; static const unsigned char ecdsa_secp224r1_sha224_2729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2729_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2729 = { .name = "ecdsa_secp224r1_sha224_2729", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2729_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2729_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2729_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 147 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2730 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2730_pubkey[] = { 0xcd, 0x41, 0x71, 0xad, 0xcb, 0x8b, 0xe7, 0x5e, 0x77, 0x34, 0x06, 0x1a, 0x04, 0x8b, 0x2b, 0xf2, 0x28, 0xd1, 0x67, 0xc2, 0x74, 0x2d, 0x27, 0xf8, 0x54, 0x39, 0x20, 0x46, 0x86, 0x5e, 0xb9, 0x58, 0xeb, 0xd3, 0x20, 0xba, 0x87, 0x66, 0x2a, 0xd3, 0xac, 0x7a, 0xf5, 0x68, 0xc6, 0xbe, 0x0f, 0x09, 0xbe, 0x09, 0x0b, 0xcf, 0xe0, 0x83, 0xb3, 0xe5, }; static const unsigned char ecdsa_secp224r1_sha224_2730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2730_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2730 = { .name = "ecdsa_secp224r1_sha224_2730", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2730_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2730_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2730_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 148 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2731 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2731_pubkey[] = { 0xee, 0xfd, 0xf9, 0x9a, 0xb6, 0x9d, 0x18, 0x88, 0x77, 0x2c, 0xab, 0xe2, 0x1d, 0x40, 0x60, 0x45, 0xe1, 0xbe, 0xab, 0x82, 0x76, 0x1a, 0x70, 0x40, 0xbe, 0xeb, 0x7e, 0xd3, 0x59, 0x71, 0x8c, 0x88, 0x9a, 0xf8, 0x0f, 0x22, 0xf3, 0x20, 0xfb, 0xe6, 0x62, 0xd5, 0xea, 0x0f, 0x65, 0xdf, 0xb4, 0xa5, 0x58, 0x9c, 0x29, 0x4c, 0xe5, 0xb7, 0x33, 0x59, }; static const unsigned char ecdsa_secp224r1_sha224_2731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2731_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2731 = { .name = "ecdsa_secp224r1_sha224_2731", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2731_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2731_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2731_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 149 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2732 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2732_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2732_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2732 = { .name = "ecdsa_secp224r1_sha224_2732", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2732_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2732_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2732_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 150 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2733 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2733_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2733_sig[] = { 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2733 = { .name = "ecdsa_secp224r1_sha224_2733", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2733_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2733_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2733_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 151 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2734 for ECDSA, tcId is 152 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2734_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_2734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2734_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2734 = { .name = "ecdsa_secp224r1_sha224_2734", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2734_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2734_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2734_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 152 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2735 for ECDSA, tcId is 153 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2735_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_2735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2735_sig[] = { 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2735 = { .name = "ecdsa_secp224r1_sha224_2735", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2735_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2735_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2735_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 153 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2736 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2736_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2736_sig[] = { 0x27, 0x70, 0x40, 0x3d, 0x42, 0xb7, 0xb4, 0x5e, 0x55, 0x33, 0x08, 0xd1, 0xf6, 0xa4, 0x80, 0x64, 0x0b, 0x61, 0xca, 0xc0, 0xae, 0x36, 0x66, 0x5d, 0x6f, 0x14, 0xd3, 0x4e, 0x85, 0x50, 0x6b, 0x04, 0x04, 0x26, 0x5e, 0xde, 0xdf, 0x9a, 0x89, 0xfc, 0x7c, 0x9c, 0x7a, 0x55, 0xc1, 0x6c, 0x5b, 0x0d, 0x78, 0x1f, 0x77, 0x4d, 0xe8, 0xf4, 0x6f, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2736 = { .name = "ecdsa_secp224r1_sha224_2736", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2736_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha224_2736_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 154 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2737 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2737_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2737_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_2737_sig[] = { 0xb6, 0x8d, 0xa7, 0x22, 0xbb, 0xba, 0x7f, 0x6a, 0x58, 0x41, 0x7b, 0xb5, 0xd0, 0xdd, 0x88, 0xf4, 0x03, 0x16, 0xfc, 0x62, 0x8b, 0x0e, 0xdf, 0xcb, 0x0f, 0x02, 0xb0, 0x62, 0x5c, 0x74, 0x2e, 0x33, 0x0b, 0x6f, 0xeb, 0xad, 0xf9, 0xa1, 0x2d, 0x58, 0xba, 0x2a, 0x71, 0x99, 0x62, 0x94, 0x57, 0xef, 0x2e, 0x9e, 0x4c, 0xec, 0xd2, 0xf0, 0x9f, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2737 = { .name = "ecdsa_secp224r1_sha224_2737", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2737_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2737_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_2737_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 155 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2738 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2738_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2738_sig[] = { 0x01, 0xec, 0x1f, 0xf1, 0x5c, 0x8a, 0x55, 0xd6, 0x97, 0xa5, 0x42, 0x4d, 0x67, 0x47, 0x53, 0xf8, 0x2f, 0x71, 0x15, 0x93, 0x82, 0x83, 0x68, 0xd2, 0xfb, 0xb4, 0x1a, 0x17, 0x20, 0xd9, 0x08, 0x9d, 0xb7, 0xba, 0xf4, 0x6b, 0x81, 0x35, 0xe1, 0x7e, 0x01, 0x64, 0x5e, 0x73, 0x2d, 0x22, 0xd5, 0xad, 0xb2, 0x0e, 0x37, 0x72, 0xda, 0x74, 0x0e, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2738 = { .name = "ecdsa_secp224r1_sha224_2738", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2738_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2738_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2738_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 156 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2739 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2739_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2739_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2739_sig[] = { 0x3e, 0x46, 0xe9, 0xba, 0x4d, 0xc0, 0x89, 0xff, 0x30, 0xfa, 0x8c, 0x02, 0x09, 0xc3, 0x1b, 0x11, 0xff, 0x49, 0xdb, 0xee, 0xc0, 0x90, 0xf9, 0xf5, 0x3c, 0x00, 0x0c, 0x75, 0x6f, 0x2e, 0x3b, 0x36, 0x36, 0x94, 0x16, 0x60, 0x2b, 0xca, 0x83, 0x20, 0x68, 0x09, 0xed, 0x89, 0x8f, 0xcf, 0x15, 0x8a, 0x56, 0xc2, 0x5a, 0x54, 0x74, 0x14, 0x3f, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2739 = { .name = "ecdsa_secp224r1_sha224_2739", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2739_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2739_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha224_2739_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 157 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2740 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2740_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2740_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2740_sig[] = { 0x77, 0xb3, 0x8d, 0xa3, 0x70, 0x79, 0xd2, 0x7b, 0x83, 0x76, 0x13, 0xac, 0x3e, 0x82, 0x48, 0xd6, 0x6e, 0xab, 0xd5, 0xd6, 0x37, 0x07, 0x6c, 0x8e, 0x62, 0xc7, 0x99, 0x1e, 0xd4, 0x0c, 0xd9, 0xf8, 0x1e, 0xfc, 0x52, 0xdb, 0x44, 0x29, 0xc0, 0xc1, 0xaf, 0x7c, 0x1d, 0x8a, 0x22, 0xb6, 0xc7, 0xba, 0xbb, 0xe7, 0xfb, 0xd8, 0xb5, 0xb3, 0xf0, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2740 = { .name = "ecdsa_secp224r1_sha224_2740", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2740_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2740_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2740_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 158 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2741 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2741_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2741_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2741_sig[] = { 0x8c, 0x03, 0xb3, 0x2c, 0x16, 0x6c, 0x0c, 0x8b, 0x99, 0xd7, 0xf8, 0x76, 0xac, 0xd1, 0x09, 0x44, 0x7e, 0xfb, 0x13, 0xf6, 0xb8, 0x29, 0x45, 0xe7, 0x8d, 0x51, 0xa2, 0x69, 0x65, 0x75, 0x68, 0xf1, 0xa0, 0xa8, 0xbd, 0x7d, 0xf5, 0xff, 0xa4, 0x30, 0x97, 0xeb, 0xb2, 0xb6, 0x44, 0x35, 0xc8, 0xe3, 0x33, 0x5b, 0xca, 0xaf, 0xc6, 0x3f, 0x9e, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2741 = { .name = "ecdsa_secp224r1_sha224_2741", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2741_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2741_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2741_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 159 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2742 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2742_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2742_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2742_sig[] = { 0xd1, 0x99, 0xa3, 0x75, 0x25, 0x3d, 0x30, 0xf1, 0xd2, 0xb4, 0x49, 0x35, 0x42, 0xe9, 0x93, 0x4f, 0x9f, 0x1f, 0x8b, 0x06, 0x80, 0x11, 0x76, 0x79, 0xf5, 0xbc, 0x4a, 0xd2, 0x11, 0x41, 0x9d, 0xdb, 0xf0, 0x2c, 0x8a, 0xd5, 0xf5, 0x18, 0xf8, 0xda, 0xc3, 0x3f, 0x86, 0xa8, 0x5e, 0x77, 0x7a, 0xf5, 0x1a, 0x03, 0x41, 0x32, 0xe2, 0x76, 0x7a, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2742 = { .name = "ecdsa_secp224r1_sha224_2742", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2742_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2742_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2742_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 160 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2743 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2743_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2743_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2743_sig[] = { 0x8f, 0xf8, 0x26, 0x99, 0xe2, 0xe8, 0x28, 0x70, 0xbe, 0x9c, 0xfd, 0xd8, 0xa4, 0x08, 0xbb, 0x34, 0xf8, 0xf3, 0x8a, 0x83, 0xa4, 0xac, 0x83, 0x70, 0xf1, 0x8f, 0x2b, 0xc8, 0x7e, 0x50, 0x08, 0xfa, 0xb6, 0xa0, 0xd4, 0x15, 0x92, 0x00, 0x07, 0x7e, 0xf9, 0x91, 0x8d, 0xad, 0x65, 0x92, 0xcd, 0x83, 0x59, 0x83, 0x88, 0x52, 0xc6, 0x36, 0xac, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2743 = { .name = "ecdsa_secp224r1_sha224_2743", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2743_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2743_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2743_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 161 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2744 for ECDSA, tcId is 162 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2744_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2744_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2744_sig[] = { 0x3f, 0x3b, 0x60, 0xb5, 0x29, 0xae, 0x0f, 0x95, 0x0c, 0x51, 0x72, 0x64, 0xad, 0xf2, 0xe4, 0x81, 0x61, 0x6b, 0xc4, 0x74, 0x16, 0x74, 0x2d, 0x51, 0x03, 0x58, 0x96, 0x60, 0xf7, 0x31, 0xeb, 0xe9, 0x8e, 0x58, 0x38, 0x4b, 0x3a, 0x64, 0xb4, 0x69, 0x6d, 0x4c, 0xc9, 0x61, 0x98, 0x28, 0xad, 0x51, 0xd7, 0xc3, 0x99, 0x80, 0x74, 0x97, 0x09, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2744 = { .name = "ecdsa_secp224r1_sha224_2744", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2744_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2744_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2744_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 162 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2745 for ECDSA, tcId is 163 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2745_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2745_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2745_sig[] = { 0xdc, 0x11, 0xff, 0xdc, 0x6b, 0x78, 0x75, 0x4a, 0x33, 0x5f, 0x16, 0x8c, 0x40, 0x33, 0x91, 0x6a, 0x21, 0x58, 0xd1, 0x25, 0xa3, 0xf4, 0xfe, 0xd9, 0xdc, 0x73, 0x66, 0x61, 0x6d, 0xd8, 0x43, 0x64, 0x71, 0x7d, 0x9f, 0x4b, 0x07, 0x90, 0xf2, 0xb2, 0x82, 0xf9, 0x24, 0x5e, 0xcb, 0x31, 0x68, 0x74, 0xea, 0xc0, 0x25, 0x60, 0x03, 0x97, 0xf1, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2745 = { .name = "ecdsa_secp224r1_sha224_2745", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2745_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2745_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2745_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 163 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2746 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2746_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2746_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2746_sig[] = { 0xa5, 0x9b, 0x25, 0xb7, 0x86, 0xd5, 0x5f, 0x26, 0xb0, 0x4d, 0xfe, 0x90, 0xee, 0x02, 0xa6, 0xbd, 0xe6, 0x4e, 0xd6, 0xe4, 0x31, 0xdc, 0x9f, 0xbd, 0xc3, 0xab, 0x36, 0x0e, 0xfc, 0x14, 0xb5, 0xad, 0x20, 0xf3, 0x9d, 0xa9, 0x90, 0x0e, 0x35, 0x43, 0x79, 0x36, 0xc8, 0x62, 0x6f, 0xcc, 0xf6, 0x63, 0x2e, 0x7a, 0x3d, 0x9e, 0x58, 0x7e, 0x33, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2746 = { .name = "ecdsa_secp224r1_sha224_2746", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2746_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2746_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2746_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 164 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2747 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2747_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2747_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2747_sig[] = { 0x2e, 0xda, 0x1f, 0x96, 0xc1, 0xa6, 0xe3, 0xad, 0x8a, 0x33, 0x21, 0xce, 0x82, 0xcb, 0xb1, 0x3a, 0x5b, 0x93, 0x5b, 0x50, 0x1a, 0xbf, 0x6c, 0x06, 0xf7, 0xfd, 0x2b, 0x3f, 0xe8, 0x10, 0x50, 0xc3, 0xe5, 0xf5, 0x3a, 0x3c, 0x7b, 0x9d, 0x0b, 0xdb, 0x9e, 0xd9, 0x2a, 0x32, 0x6d, 0xfe, 0xac, 0x44, 0x79, 0x1b, 0xa1, 0xab, 0xe4, 0xd6, 0xe9, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2747 = { .name = "ecdsa_secp224r1_sha224_2747", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2747_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2747_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2747_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 165 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2748 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2748_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2748_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2748_sig[] = { 0x60, 0xf5, 0xe0, 0x93, 0xfd, 0xa0, 0x8f, 0xc1, 0x4a, 0xc9, 0x9d, 0x82, 0x0a, 0x18, 0xad, 0x13, 0x70, 0xc5, 0x81, 0x50, 0xbe, 0xa0, 0xac, 0xa2, 0x4f, 0xc6, 0xdb, 0x9d, 0xc2, 0x22, 0x0a, 0x0e, 0xbb, 0xf4, 0x89, 0x6e, 0x68, 0xfd, 0xb5, 0xbd, 0x82, 0x4f, 0x88, 0x29, 0x1c, 0x1c, 0x86, 0x2b, 0x91, 0x6f, 0x9c, 0x4a, 0xf8, 0x7f, 0x8f, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2748 = { .name = "ecdsa_secp224r1_sha224_2748", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2748_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2748_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2748_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 166 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2749 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2749_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2749_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2749_sig[] = { 0x2e, 0xad, 0x37, 0x84, 0x6a, 0x5e, 0x36, 0xa4, 0x90, 0xb7, 0x51, 0x40, 0xbd, 0xc7, 0xb6, 0x36, 0xc6, 0xe9, 0xf6, 0xd8, 0xf9, 0x80, 0xf6, 0xfa, 0xdb, 0x08, 0xf7, 0x69, 0xe1, 0xfe, 0x13, 0x0a, 0xe1, 0x79, 0x8c, 0x19, 0x6d, 0x7b, 0xe6, 0x2c, 0x7a, 0x5d, 0xdb, 0x31, 0x68, 0xcf, 0x4b, 0x8d, 0x48, 0xb6, 0xb6, 0xb4, 0xdc, 0x94, 0xab, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2749 = { .name = "ecdsa_secp224r1_sha224_2749", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2749_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2749_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2749_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 167 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2750 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2750_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2750_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2750_sig[] = { 0xa8, 0xa4, 0xc9, 0x41, 0x6d, 0x72, 0xc8, 0x60, 0x57, 0x3d, 0x07, 0x32, 0x81, 0xcb, 0x08, 0xc8, 0x6a, 0xd6, 0x53, 0x13, 0xf0, 0x6b, 0x15, 0xa3, 0x29, 0xe8, 0x2e, 0xb2, 0x5a, 0x6e, 0xdd, 0x2f, 0x08, 0x16, 0xb7, 0x26, 0x3d, 0x91, 0x5d, 0x72, 0xc6, 0x7d, 0x50, 0xa8, 0x54, 0xe3, 0xab, 0xee, 0x5c, 0xde, 0x1b, 0x67, 0x9a, 0x0c, 0xef, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2750 = { .name = "ecdsa_secp224r1_sha224_2750", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2750_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2750_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2750_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 168 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2751 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2751_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2751_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2751_sig[] = { 0x57, 0x6b, 0xb8, 0x6c, 0x51, 0x7b, 0xfe, 0xcd, 0xc9, 0x30, 0xa4, 0xc8, 0x50, 0x17, 0x25, 0x54, 0x8d, 0x42, 0x5a, 0xfb, 0xb9, 0x6d, 0x93, 0xf5, 0xc1, 0xe2, 0xa0, 0xe1, 0x77, 0x24, 0x8c, 0x5e, 0xcd, 0x62, 0x0c, 0x43, 0x14, 0x38, 0xc5, 0x0e, 0x6b, 0xee, 0x68, 0x58, 0x09, 0x1b, 0x54, 0xa8, 0x7f, 0x85, 0x48, 0xae, 0x35, 0xc2, 0x10, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2751 = { .name = "ecdsa_secp224r1_sha224_2751", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2751_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2751_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2751_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 169 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2752 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2752_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2752_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2752_sig[] = { 0x34, 0xe4, 0x1c, 0xba, 0x62, 0x8f, 0xd8, 0x78, 0x7b, 0xa1, 0xa5, 0x28, 0xf6, 0x01, 0x5d, 0x2c, 0xae, 0x01, 0x5c, 0x1c, 0x9a, 0x86, 0x6e, 0x08, 0xa7, 0x13, 0x38, 0x01, 0x83, 0xd4, 0x22, 0xff, 0xdd, 0x99, 0xcc, 0x3c, 0x6d, 0x70, 0x96, 0xef, 0x92, 0x7f, 0x0b, 0x11, 0x98, 0x8d, 0x18, 0x24, 0xe6, 0xe9, 0x38, 0x40, 0xff, 0x66, 0x6c, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2752 = { .name = "ecdsa_secp224r1_sha224_2752", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2752_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2752_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2752_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 170 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2753 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2753_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2753_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2753_sig[] = { 0x25, 0x58, 0xa4, 0x2e, 0x79, 0x68, 0x92, 0x44, 0xbc, 0xcd, 0x5e, 0x85, 0x5f, 0x6a, 0x1e, 0x42, 0xb4, 0xff, 0x72, 0x68, 0x73, 0xf3, 0x0b, 0x53, 0x2b, 0x89, 0xef, 0x53, 0x07, 0xf9, 0xbd, 0x94, 0x77, 0x85, 0x18, 0x71, 0x75, 0xd8, 0x48, 0xb6, 0xe2, 0xd7, 0x9f, 0x7a, 0xb3, 0xbb, 0xc1, 0x08, 0x7b, 0x42, 0x59, 0x0b, 0x0c, 0xfb, 0x25, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2753 = { .name = "ecdsa_secp224r1_sha224_2753", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2753_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2753_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2753_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 171 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2754 for ECDSA, tcId is 172 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2754_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2754_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2754_sig[] = { 0xd5, 0xfe, 0x7d, 0xd5, 0xfb, 0x4f, 0xd1, 0xea, 0x5c, 0xe6, 0x6c, 0x08, 0x24, 0xf5, 0x3f, 0x96, 0xce, 0x47, 0xfd, 0x9b, 0x6c, 0x63, 0xb4, 0xd5, 0x78, 0x27, 0xfd, 0x17, 0xbc, 0xe5, 0xbc, 0x3a, 0xf7, 0x05, 0xaf, 0xaa, 0xcb, 0x81, 0xbf, 0xa6, 0xd5, 0x52, 0xd6, 0x19, 0x89, 0x62, 0xfe, 0xce, 0x9f, 0xba, 0x41, 0x54, 0x6c, 0x60, 0x2d, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2754 = { .name = "ecdsa_secp224r1_sha224_2754", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2754_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2754_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2754_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 172 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2755 for ECDSA, tcId is 173 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2755_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2755_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2755_sig[] = { 0x8c, 0x1d, 0xa2, 0xf0, 0x7c, 0xdc, 0xbc, 0xe4, 0xdb, 0x80, 0x67, 0xb8, 0x63, 0x46, 0x8c, 0xfc, 0x72, 0x8d, 0xf5, 0x29, 0x80, 0x22, 0x90, 0x28, 0x68, 0x9e, 0x57, 0xb6, 0x32, 0x17, 0x5c, 0x13, 0x90, 0xa4, 0xb2, 0xca, 0xb6, 0x35, 0x9b, 0xab, 0x9f, 0x85, 0x49, 0x57, 0xd4, 0xfd, 0x79, 0x76, 0xc9, 0xc6, 0xd9, 0x20, 0xc8, 0x71, 0xc0, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2755 = { .name = "ecdsa_secp224r1_sha224_2755", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2755_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2755_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2755_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 173 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2756 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2756_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2756_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2756_sig[] = { 0xe4, 0x6d, 0x4f, 0x11, 0xb8, 0x6b, 0x5a, 0x12, 0xf6, 0xfe, 0x78, 0x1d, 0x1f, 0x93, 0x4e, 0xf2, 0xb3, 0x0e, 0x78, 0xf6, 0xf9, 0xcc, 0x86, 0xa9, 0x99, 0x6e, 0x20, 0xc0, 0x83, 0x51, 0x97, 0x4b, 0x96, 0x55, 0x26, 0x03, 0x4a, 0x0c, 0xce, 0xf0, 0xe7, 0xd3, 0xbc, 0x13, 0xd9, 0x17, 0x98, 0x15, 0x14, 0x88, 0xc9, 0x15, 0x33, 0x14, 0x3f, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2756 = { .name = "ecdsa_secp224r1_sha224_2756", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2756_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2756_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2756_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 174 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2757 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2757_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2757_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2757_sig[] = { 0x30, 0x5c, 0xcf, 0x0b, 0x5d, 0x0c, 0xf3, 0x3d, 0xc7, 0x45, 0xbb, 0x7c, 0x79, 0x64, 0xc2, 0x33, 0xf6, 0xcf, 0xd8, 0x89, 0x2a, 0x1c, 0x1a, 0xe9, 0xf5, 0x0b, 0x2f, 0x3f, 0x78, 0x5f, 0x6e, 0x85, 0xf5, 0xe6, 0x52, 0x58, 0x7c, 0x6e, 0x15, 0xd0, 0xc4, 0x5c, 0x42, 0x72, 0x78, 0xcf, 0x65, 0xbb, 0x14, 0x29, 0xa5, 0x7d, 0x88, 0x26, 0xca, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2757 = { .name = "ecdsa_secp224r1_sha224_2757", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2757_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2757_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2757_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 175 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2758 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2758_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2758_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2758_sig[] = { 0x0e, 0x4f, 0xde, 0x0a, 0xc8, 0xd3, 0x75, 0x36, 0x50, 0x5f, 0x7b, 0x8b, 0xdc, 0x2d, 0x22, 0xc5, 0xc3, 0x34, 0xb0, 0x64, 0xac, 0x5e, 0xd2, 0x7b, 0xea, 0x9c, 0x17, 0x9e, 0xc4, 0xd6, 0xbf, 0x82, 0x9d, 0xd5, 0x47, 0x00, 0x0d, 0x6f, 0x70, 0xb9, 0xad, 0x9e, 0x9c, 0x15, 0x03, 0xbe, 0xbc, 0xf1, 0xd9, 0x5c, 0x26, 0x08, 0x94, 0x2c, 0xa1, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2758 = { .name = "ecdsa_secp224r1_sha224_2758", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2758_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2758_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2758_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 176 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2759 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2759_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2759_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2759_sig[] = { 0x81, 0x8a, 0xfc, 0xaf, 0x49, 0x1d, 0xa9, 0xd0, 0x8a, 0x7c, 0xc2, 0x93, 0x18, 0xd5, 0xe8, 0x5d, 0xce, 0x56, 0x8d, 0xcc, 0xa7, 0x01, 0x80, 0x59, 0xf4, 0x4e, 0x9b, 0x7e, 0xbf, 0x32, 0xa2, 0x33, 0xd5, 0xfc, 0x6e, 0xd8, 0xe2, 0xd9, 0x27, 0x0b, 0x1b, 0xda, 0xd4, 0xbb, 0xd2, 0xa0, 0xf2, 0xc2, 0x93, 0xd2, 0x89, 0xbd, 0x91, 0xff, 0xbc, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2759 = { .name = "ecdsa_secp224r1_sha224_2759", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2759_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2759_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2759_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 177 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2760 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2760_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2760_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2760_sig[] = { 0x0e, 0x05, 0xed, 0x67, 0x5c, 0x67, 0x3e, 0x5e, 0x70, 0xa4, 0xfd, 0xd5, 0xa4, 0x7b, 0x11, 0x4c, 0x5d, 0x54, 0x2d, 0x4f, 0x6d, 0x7a, 0x36, 0x75, 0x97, 0xd7, 0x13, 0xea, 0x26, 0xd7, 0x0d, 0x65, 0xc4, 0x84, 0x30, 0x37, 0x33, 0x63, 0x98, 0x78, 0x10, 0xbd, 0xcc, 0x55, 0x6e, 0x02, 0x71, 0x8e, 0xab, 0x21, 0x44, 0x03, 0xae, 0x00, 0x8d, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2760 = { .name = "ecdsa_secp224r1_sha224_2760", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2760_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2760_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2760_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 178 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2761 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2761_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2761_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2761_sig[] = { 0xab, 0x7a, 0x19, 0xee, 0xcf, 0x63, 0xe9, 0x66, 0x82, 0x78, 0x96, 0x3b, 0x65, 0x23, 0x6b, 0x27, 0x68, 0xe5, 0x7c, 0xae, 0x0e, 0x26, 0x8c, 0xb8, 0x6a, 0x0d, 0xdd, 0xa1, 0x88, 0x29, 0xf5, 0xd3, 0xa3, 0x39, 0x4f, 0x94, 0x67, 0xba, 0x62, 0xe6, 0x6e, 0xf1, 0x76, 0x8e, 0x3e, 0x54, 0xf9, 0x3e, 0xd2, 0x3e, 0xc9, 0x62, 0xbc, 0x44, 0x3c, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2761 = { .name = "ecdsa_secp224r1_sha224_2761", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2761_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2761_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2761_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 179 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2762 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2762_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2762_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2762_sig[] = { 0x17, 0x11, 0x1a, 0x77, 0xcf, 0x79, 0xbe, 0xad, 0x45, 0x6e, 0xd8, 0x6a, 0x7d, 0x8a, 0x93, 0x55, 0x31, 0x44, 0x02, 0x81, 0xeb, 0x8b, 0x15, 0xa8, 0x85, 0xe3, 0x41, 0xc0, 0xfd, 0xc3, 0x95, 0x8d, 0x04, 0xf0, 0x37, 0xb1, 0xd4, 0xbb, 0x2c, 0xee, 0x30, 0x7b, 0x52, 0x01, 0xbe, 0x06, 0x2e, 0x0d, 0x4e, 0x08, 0x9d, 0xf1, 0xc1, 0x91, 0x76, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2762 = { .name = "ecdsa_secp224r1_sha224_2762", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2762_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2762_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2762_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 180 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2763 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2763_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2763_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2763_sig[] = { 0xac, 0xaf, 0xa1, 0xe3, 0x33, 0x45, 0xee, 0xba, 0x0c, 0x33, 0x8c, 0x22, 0x04, 0xb4, 0xcd, 0x8b, 0xa2, 0x1d, 0xe7, 0xec, 0x3e, 0x12, 0x13, 0x31, 0x70, 0x38, 0xe9, 0x68, 0x0b, 0x42, 0xfb, 0xba, 0xed, 0xa9, 0x8a, 0x35, 0xda, 0x0d, 0xe4, 0xc7, 0x95, 0x46, 0xf3, 0xa0, 0xf7, 0xd9, 0xde, 0xc2, 0x75, 0xd2, 0xcd, 0x67, 0x1f, 0x93, 0xc8, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2763 = { .name = "ecdsa_secp224r1_sha224_2763", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2763_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2763_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2763_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 181 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2764 for ECDSA, tcId is 182 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2764_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2764_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2764_sig[] = { 0xa3, 0xfe, 0x71, 0xa2, 0xa5, 0x6f, 0x55, 0x4e, 0x98, 0xfd, 0x10, 0xa8, 0x09, 0x8c, 0x2a, 0x54, 0x3c, 0x98, 0xbc, 0x6b, 0x36, 0x02, 0xef, 0x39, 0xf2, 0x41, 0x23, 0x08, 0x5d, 0x1d, 0x68, 0xf9, 0xa8, 0x70, 0xef, 0x2b, 0xc8, 0x74, 0x84, 0xb3, 0x38, 0x65, 0x49, 0xfa, 0xe9, 0x58, 0x11, 0xab, 0x72, 0xbc, 0x0e, 0x3a, 0x51, 0x47, 0x20, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2764 = { .name = "ecdsa_secp224r1_sha224_2764", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2764_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2764_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2764_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 182 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2765 for ECDSA, tcId is 183 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2765_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2765_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2765_sig[] = { 0x13, 0x2f, 0x76, 0x25, 0x70, 0x47, 0x56, 0xc1, 0x3f, 0x2b, 0xfa, 0x44, 0x9e, 0x60, 0x95, 0x2f, 0x83, 0x6f, 0x49, 0x04, 0x66, 0x0b, 0x5b, 0x1d, 0xa0, 0x7e, 0x5a, 0x9f, 0x82, 0xb4, 0xab, 0xaf, 0xc4, 0x0e, 0x8f, 0xd1, 0x9b, 0x0c, 0x96, 0x7f, 0x02, 0xff, 0xf1, 0x52, 0x73, 0x7c, 0xe0, 0x11, 0x53, 0x65, 0x8d, 0xf4, 0x45, 0xc4, 0xd7, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2765 = { .name = "ecdsa_secp224r1_sha224_2765", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2765_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2765_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2765_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 183 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2766 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2766_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2766_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2766_sig[] = { 0xf3, 0x6a, 0x83, 0x47, 0xc6, 0xfe, 0x03, 0x97, 0xa1, 0x16, 0x1a, 0x36, 0x4c, 0xbc, 0x4b, 0xdf, 0xb4, 0xd8, 0xb7, 0x89, 0x4c, 0xba, 0xa6, 0xed, 0xc5, 0x5a, 0x4f, 0xf7, 0x9c, 0x9c, 0x90, 0x51, 0x5d, 0xa5, 0xe6, 0x02, 0xd6, 0x2e, 0x99, 0xf4, 0x8e, 0xac, 0x41, 0x4e, 0x91, 0x3d, 0xd0, 0xb7, 0xcb, 0xf6, 0x80, 0xc1, 0xa5, 0x39, 0x99, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2766 = { .name = "ecdsa_secp224r1_sha224_2766", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2766_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2766_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2766_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 184 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2767 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2767_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_2767_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2767_sig[] = { 0x21, 0x25, 0xec, 0xc0, 0x8e, 0x52, 0xe9, 0xe3, 0x9e, 0x59, 0x01, 0x17, 0xde, 0x21, 0x45, 0xbd, 0x87, 0x96, 0x26, 0xcb, 0x87, 0x18, 0x0e, 0x52, 0xe9, 0xd3, 0xce, 0x03, 0x8f, 0x7e, 0x83, 0x8d, 0x0e, 0x8f, 0xb8, 0x00, 0x05, 0xfe, 0x3c, 0x72, 0xfc, 0xa1, 0xb7, 0xcc, 0x08, 0xed, 0x32, 0x1a, 0x34, 0x48, 0x78, 0x96, 0xb0, 0xc9, 0x0b, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2767 = { .name = "ecdsa_secp224r1_sha224_2767", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2767_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2767_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2767_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 185 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2768 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2768_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_2768_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2768_sig[] = { 0xe4, 0x85, 0x74, 0x7a, 0xc2, 0xf3, 0xd0, 0x45, 0xe0, 0x10, 0xcd, 0xad, 0xab, 0x4f, 0xd5, 0xdb, 0xd5, 0x55, 0x6c, 0x00, 0x08, 0x44, 0x5f, 0xb7, 0x3e, 0x07, 0xcd, 0x90, 0xe2, 0x13, 0x3a, 0x79, 0x06, 0xae, 0xac, 0x50, 0x48, 0x52, 0xe0, 0x9e, 0x6d, 0x05, 0x7f, 0x29, 0xab, 0x21, 0x36, 0x8c, 0xfc, 0x4e, 0x23, 0x94, 0xbe, 0x56, 0x5e, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2768 = { .name = "ecdsa_secp224r1_sha224_2768", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2768_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2768_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2768_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 186 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2769 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha224_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2769_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_2769_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2769_sig[] = { 0xa4, 0xde, 0x0d, 0x93, 0x1d, 0xda, 0xb9, 0x0e, 0x66, 0x7e, 0xbc, 0x0a, 0xd8, 0x00, 0xce, 0x49, 0xe9, 0x71, 0xc6, 0x05, 0x43, 0xab, 0xdc, 0x46, 0xce, 0xff, 0xf9, 0x26, 0x55, 0x08, 0x16, 0x17, 0x0b, 0xd8, 0x75, 0x93, 0xb9, 0xfb, 0x8a, 0xd5, 0xed, 0x9a, 0xb4, 0xdd, 0xb1, 0x24, 0x03, 0xff, 0x6f, 0xe0, 0x32, 0x25, 0x28, 0x33, 0xba, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2769 = { .name = "ecdsa_secp224r1_sha224_2769", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2769_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2769_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2769_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 187 in file ecdsa_secp224r1_sha224_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2770 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2770_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2770_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x38, 0x78, 0x8e, 0x1b, 0x77, 0x70, 0xb1, 0x8f, 0xd1, 0xaa, 0x6a, 0x26, 0xd7, 0xc6, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2770 = { .name = "ecdsa_secp224r1_sha224_2770", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2770_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2770_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2770_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2771 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2771_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2771_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2771 = { .name = "ecdsa_secp224r1_sha224_2771", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2771_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2771_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2771_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2772 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2772_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2772_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2772 = { .name = "ecdsa_secp224r1_sha224_2772", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2772_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2772_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2772_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2773 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2773_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2773_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2773 = { .name = "ecdsa_secp224r1_sha224_2773", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2773_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2773_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2773_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2774 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2774_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2774_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2774 = { .name = "ecdsa_secp224r1_sha224_2774", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2774_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2774_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2774_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2775 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2775_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2775_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2775 = { .name = "ecdsa_secp224r1_sha224_2775", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2775_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2775_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2775_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2776 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2776_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2776_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2776 = { .name = "ecdsa_secp224r1_sha224_2776", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2776_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2776_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2776_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2777 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2777_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2777_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2777 = { .name = "ecdsa_secp224r1_sha224_2777", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2777_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2777_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2777_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2778 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2778_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2778_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2778 = { .name = "ecdsa_secp224r1_sha224_2778", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2778_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2778_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2778_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2779 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2779_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2779_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2779 = { .name = "ecdsa_secp224r1_sha224_2779", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2779_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2779_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2779_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2780 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2780_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2780_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2780 = { .name = "ecdsa_secp224r1_sha224_2780", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2780_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2780_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2780_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2781 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2781_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2781_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2781 = { .name = "ecdsa_secp224r1_sha224_2781", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2781_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2781_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2781_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2782 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2782_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2782_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2782 = { .name = "ecdsa_secp224r1_sha224_2782", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2782_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2782_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2782_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2783 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2783_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2783_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x05, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2783 = { .name = "ecdsa_secp224r1_sha224_2783", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2783_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2783_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2783_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2784 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2784_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2784_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2784 = { .name = "ecdsa_secp224r1_sha224_2784", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2784_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2784_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2784_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2785 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2785_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2785_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2785 = { .name = "ecdsa_secp224r1_sha224_2785", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2785_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2785_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2785_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2786 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2786_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2786_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2786 = { .name = "ecdsa_secp224r1_sha224_2786", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2786_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2786_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2786_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2787 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2787_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2787_sig[] = { 0x72, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2787 = { .name = "ecdsa_secp224r1_sha224_2787", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2787_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2787_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2787_sig, .siglen = 56, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2788 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2788_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2788_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x02, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2788 = { .name = "ecdsa_secp224r1_sha224_2788", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2788_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2788_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2788_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2789 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2789_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2789_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x8a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2789 = { .name = "ecdsa_secp224r1_sha224_2789", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2789_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2789_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2789_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2790 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2790_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2790_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2790 = { .name = "ecdsa_secp224r1_sha224_2790", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2790_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2790_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2790_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2791 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2791_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2791_sig[] = { 0x00, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2791 = { .name = "ecdsa_secp224r1_sha224_2791", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2791_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2791_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2791_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2792 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2792_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2792_sig[] = { 0x00, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2792 = { .name = "ecdsa_secp224r1_sha224_2792", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2792_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2792_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2792_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2793 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2793_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2793_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2793_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2793 = { .name = "ecdsa_secp224r1_sha224_2793", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2793_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2793_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2793_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2794 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2794_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2794_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2794_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2794 = { .name = "ecdsa_secp224r1_sha224_2794", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2794_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2794_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2794_sig, .siglen = 56, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2795 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2795_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2795_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2795_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2795 = { .name = "ecdsa_secp224r1_sha224_2795", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2795_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2795_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2795_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2796 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2796_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2796_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2796_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2796 = { .name = "ecdsa_secp224r1_sha224_2796", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2796_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2796_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2796_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2797 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2797_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2797_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2797_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2797 = { .name = "ecdsa_secp224r1_sha224_2797", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2797_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2797_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2797_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2798 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2798_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2798_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2798_sig[] = { 0x01, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x26, 0xfc, 0x2a, 0x84, 0xbb, 0xe2, 0xe2, 0xa2, 0xe8, 0x4a, 0xec, 0xed, 0x76, 0x72, 0x47, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2798 = { .name = "ecdsa_secp224r1_sha224_2798", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2798_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2798_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2798_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2799 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2799_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2799_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2799_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x28, 0xce, 0xe4, 0xc3, 0x4a, 0x02, 0x66, 0x7b, 0x2d, 0xf8, 0x62, 0x34, 0xbe, 0x1d, 0xcd, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2799 = { .name = "ecdsa_secp224r1_sha224_2799", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2799_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2799_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2799_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2800 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2800_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2800_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2800_sig[] = { 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd8, 0x1a, 0x78, 0x5b, 0xfd, 0x0d, 0x5b, 0x70, 0xf4, 0xde, 0x58, 0x6e, 0xe5, 0xb7, 0xf6, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2800 = { .name = "ecdsa_secp224r1_sha224_2800", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2800_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2800_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2800_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2801 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2801_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2801_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2801_sig[] = { 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd7, 0x31, 0x1b, 0x3c, 0xb5, 0xfd, 0x99, 0x84, 0xd2, 0x07, 0x9d, 0xcb, 0x41, 0xe2, 0x33, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2801 = { .name = "ecdsa_secp224r1_sha224_2801", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2801_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2801_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2801_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2802 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2802_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2802_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2802_sig[] = { 0xfe, 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd9, 0x03, 0xd5, 0x7b, 0x44, 0x1d, 0x1d, 0x5d, 0x17, 0xb5, 0x13, 0x12, 0x89, 0x8d, 0xb9, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2802 = { .name = "ecdsa_secp224r1_sha224_2802", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2802_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2802_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2802_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2803 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2803_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2803_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2803_sig[] = { 0x01, 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2803 = { .name = "ecdsa_secp224r1_sha224_2803", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2803_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2803_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2803_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2804 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2804_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2804_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2804_sig[] = { 0x8f, 0xfb, 0x65, 0x0c, 0xe0, 0x7c, 0xb7, 0x98, 0xc2, 0xa9, 0x31, 0x31, 0xd4, 0xd8, 0x1a, 0x78, 0x5b, 0xfd, 0x0d, 0x5b, 0x70, 0xf4, 0xde, 0x58, 0x6e, 0xe5, 0xb7, 0xf6, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2804 = { .name = "ecdsa_secp224r1_sha224_2804", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2804_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2804_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2804_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2805 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2805_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2805_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2805_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x01, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc5, 0xb4, 0xb7, 0xa5, 0xfa, 0x6f, 0xca, 0x97, 0xe8, 0xa8, 0x20, 0x91, 0xe0, 0x8d, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2805 = { .name = "ecdsa_secp224r1_sha224_2805", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2805_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2805_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2805_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2806 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2806_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2806_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc7, 0x87, 0x71, 0xe4, 0x88, 0x8f, 0x4e, 0x70, 0x2e, 0x55, 0x95, 0xd9, 0x28, 0x39, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2806 = { .name = "ecdsa_secp224r1_sha224_2806", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2806_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2806_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2806_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2807 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2807_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2807_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x39, 0x61, 0xeb, 0x3a, 0xbe, 0x80, 0x73, 0x7b, 0xf4, 0x81, 0x24, 0xca, 0x7b, 0x9c, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2807 = { .name = "ecdsa_secp224r1_sha224_2807", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2807_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2807_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2807_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2808 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2808_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2808_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0xfe, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x3a, 0x4b, 0x48, 0x5a, 0x05, 0x90, 0x35, 0x68, 0x17, 0x57, 0xdf, 0x6e, 0x1f, 0x72, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2808 = { .name = "ecdsa_secp224r1_sha224_2808", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2808_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2808_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2808_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2809 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2809_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2809_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x01, 0xd7, 0xbf, 0x40, 0xdb, 0x09, 0x09, 0x94, 0x1d, 0x78, 0xf9, 0x94, 0x83, 0x40, 0xc6, 0x9e, 0x14, 0xc5, 0x41, 0x7f, 0x8c, 0x84, 0x0b, 0x7e, 0xdb, 0x35, 0x84, 0x63, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2809 = { .name = "ecdsa_secp224r1_sha224_2809", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2809_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2809_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2809_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2810 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2810_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2810_sig[] = { 0x70, 0x04, 0x9a, 0xf3, 0x1f, 0x83, 0x48, 0x67, 0x3d, 0x56, 0xce, 0xce, 0x2b, 0x27, 0xe5, 0x87, 0xa4, 0x02, 0xf2, 0xa4, 0x8f, 0x0b, 0x21, 0xa7, 0x91, 0x1a, 0x48, 0x0a, 0x28, 0x40, 0xbf, 0x24, 0xf6, 0xf6, 0x6b, 0xe2, 0x87, 0x06, 0x6b, 0x7c, 0xbf, 0x39, 0x61, 0xeb, 0x3a, 0xbe, 0x80, 0x73, 0x7b, 0xf4, 0x81, 0x24, 0xca, 0x7b, 0x9c, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2810 = { .name = "ecdsa_secp224r1_sha224_2810", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2810_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2810_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2810_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2811 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2811_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2811_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2811 = { .name = "ecdsa_secp224r1_sha224_2811", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2811_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2811_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2811_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2812 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2812_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2812_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2812 = { .name = "ecdsa_secp224r1_sha224_2812", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2812_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2812_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2812_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2813 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2813_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2813_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2813 = { .name = "ecdsa_secp224r1_sha224_2813", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2813_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2813_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2813_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2814 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2814_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2814_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2814 = { .name = "ecdsa_secp224r1_sha224_2814", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2814_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2814_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2814_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2815 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2815_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2815_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2815 = { .name = "ecdsa_secp224r1_sha224_2815", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2815_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2815_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2815_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2816 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2816_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2816_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2816_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2816 = { .name = "ecdsa_secp224r1_sha224_2816", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2816_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2816_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2816_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2817 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2817_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2817_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2817_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2817 = { .name = "ecdsa_secp224r1_sha224_2817", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2817_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2817_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2817_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2818 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2818_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2818_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2818 = { .name = "ecdsa_secp224r1_sha224_2818", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2818_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2818_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2818_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2819 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2819_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2819_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2819_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2819 = { .name = "ecdsa_secp224r1_sha224_2819", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2819_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2819_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2819_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2820 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2820_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2820_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2820_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2820 = { .name = "ecdsa_secp224r1_sha224_2820", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2820_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2820_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2820_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2821 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2821_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2821_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2821_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2821 = { .name = "ecdsa_secp224r1_sha224_2821", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2821_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2821_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2821_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2822 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2822_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2822_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2822 = { .name = "ecdsa_secp224r1_sha224_2822", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2822_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2822_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2822_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2823 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2823_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2823_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2823_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2823 = { .name = "ecdsa_secp224r1_sha224_2823", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2823_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2823_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2823_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2824 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2824_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2824_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2824_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2824 = { .name = "ecdsa_secp224r1_sha224_2824", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2824_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2824_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2824_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2825 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2825_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2825_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2825_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2825 = { .name = "ecdsa_secp224r1_sha224_2825", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2825_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2825_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2825_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2826 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2826_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2826_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2826_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2826 = { .name = "ecdsa_secp224r1_sha224_2826", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2826_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2826_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2826_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2827 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2827_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2827_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2827_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2827 = { .name = "ecdsa_secp224r1_sha224_2827", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2827_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2827_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2827_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2828 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2828_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2828_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2828_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2828 = { .name = "ecdsa_secp224r1_sha224_2828", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2828_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2828_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2828_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2829 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2829_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2829_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2829_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2829 = { .name = "ecdsa_secp224r1_sha224_2829", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2829_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2829_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2829_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2830 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2830_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2830_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2830_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2830 = { .name = "ecdsa_secp224r1_sha224_2830", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2830_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2830_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2830_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2831 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2831_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2831_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2831_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2831 = { .name = "ecdsa_secp224r1_sha224_2831", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2831_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2831_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2831_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2832 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2832_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2832_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2832_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2832 = { .name = "ecdsa_secp224r1_sha224_2832", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2832_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2832_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2832_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2833 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2833_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2833_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2833_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2833 = { .name = "ecdsa_secp224r1_sha224_2833", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2833_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2833_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2833_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2834 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2834_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2834_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2834_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2834 = { .name = "ecdsa_secp224r1_sha224_2834", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2834_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2834_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2834_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2835 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2835_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2835_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2835_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2835 = { .name = "ecdsa_secp224r1_sha224_2835", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2835_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2835_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2835_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2836 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2836_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2836_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2836_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2836 = { .name = "ecdsa_secp224r1_sha224_2836", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2836_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2836_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2836_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2837 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2837_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2837_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2837_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2837 = { .name = "ecdsa_secp224r1_sha224_2837", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2837_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2837_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2837_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2838 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2838_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2838_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2838_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2838 = { .name = "ecdsa_secp224r1_sha224_2838", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2838_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2838_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2838_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2839 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2839_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2839_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2839_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2839 = { .name = "ecdsa_secp224r1_sha224_2839", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2839_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2839_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2839_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2840 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2840_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2840_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2840_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2840 = { .name = "ecdsa_secp224r1_sha224_2840", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2840_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2840_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2840_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2841 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2841_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2841_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2841_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2841 = { .name = "ecdsa_secp224r1_sha224_2841", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2841_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2841_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2841_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2842 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2842_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2842_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2842_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2842 = { .name = "ecdsa_secp224r1_sha224_2842", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2842_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2842_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2842_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2843 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2843_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2843_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2843_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2843 = { .name = "ecdsa_secp224r1_sha224_2843", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2843_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2843_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2843_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2844 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2844_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2844_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2844_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2844 = { .name = "ecdsa_secp224r1_sha224_2844", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2844_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2844_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2844_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2845 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2845_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2845_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2845_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2845 = { .name = "ecdsa_secp224r1_sha224_2845", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2845_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2845_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2845_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2846 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2846_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2846_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2846_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2846 = { .name = "ecdsa_secp224r1_sha224_2846", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2846_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2846_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2846_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2847 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2847_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2847_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2847 = { .name = "ecdsa_secp224r1_sha224_2847", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2847_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2847_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2847_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2848 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2848_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2848_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2848 = { .name = "ecdsa_secp224r1_sha224_2848", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2848_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2848_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2848_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2849 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2849_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2849_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2849 = { .name = "ecdsa_secp224r1_sha224_2849", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2849_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2849_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2849_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2850 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2850_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2850_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2850 = { .name = "ecdsa_secp224r1_sha224_2850", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2850_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2850_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2850_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2851 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2851_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2851_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2851 = { .name = "ecdsa_secp224r1_sha224_2851", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2851_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2851_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2851_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2852 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2852_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2852_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2852 = { .name = "ecdsa_secp224r1_sha224_2852", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2852_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2852_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2852_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2853 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2853_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2853_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2853 = { .name = "ecdsa_secp224r1_sha224_2853", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2853_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2853_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2853_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2854 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2854_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2854_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2854 = { .name = "ecdsa_secp224r1_sha224_2854", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2854_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2854_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2854_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2855 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2855_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2855_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2855 = { .name = "ecdsa_secp224r1_sha224_2855", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2855_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2855_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2855_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2856 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2856_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2856_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2856 = { .name = "ecdsa_secp224r1_sha224_2856", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2856_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2856_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2856_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2857 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2857_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2857_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2857 = { .name = "ecdsa_secp224r1_sha224_2857", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2857_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2857_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2857_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2858 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2858_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2858_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2858 = { .name = "ecdsa_secp224r1_sha224_2858", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2858_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2858_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2858_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2859 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2859_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2859_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2859 = { .name = "ecdsa_secp224r1_sha224_2859", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2859_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2859_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2859_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2860 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2860_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2860_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2860 = { .name = "ecdsa_secp224r1_sha224_2860", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2860_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2860_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2860_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2861 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2861_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2861_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2861 = { .name = "ecdsa_secp224r1_sha224_2861", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2861_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2861_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2861_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2862 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2862_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2862_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2862 = { .name = "ecdsa_secp224r1_sha224_2862", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2862_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2862_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2862_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2863 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2863_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2863_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2863 = { .name = "ecdsa_secp224r1_sha224_2863", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2863_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2863_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2863_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2864 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2864_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2864_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2864 = { .name = "ecdsa_secp224r1_sha224_2864", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2864_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2864_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2864_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2865 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2865_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2865_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2865 = { .name = "ecdsa_secp224r1_sha224_2865", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2865_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2865_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2865_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2866 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2866_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2866_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2866 = { .name = "ecdsa_secp224r1_sha224_2866", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2866_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2866_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2866_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2867 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2867_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2867_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2867 = { .name = "ecdsa_secp224r1_sha224_2867", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2867_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2867_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2867_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2868 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2868_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2868_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2868 = { .name = "ecdsa_secp224r1_sha224_2868", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2868_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2868_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2868_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2869 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2869_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2869_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2869 = { .name = "ecdsa_secp224r1_sha224_2869", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2869_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2869_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2869_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2870 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2870_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2870_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2870 = { .name = "ecdsa_secp224r1_sha224_2870", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2870_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2870_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2870_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2871 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2871_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2871_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2871 = { .name = "ecdsa_secp224r1_sha224_2871", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2871_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2871_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2871_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2872 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2872_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2872_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2872 = { .name = "ecdsa_secp224r1_sha224_2872", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2872_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2872_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2872_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2873 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2873_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2873_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2873 = { .name = "ecdsa_secp224r1_sha224_2873", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2873_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2873_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2873_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2874 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2874_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2874_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2874 = { .name = "ecdsa_secp224r1_sha224_2874", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2874_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2874_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2874_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2875 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2875_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2875_msg[] = { 0x31, 0x37, 0x35, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2875_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x31, 0x16, 0xe1, 0xa3, 0x8e, 0x4a, 0xb2, 0x00, 0x8e, 0xca, 0x03, 0x2f, 0xb2, 0xd1, 0x85, 0xe5, 0xc2, 0x1a, 0x23, 0x2e, 0xaf, 0x45, 0x07, 0xae, 0x56, 0x17, 0x7f, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2875 = { .name = "ecdsa_secp224r1_sha224_2875", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2875_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2875_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha224_2875_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2876 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2876_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2876_msg[] = { 0x32, 0x32, 0x35, 0x34, 0x36, 0x32, 0x38, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2876_sig[] = { 0x8c, 0xe2, 0xaf, 0xe2, 0x0b, 0x68, 0x45, 0x76, 0xfd, 0xd9, 0x1b, 0x4b, 0x34, 0x16, 0x8c, 0x9c, 0x01, 0x19, 0x96, 0xaf, 0x5b, 0x0e, 0xb8, 0x5f, 0xa9, 0x29, 0xf3, 0x81, 0x66, 0x2a, 0xf5, 0xca, 0x65, 0x1b, 0xff, 0xbc, 0x62, 0x3c, 0x3a, 0x3b, 0x37, 0x27, 0x79, 0xbd, 0x09, 0xe1, 0x94, 0x8c, 0xd1, 0x91, 0x88, 0xf5, 0x33, 0x9a, 0x97, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2876 = { .name = "ecdsa_secp224r1_sha224_2876", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2876_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2876_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2876_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2877 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2877_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2877_msg[] = { 0x31, 0x38, 0x32, 0x37, 0x38, 0x37, 0x38, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2877_sig[] = { 0xda, 0x57, 0x3c, 0xf7, 0x3a, 0xed, 0x17, 0x47, 0x10, 0xc2, 0x32, 0x15, 0x57, 0x35, 0x24, 0x8f, 0x8e, 0xbe, 0xf6, 0x96, 0x37, 0x46, 0x47, 0x52, 0x7d, 0xa5, 0x22, 0x58, 0xb2, 0x51, 0x85, 0x6b, 0x66, 0xa8, 0x3c, 0x32, 0xbf, 0x0b, 0x7b, 0x81, 0xa0, 0x1f, 0x1d, 0xb4, 0x50, 0x7e, 0x62, 0x21, 0x25, 0xf3, 0x01, 0xbd, 0x83, 0x2a, 0x5c, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2877 = { .name = "ecdsa_secp224r1_sha224_2877", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2877_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2877_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2877_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2878 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2878_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2878_msg[] = { 0x31, 0x35, 0x31, 0x38, 0x38, 0x36, 0x31, 0x37, 0x30, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2878_sig[] = { 0xc3, 0x68, 0xda, 0x86, 0x58, 0x2b, 0x2c, 0x82, 0xb6, 0x96, 0xb2, 0xf7, 0xc7, 0x90, 0x27, 0x96, 0x8f, 0x3f, 0xd2, 0x5c, 0xbb, 0xa9, 0x68, 0x8c, 0xdc, 0x67, 0xb1, 0x7a, 0xab, 0xa8, 0xe3, 0xc2, 0xff, 0x1a, 0xf9, 0xbb, 0x9c, 0x66, 0xca, 0x88, 0xa3, 0x82, 0x5a, 0x19, 0xce, 0x17, 0x20, 0x6e, 0x7a, 0x65, 0x8f, 0xf4, 0x70, 0x25, 0x89, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2878 = { .name = "ecdsa_secp224r1_sha224_2878", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2878_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2878_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2878_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2879 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2879_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2879_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x33, 0x33, 0x34, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2879_sig[] = { 0xff, 0xce, 0xfc, 0xb5, 0x71, 0x90, 0xd0, 0xb8, 0x7e, 0xfb, 0x78, 0x9f, 0xb5, 0x34, 0x07, 0xfd, 0x2c, 0x65, 0xc5, 0xae, 0x35, 0x51, 0xda, 0x3e, 0xcc, 0xf8, 0xdd, 0xd5, 0x05, 0xc8, 0x9b, 0x41, 0x23, 0x8f, 0x1e, 0x1d, 0xef, 0x8f, 0xbe, 0x8d, 0x4a, 0xfe, 0xbf, 0x20, 0xbe, 0x07, 0x7e, 0x82, 0x97, 0x2f, 0x91, 0x29, 0x74, 0x87, 0xe1, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2879 = { .name = "ecdsa_secp224r1_sha224_2879", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2879_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2879_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2879_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2880 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2880_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2880_msg[] = { 0x31, 0x32, 0x32, 0x31, 0x39, 0x37, 0x39, 0x30, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2880_sig[] = { 0x2b, 0x98, 0xc6, 0x7e, 0xbf, 0x65, 0x97, 0xb0, 0x8b, 0xc7, 0xf1, 0xb7, 0x3f, 0xf8, 0x66, 0x2c, 0xf1, 0x25, 0xe9, 0x70, 0x0e, 0xc9, 0x73, 0xec, 0xe9, 0xc6, 0xff, 0x48, 0x2e, 0x3f, 0x72, 0xa8, 0xf7, 0x6e, 0x12, 0xc8, 0xcd, 0xf4, 0x48, 0x7e, 0x09, 0x56, 0xc1, 0xef, 0x45, 0x78, 0xe1, 0xda, 0x4d, 0x29, 0xd8, 0xdb, 0x82, 0x4d, 0x41, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2880 = { .name = "ecdsa_secp224r1_sha224_2880", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2880_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2880_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2880_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2881 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2881_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2881_msg[] = { 0x32, 0x33, 0x30, 0x32, 0x35, 0x36, 0x37, 0x36, 0x31, 0x31, }; static const unsigned char ecdsa_secp224r1_sha224_2881_sig[] = { 0x57, 0x94, 0xd7, 0x04, 0x40, 0xf1, 0x66, 0x90, 0x4d, 0x24, 0xd0, 0xb9, 0x10, 0xcd, 0x12, 0x7c, 0x63, 0xa9, 0xed, 0xdc, 0xa4, 0x5a, 0x4d, 0x90, 0x32, 0xdb, 0x47, 0xe8, 0x8b, 0xa5, 0xd2, 0x90, 0x83, 0x4d, 0x9a, 0x09, 0x63, 0x12, 0x2d, 0x92, 0x8d, 0xa9, 0x02, 0xf7, 0xb0, 0x34, 0x67, 0x39, 0x60, 0x72, 0x18, 0x0b, 0xb1, 0x80, 0x1b, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2881 = { .name = "ecdsa_secp224r1_sha224_2881", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2881_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2881_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2881_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2882 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2882_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2882_msg[] = { 0x31, 0x31, 0x30, 0x35, 0x38, 0x36, 0x38, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2882_sig[] = { 0xc2, 0x9c, 0x70, 0xb0, 0xb2, 0x17, 0x82, 0xd1, 0xc7, 0x27, 0xf4, 0x90, 0x7a, 0xef, 0x56, 0x41, 0xb6, 0xd6, 0xc6, 0xe7, 0xb2, 0xa1, 0xeb, 0xfa, 0x57, 0x79, 0x42, 0x23, 0xaa, 0xc2, 0xd3, 0xa0, 0x25, 0x92, 0xf2, 0x98, 0xdd, 0x31, 0x98, 0xe3, 0x88, 0x42, 0x5e, 0xc7, 0xa9, 0x1d, 0x7e, 0x6b, 0xe4, 0x82, 0x48, 0xa6, 0x47, 0x73, 0x61, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2882 = { .name = "ecdsa_secp224r1_sha224_2882", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2882_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2882_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2882_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2883 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2883_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2883_msg[] = { 0x31, 0x34, 0x36, 0x36, 0x36, 0x31, 0x34, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2883_sig[] = { 0x5c, 0x3e, 0xf3, 0x77, 0x8c, 0x81, 0x1e, 0x69, 0xef, 0x0b, 0x0e, 0x37, 0x0e, 0x45, 0xec, 0x0d, 0x7e, 0xb8, 0x85, 0x05, 0xc3, 0xe8, 0xff, 0xb8, 0xc5, 0x0b, 0x99, 0x93, 0xe0, 0x6b, 0x5c, 0x6e, 0x47, 0xdc, 0x4d, 0xa9, 0xe6, 0x4f, 0xd2, 0x1b, 0xc3, 0xe1, 0xda, 0x13, 0xcf, 0x7c, 0x26, 0x4f, 0xa6, 0x4c, 0xcb, 0x89, 0xda, 0x87, 0x38, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2883 = { .name = "ecdsa_secp224r1_sha224_2883", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2883_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2883_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2883_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2884 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2884_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2884_msg[] = { 0x34, 0x34, 0x31, 0x39, 0x35, 0x36, 0x34, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2884_sig[] = { 0xed, 0x8f, 0x58, 0x65, 0x63, 0x23, 0x2c, 0xf1, 0x5e, 0xbd, 0x01, 0x4b, 0xd4, 0xf9, 0x97, 0x27, 0xe3, 0x37, 0xcf, 0xe4, 0xce, 0x48, 0x69, 0x4f, 0xe6, 0x74, 0x8e, 0xc2, 0xff, 0xf7, 0x79, 0xa3, 0xec, 0xa9, 0x51, 0x35, 0x22, 0x90, 0x8e, 0x25, 0x2a, 0x2b, 0x4a, 0xab, 0x20, 0x60, 0x60, 0x8e, 0x6c, 0xd2, 0xd4, 0xf1, 0xb8, 0xc6, 0x96, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2884 = { .name = "ecdsa_secp224r1_sha224_2884", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2884_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2884_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2884_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2885 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2885_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2885_msg[] = { 0x31, 0x39, 0x36, 0x39, 0x34, 0x38, 0x36, 0x30, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2885_sig[] = { 0x64, 0xc0, 0x84, 0xf6, 0xb7, 0x75, 0xbb, 0xf7, 0x91, 0x5c, 0x19, 0x64, 0xa6, 0x8b, 0x02, 0x59, 0x62, 0x93, 0x28, 0x59, 0x8f, 0x13, 0x55, 0x78, 0x72, 0x86, 0x78, 0x30, 0x2a, 0x6f, 0x3b, 0x28, 0x9d, 0x13, 0x0e, 0xc3, 0xd9, 0x9e, 0x4c, 0xaa, 0xf6, 0x01, 0x49, 0x78, 0x95, 0xa0, 0x69, 0xc1, 0xa5, 0xa7, 0x5b, 0x55, 0x9a, 0xd2, 0x84, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2885 = { .name = "ecdsa_secp224r1_sha224_2885", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2885_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2885_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2885_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2886 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2886_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2886_msg[] = { 0x32, 0x32, 0x33, 0x35, 0x36, 0x37, 0x32, 0x38, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2886_sig[] = { 0x2b, 0x51, 0x4e, 0x9b, 0x0e, 0x0e, 0xb6, 0x8a, 0xdc, 0x01, 0x91, 0x5a, 0xbb, 0xee, 0x9f, 0xa2, 0x1f, 0x30, 0x34, 0xbe, 0x55, 0x81, 0xde, 0xda, 0xa6, 0xb1, 0x59, 0x82, 0xb8, 0xf7, 0x1c, 0x5f, 0xdc, 0x68, 0xd6, 0x98, 0x71, 0x6b, 0xfc, 0x62, 0x3b, 0x27, 0x82, 0x16, 0xc0, 0xfc, 0xc0, 0x29, 0x84, 0x97, 0xfc, 0x9c, 0x03, 0xdb, 0x44, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2886 = { .name = "ecdsa_secp224r1_sha224_2886", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2886_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2886_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2886_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2887 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2887_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2887_msg[] = { 0x32, 0x32, 0x35, 0x37, 0x38, 0x34, 0x33, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2887_sig[] = { 0xe4, 0x10, 0x3f, 0x4a, 0x8a, 0x81, 0x44, 0x85, 0xb6, 0xb4, 0x06, 0xfe, 0x8d, 0xd7, 0x22, 0x06, 0xba, 0xd6, 0xa5, 0x0e, 0x71, 0x26, 0xbc, 0x65, 0x5c, 0x3d, 0x22, 0x85, 0x9b, 0xcb, 0x99, 0x69, 0x32, 0x84, 0xca, 0xc2, 0x6e, 0x66, 0x41, 0xa8, 0x61, 0xdb, 0xec, 0x24, 0xf9, 0xcc, 0x5d, 0xd7, 0xbb, 0x53, 0x53, 0x39, 0xd0, 0x9a, 0xc9, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2887 = { .name = "ecdsa_secp224r1_sha224_2887", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2887_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2887_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2887_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2888 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2888_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2888_msg[] = { 0x39, 0x34, 0x34, 0x35, 0x30, 0x30, 0x39, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha224_2888_sig[] = { 0x9e, 0xdf, 0xb8, 0x33, 0x44, 0x6e, 0xc8, 0xb6, 0xfc, 0x84, 0xee, 0xa3, 0x4e, 0xe4, 0x0a, 0x85, 0xb7, 0x32, 0xe5, 0xc9, 0x9d, 0xa8, 0xab, 0xc8, 0xba, 0xfc, 0xc5, 0x15, 0x50, 0x52, 0xb4, 0x0f, 0x9d, 0x40, 0x7a, 0xe9, 0x00, 0x03, 0x29, 0x9c, 0xab, 0xe3, 0xe1, 0xa5, 0x87, 0xb0, 0x55, 0x81, 0x27, 0xca, 0xfb, 0x31, 0xde, 0x6b, 0x26, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2888 = { .name = "ecdsa_secp224r1_sha224_2888", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2888_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2888_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2888_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2889 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2889_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2889_msg[] = { 0x31, 0x36, 0x38, 0x37, 0x37, 0x38, 0x39, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2889_sig[] = { 0xad, 0x26, 0x47, 0xc8, 0xff, 0x37, 0x77, 0x98, 0xa6, 0xae, 0xae, 0xd4, 0x36, 0xd3, 0x0c, 0x7b, 0x25, 0xfb, 0x52, 0x42, 0x88, 0x29, 0xce, 0x64, 0x24, 0xdd, 0x34, 0xe8, 0x28, 0xf5, 0x86, 0x71, 0xd7, 0x7c, 0x86, 0xda, 0x30, 0x24, 0x18, 0xc5, 0x1e, 0x5a, 0xb8, 0x6d, 0x13, 0x7b, 0xa6, 0xef, 0x43, 0x89, 0x72, 0x2b, 0xc7, 0x9b, 0x87, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2889 = { .name = "ecdsa_secp224r1_sha224_2889", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2889_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2889_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2889_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2890 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2890_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2890_msg[] = { 0x33, 0x39, 0x33, 0x32, 0x36, 0x31, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2890_sig[] = { 0x5d, 0xfc, 0x6f, 0xad, 0x38, 0x5b, 0xdb, 0x24, 0xb2, 0xb7, 0x0a, 0x64, 0xfd, 0x42, 0x53, 0x40, 0x5c, 0x00, 0x28, 0xbb, 0x36, 0xf4, 0x79, 0x3a, 0xa3, 0xbd, 0x31, 0xfe, 0x1c, 0x21, 0x0b, 0x74, 0x92, 0x41, 0x71, 0x37, 0x89, 0x92, 0xb0, 0x3b, 0xb1, 0xbd, 0x78, 0xc5, 0xcf, 0xcf, 0xc8, 0x79, 0xd2, 0xe5, 0xc7, 0x36, 0xd3, 0x55, 0x16, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2890 = { .name = "ecdsa_secp224r1_sha224_2890", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2890_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2890_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha224_2890_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2891 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2891_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2891_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x35, 0x37, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha224_2891_sig[] = { 0x76, 0x6b, 0xef, 0x46, 0x22, 0x96, 0x95, 0xe6, 0x82, 0x9d, 0xd1, 0x2c, 0xd5, 0x58, 0x36, 0x9e, 0xc3, 0x45, 0x19, 0xba, 0x4a, 0x72, 0xdc, 0xaf, 0x6f, 0x73, 0xf7, 0xb0, 0xfc, 0x01, 0x5c, 0xcd, 0xd1, 0xe9, 0x43, 0xb9, 0x10, 0x10, 0x16, 0x07, 0xd8, 0x1f, 0xf1, 0x39, 0x8c, 0xa6, 0xa4, 0xd7, 0x0c, 0x25, 0x83, 0x2b, 0x02, 0xb2, 0x21, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2891 = { .name = "ecdsa_secp224r1_sha224_2891", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2891_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2891_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2891_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2892 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2892_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2892_msg[] = { 0x36, 0x30, 0x38, 0x38, 0x37, 0x34, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2892_sig[] = { 0x12, 0x00, 0x55, 0xf9, 0x0a, 0xd1, 0x29, 0x0c, 0x4c, 0x5f, 0xc5, 0xfa, 0xf6, 0x9b, 0x21, 0x51, 0x39, 0x18, 0x2c, 0x77, 0x0d, 0x2b, 0x55, 0xe9, 0x57, 0x12, 0x44, 0x2f, 0x01, 0xac, 0x47, 0xf7, 0x44, 0x65, 0x43, 0xd4, 0x00, 0x3b, 0x03, 0x9d, 0x9f, 0x54, 0xda, 0xa9, 0xd0, 0x79, 0x9f, 0x98, 0x29, 0x1a, 0x32, 0xdf, 0x4f, 0xcd, 0x47, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2892 = { .name = "ecdsa_secp224r1_sha224_2892", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2892_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2892_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2892_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2893 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2893_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2893_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x35, 0x36, 0x39, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha224_2893_sig[] = { 0xf4, 0x80, 0x59, 0x1f, 0x6f, 0x40, 0xa2, 0x5b, 0x37, 0xa0, 0x35, 0xfd, 0x91, 0x95, 0x41, 0x45, 0xec, 0x34, 0x2e, 0x59, 0x3d, 0x09, 0xe1, 0x42, 0xf2, 0x5d, 0xa4, 0x08, 0x5c, 0x6b, 0xa4, 0x4f, 0xf5, 0x2f, 0x52, 0xc5, 0x14, 0x90, 0x74, 0x3d, 0x9b, 0x65, 0x09, 0x16, 0xbe, 0x58, 0xd0, 0x6d, 0x7c, 0x1f, 0xd9, 0x9d, 0xfa, 0x2e, 0xab, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2893 = { .name = "ecdsa_secp224r1_sha224_2893", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2893_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2893_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2893_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2894 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2894_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2894_msg[] = { 0x39, 0x30, 0x30, 0x37, 0x36, 0x30, 0x39, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2894_sig[] = { 0x57, 0xda, 0xdd, 0xb0, 0xcb, 0x6a, 0xf9, 0x39, 0xb1, 0xea, 0x1a, 0xaf, 0x4b, 0xc7, 0x2e, 0x56, 0x15, 0x0c, 0x0c, 0x46, 0xa5, 0x81, 0x82, 0x71, 0x93, 0xe6, 0x5d, 0x17, 0x3b, 0xc3, 0x7b, 0xde, 0x4e, 0x60, 0xb7, 0x89, 0xba, 0x86, 0xa0, 0x54, 0xd3, 0x7f, 0x11, 0x91, 0xe0, 0x81, 0x49, 0x26, 0xc1, 0xa0, 0x10, 0x01, 0x68, 0xd1, 0x6c, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2894 = { .name = "ecdsa_secp224r1_sha224_2894", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2894_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2894_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2894_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2895 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2895_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2895_msg[] = { 0x31, 0x36, 0x30, 0x32, 0x38, 0x33, 0x36, 0x31, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2895_sig[] = { 0x3a, 0x74, 0x10, 0x2b, 0xd1, 0xfc, 0x61, 0x70, 0x18, 0xef, 0xc4, 0xfb, 0xc0, 0x42, 0xe7, 0x19, 0xa8, 0x1b, 0x55, 0x83, 0x0a, 0xac, 0x1f, 0x1d, 0xcd, 0xed, 0xec, 0x65, 0x4b, 0xb9, 0xfe, 0x90, 0x01, 0x5a, 0x45, 0xf3, 0x1c, 0x8c, 0x95, 0xdd, 0xa2, 0x4f, 0x54, 0xfc, 0xdb, 0x64, 0x68, 0x2c, 0x13, 0xf6, 0x8d, 0x4d, 0xa3, 0xd1, 0xab, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2895 = { .name = "ecdsa_secp224r1_sha224_2895", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2895_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2895_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2895_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2896 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2896_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2896_msg[] = { 0x32, 0x30, 0x38, 0x30, 0x32, 0x34, 0x35, 0x36, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2896_sig[] = { 0xe3, 0xb6, 0xbb, 0x1b, 0x5b, 0xee, 0xd0, 0x48, 0xe0, 0x17, 0x7e, 0x3e, 0x31, 0x0f, 0xa1, 0x4e, 0xb9, 0x23, 0xa1, 0xe3, 0x27, 0x4c, 0x09, 0x46, 0xf9, 0x27, 0x54, 0x54, 0xe0, 0x44, 0xe0, 0x49, 0x4f, 0xf4, 0x65, 0x73, 0xc3, 0x70, 0x07, 0xe3, 0xef, 0xa3, 0x23, 0x35, 0x88, 0xf1, 0xd1, 0x03, 0xce, 0xd1, 0x82, 0x3c, 0x7e, 0x87, 0xe7, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2896 = { .name = "ecdsa_secp224r1_sha224_2896", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2896_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2896_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2896_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2897 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2897_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2897_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x37, 0x34, 0x36, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha224_2897_sig[] = { 0x3c, 0x21, 0x2b, 0x5a, 0x7e, 0x65, 0xd9, 0xaf, 0x44, 0x64, 0x3b, 0xd6, 0x2f, 0xa4, 0x2a, 0x9b, 0x9c, 0xff, 0xe6, 0xbd, 0xb6, 0x23, 0xe9, 0xb9, 0xe4, 0x33, 0x71, 0x56, 0x29, 0xc8, 0x12, 0x1a, 0x12, 0x42, 0x7a, 0x32, 0x4e, 0x5d, 0x55, 0x1f, 0xf5, 0xa8, 0x3d, 0x3c, 0x25, 0x2e, 0x32, 0x25, 0x7a, 0xf2, 0x80, 0x0d, 0x08, 0x08, 0x17, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2897 = { .name = "ecdsa_secp224r1_sha224_2897", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2897_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2897_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2897_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2898 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2898_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2898_msg[] = { 0x31, 0x31, 0x35, 0x35, 0x35, 0x37, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2898_sig[] = { 0x16, 0x30, 0x55, 0x49, 0x89, 0xff, 0xfd, 0x0e, 0x35, 0xf2, 0xd9, 0x10, 0x56, 0x23, 0xd7, 0x3a, 0x54, 0x36, 0x34, 0xc4, 0x80, 0x00, 0x48, 0x4c, 0x42, 0x22, 0x72, 0xca, 0x21, 0x4d, 0xa4, 0x87, 0xd5, 0xe5, 0x1f, 0x73, 0x81, 0x4d, 0xff, 0x80, 0xa0, 0x8c, 0x77, 0xbd, 0x8a, 0x83, 0xa9, 0x88, 0x9a, 0x1b, 0x26, 0xa5, 0x57, 0x8b, 0xa9, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2898 = { .name = "ecdsa_secp224r1_sha224_2898", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2898_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2898_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2898_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2899 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2899_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2899_msg[] = { 0x32, 0x34, 0x33, 0x32, 0x34, 0x37, 0x34, 0x36, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2899_sig[] = { 0x0a, 0x46, 0x09, 0x24, 0x2f, 0x21, 0x93, 0xb9, 0x4b, 0xc5, 0x4f, 0x49, 0xbc, 0xf5, 0x32, 0xa5, 0x76, 0xe0, 0x35, 0xce, 0xc5, 0x0e, 0x04, 0x36, 0x68, 0x57, 0x4b, 0xef, 0xaa, 0x68, 0xbd, 0x67, 0x62, 0x4d, 0x88, 0x12, 0x00, 0x2b, 0xbb, 0x3a, 0x5f, 0x53, 0x05, 0x94, 0x45, 0x13, 0x72, 0xd4, 0xab, 0x36, 0x89, 0x6a, 0x29, 0x29, 0xc3, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2899 = { .name = "ecdsa_secp224r1_sha224_2899", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2899_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2899_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2899_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2900 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2900_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2900_msg[] = { 0x32, 0x34, 0x31, 0x37, 0x32, 0x38, 0x32, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2900_sig[] = { 0xef, 0x9f, 0xf4, 0x46, 0xe8, 0xee, 0xf3, 0xe9, 0x48, 0xf4, 0x12, 0x9f, 0xe8, 0x80, 0x4f, 0x81, 0xf5, 0xb7, 0xf1, 0x16, 0xa5, 0x38, 0x3f, 0x9e, 0x8b, 0xc3, 0x59, 0xe4, 0xf4, 0xc7, 0x05, 0x5b, 0xd9, 0x8f, 0x4a, 0x7e, 0xa4, 0x9d, 0x95, 0x74, 0x16, 0x0e, 0xac, 0x16, 0x78, 0x09, 0xf6, 0xa7, 0x8b, 0x9d, 0xd2, 0x20, 0x95, 0x8d, 0xd0, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2900 = { .name = "ecdsa_secp224r1_sha224_2900", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2900_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2900_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha224_2900_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2901 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2901_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_2901_msg[] = { 0x37, 0x37, 0x38, 0x37, 0x34, 0x37, 0x37, 0x31, }; static const unsigned char ecdsa_secp224r1_sha224_2901_sig[] = { 0x1a, 0x6c, 0x59, 0xd8, 0x5d, 0x5b, 0x31, 0x20, 0xb2, 0x8c, 0x0d, 0x30, 0xbc, 0x05, 0x8a, 0x92, 0xdc, 0x72, 0x5d, 0x8e, 0xf4, 0x50, 0xc1, 0x98, 0xcc, 0x3c, 0xa5, 0x22, 0x8b, 0x17, 0xfe, 0xfc, 0x8a, 0xb1, 0xff, 0x0b, 0xb3, 0x7a, 0x93, 0x44, 0x64, 0x53, 0xd4, 0x0f, 0x65, 0xbc, 0x2c, 0xb9, 0x63, 0x6b, 0x11, 0x20, 0x7f, 0x5c, 0x90, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2901 = { .name = "ecdsa_secp224r1_sha224_2901", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2901_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2901_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha224_2901_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2902 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2902_pubkey[] = { 0x8b, 0xf7, 0xe7, 0x92, 0xf7, 0xc8, 0x68, 0x77, 0xf1, 0xfd, 0x05, 0x52, 0xe4, 0x2d, 0x80, 0x65, 0x3b, 0x59, 0xe3, 0xa2, 0x9e, 0x76, 0x2a, 0x22, 0x81, 0x0d, 0xaa, 0xc7, 0xee, 0xc6, 0x15, 0xbb, 0xad, 0x04, 0xb5, 0x8d, 0xc2, 0xa7, 0x95, 0x60, 0x90, 0xb8, 0x04, 0x0b, 0xb5, 0x05, 0x53, 0x25, 0xbb, 0xa0, 0xaa, 0x8b, 0x3a, 0x5c, 0xaa, 0x6f, }; static const unsigned char ecdsa_secp224r1_sha224_2902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2902_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2902 = { .name = "ecdsa_secp224r1_sha224_2902", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2902_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2902_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2902_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 257 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2903 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2903_pubkey[] = { 0x8b, 0xf7, 0xe7, 0x92, 0xf7, 0xc8, 0x68, 0x77, 0xf1, 0xfd, 0x05, 0x52, 0xe4, 0x2d, 0x80, 0x65, 0x3b, 0x59, 0xe3, 0xa2, 0x9e, 0x76, 0x2a, 0x22, 0x81, 0x0d, 0xaa, 0xc7, 0xee, 0xc6, 0x15, 0xbb, 0xad, 0x04, 0xb5, 0x8d, 0xc2, 0xa7, 0x95, 0x60, 0x90, 0xb8, 0x04, 0x0b, 0xb5, 0x05, 0x53, 0x25, 0xbb, 0xa0, 0xaa, 0x8b, 0x3a, 0x5c, 0xaa, 0x6f, }; static const unsigned char ecdsa_secp224r1_sha224_2903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2903_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2903 = { .name = "ecdsa_secp224r1_sha224_2903", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2903_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2903_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2903_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 258 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2904 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2904_pubkey[] = { 0x26, 0x46, 0xff, 0x36, 0xd9, 0x69, 0x7a, 0xaa, 0xed, 0x0d, 0x64, 0x11, 0x17, 0xf9, 0x4f, 0x60, 0xe1, 0x38, 0xba, 0xb8, 0xe9, 0x91, 0x2b, 0x55, 0x8a, 0xe0, 0xa8, 0x18, 0xca, 0x48, 0xe4, 0x5a, 0x33, 0x55, 0x0c, 0x1b, 0x5b, 0xd2, 0x0a, 0x00, 0xe4, 0xd9, 0xdf, 0x30, 0x33, 0xc0, 0x32, 0x22, 0xe8, 0x7b, 0xd9, 0x6a, 0x81, 0x97, 0xf2, 0xdd, }; static const unsigned char ecdsa_secp224r1_sha224_2904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2904_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2904 = { .name = "ecdsa_secp224r1_sha224_2904", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2904_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2904_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2904_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 259 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2905 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2905_pubkey[] = { 0xea, 0x3e, 0xa2, 0x87, 0x3b, 0x6f, 0xc0, 0x99, 0xbf, 0xd7, 0x79, 0xb0, 0xa2, 0xc2, 0x3c, 0x2c, 0x43, 0x54, 0xe2, 0xfe, 0xc4, 0x53, 0x6f, 0x3b, 0x8e, 0x42, 0x09, 0x88, 0xf9, 0x7e, 0x1c, 0x76, 0x46, 0xb4, 0xeb, 0x3d, 0xe6, 0x16, 0x75, 0x2f, 0x41, 0x5a, 0xb3, 0xa6, 0xf6, 0x96, 0xd1, 0xd6, 0x74, 0xfb, 0x4b, 0x67, 0x32, 0x25, 0x23, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2905_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2905 = { .name = "ecdsa_secp224r1_sha224_2905", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2905_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2905_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2905_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 260 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2906 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2906_pubkey[] = { 0x92, 0xae, 0x54, 0xe3, 0x8b, 0x4e, 0x9c, 0x6a, 0xe9, 0x94, 0x31, 0x93, 0x74, 0x7c, 0x4c, 0x8a, 0xcc, 0x6c, 0x96, 0xf4, 0x22, 0x51, 0x52, 0x88, 0xe9, 0x69, 0x8a, 0x13, 0xe8, 0xf3, 0xa7, 0x59, 0xa1, 0xa8, 0x27, 0x3c, 0x53, 0xf4, 0xb4, 0xb1, 0x8b, 0xfc, 0xf7, 0x8d, 0x9b, 0xb9, 0x88, 0xad, 0xb3, 0xb0, 0x05, 0x00, 0x2d, 0xbe, 0x43, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha224_2906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2906_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2906 = { .name = "ecdsa_secp224r1_sha224_2906", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2906_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2906_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2906_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 261 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2907 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2907_pubkey[] = { 0xb1, 0x57, 0x31, 0x5c, 0xc1, 0xaa, 0xea, 0xe6, 0x4e, 0xb5, 0xb3, 0x84, 0x52, 0x88, 0x41, 0x95, 0xfd, 0xfe, 0x8a, 0x15, 0xfb, 0x56, 0x18, 0x28, 0x4f, 0x48, 0xaf, 0xe5, 0xe1, 0xfb, 0xba, 0xad, 0x72, 0x94, 0x77, 0xa4, 0x5f, 0x37, 0x52, 0xb7, 0xf7, 0x2a, 0xd2, 0xf9, 0xcd, 0x7d, 0xce, 0x41, 0x58, 0xa8, 0xe2, 0x1b, 0x81, 0x27, 0xe8, 0xa7, }; static const unsigned char ecdsa_secp224r1_sha224_2907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2907_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2907 = { .name = "ecdsa_secp224r1_sha224_2907", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2907_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2907_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2907_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 262 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2908 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2908_pubkey[] = { 0x87, 0xd9, 0xd9, 0x64, 0x04, 0x4b, 0x5b, 0x16, 0x80, 0x1f, 0x32, 0xde, 0x9f, 0x3f, 0x90, 0x66, 0x19, 0x4e, 0x8b, 0xf8, 0x0a, 0xff, 0xa3, 0xcb, 0x0d, 0x4d, 0xdb, 0x1d, 0xb5, 0xeb, 0x9b, 0x65, 0x94, 0xe6, 0xd1, 0xbc, 0xac, 0xd0, 0xfd, 0x9d, 0x67, 0xc4, 0x08, 0xf7, 0x89, 0xdf, 0xb9, 0x5f, 0xeb, 0x79, 0xa6, 0xe2, 0xfb, 0x9c, 0x4c, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2908_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2908 = { .name = "ecdsa_secp224r1_sha224_2908", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2908_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2908_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2908_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 263 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2909 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2909_pubkey[] = { 0x46, 0x1b, 0x43, 0x5a, 0xf0, 0x9e, 0xde, 0x35, 0xe7, 0x4d, 0xac, 0x21, 0xf9, 0xaf, 0x7b, 0x1b, 0x99, 0x98, 0x21, 0x30, 0x39, 0xf8, 0x78, 0x5d, 0x4a, 0x49, 0x05, 0xf5, 0x18, 0xb8, 0x9b, 0xde, 0x69, 0xde, 0x34, 0xa4, 0x82, 0x63, 0x84, 0x61, 0xd0, 0x93, 0x86, 0xe7, 0x19, 0x3c, 0xa9, 0x0c, 0xa5, 0xb3, 0x03, 0x8e, 0x2a, 0x38, 0x85, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha224_2909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2909_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2909 = { .name = "ecdsa_secp224r1_sha224_2909", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2909_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2909_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2909_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 264 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2910 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2910_pubkey[] = { 0x46, 0x1b, 0x43, 0x5a, 0xf0, 0x9e, 0xde, 0x35, 0xe7, 0x4d, 0xac, 0x21, 0xf9, 0xaf, 0x7b, 0x1b, 0x99, 0x98, 0x21, 0x30, 0x39, 0xf8, 0x78, 0x5d, 0x4a, 0x49, 0x05, 0xf5, 0x18, 0xb8, 0x9b, 0xde, 0x69, 0xde, 0x34, 0xa4, 0x82, 0x63, 0x84, 0x61, 0xd0, 0x93, 0x86, 0xe7, 0x19, 0x3c, 0xa9, 0x0c, 0xa5, 0xb3, 0x03, 0x8e, 0x2a, 0x38, 0x85, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha224_2910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2910_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2910 = { .name = "ecdsa_secp224r1_sha224_2910", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2910_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2910_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2910_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 265 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2911 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2911_pubkey[] = { 0x80, 0x93, 0xaf, 0x8d, 0xb0, 0x4b, 0x3d, 0xd2, 0xe7, 0xc3, 0xc5, 0x9b, 0xb6, 0x4a, 0x83, 0x2c, 0x2f, 0xb8, 0xe8, 0xe1, 0x41, 0xba, 0xe7, 0xba, 0x15, 0x34, 0x95, 0x0a, 0x10, 0xc5, 0xe8, 0x7a, 0xec, 0xbd, 0x1f, 0xcd, 0xfc, 0x36, 0xcd, 0x18, 0xd4, 0x1b, 0x32, 0x38, 0xb2, 0xac, 0x61, 0x3e, 0xb7, 0xc9, 0xde, 0x98, 0x8d, 0x88, 0x18, 0x16, }; static const unsigned char ecdsa_secp224r1_sha224_2911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2911_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2911 = { .name = "ecdsa_secp224r1_sha224_2911", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2911_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2911_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2911_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 266 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2912 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2912_pubkey[] = { 0xc6, 0xd7, 0x1f, 0x4b, 0xa0, 0x93, 0x3f, 0x12, 0x69, 0xf7, 0xd6, 0xdf, 0x83, 0xfd, 0x0c, 0x9c, 0x67, 0x25, 0x4f, 0x10, 0x1d, 0xcc, 0x12, 0x6d, 0xc1, 0x5f, 0xaa, 0x3e, 0x3c, 0x45, 0xdc, 0x9f, 0xed, 0xc7, 0x1c, 0x9f, 0x2b, 0x0d, 0xd1, 0xb1, 0x2b, 0x65, 0x62, 0x41, 0xf5, 0xe3, 0x35, 0x06, 0x6f, 0x3f, 0x92, 0x5b, 0xdb, 0xcf, 0xe9, 0x8f, }; static const unsigned char ecdsa_secp224r1_sha224_2912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2912_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2912 = { .name = "ecdsa_secp224r1_sha224_2912", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2912_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2912_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2912_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 267 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2913 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2913_pubkey[] = { 0xbe, 0xb9, 0xd8, 0xdc, 0xba, 0x48, 0x14, 0x6b, 0x90, 0x32, 0x68, 0x8e, 0xce, 0xa9, 0x47, 0xa2, 0x31, 0xe7, 0xd0, 0xe6, 0xce, 0x17, 0xd7, 0x6b, 0x56, 0xed, 0x63, 0x48, 0x35, 0x50, 0x3f, 0x3b, 0x4a, 0xf4, 0x14, 0x87, 0x0e, 0xf0, 0x33, 0x83, 0x78, 0x4b, 0x1d, 0x84, 0x6b, 0x3e, 0x07, 0xb8, 0xe9, 0xfc, 0x2d, 0x61, 0x90, 0xa3, 0xbf, 0xda, }; static const unsigned char ecdsa_secp224r1_sha224_2913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2913_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2913 = { .name = "ecdsa_secp224r1_sha224_2913", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2913_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2913_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2913_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 268 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2914 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2914_pubkey[] = { 0x19, 0x55, 0xba, 0x3f, 0x90, 0xe7, 0xa7, 0x39, 0x47, 0x1a, 0x5d, 0x18, 0x2b, 0x59, 0x4c, 0x97, 0x47, 0xeb, 0x49, 0xd5, 0x35, 0x62, 0x03, 0xf3, 0xbb, 0x8b, 0x93, 0x9c, 0x80, 0x7d, 0x88, 0xce, 0x3a, 0x08, 0x85, 0xbf, 0xa5, 0xb5, 0xb7, 0xf6, 0xe9, 0xbe, 0xb1, 0x82, 0x85, 0xe7, 0x13, 0x05, 0x24, 0xb6, 0xc1, 0x49, 0x8b, 0x32, 0x69, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2914_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2914 = { .name = "ecdsa_secp224r1_sha224_2914", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2914_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2914_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2914_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 269 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2915 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2915_pubkey[] = { 0x5c, 0xb9, 0xe5, 0xa5, 0x07, 0x1f, 0x2b, 0x37, 0xaa, 0x3a, 0x5e, 0x5f, 0x38, 0x9f, 0x54, 0xf9, 0x96, 0xb0, 0xbc, 0x8a, 0x13, 0x2e, 0xcb, 0x68, 0x85, 0x31, 0x8f, 0xbf, 0x4e, 0xc5, 0xf8, 0xb9, 0x3d, 0x8b, 0xf2, 0xa3, 0xb6, 0x4f, 0xa7, 0xca, 0xc3, 0x16, 0x39, 0x25, 0x62, 0xc4, 0x65, 0x67, 0x96, 0x3c, 0x43, 0xa6, 0x9f, 0x7a, 0x37, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2915_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2915 = { .name = "ecdsa_secp224r1_sha224_2915", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2915_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2915_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2915_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 270 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2916 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2916_pubkey[] = { 0x7b, 0x34, 0xef, 0x87, 0x23, 0xa4, 0x30, 0x9c, 0x0f, 0xa8, 0xa7, 0xec, 0x3a, 0x78, 0x34, 0x77, 0x65, 0x2a, 0x82, 0x89, 0x23, 0x70, 0xf6, 0x76, 0x33, 0x14, 0xfe, 0x7b, 0xde, 0xe6, 0x63, 0x85, 0x30, 0x71, 0xe3, 0x5f, 0xd3, 0xc7, 0x6f, 0x99, 0x1d, 0x78, 0x43, 0xc5, 0xe1, 0x68, 0xca, 0x65, 0x9b, 0x93, 0xbd, 0x60, 0x15, 0x51, 0x8f, 0xba, }; static const unsigned char ecdsa_secp224r1_sha224_2916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2916_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2916 = { .name = "ecdsa_secp224r1_sha224_2916", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2916_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2916_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2916_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 271 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2917 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2917_pubkey[] = { 0x03, 0xf2, 0x6a, 0x9c, 0x13, 0x97, 0x9c, 0xf5, 0xd0, 0x90, 0xea, 0x25, 0xdc, 0x96, 0x63, 0x98, 0x02, 0x2c, 0xee, 0xc3, 0x15, 0x04, 0xab, 0xc4, 0xb1, 0x0f, 0x76, 0x76, 0x7d, 0x57, 0x7d, 0xcf, 0x47, 0xe1, 0x0e, 0x38, 0x4c, 0x6b, 0x9a, 0x22, 0x9a, 0x45, 0x5a, 0x9f, 0xd3, 0x3e, 0x54, 0xfe, 0x79, 0x60, 0xb8, 0xb0, 0x16, 0x0a, 0xef, 0x16, }; static const unsigned char ecdsa_secp224r1_sha224_2917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2917_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2917 = { .name = "ecdsa_secp224r1_sha224_2917", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2917_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2917_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2917_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 272 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2918 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2918_pubkey[] = { 0xb6, 0x71, 0x29, 0x6d, 0xd5, 0xf6, 0x90, 0x50, 0x2e, 0x4b, 0x15, 0x00, 0xe4, 0xac, 0xb4, 0xc8, 0x2d, 0x3a, 0xa8, 0xdf, 0xbc, 0x58, 0x68, 0xa6, 0x43, 0xf8, 0x6a, 0x3c, 0xa4, 0x6b, 0xa8, 0xc3, 0xa7, 0xb8, 0x23, 0x25, 0x95, 0x22, 0x29, 0x1e, 0x24, 0x16, 0x23, 0x22, 0x76, 0xcc, 0xa8, 0x50, 0x3c, 0xc8, 0xdb, 0xf9, 0x41, 0xf1, 0xd9, 0x3d, }; static const unsigned char ecdsa_secp224r1_sha224_2918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2918_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2918 = { .name = "ecdsa_secp224r1_sha224_2918", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2918_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2918_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2918_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 273 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2919 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2919_pubkey[] = { 0xb6, 0x71, 0x29, 0x6d, 0xd5, 0xf6, 0x90, 0x50, 0x2e, 0x4b, 0x15, 0x00, 0xe4, 0xac, 0xb4, 0xc8, 0x2d, 0x3a, 0xa8, 0xdf, 0xbc, 0x58, 0x68, 0xa6, 0x43, 0xf8, 0x6a, 0x3c, 0xa4, 0x6b, 0xa8, 0xc3, 0xa7, 0xb8, 0x23, 0x25, 0x95, 0x22, 0x29, 0x1e, 0x24, 0x16, 0x23, 0x22, 0x76, 0xcc, 0xa8, 0x50, 0x3c, 0xc8, 0xdb, 0xf9, 0x41, 0xf1, 0xd9, 0x3d, }; static const unsigned char ecdsa_secp224r1_sha224_2919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2919_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2919 = { .name = "ecdsa_secp224r1_sha224_2919", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2919_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2919_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2919_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 274 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2920 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2920_pubkey[] = { 0x76, 0xe3, 0x4b, 0x57, 0xa8, 0xc6, 0x1d, 0xf5, 0x9c, 0xb0, 0xb7, 0x92, 0x1c, 0xec, 0x6e, 0x54, 0x22, 0x34, 0x40, 0x33, 0xf7, 0xac, 0xcb, 0x7b, 0x31, 0x79, 0xe6, 0x82, 0xce, 0xfd, 0x0a, 0x84, 0x83, 0x09, 0xd1, 0xde, 0xcf, 0x98, 0xa3, 0xb9, 0xe3, 0x33, 0x69, 0x1b, 0x95, 0xc1, 0x78, 0x21, 0xcb, 0x68, 0x11, 0x37, 0x63, 0x0c, 0x02, 0xe2, }; static const unsigned char ecdsa_secp224r1_sha224_2920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2920_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2920 = { .name = "ecdsa_secp224r1_sha224_2920", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2920_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2920_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2920_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 275 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2921 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2921_pubkey[] = { 0x51, 0x83, 0x9e, 0x54, 0x5c, 0x87, 0x2f, 0x4a, 0x38, 0x1f, 0x27, 0x8e, 0xd5, 0xb4, 0xc2, 0x4c, 0xf3, 0x8a, 0xac, 0x77, 0xb0, 0x29, 0x53, 0x40, 0x56, 0x18, 0xbf, 0x27, 0x39, 0x4e, 0x41, 0x22, 0x65, 0x94, 0xc4, 0x99, 0xdb, 0x6a, 0x7d, 0xd7, 0xa6, 0x90, 0x1b, 0xda, 0x5e, 0x64, 0x74, 0xb1, 0xff, 0xa1, 0x0a, 0x65, 0x67, 0x21, 0x00, 0x10, }; static const unsigned char ecdsa_secp224r1_sha224_2921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2921_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2921 = { .name = "ecdsa_secp224r1_sha224_2921", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2921_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2921_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2921_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 276 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2922 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2922_pubkey[] = { 0xa3, 0xec, 0x90, 0x05, 0x3d, 0x1e, 0x10, 0x08, 0x15, 0xd1, 0xbe, 0xcf, 0xe9, 0x6c, 0x9b, 0x36, 0x46, 0xe5, 0x2d, 0xf7, 0x94, 0xf6, 0xb0, 0x3b, 0x76, 0x6a, 0x75, 0x74, 0xc3, 0xb7, 0xe1, 0x7e, 0x73, 0xac, 0xc8, 0xce, 0xfe, 0x71, 0xb6, 0xeb, 0x13, 0xd4, 0xf1, 0xc9, 0x4c, 0x57, 0xe5, 0x8b, 0xee, 0x43, 0xc6, 0x9d, 0x9d, 0x41, 0xa9, 0x64, }; static const unsigned char ecdsa_secp224r1_sha224_2922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2922_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2922 = { .name = "ecdsa_secp224r1_sha224_2922", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2922_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2922_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2922_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 277 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2923 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2923_pubkey[] = { 0xb5, 0xc0, 0x9b, 0x48, 0x51, 0xa6, 0x73, 0x71, 0xee, 0xe7, 0xbb, 0xf0, 0x24, 0x51, 0xe5, 0x20, 0x8c, 0x40, 0xde, 0x61, 0xbc, 0x1a, 0x33, 0xdf, 0x27, 0x10, 0xb3, 0x84, 0xdc, 0xce, 0x4e, 0x5b, 0x83, 0xc3, 0x2a, 0x80, 0x0e, 0x8d, 0xe2, 0x8f, 0xa9, 0x36, 0xd5, 0x82, 0xcd, 0xca, 0xd1, 0x85, 0xe8, 0x94, 0xca, 0xac, 0x79, 0x7f, 0x1d, 0x14, }; static const unsigned char ecdsa_secp224r1_sha224_2923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2923_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2923 = { .name = "ecdsa_secp224r1_sha224_2923", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2923_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2923_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2923_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 278 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2924 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2924_pubkey[] = { 0x94, 0x1e, 0x28, 0x3b, 0xe3, 0x13, 0x00, 0xbf, 0xd4, 0xf6, 0xa1, 0x2b, 0x87, 0x6f, 0xd3, 0x26, 0x73, 0x52, 0x55, 0x1c, 0xc4, 0x9e, 0x9e, 0xef, 0x73, 0xf7, 0x65, 0x38, 0xc1, 0x15, 0xe5, 0xfe, 0x3b, 0x92, 0xf6, 0x43, 0xc6, 0xce, 0xf1, 0xc5, 0x8f, 0x3f, 0x86, 0x57, 0x57, 0x4d, 0x1f, 0x64, 0x95, 0x7d, 0x48, 0x80, 0x99, 0x5c, 0xde, 0x83, }; static const unsigned char ecdsa_secp224r1_sha224_2924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2924_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2924 = { .name = "ecdsa_secp224r1_sha224_2924", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2924_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2924_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2924_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 279 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2925 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2925_pubkey[] = { 0x43, 0xc9, 0xcc, 0xd0, 0x8a, 0x80, 0xbc, 0xa1, 0x80, 0x22, 0x72, 0x2b, 0x0b, 0xdc, 0xd7, 0x90, 0xd8, 0x2a, 0x3e, 0xf8, 0xb6, 0x5c, 0x3f, 0x34, 0x20, 0x4b, 0xb4, 0x72, 0x9e, 0xe1, 0xc1, 0xf0, 0x05, 0x98, 0x13, 0x0b, 0x23, 0x13, 0xa3, 0xe3, 0x8a, 0x37, 0x98, 0xd0, 0x3d, 0xac, 0x66, 0x5c, 0xff, 0x20, 0xf3, 0x6c, 0xe8, 0xa2, 0x02, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha224_2925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2925_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2925 = { .name = "ecdsa_secp224r1_sha224_2925", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2925_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2925_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2925_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 280 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2926 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2926_pubkey[] = { 0xd9, 0x58, 0xe4, 0x18, 0xfa, 0xd1, 0xc5, 0xea, 0x5c, 0x92, 0x3e, 0x61, 0x85, 0xe0, 0x3e, 0xd5, 0x53, 0x9d, 0x3f, 0x5f, 0x58, 0xdf, 0xac, 0x8b, 0xb9, 0xf1, 0x04, 0x59, 0x69, 0x97, 0xe4, 0x08, 0xc9, 0x7b, 0xe5, 0xfd, 0xc0, 0x37, 0xa5, 0xc0, 0x04, 0x38, 0x9d, 0x4b, 0x97, 0xeb, 0x1f, 0x54, 0x63, 0x5e, 0x98, 0x58, 0x53, 0xc1, 0xf0, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2926_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2926 = { .name = "ecdsa_secp224r1_sha224_2926", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2926_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2926_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2926_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 281 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2927 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2927_pubkey[] = { 0xd6, 0x29, 0xb4, 0x34, 0xc9, 0xb5, 0xd1, 0x57, 0xbd, 0x72, 0xe1, 0x14, 0xfd, 0x83, 0x95, 0x53, 0xf7, 0xf0, 0xe9, 0x46, 0x00, 0x93, 0x4a, 0x0a, 0x49, 0xe5, 0x9a, 0xa4, 0x71, 0x3a, 0x13, 0xc0, 0x17, 0x75, 0xe7, 0x5e, 0x2e, 0xba, 0xe7, 0x5d, 0x9e, 0x29, 0xd2, 0x50, 0x61, 0x84, 0x17, 0x7b, 0x7d, 0xd0, 0x86, 0x86, 0x93, 0x87, 0x35, 0x96, }; static const unsigned char ecdsa_secp224r1_sha224_2927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2927_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xbe, 0x91, 0x55, 0x7d, 0x86, 0x6a, 0xd5, 0xf2, 0x94, 0x5b, 0x14, 0xec, 0x33, 0x17, 0xbc, 0x43, 0xc1, 0x33, 0x8f, 0xd0, 0x6a, 0xf6, 0x49, 0x62, 0x01, 0xcc, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2927 = { .name = "ecdsa_secp224r1_sha224_2927", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2927_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2927_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2927_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 282 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2928 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2928_pubkey[] = { 0x3d, 0x2e, 0x9b, 0xb9, 0xa7, 0x12, 0xbf, 0x3a, 0xd4, 0x2a, 0xc3, 0x06, 0x59, 0xfd, 0xbd, 0xa9, 0xbe, 0x99, 0x56, 0x53, 0x7f, 0x9f, 0x37, 0xcd, 0x05, 0xf0, 0xff, 0x37, 0x7d, 0x59, 0x82, 0xd6, 0xd9, 0x26, 0x6d, 0x77, 0x49, 0x42, 0xc4, 0x4d, 0x9e, 0xb3, 0x50, 0x10, 0x51, 0xd3, 0xb9, 0x68, 0x86, 0x10, 0x13, 0x1e, 0x78, 0x56, 0xef, 0x36, }; static const unsigned char ecdsa_secp224r1_sha224_2928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2928_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7a, 0xc5, 0x4a, 0x38, 0x1d, 0x9b, 0xd3, 0xf2, 0x69, 0x83, 0x59, 0xd6, 0xf6, 0x58, 0xb5, 0xe4, 0x16, 0x7d, 0x15, 0xa7, 0x5b, 0x57, 0x6e, 0x82, 0xd2, 0xef, 0xbd, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2928 = { .name = "ecdsa_secp224r1_sha224_2928", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2928_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2928_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2928_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 283 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2929 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2929_pubkey[] = { 0xa0, 0xbe, 0x2f, 0x10, 0x14, 0x4b, 0x9b, 0x42, 0xb0, 0x16, 0xf1, 0xbd, 0x9f, 0xca, 0x30, 0xe4, 0xc2, 0x4a, 0xae, 0x47, 0x75, 0x59, 0x6c, 0x7c, 0xdb, 0x07, 0xae, 0x60, 0xd6, 0x0f, 0xf3, 0xa7, 0x0f, 0x15, 0x41, 0x63, 0x1f, 0x60, 0x87, 0xd3, 0xf3, 0xb3, 0xfe, 0x37, 0x6d, 0x23, 0x05, 0xb5, 0x0b, 0x94, 0x82, 0x11, 0x06, 0x41, 0x24, 0x79, }; static const unsigned char ecdsa_secp224r1_sha224_2929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2929_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4f, 0xbb, 0x06, 0x3e, 0x82, 0x40, 0x2e, 0x16, 0xfe, 0x14, 0xed, 0xda, 0x4d, 0x79, 0x86, 0xb0, 0xb8, 0x83, 0x44, 0xa1, 0xf5, 0x3b, 0x0e, 0x26, 0x84, 0xee, 0x7e, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2929 = { .name = "ecdsa_secp224r1_sha224_2929", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2929_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2929_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2929_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 284 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2930 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2930_pubkey[] = { 0x4d, 0x74, 0x39, 0x7a, 0x58, 0x6c, 0x8a, 0xc5, 0xe3, 0x26, 0xbe, 0xd0, 0x37, 0x20, 0xbd, 0xe7, 0x03, 0x7e, 0x4a, 0x07, 0xae, 0xe7, 0x20, 0x9f, 0x70, 0x49, 0x3c, 0xab, 0x10, 0x67, 0x78, 0xbf, 0xd0, 0x81, 0xd1, 0x7a, 0xb6, 0xdc, 0xb8, 0xfd, 0x8a, 0x45, 0x49, 0x62, 0x94, 0x1c, 0x26, 0xec, 0xc1, 0x9c, 0xda, 0x9f, 0xb7, 0x77, 0x19, 0xdb, }; static const unsigned char ecdsa_secp224r1_sha224_2930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2930_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd3, 0xbe, 0x5f, 0x50, 0xd7, 0x26, 0xf9, 0x9b, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6b, 0xfe, 0x78, 0xdd, 0x7a, 0xe6, 0x30, 0xd2, 0x27, 0xef, 0x0b, 0xa8, 0x7a, 0xe3, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2930 = { .name = "ecdsa_secp224r1_sha224_2930", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2930_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2930_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2930_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 285 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2931 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2931_pubkey[] = { 0x8c, 0x2f, 0x14, 0x9b, 0x17, 0x38, 0x24, 0x3f, 0x81, 0xa6, 0xf1, 0x21, 0x35, 0x39, 0x5a, 0x2b, 0xa2, 0x71, 0x88, 0x63, 0x62, 0x2e, 0x66, 0xe3, 0x3e, 0xfc, 0x24, 0x1f, 0x56, 0x38, 0xcf, 0x6a, 0xe9, 0xcf, 0xb3, 0x95, 0x78, 0xcf, 0x3a, 0x71, 0x97, 0x02, 0x05, 0x2e, 0x5e, 0x9e, 0x94, 0x02, 0x16, 0xc5, 0x13, 0x6d, 0xcb, 0x6e, 0xf0, 0x85, }; static const unsigned char ecdsa_secp224r1_sha224_2931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2931_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe5, 0xf5, 0x0d, 0x72, 0x6f, 0x99, 0xb8, 0xac, 0x44, 0xbf, 0xf8, 0x76, 0xcb, 0xf7, 0x10, 0xe4, 0x7f, 0x90, 0x87, 0xd1, 0xaf, 0xdf, 0xb1, 0xda, 0xb6, 0xd6, 0xda, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2931 = { .name = "ecdsa_secp224r1_sha224_2931", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2931_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2931_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2931_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 286 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2932 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2932_pubkey[] = { 0xad, 0x52, 0x27, 0xe4, 0x8a, 0xfa, 0xa1, 0x65, 0xe7, 0xb9, 0x7e, 0xf8, 0x21, 0x06, 0x87, 0x55, 0x6e, 0x10, 0x64, 0x3f, 0xda, 0x8a, 0x37, 0x7a, 0xaf, 0x4f, 0x5b, 0xf4, 0x12, 0xe8, 0x6d, 0x4a, 0xe5, 0x5f, 0x44, 0x60, 0xab, 0xa6, 0xa9, 0x32, 0xf3, 0x07, 0xee, 0x78, 0xef, 0xdc, 0x13, 0x6e, 0x9a, 0x3d, 0xf6, 0x31, 0x31, 0x00, 0xbf, 0x4f, }; static const unsigned char ecdsa_secp224r1_sha224_2932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2932_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0xea, 0x1a, 0xe4, 0xdf, 0x33, 0x71, 0x58, 0x89, 0x7f, 0xf0, 0xed, 0x97, 0xef, 0x0b, 0x26, 0x1e, 0x68, 0x1f, 0x65, 0x4b, 0xe2, 0x3a, 0x70, 0x11, 0x51, 0x8b, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2932 = { .name = "ecdsa_secp224r1_sha224_2932", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2932_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2932_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2932_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 287 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2933 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2933_pubkey[] = { 0x3f, 0xb9, 0x4a, 0x31, 0x65, 0xec, 0xde, 0xf4, 0x3f, 0xa2, 0x79, 0x07, 0xed, 0x07, 0x5c, 0xaf, 0x52, 0xc2, 0x54, 0x20, 0xac, 0x7b, 0xc7, 0xbb, 0x90, 0x40, 0x89, 0x92, 0x02, 0x3c, 0x4d, 0x7b, 0x47, 0x75, 0xb5, 0x91, 0xae, 0x22, 0x3d, 0xd4, 0xda, 0x9c, 0xea, 0xab, 0xd7, 0x3b, 0x97, 0x43, 0xdd, 0xab, 0x8b, 0x40, 0x57, 0x6e, 0x39, 0x3f, }; static const unsigned char ecdsa_secp224r1_sha224_2933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2933_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd7, 0x26, 0xf9, 0x9b, 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0x2a, 0xa0, 0x7e, 0xc3, 0xcb, 0x1d, 0x94, 0x72, 0xbd, 0x70, 0x4f, 0x40, 0x29, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2933 = { .name = "ecdsa_secp224r1_sha224_2933", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2933_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2933_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2933_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 288 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2934 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2934_pubkey[] = { 0xe4, 0x5f, 0xcf, 0x0a, 0x7f, 0x4d, 0xc2, 0xa3, 0x08, 0xdc, 0x78, 0x68, 0x25, 0x14, 0x23, 0xfb, 0xf7, 0x1a, 0x20, 0x5a, 0x95, 0x46, 0x85, 0x0a, 0x01, 0xa7, 0x32, 0xfc, 0x9a, 0x73, 0xca, 0x4d, 0x41, 0x17, 0x50, 0x76, 0xf2, 0xf3, 0x62, 0xb2, 0x76, 0xec, 0xb0, 0xcc, 0xdb, 0x6e, 0x0b, 0xb3, 0x0c, 0x4a, 0x1b, 0x35, 0xc2, 0xe3, 0xed, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2934_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x97, 0x20, 0xb7, 0x55, 0x41, 0x3c, 0xca, 0x95, 0x06, 0xb5, 0xd2, 0x75, 0x89, 0xe5, 0x8a, 0xc4, 0xbe, 0xd8, 0x56, 0x76, 0x2b, 0xa7, 0xae, 0x20, 0xab, 0x5b, 0x43, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2934 = { .name = "ecdsa_secp224r1_sha224_2934", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2934_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2934_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2934_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 289 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2935 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2935_pubkey[] = { 0x3c, 0x59, 0xe1, 0x39, 0x82, 0xfd, 0x9c, 0x1a, 0x45, 0x99, 0x1b, 0x1e, 0x9d, 0x79, 0xe9, 0x39, 0xa5, 0x2a, 0x62, 0xca, 0x47, 0x97, 0x64, 0xf1, 0x47, 0x7e, 0x28, 0x13, 0x1b, 0x00, 0x4c, 0x9b, 0xff, 0xd7, 0xf0, 0x0c, 0x05, 0xe3, 0x16, 0x8c, 0x62, 0x5c, 0xc9, 0x3a, 0xb7, 0xa0, 0xf1, 0xba, 0x8d, 0x6f, 0xa2, 0x6a, 0x4d, 0x51, 0x62, 0xcb, }; static const unsigned char ecdsa_secp224r1_sha224_2935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2935_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2e, 0x41, 0x6e, 0xaa, 0x82, 0x79, 0x95, 0x2a, 0x0d, 0x6b, 0xa4, 0xeb, 0x13, 0xcb, 0xfe, 0xe6, 0x9c, 0xf7, 0xbc, 0xae, 0x43, 0x72, 0x32, 0xfb, 0xfa, 0x5a, 0x5d, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2935 = { .name = "ecdsa_secp224r1_sha224_2935", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2935_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2935_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2935_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 290 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2936 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2936_pubkey[] = { 0xc6, 0xb8, 0xff, 0x15, 0x2d, 0x7a, 0x1b, 0x7a, 0x99, 0xce, 0x34, 0x83, 0xbd, 0xea, 0xaf, 0x5b, 0xd2, 0xce, 0x64, 0xdc, 0x6b, 0x0f, 0x89, 0xcf, 0x35, 0x44, 0xb8, 0x7c, 0x05, 0x3a, 0xb6, 0xcf, 0x9c, 0xb5, 0x10, 0xdc, 0x14, 0x40, 0xab, 0x4e, 0x41, 0x2a, 0x16, 0x7f, 0x4c, 0x69, 0x36, 0x5f, 0xcf, 0xc9, 0x7f, 0x31, 0xd5, 0xba, 0x45, 0x81, }; static const unsigned char ecdsa_secp224r1_sha224_2936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2936_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc5, 0x62, 0x25, 0xff, 0xc3, 0xb6, 0x5f, 0xbf, 0x14, 0x21, 0x77, 0x60, 0x9d, 0xb1, 0x89, 0xab, 0x5b, 0xd0, 0x13, 0x24, 0x6f, 0x19, 0xe1, 0x1c, 0xa5, 0xb5, 0xa1, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2936 = { .name = "ecdsa_secp224r1_sha224_2936", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2936_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2936_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2936_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 291 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2937 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2937_pubkey[] = { 0x7c, 0x07, 0x72, 0xfb, 0x65, 0x53, 0xc0, 0xec, 0x0d, 0xd1, 0xf7, 0x3b, 0x5d, 0xb3, 0x80, 0x76, 0x4d, 0x9f, 0x2f, 0x7a, 0xfb, 0x4e, 0xac, 0x1e, 0x77, 0x4d, 0xac, 0xd5, 0x6e, 0x2e, 0x5d, 0xe0, 0xdb, 0x63, 0xbf, 0x03, 0xcf, 0x96, 0x75, 0xea, 0xe6, 0xd2, 0xdf, 0xe5, 0x42, 0x4e, 0x79, 0xab, 0x39, 0x49, 0x51, 0xc9, 0xb6, 0x0a, 0xd5, 0xdf, }; static const unsigned char ecdsa_secp224r1_sha224_2937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2937_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa7, 0xdd, 0x83, 0x1f, 0x41, 0x20, 0x17, 0x0b, 0x7f, 0x0a, 0x76, 0xed, 0x26, 0xbc, 0x4e, 0xa9, 0xcc, 0x9e, 0x1a, 0x70, 0x04, 0x8c, 0x1b, 0xb5, 0xf0, 0xa5, 0x54, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2937 = { .name = "ecdsa_secp224r1_sha224_2937", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2937_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2937_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2937_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 292 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2938 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2938_pubkey[] = { 0x41, 0x08, 0xe0, 0xcc, 0xd4, 0x7c, 0xba, 0x09, 0xfb, 0x7e, 0xd4, 0xd9, 0xf3, 0x45, 0x58, 0x23, 0x78, 0x09, 0x65, 0x15, 0x78, 0x61, 0xc1, 0xbf, 0x8f, 0x93, 0xd3, 0x4b, 0x46, 0xd6, 0xfd, 0xb7, 0x1e, 0x9e, 0x89, 0xad, 0xaa, 0xe7, 0x13, 0x76, 0xb1, 0x3f, 0xd1, 0x76, 0x44, 0xb1, 0x1e, 0xed, 0x00, 0xd4, 0x98, 0x78, 0x3d, 0xa0, 0xba, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha224_2938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2938_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2938 = { .name = "ecdsa_secp224r1_sha224_2938", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2938_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2938_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2938_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 293 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2939 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2939_pubkey[] = { 0x2f, 0x2d, 0xa4, 0x0a, 0x1b, 0x72, 0xf6, 0x7b, 0xa6, 0x36, 0x13, 0xa2, 0x43, 0x11, 0x9c, 0x41, 0xc7, 0x25, 0x28, 0x39, 0xcf, 0x10, 0x6e, 0x86, 0xb5, 0xd8, 0xe6, 0xe3, 0x5a, 0x1e, 0x0e, 0x2f, 0xc4, 0x9b, 0x4f, 0x31, 0x6f, 0x0c, 0x0e, 0x72, 0x36, 0x78, 0x57, 0x49, 0xeb, 0x34, 0xce, 0x92, 0x3c, 0x23, 0xae, 0xf3, 0x30, 0xaf, 0x87, 0x33, }; static const unsigned char ecdsa_secp224r1_sha224_2939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2939_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2939 = { .name = "ecdsa_secp224r1_sha224_2939", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2939_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2939_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2939_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 294 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2940 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2940_pubkey[] = { 0x7d, 0xc0, 0x97, 0x10, 0xf4, 0xf5, 0x86, 0xaf, 0x05, 0xb0, 0x8f, 0x0c, 0x9d, 0xcd, 0x48, 0xb1, 0x30, 0x87, 0x33, 0xc9, 0x77, 0x67, 0xfc, 0x28, 0x6d, 0x1c, 0x72, 0x83, 0x43, 0x53, 0xa7, 0x04, 0xc7, 0x95, 0x0b, 0x8f, 0x4a, 0x11, 0x39, 0x4b, 0xc8, 0xdb, 0x06, 0xad, 0xcc, 0xf1, 0x9d, 0x8e, 0xd9, 0x5c, 0x7f, 0x21, 0x4a, 0x17, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha224_2940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2940_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2940 = { .name = "ecdsa_secp224r1_sha224_2940", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2940_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2940_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2940_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 295 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2941 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2941_pubkey[] = { 0xdb, 0xb4, 0x39, 0xe2, 0xc3, 0xe9, 0xd1, 0x82, 0x2b, 0x94, 0xcc, 0xc7, 0xd9, 0x8c, 0x9f, 0xcb, 0x66, 0x8e, 0x65, 0xdd, 0x6a, 0x75, 0x9a, 0xd2, 0xdf, 0xdc, 0xd3, 0x28, 0x82, 0x66, 0x32, 0x34, 0xe6, 0xda, 0x51, 0x2d, 0x7d, 0x7d, 0x5f, 0xe7, 0x91, 0x56, 0xad, 0x0e, 0x19, 0xff, 0xc6, 0x2d, 0x61, 0x8e, 0x3c, 0xf4, 0x82, 0x76, 0x10, 0x6d, }; static const unsigned char ecdsa_secp224r1_sha224_2941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2941_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2941 = { .name = "ecdsa_secp224r1_sha224_2941", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2941_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2941_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2941_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 296 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2942 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2942_pubkey[] = { 0xe0, 0x12, 0xdc, 0x20, 0xcc, 0xa5, 0xbd, 0x2a, 0xdf, 0xaa, 0x27, 0xf5, 0x74, 0x19, 0x59, 0x6c, 0xe0, 0x9e, 0xd0, 0xf1, 0x8a, 0x91, 0x48, 0xe3, 0x0a, 0x0f, 0x6e, 0xd2, 0x55, 0xbe, 0xca, 0x1b, 0x5e, 0x3e, 0x24, 0x85, 0xef, 0x95, 0x37, 0xae, 0x48, 0xa6, 0x7b, 0x72, 0xdb, 0xcf, 0x6d, 0x7b, 0x33, 0x37, 0x20, 0x23, 0xa5, 0xc4, 0x43, 0xe8, }; static const unsigned char ecdsa_secp224r1_sha224_2942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2942_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2942 = { .name = "ecdsa_secp224r1_sha224_2942", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2942_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2942_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2942_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 297 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2943 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2943_pubkey[] = { 0xc5, 0x10, 0xab, 0x34, 0xab, 0xd4, 0x85, 0x5c, 0x54, 0xd6, 0x24, 0x07, 0xab, 0xe6, 0xca, 0x09, 0x0c, 0x73, 0xba, 0x49, 0xac, 0xa9, 0xde, 0x9b, 0xf1, 0x17, 0xbc, 0xa2, 0x42, 0xb3, 0xb0, 0x0c, 0x27, 0x2c, 0x22, 0x68, 0x1a, 0xf7, 0xc2, 0x55, 0x12, 0x0f, 0xac, 0x14, 0x8a, 0xd7, 0x3c, 0x81, 0xb4, 0x78, 0x46, 0xe4, 0xad, 0x2f, 0x56, 0x27, }; static const unsigned char ecdsa_secp224r1_sha224_2943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2943_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2943 = { .name = "ecdsa_secp224r1_sha224_2943", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2943_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2943_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2943_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 298 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2944 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2944_pubkey[] = { 0x08, 0xa6, 0xe1, 0x67, 0x53, 0x6a, 0x47, 0xaa, 0xa2, 0x24, 0xfe, 0xc2, 0x1c, 0xe0, 0x77, 0x64, 0x2e, 0xfd, 0xb9, 0x7d, 0x93, 0xae, 0x16, 0xb9, 0x67, 0x22, 0x79, 0xf4, 0x33, 0xfb, 0x9f, 0x1a, 0xbb, 0x25, 0xf2, 0xc0, 0xc3, 0xe6, 0x00, 0x8a, 0xc8, 0x57, 0xed, 0xe4, 0xa8, 0x9c, 0xa8, 0xd9, 0xd0, 0x8b, 0x89, 0x96, 0x61, 0x49, 0x69, 0xac, }; static const unsigned char ecdsa_secp224r1_sha224_2944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2944_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2944 = { .name = "ecdsa_secp224r1_sha224_2944", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2944_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2944_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2944_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 299 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2945 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2945_pubkey[] = { 0x1a, 0x83, 0xe1, 0x85, 0xfc, 0xf3, 0x0e, 0x6c, 0x69, 0xcf, 0x29, 0x2e, 0x49, 0x7d, 0x63, 0xcc, 0x04, 0xe6, 0xfd, 0x07, 0xcb, 0x93, 0x65, 0xa7, 0x4b, 0xe3, 0xc3, 0x9c, 0x6b, 0x2d, 0x56, 0x24, 0x7d, 0xf4, 0x9c, 0xf9, 0x41, 0x76, 0xc4, 0xe8, 0xef, 0xc8, 0x4e, 0xc7, 0x10, 0xcd, 0x0d, 0x61, 0x4d, 0xd0, 0x66, 0xc1, 0x6f, 0x6a, 0xd3, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha224_2945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2945_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2945 = { .name = "ecdsa_secp224r1_sha224_2945", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2945_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2945_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2945_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 300 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2946 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2946_pubkey[] = { 0x2d, 0x59, 0xef, 0xd8, 0x41, 0xa4, 0x4b, 0x83, 0xfd, 0x42, 0xe6, 0xa2, 0x98, 0x4a, 0x53, 0xfa, 0x93, 0xad, 0x24, 0x2c, 0x11, 0x67, 0x8f, 0x92, 0x20, 0x2c, 0xcc, 0xfb, 0x95, 0xbc, 0xaf, 0x0b, 0x2f, 0x6e, 0xb0, 0xe6, 0xd4, 0xd8, 0x3e, 0x32, 0x60, 0xe0, 0x37, 0xd3, 0xdc, 0x0e, 0x48, 0xab, 0x6c, 0x41, 0x41, 0xce, 0x6b, 0x56, 0xca, 0xd0, }; static const unsigned char ecdsa_secp224r1_sha224_2946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2946_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2946 = { .name = "ecdsa_secp224r1_sha224_2946", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2946_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2946_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2946_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 301 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2947 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2947_pubkey[] = { 0x11, 0x61, 0xc7, 0xad, 0xd6, 0xf6, 0x7f, 0x99, 0x5b, 0x93, 0xe1, 0x9e, 0xb1, 0x8b, 0xd5, 0xe7, 0x3f, 0xd7, 0x1d, 0x6b, 0xb1, 0x0d, 0xce, 0xef, 0x0b, 0x79, 0x2e, 0x9c, 0x08, 0xc4, 0x4c, 0xef, 0x98, 0x26, 0xb4, 0xed, 0x67, 0x50, 0x8c, 0x09, 0xd0, 0x7e, 0xc8, 0x57, 0xa0, 0xea, 0x49, 0xed, 0x1a, 0x7f, 0x1f, 0xa2, 0xc7, 0x4c, 0xb8, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2947_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2947 = { .name = "ecdsa_secp224r1_sha224_2947", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2947_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2947_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2947_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 302 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2948 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2948_pubkey[] = { 0x84, 0xdc, 0x3d, 0x2e, 0xbf, 0xcf, 0x34, 0x80, 0x71, 0x3b, 0xae, 0xff, 0x30, 0xad, 0x07, 0x81, 0xbc, 0x8c, 0x4d, 0x06, 0xab, 0x6d, 0xdd, 0x4f, 0x7f, 0x10, 0x45, 0xaf, 0x75, 0x70, 0x53, 0x7c, 0x5d, 0x71, 0xa7, 0x8b, 0x1a, 0x04, 0x1a, 0xca, 0x0f, 0xe3, 0x5f, 0x64, 0x28, 0x24, 0xab, 0xda, 0x8c, 0x3f, 0xf2, 0xe9, 0xfc, 0xf5, 0xc8, 0xcb, }; static const unsigned char ecdsa_secp224r1_sha224_2948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2948_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2948 = { .name = "ecdsa_secp224r1_sha224_2948", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2948_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2948_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2948_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 303 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2949 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2949_pubkey[] = { 0x17, 0x67, 0x57, 0x4e, 0x64, 0x5c, 0x55, 0x0e, 0xf3, 0xd3, 0x53, 0xf7, 0x6d, 0x44, 0x28, 0xf9, 0x61, 0x6a, 0xc2, 0x88, 0xb3, 0x63, 0x78, 0x85, 0x7d, 0xe3, 0x32, 0x62, 0x9f, 0xe0, 0x98, 0x25, 0xa5, 0x7f, 0x3a, 0x0e, 0xc1, 0x11, 0x89, 0xf4, 0x56, 0x02, 0x72, 0x29, 0x7a, 0xb6, 0xd5, 0xe0, 0x95, 0x40, 0x1f, 0xeb, 0xb6, 0x0d, 0x0d, 0xc9, }; static const unsigned char ecdsa_secp224r1_sha224_2949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2949_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x1e, 0xf3, 0x59, 0xe4, 0xbd, 0x14, 0x6f, 0x63, 0xd8, 0x15, 0x5c, 0x5c, 0x25, 0x23, 0xfa, 0x33, 0x53, 0xc9, 0x82, 0x0f, 0x84, 0xf2, 0x81, 0x50, 0xba, 0xd3, 0x81, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2949 = { .name = "ecdsa_secp224r1_sha224_2949", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2949_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2949_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2949_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 304 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2950 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2950_pubkey[] = { 0x17, 0x67, 0x57, 0x4e, 0x64, 0x5c, 0x55, 0x0e, 0xf3, 0xd3, 0x53, 0xf7, 0x6d, 0x44, 0x28, 0xf9, 0x61, 0x6a, 0xc2, 0x88, 0xb3, 0x63, 0x78, 0x85, 0x7d, 0xe3, 0x32, 0x62, 0x60, 0x1f, 0x67, 0xda, 0x5a, 0x80, 0xc5, 0xf1, 0x3e, 0xee, 0x76, 0x0b, 0xa9, 0xfd, 0x8d, 0xd5, 0x85, 0x49, 0x2a, 0x1f, 0x6a, 0xbf, 0xe0, 0x14, 0x49, 0xf2, 0xf2, 0x38, }; static const unsigned char ecdsa_secp224r1_sha224_2950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2950_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x1e, 0xf3, 0x59, 0xe4, 0xbd, 0x14, 0x6f, 0x63, 0xd8, 0x15, 0x5c, 0x5c, 0x25, 0x23, 0xfa, 0x33, 0x53, 0xc9, 0x82, 0x0f, 0x84, 0xf2, 0x81, 0x50, 0xba, 0xd3, 0x81, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2950 = { .name = "ecdsa_secp224r1_sha224_2950", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2950_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2950_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2950_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 305 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2951 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2951_pubkey[] = { 0xe2, 0xef, 0x8c, 0x8c, 0xcb, 0x58, 0xeb, 0xa2, 0x87, 0xd9, 0x27, 0x9b, 0x34, 0x9e, 0x76, 0x52, 0xcc, 0xa3, 0xe7, 0xcd, 0xa1, 0x88, 0xa5, 0xf1, 0x79, 0xd7, 0x71, 0x42, 0xf8, 0x75, 0x94, 0xf3, 0x66, 0x4c, 0x0f, 0xaf, 0x7b, 0x59, 0x67, 0x0e, 0x35, 0x3a, 0x37, 0x0d, 0x1d, 0x68, 0xad, 0x89, 0xd6, 0xa1, 0xe2, 0x46, 0xb4, 0xd0, 0x3b, 0xee, }; static const unsigned char ecdsa_secp224r1_sha224_2951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2951_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2951 = { .name = "ecdsa_secp224r1_sha224_2951", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2951_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2951_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2951_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 306 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2952 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2952_pubkey[] = { 0xb8, 0xbf, 0x3e, 0xf9, 0x64, 0x6a, 0xbf, 0xff, 0xb8, 0x42, 0x20, 0x10, 0x4e, 0xc9, 0x96, 0xa9, 0x2c, 0xef, 0x33, 0xf9, 0x32, 0x8e, 0xc4, 0xcb, 0x1e, 0xa6, 0x99, 0x48, 0x4f, 0xea, 0x51, 0xa0, 0xde, 0x9e, 0x9d, 0x80, 0x1b, 0xab, 0xd4, 0x2c, 0xa0, 0x92, 0x4b, 0x36, 0x49, 0x8b, 0xc5, 0x90, 0x0f, 0xbe, 0xb9, 0xcb, 0xd5, 0xad, 0x9c, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha224_2952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2952_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2952 = { .name = "ecdsa_secp224r1_sha224_2952", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2952_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2952_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2952_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 307 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2953 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2953_pubkey[] = { 0x28, 0x6e, 0x80, 0x42, 0x9c, 0x87, 0x96, 0xdc, 0xd8, 0x85, 0xd9, 0x5f, 0x96, 0x0d, 0x20, 0x9f, 0xed, 0x19, 0xf8, 0x7e, 0x2c, 0xe4, 0x23, 0xd1, 0x66, 0xc8, 0xe2, 0x20, 0x2e, 0x30, 0x88, 0x2c, 0x09, 0x97, 0x0d, 0x5d, 0xd5, 0x8b, 0x67, 0xe5, 0xbb, 0x80, 0xaf, 0xfe, 0xc7, 0x42, 0x48, 0xa9, 0xcb, 0x4a, 0x78, 0x33, 0x84, 0xc8, 0xb6, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha224_2953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2953_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2953 = { .name = "ecdsa_secp224r1_sha224_2953", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2953_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2953_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2953_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 308 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2954 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2954_pubkey[] = { 0x55, 0x99, 0xa3, 0xfa, 0xf9, 0x6a, 0xba, 0x73, 0x02, 0xbd, 0x3d, 0x98, 0xcf, 0xde, 0x69, 0x52, 0x5b, 0x72, 0x92, 0x76, 0x23, 0x83, 0xf4, 0xa0, 0xb5, 0xc3, 0x10, 0x39, 0x3f, 0xaa, 0x45, 0xfe, 0xb6, 0xc3, 0x5d, 0x2b, 0x7b, 0xf2, 0x5f, 0xfc, 0x63, 0x3c, 0x42, 0x0e, 0xbf, 0xc4, 0xe7, 0x15, 0x76, 0x53, 0x02, 0xc5, 0xa1, 0x1a, 0xc7, 0x93, }; static const unsigned char ecdsa_secp224r1_sha224_2954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2954_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2954 = { .name = "ecdsa_secp224r1_sha224_2954", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2954_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2954_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2954_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 309 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2955 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2955_pubkey[] = { 0x5b, 0x52, 0x34, 0xb8, 0xdb, 0x6b, 0xbd, 0x39, 0x6e, 0xae, 0x7d, 0x1c, 0xa4, 0xe6, 0xd8, 0x77, 0x82, 0x4c, 0x98, 0xcd, 0xe9, 0xfb, 0xfa, 0xb3, 0x4b, 0x6b, 0x8c, 0xcb, 0x1f, 0x38, 0xae, 0x9f, 0x87, 0xad, 0xc3, 0xe6, 0xd2, 0x47, 0x4e, 0xb5, 0xe3, 0xcd, 0x9a, 0xef, 0xf0, 0x92, 0x73, 0x20, 0x21, 0x4b, 0xe5, 0x50, 0xf5, 0xe6, 0x2e, 0xd4, }; static const unsigned char ecdsa_secp224r1_sha224_2955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2955_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2955 = { .name = "ecdsa_secp224r1_sha224_2955", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2955_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2955_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2955_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 310 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2956 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2956_pubkey[] = { 0xac, 0xed, 0x4e, 0xa8, 0x94, 0x9e, 0x5a, 0xe3, 0x7e, 0xf2, 0xf5, 0xeb, 0x5e, 0x00, 0x67, 0x5d, 0x08, 0xe1, 0x7c, 0x34, 0xbe, 0x66, 0x77, 0xb0, 0xf2, 0x69, 0xb6, 0x72, 0x5e, 0x3a, 0xd0, 0xaf, 0x49, 0xeb, 0xff, 0xf4, 0x15, 0xee, 0x4f, 0x2a, 0x83, 0x8e, 0xad, 0x1f, 0x84, 0xca, 0xfa, 0xa6, 0x52, 0xc1, 0x7a, 0xcc, 0x26, 0x13, 0x07, 0x25, }; static const unsigned char ecdsa_secp224r1_sha224_2956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2956_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2956 = { .name = "ecdsa_secp224r1_sha224_2956", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2956_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2956_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2956_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 311 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2957 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2957_pubkey[] = { 0x3e, 0x8c, 0x1b, 0xcc, 0x16, 0x19, 0x5e, 0x87, 0x69, 0xe2, 0x5d, 0x4c, 0x85, 0x98, 0x07, 0xdf, 0xfe, 0x17, 0x8b, 0xed, 0x5b, 0xca, 0x9d, 0xb0, 0x6e, 0xfa, 0x15, 0x32, 0x4e, 0x3b, 0x53, 0xb3, 0x04, 0x8b, 0x8c, 0xcd, 0x8c, 0xdc, 0x12, 0x65, 0xbe, 0x24, 0x0c, 0x8e, 0xe2, 0x04, 0x06, 0x04, 0x86, 0xa9, 0x9a, 0xd3, 0x1e, 0xaa, 0xd3, 0xa4, }; static const unsigned char ecdsa_secp224r1_sha224_2957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2957_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2957 = { .name = "ecdsa_secp224r1_sha224_2957", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2957_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2957_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2957_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 312 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2958 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2958_pubkey[] = { 0x24, 0x81, 0x93, 0x23, 0xb7, 0xbe, 0x8a, 0xb0, 0x91, 0x0f, 0x7f, 0x33, 0xbd, 0x2f, 0x76, 0x69, 0xc4, 0x4b, 0x13, 0xf0, 0x94, 0x79, 0x96, 0x5e, 0x95, 0x28, 0x7d, 0x13, 0xb0, 0x59, 0x23, 0x45, 0xbe, 0xaf, 0xbf, 0xdb, 0x8c, 0xf3, 0x62, 0x92, 0x69, 0xbd, 0xd8, 0x17, 0x72, 0x8d, 0x5d, 0x5c, 0xd3, 0xc2, 0x8b, 0xc6, 0xc6, 0x41, 0x4a, 0x70, }; static const unsigned char ecdsa_secp224r1_sha224_2958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2958_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2958 = { .name = "ecdsa_secp224r1_sha224_2958", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2958_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2958_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2958_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 313 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2959 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2959_pubkey[] = { 0x44, 0xcf, 0x57, 0xba, 0xc3, 0x0a, 0x83, 0xda, 0x39, 0xf9, 0x0b, 0xf3, 0xfa, 0xac, 0xd5, 0x22, 0x11, 0xa7, 0x0f, 0xb9, 0x25, 0x47, 0xdb, 0x77, 0x78, 0xea, 0x6c, 0x81, 0x2b, 0x3f, 0xd1, 0xbf, 0x14, 0x68, 0x8d, 0x27, 0x70, 0xc5, 0x0c, 0xd5, 0xa8, 0x90, 0xa3, 0x80, 0x7b, 0xa0, 0xe8, 0x61, 0x21, 0x36, 0xa1, 0xb1, 0x1e, 0x03, 0x0f, 0x82, }; static const unsigned char ecdsa_secp224r1_sha224_2959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2959_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2959 = { .name = "ecdsa_secp224r1_sha224_2959", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2959_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2959_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2959_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 314 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2960 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2960_pubkey[] = { 0xdc, 0x17, 0xf1, 0x00, 0x1d, 0x32, 0x61, 0x27, 0xf7, 0x37, 0x5c, 0xff, 0xa7, 0x0b, 0x75, 0x30, 0xbc, 0xa4, 0xda, 0x10, 0x40, 0xdc, 0x43, 0xd0, 0x04, 0x4a, 0xac, 0xa0, 0x7a, 0x14, 0x6f, 0x04, 0xc5, 0x29, 0x4c, 0xfe, 0x7e, 0x1e, 0xd5, 0x87, 0xda, 0x55, 0xba, 0xe7, 0x0b, 0x7f, 0xa8, 0xe3, 0x2f, 0x6a, 0xa8, 0x00, 0x31, 0x4d, 0x01, 0xdd, }; static const unsigned char ecdsa_secp224r1_sha224_2960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2960_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2960 = { .name = "ecdsa_secp224r1_sha224_2960", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2960_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2960_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2960_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 315 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2961 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2961_pubkey[] = { 0x68, 0xe2, 0xd7, 0x08, 0x8e, 0xac, 0x18, 0xba, 0x77, 0x5b, 0xf6, 0x8c, 0x5c, 0x50, 0x9e, 0x86, 0xaf, 0xd6, 0xf9, 0x34, 0x51, 0xb4, 0xe4, 0xee, 0x1d, 0x73, 0xe2, 0x77, 0xe2, 0x4f, 0xf4, 0xe2, 0x7e, 0xf6, 0xc5, 0x19, 0xdb, 0x67, 0x6d, 0x82, 0x2c, 0x5d, 0xb0, 0x40, 0x48, 0x28, 0x88, 0x01, 0x3c, 0x8f, 0x38, 0x81, 0xbc, 0x9a, 0xc6, 0x5a, }; static const unsigned char ecdsa_secp224r1_sha224_2961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2961_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2961 = { .name = "ecdsa_secp224r1_sha224_2961", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2961_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2961_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2961_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 316 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2962 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2962_pubkey[] = { 0xcd, 0x41, 0x71, 0xad, 0xcb, 0x8b, 0xe7, 0x5e, 0x77, 0x34, 0x06, 0x1a, 0x04, 0x8b, 0x2b, 0xf2, 0x28, 0xd1, 0x67, 0xc2, 0x74, 0x2d, 0x27, 0xf8, 0x54, 0x39, 0x20, 0x46, 0x86, 0x5e, 0xb9, 0x58, 0xeb, 0xd3, 0x20, 0xba, 0x87, 0x66, 0x2a, 0xd3, 0xac, 0x7a, 0xf5, 0x68, 0xc6, 0xbe, 0x0f, 0x09, 0xbe, 0x09, 0x0b, 0xcf, 0xe0, 0x83, 0xb3, 0xe5, }; static const unsigned char ecdsa_secp224r1_sha224_2962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2962_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2962 = { .name = "ecdsa_secp224r1_sha224_2962", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2962_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2962_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2962_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 317 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2963 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2963_pubkey[] = { 0xee, 0xfd, 0xf9, 0x9a, 0xb6, 0x9d, 0x18, 0x88, 0x77, 0x2c, 0xab, 0xe2, 0x1d, 0x40, 0x60, 0x45, 0xe1, 0xbe, 0xab, 0x82, 0x76, 0x1a, 0x70, 0x40, 0xbe, 0xeb, 0x7e, 0xd3, 0x59, 0x71, 0x8c, 0x88, 0x9a, 0xf8, 0x0f, 0x22, 0xf3, 0x20, 0xfb, 0xe6, 0x62, 0xd5, 0xea, 0x0f, 0x65, 0xdf, 0xb4, 0xa5, 0x58, 0x9c, 0x29, 0x4c, 0xe5, 0xb7, 0x33, 0x59, }; static const unsigned char ecdsa_secp224r1_sha224_2963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2963_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2963 = { .name = "ecdsa_secp224r1_sha224_2963", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2963_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2963_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2963_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 318 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2964 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2964_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2964_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2964 = { .name = "ecdsa_secp224r1_sha224_2964", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2964_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2964_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2964_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 319 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2965 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2965_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_2965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2965_sig[] = { 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2965 = { .name = "ecdsa_secp224r1_sha224_2965", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2965_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2965_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2965_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 320 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2966 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2966_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_2966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2966_sig[] = { 0x75, 0x3b, 0xb4, 0x00, 0x78, 0x93, 0x40, 0x81, 0xd7, 0xbd, 0x11, 0x3e, 0xc4, 0x9b, 0x19, 0xef, 0x09, 0xd1, 0xba, 0x33, 0x49, 0x86, 0x90, 0x51, 0x6d, 0x4d, 0x12, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2966 = { .name = "ecdsa_secp224r1_sha224_2966", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2966_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2966_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2966_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 321 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2967 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2967_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_2967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2967_sig[] = { 0x8a, 0xc4, 0x4b, 0xff, 0x87, 0x6c, 0xbf, 0x7e, 0x28, 0x42, 0xee, 0xc1, 0x3b, 0x63, 0xfc, 0xb3, 0xd6, 0xe7, 0x36, 0x0a, 0xca, 0x56, 0x98, 0xf3, 0xef, 0x0f, 0x18, 0x11, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2967 = { .name = "ecdsa_secp224r1_sha224_2967", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2967_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2967_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2967_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 322 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2968 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2968_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2968_sig[] = { 0x27, 0x70, 0x40, 0x3d, 0x42, 0xb7, 0xb4, 0x5e, 0x55, 0x33, 0x08, 0xd1, 0xf6, 0xa4, 0x80, 0x64, 0x0b, 0x61, 0xca, 0xc0, 0xae, 0x36, 0x66, 0x5d, 0x6f, 0x14, 0xd3, 0x4e, 0x85, 0x50, 0x6b, 0x04, 0x04, 0x26, 0x5e, 0xde, 0xdf, 0x9a, 0x89, 0xfc, 0x7c, 0x9c, 0x7a, 0x55, 0xc1, 0x6c, 0x5b, 0x0d, 0x78, 0x1f, 0x77, 0x4d, 0xe8, 0xf4, 0x6f, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2968 = { .name = "ecdsa_secp224r1_sha224_2968", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2968_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha224_2968_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 323 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2969 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2969_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2969_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_2969_sig[] = { 0xb6, 0x8d, 0xa7, 0x22, 0xbb, 0xba, 0x7f, 0x6a, 0x58, 0x41, 0x7b, 0xb5, 0xd0, 0xdd, 0x88, 0xf4, 0x03, 0x16, 0xfc, 0x62, 0x8b, 0x0e, 0xdf, 0xcb, 0x0f, 0x02, 0xb0, 0x62, 0x5c, 0x74, 0x2e, 0x33, 0x0b, 0x6f, 0xeb, 0xad, 0xf9, 0xa1, 0x2d, 0x58, 0xba, 0x2a, 0x71, 0x99, 0x62, 0x94, 0x57, 0xef, 0x2e, 0x9e, 0x4c, 0xec, 0xd2, 0xf0, 0x9f, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2969 = { .name = "ecdsa_secp224r1_sha224_2969", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2969_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2969_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_2969_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 324 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2970 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2970_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha224_2970_sig[] = { 0x01, 0xec, 0x1f, 0xf1, 0x5c, 0x8a, 0x55, 0xd6, 0x97, 0xa5, 0x42, 0x4d, 0x67, 0x47, 0x53, 0xf8, 0x2f, 0x71, 0x15, 0x93, 0x82, 0x83, 0x68, 0xd2, 0xfb, 0xb4, 0x1a, 0x17, 0x20, 0xd9, 0x08, 0x9d, 0xb7, 0xba, 0xf4, 0x6b, 0x81, 0x35, 0xe1, 0x7e, 0x01, 0x64, 0x5e, 0x73, 0x2d, 0x22, 0xd5, 0xad, 0xb2, 0x0e, 0x37, 0x72, 0xda, 0x74, 0x0e, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2970 = { .name = "ecdsa_secp224r1_sha224_2970", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2970_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2970_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha224_2970_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 325 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2971 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2971_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha224_2971_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2971_sig[] = { 0x3e, 0x46, 0xe9, 0xba, 0x4d, 0xc0, 0x89, 0xff, 0x30, 0xfa, 0x8c, 0x02, 0x09, 0xc3, 0x1b, 0x11, 0xff, 0x49, 0xdb, 0xee, 0xc0, 0x90, 0xf9, 0xf5, 0x3c, 0x00, 0x0c, 0x75, 0x6f, 0x2e, 0x3b, 0x36, 0x36, 0x94, 0x16, 0x60, 0x2b, 0xca, 0x83, 0x20, 0x68, 0x09, 0xed, 0x89, 0x8f, 0xcf, 0x15, 0x8a, 0x56, 0xc2, 0x5a, 0x54, 0x74, 0x14, 0x3f, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2971 = { .name = "ecdsa_secp224r1_sha224_2971", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2971_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2971_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha224_2971_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 326 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2972 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2972_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2972_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2972_sig[] = { 0x77, 0xb3, 0x8d, 0xa3, 0x70, 0x79, 0xd2, 0x7b, 0x83, 0x76, 0x13, 0xac, 0x3e, 0x82, 0x48, 0xd6, 0x6e, 0xab, 0xd5, 0xd6, 0x37, 0x07, 0x6c, 0x8e, 0x62, 0xc7, 0x99, 0x1e, 0xd4, 0x0c, 0xd9, 0xf8, 0x1e, 0xfc, 0x52, 0xdb, 0x44, 0x29, 0xc0, 0xc1, 0xaf, 0x7c, 0x1d, 0x8a, 0x22, 0xb6, 0xc7, 0xba, 0xbb, 0xe7, 0xfb, 0xd8, 0xb5, 0xb3, 0xf0, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2972 = { .name = "ecdsa_secp224r1_sha224_2972", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2972_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2972_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2972_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 327 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2973 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2973_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2973_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2973_sig[] = { 0x8c, 0x03, 0xb3, 0x2c, 0x16, 0x6c, 0x0c, 0x8b, 0x99, 0xd7, 0xf8, 0x76, 0xac, 0xd1, 0x09, 0x44, 0x7e, 0xfb, 0x13, 0xf6, 0xb8, 0x29, 0x45, 0xe7, 0x8d, 0x51, 0xa2, 0x69, 0x65, 0x75, 0x68, 0xf1, 0xa0, 0xa8, 0xbd, 0x7d, 0xf5, 0xff, 0xa4, 0x30, 0x97, 0xeb, 0xb2, 0xb6, 0x44, 0x35, 0xc8, 0xe3, 0x33, 0x5b, 0xca, 0xaf, 0xc6, 0x3f, 0x9e, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2973 = { .name = "ecdsa_secp224r1_sha224_2973", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2973_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2973_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2973_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 328 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2974 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2974_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha224_2974_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2974_sig[] = { 0xd1, 0x99, 0xa3, 0x75, 0x25, 0x3d, 0x30, 0xf1, 0xd2, 0xb4, 0x49, 0x35, 0x42, 0xe9, 0x93, 0x4f, 0x9f, 0x1f, 0x8b, 0x06, 0x80, 0x11, 0x76, 0x79, 0xf5, 0xbc, 0x4a, 0xd2, 0x11, 0x41, 0x9d, 0xdb, 0xf0, 0x2c, 0x8a, 0xd5, 0xf5, 0x18, 0xf8, 0xda, 0xc3, 0x3f, 0x86, 0xa8, 0x5e, 0x77, 0x7a, 0xf5, 0x1a, 0x03, 0x41, 0x32, 0xe2, 0x76, 0x7a, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2974 = { .name = "ecdsa_secp224r1_sha224_2974", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2974_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2974_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2974_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 329 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2975 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2975_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2975_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2975_sig[] = { 0x8f, 0xf8, 0x26, 0x99, 0xe2, 0xe8, 0x28, 0x70, 0xbe, 0x9c, 0xfd, 0xd8, 0xa4, 0x08, 0xbb, 0x34, 0xf8, 0xf3, 0x8a, 0x83, 0xa4, 0xac, 0x83, 0x70, 0xf1, 0x8f, 0x2b, 0xc8, 0x7e, 0x50, 0x08, 0xfa, 0xb6, 0xa0, 0xd4, 0x15, 0x92, 0x00, 0x07, 0x7e, 0xf9, 0x91, 0x8d, 0xad, 0x65, 0x92, 0xcd, 0x83, 0x59, 0x83, 0x88, 0x52, 0xc6, 0x36, 0xac, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2975 = { .name = "ecdsa_secp224r1_sha224_2975", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2975_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2975_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2975_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 330 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2976 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2976_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2976_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2976_sig[] = { 0x3f, 0x3b, 0x60, 0xb5, 0x29, 0xae, 0x0f, 0x95, 0x0c, 0x51, 0x72, 0x64, 0xad, 0xf2, 0xe4, 0x81, 0x61, 0x6b, 0xc4, 0x74, 0x16, 0x74, 0x2d, 0x51, 0x03, 0x58, 0x96, 0x60, 0xf7, 0x31, 0xeb, 0xe9, 0x8e, 0x58, 0x38, 0x4b, 0x3a, 0x64, 0xb4, 0x69, 0x6d, 0x4c, 0xc9, 0x61, 0x98, 0x28, 0xad, 0x51, 0xd7, 0xc3, 0x99, 0x80, 0x74, 0x97, 0x09, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2976 = { .name = "ecdsa_secp224r1_sha224_2976", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2976_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2976_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2976_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 331 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2977 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2977_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_2977_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2977_sig[] = { 0xdc, 0x11, 0xff, 0xdc, 0x6b, 0x78, 0x75, 0x4a, 0x33, 0x5f, 0x16, 0x8c, 0x40, 0x33, 0x91, 0x6a, 0x21, 0x58, 0xd1, 0x25, 0xa3, 0xf4, 0xfe, 0xd9, 0xdc, 0x73, 0x66, 0x61, 0x6d, 0xd8, 0x43, 0x64, 0x71, 0x7d, 0x9f, 0x4b, 0x07, 0x90, 0xf2, 0xb2, 0x82, 0xf9, 0x24, 0x5e, 0xcb, 0x31, 0x68, 0x74, 0xea, 0xc0, 0x25, 0x60, 0x03, 0x97, 0xf1, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2977 = { .name = "ecdsa_secp224r1_sha224_2977", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2977_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2977_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2977_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 332 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2978 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2978_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2978_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2978_sig[] = { 0xa5, 0x9b, 0x25, 0xb7, 0x86, 0xd5, 0x5f, 0x26, 0xb0, 0x4d, 0xfe, 0x90, 0xee, 0x02, 0xa6, 0xbd, 0xe6, 0x4e, 0xd6, 0xe4, 0x31, 0xdc, 0x9f, 0xbd, 0xc3, 0xab, 0x36, 0x0e, 0xfc, 0x14, 0xb5, 0xad, 0x20, 0xf3, 0x9d, 0xa9, 0x90, 0x0e, 0x35, 0x43, 0x79, 0x36, 0xc8, 0x62, 0x6f, 0xcc, 0xf6, 0x63, 0x2e, 0x7a, 0x3d, 0x9e, 0x58, 0x7e, 0x33, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2978 = { .name = "ecdsa_secp224r1_sha224_2978", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2978_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2978_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2978_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 333 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2979 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2979_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2979_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2979_sig[] = { 0x2e, 0xda, 0x1f, 0x96, 0xc1, 0xa6, 0xe3, 0xad, 0x8a, 0x33, 0x21, 0xce, 0x82, 0xcb, 0xb1, 0x3a, 0x5b, 0x93, 0x5b, 0x50, 0x1a, 0xbf, 0x6c, 0x06, 0xf7, 0xfd, 0x2b, 0x3f, 0xe8, 0x10, 0x50, 0xc3, 0xe5, 0xf5, 0x3a, 0x3c, 0x7b, 0x9d, 0x0b, 0xdb, 0x9e, 0xd9, 0x2a, 0x32, 0x6d, 0xfe, 0xac, 0x44, 0x79, 0x1b, 0xa1, 0xab, 0xe4, 0xd6, 0xe9, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2979 = { .name = "ecdsa_secp224r1_sha224_2979", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2979_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2979_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2979_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 334 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2980 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2980_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha224_2980_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2980_sig[] = { 0x60, 0xf5, 0xe0, 0x93, 0xfd, 0xa0, 0x8f, 0xc1, 0x4a, 0xc9, 0x9d, 0x82, 0x0a, 0x18, 0xad, 0x13, 0x70, 0xc5, 0x81, 0x50, 0xbe, 0xa0, 0xac, 0xa2, 0x4f, 0xc6, 0xdb, 0x9d, 0xc2, 0x22, 0x0a, 0x0e, 0xbb, 0xf4, 0x89, 0x6e, 0x68, 0xfd, 0xb5, 0xbd, 0x82, 0x4f, 0x88, 0x29, 0x1c, 0x1c, 0x86, 0x2b, 0x91, 0x6f, 0x9c, 0x4a, 0xf8, 0x7f, 0x8f, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2980 = { .name = "ecdsa_secp224r1_sha224_2980", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2980_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2980_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2980_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 335 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2981 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2981_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2981_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2981_sig[] = { 0x2e, 0xad, 0x37, 0x84, 0x6a, 0x5e, 0x36, 0xa4, 0x90, 0xb7, 0x51, 0x40, 0xbd, 0xc7, 0xb6, 0x36, 0xc6, 0xe9, 0xf6, 0xd8, 0xf9, 0x80, 0xf6, 0xfa, 0xdb, 0x08, 0xf7, 0x69, 0xe1, 0xfe, 0x13, 0x0a, 0xe1, 0x79, 0x8c, 0x19, 0x6d, 0x7b, 0xe6, 0x2c, 0x7a, 0x5d, 0xdb, 0x31, 0x68, 0xcf, 0x4b, 0x8d, 0x48, 0xb6, 0xb6, 0xb4, 0xdc, 0x94, 0xab, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2981 = { .name = "ecdsa_secp224r1_sha224_2981", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2981_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2981_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2981_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 336 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2982 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2982_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2982_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2982_sig[] = { 0xa8, 0xa4, 0xc9, 0x41, 0x6d, 0x72, 0xc8, 0x60, 0x57, 0x3d, 0x07, 0x32, 0x81, 0xcb, 0x08, 0xc8, 0x6a, 0xd6, 0x53, 0x13, 0xf0, 0x6b, 0x15, 0xa3, 0x29, 0xe8, 0x2e, 0xb2, 0x5a, 0x6e, 0xdd, 0x2f, 0x08, 0x16, 0xb7, 0x26, 0x3d, 0x91, 0x5d, 0x72, 0xc6, 0x7d, 0x50, 0xa8, 0x54, 0xe3, 0xab, 0xee, 0x5c, 0xde, 0x1b, 0x67, 0x9a, 0x0c, 0xef, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2982 = { .name = "ecdsa_secp224r1_sha224_2982", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2982_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2982_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2982_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 337 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2983 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2983_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha224_2983_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2983_sig[] = { 0x57, 0x6b, 0xb8, 0x6c, 0x51, 0x7b, 0xfe, 0xcd, 0xc9, 0x30, 0xa4, 0xc8, 0x50, 0x17, 0x25, 0x54, 0x8d, 0x42, 0x5a, 0xfb, 0xb9, 0x6d, 0x93, 0xf5, 0xc1, 0xe2, 0xa0, 0xe1, 0x77, 0x24, 0x8c, 0x5e, 0xcd, 0x62, 0x0c, 0x43, 0x14, 0x38, 0xc5, 0x0e, 0x6b, 0xee, 0x68, 0x58, 0x09, 0x1b, 0x54, 0xa8, 0x7f, 0x85, 0x48, 0xae, 0x35, 0xc2, 0x10, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2983 = { .name = "ecdsa_secp224r1_sha224_2983", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2983_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2983_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2983_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 338 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2984 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2984_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2984_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2984_sig[] = { 0x34, 0xe4, 0x1c, 0xba, 0x62, 0x8f, 0xd8, 0x78, 0x7b, 0xa1, 0xa5, 0x28, 0xf6, 0x01, 0x5d, 0x2c, 0xae, 0x01, 0x5c, 0x1c, 0x9a, 0x86, 0x6e, 0x08, 0xa7, 0x13, 0x38, 0x01, 0x83, 0xd4, 0x22, 0xff, 0xdd, 0x99, 0xcc, 0x3c, 0x6d, 0x70, 0x96, 0xef, 0x92, 0x7f, 0x0b, 0x11, 0x98, 0x8d, 0x18, 0x24, 0xe6, 0xe9, 0x38, 0x40, 0xff, 0x66, 0x6c, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2984 = { .name = "ecdsa_secp224r1_sha224_2984", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2984_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2984_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2984_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 339 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2985 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2985_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2985_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2985_sig[] = { 0x25, 0x58, 0xa4, 0x2e, 0x79, 0x68, 0x92, 0x44, 0xbc, 0xcd, 0x5e, 0x85, 0x5f, 0x6a, 0x1e, 0x42, 0xb4, 0xff, 0x72, 0x68, 0x73, 0xf3, 0x0b, 0x53, 0x2b, 0x89, 0xef, 0x53, 0x07, 0xf9, 0xbd, 0x94, 0x77, 0x85, 0x18, 0x71, 0x75, 0xd8, 0x48, 0xb6, 0xe2, 0xd7, 0x9f, 0x7a, 0xb3, 0xbb, 0xc1, 0x08, 0x7b, 0x42, 0x59, 0x0b, 0x0c, 0xfb, 0x25, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2985 = { .name = "ecdsa_secp224r1_sha224_2985", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2985_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2985_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2985_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 340 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2986 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2986_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha224_2986_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2986_sig[] = { 0xd5, 0xfe, 0x7d, 0xd5, 0xfb, 0x4f, 0xd1, 0xea, 0x5c, 0xe6, 0x6c, 0x08, 0x24, 0xf5, 0x3f, 0x96, 0xce, 0x47, 0xfd, 0x9b, 0x6c, 0x63, 0xb4, 0xd5, 0x78, 0x27, 0xfd, 0x17, 0xbc, 0xe5, 0xbc, 0x3a, 0xf7, 0x05, 0xaf, 0xaa, 0xcb, 0x81, 0xbf, 0xa6, 0xd5, 0x52, 0xd6, 0x19, 0x89, 0x62, 0xfe, 0xce, 0x9f, 0xba, 0x41, 0x54, 0x6c, 0x60, 0x2d, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2986 = { .name = "ecdsa_secp224r1_sha224_2986", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2986_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2986_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2986_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 341 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2987 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2987_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2987_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2987_sig[] = { 0x8c, 0x1d, 0xa2, 0xf0, 0x7c, 0xdc, 0xbc, 0xe4, 0xdb, 0x80, 0x67, 0xb8, 0x63, 0x46, 0x8c, 0xfc, 0x72, 0x8d, 0xf5, 0x29, 0x80, 0x22, 0x90, 0x28, 0x68, 0x9e, 0x57, 0xb6, 0x32, 0x17, 0x5c, 0x13, 0x90, 0xa4, 0xb2, 0xca, 0xb6, 0x35, 0x9b, 0xab, 0x9f, 0x85, 0x49, 0x57, 0xd4, 0xfd, 0x79, 0x76, 0xc9, 0xc6, 0xd9, 0x20, 0xc8, 0x71, 0xc0, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2987 = { .name = "ecdsa_secp224r1_sha224_2987", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2987_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2987_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2987_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 342 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2988 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2988_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2988_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2988_sig[] = { 0xe4, 0x6d, 0x4f, 0x11, 0xb8, 0x6b, 0x5a, 0x12, 0xf6, 0xfe, 0x78, 0x1d, 0x1f, 0x93, 0x4e, 0xf2, 0xb3, 0x0e, 0x78, 0xf6, 0xf9, 0xcc, 0x86, 0xa9, 0x99, 0x6e, 0x20, 0xc0, 0x83, 0x51, 0x97, 0x4b, 0x96, 0x55, 0x26, 0x03, 0x4a, 0x0c, 0xce, 0xf0, 0xe7, 0xd3, 0xbc, 0x13, 0xd9, 0x17, 0x98, 0x15, 0x14, 0x88, 0xc9, 0x15, 0x33, 0x14, 0x3f, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2988 = { .name = "ecdsa_secp224r1_sha224_2988", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2988_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2988_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2988_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 343 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2989 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2989_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha224_2989_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2989_sig[] = { 0x30, 0x5c, 0xcf, 0x0b, 0x5d, 0x0c, 0xf3, 0x3d, 0xc7, 0x45, 0xbb, 0x7c, 0x79, 0x64, 0xc2, 0x33, 0xf6, 0xcf, 0xd8, 0x89, 0x2a, 0x1c, 0x1a, 0xe9, 0xf5, 0x0b, 0x2f, 0x3f, 0x78, 0x5f, 0x6e, 0x85, 0xf5, 0xe6, 0x52, 0x58, 0x7c, 0x6e, 0x15, 0xd0, 0xc4, 0x5c, 0x42, 0x72, 0x78, 0xcf, 0x65, 0xbb, 0x14, 0x29, 0xa5, 0x7d, 0x88, 0x26, 0xca, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2989 = { .name = "ecdsa_secp224r1_sha224_2989", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2989_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2989_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2989_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 344 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2990 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2990_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2990_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2990_sig[] = { 0x0e, 0x4f, 0xde, 0x0a, 0xc8, 0xd3, 0x75, 0x36, 0x50, 0x5f, 0x7b, 0x8b, 0xdc, 0x2d, 0x22, 0xc5, 0xc3, 0x34, 0xb0, 0x64, 0xac, 0x5e, 0xd2, 0x7b, 0xea, 0x9c, 0x17, 0x9e, 0xc4, 0xd6, 0xbf, 0x82, 0x9d, 0xd5, 0x47, 0x00, 0x0d, 0x6f, 0x70, 0xb9, 0xad, 0x9e, 0x9c, 0x15, 0x03, 0xbe, 0xbc, 0xf1, 0xd9, 0x5c, 0x26, 0x08, 0x94, 0x2c, 0xa1, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2990 = { .name = "ecdsa_secp224r1_sha224_2990", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2990_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2990_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2990_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 345 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2991 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2991_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2991_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2991_sig[] = { 0x81, 0x8a, 0xfc, 0xaf, 0x49, 0x1d, 0xa9, 0xd0, 0x8a, 0x7c, 0xc2, 0x93, 0x18, 0xd5, 0xe8, 0x5d, 0xce, 0x56, 0x8d, 0xcc, 0xa7, 0x01, 0x80, 0x59, 0xf4, 0x4e, 0x9b, 0x7e, 0xbf, 0x32, 0xa2, 0x33, 0xd5, 0xfc, 0x6e, 0xd8, 0xe2, 0xd9, 0x27, 0x0b, 0x1b, 0xda, 0xd4, 0xbb, 0xd2, 0xa0, 0xf2, 0xc2, 0x93, 0xd2, 0x89, 0xbd, 0x91, 0xff, 0xbc, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2991 = { .name = "ecdsa_secp224r1_sha224_2991", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2991_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2991_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2991_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 346 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2992 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2992_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha224_2992_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2992_sig[] = { 0x0e, 0x05, 0xed, 0x67, 0x5c, 0x67, 0x3e, 0x5e, 0x70, 0xa4, 0xfd, 0xd5, 0xa4, 0x7b, 0x11, 0x4c, 0x5d, 0x54, 0x2d, 0x4f, 0x6d, 0x7a, 0x36, 0x75, 0x97, 0xd7, 0x13, 0xea, 0x26, 0xd7, 0x0d, 0x65, 0xc4, 0x84, 0x30, 0x37, 0x33, 0x63, 0x98, 0x78, 0x10, 0xbd, 0xcc, 0x55, 0x6e, 0x02, 0x71, 0x8e, 0xab, 0x21, 0x44, 0x03, 0xae, 0x00, 0x8d, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2992 = { .name = "ecdsa_secp224r1_sha224_2992", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2992_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2992_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2992_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 347 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2993 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2993_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2993_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2993_sig[] = { 0xab, 0x7a, 0x19, 0xee, 0xcf, 0x63, 0xe9, 0x66, 0x82, 0x78, 0x96, 0x3b, 0x65, 0x23, 0x6b, 0x27, 0x68, 0xe5, 0x7c, 0xae, 0x0e, 0x26, 0x8c, 0xb8, 0x6a, 0x0d, 0xdd, 0xa1, 0x88, 0x29, 0xf5, 0xd3, 0xa3, 0x39, 0x4f, 0x94, 0x67, 0xba, 0x62, 0xe6, 0x6e, 0xf1, 0x76, 0x8e, 0x3e, 0x54, 0xf9, 0x3e, 0xd2, 0x3e, 0xc9, 0x62, 0xbc, 0x44, 0x3c, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2993 = { .name = "ecdsa_secp224r1_sha224_2993", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2993_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2993_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2993_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 348 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2994 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2994_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2994_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2994_sig[] = { 0x17, 0x11, 0x1a, 0x77, 0xcf, 0x79, 0xbe, 0xad, 0x45, 0x6e, 0xd8, 0x6a, 0x7d, 0x8a, 0x93, 0x55, 0x31, 0x44, 0x02, 0x81, 0xeb, 0x8b, 0x15, 0xa8, 0x85, 0xe3, 0x41, 0xc0, 0xfd, 0xc3, 0x95, 0x8d, 0x04, 0xf0, 0x37, 0xb1, 0xd4, 0xbb, 0x2c, 0xee, 0x30, 0x7b, 0x52, 0x01, 0xbe, 0x06, 0x2e, 0x0d, 0x4e, 0x08, 0x9d, 0xf1, 0xc1, 0x91, 0x76, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2994 = { .name = "ecdsa_secp224r1_sha224_2994", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2994_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2994_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2994_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 349 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2995 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2995_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha224_2995_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2995_sig[] = { 0xac, 0xaf, 0xa1, 0xe3, 0x33, 0x45, 0xee, 0xba, 0x0c, 0x33, 0x8c, 0x22, 0x04, 0xb4, 0xcd, 0x8b, 0xa2, 0x1d, 0xe7, 0xec, 0x3e, 0x12, 0x13, 0x31, 0x70, 0x38, 0xe9, 0x68, 0x0b, 0x42, 0xfb, 0xba, 0xed, 0xa9, 0x8a, 0x35, 0xda, 0x0d, 0xe4, 0xc7, 0x95, 0x46, 0xf3, 0xa0, 0xf7, 0xd9, 0xde, 0xc2, 0x75, 0xd2, 0xcd, 0x67, 0x1f, 0x93, 0xc8, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2995 = { .name = "ecdsa_secp224r1_sha224_2995", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2995_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2995_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2995_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 350 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2996 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2996_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2996_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2996_sig[] = { 0xa3, 0xfe, 0x71, 0xa2, 0xa5, 0x6f, 0x55, 0x4e, 0x98, 0xfd, 0x10, 0xa8, 0x09, 0x8c, 0x2a, 0x54, 0x3c, 0x98, 0xbc, 0x6b, 0x36, 0x02, 0xef, 0x39, 0xf2, 0x41, 0x23, 0x08, 0x5d, 0x1d, 0x68, 0xf9, 0xa8, 0x70, 0xef, 0x2b, 0xc8, 0x74, 0x84, 0xb3, 0x38, 0x65, 0x49, 0xfa, 0xe9, 0x58, 0x11, 0xab, 0x72, 0xbc, 0x0e, 0x3a, 0x51, 0x47, 0x20, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2996 = { .name = "ecdsa_secp224r1_sha224_2996", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2996_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2996_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2996_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 351 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2997 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2997_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2997_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2997_sig[] = { 0x13, 0x2f, 0x76, 0x25, 0x70, 0x47, 0x56, 0xc1, 0x3f, 0x2b, 0xfa, 0x44, 0x9e, 0x60, 0x95, 0x2f, 0x83, 0x6f, 0x49, 0x04, 0x66, 0x0b, 0x5b, 0x1d, 0xa0, 0x7e, 0x5a, 0x9f, 0x82, 0xb4, 0xab, 0xaf, 0xc4, 0x0e, 0x8f, 0xd1, 0x9b, 0x0c, 0x96, 0x7f, 0x02, 0xff, 0xf1, 0x52, 0x73, 0x7c, 0xe0, 0x11, 0x53, 0x65, 0x8d, 0xf4, 0x45, 0xc4, 0xd7, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2997 = { .name = "ecdsa_secp224r1_sha224_2997", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2997_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2997_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2997_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 352 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2998 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2998_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha224_2998_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2998_sig[] = { 0xf3, 0x6a, 0x83, 0x47, 0xc6, 0xfe, 0x03, 0x97, 0xa1, 0x16, 0x1a, 0x36, 0x4c, 0xbc, 0x4b, 0xdf, 0xb4, 0xd8, 0xb7, 0x89, 0x4c, 0xba, 0xa6, 0xed, 0xc5, 0x5a, 0x4f, 0xf7, 0x9c, 0x9c, 0x90, 0x51, 0x5d, 0xa5, 0xe6, 0x02, 0xd6, 0x2e, 0x99, 0xf4, 0x8e, 0xac, 0x41, 0x4e, 0x91, 0x3d, 0xd0, 0xb7, 0xcb, 0xf6, 0x80, 0xc1, 0xa5, 0x39, 0x99, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2998 = { .name = "ecdsa_secp224r1_sha224_2998", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2998_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2998_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2998_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 353 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 2999 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_2999_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_2999_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_2999_sig[] = { 0x21, 0x25, 0xec, 0xc0, 0x8e, 0x52, 0xe9, 0xe3, 0x9e, 0x59, 0x01, 0x17, 0xde, 0x21, 0x45, 0xbd, 0x87, 0x96, 0x26, 0xcb, 0x87, 0x18, 0x0e, 0x52, 0xe9, 0xd3, 0xce, 0x03, 0x8f, 0x7e, 0x83, 0x8d, 0x0e, 0x8f, 0xb8, 0x00, 0x05, 0xfe, 0x3c, 0x72, 0xfc, 0xa1, 0xb7, 0xcc, 0x08, 0xed, 0x32, 0x1a, 0x34, 0x48, 0x78, 0x96, 0xb0, 0xc9, 0x0b, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_2999 = { .name = "ecdsa_secp224r1_sha224_2999", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_2999_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_2999_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_2999_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 354 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 3000 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_3000_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_3000_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_3000_sig[] = { 0xe4, 0x85, 0x74, 0x7a, 0xc2, 0xf3, 0xd0, 0x45, 0xe0, 0x10, 0xcd, 0xad, 0xab, 0x4f, 0xd5, 0xdb, 0xd5, 0x55, 0x6c, 0x00, 0x08, 0x44, 0x5f, 0xb7, 0x3e, 0x07, 0xcd, 0x90, 0xe2, 0x13, 0x3a, 0x79, 0x06, 0xae, 0xac, 0x50, 0x48, 0x52, 0xe0, 0x9e, 0x6d, 0x05, 0x7f, 0x29, 0xab, 0x21, 0x36, 0x8c, 0xfc, 0x4e, 0x23, 0x94, 0xbe, 0x56, 0x5e, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_3000 = { .name = "ecdsa_secp224r1_sha224_3000", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_3000_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_3000_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_3000_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 355 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 3001 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_3001_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha224_3001_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha224_3001_sig[] = { 0xa4, 0xde, 0x0d, 0x93, 0x1d, 0xda, 0xb9, 0x0e, 0x66, 0x7e, 0xbc, 0x0a, 0xd8, 0x00, 0xce, 0x49, 0xe9, 0x71, 0xc6, 0x05, 0x43, 0xab, 0xdc, 0x46, 0xce, 0xff, 0xf9, 0x26, 0x55, 0x08, 0x16, 0x17, 0x0b, 0xd8, 0x75, 0x93, 0xb9, 0xfb, 0x8a, 0xd5, 0xed, 0x9a, 0xb4, 0xdd, 0xb1, 0x24, 0x03, 0xff, 0x6f, 0xe0, 0x32, 0x25, 0x28, 0x33, 0xba, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_3001 = { .name = "ecdsa_secp224r1_sha224_3001", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_3001_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_3001_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha224_3001_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 356 in file ecdsa_secp224r1_sha224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 3002 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3002_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3002_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3002_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3c, 0x1b, 0xab, 0x88, 0x64, 0xe5, 0xe0, 0x3a, 0x50, 0x11, 0xee, 0xba, 0x81, 0x50, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3002 = { .name = "ecdsa_secp224r1_sha256_3002", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3002_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3002_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3002_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3003 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3003_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3003_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3003_sig[] = { 0x01, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x1f, 0xd2, 0x83, 0x09, 0x8d, 0x8a, 0x00, 0x4f, 0xc7, 0x18, 0xe2, 0xe7, 0xe6, 0xb4, 0x41, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3003 = { .name = "ecdsa_secp224r1_sha256_3003", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3003_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3003_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3003_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3004 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3004_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3004_sig[] = { 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xde, 0x5a, 0xc2, 0xb7, 0xe4, 0x56, 0x7b, 0xd7, 0xf3, 0x39, 0xa7, 0xd0, 0xd1, 0xa0, 0x39, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3004 = { .name = "ecdsa_secp224r1_sha256_3004", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3004_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3004_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3004_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3005 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3005_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3005_sig[] = { 0x01, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3005 = { .name = "ecdsa_secp224r1_sha256_3005", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3005_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3005_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3005_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3006 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3006_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3006_sig[] = { 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xdf, 0x44, 0x1f, 0xd7, 0x2b, 0x66, 0x3d, 0xc4, 0x16, 0x10, 0x62, 0x74, 0x75, 0x75, 0xfc, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3006 = { .name = "ecdsa_secp224r1_sha256_3006", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3006_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3006_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3006_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3007 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3007_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3007_sig[] = { 0x00, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x01, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0x11, 0x9a, 0x39, 0x0c, 0xfa, 0x9b, 0xed, 0x6a, 0x40, 0x9b, 0xfe, 0x37, 0x03, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3007 = { .name = "ecdsa_secp224r1_sha256_3007", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3007_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3007_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3007_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3008 for ECDSA, tcId is 7 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3008_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3008_sig[] = { 0x00, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x01, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3008 = { .name = "ecdsa_secp224r1_sha256_3008", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3008_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3008_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3008_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3009 for ECDSA, tcId is 8 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3009_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3009_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3d, 0x05, 0x08, 0xa7, 0xab, 0xf5, 0xa2, 0x26, 0x72, 0xe8, 0xa9, 0x5e, 0x25, 0x26, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3009 = { .name = "ecdsa_secp224r1_sha256_3009", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3009_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3009_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3009_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3010 for ECDSA, tcId is 9 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3010_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3010_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3010 = { .name = "ecdsa_secp224r1_sha256_3010", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3010_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3010_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3010_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3011 for ECDSA, tcId is 10 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3011_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3011_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3011 = { .name = "ecdsa_secp224r1_sha256_3011", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3011_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3011_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3011_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3012 for ECDSA, tcId is 11 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3012_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3012_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3012 = { .name = "ecdsa_secp224r1_sha256_3012", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3012_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3012_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3012_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3013 for ECDSA, tcId is 12 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3013_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3013_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3013 = { .name = "ecdsa_secp224r1_sha256_3013", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3013_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3013_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3013_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3014 for ECDSA, tcId is 13 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3014_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3014_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3014 = { .name = "ecdsa_secp224r1_sha256_3014", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3014_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3014_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3014_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3015 for ECDSA, tcId is 14 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3015_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3015_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3015 = { .name = "ecdsa_secp224r1_sha256_3015", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3015_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3015_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3015_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3016 for ECDSA, tcId is 15 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3016_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3016_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3016 = { .name = "ecdsa_secp224r1_sha256_3016", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3016_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3016_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3016_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3017 for ECDSA, tcId is 16 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3017_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3017_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3017 = { .name = "ecdsa_secp224r1_sha256_3017", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3017_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3017_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3017_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3018 for ECDSA, tcId is 17 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3018_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3018_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3018 = { .name = "ecdsa_secp224r1_sha256_3018", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3018_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3018_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3018_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3019 for ECDSA, tcId is 18 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3019_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3019_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3019 = { .name = "ecdsa_secp224r1_sha256_3019", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3019_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3019_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3019_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3020 for ECDSA, tcId is 19 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3020_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3020_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3020 = { .name = "ecdsa_secp224r1_sha256_3020", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3020_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3020_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3020_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3021 for ECDSA, tcId is 20 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3021_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3021_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3021 = { .name = "ecdsa_secp224r1_sha256_3021", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3021_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3021_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3021_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3022 for ECDSA, tcId is 21 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3022_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3022_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3022 = { .name = "ecdsa_secp224r1_sha256_3022", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3022_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3022_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3022_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3023 for ECDSA, tcId is 22 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3023_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3023_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3023 = { .name = "ecdsa_secp224r1_sha256_3023", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3023_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3023_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3023_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3024 for ECDSA, tcId is 23 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3024_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3024_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3024 = { .name = "ecdsa_secp224r1_sha256_3024", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3024_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3024_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3024_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3025 for ECDSA, tcId is 24 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3025_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3025_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3025 = { .name = "ecdsa_secp224r1_sha256_3025", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3025_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3025_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3025_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3026 for ECDSA, tcId is 25 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3026_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3026_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3026 = { .name = "ecdsa_secp224r1_sha256_3026", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3026_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3026_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3026_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3027 for ECDSA, tcId is 26 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3027_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3027_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3027 = { .name = "ecdsa_secp224r1_sha256_3027", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3027_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3027_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3027_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3028 for ECDSA, tcId is 27 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3028_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3028_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3028 = { .name = "ecdsa_secp224r1_sha256_3028", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3028_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3028_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3028_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3029 for ECDSA, tcId is 28 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3029_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3029_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3029 = { .name = "ecdsa_secp224r1_sha256_3029", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3029_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3029_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3029_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3030 for ECDSA, tcId is 29 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3030_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3030_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3030 = { .name = "ecdsa_secp224r1_sha256_3030", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3030_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3030_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3030_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3031 for ECDSA, tcId is 30 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3031_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3031_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3031 = { .name = "ecdsa_secp224r1_sha256_3031", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3031_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3031_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3031_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3032 for ECDSA, tcId is 31 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3032_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3032_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3032 = { .name = "ecdsa_secp224r1_sha256_3032", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3032_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3032_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3032_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3033 for ECDSA, tcId is 32 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3033_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3033_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3033 = { .name = "ecdsa_secp224r1_sha256_3033", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3033_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3033_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3033_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3034 for ECDSA, tcId is 33 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3034_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3034_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3034 = { .name = "ecdsa_secp224r1_sha256_3034", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3034_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3034_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3034_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3035 for ECDSA, tcId is 34 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3035_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3035_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3035 = { .name = "ecdsa_secp224r1_sha256_3035", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3035_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3035_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3035_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3036 for ECDSA, tcId is 35 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3036_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3036_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3036 = { .name = "ecdsa_secp224r1_sha256_3036", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3036_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3036_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3036_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3037 for ECDSA, tcId is 36 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3037_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3037_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3037 = { .name = "ecdsa_secp224r1_sha256_3037", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3037_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3037_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3037_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3038 for ECDSA, tcId is 37 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3038_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3038_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3038 = { .name = "ecdsa_secp224r1_sha256_3038", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3038_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3038_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3038_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3039 for ECDSA, tcId is 38 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3039_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3039_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3039 = { .name = "ecdsa_secp224r1_sha256_3039", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3039_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3039_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3039_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3040 for ECDSA, tcId is 39 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3040_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3040_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3040 = { .name = "ecdsa_secp224r1_sha256_3040", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3040_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3040_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3040_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3041 for ECDSA, tcId is 40 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3041_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3041_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3041 = { .name = "ecdsa_secp224r1_sha256_3041", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3041_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3041_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3041_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3042 for ECDSA, tcId is 41 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3042_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3042_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3042 = { .name = "ecdsa_secp224r1_sha256_3042", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3042_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3042_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3042_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3043 for ECDSA, tcId is 42 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3043_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3043_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3043 = { .name = "ecdsa_secp224r1_sha256_3043", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3043_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3043_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3043_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3044 for ECDSA, tcId is 43 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3044_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3044_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3044 = { .name = "ecdsa_secp224r1_sha256_3044", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3044_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3044_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3044_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3045 for ECDSA, tcId is 44 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3045_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3045_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3045 = { .name = "ecdsa_secp224r1_sha256_3045", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3045_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3045_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3045_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3046 for ECDSA, tcId is 45 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3046_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3046_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3046 = { .name = "ecdsa_secp224r1_sha256_3046", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3046_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3046_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3046_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3047 for ECDSA, tcId is 46 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3047_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3047_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3047 = { .name = "ecdsa_secp224r1_sha256_3047", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3047_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3047_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3047_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3048 for ECDSA, tcId is 47 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3048_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3048_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3048 = { .name = "ecdsa_secp224r1_sha256_3048", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3048_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3048_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3048_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3049 for ECDSA, tcId is 48 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3049_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3049_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3049 = { .name = "ecdsa_secp224r1_sha256_3049", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3049_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3049_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3049_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3050 for ECDSA, tcId is 49 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3050_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3050_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3050 = { .name = "ecdsa_secp224r1_sha256_3050", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3050_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3050_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3050_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3051 for ECDSA, tcId is 50 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3051_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3051_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3051 = { .name = "ecdsa_secp224r1_sha256_3051", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3051_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3051_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3051_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3052 for ECDSA, tcId is 51 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3052_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3052_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3052 = { .name = "ecdsa_secp224r1_sha256_3052", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3052_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3052_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3052_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3053 for ECDSA, tcId is 52 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3053_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3053_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3053 = { .name = "ecdsa_secp224r1_sha256_3053", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3053_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3053_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3053_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3054 for ECDSA, tcId is 53 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3054_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3054_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3054 = { .name = "ecdsa_secp224r1_sha256_3054", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3054_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3054_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3054_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3055 for ECDSA, tcId is 54 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3055_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3055_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3055 = { .name = "ecdsa_secp224r1_sha256_3055", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3055_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3055_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3055_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3056 for ECDSA, tcId is 55 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3056_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3056_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3056 = { .name = "ecdsa_secp224r1_sha256_3056", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3056_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3056_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3056_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3057 for ECDSA, tcId is 56 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3057_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3057_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3057 = { .name = "ecdsa_secp224r1_sha256_3057", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3057_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3057_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3057_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3058 for ECDSA, tcId is 57 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3058_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3058_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3058 = { .name = "ecdsa_secp224r1_sha256_3058", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3058_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3058_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3058_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3059 for ECDSA, tcId is 58 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3059_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3059_msg[] = { 0x38, 0x39, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3059_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x96, 0xad, 0x91, 0xf0, 0x2a, 0x3b, 0xc4, 0x0c, 0x11, 0x8a, 0xbd, 0x41, 0x6e, 0xd5, 0xc6, 0x20, 0x3e, 0xd7, 0xce, 0xd0, 0x33, 0x08, 0x60, 0xd7, 0xb8, 0x8c, 0x10, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3059 = { .name = "ecdsa_secp224r1_sha256_3059", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3059_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3059_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha256_3059_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3060 for ECDSA, tcId is 59 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3060_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3060_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3060_sig[] = { 0xbc, 0xca, 0x23, 0x65, 0xce, 0xbd, 0xcf, 0x7c, 0x6c, 0xda, 0x1e, 0xe7, 0xb2, 0x7c, 0x7f, 0xe7, 0x9e, 0x37, 0x15, 0x37, 0xb0, 0x18, 0x69, 0xc7, 0x15, 0xea, 0xbb, 0x1e, 0x3a, 0xe7, 0x6f, 0x9b, 0xbf, 0xe5, 0x19, 0xd7, 0x78, 0x81, 0x6d, 0xc8, 0xfe, 0x10, 0x63, 0x5e, 0xe7, 0x57, 0x6b, 0x6b, 0x79, 0x16, 0xf0, 0xc2, 0x1d, 0xf3, 0x20, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3060 = { .name = "ecdsa_secp224r1_sha256_3060", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3060_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3060_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3060_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3061 for ECDSA, tcId is 60 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3061_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3061_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3061_sig[] = { 0x59, 0xa9, 0xf8, 0x32, 0x89, 0xef, 0x69, 0x95, 0xd5, 0xd5, 0x59, 0x2e, 0x80, 0xab, 0x4f, 0x6a, 0x81, 0x12, 0x3f, 0x69, 0xd3, 0x85, 0xd3, 0xcf, 0xb1, 0x52, 0xfa, 0xf2, 0x3a, 0x97, 0xd5, 0xbe, 0x19, 0x0d, 0x58, 0x19, 0x24, 0x10, 0x67, 0xe2, 0xbe, 0x56, 0x37, 0x5a, 0xb8, 0x41, 0x55, 0xba, 0xab, 0x8f, 0xc7, 0xae, 0xb7, 0xf8, 0xcb, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3061 = { .name = "ecdsa_secp224r1_sha256_3061", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3061_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3061_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3061_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3062 for ECDSA, tcId is 61 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3062_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3062_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3062_sig[] = { 0xb5, 0x4b, 0xac, 0x9b, 0xe2, 0xbe, 0xaa, 0xa0, 0x94, 0x56, 0xa3, 0x96, 0x8a, 0x1f, 0xaf, 0x27, 0xc9, 0xd9, 0x6b, 0xd5, 0xf6, 0x73, 0x8f, 0xec, 0x60, 0x66, 0xd3, 0x1e, 0xd7, 0x2c, 0x22, 0x12, 0x93, 0x44, 0xa9, 0x6d, 0x52, 0xfd, 0xa6, 0x0b, 0x26, 0x4c, 0xf5, 0xe6, 0xfa, 0xe4, 0x5f, 0xd2, 0xc1, 0xb1, 0xb7, 0x8b, 0xcb, 0xa3, 0x00, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3062 = { .name = "ecdsa_secp224r1_sha256_3062", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3062_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3062_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3062_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3063 for ECDSA, tcId is 62 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3063_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3063_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3063_sig[] = { 0x32, 0x3d, 0xbd, 0xec, 0xd4, 0x09, 0x10, 0xc6, 0xfa, 0x7a, 0x56, 0x91, 0x84, 0x6f, 0xa7, 0x76, 0x91, 0x13, 0xd1, 0xf2, 0xba, 0x64, 0xef, 0x0d, 0xc9, 0x7d, 0x2d, 0xdb, 0xca, 0x9e, 0x73, 0xa4, 0x58, 0x7a, 0xf0, 0x42, 0xf8, 0xba, 0x92, 0x4b, 0xb6, 0x18, 0x29, 0xc5, 0xe2, 0x40, 0x46, 0xf9, 0x80, 0x3e, 0xb7, 0x6a, 0xb8, 0x0e, 0xf3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3063 = { .name = "ecdsa_secp224r1_sha256_3063", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3063_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3063_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3063_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3064 for ECDSA, tcId is 63 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3064_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3064_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3064_sig[] = { 0xa5, 0x5d, 0xcc, 0xc2, 0x7d, 0x28, 0x7f, 0x15, 0x96, 0x0e, 0xd7, 0x99, 0x08, 0xa3, 0xed, 0xb6, 0xbb, 0x31, 0xaf, 0xf0, 0x7c, 0x8c, 0xaa, 0x0e, 0x65, 0xfc, 0x07, 0x85, 0x55, 0x9c, 0xb5, 0x1a, 0xa5, 0xf2, 0xb9, 0x06, 0x66, 0x10, 0x19, 0x9d, 0xd0, 0x12, 0x91, 0xa4, 0x77, 0x29, 0xa6, 0x18, 0x9a, 0x62, 0x2a, 0xe9, 0xe7, 0xaf, 0x76, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3064 = { .name = "ecdsa_secp224r1_sha256_3064", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3064_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3064_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3064_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3065 for ECDSA, tcId is 64 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3065_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3065_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3065_sig[] = { 0x13, 0x7e, 0xd6, 0x10, 0x51, 0x48, 0xd6, 0xf5, 0xb8, 0x4e, 0x87, 0x73, 0x5d, 0x57, 0x95, 0x5f, 0x81, 0xc5, 0x91, 0x4a, 0x6e, 0x69, 0xf5, 0x53, 0x47, 0xad, 0xe0, 0x74, 0xdf, 0xa5, 0xd5, 0x6b, 0x1a, 0x12, 0x56, 0x7e, 0xfa, 0xcb, 0x34, 0x8a, 0x13, 0x3b, 0x79, 0xd4, 0x8d, 0xa7, 0xaa, 0xc7, 0x8d, 0x78, 0xee, 0x58, 0x9c, 0x2e, 0xc0, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3065 = { .name = "ecdsa_secp224r1_sha256_3065", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3065_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3065_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3065_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3066 for ECDSA, tcId is 65 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3066_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3066_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3066_sig[] = { 0x85, 0x6f, 0xf6, 0x3d, 0x77, 0x91, 0x63, 0xe7, 0x8f, 0xed, 0x8c, 0x48, 0x33, 0x0b, 0x48, 0xf0, 0x8b, 0xf9, 0x53, 0xa9, 0x52, 0x66, 0xb3, 0x85, 0x7e, 0xee, 0x91, 0xaa, 0xf4, 0xaa, 0x91, 0x7c, 0xd3, 0x7f, 0x55, 0x6c, 0x6d, 0xf9, 0xd0, 0x96, 0x0c, 0x2f, 0x7d, 0xaa, 0x7e, 0xa1, 0x18, 0xe5, 0xc3, 0x0c, 0xc4, 0x0c, 0xa1, 0xee, 0xd4, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3066 = { .name = "ecdsa_secp224r1_sha256_3066", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3066_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3066_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3066_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3067 for ECDSA, tcId is 66 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3067_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3067_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3067_sig[] = { 0xa9, 0xd7, 0x71, 0x6f, 0x04, 0xc5, 0xce, 0x24, 0x7f, 0x6b, 0x8c, 0x60, 0x8b, 0x37, 0xdb, 0x55, 0xf6, 0x8e, 0x2f, 0xf9, 0x4a, 0x58, 0x83, 0x86, 0x3e, 0x86, 0x77, 0x08, 0x61, 0xbc, 0x09, 0x3f, 0xaa, 0x6f, 0xb2, 0x5c, 0xd2, 0x40, 0xae, 0xa4, 0xb5, 0x6f, 0xed, 0x72, 0x8f, 0x7b, 0x36, 0x69, 0xb4, 0xdc, 0x84, 0xc4, 0x49, 0xd3, 0x8c, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3067 = { .name = "ecdsa_secp224r1_sha256_3067", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3067_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3067_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3067_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3068 for ECDSA, tcId is 67 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3068_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3068_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3068_sig[] = { 0xf6, 0xd0, 0x88, 0xfd, 0x3b, 0x9c, 0x98, 0x1a, 0xc4, 0x91, 0xc6, 0x20, 0x30, 0x64, 0x3b, 0xbd, 0x82, 0xd4, 0xf4, 0x58, 0x8e, 0x85, 0x17, 0xde, 0x58, 0x84, 0xe7, 0x3d, 0x77, 0x3e, 0xee, 0x47, 0x79, 0x80, 0x76, 0x3b, 0x1e, 0xa2, 0x7a, 0xe9, 0x98, 0xbd, 0xa0, 0x24, 0x4c, 0xb6, 0x7b, 0x07, 0xaa, 0x67, 0x79, 0xa3, 0x8c, 0xd2, 0xba, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3068 = { .name = "ecdsa_secp224r1_sha256_3068", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3068_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3068_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3068_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3069 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3069_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3069_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3069_sig[] = { 0xea, 0xcb, 0x55, 0x58, 0x8e, 0x44, 0x6b, 0xbf, 0x36, 0x87, 0x08, 0x9b, 0xa8, 0xba, 0x3b, 0x05, 0xcf, 0xef, 0x74, 0x58, 0xbb, 0x81, 0xb4, 0x27, 0x7f, 0x90, 0xa8, 0x53, 0x80, 0x39, 0xe8, 0x94, 0x4c, 0xc3, 0xdf, 0x7f, 0x4c, 0xe5, 0xba, 0xdc, 0x34, 0x99, 0x75, 0xd4, 0x71, 0xa8, 0x1d, 0xea, 0x14, 0xe9, 0xbc, 0xae, 0x30, 0x65, 0xd4, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3069 = { .name = "ecdsa_secp224r1_sha256_3069", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3069_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3069_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3069_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3070 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3070_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3070_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3070_sig[] = { 0x59, 0x84, 0xaf, 0x8c, 0x89, 0xfb, 0x9d, 0x59, 0x6a, 0x1f, 0x28, 0xfd, 0x3d, 0x41, 0xe4, 0x6f, 0x72, 0x05, 0xfe, 0x12, 0xfa, 0x63, 0x43, 0x7a, 0xc7, 0x9e, 0x7e, 0x81, 0x33, 0xb1, 0x6b, 0x74, 0x2d, 0x45, 0xf1, 0x8f, 0x88, 0xde, 0x27, 0x13, 0x07, 0x83, 0x84, 0xe6, 0x15, 0x0f, 0x06, 0xb8, 0xb9, 0x9f, 0x36, 0xab, 0x2c, 0xe3, 0xdd, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3070 = { .name = "ecdsa_secp224r1_sha256_3070", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3070_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3070_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3070_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3071 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3071_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3071_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3071_sig[] = { 0x3c, 0xda, 0x62, 0xd8, 0x47, 0x11, 0xc2, 0x62, 0xf7, 0x82, 0xd5, 0xc3, 0xa7, 0x9b, 0x56, 0x74, 0x85, 0x22, 0x7b, 0x34, 0xaf, 0xb8, 0x21, 0xf5, 0x24, 0x1b, 0x19, 0x61, 0xb6, 0x15, 0xce, 0xf3, 0x99, 0x70, 0x6f, 0xf7, 0x58, 0xf0, 0x72, 0x93, 0x18, 0x52, 0xb7, 0x17, 0xec, 0x89, 0x8e, 0x9a, 0x1e, 0x63, 0x39, 0xd0, 0xee, 0x81, 0xb8, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3071 = { .name = "ecdsa_secp224r1_sha256_3071", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3071_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3071_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3071_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3072 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3072_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3072_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3072_sig[] = { 0xe1, 0xdb, 0x73, 0x04, 0x60, 0x91, 0x91, 0xea, 0x1a, 0xc9, 0x11, 0x83, 0xff, 0xb3, 0x1d, 0xf5, 0x1b, 0x5b, 0x3f, 0xdc, 0x6b, 0x1a, 0x11, 0x29, 0xd8, 0x58, 0x18, 0xd6, 0x44, 0x18, 0x86, 0xd0, 0x03, 0xae, 0x80, 0xfb, 0xe7, 0x13, 0x9e, 0x1d, 0x02, 0x84, 0x5c, 0xd1, 0xbd, 0x95, 0x9f, 0x0d, 0xf1, 0x46, 0x8f, 0x58, 0x36, 0xdd, 0x6e, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3072 = { .name = "ecdsa_secp224r1_sha256_3072", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3072_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3072_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3072_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3073 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3073_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3073_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3073_sig[] = { 0x35, 0x45, 0xdc, 0x4a, 0x4e, 0xf8, 0x4b, 0xbb, 0x3a, 0x52, 0x6f, 0xf9, 0x29, 0xc9, 0x1a, 0xd2, 0x34, 0x51, 0x6a, 0x9e, 0x95, 0x45, 0x5a, 0xc8, 0xdb, 0x40, 0x12, 0xb1, 0xaf, 0x49, 0x92, 0x6f, 0x69, 0x3a, 0x7c, 0xf1, 0x1f, 0x71, 0xe1, 0x99, 0xf3, 0x82, 0xa8, 0xd6, 0x40, 0xc0, 0xc8, 0x5e, 0x46, 0xd9, 0x4e, 0xe2, 0x6e, 0x38, 0x43, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3073 = { .name = "ecdsa_secp224r1_sha256_3073", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3073_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3073_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3073_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3074 for ECDSA, tcId is 73 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3074_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3074_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3074_sig[] = { 0x0c, 0xca, 0xfd, 0xea, 0xe4, 0x58, 0x2c, 0x9d, 0xe6, 0x79, 0x5b, 0x2d, 0x09, 0xa7, 0xfc, 0x38, 0x48, 0xc7, 0x59, 0x04, 0xfa, 0x96, 0x09, 0x89, 0x15, 0x6c, 0xbb, 0xb9, 0xaf, 0x1f, 0x99, 0x4d, 0xa3, 0xe7, 0xd8, 0x9c, 0xc8, 0xaa, 0xa4, 0x46, 0x16, 0xcb, 0x77, 0xe3, 0xbe, 0x7a, 0x83, 0xcc, 0xec, 0xc9, 0x65, 0x77, 0x51, 0x94, 0xe5, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3074 = { .name = "ecdsa_secp224r1_sha256_3074", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3074_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3074_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3074_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3075 for ECDSA, tcId is 74 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3075_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3075_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3075_sig[] = { 0xa3, 0xb2, 0x14, 0x5d, 0x8c, 0x66, 0x90, 0x27, 0x53, 0x25, 0x01, 0xee, 0xa1, 0x91, 0x3a, 0xbb, 0x22, 0xa7, 0x8a, 0x82, 0x7f, 0xdd, 0x82, 0xfe, 0x9d, 0x6d, 0x37, 0x57, 0x9b, 0x2f, 0x1a, 0xe8, 0x4f, 0x56, 0x06, 0xd6, 0x86, 0x53, 0x06, 0x5f, 0x74, 0xe9, 0xd0, 0x89, 0x88, 0x66, 0x94, 0xc7, 0x39, 0xfb, 0xe3, 0xfd, 0x4a, 0x1b, 0x2b, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3075 = { .name = "ecdsa_secp224r1_sha256_3075", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3075_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3075_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3075_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3076 for ECDSA, tcId is 75 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3076_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3076_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3076_sig[] = { 0x9a, 0xac, 0x3a, 0x7e, 0x3d, 0x14, 0x23, 0x44, 0x99, 0x1b, 0xf1, 0x77, 0xb4, 0xf4, 0xdb, 0xfa, 0x07, 0x41, 0x48, 0xad, 0x9e, 0x20, 0xf2, 0x75, 0x55, 0xb5, 0x47, 0xd9, 0xf8, 0x30, 0xa3, 0xc7, 0xfd, 0xf2, 0x51, 0xd7, 0x9d, 0x41, 0x97, 0x7d, 0x28, 0xe6, 0xd9, 0xa7, 0x2a, 0x36, 0xdf, 0x11, 0xb8, 0x6e, 0x17, 0xc8, 0xdc, 0x3a, 0xca, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3076 = { .name = "ecdsa_secp224r1_sha256_3076", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3076_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3076_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3076_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3077 for ECDSA, tcId is 76 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3077_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3077_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3077_sig[] = { 0x47, 0x69, 0xfb, 0xa5, 0x54, 0xfd, 0x43, 0x60, 0x51, 0xc2, 0x85, 0xbd, 0xad, 0xfa, 0x33, 0xa4, 0x43, 0xd4, 0xf7, 0x08, 0x4d, 0xd5, 0x98, 0xce, 0x3b, 0x98, 0xb8, 0xfb, 0x0c, 0x01, 0x4c, 0x87, 0xcb, 0x14, 0x11, 0x3d, 0x75, 0x86, 0x4f, 0x74, 0x90, 0x5f, 0x75, 0xb3, 0x4f, 0x99, 0x70, 0xba, 0x58, 0xb5, 0xd0, 0x67, 0x60, 0x21, 0x82, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3077 = { .name = "ecdsa_secp224r1_sha256_3077", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3077_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3077_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3077_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3078 for ECDSA, tcId is 77 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3078_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3078_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3078_sig[] = { 0x8b, 0x91, 0xfc, 0x50, 0x54, 0xa7, 0x5c, 0x34, 0xa5, 0x08, 0x62, 0x4b, 0x85, 0x70, 0x8b, 0x3d, 0x25, 0xfa, 0x74, 0x32, 0x8c, 0x68, 0x74, 0x1c, 0x3a, 0xeb, 0x92, 0xd9, 0x15, 0x5e, 0x3e, 0x46, 0xb1, 0x20, 0x95, 0x83, 0x13, 0x5a, 0x9f, 0xef, 0x15, 0xab, 0xe3, 0x25, 0xb2, 0x5b, 0xd1, 0x92, 0x85, 0xee, 0x6b, 0x5b, 0x45, 0x49, 0x62, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3078 = { .name = "ecdsa_secp224r1_sha256_3078", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3078_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3078_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3078_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3079 for ECDSA, tcId is 78 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3079_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3079_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3079_sig[] = { 0xa4, 0xa2, 0xa8, 0x5f, 0xbb, 0x8b, 0xb2, 0x6c, 0x4d, 0x84, 0x5c, 0xfa, 0xc1, 0x91, 0xf8, 0x9d, 0x65, 0xb0, 0x0d, 0x3f, 0x1b, 0x94, 0x50, 0xd1, 0x77, 0xf7, 0x88, 0x90, 0x66, 0x05, 0xa4, 0x60, 0xe6, 0x04, 0x02, 0x68, 0x5c, 0x7a, 0x5a, 0xcc, 0xd2, 0x61, 0x5e, 0x92, 0x32, 0xe5, 0x19, 0x37, 0xbd, 0x83, 0xdf, 0xa3, 0x06, 0x5e, 0xab, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3079 = { .name = "ecdsa_secp224r1_sha256_3079", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3079_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3079_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3079_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3080 for ECDSA, tcId is 79 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3080_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3080_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3080_sig[] = { 0xa8, 0x9d, 0x33, 0x3a, 0xe3, 0x41, 0x87, 0x85, 0x5c, 0xf7, 0xfa, 0x43, 0x5f, 0xf3, 0x9b, 0xe6, 0xb7, 0xbb, 0x39, 0xb2, 0xd0, 0xce, 0x68, 0x21, 0x33, 0xad, 0x96, 0x46, 0x48, 0x3d, 0xcc, 0x89, 0xa3, 0xb4, 0x3b, 0xe2, 0x50, 0xf5, 0xc3, 0xf7, 0x8f, 0x78, 0x41, 0x8e, 0x7b, 0x83, 0x41, 0xa8, 0xbc, 0xfb, 0x93, 0xdf, 0xd5, 0x8e, 0x46, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3080 = { .name = "ecdsa_secp224r1_sha256_3080", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3080_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3080_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3080_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3081 for ECDSA, tcId is 80 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3081_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3081_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3081_sig[] = { 0x2d, 0x0f, 0x99, 0xc7, 0x19, 0x33, 0xc8, 0x2d, 0xed, 0x54, 0x4e, 0xf4, 0xfa, 0xac, 0x9d, 0x66, 0x9e, 0x43, 0x7d, 0xea, 0x13, 0xb5, 0x71, 0x86, 0xf4, 0xc2, 0x0a, 0x0e, 0xd9, 0x68, 0x2b, 0x9f, 0x3a, 0x05, 0xd7, 0x83, 0x29, 0x47, 0xbc, 0x45, 0xea, 0xdb, 0xc7, 0x42, 0xd9, 0x6e, 0x7a, 0xb1, 0x12, 0x48, 0x32, 0xdd, 0xb7, 0xa8, 0xc6, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3081 = { .name = "ecdsa_secp224r1_sha256_3081", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3081_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3081_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3081_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3082 for ECDSA, tcId is 81 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3082_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3082_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3082_sig[] = { 0x84, 0x02, 0x08, 0xf7, 0xc4, 0x1b, 0x1f, 0xba, 0xdc, 0xc7, 0x01, 0xfb, 0x3a, 0x1d, 0x0f, 0x98, 0xa3, 0xe2, 0xa7, 0x52, 0x35, 0xe6, 0x95, 0xbf, 0xd3, 0x78, 0xf8, 0xb4, 0x44, 0xc8, 0xda, 0xad, 0x4e, 0xfc, 0x03, 0xe1, 0x75, 0x38, 0x03, 0xc3, 0x62, 0xb4, 0x09, 0xc3, 0xca, 0x6e, 0x0f, 0x21, 0xe5, 0x38, 0xfe, 0x3a, 0x36, 0x4c, 0x0e, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3082 = { .name = "ecdsa_secp224r1_sha256_3082", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3082_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3082_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3082_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3083 for ECDSA, tcId is 82 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3083_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3083_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3083_sig[] = { 0x87, 0xcc, 0x58, 0x2c, 0xb1, 0x06, 0x02, 0x11, 0x05, 0x66, 0xfc, 0xb1, 0x0a, 0x23, 0x3a, 0xed, 0xe9, 0x93, 0xfa, 0xe5, 0xfb, 0x3f, 0x81, 0xb0, 0xbb, 0xff, 0x94, 0xca, 0xc9, 0x71, 0xc0, 0x5b, 0xd5, 0x1d, 0x96, 0x85, 0x82, 0x5b, 0x2c, 0xfc, 0x0a, 0x25, 0x96, 0xc7, 0xf8, 0x0d, 0x9f, 0x9d, 0xc6, 0x8c, 0x28, 0xc1, 0x59, 0xaa, 0x39, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3083 = { .name = "ecdsa_secp224r1_sha256_3083", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3083_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3083_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3083_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3084 for ECDSA, tcId is 83 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3084_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3084_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3084_sig[] = { 0x50, 0xd7, 0x3d, 0x94, 0x9b, 0x3a, 0xdc, 0xd3, 0xe8, 0xfa, 0x94, 0xda, 0xfe, 0xfa, 0xf9, 0xd2, 0x63, 0xeb, 0xc7, 0x02, 0x12, 0x8d, 0x89, 0x1a, 0xfa, 0xc4, 0x7e, 0xa7, 0xf8, 0x42, 0x3c, 0x37, 0x8f, 0x01, 0x90, 0x57, 0x49, 0x25, 0x14, 0x2e, 0xb5, 0xb9, 0x7c, 0x61, 0x2a, 0xbf, 0xa0, 0x48, 0xfa, 0x3a, 0xb5, 0x37, 0x5e, 0xc7, 0x95, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3084 = { .name = "ecdsa_secp224r1_sha256_3084", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3084_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3084_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3084_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3085 for ECDSA, tcId is 84 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3085_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3085_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3085_sig[] = { 0xd6, 0x08, 0x91, 0x5d, 0xfc, 0xd5, 0xd3, 0xc6, 0x3e, 0xd1, 0x0d, 0x0d, 0x9b, 0x61, 0x4f, 0x7a, 0x86, 0x6f, 0x88, 0x58, 0xa6, 0xe5, 0x9d, 0xc0, 0x3e, 0xb0, 0xa8, 0xee, 0x8e, 0x70, 0x1a, 0xa0, 0xba, 0xb4, 0x91, 0x43, 0x0f, 0x6e, 0x4d, 0xa9, 0x22, 0x44, 0xb0, 0xbb, 0x17, 0x49, 0x57, 0xee, 0x6f, 0x49, 0x5b, 0xc5, 0xd1, 0x5f, 0xab, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3085 = { .name = "ecdsa_secp224r1_sha256_3085", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3085_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3085_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3085_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3086 for ECDSA, tcId is 85 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3086_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3086_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3086_sig[] = { 0xc8, 0x7b, 0x0a, 0xb8, 0x42, 0xc4, 0x76, 0x9e, 0xd9, 0x4b, 0x91, 0x0b, 0xd7, 0x71, 0x96, 0x91, 0xf9, 0x99, 0x1b, 0xc5, 0xa3, 0x47, 0x88, 0x96, 0x08, 0xf0, 0x70, 0x34, 0xd0, 0x83, 0x11, 0x10, 0x48, 0xd6, 0xe0, 0x19, 0x77, 0x1f, 0xc2, 0x66, 0x9c, 0x55, 0x15, 0x6a, 0x3d, 0x09, 0x61, 0x5a, 0x6b, 0x2d, 0x9c, 0xae, 0x52, 0xdd, 0xab, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3086 = { .name = "ecdsa_secp224r1_sha256_3086", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3086_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3086_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3086_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3087 for ECDSA, tcId is 86 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3087_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3087_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3087_sig[] = { 0x0a, 0x1c, 0x2c, 0x24, 0x78, 0xe2, 0x44, 0x46, 0x42, 0x26, 0xc6, 0x60, 0xed, 0xf7, 0x24, 0xdb, 0x12, 0x13, 0xf4, 0x92, 0x3e, 0xb7, 0x25, 0xd6, 0x11, 0xd9, 0x76, 0xfd, 0x76, 0x4e, 0x55, 0x18, 0x6a, 0x76, 0xf7, 0x34, 0x89, 0x1d, 0x05, 0xfb, 0x57, 0xaf, 0x27, 0x27, 0xfa, 0xb8, 0xfb, 0xea, 0x68, 0x4c, 0xa4, 0x32, 0x1d, 0x5d, 0xe5, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3087 = { .name = "ecdsa_secp224r1_sha256_3087", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3087_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3087_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3087_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3088 for ECDSA, tcId is 87 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3088_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3088_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3088_sig[] = { 0x8a, 0x27, 0x47, 0xc5, 0xdd, 0x9e, 0xf5, 0x29, 0x8b, 0x8a, 0xea, 0xbd, 0x2f, 0xb3, 0xa2, 0xbe, 0xb1, 0x61, 0x58, 0xfb, 0x2c, 0xc6, 0x2b, 0xe9, 0xe5, 0x1b, 0x21, 0x52, 0xf9, 0x62, 0x51, 0xbc, 0x04, 0x8b, 0xca, 0xd8, 0x32, 0xe6, 0xcb, 0xc0, 0x9c, 0x9c, 0x2e, 0x58, 0x5a, 0xb7, 0x54, 0x3d, 0xc5, 0x52, 0xea, 0xa5, 0x12, 0x5b, 0xe0, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3088 = { .name = "ecdsa_secp224r1_sha256_3088", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3088_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3088_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3088_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3089 for ECDSA, tcId is 88 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3089_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3089_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3089_sig[] = { 0xd9, 0xea, 0xc3, 0x2a, 0x73, 0x4f, 0x3a, 0x3e, 0x5b, 0x5a, 0x29, 0x05, 0xbe, 0xd8, 0x16, 0x4e, 0xf4, 0xc6, 0xcd, 0x24, 0xd5, 0xc0, 0xfc, 0x54, 0xcc, 0x83, 0xf3, 0xcc, 0xa7, 0x84, 0x93, 0x0d, 0x16, 0xc3, 0xb7, 0x53, 0xbb, 0x3e, 0xd9, 0x15, 0x1d, 0x58, 0x3c, 0x50, 0xff, 0x97, 0xbc, 0x97, 0x62, 0x74, 0xbd, 0xe4, 0x82, 0xfb, 0x96, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3089 = { .name = "ecdsa_secp224r1_sha256_3089", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3089_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3089_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3089_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3090 for ECDSA, tcId is 89 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3090_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3090_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3090_sig[] = { 0x6c, 0x40, 0xc6, 0xb1, 0x5a, 0xe5, 0x73, 0xf7, 0x7b, 0x67, 0x7c, 0xd8, 0x78, 0xcc, 0x5e, 0x4d, 0xa8, 0x17, 0x1c, 0xf5, 0x0d, 0x79, 0x97, 0x4f, 0xde, 0x37, 0x4e, 0x00, 0xc8, 0x8c, 0x98, 0x28, 0x03, 0x7b, 0xf7, 0x01, 0x3a, 0x14, 0x15, 0x53, 0x7c, 0xa0, 0x74, 0xd6, 0xc8, 0xa5, 0x53, 0xbd, 0xb4, 0xb2, 0x6b, 0x14, 0xa7, 0xe8, 0x8d, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3090 = { .name = "ecdsa_secp224r1_sha256_3090", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3090_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3090_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3090_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3091 for ECDSA, tcId is 90 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3091_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3091_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3091_sig[] = { 0xdc, 0xa0, 0xaa, 0xa0, 0xa3, 0x95, 0x39, 0x31, 0x42, 0xb3, 0x23, 0xed, 0xce, 0xd0, 0x93, 0x72, 0x76, 0x03, 0x50, 0xf2, 0xab, 0x26, 0x1c, 0xe3, 0x33, 0x9b, 0x11, 0x4d, 0x09, 0x83, 0xbf, 0x6e, 0x51, 0x0c, 0xe7, 0xf0, 0xa7, 0x52, 0x0f, 0x2b, 0x7c, 0x60, 0xcd, 0x68, 0xa4, 0x91, 0x2b, 0x78, 0x16, 0x2c, 0x7a, 0xc3, 0x37, 0x89, 0xe0, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3091 = { .name = "ecdsa_secp224r1_sha256_3091", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3091_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3091_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3091_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3092 for ECDSA, tcId is 91 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3092_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3092_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3092_sig[] = { 0xa0, 0x52, 0x6e, 0xd4, 0x7e, 0x26, 0x07, 0xe6, 0xba, 0xe6, 0xdc, 0xf3, 0xb8, 0xf5, 0x4f, 0x4e, 0x06, 0x38, 0x02, 0x36, 0x73, 0xa3, 0x8c, 0xad, 0x45, 0x69, 0xc3, 0xba, 0x61, 0x51, 0x6f, 0x55, 0x74, 0x6b, 0x37, 0x9d, 0x11, 0xcb, 0xaa, 0x02, 0xce, 0xf3, 0x53, 0x11, 0xd7, 0x77, 0x1a, 0x47, 0xd1, 0xe1, 0x27, 0xcf, 0xf4, 0x6d, 0xcf, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3092 = { .name = "ecdsa_secp224r1_sha256_3092", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3092_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3092_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3092_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3093 for ECDSA, tcId is 92 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3093_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3093_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3093_sig[] = { 0x5c, 0x00, 0xdb, 0x60, 0x17, 0x8c, 0x83, 0x61, 0x09, 0x2b, 0xdf, 0xb4, 0x7f, 0xc9, 0xa4, 0x7b, 0x33, 0x36, 0x3d, 0x7e, 0x0d, 0x76, 0xe3, 0x25, 0x20, 0xf7, 0x96, 0x57, 0xe1, 0xba, 0xf7, 0xae, 0x7d, 0x81, 0x04, 0x57, 0x93, 0xc7, 0x31, 0x73, 0xf4, 0x9d, 0x60, 0xbd, 0xfc, 0x87, 0x79, 0x94, 0x27, 0x95, 0xd9, 0xd0, 0x82, 0xb3, 0xca, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3093 = { .name = "ecdsa_secp224r1_sha256_3093", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3093_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3093_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3093_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3094 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3094_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3094_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3094_sig[] = { 0x46, 0xf6, 0x9b, 0x6a, 0x99, 0x71, 0x79, 0x49, 0xee, 0xe7, 0x40, 0x92, 0xa0, 0xc1, 0x43, 0x8a, 0x29, 0x0a, 0x2c, 0xd8, 0x2f, 0xe1, 0xe1, 0x0d, 0x8f, 0x37, 0xe8, 0x8b, 0x99, 0xa5, 0xf5, 0x9f, 0x09, 0xbd, 0x98, 0x0a, 0x06, 0x62, 0x33, 0x52, 0x33, 0x97, 0x84, 0x69, 0x87, 0xa8, 0xa1, 0xbf, 0xdd, 0xe3, 0x55, 0x06, 0x2d, 0x14, 0x0a, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3094 = { .name = "ecdsa_secp224r1_sha256_3094", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3094_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3094_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3094_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3095 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3095_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3095_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3095_sig[] = { 0xe6, 0x43, 0xd8, 0x08, 0x5a, 0x22, 0x70, 0x6f, 0xa0, 0xe6, 0x54, 0x0f, 0x3d, 0x5e, 0x16, 0x9a, 0xd8, 0xcc, 0x49, 0xb4, 0xbf, 0xe9, 0x8e, 0x32, 0x53, 0x21, 0xc7, 0x05, 0xf9, 0x5b, 0xd4, 0x23, 0xf9, 0xca, 0xfe, 0x0c, 0xed, 0xfe, 0xc6, 0xfd, 0x97, 0x87, 0x15, 0x36, 0xd7, 0x1b, 0x2a, 0xc5, 0x8d, 0xfb, 0x2f, 0x7a, 0xb8, 0x95, 0x2d, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3095 = { .name = "ecdsa_secp224r1_sha256_3095", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3095_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3095_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3095_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3096 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3096_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3096_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3096_sig[] = { 0xe6, 0x5f, 0xb9, 0xbc, 0xdd, 0x79, 0x1f, 0x14, 0x1c, 0xcf, 0xf2, 0xb3, 0xcf, 0xbf, 0x45, 0xd8, 0x4f, 0x8c, 0x62, 0x72, 0x02, 0x1a, 0x68, 0xdd, 0xe8, 0xc3, 0x6b, 0xc8, 0xdf, 0x6e, 0x08, 0xc7, 0x4b, 0x5e, 0x36, 0xb7, 0x77, 0x26, 0x58, 0xf0, 0x25, 0x15, 0xae, 0x0e, 0xa8, 0x13, 0xb6, 0x4d, 0xf2, 0x4f, 0x35, 0x22, 0xea, 0x15, 0xfb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3096 = { .name = "ecdsa_secp224r1_sha256_3096", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3096_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3096_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3096_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3097 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3097_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3097_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3097_sig[] = { 0xa4, 0x76, 0xd4, 0x68, 0x22, 0x1e, 0xf5, 0x56, 0x11, 0xe8, 0xa7, 0x24, 0xc9, 0xb4, 0xcd, 0x79, 0xc3, 0x4f, 0x69, 0x40, 0xd5, 0xf6, 0x65, 0xe3, 0x33, 0x5f, 0x62, 0x31, 0xbf, 0xdd, 0xc1, 0x8e, 0x7a, 0x00, 0x8b, 0xc2, 0x06, 0xc8, 0xe1, 0xca, 0x6c, 0x87, 0x83, 0x63, 0xe4, 0x13, 0x85, 0x08, 0xe0, 0xc3, 0xa8, 0x4a, 0x27, 0xea, 0xbe, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3097 = { .name = "ecdsa_secp224r1_sha256_3097", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3097_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3097_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3097_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3098 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3098_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3098_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3098_sig[] = { 0x1b, 0x39, 0x34, 0x77, 0x94, 0x18, 0x79, 0x27, 0x18, 0x73, 0xa8, 0xc0, 0x43, 0xa7, 0x7c, 0xaa, 0xdb, 0x99, 0x57, 0xfc, 0xdd, 0x26, 0x3a, 0x6a, 0xc9, 0x78, 0xe4, 0xba, 0x27, 0x00, 0x60, 0xd5, 0xf3, 0x56, 0xeb, 0xb6, 0xd1, 0x85, 0x77, 0x2b, 0xaa, 0x78, 0xb8, 0x78, 0xaf, 0x68, 0x07, 0x37, 0x8e, 0x0d, 0x5c, 0x53, 0x2d, 0xa0, 0xa4, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3098 = { .name = "ecdsa_secp224r1_sha256_3098", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3098_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3098_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3098_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3099 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3099_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3099_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3099_sig[] = { 0xb2, 0xed, 0xa8, 0xc9, 0x69, 0xd4, 0xb1, 0xbd, 0xd3, 0x18, 0x67, 0xfd, 0x1f, 0x92, 0xd5, 0x47, 0xb4, 0x06, 0x84, 0x0c, 0x25, 0x7f, 0x2f, 0x80, 0xdf, 0xbd, 0xc4, 0xe3, 0xe6, 0x29, 0x7b, 0x05, 0x9c, 0xe6, 0x4e, 0xf0, 0x4d, 0xe9, 0x71, 0x5a, 0x8f, 0x68, 0x6a, 0x9f, 0x73, 0x98, 0x08, 0x65, 0x06, 0x6a, 0x94, 0x97, 0x5b, 0x7f, 0x81, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3099 = { .name = "ecdsa_secp224r1_sha256_3099", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3099_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3099_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3099_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3100 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3100_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3100_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3100_sig[] = { 0x93, 0x81, 0x89, 0xa1, 0x8a, 0x4b, 0xff, 0x57, 0x12, 0xac, 0x99, 0xc2, 0xb8, 0xe9, 0x2c, 0x21, 0x8a, 0xf3, 0xe4, 0xd4, 0xe3, 0xa8, 0x4b, 0x90, 0x6b, 0x0f, 0x70, 0x4e, 0x7b, 0xb3, 0xe5, 0x38, 0xf0, 0xb7, 0x06, 0x64, 0xda, 0xd4, 0x62, 0xab, 0x14, 0xb0, 0xed, 0x41, 0x6c, 0x86, 0xac, 0x6e, 0x90, 0x60, 0xfe, 0x76, 0x0d, 0xab, 0xb7, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3100 = { .name = "ecdsa_secp224r1_sha256_3100", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3100_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3100_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3100_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3101 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3101_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3101_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3101_sig[] = { 0xbb, 0x7c, 0x1d, 0x81, 0x20, 0xd2, 0xaa, 0x77, 0x65, 0xb1, 0x6e, 0xea, 0xc4, 0x42, 0x82, 0xde, 0x60, 0x5f, 0xb2, 0xa1, 0x66, 0x56, 0x57, 0xde, 0xa4, 0x49, 0x29, 0x35, 0xe0, 0xa8, 0xad, 0xb3, 0xa1, 0x43, 0x88, 0x3f, 0x98, 0x1e, 0xa1, 0x32, 0x3f, 0xa6, 0xf1, 0xd3, 0x47, 0x84, 0x5b, 0xe2, 0xb8, 0xdc, 0xc6, 0xcd, 0x5c, 0xc9, 0x3e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3101 = { .name = "ecdsa_secp224r1_sha256_3101", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3101_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3101_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3101_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3102 for ECDSA, tcId is 101 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3102_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3102_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3102_sig[] = { 0x74, 0xa4, 0xc5, 0x1d, 0xd6, 0x0c, 0x71, 0x18, 0x46, 0x7b, 0xe2, 0x96, 0x52, 0x06, 0x0f, 0x39, 0xaf, 0x94, 0xf8, 0xc0, 0xeb, 0x7f, 0x15, 0xc6, 0x47, 0x71, 0x01, 0x0c, 0x61, 0x02, 0xec, 0x0c, 0x92, 0x57, 0xe6, 0x07, 0xaf, 0x3f, 0x3f, 0xf7, 0x49, 0x0b, 0x54, 0xe7, 0x81, 0x11, 0xf4, 0x22, 0xbe, 0xc1, 0x1b, 0xa0, 0x12, 0x77, 0x17, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3102 = { .name = "ecdsa_secp224r1_sha256_3102", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3102_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3102_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3102_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3103 for ECDSA, tcId is 102 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3103_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3103_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3103_sig[] = { 0x62, 0x5d, 0xa1, 0x8d, 0x67, 0x6f, 0x02, 0xfa, 0xe9, 0xdb, 0xcb, 0x30, 0x92, 0x26, 0x59, 0x09, 0x48, 0x8f, 0xb9, 0x5d, 0x66, 0x25, 0x69, 0xd7, 0x74, 0x6b, 0x96, 0x87, 0xc4, 0xf1, 0xec, 0x83, 0x1e, 0x36, 0x60, 0x4d, 0x60, 0x4b, 0x63, 0x0f, 0xd0, 0xb1, 0x99, 0x9c, 0xd0, 0x99, 0x60, 0x86, 0x22, 0x94, 0x25, 0x1d, 0x85, 0xe5, 0x87, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3103 = { .name = "ecdsa_secp224r1_sha256_3103", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3103_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3103_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha256_3103_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3104 for ECDSA, tcId is 103 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3104_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3104_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3104_sig[] = { 0x8e, 0xe0, 0xd4, 0xa3, 0x1f, 0xd1, 0xc4, 0xd8, 0x54, 0xd7, 0x5c, 0x14, 0x15, 0x19, 0x26, 0x89, 0x9d, 0xde, 0x1c, 0x73, 0x32, 0xfd, 0x47, 0x69, 0x44, 0x3d, 0x21, 0x3d, 0x4b, 0x82, 0x78, 0xb8, 0x9b, 0xa4, 0xf8, 0xfb, 0xd7, 0xdc, 0xc6, 0xaf, 0xfe, 0x4c, 0x12, 0x15, 0x6f, 0x74, 0x09, 0x90, 0x94, 0x16, 0x98, 0x96, 0x85, 0xdd, 0x5a, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3104 = { .name = "ecdsa_secp224r1_sha256_3104", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3104_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3104_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3104_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3105 for ECDSA, tcId is 104 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3105_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3105_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3105_sig[] = { 0xbd, 0xde, 0x45, 0xfc, 0x9e, 0xbb, 0x37, 0x49, 0xc9, 0xfb, 0x2c, 0x25, 0xbf, 0x02, 0xe2, 0xa2, 0x17, 0xcc, 0xc1, 0x12, 0xf8, 0xe6, 0x54, 0x99, 0xee, 0xff, 0xb6, 0xa1, 0xbe, 0xcd, 0x6b, 0x88, 0xef, 0x2b, 0xee, 0x87, 0x2e, 0xbc, 0x0e, 0x2b, 0x80, 0x5a, 0x56, 0x06, 0x6e, 0x19, 0x17, 0x9f, 0xce, 0x9f, 0x0d, 0xc0, 0xdf, 0x3f, 0x63, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3105 = { .name = "ecdsa_secp224r1_sha256_3105", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3105_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3105_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3105_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3106 for ECDSA, tcId is 105 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3106_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3106_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3106_sig[] = { 0x50, 0x18, 0x6e, 0x02, 0x3a, 0x1f, 0x50, 0x53, 0xfc, 0xb4, 0xd0, 0x47, 0x30, 0x39, 0xb1, 0xb2, 0xcd, 0xeb, 0xa5, 0x69, 0x71, 0x9a, 0x4e, 0xba, 0xbd, 0xd6, 0x75, 0xc8, 0xf8, 0xfb, 0x89, 0x3c, 0x1b, 0x6b, 0x5b, 0x82, 0x7b, 0x5f, 0x3f, 0x4b, 0xb5, 0xea, 0xb7, 0x5b, 0x62, 0x12, 0xbb, 0x56, 0xa5, 0xa3, 0x9b, 0xb3, 0x5c, 0x12, 0x7a, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3106 = { .name = "ecdsa_secp224r1_sha256_3106", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3106_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3106_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3106_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3107 for ECDSA, tcId is 106 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3107_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3107_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3107_sig[] = { 0xd3, 0xb4, 0x54, 0x63, 0x9b, 0x0f, 0xb3, 0xda, 0x93, 0xb2, 0x0d, 0x55, 0xbe, 0x86, 0x09, 0xe4, 0x09, 0x02, 0xcb, 0x4a, 0x60, 0x8f, 0x3b, 0x90, 0x64, 0xc0, 0xde, 0xb7, 0xec, 0x7a, 0xa9, 0x63, 0x7f, 0xd7, 0x1b, 0x54, 0x3e, 0x52, 0x43, 0xfa, 0xab, 0x4c, 0x7a, 0x2e, 0xdc, 0x2c, 0x48, 0xe9, 0x82, 0xc5, 0xac, 0x01, 0x78, 0x07, 0xf1, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3107 = { .name = "ecdsa_secp224r1_sha256_3107", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3107_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3107_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3107_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3108 for ECDSA, tcId is 107 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3108_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3108_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3108_sig[] = { 0xc2, 0x02, 0xab, 0xbd, 0x98, 0xe0, 0x38, 0x09, 0xde, 0x84, 0x2b, 0xde, 0xf2, 0x68, 0xa1, 0xc6, 0x16, 0xa7, 0x30, 0x6d, 0xa6, 0x9a, 0x87, 0xab, 0xaf, 0x03, 0x16, 0x9c, 0x7e, 0x7e, 0x04, 0x82, 0x3a, 0xf8, 0xed, 0x68, 0x36, 0xfd, 0x2a, 0xc0, 0x11, 0xe4, 0x7d, 0xe8, 0xe1, 0xbe, 0xf9, 0x1e, 0xd1, 0xda, 0x51, 0x44, 0x89, 0x3f, 0xc2, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3108 = { .name = "ecdsa_secp224r1_sha256_3108", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3108_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3108_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3108_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3109 for ECDSA, tcId is 108 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3109_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3109_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3109_sig[] = { 0x2e, 0x4b, 0x76, 0x63, 0x88, 0x16, 0xcc, 0xe0, 0x57, 0xa4, 0xa2, 0x7a, 0x49, 0x25, 0x8d, 0xcb, 0x54, 0x37, 0xae, 0x97, 0x73, 0x9f, 0x27, 0xeb, 0xc0, 0x97, 0x3c, 0x0b, 0xe9, 0xf6, 0xc0, 0xb6, 0x4e, 0x76, 0x4a, 0xd3, 0x9d, 0xd9, 0x2b, 0x57, 0x6e, 0x11, 0xc2, 0x3e, 0x59, 0x94, 0xb0, 0x20, 0x95, 0xcb, 0x2a, 0x47, 0x20, 0xc8, 0x66, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3109 = { .name = "ecdsa_secp224r1_sha256_3109", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3109_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3109_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3109_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3110 for ECDSA, tcId is 109 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3110_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3110_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3110_sig[] = { 0x7e, 0x0f, 0x48, 0x76, 0x10, 0x89, 0xaa, 0x4c, 0x7e, 0xcd, 0x5a, 0x7a, 0xc5, 0x38, 0x08, 0x36, 0xb1, 0xe5, 0xd3, 0x81, 0xd3, 0x40, 0x01, 0x74, 0xd1, 0x5d, 0xf9, 0x8b, 0x0c, 0x3d, 0xf5, 0x00, 0x60, 0xe3, 0xa6, 0x71, 0x4a, 0xa5, 0x65, 0xa3, 0x3d, 0x78, 0x4e, 0x7b, 0x16, 0xac, 0x87, 0xbe, 0xbf, 0xb3, 0xc2, 0x25, 0x5c, 0xfd, 0x83, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3110 = { .name = "ecdsa_secp224r1_sha256_3110", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3110_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3110_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3110_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3111 for ECDSA, tcId is 110 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3111_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3111_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3111_sig[] = { 0x4d, 0x6f, 0x74, 0x08, 0x50, 0x8e, 0xb0, 0x81, 0x4d, 0xcd, 0x48, 0x00, 0x7f, 0x0e, 0xfd, 0x9e, 0x2b, 0x91, 0xcd, 0xac, 0x40, 0x30, 0x54, 0x0c, 0xc6, 0x78, 0xde, 0x19, 0x1e, 0x74, 0xf8, 0xdc, 0x34, 0xd1, 0x36, 0x13, 0xef, 0x42, 0x46, 0x2f, 0xe8, 0x89, 0x81, 0xcb, 0xe2, 0x48, 0x9b, 0xe1, 0x0e, 0x4c, 0xda, 0xe9, 0x75, 0xa1, 0xb3, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3111 = { .name = "ecdsa_secp224r1_sha256_3111", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3111_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3111_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3111_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3112 for ECDSA, tcId is 111 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3112_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3112_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3112_sig[] = { 0x96, 0x7f, 0x2c, 0x5d, 0x30, 0x4c, 0x79, 0x32, 0xea, 0xaa, 0x16, 0x82, 0x19, 0x79, 0x45, 0xe6, 0x6c, 0xc9, 0x12, 0xb7, 0x03, 0x82, 0x47, 0x76, 0xef, 0x16, 0xad, 0x7a, 0x73, 0x95, 0x70, 0x01, 0xd9, 0x03, 0x7c, 0x63, 0xd6, 0x47, 0x1c, 0x80, 0x9a, 0x23, 0x88, 0x38, 0x3a, 0xd6, 0x95, 0x13, 0x7c, 0x62, 0x2c, 0xd5, 0xf5, 0x58, 0x44, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3112 = { .name = "ecdsa_secp224r1_sha256_3112", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3112_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3112_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3112_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3113 for ECDSA, tcId is 112 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3113_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3113_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3113_sig[] = { 0x49, 0x26, 0x08, 0x04, 0xbb, 0x2c, 0xea, 0xe4, 0xb9, 0xce, 0xe6, 0x3b, 0x02, 0xea, 0x60, 0x17, 0x3e, 0xc3, 0xf4, 0xf9, 0x01, 0x67, 0x62, 0x7c, 0x0b, 0xb3, 0x98, 0x88, 0xc9, 0xeb, 0x02, 0x2f, 0x96, 0xdb, 0x3e, 0x90, 0xfe, 0x0f, 0xf6, 0x17, 0x73, 0x0a, 0x62, 0x9f, 0x34, 0x2e, 0x02, 0xfb, 0x20, 0x8d, 0x68, 0x36, 0xcb, 0xbd, 0xc7, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3113 = { .name = "ecdsa_secp224r1_sha256_3113", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3113_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3113_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3113_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3114 for ECDSA, tcId is 113 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3114_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3114_sig[] = { 0xf3, 0xe7, 0x12, 0x59, 0x7a, 0x4b, 0x22, 0x63, 0x2c, 0x5f, 0x8e, 0xb9, 0xf2, 0x84, 0x58, 0x82, 0xbb, 0x03, 0xa1, 0x39, 0x73, 0x5f, 0x80, 0xaf, 0x88, 0x26, 0xfc, 0x56, 0x62, 0x86, 0x5b, 0xd9, 0x1c, 0x09, 0x03, 0x51, 0x1a, 0x48, 0x1d, 0x60, 0x7e, 0xb6, 0xb5, 0xfe, 0x28, 0xf6, 0xf6, 0xc8, 0x92, 0x95, 0x68, 0x1a, 0x3e, 0x8d, 0x55, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3114 = { .name = "ecdsa_secp224r1_sha256_3114", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3114_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3114_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3114_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 113 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3115 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3115_pubkey[] = { 0x93, 0xb4, 0xc2, 0x8f, 0x03, 0x2d, 0x00, 0xf8, 0x0e, 0x77, 0x49, 0x1e, 0xdc, 0x15, 0x83, 0x59, 0x90, 0x9e, 0xe9, 0xe3, 0x0a, 0x73, 0x27, 0xb7, 0x42, 0x19, 0xe5, 0xe2, 0x48, 0x2c, 0x19, 0xae, 0x35, 0xcb, 0x28, 0xaf, 0xc9, 0xb9, 0x5c, 0xa1, 0xed, 0x7a, 0xd9, 0x1c, 0x81, 0x2d, 0x5f, 0xcc, 0xeb, 0x4b, 0xed, 0xdb, 0xf1, 0xa1, 0x6d, 0x92, }; static const unsigned char ecdsa_secp224r1_sha256_3115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3115_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3115 = { .name = "ecdsa_secp224r1_sha256_3115", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3115_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3115_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3115_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 114 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3116 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3116_pubkey[] = { 0x93, 0xb4, 0xc2, 0x8f, 0x03, 0x2d, 0x00, 0xf8, 0x0e, 0x77, 0x49, 0x1e, 0xdc, 0x15, 0x83, 0x59, 0x90, 0x9e, 0xe9, 0xe3, 0x0a, 0x73, 0x27, 0xb7, 0x42, 0x19, 0xe5, 0xe2, 0x48, 0x2c, 0x19, 0xae, 0x35, 0xcb, 0x28, 0xaf, 0xc9, 0xb9, 0x5c, 0xa1, 0xed, 0x7a, 0xd9, 0x1c, 0x81, 0x2d, 0x5f, 0xcc, 0xeb, 0x4b, 0xed, 0xdb, 0xf1, 0xa1, 0x6d, 0x92, }; static const unsigned char ecdsa_secp224r1_sha256_3116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3116_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3116 = { .name = "ecdsa_secp224r1_sha256_3116", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3116_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3116_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3116_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 115 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3117 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3117_pubkey[] = { 0xda, 0x92, 0x7f, 0x4b, 0xa8, 0x8b, 0x63, 0x9b, 0xf5, 0x33, 0x42, 0x21, 0xd2, 0xf5, 0x4d, 0x8e, 0xf9, 0xcc, 0xc1, 0xa1, 0x12, 0x5f, 0xad, 0x18, 0xc7, 0xbf, 0xb7, 0x89, 0xac, 0x51, 0xae, 0x53, 0xde, 0x6d, 0x83, 0x4a, 0x9d, 0xb3, 0x94, 0x7b, 0x8d, 0xd4, 0xc6, 0xac, 0x2b, 0x08, 0x4b, 0x85, 0x49, 0x6b, 0xfa, 0x72, 0xd8, 0x6b, 0x69, 0x48, }; static const unsigned char ecdsa_secp224r1_sha256_3117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3117_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3117 = { .name = "ecdsa_secp224r1_sha256_3117", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3117_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3117_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3117_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 116 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3118 for ECDSA, tcId is 117 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3118_pubkey[] = { 0x20, 0x88, 0x8e, 0x1c, 0x0f, 0x56, 0x94, 0xc4, 0xc0, 0x36, 0x3b, 0x36, 0x48, 0x2b, 0xeb, 0x6e, 0x1e, 0x66, 0x49, 0xb3, 0xd3, 0xb2, 0x6f, 0x12, 0x7f, 0xeb, 0xb6, 0xfc, 0xde, 0x00, 0xc2, 0xf3, 0xd8, 0xe4, 0xa7, 0xe8, 0xa0, 0xba, 0xfd, 0x41, 0x7c, 0x96, 0xd3, 0xe8, 0x1c, 0x97, 0x59, 0x46, 0xa2, 0xf3, 0x68, 0x6a, 0xa3, 0x9d, 0x35, 0xf1, }; static const unsigned char ecdsa_secp224r1_sha256_3118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3118_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3118 = { .name = "ecdsa_secp224r1_sha256_3118", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3118_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3118_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3118_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 117 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3119 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3119_pubkey[] = { 0x95, 0x45, 0xc8, 0x6f, 0x03, 0x2c, 0x5d, 0xf2, 0x55, 0xa4, 0x49, 0x0b, 0xb0, 0xb8, 0x3e, 0xca, 0x20, 0x11, 0x81, 0x79, 0x2a, 0xd7, 0x42, 0x46, 0x87, 0x4d, 0xb2, 0x29, 0x40, 0x52, 0x64, 0xc2, 0x83, 0x06, 0x33, 0x27, 0xb7, 0x0f, 0x4c, 0x2b, 0xe5, 0xab, 0x4d, 0x2e, 0x94, 0x07, 0xb8, 0x66, 0xe1, 0x21, 0xd6, 0x14, 0x5d, 0x12, 0x4c, 0x04, }; static const unsigned char ecdsa_secp224r1_sha256_3119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3119_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3119 = { .name = "ecdsa_secp224r1_sha256_3119", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3119_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3119_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3119_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 118 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3120 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3120_pubkey[] = { 0x57, 0x9d, 0x53, 0xf3, 0x9d, 0x51, 0x09, 0xbd, 0x44, 0x0e, 0x3e, 0x3e, 0x7e, 0xfd, 0x60, 0x37, 0x40, 0x96, 0x33, 0x48, 0xff, 0x9c, 0x72, 0xc0, 0x3b, 0x0f, 0xe6, 0xb8, 0xdf, 0x02, 0xf1, 0x33, 0xec, 0xd6, 0x0b, 0x07, 0x2a, 0x08, 0x12, 0xad, 0xc7, 0x52, 0x70, 0x8f, 0x2b, 0xe9, 0xd8, 0xc9, 0xad, 0x59, 0x53, 0xd8, 0xc7, 0xbf, 0x39, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3120_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3120 = { .name = "ecdsa_secp224r1_sha256_3120", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3120_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3120_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3120_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 119 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3121 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3121_pubkey[] = { 0x57, 0x9d, 0x53, 0xf3, 0x9d, 0x51, 0x09, 0xbd, 0x44, 0x0e, 0x3e, 0x3e, 0x7e, 0xfd, 0x60, 0x37, 0x40, 0x96, 0x33, 0x48, 0xff, 0x9c, 0x72, 0xc0, 0x3b, 0x0f, 0xe6, 0xb8, 0xdf, 0x02, 0xf1, 0x33, 0xec, 0xd6, 0x0b, 0x07, 0x2a, 0x08, 0x12, 0xad, 0xc7, 0x52, 0x70, 0x8f, 0x2b, 0xe9, 0xd8, 0xc9, 0xad, 0x59, 0x53, 0xd8, 0xc7, 0xbf, 0x39, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3121_sig[] = { 0x03, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3121 = { .name = "ecdsa_secp224r1_sha256_3121", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3121_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3121_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3121_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 120 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3122 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3122_pubkey[] = { 0xd2, 0xa1, 0x4c, 0x81, 0x06, 0xd8, 0x9f, 0x35, 0x36, 0xfa, 0xeb, 0xda, 0xfc, 0xd4, 0x68, 0x0f, 0x65, 0xab, 0x4b, 0xf2, 0x24, 0x31, 0x64, 0xca, 0x14, 0x64, 0xb6, 0x28, 0xac, 0xaf, 0x2b, 0xee, 0x52, 0xe6, 0x23, 0x1d, 0x3c, 0x98, 0x0f, 0x52, 0xf8, 0xe1, 0x89, 0xa4, 0x1c, 0x3e, 0x3a, 0x05, 0xe5, 0x91, 0x19, 0x5e, 0xc8, 0x64, 0x21, 0x7a, }; static const unsigned char ecdsa_secp224r1_sha256_3122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3122_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3122 = { .name = "ecdsa_secp224r1_sha256_3122", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3122_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3122_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3122_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 121 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3123 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3123_pubkey[] = { 0xd2, 0xa1, 0x4c, 0x81, 0x06, 0xd8, 0x9f, 0x35, 0x36, 0xfa, 0xeb, 0xda, 0xfc, 0xd4, 0x68, 0x0f, 0x65, 0xab, 0x4b, 0xf2, 0x24, 0x31, 0x64, 0xca, 0x14, 0x64, 0xb6, 0x28, 0xac, 0xaf, 0x2b, 0xee, 0x52, 0xe6, 0x23, 0x1d, 0x3c, 0x98, 0x0f, 0x52, 0xf8, 0xe1, 0x89, 0xa4, 0x1c, 0x3e, 0x3a, 0x05, 0xe5, 0x91, 0x19, 0x5e, 0xc8, 0x64, 0x21, 0x7a, }; static const unsigned char ecdsa_secp224r1_sha256_3123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3123_sig[] = { 0x03, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3123 = { .name = "ecdsa_secp224r1_sha256_3123", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3123_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3123_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3123_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 122 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3124 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3124_pubkey[] = { 0xe8, 0x92, 0x47, 0x91, 0x53, 0xad, 0x13, 0xea, 0x5c, 0xa4, 0x5d, 0x4c, 0x32, 0x3e, 0xbf, 0x1f, 0xc3, 0xcd, 0x0c, 0xdf, 0x78, 0x7c, 0x34, 0x30, 0x6a, 0x3f, 0x79, 0xa4, 0x32, 0x6c, 0xa9, 0x64, 0x5f, 0x2b, 0x51, 0x76, 0x08, 0xdc, 0x1f, 0x08, 0xb7, 0xa8, 0x4c, 0xfc, 0x61, 0xe6, 0xff, 0x68, 0xd1, 0x4f, 0x27, 0xd2, 0x04, 0x3c, 0x7e, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3124_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3124 = { .name = "ecdsa_secp224r1_sha256_3124", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3124_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3124_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3124_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 123 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3125 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3125_pubkey[] = { 0xe8, 0x92, 0x47, 0x91, 0x53, 0xad, 0x13, 0xea, 0x5c, 0xa4, 0x5d, 0x4c, 0x32, 0x3e, 0xbf, 0x1f, 0xc3, 0xcd, 0x0c, 0xdf, 0x78, 0x7c, 0x34, 0x30, 0x6a, 0x3f, 0x79, 0xa4, 0x32, 0x6c, 0xa9, 0x64, 0x5f, 0x2b, 0x51, 0x76, 0x08, 0xdc, 0x1f, 0x08, 0xb7, 0xa8, 0x4c, 0xfc, 0x61, 0xe6, 0xff, 0x68, 0xd1, 0x4f, 0x27, 0xd2, 0x04, 0x3c, 0x7e, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3125_sig[] = { 0x03, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3125 = { .name = "ecdsa_secp224r1_sha256_3125", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3125_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3125_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3125_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 124 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3126 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3126_pubkey[] = { 0xe8, 0x92, 0x47, 0x91, 0x53, 0xad, 0x13, 0xea, 0x5c, 0xa4, 0x5d, 0x4c, 0x32, 0x3e, 0xbf, 0x1f, 0xc3, 0xcd, 0x0c, 0xdf, 0x78, 0x7c, 0x34, 0x30, 0x6a, 0x3f, 0x79, 0xa4, 0x32, 0x6c, 0xa9, 0x64, 0x5f, 0x2b, 0x51, 0x76, 0x08, 0xdc, 0x1f, 0x08, 0xb7, 0xa8, 0x4c, 0xfc, 0x61, 0xe6, 0xff, 0x68, 0xd1, 0x4f, 0x27, 0xd2, 0x04, 0x3c, 0x7e, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3126_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3126 = { .name = "ecdsa_secp224r1_sha256_3126", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3126_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3126_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3126_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 125 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3127 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3127_pubkey[] = { 0x2b, 0x0e, 0xac, 0x35, 0xc0, 0xb2, 0x94, 0xf6, 0xd4, 0x35, 0xdc, 0xaf, 0xfa, 0x86, 0x33, 0xb0, 0x12, 0x30, 0x05, 0x46, 0x5c, 0x30, 0x08, 0x0a, 0xdb, 0xcc, 0x10, 0x3a, 0xd4, 0x65, 0xa6, 0x3b, 0xfb, 0x71, 0xd4, 0xae, 0xe0, 0x93, 0x28, 0x69, 0x7f, 0xe1, 0x08, 0x87, 0x53, 0x64, 0x6d, 0x83, 0x69, 0xb8, 0xdc, 0x10, 0x32, 0x17, 0xc2, 0x19, }; static const unsigned char ecdsa_secp224r1_sha256_3127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3127_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3127 = { .name = "ecdsa_secp224r1_sha256_3127", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3127_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3127_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3127_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 126 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3128 for ECDSA, tcId is 127 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3128_pubkey[] = { 0xd1, 0x56, 0xe0, 0x1e, 0x33, 0xbe, 0xce, 0xde, 0x8f, 0x4f, 0xb4, 0xae, 0x95, 0x21, 0xd7, 0x51, 0xe7, 0xf8, 0xeb, 0x79, 0x5c, 0xa0, 0x08, 0x57, 0xdb, 0x2f, 0xd7, 0xaf, 0xd7, 0x3a, 0x45, 0x0e, 0xc6, 0x0e, 0x6a, 0x92, 0x18, 0xa8, 0x43, 0x18, 0x70, 0x68, 0x7e, 0x09, 0x68, 0x94, 0x4f, 0x6d, 0xc5, 0xff, 0xeb, 0x30, 0xe4, 0x69, 0x3b, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha256_3128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3128_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3128 = { .name = "ecdsa_secp224r1_sha256_3128", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3128_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3128_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3128_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 127 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3129 for ECDSA, tcId is 128 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3129_pubkey[] = { 0xf2, 0x93, 0xa8, 0xa2, 0xb4, 0xaf, 0xf0, 0xbe, 0xd9, 0x5c, 0x66, 0x3b, 0x36, 0x4a, 0xfe, 0x69, 0x77, 0x8d, 0x38, 0xdd, 0x7e, 0x7a, 0x30, 0x4f, 0x7d, 0x3c, 0x74, 0xe6, 0x17, 0xdf, 0xd0, 0x9e, 0x78, 0x03, 0xc4, 0x43, 0x9a, 0x6c, 0x07, 0x5c, 0xb5, 0x79, 0xcd, 0xe6, 0x52, 0xd0, 0x3f, 0x75, 0x59, 0xff, 0x58, 0x84, 0x63, 0x12, 0xfa, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha256_3129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3129_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3129 = { .name = "ecdsa_secp224r1_sha256_3129", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3129_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3129_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3129_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 128 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3130 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3130_pubkey[] = { 0xd4, 0xdd, 0xf0, 0x03, 0xb2, 0x98, 0xcb, 0xaa, 0x7d, 0x2e, 0xdc, 0x58, 0x4b, 0x28, 0xb4, 0x74, 0xa7, 0x61, 0x62, 0xed, 0x4b, 0x5b, 0x0f, 0x62, 0x22, 0xc5, 0x43, 0x17, 0xd4, 0xe4, 0xfe, 0x03, 0x0f, 0x17, 0x8f, 0xb4, 0xaa, 0x4a, 0x6d, 0x7f, 0x61, 0x26, 0x5e, 0xcd, 0x7e, 0xf1, 0x3c, 0x31, 0x36, 0x06, 0xb8, 0xd3, 0x41, 0xa8, 0xb9, 0x54, }; static const unsigned char ecdsa_secp224r1_sha256_3130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3130_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3130 = { .name = "ecdsa_secp224r1_sha256_3130", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3130_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3130_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3130_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 129 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3131 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3131_pubkey[] = { 0x8a, 0x5b, 0xf0, 0x02, 0x8f, 0x1e, 0x3e, 0xb6, 0x84, 0x1d, 0xee, 0x7b, 0x8f, 0x87, 0x3f, 0x68, 0xb0, 0xc5, 0x60, 0xe5, 0x92, 0xe3, 0x18, 0x20, 0x74, 0xf5, 0x1c, 0xe8, 0x96, 0x68, 0xc3, 0x22, 0x24, 0xb6, 0x5b, 0x68, 0x49, 0x71, 0x3d, 0x35, 0xe3, 0xac, 0xf1, 0x78, 0x68, 0x62, 0xe6, 0x5b, 0x5a, 0x66, 0x4b, 0x47, 0xa0, 0x98, 0xca, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha256_3131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3131_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3131 = { .name = "ecdsa_secp224r1_sha256_3131", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3131_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3131_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3131_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 130 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3132 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3132_pubkey[] = { 0xb5, 0x3e, 0x56, 0x9b, 0x18, 0xe9, 0x36, 0x15, 0x67, 0xe5, 0x71, 0x3e, 0xe6, 0x9e, 0xcb, 0xe7, 0x94, 0x99, 0x11, 0xb0, 0x25, 0x75, 0x46, 0xa2, 0x4c, 0x3d, 0xd1, 0x37, 0xf2, 0x9a, 0x83, 0x33, 0x4c, 0xff, 0x1c, 0x44, 0xd8, 0xc0, 0xc3, 0x3b, 0x6d, 0xad, 0xb8, 0x56, 0x8c, 0x02, 0x4f, 0xa1, 0xfb, 0xb6, 0x94, 0xcd, 0x9e, 0x70, 0x5f, 0x5a, }; static const unsigned char ecdsa_secp224r1_sha256_3132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3132_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3132 = { .name = "ecdsa_secp224r1_sha256_3132", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3132_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3132_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3132_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 131 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3133 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3133_pubkey[] = { 0x77, 0xf3, 0xeb, 0xf5, 0x27, 0x25, 0xc8, 0x09, 0xac, 0xbb, 0x19, 0xad, 0xf0, 0x93, 0x12, 0x6a, 0x2a, 0x3a, 0x06, 0x5c, 0xa6, 0x54, 0xc2, 0x20, 0x99, 0xc9, 0x78, 0x12, 0x9f, 0x19, 0x48, 0xd2, 0x3c, 0x51, 0x58, 0xec, 0x2a, 0xdf, 0xf4, 0x55, 0xeb, 0x2f, 0xed, 0xf1, 0x07, 0x5d, 0x4e, 0xc2, 0x2d, 0x66, 0x09, 0x77, 0x42, 0x4a, 0x10, 0xf7, }; static const unsigned char ecdsa_secp224r1_sha256_3133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3133_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3133 = { .name = "ecdsa_secp224r1_sha256_3133", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3133_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3133_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3133_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 132 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3134 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3134_pubkey[] = { 0xa7, 0xf7, 0xb9, 0x9e, 0x5c, 0xdc, 0x6f, 0xec, 0x89, 0x28, 0xef, 0xf7, 0x73, 0xcc, 0xdf, 0x3b, 0x68, 0xb1, 0x9d, 0x43, 0xcd, 0xb4, 0x18, 0x09, 0xe1, 0x9c, 0x60, 0xf3, 0x17, 0x36, 0xb7, 0xa0, 0xc1, 0x2a, 0x9c, 0x2d, 0x70, 0x66, 0x71, 0x91, 0x29, 0x15, 0x14, 0x2b, 0x3e, 0x05, 0xc8, 0x9e, 0xf3, 0xad, 0x49, 0x7b, 0xd6, 0xc3, 0x46, 0x99, }; static const unsigned char ecdsa_secp224r1_sha256_3134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3134_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3134 = { .name = "ecdsa_secp224r1_sha256_3134", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3134_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3134_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3134_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 133 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3135 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3135_pubkey[] = { 0xa7, 0xf7, 0xb9, 0x9e, 0x5c, 0xdc, 0x6f, 0xec, 0x89, 0x28, 0xef, 0xf7, 0x73, 0xcc, 0xdf, 0x3b, 0x68, 0xb1, 0x9d, 0x43, 0xcd, 0xb4, 0x18, 0x09, 0xe1, 0x9c, 0x60, 0xf3, 0x17, 0x36, 0xb7, 0xa0, 0xc1, 0x2a, 0x9c, 0x2d, 0x70, 0x66, 0x71, 0x91, 0x29, 0x15, 0x14, 0x2b, 0x3e, 0x05, 0xc8, 0x9e, 0xf3, 0xad, 0x49, 0x7b, 0xd6, 0xc3, 0x46, 0x99, }; static const unsigned char ecdsa_secp224r1_sha256_3135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3135_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3135 = { .name = "ecdsa_secp224r1_sha256_3135", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3135_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3135_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3135_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 134 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3136 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3136_pubkey[] = { 0x9c, 0xf0, 0x00, 0x10, 0xb4, 0xad, 0x86, 0x63, 0x6f, 0x6c, 0xc7, 0x0f, 0xb5, 0x8c, 0x3b, 0x99, 0x5c, 0x0d, 0x12, 0xe4, 0x6f, 0xc5, 0x8e, 0x24, 0xb0, 0xd2, 0x8f, 0x69, 0x21, 0xc8, 0xa8, 0xa3, 0x20, 0xcc, 0x45, 0x0c, 0xcb, 0x15, 0xeb, 0xd7, 0x16, 0x17, 0xf4, 0xed, 0x25, 0xdb, 0x4d, 0x34, 0x13, 0xfb, 0xdf, 0x15, 0x7d, 0x31, 0xdb, 0xb6, }; static const unsigned char ecdsa_secp224r1_sha256_3136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3136_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3136 = { .name = "ecdsa_secp224r1_sha256_3136", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3136_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3136_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3136_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 135 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3137 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3137_pubkey[] = { 0xae, 0x9b, 0x36, 0x36, 0xb8, 0x54, 0x72, 0x32, 0xdf, 0x43, 0x85, 0x59, 0xb5, 0xa1, 0x09, 0xe0, 0x23, 0x8a, 0x73, 0xa7, 0x6a, 0xfc, 0x25, 0xd0, 0x70, 0xea, 0x27, 0x42, 0x72, 0x10, 0xa6, 0x9d, 0xe4, 0x4a, 0xd6, 0x45, 0xb1, 0xb0, 0x38, 0x45, 0x04, 0x0f, 0x46, 0xfc, 0xe2, 0x38, 0xe9, 0x2c, 0x13, 0x1a, 0x71, 0xe4, 0xb1, 0x84, 0xc0, 0x1f, }; static const unsigned char ecdsa_secp224r1_sha256_3137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3137_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3137 = { .name = "ecdsa_secp224r1_sha256_3137", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3137_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3137_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3137_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 136 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3138 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3138_pubkey[] = { 0x8d, 0x57, 0xd4, 0xfc, 0xe6, 0x27, 0x57, 0x79, 0x18, 0x88, 0xc1, 0x93, 0x80, 0x76, 0xfd, 0x76, 0x6d, 0xae, 0xb2, 0xec, 0x9f, 0x1b, 0xda, 0x8a, 0xd5, 0xdf, 0x48, 0x09, 0xaa, 0xde, 0x92, 0x4d, 0x7e, 0xa3, 0xae, 0x5a, 0xbb, 0xd0, 0x71, 0x9a, 0x7d, 0x48, 0x65, 0x75, 0x9d, 0xa6, 0x54, 0xcf, 0x76, 0xcf, 0x7e, 0xc0, 0x31, 0x27, 0x71, 0x08, }; static const unsigned char ecdsa_secp224r1_sha256_3138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3138_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3138 = { .name = "ecdsa_secp224r1_sha256_3138", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3138_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3138_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3138_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 137 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3139 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3139_pubkey[] = { 0x10, 0x51, 0x8e, 0xb7, 0xa9, 0x26, 0xb5, 0xf7, 0xb6, 0x5b, 0xe8, 0x01, 0xec, 0x9b, 0x2a, 0xbf, 0x76, 0xad, 0xce, 0x25, 0xc6, 0x15, 0x2e, 0x45, 0x2a, 0x35, 0x12, 0xc8, 0x3f, 0x32, 0x2b, 0x9a, 0xb5, 0x7e, 0xa8, 0x35, 0x2a, 0xd2, 0x9b, 0xeb, 0x99, 0xef, 0x35, 0x6b, 0x71, 0x34, 0x32, 0xfc, 0xc4, 0xae, 0xf3, 0x1f, 0x90, 0x30, 0x45, 0xd9, }; static const unsigned char ecdsa_secp224r1_sha256_3139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3139_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3139 = { .name = "ecdsa_secp224r1_sha256_3139", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3139_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3139_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3139_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 138 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3140 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3140_pubkey[] = { 0x8a, 0x5d, 0xfe, 0xdc, 0x9d, 0xd1, 0xcb, 0x9a, 0x43, 0x9c, 0x88, 0xb3, 0xdd, 0x47, 0x2b, 0x2e, 0x66, 0x17, 0x3f, 0x78, 0x66, 0x85, 0x5d, 0xb6, 0xbb, 0x6c, 0x12, 0xfd, 0x3b, 0xad, 0xfb, 0xb8, 0xa4, 0xc6, 0xfd, 0x80, 0xe6, 0x65, 0x10, 0x95, 0x79, 0x27, 0xc7, 0x8a, 0x2a, 0xa0, 0x2e, 0xce, 0xf6, 0x28, 0x16, 0xd0, 0x35, 0x6b, 0x49, 0xc3, }; static const unsigned char ecdsa_secp224r1_sha256_3140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3140_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3140 = { .name = "ecdsa_secp224r1_sha256_3140", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3140_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3140_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3140_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 139 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3141 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3141_pubkey[] = { 0x83, 0xa5, 0x9f, 0xc3, 0xdf, 0x29, 0x5e, 0x84, 0xc2, 0x90, 0xb3, 0x2d, 0x0b, 0x55, 0x0a, 0x06, 0xf9, 0x94, 0x56, 0xfc, 0x22, 0x98, 0xe4, 0xa6, 0x8c, 0x4f, 0x2b, 0xff, 0x1b, 0x34, 0xf4, 0x83, 0xdb, 0x30, 0xdb, 0x3a, 0x51, 0xd8, 0x28, 0x87, 0x32, 0xc1, 0x07, 0xd8, 0xb1, 0xa8, 0x58, 0xcd, 0x54, 0xc3, 0x93, 0x6e, 0x1b, 0x5c, 0x11, 0xa4, }; static const unsigned char ecdsa_secp224r1_sha256_3141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3141_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3141 = { .name = "ecdsa_secp224r1_sha256_3141", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3141_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3141_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3141_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 140 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3142 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3142_pubkey[] = { 0x58, 0xba, 0xda, 0x57, 0x8a, 0x20, 0x5d, 0x6e, 0x17, 0x07, 0x22, 0xc8, 0xed, 0x6c, 0x77, 0x15, 0x01, 0x1f, 0xe3, 0x3d, 0x7e, 0xba, 0x86, 0x9e, 0xd1, 0xd4, 0x48, 0xa7, 0x5b, 0xe4, 0x73, 0x0c, 0x1d, 0x2d, 0x2e, 0xf8, 0x81, 0xe0, 0x2f, 0x02, 0x8a, 0x24, 0x1b, 0x7d, 0x7d, 0x3b, 0x0d, 0x0b, 0x4a, 0x9c, 0x05, 0x65, 0xfc, 0xb4, 0x99, 0x77, }; static const unsigned char ecdsa_secp224r1_sha256_3142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3142_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3142 = { .name = "ecdsa_secp224r1_sha256_3142", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3142_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3142_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3142_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 141 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3143 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3143_pubkey[] = { 0x7f, 0xcc, 0x79, 0x9b, 0x91, 0x9f, 0xe9, 0x78, 0x9c, 0xe0, 0x1d, 0xd9, 0x20, 0x27, 0x31, 0xcb, 0x7d, 0x81, 0x51, 0x58, 0xbc, 0x6c, 0xb8, 0x46, 0x87, 0x60, 0x24, 0x7c, 0x0f, 0x9d, 0x29, 0x57, 0xe0, 0xdd, 0x5e, 0x4c, 0x40, 0x12, 0x4b, 0xd5, 0xe0, 0xdd, 0x1b, 0xe4, 0x1c, 0x03, 0x8f, 0xce, 0x2c, 0xd1, 0xdc, 0x81, 0x4e, 0x0a, 0xf3, 0x7d, }; static const unsigned char ecdsa_secp224r1_sha256_3143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3143_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x93, 0xc8, 0xc6, 0x51, 0x65, 0x34, 0x30, 0xcb, 0x4f, 0x16, 0x75, 0xfc, 0x86, 0xb5, 0xe8, 0x2c, 0xa0, 0x4f, 0xf2, 0xab, 0x15, 0x01, 0x67, 0x44, 0x76, 0xaa, 0xc1, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3143 = { .name = "ecdsa_secp224r1_sha256_3143", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3143_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3143_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3143_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 142 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3144 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3144_pubkey[] = { 0x3d, 0xdd, 0x68, 0xf6, 0x9d, 0x0b, 0xfd, 0x47, 0xad, 0x19, 0x37, 0x0f, 0xa3, 0xdc, 0x72, 0xeb, 0x25, 0x82, 0x68, 0xc2, 0xb5, 0xf3, 0x76, 0x88, 0x52, 0x15, 0x16, 0x74, 0xfb, 0xe0, 0xe1, 0x55, 0xd9, 0x4d, 0x23, 0x73, 0xa0, 0x1a, 0x5e, 0x70, 0xf1, 0xa1, 0x05, 0x25, 0x9e, 0x7b, 0x8b, 0x1d, 0x2f, 0xdf, 0x4d, 0xba, 0x3c, 0xf4, 0xc7, 0x80, }; static const unsigned char ecdsa_secp224r1_sha256_3144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3144_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9d, 0xf5, 0x0a, 0xcc, 0x33, 0xb3, 0x62, 0x5a, 0x2d, 0x59, 0x40, 0xdd, 0x13, 0xdb, 0xb9, 0x7d, 0x1f, 0x7d, 0xd5, 0x6a, 0xff, 0xf8, 0xb7, 0xde, 0x75, 0x45, 0x12, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3144 = { .name = "ecdsa_secp224r1_sha256_3144", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3144_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3144_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3144_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 143 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3145 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3145_pubkey[] = { 0x1c, 0xb1, 0xf5, 0x64, 0xc2, 0x9e, 0xbf, 0x60, 0xa3, 0x42, 0xb3, 0xbc, 0x33, 0xc8, 0x94, 0x5c, 0xb2, 0x79, 0xc6, 0xc1, 0xa0, 0x12, 0x25, 0x5c, 0x87, 0x4e, 0x1c, 0x37, 0xb7, 0x51, 0x91, 0xab, 0x3b, 0x2b, 0xb7, 0x30, 0x91, 0x4e, 0xbf, 0xa1, 0x40, 0x80, 0x41, 0x09, 0x70, 0xb7, 0x1e, 0xaf, 0x4f, 0xe0, 0x1e, 0x2d, 0x48, 0xbe, 0x98, 0x91, }; static const unsigned char ecdsa_secp224r1_sha256_3145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3145_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdc, 0xe8, 0xc2, 0x23, 0xf2, 0x35, 0x69, 0x9d, 0x1f, 0x5d, 0x2d, 0xcd, 0xe4, 0x80, 0x9d, 0x01, 0x33, 0x90, 0xb5, 0x91, 0x29, 0xf7, 0x83, 0x23, 0x95, 0x25, 0xc0, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3145 = { .name = "ecdsa_secp224r1_sha256_3145", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3145_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3145_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3145_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 144 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3146 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3146_pubkey[] = { 0x44, 0xe3, 0x09, 0xeb, 0x68, 0x6e, 0x7a, 0xf7, 0xf1, 0xe2, 0xcc, 0x17, 0xfd, 0x56, 0x54, 0x2b, 0x38, 0x91, 0x0b, 0x3b, 0x79, 0x08, 0xea, 0x54, 0xfb, 0x03, 0x8d, 0x36, 0x47, 0x7e, 0x82, 0x9d, 0x4c, 0x83, 0x32, 0xe5, 0xb2, 0x9f, 0x34, 0x4a, 0xd2, 0x7a, 0x21, 0xc1, 0x8d, 0xab, 0x24, 0xa3, 0x1c, 0xe7, 0x98, 0x5b, 0x63, 0xa2, 0x13, 0x04, }; static const unsigned char ecdsa_secp224r1_sha256_3146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3146_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x07, 0x4a, 0xae, 0x94, 0x4e, 0xe7, 0xa7, 0xd5, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x66, 0xf8, 0x72, 0xd2, 0x25, 0x0b, 0xa3, 0x01, 0x8a, 0x63, 0xd2, 0xa7, 0xf2, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3146 = { .name = "ecdsa_secp224r1_sha256_3146", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3146_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3146_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3146_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 145 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3147 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3147_pubkey[] = { 0xc7, 0x28, 0x06, 0x45, 0x42, 0xcb, 0x51, 0x42, 0xf5, 0xee, 0xfe, 0x63, 0x81, 0x24, 0xdc, 0xd7, 0xa1, 0xad, 0x0b, 0x35, 0x55, 0x84, 0x2a, 0x47, 0xdd, 0x51, 0x08, 0xe1, 0x10, 0x12, 0x9d, 0xd8, 0x78, 0xeb, 0xd4, 0x73, 0x13, 0x27, 0x6c, 0xec, 0x86, 0xf5, 0x21, 0xea, 0x95, 0x85, 0xcd, 0x10, 0x5b, 0x3d, 0xc4, 0x21, 0x14, 0x19, 0x93, 0xb8, }; static const unsigned char ecdsa_secp224r1_sha256_3147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3147_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaa, 0xe9, 0x44, 0xee, 0x7a, 0x7d, 0x54, 0x4a, 0x5a, 0xd0, 0xbd, 0x06, 0x36, 0xd9, 0x45, 0x5f, 0x4e, 0x83, 0xde, 0x0f, 0x18, 0x6f, 0x89, 0xbc, 0xa5, 0x6b, 0x3c, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3147 = { .name = "ecdsa_secp224r1_sha256_3147", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3147_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3147_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3147_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 146 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3148 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3148_pubkey[] = { 0xc4, 0x6c, 0x1a, 0xd3, 0xd3, 0xd0, 0xdf, 0x8e, 0x9c, 0x0f, 0x52, 0x5c, 0x21, 0xce, 0x8d, 0x81, 0xef, 0x9d, 0x66, 0x29, 0x7f, 0x44, 0x2d, 0x63, 0x09, 0x96, 0x67, 0x22, 0x0c, 0xfa, 0x22, 0x53, 0xaa, 0x31, 0xa9, 0x8d, 0x89, 0x66, 0xb8, 0x59, 0x69, 0xbf, 0x9c, 0x81, 0x9c, 0x01, 0x92, 0x92, 0xef, 0x6a, 0x53, 0xac, 0x1d, 0xb2, 0xa1, 0x08, }; static const unsigned char ecdsa_secp224r1_sha256_3148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3148_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xd2, 0x89, 0xdc, 0xf4, 0xfa, 0xa8, 0x94, 0xb5, 0xa1, 0x7a, 0x0c, 0x6d, 0xb3, 0x74, 0x1b, 0xbc, 0x4e, 0xcb, 0xe0, 0x1d, 0x01, 0xea, 0x33, 0xee, 0x7a, 0x4e, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3148 = { .name = "ecdsa_secp224r1_sha256_3148", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3148_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3148_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3148_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 147 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3149 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3149_pubkey[] = { 0xb7, 0xb2, 0xe4, 0x8c, 0x1e, 0x60, 0xe2, 0x09, 0x25, 0xf4, 0xd9, 0xb6, 0xbe, 0x60, 0x0d, 0xd8, 0x37, 0x86, 0xa9, 0x36, 0xc9, 0xbf, 0xab, 0x00, 0x63, 0x9c, 0x33, 0xca, 0xa9, 0x67, 0xcb, 0xc6, 0x50, 0x70, 0x73, 0x9a, 0x33, 0x79, 0xda, 0x80, 0xd5, 0x48, 0x43, 0xa1, 0x8d, 0x9c, 0x11, 0xa2, 0x9a, 0x32, 0x23, 0x4a, 0x0b, 0x30, 0x3c, 0x12, }; static const unsigned char ecdsa_secp224r1_sha256_3149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3149_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4e, 0xe7, 0xa7, 0xd5, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x56, 0x1c, 0xe0, 0x4f, 0xaa, 0xf1, 0x31, 0x2b, 0xba, 0x3a, 0x15, 0x60, 0x1e, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3149 = { .name = "ecdsa_secp224r1_sha256_3149", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3149_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3149_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3149_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 148 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3150 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3150_pubkey[] = { 0xf4, 0xa3, 0xd4, 0x59, 0x88, 0x75, 0xaf, 0x7f, 0x27, 0x41, 0xbb, 0xd6, 0x7b, 0x17, 0x33, 0xb6, 0x54, 0x1b, 0xc5, 0x32, 0x5b, 0x3b, 0xcb, 0x4d, 0x32, 0x67, 0xc2, 0x7e, 0xc3, 0x0b, 0xf3, 0x22, 0xf5, 0x8a, 0x45, 0xc6, 0xc2, 0xaa, 0x2c, 0xed, 0x55, 0xf1, 0x75, 0xd1, 0xcb, 0xf7, 0x2a, 0x7c, 0x5b, 0xfc, 0x46, 0x4d, 0x74, 0xf6, 0x66, 0xc0, }; static const unsigned char ecdsa_secp224r1_sha256_3150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3150_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x36, 0x1b, 0x9c, 0xd7, 0x4d, 0x65, 0xe7, 0x9a, 0x58, 0x74, 0xc5, 0x01, 0xbc, 0xa4, 0x97, 0x3b, 0x20, 0x34, 0x7e, 0xc9, 0x7f, 0x6d, 0xe1, 0x00, 0x72, 0xd8, 0xb4, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3150 = { .name = "ecdsa_secp224r1_sha256_3150", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3150_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3150_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3150_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 149 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3151 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3151_pubkey[] = { 0x56, 0xd1, 0xe5, 0xc1, 0xd6, 0x64, 0xf6, 0xce, 0x2f, 0xc1, 0xfc, 0xb9, 0x37, 0xa7, 0xce, 0x23, 0x1a, 0x29, 0x48, 0x6a, 0xbf, 0x36, 0xc7, 0x3f, 0x77, 0xa2, 0xbd, 0x11, 0x6c, 0xb2, 0x82, 0xc9, 0xd7, 0xc6, 0xfc, 0x05, 0xf3, 0x99, 0xc1, 0x83, 0xe8, 0x80, 0xea, 0x36, 0x2e, 0xdf, 0x04, 0x3c, 0xd2, 0x8f, 0xfa, 0xc9, 0xf9, 0x4f, 0x21, 0x41, }; static const unsigned char ecdsa_secp224r1_sha256_3151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3151_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x37, 0x39, 0xae, 0x9a, 0xcb, 0xcf, 0x34, 0xb0, 0xe9, 0x8a, 0x03, 0x79, 0x49, 0x2e, 0x76, 0x40, 0x68, 0xfd, 0x92, 0xfe, 0xdb, 0xc2, 0x00, 0xe5, 0xb1, 0x68, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3151 = { .name = "ecdsa_secp224r1_sha256_3151", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3151_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3151_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3151_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 150 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3152 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3152_pubkey[] = { 0x30, 0xbc, 0xe8, 0xc6, 0xb7, 0xf1, 0xbb, 0xba, 0x04, 0x0b, 0x8d, 0x12, 0x1d, 0x85, 0xd5, 0x51, 0x67, 0xac, 0x99, 0xb2, 0xe2, 0xcf, 0x1c, 0xfa, 0xc8, 0xb0, 0x18, 0xb5, 0xf1, 0xc3, 0x84, 0xc3, 0x5b, 0xe0, 0xae, 0x30, 0x9a, 0x5c, 0xb5, 0x5a, 0xba, 0x98, 0x23, 0x43, 0xd2, 0x12, 0x5f, 0x2d, 0x4a, 0x55, 0x9d, 0x8c, 0x54, 0x53, 0x59, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3152_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x52, 0xd6, 0x85, 0xe8, 0x31, 0xb6, 0xcf, 0x09, 0x5e, 0x4f, 0x05, 0x35, 0xed, 0xc5, 0xb1, 0x60, 0x9d, 0x7c, 0x5c, 0x7e, 0x49, 0xa3, 0x01, 0x58, 0x8a, 0x1d, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3152 = { .name = "ecdsa_secp224r1_sha256_3152", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3152_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3152_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3152_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 151 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3153 for ECDSA, tcId is 152 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3153_pubkey[] = { 0xe8, 0x7e, 0x53, 0x8a, 0x97, 0x8c, 0xf1, 0x87, 0x90, 0x8b, 0xeb, 0x27, 0xa4, 0xa2, 0x47, 0xd4, 0x96, 0xa8, 0x42, 0x1d, 0xab, 0x1f, 0xe7, 0x9f, 0x87, 0x44, 0xd2, 0xb5, 0x53, 0x9b, 0x9f, 0x8f, 0xe8, 0xbd, 0xdc, 0xf7, 0xc9, 0x7c, 0x44, 0xc5, 0x5a, 0x4f, 0xc2, 0x2f, 0x4d, 0x78, 0xf6, 0xa9, 0x61, 0x44, 0x7a, 0x5b, 0x61, 0x3b, 0x5c, 0x49, }; static const unsigned char ecdsa_secp224r1_sha256_3153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3153_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xee, 0x74, 0x61, 0x11, 0xf9, 0x1a, 0xb4, 0xce, 0x8f, 0xae, 0x96, 0xe6, 0xf2, 0x3f, 0xd9, 0xd2, 0x0a, 0x24, 0xd2, 0xe7, 0x9e, 0xea, 0x56, 0x34, 0x78, 0xc0, 0xf5, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3153 = { .name = "ecdsa_secp224r1_sha256_3153", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3153_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3153_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3153_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 152 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3154 for ECDSA, tcId is 153 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3154_pubkey[] = { 0x11, 0x3a, 0x2c, 0xc5, 0x7c, 0x8e, 0xe7, 0xde, 0x11, 0xbc, 0x45, 0xe1, 0x45, 0x46, 0xc7, 0x2a, 0x29, 0x72, 0x5b, 0x9a, 0x72, 0x18, 0x11, 0x4a, 0xc3, 0x1f, 0x02, 0x81, 0x6c, 0x76, 0x5b, 0x9a, 0x46, 0xb0, 0x21, 0x53, 0x12, 0xa3, 0x29, 0x2f, 0x59, 0x79, 0xc9, 0x8d, 0x37, 0xb3, 0x58, 0x83, 0xba, 0xa1, 0x56, 0x28, 0x1b, 0x1b, 0xae, 0x8c, }; static const unsigned char ecdsa_secp224r1_sha256_3154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3154_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3154 = { .name = "ecdsa_secp224r1_sha256_3154", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3154_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3154_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3154_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 153 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3155 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3155_pubkey[] = { 0x23, 0xdd, 0x9c, 0x3f, 0x1a, 0x4b, 0x47, 0x8b, 0x01, 0xfa, 0x2c, 0x5e, 0x99, 0x7d, 0x04, 0x82, 0x07, 0x3b, 0x32, 0x91, 0x8d, 0xe4, 0x4b, 0xe5, 0x83, 0xdc, 0xf7, 0x4a, 0xd6, 0x61, 0xa5, 0xed, 0x57, 0x9a, 0x2f, 0x09, 0xd2, 0xff, 0x56, 0xd6, 0xb8, 0x0f, 0x26, 0x56, 0x8d, 0x93, 0xa2, 0x37, 0xca, 0x64, 0x44, 0xb0, 0xca, 0xdc, 0x79, 0x51, }; static const unsigned char ecdsa_secp224r1_sha256_3155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3155_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3155 = { .name = "ecdsa_secp224r1_sha256_3155", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3155_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3155_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3155_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 154 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3156 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3156_pubkey[] = { 0xbb, 0xce, 0x4b, 0x17, 0xd4, 0x5d, 0x24, 0xa1, 0xc8, 0x0b, 0xc8, 0xec, 0xa9, 0x8c, 0x35, 0x9d, 0x5e, 0x1e, 0x45, 0x80, 0x58, 0xa0, 0x0b, 0x95, 0x06, 0x43, 0x25, 0x6d, 0xfe, 0x09, 0xe0, 0x92, 0x31, 0x8e, 0x39, 0x30, 0x3d, 0xca, 0x03, 0x68, 0x8e, 0x4e, 0xcf, 0x30, 0x03, 0x00, 0x78, 0x43, 0x12, 0xd6, 0x17, 0xe5, 0x08, 0x8c, 0x58, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha256_3156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3156_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3156 = { .name = "ecdsa_secp224r1_sha256_3156", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3156_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3156_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3156_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 155 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3157 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3157_pubkey[] = { 0x03, 0x5f, 0x58, 0x44, 0x6c, 0x1b, 0xdb, 0xea, 0xa5, 0x66, 0x60, 0xa8, 0x97, 0xeb, 0xf9, 0x65, 0xf2, 0xd1, 0x88, 0x20, 0xc7, 0xcd, 0x06, 0x30, 0xf0, 0x4a, 0x49, 0x53, 0x47, 0xbd, 0xfa, 0xea, 0x60, 0x09, 0x1f, 0x40, 0x5e, 0x09, 0x92, 0x9c, 0xb2, 0xc0, 0xe2, 0xf6, 0xee, 0xd5, 0x3e, 0x08, 0x71, 0xb7, 0xfe, 0x0c, 0xd5, 0xa1, 0x5d, 0x85, }; static const unsigned char ecdsa_secp224r1_sha256_3157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3157_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3157 = { .name = "ecdsa_secp224r1_sha256_3157", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3157_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3157_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3157_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 156 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3158 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3158_pubkey[] = { 0x91, 0x1c, 0x00, 0x33, 0xea, 0xc4, 0x63, 0x32, 0x69, 0x1c, 0xb7, 0x92, 0x0c, 0x49, 0x50, 0xee, 0xd5, 0x73, 0x54, 0x76, 0x1e, 0x10, 0x81, 0xa1, 0xea, 0x9f, 0x12, 0x79, 0x50, 0x8e, 0xbf, 0x7c, 0xfd, 0x3e, 0xab, 0x5d, 0xab, 0xde, 0xe1, 0xbe, 0x14, 0xce, 0x82, 0x96, 0xb1, 0xfc, 0x20, 0xac, 0xfa, 0xac, 0x16, 0xf7, 0x82, 0x4c, 0x60, 0x02, }; static const unsigned char ecdsa_secp224r1_sha256_3158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3158_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3158 = { .name = "ecdsa_secp224r1_sha256_3158", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3158_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3158_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3158_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 157 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3159 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3159_pubkey[] = { 0x62, 0xb2, 0xab, 0xb7, 0x0b, 0xb9, 0xc7, 0xef, 0xdf, 0xb5, 0x71, 0x81, 0xf4, 0x33, 0xb6, 0x47, 0x51, 0xf1, 0x08, 0x13, 0x0d, 0xce, 0x18, 0x0d, 0x69, 0x92, 0xe7, 0xd3, 0x12, 0x4b, 0x3a, 0xa8, 0xa5, 0x3e, 0x5e, 0xed, 0xf7, 0x2a, 0xa6, 0x7e, 0x6e, 0xdc, 0xc7, 0x1f, 0x19, 0xe3, 0x6e, 0x6a, 0xd1, 0xd0, 0x99, 0xa5, 0x9f, 0xfd, 0x95, 0x55, }; static const unsigned char ecdsa_secp224r1_sha256_3159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3159_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3159 = { .name = "ecdsa_secp224r1_sha256_3159", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3159_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3159_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3159_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 158 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3160 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3160_pubkey[] = { 0x0f, 0x75, 0x93, 0x30, 0xe7, 0x99, 0x27, 0x52, 0xaa, 0xe6, 0xa8, 0x5f, 0x7b, 0xb0, 0x59, 0x97, 0x84, 0xbe, 0xa5, 0x3e, 0x28, 0x8f, 0xf7, 0xee, 0x8d, 0x53, 0xd5, 0xe6, 0xde, 0xfe, 0x61, 0x73, 0x62, 0x38, 0x0e, 0x92, 0xf9, 0xa2, 0x3c, 0x4f, 0xdc, 0xc3, 0x4e, 0x09, 0x71, 0x3a, 0xab, 0x9c, 0xc4, 0x41, 0x19, 0x41, 0x8f, 0x6f, 0x2f, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha256_3160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3160_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3160 = { .name = "ecdsa_secp224r1_sha256_3160", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3160_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3160_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3160_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 159 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3161 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3161_pubkey[] = { 0x8f, 0x2e, 0xda, 0x42, 0x74, 0x2a, 0xb3, 0x1f, 0x5d, 0x4c, 0xf6, 0x66, 0x89, 0x2d, 0x1d, 0x62, 0x3e, 0xfd, 0x3b, 0x26, 0xf7, 0xdf, 0x9a, 0xa7, 0x02, 0x96, 0xe8, 0x0d, 0x3b, 0xea, 0xf2, 0x35, 0xcf, 0xea, 0x41, 0xfa, 0xdb, 0x98, 0xc5, 0x33, 0xa8, 0xfd, 0xeb, 0x58, 0x41, 0xd6, 0x9e, 0xe6, 0x5f, 0x6e, 0x71, 0x91, 0x47, 0x11, 0xf1, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3161_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3161 = { .name = "ecdsa_secp224r1_sha256_3161", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3161_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3161_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3161_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 160 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3162 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3162_pubkey[] = { 0x2b, 0xcf, 0x43, 0x71, 0xb3, 0x19, 0xa6, 0x91, 0xed, 0x0e, 0x2e, 0x0c, 0x4a, 0x55, 0xa8, 0xa9, 0xb9, 0x87, 0xde, 0xc8, 0x6b, 0x86, 0x36, 0x21, 0xe9, 0x7b, 0x9c, 0x09, 0x5b, 0x86, 0x60, 0xa7, 0x4c, 0xc9, 0x64, 0xa6, 0xaf, 0x03, 0x11, 0xed, 0xc6, 0xb1, 0xcd, 0x98, 0x0f, 0x9c, 0x7b, 0xf3, 0xa6, 0xc9, 0xb7, 0xf9, 0x13, 0x2a, 0x0b, 0x2f, }; static const unsigned char ecdsa_secp224r1_sha256_3162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3162_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3162 = { .name = "ecdsa_secp224r1_sha256_3162", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3162_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3162_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3162_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 161 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3163 for ECDSA, tcId is 162 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3163_pubkey[] = { 0xa6, 0xf2, 0x52, 0x56, 0x8f, 0x6f, 0xbd, 0x1a, 0xe0, 0x45, 0xe6, 0x02, 0x34, 0x43, 0x59, 0xc0, 0xc2, 0x16, 0x91, 0x17, 0x23, 0x74, 0x8f, 0x9a, 0x3e, 0x7f, 0xad, 0xec, 0x3b, 0x76, 0xef, 0xc7, 0x5b, 0xa0, 0x30, 0xbf, 0xe7, 0xde, 0x2d, 0xed, 0x68, 0x69, 0x91, 0xe6, 0x18, 0x3d, 0x40, 0x24, 0x1a, 0x05, 0xb4, 0x79, 0x69, 0x3c, 0x70, 0x15, }; static const unsigned char ecdsa_secp224r1_sha256_3163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3163_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3163 = { .name = "ecdsa_secp224r1_sha256_3163", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3163_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3163_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3163_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 162 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3164 for ECDSA, tcId is 163 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3164_pubkey[] = { 0xa7, 0x4c, 0x1c, 0x3a, 0x31, 0xc7, 0xd4, 0x93, 0xab, 0x2c, 0x0a, 0xf8, 0x9c, 0xf5, 0xe6, 0x88, 0x62, 0x1c, 0xa9, 0x46, 0x6d, 0x2b, 0xa1, 0xd8, 0x76, 0x1c, 0x3f, 0xe8, 0x2b, 0xa0, 0xd0, 0x8f, 0x4c, 0x9f, 0x76, 0x85, 0x6c, 0x2b, 0x71, 0x38, 0xc8, 0xf1, 0xe7, 0x80, 0xb6, 0x95, 0x99, 0x92, 0xb1, 0x6c, 0xcd, 0xfd, 0x92, 0x5f, 0x4b, 0x3a, }; static const unsigned char ecdsa_secp224r1_sha256_3164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3164_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3164 = { .name = "ecdsa_secp224r1_sha256_3164", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3164_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3164_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3164_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 163 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3165 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3165_pubkey[] = { 0x03, 0x4e, 0xa7, 0x27, 0x98, 0x25, 0x7f, 0x33, 0xf2, 0x4f, 0x64, 0xc4, 0x94, 0x38, 0xfc, 0x43, 0xe8, 0xf6, 0x7d, 0xdc, 0x71, 0x70, 0xfd, 0x12, 0x7e, 0x2c, 0x43, 0xf2, 0x80, 0x56, 0x2a, 0xcc, 0x9b, 0x49, 0xf2, 0xd7, 0xfc, 0xc8, 0x94, 0x21, 0xd2, 0xa5, 0xdb, 0x2e, 0xa8, 0xdd, 0x03, 0x61, 0xfb, 0x48, 0xd8, 0x97, 0xd4, 0x61, 0x26, 0x27, }; static const unsigned char ecdsa_secp224r1_sha256_3165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3165_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x3f, 0x55, 0x2f, 0x1c, 0x2b, 0x01, 0x65, 0x1e, 0xdf, 0x59, 0x02, 0x65, 0x0f, 0xe9, 0xab, 0x04, 0x6f, 0x71, 0x99, 0x9a, 0xc9, 0x28, 0xed, 0xc0, 0x08, 0x7b, 0xdb, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3165 = { .name = "ecdsa_secp224r1_sha256_3165", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3165_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3165_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3165_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 164 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3166 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3166_pubkey[] = { 0x03, 0x4e, 0xa7, 0x27, 0x98, 0x25, 0x7f, 0x33, 0xf2, 0x4f, 0x64, 0xc4, 0x94, 0x38, 0xfc, 0x43, 0xe8, 0xf6, 0x7d, 0xdc, 0x71, 0x70, 0xfd, 0x12, 0x7e, 0x2c, 0x43, 0xf2, 0x7f, 0xa9, 0xd5, 0x33, 0x64, 0xb6, 0x0d, 0x28, 0x03, 0x37, 0x6b, 0xde, 0x2d, 0x5a, 0x24, 0xd0, 0x57, 0x22, 0xfc, 0x9e, 0x04, 0xb7, 0x27, 0x68, 0x2b, 0x9e, 0xd9, 0xda, }; static const unsigned char ecdsa_secp224r1_sha256_3166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3166_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x3f, 0x55, 0x2f, 0x1c, 0x2b, 0x01, 0x65, 0x1e, 0xdf, 0x59, 0x02, 0x65, 0x0f, 0xe9, 0xab, 0x04, 0x6f, 0x71, 0x99, 0x9a, 0xc9, 0x28, 0xed, 0xc0, 0x08, 0x7b, 0xdb, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3166 = { .name = "ecdsa_secp224r1_sha256_3166", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3166_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3166_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3166_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 165 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3167 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3167_pubkey[] = { 0x36, 0x72, 0xba, 0x97, 0x18, 0xe6, 0x0d, 0x00, 0xea, 0xb4, 0x29, 0x5c, 0x81, 0x9e, 0xa3, 0x66, 0xa7, 0x78, 0xdd, 0x6f, 0xd6, 0x21, 0xfa, 0x96, 0x65, 0x25, 0x9c, 0xb6, 0x7a, 0xe5, 0xe8, 0x47, 0xee, 0xae, 0xa6, 0x74, 0xbe, 0xeb, 0x63, 0x63, 0x79, 0xe9, 0x68, 0xf7, 0x92, 0x65, 0x50, 0x2e, 0x41, 0x4a, 0x1d, 0x44, 0x4f, 0x04, 0xae, 0x79, }; static const unsigned char ecdsa_secp224r1_sha256_3167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3167_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3167 = { .name = "ecdsa_secp224r1_sha256_3167", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3167_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3167_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3167_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 166 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3168 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3168_pubkey[] = { 0x33, 0xee, 0xef, 0xbf, 0xc7, 0x72, 0x29, 0x13, 0x6e, 0x56, 0xb5, 0x75, 0x14, 0x48, 0x63, 0xed, 0x90, 0xb4, 0xc0, 0xf8, 0xa9, 0xe3, 0x15, 0x81, 0x6d, 0x6d, 0xe6, 0x48, 0x05, 0x17, 0x49, 0xdd, 0x11, 0x48, 0x0c, 0x14, 0x1f, 0xb5, 0xa1, 0x94, 0x63, 0x13, 0x16, 0x3c, 0x01, 0x41, 0x26, 0x5b, 0x68, 0xa2, 0x62, 0x16, 0xbc, 0xb9, 0x93, 0x6a, }; static const unsigned char ecdsa_secp224r1_sha256_3168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3168_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3168 = { .name = "ecdsa_secp224r1_sha256_3168", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3168_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3168_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3168_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 167 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3169 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3169_pubkey[] = { 0xbd, 0xa0, 0x3b, 0x24, 0xb6, 0x22, 0x43, 0xc6, 0x1e, 0x28, 0x8b, 0x6e, 0xa1, 0xe9, 0x9a, 0x28, 0x86, 0xf7, 0x00, 0x94, 0x4e, 0xb1, 0xb8, 0xf0, 0x46, 0x6c, 0xff, 0xd6, 0x1c, 0x71, 0x2a, 0x3a, 0xaa, 0xce, 0x69, 0x33, 0x19, 0x89, 0xb7, 0x07, 0xe6, 0x9e, 0x8d, 0xe3, 0x9d, 0x7c, 0xd1, 0xae, 0xb6, 0x5d, 0x97, 0xad, 0x18, 0x00, 0xbf, 0x7f, }; static const unsigned char ecdsa_secp224r1_sha256_3169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3169_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3169 = { .name = "ecdsa_secp224r1_sha256_3169", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3169_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3169_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3169_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 168 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3170 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3170_pubkey[] = { 0x7a, 0xbb, 0xa0, 0xcb, 0xff, 0x13, 0x4d, 0xdc, 0xf5, 0x4d, 0x04, 0x84, 0x6f, 0x95, 0x4b, 0x88, 0x2c, 0xa9, 0xfa, 0xef, 0xdf, 0xe8, 0x18, 0x89, 0x8b, 0xfb, 0x37, 0x8b, 0x79, 0x2f, 0x10, 0xb5, 0x79, 0x70, 0xae, 0x57, 0xbb, 0x4f, 0xb0, 0x1c, 0x08, 0x88, 0x68, 0x48, 0x85, 0x5a, 0xeb, 0x19, 0x84, 0xd3, 0xd6, 0xfc, 0xb2, 0xb4, 0x12, 0xdf, }; static const unsigned char ecdsa_secp224r1_sha256_3170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3170_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3170 = { .name = "ecdsa_secp224r1_sha256_3170", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3170_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3170_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3170_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 169 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3171 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3171_pubkey[] = { 0xf6, 0x8d, 0x99, 0xe2, 0x86, 0x53, 0xb9, 0xba, 0x3e, 0x7c, 0xed, 0xb3, 0xb7, 0x81, 0x65, 0xf5, 0xa5, 0x4f, 0xbe, 0x90, 0xd4, 0xb9, 0xf8, 0x84, 0x97, 0x97, 0x7e, 0x16, 0x23, 0x4d, 0xa3, 0xea, 0xa0, 0x17, 0x8a, 0x51, 0xb5, 0xb0, 0xc2, 0x08, 0xef, 0x08, 0x18, 0xdf, 0x6f, 0x65, 0x78, 0x79, 0x3c, 0x1a, 0xf1, 0x78, 0x70, 0x26, 0xb8, 0xda, }; static const unsigned char ecdsa_secp224r1_sha256_3171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3171_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3171 = { .name = "ecdsa_secp224r1_sha256_3171", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3171_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3171_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3171_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 170 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3172 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3172_pubkey[] = { 0x06, 0x5d, 0x9e, 0xf1, 0x33, 0xce, 0x81, 0xc2, 0xd6, 0xb6, 0x6e, 0x92, 0x83, 0x60, 0xf9, 0x52, 0x7f, 0x8f, 0x36, 0xb5, 0xba, 0xdd, 0x35, 0xb5, 0xf1, 0x09, 0x34, 0x27, 0x20, 0x04, 0x85, 0x27, 0x55, 0xf7, 0x74, 0x40, 0xa0, 0xb0, 0x8b, 0x9f, 0x16, 0x54, 0x89, 0xc0, 0x69, 0x6e, 0x8b, 0x49, 0x81, 0xd6, 0xd0, 0x4a, 0x28, 0x5b, 0x0f, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha256_3172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3172_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3172 = { .name = "ecdsa_secp224r1_sha256_3172", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3172_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3172_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3172_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 171 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3173 for ECDSA, tcId is 172 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3173_pubkey[] = { 0xd6, 0xce, 0xa0, 0x94, 0x72, 0xed, 0xe5, 0x74, 0xce, 0x1e, 0x05, 0x46, 0xc9, 0xac, 0xd0, 0xe1, 0xcd, 0x8c, 0xba, 0x9b, 0x12, 0x1d, 0xf2, 0x9e, 0x89, 0xd5, 0x09, 0x2e, 0x83, 0x90, 0x4e, 0xbf, 0xb9, 0x02, 0xea, 0x61, 0xc9, 0x87, 0xdc, 0x05, 0x08, 0xe0, 0xc9, 0xa7, 0xe5, 0x63, 0xe2, 0x60, 0x9f, 0xea, 0xf7, 0x91, 0x40, 0xab, 0x91, 0xd6, }; static const unsigned char ecdsa_secp224r1_sha256_3173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3173_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3173 = { .name = "ecdsa_secp224r1_sha256_3173", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3173_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3173_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3173_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 172 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3174 for ECDSA, tcId is 173 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3174_pubkey[] = { 0xc5, 0x20, 0xb1, 0x80, 0x03, 0xb3, 0x56, 0x09, 0x41, 0x47, 0xee, 0x2f, 0x9d, 0xf1, 0x17, 0x85, 0x72, 0xbe, 0xd8, 0x37, 0xbd, 0x89, 0x44, 0x3b, 0x25, 0xeb, 0xce, 0xb8, 0x0e, 0x2e, 0x93, 0xa9, 0x98, 0xfb, 0xba, 0xbe, 0x82, 0x19, 0x2e, 0xa4, 0xc8, 0x56, 0x51, 0xcf, 0x09, 0xa9, 0x5a, 0xb0, 0xdc, 0x2e, 0x3d, 0x97, 0x5e, 0xe7, 0xbe, 0x98, }; static const unsigned char ecdsa_secp224r1_sha256_3174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3174_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3174 = { .name = "ecdsa_secp224r1_sha256_3174", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3174_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3174_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3174_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 173 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3175 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3175_pubkey[] = { 0x9d, 0xd0, 0xb9, 0x9b, 0xb7, 0xa8, 0x30, 0xbc, 0xc7, 0xd5, 0x5a, 0xba, 0xc4, 0x29, 0x12, 0xd5, 0x25, 0xb0, 0x63, 0xc5, 0x0c, 0xf3, 0x77, 0xca, 0x57, 0x71, 0xa2, 0x6c, 0xa1, 0x41, 0xfc, 0xcf, 0x07, 0x93, 0xc2, 0xba, 0x24, 0x69, 0xa9, 0x46, 0xc2, 0xd4, 0xed, 0x26, 0x34, 0x40, 0x52, 0xc6, 0x3a, 0x6d, 0x7e, 0x77, 0x97, 0xce, 0x96, 0xc3, }; static const unsigned char ecdsa_secp224r1_sha256_3175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3175_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3175 = { .name = "ecdsa_secp224r1_sha256_3175", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3175_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3175_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3175_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 174 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3176 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3176_pubkey[] = { 0x3d, 0xab, 0x9f, 0x1b, 0x19, 0xe7, 0x15, 0xd1, 0x74, 0xa7, 0x36, 0x09, 0x20, 0x37, 0x5d, 0x56, 0x9a, 0x18, 0x1f, 0x05, 0x5e, 0x66, 0xf0, 0x13, 0x91, 0x87, 0x1b, 0x6f, 0x47, 0xa6, 0xd8, 0x7c, 0x23, 0xa5, 0xb6, 0xa1, 0xe3, 0xd0, 0xa9, 0x72, 0x13, 0x02, 0xcc, 0x02, 0xcc, 0xe3, 0x5f, 0x35, 0xde, 0xa0, 0x8e, 0x22, 0x61, 0x9b, 0xe5, 0x21, }; static const unsigned char ecdsa_secp224r1_sha256_3176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3176_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3176 = { .name = "ecdsa_secp224r1_sha256_3176", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3176_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3176_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3176_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 175 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3177 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3177_pubkey[] = { 0x56, 0xdd, 0xe1, 0xba, 0x58, 0xea, 0x31, 0x05, 0x3b, 0x25, 0x35, 0xc6, 0x66, 0x23, 0x34, 0x4c, 0x24, 0xc7, 0x2d, 0x21, 0x4a, 0xf5, 0xbe, 0x69, 0x82, 0xe8, 0x91, 0x00, 0xe7, 0x71, 0x08, 0x48, 0x06, 0x14, 0x3e, 0x86, 0xf2, 0xb3, 0x1b, 0xda, 0xf6, 0x22, 0x80, 0xf5, 0xb3, 0x11, 0xd0, 0xd2, 0xbd, 0xbb, 0x38, 0x5b, 0x20, 0xfc, 0x6c, 0x87, }; static const unsigned char ecdsa_secp224r1_sha256_3177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3177_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3177 = { .name = "ecdsa_secp224r1_sha256_3177", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3177_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3177_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3177_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 176 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3178 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3178_pubkey[] = { 0x94, 0xef, 0xe1, 0x38, 0x7f, 0xc0, 0x44, 0x7d, 0x7d, 0xbc, 0xb5, 0x37, 0x39, 0xa0, 0xe4, 0xe0, 0xdd, 0xec, 0x18, 0x1d, 0x38, 0x2c, 0xae, 0xa6, 0x45, 0xb1, 0xa6, 0x12, 0x44, 0x14, 0xa6, 0xb1, 0xc7, 0x89, 0x08, 0xd0, 0xfa, 0x20, 0x6f, 0x8f, 0x2d, 0xe9, 0x50, 0xad, 0x4a, 0x14, 0xd1, 0xce, 0x94, 0xd9, 0xcd, 0xdb, 0xe3, 0x2e, 0x46, 0x01, }; static const unsigned char ecdsa_secp224r1_sha256_3178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3178_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3178 = { .name = "ecdsa_secp224r1_sha256_3178", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3178_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3178_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3178_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 177 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3179 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3179_pubkey[] = { 0x62, 0x86, 0x80, 0x3b, 0x95, 0x29, 0x76, 0xee, 0x18, 0x97, 0x01, 0x36, 0x95, 0xd3, 0xef, 0x2c, 0xbb, 0x6f, 0x97, 0x71, 0x42, 0xa0, 0x42, 0xb2, 0x36, 0x57, 0x25, 0x77, 0x72, 0x2a, 0x6c, 0xe9, 0xad, 0x3e, 0x3f, 0xd2, 0x8e, 0x45, 0x18, 0x33, 0x49, 0x6c, 0x63, 0xb8, 0xab, 0x70, 0x53, 0x88, 0x77, 0x21, 0x5f, 0x20, 0x49, 0x42, 0xbf, 0x59, }; static const unsigned char ecdsa_secp224r1_sha256_3179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3179_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3179 = { .name = "ecdsa_secp224r1_sha256_3179", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3179_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3179_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3179_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 178 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3180 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3180_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3180_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3180 = { .name = "ecdsa_secp224r1_sha256_3180", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3180_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3180_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3180_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 179 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3181 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3181_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3181_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3181 = { .name = "ecdsa_secp224r1_sha256_3181", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3181_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3181_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3181_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 180 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3182 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3182_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3182_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3182 = { .name = "ecdsa_secp224r1_sha256_3182", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3182_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3182_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3182_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 181 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3183 for ECDSA, tcId is 182 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3183_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3183_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3183 = { .name = "ecdsa_secp224r1_sha256_3183", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3183_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3183_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3183_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 182 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3184 for ECDSA, tcId is 183 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3184_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3184_sig[] = { 0x03, 0x64, 0xe7, 0xd9, 0x68, 0x32, 0x61, 0x4a, 0x80, 0x21, 0x6e, 0x73, 0x0c, 0x35, 0x35, 0x34, 0xd4, 0xbf, 0xfd, 0x2c, 0x26, 0x64, 0x9c, 0x0b, 0x4b, 0x0e, 0x26, 0x28, 0x8f, 0x40, 0x06, 0x4b, 0x41, 0x2f, 0xe3, 0x8c, 0x5b, 0xa9, 0xcf, 0x66, 0x4e, 0x61, 0x72, 0xed, 0x48, 0xe6, 0xe7, 0x9f, 0x0f, 0xe5, 0xe3, 0x1a, 0x54, 0x98, 0x5d, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3184 = { .name = "ecdsa_secp224r1_sha256_3184", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3184_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha256_3184_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 183 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3185 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3185_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3185_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha256_3185_sig[] = { 0xf4, 0xb6, 0x8d, 0xf6, 0x2b, 0x92, 0x38, 0x36, 0x3c, 0xcc, 0x1b, 0xbe, 0xe0, 0x0d, 0xeb, 0x3f, 0xb2, 0x69, 0x3f, 0x78, 0x94, 0x17, 0x8e, 0x14, 0xee, 0xac, 0x59, 0x6a, 0x7f, 0x51, 0xc9, 0x45, 0x1a, 0xda, 0xcd, 0x2b, 0xcb, 0xc7, 0x21, 0xf7, 0xdf, 0x06, 0x43, 0xd7, 0xcd, 0x18, 0xa6, 0xb5, 0x20, 0x64, 0xb5, 0x07, 0xe1, 0x91, 0x2f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3185 = { .name = "ecdsa_secp224r1_sha256_3185", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3185_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3185_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha256_3185_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 184 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3186 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3186_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3186_sig[] = { 0xb2, 0x97, 0x0c, 0xde, 0xc2, 0x9c, 0x70, 0x29, 0x4a, 0x18, 0xbb, 0xc4, 0x99, 0x85, 0xef, 0xa3, 0x3a, 0xcc, 0x0a, 0xf5, 0x09, 0xc3, 0x26, 0xa3, 0x97, 0x7a, 0x35, 0xe8, 0x0c, 0xea, 0x3e, 0xd8, 0xeb, 0xaa, 0xf6, 0xee, 0x6a, 0xef, 0x60, 0x49, 0xa2, 0x3c, 0xbc, 0x39, 0xf6, 0x1f, 0xcf, 0x8f, 0xc6, 0xbe, 0x4b, 0xab, 0x13, 0x38, 0x55, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3186 = { .name = "ecdsa_secp224r1_sha256_3186", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3186_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3186_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3186_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 185 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3187 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3187_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3187_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3187_sig[] = { 0x7e, 0x7b, 0x0e, 0xb7, 0xda, 0x8c, 0x68, 0xa7, 0x07, 0x2b, 0x11, 0x40, 0x4e, 0xe9, 0x5a, 0x5c, 0x40, 0x7f, 0xbf, 0xe3, 0xd6, 0x96, 0x46, 0x80, 0x2e, 0x28, 0xae, 0x77, 0xd4, 0x09, 0xa2, 0xf6, 0xbb, 0xaa, 0xe5, 0x9b, 0xb6, 0x0f, 0xc0, 0xa0, 0x92, 0xb1, 0x2f, 0xa4, 0xe6, 0x7d, 0xc8, 0xd0, 0x88, 0xcf, 0x19, 0xa8, 0x33, 0x32, 0x2f, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3187 = { .name = "ecdsa_secp224r1_sha256_3187", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3187_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3187_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha256_3187_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 186 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3188 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3188_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3188_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3188_sig[] = { 0x51, 0x9b, 0xf1, 0x85, 0xff, 0x46, 0x35, 0x27, 0x19, 0x61, 0xfa, 0x49, 0x1b, 0xe2, 0x57, 0x23, 0x1d, 0xee, 0xea, 0x9c, 0x53, 0xa6, 0xed, 0xe3, 0xb4, 0xa8, 0x9e, 0xd1, 0x48, 0x6b, 0xda, 0xd4, 0x84, 0xa6, 0xa3, 0x13, 0x4e, 0x14, 0x71, 0xcf, 0x56, 0xa9, 0xdf, 0x0f, 0xac, 0x50, 0xf7, 0x73, 0xb3, 0xe3, 0x7d, 0x6f, 0x32, 0x76, 0x17, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3188 = { .name = "ecdsa_secp224r1_sha256_3188", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3188_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3188_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3188_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 187 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3189 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3189_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3189_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3189_sig[] = { 0x09, 0xfd, 0x64, 0x48, 0x98, 0xb7, 0xcb, 0x5d, 0x01, 0x8b, 0x52, 0x23, 0x4e, 0x7b, 0x4e, 0xf2, 0xb5, 0x47, 0x89, 0xaf, 0xd0, 0xce, 0x9c, 0x43, 0x4e, 0x9e, 0x55, 0x15, 0xf1, 0x93, 0x09, 0x53, 0x21, 0x64, 0xea, 0x20, 0x53, 0xca, 0xe5, 0x5d, 0xf7, 0xbd, 0xcb, 0xab, 0x53, 0x6c, 0x83, 0xea, 0x7b, 0xfe, 0x6f, 0xe1, 0x0d, 0x60, 0xc1, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3189 = { .name = "ecdsa_secp224r1_sha256_3189", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3189_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3189_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3189_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 188 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3190 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3190_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3190_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3190_sig[] = { 0xec, 0x91, 0x9d, 0x4e, 0x28, 0x3c, 0xcf, 0x1f, 0x71, 0xa9, 0xe3, 0xc0, 0xf7, 0x81, 0xa3, 0x67, 0x58, 0xd3, 0xf3, 0x8b, 0x1b, 0x78, 0xa8, 0x7a, 0x74, 0x28, 0x8e, 0x80, 0x4c, 0x46, 0x63, 0x04, 0x4a, 0x73, 0xc7, 0x9b, 0xd8, 0x8f, 0x0d, 0xc2, 0x45, 0xab, 0x1a, 0x32, 0xf8, 0x9f, 0x06, 0xf4, 0x0a, 0x70, 0x4b, 0x31, 0xe9, 0xfa, 0xbc, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3190 = { .name = "ecdsa_secp224r1_sha256_3190", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3190_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3190_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3190_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 189 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3191 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3191_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3191_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3191_sig[] = { 0xc5, 0x17, 0x60, 0x47, 0x84, 0x47, 0x21, 0x75, 0x97, 0xec, 0xc6, 0xf4, 0x00, 0x1b, 0xd4, 0x50, 0x88, 0xd5, 0x3c, 0x90, 0xf5, 0x31, 0x03, 0x60, 0x8b, 0xf8, 0x8a, 0xea, 0xa2, 0x01, 0x25, 0x3a, 0xa9, 0x03, 0xf9, 0x78, 0x1e, 0x89, 0x92, 0x10, 0x1d, 0x71, 0x71, 0xd2, 0xdd, 0x3a, 0x5d, 0x48, 0xc4, 0x4d, 0x8e, 0x1d, 0x54, 0x4c, 0xd6, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3191 = { .name = "ecdsa_secp224r1_sha256_3191", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3191_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3191_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3191_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 190 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3192 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3192_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3192_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3192_sig[] = { 0x76, 0xbe, 0x01, 0x12, 0x67, 0x4e, 0xc2, 0x91, 0x28, 0x82, 0x3e, 0x1a, 0xf7, 0x51, 0x2e, 0x61, 0x43, 0x87, 0x2f, 0xef, 0x30, 0xa6, 0x4e, 0x2f, 0x17, 0x99, 0xbd, 0x56, 0x18, 0x7e, 0x50, 0x3e, 0x1a, 0x48, 0xc2, 0x7b, 0x54, 0x9f, 0xe0, 0xa4, 0xce, 0x5e, 0x58, 0x1e, 0x24, 0x2c, 0x86, 0x63, 0xfc, 0x9e, 0xfb, 0x02, 0xd6, 0xf2, 0xb1, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3192 = { .name = "ecdsa_secp224r1_sha256_3192", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3192_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3192_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3192_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 191 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3193 for ECDSA, tcId is 192 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3193_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3193_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3193_sig[] = { 0x36, 0x24, 0x5e, 0xf1, 0x26, 0xb5, 0xb5, 0x1e, 0x45, 0x9f, 0x84, 0xea, 0xaa, 0xd5, 0xa4, 0x95, 0x06, 0x1f, 0x04, 0x71, 0xdc, 0x8c, 0x23, 0xf1, 0xc5, 0xf1, 0x62, 0x82, 0x39, 0xe3, 0x1d, 0x72, 0xa0, 0x6b, 0xa8, 0xe1, 0x4f, 0xcf, 0x95, 0x77, 0x8e, 0x07, 0xbc, 0x16, 0xa2, 0x62, 0x8e, 0x39, 0x44, 0x9d, 0xa8, 0x85, 0x7d, 0x50, 0x6e, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3193 = { .name = "ecdsa_secp224r1_sha256_3193", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3193_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3193_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3193_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 192 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3194 for ECDSA, tcId is 193 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3194_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3194_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3194_sig[] = { 0x25, 0x86, 0x82, 0x97, 0x5d, 0xf8, 0xbc, 0xa7, 0xf2, 0x03, 0xf7, 0x71, 0xeb, 0xeb, 0x47, 0x8e, 0xf6, 0x37, 0x36, 0x0c, 0x86, 0x0f, 0xc3, 0x86, 0xcf, 0xb2, 0x17, 0x45, 0x76, 0x63, 0xe7, 0x01, 0x88, 0x04, 0x7e, 0x41, 0x46, 0x9a, 0x2a, 0x35, 0xc8, 0xc3, 0x30, 0xdd, 0x90, 0x0f, 0x23, 0x40, 0xba, 0x82, 0xaa, 0xfd, 0x22, 0x96, 0x2a, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3194 = { .name = "ecdsa_secp224r1_sha256_3194", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3194_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3194_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3194_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 193 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3195 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3195_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3195_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3195_sig[] = { 0x85, 0xc9, 0x86, 0x14, 0xf3, 0x6c, 0x0d, 0x66, 0xf8, 0xd8, 0x78, 0x34, 0xca, 0xe9, 0x78, 0x61, 0x1b, 0x7b, 0x4e, 0xeb, 0xf5, 0x9a, 0x46, 0xbe, 0xa1, 0xb8, 0x9a, 0xe9, 0xd1, 0xa1, 0x8e, 0x37, 0x8d, 0xda, 0x84, 0x0e, 0x06, 0xb6, 0x0f, 0x62, 0x79, 0xbf, 0x0a, 0x22, 0x31, 0xd9, 0xfa, 0x2d, 0x8d, 0x2c, 0x31, 0xe8, 0x8b, 0xc1, 0xbd, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3195 = { .name = "ecdsa_secp224r1_sha256_3195", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3195_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3195_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3195_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 194 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3196 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3196_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3196_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3196_sig[] = { 0xca, 0x7b, 0x74, 0x32, 0xba, 0x41, 0xff, 0x21, 0x12, 0xe1, 0x11, 0x6f, 0xff, 0xde, 0x89, 0xbb, 0xd6, 0x8f, 0x5c, 0xe6, 0x7f, 0xe5, 0x51, 0x3d, 0x16, 0xc8, 0xe6, 0xf7, 0xe4, 0x21, 0xb7, 0x59, 0x9e, 0x01, 0x80, 0x79, 0x8a, 0xcc, 0x20, 0x06, 0x45, 0x16, 0x03, 0xcd, 0xa2, 0xdb, 0x1d, 0x58, 0x27, 0x41, 0x11, 0x6e, 0x60, 0x33, 0xce, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3196 = { .name = "ecdsa_secp224r1_sha256_3196", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3196_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3196_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3196_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 195 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3197 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3197_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3197_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3197_sig[] = { 0x19, 0x39, 0x7f, 0xe5, 0xd3, 0xec, 0xab, 0xf8, 0x0f, 0xc6, 0x24, 0xc1, 0xbf, 0x37, 0x95, 0x64, 0x38, 0x75, 0x17, 0xc1, 0x85, 0x08, 0x7d, 0xc9, 0x7d, 0x60, 0x50, 0x69, 0x33, 0xb5, 0x77, 0x3e, 0x9a, 0xaf, 0x6c, 0x34, 0xcb, 0x61, 0x2c, 0xfc, 0x81, 0xef, 0xd3, 0xbf, 0x9c, 0x22, 0x22, 0x4e, 0x8c, 0x4f, 0xa1, 0xbf, 0xcc, 0xf5, 0xc5, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3197 = { .name = "ecdsa_secp224r1_sha256_3197", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3197_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3197_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3197_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 196 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3198 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3198_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3198_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3198_sig[] = { 0x70, 0xf2, 0x4f, 0x5c, 0x16, 0x41, 0x64, 0xbf, 0xbb, 0x84, 0x59, 0xaa, 0x12, 0xa9, 0x81, 0xaa, 0x31, 0x2d, 0xbc, 0xf0, 0x02, 0x04, 0x32, 0x6e, 0xba, 0xaa, 0xbd, 0xc8, 0xf5, 0xce, 0xbe, 0xe8, 0xca, 0xed, 0xae, 0x86, 0x62, 0xc4, 0x35, 0x01, 0x66, 0x50, 0x84, 0xb4, 0x5d, 0x2f, 0x49, 0x4f, 0xb7, 0x0d, 0x60, 0x30, 0x43, 0x54, 0x3d, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3198 = { .name = "ecdsa_secp224r1_sha256_3198", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3198_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3198_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3198_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 197 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3199 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3199_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3199_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3199_sig[] = { 0x0b, 0xf2, 0xd8, 0x6e, 0xca, 0xa8, 0xb5, 0x6a, 0xca, 0x5e, 0x8f, 0x8e, 0xbc, 0xb4, 0x50, 0x81, 0xd0, 0x78, 0xa1, 0x45, 0x55, 0xb7, 0x5f, 0x5b, 0xe8, 0xe9, 0xb1, 0x32, 0x9a, 0x55, 0xb3, 0xce, 0x47, 0x34, 0x84, 0x99, 0x66, 0xb5, 0x03, 0x4c, 0xcd, 0x9b, 0x19, 0xf7, 0x64, 0x07, 0xee, 0x02, 0x41, 0xc3, 0xf5, 0x8e, 0x7b, 0x8f, 0xc8, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3199 = { .name = "ecdsa_secp224r1_sha256_3199", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3199_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3199_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3199_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 198 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3200 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3200_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3200_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3200_sig[] = { 0xbf, 0xc5, 0xdc, 0x44, 0x34, 0xcd, 0x09, 0x36, 0x96, 0x10, 0x68, 0x7d, 0x38, 0xd2, 0xd4, 0x18, 0xb6, 0x3f, 0xd4, 0x75, 0xde, 0xa2, 0x46, 0xa4, 0x56, 0xb2, 0x5a, 0x3a, 0xb1, 0x71, 0xdf, 0xa6, 0xcf, 0x72, 0x2f, 0x20, 0x81, 0x63, 0x70, 0xa8, 0x68, 0x78, 0x5d, 0xa8, 0x42, 0xb3, 0x7b, 0xac, 0x31, 0xd7, 0xb7, 0x8e, 0x67, 0x51, 0xfc, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3200 = { .name = "ecdsa_secp224r1_sha256_3200", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3200_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3200_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3200_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 199 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3201 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3201_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3201_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3201_sig[] = { 0x8f, 0xdb, 0xe8, 0xda, 0x64, 0x6c, 0x56, 0x42, 0xd7, 0x67, 0xc7, 0xdb, 0xeb, 0x38, 0x72, 0xb1, 0xed, 0xab, 0x6e, 0x37, 0x36, 0x58, 0x05, 0xf0, 0xe9, 0x4c, 0xe0, 0xa9, 0xbc, 0xf3, 0x5a, 0xb8, 0x12, 0x22, 0x88, 0x3d, 0xd3, 0x52, 0x6c, 0xb0, 0xcf, 0x93, 0x13, 0x8f, 0x46, 0x87, 0xcd, 0x0b, 0x10, 0xc2, 0xb0, 0xa1, 0x26, 0x38, 0x51, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3201 = { .name = "ecdsa_secp224r1_sha256_3201", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3201_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3201_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3201_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 200 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3202 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3202_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3202_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3202_sig[] = { 0xe2, 0x3a, 0x11, 0x27, 0x58, 0x48, 0xfd, 0x4f, 0x8b, 0x6f, 0x4a, 0xc4, 0xfc, 0x30, 0x5e, 0xae, 0x98, 0x1d, 0x3b, 0x7d, 0xc4, 0x53, 0xe5, 0xa9, 0x80, 0xc4, 0x64, 0x22, 0x1a, 0x87, 0x56, 0x93, 0xf2, 0x4a, 0x03, 0xea, 0x16, 0x14, 0xc4, 0xc3, 0xbb, 0xd0, 0xdd, 0x72, 0x21, 0x42, 0x9f, 0x22, 0xb3, 0x37, 0xea, 0x7d, 0x98, 0x34, 0x8c, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3202 = { .name = "ecdsa_secp224r1_sha256_3202", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3202_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3202_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3202_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 201 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3203 for ECDSA, tcId is 202 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3203_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3203_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3203_sig[] = { 0x76, 0x64, 0x51, 0x64, 0xff, 0x9a, 0xf3, 0xa1, 0xa9, 0x20, 0x5f, 0xda, 0x2e, 0xef, 0x32, 0x6d, 0x2b, 0xff, 0xc7, 0x95, 0xdc, 0xc4, 0x82, 0x95, 0x47, 0xfe, 0x01, 0xdd, 0xb6, 0x5b, 0xba, 0x50, 0x37, 0x19, 0x31, 0x4b, 0x27, 0x73, 0x4d, 0xd0, 0x6b, 0x13, 0x95, 0xd5, 0x40, 0xaf, 0x83, 0x96, 0x02, 0x9b, 0x78, 0xb8, 0x4e, 0x01, 0x49, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3203 = { .name = "ecdsa_secp224r1_sha256_3203", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3203_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3203_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3203_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 202 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3204 for ECDSA, tcId is 203 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3204_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3204_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3204_sig[] = { 0x32, 0xfa, 0x0c, 0xa7, 0xe0, 0x7f, 0x1f, 0x86, 0xac, 0x35, 0x07, 0x34, 0x99, 0x4e, 0x1f, 0x31, 0xb6, 0xda, 0x9c, 0x82, 0xf9, 0x3d, 0xce, 0xd2, 0xb9, 0x83, 0xc2, 0x9c, 0x7b, 0x78, 0x91, 0x28, 0x22, 0x06, 0xa4, 0x57, 0x11, 0xbd, 0xfc, 0xb2, 0xa1, 0x02, 0xb5, 0xd2, 0x89, 0xdf, 0x84, 0xff, 0x57, 0x78, 0x54, 0x86, 0x03, 0x57, 0x40, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3204 = { .name = "ecdsa_secp224r1_sha256_3204", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3204_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3204_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3204_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 203 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3205 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3205_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3205_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3205_sig[] = { 0x2d, 0x54, 0x92, 0x47, 0x8c, 0xa6, 0x4e, 0x51, 0x11, 0xdf, 0xd8, 0x52, 0x18, 0x67, 0xb6, 0x47, 0x7b, 0x7e, 0x78, 0x22, 0x78, 0x49, 0xad, 0x09, 0x0b, 0x85, 0x56, 0x94, 0xa5, 0x32, 0xf5, 0xa2, 0xfa, 0x35, 0x94, 0xaf, 0x81, 0xcd, 0x59, 0x28, 0xb8, 0x1b, 0x40, 0x57, 0xda, 0x71, 0x7b, 0xe5, 0xfb, 0x42, 0xa3, 0xa8, 0x6c, 0x68, 0x19, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3205 = { .name = "ecdsa_secp224r1_sha256_3205", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3205_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3205_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3205_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 204 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3206 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3206_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3206_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3206_sig[] = { 0x19, 0x1e, 0xee, 0x5d, 0xaf, 0x55, 0xcd, 0x49, 0x9e, 0x85, 0x39, 0xcb, 0x2c, 0xff, 0x79, 0x7c, 0xfe, 0xc5, 0xd5, 0x66, 0xd2, 0x02, 0x7b, 0xf9, 0xf8, 0xd6, 0x46, 0x93, 0xda, 0xdf, 0xea, 0xe8, 0x13, 0x1f, 0x64, 0xd9, 0x6b, 0x94, 0xfd, 0x34, 0x01, 0x97, 0xca, 0xa2, 0xbc, 0x04, 0x81, 0x85, 0x54, 0x81, 0x2f, 0xee, 0xf3, 0x34, 0x30, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3206 = { .name = "ecdsa_secp224r1_sha256_3206", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3206_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3206_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3206_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 205 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3207 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3207_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3207_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3207_sig[] = { 0xe0, 0xe2, 0xc0, 0x81, 0x80, 0xb8, 0xa2, 0x07, 0xee, 0x91, 0x05, 0xa7, 0xd3, 0x79, 0xfa, 0x11, 0x23, 0x68, 0xe8, 0x37, 0x0f, 0xa0, 0x9d, 0xfd, 0xe4, 0xa4, 0x5c, 0x45, 0xc7, 0x17, 0xbc, 0x08, 0x60, 0xe0, 0x16, 0xe7, 0xce, 0x48, 0xf8, 0xfe, 0x6a, 0x29, 0x9b, 0x36, 0x90, 0x6a, 0x60, 0x55, 0xad, 0xad, 0x93, 0xb4, 0x16, 0xce, 0x88, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3207 = { .name = "ecdsa_secp224r1_sha256_3207", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3207_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3207_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3207_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 206 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3208 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3208_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3208_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3208_sig[] = { 0x1b, 0x91, 0x9e, 0xf9, 0x35, 0x32, 0x29, 0x27, 0x43, 0xbb, 0x2e, 0x1b, 0x7b, 0x48, 0x94, 0xfd, 0x84, 0x7c, 0x6e, 0x5d, 0xe5, 0x2a, 0x08, 0xe1, 0xb0, 0xf2, 0xdc, 0xfb, 0xc2, 0xd3, 0x0d, 0x6b, 0x75, 0x94, 0xd8, 0xdb, 0xd2, 0x61, 0x49, 0x1a, 0xe1, 0xd5, 0x87, 0x79, 0x50, 0x5b, 0x07, 0x5b, 0x64, 0xe5, 0x56, 0x4d, 0xc9, 0x7a, 0x41, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3208 = { .name = "ecdsa_secp224r1_sha256_3208", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3208_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3208_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3208_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 207 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3209 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3209_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3209_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3209_sig[] = { 0xe7, 0x5d, 0xb4, 0x9e, 0xd3, 0x3f, 0xf2, 0x88, 0x5e, 0xa6, 0x10, 0x0c, 0xc9, 0x5b, 0x8f, 0xe1, 0xb9, 0x24, 0x2e, 0xa4, 0x24, 0x8d, 0xb0, 0x7b, 0xca, 0xc2, 0xe0, 0x20, 0x79, 0x6c, 0x86, 0x61, 0x42, 0xae, 0x8e, 0xb7, 0x5b, 0xb0, 0x49, 0x9c, 0x66, 0x8c, 0x6f, 0xe4, 0x54, 0x97, 0x69, 0x2f, 0xbc, 0xc6, 0x6b, 0x37, 0xc2, 0xe4, 0x62, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3209 = { .name = "ecdsa_secp224r1_sha256_3209", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3209_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3209_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3209_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 208 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3210 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3210_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3210_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3210_sig[] = { 0x1f, 0x81, 0xcd, 0x92, 0x43, 0x62, 0xec, 0x82, 0x58, 0x90, 0x30, 0x7b, 0x9b, 0x39, 0x36, 0xe0, 0xd8, 0xf7, 0x28, 0xa7, 0xc8, 0x4b, 0xdb, 0x43, 0xc5, 0xcf, 0x04, 0x33, 0x39, 0xd3, 0xe4, 0x6a, 0x03, 0x04, 0x0a, 0xd4, 0x1a, 0xc0, 0x26, 0xb1, 0x8e, 0x06, 0x29, 0xf6, 0x14, 0x5e, 0x3d, 0xc8, 0xd1, 0xe6, 0xbb, 0xe2, 0x00, 0xc8, 0x48, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3210 = { .name = "ecdsa_secp224r1_sha256_3210", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3210_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3210_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3210_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 209 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3211 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3211_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3211_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3211_sig[] = { 0x00, 0xfd, 0xa6, 0x13, 0xaa, 0x67, 0xca, 0x42, 0x67, 0x3a, 0xd4, 0x30, 0x9f, 0x3f, 0x0f, 0x05, 0xb2, 0x56, 0x9f, 0x3d, 0xee, 0x63, 0xf4, 0xaa, 0x9c, 0xc5, 0x4c, 0xf3, 0x1e, 0x5a, 0x64, 0xb6, 0x8a, 0x37, 0xe5, 0xb2, 0x01, 0xc9, 0x18, 0x30, 0x3d, 0xc7, 0xa4, 0x04, 0x39, 0xaa, 0xea, 0xcf, 0x01, 0x9c, 0x58, 0x92, 0xa8, 0xf6, 0xd0, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3211 = { .name = "ecdsa_secp224r1_sha256_3211", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3211_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3211_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3211_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 210 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3212 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3212_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3212_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3212_sig[] = { 0xb9, 0x32, 0xb3, 0xf7, 0xe6, 0x46, 0x7e, 0x1e, 0xc7, 0xa5, 0x61, 0xf3, 0x11, 0x60, 0x24, 0x8c, 0x7f, 0x22, 0x45, 0x50, 0xa8, 0x50, 0x87, 0x88, 0x63, 0x4b, 0x53, 0xce, 0xa0, 0xc5, 0x31, 0x2a, 0xcf, 0x9e, 0x80, 0x1a, 0xff, 0x6d, 0x6f, 0xc9, 0x85, 0x50, 0xcf, 0xa7, 0x12, 0xbb, 0xf6, 0x59, 0x37, 0x16, 0x5a, 0x36, 0xf2, 0xc3, 0x2d, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3212 = { .name = "ecdsa_secp224r1_sha256_3212", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3212_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3212_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3212_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 211 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3213 for ECDSA, tcId is 212 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3213_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3213_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3213_sig[] = { 0xe5, 0x09, 0x59, 0x3f, 0xb0, 0x92, 0x45, 0xee, 0x82, 0x26, 0xce, 0x72, 0x78, 0x6b, 0x0c, 0xc3, 0x52, 0xbe, 0x55, 0x5a, 0x74, 0x86, 0xbe, 0x62, 0x8f, 0x4f, 0xd0, 0x0c, 0x0b, 0x7a, 0xbd, 0xe0, 0x06, 0x1b, 0x1e, 0x07, 0xbf, 0x13, 0x31, 0x91, 0x50, 0xa4, 0xff, 0x6a, 0x46, 0x4a, 0xba, 0xb6, 0x36, 0xab, 0x4e, 0x29, 0x7b, 0x0d, 0x76, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3213 = { .name = "ecdsa_secp224r1_sha256_3213", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3213_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3213_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3213_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 212 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3214 for ECDSA, tcId is 213 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3214_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3214_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3214_sig[] = { 0x6e, 0x54, 0xf9, 0x41, 0x20, 0x4d, 0x46, 0x39, 0xb8, 0x63, 0xc9, 0x8a, 0x65, 0xb7, 0xbe, 0xe3, 0x18, 0xd5, 0x1a, 0xb1, 0x90, 0x0a, 0x8f, 0x34, 0x5e, 0xac, 0x6f, 0x07, 0x0d, 0xa5, 0x05, 0x48, 0x29, 0x21, 0x4e, 0xcd, 0xe5, 0xe1, 0x05, 0x79, 0xb3, 0x6a, 0x2f, 0xe6, 0x42, 0x6c, 0x24, 0xb0, 0x64, 0xed, 0x77, 0xc3, 0x85, 0x90, 0xf2, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3214 = { .name = "ecdsa_secp224r1_sha256_3214", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3214_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3214_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3214_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 213 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3215 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3215_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3215_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3215_sig[] = { 0x85, 0xea, 0x4a, 0xb3, 0xff, 0xdc, 0x99, 0x23, 0x30, 0xc0, 0xca, 0x81, 0x52, 0xfa, 0xf9, 0x91, 0x38, 0x6b, 0xce, 0x82, 0x87, 0x7d, 0xbb, 0x23, 0x9b, 0xa6, 0x54, 0xf6, 0x08, 0x06, 0xc6, 0xba, 0xf0, 0xeb, 0xea, 0x4c, 0x1a, 0xaa, 0x19, 0x0e, 0x7d, 0x43, 0x25, 0xd4, 0x6d, 0x1f, 0x77, 0x89, 0xd5, 0x50, 0x63, 0x2b, 0x70, 0xb5, 0xfc, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3215 = { .name = "ecdsa_secp224r1_sha256_3215", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3215_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3215_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3215_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 214 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3216 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3216_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3216_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3216_sig[] = { 0x44, 0xd5, 0x3d, 0xeb, 0xb6, 0x46, 0xb7, 0x34, 0x85, 0x40, 0x2e, 0xab, 0x2d, 0x09, 0x90, 0x81, 0xb9, 0x7b, 0x12, 0x43, 0xc0, 0x25, 0xb6, 0x24, 0xf0, 0xdd, 0x67, 0xea, 0xe5, 0xde, 0x78, 0x9a, 0x7d, 0x4b, 0x77, 0xea, 0xc6, 0xd7, 0xbb, 0xa4, 0x16, 0x58, 0xe6, 0xe4, 0xdc, 0x34, 0x7d, 0xab, 0xed, 0x2f, 0x96, 0x80, 0xc0, 0x4a, 0x6f, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3216 = { .name = "ecdsa_secp224r1_sha256_3216", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3216_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3216_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3216_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 215 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3217 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3217_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3217_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3217_sig[] = { 0x15, 0x26, 0xeb, 0x2f, 0x65, 0x7e, 0xbe, 0xa9, 0xaf, 0x4c, 0xa1, 0x84, 0xb9, 0x75, 0xc0, 0x23, 0x72, 0xc8, 0x8e, 0x24, 0xe8, 0x35, 0xf3, 0xf5, 0x77, 0x4c, 0x0e, 0x12, 0x1f, 0x1e, 0xcc, 0xe3, 0x8e, 0xe5, 0x23, 0x72, 0xcb, 0x20, 0x19, 0x07, 0x79, 0x4d, 0xe1, 0x7b, 0x6d, 0x6c, 0x1a, 0xfa, 0x13, 0xc3, 0x16, 0xc5, 0x1c, 0xb0, 0x7b, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3217 = { .name = "ecdsa_secp224r1_sha256_3217", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3217_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3217_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3217_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 216 in file ecdsa_secp224r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3218 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3218_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3218_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3c, 0x1b, 0xab, 0x88, 0x64, 0xe5, 0xe0, 0x3a, 0x50, 0x11, 0xee, 0xba, 0x81, 0x50, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3218 = { .name = "ecdsa_secp224r1_sha256_3218", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3218_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3218_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3218_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3219 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3219_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3219_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3219 = { .name = "ecdsa_secp224r1_sha256_3219", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3219_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3219_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3219_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3220 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3220_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3220_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3220 = { .name = "ecdsa_secp224r1_sha256_3220", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3220_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3220_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3220_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 3 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3221 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3221_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3221_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3221 = { .name = "ecdsa_secp224r1_sha256_3221", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3221_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3221_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3221_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 4 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3222 for ECDSA, tcId is 67 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3222_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3222_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3222 = { .name = "ecdsa_secp224r1_sha256_3222", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3222_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3222_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3222_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3223 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3223_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3223_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3223 = { .name = "ecdsa_secp224r1_sha256_3223", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3223_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3223_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3223_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3224 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3224_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3224_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3224 = { .name = "ecdsa_secp224r1_sha256_3224", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3224_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3224_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3224_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3225 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3225_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3225_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3225 = { .name = "ecdsa_secp224r1_sha256_3225", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3225_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3225_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3225_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3226 for ECDSA, tcId is 92 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3226_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3226_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3226 = { .name = "ecdsa_secp224r1_sha256_3226", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3226_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3226_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3226_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3227 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3227_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3227_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3227 = { .name = "ecdsa_secp224r1_sha256_3227", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3227_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3227_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3227_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3228 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3228_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3228_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3228 = { .name = "ecdsa_secp224r1_sha256_3228", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3228_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3228_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3228_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3229 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3229_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3229_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3229 = { .name = "ecdsa_secp224r1_sha256_3229", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3229_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3229_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3229_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3230 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3230_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3230_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x05, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3230 = { .name = "ecdsa_secp224r1_sha256_3230", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3230_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3230_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3230_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3231 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3231_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3231_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3231 = { .name = "ecdsa_secp224r1_sha256_3231", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3231_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3231_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3231_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3232 for ECDSA, tcId is 113 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3232_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3232_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3232 = { .name = "ecdsa_secp224r1_sha256_3232", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3232_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3232_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3232_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3233 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3233_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3233_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3233 = { .name = "ecdsa_secp224r1_sha256_3233", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3233_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3233_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3233_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3234 for ECDSA, tcId is 117 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3234_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3234_sig[] = { 0x38, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3234 = { .name = "ecdsa_secp224r1_sha256_3234", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3234_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3234_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3234_sig, .siglen = 56, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3235 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3235_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3235_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x63, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3235 = { .name = "ecdsa_secp224r1_sha256_3235", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3235_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3235_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3235_sig, .siglen = 56, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3236 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3236_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3236_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x84, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3236 = { .name = "ecdsa_secp224r1_sha256_3236", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3236_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3236_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3236_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3237 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3237_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3237_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3237 = { .name = "ecdsa_secp224r1_sha256_3237", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3237_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3237_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3237_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3238 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3238_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3238_sig[] = { 0x00, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3238 = { .name = "ecdsa_secp224r1_sha256_3238", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3238_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3238_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3238_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3239 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3239_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3239_sig[] = { 0x00, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3239 = { .name = "ecdsa_secp224r1_sha256_3239", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3239_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3239_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3239_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3240 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3240_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3240_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3240 = { .name = "ecdsa_secp224r1_sha256_3240", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3240_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3240_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3240_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3241 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3241_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3241_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3241 = { .name = "ecdsa_secp224r1_sha256_3241", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3241_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3241_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3241_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3242 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3242_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3242_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3242 = { .name = "ecdsa_secp224r1_sha256_3242", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3242_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3242_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3242_sig, .siglen = 56, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3243 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3243_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3243_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3243 = { .name = "ecdsa_secp224r1_sha256_3243", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3243_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3243_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3243_sig, .siglen = 56, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3244 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3244_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3244_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3244 = { .name = "ecdsa_secp224r1_sha256_3244", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3244_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3244_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3244_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3245 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3245_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3245_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3245 = { .name = "ecdsa_secp224r1_sha256_3245", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3245_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3245_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3245_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3246 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3246_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3246_sig[] = { 0x01, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x1f, 0xd2, 0x83, 0x09, 0x8d, 0x8a, 0x00, 0x4f, 0xc7, 0x18, 0xe2, 0xe7, 0xe6, 0xb4, 0x41, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3246 = { .name = "ecdsa_secp224r1_sha256_3246", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3246_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3246_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3246_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3247 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3247_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3247_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x21, 0xa5, 0x3d, 0x48, 0x1b, 0xa9, 0x84, 0x28, 0x0c, 0xc6, 0x58, 0x2f, 0x2e, 0x5f, 0xc7, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3247 = { .name = "ecdsa_secp224r1_sha256_3247", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3247_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3247_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3247_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3248 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3248_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3248_sig[] = { 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xdf, 0x44, 0x1f, 0xd7, 0x2b, 0x66, 0x3d, 0xc4, 0x16, 0x10, 0x62, 0x74, 0x75, 0x75, 0xfc, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3248 = { .name = "ecdsa_secp224r1_sha256_3248", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3248_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3248_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3248_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3249 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3249_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3249_sig[] = { 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xde, 0x5a, 0xc2, 0xb7, 0xe4, 0x56, 0x7b, 0xd7, 0xf3, 0x39, 0xa7, 0xd0, 0xd1, 0xa0, 0x39, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3249 = { .name = "ecdsa_secp224r1_sha256_3249", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3249_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3249_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3249_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3250 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3250_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3250_sig[] = { 0xfe, 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xe0, 0x2d, 0x7c, 0xf6, 0x72, 0x75, 0xff, 0xb0, 0x38, 0xe7, 0x1d, 0x18, 0x19, 0x4b, 0xbf, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3250 = { .name = "ecdsa_secp224r1_sha256_3250", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3250_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3250_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3250_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3251 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3251_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3251_sig[] = { 0x01, 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3251 = { .name = "ecdsa_secp224r1_sha256_3251", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3251_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3251_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3251_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3252 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3252_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3252_sig[] = { 0xc5, 0x21, 0xa3, 0xf9, 0xdb, 0x5a, 0x98, 0x81, 0x28, 0x49, 0xba, 0xf2, 0x6b, 0xdf, 0x44, 0x1f, 0xd7, 0x2b, 0x66, 0x3d, 0xc4, 0x16, 0x10, 0x62, 0x74, 0x75, 0x75, 0xfc, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3252 = { .name = "ecdsa_secp224r1_sha256_3252", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3252_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3252_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3252_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3253 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3253_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3253_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x01, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0x11, 0x9a, 0x39, 0x0c, 0xfa, 0x9b, 0xed, 0x6a, 0x40, 0x9b, 0xfe, 0x37, 0x03, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3253 = { .name = "ecdsa_secp224r1_sha256_3253", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3253_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3253_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3253_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3254 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3254_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3254_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc3, 0xe4, 0x54, 0x77, 0x9b, 0x1a, 0x1f, 0xc5, 0xaf, 0xee, 0x11, 0x45, 0x7e, 0xaf, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3254 = { .name = "ecdsa_secp224r1_sha256_3254", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3254_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3254_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3254_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3255 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3255_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3255_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3d, 0x05, 0x08, 0xa7, 0xab, 0xf5, 0xa2, 0x26, 0x72, 0xe8, 0xa9, 0x5e, 0x25, 0x26, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3255 = { .name = "ecdsa_secp224r1_sha256_3255", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3255_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3255_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3255_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3256 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3256_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3256_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0xfe, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3d, 0xee, 0x65, 0xc6, 0xf3, 0x05, 0x64, 0x12, 0x95, 0xbf, 0x64, 0x01, 0xc8, 0xfc, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3256 = { .name = "ecdsa_secp224r1_sha256_3256", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3256_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3256_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3256_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3257 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3257_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3257_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x01, 0x61, 0x7d, 0x6a, 0xf1, 0x41, 0xef, 0xd0, 0xc8, 0x00, 0xc9, 0xba, 0x33, 0x82, 0xc2, 0xfa, 0xf7, 0x58, 0x54, 0x0a, 0x5d, 0xd9, 0x8d, 0x17, 0x56, 0xa1, 0xda, 0xd9, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3257 = { .name = "ecdsa_secp224r1_sha256_3257", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3257_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3257_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3257_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3258 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3258_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3258_sig[] = { 0x3a, 0xde, 0x5c, 0x06, 0x24, 0xa5, 0x67, 0x7e, 0xd7, 0xb6, 0x45, 0x0d, 0x94, 0x20, 0xbb, 0xe0, 0x28, 0xd4, 0x99, 0xc2, 0x3b, 0xe9, 0xef, 0x9d, 0x8b, 0x8a, 0x8a, 0x04, 0x9e, 0x82, 0x95, 0x0e, 0xbe, 0x10, 0x2f, 0x37, 0xff, 0x36, 0x45, 0xcc, 0x7d, 0x3d, 0x05, 0x08, 0xa7, 0xab, 0xf5, 0xa2, 0x26, 0x72, 0xe8, 0xa9, 0x5e, 0x25, 0x26, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3258 = { .name = "ecdsa_secp224r1_sha256_3258", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3258_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3258_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3258_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3259 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3259_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3259_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3259 = { .name = "ecdsa_secp224r1_sha256_3259", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3259_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3259_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3259_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3260 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3260_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3260_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3260 = { .name = "ecdsa_secp224r1_sha256_3260", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3260_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3260_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3260_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3261 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3261_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3261_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3261 = { .name = "ecdsa_secp224r1_sha256_3261", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3261_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3261_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3261_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3262 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3262_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3262_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3262 = { .name = "ecdsa_secp224r1_sha256_3262", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3262_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3262_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3262_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3263 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3263_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3263_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3263 = { .name = "ecdsa_secp224r1_sha256_3263", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3263_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3263_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3263_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3264 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3264_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3264_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3264 = { .name = "ecdsa_secp224r1_sha256_3264", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3264_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3264_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3264_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3265 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3265_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3265_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3265 = { .name = "ecdsa_secp224r1_sha256_3265", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3265_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3265_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3265_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3266 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3266_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3266_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3266 = { .name = "ecdsa_secp224r1_sha256_3266", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3266_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3266_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3266_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3267 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3267_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3267_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3267 = { .name = "ecdsa_secp224r1_sha256_3267", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3267_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3267_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3267_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3268 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3268_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3268_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3268 = { .name = "ecdsa_secp224r1_sha256_3268", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3268_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3268_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3268_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3269 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3269_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3269_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3269 = { .name = "ecdsa_secp224r1_sha256_3269", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3269_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3269_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3269_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3270 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3270_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3270_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3270 = { .name = "ecdsa_secp224r1_sha256_3270", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3270_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3270_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3270_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3271 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3271_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3271_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3271 = { .name = "ecdsa_secp224r1_sha256_3271", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3271_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3271_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3271_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3272 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3272_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3272_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3272 = { .name = "ecdsa_secp224r1_sha256_3272", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3272_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3272_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3272_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3273 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3273_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3273_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3273 = { .name = "ecdsa_secp224r1_sha256_3273", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3273_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3273_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3273_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3274 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3274_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3274_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3274 = { .name = "ecdsa_secp224r1_sha256_3274", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3274_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3274_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3274_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3275 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3275_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3275_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3275 = { .name = "ecdsa_secp224r1_sha256_3275", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3275_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3275_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3275_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3276 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3276_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3276_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3276 = { .name = "ecdsa_secp224r1_sha256_3276", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3276_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3276_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3276_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3277 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3277_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3277_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3277 = { .name = "ecdsa_secp224r1_sha256_3277", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3277_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3277_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3277_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3278 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3278_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3278_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3278 = { .name = "ecdsa_secp224r1_sha256_3278", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3278_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3278_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3278_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3279 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3279_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3279_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3279 = { .name = "ecdsa_secp224r1_sha256_3279", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3279_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3279_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3279_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3280 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3280_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3280_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3280 = { .name = "ecdsa_secp224r1_sha256_3280", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3280_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3280_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3280_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3281 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3281_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3281_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3281 = { .name = "ecdsa_secp224r1_sha256_3281", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3281_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3281_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3281_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3282 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3282_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3282_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3282 = { .name = "ecdsa_secp224r1_sha256_3282", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3282_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3282_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3282_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3283 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3283_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3283_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3283 = { .name = "ecdsa_secp224r1_sha256_3283", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3283_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3283_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3283_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3284 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3284_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3284_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3284 = { .name = "ecdsa_secp224r1_sha256_3284", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3284_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3284_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3284_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3285 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3285_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3285_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3285 = { .name = "ecdsa_secp224r1_sha256_3285", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3285_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3285_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3285_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3286 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3286_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3286_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3286 = { .name = "ecdsa_secp224r1_sha256_3286", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3286_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3286_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3286_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3287 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3287_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3287_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3287 = { .name = "ecdsa_secp224r1_sha256_3287", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3287_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3287_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3287_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3288 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3288_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3288_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3288 = { .name = "ecdsa_secp224r1_sha256_3288", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3288_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3288_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3288_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3289 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3289_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3289_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3289 = { .name = "ecdsa_secp224r1_sha256_3289", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3289_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3289_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3289_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3290 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3290_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3290_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3290 = { .name = "ecdsa_secp224r1_sha256_3290", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3290_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3290_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3290_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3291 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3291_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3291_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3291 = { .name = "ecdsa_secp224r1_sha256_3291", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3291_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3291_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3291_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3292 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3292_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3292_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3292 = { .name = "ecdsa_secp224r1_sha256_3292", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3292_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3292_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3292_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3293 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3293_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3293_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3293 = { .name = "ecdsa_secp224r1_sha256_3293", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3293_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3293_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3293_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3294 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3294_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3294_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3294 = { .name = "ecdsa_secp224r1_sha256_3294", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3294_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3294_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3294_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3295 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3295_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3295_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3295 = { .name = "ecdsa_secp224r1_sha256_3295", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3295_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3295_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3295_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3296 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3296_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3296_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3296 = { .name = "ecdsa_secp224r1_sha256_3296", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3296_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3296_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3296_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3297 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3297_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3297_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3297 = { .name = "ecdsa_secp224r1_sha256_3297", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3297_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3297_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3297_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3298 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3298_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3298_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3298 = { .name = "ecdsa_secp224r1_sha256_3298", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3298_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3298_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3298_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3299 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3299_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3299_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3299 = { .name = "ecdsa_secp224r1_sha256_3299", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3299_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3299_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3299_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3300 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3300_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3300_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3300 = { .name = "ecdsa_secp224r1_sha256_3300", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3300_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3300_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3300_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3301 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3301_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3301_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3301 = { .name = "ecdsa_secp224r1_sha256_3301", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3301_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3301_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3301_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3302 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3302_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3302_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3302 = { .name = "ecdsa_secp224r1_sha256_3302", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3302_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3302_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3302_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3303 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3303_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3303_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3303 = { .name = "ecdsa_secp224r1_sha256_3303", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3303_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3303_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3303_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3304 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3304_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3304_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3304 = { .name = "ecdsa_secp224r1_sha256_3304", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3304_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3304_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3304_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3305 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3305_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3305_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3305 = { .name = "ecdsa_secp224r1_sha256_3305", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3305_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3305_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3305_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3306 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3306_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3306_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3306 = { .name = "ecdsa_secp224r1_sha256_3306", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3306_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3306_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3306_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3307 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3307_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3307_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3307 = { .name = "ecdsa_secp224r1_sha256_3307", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3307_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3307_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3307_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3308 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3308_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3308_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3308_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3308 = { .name = "ecdsa_secp224r1_sha256_3308", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3308_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3308_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3308_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3309 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3309_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3309_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3309_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3309 = { .name = "ecdsa_secp224r1_sha256_3309", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3309_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3309_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3309_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3310 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3310_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3310_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3310_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3310 = { .name = "ecdsa_secp224r1_sha256_3310", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3310_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3310_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3310_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3311 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3311_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3311_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3311 = { .name = "ecdsa_secp224r1_sha256_3311", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3311_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3311_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3311_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3312 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3312_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3312_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3312_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3312 = { .name = "ecdsa_secp224r1_sha256_3312", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3312_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3312_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3312_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3313 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3313_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3313_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3313_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3313 = { .name = "ecdsa_secp224r1_sha256_3313", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3313_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3313_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3313_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3314 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3314_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3314_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3314_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3314 = { .name = "ecdsa_secp224r1_sha256_3314", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3314_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3314_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3314_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3315 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3315_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3315_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3315_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3315 = { .name = "ecdsa_secp224r1_sha256_3315", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3315_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3315_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3315_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3316 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3316_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3316_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3316_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3316 = { .name = "ecdsa_secp224r1_sha256_3316", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3316_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3316_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3316_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3317 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3317_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3317_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3317_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3317 = { .name = "ecdsa_secp224r1_sha256_3317", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3317_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3317_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3317_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3318 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3318_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3318_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3318_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3318 = { .name = "ecdsa_secp224r1_sha256_3318", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3318_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3318_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3318_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3319 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3319_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3319_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3319_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3319 = { .name = "ecdsa_secp224r1_sha256_3319", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3319_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3319_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3319_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3320 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3320_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3320_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3320_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3320 = { .name = "ecdsa_secp224r1_sha256_3320", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3320_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3320_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3320_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3321 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3321_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3321_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3321_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3321 = { .name = "ecdsa_secp224r1_sha256_3321", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3321_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3321_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3321_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3322 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3322_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3322_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3322 = { .name = "ecdsa_secp224r1_sha256_3322", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3322_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3322_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3322_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3323 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3323_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3323_msg[] = { 0x38, 0x39, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3323_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x96, 0xad, 0x91, 0xf0, 0x2a, 0x3b, 0xc4, 0x0c, 0x11, 0x8a, 0xbd, 0x41, 0x6e, 0xd5, 0xc6, 0x20, 0x3e, 0xd7, 0xce, 0xd0, 0x33, 0x08, 0x60, 0xd7, 0xb8, 0x8c, 0x10, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3323 = { .name = "ecdsa_secp224r1_sha256_3323", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3323_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3323_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha256_3323_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3324 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3324_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3324_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3324_sig[] = { 0xbc, 0xca, 0x23, 0x65, 0xce, 0xbd, 0xcf, 0x7c, 0x6c, 0xda, 0x1e, 0xe7, 0xb2, 0x7c, 0x7f, 0xe7, 0x9e, 0x37, 0x15, 0x37, 0xb0, 0x18, 0x69, 0xc7, 0x15, 0xea, 0xbb, 0x1e, 0x3a, 0xe7, 0x6f, 0x9b, 0xbf, 0xe5, 0x19, 0xd7, 0x78, 0x81, 0x6d, 0xc8, 0xfe, 0x10, 0x63, 0x5e, 0xe7, 0x57, 0x6b, 0x6b, 0x79, 0x16, 0xf0, 0xc2, 0x1d, 0xf3, 0x20, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3324 = { .name = "ecdsa_secp224r1_sha256_3324", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3324_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3324_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3324_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3325 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3325_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3325_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3325_sig[] = { 0x59, 0xa9, 0xf8, 0x32, 0x89, 0xef, 0x69, 0x95, 0xd5, 0xd5, 0x59, 0x2e, 0x80, 0xab, 0x4f, 0x6a, 0x81, 0x12, 0x3f, 0x69, 0xd3, 0x85, 0xd3, 0xcf, 0xb1, 0x52, 0xfa, 0xf2, 0x3a, 0x97, 0xd5, 0xbe, 0x19, 0x0d, 0x58, 0x19, 0x24, 0x10, 0x67, 0xe2, 0xbe, 0x56, 0x37, 0x5a, 0xb8, 0x41, 0x55, 0xba, 0xab, 0x8f, 0xc7, 0xae, 0xb7, 0xf8, 0xcb, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3325 = { .name = "ecdsa_secp224r1_sha256_3325", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3325_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3325_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3325_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3326 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3326_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3326_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3326_sig[] = { 0xb5, 0x4b, 0xac, 0x9b, 0xe2, 0xbe, 0xaa, 0xa0, 0x94, 0x56, 0xa3, 0x96, 0x8a, 0x1f, 0xaf, 0x27, 0xc9, 0xd9, 0x6b, 0xd5, 0xf6, 0x73, 0x8f, 0xec, 0x60, 0x66, 0xd3, 0x1e, 0xd7, 0x2c, 0x22, 0x12, 0x93, 0x44, 0xa9, 0x6d, 0x52, 0xfd, 0xa6, 0x0b, 0x26, 0x4c, 0xf5, 0xe6, 0xfa, 0xe4, 0x5f, 0xd2, 0xc1, 0xb1, 0xb7, 0x8b, 0xcb, 0xa3, 0x00, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3326 = { .name = "ecdsa_secp224r1_sha256_3326", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3326_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3326_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3326_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3327 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3327_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3327_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3327_sig[] = { 0x32, 0x3d, 0xbd, 0xec, 0xd4, 0x09, 0x10, 0xc6, 0xfa, 0x7a, 0x56, 0x91, 0x84, 0x6f, 0xa7, 0x76, 0x91, 0x13, 0xd1, 0xf2, 0xba, 0x64, 0xef, 0x0d, 0xc9, 0x7d, 0x2d, 0xdb, 0xca, 0x9e, 0x73, 0xa4, 0x58, 0x7a, 0xf0, 0x42, 0xf8, 0xba, 0x92, 0x4b, 0xb6, 0x18, 0x29, 0xc5, 0xe2, 0x40, 0x46, 0xf9, 0x80, 0x3e, 0xb7, 0x6a, 0xb8, 0x0e, 0xf3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3327 = { .name = "ecdsa_secp224r1_sha256_3327", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3327_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3327_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3327_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3328 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3328_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3328_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3328_sig[] = { 0xa5, 0x5d, 0xcc, 0xc2, 0x7d, 0x28, 0x7f, 0x15, 0x96, 0x0e, 0xd7, 0x99, 0x08, 0xa3, 0xed, 0xb6, 0xbb, 0x31, 0xaf, 0xf0, 0x7c, 0x8c, 0xaa, 0x0e, 0x65, 0xfc, 0x07, 0x85, 0x55, 0x9c, 0xb5, 0x1a, 0xa5, 0xf2, 0xb9, 0x06, 0x66, 0x10, 0x19, 0x9d, 0xd0, 0x12, 0x91, 0xa4, 0x77, 0x29, 0xa6, 0x18, 0x9a, 0x62, 0x2a, 0xe9, 0xe7, 0xaf, 0x76, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3328 = { .name = "ecdsa_secp224r1_sha256_3328", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3328_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3328_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3328_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3329 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3329_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3329_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3329_sig[] = { 0x13, 0x7e, 0xd6, 0x10, 0x51, 0x48, 0xd6, 0xf5, 0xb8, 0x4e, 0x87, 0x73, 0x5d, 0x57, 0x95, 0x5f, 0x81, 0xc5, 0x91, 0x4a, 0x6e, 0x69, 0xf5, 0x53, 0x47, 0xad, 0xe0, 0x74, 0xdf, 0xa5, 0xd5, 0x6b, 0x1a, 0x12, 0x56, 0x7e, 0xfa, 0xcb, 0x34, 0x8a, 0x13, 0x3b, 0x79, 0xd4, 0x8d, 0xa7, 0xaa, 0xc7, 0x8d, 0x78, 0xee, 0x58, 0x9c, 0x2e, 0xc0, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3329 = { .name = "ecdsa_secp224r1_sha256_3329", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3329_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3329_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3329_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3330 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3330_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3330_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3330_sig[] = { 0x85, 0x6f, 0xf6, 0x3d, 0x77, 0x91, 0x63, 0xe7, 0x8f, 0xed, 0x8c, 0x48, 0x33, 0x0b, 0x48, 0xf0, 0x8b, 0xf9, 0x53, 0xa9, 0x52, 0x66, 0xb3, 0x85, 0x7e, 0xee, 0x91, 0xaa, 0xf4, 0xaa, 0x91, 0x7c, 0xd3, 0x7f, 0x55, 0x6c, 0x6d, 0xf9, 0xd0, 0x96, 0x0c, 0x2f, 0x7d, 0xaa, 0x7e, 0xa1, 0x18, 0xe5, 0xc3, 0x0c, 0xc4, 0x0c, 0xa1, 0xee, 0xd4, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3330 = { .name = "ecdsa_secp224r1_sha256_3330", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3330_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3330_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3330_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3331 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3331_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3331_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3331_sig[] = { 0xa9, 0xd7, 0x71, 0x6f, 0x04, 0xc5, 0xce, 0x24, 0x7f, 0x6b, 0x8c, 0x60, 0x8b, 0x37, 0xdb, 0x55, 0xf6, 0x8e, 0x2f, 0xf9, 0x4a, 0x58, 0x83, 0x86, 0x3e, 0x86, 0x77, 0x08, 0x61, 0xbc, 0x09, 0x3f, 0xaa, 0x6f, 0xb2, 0x5c, 0xd2, 0x40, 0xae, 0xa4, 0xb5, 0x6f, 0xed, 0x72, 0x8f, 0x7b, 0x36, 0x69, 0xb4, 0xdc, 0x84, 0xc4, 0x49, 0xd3, 0x8c, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3331 = { .name = "ecdsa_secp224r1_sha256_3331", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3331_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3331_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3331_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3332 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3332_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3332_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3332_sig[] = { 0xf6, 0xd0, 0x88, 0xfd, 0x3b, 0x9c, 0x98, 0x1a, 0xc4, 0x91, 0xc6, 0x20, 0x30, 0x64, 0x3b, 0xbd, 0x82, 0xd4, 0xf4, 0x58, 0x8e, 0x85, 0x17, 0xde, 0x58, 0x84, 0xe7, 0x3d, 0x77, 0x3e, 0xee, 0x47, 0x79, 0x80, 0x76, 0x3b, 0x1e, 0xa2, 0x7a, 0xe9, 0x98, 0xbd, 0xa0, 0x24, 0x4c, 0xb6, 0x7b, 0x07, 0xaa, 0x67, 0x79, 0xa3, 0x8c, 0xd2, 0xba, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3332 = { .name = "ecdsa_secp224r1_sha256_3332", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3332_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3332_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3332_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3333 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3333_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3333_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3333_sig[] = { 0xea, 0xcb, 0x55, 0x58, 0x8e, 0x44, 0x6b, 0xbf, 0x36, 0x87, 0x08, 0x9b, 0xa8, 0xba, 0x3b, 0x05, 0xcf, 0xef, 0x74, 0x58, 0xbb, 0x81, 0xb4, 0x27, 0x7f, 0x90, 0xa8, 0x53, 0x80, 0x39, 0xe8, 0x94, 0x4c, 0xc3, 0xdf, 0x7f, 0x4c, 0xe5, 0xba, 0xdc, 0x34, 0x99, 0x75, 0xd4, 0x71, 0xa8, 0x1d, 0xea, 0x14, 0xe9, 0xbc, 0xae, 0x30, 0x65, 0xd4, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3333 = { .name = "ecdsa_secp224r1_sha256_3333", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3333_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3333_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3333_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3334 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3334_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3334_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3334_sig[] = { 0x59, 0x84, 0xaf, 0x8c, 0x89, 0xfb, 0x9d, 0x59, 0x6a, 0x1f, 0x28, 0xfd, 0x3d, 0x41, 0xe4, 0x6f, 0x72, 0x05, 0xfe, 0x12, 0xfa, 0x63, 0x43, 0x7a, 0xc7, 0x9e, 0x7e, 0x81, 0x33, 0xb1, 0x6b, 0x74, 0x2d, 0x45, 0xf1, 0x8f, 0x88, 0xde, 0x27, 0x13, 0x07, 0x83, 0x84, 0xe6, 0x15, 0x0f, 0x06, 0xb8, 0xb9, 0x9f, 0x36, 0xab, 0x2c, 0xe3, 0xdd, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3334 = { .name = "ecdsa_secp224r1_sha256_3334", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3334_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3334_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3334_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3335 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3335_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3335_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3335_sig[] = { 0x3c, 0xda, 0x62, 0xd8, 0x47, 0x11, 0xc2, 0x62, 0xf7, 0x82, 0xd5, 0xc3, 0xa7, 0x9b, 0x56, 0x74, 0x85, 0x22, 0x7b, 0x34, 0xaf, 0xb8, 0x21, 0xf5, 0x24, 0x1b, 0x19, 0x61, 0xb6, 0x15, 0xce, 0xf3, 0x99, 0x70, 0x6f, 0xf7, 0x58, 0xf0, 0x72, 0x93, 0x18, 0x52, 0xb7, 0x17, 0xec, 0x89, 0x8e, 0x9a, 0x1e, 0x63, 0x39, 0xd0, 0xee, 0x81, 0xb8, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3335 = { .name = "ecdsa_secp224r1_sha256_3335", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3335_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3335_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3335_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3336 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3336_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3336_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3336_sig[] = { 0xe1, 0xdb, 0x73, 0x04, 0x60, 0x91, 0x91, 0xea, 0x1a, 0xc9, 0x11, 0x83, 0xff, 0xb3, 0x1d, 0xf5, 0x1b, 0x5b, 0x3f, 0xdc, 0x6b, 0x1a, 0x11, 0x29, 0xd8, 0x58, 0x18, 0xd6, 0x44, 0x18, 0x86, 0xd0, 0x03, 0xae, 0x80, 0xfb, 0xe7, 0x13, 0x9e, 0x1d, 0x02, 0x84, 0x5c, 0xd1, 0xbd, 0x95, 0x9f, 0x0d, 0xf1, 0x46, 0x8f, 0x58, 0x36, 0xdd, 0x6e, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3336 = { .name = "ecdsa_secp224r1_sha256_3336", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3336_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3336_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3336_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3337 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3337_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3337_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3337_sig[] = { 0x35, 0x45, 0xdc, 0x4a, 0x4e, 0xf8, 0x4b, 0xbb, 0x3a, 0x52, 0x6f, 0xf9, 0x29, 0xc9, 0x1a, 0xd2, 0x34, 0x51, 0x6a, 0x9e, 0x95, 0x45, 0x5a, 0xc8, 0xdb, 0x40, 0x12, 0xb1, 0xaf, 0x49, 0x92, 0x6f, 0x69, 0x3a, 0x7c, 0xf1, 0x1f, 0x71, 0xe1, 0x99, 0xf3, 0x82, 0xa8, 0xd6, 0x40, 0xc0, 0xc8, 0x5e, 0x46, 0xd9, 0x4e, 0xe2, 0x6e, 0x38, 0x43, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3337 = { .name = "ecdsa_secp224r1_sha256_3337", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3337_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3337_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3337_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3338 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3338_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3338_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3338_sig[] = { 0x0c, 0xca, 0xfd, 0xea, 0xe4, 0x58, 0x2c, 0x9d, 0xe6, 0x79, 0x5b, 0x2d, 0x09, 0xa7, 0xfc, 0x38, 0x48, 0xc7, 0x59, 0x04, 0xfa, 0x96, 0x09, 0x89, 0x15, 0x6c, 0xbb, 0xb9, 0xaf, 0x1f, 0x99, 0x4d, 0xa3, 0xe7, 0xd8, 0x9c, 0xc8, 0xaa, 0xa4, 0x46, 0x16, 0xcb, 0x77, 0xe3, 0xbe, 0x7a, 0x83, 0xcc, 0xec, 0xc9, 0x65, 0x77, 0x51, 0x94, 0xe5, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3338 = { .name = "ecdsa_secp224r1_sha256_3338", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3338_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3338_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3338_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3339 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3339_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3339_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3339_sig[] = { 0xa3, 0xb2, 0x14, 0x5d, 0x8c, 0x66, 0x90, 0x27, 0x53, 0x25, 0x01, 0xee, 0xa1, 0x91, 0x3a, 0xbb, 0x22, 0xa7, 0x8a, 0x82, 0x7f, 0xdd, 0x82, 0xfe, 0x9d, 0x6d, 0x37, 0x57, 0x9b, 0x2f, 0x1a, 0xe8, 0x4f, 0x56, 0x06, 0xd6, 0x86, 0x53, 0x06, 0x5f, 0x74, 0xe9, 0xd0, 0x89, 0x88, 0x66, 0x94, 0xc7, 0x39, 0xfb, 0xe3, 0xfd, 0x4a, 0x1b, 0x2b, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3339 = { .name = "ecdsa_secp224r1_sha256_3339", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3339_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3339_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3339_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3340 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3340_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3340_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3340_sig[] = { 0x9a, 0xac, 0x3a, 0x7e, 0x3d, 0x14, 0x23, 0x44, 0x99, 0x1b, 0xf1, 0x77, 0xb4, 0xf4, 0xdb, 0xfa, 0x07, 0x41, 0x48, 0xad, 0x9e, 0x20, 0xf2, 0x75, 0x55, 0xb5, 0x47, 0xd9, 0xf8, 0x30, 0xa3, 0xc7, 0xfd, 0xf2, 0x51, 0xd7, 0x9d, 0x41, 0x97, 0x7d, 0x28, 0xe6, 0xd9, 0xa7, 0x2a, 0x36, 0xdf, 0x11, 0xb8, 0x6e, 0x17, 0xc8, 0xdc, 0x3a, 0xca, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3340 = { .name = "ecdsa_secp224r1_sha256_3340", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3340_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3340_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3340_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3341 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3341_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3341_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3341_sig[] = { 0x47, 0x69, 0xfb, 0xa5, 0x54, 0xfd, 0x43, 0x60, 0x51, 0xc2, 0x85, 0xbd, 0xad, 0xfa, 0x33, 0xa4, 0x43, 0xd4, 0xf7, 0x08, 0x4d, 0xd5, 0x98, 0xce, 0x3b, 0x98, 0xb8, 0xfb, 0x0c, 0x01, 0x4c, 0x87, 0xcb, 0x14, 0x11, 0x3d, 0x75, 0x86, 0x4f, 0x74, 0x90, 0x5f, 0x75, 0xb3, 0x4f, 0x99, 0x70, 0xba, 0x58, 0xb5, 0xd0, 0x67, 0x60, 0x21, 0x82, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3341 = { .name = "ecdsa_secp224r1_sha256_3341", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3341_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3341_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3341_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3342 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3342_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3342_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3342_sig[] = { 0x8b, 0x91, 0xfc, 0x50, 0x54, 0xa7, 0x5c, 0x34, 0xa5, 0x08, 0x62, 0x4b, 0x85, 0x70, 0x8b, 0x3d, 0x25, 0xfa, 0x74, 0x32, 0x8c, 0x68, 0x74, 0x1c, 0x3a, 0xeb, 0x92, 0xd9, 0x15, 0x5e, 0x3e, 0x46, 0xb1, 0x20, 0x95, 0x83, 0x13, 0x5a, 0x9f, 0xef, 0x15, 0xab, 0xe3, 0x25, 0xb2, 0x5b, 0xd1, 0x92, 0x85, 0xee, 0x6b, 0x5b, 0x45, 0x49, 0x62, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3342 = { .name = "ecdsa_secp224r1_sha256_3342", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3342_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3342_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3342_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3343 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3343_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3343_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3343_sig[] = { 0xa4, 0xa2, 0xa8, 0x5f, 0xbb, 0x8b, 0xb2, 0x6c, 0x4d, 0x84, 0x5c, 0xfa, 0xc1, 0x91, 0xf8, 0x9d, 0x65, 0xb0, 0x0d, 0x3f, 0x1b, 0x94, 0x50, 0xd1, 0x77, 0xf7, 0x88, 0x90, 0x66, 0x05, 0xa4, 0x60, 0xe6, 0x04, 0x02, 0x68, 0x5c, 0x7a, 0x5a, 0xcc, 0xd2, 0x61, 0x5e, 0x92, 0x32, 0xe5, 0x19, 0x37, 0xbd, 0x83, 0xdf, 0xa3, 0x06, 0x5e, 0xab, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3343 = { .name = "ecdsa_secp224r1_sha256_3343", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3343_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3343_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3343_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3344 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3344_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3344_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3344_sig[] = { 0xa8, 0x9d, 0x33, 0x3a, 0xe3, 0x41, 0x87, 0x85, 0x5c, 0xf7, 0xfa, 0x43, 0x5f, 0xf3, 0x9b, 0xe6, 0xb7, 0xbb, 0x39, 0xb2, 0xd0, 0xce, 0x68, 0x21, 0x33, 0xad, 0x96, 0x46, 0x48, 0x3d, 0xcc, 0x89, 0xa3, 0xb4, 0x3b, 0xe2, 0x50, 0xf5, 0xc3, 0xf7, 0x8f, 0x78, 0x41, 0x8e, 0x7b, 0x83, 0x41, 0xa8, 0xbc, 0xfb, 0x93, 0xdf, 0xd5, 0x8e, 0x46, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3344 = { .name = "ecdsa_secp224r1_sha256_3344", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3344_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3344_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3344_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3345 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3345_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3345_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3345_sig[] = { 0x2d, 0x0f, 0x99, 0xc7, 0x19, 0x33, 0xc8, 0x2d, 0xed, 0x54, 0x4e, 0xf4, 0xfa, 0xac, 0x9d, 0x66, 0x9e, 0x43, 0x7d, 0xea, 0x13, 0xb5, 0x71, 0x86, 0xf4, 0xc2, 0x0a, 0x0e, 0xd9, 0x68, 0x2b, 0x9f, 0x3a, 0x05, 0xd7, 0x83, 0x29, 0x47, 0xbc, 0x45, 0xea, 0xdb, 0xc7, 0x42, 0xd9, 0x6e, 0x7a, 0xb1, 0x12, 0x48, 0x32, 0xdd, 0xb7, 0xa8, 0xc6, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3345 = { .name = "ecdsa_secp224r1_sha256_3345", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3345_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3345_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3345_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3346 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3346_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3346_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3346_sig[] = { 0x84, 0x02, 0x08, 0xf7, 0xc4, 0x1b, 0x1f, 0xba, 0xdc, 0xc7, 0x01, 0xfb, 0x3a, 0x1d, 0x0f, 0x98, 0xa3, 0xe2, 0xa7, 0x52, 0x35, 0xe6, 0x95, 0xbf, 0xd3, 0x78, 0xf8, 0xb4, 0x44, 0xc8, 0xda, 0xad, 0x4e, 0xfc, 0x03, 0xe1, 0x75, 0x38, 0x03, 0xc3, 0x62, 0xb4, 0x09, 0xc3, 0xca, 0x6e, 0x0f, 0x21, 0xe5, 0x38, 0xfe, 0x3a, 0x36, 0x4c, 0x0e, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3346 = { .name = "ecdsa_secp224r1_sha256_3346", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3346_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3346_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3346_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3347 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3347_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3347_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3347_sig[] = { 0x87, 0xcc, 0x58, 0x2c, 0xb1, 0x06, 0x02, 0x11, 0x05, 0x66, 0xfc, 0xb1, 0x0a, 0x23, 0x3a, 0xed, 0xe9, 0x93, 0xfa, 0xe5, 0xfb, 0x3f, 0x81, 0xb0, 0xbb, 0xff, 0x94, 0xca, 0xc9, 0x71, 0xc0, 0x5b, 0xd5, 0x1d, 0x96, 0x85, 0x82, 0x5b, 0x2c, 0xfc, 0x0a, 0x25, 0x96, 0xc7, 0xf8, 0x0d, 0x9f, 0x9d, 0xc6, 0x8c, 0x28, 0xc1, 0x59, 0xaa, 0x39, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3347 = { .name = "ecdsa_secp224r1_sha256_3347", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3347_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3347_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3347_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3348 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3348_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3348_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3348_sig[] = { 0x50, 0xd7, 0x3d, 0x94, 0x9b, 0x3a, 0xdc, 0xd3, 0xe8, 0xfa, 0x94, 0xda, 0xfe, 0xfa, 0xf9, 0xd2, 0x63, 0xeb, 0xc7, 0x02, 0x12, 0x8d, 0x89, 0x1a, 0xfa, 0xc4, 0x7e, 0xa7, 0xf8, 0x42, 0x3c, 0x37, 0x8f, 0x01, 0x90, 0x57, 0x49, 0x25, 0x14, 0x2e, 0xb5, 0xb9, 0x7c, 0x61, 0x2a, 0xbf, 0xa0, 0x48, 0xfa, 0x3a, 0xb5, 0x37, 0x5e, 0xc7, 0x95, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3348 = { .name = "ecdsa_secp224r1_sha256_3348", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3348_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3348_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3348_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3349 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3349_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3349_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3349_sig[] = { 0xd6, 0x08, 0x91, 0x5d, 0xfc, 0xd5, 0xd3, 0xc6, 0x3e, 0xd1, 0x0d, 0x0d, 0x9b, 0x61, 0x4f, 0x7a, 0x86, 0x6f, 0x88, 0x58, 0xa6, 0xe5, 0x9d, 0xc0, 0x3e, 0xb0, 0xa8, 0xee, 0x8e, 0x70, 0x1a, 0xa0, 0xba, 0xb4, 0x91, 0x43, 0x0f, 0x6e, 0x4d, 0xa9, 0x22, 0x44, 0xb0, 0xbb, 0x17, 0x49, 0x57, 0xee, 0x6f, 0x49, 0x5b, 0xc5, 0xd1, 0x5f, 0xab, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3349 = { .name = "ecdsa_secp224r1_sha256_3349", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3349_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3349_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3349_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3350 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3350_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3350_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3350_sig[] = { 0xc8, 0x7b, 0x0a, 0xb8, 0x42, 0xc4, 0x76, 0x9e, 0xd9, 0x4b, 0x91, 0x0b, 0xd7, 0x71, 0x96, 0x91, 0xf9, 0x99, 0x1b, 0xc5, 0xa3, 0x47, 0x88, 0x96, 0x08, 0xf0, 0x70, 0x34, 0xd0, 0x83, 0x11, 0x10, 0x48, 0xd6, 0xe0, 0x19, 0x77, 0x1f, 0xc2, 0x66, 0x9c, 0x55, 0x15, 0x6a, 0x3d, 0x09, 0x61, 0x5a, 0x6b, 0x2d, 0x9c, 0xae, 0x52, 0xdd, 0xab, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3350 = { .name = "ecdsa_secp224r1_sha256_3350", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3350_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3350_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3350_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3351 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3351_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3351_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3351_sig[] = { 0x0a, 0x1c, 0x2c, 0x24, 0x78, 0xe2, 0x44, 0x46, 0x42, 0x26, 0xc6, 0x60, 0xed, 0xf7, 0x24, 0xdb, 0x12, 0x13, 0xf4, 0x92, 0x3e, 0xb7, 0x25, 0xd6, 0x11, 0xd9, 0x76, 0xfd, 0x76, 0x4e, 0x55, 0x18, 0x6a, 0x76, 0xf7, 0x34, 0x89, 0x1d, 0x05, 0xfb, 0x57, 0xaf, 0x27, 0x27, 0xfa, 0xb8, 0xfb, 0xea, 0x68, 0x4c, 0xa4, 0x32, 0x1d, 0x5d, 0xe5, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3351 = { .name = "ecdsa_secp224r1_sha256_3351", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3351_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3351_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3351_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3352 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3352_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3352_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha256_3352_sig[] = { 0x8a, 0x27, 0x47, 0xc5, 0xdd, 0x9e, 0xf5, 0x29, 0x8b, 0x8a, 0xea, 0xbd, 0x2f, 0xb3, 0xa2, 0xbe, 0xb1, 0x61, 0x58, 0xfb, 0x2c, 0xc6, 0x2b, 0xe9, 0xe5, 0x1b, 0x21, 0x52, 0xf9, 0x62, 0x51, 0xbc, 0x04, 0x8b, 0xca, 0xd8, 0x32, 0xe6, 0xcb, 0xc0, 0x9c, 0x9c, 0x2e, 0x58, 0x5a, 0xb7, 0x54, 0x3d, 0xc5, 0x52, 0xea, 0xa5, 0x12, 0x5b, 0xe0, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3352 = { .name = "ecdsa_secp224r1_sha256_3352", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3352_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3352_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3352_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3353 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3353_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3353_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3353_sig[] = { 0xd9, 0xea, 0xc3, 0x2a, 0x73, 0x4f, 0x3a, 0x3e, 0x5b, 0x5a, 0x29, 0x05, 0xbe, 0xd8, 0x16, 0x4e, 0xf4, 0xc6, 0xcd, 0x24, 0xd5, 0xc0, 0xfc, 0x54, 0xcc, 0x83, 0xf3, 0xcc, 0xa7, 0x84, 0x93, 0x0d, 0x16, 0xc3, 0xb7, 0x53, 0xbb, 0x3e, 0xd9, 0x15, 0x1d, 0x58, 0x3c, 0x50, 0xff, 0x97, 0xbc, 0x97, 0x62, 0x74, 0xbd, 0xe4, 0x82, 0xfb, 0x96, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3353 = { .name = "ecdsa_secp224r1_sha256_3353", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3353_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3353_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3353_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3354 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3354_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3354_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3354_sig[] = { 0x6c, 0x40, 0xc6, 0xb1, 0x5a, 0xe5, 0x73, 0xf7, 0x7b, 0x67, 0x7c, 0xd8, 0x78, 0xcc, 0x5e, 0x4d, 0xa8, 0x17, 0x1c, 0xf5, 0x0d, 0x79, 0x97, 0x4f, 0xde, 0x37, 0x4e, 0x00, 0xc8, 0x8c, 0x98, 0x28, 0x03, 0x7b, 0xf7, 0x01, 0x3a, 0x14, 0x15, 0x53, 0x7c, 0xa0, 0x74, 0xd6, 0xc8, 0xa5, 0x53, 0xbd, 0xb4, 0xb2, 0x6b, 0x14, 0xa7, 0xe8, 0x8d, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3354 = { .name = "ecdsa_secp224r1_sha256_3354", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3354_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3354_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3354_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3355 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3355_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3355_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3355_sig[] = { 0xdc, 0xa0, 0xaa, 0xa0, 0xa3, 0x95, 0x39, 0x31, 0x42, 0xb3, 0x23, 0xed, 0xce, 0xd0, 0x93, 0x72, 0x76, 0x03, 0x50, 0xf2, 0xab, 0x26, 0x1c, 0xe3, 0x33, 0x9b, 0x11, 0x4d, 0x09, 0x83, 0xbf, 0x6e, 0x51, 0x0c, 0xe7, 0xf0, 0xa7, 0x52, 0x0f, 0x2b, 0x7c, 0x60, 0xcd, 0x68, 0xa4, 0x91, 0x2b, 0x78, 0x16, 0x2c, 0x7a, 0xc3, 0x37, 0x89, 0xe0, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3355 = { .name = "ecdsa_secp224r1_sha256_3355", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3355_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3355_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3355_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3356 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3356_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3356_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3356_sig[] = { 0xa0, 0x52, 0x6e, 0xd4, 0x7e, 0x26, 0x07, 0xe6, 0xba, 0xe6, 0xdc, 0xf3, 0xb8, 0xf5, 0x4f, 0x4e, 0x06, 0x38, 0x02, 0x36, 0x73, 0xa3, 0x8c, 0xad, 0x45, 0x69, 0xc3, 0xba, 0x61, 0x51, 0x6f, 0x55, 0x74, 0x6b, 0x37, 0x9d, 0x11, 0xcb, 0xaa, 0x02, 0xce, 0xf3, 0x53, 0x11, 0xd7, 0x77, 0x1a, 0x47, 0xd1, 0xe1, 0x27, 0xcf, 0xf4, 0x6d, 0xcf, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3356 = { .name = "ecdsa_secp224r1_sha256_3356", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3356_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3356_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3356_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3357 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3357_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3357_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3357_sig[] = { 0x5c, 0x00, 0xdb, 0x60, 0x17, 0x8c, 0x83, 0x61, 0x09, 0x2b, 0xdf, 0xb4, 0x7f, 0xc9, 0xa4, 0x7b, 0x33, 0x36, 0x3d, 0x7e, 0x0d, 0x76, 0xe3, 0x25, 0x20, 0xf7, 0x96, 0x57, 0xe1, 0xba, 0xf7, 0xae, 0x7d, 0x81, 0x04, 0x57, 0x93, 0xc7, 0x31, 0x73, 0xf4, 0x9d, 0x60, 0xbd, 0xfc, 0x87, 0x79, 0x94, 0x27, 0x95, 0xd9, 0xd0, 0x82, 0xb3, 0xca, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3357 = { .name = "ecdsa_secp224r1_sha256_3357", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3357_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3357_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3357_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3358 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3358_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3358_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3358_sig[] = { 0x46, 0xf6, 0x9b, 0x6a, 0x99, 0x71, 0x79, 0x49, 0xee, 0xe7, 0x40, 0x92, 0xa0, 0xc1, 0x43, 0x8a, 0x29, 0x0a, 0x2c, 0xd8, 0x2f, 0xe1, 0xe1, 0x0d, 0x8f, 0x37, 0xe8, 0x8b, 0x99, 0xa5, 0xf5, 0x9f, 0x09, 0xbd, 0x98, 0x0a, 0x06, 0x62, 0x33, 0x52, 0x33, 0x97, 0x84, 0x69, 0x87, 0xa8, 0xa1, 0xbf, 0xdd, 0xe3, 0x55, 0x06, 0x2d, 0x14, 0x0a, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3358 = { .name = "ecdsa_secp224r1_sha256_3358", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3358_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3358_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3358_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3359 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3359_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3359_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3359_sig[] = { 0xe6, 0x43, 0xd8, 0x08, 0x5a, 0x22, 0x70, 0x6f, 0xa0, 0xe6, 0x54, 0x0f, 0x3d, 0x5e, 0x16, 0x9a, 0xd8, 0xcc, 0x49, 0xb4, 0xbf, 0xe9, 0x8e, 0x32, 0x53, 0x21, 0xc7, 0x05, 0xf9, 0x5b, 0xd4, 0x23, 0xf9, 0xca, 0xfe, 0x0c, 0xed, 0xfe, 0xc6, 0xfd, 0x97, 0x87, 0x15, 0x36, 0xd7, 0x1b, 0x2a, 0xc5, 0x8d, 0xfb, 0x2f, 0x7a, 0xb8, 0x95, 0x2d, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3359 = { .name = "ecdsa_secp224r1_sha256_3359", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3359_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3359_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3359_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3360 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3360_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3360_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3360_sig[] = { 0xe6, 0x5f, 0xb9, 0xbc, 0xdd, 0x79, 0x1f, 0x14, 0x1c, 0xcf, 0xf2, 0xb3, 0xcf, 0xbf, 0x45, 0xd8, 0x4f, 0x8c, 0x62, 0x72, 0x02, 0x1a, 0x68, 0xdd, 0xe8, 0xc3, 0x6b, 0xc8, 0xdf, 0x6e, 0x08, 0xc7, 0x4b, 0x5e, 0x36, 0xb7, 0x77, 0x26, 0x58, 0xf0, 0x25, 0x15, 0xae, 0x0e, 0xa8, 0x13, 0xb6, 0x4d, 0xf2, 0x4f, 0x35, 0x22, 0xea, 0x15, 0xfb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3360 = { .name = "ecdsa_secp224r1_sha256_3360", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3360_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3360_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3360_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3361 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3361_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3361_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha256_3361_sig[] = { 0xa4, 0x76, 0xd4, 0x68, 0x22, 0x1e, 0xf5, 0x56, 0x11, 0xe8, 0xa7, 0x24, 0xc9, 0xb4, 0xcd, 0x79, 0xc3, 0x4f, 0x69, 0x40, 0xd5, 0xf6, 0x65, 0xe3, 0x33, 0x5f, 0x62, 0x31, 0xbf, 0xdd, 0xc1, 0x8e, 0x7a, 0x00, 0x8b, 0xc2, 0x06, 0xc8, 0xe1, 0xca, 0x6c, 0x87, 0x83, 0x63, 0xe4, 0x13, 0x85, 0x08, 0xe0, 0xc3, 0xa8, 0x4a, 0x27, 0xea, 0xbe, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3361 = { .name = "ecdsa_secp224r1_sha256_3361", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3361_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3361_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3361_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3362 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3362_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3362_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha256_3362_sig[] = { 0x1b, 0x39, 0x34, 0x77, 0x94, 0x18, 0x79, 0x27, 0x18, 0x73, 0xa8, 0xc0, 0x43, 0xa7, 0x7c, 0xaa, 0xdb, 0x99, 0x57, 0xfc, 0xdd, 0x26, 0x3a, 0x6a, 0xc9, 0x78, 0xe4, 0xba, 0x27, 0x00, 0x60, 0xd5, 0xf3, 0x56, 0xeb, 0xb6, 0xd1, 0x85, 0x77, 0x2b, 0xaa, 0x78, 0xb8, 0x78, 0xaf, 0x68, 0x07, 0x37, 0x8e, 0x0d, 0x5c, 0x53, 0x2d, 0xa0, 0xa4, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3362 = { .name = "ecdsa_secp224r1_sha256_3362", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3362_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3362_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3362_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3363 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3363_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3363_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3363_sig[] = { 0xb2, 0xed, 0xa8, 0xc9, 0x69, 0xd4, 0xb1, 0xbd, 0xd3, 0x18, 0x67, 0xfd, 0x1f, 0x92, 0xd5, 0x47, 0xb4, 0x06, 0x84, 0x0c, 0x25, 0x7f, 0x2f, 0x80, 0xdf, 0xbd, 0xc4, 0xe3, 0xe6, 0x29, 0x7b, 0x05, 0x9c, 0xe6, 0x4e, 0xf0, 0x4d, 0xe9, 0x71, 0x5a, 0x8f, 0x68, 0x6a, 0x9f, 0x73, 0x98, 0x08, 0x65, 0x06, 0x6a, 0x94, 0x97, 0x5b, 0x7f, 0x81, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3363 = { .name = "ecdsa_secp224r1_sha256_3363", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3363_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3363_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3363_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3364 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3364_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3364_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3364_sig[] = { 0x93, 0x81, 0x89, 0xa1, 0x8a, 0x4b, 0xff, 0x57, 0x12, 0xac, 0x99, 0xc2, 0xb8, 0xe9, 0x2c, 0x21, 0x8a, 0xf3, 0xe4, 0xd4, 0xe3, 0xa8, 0x4b, 0x90, 0x6b, 0x0f, 0x70, 0x4e, 0x7b, 0xb3, 0xe5, 0x38, 0xf0, 0xb7, 0x06, 0x64, 0xda, 0xd4, 0x62, 0xab, 0x14, 0xb0, 0xed, 0x41, 0x6c, 0x86, 0xac, 0x6e, 0x90, 0x60, 0xfe, 0x76, 0x0d, 0xab, 0xb7, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3364 = { .name = "ecdsa_secp224r1_sha256_3364", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3364_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3364_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3364_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3365 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3365_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3365_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3365_sig[] = { 0xbb, 0x7c, 0x1d, 0x81, 0x20, 0xd2, 0xaa, 0x77, 0x65, 0xb1, 0x6e, 0xea, 0xc4, 0x42, 0x82, 0xde, 0x60, 0x5f, 0xb2, 0xa1, 0x66, 0x56, 0x57, 0xde, 0xa4, 0x49, 0x29, 0x35, 0xe0, 0xa8, 0xad, 0xb3, 0xa1, 0x43, 0x88, 0x3f, 0x98, 0x1e, 0xa1, 0x32, 0x3f, 0xa6, 0xf1, 0xd3, 0x47, 0x84, 0x5b, 0xe2, 0xb8, 0xdc, 0xc6, 0xcd, 0x5c, 0xc9, 0x3e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3365 = { .name = "ecdsa_secp224r1_sha256_3365", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3365_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3365_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3365_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3366 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3366_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3366_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3366_sig[] = { 0x74, 0xa4, 0xc5, 0x1d, 0xd6, 0x0c, 0x71, 0x18, 0x46, 0x7b, 0xe2, 0x96, 0x52, 0x06, 0x0f, 0x39, 0xaf, 0x94, 0xf8, 0xc0, 0xeb, 0x7f, 0x15, 0xc6, 0x47, 0x71, 0x01, 0x0c, 0x61, 0x02, 0xec, 0x0c, 0x92, 0x57, 0xe6, 0x07, 0xaf, 0x3f, 0x3f, 0xf7, 0x49, 0x0b, 0x54, 0xe7, 0x81, 0x11, 0xf4, 0x22, 0xbe, 0xc1, 0x1b, 0xa0, 0x12, 0x77, 0x17, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3366 = { .name = "ecdsa_secp224r1_sha256_3366", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3366_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3366_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha256_3366_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3367 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3367_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3367_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3367_sig[] = { 0x62, 0x5d, 0xa1, 0x8d, 0x67, 0x6f, 0x02, 0xfa, 0xe9, 0xdb, 0xcb, 0x30, 0x92, 0x26, 0x59, 0x09, 0x48, 0x8f, 0xb9, 0x5d, 0x66, 0x25, 0x69, 0xd7, 0x74, 0x6b, 0x96, 0x87, 0xc4, 0xf1, 0xec, 0x83, 0x1e, 0x36, 0x60, 0x4d, 0x60, 0x4b, 0x63, 0x0f, 0xd0, 0xb1, 0x99, 0x9c, 0xd0, 0x99, 0x60, 0x86, 0x22, 0x94, 0x25, 0x1d, 0x85, 0xe5, 0x87, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3367 = { .name = "ecdsa_secp224r1_sha256_3367", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3367_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3367_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha256_3367_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3368 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3368_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3368_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3368_sig[] = { 0x8e, 0xe0, 0xd4, 0xa3, 0x1f, 0xd1, 0xc4, 0xd8, 0x54, 0xd7, 0x5c, 0x14, 0x15, 0x19, 0x26, 0x89, 0x9d, 0xde, 0x1c, 0x73, 0x32, 0xfd, 0x47, 0x69, 0x44, 0x3d, 0x21, 0x3d, 0x4b, 0x82, 0x78, 0xb8, 0x9b, 0xa4, 0xf8, 0xfb, 0xd7, 0xdc, 0xc6, 0xaf, 0xfe, 0x4c, 0x12, 0x15, 0x6f, 0x74, 0x09, 0x90, 0x94, 0x16, 0x98, 0x96, 0x85, 0xdd, 0x5a, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3368 = { .name = "ecdsa_secp224r1_sha256_3368", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3368_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3368_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3368_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3369 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3369_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3369_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3369_sig[] = { 0xbd, 0xde, 0x45, 0xfc, 0x9e, 0xbb, 0x37, 0x49, 0xc9, 0xfb, 0x2c, 0x25, 0xbf, 0x02, 0xe2, 0xa2, 0x17, 0xcc, 0xc1, 0x12, 0xf8, 0xe6, 0x54, 0x99, 0xee, 0xff, 0xb6, 0xa1, 0xbe, 0xcd, 0x6b, 0x88, 0xef, 0x2b, 0xee, 0x87, 0x2e, 0xbc, 0x0e, 0x2b, 0x80, 0x5a, 0x56, 0x06, 0x6e, 0x19, 0x17, 0x9f, 0xce, 0x9f, 0x0d, 0xc0, 0xdf, 0x3f, 0x63, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3369 = { .name = "ecdsa_secp224r1_sha256_3369", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3369_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3369_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3369_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3370 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3370_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3370_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha256_3370_sig[] = { 0x50, 0x18, 0x6e, 0x02, 0x3a, 0x1f, 0x50, 0x53, 0xfc, 0xb4, 0xd0, 0x47, 0x30, 0x39, 0xb1, 0xb2, 0xcd, 0xeb, 0xa5, 0x69, 0x71, 0x9a, 0x4e, 0xba, 0xbd, 0xd6, 0x75, 0xc8, 0xf8, 0xfb, 0x89, 0x3c, 0x1b, 0x6b, 0x5b, 0x82, 0x7b, 0x5f, 0x3f, 0x4b, 0xb5, 0xea, 0xb7, 0x5b, 0x62, 0x12, 0xbb, 0x56, 0xa5, 0xa3, 0x9b, 0xb3, 0x5c, 0x12, 0x7a, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3370 = { .name = "ecdsa_secp224r1_sha256_3370", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3370_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3370_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3370_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3371 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3371_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3371_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3371_sig[] = { 0xd3, 0xb4, 0x54, 0x63, 0x9b, 0x0f, 0xb3, 0xda, 0x93, 0xb2, 0x0d, 0x55, 0xbe, 0x86, 0x09, 0xe4, 0x09, 0x02, 0xcb, 0x4a, 0x60, 0x8f, 0x3b, 0x90, 0x64, 0xc0, 0xde, 0xb7, 0xec, 0x7a, 0xa9, 0x63, 0x7f, 0xd7, 0x1b, 0x54, 0x3e, 0x52, 0x43, 0xfa, 0xab, 0x4c, 0x7a, 0x2e, 0xdc, 0x2c, 0x48, 0xe9, 0x82, 0xc5, 0xac, 0x01, 0x78, 0x07, 0xf1, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3371 = { .name = "ecdsa_secp224r1_sha256_3371", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3371_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3371_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3371_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3372 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3372_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3372_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3372_sig[] = { 0xc2, 0x02, 0xab, 0xbd, 0x98, 0xe0, 0x38, 0x09, 0xde, 0x84, 0x2b, 0xde, 0xf2, 0x68, 0xa1, 0xc6, 0x16, 0xa7, 0x30, 0x6d, 0xa6, 0x9a, 0x87, 0xab, 0xaf, 0x03, 0x16, 0x9c, 0x7e, 0x7e, 0x04, 0x82, 0x3a, 0xf8, 0xed, 0x68, 0x36, 0xfd, 0x2a, 0xc0, 0x11, 0xe4, 0x7d, 0xe8, 0xe1, 0xbe, 0xf9, 0x1e, 0xd1, 0xda, 0x51, 0x44, 0x89, 0x3f, 0xc2, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3372 = { .name = "ecdsa_secp224r1_sha256_3372", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3372_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3372_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3372_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3373 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3373_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3373_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3373_sig[] = { 0x2e, 0x4b, 0x76, 0x63, 0x88, 0x16, 0xcc, 0xe0, 0x57, 0xa4, 0xa2, 0x7a, 0x49, 0x25, 0x8d, 0xcb, 0x54, 0x37, 0xae, 0x97, 0x73, 0x9f, 0x27, 0xeb, 0xc0, 0x97, 0x3c, 0x0b, 0xe9, 0xf6, 0xc0, 0xb6, 0x4e, 0x76, 0x4a, 0xd3, 0x9d, 0xd9, 0x2b, 0x57, 0x6e, 0x11, 0xc2, 0x3e, 0x59, 0x94, 0xb0, 0x20, 0x95, 0xcb, 0x2a, 0x47, 0x20, 0xc8, 0x66, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3373 = { .name = "ecdsa_secp224r1_sha256_3373", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3373_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3373_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3373_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3374 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3374_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3374_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3374_sig[] = { 0x7e, 0x0f, 0x48, 0x76, 0x10, 0x89, 0xaa, 0x4c, 0x7e, 0xcd, 0x5a, 0x7a, 0xc5, 0x38, 0x08, 0x36, 0xb1, 0xe5, 0xd3, 0x81, 0xd3, 0x40, 0x01, 0x74, 0xd1, 0x5d, 0xf9, 0x8b, 0x0c, 0x3d, 0xf5, 0x00, 0x60, 0xe3, 0xa6, 0x71, 0x4a, 0xa5, 0x65, 0xa3, 0x3d, 0x78, 0x4e, 0x7b, 0x16, 0xac, 0x87, 0xbe, 0xbf, 0xb3, 0xc2, 0x25, 0x5c, 0xfd, 0x83, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3374 = { .name = "ecdsa_secp224r1_sha256_3374", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3374_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3374_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3374_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3375 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3375_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3375_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha256_3375_sig[] = { 0x4d, 0x6f, 0x74, 0x08, 0x50, 0x8e, 0xb0, 0x81, 0x4d, 0xcd, 0x48, 0x00, 0x7f, 0x0e, 0xfd, 0x9e, 0x2b, 0x91, 0xcd, 0xac, 0x40, 0x30, 0x54, 0x0c, 0xc6, 0x78, 0xde, 0x19, 0x1e, 0x74, 0xf8, 0xdc, 0x34, 0xd1, 0x36, 0x13, 0xef, 0x42, 0x46, 0x2f, 0xe8, 0x89, 0x81, 0xcb, 0xe2, 0x48, 0x9b, 0xe1, 0x0e, 0x4c, 0xda, 0xe9, 0x75, 0xa1, 0xb3, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3375 = { .name = "ecdsa_secp224r1_sha256_3375", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3375_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3375_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3375_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3376 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3376_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3376_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha256_3376_sig[] = { 0x96, 0x7f, 0x2c, 0x5d, 0x30, 0x4c, 0x79, 0x32, 0xea, 0xaa, 0x16, 0x82, 0x19, 0x79, 0x45, 0xe6, 0x6c, 0xc9, 0x12, 0xb7, 0x03, 0x82, 0x47, 0x76, 0xef, 0x16, 0xad, 0x7a, 0x73, 0x95, 0x70, 0x01, 0xd9, 0x03, 0x7c, 0x63, 0xd6, 0x47, 0x1c, 0x80, 0x9a, 0x23, 0x88, 0x38, 0x3a, 0xd6, 0x95, 0x13, 0x7c, 0x62, 0x2c, 0xd5, 0xf5, 0x58, 0x44, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3376 = { .name = "ecdsa_secp224r1_sha256_3376", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3376_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3376_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha256_3376_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3377 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3377_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3377_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha256_3377_sig[] = { 0x49, 0x26, 0x08, 0x04, 0xbb, 0x2c, 0xea, 0xe4, 0xb9, 0xce, 0xe6, 0x3b, 0x02, 0xea, 0x60, 0x17, 0x3e, 0xc3, 0xf4, 0xf9, 0x01, 0x67, 0x62, 0x7c, 0x0b, 0xb3, 0x98, 0x88, 0xc9, 0xeb, 0x02, 0x2f, 0x96, 0xdb, 0x3e, 0x90, 0xfe, 0x0f, 0xf6, 0x17, 0x73, 0x0a, 0x62, 0x9f, 0x34, 0x2e, 0x02, 0xfb, 0x20, 0x8d, 0x68, 0x36, 0xcb, 0xbd, 0xc7, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3377 = { .name = "ecdsa_secp224r1_sha256_3377", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3377_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3377_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha256_3377_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3378 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3378_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha256_3378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3378_sig[] = { 0xf3, 0xe7, 0x12, 0x59, 0x7a, 0x4b, 0x22, 0x63, 0x2c, 0x5f, 0x8e, 0xb9, 0xf2, 0x84, 0x58, 0x82, 0xbb, 0x03, 0xa1, 0x39, 0x73, 0x5f, 0x80, 0xaf, 0x88, 0x26, 0xfc, 0x56, 0x62, 0x86, 0x5b, 0xd9, 0x1c, 0x09, 0x03, 0x51, 0x1a, 0x48, 0x1d, 0x60, 0x7e, 0xb6, 0xb5, 0xfe, 0x28, 0xf6, 0xf6, 0xc8, 0x92, 0x95, 0x68, 0x1a, 0x3e, 0x8d, 0x55, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3378 = { .name = "ecdsa_secp224r1_sha256_3378", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3378_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3378_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3378_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 285 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3379 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3379_pubkey[] = { 0x93, 0xb4, 0xc2, 0x8f, 0x03, 0x2d, 0x00, 0xf8, 0x0e, 0x77, 0x49, 0x1e, 0xdc, 0x15, 0x83, 0x59, 0x90, 0x9e, 0xe9, 0xe3, 0x0a, 0x73, 0x27, 0xb7, 0x42, 0x19, 0xe5, 0xe2, 0x48, 0x2c, 0x19, 0xae, 0x35, 0xcb, 0x28, 0xaf, 0xc9, 0xb9, 0x5c, 0xa1, 0xed, 0x7a, 0xd9, 0x1c, 0x81, 0x2d, 0x5f, 0xcc, 0xeb, 0x4b, 0xed, 0xdb, 0xf1, 0xa1, 0x6d, 0x92, }; static const unsigned char ecdsa_secp224r1_sha256_3379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3379_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3379 = { .name = "ecdsa_secp224r1_sha256_3379", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3379_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3379_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3379_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 286 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3380 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3380_pubkey[] = { 0x93, 0xb4, 0xc2, 0x8f, 0x03, 0x2d, 0x00, 0xf8, 0x0e, 0x77, 0x49, 0x1e, 0xdc, 0x15, 0x83, 0x59, 0x90, 0x9e, 0xe9, 0xe3, 0x0a, 0x73, 0x27, 0xb7, 0x42, 0x19, 0xe5, 0xe2, 0x48, 0x2c, 0x19, 0xae, 0x35, 0xcb, 0x28, 0xaf, 0xc9, 0xb9, 0x5c, 0xa1, 0xed, 0x7a, 0xd9, 0x1c, 0x81, 0x2d, 0x5f, 0xcc, 0xeb, 0x4b, 0xed, 0xdb, 0xf1, 0xa1, 0x6d, 0x92, }; static const unsigned char ecdsa_secp224r1_sha256_3380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3380_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3380 = { .name = "ecdsa_secp224r1_sha256_3380", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3380_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3380_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3380_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 287 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3381 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3381_pubkey[] = { 0xda, 0x92, 0x7f, 0x4b, 0xa8, 0x8b, 0x63, 0x9b, 0xf5, 0x33, 0x42, 0x21, 0xd2, 0xf5, 0x4d, 0x8e, 0xf9, 0xcc, 0xc1, 0xa1, 0x12, 0x5f, 0xad, 0x18, 0xc7, 0xbf, 0xb7, 0x89, 0xac, 0x51, 0xae, 0x53, 0xde, 0x6d, 0x83, 0x4a, 0x9d, 0xb3, 0x94, 0x7b, 0x8d, 0xd4, 0xc6, 0xac, 0x2b, 0x08, 0x4b, 0x85, 0x49, 0x6b, 0xfa, 0x72, 0xd8, 0x6b, 0x69, 0x48, }; static const unsigned char ecdsa_secp224r1_sha256_3381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3381_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3381 = { .name = "ecdsa_secp224r1_sha256_3381", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3381_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3381_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3381_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 288 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3382 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3382_pubkey[] = { 0x20, 0x88, 0x8e, 0x1c, 0x0f, 0x56, 0x94, 0xc4, 0xc0, 0x36, 0x3b, 0x36, 0x48, 0x2b, 0xeb, 0x6e, 0x1e, 0x66, 0x49, 0xb3, 0xd3, 0xb2, 0x6f, 0x12, 0x7f, 0xeb, 0xb6, 0xfc, 0xde, 0x00, 0xc2, 0xf3, 0xd8, 0xe4, 0xa7, 0xe8, 0xa0, 0xba, 0xfd, 0x41, 0x7c, 0x96, 0xd3, 0xe8, 0x1c, 0x97, 0x59, 0x46, 0xa2, 0xf3, 0x68, 0x6a, 0xa3, 0x9d, 0x35, 0xf1, }; static const unsigned char ecdsa_secp224r1_sha256_3382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3382_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3382 = { .name = "ecdsa_secp224r1_sha256_3382", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3382_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3382_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3382_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 289 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3383 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3383_pubkey[] = { 0x95, 0x45, 0xc8, 0x6f, 0x03, 0x2c, 0x5d, 0xf2, 0x55, 0xa4, 0x49, 0x0b, 0xb0, 0xb8, 0x3e, 0xca, 0x20, 0x11, 0x81, 0x79, 0x2a, 0xd7, 0x42, 0x46, 0x87, 0x4d, 0xb2, 0x29, 0x40, 0x52, 0x64, 0xc2, 0x83, 0x06, 0x33, 0x27, 0xb7, 0x0f, 0x4c, 0x2b, 0xe5, 0xab, 0x4d, 0x2e, 0x94, 0x07, 0xb8, 0x66, 0xe1, 0x21, 0xd6, 0x14, 0x5d, 0x12, 0x4c, 0x04, }; static const unsigned char ecdsa_secp224r1_sha256_3383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3383_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3383 = { .name = "ecdsa_secp224r1_sha256_3383", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3383_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3383_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3383_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 290 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3384 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3384_pubkey[] = { 0x57, 0x9d, 0x53, 0xf3, 0x9d, 0x51, 0x09, 0xbd, 0x44, 0x0e, 0x3e, 0x3e, 0x7e, 0xfd, 0x60, 0x37, 0x40, 0x96, 0x33, 0x48, 0xff, 0x9c, 0x72, 0xc0, 0x3b, 0x0f, 0xe6, 0xb8, 0xdf, 0x02, 0xf1, 0x33, 0xec, 0xd6, 0x0b, 0x07, 0x2a, 0x08, 0x12, 0xad, 0xc7, 0x52, 0x70, 0x8f, 0x2b, 0xe9, 0xd8, 0xc9, 0xad, 0x59, 0x53, 0xd8, 0xc7, 0xbf, 0x39, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3384_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3384 = { .name = "ecdsa_secp224r1_sha256_3384", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3384_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3384_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3384_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 291 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3385 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3385_pubkey[] = { 0xd2, 0xa1, 0x4c, 0x81, 0x06, 0xd8, 0x9f, 0x35, 0x36, 0xfa, 0xeb, 0xda, 0xfc, 0xd4, 0x68, 0x0f, 0x65, 0xab, 0x4b, 0xf2, 0x24, 0x31, 0x64, 0xca, 0x14, 0x64, 0xb6, 0x28, 0xac, 0xaf, 0x2b, 0xee, 0x52, 0xe6, 0x23, 0x1d, 0x3c, 0x98, 0x0f, 0x52, 0xf8, 0xe1, 0x89, 0xa4, 0x1c, 0x3e, 0x3a, 0x05, 0xe5, 0x91, 0x19, 0x5e, 0xc8, 0x64, 0x21, 0x7a, }; static const unsigned char ecdsa_secp224r1_sha256_3385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3385_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3385 = { .name = "ecdsa_secp224r1_sha256_3385", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3385_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3385_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3385_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 292 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3386 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3386_pubkey[] = { 0xe8, 0x92, 0x47, 0x91, 0x53, 0xad, 0x13, 0xea, 0x5c, 0xa4, 0x5d, 0x4c, 0x32, 0x3e, 0xbf, 0x1f, 0xc3, 0xcd, 0x0c, 0xdf, 0x78, 0x7c, 0x34, 0x30, 0x6a, 0x3f, 0x79, 0xa4, 0x32, 0x6c, 0xa9, 0x64, 0x5f, 0x2b, 0x51, 0x76, 0x08, 0xdc, 0x1f, 0x08, 0xb7, 0xa8, 0x4c, 0xfc, 0x61, 0xe6, 0xff, 0x68, 0xd1, 0x4f, 0x27, 0xd2, 0x04, 0x3c, 0x7e, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3386_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3386 = { .name = "ecdsa_secp224r1_sha256_3386", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3386_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3386_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3386_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 293 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3387 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3387_pubkey[] = { 0xe8, 0x92, 0x47, 0x91, 0x53, 0xad, 0x13, 0xea, 0x5c, 0xa4, 0x5d, 0x4c, 0x32, 0x3e, 0xbf, 0x1f, 0xc3, 0xcd, 0x0c, 0xdf, 0x78, 0x7c, 0x34, 0x30, 0x6a, 0x3f, 0x79, 0xa4, 0x32, 0x6c, 0xa9, 0x64, 0x5f, 0x2b, 0x51, 0x76, 0x08, 0xdc, 0x1f, 0x08, 0xb7, 0xa8, 0x4c, 0xfc, 0x61, 0xe6, 0xff, 0x68, 0xd1, 0x4f, 0x27, 0xd2, 0x04, 0x3c, 0x7e, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3387_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3387 = { .name = "ecdsa_secp224r1_sha256_3387", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3387_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3387_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3387_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 294 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3388 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3388_pubkey[] = { 0x2b, 0x0e, 0xac, 0x35, 0xc0, 0xb2, 0x94, 0xf6, 0xd4, 0x35, 0xdc, 0xaf, 0xfa, 0x86, 0x33, 0xb0, 0x12, 0x30, 0x05, 0x46, 0x5c, 0x30, 0x08, 0x0a, 0xdb, 0xcc, 0x10, 0x3a, 0xd4, 0x65, 0xa6, 0x3b, 0xfb, 0x71, 0xd4, 0xae, 0xe0, 0x93, 0x28, 0x69, 0x7f, 0xe1, 0x08, 0x87, 0x53, 0x64, 0x6d, 0x83, 0x69, 0xb8, 0xdc, 0x10, 0x32, 0x17, 0xc2, 0x19, }; static const unsigned char ecdsa_secp224r1_sha256_3388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3388_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3388 = { .name = "ecdsa_secp224r1_sha256_3388", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3388_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3388_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3388_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 295 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3389 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3389_pubkey[] = { 0xd1, 0x56, 0xe0, 0x1e, 0x33, 0xbe, 0xce, 0xde, 0x8f, 0x4f, 0xb4, 0xae, 0x95, 0x21, 0xd7, 0x51, 0xe7, 0xf8, 0xeb, 0x79, 0x5c, 0xa0, 0x08, 0x57, 0xdb, 0x2f, 0xd7, 0xaf, 0xd7, 0x3a, 0x45, 0x0e, 0xc6, 0x0e, 0x6a, 0x92, 0x18, 0xa8, 0x43, 0x18, 0x70, 0x68, 0x7e, 0x09, 0x68, 0x94, 0x4f, 0x6d, 0xc5, 0xff, 0xeb, 0x30, 0xe4, 0x69, 0x3b, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha256_3389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3389_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3389 = { .name = "ecdsa_secp224r1_sha256_3389", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3389_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3389_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3389_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 296 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3390 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3390_pubkey[] = { 0xf2, 0x93, 0xa8, 0xa2, 0xb4, 0xaf, 0xf0, 0xbe, 0xd9, 0x5c, 0x66, 0x3b, 0x36, 0x4a, 0xfe, 0x69, 0x77, 0x8d, 0x38, 0xdd, 0x7e, 0x7a, 0x30, 0x4f, 0x7d, 0x3c, 0x74, 0xe6, 0x17, 0xdf, 0xd0, 0x9e, 0x78, 0x03, 0xc4, 0x43, 0x9a, 0x6c, 0x07, 0x5c, 0xb5, 0x79, 0xcd, 0xe6, 0x52, 0xd0, 0x3f, 0x75, 0x59, 0xff, 0x58, 0x84, 0x63, 0x12, 0xfa, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha256_3390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3390_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3390 = { .name = "ecdsa_secp224r1_sha256_3390", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3390_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3390_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3390_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 297 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3391 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3391_pubkey[] = { 0xd4, 0xdd, 0xf0, 0x03, 0xb2, 0x98, 0xcb, 0xaa, 0x7d, 0x2e, 0xdc, 0x58, 0x4b, 0x28, 0xb4, 0x74, 0xa7, 0x61, 0x62, 0xed, 0x4b, 0x5b, 0x0f, 0x62, 0x22, 0xc5, 0x43, 0x17, 0xd4, 0xe4, 0xfe, 0x03, 0x0f, 0x17, 0x8f, 0xb4, 0xaa, 0x4a, 0x6d, 0x7f, 0x61, 0x26, 0x5e, 0xcd, 0x7e, 0xf1, 0x3c, 0x31, 0x36, 0x06, 0xb8, 0xd3, 0x41, 0xa8, 0xb9, 0x54, }; static const unsigned char ecdsa_secp224r1_sha256_3391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3391_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3391 = { .name = "ecdsa_secp224r1_sha256_3391", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3391_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3391_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3391_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 298 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3392 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3392_pubkey[] = { 0x8a, 0x5b, 0xf0, 0x02, 0x8f, 0x1e, 0x3e, 0xb6, 0x84, 0x1d, 0xee, 0x7b, 0x8f, 0x87, 0x3f, 0x68, 0xb0, 0xc5, 0x60, 0xe5, 0x92, 0xe3, 0x18, 0x20, 0x74, 0xf5, 0x1c, 0xe8, 0x96, 0x68, 0xc3, 0x22, 0x24, 0xb6, 0x5b, 0x68, 0x49, 0x71, 0x3d, 0x35, 0xe3, 0xac, 0xf1, 0x78, 0x68, 0x62, 0xe6, 0x5b, 0x5a, 0x66, 0x4b, 0x47, 0xa0, 0x98, 0xca, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha256_3392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3392_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3392 = { .name = "ecdsa_secp224r1_sha256_3392", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3392_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3392_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3392_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 299 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3393 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3393_pubkey[] = { 0xb5, 0x3e, 0x56, 0x9b, 0x18, 0xe9, 0x36, 0x15, 0x67, 0xe5, 0x71, 0x3e, 0xe6, 0x9e, 0xcb, 0xe7, 0x94, 0x99, 0x11, 0xb0, 0x25, 0x75, 0x46, 0xa2, 0x4c, 0x3d, 0xd1, 0x37, 0xf2, 0x9a, 0x83, 0x33, 0x4c, 0xff, 0x1c, 0x44, 0xd8, 0xc0, 0xc3, 0x3b, 0x6d, 0xad, 0xb8, 0x56, 0x8c, 0x02, 0x4f, 0xa1, 0xfb, 0xb6, 0x94, 0xcd, 0x9e, 0x70, 0x5f, 0x5a, }; static const unsigned char ecdsa_secp224r1_sha256_3393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3393_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3393 = { .name = "ecdsa_secp224r1_sha256_3393", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3393_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3393_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3393_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 300 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3394 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3394_pubkey[] = { 0x77, 0xf3, 0xeb, 0xf5, 0x27, 0x25, 0xc8, 0x09, 0xac, 0xbb, 0x19, 0xad, 0xf0, 0x93, 0x12, 0x6a, 0x2a, 0x3a, 0x06, 0x5c, 0xa6, 0x54, 0xc2, 0x20, 0x99, 0xc9, 0x78, 0x12, 0x9f, 0x19, 0x48, 0xd2, 0x3c, 0x51, 0x58, 0xec, 0x2a, 0xdf, 0xf4, 0x55, 0xeb, 0x2f, 0xed, 0xf1, 0x07, 0x5d, 0x4e, 0xc2, 0x2d, 0x66, 0x09, 0x77, 0x42, 0x4a, 0x10, 0xf7, }; static const unsigned char ecdsa_secp224r1_sha256_3394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3394_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3394 = { .name = "ecdsa_secp224r1_sha256_3394", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3394_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3394_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3394_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 301 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3395 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3395_pubkey[] = { 0xa7, 0xf7, 0xb9, 0x9e, 0x5c, 0xdc, 0x6f, 0xec, 0x89, 0x28, 0xef, 0xf7, 0x73, 0xcc, 0xdf, 0x3b, 0x68, 0xb1, 0x9d, 0x43, 0xcd, 0xb4, 0x18, 0x09, 0xe1, 0x9c, 0x60, 0xf3, 0x17, 0x36, 0xb7, 0xa0, 0xc1, 0x2a, 0x9c, 0x2d, 0x70, 0x66, 0x71, 0x91, 0x29, 0x15, 0x14, 0x2b, 0x3e, 0x05, 0xc8, 0x9e, 0xf3, 0xad, 0x49, 0x7b, 0xd6, 0xc3, 0x46, 0x99, }; static const unsigned char ecdsa_secp224r1_sha256_3395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3395_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3395 = { .name = "ecdsa_secp224r1_sha256_3395", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3395_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3395_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3395_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 302 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3396 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3396_pubkey[] = { 0xa7, 0xf7, 0xb9, 0x9e, 0x5c, 0xdc, 0x6f, 0xec, 0x89, 0x28, 0xef, 0xf7, 0x73, 0xcc, 0xdf, 0x3b, 0x68, 0xb1, 0x9d, 0x43, 0xcd, 0xb4, 0x18, 0x09, 0xe1, 0x9c, 0x60, 0xf3, 0x17, 0x36, 0xb7, 0xa0, 0xc1, 0x2a, 0x9c, 0x2d, 0x70, 0x66, 0x71, 0x91, 0x29, 0x15, 0x14, 0x2b, 0x3e, 0x05, 0xc8, 0x9e, 0xf3, 0xad, 0x49, 0x7b, 0xd6, 0xc3, 0x46, 0x99, }; static const unsigned char ecdsa_secp224r1_sha256_3396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3396_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3396 = { .name = "ecdsa_secp224r1_sha256_3396", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3396_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3396_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3396_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 303 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3397 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3397_pubkey[] = { 0x9c, 0xf0, 0x00, 0x10, 0xb4, 0xad, 0x86, 0x63, 0x6f, 0x6c, 0xc7, 0x0f, 0xb5, 0x8c, 0x3b, 0x99, 0x5c, 0x0d, 0x12, 0xe4, 0x6f, 0xc5, 0x8e, 0x24, 0xb0, 0xd2, 0x8f, 0x69, 0x21, 0xc8, 0xa8, 0xa3, 0x20, 0xcc, 0x45, 0x0c, 0xcb, 0x15, 0xeb, 0xd7, 0x16, 0x17, 0xf4, 0xed, 0x25, 0xdb, 0x4d, 0x34, 0x13, 0xfb, 0xdf, 0x15, 0x7d, 0x31, 0xdb, 0xb6, }; static const unsigned char ecdsa_secp224r1_sha256_3397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3397_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3397 = { .name = "ecdsa_secp224r1_sha256_3397", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3397_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3397_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3397_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 304 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3398 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3398_pubkey[] = { 0xae, 0x9b, 0x36, 0x36, 0xb8, 0x54, 0x72, 0x32, 0xdf, 0x43, 0x85, 0x59, 0xb5, 0xa1, 0x09, 0xe0, 0x23, 0x8a, 0x73, 0xa7, 0x6a, 0xfc, 0x25, 0xd0, 0x70, 0xea, 0x27, 0x42, 0x72, 0x10, 0xa6, 0x9d, 0xe4, 0x4a, 0xd6, 0x45, 0xb1, 0xb0, 0x38, 0x45, 0x04, 0x0f, 0x46, 0xfc, 0xe2, 0x38, 0xe9, 0x2c, 0x13, 0x1a, 0x71, 0xe4, 0xb1, 0x84, 0xc0, 0x1f, }; static const unsigned char ecdsa_secp224r1_sha256_3398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3398_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3398 = { .name = "ecdsa_secp224r1_sha256_3398", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3398_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3398_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3398_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 305 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3399 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3399_pubkey[] = { 0x8d, 0x57, 0xd4, 0xfc, 0xe6, 0x27, 0x57, 0x79, 0x18, 0x88, 0xc1, 0x93, 0x80, 0x76, 0xfd, 0x76, 0x6d, 0xae, 0xb2, 0xec, 0x9f, 0x1b, 0xda, 0x8a, 0xd5, 0xdf, 0x48, 0x09, 0xaa, 0xde, 0x92, 0x4d, 0x7e, 0xa3, 0xae, 0x5a, 0xbb, 0xd0, 0x71, 0x9a, 0x7d, 0x48, 0x65, 0x75, 0x9d, 0xa6, 0x54, 0xcf, 0x76, 0xcf, 0x7e, 0xc0, 0x31, 0x27, 0x71, 0x08, }; static const unsigned char ecdsa_secp224r1_sha256_3399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3399_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3399 = { .name = "ecdsa_secp224r1_sha256_3399", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3399_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3399_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3399_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 306 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3400 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3400_pubkey[] = { 0x10, 0x51, 0x8e, 0xb7, 0xa9, 0x26, 0xb5, 0xf7, 0xb6, 0x5b, 0xe8, 0x01, 0xec, 0x9b, 0x2a, 0xbf, 0x76, 0xad, 0xce, 0x25, 0xc6, 0x15, 0x2e, 0x45, 0x2a, 0x35, 0x12, 0xc8, 0x3f, 0x32, 0x2b, 0x9a, 0xb5, 0x7e, 0xa8, 0x35, 0x2a, 0xd2, 0x9b, 0xeb, 0x99, 0xef, 0x35, 0x6b, 0x71, 0x34, 0x32, 0xfc, 0xc4, 0xae, 0xf3, 0x1f, 0x90, 0x30, 0x45, 0xd9, }; static const unsigned char ecdsa_secp224r1_sha256_3400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3400_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3400 = { .name = "ecdsa_secp224r1_sha256_3400", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3400_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3400_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3400_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 307 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3401 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3401_pubkey[] = { 0x8a, 0x5d, 0xfe, 0xdc, 0x9d, 0xd1, 0xcb, 0x9a, 0x43, 0x9c, 0x88, 0xb3, 0xdd, 0x47, 0x2b, 0x2e, 0x66, 0x17, 0x3f, 0x78, 0x66, 0x85, 0x5d, 0xb6, 0xbb, 0x6c, 0x12, 0xfd, 0x3b, 0xad, 0xfb, 0xb8, 0xa4, 0xc6, 0xfd, 0x80, 0xe6, 0x65, 0x10, 0x95, 0x79, 0x27, 0xc7, 0x8a, 0x2a, 0xa0, 0x2e, 0xce, 0xf6, 0x28, 0x16, 0xd0, 0x35, 0x6b, 0x49, 0xc3, }; static const unsigned char ecdsa_secp224r1_sha256_3401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3401_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3401 = { .name = "ecdsa_secp224r1_sha256_3401", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3401_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3401_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3401_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 308 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3402 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3402_pubkey[] = { 0x83, 0xa5, 0x9f, 0xc3, 0xdf, 0x29, 0x5e, 0x84, 0xc2, 0x90, 0xb3, 0x2d, 0x0b, 0x55, 0x0a, 0x06, 0xf9, 0x94, 0x56, 0xfc, 0x22, 0x98, 0xe4, 0xa6, 0x8c, 0x4f, 0x2b, 0xff, 0x1b, 0x34, 0xf4, 0x83, 0xdb, 0x30, 0xdb, 0x3a, 0x51, 0xd8, 0x28, 0x87, 0x32, 0xc1, 0x07, 0xd8, 0xb1, 0xa8, 0x58, 0xcd, 0x54, 0xc3, 0x93, 0x6e, 0x1b, 0x5c, 0x11, 0xa4, }; static const unsigned char ecdsa_secp224r1_sha256_3402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3402_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3402 = { .name = "ecdsa_secp224r1_sha256_3402", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3402_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3402_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3402_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 309 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3403 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3403_pubkey[] = { 0x58, 0xba, 0xda, 0x57, 0x8a, 0x20, 0x5d, 0x6e, 0x17, 0x07, 0x22, 0xc8, 0xed, 0x6c, 0x77, 0x15, 0x01, 0x1f, 0xe3, 0x3d, 0x7e, 0xba, 0x86, 0x9e, 0xd1, 0xd4, 0x48, 0xa7, 0x5b, 0xe4, 0x73, 0x0c, 0x1d, 0x2d, 0x2e, 0xf8, 0x81, 0xe0, 0x2f, 0x02, 0x8a, 0x24, 0x1b, 0x7d, 0x7d, 0x3b, 0x0d, 0x0b, 0x4a, 0x9c, 0x05, 0x65, 0xfc, 0xb4, 0x99, 0x77, }; static const unsigned char ecdsa_secp224r1_sha256_3403_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3403_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3403 = { .name = "ecdsa_secp224r1_sha256_3403", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3403_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3403_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3403_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 310 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3404 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3404_pubkey[] = { 0x7f, 0xcc, 0x79, 0x9b, 0x91, 0x9f, 0xe9, 0x78, 0x9c, 0xe0, 0x1d, 0xd9, 0x20, 0x27, 0x31, 0xcb, 0x7d, 0x81, 0x51, 0x58, 0xbc, 0x6c, 0xb8, 0x46, 0x87, 0x60, 0x24, 0x7c, 0x0f, 0x9d, 0x29, 0x57, 0xe0, 0xdd, 0x5e, 0x4c, 0x40, 0x12, 0x4b, 0xd5, 0xe0, 0xdd, 0x1b, 0xe4, 0x1c, 0x03, 0x8f, 0xce, 0x2c, 0xd1, 0xdc, 0x81, 0x4e, 0x0a, 0xf3, 0x7d, }; static const unsigned char ecdsa_secp224r1_sha256_3404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3404_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x93, 0xc8, 0xc6, 0x51, 0x65, 0x34, 0x30, 0xcb, 0x4f, 0x16, 0x75, 0xfc, 0x86, 0xb5, 0xe8, 0x2c, 0xa0, 0x4f, 0xf2, 0xab, 0x15, 0x01, 0x67, 0x44, 0x76, 0xaa, 0xc1, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3404 = { .name = "ecdsa_secp224r1_sha256_3404", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3404_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3404_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3404_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 311 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3405 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3405_pubkey[] = { 0x3d, 0xdd, 0x68, 0xf6, 0x9d, 0x0b, 0xfd, 0x47, 0xad, 0x19, 0x37, 0x0f, 0xa3, 0xdc, 0x72, 0xeb, 0x25, 0x82, 0x68, 0xc2, 0xb5, 0xf3, 0x76, 0x88, 0x52, 0x15, 0x16, 0x74, 0xfb, 0xe0, 0xe1, 0x55, 0xd9, 0x4d, 0x23, 0x73, 0xa0, 0x1a, 0x5e, 0x70, 0xf1, 0xa1, 0x05, 0x25, 0x9e, 0x7b, 0x8b, 0x1d, 0x2f, 0xdf, 0x4d, 0xba, 0x3c, 0xf4, 0xc7, 0x80, }; static const unsigned char ecdsa_secp224r1_sha256_3405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3405_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9d, 0xf5, 0x0a, 0xcc, 0x33, 0xb3, 0x62, 0x5a, 0x2d, 0x59, 0x40, 0xdd, 0x13, 0xdb, 0xb9, 0x7d, 0x1f, 0x7d, 0xd5, 0x6a, 0xff, 0xf8, 0xb7, 0xde, 0x75, 0x45, 0x12, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3405 = { .name = "ecdsa_secp224r1_sha256_3405", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3405_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3405_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3405_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 312 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3406 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3406_pubkey[] = { 0x1c, 0xb1, 0xf5, 0x64, 0xc2, 0x9e, 0xbf, 0x60, 0xa3, 0x42, 0xb3, 0xbc, 0x33, 0xc8, 0x94, 0x5c, 0xb2, 0x79, 0xc6, 0xc1, 0xa0, 0x12, 0x25, 0x5c, 0x87, 0x4e, 0x1c, 0x37, 0xb7, 0x51, 0x91, 0xab, 0x3b, 0x2b, 0xb7, 0x30, 0x91, 0x4e, 0xbf, 0xa1, 0x40, 0x80, 0x41, 0x09, 0x70, 0xb7, 0x1e, 0xaf, 0x4f, 0xe0, 0x1e, 0x2d, 0x48, 0xbe, 0x98, 0x91, }; static const unsigned char ecdsa_secp224r1_sha256_3406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3406_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdc, 0xe8, 0xc2, 0x23, 0xf2, 0x35, 0x69, 0x9d, 0x1f, 0x5d, 0x2d, 0xcd, 0xe4, 0x80, 0x9d, 0x01, 0x33, 0x90, 0xb5, 0x91, 0x29, 0xf7, 0x83, 0x23, 0x95, 0x25, 0xc0, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3406 = { .name = "ecdsa_secp224r1_sha256_3406", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3406_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3406_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3406_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 313 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3407 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3407_pubkey[] = { 0x44, 0xe3, 0x09, 0xeb, 0x68, 0x6e, 0x7a, 0xf7, 0xf1, 0xe2, 0xcc, 0x17, 0xfd, 0x56, 0x54, 0x2b, 0x38, 0x91, 0x0b, 0x3b, 0x79, 0x08, 0xea, 0x54, 0xfb, 0x03, 0x8d, 0x36, 0x47, 0x7e, 0x82, 0x9d, 0x4c, 0x83, 0x32, 0xe5, 0xb2, 0x9f, 0x34, 0x4a, 0xd2, 0x7a, 0x21, 0xc1, 0x8d, 0xab, 0x24, 0xa3, 0x1c, 0xe7, 0x98, 0x5b, 0x63, 0xa2, 0x13, 0x04, }; static const unsigned char ecdsa_secp224r1_sha256_3407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3407_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x07, 0x4a, 0xae, 0x94, 0x4e, 0xe7, 0xa7, 0xd5, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x66, 0xf8, 0x72, 0xd2, 0x25, 0x0b, 0xa3, 0x01, 0x8a, 0x63, 0xd2, 0xa7, 0xf2, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3407 = { .name = "ecdsa_secp224r1_sha256_3407", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3407_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3407_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3407_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 314 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3408 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3408_pubkey[] = { 0xc7, 0x28, 0x06, 0x45, 0x42, 0xcb, 0x51, 0x42, 0xf5, 0xee, 0xfe, 0x63, 0x81, 0x24, 0xdc, 0xd7, 0xa1, 0xad, 0x0b, 0x35, 0x55, 0x84, 0x2a, 0x47, 0xdd, 0x51, 0x08, 0xe1, 0x10, 0x12, 0x9d, 0xd8, 0x78, 0xeb, 0xd4, 0x73, 0x13, 0x27, 0x6c, 0xec, 0x86, 0xf5, 0x21, 0xea, 0x95, 0x85, 0xcd, 0x10, 0x5b, 0x3d, 0xc4, 0x21, 0x14, 0x19, 0x93, 0xb8, }; static const unsigned char ecdsa_secp224r1_sha256_3408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3408_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaa, 0xe9, 0x44, 0xee, 0x7a, 0x7d, 0x54, 0x4a, 0x5a, 0xd0, 0xbd, 0x06, 0x36, 0xd9, 0x45, 0x5f, 0x4e, 0x83, 0xde, 0x0f, 0x18, 0x6f, 0x89, 0xbc, 0xa5, 0x6b, 0x3c, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3408 = { .name = "ecdsa_secp224r1_sha256_3408", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3408_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3408_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3408_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 315 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3409 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3409_pubkey[] = { 0xc4, 0x6c, 0x1a, 0xd3, 0xd3, 0xd0, 0xdf, 0x8e, 0x9c, 0x0f, 0x52, 0x5c, 0x21, 0xce, 0x8d, 0x81, 0xef, 0x9d, 0x66, 0x29, 0x7f, 0x44, 0x2d, 0x63, 0x09, 0x96, 0x67, 0x22, 0x0c, 0xfa, 0x22, 0x53, 0xaa, 0x31, 0xa9, 0x8d, 0x89, 0x66, 0xb8, 0x59, 0x69, 0xbf, 0x9c, 0x81, 0x9c, 0x01, 0x92, 0x92, 0xef, 0x6a, 0x53, 0xac, 0x1d, 0xb2, 0xa1, 0x08, }; static const unsigned char ecdsa_secp224r1_sha256_3409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3409_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xd2, 0x89, 0xdc, 0xf4, 0xfa, 0xa8, 0x94, 0xb5, 0xa1, 0x7a, 0x0c, 0x6d, 0xb3, 0x74, 0x1b, 0xbc, 0x4e, 0xcb, 0xe0, 0x1d, 0x01, 0xea, 0x33, 0xee, 0x7a, 0x4e, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3409 = { .name = "ecdsa_secp224r1_sha256_3409", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3409_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3409_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3409_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 316 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3410 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3410_pubkey[] = { 0xb7, 0xb2, 0xe4, 0x8c, 0x1e, 0x60, 0xe2, 0x09, 0x25, 0xf4, 0xd9, 0xb6, 0xbe, 0x60, 0x0d, 0xd8, 0x37, 0x86, 0xa9, 0x36, 0xc9, 0xbf, 0xab, 0x00, 0x63, 0x9c, 0x33, 0xca, 0xa9, 0x67, 0xcb, 0xc6, 0x50, 0x70, 0x73, 0x9a, 0x33, 0x79, 0xda, 0x80, 0xd5, 0x48, 0x43, 0xa1, 0x8d, 0x9c, 0x11, 0xa2, 0x9a, 0x32, 0x23, 0x4a, 0x0b, 0x30, 0x3c, 0x12, }; static const unsigned char ecdsa_secp224r1_sha256_3410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3410_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4e, 0xe7, 0xa7, 0xd5, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x56, 0x1c, 0xe0, 0x4f, 0xaa, 0xf1, 0x31, 0x2b, 0xba, 0x3a, 0x15, 0x60, 0x1e, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3410 = { .name = "ecdsa_secp224r1_sha256_3410", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3410_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3410_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3410_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 317 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3411 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3411_pubkey[] = { 0xf4, 0xa3, 0xd4, 0x59, 0x88, 0x75, 0xaf, 0x7f, 0x27, 0x41, 0xbb, 0xd6, 0x7b, 0x17, 0x33, 0xb6, 0x54, 0x1b, 0xc5, 0x32, 0x5b, 0x3b, 0xcb, 0x4d, 0x32, 0x67, 0xc2, 0x7e, 0xc3, 0x0b, 0xf3, 0x22, 0xf5, 0x8a, 0x45, 0xc6, 0xc2, 0xaa, 0x2c, 0xed, 0x55, 0xf1, 0x75, 0xd1, 0xcb, 0xf7, 0x2a, 0x7c, 0x5b, 0xfc, 0x46, 0x4d, 0x74, 0xf6, 0x66, 0xc0, }; static const unsigned char ecdsa_secp224r1_sha256_3411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3411_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x36, 0x1b, 0x9c, 0xd7, 0x4d, 0x65, 0xe7, 0x9a, 0x58, 0x74, 0xc5, 0x01, 0xbc, 0xa4, 0x97, 0x3b, 0x20, 0x34, 0x7e, 0xc9, 0x7f, 0x6d, 0xe1, 0x00, 0x72, 0xd8, 0xb4, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3411 = { .name = "ecdsa_secp224r1_sha256_3411", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3411_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3411_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3411_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3412 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3412_pubkey[] = { 0x56, 0xd1, 0xe5, 0xc1, 0xd6, 0x64, 0xf6, 0xce, 0x2f, 0xc1, 0xfc, 0xb9, 0x37, 0xa7, 0xce, 0x23, 0x1a, 0x29, 0x48, 0x6a, 0xbf, 0x36, 0xc7, 0x3f, 0x77, 0xa2, 0xbd, 0x11, 0x6c, 0xb2, 0x82, 0xc9, 0xd7, 0xc6, 0xfc, 0x05, 0xf3, 0x99, 0xc1, 0x83, 0xe8, 0x80, 0xea, 0x36, 0x2e, 0xdf, 0x04, 0x3c, 0xd2, 0x8f, 0xfa, 0xc9, 0xf9, 0x4f, 0x21, 0x41, }; static const unsigned char ecdsa_secp224r1_sha256_3412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3412_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x37, 0x39, 0xae, 0x9a, 0xcb, 0xcf, 0x34, 0xb0, 0xe9, 0x8a, 0x03, 0x79, 0x49, 0x2e, 0x76, 0x40, 0x68, 0xfd, 0x92, 0xfe, 0xdb, 0xc2, 0x00, 0xe5, 0xb1, 0x68, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3412 = { .name = "ecdsa_secp224r1_sha256_3412", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3412_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3412_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3412_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3413 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3413_pubkey[] = { 0x30, 0xbc, 0xe8, 0xc6, 0xb7, 0xf1, 0xbb, 0xba, 0x04, 0x0b, 0x8d, 0x12, 0x1d, 0x85, 0xd5, 0x51, 0x67, 0xac, 0x99, 0xb2, 0xe2, 0xcf, 0x1c, 0xfa, 0xc8, 0xb0, 0x18, 0xb5, 0xf1, 0xc3, 0x84, 0xc3, 0x5b, 0xe0, 0xae, 0x30, 0x9a, 0x5c, 0xb5, 0x5a, 0xba, 0x98, 0x23, 0x43, 0xd2, 0x12, 0x5f, 0x2d, 0x4a, 0x55, 0x9d, 0x8c, 0x54, 0x53, 0x59, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3413_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x52, 0xd6, 0x85, 0xe8, 0x31, 0xb6, 0xcf, 0x09, 0x5e, 0x4f, 0x05, 0x35, 0xed, 0xc5, 0xb1, 0x60, 0x9d, 0x7c, 0x5c, 0x7e, 0x49, 0xa3, 0x01, 0x58, 0x8a, 0x1d, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3413 = { .name = "ecdsa_secp224r1_sha256_3413", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3413_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3413_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3413_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3414 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3414_pubkey[] = { 0xe8, 0x7e, 0x53, 0x8a, 0x97, 0x8c, 0xf1, 0x87, 0x90, 0x8b, 0xeb, 0x27, 0xa4, 0xa2, 0x47, 0xd4, 0x96, 0xa8, 0x42, 0x1d, 0xab, 0x1f, 0xe7, 0x9f, 0x87, 0x44, 0xd2, 0xb5, 0x53, 0x9b, 0x9f, 0x8f, 0xe8, 0xbd, 0xdc, 0xf7, 0xc9, 0x7c, 0x44, 0xc5, 0x5a, 0x4f, 0xc2, 0x2f, 0x4d, 0x78, 0xf6, 0xa9, 0x61, 0x44, 0x7a, 0x5b, 0x61, 0x3b, 0x5c, 0x49, }; static const unsigned char ecdsa_secp224r1_sha256_3414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3414_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xee, 0x74, 0x61, 0x11, 0xf9, 0x1a, 0xb4, 0xce, 0x8f, 0xae, 0x96, 0xe6, 0xf2, 0x3f, 0xd9, 0xd2, 0x0a, 0x24, 0xd2, 0xe7, 0x9e, 0xea, 0x56, 0x34, 0x78, 0xc0, 0xf5, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3414 = { .name = "ecdsa_secp224r1_sha256_3414", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3414_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3414_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3414_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3415 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3415_pubkey[] = { 0x11, 0x3a, 0x2c, 0xc5, 0x7c, 0x8e, 0xe7, 0xde, 0x11, 0xbc, 0x45, 0xe1, 0x45, 0x46, 0xc7, 0x2a, 0x29, 0x72, 0x5b, 0x9a, 0x72, 0x18, 0x11, 0x4a, 0xc3, 0x1f, 0x02, 0x81, 0x6c, 0x76, 0x5b, 0x9a, 0x46, 0xb0, 0x21, 0x53, 0x12, 0xa3, 0x29, 0x2f, 0x59, 0x79, 0xc9, 0x8d, 0x37, 0xb3, 0x58, 0x83, 0xba, 0xa1, 0x56, 0x28, 0x1b, 0x1b, 0xae, 0x8c, }; static const unsigned char ecdsa_secp224r1_sha256_3415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3415_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3415 = { .name = "ecdsa_secp224r1_sha256_3415", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3415_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3415_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3415_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 322 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3416 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3416_pubkey[] = { 0x23, 0xdd, 0x9c, 0x3f, 0x1a, 0x4b, 0x47, 0x8b, 0x01, 0xfa, 0x2c, 0x5e, 0x99, 0x7d, 0x04, 0x82, 0x07, 0x3b, 0x32, 0x91, 0x8d, 0xe4, 0x4b, 0xe5, 0x83, 0xdc, 0xf7, 0x4a, 0xd6, 0x61, 0xa5, 0xed, 0x57, 0x9a, 0x2f, 0x09, 0xd2, 0xff, 0x56, 0xd6, 0xb8, 0x0f, 0x26, 0x56, 0x8d, 0x93, 0xa2, 0x37, 0xca, 0x64, 0x44, 0xb0, 0xca, 0xdc, 0x79, 0x51, }; static const unsigned char ecdsa_secp224r1_sha256_3416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3416_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3416 = { .name = "ecdsa_secp224r1_sha256_3416", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3416_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3416_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3416_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 323 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3417 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3417_pubkey[] = { 0xbb, 0xce, 0x4b, 0x17, 0xd4, 0x5d, 0x24, 0xa1, 0xc8, 0x0b, 0xc8, 0xec, 0xa9, 0x8c, 0x35, 0x9d, 0x5e, 0x1e, 0x45, 0x80, 0x58, 0xa0, 0x0b, 0x95, 0x06, 0x43, 0x25, 0x6d, 0xfe, 0x09, 0xe0, 0x92, 0x31, 0x8e, 0x39, 0x30, 0x3d, 0xca, 0x03, 0x68, 0x8e, 0x4e, 0xcf, 0x30, 0x03, 0x00, 0x78, 0x43, 0x12, 0xd6, 0x17, 0xe5, 0x08, 0x8c, 0x58, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha256_3417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3417_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3417 = { .name = "ecdsa_secp224r1_sha256_3417", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3417_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3417_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3417_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 324 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3418 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3418_pubkey[] = { 0x03, 0x5f, 0x58, 0x44, 0x6c, 0x1b, 0xdb, 0xea, 0xa5, 0x66, 0x60, 0xa8, 0x97, 0xeb, 0xf9, 0x65, 0xf2, 0xd1, 0x88, 0x20, 0xc7, 0xcd, 0x06, 0x30, 0xf0, 0x4a, 0x49, 0x53, 0x47, 0xbd, 0xfa, 0xea, 0x60, 0x09, 0x1f, 0x40, 0x5e, 0x09, 0x92, 0x9c, 0xb2, 0xc0, 0xe2, 0xf6, 0xee, 0xd5, 0x3e, 0x08, 0x71, 0xb7, 0xfe, 0x0c, 0xd5, 0xa1, 0x5d, 0x85, }; static const unsigned char ecdsa_secp224r1_sha256_3418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3418_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3418 = { .name = "ecdsa_secp224r1_sha256_3418", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3418_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3418_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3418_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 325 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3419 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3419_pubkey[] = { 0x91, 0x1c, 0x00, 0x33, 0xea, 0xc4, 0x63, 0x32, 0x69, 0x1c, 0xb7, 0x92, 0x0c, 0x49, 0x50, 0xee, 0xd5, 0x73, 0x54, 0x76, 0x1e, 0x10, 0x81, 0xa1, 0xea, 0x9f, 0x12, 0x79, 0x50, 0x8e, 0xbf, 0x7c, 0xfd, 0x3e, 0xab, 0x5d, 0xab, 0xde, 0xe1, 0xbe, 0x14, 0xce, 0x82, 0x96, 0xb1, 0xfc, 0x20, 0xac, 0xfa, 0xac, 0x16, 0xf7, 0x82, 0x4c, 0x60, 0x02, }; static const unsigned char ecdsa_secp224r1_sha256_3419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3419_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3419 = { .name = "ecdsa_secp224r1_sha256_3419", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3419_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3419_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3419_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 326 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3420 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3420_pubkey[] = { 0x62, 0xb2, 0xab, 0xb7, 0x0b, 0xb9, 0xc7, 0xef, 0xdf, 0xb5, 0x71, 0x81, 0xf4, 0x33, 0xb6, 0x47, 0x51, 0xf1, 0x08, 0x13, 0x0d, 0xce, 0x18, 0x0d, 0x69, 0x92, 0xe7, 0xd3, 0x12, 0x4b, 0x3a, 0xa8, 0xa5, 0x3e, 0x5e, 0xed, 0xf7, 0x2a, 0xa6, 0x7e, 0x6e, 0xdc, 0xc7, 0x1f, 0x19, 0xe3, 0x6e, 0x6a, 0xd1, 0xd0, 0x99, 0xa5, 0x9f, 0xfd, 0x95, 0x55, }; static const unsigned char ecdsa_secp224r1_sha256_3420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3420_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3420 = { .name = "ecdsa_secp224r1_sha256_3420", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3420_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3420_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3420_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 327 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3421 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3421_pubkey[] = { 0x0f, 0x75, 0x93, 0x30, 0xe7, 0x99, 0x27, 0x52, 0xaa, 0xe6, 0xa8, 0x5f, 0x7b, 0xb0, 0x59, 0x97, 0x84, 0xbe, 0xa5, 0x3e, 0x28, 0x8f, 0xf7, 0xee, 0x8d, 0x53, 0xd5, 0xe6, 0xde, 0xfe, 0x61, 0x73, 0x62, 0x38, 0x0e, 0x92, 0xf9, 0xa2, 0x3c, 0x4f, 0xdc, 0xc3, 0x4e, 0x09, 0x71, 0x3a, 0xab, 0x9c, 0xc4, 0x41, 0x19, 0x41, 0x8f, 0x6f, 0x2f, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha256_3421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3421_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3421 = { .name = "ecdsa_secp224r1_sha256_3421", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3421_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3421_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3421_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 328 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3422 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3422_pubkey[] = { 0x8f, 0x2e, 0xda, 0x42, 0x74, 0x2a, 0xb3, 0x1f, 0x5d, 0x4c, 0xf6, 0x66, 0x89, 0x2d, 0x1d, 0x62, 0x3e, 0xfd, 0x3b, 0x26, 0xf7, 0xdf, 0x9a, 0xa7, 0x02, 0x96, 0xe8, 0x0d, 0x3b, 0xea, 0xf2, 0x35, 0xcf, 0xea, 0x41, 0xfa, 0xdb, 0x98, 0xc5, 0x33, 0xa8, 0xfd, 0xeb, 0x58, 0x41, 0xd6, 0x9e, 0xe6, 0x5f, 0x6e, 0x71, 0x91, 0x47, 0x11, 0xf1, 0x38, }; static const unsigned char ecdsa_secp224r1_sha256_3422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3422_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3422 = { .name = "ecdsa_secp224r1_sha256_3422", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3422_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3422_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3422_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 329 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3423 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3423_pubkey[] = { 0x2b, 0xcf, 0x43, 0x71, 0xb3, 0x19, 0xa6, 0x91, 0xed, 0x0e, 0x2e, 0x0c, 0x4a, 0x55, 0xa8, 0xa9, 0xb9, 0x87, 0xde, 0xc8, 0x6b, 0x86, 0x36, 0x21, 0xe9, 0x7b, 0x9c, 0x09, 0x5b, 0x86, 0x60, 0xa7, 0x4c, 0xc9, 0x64, 0xa6, 0xaf, 0x03, 0x11, 0xed, 0xc6, 0xb1, 0xcd, 0x98, 0x0f, 0x9c, 0x7b, 0xf3, 0xa6, 0xc9, 0xb7, 0xf9, 0x13, 0x2a, 0x0b, 0x2f, }; static const unsigned char ecdsa_secp224r1_sha256_3423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3423_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3423 = { .name = "ecdsa_secp224r1_sha256_3423", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3423_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3423_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3423_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3424 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3424_pubkey[] = { 0xa6, 0xf2, 0x52, 0x56, 0x8f, 0x6f, 0xbd, 0x1a, 0xe0, 0x45, 0xe6, 0x02, 0x34, 0x43, 0x59, 0xc0, 0xc2, 0x16, 0x91, 0x17, 0x23, 0x74, 0x8f, 0x9a, 0x3e, 0x7f, 0xad, 0xec, 0x3b, 0x76, 0xef, 0xc7, 0x5b, 0xa0, 0x30, 0xbf, 0xe7, 0xde, 0x2d, 0xed, 0x68, 0x69, 0x91, 0xe6, 0x18, 0x3d, 0x40, 0x24, 0x1a, 0x05, 0xb4, 0x79, 0x69, 0x3c, 0x70, 0x15, }; static const unsigned char ecdsa_secp224r1_sha256_3424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3424_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3424 = { .name = "ecdsa_secp224r1_sha256_3424", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3424_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3424_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3424_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3425 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3425_pubkey[] = { 0xa7, 0x4c, 0x1c, 0x3a, 0x31, 0xc7, 0xd4, 0x93, 0xab, 0x2c, 0x0a, 0xf8, 0x9c, 0xf5, 0xe6, 0x88, 0x62, 0x1c, 0xa9, 0x46, 0x6d, 0x2b, 0xa1, 0xd8, 0x76, 0x1c, 0x3f, 0xe8, 0x2b, 0xa0, 0xd0, 0x8f, 0x4c, 0x9f, 0x76, 0x85, 0x6c, 0x2b, 0x71, 0x38, 0xc8, 0xf1, 0xe7, 0x80, 0xb6, 0x95, 0x99, 0x92, 0xb1, 0x6c, 0xcd, 0xfd, 0x92, 0x5f, 0x4b, 0x3a, }; static const unsigned char ecdsa_secp224r1_sha256_3425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3425_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3425 = { .name = "ecdsa_secp224r1_sha256_3425", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3425_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3425_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3425_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 332 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3426 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3426_pubkey[] = { 0x03, 0x4e, 0xa7, 0x27, 0x98, 0x25, 0x7f, 0x33, 0xf2, 0x4f, 0x64, 0xc4, 0x94, 0x38, 0xfc, 0x43, 0xe8, 0xf6, 0x7d, 0xdc, 0x71, 0x70, 0xfd, 0x12, 0x7e, 0x2c, 0x43, 0xf2, 0x80, 0x56, 0x2a, 0xcc, 0x9b, 0x49, 0xf2, 0xd7, 0xfc, 0xc8, 0x94, 0x21, 0xd2, 0xa5, 0xdb, 0x2e, 0xa8, 0xdd, 0x03, 0x61, 0xfb, 0x48, 0xd8, 0x97, 0xd4, 0x61, 0x26, 0x27, }; static const unsigned char ecdsa_secp224r1_sha256_3426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3426_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x3f, 0x55, 0x2f, 0x1c, 0x2b, 0x01, 0x65, 0x1e, 0xdf, 0x59, 0x02, 0x65, 0x0f, 0xe9, 0xab, 0x04, 0x6f, 0x71, 0x99, 0x9a, 0xc9, 0x28, 0xed, 0xc0, 0x08, 0x7b, 0xdb, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3426 = { .name = "ecdsa_secp224r1_sha256_3426", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3426_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3426_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3426_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 333 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3427 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3427_pubkey[] = { 0x03, 0x4e, 0xa7, 0x27, 0x98, 0x25, 0x7f, 0x33, 0xf2, 0x4f, 0x64, 0xc4, 0x94, 0x38, 0xfc, 0x43, 0xe8, 0xf6, 0x7d, 0xdc, 0x71, 0x70, 0xfd, 0x12, 0x7e, 0x2c, 0x43, 0xf2, 0x7f, 0xa9, 0xd5, 0x33, 0x64, 0xb6, 0x0d, 0x28, 0x03, 0x37, 0x6b, 0xde, 0x2d, 0x5a, 0x24, 0xd0, 0x57, 0x22, 0xfc, 0x9e, 0x04, 0xb7, 0x27, 0x68, 0x2b, 0x9e, 0xd9, 0xda, }; static const unsigned char ecdsa_secp224r1_sha256_3427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3427_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x3f, 0x55, 0x2f, 0x1c, 0x2b, 0x01, 0x65, 0x1e, 0xdf, 0x59, 0x02, 0x65, 0x0f, 0xe9, 0xab, 0x04, 0x6f, 0x71, 0x99, 0x9a, 0xc9, 0x28, 0xed, 0xc0, 0x08, 0x7b, 0xdb, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3427 = { .name = "ecdsa_secp224r1_sha256_3427", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3427_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3427_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3427_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 334 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3428 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3428_pubkey[] = { 0x36, 0x72, 0xba, 0x97, 0x18, 0xe6, 0x0d, 0x00, 0xea, 0xb4, 0x29, 0x5c, 0x81, 0x9e, 0xa3, 0x66, 0xa7, 0x78, 0xdd, 0x6f, 0xd6, 0x21, 0xfa, 0x96, 0x65, 0x25, 0x9c, 0xb6, 0x7a, 0xe5, 0xe8, 0x47, 0xee, 0xae, 0xa6, 0x74, 0xbe, 0xeb, 0x63, 0x63, 0x79, 0xe9, 0x68, 0xf7, 0x92, 0x65, 0x50, 0x2e, 0x41, 0x4a, 0x1d, 0x44, 0x4f, 0x04, 0xae, 0x79, }; static const unsigned char ecdsa_secp224r1_sha256_3428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3428_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3428 = { .name = "ecdsa_secp224r1_sha256_3428", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3428_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3428_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3428_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 335 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3429 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3429_pubkey[] = { 0x33, 0xee, 0xef, 0xbf, 0xc7, 0x72, 0x29, 0x13, 0x6e, 0x56, 0xb5, 0x75, 0x14, 0x48, 0x63, 0xed, 0x90, 0xb4, 0xc0, 0xf8, 0xa9, 0xe3, 0x15, 0x81, 0x6d, 0x6d, 0xe6, 0x48, 0x05, 0x17, 0x49, 0xdd, 0x11, 0x48, 0x0c, 0x14, 0x1f, 0xb5, 0xa1, 0x94, 0x63, 0x13, 0x16, 0x3c, 0x01, 0x41, 0x26, 0x5b, 0x68, 0xa2, 0x62, 0x16, 0xbc, 0xb9, 0x93, 0x6a, }; static const unsigned char ecdsa_secp224r1_sha256_3429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3429_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3429 = { .name = "ecdsa_secp224r1_sha256_3429", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3429_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3429_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3429_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 336 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3430 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3430_pubkey[] = { 0xbd, 0xa0, 0x3b, 0x24, 0xb6, 0x22, 0x43, 0xc6, 0x1e, 0x28, 0x8b, 0x6e, 0xa1, 0xe9, 0x9a, 0x28, 0x86, 0xf7, 0x00, 0x94, 0x4e, 0xb1, 0xb8, 0xf0, 0x46, 0x6c, 0xff, 0xd6, 0x1c, 0x71, 0x2a, 0x3a, 0xaa, 0xce, 0x69, 0x33, 0x19, 0x89, 0xb7, 0x07, 0xe6, 0x9e, 0x8d, 0xe3, 0x9d, 0x7c, 0xd1, 0xae, 0xb6, 0x5d, 0x97, 0xad, 0x18, 0x00, 0xbf, 0x7f, }; static const unsigned char ecdsa_secp224r1_sha256_3430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3430_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3430 = { .name = "ecdsa_secp224r1_sha256_3430", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3430_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3430_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3430_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 337 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3431 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3431_pubkey[] = { 0x7a, 0xbb, 0xa0, 0xcb, 0xff, 0x13, 0x4d, 0xdc, 0xf5, 0x4d, 0x04, 0x84, 0x6f, 0x95, 0x4b, 0x88, 0x2c, 0xa9, 0xfa, 0xef, 0xdf, 0xe8, 0x18, 0x89, 0x8b, 0xfb, 0x37, 0x8b, 0x79, 0x2f, 0x10, 0xb5, 0x79, 0x70, 0xae, 0x57, 0xbb, 0x4f, 0xb0, 0x1c, 0x08, 0x88, 0x68, 0x48, 0x85, 0x5a, 0xeb, 0x19, 0x84, 0xd3, 0xd6, 0xfc, 0xb2, 0xb4, 0x12, 0xdf, }; static const unsigned char ecdsa_secp224r1_sha256_3431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3431_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3431 = { .name = "ecdsa_secp224r1_sha256_3431", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3431_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3431_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3431_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 338 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3432 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3432_pubkey[] = { 0xf6, 0x8d, 0x99, 0xe2, 0x86, 0x53, 0xb9, 0xba, 0x3e, 0x7c, 0xed, 0xb3, 0xb7, 0x81, 0x65, 0xf5, 0xa5, 0x4f, 0xbe, 0x90, 0xd4, 0xb9, 0xf8, 0x84, 0x97, 0x97, 0x7e, 0x16, 0x23, 0x4d, 0xa3, 0xea, 0xa0, 0x17, 0x8a, 0x51, 0xb5, 0xb0, 0xc2, 0x08, 0xef, 0x08, 0x18, 0xdf, 0x6f, 0x65, 0x78, 0x79, 0x3c, 0x1a, 0xf1, 0x78, 0x70, 0x26, 0xb8, 0xda, }; static const unsigned char ecdsa_secp224r1_sha256_3432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3432_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3432 = { .name = "ecdsa_secp224r1_sha256_3432", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3432_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3432_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3432_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 339 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3433 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3433_pubkey[] = { 0x06, 0x5d, 0x9e, 0xf1, 0x33, 0xce, 0x81, 0xc2, 0xd6, 0xb6, 0x6e, 0x92, 0x83, 0x60, 0xf9, 0x52, 0x7f, 0x8f, 0x36, 0xb5, 0xba, 0xdd, 0x35, 0xb5, 0xf1, 0x09, 0x34, 0x27, 0x20, 0x04, 0x85, 0x27, 0x55, 0xf7, 0x74, 0x40, 0xa0, 0xb0, 0x8b, 0x9f, 0x16, 0x54, 0x89, 0xc0, 0x69, 0x6e, 0x8b, 0x49, 0x81, 0xd6, 0xd0, 0x4a, 0x28, 0x5b, 0x0f, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha256_3433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3433_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3433 = { .name = "ecdsa_secp224r1_sha256_3433", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3433_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3433_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3433_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 340 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3434 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3434_pubkey[] = { 0xd6, 0xce, 0xa0, 0x94, 0x72, 0xed, 0xe5, 0x74, 0xce, 0x1e, 0x05, 0x46, 0xc9, 0xac, 0xd0, 0xe1, 0xcd, 0x8c, 0xba, 0x9b, 0x12, 0x1d, 0xf2, 0x9e, 0x89, 0xd5, 0x09, 0x2e, 0x83, 0x90, 0x4e, 0xbf, 0xb9, 0x02, 0xea, 0x61, 0xc9, 0x87, 0xdc, 0x05, 0x08, 0xe0, 0xc9, 0xa7, 0xe5, 0x63, 0xe2, 0x60, 0x9f, 0xea, 0xf7, 0x91, 0x40, 0xab, 0x91, 0xd6, }; static const unsigned char ecdsa_secp224r1_sha256_3434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3434_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3434 = { .name = "ecdsa_secp224r1_sha256_3434", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3434_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3434_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3434_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 341 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3435 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3435_pubkey[] = { 0xc5, 0x20, 0xb1, 0x80, 0x03, 0xb3, 0x56, 0x09, 0x41, 0x47, 0xee, 0x2f, 0x9d, 0xf1, 0x17, 0x85, 0x72, 0xbe, 0xd8, 0x37, 0xbd, 0x89, 0x44, 0x3b, 0x25, 0xeb, 0xce, 0xb8, 0x0e, 0x2e, 0x93, 0xa9, 0x98, 0xfb, 0xba, 0xbe, 0x82, 0x19, 0x2e, 0xa4, 0xc8, 0x56, 0x51, 0xcf, 0x09, 0xa9, 0x5a, 0xb0, 0xdc, 0x2e, 0x3d, 0x97, 0x5e, 0xe7, 0xbe, 0x98, }; static const unsigned char ecdsa_secp224r1_sha256_3435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3435_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3435 = { .name = "ecdsa_secp224r1_sha256_3435", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3435_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3435_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3435_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 342 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3436 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3436_pubkey[] = { 0x9d, 0xd0, 0xb9, 0x9b, 0xb7, 0xa8, 0x30, 0xbc, 0xc7, 0xd5, 0x5a, 0xba, 0xc4, 0x29, 0x12, 0xd5, 0x25, 0xb0, 0x63, 0xc5, 0x0c, 0xf3, 0x77, 0xca, 0x57, 0x71, 0xa2, 0x6c, 0xa1, 0x41, 0xfc, 0xcf, 0x07, 0x93, 0xc2, 0xba, 0x24, 0x69, 0xa9, 0x46, 0xc2, 0xd4, 0xed, 0x26, 0x34, 0x40, 0x52, 0xc6, 0x3a, 0x6d, 0x7e, 0x77, 0x97, 0xce, 0x96, 0xc3, }; static const unsigned char ecdsa_secp224r1_sha256_3436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3436_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3436 = { .name = "ecdsa_secp224r1_sha256_3436", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3436_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3436_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3436_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 343 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3437 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3437_pubkey[] = { 0x3d, 0xab, 0x9f, 0x1b, 0x19, 0xe7, 0x15, 0xd1, 0x74, 0xa7, 0x36, 0x09, 0x20, 0x37, 0x5d, 0x56, 0x9a, 0x18, 0x1f, 0x05, 0x5e, 0x66, 0xf0, 0x13, 0x91, 0x87, 0x1b, 0x6f, 0x47, 0xa6, 0xd8, 0x7c, 0x23, 0xa5, 0xb6, 0xa1, 0xe3, 0xd0, 0xa9, 0x72, 0x13, 0x02, 0xcc, 0x02, 0xcc, 0xe3, 0x5f, 0x35, 0xde, 0xa0, 0x8e, 0x22, 0x61, 0x9b, 0xe5, 0x21, }; static const unsigned char ecdsa_secp224r1_sha256_3437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3437_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3437 = { .name = "ecdsa_secp224r1_sha256_3437", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3437_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3437_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3437_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 344 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3438 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3438_pubkey[] = { 0x56, 0xdd, 0xe1, 0xba, 0x58, 0xea, 0x31, 0x05, 0x3b, 0x25, 0x35, 0xc6, 0x66, 0x23, 0x34, 0x4c, 0x24, 0xc7, 0x2d, 0x21, 0x4a, 0xf5, 0xbe, 0x69, 0x82, 0xe8, 0x91, 0x00, 0xe7, 0x71, 0x08, 0x48, 0x06, 0x14, 0x3e, 0x86, 0xf2, 0xb3, 0x1b, 0xda, 0xf6, 0x22, 0x80, 0xf5, 0xb3, 0x11, 0xd0, 0xd2, 0xbd, 0xbb, 0x38, 0x5b, 0x20, 0xfc, 0x6c, 0x87, }; static const unsigned char ecdsa_secp224r1_sha256_3438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3438_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3438 = { .name = "ecdsa_secp224r1_sha256_3438", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3438_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3438_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3438_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3439 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3439_pubkey[] = { 0x94, 0xef, 0xe1, 0x38, 0x7f, 0xc0, 0x44, 0x7d, 0x7d, 0xbc, 0xb5, 0x37, 0x39, 0xa0, 0xe4, 0xe0, 0xdd, 0xec, 0x18, 0x1d, 0x38, 0x2c, 0xae, 0xa6, 0x45, 0xb1, 0xa6, 0x12, 0x44, 0x14, 0xa6, 0xb1, 0xc7, 0x89, 0x08, 0xd0, 0xfa, 0x20, 0x6f, 0x8f, 0x2d, 0xe9, 0x50, 0xad, 0x4a, 0x14, 0xd1, 0xce, 0x94, 0xd9, 0xcd, 0xdb, 0xe3, 0x2e, 0x46, 0x01, }; static const unsigned char ecdsa_secp224r1_sha256_3439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3439_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3439 = { .name = "ecdsa_secp224r1_sha256_3439", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3439_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3439_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3439_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 346 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3440 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3440_pubkey[] = { 0x62, 0x86, 0x80, 0x3b, 0x95, 0x29, 0x76, 0xee, 0x18, 0x97, 0x01, 0x36, 0x95, 0xd3, 0xef, 0x2c, 0xbb, 0x6f, 0x97, 0x71, 0x42, 0xa0, 0x42, 0xb2, 0x36, 0x57, 0x25, 0x77, 0x72, 0x2a, 0x6c, 0xe9, 0xad, 0x3e, 0x3f, 0xd2, 0x8e, 0x45, 0x18, 0x33, 0x49, 0x6c, 0x63, 0xb8, 0xab, 0x70, 0x53, 0x88, 0x77, 0x21, 0x5f, 0x20, 0x49, 0x42, 0xbf, 0x59, }; static const unsigned char ecdsa_secp224r1_sha256_3440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3440_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3440 = { .name = "ecdsa_secp224r1_sha256_3440", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3440_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3440_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3440_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 347 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3441 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3441_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3441_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3441 = { .name = "ecdsa_secp224r1_sha256_3441", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3441_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3441_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3441_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 348 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3442 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3442_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha256_3442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3442_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3442 = { .name = "ecdsa_secp224r1_sha256_3442", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3442_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3442_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3442_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 349 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3443 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3443_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3443_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3443 = { .name = "ecdsa_secp224r1_sha256_3443", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3443_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3443_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3443_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 350 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3444 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3444_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha256_3444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3444_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdc, 0x74, 0xbf, 0xe0, 0x82, 0x08, 0x7a, 0xe8, 0xb6, 0x1c, 0xbd, 0x54, 0xb8, 0x10, 0x3f, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3444 = { .name = "ecdsa_secp224r1_sha256_3444", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3444_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3444_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3444_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 351 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3445 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3445_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3445_sig[] = { 0x03, 0x64, 0xe7, 0xd9, 0x68, 0x32, 0x61, 0x4a, 0x80, 0x21, 0x6e, 0x73, 0x0c, 0x35, 0x35, 0x34, 0xd4, 0xbf, 0xfd, 0x2c, 0x26, 0x64, 0x9c, 0x0b, 0x4b, 0x0e, 0x26, 0x28, 0x8f, 0x40, 0x06, 0x4b, 0x41, 0x2f, 0xe3, 0x8c, 0x5b, 0xa9, 0xcf, 0x66, 0x4e, 0x61, 0x72, 0xed, 0x48, 0xe6, 0xe7, 0x9f, 0x0f, 0xe5, 0xe3, 0x1a, 0x54, 0x98, 0x5d, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3445 = { .name = "ecdsa_secp224r1_sha256_3445", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3445_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha256_3445_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 352 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3446 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3446_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3446_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha256_3446_sig[] = { 0xf4, 0xb6, 0x8d, 0xf6, 0x2b, 0x92, 0x38, 0x36, 0x3c, 0xcc, 0x1b, 0xbe, 0xe0, 0x0d, 0xeb, 0x3f, 0xb2, 0x69, 0x3f, 0x78, 0x94, 0x17, 0x8e, 0x14, 0xee, 0xac, 0x59, 0x6a, 0x7f, 0x51, 0xc9, 0x45, 0x1a, 0xda, 0xcd, 0x2b, 0xcb, 0xc7, 0x21, 0xf7, 0xdf, 0x06, 0x43, 0xd7, 0xcd, 0x18, 0xa6, 0xb5, 0x20, 0x64, 0xb5, 0x07, 0xe1, 0x91, 0x2f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3446 = { .name = "ecdsa_secp224r1_sha256_3446", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3446_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3446_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha256_3446_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 353 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3447 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3447_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_3447_sig[] = { 0xb2, 0x97, 0x0c, 0xde, 0xc2, 0x9c, 0x70, 0x29, 0x4a, 0x18, 0xbb, 0xc4, 0x99, 0x85, 0xef, 0xa3, 0x3a, 0xcc, 0x0a, 0xf5, 0x09, 0xc3, 0x26, 0xa3, 0x97, 0x7a, 0x35, 0xe8, 0x0c, 0xea, 0x3e, 0xd8, 0xeb, 0xaa, 0xf6, 0xee, 0x6a, 0xef, 0x60, 0x49, 0xa2, 0x3c, 0xbc, 0x39, 0xf6, 0x1f, 0xcf, 0x8f, 0xc6, 0xbe, 0x4b, 0xab, 0x13, 0x38, 0x55, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3447 = { .name = "ecdsa_secp224r1_sha256_3447", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3447_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3447_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_3447_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 354 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3448 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3448_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_3448_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3448_sig[] = { 0x7e, 0x7b, 0x0e, 0xb7, 0xda, 0x8c, 0x68, 0xa7, 0x07, 0x2b, 0x11, 0x40, 0x4e, 0xe9, 0x5a, 0x5c, 0x40, 0x7f, 0xbf, 0xe3, 0xd6, 0x96, 0x46, 0x80, 0x2e, 0x28, 0xae, 0x77, 0xd4, 0x09, 0xa2, 0xf6, 0xbb, 0xaa, 0xe5, 0x9b, 0xb6, 0x0f, 0xc0, 0xa0, 0x92, 0xb1, 0x2f, 0xa4, 0xe6, 0x7d, 0xc8, 0xd0, 0x88, 0xcf, 0x19, 0xa8, 0x33, 0x32, 0x2f, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3448 = { .name = "ecdsa_secp224r1_sha256_3448", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3448_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3448_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha256_3448_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 355 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3449 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3449_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3449_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3449_sig[] = { 0x51, 0x9b, 0xf1, 0x85, 0xff, 0x46, 0x35, 0x27, 0x19, 0x61, 0xfa, 0x49, 0x1b, 0xe2, 0x57, 0x23, 0x1d, 0xee, 0xea, 0x9c, 0x53, 0xa6, 0xed, 0xe3, 0xb4, 0xa8, 0x9e, 0xd1, 0x48, 0x6b, 0xda, 0xd4, 0x84, 0xa6, 0xa3, 0x13, 0x4e, 0x14, 0x71, 0xcf, 0x56, 0xa9, 0xdf, 0x0f, 0xac, 0x50, 0xf7, 0x73, 0xb3, 0xe3, 0x7d, 0x6f, 0x32, 0x76, 0x17, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3449 = { .name = "ecdsa_secp224r1_sha256_3449", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3449_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3449_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3449_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 356 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3450 for ECDSA, tcId is 357 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3450_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3450_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3450_sig[] = { 0x09, 0xfd, 0x64, 0x48, 0x98, 0xb7, 0xcb, 0x5d, 0x01, 0x8b, 0x52, 0x23, 0x4e, 0x7b, 0x4e, 0xf2, 0xb5, 0x47, 0x89, 0xaf, 0xd0, 0xce, 0x9c, 0x43, 0x4e, 0x9e, 0x55, 0x15, 0xf1, 0x93, 0x09, 0x53, 0x21, 0x64, 0xea, 0x20, 0x53, 0xca, 0xe5, 0x5d, 0xf7, 0xbd, 0xcb, 0xab, 0x53, 0x6c, 0x83, 0xea, 0x7b, 0xfe, 0x6f, 0xe1, 0x0d, 0x60, 0xc1, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3450 = { .name = "ecdsa_secp224r1_sha256_3450", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3450_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3450_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3450_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 357 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3451 for ECDSA, tcId is 358 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3451_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_3451_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3451_sig[] = { 0xec, 0x91, 0x9d, 0x4e, 0x28, 0x3c, 0xcf, 0x1f, 0x71, 0xa9, 0xe3, 0xc0, 0xf7, 0x81, 0xa3, 0x67, 0x58, 0xd3, 0xf3, 0x8b, 0x1b, 0x78, 0xa8, 0x7a, 0x74, 0x28, 0x8e, 0x80, 0x4c, 0x46, 0x63, 0x04, 0x4a, 0x73, 0xc7, 0x9b, 0xd8, 0x8f, 0x0d, 0xc2, 0x45, 0xab, 0x1a, 0x32, 0xf8, 0x9f, 0x06, 0xf4, 0x0a, 0x70, 0x4b, 0x31, 0xe9, 0xfa, 0xbc, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3451 = { .name = "ecdsa_secp224r1_sha256_3451", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3451_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3451_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3451_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 358 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3452 for ECDSA, tcId is 359 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3452_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3452_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3452_sig[] = { 0xc5, 0x17, 0x60, 0x47, 0x84, 0x47, 0x21, 0x75, 0x97, 0xec, 0xc6, 0xf4, 0x00, 0x1b, 0xd4, 0x50, 0x88, 0xd5, 0x3c, 0x90, 0xf5, 0x31, 0x03, 0x60, 0x8b, 0xf8, 0x8a, 0xea, 0xa2, 0x01, 0x25, 0x3a, 0xa9, 0x03, 0xf9, 0x78, 0x1e, 0x89, 0x92, 0x10, 0x1d, 0x71, 0x71, 0xd2, 0xdd, 0x3a, 0x5d, 0x48, 0xc4, 0x4d, 0x8e, 0x1d, 0x54, 0x4c, 0xd6, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3452 = { .name = "ecdsa_secp224r1_sha256_3452", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3452_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3452_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3452_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 359 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3453 for ECDSA, tcId is 360 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3453_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3453_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3453_sig[] = { 0x76, 0xbe, 0x01, 0x12, 0x67, 0x4e, 0xc2, 0x91, 0x28, 0x82, 0x3e, 0x1a, 0xf7, 0x51, 0x2e, 0x61, 0x43, 0x87, 0x2f, 0xef, 0x30, 0xa6, 0x4e, 0x2f, 0x17, 0x99, 0xbd, 0x56, 0x18, 0x7e, 0x50, 0x3e, 0x1a, 0x48, 0xc2, 0x7b, 0x54, 0x9f, 0xe0, 0xa4, 0xce, 0x5e, 0x58, 0x1e, 0x24, 0x2c, 0x86, 0x63, 0xfc, 0x9e, 0xfb, 0x02, 0xd6, 0xf2, 0xb1, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3453 = { .name = "ecdsa_secp224r1_sha256_3453", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3453_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3453_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3453_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 360 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3454 for ECDSA, tcId is 361 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3454_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_3454_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3454_sig[] = { 0x36, 0x24, 0x5e, 0xf1, 0x26, 0xb5, 0xb5, 0x1e, 0x45, 0x9f, 0x84, 0xea, 0xaa, 0xd5, 0xa4, 0x95, 0x06, 0x1f, 0x04, 0x71, 0xdc, 0x8c, 0x23, 0xf1, 0xc5, 0xf1, 0x62, 0x82, 0x39, 0xe3, 0x1d, 0x72, 0xa0, 0x6b, 0xa8, 0xe1, 0x4f, 0xcf, 0x95, 0x77, 0x8e, 0x07, 0xbc, 0x16, 0xa2, 0x62, 0x8e, 0x39, 0x44, 0x9d, 0xa8, 0x85, 0x7d, 0x50, 0x6e, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3454 = { .name = "ecdsa_secp224r1_sha256_3454", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3454_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3454_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3454_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 361 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3455 for ECDSA, tcId is 362 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3455_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3455_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3455_sig[] = { 0x25, 0x86, 0x82, 0x97, 0x5d, 0xf8, 0xbc, 0xa7, 0xf2, 0x03, 0xf7, 0x71, 0xeb, 0xeb, 0x47, 0x8e, 0xf6, 0x37, 0x36, 0x0c, 0x86, 0x0f, 0xc3, 0x86, 0xcf, 0xb2, 0x17, 0x45, 0x76, 0x63, 0xe7, 0x01, 0x88, 0x04, 0x7e, 0x41, 0x46, 0x9a, 0x2a, 0x35, 0xc8, 0xc3, 0x30, 0xdd, 0x90, 0x0f, 0x23, 0x40, 0xba, 0x82, 0xaa, 0xfd, 0x22, 0x96, 0x2a, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3455 = { .name = "ecdsa_secp224r1_sha256_3455", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3455_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3455_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3455_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 362 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3456 for ECDSA, tcId is 363 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3456_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3456_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3456_sig[] = { 0x85, 0xc9, 0x86, 0x14, 0xf3, 0x6c, 0x0d, 0x66, 0xf8, 0xd8, 0x78, 0x34, 0xca, 0xe9, 0x78, 0x61, 0x1b, 0x7b, 0x4e, 0xeb, 0xf5, 0x9a, 0x46, 0xbe, 0xa1, 0xb8, 0x9a, 0xe9, 0xd1, 0xa1, 0x8e, 0x37, 0x8d, 0xda, 0x84, 0x0e, 0x06, 0xb6, 0x0f, 0x62, 0x79, 0xbf, 0x0a, 0x22, 0x31, 0xd9, 0xfa, 0x2d, 0x8d, 0x2c, 0x31, 0xe8, 0x8b, 0xc1, 0xbd, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3456 = { .name = "ecdsa_secp224r1_sha256_3456", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3456_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3456_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3456_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 363 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3457 for ECDSA, tcId is 364 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3457_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_3457_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3457_sig[] = { 0xca, 0x7b, 0x74, 0x32, 0xba, 0x41, 0xff, 0x21, 0x12, 0xe1, 0x11, 0x6f, 0xff, 0xde, 0x89, 0xbb, 0xd6, 0x8f, 0x5c, 0xe6, 0x7f, 0xe5, 0x51, 0x3d, 0x16, 0xc8, 0xe6, 0xf7, 0xe4, 0x21, 0xb7, 0x59, 0x9e, 0x01, 0x80, 0x79, 0x8a, 0xcc, 0x20, 0x06, 0x45, 0x16, 0x03, 0xcd, 0xa2, 0xdb, 0x1d, 0x58, 0x27, 0x41, 0x11, 0x6e, 0x60, 0x33, 0xce, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3457 = { .name = "ecdsa_secp224r1_sha256_3457", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3457_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3457_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3457_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 364 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3458 for ECDSA, tcId is 365 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3458_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3458_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3458_sig[] = { 0x19, 0x39, 0x7f, 0xe5, 0xd3, 0xec, 0xab, 0xf8, 0x0f, 0xc6, 0x24, 0xc1, 0xbf, 0x37, 0x95, 0x64, 0x38, 0x75, 0x17, 0xc1, 0x85, 0x08, 0x7d, 0xc9, 0x7d, 0x60, 0x50, 0x69, 0x33, 0xb5, 0x77, 0x3e, 0x9a, 0xaf, 0x6c, 0x34, 0xcb, 0x61, 0x2c, 0xfc, 0x81, 0xef, 0xd3, 0xbf, 0x9c, 0x22, 0x22, 0x4e, 0x8c, 0x4f, 0xa1, 0xbf, 0xcc, 0xf5, 0xc5, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3458 = { .name = "ecdsa_secp224r1_sha256_3458", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3458_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3458_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3458_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 365 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3459 for ECDSA, tcId is 366 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3459_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3459_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3459_sig[] = { 0x70, 0xf2, 0x4f, 0x5c, 0x16, 0x41, 0x64, 0xbf, 0xbb, 0x84, 0x59, 0xaa, 0x12, 0xa9, 0x81, 0xaa, 0x31, 0x2d, 0xbc, 0xf0, 0x02, 0x04, 0x32, 0x6e, 0xba, 0xaa, 0xbd, 0xc8, 0xf5, 0xce, 0xbe, 0xe8, 0xca, 0xed, 0xae, 0x86, 0x62, 0xc4, 0x35, 0x01, 0x66, 0x50, 0x84, 0xb4, 0x5d, 0x2f, 0x49, 0x4f, 0xb7, 0x0d, 0x60, 0x30, 0x43, 0x54, 0x3d, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3459 = { .name = "ecdsa_secp224r1_sha256_3459", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3459_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3459_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3459_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 366 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3460 for ECDSA, tcId is 367 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3460_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_3460_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3460_sig[] = { 0x0b, 0xf2, 0xd8, 0x6e, 0xca, 0xa8, 0xb5, 0x6a, 0xca, 0x5e, 0x8f, 0x8e, 0xbc, 0xb4, 0x50, 0x81, 0xd0, 0x78, 0xa1, 0x45, 0x55, 0xb7, 0x5f, 0x5b, 0xe8, 0xe9, 0xb1, 0x32, 0x9a, 0x55, 0xb3, 0xce, 0x47, 0x34, 0x84, 0x99, 0x66, 0xb5, 0x03, 0x4c, 0xcd, 0x9b, 0x19, 0xf7, 0x64, 0x07, 0xee, 0x02, 0x41, 0xc3, 0xf5, 0x8e, 0x7b, 0x8f, 0xc8, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3460 = { .name = "ecdsa_secp224r1_sha256_3460", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3460_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3460_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3460_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 367 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3461 for ECDSA, tcId is 368 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3461_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3461_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3461_sig[] = { 0xbf, 0xc5, 0xdc, 0x44, 0x34, 0xcd, 0x09, 0x36, 0x96, 0x10, 0x68, 0x7d, 0x38, 0xd2, 0xd4, 0x18, 0xb6, 0x3f, 0xd4, 0x75, 0xde, 0xa2, 0x46, 0xa4, 0x56, 0xb2, 0x5a, 0x3a, 0xb1, 0x71, 0xdf, 0xa6, 0xcf, 0x72, 0x2f, 0x20, 0x81, 0x63, 0x70, 0xa8, 0x68, 0x78, 0x5d, 0xa8, 0x42, 0xb3, 0x7b, 0xac, 0x31, 0xd7, 0xb7, 0x8e, 0x67, 0x51, 0xfc, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3461 = { .name = "ecdsa_secp224r1_sha256_3461", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3461_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3461_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3461_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 368 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3462 for ECDSA, tcId is 369 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3462_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3462_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3462_sig[] = { 0x8f, 0xdb, 0xe8, 0xda, 0x64, 0x6c, 0x56, 0x42, 0xd7, 0x67, 0xc7, 0xdb, 0xeb, 0x38, 0x72, 0xb1, 0xed, 0xab, 0x6e, 0x37, 0x36, 0x58, 0x05, 0xf0, 0xe9, 0x4c, 0xe0, 0xa9, 0xbc, 0xf3, 0x5a, 0xb8, 0x12, 0x22, 0x88, 0x3d, 0xd3, 0x52, 0x6c, 0xb0, 0xcf, 0x93, 0x13, 0x8f, 0x46, 0x87, 0xcd, 0x0b, 0x10, 0xc2, 0xb0, 0xa1, 0x26, 0x38, 0x51, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3462 = { .name = "ecdsa_secp224r1_sha256_3462", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3462_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3462_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3462_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 369 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3463 for ECDSA, tcId is 370 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3463_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_3463_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3463_sig[] = { 0xe2, 0x3a, 0x11, 0x27, 0x58, 0x48, 0xfd, 0x4f, 0x8b, 0x6f, 0x4a, 0xc4, 0xfc, 0x30, 0x5e, 0xae, 0x98, 0x1d, 0x3b, 0x7d, 0xc4, 0x53, 0xe5, 0xa9, 0x80, 0xc4, 0x64, 0x22, 0x1a, 0x87, 0x56, 0x93, 0xf2, 0x4a, 0x03, 0xea, 0x16, 0x14, 0xc4, 0xc3, 0xbb, 0xd0, 0xdd, 0x72, 0x21, 0x42, 0x9f, 0x22, 0xb3, 0x37, 0xea, 0x7d, 0x98, 0x34, 0x8c, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3463 = { .name = "ecdsa_secp224r1_sha256_3463", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3463_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3463_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3463_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 370 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3464 for ECDSA, tcId is 371 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3464_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3464_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3464_sig[] = { 0x76, 0x64, 0x51, 0x64, 0xff, 0x9a, 0xf3, 0xa1, 0xa9, 0x20, 0x5f, 0xda, 0x2e, 0xef, 0x32, 0x6d, 0x2b, 0xff, 0xc7, 0x95, 0xdc, 0xc4, 0x82, 0x95, 0x47, 0xfe, 0x01, 0xdd, 0xb6, 0x5b, 0xba, 0x50, 0x37, 0x19, 0x31, 0x4b, 0x27, 0x73, 0x4d, 0xd0, 0x6b, 0x13, 0x95, 0xd5, 0x40, 0xaf, 0x83, 0x96, 0x02, 0x9b, 0x78, 0xb8, 0x4e, 0x01, 0x49, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3464 = { .name = "ecdsa_secp224r1_sha256_3464", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3464_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3464_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3464_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 371 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3465 for ECDSA, tcId is 372 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3465_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3465_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3465_sig[] = { 0x32, 0xfa, 0x0c, 0xa7, 0xe0, 0x7f, 0x1f, 0x86, 0xac, 0x35, 0x07, 0x34, 0x99, 0x4e, 0x1f, 0x31, 0xb6, 0xda, 0x9c, 0x82, 0xf9, 0x3d, 0xce, 0xd2, 0xb9, 0x83, 0xc2, 0x9c, 0x7b, 0x78, 0x91, 0x28, 0x22, 0x06, 0xa4, 0x57, 0x11, 0xbd, 0xfc, 0xb2, 0xa1, 0x02, 0xb5, 0xd2, 0x89, 0xdf, 0x84, 0xff, 0x57, 0x78, 0x54, 0x86, 0x03, 0x57, 0x40, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3465 = { .name = "ecdsa_secp224r1_sha256_3465", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3465_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3465_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3465_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 372 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3466 for ECDSA, tcId is 373 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3466_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_3466_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3466_sig[] = { 0x2d, 0x54, 0x92, 0x47, 0x8c, 0xa6, 0x4e, 0x51, 0x11, 0xdf, 0xd8, 0x52, 0x18, 0x67, 0xb6, 0x47, 0x7b, 0x7e, 0x78, 0x22, 0x78, 0x49, 0xad, 0x09, 0x0b, 0x85, 0x56, 0x94, 0xa5, 0x32, 0xf5, 0xa2, 0xfa, 0x35, 0x94, 0xaf, 0x81, 0xcd, 0x59, 0x28, 0xb8, 0x1b, 0x40, 0x57, 0xda, 0x71, 0x7b, 0xe5, 0xfb, 0x42, 0xa3, 0xa8, 0x6c, 0x68, 0x19, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3466 = { .name = "ecdsa_secp224r1_sha256_3466", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3466_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3466_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3466_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 373 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3467 for ECDSA, tcId is 374 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3467_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3467_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3467_sig[] = { 0x19, 0x1e, 0xee, 0x5d, 0xaf, 0x55, 0xcd, 0x49, 0x9e, 0x85, 0x39, 0xcb, 0x2c, 0xff, 0x79, 0x7c, 0xfe, 0xc5, 0xd5, 0x66, 0xd2, 0x02, 0x7b, 0xf9, 0xf8, 0xd6, 0x46, 0x93, 0xda, 0xdf, 0xea, 0xe8, 0x13, 0x1f, 0x64, 0xd9, 0x6b, 0x94, 0xfd, 0x34, 0x01, 0x97, 0xca, 0xa2, 0xbc, 0x04, 0x81, 0x85, 0x54, 0x81, 0x2f, 0xee, 0xf3, 0x34, 0x30, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3467 = { .name = "ecdsa_secp224r1_sha256_3467", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3467_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3467_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3467_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 374 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3468 for ECDSA, tcId is 375 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3468_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3468_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3468_sig[] = { 0xe0, 0xe2, 0xc0, 0x81, 0x80, 0xb8, 0xa2, 0x07, 0xee, 0x91, 0x05, 0xa7, 0xd3, 0x79, 0xfa, 0x11, 0x23, 0x68, 0xe8, 0x37, 0x0f, 0xa0, 0x9d, 0xfd, 0xe4, 0xa4, 0x5c, 0x45, 0xc7, 0x17, 0xbc, 0x08, 0x60, 0xe0, 0x16, 0xe7, 0xce, 0x48, 0xf8, 0xfe, 0x6a, 0x29, 0x9b, 0x36, 0x90, 0x6a, 0x60, 0x55, 0xad, 0xad, 0x93, 0xb4, 0x16, 0xce, 0x88, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3468 = { .name = "ecdsa_secp224r1_sha256_3468", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3468_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3468_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3468_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 375 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3469 for ECDSA, tcId is 376 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3469_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_3469_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3469_sig[] = { 0x1b, 0x91, 0x9e, 0xf9, 0x35, 0x32, 0x29, 0x27, 0x43, 0xbb, 0x2e, 0x1b, 0x7b, 0x48, 0x94, 0xfd, 0x84, 0x7c, 0x6e, 0x5d, 0xe5, 0x2a, 0x08, 0xe1, 0xb0, 0xf2, 0xdc, 0xfb, 0xc2, 0xd3, 0x0d, 0x6b, 0x75, 0x94, 0xd8, 0xdb, 0xd2, 0x61, 0x49, 0x1a, 0xe1, 0xd5, 0x87, 0x79, 0x50, 0x5b, 0x07, 0x5b, 0x64, 0xe5, 0x56, 0x4d, 0xc9, 0x7a, 0x41, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3469 = { .name = "ecdsa_secp224r1_sha256_3469", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3469_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3469_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3469_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 376 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3470 for ECDSA, tcId is 377 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3470_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3470_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3470_sig[] = { 0xe7, 0x5d, 0xb4, 0x9e, 0xd3, 0x3f, 0xf2, 0x88, 0x5e, 0xa6, 0x10, 0x0c, 0xc9, 0x5b, 0x8f, 0xe1, 0xb9, 0x24, 0x2e, 0xa4, 0x24, 0x8d, 0xb0, 0x7b, 0xca, 0xc2, 0xe0, 0x20, 0x79, 0x6c, 0x86, 0x61, 0x42, 0xae, 0x8e, 0xb7, 0x5b, 0xb0, 0x49, 0x9c, 0x66, 0x8c, 0x6f, 0xe4, 0x54, 0x97, 0x69, 0x2f, 0xbc, 0xc6, 0x6b, 0x37, 0xc2, 0xe4, 0x62, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3470 = { .name = "ecdsa_secp224r1_sha256_3470", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3470_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3470_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3470_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 377 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3471 for ECDSA, tcId is 378 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3471_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3471_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3471_sig[] = { 0x1f, 0x81, 0xcd, 0x92, 0x43, 0x62, 0xec, 0x82, 0x58, 0x90, 0x30, 0x7b, 0x9b, 0x39, 0x36, 0xe0, 0xd8, 0xf7, 0x28, 0xa7, 0xc8, 0x4b, 0xdb, 0x43, 0xc5, 0xcf, 0x04, 0x33, 0x39, 0xd3, 0xe4, 0x6a, 0x03, 0x04, 0x0a, 0xd4, 0x1a, 0xc0, 0x26, 0xb1, 0x8e, 0x06, 0x29, 0xf6, 0x14, 0x5e, 0x3d, 0xc8, 0xd1, 0xe6, 0xbb, 0xe2, 0x00, 0xc8, 0x48, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3471 = { .name = "ecdsa_secp224r1_sha256_3471", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3471_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3471_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3471_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 378 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3472 for ECDSA, tcId is 379 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3472_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_3472_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3472_sig[] = { 0x00, 0xfd, 0xa6, 0x13, 0xaa, 0x67, 0xca, 0x42, 0x67, 0x3a, 0xd4, 0x30, 0x9f, 0x3f, 0x0f, 0x05, 0xb2, 0x56, 0x9f, 0x3d, 0xee, 0x63, 0xf4, 0xaa, 0x9c, 0xc5, 0x4c, 0xf3, 0x1e, 0x5a, 0x64, 0xb6, 0x8a, 0x37, 0xe5, 0xb2, 0x01, 0xc9, 0x18, 0x30, 0x3d, 0xc7, 0xa4, 0x04, 0x39, 0xaa, 0xea, 0xcf, 0x01, 0x9c, 0x58, 0x92, 0xa8, 0xf6, 0xd0, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3472 = { .name = "ecdsa_secp224r1_sha256_3472", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3472_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3472_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3472_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 379 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3473 for ECDSA, tcId is 380 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3473_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3473_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3473_sig[] = { 0xb9, 0x32, 0xb3, 0xf7, 0xe6, 0x46, 0x7e, 0x1e, 0xc7, 0xa5, 0x61, 0xf3, 0x11, 0x60, 0x24, 0x8c, 0x7f, 0x22, 0x45, 0x50, 0xa8, 0x50, 0x87, 0x88, 0x63, 0x4b, 0x53, 0xce, 0xa0, 0xc5, 0x31, 0x2a, 0xcf, 0x9e, 0x80, 0x1a, 0xff, 0x6d, 0x6f, 0xc9, 0x85, 0x50, 0xcf, 0xa7, 0x12, 0xbb, 0xf6, 0x59, 0x37, 0x16, 0x5a, 0x36, 0xf2, 0xc3, 0x2d, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3473 = { .name = "ecdsa_secp224r1_sha256_3473", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3473_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3473_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3473_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 380 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3474 for ECDSA, tcId is 381 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3474_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3474_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3474_sig[] = { 0xe5, 0x09, 0x59, 0x3f, 0xb0, 0x92, 0x45, 0xee, 0x82, 0x26, 0xce, 0x72, 0x78, 0x6b, 0x0c, 0xc3, 0x52, 0xbe, 0x55, 0x5a, 0x74, 0x86, 0xbe, 0x62, 0x8f, 0x4f, 0xd0, 0x0c, 0x0b, 0x7a, 0xbd, 0xe0, 0x06, 0x1b, 0x1e, 0x07, 0xbf, 0x13, 0x31, 0x91, 0x50, 0xa4, 0xff, 0x6a, 0x46, 0x4a, 0xba, 0xb6, 0x36, 0xab, 0x4e, 0x29, 0x7b, 0x0d, 0x76, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3474 = { .name = "ecdsa_secp224r1_sha256_3474", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3474_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3474_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3474_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 381 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3475 for ECDSA, tcId is 382 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3475_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_3475_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3475_sig[] = { 0x6e, 0x54, 0xf9, 0x41, 0x20, 0x4d, 0x46, 0x39, 0xb8, 0x63, 0xc9, 0x8a, 0x65, 0xb7, 0xbe, 0xe3, 0x18, 0xd5, 0x1a, 0xb1, 0x90, 0x0a, 0x8f, 0x34, 0x5e, 0xac, 0x6f, 0x07, 0x0d, 0xa5, 0x05, 0x48, 0x29, 0x21, 0x4e, 0xcd, 0xe5, 0xe1, 0x05, 0x79, 0xb3, 0x6a, 0x2f, 0xe6, 0x42, 0x6c, 0x24, 0xb0, 0x64, 0xed, 0x77, 0xc3, 0x85, 0x90, 0xf2, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3475 = { .name = "ecdsa_secp224r1_sha256_3475", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3475_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3475_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3475_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 382 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3476 for ECDSA, tcId is 383 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3476_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3476_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3476_sig[] = { 0x85, 0xea, 0x4a, 0xb3, 0xff, 0xdc, 0x99, 0x23, 0x30, 0xc0, 0xca, 0x81, 0x52, 0xfa, 0xf9, 0x91, 0x38, 0x6b, 0xce, 0x82, 0x87, 0x7d, 0xbb, 0x23, 0x9b, 0xa6, 0x54, 0xf6, 0x08, 0x06, 0xc6, 0xba, 0xf0, 0xeb, 0xea, 0x4c, 0x1a, 0xaa, 0x19, 0x0e, 0x7d, 0x43, 0x25, 0xd4, 0x6d, 0x1f, 0x77, 0x89, 0xd5, 0x50, 0x63, 0x2b, 0x70, 0xb5, 0xfc, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3476 = { .name = "ecdsa_secp224r1_sha256_3476", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3476_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3476_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3476_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 383 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3477 for ECDSA, tcId is 384 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3477_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3477_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3477_sig[] = { 0x44, 0xd5, 0x3d, 0xeb, 0xb6, 0x46, 0xb7, 0x34, 0x85, 0x40, 0x2e, 0xab, 0x2d, 0x09, 0x90, 0x81, 0xb9, 0x7b, 0x12, 0x43, 0xc0, 0x25, 0xb6, 0x24, 0xf0, 0xdd, 0x67, 0xea, 0xe5, 0xde, 0x78, 0x9a, 0x7d, 0x4b, 0x77, 0xea, 0xc6, 0xd7, 0xbb, 0xa4, 0x16, 0x58, 0xe6, 0xe4, 0xdc, 0x34, 0x7d, 0xab, 0xed, 0x2f, 0x96, 0x80, 0xc0, 0x4a, 0x6f, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3477 = { .name = "ecdsa_secp224r1_sha256_3477", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3477_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3477_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3477_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 384 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3478 for ECDSA, tcId is 385 in file ecdsa_secp224r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_3478_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_3478_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_3478_sig[] = { 0x15, 0x26, 0xeb, 0x2f, 0x65, 0x7e, 0xbe, 0xa9, 0xaf, 0x4c, 0xa1, 0x84, 0xb9, 0x75, 0xc0, 0x23, 0x72, 0xc8, 0x8e, 0x24, 0xe8, 0x35, 0xf3, 0xf5, 0x77, 0x4c, 0x0e, 0x12, 0x1f, 0x1e, 0xcc, 0xe3, 0x8e, 0xe5, 0x23, 0x72, 0xcb, 0x20, 0x19, 0x07, 0x79, 0x4d, 0xe1, 0x7b, 0x6d, 0x6c, 0x1a, 0xfa, 0x13, 0xc3, 0x16, 0xc5, 0x1c, 0xb0, 0x7b, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_3478 = { .name = "ecdsa_secp224r1_sha256_3478", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_3478_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_3478_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_3478_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 385 in file ecdsa_secp224r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 3479 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3479_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3479_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x56, 0xc8, 0x09, 0x70, 0xd9, 0xa3, 0x08, 0xa9, 0xf6, 0x39, 0xed, 0x19, 0x9a, 0xc0, 0x88, 0xf9, 0x3b, 0xa9, 0xaf, 0xd0, 0x4c, 0x53, 0xf4, 0x8e, 0x4f, 0xa8, 0x8d, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3479 = { .name = "ecdsa_secp224r1_sha3_224_3479", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3479_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3479_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3479_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3480 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3480_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3480_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3480 = { .name = "ecdsa_secp224r1_sha3_224_3480", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3480_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3480_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3480_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3481 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3481_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3481_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3481 = { .name = "ecdsa_secp224r1_sha3_224_3481", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3481_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3481_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3481_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3482 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3482_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3482_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3482 = { .name = "ecdsa_secp224r1_sha3_224_3482", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3482_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3482_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3482_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3483 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3483_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3483_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3483_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3483 = { .name = "ecdsa_secp224r1_sha3_224_3483", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3483_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3483_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3483_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3484 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3484_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3484_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3484_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3484 = { .name = "ecdsa_secp224r1_sha3_224_3484", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3484_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3484_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3484_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3485 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3485_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3485_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3485_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3485 = { .name = "ecdsa_secp224r1_sha3_224_3485", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3485_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3485_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3485_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3486 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3486_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3486_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3486_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3486 = { .name = "ecdsa_secp224r1_sha3_224_3486", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3486_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3486_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3486_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3487 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3487_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3487_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3487_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3487 = { .name = "ecdsa_secp224r1_sha3_224_3487", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3487_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3487_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3487_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3488 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3488_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3488_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3488_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3488 = { .name = "ecdsa_secp224r1_sha3_224_3488", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3488_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3488_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3488_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3489 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3489_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3489_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3489_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x00, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3489 = { .name = "ecdsa_secp224r1_sha3_224_3489", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3489_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3489_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3489_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3490 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3490_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3490_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3490_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3490 = { .name = "ecdsa_secp224r1_sha3_224_3490", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3490_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3490_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3490_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3491 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3491_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3491_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3491_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3491 = { .name = "ecdsa_secp224r1_sha3_224_3491", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3491_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3491_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3491_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3492 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3492_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3492_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3492_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3492 = { .name = "ecdsa_secp224r1_sha3_224_3492", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3492_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3492_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3492_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3493 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3493_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3493_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3493_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x05, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3493 = { .name = "ecdsa_secp224r1_sha3_224_3493", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3493_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3493_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3493_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3494 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3494_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3494_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3494_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3494 = { .name = "ecdsa_secp224r1_sha3_224_3494", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3494_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3494_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3494_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3495 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3495_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3495_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3495_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3495 = { .name = "ecdsa_secp224r1_sha3_224_3495", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3495_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3495_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3495_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3496 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3496_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3496_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3496_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3496 = { .name = "ecdsa_secp224r1_sha3_224_3496", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3496_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3496_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3496_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3497 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3497_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3497_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3497_sig[] = { 0x02, 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3497 = { .name = "ecdsa_secp224r1_sha3_224_3497", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3497_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3497_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3497_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3498 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3498_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3498_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3498_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x02, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3498 = { .name = "ecdsa_secp224r1_sha3_224_3498", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3498_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3498_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3498_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3499 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3499_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3499_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3499_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0xf6, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3499 = { .name = "ecdsa_secp224r1_sha3_224_3499", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3499_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3499_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3499_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3500 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3500_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3500_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3500_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3500 = { .name = "ecdsa_secp224r1_sha3_224_3500", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3500_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3500_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3500_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3501 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3501_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3501_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3501_sig[] = { 0x00, 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3501 = { .name = "ecdsa_secp224r1_sha3_224_3501", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3501_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3501_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3501_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3502 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3502_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3502_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3502_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3502 = { .name = "ecdsa_secp224r1_sha3_224_3502", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3502_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3502_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3502_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3503 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3503_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3503_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3503_sig[] = { 0x00, 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3503 = { .name = "ecdsa_secp224r1_sha3_224_3503", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3503_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3503_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3503_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3504 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3504_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3504_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3504_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3504 = { .name = "ecdsa_secp224r1_sha3_224_3504", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3504_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3504_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3504_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha3_224_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3505 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3505_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3505_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3505_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3505 = { .name = "ecdsa_secp224r1_sha3_224_3505", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3505_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3505_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3505_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3506 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3506_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3506_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3506_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3506 = { .name = "ecdsa_secp224r1_sha3_224_3506", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3506_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3506_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3506_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3507 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3507_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3507_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3507_sig[] = { 0x01, 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa1, 0xeb, 0xa1, 0x54, 0xc6, 0x1a, 0x02, 0xd5, 0xe2, 0xff, 0xf1, 0x71, 0xe0, 0x7d, 0xb3, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3507 = { .name = "ecdsa_secp224r1_sha3_224_3507", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3507_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3507_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3507_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3508 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3508_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3508_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3508_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa3, 0xbe, 0x5b, 0x93, 0x54, 0x39, 0x86, 0xae, 0x28, 0xad, 0x66, 0xb9, 0x28, 0x29, 0x39, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3508 = { .name = "ecdsa_secp224r1_sha3_224_3508", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3508_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3508_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3508_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3509 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3509_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3509_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3509_sig[] = { 0x42, 0x14, 0x71, 0x24, 0x34, 0xcf, 0x77, 0xa3, 0x9a, 0x43, 0x4a, 0x72, 0x91, 0x5d, 0x2b, 0x01, 0x8b, 0xf2, 0xd6, 0x3b, 0x3d, 0xfa, 0x29, 0x53, 0xea, 0x7b, 0xac, 0x8a, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3509 = { .name = "ecdsa_secp224r1_sha3_224_3509", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3509_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3509_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3509_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3510 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3510_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3510_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3510_sig[] = { 0x42, 0x14, 0x71, 0x24, 0x34, 0xcf, 0x77, 0xa3, 0x9a, 0x43, 0x4a, 0x72, 0x91, 0x5c, 0x41, 0xa4, 0x6c, 0xab, 0xc6, 0x79, 0x51, 0xd7, 0x52, 0x99, 0x46, 0xd7, 0xd6, 0xc7, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3510 = { .name = "ecdsa_secp224r1_sha3_224_3510", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3510_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3510_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3510_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3511 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3511_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3511_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3511_sig[] = { 0xfe, 0x42, 0x14, 0x71, 0x24, 0x34, 0xcf, 0x77, 0xa3, 0x9a, 0x43, 0x4a, 0x72, 0x91, 0x5e, 0x14, 0x5e, 0xab, 0x39, 0xe5, 0xfd, 0x2a, 0x1d, 0x00, 0x0e, 0x8e, 0x1f, 0x82, 0x4d, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3511 = { .name = "ecdsa_secp224r1_sha3_224_3511", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3511_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3511_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3511_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3512 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3512_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3512_sig[] = { 0x01, 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3512 = { .name = "ecdsa_secp224r1_sha3_224_3512", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3512_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3512_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3512_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3513 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3513_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3513_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3513_sig[] = { 0x42, 0x14, 0x71, 0x24, 0x34, 0xcf, 0x77, 0xa3, 0x9a, 0x43, 0x4a, 0x72, 0x91, 0x5d, 0x2b, 0x01, 0x8b, 0xf2, 0xd6, 0x3b, 0x3d, 0xfa, 0x29, 0x53, 0xea, 0x7b, 0xac, 0x8a, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3513 = { .name = "ecdsa_secp224r1_sha3_224_3513", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3513_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3513_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3513_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3514 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3514_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3514_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3514_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x01, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3d, 0xa4, 0x4c, 0x85, 0xc8, 0x30, 0xab, 0xdb, 0x66, 0x5d, 0xfc, 0x69, 0x0f, 0xc7, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3514 = { .name = "ecdsa_secp224r1_sha3_224_3514", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3514_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3514_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3514_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3515 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3515_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3515_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3515_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3f, 0x77, 0x06, 0xc4, 0x56, 0x50, 0x2f, 0xb3, 0xac, 0x0b, 0x71, 0xb0, 0x57, 0x72, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3515 = { .name = "ecdsa_secp224r1_sha3_224_3515", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3515_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3515_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3515_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3516 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3516_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3516_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3516_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x56, 0xc8, 0x09, 0x70, 0xd9, 0xa3, 0x08, 0xa9, 0xf6, 0x39, 0xed, 0x19, 0x9a, 0xc1, 0x72, 0x56, 0x5a, 0xf0, 0xbf, 0x92, 0x38, 0x76, 0xcb, 0x48, 0xf3, 0x4c, 0x62, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3516 = { .name = "ecdsa_secp224r1_sha3_224_3516", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3516_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3516_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3516_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3517 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3517_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3517_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3517_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0xfe, 0x56, 0xc8, 0x09, 0x70, 0xd9, 0xa3, 0x08, 0xa9, 0xf6, 0x39, 0xed, 0x19, 0x9a, 0xc2, 0x5b, 0xb3, 0x7a, 0x37, 0xcf, 0x54, 0x24, 0x99, 0xa2, 0x03, 0x96, 0xf0, 0x38, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3517 = { .name = "ecdsa_secp224r1_sha3_224_3517", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3517_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3517_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3517_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3518 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3518_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3518_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3518_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x01, 0xa9, 0x37, 0xf6, 0x8f, 0x26, 0x5c, 0xf7, 0x56, 0x09, 0xc6, 0x12, 0xe6, 0x65, 0x3e, 0x8d, 0xa9, 0xa5, 0x0f, 0x40, 0x6d, 0xc7, 0x89, 0x34, 0xb7, 0x0c, 0xb3, 0x9d, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3518 = { .name = "ecdsa_secp224r1_sha3_224_3518", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3518_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3518_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3518_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3519 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3519_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3519_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3519_sig[] = { 0xbd, 0xeb, 0x8e, 0xdb, 0xcb, 0x30, 0x88, 0x5c, 0x65, 0xbc, 0xb5, 0x8d, 0x6e, 0xa2, 0xd4, 0xfe, 0x74, 0x0d, 0x29, 0xc4, 0xc2, 0x05, 0xd6, 0xac, 0x15, 0x84, 0x53, 0x76, 0x56, 0xc8, 0x09, 0x70, 0xd9, 0xa3, 0x08, 0xa9, 0xf6, 0x39, 0xed, 0x19, 0x9a, 0xc1, 0x72, 0x56, 0x5a, 0xf0, 0xbf, 0x92, 0x38, 0x76, 0xcb, 0x48, 0xf3, 0x4c, 0x62, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3519 = { .name = "ecdsa_secp224r1_sha3_224_3519", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3519_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3519_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3519_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3520 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3520_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3520_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3520_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3520 = { .name = "ecdsa_secp224r1_sha3_224_3520", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3520_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3520_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3520_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3521 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3521_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3521_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3521_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3521 = { .name = "ecdsa_secp224r1_sha3_224_3521", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3521_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3521_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3521_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3522 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3522_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3522_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3522_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3522 = { .name = "ecdsa_secp224r1_sha3_224_3522", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3522_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3522_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3522_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3523 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3523_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3523_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3523 = { .name = "ecdsa_secp224r1_sha3_224_3523", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3523_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3523_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3523_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3524 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3524_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3524_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3524 = { .name = "ecdsa_secp224r1_sha3_224_3524", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3524_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3524_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3524_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3525 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3525_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3525_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3525 = { .name = "ecdsa_secp224r1_sha3_224_3525", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3525_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3525_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3525_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3526 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3526_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3526_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3526 = { .name = "ecdsa_secp224r1_sha3_224_3526", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3526_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3526_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3526_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3527 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3527_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3527_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3527 = { .name = "ecdsa_secp224r1_sha3_224_3527", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3527_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3527_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3527_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3528 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3528_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3528_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3528 = { .name = "ecdsa_secp224r1_sha3_224_3528", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3528_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3528_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3528_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3529 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3529_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3529_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3529 = { .name = "ecdsa_secp224r1_sha3_224_3529", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3529_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3529_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3529_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3530 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3530_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3530_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3530 = { .name = "ecdsa_secp224r1_sha3_224_3530", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3530_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3530_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3530_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3531 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3531_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3531_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3531 = { .name = "ecdsa_secp224r1_sha3_224_3531", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3531_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3531_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3531_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3532 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3532_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3532_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3532 = { .name = "ecdsa_secp224r1_sha3_224_3532", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3532_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3532_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3532_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3533 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3533_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3533_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3533 = { .name = "ecdsa_secp224r1_sha3_224_3533", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3533_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3533_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3533_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3534 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3534_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3534_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3534 = { .name = "ecdsa_secp224r1_sha3_224_3534", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3534_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3534_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3534_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3535 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3535_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3535_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3535_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3535 = { .name = "ecdsa_secp224r1_sha3_224_3535", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3535_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3535_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3535_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3536 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3536_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3536_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3536_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3536 = { .name = "ecdsa_secp224r1_sha3_224_3536", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3536_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3536_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3536_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3537 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3537_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3537_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3537_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3537 = { .name = "ecdsa_secp224r1_sha3_224_3537", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3537_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3537_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3537_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3538 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3538_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3538_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3538_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3538 = { .name = "ecdsa_secp224r1_sha3_224_3538", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3538_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3538_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3538_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3539 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3539_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3539_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3539 = { .name = "ecdsa_secp224r1_sha3_224_3539", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3539_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3539_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3539_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3540 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3540_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3540_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3540 = { .name = "ecdsa_secp224r1_sha3_224_3540", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3540_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3540_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3540_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3541 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3541_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3541_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3541 = { .name = "ecdsa_secp224r1_sha3_224_3541", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3541_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3541_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3541_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3542 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3542_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3542_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3542 = { .name = "ecdsa_secp224r1_sha3_224_3542", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3542_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3542_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3542_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3543 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3543_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3543_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3543_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3543 = { .name = "ecdsa_secp224r1_sha3_224_3543", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3543_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3543_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3543_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3544 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3544_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3544_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3544_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3544 = { .name = "ecdsa_secp224r1_sha3_224_3544", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3544_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3544_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3544_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3545 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3545_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3545_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3545 = { .name = "ecdsa_secp224r1_sha3_224_3545", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3545_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3545_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3545_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3546 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3546_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3546_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3546_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3546 = { .name = "ecdsa_secp224r1_sha3_224_3546", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3546_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3546_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3546_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3547 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3547_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3547_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3547_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3547 = { .name = "ecdsa_secp224r1_sha3_224_3547", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3547_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3547_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3547_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3548 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3548_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3548_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3548 = { .name = "ecdsa_secp224r1_sha3_224_3548", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3548_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3548_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3548_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3549 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3549_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3549_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3549 = { .name = "ecdsa_secp224r1_sha3_224_3549", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3549_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3549_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3549_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3550 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3550_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3550_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3550 = { .name = "ecdsa_secp224r1_sha3_224_3550", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3550_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3550_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3550_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3551 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3551_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3551_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3551 = { .name = "ecdsa_secp224r1_sha3_224_3551", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3551_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3551_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3551_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3552 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3552_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3552_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3552 = { .name = "ecdsa_secp224r1_sha3_224_3552", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3552_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3552_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3552_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3553 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3553_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3553_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3553 = { .name = "ecdsa_secp224r1_sha3_224_3553", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3553_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3553_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3553_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3554 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3554_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3554_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3554 = { .name = "ecdsa_secp224r1_sha3_224_3554", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3554_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3554_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3554_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3555 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3555_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3555_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3555 = { .name = "ecdsa_secp224r1_sha3_224_3555", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3555_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3555_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3555_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3556 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3556_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3556_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3556 = { .name = "ecdsa_secp224r1_sha3_224_3556", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3556_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3556_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3556_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3557 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3557_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3557_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3557 = { .name = "ecdsa_secp224r1_sha3_224_3557", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3557_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3557_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3557_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3558 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3558_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3558_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3558 = { .name = "ecdsa_secp224r1_sha3_224_3558", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3558_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3558_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3558_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3559 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3559_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3559_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3559 = { .name = "ecdsa_secp224r1_sha3_224_3559", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3559_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3559_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3559_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3560 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3560_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3560_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3560 = { .name = "ecdsa_secp224r1_sha3_224_3560", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3560_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3560_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3560_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3561 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3561_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3561_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3561 = { .name = "ecdsa_secp224r1_sha3_224_3561", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3561_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3561_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3561_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3562 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3562_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3562_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3562 = { .name = "ecdsa_secp224r1_sha3_224_3562", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3562_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3562_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3562_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3563 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3563_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3563_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3563 = { .name = "ecdsa_secp224r1_sha3_224_3563", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3563_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3563_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3563_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3564 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3564_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3564_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3564 = { .name = "ecdsa_secp224r1_sha3_224_3564", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3564_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3564_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3564_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3565 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3565_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3565_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3565 = { .name = "ecdsa_secp224r1_sha3_224_3565", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3565_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3565_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3565_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3566 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3566_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3566_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3566 = { .name = "ecdsa_secp224r1_sha3_224_3566", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3566_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3566_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3566_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3567 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3567_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3567_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3567 = { .name = "ecdsa_secp224r1_sha3_224_3567", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3567_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3567_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3567_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3568 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3568_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3568_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3568 = { .name = "ecdsa_secp224r1_sha3_224_3568", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3568_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3568_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3568_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3569 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3569_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3569_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3569 = { .name = "ecdsa_secp224r1_sha3_224_3569", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3569_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3569_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3569_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3570 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3570_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3570_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3570 = { .name = "ecdsa_secp224r1_sha3_224_3570", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3570_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3570_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3570_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3571 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3571_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3571_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3571 = { .name = "ecdsa_secp224r1_sha3_224_3571", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3571_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3571_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3571_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3572 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3572_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3572_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3572 = { .name = "ecdsa_secp224r1_sha3_224_3572", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3572_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3572_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3572_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3573 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3573_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3573_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3573 = { .name = "ecdsa_secp224r1_sha3_224_3573", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3573_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3573_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3573_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3574 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3574_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3574_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3574 = { .name = "ecdsa_secp224r1_sha3_224_3574", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3574_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3574_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3574_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3575 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3575_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3575_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3575 = { .name = "ecdsa_secp224r1_sha3_224_3575", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3575_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3575_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3575_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3576 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3576_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3576_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3576 = { .name = "ecdsa_secp224r1_sha3_224_3576", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3576_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3576_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3576_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3577 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3577_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3577_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3577 = { .name = "ecdsa_secp224r1_sha3_224_3577", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3577_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3577_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3577_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3578 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3578_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3578_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3578 = { .name = "ecdsa_secp224r1_sha3_224_3578", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3578_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3578_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3578_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3579 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3579_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3579_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3579 = { .name = "ecdsa_secp224r1_sha3_224_3579", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3579_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3579_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3579_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3580 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3580_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3580_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3580 = { .name = "ecdsa_secp224r1_sha3_224_3580", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3580_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3580_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3580_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3581 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3581_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3581_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3581 = { .name = "ecdsa_secp224r1_sha3_224_3581", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3581_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3581_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3581_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3582 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3582_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3582_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3582 = { .name = "ecdsa_secp224r1_sha3_224_3582", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3582_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3582_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3582_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3583 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3583_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3583_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3583 = { .name = "ecdsa_secp224r1_sha3_224_3583", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3583_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3583_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3583_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3584 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3584_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3584_msg[] = { 0x34, 0x37, 0x37, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3584_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0xbd, 0x6b, 0x1d, 0x7a, 0xb9, 0x7a, 0xc1, 0xb6, 0x07, 0xc2, 0x2e, 0x04, 0x2f, 0xfc, 0xc0, 0x06, 0x2c, 0x74, 0x41, 0x60, 0xc9, 0x58, 0xad, 0x0b, 0x19, 0x43, 0xa9, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3584 = { .name = "ecdsa_secp224r1_sha3_224_3584", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3584_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3584_msg, .msglen = 4, .sig = ecdsa_secp224r1_sha3_224_3584_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3585 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3585_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3585_msg[] = { 0x38, 0x36, 0x31, 0x38, 0x36, 0x35, 0x36, 0x38, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_224_3585_sig[] = { 0x47, 0x6b, 0xab, 0x7a, 0x32, 0xe1, 0xf6, 0x69, 0x58, 0x49, 0x2d, 0xeb, 0x68, 0x10, 0x33, 0xdc, 0x13, 0x52, 0x76, 0xf6, 0x2d, 0x92, 0x65, 0xc7, 0xc7, 0xfd, 0xdf, 0xf4, 0xbc, 0xce, 0x78, 0xad, 0x80, 0x17, 0xbb, 0x49, 0x94, 0x90, 0xeb, 0x1b, 0xf0, 0x0d, 0xd9, 0xf3, 0x5b, 0x23, 0xb5, 0xe8, 0xbd, 0x03, 0xfe, 0x5b, 0xb0, 0x9e, 0x3f, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3585 = { .name = "ecdsa_secp224r1_sha3_224_3585", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3585_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3585_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3585_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3586 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3586_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3586_msg[] = { 0x34, 0x32, 0x31, 0x36, 0x35, 0x39, 0x39, 0x37, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3586_sig[] = { 0x83, 0x55, 0x27, 0x0a, 0xae, 0x4e, 0xf8, 0xdd, 0xa3, 0x3c, 0xdb, 0x3f, 0xad, 0x66, 0x4d, 0xfb, 0x01, 0x24, 0xf6, 0xdc, 0xc0, 0xe7, 0x9a, 0x9a, 0x7b, 0x6b, 0xb1, 0x9f, 0xec, 0x8d, 0x3e, 0x43, 0x97, 0x7e, 0x26, 0x92, 0xec, 0x27, 0xc7, 0x02, 0xa6, 0xf3, 0x49, 0xd4, 0x53, 0x6d, 0x00, 0xcc, 0x01, 0x7b, 0x55, 0xf3, 0x25, 0x22, 0x7d, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3586 = { .name = "ecdsa_secp224r1_sha3_224_3586", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3586_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3586_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3586_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3587 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3587_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3587_msg[] = { 0x33, 0x35, 0x30, 0x35, 0x31, 0x34, 0x35, 0x37, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3587_sig[] = { 0x62, 0x22, 0x91, 0x5d, 0xdf, 0x6e, 0x69, 0xea, 0xef, 0xce, 0x3e, 0xbd, 0xa5, 0x6a, 0xc5, 0x01, 0x42, 0x8b, 0x3d, 0x69, 0xb7, 0xb9, 0x4c, 0x0e, 0x9c, 0xcf, 0x00, 0x10, 0x5a, 0xcb, 0xd1, 0xd1, 0x30, 0xb5, 0x0c, 0x08, 0x77, 0x81, 0x75, 0x17, 0x2a, 0x9d, 0x0d, 0x0e, 0x0e, 0x36, 0xb6, 0xa6, 0x8c, 0x80, 0xaf, 0x9a, 0xea, 0xe4, 0x1b, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3587 = { .name = "ecdsa_secp224r1_sha3_224_3587", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3587_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3587_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3587_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3588 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3588_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3588_msg[] = { 0x34, 0x32, 0x38, 0x33, 0x32, 0x33, 0x34, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3588_sig[] = { 0x6b, 0x8e, 0x3e, 0xda, 0xf6, 0xaa, 0x9e, 0x63, 0x22, 0xe9, 0x16, 0xba, 0x1c, 0xd2, 0xbc, 0xe6, 0xce, 0x69, 0x4c, 0xa8, 0xe8, 0xf9, 0xf9, 0x99, 0xef, 0xe9, 0xcc, 0x07, 0x79, 0x3b, 0x8d, 0x55, 0x7b, 0x98, 0xe5, 0x04, 0xbf, 0x05, 0xb2, 0xa5, 0x7b, 0x1f, 0xd1, 0xea, 0xff, 0xb3, 0x8e, 0xda, 0x30, 0xdb, 0x7c, 0x5e, 0x8a, 0x55, 0x9c, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3588 = { .name = "ecdsa_secp224r1_sha3_224_3588", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3588_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3588_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3588_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3589 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3589_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3589_msg[] = { 0x31, 0x34, 0x32, 0x38, 0x35, 0x39, 0x39, 0x33, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_224_3589_sig[] = { 0xa8, 0xb7, 0x82, 0x86, 0xf4, 0xb4, 0xad, 0xe2, 0x0d, 0x7a, 0x8f, 0x7c, 0x1c, 0xe3, 0xc2, 0x9d, 0x66, 0x16, 0x43, 0x2e, 0xb9, 0x9b, 0x34, 0xcf, 0x8a, 0x46, 0xd4, 0x21, 0x66, 0xb0, 0x5e, 0x86, 0xc8, 0xa7, 0xe4, 0x1f, 0xec, 0xb5, 0x10, 0x47, 0xa7, 0xb8, 0xd7, 0xc4, 0xa6, 0xba, 0xf8, 0x06, 0xe9, 0xd3, 0x60, 0xf0, 0xc6, 0x71, 0x5c, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3589 = { .name = "ecdsa_secp224r1_sha3_224_3589", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3589_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3589_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3589_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3590 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3590_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3590_msg[] = { 0x31, 0x30, 0x35, 0x32, 0x36, 0x36, 0x34, 0x35, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3590_sig[] = { 0x33, 0x52, 0x9f, 0xca, 0xfc, 0xd1, 0x07, 0x59, 0x6f, 0x84, 0x65, 0x63, 0x60, 0x5f, 0x0d, 0x9c, 0x47, 0x9f, 0x5a, 0xc9, 0x49, 0x8e, 0x32, 0x5e, 0x03, 0x4f, 0xd0, 0x01, 0x75, 0xe2, 0x31, 0xe7, 0x60, 0xbc, 0x10, 0xeb, 0x97, 0x90, 0x1c, 0x2b, 0x8c, 0xcf, 0x90, 0x80, 0x99, 0xce, 0x7f, 0xc5, 0x44, 0x72, 0xfc, 0xb4, 0x19, 0x78, 0x4d, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3590 = { .name = "ecdsa_secp224r1_sha3_224_3590", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3590_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3590_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3590_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3591 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3591_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3591_msg[] = { 0x35, 0x34, 0x38, 0x30, 0x39, 0x37, 0x38, 0x37, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3591_sig[] = { 0xd4, 0x51, 0x4a, 0xa4, 0xda, 0x10, 0x57, 0x7b, 0xf2, 0x97, 0x4f, 0xf7, 0xf6, 0xe4, 0x10, 0xe8, 0x2f, 0x92, 0x67, 0x87, 0x7b, 0x73, 0x63, 0x1e, 0x0b, 0x33, 0x6e, 0xcb, 0x93, 0x6e, 0x3d, 0xdc, 0x78, 0x46, 0xce, 0xeb, 0xb4, 0xf9, 0xe8, 0xc2, 0x62, 0xd0, 0x14, 0xf8, 0xec, 0x5a, 0xe9, 0x0c, 0xeb, 0xed, 0x23, 0x59, 0xb4, 0x9a, 0xa5, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3591 = { .name = "ecdsa_secp224r1_sha3_224_3591", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3591_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3591_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3591_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3592 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3592_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3592_msg[] = { 0x36, 0x32, 0x33, 0x39, 0x37, 0x36, 0x39, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3592_sig[] = { 0x65, 0xd3, 0x5e, 0x97, 0xf9, 0x45, 0x5b, 0xbc, 0x13, 0xc8, 0xec, 0x28, 0xf8, 0xb8, 0xd1, 0x3a, 0xb7, 0x32, 0x7f, 0xe7, 0x7c, 0x38, 0xb4, 0x0f, 0x5b, 0x85, 0x5c, 0x37, 0xa2, 0x1c, 0xad, 0x03, 0x3d, 0x04, 0x65, 0x9b, 0xd2, 0x53, 0x9e, 0x78, 0x38, 0xe8, 0x37, 0x7b, 0x5b, 0x11, 0xf1, 0x4d, 0x0c, 0x01, 0x66, 0x16, 0x77, 0x55, 0x86, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3592 = { .name = "ecdsa_secp224r1_sha3_224_3592", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3592_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3592_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3592_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3593 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3593_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3593_msg[] = { 0x38, 0x35, 0x34, 0x38, 0x39, 0x38, 0x33, 0x34, 0x35, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_224_3593_sig[] = { 0xd4, 0x44, 0xef, 0x96, 0x64, 0x9d, 0x01, 0xd2, 0xa4, 0x7a, 0x9d, 0xd6, 0x21, 0x0b, 0x45, 0xff, 0xfe, 0xc0, 0xed, 0x1a, 0x4c, 0xb7, 0x43, 0x8e, 0x8c, 0xcc, 0xf0, 0x48, 0xa8, 0x28, 0x34, 0x1b, 0xea, 0x5c, 0x28, 0xb5, 0x50, 0x97, 0xe7, 0x73, 0x32, 0xdd, 0x7e, 0x30, 0x3d, 0xf7, 0x89, 0xa2, 0xa6, 0x79, 0x46, 0xde, 0x23, 0xdd, 0x34, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3593 = { .name = "ecdsa_secp224r1_sha3_224_3593", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3593_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3593_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3593_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3594 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3594_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3594_msg[] = { 0x37, 0x33, 0x32, 0x37, 0x33, 0x37, 0x33, 0x36, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3594_sig[] = { 0x09, 0x46, 0x3b, 0xaa, 0x1c, 0x76, 0x30, 0x49, 0x4a, 0x9e, 0xd5, 0xd6, 0x4f, 0xa2, 0xfa, 0xc1, 0x9a, 0xc4, 0x52, 0xb3, 0x14, 0x2f, 0x8b, 0xf1, 0x9f, 0x58, 0x55, 0x74, 0x38, 0x97, 0xd5, 0x8b, 0x8a, 0xff, 0x94, 0x2a, 0x07, 0x4a, 0x58, 0x36, 0x04, 0xb1, 0x74, 0xdd, 0xea, 0xf2, 0x30, 0xd7, 0xce, 0xad, 0x58, 0xe7, 0x48, 0x35, 0xd8, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3594 = { .name = "ecdsa_secp224r1_sha3_224_3594", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3594_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3594_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3594_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3595 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3595_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3595_msg[] = { 0x35, 0x33, 0x33, 0x35, 0x31, 0x31, 0x37, 0x30, 0x30, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_224_3595_sig[] = { 0x4c, 0x2b, 0xa4, 0x4a, 0xdb, 0xb4, 0x4f, 0x6b, 0x0f, 0x57, 0xde, 0x21, 0x83, 0x08, 0x70, 0xd5, 0xac, 0xfc, 0x68, 0xe0, 0x3c, 0x8f, 0x35, 0xe1, 0xdd, 0xa1, 0x4c, 0xec, 0x6a, 0xff, 0x00, 0xcd, 0x64, 0x17, 0xac, 0x43, 0xc1, 0xea, 0x7e, 0x10, 0x7f, 0xcf, 0xad, 0xa4, 0x04, 0xb8, 0x8f, 0x4a, 0x79, 0xa0, 0xd1, 0x2d, 0xf9, 0x6a, 0xb0, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3595 = { .name = "ecdsa_secp224r1_sha3_224_3595", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3595_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3595_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3595_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3596 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3596_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3596_msg[] = { 0x31, 0x36, 0x36, 0x30, 0x31, 0x38, 0x37, 0x37, 0x37, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3596_sig[] = { 0xdb, 0xbc, 0x41, 0xee, 0xa7, 0xc5, 0xc2, 0x04, 0x38, 0x8b, 0x79, 0x41, 0xcd, 0x19, 0xac, 0xc7, 0xa2, 0xeb, 0x38, 0xb8, 0xe8, 0x48, 0x84, 0x5b, 0xcd, 0xb4, 0x24, 0x4d, 0x7c, 0x4e, 0x41, 0x1b, 0x93, 0x0f, 0x26, 0xff, 0xaa, 0x49, 0x4d, 0x25, 0x22, 0x38, 0x1a, 0xc8, 0x6f, 0x38, 0xb3, 0x75, 0x91, 0xd6, 0x97, 0xd1, 0x22, 0x92, 0x53, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3596 = { .name = "ecdsa_secp224r1_sha3_224_3596", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3596_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3596_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3596_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3597 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3597_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3597_msg[] = { 0x32, 0x37, 0x36, 0x37, 0x39, 0x33, 0x34, 0x33, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3597_sig[] = { 0x59, 0x5b, 0x69, 0x00, 0xf6, 0xeb, 0x44, 0x94, 0x36, 0x62, 0x19, 0xc3, 0x5b, 0x40, 0x39, 0x7f, 0xfd, 0xb3, 0x14, 0x1b, 0xff, 0xb2, 0xd8, 0xd2, 0x16, 0xf9, 0x79, 0x73, 0xf5, 0x32, 0x61, 0x79, 0x5d, 0xdf, 0xb3, 0x6e, 0xd4, 0xa8, 0x3f, 0x78, 0x37, 0x10, 0xf1, 0x5a, 0x8f, 0x60, 0x6c, 0xf9, 0xfb, 0x3f, 0x9c, 0xa1, 0x98, 0x1f, 0x26, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3597 = { .name = "ecdsa_secp224r1_sha3_224_3597", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3597_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3597_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3597_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3598 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3598_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3598_msg[] = { 0x34, 0x36, 0x36, 0x32, 0x34, 0x33, 0x38, 0x36, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3598_sig[] = { 0x6a, 0x78, 0x5a, 0x5b, 0xc1, 0xb8, 0x57, 0xf7, 0xc1, 0x01, 0x20, 0xd8, 0x5f, 0x36, 0xd9, 0xd4, 0x44, 0xa5, 0xbb, 0x6e, 0xd0, 0x99, 0x1e, 0xac, 0x4a, 0x5a, 0x26, 0xa8, 0xee, 0xfa, 0x7d, 0x67, 0x74, 0xee, 0x58, 0x51, 0xdd, 0x7f, 0x1c, 0x45, 0xd2, 0x04, 0xff, 0xf4, 0x38, 0x7e, 0xe1, 0x26, 0xac, 0xbd, 0x56, 0x45, 0x2d, 0x34, 0x24, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3598 = { .name = "ecdsa_secp224r1_sha3_224_3598", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3598_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3598_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3598_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3599 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3599_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3599_msg[] = { 0x31, 0x31, 0x33, 0x31, 0x32, 0x31, 0x34, 0x36, 0x39, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_224_3599_sig[] = { 0x4e, 0x0f, 0x67, 0xb0, 0x81, 0xcd, 0x6b, 0x87, 0xe3, 0xf4, 0xd7, 0x92, 0xf1, 0xcc, 0xdd, 0x66, 0xe7, 0x80, 0xd8, 0x02, 0x8e, 0xae, 0xb5, 0xc4, 0x00, 0x47, 0xb6, 0x15, 0x14, 0xc4, 0x2e, 0xa5, 0x0c, 0x71, 0x2c, 0x3f, 0xb7, 0xa0, 0xe1, 0x8f, 0xe0, 0x6b, 0x23, 0x82, 0x2e, 0x90, 0x63, 0xf1, 0x5b, 0xf2, 0x75, 0x9d, 0xfc, 0x70, 0x38, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3599 = { .name = "ecdsa_secp224r1_sha3_224_3599", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3599_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3599_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3599_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3600 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3600_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3600_msg[] = { 0x39, 0x37, 0x35, 0x33, 0x37, 0x33, 0x39, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3600_sig[] = { 0xb1, 0x6e, 0x31, 0xa9, 0xa0, 0x7b, 0xed, 0x7d, 0x2a, 0xda, 0xb9, 0xbf, 0xbf, 0x9f, 0xb8, 0xa2, 0x79, 0xf6, 0x38, 0x77, 0x91, 0xd2, 0x29, 0xe7, 0x9f, 0xf4, 0x35, 0xc7, 0x0c, 0xac, 0x45, 0xc7, 0x03, 0x51, 0xa7, 0x7c, 0xf2, 0xd0, 0x37, 0x76, 0x01, 0xbe, 0x4f, 0x7b, 0xbf, 0x5a, 0xcd, 0xdf, 0x03, 0x10, 0xf9, 0xe1, 0x0b, 0x1c, 0x70, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3600 = { .name = "ecdsa_secp224r1_sha3_224_3600", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3600_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3600_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3600_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3601 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3601_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3601_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x31, 0x39, 0x33, 0x37, 0x31, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3601_sig[] = { 0x87, 0x53, 0xa0, 0x4e, 0x4c, 0xe3, 0x4a, 0xb8, 0x99, 0x7d, 0xf5, 0xf3, 0x69, 0x34, 0xcd, 0x16, 0x36, 0x8c, 0xb0, 0xf3, 0xe8, 0x49, 0x89, 0x0d, 0x74, 0x24, 0x2a, 0xcc, 0xd0, 0x35, 0xd2, 0xd7, 0x8f, 0xea, 0xb9, 0xce, 0xd6, 0xc2, 0x57, 0x35, 0xb3, 0x74, 0x0a, 0x23, 0x09, 0xd9, 0x6c, 0xb5, 0xd5, 0x7f, 0xea, 0x72, 0x9a, 0x96, 0x39, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3601 = { .name = "ecdsa_secp224r1_sha3_224_3601", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3601_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3601_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3601_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3602 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3602_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3602_msg[] = { 0x31, 0x36, 0x30, 0x33, 0x39, 0x35, 0x33, 0x38, 0x36, 0x33, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3602_sig[] = { 0x11, 0x97, 0x4f, 0x58, 0xc9, 0x5f, 0x8c, 0x44, 0x52, 0x2f, 0x83, 0x59, 0xae, 0x5e, 0x94, 0x25, 0x77, 0xb8, 0xfb, 0x57, 0x5a, 0x2b, 0xa1, 0x8f, 0xf3, 0x83, 0xdf, 0x71, 0x6c, 0x14, 0x13, 0x27, 0xf9, 0xe4, 0x05, 0x72, 0x9c, 0x30, 0x0f, 0x16, 0xb3, 0x01, 0xde, 0x14, 0x0c, 0x8d, 0xf9, 0x2c, 0x05, 0x63, 0x7d, 0xb9, 0x52, 0x21, 0x6e, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3602 = { .name = "ecdsa_secp224r1_sha3_224_3602", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3602_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3602_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3602_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3603 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3603_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3603_msg[] = { 0x35, 0x38, 0x37, 0x39, 0x30, 0x36, 0x34, 0x39, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3603_sig[] = { 0x9d, 0x5d, 0x51, 0x4b, 0x88, 0x4b, 0x4d, 0x89, 0x2e, 0x92, 0xe3, 0x73, 0x66, 0x3e, 0x39, 0x49, 0x01, 0xe4, 0x83, 0xec, 0xa8, 0xc9, 0xbc, 0xd7, 0x80, 0x91, 0x0c, 0x82, 0x7d, 0xa1, 0xcd, 0x12, 0xc5, 0x75, 0x74, 0x4f, 0xf7, 0x0c, 0xfb, 0x35, 0x13, 0xc5, 0xea, 0xbc, 0x0e, 0x36, 0x32, 0xcf, 0x2c, 0xe5, 0x0e, 0xcf, 0x0f, 0x55, 0xc8, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3603 = { .name = "ecdsa_secp224r1_sha3_224_3603", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3603_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3603_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3603_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3604 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3604_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3604_msg[] = { 0x33, 0x30, 0x39, 0x35, 0x39, 0x37, 0x37, 0x32, 0x31, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3604_sig[] = { 0xf6, 0x8c, 0x1b, 0x64, 0x2a, 0x35, 0xa1, 0x98, 0x8f, 0x6c, 0x2f, 0xa7, 0x7a, 0x55, 0x33, 0xa2, 0xf6, 0x35, 0xab, 0xf0, 0x2c, 0x67, 0x48, 0xf5, 0xa2, 0xb9, 0xd1, 0xde, 0x63, 0xee, 0x52, 0x14, 0x9f, 0xec, 0x97, 0xe5, 0x2b, 0x2d, 0xa4, 0x55, 0x6f, 0xe2, 0x8a, 0xcf, 0x8f, 0x59, 0x86, 0x36, 0x45, 0x5f, 0x32, 0x2c, 0xc9, 0xf4, 0x71, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3604 = { .name = "ecdsa_secp224r1_sha3_224_3604", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3604_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3604_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3604_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3605 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3605_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3605_msg[] = { 0x37, 0x35, 0x37, 0x35, 0x30, 0x36, 0x34, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_224_3605_sig[] = { 0x48, 0x94, 0x8b, 0x8d, 0xd7, 0xe6, 0x27, 0x60, 0xaf, 0x36, 0x8f, 0xdc, 0x3c, 0x22, 0x5a, 0xfd, 0xbf, 0xb6, 0xb9, 0x8a, 0x11, 0x25, 0xd8, 0xae, 0xb6, 0x24, 0x19, 0xdf, 0xbf, 0x88, 0x9d, 0xd8, 0xec, 0xa1, 0x45, 0x6c, 0x24, 0xd8, 0x8a, 0xbc, 0x16, 0xa5, 0xdc, 0x02, 0x17, 0xd3, 0xac, 0x72, 0xb0, 0xe5, 0x79, 0x35, 0xbb, 0x80, 0x35, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3605 = { .name = "ecdsa_secp224r1_sha3_224_3605", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3605_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3605_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3605_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3606 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3606_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3606_msg[] = { 0x33, 0x33, 0x33, 0x33, 0x39, 0x39, 0x36, 0x35, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3606_sig[] = { 0x0d, 0x00, 0x27, 0x50, 0xcc, 0x80, 0xc0, 0xf5, 0xa6, 0xb2, 0xb1, 0xe6, 0xe0, 0x8a, 0xfa, 0xfb, 0x48, 0x40, 0xcb, 0xde, 0xf6, 0xe3, 0x2b, 0x72, 0x6a, 0x4c, 0x19, 0x59, 0xee, 0x40, 0x95, 0xe3, 0x1b, 0x59, 0x4d, 0x15, 0x96, 0x91, 0x77, 0x7f, 0xf1, 0xf6, 0x16, 0x98, 0x9a, 0x65, 0xc4, 0x57, 0x2b, 0x26, 0x42, 0x15, 0x80, 0x6f, 0x92, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3606 = { .name = "ecdsa_secp224r1_sha3_224_3606", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3606_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3606_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_224_3606_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3607 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3607_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3607_msg[] = { 0x31, 0x35, 0x32, 0x36, 0x35, 0x35, 0x32, 0x36, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3607_sig[] = { 0x09, 0x77, 0xb6, 0xca, 0xba, 0x19, 0x1d, 0x7c, 0xbe, 0x0b, 0x53, 0x19, 0x91, 0x7f, 0x27, 0x48, 0x30, 0x4e, 0x66, 0x57, 0x72, 0x02, 0x33, 0x58, 0x42, 0xe0, 0x09, 0xcf, 0xb0, 0x68, 0x0b, 0x5d, 0x60, 0x6e, 0xf9, 0xba, 0xa2, 0x92, 0xf6, 0xbf, 0xfd, 0xc8, 0x4c, 0x11, 0xc5, 0x92, 0x99, 0x85, 0x4b, 0x46, 0x24, 0x53, 0x9c, 0x2e, 0xfc, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3607 = { .name = "ecdsa_secp224r1_sha3_224_3607", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3607_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3607_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3607_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3608 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3608_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3608_msg[] = { 0x39, 0x38, 0x39, 0x31, 0x31, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3608_sig[] = { 0x02, 0x3a, 0x1d, 0x2a, 0x8e, 0x49, 0xde, 0xac, 0x35, 0x2a, 0xcb, 0x3a, 0x6a, 0x75, 0x80, 0x70, 0xb5, 0xc8, 0xa4, 0xe7, 0x5f, 0xcb, 0xaf, 0xfd, 0x9f, 0x32, 0xe8, 0x62, 0x5d, 0x2d, 0x51, 0x1e, 0xd3, 0x7c, 0xf7, 0xd0, 0x23, 0xa5, 0x33, 0x5c, 0x48, 0xfc, 0x2f, 0x63, 0xcf, 0x07, 0x33, 0xa1, 0xa7, 0x86, 0xc4, 0x9a, 0xe9, 0x29, 0xce, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3608 = { .name = "ecdsa_secp224r1_sha3_224_3608", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3608_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3608_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha3_224_3608_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3609 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3609_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3609_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x31, 0x38, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3609_sig[] = { 0xc7, 0xcb, 0xad, 0x38, 0xe1, 0xc7, 0x66, 0x03, 0x25, 0x4d, 0xc2, 0xe9, 0xfd, 0x69, 0x33, 0x2d, 0x0e, 0xf8, 0xf1, 0xa5, 0x87, 0x9e, 0xdb, 0x5b, 0xe1, 0xbb, 0x57, 0x8b, 0xdd, 0xdc, 0xf1, 0xaa, 0x86, 0x3f, 0x29, 0x1c, 0x0a, 0x28, 0x7f, 0xa1, 0xd0, 0x15, 0x9d, 0xab, 0xfa, 0x7d, 0x98, 0xe6, 0x46, 0x59, 0x6e, 0x8a, 0xc4, 0x1f, 0x1b, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3609 = { .name = "ecdsa_secp224r1_sha3_224_3609", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3609_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3609_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3609_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3610 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3610_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3610_msg[] = { 0x33, 0x33, 0x33, 0x34, 0x39, 0x35, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3610_sig[] = { 0x5c, 0x84, 0x5a, 0x27, 0x55, 0x21, 0x64, 0x9b, 0xde, 0x9e, 0x3b, 0xfa, 0x07, 0xd6, 0xca, 0x52, 0x8f, 0x6e, 0x14, 0x3d, 0x19, 0xe9, 0x7b, 0x1e, 0x9e, 0x30, 0x5e, 0x71, 0x60, 0xb4, 0xbd, 0x52, 0x2c, 0x44, 0xb4, 0xc3, 0x2e, 0x87, 0xb1, 0x1b, 0x6b, 0x80, 0xb2, 0x06, 0x1d, 0xa9, 0x8b, 0x4c, 0xf5, 0xc5, 0x6d, 0xbf, 0x5f, 0x06, 0x51, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3610 = { .name = "ecdsa_secp224r1_sha3_224_3610", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3610_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3610_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_224_3610_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3611 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3611_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3611_msg[] = { 0x31, 0x35, 0x34, 0x35, 0x37, 0x39, 0x32, 0x34, 0x36, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3611_sig[] = { 0x26, 0x04, 0x18, 0x18, 0x2c, 0x81, 0x9d, 0xe5, 0xbd, 0xb8, 0x85, 0x1c, 0x5a, 0xc9, 0x37, 0xab, 0x8d, 0x83, 0xab, 0x70, 0x64, 0x00, 0x10, 0xf7, 0xee, 0xae, 0x13, 0xf4, 0x03, 0x4c, 0x2f, 0x5f, 0xfa, 0xa2, 0xb4, 0xf1, 0xf1, 0x11, 0xf4, 0x75, 0x8e, 0x5a, 0xdf, 0xba, 0xb5, 0xb7, 0xcf, 0xec, 0xfa, 0x48, 0xc8, 0xd8, 0x8f, 0x5b, 0x68, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3611 = { .name = "ecdsa_secp224r1_sha3_224_3611", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3611_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3611_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3611_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3612 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3612_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3612_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x34, 0x30, 0x36, 0x34, 0x34, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3612_sig[] = { 0x03, 0x46, 0xd6, 0x52, 0x1c, 0x74, 0xbf, 0xb3, 0x43, 0x42, 0xc4, 0xb0, 0x3c, 0x06, 0x7d, 0x3c, 0xdf, 0xe3, 0x5d, 0x3e, 0xa1, 0x21, 0x58, 0x06, 0x68, 0x30, 0x14, 0x31, 0x57, 0x1d, 0xc8, 0x4c, 0xc0, 0x71, 0xe2, 0x5b, 0x98, 0xd4, 0x7c, 0x87, 0xed, 0xd3, 0xf6, 0xdb, 0x73, 0xf9, 0x95, 0xe5, 0xa4, 0xfa, 0x03, 0x87, 0x60, 0xc4, 0x3c, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3612 = { .name = "ecdsa_secp224r1_sha3_224_3612", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3612_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3612_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3612_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3613 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3613_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3613_msg[] = { 0x36, 0x33, 0x30, 0x34, 0x34, 0x37, 0x31, 0x32, 0x38, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3613_sig[] = { 0xf6, 0xd5, 0x04, 0x9e, 0x2f, 0x03, 0x77, 0xf2, 0x4f, 0xd3, 0xed, 0xd8, 0xec, 0x14, 0x94, 0x72, 0x51, 0xc9, 0xd6, 0x87, 0xa4, 0xec, 0x10, 0x4f, 0x36, 0xb9, 0x23, 0x8f, 0x71, 0x3a, 0x07, 0xb0, 0xdd, 0x9a, 0xa2, 0xb0, 0x8c, 0x30, 0xd9, 0x16, 0x7b, 0x03, 0x73, 0xb8, 0x52, 0x59, 0x55, 0x79, 0xa7, 0xdf, 0xc4, 0x81, 0x99, 0x05, 0x61, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3613 = { .name = "ecdsa_secp224r1_sha3_224_3613", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3613_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3613_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3613_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3614 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3614_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3614_msg[] = { 0x38, 0x39, 0x30, 0x37, 0x30, 0x32, 0x30, 0x37, 0x31, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3614_sig[] = { 0xa7, 0x99, 0x45, 0x53, 0xf1, 0xa7, 0x93, 0xeb, 0xce, 0x2d, 0xfd, 0xcd, 0x35, 0x7d, 0x3e, 0x4a, 0x01, 0xd0, 0xf7, 0xc1, 0xca, 0xaa, 0x90, 0x99, 0xfb, 0xb4, 0xb0, 0x7a, 0xd8, 0xf7, 0x71, 0x08, 0x4d, 0x36, 0x2e, 0xf2, 0xa0, 0xde, 0xe5, 0x04, 0x96, 0xe4, 0x50, 0xb6, 0xe8, 0x12, 0xe4, 0x0c, 0x2e, 0x6d, 0x34, 0x24, 0x95, 0x57, 0x15, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3614 = { .name = "ecdsa_secp224r1_sha3_224_3614", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3614_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3614_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3614_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3615 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3615_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3615_msg[] = { 0x36, 0x39, 0x35, 0x36, 0x37, 0x35, 0x34, 0x32, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_224_3615_sig[] = { 0x43, 0x23, 0x6a, 0x22, 0xba, 0x68, 0x1b, 0xd7, 0x1f, 0x99, 0xa8, 0xee, 0x2b, 0x42, 0x5b, 0x78, 0x4b, 0xa6, 0xff, 0x55, 0xca, 0xe1, 0x54, 0xbf, 0x1b, 0x8e, 0xf4, 0x54, 0x09, 0xcf, 0xfb, 0x77, 0x30, 0x6a, 0x5e, 0xa7, 0x67, 0x55, 0x78, 0xbc, 0xfa, 0x2d, 0x21, 0x42, 0xc9, 0xdb, 0xd8, 0x44, 0x01, 0xe0, 0x9f, 0x78, 0xec, 0x29, 0xfa, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3615 = { .name = "ecdsa_secp224r1_sha3_224_3615", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3615_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3615_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3615_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3616 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3616_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3616_msg[] = { 0x34, 0x35, 0x35, 0x33, 0x30, 0x31, 0x32, 0x31, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_224_3616_sig[] = { 0x8c, 0x63, 0xda, 0xe1, 0xf1, 0x9d, 0x97, 0x13, 0x5d, 0xf1, 0x8f, 0x8c, 0xf1, 0xa0, 0x9e, 0x52, 0x8b, 0x11, 0xed, 0x2e, 0xac, 0x9f, 0x4b, 0x34, 0x06, 0x21, 0xc7, 0x3d, 0x30, 0x95, 0xbe, 0x22, 0x32, 0xfe, 0x57, 0xd3, 0x72, 0x79, 0x6c, 0xc0, 0xc8, 0x46, 0x44, 0x58, 0x36, 0xff, 0x35, 0xf2, 0x5a, 0x38, 0xce, 0x13, 0x58, 0x58, 0x58, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3616 = { .name = "ecdsa_secp224r1_sha3_224_3616", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3616_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3616_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3616_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3617 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3617_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3617_msg[] = { 0x39, 0x37, 0x38, 0x37, 0x39, 0x36, 0x32, 0x32, 0x39, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3617_sig[] = { 0x80, 0x05, 0xbc, 0xb6, 0xb9, 0x55, 0xf8, 0x0b, 0x2a, 0x2b, 0x6e, 0x45, 0xd8, 0x61, 0x54, 0xc5, 0x61, 0xb5, 0x43, 0x08, 0x3a, 0xb0, 0x65, 0xb5, 0x0b, 0xff, 0xb4, 0x99, 0xe6, 0x51, 0x5a, 0x9e, 0xb3, 0xfd, 0x81, 0x38, 0xca, 0x11, 0x75, 0x15, 0xd0, 0xf9, 0xa6, 0x54, 0x9f, 0x22, 0x6a, 0x72, 0xcc, 0xcd, 0x49, 0x74, 0x1a, 0xdf, 0xfe, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3617 = { .name = "ecdsa_secp224r1_sha3_224_3617", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3617_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3617_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3617_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3618 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3618_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3618_msg[] = { 0x34, 0x35, 0x34, 0x33, 0x36, 0x32, 0x34, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3618_sig[] = { 0xbe, 0x66, 0xcc, 0x8e, 0xb0, 0xd9, 0xe5, 0xdd, 0x7e, 0xf6, 0xc7, 0x54, 0x01, 0x85, 0x02, 0xe7, 0x37, 0x1c, 0x0b, 0x0d, 0xb9, 0x7c, 0xce, 0x37, 0x8b, 0x9a, 0xa3, 0x55, 0x56, 0x2b, 0x77, 0x1c, 0x51, 0x04, 0x38, 0x58, 0x78, 0xc3, 0xb9, 0x18, 0x37, 0x9b, 0x10, 0x1a, 0xc8, 0x88, 0xb1, 0xf1, 0x5f, 0x0f, 0x52, 0xd1, 0x5e, 0x0a, 0x92, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3618 = { .name = "ecdsa_secp224r1_sha3_224_3618", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3618_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3618_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3618_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3619 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3619_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3619_msg[] = { 0x32, 0x31, 0x31, 0x38, 0x31, 0x37, 0x33, 0x30, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3619_sig[] = { 0xf4, 0x29, 0x40, 0xed, 0x72, 0x87, 0xb2, 0x81, 0xf0, 0x0c, 0x79, 0x5a, 0xbd, 0x67, 0x1f, 0xef, 0xfd, 0xed, 0x54, 0x2f, 0xc6, 0x3c, 0x4e, 0xcf, 0xc7, 0x33, 0x64, 0x27, 0x90, 0x49, 0xe6, 0x2c, 0x46, 0x47, 0x23, 0xf5, 0x0c, 0x26, 0x5f, 0xdb, 0xcf, 0x7c, 0x67, 0x94, 0xb5, 0x29, 0x4a, 0x58, 0xb3, 0x10, 0x0e, 0x82, 0xad, 0x9c, 0xd7, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3619 = { .name = "ecdsa_secp224r1_sha3_224_3619", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3619_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3619_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3619_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3620 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3620_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3620_msg[] = { 0x34, 0x30, 0x34, 0x39, 0x36, 0x34, 0x39, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3620_sig[] = { 0xd0, 0xb0, 0x92, 0x86, 0x78, 0x08, 0xc7, 0xd3, 0xb3, 0x4f, 0xec, 0x07, 0xc4, 0xeb, 0xe8, 0x32, 0x4a, 0x1a, 0x4f, 0xf2, 0xbf, 0xc2, 0xe2, 0x0a, 0xaf, 0xfb, 0xd2, 0x48, 0x4e, 0xb9, 0x22, 0xb3, 0xde, 0x3b, 0xd2, 0x44, 0x93, 0x8a, 0xdb, 0x20, 0xe2, 0x1c, 0xdd, 0x56, 0x00, 0x30, 0xd1, 0x3c, 0xc0, 0x19, 0x1c, 0x37, 0xcc, 0xd3, 0x8e, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3620 = { .name = "ecdsa_secp224r1_sha3_224_3620", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3620_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3620_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3620_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3621 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3621_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3621_msg[] = { 0x36, 0x32, 0x35, 0x33, 0x33, 0x32, 0x34, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3621_sig[] = { 0xa7, 0x34, 0x72, 0xe1, 0xf3, 0x03, 0xbf, 0xe5, 0x01, 0x28, 0x77, 0x0c, 0x91, 0x34, 0xbd, 0x93, 0xaf, 0x9b, 0x06, 0x4f, 0x9b, 0x78, 0x2a, 0x45, 0xdd, 0x85, 0xc3, 0x3c, 0xda, 0x4b, 0x8b, 0xd6, 0xe2, 0xba, 0x5c, 0x63, 0x5d, 0xca, 0xf9, 0xa7, 0xd2, 0xbf, 0x77, 0x4b, 0x10, 0xc2, 0xb0, 0x9b, 0xa0, 0x74, 0xcd, 0xc5, 0x8d, 0x9c, 0x8d, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3621 = { .name = "ecdsa_secp224r1_sha3_224_3621", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3621_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3621_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3621_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3622 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3622_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3622_msg[] = { 0x33, 0x37, 0x39, 0x35, 0x32, 0x35, 0x33, 0x36, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3622_sig[] = { 0x98, 0x32, 0xae, 0x82, 0x08, 0x0e, 0xc0, 0x28, 0x33, 0xe3, 0xea, 0xe9, 0x13, 0xf7, 0xa9, 0x8e, 0xb9, 0xe2, 0xd0, 0x51, 0x33, 0xe5, 0xf2, 0xc7, 0xfa, 0x20, 0x47, 0x9d, 0x0e, 0x90, 0xc6, 0x76, 0xdf, 0x77, 0x37, 0xad, 0xb8, 0x4e, 0x54, 0xcd, 0xa4, 0x7a, 0xf9, 0xf5, 0xd6, 0xab, 0x2f, 0x34, 0xea, 0xec, 0x83, 0x7b, 0x62, 0x8f, 0x64, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3622 = { .name = "ecdsa_secp224r1_sha3_224_3622", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3622_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3622_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3622_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3623 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3623_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3623_msg[] = { 0x38, 0x33, 0x34, 0x39, 0x30, 0x34, 0x32, 0x34, 0x30, 0x35, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3623_sig[] = { 0x3e, 0xac, 0x05, 0xa7, 0x47, 0xf4, 0x39, 0x88, 0xda, 0xb9, 0x87, 0xf4, 0x87, 0xfb, 0xca, 0x80, 0x03, 0xe5, 0xc7, 0xe9, 0xbb, 0x58, 0x06, 0x34, 0xaf, 0xef, 0x6e, 0x03, 0xdd, 0x65, 0x66, 0x79, 0xe1, 0xc1, 0x80, 0x0f, 0x8a, 0x25, 0x87, 0x81, 0xf4, 0x54, 0x89, 0xe6, 0x63, 0x0a, 0x6d, 0x93, 0x4b, 0x3e, 0x2a, 0x05, 0xd4, 0x1a, 0x0c, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3623 = { .name = "ecdsa_secp224r1_sha3_224_3623", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3623_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3623_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_224_3623_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3624 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3624_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3624_msg[] = { 0x34, 0x37, 0x36, 0x37, 0x30, 0x36, 0x36, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3624_sig[] = { 0x5f, 0x3a, 0x63, 0x9c, 0x16, 0x3d, 0xaa, 0xf3, 0xe2, 0xc0, 0xd7, 0xd1, 0xa3, 0xca, 0x82, 0xeb, 0xe4, 0x29, 0x51, 0x49, 0x11, 0x14, 0xb6, 0xe2, 0x57, 0xe2, 0x8f, 0x69, 0xea, 0x0e, 0x12, 0xe2, 0x3d, 0x48, 0x5a, 0x93, 0x2f, 0x1a, 0xee, 0x97, 0x47, 0x61, 0xb0, 0xe0, 0xc9, 0xc3, 0xd5, 0xba, 0x18, 0x22, 0xab, 0x64, 0x68, 0x19, 0x88, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3624 = { .name = "ecdsa_secp224r1_sha3_224_3624", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3624_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3624_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_224_3624_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3625 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3625_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3625_msg[] = { 0x39, 0x32, 0x38, 0x35, 0x36, 0x33, 0x37, 0x36, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3625_sig[] = { 0xc0, 0xad, 0x06, 0xec, 0x18, 0xc4, 0xed, 0x44, 0x69, 0xc5, 0xf4, 0xf4, 0xbe, 0x4b, 0xfb, 0x41, 0xb6, 0xfc, 0x02, 0x44, 0x56, 0xb2, 0xee, 0xd1, 0xd8, 0x09, 0x6a, 0x75, 0x45, 0xe0, 0x8a, 0x93, 0xae, 0x4e, 0x33, 0xbd, 0xf3, 0x53, 0x79, 0x16, 0x18, 0x43, 0x26, 0x6e, 0xcd, 0x2f, 0x20, 0x0c, 0xe2, 0x92, 0xac, 0x99, 0x89, 0x47, 0x48, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3625 = { .name = "ecdsa_secp224r1_sha3_224_3625", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3625_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3625_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_224_3625_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3626 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3626_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3626_msg[] = { 0x31, 0x34, 0x39, 0x36, 0x33, 0x33, 0x31, 0x31, 0x35, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3626_sig[] = { 0x0f, 0x5a, 0x1b, 0xb9, 0xc5, 0x72, 0xa6, 0xdd, 0xfe, 0x50, 0x72, 0xde, 0x6a, 0x07, 0x7b, 0x14, 0x90, 0x09, 0x6a, 0x88, 0xcb, 0x2b, 0xe9, 0xaf, 0x8d, 0x97, 0x64, 0x83, 0x92, 0xe7, 0x25, 0x84, 0x59, 0xdf, 0x84, 0x8f, 0xfb, 0xcc, 0x7f, 0xbf, 0xa9, 0x9f, 0xdf, 0x4d, 0xb1, 0x6b, 0x73, 0x4d, 0xc5, 0xb9, 0x70, 0x14, 0x27, 0x03, 0x4f, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3626 = { .name = "ecdsa_secp224r1_sha3_224_3626", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3626_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3626_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3626_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3627 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3627_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3627_msg[] = { 0x37, 0x32, 0x34, 0x37, 0x30, 0x39, 0x33, 0x30, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3627_sig[] = { 0xa0, 0x97, 0xb8, 0x42, 0x24, 0x52, 0xdc, 0xb2, 0xa9, 0x3a, 0xe3, 0x2f, 0xf8, 0xd6, 0xbe, 0xfc, 0x31, 0xd7, 0x60, 0x51, 0x70, 0x4b, 0x10, 0x23, 0xac, 0x5c, 0x76, 0x45, 0xf4, 0xfa, 0xaf, 0x5f, 0x0d, 0xc7, 0x80, 0x23, 0x88, 0x58, 0x23, 0xc5, 0x54, 0x7a, 0x59, 0x32, 0x0b, 0xed, 0x2e, 0xb2, 0xeb, 0x3b, 0x94, 0x8d, 0x07, 0xce, 0x49, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3627 = { .name = "ecdsa_secp224r1_sha3_224_3627", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3627_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3627_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3627_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3628 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3628_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3628_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x35, 0x39, 0x39, 0x33, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3628_sig[] = { 0x7b, 0x4d, 0x49, 0x83, 0x8b, 0xff, 0xa9, 0x79, 0xd0, 0xd9, 0x77, 0x2f, 0x8a, 0xf3, 0x93, 0x40, 0x02, 0x3a, 0x6b, 0x11, 0xa0, 0xe2, 0x17, 0x3c, 0xe9, 0x2d, 0x1b, 0x8e, 0xf8, 0x78, 0xaf, 0x3f, 0x51, 0x62, 0x88, 0xab, 0xf3, 0x24, 0xb0, 0xc5, 0x2d, 0xbc, 0x2d, 0x71, 0x06, 0xd2, 0xdc, 0x39, 0x78, 0x71, 0x37, 0x4b, 0xd1, 0x44, 0xc2, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3628 = { .name = "ecdsa_secp224r1_sha3_224_3628", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3628_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3628_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3628_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3629 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3629_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3629_msg[] = { 0x35, 0x39, 0x38, 0x33, 0x37, 0x36, 0x34, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3629_sig[] = { 0xfe, 0xda, 0x6c, 0x1c, 0x40, 0xc4, 0x83, 0xf8, 0x7f, 0x45, 0x86, 0xd2, 0x33, 0x81, 0xa7, 0x1a, 0x6b, 0x05, 0x1c, 0xe2, 0x89, 0x16, 0xf1, 0x99, 0x29, 0x5e, 0xae, 0xd3, 0x75, 0xbe, 0x57, 0xd1, 0xb4, 0x6f, 0xf0, 0x36, 0x43, 0x08, 0xdb, 0x27, 0x25, 0xb1, 0x9b, 0xcc, 0x1c, 0xe8, 0x20, 0xcf, 0x57, 0xe3, 0x7f, 0x82, 0x5d, 0x30, 0xe1, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3629 = { .name = "ecdsa_secp224r1_sha3_224_3629", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3629_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3629_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3629_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3630 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3630_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3630_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x37, 0x39, 0x36, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_224_3630_sig[] = { 0x99, 0x69, 0xb8, 0xd0, 0x3e, 0xd1, 0x31, 0x3e, 0xcf, 0xd1, 0x73, 0x9e, 0x4c, 0x92, 0x34, 0xc0, 0xe7, 0x28, 0x7f, 0x15, 0x83, 0x9e, 0xa1, 0xe6, 0xfe, 0xed, 0x50, 0xb1, 0x45, 0xf6, 0xa8, 0x20, 0xac, 0x45, 0xd8, 0x35, 0xec, 0xdd, 0x52, 0xc8, 0x36, 0xf1, 0x57, 0xab, 0x2b, 0x92, 0x79, 0xa5, 0x60, 0xd2, 0xfe, 0x96, 0x6e, 0xe2, 0x3a, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3630 = { .name = "ecdsa_secp224r1_sha3_224_3630", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3630_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3630_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3630_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3631 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3631_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3631_msg[] = { 0x33, 0x33, 0x35, 0x38, 0x39, 0x39, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3631_sig[] = { 0xa6, 0x2e, 0x95, 0x21, 0x92, 0xd3, 0xa9, 0xdb, 0xfc, 0x2a, 0xb2, 0x0c, 0x57, 0xc7, 0x19, 0xbf, 0x52, 0xee, 0xf8, 0x59, 0xd9, 0x94, 0xc8, 0x60, 0xa9, 0x56, 0x4f, 0x12, 0xbe, 0x10, 0x07, 0xb5, 0x2e, 0x93, 0x08, 0xbd, 0xe8, 0x67, 0xf3, 0x80, 0xf0, 0xbd, 0x30, 0x02, 0x55, 0x4d, 0x8a, 0xc8, 0x54, 0xf9, 0xdb, 0x3d, 0x4a, 0x7d, 0x68, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3631 = { .name = "ecdsa_secp224r1_sha3_224_3631", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3631_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3631_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha3_224_3631_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3632 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3632_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3632_msg[] = { 0x33, 0x31, 0x37, 0x31, 0x39, 0x37, 0x34, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3632_sig[] = { 0xf5, 0x26, 0xb9, 0x28, 0x8e, 0x25, 0xaa, 0xea, 0x8d, 0x65, 0x7e, 0xc7, 0xa4, 0xeb, 0xde, 0x46, 0xd8, 0xad, 0xc4, 0xc6, 0xd9, 0x09, 0xfc, 0xfd, 0x7e, 0x2d, 0xcd, 0xb0, 0x5d, 0x10, 0x08, 0x7d, 0x12, 0x63, 0xdb, 0x52, 0x59, 0x57, 0x9e, 0x99, 0x87, 0xb4, 0x10, 0x00, 0x1b, 0x77, 0x4f, 0x81, 0xc3, 0xe4, 0x89, 0xdf, 0x85, 0xb2, 0x71, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3632 = { .name = "ecdsa_secp224r1_sha3_224_3632", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3632_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3632_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3632_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3633 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3633_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3633_msg[] = { 0x32, 0x35, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_224_3633_sig[] = { 0xc5, 0xff, 0x7a, 0xb6, 0x38, 0xb6, 0x70, 0x25, 0x35, 0xea, 0x71, 0x9e, 0x7c, 0x2f, 0x77, 0x53, 0xc5, 0x3c, 0x16, 0x11, 0xc5, 0x91, 0x98, 0x68, 0xfb, 0x70, 0x8b, 0x00, 0xab, 0x29, 0xaa, 0xc0, 0x43, 0xd3, 0x58, 0x47, 0x28, 0x0a, 0x3d, 0x77, 0x59, 0x0a, 0xe9, 0x3a, 0x4b, 0x26, 0xdb, 0x18, 0x23, 0x8a, 0x53, 0xc6, 0x7c, 0xbd, 0x16, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3633 = { .name = "ecdsa_secp224r1_sha3_224_3633", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3633_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3633_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3633_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3634 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3634_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3634_msg[] = { 0x36, 0x30, 0x34, 0x32, 0x35, 0x38, 0x31, 0x38, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3634_sig[] = { 0xe6, 0x9b, 0x43, 0xa6, 0x8f, 0x45, 0x2d, 0x26, 0x51, 0x6e, 0x13, 0x16, 0xd5, 0x4c, 0xd5, 0x14, 0x16, 0xa0, 0x47, 0xd4, 0x29, 0x45, 0x35, 0x0c, 0xdc, 0x50, 0x65, 0x18, 0x66, 0xd1, 0xab, 0xd5, 0xaa, 0x58, 0xec, 0xcf, 0x9e, 0xbe, 0x93, 0x91, 0xcc, 0xe8, 0xce, 0xfa, 0xb1, 0x62, 0xa9, 0x13, 0x04, 0x39, 0x23, 0x5f, 0x05, 0x1f, 0xc4, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3634 = { .name = "ecdsa_secp224r1_sha3_224_3634", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3634_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3634_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3634_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3635 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3635_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3635_msg[] = { 0x38, 0x36, 0x35, 0x31, 0x30, 0x30, 0x32, 0x30, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3635_sig[] = { 0x0c, 0x68, 0x22, 0xe2, 0x56, 0xd0, 0x19, 0x0b, 0x49, 0x62, 0xc5, 0xb4, 0xbf, 0xda, 0xbc, 0xe1, 0x0d, 0x27, 0x7c, 0xd3, 0x47, 0xca, 0xf0, 0x85, 0x08, 0x92, 0x28, 0x8f, 0x3f, 0x59, 0x72, 0x7e, 0x4d, 0x9e, 0x3b, 0x92, 0xf4, 0xb0, 0xce, 0x71, 0x0c, 0x51, 0x12, 0xca, 0xa1, 0x8e, 0x40, 0x51, 0xcc, 0x71, 0x45, 0x0f, 0x69, 0x89, 0xcb, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3635 = { .name = "ecdsa_secp224r1_sha3_224_3635", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3635_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3635_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3635_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3636 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3636_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3636_msg[] = { 0x34, 0x30, 0x37, 0x31, 0x32, 0x38, 0x30, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_224_3636_sig[] = { 0x85, 0x0b, 0x43, 0x46, 0x1e, 0x10, 0x71, 0x74, 0xa7, 0x7a, 0x4f, 0x9a, 0x30, 0x11, 0xe0, 0x38, 0x54, 0xd6, 0xb5, 0xb4, 0xa0, 0xa6, 0x25, 0x0e, 0x2f, 0xc4, 0x72, 0xa2, 0x0e, 0x7d, 0xa9, 0xa2, 0x1a, 0x23, 0x73, 0xd0, 0x94, 0x40, 0x31, 0xfd, 0x12, 0x1d, 0xce, 0x05, 0x94, 0xaa, 0x87, 0x21, 0xda, 0x12, 0x69, 0xf8, 0x46, 0x74, 0x7f, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3636 = { .name = "ecdsa_secp224r1_sha3_224_3636", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3636_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3636_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_224_3636_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3637 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3637_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3637_msg[] = { 0x34, 0x38, 0x38, 0x33, 0x31, 0x37, 0x34, 0x35, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_224_3637_sig[] = { 0xa6, 0xe1, 0x42, 0x06, 0x93, 0x66, 0xbe, 0x8c, 0x48, 0xa7, 0xb6, 0x51, 0xec, 0x45, 0xb0, 0xe2, 0xdd, 0x9d, 0x79, 0x70, 0x11, 0x08, 0xc3, 0x59, 0x97, 0xca, 0x1a, 0x4b, 0x20, 0xb5, 0x76, 0x04, 0x0b, 0x9f, 0x3e, 0x73, 0xae, 0x7f, 0xf3, 0xaf, 0x22, 0x3e, 0x34, 0xdf, 0x82, 0xdc, 0xe8, 0x53, 0x3b, 0xf1, 0x90, 0x14, 0x86, 0xa8, 0xb3, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3637 = { .name = "ecdsa_secp224r1_sha3_224_3637", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3637_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3637_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3637_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3638 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3638_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3638_msg[] = { 0x34, 0x33, 0x36, 0x31, 0x33, 0x38, 0x34, 0x35, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_224_3638_sig[] = { 0x58, 0xe4, 0xc5, 0x55, 0x8f, 0x2d, 0x4d, 0x2b, 0xae, 0xe3, 0x61, 0xda, 0x0e, 0x90, 0x7e, 0x06, 0x8b, 0xbc, 0x69, 0x7b, 0x3a, 0xbd, 0xba, 0xe2, 0x94, 0x74, 0x08, 0x4e, 0x95, 0x1d, 0xe9, 0x02, 0xc7, 0xaf, 0x71, 0xb5, 0xd7, 0xa3, 0xc6, 0x11, 0x7d, 0x25, 0x82, 0x42, 0xa0, 0x4a, 0x86, 0x61, 0xbf, 0xdd, 0x4d, 0x04, 0x76, 0x94, 0xf7, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3638 = { .name = "ecdsa_secp224r1_sha3_224_3638", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3638_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3638_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_224_3638_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3639 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3639_pubkey[] = { 0xd3, 0x7f, 0xb4, 0xab, 0xe8, 0xc5, 0x04, 0x50, 0x4f, 0x01, 0x05, 0x39, 0xeb, 0x76, 0x4c, 0x10, 0xc1, 0x42, 0x50, 0x64, 0x5e, 0x84, 0x6e, 0xaf, 0x41, 0xb9, 0x99, 0x53, 0xc4, 0xe2, 0xc1, 0xc2, 0x77, 0x05, 0x69, 0x82, 0xc5, 0xb8, 0x13, 0x05, 0xed, 0x31, 0x10, 0xa0, 0x64, 0xff, 0x6a, 0xe8, 0xe0, 0x54, 0x5f, 0x0c, 0x35, 0xff, 0x88, 0x71, }; static const unsigned char ecdsa_secp224r1_sha3_224_3639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3639_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3639 = { .name = "ecdsa_secp224r1_sha3_224_3639", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3639_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3639_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3639_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 285 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3640 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3640_pubkey[] = { 0xd3, 0x7f, 0xb4, 0xab, 0xe8, 0xc5, 0x04, 0x50, 0x4f, 0x01, 0x05, 0x39, 0xeb, 0x76, 0x4c, 0x10, 0xc1, 0x42, 0x50, 0x64, 0x5e, 0x84, 0x6e, 0xaf, 0x41, 0xb9, 0x99, 0x53, 0xc4, 0xe2, 0xc1, 0xc2, 0x77, 0x05, 0x69, 0x82, 0xc5, 0xb8, 0x13, 0x05, 0xed, 0x31, 0x10, 0xa0, 0x64, 0xff, 0x6a, 0xe8, 0xe0, 0x54, 0x5f, 0x0c, 0x35, 0xff, 0x88, 0x71, }; static const unsigned char ecdsa_secp224r1_sha3_224_3640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3640_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3640 = { .name = "ecdsa_secp224r1_sha3_224_3640", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3640_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3640_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3640_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 286 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3641 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3641_pubkey[] = { 0xd9, 0xaa, 0xc1, 0x1d, 0x02, 0x77, 0xa4, 0xb2, 0x35, 0x14, 0xc4, 0xd0, 0x2a, 0x48, 0x3e, 0x92, 0x2d, 0xc4, 0x0c, 0x92, 0xa7, 0x74, 0xb8, 0xc6, 0x21, 0x79, 0x69, 0x0b, 0x9c, 0xfe, 0x0c, 0x9b, 0x06, 0x0b, 0x1a, 0x49, 0x59, 0x83, 0x18, 0x63, 0x16, 0x68, 0x08, 0x3e, 0x4c, 0xf3, 0x4e, 0x4b, 0xab, 0x29, 0xd1, 0x4d, 0x81, 0xc2, 0xb0, 0x49, }; static const unsigned char ecdsa_secp224r1_sha3_224_3641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3641_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3641 = { .name = "ecdsa_secp224r1_sha3_224_3641", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3641_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3641_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3641_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 287 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3642 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3642_pubkey[] = { 0xc3, 0x59, 0xb3, 0x1b, 0x3e, 0xe1, 0x0c, 0xc0, 0xba, 0xb7, 0xd2, 0x1f, 0x0c, 0xc5, 0xce, 0xcb, 0x63, 0x21, 0x86, 0xe8, 0xca, 0x60, 0x8a, 0x74, 0xf9, 0x21, 0x98, 0x6f, 0x27, 0x78, 0x7c, 0xc2, 0x04, 0xc5, 0xed, 0x56, 0x18, 0x97, 0xc1, 0x49, 0x61, 0xf7, 0x82, 0x7b, 0x5f, 0x97, 0x39, 0x59, 0x96, 0xde, 0x6c, 0xff, 0x87, 0x86, 0x27, 0x71, }; static const unsigned char ecdsa_secp224r1_sha3_224_3642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3642_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3642 = { .name = "ecdsa_secp224r1_sha3_224_3642", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3642_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3642_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3642_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 288 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3643 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3643_pubkey[] = { 0xb2, 0x1f, 0xde, 0x4e, 0x39, 0x9d, 0x8c, 0xbf, 0x8c, 0xbb, 0x8e, 0xa8, 0xac, 0x77, 0x0e, 0xb9, 0x7f, 0xf8, 0x5b, 0x01, 0x86, 0x83, 0x43, 0x39, 0x82, 0xca, 0x2b, 0x35, 0x3e, 0x7b, 0x43, 0x25, 0xb4, 0x31, 0x9b, 0xbd, 0x71, 0xfe, 0x9c, 0x3e, 0x49, 0xc4, 0xda, 0xec, 0x89, 0x55, 0x01, 0xaf, 0xce, 0xaa, 0x55, 0x40, 0x40, 0x12, 0x9b, 0x71, }; static const unsigned char ecdsa_secp224r1_sha3_224_3643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3643_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3643 = { .name = "ecdsa_secp224r1_sha3_224_3643", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3643_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3643_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3643_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 289 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3644 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3644_pubkey[] = { 0xfc, 0x03, 0x41, 0xbd, 0xbb, 0xce, 0x3b, 0xee, 0xe1, 0xbe, 0x9f, 0x02, 0xe4, 0x61, 0x48, 0xaf, 0x9d, 0xa5, 0x31, 0x28, 0xe0, 0xe3, 0xc4, 0x5a, 0xf1, 0xab, 0xe4, 0xc7, 0x92, 0xac, 0xfd, 0x71, 0x83, 0x52, 0xe7, 0x10, 0x7f, 0xe0, 0x8e, 0xa6, 0xa3, 0x5d, 0x8b, 0xad, 0xcf, 0x54, 0xf5, 0x70, 0x65, 0xdc, 0x4e, 0x8c, 0x9f, 0x27, 0x05, 0xd2, }; static const unsigned char ecdsa_secp224r1_sha3_224_3644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3644_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3644 = { .name = "ecdsa_secp224r1_sha3_224_3644", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3644_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3644_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3644_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 290 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3645 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3645_pubkey[] = { 0x50, 0xb1, 0x42, 0x56, 0xf6, 0xea, 0x50, 0xd9, 0x84, 0x3b, 0xd9, 0xe2, 0xb4, 0xc2, 0xd9, 0xda, 0xf7, 0x5f, 0x76, 0xac, 0x4e, 0x4e, 0x75, 0x7c, 0x71, 0x2b, 0x30, 0x53, 0x59, 0x4d, 0x68, 0xe1, 0x68, 0x3e, 0xc9, 0x77, 0xb2, 0xef, 0xcc, 0x8a, 0x7b, 0xa6, 0xc4, 0x6a, 0x0e, 0x6a, 0x66, 0x8a, 0x03, 0xf4, 0xf5, 0x0a, 0x3e, 0x21, 0xe4, 0xce, }; static const unsigned char ecdsa_secp224r1_sha3_224_3645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3645_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3645 = { .name = "ecdsa_secp224r1_sha3_224_3645", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3645_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3645_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3645_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 291 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3646 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3646_pubkey[] = { 0x78, 0x01, 0xe4, 0x80, 0x11, 0xfc, 0xe2, 0x68, 0x5a, 0x2f, 0x56, 0x3f, 0xaa, 0xb3, 0x4f, 0xff, 0x72, 0x8e, 0xbb, 0x6e, 0x92, 0xeb, 0x02, 0x9f, 0xef, 0x12, 0x4e, 0xb5, 0xa9, 0xbe, 0x2c, 0x1b, 0x86, 0xe9, 0x9e, 0x44, 0xef, 0x60, 0xe6, 0xc0, 0x2a, 0x04, 0xa1, 0x6c, 0xbd, 0x96, 0x84, 0x82, 0xed, 0x2e, 0xc4, 0xc1, 0x46, 0x3e, 0xfe, 0xef, }; static const unsigned char ecdsa_secp224r1_sha3_224_3646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3646_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3646 = { .name = "ecdsa_secp224r1_sha3_224_3646", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3646_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3646_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3646_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 292 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3647 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3647_pubkey[] = { 0x78, 0x01, 0xe4, 0x80, 0x11, 0xfc, 0xe2, 0x68, 0x5a, 0x2f, 0x56, 0x3f, 0xaa, 0xb3, 0x4f, 0xff, 0x72, 0x8e, 0xbb, 0x6e, 0x92, 0xeb, 0x02, 0x9f, 0xef, 0x12, 0x4e, 0xb5, 0xa9, 0xbe, 0x2c, 0x1b, 0x86, 0xe9, 0x9e, 0x44, 0xef, 0x60, 0xe6, 0xc0, 0x2a, 0x04, 0xa1, 0x6c, 0xbd, 0x96, 0x84, 0x82, 0xed, 0x2e, 0xc4, 0xc1, 0x46, 0x3e, 0xfe, 0xef, }; static const unsigned char ecdsa_secp224r1_sha3_224_3647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3647_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3647 = { .name = "ecdsa_secp224r1_sha3_224_3647", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3647_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3647_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3647_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 293 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3648 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3648_pubkey[] = { 0x6c, 0xce, 0x00, 0x4a, 0xbb, 0xcd, 0xcc, 0xdb, 0x3f, 0xda, 0x69, 0x1e, 0x70, 0xa7, 0x1a, 0x4d, 0x8a, 0x92, 0x02, 0x19, 0xaf, 0x2a, 0x20, 0x88, 0x0f, 0x59, 0xc5, 0x3d, 0x86, 0x02, 0x3e, 0xa8, 0x5c, 0xaa, 0x2b, 0xeb, 0xff, 0xcb, 0x9f, 0x36, 0x00, 0x82, 0xe6, 0x26, 0x44, 0x66, 0xea, 0x06, 0x5a, 0xfb, 0x07, 0x82, 0x0d, 0xfb, 0x1a, 0x9a, }; static const unsigned char ecdsa_secp224r1_sha3_224_3648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3648_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3648 = { .name = "ecdsa_secp224r1_sha3_224_3648", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3648_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3648_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3648_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 294 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3649 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3649_pubkey[] = { 0x5d, 0x1b, 0x27, 0xdd, 0x47, 0x71, 0x1d, 0x7f, 0xa9, 0x0b, 0x26, 0x51, 0xe2, 0x02, 0xc2, 0x40, 0xca, 0xd2, 0x81, 0xed, 0x80, 0x3e, 0x1a, 0x32, 0x36, 0xc7, 0x89, 0xfa, 0x0e, 0xa5, 0x42, 0x06, 0x64, 0xe2, 0xa8, 0xbd, 0x9c, 0xea, 0x37, 0x40, 0x21, 0x8e, 0x23, 0x73, 0x5e, 0xe2, 0x71, 0x5f, 0x81, 0x30, 0xbe, 0xb4, 0x37, 0x41, 0x95, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_224_3649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3649_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3649 = { .name = "ecdsa_secp224r1_sha3_224_3649", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3649_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3649_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3649_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 295 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3650 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3650_pubkey[] = { 0xdd, 0xf5, 0x3c, 0xec, 0x8d, 0x9c, 0x60, 0x62, 0x90, 0x4d, 0x2a, 0x04, 0xf7, 0x90, 0xf4, 0x59, 0x6c, 0x67, 0x69, 0x6d, 0xd4, 0xf5, 0x42, 0x2a, 0x3c, 0xb8, 0x4c, 0x9c, 0xaf, 0x10, 0xf2, 0xd1, 0xeb, 0x0e, 0x0f, 0xf2, 0x8f, 0xa8, 0xe4, 0x0a, 0x91, 0xd8, 0xd4, 0xad, 0xdb, 0x20, 0xc0, 0x85, 0xd6, 0x35, 0x15, 0x8d, 0xe1, 0xa6, 0x7b, 0xdd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3650_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3650 = { .name = "ecdsa_secp224r1_sha3_224_3650", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3650_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3650_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3650_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 296 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3651 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3651_pubkey[] = { 0xf4, 0x3b, 0x4a, 0x87, 0xdc, 0x12, 0xc6, 0x5b, 0xf2, 0x7f, 0x4b, 0x86, 0x10, 0x48, 0x64, 0x02, 0x32, 0x7a, 0xdc, 0x01, 0x33, 0xc1, 0xdb, 0x8a, 0xdf, 0x4e, 0x3f, 0x9b, 0xa6, 0x1a, 0xad, 0xb4, 0xc5, 0x8a, 0xc0, 0xb5, 0x51, 0x8d, 0x1c, 0x29, 0x29, 0x06, 0x8e, 0xaa, 0x0d, 0x6a, 0x5d, 0x5f, 0x84, 0xda, 0xcf, 0x66, 0xe5, 0xb2, 0x76, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3651_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3651 = { .name = "ecdsa_secp224r1_sha3_224_3651", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3651_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3651_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3651_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 297 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3652 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3652_pubkey[] = { 0x6b, 0xd0, 0xa5, 0xdc, 0x98, 0xa6, 0x76, 0x1a, 0x24, 0xd4, 0xe5, 0xe6, 0xc3, 0x11, 0x87, 0xaf, 0x8c, 0x7e, 0xd8, 0x74, 0xd4, 0x2a, 0xf8, 0x41, 0x80, 0x65, 0x83, 0xb6, 0x02, 0x2e, 0x6b, 0xf9, 0x48, 0x0c, 0x23, 0xd1, 0xbe, 0x34, 0x1f, 0x59, 0xb0, 0x43, 0xaf, 0xda, 0xa7, 0x6b, 0xad, 0x86, 0x22, 0x20, 0x4f, 0xa8, 0x4e, 0x26, 0xdd, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3652_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3652 = { .name = "ecdsa_secp224r1_sha3_224_3652", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3652_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3652_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3652_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 298 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3653 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3653_pubkey[] = { 0x75, 0xb6, 0x5c, 0xd6, 0x14, 0x49, 0xfa, 0xf0, 0xd4, 0xbb, 0x2d, 0x23, 0x00, 0xb1, 0x34, 0x75, 0x7b, 0x71, 0x4f, 0xbc, 0x4e, 0xfb, 0xd6, 0x63, 0x1e, 0x66, 0x4c, 0xbf, 0xb4, 0x88, 0x63, 0x3f, 0x42, 0xe5, 0x0b, 0x11, 0xc3, 0x01, 0xbf, 0x37, 0x36, 0xa4, 0x61, 0x28, 0x6e, 0xcc, 0xad, 0x24, 0x47, 0x18, 0x08, 0x35, 0xd5, 0x08, 0xde, 0xb2, }; static const unsigned char ecdsa_secp224r1_sha3_224_3653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3653_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3653 = { .name = "ecdsa_secp224r1_sha3_224_3653", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3653_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3653_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3653_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 299 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3654 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3654_pubkey[] = { 0xbd, 0x18, 0xc7, 0x79, 0x74, 0x49, 0xc6, 0x4e, 0x9f, 0xc1, 0xad, 0x2c, 0xa9, 0xc4, 0x91, 0x32, 0xfc, 0x34, 0xb4, 0x74, 0x18, 0x31, 0xfd, 0xbc, 0x6c, 0xbd, 0x87, 0xcf, 0xf8, 0x30, 0xc1, 0x08, 0xfd, 0x50, 0x1b, 0xf9, 0xb7, 0xb3, 0xb8, 0x98, 0x07, 0x23, 0x97, 0xb9, 0xa6, 0xe7, 0x22, 0x16, 0xdb, 0x78, 0x4c, 0x87, 0x78, 0x82, 0xc8, 0x7b, }; static const unsigned char ecdsa_secp224r1_sha3_224_3654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3654_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3654 = { .name = "ecdsa_secp224r1_sha3_224_3654", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3654_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3654_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3654_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 300 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3655 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3655_pubkey[] = { 0xaf, 0x73, 0x66, 0x67, 0xb6, 0x18, 0xcf, 0xa5, 0x52, 0x6f, 0x07, 0x3f, 0x70, 0x48, 0xd5, 0xe6, 0xb6, 0x72, 0xa0, 0x55, 0x69, 0xcd, 0x29, 0x12, 0xbc, 0xe8, 0x91, 0x4d, 0x6a, 0x03, 0x0a, 0xa7, 0x3f, 0xd7, 0x95, 0x17, 0xee, 0x81, 0x75, 0x80, 0x04, 0x84, 0xf2, 0xdc, 0xeb, 0xf0, 0x28, 0x71, 0x82, 0x5c, 0xc6, 0x7c, 0x41, 0xb1, 0xa8, 0xfc, }; static const unsigned char ecdsa_secp224r1_sha3_224_3655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3655_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3655 = { .name = "ecdsa_secp224r1_sha3_224_3655", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3655_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3655_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3655_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 301 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3656 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3656_pubkey[] = { 0xaf, 0x73, 0x66, 0x67, 0xb6, 0x18, 0xcf, 0xa5, 0x52, 0x6f, 0x07, 0x3f, 0x70, 0x48, 0xd5, 0xe6, 0xb6, 0x72, 0xa0, 0x55, 0x69, 0xcd, 0x29, 0x12, 0xbc, 0xe8, 0x91, 0x4d, 0x6a, 0x03, 0x0a, 0xa7, 0x3f, 0xd7, 0x95, 0x17, 0xee, 0x81, 0x75, 0x80, 0x04, 0x84, 0xf2, 0xdc, 0xeb, 0xf0, 0x28, 0x71, 0x82, 0x5c, 0xc6, 0x7c, 0x41, 0xb1, 0xa8, 0xfc, }; static const unsigned char ecdsa_secp224r1_sha3_224_3656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3656_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3656 = { .name = "ecdsa_secp224r1_sha3_224_3656", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3656_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3656_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3656_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 302 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3657 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3657_pubkey[] = { 0xaa, 0x2f, 0x98, 0x1a, 0xdd, 0x54, 0x80, 0xe7, 0xf2, 0xa8, 0xae, 0x50, 0xfc, 0x52, 0x25, 0x86, 0x12, 0xad, 0x64, 0x20, 0xa1, 0xa2, 0xcc, 0x2c, 0x25, 0x2c, 0x16, 0x93, 0x32, 0xc1, 0xff, 0x19, 0xc3, 0x31, 0xd3, 0xe5, 0x2a, 0x98, 0xad, 0xd7, 0xe7, 0xf4, 0xf8, 0xac, 0x12, 0x2c, 0xa9, 0x61, 0xb8, 0xcb, 0xe4, 0x26, 0x0e, 0xd8, 0x3e, 0x4c, }; static const unsigned char ecdsa_secp224r1_sha3_224_3657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3657_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3657 = { .name = "ecdsa_secp224r1_sha3_224_3657", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3657_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3657_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3657_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 303 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3658 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3658_pubkey[] = { 0x8f, 0xeb, 0x4b, 0x15, 0x3b, 0x7d, 0xfe, 0x40, 0x81, 0x06, 0x9e, 0xc7, 0x08, 0xfd, 0xb1, 0x61, 0x71, 0x6e, 0xc3, 0xed, 0x17, 0xc8, 0x1e, 0xfb, 0x1b, 0xb3, 0xe3, 0x96, 0xbb, 0xc9, 0x0c, 0xfa, 0xe2, 0xc3, 0x95, 0x7f, 0x2c, 0xec, 0x75, 0x23, 0x94, 0x45, 0x23, 0x9a, 0x1c, 0x0e, 0x9e, 0x0a, 0x03, 0x23, 0x85, 0xd0, 0x63, 0xf1, 0xd2, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3658_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3658 = { .name = "ecdsa_secp224r1_sha3_224_3658", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3658_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3658_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3658_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 304 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3659 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3659_pubkey[] = { 0xaf, 0x2a, 0x29, 0xd3, 0x56, 0x13, 0x3f, 0x4d, 0x72, 0x6c, 0x64, 0xe8, 0xff, 0x7d, 0x80, 0x85, 0x16, 0x49, 0xcf, 0x3e, 0x35, 0xd2, 0xb9, 0xde, 0x27, 0x25, 0xbb, 0xab, 0x6d, 0x21, 0x99, 0xd9, 0xf3, 0xe0, 0xf0, 0x86, 0x3e, 0x67, 0x1d, 0xeb, 0x98, 0x7a, 0xfd, 0xb2, 0x5b, 0x6e, 0x6b, 0x77, 0x44, 0xbc, 0x53, 0xfa, 0xa1, 0x5c, 0xac, 0x53, }; static const unsigned char ecdsa_secp224r1_sha3_224_3659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3659_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3659 = { .name = "ecdsa_secp224r1_sha3_224_3659", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3659_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3659_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3659_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 305 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3660 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3660_pubkey[] = { 0x7b, 0xb0, 0xbc, 0x95, 0x29, 0xb0, 0x6a, 0x42, 0x4e, 0x8e, 0xfb, 0xaa, 0xfd, 0xec, 0x5a, 0xa3, 0x39, 0xde, 0x55, 0x99, 0xf8, 0x2e, 0xc9, 0xe1, 0x95, 0xf0, 0xce, 0xde, 0x38, 0x1d, 0xc9, 0x50, 0xca, 0xa8, 0xb0, 0x45, 0x4f, 0xab, 0x70, 0xc5, 0x7e, 0x06, 0xa1, 0x5b, 0xc7, 0x71, 0xb6, 0x93, 0xeb, 0xb4, 0x01, 0x3b, 0xc8, 0x5b, 0x56, 0xac, }; static const unsigned char ecdsa_secp224r1_sha3_224_3660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3660_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x0e, 0x77, 0xef, 0xeb, 0xda, 0xc8, 0x3c, 0x01, 0xdc, 0xe3, 0xf8, 0xc4, 0x16, 0x2e, 0x28, 0x6b, 0x38, 0xb7, 0xe2, 0x3d, 0xe8, 0x36, 0x37, 0xa7, 0x25, 0x31, 0xea, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3660 = { .name = "ecdsa_secp224r1_sha3_224_3660", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3660_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3660_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3660_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 306 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3661 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3661_pubkey[] = { 0x2d, 0xa3, 0xea, 0x31, 0x45, 0xa1, 0xe6, 0x87, 0x72, 0xe1, 0x39, 0xf1, 0xb5, 0xd9, 0xb8, 0x5e, 0x20, 0x1d, 0xe7, 0xdf, 0x47, 0x75, 0xd5, 0xc4, 0xf7, 0x78, 0x25, 0x96, 0x4d, 0x3a, 0x23, 0x80, 0x09, 0x9d, 0x7f, 0x3c, 0xf3, 0xad, 0x18, 0xc1, 0xfb, 0x13, 0xab, 0x1e, 0x05, 0x4c, 0x09, 0x76, 0x33, 0xfd, 0x51, 0xe6, 0x7c, 0x1a, 0x9c, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha3_224_3661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3661_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xf1, 0x88, 0x10, 0x14, 0x25, 0x37, 0xc3, 0xfe, 0x23, 0x1c, 0x07, 0x3b, 0xe9, 0xd0, 0xee, 0x37, 0xa8, 0x01, 0x0e, 0x00, 0x2b, 0xa6, 0xf1, 0x9e, 0x37, 0x2a, 0x3f, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3661 = { .name = "ecdsa_secp224r1_sha3_224_3661", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3661_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3661_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3661_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 307 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3662 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3662_pubkey[] = { 0xff, 0xd4, 0x0a, 0x19, 0xc0, 0x9c, 0xe0, 0xa2, 0x11, 0x24, 0xf1, 0x63, 0xc7, 0x25, 0x58, 0xe1, 0xf1, 0x5a, 0x11, 0xae, 0xcd, 0xe9, 0xdd, 0xe0, 0x8c, 0x46, 0x5b, 0xce, 0xe3, 0xcc, 0x54, 0x42, 0x6c, 0x78, 0x50, 0xae, 0x17, 0x67, 0x0e, 0x1c, 0xc1, 0x99, 0x31, 0xe9, 0xd9, 0x34, 0x61, 0x0f, 0x42, 0xf4, 0x56, 0xb8, 0x47, 0x2a, 0x80, 0x47, }; static const unsigned char ecdsa_secp224r1_sha3_224_3662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3662_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3662 = { .name = "ecdsa_secp224r1_sha3_224_3662", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3662_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3662_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3662_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 308 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3663 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3663_pubkey[] = { 0x06, 0x08, 0x1e, 0xe7, 0xd0, 0x6a, 0xe8, 0xd4, 0xb8, 0x40, 0x75, 0xe5, 0x32, 0x64, 0x12, 0x5b, 0x0e, 0xfa, 0x08, 0x2d, 0xc6, 0xe1, 0xd9, 0x19, 0x0e, 0x9c, 0xd8, 0xf6, 0x36, 0x10, 0x12, 0xdb, 0x57, 0x0e, 0x27, 0x93, 0x36, 0xfb, 0xc8, 0xf7, 0x48, 0xd7, 0xd1, 0xc7, 0x79, 0x67, 0xcc, 0x0a, 0xe1, 0x88, 0xae, 0xdf, 0x8c, 0xb4, 0xd0, 0xf6, }; static const unsigned char ecdsa_secp224r1_sha3_224_3663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3663_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3663 = { .name = "ecdsa_secp224r1_sha3_224_3663", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3663_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3663_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3663_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 309 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3664 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3664_pubkey[] = { 0xf4, 0x80, 0xa4, 0x74, 0xe2, 0x8f, 0x98, 0x7e, 0x1e, 0x76, 0xe7, 0x3c, 0x7a, 0x9c, 0x5c, 0x12, 0x30, 0x7f, 0x5b, 0xdc, 0x99, 0xd9, 0x7e, 0x51, 0x5e, 0x71, 0xae, 0x42, 0x0e, 0x31, 0x0a, 0xb3, 0x40, 0x3e, 0xb4, 0x4f, 0x8f, 0x17, 0xe2, 0x17, 0x91, 0x4d, 0x13, 0x6c, 0x8e, 0x23, 0x41, 0xf7, 0x11, 0x77, 0x05, 0x2d, 0x4f, 0x07, 0xdc, 0xb3, }; static const unsigned char ecdsa_secp224r1_sha3_224_3664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3664_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x04, 0xd2, 0xa5, 0x4e, 0x9e, 0x42, 0xbe, 0xab, 0x49, 0xa1, 0x52, 0xec, 0x07, 0x64, 0xb8, 0x23, 0xbd, 0x92, 0xa0, 0xbf, 0x4d, 0x67, 0x67, 0xe2, 0x61, 0xbb, 0x4e, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3664 = { .name = "ecdsa_secp224r1_sha3_224_3664", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3664_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3664_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3664_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 310 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3665 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3665_pubkey[] = { 0x46, 0x55, 0xa8, 0xb7, 0xd4, 0x66, 0x13, 0xd3, 0xd8, 0xac, 0xe5, 0x97, 0xa9, 0xd3, 0x81, 0xb7, 0xd2, 0xe3, 0x0c, 0x57, 0xaa, 0xd4, 0x90, 0xe4, 0x13, 0x48, 0x11, 0x05, 0x4a, 0xca, 0x54, 0x63, 0xf0, 0x37, 0x7d, 0xb9, 0xc9, 0x63, 0x8d, 0x28, 0x01, 0x29, 0xcf, 0x14, 0xf5, 0xe6, 0x0c, 0x8e, 0xbc, 0xef, 0x4c, 0x8e, 0xbd, 0xc9, 0xb1, 0x5d, }; static const unsigned char ecdsa_secp224r1_sha3_224_3665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3665_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf9, 0xf9, 0xe7, 0xf1, 0x01, 0xb4, 0xea, 0x46, 0x8e, 0xb7, 0x8f, 0xd9, 0xba, 0x89, 0x15, 0x64, 0x54, 0xb4, 0x14, 0xfc, 0x17, 0xd0, 0x28, 0x40, 0xca, 0x81, 0xca, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3665 = { .name = "ecdsa_secp224r1_sha3_224_3665", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3665_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3665_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3665_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 311 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3666 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3666_pubkey[] = { 0x6c, 0x3c, 0x10, 0x69, 0xfb, 0x76, 0xda, 0x43, 0xe5, 0xa9, 0xae, 0x1a, 0x69, 0xfb, 0x67, 0x97, 0x40, 0x17, 0x1f, 0x2b, 0x45, 0x79, 0x56, 0xb1, 0x3f, 0x58, 0x29, 0xc0, 0x4f, 0x0b, 0x10, 0x00, 0xd4, 0x1a, 0x56, 0xd9, 0x6e, 0xca, 0x18, 0xa6, 0x26, 0xd0, 0x63, 0x6f, 0x20, 0xce, 0xe1, 0x84, 0xf3, 0xd2, 0xf5, 0xb8, 0x7a, 0xb6, 0x8c, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha3_224_3666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3666_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbe, 0x7e, 0xd7, 0x38, 0x4b, 0xc8, 0xb9, 0x01, 0x13, 0xe5, 0x8c, 0xa8, 0x7a, 0x68, 0xa0, 0x6f, 0xc2, 0xfe, 0x5e, 0xfa, 0x96, 0xf0, 0xa9, 0x56, 0x73, 0x3d, 0xc6, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3666 = { .name = "ecdsa_secp224r1_sha3_224_3666", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3666_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3666_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3666_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 312 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3667 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3667_pubkey[] = { 0x9a, 0x24, 0x37, 0x5b, 0x03, 0xb7, 0x8c, 0x20, 0x23, 0x08, 0x67, 0xb8, 0x42, 0xc6, 0x80, 0xbd, 0xb8, 0x86, 0x04, 0xfa, 0x93, 0xf7, 0xc5, 0x93, 0x17, 0x34, 0x83, 0x10, 0x60, 0x09, 0x0f, 0xf5, 0xde, 0xc7, 0xb6, 0xfb, 0x6d, 0xf4, 0x59, 0xbe, 0xfd, 0xfc, 0x5e, 0x9d, 0x44, 0x01, 0x98, 0xe8, 0x61, 0x0a, 0x26, 0x7d, 0xaa, 0x95, 0x48, 0xfa, }; static const unsigned char ecdsa_secp224r1_sha3_224_3667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3667_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0x82, 0x35, 0x15, 0xd5, 0x25, 0xdc, 0x02, 0xf1, 0x88, 0x10, 0x14, 0x25, 0x37, 0x55, 0x3a, 0x6d, 0xa5, 0x60, 0x48, 0xfb, 0x99, 0x9d, 0x3f, 0xdf, 0xf8, 0x5f, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3667 = { .name = "ecdsa_secp224r1_sha3_224_3667", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3667_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3667_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3667_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 313 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3668 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3668_pubkey[] = { 0x71, 0xf0, 0x1e, 0x60, 0x70, 0xa5, 0xbd, 0x69, 0x40, 0x92, 0x41, 0x7f, 0x75, 0xb1, 0xf1, 0xb3, 0x54, 0x57, 0x42, 0x1e, 0x99, 0x97, 0xfa, 0x50, 0x86, 0xdf, 0xef, 0x4b, 0x2b, 0x8f, 0x67, 0x51, 0x0a, 0xc8, 0x20, 0x38, 0x09, 0x07, 0x50, 0x3b, 0x3b, 0xcd, 0xb8, 0x9f, 0xdb, 0x5f, 0x26, 0x88, 0x43, 0x4d, 0xba, 0x79, 0xd3, 0xa4, 0x0a, 0x11, }; static const unsigned char ecdsa_secp224r1_sha3_224_3668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3668_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x23, 0x51, 0x5d, 0x52, 0x5d, 0xc0, 0x2f, 0x18, 0x81, 0x01, 0x42, 0x53, 0x7c, 0x3f, 0xc1, 0xff, 0xd9, 0xa4, 0x38, 0x52, 0xc2, 0x62, 0x97, 0x4a, 0x2a, 0x16, 0x40, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3668 = { .name = "ecdsa_secp224r1_sha3_224_3668", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3668_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3668_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3668_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 314 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3669 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3669_pubkey[] = { 0x45, 0x33, 0x55, 0x21, 0x42, 0x78, 0x47, 0x47, 0x35, 0xb3, 0x2b, 0x1d, 0x45, 0xc9, 0xa2, 0x03, 0x42, 0x15, 0x78, 0xc1, 0x0a, 0xcd, 0x42, 0x6e, 0x9a, 0x56, 0x9d, 0x5f, 0x6b, 0x56, 0x55, 0x13, 0x83, 0x46, 0xd0, 0xbe, 0xf9, 0xcd, 0xe0, 0xeb, 0xb9, 0x7b, 0x49, 0x38, 0xe3, 0xc2, 0x8d, 0xc6, 0x12, 0xb4, 0xea, 0xab, 0xa8, 0x62, 0x18, 0x2d, }; static const unsigned char ecdsa_secp224r1_sha3_224_3669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3669_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x46, 0xa2, 0xba, 0xa4, 0xbb, 0x80, 0x5e, 0x31, 0x02, 0x02, 0x84, 0xa6, 0xf8, 0x7f, 0x83, 0xff, 0xb3, 0x48, 0x70, 0xa5, 0x84, 0xc5, 0x2e, 0x94, 0x54, 0x2c, 0x81, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3669 = { .name = "ecdsa_secp224r1_sha3_224_3669", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3669_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3669_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3669_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 315 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3670 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3670_pubkey[] = { 0xfa, 0x86, 0xcd, 0xd0, 0x97, 0x6a, 0xcf, 0x06, 0xb0, 0xa7, 0xa3, 0xdc, 0xae, 0x70, 0xf2, 0x87, 0xe6, 0x29, 0x50, 0xd8, 0x87, 0x4b, 0x32, 0xab, 0xcd, 0x59, 0xf7, 0x55, 0xbd, 0x00, 0x81, 0x7c, 0xea, 0x3c, 0x6b, 0x5e, 0x8d, 0x32, 0x66, 0xbe, 0xf1, 0xf3, 0xdf, 0x94, 0x4f, 0xc4, 0x95, 0x3e, 0x7a, 0x96, 0x09, 0x02, 0x90, 0x1f, 0xf3, 0x80, }; static const unsigned char ecdsa_secp224r1_sha3_224_3670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3670_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd5, 0x25, 0xdc, 0x02, 0xf1, 0x88, 0x10, 0x14, 0x25, 0x37, 0xc3, 0xfe, 0x23, 0x1b, 0x44, 0xee, 0xeb, 0xc7, 0x6f, 0x3a, 0xb7, 0x68, 0x29, 0xdc, 0x0f, 0xb7, 0xe7, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3670 = { .name = "ecdsa_secp224r1_sha3_224_3670", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3670_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3670_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3670_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 316 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3671 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3671_pubkey[] = { 0x6f, 0xc6, 0xce, 0x34, 0x8c, 0xb1, 0x7c, 0xf5, 0x7f, 0xe1, 0x8e, 0x21, 0xed, 0x13, 0xe8, 0xf3, 0x3e, 0x5a, 0x72, 0x4b, 0xf8, 0x7f, 0x15, 0x1e, 0xa7, 0x57, 0x96, 0x33, 0xbd, 0xd1, 0xfb, 0x53, 0xba, 0x4e, 0xc9, 0xa4, 0x77, 0xa6, 0xf3, 0xe5, 0x19, 0x30, 0x03, 0xaa, 0xf4, 0x62, 0xc8, 0x57, 0xbc, 0x4a, 0x20, 0xbb, 0x62, 0x44, 0x65, 0x52, }; static const unsigned char ecdsa_secp224r1_sha3_224_3671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3671_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7d, 0x96, 0xad, 0x58, 0xb0, 0xde, 0xa0, 0xaa, 0x5b, 0x2f, 0x56, 0x89, 0xfc, 0x4d, 0x2f, 0x3f, 0x91, 0x93, 0x27, 0xbf, 0x63, 0x3a, 0xe0, 0xb1, 0x7d, 0x50, 0x6e, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3671 = { .name = "ecdsa_secp224r1_sha3_224_3671", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3671_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3671_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3671_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 317 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3672 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3672_pubkey[] = { 0x98, 0xf2, 0xf5, 0xda, 0x45, 0x49, 0x58, 0xc7, 0xb0, 0x4e, 0xf2, 0x22, 0x0d, 0x45, 0xed, 0x85, 0x7a, 0x15, 0x7d, 0x38, 0x74, 0xd0, 0x33, 0xa2, 0x5a, 0xf6, 0xdb, 0x87, 0x90, 0xc7, 0x11, 0xd7, 0x57, 0x41, 0x28, 0xfb, 0x7d, 0xe7, 0xf3, 0x16, 0xf7, 0x89, 0x6b, 0x89, 0x86, 0x70, 0xc9, 0x77, 0x98, 0xd0, 0x5a, 0x97, 0xf9, 0xea, 0xb7, 0xb0, }; static const unsigned char ecdsa_secp224r1_sha3_224_3672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3672_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfb, 0x2d, 0x5a, 0xb1, 0x61, 0xbd, 0x41, 0x54, 0xb6, 0x5e, 0xad, 0x13, 0xf8, 0x9a, 0x5e, 0x7f, 0x23, 0x26, 0x4f, 0x7e, 0xc6, 0x75, 0xc1, 0x62, 0xfa, 0xa0, 0xdc, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3672 = { .name = "ecdsa_secp224r1_sha3_224_3672", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3672_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3672_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3672_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3673 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3673_pubkey[] = { 0x3c, 0xcb, 0x08, 0x21, 0x0d, 0x0b, 0x22, 0x83, 0xf3, 0xcc, 0xb7, 0x79, 0x07, 0x9b, 0xb1, 0x60, 0xce, 0xe3, 0xce, 0xc9, 0x26, 0x3d, 0x35, 0x65, 0x65, 0xf7, 0x70, 0xb3, 0x9f, 0xb0, 0xed, 0xb8, 0x3c, 0xae, 0x0b, 0x73, 0x0f, 0xdd, 0xd5, 0xc0, 0xd6, 0x3e, 0x10, 0xa9, 0x9e, 0x52, 0x74, 0x97, 0xa5, 0x8c, 0x18, 0xb8, 0x4d, 0xae, 0x8e, 0x8e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3673_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x78, 0xc4, 0x08, 0x0a, 0x12, 0x9b, 0xe1, 0xff, 0x11, 0x8e, 0x03, 0x9d, 0xf4, 0xe8, 0x77, 0x1b, 0xd4, 0x00, 0x87, 0x00, 0x15, 0xd3, 0x78, 0xcf, 0x1b, 0x95, 0x1f, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3673 = { .name = "ecdsa_secp224r1_sha3_224_3673", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3673_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3673_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3673_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3674 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3674_pubkey[] = { 0x2d, 0xd3, 0xcd, 0x29, 0xdb, 0x76, 0x16, 0xa6, 0xdc, 0x77, 0xbb, 0x1a, 0x66, 0xe8, 0x49, 0x13, 0x3b, 0x14, 0x08, 0xc5, 0x40, 0xee, 0x2e, 0xbb, 0x01, 0xe0, 0x7b, 0xc4, 0xd3, 0xe5, 0x78, 0x64, 0x01, 0xc4, 0x53, 0x3e, 0x15, 0x69, 0x7c, 0x6b, 0xf8, 0x6e, 0x14, 0xde, 0xf5, 0x08, 0x85, 0x90, 0xc1, 0x9a, 0xec, 0x9d, 0x96, 0xf8, 0x53, 0x8a, }; static const unsigned char ecdsa_secp224r1_sha3_224_3674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3674_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5f, 0x3f, 0x6b, 0x9c, 0x25, 0xe4, 0x5c, 0x80, 0x89, 0xf2, 0xc6, 0x54, 0x3d, 0x34, 0x50, 0x37, 0xe1, 0x7f, 0x2f, 0x7d, 0x4b, 0x78, 0x54, 0xab, 0x39, 0x9e, 0xe3, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3674 = { .name = "ecdsa_secp224r1_sha3_224_3674", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3674_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3674_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3674_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3675 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3675_pubkey[] = { 0x53, 0xe8, 0x9d, 0x29, 0x40, 0x66, 0x22, 0xbb, 0xaa, 0x1b, 0xcf, 0x7c, 0x98, 0x0d, 0x52, 0x32, 0x09, 0x64, 0x6c, 0xc2, 0x0a, 0x4b, 0x31, 0x04, 0xaa, 0x34, 0x42, 0x64, 0x77, 0x81, 0xd3, 0xde, 0x43, 0x41, 0x3d, 0xfa, 0x06, 0x1a, 0xa9, 0xb2, 0xd7, 0xc2, 0x9e, 0xca, 0x9c, 0x8e, 0xd4, 0x2b, 0x28, 0x5f, 0xbc, 0xbb, 0xe0, 0x16, 0xcc, 0x1e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3675_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3675 = { .name = "ecdsa_secp224r1_sha3_224_3675", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3675_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3675_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3675_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 321 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3676 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3676_pubkey[] = { 0x04, 0x9c, 0x4d, 0x99, 0x8c, 0x0f, 0x36, 0x8e, 0xbf, 0x1a, 0x69, 0x27, 0x4f, 0xdd, 0xf8, 0x07, 0xda, 0xe2, 0x45, 0xb4, 0xd3, 0x14, 0x4d, 0x69, 0x6d, 0x81, 0x3e, 0xd9, 0xa5, 0xd3, 0xf5, 0x86, 0x31, 0x5e, 0xe7, 0xf5, 0xb2, 0x63, 0xef, 0xe4, 0x7a, 0x1b, 0x0a, 0x2e, 0x94, 0x84, 0x72, 0x42, 0x71, 0x03, 0x70, 0xd9, 0x2c, 0xeb, 0x24, 0xa4, }; static const unsigned char ecdsa_secp224r1_sha3_224_3676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3676_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3676 = { .name = "ecdsa_secp224r1_sha3_224_3676", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3676_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3676_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3676_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 322 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3677 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3677_pubkey[] = { 0x4b, 0x1b, 0x3c, 0x49, 0x14, 0x43, 0xd1, 0xa4, 0x5c, 0xbe, 0x5f, 0xb2, 0xf6, 0xed, 0x36, 0xac, 0x3e, 0xbd, 0xe2, 0xa2, 0x45, 0x6a, 0x7f, 0x9a, 0xfe, 0x62, 0x8d, 0xd7, 0xd3, 0x28, 0xdb, 0x16, 0x5e, 0xe1, 0x11, 0x07, 0x65, 0x79, 0x75, 0x69, 0xb3, 0x0b, 0x04, 0x19, 0x84, 0x79, 0x0e, 0xa3, 0xaa, 0x65, 0xbd, 0x0b, 0xa3, 0x34, 0x18, 0x18, }; static const unsigned char ecdsa_secp224r1_sha3_224_3677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3677_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3677 = { .name = "ecdsa_secp224r1_sha3_224_3677", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3677_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3677_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3677_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 323 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3678 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3678_pubkey[] = { 0xb1, 0x9e, 0x13, 0x69, 0xac, 0xb5, 0xfc, 0x91, 0x3d, 0x1a, 0xc6, 0xe9, 0x2e, 0xe3, 0x77, 0x05, 0x90, 0xc5, 0xa4, 0x5c, 0xe5, 0x2f, 0xdf, 0x64, 0xa9, 0xf6, 0x51, 0xbe, 0x2f, 0xac, 0x7a, 0x01, 0x7a, 0x6b, 0x6c, 0xfc, 0x1c, 0x38, 0x1c, 0x92, 0x54, 0x56, 0x4c, 0x1b, 0x92, 0x9b, 0x3c, 0x10, 0x1f, 0x89, 0x19, 0x5a, 0x6d, 0x27, 0x90, 0x7e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3678_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3678 = { .name = "ecdsa_secp224r1_sha3_224_3678", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3678_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3678_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3678_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 324 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3679 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3679_pubkey[] = { 0xd0, 0xc8, 0x0d, 0x94, 0x2d, 0xa3, 0xdb, 0xe6, 0x62, 0x46, 0x7e, 0x1b, 0xcc, 0x69, 0xce, 0xb3, 0x22, 0xdc, 0x31, 0x11, 0x52, 0xbf, 0x15, 0x55, 0x7e, 0xd3, 0xf7, 0xaf, 0xf7, 0xb6, 0x27, 0xb0, 0xba, 0x59, 0x52, 0x41, 0x70, 0x52, 0x7c, 0xc1, 0x16, 0x1a, 0xbd, 0xfa, 0x4a, 0x4a, 0x25, 0xdf, 0xd0, 0x9c, 0x59, 0xa9, 0x8d, 0xb7, 0xea, 0x04, }; static const unsigned char ecdsa_secp224r1_sha3_224_3679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3679_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3679 = { .name = "ecdsa_secp224r1_sha3_224_3679", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3679_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3679_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3679_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 325 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3680 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3680_pubkey[] = { 0xa7, 0x81, 0xc8, 0x86, 0x81, 0xc9, 0x8a, 0xad, 0xf3, 0x1e, 0x26, 0x54, 0x1b, 0x9a, 0xb6, 0xef, 0xa5, 0x2a, 0x49, 0x41, 0x2c, 0xf7, 0x28, 0x29, 0x44, 0xf1, 0x37, 0x20, 0xb6, 0x8d, 0xde, 0xaf, 0x8a, 0x09, 0xaf, 0x0b, 0x37, 0x2b, 0x00, 0x7e, 0x12, 0x2d, 0x40, 0x2e, 0x72, 0x4f, 0xdc, 0xea, 0x1c, 0x61, 0x9a, 0x80, 0xb3, 0x2b, 0xfe, 0x5b, }; static const unsigned char ecdsa_secp224r1_sha3_224_3680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3680_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3680 = { .name = "ecdsa_secp224r1_sha3_224_3680", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3680_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3680_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3680_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 326 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3681 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3681_pubkey[] = { 0x93, 0x16, 0x06, 0xb9, 0xf1, 0x80, 0xd1, 0x64, 0x09, 0xef, 0xeb, 0xc9, 0x96, 0xbb, 0x1d, 0xf4, 0x42, 0xb8, 0x4e, 0x19, 0xbc, 0xc9, 0xbe, 0xd0, 0xe2, 0x36, 0xcb, 0x64, 0x50, 0xed, 0xd2, 0x16, 0x26, 0x25, 0xa9, 0x79, 0xa2, 0x5b, 0x23, 0x1f, 0xba, 0x17, 0x87, 0x8b, 0x75, 0x6a, 0x77, 0xc1, 0x67, 0x22, 0x38, 0x86, 0x61, 0x3a, 0xfb, 0x03, }; static const unsigned char ecdsa_secp224r1_sha3_224_3681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3681_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3681 = { .name = "ecdsa_secp224r1_sha3_224_3681", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3681_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3681_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3681_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 327 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3682 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3682_pubkey[] = { 0x1d, 0xf7, 0x98, 0x5b, 0x13, 0xde, 0xcb, 0x2a, 0xa1, 0x70, 0xb3, 0x25, 0xed, 0x24, 0x21, 0xd8, 0xd4, 0x24, 0x74, 0x15, 0x2b, 0x10, 0x40, 0x72, 0x4e, 0xd7, 0xf2, 0x8d, 0x77, 0xab, 0x5d, 0x47, 0xa2, 0xfb, 0x85, 0x75, 0x4a, 0x35, 0x15, 0x68, 0x2f, 0x20, 0xb3, 0xa4, 0x7d, 0x13, 0xb2, 0x6b, 0xd5, 0x9b, 0x72, 0xf3, 0xbd, 0xa8, 0x35, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_224_3682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3682_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3682 = { .name = "ecdsa_secp224r1_sha3_224_3682", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3682_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3682_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3682_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 328 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3683 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3683_pubkey[] = { 0x8a, 0x46, 0x67, 0x0a, 0x9c, 0x9d, 0x3c, 0xf0, 0x3a, 0x9e, 0x9d, 0x48, 0x52, 0x5c, 0x75, 0xe5, 0x72, 0x68, 0x0a, 0x26, 0x27, 0x8a, 0xdc, 0x08, 0x88, 0xd5, 0x03, 0x0f, 0x8c, 0x88, 0xe5, 0x98, 0x29, 0xd5, 0xa8, 0x02, 0xc0, 0x24, 0x5a, 0xa8, 0xb5, 0x64, 0x17, 0x79, 0x87, 0x7c, 0x56, 0x47, 0xad, 0x2b, 0x9b, 0x2a, 0x73, 0x65, 0x35, 0xeb, }; static const unsigned char ecdsa_secp224r1_sha3_224_3683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3683_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3683 = { .name = "ecdsa_secp224r1_sha3_224_3683", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3683_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3683_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3683_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 329 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3684 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3684_pubkey[] = { 0x16, 0x42, 0x80, 0x97, 0xe6, 0xeb, 0x65, 0x68, 0x89, 0x05, 0x67, 0x8a, 0xae, 0x66, 0x1f, 0x3d, 0x83, 0xb7, 0xe5, 0xec, 0xc7, 0x78, 0x7e, 0xd2, 0x2f, 0xc0, 0x29, 0xe8, 0x68, 0xd6, 0x2c, 0xb8, 0x9b, 0xe5, 0x4d, 0x10, 0xca, 0x5b, 0x57, 0x5a, 0xa8, 0x6f, 0x9c, 0x8f, 0xb4, 0x75, 0xc6, 0xd9, 0x0f, 0x59, 0xd4, 0x47, 0x75, 0x95, 0xc0, 0x1c, }; static const unsigned char ecdsa_secp224r1_sha3_224_3684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3684_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3684 = { .name = "ecdsa_secp224r1_sha3_224_3684", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3684_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3684_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3684_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3685 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3685_pubkey[] = { 0x3f, 0xa5, 0x63, 0xf8, 0x06, 0xbe, 0x91, 0x3b, 0x57, 0x34, 0x7a, 0xdf, 0x8b, 0x1e, 0x86, 0x2b, 0x7e, 0x02, 0x53, 0xbe, 0xa7, 0x01, 0xf6, 0xb2, 0x01, 0xe5, 0x7d, 0xca, 0x02, 0x31, 0xcd, 0x68, 0xa2, 0xc2, 0x44, 0x93, 0xde, 0xce, 0xd0, 0x07, 0x71, 0xe1, 0x00, 0xbd, 0x00, 0x1b, 0xc7, 0x99, 0x02, 0x75, 0x6d, 0x56, 0xd6, 0xff, 0x87, 0xf1, }; static const unsigned char ecdsa_secp224r1_sha3_224_3685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3685_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3685 = { .name = "ecdsa_secp224r1_sha3_224_3685", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3685_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3685_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3685_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3686 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3686_pubkey[] = { 0xfe, 0xba, 0x92, 0x30, 0x66, 0x0a, 0xc3, 0xfd, 0x64, 0xae, 0x02, 0xf7, 0x30, 0x62, 0x97, 0xaa, 0x49, 0x75, 0x43, 0x6c, 0x0a, 0xd1, 0x10, 0x58, 0x54, 0xe4, 0x06, 0x6b, 0xdd, 0xcd, 0xba, 0x26, 0x67, 0x94, 0x36, 0xb4, 0xe1, 0x3f, 0x95, 0xd8, 0xf4, 0xf6, 0x59, 0x14, 0x2e, 0x7b, 0xf4, 0x05, 0xc7, 0x72, 0xe2, 0x17, 0x88, 0x04, 0x7b, 0x08, }; static const unsigned char ecdsa_secp224r1_sha3_224_3686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3686_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x14, 0x1a, 0x6e, 0xfb, 0x8f, 0x6e, 0x19, 0x01, 0x6b, 0x61, 0xc7, 0x65, 0x73, 0xc9, 0x75, 0x93, 0x09, 0xa1, 0x8c, 0x16, 0xe4, 0x8c, 0x13, 0x6d, 0xca, 0x55, 0x26, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3686 = { .name = "ecdsa_secp224r1_sha3_224_3686", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3686_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3686_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3686_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 332 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3687 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3687_pubkey[] = { 0xfe, 0xba, 0x92, 0x30, 0x66, 0x0a, 0xc3, 0xfd, 0x64, 0xae, 0x02, 0xf7, 0x30, 0x62, 0x97, 0xaa, 0x49, 0x75, 0x43, 0x6c, 0x0a, 0xd1, 0x10, 0x58, 0x54, 0xe4, 0x06, 0x6b, 0x22, 0x32, 0x45, 0xd9, 0x98, 0x6b, 0xc9, 0x4b, 0x1e, 0xc0, 0x6a, 0x27, 0x0b, 0x09, 0xa6, 0xea, 0xd1, 0x84, 0x0b, 0xfa, 0x38, 0x8d, 0x1d, 0xe8, 0x77, 0xfb, 0x84, 0xf9, }; static const unsigned char ecdsa_secp224r1_sha3_224_3687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3687_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x14, 0x1a, 0x6e, 0xfb, 0x8f, 0x6e, 0x19, 0x01, 0x6b, 0x61, 0xc7, 0x65, 0x73, 0xc9, 0x75, 0x93, 0x09, 0xa1, 0x8c, 0x16, 0xe4, 0x8c, 0x13, 0x6d, 0xca, 0x55, 0x26, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3687 = { .name = "ecdsa_secp224r1_sha3_224_3687", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3687_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3687_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3687_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 333 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3688 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3688_pubkey[] = { 0x00, 0x25, 0x09, 0x4e, 0xa9, 0xe4, 0xce, 0x76, 0xd8, 0xc4, 0x73, 0x56, 0xe4, 0xae, 0x60, 0x4e, 0xb6, 0x46, 0x96, 0x69, 0xb0, 0x16, 0x1f, 0xff, 0x80, 0x5a, 0x76, 0x5f, 0x6f, 0x80, 0x74, 0x30, 0xf1, 0x86, 0xba, 0x63, 0xff, 0xa0, 0xf3, 0x15, 0xbe, 0x72, 0x1e, 0xc4, 0x3b, 0xae, 0xf2, 0x4b, 0x8f, 0xba, 0x10, 0xb0, 0x4f, 0x19, 0x18, 0x9f, }; static const unsigned char ecdsa_secp224r1_sha3_224_3688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3688_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3688 = { .name = "ecdsa_secp224r1_sha3_224_3688", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3688_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3688_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3688_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 334 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3689 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3689_pubkey[] = { 0x75, 0x42, 0x67, 0xd9, 0xf0, 0x90, 0x52, 0x4d, 0x4c, 0x97, 0xbb, 0x1a, 0x56, 0x22, 0xe0, 0xc9, 0xf8, 0x04, 0xdf, 0xd7, 0x0c, 0xc6, 0x8d, 0x98, 0x72, 0xf0, 0xa4, 0xf8, 0x70, 0x8c, 0x24, 0xa4, 0x9b, 0x81, 0x30, 0x7d, 0xb4, 0x58, 0xc0, 0x20, 0xfc, 0x73, 0x74, 0x77, 0x08, 0x58, 0xfa, 0xae, 0xa1, 0xd6, 0xee, 0x37, 0xbf, 0x7b, 0xea, 0xe3, }; static const unsigned char ecdsa_secp224r1_sha3_224_3689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3689_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3689 = { .name = "ecdsa_secp224r1_sha3_224_3689", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3689_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3689_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3689_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 335 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3690 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3690_pubkey[] = { 0x75, 0xa0, 0xd5, 0x29, 0x1f, 0x48, 0xc1, 0x7b, 0x40, 0x29, 0xba, 0xae, 0xa4, 0xd5, 0x79, 0x6b, 0xda, 0x7c, 0x9d, 0x58, 0x02, 0xd5, 0x34, 0xc0, 0xc2, 0x65, 0x79, 0x4a, 0xc9, 0x37, 0x69, 0xdc, 0xaf, 0x79, 0x65, 0xf3, 0xc1, 0x28, 0x64, 0xf5, 0x0c, 0xcb, 0x22, 0xf1, 0x0f, 0x19, 0x3d, 0x5f, 0x0f, 0x7c, 0x33, 0x44, 0x91, 0x31, 0xd2, 0xc4, }; static const unsigned char ecdsa_secp224r1_sha3_224_3690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3690_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3690 = { .name = "ecdsa_secp224r1_sha3_224_3690", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3690_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3690_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3690_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 336 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3691 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3691_pubkey[] = { 0xd3, 0x57, 0x67, 0x4d, 0xa1, 0x66, 0xe0, 0xf4, 0xa0, 0x58, 0x20, 0x3d, 0xf2, 0x3b, 0x8f, 0x8a, 0xda, 0x82, 0x85, 0x80, 0x34, 0x35, 0x5d, 0x23, 0xaf, 0xf5, 0xa8, 0x12, 0xed, 0xf6, 0xd5, 0x26, 0x5e, 0xd4, 0x0b, 0x6d, 0xa2, 0xad, 0xbe, 0x9f, 0x8c, 0xb6, 0x05, 0x0e, 0xbf, 0x61, 0xeb, 0xc0, 0xe5, 0x6a, 0x10, 0xa1, 0xd6, 0xcf, 0x6e, 0x2e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3691_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3691 = { .name = "ecdsa_secp224r1_sha3_224_3691", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3691_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3691_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3691_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 337 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3692 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3692_pubkey[] = { 0x85, 0x67, 0x5f, 0x96, 0x00, 0x9d, 0xdf, 0x74, 0x01, 0x08, 0xf5, 0xbd, 0xb8, 0x25, 0x23, 0xd5, 0x94, 0x14, 0xd3, 0x9b, 0x74, 0xe1, 0x15, 0x70, 0xa6, 0xd0, 0xfa, 0xa3, 0x13, 0xcd, 0x58, 0x41, 0xa8, 0xe2, 0xa3, 0xe3, 0xeb, 0xd0, 0x99, 0xb4, 0x32, 0x05, 0xca, 0x46, 0x66, 0x4a, 0x6e, 0x6c, 0xf1, 0x94, 0x81, 0xe8, 0x55, 0x2f, 0xb4, 0xd8, }; static const unsigned char ecdsa_secp224r1_sha3_224_3692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3692_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3692 = { .name = "ecdsa_secp224r1_sha3_224_3692", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3692_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3692_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3692_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 338 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3693 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3693_pubkey[] = { 0xc1, 0x67, 0x8b, 0xdd, 0xce, 0x5f, 0x00, 0xe4, 0xf4, 0x1e, 0xbc, 0xab, 0x86, 0xf8, 0x01, 0xb4, 0xdc, 0x05, 0x0a, 0x1b, 0x2d, 0xa8, 0xf9, 0x74, 0x7b, 0x5a, 0xbf, 0xc9, 0xf1, 0xcf, 0x0d, 0x67, 0xd9, 0xc9, 0x34, 0x56, 0x98, 0x8a, 0x00, 0x4d, 0xbc, 0xb8, 0xe9, 0x5d, 0x17, 0xdd, 0xe4, 0x07, 0x05, 0x77, 0xe5, 0x1d, 0x88, 0x1d, 0x88, 0x59, }; static const unsigned char ecdsa_secp224r1_sha3_224_3693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3693_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3693 = { .name = "ecdsa_secp224r1_sha3_224_3693", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3693_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3693_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3693_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 339 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3694 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3694_pubkey[] = { 0x09, 0xd2, 0xcf, 0xd5, 0x75, 0x98, 0x6b, 0xfe, 0x1a, 0x74, 0x20, 0xc7, 0xda, 0xbc, 0x04, 0x76, 0xe0, 0xdd, 0x13, 0xe5, 0x4e, 0x01, 0xaa, 0x6f, 0x97, 0xb9, 0xe0, 0x27, 0x46, 0x4b, 0xa5, 0xb8, 0x4c, 0x4d, 0x92, 0xed, 0x9f, 0xdd, 0xd0, 0xbb, 0xcb, 0x23, 0x82, 0xf0, 0xe9, 0xb9, 0xd5, 0xbb, 0x20, 0x1b, 0x2e, 0xa8, 0xeb, 0x8d, 0x3a, 0x50, }; static const unsigned char ecdsa_secp224r1_sha3_224_3694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3694_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3694 = { .name = "ecdsa_secp224r1_sha3_224_3694", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3694_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3694_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3694_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 340 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3695 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3695_pubkey[] = { 0x00, 0x6f, 0xcc, 0x24, 0x43, 0x52, 0x86, 0x9f, 0xeb, 0xdc, 0x74, 0x25, 0x20, 0x4f, 0x7b, 0x29, 0x7c, 0xa8, 0x5d, 0x5b, 0x0d, 0xa8, 0xaa, 0x6f, 0xfe, 0x87, 0x19, 0x80, 0x62, 0xfe, 0xef, 0x58, 0xd8, 0xc5, 0xa8, 0x78, 0xd0, 0x25, 0x5c, 0xd5, 0x47, 0xaf, 0x4f, 0x13, 0x29, 0x06, 0x55, 0x50, 0x17, 0xc3, 0x30, 0x64, 0x8d, 0x5b, 0x1a, 0xe4, }; static const unsigned char ecdsa_secp224r1_sha3_224_3695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3695_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3695 = { .name = "ecdsa_secp224r1_sha3_224_3695", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3695_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3695_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3695_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 341 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3696 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3696_pubkey[] = { 0x01, 0x71, 0xe0, 0x8f, 0x58, 0xfb, 0xf9, 0x81, 0x2a, 0xe3, 0x25, 0x70, 0xc2, 0x10, 0x2e, 0x84, 0x39, 0x68, 0xf5, 0xf3, 0x5c, 0x59, 0x6f, 0xf8, 0x59, 0x1b, 0x03, 0xa6, 0x6c, 0x07, 0xf7, 0x5d, 0x9e, 0xcc, 0x5e, 0x39, 0xdd, 0xa0, 0x90, 0xae, 0x92, 0x15, 0x7e, 0x5d, 0x86, 0xfc, 0xf1, 0xa8, 0xc3, 0x95, 0x49, 0x0a, 0x44, 0x6d, 0xc7, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3696_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3696 = { .name = "ecdsa_secp224r1_sha3_224_3696", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3696_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3696_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3696_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 342 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3697 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3697_pubkey[] = { 0x33, 0x05, 0x86, 0x23, 0x62, 0x57, 0xb3, 0xda, 0xbb, 0x8f, 0xa2, 0x49, 0xfc, 0x6a, 0x65, 0xfe, 0x0f, 0x97, 0xe4, 0xd5, 0x1c, 0x16, 0x20, 0x28, 0xe5, 0x35, 0xb7, 0x4d, 0x20, 0x10, 0x1b, 0xa5, 0xcc, 0x99, 0x67, 0x51, 0x1f, 0x79, 0x4f, 0xa7, 0xc7, 0xf6, 0x11, 0x4d, 0x40, 0xe1, 0x4b, 0x7d, 0xc5, 0x89, 0x14, 0x8b, 0xdb, 0x1c, 0x27, 0x5a, }; static const unsigned char ecdsa_secp224r1_sha3_224_3697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3697_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3697 = { .name = "ecdsa_secp224r1_sha3_224_3697", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3697_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3697_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3697_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 343 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3698 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3698_pubkey[] = { 0x80, 0x44, 0xb7, 0x33, 0x05, 0xe9, 0xf5, 0x90, 0x21, 0xdb, 0xd0, 0xce, 0x46, 0x2d, 0x0d, 0x8a, 0x9b, 0x22, 0xe7, 0x58, 0x87, 0xc5, 0x65, 0x05, 0xc9, 0xc9, 0x4c, 0x2e, 0x62, 0x91, 0xa5, 0xc5, 0x36, 0x4b, 0xad, 0x13, 0x8d, 0x3a, 0xc3, 0xb5, 0x38, 0xf7, 0x7b, 0x26, 0x69, 0x03, 0xbf, 0x71, 0xb6, 0xd4, 0xcc, 0x25, 0xac, 0x0b, 0x6f, 0x12, }; static const unsigned char ecdsa_secp224r1_sha3_224_3698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3698_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3698 = { .name = "ecdsa_secp224r1_sha3_224_3698", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3698_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3698_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3698_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 344 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3699 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3699_pubkey[] = { 0x6f, 0xdb, 0xd4, 0x4d, 0x22, 0x53, 0x2a, 0x88, 0x03, 0x56, 0x8b, 0x51, 0x2f, 0x27, 0xc1, 0x07, 0x57, 0x2a, 0x4f, 0x0e, 0x99, 0xc9, 0x0a, 0xb1, 0x5d, 0x6c, 0x1b, 0xc7, 0x01, 0x4e, 0x59, 0x43, 0xda, 0x51, 0x6a, 0x92, 0xcf, 0x6c, 0xf1, 0xff, 0xb4, 0xf8, 0x59, 0xbc, 0x93, 0xe5, 0xa8, 0xdd, 0x9f, 0x9b, 0x19, 0x06, 0xd6, 0x9a, 0xcd, 0x92, }; static const unsigned char ecdsa_secp224r1_sha3_224_3699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3699_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3699 = { .name = "ecdsa_secp224r1_sha3_224_3699", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3699_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3699_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3699_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3700 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3700_pubkey[] = { 0x1b, 0x9a, 0x83, 0x8b, 0x88, 0x99, 0xa5, 0xc7, 0xb9, 0xd9, 0x82, 0xbc, 0xc0, 0x80, 0x78, 0x75, 0x21, 0xd8, 0x33, 0x4f, 0xdb, 0xd2, 0xbb, 0x54, 0x4a, 0xb1, 0x0f, 0x46, 0x76, 0x54, 0x8c, 0x21, 0xfd, 0x01, 0x28, 0x75, 0xc5, 0x36, 0x4e, 0x15, 0x52, 0xa0, 0x3a, 0x1e, 0xa2, 0x37, 0xa2, 0xf1, 0xad, 0xaf, 0xe6, 0x27, 0x94, 0x19, 0x87, 0x7d, }; static const unsigned char ecdsa_secp224r1_sha3_224_3700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3700_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3700 = { .name = "ecdsa_secp224r1_sha3_224_3700", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3700_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3700_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3700_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 346 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3701 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3701_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3701_sig[] = { 0x0e, 0x77, 0xef, 0xeb, 0xda, 0xc8, 0x3c, 0x01, 0xdc, 0xe3, 0xf8, 0xc4, 0x16, 0x2e, 0x28, 0x6b, 0x38, 0xb7, 0xe2, 0x3d, 0xe8, 0x36, 0x37, 0xa7, 0x25, 0x31, 0xea, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3701 = { .name = "ecdsa_secp224r1_sha3_224_3701", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3701_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3701_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3701_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 347 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3702 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3702_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_224_3702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3702_sig[] = { 0xf1, 0x88, 0x10, 0x14, 0x25, 0x37, 0xc3, 0xfe, 0x23, 0x1c, 0x07, 0x3b, 0xe9, 0xd0, 0xee, 0x37, 0xa8, 0x01, 0x0e, 0x00, 0x2b, 0xa6, 0xf1, 0x9e, 0x37, 0x2a, 0x3f, 0x86, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3702 = { .name = "ecdsa_secp224r1_sha3_224_3702", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3702_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3702_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3702_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 348 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3703 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3703_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3703_sig[] = { 0x0e, 0x77, 0xef, 0xeb, 0xda, 0xc8, 0x3c, 0x01, 0xdc, 0xe3, 0xf8, 0xc4, 0x16, 0x2e, 0x28, 0x6b, 0x38, 0xb7, 0xe2, 0x3d, 0xe8, 0x36, 0x37, 0xa7, 0x25, 0x31, 0xea, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3703 = { .name = "ecdsa_secp224r1_sha3_224_3703", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3703_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3703_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3703_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 349 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3704 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3704_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3704_sig[] = { 0xf1, 0x88, 0x10, 0x14, 0x25, 0x37, 0xc3, 0xfe, 0x23, 0x1c, 0x07, 0x3b, 0xe9, 0xd0, 0xee, 0x37, 0xa8, 0x01, 0x0e, 0x00, 0x2b, 0xa6, 0xf1, 0x9e, 0x37, 0x2a, 0x3f, 0x86, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3704 = { .name = "ecdsa_secp224r1_sha3_224_3704", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3704_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3704_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3704_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 350 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3705 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3705_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_224_3705_sig[] = { 0x47, 0x4b, 0x08, 0x6c, 0xf4, 0x75, 0x4c, 0x27, 0x0d, 0x20, 0xf8, 0x8b, 0xe5, 0x69, 0xb7, 0xd7, 0xb6, 0xeb, 0x6e, 0x55, 0xde, 0x6c, 0xe2, 0x13, 0x82, 0x16, 0x0e, 0x81, 0x60, 0x69, 0x2f, 0xdb, 0x35, 0xb4, 0xcb, 0x82, 0x4a, 0x27, 0x29, 0xfb, 0x17, 0x5f, 0x70, 0x9d, 0x06, 0xbc, 0x9f, 0x4e, 0x8b, 0xbb, 0x4b, 0x10, 0x58, 0xc5, 0x37, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3705 = { .name = "ecdsa_secp224r1_sha3_224_3705", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3705_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha3_224_3705_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 351 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3706 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3706_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_224_3706_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha3_224_3706_sig[] = { 0xdd, 0xe3, 0x59, 0xfe, 0x51, 0xa6, 0xd8, 0xca, 0x9a, 0xec, 0x41, 0xe3, 0x37, 0x6b, 0xd3, 0xe9, 0xff, 0xf8, 0xa4, 0x1a, 0x3e, 0x44, 0xa6, 0x4d, 0xb8, 0x1d, 0x63, 0x26, 0xa1, 0xc2, 0x9d, 0x57, 0x73, 0x09, 0xf7, 0x13, 0x5b, 0x68, 0x8b, 0x19, 0x90, 0x43, 0x3f, 0xb4, 0x5c, 0x5d, 0xc1, 0x7a, 0x02, 0x15, 0x57, 0x27, 0x2c, 0x12, 0x56, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3706 = { .name = "ecdsa_secp224r1_sha3_224_3706", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3706_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3706_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha3_224_3706_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 352 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3707 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3707_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_224_3707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_224_3707_sig[] = { 0x0c, 0xdc, 0x4a, 0x54, 0xa0, 0x91, 0xe6, 0x1e, 0x0f, 0x76, 0x4d, 0xdb, 0x12, 0xff, 0xb2, 0x43, 0xf4, 0x57, 0xad, 0x57, 0x1a, 0x8a, 0xe7, 0x99, 0x9c, 0xaa, 0x0f, 0x06, 0xd5, 0xcd, 0xd5, 0x24, 0xf2, 0x09, 0x2b, 0xcb, 0xe2, 0xfc, 0x7c, 0x32, 0x8b, 0x08, 0x76, 0xd4, 0x36, 0xd9, 0x19, 0x00, 0x58, 0x70, 0x0a, 0xf3, 0x70, 0xda, 0xb0, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3707 = { .name = "ecdsa_secp224r1_sha3_224_3707", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3707_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3707_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_224_3707_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 353 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3708 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3708_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_224_3708_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_224_3708_sig[] = { 0x6e, 0xfa, 0x32, 0x45, 0x7e, 0x09, 0xb8, 0xab, 0xe2, 0x21, 0x68, 0x50, 0x1b, 0xc4, 0xae, 0x05, 0x1d, 0x22, 0x94, 0x67, 0x41, 0x14, 0xa9, 0xdc, 0xa9, 0x4c, 0x51, 0xae, 0x31, 0x73, 0xb6, 0x52, 0xc7, 0x83, 0x24, 0xb8, 0x77, 0xdc, 0x5b, 0xdf, 0xe8, 0x03, 0x24, 0xae, 0xb0, 0x1b, 0x17, 0x1f, 0xd2, 0x62, 0x61, 0x24, 0xa4, 0x4f, 0x0b, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3708 = { .name = "ecdsa_secp224r1_sha3_224_3708", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3708_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3708_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha3_224_3708_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 354 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3709 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3709_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_224_3709_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3709_sig[] = { 0x41, 0xa3, 0xe0, 0x37, 0x0c, 0xf8, 0x14, 0x8b, 0xcc, 0xbd, 0xd0, 0x3a, 0x7e, 0x76, 0x3d, 0x38, 0x26, 0x95, 0x26, 0x3d, 0xa1, 0x1b, 0x94, 0x70, 0xb0, 0xe1, 0x03, 0xd6, 0x87, 0xa6, 0x12, 0x99, 0x0d, 0x0a, 0x4a, 0x9f, 0x81, 0x1e, 0x20, 0xac, 0x52, 0x0a, 0x34, 0x76, 0xd9, 0x18, 0x48, 0x44, 0x4c, 0xcc, 0xc4, 0xc8, 0x13, 0x8a, 0xd5, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3709 = { .name = "ecdsa_secp224r1_sha3_224_3709", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3709_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3709_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3709_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 355 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3710 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3710_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_224_3710_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3710_sig[] = { 0x6f, 0x13, 0x85, 0x12, 0xbf, 0x05, 0xad, 0xdb, 0xb5, 0x36, 0xb9, 0x76, 0xb9, 0x12, 0x5e, 0x12, 0x28, 0xf4, 0x3f, 0x32, 0xf7, 0x66, 0x32, 0x5d, 0x1c, 0x27, 0x0e, 0x16, 0x55, 0x62, 0x05, 0x46, 0x4f, 0xf6, 0x5c, 0x9a, 0x5d, 0x4d, 0x94, 0x75, 0x16, 0x70, 0x59, 0x86, 0x38, 0x35, 0x64, 0x4b, 0x06, 0x86, 0x2f, 0x1b, 0x49, 0xcc, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3710 = { .name = "ecdsa_secp224r1_sha3_224_3710", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3710_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3710_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3710_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 356 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3711 for ECDSA, tcId is 357 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3711_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_224_3711_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3711_sig[] = { 0x84, 0x0d, 0xcc, 0xce, 0x17, 0x60, 0xf4, 0x76, 0x24, 0x0b, 0x51, 0x6d, 0x5c, 0xfb, 0xf9, 0xa1, 0x0f, 0xbd, 0x44, 0xb2, 0x5c, 0x68, 0xfd, 0x69, 0xa9, 0x6f, 0x67, 0xa3, 0xb7, 0x98, 0x84, 0xb6, 0x49, 0x5a, 0x1c, 0x65, 0xf0, 0x78, 0x53, 0xfc, 0x5d, 0x56, 0xac, 0x06, 0xb8, 0x43, 0x66, 0xbd, 0xdb, 0x3d, 0xdf, 0x56, 0xb0, 0xfc, 0x93, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3711 = { .name = "ecdsa_secp224r1_sha3_224_3711", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3711_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3711_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3711_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 357 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3712 for ECDSA, tcId is 358 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3712_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3712_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3712_sig[] = { 0x94, 0x9e, 0x76, 0xe0, 0xe3, 0x5b, 0xe5, 0xa0, 0x8f, 0xcb, 0x60, 0xd8, 0xf8, 0x6e, 0xcb, 0x0c, 0x65, 0x0f, 0xc9, 0xb3, 0x7e, 0xcd, 0x61, 0xa0, 0x59, 0x64, 0x93, 0x15, 0xcd, 0x87, 0x09, 0x03, 0xfc, 0x14, 0x37, 0xd5, 0x9e, 0x43, 0xea, 0xde, 0x13, 0x9a, 0xa8, 0xeb, 0x71, 0x70, 0x39, 0xd2, 0xe8, 0xd3, 0x28, 0x2f, 0x27, 0xd4, 0x84, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3712 = { .name = "ecdsa_secp224r1_sha3_224_3712", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3712_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3712_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3712_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 358 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3713 for ECDSA, tcId is 359 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3713_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3713_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3713_sig[] = { 0xa6, 0x36, 0x4e, 0x1e, 0x4d, 0xd4, 0x13, 0x27, 0xb4, 0xf8, 0x8a, 0x99, 0x98, 0x41, 0x2b, 0xf1, 0x68, 0x55, 0x1a, 0xcc, 0x56, 0x13, 0x57, 0xd2, 0xbb, 0xfd, 0x2a, 0xaf, 0xf5, 0xe4, 0x8c, 0xed, 0x76, 0x65, 0x5e, 0xb7, 0x29, 0xf4, 0x37, 0x1d, 0x20, 0xf5, 0xd4, 0xec, 0x53, 0xa2, 0x38, 0x44, 0x31, 0x34, 0x23, 0x06, 0x3b, 0xb8, 0x5f, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3713 = { .name = "ecdsa_secp224r1_sha3_224_3713", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3713_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3713_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3713_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 359 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3714 for ECDSA, tcId is 360 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3714_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_224_3714_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3714_sig[] = { 0xf5, 0x72, 0xbd, 0x06, 0x9f, 0xfe, 0xf7, 0x26, 0x22, 0x2d, 0xb0, 0x33, 0x66, 0x42, 0x05, 0x22, 0x0b, 0xf6, 0x94, 0xf3, 0x74, 0x28, 0x2c, 0x79, 0x59, 0x59, 0x94, 0x5f, 0xca, 0x94, 0x2e, 0xf4, 0xfd, 0x6b, 0xec, 0xd3, 0xbc, 0x4c, 0x32, 0x80, 0xca, 0x29, 0xb8, 0x4c, 0x8d, 0x29, 0x55, 0x5d, 0xda, 0x40, 0x2a, 0x50, 0xaf, 0x1d, 0x76, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3714 = { .name = "ecdsa_secp224r1_sha3_224_3714", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3714_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3714_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3714_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 360 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3715 for ECDSA, tcId is 361 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3715_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_224_3715_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3715_sig[] = { 0xe8, 0xb2, 0x94, 0x01, 0xb2, 0x26, 0x88, 0x77, 0x6f, 0x8b, 0x24, 0x95, 0x1f, 0x23, 0x98, 0x93, 0xe1, 0x2d, 0x82, 0x28, 0x68, 0xdb, 0xbe, 0x1f, 0x6b, 0xc8, 0x60, 0xee, 0xbf, 0xef, 0xb3, 0x64, 0x18, 0x75, 0xaa, 0x10, 0xc3, 0xe8, 0x46, 0x86, 0x65, 0x07, 0x16, 0x58, 0xd0, 0xab, 0x31, 0x2c, 0xdf, 0x8f, 0x9a, 0x66, 0x9b, 0xd8, 0x2a, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3715 = { .name = "ecdsa_secp224r1_sha3_224_3715", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3715_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3715_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3715_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 361 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3716 for ECDSA, tcId is 362 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3716_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_224_3716_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3716_sig[] = { 0x29, 0x1d, 0x8c, 0xc8, 0x1f, 0x71, 0x5f, 0xd5, 0x2a, 0x74, 0x16, 0x89, 0x46, 0xed, 0x2b, 0xf2, 0xd6, 0x92, 0xda, 0xe0, 0x95, 0x52, 0x49, 0xe4, 0xcd, 0xad, 0x32, 0x09, 0xef, 0x56, 0xa6, 0x9e, 0xbd, 0x78, 0x12, 0x5a, 0x4c, 0xa1, 0x2b, 0xda, 0xcd, 0x19, 0x3e, 0x21, 0x11, 0xa3, 0x51, 0x58, 0xd5, 0xd7, 0x8b, 0x5d, 0x30, 0x46, 0x0a, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3716 = { .name = "ecdsa_secp224r1_sha3_224_3716", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3716_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3716_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3716_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 362 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3717 for ECDSA, tcId is 363 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3717_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_224_3717_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3717_sig[] = { 0xf5, 0x12, 0x3a, 0x9f, 0x92, 0x12, 0xf6, 0x4b, 0x8c, 0x60, 0x7c, 0xfd, 0x5b, 0x04, 0x18, 0xf3, 0x69, 0x4c, 0xe5, 0xef, 0x4d, 0x16, 0x11, 0x86, 0xaf, 0xac, 0x7d, 0x30, 0x44, 0xc4, 0xb5, 0xd7, 0x64, 0x7d, 0xfc, 0x1e, 0xd1, 0x0f, 0x1d, 0x8d, 0x92, 0x83, 0xd4, 0xbc, 0xa6, 0x96, 0x1a, 0x4e, 0xa7, 0x8c, 0xf1, 0xca, 0xd6, 0x32, 0xf9, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3717 = { .name = "ecdsa_secp224r1_sha3_224_3717", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3717_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3717_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3717_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 363 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3718 for ECDSA, tcId is 364 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3718_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3718_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3718_sig[] = { 0x61, 0x19, 0xc7, 0x2d, 0x6d, 0x5f, 0xe7, 0x2d, 0x18, 0x16, 0x14, 0xd3, 0xd4, 0x0b, 0x36, 0xee, 0xc7, 0x56, 0xca, 0x7d, 0x9e, 0x4f, 0x2a, 0xb3, 0x09, 0x5d, 0x52, 0xa4, 0xfb, 0xba, 0xf5, 0xbb, 0x4a, 0x97, 0xb6, 0x09, 0x67, 0x92, 0xf1, 0x7f, 0x95, 0xb1, 0x16, 0xa6, 0x45, 0xfe, 0x1c, 0x62, 0xfa, 0x1d, 0x83, 0xe9, 0x69, 0xc0, 0xe8, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3718 = { .name = "ecdsa_secp224r1_sha3_224_3718", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3718_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3718_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3718_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 364 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3719 for ECDSA, tcId is 365 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3719_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3719_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3719_sig[] = { 0x8c, 0x3d, 0x67, 0x5a, 0x75, 0x9d, 0x30, 0xb8, 0xaf, 0xcb, 0xee, 0x3f, 0x37, 0x74, 0x6c, 0x22, 0x6e, 0xb9, 0x92, 0x17, 0x7f, 0x8d, 0x76, 0xf1, 0x62, 0xd4, 0x09, 0x3e, 0x64, 0x33, 0x22, 0xd3, 0xf3, 0x7b, 0xa5, 0x32, 0xe7, 0xe5, 0xf0, 0xf0, 0xc1, 0x4b, 0x69, 0x1a, 0x36, 0x78, 0x07, 0x5c, 0x03, 0x28, 0x12, 0x03, 0xeb, 0x52, 0x97, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3719 = { .name = "ecdsa_secp224r1_sha3_224_3719", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3719_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3719_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3719_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 365 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3720 for ECDSA, tcId is 366 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3720_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_224_3720_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3720_sig[] = { 0xe1, 0xf7, 0xac, 0xc9, 0x6f, 0xd3, 0xea, 0xfc, 0x29, 0x99, 0x11, 0x65, 0x22, 0x3b, 0x0b, 0x89, 0x9c, 0x2b, 0x04, 0xcc, 0x23, 0x93, 0x72, 0xee, 0xf4, 0xd0, 0x60, 0xa5, 0x2a, 0x0b, 0x6f, 0x21, 0x4f, 0xa1, 0x97, 0xcf, 0xbe, 0x83, 0x4a, 0x4f, 0x80, 0xa7, 0x4d, 0xe9, 0x74, 0x8e, 0x62, 0xf2, 0xa8, 0x94, 0x21, 0x4f, 0xe9, 0x2b, 0xde, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3720 = { .name = "ecdsa_secp224r1_sha3_224_3720", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3720_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3720_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3720_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 366 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3721 for ECDSA, tcId is 367 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3721_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3721_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3721_sig[] = { 0xab, 0x49, 0xa9, 0x26, 0x49, 0xa5, 0xb9, 0x5b, 0xee, 0x1a, 0x0e, 0x4d, 0xd8, 0x97, 0xd5, 0xf5, 0xaa, 0xe7, 0x58, 0x1f, 0xaa, 0x41, 0x67, 0x3a, 0xd4, 0xd1, 0x8e, 0xb6, 0x5d, 0xf9, 0xe1, 0xa6, 0x5a, 0xd7, 0x2a, 0x88, 0xf5, 0x8b, 0x0b, 0x71, 0x1e, 0x16, 0x2c, 0x6d, 0xe1, 0x69, 0xad, 0xe7, 0x10, 0x6c, 0x01, 0x57, 0x14, 0x86, 0xc7, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3721 = { .name = "ecdsa_secp224r1_sha3_224_3721", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3721_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3721_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3721_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 367 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3722 for ECDSA, tcId is 368 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3722_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3722_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3722_sig[] = { 0xb3, 0xed, 0xcc, 0x31, 0x6d, 0xd5, 0xcb, 0xe6, 0xcd, 0x00, 0x54, 0xe4, 0x8b, 0xc1, 0xa7, 0x7e, 0x55, 0xcc, 0x4c, 0xf3, 0xdd, 0xdb, 0xf5, 0x52, 0xff, 0xc4, 0xe9, 0x29, 0xcf, 0x4d, 0xe6, 0x54, 0x98, 0x0e, 0x88, 0xf7, 0x90, 0x81, 0x09, 0xc5, 0xf6, 0x37, 0x11, 0x3c, 0xb0, 0x3b, 0xdf, 0x8b, 0xa5, 0x44, 0x3d, 0xda, 0x85, 0x2e, 0x63, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3722 = { .name = "ecdsa_secp224r1_sha3_224_3722", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3722_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3722_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3722_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 368 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3723 for ECDSA, tcId is 369 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3723_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_224_3723_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3723_sig[] = { 0x32, 0x53, 0x8b, 0x93, 0xb7, 0x1e, 0x7e, 0xa2, 0xb3, 0xce, 0xf6, 0x02, 0x72, 0x71, 0xe0, 0x03, 0x7b, 0x84, 0xf3, 0x81, 0x8a, 0x07, 0x27, 0xac, 0xca, 0xae, 0xa6, 0xd9, 0xe6, 0x22, 0x50, 0x61, 0xa7, 0xd7, 0x6b, 0x93, 0xc6, 0x56, 0x2d, 0xe3, 0x1d, 0x50, 0x60, 0x84, 0x44, 0xa5, 0x33, 0xbb, 0x58, 0x53, 0xb8, 0xab, 0x94, 0x16, 0x0f, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3723 = { .name = "ecdsa_secp224r1_sha3_224_3723", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3723_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3723_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3723_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 369 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3724 for ECDSA, tcId is 370 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3724_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_224_3724_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3724_sig[] = { 0x84, 0x6e, 0x6b, 0x4a, 0xe0, 0x59, 0xcf, 0x67, 0x3a, 0xc2, 0xf4, 0x24, 0xc0, 0x7b, 0xe6, 0xb6, 0x44, 0x56, 0x55, 0x4e, 0xff, 0xd1, 0x4d, 0x4a, 0x0a, 0x85, 0xd5, 0xd1, 0xc6, 0x73, 0x53, 0xe8, 0x5f, 0xdf, 0xb4, 0x21, 0xfb, 0x3a, 0xbb, 0x01, 0x4f, 0x1d, 0x3d, 0x21, 0xa8, 0xb7, 0x44, 0xba, 0x14, 0x6e, 0x47, 0x09, 0xe7, 0x22, 0xa5, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3724 = { .name = "ecdsa_secp224r1_sha3_224_3724", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3724_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3724_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3724_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 370 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3725 for ECDSA, tcId is 371 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3725_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_224_3725_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3725_sig[] = { 0x95, 0x07, 0x3b, 0xb8, 0x24, 0x19, 0x60, 0x16, 0x09, 0x24, 0x13, 0x63, 0x1d, 0xd4, 0x20, 0x8a, 0x57, 0x17, 0x44, 0xd0, 0x03, 0x0d, 0xd5, 0x43, 0x52, 0x61, 0x19, 0x21, 0x10, 0x0e, 0xf7, 0xac, 0x96, 0x09, 0x37, 0xe7, 0x40, 0xf8, 0x68, 0xbf, 0x9b, 0x37, 0xc6, 0x84, 0x53, 0x17, 0xab, 0x18, 0x65, 0xce, 0x13, 0x88, 0x1c, 0xe5, 0x15, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3725 = { .name = "ecdsa_secp224r1_sha3_224_3725", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3725_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3725_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3725_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 371 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3726 for ECDSA, tcId is 372 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3726_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_224_3726_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3726_sig[] = { 0x31, 0x86, 0xa9, 0x2a, 0xa7, 0x60, 0x96, 0x09, 0x96, 0xae, 0xa1, 0x3f, 0x31, 0x37, 0xac, 0xf0, 0x0b, 0x82, 0xb2, 0xb2, 0x03, 0x6e, 0x60, 0x7e, 0xc9, 0xc4, 0x4b, 0x67, 0x18, 0x35, 0x94, 0x4e, 0x96, 0xb6, 0xca, 0x1f, 0x44, 0x5c, 0xf3, 0x35, 0x0f, 0x10, 0x5a, 0x97, 0xa3, 0x72, 0x52, 0xf8, 0x5c, 0xf6, 0xd8, 0xe6, 0x28, 0xc9, 0x6a, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3726 = { .name = "ecdsa_secp224r1_sha3_224_3726", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3726_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3726_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3726_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 372 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3727 for ECDSA, tcId is 373 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3727_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_224_3727_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3727_sig[] = { 0xcd, 0xb4, 0x3f, 0x06, 0x3e, 0xd3, 0xce, 0x20, 0xf9, 0x4e, 0x45, 0x3d, 0x40, 0xe9, 0xd7, 0xde, 0x39, 0x93, 0x69, 0x06, 0x48, 0x41, 0x14, 0xc3, 0x07, 0x07, 0x8e, 0x22, 0x26, 0xd2, 0x43, 0x6f, 0x2f, 0x66, 0xa9, 0x54, 0x01, 0x0e, 0x58, 0x0b, 0x95, 0xe2, 0x1a, 0x17, 0x4a, 0x4b, 0x66, 0x7a, 0xa8, 0x24, 0x9f, 0x26, 0x76, 0xfe, 0x1b, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3727 = { .name = "ecdsa_secp224r1_sha3_224_3727", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3727_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3727_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3727_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 373 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3728 for ECDSA, tcId is 374 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3728_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_224_3728_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3728_sig[] = { 0xb2, 0x9a, 0x2b, 0xfe, 0x9f, 0xab, 0x39, 0x4b, 0x34, 0x55, 0x04, 0x83, 0xf3, 0xcc, 0x81, 0x1d, 0x9b, 0x86, 0x34, 0x5f, 0x6f, 0x8e, 0x35, 0xd6, 0xa6, 0xbb, 0x0b, 0x34, 0x26, 0x12, 0x0e, 0xa0, 0x6b, 0x19, 0x10, 0xc4, 0x4b, 0xc3, 0x70, 0xcd, 0x04, 0x79, 0xc6, 0xad, 0xdc, 0x5b, 0xce, 0x89, 0x6c, 0x4a, 0x60, 0x68, 0x10, 0x19, 0x4e, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3728 = { .name = "ecdsa_secp224r1_sha3_224_3728", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3728_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3728_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3728_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 374 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3729 for ECDSA, tcId is 375 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3729_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_224_3729_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3729_sig[] = { 0xac, 0x24, 0x7d, 0xff, 0x26, 0x01, 0x61, 0x09, 0xd2, 0x82, 0x00, 0x50, 0x52, 0x70, 0xcf, 0x2d, 0x2c, 0x2b, 0x06, 0x06, 0x7b, 0xd5, 0xd3, 0x30, 0xa1, 0xc2, 0xa4, 0x1a, 0x91, 0x0a, 0x8d, 0x69, 0xda, 0x5d, 0x6a, 0x50, 0x8c, 0x88, 0xaa, 0xd4, 0xf0, 0x91, 0xed, 0x5b, 0x52, 0x86, 0xd0, 0x29, 0xc1, 0x09, 0x5f, 0xc5, 0x7a, 0xf2, 0xa1, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3729 = { .name = "ecdsa_secp224r1_sha3_224_3729", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3729_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3729_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3729_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 375 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3730 for ECDSA, tcId is 376 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3730_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3730_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3730_sig[] = { 0xbf, 0xdb, 0xfc, 0xd3, 0xbe, 0xe9, 0x80, 0x3c, 0x50, 0x60, 0xdb, 0xc6, 0x9d, 0x67, 0x49, 0xfb, 0x5e, 0x4d, 0xc4, 0x0a, 0x1c, 0x00, 0x00, 0x2e, 0x0d, 0x23, 0x53, 0x54, 0xa8, 0x4a, 0x6f, 0xf4, 0xc2, 0xef, 0x80, 0xc0, 0x74, 0xc8, 0xa8, 0xa9, 0x30, 0x5e, 0x79, 0xe0, 0xe7, 0x53, 0x21, 0xb9, 0xaf, 0xab, 0x93, 0x48, 0xc0, 0x2a, 0x7e, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3730 = { .name = "ecdsa_secp224r1_sha3_224_3730", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3730_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3730_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3730_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 376 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3731 for ECDSA, tcId is 377 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3731_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3731_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3731_sig[] = { 0x20, 0xfd, 0x72, 0xeb, 0x73, 0xed, 0xda, 0x9c, 0xb0, 0xac, 0xa2, 0x47, 0x3c, 0x5c, 0x58, 0x2c, 0x78, 0x31, 0x8b, 0x07, 0x05, 0xa9, 0xa6, 0xd7, 0x18, 0x0a, 0xc7, 0x67, 0xb0, 0x7a, 0x3e, 0x77, 0x3f, 0xa2, 0x8f, 0x51, 0x32, 0x02, 0xb6, 0x99, 0x03, 0xb5, 0xcc, 0x65, 0xf2, 0xb4, 0xf7, 0x71, 0x4b, 0x5b, 0x28, 0xc8, 0x3b, 0x52, 0xbe, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3731 = { .name = "ecdsa_secp224r1_sha3_224_3731", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3731_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3731_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3731_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 377 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3732 for ECDSA, tcId is 378 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3732_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_224_3732_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3732_sig[] = { 0x86, 0xaa, 0x1e, 0xba, 0x72, 0xa1, 0xac, 0xa7, 0xdd, 0x83, 0xcb, 0x2c, 0x26, 0x59, 0x24, 0x1d, 0x12, 0xfd, 0x8a, 0xc1, 0x7c, 0xbd, 0x79, 0x8c, 0xc4, 0x4a, 0xfa, 0xbb, 0x66, 0xe0, 0xa6, 0x6a, 0x78, 0xc6, 0xc3, 0x1c, 0xe9, 0x9e, 0x45, 0x16, 0x2a, 0x0b, 0x47, 0x57, 0xde, 0xff, 0x5e, 0xd8, 0x0b, 0xe8, 0x34, 0x82, 0x83, 0xf1, 0xb7, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3732 = { .name = "ecdsa_secp224r1_sha3_224_3732", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3732_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3732_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3732_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 378 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3733 for ECDSA, tcId is 379 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3733_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_224_3733_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3733_sig[] = { 0x01, 0xcf, 0xaa, 0x7c, 0xca, 0xe0, 0x52, 0x2b, 0x53, 0x63, 0xb4, 0x8a, 0xb1, 0xfa, 0x5e, 0x0e, 0x10, 0x26, 0x66, 0xf2, 0xac, 0x52, 0x18, 0xc5, 0xb3, 0x25, 0x23, 0xd3, 0xa6, 0x14, 0x91, 0xde, 0x2a, 0x4a, 0x05, 0xbd, 0xa0, 0xbf, 0x27, 0x69, 0x45, 0x3f, 0xaa, 0x84, 0x54, 0x51, 0x20, 0x7c, 0x4d, 0xd3, 0xa9, 0x5a, 0xab, 0x16, 0x9b, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3733 = { .name = "ecdsa_secp224r1_sha3_224_3733", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3733_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3733_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3733_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 379 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3734 for ECDSA, tcId is 380 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3734_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_224_3734_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3734_sig[] = { 0x50, 0x0c, 0x9d, 0x08, 0xa0, 0xab, 0x52, 0xd3, 0x5f, 0xe5, 0xcf, 0x9d, 0x4e, 0xdd, 0xea, 0x0e, 0xb8, 0xcc, 0x00, 0xe8, 0xe8, 0xdb, 0x0a, 0x29, 0xa5, 0x12, 0xde, 0x10, 0x48, 0x2d, 0x0f, 0x78, 0xf2, 0x80, 0x8e, 0x83, 0xf1, 0x0b, 0xee, 0x9f, 0xad, 0x61, 0xf4, 0xbd, 0xba, 0x83, 0xab, 0x9a, 0x4f, 0x7d, 0x71, 0xc9, 0xb7, 0x08, 0x3e, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3734 = { .name = "ecdsa_secp224r1_sha3_224_3734", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3734_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3734_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3734_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 380 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3735 for ECDSA, tcId is 381 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3735_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_224_3735_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3735_sig[] = { 0x75, 0xbf, 0x80, 0xb0, 0x60, 0xff, 0x12, 0x3c, 0x0e, 0x52, 0x5c, 0x98, 0xca, 0x74, 0xfa, 0x82, 0xd7, 0x16, 0xa0, 0x9c, 0x21, 0xd6, 0x7a, 0xcc, 0xd3, 0x4a, 0x60, 0xbc, 0xed, 0xa7, 0xa9, 0x64, 0x45, 0x63, 0xa3, 0x49, 0xff, 0x3a, 0x24, 0x83, 0xb6, 0xe7, 0x56, 0x3f, 0x0a, 0xa4, 0xc4, 0xd3, 0x19, 0x55, 0x1c, 0xa0, 0xc3, 0xbd, 0x1f, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3735 = { .name = "ecdsa_secp224r1_sha3_224_3735", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3735_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3735_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3735_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 381 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3736 for ECDSA, tcId is 382 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3736_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_224_3736_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3736_sig[] = { 0x3e, 0xf8, 0x32, 0x67, 0x9f, 0x62, 0x77, 0xb9, 0x01, 0xb6, 0xa9, 0x86, 0x83, 0x3d, 0x03, 0xe4, 0xb5, 0x74, 0xd2, 0x3f, 0xd7, 0x3e, 0xdf, 0xd9, 0x36, 0x68, 0x97, 0x61, 0xe8, 0x2a, 0xf0, 0x5e, 0xba, 0xfe, 0x22, 0xcc, 0xd3, 0x84, 0x33, 0x6c, 0x95, 0x30, 0x73, 0x80, 0x36, 0xd9, 0x9f, 0x17, 0xb6, 0x2e, 0xf3, 0xdf, 0xc4, 0xe0, 0x94, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3736 = { .name = "ecdsa_secp224r1_sha3_224_3736", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3736_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3736_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3736_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 382 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3737 for ECDSA, tcId is 383 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3737_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_224_3737_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3737_sig[] = { 0x95, 0x04, 0xb6, 0x24, 0xb1, 0x16, 0xa2, 0xc2, 0x8e, 0xfa, 0x03, 0x7e, 0x35, 0x58, 0x1c, 0x71, 0xb2, 0xe7, 0xd0, 0x1f, 0x30, 0xd8, 0xf6, 0x89, 0x46, 0xc1, 0x3e, 0x88, 0x80, 0x82, 0x63, 0x93, 0x74, 0xa8, 0xd5, 0xe0, 0x67, 0xa6, 0xdf, 0x09, 0xd6, 0xdf, 0x11, 0xa9, 0x72, 0x96, 0x7a, 0x08, 0x1a, 0x53, 0x07, 0xa3, 0xb7, 0xf1, 0x78, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3737 = { .name = "ecdsa_secp224r1_sha3_224_3737", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3737_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3737_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3737_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 383 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3738 for ECDSA, tcId is 384 in file ecdsa_secp224r1_sha3_224_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) static const unsigned char ecdsa_secp224r1_sha3_224_3738_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_224_3738_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_224_3738_sig[] = { 0x2e, 0xb5, 0xdb, 0x8a, 0x9e, 0x1c, 0x82, 0xed, 0x4c, 0xe6, 0x43, 0xc9, 0x53, 0xc9, 0xf1, 0x1c, 0x3d, 0xe2, 0x64, 0xef, 0x92, 0xd7, 0x60, 0x7c, 0x91, 0xdb, 0xce, 0x76, 0xb6, 0xa9, 0x7c, 0x94, 0x3a, 0xa7, 0xa6, 0x2b, 0x57, 0x83, 0x78, 0x63, 0x56, 0xf7, 0xb7, 0x5b, 0x36, 0xb8, 0x83, 0x56, 0xeb, 0x62, 0xd5, 0xa3, 0xd1, 0x5a, 0x70, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_224_3738 = { .name = "ecdsa_secp224r1_sha3_224_3738", .sig_alg = ECDSA, .hash = SHA3_224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_224_3738_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_224_3738_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_224_3738_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 384 in file ecdsa_secp224r1_sha3_224_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) */ /* Test 3739 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3739_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3739_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x2f, 0x39, 0x64, 0x42, 0x93, 0x2c, 0xb8, 0x0e, 0x2c, 0xca, 0x33, 0x81, 0xeb, 0xf0, 0xd9, 0x75, 0xf3, 0x3f, 0x6d, 0x7b, 0x77, 0xda, 0x96, 0xae, 0xfb, 0xa1, 0x21, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3739 = { .name = "ecdsa_secp224r1_sha3_256_3739", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3739_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3739_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3739_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3740 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3740_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3740_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3740 = { .name = "ecdsa_secp224r1_sha3_256_3740", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3740_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3740_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3740_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3741 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3741_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3741_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3741 = { .name = "ecdsa_secp224r1_sha3_256_3741", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3741_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3741_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3741_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3742 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3742_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3742_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3742 = { .name = "ecdsa_secp224r1_sha3_256_3742", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3742_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3742_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3742_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3743 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3743_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3743_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3743 = { .name = "ecdsa_secp224r1_sha3_256_3743", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3743_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3743_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3743_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3744 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3744_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3744_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3744 = { .name = "ecdsa_secp224r1_sha3_256_3744", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3744_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3744_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3744_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3745 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3745_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3745_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3745 = { .name = "ecdsa_secp224r1_sha3_256_3745", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3745_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3745_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3745_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3746 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3746_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3746_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3746 = { .name = "ecdsa_secp224r1_sha3_256_3746", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3746_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3746_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3746_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3747 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3747_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3747_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3747 = { .name = "ecdsa_secp224r1_sha3_256_3747", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3747_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3747_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3747_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3748 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3748_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3748_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3748 = { .name = "ecdsa_secp224r1_sha3_256_3748", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3748_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3748_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3748_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3749 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3749_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3749_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x00, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3749 = { .name = "ecdsa_secp224r1_sha3_256_3749", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3749_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3749_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3749_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3750 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3750_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3750_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3750 = { .name = "ecdsa_secp224r1_sha3_256_3750", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3750_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3750_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3750_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3751 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3751_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3751_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3751 = { .name = "ecdsa_secp224r1_sha3_256_3751", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3751_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3751_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3751_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3752 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3752_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3752_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3752 = { .name = "ecdsa_secp224r1_sha3_256_3752", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3752_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3752_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3752_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3753 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3753_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3753_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x05, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3753 = { .name = "ecdsa_secp224r1_sha3_256_3753", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3753_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3753_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3753_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3754 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3754_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3754_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3754 = { .name = "ecdsa_secp224r1_sha3_256_3754", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3754_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3754_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3754_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3755 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3755_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3755_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3755 = { .name = "ecdsa_secp224r1_sha3_256_3755", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3755_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3755_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3755_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3756 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3756_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3756_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3756 = { .name = "ecdsa_secp224r1_sha3_256_3756", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3756_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3756_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3756_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3757 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3757_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3757_sig[] = { 0x02, 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3757 = { .name = "ecdsa_secp224r1_sha3_256_3757", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3757_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3757_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3757_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3758 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3758_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3758_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x02, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3758 = { .name = "ecdsa_secp224r1_sha3_256_3758", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3758_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3758_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3758_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3759 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3759_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3759_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0xe4, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3759 = { .name = "ecdsa_secp224r1_sha3_256_3759", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3759_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3759_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3759_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3760 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3760_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3760_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3760 = { .name = "ecdsa_secp224r1_sha3_256_3760", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3760_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3760_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3760_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3761 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3761_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3761_sig[] = { 0x00, 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3761 = { .name = "ecdsa_secp224r1_sha3_256_3761", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3761_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3761_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3761_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3762 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3762_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3762_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3762 = { .name = "ecdsa_secp224r1_sha3_256_3762", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3762_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3762_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3762_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3763 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3763_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3763_sig[] = { 0x00, 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3763 = { .name = "ecdsa_secp224r1_sha3_256_3763", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3763_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3763_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3763_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3764 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3764_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3764_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3764 = { .name = "ecdsa_secp224r1_sha3_256_3764", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3764_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3764_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3764_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3765 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3765_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3765_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3765 = { .name = "ecdsa_secp224r1_sha3_256_3765", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3765_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3765_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3765_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3766 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3766_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3766_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3766 = { .name = "ecdsa_secp224r1_sha3_256_3766", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3766_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3766_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3766_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3767 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3767_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3767_sig[] = { 0x01, 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xfe, 0xe3, 0xb4, 0xec, 0x7c, 0x59, 0xa4, 0xdd, 0x66, 0xa6, 0x5b, 0x6a, 0xd2, 0x5c, 0xa1, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3767 = { .name = "ecdsa_secp224r1_sha3_256_3767", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3767_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3767_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3767_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3768 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3768_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3768_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd3, 0x00, 0xb6, 0x6f, 0x2b, 0x0a, 0x79, 0x28, 0xb5, 0xac, 0x53, 0xd0, 0xb2, 0x1a, 0x08, 0x27, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3768 = { .name = "ecdsa_secp224r1_sha3_256_3768", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3768_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3768_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3768_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3769 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3769_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3769_sig[] = { 0x71, 0x29, 0x96, 0xf5, 0xec, 0xa5, 0x70, 0x6e, 0x73, 0xfa, 0x67, 0x3d, 0x2d, 0x00, 0x32, 0xed, 0xf4, 0x3c, 0x96, 0x99, 0x36, 0x76, 0x82, 0xe9, 0xf1, 0x89, 0xcd, 0x9c, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3769 = { .name = "ecdsa_secp224r1_sha3_256_3769", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3769_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3769_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3769_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3770 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3770_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3770_sig[] = { 0x71, 0x29, 0x96, 0xf5, 0xec, 0xa5, 0x70, 0x6e, 0x73, 0xfa, 0x67, 0x3d, 0x2c, 0xff, 0x49, 0x90, 0xd4, 0xf5, 0x86, 0xd7, 0x4a, 0x53, 0xac, 0x2f, 0x4d, 0xe5, 0xf7, 0xd9, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3770 = { .name = "ecdsa_secp224r1_sha3_256_3770", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3770_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3770_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3770_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3771 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3771_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3771_sig[] = { 0xfe, 0x71, 0x29, 0x96, 0xf5, 0xec, 0xa5, 0x70, 0x6e, 0x73, 0xfa, 0x67, 0x3d, 0x2d, 0x01, 0x1c, 0x4b, 0x13, 0x83, 0xa6, 0x5b, 0x22, 0x99, 0x59, 0xa4, 0x95, 0x2d, 0xa3, 0x5f, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3771 = { .name = "ecdsa_secp224r1_sha3_256_3771", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3771_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3771_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3771_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3772 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3772_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3772_sig[] = { 0x01, 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3772 = { .name = "ecdsa_secp224r1_sha3_256_3772", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3772_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3772_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3772_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3773 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3773_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3773_sig[] = { 0x71, 0x29, 0x96, 0xf5, 0xec, 0xa5, 0x70, 0x6e, 0x73, 0xfa, 0x67, 0x3d, 0x2d, 0x00, 0x32, 0xed, 0xf4, 0x3c, 0x96, 0x99, 0x36, 0x76, 0x82, 0xe9, 0xf1, 0x89, 0xcd, 0x9c, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3773 = { .name = "ecdsa_secp224r1_sha3_256_3773", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3773_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3773_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3773_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3774 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3774_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3774_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x01, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0d, 0x53, 0xcf, 0xce, 0x32, 0x73, 0x00, 0xaf, 0xdf, 0xbb, 0xdb, 0xbd, 0x17, 0x33, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3774 = { .name = "ecdsa_secp224r1_sha3_256_3774", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3774_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3774_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3774_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3775 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3775_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3775_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0f, 0x26, 0x8a, 0x0c, 0xc0, 0x92, 0x84, 0x88, 0x25, 0x69, 0x51, 0x04, 0x5e, 0xde, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3775 = { .name = "ecdsa_secp224r1_sha3_256_3775", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3775_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3775_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3775_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3776 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3776_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3776_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x2f, 0x39, 0x64, 0x42, 0x93, 0x2c, 0xb8, 0x0e, 0x2c, 0xca, 0x33, 0x81, 0xeb, 0xf1, 0xc2, 0xd3, 0x12, 0x86, 0x7d, 0x3d, 0x63, 0xfd, 0x6d, 0x69, 0x9f, 0x44, 0xf7, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3776 = { .name = "ecdsa_secp224r1_sha3_256_3776", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3776_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3776_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3776_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3777 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3777_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3777_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0xfe, 0x2f, 0x39, 0x64, 0x42, 0x93, 0x2c, 0xb8, 0x0e, 0x2c, 0xca, 0x33, 0x81, 0xeb, 0xf2, 0xac, 0x30, 0x31, 0xcd, 0x8c, 0xff, 0x50, 0x20, 0x44, 0x24, 0x42, 0xe8, 0xcc, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3777 = { .name = "ecdsa_secp224r1_sha3_256_3777", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3777_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3777_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3777_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3778 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3778_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3778_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x01, 0xd0, 0xc6, 0x9b, 0xbd, 0x6c, 0xd3, 0x47, 0xf1, 0xd3, 0x35, 0xcc, 0x7e, 0x14, 0x0e, 0x3d, 0x2c, 0xed, 0x79, 0x82, 0xc2, 0x9c, 0x02, 0x92, 0x96, 0x60, 0xbb, 0x08, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3778 = { .name = "ecdsa_secp224r1_sha3_256_3778", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3778_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3778_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3778_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3779 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3779_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3779_sig[] = { 0x8e, 0xd6, 0x69, 0x0a, 0x13, 0x5a, 0x8f, 0x91, 0x8c, 0x05, 0x98, 0xc2, 0xd2, 0xff, 0xcd, 0x12, 0x0b, 0xc3, 0x69, 0x66, 0xc9, 0x89, 0x7d, 0x16, 0x0e, 0x76, 0x32, 0x64, 0x2f, 0x39, 0x64, 0x42, 0x93, 0x2c, 0xb8, 0x0e, 0x2c, 0xca, 0x33, 0x81, 0xeb, 0xf1, 0xc2, 0xd3, 0x12, 0x86, 0x7d, 0x3d, 0x63, 0xfd, 0x6d, 0x69, 0x9f, 0x44, 0xf7, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3779 = { .name = "ecdsa_secp224r1_sha3_256_3779", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3779_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3779_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3779_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3780 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3780_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3780_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3780 = { .name = "ecdsa_secp224r1_sha3_256_3780", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3780_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3780_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3780_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3781 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3781_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3781_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3781 = { .name = "ecdsa_secp224r1_sha3_256_3781", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3781_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3781_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3781_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3782 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3782_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3782_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3782 = { .name = "ecdsa_secp224r1_sha3_256_3782", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3782_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3782_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3782_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3783 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3783_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3783_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3783 = { .name = "ecdsa_secp224r1_sha3_256_3783", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3783_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3783_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3783_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3784 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3784_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3784_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3784 = { .name = "ecdsa_secp224r1_sha3_256_3784", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3784_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3784_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3784_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3785 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3785_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3785_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3785 = { .name = "ecdsa_secp224r1_sha3_256_3785", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3785_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3785_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3785_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3786 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3786_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3786_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3786 = { .name = "ecdsa_secp224r1_sha3_256_3786", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3786_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3786_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3786_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3787 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3787_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3787_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3787 = { .name = "ecdsa_secp224r1_sha3_256_3787", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3787_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3787_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3787_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3788 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3788_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3788_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3788 = { .name = "ecdsa_secp224r1_sha3_256_3788", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3788_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3788_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3788_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3789 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3789_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3789_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3789 = { .name = "ecdsa_secp224r1_sha3_256_3789", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3789_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3789_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3789_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3790 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3790_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3790_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3790 = { .name = "ecdsa_secp224r1_sha3_256_3790", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3790_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3790_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3790_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3791 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3791_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3791_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3791 = { .name = "ecdsa_secp224r1_sha3_256_3791", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3791_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3791_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3791_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3792 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3792_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3792_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3792 = { .name = "ecdsa_secp224r1_sha3_256_3792", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3792_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3792_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3792_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3793 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3793_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3793_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3793_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3793 = { .name = "ecdsa_secp224r1_sha3_256_3793", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3793_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3793_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3793_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3794 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3794_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3794_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3794_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3794 = { .name = "ecdsa_secp224r1_sha3_256_3794", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3794_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3794_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3794_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3795 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3795_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3795_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3795_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3795 = { .name = "ecdsa_secp224r1_sha3_256_3795", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3795_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3795_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3795_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3796 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3796_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3796_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3796_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3796 = { .name = "ecdsa_secp224r1_sha3_256_3796", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3796_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3796_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3796_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3797 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3797_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3797_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3797_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3797 = { .name = "ecdsa_secp224r1_sha3_256_3797", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3797_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3797_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3797_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3798 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3798_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3798_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3798_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3798 = { .name = "ecdsa_secp224r1_sha3_256_3798", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3798_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3798_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3798_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3799 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3799_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3799_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3799_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3799 = { .name = "ecdsa_secp224r1_sha3_256_3799", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3799_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3799_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3799_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3800 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3800_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3800_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3800_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3800 = { .name = "ecdsa_secp224r1_sha3_256_3800", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3800_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3800_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3800_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3801 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3801_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3801_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3801_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3801 = { .name = "ecdsa_secp224r1_sha3_256_3801", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3801_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3801_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3801_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3802 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3802_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3802_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3802_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3802 = { .name = "ecdsa_secp224r1_sha3_256_3802", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3802_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3802_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3802_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3803 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3803_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3803_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3803_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3803 = { .name = "ecdsa_secp224r1_sha3_256_3803", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3803_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3803_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3803_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3804 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3804_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3804_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3804_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3804 = { .name = "ecdsa_secp224r1_sha3_256_3804", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3804_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3804_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3804_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3805 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3805_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3805_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3805_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3805 = { .name = "ecdsa_secp224r1_sha3_256_3805", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3805_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3805_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3805_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3806 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3806_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3806_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3806 = { .name = "ecdsa_secp224r1_sha3_256_3806", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3806_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3806_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3806_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3807 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3807_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3807_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3807 = { .name = "ecdsa_secp224r1_sha3_256_3807", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3807_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3807_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3807_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3808 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3808_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3808_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3808 = { .name = "ecdsa_secp224r1_sha3_256_3808", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3808_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3808_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3808_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3809 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3809_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3809_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3809 = { .name = "ecdsa_secp224r1_sha3_256_3809", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3809_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3809_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3809_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3810 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3810_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3810_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3810 = { .name = "ecdsa_secp224r1_sha3_256_3810", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3810_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3810_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3810_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3811 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3811_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3811_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3811 = { .name = "ecdsa_secp224r1_sha3_256_3811", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3811_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3811_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3811_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3812 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3812_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3812_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3812 = { .name = "ecdsa_secp224r1_sha3_256_3812", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3812_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3812_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3812_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3813 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3813_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3813_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3813 = { .name = "ecdsa_secp224r1_sha3_256_3813", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3813_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3813_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3813_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3814 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3814_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3814_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3814 = { .name = "ecdsa_secp224r1_sha3_256_3814", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3814_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3814_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3814_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3815 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3815_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3815_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3815 = { .name = "ecdsa_secp224r1_sha3_256_3815", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3815_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3815_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3815_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3816 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3816_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3816_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3816_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3816 = { .name = "ecdsa_secp224r1_sha3_256_3816", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3816_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3816_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3816_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3817 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3817_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3817_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3817_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3817 = { .name = "ecdsa_secp224r1_sha3_256_3817", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3817_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3817_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3817_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3818 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3818_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3818_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3818 = { .name = "ecdsa_secp224r1_sha3_256_3818", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3818_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3818_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3818_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3819 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3819_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3819_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3819_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3819 = { .name = "ecdsa_secp224r1_sha3_256_3819", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3819_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3819_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3819_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3820 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3820_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3820_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3820_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3820 = { .name = "ecdsa_secp224r1_sha3_256_3820", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3820_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3820_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3820_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3821 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3821_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3821_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3821_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3821 = { .name = "ecdsa_secp224r1_sha3_256_3821", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3821_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3821_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3821_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3822 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3822_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3822_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3822 = { .name = "ecdsa_secp224r1_sha3_256_3822", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3822_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3822_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3822_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3823 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3823_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3823_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3823_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3823 = { .name = "ecdsa_secp224r1_sha3_256_3823", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3823_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3823_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3823_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3824 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3824_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3824_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3824_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3824 = { .name = "ecdsa_secp224r1_sha3_256_3824", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3824_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3824_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3824_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3825 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3825_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3825_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3825_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3825 = { .name = "ecdsa_secp224r1_sha3_256_3825", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3825_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3825_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3825_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3826 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3826_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3826_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3826_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3826 = { .name = "ecdsa_secp224r1_sha3_256_3826", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3826_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3826_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3826_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3827 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3827_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3827_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3827_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3827 = { .name = "ecdsa_secp224r1_sha3_256_3827", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3827_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3827_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3827_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3828 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3828_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3828_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3828_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3828 = { .name = "ecdsa_secp224r1_sha3_256_3828", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3828_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3828_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3828_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3829 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3829_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3829_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3829_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3829 = { .name = "ecdsa_secp224r1_sha3_256_3829", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3829_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3829_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3829_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3830 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3830_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3830_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3830_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3830 = { .name = "ecdsa_secp224r1_sha3_256_3830", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3830_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3830_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3830_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3831 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3831_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3831_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3831_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3831 = { .name = "ecdsa_secp224r1_sha3_256_3831", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3831_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3831_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3831_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3832 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3832_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3832_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3832_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3832 = { .name = "ecdsa_secp224r1_sha3_256_3832", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3832_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3832_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3832_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3833 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3833_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3833_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3833_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3833 = { .name = "ecdsa_secp224r1_sha3_256_3833", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3833_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3833_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3833_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3834 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3834_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3834_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3834_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3834 = { .name = "ecdsa_secp224r1_sha3_256_3834", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3834_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3834_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3834_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3835 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3835_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3835_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3835_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3835 = { .name = "ecdsa_secp224r1_sha3_256_3835", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3835_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3835_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3835_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3836 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3836_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3836_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3836_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3836 = { .name = "ecdsa_secp224r1_sha3_256_3836", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3836_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3836_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3836_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3837 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3837_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3837_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3837_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3837 = { .name = "ecdsa_secp224r1_sha3_256_3837", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3837_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3837_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3837_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3838 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3838_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3838_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3838_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3838 = { .name = "ecdsa_secp224r1_sha3_256_3838", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3838_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3838_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3838_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3839 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3839_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3839_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3839_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3839 = { .name = "ecdsa_secp224r1_sha3_256_3839", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3839_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3839_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3839_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3840 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3840_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3840_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3840_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3840 = { .name = "ecdsa_secp224r1_sha3_256_3840", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3840_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3840_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3840_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3841 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3841_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3841_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3841_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3841 = { .name = "ecdsa_secp224r1_sha3_256_3841", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3841_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3841_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3841_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3842 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3842_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3842_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3842_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3842 = { .name = "ecdsa_secp224r1_sha3_256_3842", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3842_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3842_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3842_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3843 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3843_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3843_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3843_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3843 = { .name = "ecdsa_secp224r1_sha3_256_3843", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3843_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3843_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3843_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3844 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3844_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3844_msg[] = { 0x36, 0x33, 0x31, 0x33, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_256_3844_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x7e, 0xb5, 0xce, 0xa4, 0xbd, 0xa6, 0x7e, 0xb1, 0x7c, 0x42, 0xfd, 0x9e, 0x4e, 0xf8, 0xfc, 0x07, 0xa3, 0x86, 0xc4, 0xd3, 0x8b, 0x8e, 0x3f, 0xd7, 0xac, 0x14, 0xe6, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3844 = { .name = "ecdsa_secp224r1_sha3_256_3844", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3844_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3844_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha3_256_3844_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3845 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3845_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3845_msg[] = { 0x33, 0x31, 0x39, 0x30, 0x39, 0x34, 0x33, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3845_sig[] = { 0xce, 0x9c, 0x8f, 0x26, 0x2a, 0x8f, 0xcf, 0xbf, 0xf2, 0x6a, 0x2e, 0xd5, 0x61, 0x56, 0xdd, 0x7f, 0xa0, 0x0d, 0xf1, 0xb8, 0xdd, 0x78, 0xf2, 0x85, 0x22, 0xf9, 0x59, 0x9f, 0x3f, 0x8b, 0x90, 0x75, 0x86, 0x50, 0x03, 0x1a, 0xc9, 0x43, 0xb6, 0xe8, 0x9a, 0x2d, 0x40, 0x1c, 0x03, 0xa4, 0x84, 0x5f, 0x48, 0x25, 0x38, 0x5e, 0xdb, 0x0b, 0x99, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3845 = { .name = "ecdsa_secp224r1_sha3_256_3845", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3845_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3845_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3845_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3846 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3846_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3846_msg[] = { 0x38, 0x34, 0x33, 0x34, 0x37, 0x34, 0x31, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3846_sig[] = { 0xa5, 0x96, 0xc7, 0x10, 0x49, 0x2f, 0x86, 0xb3, 0x1d, 0x7c, 0x30, 0x31, 0xdd, 0xff, 0xa4, 0x1e, 0xb6, 0xec, 0xd0, 0xd2, 0x55, 0x27, 0x27, 0x77, 0x76, 0x5d, 0x96, 0x5c, 0xbc, 0x0e, 0x0d, 0x13, 0x4f, 0x35, 0x90, 0x88, 0x43, 0x8f, 0x9d, 0x48, 0x65, 0x18, 0x4a, 0x91, 0x34, 0xb2, 0x2d, 0xc9, 0x30, 0xa3, 0x2d, 0xf3, 0x17, 0xcd, 0x2d, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3846 = { .name = "ecdsa_secp224r1_sha3_256_3846", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3846_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3846_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3846_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3847 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3847_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3847_msg[] = { 0x33, 0x35, 0x37, 0x32, 0x36, 0x39, 0x36, 0x38, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3847_sig[] = { 0x44, 0xbf, 0x0e, 0x8e, 0xf3, 0x1a, 0xdc, 0xf9, 0x35, 0xbf, 0xdb, 0xdb, 0xff, 0xb8, 0x48, 0x16, 0x0e, 0xf5, 0xd5, 0xf9, 0x79, 0x73, 0x30, 0x35, 0x03, 0xae, 0x43, 0xc6, 0x58, 0x19, 0x41, 0x09, 0x10, 0x11, 0x07, 0xd0, 0x61, 0x57, 0x5d, 0x48, 0xae, 0xfb, 0x87, 0x91, 0xda, 0x1a, 0xec, 0xa9, 0x21, 0x4f, 0xcc, 0x4b, 0xf9, 0xb6, 0x0d, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3847 = { .name = "ecdsa_secp224r1_sha3_256_3847", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3847_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3847_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3847_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3848 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3848_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3848_msg[] = { 0x35, 0x39, 0x31, 0x38, 0x33, 0x33, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3848_sig[] = { 0xbc, 0xc5, 0x6b, 0x38, 0xd6, 0xa7, 0xb2, 0x27, 0xa0, 0x0f, 0x23, 0x5f, 0x0a, 0xee, 0xf3, 0xeb, 0xf8, 0x46, 0xcc, 0xa2, 0xdb, 0x14, 0xc2, 0x90, 0x27, 0x33, 0x9f, 0xc4, 0x43, 0x55, 0x86, 0x3f, 0xcc, 0x75, 0xf2, 0x46, 0xf2, 0x13, 0xa9, 0xb4, 0x86, 0x7d, 0xeb, 0x2a, 0x7f, 0xac, 0xe8, 0xcd, 0xf5, 0xdf, 0xbb, 0xe4, 0x3f, 0x8a, 0xc3, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3848 = { .name = "ecdsa_secp224r1_sha3_256_3848", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3848_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3848_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3848_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3849 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3849_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3849_msg[] = { 0x38, 0x32, 0x35, 0x33, 0x30, 0x38, 0x32, 0x32, 0x35, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3849_sig[] = { 0x6e, 0xe3, 0xc0, 0xf0, 0x2d, 0xbb, 0x1c, 0x59, 0x91, 0xfe, 0x89, 0x7f, 0x85, 0x34, 0xbc, 0x9b, 0xa3, 0x9e, 0x3c, 0x4a, 0x5c, 0x31, 0xd2, 0x32, 0x6c, 0xeb, 0xfb, 0x1c, 0xe8, 0x5b, 0x88, 0xcc, 0x3b, 0x25, 0xe3, 0xf6, 0xc9, 0x05, 0x29, 0x93, 0xd3, 0xb4, 0x3f, 0xb1, 0xe0, 0xd3, 0x68, 0x40, 0xc6, 0x4f, 0xbf, 0xb0, 0xb9, 0x79, 0xf7, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3849 = { .name = "ecdsa_secp224r1_sha3_256_3849", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3849_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3849_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3849_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3850 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3850_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3850_msg[] = { 0x31, 0x33, 0x37, 0x33, 0x34, 0x38, 0x32, 0x38, 0x31, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_256_3850_sig[] = { 0x21, 0xdd, 0x71, 0xac, 0x10, 0x88, 0x1e, 0xa8, 0x82, 0x96, 0x39, 0x5a, 0xb8, 0xef, 0xbe, 0x82, 0x2c, 0x08, 0x1b, 0x5a, 0x6d, 0x44, 0x8e, 0x6e, 0x5d, 0x6d, 0xe9, 0x17, 0x3b, 0x90, 0x6e, 0x29, 0x10, 0xac, 0x30, 0x7a, 0x54, 0x5c, 0x7c, 0x5e, 0x5a, 0x41, 0x55, 0x63, 0x1b, 0xe6, 0xde, 0xd9, 0xda, 0x87, 0x19, 0xf4, 0x59, 0x0b, 0x5d, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3850 = { .name = "ecdsa_secp224r1_sha3_256_3850", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3850_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3850_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3850_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3851 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3851_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3851_msg[] = { 0x31, 0x37, 0x33, 0x38, 0x31, 0x35, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3851_sig[] = { 0x3c, 0x8d, 0xd1, 0xc1, 0xda, 0x01, 0xca, 0x77, 0x93, 0x89, 0x0c, 0xec, 0xf9, 0x67, 0xae, 0xf7, 0xb3, 0x19, 0x9b, 0xe8, 0x99, 0x73, 0xf4, 0x0f, 0x13, 0x2f, 0x47, 0xcc, 0x70, 0x30, 0xa2, 0xaf, 0xbf, 0x16, 0xe0, 0x20, 0x0c, 0x9b, 0x5d, 0x91, 0x04, 0x00, 0x98, 0x81, 0xb5, 0x66, 0x7f, 0x5c, 0x99, 0x1c, 0x31, 0x50, 0xd5, 0xec, 0x09, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3851 = { .name = "ecdsa_secp224r1_sha3_256_3851", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3851_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3851_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3851_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3852 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3852_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3852_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x34, 0x36, 0x36, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3852_sig[] = { 0x1b, 0xb5, 0x38, 0xff, 0xd4, 0x9b, 0x56, 0x62, 0x03, 0xb3, 0x39, 0x01, 0x86, 0xd4, 0x10, 0x52, 0xe2, 0x15, 0x8b, 0xd8, 0xca, 0xbc, 0xe4, 0x82, 0xe2, 0xbd, 0x9c, 0xfd, 0x26, 0x21, 0xfe, 0x8a, 0x3e, 0xbd, 0x93, 0x98, 0x2e, 0x7a, 0xd1, 0xf8, 0x76, 0xe3, 0x54, 0xa5, 0x68, 0x09, 0xf8, 0xcd, 0xaf, 0x72, 0x89, 0xc2, 0x47, 0xa9, 0x35, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3852 = { .name = "ecdsa_secp224r1_sha3_256_3852", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3852_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3852_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3852_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3853 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3853_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3853_msg[] = { 0x32, 0x31, 0x38, 0x33, 0x30, 0x33, 0x39, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_256_3853_sig[] = { 0x0b, 0x6b, 0x55, 0x78, 0x39, 0x57, 0x38, 0x45, 0x1e, 0x59, 0xbc, 0x46, 0x1b, 0xfc, 0x55, 0x8b, 0x0f, 0xfa, 0xdc, 0x75, 0x04, 0x5c, 0x42, 0x98, 0xb0, 0x0f, 0x95, 0x39, 0x00, 0x31, 0x47, 0xe9, 0xcd, 0xce, 0x81, 0x80, 0x9e, 0x25, 0xb1, 0x05, 0x31, 0xc5, 0x9a, 0xe3, 0xf2, 0x25, 0xc7, 0xa7, 0x68, 0x1f, 0xf5, 0x13, 0x5c, 0xf3, 0x17, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3853 = { .name = "ecdsa_secp224r1_sha3_256_3853", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3853_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3853_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3853_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3854 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3854_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3854_msg[] = { 0x31, 0x30, 0x35, 0x32, 0x36, 0x31, 0x37, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3854_sig[] = { 0xcd, 0xe6, 0x75, 0x78, 0xf4, 0x66, 0x67, 0x89, 0xa8, 0xb7, 0x78, 0x12, 0xca, 0x4c, 0x05, 0x7f, 0xee, 0xe8, 0xb7, 0xcb, 0x2a, 0xc6, 0x7e, 0x03, 0x82, 0x92, 0xc2, 0x72, 0xdc, 0x2d, 0xad, 0x51, 0x33, 0xd0, 0xde, 0x4d, 0x1d, 0x5f, 0x4e, 0x66, 0xc1, 0x26, 0x41, 0xb0, 0xd0, 0x36, 0x05, 0x83, 0x82, 0x23, 0x7d, 0xa8, 0xc0, 0x25, 0x70, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3854 = { .name = "ecdsa_secp224r1_sha3_256_3854", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3854_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3854_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3854_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3855 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3855_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3855_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x33, 0x39, 0x39, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3855_sig[] = { 0xfd, 0xae, 0x74, 0xf7, 0x61, 0x8e, 0x26, 0xdc, 0xae, 0xa2, 0x3d, 0x96, 0xaa, 0x50, 0xbf, 0x31, 0x32, 0xe2, 0xad, 0xa0, 0xba, 0x51, 0x9b, 0x0c, 0xca, 0x94, 0xe4, 0x77, 0xd8, 0x4f, 0xd4, 0x43, 0x84, 0x76, 0xfd, 0x42, 0xfa, 0x02, 0xb5, 0x10, 0xa8, 0x8b, 0x8d, 0x66, 0xbd, 0x02, 0x3c, 0x50, 0x80, 0xa5, 0x4d, 0xe3, 0xd3, 0xc8, 0xfc, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3855 = { .name = "ecdsa_secp224r1_sha3_256_3855", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3855_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3855_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3855_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3856 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3856_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3856_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x33, 0x31, 0x36, 0x34, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3856_sig[] = { 0x3a, 0x9c, 0x36, 0x46, 0xb7, 0xaf, 0x34, 0xc5, 0x02, 0x28, 0x4e, 0xf0, 0x07, 0x02, 0x87, 0x67, 0x2d, 0xd2, 0xb5, 0x9e, 0x2e, 0x60, 0xf7, 0x27, 0x2d, 0x50, 0x09, 0x5c, 0x56, 0x12, 0x25, 0xad, 0xdb, 0xaa, 0xb4, 0xb7, 0xbc, 0xeb, 0xa2, 0x48, 0xb0, 0x6d, 0xd4, 0x62, 0x77, 0x9b, 0xf1, 0xee, 0x31, 0x98, 0xc2, 0xea, 0x41, 0x7e, 0xa4, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3856 = { .name = "ecdsa_secp224r1_sha3_256_3856", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3856_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3856_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3856_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3857 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3857_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3857_msg[] = { 0x32, 0x30, 0x36, 0x33, 0x38, 0x35, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3857_sig[] = { 0xc4, 0xd9, 0x1e, 0x54, 0x6a, 0xc9, 0xda, 0xb2, 0xcc, 0xec, 0xe1, 0x8c, 0x49, 0x39, 0x8d, 0x63, 0x42, 0xc0, 0x12, 0x31, 0x49, 0xb5, 0x98, 0xdb, 0x90, 0x05, 0x32, 0x0d, 0x95, 0x5a, 0xda, 0x4c, 0xbd, 0x17, 0xe4, 0x97, 0x54, 0x67, 0x63, 0x3f, 0xff, 0xb2, 0x32, 0x1f, 0x5b, 0x4a, 0xcb, 0x23, 0xf4, 0xb3, 0x02, 0x1a, 0x06, 0x32, 0x87, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3857 = { .name = "ecdsa_secp224r1_sha3_256_3857", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3857_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3857_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3857_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3858 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3858_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3858_msg[] = { 0x37, 0x38, 0x33, 0x39, 0x37, 0x36, 0x34, 0x39, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_256_3858_sig[] = { 0x2f, 0xfe, 0xc2, 0x69, 0x7a, 0x93, 0xf0, 0xc4, 0xc5, 0xa4, 0x8b, 0xec, 0x8b, 0x15, 0xda, 0xd3, 0x27, 0xb1, 0xb7, 0x00, 0x17, 0xe6, 0x92, 0x5f, 0xa7, 0x6b, 0x68, 0x3b, 0x20, 0x5d, 0xba, 0xc5, 0x88, 0xca, 0xe4, 0xf0, 0xed, 0x3b, 0x8c, 0x7b, 0x41, 0x01, 0x39, 0x9c, 0xe1, 0x83, 0xd3, 0x82, 0x11, 0xed, 0x22, 0x30, 0x6d, 0x0c, 0xda, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3858 = { .name = "ecdsa_secp224r1_sha3_256_3858", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3858_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3858_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3858_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3859 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3859_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3859_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x36, 0x34, 0x34, 0x36, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3859_sig[] = { 0xfe, 0xc1, 0x50, 0x67, 0xa7, 0x8c, 0xa6, 0x43, 0xa5, 0x3f, 0x82, 0x7f, 0x56, 0xa8, 0x48, 0x2c, 0x59, 0xd7, 0xe0, 0xad, 0x38, 0xb0, 0x73, 0x21, 0xd6, 0xfa, 0x9f, 0xe9, 0x3c, 0xe7, 0xe4, 0x5b, 0x31, 0x39, 0x0e, 0x02, 0x6b, 0x48, 0x56, 0x64, 0xcb, 0xf6, 0x4e, 0x39, 0xb1, 0x97, 0x03, 0xc8, 0xef, 0x7b, 0x0f, 0x2d, 0x61, 0xbf, 0xe6, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3859 = { .name = "ecdsa_secp224r1_sha3_256_3859", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3859_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3859_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3859_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3860 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3860_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3860_msg[] = { 0x34, 0x38, 0x33, 0x32, 0x30, 0x34, 0x32, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_256_3860_sig[] = { 0xd5, 0x76, 0x68, 0x67, 0x9c, 0x06, 0xd0, 0x0d, 0xb1, 0x12, 0xeb, 0xfd, 0x27, 0x3f, 0x6a, 0xa5, 0x67, 0x01, 0xb2, 0x00, 0x8d, 0x77, 0x28, 0x4f, 0x30, 0x52, 0x01, 0xcb, 0x21, 0xca, 0xcc, 0x0f, 0x29, 0x00, 0xde, 0xbc, 0x99, 0x0c, 0xf2, 0xaa, 0x52, 0xc6, 0x7b, 0xb7, 0xa9, 0xd1, 0x83, 0xf3, 0x31, 0xa3, 0xb9, 0x84, 0xd6, 0x3a, 0x15, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3860 = { .name = "ecdsa_secp224r1_sha3_256_3860", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3860_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3860_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3860_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3861 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3861_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3861_msg[] = { 0x33, 0x36, 0x35, 0x32, 0x32, 0x31, 0x38, 0x31, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3861_sig[] = { 0xc3, 0xc5, 0x26, 0x0b, 0xed, 0x20, 0x28, 0x99, 0x07, 0xb8, 0xb4, 0xfb, 0x6b, 0xd7, 0xfe, 0x69, 0xc2, 0x57, 0xfe, 0x50, 0xfa, 0x84, 0xaa, 0xea, 0x7e, 0xc1, 0xac, 0x0e, 0x38, 0xeb, 0x78, 0xdc, 0x31, 0x76, 0x6a, 0x1b, 0x03, 0x8e, 0x81, 0x1d, 0xbe, 0x6b, 0x80, 0x68, 0x3d, 0xb5, 0xc0, 0x6c, 0x7d, 0x46, 0x6b, 0x6f, 0x1b, 0xd4, 0x4f, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3861 = { .name = "ecdsa_secp224r1_sha3_256_3861", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3861_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3861_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3861_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3862 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3862_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3862_msg[] = { 0x32, 0x34, 0x39, 0x31, 0x37, 0x31, 0x32, 0x36, 0x39, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3862_sig[] = { 0x33, 0xef, 0xa9, 0x10, 0x52, 0xf2, 0xa8, 0x9d, 0xaf, 0xd2, 0xb0, 0x6c, 0xfa, 0x28, 0xb0, 0xc8, 0x24, 0x3e, 0x3c, 0xac, 0x82, 0x46, 0xc1, 0xae, 0xa3, 0xcf, 0x4e, 0x60, 0x41, 0xf9, 0x64, 0x71, 0x5d, 0xd5, 0x54, 0x18, 0xa5, 0x74, 0x6f, 0x91, 0xec, 0xff, 0x15, 0xb7, 0xc6, 0x16, 0x3f, 0xb9, 0x4c, 0x18, 0x97, 0x9c, 0xf6, 0x93, 0xc2, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3862 = { .name = "ecdsa_secp224r1_sha3_256_3862", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3862_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3862_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3862_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3863 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3863_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3863_msg[] = { 0x32, 0x36, 0x32, 0x32, 0x37, 0x39, 0x30, 0x37, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3863_sig[] = { 0x85, 0x61, 0x8a, 0xc1, 0x65, 0xd6, 0xf8, 0x79, 0xfd, 0x4f, 0x77, 0x1c, 0x5f, 0x1a, 0x88, 0x01, 0x9b, 0x04, 0x05, 0x2c, 0x5f, 0x94, 0x0b, 0xa0, 0x52, 0xa5, 0x41, 0xa5, 0x66, 0x40, 0xf1, 0xb8, 0xdb, 0x13, 0x7e, 0x51, 0x6f, 0x40, 0x5b, 0x64, 0xaa, 0x09, 0xd3, 0x1e, 0x8c, 0x1d, 0xc9, 0xac, 0x4d, 0x5a, 0xba, 0xb6, 0xf9, 0xf8, 0x76, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3863 = { .name = "ecdsa_secp224r1_sha3_256_3863", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3863_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3863_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3863_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3864 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3864_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3864_msg[] = { 0x31, 0x30, 0x31, 0x32, 0x35, 0x37, 0x37, 0x32, 0x38, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_256_3864_sig[] = { 0x9d, 0x18, 0x73, 0xa0, 0x53, 0xa2, 0x80, 0xbd, 0x69, 0x86, 0x65, 0xab, 0x4d, 0xd0, 0x87, 0xbe, 0x30, 0x80, 0xc2, 0xc3, 0xc3, 0xb9, 0xa2, 0xd7, 0x28, 0xcc, 0x07, 0x04, 0x73, 0x42, 0x10, 0xe8, 0x41, 0x6e, 0x08, 0xfd, 0xcb, 0xb3, 0x25, 0x1f, 0x38, 0x39, 0x28, 0x97, 0x64, 0x43, 0xc5, 0x59, 0xf5, 0x0e, 0x71, 0x64, 0xf0, 0x84, 0xc8, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3864 = { .name = "ecdsa_secp224r1_sha3_256_3864", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3864_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3864_msg, .msglen = 12, .sig = ecdsa_secp224r1_sha3_256_3864_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3865 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3865_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3865_msg[] = { 0x31, 0x30, 0x35, 0x30, 0x38, 0x37, 0x32, 0x32, 0x30, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_256_3865_sig[] = { 0xab, 0x1f, 0xa9, 0xdd, 0xd8, 0xf1, 0x67, 0x98, 0xfd, 0x01, 0x52, 0x51, 0xfd, 0x71, 0xa4, 0xad, 0xd9, 0x62, 0xaf, 0xb6, 0xf0, 0x1b, 0x00, 0xf9, 0x1e, 0x42, 0x35, 0x2c, 0x9d, 0x71, 0xb1, 0x1f, 0xe1, 0xa0, 0x62, 0x8c, 0x01, 0x2c, 0xdd, 0x93, 0x8e, 0x83, 0x8a, 0xcb, 0xf2, 0x2a, 0xeb, 0xd6, 0x4c, 0x1d, 0xa0, 0x1d, 0x5b, 0x2f, 0xbf, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3865 = { .name = "ecdsa_secp224r1_sha3_256_3865", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3865_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3865_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3865_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3866 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3866_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3866_msg[] = { 0x32, 0x35, 0x30, 0x37, 0x37, 0x32, 0x37, 0x30, 0x33, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_256_3866_sig[] = { 0x86, 0x9f, 0x3e, 0xc4, 0x76, 0x54, 0x50, 0xac, 0x03, 0xaa, 0x2a, 0x4a, 0x63, 0x2d, 0x5f, 0x7a, 0x96, 0x03, 0xb4, 0xb5, 0x2f, 0x37, 0x02, 0x9d, 0xd2, 0xc7, 0x28, 0x9b, 0xa4, 0xbd, 0x2d, 0x05, 0x6f, 0xe2, 0x43, 0xfd, 0x3c, 0x6d, 0x71, 0x90, 0x41, 0xb2, 0x09, 0x3c, 0x81, 0x12, 0x5f, 0x0e, 0xe7, 0x75, 0x27, 0x30, 0xc3, 0x98, 0x73, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3866 = { .name = "ecdsa_secp224r1_sha3_256_3866", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3866_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3866_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3866_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3867 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3867_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3867_msg[] = { 0x37, 0x31, 0x39, 0x33, 0x34, 0x35, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3867_sig[] = { 0x0f, 0xd7, 0xa3, 0x77, 0xde, 0x13, 0xb5, 0x5e, 0xd9, 0xe3, 0x9a, 0xbe, 0xd7, 0x15, 0x3a, 0xb7, 0x2b, 0x38, 0x64, 0xae, 0x00, 0x08, 0x9b, 0xe6, 0xcb, 0x39, 0xc5, 0xae, 0x01, 0x99, 0x97, 0x22, 0x03, 0x6b, 0xa4, 0x4e, 0x9e, 0x00, 0x57, 0x4b, 0x3d, 0xe4, 0x6a, 0x7c, 0x2a, 0xf4, 0x69, 0x74, 0xf3, 0xce, 0x38, 0x18, 0x1c, 0xeb, 0xac, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3867 = { .name = "ecdsa_secp224r1_sha3_256_3867", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3867_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3867_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3867_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3868 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3868_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3868_msg[] = { 0x31, 0x36, 0x33, 0x37, 0x33, 0x30, 0x35, 0x37, 0x36, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_256_3868_sig[] = { 0x17, 0x9f, 0xf0, 0x7f, 0xe7, 0xb6, 0x84, 0xe7, 0x23, 0x1e, 0xfc, 0xb2, 0x22, 0x16, 0x70, 0x9b, 0x6c, 0x5b, 0x64, 0xf3, 0xe2, 0xab, 0x2b, 0x69, 0x62, 0xb7, 0xd0, 0xe2, 0x30, 0x77, 0xaf, 0x62, 0x4b, 0xfa, 0x19, 0xa3, 0xdf, 0x87, 0x36, 0x2e, 0x3a, 0x41, 0xea, 0x0e, 0x7f, 0x90, 0x4b, 0x32, 0xc0, 0x68, 0x51, 0xce, 0xe0, 0xf5, 0xb6, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3868 = { .name = "ecdsa_secp224r1_sha3_256_3868", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3868_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3868_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3868_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3869 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3869_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3869_msg[] = { 0x34, 0x32, 0x34, 0x31, 0x32, 0x37, 0x33, 0x37, 0x31, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_256_3869_sig[] = { 0x5d, 0x68, 0x17, 0xbb, 0xbc, 0xfa, 0x63, 0x3f, 0x93, 0x44, 0x56, 0xab, 0x59, 0x46, 0x74, 0x41, 0x28, 0xbd, 0x0e, 0xb7, 0xc5, 0xbb, 0xe6, 0xdb, 0x16, 0xe9, 0x59, 0x4d, 0x73, 0xc2, 0x34, 0xf3, 0xf2, 0x31, 0x87, 0xb3, 0x18, 0xb9, 0x84, 0xd0, 0x99, 0x83, 0x8e, 0xf5, 0x78, 0x73, 0xba, 0x6d, 0xe4, 0x8b, 0xd9, 0xfa, 0xdc, 0xd2, 0xef, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3869 = { .name = "ecdsa_secp224r1_sha3_256_3869", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3869_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3869_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3869_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3870 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3870_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3870_msg[] = { 0x34, 0x37, 0x35, 0x36, 0x31, 0x34, 0x37, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_256_3870_sig[] = { 0xad, 0xf7, 0xcb, 0xd3, 0x30, 0x18, 0xfe, 0x58, 0xd3, 0xda, 0x64, 0x0d, 0xc8, 0xdc, 0xdb, 0x5d, 0xb7, 0x5a, 0x85, 0xb8, 0x40, 0x9e, 0xf8, 0xa6, 0xd3, 0x4a, 0x88, 0xdf, 0x8a, 0xe5, 0xca, 0xfe, 0x68, 0x33, 0xad, 0x40, 0xea, 0x26, 0x98, 0xcd, 0x86, 0x2d, 0xf9, 0xa5, 0x71, 0x8f, 0x3b, 0x00, 0x93, 0x58, 0x85, 0xf8, 0x91, 0x34, 0xd9, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3870 = { .name = "ecdsa_secp224r1_sha3_256_3870", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3870_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3870_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3870_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3871 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3871_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3871_msg[] = { 0x37, 0x31, 0x36, 0x32, 0x33, 0x32, 0x37, 0x37, 0x33, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3871_sig[] = { 0xba, 0x77, 0x20, 0x51, 0x11, 0x53, 0xb6, 0xb9, 0x6a, 0x38, 0x63, 0x5e, 0x99, 0x97, 0xca, 0xff, 0x1a, 0xc3, 0x1c, 0xde, 0xa4, 0x02, 0x32, 0x41, 0xd0, 0x1f, 0x96, 0x6c, 0xa0, 0xe7, 0x2e, 0xa2, 0x0c, 0x55, 0xbb, 0xa4, 0x7e, 0xe6, 0xaa, 0x7d, 0xa3, 0xeb, 0xd1, 0xc1, 0xdb, 0xaf, 0xee, 0x71, 0x52, 0xe3, 0xe2, 0x27, 0x78, 0x64, 0x40, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3871 = { .name = "ecdsa_secp224r1_sha3_256_3871", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3871_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3871_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3871_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3872 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3872_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3872_msg[] = { 0x31, 0x32, 0x32, 0x32, 0x34, 0x30, 0x34, 0x31, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3872_sig[] = { 0x10, 0xa8, 0xcc, 0x92, 0xe5, 0x50, 0xc8, 0x16, 0x99, 0x9c, 0x0a, 0x9b, 0xde, 0x2b, 0x34, 0x5a, 0x2a, 0x75, 0xc6, 0xf6, 0x68, 0x61, 0xf0, 0x60, 0xff, 0x2a, 0x37, 0x42, 0x6e, 0xf5, 0x45, 0x56, 0xc7, 0x88, 0x3f, 0xc4, 0x5e, 0x8b, 0x00, 0x63, 0x8f, 0xf7, 0x6c, 0x1f, 0x3e, 0xea, 0xfa, 0x89, 0x5e, 0x4f, 0x2d, 0xce, 0x99, 0x02, 0x49, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3872 = { .name = "ecdsa_secp224r1_sha3_256_3872", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3872_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3872_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3872_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3873 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3873_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3873_msg[] = { 0x33, 0x35, 0x32, 0x34, 0x35, 0x38, 0x33, 0x33, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3873_sig[] = { 0x29, 0x80, 0xc3, 0xaf, 0x3b, 0x6f, 0xe6, 0xfc, 0x5f, 0x0f, 0x82, 0xe7, 0x4b, 0x84, 0x84, 0x53, 0xcf, 0xed, 0x14, 0x60, 0xcf, 0x99, 0xa0, 0x80, 0xbd, 0x5a, 0x85, 0x66, 0x87, 0xd3, 0xab, 0xe0, 0xbc, 0x65, 0x27, 0x43, 0xa7, 0x5a, 0x54, 0x57, 0x9a, 0x34, 0xb8, 0x2a, 0x91, 0xc4, 0x88, 0x99, 0x01, 0x57, 0xc4, 0xa9, 0x36, 0x45, 0x40, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3873 = { .name = "ecdsa_secp224r1_sha3_256_3873", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3873_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3873_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3873_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3874 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3874_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3874_msg[] = { 0x33, 0x31, 0x36, 0x33, 0x34, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3874_sig[] = { 0x2c, 0x3d, 0x2f, 0xef, 0x2d, 0x23, 0xea, 0x43, 0x1f, 0x36, 0xdd, 0x32, 0x58, 0x12, 0x73, 0x26, 0xf8, 0x3a, 0xba, 0x99, 0x89, 0x75, 0x4f, 0xd7, 0x33, 0x93, 0x1b, 0xb0, 0x64, 0xde, 0x0f, 0x37, 0xc3, 0x34, 0xeb, 0x07, 0xf5, 0x7e, 0x5d, 0xcf, 0x92, 0x5a, 0x78, 0x06, 0xf9, 0x0f, 0x1a, 0xf3, 0x4c, 0x25, 0x44, 0xcf, 0x3d, 0x4d, 0x9f, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3874 = { .name = "ecdsa_secp224r1_sha3_256_3874", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3874_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3874_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha3_256_3874_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3875 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3875_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3875_msg[] = { 0x36, 0x35, 0x33, 0x32, 0x35, 0x39, 0x38, 0x34, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3875_sig[] = { 0x5f, 0x08, 0x49, 0x68, 0x64, 0xba, 0x9b, 0x6b, 0x74, 0x81, 0x04, 0x05, 0xfb, 0xba, 0x57, 0x9a, 0x5a, 0xec, 0xca, 0x52, 0xc3, 0xc9, 0x85, 0x1b, 0xce, 0x3a, 0xe5, 0x80, 0xfa, 0xd2, 0xd3, 0x2d, 0x58, 0x46, 0x79, 0xeb, 0x00, 0x74, 0x28, 0x5f, 0x34, 0xd5, 0xee, 0x45, 0x2e, 0xd0, 0xaa, 0xc2, 0x22, 0x29, 0x50, 0xbc, 0x3c, 0xb0, 0x19, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3875 = { .name = "ecdsa_secp224r1_sha3_256_3875", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3875_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3875_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3875_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3876 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3876_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3876_msg[] = { 0x37, 0x33, 0x38, 0x35, 0x31, 0x38, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3876_sig[] = { 0x07, 0x55, 0xfb, 0xc0, 0xcb, 0x48, 0x47, 0x10, 0x11, 0x18, 0xd2, 0x66, 0xe8, 0x26, 0xcf, 0x23, 0xfd, 0xc6, 0x64, 0xbf, 0xc4, 0xb9, 0x42, 0x5e, 0xeb, 0x56, 0x73, 0x42, 0xc2, 0xfe, 0xc3, 0x16, 0x39, 0x7c, 0xf1, 0x67, 0xc1, 0xb2, 0x34, 0xa7, 0xba, 0xb4, 0x6c, 0x2a, 0x26, 0xb6, 0xb4, 0x8b, 0x87, 0x79, 0x03, 0x25, 0x99, 0x5b, 0xf9, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3876 = { .name = "ecdsa_secp224r1_sha3_256_3876", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3876_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3876_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3876_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3877 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3877_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3877_msg[] = { 0x31, 0x34, 0x36, 0x35, 0x32, 0x36, 0x36, 0x35, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3877_sig[] = { 0x25, 0x44, 0x85, 0xaf, 0xee, 0x69, 0x12, 0xf3, 0x8b, 0xff, 0xae, 0x77, 0x15, 0x53, 0xaa, 0xf7, 0x34, 0xc7, 0x79, 0xb7, 0x69, 0xe7, 0x92, 0xb2, 0x62, 0x3a, 0xb0, 0x56, 0x6e, 0x59, 0x9e, 0xa2, 0xfe, 0x87, 0xd2, 0x22, 0x89, 0x92, 0xce, 0xa3, 0x40, 0xb1, 0x4d, 0x88, 0x72, 0xad, 0x3c, 0xb2, 0xab, 0xf3, 0x5a, 0x1f, 0x45, 0x3c, 0x7c, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3877 = { .name = "ecdsa_secp224r1_sha3_256_3877", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3877_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3877_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3877_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3878 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3878_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3878_msg[] = { 0x32, 0x30, 0x33, 0x34, 0x38, 0x38, 0x39, 0x34, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3878_sig[] = { 0x99, 0xe6, 0x68, 0x98, 0x3f, 0x0c, 0x3c, 0x41, 0x68, 0x08, 0x1d, 0x37, 0x66, 0x46, 0x07, 0x43, 0x58, 0xe9, 0x23, 0xb0, 0x5c, 0x8b, 0xe3, 0x08, 0x0e, 0xd0, 0xd2, 0xa0, 0xe0, 0xb2, 0x8c, 0x84, 0xf2, 0xca, 0x32, 0x3d, 0x89, 0xde, 0xf8, 0x78, 0xde, 0xbd, 0x01, 0x9f, 0x3a, 0x89, 0x5c, 0x8d, 0xea, 0xcc, 0xbe, 0x69, 0xb5, 0x6c, 0x48, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3878 = { .name = "ecdsa_secp224r1_sha3_256_3878", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3878_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3878_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3878_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3879 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3879_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3879_msg[] = { 0x34, 0x34, 0x37, 0x30, 0x38, 0x38, 0x36, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3879_sig[] = { 0xac, 0xda, 0x06, 0xa1, 0xf0, 0x1d, 0xbc, 0xd4, 0x9e, 0x89, 0x98, 0xe2, 0x72, 0x77, 0x55, 0xcb, 0x64, 0x62, 0xba, 0xf3, 0x28, 0x11, 0xf2, 0x04, 0x35, 0x15, 0x89, 0xe3, 0x8e, 0xe9, 0xd9, 0x10, 0xbb, 0x66, 0x29, 0x58, 0x17, 0xc3, 0x2d, 0x69, 0xb5, 0x3e, 0xd6, 0xea, 0xbf, 0xa2, 0xe0, 0x9f, 0xb3, 0x9d, 0x46, 0x43, 0x9a, 0x8a, 0x48, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3879 = { .name = "ecdsa_secp224r1_sha3_256_3879", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3879_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3879_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3879_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3880 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3880_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3880_msg[] = { 0x35, 0x35, 0x37, 0x36, 0x34, 0x30, 0x34, 0x34, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3880_sig[] = { 0x52, 0x24, 0xc5, 0x82, 0xac, 0x8f, 0x71, 0x01, 0xbf, 0x6f, 0xe1, 0x4a, 0x96, 0x17, 0xca, 0x0a, 0x98, 0x78, 0xdb, 0xbe, 0x02, 0x6a, 0xe2, 0x30, 0xd1, 0xe6, 0x3d, 0x0f, 0x61, 0xf0, 0xe4, 0x86, 0xa1, 0xb7, 0xcc, 0xe2, 0x28, 0x87, 0x4e, 0x7c, 0xcb, 0x6d, 0xc8, 0xdc, 0x95, 0x43, 0x4a, 0xfe, 0x6d, 0xbb, 0x74, 0x94, 0xb9, 0xf0, 0xe1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3880 = { .name = "ecdsa_secp224r1_sha3_256_3880", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3880_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3880_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3880_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3881 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3881_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3881_msg[] = { 0x36, 0x33, 0x34, 0x34, 0x39, 0x35, 0x36, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3881_sig[] = { 0x9d, 0x05, 0x47, 0x0e, 0x39, 0x88, 0xf7, 0x6e, 0x78, 0x26, 0x84, 0xff, 0xd7, 0x43, 0xbb, 0xd3, 0xa2, 0xbb, 0x68, 0x3b, 0x0f, 0x2c, 0xdd, 0xc8, 0x73, 0xff, 0x79, 0xed, 0x3a, 0x1a, 0x4e, 0x79, 0x6a, 0x78, 0x47, 0x5d, 0xb7, 0x00, 0x04, 0x07, 0x27, 0x9a, 0x66, 0x5a, 0x2c, 0x40, 0x67, 0x93, 0x11, 0x04, 0x15, 0xe5, 0x65, 0x5b, 0x66, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3881 = { .name = "ecdsa_secp224r1_sha3_256_3881", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3881_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3881_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3881_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3882 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3882_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3882_msg[] = { 0x34, 0x39, 0x34, 0x32, 0x38, 0x30, 0x39, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_256_3882_sig[] = { 0x74, 0xd5, 0xa5, 0xf8, 0x01, 0xab, 0x10, 0x3a, 0x8d, 0xe9, 0xce, 0xfe, 0x36, 0x57, 0x53, 0xe5, 0xe4, 0xe2, 0x4a, 0xae, 0x88, 0xb1, 0x8e, 0xad, 0x08, 0xf9, 0xe7, 0xe1, 0x22, 0x19, 0x5f, 0xf2, 0xb1, 0xdf, 0xf4, 0xf8, 0xef, 0x73, 0x82, 0xa5, 0x2f, 0x17, 0x7a, 0x76, 0x6a, 0x8f, 0x83, 0x9b, 0x65, 0xb7, 0x70, 0x76, 0x85, 0x0c, 0x5e, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3882 = { .name = "ecdsa_secp224r1_sha3_256_3882", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3882_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3882_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3882_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3883 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3883_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3883_msg[] = { 0x32, 0x36, 0x36, 0x35, 0x38, 0x31, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3883_sig[] = { 0xee, 0xe0, 0x09, 0x58, 0xac, 0xa3, 0xb5, 0xbc, 0x3f, 0xf4, 0x85, 0x33, 0xcc, 0xde, 0xc3, 0xeb, 0x56, 0x56, 0x63, 0xf1, 0x73, 0x36, 0x7c, 0xc9, 0x5a, 0x9f, 0x31, 0x4c, 0xeb, 0xc3, 0xed, 0x0d, 0x61, 0x0e, 0x0b, 0x9f, 0xc6, 0x3d, 0x81, 0x23, 0xb9, 0x27, 0xa3, 0x33, 0xaf, 0x6c, 0xcc, 0x2f, 0xc1, 0x40, 0x42, 0x91, 0x03, 0x6e, 0x51, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3883 = { .name = "ecdsa_secp224r1_sha3_256_3883", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3883_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3883_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3883_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3884 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3884_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3884_msg[] = { 0x33, 0x33, 0x33, 0x32, 0x32, 0x31, 0x34, 0x31, 0x31, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3884_sig[] = { 0x0f, 0x0a, 0x83, 0xfb, 0xdb, 0xb0, 0x5c, 0x61, 0x1f, 0x64, 0x30, 0xa8, 0xd2, 0xf4, 0x7c, 0x53, 0xe4, 0x45, 0x83, 0x1c, 0x87, 0x82, 0x03, 0xcb, 0x81, 0x51, 0x38, 0x78, 0xb4, 0xb1, 0x32, 0x1f, 0x09, 0xa3, 0xab, 0x5e, 0x4c, 0xc2, 0x7b, 0xef, 0xd8, 0x95, 0x06, 0x65, 0x1a, 0x4e, 0x40, 0xe2, 0x2a, 0xf6, 0x9e, 0x58, 0xb3, 0xc8, 0x86, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3884 = { .name = "ecdsa_secp224r1_sha3_256_3884", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3884_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3884_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3884_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3885 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3885_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3885_msg[] = { 0x36, 0x31, 0x36, 0x35, 0x32, 0x37, 0x37, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3885_sig[] = { 0x0a, 0x67, 0xda, 0x52, 0x5a, 0xb8, 0x69, 0xf3, 0xc6, 0xbb, 0x4d, 0xcc, 0x18, 0x21, 0xc2, 0xac, 0x06, 0x57, 0x28, 0xcd, 0x22, 0xd4, 0x9b, 0x0b, 0xa5, 0x81, 0x3b, 0xa8, 0xb7, 0x00, 0x65, 0xb1, 0x2a, 0x6d, 0x2b, 0xc5, 0x92, 0x78, 0x3a, 0x79, 0x42, 0xae, 0x0d, 0xae, 0x3a, 0xd1, 0xe7, 0xc6, 0xf2, 0x7c, 0xac, 0xfc, 0x2b, 0x48, 0xdd, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3885 = { .name = "ecdsa_secp224r1_sha3_256_3885", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3885_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3885_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3885_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3886 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3886_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3886_msg[] = { 0x32, 0x33, 0x35, 0x39, 0x39, 0x35, 0x35, 0x38, 0x31, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_256_3886_sig[] = { 0xb4, 0x1f, 0x01, 0xa5, 0xb7, 0x5f, 0xba, 0x48, 0x35, 0x79, 0x81, 0x56, 0xac, 0x88, 0x2e, 0x82, 0xa2, 0xe2, 0x98, 0x59, 0x96, 0x01, 0x32, 0x19, 0x5c, 0x1f, 0x7e, 0x91, 0xf4, 0x21, 0xfb, 0xa6, 0xd0, 0x06, 0x1b, 0x92, 0xf8, 0xab, 0x8e, 0xcb, 0xe7, 0xb5, 0x79, 0x1b, 0xc4, 0x3c, 0x51, 0x06, 0xc9, 0xac, 0x97, 0x47, 0xe5, 0xda, 0x67, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3886 = { .name = "ecdsa_secp224r1_sha3_256_3886", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3886_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3886_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3886_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3887 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3887_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3887_msg[] = { 0x32, 0x39, 0x31, 0x33, 0x36, 0x31, 0x39, 0x35, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3887_sig[] = { 0xe3, 0x16, 0x3b, 0x6d, 0xfd, 0x65, 0x85, 0xf5, 0x0a, 0xc9, 0x34, 0xbd, 0x25, 0xea, 0x86, 0x06, 0x5e, 0xff, 0x63, 0x76, 0x38, 0x7a, 0x56, 0xcc, 0x21, 0x08, 0x97, 0xde, 0x05, 0xd9, 0x3a, 0x2d, 0xee, 0x9a, 0x55, 0x22, 0x8d, 0xbc, 0x3d, 0xf2, 0x60, 0x15, 0x2c, 0x45, 0x8f, 0x8d, 0xd6, 0xf7, 0x2b, 0x1d, 0x57, 0xf3, 0x7f, 0x6f, 0x68, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3887 = { .name = "ecdsa_secp224r1_sha3_256_3887", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3887_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3887_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3887_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3888 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3888_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3888_msg[] = { 0x31, 0x36, 0x32, 0x30, 0x39, 0x30, 0x33, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3888_sig[] = { 0x27, 0xa2, 0xc5, 0xdb, 0x14, 0xc6, 0x0f, 0x71, 0xc3, 0xf0, 0x81, 0x96, 0x35, 0x6e, 0xa7, 0x09, 0x4d, 0xb6, 0x55, 0x9a, 0x4c, 0x5c, 0x7a, 0xb0, 0x97, 0xaa, 0xd7, 0x99, 0x75, 0x57, 0x41, 0xa7, 0x77, 0xad, 0x41, 0x9b, 0x5c, 0x18, 0x53, 0xbc, 0x6f, 0x8d, 0xa8, 0x9c, 0x28, 0x2a, 0x67, 0xf7, 0x1c, 0xd1, 0xfc, 0x3a, 0xbf, 0xe6, 0xef, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3888 = { .name = "ecdsa_secp224r1_sha3_256_3888", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3888_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3888_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3888_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3889 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3889_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3889_msg[] = { 0x33, 0x33, 0x36, 0x33, 0x31, 0x30, 0x32, 0x38, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_256_3889_sig[] = { 0x6b, 0x5c, 0x4a, 0x21, 0x23, 0x72, 0x1c, 0xf7, 0x4e, 0x15, 0x1a, 0x3f, 0x3d, 0x97, 0x88, 0x0d, 0x19, 0x8c, 0xd7, 0x85, 0x0a, 0x49, 0x0b, 0x37, 0x36, 0xed, 0x28, 0xa4, 0x4b, 0x01, 0x07, 0xb4, 0xc7, 0xf3, 0x2a, 0x46, 0x31, 0x51, 0x60, 0xb3, 0x9f, 0x95, 0xd2, 0xbe, 0xc4, 0x69, 0x98, 0x19, 0x60, 0xee, 0xaf, 0x99, 0xf3, 0x0e, 0x8d, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3889 = { .name = "ecdsa_secp224r1_sha3_256_3889", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3889_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3889_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3889_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3890 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3890_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3890_msg[] = { 0x36, 0x32, 0x37, 0x37, 0x34, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_256_3890_sig[] = { 0x21, 0x9a, 0x8f, 0x9d, 0x67, 0x01, 0xd7, 0xb5, 0x1d, 0x82, 0xb2, 0x93, 0xd2, 0xf0, 0xce, 0x48, 0x47, 0xe1, 0x3a, 0xbe, 0x9d, 0xfe, 0x8d, 0xe4, 0x26, 0x16, 0x40, 0x40, 0x33, 0x62, 0x3e, 0x69, 0x80, 0x63, 0xbe, 0xcd, 0x8f, 0x28, 0x44, 0x5d, 0xdb, 0x16, 0xca, 0xed, 0xfb, 0xe0, 0x93, 0xa2, 0xc1, 0xd8, 0x99, 0x25, 0xc2, 0x8a, 0x12, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3890 = { .name = "ecdsa_secp224r1_sha3_256_3890", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3890_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3890_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3890_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3891 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3891_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3891_msg[] = { 0x33, 0x38, 0x35, 0x36, 0x37, 0x39, 0x38, 0x31, 0x34, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_256_3891_sig[] = { 0xa0, 0x67, 0x65, 0x19, 0xc1, 0x27, 0xf5, 0x6b, 0x02, 0x56, 0x95, 0x32, 0x6e, 0xb6, 0x8c, 0x54, 0x38, 0xb5, 0xd4, 0x73, 0xc6, 0xb8, 0x1b, 0x25, 0xd5, 0x37, 0x93, 0xc2, 0x62, 0xce, 0x33, 0x31, 0x5e, 0xa1, 0xae, 0x83, 0xdc, 0x48, 0xe7, 0xe7, 0x74, 0xd7, 0x01, 0xdc, 0x27, 0xb3, 0x64, 0x48, 0x4e, 0x31, 0x33, 0xde, 0x24, 0xf0, 0x8e, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3891 = { .name = "ecdsa_secp224r1_sha3_256_3891", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3891_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3891_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3891_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3892 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3892_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3892_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x38, 0x30, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3892_sig[] = { 0xb1, 0x6c, 0xb8, 0x31, 0x27, 0x7a, 0x40, 0x11, 0x55, 0x13, 0x4f, 0xb3, 0x0d, 0x69, 0x38, 0xb9, 0x91, 0x86, 0x65, 0xaf, 0x7e, 0x59, 0x53, 0x0f, 0xcd, 0x9c, 0xc0, 0xb2, 0xf8, 0x5a, 0x29, 0xc7, 0x9b, 0x30, 0xab, 0x6d, 0x94, 0x39, 0xea, 0xec, 0xe5, 0x90, 0x1d, 0x65, 0x77, 0x4a, 0xe1, 0x89, 0x3a, 0xc6, 0x03, 0xe3, 0x30, 0x8c, 0x29, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3892 = { .name = "ecdsa_secp224r1_sha3_256_3892", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3892_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3892_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3892_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3893 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3893_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3893_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x37, 0x33, 0x39, 0x34, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3893_sig[] = { 0x4e, 0xb1, 0xf5, 0xdd, 0x75, 0x61, 0x5b, 0xda, 0x83, 0x68, 0xb9, 0x45, 0x66, 0xdf, 0xdd, 0xa9, 0xd7, 0xd8, 0x91, 0x7f, 0x18, 0x63, 0xd3, 0x60, 0x40, 0x59, 0xfb, 0x4f, 0x80, 0xb5, 0xe2, 0x43, 0xbe, 0x62, 0x19, 0x35, 0x0f, 0x60, 0xaf, 0x1b, 0x50, 0x57, 0x8f, 0x3d, 0x62, 0x04, 0xb5, 0xef, 0xcd, 0xa1, 0x0c, 0xdc, 0x33, 0x8d, 0x08, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3893 = { .name = "ecdsa_secp224r1_sha3_256_3893", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3893_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3893_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3893_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3894 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3894_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3894_msg[] = { 0x35, 0x34, 0x32, 0x37, 0x31, 0x31, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3894_sig[] = { 0x60, 0x02, 0x82, 0xc9, 0x01, 0xcc, 0x3a, 0x4c, 0x85, 0x96, 0xa0, 0x59, 0xb5, 0xac, 0x21, 0x7a, 0x9b, 0x99, 0x9f, 0x0d, 0x3b, 0x69, 0xb2, 0x4b, 0x39, 0x17, 0xd1, 0xcc, 0xf1, 0xf4, 0x01, 0xcd, 0x8c, 0xf1, 0x06, 0x99, 0x22, 0x44, 0xb3, 0x67, 0x4e, 0xd9, 0xe5, 0x59, 0x09, 0xb8, 0x68, 0x33, 0x57, 0xbe, 0x44, 0xfd, 0x48, 0xa1, 0xc3, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3894 = { .name = "ecdsa_secp224r1_sha3_256_3894", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3894_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3894_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3894_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3895 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3895_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3895_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x30, 0x33, 0x34, 0x33, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3895_sig[] = { 0x54, 0xc6, 0x66, 0xa3, 0x0d, 0x72, 0xa0, 0x47, 0x5a, 0x4c, 0xf0, 0xfe, 0x0b, 0xb5, 0x8f, 0x13, 0xaa, 0xdb, 0x36, 0x1f, 0xfb, 0xa8, 0x93, 0x25, 0xc5, 0x6e, 0xc4, 0x8b, 0x91, 0xf3, 0x6a, 0x9f, 0xca, 0x04, 0x03, 0x43, 0xfc, 0xc2, 0x9c, 0x7f, 0xed, 0x35, 0xad, 0xb9, 0xdb, 0x9a, 0x2f, 0x17, 0xc1, 0xf3, 0x5d, 0xe4, 0xaf, 0xcc, 0x8f, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3895 = { .name = "ecdsa_secp224r1_sha3_256_3895", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3895_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3895_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3895_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3896 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3896_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3896_msg[] = { 0x31, 0x39, 0x39, 0x39, 0x38, 0x32, 0x31, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_256_3896_sig[] = { 0xff, 0xea, 0x34, 0x64, 0x81, 0xa3, 0x7d, 0x7f, 0x27, 0x28, 0xe2, 0xbb, 0xe3, 0x50, 0x83, 0xbc, 0xba, 0xce, 0x7b, 0x91, 0xe0, 0x6d, 0xa2, 0xad, 0x18, 0x25, 0xdb, 0xdf, 0x06, 0xcf, 0x6e, 0xee, 0x77, 0xea, 0x7a, 0x4d, 0xa0, 0xed, 0x79, 0xa8, 0xa1, 0x67, 0xad, 0xec, 0x51, 0xc8, 0xa2, 0xde, 0x90, 0x6f, 0x3f, 0x7f, 0xec, 0xde, 0x79, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3896 = { .name = "ecdsa_secp224r1_sha3_256_3896", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3896_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3896_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3896_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3897 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3897_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3897_msg[] = { 0x31, 0x39, 0x37, 0x31, 0x32, 0x30, 0x39, 0x32, 0x36, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_256_3897_sig[] = { 0x38, 0xfa, 0x40, 0xa5, 0x7e, 0x4a, 0x04, 0x02, 0x4c, 0x89, 0x90, 0x51, 0xcc, 0x80, 0x80, 0xc5, 0x26, 0x1d, 0xde, 0x66, 0xea, 0x59, 0xfe, 0x53, 0x2e, 0x85, 0x20, 0x13, 0x3e, 0x99, 0xd1, 0x23, 0xe5, 0x96, 0xe9, 0x93, 0xd6, 0x77, 0x68, 0x3b, 0xd2, 0x58, 0x89, 0x54, 0x91, 0x55, 0xed, 0xae, 0x09, 0x8e, 0x59, 0xa2, 0x9f, 0xe7, 0xd9, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3897 = { .name = "ecdsa_secp224r1_sha3_256_3897", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3897_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3897_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3897_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3898 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3898_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3898_msg[] = { 0x33, 0x35, 0x37, 0x31, 0x38, 0x33, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_256_3898_sig[] = { 0x7f, 0x62, 0xa9, 0x85, 0xc5, 0xbb, 0xde, 0x0e, 0x11, 0xe0, 0x25, 0x0a, 0x97, 0xd7, 0x3f, 0xa3, 0x80, 0x11, 0xbb, 0x83, 0xb6, 0xfa, 0x2d, 0x98, 0x36, 0xbf, 0x5c, 0x45, 0x3b, 0xd8, 0x50, 0x83, 0x2c, 0xc3, 0x05, 0xe6, 0xb7, 0xd9, 0x56, 0x6d, 0x36, 0x95, 0x1a, 0xc4, 0x79, 0x4b, 0x2d, 0x08, 0xff, 0x71, 0x2b, 0x18, 0xb0, 0xaf, 0x65, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3898 = { .name = "ecdsa_secp224r1_sha3_256_3898", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3898_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3898_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3898_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3899 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3899_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3899_msg[] = { 0x38, 0x36, 0x38, 0x32, 0x32, 0x36, 0x39, 0x38, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3899_sig[] = { 0x31, 0x1f, 0x06, 0x35, 0x76, 0xc8, 0x37, 0x3b, 0x96, 0xcc, 0x16, 0x52, 0xab, 0x3b, 0xe3, 0xa5, 0x8e, 0xad, 0xea, 0x78, 0x6e, 0x75, 0xb1, 0x7a, 0x04, 0xc2, 0xbc, 0xa0, 0xbd, 0xb7, 0x09, 0x6d, 0x67, 0x5d, 0x10, 0x24, 0x29, 0x17, 0x02, 0xdd, 0x99, 0x1d, 0x56, 0x06, 0xc1, 0x25, 0xe6, 0x12, 0x95, 0x54, 0x92, 0x2e, 0x02, 0x44, 0x4f, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3899 = { .name = "ecdsa_secp224r1_sha3_256_3899", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3899_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3899_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3899_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3900 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3900_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3900_msg[] = { 0x32, 0x35, 0x34, 0x38, 0x38, 0x35, 0x36, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_256_3900_sig[] = { 0x65, 0xdb, 0x63, 0xa6, 0x63, 0xe3, 0x5f, 0xb9, 0x7e, 0xa8, 0xf0, 0x75, 0x2a, 0x31, 0x90, 0x13, 0x41, 0x02, 0xf4, 0xfb, 0xbe, 0xdd, 0x14, 0xbb, 0x5c, 0x13, 0x49, 0xa8, 0xab, 0xdf, 0xe6, 0x8c, 0x7f, 0x0c, 0x67, 0x4f, 0x30, 0x24, 0x88, 0xbc, 0x03, 0x05, 0x58, 0xd3, 0x56, 0x49, 0xf9, 0xa9, 0xc6, 0x9d, 0x58, 0x01, 0xa5, 0x75, 0xcb, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3900 = { .name = "ecdsa_secp224r1_sha3_256_3900", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3900_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3900_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3900_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3901 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3901_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3901_msg[] = { 0x34, 0x39, 0x39, 0x35, 0x37, 0x30, 0x31, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_256_3901_sig[] = { 0x07, 0x5c, 0xee, 0xea, 0xa2, 0xff, 0xbe, 0x5d, 0xc1, 0x73, 0xd8, 0x4d, 0xf7, 0x11, 0x45, 0xa0, 0x56, 0x50, 0x0a, 0x90, 0xf8, 0xfb, 0x90, 0x2a, 0x24, 0xc0, 0xd3, 0x63, 0x68, 0x8c, 0xef, 0xcf, 0x26, 0xf5, 0x84, 0xf8, 0xd5, 0x98, 0xda, 0x2b, 0x96, 0x0a, 0x51, 0x2b, 0x6b, 0x65, 0xa4, 0x25, 0xed, 0x53, 0x6a, 0x4b, 0xd5, 0x70, 0xcf, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3901 = { .name = "ecdsa_secp224r1_sha3_256_3901", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3901_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3901_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3901_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3902 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3902_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3902_msg[] = { 0x32, 0x34, 0x35, 0x36, 0x36, 0x38, 0x31, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_256_3902_sig[] = { 0xf8, 0x40, 0x74, 0xb4, 0x2b, 0x14, 0xac, 0xb8, 0x71, 0x5a, 0xb2, 0x29, 0xe4, 0x26, 0x1c, 0x09, 0xb0, 0x96, 0xa5, 0x8b, 0x69, 0xf5, 0x10, 0xf5, 0xf4, 0x91, 0xba, 0x6e, 0x30, 0x4f, 0xe4, 0x12, 0x9c, 0x6d, 0xbe, 0x48, 0x1c, 0xc9, 0x2d, 0x9d, 0xcb, 0xea, 0x98, 0x3e, 0x40, 0xea, 0xfe, 0xf1, 0x7e, 0xa4, 0x60, 0x39, 0x60, 0x8a, 0x14, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3902 = { .name = "ecdsa_secp224r1_sha3_256_3902", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3902_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3902_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3902_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3903 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3903_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3903_msg[] = { 0x34, 0x31, 0x38, 0x35, 0x33, 0x37, 0x31, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3903_sig[] = { 0xad, 0xa0, 0x80, 0xec, 0xff, 0x37, 0xca, 0x81, 0x8f, 0x48, 0xdd, 0x5c, 0x0e, 0xba, 0xb7, 0x8a, 0x64, 0x5e, 0x97, 0x3e, 0x13, 0x84, 0x35, 0x63, 0x72, 0x37, 0xf8, 0x70, 0x4d, 0x85, 0xeb, 0x19, 0x50, 0x89, 0xc8, 0x3c, 0x92, 0xb4, 0x83, 0xa5, 0x3b, 0x03, 0x6b, 0x33, 0x05, 0x0a, 0xa1, 0x4b, 0xa2, 0x44, 0xeb, 0x48, 0xa0, 0xf9, 0x7d, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3903 = { .name = "ecdsa_secp224r1_sha3_256_3903", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3903_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3903_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3903_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3904 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3904_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3904_msg[] = { 0x37, 0x32, 0x37, 0x38, 0x34, 0x39, 0x30, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3904_sig[] = { 0xa7, 0xc2, 0x2c, 0x1d, 0x68, 0xe8, 0xbd, 0x56, 0x35, 0x20, 0xcf, 0xc7, 0x49, 0xd7, 0xde, 0x43, 0xd9, 0xae, 0x04, 0x51, 0x87, 0xa2, 0x42, 0x41, 0x68, 0xea, 0xac, 0xf3, 0x69, 0x59, 0xae, 0x2c, 0x1f, 0xe3, 0x0b, 0x45, 0xb0, 0x49, 0xc4, 0xa5, 0xe4, 0x18, 0x65, 0x47, 0x11, 0xf2, 0x1c, 0xbb, 0x92, 0x5d, 0xce, 0x89, 0xe5, 0x1a, 0x9a, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3904 = { .name = "ecdsa_secp224r1_sha3_256_3904", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3904_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3904_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_256_3904_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3905 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3905_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3905_msg[] = { 0x31, 0x35, 0x36, 0x32, 0x38, 0x31, 0x39, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_256_3905_sig[] = { 0x2c, 0xe1, 0x5f, 0x3b, 0xc4, 0xf8, 0x27, 0xe2, 0xcd, 0x5f, 0x59, 0xb7, 0x98, 0x0f, 0x69, 0x4e, 0x91, 0xc4, 0xb6, 0xa7, 0xb7, 0x7c, 0x61, 0x6f, 0x17, 0x12, 0x11, 0x36, 0x3f, 0x71, 0x76, 0x6a, 0xc9, 0xe5, 0x2b, 0x98, 0xf5, 0x8a, 0x68, 0x95, 0x11, 0x2e, 0x43, 0xb7, 0x59, 0x25, 0x18, 0x3a, 0x29, 0xa7, 0x3b, 0xd8, 0x35, 0xf9, 0x55, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3905 = { .name = "ecdsa_secp224r1_sha3_256_3905", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3905_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3905_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_256_3905_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3906 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3906_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3906_msg[] = { 0x32, 0x31, 0x38, 0x37, 0x39, 0x39, 0x32, 0x38, 0x33, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3906_sig[] = { 0xe6, 0x9b, 0x6b, 0x3c, 0x9a, 0x08, 0xda, 0x2a, 0x90, 0xd5, 0x9a, 0xc5, 0x45, 0x4c, 0x10, 0x24, 0x6b, 0xd8, 0xde, 0xc0, 0x65, 0x90, 0x42, 0x03, 0x91, 0x14, 0x06, 0x93, 0x52, 0xd0, 0x90, 0xe5, 0x4b, 0x79, 0xfa, 0x78, 0x0b, 0x46, 0x00, 0x0a, 0x07, 0x0b, 0x1a, 0x78, 0xba, 0x97, 0x97, 0xb3, 0x4b, 0x17, 0x61, 0xf0, 0x94, 0x08, 0xc8, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3906 = { .name = "ecdsa_secp224r1_sha3_256_3906", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3906_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3906_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_256_3906_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3907 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3907_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3907_sig[] = { 0xc1, 0xa5, 0x27, 0xa3, 0xef, 0xe3, 0xb3, 0x97, 0xbe, 0xf8, 0x89, 0xb6, 0x99, 0xb1, 0x92, 0xa7, 0x66, 0x3d, 0x9d, 0x60, 0x44, 0x9d, 0xd9, 0xec, 0xcb, 0xfa, 0x8e, 0x55, 0x7b, 0xa2, 0xde, 0x03, 0x47, 0xd0, 0x89, 0x5c, 0x6a, 0x24, 0xb2, 0x6e, 0x80, 0x04, 0x45, 0x86, 0xf6, 0x71, 0x8b, 0xee, 0xab, 0xc3, 0x16, 0xf1, 0x8c, 0x88, 0xf0, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3907 = { .name = "ecdsa_secp224r1_sha3_256_3907", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3907_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3907_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3907_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 293 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3908 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3908_pubkey[] = { 0x8e, 0x76, 0x1a, 0x8f, 0xb0, 0xae, 0x0f, 0x4d, 0x07, 0x7c, 0x83, 0x31, 0x03, 0x91, 0x86, 0xba, 0xca, 0xfa, 0xc7, 0x4a, 0xd2, 0x5c, 0x49, 0x97, 0x87, 0xd0, 0x9e, 0xf4, 0xaf, 0x5e, 0x80, 0x29, 0x21, 0xde, 0xf0, 0x7b, 0x85, 0xdb, 0xac, 0xa1, 0x11, 0x46, 0x38, 0x2c, 0xc4, 0x12, 0x17, 0x67, 0xd8, 0xcd, 0x0f, 0x07, 0x98, 0xe2, 0xbc, 0x0a, }; static const unsigned char ecdsa_secp224r1_sha3_256_3908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3908_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3908 = { .name = "ecdsa_secp224r1_sha3_256_3908", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3908_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3908_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3908_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 294 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3909 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3909_pubkey[] = { 0x8e, 0x76, 0x1a, 0x8f, 0xb0, 0xae, 0x0f, 0x4d, 0x07, 0x7c, 0x83, 0x31, 0x03, 0x91, 0x86, 0xba, 0xca, 0xfa, 0xc7, 0x4a, 0xd2, 0x5c, 0x49, 0x97, 0x87, 0xd0, 0x9e, 0xf4, 0xaf, 0x5e, 0x80, 0x29, 0x21, 0xde, 0xf0, 0x7b, 0x85, 0xdb, 0xac, 0xa1, 0x11, 0x46, 0x38, 0x2c, 0xc4, 0x12, 0x17, 0x67, 0xd8, 0xcd, 0x0f, 0x07, 0x98, 0xe2, 0xbc, 0x0a, }; static const unsigned char ecdsa_secp224r1_sha3_256_3909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3909_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3909 = { .name = "ecdsa_secp224r1_sha3_256_3909", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3909_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3909_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3909_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 295 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3910 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3910_pubkey[] = { 0xca, 0x50, 0x63, 0x0a, 0x87, 0x2a, 0xdc, 0xd5, 0x58, 0xc3, 0x88, 0xca, 0x3b, 0x02, 0x4c, 0xb5, 0x9e, 0x12, 0x99, 0xbd, 0x45, 0xd9, 0xe3, 0x24, 0xf6, 0x05, 0xe2, 0x61, 0x3c, 0x69, 0xa7, 0x0c, 0x60, 0xf4, 0x9e, 0x04, 0xb3, 0x8e, 0x37, 0x38, 0xc5, 0xe5, 0x91, 0xed, 0xaa, 0x51, 0xd7, 0x97, 0x4d, 0xe9, 0xe7, 0x27, 0x25, 0xd8, 0xa6, 0x90, }; static const unsigned char ecdsa_secp224r1_sha3_256_3910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3910_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3910 = { .name = "ecdsa_secp224r1_sha3_256_3910", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3910_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3910_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3910_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 296 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3911 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3911_pubkey[] = { 0x19, 0x77, 0xaa, 0xc0, 0xb9, 0x1c, 0x2b, 0x65, 0xf5, 0x80, 0xa5, 0xf3, 0x3d, 0x80, 0x45, 0xa3, 0xa5, 0x6e, 0x3a, 0x3a, 0xb4, 0x8d, 0x86, 0x13, 0xf3, 0xac, 0x08, 0x44, 0xc3, 0x15, 0xf3, 0x7b, 0x48, 0xcb, 0x77, 0x16, 0x35, 0xe1, 0x6a, 0xfb, 0xca, 0x84, 0x94, 0x8b, 0x9e, 0x4e, 0x35, 0x69, 0x0a, 0x09, 0x90, 0xbd, 0xdc, 0x6c, 0xab, 0x9a, }; static const unsigned char ecdsa_secp224r1_sha3_256_3911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3911_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3911 = { .name = "ecdsa_secp224r1_sha3_256_3911", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3911_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3911_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3911_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 297 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3912 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3912_pubkey[] = { 0x04, 0x1e, 0xd3, 0xf4, 0xd3, 0x72, 0xc3, 0xb7, 0xc4, 0x27, 0x4e, 0x15, 0xc1, 0xa4, 0xc2, 0xe5, 0x20, 0x11, 0xa5, 0xea, 0x68, 0x6d, 0xe2, 0x3b, 0x3b, 0x27, 0xbf, 0x3f, 0x6d, 0x8d, 0x6e, 0xbf, 0xa6, 0x3b, 0x74, 0x67, 0xa6, 0x91, 0xd6, 0xda, 0x25, 0x9d, 0x93, 0x2e, 0xce, 0x80, 0xb6, 0xba, 0x94, 0x6d, 0x99, 0x2c, 0xa7, 0x8c, 0x3a, 0xab, }; static const unsigned char ecdsa_secp224r1_sha3_256_3912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3912_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3912 = { .name = "ecdsa_secp224r1_sha3_256_3912", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3912_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3912_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3912_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 298 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3913 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3913_pubkey[] = { 0x67, 0x31, 0xbd, 0x2f, 0x79, 0x69, 0xfe, 0xbf, 0x93, 0xfa, 0x23, 0x82, 0xbd, 0x4f, 0xdc, 0x93, 0xdd, 0xee, 0xde, 0x8f, 0x2d, 0xea, 0xc4, 0xc3, 0xab, 0xf1, 0xce, 0x7a, 0x19, 0x51, 0x6b, 0x15, 0x72, 0x7d, 0x11, 0x1c, 0x78, 0x6b, 0x39, 0xba, 0x11, 0x02, 0x6d, 0x25, 0xa2, 0x20, 0xb4, 0xfe, 0x52, 0xc5, 0xf5, 0x6f, 0xd4, 0xca, 0x5d, 0xec, }; static const unsigned char ecdsa_secp224r1_sha3_256_3913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3913_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3913 = { .name = "ecdsa_secp224r1_sha3_256_3913", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3913_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3913_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3913_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 299 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3914 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3914_pubkey[] = { 0x4a, 0xa4, 0x66, 0x7e, 0xac, 0xd6, 0x78, 0x8f, 0x17, 0xeb, 0xde, 0x59, 0xe7, 0x8d, 0xde, 0x17, 0x7b, 0x2b, 0x37, 0x89, 0x45, 0xba, 0x48, 0x7d, 0x32, 0x55, 0x67, 0xd8, 0x5d, 0x88, 0x7d, 0x32, 0xe8, 0xcf, 0x6d, 0x51, 0x82, 0x43, 0x3d, 0x8f, 0x81, 0xc9, 0x45, 0xb4, 0x35, 0x6d, 0x3e, 0xbc, 0x0e, 0x97, 0x0d, 0xd0, 0xa9, 0x03, 0x53, 0x87, }; static const unsigned char ecdsa_secp224r1_sha3_256_3914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3914_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3914 = { .name = "ecdsa_secp224r1_sha3_256_3914", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3914_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3914_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3914_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 300 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3915 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3915_pubkey[] = { 0x03, 0x22, 0x43, 0x5e, 0xf8, 0x55, 0x7d, 0xa9, 0x30, 0x6c, 0x64, 0x5a, 0x0b, 0x61, 0x4c, 0x6f, 0x6c, 0xe9, 0x8d, 0x85, 0x96, 0x97, 0x78, 0x4c, 0xf7, 0x4f, 0x2f, 0x23, 0xa8, 0xcd, 0x9e, 0x24, 0x3e, 0x90, 0x88, 0x17, 0x01, 0x33, 0xbd, 0x81, 0xeb, 0x6c, 0xd2, 0x85, 0x71, 0xfc, 0xf2, 0x07, 0x50, 0x98, 0x19, 0xf4, 0x43, 0xe5, 0xbb, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3915_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3915 = { .name = "ecdsa_secp224r1_sha3_256_3915", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3915_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3915_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3915_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 301 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3916 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3916_pubkey[] = { 0x03, 0x22, 0x43, 0x5e, 0xf8, 0x55, 0x7d, 0xa9, 0x30, 0x6c, 0x64, 0x5a, 0x0b, 0x61, 0x4c, 0x6f, 0x6c, 0xe9, 0x8d, 0x85, 0x96, 0x97, 0x78, 0x4c, 0xf7, 0x4f, 0x2f, 0x23, 0xa8, 0xcd, 0x9e, 0x24, 0x3e, 0x90, 0x88, 0x17, 0x01, 0x33, 0xbd, 0x81, 0xeb, 0x6c, 0xd2, 0x85, 0x71, 0xfc, 0xf2, 0x07, 0x50, 0x98, 0x19, 0xf4, 0x43, 0xe5, 0xbb, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3916_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3916 = { .name = "ecdsa_secp224r1_sha3_256_3916", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3916_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3916_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3916_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 302 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3917 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3917_pubkey[] = { 0x57, 0x19, 0xbd, 0x78, 0x77, 0x63, 0x67, 0xff, 0xea, 0x95, 0xb9, 0x31, 0x3e, 0xc8, 0x25, 0xc7, 0x0a, 0x32, 0x52, 0x32, 0x6a, 0xa1, 0xec, 0x66, 0xbc, 0x20, 0x7b, 0xd3, 0x32, 0x7a, 0xe0, 0x55, 0x56, 0xf6, 0x2f, 0x56, 0x50, 0xdb, 0x89, 0x8b, 0x31, 0x6e, 0x68, 0x9b, 0x5c, 0x37, 0x7a, 0x8a, 0x64, 0xd7, 0x43, 0xa8, 0x9a, 0xb4, 0x15, 0x3b, }; static const unsigned char ecdsa_secp224r1_sha3_256_3917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3917_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3917 = { .name = "ecdsa_secp224r1_sha3_256_3917", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3917_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3917_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3917_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 303 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3918 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3918_pubkey[] = { 0xbb, 0x1e, 0x97, 0xc4, 0xb5, 0xbe, 0xde, 0xc0, 0xaf, 0x97, 0x16, 0x9d, 0xb0, 0x6d, 0x04, 0x06, 0x47, 0xbd, 0x40, 0xfa, 0x78, 0x53, 0xc8, 0xe8, 0xd0, 0xad, 0x43, 0x0b, 0x10, 0x25, 0xec, 0x67, 0x7e, 0x90, 0x05, 0x74, 0x85, 0x3c, 0xc5, 0xce, 0x76, 0x1a, 0x92, 0xba, 0xe9, 0x29, 0xec, 0x86, 0x07, 0x6a, 0xcc, 0x48, 0x59, 0xbe, 0xac, 0xc8, }; static const unsigned char ecdsa_secp224r1_sha3_256_3918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3918_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3918 = { .name = "ecdsa_secp224r1_sha3_256_3918", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3918_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3918_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3918_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 304 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3919 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3919_pubkey[] = { 0xb0, 0x0f, 0xf7, 0xe1, 0x92, 0x5b, 0x97, 0x17, 0x90, 0x3a, 0x05, 0xd4, 0x0c, 0xe9, 0x86, 0x0e, 0xd1, 0x2e, 0xbe, 0xd8, 0xc6, 0x86, 0xe0, 0x5a, 0x92, 0x05, 0xa9, 0x76, 0x11, 0x0e, 0xe9, 0x4a, 0x9a, 0x32, 0x67, 0xab, 0x15, 0x65, 0xc6, 0x6c, 0xdd, 0x5e, 0xd2, 0x84, 0x4c, 0xcc, 0x5c, 0x6a, 0x7e, 0x78, 0xe4, 0x82, 0x1b, 0x95, 0x4f, 0x98, }; static const unsigned char ecdsa_secp224r1_sha3_256_3919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3919_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3919 = { .name = "ecdsa_secp224r1_sha3_256_3919", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3919_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3919_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3919_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 305 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3920 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3920_pubkey[] = { 0xb4, 0xf1, 0x8d, 0x03, 0x10, 0x97, 0xf1, 0x79, 0xef, 0xfa, 0xd1, 0x46, 0xf5, 0xfa, 0x7e, 0x85, 0x74, 0xe6, 0x49, 0x3d, 0xc4, 0x13, 0x3a, 0x7e, 0x6b, 0xff, 0x67, 0x63, 0xb1, 0x1a, 0xd9, 0xab, 0xcd, 0xe8, 0xa9, 0x3b, 0x78, 0xb6, 0xbc, 0x1f, 0x71, 0xd9, 0x61, 0x68, 0x71, 0x22, 0x63, 0xf6, 0xfd, 0xeb, 0x1d, 0xa9, 0xb1, 0x19, 0x39, 0x12, }; static const unsigned char ecdsa_secp224r1_sha3_256_3920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3920_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3920 = { .name = "ecdsa_secp224r1_sha3_256_3920", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3920_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3920_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3920_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 306 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3921 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3921_pubkey[] = { 0xa3, 0x52, 0x40, 0xc6, 0x8e, 0x8f, 0x4e, 0xce, 0xc6, 0x40, 0xad, 0x2c, 0xc5, 0x45, 0x33, 0x27, 0x5c, 0xd6, 0xb5, 0x4f, 0x48, 0x04, 0x76, 0xe0, 0x41, 0x2f, 0x19, 0x1e, 0x7c, 0x4b, 0xde, 0xf2, 0xaa, 0x25, 0x61, 0xfb, 0xb2, 0xd2, 0x6f, 0x90, 0x34, 0x83, 0x62, 0x65, 0xb8, 0x1e, 0x55, 0x5d, 0x56, 0xb6, 0xf4, 0x46, 0xb6, 0xb8, 0x63, 0xa8, }; static const unsigned char ecdsa_secp224r1_sha3_256_3921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3921_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3921 = { .name = "ecdsa_secp224r1_sha3_256_3921", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3921_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3921_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3921_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 307 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3922 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3922_pubkey[] = { 0xef, 0x67, 0xcf, 0xa9, 0x5e, 0xba, 0x7f, 0x21, 0xe4, 0x7e, 0x9f, 0x80, 0xe6, 0x24, 0xd0, 0x62, 0x97, 0xe3, 0xc5, 0x16, 0xb5, 0xd4, 0x81, 0x0b, 0xc0, 0x32, 0x64, 0xf4, 0x7a, 0xe0, 0x76, 0x45, 0x3e, 0xd0, 0x6b, 0xc4, 0x39, 0x99, 0xb7, 0x13, 0xaa, 0xfd, 0x0e, 0xb2, 0xaa, 0x81, 0x92, 0xf6, 0x1a, 0x61, 0xd6, 0x56, 0x0d, 0x66, 0xa3, 0xd8, }; static const unsigned char ecdsa_secp224r1_sha3_256_3922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3922_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3922 = { .name = "ecdsa_secp224r1_sha3_256_3922", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3922_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3922_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3922_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 308 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3923 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3923_pubkey[] = { 0xff, 0x16, 0xdb, 0xdd, 0x13, 0x35, 0xd3, 0xd3, 0x1a, 0xcd, 0x1f, 0xea, 0x3c, 0xbd, 0xd5, 0xfa, 0xfb, 0xcf, 0xb1, 0x33, 0x67, 0xcc, 0x58, 0x31, 0x57, 0x4a, 0x0b, 0xae, 0x81, 0x76, 0x3f, 0xfb, 0xd6, 0xbc, 0x87, 0x20, 0xd4, 0x6e, 0x7e, 0xe3, 0xcd, 0xa0, 0x1b, 0x98, 0xa0, 0xcf, 0x47, 0x98, 0x16, 0xea, 0x46, 0xbe, 0xa8, 0xaa, 0xe1, 0x99, }; static const unsigned char ecdsa_secp224r1_sha3_256_3923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3923_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3923 = { .name = "ecdsa_secp224r1_sha3_256_3923", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3923_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3923_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3923_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 309 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3924 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3924_pubkey[] = { 0x9c, 0x88, 0xd3, 0x4b, 0xcd, 0xc7, 0x0a, 0x09, 0xbd, 0x9c, 0xb4, 0xaa, 0xb4, 0xe4, 0x0f, 0xa9, 0x00, 0x47, 0x2d, 0x63, 0x5c, 0x4e, 0xbd, 0x23, 0x66, 0xe5, 0xd4, 0xb9, 0xec, 0xc5, 0x4c, 0x3d, 0x44, 0x71, 0x49, 0x53, 0x76, 0x6b, 0xbb, 0x12, 0x57, 0xa3, 0x58, 0x0a, 0x2a, 0xa8, 0x51, 0x70, 0xe4, 0x18, 0x96, 0x9b, 0xa3, 0xa6, 0x68, 0x41, }; static const unsigned char ecdsa_secp224r1_sha3_256_3924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3924_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3924 = { .name = "ecdsa_secp224r1_sha3_256_3924", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3924_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3924_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3924_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 310 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3925 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3925_pubkey[] = { 0x9c, 0x88, 0xd3, 0x4b, 0xcd, 0xc7, 0x0a, 0x09, 0xbd, 0x9c, 0xb4, 0xaa, 0xb4, 0xe4, 0x0f, 0xa9, 0x00, 0x47, 0x2d, 0x63, 0x5c, 0x4e, 0xbd, 0x23, 0x66, 0xe5, 0xd4, 0xb9, 0xec, 0xc5, 0x4c, 0x3d, 0x44, 0x71, 0x49, 0x53, 0x76, 0x6b, 0xbb, 0x12, 0x57, 0xa3, 0x58, 0x0a, 0x2a, 0xa8, 0x51, 0x70, 0xe4, 0x18, 0x96, 0x9b, 0xa3, 0xa6, 0x68, 0x41, }; static const unsigned char ecdsa_secp224r1_sha3_256_3925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3925_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3925 = { .name = "ecdsa_secp224r1_sha3_256_3925", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3925_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3925_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3925_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 311 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3926 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3926_pubkey[] = { 0xa3, 0xce, 0x18, 0x0b, 0xd6, 0x5f, 0xfc, 0x76, 0xd5, 0x50, 0x2a, 0xe8, 0x06, 0xa6, 0xb4, 0x34, 0xd7, 0xe6, 0x9b, 0x39, 0xb1, 0x94, 0x0e, 0x44, 0xc8, 0x36, 0x04, 0xcb, 0x41, 0x50, 0xca, 0x51, 0x2d, 0xdd, 0xf3, 0x36, 0x38, 0x97, 0xdd, 0x8d, 0x23, 0xf7, 0x65, 0x64, 0x41, 0x21, 0x88, 0xcc, 0x9b, 0xe7, 0x7c, 0x17, 0x0d, 0xce, 0xf4, 0xe7, }; static const unsigned char ecdsa_secp224r1_sha3_256_3926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3926_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3926 = { .name = "ecdsa_secp224r1_sha3_256_3926", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3926_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3926_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3926_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 312 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3927 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3927_pubkey[] = { 0x7a, 0x11, 0x83, 0xe8, 0x3d, 0xd8, 0xe3, 0x8b, 0x2a, 0xef, 0x19, 0xc9, 0xe6, 0x04, 0xa2, 0x05, 0xec, 0xf5, 0x0a, 0xbc, 0x9a, 0xd1, 0xb2, 0xbf, 0x3a, 0x06, 0x2b, 0xa9, 0x35, 0xd0, 0xec, 0x70, 0xd1, 0xc6, 0x6b, 0xa1, 0x24, 0x87, 0x2a, 0x47, 0xd0, 0x44, 0xb8, 0xbb, 0x7b, 0x6a, 0x40, 0x5b, 0x9a, 0x9b, 0xcc, 0xe6, 0x36, 0xf9, 0xe7, 0x88, }; static const unsigned char ecdsa_secp224r1_sha3_256_3927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3927_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3927 = { .name = "ecdsa_secp224r1_sha3_256_3927", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3927_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3927_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3927_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 313 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3928 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3928_pubkey[] = { 0x6f, 0xbb, 0xbf, 0xa6, 0x0d, 0x49, 0xb6, 0x03, 0xfb, 0xc7, 0xf6, 0xf6, 0xc9, 0x22, 0xdf, 0x03, 0x64, 0xc0, 0x3f, 0x08, 0x9a, 0xf3, 0xa2, 0x88, 0xce, 0x43, 0x37, 0xd5, 0x28, 0xc4, 0x6e, 0xb6, 0xf4, 0x3e, 0x9c, 0x4f, 0x26, 0x64, 0xff, 0x72, 0xd5, 0x87, 0xcd, 0x70, 0x6c, 0x62, 0x0c, 0xd7, 0x18, 0xbc, 0xeb, 0x11, 0x97, 0x48, 0x2e, 0xd9, }; static const unsigned char ecdsa_secp224r1_sha3_256_3928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3928_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3928 = { .name = "ecdsa_secp224r1_sha3_256_3928", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3928_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3928_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3928_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 314 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3929 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3929_pubkey[] = { 0xd5, 0x0a, 0x93, 0xa4, 0x75, 0xab, 0x04, 0x52, 0x1c, 0xa4, 0xbc, 0x4d, 0xcd, 0x06, 0x87, 0x2e, 0x85, 0xfc, 0x58, 0x7a, 0x7c, 0x56, 0xe6, 0x8a, 0x6e, 0x94, 0x84, 0x6a, 0x45, 0x11, 0xf0, 0xbd, 0x21, 0xaf, 0x19, 0xdf, 0xf4, 0xde, 0xf0, 0x9b, 0x04, 0xbc, 0xb2, 0x0e, 0x21, 0xad, 0x21, 0xe0, 0xf8, 0xc4, 0xa4, 0x9f, 0x21, 0x85, 0x6a, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha3_256_3929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3929_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3929 = { .name = "ecdsa_secp224r1_sha3_256_3929", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3929_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3929_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3929_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 315 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3930 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3930_pubkey[] = { 0x4a, 0x02, 0x98, 0xd7, 0xa7, 0xa6, 0x70, 0xd2, 0x53, 0x8f, 0x6a, 0xae, 0x65, 0xdd, 0xf6, 0xbe, 0x35, 0xd4, 0x74, 0xbb, 0xdd, 0x1b, 0x6a, 0xa0, 0xa8, 0x12, 0xd9, 0x74, 0x92, 0x51, 0x86, 0x6f, 0x63, 0x0e, 0xda, 0x71, 0xe9, 0xd7, 0x27, 0x96, 0x4e, 0x56, 0x3a, 0x25, 0x96, 0xec, 0x04, 0xc4, 0xd0, 0x13, 0x4f, 0xb9, 0x97, 0x02, 0x1c, 0xa3, }; static const unsigned char ecdsa_secp224r1_sha3_256_3930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3930_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd0, 0xc2, 0x26, 0xee, 0x28, 0x50, 0xb7, 0x91, 0x92, 0x34, 0x6c, 0x7c, 0xe3, 0x7d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3930 = { .name = "ecdsa_secp224r1_sha3_256_3930", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3930_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3930_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3930_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 316 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3931 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3931_pubkey[] = { 0x4a, 0x8e, 0xad, 0x5e, 0x32, 0x23, 0x4b, 0x2a, 0x78, 0x17, 0x1b, 0xbe, 0x32, 0x15, 0xf1, 0xb7, 0x21, 0xf9, 0xae, 0x11, 0x3c, 0x7e, 0x97, 0x11, 0xbd, 0x44, 0xcb, 0x28, 0x15, 0x58, 0x0c, 0xc1, 0xe9, 0xf2, 0x2a, 0x43, 0x2e, 0x80, 0x70, 0xf7, 0x00, 0xb9, 0x49, 0xea, 0x55, 0xcf, 0xcd, 0x93, 0x23, 0x58, 0x9f, 0xe1, 0xed, 0xb0, 0x60, 0x53, }; static const unsigned char ecdsa_secp224r1_sha3_256_3931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3931_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3931 = { .name = "ecdsa_secp224r1_sha3_256_3931", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3931_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3931_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3931_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 317 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3932 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3932_pubkey[] = { 0x55, 0xbd, 0x00, 0x33, 0x33, 0xe4, 0x49, 0xdc, 0x59, 0xe1, 0x81, 0xcb, 0x2e, 0x14, 0xe2, 0x24, 0x0f, 0x26, 0xbc, 0x7f, 0x3f, 0x17, 0x13, 0xa7, 0x3b, 0xa0, 0xe3, 0x6c, 0x69, 0xac, 0x8b, 0x1f, 0xb9, 0xc4, 0xc2, 0x70, 0xec, 0x57, 0xa6, 0xaf, 0xd3, 0xf8, 0xc6, 0x5f, 0x1e, 0x34, 0xc5, 0x17, 0x6c, 0x7f, 0x76, 0x84, 0xe8, 0x61, 0x16, 0x7d, }; static const unsigned char ecdsa_secp224r1_sha3_256_3932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3932_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3932 = { .name = "ecdsa_secp224r1_sha3_256_3932", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3932_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3932_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3932_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 318 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3933 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3933_pubkey[] = { 0x70, 0x36, 0xb9, 0x6d, 0x90, 0x33, 0xea, 0x5b, 0xf6, 0xa6, 0x3b, 0xc3, 0x08, 0x93, 0x6d, 0xa1, 0x63, 0x6b, 0x22, 0xc6, 0x01, 0xf5, 0xfd, 0x1a, 0x3f, 0xc8, 0xb4, 0x91, 0x02, 0x84, 0x17, 0xad, 0x37, 0x89, 0x9b, 0x3e, 0xa1, 0xdc, 0xa7, 0xb6, 0x7e, 0xc6, 0x0a, 0x7e, 0x7b, 0x0a, 0xf0, 0x4d, 0x02, 0x4b, 0xad, 0x8a, 0xa3, 0xa5, 0xe4, 0xa3, }; static const unsigned char ecdsa_secp224r1_sha3_256_3933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3933_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc7, 0xbb, 0x3d, 0x41, 0x94, 0x56, 0xee, 0x8a, 0x53, 0xd6, 0x78, 0x67, 0x55, 0x0e, 0xd5, 0xeb, 0x3c, 0x00, 0xd5, 0x56, 0x38, 0xac, 0x6d, 0x21, 0x32, 0xbb, 0x00, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3933 = { .name = "ecdsa_secp224r1_sha3_256_3933", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3933_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3933_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3933_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3934 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3934_pubkey[] = { 0x58, 0xfe, 0x2f, 0x40, 0xf6, 0xb3, 0x61, 0x16, 0x7b, 0xd9, 0x75, 0x7e, 0x73, 0x90, 0x8b, 0x21, 0xa8, 0xf4, 0x3c, 0x42, 0x0e, 0x13, 0xae, 0xf1, 0x19, 0x21, 0x1e, 0x64, 0x67, 0x75, 0xa4, 0x96, 0x81, 0xe2, 0xd6, 0x46, 0xde, 0xa2, 0x6b, 0xf2, 0x57, 0xf8, 0xf7, 0xfa, 0xc9, 0xf7, 0xfb, 0x2e, 0x9b, 0xbf, 0xd3, 0x66, 0x49, 0x95, 0x7b, 0x84, }; static const unsigned char ecdsa_secp224r1_sha3_256_3934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3934_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaa, 0xb6, 0xda, 0xa4, 0x62, 0x88, 0x52, 0xca, 0x4b, 0x25, 0xe9, 0x17, 0xef, 0x47, 0x71, 0x54, 0x7c, 0x75, 0xd5, 0xec, 0x51, 0x27, 0xc9, 0xc6, 0x67, 0x8c, 0xde, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3934 = { .name = "ecdsa_secp224r1_sha3_256_3934", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3934_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3934_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3934_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3935 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3935_pubkey[] = { 0xae, 0x55, 0x24, 0xa4, 0x53, 0x31, 0x01, 0xa5, 0xcf, 0xe3, 0x90, 0x7d, 0x70, 0x6c, 0xaf, 0xa7, 0xf9, 0x04, 0xd9, 0xdf, 0xe3, 0x8c, 0xee, 0xc5, 0x94, 0x57, 0xd6, 0x2e, 0x18, 0x43, 0x4e, 0x27, 0x1e, 0xdf, 0x58, 0x00, 0x8c, 0x15, 0xd6, 0x27, 0xda, 0xbb, 0xf5, 0x69, 0x1e, 0x9c, 0x9e, 0xaa, 0x79, 0x30, 0x09, 0x4c, 0xe8, 0x85, 0xe2, 0xce, }; static const unsigned char ecdsa_secp224r1_sha3_256_3935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3935_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x80, 0x63, 0xdb, 0x16, 0x78, 0x70, 0x11, 0xa1, 0xc1, 0x21, 0x2a, 0xf0, 0x44, 0x59, 0x9a, 0x91, 0xf7, 0x88, 0x69, 0xbd, 0x79, 0x0f, 0x5d, 0xc5, 0x88, 0xd8, 0x42, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3935 = { .name = "ecdsa_secp224r1_sha3_256_3935", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3935_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3935_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3935_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3936 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3936_pubkey[] = { 0xe0, 0xaf, 0x4a, 0xd4, 0xf0, 0x6a, 0x41, 0xc7, 0x2d, 0x50, 0x2d, 0x69, 0x34, 0xc8, 0xc3, 0xf4, 0xb3, 0x4f, 0x06, 0x2d, 0x1c, 0xf7, 0x23, 0xb3, 0x71, 0x2c, 0x9a, 0xf3, 0x4a, 0x3d, 0x09, 0xff, 0xd3, 0x50, 0x6e, 0x11, 0x66, 0x96, 0x09, 0xea, 0x8f, 0xe8, 0xee, 0x54, 0xb3, 0x01, 0x88, 0xbc, 0x0a, 0xd1, 0x36, 0xcd, 0xcf, 0x73, 0x03, 0x8c, }; static const unsigned char ecdsa_secp224r1_sha3_256_3936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3936_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x17, 0x68, 0x82, 0x46, 0x31, 0x3d, 0x0b, 0x42, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x1f, 0x0a, 0x62, 0x17, 0x39, 0x46, 0x11, 0xf2, 0xb1, 0x77, 0xad, 0xa9, 0x4b, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3936 = { .name = "ecdsa_secp224r1_sha3_256_3936", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3936_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3936_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3936_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 322 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3937 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3937_pubkey[] = { 0xde, 0xaf, 0x78, 0x57, 0x50, 0xee, 0xf0, 0xb3, 0xe1, 0x78, 0xec, 0x72, 0x69, 0x56, 0xb9, 0x33, 0x88, 0x38, 0xb0, 0xbe, 0x79, 0xca, 0x51, 0x66, 0x04, 0x19, 0x37, 0xb5, 0xa6, 0xb6, 0x93, 0x18, 0xef, 0xc4, 0x96, 0x1a, 0x50, 0xb4, 0x4c, 0xd4, 0xb7, 0x92, 0xc2, 0x71, 0x53, 0x9f, 0x3b, 0x41, 0x29, 0xe8, 0xe8, 0xda, 0xdc, 0x96, 0x84, 0xb3, }; static const unsigned char ecdsa_secp224r1_sha3_256_3937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3937_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x88, 0x24, 0x63, 0x13, 0xd0, 0xb4, 0x2a, 0x8c, 0xe4, 0x83, 0xb4, 0x2f, 0xb3, 0x45, 0x94, 0x2d, 0x25, 0x65, 0x66, 0x6e, 0x25, 0xfd, 0x2f, 0x85, 0xa6, 0x0e, 0xba, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3937 = { .name = "ecdsa_secp224r1_sha3_256_3937", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3937_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3937_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3937_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 323 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3938 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3938_pubkey[] = { 0xe1, 0x4f, 0xb7, 0xfc, 0x84, 0x9d, 0xe2, 0x0d, 0x33, 0xc6, 0xc5, 0xe6, 0xb3, 0x58, 0xf5, 0xba, 0x70, 0x2e, 0xb2, 0xb9, 0x12, 0x1d, 0xef, 0x8d, 0x3d, 0xed, 0xdb, 0xdf, 0x58, 0x15, 0x3c, 0x8e, 0x0e, 0xf0, 0xb7, 0x89, 0x93, 0xf4, 0xd1, 0x74, 0x05, 0xc1, 0xfe, 0x2b, 0x20, 0x88, 0x0d, 0x40, 0xb2, 0x29, 0xf7, 0xde, 0x51, 0xa4, 0xd6, 0xb3, }; static const unsigned char ecdsa_secp224r1_sha3_256_3938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3938_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x10, 0x48, 0xc6, 0x27, 0xa1, 0x68, 0x55, 0x19, 0xc9, 0x07, 0x68, 0x5f, 0x66, 0x8c, 0x11, 0xb7, 0x6a, 0x11, 0xdc, 0x9e, 0x38, 0x1d, 0x35, 0xc5, 0xef, 0xc1, 0x4b, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3938 = { .name = "ecdsa_secp224r1_sha3_256_3938", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3938_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3938_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3938_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 324 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3939 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3939_pubkey[] = { 0xf8, 0x3a, 0x25, 0x4c, 0x07, 0xc2, 0x90, 0x22, 0x45, 0x4c, 0x43, 0xbe, 0x9b, 0xd5, 0xe9, 0x9c, 0x63, 0x0f, 0xf7, 0xd8, 0x32, 0x06, 0x71, 0x3a, 0x1f, 0xbf, 0xa0, 0xfa, 0x01, 0x7a, 0x0a, 0xdb, 0x06, 0x8f, 0xb2, 0x8a, 0x94, 0x18, 0x32, 0x8e, 0xac, 0x1b, 0xc1, 0x9c, 0x6c, 0x92, 0xc3, 0xf1, 0x66, 0x6a, 0x77, 0x32, 0x50, 0x57, 0x1a, 0x19, }; static const unsigned char ecdsa_secp224r1_sha3_256_3939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3939_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x31, 0x3d, 0x0b, 0x42, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x69, 0xe7, 0x88, 0x60, 0x89, 0xd9, 0xf0, 0xc0, 0xfc, 0x2c, 0x4d, 0x91, 0x79, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3939 = { .name = "ecdsa_secp224r1_sha3_256_3939", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3939_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3939_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3939_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 325 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3940 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3940_pubkey[] = { 0x23, 0xac, 0x1c, 0xcb, 0x80, 0x7f, 0x76, 0xfa, 0x99, 0x20, 0x7a, 0xf6, 0x7f, 0x66, 0x2f, 0xb1, 0xee, 0x10, 0xf1, 0xd5, 0xfd, 0xdb, 0x71, 0x5e, 0xaf, 0xa8, 0xad, 0x3d, 0xb1, 0x8e, 0xce, 0xeb, 0x74, 0x32, 0xc7, 0x02, 0x50, 0xf8, 0xe9, 0x2f, 0xa9, 0x90, 0xba, 0xab, 0x18, 0x29, 0x65, 0x47, 0xfb, 0x79, 0x01, 0xac, 0xdd, 0x8f, 0xaf, 0x59, }; static const unsigned char ecdsa_secp224r1_sha3_256_3940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3940_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1c, 0x22, 0x61, 0x5f, 0x35, 0xd4, 0x88, 0xba, 0xd6, 0x14, 0xc3, 0xcc, 0x55, 0x78, 0x20, 0x5b, 0xd2, 0x5c, 0x0d, 0x73, 0xed, 0x98, 0x5e, 0x12, 0x14, 0xd0, 0x94, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3940 = { .name = "ecdsa_secp224r1_sha3_256_3940", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3940_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3940_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3940_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 326 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3941 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3941_pubkey[] = { 0x11, 0x9d, 0x9f, 0x0c, 0x5f, 0x5f, 0x62, 0x06, 0xdf, 0x59, 0x86, 0x22, 0xec, 0x7a, 0xfc, 0x75, 0x6a, 0x0c, 0x1c, 0x1b, 0x3d, 0x11, 0x33, 0x52, 0x8a, 0x7a, 0x06, 0xcd, 0x0d, 0xf1, 0x7a, 0x91, 0x64, 0x71, 0x97, 0x14, 0x48, 0x8b, 0x9b, 0xa8, 0x02, 0x18, 0x85, 0xd4, 0xea, 0xa8, 0x3e, 0x88, 0x42, 0xb1, 0x1a, 0xf3, 0x68, 0xd0, 0x63, 0x04, }; static const unsigned char ecdsa_secp224r1_sha3_256_3941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3941_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x38, 0x44, 0xc2, 0xbe, 0x6b, 0xa9, 0x11, 0x75, 0xac, 0x29, 0x87, 0x98, 0xaa, 0xf0, 0x40, 0xb7, 0xa4, 0xb8, 0x1a, 0xe7, 0xdb, 0x30, 0xbc, 0x24, 0x29, 0xa1, 0x29, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3941 = { .name = "ecdsa_secp224r1_sha3_256_3941", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3941_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3941_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3941_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 327 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3942 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3942_pubkey[] = { 0x88, 0x88, 0xae, 0x9b, 0x1a, 0xb8, 0xd5, 0x7b, 0x18, 0x46, 0x8a, 0x2c, 0x16, 0xf8, 0xc9, 0x71, 0xa7, 0x07, 0x11, 0xc6, 0x36, 0x1a, 0x9a, 0xfe, 0x14, 0xbe, 0x4e, 0x33, 0xaf, 0x32, 0x31, 0x1a, 0x18, 0xef, 0x6b, 0x96, 0x5c, 0x8f, 0x6e, 0x25, 0x20, 0x51, 0x79, 0x4a, 0x34, 0x67, 0xde, 0x9f, 0x58, 0xc0, 0x6a, 0x85, 0x45, 0xb7, 0x43, 0xdc, }; static const unsigned char ecdsa_secp224r1_sha3_256_3942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3942_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x54, 0x67, 0x24, 0x1d, 0xa1, 0x7d, 0x9a, 0x30, 0x82, 0x3e, 0x4b, 0x65, 0x00, 0x68, 0x61, 0x13, 0x77, 0x14, 0x28, 0x5b, 0xc8, 0xc9, 0x1a, 0x36, 0x3e, 0x71, 0xbe, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3942 = { .name = "ecdsa_secp224r1_sha3_256_3942", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3942_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3942_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3942_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 328 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3943 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3943_pubkey[] = { 0x2c, 0xe5, 0xa3, 0xf2, 0xb3, 0xfc, 0x79, 0x16, 0x95, 0x3e, 0xbe, 0x71, 0xa7, 0xff, 0x33, 0x92, 0x1c, 0xb5, 0x71, 0x67, 0xab, 0xaa, 0x87, 0x1a, 0x07, 0x20, 0x21, 0x96, 0xea, 0x2d, 0x3b, 0x61, 0x82, 0x0b, 0xdd, 0x52, 0x64, 0xf0, 0x60, 0x68, 0x08, 0x44, 0xd7, 0x21, 0x7a, 0x21, 0x60, 0x1e, 0x3e, 0xd3, 0x7a, 0x79, 0xd5, 0x95, 0x3b, 0x98, }; static const unsigned char ecdsa_secp224r1_sha3_256_3943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3943_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc0, 0x31, 0xed, 0x8b, 0x3c, 0x38, 0x08, 0xd0, 0xe0, 0x90, 0x95, 0x78, 0x22, 0x2c, 0x58, 0x9a, 0x6c, 0x20, 0xac, 0xfd, 0xc6, 0x76, 0x43, 0x85, 0x72, 0x9a, 0x36, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3943 = { .name = "ecdsa_secp224r1_sha3_256_3943", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3943_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3943_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3943_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 329 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3944 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3944_pubkey[] = { 0xba, 0xe5, 0xf1, 0x1e, 0xb7, 0x7e, 0x35, 0x4a, 0x0d, 0x0e, 0x33, 0xc4, 0xce, 0x24, 0x83, 0x9d, 0x72, 0x6e, 0x17, 0x00, 0xe5, 0x14, 0xcc, 0xbd, 0xed, 0xe2, 0x31, 0x45, 0x4f, 0xfd, 0x00, 0x9f, 0xbe, 0xea, 0x9c, 0x73, 0x07, 0x93, 0x8f, 0x8a, 0xdf, 0xed, 0x84, 0xde, 0x36, 0x00, 0x92, 0x02, 0x86, 0x28, 0x1d, 0x26, 0x7c, 0x88, 0x60, 0x9a, }; static const unsigned char ecdsa_secp224r1_sha3_256_3944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3944_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3944 = { .name = "ecdsa_secp224r1_sha3_256_3944", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3944_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3944_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3944_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3945 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3945_pubkey[] = { 0xd1, 0x53, 0xad, 0x8f, 0x46, 0x2d, 0x2f, 0x93, 0x88, 0xfa, 0x8b, 0x43, 0x51, 0x7a, 0xa2, 0xa7, 0x79, 0x9d, 0xea, 0x0b, 0xbb, 0x1f, 0xba, 0x67, 0xc5, 0x67, 0x41, 0x72, 0xdf, 0x03, 0xb7, 0x78, 0xb5, 0x87, 0xab, 0xc1, 0x8d, 0xb2, 0x3b, 0xd5, 0x2f, 0x43, 0x91, 0x37, 0x14, 0xd1, 0xf4, 0x1b, 0x8c, 0x91, 0x90, 0x7b, 0x24, 0xcf, 0x1e, 0xf8, }; static const unsigned char ecdsa_secp224r1_sha3_256_3945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3945_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3945 = { .name = "ecdsa_secp224r1_sha3_256_3945", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3945_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3945_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3945_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3946 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3946_pubkey[] = { 0x39, 0xb3, 0x0c, 0xf6, 0x82, 0x7e, 0x95, 0xc4, 0xbb, 0x1c, 0xf5, 0xa2, 0x01, 0xe3, 0x61, 0x1e, 0xa8, 0x76, 0x60, 0xc6, 0x71, 0xfc, 0xfe, 0x48, 0x37, 0xa5, 0x5b, 0xa8, 0xbf, 0x99, 0x0d, 0x7e, 0x77, 0x56, 0xab, 0x4c, 0x0f, 0x08, 0xf0, 0xd6, 0x74, 0x98, 0x0c, 0xaa, 0x2e, 0x55, 0x9c, 0x93, 0xc8, 0x4f, 0x70, 0x42, 0xfb, 0xf0, 0xac, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha3_256_3946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3946_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3946 = { .name = "ecdsa_secp224r1_sha3_256_3946", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3946_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3946_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3946_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 332 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3947 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3947_pubkey[] = { 0xce, 0x72, 0xf4, 0x33, 0x41, 0x67, 0x94, 0xd9, 0xba, 0x0e, 0x53, 0x73, 0x5e, 0xb2, 0x27, 0x7f, 0xfd, 0xfe, 0x84, 0xf8, 0x52, 0xff, 0x06, 0xb2, 0x6b, 0x2b, 0xa4, 0x8d, 0xce, 0xf0, 0x33, 0xd6, 0xf8, 0x97, 0xce, 0x82, 0x0f, 0x31, 0x78, 0xf0, 0x33, 0x1b, 0x47, 0x5a, 0xd9, 0xf8, 0xe6, 0xbe, 0x2f, 0xf3, 0x47, 0x88, 0xe0, 0x9e, 0x55, 0xc4, }; static const unsigned char ecdsa_secp224r1_sha3_256_3947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3947_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3947 = { .name = "ecdsa_secp224r1_sha3_256_3947", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3947_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3947_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3947_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3948 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3948_pubkey[] = { 0x69, 0x21, 0x1f, 0xb6, 0x8e, 0x0c, 0xe4, 0x0b, 0x59, 0x0b, 0xdf, 0xb2, 0x62, 0x75, 0x3d, 0x38, 0x17, 0xa9, 0x77, 0x7c, 0xbc, 0xc1, 0x82, 0x92, 0xf6, 0x3d, 0x94, 0x46, 0x7f, 0xc0, 0xdc, 0xf4, 0xd6, 0xa0, 0x2a, 0x0d, 0xaf, 0x95, 0x2f, 0x1b, 0xdc, 0x99, 0xec, 0xb4, 0xbc, 0xef, 0xde, 0x8d, 0x7e, 0xb2, 0x2a, 0xe1, 0x4b, 0xe4, 0x4b, 0x5f, }; static const unsigned char ecdsa_secp224r1_sha3_256_3948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3948_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3948 = { .name = "ecdsa_secp224r1_sha3_256_3948", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3948_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3948_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3948_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 334 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3949 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3949_pubkey[] = { 0xea, 0xe4, 0xa3, 0xd4, 0x3d, 0xa3, 0x1e, 0x5b, 0xbb, 0x67, 0x67, 0xec, 0x18, 0xb0, 0x3c, 0x22, 0x31, 0x4d, 0xcd, 0xe7, 0x7f, 0x6a, 0xda, 0xe7, 0xe6, 0xa1, 0xb6, 0x6c, 0x3b, 0x2b, 0x6f, 0x2a, 0xbe, 0x22, 0xf0, 0x03, 0x76, 0x70, 0x3c, 0xda, 0x54, 0xa6, 0xb6, 0xe4, 0xcb, 0xd7, 0xba, 0xc7, 0x61, 0x47, 0x82, 0xef, 0x9e, 0x94, 0xb2, 0x6f, }; static const unsigned char ecdsa_secp224r1_sha3_256_3949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3949_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3949 = { .name = "ecdsa_secp224r1_sha3_256_3949", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3949_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3949_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3949_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 335 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3950 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3950_pubkey[] = { 0x1a, 0x51, 0x96, 0x9a, 0x30, 0xf9, 0x66, 0x89, 0x4e, 0xd0, 0xe1, 0xb7, 0x63, 0xda, 0x7c, 0xdd, 0x2a, 0x25, 0x8a, 0x9a, 0x9d, 0x6e, 0xfb, 0x01, 0x94, 0x19, 0xc1, 0x52, 0xfd, 0x89, 0x82, 0x29, 0x54, 0x89, 0xe9, 0x7f, 0x2d, 0x8d, 0x6e, 0xbe, 0x04, 0x09, 0xd7, 0x59, 0xa5, 0xca, 0x25, 0xcf, 0x96, 0x27, 0xf2, 0x0e, 0x39, 0xf1, 0xe6, 0x51, }; static const unsigned char ecdsa_secp224r1_sha3_256_3950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3950_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3950 = { .name = "ecdsa_secp224r1_sha3_256_3950", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3950_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3950_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3950_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 336 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3951 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3951_pubkey[] = { 0x90, 0x9b, 0xb6, 0xc4, 0x7b, 0x98, 0x1b, 0x1e, 0xb3, 0xad, 0x78, 0xd6, 0xad, 0x6b, 0x04, 0x79, 0x1f, 0x99, 0x52, 0x42, 0x9f, 0x98, 0xa0, 0x14, 0x16, 0xb7, 0x78, 0xfd, 0x6c, 0x38, 0x10, 0x7d, 0x55, 0xd2, 0x8e, 0x37, 0x49, 0x3d, 0x22, 0xe2, 0xaa, 0x2a, 0x4c, 0x66, 0xc9, 0xda, 0x2c, 0xc9, 0x0b, 0xe2, 0x20, 0x22, 0x78, 0x87, 0x0f, 0x92, }; static const unsigned char ecdsa_secp224r1_sha3_256_3951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3951_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3951 = { .name = "ecdsa_secp224r1_sha3_256_3951", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3951_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3951_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3951_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 337 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3952 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3952_pubkey[] = { 0xee, 0xc9, 0xdb, 0xb6, 0xfe, 0x5e, 0xd5, 0xc8, 0xe4, 0xf8, 0x30, 0x9c, 0xd8, 0x1d, 0x50, 0x60, 0x05, 0xef, 0xd5, 0x2d, 0xca, 0x73, 0xe8, 0x87, 0x49, 0x57, 0xdb, 0x2c, 0x84, 0x0f, 0x66, 0x93, 0xe7, 0x7f, 0x92, 0x08, 0x8c, 0x6e, 0x41, 0x10, 0x75, 0xff, 0x15, 0x81, 0x7c, 0xa0, 0xf6, 0xe6, 0x69, 0xa2, 0x95, 0xd0, 0x1d, 0x24, 0x42, 0xbd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3952_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3952 = { .name = "ecdsa_secp224r1_sha3_256_3952", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3952_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3952_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3952_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 338 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3953 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3953_pubkey[] = { 0xa4, 0xb5, 0xe9, 0x30, 0x4f, 0xb0, 0x4b, 0xc6, 0x25, 0x7f, 0xed, 0x45, 0x08, 0x3f, 0xc7, 0xf5, 0x0a, 0xac, 0xff, 0xb9, 0x62, 0xd4, 0x2b, 0x3b, 0x3a, 0x6c, 0x61, 0x77, 0x58, 0xaa, 0x38, 0xfe, 0x0a, 0xa0, 0x34, 0x02, 0x5e, 0x4b, 0x7e, 0xd0, 0x45, 0xee, 0xa3, 0xed, 0xad, 0x0a, 0x5e, 0xce, 0x26, 0xbf, 0xa7, 0x44, 0x12, 0x39, 0xf5, 0x21, }; static const unsigned char ecdsa_secp224r1_sha3_256_3953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3953_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3953 = { .name = "ecdsa_secp224r1_sha3_256_3953", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3953_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3953_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3953_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 339 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3954 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3954_pubkey[] = { 0x7f, 0xef, 0x8e, 0xd4, 0x25, 0x08, 0x15, 0x37, 0xad, 0xbe, 0x47, 0x73, 0x03, 0x7d, 0x77, 0xcc, 0xec, 0x1a, 0x3d, 0xae, 0x49, 0x0c, 0x46, 0x36, 0x0c, 0x92, 0xd0, 0x67, 0xe5, 0x30, 0x97, 0x92, 0x68, 0x0d, 0xf2, 0x04, 0xf3, 0xcc, 0xaf, 0x51, 0xd9, 0xe7, 0x35, 0x43, 0xf2, 0x1e, 0x51, 0x93, 0x77, 0xb5, 0x04, 0x88, 0x5b, 0x6e, 0x55, 0xc5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3954_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3954 = { .name = "ecdsa_secp224r1_sha3_256_3954", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3954_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3954_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3954_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 340 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3955 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3955_pubkey[] = { 0xd4, 0xc3, 0x8c, 0x0d, 0xf6, 0xf7, 0x74, 0x3e, 0x57, 0x7c, 0xe3, 0xd0, 0x54, 0xa3, 0x2e, 0x84, 0xb2, 0xa7, 0x41, 0x8d, 0x1a, 0x9e, 0x00, 0xa0, 0xa1, 0xd3, 0x0e, 0x13, 0x54, 0x28, 0xf7, 0x04, 0x7f, 0x7e, 0xee, 0x01, 0xb2, 0x37, 0x7a, 0xc2, 0xeb, 0x04, 0x1d, 0x24, 0x63, 0x7f, 0x40, 0x97, 0x7b, 0x11, 0xb2, 0x4f, 0x29, 0x04, 0xd9, 0xdc, }; static const unsigned char ecdsa_secp224r1_sha3_256_3955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3955_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x21, 0xcd, 0xaf, 0xc1, 0x9b, 0x3c, 0x56, 0xe7, 0x19, 0x33, 0xd3, 0x69, 0x2d, 0x76, 0xc9, 0x2c, 0x00, 0xcd, 0x08, 0xd1, 0x46, 0xb2, 0xed, 0x4c, 0x03, 0x52, 0x53, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3955 = { .name = "ecdsa_secp224r1_sha3_256_3955", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3955_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3955_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3955_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 341 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3956 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3956_pubkey[] = { 0xd4, 0xc3, 0x8c, 0x0d, 0xf6, 0xf7, 0x74, 0x3e, 0x57, 0x7c, 0xe3, 0xd0, 0x54, 0xa3, 0x2e, 0x84, 0xb2, 0xa7, 0x41, 0x8d, 0x1a, 0x9e, 0x00, 0xa0, 0xa1, 0xd3, 0x0e, 0x13, 0xab, 0xd7, 0x08, 0xfb, 0x80, 0x81, 0x11, 0xfe, 0x4d, 0xc8, 0x85, 0x3d, 0x14, 0xfb, 0xe2, 0xda, 0x9c, 0x80, 0xbf, 0x68, 0x84, 0xee, 0x4d, 0xb0, 0xd6, 0xfb, 0x26, 0x25, }; static const unsigned char ecdsa_secp224r1_sha3_256_3956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3956_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x21, 0xcd, 0xaf, 0xc1, 0x9b, 0x3c, 0x56, 0xe7, 0x19, 0x33, 0xd3, 0x69, 0x2d, 0x76, 0xc9, 0x2c, 0x00, 0xcd, 0x08, 0xd1, 0x46, 0xb2, 0xed, 0x4c, 0x03, 0x52, 0x53, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3956 = { .name = "ecdsa_secp224r1_sha3_256_3956", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3956_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3956_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3956_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 342 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3957 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3957_pubkey[] = { 0xeb, 0xc6, 0x91, 0x37, 0xdb, 0x89, 0xc0, 0x18, 0x96, 0x96, 0xee, 0x75, 0xff, 0x03, 0x70, 0x6b, 0x0d, 0x93, 0x96, 0x39, 0xbb, 0x64, 0xe2, 0x20, 0xd7, 0x0e, 0xce, 0xe6, 0x23, 0xa4, 0x46, 0xd6, 0x5b, 0x08, 0x3d, 0xa1, 0x8c, 0xb1, 0x4c, 0xb6, 0xa9, 0xe5, 0x7f, 0x00, 0x75, 0x58, 0x38, 0x60, 0x65, 0x72, 0x6e, 0xa3, 0x4f, 0xea, 0xb5, 0x73, }; static const unsigned char ecdsa_secp224r1_sha3_256_3957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3957_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3957 = { .name = "ecdsa_secp224r1_sha3_256_3957", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3957_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3957_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3957_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 343 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3958 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3958_pubkey[] = { 0xff, 0x8f, 0x64, 0xc0, 0xc0, 0xf7, 0xf0, 0xe8, 0x1d, 0x20, 0x5b, 0x67, 0xa1, 0xc3, 0xbc, 0xcf, 0x0c, 0x3d, 0xcf, 0x3b, 0xfd, 0xfd, 0xc8, 0x0a, 0x61, 0x47, 0x1e, 0x80, 0xa0, 0xcb, 0xbf, 0x29, 0xeb, 0xed, 0xf5, 0x38, 0x10, 0x16, 0x93, 0x7a, 0xd9, 0x13, 0x35, 0xc5, 0x80, 0x1b, 0xbe, 0x6f, 0xd4, 0xa1, 0xee, 0x61, 0x99, 0x29, 0x56, 0x01, }; static const unsigned char ecdsa_secp224r1_sha3_256_3958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3958_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3958 = { .name = "ecdsa_secp224r1_sha3_256_3958", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3958_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3958_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3958_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 344 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3959 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3959_pubkey[] = { 0x11, 0xc0, 0xf9, 0x4f, 0xc2, 0x82, 0x0e, 0xad, 0x7b, 0x14, 0x20, 0x8d, 0x06, 0x20, 0xa3, 0x5f, 0x37, 0x6f, 0x1c, 0x10, 0xb6, 0xaf, 0x16, 0x06, 0x04, 0x54, 0xb0, 0x48, 0xb0, 0x04, 0xd5, 0x32, 0x2d, 0xb3, 0x03, 0x9c, 0x7f, 0xdd, 0x48, 0x88, 0xfd, 0xc0, 0xca, 0xff, 0xae, 0x81, 0xed, 0xbe, 0x53, 0xe8, 0x0c, 0xd0, 0x5d, 0xf2, 0x10, 0xb9, }; static const unsigned char ecdsa_secp224r1_sha3_256_3959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3959_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3959 = { .name = "ecdsa_secp224r1_sha3_256_3959", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3959_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3959_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3959_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3960 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3960_pubkey[] = { 0x3e, 0x4f, 0xa1, 0x64, 0x64, 0xba, 0x76, 0x2f, 0x06, 0xe7, 0xce, 0xc2, 0xfc, 0xbf, 0x66, 0x26, 0x9f, 0xf7, 0x42, 0xc1, 0x0a, 0x53, 0x36, 0x12, 0x17, 0xf2, 0x05, 0x3e, 0x70, 0x6b, 0x30, 0x8f, 0xa3, 0x6b, 0x5d, 0xe5, 0x86, 0x52, 0x3d, 0x32, 0x24, 0x4e, 0xea, 0x63, 0xa4, 0xd8, 0x6f, 0x21, 0x59, 0x30, 0xea, 0xe2, 0xbf, 0x99, 0x80, 0x8e, }; static const unsigned char ecdsa_secp224r1_sha3_256_3960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3960_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3960 = { .name = "ecdsa_secp224r1_sha3_256_3960", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3960_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3960_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3960_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 346 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3961 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3961_pubkey[] = { 0x48, 0x25, 0xb3, 0x11, 0xea, 0x6b, 0x6a, 0xd8, 0x6e, 0xb6, 0xf8, 0xfe, 0x9d, 0x29, 0xee, 0xad, 0x7a, 0x7a, 0x93, 0xda, 0xaf, 0xaf, 0xfa, 0xe3, 0x56, 0xa7, 0x85, 0xb4, 0x73, 0x16, 0x0b, 0x43, 0x6b, 0x48, 0x94, 0xf5, 0xee, 0x3f, 0x50, 0x28, 0x8d, 0xbd, 0xb6, 0x6f, 0xe1, 0xc0, 0x8f, 0x94, 0xf6, 0x77, 0xec, 0xdc, 0x5e, 0xee, 0x6e, 0x44, }; static const unsigned char ecdsa_secp224r1_sha3_256_3961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3961_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3961 = { .name = "ecdsa_secp224r1_sha3_256_3961", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3961_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3961_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3961_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 347 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3962 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3962_pubkey[] = { 0x23, 0x5c, 0x61, 0x0a, 0xfc, 0xdc, 0x0a, 0x22, 0xf8, 0x4d, 0x75, 0x3b, 0x1f, 0x7b, 0x9c, 0xee, 0x38, 0x8f, 0x8f, 0x5d, 0x68, 0x12, 0x70, 0x46, 0x50, 0x0b, 0x4f, 0x1a, 0x60, 0x5e, 0x49, 0x16, 0x84, 0x29, 0xc4, 0x4e, 0x19, 0x0d, 0x36, 0x12, 0xf3, 0x55, 0xbd, 0x7e, 0x63, 0x97, 0x8f, 0xb6, 0xc9, 0xa6, 0x1d, 0xcd, 0x53, 0xb1, 0x38, 0x21, }; static const unsigned char ecdsa_secp224r1_sha3_256_3962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3962_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3962 = { .name = "ecdsa_secp224r1_sha3_256_3962", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3962_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3962_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3962_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 348 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3963 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3963_pubkey[] = { 0x9f, 0x77, 0x90, 0x6d, 0x35, 0x3c, 0x1b, 0x86, 0x2e, 0xc4, 0x79, 0x46, 0x87, 0xc6, 0x9f, 0xa5, 0x06, 0x40, 0x5c, 0x4d, 0x0b, 0x57, 0xf4, 0xef, 0x84, 0x91, 0xdb, 0xa7, 0xce, 0x9e, 0x81, 0x0a, 0xf6, 0x5e, 0xdf, 0x1a, 0xe5, 0x83, 0xe6, 0xf9, 0xd6, 0xf2, 0xdd, 0xbc, 0x01, 0x36, 0x5e, 0x1e, 0x74, 0x4f, 0x29, 0x87, 0xaf, 0x55, 0x27, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha3_256_3963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3963_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3963 = { .name = "ecdsa_secp224r1_sha3_256_3963", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3963_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3963_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3963_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 349 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3964 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3964_pubkey[] = { 0x31, 0x69, 0x9a, 0x00, 0x79, 0x05, 0x8d, 0x60, 0x4e, 0xd7, 0xf8, 0x7c, 0x9a, 0xeb, 0x44, 0xbf, 0x19, 0x78, 0x52, 0x7b, 0xfe, 0x01, 0x02, 0x5a, 0x0c, 0xdd, 0x2a, 0x0b, 0xeb, 0x91, 0x98, 0x83, 0x75, 0x3f, 0x88, 0x0b, 0x47, 0xd0, 0x6a, 0x1a, 0xcc, 0xcd, 0xf7, 0xd7, 0x7b, 0xf9, 0x84, 0xfa, 0x48, 0xf2, 0x6c, 0x95, 0x9b, 0x12, 0xfe, 0x7a, }; static const unsigned char ecdsa_secp224r1_sha3_256_3964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3964_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3964 = { .name = "ecdsa_secp224r1_sha3_256_3964", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3964_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3964_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3964_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 350 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3965 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3965_pubkey[] = { 0x3f, 0xfe, 0x72, 0x30, 0x47, 0x7f, 0xe2, 0xba, 0x4c, 0x3f, 0xd5, 0x4a, 0xb1, 0xda, 0x6f, 0xe0, 0xc2, 0x9e, 0xaa, 0x5b, 0x6c, 0x18, 0x98, 0x2e, 0xb7, 0x03, 0x8a, 0x2f, 0x39, 0x11, 0x69, 0x9a, 0xd8, 0xe6, 0xc7, 0x13, 0xa7, 0xdd, 0xb2, 0xc7, 0xd5, 0x69, 0xf1, 0xae, 0x64, 0x8b, 0x14, 0x00, 0x11, 0x5e, 0x41, 0x6b, 0x2b, 0xe7, 0x4c, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_256_3965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3965_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3965 = { .name = "ecdsa_secp224r1_sha3_256_3965", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3965_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3965_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3965_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 351 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3966 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3966_pubkey[] = { 0x4a, 0xbf, 0x00, 0xbb, 0x45, 0x59, 0x2c, 0xbf, 0xde, 0x38, 0xb5, 0x38, 0x1d, 0x18, 0x47, 0xbd, 0x88, 0x16, 0xd9, 0x11, 0x3a, 0x99, 0xb1, 0x8b, 0x7d, 0x1a, 0x0e, 0x07, 0x1f, 0x47, 0xd0, 0xc5, 0x0e, 0x55, 0x06, 0xc0, 0x6a, 0xf9, 0xe4, 0xdb, 0x68, 0xad, 0x58, 0x81, 0x8f, 0xff, 0x05, 0xdf, 0x01, 0x16, 0x04, 0x8a, 0x04, 0x18, 0xb9, 0x51, }; static const unsigned char ecdsa_secp224r1_sha3_256_3966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3966_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3966 = { .name = "ecdsa_secp224r1_sha3_256_3966", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3966_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3966_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3966_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 352 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3967 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3967_pubkey[] = { 0x17, 0x56, 0x47, 0x64, 0xdd, 0xe6, 0xc5, 0xd5, 0xbc, 0x1f, 0xf0, 0xcc, 0x65, 0x47, 0x85, 0x22, 0xaa, 0x04, 0x92, 0xcc, 0xa7, 0xec, 0xde, 0x37, 0x4e, 0x50, 0x19, 0xec, 0xc1, 0x7e, 0x0c, 0xd3, 0x26, 0xb5, 0xa3, 0x0a, 0x51, 0x31, 0x09, 0x7d, 0xa6, 0x40, 0xea, 0x1f, 0x81, 0xb5, 0x77, 0xea, 0x98, 0xdf, 0x9e, 0x59, 0x06, 0x57, 0x43, 0x61, }; static const unsigned char ecdsa_secp224r1_sha3_256_3967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3967_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3967 = { .name = "ecdsa_secp224r1_sha3_256_3967", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3967_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3967_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3967_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 353 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3968 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3968_pubkey[] = { 0xad, 0x72, 0x83, 0x13, 0xf5, 0x62, 0xdc, 0x22, 0x84, 0xa6, 0xf6, 0xc4, 0xa1, 0x02, 0xc5, 0x69, 0xc3, 0xbc, 0x73, 0x02, 0x79, 0x24, 0x8b, 0x15, 0xd7, 0x5d, 0xf1, 0x68, 0x0e, 0x90, 0x05, 0x06, 0xb8, 0xe4, 0x6b, 0xeb, 0x36, 0x60, 0x0b, 0xf2, 0xe2, 0xa0, 0xbd, 0xda, 0x49, 0x4d, 0xfe, 0x3f, 0xbb, 0x42, 0x21, 0xb4, 0x58, 0x79, 0x38, 0xd6, }; static const unsigned char ecdsa_secp224r1_sha3_256_3968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3968_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3968 = { .name = "ecdsa_secp224r1_sha3_256_3968", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3968_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3968_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3968_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 354 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3969 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3969_pubkey[] = { 0x38, 0xb1, 0x85, 0xb1, 0xb7, 0xd7, 0x49, 0x7d, 0xb0, 0xeb, 0xb1, 0xf0, 0x99, 0x85, 0x75, 0x70, 0x6b, 0xdc, 0xc0, 0xc6, 0xb4, 0x30, 0x1c, 0x5c, 0x99, 0x08, 0x32, 0x10, 0xea, 0x4d, 0x43, 0x85, 0x4b, 0x92, 0xd8, 0xc3, 0xab, 0xa8, 0x16, 0x38, 0x03, 0x89, 0x30, 0x95, 0xf4, 0x48, 0xfd, 0x6b, 0xec, 0xcf, 0x5b, 0xa9, 0x0e, 0x6d, 0x07, 0x5e, }; static const unsigned char ecdsa_secp224r1_sha3_256_3969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3969_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3969 = { .name = "ecdsa_secp224r1_sha3_256_3969", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3969_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3969_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3969_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 355 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3970 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3970_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3970_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3970 = { .name = "ecdsa_secp224r1_sha3_256_3970", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3970_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3970_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3970_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 356 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3971 for ECDSA, tcId is 357 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3971_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_256_3971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3971_sig[] = { 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd0, 0xc2, 0x26, 0xee, 0x28, 0x50, 0xb7, 0x91, 0x92, 0x34, 0x6c, 0x7c, 0xe3, 0x7d, 0x46, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3971 = { .name = "ecdsa_secp224r1_sha3_256_3971", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3971_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3971_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3971_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 357 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3972 for ECDSA, tcId is 358 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3972_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3972_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3972 = { .name = "ecdsa_secp224r1_sha3_256_3972", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3972_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3972_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3972_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 358 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3973 for ECDSA, tcId is 359 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3973_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3973_sig[] = { 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd0, 0xc2, 0x26, 0xee, 0x28, 0x50, 0xb7, 0x91, 0x92, 0x34, 0x6c, 0x7c, 0xe3, 0x7d, 0x46, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3973 = { .name = "ecdsa_secp224r1_sha3_256_3973", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3973_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3973_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3973_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 359 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3974 for ECDSA, tcId is 360 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3974_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_256_3974_sig[] = { 0x2a, 0x8e, 0x4f, 0xc8, 0xc8, 0x13, 0xbe, 0x04, 0x59, 0xfe, 0x6f, 0xd5, 0xa4, 0x49, 0xfc, 0xd2, 0x71, 0x18, 0x12, 0x11, 0x80, 0xf3, 0x7f, 0x96, 0x85, 0x74, 0x98, 0xfb, 0x48, 0x7f, 0xab, 0xaa, 0xbe, 0xe7, 0x9f, 0x66, 0x7d, 0xa6, 0x50, 0x5c, 0x5c, 0x17, 0x1d, 0x29, 0x97, 0x32, 0xd3, 0x77, 0x84, 0xfd, 0x73, 0x77, 0x5d, 0xfd, 0x3d, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3974 = { .name = "ecdsa_secp224r1_sha3_256_3974", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3974_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha3_256_3974_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 360 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3975 for ECDSA, tcId is 361 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3975_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_256_3975_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha3_256_3975_sig[] = { 0x1e, 0x5a, 0x15, 0x19, 0x0a, 0x1d, 0x26, 0x31, 0xf2, 0x22, 0x2d, 0x70, 0x44, 0x89, 0x04, 0x1f, 0x72, 0xe0, 0xc5, 0x05, 0x48, 0xfd, 0x52, 0x6e, 0xda, 0x97, 0x5e, 0x1f, 0xeb, 0xff, 0x8d, 0xcb, 0x8c, 0x11, 0x34, 0xac, 0x5d, 0xfb, 0x27, 0x11, 0x82, 0x49, 0x55, 0x90, 0xfc, 0x8f, 0xd8, 0xea, 0x7b, 0x0a, 0x4f, 0x7f, 0x8e, 0xc7, 0x89, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3975 = { .name = "ecdsa_secp224r1_sha3_256_3975", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3975_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3975_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha3_256_3975_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 361 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3976 for ECDSA, tcId is 362 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3976_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_256_3976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_256_3976_sig[] = { 0x29, 0x5e, 0x39, 0x9c, 0xbf, 0x49, 0x04, 0xe2, 0x28, 0x50, 0x24, 0x05, 0x98, 0xe0, 0x09, 0xd6, 0xb4, 0x0d, 0x63, 0x91, 0xe3, 0x70, 0xab, 0xa5, 0xa0, 0x40, 0x42, 0xd9, 0x2a, 0x0c, 0x58, 0x41, 0x56, 0x02, 0x71, 0xa3, 0x8c, 0x7b, 0x7c, 0x3b, 0xb0, 0x64, 0x99, 0x0e, 0x20, 0x4b, 0xae, 0x69, 0x3e, 0x21, 0x71, 0xa2, 0x46, 0x94, 0x2d, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3976 = { .name = "ecdsa_secp224r1_sha3_256_3976", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3976_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3976_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_256_3976_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 362 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3977 for ECDSA, tcId is 363 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3977_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_256_3977_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_256_3977_sig[] = { 0xf0, 0x4e, 0x2d, 0xc4, 0xd8, 0xf0, 0x1d, 0xe6, 0x9a, 0x5b, 0xae, 0x38, 0xd0, 0x86, 0x9b, 0xe1, 0x92, 0x6e, 0x0c, 0xa7, 0x5a, 0x64, 0x1f, 0x2f, 0xcd, 0x77, 0x84, 0xd7, 0x96, 0x13, 0x01, 0x22, 0x33, 0xdb, 0x11, 0x5b, 0xa1, 0x80, 0xf7, 0x36, 0x3a, 0xaf, 0xbd, 0xe0, 0x9d, 0xc0, 0xa5, 0xeb, 0xb6, 0x70, 0x76, 0x13, 0x83, 0x8a, 0x14, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3977 = { .name = "ecdsa_secp224r1_sha3_256_3977", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3977_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3977_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha3_256_3977_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 363 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3978 for ECDSA, tcId is 364 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3978_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_256_3978_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3978_sig[] = { 0x40, 0x07, 0x00, 0x8e, 0x43, 0x02, 0x02, 0xf9, 0x57, 0x7e, 0x43, 0xa0, 0xb2, 0x1f, 0xfd, 0x16, 0x9c, 0x04, 0x6d, 0x5b, 0xf3, 0x5c, 0x2b, 0x53, 0x01, 0x15, 0xa6, 0x18, 0xd8, 0x45, 0xd2, 0x7c, 0x3a, 0xb6, 0xd1, 0xf8, 0x18, 0x81, 0xf1, 0xc5, 0xf9, 0x80, 0xd1, 0xc2, 0x58, 0x44, 0xa4, 0x84, 0xa8, 0x7c, 0x99, 0x05, 0x8d, 0x76, 0xe3, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3978 = { .name = "ecdsa_secp224r1_sha3_256_3978", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3978_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3978_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3978_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 364 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3979 for ECDSA, tcId is 365 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3979_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_256_3979_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3979_sig[] = { 0x91, 0x7e, 0x78, 0x5e, 0x5e, 0x04, 0x32, 0xf5, 0x97, 0xd1, 0x0d, 0xc4, 0x00, 0x72, 0x5a, 0x03, 0x44, 0xcf, 0x48, 0x56, 0xbe, 0x31, 0x39, 0x05, 0x73, 0xa1, 0xea, 0xf3, 0xb8, 0x5d, 0x30, 0x90, 0x11, 0x95, 0xe0, 0x5c, 0xbe, 0xf0, 0xe2, 0x82, 0xa0, 0x79, 0xf5, 0xc2, 0x29, 0xea, 0xe8, 0xeb, 0x28, 0x2b, 0xe9, 0x17, 0x6d, 0xf9, 0xed, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3979 = { .name = "ecdsa_secp224r1_sha3_256_3979", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3979_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3979_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3979_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 365 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3980 for ECDSA, tcId is 366 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3980_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_256_3980_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3980_sig[] = { 0x3e, 0x4f, 0x98, 0x83, 0xf7, 0xac, 0xaa, 0xdf, 0x2a, 0x07, 0x62, 0x34, 0xfa, 0x99, 0xfd, 0x25, 0xa5, 0xd8, 0x36, 0x9f, 0xb7, 0x76, 0x6a, 0xa5, 0xb2, 0xeb, 0x3f, 0xd2, 0x42, 0xcb, 0x3e, 0x2e, 0xb9, 0xf5, 0x43, 0x1f, 0xca, 0x4a, 0x7e, 0xc8, 0x36, 0x37, 0xac, 0xa9, 0x2f, 0xbe, 0xbe, 0x8a, 0xfa, 0x4a, 0xb4, 0xbc, 0xed, 0x10, 0x88, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3980 = { .name = "ecdsa_secp224r1_sha3_256_3980", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3980_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3980_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3980_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 366 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3981 for ECDSA, tcId is 367 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3981_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_256_3981_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3981_sig[] = { 0xf3, 0x3a, 0x24, 0xa2, 0xcd, 0x64, 0xf4, 0x1d, 0x98, 0x1f, 0xfa, 0x97, 0xc2, 0x4c, 0xb7, 0x3d, 0x28, 0x37, 0x91, 0x46, 0x82, 0x4c, 0x8d, 0x4c, 0x77, 0xc3, 0x7f, 0x68, 0x70, 0x19, 0xa2, 0x7b, 0xc8, 0x7a, 0xb0, 0x6d, 0x3a, 0x31, 0x2b, 0x30, 0x27, 0x21, 0x51, 0x04, 0x04, 0x4a, 0xb9, 0xa9, 0x17, 0xde, 0x55, 0x42, 0x07, 0x1a, 0x57, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3981 = { .name = "ecdsa_secp224r1_sha3_256_3981", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3981_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3981_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3981_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 367 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3982 for ECDSA, tcId is 368 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3982_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_256_3982_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3982_sig[] = { 0xff, 0x96, 0x12, 0x28, 0xb9, 0x45, 0x51, 0xc2, 0x01, 0xbb, 0x61, 0xc1, 0x52, 0x86, 0xd1, 0x19, 0xe0, 0x2d, 0xb2, 0xf4, 0x5c, 0xdc, 0x66, 0x97, 0x9d, 0xeb, 0xb3, 0xa1, 0x34, 0xa4, 0x90, 0x22, 0x1e, 0x2b, 0xf3, 0x09, 0x7d, 0x36, 0x9f, 0x3f, 0xcf, 0x9c, 0x65, 0x07, 0xa5, 0x67, 0x80, 0x05, 0x1f, 0x54, 0xff, 0x96, 0x1f, 0x77, 0x3e, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3982 = { .name = "ecdsa_secp224r1_sha3_256_3982", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3982_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3982_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3982_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 368 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3983 for ECDSA, tcId is 369 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3983_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_256_3983_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3983_sig[] = { 0xdd, 0xce, 0xd5, 0x2b, 0xca, 0x96, 0x40, 0xb1, 0xa1, 0xa7, 0xf8, 0x5b, 0xb1, 0x2d, 0x8c, 0xf3, 0x6f, 0x0c, 0xd6, 0x0b, 0x27, 0xec, 0xdd, 0xd2, 0xa9, 0x44, 0xdc, 0x49, 0x82, 0x6b, 0x3c, 0x1a, 0x83, 0x9d, 0xa5, 0x4a, 0x8b, 0xee, 0xec, 0xe6, 0x9d, 0xa8, 0x68, 0x1c, 0x64, 0x3f, 0xec, 0x79, 0x39, 0x4d, 0x98, 0x2d, 0xbf, 0x0c, 0x68, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3983 = { .name = "ecdsa_secp224r1_sha3_256_3983", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3983_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3983_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3983_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 369 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3984 for ECDSA, tcId is 370 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3984_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_256_3984_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3984_sig[] = { 0xd8, 0xf0, 0xe2, 0x9a, 0x42, 0x4b, 0xa0, 0xa5, 0x3d, 0xdc, 0xb8, 0xf4, 0x8f, 0xc4, 0xb6, 0x50, 0x19, 0xd0, 0x1e, 0x7e, 0x8d, 0xac, 0x3f, 0xf6, 0x38, 0x47, 0xdc, 0xd3, 0x62, 0xec, 0x0f, 0x1f, 0x7b, 0x36, 0x51, 0x2e, 0xe9, 0x8c, 0xae, 0x1f, 0xac, 0x6b, 0xae, 0x75, 0x05, 0xe8, 0x4e, 0x6e, 0xb2, 0x79, 0x62, 0x3e, 0x06, 0x4f, 0xa0, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3984 = { .name = "ecdsa_secp224r1_sha3_256_3984", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3984_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3984_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3984_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 370 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3985 for ECDSA, tcId is 371 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3985_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_256_3985_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3985_sig[] = { 0xf5, 0xdf, 0x25, 0x24, 0x9a, 0xdb, 0xa5, 0x71, 0x73, 0x54, 0xfe, 0xa1, 0x43, 0xb9, 0x37, 0x93, 0xf3, 0x2e, 0xa8, 0xba, 0x31, 0xcd, 0x37, 0x7f, 0x9b, 0xbb, 0x6e, 0xea, 0x61, 0x37, 0x6f, 0x02, 0xd5, 0xe7, 0x51, 0x7f, 0x1c, 0xd2, 0xa5, 0xc3, 0x6c, 0x45, 0x2a, 0x76, 0xde, 0xcb, 0x28, 0x2d, 0xae, 0xbf, 0xee, 0xa5, 0xa5, 0xb3, 0x2e, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3985 = { .name = "ecdsa_secp224r1_sha3_256_3985", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3985_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3985_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3985_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 371 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3986 for ECDSA, tcId is 372 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3986_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_256_3986_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3986_sig[] = { 0x4b, 0x9b, 0x6f, 0xef, 0xe1, 0x8c, 0x73, 0x27, 0x2e, 0xe6, 0x6a, 0xb9, 0x6f, 0xe3, 0x40, 0xb3, 0x83, 0x5b, 0x1f, 0x63, 0xf9, 0x03, 0xb1, 0xac, 0x76, 0xba, 0x34, 0x57, 0x0c, 0x58, 0x0a, 0x65, 0xc5, 0x3b, 0x48, 0xd1, 0x18, 0x0f, 0x09, 0x85, 0xfe, 0x0f, 0x9d, 0x5f, 0x57, 0xcf, 0x7e, 0xb5, 0xe5, 0x72, 0xb9, 0x71, 0x44, 0x11, 0xaa, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3986 = { .name = "ecdsa_secp224r1_sha3_256_3986", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3986_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3986_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3986_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 372 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3987 for ECDSA, tcId is 373 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3987_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3987_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3987_sig[] = { 0x6f, 0x72, 0xf5, 0x93, 0x4d, 0x17, 0xa1, 0x26, 0xd0, 0xd6, 0xfe, 0x0a, 0xfa, 0x59, 0x95, 0x88, 0xc5, 0x19, 0x63, 0x02, 0x3c, 0xe9, 0x3c, 0x31, 0x2e, 0xc7, 0x7b, 0xaf, 0xd5, 0xb4, 0xb9, 0x69, 0x43, 0xf5, 0x85, 0xcd, 0x15, 0x68, 0xa6, 0x17, 0xe7, 0xc4, 0x7b, 0x9d, 0xfa, 0xdd, 0xfb, 0x58, 0xbe, 0xc1, 0x3c, 0x57, 0xc1, 0x5a, 0x0a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3987 = { .name = "ecdsa_secp224r1_sha3_256_3987", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3987_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3987_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3987_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 373 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3988 for ECDSA, tcId is 374 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3988_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3988_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3988_sig[] = { 0x15, 0x79, 0xcb, 0xc7, 0x1f, 0x2c, 0x06, 0x7d, 0x14, 0x49, 0xc5, 0xea, 0xf3, 0x2e, 0x12, 0x1e, 0xca, 0x05, 0x7a, 0x35, 0xf3, 0x75, 0xbd, 0xc9, 0x3f, 0x77, 0x1a, 0x3c, 0xc5, 0xe8, 0x65, 0xac, 0xd2, 0x1b, 0x48, 0x0a, 0x65, 0x15, 0x0e, 0x70, 0x10, 0xe5, 0x07, 0x2c, 0xc5, 0xaa, 0xc1, 0x6e, 0x33, 0x16, 0xfa, 0x8f, 0xd3, 0x2a, 0x07, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3988 = { .name = "ecdsa_secp224r1_sha3_256_3988", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3988_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3988_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3988_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 374 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3989 for ECDSA, tcId is 375 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3989_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_256_3989_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3989_sig[] = { 0xee, 0x50, 0x1c, 0xaf, 0x39, 0x06, 0x34, 0xfc, 0x37, 0x57, 0xea, 0xd8, 0xe3, 0xf6, 0x2e, 0x5c, 0x8e, 0x86, 0xc0, 0x44, 0x82, 0x89, 0xae, 0x5d, 0xff, 0xc6, 0xa3, 0x0f, 0x36, 0xd3, 0x9f, 0x35, 0x60, 0xc5, 0xaf, 0xa0, 0x57, 0x87, 0x24, 0x87, 0x87, 0x23, 0x5e, 0x8e, 0xdd, 0x8c, 0x42, 0xe7, 0x13, 0xed, 0x43, 0xad, 0xfb, 0x82, 0x87, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3989 = { .name = "ecdsa_secp224r1_sha3_256_3989", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3989_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3989_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3989_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 375 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3990 for ECDSA, tcId is 376 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3990_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3990_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3990_sig[] = { 0x71, 0x47, 0x96, 0xf7, 0xfe, 0x64, 0xf4, 0xde, 0x33, 0xbd, 0xd8, 0xea, 0xef, 0xf4, 0xe7, 0xe3, 0xa8, 0xea, 0x96, 0x64, 0xa0, 0xd3, 0x24, 0x9e, 0x07, 0xbd, 0xec, 0x4f, 0xec, 0x82, 0xe6, 0x4e, 0x1c, 0x6f, 0x65, 0x2d, 0x11, 0x98, 0xc2, 0x99, 0x6f, 0x89, 0x32, 0x22, 0xd9, 0x20, 0xd3, 0x6d, 0x7e, 0x38, 0x50, 0x7e, 0x86, 0xf3, 0x73, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3990 = { .name = "ecdsa_secp224r1_sha3_256_3990", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3990_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3990_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3990_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 376 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3991 for ECDSA, tcId is 377 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3991_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3991_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3991_sig[] = { 0xb0, 0x10, 0xd4, 0x89, 0xc9, 0x66, 0x1c, 0x1a, 0x28, 0x35, 0x37, 0x42, 0x88, 0x68, 0xc4, 0xb5, 0xbb, 0x29, 0xd9, 0x50, 0x3d, 0xe6, 0x97, 0xac, 0x57, 0x4d, 0x22, 0xfd, 0xec, 0x67, 0x7c, 0xa1, 0xc8, 0xb1, 0x2e, 0xb0, 0x30, 0x4c, 0xf0, 0x90, 0xd9, 0x52, 0xc6, 0x38, 0x01, 0xed, 0x9c, 0x82, 0xd7, 0x51, 0xdb, 0xd7, 0x6d, 0x4b, 0xc1, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3991 = { .name = "ecdsa_secp224r1_sha3_256_3991", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3991_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3991_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3991_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 377 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3992 for ECDSA, tcId is 378 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3992_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_256_3992_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3992_sig[] = { 0xa8, 0xfb, 0x6a, 0x1a, 0x55, 0x8c, 0xb2, 0x22, 0x15, 0x60, 0x20, 0x4b, 0xab, 0xed, 0xf6, 0xc4, 0x4d, 0x48, 0x10, 0x9e, 0xba, 0xe7, 0x8d, 0x27, 0xe7, 0x84, 0x05, 0x6b, 0x1e, 0x53, 0x2d, 0x50, 0xe0, 0xb6, 0x72, 0x1e, 0x93, 0x45, 0x24, 0x8f, 0xcc, 0x37, 0x59, 0x30, 0x77, 0xc4, 0xba, 0xb5, 0x75, 0xb5, 0x5d, 0x21, 0x6f, 0xa2, 0xa3, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3992 = { .name = "ecdsa_secp224r1_sha3_256_3992", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3992_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3992_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3992_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 378 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3993 for ECDSA, tcId is 379 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3993_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_256_3993_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3993_sig[] = { 0x80, 0x85, 0xd6, 0xb7, 0xf3, 0xd9, 0x79, 0x35, 0x6f, 0x2a, 0x21, 0x3b, 0xb2, 0x43, 0x74, 0x6e, 0xa6, 0x78, 0xe9, 0x6a, 0x70, 0x5e, 0x68, 0x93, 0xbf, 0x2a, 0x51, 0xf7, 0xb4, 0xd8, 0xbe, 0x5c, 0x3f, 0x99, 0x6e, 0xd4, 0x0a, 0xf1, 0x02, 0x4b, 0x3a, 0x8c, 0x9f, 0x65, 0xc9, 0x0e, 0xfb, 0x41, 0xd8, 0xc5, 0x98, 0x7a, 0xca, 0x11, 0x55, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3993 = { .name = "ecdsa_secp224r1_sha3_256_3993", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3993_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3993_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3993_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 379 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3994 for ECDSA, tcId is 380 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3994_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_256_3994_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3994_sig[] = { 0x5f, 0x1a, 0xdb, 0xfc, 0xde, 0x7a, 0x0a, 0x92, 0x9f, 0x43, 0xba, 0x30, 0xe0, 0xd8, 0x8e, 0xa2, 0xad, 0xa5, 0xb4, 0xa8, 0xbb, 0xf5, 0x53, 0x36, 0xeb, 0x22, 0x8f, 0xdf, 0xea, 0xc9, 0x0d, 0x6f, 0x06, 0x79, 0xbd, 0xee, 0xfc, 0x42, 0x84, 0x02, 0x7c, 0x5e, 0x52, 0x7c, 0xab, 0x4c, 0xb2, 0x76, 0x19, 0x21, 0x77, 0x83, 0xfb, 0x2c, 0x42, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3994 = { .name = "ecdsa_secp224r1_sha3_256_3994", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3994_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3994_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3994_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 380 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3995 for ECDSA, tcId is 381 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3995_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_256_3995_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3995_sig[] = { 0x17, 0xb2, 0x0a, 0x24, 0x45, 0x7e, 0x94, 0xf8, 0xb8, 0x82, 0xa4, 0xfc, 0x99, 0x69, 0x2c, 0x2c, 0x44, 0xb5, 0xc8, 0x53, 0xb9, 0xc2, 0x34, 0xd0, 0x3a, 0xd4, 0x73, 0xb3, 0xb0, 0x3b, 0xf4, 0x7e, 0xa4, 0x53, 0x3e, 0x86, 0x22, 0x9b, 0x96, 0xc6, 0x52, 0x65, 0x42, 0x3f, 0x89, 0xda, 0xad, 0xb9, 0xf3, 0xf6, 0x9b, 0x0e, 0xe3, 0x7c, 0x21, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3995 = { .name = "ecdsa_secp224r1_sha3_256_3995", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3995_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3995_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3995_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 381 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3996 for ECDSA, tcId is 382 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3996_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_256_3996_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3996_sig[] = { 0xfa, 0xcc, 0xc9, 0xc3, 0x8e, 0xbf, 0xa8, 0xe2, 0x74, 0x8d, 0x32, 0xf8, 0xc4, 0x1c, 0xc2, 0x91, 0xc4, 0xa2, 0xb2, 0x7c, 0xad, 0x4a, 0x41, 0x1e, 0x51, 0x19, 0xd1, 0x9b, 0x70, 0xe5, 0xba, 0x90, 0xa6, 0x5e, 0x03, 0x51, 0x55, 0x94, 0xc9, 0x19, 0xf1, 0x7e, 0xac, 0x4d, 0x80, 0x95, 0x96, 0xe6, 0xa2, 0x73, 0x5b, 0x61, 0x7b, 0x38, 0x52, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3996 = { .name = "ecdsa_secp224r1_sha3_256_3996", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3996_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3996_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3996_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 382 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3997 for ECDSA, tcId is 383 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3997_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_256_3997_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3997_sig[] = { 0x8f, 0x8e, 0x90, 0xc2, 0xa8, 0x30, 0x53, 0x45, 0x93, 0xbd, 0xf1, 0xe5, 0x61, 0x4e, 0xd9, 0xca, 0x75, 0xf8, 0x25, 0x39, 0x56, 0xd1, 0x75, 0x79, 0xa6, 0xa4, 0x53, 0x2d, 0x80, 0x0c, 0x2d, 0x43, 0xee, 0xa0, 0xb7, 0x21, 0x1f, 0x73, 0x9f, 0x4e, 0x75, 0xca, 0x56, 0x77, 0xea, 0x0e, 0xfb, 0x10, 0x9b, 0x09, 0x4a, 0xac, 0x35, 0x4a, 0xf6, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3997 = { .name = "ecdsa_secp224r1_sha3_256_3997", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3997_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3997_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3997_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 383 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3998 for ECDSA, tcId is 384 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3998_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_256_3998_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3998_sig[] = { 0x27, 0x28, 0xcc, 0x30, 0x3c, 0x3e, 0xd5, 0x4a, 0x05, 0xa3, 0x71, 0xf1, 0x6a, 0xdd, 0x7c, 0x2d, 0xa6, 0xd2, 0x27, 0x7b, 0x80, 0xa9, 0x32, 0xb7, 0xb9, 0x74, 0x9d, 0xf7, 0xad, 0x2c, 0x93, 0xf8, 0x37, 0x23, 0xc1, 0x9e, 0x20, 0x38, 0x5f, 0xab, 0x91, 0x16, 0x18, 0x81, 0x14, 0xa1, 0x28, 0x0b, 0xe7, 0xd1, 0xfd, 0x9a, 0x66, 0x1e, 0x5e, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3998 = { .name = "ecdsa_secp224r1_sha3_256_3998", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3998_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3998_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3998_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 384 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 3999 for ECDSA, tcId is 385 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_3999_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_256_3999_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_3999_sig[] = { 0x3a, 0x22, 0x4d, 0x4b, 0xaa, 0xa5, 0xd5, 0xc3, 0x32, 0xa3, 0xd6, 0x20, 0x43, 0xb1, 0xaa, 0xf6, 0x6b, 0x02, 0x98, 0x80, 0x01, 0x0c, 0x83, 0x9c, 0x5c, 0x03, 0x3a, 0xa3, 0x2d, 0xe8, 0x7b, 0x37, 0xb0, 0x30, 0x5c, 0xf6, 0x11, 0x2e, 0x0a, 0xc9, 0x42, 0x00, 0x11, 0x8f, 0xf4, 0x93, 0xc0, 0xa3, 0x79, 0xf4, 0xbe, 0xb0, 0xb6, 0x60, 0x2e, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_3999 = { .name = "ecdsa_secp224r1_sha3_256_3999", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_3999_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_3999_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_3999_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 385 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4000 for ECDSA, tcId is 386 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4000_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_256_4000_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4000_sig[] = { 0x91, 0x59, 0xaa, 0x74, 0xa8, 0x8b, 0x59, 0x17, 0x80, 0x96, 0x05, 0xe1, 0x47, 0x36, 0xa0, 0x0e, 0x92, 0xf4, 0xaa, 0xcd, 0xa2, 0xb8, 0x7d, 0xde, 0x95, 0x0a, 0x5f, 0xf8, 0x4b, 0xd4, 0x56, 0xc6, 0x91, 0x4c, 0xf2, 0x1c, 0x88, 0xbe, 0x0b, 0xc9, 0xc6, 0x4a, 0x3d, 0x0d, 0x7b, 0x2c, 0xbd, 0x5c, 0x77, 0x62, 0x97, 0xfe, 0xa3, 0xa1, 0x2f, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4000 = { .name = "ecdsa_secp224r1_sha3_256_4000", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4000_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4000_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4000_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 386 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4001 for ECDSA, tcId is 387 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4001_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_256_4001_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4001_sig[] = { 0x8b, 0x21, 0xed, 0x26, 0xd9, 0x45, 0x56, 0x13, 0xa0, 0x43, 0x1e, 0xdb, 0x41, 0xd4, 0x22, 0x7f, 0xc5, 0x71, 0x1d, 0x1a, 0x6c, 0x70, 0xe4, 0xe0, 0xde, 0x80, 0x17, 0x37, 0x25, 0x92, 0xbe, 0xcb, 0x96, 0x7e, 0x25, 0xd2, 0x34, 0xa2, 0x51, 0x69, 0x86, 0xc1, 0x8a, 0x1c, 0x68, 0x7b, 0x29, 0x69, 0xdb, 0x71, 0x78, 0xcd, 0x20, 0x4d, 0x30, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4001 = { .name = "ecdsa_secp224r1_sha3_256_4001", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4001_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4001_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4001_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 387 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4002 for ECDSA, tcId is 388 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4002_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_256_4002_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4002_sig[] = { 0x5c, 0x7c, 0x63, 0xa6, 0x3a, 0x69, 0x78, 0x7b, 0xfc, 0x46, 0x9a, 0xb7, 0x0a, 0x68, 0x56, 0xf7, 0xf3, 0x22, 0x44, 0x7f, 0x9c, 0xe7, 0x45, 0x73, 0xd0, 0xf9, 0x4d, 0x2d, 0x3e, 0x80, 0xff, 0x0a, 0x9f, 0xbd, 0x8c, 0x11, 0xa0, 0x8d, 0x7d, 0xc0, 0x22, 0x37, 0xe4, 0x35, 0x83, 0x8d, 0xe2, 0xd2, 0xb5, 0x1e, 0xec, 0x11, 0x56, 0xe6, 0x67, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4002 = { .name = "ecdsa_secp224r1_sha3_256_4002", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4002_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4002_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4002_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 388 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4003 for ECDSA, tcId is 389 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4003_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_256_4003_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4003_sig[] = { 0x03, 0x6b, 0x3f, 0x33, 0xcc, 0xc3, 0x47, 0xd6, 0xf0, 0xae, 0x2b, 0x9e, 0x79, 0xef, 0x85, 0x35, 0x1d, 0x06, 0xe6, 0x18, 0x70, 0xb1, 0xcb, 0x08, 0x05, 0x4c, 0x90, 0x9d, 0x9a, 0x27, 0xfe, 0x9d, 0x69, 0x9c, 0xf6, 0xe2, 0xc2, 0xed, 0x2e, 0xd7, 0x0c, 0x96, 0x92, 0xf1, 0xf6, 0xb9, 0x6f, 0xc5, 0xb4, 0xe5, 0x0d, 0x99, 0x26, 0xa7, 0x52, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4003 = { .name = "ecdsa_secp224r1_sha3_256_4003", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4003_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4003_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4003_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 389 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4004 for ECDSA, tcId is 390 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4004_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_256_4004_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4004_sig[] = { 0x31, 0x31, 0xbc, 0xf9, 0x30, 0xd1, 0x13, 0x6d, 0xf1, 0x43, 0x6c, 0x47, 0x80, 0xc0, 0x95, 0xe0, 0x01, 0x70, 0xce, 0xcb, 0x92, 0x9f, 0x6e, 0xe7, 0x1c, 0x74, 0x58, 0xf7, 0xa1, 0xc6, 0xf0, 0xf9, 0x7c, 0xad, 0x15, 0x60, 0x78, 0xd2, 0x48, 0xfc, 0x7e, 0x79, 0x74, 0x04, 0x5d, 0x27, 0x88, 0x8e, 0x8f, 0x65, 0x28, 0xaf, 0x66, 0x04, 0x7f, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4004 = { .name = "ecdsa_secp224r1_sha3_256_4004", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4004_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4004_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4004_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 390 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4005 for ECDSA, tcId is 391 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4005_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_256_4005_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4005_sig[] = { 0x10, 0x23, 0xfa, 0x4d, 0x5d, 0xce, 0xda, 0xb5, 0x3a, 0x8f, 0xdf, 0xe2, 0xa8, 0xf8, 0xda, 0x94, 0x1b, 0xe0, 0x8c, 0x63, 0x14, 0x6e, 0x4b, 0xa2, 0xed, 0x87, 0xbd, 0x4d, 0x36, 0x7a, 0x88, 0xe3, 0x93, 0xfd, 0x1e, 0xe4, 0xec, 0x92, 0x5f, 0x7f, 0x92, 0x0d, 0x4c, 0x3f, 0xe3, 0xba, 0x48, 0xed, 0xbd, 0x25, 0x32, 0x61, 0xec, 0x70, 0x6c, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4005 = { .name = "ecdsa_secp224r1_sha3_256_4005", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4005_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4005_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4005_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 391 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4006 for ECDSA, tcId is 392 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4006_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_256_4006_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4006_sig[] = { 0xb5, 0x25, 0xfb, 0x62, 0x04, 0xd3, 0xd6, 0x0f, 0xd4, 0x06, 0xb1, 0x06, 0x6f, 0x0a, 0xe4, 0xbd, 0x7e, 0xc7, 0x5b, 0x0a, 0xdf, 0xd8, 0x07, 0xde, 0x82, 0x01, 0xf1, 0x0a, 0xfa, 0xed, 0x75, 0x7f, 0x5a, 0x68, 0xd8, 0xa8, 0x33, 0x87, 0x88, 0xea, 0x53, 0x1d, 0x6f, 0x7c, 0x85, 0xa8, 0x8c, 0x9a, 0x8b, 0xae, 0x7f, 0x69, 0x6e, 0xbb, 0x6e, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4006 = { .name = "ecdsa_secp224r1_sha3_256_4006", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4006_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4006_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4006_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 392 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4007 for ECDSA, tcId is 393 in file ecdsa_secp224r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp224r1_sha3_256_4007_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_256_4007_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_256_4007_sig[] = { 0xe4, 0x72, 0xe5, 0x04, 0xef, 0x4b, 0x29, 0x3b, 0x7f, 0x4a, 0x6c, 0xc9, 0x9b, 0xa3, 0x3a, 0x70, 0x2f, 0x35, 0x59, 0x3f, 0x49, 0xcb, 0x28, 0x41, 0x37, 0x77, 0x6b, 0x44, 0xc1, 0xef, 0xe4, 0x40, 0x46, 0x3f, 0xde, 0x3b, 0x60, 0x4d, 0x48, 0x31, 0x9e, 0x0d, 0xdb, 0x93, 0x26, 0x1a, 0xe6, 0x08, 0xd0, 0x09, 0x94, 0x2a, 0x01, 0x93, 0x32, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_256_4007 = { .name = "ecdsa_secp224r1_sha3_256_4007", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_256_4007_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_256_4007_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_256_4007_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 393 in file ecdsa_secp224r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) */ /* Test 4008 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4008_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4008_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x35, 0x25, 0x07, 0xaa, 0xbd, 0x0f, 0x9b, 0xc2, 0x23, 0xe1, 0xac, 0x97, 0xa4, 0xcc, 0xb3, 0x3b, 0x9d, 0xe8, 0xad, 0x3d, 0xf4, 0x47, 0x03, 0x73, 0x67, 0xaa, 0x41, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4008 = { .name = "ecdsa_secp224r1_sha3_512_4008", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4008_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4008_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4008_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4009 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4009_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4009_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4009 = { .name = "ecdsa_secp224r1_sha3_512_4009", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4009_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4009_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4009_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4010 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4010_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4010_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4010 = { .name = "ecdsa_secp224r1_sha3_512_4010", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4010_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4010_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4010_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4011 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4011_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4011_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4011 = { .name = "ecdsa_secp224r1_sha3_512_4011", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4011_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4011_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4011_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4012 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4012_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4012_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4012 = { .name = "ecdsa_secp224r1_sha3_512_4012", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4012_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4012_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4012_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4013 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4013_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4013_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4013 = { .name = "ecdsa_secp224r1_sha3_512_4013", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4013_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4013_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4013_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4014 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4014_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4014_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4014 = { .name = "ecdsa_secp224r1_sha3_512_4014", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4014_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4014_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4014_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4015 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4015_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4015_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4015 = { .name = "ecdsa_secp224r1_sha3_512_4015", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4015_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4015_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4015_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4016 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4016_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4016_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4016 = { .name = "ecdsa_secp224r1_sha3_512_4016", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4016_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4016_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4016_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4017 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4017_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4017_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4017 = { .name = "ecdsa_secp224r1_sha3_512_4017", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4017_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4017_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4017_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4018 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4018_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4018_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x00, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4018 = { .name = "ecdsa_secp224r1_sha3_512_4018", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4018_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4018_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4018_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4019 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4019_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4019_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4019 = { .name = "ecdsa_secp224r1_sha3_512_4019", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4019_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4019_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4019_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4020 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4020_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4020_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4020 = { .name = "ecdsa_secp224r1_sha3_512_4020", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4020_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4020_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4020_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4021 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4021_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4021_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4021 = { .name = "ecdsa_secp224r1_sha3_512_4021", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4021_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4021_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4021_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4022 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4022_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4022_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x05, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4022 = { .name = "ecdsa_secp224r1_sha3_512_4022", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4022_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4022_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4022_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4023 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4023_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4023_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4023 = { .name = "ecdsa_secp224r1_sha3_512_4023", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4023_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4023_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4023_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4024 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4024_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4024_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4024 = { .name = "ecdsa_secp224r1_sha3_512_4024", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4024_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4024_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4024_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4025 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4025_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4025_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4025 = { .name = "ecdsa_secp224r1_sha3_512_4025", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4025_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4025_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4025_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4026 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4026_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4026_sig[] = { 0x02, 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4026 = { .name = "ecdsa_secp224r1_sha3_512_4026", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4026_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4026_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4026_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4027 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4027_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4027_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x02, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4027 = { .name = "ecdsa_secp224r1_sha3_512_4027", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4027_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4027_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4027_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4028 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4028_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4028_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0xe4, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4028 = { .name = "ecdsa_secp224r1_sha3_512_4028", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4028_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4028_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4028_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4029 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4029_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4029_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4029 = { .name = "ecdsa_secp224r1_sha3_512_4029", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4029_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4029_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4029_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4030 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4030_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4030_sig[] = { 0x00, 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4030 = { .name = "ecdsa_secp224r1_sha3_512_4030", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4030_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4030_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4030_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4031 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4031_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4031_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4031 = { .name = "ecdsa_secp224r1_sha3_512_4031", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4031_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4031_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4031_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4032 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4032_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4032_sig[] = { 0x00, 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4032 = { .name = "ecdsa_secp224r1_sha3_512_4032", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4032_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4032_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4032_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4033 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4033_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4033_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4033 = { .name = "ecdsa_secp224r1_sha3_512_4033", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4033_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4033_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4033_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4034 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4034_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4034_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4034 = { .name = "ecdsa_secp224r1_sha3_512_4034", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4034_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4034_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4034_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4035 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4035_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4035_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4035 = { .name = "ecdsa_secp224r1_sha3_512_4035", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4035_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4035_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4035_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4036 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4036_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4036_sig[] = { 0x01, 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x3f, 0xfc, 0xdd, 0xb3, 0x1f, 0x81, 0x91, 0x9d, 0x99, 0xd1, 0x4a, 0x2a, 0x06, 0x7c, 0xa1, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4036 = { .name = "ecdsa_secp224r1_sha3_512_4036", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4036_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4036_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4036_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4037 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4037_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4037_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x41, 0xcf, 0x97, 0xf1, 0xad, 0xa1, 0x15, 0x75, 0xdf, 0x7e, 0xbf, 0x71, 0x4e, 0x28, 0x27, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4037 = { .name = "ecdsa_secp224r1_sha3_512_4037", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4037_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4037_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4037_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4038 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4038_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4038_sig[] = { 0x04, 0x58, 0xe0, 0xed, 0xa8, 0x43, 0xd9, 0x1f, 0x56, 0x62, 0xcc, 0xfd, 0xb3, 0xbf, 0x19, 0xc5, 0x2d, 0x99, 0x6e, 0xac, 0x76, 0x43, 0x57, 0xfb, 0x32, 0x55, 0xad, 0x9c, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4038 = { .name = "ecdsa_secp224r1_sha3_512_4038", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4038_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4038_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4038_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4039 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4039_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4039_sig[] = { 0x04, 0x58, 0xe0, 0xed, 0xa8, 0x43, 0xd9, 0x1f, 0x56, 0x62, 0xcc, 0xfd, 0xb3, 0xbe, 0x30, 0x68, 0x0e, 0x52, 0x5e, 0xea, 0x8a, 0x20, 0x81, 0x40, 0x8e, 0xb1, 0xd7, 0xd9, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4039 = { .name = "ecdsa_secp224r1_sha3_512_4039", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4039_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4039_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4039_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4040 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4040_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4040_sig[] = { 0xfe, 0x04, 0x58, 0xe0, 0xed, 0xa8, 0x43, 0xd9, 0x1f, 0x56, 0x62, 0xcc, 0xfd, 0xb3, 0xc0, 0x03, 0x22, 0x4c, 0xe0, 0x7e, 0x6e, 0x62, 0x66, 0x2e, 0xb5, 0xd5, 0xf9, 0x83, 0x5f, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4040 = { .name = "ecdsa_secp224r1_sha3_512_4040", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4040_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4040_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4040_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4041 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4041_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4041_sig[] = { 0x01, 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4041 = { .name = "ecdsa_secp224r1_sha3_512_4041", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4041_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4041_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4041_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4042 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4042_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4042_sig[] = { 0x04, 0x58, 0xe0, 0xed, 0xa8, 0x43, 0xd9, 0x1f, 0x56, 0x62, 0xcc, 0xfd, 0xb3, 0xbf, 0x19, 0xc5, 0x2d, 0x99, 0x6e, 0xac, 0x76, 0x43, 0x57, 0xfb, 0x32, 0x55, 0xad, 0x9c, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4042 = { .name = "ecdsa_secp224r1_sha3_512_4042", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4042_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4042_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4042_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4043 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4043_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4043_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x01, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x31, 0x7a, 0x0a, 0x23, 0x89, 0x33, 0x3e, 0x33, 0x73, 0x4f, 0x17, 0x51, 0x0e, 0x13, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4043 = { .name = "ecdsa_secp224r1_sha3_512_4043", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4043_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4043_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4043_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4044 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4044_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4044_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x33, 0x4c, 0xc4, 0x62, 0x17, 0x52, 0xc2, 0x0b, 0xb8, 0xfc, 0x8c, 0x98, 0x55, 0xbe, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4044 = { .name = "ecdsa_secp224r1_sha3_512_4044", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4044_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4044_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4044_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4045 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4045_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4045_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x35, 0x25, 0x07, 0xaa, 0xbd, 0x0f, 0x9b, 0xc2, 0x23, 0xe1, 0xac, 0x97, 0xa4, 0xcd, 0x9c, 0x98, 0xbd, 0x2f, 0xbc, 0xff, 0xe0, 0x69, 0xda, 0x2e, 0x0b, 0x4e, 0x16, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4045 = { .name = "ecdsa_secp224r1_sha3_512_4045", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4045_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4045_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4045_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4046 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4046_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4046_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0xfe, 0x35, 0x25, 0x07, 0xaa, 0xbd, 0x0f, 0x9b, 0xc2, 0x23, 0xe1, 0xac, 0x97, 0xa4, 0xce, 0x85, 0xf5, 0xdc, 0x76, 0xcc, 0xc1, 0xcc, 0x8c, 0xb0, 0xe8, 0xae, 0xf1, 0xec, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4046 = { .name = "ecdsa_secp224r1_sha3_512_4046", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4046_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4046_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4046_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4047 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4047_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4047_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x01, 0xca, 0xda, 0xf8, 0x55, 0x42, 0xf0, 0x64, 0x3d, 0xdc, 0x1e, 0x53, 0x68, 0x5b, 0x32, 0x63, 0x67, 0x42, 0xd0, 0x43, 0x00, 0x1f, 0x96, 0x25, 0xd1, 0xf4, 0xb1, 0xe9, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4047 = { .name = "ecdsa_secp224r1_sha3_512_4047", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4047_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4047_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4047_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4048 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4048_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4048_sig[] = { 0xfb, 0xa7, 0x1f, 0x12, 0x57, 0xbc, 0x26, 0xe0, 0xa9, 0x9d, 0x33, 0x02, 0x4c, 0x40, 0xe6, 0x3a, 0xd2, 0x66, 0x91, 0x53, 0x89, 0xbc, 0xa8, 0x04, 0xcd, 0xaa, 0x52, 0x64, 0x35, 0x25, 0x07, 0xaa, 0xbd, 0x0f, 0x9b, 0xc2, 0x23, 0xe1, 0xac, 0x97, 0xa4, 0xcd, 0x9c, 0x98, 0xbd, 0x2f, 0xbc, 0xff, 0xe0, 0x69, 0xda, 0x2e, 0x0b, 0x4e, 0x16, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4048 = { .name = "ecdsa_secp224r1_sha3_512_4048", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4048_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4048_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4048_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4049 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4049_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4049_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4049 = { .name = "ecdsa_secp224r1_sha3_512_4049", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4049_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4049_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4049_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4050 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4050_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4050_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4050 = { .name = "ecdsa_secp224r1_sha3_512_4050", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4050_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4050_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4050_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4051 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4051_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4051_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4051 = { .name = "ecdsa_secp224r1_sha3_512_4051", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4051_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4051_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4051_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4052 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4052_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4052_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4052 = { .name = "ecdsa_secp224r1_sha3_512_4052", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4052_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4052_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4052_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4053 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4053_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4053_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4053 = { .name = "ecdsa_secp224r1_sha3_512_4053", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4053_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4053_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4053_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4054 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4054_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4054_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4054 = { .name = "ecdsa_secp224r1_sha3_512_4054", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4054_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4054_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4054_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4055 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4055_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4055_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4055 = { .name = "ecdsa_secp224r1_sha3_512_4055", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4055_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4055_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4055_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4056 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4056_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4056_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4056 = { .name = "ecdsa_secp224r1_sha3_512_4056", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4056_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4056_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4056_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4057 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4057_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4057_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4057 = { .name = "ecdsa_secp224r1_sha3_512_4057", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4057_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4057_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4057_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4058 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4058_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4058_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4058 = { .name = "ecdsa_secp224r1_sha3_512_4058", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4058_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4058_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4058_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4059 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4059_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4059_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4059 = { .name = "ecdsa_secp224r1_sha3_512_4059", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4059_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4059_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4059_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4060 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4060_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4060_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4060 = { .name = "ecdsa_secp224r1_sha3_512_4060", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4060_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4060_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4060_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4061 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4061_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4061_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4061 = { .name = "ecdsa_secp224r1_sha3_512_4061", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4061_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4061_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4061_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4062 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4062_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4062_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4062 = { .name = "ecdsa_secp224r1_sha3_512_4062", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4062_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4062_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4062_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4063 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4063_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4063_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4063 = { .name = "ecdsa_secp224r1_sha3_512_4063", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4063_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4063_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4063_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4064 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4064_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4064_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4064 = { .name = "ecdsa_secp224r1_sha3_512_4064", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4064_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4064_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4064_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4065 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4065_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4065_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4065 = { .name = "ecdsa_secp224r1_sha3_512_4065", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4065_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4065_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4065_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4066 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4066_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4066_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4066 = { .name = "ecdsa_secp224r1_sha3_512_4066", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4066_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4066_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4066_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4067 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4067_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4067_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4067 = { .name = "ecdsa_secp224r1_sha3_512_4067", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4067_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4067_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4067_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4068 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4068_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4068_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4068 = { .name = "ecdsa_secp224r1_sha3_512_4068", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4068_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4068_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4068_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4069 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4069_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4069_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4069 = { .name = "ecdsa_secp224r1_sha3_512_4069", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4069_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4069_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4069_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4070 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4070_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4070_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4070 = { .name = "ecdsa_secp224r1_sha3_512_4070", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4070_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4070_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4070_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4071 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4071_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4071_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4071 = { .name = "ecdsa_secp224r1_sha3_512_4071", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4071_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4071_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4071_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4072 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4072_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4072_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4072 = { .name = "ecdsa_secp224r1_sha3_512_4072", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4072_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4072_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4072_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4073 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4073_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4073_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4073 = { .name = "ecdsa_secp224r1_sha3_512_4073", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4073_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4073_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4073_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4074 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4074_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4074_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4074 = { .name = "ecdsa_secp224r1_sha3_512_4074", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4074_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4074_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4074_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4075 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4075_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4075_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4075 = { .name = "ecdsa_secp224r1_sha3_512_4075", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4075_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4075_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4075_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4076 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4076_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4076_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4076 = { .name = "ecdsa_secp224r1_sha3_512_4076", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4076_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4076_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4076_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4077 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4077_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4077_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4077 = { .name = "ecdsa_secp224r1_sha3_512_4077", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4077_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4077_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4077_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4078 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4078_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4078_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4078 = { .name = "ecdsa_secp224r1_sha3_512_4078", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4078_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4078_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4078_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4079 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4079_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4079_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4079 = { .name = "ecdsa_secp224r1_sha3_512_4079", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4079_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4079_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4079_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4080 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4080_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4080_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4080 = { .name = "ecdsa_secp224r1_sha3_512_4080", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4080_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4080_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4080_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4081 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4081_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4081_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4081 = { .name = "ecdsa_secp224r1_sha3_512_4081", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4081_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4081_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4081_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4082 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4082_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4082_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4082 = { .name = "ecdsa_secp224r1_sha3_512_4082", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4082_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4082_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4082_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4083 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4083_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4083_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4083 = { .name = "ecdsa_secp224r1_sha3_512_4083", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4083_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4083_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4083_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4084 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4084_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4084_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4084 = { .name = "ecdsa_secp224r1_sha3_512_4084", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4084_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4084_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4084_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4085 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4085_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4085_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4085 = { .name = "ecdsa_secp224r1_sha3_512_4085", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4085_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4085_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4085_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4086 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4086_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4086_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4086 = { .name = "ecdsa_secp224r1_sha3_512_4086", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4086_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4086_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4086_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4087 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4087_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4087_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4087 = { .name = "ecdsa_secp224r1_sha3_512_4087", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4087_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4087_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4087_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4088 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4088_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4088_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4088 = { .name = "ecdsa_secp224r1_sha3_512_4088", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4088_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4088_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4088_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4089 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4089_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4089_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4089 = { .name = "ecdsa_secp224r1_sha3_512_4089", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4089_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4089_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4089_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4090 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4090_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4090_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4090 = { .name = "ecdsa_secp224r1_sha3_512_4090", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4090_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4090_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4090_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4091 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4091_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4091_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4091 = { .name = "ecdsa_secp224r1_sha3_512_4091", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4091_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4091_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4091_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4092 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4092_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4092_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4092 = { .name = "ecdsa_secp224r1_sha3_512_4092", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4092_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4092_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4092_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4093 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4093_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4093_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4093 = { .name = "ecdsa_secp224r1_sha3_512_4093", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4093_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4093_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4093_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4094 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4094_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4094_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4094 = { .name = "ecdsa_secp224r1_sha3_512_4094", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4094_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4094_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4094_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4095 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4095_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4095_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4095 = { .name = "ecdsa_secp224r1_sha3_512_4095", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4095_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4095_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4095_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4096 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4096_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4096_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4096 = { .name = "ecdsa_secp224r1_sha3_512_4096", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4096_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4096_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4096_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4097 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4097_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4097_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4097 = { .name = "ecdsa_secp224r1_sha3_512_4097", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4097_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4097_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4097_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4098 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4098_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4098_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4098 = { .name = "ecdsa_secp224r1_sha3_512_4098", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4098_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4098_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4098_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4099 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4099_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4099_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4099 = { .name = "ecdsa_secp224r1_sha3_512_4099", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4099_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4099_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4099_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4100 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4100_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4100_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4100 = { .name = "ecdsa_secp224r1_sha3_512_4100", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4100_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4100_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4100_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4101 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4101_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4101_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4101 = { .name = "ecdsa_secp224r1_sha3_512_4101", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4101_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4101_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4101_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4102 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4102_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4102_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4102 = { .name = "ecdsa_secp224r1_sha3_512_4102", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4102_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4102_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4102_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4103 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4103_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4103_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4103 = { .name = "ecdsa_secp224r1_sha3_512_4103", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4103_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4103_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4103_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4104 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4104_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4104_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4104 = { .name = "ecdsa_secp224r1_sha3_512_4104", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4104_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4104_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4104_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4105 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4105_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4105_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4105 = { .name = "ecdsa_secp224r1_sha3_512_4105", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4105_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4105_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4105_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4106 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4106_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4106_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4106 = { .name = "ecdsa_secp224r1_sha3_512_4106", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4106_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4106_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4106_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4107 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4107_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4107_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4107 = { .name = "ecdsa_secp224r1_sha3_512_4107", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4107_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4107_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4107_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4108 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4108_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4108_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4108 = { .name = "ecdsa_secp224r1_sha3_512_4108", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4108_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4108_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4108_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4109 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4109_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4109_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4109 = { .name = "ecdsa_secp224r1_sha3_512_4109", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4109_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4109_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4109_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4110 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4110_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4110_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4110 = { .name = "ecdsa_secp224r1_sha3_512_4110", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4110_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4110_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4110_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4111 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4111_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4111_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4111 = { .name = "ecdsa_secp224r1_sha3_512_4111", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4111_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4111_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4111_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4112 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4112_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4112_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4112 = { .name = "ecdsa_secp224r1_sha3_512_4112", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4112_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4112_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4112_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4113 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4113_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4113_msg[] = { 0x35, 0x31, 0x31, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4113_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x91, 0x58, 0x96, 0x58, 0xcc, 0xb7, 0xce, 0xaf, 0x1f, 0x01, 0x74, 0x92, 0x45, 0x0e, 0x29, 0x15, 0xbb, 0x8d, 0x86, 0x3b, 0xb7, 0xf3, 0x98, 0xc8, 0xf5, 0xbc, 0x13, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4113 = { .name = "ecdsa_secp224r1_sha3_512_4113", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4113_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4113_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha3_512_4113_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4114 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4114_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4114_msg[] = { 0x32, 0x37, 0x32, 0x39, 0x37, 0x32, 0x36, 0x34, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4114_sig[] = { 0x5e, 0xe2, 0x7f, 0x92, 0x64, 0xab, 0x53, 0x66, 0x1d, 0x3a, 0x7b, 0x8c, 0x85, 0x83, 0x00, 0xc6, 0xee, 0x59, 0x78, 0xa3, 0x0a, 0xe9, 0xb7, 0xe4, 0x13, 0xdd, 0x68, 0x0d, 0xf9, 0xe6, 0xc2, 0xaa, 0xb2, 0xaf, 0xed, 0x52, 0x3b, 0x01, 0x72, 0xba, 0x11, 0x0b, 0x5b, 0x0d, 0x66, 0x3a, 0x8f, 0x77, 0x22, 0x0b, 0xb8, 0x65, 0xce, 0xf2, 0x0f, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4114 = { .name = "ecdsa_secp224r1_sha3_512_4114", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4114_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4114_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4114_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4115 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4115_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4115_msg[] = { 0x34, 0x33, 0x31, 0x34, 0x37, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4115_sig[] = { 0x1b, 0xb6, 0xce, 0x51, 0xb7, 0xe5, 0x04, 0xcc, 0xd6, 0x9a, 0x91, 0x0a, 0x11, 0xa9, 0xc2, 0x9b, 0xa7, 0x71, 0x00, 0xd5, 0xbc, 0xcb, 0x17, 0x9d, 0xe1, 0x9a, 0x93, 0xdd, 0x77, 0x0a, 0x16, 0x0b, 0x26, 0x35, 0xbb, 0x29, 0x3c, 0x73, 0xa0, 0x7f, 0xb1, 0xfd, 0x5e, 0x03, 0x14, 0xb5, 0x01, 0x27, 0xab, 0x3e, 0x70, 0xd1, 0xab, 0x97, 0x4d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4115 = { .name = "ecdsa_secp224r1_sha3_512_4115", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4115_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4115_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4115_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4116 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4116_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4116_msg[] = { 0x36, 0x36, 0x30, 0x33, 0x34, 0x33, 0x38, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4116_sig[] = { 0xfd, 0x8a, 0x1f, 0x6b, 0xa8, 0x79, 0x41, 0xc7, 0xa4, 0xcb, 0x8e, 0x98, 0x44, 0xfd, 0xba, 0x09, 0x9b, 0xc3, 0x00, 0x36, 0xca, 0xb0, 0xb8, 0x2d, 0xce, 0x68, 0x02, 0xac, 0x97, 0x32, 0xc1, 0xf2, 0x4f, 0xe6, 0xc3, 0xfa, 0x81, 0x13, 0xb7, 0x56, 0xc6, 0xb7, 0xe1, 0x52, 0x33, 0x75, 0xdb, 0xda, 0x78, 0x88, 0x95, 0x01, 0x8e, 0xbf, 0x02, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4116 = { .name = "ecdsa_secp224r1_sha3_512_4116", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4116_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4116_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4116_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4117 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4117_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4117_msg[] = { 0x32, 0x38, 0x32, 0x39, 0x36, 0x32, 0x31, 0x34, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4117_sig[] = { 0xcf, 0xd8, 0x28, 0xe8, 0xc9, 0xb0, 0xb1, 0x73, 0x63, 0x13, 0x65, 0x30, 0xaf, 0x0a, 0x54, 0xa2, 0x1a, 0x6c, 0xbf, 0xfa, 0x7a, 0x20, 0xa2, 0x57, 0x38, 0x51, 0x18, 0xff, 0x7b, 0xc8, 0x79, 0x16, 0x27, 0xfb, 0xb7, 0x4a, 0x63, 0xa7, 0x6c, 0x99, 0xf8, 0xbe, 0xe1, 0x32, 0x59, 0x87, 0xd0, 0xab, 0x2a, 0x15, 0xb0, 0xd5, 0x76, 0x04, 0x14, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4117 = { .name = "ecdsa_secp224r1_sha3_512_4117", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4117_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4117_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4117_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4118 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4118_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4118_msg[] = { 0x34, 0x33, 0x31, 0x31, 0x38, 0x32, 0x31, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4118_sig[] = { 0x35, 0xe4, 0x51, 0x49, 0xbd, 0xcd, 0xb5, 0x5a, 0xe3, 0x7a, 0x3a, 0x29, 0x37, 0xd2, 0xd0, 0x3a, 0x65, 0x75, 0x4e, 0x29, 0x60, 0x5d, 0xcc, 0x50, 0x76, 0xd2, 0x0a, 0xa7, 0xba, 0x6f, 0x5e, 0xb0, 0x5d, 0xa4, 0xfa, 0x57, 0x21, 0x7e, 0xfc, 0xc0, 0x3e, 0x8f, 0x59, 0xa3, 0x5a, 0xfb, 0x6c, 0x20, 0x43, 0xda, 0x8f, 0xfc, 0xdb, 0xfe, 0xa1, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4118 = { .name = "ecdsa_secp224r1_sha3_512_4118", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4118_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4118_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4118_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4119 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4119_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4119_msg[] = { 0x31, 0x31, 0x37, 0x37, 0x30, 0x37, 0x37, 0x34, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4119_sig[] = { 0x3f, 0x5d, 0xfb, 0xa4, 0x48, 0x33, 0x92, 0x87, 0xd1, 0xba, 0xc9, 0x38, 0x30, 0xc8, 0x32, 0x22, 0x40, 0x8a, 0x7b, 0x51, 0x1a, 0xad, 0x1d, 0x5f, 0x53, 0x0d, 0xc6, 0xee, 0xf4, 0x72, 0x6e, 0xda, 0xb9, 0x12, 0x64, 0x10, 0x67, 0x92, 0xe4, 0x5f, 0x30, 0xc8, 0xb4, 0x89, 0xd2, 0x68, 0x29, 0x1d, 0x3c, 0x2a, 0x16, 0x65, 0x55, 0xde, 0xdf, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4119 = { .name = "ecdsa_secp224r1_sha3_512_4119", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4119_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4119_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4119_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4120 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4120_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4120_msg[] = { 0x31, 0x35, 0x39, 0x38, 0x35, 0x31, 0x35, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4120_sig[] = { 0xab, 0x65, 0x41, 0x2c, 0x5d, 0xb5, 0x88, 0x24, 0x2b, 0x51, 0x64, 0x4d, 0xfe, 0x78, 0xd7, 0x25, 0x70, 0xe6, 0x6f, 0xf8, 0x46, 0xfe, 0xb2, 0x81, 0x12, 0xd2, 0x65, 0x1a, 0x87, 0xba, 0x5d, 0x4a, 0x58, 0xed, 0x79, 0x99, 0xf5, 0x02, 0xb7, 0x96, 0x26, 0xb4, 0x5a, 0x0f, 0xb1, 0x9f, 0xd8, 0xe4, 0x57, 0x2b, 0xc1, 0xb5, 0xd4, 0x9b, 0x3b, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4120 = { .name = "ecdsa_secp224r1_sha3_512_4120", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4120_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4120_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4120_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4121 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4121_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4121_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x30, 0x31, 0x36, 0x31, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4121_sig[] = { 0x9e, 0xe1, 0xf0, 0xed, 0xcf, 0x13, 0xe9, 0x52, 0xd2, 0x1c, 0x30, 0xfc, 0x3c, 0x0c, 0x05, 0xa7, 0xb7, 0x46, 0x06, 0x03, 0x89, 0x3d, 0x95, 0x30, 0xd8, 0xe9, 0x02, 0x58, 0x48, 0xef, 0xc4, 0x3f, 0xc2, 0x3f, 0x36, 0xf8, 0x49, 0x70, 0xc9, 0xdf, 0x74, 0xfb, 0x1a, 0x3e, 0x16, 0x3e, 0x95, 0xa1, 0x06, 0x3f, 0xb3, 0xba, 0x96, 0x6e, 0x3e, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4121 = { .name = "ecdsa_secp224r1_sha3_512_4121", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4121_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4121_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4121_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4122 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4122_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4122_msg[] = { 0x32, 0x30, 0x30, 0x34, 0x37, 0x38, 0x33, 0x33, 0x33, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4122_sig[] = { 0xb2, 0x79, 0x45, 0x2a, 0xe2, 0x4e, 0xb1, 0x3c, 0xdf, 0x7f, 0x08, 0x54, 0x40, 0x9a, 0x7a, 0x6c, 0x55, 0x6a, 0xe4, 0x2f, 0x59, 0x0a, 0xd5, 0xee, 0xb8, 0x74, 0xe2, 0x56, 0x2c, 0xc9, 0x6e, 0x8f, 0xf6, 0xe5, 0x23, 0xc2, 0xf1, 0x09, 0x08, 0x03, 0x51, 0xc8, 0xe1, 0x54, 0x2f, 0xe4, 0x05, 0x22, 0x7f, 0xf7, 0x54, 0x2f, 0x2f, 0x92, 0x4e, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4122 = { .name = "ecdsa_secp224r1_sha3_512_4122", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4122_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4122_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4122_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4123 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4123_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4123_msg[] = { 0x39, 0x35, 0x30, 0x30, 0x32, 0x34, 0x37, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4123_sig[] = { 0x39, 0x8b, 0x59, 0xd0, 0xb6, 0xa7, 0x17, 0x1d, 0x35, 0x18, 0xd1, 0xd3, 0xef, 0x67, 0x96, 0xf1, 0x0a, 0x14, 0x25, 0x1a, 0xca, 0x56, 0x30, 0xfa, 0x32, 0x65, 0x57, 0x41, 0x42, 0x59, 0xd0, 0xed, 0xc9, 0xc2, 0xaa, 0xbc, 0x09, 0xc3, 0x7a, 0x69, 0x44, 0x4d, 0xf2, 0x4a, 0x51, 0x91, 0xe2, 0x1d, 0x38, 0x7b, 0x98, 0xb0, 0x80, 0x74, 0x52, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4123 = { .name = "ecdsa_secp224r1_sha3_512_4123", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4123_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4123_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4123_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4124 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4124_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4124_msg[] = { 0x32, 0x32, 0x30, 0x39, 0x35, 0x30, 0x30, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4124_sig[] = { 0xc0, 0x60, 0x48, 0x41, 0xfb, 0x5c, 0xaf, 0x4f, 0x4f, 0x2f, 0x91, 0xfc, 0x78, 0x04, 0x72, 0x93, 0x49, 0xf7, 0x96, 0xad, 0xeb, 0x30, 0x44, 0x86, 0xea, 0x57, 0x9e, 0x02, 0xda, 0xb8, 0x5b, 0x54, 0x30, 0x47, 0xef, 0x1f, 0x2c, 0x2b, 0xf9, 0xfe, 0xab, 0x25, 0xa6, 0xc1, 0xbf, 0xc8, 0x9e, 0x57, 0x34, 0xed, 0xd6, 0x9a, 0x3f, 0x8b, 0x09, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4124 = { .name = "ecdsa_secp224r1_sha3_512_4124", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4124_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4124_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4124_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4125 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4125_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4125_msg[] = { 0x38, 0x31, 0x39, 0x33, 0x37, 0x38, 0x39, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4125_sig[] = { 0x7f, 0x51, 0x27, 0xa8, 0x3c, 0x76, 0x55, 0x4f, 0xe4, 0xfc, 0xc0, 0x0e, 0xa6, 0xe6, 0x2b, 0x14, 0xc8, 0xa6, 0x75, 0x16, 0x8e, 0x60, 0xea, 0x9d, 0x6b, 0x1f, 0x03, 0x4d, 0x7a, 0xb4, 0xac, 0xa6, 0xa9, 0x31, 0x5c, 0x79, 0x59, 0x36, 0xfb, 0x41, 0xbc, 0xf4, 0x6a, 0x48, 0x40, 0xa1, 0xe4, 0x1a, 0x87, 0x4d, 0xdb, 0x1a, 0xd5, 0xb5, 0x50, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4125 = { .name = "ecdsa_secp224r1_sha3_512_4125", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4125_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4125_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4125_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4126 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4126_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4126_msg[] = { 0x33, 0x36, 0x35, 0x30, 0x36, 0x30, 0x33, 0x32, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4126_sig[] = { 0xac, 0xa0, 0xbf, 0x2b, 0xa5, 0x98, 0xaf, 0x7c, 0x37, 0xad, 0xb7, 0x61, 0x7d, 0xa4, 0xb1, 0xb2, 0xef, 0x93, 0xb8, 0x2b, 0x58, 0xf1, 0x16, 0x1d, 0xb8, 0x94, 0x9c, 0xe2, 0x86, 0xd0, 0xe4, 0x74, 0x3c, 0x15, 0xc7, 0x4b, 0x1a, 0xb3, 0x34, 0xe2, 0x36, 0xfc, 0xf2, 0x39, 0x76, 0xc7, 0x31, 0x49, 0x1c, 0x80, 0x8c, 0xc5, 0x50, 0x27, 0x52, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4126 = { .name = "ecdsa_secp224r1_sha3_512_4126", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4126_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4126_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4126_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4127 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4127_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4127_msg[] = { 0x31, 0x36, 0x33, 0x38, 0x33, 0x39, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4127_sig[] = { 0x5f, 0xd0, 0xef, 0xe2, 0xe3, 0x60, 0x41, 0xcd, 0x23, 0x43, 0x1b, 0xb8, 0x5e, 0x2b, 0xc0, 0x38, 0x99, 0x4a, 0x70, 0x6f, 0xb9, 0xa4, 0x0e, 0xe8, 0xea, 0xf1, 0xe6, 0x64, 0xc4, 0x94, 0x18, 0x5a, 0xb2, 0xc6, 0xdf, 0xf6, 0x20, 0xf3, 0xd4, 0x8b, 0xca, 0x61, 0x30, 0xd4, 0xd5, 0x07, 0xe3, 0x5a, 0x00, 0x90, 0xeb, 0x27, 0xf1, 0x67, 0xbd, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4127 = { .name = "ecdsa_secp224r1_sha3_512_4127", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4127_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4127_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4127_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4128 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4128_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4128_msg[] = { 0x32, 0x30, 0x39, 0x31, 0x37, 0x36, 0x38, 0x32, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4128_sig[] = { 0x0f, 0x17, 0x3d, 0x33, 0x84, 0x04, 0x39, 0xb0, 0x07, 0x2b, 0x83, 0x15, 0xe7, 0x35, 0xf3, 0x73, 0x2a, 0x56, 0x57, 0x33, 0x4b, 0x9d, 0x8a, 0x90, 0xfa, 0xba, 0x69, 0x19, 0x9b, 0xe3, 0x35, 0xcd, 0x9d, 0x18, 0xcf, 0x81, 0xa4, 0xfa, 0xae, 0x61, 0x10, 0xf2, 0x53, 0x28, 0x81, 0xab, 0x57, 0xec, 0x71, 0xde, 0xd4, 0x48, 0x39, 0x0e, 0xa2, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4128 = { .name = "ecdsa_secp224r1_sha3_512_4128", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4128_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4128_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4128_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4129 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4129_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4129_msg[] = { 0x39, 0x33, 0x36, 0x34, 0x37, 0x30, 0x32, 0x38, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4129_sig[] = { 0x60, 0x1f, 0x7b, 0xf1, 0x0b, 0xf2, 0x00, 0xa4, 0x83, 0x69, 0xd2, 0x22, 0xd9, 0xe4, 0x07, 0x66, 0x71, 0x33, 0x9a, 0xa9, 0x89, 0x55, 0xde, 0x31, 0xae, 0x7f, 0x45, 0x03, 0xa1, 0x1b, 0x5f, 0x8b, 0x77, 0x0d, 0x78, 0xaa, 0xb8, 0xce, 0x19, 0x18, 0xa6, 0x0b, 0x49, 0x6e, 0x37, 0x75, 0xe9, 0xf9, 0x09, 0x7b, 0xdb, 0xc5, 0x98, 0xc9, 0xe9, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4129 = { .name = "ecdsa_secp224r1_sha3_512_4129", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4129_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4129_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4129_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4130 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4130_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4130_msg[] = { 0x39, 0x32, 0x36, 0x38, 0x36, 0x38, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4130_sig[] = { 0x07, 0xc3, 0x2d, 0xca, 0x0c, 0x28, 0xe0, 0xb3, 0xa1, 0x42, 0x94, 0x4b, 0x4f, 0x37, 0xa1, 0xb9, 0x29, 0x31, 0x75, 0xfb, 0xb5, 0x77, 0xce, 0x38, 0x64, 0x21, 0x54, 0xcc, 0xe4, 0x8d, 0x47, 0x87, 0x0a, 0xfc, 0x0f, 0x16, 0x93, 0x27, 0xcf, 0xba, 0xcf, 0x49, 0xdf, 0x87, 0xbf, 0x20, 0xa1, 0x3f, 0x5c, 0x2a, 0x57, 0x85, 0x4d, 0x21, 0x40, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4130 = { .name = "ecdsa_secp224r1_sha3_512_4130", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4130_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4130_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4130_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4131 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4131_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4131_msg[] = { 0x35, 0x31, 0x37, 0x38, 0x31, 0x33, 0x34, 0x38, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4131_sig[] = { 0xca, 0x32, 0x8d, 0xba, 0x12, 0x9a, 0xe9, 0xa7, 0xb2, 0x73, 0xfd, 0x1b, 0x67, 0xd8, 0x43, 0xe0, 0x2d, 0x5b, 0xd2, 0xc4, 0xd7, 0x75, 0x14, 0x89, 0x1f, 0x2c, 0x08, 0xd5, 0x44, 0xae, 0x98, 0xaf, 0x8f, 0xa9, 0xd5, 0x15, 0x99, 0x5e, 0xe5, 0xa6, 0xfd, 0xf5, 0x68, 0x56, 0xc6, 0x7c, 0x4f, 0xe5, 0xf8, 0x83, 0x27, 0x81, 0x70, 0x4d, 0xac, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4131 = { .name = "ecdsa_secp224r1_sha3_512_4131", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4131_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4131_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4131_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4132 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4132_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4132_msg[] = { 0x34, 0x37, 0x33, 0x35, 0x30, 0x31, 0x30, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4132_sig[] = { 0x6b, 0x00, 0xeb, 0xce, 0xdc, 0x8c, 0x30, 0x52, 0x10, 0x24, 0xd1, 0x5d, 0xfa, 0x14, 0x30, 0x4f, 0x8c, 0x59, 0x4a, 0xb8, 0xa1, 0x7e, 0xb3, 0xdf, 0x68, 0x39, 0x3b, 0x2e, 0x3a, 0x53, 0x18, 0x31, 0x03, 0xdd, 0x1b, 0x1e, 0xf8, 0x63, 0x1e, 0x7c, 0xaf, 0xe5, 0x10, 0xea, 0xc9, 0xab, 0x4c, 0x10, 0x16, 0x4d, 0xf2, 0x08, 0xc5, 0x98, 0xe2, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4132 = { .name = "ecdsa_secp224r1_sha3_512_4132", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4132_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4132_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4132_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4133 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4133_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4133_msg[] = { 0x31, 0x34, 0x33, 0x35, 0x33, 0x39, 0x31, 0x31, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4133_sig[] = { 0x4c, 0xf2, 0x61, 0xaa, 0x66, 0x16, 0x50, 0x93, 0x19, 0x65, 0x30, 0x90, 0xab, 0xd7, 0x07, 0x20, 0x20, 0x26, 0x73, 0x3f, 0xd6, 0x4d, 0xdb, 0x14, 0xf2, 0xab, 0x26, 0xd3, 0xd8, 0xe3, 0x7f, 0xac, 0x62, 0x42, 0x0a, 0x7e, 0x99, 0x44, 0xe4, 0xb3, 0x19, 0xd5, 0xe7, 0x3d, 0x03, 0xb8, 0x7a, 0x58, 0x99, 0x71, 0xfe, 0xd7, 0x01, 0x2a, 0xda, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4133 = { .name = "ecdsa_secp224r1_sha3_512_4133", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4133_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4133_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4133_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4134 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4134_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4134_msg[] = { 0x31, 0x33, 0x38, 0x34, 0x35, 0x34, 0x39, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4134_sig[] = { 0x50, 0x4f, 0x2f, 0x50, 0xca, 0x93, 0x1e, 0x2a, 0x4f, 0x8c, 0xda, 0x0f, 0x08, 0xc2, 0xb7, 0x9e, 0xf0, 0x51, 0x67, 0x7d, 0x76, 0xa0, 0x8f, 0x18, 0x06, 0xc5, 0x3a, 0xf5, 0x73, 0x62, 0x48, 0x50, 0x1f, 0x06, 0x2b, 0x14, 0xbd, 0x3f, 0xee, 0x65, 0x28, 0x70, 0x0d, 0x1a, 0x64, 0xa8, 0xae, 0x30, 0xd7, 0xc7, 0x6e, 0x1a, 0x92, 0xb6, 0x6b, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4134 = { .name = "ecdsa_secp224r1_sha3_512_4134", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4134_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4134_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4134_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4135 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4135_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4135_msg[] = { 0x32, 0x37, 0x36, 0x32, 0x31, 0x39, 0x32, 0x37, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4135_sig[] = { 0x79, 0xa5, 0x48, 0xe4, 0xda, 0x3b, 0x3d, 0xf4, 0xdf, 0x77, 0x4e, 0x7f, 0xb9, 0xdc, 0x4a, 0xf0, 0x70, 0x66, 0x35, 0xc4, 0x54, 0xe9, 0xe2, 0x3c, 0x2a, 0xa2, 0x97, 0x52, 0xb7, 0x40, 0x69, 0xec, 0xca, 0xef, 0xba, 0x00, 0xa7, 0x1f, 0x33, 0xb4, 0x3f, 0x69, 0xea, 0xa3, 0x21, 0xdc, 0x58, 0x43, 0x6e, 0xba, 0xfb, 0xcd, 0x57, 0x46, 0x60, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4135 = { .name = "ecdsa_secp224r1_sha3_512_4135", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4135_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4135_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4135_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4136 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4136_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4136_msg[] = { 0x31, 0x38, 0x33, 0x31, 0x36, 0x35, 0x34, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4136_sig[] = { 0x32, 0x37, 0x72, 0x96, 0xba, 0x47, 0x11, 0x4b, 0x5f, 0x3d, 0xcf, 0xf8, 0x41, 0x41, 0x6b, 0xca, 0x3e, 0x5e, 0x98, 0xd6, 0x4d, 0xd9, 0x87, 0xba, 0xdc, 0x45, 0x76, 0x55, 0x29, 0xa3, 0x7a, 0x14, 0x3b, 0x47, 0xb0, 0x29, 0xe2, 0x56, 0xc7, 0x50, 0x6a, 0x67, 0x9e, 0xe8, 0xf1, 0x96, 0x2c, 0xcb, 0xbb, 0x1c, 0x83, 0xf4, 0x08, 0x85, 0x01, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4136 = { .name = "ecdsa_secp224r1_sha3_512_4136", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4136_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4136_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4136_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4137 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4137_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4137_msg[] = { 0x32, 0x34, 0x33, 0x36, 0x38, 0x39, 0x39, 0x30, 0x33, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4137_sig[] = { 0x75, 0xd6, 0x2c, 0x17, 0x2f, 0x26, 0xe6, 0xe6, 0x83, 0x1c, 0x23, 0x3b, 0x49, 0x89, 0x5c, 0x1a, 0x87, 0xc1, 0xee, 0x3e, 0xf5, 0x7b, 0x71, 0x18, 0x56, 0x19, 0x9e, 0x46, 0x27, 0x83, 0x0a, 0x8d, 0x1f, 0xc4, 0x49, 0x93, 0x99, 0x0a, 0x9d, 0x1b, 0x2b, 0x14, 0x7f, 0xf8, 0x79, 0x2b, 0x0b, 0x08, 0x23, 0xbc, 0x30, 0xfb, 0x01, 0x2c, 0xe9, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4137 = { .name = "ecdsa_secp224r1_sha3_512_4137", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4137_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4137_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4137_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4138 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4138_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4138_msg[] = { 0x32, 0x30, 0x34, 0x30, 0x34, 0x31, 0x32, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4138_sig[] = { 0xfa, 0xb6, 0x2a, 0xd5, 0x26, 0xe8, 0x8f, 0x6b, 0x9c, 0xa7, 0xe2, 0xd2, 0x3f, 0x38, 0xd9, 0xfc, 0xf8, 0x61, 0xcb, 0x7c, 0xc2, 0x75, 0xfa, 0xa2, 0x5c, 0xa6, 0xa0, 0x9b, 0x29, 0xb3, 0x71, 0xdd, 0xa6, 0xef, 0x29, 0xf0, 0x37, 0x18, 0x1b, 0x9c, 0x3b, 0xd9, 0x2c, 0x78, 0x57, 0x8b, 0x43, 0xdd, 0xdb, 0x74, 0xa0, 0x29, 0xbe, 0xa7, 0xf2, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4138 = { .name = "ecdsa_secp224r1_sha3_512_4138", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4138_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4138_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4138_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4139 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4139_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4139_msg[] = { 0x33, 0x33, 0x33, 0x37, 0x31, 0x31, 0x39, 0x39, 0x37, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4139_sig[] = { 0x93, 0x9e, 0x3d, 0x37, 0x87, 0x67, 0xfc, 0x06, 0x9e, 0xe1, 0x93, 0xf0, 0x01, 0xf9, 0xc8, 0x4e, 0x4f, 0x82, 0xdd, 0x40, 0x74, 0x7e, 0x03, 0x7d, 0xf3, 0xfb, 0x20, 0x0d, 0x7d, 0xb5, 0x0e, 0xc0, 0x17, 0x09, 0x8c, 0xab, 0x3a, 0xd0, 0x54, 0x53, 0x0c, 0xee, 0x52, 0x38, 0xb0, 0xa3, 0x15, 0xcd, 0xc8, 0x0a, 0x3d, 0x8a, 0x7d, 0xd0, 0x99, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4139 = { .name = "ecdsa_secp224r1_sha3_512_4139", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4139_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4139_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4139_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4140 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4140_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4140_msg[] = { 0x36, 0x36, 0x39, 0x35, 0x36, 0x32, 0x30, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4140_sig[] = { 0x1a, 0x71, 0xaa, 0x36, 0x38, 0x00, 0x73, 0x1f, 0x4c, 0x5a, 0x9f, 0x0a, 0x42, 0x35, 0x19, 0x8a, 0x76, 0x58, 0xf1, 0xb4, 0x25, 0x97, 0x2e, 0xca, 0xc9, 0xa2, 0xa3, 0x40, 0x21, 0xb6, 0x19, 0x39, 0xe5, 0x75, 0xb1, 0xa5, 0xff, 0x48, 0x74, 0x73, 0xba, 0x38, 0x03, 0x68, 0x3c, 0x8b, 0x20, 0xe8, 0x98, 0x44, 0xa5, 0x57, 0x85, 0x63, 0x0f, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4140 = { .name = "ecdsa_secp224r1_sha3_512_4140", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4140_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4140_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4140_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4141 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4141_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4141_msg[] = { 0x32, 0x30, 0x39, 0x33, 0x30, 0x31, 0x37, 0x37, 0x34, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4141_sig[] = { 0xe7, 0xbd, 0x4d, 0xde, 0xdd, 0x41, 0x2b, 0xdc, 0x84, 0x82, 0xf0, 0x8e, 0x2d, 0xf5, 0x40, 0x57, 0x6b, 0x1b, 0xf7, 0x68, 0x93, 0x3e, 0x1a, 0xdd, 0xa3, 0x0a, 0xb9, 0x63, 0xb7, 0xd6, 0x47, 0x17, 0x0f, 0x0c, 0xfb, 0x03, 0x24, 0xf9, 0xec, 0x2e, 0x29, 0x94, 0x03, 0xdc, 0x6c, 0xf1, 0x58, 0x9b, 0xe3, 0xdf, 0xc6, 0xfc, 0x22, 0x82, 0x34, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4141 = { .name = "ecdsa_secp224r1_sha3_512_4141", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4141_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4141_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4141_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4142 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4142_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x31, 0x37, 0x39, 0x31, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4142_sig[] = { 0xac, 0x96, 0xc0, 0x15, 0x8f, 0x3f, 0x93, 0x9d, 0x14, 0x23, 0x8f, 0x74, 0x4c, 0x9c, 0x2b, 0x57, 0x36, 0xc0, 0x26, 0xdb, 0x41, 0x4c, 0x5d, 0x9c, 0x01, 0x9d, 0x05, 0x62, 0xa2, 0x7c, 0x8a, 0x34, 0x06, 0x5c, 0x71, 0xb9, 0x2a, 0xf1, 0x1d, 0x77, 0xda, 0xd5, 0x33, 0xf9, 0xcc, 0x62, 0x66, 0x7e, 0xa0, 0x9d, 0x50, 0x05, 0x7f, 0xbe, 0xa9, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4142 = { .name = "ecdsa_secp224r1_sha3_512_4142", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4142_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4142_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4142_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4143 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4143_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4143_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, 0x36, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4143_sig[] = { 0xc5, 0x26, 0xa8, 0x88, 0xa4, 0xf7, 0x4f, 0x01, 0xf0, 0x37, 0xb7, 0x55, 0x69, 0x55, 0xdf, 0xca, 0xe7, 0x22, 0x66, 0xe5, 0xdf, 0x55, 0xac, 0x6c, 0xec, 0xbf, 0xb8, 0x5d, 0xd8, 0x5a, 0x5b, 0xc2, 0x4c, 0xb7, 0x3a, 0xba, 0x31, 0x88, 0x09, 0x8c, 0x11, 0xf7, 0x08, 0x7a, 0x39, 0xe5, 0xe6, 0x22, 0x71, 0xe0, 0x16, 0xcb, 0xca, 0x2b, 0x55, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4143 = { .name = "ecdsa_secp224r1_sha3_512_4143", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4143_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4143_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4143_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4144 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4144_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4144_msg[] = { 0x31, 0x31, 0x34, 0x31, 0x37, 0x32, 0x34, 0x31, 0x34, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4144_sig[] = { 0x37, 0x20, 0x6e, 0xde, 0x6a, 0x2f, 0x6b, 0xf4, 0x68, 0xa9, 0x11, 0x52, 0x50, 0x3e, 0xb9, 0x08, 0x37, 0x45, 0x6a, 0x3b, 0x1d, 0x6c, 0x93, 0x7b, 0x0e, 0xfb, 0xf6, 0x0d, 0x96, 0xd3, 0x51, 0x82, 0xfd, 0x97, 0x43, 0x8e, 0x4a, 0x97, 0x8c, 0x22, 0x23, 0xea, 0xc6, 0xa4, 0xf7, 0x00, 0x59, 0x26, 0xe8, 0x95, 0xff, 0x17, 0xd6, 0x67, 0xa2, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4144 = { .name = "ecdsa_secp224r1_sha3_512_4144", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4144_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4144_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4144_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4145 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4145_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4145_msg[] = { 0x32, 0x32, 0x36, 0x38, 0x32, 0x34, 0x36, 0x34, 0x39, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4145_sig[] = { 0xc4, 0x21, 0x06, 0xcf, 0x72, 0xc3, 0x63, 0x2d, 0x1d, 0x4f, 0x15, 0xa0, 0x8b, 0x7b, 0xb7, 0x2c, 0x57, 0xae, 0x82, 0xc0, 0x99, 0x95, 0x3d, 0x32, 0x41, 0x49, 0xb0, 0x3c, 0xfa, 0xd8, 0xd9, 0xd9, 0xda, 0x94, 0x25, 0x9b, 0x71, 0x9f, 0xf6, 0xb6, 0xc8, 0xe6, 0xab, 0x24, 0xbb, 0x36, 0x56, 0x02, 0xec, 0x2f, 0xfe, 0x12, 0xfe, 0x0e, 0x02, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4145 = { .name = "ecdsa_secp224r1_sha3_512_4145", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4145_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4145_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4145_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4146 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4146_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4146_msg[] = { 0x32, 0x37, 0x32, 0x34, 0x37, 0x39, 0x36, 0x37, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4146_sig[] = { 0x0f, 0xc1, 0x58, 0x2e, 0x0b, 0x3e, 0xbe, 0x74, 0xb1, 0xfa, 0x44, 0x25, 0xe3, 0x21, 0xa5, 0xb2, 0xd1, 0x6b, 0x1c, 0x3a, 0xb0, 0x60, 0xe9, 0x8c, 0xf5, 0x30, 0xde, 0xfa, 0x11, 0x5e, 0xae, 0x02, 0x5f, 0xa3, 0x42, 0x26, 0x21, 0xa4, 0x9f, 0xd7, 0x84, 0x86, 0xca, 0x24, 0x58, 0x94, 0xa2, 0xd8, 0x3c, 0x64, 0x4e, 0x31, 0xab, 0xe2, 0x1b, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4146 = { .name = "ecdsa_secp224r1_sha3_512_4146", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4146_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4146_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4146_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4147 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4147_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4147_msg[] = { 0x39, 0x37, 0x33, 0x33, 0x39, 0x35, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4147_sig[] = { 0xc9, 0x65, 0x88, 0xe9, 0x98, 0x31, 0x48, 0x49, 0x62, 0x13, 0x8e, 0xe5, 0xcd, 0x48, 0x7d, 0xde, 0xe8, 0xc2, 0x85, 0x0c, 0x6e, 0x82, 0xdb, 0x35, 0xf8, 0xd5, 0xad, 0x4b, 0x26, 0xee, 0x8a, 0x07, 0x87, 0xb6, 0xc5, 0xba, 0xd7, 0x59, 0x8e, 0x5d, 0x41, 0xe5, 0x98, 0x80, 0xb3, 0x2c, 0xfa, 0x12, 0x5c, 0x89, 0x30, 0xfd, 0xb0, 0xc1, 0x64, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4147 = { .name = "ecdsa_secp224r1_sha3_512_4147", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4147_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4147_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4147_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4148 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4148_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4148_msg[] = { 0x31, 0x35, 0x30, 0x37, 0x30, 0x30, 0x32, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4148_sig[] = { 0xd1, 0x44, 0xba, 0x07, 0xfe, 0x4c, 0x7f, 0x96, 0x35, 0x3d, 0xc8, 0xb1, 0x71, 0x38, 0x4b, 0x44, 0x92, 0xce, 0xbe, 0x74, 0xc8, 0x6c, 0xdf, 0xfe, 0x62, 0x13, 0xf7, 0x96, 0xc1, 0x9f, 0xba, 0x0a, 0x58, 0x85, 0x0f, 0x2d, 0xda, 0xd8, 0xac, 0x81, 0xb4, 0x04, 0xef, 0x18, 0xf5, 0xb1, 0xb4, 0x81, 0x98, 0xe4, 0x8d, 0x06, 0x9d, 0xd9, 0xc2, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4148 = { .name = "ecdsa_secp224r1_sha3_512_4148", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4148_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4148_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4148_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4149 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4149_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4149_msg[] = { 0x33, 0x37, 0x34, 0x33, 0x35, 0x36, 0x38, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4149_sig[] = { 0x48, 0xf0, 0xd2, 0xb5, 0x50, 0x06, 0x51, 0x42, 0x80, 0xce, 0x7a, 0xd2, 0x83, 0x36, 0xab, 0x31, 0xa0, 0x53, 0x6d, 0xee, 0xf7, 0x67, 0xf0, 0x0e, 0xa3, 0x41, 0x9b, 0x97, 0x91, 0x83, 0x26, 0xb9, 0x33, 0x7f, 0x76, 0xf3, 0xb3, 0xb3, 0xb7, 0x89, 0x03, 0x1e, 0x5c, 0x6d, 0x30, 0x00, 0xf7, 0x21, 0x5b, 0x5d, 0x8e, 0xb3, 0x85, 0x46, 0x79, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4149 = { .name = "ecdsa_secp224r1_sha3_512_4149", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4149_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4149_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4149_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4150 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4150_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4150_msg[] = { 0x39, 0x34, 0x37, 0x36, 0x37, 0x31, 0x32, 0x34, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4150_sig[] = { 0x44, 0xd3, 0xa1, 0x82, 0xc9, 0xa8, 0xa2, 0x07, 0xa5, 0xdc, 0xc2, 0x81, 0x1e, 0x30, 0xeb, 0x26, 0x03, 0x7b, 0xb5, 0x62, 0x78, 0x70, 0xa1, 0xe3, 0xa7, 0x54, 0xa1, 0xef, 0x82, 0xa5, 0x97, 0x8d, 0x2f, 0xde, 0xa3, 0x87, 0x5c, 0xfe, 0xa5, 0x7b, 0x31, 0x78, 0x74, 0x2c, 0x42, 0xce, 0xed, 0xd3, 0xb3, 0x96, 0xd5, 0x01, 0x41, 0x85, 0x31, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4150 = { .name = "ecdsa_secp224r1_sha3_512_4150", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4150_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4150_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4150_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4151 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4151_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4151_msg[] = { 0x37, 0x32, 0x35, 0x34, 0x34, 0x34, 0x33, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4151_sig[] = { 0xee, 0xdd, 0xc5, 0x9d, 0x60, 0xf2, 0x75, 0x70, 0x81, 0xc3, 0xb9, 0x15, 0x98, 0x4e, 0x73, 0x9c, 0xe3, 0x1c, 0xcb, 0xf1, 0x84, 0xfe, 0xf2, 0x7d, 0x10, 0x25, 0xc7, 0x11, 0x68, 0x6f, 0x70, 0x48, 0x34, 0x04, 0x7a, 0xe4, 0xb8, 0xbe, 0xef, 0x8f, 0xcb, 0x67, 0xc9, 0x4a, 0x05, 0xb7, 0xf4, 0x76, 0x9d, 0x6d, 0xc9, 0x80, 0x21, 0xc2, 0x1d, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4151 = { .name = "ecdsa_secp224r1_sha3_512_4151", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4151_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4151_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4151_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4152 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4152_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4152_msg[] = { 0x35, 0x35, 0x33, 0x34, 0x30, 0x32, 0x31, 0x32, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4152_sig[] = { 0xba, 0x4c, 0x61, 0x25, 0x40, 0x92, 0x2f, 0x0a, 0x1b, 0x77, 0x0d, 0x93, 0x73, 0xc5, 0x18, 0x99, 0x3f, 0xd4, 0x45, 0x10, 0x50, 0x57, 0xcf, 0x26, 0xc0, 0xae, 0xff, 0x8c, 0x4d, 0x65, 0x65, 0xff, 0x73, 0x17, 0xd8, 0x61, 0xb2, 0xf3, 0xc0, 0x7d, 0xf6, 0x28, 0xa4, 0x8d, 0x42, 0xd2, 0x1a, 0x0e, 0xa9, 0x9e, 0x89, 0x45, 0x48, 0x6c, 0xa3, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4152 = { .name = "ecdsa_secp224r1_sha3_512_4152", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4152_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4152_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4152_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4153 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4153_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4153_msg[] = { 0x31, 0x32, 0x33, 0x30, 0x31, 0x38, 0x31, 0x33, 0x37, 0x39, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4153_sig[] = { 0xe6, 0x76, 0x40, 0xa7, 0x82, 0x68, 0x19, 0x68, 0x97, 0x23, 0x76, 0xb0, 0xfd, 0x72, 0xe5, 0x42, 0x06, 0xaf, 0x32, 0x8a, 0x59, 0xbe, 0x67, 0x1e, 0x61, 0x58, 0x44, 0x8a, 0xf2, 0xa7, 0x6e, 0xd2, 0x67, 0x4b, 0x1f, 0x91, 0x42, 0xf5, 0x4c, 0x8f, 0xe7, 0x6c, 0xb8, 0xdb, 0xff, 0x71, 0xf4, 0xdf, 0x37, 0x75, 0xa2, 0xab, 0xeb, 0x12, 0x0a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4153 = { .name = "ecdsa_secp224r1_sha3_512_4153", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4153_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4153_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4153_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4154 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4154_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4154_msg[] = { 0x39, 0x31, 0x31, 0x35, 0x33, 0x31, 0x37, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4154_sig[] = { 0xc5, 0x20, 0xfa, 0xa7, 0x57, 0x4e, 0x13, 0xbe, 0xc8, 0xb3, 0xf9, 0x97, 0xee, 0x9b, 0x84, 0x4b, 0x63, 0x67, 0xd6, 0x1d, 0x26, 0xca, 0x84, 0xdf, 0xe4, 0xeb, 0x24, 0x5b, 0x82, 0x0b, 0xe3, 0xe4, 0x8a, 0xa4, 0xe5, 0x69, 0xdd, 0x6d, 0x7a, 0x50, 0xe7, 0x4d, 0x65, 0xb5, 0x9f, 0xe6, 0x03, 0xc9, 0x65, 0x1d, 0xd3, 0xab, 0xe8, 0xce, 0x97, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4154 = { .name = "ecdsa_secp224r1_sha3_512_4154", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4154_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4154_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4154_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4155 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4155_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4155_msg[] = { 0x32, 0x38, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4155_sig[] = { 0xd8, 0x6d, 0x56, 0x6f, 0xf5, 0xfc, 0xcc, 0xf3, 0xa3, 0x56, 0x78, 0x6e, 0x61, 0x4b, 0x93, 0x40, 0xc2, 0x42, 0x64, 0x8c, 0x15, 0xec, 0x4b, 0x67, 0x0e, 0xa1, 0x1f, 0x07, 0xab, 0xb0, 0xe7, 0xda, 0x14, 0x33, 0x2b, 0x77, 0x42, 0x63, 0x6b, 0x66, 0xb8, 0xb7, 0xbe, 0xb2, 0xac, 0x4a, 0x15, 0x5f, 0xe6, 0x30, 0x8a, 0xae, 0x6c, 0x70, 0x66, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4155 = { .name = "ecdsa_secp224r1_sha3_512_4155", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4155_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4155_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4155_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4156 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4156_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4156_msg[] = { 0x31, 0x32, 0x33, 0x33, 0x35, 0x38, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4156_sig[] = { 0x66, 0x12, 0xd8, 0x45, 0xfa, 0x2d, 0x59, 0xbe, 0x90, 0xa0, 0xcd, 0x7f, 0x75, 0xa3, 0x50, 0x94, 0x30, 0xac, 0x80, 0x78, 0x31, 0x7d, 0x38, 0x5f, 0xbe, 0xf5, 0x68, 0xa5, 0xc5, 0xdf, 0x1c, 0xd8, 0x92, 0x0c, 0xd3, 0xb8, 0x72, 0xe2, 0x33, 0x55, 0x22, 0xbe, 0xf8, 0x29, 0x5c, 0xb5, 0x44, 0x08, 0x2d, 0x26, 0x9b, 0x83, 0xaf, 0xf8, 0x4e, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4156 = { .name = "ecdsa_secp224r1_sha3_512_4156", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4156_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4156_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4156_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4157 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4157_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4157_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x36, 0x39, 0x32, 0x35, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4157_sig[] = { 0x09, 0x8f, 0x52, 0x93, 0xe6, 0x12, 0x2f, 0xd4, 0x50, 0xe1, 0xf3, 0x18, 0x2e, 0x6f, 0x23, 0x23, 0xb5, 0x87, 0x8b, 0x39, 0xaf, 0xa4, 0x18, 0x48, 0x83, 0x97, 0x7c, 0x3d, 0x93, 0x6a, 0x9a, 0xf9, 0x9a, 0x3c, 0x54, 0xe1, 0xb9, 0x4a, 0x04, 0xfe, 0xf8, 0x6c, 0xc7, 0xa1, 0x65, 0x26, 0xfe, 0xa6, 0x6f, 0x6a, 0x1c, 0x3d, 0x40, 0xda, 0x16, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4157 = { .name = "ecdsa_secp224r1_sha3_512_4157", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4157_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4157_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4157_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4158 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4158_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4158_msg[] = { 0x33, 0x30, 0x30, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4158_sig[] = { 0xf5, 0xa5, 0x24, 0xac, 0xbb, 0xad, 0xe6, 0x85, 0x2c, 0x29, 0x13, 0x2c, 0x32, 0xd6, 0x1b, 0x06, 0x70, 0x7a, 0x38, 0x8c, 0xb3, 0xce, 0xbd, 0x8e, 0xeb, 0x59, 0xd1, 0xad, 0xd7, 0xde, 0x65, 0xc5, 0x0b, 0x21, 0xa8, 0x4e, 0x6f, 0x49, 0xb7, 0x1f, 0xda, 0xf9, 0x77, 0xe3, 0xd2, 0xee, 0x8f, 0xec, 0x00, 0x8e, 0x47, 0x74, 0x28, 0xb0, 0x85, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4158 = { .name = "ecdsa_secp224r1_sha3_512_4158", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4158_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4158_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4158_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4159 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4159_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4159_msg[] = { 0x38, 0x33, 0x35, 0x36, 0x37, 0x36, 0x32, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4159_sig[] = { 0xd7, 0xc5, 0xda, 0x50, 0x9b, 0xf4, 0x29, 0x83, 0xf7, 0xef, 0x6d, 0x75, 0x78, 0xeb, 0x29, 0x7f, 0x58, 0xb5, 0x1b, 0x2c, 0x47, 0x00, 0x1c, 0x6f, 0xdf, 0x3a, 0xaf, 0xe8, 0xc6, 0xac, 0x06, 0x90, 0x05, 0x0f, 0x22, 0xe9, 0xfb, 0x9f, 0x0f, 0xda, 0xa2, 0x4b, 0xd1, 0x55, 0x8f, 0x79, 0x3a, 0x0a, 0x9a, 0x56, 0x92, 0xf8, 0xe5, 0x79, 0x59, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4159 = { .name = "ecdsa_secp224r1_sha3_512_4159", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4159_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4159_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4159_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4160 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4160_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4160_msg[] = { 0x38, 0x33, 0x32, 0x39, 0x35, 0x30, 0x30, 0x37, 0x36, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4160_sig[] = { 0xd6, 0xa3, 0x20, 0x76, 0xb2, 0xf8, 0x53, 0x98, 0x95, 0x9f, 0x54, 0x21, 0x8b, 0xef, 0xef, 0xc3, 0xff, 0xaa, 0xa3, 0xb7, 0xa7, 0x27, 0x2b, 0xb8, 0x5e, 0xd0, 0x67, 0x68, 0x1b, 0xa4, 0x2e, 0xbb, 0x39, 0x27, 0xb3, 0xa7, 0x7b, 0xe0, 0xbb, 0x83, 0x59, 0xa9, 0x15, 0x66, 0x72, 0x8f, 0xb6, 0xb7, 0x9c, 0x20, 0x6b, 0xf0, 0xfd, 0xa9, 0x60, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4160 = { .name = "ecdsa_secp224r1_sha3_512_4160", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4160_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4160_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4160_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4161 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4161_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4161_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x38, 0x34, 0x31, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4161_sig[] = { 0x87, 0x07, 0x12, 0x6e, 0x07, 0xab, 0x96, 0x35, 0xcb, 0x48, 0xba, 0xd9, 0xe9, 0xb0, 0x3b, 0x43, 0x23, 0x29, 0xee, 0x15, 0x8b, 0x17, 0x3b, 0xd8, 0x75, 0x3e, 0x3f, 0x44, 0x12, 0x14, 0x61, 0x7e, 0x15, 0x47, 0x95, 0x6f, 0x34, 0xf9, 0x70, 0x1d, 0x4a, 0x73, 0x95, 0x8f, 0xfe, 0x91, 0xd9, 0xfa, 0xfe, 0xb8, 0xb2, 0x8f, 0xa3, 0x85, 0x16, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4161 = { .name = "ecdsa_secp224r1_sha3_512_4161", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4161_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4161_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4161_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4162 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4162_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4162_msg[] = { 0x37, 0x33, 0x30, 0x32, 0x33, 0x35, 0x38, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4162_sig[] = { 0xd2, 0x2d, 0x8e, 0x4c, 0xd3, 0x78, 0xfc, 0xed, 0x31, 0x2d, 0x89, 0x3e, 0x6b, 0x3b, 0x4c, 0x09, 0x04, 0xfe, 0x29, 0x32, 0xeb, 0x80, 0x5b, 0xc0, 0xfa, 0x2e, 0xbc, 0xe2, 0xf0, 0xea, 0xa7, 0xc6, 0xd1, 0x0f, 0xba, 0x23, 0xcd, 0xe0, 0x5b, 0xe6, 0xdf, 0xd7, 0xa1, 0x2c, 0xa7, 0x78, 0x2c, 0xbe, 0x26, 0x39, 0xf1, 0x21, 0x54, 0x00, 0x94, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4162 = { .name = "ecdsa_secp224r1_sha3_512_4162", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4162_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4162_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4162_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4163 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4163_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4163_msg[] = { 0x31, 0x33, 0x34, 0x37, 0x33, 0x37, 0x33, 0x37, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4163_sig[] = { 0xf6, 0xe4, 0x06, 0xee, 0x55, 0xff, 0xc2, 0xa6, 0x1f, 0x2a, 0xdb, 0x63, 0xe3, 0xcb, 0x19, 0x28, 0x4b, 0x1c, 0x06, 0x7c, 0x12, 0x8c, 0xf4, 0x45, 0xb6, 0x8d, 0xc2, 0x59, 0xe1, 0x7e, 0x2c, 0x98, 0x58, 0x8c, 0xe6, 0xca, 0xb0, 0x1a, 0xc7, 0xbb, 0xa1, 0xe3, 0xeb, 0xe1, 0xb4, 0x52, 0x66, 0x56, 0x3d, 0x14, 0x82, 0xc9, 0x20, 0xec, 0x8e, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4163 = { .name = "ecdsa_secp224r1_sha3_512_4163", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4163_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4163_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4163_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4164 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4164_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4164_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x35, 0x33, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4164_sig[] = { 0xd9, 0x16, 0x13, 0xf7, 0xe2, 0xf1, 0x45, 0x6d, 0x83, 0x3f, 0x2c, 0x9a, 0xac, 0x07, 0x96, 0x36, 0x60, 0x79, 0xe9, 0x2f, 0x2e, 0x30, 0x98, 0x54, 0x40, 0xa2, 0x94, 0x09, 0xe6, 0x72, 0x17, 0xbd, 0x2b, 0x57, 0x81, 0x72, 0xb9, 0xf2, 0x25, 0xc7, 0x01, 0x4d, 0x6c, 0xdc, 0xf8, 0x75, 0xcd, 0xe0, 0x42, 0x8e, 0x51, 0x55, 0x1b, 0x29, 0x59, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4164 = { .name = "ecdsa_secp224r1_sha3_512_4164", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4164_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4164_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4164_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4165 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4165_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4165_msg[] = { 0x33, 0x35, 0x33, 0x35, 0x30, 0x34, 0x30, 0x30, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4165_sig[] = { 0x9d, 0x0d, 0x16, 0x13, 0x52, 0xc2, 0x89, 0xf9, 0xb1, 0x02, 0x1b, 0x88, 0xc4, 0x67, 0xcd, 0xd1, 0xe6, 0xd3, 0x84, 0xe3, 0xe4, 0x01, 0x9d, 0xa7, 0xc5, 0x6c, 0x49, 0x2d, 0x1c, 0x4c, 0x4b, 0xe4, 0xf3, 0xc9, 0x48, 0x3b, 0x50, 0x27, 0xb5, 0xfc, 0x7d, 0x47, 0x29, 0xcd, 0x74, 0xc3, 0xb9, 0xce, 0xf7, 0x51, 0xef, 0x62, 0xd2, 0x25, 0x01, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4165 = { .name = "ecdsa_secp224r1_sha3_512_4165", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4165_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4165_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4165_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4166 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4166_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4166_msg[] = { 0x31, 0x34, 0x32, 0x30, 0x33, 0x35, 0x37, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4166_sig[] = { 0xac, 0x98, 0xa4, 0xd2, 0x98, 0xb0, 0x96, 0xe7, 0x84, 0x61, 0x60, 0x21, 0x20, 0xd1, 0x66, 0x03, 0x11, 0xfb, 0x8a, 0xb1, 0xf1, 0x8b, 0x46, 0xea, 0xb3, 0xda, 0x4d, 0x8d, 0x56, 0xff, 0x93, 0xd6, 0x98, 0xfd, 0xa5, 0xd8, 0xd0, 0x1a, 0x59, 0x16, 0xea, 0x6d, 0x34, 0x85, 0x10, 0xf2, 0x08, 0x0c, 0x8d, 0x78, 0x4e, 0x80, 0x1a, 0x83, 0xbe, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4166 = { .name = "ecdsa_secp224r1_sha3_512_4166", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4166_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4166_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4166_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4167 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4167_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4167_msg[] = { 0x39, 0x30, 0x35, 0x31, 0x37, 0x35, 0x30, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4167_sig[] = { 0xf6, 0x1a, 0xb8, 0x9e, 0xac, 0x55, 0xf6, 0x22, 0x43, 0x81, 0x07, 0x1c, 0x23, 0x43, 0xdf, 0x90, 0x21, 0x70, 0xb5, 0x83, 0x89, 0xed, 0xcf, 0x7e, 0x54, 0x99, 0xce, 0xc4, 0xef, 0xdc, 0x81, 0x58, 0xe8, 0x39, 0x2d, 0xfe, 0xa1, 0xc5, 0x5c, 0x5d, 0x62, 0xae, 0x7b, 0x69, 0x5f, 0x82, 0x2a, 0x64, 0x07, 0xce, 0x52, 0xc3, 0xdc, 0xd2, 0xf8, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4167 = { .name = "ecdsa_secp224r1_sha3_512_4167", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4167_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4167_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4167_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4168 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4168_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4168_msg[] = { 0x31, 0x36, 0x31, 0x33, 0x37, 0x37, 0x34, 0x32, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4168_sig[] = { 0xe7, 0x35, 0x56, 0xf6, 0x5f, 0xe4, 0x0b, 0x25, 0x99, 0xb3, 0x6a, 0xbd, 0x67, 0x9d, 0xad, 0x75, 0xfe, 0x95, 0x1f, 0x32, 0xb7, 0x77, 0x1e, 0xe6, 0x26, 0x9b, 0x74, 0x70, 0x68, 0x7f, 0xb6, 0x34, 0x2c, 0x4b, 0xd2, 0xf3, 0xa2, 0x15, 0xc0, 0x40, 0x59, 0x41, 0xbe, 0x22, 0x60, 0x22, 0x97, 0x16, 0x4f, 0xa9, 0x11, 0x5f, 0xa9, 0x7f, 0x58, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4168 = { .name = "ecdsa_secp224r1_sha3_512_4168", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4168_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4168_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4168_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4169 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4169_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4169_msg[] = { 0x38, 0x37, 0x33, 0x36, 0x37, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4169_sig[] = { 0x6b, 0x12, 0x01, 0x49, 0x42, 0x85, 0xb6, 0x3e, 0x42, 0xb5, 0x9c, 0xa8, 0xbd, 0x67, 0xbb, 0x65, 0x5f, 0x41, 0xd0, 0x20, 0x48, 0x7c, 0x6d, 0x4b, 0x45, 0xc5, 0x26, 0x8a, 0x95, 0x28, 0xc4, 0xec, 0xfb, 0x75, 0x62, 0x8e, 0xcb, 0xde, 0x99, 0xaa, 0x0a, 0x13, 0x04, 0x63, 0xa1, 0xdf, 0x91, 0xb0, 0x20, 0x5d, 0xe0, 0xb7, 0x26, 0xfe, 0x6f, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4169 = { .name = "ecdsa_secp224r1_sha3_512_4169", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4169_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4169_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4169_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4170 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4170_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4170_msg[] = { 0x34, 0x33, 0x35, 0x35, 0x31, 0x30, 0x36, 0x34, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4170_sig[] = { 0x4e, 0x02, 0x9b, 0x6b, 0x69, 0xd4, 0x1f, 0xfa, 0xc3, 0xc9, 0xd4, 0x6c, 0x79, 0x60, 0x44, 0x66, 0xfa, 0x42, 0xa7, 0xa6, 0x6a, 0x6c, 0xc8, 0x73, 0xde, 0xa2, 0xf5, 0x54, 0xd5, 0x54, 0xc4, 0x22, 0xd0, 0x3c, 0x26, 0x42, 0x84, 0x8e, 0x99, 0x40, 0x0a, 0xaf, 0x41, 0x1d, 0x6e, 0xc8, 0x1f, 0xa0, 0xeb, 0x9b, 0x43, 0xc4, 0xc0, 0xbc, 0xeb, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4170 = { .name = "ecdsa_secp224r1_sha3_512_4170", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4170_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4170_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4170_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4171 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4171_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4171_msg[] = { 0x34, 0x35, 0x33, 0x39, 0x35, 0x37, 0x35, 0x38, 0x37, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4171_sig[] = { 0x7b, 0x98, 0xc9, 0xde, 0xe7, 0xac, 0x12, 0xa6, 0xc2, 0xf5, 0x9b, 0x20, 0x54, 0x8a, 0x86, 0xca, 0xfd, 0x77, 0x75, 0xa1, 0x5f, 0xe2, 0x90, 0xd4, 0x84, 0x84, 0xdd, 0x44, 0xe6, 0x69, 0x0c, 0x32, 0xb6, 0xb1, 0xae, 0xc8, 0x25, 0xcf, 0xf9, 0xd2, 0xd4, 0x7a, 0x1b, 0xf5, 0xd6, 0xd2, 0x00, 0x00, 0x98, 0x33, 0x97, 0xbf, 0x48, 0xc0, 0x4c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4171 = { .name = "ecdsa_secp224r1_sha3_512_4171", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4171_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4171_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4171_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4172 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4172_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4172_msg[] = { 0x38, 0x39, 0x33, 0x36, 0x36, 0x33, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4172_sig[] = { 0x8e, 0xd3, 0x38, 0x5d, 0xfe, 0x12, 0x2f, 0x21, 0x25, 0x9b, 0x55, 0x02, 0x8c, 0x6b, 0xa2, 0xf9, 0xac, 0x94, 0x59, 0x4b, 0xcb, 0x58, 0x47, 0xb7, 0x64, 0x67, 0x7d, 0xc7, 0xb5, 0xa1, 0x2a, 0x3f, 0x4b, 0x08, 0x85, 0x61, 0xe1, 0xa0, 0x07, 0xe4, 0xf0, 0x52, 0xbc, 0xff, 0xaa, 0xd0, 0x5b, 0x5e, 0x72, 0x7f, 0x3e, 0x93, 0x85, 0x15, 0x40, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4172 = { .name = "ecdsa_secp224r1_sha3_512_4172", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4172_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4172_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4172_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4173 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4173_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4173_msg[] = { 0x33, 0x38, 0x30, 0x36, 0x30, 0x36, 0x38, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4173_sig[] = { 0xa3, 0xfe, 0x5b, 0xf1, 0xea, 0xe0, 0x43, 0xde, 0xc8, 0x02, 0x1e, 0x5b, 0xc9, 0x09, 0x0f, 0xe8, 0xd5, 0x91, 0x1c, 0x1d, 0x6d, 0x5a, 0x5b, 0x98, 0xb0, 0xf8, 0x88, 0xea, 0x7e, 0xd5, 0x5b, 0xe1, 0xe9, 0xae, 0x72, 0x8f, 0xe9, 0x54, 0xd3, 0x4c, 0x3e, 0xff, 0xea, 0xe4, 0x2d, 0x5f, 0x03, 0x09, 0x2d, 0x7e, 0xeb, 0x07, 0x10, 0xbf, 0x1d, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4173 = { .name = "ecdsa_secp224r1_sha3_512_4173", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4173_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4173_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4173_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4174 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4174_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4174_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x38, 0x31, 0x37, 0x34, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4174_sig[] = { 0x3e, 0x65, 0x73, 0xe0, 0xdc, 0x06, 0x0e, 0xc8, 0x8b, 0xe1, 0x61, 0xec, 0xfb, 0x22, 0x00, 0xc6, 0xf7, 0xff, 0x51, 0x27, 0xa1, 0x38, 0x20, 0xbb, 0xc4, 0x60, 0x2a, 0x54, 0xc8, 0x52, 0xd8, 0x87, 0x55, 0xd4, 0xbd, 0x24, 0x4f, 0x0a, 0xca, 0xfd, 0x41, 0x8e, 0x49, 0x92, 0x45, 0xf2, 0xe6, 0x41, 0x7d, 0xc8, 0xbe, 0x72, 0x51, 0x43, 0xb1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4174 = { .name = "ecdsa_secp224r1_sha3_512_4174", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4174_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4174_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4174_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4175 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4175_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4175_msg[] = { 0x34, 0x30, 0x37, 0x34, 0x33, 0x32, 0x32, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4175_sig[] = { 0xcc, 0xdd, 0xf9, 0x9c, 0xfb, 0x3a, 0xe0, 0x6c, 0x47, 0x8e, 0x62, 0xb4, 0x99, 0xcd, 0xb2, 0xe5, 0xa9, 0x8c, 0x66, 0x5d, 0x5f, 0xd3, 0x23, 0xcd, 0x67, 0x33, 0xf2, 0x62, 0xeb, 0x3b, 0x93, 0xb3, 0x5d, 0xdd, 0x92, 0x62, 0xe3, 0x17, 0x4a, 0xaa, 0x32, 0xbc, 0xf4, 0x6a, 0xef, 0x4b, 0xec, 0xd9, 0x91, 0x61, 0x66, 0xfa, 0x3d, 0x7c, 0xb0, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4175 = { .name = "ecdsa_secp224r1_sha3_512_4175", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4175_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4175_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4175_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4176 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4176_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4176_msg[] = { 0x36, 0x31, 0x30, 0x36, 0x37, 0x35, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4176_sig[] = { 0x08, 0x8d, 0x46, 0x1e, 0x34, 0x99, 0x3c, 0x86, 0xd1, 0x52, 0x0b, 0xfb, 0x3a, 0x90, 0xf1, 0x19, 0x0e, 0x08, 0x86, 0x89, 0x88, 0xbc, 0x62, 0x3c, 0xde, 0x1e, 0xb8, 0x79, 0xa1, 0x18, 0x13, 0x6b, 0xc4, 0x71, 0x81, 0xa4, 0xed, 0xf9, 0xe0, 0x5d, 0x3d, 0xb4, 0xeb, 0x5a, 0xc7, 0x3d, 0xa5, 0x0a, 0x95, 0xb7, 0x51, 0xe4, 0x89, 0x39, 0xbe, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4176 = { .name = "ecdsa_secp224r1_sha3_512_4176", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4176_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4176_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4176_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4177 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4177_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4177_msg[] = { 0x31, 0x37, 0x34, 0x31, 0x38, 0x37, 0x33, 0x39, 0x32, 0x31, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4177_sig[] = { 0xb5, 0x1b, 0xf3, 0x89, 0xa8, 0x98, 0x40, 0x73, 0x22, 0xd5, 0xfe, 0x14, 0x2a, 0xb2, 0xf8, 0x14, 0x39, 0x00, 0x5a, 0xb9, 0xb4, 0xac, 0x3f, 0x40, 0x31, 0xc0, 0x6d, 0x43, 0x59, 0x30, 0x03, 0x5a, 0x00, 0xf6, 0xa1, 0xbb, 0x80, 0x5d, 0x8c, 0x7a, 0xcd, 0xf4, 0x2b, 0x18, 0xb0, 0x20, 0xa9, 0x42, 0x6a, 0xb7, 0xe2, 0xce, 0x41, 0xf3, 0x69, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4177 = { .name = "ecdsa_secp224r1_sha3_512_4177", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4177_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4177_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4177_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4178 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4178_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4178_msg[] = { 0x35, 0x31, 0x32, 0x37, 0x38, 0x34, 0x32, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4178_sig[] = { 0x56, 0x5c, 0x68, 0x27, 0xc8, 0xf1, 0x8d, 0xaa, 0x21, 0xa6, 0xb1, 0xed, 0xb8, 0xaf, 0x81, 0x19, 0x3e, 0x8e, 0x39, 0x1f, 0x3e, 0x83, 0x60, 0xb3, 0x46, 0xc7, 0xb9, 0x8a, 0x46, 0x8b, 0x8b, 0x2e, 0x16, 0xc5, 0x1e, 0x41, 0xe2, 0x66, 0x51, 0x49, 0x3e, 0x02, 0xf0, 0xdb, 0x3a, 0xf5, 0xc9, 0x98, 0x1e, 0xdf, 0xff, 0x29, 0x91, 0xd1, 0x05, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4178 = { .name = "ecdsa_secp224r1_sha3_512_4178", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4178_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4178_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4178_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4179 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4179_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4179_msg[] = { 0x35, 0x30, 0x33, 0x38, 0x36, 0x39, 0x30, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4179_sig[] = { 0x60, 0x30, 0xec, 0x07, 0xae, 0x1c, 0xd9, 0x91, 0xdf, 0xbc, 0x6b, 0x48, 0xda, 0x43, 0xc6, 0x24, 0x0b, 0x5b, 0xb8, 0xf7, 0xfe, 0x19, 0x83, 0x2d, 0xf5, 0x96, 0x75, 0x4d, 0x54, 0xb9, 0x3d, 0x4a, 0xe5, 0x2e, 0x4c, 0xb7, 0xeb, 0x96, 0x9a, 0x1e, 0xb6, 0x2f, 0x0b, 0xe3, 0x95, 0xd3, 0x0a, 0x43, 0xe7, 0xd5, 0x73, 0x6d, 0xf6, 0xb5, 0x08, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4179 = { .name = "ecdsa_secp224r1_sha3_512_4179", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4179_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4179_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4179_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4180 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4180_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4180_msg[] = { 0x33, 0x38, 0x37, 0x37, 0x30, 0x34, 0x32, 0x33, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4180_sig[] = { 0x75, 0xc3, 0x99, 0x54, 0xf9, 0xf9, 0x56, 0x18, 0xcb, 0x89, 0x0b, 0x1a, 0x90, 0xb9, 0xe4, 0xfb, 0x5b, 0x8c, 0xec, 0x96, 0x8f, 0x89, 0x68, 0xf5, 0x38, 0x19, 0xd4, 0x97, 0xcd, 0x93, 0xfb, 0x7f, 0x8a, 0xad, 0x56, 0xfc, 0xe1, 0x73, 0x4c, 0x81, 0x22, 0x9c, 0x6b, 0x18, 0x45, 0x63, 0x56, 0x31, 0x20, 0x9f, 0xe4, 0xd3, 0x5a, 0x4b, 0xe9, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4180 = { .name = "ecdsa_secp224r1_sha3_512_4180", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4180_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4180_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4180_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4181 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4181_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4181_msg[] = { 0x33, 0x32, 0x31, 0x37, 0x30, 0x38, 0x31, 0x37, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4181_sig[] = { 0x1f, 0xa3, 0x89, 0xd2, 0xf4, 0xe5, 0x86, 0xd5, 0xc1, 0xe9, 0xfc, 0xf3, 0x4b, 0x56, 0xed, 0x6d, 0x35, 0x55, 0x87, 0x14, 0xd5, 0x65, 0xa6, 0x19, 0x24, 0xc5, 0x9e, 0xdf, 0xee, 0x1a, 0x1f, 0x53, 0xd0, 0xf6, 0x5e, 0x00, 0xc6, 0xfc, 0xcd, 0xee, 0xf3, 0x55, 0x66, 0xe3, 0xd3, 0xcb, 0xb5, 0xb9, 0x10, 0x12, 0x7d, 0x0a, 0x40, 0x02, 0x53, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4181 = { .name = "ecdsa_secp224r1_sha3_512_4181", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4181_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4181_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4181_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4182 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4182_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4182_msg[] = { 0x37, 0x36, 0x36, 0x37, 0x30, 0x34, 0x34, 0x32, 0x37, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4182_sig[] = { 0xf1, 0xab, 0x78, 0xcb, 0xc3, 0xc6, 0x0b, 0xf9, 0x7e, 0x58, 0x3a, 0xb5, 0x0a, 0xbe, 0x7c, 0x96, 0x99, 0x6b, 0x2a, 0xf0, 0xc7, 0x1e, 0x13, 0x71, 0xa9, 0x4f, 0x92, 0x35, 0x21, 0xec, 0x71, 0x08, 0xbe, 0x39, 0x8f, 0x85, 0x9f, 0x8f, 0x75, 0xa8, 0xb9, 0xb5, 0x27, 0x91, 0x46, 0x85, 0xc5, 0xf3, 0xc1, 0xeb, 0x26, 0xf9, 0xb0, 0xd4, 0x44, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4182 = { .name = "ecdsa_secp224r1_sha3_512_4182", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4182_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4182_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4182_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4183 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4183_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4183_msg[] = { 0x31, 0x31, 0x30, 0x34, 0x37, 0x34, 0x35, 0x30, 0x34, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4183_sig[] = { 0x50, 0xe0, 0xe4, 0x23, 0xfc, 0xa4, 0x19, 0x46, 0x80, 0xff, 0xad, 0x95, 0xd1, 0xe5, 0xdf, 0x53, 0x47, 0x93, 0xd5, 0x52, 0x40, 0x99, 0xad, 0xdf, 0xda, 0xea, 0xc0, 0xf4, 0x91, 0xc4, 0x49, 0x5a, 0xd7, 0x99, 0x29, 0x33, 0x2b, 0x1c, 0xa3, 0x1a, 0x3b, 0x7d, 0x4b, 0x94, 0xa0, 0x5b, 0x54, 0x4d, 0x02, 0x9f, 0x8d, 0xf6, 0x4e, 0x54, 0xd1, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4183 = { .name = "ecdsa_secp224r1_sha3_512_4183", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4183_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4183_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4183_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4184 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4184_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4184_msg[] = { 0x31, 0x35, 0x33, 0x38, 0x37, 0x30, 0x31, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4184_sig[] = { 0x5d, 0xd7, 0xd3, 0x9e, 0x95, 0x16, 0x9c, 0xef, 0xd7, 0x7a, 0x5a, 0x5d, 0xfd, 0x43, 0x5e, 0x2a, 0x87, 0x95, 0x76, 0xfa, 0xf3, 0xa8, 0x45, 0xd2, 0x66, 0xd4, 0x02, 0xca, 0x63, 0x22, 0x50, 0x84, 0xb9, 0x21, 0x9b, 0x15, 0x88, 0x4e, 0x0c, 0xd6, 0x65, 0xac, 0xa9, 0x2e, 0xf1, 0xf4, 0xb5, 0x41, 0x98, 0x7b, 0x98, 0xcb, 0xd0, 0x3e, 0xdb, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4184 = { .name = "ecdsa_secp224r1_sha3_512_4184", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4184_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4184_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4184_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4185 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4185_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4185_msg[] = { 0x32, 0x32, 0x36, 0x31, 0x33, 0x38, 0x35, 0x30, 0x34, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4185_sig[] = { 0x90, 0x2f, 0xbc, 0x7e, 0xed, 0x7c, 0xa4, 0x42, 0xc9, 0x42, 0x40, 0xc7, 0x53, 0x23, 0xdb, 0x9f, 0x69, 0x0a, 0x84, 0x81, 0x7f, 0x82, 0x4b, 0xbe, 0x12, 0xc2, 0xf9, 0xe9, 0x12, 0xe4, 0x9c, 0x4e, 0xd8, 0x89, 0x09, 0x34, 0x4b, 0x61, 0xc4, 0xee, 0xfe, 0xae, 0x4a, 0xae, 0x04, 0x94, 0x04, 0x4b, 0xd0, 0x16, 0x53, 0xe6, 0x6d, 0xbc, 0x48, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4185 = { .name = "ecdsa_secp224r1_sha3_512_4185", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4185_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4185_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4185_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4186 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4186_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4186_msg[] = { 0x37, 0x35, 0x35, 0x38, 0x37, 0x34, 0x37, 0x36, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4186_sig[] = { 0x16, 0x88, 0x1c, 0x4a, 0xe6, 0x0f, 0x32, 0xa6, 0xb8, 0x1d, 0x44, 0x5f, 0x7b, 0xb9, 0x21, 0xce, 0x4f, 0x4d, 0xcd, 0x34, 0x96, 0x95, 0xef, 0xe0, 0xfc, 0x94, 0xd2, 0x13, 0x06, 0x06, 0x63, 0x32, 0xf6, 0x1e, 0xdc, 0x98, 0xa8, 0x8a, 0x21, 0xa4, 0x2f, 0x26, 0xe9, 0x12, 0xc9, 0x9c, 0x54, 0x71, 0x09, 0x3a, 0xca, 0x9b, 0x1c, 0x11, 0xd5, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4186 = { .name = "ecdsa_secp224r1_sha3_512_4186", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4186_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4186_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4186_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4187 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4187_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4187_msg[] = { 0x33, 0x34, 0x39, 0x39, 0x33, 0x36, 0x34, 0x31, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4187_sig[] = { 0x3d, 0x0a, 0xf3, 0x97, 0x60, 0x2f, 0xc0, 0xd1, 0x8d, 0x8a, 0x73, 0x33, 0x77, 0xcc, 0x3e, 0x59, 0x6c, 0x14, 0x3f, 0x75, 0xd6, 0xa9, 0xd2, 0xc6, 0x2c, 0x99, 0xf3, 0x27, 0x30, 0xad, 0x8b, 0xf0, 0xbe, 0xf3, 0xb8, 0xa2, 0xbb, 0x41, 0x58, 0xdb, 0x62, 0x1d, 0xe4, 0x57, 0x0d, 0x75, 0xc5, 0xfe, 0xc7, 0xbb, 0x8c, 0x3e, 0x78, 0xaf, 0x84, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4187 = { .name = "ecdsa_secp224r1_sha3_512_4187", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4187_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4187_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4187_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4188 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4188_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4188_msg[] = { 0x32, 0x33, 0x36, 0x39, 0x32, 0x37, 0x33, 0x39, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4188_sig[] = { 0xf9, 0x5c, 0x0f, 0xbf, 0x6c, 0x90, 0xb3, 0x00, 0xd8, 0x07, 0x65, 0xd7, 0xa5, 0x90, 0x2e, 0xf6, 0x90, 0xd4, 0xdc, 0x9a, 0xe9, 0xac, 0xd2, 0x0a, 0x3a, 0x7b, 0x6d, 0x78, 0x73, 0xf3, 0xad, 0x08, 0xda, 0xda, 0xf5, 0xc5, 0x85, 0x4d, 0x35, 0x1d, 0x47, 0xe4, 0xec, 0x32, 0x80, 0x13, 0xeb, 0x7a, 0xe9, 0xc7, 0xe8, 0x3e, 0x11, 0x00, 0x24, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4188 = { .name = "ecdsa_secp224r1_sha3_512_4188", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4188_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4188_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4188_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4189 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4189_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4189_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4189_sig[] = { 0xb3, 0x24, 0xae, 0xc4, 0x42, 0x0d, 0x11, 0xa7, 0xda, 0x67, 0xd2, 0x87, 0x19, 0x8a, 0xbb, 0xaf, 0x2c, 0x9e, 0x66, 0x06, 0xa2, 0x31, 0xaf, 0xa0, 0x92, 0x4d, 0x59, 0x02, 0xdb, 0x1e, 0xd6, 0xb9, 0x90, 0xf6, 0x5e, 0xbc, 0xdb, 0x8c, 0x5b, 0xc3, 0x8c, 0x7e, 0x1b, 0x83, 0xcf, 0xc8, 0xf8, 0xd0, 0x0b, 0xa4, 0xce, 0xd3, 0x9b, 0xb5, 0x65, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4189 = { .name = "ecdsa_secp224r1_sha3_512_4189", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4189_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4189_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4189_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4190 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4190_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4190_msg[] = { 0x32, 0x35, 0x33, 0x34, 0x33, 0x37, 0x39, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4190_sig[] = { 0x7c, 0x20, 0x88, 0x07, 0x6a, 0xb2, 0x8c, 0x40, 0x27, 0x9a, 0xbe, 0xa3, 0xfd, 0xa0, 0xa2, 0x28, 0x6e, 0x0a, 0xfe, 0x96, 0x3b, 0xac, 0xb5, 0xf7, 0x0d, 0xed, 0x65, 0x55, 0xda, 0x35, 0x84, 0x07, 0xc1, 0xcc, 0x5c, 0x2e, 0x77, 0x68, 0x54, 0x50, 0x0f, 0x44, 0xa9, 0x04, 0xb2, 0x62, 0x4a, 0xb9, 0x4c, 0xe1, 0x01, 0xfb, 0x2b, 0x32, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4190 = { .name = "ecdsa_secp224r1_sha3_512_4190", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4190_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4190_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4190_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4191 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4191_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4191_msg[] = { 0x38, 0x33, 0x34, 0x38, 0x30, 0x31, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4191_sig[] = { 0xab, 0xbf, 0x69, 0xe0, 0x74, 0xa3, 0x9e, 0x16, 0x7d, 0x6c, 0x4a, 0x61, 0xfe, 0x0e, 0xb2, 0xf4, 0x2a, 0x42, 0xaf, 0xdb, 0xd8, 0x40, 0xf6, 0x3d, 0xdb, 0x3e, 0x05, 0x7d, 0xb1, 0x7e, 0xc9, 0xb0, 0x10, 0x70, 0xd7, 0xd8, 0x82, 0x59, 0x69, 0xbf, 0x5f, 0x72, 0xaa, 0x04, 0x7f, 0xb4, 0x55, 0x7b, 0xf4, 0x52, 0x5b, 0x68, 0x3a, 0x2d, 0xd0, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4191 = { .name = "ecdsa_secp224r1_sha3_512_4191", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4191_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4191_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4191_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4192 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4192_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4192_msg[] = { 0x32, 0x34, 0x31, 0x31, 0x30, 0x35, 0x37, 0x34, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4192_sig[] = { 0x78, 0x7a, 0xf6, 0x03, 0x53, 0x9b, 0x58, 0x52, 0x0a, 0xb7, 0x49, 0x99, 0xfa, 0x2f, 0xc8, 0xfe, 0x90, 0xea, 0x10, 0xf3, 0xc1, 0xb1, 0x6a, 0x18, 0x1f, 0xdc, 0x09, 0x54, 0xfe, 0x25, 0xa9, 0xb1, 0x6e, 0x66, 0xaa, 0x1c, 0x50, 0xa5, 0x90, 0x42, 0xc1, 0xff, 0x0a, 0x85, 0xe2, 0xf4, 0x81, 0x1a, 0x8d, 0x75, 0x40, 0xf8, 0x3a, 0x63, 0x26, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4192 = { .name = "ecdsa_secp224r1_sha3_512_4192", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4192_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4192_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4192_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4193 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4193_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4193_msg[] = { 0x37, 0x38, 0x36, 0x34, 0x36, 0x38, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4193_sig[] = { 0xc6, 0xfe, 0x29, 0x9f, 0x38, 0x4a, 0x97, 0x8b, 0xe1, 0x8f, 0xd5, 0xdd, 0x2e, 0x94, 0xca, 0x1d, 0xf2, 0x48, 0xcf, 0x17, 0x81, 0x9c, 0x95, 0xd1, 0xb3, 0x17, 0xb2, 0x57, 0x9c, 0x2b, 0xd1, 0x11, 0xdd, 0x41, 0xfb, 0x56, 0xa9, 0xde, 0xd5, 0xce, 0x44, 0xcf, 0x61, 0x6c, 0x3e, 0x73, 0x5e, 0x86, 0x8a, 0x1b, 0x19, 0xd2, 0x57, 0x5f, 0xe8, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4193 = { .name = "ecdsa_secp224r1_sha3_512_4193", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4193_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4193_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4193_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4194 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4194_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4194_msg[] = { 0x33, 0x30, 0x35, 0x34, 0x37, 0x37, 0x33, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4194_sig[] = { 0xa6, 0x8d, 0x46, 0x78, 0xce, 0x9e, 0x0c, 0xee, 0x7d, 0xdb, 0x75, 0xbf, 0x4b, 0x5f, 0xd1, 0x62, 0xce, 0xd0, 0x9c, 0x1b, 0xdc, 0x36, 0x63, 0x36, 0x18, 0x1e, 0x4d, 0xcd, 0x28, 0x98, 0xae, 0xcf, 0xbd, 0xfb, 0x33, 0xe6, 0xbe, 0x1e, 0xf5, 0x9a, 0x20, 0xf3, 0x07, 0x72, 0x9c, 0x99, 0x54, 0xeb, 0xff, 0x5f, 0x11, 0x9a, 0xda, 0xbb, 0x64, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4194 = { .name = "ecdsa_secp224r1_sha3_512_4194", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4194_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4194_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4194_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4195 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4195_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4195_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x31, 0x37, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4195_sig[] = { 0x32, 0xc2, 0x8f, 0x72, 0x6d, 0x79, 0xd4, 0x61, 0x0f, 0x63, 0x82, 0xc3, 0x29, 0xa3, 0xa9, 0x55, 0x05, 0x9f, 0x58, 0x76, 0xef, 0x34, 0x35, 0x85, 0x09, 0x8f, 0x40, 0xdb, 0x20, 0xd7, 0xdf, 0x0a, 0xe1, 0x1f, 0x39, 0x09, 0xff, 0xdc, 0x54, 0xb1, 0x2d, 0x05, 0xbd, 0x29, 0x45, 0x05, 0xab, 0x76, 0x05, 0x8c, 0x79, 0xc6, 0x1d, 0xfc, 0xee, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4195 = { .name = "ecdsa_secp224r1_sha3_512_4195", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4195_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4195_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4195_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4196 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4196_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4196_msg[] = { 0x31, 0x30, 0x35, 0x31, 0x33, 0x32, 0x35, 0x36, 0x33, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4196_sig[] = { 0x90, 0x0b, 0x8c, 0xb6, 0x6d, 0x0e, 0x2b, 0xf2, 0xf0, 0xc4, 0xbc, 0x3b, 0xf2, 0x69, 0xb5, 0x21, 0x80, 0x1e, 0x88, 0x8f, 0xf1, 0x7c, 0x5b, 0x82, 0x86, 0x40, 0x9a, 0xc2, 0x6a, 0x0e, 0x97, 0x36, 0xee, 0x8a, 0x57, 0x0f, 0xbf, 0x76, 0x86, 0x63, 0x0c, 0x9d, 0xc2, 0x61, 0x3c, 0xb0, 0x84, 0xc6, 0x45, 0x10, 0x0b, 0x39, 0x24, 0xb2, 0xb8, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4196 = { .name = "ecdsa_secp224r1_sha3_512_4196", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4196_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4196_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4196_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4197 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4197_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4197_msg[] = { 0x34, 0x30, 0x31, 0x39, 0x38, 0x36, 0x36, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4197_sig[] = { 0xfa, 0xd4, 0x7b, 0x9c, 0xa7, 0xac, 0xb9, 0x4d, 0xa3, 0x4c, 0xc5, 0x95, 0x86, 0xa9, 0xa4, 0x2b, 0x95, 0xa5, 0x2d, 0x80, 0x9e, 0x3d, 0x58, 0x16, 0xcd, 0x1f, 0x2a, 0xf8, 0x42, 0xc8, 0x95, 0xf0, 0x5a, 0x25, 0xa4, 0x43, 0xca, 0x32, 0xa0, 0x70, 0xaf, 0xf7, 0x22, 0x25, 0x11, 0x4b, 0x55, 0x77, 0x34, 0xb9, 0x66, 0x29, 0x3b, 0x65, 0x7e, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4197 = { .name = "ecdsa_secp224r1_sha3_512_4197", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4197_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4197_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4197_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4198 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4198_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4198_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x30, 0x32, 0x35, 0x37, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4198_sig[] = { 0x43, 0x1e, 0x66, 0x68, 0x43, 0xa0, 0xd5, 0xe1, 0x31, 0x56, 0x7a, 0xb1, 0x3e, 0xc0, 0xac, 0xcd, 0x1f, 0xef, 0x8d, 0x44, 0x1e, 0x96, 0xc4, 0xb8, 0x83, 0x4d, 0x4e, 0x40, 0x0e, 0x7a, 0x8b, 0xb3, 0xce, 0xf5, 0xa6, 0x76, 0xcf, 0x41, 0x48, 0xda, 0x42, 0xb6, 0x14, 0x57, 0xcf, 0x9f, 0xd4, 0x3c, 0x8a, 0x33, 0x24, 0x1d, 0x4b, 0xb8, 0x71, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4198 = { .name = "ecdsa_secp224r1_sha3_512_4198", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4198_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4198_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4198_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4199 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4199_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4199_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x35, 0x38, 0x35, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4199_sig[] = { 0x41, 0x32, 0x7e, 0x34, 0x97, 0xa6, 0x15, 0x19, 0x2c, 0x69, 0x7a, 0xe6, 0xa6, 0xf8, 0x62, 0x2b, 0xa4, 0x93, 0x98, 0x7f, 0x61, 0x76, 0x13, 0xe7, 0x6d, 0x13, 0x4f, 0x26, 0xe2, 0x53, 0x9f, 0x0d, 0x61, 0x21, 0xb2, 0x7d, 0x4f, 0x71, 0x77, 0x71, 0x4e, 0xa5, 0xea, 0xd4, 0xf4, 0xd4, 0x92, 0x84, 0x24, 0x3e, 0x3e, 0xbe, 0x96, 0x4f, 0x9c, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4199 = { .name = "ecdsa_secp224r1_sha3_512_4199", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4199_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4199_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4199_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4200 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4200_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4200_msg[] = { 0x33, 0x30, 0x37, 0x34, 0x36, 0x35, 0x33, 0x32, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4200_sig[] = { 0x37, 0x50, 0x6c, 0xcd, 0x77, 0xf8, 0x09, 0x7e, 0x83, 0xd6, 0x3c, 0x3d, 0x52, 0xaf, 0x63, 0x4c, 0xc0, 0xfe, 0x98, 0x53, 0x56, 0x88, 0xd9, 0x62, 0xb0, 0xbc, 0x36, 0x89, 0xbf, 0x89, 0xec, 0xc5, 0x70, 0x43, 0x6c, 0x2f, 0xb8, 0x5b, 0xee, 0xf3, 0x96, 0x42, 0x26, 0x26, 0xcf, 0x03, 0xf7, 0xc2, 0xdc, 0x16, 0xd4, 0x69, 0x51, 0x10, 0x44, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4200 = { .name = "ecdsa_secp224r1_sha3_512_4200", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4200_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4200_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4200_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4201 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4201_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4201_msg[] = { 0x37, 0x37, 0x31, 0x34, 0x36, 0x38, 0x33, 0x34, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4201_sig[] = { 0xc9, 0x7f, 0xbc, 0x50, 0x27, 0x20, 0x4b, 0x81, 0x1f, 0x4c, 0x25, 0x0c, 0xca, 0xb7, 0x41, 0xe2, 0x28, 0x76, 0xd1, 0xa8, 0xf8, 0xc6, 0x23, 0x7e, 0xa9, 0x15, 0xca, 0x38, 0xc5, 0x1c, 0xef, 0xcf, 0x82, 0xa3, 0x03, 0x93, 0x5b, 0x01, 0x5f, 0x05, 0x51, 0xaf, 0x07, 0xb9, 0x4b, 0xb2, 0x20, 0x3e, 0x2b, 0xc7, 0xcb, 0xd3, 0x45, 0x20, 0xa3, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4201 = { .name = "ecdsa_secp224r1_sha3_512_4201", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4201_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4201_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4201_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4202 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4202_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4202_msg[] = { 0x31, 0x37, 0x39, 0x33, 0x33, 0x38, 0x31, 0x33, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4202_sig[] = { 0x0c, 0x1f, 0x93, 0xe9, 0xbc, 0xb1, 0xcb, 0xdd, 0xd0, 0x50, 0x8b, 0xda, 0x3d, 0xad, 0x7a, 0x96, 0xdd, 0x09, 0xf1, 0x32, 0x11, 0x36, 0x70, 0x8b, 0x58, 0x6a, 0x1e, 0xb9, 0x94, 0x7e, 0xf9, 0xa5, 0x08, 0xba, 0x96, 0x9b, 0x42, 0x2c, 0x1d, 0x8e, 0x16, 0xa8, 0x2e, 0x8a, 0x06, 0xa0, 0x01, 0x4a, 0xfb, 0x73, 0xbc, 0x1f, 0x1b, 0x6d, 0x3a, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4202 = { .name = "ecdsa_secp224r1_sha3_512_4202", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4202_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4202_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4202_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4203 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4203_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4203_msg[] = { 0x34, 0x38, 0x38, 0x30, 0x36, 0x32, 0x35, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4203_sig[] = { 0xfb, 0x0c, 0xa1, 0x57, 0x2c, 0x10, 0xb3, 0x96, 0x1e, 0x95, 0x39, 0xa9, 0x42, 0x3a, 0x55, 0xdd, 0x08, 0xdd, 0x99, 0x1f, 0xc0, 0x4e, 0x13, 0x20, 0x7b, 0x80, 0x1a, 0x7e, 0x7c, 0x9c, 0x04, 0x98, 0x36, 0xe1, 0x56, 0x6b, 0x88, 0x9c, 0x94, 0x41, 0x6c, 0x04, 0xa4, 0xa8, 0x61, 0xf3, 0x57, 0x3d, 0xe7, 0x71, 0xbe, 0x3e, 0xcf, 0xc0, 0xc6, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4203 = { .name = "ecdsa_secp224r1_sha3_512_4203", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4203_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4203_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4203_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4204 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4204_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4204_msg[] = { 0x34, 0x39, 0x34, 0x33, 0x37, 0x36, 0x34, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4204_sig[] = { 0x76, 0x27, 0x64, 0xcf, 0x21, 0x63, 0x75, 0x9d, 0xfc, 0xf7, 0x86, 0x3b, 0x20, 0x84, 0x9c, 0x6d, 0xeb, 0x57, 0x80, 0x8c, 0xb2, 0x08, 0x47, 0x98, 0x14, 0xa2, 0x43, 0xf8, 0x7b, 0x41, 0xa9, 0x73, 0xdf, 0x21, 0x9e, 0xa7, 0x17, 0xa6, 0x53, 0xbd, 0xbe, 0x27, 0x66, 0x9b, 0xba, 0x57, 0xfc, 0x7c, 0x7a, 0xfc, 0x3a, 0xfe, 0x9c, 0x87, 0xd6, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4204 = { .name = "ecdsa_secp224r1_sha3_512_4204", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4204_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4204_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4204_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4205 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4205_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4205_msg[] = { 0x34, 0x37, 0x30, 0x38, 0x36, 0x38, 0x39, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4205_sig[] = { 0x5c, 0xc1, 0x08, 0x13, 0x88, 0x81, 0xbe, 0x0c, 0xf7, 0x03, 0x5d, 0xca, 0xd9, 0x4d, 0xb3, 0x60, 0x63, 0xea, 0xf1, 0x48, 0xd2, 0x4f, 0xed, 0xfe, 0x44, 0x72, 0x3e, 0x5d, 0xd1, 0x16, 0x37, 0xa4, 0xeb, 0x1e, 0x2e, 0x43, 0x85, 0x93, 0xed, 0xa3, 0x89, 0x70, 0x53, 0x7a, 0x05, 0x59, 0x0b, 0x3a, 0x9a, 0x50, 0x54, 0xd3, 0xaf, 0xc9, 0xe9, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4205 = { .name = "ecdsa_secp224r1_sha3_512_4205", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4205_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4205_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4205_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4206 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4206_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4206_msg[] = { 0x33, 0x30, 0x32, 0x39, 0x38, 0x37, 0x32, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4206_sig[] = { 0x53, 0x1c, 0x06, 0x34, 0x89, 0x05, 0xbb, 0xf1, 0x6d, 0x85, 0xb8, 0xeb, 0xa2, 0x2f, 0x5d, 0x5c, 0xa3, 0x3e, 0x49, 0x01, 0x07, 0xea, 0x97, 0x9f, 0x6f, 0x32, 0x2a, 0x65, 0x01, 0x09, 0x21, 0x5b, 0xf6, 0xd2, 0xaf, 0xbe, 0xdf, 0x4e, 0xfe, 0x48, 0x1f, 0x70, 0x49, 0x63, 0x35, 0x5f, 0x09, 0xf5, 0x9e, 0x19, 0x77, 0xbe, 0x33, 0x09, 0x72, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4206 = { .name = "ecdsa_secp224r1_sha3_512_4206", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4206_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4206_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4206_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4207 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4207_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4207_msg[] = { 0x33, 0x30, 0x31, 0x37, 0x31, 0x39, 0x30, 0x33, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4207_sig[] = { 0xbd, 0xc6, 0x83, 0xa5, 0xe7, 0xcb, 0xe5, 0xdf, 0x33, 0x2c, 0x85, 0xaf, 0x8c, 0x33, 0xd7, 0xed, 0xe2, 0xe2, 0x72, 0xdc, 0xe6, 0xb4, 0x0d, 0x36, 0x0d, 0x66, 0x6a, 0xcf, 0xa7, 0x79, 0xa6, 0xf1, 0xfe, 0x92, 0xba, 0x3f, 0x79, 0x95, 0x95, 0x28, 0x9d, 0x7f, 0x37, 0xd4, 0x7a, 0x11, 0x87, 0x28, 0x5d, 0x76, 0x36, 0x33, 0x0a, 0x21, 0x7a, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4207 = { .name = "ecdsa_secp224r1_sha3_512_4207", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4207_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4207_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4207_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4208 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4208_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4208_msg[] = { 0x39, 0x35, 0x36, 0x33, 0x36, 0x33, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4208_sig[] = { 0x70, 0xba, 0x41, 0x4a, 0x66, 0x6f, 0x89, 0xe8, 0x40, 0x64, 0xb2, 0xf9, 0xb0, 0x8d, 0x50, 0x0c, 0x6b, 0xb1, 0x2d, 0x0a, 0x5e, 0xf9, 0xb2, 0x3f, 0x4f, 0xa4, 0x6c, 0xcf, 0x43, 0xd8, 0x8b, 0x7e, 0x94, 0x3f, 0xe8, 0x79, 0x2f, 0xf6, 0x2e, 0xd4, 0x62, 0xea, 0x30, 0x8d, 0x28, 0xf7, 0xf0, 0x3e, 0x4d, 0xc5, 0x9d, 0x62, 0x14, 0xf3, 0x05, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4208 = { .name = "ecdsa_secp224r1_sha3_512_4208", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4208_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4208_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4208_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4209 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4209_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4209_msg[] = { 0x35, 0x33, 0x30, 0x30, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4209_sig[] = { 0x12, 0x65, 0x07, 0x85, 0x2f, 0x36, 0x06, 0xba, 0xe5, 0x27, 0x74, 0x99, 0x82, 0xc5, 0xb3, 0x03, 0x87, 0x0c, 0xbf, 0x99, 0x9d, 0x2f, 0x01, 0x91, 0xf5, 0xfb, 0x7c, 0x62, 0xf4, 0xc9, 0x29, 0x89, 0x77, 0x5d, 0xd4, 0x18, 0x3c, 0x62, 0xfb, 0xa4, 0x23, 0xe6, 0x28, 0xfc, 0x12, 0x4d, 0xb1, 0x71, 0x86, 0x47, 0xa6, 0x93, 0x16, 0xe0, 0x61, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4209 = { .name = "ecdsa_secp224r1_sha3_512_4209", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4209_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4209_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4209_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4210 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4210_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4210_msg[] = { 0x31, 0x39, 0x33, 0x34, 0x36, 0x36, 0x34, 0x38, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4210_sig[] = { 0x93, 0x42, 0xdb, 0xbf, 0x6c, 0x92, 0x38, 0x76, 0x99, 0xc8, 0x4c, 0xc0, 0xf8, 0xb0, 0x11, 0x69, 0x0c, 0x07, 0x2f, 0x8f, 0x06, 0x7c, 0xfd, 0x5d, 0xe2, 0x13, 0xec, 0xff, 0x09, 0x32, 0x6a, 0xe7, 0x03, 0x0d, 0x26, 0x20, 0x85, 0xde, 0x89, 0x2d, 0xa4, 0xcf, 0xdb, 0xf7, 0x87, 0xcf, 0xfe, 0xaa, 0xa7, 0x1d, 0xfe, 0x00, 0x59, 0xe2, 0x8b, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4210 = { .name = "ecdsa_secp224r1_sha3_512_4210", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4210_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4210_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4210_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4211 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4211_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4211_msg[] = { 0x33, 0x35, 0x35, 0x34, 0x35, 0x30, 0x35, 0x35, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4211_sig[] = { 0x1e, 0x6e, 0x37, 0x6f, 0x21, 0x43, 0xd0, 0x20, 0x84, 0x8e, 0xf2, 0x65, 0x3a, 0xed, 0xf7, 0x12, 0x3e, 0x27, 0xfa, 0x8c, 0x67, 0x58, 0x56, 0x55, 0xe7, 0xf9, 0xe5, 0xc6, 0x94, 0xc8, 0xea, 0x35, 0x67, 0xed, 0x77, 0x26, 0xd5, 0xa1, 0x45, 0xf4, 0x17, 0xba, 0x44, 0xbf, 0x7a, 0xfd, 0x58, 0x6e, 0x38, 0xc8, 0x37, 0x48, 0xdc, 0x22, 0x78, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4211 = { .name = "ecdsa_secp224r1_sha3_512_4211", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4211_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4211_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4211_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4212 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4212_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4212_msg[] = { 0x31, 0x33, 0x30, 0x31, 0x37, 0x32, 0x32, 0x31, 0x30, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4212_sig[] = { 0x99, 0xf6, 0x7a, 0x07, 0x6a, 0x74, 0xef, 0x92, 0xd3, 0x3c, 0xb8, 0x9e, 0x39, 0x94, 0x44, 0x23, 0xd6, 0xb6, 0x0d, 0x64, 0x79, 0xf2, 0x2a, 0x63, 0xc2, 0xb2, 0xe6, 0xa1, 0x1c, 0xbc, 0xf7, 0xba, 0xa7, 0x70, 0x2c, 0xdc, 0x17, 0x5d, 0x4d, 0xcc, 0x3d, 0x6a, 0x01, 0x6e, 0x90, 0x04, 0x6e, 0xbf, 0x74, 0xde, 0x51, 0xbd, 0xdf, 0x41, 0xde, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4212 = { .name = "ecdsa_secp224r1_sha3_512_4212", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4212_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4212_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4212_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4213 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4213_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4213_msg[] = { 0x35, 0x36, 0x31, 0x37, 0x36, 0x39, 0x31, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4213_sig[] = { 0x61, 0xec, 0x8a, 0x8a, 0x6e, 0xa8, 0x2e, 0x84, 0x22, 0x02, 0xf3, 0x27, 0xca, 0x3e, 0x59, 0x71, 0x52, 0x1b, 0xe1, 0x3c, 0x6d, 0xc6, 0x05, 0xe7, 0x79, 0xfa, 0x9b, 0x47, 0x9f, 0x87, 0x29, 0x4c, 0x70, 0x26, 0x76, 0xcc, 0xab, 0x8a, 0x6b, 0x31, 0xae, 0xf5, 0xaa, 0x10, 0x41, 0x39, 0xda, 0x7c, 0xbc, 0x69, 0xb1, 0xa6, 0xd4, 0xd7, 0x7a, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4213 = { .name = "ecdsa_secp224r1_sha3_512_4213", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4213_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4213_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4213_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4214 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4214_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4214_msg[] = { 0x33, 0x35, 0x38, 0x31, 0x39, 0x33, 0x32, 0x35, 0x33, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4214_sig[] = { 0x46, 0x7f, 0xfb, 0xd3, 0x37, 0x2c, 0x95, 0x54, 0x75, 0x37, 0x21, 0x2a, 0xf7, 0x07, 0xe4, 0x12, 0x91, 0x9e, 0xb3, 0x73, 0x1b, 0xa6, 0x61, 0xa2, 0xf2, 0x0e, 0xca, 0x59, 0xbe, 0xee, 0xf3, 0xb4, 0xb3, 0x25, 0xd5, 0x00, 0x4f, 0x0d, 0xbd, 0x99, 0xa7, 0x35, 0x77, 0x8d, 0xb5, 0x3e, 0x0a, 0xa3, 0x81, 0xa0, 0x69, 0xfa, 0x68, 0xf0, 0x08, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4214 = { .name = "ecdsa_secp224r1_sha3_512_4214", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4214_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4214_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4214_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4215 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4215_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4215_msg[] = { 0x31, 0x35, 0x37, 0x31, 0x36, 0x36, 0x37, 0x38, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4215_sig[] = { 0xd4, 0xbb, 0xeb, 0x81, 0x92, 0x2f, 0x0e, 0x5f, 0x10, 0xd6, 0x37, 0xa4, 0x8d, 0xbe, 0x3d, 0x80, 0xcb, 0x53, 0x52, 0x48, 0x76, 0x82, 0x1d, 0xc2, 0xfa, 0xbb, 0x34, 0x57, 0x23, 0xf8, 0xff, 0x09, 0x19, 0xd5, 0x66, 0xe0, 0x5a, 0x26, 0xac, 0x97, 0xd5, 0x1b, 0xdc, 0x79, 0xba, 0x9c, 0x92, 0x0e, 0x2d, 0x6c, 0x77, 0x7b, 0x8d, 0x7c, 0xd4, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4215 = { .name = "ecdsa_secp224r1_sha3_512_4215", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4215_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4215_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4215_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4216 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4216_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4216_msg[] = { 0x33, 0x31, 0x39, 0x39, 0x37, 0x38, 0x33, 0x33, 0x36, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4216_sig[] = { 0xc1, 0x51, 0xab, 0x28, 0xd7, 0xa2, 0x39, 0x86, 0x02, 0x1c, 0xad, 0x0f, 0x2f, 0x93, 0x7b, 0x61, 0xc4, 0xad, 0xab, 0x21, 0xac, 0xf5, 0x08, 0x1c, 0xad, 0xe5, 0x65, 0x85, 0x38, 0x6a, 0xa4, 0x09, 0x27, 0xcb, 0xc4, 0x52, 0x16, 0x56, 0x8b, 0x23, 0xf6, 0xa4, 0xc4, 0x9a, 0xea, 0xb5, 0x25, 0xe9, 0x4b, 0x07, 0x4b, 0x8e, 0xf1, 0x6a, 0xad, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4216 = { .name = "ecdsa_secp224r1_sha3_512_4216", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4216_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4216_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4216_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4217 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4217_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4217_msg[] = { 0x37, 0x34, 0x30, 0x34, 0x37, 0x35, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4217_sig[] = { 0x40, 0xa4, 0xb6, 0x10, 0x69, 0x60, 0xc1, 0xb2, 0x49, 0xc1, 0x16, 0xd5, 0x39, 0xc9, 0xab, 0x27, 0xf9, 0x92, 0xf0, 0xc1, 0xe9, 0x2d, 0x8e, 0x04, 0xa9, 0x19, 0xa7, 0x49, 0x81, 0x1d, 0x34, 0xda, 0x16, 0x6b, 0x24, 0x47, 0xa2, 0xda, 0x0e, 0x38, 0x21, 0xcf, 0xf1, 0x2c, 0xd4, 0x7a, 0xe0, 0xfb, 0x27, 0x3f, 0xb1, 0x8d, 0xf8, 0x30, 0xd1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4217 = { .name = "ecdsa_secp224r1_sha3_512_4217", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4217_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4217_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4217_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4218 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4218_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4218_msg[] = { 0x34, 0x31, 0x37, 0x34, 0x33, 0x36, 0x35, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4218_sig[] = { 0x68, 0x08, 0xf8, 0xc1, 0xcf, 0x3a, 0x05, 0x17, 0x24, 0xd0, 0x74, 0xeb, 0xdc, 0x85, 0xfc, 0xdc, 0x14, 0x98, 0x73, 0x24, 0x60, 0x5a, 0x81, 0xdb, 0x75, 0x91, 0xba, 0xa6, 0x02, 0x6f, 0x5e, 0xfe, 0xf2, 0xc6, 0x57, 0xbc, 0x04, 0x8c, 0x88, 0xa1, 0x65, 0xf8, 0x85, 0x62, 0x8e, 0xfc, 0xad, 0x29, 0x3d, 0x80, 0xa5, 0xcf, 0x72, 0x85, 0x54, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4218 = { .name = "ecdsa_secp224r1_sha3_512_4218", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4218_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4218_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4218_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4219 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4219_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4219_msg[] = { 0x31, 0x32, 0x33, 0x35, 0x36, 0x35, 0x38, 0x38, 0x38, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4219_sig[] = { 0xaf, 0x71, 0x77, 0xec, 0x82, 0xb9, 0x07, 0xca, 0xfe, 0x3a, 0xc3, 0xbf, 0xb0, 0xae, 0x2f, 0x2a, 0x2a, 0x83, 0x55, 0x38, 0x0c, 0xe8, 0xb3, 0x12, 0x17, 0xfd, 0xb3, 0xf0, 0x05, 0x28, 0x2a, 0x1d, 0xc8, 0x1c, 0xb4, 0x58, 0xf1, 0xc5, 0x56, 0x87, 0x7d, 0xc2, 0x33, 0x01, 0xcd, 0x8f, 0x69, 0xa5, 0x26, 0x9d, 0xf6, 0x83, 0xba, 0x1d, 0x95, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4219 = { .name = "ecdsa_secp224r1_sha3_512_4219", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4219_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4219_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4219_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4220 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4220_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4220_msg[] = { 0x32, 0x34, 0x32, 0x39, 0x32, 0x35, 0x35, 0x34, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4220_sig[] = { 0x4c, 0xb8, 0x75, 0x03, 0xbd, 0xe0, 0xac, 0xa3, 0x23, 0xf9, 0x3b, 0x04, 0xe1, 0x73, 0x5f, 0x84, 0xbc, 0x0e, 0x10, 0x1b, 0xa8, 0xb7, 0x13, 0x32, 0xfb, 0x40, 0xce, 0x4c, 0x0b, 0xbc, 0x59, 0xda, 0xc1, 0x49, 0xa5, 0x64, 0x47, 0x71, 0x11, 0x9b, 0x00, 0xd1, 0xd7, 0x29, 0x05, 0xe4, 0xb0, 0x80, 0xf9, 0xaf, 0xf5, 0xd6, 0xa4, 0x2e, 0x15, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4220 = { .name = "ecdsa_secp224r1_sha3_512_4220", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4220_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4220_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4220_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4221 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4221_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4221_msg[] = { 0x35, 0x31, 0x38, 0x30, 0x33, 0x30, 0x32, 0x35, 0x34, 0x36, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4221_sig[] = { 0xae, 0x09, 0x71, 0x8e, 0x0e, 0x6e, 0x7f, 0xb0, 0x23, 0x70, 0x56, 0xf5, 0x31, 0x22, 0x1c, 0x0c, 0x93, 0x30, 0x6b, 0x42, 0x6a, 0x98, 0x5a, 0xc5, 0x1a, 0x70, 0xa8, 0x31, 0xb5, 0x05, 0x99, 0xa4, 0x16, 0x55, 0x3c, 0x34, 0x10, 0x2a, 0x91, 0x79, 0x90, 0xc7, 0x0c, 0x3f, 0x9f, 0x6e, 0xd0, 0x17, 0x19, 0xfa, 0x9e, 0x00, 0x9c, 0x14, 0xa2, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4221 = { .name = "ecdsa_secp224r1_sha3_512_4221", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4221_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4221_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4221_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4222 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4222_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4222_msg[] = { 0x34, 0x34, 0x37, 0x36, 0x33, 0x39, 0x38, 0x32, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4222_sig[] = { 0x7b, 0xd6, 0x1f, 0x75, 0x61, 0x0e, 0xad, 0x31, 0x2a, 0x22, 0x7d, 0x53, 0x68, 0xe0, 0x93, 0x60, 0x6a, 0x46, 0x30, 0x66, 0x38, 0x25, 0x49, 0x0b, 0x39, 0x2a, 0x5a, 0x65, 0x86, 0x55, 0x2b, 0xb6, 0xf4, 0xf3, 0x56, 0x43, 0x49, 0xfc, 0x3f, 0xb4, 0x70, 0x73, 0xc3, 0xc2, 0x8d, 0x10, 0xd9, 0xda, 0xf5, 0xb9, 0x16, 0x6a, 0x82, 0xf8, 0xa6, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4222 = { .name = "ecdsa_secp224r1_sha3_512_4222", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4222_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4222_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4222_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4223 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4223_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4223_msg[] = { 0x39, 0x30, 0x36, 0x30, 0x30, 0x33, 0x35, 0x32, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4223_sig[] = { 0xa3, 0xda, 0xf1, 0x23, 0xbc, 0x8a, 0x3e, 0x39, 0x3e, 0x8d, 0x66, 0x9b, 0xd7, 0x6c, 0x44, 0x86, 0xa3, 0xe6, 0x5b, 0xd1, 0x6f, 0xc3, 0x90, 0xe0, 0x9b, 0x23, 0x08, 0xc9, 0x9c, 0x68, 0x0c, 0xdb, 0xca, 0x9d, 0x3a, 0xa3, 0x78, 0xcf, 0xe6, 0x04, 0x81, 0xb2, 0xe6, 0x8d, 0x3b, 0x36, 0x87, 0x36, 0x3e, 0x67, 0x16, 0x54, 0x2d, 0xa5, 0x0a, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4223 = { .name = "ecdsa_secp224r1_sha3_512_4223", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4223_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4223_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4223_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4224 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4224_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4224_msg[] = { 0x31, 0x37, 0x35, 0x36, 0x30, 0x35, 0x33, 0x30, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4224_sig[] = { 0xb7, 0x82, 0xf0, 0xaf, 0x65, 0x52, 0xa3, 0xf3, 0x05, 0x30, 0x94, 0x2f, 0x35, 0x16, 0x0c, 0x09, 0xec, 0x77, 0xd0, 0x65, 0x95, 0xac, 0xeb, 0x9d, 0xa8, 0xd2, 0x46, 0xac, 0xf4, 0x1b, 0x82, 0x16, 0xff, 0x29, 0xfc, 0x92, 0x65, 0x55, 0x27, 0xc6, 0xae, 0xfa, 0xc0, 0xba, 0xb8, 0x39, 0xc1, 0x85, 0x25, 0xc0, 0x33, 0x16, 0xb4, 0x6a, 0x4e, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4224 = { .name = "ecdsa_secp224r1_sha3_512_4224", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4224_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4224_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4224_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4225 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4225_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4225_msg[] = { 0x34, 0x39, 0x38, 0x30, 0x38, 0x36, 0x30, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha3_512_4225_sig[] = { 0x3e, 0xe9, 0x45, 0xc8, 0x7a, 0x9d, 0x4e, 0x74, 0xd8, 0x74, 0x71, 0xf8, 0x3e, 0x4f, 0x79, 0x19, 0x45, 0xb7, 0x73, 0x3a, 0x1b, 0xc7, 0x5f, 0xe6, 0x73, 0x8f, 0x23, 0xec, 0xab, 0x06, 0x85, 0x8d, 0x11, 0x36, 0x16, 0xb6, 0x94, 0xd3, 0x6f, 0xfa, 0xf1, 0x73, 0x65, 0x67, 0xd3, 0x89, 0x5e, 0x00, 0x5e, 0x80, 0xf5, 0x21, 0x31, 0x0b, 0x5e, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4225 = { .name = "ecdsa_secp224r1_sha3_512_4225", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4225_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4225_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4225_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4226 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4226_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4226_msg[] = { 0x33, 0x36, 0x32, 0x31, 0x38, 0x37, 0x35, 0x33, 0x33, 0x35, }; static const unsigned char ecdsa_secp224r1_sha3_512_4226_sig[] = { 0x73, 0x37, 0x52, 0xfa, 0x2b, 0x90, 0x12, 0x1c, 0x01, 0x87, 0x81, 0x70, 0xf2, 0x01, 0x9d, 0x9c, 0x9a, 0x4b, 0x1c, 0x95, 0xe8, 0x2a, 0xca, 0xb1, 0x8a, 0xe9, 0x5d, 0x71, 0x35, 0x8e, 0xb5, 0xd6, 0x99, 0x42, 0xb4, 0xb5, 0xd0, 0xd9, 0x00, 0xbb, 0x84, 0x3d, 0x79, 0xf9, 0x0a, 0xf5, 0x46, 0x63, 0xb3, 0xa9, 0x26, 0xfa, 0xbd, 0x08, 0x1d, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4226 = { .name = "ecdsa_secp224r1_sha3_512_4226", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4226_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4226_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4226_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4227 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4227_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4227_msg[] = { 0x36, 0x36, 0x34, 0x33, 0x33, 0x33, 0x34, 0x37, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4227_sig[] = { 0x72, 0xfa, 0x0c, 0xb3, 0x88, 0x63, 0xc0, 0x6e, 0x53, 0x54, 0x02, 0xe0, 0x10, 0xba, 0xc7, 0x09, 0xef, 0x4b, 0xeb, 0x0b, 0x38, 0x11, 0x8c, 0x7b, 0x13, 0x30, 0x8e, 0x83, 0x33, 0xeb, 0x21, 0xf6, 0xc0, 0x81, 0xaf, 0xa7, 0xdb, 0x62, 0xc2, 0xf8, 0xcf, 0x78, 0xed, 0x19, 0x82, 0xcb, 0x76, 0x2a, 0x13, 0x05, 0x09, 0xbd, 0xb5, 0x3f, 0x17, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4227 = { .name = "ecdsa_secp224r1_sha3_512_4227", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4227_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4227_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4227_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4228 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4228_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4228_msg[] = { 0x34, 0x34, 0x35, 0x34, 0x39, 0x34, 0x32, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4228_sig[] = { 0x92, 0x77, 0xca, 0x6d, 0xb7, 0x35, 0xf4, 0x4b, 0xff, 0x16, 0xc7, 0xce, 0x43, 0xad, 0x45, 0x70, 0x7b, 0xc6, 0xa6, 0xb4, 0x51, 0xe6, 0x45, 0x32, 0xb8, 0x6b, 0x54, 0xaf, 0x43, 0x3c, 0x69, 0xa0, 0x72, 0x34, 0x9f, 0x38, 0x14, 0xc6, 0x36, 0x64, 0x18, 0xd3, 0xeb, 0x7f, 0xb0, 0x55, 0x09, 0xad, 0x09, 0x9a, 0xfe, 0xef, 0x41, 0x1c, 0x6e, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4228 = { .name = "ecdsa_secp224r1_sha3_512_4228", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4228_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4228_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4228_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4229 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4229_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4229_msg[] = { 0x32, 0x30, 0x31, 0x38, 0x34, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4229_sig[] = { 0x37, 0xe0, 0x5e, 0xbb, 0x37, 0x6e, 0xde, 0x0d, 0x3f, 0xc7, 0x52, 0x8f, 0x19, 0xdb, 0xe4, 0xa3, 0x8e, 0x4f, 0x31, 0x02, 0x95, 0x05, 0x8e, 0x21, 0x73, 0xf8, 0x89, 0x00, 0x4f, 0x8d, 0x5c, 0xa6, 0x27, 0xd4, 0x3c, 0x54, 0xdb, 0x66, 0x74, 0xe1, 0x46, 0x2d, 0x12, 0xc4, 0x26, 0x03, 0xcd, 0xdc, 0x6f, 0x30, 0x67, 0x30, 0x7a, 0xb0, 0x4d, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4229 = { .name = "ecdsa_secp224r1_sha3_512_4229", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4229_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4229_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha3_512_4229_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4230 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4230_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4230_msg[] = { 0x35, 0x38, 0x31, 0x33, 0x32, 0x31, 0x37, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4230_sig[] = { 0xa4, 0x19, 0xd0, 0x9f, 0x64, 0xd2, 0x8e, 0x4c, 0xa6, 0x17, 0x18, 0x77, 0x90, 0xd0, 0x46, 0xe3, 0xb2, 0x9b, 0x87, 0xdc, 0xd6, 0x00, 0x7e, 0xae, 0xef, 0x08, 0xae, 0xf0, 0x39, 0x7f, 0xae, 0x56, 0x99, 0x61, 0x47, 0x8f, 0xd7, 0xd0, 0x75, 0xa3, 0x03, 0x98, 0xa6, 0x46, 0xd9, 0x5c, 0x00, 0xf8, 0x17, 0x16, 0x00, 0xe1, 0xca, 0x23, 0x35, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4230 = { .name = "ecdsa_secp224r1_sha3_512_4230", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4230_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4230_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha3_512_4230_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4231 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4231_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4231_msg[] = { 0x31, 0x31, 0x38, 0x33, 0x38, 0x36, 0x31, 0x38, 0x31, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4231_sig[] = { 0x05, 0xea, 0x0f, 0x04, 0xe9, 0xb4, 0xeb, 0x3b, 0x62, 0xfc, 0xf8, 0xf1, 0xf1, 0xd1, 0x20, 0xe5, 0x8a, 0x93, 0x2c, 0xa9, 0xa0, 0x4e, 0x8c, 0x64, 0xbb, 0xee, 0x53, 0x7e, 0x16, 0x66, 0x33, 0xa3, 0xc8, 0xd2, 0xb5, 0xc6, 0x24, 0x6d, 0xa6, 0x9e, 0x06, 0x9f, 0x2f, 0x09, 0xa7, 0x91, 0x2e, 0xfc, 0x35, 0x5c, 0x40, 0x53, 0x02, 0xb2, 0x98, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4231 = { .name = "ecdsa_secp224r1_sha3_512_4231", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4231_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4231_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4231_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4232 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4232_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4232_msg[] = { 0x31, 0x39, 0x32, 0x32, 0x36, 0x30, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4232_sig[] = { 0xfa, 0x2a, 0x62, 0x65, 0xe9, 0xfb, 0xd3, 0x17, 0xfc, 0xda, 0x0a, 0xde, 0xac, 0x30, 0x7f, 0xe2, 0xf0, 0xa9, 0x4a, 0xfd, 0x63, 0x03, 0xc9, 0x19, 0x85, 0xd8, 0x4d, 0x10, 0xdb, 0x93, 0xf0, 0x20, 0x12, 0x84, 0xb5, 0xb6, 0x6a, 0x15, 0xea, 0x17, 0x7f, 0x34, 0xc2, 0x7c, 0x6d, 0x80, 0x47, 0x9c, 0x18, 0xdb, 0x44, 0xf3, 0x86, 0xe8, 0x5d, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4232 = { .name = "ecdsa_secp224r1_sha3_512_4232", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4232_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4232_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4232_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4233 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4233_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4233_msg[] = { 0x39, 0x37, 0x35, 0x31, 0x34, 0x33, 0x32, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4233_sig[] = { 0x2d, 0x58, 0xc2, 0xd0, 0xcb, 0xbe, 0x72, 0x15, 0x42, 0x4b, 0x94, 0x30, 0x06, 0xdd, 0x56, 0xd2, 0x31, 0x59, 0xea, 0x10, 0x14, 0x05, 0x69, 0xdc, 0x22, 0x66, 0x3b, 0xfc, 0x8d, 0x9b, 0xde, 0xc0, 0x63, 0x9a, 0x23, 0x6e, 0x95, 0xfd, 0xb3, 0x5d, 0xc2, 0xce, 0x3d, 0x63, 0xf7, 0xd5, 0x44, 0x7b, 0x6d, 0xd3, 0xd9, 0x52, 0x27, 0xfb, 0xa0, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4233 = { .name = "ecdsa_secp224r1_sha3_512_4233", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4233_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4233_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4233_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4234 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4234_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4234_msg[] = { 0x38, 0x33, 0x31, 0x35, 0x31, 0x31, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha3_512_4234_sig[] = { 0x1b, 0xc6, 0x4a, 0xaf, 0x83, 0x51, 0x52, 0x75, 0xfd, 0x31, 0x87, 0xa1, 0x8d, 0x36, 0x51, 0xc7, 0x5c, 0xe8, 0x5b, 0x53, 0xf5, 0x57, 0x9e, 0xcf, 0x5f, 0x19, 0x03, 0x34, 0x2e, 0xd9, 0xfc, 0x72, 0x3b, 0xd7, 0x23, 0xcd, 0x4c, 0x8b, 0x62, 0xb7, 0x96, 0x8e, 0x5f, 0x05, 0x8d, 0x25, 0xaa, 0x6f, 0x6b, 0xb4, 0x5e, 0x6b, 0x09, 0x33, 0x77, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4234 = { .name = "ecdsa_secp224r1_sha3_512_4234", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4234_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4234_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4234_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4235 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4235_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4235_msg[] = { 0x33, 0x32, 0x36, 0x33, 0x31, 0x36, 0x38, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha3_512_4235_sig[] = { 0x24, 0x0d, 0x8b, 0x05, 0x88, 0x92, 0x74, 0xd7, 0x16, 0xf5, 0x75, 0x88, 0x53, 0x63, 0x20, 0x77, 0x5a, 0xfe, 0xd8, 0x24, 0xd7, 0x9f, 0x41, 0xf3, 0x2c, 0x35, 0xe7, 0x28, 0x25, 0x03, 0x1a, 0x07, 0x3d, 0x63, 0x81, 0x65, 0xf8, 0xc0, 0xb4, 0x6a, 0x28, 0xe0, 0x08, 0xf1, 0xde, 0x9f, 0xa0, 0xcf, 0x72, 0x6d, 0x31, 0x62, 0x69, 0xf6, 0x69, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4235 = { .name = "ecdsa_secp224r1_sha3_512_4235", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4235_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4235_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha3_512_4235_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4236 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4236_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4236_msg[] = { 0x34, 0x30, 0x32, 0x39, 0x36, 0x38, 0x37, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha3_512_4236_sig[] = { 0xfb, 0x2f, 0x81, 0xbd, 0x4e, 0x22, 0x23, 0x0c, 0x0c, 0x95, 0xa7, 0xa0, 0x8e, 0xaf, 0x9a, 0x66, 0x8f, 0x6b, 0x5c, 0x6d, 0x32, 0xbf, 0xfa, 0xf5, 0x38, 0xbe, 0xd1, 0x9d, 0x8a, 0xe8, 0xc1, 0x26, 0xb3, 0x16, 0x81, 0x29, 0xa7, 0x20, 0xa6, 0x74, 0xfa, 0x4d, 0xbb, 0x81, 0xd9, 0x4f, 0x4a, 0x3e, 0x86, 0x2b, 0x83, 0x4e, 0xa3, 0x28, 0xed, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4236 = { .name = "ecdsa_secp224r1_sha3_512_4236", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4236_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4236_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4236_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4237 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4237_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4237_msg[] = { 0x36, 0x33, 0x32, 0x30, 0x38, 0x38, 0x31, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4237_sig[] = { 0xfd, 0xcd, 0xf3, 0x94, 0x0d, 0x5b, 0x9b, 0x38, 0x41, 0xfa, 0x0e, 0xe6, 0x67, 0xd4, 0xed, 0x9a, 0xc7, 0x4e, 0x0c, 0xdc, 0xde, 0x96, 0x41, 0x27, 0x0f, 0x2e, 0x65, 0x8d, 0x31, 0x67, 0xf2, 0xb6, 0x60, 0x1b, 0x73, 0x7b, 0xc4, 0xa7, 0x00, 0xdd, 0x09, 0x40, 0xef, 0x86, 0x10, 0x7e, 0xb5, 0x7c, 0x39, 0xef, 0xaf, 0x6b, 0x3d, 0x71, 0xfd, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4237 = { .name = "ecdsa_secp224r1_sha3_512_4237", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4237_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4237_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4237_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4238 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4238_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4238_msg[] = { 0x35, 0x32, 0x32, 0x35, 0x33, 0x39, 0x30, 0x37, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4238_sig[] = { 0x46, 0x40, 0x8d, 0x1a, 0xc7, 0x4a, 0x5b, 0xd0, 0x3c, 0x3f, 0xc0, 0x86, 0x85, 0xf2, 0x74, 0x3e, 0xb3, 0xf7, 0xc4, 0x22, 0x03, 0xf6, 0x36, 0x06, 0x77, 0x5a, 0x42, 0x50, 0x98, 0x13, 0xe4, 0x70, 0x4b, 0x56, 0x5f, 0x94, 0xe5, 0x63, 0xa6, 0x53, 0xa9, 0xd4, 0xe0, 0x31, 0x0e, 0xbc, 0x70, 0x55, 0x72, 0x9f, 0x89, 0xca, 0x4b, 0x02, 0xd9, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4238 = { .name = "ecdsa_secp224r1_sha3_512_4238", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4238_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4238_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4238_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 355 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4239 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4239_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4239_msg[] = { 0x31, 0x33, 0x34, 0x39, 0x33, 0x39, 0x33, 0x36, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4239_sig[] = { 0xc9, 0x09, 0x60, 0x71, 0xc9, 0x29, 0x73, 0x19, 0x8e, 0xfa, 0xc6, 0x9d, 0x6b, 0x39, 0x12, 0xe4, 0xe1, 0x42, 0x48, 0xbb, 0x07, 0x76, 0x02, 0x87, 0x0c, 0x54, 0x3c, 0xf2, 0x63, 0x1c, 0x99, 0x5c, 0xab, 0x8f, 0x0c, 0xcf, 0x5e, 0x3d, 0xcb, 0x30, 0xd4, 0xb9, 0x95, 0xdc, 0x96, 0xd2, 0x57, 0x3f, 0xac, 0xc6, 0xed, 0x95, 0x61, 0xcb, 0x9d, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4239 = { .name = "ecdsa_secp224r1_sha3_512_4239", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4239_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4239_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha3_512_4239_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 356 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4240 for ECDSA, tcId is 357 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4240_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4240_msg[] = { 0x31, 0x30, 0x33, 0x39, 0x37, 0x39, 0x36, 0x30, 0x37, 0x36, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4240_sig[] = { 0xb5, 0x5b, 0xb2, 0xda, 0x01, 0xe9, 0x9b, 0x08, 0xf6, 0x4d, 0xce, 0xc6, 0xd6, 0xd7, 0x46, 0xb5, 0x62, 0x6a, 0xec, 0x6e, 0xae, 0x23, 0x78, 0xfd, 0x1d, 0xb7, 0x21, 0x07, 0x07, 0xf3, 0x6d, 0x4e, 0xdf, 0x6c, 0x81, 0x12, 0xe2, 0xa6, 0xb9, 0x66, 0x5b, 0x19, 0x60, 0x5f, 0x41, 0xc9, 0x44, 0x9a, 0x7e, 0xab, 0x78, 0x39, 0xd6, 0x38, 0xce, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4240 = { .name = "ecdsa_secp224r1_sha3_512_4240", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4240_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4240_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha3_512_4240_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 357 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4241 for ECDSA, tcId is 358 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4241_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4241_sig[] = { 0xe6, 0x30, 0x94, 0x9b, 0x06, 0xfd, 0xe0, 0x6a, 0x76, 0x3c, 0xd4, 0x57, 0xfc, 0x17, 0x76, 0xa0, 0x06, 0x93, 0x2c, 0x0f, 0xe0, 0x81, 0x31, 0xf4, 0x4a, 0xa1, 0xca, 0x41, 0x3d, 0xe7, 0xe4, 0x3d, 0x36, 0x71, 0xfa, 0x00, 0xdb, 0x71, 0xd0, 0x3e, 0x7f, 0x4d, 0x9f, 0x80, 0xb0, 0xd6, 0xd7, 0xed, 0xb6, 0x95, 0x03, 0x2e, 0x09, 0xb9, 0x3d, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4241 = { .name = "ecdsa_secp224r1_sha3_512_4241", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4241_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4241_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4241_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 358 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4242 for ECDSA, tcId is 359 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4242_pubkey[] = { 0x07, 0x8e, 0x4d, 0x1a, 0x56, 0xe6, 0xf4, 0x85, 0xc7, 0x85, 0xd0, 0x1a, 0x8c, 0xb9, 0xbb, 0x2e, 0xf5, 0xc7, 0x64, 0x6f, 0xb1, 0xe8, 0x82, 0x28, 0xab, 0xcf, 0x5e, 0x01, 0xca, 0x1f, 0xb2, 0x6c, 0x93, 0x66, 0xcd, 0x91, 0x86, 0x28, 0x03, 0x3d, 0xad, 0x95, 0x18, 0xa8, 0xf8, 0xa9, 0xff, 0x4a, 0x51, 0x3c, 0x66, 0x05, 0xf5, 0xcd, 0xaa, 0xe9, }; static const unsigned char ecdsa_secp224r1_sha3_512_4242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4242_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4242 = { .name = "ecdsa_secp224r1_sha3_512_4242", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4242_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4242_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4242_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 359 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4243 for ECDSA, tcId is 360 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4243_pubkey[] = { 0x07, 0x8e, 0x4d, 0x1a, 0x56, 0xe6, 0xf4, 0x85, 0xc7, 0x85, 0xd0, 0x1a, 0x8c, 0xb9, 0xbb, 0x2e, 0xf5, 0xc7, 0x64, 0x6f, 0xb1, 0xe8, 0x82, 0x28, 0xab, 0xcf, 0x5e, 0x01, 0xca, 0x1f, 0xb2, 0x6c, 0x93, 0x66, 0xcd, 0x91, 0x86, 0x28, 0x03, 0x3d, 0xad, 0x95, 0x18, 0xa8, 0xf8, 0xa9, 0xff, 0x4a, 0x51, 0x3c, 0x66, 0x05, 0xf5, 0xcd, 0xaa, 0xe9, }; static const unsigned char ecdsa_secp224r1_sha3_512_4243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4243_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4243 = { .name = "ecdsa_secp224r1_sha3_512_4243", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4243_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4243_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4243_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 360 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4244 for ECDSA, tcId is 361 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4244_pubkey[] = { 0x22, 0x52, 0x98, 0xc3, 0xaa, 0xb4, 0xee, 0x63, 0x98, 0x34, 0xfe, 0x16, 0xc4, 0x28, 0x96, 0xf6, 0x47, 0x8f, 0x35, 0x17, 0x58, 0x90, 0x64, 0x71, 0x7d, 0x40, 0x95, 0x9e, 0x72, 0x88, 0x1b, 0xdd, 0xef, 0xd6, 0xef, 0x72, 0x4f, 0xec, 0x33, 0xf9, 0x2c, 0x92, 0xd4, 0xfa, 0x2f, 0xff, 0xe7, 0x7c, 0xe2, 0x0a, 0x32, 0x78, 0x45, 0xb1, 0x20, 0x1f, }; static const unsigned char ecdsa_secp224r1_sha3_512_4244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4244_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4244 = { .name = "ecdsa_secp224r1_sha3_512_4244", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4244_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4244_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4244_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 361 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4245 for ECDSA, tcId is 362 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4245_pubkey[] = { 0x44, 0x8b, 0xad, 0x17, 0xb6, 0x38, 0xf5, 0x53, 0x72, 0xb2, 0x56, 0xc6, 0x71, 0x7a, 0xc0, 0xfe, 0x44, 0x3c, 0x20, 0xaf, 0x13, 0x33, 0x48, 0xbe, 0x8f, 0x72, 0x85, 0x77, 0x42, 0x1c, 0x70, 0x1a, 0xe6, 0x01, 0x5d, 0xa9, 0x8a, 0x2e, 0xc4, 0x14, 0x01, 0x22, 0x09, 0x15, 0x88, 0xc0, 0x13, 0xa7, 0x4f, 0xd7, 0x8b, 0x38, 0x14, 0xc9, 0x81, 0xb2, }; static const unsigned char ecdsa_secp224r1_sha3_512_4245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4245_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4245 = { .name = "ecdsa_secp224r1_sha3_512_4245", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4245_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4245_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4245_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 362 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4246 for ECDSA, tcId is 363 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4246_pubkey[] = { 0x14, 0x6e, 0x29, 0xfe, 0x57, 0xeb, 0xbf, 0xb9, 0x1f, 0x25, 0x62, 0xde, 0x12, 0x4e, 0x62, 0x40, 0x8e, 0x6c, 0x3e, 0x95, 0x1c, 0x96, 0xfa, 0xbb, 0x83, 0xd2, 0x43, 0xca, 0x80, 0x10, 0x67, 0x84, 0x8d, 0x29, 0x41, 0x0a, 0x16, 0x11, 0x65, 0x68, 0x66, 0xe3, 0xce, 0xce, 0xcf, 0xc5, 0x69, 0x09, 0x13, 0x75, 0xb6, 0x74, 0xd7, 0xe4, 0xd1, 0x67, }; static const unsigned char ecdsa_secp224r1_sha3_512_4246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4246_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4246 = { .name = "ecdsa_secp224r1_sha3_512_4246", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4246_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4246_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4246_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 363 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4247 for ECDSA, tcId is 364 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4247_pubkey[] = { 0xfa, 0xd9, 0x8d, 0xf6, 0xa5, 0xfb, 0xd9, 0xf3, 0xc0, 0x23, 0xf2, 0xab, 0x80, 0x9c, 0x57, 0xc7, 0x2d, 0xe3, 0x39, 0x6d, 0x1c, 0xae, 0x4b, 0xc3, 0x5d, 0x78, 0xd8, 0xd1, 0x88, 0x9e, 0x37, 0x2a, 0x90, 0x18, 0x9e, 0xce, 0x8f, 0xbc, 0x69, 0x0f, 0xe3, 0xcd, 0xee, 0xef, 0x38, 0xab, 0x12, 0xff, 0xda, 0x72, 0x1f, 0x32, 0xf8, 0x49, 0xae, 0x50, }; static const unsigned char ecdsa_secp224r1_sha3_512_4247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4247_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4247 = { .name = "ecdsa_secp224r1_sha3_512_4247", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4247_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4247_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4247_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 364 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4248 for ECDSA, tcId is 365 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4248_pubkey[] = { 0xd2, 0xea, 0xeb, 0x6b, 0xe6, 0xb5, 0xdc, 0xed, 0x48, 0xd5, 0x95, 0xb9, 0x5f, 0x73, 0xb0, 0x69, 0xf4, 0x9a, 0x07, 0x85, 0x72, 0xc7, 0x4d, 0xbc, 0x55, 0x7f, 0xa2, 0x5a, 0xa6, 0x38, 0x8c, 0x43, 0x62, 0xe6, 0xaa, 0x12, 0xab, 0x9c, 0x13, 0x50, 0xcd, 0x67, 0x89, 0xd0, 0x95, 0x54, 0x45, 0xd9, 0x19, 0x8e, 0xcc, 0x3a, 0x46, 0x18, 0xda, 0x73, }; static const unsigned char ecdsa_secp224r1_sha3_512_4248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4248_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4248 = { .name = "ecdsa_secp224r1_sha3_512_4248", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4248_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4248_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4248_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 365 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4249 for ECDSA, tcId is 366 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4249_pubkey[] = { 0x2d, 0xf6, 0xce, 0x60, 0x19, 0xd7, 0x7e, 0x3c, 0x6e, 0x04, 0x90, 0x8a, 0x3f, 0xde, 0x5b, 0x88, 0x33, 0xf9, 0xc4, 0x93, 0xbf, 0x3c, 0xc6, 0x56, 0x8e, 0x3d, 0x40, 0xcb, 0x0c, 0xed, 0x2e, 0x9c, 0xad, 0x2e, 0xd3, 0x63, 0xfd, 0x20, 0xae, 0xb9, 0x98, 0x3b, 0xcb, 0x22, 0x09, 0x1f, 0xcb, 0x55, 0x9c, 0x1f, 0x6f, 0xd5, 0x38, 0xa0, 0xae, 0x04, }; static const unsigned char ecdsa_secp224r1_sha3_512_4249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4249_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4249 = { .name = "ecdsa_secp224r1_sha3_512_4249", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4249_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4249_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4249_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 366 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4250 for ECDSA, tcId is 367 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4250_pubkey[] = { 0x2d, 0xf6, 0xce, 0x60, 0x19, 0xd7, 0x7e, 0x3c, 0x6e, 0x04, 0x90, 0x8a, 0x3f, 0xde, 0x5b, 0x88, 0x33, 0xf9, 0xc4, 0x93, 0xbf, 0x3c, 0xc6, 0x56, 0x8e, 0x3d, 0x40, 0xcb, 0x0c, 0xed, 0x2e, 0x9c, 0xad, 0x2e, 0xd3, 0x63, 0xfd, 0x20, 0xae, 0xb9, 0x98, 0x3b, 0xcb, 0x22, 0x09, 0x1f, 0xcb, 0x55, 0x9c, 0x1f, 0x6f, 0xd5, 0x38, 0xa0, 0xae, 0x04, }; static const unsigned char ecdsa_secp224r1_sha3_512_4250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4250_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4250 = { .name = "ecdsa_secp224r1_sha3_512_4250", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4250_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4250_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4250_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 367 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4251 for ECDSA, tcId is 368 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4251_pubkey[] = { 0x93, 0xaa, 0x93, 0x83, 0x87, 0x89, 0x78, 0x26, 0xdb, 0x23, 0xb1, 0x99, 0x03, 0xc5, 0x8a, 0x32, 0xf8, 0x26, 0x9d, 0x93, 0xa5, 0x36, 0x6a, 0x7a, 0x67, 0x3e, 0x30, 0xda, 0x27, 0xac, 0x5a, 0x51, 0x5b, 0x70, 0x81, 0xcd, 0x74, 0xbf, 0x69, 0x52, 0x81, 0x14, 0x24, 0x17, 0x28, 0xda, 0x26, 0xae, 0x68, 0x95, 0xe8, 0x3f, 0xea, 0x25, 0xbe, 0xc4, }; static const unsigned char ecdsa_secp224r1_sha3_512_4251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4251_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4251 = { .name = "ecdsa_secp224r1_sha3_512_4251", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4251_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4251_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4251_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 368 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4252 for ECDSA, tcId is 369 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4252_pubkey[] = { 0x09, 0xcd, 0xd0, 0x11, 0x9a, 0x39, 0x2a, 0x27, 0x1c, 0x40, 0x55, 0xfa, 0xc2, 0xfa, 0x71, 0xfc, 0xc6, 0x78, 0xb9, 0xc3, 0x18, 0xbf, 0xb9, 0x0d, 0xd1, 0xad, 0x0a, 0xd6, 0x4d, 0xbd, 0x41, 0x87, 0x26, 0xf0, 0xd3, 0xf0, 0xbf, 0x0c, 0xee, 0x7a, 0x1b, 0x36, 0x6d, 0x97, 0x11, 0x79, 0x3c, 0x83, 0x92, 0x06, 0xe6, 0x20, 0x5c, 0x41, 0x6e, 0xbd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4252_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4252 = { .name = "ecdsa_secp224r1_sha3_512_4252", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4252_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4252_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4252_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 369 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4253 for ECDSA, tcId is 370 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4253_pubkey[] = { 0x8f, 0x71, 0x1e, 0x9f, 0xbe, 0xa4, 0x1b, 0xd2, 0x5a, 0xad, 0xf5, 0x84, 0x99, 0x99, 0x26, 0xa2, 0x9c, 0x28, 0x01, 0xe7, 0xdb, 0xb2, 0xeb, 0x1d, 0xbe, 0x0d, 0x15, 0x86, 0x84, 0x1a, 0x14, 0x3b, 0xde, 0xea, 0xc9, 0x96, 0x9b, 0xe8, 0x7f, 0x57, 0xb4, 0xd7, 0x1a, 0x46, 0x6b, 0x2b, 0x6a, 0xed, 0x24, 0xe8, 0x54, 0xb0, 0x75, 0x70, 0xe6, 0x29, }; static const unsigned char ecdsa_secp224r1_sha3_512_4253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4253_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4253 = { .name = "ecdsa_secp224r1_sha3_512_4253", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4253_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4253_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4253_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 370 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4254 for ECDSA, tcId is 371 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4254_pubkey[] = { 0xc2, 0x88, 0xdd, 0xd8, 0x17, 0x14, 0xa9, 0xe7, 0x66, 0xb3, 0x5a, 0x03, 0xc8, 0x35, 0xfb, 0xe1, 0xa5, 0x2c, 0x54, 0x0b, 0x74, 0x7b, 0x11, 0xba, 0x3e, 0xba, 0xbd, 0xcc, 0xb2, 0x6b, 0xd0, 0x49, 0xbd, 0x30, 0x88, 0xb5, 0x53, 0x16, 0x22, 0x61, 0xeb, 0x93, 0xab, 0x5a, 0x75, 0xd8, 0x73, 0xbf, 0xca, 0x81, 0x22, 0xa2, 0x29, 0xe2, 0xcf, 0xc7, }; static const unsigned char ecdsa_secp224r1_sha3_512_4254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4254_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4254 = { .name = "ecdsa_secp224r1_sha3_512_4254", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4254_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4254_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4254_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 371 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4255 for ECDSA, tcId is 372 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4255_pubkey[] = { 0xfd, 0x93, 0x1e, 0x8f, 0x08, 0xb1, 0x2c, 0xa8, 0x2a, 0x6b, 0x05, 0x0e, 0x2c, 0x28, 0x1b, 0x00, 0x69, 0x25, 0x8a, 0xc8, 0x51, 0x13, 0x10, 0x08, 0xf9, 0xc2, 0x85, 0x3c, 0x8b, 0xea, 0xbb, 0x4b, 0xfe, 0xff, 0x98, 0xbe, 0x4e, 0xe2, 0x3f, 0x90, 0xb5, 0x52, 0xcc, 0xc3, 0x8a, 0x72, 0x97, 0x6b, 0xc7, 0x1e, 0x76, 0x37, 0xda, 0xd2, 0x7f, 0xba, }; static const unsigned char ecdsa_secp224r1_sha3_512_4255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4255_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4255 = { .name = "ecdsa_secp224r1_sha3_512_4255", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4255_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4255_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4255_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 372 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4256 for ECDSA, tcId is 373 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4256_pubkey[] = { 0x1d, 0xfd, 0xd3, 0x50, 0xe4, 0x59, 0x03, 0xef, 0x44, 0xa2, 0x8a, 0xcf, 0x73, 0x99, 0x9a, 0x22, 0xa7, 0x06, 0xa5, 0x89, 0xa3, 0xdd, 0x20, 0xc0, 0x51, 0xdb, 0xe4, 0xe5, 0x41, 0xc1, 0x02, 0x1f, 0xf3, 0xe9, 0x64, 0x6e, 0xad, 0x3e, 0x98, 0x58, 0xc9, 0xc1, 0xbd, 0xae, 0x1e, 0x15, 0x32, 0xb6, 0x9b, 0x2e, 0xc5, 0x2f, 0x85, 0x46, 0xf5, 0x73, }; static const unsigned char ecdsa_secp224r1_sha3_512_4256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4256_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4256 = { .name = "ecdsa_secp224r1_sha3_512_4256", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4256_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4256_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4256_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 373 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4257 for ECDSA, tcId is 374 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4257_pubkey[] = { 0xfc, 0x06, 0xe8, 0x42, 0x48, 0x39, 0xeb, 0x95, 0x20, 0x31, 0x95, 0xf9, 0xee, 0x12, 0x68, 0x7c, 0x79, 0x0b, 0xbc, 0xc9, 0xa7, 0x40, 0xd4, 0x0c, 0x1b, 0xbb, 0xcf, 0x66, 0x0d, 0x1a, 0xfa, 0x47, 0x36, 0x37, 0xd7, 0x08, 0x95, 0x29, 0x54, 0xa1, 0x80, 0x67, 0xb4, 0xcb, 0xff, 0xe5, 0x84, 0xe9, 0xe8, 0x91, 0x40, 0x35, 0x41, 0xc2, 0x1f, 0xa7, }; static const unsigned char ecdsa_secp224r1_sha3_512_4257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4257_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4257 = { .name = "ecdsa_secp224r1_sha3_512_4257", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4257_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4257_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4257_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 374 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4258 for ECDSA, tcId is 375 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4258_pubkey[] = { 0xc8, 0x47, 0xd6, 0x75, 0x77, 0x02, 0xdb, 0x5d, 0x47, 0xca, 0xf6, 0x12, 0x9e, 0x86, 0x5a, 0xa2, 0x2d, 0x6b, 0x55, 0xc5, 0x45, 0xf7, 0x0c, 0xe7, 0xe7, 0xad, 0x0e, 0xca, 0xf6, 0x9b, 0xf4, 0xc6, 0x24, 0x11, 0x1e, 0xf1, 0xce, 0x92, 0xe9, 0xe1, 0x0d, 0x12, 0x6f, 0x0c, 0xed, 0xa9, 0x85, 0x1d, 0xcc, 0x53, 0x99, 0x39, 0x30, 0x32, 0x4d, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4258_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4258 = { .name = "ecdsa_secp224r1_sha3_512_4258", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4258_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4258_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4258_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 375 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4259 for ECDSA, tcId is 376 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4259_pubkey[] = { 0xc8, 0x47, 0xd6, 0x75, 0x77, 0x02, 0xdb, 0x5d, 0x47, 0xca, 0xf6, 0x12, 0x9e, 0x86, 0x5a, 0xa2, 0x2d, 0x6b, 0x55, 0xc5, 0x45, 0xf7, 0x0c, 0xe7, 0xe7, 0xad, 0x0e, 0xca, 0xf6, 0x9b, 0xf4, 0xc6, 0x24, 0x11, 0x1e, 0xf1, 0xce, 0x92, 0xe9, 0xe1, 0x0d, 0x12, 0x6f, 0x0c, 0xed, 0xa9, 0x85, 0x1d, 0xcc, 0x53, 0x99, 0x39, 0x30, 0x32, 0x4d, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4259_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4259 = { .name = "ecdsa_secp224r1_sha3_512_4259", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4259_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4259_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4259_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 376 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4260 for ECDSA, tcId is 377 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4260_pubkey[] = { 0x61, 0xc0, 0xd0, 0x9f, 0xc4, 0x0d, 0xd5, 0x9a, 0x7b, 0x52, 0x81, 0xaf, 0x54, 0xfd, 0x4d, 0xb8, 0x81, 0x99, 0x97, 0xcf, 0x31, 0x21, 0x2a, 0x4b, 0x35, 0xcf, 0x60, 0x78, 0xa5, 0x5e, 0xf1, 0x4c, 0xaf, 0xac, 0xd5, 0x7c, 0xa5, 0x01, 0x95, 0xaa, 0x19, 0x62, 0xaa, 0x7d, 0x01, 0xf7, 0x59, 0x5d, 0x76, 0xd3, 0x42, 0xd8, 0x3f, 0xed, 0x44, 0xec, }; static const unsigned char ecdsa_secp224r1_sha3_512_4260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4260_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4260 = { .name = "ecdsa_secp224r1_sha3_512_4260", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4260_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4260_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4260_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 377 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4261 for ECDSA, tcId is 378 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4261_pubkey[] = { 0x66, 0x53, 0x92, 0x75, 0xc7, 0xd5, 0xae, 0x5d, 0xad, 0x25, 0x07, 0xa7, 0x16, 0x9c, 0x48, 0xa9, 0xcf, 0xf0, 0x67, 0xc4, 0xd6, 0xaf, 0xeb, 0x22, 0x56, 0x12, 0x39, 0xb6, 0x12, 0xee, 0xc9, 0xa7, 0xe6, 0x3d, 0x60, 0x2c, 0xf8, 0x7f, 0x35, 0x81, 0xbd, 0xeb, 0x19, 0xce, 0x99, 0x4c, 0x48, 0xb4, 0x10, 0x79, 0xef, 0x81, 0x86, 0x33, 0x9d, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4261_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4261 = { .name = "ecdsa_secp224r1_sha3_512_4261", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4261_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4261_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4261_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 378 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4262 for ECDSA, tcId is 379 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4262_pubkey[] = { 0x43, 0xa4, 0x5a, 0xdf, 0x3c, 0xd2, 0xa8, 0x66, 0xe0, 0x1e, 0xc4, 0x52, 0x69, 0xf6, 0x04, 0xaf, 0x02, 0x6a, 0x44, 0x83, 0x97, 0x3c, 0xc4, 0x35, 0x6b, 0x47, 0x39, 0x66, 0x2a, 0x84, 0x03, 0xf5, 0xf1, 0x4f, 0xcd, 0x73, 0x7d, 0x2a, 0xed, 0xec, 0x13, 0x6a, 0x53, 0x44, 0x17, 0xe0, 0xd1, 0x9e, 0x1b, 0x98, 0xd5, 0x39, 0x44, 0x10, 0x0d, 0x0f, }; static const unsigned char ecdsa_secp224r1_sha3_512_4262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4262_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4262 = { .name = "ecdsa_secp224r1_sha3_512_4262", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4262_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4262_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4262_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 379 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4263 for ECDSA, tcId is 380 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4263_pubkey[] = { 0x2e, 0x55, 0xf9, 0x24, 0x35, 0xee, 0x39, 0x67, 0x08, 0xe4, 0x80, 0x5e, 0x3a, 0x2c, 0x4c, 0x61, 0x52, 0xc6, 0x9e, 0x16, 0x71, 0xe9, 0xd6, 0x38, 0x7c, 0x56, 0xf5, 0x8d, 0x3b, 0x4a, 0x17, 0x3a, 0xd9, 0xf4, 0x75, 0x44, 0x85, 0x86, 0xae, 0x0f, 0x53, 0x1e, 0xe0, 0x7f, 0x15, 0x55, 0x3e, 0xba, 0x98, 0x28, 0xb2, 0xbc, 0x8d, 0x72, 0xc5, 0xf1, }; static const unsigned char ecdsa_secp224r1_sha3_512_4263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4263_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4263 = { .name = "ecdsa_secp224r1_sha3_512_4263", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4263_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4263_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4263_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 380 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4264 for ECDSA, tcId is 381 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4264_pubkey[] = { 0x5b, 0xc1, 0xeb, 0x0a, 0xb6, 0x34, 0x91, 0x46, 0xbf, 0x13, 0xd2, 0xaa, 0xfd, 0x9d, 0x44, 0xc9, 0x09, 0x39, 0x7d, 0x39, 0xc1, 0x23, 0x71, 0xff, 0x7e, 0x56, 0xb1, 0x26, 0x4c, 0x7f, 0x85, 0x00, 0x4a, 0x22, 0xaa, 0x08, 0xc9, 0x3b, 0x7b, 0x14, 0xc0, 0x69, 0x70, 0xfa, 0x19, 0x62, 0x5e, 0x67, 0x1c, 0x1f, 0xb5, 0xb1, 0x6e, 0x8a, 0x0b, 0xd5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4264_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc3, 0xe1, 0xb8, 0x36, 0x93, 0x8a, 0x5b, 0x4b, 0xfa, 0xc8, 0x23, 0x9a, 0x9c, 0x54, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4264 = { .name = "ecdsa_secp224r1_sha3_512_4264", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4264_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4264_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4264_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 381 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4265 for ECDSA, tcId is 382 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4265_pubkey[] = { 0x14, 0x47, 0x65, 0xb9, 0xd7, 0x87, 0x24, 0xba, 0xbc, 0x43, 0x58, 0xb2, 0x29, 0xdf, 0x98, 0xe9, 0xd6, 0x4d, 0xa2, 0x27, 0x24, 0x38, 0x1e, 0xbf, 0xe4, 0x1d, 0x7e, 0x72, 0x86, 0xe9, 0x58, 0xc2, 0xf6, 0x77, 0x9b, 0x8e, 0xa7, 0x64, 0x33, 0xcd, 0x4d, 0xce, 0x0a, 0xe4, 0xcd, 0x30, 0x08, 0x75, 0xac, 0x1c, 0x7a, 0xd2, 0x18, 0xe5, 0x7a, 0x55, }; static const unsigned char ecdsa_secp224r1_sha3_512_4265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4265_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4265 = { .name = "ecdsa_secp224r1_sha3_512_4265", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4265_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4265_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4265_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 382 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4266 for ECDSA, tcId is 383 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4266_pubkey[] = { 0xe3, 0xfc, 0x6f, 0xee, 0x21, 0x6e, 0xb1, 0xfa, 0x8a, 0xea, 0x73, 0xfc, 0x28, 0x02, 0x70, 0x9b, 0x2c, 0x5c, 0xd2, 0x9f, 0x99, 0xed, 0x96, 0x4b, 0xcc, 0x08, 0x06, 0xaa, 0x2d, 0xfc, 0x63, 0x4b, 0x90, 0x50, 0xac, 0xf5, 0x68, 0x96, 0x3e, 0x39, 0x96, 0xac, 0xf0, 0xf2, 0xc7, 0x65, 0x6a, 0x3b, 0xc0, 0xf0, 0x91, 0xd7, 0xaa, 0x1a, 0xdf, 0x7a, }; static const unsigned char ecdsa_secp224r1_sha3_512_4266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4266_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4266 = { .name = "ecdsa_secp224r1_sha3_512_4266", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4266_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4266_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4266_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 383 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4267 for ECDSA, tcId is 384 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4267_pubkey[] = { 0xe5, 0x7b, 0xf5, 0x9d, 0x82, 0x36, 0xb7, 0xb7, 0x89, 0xd4, 0x59, 0x12, 0xee, 0xba, 0xa6, 0x9d, 0xba, 0x56, 0x3b, 0xc7, 0x90, 0xfc, 0xa9, 0x9e, 0xce, 0x5d, 0xa6, 0x65, 0x8b, 0xdd, 0x80, 0xb8, 0x6d, 0x6e, 0x9c, 0xaa, 0x2e, 0x90, 0x86, 0xd2, 0x26, 0x61, 0x42, 0x81, 0xcc, 0x03, 0x8a, 0x23, 0x23, 0x08, 0x3a, 0x41, 0x84, 0x05, 0x7a, 0x37, }; static const unsigned char ecdsa_secp224r1_sha3_512_4267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4267_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbc, 0x0f, 0x3a, 0x27, 0x08, 0xcb, 0xe1, 0x43, 0x80, 0x83, 0x45, 0x11, 0x63, 0xbd, 0xcb, 0x65, 0x79, 0x32, 0x6c, 0xca, 0x4f, 0xde, 0xe6, 0x8e, 0xd3, 0x7d, 0x63, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4267 = { .name = "ecdsa_secp224r1_sha3_512_4267", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4267_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4267_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4267_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4268 for ECDSA, tcId is 385 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4268_pubkey[] = { 0xd2, 0x61, 0x2e, 0xd2, 0x0f, 0xe7, 0x86, 0x48, 0x4b, 0x89, 0x55, 0xd6, 0x58, 0x20, 0x07, 0x76, 0xec, 0x21, 0x94, 0x26, 0x47, 0x9c, 0x69, 0x19, 0x4f, 0x8c, 0x1b, 0xaf, 0xa3, 0xaf, 0x3a, 0xa7, 0x78, 0xc1, 0x75, 0x1f, 0x44, 0x74, 0xcc, 0x0f, 0xf2, 0xdb, 0x2a, 0x83, 0x4c, 0x23, 0x2e, 0xc4, 0x9e, 0x9c, 0xe1, 0x42, 0xa5, 0x11, 0x70, 0xb7, }; static const unsigned char ecdsa_secp224r1_sha3_512_4268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4268_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0x44, 0x65, 0xa5, 0x5b, 0x28, 0x2f, 0x25, 0x2f, 0x2b, 0x47, 0xf9, 0xf7, 0xbf, 0xc0, 0xba, 0x40, 0xec, 0x4d, 0xca, 0x29, 0xf5, 0x67, 0x94, 0x0b, 0x2d, 0x90, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4268 = { .name = "ecdsa_secp224r1_sha3_512_4268", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4268_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4268_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4268_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4269 for ECDSA, tcId is 386 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4269_pubkey[] = { 0x4c, 0x70, 0xcd, 0x0a, 0xa0, 0x6d, 0x9e, 0xe3, 0x6a, 0x16, 0x20, 0x2b, 0xcf, 0xc8, 0x91, 0xce, 0xb4, 0x1a, 0x26, 0xe0, 0xbc, 0xdd, 0xe9, 0xd9, 0x3d, 0xa8, 0x00, 0x1a, 0xab, 0x77, 0xb5, 0x07, 0xc7, 0x79, 0x31, 0xfc, 0x7e, 0xe2, 0x90, 0xcd, 0xa7, 0xb7, 0xaf, 0x6a, 0xd9, 0x0d, 0x0c, 0x97, 0xb8, 0x36, 0xae, 0x1b, 0x65, 0xb6, 0xec, 0xcb, }; static const unsigned char ecdsa_secp224r1_sha3_512_4269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4269_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xe8, 0x08, 0xb8, 0x7e, 0x0e, 0x6e, 0x76, 0x36, 0x4c, 0xe3, 0x2f, 0xde, 0x12, 0xf6, 0x92, 0xd6, 0x9d, 0xd3, 0xb3, 0x62, 0xef, 0x4c, 0xf4, 0x99, 0xe0, 0x34, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4269 = { .name = "ecdsa_secp224r1_sha3_512_4269", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4269_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4269_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4269_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4270 for ECDSA, tcId is 387 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4270_pubkey[] = { 0xef, 0xb7, 0x72, 0x2f, 0xce, 0xaa, 0x8c, 0xd1, 0x91, 0x62, 0xee, 0xe8, 0xb2, 0x93, 0xb5, 0x8d, 0xcb, 0xd0, 0xfd, 0xd3, 0xdc, 0xfc, 0xd6, 0xe6, 0xba, 0x37, 0xba, 0xa5, 0x65, 0x9d, 0x47, 0xec, 0xd7, 0xd2, 0xb7, 0xf6, 0x5f, 0xae, 0xd3, 0xe9, 0xa9, 0xb5, 0x54, 0xdb, 0x19, 0xe9, 0x69, 0x48, 0xa1, 0xc5, 0xb9, 0x54, 0x35, 0x1f, 0x23, 0xa3, }; static const unsigned char ecdsa_secp224r1_sha3_512_4270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4270_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb8, 0x36, 0xc9, 0x57, 0x34, 0x2d, 0x75, 0x7e, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9b, 0xb4, 0x48, 0x9e, 0xcc, 0xe8, 0xb6, 0x58, 0xca, 0x10, 0xe8, 0x22, 0xec, 0xc8, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4270 = { .name = "ecdsa_secp224r1_sha3_512_4270", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4270_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4270_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4270_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4271 for ECDSA, tcId is 388 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4271_pubkey[] = { 0x79, 0xe5, 0x77, 0xf8, 0x30, 0x3d, 0x4e, 0xd7, 0x4c, 0x3a, 0x19, 0xca, 0xbe, 0x3e, 0xc3, 0x5b, 0xd3, 0x9c, 0xb7, 0x89, 0xbc, 0x73, 0x09, 0x33, 0x5a, 0x57, 0x10, 0xe6, 0x43, 0xcc, 0x43, 0x7d, 0x57, 0x93, 0x93, 0x1f, 0x92, 0xee, 0xa5, 0x60, 0x39, 0xb2, 0x20, 0x88, 0x16, 0x56, 0x93, 0xa7, 0xd9, 0xed, 0x0f, 0xfc, 0x61, 0x88, 0xaa, 0x24, }; static const unsigned char ecdsa_secp224r1_sha3_512_4271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4271_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x95, 0x73, 0x42, 0xd7, 0x57, 0xec, 0xbd, 0x25, 0x18, 0xae, 0x59, 0xc5, 0xc2, 0xf4, 0xeb, 0xdd, 0x95, 0xca, 0xed, 0xf6, 0x1c, 0x68, 0xb8, 0x93, 0x87, 0xf3, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4271 = { .name = "ecdsa_secp224r1_sha3_512_4271", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4271_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4271_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4271_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4272 for ECDSA, tcId is 389 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4272_pubkey[] = { 0x73, 0x5e, 0x5b, 0xc2, 0x9e, 0xe5, 0x52, 0x42, 0xa7, 0x19, 0x53, 0xf4, 0xd3, 0x19, 0x54, 0xbc, 0x8c, 0x17, 0x3c, 0x40, 0xbd, 0x84, 0x01, 0x7d, 0xbc, 0x07, 0x6d, 0x4a, 0xce, 0x15, 0xcf, 0xa8, 0x65, 0xa1, 0xb3, 0x76, 0x2e, 0x61, 0xdd, 0x24, 0xcf, 0x61, 0x02, 0x2b, 0xb5, 0x71, 0xa5, 0xfc, 0x8b, 0x5d, 0x5e, 0x7e, 0xa8, 0x0b, 0x24, 0x05, }; static const unsigned char ecdsa_secp224r1_sha3_512_4272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4272_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd9, 0x2a, 0xe6, 0x85, 0xae, 0xaf, 0xd9, 0x7a, 0x4a, 0x31, 0x5c, 0xb3, 0x8b, 0x85, 0xe9, 0xd7, 0xbb, 0x2b, 0x95, 0xdb, 0xec, 0x38, 0xd1, 0x71, 0x27, 0x0f, 0xe7, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4272 = { .name = "ecdsa_secp224r1_sha3_512_4272", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4272_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4272_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4272_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4273 for ECDSA, tcId is 390 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4273_pubkey[] = { 0xee, 0x25, 0x58, 0xb8, 0xb7, 0x64, 0x22, 0x87, 0xcd, 0xee, 0xdc, 0x8b, 0xca, 0x74, 0x09, 0x74, 0x26, 0x4a, 0x66, 0x7e, 0x5e, 0xde, 0xfe, 0x79, 0xe7, 0xa0, 0x39, 0x00, 0x5c, 0xf3, 0x62, 0xe4, 0x7f, 0xac, 0xa6, 0x49, 0xcf, 0x9b, 0x8f, 0x6c, 0x92, 0x14, 0x53, 0x9e, 0xf2, 0xee, 0xe6, 0xb8, 0x69, 0x35, 0x18, 0x5c, 0x1f, 0xdb, 0x34, 0x92, }; static const unsigned char ecdsa_secp224r1_sha3_512_4273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4273_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x34, 0x2d, 0x75, 0x7e, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x01, 0x3b, 0x79, 0xf0, 0x87, 0xe6, 0x2e, 0x58, 0x92, 0x3f, 0x7e, 0xa5, 0xc0, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4273 = { .name = "ecdsa_secp224r1_sha3_512_4273", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4273_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4273_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4273_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4274 for ECDSA, tcId is 391 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4274_pubkey[] = { 0xf8, 0xb4, 0xc3, 0x78, 0xbd, 0x5f, 0x41, 0x7b, 0x56, 0x2a, 0xe1, 0x27, 0xf3, 0x98, 0x25, 0xa2, 0xb0, 0x57, 0x70, 0x08, 0x9b, 0x7c, 0xaf, 0x93, 0x24, 0xd7, 0xce, 0x1a, 0x50, 0x70, 0x81, 0x75, 0xba, 0x24, 0x5e, 0x9c, 0x15, 0x2b, 0xff, 0x3c, 0xa9, 0x57, 0x43, 0xe2, 0x61, 0xb6, 0xf5, 0x79, 0x32, 0x8f, 0x30, 0x68, 0x0f, 0xb6, 0xa2, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha3_512_4274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4274_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x21, 0xf8, 0x62, 0xec, 0x7b, 0x9a, 0x0f, 0x5e, 0x3f, 0xbe, 0x5d, 0x77, 0x4e, 0x20, 0xa5, 0x9e, 0xb3, 0xc3, 0x41, 0xb9, 0xe1, 0xff, 0x21, 0x5b, 0x44, 0x6f, 0x63, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4274 = { .name = "ecdsa_secp224r1_sha3_512_4274", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4274_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4274_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4274_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4275 for ECDSA, tcId is 392 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4275_pubkey[] = { 0x5e, 0xb6, 0x3f, 0x0f, 0x7b, 0x7e, 0xc6, 0x67, 0x58, 0x86, 0x70, 0x02, 0x2e, 0x2f, 0x0b, 0x11, 0x24, 0xb1, 0x32, 0xeb, 0xe1, 0x6c, 0x14, 0x3d, 0x6e, 0xd2, 0x46, 0x02, 0xaf, 0x2b, 0x27, 0xb9, 0x2a, 0x44, 0x9a, 0x4e, 0xdc, 0x20, 0x26, 0x7d, 0x25, 0xd0, 0xa2, 0x38, 0xb4, 0x3a, 0xa7, 0x28, 0x93, 0x48, 0xa1, 0x37, 0x8d, 0xb0, 0x79, 0xde, }; static const unsigned char ecdsa_secp224r1_sha3_512_4275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4275_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x43, 0xf0, 0xc5, 0xd8, 0xf7, 0x34, 0x1e, 0xbc, 0x7f, 0x7c, 0xba, 0xee, 0x9c, 0x41, 0x4b, 0x3d, 0x67, 0x86, 0x83, 0x73, 0xc3, 0xfe, 0x42, 0xb6, 0x88, 0xde, 0xc6, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4275 = { .name = "ecdsa_secp224r1_sha3_512_4275", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4275_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4275_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4275_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4276 for ECDSA, tcId is 393 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4276_pubkey[] = { 0x28, 0x0a, 0xc7, 0xf1, 0x1a, 0xfa, 0x66, 0x46, 0x5c, 0x37, 0xeb, 0xa8, 0x20, 0xaa, 0x8f, 0x39, 0x3d, 0x13, 0xc5, 0x63, 0x40, 0x22, 0x33, 0x3c, 0x7a, 0x25, 0x24, 0xbd, 0x5c, 0x63, 0xb1, 0xe9, 0xed, 0x18, 0x11, 0x5b, 0x58, 0x9b, 0x56, 0x27, 0x0c, 0x5c, 0x32, 0x81, 0xfa, 0x97, 0x06, 0x0f, 0x1d, 0x30, 0xae, 0xf4, 0x65, 0xf4, 0x45, 0xe2, }; static const unsigned char ecdsa_secp224r1_sha3_512_4276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4276_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0xe9, 0x28, 0xc5, 0x72, 0xce, 0x2e, 0x1a, 0xbf, 0x3b, 0x18, 0x65, 0xea, 0x61, 0xf0, 0xdc, 0x1b, 0x49, 0xc5, 0x2d, 0xa5, 0xfd, 0x64, 0x11, 0xcd, 0x4e, 0x2a, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4276 = { .name = "ecdsa_secp224r1_sha3_512_4276", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4276_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4276_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4276_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4277 for ECDSA, tcId is 394 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4277_pubkey[] = { 0xcd, 0xc6, 0x3e, 0x73, 0xd8, 0xd6, 0xf4, 0xf8, 0x77, 0x0a, 0x97, 0xd9, 0x3b, 0xde, 0x4e, 0x19, 0x74, 0xa2, 0x77, 0xad, 0xad, 0x53, 0xd5, 0x00, 0xcb, 0x07, 0x09, 0x07, 0x53, 0x3c, 0x09, 0x37, 0x94, 0x88, 0xcb, 0x34, 0x4c, 0xe0, 0x1b, 0xb2, 0x9a, 0x2f, 0x12, 0xd6, 0xe0, 0xb9, 0x46, 0xa2, 0x79, 0xc7, 0xf5, 0xd4, 0x78, 0x31, 0x47, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha3_512_4277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4277_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xf4, 0x04, 0x5c, 0x3f, 0x07, 0x37, 0x3b, 0x1b, 0x26, 0x71, 0x97, 0xef, 0x09, 0x7b, 0x49, 0x6b, 0x4e, 0xe9, 0xd9, 0xb1, 0x77, 0xa6, 0x7a, 0x4c, 0xf0, 0x1a, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4277 = { .name = "ecdsa_secp224r1_sha3_512_4277", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4277_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4277_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4277_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4278 for ECDSA, tcId is 395 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4278_pubkey[] = { 0x5e, 0x96, 0x3c, 0xe9, 0x07, 0x08, 0x53, 0x9b, 0x00, 0x1d, 0x82, 0x1b, 0x98, 0x84, 0xf4, 0x6e, 0xe4, 0xba, 0x45, 0x2b, 0xfc, 0xd5, 0x39, 0x74, 0x1d, 0x8f, 0xe8, 0x38, 0x4c, 0x8d, 0xc8, 0x74, 0x32, 0x9b, 0xd0, 0xb7, 0x8f, 0xe0, 0x4e, 0x02, 0x91, 0xf1, 0x39, 0x07, 0xff, 0x57, 0x23, 0xe8, 0xd1, 0x51, 0x46, 0xc5, 0x46, 0x9d, 0x7d, 0x9b, }; static const unsigned char ecdsa_secp224r1_sha3_512_4278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4278_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4278 = { .name = "ecdsa_secp224r1_sha3_512_4278", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4278_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4278_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4278_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4279 for ECDSA, tcId is 396 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4279_pubkey[] = { 0xaa, 0x7f, 0x2f, 0x92, 0xf8, 0xae, 0x99, 0xc9, 0xbd, 0xac, 0x06, 0x5e, 0x65, 0x9a, 0x4a, 0x2a, 0x05, 0x40, 0xf2, 0x13, 0x69, 0x38, 0x33, 0x34, 0x61, 0x3b, 0x60, 0x86, 0x94, 0xda, 0x15, 0xe1, 0x13, 0xf2, 0x11, 0xa6, 0xe7, 0x93, 0x9c, 0xaf, 0x1f, 0x20, 0xac, 0xc2, 0x79, 0xa3, 0xb5, 0xb5, 0xb0, 0x18, 0x64, 0x51, 0xec, 0x86, 0x03, 0xb4, }; static const unsigned char ecdsa_secp224r1_sha3_512_4279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4279_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4279 = { .name = "ecdsa_secp224r1_sha3_512_4279", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4279_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4279_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4279_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4280 for ECDSA, tcId is 397 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4280_pubkey[] = { 0xb9, 0x75, 0x29, 0xfb, 0x4a, 0x1e, 0x02, 0xb5, 0xe8, 0x1d, 0x77, 0xb0, 0xe7, 0x90, 0x9a, 0x2f, 0xde, 0x85, 0x7a, 0x1e, 0xdc, 0x9f, 0xa6, 0x60, 0xd6, 0x00, 0xc8, 0x9a, 0xe5, 0xa8, 0xc9, 0xc5, 0x58, 0x85, 0xcc, 0x20, 0xf5, 0x4f, 0x5c, 0x8f, 0x42, 0x3f, 0x78, 0x5c, 0xaf, 0x42, 0x3d, 0x77, 0xba, 0x0a, 0xfc, 0x31, 0xfc, 0x16, 0xf1, 0x31, }; static const unsigned char ecdsa_secp224r1_sha3_512_4280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4280_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4280 = { .name = "ecdsa_secp224r1_sha3_512_4280", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4280_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4280_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4280_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4281 for ECDSA, tcId is 398 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4281_pubkey[] = { 0xa4, 0xb3, 0x44, 0x98, 0x1d, 0x0a, 0x82, 0x65, 0x46, 0x85, 0x5d, 0x21, 0x9a, 0xb4, 0xab, 0x59, 0xd3, 0xff, 0x33, 0x06, 0x76, 0xd9, 0x3b, 0x95, 0x53, 0x80, 0x42, 0x78, 0x41, 0x37, 0x0e, 0x4d, 0xd0, 0xde, 0x4d, 0x09, 0x6c, 0x20, 0x88, 0x1f, 0xc3, 0x5a, 0x9a, 0x0f, 0xf3, 0x77, 0xb5, 0xf0, 0x6d, 0xee, 0xed, 0xc1, 0x9f, 0xeb, 0x48, 0xae, }; static const unsigned char ecdsa_secp224r1_sha3_512_4281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4281_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4281 = { .name = "ecdsa_secp224r1_sha3_512_4281", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4281_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4281_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4281_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4282 for ECDSA, tcId is 399 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4282_pubkey[] = { 0xd6, 0x56, 0x04, 0x8b, 0xfd, 0x65, 0xaf, 0x83, 0xd6, 0xdc, 0x3f, 0x7c, 0xb7, 0xd2, 0x40, 0xc9, 0xe0, 0xcd, 0xee, 0x6e, 0x94, 0x6b, 0x15, 0xab, 0xb1, 0x3f, 0x4b, 0x33, 0xd6, 0x15, 0x80, 0xa1, 0x59, 0xca, 0xf9, 0xfd, 0x87, 0x19, 0x4b, 0x7c, 0x9d, 0x78, 0x75, 0x3e, 0x0e, 0x00, 0x56, 0x0a, 0x20, 0x8d, 0x34, 0xc7, 0xdd, 0x4c, 0x6a, 0x63, }; static const unsigned char ecdsa_secp224r1_sha3_512_4282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4282_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4282 = { .name = "ecdsa_secp224r1_sha3_512_4282", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4282_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4282_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4282_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4283 for ECDSA, tcId is 400 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4283_pubkey[] = { 0xea, 0x6b, 0x31, 0x00, 0x29, 0x06, 0x27, 0xd3, 0xe5, 0xd8, 0xa0, 0x7d, 0x7d, 0x16, 0x70, 0x22, 0xc5, 0x8e, 0x7b, 0xda, 0xc2, 0x70, 0x17, 0x35, 0x93, 0x18, 0x99, 0xac, 0x39, 0xbc, 0xa5, 0x6a, 0x70, 0x2c, 0x50, 0x8d, 0xd5, 0x1b, 0xc9, 0x6c, 0x63, 0x96, 0x7c, 0x35, 0x9e, 0x92, 0xdb, 0x79, 0x0f, 0x72, 0x63, 0x1d, 0x87, 0x5e, 0x07, 0x19, }; static const unsigned char ecdsa_secp224r1_sha3_512_4283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4283_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4283 = { .name = "ecdsa_secp224r1_sha3_512_4283", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4283_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4283_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4283_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4284 for ECDSA, tcId is 401 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4284_pubkey[] = { 0x91, 0x2c, 0xff, 0x3a, 0xb4, 0x33, 0x8f, 0x1f, 0x09, 0xb7, 0x1f, 0x90, 0x9d, 0xd6, 0x81, 0x86, 0xcf, 0xab, 0xeb, 0x74, 0x6b, 0xea, 0xe3, 0x37, 0x00, 0xdd, 0x92, 0x3f, 0xf8, 0x32, 0x46, 0x1c, 0xcf, 0xf9, 0xb8, 0x3c, 0x25, 0x75, 0x4b, 0xc1, 0xde, 0xf8, 0xf1, 0x0c, 0x5f, 0xfb, 0xdc, 0xa0, 0x12, 0x79, 0x14, 0xcf, 0x24, 0x18, 0x48, 0x23, }; static const unsigned char ecdsa_secp224r1_sha3_512_4284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4284_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4284 = { .name = "ecdsa_secp224r1_sha3_512_4284", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4284_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4284_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4284_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4285 for ECDSA, tcId is 402 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4285_pubkey[] = { 0x69, 0x52, 0x91, 0x4c, 0xe9, 0x0a, 0x0e, 0x65, 0xb0, 0x3f, 0xff, 0xa7, 0x26, 0x3f, 0x04, 0xa3, 0xf7, 0xbe, 0x03, 0xcc, 0x6b, 0x80, 0x1e, 0x12, 0x04, 0xda, 0xd3, 0x13, 0xf0, 0x47, 0x26, 0xe7, 0x69, 0x89, 0xb5, 0xb0, 0xea, 0xbf, 0x53, 0x78, 0x7d, 0x8c, 0x9f, 0x07, 0x54, 0x95, 0x06, 0xd1, 0x28, 0xa1, 0x48, 0xa6, 0xb4, 0xe9, 0x46, 0x10, }; static const unsigned char ecdsa_secp224r1_sha3_512_4285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4285_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4285 = { .name = "ecdsa_secp224r1_sha3_512_4285", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4285_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4285_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4285_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4286 for ECDSA, tcId is 403 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4286_pubkey[] = { 0x86, 0xec, 0x9d, 0x3b, 0xa7, 0xc6, 0xd9, 0x49, 0x80, 0x69, 0xa0, 0x77, 0x61, 0xa9, 0xd8, 0x5e, 0x04, 0xfa, 0x21, 0xfd, 0x59, 0x9c, 0x6a, 0x26, 0x64, 0xe8, 0x62, 0x54, 0xc5, 0x90, 0x0a, 0xa4, 0xb9, 0x88, 0x2b, 0x32, 0x98, 0x3c, 0x5e, 0x02, 0x9f, 0xe6, 0xa5, 0x57, 0x8a, 0xc8, 0x18, 0xe7, 0x9a, 0xcb, 0x20, 0xbe, 0xef, 0x73, 0xe8, 0xee, }; static const unsigned char ecdsa_secp224r1_sha3_512_4286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4286_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4286 = { .name = "ecdsa_secp224r1_sha3_512_4286", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4286_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4286_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4286_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4287 for ECDSA, tcId is 404 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4287_pubkey[] = { 0xb0, 0x8c, 0x34, 0xe9, 0x41, 0x67, 0x43, 0xb6, 0xa3, 0xf5, 0x2c, 0x42, 0x04, 0x1a, 0x5f, 0xc3, 0x01, 0x1f, 0x64, 0xdf, 0xfb, 0x54, 0x87, 0x5b, 0xc6, 0x90, 0x39, 0x3e, 0x6a, 0x7c, 0x67, 0x83, 0x36, 0x82, 0xe8, 0x17, 0x19, 0xf9, 0x28, 0xdf, 0x55, 0xfa, 0xac, 0x24, 0xf4, 0x88, 0x02, 0x85, 0x15, 0xb2, 0x6e, 0x03, 0xc1, 0xc9, 0xa0, 0x2c, }; static const unsigned char ecdsa_secp224r1_sha3_512_4287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4287_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4287 = { .name = "ecdsa_secp224r1_sha3_512_4287", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4287_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4287_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4287_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4288 for ECDSA, tcId is 405 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4288_pubkey[] = { 0x0a, 0x07, 0xd4, 0xa6, 0x4b, 0x42, 0xe6, 0x10, 0x96, 0xd0, 0xb7, 0xdd, 0x96, 0x74, 0x80, 0x0c, 0xe4, 0x69, 0x16, 0x61, 0x71, 0x59, 0x47, 0x6e, 0xca, 0xe9, 0x40, 0x58, 0x6f, 0x0b, 0x05, 0x84, 0xdb, 0xa9, 0xd9, 0xfb, 0x5c, 0xda, 0x23, 0xa2, 0xc8, 0x2e, 0x3b, 0x28, 0xb1, 0xc1, 0x48, 0x61, 0x50, 0xa3, 0x41, 0x9f, 0xee, 0xcc, 0x45, 0x04, }; static const unsigned char ecdsa_secp224r1_sha3_512_4288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4288_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4288 = { .name = "ecdsa_secp224r1_sha3_512_4288", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4288_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4288_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4288_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4289 for ECDSA, tcId is 406 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4289_pubkey[] = { 0xdc, 0xb6, 0x04, 0x4f, 0x8d, 0x2c, 0x6e, 0x3b, 0xab, 0x60, 0xf1, 0x3e, 0x6d, 0xa1, 0x89, 0x6e, 0x25, 0x04, 0xd0, 0x76, 0x9c, 0x2a, 0xf8, 0x24, 0x73, 0x2b, 0x53, 0x26, 0xb8, 0x0a, 0x54, 0x37, 0xb9, 0xd5, 0xeb, 0xe6, 0xd8, 0xeb, 0x49, 0xe7, 0x0f, 0x49, 0x22, 0x0d, 0xd3, 0xe2, 0xc3, 0xc7, 0x86, 0x5b, 0x87, 0xec, 0x98, 0xb5, 0x34, 0x66, }; static const unsigned char ecdsa_secp224r1_sha3_512_4289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4289_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xa7, 0x24, 0xb1, 0xfe, 0x42, 0x51, 0xd5, 0xb6, 0xcf, 0xa1, 0x5e, 0xea, 0x5c, 0x64, 0x8b, 0xfe, 0xd7, 0x73, 0x2f, 0xbb, 0xad, 0xc9, 0x30, 0x0c, 0x8b, 0xa4, 0x00, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4289 = { .name = "ecdsa_secp224r1_sha3_512_4289", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4289_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4289_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4289_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 406 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4290 for ECDSA, tcId is 407 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4290_pubkey[] = { 0xdc, 0xb6, 0x04, 0x4f, 0x8d, 0x2c, 0x6e, 0x3b, 0xab, 0x60, 0xf1, 0x3e, 0x6d, 0xa1, 0x89, 0x6e, 0x25, 0x04, 0xd0, 0x76, 0x9c, 0x2a, 0xf8, 0x24, 0x73, 0x2b, 0x53, 0x26, 0x47, 0xf5, 0xab, 0xc8, 0x46, 0x2a, 0x14, 0x19, 0x27, 0x14, 0xb6, 0x18, 0xf0, 0xb6, 0xdd, 0xf1, 0x2c, 0x1d, 0x3c, 0x38, 0x79, 0xa4, 0x78, 0x13, 0x67, 0x4a, 0xcb, 0x9b, }; static const unsigned char ecdsa_secp224r1_sha3_512_4290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4290_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xa7, 0x24, 0xb1, 0xfe, 0x42, 0x51, 0xd5, 0xb6, 0xcf, 0xa1, 0x5e, 0xea, 0x5c, 0x64, 0x8b, 0xfe, 0xd7, 0x73, 0x2f, 0xbb, 0xad, 0xc9, 0x30, 0x0c, 0x8b, 0xa4, 0x00, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4290 = { .name = "ecdsa_secp224r1_sha3_512_4290", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4290_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4290_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4290_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 407 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4291 for ECDSA, tcId is 408 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4291_pubkey[] = { 0xb0, 0x8c, 0x10, 0xbb, 0xd2, 0x77, 0xee, 0x6a, 0xb5, 0x01, 0xaa, 0x71, 0x14, 0x17, 0x33, 0xcb, 0x19, 0x6b, 0x74, 0xde, 0x46, 0x3e, 0xad, 0x5e, 0xa2, 0x24, 0x02, 0x2c, 0x7f, 0x68, 0xbc, 0xde, 0xea, 0xd7, 0xd7, 0x4c, 0xb6, 0x18, 0x6e, 0x32, 0x21, 0x98, 0x46, 0x42, 0x4a, 0x92, 0x6d, 0xec, 0x60, 0xb2, 0xa2, 0x27, 0x41, 0x1a, 0xe8, 0x05, }; static const unsigned char ecdsa_secp224r1_sha3_512_4291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4291_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4291 = { .name = "ecdsa_secp224r1_sha3_512_4291", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4291_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4291_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4291_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 408 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4292 for ECDSA, tcId is 409 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4292_pubkey[] = { 0xb1, 0xba, 0xbe, 0xfd, 0x03, 0xf6, 0xf7, 0x38, 0xfc, 0x86, 0xd3, 0x2c, 0xa2, 0x45, 0xf5, 0xdb, 0x21, 0xf6, 0x7e, 0x7b, 0xd9, 0x19, 0x07, 0x9b, 0xd7, 0x35, 0xf3, 0x5b, 0xd9, 0xad, 0x5e, 0x68, 0x86, 0xdc, 0xfc, 0x7f, 0x22, 0x72, 0xb9, 0x8c, 0x48, 0xa7, 0xc4, 0x3f, 0x1c, 0x57, 0xa0, 0x24, 0xf2, 0xf0, 0x54, 0xfc, 0x59, 0xbb, 0x43, 0x54, }; static const unsigned char ecdsa_secp224r1_sha3_512_4292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4292_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4292 = { .name = "ecdsa_secp224r1_sha3_512_4292", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4292_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4292_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4292_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 409 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4293 for ECDSA, tcId is 410 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4293_pubkey[] = { 0x22, 0x2b, 0x75, 0x66, 0xf2, 0x6c, 0x87, 0x76, 0x06, 0x6f, 0x2f, 0x40, 0x65, 0xe4, 0xe6, 0xac, 0x45, 0xa3, 0x06, 0xc3, 0x06, 0xae, 0xab, 0x82, 0x50, 0xb6, 0x52, 0xfc, 0xbc, 0x63, 0x00, 0x49, 0x61, 0xa5, 0x54, 0x04, 0x7c, 0x03, 0x65, 0x5c, 0xea, 0x7d, 0xac, 0x88, 0xe5, 0x73, 0xfd, 0x45, 0xca, 0x4b, 0x40, 0x7b, 0x63, 0x96, 0x72, 0x90, }; static const unsigned char ecdsa_secp224r1_sha3_512_4293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4293_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4293 = { .name = "ecdsa_secp224r1_sha3_512_4293", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4293_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4293_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4293_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 410 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4294 for ECDSA, tcId is 411 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4294_pubkey[] = { 0xf9, 0x97, 0x3f, 0x68, 0x87, 0x05, 0xdc, 0x10, 0x25, 0xbe, 0xb7, 0x26, 0x63, 0xdf, 0x6f, 0x84, 0xbd, 0xa4, 0xa1, 0x4a, 0x79, 0xe5, 0x95, 0x3d, 0x69, 0x92, 0x69, 0xba, 0x88, 0x6f, 0x01, 0xe6, 0x09, 0x34, 0x55, 0x96, 0x49, 0x44, 0x68, 0x37, 0x8d, 0x75, 0x8c, 0x61, 0x8f, 0x49, 0xe2, 0x16, 0x28, 0x7d, 0x85, 0x55, 0x4a, 0xf8, 0xeb, 0x68, }; static const unsigned char ecdsa_secp224r1_sha3_512_4294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4294_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4294 = { .name = "ecdsa_secp224r1_sha3_512_4294", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4294_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4294_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4294_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 411 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4295 for ECDSA, tcId is 412 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4295_pubkey[] = { 0xc1, 0x08, 0xca, 0x8a, 0xde, 0xef, 0x82, 0xf1, 0x40, 0xcf, 0x15, 0x8a, 0x70, 0xd3, 0x1f, 0x0a, 0x5b, 0x66, 0xd8, 0x66, 0x12, 0xb5, 0xd4, 0xf0, 0x0e, 0x24, 0x33, 0x86, 0x5c, 0xf0, 0xf2, 0xfa, 0x44, 0x66, 0xeb, 0x35, 0x27, 0x9c, 0xa9, 0x9d, 0xef, 0x17, 0x86, 0x48, 0x35, 0x95, 0x4a, 0x74, 0xd1, 0x2e, 0x6c, 0x7e, 0x84, 0x94, 0x06, 0x0b, }; static const unsigned char ecdsa_secp224r1_sha3_512_4295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4295_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4295 = { .name = "ecdsa_secp224r1_sha3_512_4295", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4295_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4295_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4295_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 412 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4296 for ECDSA, tcId is 413 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4296_pubkey[] = { 0x0a, 0xc4, 0x69, 0xe8, 0x16, 0x56, 0x5a, 0x6a, 0x74, 0xbe, 0xc8, 0x21, 0xca, 0x20, 0xb8, 0x8a, 0x61, 0x01, 0x8a, 0x03, 0x35, 0x19, 0x9b, 0x5d, 0x7b, 0xd9, 0x69, 0xe9, 0x46, 0x33, 0x55, 0xc7, 0x3a, 0x2d, 0x9c, 0x51, 0x04, 0x9f, 0x7a, 0x94, 0x50, 0x9a, 0x9a, 0xc4, 0xea, 0x01, 0x65, 0x76, 0x3b, 0xa1, 0x13, 0xa3, 0x0d, 0xb9, 0x99, 0xe2, }; static const unsigned char ecdsa_secp224r1_sha3_512_4296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4296_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4296 = { .name = "ecdsa_secp224r1_sha3_512_4296", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4296_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4296_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4296_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 413 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4297 for ECDSA, tcId is 414 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4297_pubkey[] = { 0x66, 0x2e, 0xb3, 0x28, 0xd2, 0x4f, 0xb5, 0x48, 0xf5, 0x17, 0x92, 0xb5, 0x56, 0x3a, 0xc3, 0xcb, 0x23, 0x7f, 0x0a, 0x65, 0x19, 0x94, 0x60, 0xee, 0xbf, 0xca, 0xa5, 0xc3, 0xe7, 0x58, 0xd1, 0x3e, 0x7b, 0x41, 0x9b, 0x41, 0x7c, 0x8c, 0x97, 0xc4, 0x72, 0x7c, 0x39, 0xfd, 0x37, 0x30, 0x45, 0xe1, 0x87, 0x92, 0xad, 0x80, 0x76, 0xb0, 0x72, 0xb4, }; static const unsigned char ecdsa_secp224r1_sha3_512_4297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4297_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4297 = { .name = "ecdsa_secp224r1_sha3_512_4297", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4297_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4297_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4297_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 414 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4298 for ECDSA, tcId is 415 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4298_pubkey[] = { 0xae, 0x6d, 0x9c, 0x06, 0x56, 0xd3, 0x63, 0xb2, 0x1e, 0x56, 0x2b, 0x56, 0xf3, 0xc8, 0x5b, 0x6d, 0x77, 0xa6, 0xac, 0xc6, 0x64, 0xad, 0x57, 0x05, 0x34, 0x1a, 0xc2, 0x62, 0xdd, 0x3a, 0x81, 0x4f, 0xf8, 0xf9, 0x04, 0x9e, 0x46, 0x35, 0x35, 0x1d, 0x25, 0x66, 0x9b, 0x50, 0xb5, 0x1b, 0x30, 0xe2, 0xa5, 0xba, 0xfc, 0x9f, 0xce, 0x17, 0x1e, 0x90, }; static const unsigned char ecdsa_secp224r1_sha3_512_4298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4298_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4298 = { .name = "ecdsa_secp224r1_sha3_512_4298", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4298_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4298_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4298_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 415 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4299 for ECDSA, tcId is 416 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4299_pubkey[] = { 0xaa, 0x93, 0xb4, 0x0a, 0x88, 0xf1, 0x72, 0xa1, 0x48, 0x1a, 0xad, 0x31, 0x2f, 0x4b, 0xcc, 0x0a, 0x7d, 0x92, 0x10, 0x3e, 0x42, 0xfe, 0xeb, 0x98, 0x6b, 0xcd, 0xc4, 0xa4, 0xe6, 0x2a, 0x7c, 0x2e, 0x4d, 0xd3, 0x4f, 0xb7, 0xe5, 0x18, 0x63, 0x0f, 0xee, 0xa5, 0x4a, 0x65, 0x81, 0xce, 0x5f, 0xfa, 0xac, 0xa7, 0xde, 0xea, 0x3b, 0x26, 0xd6, 0x47, }; static const unsigned char ecdsa_secp224r1_sha3_512_4299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4299_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4299 = { .name = "ecdsa_secp224r1_sha3_512_4299", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4299_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4299_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4299_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4300 for ECDSA, tcId is 417 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4300_pubkey[] = { 0x42, 0xf4, 0xcf, 0x93, 0x9e, 0x3a, 0xa8, 0x3c, 0x2b, 0xf1, 0x7c, 0xbe, 0x8b, 0xe9, 0x30, 0x69, 0x5a, 0xed, 0x3f, 0xee, 0xa7, 0xe6, 0x4a, 0xdf, 0x68, 0x42, 0xd7, 0x1b, 0xa1, 0x7b, 0x9d, 0xd0, 0x05, 0x89, 0x21, 0x2e, 0x33, 0xbc, 0x19, 0x00, 0x51, 0xbe, 0x87, 0x7a, 0x45, 0x56, 0x22, 0xc2, 0x2a, 0xdc, 0xce, 0x8e, 0xe0, 0x98, 0xfb, 0xee, }; static const unsigned char ecdsa_secp224r1_sha3_512_4300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4300_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4300 = { .name = "ecdsa_secp224r1_sha3_512_4300", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4300_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4300_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4300_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4301 for ECDSA, tcId is 418 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4301_pubkey[] = { 0x55, 0xa9, 0x18, 0xf3, 0xc1, 0x90, 0x77, 0x43, 0x2b, 0x22, 0xce, 0xee, 0x7c, 0x2f, 0xf8, 0x7d, 0xfe, 0x9b, 0xa7, 0x32, 0x3c, 0x55, 0x23, 0x7e, 0xe7, 0x5f, 0x02, 0xde, 0x11, 0x0e, 0x99, 0xed, 0x5b, 0xe3, 0xba, 0x0e, 0x03, 0x06, 0x25, 0x77, 0x12, 0x16, 0x87, 0x12, 0xaf, 0xae, 0xe0, 0x08, 0x16, 0x3a, 0x69, 0x3b, 0x60, 0x1f, 0x50, 0x39, }; static const unsigned char ecdsa_secp224r1_sha3_512_4301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4301_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4301 = { .name = "ecdsa_secp224r1_sha3_512_4301", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4301_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4301_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4301_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 418 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4302 for ECDSA, tcId is 419 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4302_pubkey[] = { 0xbf, 0x18, 0x4f, 0x88, 0xa4, 0x52, 0xb3, 0xbf, 0x85, 0xed, 0xae, 0xa1, 0x50, 0xdd, 0x77, 0x0e, 0x90, 0xf4, 0x9c, 0x87, 0x1b, 0x50, 0x20, 0xa0, 0xa4, 0x0d, 0xea, 0xdc, 0x28, 0xe7, 0xf6, 0xa6, 0x90, 0x33, 0x8e, 0xf4, 0xfe, 0xc8, 0x84, 0x7e, 0x6f, 0x08, 0x5d, 0xc4, 0x70, 0xc6, 0x40, 0x12, 0xb7, 0xa7, 0x47, 0x62, 0x4b, 0xc9, 0xc9, 0x0a, }; static const unsigned char ecdsa_secp224r1_sha3_512_4302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4302_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4302 = { .name = "ecdsa_secp224r1_sha3_512_4302", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4302_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4302_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4302_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 419 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4303 for ECDSA, tcId is 420 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4303_pubkey[] = { 0x87, 0x2f, 0x11, 0x2c, 0xe4, 0xaa, 0x0f, 0xf8, 0xef, 0xe7, 0x05, 0x43, 0xdc, 0x1c, 0x6b, 0x0b, 0xd1, 0x4d, 0x06, 0x8b, 0xc8, 0x8e, 0xb6, 0x43, 0x62, 0x45, 0x48, 0x1b, 0xa2, 0xae, 0xb5, 0x21, 0xe4, 0x72, 0xe5, 0xe1, 0x92, 0x1a, 0xf1, 0x62, 0x10, 0xfa, 0x63, 0xd3, 0xee, 0xe4, 0x2d, 0xf5, 0xd5, 0xff, 0x31, 0xe6, 0xd0, 0x76, 0x1b, 0x5e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4303_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4303 = { .name = "ecdsa_secp224r1_sha3_512_4303", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4303_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4303_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4303_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 420 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4304 for ECDSA, tcId is 421 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4304_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4304_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4304 = { .name = "ecdsa_secp224r1_sha3_512_4304", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4304_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4304_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4304_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 421 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4305 for ECDSA, tcId is 422 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4305_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha3_512_4305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4305_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc3, 0xe1, 0xb8, 0x36, 0x93, 0x8a, 0x5b, 0x4b, 0xfa, 0xc8, 0x23, 0x9a, 0x9c, 0x54, 0xfa, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4305 = { .name = "ecdsa_secp224r1_sha3_512_4305", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4305_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4305_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4305_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 422 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4306 for ECDSA, tcId is 423 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4306_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4306_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4306 = { .name = "ecdsa_secp224r1_sha3_512_4306", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4306_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4306_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4306_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 423 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4307 for ECDSA, tcId is 424 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4307_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4307_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc3, 0xe1, 0xb8, 0x36, 0x93, 0x8a, 0x5b, 0x4b, 0xfa, 0xc8, 0x23, 0x9a, 0x9c, 0x54, 0xfa, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4307 = { .name = "ecdsa_secp224r1_sha3_512_4307", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4307_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4307_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4307_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 424 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4308 for ECDSA, tcId is 425 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4308_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_512_4308_sig[] = { 0x8d, 0xe3, 0xb6, 0x62, 0xa5, 0x13, 0x08, 0xa2, 0xdc, 0x06, 0x51, 0xa2, 0xf5, 0x0b, 0xb3, 0x47, 0x53, 0x76, 0xe9, 0x0b, 0xb8, 0x41, 0x82, 0x56, 0xcd, 0x79, 0x1b, 0xcb, 0x09, 0x10, 0xc5, 0xc5, 0x0a, 0x32, 0xa2, 0x4a, 0xad, 0x84, 0xda, 0x25, 0x55, 0x9d, 0xbf, 0x07, 0x7e, 0x53, 0x37, 0xf3, 0xc3, 0xf6, 0x26, 0xfb, 0x15, 0xd3, 0x76, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4308 = { .name = "ecdsa_secp224r1_sha3_512_4308", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4308_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha3_512_4308_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 425 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4309 for ECDSA, tcId is 426 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4309_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_512_4309_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha3_512_4309_sig[] = { 0xdc, 0xed, 0xb0, 0x2a, 0xfd, 0xff, 0xdd, 0x19, 0x9b, 0x47, 0xe5, 0x45, 0xe1, 0x39, 0x6a, 0x1b, 0x17, 0x0f, 0xdf, 0x96, 0xa1, 0x0e, 0xe4, 0xd3, 0xad, 0xd2, 0xb4, 0x96, 0x4a, 0x3c, 0x89, 0x4b, 0x80, 0xde, 0x1b, 0xcd, 0xa5, 0x09, 0xab, 0x58, 0x75, 0x2e, 0x00, 0x56, 0xdc, 0x78, 0xd6, 0x68, 0x3a, 0x85, 0xca, 0x9f, 0x15, 0xc2, 0x51, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4309 = { .name = "ecdsa_secp224r1_sha3_512_4309", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4309_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4309_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha3_512_4309_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 426 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4310 for ECDSA, tcId is 427 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4310_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_512_4310_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha3_512_4310_sig[] = { 0xa7, 0xca, 0xb4, 0x32, 0xdc, 0x7a, 0xbf, 0x26, 0x9c, 0x13, 0x63, 0x25, 0x89, 0xd9, 0xd9, 0xcd, 0xa3, 0x74, 0x82, 0xdb, 0x9e, 0x8d, 0xcf, 0x41, 0x1c, 0x23, 0x44, 0xa4, 0xfb, 0x38, 0xff, 0x0b, 0xea, 0x5f, 0x81, 0x59, 0x56, 0x15, 0x60, 0x8a, 0xd3, 0x34, 0x94, 0xcc, 0xea, 0xec, 0x48, 0xee, 0x60, 0x07, 0xd4, 0x95, 0x1d, 0x2d, 0x5b, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4310 = { .name = "ecdsa_secp224r1_sha3_512_4310", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4310_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4310_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha3_512_4310_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 427 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4311 for ECDSA, tcId is 428 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4311_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha3_512_4311_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_512_4311_sig[] = { 0x03, 0x16, 0xa2, 0x25, 0x93, 0x70, 0x44, 0x7c, 0x1b, 0x06, 0xf5, 0x1f, 0x61, 0x89, 0xb0, 0x33, 0xea, 0xd9, 0x56, 0xc1, 0x1e, 0xbb, 0xc3, 0xed, 0xbd, 0xc2, 0xb5, 0xe4, 0x24, 0xbd, 0xa2, 0xd0, 0x65, 0xa0, 0x47, 0x5c, 0x9f, 0xc5, 0xee, 0x30, 0x0f, 0x6c, 0x4c, 0x82, 0x6b, 0x07, 0xa7, 0x40, 0xd4, 0x99, 0x0f, 0xcc, 0x14, 0x60, 0x06, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4311 = { .name = "ecdsa_secp224r1_sha3_512_4311", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4311_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4311_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha3_512_4311_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 428 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4312 for ECDSA, tcId is 429 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4312_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_512_4312_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4312_sig[] = { 0xc8, 0xa9, 0x3a, 0x8f, 0x1b, 0x3a, 0xaa, 0xa9, 0xbb, 0x8e, 0x2d, 0x8c, 0xc4, 0xf5, 0xb5, 0x03, 0x3a, 0x90, 0x9b, 0x15, 0xad, 0x81, 0xb2, 0xda, 0xe1, 0x4c, 0x16, 0x20, 0xe6, 0x86, 0x82, 0x09, 0x12, 0xf2, 0x95, 0xc9, 0xc1, 0xb3, 0x1e, 0x60, 0xc1, 0xfa, 0x27, 0xd8, 0xd0, 0xf4, 0x9c, 0x01, 0x72, 0x49, 0x38, 0x0f, 0x92, 0x8e, 0xcf, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4312 = { .name = "ecdsa_secp224r1_sha3_512_4312", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4312_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4312_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4312_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 429 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4313 for ECDSA, tcId is 430 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4313_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_512_4313_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4313_sig[] = { 0x39, 0x89, 0x32, 0x19, 0x34, 0x70, 0x2e, 0x53, 0x56, 0x35, 0x45, 0x9d, 0x94, 0x09, 0x60, 0x6c, 0xfc, 0x46, 0x34, 0xc3, 0xb2, 0x82, 0xfa, 0x86, 0xa9, 0x3c, 0x80, 0x16, 0xc1, 0xf6, 0xc3, 0x99, 0xcc, 0xb2, 0xae, 0x5a, 0x22, 0xe8, 0x06, 0xf1, 0x41, 0x38, 0x74, 0xfe, 0x57, 0xce, 0xc9, 0x17, 0xb5, 0x76, 0xd3, 0xed, 0x88, 0x7e, 0x38, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4313 = { .name = "ecdsa_secp224r1_sha3_512_4313", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4313_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4313_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4313_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 430 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4314 for ECDSA, tcId is 431 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4314_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha3_512_4314_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4314_sig[] = { 0x8c, 0x97, 0x23, 0x2c, 0xd4, 0x30, 0xbb, 0x32, 0xdd, 0x89, 0xf5, 0x15, 0x52, 0x05, 0xf6, 0xae, 0x03, 0xf1, 0x73, 0xf8, 0x8a, 0x1b, 0xe9, 0x6a, 0x2c, 0x33, 0xd9, 0xe1, 0xfb, 0x3b, 0x4e, 0xb5, 0x39, 0x55, 0x3d, 0x66, 0x45, 0xe4, 0x34, 0xbe, 0xfa, 0x76, 0x0c, 0x9f, 0xab, 0x3d, 0x2a, 0xe6, 0x45, 0xce, 0xd0, 0x3f, 0xe7, 0x71, 0x3a, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4314 = { .name = "ecdsa_secp224r1_sha3_512_4314", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4314_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4314_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4314_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 431 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4315 for ECDSA, tcId is 432 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4315_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_512_4315_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4315_sig[] = { 0x72, 0x79, 0x1a, 0x86, 0x43, 0x9f, 0x76, 0xee, 0x40, 0x96, 0x29, 0xd9, 0x23, 0xfa, 0xb7, 0x39, 0x36, 0x51, 0x0e, 0xf8, 0x93, 0x49, 0xee, 0x4c, 0xc3, 0x04, 0xb9, 0x15, 0xed, 0x67, 0xc5, 0xee, 0xdc, 0x4a, 0x59, 0xaf, 0x13, 0xfe, 0x80, 0x90, 0x51, 0x99, 0xde, 0x42, 0xfb, 0xc4, 0x5e, 0xaa, 0xd6, 0xbd, 0x44, 0x32, 0x9c, 0x7c, 0x75, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4315 = { .name = "ecdsa_secp224r1_sha3_512_4315", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4315_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4315_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4315_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 432 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4316 for ECDSA, tcId is 433 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4316_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_512_4316_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4316_sig[] = { 0x24, 0x57, 0x5f, 0xf9, 0xe5, 0xea, 0x77, 0x9d, 0x95, 0x64, 0x4b, 0x5e, 0xf9, 0xaf, 0xfa, 0x67, 0x27, 0x97, 0x85, 0x53, 0xdf, 0x3b, 0x51, 0xfb, 0xc5, 0xa2, 0x78, 0x20, 0x8b, 0x20, 0x00, 0xb4, 0xc0, 0x2a, 0x1f, 0xcc, 0x78, 0x80, 0xa4, 0x2c, 0x6d, 0xbe, 0x07, 0xe3, 0x22, 0xeb, 0xe2, 0x09, 0x40, 0xd6, 0xff, 0x32, 0xa0, 0x8e, 0xad, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4316 = { .name = "ecdsa_secp224r1_sha3_512_4316", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4316_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4316_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4316_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 433 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4317 for ECDSA, tcId is 434 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4317_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha3_512_4317_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4317_sig[] = { 0xe5, 0x58, 0x19, 0xd6, 0x3e, 0x0c, 0xdb, 0x61, 0x66, 0x76, 0xd1, 0x6d, 0x1a, 0xd6, 0xca, 0x2b, 0xb9, 0x79, 0xbe, 0x94, 0x92, 0x45, 0x34, 0xdb, 0xa3, 0xfd, 0x6f, 0x3a, 0x4d, 0xbc, 0x47, 0xc8, 0x30, 0xfd, 0x85, 0xe1, 0x6d, 0x01, 0x3e, 0x05, 0x6b, 0x2f, 0x0b, 0x16, 0x46, 0xd0, 0x48, 0xcd, 0x6f, 0xc2, 0x17, 0x57, 0xaf, 0x42, 0x8f, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4317 = { .name = "ecdsa_secp224r1_sha3_512_4317", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4317_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4317_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4317_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 434 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4318 for ECDSA, tcId is 435 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4318_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_512_4318_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4318_sig[] = { 0xd1, 0x2c, 0x22, 0xb4, 0xef, 0x1f, 0xf2, 0xde, 0x70, 0xc6, 0xe1, 0xa2, 0xc1, 0x8f, 0x7d, 0xc8, 0x7d, 0xfc, 0xfe, 0xc2, 0x25, 0xcb, 0x3f, 0x32, 0x4a, 0x76, 0x65, 0x4b, 0xb6, 0x4b, 0xd7, 0xdd, 0x3e, 0x31, 0x84, 0x07, 0x3a, 0xcf, 0x58, 0x4b, 0xfd, 0x33, 0xdb, 0xc3, 0x71, 0x2a, 0x89, 0xf2, 0x01, 0x38, 0x63, 0x12, 0xf7, 0x13, 0xe1, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4318 = { .name = "ecdsa_secp224r1_sha3_512_4318", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4318_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4318_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4318_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 435 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4319 for ECDSA, tcId is 436 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4319_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_512_4319_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4319_sig[] = { 0xc8, 0xd0, 0x6f, 0x03, 0x92, 0x01, 0xc0, 0x39, 0x95, 0x81, 0x31, 0x52, 0xa1, 0x9f, 0xe5, 0x2e, 0x3c, 0x38, 0xcf, 0x32, 0xb0, 0xf1, 0x3b, 0x8d, 0x8c, 0xec, 0x87, 0xba, 0x44, 0x93, 0x07, 0xf7, 0x92, 0x4f, 0xa2, 0x76, 0xac, 0x1c, 0xa8, 0x29, 0x73, 0xd5, 0xf5, 0x5f, 0xca, 0x7c, 0x66, 0x90, 0xc8, 0x58, 0x1d, 0xbb, 0xe5, 0x50, 0x01, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4319 = { .name = "ecdsa_secp224r1_sha3_512_4319", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4319_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4319_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4319_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 436 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4320 for ECDSA, tcId is 437 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4320_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha3_512_4320_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4320_sig[] = { 0xa3, 0x70, 0xd2, 0x77, 0xf2, 0x8e, 0x3c, 0x86, 0xc9, 0x36, 0x7e, 0x2c, 0x1d, 0x7a, 0xe0, 0x7e, 0x6b, 0x0d, 0xa3, 0x33, 0xda, 0x65, 0xef, 0x27, 0x80, 0xb3, 0x9e, 0x00, 0x13, 0x4f, 0x5f, 0x55, 0xe3, 0x75, 0x25, 0x43, 0xf9, 0x60, 0xe0, 0xe7, 0x25, 0x7c, 0xff, 0xe3, 0xec, 0x41, 0x7b, 0x9b, 0xc5, 0xda, 0x3b, 0x75, 0x57, 0xde, 0x44, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4320 = { .name = "ecdsa_secp224r1_sha3_512_4320", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4320_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4320_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4320_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 437 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4321 for ECDSA, tcId is 438 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4321_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4321_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4321_sig[] = { 0x23, 0x36, 0xaf, 0x69, 0xda, 0x82, 0x5f, 0xec, 0x35, 0x10, 0x68, 0x1c, 0x71, 0x6c, 0x9b, 0x50, 0x00, 0xb1, 0x7e, 0xf1, 0xe6, 0xdb, 0x73, 0x70, 0x78, 0x17, 0xb1, 0x45, 0x9e, 0xf5, 0x9c, 0x12, 0x0c, 0xe3, 0x9e, 0x4c, 0x83, 0xe3, 0x41, 0xaf, 0x71, 0xd4, 0xa9, 0x1a, 0x34, 0xc4, 0xbd, 0xd1, 0x2c, 0x92, 0xca, 0xf4, 0x40, 0x5b, 0x79, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4321 = { .name = "ecdsa_secp224r1_sha3_512_4321", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4321_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4321_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4321_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 438 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4322 for ECDSA, tcId is 439 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4322_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4322_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4322_sig[] = { 0x3f, 0xdb, 0x17, 0xcc, 0x44, 0xc9, 0xa0, 0xe9, 0x95, 0x29, 0x0a, 0x45, 0x8c, 0x2f, 0x64, 0xb8, 0x56, 0x55, 0x41, 0xcf, 0x56, 0x13, 0x95, 0x75, 0x21, 0x2e, 0xc1, 0x68, 0x5e, 0x51, 0xc7, 0x78, 0xb5, 0x60, 0xf3, 0xc6, 0x1b, 0xc3, 0xbf, 0x0e, 0xb5, 0x0f, 0xf8, 0xd3, 0x4d, 0xcb, 0x5e, 0xb8, 0x5c, 0xc2, 0x5b, 0x4a, 0xe6, 0xa7, 0x44, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4322 = { .name = "ecdsa_secp224r1_sha3_512_4322", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4322_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4322_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4322_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 439 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4323 for ECDSA, tcId is 440 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4323_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha3_512_4323_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4323_sig[] = { 0x1d, 0x98, 0x25, 0x3a, 0x63, 0xb8, 0x3f, 0x0e, 0x04, 0x2e, 0xd2, 0xc3, 0x42, 0xfd, 0x42, 0x17, 0xc2, 0x9f, 0x99, 0x0f, 0xcd, 0x5b, 0x5c, 0xbb, 0x9e, 0x51, 0x72, 0x1f, 0x49, 0xfc, 0xf5, 0xe4, 0xd6, 0x80, 0xcd, 0xd3, 0x64, 0x05, 0xc5, 0x14, 0x41, 0x4c, 0xc4, 0x7d, 0x97, 0x31, 0xa9, 0x7c, 0x4e, 0xdc, 0xba, 0xc7, 0xb7, 0xb2, 0x7f, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4323 = { .name = "ecdsa_secp224r1_sha3_512_4323", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4323_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4323_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4323_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 440 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4324 for ECDSA, tcId is 441 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4324_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4324_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4324_sig[] = { 0xa0, 0xf6, 0xaa, 0x5f, 0x60, 0x7f, 0x34, 0xe4, 0x9a, 0xf9, 0x76, 0xd8, 0xb0, 0xfb, 0x4f, 0x42, 0xda, 0x17, 0xfd, 0x1c, 0x2b, 0x03, 0xb8, 0x11, 0x9f, 0x7b, 0x83, 0x4b, 0xab, 0x53, 0x95, 0xc0, 0xfa, 0xa4, 0xee, 0x53, 0x10, 0x62, 0x5d, 0x50, 0x1d, 0x6a, 0x0a, 0xf9, 0x66, 0x44, 0x04, 0x0a, 0x33, 0x5f, 0xf8, 0xf4, 0x2b, 0xad, 0x65, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4324 = { .name = "ecdsa_secp224r1_sha3_512_4324", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4324_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4324_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4324_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 441 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4325 for ECDSA, tcId is 442 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4325_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4325_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4325_sig[] = { 0x9a, 0x0f, 0x67, 0x79, 0x26, 0x72, 0xdc, 0xba, 0x4b, 0x19, 0x89, 0x9b, 0xa2, 0xe3, 0x5a, 0xc0, 0xb5, 0x4c, 0xa0, 0x0c, 0xa4, 0x95, 0x72, 0x70, 0xe7, 0xa4, 0x3f, 0x8c, 0xa7, 0x02, 0x88, 0x78, 0x88, 0x51, 0x1d, 0xd1, 0x2e, 0x95, 0x0e, 0xdd, 0xd2, 0x39, 0xb4, 0xa3, 0xc4, 0x23, 0xda, 0x67, 0x3b, 0xba, 0x88, 0x20, 0x82, 0x95, 0x4a, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4325 = { .name = "ecdsa_secp224r1_sha3_512_4325", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4325_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4325_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4325_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 442 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4326 for ECDSA, tcId is 443 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4326_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha3_512_4326_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4326_sig[] = { 0x4d, 0x96, 0xe7, 0x43, 0xac, 0x0d, 0xbb, 0xf2, 0x41, 0x37, 0x25, 0xa1, 0x93, 0xc7, 0xe7, 0x09, 0x47, 0xb5, 0x95, 0x01, 0x60, 0x1e, 0x33, 0x76, 0x65, 0x02, 0x3e, 0xe2, 0x76, 0x4e, 0xf7, 0x1a, 0x18, 0x4f, 0x02, 0x44, 0xc0, 0xe1, 0xde, 0x1b, 0x72, 0x9b, 0x84, 0x21, 0xbe, 0x53, 0xbd, 0x0d, 0xed, 0x20, 0x15, 0xdc, 0x3d, 0x1f, 0x1a, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4326 = { .name = "ecdsa_secp224r1_sha3_512_4326", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4326_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4326_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4326_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 443 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4327 for ECDSA, tcId is 444 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4327_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_512_4327_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4327_sig[] = { 0x06, 0x0a, 0xc9, 0x61, 0xef, 0xf4, 0xe5, 0x05, 0x3f, 0x70, 0x45, 0xb9, 0xea, 0x1d, 0xb3, 0x38, 0xdd, 0x4b, 0x3a, 0x6c, 0xce, 0x33, 0x13, 0x86, 0xd3, 0x98, 0x86, 0x55, 0x0c, 0xfc, 0x61, 0xa4, 0x3a, 0x67, 0xd0, 0x66, 0x0f, 0xc3, 0x86, 0xef, 0xc1, 0xb6, 0x03, 0xb2, 0x8f, 0x65, 0x18, 0x85, 0xbf, 0xf5, 0x19, 0xc6, 0x32, 0xe1, 0x1a, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4327 = { .name = "ecdsa_secp224r1_sha3_512_4327", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4327_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4327_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4327_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 444 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4328 for ECDSA, tcId is 445 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4328_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_512_4328_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4328_sig[] = { 0x34, 0x15, 0xd0, 0x79, 0x0d, 0x9b, 0x9b, 0xa8, 0xff, 0xa8, 0x2f, 0x44, 0x7a, 0x4f, 0xed, 0x58, 0xcc, 0xe3, 0xeb, 0xba, 0xf4, 0x3b, 0x68, 0xc1, 0x62, 0x49, 0x5c, 0x85, 0x1e, 0x0e, 0x20, 0xac, 0x93, 0xd1, 0x9d, 0xbd, 0x9d, 0xdd, 0x63, 0x2e, 0x5c, 0x09, 0x10, 0x56, 0x0e, 0x94, 0x1a, 0xcf, 0x2b, 0xa5, 0xd7, 0xf3, 0xf2, 0xab, 0xe2, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4328 = { .name = "ecdsa_secp224r1_sha3_512_4328", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4328_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4328_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4328_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 445 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4329 for ECDSA, tcId is 446 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4329_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha3_512_4329_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4329_sig[] = { 0x20, 0x66, 0x59, 0x3b, 0xe1, 0x0d, 0xb4, 0x11, 0x1e, 0x03, 0x2c, 0xce, 0x79, 0x00, 0x4a, 0x2e, 0x66, 0xaf, 0xf1, 0x77, 0x4d, 0x59, 0x5a, 0xd4, 0xc3, 0x7b, 0x61, 0xd6, 0x2a, 0xad, 0xdf, 0xe2, 0xab, 0xcb, 0xb1, 0x37, 0xeb, 0xf8, 0x0d, 0x35, 0xc8, 0x6c, 0x7f, 0x81, 0xfc, 0x76, 0x06, 0x40, 0xee, 0xc3, 0x9e, 0xb3, 0xab, 0xe9, 0xee, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4329 = { .name = "ecdsa_secp224r1_sha3_512_4329", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4329_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4329_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4329_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 446 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4330 for ECDSA, tcId is 447 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4330_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_512_4330_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4330_sig[] = { 0xd5, 0x75, 0x1d, 0x00, 0xe6, 0x9e, 0x86, 0x30, 0x2d, 0x95, 0xf3, 0xa4, 0x85, 0xc3, 0x57, 0x86, 0x7b, 0x31, 0xc1, 0xf7, 0x26, 0x02, 0x1f, 0x83, 0x18, 0x33, 0x0e, 0xeb, 0x36, 0xe1, 0x5c, 0x9a, 0xb9, 0x15, 0x2c, 0xa2, 0x4b, 0xd3, 0x2e, 0xdb, 0xd0, 0xde, 0x3a, 0x10, 0xe7, 0xcc, 0xb2, 0x3b, 0x49, 0x3c, 0x38, 0x27, 0x00, 0x97, 0x98, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4330 = { .name = "ecdsa_secp224r1_sha3_512_4330", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4330_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4330_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4330_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 447 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4331 for ECDSA, tcId is 448 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4331_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_512_4331_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4331_sig[] = { 0x2d, 0x73, 0x87, 0x85, 0xb0, 0x42, 0x82, 0x26, 0x14, 0x57, 0xa9, 0xb1, 0x49, 0xa6, 0xc5, 0x1c, 0x4c, 0x61, 0x1f, 0x29, 0xe1, 0x41, 0x13, 0xbb, 0xd2, 0x62, 0x59, 0x81, 0x6c, 0xac, 0xb7, 0x67, 0x17, 0x51, 0x39, 0x4b, 0x93, 0x1a, 0xb8, 0x6a, 0x09, 0x63, 0x1e, 0xe2, 0x6c, 0xd0, 0x77, 0xc0, 0x1a, 0xf8, 0xc3, 0x49, 0x1b, 0x53, 0x59, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4331 = { .name = "ecdsa_secp224r1_sha3_512_4331", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4331_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4331_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4331_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 448 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4332 for ECDSA, tcId is 449 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4332_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha3_512_4332_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4332_sig[] = { 0x12, 0x1f, 0x59, 0x92, 0xff, 0x28, 0x92, 0xa8, 0xe0, 0xb3, 0x6c, 0xf4, 0xf3, 0x13, 0x31, 0xfd, 0xdc, 0xb9, 0xb5, 0x3d, 0x1a, 0xec, 0x2c, 0x7d, 0x9c, 0xd8, 0x87, 0xcb, 0x40, 0x6a, 0x21, 0x9f, 0x57, 0x2c, 0x58, 0xba, 0xab, 0x77, 0x9d, 0x8c, 0x38, 0x6f, 0xe8, 0xe8, 0x48, 0x57, 0x02, 0x4a, 0x21, 0xc0, 0x1f, 0x94, 0x95, 0x05, 0xa6, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4332 = { .name = "ecdsa_secp224r1_sha3_512_4332", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4332_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4332_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4332_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 449 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4333 for ECDSA, tcId is 450 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4333_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4333_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4333_sig[] = { 0xc2, 0x8e, 0x4e, 0x9a, 0x7f, 0x4a, 0x96, 0xf2, 0x2b, 0xab, 0x95, 0xa3, 0xf5, 0x64, 0x09, 0x9e, 0xc4, 0x6d, 0xda, 0x7e, 0xd0, 0xd1, 0x56, 0x8b, 0x34, 0x74, 0xfa, 0x1f, 0xa7, 0xd9, 0x3a, 0xd7, 0x05, 0xf4, 0x60, 0x4b, 0xf8, 0x2d, 0xc0, 0x29, 0xd2, 0x25, 0x79, 0x17, 0xd1, 0xeb, 0x7e, 0x09, 0xd4, 0x79, 0x96, 0x37, 0xbb, 0xc3, 0x16, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4333 = { .name = "ecdsa_secp224r1_sha3_512_4333", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4333_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4333_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4333_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 450 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4334 for ECDSA, tcId is 451 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4334_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4334_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4334_sig[] = { 0x8e, 0x5a, 0x9b, 0x74, 0xc3, 0x5d, 0x07, 0xb2, 0xdc, 0x78, 0x8a, 0x9b, 0xaf, 0x13, 0x76, 0x4b, 0xcc, 0xf2, 0x57, 0x0a, 0x07, 0xcb, 0x4b, 0x51, 0xe5, 0x2c, 0x36, 0xf4, 0x1e, 0xba, 0xa0, 0x56, 0x35, 0x36, 0xf7, 0xae, 0x63, 0x37, 0xe4, 0x46, 0xf9, 0xff, 0x99, 0x40, 0x90, 0x1b, 0x4b, 0x1e, 0x6c, 0x8a, 0x6a, 0xf2, 0x83, 0xd5, 0x6b, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4334 = { .name = "ecdsa_secp224r1_sha3_512_4334", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4334_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4334_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4334_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 451 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4335 for ECDSA, tcId is 452 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4335_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha3_512_4335_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4335_sig[] = { 0x97, 0x5b, 0x1e, 0xf8, 0x69, 0x96, 0xb5, 0x36, 0x27, 0x92, 0xd0, 0x44, 0x4e, 0x1c, 0xb8, 0xc6, 0x4f, 0xb5, 0x83, 0xb9, 0x14, 0x77, 0x85, 0x31, 0x62, 0xed, 0x79, 0x14, 0xab, 0xca, 0x04, 0x85, 0x9e, 0x3d, 0xf4, 0x30, 0x8d, 0x9d, 0x40, 0xb3, 0x37, 0x98, 0xc2, 0xf0, 0x90, 0x7d, 0xd0, 0x73, 0xee, 0x75, 0x87, 0x64, 0x6a, 0xcb, 0x2f, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4335 = { .name = "ecdsa_secp224r1_sha3_512_4335", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4335_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4335_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4335_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 452 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4336 for ECDSA, tcId is 453 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4336_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_512_4336_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4336_sig[] = { 0xdc, 0xfd, 0xa6, 0x77, 0x94, 0x87, 0x4a, 0x46, 0x13, 0xc1, 0x59, 0x76, 0x58, 0xdc, 0x52, 0xff, 0x85, 0x04, 0xde, 0x9d, 0xb4, 0x5a, 0x29, 0x09, 0x89, 0x40, 0x52, 0xfd, 0xeb, 0x8f, 0xbc, 0x6e, 0x67, 0xb2, 0x03, 0x09, 0xb9, 0xc0, 0xc1, 0x31, 0x5b, 0xd2, 0x88, 0x30, 0x29, 0xe0, 0x49, 0xb7, 0x70, 0x33, 0xfd, 0xc0, 0xbe, 0x6a, 0x0e, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4336 = { .name = "ecdsa_secp224r1_sha3_512_4336", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4336_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4336_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4336_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 453 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4337 for ECDSA, tcId is 454 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4337_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_512_4337_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4337_sig[] = { 0xad, 0x39, 0xc7, 0x64, 0x45, 0x2e, 0x94, 0xc3, 0x9d, 0xc6, 0x51, 0xbc, 0xa1, 0x49, 0xbf, 0xf4, 0xe3, 0x7b, 0x7e, 0x18, 0x56, 0xab, 0x3d, 0x40, 0x62, 0x5f, 0x95, 0x2e, 0x0f, 0x45, 0x4f, 0x1e, 0xd1, 0x91, 0xe8, 0xce, 0xdc, 0xb9, 0xc2, 0x90, 0x75, 0x8b, 0xd4, 0xb9, 0x74, 0x7a, 0x32, 0xb8, 0x14, 0x85, 0x2b, 0x1d, 0xa4, 0x19, 0xd1, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4337 = { .name = "ecdsa_secp224r1_sha3_512_4337", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4337_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4337_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4337_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 454 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4338 for ECDSA, tcId is 455 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4338_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha3_512_4338_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4338_sig[] = { 0x9f, 0xf6, 0x02, 0xd8, 0x03, 0x7e, 0xf1, 0x2b, 0x2f, 0x22, 0x85, 0x84, 0x11, 0xa9, 0x92, 0xa2, 0x1c, 0x55, 0x4f, 0xe1, 0x0e, 0x07, 0x56, 0x73, 0x38, 0xa0, 0x34, 0x12, 0x92, 0xd1, 0x74, 0xd8, 0x05, 0xbd, 0x0e, 0xae, 0x10, 0x93, 0xb2, 0x0c, 0x4b, 0x3a, 0x74, 0xf9, 0xe0, 0x9d, 0xab, 0x0a, 0x29, 0x2d, 0x41, 0x47, 0x17, 0x38, 0x74, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4338 = { .name = "ecdsa_secp224r1_sha3_512_4338", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4338_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4338_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4338_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 455 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4339 for ECDSA, tcId is 456 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4339_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_512_4339_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4339_sig[] = { 0x50, 0x41, 0x00, 0x6f, 0x1d, 0xd0, 0x6d, 0x3b, 0xeb, 0xca, 0xaf, 0x4d, 0x10, 0xe1, 0x37, 0x19, 0x98, 0xd8, 0x71, 0xc0, 0x4f, 0xe2, 0xf7, 0x30, 0xb4, 0x3e, 0xc0, 0x25, 0xcd, 0x2a, 0xc8, 0x34, 0x65, 0x80, 0x9b, 0x3c, 0x65, 0x81, 0x15, 0xd2, 0x86, 0xa8, 0xa0, 0x0f, 0x67, 0xdb, 0x8a, 0x10, 0x68, 0xf8, 0x4e, 0xca, 0xb4, 0x18, 0xbb, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4339 = { .name = "ecdsa_secp224r1_sha3_512_4339", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4339_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4339_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4339_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 456 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4340 for ECDSA, tcId is 457 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4340_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_512_4340_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4340_sig[] = { 0xee, 0x58, 0x7c, 0x28, 0xd2, 0x21, 0x0b, 0x0c, 0xff, 0x7d, 0x47, 0xac, 0x35, 0x09, 0xf5, 0x90, 0x05, 0x33, 0x20, 0xe5, 0x47, 0xd3, 0xe0, 0x34, 0xdf, 0x9c, 0x9a, 0x50, 0x21, 0x53, 0x74, 0xb4, 0xe8, 0x54, 0x1a, 0xe4, 0x97, 0x49, 0x74, 0xed, 0x75, 0x75, 0xd2, 0xc1, 0x55, 0x0d, 0x92, 0x47, 0x08, 0xe3, 0x03, 0xc0, 0xb7, 0x44, 0xee, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4340 = { .name = "ecdsa_secp224r1_sha3_512_4340", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4340_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4340_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4340_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 457 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4341 for ECDSA, tcId is 458 in file ecdsa_secp224r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp224r1_sha3_512_4341_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha3_512_4341_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha3_512_4341_sig[] = { 0xb6, 0x6a, 0x57, 0x9e, 0xa2, 0xdc, 0xa4, 0x0e, 0x3a, 0x48, 0x07, 0x45, 0x67, 0xaf, 0x7d, 0xaa, 0xd3, 0x4f, 0xd7, 0x84, 0xe3, 0xed, 0x09, 0x7d, 0x1b, 0x39, 0x56, 0x9c, 0x94, 0xa2, 0xb7, 0x2c, 0x71, 0x3c, 0x10, 0x91, 0x53, 0x86, 0x3e, 0xbb, 0x71, 0xa8, 0xcc, 0x80, 0xf5, 0x70, 0x94, 0xd8, 0x11, 0xc1, 0x3f, 0xa2, 0x69, 0xe1, 0x4a, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha3_512_4341 = { .name = "ecdsa_secp224r1_sha3_512_4341", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha3_512_4341_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha3_512_4341_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha3_512_4341_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 458 in file ecdsa_secp224r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) */ /* Test 4342 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4342_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4342_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbd, 0x28, 0x5e, 0xa1, 0x80, 0xb4, 0xc6, 0x15, 0x0c, 0xda, 0xfa, 0xfb, 0x0f, 0x6f, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4342 = { .name = "ecdsa_secp224r1_sha512_4342", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4342_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4342_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4342_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4343 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4343_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4343_sig[] = { 0x01, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x81, 0x73, 0x42, 0x8b, 0xc4, 0x8a, 0x2c, 0x3f, 0x03, 0x1c, 0xaa, 0xec, 0x3b, 0xbc, 0xe8, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4343 = { .name = "ecdsa_secp224r1_sha512_4343", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4343_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4343_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4343_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4344 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4344_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4344_sig[] = { 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7c, 0xba, 0x03, 0x35, 0xad, 0x56, 0x4f, 0xe8, 0xb7, 0x35, 0xdf, 0xcc, 0x7c, 0x97, 0x92, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4344 = { .name = "ecdsa_secp224r1_sha512_4344", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4344_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4344_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4344_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4345 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4345_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4345_sig[] = { 0x01, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4345 = { .name = "ecdsa_secp224r1_sha512_4345", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4345_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4345_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4345_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4346 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4346_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4346_sig[] = { 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7d, 0xa3, 0x60, 0x54, 0xf4, 0x66, 0x11, 0xd4, 0xda, 0x0c, 0x9a, 0x70, 0x20, 0x6d, 0x55, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4346 = { .name = "ecdsa_secp224r1_sha512_4346", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4346_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4346_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4346_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4347 for ECDSA, tcId is 6 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4347_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4347_sig[] = { 0x00, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x01, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0x04, 0xe7, 0x1f, 0xf1, 0x2b, 0xb6, 0x12, 0xad, 0x77, 0x8f, 0xbd, 0xa8, 0xe5, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4347 = { .name = "ecdsa_secp224r1_sha512_4347", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4347_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4347_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4347_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4348 for ECDSA, tcId is 7 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4348_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4348_sig[] = { 0x00, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x01, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4348 = { .name = "ecdsa_secp224r1_sha512_4348", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4348_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4348_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4348_sig, .siglen = 58, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4349 for ECDSA, tcId is 8 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4349_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4349_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbe, 0x11, 0xbb, 0xc0, 0xc7, 0xc4, 0x88, 0x01, 0x2f, 0xb1, 0xb5, 0x9e, 0xb3, 0x44, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4349 = { .name = "ecdsa_secp224r1_sha512_4349", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4349_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4349_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4349_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4350 for ECDSA, tcId is 9 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4350_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4350_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4350 = { .name = "ecdsa_secp224r1_sha512_4350", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4350_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4350_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4350_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4351 for ECDSA, tcId is 10 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4351_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4351_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4351 = { .name = "ecdsa_secp224r1_sha512_4351", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4351_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4351_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4351_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4352 for ECDSA, tcId is 11 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4352_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4352_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4352 = { .name = "ecdsa_secp224r1_sha512_4352", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4352_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4352_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4352_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4353 for ECDSA, tcId is 12 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4353_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4353_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4353 = { .name = "ecdsa_secp224r1_sha512_4353", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4353_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4353_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4353_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4354 for ECDSA, tcId is 13 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4354_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4354_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4354 = { .name = "ecdsa_secp224r1_sha512_4354", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4354_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4354_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4354_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4355 for ECDSA, tcId is 14 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4355_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4355_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4355 = { .name = "ecdsa_secp224r1_sha512_4355", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4355_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4355_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4355_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4356 for ECDSA, tcId is 15 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4356_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4356_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4356 = { .name = "ecdsa_secp224r1_sha512_4356", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4356_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4356_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4356_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4357 for ECDSA, tcId is 16 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4357_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4357_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4357 = { .name = "ecdsa_secp224r1_sha512_4357", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4357_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4357_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4357_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4358 for ECDSA, tcId is 17 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4358_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4358_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4358 = { .name = "ecdsa_secp224r1_sha512_4358", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4358_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4358_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4358_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4359 for ECDSA, tcId is 18 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4359_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4359_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4359 = { .name = "ecdsa_secp224r1_sha512_4359", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4359_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4359_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4359_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4360 for ECDSA, tcId is 19 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4360_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4360_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4360 = { .name = "ecdsa_secp224r1_sha512_4360", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4360_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4360_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4360_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4361 for ECDSA, tcId is 20 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4361_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4361_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4361 = { .name = "ecdsa_secp224r1_sha512_4361", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4361_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4361_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4361_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4362 for ECDSA, tcId is 21 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4362_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4362_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4362 = { .name = "ecdsa_secp224r1_sha512_4362", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4362_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4362_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4362_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4363 for ECDSA, tcId is 22 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4363_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4363_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4363 = { .name = "ecdsa_secp224r1_sha512_4363", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4363_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4363_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4363_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4364 for ECDSA, tcId is 23 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4364_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4364_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4364 = { .name = "ecdsa_secp224r1_sha512_4364", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4364_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4364_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4364_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4365 for ECDSA, tcId is 24 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4365_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4365_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4365 = { .name = "ecdsa_secp224r1_sha512_4365", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4365_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4365_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4365_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4366 for ECDSA, tcId is 25 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4366_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4366_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4366 = { .name = "ecdsa_secp224r1_sha512_4366", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4366_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4366_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4366_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4367 for ECDSA, tcId is 26 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4367_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4367_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4367 = { .name = "ecdsa_secp224r1_sha512_4367", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4367_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4367_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4367_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4368 for ECDSA, tcId is 27 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4368_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4368_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4368 = { .name = "ecdsa_secp224r1_sha512_4368", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4368_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4368_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4368_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4369 for ECDSA, tcId is 28 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4369_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4369_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4369 = { .name = "ecdsa_secp224r1_sha512_4369", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4369_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4369_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4369_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4370 for ECDSA, tcId is 29 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4370_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4370_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4370 = { .name = "ecdsa_secp224r1_sha512_4370", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4370_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4370_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4370_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4371 for ECDSA, tcId is 30 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4371_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4371_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4371 = { .name = "ecdsa_secp224r1_sha512_4371", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4371_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4371_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4371_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4372 for ECDSA, tcId is 31 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4372_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4372_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4372 = { .name = "ecdsa_secp224r1_sha512_4372", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4372_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4372_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4372_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4373 for ECDSA, tcId is 32 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4373_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4373_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4373 = { .name = "ecdsa_secp224r1_sha512_4373", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4373_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4373_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4373_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4374 for ECDSA, tcId is 33 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4374_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4374_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4374 = { .name = "ecdsa_secp224r1_sha512_4374", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4374_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4374_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4374_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4375 for ECDSA, tcId is 34 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4375_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4375_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4375 = { .name = "ecdsa_secp224r1_sha512_4375", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4375_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4375_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4375_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4376 for ECDSA, tcId is 35 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4376_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4376_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4376 = { .name = "ecdsa_secp224r1_sha512_4376", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4376_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4376_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4376_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4377 for ECDSA, tcId is 36 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4377_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4377_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4377 = { .name = "ecdsa_secp224r1_sha512_4377", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4377_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4377_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4377_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4378 for ECDSA, tcId is 37 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4378_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4378_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4378 = { .name = "ecdsa_secp224r1_sha512_4378", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4378_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4378_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4378_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4379 for ECDSA, tcId is 38 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4379_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4379_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4379 = { .name = "ecdsa_secp224r1_sha512_4379", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4379_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4379_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4379_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4380 for ECDSA, tcId is 39 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4380_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4380_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4380 = { .name = "ecdsa_secp224r1_sha512_4380", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4380_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4380_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4380_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4381 for ECDSA, tcId is 40 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4381_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4381_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4381 = { .name = "ecdsa_secp224r1_sha512_4381", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4381_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4381_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4381_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4382 for ECDSA, tcId is 41 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4382_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4382_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4382 = { .name = "ecdsa_secp224r1_sha512_4382", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4382_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4382_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4382_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4383 for ECDSA, tcId is 42 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4383_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4383_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4383 = { .name = "ecdsa_secp224r1_sha512_4383", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4383_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4383_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4383_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4384 for ECDSA, tcId is 43 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4384_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4384_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4384 = { .name = "ecdsa_secp224r1_sha512_4384", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4384_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4384_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4384_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4385 for ECDSA, tcId is 44 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4385_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4385_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4385 = { .name = "ecdsa_secp224r1_sha512_4385", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4385_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4385_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4385_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4386 for ECDSA, tcId is 45 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4386_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4386_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4386 = { .name = "ecdsa_secp224r1_sha512_4386", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4386_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4386_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4386_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4387 for ECDSA, tcId is 46 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4387_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4387_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4387 = { .name = "ecdsa_secp224r1_sha512_4387", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4387_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4387_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4387_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4388 for ECDSA, tcId is 47 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4388_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4388_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4388 = { .name = "ecdsa_secp224r1_sha512_4388", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4388_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4388_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4388_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4389 for ECDSA, tcId is 48 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4389_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4389_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4389 = { .name = "ecdsa_secp224r1_sha512_4389", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4389_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4389_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4389_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4390 for ECDSA, tcId is 49 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4390_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4390_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4390 = { .name = "ecdsa_secp224r1_sha512_4390", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4390_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4390_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4390_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4391 for ECDSA, tcId is 50 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4391_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4391_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4391 = { .name = "ecdsa_secp224r1_sha512_4391", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4391_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4391_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4391_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4392 for ECDSA, tcId is 51 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4392_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4392_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4392 = { .name = "ecdsa_secp224r1_sha512_4392", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4392_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4392_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4392_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4393 for ECDSA, tcId is 52 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4393_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4393_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4393 = { .name = "ecdsa_secp224r1_sha512_4393", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4393_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4393_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4393_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4394 for ECDSA, tcId is 53 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4394_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4394_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4394 = { .name = "ecdsa_secp224r1_sha512_4394", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4394_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4394_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4394_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4395 for ECDSA, tcId is 54 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4395_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4395_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4395 = { .name = "ecdsa_secp224r1_sha512_4395", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4395_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4395_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4395_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4396 for ECDSA, tcId is 55 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4396_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4396_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4396 = { .name = "ecdsa_secp224r1_sha512_4396", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4396_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4396_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4396_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4397 for ECDSA, tcId is 56 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4397_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4397_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4397 = { .name = "ecdsa_secp224r1_sha512_4397", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4397_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4397_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4397_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4398 for ECDSA, tcId is 57 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4398_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4398_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4398 = { .name = "ecdsa_secp224r1_sha512_4398", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4398_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4398_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4398_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4399 for ECDSA, tcId is 58 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4399_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4399_msg[] = { 0x36, 0x39, 0x31, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4399_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x22, 0x1a, 0x25, 0xeb, 0x9c, 0xc8, 0xdd, 0x66, 0xfd, 0xf1, 0x56, 0xb2, 0xf6, 0xab, 0x60, 0x1a, 0xb6, 0xd9, 0xc5, 0x09, 0x24, 0x7f, 0x8d, 0xe5, 0xd2, 0x67, 0x1a, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4399 = { .name = "ecdsa_secp224r1_sha512_4399", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4399_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4399_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha512_4399_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4400 for ECDSA, tcId is 59 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4400_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4400_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4400_sig[] = { 0x3b, 0x30, 0x08, 0xed, 0x59, 0x6b, 0x7f, 0xa2, 0x76, 0x49, 0x8d, 0xef, 0x40, 0xd9, 0x6b, 0x1e, 0xb2, 0xff, 0xb7, 0x31, 0xa4, 0x40, 0x50, 0xff, 0xb7, 0x32, 0xe4, 0xe6, 0x6d, 0xbb, 0x08, 0xc5, 0x6d, 0xb7, 0x37, 0xe9, 0x39, 0x2f, 0xf4, 0xf3, 0xa5, 0x4d, 0x8b, 0x80, 0x6d, 0x70, 0xaf, 0x22, 0x6e, 0xcf, 0x41, 0x3b, 0x34, 0x65, 0xde, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4400 = { .name = "ecdsa_secp224r1_sha512_4400", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4400_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4400_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4400_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4401 for ECDSA, tcId is 60 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4401_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4401_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4401_sig[] = { 0xd1, 0xfe, 0x26, 0x9c, 0x30, 0x61, 0xe4, 0xb9, 0x46, 0x04, 0xe8, 0xd6, 0x12, 0xd7, 0x08, 0x87, 0x06, 0x8c, 0xc7, 0xd5, 0x23, 0x2c, 0xd5, 0xa9, 0xb7, 0x29, 0x23, 0xa1, 0x3c, 0x1c, 0xbc, 0x02, 0x7d, 0x33, 0xfb, 0x24, 0x51, 0xd5, 0x2d, 0xce, 0x3a, 0x82, 0x8a, 0x8c, 0x7e, 0xcc, 0x49, 0x0a, 0x28, 0xa9, 0x4e, 0x5e, 0x5b, 0xb2, 0xc4, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4401 = { .name = "ecdsa_secp224r1_sha512_4401", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4401_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4401_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4401_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4402 for ECDSA, tcId is 61 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4402_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4402_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4402_sig[] = { 0x04, 0x58, 0x61, 0x34, 0xcc, 0x67, 0x92, 0x95, 0xdd, 0x93, 0x49, 0x93, 0x11, 0xc4, 0xa8, 0xaf, 0x37, 0xcb, 0x94, 0xda, 0xdb, 0xae, 0x18, 0xd8, 0xee, 0x27, 0x9b, 0x9b, 0xbf, 0x91, 0x70, 0xa1, 0xb6, 0x5b, 0x66, 0x56, 0x64, 0xcf, 0x56, 0x7d, 0x40, 0xa9, 0x95, 0xce, 0x25, 0x2a, 0x23, 0xd6, 0xa9, 0xf9, 0x62, 0xb0, 0x5e, 0x36, 0x44, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4402 = { .name = "ecdsa_secp224r1_sha512_4402", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4402_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4402_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4402_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4403 for ECDSA, tcId is 62 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4403_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4403_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4403_sig[] = { 0xc1, 0xf5, 0x10, 0x09, 0xb9, 0x35, 0xb4, 0x77, 0x33, 0x74, 0x36, 0x4e, 0xc3, 0xee, 0xd7, 0x2a, 0x24, 0xb7, 0x09, 0x26, 0xe0, 0x34, 0x9c, 0x77, 0x86, 0x2f, 0x34, 0x75, 0x46, 0xdf, 0x3d, 0x98, 0xf1, 0x04, 0xba, 0x66, 0x02, 0xf8, 0x04, 0x1a, 0x5b, 0xf5, 0x49, 0x5f, 0xb2, 0x40, 0xe1, 0x03, 0xd1, 0xbd, 0x17, 0xf2, 0xfa, 0x87, 0x89, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4403 = { .name = "ecdsa_secp224r1_sha512_4403", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4403_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4403_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4403_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4404 for ECDSA, tcId is 63 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4404_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4404_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4404_sig[] = { 0xe8, 0x22, 0x24, 0x28, 0x72, 0xf1, 0xec, 0xf3, 0x38, 0xa4, 0xf7, 0x73, 0xdf, 0x87, 0xb6, 0x7e, 0x9b, 0x21, 0xbb, 0x28, 0x3a, 0xca, 0xc7, 0xd6, 0x6b, 0x26, 0x55, 0x1e, 0x94, 0xd4, 0xe0, 0xfc, 0x3c, 0x63, 0x59, 0x99, 0x4a, 0x6e, 0xae, 0xdd, 0xdd, 0x15, 0x33, 0xf4, 0x90, 0xf7, 0x2e, 0xf8, 0x51, 0x39, 0xf8, 0xd3, 0xb3, 0x9c, 0xf0, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4404 = { .name = "ecdsa_secp224r1_sha512_4404", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4404_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4404_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4404_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4405 for ECDSA, tcId is 64 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4405_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4405_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4405_sig[] = { 0x7f, 0xd4, 0x55, 0x28, 0xeb, 0x7b, 0xfc, 0x37, 0x10, 0xe2, 0x73, 0xc4, 0x46, 0x8f, 0x0b, 0x50, 0xeb, 0xf9, 0x3f, 0x94, 0xcd, 0x0e, 0x7a, 0x60, 0x2a, 0x49, 0x29, 0xa6, 0x46, 0x61, 0x3d, 0xd1, 0xff, 0xd8, 0x5d, 0xf8, 0xd7, 0x1f, 0x34, 0x98, 0x00, 0x17, 0x21, 0xfd, 0xa4, 0x98, 0x2c, 0x27, 0xa1, 0xc2, 0x91, 0x35, 0x9b, 0x05, 0xb1, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4405 = { .name = "ecdsa_secp224r1_sha512_4405", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4405_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4405_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4405_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4406 for ECDSA, tcId is 65 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4406_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4406_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4406_sig[] = { 0x36, 0xd1, 0x37, 0xb6, 0x91, 0x71, 0xa4, 0x86, 0x93, 0x3b, 0x50, 0x13, 0x8d, 0x1d, 0xb1, 0x84, 0x27, 0x24, 0x76, 0x6a, 0xfd, 0x25, 0xc8, 0x5b, 0x00, 0x32, 0xda, 0xf5, 0x8e, 0x70, 0x0d, 0xe2, 0x1f, 0x2f, 0xc3, 0x50, 0xa3, 0x4c, 0x7c, 0xc1, 0x90, 0x54, 0xcf, 0x37, 0x1e, 0xca, 0xb6, 0xf7, 0x33, 0x1c, 0xce, 0xcf, 0x68, 0xfc, 0xa0, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4406 = { .name = "ecdsa_secp224r1_sha512_4406", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4406_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4406_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4406_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4407 for ECDSA, tcId is 66 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4407_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4407_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4407_sig[] = { 0xda, 0x3b, 0x43, 0x69, 0x08, 0xf5, 0xa8, 0x2f, 0x26, 0xbc, 0x17, 0xa8, 0x57, 0x7a, 0xd2, 0xa7, 0x82, 0x94, 0x6e, 0x3a, 0x75, 0x87, 0xb0, 0x1d, 0x25, 0x3b, 0x1d, 0xd0, 0xa6, 0x54, 0x4e, 0x38, 0xf2, 0x4e, 0x81, 0x17, 0x37, 0x0c, 0x04, 0x9b, 0x5d, 0x1f, 0x67, 0x12, 0xea, 0x14, 0x33, 0x7a, 0x94, 0x51, 0x12, 0x24, 0xdf, 0x44, 0x96, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4407 = { .name = "ecdsa_secp224r1_sha512_4407", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4407_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4407_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4407_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4408 for ECDSA, tcId is 67 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4408_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4408_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4408_sig[] = { 0x43, 0x14, 0xa2, 0xbd, 0x13, 0x9d, 0x47, 0xbe, 0x3d, 0x9f, 0xd9, 0xeb, 0xdd, 0x72, 0xa0, 0x6a, 0x22, 0x02, 0x19, 0xc7, 0x59, 0x6b, 0x94, 0x41, 0x78, 0xee, 0x6f, 0x5f, 0x0e, 0x6f, 0x1d, 0x2f, 0x57, 0xc6, 0x99, 0x65, 0x4e, 0x9c, 0x70, 0x5d, 0x7b, 0x8f, 0xa3, 0xc1, 0xcc, 0xb0, 0xf9, 0x39, 0xf6, 0x36, 0x8b, 0xed, 0x24, 0x6b, 0x2e, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4408 = { .name = "ecdsa_secp224r1_sha512_4408", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4408_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4408_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4408_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4409 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4409_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4409_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4409_sig[] = { 0x6a, 0x25, 0x64, 0x34, 0x64, 0x68, 0x26, 0x79, 0xd8, 0x49, 0x70, 0xc6, 0x03, 0x92, 0x7f, 0x4a, 0x8c, 0xa8, 0x3e, 0x7e, 0xf9, 0x71, 0x5d, 0xd1, 0xed, 0x84, 0xc2, 0x8f, 0x93, 0x2b, 0x78, 0xd1, 0x65, 0xc2, 0x25, 0xa5, 0x25, 0x3e, 0x62, 0x01, 0xc0, 0xb1, 0xde, 0xd0, 0x89, 0x8b, 0xa2, 0x4d, 0xe4, 0x4b, 0x23, 0x23, 0x3e, 0xb7, 0x80, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4409 = { .name = "ecdsa_secp224r1_sha512_4409", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4409_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4409_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4409_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4410 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4410_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4410_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4410_sig[] = { 0x47, 0x6a, 0xaa, 0x58, 0x67, 0x7d, 0x9e, 0x60, 0x47, 0x7c, 0xff, 0xd0, 0x26, 0xc4, 0x32, 0x48, 0xe2, 0xcf, 0x3c, 0xc2, 0x1e, 0x8f, 0xdc, 0xcb, 0x75, 0xce, 0xef, 0xad, 0x77, 0x99, 0xfc, 0x7a, 0xf8, 0xf9, 0xb9, 0x29, 0x20, 0x3f, 0xaf, 0x89, 0x9b, 0xb5, 0xca, 0x1a, 0xec, 0xf2, 0x49, 0x25, 0x55, 0x15, 0x72, 0x82, 0xdf, 0xde, 0x79, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4410 = { .name = "ecdsa_secp224r1_sha512_4410", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4410_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4410_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4410_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4411 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4411_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4411_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4411_sig[] = { 0x63, 0xa9, 0x86, 0x14, 0xa1, 0x42, 0x1e, 0x2e, 0xbb, 0x27, 0x8d, 0xe5, 0x3b, 0x61, 0x61, 0x8b, 0xaf, 0xc7, 0x57, 0x12, 0x26, 0x47, 0xaf, 0xfd, 0x35, 0x8c, 0x66, 0x7a, 0x8e, 0xdb, 0xa8, 0x06, 0xe0, 0xa7, 0xe4, 0x38, 0xca, 0x35, 0xf9, 0x84, 0x05, 0xa8, 0xad, 0x2d, 0x5c, 0x3e, 0x8c, 0xc2, 0xd5, 0xc4, 0x38, 0x42, 0x33, 0xae, 0xf0, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4411 = { .name = "ecdsa_secp224r1_sha512_4411", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4411_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4411_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4411_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4412 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4412_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4412_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4412_sig[] = { 0x88, 0x0b, 0x52, 0x38, 0xa0, 0x14, 0xf8, 0xb4, 0x46, 0x55, 0xb8, 0x3c, 0x17, 0x58, 0x80, 0xeb, 0x1e, 0x83, 0x07, 0x89, 0x9a, 0x82, 0x4e, 0xa3, 0xe0, 0x7d, 0xbd, 0x6d, 0xa4, 0x72, 0x4c, 0x86, 0x49, 0xfd, 0x74, 0xe5, 0xbc, 0x8d, 0x7f, 0xe6, 0xa9, 0x06, 0x7a, 0x13, 0x76, 0xfb, 0x8e, 0x08, 0xdb, 0xda, 0xed, 0x68, 0x98, 0x0b, 0x0f, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4412 = { .name = "ecdsa_secp224r1_sha512_4412", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4412_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4412_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4412_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4413 for ECDSA, tcId is 72 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4413_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4413_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4413_sig[] = { 0xf8, 0x74, 0x35, 0x88, 0x23, 0x46, 0x34, 0xdd, 0x98, 0x91, 0xf4, 0xf2, 0xf4, 0x0f, 0x4e, 0x46, 0xb7, 0x7f, 0x97, 0xb8, 0x2d, 0xc5, 0xdb, 0xe2, 0x34, 0xaa, 0x6b, 0x5d, 0x80, 0x65, 0x6e, 0x52, 0x62, 0xbc, 0x25, 0xe1, 0x58, 0xf3, 0xb7, 0x8f, 0x51, 0xae, 0x0d, 0x6a, 0x41, 0xcc, 0x8c, 0xca, 0x1a, 0xa4, 0x57, 0x22, 0x1b, 0x2e, 0xb7, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4413 = { .name = "ecdsa_secp224r1_sha512_4413", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4413_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4413_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4413_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4414 for ECDSA, tcId is 73 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4414_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4414_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4414_sig[] = { 0x2a, 0x23, 0x57, 0xe3, 0xd8, 0xfe, 0x34, 0x43, 0x45, 0x82, 0xbe, 0x4d, 0xab, 0xd5, 0x8b, 0x77, 0xb3, 0x88, 0xd1, 0xd5, 0x2a, 0xdc, 0xc6, 0x64, 0xf4, 0x5d, 0xec, 0xe4, 0x94, 0xbe, 0x3a, 0x36, 0x9b, 0x7c, 0x27, 0x88, 0xdf, 0x45, 0x87, 0xec, 0x5b, 0xd4, 0x16, 0x3c, 0x4c, 0xbc, 0x40, 0xb7, 0x7d, 0xe1, 0xa8, 0x5e, 0x8b, 0xcf, 0xb2, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4414 = { .name = "ecdsa_secp224r1_sha512_4414", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4414_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4414_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4414_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4415 for ECDSA, tcId is 74 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4415_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4415_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4415_sig[] = { 0xb6, 0xb0, 0xc0, 0xab, 0xa6, 0xc6, 0x11, 0x30, 0x0e, 0xca, 0xd8, 0x81, 0x62, 0x42, 0xc4, 0x15, 0xf1, 0x83, 0xa2, 0xbd, 0x4d, 0x46, 0xcd, 0x77, 0x69, 0x03, 0x3d, 0x9b, 0x77, 0x50, 0xb2, 0x4b, 0xe0, 0x2f, 0x22, 0xdc, 0x0b, 0x65, 0x6f, 0xe4, 0xaf, 0x37, 0x74, 0x13, 0xf9, 0x45, 0x3d, 0xff, 0x99, 0x22, 0x69, 0x15, 0xdb, 0xb6, 0xe0, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4415 = { .name = "ecdsa_secp224r1_sha512_4415", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4415_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4415_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4415_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4416 for ECDSA, tcId is 75 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4416_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4416_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4416_sig[] = { 0xa5, 0xc1, 0xa7, 0x5c, 0x27, 0x79, 0xf3, 0xeb, 0x83, 0xa6, 0x5e, 0x29, 0x59, 0x27, 0xcc, 0xe4, 0x28, 0x8e, 0x9d, 0x5c, 0x21, 0x32, 0xa4, 0xc7, 0xca, 0x92, 0x52, 0x6e, 0x10, 0xfe, 0x30, 0xf0, 0xbe, 0x33, 0xa7, 0x85, 0x38, 0x51, 0x37, 0xb5, 0x7d, 0x80, 0x61, 0x40, 0xa4, 0x02, 0xb9, 0xbd, 0x3c, 0x1d, 0xf1, 0xb5, 0x7d, 0xe6, 0xda, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4416 = { .name = "ecdsa_secp224r1_sha512_4416", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4416_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4416_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4416_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4417 for ECDSA, tcId is 76 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4417_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4417_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4417_sig[] = { 0xb9, 0x2b, 0x55, 0x21, 0xd1, 0xa7, 0xab, 0xe7, 0x7e, 0x85, 0x24, 0xdb, 0xd3, 0x00, 0x11, 0x21, 0xcf, 0x83, 0xc0, 0x80, 0x17, 0xe3, 0x91, 0x7b, 0xc5, 0x8b, 0x5d, 0x1c, 0x22, 0x4b, 0x11, 0x37, 0x79, 0x01, 0x7f, 0x6a, 0x52, 0x21, 0x71, 0xed, 0xf9, 0x30, 0xf1, 0xb5, 0xd4, 0xf5, 0xe7, 0xde, 0xdc, 0x6d, 0x2d, 0x51, 0x4f, 0xd7, 0x88, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4417 = { .name = "ecdsa_secp224r1_sha512_4417", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4417_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4417_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4417_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4418 for ECDSA, tcId is 77 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4418_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4418_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4418_sig[] = { 0xeb, 0xd3, 0xec, 0xf3, 0xaa, 0x64, 0xcd, 0xcd, 0xd1, 0x71, 0x58, 0x5a, 0x14, 0x1a, 0x4a, 0x67, 0x3a, 0x8d, 0x5d, 0xe0, 0xca, 0x08, 0x7d, 0xfc, 0xdf, 0x62, 0x43, 0x2e, 0xe0, 0xf1, 0xa0, 0xf7, 0xb8, 0xf5, 0xac, 0x4a, 0x42, 0x63, 0x2f, 0x87, 0x15, 0x6a, 0xd1, 0x09, 0x40, 0x79, 0x39, 0x3b, 0x03, 0xf2, 0x05, 0x1a, 0x9f, 0xd6, 0x02, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4418 = { .name = "ecdsa_secp224r1_sha512_4418", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4418_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4418_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4418_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4419 for ECDSA, tcId is 78 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4419_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4419_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4419_sig[] = { 0x6c, 0x38, 0x54, 0x29, 0x7e, 0x1f, 0x26, 0x7b, 0x64, 0xa2, 0x8e, 0x0c, 0xd6, 0x14, 0x8e, 0x0f, 0xad, 0xcf, 0x85, 0xbc, 0x8d, 0x5c, 0x23, 0x94, 0x75, 0x43, 0xbc, 0xb8, 0xaa, 0x05, 0x94, 0xee, 0x11, 0x31, 0x2f, 0x5d, 0x47, 0x67, 0xd2, 0x96, 0xe5, 0xca, 0x83, 0xdf, 0x68, 0x07, 0x28, 0x11, 0xf8, 0x1a, 0x8d, 0x27, 0xe1, 0x78, 0xca, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4419 = { .name = "ecdsa_secp224r1_sha512_4419", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4419_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4419_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4419_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4420 for ECDSA, tcId is 79 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4420_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4420_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4420_sig[] = { 0x78, 0x5a, 0xc8, 0xc9, 0x56, 0xd7, 0x79, 0x7a, 0xe6, 0x74, 0x98, 0x77, 0x5b, 0x3c, 0x44, 0x6c, 0x41, 0x73, 0x5e, 0xb1, 0x5f, 0x34, 0x30, 0xb4, 0x9f, 0x6a, 0x09, 0xf2, 0x57, 0x10, 0x87, 0x9a, 0xb8, 0x39, 0x94, 0xe8, 0x09, 0xc8, 0xd2, 0xcb, 0xd6, 0xf2, 0xac, 0x5c, 0x20, 0x5b, 0x4b, 0x8d, 0x62, 0x26, 0xe9, 0x8b, 0xe0, 0x3e, 0x79, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4420 = { .name = "ecdsa_secp224r1_sha512_4420", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4420_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4420_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4420_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4421 for ECDSA, tcId is 80 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4421_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4421_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4421_sig[] = { 0xf1, 0xf3, 0xd0, 0x16, 0x69, 0x31, 0x25, 0xba, 0x73, 0x98, 0x1c, 0x8f, 0x9a, 0x17, 0x48, 0xe5, 0xdc, 0xe1, 0xd9, 0x63, 0x43, 0x55, 0xf2, 0x6f, 0xa5, 0x36, 0x19, 0x0e, 0xb5, 0x74, 0xe9, 0x7d, 0xef, 0x60, 0xdc, 0xd0, 0xe9, 0x17, 0x71, 0x06, 0x48, 0x37, 0x91, 0xb2, 0xed, 0xb4, 0xab, 0x03, 0x42, 0xb9, 0xf5, 0xeb, 0xb9, 0x57, 0xd5, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4421 = { .name = "ecdsa_secp224r1_sha512_4421", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4421_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4421_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4421_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4422 for ECDSA, tcId is 81 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4422_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4422_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4422_sig[] = { 0xe6, 0x4f, 0x33, 0x71, 0x52, 0x2c, 0xb1, 0xa5, 0xf0, 0xd1, 0x51, 0x1b, 0x15, 0x2b, 0x20, 0xe0, 0x1d, 0xec, 0xa0, 0xb3, 0x28, 0x47, 0x86, 0x85, 0x3c, 0xac, 0x27, 0x9a, 0xc9, 0xa2, 0xe5, 0xf4, 0xff, 0xde, 0x22, 0xb9, 0xd4, 0xed, 0x01, 0x79, 0xce, 0x74, 0xff, 0xf4, 0x08, 0xea, 0x91, 0x8d, 0xda, 0x76, 0x85, 0xc7, 0x98, 0x0a, 0xe6, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4422 = { .name = "ecdsa_secp224r1_sha512_4422", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4422_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4422_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4422_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4423 for ECDSA, tcId is 82 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4423_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4423_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4423_sig[] = { 0x1f, 0x99, 0xdd, 0x6e, 0xf7, 0x2f, 0xee, 0xed, 0xa6, 0xc1, 0x23, 0xba, 0xa4, 0xfa, 0xbb, 0x12, 0x6d, 0x7d, 0xed, 0xb6, 0x41, 0x30, 0xfa, 0xe3, 0xf4, 0x23, 0x07, 0x97, 0xe4, 0x41, 0xec, 0x51, 0xdc, 0xa6, 0x27, 0x1b, 0x04, 0x3e, 0x95, 0x75, 0x3c, 0x40, 0x43, 0xd7, 0xcb, 0x4e, 0x76, 0xfd, 0xc1, 0x3d, 0x6a, 0xea, 0x45, 0xfb, 0xf2, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4423 = { .name = "ecdsa_secp224r1_sha512_4423", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4423_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4423_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4423_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4424 for ECDSA, tcId is 83 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4424_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4424_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4424_sig[] = { 0x86, 0x37, 0xa0, 0x96, 0x27, 0xc5, 0x27, 0x66, 0xbf, 0x96, 0xf0, 0xb6, 0xce, 0xa6, 0xf2, 0xac, 0x3e, 0xb3, 0x03, 0x00, 0x1c, 0x5f, 0x6f, 0xe6, 0xd6, 0x28, 0xe4, 0xba, 0x10, 0xb6, 0x6c, 0x59, 0x94, 0x55, 0xd4, 0x00, 0x77, 0xbb, 0x86, 0x5e, 0xd4, 0x3e, 0x2c, 0x2c, 0xc4, 0x03, 0x47, 0x3b, 0xaa, 0x6d, 0x63, 0xb1, 0x6b, 0xe4, 0x8c, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4424 = { .name = "ecdsa_secp224r1_sha512_4424", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4424_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4424_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4424_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4425 for ECDSA, tcId is 84 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4425_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4425_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4425_sig[] = { 0x52, 0xa0, 0x10, 0xa2, 0x3e, 0x4f, 0x9e, 0xbb, 0x45, 0x9b, 0xbe, 0x9f, 0x30, 0x57, 0xe6, 0xc1, 0x97, 0x61, 0xfb, 0x99, 0xd2, 0x5c, 0x9b, 0x16, 0xb8, 0xf0, 0x07, 0xd8, 0x52, 0x6d, 0xc1, 0xf3, 0x44, 0x44, 0xde, 0x00, 0x44, 0x7b, 0xa2, 0x3c, 0x76, 0x95, 0x0f, 0x2c, 0x15, 0x95, 0x79, 0xd5, 0x48, 0xb6, 0x33, 0x5d, 0x12, 0x7e, 0xa3, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4425 = { .name = "ecdsa_secp224r1_sha512_4425", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4425_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4425_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4425_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4426 for ECDSA, tcId is 85 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4426_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4426_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4426_sig[] = { 0xfc, 0x49, 0xca, 0xaa, 0xda, 0x52, 0x8f, 0x33, 0x57, 0xe5, 0xa2, 0x64, 0xf2, 0xe7, 0xf9, 0x70, 0xca, 0x1b, 0x15, 0xca, 0x5f, 0xee, 0x28, 0x74, 0x1d, 0x12, 0x02, 0xac, 0x17, 0x5e, 0x88, 0x4d, 0x10, 0xd0, 0xbf, 0xd2, 0x0b, 0x39, 0x31, 0x1c, 0xe2, 0xc5, 0x30, 0x83, 0xda, 0x16, 0x7d, 0x1f, 0x3d, 0xfe, 0xb9, 0x90, 0xe5, 0x9e, 0xd6, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4426 = { .name = "ecdsa_secp224r1_sha512_4426", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4426_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4426_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4426_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4427 for ECDSA, tcId is 86 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4427_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4427_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4427_sig[] = { 0xd9, 0x5d, 0x53, 0x9a, 0x85, 0xc9, 0xed, 0xac, 0xd4, 0xe0, 0x2e, 0xde, 0x27, 0xb0, 0xe0, 0xb7, 0x37, 0x09, 0x96, 0x12, 0xd1, 0x66, 0xc6, 0x37, 0xc8, 0x3a, 0x9f, 0x34, 0x59, 0x93, 0x6a, 0x2b, 0x90, 0xb7, 0xf3, 0xf3, 0xda, 0x83, 0xf6, 0x4d, 0xec, 0x8e, 0x34, 0x7a, 0x3b, 0xfa, 0x57, 0xba, 0xad, 0xf9, 0xac, 0xea, 0x18, 0xc0, 0x71, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4427 = { .name = "ecdsa_secp224r1_sha512_4427", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4427_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4427_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4427_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4428 for ECDSA, tcId is 87 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4428_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4428_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4428_sig[] = { 0x18, 0x95, 0xe6, 0x55, 0x93, 0xd7, 0x1e, 0x56, 0x35, 0xcc, 0xe0, 0x22, 0xdd, 0xa1, 0x9b, 0xd1, 0x55, 0xbb, 0x9a, 0x7f, 0x2e, 0x30, 0x7e, 0x5c, 0xe9, 0x12, 0x7a, 0xde, 0x12, 0x1b, 0x48, 0x7c, 0x32, 0x0c, 0x54, 0x4d, 0xcd, 0xd4, 0x71, 0xd4, 0x6f, 0xcd, 0xe2, 0xce, 0x5d, 0xc9, 0xd1, 0x7f, 0xda, 0x70, 0x54, 0x4c, 0x4e, 0xab, 0x50, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4428 = { .name = "ecdsa_secp224r1_sha512_4428", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4428_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4428_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4428_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4429 for ECDSA, tcId is 88 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4429_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4429_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4429_sig[] = { 0xb5, 0xf4, 0xc8, 0x5b, 0x13, 0xb5, 0x1a, 0x5d, 0xa8, 0x1a, 0x23, 0x6f, 0x11, 0x05, 0x93, 0x7f, 0x3d, 0x98, 0x85, 0x6d, 0x2a, 0xeb, 0x57, 0x10, 0x1b, 0x6b, 0x49, 0x9c, 0x3b, 0xe7, 0x4a, 0xe7, 0x70, 0xfa, 0x64, 0x67, 0xf7, 0x6a, 0x74, 0x2e, 0xb9, 0xe5, 0x04, 0xa8, 0x15, 0xa4, 0xa6, 0x0e, 0x74, 0xb3, 0x8b, 0xca, 0xa8, 0x9f, 0x9b, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4429 = { .name = "ecdsa_secp224r1_sha512_4429", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4429_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4429_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4429_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4430 for ECDSA, tcId is 89 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4430_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4430_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4430_sig[] = { 0x07, 0xa5, 0x71, 0x97, 0x66, 0x7a, 0x0c, 0x40, 0x42, 0x3d, 0x48, 0x11, 0xff, 0x96, 0x38, 0x4c, 0x93, 0x30, 0x46, 0x7e, 0x8a, 0x28, 0xea, 0xa4, 0xc0, 0xd5, 0x19, 0xf4, 0x01, 0x10, 0x62, 0xc8, 0x69, 0x44, 0x94, 0xba, 0xae, 0xd2, 0x4f, 0xf6, 0x10, 0xe1, 0xe4, 0x22, 0x7e, 0xfb, 0x59, 0xa1, 0x63, 0xc3, 0x3f, 0xaf, 0xd4, 0x01, 0x00, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4430 = { .name = "ecdsa_secp224r1_sha512_4430", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4430_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4430_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4430_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4431 for ECDSA, tcId is 90 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4431_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4431_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4431_sig[] = { 0x00, 0x7f, 0x71, 0x86, 0x15, 0xba, 0x1d, 0x0a, 0x9d, 0x27, 0xa8, 0xc5, 0xa6, 0x78, 0xa6, 0x22, 0x5f, 0xfe, 0x12, 0x33, 0xed, 0x8b, 0x41, 0x7c, 0x93, 0x43, 0xb3, 0x10, 0xcf, 0x6a, 0x87, 0xe4, 0x49, 0x67, 0x25, 0xc6, 0xa2, 0x61, 0x2f, 0x40, 0x34, 0xdd, 0xf4, 0xb3, 0x1c, 0x74, 0x35, 0xe2, 0xfc, 0x3a, 0x16, 0x3e, 0x92, 0xd4, 0x63, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4431 = { .name = "ecdsa_secp224r1_sha512_4431", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4431_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4431_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4431_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4432 for ECDSA, tcId is 91 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4432_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4432_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4432_sig[] = { 0xba, 0x8f, 0x95, 0xa4, 0x36, 0x3c, 0x49, 0x3a, 0x9f, 0x78, 0xbb, 0x61, 0xdb, 0xef, 0xaa, 0x95, 0x87, 0xd0, 0x28, 0xbb, 0x83, 0x44, 0x42, 0x0d, 0xe2, 0xb0, 0xcf, 0x21, 0xb3, 0x79, 0x8c, 0x2d, 0x6e, 0x27, 0xa2, 0x59, 0x1c, 0x2e, 0xdc, 0x18, 0x32, 0x0b, 0x78, 0xbf, 0x11, 0xdf, 0x19, 0x4b, 0x11, 0xb3, 0xfb, 0x49, 0x8c, 0x59, 0x52, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4432 = { .name = "ecdsa_secp224r1_sha512_4432", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4432_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4432_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4432_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4433 for ECDSA, tcId is 92 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4433_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4433_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4433_sig[] = { 0x59, 0x6b, 0x74, 0x07, 0x78, 0x01, 0xdb, 0x2e, 0x88, 0x9d, 0x3b, 0x2a, 0xaa, 0x39, 0x90, 0xfe, 0x18, 0x0a, 0xbc, 0x15, 0x2d, 0x48, 0x52, 0x83, 0x85, 0xca, 0x95, 0x5d, 0x38, 0xbf, 0xfd, 0x41, 0x6f, 0x77, 0x98, 0x43, 0xfa, 0xd3, 0x89, 0x75, 0x00, 0x03, 0xeb, 0x07, 0x08, 0x11, 0x2a, 0x48, 0x34, 0xc5, 0x54, 0xf4, 0x76, 0xa3, 0xe0, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4433 = { .name = "ecdsa_secp224r1_sha512_4433", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4433_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4433_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4433_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4434 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4434_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4434_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4434_sig[] = { 0x85, 0x47, 0xf6, 0x29, 0x67, 0x52, 0x3a, 0x06, 0xc9, 0x69, 0x0e, 0x5f, 0xf6, 0x6c, 0x3f, 0x22, 0x54, 0xcd, 0xa2, 0x8f, 0x09, 0xff, 0xcc, 0xc2, 0x22, 0x43, 0x3d, 0x39, 0x3d, 0x9e, 0xbf, 0x66, 0x4e, 0xe5, 0x51, 0xbb, 0x7b, 0x33, 0x15, 0x7d, 0x6c, 0x6c, 0x5f, 0xd4, 0x56, 0xbd, 0xa3, 0xd4, 0xae, 0x46, 0x02, 0x15, 0xec, 0x1a, 0x5f, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4434 = { .name = "ecdsa_secp224r1_sha512_4434", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4434_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4434_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4434_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4435 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4435_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4435_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4435_sig[] = { 0x90, 0xee, 0x3f, 0xab, 0x9c, 0x6c, 0xe3, 0x73, 0xa1, 0xb3, 0x5f, 0xc1, 0x35, 0xfe, 0x87, 0x82, 0x80, 0xee, 0x25, 0xe5, 0x8a, 0x4b, 0xd7, 0x52, 0x9e, 0x91, 0xb4, 0xf0, 0x64, 0x51, 0xe7, 0x52, 0x65, 0x05, 0xb4, 0x4e, 0x88, 0x47, 0x2b, 0x46, 0xed, 0xa3, 0xfd, 0x26, 0x79, 0x82, 0x4d, 0xcd, 0xfc, 0x44, 0x5e, 0x67, 0xf3, 0x5e, 0xa3, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4435 = { .name = "ecdsa_secp224r1_sha512_4435", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4435_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4435_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4435_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4436 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4436_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4436_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4436_sig[] = { 0x0a, 0x53, 0x05, 0x30, 0xb6, 0xa9, 0x23, 0x8d, 0x2d, 0x1a, 0x3c, 0xf4, 0x68, 0x98, 0x6c, 0x87, 0xf3, 0xb2, 0x08, 0xf6, 0x1e, 0xa0, 0x48, 0x6d, 0x53, 0x14, 0x0c, 0x17, 0x5f, 0x02, 0x7a, 0x73, 0xf3, 0x1a, 0x5c, 0xc2, 0xbe, 0xe8, 0x1f, 0xf0, 0x01, 0x94, 0x77, 0xc5, 0x42, 0xfd, 0x78, 0x2e, 0xcd, 0xe0, 0xe5, 0x51, 0xfc, 0xd3, 0x7e, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4436 = { .name = "ecdsa_secp224r1_sha512_4436", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4436_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4436_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4436_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4437 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4437_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4437_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4437_sig[] = { 0xbe, 0xab, 0x4a, 0xbd, 0x23, 0xdf, 0x5e, 0x2a, 0xcf, 0xff, 0x07, 0xc8, 0x2e, 0x24, 0x5d, 0xfa, 0x7d, 0x58, 0x7d, 0x02, 0x38, 0xc2, 0xc9, 0xab, 0x9c, 0x88, 0xa9, 0x6a, 0x98, 0xc6, 0x50, 0x76, 0x35, 0x53, 0x68, 0x40, 0xed, 0xf6, 0x04, 0xf9, 0xba, 0xae, 0x64, 0x08, 0xce, 0x4d, 0x3f, 0xbe, 0xe6, 0x94, 0xdb, 0x3a, 0xbd, 0x82, 0x50, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4437 = { .name = "ecdsa_secp224r1_sha512_4437", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4437_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4437_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4437_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4438 for ECDSA, tcId is 97 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4438_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4438_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4438_sig[] = { 0x3e, 0xc8, 0xc3, 0x63, 0x35, 0xcb, 0x98, 0xfa, 0x07, 0xb9, 0x83, 0xc3, 0x5b, 0x7f, 0xc2, 0x56, 0xf4, 0x4a, 0x5a, 0xa1, 0x92, 0xd6, 0x08, 0x75, 0x95, 0x14, 0x5a, 0x15, 0xc3, 0x2b, 0x7a, 0x47, 0xac, 0x62, 0x71, 0xf4, 0x59, 0x35, 0x62, 0xbb, 0xbf, 0x91, 0xf9, 0xe0, 0x73, 0x95, 0xa5, 0xe4, 0xd4, 0x69, 0x70, 0x49, 0x5c, 0xf2, 0x9f, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4438 = { .name = "ecdsa_secp224r1_sha512_4438", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4438_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4438_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4438_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4439 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4439_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4439_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4439_sig[] = { 0xbd, 0x63, 0x5a, 0x74, 0x1f, 0x1f, 0x2a, 0x1d, 0x9a, 0xc1, 0x69, 0x8b, 0xaf, 0x5c, 0xfc, 0x49, 0x1d, 0x5e, 0x3f, 0x8e, 0x15, 0xf1, 0xca, 0xcb, 0xe4, 0xff, 0xe4, 0xdc, 0x4b, 0xb6, 0x06, 0xcf, 0x7c, 0xc1, 0x1d, 0x0d, 0x7d, 0x96, 0xb8, 0x39, 0x66, 0xf4, 0x22, 0x76, 0x09, 0x5c, 0xcc, 0x44, 0x58, 0x82, 0xed, 0x5a, 0xfd, 0xda, 0xbf, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4439 = { .name = "ecdsa_secp224r1_sha512_4439", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4439_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4439_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4439_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4440 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4440_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4440_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4440_sig[] = { 0x81, 0x2c, 0x08, 0x62, 0x2c, 0x0a, 0x09, 0xd9, 0x49, 0xb7, 0x62, 0x85, 0x85, 0xc4, 0xf4, 0xf2, 0xdb, 0x4c, 0x55, 0x91, 0xb5, 0xda, 0x14, 0x8f, 0xf4, 0x6d, 0x5c, 0xd4, 0x21, 0x04, 0xf9, 0xbc, 0x9d, 0x00, 0x79, 0xac, 0xb3, 0x07, 0x7d, 0x2d, 0xb5, 0x8f, 0x38, 0x81, 0x19, 0x50, 0x0c, 0x53, 0x22, 0xcb, 0x9b, 0x53, 0x89, 0xb5, 0xc5, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4440 = { .name = "ecdsa_secp224r1_sha512_4440", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4440_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4440_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4440_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4441 for ECDSA, tcId is 100 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4441_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4441_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4441_sig[] = { 0xfa, 0x4e, 0x1c, 0x8b, 0x00, 0x06, 0xf2, 0x69, 0xc8, 0x55, 0xeb, 0x49, 0x5f, 0xa3, 0xa1, 0x13, 0xf6, 0x43, 0xfa, 0x8b, 0x1f, 0xef, 0x2b, 0x08, 0xab, 0x14, 0x59, 0x94, 0xfe, 0x85, 0xb8, 0xb5, 0x22, 0xc7, 0xf9, 0xe8, 0x94, 0x3e, 0x0f, 0x62, 0x64, 0x33, 0x95, 0xbd, 0x1f, 0xcd, 0xab, 0xc8, 0x92, 0xc3, 0x15, 0xd1, 0x08, 0xb7, 0x5f, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4441 = { .name = "ecdsa_secp224r1_sha512_4441", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4441_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4441_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4441_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4442 for ECDSA, tcId is 101 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4442_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4442_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4442_sig[] = { 0x8c, 0x1d, 0x9b, 0x79, 0x11, 0xba, 0xcb, 0x6b, 0x4a, 0x09, 0x58, 0x26, 0x48, 0xb9, 0x92, 0xd4, 0x6a, 0x18, 0x32, 0xeb, 0x00, 0x61, 0x78, 0xc0, 0xc7, 0x7f, 0xcb, 0x10, 0xbe, 0xcb, 0xe1, 0x2b, 0x99, 0xf2, 0x43, 0x76, 0x6d, 0xa5, 0xbd, 0xad, 0x07, 0x46, 0x1b, 0x92, 0x26, 0xa8, 0x29, 0x86, 0x72, 0xb4, 0xf1, 0xad, 0xb3, 0x53, 0x57, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4442 = { .name = "ecdsa_secp224r1_sha512_4442", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4442_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4442_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4442_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4443 for ECDSA, tcId is 102 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4443_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4443_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4443_sig[] = { 0x78, 0x85, 0x0a, 0x40, 0x53, 0x0a, 0xa2, 0x58, 0xe4, 0x78, 0xe7, 0xc5, 0x47, 0xd3, 0xa5, 0xe4, 0x94, 0x4d, 0x35, 0x24, 0xf1, 0x67, 0x64, 0x43, 0xe4, 0xdf, 0xb3, 0x7d, 0x68, 0x70, 0x58, 0xe1, 0xca, 0x47, 0x8f, 0x52, 0xa3, 0x0c, 0x9a, 0x3f, 0x8e, 0x2e, 0xea, 0x9d, 0x8c, 0x40, 0x59, 0x9c, 0xd4, 0x7e, 0xf6, 0x6b, 0x94, 0x30, 0xd1, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4443 = { .name = "ecdsa_secp224r1_sha512_4443", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4443_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4443_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4443_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4444 for ECDSA, tcId is 103 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4444_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4444_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4444_sig[] = { 0x06, 0x6e, 0x72, 0x68, 0xa6, 0xab, 0xef, 0xe1, 0xb4, 0xb9, 0x16, 0xca, 0x51, 0xc3, 0xe9, 0x58, 0xe4, 0x0d, 0xc7, 0x8c, 0x36, 0x61, 0x31, 0x3e, 0x0e, 0xd2, 0xe7, 0x7d, 0x64, 0x04, 0xd8, 0xa3, 0x32, 0xa8, 0x37, 0xf2, 0xab, 0x6b, 0xd1, 0x3e, 0x3e, 0xe4, 0xaa, 0xd1, 0xe9, 0x30, 0x7d, 0x44, 0x9e, 0x7f, 0x9b, 0x7d, 0x63, 0x32, 0x03, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4444 = { .name = "ecdsa_secp224r1_sha512_4444", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4444_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4444_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4444_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4445 for ECDSA, tcId is 104 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4445_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4445_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4445_sig[] = { 0x4e, 0xca, 0x73, 0x70, 0x9a, 0x67, 0xc4, 0x16, 0x03, 0xca, 0x5a, 0xf4, 0x94, 0xc8, 0x13, 0x24, 0x83, 0xff, 0xc2, 0xe0, 0xbf, 0x17, 0x1b, 0x52, 0xde, 0x5a, 0x5e, 0x81, 0x2c, 0x79, 0x13, 0x7c, 0xd2, 0xad, 0xd3, 0xce, 0x3a, 0x76, 0x79, 0x22, 0x70, 0xe3, 0x47, 0x22, 0x1a, 0x3a, 0xd7, 0x86, 0xea, 0xfc, 0x26, 0x82, 0xb3, 0x9b, 0xcf, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4445 = { .name = "ecdsa_secp224r1_sha512_4445", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4445_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4445_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4445_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4446 for ECDSA, tcId is 105 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4446_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4446_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4446_sig[] = { 0x01, 0x78, 0x51, 0x2f, 0x88, 0x44, 0x98, 0x42, 0x22, 0x39, 0x3a, 0x63, 0x26, 0x3e, 0x0a, 0x00, 0x96, 0x01, 0x86, 0x9e, 0x63, 0x2f, 0x07, 0xeb, 0x74, 0x70, 0xaa, 0x05, 0xe3, 0x26, 0x57, 0xcd, 0xed, 0x11, 0x22, 0xce, 0xe0, 0xa4, 0xf6, 0x6f, 0xf5, 0x0a, 0x32, 0xda, 0x1f, 0x05, 0xde, 0x4c, 0x5e, 0x21, 0x7a, 0xcd, 0xf5, 0xeb, 0x6f, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4446 = { .name = "ecdsa_secp224r1_sha512_4446", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4446_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4446_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4446_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4447 for ECDSA, tcId is 106 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4447_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4447_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4447_sig[] = { 0xe2, 0xc7, 0xbf, 0x12, 0x22, 0xca, 0x23, 0xa5, 0x64, 0x92, 0x87, 0x3c, 0x2d, 0x3f, 0xa6, 0xc7, 0x03, 0x0c, 0xc1, 0x66, 0xd6, 0x93, 0x14, 0x2d, 0xce, 0xa2, 0x72, 0xb6, 0x71, 0x5a, 0x4c, 0x82, 0xfd, 0xa4, 0x40, 0x42, 0x17, 0xde, 0xa6, 0xc0, 0xbb, 0xf3, 0xac, 0x24, 0xf8, 0xfa, 0xa2, 0xb4, 0x35, 0xfb, 0xc6, 0xd5, 0x1a, 0x32, 0xc4, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4447 = { .name = "ecdsa_secp224r1_sha512_4447", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4447_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4447_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4447_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4448 for ECDSA, tcId is 107 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4448_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4448_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4448_sig[] = { 0x49, 0x88, 0x6a, 0x8c, 0x26, 0xc9, 0x1d, 0x64, 0x9c, 0xbf, 0xec, 0xda, 0x6c, 0xe8, 0xd1, 0x44, 0x1e, 0x76, 0x4c, 0x66, 0xf5, 0xd8, 0x1d, 0xce, 0xed, 0xb6, 0xc5, 0xba, 0x43, 0x70, 0xd8, 0xbc, 0xd4, 0xf0, 0x52, 0xfa, 0xc9, 0x49, 0x1d, 0x62, 0x85, 0x0b, 0x6a, 0x6a, 0x85, 0xd5, 0xac, 0xc4, 0x4d, 0x92, 0x48, 0xc3, 0xdf, 0xf3, 0x0b, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4448 = { .name = "ecdsa_secp224r1_sha512_4448", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4448_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4448_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4448_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4449 for ECDSA, tcId is 108 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4449_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4449_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4449_sig[] = { 0xe1, 0xae, 0x22, 0x5e, 0x1a, 0xec, 0xa4, 0x07, 0x47, 0xff, 0x3e, 0x7a, 0xd1, 0xf7, 0x5e, 0xb9, 0xbc, 0x90, 0xd6, 0x37, 0x16, 0x0a, 0x7f, 0x58, 0xce, 0x12, 0xe5, 0x91, 0xb9, 0x7c, 0xbe, 0xa3, 0xa9, 0x32, 0x31, 0x10, 0x31, 0x57, 0x60, 0xb7, 0xe2, 0xed, 0xe4, 0x96, 0x51, 0x4b, 0x30, 0xf0, 0xee, 0xc5, 0x21, 0xff, 0xeb, 0x07, 0xa6, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4449 = { .name = "ecdsa_secp224r1_sha512_4449", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4449_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4449_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4449_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4450 for ECDSA, tcId is 109 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4450_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4450_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4450_sig[] = { 0x8a, 0x93, 0xb8, 0x7b, 0x46, 0x51, 0x25, 0x44, 0xfb, 0x9a, 0x7a, 0xf5, 0xc4, 0x1e, 0x3a, 0xa7, 0x2e, 0x40, 0x23, 0x5e, 0xf8, 0x7c, 0xcb, 0x71, 0x08, 0xda, 0xae, 0x48, 0x15, 0x7d, 0xb6, 0x17, 0xac, 0x69, 0x7d, 0xf4, 0x07, 0xaf, 0x7a, 0x11, 0x62, 0x6c, 0x52, 0xa1, 0xaf, 0x7e, 0xf1, 0x89, 0x51, 0x4d, 0xa3, 0x99, 0x18, 0xc4, 0x30, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4450 = { .name = "ecdsa_secp224r1_sha512_4450", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4450_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4450_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4450_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4451 for ECDSA, tcId is 110 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4451_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4451_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4451_sig[] = { 0xeb, 0xde, 0xbe, 0x63, 0x88, 0xb9, 0xf4, 0x60, 0xfc, 0xe6, 0xd8, 0x4f, 0xaa, 0x67, 0xde, 0xd1, 0xe8, 0x64, 0xef, 0x09, 0xe7, 0x7e, 0xa3, 0xce, 0x58, 0xa5, 0xde, 0xff, 0xbe, 0x50, 0x52, 0x03, 0x3e, 0xb4, 0x03, 0x80, 0xc2, 0xb1, 0x32, 0x5f, 0xe9, 0x7d, 0xcc, 0x55, 0x84, 0x1e, 0x14, 0x7a, 0x89, 0xf0, 0x2a, 0x29, 0x6b, 0x45, 0x05, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4451 = { .name = "ecdsa_secp224r1_sha512_4451", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4451_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4451_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4451_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4452 for ECDSA, tcId is 111 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4452_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4452_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4452_sig[] = { 0xe8, 0x5d, 0x06, 0x67, 0x97, 0x2d, 0x00, 0x3c, 0x82, 0xaf, 0xb9, 0xe1, 0x8b, 0x70, 0x23, 0x57, 0x11, 0x9b, 0x4f, 0x38, 0x40, 0x1a, 0x5e, 0xbd, 0xfc, 0xbe, 0xa8, 0x8c, 0xeb, 0x7b, 0x3e, 0x52, 0x68, 0xa4, 0xce, 0x62, 0x80, 0xf7, 0x2d, 0x7e, 0x9a, 0x3d, 0x74, 0xe5, 0xca, 0xc5, 0x0b, 0x1c, 0x3a, 0x52, 0x96, 0xcd, 0xb5, 0xa4, 0x9d, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4452 = { .name = "ecdsa_secp224r1_sha512_4452", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4452_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4452_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4452_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4453 for ECDSA, tcId is 112 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4453_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4453_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4453_sig[] = { 0x3d, 0x24, 0x35, 0x81, 0xc0, 0x87, 0x4f, 0xd4, 0xeb, 0x4d, 0x80, 0xf8, 0x96, 0xc5, 0x06, 0x74, 0x29, 0xad, 0x45, 0x53, 0x14, 0x88, 0x19, 0x51, 0xab, 0x5e, 0xc6, 0xe3, 0x0e, 0xc4, 0x7a, 0xba, 0x08, 0xcc, 0xba, 0x88, 0xc1, 0xa6, 0xdd, 0xc2, 0x89, 0xf5, 0x95, 0xbd, 0xa0, 0x8d, 0xc2, 0xdd, 0x34, 0xd1, 0x2d, 0xce, 0xfb, 0x68, 0x09, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4453 = { .name = "ecdsa_secp224r1_sha512_4453", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4453_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4453_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4453_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4454 for ECDSA, tcId is 113 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4454_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4454_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4454_sig[] = { 0x75, 0xc9, 0x66, 0xbb, 0xdc, 0xef, 0x91, 0x57, 0xd4, 0x7a, 0x13, 0x42, 0x31, 0x22, 0x9f, 0x9f, 0x5e, 0xe8, 0xce, 0x45, 0x87, 0x75, 0xfc, 0x74, 0x7d, 0x45, 0x09, 0xbd, 0xe3, 0x44, 0xfa, 0x71, 0x6e, 0x20, 0x88, 0xd9, 0x5a, 0x55, 0xd0, 0x2a, 0x97, 0x8a, 0x41, 0x6d, 0xa1, 0x0f, 0x22, 0xa5, 0xcc, 0xcf, 0x35, 0xa2, 0x86, 0x32, 0x27, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4454 = { .name = "ecdsa_secp224r1_sha512_4454", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4454_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4454_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4454_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4455 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4455_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4455_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4455_sig[] = { 0xcf, 0xdf, 0x59, 0x9e, 0x98, 0x6d, 0x77, 0x0b, 0x73, 0x78, 0x4d, 0x97, 0x14, 0x9f, 0x99, 0x45, 0xfd, 0x16, 0xd2, 0x2c, 0x30, 0x2b, 0xb7, 0x96, 0x15, 0x6e, 0x7f, 0xb4, 0xc6, 0x40, 0x97, 0x85, 0x04, 0x7b, 0x00, 0x83, 0xf0, 0x08, 0x77, 0x1b, 0x40, 0xdb, 0x85, 0x02, 0x58, 0x32, 0x08, 0xb6, 0x1c, 0x89, 0x84, 0x67, 0x1a, 0xcb, 0x09, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4455 = { .name = "ecdsa_secp224r1_sha512_4455", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4455_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4455_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4455_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4456 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4456_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4456_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4456_sig[] = { 0xc5, 0x3c, 0x4a, 0xee, 0xc8, 0xf2, 0xe7, 0xa5, 0xcc, 0x0e, 0x88, 0x5a, 0x60, 0x31, 0xaa, 0x1a, 0x6c, 0x1b, 0x7b, 0x7f, 0xec, 0x83, 0xb5, 0x08, 0x4c, 0xbe, 0x29, 0x1f, 0xb0, 0xe6, 0xd1, 0x0a, 0x8f, 0xd8, 0x6f, 0x95, 0x8c, 0x3b, 0x0f, 0x46, 0x62, 0xed, 0x8c, 0xa0, 0xd6, 0xea, 0xdb, 0xc8, 0x92, 0xaa, 0xc4, 0x20, 0x0f, 0xcf, 0x83, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4456 = { .name = "ecdsa_secp224r1_sha512_4456", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4456_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4456_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4456_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4457 for ECDSA, tcId is 116 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4457_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4457_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4457_sig[] = { 0x23, 0x86, 0x55, 0x0d, 0x6e, 0x75, 0x35, 0x0b, 0xcc, 0x32, 0x50, 0x7b, 0xfc, 0x9b, 0xeb, 0x9c, 0x26, 0xd7, 0x2f, 0xf8, 0x2f, 0x67, 0x1c, 0x1f, 0x52, 0x82, 0xe9, 0x8b, 0xa5, 0x5b, 0x8d, 0xe8, 0x08, 0xc4, 0x35, 0x9f, 0xb5, 0x29, 0xb8, 0x0a, 0x80, 0xd9, 0xfc, 0x6e, 0xdd, 0xb5, 0xce, 0x08, 0x08, 0x2c, 0x3b, 0x67, 0x7c, 0x68, 0x99, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4457 = { .name = "ecdsa_secp224r1_sha512_4457", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4457_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4457_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4457_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4458 for ECDSA, tcId is 117 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4458_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4458_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4458_sig[] = { 0x1f, 0xbd, 0x19, 0x2d, 0x95, 0x5c, 0xe0, 0x2b, 0x64, 0xa3, 0xbe, 0x5b, 0xb2, 0x1b, 0xef, 0x22, 0xb5, 0x3a, 0x6c, 0x6f, 0x95, 0x76, 0xd8, 0xf8, 0x89, 0xb0, 0x9e, 0x4e, 0xf5, 0xa9, 0xb6, 0x73, 0xa4, 0xee, 0x5a, 0xab, 0xf1, 0xca, 0x8e, 0x82, 0x89, 0xf2, 0x5b, 0x62, 0xa3, 0xe0, 0x8b, 0x95, 0x6f, 0x74, 0x18, 0xc0, 0x3e, 0x2d, 0x30, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4458 = { .name = "ecdsa_secp224r1_sha512_4458", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4458_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4458_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4458_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4459 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4459_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4459_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4459_sig[] = { 0xb8, 0x0f, 0xfb, 0xa4, 0x51, 0xdb, 0x9f, 0xc2, 0x19, 0x4e, 0x45, 0x0b, 0xdd, 0x43, 0xbc, 0x0f, 0x53, 0xa7, 0xd0, 0xf4, 0xa7, 0x89, 0x00, 0xc0, 0x9f, 0xb8, 0xd9, 0xbc, 0x01, 0x24, 0xee, 0xea, 0xb9, 0x03, 0x5b, 0x6c, 0x84, 0x59, 0x59, 0xe7, 0x0b, 0x04, 0xd1, 0xe1, 0x87, 0xd5, 0x54, 0x80, 0x7d, 0x67, 0x51, 0xaf, 0xab, 0xcc, 0x18, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4459 = { .name = "ecdsa_secp224r1_sha512_4459", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4459_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4459_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4459_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4460 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4460_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4460_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4460_sig[] = { 0x18, 0x7f, 0xb0, 0x26, 0xad, 0xe3, 0xad, 0x16, 0xdd, 0x4b, 0x28, 0x13, 0xe8, 0xeb, 0xda, 0x43, 0x3c, 0xb6, 0xcc, 0x3a, 0xf1, 0x61, 0x5b, 0xed, 0xf4, 0x86, 0xa9, 0xe2, 0x6f, 0xbe, 0xe5, 0x3f, 0xa8, 0x84, 0xd2, 0x96, 0xf3, 0x4f, 0x77, 0x19, 0xf7, 0x49, 0x19, 0x43, 0x4d, 0x1b, 0x70, 0x90, 0xc4, 0x85, 0xee, 0xed, 0x2f, 0xb8, 0xfd, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4460 = { .name = "ecdsa_secp224r1_sha512_4460", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4460_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4460_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4460_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4461 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4461_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4461_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4461_sig[] = { 0xe5, 0x98, 0xa1, 0x6f, 0xe1, 0x2d, 0xa7, 0x9e, 0x98, 0x14, 0xf6, 0x98, 0x5c, 0x9a, 0x93, 0x34, 0x01, 0x0f, 0x28, 0x7d, 0xc9, 0xe3, 0x8d, 0xe8, 0x57, 0xca, 0x5f, 0xc0, 0x19, 0xe0, 0xed, 0x54, 0xf0, 0xe0, 0x8a, 0xd0, 0x91, 0xa1, 0x63, 0xb4, 0xc7, 0xb8, 0x6d, 0x06, 0x34, 0xda, 0x2c, 0x86, 0xa7, 0xa8, 0x99, 0x1f, 0x5d, 0x87, 0x06, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4461 = { .name = "ecdsa_secp224r1_sha512_4461", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4461_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4461_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4461_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4462 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4462_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4462_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4462_sig[] = { 0xb3, 0x1a, 0x10, 0x48, 0x0e, 0x39, 0x7c, 0x8a, 0xa4, 0x6f, 0x52, 0xa0, 0xf2, 0xfb, 0x5c, 0x22, 0xeb, 0xc0, 0x53, 0x4f, 0xba, 0x15, 0x67, 0x18, 0xb5, 0x0c, 0xf6, 0xea, 0x60, 0x20, 0x04, 0xdf, 0x4b, 0x47, 0xa2, 0x06, 0x51, 0x30, 0xca, 0x3b, 0x05, 0xf1, 0xeb, 0x02, 0xd0, 0xb3, 0x7b, 0x79, 0xb0, 0x4b, 0x1e, 0xb7, 0x99, 0x40, 0x83, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4462 = { .name = "ecdsa_secp224r1_sha512_4462", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4462_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4462_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4462_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4463 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4463_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4463_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4463_sig[] = { 0xbc, 0x47, 0xe2, 0x42, 0xd1, 0x9d, 0xcc, 0x63, 0x21, 0x91, 0x39, 0x80, 0xd7, 0x39, 0x23, 0xe4, 0x30, 0xbc, 0x66, 0x23, 0xd2, 0x19, 0x52, 0x9d, 0x58, 0x66, 0x19, 0xb6, 0x81, 0x39, 0x7d, 0xd2, 0xf5, 0x28, 0x11, 0xb5, 0x34, 0xed, 0x75, 0x4a, 0x93, 0x7d, 0x90, 0x4f, 0x04, 0xa7, 0xde, 0x27, 0x8f, 0xa3, 0xbc, 0x89, 0x26, 0xde, 0x69, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4463 = { .name = "ecdsa_secp224r1_sha512_4463", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4463_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4463_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4463_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4464 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4464_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4464_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4464_sig[] = { 0x5b, 0xe0, 0xe0, 0xdf, 0xb2, 0x6b, 0x1c, 0xaa, 0x88, 0xf8, 0x66, 0x50, 0x4a, 0xa8, 0xe7, 0x6f, 0x03, 0x5a, 0x82, 0xab, 0xe0, 0x00, 0x28, 0xd9, 0x62, 0xbc, 0xfa, 0xfa, 0x3c, 0x3c, 0x1d, 0xf0, 0x60, 0x26, 0x12, 0x34, 0x71, 0xbe, 0xd3, 0x24, 0xca, 0x79, 0xc5, 0x1b, 0x28, 0xb3, 0xd1, 0x0b, 0x1c, 0xe8, 0x77, 0xce, 0xf2, 0x1b, 0x85, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4464 = { .name = "ecdsa_secp224r1_sha512_4464", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4464_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4464_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4464_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4465 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4465_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4465_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4465_sig[] = { 0xfe, 0x79, 0xd0, 0xcf, 0xe4, 0x55, 0x72, 0x47, 0x92, 0xcb, 0x5a, 0xb0, 0x58, 0x0a, 0xd4, 0xf2, 0x91, 0x8c, 0x14, 0x03, 0xec, 0x12, 0xf0, 0xbd, 0xd2, 0xce, 0x65, 0x28, 0xf1, 0x35, 0x7c, 0xd4, 0xaf, 0xc4, 0x02, 0x99, 0x4a, 0xb8, 0x68, 0xb0, 0x16, 0x3f, 0x41, 0x70, 0x1e, 0x0f, 0x00, 0xe5, 0x61, 0xfd, 0xd9, 0x7e, 0x0d, 0xb6, 0xf7, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4465 = { .name = "ecdsa_secp224r1_sha512_4465", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4465_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4465_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4465_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4466 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4466_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4466_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4466_sig[] = { 0x18, 0x58, 0xc5, 0xd8, 0x57, 0x12, 0x4c, 0xd7, 0x03, 0xe7, 0xc2, 0xf5, 0xe9, 0x9d, 0x50, 0x25, 0xd6, 0xd9, 0x79, 0x53, 0x9c, 0x6f, 0x50, 0xb1, 0xd0, 0x0f, 0xbd, 0x34, 0xd9, 0x4a, 0x5a, 0xdb, 0x6d, 0x9c, 0x50, 0x01, 0x16, 0x26, 0x20, 0x41, 0x55, 0x41, 0xd4, 0x93, 0x34, 0xfb, 0x92, 0x9b, 0xc8, 0x6a, 0x35, 0x0c, 0xa4, 0x59, 0x11, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4466 = { .name = "ecdsa_secp224r1_sha512_4466", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4466_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4466_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4466_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4467 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4467_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4467_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4467_sig[] = { 0xe6, 0xb2, 0xec, 0x96, 0x7c, 0xfa, 0x25, 0xf5, 0x72, 0x34, 0xb9, 0xef, 0x1d, 0x87, 0xc5, 0x94, 0x55, 0x02, 0xcb, 0xbd, 0x58, 0x31, 0xc8, 0x62, 0xf0, 0x07, 0x74, 0xd1, 0xca, 0xea, 0x26, 0x36, 0x8b, 0xff, 0xc8, 0xe5, 0x62, 0xb2, 0xbd, 0x03, 0xaa, 0x6c, 0x9d, 0xc4, 0x1c, 0x52, 0x96, 0x59, 0xfe, 0xfe, 0x65, 0x97, 0xfc, 0xe9, 0xcd, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4467 = { .name = "ecdsa_secp224r1_sha512_4467", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4467_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4467_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4467_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4468 for ECDSA, tcId is 127 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4468_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4468_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4468_sig[] = { 0xa5, 0x9b, 0x43, 0x8b, 0x24, 0x72, 0x07, 0x4a, 0x93, 0xa2, 0x89, 0xb3, 0x3f, 0x5b, 0x13, 0xe6, 0x04, 0x97, 0x7d, 0xd3, 0xab, 0x4d, 0x74, 0x4d, 0x08, 0xe1, 0x06, 0x1b, 0x69, 0x95, 0x74, 0xa1, 0x7d, 0xc8, 0xc7, 0x29, 0x8c, 0x93, 0x21, 0xca, 0x78, 0x55, 0x2e, 0x51, 0x28, 0xea, 0x80, 0x1d, 0x05, 0x6f, 0x38, 0x7b, 0xa4, 0x2f, 0x7a, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4468 = { .name = "ecdsa_secp224r1_sha512_4468", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4468_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4468_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4468_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4469 for ECDSA, tcId is 128 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4469_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4469_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4469_sig[] = { 0x74, 0x84, 0x81, 0x70, 0x9c, 0x68, 0x82, 0xc4, 0xa1, 0x30, 0x19, 0x38, 0x34, 0xa5, 0x7f, 0x4b, 0xc7, 0x14, 0x90, 0x62, 0x11, 0xec, 0x6c, 0xc1, 0x2c, 0x40, 0x0d, 0xff, 0xee, 0xc6, 0xc9, 0xd5, 0xa0, 0x67, 0x86, 0xf8, 0x21, 0xa8, 0x11, 0x7e, 0xec, 0x3d, 0xc0, 0x25, 0xed, 0x3a, 0xc7, 0x4e, 0x39, 0xe9, 0x8a, 0x16, 0xa4, 0xaa, 0x28, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4469 = { .name = "ecdsa_secp224r1_sha512_4469", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4469_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4469_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4469_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4470 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4470_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4470_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4470_sig[] = { 0xbc, 0x89, 0x91, 0xb5, 0x06, 0x99, 0x74, 0x03, 0xe1, 0x23, 0x13, 0x6a, 0x9c, 0x14, 0x0a, 0x43, 0x36, 0x36, 0x47, 0x33, 0xb0, 0x81, 0x5f, 0x40, 0xd1, 0xdb, 0xd5, 0xfe, 0x81, 0x95, 0x03, 0xea, 0x3b, 0x4c, 0x07, 0xfc, 0x15, 0x7f, 0x94, 0x8f, 0x69, 0x49, 0x70, 0x5d, 0x56, 0x0a, 0x88, 0x1f, 0xc1, 0xc6, 0xaf, 0x4b, 0x73, 0x91, 0x76, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4470 = { .name = "ecdsa_secp224r1_sha512_4470", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4470_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4470_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4470_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4471 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4471_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4471_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4471_sig[] = { 0x1c, 0xae, 0xce, 0x75, 0xc8, 0xe3, 0x1b, 0xb0, 0xc5, 0xcc, 0xeb, 0x08, 0x42, 0xf2, 0x36, 0x83, 0xb8, 0x55, 0x7a, 0x97, 0x03, 0x65, 0x74, 0xea, 0x88, 0xce, 0xea, 0xbd, 0x64, 0x5a, 0xd3, 0x27, 0x6a, 0xae, 0xe2, 0x2b, 0x69, 0x36, 0x47, 0xf0, 0x0d, 0xce, 0x5f, 0x91, 0xa0, 0x3b, 0x67, 0x8b, 0x78, 0x9b, 0x66, 0x7c, 0xd3, 0xb8, 0xe7, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4471 = { .name = "ecdsa_secp224r1_sha512_4471", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4471_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4471_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4471_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4472 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4472_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4472_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4472_sig[] = { 0x3a, 0x7d, 0x58, 0x20, 0x68, 0xaa, 0xec, 0xab, 0xa9, 0x45, 0x20, 0x3b, 0xc4, 0x45, 0xb3, 0x31, 0x2e, 0x5c, 0xb4, 0x08, 0x86, 0x52, 0x29, 0x87, 0xac, 0xed, 0x68, 0xd0, 0x39, 0xb3, 0xc6, 0x12, 0xb6, 0x74, 0x3a, 0x13, 0xbb, 0x2f, 0xfb, 0x83, 0x51, 0x4d, 0x69, 0x0c, 0xfc, 0xb9, 0xa7, 0x05, 0x5e, 0x3a, 0x99, 0x3c, 0xb0, 0x86, 0x39, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4472 = { .name = "ecdsa_secp224r1_sha512_4472", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4472_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4472_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4472_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4473 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4473_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4473_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4473_sig[] = { 0xf7, 0x73, 0xc4, 0x9f, 0xd0, 0x64, 0x57, 0x16, 0xd1, 0x6e, 0x55, 0x9e, 0x22, 0xc3, 0x91, 0x01, 0xdf, 0x26, 0x6c, 0xdf, 0xa7, 0xcb, 0x61, 0xce, 0x46, 0xf8, 0x52, 0x80, 0xdf, 0x61, 0x09, 0xfd, 0x77, 0xa2, 0x41, 0x03, 0x1c, 0xf0, 0x3b, 0x37, 0x6e, 0x00, 0x1d, 0x8a, 0x3c, 0xd2, 0xa6, 0xb6, 0x46, 0xed, 0xbf, 0x9e, 0x57, 0x81, 0x33, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4473 = { .name = "ecdsa_secp224r1_sha512_4473", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4473_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4473_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4473_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4474 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4474_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4474_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4474_sig[] = { 0x79, 0xcf, 0x89, 0x3f, 0x66, 0xf7, 0xfa, 0xa5, 0xca, 0x08, 0x55, 0x3e, 0xa0, 0x34, 0x56, 0x10, 0x7e, 0x7b, 0xb3, 0x91, 0xa5, 0xe5, 0x12, 0x60, 0xce, 0xda, 0xea, 0x84, 0x32, 0xe8, 0xe3, 0x50, 0x94, 0x68, 0xda, 0x72, 0x16, 0xc5, 0x99, 0x75, 0xd4, 0xf3, 0xd5, 0x49, 0x38, 0x48, 0xa0, 0x3f, 0x86, 0x4b, 0x23, 0x32, 0x04, 0x4e, 0x68, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4474 = { .name = "ecdsa_secp224r1_sha512_4474", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4474_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4474_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4474_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4475 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4475_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4475_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4475_sig[] = { 0x02, 0x5e, 0xcd, 0x1a, 0x7a, 0xb7, 0x65, 0xfb, 0xfd, 0x25, 0xa6, 0xd7, 0xcd, 0x3c, 0x46, 0x1e, 0x17, 0xf4, 0x65, 0xe6, 0x95, 0x8b, 0xce, 0x9f, 0x49, 0x2b, 0x7a, 0x5a, 0xa1, 0xca, 0x95, 0x03, 0x86, 0x03, 0xd3, 0x02, 0x76, 0x1e, 0x41, 0x69, 0x35, 0xac, 0xbd, 0x6b, 0x71, 0x6a, 0x31, 0x6c, 0x9b, 0x79, 0xc5, 0x7d, 0x40, 0x53, 0xcb, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4475 = { .name = "ecdsa_secp224r1_sha512_4475", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4475_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4475_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4475_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4476 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4476_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4476_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4476_sig[] = { 0x3d, 0x14, 0xa4, 0xc2, 0x1b, 0xa4, 0xdb, 0xd3, 0x38, 0xfd, 0xd8, 0xb1, 0x5f, 0xcd, 0xd0, 0xa9, 0x22, 0x8f, 0x15, 0x7c, 0xfa, 0xf2, 0xb0, 0x9d, 0xd4, 0xf2, 0xaa, 0x67, 0xe1, 0x64, 0x0e, 0x8b, 0xd2, 0xa6, 0x11, 0x0d, 0xc1, 0x8d, 0x6f, 0x29, 0x0b, 0x73, 0x25, 0x81, 0x47, 0x10, 0xc0, 0xdc, 0x88, 0xb7, 0x6f, 0x12, 0x7c, 0x5e, 0x9e, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4476 = { .name = "ecdsa_secp224r1_sha512_4476", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4476_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4476_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4476_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4477 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4477_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4477_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4477_sig[] = { 0x25, 0x8d, 0xce, 0x91, 0x6e, 0xf7, 0x8b, 0x9d, 0x8a, 0x87, 0xbe, 0xaf, 0x6e, 0xdd, 0x35, 0xbc, 0xcc, 0xc0, 0x8c, 0x5d, 0xe4, 0x88, 0x58, 0x6e, 0x1b, 0x7b, 0x74, 0x9a, 0x4f, 0xf5, 0x00, 0xdb, 0x4d, 0x66, 0x5c, 0x70, 0x62, 0x17, 0x9c, 0x09, 0x9b, 0x29, 0x85, 0xa8, 0x14, 0xf9, 0x9f, 0xbf, 0xa4, 0x4a, 0x3a, 0x70, 0x90, 0x24, 0xd5, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4477 = { .name = "ecdsa_secp224r1_sha512_4477", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4477_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4477_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4477_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4478 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4478_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4478_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4478_sig[] = { 0xce, 0xcf, 0x0a, 0xec, 0x53, 0x57, 0x74, 0x9f, 0x35, 0x7c, 0x45, 0x95, 0x75, 0x29, 0x8a, 0x33, 0x84, 0xdc, 0x4a, 0xc3, 0x81, 0x43, 0x8f, 0xf9, 0x9a, 0xcd, 0x99, 0x93, 0xda, 0x7a, 0xdb, 0x09, 0x2a, 0x68, 0x90, 0xe0, 0x91, 0x8c, 0x23, 0x5a, 0x62, 0xd4, 0xa9, 0x49, 0xb0, 0xca, 0xe5, 0xe5, 0x78, 0x56, 0x97, 0x51, 0x08, 0xfb, 0x2b, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4478 = { .name = "ecdsa_secp224r1_sha512_4478", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4478_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4478_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4478_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4479 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4479_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4479_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4479_sig[] = { 0xd7, 0x7f, 0x2e, 0x54, 0x7f, 0xd6, 0x8d, 0x5d, 0xb3, 0x14, 0x90, 0x1d, 0xa1, 0xff, 0x7e, 0xca, 0xf3, 0xd0, 0xc1, 0x7e, 0xc0, 0x47, 0xa9, 0x74, 0xa7, 0xce, 0xc3, 0x3e, 0x44, 0x3a, 0x97, 0xaf, 0xdf, 0x88, 0x22, 0x72, 0xbf, 0x02, 0x33, 0xc8, 0xc4, 0xa8, 0xd2, 0x3c, 0x93, 0x52, 0xad, 0x89, 0xb1, 0x77, 0x0c, 0x26, 0x24, 0x0f, 0x66, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4479 = { .name = "ecdsa_secp224r1_sha512_4479", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4479_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4479_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4479_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4480 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4480_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4480_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4480_sig[] = { 0xd5, 0xdc, 0xf9, 0x3e, 0x6e, 0x1b, 0x93, 0x32, 0x3e, 0xa2, 0x64, 0x2d, 0x34, 0x05, 0xa7, 0x42, 0x3c, 0xb0, 0x4f, 0x59, 0xc0, 0x34, 0x20, 0x19, 0x3f, 0x39, 0x48, 0x86, 0xdd, 0xd5, 0x84, 0x2e, 0x49, 0x28, 0xee, 0x4b, 0x5d, 0x77, 0xd4, 0x3d, 0x4a, 0x4b, 0xfc, 0x7f, 0x99, 0x1c, 0x89, 0x97, 0x27, 0xb7, 0x5f, 0xc9, 0x41, 0xb5, 0x29, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4480 = { .name = "ecdsa_secp224r1_sha512_4480", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4480_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4480_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4480_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4481 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4481_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4481_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4481_sig[] = { 0xa9, 0xbc, 0x3e, 0xbc, 0x6e, 0xe3, 0x44, 0x21, 0x32, 0x67, 0x11, 0xce, 0x29, 0x51, 0x8d, 0x02, 0xbd, 0x40, 0x3e, 0xad, 0x80, 0x6a, 0x3e, 0x45, 0x02, 0xef, 0xa0, 0xce, 0x12, 0x61, 0x0b, 0x89, 0xa6, 0x16, 0x89, 0xa8, 0xeb, 0x6e, 0x06, 0x2d, 0x25, 0x24, 0x27, 0x81, 0x55, 0xfe, 0x49, 0x9f, 0xfe, 0xcc, 0x0e, 0x0d, 0x94, 0x0d, 0x48, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4481 = { .name = "ecdsa_secp224r1_sha512_4481", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4481_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4481_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4481_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4482 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4482_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4482_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4482_sig[] = { 0xc7, 0x03, 0xc5, 0x08, 0x78, 0x4e, 0xf7, 0x1b, 0x59, 0x6d, 0xcd, 0x61, 0xc5, 0xb0, 0x1b, 0x45, 0xc6, 0xc6, 0x9d, 0x2b, 0x36, 0xa5, 0xa3, 0xb7, 0x70, 0x1e, 0x59, 0x76, 0xf0, 0x54, 0x44, 0xa7, 0x77, 0x20, 0x41, 0x18, 0xf3, 0xac, 0x2a, 0xfc, 0x92, 0xd0, 0x21, 0x28, 0x31, 0xbf, 0x70, 0x02, 0x15, 0x8e, 0x7c, 0x65, 0x6f, 0x4c, 0x07, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4482 = { .name = "ecdsa_secp224r1_sha512_4482", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4482_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4482_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4482_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4483 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4483_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4483_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4483_sig[] = { 0x80, 0x67, 0x4b, 0x74, 0x0b, 0x64, 0xd3, 0x83, 0x67, 0x7c, 0x04, 0x9a, 0x6f, 0x4b, 0xae, 0xb2, 0x14, 0xf4, 0xa6, 0xb5, 0x93, 0x30, 0x33, 0x85, 0x3e, 0x63, 0x45, 0x78, 0x9b, 0x3a, 0x80, 0x4c, 0x75, 0xed, 0x79, 0x0e, 0x31, 0x96, 0x6b, 0xc2, 0x57, 0x30, 0xb7, 0x42, 0x8a, 0xf8, 0xc7, 0x3c, 0x65, 0xfb, 0x50, 0x3c, 0x06, 0xc5, 0x97, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4483 = { .name = "ecdsa_secp224r1_sha512_4483", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4483_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4483_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4483_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4484 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4484_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4484_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4484_sig[] = { 0x7e, 0xd6, 0x58, 0xc3, 0x0f, 0x4a, 0x0d, 0xcc, 0x89, 0x4c, 0x39, 0xf9, 0x32, 0x0f, 0x59, 0xa1, 0x85, 0x50, 0x9f, 0xfe, 0xe4, 0x5e, 0xac, 0x60, 0x23, 0x57, 0x7c, 0x7c, 0x47, 0xac, 0x94, 0xa5, 0x01, 0x80, 0x6d, 0x5a, 0xdf, 0xfe, 0xa9, 0xfc, 0xf3, 0xcc, 0xd8, 0xcf, 0x79, 0xf3, 0xcc, 0x47, 0xec, 0xa9, 0xfe, 0x38, 0xfc, 0x48, 0x86, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4484 = { .name = "ecdsa_secp224r1_sha512_4484", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4484_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4484_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4484_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4485 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4485_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4485_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4485_sig[] = { 0x39, 0x7f, 0x66, 0x9c, 0xc3, 0x99, 0xa9, 0x1d, 0xa9, 0x6c, 0x16, 0xef, 0xd2, 0x33, 0xf6, 0xfe, 0x60, 0xd1, 0xb7, 0xca, 0xa3, 0x97, 0xcc, 0x25, 0x78, 0x43, 0xb3, 0x0b, 0xf1, 0x93, 0x75, 0xfe, 0x66, 0xea, 0xe4, 0x73, 0x8e, 0xc9, 0xdc, 0x5b, 0x7e, 0xf5, 0x1c, 0xb3, 0x3d, 0x4c, 0xb2, 0x58, 0xf3, 0x69, 0x44, 0xd3, 0x7d, 0xd2, 0x45, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4485 = { .name = "ecdsa_secp224r1_sha512_4485", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4485_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4485_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4485_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4486 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4486_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4486_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4486_sig[] = { 0x53, 0x7e, 0xc3, 0x69, 0xb3, 0xf0, 0xd8, 0x91, 0xe1, 0x66, 0xf6, 0xc7, 0x4e, 0x5d, 0x73, 0xdd, 0x2c, 0x48, 0x22, 0x21, 0x0c, 0x5f, 0xe5, 0xf9, 0x78, 0xc3, 0x40, 0x72, 0x0b, 0x18, 0x3c, 0x48, 0xb5, 0xf6, 0xe6, 0x92, 0x45, 0xcb, 0x76, 0xe1, 0xe2, 0xc3, 0x96, 0x63, 0xee, 0xdf, 0xb7, 0x4b, 0xa9, 0x53, 0x87, 0x39, 0xac, 0x49, 0x5f, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4486 = { .name = "ecdsa_secp224r1_sha512_4486", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4486_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4486_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4486_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4487 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4487_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4487_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4487_sig[] = { 0xd0, 0xed, 0x71, 0x59, 0xcc, 0x3a, 0x79, 0x98, 0x8f, 0x3c, 0x27, 0x92, 0x87, 0xca, 0x8e, 0xd1, 0x0b, 0xb8, 0xf0, 0x2c, 0x8b, 0x5a, 0x62, 0x04, 0xae, 0xad, 0x12, 0x23, 0x75, 0xee, 0x1e, 0x5c, 0x00, 0xe8, 0x18, 0x99, 0xbf, 0xa8, 0x54, 0x5e, 0xdc, 0xc6, 0x4f, 0xdf, 0x70, 0x7d, 0xae, 0x1f, 0x61, 0xd9, 0x76, 0xd2, 0xf0, 0x88, 0x37, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4487 = { .name = "ecdsa_secp224r1_sha512_4487", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4487_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4487_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4487_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4488 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4488_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4488_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4488_sig[] = { 0xcf, 0x43, 0x32, 0x9a, 0x97, 0x81, 0xdb, 0x80, 0x44, 0xa9, 0x20, 0x75, 0x8e, 0x58, 0x39, 0x98, 0x66, 0xfe, 0x77, 0x48, 0xc0, 0xf5, 0xd6, 0xa3, 0xbc, 0xdc, 0xbc, 0xbd, 0xd9, 0x74, 0x0d, 0x2d, 0xd7, 0x16, 0x29, 0x0a, 0xd4, 0x16, 0x03, 0x45, 0xbc, 0xd4, 0xaf, 0x03, 0xaf, 0x01, 0xc4, 0x4b, 0x61, 0x0b, 0x1e, 0x59, 0x53, 0x19, 0x90, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4488 = { .name = "ecdsa_secp224r1_sha512_4488", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4488_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4488_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4488_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4489 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4489_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4489_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4489_sig[] = { 0x8a, 0xb2, 0xe9, 0x2c, 0x8c, 0x91, 0x43, 0xf9, 0xd8, 0xda, 0x3b, 0xdb, 0x1d, 0x93, 0x5c, 0xce, 0x3a, 0xb6, 0x0a, 0xe9, 0x9b, 0x3c, 0xcf, 0xe8, 0x63, 0xb1, 0x5d, 0x14, 0x88, 0xc8, 0x93, 0x02, 0xe8, 0xa9, 0xc5, 0x91, 0xc6, 0xed, 0x16, 0xb1, 0xae, 0x46, 0xf9, 0x66, 0x00, 0x4d, 0x0b, 0x26, 0x85, 0x44, 0x98, 0x42, 0xe2, 0x91, 0xd7, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4489 = { .name = "ecdsa_secp224r1_sha512_4489", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4489_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4489_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4489_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4490 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4490_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4490_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4490_sig[] = { 0x04, 0xf6, 0x0f, 0x84, 0x50, 0xb4, 0x48, 0x19, 0x8c, 0xf7, 0x98, 0x11, 0x16, 0xde, 0x06, 0xd4, 0xc4, 0x88, 0x8c, 0xd2, 0x6b, 0xe3, 0xa5, 0x94, 0x70, 0x92, 0x23, 0x8f, 0xcb, 0x23, 0xfc, 0xb3, 0x3c, 0x14, 0xf0, 0x89, 0xc2, 0xae, 0x03, 0x01, 0x46, 0xd6, 0x8f, 0xa6, 0x5e, 0xb9, 0xb0, 0x86, 0xfa, 0x79, 0x2f, 0x95, 0xbe, 0x8e, 0xcf, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4490 = { .name = "ecdsa_secp224r1_sha512_4490", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4490_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4490_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4490_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4491 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4491_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4491_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4491_sig[] = { 0xf2, 0x70, 0xf7, 0xa7, 0x0a, 0x96, 0xa0, 0xf9, 0x16, 0xc7, 0x53, 0x0c, 0x6d, 0xea, 0x71, 0x78, 0xe6, 0xc0, 0x87, 0xdd, 0xbc, 0xc6, 0x0a, 0xac, 0xd8, 0xa7, 0xc5, 0x53, 0x8b, 0x2c, 0x37, 0x85, 0x54, 0x12, 0x13, 0x65, 0xa1, 0x80, 0xad, 0x4e, 0xdf, 0x1a, 0x12, 0xe5, 0x66, 0xba, 0x55, 0xee, 0xab, 0xf5, 0x25, 0x35, 0x67, 0x83, 0xe6, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4491 = { .name = "ecdsa_secp224r1_sha512_4491", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4491_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4491_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4491_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4492 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4492_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4492_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4492_sig[] = { 0x85, 0xad, 0x01, 0xb2, 0x36, 0xca, 0x4a, 0x54, 0x51, 0x96, 0x92, 0x42, 0xe1, 0x61, 0x65, 0xd3, 0x22, 0x42, 0x82, 0x35, 0xa2, 0xaf, 0x8f, 0xdc, 0xd6, 0xc4, 0xc7, 0xb9, 0x8e, 0xb2, 0x99, 0x8c, 0x5e, 0x0a, 0xaf, 0x27, 0x97, 0x93, 0xca, 0xff, 0x59, 0xa2, 0x66, 0xca, 0x20, 0x68, 0xd9, 0x4e, 0xbf, 0x77, 0xba, 0xe8, 0x1f, 0xd0, 0xfb, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4492 = { .name = "ecdsa_secp224r1_sha512_4492", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4492_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4492_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4492_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4493 for ECDSA, tcId is 152 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4493_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4493_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4493_sig[] = { 0xcf, 0xfd, 0xb8, 0xd6, 0x4b, 0x5b, 0x84, 0xb4, 0x90, 0xff, 0x73, 0xd7, 0x7e, 0x51, 0xcc, 0x77, 0x97, 0xbf, 0x67, 0xc5, 0xee, 0x0a, 0x49, 0x99, 0xde, 0xf1, 0x72, 0x30, 0x3b, 0xaf, 0x4b, 0x34, 0xe1, 0xa3, 0x5e, 0x96, 0x06, 0xa4, 0x60, 0xb3, 0x95, 0x06, 0x3a, 0x55, 0x42, 0x64, 0xa9, 0xc4, 0x3c, 0xc3, 0x02, 0xab, 0x5a, 0xbf, 0x47, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4493 = { .name = "ecdsa_secp224r1_sha512_4493", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4493_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4493_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4493_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4494 for ECDSA, tcId is 153 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4494_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4494_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4494_sig[] = { 0x66, 0xcd, 0xa5, 0x8a, 0x5a, 0x6d, 0xdb, 0x94, 0x76, 0xe3, 0x6d, 0xba, 0xd5, 0xdf, 0x54, 0x2b, 0xe8, 0x8d, 0x7e, 0x44, 0x7b, 0xdc, 0x3d, 0xfe, 0x1d, 0x9e, 0x8b, 0x2c, 0x0d, 0x99, 0xd3, 0x87, 0x48, 0x6a, 0x96, 0x4e, 0xba, 0xb4, 0xe2, 0x9b, 0xad, 0x58, 0x3e, 0x46, 0xa5, 0xa2, 0x00, 0x39, 0x1d, 0x10, 0x65, 0x76, 0x8a, 0x4e, 0x35, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4494 = { .name = "ecdsa_secp224r1_sha512_4494", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4494_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4494_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4494_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4495 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4495_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4495_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4495_sig[] = { 0x32, 0x00, 0x76, 0x19, 0x02, 0x82, 0x5b, 0xd3, 0x53, 0x90, 0x8a, 0xcc, 0xd2, 0xbe, 0x6b, 0x48, 0x26, 0x45, 0x64, 0x69, 0x71, 0xf9, 0x6d, 0xc4, 0x90, 0x70, 0x6a, 0x37, 0x3e, 0xd7, 0x78, 0x99, 0xef, 0xdb, 0xe4, 0x18, 0x37, 0x0f, 0xa7, 0x99, 0x8d, 0xf3, 0xb7, 0xc9, 0x24, 0xbe, 0xd6, 0x86, 0x45, 0x35, 0x27, 0x7f, 0x80, 0x5c, 0x89, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4495 = { .name = "ecdsa_secp224r1_sha512_4495", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4495_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4495_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha512_4495_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4496 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4496_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4496_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4496_sig[] = { 0xba, 0x0e, 0xff, 0x0e, 0xe4, 0x6a, 0xa9, 0xfc, 0xa5, 0xab, 0x8a, 0xd6, 0x4a, 0xee, 0x40, 0x37, 0x93, 0x1d, 0x3a, 0xd0, 0xb9, 0x53, 0xd4, 0x04, 0xef, 0x9f, 0x7b, 0xdc, 0xaf, 0xdf, 0x21, 0xdf, 0x0d, 0xcb, 0xe3, 0x9c, 0x2f, 0x5f, 0xa9, 0xef, 0x7e, 0x1a, 0x2b, 0xca, 0x87, 0xd1, 0x21, 0x3d, 0x1e, 0xca, 0x43, 0x89, 0x29, 0xad, 0x89, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4496 = { .name = "ecdsa_secp224r1_sha512_4496", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4496_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4496_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4496_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4497 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4497_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4497_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4497_sig[] = { 0xa2, 0x0c, 0x68, 0x83, 0xfc, 0x6e, 0xc1, 0xca, 0x4b, 0xb3, 0x78, 0xac, 0x88, 0xed, 0x67, 0x0a, 0x74, 0x2a, 0x62, 0x84, 0x11, 0x3d, 0x5f, 0xa3, 0x18, 0x2a, 0x18, 0x58, 0xe0, 0xa7, 0x3b, 0x91, 0x3b, 0x94, 0x16, 0x31, 0x75, 0xd2, 0x64, 0x22, 0x4c, 0xc7, 0x07, 0x36, 0xf2, 0xfb, 0x8e, 0x8d, 0x58, 0xe9, 0x14, 0xb1, 0x8c, 0x92, 0x13, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4497 = { .name = "ecdsa_secp224r1_sha512_4497", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4497_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4497_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4497_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4498 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4498_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4498_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4498_sig[] = { 0xf2, 0xf4, 0xaf, 0x95, 0x6b, 0x0c, 0x54, 0x09, 0x94, 0x9d, 0x37, 0x7e, 0x9b, 0xc6, 0x8e, 0x4f, 0x1a, 0xbe, 0xf7, 0x96, 0x9b, 0x51, 0x8f, 0x8b, 0xea, 0xcf, 0x27, 0xdb, 0xdf, 0x3a, 0x7b, 0x59, 0x93, 0xd2, 0x39, 0x3a, 0xde, 0x70, 0xa2, 0xcf, 0xc1, 0xe8, 0x67, 0x1a, 0x78, 0xca, 0x4f, 0xec, 0xb5, 0x64, 0x25, 0xa6, 0x61, 0xa2, 0xd2, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4498 = { .name = "ecdsa_secp224r1_sha512_4498", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4498_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4498_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4498_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4499 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4499_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4499_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4499_sig[] = { 0x33, 0x1a, 0x1a, 0x55, 0x34, 0x94, 0xf8, 0x52, 0x4a, 0xdb, 0x4e, 0x8a, 0x72, 0x2d, 0x55, 0x89, 0x65, 0xfb, 0x70, 0x3a, 0xe4, 0x32, 0xbf, 0x3c, 0xbd, 0xb2, 0x55, 0xc2, 0x5a, 0xb6, 0xe3, 0xde, 0xe6, 0xa2, 0x51, 0x6f, 0xc4, 0xe0, 0xac, 0x88, 0xe6, 0xdf, 0xc8, 0x1d, 0x2b, 0xc3, 0x7c, 0x98, 0x94, 0x9c, 0xc0, 0x3e, 0x52, 0x1d, 0x38, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4499 = { .name = "ecdsa_secp224r1_sha512_4499", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4499_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4499_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4499_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4500 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4500_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4500_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4500_sig[] = { 0x86, 0x71, 0x35, 0x55, 0x8e, 0x06, 0xe1, 0x97, 0x96, 0xeb, 0xce, 0x8e, 0x35, 0x55, 0xc6, 0x07, 0xa6, 0x60, 0x7d, 0x46, 0xf7, 0xc8, 0xda, 0x6b, 0x85, 0x52, 0xff, 0xc1, 0x8e, 0x82, 0x7e, 0x8b, 0x9a, 0x4f, 0x74, 0xef, 0xee, 0xc7, 0xd7, 0xba, 0x5c, 0x23, 0x42, 0x8f, 0xde, 0x02, 0x27, 0xdf, 0x55, 0xa1, 0xef, 0xc1, 0x79, 0xa3, 0x53, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4500 = { .name = "ecdsa_secp224r1_sha512_4500", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4500_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4500_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4500_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4501 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4501_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4501_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4501_sig[] = { 0x67, 0x46, 0x90, 0x3c, 0xa0, 0x95, 0xbf, 0xd3, 0xf6, 0x37, 0x8a, 0x70, 0x09, 0x27, 0x23, 0x48, 0x3c, 0xa1, 0x90, 0xb2, 0x39, 0x2d, 0x8b, 0x1a, 0xd3, 0x37, 0x96, 0x9f, 0xf3, 0x3b, 0xfa, 0xe0, 0x83, 0x5c, 0x23, 0xa8, 0x0e, 0xc9, 0xf3, 0x3c, 0xe9, 0xa9, 0x03, 0x5c, 0x19, 0x28, 0x36, 0xa0, 0xb2, 0xfa, 0xdd, 0x34, 0x7d, 0x80, 0x3f, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4501 = { .name = "ecdsa_secp224r1_sha512_4501", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4501_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4501_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4501_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4502 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4502_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4502_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4502_sig[] = { 0x7f, 0xc0, 0xd8, 0x73, 0x9e, 0xcf, 0xe3, 0x49, 0xe5, 0x06, 0xe7, 0x12, 0x03, 0xa6, 0xe6, 0x0e, 0x62, 0x8a, 0x1b, 0xb0, 0xc6, 0x7d, 0x5e, 0x57, 0x4c, 0xb8, 0x83, 0x1c, 0xcf, 0x8b, 0xb1, 0x55, 0x71, 0x52, 0xc5, 0x75, 0x50, 0xa0, 0xfd, 0xe6, 0x57, 0x14, 0x56, 0xfa, 0x75, 0x27, 0x82, 0xf7, 0xf9, 0x2f, 0x7b, 0xb2, 0x35, 0xdd, 0xe3, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4502 = { .name = "ecdsa_secp224r1_sha512_4502", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4502_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4502_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4502_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4503 for ECDSA, tcId is 162 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4503_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4503_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4503_sig[] = { 0xb4, 0x48, 0x6e, 0x31, 0x39, 0xe0, 0xb1, 0x54, 0x28, 0x92, 0xdb, 0x3d, 0x3f, 0x51, 0xb0, 0x52, 0x48, 0x94, 0xe1, 0x9c, 0xb0, 0x0c, 0xd0, 0x7b, 0x03, 0xee, 0x9c, 0x97, 0xad, 0x97, 0x28, 0xd7, 0x7a, 0x8b, 0x7b, 0x4f, 0xa4, 0x35, 0xb3, 0x34, 0x58, 0x47, 0x86, 0x0c, 0x33, 0x2d, 0x65, 0xd8, 0x15, 0x2a, 0xa6, 0x50, 0x3a, 0xb1, 0x87, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4503 = { .name = "ecdsa_secp224r1_sha512_4503", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4503_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4503_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4503_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4504 for ECDSA, tcId is 163 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4504_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4504_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4504_sig[] = { 0xaf, 0xbb, 0xdc, 0x8e, 0x50, 0xe8, 0x01, 0xec, 0xbd, 0x2e, 0x37, 0x05, 0x07, 0x97, 0x17, 0xf4, 0xf9, 0xd6, 0x9f, 0x3b, 0x3d, 0x85, 0x21, 0x5a, 0xee, 0xcb, 0x4f, 0xbc, 0xec, 0xea, 0xdd, 0x4e, 0x2c, 0xc9, 0xce, 0xa1, 0x0b, 0x56, 0xd1, 0x6a, 0x03, 0xfa, 0x55, 0x1f, 0xec, 0x3e, 0xb8, 0x08, 0xbd, 0x8d, 0x9f, 0x09, 0x26, 0xd1, 0x4e, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4504 = { .name = "ecdsa_secp224r1_sha512_4504", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4504_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4504_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4504_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4505 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4505_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4505_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4505_sig[] = { 0x4a, 0x76, 0x2f, 0x7d, 0x14, 0x6f, 0x9e, 0xaf, 0xff, 0x5a, 0xd1, 0x1a, 0x69, 0x78, 0x26, 0x0c, 0x81, 0x8b, 0x80, 0x1c, 0x34, 0x88, 0xdd, 0x60, 0x41, 0x1f, 0x5c, 0xf6, 0x9e, 0xa7, 0x75, 0x12, 0x58, 0x56, 0x20, 0xef, 0x2c, 0xfa, 0xe8, 0xb8, 0xc9, 0xd8, 0x17, 0x12, 0x29, 0xa3, 0x21, 0x97, 0xe1, 0x94, 0x95, 0x61, 0xbb, 0x75, 0xa0, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4505 = { .name = "ecdsa_secp224r1_sha512_4505", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4505_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4505_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4505_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4506 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4506_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4506_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4506_sig[] = { 0x22, 0x7f, 0xe5, 0x2b, 0x57, 0x98, 0x33, 0xfe, 0xee, 0x16, 0xc2, 0x87, 0xd2, 0x92, 0x73, 0xe2, 0x25, 0x6d, 0xf6, 0x8a, 0xff, 0x0b, 0x94, 0xd2, 0x75, 0x2d, 0x87, 0x7b, 0xbd, 0x79, 0x93, 0x5e, 0x5f, 0xaa, 0x8e, 0x93, 0x56, 0x62, 0x2f, 0xea, 0x01, 0x35, 0xec, 0xf7, 0x96, 0xda, 0xf6, 0x03, 0x33, 0xd5, 0xab, 0x12, 0x5f, 0x71, 0xe5, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4506 = { .name = "ecdsa_secp224r1_sha512_4506", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4506_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4506_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4506_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4507 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4507_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4507_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4507_sig[] = { 0xcd, 0x53, 0x65, 0x98, 0x3e, 0xb1, 0x65, 0xdb, 0x39, 0xba, 0x0c, 0x66, 0xc3, 0xa4, 0x5b, 0x2c, 0xe1, 0x37, 0x0c, 0x9a, 0xd1, 0x4a, 0x9a, 0xa7, 0x6d, 0xd4, 0x63, 0x3a, 0xa8, 0xc7, 0x7c, 0xe4, 0x2a, 0xb1, 0xc8, 0x88, 0xa6, 0xb5, 0xd0, 0x4b, 0x71, 0x13, 0x9f, 0xd8, 0x82, 0x32, 0x86, 0x22, 0xe1, 0x5e, 0x80, 0x25, 0x2e, 0x5c, 0xf7, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4507 = { .name = "ecdsa_secp224r1_sha512_4507", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4507_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4507_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4507_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4508 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4508_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4508_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4508_sig[] = { 0x54, 0xd6, 0xd4, 0x43, 0x73, 0xf7, 0xdf, 0xc9, 0x84, 0x55, 0xa2, 0x2c, 0xd3, 0x9a, 0x0b, 0x32, 0x0f, 0xab, 0xc3, 0x32, 0x15, 0x21, 0x6b, 0x37, 0x36, 0x5b, 0x5a, 0x16, 0x29, 0xcc, 0x69, 0x0f, 0x24, 0x67, 0xc0, 0x2e, 0x07, 0xbc, 0x41, 0x6a, 0xd4, 0x72, 0x04, 0x97, 0x5a, 0xf8, 0xc5, 0xc3, 0x34, 0x69, 0x73, 0xf2, 0xb0, 0x3d, 0xed, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4508 = { .name = "ecdsa_secp224r1_sha512_4508", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4508_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4508_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4508_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4509 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4509_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4509_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4509_sig[] = { 0x2f, 0x50, 0x48, 0xc9, 0xef, 0x9f, 0x30, 0xda, 0x7c, 0xb3, 0xfe, 0x46, 0x24, 0x55, 0x22, 0x00, 0xf9, 0xe5, 0x7a, 0x46, 0xd7, 0x9d, 0xb0, 0x48, 0x4a, 0x0d, 0x9c, 0xf2, 0x06, 0xda, 0xd3, 0xa4, 0x68, 0x27, 0x25, 0x85, 0x28, 0x69, 0xa1, 0xa4, 0x59, 0xbe, 0xc8, 0x65, 0x66, 0x1e, 0x1a, 0x38, 0xa9, 0xe5, 0x46, 0xee, 0xaa, 0xc7, 0xcb, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4509 = { .name = "ecdsa_secp224r1_sha512_4509", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4509_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4509_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4509_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4510 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4510_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4510_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4510_sig[] = { 0xab, 0xbf, 0x0a, 0x02, 0x33, 0x2f, 0xbe, 0xa7, 0x79, 0x89, 0x9d, 0x31, 0xd3, 0xab, 0xd2, 0xd2, 0x2c, 0x9c, 0x02, 0xd4, 0x05, 0x8c, 0xed, 0x63, 0x9b, 0xf0, 0x6c, 0x45, 0xcc, 0xe0, 0x57, 0x0f, 0x38, 0x12, 0xe5, 0xcf, 0xcb, 0x23, 0x37, 0x6c, 0x55, 0x4c, 0x7f, 0xc3, 0x5d, 0xbc, 0xfe, 0xb6, 0x23, 0xa7, 0x95, 0x8c, 0x66, 0x4a, 0xc6, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4510 = { .name = "ecdsa_secp224r1_sha512_4510", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4510_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4510_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4510_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4511 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4511_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4511_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4511_sig[] = { 0x1c, 0x30, 0xcb, 0x8b, 0xc2, 0x10, 0x87, 0xb7, 0x7e, 0xb1, 0x21, 0x6e, 0xe8, 0x62, 0x9e, 0x36, 0x76, 0xd9, 0x25, 0xf1, 0xae, 0x15, 0x07, 0x7c, 0xc6, 0x31, 0xda, 0x4f, 0xee, 0x99, 0x81, 0x57, 0xbd, 0xef, 0xb7, 0x7d, 0x10, 0x44, 0xe9, 0x83, 0xa6, 0xaf, 0xec, 0x7d, 0x91, 0xa2, 0x3d, 0x95, 0xc9, 0x37, 0xfc, 0x5c, 0x65, 0x48, 0xc9, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4511 = { .name = "ecdsa_secp224r1_sha512_4511", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4511_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4511_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4511_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4512 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4512_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4512_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4512_sig[] = { 0x43, 0xee, 0x11, 0xa7, 0xab, 0x62, 0xe2, 0x12, 0x5e, 0x76, 0x5c, 0x2c, 0xe5, 0xd4, 0xf8, 0x47, 0x04, 0x18, 0x35, 0x39, 0x81, 0x05, 0x12, 0x26, 0x8d, 0x87, 0xf1, 0x95, 0x65, 0x89, 0x7e, 0x54, 0x02, 0x57, 0x77, 0x65, 0x9e, 0xe8, 0x02, 0xb3, 0x9c, 0x6b, 0xfd, 0x5c, 0xcc, 0x57, 0x06, 0xa9, 0xd1, 0xb3, 0x8f, 0x95, 0xc0, 0x78, 0xab, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4512 = { .name = "ecdsa_secp224r1_sha512_4512", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4512_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4512_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4512_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4513 for ECDSA, tcId is 172 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4513_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4513_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4513_sig[] = { 0xa1, 0xfe, 0x3f, 0x4d, 0x3f, 0x43, 0xaa, 0xa3, 0xdc, 0xaf, 0xa7, 0x9e, 0xd9, 0x9f, 0xbc, 0x04, 0x5c, 0x11, 0xc3, 0x52, 0xca, 0xac, 0xd8, 0x9f, 0x0f, 0x63, 0x84, 0x7e, 0xca, 0x2e, 0x37, 0xbd, 0x2c, 0x13, 0xb9, 0xfb, 0x3f, 0x8a, 0x55, 0xb7, 0xa6, 0x7e, 0xb0, 0x34, 0x24, 0x03, 0x95, 0xab, 0xd3, 0x9f, 0xec, 0xde, 0x75, 0x14, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4513 = { .name = "ecdsa_secp224r1_sha512_4513", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4513_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4513_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4513_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4514 for ECDSA, tcId is 173 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4514_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4514_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4514_sig[] = { 0xbd, 0x29, 0x02, 0x86, 0xca, 0x08, 0x48, 0x5e, 0xa4, 0x13, 0x70, 0x10, 0xc6, 0x72, 0x03, 0xc2, 0x45, 0x5e, 0x7b, 0x66, 0x9d, 0x15, 0x3c, 0x6b, 0xe4, 0x00, 0x87, 0xc7, 0x97, 0xdd, 0x75, 0x02, 0xba, 0x36, 0x37, 0xf3, 0x3b, 0xae, 0xa5, 0xb2, 0x39, 0x86, 0x47, 0xad, 0x24, 0xc0, 0xfe, 0x35, 0x07, 0x2b, 0xd9, 0x63, 0x14, 0x9b, 0x5a, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4514 = { .name = "ecdsa_secp224r1_sha512_4514", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4514_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4514_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4514_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4515 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4515_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4515_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4515_sig[] = { 0xc9, 0x17, 0x26, 0x9a, 0x5a, 0x4c, 0xe8, 0x0b, 0x7f, 0xe5, 0x4a, 0x8b, 0xed, 0x49, 0x32, 0x6b, 0x50, 0x52, 0x7a, 0x4d, 0x2f, 0xb0, 0xa3, 0x09, 0x31, 0x82, 0xb5, 0xa5, 0xa1, 0x95, 0xec, 0x0e, 0x69, 0xe3, 0x17, 0x2e, 0x85, 0x4e, 0x87, 0xdd, 0x65, 0x1b, 0x44, 0x43, 0x3f, 0xcd, 0x7d, 0xcb, 0xb7, 0xbd, 0x59, 0x51, 0x5d, 0x2a, 0xfe, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4515 = { .name = "ecdsa_secp224r1_sha512_4515", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4515_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4515_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4515_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4516 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4516_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4516_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4516_sig[] = { 0x0b, 0x7b, 0x5a, 0xab, 0x83, 0x64, 0xdd, 0x4b, 0x11, 0x00, 0x1a, 0x0b, 0x98, 0x6d, 0x5a, 0xa4, 0xfb, 0x61, 0xee, 0x72, 0x02, 0x37, 0x41, 0x7a, 0x7f, 0x63, 0x72, 0x2f, 0x7f, 0x13, 0xb4, 0x11, 0xe6, 0x45, 0xe8, 0x19, 0xfe, 0xd1, 0xb9, 0x25, 0xeb, 0xe8, 0x07, 0xd9, 0x56, 0x0b, 0x44, 0xd0, 0xba, 0x1b, 0x75, 0xbd, 0x2f, 0xbd, 0x12, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4516 = { .name = "ecdsa_secp224r1_sha512_4516", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4516_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4516_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4516_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4517 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4517_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4517_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4517_sig[] = { 0x50, 0x5b, 0x97, 0x4f, 0x8e, 0xcf, 0x07, 0xb6, 0x0f, 0xfd, 0xbd, 0x2b, 0x2d, 0xf9, 0x32, 0x4d, 0xe9, 0x2b, 0x39, 0x47, 0x6e, 0xb7, 0x63, 0xa4, 0xc2, 0x5f, 0x12, 0x6a, 0x1c, 0x36, 0xed, 0x1d, 0xee, 0x77, 0x2c, 0x72, 0x42, 0x05, 0xf7, 0x17, 0xc3, 0x83, 0xf4, 0x9a, 0x87, 0xa5, 0xbc, 0x3c, 0xaa, 0x0e, 0xf8, 0x13, 0x60, 0xf9, 0xd8, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4517 = { .name = "ecdsa_secp224r1_sha512_4517", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4517_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4517_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4517_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4518 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4518_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4518_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4518_sig[] = { 0x24, 0x21, 0x9e, 0x49, 0xb9, 0x8a, 0x9b, 0x64, 0xe5, 0x6d, 0x21, 0xc9, 0x08, 0xc8, 0x70, 0xeb, 0x88, 0xb4, 0x47, 0xd9, 0xf1, 0xdd, 0xb7, 0x35, 0x08, 0x3d, 0x6d, 0xf2, 0xbc, 0x4d, 0x76, 0x44, 0xfa, 0xef, 0xf1, 0xe1, 0x34, 0x44, 0x3b, 0x2b, 0xb3, 0xbb, 0x2a, 0x20, 0xe2, 0xa4, 0xa7, 0xc1, 0x93, 0x18, 0x06, 0x26, 0x12, 0x7c, 0xe9, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4518 = { .name = "ecdsa_secp224r1_sha512_4518", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4518_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4518_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4518_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4519 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4519_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4519_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4519_sig[] = { 0x08, 0x32, 0x46, 0x08, 0x1c, 0xf2, 0xf8, 0xc5, 0xe1, 0xcd, 0x42, 0xb6, 0x04, 0x50, 0xfc, 0x6c, 0xac, 0x3b, 0x0a, 0xb0, 0x3d, 0x38, 0xbd, 0xd2, 0x71, 0xcd, 0x73, 0x70, 0x8d, 0x11, 0x7e, 0xc3, 0x2d, 0xbf, 0x93, 0x93, 0x94, 0x49, 0x9f, 0x7d, 0xbc, 0x2a, 0xb7, 0x72, 0x90, 0xe9, 0x22, 0x2d, 0x6d, 0x60, 0xea, 0x02, 0xce, 0x45, 0xc5, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4519 = { .name = "ecdsa_secp224r1_sha512_4519", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4519_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4519_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4519_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4520 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4520_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4520_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4520_sig[] = { 0x24, 0x91, 0x69, 0x61, 0xdd, 0x0d, 0x16, 0x8c, 0x28, 0x78, 0xca, 0x4f, 0xd0, 0x65, 0xb8, 0x13, 0x11, 0xc0, 0x3b, 0x7f, 0x23, 0xf8, 0x41, 0x6f, 0x4a, 0x23, 0xb1, 0x4b, 0x1e, 0x37, 0xe3, 0xc0, 0x3b, 0x23, 0x33, 0xb3, 0x3b, 0xbb, 0x2e, 0xbe, 0x05, 0xb0, 0x31, 0x04, 0x2a, 0xf1, 0x93, 0x15, 0xad, 0xfd, 0xcc, 0xdf, 0xc8, 0xd0, 0x78, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4520 = { .name = "ecdsa_secp224r1_sha512_4520", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4520_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4520_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4520_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4521 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4521_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4521_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4521_sig[] = { 0x8d, 0xf5, 0x46, 0x8b, 0x12, 0x3b, 0x92, 0x47, 0x7a, 0x5c, 0x57, 0xea, 0x86, 0xc5, 0x4c, 0x5c, 0x9e, 0x41, 0xd1, 0x19, 0x37, 0x0d, 0xc1, 0x89, 0x22, 0xaa, 0x83, 0x03, 0x86, 0xbd, 0xf0, 0x6b, 0x75, 0xf4, 0xd4, 0x9d, 0x02, 0xc5, 0x80, 0x69, 0x26, 0xf5, 0xd0, 0x1b, 0x1a, 0x4f, 0x6a, 0x81, 0x46, 0x66, 0x4a, 0x03, 0xfa, 0x82, 0x07, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4521 = { .name = "ecdsa_secp224r1_sha512_4521", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4521_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4521_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4521_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4522 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4522_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4522_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4522_sig[] = { 0xf6, 0x5b, 0xf1, 0x6f, 0x7c, 0xed, 0x97, 0xb0, 0xcd, 0xc2, 0x2b, 0x08, 0xc6, 0x2e, 0xf8, 0x11, 0x30, 0x68, 0x13, 0x13, 0x4b, 0x00, 0x1b, 0xc5, 0x11, 0x40, 0xe8, 0x28, 0x3a, 0x9b, 0x7c, 0x00, 0x8c, 0xda, 0xf8, 0x03, 0x36, 0x8d, 0xf9, 0xee, 0x50, 0xe2, 0x74, 0xc7, 0xa9, 0xf9, 0x36, 0x93, 0x44, 0xd9, 0x91, 0x8e, 0x0c, 0x08, 0xdb, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4522 = { .name = "ecdsa_secp224r1_sha512_4522", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4522_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4522_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4522_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4523 for ECDSA, tcId is 182 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4523_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4523_sig[] = { 0x62, 0x39, 0x87, 0x74, 0x30, 0xe2, 0x68, 0xf1, 0xa3, 0xad, 0xa2, 0xc9, 0x03, 0x57, 0x24, 0x7c, 0x6c, 0xa6, 0x68, 0x7f, 0x49, 0x02, 0x3b, 0xed, 0x0f, 0xb5, 0xb5, 0x97, 0x35, 0x5c, 0x60, 0xc0, 0x9f, 0x0d, 0xac, 0xb9, 0xd7, 0x4b, 0x7c, 0xcd, 0xe7, 0x18, 0x06, 0xc5, 0x0f, 0xda, 0x87, 0x50, 0xc6, 0xec, 0xb7, 0xab, 0xba, 0x91, 0x0a, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4523 = { .name = "ecdsa_secp224r1_sha512_4523", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4523_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4523_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4523_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 182 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4524 for ECDSA, tcId is 183 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4524_pubkey[] = { 0x44, 0x08, 0xe5, 0xc9, 0x5e, 0x33, 0x2a, 0xb6, 0xc2, 0x82, 0x3a, 0x63, 0x95, 0x93, 0x91, 0xd6, 0x0a, 0x6d, 0x69, 0xc5, 0x9e, 0xb1, 0xf7, 0xbd, 0x27, 0x22, 0x06, 0xb9, 0xf5, 0x27, 0x8e, 0x90, 0x1f, 0xb4, 0x77, 0x3a, 0xee, 0xb2, 0xd8, 0x25, 0x5b, 0xa4, 0xdf, 0x3c, 0xf3, 0xdb, 0x7e, 0x05, 0x57, 0xdb, 0xc6, 0x13, 0x4c, 0x55, 0xf3, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha512_4524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4524_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4524 = { .name = "ecdsa_secp224r1_sha512_4524", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4524_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4524_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4524_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 183 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4525 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4525_pubkey[] = { 0x44, 0x08, 0xe5, 0xc9, 0x5e, 0x33, 0x2a, 0xb6, 0xc2, 0x82, 0x3a, 0x63, 0x95, 0x93, 0x91, 0xd6, 0x0a, 0x6d, 0x69, 0xc5, 0x9e, 0xb1, 0xf7, 0xbd, 0x27, 0x22, 0x06, 0xb9, 0xf5, 0x27, 0x8e, 0x90, 0x1f, 0xb4, 0x77, 0x3a, 0xee, 0xb2, 0xd8, 0x25, 0x5b, 0xa4, 0xdf, 0x3c, 0xf3, 0xdb, 0x7e, 0x05, 0x57, 0xdb, 0xc6, 0x13, 0x4c, 0x55, 0xf3, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha512_4525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4525_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4525 = { .name = "ecdsa_secp224r1_sha512_4525", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4525_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4525_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4525_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 184 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4526 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4526_pubkey[] = { 0x31, 0x5a, 0x83, 0x00, 0x8d, 0xba, 0x00, 0xb3, 0x51, 0xc3, 0xf9, 0xfc, 0xa0, 0x81, 0x1c, 0x3a, 0xe1, 0x88, 0x4f, 0xa9, 0xa2, 0xa7, 0x5e, 0x6d, 0x5e, 0x71, 0xf2, 0x69, 0x50, 0x4b, 0xbe, 0x6a, 0x25, 0xbe, 0x25, 0x3b, 0x58, 0x2e, 0xfa, 0xb4, 0xb8, 0xb9, 0xe6, 0x13, 0x72, 0x76, 0x7a, 0x7a, 0x3a, 0x42, 0x3c, 0x09, 0x43, 0x12, 0x72, 0x96, }; static const unsigned char ecdsa_secp224r1_sha512_4526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4526_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4526 = { .name = "ecdsa_secp224r1_sha512_4526", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4526_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4526_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4526_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 185 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4527 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4527_pubkey[] = { 0x2f, 0x69, 0x83, 0xb6, 0xe9, 0xf8, 0xef, 0x96, 0xc2, 0xd9, 0x81, 0xf6, 0x9b, 0xe5, 0x4b, 0x06, 0x59, 0x1e, 0xd7, 0x3f, 0xe4, 0x0c, 0x8a, 0x54, 0x6b, 0x93, 0x6a, 0x79, 0x71, 0xbf, 0x57, 0x72, 0x6c, 0x26, 0xc8, 0x11, 0xd7, 0x62, 0x5a, 0x9d, 0x85, 0x19, 0x51, 0xc1, 0xff, 0xfe, 0x23, 0x6b, 0x0e, 0xb3, 0xb8, 0x96, 0xbc, 0x4c, 0x98, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4527_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4527 = { .name = "ecdsa_secp224r1_sha512_4527", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4527_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4527_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4527_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4528 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4528_pubkey[] = { 0xd1, 0xf5, 0x15, 0x97, 0x1c, 0xc9, 0x39, 0x11, 0x53, 0x56, 0x9c, 0x2b, 0xef, 0xa1, 0xf9, 0x15, 0xe2, 0x93, 0x11, 0x10, 0x75, 0x77, 0x60, 0xeb, 0xd7, 0xe6, 0x1f, 0x86, 0x41, 0xc3, 0xdb, 0x8b, 0xee, 0xa2, 0x0b, 0x13, 0x20, 0x53, 0x89, 0xdc, 0xc4, 0xba, 0x8a, 0x6a, 0xf4, 0xd6, 0xda, 0x26, 0x04, 0xca, 0xcd, 0x71, 0x84, 0xec, 0x9d, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4528_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4528 = { .name = "ecdsa_secp224r1_sha512_4528", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4528_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4528_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4528_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 187 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4529 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4529_pubkey[] = { 0xe8, 0xf9, 0x0a, 0x71, 0x77, 0x14, 0xf0, 0x15, 0x8d, 0x95, 0x21, 0xf1, 0x8c, 0x14, 0xae, 0x8c, 0x83, 0xbf, 0x1e, 0xeb, 0xa1, 0x15, 0xc4, 0x6c, 0xbd, 0xab, 0xb2, 0x0b, 0x66, 0xf5, 0x0a, 0xc1, 0x34, 0x61, 0xc0, 0x2d, 0xa0, 0x2e, 0xdf, 0xe4, 0x29, 0x6a, 0x1f, 0x54, 0x3d, 0xde, 0x7b, 0x43, 0x59, 0xf9, 0x05, 0xe0, 0x41, 0x93, 0xd3, 0xcf, }; static const unsigned char ecdsa_secp224r1_sha512_4529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4529_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4529 = { .name = "ecdsa_secp224r1_sha512_4529", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4529_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4529_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4529_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 188 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4530 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4530_pubkey[] = { 0xe8, 0xf9, 0x0a, 0x71, 0x77, 0x14, 0xf0, 0x15, 0x8d, 0x95, 0x21, 0xf1, 0x8c, 0x14, 0xae, 0x8c, 0x83, 0xbf, 0x1e, 0xeb, 0xa1, 0x15, 0xc4, 0x6c, 0xbd, 0xab, 0xb2, 0x0b, 0x66, 0xf5, 0x0a, 0xc1, 0x34, 0x61, 0xc0, 0x2d, 0xa0, 0x2e, 0xdf, 0xe4, 0x29, 0x6a, 0x1f, 0x54, 0x3d, 0xde, 0x7b, 0x43, 0x59, 0xf9, 0x05, 0xe0, 0x41, 0x93, 0xd3, 0xcf, }; static const unsigned char ecdsa_secp224r1_sha512_4530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4530_sig[] = { 0x03, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4530 = { .name = "ecdsa_secp224r1_sha512_4530", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4530_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4530_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4530_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 189 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4531 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4531_pubkey[] = { 0x72, 0x3b, 0xc0, 0xc9, 0xb7, 0xce, 0x6e, 0xa7, 0x84, 0xec, 0x07, 0x50, 0x36, 0xce, 0xde, 0x90, 0x45, 0x2c, 0x76, 0x57, 0x6b, 0xd8, 0xfb, 0x5b, 0xe4, 0xdc, 0x0f, 0xb1, 0xcf, 0x40, 0x58, 0x20, 0xd9, 0x2f, 0x48, 0x55, 0x2b, 0x55, 0x1c, 0x7b, 0x11, 0xf4, 0x94, 0x06, 0xdc, 0x89, 0x2f, 0xd6, 0x59, 0x97, 0x1a, 0xe7, 0xf9, 0xe7, 0x4b, 0x59, }; static const unsigned char ecdsa_secp224r1_sha512_4531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4531_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4531 = { .name = "ecdsa_secp224r1_sha512_4531", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4531_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4531_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4531_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 190 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4532 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4532_pubkey[] = { 0x72, 0x3b, 0xc0, 0xc9, 0xb7, 0xce, 0x6e, 0xa7, 0x84, 0xec, 0x07, 0x50, 0x36, 0xce, 0xde, 0x90, 0x45, 0x2c, 0x76, 0x57, 0x6b, 0xd8, 0xfb, 0x5b, 0xe4, 0xdc, 0x0f, 0xb1, 0xcf, 0x40, 0x58, 0x20, 0xd9, 0x2f, 0x48, 0x55, 0x2b, 0x55, 0x1c, 0x7b, 0x11, 0xf4, 0x94, 0x06, 0xdc, 0x89, 0x2f, 0xd6, 0x59, 0x97, 0x1a, 0xe7, 0xf9, 0xe7, 0x4b, 0x59, }; static const unsigned char ecdsa_secp224r1_sha512_4532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4532_sig[] = { 0x03, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4532 = { .name = "ecdsa_secp224r1_sha512_4532", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4532_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4532_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4532_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 191 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4533 for ECDSA, tcId is 192 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4533_pubkey[] = { 0xa0, 0xdc, 0xce, 0x12, 0x70, 0x84, 0xf9, 0x55, 0xa4, 0xe4, 0x9a, 0x7c, 0x86, 0xb9, 0xb9, 0x1b, 0x05, 0xae, 0x7a, 0xfd, 0x6e, 0xb0, 0x72, 0x25, 0xa6, 0x54, 0x1d, 0x88, 0xf1, 0x0a, 0x1d, 0x4f, 0xef, 0x93, 0x93, 0x49, 0x67, 0xbb, 0x6c, 0x5d, 0x87, 0x92, 0xbb, 0xd4, 0x7a, 0xb3, 0xab, 0xb4, 0x06, 0x89, 0x9a, 0x00, 0xb1, 0xc9, 0x1b, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha512_4533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4533_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4533 = { .name = "ecdsa_secp224r1_sha512_4533", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4533_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4533_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4533_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 192 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4534 for ECDSA, tcId is 193 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4534_pubkey[] = { 0xa0, 0xdc, 0xce, 0x12, 0x70, 0x84, 0xf9, 0x55, 0xa4, 0xe4, 0x9a, 0x7c, 0x86, 0xb9, 0xb9, 0x1b, 0x05, 0xae, 0x7a, 0xfd, 0x6e, 0xb0, 0x72, 0x25, 0xa6, 0x54, 0x1d, 0x88, 0xf1, 0x0a, 0x1d, 0x4f, 0xef, 0x93, 0x93, 0x49, 0x67, 0xbb, 0x6c, 0x5d, 0x87, 0x92, 0xbb, 0xd4, 0x7a, 0xb3, 0xab, 0xb4, 0x06, 0x89, 0x9a, 0x00, 0xb1, 0xc9, 0x1b, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha512_4534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4534_sig[] = { 0x03, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4534 = { .name = "ecdsa_secp224r1_sha512_4534", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4534_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4534_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4534_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 193 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4535 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4535_pubkey[] = { 0xa0, 0xdc, 0xce, 0x12, 0x70, 0x84, 0xf9, 0x55, 0xa4, 0xe4, 0x9a, 0x7c, 0x86, 0xb9, 0xb9, 0x1b, 0x05, 0xae, 0x7a, 0xfd, 0x6e, 0xb0, 0x72, 0x25, 0xa6, 0x54, 0x1d, 0x88, 0xf1, 0x0a, 0x1d, 0x4f, 0xef, 0x93, 0x93, 0x49, 0x67, 0xbb, 0x6c, 0x5d, 0x87, 0x92, 0xbb, 0xd4, 0x7a, 0xb3, 0xab, 0xb4, 0x06, 0x89, 0x9a, 0x00, 0xb1, 0xc9, 0x1b, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha512_4535_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4535_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4535 = { .name = "ecdsa_secp224r1_sha512_4535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4535_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4535_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4535_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 194 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4536 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4536_pubkey[] = { 0xe1, 0x0a, 0xbc, 0x9f, 0xe1, 0x5b, 0xcc, 0x63, 0xf0, 0x09, 0xe1, 0x61, 0xaa, 0xee, 0x26, 0x60, 0x24, 0x15, 0xbc, 0xb4, 0x5b, 0xc6, 0xc9, 0x9c, 0xe7, 0xab, 0x2b, 0x10, 0xfb, 0xeb, 0xff, 0x4e, 0x4d, 0xe0, 0xdf, 0xaa, 0xf0, 0x45, 0x94, 0xdd, 0x60, 0x3c, 0xee, 0x80, 0xb5, 0xd9, 0xab, 0x78, 0xb6, 0x70, 0x76, 0x08, 0xa9, 0x5e, 0x57, 0x4d, }; static const unsigned char ecdsa_secp224r1_sha512_4536_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4536_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4536 = { .name = "ecdsa_secp224r1_sha512_4536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4536_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4536_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4536_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 195 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4537 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4537_pubkey[] = { 0xfb, 0xfa, 0xbe, 0x6c, 0x64, 0x08, 0x56, 0xae, 0x5d, 0xcd, 0xc9, 0xe4, 0xb7, 0x06, 0xfb, 0x3d, 0xb2, 0x3d, 0xdc, 0xa4, 0x6b, 0x80, 0xb9, 0x05, 0x7a, 0xb9, 0xe4, 0x4f, 0x6b, 0x62, 0xd4, 0x69, 0x79, 0x77, 0xff, 0xe1, 0x9b, 0xf3, 0x18, 0x50, 0x83, 0xb1, 0xed, 0xe2, 0x16, 0x1a, 0xa5, 0x72, 0x54, 0x01, 0xa8, 0xf5, 0x78, 0x51, 0xfc, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4537_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4537_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4537 = { .name = "ecdsa_secp224r1_sha512_4537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4537_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4537_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4537_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 196 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4538 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4538_pubkey[] = { 0x91, 0xa8, 0x5b, 0x3c, 0x5e, 0x90, 0xb4, 0x09, 0xf6, 0xb8, 0xd3, 0xbc, 0xa9, 0x11, 0x7a, 0x54, 0xa4, 0x0f, 0x41, 0x62, 0xb3, 0x88, 0xbb, 0x93, 0x67, 0xfd, 0x64, 0x39, 0xf1, 0xce, 0xdf, 0x20, 0xab, 0x52, 0xeb, 0x71, 0x54, 0xb7, 0xea, 0x1f, 0x29, 0x34, 0xa9, 0xc8, 0x29, 0x29, 0x06, 0xe1, 0x8a, 0x0e, 0x57, 0x20, 0x02, 0xcd, 0x2f, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha512_4538_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4538_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4538 = { .name = "ecdsa_secp224r1_sha512_4538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4538_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4538_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4538_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 197 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4539 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4539_pubkey[] = { 0xd1, 0xca, 0x7a, 0x5c, 0x1a, 0xa0, 0x86, 0xb2, 0x95, 0x1c, 0x1a, 0xc1, 0x4e, 0x00, 0x5f, 0x00, 0x72, 0xfb, 0x28, 0x38, 0x39, 0x73, 0xa0, 0x51, 0x17, 0xf9, 0x65, 0x2c, 0xce, 0x52, 0x3c, 0x05, 0xeb, 0xe9, 0x49, 0x91, 0xc4, 0x7f, 0xec, 0xd2, 0x41, 0xd0, 0xa0, 0x7e, 0x86, 0xc8, 0x8a, 0xb3, 0xc6, 0x20, 0xea, 0xe7, 0x92, 0xab, 0xa3, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha512_4539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4539_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4539 = { .name = "ecdsa_secp224r1_sha512_4539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4539_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4539_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4539_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 198 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4540 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4540_pubkey[] = { 0x35, 0x65, 0xaf, 0x2a, 0x48, 0x1f, 0x93, 0x90, 0xe7, 0x1d, 0x76, 0x42, 0x71, 0x7d, 0x04, 0x27, 0xe0, 0x2e, 0x5e, 0x7d, 0xe8, 0xa3, 0xc0, 0xc1, 0xff, 0xd5, 0xf3, 0x3e, 0x94, 0x74, 0x54, 0x7e, 0x0d, 0x54, 0xdc, 0xaa, 0xe8, 0x54, 0x94, 0xc7, 0x4f, 0xaa, 0x23, 0x39, 0x4a, 0x05, 0x6e, 0x41, 0xc2, 0x83, 0x96, 0x38, 0xb8, 0x52, 0x3b, 0x72, }; static const unsigned char ecdsa_secp224r1_sha512_4540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4540_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4540 = { .name = "ecdsa_secp224r1_sha512_4540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4540_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4540_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4540_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 199 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4541 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4541_pubkey[] = { 0x29, 0xc6, 0x94, 0x79, 0x0f, 0xbd, 0x23, 0x77, 0x7c, 0xfd, 0xe4, 0x34, 0xba, 0xdc, 0xb0, 0x61, 0xa3, 0x26, 0xa5, 0x53, 0x42, 0x64, 0xbc, 0xfe, 0x19, 0x3c, 0x71, 0x6c, 0x17, 0x8a, 0x94, 0x3f, 0x7b, 0xd4, 0xfb, 0x13, 0x25, 0x65, 0xba, 0x60, 0x23, 0x58, 0xb1, 0x34, 0x33, 0xa5, 0x21, 0x7a, 0xc0, 0x4c, 0xc0, 0x35, 0x56, 0x6c, 0x73, 0xf8, }; static const unsigned char ecdsa_secp224r1_sha512_4541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4541_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4541 = { .name = "ecdsa_secp224r1_sha512_4541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4541_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4541_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4541_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 200 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4542 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4542_pubkey[] = { 0x8f, 0xd4, 0x3a, 0xac, 0x85, 0x56, 0xf4, 0x66, 0x5f, 0xd4, 0xc1, 0x3f, 0x4e, 0x15, 0x11, 0x40, 0xf4, 0x2a, 0x39, 0x57, 0x63, 0xc5, 0xda, 0x24, 0x7a, 0x39, 0x8f, 0x97, 0x96, 0x87, 0xd2, 0x4a, 0x9f, 0xcd, 0x6b, 0x20, 0xa5, 0x94, 0x51, 0xc3, 0x48, 0xa6, 0x36, 0x4d, 0x0f, 0xfa, 0xf0, 0xec, 0xfe, 0x16, 0x43, 0x13, 0xdb, 0x65, 0x94, 0xab, }; static const unsigned char ecdsa_secp224r1_sha512_4542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4542_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4542 = { .name = "ecdsa_secp224r1_sha512_4542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4542_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4542_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4542_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 201 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4543 for ECDSA, tcId is 202 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4543_pubkey[] = { 0xc2, 0xae, 0x0e, 0x35, 0x7a, 0x43, 0xf9, 0x75, 0x49, 0xa7, 0x25, 0xae, 0x37, 0x04, 0x44, 0x90, 0x51, 0xc9, 0x6b, 0xf3, 0x63, 0x33, 0x55, 0xc3, 0x5b, 0x6e, 0xb7, 0xe9, 0x6a, 0x84, 0xdf, 0xb6, 0xd4, 0x51, 0x7d, 0x1d, 0xe4, 0x6b, 0x18, 0x78, 0x6a, 0x50, 0x61, 0x78, 0x72, 0x4b, 0xf4, 0xae, 0x4f, 0x9e, 0x41, 0x8c, 0x75, 0xab, 0x17, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4543_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4543_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4543 = { .name = "ecdsa_secp224r1_sha512_4543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4543_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4543_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4543_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 202 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4544 for ECDSA, tcId is 203 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4544_pubkey[] = { 0xc2, 0xae, 0x0e, 0x35, 0x7a, 0x43, 0xf9, 0x75, 0x49, 0xa7, 0x25, 0xae, 0x37, 0x04, 0x44, 0x90, 0x51, 0xc9, 0x6b, 0xf3, 0x63, 0x33, 0x55, 0xc3, 0x5b, 0x6e, 0xb7, 0xe9, 0x6a, 0x84, 0xdf, 0xb6, 0xd4, 0x51, 0x7d, 0x1d, 0xe4, 0x6b, 0x18, 0x78, 0x6a, 0x50, 0x61, 0x78, 0x72, 0x4b, 0xf4, 0xae, 0x4f, 0x9e, 0x41, 0x8c, 0x75, 0xab, 0x17, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4544_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4544_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4544 = { .name = "ecdsa_secp224r1_sha512_4544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4544_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4544_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4544_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 203 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4545 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4545_pubkey[] = { 0x96, 0x16, 0x17, 0xd9, 0x85, 0x5f, 0x20, 0x2f, 0xd6, 0x00, 0xb5, 0x84, 0xab, 0xe9, 0x4a, 0x46, 0x67, 0x49, 0x27, 0xcf, 0xdc, 0x63, 0x33, 0xc5, 0xbe, 0x56, 0xce, 0x7b, 0x89, 0xb4, 0x15, 0x0d, 0x9c, 0xcd, 0xfb, 0xd7, 0x7e, 0x76, 0x82, 0xca, 0x86, 0x2c, 0x0c, 0x3e, 0x96, 0xd8, 0x9c, 0x91, 0x8b, 0x7d, 0x3b, 0x7b, 0xbb, 0x92, 0xff, 0x43, }; static const unsigned char ecdsa_secp224r1_sha512_4545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4545_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4545 = { .name = "ecdsa_secp224r1_sha512_4545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4545_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4545_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4545_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 204 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4546 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4546_pubkey[] = { 0x8d, 0xb5, 0x3f, 0xe4, 0x16, 0x8d, 0xf4, 0x3e, 0xe5, 0x38, 0xbc, 0x9d, 0x75, 0x8b, 0x8c, 0x26, 0xfa, 0x43, 0x3f, 0xb0, 0x10, 0x1b, 0xcb, 0xad, 0x03, 0x95, 0x85, 0xde, 0x23, 0x10, 0xdf, 0xc2, 0x08, 0x35, 0x37, 0x9e, 0xa4, 0x06, 0x99, 0x30, 0x36, 0xfd, 0x4b, 0xb0, 0xf6, 0x7d, 0x14, 0x76, 0x0e, 0x1e, 0xb4, 0x14, 0xc3, 0x2d, 0xd1, 0xf3, }; static const unsigned char ecdsa_secp224r1_sha512_4546_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4546_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4546 = { .name = "ecdsa_secp224r1_sha512_4546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4546_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4546_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4546_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 205 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4547 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4547_pubkey[] = { 0x0b, 0x7f, 0xa6, 0x19, 0x83, 0xe7, 0xa2, 0x27, 0xf7, 0x38, 0x84, 0x7d, 0x45, 0x7f, 0x3e, 0x8c, 0xf0, 0xa4, 0x08, 0x5c, 0x31, 0x2f, 0xb6, 0xdc, 0xec, 0x82, 0x25, 0x70, 0xee, 0x74, 0x34, 0xce, 0x2f, 0xf3, 0xfb, 0xcc, 0x1d, 0x09, 0x60, 0x37, 0x98, 0x76, 0xe9, 0xdd, 0x5b, 0xed, 0x28, 0xaa, 0xd5, 0x76, 0xee, 0xa2, 0x33, 0xa4, 0x4b, 0x0d, }; static const unsigned char ecdsa_secp224r1_sha512_4547_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4547_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4547 = { .name = "ecdsa_secp224r1_sha512_4547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4547_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4547_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4547_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 206 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4548 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4548_pubkey[] = { 0x55, 0xb2, 0x12, 0x91, 0x9c, 0xd6, 0x88, 0x6b, 0x13, 0xcd, 0x7a, 0x25, 0x56, 0x43, 0x0c, 0xe4, 0x42, 0xe8, 0x69, 0x42, 0xf1, 0xbf, 0x6e, 0x46, 0x18, 0xae, 0x36, 0x3e, 0x79, 0x5c, 0x66, 0x4a, 0xe9, 0x60, 0xee, 0x11, 0x06, 0x30, 0x8b, 0x7d, 0xba, 0x91, 0x24, 0x0a, 0xb0, 0xc3, 0xef, 0x8b, 0xeb, 0x7d, 0x0a, 0x4d, 0x7a, 0x10, 0x2a, 0x7f, }; static const unsigned char ecdsa_secp224r1_sha512_4548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4548_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4548 = { .name = "ecdsa_secp224r1_sha512_4548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4548_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4548_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4548_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 207 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4549 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4549_pubkey[] = { 0xc0, 0x28, 0x8a, 0x63, 0xce, 0x32, 0x26, 0x3f, 0x36, 0x51, 0x19, 0x8d, 0xab, 0x80, 0x1c, 0x89, 0x6f, 0xb9, 0x30, 0x83, 0x62, 0xfc, 0x40, 0xe3, 0x59, 0x59, 0xe1, 0x40, 0x10, 0xd0, 0x0b, 0xd1, 0xc2, 0x28, 0xcf, 0xb6, 0xa5, 0xfa, 0xa6, 0x47, 0x38, 0x78, 0x04, 0xe3, 0x4f, 0xa1, 0xa7, 0xf9, 0xfc, 0xc4, 0x72, 0xc0, 0x5e, 0xa2, 0xee, 0xda, }; static const unsigned char ecdsa_secp224r1_sha512_4549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4549_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4549 = { .name = "ecdsa_secp224r1_sha512_4549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4549_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4549_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4549_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 208 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4550 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4550_pubkey[] = { 0x0c, 0x8e, 0x2c, 0xb5, 0xf6, 0xa9, 0x03, 0xe1, 0xcc, 0xcf, 0x3a, 0xc2, 0xd4, 0x65, 0xf1, 0xd0, 0xdc, 0x34, 0x52, 0x23, 0x7f, 0xd9, 0xe8, 0xa4, 0xdf, 0x5d, 0x53, 0x41, 0xd0, 0x44, 0xca, 0x8c, 0xee, 0xcb, 0x54, 0xa1, 0xb9, 0x51, 0x27, 0x09, 0x71, 0xe5, 0xab, 0x4e, 0xb2, 0x26, 0x11, 0x6c, 0x48, 0xc5, 0x53, 0x49, 0x9d, 0x1a, 0x48, 0x99, }; static const unsigned char ecdsa_secp224r1_sha512_4550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4550_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4550 = { .name = "ecdsa_secp224r1_sha512_4550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4550_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4550_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4550_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 209 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4551 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4551_pubkey[] = { 0x1f, 0xf6, 0xb9, 0x90, 0x17, 0x84, 0xd8, 0x8b, 0x25, 0x52, 0x7b, 0x37, 0x02, 0x62, 0x2a, 0x27, 0x34, 0xb8, 0x3d, 0x8a, 0x0f, 0xed, 0x0f, 0x74, 0x0b, 0xb7, 0x84, 0xe2, 0x0e, 0x83, 0xee, 0x0a, 0xa8, 0x29, 0x33, 0xdc, 0xdc, 0x63, 0x7a, 0x37, 0x60, 0x60, 0x6a, 0x04, 0x97, 0x4c, 0x2d, 0xc7, 0x5f, 0x12, 0x09, 0x5f, 0x8f, 0xda, 0xf0, 0x03, }; static const unsigned char ecdsa_secp224r1_sha512_4551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4551_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4551 = { .name = "ecdsa_secp224r1_sha512_4551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4551_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4551_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4551_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 210 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4552 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4552_pubkey[] = { 0xb2, 0x1f, 0xac, 0xa1, 0x7b, 0x68, 0x05, 0x87, 0x52, 0xd9, 0x43, 0xa8, 0x1f, 0x85, 0x3b, 0x80, 0x05, 0x62, 0xdf, 0x8b, 0x21, 0x72, 0xe1, 0x50, 0x95, 0x3c, 0x62, 0x42, 0x01, 0xc2, 0xc0, 0xf5, 0xed, 0x3b, 0x34, 0x29, 0x56, 0xca, 0xcd, 0x26, 0xf9, 0x09, 0x75, 0x62, 0xd0, 0xfb, 0x0a, 0x3d, 0xda, 0xb9, 0x1c, 0x5a, 0xe7, 0xe9, 0x0c, 0x01, }; static const unsigned char ecdsa_secp224r1_sha512_4552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4552_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc1, 0x52, 0xaa, 0xfe, 0xa3, 0xa8, 0x61, 0x2e, 0xc8, 0x3a, 0x7d, 0xc9, 0x44, 0x8e, 0x66, 0x00, 0xae, 0x6a, 0x77, 0x2d, 0x75, 0xad, 0x2c, 0xaf, 0x19, 0xf9, 0x39, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4552 = { .name = "ecdsa_secp224r1_sha512_4552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4552_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4552_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4552_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 211 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4553 for ECDSA, tcId is 212 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4553_pubkey[] = { 0xf4, 0x92, 0x78, 0x41, 0x9e, 0x4f, 0x50, 0x68, 0x89, 0xb0, 0x16, 0x8b, 0x1f, 0xce, 0x1f, 0x87, 0xee, 0x5b, 0x61, 0xef, 0xa0, 0xe7, 0x3c, 0x78, 0x33, 0xee, 0xb2, 0x9c, 0xb1, 0xb3, 0x34, 0xf8, 0x1b, 0xe8, 0xf0, 0x5f, 0x3b, 0x2e, 0x98, 0xd3, 0x8b, 0x03, 0x0c, 0xff, 0x57, 0x94, 0x7b, 0x96, 0x13, 0x5e, 0xc4, 0x46, 0x5c, 0x5e, 0x53, 0xf3, }; static const unsigned char ecdsa_secp224r1_sha512_4553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4553_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4e, 0x15, 0x8e, 0xf8, 0x6c, 0xc5, 0x30, 0x54, 0xf1, 0x63, 0x5c, 0x74, 0xe6, 0x55, 0x08, 0x20, 0x60, 0x48, 0x92, 0x93, 0x15, 0xe0, 0x97, 0xa5, 0x9f, 0x15, 0x19, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4553 = { .name = "ecdsa_secp224r1_sha512_4553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4553_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4553_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4553_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 212 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4554 for ECDSA, tcId is 213 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4554_pubkey[] = { 0x75, 0xc6, 0xa8, 0x86, 0xe2, 0x2b, 0xc0, 0x4b, 0x99, 0x6d, 0x4a, 0x19, 0x57, 0x5c, 0xe0, 0xc6, 0x68, 0x6b, 0x44, 0x9b, 0x6e, 0x05, 0xef, 0x13, 0x01, 0xbd, 0x8b, 0xa2, 0x33, 0xab, 0x29, 0xf6, 0x5d, 0xf2, 0xd4, 0x14, 0x4d, 0xa2, 0xb2, 0x1e, 0x90, 0x35, 0x9a, 0x06, 0x47, 0x65, 0xc9, 0x5e, 0x32, 0x5b, 0xb7, 0xe5, 0x4c, 0xa2, 0x8e, 0x40, }; static const unsigned char ecdsa_secp224r1_sha512_4554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4554_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0xac, 0x0b, 0x24, 0x51, 0x2e, 0x84, 0xf6, 0xfb, 0x01, 0x56, 0x20, 0xd6, 0x89, 0xd3, 0x0d, 0x14, 0x73, 0x6c, 0xf0, 0x0c, 0x18, 0x83, 0x87, 0x53, 0xc3, 0x81, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4554 = { .name = "ecdsa_secp224r1_sha512_4554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4554_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4554_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4554_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4555 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4555_pubkey[] = { 0xf5, 0x54, 0x01, 0x4c, 0xc1, 0x4f, 0x31, 0x9c, 0x18, 0xf5, 0xfa, 0x6c, 0xd7, 0x39, 0x24, 0x90, 0x75, 0xff, 0x35, 0xba, 0x3b, 0x2a, 0xfd, 0xab, 0x53, 0x29, 0xef, 0x0f, 0xd2, 0xc5, 0x01, 0xf2, 0x5a, 0x70, 0x4a, 0xdd, 0xbd, 0x85, 0xc0, 0xe0, 0x22, 0x74, 0x89, 0x56, 0xe5, 0x99, 0x8d, 0x99, 0xc3, 0x87, 0xfb, 0xfd, 0x34, 0x3c, 0x89, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha512_4555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4555_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x52, 0x21, 0xf3, 0xc2, 0xde, 0x0c, 0x6f, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0x79, 0xb5, 0x7f, 0x57, 0x51, 0x2b, 0x81, 0x4f, 0x41, 0x3a, 0xeb, 0xaf, 0xe7, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4555 = { .name = "ecdsa_secp224r1_sha512_4555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4555_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4555_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4555_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4556 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4556_pubkey[] = { 0xbc, 0xfa, 0x8d, 0xb7, 0x04, 0xac, 0xa5, 0x6f, 0xeb, 0x23, 0xbd, 0x4b, 0x40, 0x49, 0x21, 0x32, 0x33, 0xaa, 0x65, 0x20, 0x45, 0xa0, 0xa8, 0x1a, 0x2e, 0x0d, 0xa6, 0x4c, 0x09, 0x1b, 0x35, 0x9f, 0x7b, 0xe7, 0xae, 0x00, 0xa0, 0xe9, 0x77, 0x7d, 0x95, 0x10, 0xf8, 0x47, 0x43, 0x0b, 0x5d, 0xfd, 0xa8, 0x78, 0xe6, 0x6d, 0x4f, 0xb0, 0xd6, 0x2f, }; static const unsigned char ecdsa_secp224r1_sha512_4556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4556_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x22, 0x1f, 0x3c, 0x2d, 0xe0, 0xc6, 0xfb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x1b, 0x5a, 0x31, 0x20, 0x63, 0xd8, 0x7b, 0xeb, 0x4c, 0x30, 0xc2, 0x89, 0x21, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4556 = { .name = "ecdsa_secp224r1_sha512_4556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4556_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4556_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4556_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4557 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4557_pubkey[] = { 0x9f, 0xd4, 0xd8, 0x28, 0xae, 0x98, 0x05, 0x6b, 0xe5, 0x8f, 0xa6, 0x9e, 0xaf, 0x9c, 0xde, 0x98, 0xca, 0x0e, 0xd9, 0xb4, 0x15, 0xd6, 0x46, 0x3f, 0xa1, 0x86, 0x4d, 0x9f, 0xb2, 0xa5, 0xe4, 0x1f, 0x10, 0xe8, 0x78, 0x94, 0x50, 0x21, 0x7d, 0xaa, 0xfd, 0x25, 0x9f, 0x20, 0x4a, 0xed, 0x87, 0xb0, 0xe2, 0x61, 0x00, 0xf4, 0x3f, 0x7c, 0x5b, 0xad, }; static const unsigned char ecdsa_secp224r1_sha512_4557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4557_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x44, 0x3e, 0x78, 0x5b, 0xc1, 0x8d, 0xf7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x36, 0xb4, 0x62, 0x40, 0xc7, 0xb0, 0xf7, 0xd6, 0x98, 0x61, 0x85, 0x12, 0x42, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4557 = { .name = "ecdsa_secp224r1_sha512_4557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4557_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4557_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4557_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4558 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4558_pubkey[] = { 0x61, 0x23, 0xa3, 0x39, 0x69, 0xf2, 0xe0, 0x36, 0xfc, 0x27, 0x88, 0x5f, 0x55, 0x75, 0x5d, 0x39, 0x1c, 0xb0, 0xc2, 0xd3, 0xfa, 0xfb, 0x0c, 0x40, 0x56, 0xc1, 0x99, 0x5d, 0xa0, 0x3b, 0xb4, 0x90, 0x04, 0x7e, 0x88, 0xfe, 0x7e, 0x60, 0x89, 0x12, 0xa6, 0x20, 0x5b, 0x65, 0xf9, 0x50, 0xa8, 0xa0, 0xa3, 0x60, 0x36, 0x2d, 0x33, 0x39, 0xe6, 0x2c, }; static const unsigned char ecdsa_secp224r1_sha512_4558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4558_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc2, 0xde, 0x0c, 0x6f, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x4f, 0xd5, 0x01, 0x36, 0x87, 0x8b, 0x7e, 0x13, 0x41, 0x52, 0x1b, 0x2f, 0x88, 0x0b, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4558 = { .name = "ecdsa_secp224r1_sha512_4558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4558_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4558_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4558_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4559 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4559_pubkey[] = { 0xa1, 0x0b, 0x7a, 0xa7, 0x78, 0x5b, 0x2f, 0x27, 0x91, 0xb1, 0xd4, 0xc4, 0x3e, 0x12, 0x7a, 0xab, 0x56, 0x69, 0x61, 0x2d, 0x74, 0x0b, 0x38, 0xab, 0xaa, 0x0d, 0x30, 0x6e, 0xc1, 0x78, 0xf2, 0x16, 0xfa, 0xd3, 0x79, 0xad, 0x80, 0xba, 0xa0, 0xea, 0xc5, 0x7b, 0xf9, 0xa5, 0x6d, 0x44, 0x6d, 0x68, 0x55, 0x76, 0x37, 0x1b, 0x74, 0x76, 0x23, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4559_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9f, 0x56, 0xaa, 0x80, 0xae, 0x2b, 0xcf, 0x68, 0x9b, 0xe2, 0xc1, 0x1b, 0x5d, 0xb7, 0xe3, 0xa2, 0x89, 0x83, 0xb4, 0xa7, 0x59, 0x06, 0x92, 0xed, 0xcf, 0x5f, 0x8d, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4559 = { .name = "ecdsa_secp224r1_sha512_4559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4559_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4559_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4559_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4560 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4560_pubkey[] = { 0xe0, 0x12, 0xc2, 0x3c, 0x68, 0x67, 0xe9, 0x55, 0x33, 0x13, 0xd0, 0x17, 0x9e, 0x9d, 0xb9, 0x53, 0xde, 0x7c, 0x36, 0x8c, 0xdb, 0x59, 0xab, 0xe0, 0x5f, 0x1c, 0x52, 0xba, 0xd3, 0x52, 0xa5, 0x7b, 0xb5, 0x9c, 0x45, 0x15, 0x93, 0x52, 0xc1, 0x14, 0xee, 0xb6, 0x96, 0xec, 0x3b, 0x79, 0xca, 0xa8, 0x35, 0xef, 0x5c, 0x2a, 0xe7, 0x1d, 0xdc, 0xfa, }; static const unsigned char ecdsa_secp224r1_sha512_4560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4560_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0xad, 0x55, 0x01, 0x5c, 0x57, 0x9e, 0xd1, 0x37, 0xc5, 0x82, 0x36, 0xbb, 0x70, 0xb0, 0xa2, 0x32, 0x4e, 0x79, 0x10, 0x9e, 0x2f, 0xfc, 0x96, 0x42, 0x62, 0xf1, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4560 = { .name = "ecdsa_secp224r1_sha512_4560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4560_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4560_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4560_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4561 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4561_pubkey[] = { 0xb9, 0xcc, 0xd7, 0xf0, 0xf3, 0x59, 0x49, 0x54, 0xaa, 0x72, 0x9b, 0xda, 0x4b, 0xe8, 0x83, 0xe1, 0x07, 0xe7, 0xf1, 0x22, 0x64, 0x65, 0xb6, 0x4c, 0x2c, 0xa7, 0x10, 0x57, 0x89, 0x82, 0x9d, 0x78, 0x70, 0x16, 0xc5, 0xc1, 0x18, 0xd3, 0xba, 0x33, 0x17, 0xa2, 0xda, 0x0a, 0x0d, 0xaa, 0xf5, 0x6d, 0x30, 0x04, 0xc1, 0x09, 0x62, 0x33, 0x3a, 0x9f, }; static const unsigned char ecdsa_secp224r1_sha512_4561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4561_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x28, 0x94, 0x44, 0xbb, 0xd2, 0x2d, 0xb7, 0xf7, 0x36, 0x8f, 0x84, 0x11, 0xc2, 0x7e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4561 = { .name = "ecdsa_secp224r1_sha512_4561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4561_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4561_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4561_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4562 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4562_pubkey[] = { 0x32, 0x1a, 0x17, 0xde, 0x02, 0x4f, 0xe8, 0x9c, 0x18, 0x64, 0xe1, 0x28, 0xb9, 0xe0, 0xaf, 0x3e, 0x6b, 0x48, 0x80, 0x0a, 0x70, 0xd6, 0xe8, 0x02, 0xb8, 0xb6, 0xdf, 0xfe, 0xb1, 0xa8, 0xae, 0x96, 0x91, 0x1d, 0xdb, 0xde, 0xb8, 0x39, 0x48, 0xa9, 0x92, 0xb1, 0xb0, 0xfe, 0x31, 0x66, 0x79, 0xc6, 0x48, 0x14, 0xb6, 0xa4, 0x5e, 0xc5, 0x6f, 0xe9, }; static const unsigned char ecdsa_secp224r1_sha512_4562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4562_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0x56, 0x05, 0x92, 0x28, 0x97, 0x42, 0x7b, 0x7d, 0x80, 0xab, 0x10, 0x6b, 0x44, 0x74, 0xd7, 0xfa, 0x96, 0x2e, 0x97, 0x0f, 0xfa, 0xd6, 0x66, 0x58, 0x0f, 0xd5, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4562 = { .name = "ecdsa_secp224r1_sha512_4562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4562_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4562_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4562_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4563 for ECDSA, tcId is 222 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4563_pubkey[] = { 0x08, 0x84, 0x2f, 0x19, 0xb1, 0x14, 0xd1, 0x6b, 0xe2, 0x7b, 0xb4, 0xb6, 0x97, 0x13, 0x77, 0xed, 0x6b, 0x1d, 0x09, 0x15, 0xe1, 0x33, 0xa9, 0xeb, 0xf0, 0x16, 0x74, 0xee, 0x4c, 0x97, 0x73, 0x8b, 0x69, 0x12, 0xff, 0x71, 0x55, 0x3c, 0x4a, 0x74, 0x7c, 0x78, 0x2e, 0xdd, 0xd9, 0xd2, 0xa2, 0x0f, 0xbe, 0xae, 0x38, 0x86, 0x4d, 0x21, 0x78, 0x59, }; static const unsigned char ecdsa_secp224r1_sha512_4563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4563_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4563 = { .name = "ecdsa_secp224r1_sha512_4563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4563_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4563_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4563_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 222 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4564 for ECDSA, tcId is 223 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4564_pubkey[] = { 0x84, 0xd6, 0x51, 0x59, 0x6f, 0xd2, 0x34, 0x8f, 0x1b, 0xb5, 0xc8, 0xae, 0x9d, 0x22, 0xc8, 0xb2, 0x1c, 0x4f, 0x75, 0x09, 0x24, 0x0b, 0x60, 0x9a, 0xba, 0xd5, 0xcc, 0x24, 0x31, 0x96, 0xb6, 0x7b, 0x4c, 0xfa, 0xff, 0xaf, 0x0d, 0xce, 0x25, 0xab, 0x00, 0xbf, 0xea, 0xa1, 0xa6, 0x48, 0x21, 0x33, 0x2e, 0xfa, 0x6d, 0xed, 0xd8, 0x7c, 0xc9, 0xe7, }; static const unsigned char ecdsa_secp224r1_sha512_4564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4564_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4564 = { .name = "ecdsa_secp224r1_sha512_4564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4564_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4564_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4564_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 223 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4565 for ECDSA, tcId is 224 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4565_pubkey[] = { 0x8f, 0xbe, 0x39, 0xe7, 0x5b, 0xc4, 0xfd, 0x8a, 0x15, 0xe4, 0xb5, 0x2e, 0x4b, 0xbe, 0xbe, 0x20, 0x47, 0xd5, 0x43, 0x85, 0xa7, 0x11, 0x7e, 0x17, 0xa4, 0xd0, 0xb2, 0xb2, 0x07, 0xab, 0xdb, 0x40, 0x82, 0x45, 0x38, 0xe5, 0x78, 0x7c, 0x71, 0x8d, 0x65, 0x48, 0x58, 0x3f, 0x52, 0x3f, 0x6b, 0x5b, 0xbf, 0xa2, 0x39, 0xa7, 0xf6, 0x22, 0xc8, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha512_4565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4565_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4565 = { .name = "ecdsa_secp224r1_sha512_4565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4565_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4565_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4565_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 224 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4566 for ECDSA, tcId is 225 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4566_pubkey[] = { 0xc3, 0x36, 0xb3, 0x40, 0xbc, 0x99, 0xd4, 0x6c, 0x2c, 0x52, 0xdf, 0x54, 0x28, 0xb6, 0xa0, 0xc4, 0xeb, 0x2d, 0xa7, 0x6c, 0x42, 0x35, 0x30, 0xf7, 0x67, 0xcc, 0x76, 0x52, 0xf3, 0xab, 0x99, 0x81, 0xbd, 0x05, 0xd2, 0x95, 0x51, 0x23, 0x93, 0x5a, 0x37, 0x9c, 0xbb, 0x2d, 0x43, 0x61, 0xa1, 0x7d, 0x19, 0x87, 0x86, 0x73, 0xe1, 0xe1, 0x7d, 0xcc, }; static const unsigned char ecdsa_secp224r1_sha512_4566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4566_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4566 = { .name = "ecdsa_secp224r1_sha512_4566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4566_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4566_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4566_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 225 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4567 for ECDSA, tcId is 226 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4567_pubkey[] = { 0x81, 0x6f, 0xdc, 0xf3, 0x70, 0x82, 0x7e, 0x3f, 0x77, 0x71, 0x56, 0x4e, 0x1a, 0xa7, 0x3e, 0xd7, 0x3e, 0x62, 0x55, 0x6d, 0xea, 0xda, 0xd8, 0x97, 0x11, 0xce, 0xf6, 0x63, 0xed, 0xcd, 0xa0, 0xea, 0x42, 0x23, 0x5f, 0x4c, 0x9a, 0x8c, 0x13, 0xf7, 0x87, 0x35, 0x1f, 0xfe, 0x5c, 0xeb, 0x32, 0xf1, 0x5f, 0xc0, 0xcc, 0xb2, 0x4e, 0x0a, 0x40, 0x9c, }; static const unsigned char ecdsa_secp224r1_sha512_4567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4567_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4567 = { .name = "ecdsa_secp224r1_sha512_4567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4567_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4567_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4567_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 226 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4568 for ECDSA, tcId is 227 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4568_pubkey[] = { 0x64, 0x29, 0xd2, 0xb7, 0xb0, 0x7a, 0xb0, 0xd5, 0xea, 0x35, 0x29, 0x02, 0xdf, 0x0e, 0xfc, 0x03, 0x6d, 0x72, 0x70, 0xa0, 0xa6, 0xed, 0x39, 0xf6, 0x35, 0xd0, 0x4f, 0x39, 0x4f, 0x79, 0x32, 0x88, 0x3b, 0xc4, 0x53, 0x94, 0x15, 0x13, 0x24, 0xaa, 0xb2, 0x6a, 0xe2, 0x9b, 0xbd, 0x73, 0x85, 0xfa, 0x6a, 0x42, 0xc3, 0xdb, 0x84, 0x43, 0x28, 0x97, }; static const unsigned char ecdsa_secp224r1_sha512_4568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4568_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4568 = { .name = "ecdsa_secp224r1_sha512_4568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4568_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4568_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4568_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4569 for ECDSA, tcId is 228 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4569_pubkey[] = { 0x28, 0x8f, 0x38, 0xfd, 0x77, 0xdd, 0x16, 0x03, 0xff, 0x02, 0x75, 0xcb, 0x11, 0xcb, 0xa2, 0x80, 0xae, 0x34, 0x08, 0xaf, 0xfa, 0x6a, 0x76, 0x0f, 0x39, 0x6f, 0x1a, 0x1e, 0xc8, 0x4c, 0xa6, 0xfd, 0x77, 0x2c, 0x6a, 0xc6, 0xcc, 0x52, 0x3c, 0xc7, 0x2c, 0x2e, 0x7e, 0x95, 0xeb, 0x6a, 0x36, 0xa6, 0x6b, 0x5c, 0xca, 0x5a, 0x58, 0xba, 0x07, 0x8a, }; static const unsigned char ecdsa_secp224r1_sha512_4569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4569_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4569 = { .name = "ecdsa_secp224r1_sha512_4569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4569_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4569_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4569_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4570 for ECDSA, tcId is 229 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4570_pubkey[] = { 0xc7, 0x69, 0xc1, 0x38, 0xf9, 0xd7, 0x1f, 0xff, 0xf1, 0x13, 0x27, 0x3b, 0x71, 0xa4, 0xaf, 0xde, 0x4f, 0x99, 0x96, 0xa1, 0xc4, 0xbe, 0x65, 0x8a, 0x39, 0x03, 0xcf, 0x7f, 0x43, 0x0e, 0x51, 0x2b, 0x86, 0x8b, 0x37, 0xbb, 0x96, 0xbc, 0x17, 0xa0, 0x9b, 0x0a, 0xb0, 0x1b, 0x26, 0x2f, 0x2e, 0x23, 0xf3, 0x4f, 0x00, 0x41, 0x8f, 0x6b, 0x63, 0xd6, }; static const unsigned char ecdsa_secp224r1_sha512_4570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4570_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4570 = { .name = "ecdsa_secp224r1_sha512_4570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4570_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4570_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4570_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4571 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4571_pubkey[] = { 0x75, 0xf0, 0x07, 0xc1, 0x1b, 0x93, 0xe6, 0xf4, 0x6e, 0x9a, 0x81, 0x5c, 0xb7, 0x65, 0x99, 0x0a, 0x83, 0x05, 0xd3, 0xad, 0x8d, 0x22, 0xc7, 0x6f, 0xe6, 0xb2, 0x57, 0xcc, 0x71, 0xb5, 0xc1, 0x95, 0x1b, 0x5d, 0x46, 0x4c, 0x66, 0xdf, 0x7c, 0x29, 0x0c, 0xf0, 0xa4, 0xf1, 0x56, 0xbb, 0xf5, 0x2f, 0x1e, 0x41, 0xa7, 0x9d, 0xc6, 0x3a, 0xbc, 0xe5, }; static const unsigned char ecdsa_secp224r1_sha512_4571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4571_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4571 = { .name = "ecdsa_secp224r1_sha512_4571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4571_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4571_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4571_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4572 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4572_pubkey[] = { 0x12, 0x55, 0xfb, 0x94, 0xa0, 0xf2, 0x0e, 0x6f, 0xaa, 0x25, 0x05, 0xc3, 0x94, 0xcc, 0x3c, 0x39, 0xf0, 0x7d, 0xef, 0x41, 0x07, 0x12, 0x7d, 0xff, 0xc4, 0xda, 0xcb, 0x6e, 0xea, 0x73, 0xc1, 0x04, 0x45, 0x44, 0xa1, 0x49, 0x65, 0x60, 0xbd, 0x1b, 0x04, 0x9f, 0xf6, 0x15, 0xe6, 0x8a, 0xe0, 0xd4, 0x83, 0x22, 0x03, 0x27, 0x56, 0x98, 0x84, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4572_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4572 = { .name = "ecdsa_secp224r1_sha512_4572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4572_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4572_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4572_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4573 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4573_pubkey[] = { 0xf6, 0x56, 0xa6, 0x32, 0xa0, 0x80, 0x4c, 0xf6, 0x88, 0x44, 0x6b, 0x26, 0x12, 0x08, 0xf7, 0x93, 0x37, 0x3c, 0x5f, 0xf4, 0x45, 0x4b, 0xd1, 0xe0, 0xa8, 0x82, 0x11, 0x3f, 0x30, 0xa2, 0x5d, 0x6f, 0x58, 0x6e, 0x02, 0xdd, 0x4d, 0xcb, 0xf7, 0x3d, 0x96, 0xaf, 0x3e, 0x48, 0x3b, 0x7a, 0xcb, 0x5f, 0x8f, 0x4c, 0x06, 0x45, 0x0d, 0xec, 0x19, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4573_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4573 = { .name = "ecdsa_secp224r1_sha512_4573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4573_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4573_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4573_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4574 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4574_pubkey[] = { 0x8f, 0xb5, 0x72, 0xde, 0x4d, 0xaf, 0x76, 0x70, 0x26, 0x24, 0xce, 0x4e, 0xd8, 0x19, 0xd0, 0x26, 0x76, 0x22, 0x24, 0xe8, 0xa5, 0x42, 0x15, 0xbf, 0x81, 0xb2, 0x02, 0xa3, 0xf0, 0x74, 0xd2, 0x0e, 0x1d, 0xa7, 0x23, 0x2d, 0x27, 0x94, 0x61, 0x73, 0x2b, 0xc1, 0xba, 0xe0, 0xc5, 0x41, 0x6a, 0xb9, 0xd6, 0x96, 0x30, 0x86, 0x22, 0xe7, 0xff, 0xe8, }; static const unsigned char ecdsa_secp224r1_sha512_4574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4574_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xec, 0x0c, 0xe3, 0xfa, 0x72, 0x5c, 0x10, 0x27, 0x47, 0x5a, 0x5f, 0x5b, 0xf4, 0xee, 0x98, 0x0d, 0xe6, 0x1c, 0x3b, 0x48, 0x75, 0xaf, 0xe8, 0xb6, 0x54, 0xb2, 0x4e, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4574 = { .name = "ecdsa_secp224r1_sha512_4574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4574_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4574_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4574_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 233 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4575 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4575_pubkey[] = { 0x8f, 0xb5, 0x72, 0xde, 0x4d, 0xaf, 0x76, 0x70, 0x26, 0x24, 0xce, 0x4e, 0xd8, 0x19, 0xd0, 0x26, 0x76, 0x22, 0x24, 0xe8, 0xa5, 0x42, 0x15, 0xbf, 0x81, 0xb2, 0x02, 0xa3, 0x0f, 0x8b, 0x2d, 0xf1, 0xe2, 0x58, 0xdc, 0xd2, 0xd8, 0x6b, 0x9e, 0x8c, 0xd4, 0x3e, 0x45, 0x1e, 0x3a, 0xbe, 0x95, 0x46, 0x29, 0x69, 0xcf, 0x79, 0xdd, 0x18, 0x00, 0x19, }; static const unsigned char ecdsa_secp224r1_sha512_4575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4575_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xec, 0x0c, 0xe3, 0xfa, 0x72, 0x5c, 0x10, 0x27, 0x47, 0x5a, 0x5f, 0x5b, 0xf4, 0xee, 0x98, 0x0d, 0xe6, 0x1c, 0x3b, 0x48, 0x75, 0xaf, 0xe8, 0xb6, 0x54, 0xb2, 0x4e, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4575 = { .name = "ecdsa_secp224r1_sha512_4575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4575_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4575_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4575_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 234 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4576 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4576_pubkey[] = { 0xe5, 0x46, 0x2d, 0x3a, 0x83, 0x8d, 0x4a, 0x14, 0xde, 0x96, 0xa7, 0xb0, 0xb1, 0x07, 0x1e, 0xb6, 0x22, 0xae, 0x6e, 0x71, 0xed, 0xe8, 0xf9, 0x5f, 0xf0, 0x1c, 0x21, 0x21, 0x36, 0x8e, 0x3a, 0x90, 0xd8, 0x58, 0x4e, 0x19, 0x46, 0x16, 0xd3, 0x21, 0x1a, 0x75, 0x41, 0xf6, 0xa0, 0x96, 0x03, 0x39, 0xca, 0xb2, 0x8e, 0x8b, 0xfd, 0x6b, 0x1d, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4576_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4576 = { .name = "ecdsa_secp224r1_sha512_4576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4576_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4576_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4576_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 235 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4577 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4577_pubkey[] = { 0x5d, 0x97, 0x67, 0x0c, 0x1f, 0x12, 0x1f, 0x7f, 0x1b, 0xa5, 0x41, 0x50, 0x56, 0x09, 0xf2, 0x01, 0x43, 0xb3, 0x12, 0xa7, 0xbb, 0x49, 0xd3, 0x76, 0x69, 0x0e, 0x18, 0x31, 0xc1, 0xb4, 0x56, 0x71, 0x41, 0xa7, 0xb5, 0x34, 0xe2, 0x1b, 0xd2, 0xf7, 0x06, 0xae, 0x03, 0x41, 0x69, 0xab, 0x9c, 0x3f, 0x85, 0x36, 0x14, 0x79, 0x04, 0xde, 0x8c, 0x5f, }; static const unsigned char ecdsa_secp224r1_sha512_4577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4577_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4577 = { .name = "ecdsa_secp224r1_sha512_4577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4577_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4577_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4577_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 236 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4578 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4578_pubkey[] = { 0xd2, 0x67, 0x52, 0x78, 0xda, 0x2d, 0x7d, 0xaa, 0x83, 0x73, 0xdd, 0x63, 0xb7, 0xaa, 0x46, 0xcb, 0x14, 0x76, 0x65, 0x71, 0xc2, 0xd8, 0x09, 0x8b, 0x83, 0xa1, 0x02, 0xa5, 0x69, 0x9b, 0x57, 0x2d, 0x4b, 0x95, 0x14, 0x97, 0x41, 0x8a, 0x37, 0x69, 0x30, 0x02, 0x2d, 0x48, 0xfe, 0x59, 0x96, 0x6b, 0x15, 0x8f, 0xa0, 0x83, 0x40, 0xe2, 0x4b, 0x98, }; static const unsigned char ecdsa_secp224r1_sha512_4578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4578_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4578 = { .name = "ecdsa_secp224r1_sha512_4578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4578_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4578_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4578_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 237 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4579 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4579_pubkey[] = { 0x5a, 0x5c, 0xd1, 0x16, 0x23, 0x88, 0x34, 0x87, 0x34, 0xda, 0xe2, 0x0e, 0x22, 0x35, 0xae, 0x2c, 0x46, 0x4a, 0xde, 0xf0, 0xa1, 0x96, 0xf9, 0xaa, 0xf0, 0x24, 0x82, 0xca, 0x2a, 0xe9, 0x4e, 0x8b, 0x9a, 0x02, 0x43, 0x75, 0x03, 0x64, 0x29, 0xb6, 0x32, 0xab, 0x48, 0x5e, 0x02, 0xc5, 0xa9, 0x66, 0x5b, 0x28, 0x9b, 0x8a, 0x47, 0xba, 0xde, 0x8f, }; static const unsigned char ecdsa_secp224r1_sha512_4579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4579_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4579 = { .name = "ecdsa_secp224r1_sha512_4579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4579_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4579_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4579_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 238 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4580 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4580_pubkey[] = { 0xca, 0xcd, 0x93, 0xeb, 0x11, 0xa8, 0x21, 0xde, 0x3d, 0x88, 0x2b, 0xab, 0x74, 0x11, 0xe7, 0xc7, 0x7f, 0x23, 0xc0, 0x8d, 0xa1, 0x74, 0x18, 0x9c, 0xc9, 0x87, 0xdc, 0x41, 0x71, 0x6f, 0xe3, 0x78, 0xab, 0x84, 0x21, 0x61, 0xbc, 0x16, 0xde, 0xf6, 0xe0, 0x37, 0xd4, 0xba, 0x9d, 0x30, 0xd8, 0xcb, 0x41, 0xad, 0x30, 0xcf, 0x06, 0x56, 0xe5, 0x0b, }; static const unsigned char ecdsa_secp224r1_sha512_4580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4580_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4580 = { .name = "ecdsa_secp224r1_sha512_4580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4580_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4580_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4580_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 239 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4581 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4581_pubkey[] = { 0xcf, 0x46, 0x96, 0x00, 0x60, 0x45, 0x3e, 0x55, 0x57, 0x7f, 0x1b, 0xee, 0x6a, 0x9c, 0x47, 0x09, 0xe7, 0xcd, 0xcb, 0xa4, 0x5c, 0xa8, 0x02, 0x0b, 0xb3, 0x53, 0x69, 0x31, 0xea, 0x4e, 0xc3, 0x33, 0x09, 0x21, 0x38, 0x64, 0xa1, 0x31, 0x8a, 0xee, 0x0a, 0x86, 0xd8, 0xb6, 0xf0, 0xc1, 0xb9, 0x74, 0x1c, 0xd6, 0xbd, 0x5d, 0xea, 0x4f, 0x40, 0x66, }; static const unsigned char ecdsa_secp224r1_sha512_4581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4581_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4581 = { .name = "ecdsa_secp224r1_sha512_4581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4581_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4581_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4581_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 240 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4582 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4582_pubkey[] = { 0x62, 0xf4, 0xea, 0xf3, 0x79, 0x7b, 0xdc, 0x3d, 0x5d, 0x8c, 0xfa, 0xa0, 0x7b, 0x5a, 0xf7, 0x06, 0x0e, 0x13, 0x1b, 0x18, 0x3c, 0xa4, 0xed, 0xed, 0x48, 0x19, 0xe5, 0x61, 0xbf, 0xf3, 0xea, 0xdd, 0x7b, 0x55, 0xdb, 0x2d, 0xc0, 0x1b, 0xd2, 0x05, 0x69, 0xe6, 0xc4, 0x7c, 0x92, 0x12, 0xf9, 0xb2, 0xd6, 0x79, 0x37, 0x95, 0xb5, 0x1e, 0x4f, 0x6c, }; static const unsigned char ecdsa_secp224r1_sha512_4582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4582_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4582 = { .name = "ecdsa_secp224r1_sha512_4582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4582_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4582_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4582_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 241 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4583 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4583_pubkey[] = { 0xc4, 0xa4, 0xbf, 0x5a, 0xe0, 0x13, 0x85, 0x87, 0xf5, 0x0a, 0xb7, 0xa2, 0xc3, 0x36, 0xa4, 0x30, 0x52, 0x7a, 0x86, 0xf5, 0x9f, 0x97, 0x65, 0xc2, 0xf3, 0xf5, 0x48, 0x8d, 0xf9, 0x41, 0x9b, 0xf9, 0xdf, 0x5f, 0x12, 0x1d, 0xe3, 0xa3, 0x2d, 0xb1, 0x7b, 0x49, 0xc7, 0x2b, 0x60, 0x6b, 0x2b, 0xe5, 0xce, 0x56, 0xac, 0xb5, 0x65, 0xcc, 0x12, 0xb7, }; static const unsigned char ecdsa_secp224r1_sha512_4583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4583_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4583 = { .name = "ecdsa_secp224r1_sha512_4583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4583_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4583_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4583_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 242 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4584 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4584_pubkey[] = { 0xe7, 0xcb, 0x5a, 0xe5, 0x4d, 0xbe, 0x61, 0x9a, 0xb5, 0x06, 0x9f, 0x14, 0x56, 0x62, 0x36, 0xb3, 0xc6, 0xb0, 0xb4, 0x4f, 0x1c, 0x4c, 0x53, 0x1e, 0x66, 0xd8, 0x9b, 0x3e, 0x64, 0xbe, 0x7f, 0xdc, 0x18, 0x78, 0x96, 0x29, 0xdf, 0xdd, 0xf7, 0x15, 0x8f, 0x8f, 0xf2, 0x7a, 0xbd, 0x55, 0x3b, 0xfa, 0xc3, 0xf7, 0xc8, 0x74, 0xbc, 0xcd, 0xc3, 0x1b, }; static const unsigned char ecdsa_secp224r1_sha512_4584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4584_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4584 = { .name = "ecdsa_secp224r1_sha512_4584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4584_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4584_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4584_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 243 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4585 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4585_pubkey[] = { 0x30, 0xdb, 0x5d, 0x82, 0x79, 0x31, 0x9c, 0xf5, 0xa3, 0xb6, 0x76, 0x8a, 0x0c, 0x5e, 0x5c, 0x84, 0x75, 0x2f, 0x63, 0x14, 0xf7, 0x35, 0xd6, 0x3f, 0x6c, 0x56, 0x50, 0xcd, 0xd3, 0x2f, 0xb5, 0x4f, 0x74, 0xd4, 0xa5, 0x08, 0x8e, 0x67, 0x74, 0xa1, 0x32, 0x01, 0x68, 0x36, 0x42, 0x79, 0x0d, 0x2e, 0x69, 0xe5, 0x5e, 0x4f, 0x47, 0x61, 0x29, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4585_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4585 = { .name = "ecdsa_secp224r1_sha512_4585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4585_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4585_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4585_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 244 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4586 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4586_pubkey[] = { 0x7d, 0xb2, 0x7d, 0xa4, 0xd6, 0x7a, 0x2d, 0xe0, 0xc7, 0x88, 0x15, 0x80, 0x97, 0x19, 0xbd, 0xf6, 0x97, 0x63, 0x32, 0xc6, 0x7e, 0xf0, 0xf3, 0x82, 0x7d, 0xf4, 0xad, 0xc2, 0x2a, 0xb3, 0x7a, 0xec, 0x2e, 0xed, 0x0d, 0x5e, 0x67, 0xac, 0xfd, 0x6a, 0x19, 0x5f, 0x21, 0x03, 0x2d, 0x9a, 0xf7, 0x1c, 0xe7, 0x3e, 0x12, 0x0f, 0xdd, 0xa2, 0x9f, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha512_4586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4586_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4586 = { .name = "ecdsa_secp224r1_sha512_4586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4586_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4586_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4586_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 245 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4587 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4587_pubkey[] = { 0xd1, 0xc1, 0x9d, 0x46, 0xb5, 0x17, 0xbb, 0x3b, 0xd7, 0xbd, 0xf0, 0x74, 0xff, 0x97, 0x5c, 0x0d, 0xbd, 0x2b, 0xde, 0x10, 0xd1, 0xad, 0x21, 0x7e, 0x58, 0xeb, 0xc8, 0xc5, 0x5a, 0xc8, 0x98, 0xc0, 0x40, 0xa1, 0x85, 0x80, 0x4d, 0xdb, 0x03, 0x2b, 0x48, 0x10, 0x3d, 0x6c, 0x8d, 0x12, 0x04, 0x3d, 0x3a, 0x4f, 0xec, 0x93, 0xab, 0xa7, 0xa6, 0xd7, }; static const unsigned char ecdsa_secp224r1_sha512_4587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4587_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4587 = { .name = "ecdsa_secp224r1_sha512_4587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4587_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4587_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4587_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 246 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4588 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4588_pubkey[] = { 0xd9, 0x5a, 0xc9, 0x6a, 0xe9, 0xdb, 0xfb, 0x80, 0x91, 0x18, 0x62, 0xe0, 0x0a, 0x4c, 0xad, 0xbc, 0xb2, 0x35, 0x9f, 0x49, 0x9b, 0x53, 0xbe, 0x00, 0x7f, 0x07, 0x11, 0xc0, 0x93, 0xd3, 0xda, 0x93, 0x1a, 0xcb, 0xb9, 0x24, 0x28, 0x00, 0xdc, 0x52, 0x16, 0x95, 0xb4, 0xf1, 0x9f, 0xf2, 0xdf, 0xfc, 0x36, 0x13, 0xf4, 0x0b, 0xdb, 0x15, 0xc3, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4588_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4588 = { .name = "ecdsa_secp224r1_sha512_4588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4588_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4588_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4588_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 247 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4589 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4589_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4589_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4589 = { .name = "ecdsa_secp224r1_sha512_4589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4589_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4589_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4589_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 248 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4590 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4590_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4590_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4590 = { .name = "ecdsa_secp224r1_sha512_4590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4590_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4590_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4590_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 249 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4591 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4591_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4591_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4591 = { .name = "ecdsa_secp224r1_sha512_4591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4591_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4591_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4591_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 250 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4592 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4592_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4592_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4592 = { .name = "ecdsa_secp224r1_sha512_4592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4592_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4592_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4592_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 251 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4593 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4593_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4593_sig[] = { 0xf7, 0x29, 0x15, 0xd6, 0xd9, 0x16, 0x01, 0x42, 0x79, 0x61, 0x61, 0x86, 0x86, 0x9a, 0x01, 0x22, 0x8f, 0xcd, 0x9f, 0x1b, 0x40, 0x78, 0x35, 0x30, 0x18, 0xb3, 0x99, 0xab, 0xb6, 0x7f, 0x2b, 0x91, 0xee, 0xeb, 0x91, 0x03, 0x81, 0xf5, 0xb4, 0x61, 0xa4, 0xa3, 0x9c, 0x64, 0x2a, 0xea, 0x47, 0x92, 0x01, 0x3d, 0x4e, 0xb6, 0x3d, 0xa1, 0x83, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4593 = { .name = "ecdsa_secp224r1_sha512_4593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4593_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha512_4593_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 252 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4594 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4594_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4594_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha512_4594_sig[] = { 0xa5, 0xd1, 0x79, 0xc3, 0x36, 0xcc, 0xdc, 0x76, 0x0d, 0xfd, 0xdd, 0x91, 0x3c, 0xdf, 0x8e, 0xa4, 0x68, 0xd0, 0xf4, 0x68, 0x6f, 0x7b, 0x2d, 0x38, 0x25, 0x69, 0x8e, 0xd7, 0xa7, 0x7f, 0x12, 0x06, 0x0a, 0x4d, 0x1b, 0x94, 0xb0, 0xd1, 0xc4, 0x43, 0xea, 0xe3, 0xad, 0x6e, 0x21, 0xb7, 0xea, 0xcf, 0xdf, 0x6f, 0xbf, 0x39, 0xa2, 0xb2, 0x96, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4594 = { .name = "ecdsa_secp224r1_sha512_4594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4594_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4594_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha512_4594_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 253 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4595 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4595_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4595_sig[] = { 0xb7, 0xc6, 0x5d, 0xce, 0x56, 0xab, 0xe2, 0x4f, 0xb4, 0x59, 0x2e, 0xce, 0x5a, 0xc1, 0xe6, 0xee, 0x83, 0x53, 0x43, 0x1f, 0x74, 0x52, 0x40, 0x9a, 0xdd, 0x73, 0x68, 0x84, 0xe5, 0xfe, 0x5d, 0xb7, 0x98, 0x89, 0x31, 0x02, 0x6b, 0x93, 0x7d, 0xc4, 0xef, 0x98, 0x3f, 0xe4, 0x46, 0xca, 0x13, 0x4d, 0x29, 0xb9, 0x4a, 0xc7, 0x77, 0xcd, 0xe3, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4595 = { .name = "ecdsa_secp224r1_sha512_4595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4595_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4595_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4595_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 254 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4596 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4596_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4596_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4596_sig[] = { 0x05, 0xc5, 0x63, 0xd3, 0xa4, 0xba, 0xd8, 0x74, 0xe4, 0x61, 0x0a, 0xdf, 0xa5, 0x77, 0x77, 0xa5, 0x9f, 0x99, 0x5b, 0xfa, 0x06, 0xef, 0x97, 0xbf, 0x12, 0x5a, 0x49, 0x88, 0x97, 0xed, 0x68, 0xf5, 0x46, 0xcf, 0x4b, 0xb4, 0x99, 0x85, 0x24, 0xc1, 0x83, 0x56, 0xf3, 0xaf, 0x16, 0x2d, 0x2b, 0xf2, 0x74, 0x4b, 0xe9, 0x33, 0x57, 0xbc, 0x4b, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4596 = { .name = "ecdsa_secp224r1_sha512_4596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4596_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4596_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha512_4596_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 255 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4597 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4597_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4597_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4597_sig[] = { 0xc7, 0xa6, 0xf3, 0x58, 0xb7, 0xd9, 0x38, 0x15, 0x18, 0x9a, 0xe5, 0xd2, 0xc3, 0xab, 0x4d, 0x4e, 0x05, 0xf4, 0x31, 0x76, 0xa5, 0x2d, 0xd4, 0xfc, 0x5b, 0x48, 0xa3, 0x4a, 0xa2, 0x45, 0x85, 0x12, 0xbb, 0x8d, 0xbe, 0x6f, 0x1b, 0xd6, 0xeb, 0x01, 0xd2, 0xd7, 0x7d, 0x56, 0x24, 0xe8, 0x54, 0x7b, 0xf8, 0x7d, 0x85, 0xfc, 0x73, 0x1c, 0x0c, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4597 = { .name = "ecdsa_secp224r1_sha512_4597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4597_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4597_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4597_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 256 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4598 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4598_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4598_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4598_sig[] = { 0x5f, 0x56, 0xca, 0x58, 0x7d, 0x16, 0x66, 0x4a, 0x20, 0xda, 0xd1, 0x3d, 0xf8, 0x5a, 0x47, 0x59, 0x78, 0xe5, 0xce, 0xe8, 0x1a, 0x8d, 0x0f, 0x49, 0xfa, 0xaf, 0x61, 0x58, 0xb6, 0x4e, 0xf5, 0x9d, 0x79, 0x46, 0x1f, 0xe1, 0xa0, 0x9a, 0x58, 0x64, 0x90, 0x74, 0x35, 0xf7, 0x0b, 0xd7, 0x5f, 0x18, 0x3a, 0xfb, 0x11, 0x90, 0x3f, 0x56, 0x0b, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4598 = { .name = "ecdsa_secp224r1_sha512_4598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4598_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4598_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4598_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 257 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4599 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4599_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4599_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4599_sig[] = { 0xdd, 0x94, 0xf5, 0xb5, 0x6e, 0x99, 0x47, 0xd0, 0x07, 0xe7, 0xc8, 0xef, 0xd8, 0x94, 0xa5, 0xc8, 0x82, 0xf1, 0xd0, 0xb5, 0xdd, 0x56, 0xc3, 0x2b, 0x5b, 0x26, 0x65, 0x21, 0xfb, 0xc8, 0x83, 0x74, 0x1b, 0xd2, 0x7c, 0x59, 0x95, 0x8a, 0xe1, 0x7b, 0xa6, 0xe4, 0xa4, 0x1a, 0xd1, 0xed, 0xec, 0xa9, 0xa3, 0xba, 0x31, 0xc8, 0xf2, 0x33, 0xb5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4599 = { .name = "ecdsa_secp224r1_sha512_4599", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4599_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4599_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4599_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 258 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4600 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4600_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4600_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4600_sig[] = { 0x80, 0x71, 0xe6, 0x68, 0x2c, 0x6e, 0x8a, 0x32, 0x70, 0x6d, 0xc7, 0xe4, 0x11, 0x50, 0x39, 0x46, 0x54, 0x6b, 0x31, 0xff, 0xf2, 0x7d, 0xcc, 0xe1, 0x88, 0xae, 0x38, 0x9f, 0xdc, 0x39, 0x6c, 0x79, 0x7d, 0x44, 0xed, 0xf7, 0x94, 0x43, 0x2d, 0x1d, 0xa0, 0x91, 0xf8, 0xc7, 0x62, 0x97, 0x4d, 0x8c, 0xe1, 0xf0, 0x6e, 0x08, 0xca, 0x01, 0x36, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4600 = { .name = "ecdsa_secp224r1_sha512_4600", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4600_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4600_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4600_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 259 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4601 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4601_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4601_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4601_sig[] = { 0x79, 0x16, 0x24, 0xe5, 0xf2, 0x34, 0xb8, 0x95, 0x0d, 0x50, 0x9d, 0x0b, 0x45, 0x6e, 0xf6, 0xfa, 0x77, 0x8b, 0x19, 0xdc, 0xcd, 0x60, 0x9d, 0x49, 0x6b, 0x62, 0xa2, 0x11, 0x6c, 0x51, 0xe8, 0x46, 0xfa, 0x53, 0xd0, 0x3d, 0x42, 0xf7, 0x98, 0xe6, 0xbb, 0x90, 0x95, 0x4f, 0x9a, 0x48, 0xc1, 0x79, 0x4b, 0x47, 0xe8, 0x4a, 0xc9, 0x7b, 0x46, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4601 = { .name = "ecdsa_secp224r1_sha512_4601", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4601_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4601_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4601_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 260 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4602 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4602_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4602_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4602_sig[] = { 0x00, 0x34, 0xbe, 0xfa, 0x1d, 0x25, 0xb7, 0x56, 0xce, 0x76, 0xb3, 0x83, 0xa6, 0xe8, 0x75, 0x37, 0x41, 0xc1, 0x2a, 0x59, 0x26, 0x6c, 0x2c, 0x79, 0x21, 0xff, 0x6e, 0x8b, 0xbc, 0x44, 0xe3, 0x82, 0x3e, 0x4d, 0x80, 0x7c, 0xbc, 0x92, 0xfa, 0x78, 0x6a, 0x89, 0xe6, 0x2a, 0x4b, 0x21, 0x7b, 0x5f, 0xb0, 0xc0, 0xf1, 0x86, 0x5d, 0x4a, 0x7e, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4602 = { .name = "ecdsa_secp224r1_sha512_4602", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4602_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4602_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4602_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 261 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4603 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4603_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4603_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4603_sig[] = { 0x22, 0x4a, 0x38, 0xe7, 0x33, 0xeb, 0xd3, 0xfa, 0xc2, 0x74, 0xec, 0xc5, 0x0e, 0xce, 0xf2, 0xe7, 0xc3, 0x18, 0x9b, 0xe2, 0xb9, 0xd0, 0x93, 0xa8, 0xdc, 0xc6, 0xfa, 0x3a, 0x13, 0x4f, 0xa5, 0xa4, 0xf9, 0x23, 0xd2, 0x96, 0xb3, 0xc6, 0xdd, 0x46, 0x83, 0xd2, 0x49, 0xcc, 0xf0, 0xad, 0x27, 0x28, 0x90, 0xe4, 0x14, 0x9c, 0x9a, 0x0d, 0x74, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4603 = { .name = "ecdsa_secp224r1_sha512_4603", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4603_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4603_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4603_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 262 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4604 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4604_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4604_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4604_sig[] = { 0x33, 0x8d, 0x07, 0xd9, 0x90, 0x87, 0x9a, 0xd8, 0x44, 0xe2, 0x4c, 0x17, 0x88, 0xe3, 0x62, 0x26, 0x9d, 0x8a, 0xca, 0x70, 0x50, 0x03, 0x57, 0xd3, 0x85, 0x76, 0x82, 0x27, 0xf7, 0x45, 0xcc, 0x4e, 0xba, 0xaf, 0x1c, 0xd4, 0x28, 0x30, 0x02, 0x6a, 0x66, 0xe5, 0xb9, 0x55, 0x64, 0xcd, 0xbe, 0xe5, 0xed, 0xf8, 0x53, 0xbb, 0x2c, 0xc9, 0x12, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4604 = { .name = "ecdsa_secp224r1_sha512_4604", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4604_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4604_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4604_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 263 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4605 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4605_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4605_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4605_sig[] = { 0x68, 0x9f, 0xce, 0x4b, 0x33, 0xd8, 0x21, 0x2a, 0x66, 0x36, 0x40, 0xa1, 0xae, 0x0e, 0xfa, 0xa7, 0xa7, 0xd7, 0x71, 0x1b, 0xeb, 0xa7, 0x19, 0x37, 0x4f, 0xe6, 0x34, 0xee, 0x04, 0xbd, 0x99, 0x81, 0xfa, 0x52, 0x29, 0x30, 0x63, 0x07, 0x6f, 0x0f, 0xd7, 0x0f, 0xc3, 0x18, 0x75, 0xd5, 0x80, 0xef, 0x94, 0xf0, 0x20, 0xd2, 0xf9, 0x54, 0x40, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4605 = { .name = "ecdsa_secp224r1_sha512_4605", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4605_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4605_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4605_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 264 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4606 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4606_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4606_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4606_sig[] = { 0x2a, 0x42, 0x87, 0xe0, 0x15, 0x10, 0xe7, 0xfb, 0x5f, 0xed, 0x2e, 0x1c, 0xcc, 0x3f, 0x2a, 0x69, 0x29, 0xcf, 0x7d, 0x03, 0x85, 0x0e, 0x49, 0xd7, 0xae, 0x8a, 0x50, 0x4a, 0x35, 0x5c, 0x39, 0x15, 0xf3, 0xfa, 0x96, 0x37, 0xdc, 0x80, 0x01, 0x43, 0x8a, 0x8c, 0x04, 0xe1, 0x5d, 0x14, 0x93, 0x4c, 0xab, 0xd4, 0x30, 0xfe, 0xb0, 0xcb, 0x5b, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4606 = { .name = "ecdsa_secp224r1_sha512_4606", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4606_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4606_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4606_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 265 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4607 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4607_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4607_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4607_sig[] = { 0xb5, 0xbf, 0x79, 0x5a, 0x38, 0xad, 0xb0, 0x52, 0xb4, 0x01, 0x46, 0x8f, 0xfc, 0xab, 0x81, 0x10, 0x3d, 0x2d, 0x9f, 0xca, 0x2e, 0x15, 0xb8, 0xd0, 0x8a, 0xb9, 0x8c, 0xe8, 0x5e, 0xc0, 0xd2, 0xc6, 0xae, 0xc7, 0x18, 0x88, 0xc9, 0x41, 0xaf, 0x32, 0x4c, 0x72, 0x72, 0xbe, 0xc1, 0x92, 0xab, 0xb2, 0x92, 0xf9, 0xdf, 0x82, 0xa2, 0x4e, 0x8a, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4607 = { .name = "ecdsa_secp224r1_sha512_4607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4607_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4607_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4607_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 266 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4608 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4608_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4608_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4608_sig[] = { 0x10, 0x0e, 0xd0, 0x7f, 0x46, 0x71, 0x33, 0xbf, 0x10, 0x91, 0x7f, 0x7a, 0x15, 0xab, 0x2b, 0xfd, 0xa5, 0x19, 0xbd, 0xbc, 0x26, 0x53, 0xb9, 0x59, 0x55, 0xe2, 0x22, 0x11, 0xb3, 0x8a, 0x08, 0x1f, 0x7c, 0x2e, 0x2b, 0x77, 0x5d, 0x1d, 0xa8, 0x68, 0xd0, 0x38, 0x1c, 0x09, 0xba, 0x15, 0x59, 0xc9, 0x61, 0x3b, 0x5b, 0xe7, 0x15, 0x93, 0x63, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4608 = { .name = "ecdsa_secp224r1_sha512_4608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4608_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4608_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4608_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 267 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4609 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4609_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4609_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4609_sig[] = { 0x54, 0xe6, 0xad, 0xd8, 0xac, 0x91, 0x0e, 0x52, 0xc6, 0x22, 0x8f, 0xe3, 0x98, 0x0d, 0x8f, 0x58, 0x62, 0x18, 0x33, 0x4d, 0x8d, 0x85, 0x9b, 0xa9, 0xa3, 0x32, 0x99, 0x17, 0x58, 0x36, 0xcc, 0x79, 0xec, 0x88, 0x51, 0x9e, 0xab, 0x4a, 0x6b, 0x26, 0x14, 0xc5, 0x01, 0x62, 0x8c, 0x9f, 0xee, 0x32, 0xfb, 0xaf, 0xd9, 0x3e, 0x32, 0x15, 0x84, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4609 = { .name = "ecdsa_secp224r1_sha512_4609", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4609_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4609_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4609_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 268 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4610 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4610_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4610_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4610_sig[] = { 0x12, 0x30, 0xd5, 0x40, 0x9f, 0x37, 0x95, 0x84, 0xb4, 0xd5, 0x48, 0xb7, 0xbc, 0xcb, 0xa6, 0x4b, 0xaf, 0x81, 0xd5, 0x12, 0xa9, 0xf2, 0xe6, 0x39, 0x8c, 0x4e, 0x3a, 0x66, 0x19, 0x37, 0xa2, 0x98, 0xf8, 0xcb, 0xdf, 0xa8, 0x5b, 0x8e, 0x6f, 0xcf, 0x0a, 0x12, 0xbe, 0x49, 0x66, 0xd8, 0x02, 0x70, 0xca, 0xde, 0x85, 0xa0, 0xc3, 0x7e, 0xe6, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4610 = { .name = "ecdsa_secp224r1_sha512_4610", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4610_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4610_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4610_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 269 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4611 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4611_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4611_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4611_sig[] = { 0x86, 0x2f, 0x43, 0xb0, 0x44, 0xfb, 0x32, 0xad, 0xb4, 0x5e, 0x00, 0x37, 0x8b, 0xa0, 0x83, 0xae, 0x76, 0x1c, 0x84, 0x45, 0x20, 0x54, 0xf1, 0x7b, 0x13, 0x41, 0xbf, 0x5b, 0x95, 0xd8, 0xd8, 0xe5, 0xe3, 0xa6, 0xcc, 0x2b, 0x0a, 0x06, 0xc7, 0x92, 0x25, 0x2c, 0xa1, 0x1a, 0x64, 0x22, 0x57, 0x72, 0x18, 0x31, 0x57, 0x85, 0x20, 0xf9, 0x6b, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4611 = { .name = "ecdsa_secp224r1_sha512_4611", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4611_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4611_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4611_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 270 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4612 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4612_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4612_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4612_sig[] = { 0xcb, 0x5c, 0xab, 0xb1, 0xca, 0x01, 0xb8, 0x47, 0xa6, 0xbc, 0x70, 0x55, 0x8d, 0x1e, 0x5d, 0x3a, 0x20, 0x4d, 0x17, 0x41, 0xbb, 0xe8, 0x00, 0xf4, 0xb1, 0x59, 0xaf, 0x35, 0x35, 0x80, 0xcc, 0x85, 0xf2, 0x18, 0x39, 0x41, 0x30, 0xbd, 0xdf, 0x1c, 0x4e, 0xac, 0x04, 0xfe, 0x96, 0xf5, 0x9f, 0x14, 0xfb, 0x43, 0x66, 0x86, 0x95, 0x03, 0x98, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4612 = { .name = "ecdsa_secp224r1_sha512_4612", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4612_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4612_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4612_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 271 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4613 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4613_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4613_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4613_sig[] = { 0xc9, 0xd8, 0x3d, 0xc0, 0x4c, 0xf4, 0xee, 0x89, 0xc4, 0x05, 0x04, 0x5d, 0x0f, 0xd1, 0xd7, 0x04, 0xf6, 0x27, 0xca, 0x5b, 0xbe, 0x35, 0x0f, 0x40, 0xb8, 0x26, 0xbb, 0xc1, 0x74, 0xfe, 0xdc, 0x9e, 0x55, 0x04, 0x5e, 0x97, 0x59, 0xf2, 0x12, 0x44, 0x60, 0xfd, 0xfb, 0x99, 0x1d, 0xc6, 0x20, 0xcf, 0xee, 0x6e, 0xff, 0xc0, 0xb4, 0xad, 0xaa, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4613 = { .name = "ecdsa_secp224r1_sha512_4613", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4613_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4613_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4613_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 272 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4614 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4614_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4614_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4614_sig[] = { 0x46, 0xdd, 0x65, 0xb6, 0xe7, 0xf1, 0x0c, 0x08, 0x41, 0x84, 0x1b, 0x01, 0x03, 0x3a, 0x5b, 0xef, 0xd3, 0xa0, 0xe7, 0x8c, 0x85, 0xf1, 0xf3, 0x90, 0xbb, 0x3c, 0xdf, 0x25, 0xf3, 0x3a, 0xce, 0xa3, 0xd4, 0x7c, 0xf0, 0xdd, 0x52, 0x73, 0x73, 0x5b, 0x00, 0x41, 0x04, 0xf6, 0x51, 0x2e, 0xd6, 0x41, 0x05, 0x25, 0x09, 0x42, 0x2c, 0x03, 0x25, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4614 = { .name = "ecdsa_secp224r1_sha512_4614", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4614_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4614_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4614_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 273 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4615 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4615_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4615_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4615_sig[] = { 0xdd, 0xb4, 0xa7, 0xe4, 0x00, 0xa1, 0xe9, 0x81, 0x18, 0xf4, 0x74, 0x72, 0x2d, 0xa3, 0xf4, 0x21, 0xf6, 0x5a, 0x76, 0xee, 0xc6, 0x1f, 0x4f, 0x7b, 0x69, 0x9f, 0xaf, 0x07, 0xdb, 0x80, 0xcb, 0xa1, 0x99, 0x85, 0x9c, 0xdf, 0xe9, 0x16, 0xd6, 0xab, 0x3d, 0xeb, 0x91, 0xd7, 0x6a, 0xaf, 0x0e, 0xd5, 0x54, 0xc8, 0xf9, 0xed, 0x7e, 0x5a, 0xa5, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4615 = { .name = "ecdsa_secp224r1_sha512_4615", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4615_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4615_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4615_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 274 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4616 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4616_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4616_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4616_sig[] = { 0x4c, 0x26, 0x0b, 0x54, 0x62, 0x80, 0x60, 0x4e, 0x4c, 0x80, 0x38, 0x47, 0x21, 0xc9, 0xe8, 0x03, 0xef, 0x70, 0x4e, 0x7f, 0xb7, 0x01, 0x68, 0xe6, 0x73, 0x0f, 0xc1, 0xf3, 0xa8, 0xac, 0xea, 0xe2, 0x19, 0xac, 0x25, 0xc9, 0xf0, 0x42, 0x31, 0xb4, 0xe0, 0xc1, 0x71, 0x41, 0x3d, 0xb1, 0xd2, 0x6d, 0xf1, 0xc1, 0xe8, 0x43, 0x00, 0x62, 0xeb, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4616 = { .name = "ecdsa_secp224r1_sha512_4616", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4616_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4616_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4616_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 275 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4617 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4617_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4617_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4617_sig[] = { 0xf4, 0x09, 0x8d, 0x2c, 0x02, 0x40, 0xe7, 0x8f, 0xce, 0xab, 0xb0, 0x18, 0x3d, 0xf0, 0xb3, 0x9e, 0x7a, 0xd3, 0xe7, 0xf5, 0xd6, 0xda, 0x15, 0x87, 0xfa, 0x09, 0x85, 0x3c, 0xd4, 0x24, 0x12, 0xb2, 0xab, 0xaa, 0x61, 0x4c, 0x95, 0xeb, 0x11, 0xf9, 0xb9, 0x34, 0x62, 0x82, 0xce, 0x3a, 0x1c, 0x93, 0xaa, 0xc3, 0x5c, 0xe7, 0xaa, 0x37, 0x2f, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4617 = { .name = "ecdsa_secp224r1_sha512_4617", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4617_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4617_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4617_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 276 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4618 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4618_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4618_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4618_sig[] = { 0x48, 0xdd, 0xc4, 0x97, 0xf9, 0xa4, 0x73, 0x2c, 0x67, 0x7e, 0x46, 0xc0, 0xe2, 0xbd, 0xab, 0xec, 0x54, 0xfc, 0x9d, 0x27, 0xe4, 0x6a, 0xb5, 0x95, 0x05, 0x6d, 0xb4, 0xd9, 0xb8, 0x21, 0x9e, 0xbb, 0xfa, 0xeb, 0xc2, 0xfe, 0x43, 0x11, 0xef, 0xab, 0x0c, 0x35, 0xd4, 0x39, 0x27, 0x51, 0x35, 0x1b, 0xcc, 0x19, 0x71, 0xe8, 0xd0, 0x19, 0x41, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4618 = { .name = "ecdsa_secp224r1_sha512_4618", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4618_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4618_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4618_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 277 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4619 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4619_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4619_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4619_sig[] = { 0xe1, 0xab, 0xaf, 0x51, 0xd2, 0x7a, 0x6d, 0x7d, 0x4c, 0x9b, 0x28, 0x07, 0x83, 0x25, 0xca, 0xc2, 0xd7, 0xce, 0x3d, 0x54, 0x03, 0x91, 0x6c, 0x68, 0x90, 0x37, 0x60, 0xb7, 0x2c, 0x45, 0xa9, 0x9e, 0x27, 0x70, 0xf7, 0x82, 0xfe, 0xe5, 0xca, 0x1d, 0x71, 0x3e, 0xae, 0xcf, 0x07, 0xe6, 0x2d, 0x53, 0xc6, 0x4b, 0x7c, 0xf9, 0x3d, 0xe9, 0x90, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4619 = { .name = "ecdsa_secp224r1_sha512_4619", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4619_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4619_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4619_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 278 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4620 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4620_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4620_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4620_sig[] = { 0x86, 0x8c, 0xd1, 0x27, 0xc9, 0x9e, 0x11, 0x49, 0xf7, 0xfc, 0x8d, 0x87, 0x8c, 0xdf, 0xa9, 0x86, 0xb6, 0x2e, 0x99, 0xad, 0xde, 0xa2, 0x81, 0x14, 0x96, 0x11, 0xff, 0x15, 0x16, 0xe5, 0x95, 0x38, 0x20, 0x13, 0x5b, 0x7d, 0x46, 0x2c, 0xe5, 0x43, 0x4e, 0xf8, 0x59, 0x20, 0xe9, 0x73, 0xee, 0xc9, 0xe4, 0xd1, 0x4d, 0x7c, 0xb3, 0xcc, 0x2a, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4620 = { .name = "ecdsa_secp224r1_sha512_4620", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4620_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4620_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4620_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 279 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4621 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4621_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4621_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4621_sig[] = { 0xa3, 0x75, 0x92, 0x97, 0x18, 0xec, 0x4e, 0x6a, 0xda, 0x9c, 0x93, 0x70, 0xc5, 0x1d, 0xf6, 0xbd, 0xae, 0xe7, 0xeb, 0xab, 0x2a, 0x70, 0x67, 0x5d, 0x42, 0xa0, 0xb6, 0xb3, 0x9e, 0xaf, 0x48, 0x02, 0xef, 0xaf, 0x7c, 0xa0, 0x82, 0xff, 0xbf, 0x5e, 0xd7, 0x74, 0xaf, 0x43, 0x79, 0x2d, 0x9b, 0x3f, 0xd7, 0x11, 0xc6, 0xb1, 0xc3, 0x61, 0x12, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4621 = { .name = "ecdsa_secp224r1_sha512_4621", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4621_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4621_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4621_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 280 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4622 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4622_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4622_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4622_sig[] = { 0xd9, 0x7b, 0x32, 0xf3, 0xbf, 0x8b, 0xc1, 0x1e, 0xc2, 0x67, 0x2d, 0xd6, 0x32, 0x04, 0x18, 0xbe, 0xee, 0xd9, 0x95, 0x27, 0xa6, 0x3f, 0xe4, 0xc5, 0x21, 0x99, 0xec, 0x61, 0x68, 0xdd, 0x90, 0x06, 0xb0, 0x33, 0x19, 0xcc, 0xbe, 0x65, 0x1d, 0x0b, 0xda, 0xf8, 0x4c, 0x63, 0x35, 0x6f, 0x03, 0xcb, 0x00, 0x7a, 0x68, 0x65, 0xee, 0x3e, 0x02, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4622 = { .name = "ecdsa_secp224r1_sha512_4622", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4622_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4622_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4622_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 281 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4623 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4623_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4623_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4623_sig[] = { 0x8e, 0xe5, 0x79, 0x4d, 0xc2, 0xe6, 0x6f, 0x25, 0x84, 0x91, 0x0e, 0xa1, 0xd8, 0x36, 0x1e, 0x5b, 0x53, 0xdb, 0x53, 0x5a, 0xdc, 0xf5, 0xc1, 0xc3, 0x5e, 0x12, 0x83, 0x09, 0x5d, 0x1d, 0x8b, 0x9b, 0x99, 0x6c, 0x0a, 0x48, 0x8e, 0x05, 0xaf, 0x14, 0x42, 0x1b, 0x86, 0xe9, 0x84, 0x1f, 0x0c, 0xba, 0x70, 0x60, 0x27, 0xfc, 0x82, 0x7d, 0x4d, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4623 = { .name = "ecdsa_secp224r1_sha512_4623", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4623_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4623_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4623_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 282 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4624 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4624_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4624_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4624_sig[] = { 0x79, 0x99, 0x72, 0x7c, 0x0c, 0xc0, 0x2d, 0x88, 0xef, 0x27, 0x40, 0x12, 0xa7, 0x62, 0xaf, 0xcb, 0xb1, 0x9e, 0x7f, 0xce, 0x19, 0x09, 0x1a, 0x02, 0xac, 0xd0, 0x05, 0x64, 0xdb, 0xfa, 0xcf, 0x67, 0x99, 0x9f, 0x22, 0xc4, 0x99, 0xd4, 0x8a, 0x60, 0xa6, 0xfe, 0x4b, 0xbb, 0x74, 0x61, 0x99, 0xc2, 0x99, 0x57, 0xa1, 0xec, 0x7a, 0x09, 0x00, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4624 = { .name = "ecdsa_secp224r1_sha512_4624", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4624_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4624_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4624_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 283 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4625 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4625_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4625_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4625_sig[] = { 0x57, 0x97, 0xc2, 0x1c, 0x01, 0x62, 0xe4, 0x2f, 0x69, 0x69, 0x3c, 0x6c, 0x02, 0x44, 0xdf, 0xdf, 0x92, 0x18, 0xc0, 0x1e, 0x92, 0x35, 0x76, 0x01, 0x77, 0xb6, 0x1a, 0x54, 0x54, 0x52, 0xc8, 0x87, 0xb2, 0x7f, 0xb3, 0x42, 0xa8, 0xa0, 0x0d, 0x27, 0x57, 0x9c, 0x71, 0x95, 0xdd, 0xdb, 0x73, 0xdf, 0x39, 0x92, 0x33, 0xed, 0x0d, 0xea, 0x56, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4625 = { .name = "ecdsa_secp224r1_sha512_4625", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4625_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4625_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4625_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 284 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4626 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4626_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4626_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4626_sig[] = { 0x0e, 0xb9, 0xdc, 0x5d, 0x67, 0xbb, 0x0d, 0x40, 0x09, 0x54, 0x4f, 0x86, 0x54, 0x97, 0x79, 0x07, 0xdf, 0xe7, 0x70, 0xe7, 0xfa, 0xe4, 0x57, 0x1d, 0x31, 0xd7, 0xb4, 0xfa, 0xab, 0x5c, 0xda, 0x53, 0xe8, 0x68, 0xbf, 0xf5, 0x19, 0x8b, 0xe4, 0xbe, 0x36, 0x81, 0xb1, 0x86, 0xcb, 0x0c, 0x13, 0x96, 0xd2, 0x72, 0xc7, 0x1f, 0x09, 0x3f, 0x8b, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4626 = { .name = "ecdsa_secp224r1_sha512_4626", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4626_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4626_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4626_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 285 in file ecdsa_secp224r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4627 for ECDSA, tcId is 1 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4627_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4627_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbd, 0x28, 0x5e, 0xa1, 0x80, 0xb4, 0xc6, 0x15, 0x0c, 0xda, 0xfa, 0xfb, 0x0f, 0x6f, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4627 = { .name = "ecdsa_secp224r1_sha512_4627", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4627_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4627_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4627_sig, .siglen = 56, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4628 for ECDSA, tcId is 2 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4628_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4628_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4628 = { .name = "ecdsa_secp224r1_sha512_4628", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4628_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4628_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4628_sig, .siglen = 56, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4629 for ECDSA, tcId is 3 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4629_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4629_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4629 = { .name = "ecdsa_secp224r1_sha512_4629", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4629_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4629_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4629_sig, .siglen = 56, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4630 for ECDSA, tcId is 4 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4630_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4630_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4630 = { .name = "ecdsa_secp224r1_sha512_4630", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4630_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4630_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4630_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4631 for ECDSA, tcId is 5 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4631_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4631_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4631 = { .name = "ecdsa_secp224r1_sha512_4631", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4631_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4631_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4631_sig, .siglen = 56, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4632 for ECDSA, tcId is 68 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4632_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4632_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4632 = { .name = "ecdsa_secp224r1_sha512_4632", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4632_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4632_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4632_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4633 for ECDSA, tcId is 69 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4633_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4633_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4633 = { .name = "ecdsa_secp224r1_sha512_4633", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4633_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4633_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4633_sig, .siglen = 56, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4634 for ECDSA, tcId is 70 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4634_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4634_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4634 = { .name = "ecdsa_secp224r1_sha512_4634", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4634_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4634_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4634_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4635 for ECDSA, tcId is 71 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4635_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4635_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4635 = { .name = "ecdsa_secp224r1_sha512_4635", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4635_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4635_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4635_sig, .siglen = 56, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4636 for ECDSA, tcId is 93 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4636_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4636_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4636 = { .name = "ecdsa_secp224r1_sha512_4636", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4636_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4636_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4636_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4637 for ECDSA, tcId is 94 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4637_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4637_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4637 = { .name = "ecdsa_secp224r1_sha512_4637", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4637_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4637_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4637_sig, .siglen = 58, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4638 for ECDSA, tcId is 95 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4638_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4638_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4638 = { .name = "ecdsa_secp224r1_sha512_4638", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4638_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4638_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4638_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4639 for ECDSA, tcId is 96 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4639_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4639_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4639 = { .name = "ecdsa_secp224r1_sha512_4639", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4639_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4639_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4639_sig, .siglen = 56, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4640 for ECDSA, tcId is 98 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4640_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4640_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x05, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4640 = { .name = "ecdsa_secp224r1_sha512_4640", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4640_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4640_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4640_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4641 for ECDSA, tcId is 99 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4641_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4641_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4641 = { .name = "ecdsa_secp224r1_sha512_4641", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4641_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4641_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4641_sig, .siglen = 58, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4642 for ECDSA, tcId is 114 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4642_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4642_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4642 = { .name = "ecdsa_secp224r1_sha512_4642", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4642_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4642_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4642_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4643 for ECDSA, tcId is 115 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4643_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4643_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4643 = { .name = "ecdsa_secp224r1_sha512_4643", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4643_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4643_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4643_sig, .siglen = 56, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4644 for ECDSA, tcId is 118 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4644_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4644_sig[] = { 0x6b, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4644 = { .name = "ecdsa_secp224r1_sha512_4644", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4644_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4644_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4644_sig, .siglen = 56, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4645 for ECDSA, tcId is 119 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4645_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4645_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x02, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4645 = { .name = "ecdsa_secp224r1_sha512_4645", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4645_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4645_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4645_sig, .siglen = 57, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4646 for ECDSA, tcId is 120 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4646_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4646_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0x2b, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4646 = { .name = "ecdsa_secp224r1_sha512_4646", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4646_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4646_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4646_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4647 for ECDSA, tcId is 121 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4647_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4647_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4647 = { .name = "ecdsa_secp224r1_sha512_4647", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4647_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4647_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4647_sig, .siglen = 56, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4648 for ECDSA, tcId is 122 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4648_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4648_sig[] = { 0x00, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4648 = { .name = "ecdsa_secp224r1_sha512_4648", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4648_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4648_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4648_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4649 for ECDSA, tcId is 123 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4649_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4649_sig[] = { 0x00, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4649 = { .name = "ecdsa_secp224r1_sha512_4649", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4649_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4649_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4649_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4650 for ECDSA, tcId is 124 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4650_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4650_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4650 = { .name = "ecdsa_secp224r1_sha512_4650", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4650_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4650_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4650_sig, .siglen = 56, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4651 for ECDSA, tcId is 125 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4651_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4651_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4651 = { .name = "ecdsa_secp224r1_sha512_4651", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4651_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4651_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4651_sig, .siglen = 56, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4652 for ECDSA, tcId is 126 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4652_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4652_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4652 = { .name = "ecdsa_secp224r1_sha512_4652", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4652_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4652_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4652_sig, .siglen = 57, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp224r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4653 for ECDSA, tcId is 129 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4653_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4653_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4653 = { .name = "ecdsa_secp224r1_sha512_4653", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4653_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4653_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4653_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4654 for ECDSA, tcId is 130 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4654_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4654_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4654 = { .name = "ecdsa_secp224r1_sha512_4654", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4654_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4654_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4654_sig, .siglen = 56, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4655 for ECDSA, tcId is 131 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4655_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4655_sig[] = { 0x01, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x81, 0x73, 0x42, 0x8b, 0xc4, 0x8a, 0x2c, 0x3f, 0x03, 0x1c, 0xaa, 0xec, 0x3b, 0xbc, 0xe8, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4655 = { .name = "ecdsa_secp224r1_sha512_4655", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4655_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4655_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4655_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4656 for ECDSA, tcId is 132 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4656_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4656_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x83, 0x45, 0xfc, 0xca, 0x52, 0xa9, 0xb0, 0x17, 0x48, 0xca, 0x20, 0x33, 0x83, 0x68, 0x6e, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4656 = { .name = "ecdsa_secp224r1_sha512_4656", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4656_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4656_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4656_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4657 for ECDSA, tcId is 133 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4657_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4657_sig[] = { 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7d, 0xa3, 0x60, 0x54, 0xf4, 0x66, 0x11, 0xd4, 0xda, 0x0c, 0x9a, 0x70, 0x20, 0x6d, 0x55, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4657 = { .name = "ecdsa_secp224r1_sha512_4657", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4657_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4657_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4657_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4658 for ECDSA, tcId is 134 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4658_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4658_sig[] = { 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7c, 0xba, 0x03, 0x35, 0xad, 0x56, 0x4f, 0xe8, 0xb7, 0x35, 0xdf, 0xcc, 0x7c, 0x97, 0x92, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4658 = { .name = "ecdsa_secp224r1_sha512_4658", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4658_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4658_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4658_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4659 for ECDSA, tcId is 135 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4659_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4659_sig[] = { 0xfe, 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7e, 0x8c, 0xbd, 0x74, 0x3b, 0x75, 0xd3, 0xc0, 0xfc, 0xe3, 0x55, 0x13, 0xc4, 0x43, 0x18, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4659 = { .name = "ecdsa_secp224r1_sha512_4659", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4659_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4659_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4659_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4660 for ECDSA, tcId is 136 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4660_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4660_sig[] = { 0x01, 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4660 = { .name = "ecdsa_secp224r1_sha512_4660", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4660_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4660_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4660_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4661 for ECDSA, tcId is 137 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4661_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4661_sig[] = { 0x96, 0xe3, 0x8d, 0xc2, 0x29, 0x58, 0x0a, 0x2e, 0xe4, 0x73, 0x71, 0x74, 0x2f, 0x7d, 0xa3, 0x60, 0x54, 0xf4, 0x66, 0x11, 0xd4, 0xda, 0x0c, 0x9a, 0x70, 0x20, 0x6d, 0x55, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4661 = { .name = "ecdsa_secp224r1_sha512_4661", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4661_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4661_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4661_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4662 for ECDSA, tcId is 138 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4662_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4662_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x01, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0x04, 0xe7, 0x1f, 0xf1, 0x2b, 0xb6, 0x12, 0xad, 0x77, 0x8f, 0xbd, 0xa8, 0xe5, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4662 = { .name = "ecdsa_secp224r1_sha512_4662", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4662_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4662_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4662_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4663 for ECDSA, tcId is 139 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4663_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4663_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x42, 0xd7, 0xa1, 0x5e, 0x7f, 0x4b, 0x39, 0xea, 0xf3, 0x25, 0x05, 0x04, 0xf0, 0x90, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4663 = { .name = "ecdsa_secp224r1_sha512_4663", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4663_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4663_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4663_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4664 for ECDSA, tcId is 140 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4664_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4664_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbe, 0x11, 0xbb, 0xc0, 0xc7, 0xc4, 0x88, 0x01, 0x2f, 0xb1, 0xb5, 0x9e, 0xb3, 0x44, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4664 = { .name = "ecdsa_secp224r1_sha512_4664", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4664_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4664_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4664_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4665 for ECDSA, tcId is 141 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4665_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4665_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0xfe, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbe, 0xfb, 0x18, 0xe0, 0x0e, 0xd4, 0x49, 0xed, 0x52, 0x88, 0x70, 0x42, 0x57, 0x1a, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4665 = { .name = "ecdsa_secp224r1_sha512_4665", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4665_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4665_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4665_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4666 for ECDSA, tcId is 142 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4666_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4666_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x01, 0xc6, 0xb8, 0x99, 0x04, 0x98, 0x59, 0xa0, 0x1f, 0x50, 0x93, 0xea, 0xb0, 0x83, 0x41, 0xee, 0x44, 0x3f, 0x38, 0x3b, 0x77, 0xfe, 0xd0, 0x4e, 0x4a, 0x61, 0x4c, 0xbb, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4666 = { .name = "ecdsa_secp224r1_sha512_4666", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4666_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4666_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4666_sig, .siglen = 57, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4667 for ECDSA, tcId is 143 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4667_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4667_sig[] = { 0x69, 0x1c, 0x72, 0x3d, 0xd6, 0xa7, 0xf5, 0xd1, 0x1b, 0x8c, 0x8e, 0x8b, 0xd0, 0x82, 0x5c, 0x9f, 0xab, 0x0b, 0x99, 0xee, 0x2b, 0x25, 0xf3, 0x65, 0x8f, 0xdf, 0x92, 0xab, 0x39, 0x47, 0x66, 0xfb, 0x67, 0xa6, 0x5f, 0xe0, 0xaf, 0x6c, 0x15, 0x4f, 0x7c, 0xbe, 0x11, 0xbb, 0xc0, 0xc7, 0xc4, 0x88, 0x01, 0x2f, 0xb1, 0xb5, 0x9e, 0xb3, 0x44, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4667 = { .name = "ecdsa_secp224r1_sha512_4667", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4667_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4667_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4667_sig, .siglen = 56, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4668 for ECDSA, tcId is 144 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4668_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4668_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4668 = { .name = "ecdsa_secp224r1_sha512_4668", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4668_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4668_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4668_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4669 for ECDSA, tcId is 145 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4669_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4669_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4669 = { .name = "ecdsa_secp224r1_sha512_4669", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4669_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4669_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4669_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4670 for ECDSA, tcId is 146 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4670_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4670_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4670 = { .name = "ecdsa_secp224r1_sha512_4670", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4670_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4670_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4670_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4671 for ECDSA, tcId is 147 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4671_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4671_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4671 = { .name = "ecdsa_secp224r1_sha512_4671", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4671_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4671_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4671_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4672 for ECDSA, tcId is 148 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4672_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4672_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4672 = { .name = "ecdsa_secp224r1_sha512_4672", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4672_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4672_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4672_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4673 for ECDSA, tcId is 149 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4673_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4673_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4673 = { .name = "ecdsa_secp224r1_sha512_4673", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4673_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4673_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4673_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4674 for ECDSA, tcId is 150 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4674_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4674_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4674 = { .name = "ecdsa_secp224r1_sha512_4674", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4674_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4674_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4674_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4675 for ECDSA, tcId is 151 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4675_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4675_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4675 = { .name = "ecdsa_secp224r1_sha512_4675", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4675_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4675_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4675_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4676 for ECDSA, tcId is 154 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4676_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4676_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4676 = { .name = "ecdsa_secp224r1_sha512_4676", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4676_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4676_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4676_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4677 for ECDSA, tcId is 155 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4677_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4677_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4677 = { .name = "ecdsa_secp224r1_sha512_4677", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4677_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4677_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4677_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4678 for ECDSA, tcId is 156 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4678_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4678_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4678 = { .name = "ecdsa_secp224r1_sha512_4678", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4678_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4678_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4678_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4679 for ECDSA, tcId is 157 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4679_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4679_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4679 = { .name = "ecdsa_secp224r1_sha512_4679", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4679_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4679_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4679_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4680 for ECDSA, tcId is 158 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4680_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4680_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4680 = { .name = "ecdsa_secp224r1_sha512_4680", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4680_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4680_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4680_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4681 for ECDSA, tcId is 159 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4681_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4681_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4681 = { .name = "ecdsa_secp224r1_sha512_4681", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4681_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4681_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4681_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4682 for ECDSA, tcId is 160 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4682_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4682_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4682 = { .name = "ecdsa_secp224r1_sha512_4682", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4682_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4682_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4682_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4683 for ECDSA, tcId is 161 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4683_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4683_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4683 = { .name = "ecdsa_secp224r1_sha512_4683", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4683_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4683_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4683_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4684 for ECDSA, tcId is 164 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4684_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4684_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4684 = { .name = "ecdsa_secp224r1_sha512_4684", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4684_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4684_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4684_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4685 for ECDSA, tcId is 165 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4685_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4685_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4685 = { .name = "ecdsa_secp224r1_sha512_4685", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4685_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4685_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4685_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4686 for ECDSA, tcId is 166 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4686_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4686_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4686 = { .name = "ecdsa_secp224r1_sha512_4686", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4686_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4686_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4686_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4687 for ECDSA, tcId is 167 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4687_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4687_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4687 = { .name = "ecdsa_secp224r1_sha512_4687", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4687_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4687_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4687_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4688 for ECDSA, tcId is 168 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4688_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4688_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4688 = { .name = "ecdsa_secp224r1_sha512_4688", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4688_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4688_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4688_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4689 for ECDSA, tcId is 169 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4689_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4689_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4689 = { .name = "ecdsa_secp224r1_sha512_4689", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4689_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4689_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4689_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4690 for ECDSA, tcId is 170 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4690_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4690_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4690 = { .name = "ecdsa_secp224r1_sha512_4690", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4690_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4690_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4690_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4691 for ECDSA, tcId is 171 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4691_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4691_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4691 = { .name = "ecdsa_secp224r1_sha512_4691", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4691_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4691_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4691_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4692 for ECDSA, tcId is 174 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4692_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4692_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4692 = { .name = "ecdsa_secp224r1_sha512_4692", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4692_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4692_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4692_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4693 for ECDSA, tcId is 175 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4693_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4693_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4693 = { .name = "ecdsa_secp224r1_sha512_4693", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4693_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4693_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4693_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4694 for ECDSA, tcId is 176 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4694_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4694_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4694 = { .name = "ecdsa_secp224r1_sha512_4694", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4694_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4694_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4694_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4695 for ECDSA, tcId is 177 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4695_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4695_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4695 = { .name = "ecdsa_secp224r1_sha512_4695", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4695_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4695_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4695_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4696 for ECDSA, tcId is 178 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4696_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4696_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4696 = { .name = "ecdsa_secp224r1_sha512_4696", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4696_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4696_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4696_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4697 for ECDSA, tcId is 179 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4697_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4697_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4697 = { .name = "ecdsa_secp224r1_sha512_4697", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4697_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4697_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4697_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4698 for ECDSA, tcId is 180 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4698_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4698_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4698 = { .name = "ecdsa_secp224r1_sha512_4698", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4698_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4698_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4698_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4699 for ECDSA, tcId is 181 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4699_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4699_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4699 = { .name = "ecdsa_secp224r1_sha512_4699", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4699_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4699_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4699_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4700 for ECDSA, tcId is 184 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4700_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4700_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4700 = { .name = "ecdsa_secp224r1_sha512_4700", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4700_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4700_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4700_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4701 for ECDSA, tcId is 185 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4701_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4701_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4701 = { .name = "ecdsa_secp224r1_sha512_4701", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4701_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4701_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4701_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4702 for ECDSA, tcId is 186 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4702_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4702_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4702 = { .name = "ecdsa_secp224r1_sha512_4702", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4702_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4702_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4702_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4703 for ECDSA, tcId is 187 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4703_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4703_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4703 = { .name = "ecdsa_secp224r1_sha512_4703", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4703_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4703_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4703_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4704 for ECDSA, tcId is 188 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4704_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4704_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4704 = { .name = "ecdsa_secp224r1_sha512_4704", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4704_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4704_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4704_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4705 for ECDSA, tcId is 189 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4705_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4705_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4705 = { .name = "ecdsa_secp224r1_sha512_4705", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4705_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4705_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4705_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4706 for ECDSA, tcId is 190 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4706_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4706_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4706 = { .name = "ecdsa_secp224r1_sha512_4706", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4706_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4706_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4706_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4707 for ECDSA, tcId is 191 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4707_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4707_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4707 = { .name = "ecdsa_secp224r1_sha512_4707", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4707_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4707_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4707_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4708 for ECDSA, tcId is 194 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4708_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4708_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4708 = { .name = "ecdsa_secp224r1_sha512_4708", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4708_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4708_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4708_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4709 for ECDSA, tcId is 195 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4709_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4709_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4709 = { .name = "ecdsa_secp224r1_sha512_4709", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4709_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4709_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4709_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4710 for ECDSA, tcId is 196 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4710_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4710_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4710 = { .name = "ecdsa_secp224r1_sha512_4710", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4710_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4710_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4710_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4711 for ECDSA, tcId is 197 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4711_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4711_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4711 = { .name = "ecdsa_secp224r1_sha512_4711", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4711_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4711_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4711_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4712 for ECDSA, tcId is 198 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4712_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4712_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4712 = { .name = "ecdsa_secp224r1_sha512_4712", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4712_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4712_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4712_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4713 for ECDSA, tcId is 199 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4713_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4713_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4713 = { .name = "ecdsa_secp224r1_sha512_4713", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4713_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4713_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4713_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4714 for ECDSA, tcId is 200 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4714_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4714_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4714 = { .name = "ecdsa_secp224r1_sha512_4714", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4714_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4714_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4714_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4715 for ECDSA, tcId is 201 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4715_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4715_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4715 = { .name = "ecdsa_secp224r1_sha512_4715", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4715_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4715_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4715_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4716 for ECDSA, tcId is 204 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4716_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4716_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4716 = { .name = "ecdsa_secp224r1_sha512_4716", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4716_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4716_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4716_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4717 for ECDSA, tcId is 205 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4717_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4717_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4717 = { .name = "ecdsa_secp224r1_sha512_4717", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4717_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4717_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4717_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4718 for ECDSA, tcId is 206 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4718_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4718_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4718 = { .name = "ecdsa_secp224r1_sha512_4718", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4718_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4718_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4718_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4719 for ECDSA, tcId is 207 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4719_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4719_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4719 = { .name = "ecdsa_secp224r1_sha512_4719", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4719_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4719_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4719_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4720 for ECDSA, tcId is 208 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4720_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4720_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4720 = { .name = "ecdsa_secp224r1_sha512_4720", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4720_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4720_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4720_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4721 for ECDSA, tcId is 209 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4721_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4721_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4721 = { .name = "ecdsa_secp224r1_sha512_4721", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4721_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4721_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4721_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4722 for ECDSA, tcId is 210 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4722_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4722_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4722 = { .name = "ecdsa_secp224r1_sha512_4722", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4722_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4722_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4722_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4723 for ECDSA, tcId is 211 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4723_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4723_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4723 = { .name = "ecdsa_secp224r1_sha512_4723", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4723_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4723_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4723_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4724 for ECDSA, tcId is 214 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4724_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4724_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4724 = { .name = "ecdsa_secp224r1_sha512_4724", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4724_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4724_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4724_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4725 for ECDSA, tcId is 215 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4725_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4725_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4725 = { .name = "ecdsa_secp224r1_sha512_4725", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4725_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4725_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4725_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4726 for ECDSA, tcId is 216 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4726_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4726_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4726 = { .name = "ecdsa_secp224r1_sha512_4726", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4726_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4726_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4726_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4727 for ECDSA, tcId is 217 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4727_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4727_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4727 = { .name = "ecdsa_secp224r1_sha512_4727", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4727_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4727_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4727_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4728 for ECDSA, tcId is 218 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4728_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4728_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4728 = { .name = "ecdsa_secp224r1_sha512_4728", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4728_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4728_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4728_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4729 for ECDSA, tcId is 219 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4729_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4729_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4729 = { .name = "ecdsa_secp224r1_sha512_4729", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4729_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4729_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4729_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4730 for ECDSA, tcId is 220 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4730_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4730_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4730 = { .name = "ecdsa_secp224r1_sha512_4730", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4730_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4730_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4730_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4731 for ECDSA, tcId is 221 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4731_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4731_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4731 = { .name = "ecdsa_secp224r1_sha512_4731", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4731_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4731_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4731_sig, .siglen = 56, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4732 for ECDSA, tcId is 230 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4732_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4732_msg[] = { 0x36, 0x39, 0x31, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4732_sig[] = { 0x32, 0x6b, 0xc0, 0x63, 0x53, 0xf7, 0xf9, 0xc9, 0xf7, 0x7b, 0x8f, 0x4b, 0x55, 0x46, 0x4e, 0x86, 0x19, 0x94, 0x4e, 0x78, 0x79, 0x40, 0x2c, 0xca, 0x57, 0x2e, 0x04, 0x1a, 0x22, 0x1a, 0x25, 0xeb, 0x9c, 0xc8, 0xdd, 0x66, 0xfd, 0xf1, 0x56, 0xb2, 0xf6, 0xab, 0x60, 0x1a, 0xb6, 0xd9, 0xc5, 0x09, 0x24, 0x7f, 0x8d, 0xe5, 0xd2, 0x67, 0x1a, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4732 = { .name = "ecdsa_secp224r1_sha512_4732", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4732_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4732_msg, .msglen = 5, .sig = ecdsa_secp224r1_sha512_4732_sig, .siglen = 56, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4733 for ECDSA, tcId is 231 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4733_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4733_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4733_sig[] = { 0x3b, 0x30, 0x08, 0xed, 0x59, 0x6b, 0x7f, 0xa2, 0x76, 0x49, 0x8d, 0xef, 0x40, 0xd9, 0x6b, 0x1e, 0xb2, 0xff, 0xb7, 0x31, 0xa4, 0x40, 0x50, 0xff, 0xb7, 0x32, 0xe4, 0xe6, 0x6d, 0xbb, 0x08, 0xc5, 0x6d, 0xb7, 0x37, 0xe9, 0x39, 0x2f, 0xf4, 0xf3, 0xa5, 0x4d, 0x8b, 0x80, 0x6d, 0x70, 0xaf, 0x22, 0x6e, 0xcf, 0x41, 0x3b, 0x34, 0x65, 0xde, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4733 = { .name = "ecdsa_secp224r1_sha512_4733", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4733_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4733_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4733_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4734 for ECDSA, tcId is 232 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4734_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4734_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4734_sig[] = { 0xd1, 0xfe, 0x26, 0x9c, 0x30, 0x61, 0xe4, 0xb9, 0x46, 0x04, 0xe8, 0xd6, 0x12, 0xd7, 0x08, 0x87, 0x06, 0x8c, 0xc7, 0xd5, 0x23, 0x2c, 0xd5, 0xa9, 0xb7, 0x29, 0x23, 0xa1, 0x3c, 0x1c, 0xbc, 0x02, 0x7d, 0x33, 0xfb, 0x24, 0x51, 0xd5, 0x2d, 0xce, 0x3a, 0x82, 0x8a, 0x8c, 0x7e, 0xcc, 0x49, 0x0a, 0x28, 0xa9, 0x4e, 0x5e, 0x5b, 0xb2, 0xc4, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4734 = { .name = "ecdsa_secp224r1_sha512_4734", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4734_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4734_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4734_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4735 for ECDSA, tcId is 233 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4735_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4735_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4735_sig[] = { 0x04, 0x58, 0x61, 0x34, 0xcc, 0x67, 0x92, 0x95, 0xdd, 0x93, 0x49, 0x93, 0x11, 0xc4, 0xa8, 0xaf, 0x37, 0xcb, 0x94, 0xda, 0xdb, 0xae, 0x18, 0xd8, 0xee, 0x27, 0x9b, 0x9b, 0xbf, 0x91, 0x70, 0xa1, 0xb6, 0x5b, 0x66, 0x56, 0x64, 0xcf, 0x56, 0x7d, 0x40, 0xa9, 0x95, 0xce, 0x25, 0x2a, 0x23, 0xd6, 0xa9, 0xf9, 0x62, 0xb0, 0x5e, 0x36, 0x44, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4735 = { .name = "ecdsa_secp224r1_sha512_4735", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4735_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4735_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4735_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4736 for ECDSA, tcId is 234 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4736_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4736_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4736_sig[] = { 0xc1, 0xf5, 0x10, 0x09, 0xb9, 0x35, 0xb4, 0x77, 0x33, 0x74, 0x36, 0x4e, 0xc3, 0xee, 0xd7, 0x2a, 0x24, 0xb7, 0x09, 0x26, 0xe0, 0x34, 0x9c, 0x77, 0x86, 0x2f, 0x34, 0x75, 0x46, 0xdf, 0x3d, 0x98, 0xf1, 0x04, 0xba, 0x66, 0x02, 0xf8, 0x04, 0x1a, 0x5b, 0xf5, 0x49, 0x5f, 0xb2, 0x40, 0xe1, 0x03, 0xd1, 0xbd, 0x17, 0xf2, 0xfa, 0x87, 0x89, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4736 = { .name = "ecdsa_secp224r1_sha512_4736", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4736_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4736_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4736_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4737 for ECDSA, tcId is 235 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4737_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4737_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4737_sig[] = { 0xe8, 0x22, 0x24, 0x28, 0x72, 0xf1, 0xec, 0xf3, 0x38, 0xa4, 0xf7, 0x73, 0xdf, 0x87, 0xb6, 0x7e, 0x9b, 0x21, 0xbb, 0x28, 0x3a, 0xca, 0xc7, 0xd6, 0x6b, 0x26, 0x55, 0x1e, 0x94, 0xd4, 0xe0, 0xfc, 0x3c, 0x63, 0x59, 0x99, 0x4a, 0x6e, 0xae, 0xdd, 0xdd, 0x15, 0x33, 0xf4, 0x90, 0xf7, 0x2e, 0xf8, 0x51, 0x39, 0xf8, 0xd3, 0xb3, 0x9c, 0xf0, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4737 = { .name = "ecdsa_secp224r1_sha512_4737", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4737_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4737_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4737_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4738 for ECDSA, tcId is 236 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4738_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4738_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4738_sig[] = { 0x7f, 0xd4, 0x55, 0x28, 0xeb, 0x7b, 0xfc, 0x37, 0x10, 0xe2, 0x73, 0xc4, 0x46, 0x8f, 0x0b, 0x50, 0xeb, 0xf9, 0x3f, 0x94, 0xcd, 0x0e, 0x7a, 0x60, 0x2a, 0x49, 0x29, 0xa6, 0x46, 0x61, 0x3d, 0xd1, 0xff, 0xd8, 0x5d, 0xf8, 0xd7, 0x1f, 0x34, 0x98, 0x00, 0x17, 0x21, 0xfd, 0xa4, 0x98, 0x2c, 0x27, 0xa1, 0xc2, 0x91, 0x35, 0x9b, 0x05, 0xb1, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4738 = { .name = "ecdsa_secp224r1_sha512_4738", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4738_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4738_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4738_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4739 for ECDSA, tcId is 237 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4739_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4739_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4739_sig[] = { 0x36, 0xd1, 0x37, 0xb6, 0x91, 0x71, 0xa4, 0x86, 0x93, 0x3b, 0x50, 0x13, 0x8d, 0x1d, 0xb1, 0x84, 0x27, 0x24, 0x76, 0x6a, 0xfd, 0x25, 0xc8, 0x5b, 0x00, 0x32, 0xda, 0xf5, 0x8e, 0x70, 0x0d, 0xe2, 0x1f, 0x2f, 0xc3, 0x50, 0xa3, 0x4c, 0x7c, 0xc1, 0x90, 0x54, 0xcf, 0x37, 0x1e, 0xca, 0xb6, 0xf7, 0x33, 0x1c, 0xce, 0xcf, 0x68, 0xfc, 0xa0, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4739 = { .name = "ecdsa_secp224r1_sha512_4739", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4739_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4739_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4739_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4740 for ECDSA, tcId is 238 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4740_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4740_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4740_sig[] = { 0xda, 0x3b, 0x43, 0x69, 0x08, 0xf5, 0xa8, 0x2f, 0x26, 0xbc, 0x17, 0xa8, 0x57, 0x7a, 0xd2, 0xa7, 0x82, 0x94, 0x6e, 0x3a, 0x75, 0x87, 0xb0, 0x1d, 0x25, 0x3b, 0x1d, 0xd0, 0xa6, 0x54, 0x4e, 0x38, 0xf2, 0x4e, 0x81, 0x17, 0x37, 0x0c, 0x04, 0x9b, 0x5d, 0x1f, 0x67, 0x12, 0xea, 0x14, 0x33, 0x7a, 0x94, 0x51, 0x12, 0x24, 0xdf, 0x44, 0x96, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4740 = { .name = "ecdsa_secp224r1_sha512_4740", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4740_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4740_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4740_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4741 for ECDSA, tcId is 239 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4741_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4741_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4741_sig[] = { 0x43, 0x14, 0xa2, 0xbd, 0x13, 0x9d, 0x47, 0xbe, 0x3d, 0x9f, 0xd9, 0xeb, 0xdd, 0x72, 0xa0, 0x6a, 0x22, 0x02, 0x19, 0xc7, 0x59, 0x6b, 0x94, 0x41, 0x78, 0xee, 0x6f, 0x5f, 0x0e, 0x6f, 0x1d, 0x2f, 0x57, 0xc6, 0x99, 0x65, 0x4e, 0x9c, 0x70, 0x5d, 0x7b, 0x8f, 0xa3, 0xc1, 0xcc, 0xb0, 0xf9, 0x39, 0xf6, 0x36, 0x8b, 0xed, 0x24, 0x6b, 0x2e, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4741 = { .name = "ecdsa_secp224r1_sha512_4741", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4741_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4741_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4741_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4742 for ECDSA, tcId is 240 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4742_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4742_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4742_sig[] = { 0x6a, 0x25, 0x64, 0x34, 0x64, 0x68, 0x26, 0x79, 0xd8, 0x49, 0x70, 0xc6, 0x03, 0x92, 0x7f, 0x4a, 0x8c, 0xa8, 0x3e, 0x7e, 0xf9, 0x71, 0x5d, 0xd1, 0xed, 0x84, 0xc2, 0x8f, 0x93, 0x2b, 0x78, 0xd1, 0x65, 0xc2, 0x25, 0xa5, 0x25, 0x3e, 0x62, 0x01, 0xc0, 0xb1, 0xde, 0xd0, 0x89, 0x8b, 0xa2, 0x4d, 0xe4, 0x4b, 0x23, 0x23, 0x3e, 0xb7, 0x80, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4742 = { .name = "ecdsa_secp224r1_sha512_4742", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4742_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4742_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4742_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4743 for ECDSA, tcId is 241 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4743_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4743_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4743_sig[] = { 0x47, 0x6a, 0xaa, 0x58, 0x67, 0x7d, 0x9e, 0x60, 0x47, 0x7c, 0xff, 0xd0, 0x26, 0xc4, 0x32, 0x48, 0xe2, 0xcf, 0x3c, 0xc2, 0x1e, 0x8f, 0xdc, 0xcb, 0x75, 0xce, 0xef, 0xad, 0x77, 0x99, 0xfc, 0x7a, 0xf8, 0xf9, 0xb9, 0x29, 0x20, 0x3f, 0xaf, 0x89, 0x9b, 0xb5, 0xca, 0x1a, 0xec, 0xf2, 0x49, 0x25, 0x55, 0x15, 0x72, 0x82, 0xdf, 0xde, 0x79, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4743 = { .name = "ecdsa_secp224r1_sha512_4743", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4743_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4743_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4743_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4744 for ECDSA, tcId is 242 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4744_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4744_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4744_sig[] = { 0x63, 0xa9, 0x86, 0x14, 0xa1, 0x42, 0x1e, 0x2e, 0xbb, 0x27, 0x8d, 0xe5, 0x3b, 0x61, 0x61, 0x8b, 0xaf, 0xc7, 0x57, 0x12, 0x26, 0x47, 0xaf, 0xfd, 0x35, 0x8c, 0x66, 0x7a, 0x8e, 0xdb, 0xa8, 0x06, 0xe0, 0xa7, 0xe4, 0x38, 0xca, 0x35, 0xf9, 0x84, 0x05, 0xa8, 0xad, 0x2d, 0x5c, 0x3e, 0x8c, 0xc2, 0xd5, 0xc4, 0x38, 0x42, 0x33, 0xae, 0xf0, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4744 = { .name = "ecdsa_secp224r1_sha512_4744", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4744_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4744_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4744_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4745 for ECDSA, tcId is 243 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4745_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4745_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4745_sig[] = { 0x88, 0x0b, 0x52, 0x38, 0xa0, 0x14, 0xf8, 0xb4, 0x46, 0x55, 0xb8, 0x3c, 0x17, 0x58, 0x80, 0xeb, 0x1e, 0x83, 0x07, 0x89, 0x9a, 0x82, 0x4e, 0xa3, 0xe0, 0x7d, 0xbd, 0x6d, 0xa4, 0x72, 0x4c, 0x86, 0x49, 0xfd, 0x74, 0xe5, 0xbc, 0x8d, 0x7f, 0xe6, 0xa9, 0x06, 0x7a, 0x13, 0x76, 0xfb, 0x8e, 0x08, 0xdb, 0xda, 0xed, 0x68, 0x98, 0x0b, 0x0f, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4745 = { .name = "ecdsa_secp224r1_sha512_4745", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4745_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4745_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4745_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4746 for ECDSA, tcId is 244 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4746_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4746_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4746_sig[] = { 0xf8, 0x74, 0x35, 0x88, 0x23, 0x46, 0x34, 0xdd, 0x98, 0x91, 0xf4, 0xf2, 0xf4, 0x0f, 0x4e, 0x46, 0xb7, 0x7f, 0x97, 0xb8, 0x2d, 0xc5, 0xdb, 0xe2, 0x34, 0xaa, 0x6b, 0x5d, 0x80, 0x65, 0x6e, 0x52, 0x62, 0xbc, 0x25, 0xe1, 0x58, 0xf3, 0xb7, 0x8f, 0x51, 0xae, 0x0d, 0x6a, 0x41, 0xcc, 0x8c, 0xca, 0x1a, 0xa4, 0x57, 0x22, 0x1b, 0x2e, 0xb7, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4746 = { .name = "ecdsa_secp224r1_sha512_4746", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4746_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4746_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4746_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4747 for ECDSA, tcId is 245 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4747_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4747_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4747_sig[] = { 0x2a, 0x23, 0x57, 0xe3, 0xd8, 0xfe, 0x34, 0x43, 0x45, 0x82, 0xbe, 0x4d, 0xab, 0xd5, 0x8b, 0x77, 0xb3, 0x88, 0xd1, 0xd5, 0x2a, 0xdc, 0xc6, 0x64, 0xf4, 0x5d, 0xec, 0xe4, 0x94, 0xbe, 0x3a, 0x36, 0x9b, 0x7c, 0x27, 0x88, 0xdf, 0x45, 0x87, 0xec, 0x5b, 0xd4, 0x16, 0x3c, 0x4c, 0xbc, 0x40, 0xb7, 0x7d, 0xe1, 0xa8, 0x5e, 0x8b, 0xcf, 0xb2, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4747 = { .name = "ecdsa_secp224r1_sha512_4747", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4747_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4747_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4747_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4748 for ECDSA, tcId is 246 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4748_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4748_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4748_sig[] = { 0xb6, 0xb0, 0xc0, 0xab, 0xa6, 0xc6, 0x11, 0x30, 0x0e, 0xca, 0xd8, 0x81, 0x62, 0x42, 0xc4, 0x15, 0xf1, 0x83, 0xa2, 0xbd, 0x4d, 0x46, 0xcd, 0x77, 0x69, 0x03, 0x3d, 0x9b, 0x77, 0x50, 0xb2, 0x4b, 0xe0, 0x2f, 0x22, 0xdc, 0x0b, 0x65, 0x6f, 0xe4, 0xaf, 0x37, 0x74, 0x13, 0xf9, 0x45, 0x3d, 0xff, 0x99, 0x22, 0x69, 0x15, 0xdb, 0xb6, 0xe0, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4748 = { .name = "ecdsa_secp224r1_sha512_4748", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4748_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4748_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4748_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4749 for ECDSA, tcId is 247 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4749_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4749_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4749_sig[] = { 0xa5, 0xc1, 0xa7, 0x5c, 0x27, 0x79, 0xf3, 0xeb, 0x83, 0xa6, 0x5e, 0x29, 0x59, 0x27, 0xcc, 0xe4, 0x28, 0x8e, 0x9d, 0x5c, 0x21, 0x32, 0xa4, 0xc7, 0xca, 0x92, 0x52, 0x6e, 0x10, 0xfe, 0x30, 0xf0, 0xbe, 0x33, 0xa7, 0x85, 0x38, 0x51, 0x37, 0xb5, 0x7d, 0x80, 0x61, 0x40, 0xa4, 0x02, 0xb9, 0xbd, 0x3c, 0x1d, 0xf1, 0xb5, 0x7d, 0xe6, 0xda, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4749 = { .name = "ecdsa_secp224r1_sha512_4749", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4749_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4749_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4749_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4750 for ECDSA, tcId is 248 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4750_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4750_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4750_sig[] = { 0xb9, 0x2b, 0x55, 0x21, 0xd1, 0xa7, 0xab, 0xe7, 0x7e, 0x85, 0x24, 0xdb, 0xd3, 0x00, 0x11, 0x21, 0xcf, 0x83, 0xc0, 0x80, 0x17, 0xe3, 0x91, 0x7b, 0xc5, 0x8b, 0x5d, 0x1c, 0x22, 0x4b, 0x11, 0x37, 0x79, 0x01, 0x7f, 0x6a, 0x52, 0x21, 0x71, 0xed, 0xf9, 0x30, 0xf1, 0xb5, 0xd4, 0xf5, 0xe7, 0xde, 0xdc, 0x6d, 0x2d, 0x51, 0x4f, 0xd7, 0x88, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4750 = { .name = "ecdsa_secp224r1_sha512_4750", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4750_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4750_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4750_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4751 for ECDSA, tcId is 249 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4751_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4751_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4751_sig[] = { 0xeb, 0xd3, 0xec, 0xf3, 0xaa, 0x64, 0xcd, 0xcd, 0xd1, 0x71, 0x58, 0x5a, 0x14, 0x1a, 0x4a, 0x67, 0x3a, 0x8d, 0x5d, 0xe0, 0xca, 0x08, 0x7d, 0xfc, 0xdf, 0x62, 0x43, 0x2e, 0xe0, 0xf1, 0xa0, 0xf7, 0xb8, 0xf5, 0xac, 0x4a, 0x42, 0x63, 0x2f, 0x87, 0x15, 0x6a, 0xd1, 0x09, 0x40, 0x79, 0x39, 0x3b, 0x03, 0xf2, 0x05, 0x1a, 0x9f, 0xd6, 0x02, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4751 = { .name = "ecdsa_secp224r1_sha512_4751", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4751_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4751_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4751_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4752 for ECDSA, tcId is 250 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4752_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4752_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4752_sig[] = { 0x6c, 0x38, 0x54, 0x29, 0x7e, 0x1f, 0x26, 0x7b, 0x64, 0xa2, 0x8e, 0x0c, 0xd6, 0x14, 0x8e, 0x0f, 0xad, 0xcf, 0x85, 0xbc, 0x8d, 0x5c, 0x23, 0x94, 0x75, 0x43, 0xbc, 0xb8, 0xaa, 0x05, 0x94, 0xee, 0x11, 0x31, 0x2f, 0x5d, 0x47, 0x67, 0xd2, 0x96, 0xe5, 0xca, 0x83, 0xdf, 0x68, 0x07, 0x28, 0x11, 0xf8, 0x1a, 0x8d, 0x27, 0xe1, 0x78, 0xca, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4752 = { .name = "ecdsa_secp224r1_sha512_4752", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4752_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4752_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4752_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4753 for ECDSA, tcId is 251 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4753_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4753_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4753_sig[] = { 0x78, 0x5a, 0xc8, 0xc9, 0x56, 0xd7, 0x79, 0x7a, 0xe6, 0x74, 0x98, 0x77, 0x5b, 0x3c, 0x44, 0x6c, 0x41, 0x73, 0x5e, 0xb1, 0x5f, 0x34, 0x30, 0xb4, 0x9f, 0x6a, 0x09, 0xf2, 0x57, 0x10, 0x87, 0x9a, 0xb8, 0x39, 0x94, 0xe8, 0x09, 0xc8, 0xd2, 0xcb, 0xd6, 0xf2, 0xac, 0x5c, 0x20, 0x5b, 0x4b, 0x8d, 0x62, 0x26, 0xe9, 0x8b, 0xe0, 0x3e, 0x79, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4753 = { .name = "ecdsa_secp224r1_sha512_4753", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4753_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4753_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4753_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4754 for ECDSA, tcId is 252 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4754_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4754_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4754_sig[] = { 0xf1, 0xf3, 0xd0, 0x16, 0x69, 0x31, 0x25, 0xba, 0x73, 0x98, 0x1c, 0x8f, 0x9a, 0x17, 0x48, 0xe5, 0xdc, 0xe1, 0xd9, 0x63, 0x43, 0x55, 0xf2, 0x6f, 0xa5, 0x36, 0x19, 0x0e, 0xb5, 0x74, 0xe9, 0x7d, 0xef, 0x60, 0xdc, 0xd0, 0xe9, 0x17, 0x71, 0x06, 0x48, 0x37, 0x91, 0xb2, 0xed, 0xb4, 0xab, 0x03, 0x42, 0xb9, 0xf5, 0xeb, 0xb9, 0x57, 0xd5, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4754 = { .name = "ecdsa_secp224r1_sha512_4754", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4754_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4754_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4754_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4755 for ECDSA, tcId is 253 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4755_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4755_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4755_sig[] = { 0xe6, 0x4f, 0x33, 0x71, 0x52, 0x2c, 0xb1, 0xa5, 0xf0, 0xd1, 0x51, 0x1b, 0x15, 0x2b, 0x20, 0xe0, 0x1d, 0xec, 0xa0, 0xb3, 0x28, 0x47, 0x86, 0x85, 0x3c, 0xac, 0x27, 0x9a, 0xc9, 0xa2, 0xe5, 0xf4, 0xff, 0xde, 0x22, 0xb9, 0xd4, 0xed, 0x01, 0x79, 0xce, 0x74, 0xff, 0xf4, 0x08, 0xea, 0x91, 0x8d, 0xda, 0x76, 0x85, 0xc7, 0x98, 0x0a, 0xe6, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4755 = { .name = "ecdsa_secp224r1_sha512_4755", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4755_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4755_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4755_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4756 for ECDSA, tcId is 254 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4756_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4756_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4756_sig[] = { 0x1f, 0x99, 0xdd, 0x6e, 0xf7, 0x2f, 0xee, 0xed, 0xa6, 0xc1, 0x23, 0xba, 0xa4, 0xfa, 0xbb, 0x12, 0x6d, 0x7d, 0xed, 0xb6, 0x41, 0x30, 0xfa, 0xe3, 0xf4, 0x23, 0x07, 0x97, 0xe4, 0x41, 0xec, 0x51, 0xdc, 0xa6, 0x27, 0x1b, 0x04, 0x3e, 0x95, 0x75, 0x3c, 0x40, 0x43, 0xd7, 0xcb, 0x4e, 0x76, 0xfd, 0xc1, 0x3d, 0x6a, 0xea, 0x45, 0xfb, 0xf2, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4756 = { .name = "ecdsa_secp224r1_sha512_4756", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4756_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4756_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4756_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4757 for ECDSA, tcId is 255 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4757_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4757_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4757_sig[] = { 0x86, 0x37, 0xa0, 0x96, 0x27, 0xc5, 0x27, 0x66, 0xbf, 0x96, 0xf0, 0xb6, 0xce, 0xa6, 0xf2, 0xac, 0x3e, 0xb3, 0x03, 0x00, 0x1c, 0x5f, 0x6f, 0xe6, 0xd6, 0x28, 0xe4, 0xba, 0x10, 0xb6, 0x6c, 0x59, 0x94, 0x55, 0xd4, 0x00, 0x77, 0xbb, 0x86, 0x5e, 0xd4, 0x3e, 0x2c, 0x2c, 0xc4, 0x03, 0x47, 0x3b, 0xaa, 0x6d, 0x63, 0xb1, 0x6b, 0xe4, 0x8c, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4757 = { .name = "ecdsa_secp224r1_sha512_4757", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4757_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4757_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4757_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4758 for ECDSA, tcId is 256 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4758_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4758_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4758_sig[] = { 0x52, 0xa0, 0x10, 0xa2, 0x3e, 0x4f, 0x9e, 0xbb, 0x45, 0x9b, 0xbe, 0x9f, 0x30, 0x57, 0xe6, 0xc1, 0x97, 0x61, 0xfb, 0x99, 0xd2, 0x5c, 0x9b, 0x16, 0xb8, 0xf0, 0x07, 0xd8, 0x52, 0x6d, 0xc1, 0xf3, 0x44, 0x44, 0xde, 0x00, 0x44, 0x7b, 0xa2, 0x3c, 0x76, 0x95, 0x0f, 0x2c, 0x15, 0x95, 0x79, 0xd5, 0x48, 0xb6, 0x33, 0x5d, 0x12, 0x7e, 0xa3, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4758 = { .name = "ecdsa_secp224r1_sha512_4758", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4758_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4758_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4758_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4759 for ECDSA, tcId is 257 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4759_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4759_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4759_sig[] = { 0xfc, 0x49, 0xca, 0xaa, 0xda, 0x52, 0x8f, 0x33, 0x57, 0xe5, 0xa2, 0x64, 0xf2, 0xe7, 0xf9, 0x70, 0xca, 0x1b, 0x15, 0xca, 0x5f, 0xee, 0x28, 0x74, 0x1d, 0x12, 0x02, 0xac, 0x17, 0x5e, 0x88, 0x4d, 0x10, 0xd0, 0xbf, 0xd2, 0x0b, 0x39, 0x31, 0x1c, 0xe2, 0xc5, 0x30, 0x83, 0xda, 0x16, 0x7d, 0x1f, 0x3d, 0xfe, 0xb9, 0x90, 0xe5, 0x9e, 0xd6, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4759 = { .name = "ecdsa_secp224r1_sha512_4759", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4759_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4759_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4759_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4760 for ECDSA, tcId is 258 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4760_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4760_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4760_sig[] = { 0xd9, 0x5d, 0x53, 0x9a, 0x85, 0xc9, 0xed, 0xac, 0xd4, 0xe0, 0x2e, 0xde, 0x27, 0xb0, 0xe0, 0xb7, 0x37, 0x09, 0x96, 0x12, 0xd1, 0x66, 0xc6, 0x37, 0xc8, 0x3a, 0x9f, 0x34, 0x59, 0x93, 0x6a, 0x2b, 0x90, 0xb7, 0xf3, 0xf3, 0xda, 0x83, 0xf6, 0x4d, 0xec, 0x8e, 0x34, 0x7a, 0x3b, 0xfa, 0x57, 0xba, 0xad, 0xf9, 0xac, 0xea, 0x18, 0xc0, 0x71, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4760 = { .name = "ecdsa_secp224r1_sha512_4760", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4760_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4760_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4760_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4761 for ECDSA, tcId is 259 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4761_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4761_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4761_sig[] = { 0x18, 0x95, 0xe6, 0x55, 0x93, 0xd7, 0x1e, 0x56, 0x35, 0xcc, 0xe0, 0x22, 0xdd, 0xa1, 0x9b, 0xd1, 0x55, 0xbb, 0x9a, 0x7f, 0x2e, 0x30, 0x7e, 0x5c, 0xe9, 0x12, 0x7a, 0xde, 0x12, 0x1b, 0x48, 0x7c, 0x32, 0x0c, 0x54, 0x4d, 0xcd, 0xd4, 0x71, 0xd4, 0x6f, 0xcd, 0xe2, 0xce, 0x5d, 0xc9, 0xd1, 0x7f, 0xda, 0x70, 0x54, 0x4c, 0x4e, 0xab, 0x50, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4761 = { .name = "ecdsa_secp224r1_sha512_4761", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4761_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4761_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4761_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4762 for ECDSA, tcId is 260 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4762_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4762_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4762_sig[] = { 0xb5, 0xf4, 0xc8, 0x5b, 0x13, 0xb5, 0x1a, 0x5d, 0xa8, 0x1a, 0x23, 0x6f, 0x11, 0x05, 0x93, 0x7f, 0x3d, 0x98, 0x85, 0x6d, 0x2a, 0xeb, 0x57, 0x10, 0x1b, 0x6b, 0x49, 0x9c, 0x3b, 0xe7, 0x4a, 0xe7, 0x70, 0xfa, 0x64, 0x67, 0xf7, 0x6a, 0x74, 0x2e, 0xb9, 0xe5, 0x04, 0xa8, 0x15, 0xa4, 0xa6, 0x0e, 0x74, 0xb3, 0x8b, 0xca, 0xa8, 0x9f, 0x9b, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4762 = { .name = "ecdsa_secp224r1_sha512_4762", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4762_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4762_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4762_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4763 for ECDSA, tcId is 261 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4763_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4763_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4763_sig[] = { 0x07, 0xa5, 0x71, 0x97, 0x66, 0x7a, 0x0c, 0x40, 0x42, 0x3d, 0x48, 0x11, 0xff, 0x96, 0x38, 0x4c, 0x93, 0x30, 0x46, 0x7e, 0x8a, 0x28, 0xea, 0xa4, 0xc0, 0xd5, 0x19, 0xf4, 0x01, 0x10, 0x62, 0xc8, 0x69, 0x44, 0x94, 0xba, 0xae, 0xd2, 0x4f, 0xf6, 0x10, 0xe1, 0xe4, 0x22, 0x7e, 0xfb, 0x59, 0xa1, 0x63, 0xc3, 0x3f, 0xaf, 0xd4, 0x01, 0x00, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4763 = { .name = "ecdsa_secp224r1_sha512_4763", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4763_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4763_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4763_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4764 for ECDSA, tcId is 262 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4764_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4764_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4764_sig[] = { 0x00, 0x7f, 0x71, 0x86, 0x15, 0xba, 0x1d, 0x0a, 0x9d, 0x27, 0xa8, 0xc5, 0xa6, 0x78, 0xa6, 0x22, 0x5f, 0xfe, 0x12, 0x33, 0xed, 0x8b, 0x41, 0x7c, 0x93, 0x43, 0xb3, 0x10, 0xcf, 0x6a, 0x87, 0xe4, 0x49, 0x67, 0x25, 0xc6, 0xa2, 0x61, 0x2f, 0x40, 0x34, 0xdd, 0xf4, 0xb3, 0x1c, 0x74, 0x35, 0xe2, 0xfc, 0x3a, 0x16, 0x3e, 0x92, 0xd4, 0x63, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4764 = { .name = "ecdsa_secp224r1_sha512_4764", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4764_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4764_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4764_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4765 for ECDSA, tcId is 263 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4765_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4765_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4765_sig[] = { 0xba, 0x8f, 0x95, 0xa4, 0x36, 0x3c, 0x49, 0x3a, 0x9f, 0x78, 0xbb, 0x61, 0xdb, 0xef, 0xaa, 0x95, 0x87, 0xd0, 0x28, 0xbb, 0x83, 0x44, 0x42, 0x0d, 0xe2, 0xb0, 0xcf, 0x21, 0xb3, 0x79, 0x8c, 0x2d, 0x6e, 0x27, 0xa2, 0x59, 0x1c, 0x2e, 0xdc, 0x18, 0x32, 0x0b, 0x78, 0xbf, 0x11, 0xdf, 0x19, 0x4b, 0x11, 0xb3, 0xfb, 0x49, 0x8c, 0x59, 0x52, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4765 = { .name = "ecdsa_secp224r1_sha512_4765", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4765_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4765_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4765_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4766 for ECDSA, tcId is 264 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4766_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4766_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4766_sig[] = { 0x59, 0x6b, 0x74, 0x07, 0x78, 0x01, 0xdb, 0x2e, 0x88, 0x9d, 0x3b, 0x2a, 0xaa, 0x39, 0x90, 0xfe, 0x18, 0x0a, 0xbc, 0x15, 0x2d, 0x48, 0x52, 0x83, 0x85, 0xca, 0x95, 0x5d, 0x38, 0xbf, 0xfd, 0x41, 0x6f, 0x77, 0x98, 0x43, 0xfa, 0xd3, 0x89, 0x75, 0x00, 0x03, 0xeb, 0x07, 0x08, 0x11, 0x2a, 0x48, 0x34, 0xc5, 0x54, 0xf4, 0x76, 0xa3, 0xe0, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4766 = { .name = "ecdsa_secp224r1_sha512_4766", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4766_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4766_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4766_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4767 for ECDSA, tcId is 265 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4767_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4767_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4767_sig[] = { 0x85, 0x47, 0xf6, 0x29, 0x67, 0x52, 0x3a, 0x06, 0xc9, 0x69, 0x0e, 0x5f, 0xf6, 0x6c, 0x3f, 0x22, 0x54, 0xcd, 0xa2, 0x8f, 0x09, 0xff, 0xcc, 0xc2, 0x22, 0x43, 0x3d, 0x39, 0x3d, 0x9e, 0xbf, 0x66, 0x4e, 0xe5, 0x51, 0xbb, 0x7b, 0x33, 0x15, 0x7d, 0x6c, 0x6c, 0x5f, 0xd4, 0x56, 0xbd, 0xa3, 0xd4, 0xae, 0x46, 0x02, 0x15, 0xec, 0x1a, 0x5f, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4767 = { .name = "ecdsa_secp224r1_sha512_4767", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4767_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4767_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4767_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4768 for ECDSA, tcId is 266 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4768_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4768_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4768_sig[] = { 0x90, 0xee, 0x3f, 0xab, 0x9c, 0x6c, 0xe3, 0x73, 0xa1, 0xb3, 0x5f, 0xc1, 0x35, 0xfe, 0x87, 0x82, 0x80, 0xee, 0x25, 0xe5, 0x8a, 0x4b, 0xd7, 0x52, 0x9e, 0x91, 0xb4, 0xf0, 0x64, 0x51, 0xe7, 0x52, 0x65, 0x05, 0xb4, 0x4e, 0x88, 0x47, 0x2b, 0x46, 0xed, 0xa3, 0xfd, 0x26, 0x79, 0x82, 0x4d, 0xcd, 0xfc, 0x44, 0x5e, 0x67, 0xf3, 0x5e, 0xa3, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4768 = { .name = "ecdsa_secp224r1_sha512_4768", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4768_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4768_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4768_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4769 for ECDSA, tcId is 267 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4769_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4769_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4769_sig[] = { 0x0a, 0x53, 0x05, 0x30, 0xb6, 0xa9, 0x23, 0x8d, 0x2d, 0x1a, 0x3c, 0xf4, 0x68, 0x98, 0x6c, 0x87, 0xf3, 0xb2, 0x08, 0xf6, 0x1e, 0xa0, 0x48, 0x6d, 0x53, 0x14, 0x0c, 0x17, 0x5f, 0x02, 0x7a, 0x73, 0xf3, 0x1a, 0x5c, 0xc2, 0xbe, 0xe8, 0x1f, 0xf0, 0x01, 0x94, 0x77, 0xc5, 0x42, 0xfd, 0x78, 0x2e, 0xcd, 0xe0, 0xe5, 0x51, 0xfc, 0xd3, 0x7e, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4769 = { .name = "ecdsa_secp224r1_sha512_4769", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4769_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4769_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4769_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4770 for ECDSA, tcId is 268 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4770_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4770_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4770_sig[] = { 0xbe, 0xab, 0x4a, 0xbd, 0x23, 0xdf, 0x5e, 0x2a, 0xcf, 0xff, 0x07, 0xc8, 0x2e, 0x24, 0x5d, 0xfa, 0x7d, 0x58, 0x7d, 0x02, 0x38, 0xc2, 0xc9, 0xab, 0x9c, 0x88, 0xa9, 0x6a, 0x98, 0xc6, 0x50, 0x76, 0x35, 0x53, 0x68, 0x40, 0xed, 0xf6, 0x04, 0xf9, 0xba, 0xae, 0x64, 0x08, 0xce, 0x4d, 0x3f, 0xbe, 0xe6, 0x94, 0xdb, 0x3a, 0xbd, 0x82, 0x50, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4770 = { .name = "ecdsa_secp224r1_sha512_4770", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4770_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4770_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4770_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4771 for ECDSA, tcId is 269 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4771_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4771_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4771_sig[] = { 0x3e, 0xc8, 0xc3, 0x63, 0x35, 0xcb, 0x98, 0xfa, 0x07, 0xb9, 0x83, 0xc3, 0x5b, 0x7f, 0xc2, 0x56, 0xf4, 0x4a, 0x5a, 0xa1, 0x92, 0xd6, 0x08, 0x75, 0x95, 0x14, 0x5a, 0x15, 0xc3, 0x2b, 0x7a, 0x47, 0xac, 0x62, 0x71, 0xf4, 0x59, 0x35, 0x62, 0xbb, 0xbf, 0x91, 0xf9, 0xe0, 0x73, 0x95, 0xa5, 0xe4, 0xd4, 0x69, 0x70, 0x49, 0x5c, 0xf2, 0x9f, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4771 = { .name = "ecdsa_secp224r1_sha512_4771", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4771_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4771_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4771_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4772 for ECDSA, tcId is 270 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4772_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4772_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4772_sig[] = { 0xbd, 0x63, 0x5a, 0x74, 0x1f, 0x1f, 0x2a, 0x1d, 0x9a, 0xc1, 0x69, 0x8b, 0xaf, 0x5c, 0xfc, 0x49, 0x1d, 0x5e, 0x3f, 0x8e, 0x15, 0xf1, 0xca, 0xcb, 0xe4, 0xff, 0xe4, 0xdc, 0x4b, 0xb6, 0x06, 0xcf, 0x7c, 0xc1, 0x1d, 0x0d, 0x7d, 0x96, 0xb8, 0x39, 0x66, 0xf4, 0x22, 0x76, 0x09, 0x5c, 0xcc, 0x44, 0x58, 0x82, 0xed, 0x5a, 0xfd, 0xda, 0xbf, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4772 = { .name = "ecdsa_secp224r1_sha512_4772", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4772_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4772_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4772_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4773 for ECDSA, tcId is 271 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4773_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4773_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4773_sig[] = { 0x81, 0x2c, 0x08, 0x62, 0x2c, 0x0a, 0x09, 0xd9, 0x49, 0xb7, 0x62, 0x85, 0x85, 0xc4, 0xf4, 0xf2, 0xdb, 0x4c, 0x55, 0x91, 0xb5, 0xda, 0x14, 0x8f, 0xf4, 0x6d, 0x5c, 0xd4, 0x21, 0x04, 0xf9, 0xbc, 0x9d, 0x00, 0x79, 0xac, 0xb3, 0x07, 0x7d, 0x2d, 0xb5, 0x8f, 0x38, 0x81, 0x19, 0x50, 0x0c, 0x53, 0x22, 0xcb, 0x9b, 0x53, 0x89, 0xb5, 0xc5, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4773 = { .name = "ecdsa_secp224r1_sha512_4773", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4773_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4773_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4773_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4774 for ECDSA, tcId is 272 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4774_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4774_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4774_sig[] = { 0xfa, 0x4e, 0x1c, 0x8b, 0x00, 0x06, 0xf2, 0x69, 0xc8, 0x55, 0xeb, 0x49, 0x5f, 0xa3, 0xa1, 0x13, 0xf6, 0x43, 0xfa, 0x8b, 0x1f, 0xef, 0x2b, 0x08, 0xab, 0x14, 0x59, 0x94, 0xfe, 0x85, 0xb8, 0xb5, 0x22, 0xc7, 0xf9, 0xe8, 0x94, 0x3e, 0x0f, 0x62, 0x64, 0x33, 0x95, 0xbd, 0x1f, 0xcd, 0xab, 0xc8, 0x92, 0xc3, 0x15, 0xd1, 0x08, 0xb7, 0x5f, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4774 = { .name = "ecdsa_secp224r1_sha512_4774", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4774_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4774_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4774_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4775 for ECDSA, tcId is 273 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4775_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4775_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4775_sig[] = { 0x8c, 0x1d, 0x9b, 0x79, 0x11, 0xba, 0xcb, 0x6b, 0x4a, 0x09, 0x58, 0x26, 0x48, 0xb9, 0x92, 0xd4, 0x6a, 0x18, 0x32, 0xeb, 0x00, 0x61, 0x78, 0xc0, 0xc7, 0x7f, 0xcb, 0x10, 0xbe, 0xcb, 0xe1, 0x2b, 0x99, 0xf2, 0x43, 0x76, 0x6d, 0xa5, 0xbd, 0xad, 0x07, 0x46, 0x1b, 0x92, 0x26, 0xa8, 0x29, 0x86, 0x72, 0xb4, 0xf1, 0xad, 0xb3, 0x53, 0x57, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4775 = { .name = "ecdsa_secp224r1_sha512_4775", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4775_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4775_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4775_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4776 for ECDSA, tcId is 274 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4776_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4776_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4776_sig[] = { 0x78, 0x85, 0x0a, 0x40, 0x53, 0x0a, 0xa2, 0x58, 0xe4, 0x78, 0xe7, 0xc5, 0x47, 0xd3, 0xa5, 0xe4, 0x94, 0x4d, 0x35, 0x24, 0xf1, 0x67, 0x64, 0x43, 0xe4, 0xdf, 0xb3, 0x7d, 0x68, 0x70, 0x58, 0xe1, 0xca, 0x47, 0x8f, 0x52, 0xa3, 0x0c, 0x9a, 0x3f, 0x8e, 0x2e, 0xea, 0x9d, 0x8c, 0x40, 0x59, 0x9c, 0xd4, 0x7e, 0xf6, 0x6b, 0x94, 0x30, 0xd1, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4776 = { .name = "ecdsa_secp224r1_sha512_4776", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4776_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4776_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4776_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4777 for ECDSA, tcId is 275 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4777_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4777_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4777_sig[] = { 0x06, 0x6e, 0x72, 0x68, 0xa6, 0xab, 0xef, 0xe1, 0xb4, 0xb9, 0x16, 0xca, 0x51, 0xc3, 0xe9, 0x58, 0xe4, 0x0d, 0xc7, 0x8c, 0x36, 0x61, 0x31, 0x3e, 0x0e, 0xd2, 0xe7, 0x7d, 0x64, 0x04, 0xd8, 0xa3, 0x32, 0xa8, 0x37, 0xf2, 0xab, 0x6b, 0xd1, 0x3e, 0x3e, 0xe4, 0xaa, 0xd1, 0xe9, 0x30, 0x7d, 0x44, 0x9e, 0x7f, 0x9b, 0x7d, 0x63, 0x32, 0x03, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4777 = { .name = "ecdsa_secp224r1_sha512_4777", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4777_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4777_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4777_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4778 for ECDSA, tcId is 276 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4778_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4778_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4778_sig[] = { 0x4e, 0xca, 0x73, 0x70, 0x9a, 0x67, 0xc4, 0x16, 0x03, 0xca, 0x5a, 0xf4, 0x94, 0xc8, 0x13, 0x24, 0x83, 0xff, 0xc2, 0xe0, 0xbf, 0x17, 0x1b, 0x52, 0xde, 0x5a, 0x5e, 0x81, 0x2c, 0x79, 0x13, 0x7c, 0xd2, 0xad, 0xd3, 0xce, 0x3a, 0x76, 0x79, 0x22, 0x70, 0xe3, 0x47, 0x22, 0x1a, 0x3a, 0xd7, 0x86, 0xea, 0xfc, 0x26, 0x82, 0xb3, 0x9b, 0xcf, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4778 = { .name = "ecdsa_secp224r1_sha512_4778", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4778_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4778_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4778_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4779 for ECDSA, tcId is 277 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4779_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4779_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4779_sig[] = { 0x01, 0x78, 0x51, 0x2f, 0x88, 0x44, 0x98, 0x42, 0x22, 0x39, 0x3a, 0x63, 0x26, 0x3e, 0x0a, 0x00, 0x96, 0x01, 0x86, 0x9e, 0x63, 0x2f, 0x07, 0xeb, 0x74, 0x70, 0xaa, 0x05, 0xe3, 0x26, 0x57, 0xcd, 0xed, 0x11, 0x22, 0xce, 0xe0, 0xa4, 0xf6, 0x6f, 0xf5, 0x0a, 0x32, 0xda, 0x1f, 0x05, 0xde, 0x4c, 0x5e, 0x21, 0x7a, 0xcd, 0xf5, 0xeb, 0x6f, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4779 = { .name = "ecdsa_secp224r1_sha512_4779", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4779_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4779_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4779_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4780 for ECDSA, tcId is 278 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4780_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4780_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4780_sig[] = { 0xe2, 0xc7, 0xbf, 0x12, 0x22, 0xca, 0x23, 0xa5, 0x64, 0x92, 0x87, 0x3c, 0x2d, 0x3f, 0xa6, 0xc7, 0x03, 0x0c, 0xc1, 0x66, 0xd6, 0x93, 0x14, 0x2d, 0xce, 0xa2, 0x72, 0xb6, 0x71, 0x5a, 0x4c, 0x82, 0xfd, 0xa4, 0x40, 0x42, 0x17, 0xde, 0xa6, 0xc0, 0xbb, 0xf3, 0xac, 0x24, 0xf8, 0xfa, 0xa2, 0xb4, 0x35, 0xfb, 0xc6, 0xd5, 0x1a, 0x32, 0xc4, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4780 = { .name = "ecdsa_secp224r1_sha512_4780", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4780_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4780_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4780_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4781 for ECDSA, tcId is 279 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4781_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4781_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4781_sig[] = { 0x49, 0x88, 0x6a, 0x8c, 0x26, 0xc9, 0x1d, 0x64, 0x9c, 0xbf, 0xec, 0xda, 0x6c, 0xe8, 0xd1, 0x44, 0x1e, 0x76, 0x4c, 0x66, 0xf5, 0xd8, 0x1d, 0xce, 0xed, 0xb6, 0xc5, 0xba, 0x43, 0x70, 0xd8, 0xbc, 0xd4, 0xf0, 0x52, 0xfa, 0xc9, 0x49, 0x1d, 0x62, 0x85, 0x0b, 0x6a, 0x6a, 0x85, 0xd5, 0xac, 0xc4, 0x4d, 0x92, 0x48, 0xc3, 0xdf, 0xf3, 0x0b, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4781 = { .name = "ecdsa_secp224r1_sha512_4781", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4781_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4781_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4781_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4782 for ECDSA, tcId is 280 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4782_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4782_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4782_sig[] = { 0xe1, 0xae, 0x22, 0x5e, 0x1a, 0xec, 0xa4, 0x07, 0x47, 0xff, 0x3e, 0x7a, 0xd1, 0xf7, 0x5e, 0xb9, 0xbc, 0x90, 0xd6, 0x37, 0x16, 0x0a, 0x7f, 0x58, 0xce, 0x12, 0xe5, 0x91, 0xb9, 0x7c, 0xbe, 0xa3, 0xa9, 0x32, 0x31, 0x10, 0x31, 0x57, 0x60, 0xb7, 0xe2, 0xed, 0xe4, 0x96, 0x51, 0x4b, 0x30, 0xf0, 0xee, 0xc5, 0x21, 0xff, 0xeb, 0x07, 0xa6, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4782 = { .name = "ecdsa_secp224r1_sha512_4782", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4782_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4782_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4782_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4783 for ECDSA, tcId is 281 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4783_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4783_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4783_sig[] = { 0x8a, 0x93, 0xb8, 0x7b, 0x46, 0x51, 0x25, 0x44, 0xfb, 0x9a, 0x7a, 0xf5, 0xc4, 0x1e, 0x3a, 0xa7, 0x2e, 0x40, 0x23, 0x5e, 0xf8, 0x7c, 0xcb, 0x71, 0x08, 0xda, 0xae, 0x48, 0x15, 0x7d, 0xb6, 0x17, 0xac, 0x69, 0x7d, 0xf4, 0x07, 0xaf, 0x7a, 0x11, 0x62, 0x6c, 0x52, 0xa1, 0xaf, 0x7e, 0xf1, 0x89, 0x51, 0x4d, 0xa3, 0x99, 0x18, 0xc4, 0x30, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4783 = { .name = "ecdsa_secp224r1_sha512_4783", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4783_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4783_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4783_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4784 for ECDSA, tcId is 282 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4784_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4784_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4784_sig[] = { 0xeb, 0xde, 0xbe, 0x63, 0x88, 0xb9, 0xf4, 0x60, 0xfc, 0xe6, 0xd8, 0x4f, 0xaa, 0x67, 0xde, 0xd1, 0xe8, 0x64, 0xef, 0x09, 0xe7, 0x7e, 0xa3, 0xce, 0x58, 0xa5, 0xde, 0xff, 0xbe, 0x50, 0x52, 0x03, 0x3e, 0xb4, 0x03, 0x80, 0xc2, 0xb1, 0x32, 0x5f, 0xe9, 0x7d, 0xcc, 0x55, 0x84, 0x1e, 0x14, 0x7a, 0x89, 0xf0, 0x2a, 0x29, 0x6b, 0x45, 0x05, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4784 = { .name = "ecdsa_secp224r1_sha512_4784", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4784_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4784_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4784_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4785 for ECDSA, tcId is 283 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4785_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4785_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4785_sig[] = { 0xe8, 0x5d, 0x06, 0x67, 0x97, 0x2d, 0x00, 0x3c, 0x82, 0xaf, 0xb9, 0xe1, 0x8b, 0x70, 0x23, 0x57, 0x11, 0x9b, 0x4f, 0x38, 0x40, 0x1a, 0x5e, 0xbd, 0xfc, 0xbe, 0xa8, 0x8c, 0xeb, 0x7b, 0x3e, 0x52, 0x68, 0xa4, 0xce, 0x62, 0x80, 0xf7, 0x2d, 0x7e, 0x9a, 0x3d, 0x74, 0xe5, 0xca, 0xc5, 0x0b, 0x1c, 0x3a, 0x52, 0x96, 0xcd, 0xb5, 0xa4, 0x9d, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4785 = { .name = "ecdsa_secp224r1_sha512_4785", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4785_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4785_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4785_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4786 for ECDSA, tcId is 284 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4786_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4786_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4786_sig[] = { 0x3d, 0x24, 0x35, 0x81, 0xc0, 0x87, 0x4f, 0xd4, 0xeb, 0x4d, 0x80, 0xf8, 0x96, 0xc5, 0x06, 0x74, 0x29, 0xad, 0x45, 0x53, 0x14, 0x88, 0x19, 0x51, 0xab, 0x5e, 0xc6, 0xe3, 0x0e, 0xc4, 0x7a, 0xba, 0x08, 0xcc, 0xba, 0x88, 0xc1, 0xa6, 0xdd, 0xc2, 0x89, 0xf5, 0x95, 0xbd, 0xa0, 0x8d, 0xc2, 0xdd, 0x34, 0xd1, 0x2d, 0xce, 0xfb, 0x68, 0x09, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4786 = { .name = "ecdsa_secp224r1_sha512_4786", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4786_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4786_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4786_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4787 for ECDSA, tcId is 285 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4787_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4787_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4787_sig[] = { 0x75, 0xc9, 0x66, 0xbb, 0xdc, 0xef, 0x91, 0x57, 0xd4, 0x7a, 0x13, 0x42, 0x31, 0x22, 0x9f, 0x9f, 0x5e, 0xe8, 0xce, 0x45, 0x87, 0x75, 0xfc, 0x74, 0x7d, 0x45, 0x09, 0xbd, 0xe3, 0x44, 0xfa, 0x71, 0x6e, 0x20, 0x88, 0xd9, 0x5a, 0x55, 0xd0, 0x2a, 0x97, 0x8a, 0x41, 0x6d, 0xa1, 0x0f, 0x22, 0xa5, 0xcc, 0xcf, 0x35, 0xa2, 0x86, 0x32, 0x27, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4787 = { .name = "ecdsa_secp224r1_sha512_4787", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4787_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4787_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4787_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4788 for ECDSA, tcId is 286 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4788_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4788_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4788_sig[] = { 0xcf, 0xdf, 0x59, 0x9e, 0x98, 0x6d, 0x77, 0x0b, 0x73, 0x78, 0x4d, 0x97, 0x14, 0x9f, 0x99, 0x45, 0xfd, 0x16, 0xd2, 0x2c, 0x30, 0x2b, 0xb7, 0x96, 0x15, 0x6e, 0x7f, 0xb4, 0xc6, 0x40, 0x97, 0x85, 0x04, 0x7b, 0x00, 0x83, 0xf0, 0x08, 0x77, 0x1b, 0x40, 0xdb, 0x85, 0x02, 0x58, 0x32, 0x08, 0xb6, 0x1c, 0x89, 0x84, 0x67, 0x1a, 0xcb, 0x09, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4788 = { .name = "ecdsa_secp224r1_sha512_4788", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4788_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4788_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4788_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4789 for ECDSA, tcId is 287 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4789_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4789_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4789_sig[] = { 0xc5, 0x3c, 0x4a, 0xee, 0xc8, 0xf2, 0xe7, 0xa5, 0xcc, 0x0e, 0x88, 0x5a, 0x60, 0x31, 0xaa, 0x1a, 0x6c, 0x1b, 0x7b, 0x7f, 0xec, 0x83, 0xb5, 0x08, 0x4c, 0xbe, 0x29, 0x1f, 0xb0, 0xe6, 0xd1, 0x0a, 0x8f, 0xd8, 0x6f, 0x95, 0x8c, 0x3b, 0x0f, 0x46, 0x62, 0xed, 0x8c, 0xa0, 0xd6, 0xea, 0xdb, 0xc8, 0x92, 0xaa, 0xc4, 0x20, 0x0f, 0xcf, 0x83, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4789 = { .name = "ecdsa_secp224r1_sha512_4789", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4789_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4789_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4789_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4790 for ECDSA, tcId is 288 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4790_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4790_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4790_sig[] = { 0x23, 0x86, 0x55, 0x0d, 0x6e, 0x75, 0x35, 0x0b, 0xcc, 0x32, 0x50, 0x7b, 0xfc, 0x9b, 0xeb, 0x9c, 0x26, 0xd7, 0x2f, 0xf8, 0x2f, 0x67, 0x1c, 0x1f, 0x52, 0x82, 0xe9, 0x8b, 0xa5, 0x5b, 0x8d, 0xe8, 0x08, 0xc4, 0x35, 0x9f, 0xb5, 0x29, 0xb8, 0x0a, 0x80, 0xd9, 0xfc, 0x6e, 0xdd, 0xb5, 0xce, 0x08, 0x08, 0x2c, 0x3b, 0x67, 0x7c, 0x68, 0x99, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4790 = { .name = "ecdsa_secp224r1_sha512_4790", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4790_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4790_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4790_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4791 for ECDSA, tcId is 289 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4791_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4791_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4791_sig[] = { 0x1f, 0xbd, 0x19, 0x2d, 0x95, 0x5c, 0xe0, 0x2b, 0x64, 0xa3, 0xbe, 0x5b, 0xb2, 0x1b, 0xef, 0x22, 0xb5, 0x3a, 0x6c, 0x6f, 0x95, 0x76, 0xd8, 0xf8, 0x89, 0xb0, 0x9e, 0x4e, 0xf5, 0xa9, 0xb6, 0x73, 0xa4, 0xee, 0x5a, 0xab, 0xf1, 0xca, 0x8e, 0x82, 0x89, 0xf2, 0x5b, 0x62, 0xa3, 0xe0, 0x8b, 0x95, 0x6f, 0x74, 0x18, 0xc0, 0x3e, 0x2d, 0x30, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4791 = { .name = "ecdsa_secp224r1_sha512_4791", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4791_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4791_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4791_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4792 for ECDSA, tcId is 290 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4792_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4792_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4792_sig[] = { 0xb8, 0x0f, 0xfb, 0xa4, 0x51, 0xdb, 0x9f, 0xc2, 0x19, 0x4e, 0x45, 0x0b, 0xdd, 0x43, 0xbc, 0x0f, 0x53, 0xa7, 0xd0, 0xf4, 0xa7, 0x89, 0x00, 0xc0, 0x9f, 0xb8, 0xd9, 0xbc, 0x01, 0x24, 0xee, 0xea, 0xb9, 0x03, 0x5b, 0x6c, 0x84, 0x59, 0x59, 0xe7, 0x0b, 0x04, 0xd1, 0xe1, 0x87, 0xd5, 0x54, 0x80, 0x7d, 0x67, 0x51, 0xaf, 0xab, 0xcc, 0x18, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4792 = { .name = "ecdsa_secp224r1_sha512_4792", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4792_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4792_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4792_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4793 for ECDSA, tcId is 291 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4793_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4793_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4793_sig[] = { 0x18, 0x7f, 0xb0, 0x26, 0xad, 0xe3, 0xad, 0x16, 0xdd, 0x4b, 0x28, 0x13, 0xe8, 0xeb, 0xda, 0x43, 0x3c, 0xb6, 0xcc, 0x3a, 0xf1, 0x61, 0x5b, 0xed, 0xf4, 0x86, 0xa9, 0xe2, 0x6f, 0xbe, 0xe5, 0x3f, 0xa8, 0x84, 0xd2, 0x96, 0xf3, 0x4f, 0x77, 0x19, 0xf7, 0x49, 0x19, 0x43, 0x4d, 0x1b, 0x70, 0x90, 0xc4, 0x85, 0xee, 0xed, 0x2f, 0xb8, 0xfd, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4793 = { .name = "ecdsa_secp224r1_sha512_4793", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4793_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4793_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4793_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4794 for ECDSA, tcId is 292 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4794_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4794_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4794_sig[] = { 0xe5, 0x98, 0xa1, 0x6f, 0xe1, 0x2d, 0xa7, 0x9e, 0x98, 0x14, 0xf6, 0x98, 0x5c, 0x9a, 0x93, 0x34, 0x01, 0x0f, 0x28, 0x7d, 0xc9, 0xe3, 0x8d, 0xe8, 0x57, 0xca, 0x5f, 0xc0, 0x19, 0xe0, 0xed, 0x54, 0xf0, 0xe0, 0x8a, 0xd0, 0x91, 0xa1, 0x63, 0xb4, 0xc7, 0xb8, 0x6d, 0x06, 0x34, 0xda, 0x2c, 0x86, 0xa7, 0xa8, 0x99, 0x1f, 0x5d, 0x87, 0x06, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4794 = { .name = "ecdsa_secp224r1_sha512_4794", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4794_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4794_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4794_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4795 for ECDSA, tcId is 293 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4795_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4795_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4795_sig[] = { 0xb3, 0x1a, 0x10, 0x48, 0x0e, 0x39, 0x7c, 0x8a, 0xa4, 0x6f, 0x52, 0xa0, 0xf2, 0xfb, 0x5c, 0x22, 0xeb, 0xc0, 0x53, 0x4f, 0xba, 0x15, 0x67, 0x18, 0xb5, 0x0c, 0xf6, 0xea, 0x60, 0x20, 0x04, 0xdf, 0x4b, 0x47, 0xa2, 0x06, 0x51, 0x30, 0xca, 0x3b, 0x05, 0xf1, 0xeb, 0x02, 0xd0, 0xb3, 0x7b, 0x79, 0xb0, 0x4b, 0x1e, 0xb7, 0x99, 0x40, 0x83, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4795 = { .name = "ecdsa_secp224r1_sha512_4795", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4795_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4795_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4795_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4796 for ECDSA, tcId is 294 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4796_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4796_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4796_sig[] = { 0xbc, 0x47, 0xe2, 0x42, 0xd1, 0x9d, 0xcc, 0x63, 0x21, 0x91, 0x39, 0x80, 0xd7, 0x39, 0x23, 0xe4, 0x30, 0xbc, 0x66, 0x23, 0xd2, 0x19, 0x52, 0x9d, 0x58, 0x66, 0x19, 0xb6, 0x81, 0x39, 0x7d, 0xd2, 0xf5, 0x28, 0x11, 0xb5, 0x34, 0xed, 0x75, 0x4a, 0x93, 0x7d, 0x90, 0x4f, 0x04, 0xa7, 0xde, 0x27, 0x8f, 0xa3, 0xbc, 0x89, 0x26, 0xde, 0x69, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4796 = { .name = "ecdsa_secp224r1_sha512_4796", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4796_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4796_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4796_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4797 for ECDSA, tcId is 295 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4797_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4797_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4797_sig[] = { 0x5b, 0xe0, 0xe0, 0xdf, 0xb2, 0x6b, 0x1c, 0xaa, 0x88, 0xf8, 0x66, 0x50, 0x4a, 0xa8, 0xe7, 0x6f, 0x03, 0x5a, 0x82, 0xab, 0xe0, 0x00, 0x28, 0xd9, 0x62, 0xbc, 0xfa, 0xfa, 0x3c, 0x3c, 0x1d, 0xf0, 0x60, 0x26, 0x12, 0x34, 0x71, 0xbe, 0xd3, 0x24, 0xca, 0x79, 0xc5, 0x1b, 0x28, 0xb3, 0xd1, 0x0b, 0x1c, 0xe8, 0x77, 0xce, 0xf2, 0x1b, 0x85, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4797 = { .name = "ecdsa_secp224r1_sha512_4797", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4797_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4797_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4797_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4798 for ECDSA, tcId is 296 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4798_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4798_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4798_sig[] = { 0xfe, 0x79, 0xd0, 0xcf, 0xe4, 0x55, 0x72, 0x47, 0x92, 0xcb, 0x5a, 0xb0, 0x58, 0x0a, 0xd4, 0xf2, 0x91, 0x8c, 0x14, 0x03, 0xec, 0x12, 0xf0, 0xbd, 0xd2, 0xce, 0x65, 0x28, 0xf1, 0x35, 0x7c, 0xd4, 0xaf, 0xc4, 0x02, 0x99, 0x4a, 0xb8, 0x68, 0xb0, 0x16, 0x3f, 0x41, 0x70, 0x1e, 0x0f, 0x00, 0xe5, 0x61, 0xfd, 0xd9, 0x7e, 0x0d, 0xb6, 0xf7, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4798 = { .name = "ecdsa_secp224r1_sha512_4798", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4798_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4798_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4798_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4799 for ECDSA, tcId is 297 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4799_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4799_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4799_sig[] = { 0x18, 0x58, 0xc5, 0xd8, 0x57, 0x12, 0x4c, 0xd7, 0x03, 0xe7, 0xc2, 0xf5, 0xe9, 0x9d, 0x50, 0x25, 0xd6, 0xd9, 0x79, 0x53, 0x9c, 0x6f, 0x50, 0xb1, 0xd0, 0x0f, 0xbd, 0x34, 0xd9, 0x4a, 0x5a, 0xdb, 0x6d, 0x9c, 0x50, 0x01, 0x16, 0x26, 0x20, 0x41, 0x55, 0x41, 0xd4, 0x93, 0x34, 0xfb, 0x92, 0x9b, 0xc8, 0x6a, 0x35, 0x0c, 0xa4, 0x59, 0x11, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4799 = { .name = "ecdsa_secp224r1_sha512_4799", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4799_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4799_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4799_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4800 for ECDSA, tcId is 298 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4800_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4800_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4800_sig[] = { 0xe6, 0xb2, 0xec, 0x96, 0x7c, 0xfa, 0x25, 0xf5, 0x72, 0x34, 0xb9, 0xef, 0x1d, 0x87, 0xc5, 0x94, 0x55, 0x02, 0xcb, 0xbd, 0x58, 0x31, 0xc8, 0x62, 0xf0, 0x07, 0x74, 0xd1, 0xca, 0xea, 0x26, 0x36, 0x8b, 0xff, 0xc8, 0xe5, 0x62, 0xb2, 0xbd, 0x03, 0xaa, 0x6c, 0x9d, 0xc4, 0x1c, 0x52, 0x96, 0x59, 0xfe, 0xfe, 0x65, 0x97, 0xfc, 0xe9, 0xcd, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4800 = { .name = "ecdsa_secp224r1_sha512_4800", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4800_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4800_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4800_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4801 for ECDSA, tcId is 299 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4801_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4801_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4801_sig[] = { 0xa5, 0x9b, 0x43, 0x8b, 0x24, 0x72, 0x07, 0x4a, 0x93, 0xa2, 0x89, 0xb3, 0x3f, 0x5b, 0x13, 0xe6, 0x04, 0x97, 0x7d, 0xd3, 0xab, 0x4d, 0x74, 0x4d, 0x08, 0xe1, 0x06, 0x1b, 0x69, 0x95, 0x74, 0xa1, 0x7d, 0xc8, 0xc7, 0x29, 0x8c, 0x93, 0x21, 0xca, 0x78, 0x55, 0x2e, 0x51, 0x28, 0xea, 0x80, 0x1d, 0x05, 0x6f, 0x38, 0x7b, 0xa4, 0x2f, 0x7a, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4801 = { .name = "ecdsa_secp224r1_sha512_4801", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4801_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4801_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4801_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4802 for ECDSA, tcId is 300 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4802_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4802_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4802_sig[] = { 0x74, 0x84, 0x81, 0x70, 0x9c, 0x68, 0x82, 0xc4, 0xa1, 0x30, 0x19, 0x38, 0x34, 0xa5, 0x7f, 0x4b, 0xc7, 0x14, 0x90, 0x62, 0x11, 0xec, 0x6c, 0xc1, 0x2c, 0x40, 0x0d, 0xff, 0xee, 0xc6, 0xc9, 0xd5, 0xa0, 0x67, 0x86, 0xf8, 0x21, 0xa8, 0x11, 0x7e, 0xec, 0x3d, 0xc0, 0x25, 0xed, 0x3a, 0xc7, 0x4e, 0x39, 0xe9, 0x8a, 0x16, 0xa4, 0xaa, 0x28, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4802 = { .name = "ecdsa_secp224r1_sha512_4802", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4802_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4802_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4802_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4803 for ECDSA, tcId is 301 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4803_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4803_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4803_sig[] = { 0xbc, 0x89, 0x91, 0xb5, 0x06, 0x99, 0x74, 0x03, 0xe1, 0x23, 0x13, 0x6a, 0x9c, 0x14, 0x0a, 0x43, 0x36, 0x36, 0x47, 0x33, 0xb0, 0x81, 0x5f, 0x40, 0xd1, 0xdb, 0xd5, 0xfe, 0x81, 0x95, 0x03, 0xea, 0x3b, 0x4c, 0x07, 0xfc, 0x15, 0x7f, 0x94, 0x8f, 0x69, 0x49, 0x70, 0x5d, 0x56, 0x0a, 0x88, 0x1f, 0xc1, 0xc6, 0xaf, 0x4b, 0x73, 0x91, 0x76, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4803 = { .name = "ecdsa_secp224r1_sha512_4803", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4803_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4803_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4803_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4804 for ECDSA, tcId is 302 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4804_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4804_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4804_sig[] = { 0x1c, 0xae, 0xce, 0x75, 0xc8, 0xe3, 0x1b, 0xb0, 0xc5, 0xcc, 0xeb, 0x08, 0x42, 0xf2, 0x36, 0x83, 0xb8, 0x55, 0x7a, 0x97, 0x03, 0x65, 0x74, 0xea, 0x88, 0xce, 0xea, 0xbd, 0x64, 0x5a, 0xd3, 0x27, 0x6a, 0xae, 0xe2, 0x2b, 0x69, 0x36, 0x47, 0xf0, 0x0d, 0xce, 0x5f, 0x91, 0xa0, 0x3b, 0x67, 0x8b, 0x78, 0x9b, 0x66, 0x7c, 0xd3, 0xb8, 0xe7, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4804 = { .name = "ecdsa_secp224r1_sha512_4804", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4804_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4804_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4804_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4805 for ECDSA, tcId is 303 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4805_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4805_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4805_sig[] = { 0x3a, 0x7d, 0x58, 0x20, 0x68, 0xaa, 0xec, 0xab, 0xa9, 0x45, 0x20, 0x3b, 0xc4, 0x45, 0xb3, 0x31, 0x2e, 0x5c, 0xb4, 0x08, 0x86, 0x52, 0x29, 0x87, 0xac, 0xed, 0x68, 0xd0, 0x39, 0xb3, 0xc6, 0x12, 0xb6, 0x74, 0x3a, 0x13, 0xbb, 0x2f, 0xfb, 0x83, 0x51, 0x4d, 0x69, 0x0c, 0xfc, 0xb9, 0xa7, 0x05, 0x5e, 0x3a, 0x99, 0x3c, 0xb0, 0x86, 0x39, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4805 = { .name = "ecdsa_secp224r1_sha512_4805", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4805_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4805_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4805_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4806 for ECDSA, tcId is 304 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4806_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4806_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4806_sig[] = { 0xf7, 0x73, 0xc4, 0x9f, 0xd0, 0x64, 0x57, 0x16, 0xd1, 0x6e, 0x55, 0x9e, 0x22, 0xc3, 0x91, 0x01, 0xdf, 0x26, 0x6c, 0xdf, 0xa7, 0xcb, 0x61, 0xce, 0x46, 0xf8, 0x52, 0x80, 0xdf, 0x61, 0x09, 0xfd, 0x77, 0xa2, 0x41, 0x03, 0x1c, 0xf0, 0x3b, 0x37, 0x6e, 0x00, 0x1d, 0x8a, 0x3c, 0xd2, 0xa6, 0xb6, 0x46, 0xed, 0xbf, 0x9e, 0x57, 0x81, 0x33, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4806 = { .name = "ecdsa_secp224r1_sha512_4806", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4806_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4806_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4806_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4807 for ECDSA, tcId is 305 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4807_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4807_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4807_sig[] = { 0x79, 0xcf, 0x89, 0x3f, 0x66, 0xf7, 0xfa, 0xa5, 0xca, 0x08, 0x55, 0x3e, 0xa0, 0x34, 0x56, 0x10, 0x7e, 0x7b, 0xb3, 0x91, 0xa5, 0xe5, 0x12, 0x60, 0xce, 0xda, 0xea, 0x84, 0x32, 0xe8, 0xe3, 0x50, 0x94, 0x68, 0xda, 0x72, 0x16, 0xc5, 0x99, 0x75, 0xd4, 0xf3, 0xd5, 0x49, 0x38, 0x48, 0xa0, 0x3f, 0x86, 0x4b, 0x23, 0x32, 0x04, 0x4e, 0x68, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4807 = { .name = "ecdsa_secp224r1_sha512_4807", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4807_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4807_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4807_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4808 for ECDSA, tcId is 306 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4808_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4808_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4808_sig[] = { 0x02, 0x5e, 0xcd, 0x1a, 0x7a, 0xb7, 0x65, 0xfb, 0xfd, 0x25, 0xa6, 0xd7, 0xcd, 0x3c, 0x46, 0x1e, 0x17, 0xf4, 0x65, 0xe6, 0x95, 0x8b, 0xce, 0x9f, 0x49, 0x2b, 0x7a, 0x5a, 0xa1, 0xca, 0x95, 0x03, 0x86, 0x03, 0xd3, 0x02, 0x76, 0x1e, 0x41, 0x69, 0x35, 0xac, 0xbd, 0x6b, 0x71, 0x6a, 0x31, 0x6c, 0x9b, 0x79, 0xc5, 0x7d, 0x40, 0x53, 0xcb, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4808 = { .name = "ecdsa_secp224r1_sha512_4808", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4808_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4808_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4808_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4809 for ECDSA, tcId is 307 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4809_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4809_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4809_sig[] = { 0x3d, 0x14, 0xa4, 0xc2, 0x1b, 0xa4, 0xdb, 0xd3, 0x38, 0xfd, 0xd8, 0xb1, 0x5f, 0xcd, 0xd0, 0xa9, 0x22, 0x8f, 0x15, 0x7c, 0xfa, 0xf2, 0xb0, 0x9d, 0xd4, 0xf2, 0xaa, 0x67, 0xe1, 0x64, 0x0e, 0x8b, 0xd2, 0xa6, 0x11, 0x0d, 0xc1, 0x8d, 0x6f, 0x29, 0x0b, 0x73, 0x25, 0x81, 0x47, 0x10, 0xc0, 0xdc, 0x88, 0xb7, 0x6f, 0x12, 0x7c, 0x5e, 0x9e, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4809 = { .name = "ecdsa_secp224r1_sha512_4809", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4809_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4809_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4809_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4810 for ECDSA, tcId is 308 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4810_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4810_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4810_sig[] = { 0x25, 0x8d, 0xce, 0x91, 0x6e, 0xf7, 0x8b, 0x9d, 0x8a, 0x87, 0xbe, 0xaf, 0x6e, 0xdd, 0x35, 0xbc, 0xcc, 0xc0, 0x8c, 0x5d, 0xe4, 0x88, 0x58, 0x6e, 0x1b, 0x7b, 0x74, 0x9a, 0x4f, 0xf5, 0x00, 0xdb, 0x4d, 0x66, 0x5c, 0x70, 0x62, 0x17, 0x9c, 0x09, 0x9b, 0x29, 0x85, 0xa8, 0x14, 0xf9, 0x9f, 0xbf, 0xa4, 0x4a, 0x3a, 0x70, 0x90, 0x24, 0xd5, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4810 = { .name = "ecdsa_secp224r1_sha512_4810", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4810_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4810_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4810_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4811 for ECDSA, tcId is 309 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4811_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4811_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4811_sig[] = { 0xce, 0xcf, 0x0a, 0xec, 0x53, 0x57, 0x74, 0x9f, 0x35, 0x7c, 0x45, 0x95, 0x75, 0x29, 0x8a, 0x33, 0x84, 0xdc, 0x4a, 0xc3, 0x81, 0x43, 0x8f, 0xf9, 0x9a, 0xcd, 0x99, 0x93, 0xda, 0x7a, 0xdb, 0x09, 0x2a, 0x68, 0x90, 0xe0, 0x91, 0x8c, 0x23, 0x5a, 0x62, 0xd4, 0xa9, 0x49, 0xb0, 0xca, 0xe5, 0xe5, 0x78, 0x56, 0x97, 0x51, 0x08, 0xfb, 0x2b, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4811 = { .name = "ecdsa_secp224r1_sha512_4811", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4811_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4811_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4811_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4812 for ECDSA, tcId is 310 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4812_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4812_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4812_sig[] = { 0xd7, 0x7f, 0x2e, 0x54, 0x7f, 0xd6, 0x8d, 0x5d, 0xb3, 0x14, 0x90, 0x1d, 0xa1, 0xff, 0x7e, 0xca, 0xf3, 0xd0, 0xc1, 0x7e, 0xc0, 0x47, 0xa9, 0x74, 0xa7, 0xce, 0xc3, 0x3e, 0x44, 0x3a, 0x97, 0xaf, 0xdf, 0x88, 0x22, 0x72, 0xbf, 0x02, 0x33, 0xc8, 0xc4, 0xa8, 0xd2, 0x3c, 0x93, 0x52, 0xad, 0x89, 0xb1, 0x77, 0x0c, 0x26, 0x24, 0x0f, 0x66, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4812 = { .name = "ecdsa_secp224r1_sha512_4812", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4812_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4812_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4812_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4813 for ECDSA, tcId is 311 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4813_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4813_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4813_sig[] = { 0xd5, 0xdc, 0xf9, 0x3e, 0x6e, 0x1b, 0x93, 0x32, 0x3e, 0xa2, 0x64, 0x2d, 0x34, 0x05, 0xa7, 0x42, 0x3c, 0xb0, 0x4f, 0x59, 0xc0, 0x34, 0x20, 0x19, 0x3f, 0x39, 0x48, 0x86, 0xdd, 0xd5, 0x84, 0x2e, 0x49, 0x28, 0xee, 0x4b, 0x5d, 0x77, 0xd4, 0x3d, 0x4a, 0x4b, 0xfc, 0x7f, 0x99, 0x1c, 0x89, 0x97, 0x27, 0xb7, 0x5f, 0xc9, 0x41, 0xb5, 0x29, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4813 = { .name = "ecdsa_secp224r1_sha512_4813", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4813_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4813_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4813_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4814 for ECDSA, tcId is 312 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4814_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4814_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4814_sig[] = { 0xa9, 0xbc, 0x3e, 0xbc, 0x6e, 0xe3, 0x44, 0x21, 0x32, 0x67, 0x11, 0xce, 0x29, 0x51, 0x8d, 0x02, 0xbd, 0x40, 0x3e, 0xad, 0x80, 0x6a, 0x3e, 0x45, 0x02, 0xef, 0xa0, 0xce, 0x12, 0x61, 0x0b, 0x89, 0xa6, 0x16, 0x89, 0xa8, 0xeb, 0x6e, 0x06, 0x2d, 0x25, 0x24, 0x27, 0x81, 0x55, 0xfe, 0x49, 0x9f, 0xfe, 0xcc, 0x0e, 0x0d, 0x94, 0x0d, 0x48, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4814 = { .name = "ecdsa_secp224r1_sha512_4814", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4814_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4814_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4814_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4815 for ECDSA, tcId is 313 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4815_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4815_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4815_sig[] = { 0xc7, 0x03, 0xc5, 0x08, 0x78, 0x4e, 0xf7, 0x1b, 0x59, 0x6d, 0xcd, 0x61, 0xc5, 0xb0, 0x1b, 0x45, 0xc6, 0xc6, 0x9d, 0x2b, 0x36, 0xa5, 0xa3, 0xb7, 0x70, 0x1e, 0x59, 0x76, 0xf0, 0x54, 0x44, 0xa7, 0x77, 0x20, 0x41, 0x18, 0xf3, 0xac, 0x2a, 0xfc, 0x92, 0xd0, 0x21, 0x28, 0x31, 0xbf, 0x70, 0x02, 0x15, 0x8e, 0x7c, 0x65, 0x6f, 0x4c, 0x07, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4815 = { .name = "ecdsa_secp224r1_sha512_4815", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4815_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4815_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4815_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4816 for ECDSA, tcId is 314 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4816_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4816_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4816_sig[] = { 0x80, 0x67, 0x4b, 0x74, 0x0b, 0x64, 0xd3, 0x83, 0x67, 0x7c, 0x04, 0x9a, 0x6f, 0x4b, 0xae, 0xb2, 0x14, 0xf4, 0xa6, 0xb5, 0x93, 0x30, 0x33, 0x85, 0x3e, 0x63, 0x45, 0x78, 0x9b, 0x3a, 0x80, 0x4c, 0x75, 0xed, 0x79, 0x0e, 0x31, 0x96, 0x6b, 0xc2, 0x57, 0x30, 0xb7, 0x42, 0x8a, 0xf8, 0xc7, 0x3c, 0x65, 0xfb, 0x50, 0x3c, 0x06, 0xc5, 0x97, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4816 = { .name = "ecdsa_secp224r1_sha512_4816", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4816_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4816_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4816_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4817 for ECDSA, tcId is 315 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4817_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4817_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4817_sig[] = { 0x7e, 0xd6, 0x58, 0xc3, 0x0f, 0x4a, 0x0d, 0xcc, 0x89, 0x4c, 0x39, 0xf9, 0x32, 0x0f, 0x59, 0xa1, 0x85, 0x50, 0x9f, 0xfe, 0xe4, 0x5e, 0xac, 0x60, 0x23, 0x57, 0x7c, 0x7c, 0x47, 0xac, 0x94, 0xa5, 0x01, 0x80, 0x6d, 0x5a, 0xdf, 0xfe, 0xa9, 0xfc, 0xf3, 0xcc, 0xd8, 0xcf, 0x79, 0xf3, 0xcc, 0x47, 0xec, 0xa9, 0xfe, 0x38, 0xfc, 0x48, 0x86, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4817 = { .name = "ecdsa_secp224r1_sha512_4817", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4817_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4817_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4817_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4818 for ECDSA, tcId is 316 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4818_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4818_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4818_sig[] = { 0x39, 0x7f, 0x66, 0x9c, 0xc3, 0x99, 0xa9, 0x1d, 0xa9, 0x6c, 0x16, 0xef, 0xd2, 0x33, 0xf6, 0xfe, 0x60, 0xd1, 0xb7, 0xca, 0xa3, 0x97, 0xcc, 0x25, 0x78, 0x43, 0xb3, 0x0b, 0xf1, 0x93, 0x75, 0xfe, 0x66, 0xea, 0xe4, 0x73, 0x8e, 0xc9, 0xdc, 0x5b, 0x7e, 0xf5, 0x1c, 0xb3, 0x3d, 0x4c, 0xb2, 0x58, 0xf3, 0x69, 0x44, 0xd3, 0x7d, 0xd2, 0x45, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4818 = { .name = "ecdsa_secp224r1_sha512_4818", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4818_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4818_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4818_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4819 for ECDSA, tcId is 317 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4819_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4819_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4819_sig[] = { 0x53, 0x7e, 0xc3, 0x69, 0xb3, 0xf0, 0xd8, 0x91, 0xe1, 0x66, 0xf6, 0xc7, 0x4e, 0x5d, 0x73, 0xdd, 0x2c, 0x48, 0x22, 0x21, 0x0c, 0x5f, 0xe5, 0xf9, 0x78, 0xc3, 0x40, 0x72, 0x0b, 0x18, 0x3c, 0x48, 0xb5, 0xf6, 0xe6, 0x92, 0x45, 0xcb, 0x76, 0xe1, 0xe2, 0xc3, 0x96, 0x63, 0xee, 0xdf, 0xb7, 0x4b, 0xa9, 0x53, 0x87, 0x39, 0xac, 0x49, 0x5f, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4819 = { .name = "ecdsa_secp224r1_sha512_4819", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4819_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4819_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4819_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4820 for ECDSA, tcId is 318 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4820_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4820_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4820_sig[] = { 0xd0, 0xed, 0x71, 0x59, 0xcc, 0x3a, 0x79, 0x98, 0x8f, 0x3c, 0x27, 0x92, 0x87, 0xca, 0x8e, 0xd1, 0x0b, 0xb8, 0xf0, 0x2c, 0x8b, 0x5a, 0x62, 0x04, 0xae, 0xad, 0x12, 0x23, 0x75, 0xee, 0x1e, 0x5c, 0x00, 0xe8, 0x18, 0x99, 0xbf, 0xa8, 0x54, 0x5e, 0xdc, 0xc6, 0x4f, 0xdf, 0x70, 0x7d, 0xae, 0x1f, 0x61, 0xd9, 0x76, 0xd2, 0xf0, 0x88, 0x37, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4820 = { .name = "ecdsa_secp224r1_sha512_4820", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4820_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4820_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4820_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4821 for ECDSA, tcId is 319 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4821_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4821_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4821_sig[] = { 0xcf, 0x43, 0x32, 0x9a, 0x97, 0x81, 0xdb, 0x80, 0x44, 0xa9, 0x20, 0x75, 0x8e, 0x58, 0x39, 0x98, 0x66, 0xfe, 0x77, 0x48, 0xc0, 0xf5, 0xd6, 0xa3, 0xbc, 0xdc, 0xbc, 0xbd, 0xd9, 0x74, 0x0d, 0x2d, 0xd7, 0x16, 0x29, 0x0a, 0xd4, 0x16, 0x03, 0x45, 0xbc, 0xd4, 0xaf, 0x03, 0xaf, 0x01, 0xc4, 0x4b, 0x61, 0x0b, 0x1e, 0x59, 0x53, 0x19, 0x90, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4821 = { .name = "ecdsa_secp224r1_sha512_4821", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4821_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4821_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4821_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4822 for ECDSA, tcId is 320 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4822_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4822_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp224r1_sha512_4822_sig[] = { 0x8a, 0xb2, 0xe9, 0x2c, 0x8c, 0x91, 0x43, 0xf9, 0xd8, 0xda, 0x3b, 0xdb, 0x1d, 0x93, 0x5c, 0xce, 0x3a, 0xb6, 0x0a, 0xe9, 0x9b, 0x3c, 0xcf, 0xe8, 0x63, 0xb1, 0x5d, 0x14, 0x88, 0xc8, 0x93, 0x02, 0xe8, 0xa9, 0xc5, 0x91, 0xc6, 0xed, 0x16, 0xb1, 0xae, 0x46, 0xf9, 0x66, 0x00, 0x4d, 0x0b, 0x26, 0x85, 0x44, 0x98, 0x42, 0xe2, 0x91, 0xd7, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4822 = { .name = "ecdsa_secp224r1_sha512_4822", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4822_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4822_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4822_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4823 for ECDSA, tcId is 321 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4823_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4823_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4823_sig[] = { 0x04, 0xf6, 0x0f, 0x84, 0x50, 0xb4, 0x48, 0x19, 0x8c, 0xf7, 0x98, 0x11, 0x16, 0xde, 0x06, 0xd4, 0xc4, 0x88, 0x8c, 0xd2, 0x6b, 0xe3, 0xa5, 0x94, 0x70, 0x92, 0x23, 0x8f, 0xcb, 0x23, 0xfc, 0xb3, 0x3c, 0x14, 0xf0, 0x89, 0xc2, 0xae, 0x03, 0x01, 0x46, 0xd6, 0x8f, 0xa6, 0x5e, 0xb9, 0xb0, 0x86, 0xfa, 0x79, 0x2f, 0x95, 0xbe, 0x8e, 0xcf, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4823 = { .name = "ecdsa_secp224r1_sha512_4823", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4823_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4823_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4823_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4824 for ECDSA, tcId is 322 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4824_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4824_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4824_sig[] = { 0xf2, 0x70, 0xf7, 0xa7, 0x0a, 0x96, 0xa0, 0xf9, 0x16, 0xc7, 0x53, 0x0c, 0x6d, 0xea, 0x71, 0x78, 0xe6, 0xc0, 0x87, 0xdd, 0xbc, 0xc6, 0x0a, 0xac, 0xd8, 0xa7, 0xc5, 0x53, 0x8b, 0x2c, 0x37, 0x85, 0x54, 0x12, 0x13, 0x65, 0xa1, 0x80, 0xad, 0x4e, 0xdf, 0x1a, 0x12, 0xe5, 0x66, 0xba, 0x55, 0xee, 0xab, 0xf5, 0x25, 0x35, 0x67, 0x83, 0xe6, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4824 = { .name = "ecdsa_secp224r1_sha512_4824", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4824_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4824_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4824_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4825 for ECDSA, tcId is 323 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4825_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4825_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4825_sig[] = { 0x85, 0xad, 0x01, 0xb2, 0x36, 0xca, 0x4a, 0x54, 0x51, 0x96, 0x92, 0x42, 0xe1, 0x61, 0x65, 0xd3, 0x22, 0x42, 0x82, 0x35, 0xa2, 0xaf, 0x8f, 0xdc, 0xd6, 0xc4, 0xc7, 0xb9, 0x8e, 0xb2, 0x99, 0x8c, 0x5e, 0x0a, 0xaf, 0x27, 0x97, 0x93, 0xca, 0xff, 0x59, 0xa2, 0x66, 0xca, 0x20, 0x68, 0xd9, 0x4e, 0xbf, 0x77, 0xba, 0xe8, 0x1f, 0xd0, 0xfb, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4825 = { .name = "ecdsa_secp224r1_sha512_4825", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4825_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4825_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4825_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4826 for ECDSA, tcId is 324 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4826_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4826_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4826_sig[] = { 0xcf, 0xfd, 0xb8, 0xd6, 0x4b, 0x5b, 0x84, 0xb4, 0x90, 0xff, 0x73, 0xd7, 0x7e, 0x51, 0xcc, 0x77, 0x97, 0xbf, 0x67, 0xc5, 0xee, 0x0a, 0x49, 0x99, 0xde, 0xf1, 0x72, 0x30, 0x3b, 0xaf, 0x4b, 0x34, 0xe1, 0xa3, 0x5e, 0x96, 0x06, 0xa4, 0x60, 0xb3, 0x95, 0x06, 0x3a, 0x55, 0x42, 0x64, 0xa9, 0xc4, 0x3c, 0xc3, 0x02, 0xab, 0x5a, 0xbf, 0x47, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4826 = { .name = "ecdsa_secp224r1_sha512_4826", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4826_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4826_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4826_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4827 for ECDSA, tcId is 325 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4827_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4827_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4827_sig[] = { 0x66, 0xcd, 0xa5, 0x8a, 0x5a, 0x6d, 0xdb, 0x94, 0x76, 0xe3, 0x6d, 0xba, 0xd5, 0xdf, 0x54, 0x2b, 0xe8, 0x8d, 0x7e, 0x44, 0x7b, 0xdc, 0x3d, 0xfe, 0x1d, 0x9e, 0x8b, 0x2c, 0x0d, 0x99, 0xd3, 0x87, 0x48, 0x6a, 0x96, 0x4e, 0xba, 0xb4, 0xe2, 0x9b, 0xad, 0x58, 0x3e, 0x46, 0xa5, 0xa2, 0x00, 0x39, 0x1d, 0x10, 0x65, 0x76, 0x8a, 0x4e, 0x35, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4827 = { .name = "ecdsa_secp224r1_sha512_4827", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4827_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4827_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4827_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4828 for ECDSA, tcId is 326 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4828_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4828_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4828_sig[] = { 0x32, 0x00, 0x76, 0x19, 0x02, 0x82, 0x5b, 0xd3, 0x53, 0x90, 0x8a, 0xcc, 0xd2, 0xbe, 0x6b, 0x48, 0x26, 0x45, 0x64, 0x69, 0x71, 0xf9, 0x6d, 0xc4, 0x90, 0x70, 0x6a, 0x37, 0x3e, 0xd7, 0x78, 0x99, 0xef, 0xdb, 0xe4, 0x18, 0x37, 0x0f, 0xa7, 0x99, 0x8d, 0xf3, 0xb7, 0xc9, 0x24, 0xbe, 0xd6, 0x86, 0x45, 0x35, 0x27, 0x7f, 0x80, 0x5c, 0x89, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4828 = { .name = "ecdsa_secp224r1_sha512_4828", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4828_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4828_msg, .msglen = 8, .sig = ecdsa_secp224r1_sha512_4828_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4829 for ECDSA, tcId is 327 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4829_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4829_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4829_sig[] = { 0xba, 0x0e, 0xff, 0x0e, 0xe4, 0x6a, 0xa9, 0xfc, 0xa5, 0xab, 0x8a, 0xd6, 0x4a, 0xee, 0x40, 0x37, 0x93, 0x1d, 0x3a, 0xd0, 0xb9, 0x53, 0xd4, 0x04, 0xef, 0x9f, 0x7b, 0xdc, 0xaf, 0xdf, 0x21, 0xdf, 0x0d, 0xcb, 0xe3, 0x9c, 0x2f, 0x5f, 0xa9, 0xef, 0x7e, 0x1a, 0x2b, 0xca, 0x87, 0xd1, 0x21, 0x3d, 0x1e, 0xca, 0x43, 0x89, 0x29, 0xad, 0x89, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4829 = { .name = "ecdsa_secp224r1_sha512_4829", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4829_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4829_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4829_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4830 for ECDSA, tcId is 328 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4830_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4830_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4830_sig[] = { 0xa2, 0x0c, 0x68, 0x83, 0xfc, 0x6e, 0xc1, 0xca, 0x4b, 0xb3, 0x78, 0xac, 0x88, 0xed, 0x67, 0x0a, 0x74, 0x2a, 0x62, 0x84, 0x11, 0x3d, 0x5f, 0xa3, 0x18, 0x2a, 0x18, 0x58, 0xe0, 0xa7, 0x3b, 0x91, 0x3b, 0x94, 0x16, 0x31, 0x75, 0xd2, 0x64, 0x22, 0x4c, 0xc7, 0x07, 0x36, 0xf2, 0xfb, 0x8e, 0x8d, 0x58, 0xe9, 0x14, 0xb1, 0x8c, 0x92, 0x13, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4830 = { .name = "ecdsa_secp224r1_sha512_4830", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4830_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4830_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4830_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4831 for ECDSA, tcId is 329 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4831_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4831_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4831_sig[] = { 0xf2, 0xf4, 0xaf, 0x95, 0x6b, 0x0c, 0x54, 0x09, 0x94, 0x9d, 0x37, 0x7e, 0x9b, 0xc6, 0x8e, 0x4f, 0x1a, 0xbe, 0xf7, 0x96, 0x9b, 0x51, 0x8f, 0x8b, 0xea, 0xcf, 0x27, 0xdb, 0xdf, 0x3a, 0x7b, 0x59, 0x93, 0xd2, 0x39, 0x3a, 0xde, 0x70, 0xa2, 0xcf, 0xc1, 0xe8, 0x67, 0x1a, 0x78, 0xca, 0x4f, 0xec, 0xb5, 0x64, 0x25, 0xa6, 0x61, 0xa2, 0xd2, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4831 = { .name = "ecdsa_secp224r1_sha512_4831", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4831_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4831_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4831_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4832 for ECDSA, tcId is 330 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4832_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4832_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4832_sig[] = { 0x33, 0x1a, 0x1a, 0x55, 0x34, 0x94, 0xf8, 0x52, 0x4a, 0xdb, 0x4e, 0x8a, 0x72, 0x2d, 0x55, 0x89, 0x65, 0xfb, 0x70, 0x3a, 0xe4, 0x32, 0xbf, 0x3c, 0xbd, 0xb2, 0x55, 0xc2, 0x5a, 0xb6, 0xe3, 0xde, 0xe6, 0xa2, 0x51, 0x6f, 0xc4, 0xe0, 0xac, 0x88, 0xe6, 0xdf, 0xc8, 0x1d, 0x2b, 0xc3, 0x7c, 0x98, 0x94, 0x9c, 0xc0, 0x3e, 0x52, 0x1d, 0x38, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4832 = { .name = "ecdsa_secp224r1_sha512_4832", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4832_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4832_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4832_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4833 for ECDSA, tcId is 331 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4833_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4833_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4833_sig[] = { 0x86, 0x71, 0x35, 0x55, 0x8e, 0x06, 0xe1, 0x97, 0x96, 0xeb, 0xce, 0x8e, 0x35, 0x55, 0xc6, 0x07, 0xa6, 0x60, 0x7d, 0x46, 0xf7, 0xc8, 0xda, 0x6b, 0x85, 0x52, 0xff, 0xc1, 0x8e, 0x82, 0x7e, 0x8b, 0x9a, 0x4f, 0x74, 0xef, 0xee, 0xc7, 0xd7, 0xba, 0x5c, 0x23, 0x42, 0x8f, 0xde, 0x02, 0x27, 0xdf, 0x55, 0xa1, 0xef, 0xc1, 0x79, 0xa3, 0x53, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4833 = { .name = "ecdsa_secp224r1_sha512_4833", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4833_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4833_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4833_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4834 for ECDSA, tcId is 332 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4834_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4834_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp224r1_sha512_4834_sig[] = { 0x67, 0x46, 0x90, 0x3c, 0xa0, 0x95, 0xbf, 0xd3, 0xf6, 0x37, 0x8a, 0x70, 0x09, 0x27, 0x23, 0x48, 0x3c, 0xa1, 0x90, 0xb2, 0x39, 0x2d, 0x8b, 0x1a, 0xd3, 0x37, 0x96, 0x9f, 0xf3, 0x3b, 0xfa, 0xe0, 0x83, 0x5c, 0x23, 0xa8, 0x0e, 0xc9, 0xf3, 0x3c, 0xe9, 0xa9, 0x03, 0x5c, 0x19, 0x28, 0x36, 0xa0, 0xb2, 0xfa, 0xdd, 0x34, 0x7d, 0x80, 0x3f, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4834 = { .name = "ecdsa_secp224r1_sha512_4834", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4834_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4834_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4834_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4835 for ECDSA, tcId is 333 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4835_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4835_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4835_sig[] = { 0x7f, 0xc0, 0xd8, 0x73, 0x9e, 0xcf, 0xe3, 0x49, 0xe5, 0x06, 0xe7, 0x12, 0x03, 0xa6, 0xe6, 0x0e, 0x62, 0x8a, 0x1b, 0xb0, 0xc6, 0x7d, 0x5e, 0x57, 0x4c, 0xb8, 0x83, 0x1c, 0xcf, 0x8b, 0xb1, 0x55, 0x71, 0x52, 0xc5, 0x75, 0x50, 0xa0, 0xfd, 0xe6, 0x57, 0x14, 0x56, 0xfa, 0x75, 0x27, 0x82, 0xf7, 0xf9, 0x2f, 0x7b, 0xb2, 0x35, 0xdd, 0xe3, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4835 = { .name = "ecdsa_secp224r1_sha512_4835", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4835_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4835_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4835_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4836 for ECDSA, tcId is 334 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4836_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4836_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4836_sig[] = { 0xb4, 0x48, 0x6e, 0x31, 0x39, 0xe0, 0xb1, 0x54, 0x28, 0x92, 0xdb, 0x3d, 0x3f, 0x51, 0xb0, 0x52, 0x48, 0x94, 0xe1, 0x9c, 0xb0, 0x0c, 0xd0, 0x7b, 0x03, 0xee, 0x9c, 0x97, 0xad, 0x97, 0x28, 0xd7, 0x7a, 0x8b, 0x7b, 0x4f, 0xa4, 0x35, 0xb3, 0x34, 0x58, 0x47, 0x86, 0x0c, 0x33, 0x2d, 0x65, 0xd8, 0x15, 0x2a, 0xa6, 0x50, 0x3a, 0xb1, 0x87, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4836 = { .name = "ecdsa_secp224r1_sha512_4836", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4836_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4836_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4836_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4837 for ECDSA, tcId is 335 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4837_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4837_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4837_sig[] = { 0xaf, 0xbb, 0xdc, 0x8e, 0x50, 0xe8, 0x01, 0xec, 0xbd, 0x2e, 0x37, 0x05, 0x07, 0x97, 0x17, 0xf4, 0xf9, 0xd6, 0x9f, 0x3b, 0x3d, 0x85, 0x21, 0x5a, 0xee, 0xcb, 0x4f, 0xbc, 0xec, 0xea, 0xdd, 0x4e, 0x2c, 0xc9, 0xce, 0xa1, 0x0b, 0x56, 0xd1, 0x6a, 0x03, 0xfa, 0x55, 0x1f, 0xec, 0x3e, 0xb8, 0x08, 0xbd, 0x8d, 0x9f, 0x09, 0x26, 0xd1, 0x4e, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4837 = { .name = "ecdsa_secp224r1_sha512_4837", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4837_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4837_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4837_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4838 for ECDSA, tcId is 336 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4838_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4838_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4838_sig[] = { 0x4a, 0x76, 0x2f, 0x7d, 0x14, 0x6f, 0x9e, 0xaf, 0xff, 0x5a, 0xd1, 0x1a, 0x69, 0x78, 0x26, 0x0c, 0x81, 0x8b, 0x80, 0x1c, 0x34, 0x88, 0xdd, 0x60, 0x41, 0x1f, 0x5c, 0xf6, 0x9e, 0xa7, 0x75, 0x12, 0x58, 0x56, 0x20, 0xef, 0x2c, 0xfa, 0xe8, 0xb8, 0xc9, 0xd8, 0x17, 0x12, 0x29, 0xa3, 0x21, 0x97, 0xe1, 0x94, 0x95, 0x61, 0xbb, 0x75, 0xa0, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4838 = { .name = "ecdsa_secp224r1_sha512_4838", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4838_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4838_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4838_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4839 for ECDSA, tcId is 337 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4839_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4839_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4839_sig[] = { 0x22, 0x7f, 0xe5, 0x2b, 0x57, 0x98, 0x33, 0xfe, 0xee, 0x16, 0xc2, 0x87, 0xd2, 0x92, 0x73, 0xe2, 0x25, 0x6d, 0xf6, 0x8a, 0xff, 0x0b, 0x94, 0xd2, 0x75, 0x2d, 0x87, 0x7b, 0xbd, 0x79, 0x93, 0x5e, 0x5f, 0xaa, 0x8e, 0x93, 0x56, 0x62, 0x2f, 0xea, 0x01, 0x35, 0xec, 0xf7, 0x96, 0xda, 0xf6, 0x03, 0x33, 0xd5, 0xab, 0x12, 0x5f, 0x71, 0xe5, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4839 = { .name = "ecdsa_secp224r1_sha512_4839", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4839_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4839_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4839_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4840 for ECDSA, tcId is 338 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4840_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4840_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp224r1_sha512_4840_sig[] = { 0xcd, 0x53, 0x65, 0x98, 0x3e, 0xb1, 0x65, 0xdb, 0x39, 0xba, 0x0c, 0x66, 0xc3, 0xa4, 0x5b, 0x2c, 0xe1, 0x37, 0x0c, 0x9a, 0xd1, 0x4a, 0x9a, 0xa7, 0x6d, 0xd4, 0x63, 0x3a, 0xa8, 0xc7, 0x7c, 0xe4, 0x2a, 0xb1, 0xc8, 0x88, 0xa6, 0xb5, 0xd0, 0x4b, 0x71, 0x13, 0x9f, 0xd8, 0x82, 0x32, 0x86, 0x22, 0xe1, 0x5e, 0x80, 0x25, 0x2e, 0x5c, 0xf7, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4840 = { .name = "ecdsa_secp224r1_sha512_4840", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4840_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4840_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4840_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4841 for ECDSA, tcId is 339 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4841_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4841_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4841_sig[] = { 0x54, 0xd6, 0xd4, 0x43, 0x73, 0xf7, 0xdf, 0xc9, 0x84, 0x55, 0xa2, 0x2c, 0xd3, 0x9a, 0x0b, 0x32, 0x0f, 0xab, 0xc3, 0x32, 0x15, 0x21, 0x6b, 0x37, 0x36, 0x5b, 0x5a, 0x16, 0x29, 0xcc, 0x69, 0x0f, 0x24, 0x67, 0xc0, 0x2e, 0x07, 0xbc, 0x41, 0x6a, 0xd4, 0x72, 0x04, 0x97, 0x5a, 0xf8, 0xc5, 0xc3, 0x34, 0x69, 0x73, 0xf2, 0xb0, 0x3d, 0xed, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4841 = { .name = "ecdsa_secp224r1_sha512_4841", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4841_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4841_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4841_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4842 for ECDSA, tcId is 340 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4842_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4842_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4842_sig[] = { 0x2f, 0x50, 0x48, 0xc9, 0xef, 0x9f, 0x30, 0xda, 0x7c, 0xb3, 0xfe, 0x46, 0x24, 0x55, 0x22, 0x00, 0xf9, 0xe5, 0x7a, 0x46, 0xd7, 0x9d, 0xb0, 0x48, 0x4a, 0x0d, 0x9c, 0xf2, 0x06, 0xda, 0xd3, 0xa4, 0x68, 0x27, 0x25, 0x85, 0x28, 0x69, 0xa1, 0xa4, 0x59, 0xbe, 0xc8, 0x65, 0x66, 0x1e, 0x1a, 0x38, 0xa9, 0xe5, 0x46, 0xee, 0xaa, 0xc7, 0xcb, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4842 = { .name = "ecdsa_secp224r1_sha512_4842", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4842_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4842_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4842_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4843 for ECDSA, tcId is 341 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4843_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4843_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4843_sig[] = { 0xab, 0xbf, 0x0a, 0x02, 0x33, 0x2f, 0xbe, 0xa7, 0x79, 0x89, 0x9d, 0x31, 0xd3, 0xab, 0xd2, 0xd2, 0x2c, 0x9c, 0x02, 0xd4, 0x05, 0x8c, 0xed, 0x63, 0x9b, 0xf0, 0x6c, 0x45, 0xcc, 0xe0, 0x57, 0x0f, 0x38, 0x12, 0xe5, 0xcf, 0xcb, 0x23, 0x37, 0x6c, 0x55, 0x4c, 0x7f, 0xc3, 0x5d, 0xbc, 0xfe, 0xb6, 0x23, 0xa7, 0x95, 0x8c, 0x66, 0x4a, 0xc6, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4843 = { .name = "ecdsa_secp224r1_sha512_4843", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4843_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4843_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4843_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4844 for ECDSA, tcId is 342 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4844_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4844_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4844_sig[] = { 0x1c, 0x30, 0xcb, 0x8b, 0xc2, 0x10, 0x87, 0xb7, 0x7e, 0xb1, 0x21, 0x6e, 0xe8, 0x62, 0x9e, 0x36, 0x76, 0xd9, 0x25, 0xf1, 0xae, 0x15, 0x07, 0x7c, 0xc6, 0x31, 0xda, 0x4f, 0xee, 0x99, 0x81, 0x57, 0xbd, 0xef, 0xb7, 0x7d, 0x10, 0x44, 0xe9, 0x83, 0xa6, 0xaf, 0xec, 0x7d, 0x91, 0xa2, 0x3d, 0x95, 0xc9, 0x37, 0xfc, 0x5c, 0x65, 0x48, 0xc9, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4844 = { .name = "ecdsa_secp224r1_sha512_4844", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4844_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4844_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4844_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4845 for ECDSA, tcId is 343 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4845_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4845_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4845_sig[] = { 0x43, 0xee, 0x11, 0xa7, 0xab, 0x62, 0xe2, 0x12, 0x5e, 0x76, 0x5c, 0x2c, 0xe5, 0xd4, 0xf8, 0x47, 0x04, 0x18, 0x35, 0x39, 0x81, 0x05, 0x12, 0x26, 0x8d, 0x87, 0xf1, 0x95, 0x65, 0x89, 0x7e, 0x54, 0x02, 0x57, 0x77, 0x65, 0x9e, 0xe8, 0x02, 0xb3, 0x9c, 0x6b, 0xfd, 0x5c, 0xcc, 0x57, 0x06, 0xa9, 0xd1, 0xb3, 0x8f, 0x95, 0xc0, 0x78, 0xab, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4845 = { .name = "ecdsa_secp224r1_sha512_4845", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4845_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4845_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4845_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4846 for ECDSA, tcId is 344 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4846_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4846_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4846_sig[] = { 0xa1, 0xfe, 0x3f, 0x4d, 0x3f, 0x43, 0xaa, 0xa3, 0xdc, 0xaf, 0xa7, 0x9e, 0xd9, 0x9f, 0xbc, 0x04, 0x5c, 0x11, 0xc3, 0x52, 0xca, 0xac, 0xd8, 0x9f, 0x0f, 0x63, 0x84, 0x7e, 0xca, 0x2e, 0x37, 0xbd, 0x2c, 0x13, 0xb9, 0xfb, 0x3f, 0x8a, 0x55, 0xb7, 0xa6, 0x7e, 0xb0, 0x34, 0x24, 0x03, 0x95, 0xab, 0xd3, 0x9f, 0xec, 0xde, 0x75, 0x14, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4846 = { .name = "ecdsa_secp224r1_sha512_4846", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4846_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4846_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4846_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4847 for ECDSA, tcId is 345 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4847_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4847_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4847_sig[] = { 0xbd, 0x29, 0x02, 0x86, 0xca, 0x08, 0x48, 0x5e, 0xa4, 0x13, 0x70, 0x10, 0xc6, 0x72, 0x03, 0xc2, 0x45, 0x5e, 0x7b, 0x66, 0x9d, 0x15, 0x3c, 0x6b, 0xe4, 0x00, 0x87, 0xc7, 0x97, 0xdd, 0x75, 0x02, 0xba, 0x36, 0x37, 0xf3, 0x3b, 0xae, 0xa5, 0xb2, 0x39, 0x86, 0x47, 0xad, 0x24, 0xc0, 0xfe, 0x35, 0x07, 0x2b, 0xd9, 0x63, 0x14, 0x9b, 0x5a, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4847 = { .name = "ecdsa_secp224r1_sha512_4847", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4847_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4847_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4847_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4848 for ECDSA, tcId is 346 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4848_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4848_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp224r1_sha512_4848_sig[] = { 0xc9, 0x17, 0x26, 0x9a, 0x5a, 0x4c, 0xe8, 0x0b, 0x7f, 0xe5, 0x4a, 0x8b, 0xed, 0x49, 0x32, 0x6b, 0x50, 0x52, 0x7a, 0x4d, 0x2f, 0xb0, 0xa3, 0x09, 0x31, 0x82, 0xb5, 0xa5, 0xa1, 0x95, 0xec, 0x0e, 0x69, 0xe3, 0x17, 0x2e, 0x85, 0x4e, 0x87, 0xdd, 0x65, 0x1b, 0x44, 0x43, 0x3f, 0xcd, 0x7d, 0xcb, 0xb7, 0xbd, 0x59, 0x51, 0x5d, 0x2a, 0xfe, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4848 = { .name = "ecdsa_secp224r1_sha512_4848", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4848_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4848_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4848_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4849 for ECDSA, tcId is 347 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4849_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4849_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp224r1_sha512_4849_sig[] = { 0x0b, 0x7b, 0x5a, 0xab, 0x83, 0x64, 0xdd, 0x4b, 0x11, 0x00, 0x1a, 0x0b, 0x98, 0x6d, 0x5a, 0xa4, 0xfb, 0x61, 0xee, 0x72, 0x02, 0x37, 0x41, 0x7a, 0x7f, 0x63, 0x72, 0x2f, 0x7f, 0x13, 0xb4, 0x11, 0xe6, 0x45, 0xe8, 0x19, 0xfe, 0xd1, 0xb9, 0x25, 0xeb, 0xe8, 0x07, 0xd9, 0x56, 0x0b, 0x44, 0xd0, 0xba, 0x1b, 0x75, 0xbd, 0x2f, 0xbd, 0x12, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4849 = { .name = "ecdsa_secp224r1_sha512_4849", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4849_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4849_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4849_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4850 for ECDSA, tcId is 348 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4850_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4850_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp224r1_sha512_4850_sig[] = { 0x50, 0x5b, 0x97, 0x4f, 0x8e, 0xcf, 0x07, 0xb6, 0x0f, 0xfd, 0xbd, 0x2b, 0x2d, 0xf9, 0x32, 0x4d, 0xe9, 0x2b, 0x39, 0x47, 0x6e, 0xb7, 0x63, 0xa4, 0xc2, 0x5f, 0x12, 0x6a, 0x1c, 0x36, 0xed, 0x1d, 0xee, 0x77, 0x2c, 0x72, 0x42, 0x05, 0xf7, 0x17, 0xc3, 0x83, 0xf4, 0x9a, 0x87, 0xa5, 0xbc, 0x3c, 0xaa, 0x0e, 0xf8, 0x13, 0x60, 0xf9, 0xd8, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4850 = { .name = "ecdsa_secp224r1_sha512_4850", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4850_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4850_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4850_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4851 for ECDSA, tcId is 349 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4851_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4851_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp224r1_sha512_4851_sig[] = { 0x24, 0x21, 0x9e, 0x49, 0xb9, 0x8a, 0x9b, 0x64, 0xe5, 0x6d, 0x21, 0xc9, 0x08, 0xc8, 0x70, 0xeb, 0x88, 0xb4, 0x47, 0xd9, 0xf1, 0xdd, 0xb7, 0x35, 0x08, 0x3d, 0x6d, 0xf2, 0xbc, 0x4d, 0x76, 0x44, 0xfa, 0xef, 0xf1, 0xe1, 0x34, 0x44, 0x3b, 0x2b, 0xb3, 0xbb, 0x2a, 0x20, 0xe2, 0xa4, 0xa7, 0xc1, 0x93, 0x18, 0x06, 0x26, 0x12, 0x7c, 0xe9, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4851 = { .name = "ecdsa_secp224r1_sha512_4851", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4851_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4851_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4851_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4852 for ECDSA, tcId is 350 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4852_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4852_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4852_sig[] = { 0x08, 0x32, 0x46, 0x08, 0x1c, 0xf2, 0xf8, 0xc5, 0xe1, 0xcd, 0x42, 0xb6, 0x04, 0x50, 0xfc, 0x6c, 0xac, 0x3b, 0x0a, 0xb0, 0x3d, 0x38, 0xbd, 0xd2, 0x71, 0xcd, 0x73, 0x70, 0x8d, 0x11, 0x7e, 0xc3, 0x2d, 0xbf, 0x93, 0x93, 0x94, 0x49, 0x9f, 0x7d, 0xbc, 0x2a, 0xb7, 0x72, 0x90, 0xe9, 0x22, 0x2d, 0x6d, 0x60, 0xea, 0x02, 0xce, 0x45, 0xc5, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4852 = { .name = "ecdsa_secp224r1_sha512_4852", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4852_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4852_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4852_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4853 for ECDSA, tcId is 351 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4853_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4853_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4853_sig[] = { 0x24, 0x91, 0x69, 0x61, 0xdd, 0x0d, 0x16, 0x8c, 0x28, 0x78, 0xca, 0x4f, 0xd0, 0x65, 0xb8, 0x13, 0x11, 0xc0, 0x3b, 0x7f, 0x23, 0xf8, 0x41, 0x6f, 0x4a, 0x23, 0xb1, 0x4b, 0x1e, 0x37, 0xe3, 0xc0, 0x3b, 0x23, 0x33, 0xb3, 0x3b, 0xbb, 0x2e, 0xbe, 0x05, 0xb0, 0x31, 0x04, 0x2a, 0xf1, 0x93, 0x15, 0xad, 0xfd, 0xcc, 0xdf, 0xc8, 0xd0, 0x78, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4853 = { .name = "ecdsa_secp224r1_sha512_4853", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4853_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4853_msg, .msglen = 9, .sig = ecdsa_secp224r1_sha512_4853_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4854 for ECDSA, tcId is 352 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4854_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4854_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp224r1_sha512_4854_sig[] = { 0x8d, 0xf5, 0x46, 0x8b, 0x12, 0x3b, 0x92, 0x47, 0x7a, 0x5c, 0x57, 0xea, 0x86, 0xc5, 0x4c, 0x5c, 0x9e, 0x41, 0xd1, 0x19, 0x37, 0x0d, 0xc1, 0x89, 0x22, 0xaa, 0x83, 0x03, 0x86, 0xbd, 0xf0, 0x6b, 0x75, 0xf4, 0xd4, 0x9d, 0x02, 0xc5, 0x80, 0x69, 0x26, 0xf5, 0xd0, 0x1b, 0x1a, 0x4f, 0x6a, 0x81, 0x46, 0x66, 0x4a, 0x03, 0xfa, 0x82, 0x07, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4854 = { .name = "ecdsa_secp224r1_sha512_4854", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4854_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4854_msg, .msglen = 11, .sig = ecdsa_secp224r1_sha512_4854_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4855 for ECDSA, tcId is 353 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4855_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4855_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4855_sig[] = { 0xf6, 0x5b, 0xf1, 0x6f, 0x7c, 0xed, 0x97, 0xb0, 0xcd, 0xc2, 0x2b, 0x08, 0xc6, 0x2e, 0xf8, 0x11, 0x30, 0x68, 0x13, 0x13, 0x4b, 0x00, 0x1b, 0xc5, 0x11, 0x40, 0xe8, 0x28, 0x3a, 0x9b, 0x7c, 0x00, 0x8c, 0xda, 0xf8, 0x03, 0x36, 0x8d, 0xf9, 0xee, 0x50, 0xe2, 0x74, 0xc7, 0xa9, 0xf9, 0x36, 0x93, 0x44, 0xd9, 0x91, 0x8e, 0x0c, 0x08, 0xdb, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4855 = { .name = "ecdsa_secp224r1_sha512_4855", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4855_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4855_msg, .msglen = 10, .sig = ecdsa_secp224r1_sha512_4855_sig, .siglen = 56, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4856 for ECDSA, tcId is 354 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4856_pubkey[] = { 0xea, 0xda, 0x93, 0xbe, 0x10, 0xb2, 0x44, 0x9e, 0x1e, 0x8b, 0xb5, 0x83, 0x05, 0xd5, 0x20, 0x08, 0x01, 0x3c, 0x57, 0x10, 0x7c, 0x1a, 0x20, 0xa3, 0x17, 0xa6, 0xcb, 0xa7, 0xec, 0xa6, 0x72, 0x34, 0x0c, 0x03, 0xd1, 0xd2, 0xe0, 0x96, 0x63, 0x28, 0x66, 0x91, 0xdf, 0x55, 0x06, 0x9f, 0xa2, 0x54, 0x90, 0xc9, 0xdd, 0x9f, 0x9c, 0x0b, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha512_4856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4856_sig[] = { 0x62, 0x39, 0x87, 0x74, 0x30, 0xe2, 0x68, 0xf1, 0xa3, 0xad, 0xa2, 0xc9, 0x03, 0x57, 0x24, 0x7c, 0x6c, 0xa6, 0x68, 0x7f, 0x49, 0x02, 0x3b, 0xed, 0x0f, 0xb5, 0xb5, 0x97, 0x35, 0x5c, 0x60, 0xc0, 0x9f, 0x0d, 0xac, 0xb9, 0xd7, 0x4b, 0x7c, 0xcd, 0xe7, 0x18, 0x06, 0xc5, 0x0f, 0xda, 0x87, 0x50, 0xc6, 0xec, 0xb7, 0xab, 0xba, 0x91, 0x0a, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4856 = { .name = "ecdsa_secp224r1_sha512_4856", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4856_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4856_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4856_sig, .siglen = 56, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 354 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4857 for ECDSA, tcId is 355 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4857_pubkey[] = { 0x44, 0x08, 0xe5, 0xc9, 0x5e, 0x33, 0x2a, 0xb6, 0xc2, 0x82, 0x3a, 0x63, 0x95, 0x93, 0x91, 0xd6, 0x0a, 0x6d, 0x69, 0xc5, 0x9e, 0xb1, 0xf7, 0xbd, 0x27, 0x22, 0x06, 0xb9, 0xf5, 0x27, 0x8e, 0x90, 0x1f, 0xb4, 0x77, 0x3a, 0xee, 0xb2, 0xd8, 0x25, 0x5b, 0xa4, 0xdf, 0x3c, 0xf3, 0xdb, 0x7e, 0x05, 0x57, 0xdb, 0xc6, 0x13, 0x4c, 0x55, 0xf3, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha512_4857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4857_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4857 = { .name = "ecdsa_secp224r1_sha512_4857", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4857_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4857_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4857_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 355 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4858 for ECDSA, tcId is 356 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4858_pubkey[] = { 0x44, 0x08, 0xe5, 0xc9, 0x5e, 0x33, 0x2a, 0xb6, 0xc2, 0x82, 0x3a, 0x63, 0x95, 0x93, 0x91, 0xd6, 0x0a, 0x6d, 0x69, 0xc5, 0x9e, 0xb1, 0xf7, 0xbd, 0x27, 0x22, 0x06, 0xb9, 0xf5, 0x27, 0x8e, 0x90, 0x1f, 0xb4, 0x77, 0x3a, 0xee, 0xb2, 0xd8, 0x25, 0x5b, 0xa4, 0xdf, 0x3c, 0xf3, 0xdb, 0x7e, 0x05, 0x57, 0xdb, 0xc6, 0x13, 0x4c, 0x55, 0xf3, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha512_4858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4858_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4858 = { .name = "ecdsa_secp224r1_sha512_4858", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4858_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4858_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4858_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 356 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4859 for ECDSA, tcId is 357 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4859_pubkey[] = { 0x31, 0x5a, 0x83, 0x00, 0x8d, 0xba, 0x00, 0xb3, 0x51, 0xc3, 0xf9, 0xfc, 0xa0, 0x81, 0x1c, 0x3a, 0xe1, 0x88, 0x4f, 0xa9, 0xa2, 0xa7, 0x5e, 0x6d, 0x5e, 0x71, 0xf2, 0x69, 0x50, 0x4b, 0xbe, 0x6a, 0x25, 0xbe, 0x25, 0x3b, 0x58, 0x2e, 0xfa, 0xb4, 0xb8, 0xb9, 0xe6, 0x13, 0x72, 0x76, 0x7a, 0x7a, 0x3a, 0x42, 0x3c, 0x09, 0x43, 0x12, 0x72, 0x96, }; static const unsigned char ecdsa_secp224r1_sha512_4859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4859_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4859 = { .name = "ecdsa_secp224r1_sha512_4859", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4859_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4859_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4859_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 357 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4860 for ECDSA, tcId is 358 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4860_pubkey[] = { 0x2f, 0x69, 0x83, 0xb6, 0xe9, 0xf8, 0xef, 0x96, 0xc2, 0xd9, 0x81, 0xf6, 0x9b, 0xe5, 0x4b, 0x06, 0x59, 0x1e, 0xd7, 0x3f, 0xe4, 0x0c, 0x8a, 0x54, 0x6b, 0x93, 0x6a, 0x79, 0x71, 0xbf, 0x57, 0x72, 0x6c, 0x26, 0xc8, 0x11, 0xd7, 0x62, 0x5a, 0x9d, 0x85, 0x19, 0x51, 0xc1, 0xff, 0xfe, 0x23, 0x6b, 0x0e, 0xb3, 0xb8, 0x96, 0xbc, 0x4c, 0x98, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4860_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4860 = { .name = "ecdsa_secp224r1_sha512_4860", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4860_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4860_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4860_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 358 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4861 for ECDSA, tcId is 359 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4861_pubkey[] = { 0xd1, 0xf5, 0x15, 0x97, 0x1c, 0xc9, 0x39, 0x11, 0x53, 0x56, 0x9c, 0x2b, 0xef, 0xa1, 0xf9, 0x15, 0xe2, 0x93, 0x11, 0x10, 0x75, 0x77, 0x60, 0xeb, 0xd7, 0xe6, 0x1f, 0x86, 0x41, 0xc3, 0xdb, 0x8b, 0xee, 0xa2, 0x0b, 0x13, 0x20, 0x53, 0x89, 0xdc, 0xc4, 0xba, 0x8a, 0x6a, 0xf4, 0xd6, 0xda, 0x26, 0x04, 0xca, 0xcd, 0x71, 0x84, 0xec, 0x9d, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4861_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4861 = { .name = "ecdsa_secp224r1_sha512_4861", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4861_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4861_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4861_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 359 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4862 for ECDSA, tcId is 360 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4862_pubkey[] = { 0xe8, 0xf9, 0x0a, 0x71, 0x77, 0x14, 0xf0, 0x15, 0x8d, 0x95, 0x21, 0xf1, 0x8c, 0x14, 0xae, 0x8c, 0x83, 0xbf, 0x1e, 0xeb, 0xa1, 0x15, 0xc4, 0x6c, 0xbd, 0xab, 0xb2, 0x0b, 0x66, 0xf5, 0x0a, 0xc1, 0x34, 0x61, 0xc0, 0x2d, 0xa0, 0x2e, 0xdf, 0xe4, 0x29, 0x6a, 0x1f, 0x54, 0x3d, 0xde, 0x7b, 0x43, 0x59, 0xf9, 0x05, 0xe0, 0x41, 0x93, 0xd3, 0xcf, }; static const unsigned char ecdsa_secp224r1_sha512_4862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4862_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4862 = { .name = "ecdsa_secp224r1_sha512_4862", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4862_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4862_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4862_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4863 for ECDSA, tcId is 361 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4863_pubkey[] = { 0x72, 0x3b, 0xc0, 0xc9, 0xb7, 0xce, 0x6e, 0xa7, 0x84, 0xec, 0x07, 0x50, 0x36, 0xce, 0xde, 0x90, 0x45, 0x2c, 0x76, 0x57, 0x6b, 0xd8, 0xfb, 0x5b, 0xe4, 0xdc, 0x0f, 0xb1, 0xcf, 0x40, 0x58, 0x20, 0xd9, 0x2f, 0x48, 0x55, 0x2b, 0x55, 0x1c, 0x7b, 0x11, 0xf4, 0x94, 0x06, 0xdc, 0x89, 0x2f, 0xd6, 0x59, 0x97, 0x1a, 0xe7, 0xf9, 0xe7, 0x4b, 0x59, }; static const unsigned char ecdsa_secp224r1_sha512_4863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4863_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4863 = { .name = "ecdsa_secp224r1_sha512_4863", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4863_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4863_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4863_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 361 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4864 for ECDSA, tcId is 362 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4864_pubkey[] = { 0xa0, 0xdc, 0xce, 0x12, 0x70, 0x84, 0xf9, 0x55, 0xa4, 0xe4, 0x9a, 0x7c, 0x86, 0xb9, 0xb9, 0x1b, 0x05, 0xae, 0x7a, 0xfd, 0x6e, 0xb0, 0x72, 0x25, 0xa6, 0x54, 0x1d, 0x88, 0xf1, 0x0a, 0x1d, 0x4f, 0xef, 0x93, 0x93, 0x49, 0x67, 0xbb, 0x6c, 0x5d, 0x87, 0x92, 0xbb, 0xd4, 0x7a, 0xb3, 0xab, 0xb4, 0x06, 0x89, 0x9a, 0x00, 0xb1, 0xc9, 0x1b, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha512_4864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4864_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4864 = { .name = "ecdsa_secp224r1_sha512_4864", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4864_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4864_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4864_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4865 for ECDSA, tcId is 363 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4865_pubkey[] = { 0xa0, 0xdc, 0xce, 0x12, 0x70, 0x84, 0xf9, 0x55, 0xa4, 0xe4, 0x9a, 0x7c, 0x86, 0xb9, 0xb9, 0x1b, 0x05, 0xae, 0x7a, 0xfd, 0x6e, 0xb0, 0x72, 0x25, 0xa6, 0x54, 0x1d, 0x88, 0xf1, 0x0a, 0x1d, 0x4f, 0xef, 0x93, 0x93, 0x49, 0x67, 0xbb, 0x6c, 0x5d, 0x87, 0x92, 0xbb, 0xd4, 0x7a, 0xb3, 0xab, 0xb4, 0x06, 0x89, 0x9a, 0x00, 0xb1, 0xc9, 0x1b, 0x4a, }; static const unsigned char ecdsa_secp224r1_sha512_4865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4865_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4865 = { .name = "ecdsa_secp224r1_sha512_4865", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4865_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4865_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4865_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 363 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4866 for ECDSA, tcId is 364 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4866_pubkey[] = { 0xe1, 0x0a, 0xbc, 0x9f, 0xe1, 0x5b, 0xcc, 0x63, 0xf0, 0x09, 0xe1, 0x61, 0xaa, 0xee, 0x26, 0x60, 0x24, 0x15, 0xbc, 0xb4, 0x5b, 0xc6, 0xc9, 0x9c, 0xe7, 0xab, 0x2b, 0x10, 0xfb, 0xeb, 0xff, 0x4e, 0x4d, 0xe0, 0xdf, 0xaa, 0xf0, 0x45, 0x94, 0xdd, 0x60, 0x3c, 0xee, 0x80, 0xb5, 0xd9, 0xab, 0x78, 0xb6, 0x70, 0x76, 0x08, 0xa9, 0x5e, 0x57, 0x4d, }; static const unsigned char ecdsa_secp224r1_sha512_4866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4866_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4866 = { .name = "ecdsa_secp224r1_sha512_4866", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4866_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4866_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4866_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 364 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4867 for ECDSA, tcId is 365 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4867_pubkey[] = { 0xfb, 0xfa, 0xbe, 0x6c, 0x64, 0x08, 0x56, 0xae, 0x5d, 0xcd, 0xc9, 0xe4, 0xb7, 0x06, 0xfb, 0x3d, 0xb2, 0x3d, 0xdc, 0xa4, 0x6b, 0x80, 0xb9, 0x05, 0x7a, 0xb9, 0xe4, 0x4f, 0x6b, 0x62, 0xd4, 0x69, 0x79, 0x77, 0xff, 0xe1, 0x9b, 0xf3, 0x18, 0x50, 0x83, 0xb1, 0xed, 0xe2, 0x16, 0x1a, 0xa5, 0x72, 0x54, 0x01, 0xa8, 0xf5, 0x78, 0x51, 0xfc, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4867_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4867 = { .name = "ecdsa_secp224r1_sha512_4867", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4867_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4867_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4867_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 365 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4868 for ECDSA, tcId is 366 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4868_pubkey[] = { 0x91, 0xa8, 0x5b, 0x3c, 0x5e, 0x90, 0xb4, 0x09, 0xf6, 0xb8, 0xd3, 0xbc, 0xa9, 0x11, 0x7a, 0x54, 0xa4, 0x0f, 0x41, 0x62, 0xb3, 0x88, 0xbb, 0x93, 0x67, 0xfd, 0x64, 0x39, 0xf1, 0xce, 0xdf, 0x20, 0xab, 0x52, 0xeb, 0x71, 0x54, 0xb7, 0xea, 0x1f, 0x29, 0x34, 0xa9, 0xc8, 0x29, 0x29, 0x06, 0xe1, 0x8a, 0x0e, 0x57, 0x20, 0x02, 0xcd, 0x2f, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha512_4868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4868_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4868 = { .name = "ecdsa_secp224r1_sha512_4868", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4868_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4868_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4868_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 366 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4869 for ECDSA, tcId is 367 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4869_pubkey[] = { 0xd1, 0xca, 0x7a, 0x5c, 0x1a, 0xa0, 0x86, 0xb2, 0x95, 0x1c, 0x1a, 0xc1, 0x4e, 0x00, 0x5f, 0x00, 0x72, 0xfb, 0x28, 0x38, 0x39, 0x73, 0xa0, 0x51, 0x17, 0xf9, 0x65, 0x2c, 0xce, 0x52, 0x3c, 0x05, 0xeb, 0xe9, 0x49, 0x91, 0xc4, 0x7f, 0xec, 0xd2, 0x41, 0xd0, 0xa0, 0x7e, 0x86, 0xc8, 0x8a, 0xb3, 0xc6, 0x20, 0xea, 0xe7, 0x92, 0xab, 0xa3, 0xd1, }; static const unsigned char ecdsa_secp224r1_sha512_4869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4869_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4869 = { .name = "ecdsa_secp224r1_sha512_4869", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4869_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4869_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4869_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 367 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4870 for ECDSA, tcId is 368 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4870_pubkey[] = { 0x35, 0x65, 0xaf, 0x2a, 0x48, 0x1f, 0x93, 0x90, 0xe7, 0x1d, 0x76, 0x42, 0x71, 0x7d, 0x04, 0x27, 0xe0, 0x2e, 0x5e, 0x7d, 0xe8, 0xa3, 0xc0, 0xc1, 0xff, 0xd5, 0xf3, 0x3e, 0x94, 0x74, 0x54, 0x7e, 0x0d, 0x54, 0xdc, 0xaa, 0xe8, 0x54, 0x94, 0xc7, 0x4f, 0xaa, 0x23, 0x39, 0x4a, 0x05, 0x6e, 0x41, 0xc2, 0x83, 0x96, 0x38, 0xb8, 0x52, 0x3b, 0x72, }; static const unsigned char ecdsa_secp224r1_sha512_4870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4870_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4870 = { .name = "ecdsa_secp224r1_sha512_4870", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4870_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4870_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4870_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 368 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4871 for ECDSA, tcId is 369 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4871_pubkey[] = { 0x29, 0xc6, 0x94, 0x79, 0x0f, 0xbd, 0x23, 0x77, 0x7c, 0xfd, 0xe4, 0x34, 0xba, 0xdc, 0xb0, 0x61, 0xa3, 0x26, 0xa5, 0x53, 0x42, 0x64, 0xbc, 0xfe, 0x19, 0x3c, 0x71, 0x6c, 0x17, 0x8a, 0x94, 0x3f, 0x7b, 0xd4, 0xfb, 0x13, 0x25, 0x65, 0xba, 0x60, 0x23, 0x58, 0xb1, 0x34, 0x33, 0xa5, 0x21, 0x7a, 0xc0, 0x4c, 0xc0, 0x35, 0x56, 0x6c, 0x73, 0xf8, }; static const unsigned char ecdsa_secp224r1_sha512_4871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4871_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4871 = { .name = "ecdsa_secp224r1_sha512_4871", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4871_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4871_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4871_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 369 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4872 for ECDSA, tcId is 370 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4872_pubkey[] = { 0x8f, 0xd4, 0x3a, 0xac, 0x85, 0x56, 0xf4, 0x66, 0x5f, 0xd4, 0xc1, 0x3f, 0x4e, 0x15, 0x11, 0x40, 0xf4, 0x2a, 0x39, 0x57, 0x63, 0xc5, 0xda, 0x24, 0x7a, 0x39, 0x8f, 0x97, 0x96, 0x87, 0xd2, 0x4a, 0x9f, 0xcd, 0x6b, 0x20, 0xa5, 0x94, 0x51, 0xc3, 0x48, 0xa6, 0x36, 0x4d, 0x0f, 0xfa, 0xf0, 0xec, 0xfe, 0x16, 0x43, 0x13, 0xdb, 0x65, 0x94, 0xab, }; static const unsigned char ecdsa_secp224r1_sha512_4872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4872_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4872 = { .name = "ecdsa_secp224r1_sha512_4872", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4872_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4872_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4872_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 370 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4873 for ECDSA, tcId is 371 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4873_pubkey[] = { 0xc2, 0xae, 0x0e, 0x35, 0x7a, 0x43, 0xf9, 0x75, 0x49, 0xa7, 0x25, 0xae, 0x37, 0x04, 0x44, 0x90, 0x51, 0xc9, 0x6b, 0xf3, 0x63, 0x33, 0x55, 0xc3, 0x5b, 0x6e, 0xb7, 0xe9, 0x6a, 0x84, 0xdf, 0xb6, 0xd4, 0x51, 0x7d, 0x1d, 0xe4, 0x6b, 0x18, 0x78, 0x6a, 0x50, 0x61, 0x78, 0x72, 0x4b, 0xf4, 0xae, 0x4f, 0x9e, 0x41, 0x8c, 0x75, 0xab, 0x17, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4873_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4873 = { .name = "ecdsa_secp224r1_sha512_4873", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4873_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4873_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4873_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 371 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4874 for ECDSA, tcId is 372 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4874_pubkey[] = { 0xc2, 0xae, 0x0e, 0x35, 0x7a, 0x43, 0xf9, 0x75, 0x49, 0xa7, 0x25, 0xae, 0x37, 0x04, 0x44, 0x90, 0x51, 0xc9, 0x6b, 0xf3, 0x63, 0x33, 0x55, 0xc3, 0x5b, 0x6e, 0xb7, 0xe9, 0x6a, 0x84, 0xdf, 0xb6, 0xd4, 0x51, 0x7d, 0x1d, 0xe4, 0x6b, 0x18, 0x78, 0x6a, 0x50, 0x61, 0x78, 0x72, 0x4b, 0xf4, 0xae, 0x4f, 0x9e, 0x41, 0x8c, 0x75, 0xab, 0x17, 0xef, }; static const unsigned char ecdsa_secp224r1_sha512_4874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4874_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4874 = { .name = "ecdsa_secp224r1_sha512_4874", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4874_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4874_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4874_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 372 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4875 for ECDSA, tcId is 373 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4875_pubkey[] = { 0x96, 0x16, 0x17, 0xd9, 0x85, 0x5f, 0x20, 0x2f, 0xd6, 0x00, 0xb5, 0x84, 0xab, 0xe9, 0x4a, 0x46, 0x67, 0x49, 0x27, 0xcf, 0xdc, 0x63, 0x33, 0xc5, 0xbe, 0x56, 0xce, 0x7b, 0x89, 0xb4, 0x15, 0x0d, 0x9c, 0xcd, 0xfb, 0xd7, 0x7e, 0x76, 0x82, 0xca, 0x86, 0x2c, 0x0c, 0x3e, 0x96, 0xd8, 0x9c, 0x91, 0x8b, 0x7d, 0x3b, 0x7b, 0xbb, 0x92, 0xff, 0x43, }; static const unsigned char ecdsa_secp224r1_sha512_4875_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4875_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4875 = { .name = "ecdsa_secp224r1_sha512_4875", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4875_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4875_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4875_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 373 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4876 for ECDSA, tcId is 374 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4876_pubkey[] = { 0x8d, 0xb5, 0x3f, 0xe4, 0x16, 0x8d, 0xf4, 0x3e, 0xe5, 0x38, 0xbc, 0x9d, 0x75, 0x8b, 0x8c, 0x26, 0xfa, 0x43, 0x3f, 0xb0, 0x10, 0x1b, 0xcb, 0xad, 0x03, 0x95, 0x85, 0xde, 0x23, 0x10, 0xdf, 0xc2, 0x08, 0x35, 0x37, 0x9e, 0xa4, 0x06, 0x99, 0x30, 0x36, 0xfd, 0x4b, 0xb0, 0xf6, 0x7d, 0x14, 0x76, 0x0e, 0x1e, 0xb4, 0x14, 0xc3, 0x2d, 0xd1, 0xf3, }; static const unsigned char ecdsa_secp224r1_sha512_4876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4876_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4876 = { .name = "ecdsa_secp224r1_sha512_4876", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4876_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4876_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4876_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 374 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4877 for ECDSA, tcId is 375 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4877_pubkey[] = { 0x0b, 0x7f, 0xa6, 0x19, 0x83, 0xe7, 0xa2, 0x27, 0xf7, 0x38, 0x84, 0x7d, 0x45, 0x7f, 0x3e, 0x8c, 0xf0, 0xa4, 0x08, 0x5c, 0x31, 0x2f, 0xb6, 0xdc, 0xec, 0x82, 0x25, 0x70, 0xee, 0x74, 0x34, 0xce, 0x2f, 0xf3, 0xfb, 0xcc, 0x1d, 0x09, 0x60, 0x37, 0x98, 0x76, 0xe9, 0xdd, 0x5b, 0xed, 0x28, 0xaa, 0xd5, 0x76, 0xee, 0xa2, 0x33, 0xa4, 0x4b, 0x0d, }; static const unsigned char ecdsa_secp224r1_sha512_4877_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4877_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4877 = { .name = "ecdsa_secp224r1_sha512_4877", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4877_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4877_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4877_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 375 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4878 for ECDSA, tcId is 376 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4878_pubkey[] = { 0x55, 0xb2, 0x12, 0x91, 0x9c, 0xd6, 0x88, 0x6b, 0x13, 0xcd, 0x7a, 0x25, 0x56, 0x43, 0x0c, 0xe4, 0x42, 0xe8, 0x69, 0x42, 0xf1, 0xbf, 0x6e, 0x46, 0x18, 0xae, 0x36, 0x3e, 0x79, 0x5c, 0x66, 0x4a, 0xe9, 0x60, 0xee, 0x11, 0x06, 0x30, 0x8b, 0x7d, 0xba, 0x91, 0x24, 0x0a, 0xb0, 0xc3, 0xef, 0x8b, 0xeb, 0x7d, 0x0a, 0x4d, 0x7a, 0x10, 0x2a, 0x7f, }; static const unsigned char ecdsa_secp224r1_sha512_4878_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4878_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4878 = { .name = "ecdsa_secp224r1_sha512_4878", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4878_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4878_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4878_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 376 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4879 for ECDSA, tcId is 377 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4879_pubkey[] = { 0xc0, 0x28, 0x8a, 0x63, 0xce, 0x32, 0x26, 0x3f, 0x36, 0x51, 0x19, 0x8d, 0xab, 0x80, 0x1c, 0x89, 0x6f, 0xb9, 0x30, 0x83, 0x62, 0xfc, 0x40, 0xe3, 0x59, 0x59, 0xe1, 0x40, 0x10, 0xd0, 0x0b, 0xd1, 0xc2, 0x28, 0xcf, 0xb6, 0xa5, 0xfa, 0xa6, 0x47, 0x38, 0x78, 0x04, 0xe3, 0x4f, 0xa1, 0xa7, 0xf9, 0xfc, 0xc4, 0x72, 0xc0, 0x5e, 0xa2, 0xee, 0xda, }; static const unsigned char ecdsa_secp224r1_sha512_4879_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4879_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4879 = { .name = "ecdsa_secp224r1_sha512_4879", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4879_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4879_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4879_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 377 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4880 for ECDSA, tcId is 378 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4880_pubkey[] = { 0x0c, 0x8e, 0x2c, 0xb5, 0xf6, 0xa9, 0x03, 0xe1, 0xcc, 0xcf, 0x3a, 0xc2, 0xd4, 0x65, 0xf1, 0xd0, 0xdc, 0x34, 0x52, 0x23, 0x7f, 0xd9, 0xe8, 0xa4, 0xdf, 0x5d, 0x53, 0x41, 0xd0, 0x44, 0xca, 0x8c, 0xee, 0xcb, 0x54, 0xa1, 0xb9, 0x51, 0x27, 0x09, 0x71, 0xe5, 0xab, 0x4e, 0xb2, 0x26, 0x11, 0x6c, 0x48, 0xc5, 0x53, 0x49, 0x9d, 0x1a, 0x48, 0x99, }; static const unsigned char ecdsa_secp224r1_sha512_4880_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4880_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4880 = { .name = "ecdsa_secp224r1_sha512_4880", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4880_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4880_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4880_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 378 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4881 for ECDSA, tcId is 379 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4881_pubkey[] = { 0x1f, 0xf6, 0xb9, 0x90, 0x17, 0x84, 0xd8, 0x8b, 0x25, 0x52, 0x7b, 0x37, 0x02, 0x62, 0x2a, 0x27, 0x34, 0xb8, 0x3d, 0x8a, 0x0f, 0xed, 0x0f, 0x74, 0x0b, 0xb7, 0x84, 0xe2, 0x0e, 0x83, 0xee, 0x0a, 0xa8, 0x29, 0x33, 0xdc, 0xdc, 0x63, 0x7a, 0x37, 0x60, 0x60, 0x6a, 0x04, 0x97, 0x4c, 0x2d, 0xc7, 0x5f, 0x12, 0x09, 0x5f, 0x8f, 0xda, 0xf0, 0x03, }; static const unsigned char ecdsa_secp224r1_sha512_4881_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4881_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4881 = { .name = "ecdsa_secp224r1_sha512_4881", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4881_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4881_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4881_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 379 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4882 for ECDSA, tcId is 380 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4882_pubkey[] = { 0xb2, 0x1f, 0xac, 0xa1, 0x7b, 0x68, 0x05, 0x87, 0x52, 0xd9, 0x43, 0xa8, 0x1f, 0x85, 0x3b, 0x80, 0x05, 0x62, 0xdf, 0x8b, 0x21, 0x72, 0xe1, 0x50, 0x95, 0x3c, 0x62, 0x42, 0x01, 0xc2, 0xc0, 0xf5, 0xed, 0x3b, 0x34, 0x29, 0x56, 0xca, 0xcd, 0x26, 0xf9, 0x09, 0x75, 0x62, 0xd0, 0xfb, 0x0a, 0x3d, 0xda, 0xb9, 0x1c, 0x5a, 0xe7, 0xe9, 0x0c, 0x01, }; static const unsigned char ecdsa_secp224r1_sha512_4882_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4882_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc1, 0x52, 0xaa, 0xfe, 0xa3, 0xa8, 0x61, 0x2e, 0xc8, 0x3a, 0x7d, 0xc9, 0x44, 0x8e, 0x66, 0x00, 0xae, 0x6a, 0x77, 0x2d, 0x75, 0xad, 0x2c, 0xaf, 0x19, 0xf9, 0x39, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4882 = { .name = "ecdsa_secp224r1_sha512_4882", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4882_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4882_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4882_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 380 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4883 for ECDSA, tcId is 381 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4883_pubkey[] = { 0xf4, 0x92, 0x78, 0x41, 0x9e, 0x4f, 0x50, 0x68, 0x89, 0xb0, 0x16, 0x8b, 0x1f, 0xce, 0x1f, 0x87, 0xee, 0x5b, 0x61, 0xef, 0xa0, 0xe7, 0x3c, 0x78, 0x33, 0xee, 0xb2, 0x9c, 0xb1, 0xb3, 0x34, 0xf8, 0x1b, 0xe8, 0xf0, 0x5f, 0x3b, 0x2e, 0x98, 0xd3, 0x8b, 0x03, 0x0c, 0xff, 0x57, 0x94, 0x7b, 0x96, 0x13, 0x5e, 0xc4, 0x46, 0x5c, 0x5e, 0x53, 0xf3, }; static const unsigned char ecdsa_secp224r1_sha512_4883_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4883_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4e, 0x15, 0x8e, 0xf8, 0x6c, 0xc5, 0x30, 0x54, 0xf1, 0x63, 0x5c, 0x74, 0xe6, 0x55, 0x08, 0x20, 0x60, 0x48, 0x92, 0x93, 0x15, 0xe0, 0x97, 0xa5, 0x9f, 0x15, 0x19, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4883 = { .name = "ecdsa_secp224r1_sha512_4883", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4883_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4883_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4883_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4884 for ECDSA, tcId is 382 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4884_pubkey[] = { 0x75, 0xc6, 0xa8, 0x86, 0xe2, 0x2b, 0xc0, 0x4b, 0x99, 0x6d, 0x4a, 0x19, 0x57, 0x5c, 0xe0, 0xc6, 0x68, 0x6b, 0x44, 0x9b, 0x6e, 0x05, 0xef, 0x13, 0x01, 0xbd, 0x8b, 0xa2, 0x33, 0xab, 0x29, 0xf6, 0x5d, 0xf2, 0xd4, 0x14, 0x4d, 0xa2, 0xb2, 0x1e, 0x90, 0x35, 0x9a, 0x06, 0x47, 0x65, 0xc9, 0x5e, 0x32, 0x5b, 0xb7, 0xe5, 0x4c, 0xa2, 0x8e, 0x40, }; static const unsigned char ecdsa_secp224r1_sha512_4884_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4884_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0xac, 0x0b, 0x24, 0x51, 0x2e, 0x84, 0xf6, 0xfb, 0x01, 0x56, 0x20, 0xd6, 0x89, 0xd3, 0x0d, 0x14, 0x73, 0x6c, 0xf0, 0x0c, 0x18, 0x83, 0x87, 0x53, 0xc3, 0x81, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4884 = { .name = "ecdsa_secp224r1_sha512_4884", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4884_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4884_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4884_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4885 for ECDSA, tcId is 383 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4885_pubkey[] = { 0xf5, 0x54, 0x01, 0x4c, 0xc1, 0x4f, 0x31, 0x9c, 0x18, 0xf5, 0xfa, 0x6c, 0xd7, 0x39, 0x24, 0x90, 0x75, 0xff, 0x35, 0xba, 0x3b, 0x2a, 0xfd, 0xab, 0x53, 0x29, 0xef, 0x0f, 0xd2, 0xc5, 0x01, 0xf2, 0x5a, 0x70, 0x4a, 0xdd, 0xbd, 0x85, 0xc0, 0xe0, 0x22, 0x74, 0x89, 0x56, 0xe5, 0x99, 0x8d, 0x99, 0xc3, 0x87, 0xfb, 0xfd, 0x34, 0x3c, 0x89, 0xe0, }; static const unsigned char ecdsa_secp224r1_sha512_4885_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4885_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x52, 0x21, 0xf3, 0xc2, 0xde, 0x0c, 0x6f, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0x79, 0xb5, 0x7f, 0x57, 0x51, 0x2b, 0x81, 0x4f, 0x41, 0x3a, 0xeb, 0xaf, 0xe7, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4885 = { .name = "ecdsa_secp224r1_sha512_4885", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4885_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4885_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4885_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4886 for ECDSA, tcId is 384 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4886_pubkey[] = { 0xbc, 0xfa, 0x8d, 0xb7, 0x04, 0xac, 0xa5, 0x6f, 0xeb, 0x23, 0xbd, 0x4b, 0x40, 0x49, 0x21, 0x32, 0x33, 0xaa, 0x65, 0x20, 0x45, 0xa0, 0xa8, 0x1a, 0x2e, 0x0d, 0xa6, 0x4c, 0x09, 0x1b, 0x35, 0x9f, 0x7b, 0xe7, 0xae, 0x00, 0xa0, 0xe9, 0x77, 0x7d, 0x95, 0x10, 0xf8, 0x47, 0x43, 0x0b, 0x5d, 0xfd, 0xa8, 0x78, 0xe6, 0x6d, 0x4f, 0xb0, 0xd6, 0x2f, }; static const unsigned char ecdsa_secp224r1_sha512_4886_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4886_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x22, 0x1f, 0x3c, 0x2d, 0xe0, 0xc6, 0xfb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x1b, 0x5a, 0x31, 0x20, 0x63, 0xd8, 0x7b, 0xeb, 0x4c, 0x30, 0xc2, 0x89, 0x21, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4886 = { .name = "ecdsa_secp224r1_sha512_4886", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4886_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4886_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4886_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4887 for ECDSA, tcId is 385 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4887_pubkey[] = { 0x9f, 0xd4, 0xd8, 0x28, 0xae, 0x98, 0x05, 0x6b, 0xe5, 0x8f, 0xa6, 0x9e, 0xaf, 0x9c, 0xde, 0x98, 0xca, 0x0e, 0xd9, 0xb4, 0x15, 0xd6, 0x46, 0x3f, 0xa1, 0x86, 0x4d, 0x9f, 0xb2, 0xa5, 0xe4, 0x1f, 0x10, 0xe8, 0x78, 0x94, 0x50, 0x21, 0x7d, 0xaa, 0xfd, 0x25, 0x9f, 0x20, 0x4a, 0xed, 0x87, 0xb0, 0xe2, 0x61, 0x00, 0xf4, 0x3f, 0x7c, 0x5b, 0xad, }; static const unsigned char ecdsa_secp224r1_sha512_4887_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4887_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x44, 0x3e, 0x78, 0x5b, 0xc1, 0x8d, 0xf7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x36, 0xb4, 0x62, 0x40, 0xc7, 0xb0, 0xf7, 0xd6, 0x98, 0x61, 0x85, 0x12, 0x42, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4887 = { .name = "ecdsa_secp224r1_sha512_4887", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4887_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4887_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4887_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4888 for ECDSA, tcId is 386 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4888_pubkey[] = { 0x61, 0x23, 0xa3, 0x39, 0x69, 0xf2, 0xe0, 0x36, 0xfc, 0x27, 0x88, 0x5f, 0x55, 0x75, 0x5d, 0x39, 0x1c, 0xb0, 0xc2, 0xd3, 0xfa, 0xfb, 0x0c, 0x40, 0x56, 0xc1, 0x99, 0x5d, 0xa0, 0x3b, 0xb4, 0x90, 0x04, 0x7e, 0x88, 0xfe, 0x7e, 0x60, 0x89, 0x12, 0xa6, 0x20, 0x5b, 0x65, 0xf9, 0x50, 0xa8, 0xa0, 0xa3, 0x60, 0x36, 0x2d, 0x33, 0x39, 0xe6, 0x2c, }; static const unsigned char ecdsa_secp224r1_sha512_4888_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4888_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc2, 0xde, 0x0c, 0x6f, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x4f, 0xd5, 0x01, 0x36, 0x87, 0x8b, 0x7e, 0x13, 0x41, 0x52, 0x1b, 0x2f, 0x88, 0x0b, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4888 = { .name = "ecdsa_secp224r1_sha512_4888", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4888_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4888_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4888_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4889 for ECDSA, tcId is 387 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4889_pubkey[] = { 0xa1, 0x0b, 0x7a, 0xa7, 0x78, 0x5b, 0x2f, 0x27, 0x91, 0xb1, 0xd4, 0xc4, 0x3e, 0x12, 0x7a, 0xab, 0x56, 0x69, 0x61, 0x2d, 0x74, 0x0b, 0x38, 0xab, 0xaa, 0x0d, 0x30, 0x6e, 0xc1, 0x78, 0xf2, 0x16, 0xfa, 0xd3, 0x79, 0xad, 0x80, 0xba, 0xa0, 0xea, 0xc5, 0x7b, 0xf9, 0xa5, 0x6d, 0x44, 0x6d, 0x68, 0x55, 0x76, 0x37, 0x1b, 0x74, 0x76, 0x23, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4889_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4889_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9f, 0x56, 0xaa, 0x80, 0xae, 0x2b, 0xcf, 0x68, 0x9b, 0xe2, 0xc1, 0x1b, 0x5d, 0xb7, 0xe3, 0xa2, 0x89, 0x83, 0xb4, 0xa7, 0x59, 0x06, 0x92, 0xed, 0xcf, 0x5f, 0x8d, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4889 = { .name = "ecdsa_secp224r1_sha512_4889", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4889_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4889_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4889_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4890 for ECDSA, tcId is 388 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4890_pubkey[] = { 0xe0, 0x12, 0xc2, 0x3c, 0x68, 0x67, 0xe9, 0x55, 0x33, 0x13, 0xd0, 0x17, 0x9e, 0x9d, 0xb9, 0x53, 0xde, 0x7c, 0x36, 0x8c, 0xdb, 0x59, 0xab, 0xe0, 0x5f, 0x1c, 0x52, 0xba, 0xd3, 0x52, 0xa5, 0x7b, 0xb5, 0x9c, 0x45, 0x15, 0x93, 0x52, 0xc1, 0x14, 0xee, 0xb6, 0x96, 0xec, 0x3b, 0x79, 0xca, 0xa8, 0x35, 0xef, 0x5c, 0x2a, 0xe7, 0x1d, 0xdc, 0xfa, }; static const unsigned char ecdsa_secp224r1_sha512_4890_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4890_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0xad, 0x55, 0x01, 0x5c, 0x57, 0x9e, 0xd1, 0x37, 0xc5, 0x82, 0x36, 0xbb, 0x70, 0xb0, 0xa2, 0x32, 0x4e, 0x79, 0x10, 0x9e, 0x2f, 0xfc, 0x96, 0x42, 0x62, 0xf1, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4890 = { .name = "ecdsa_secp224r1_sha512_4890", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4890_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4890_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4890_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4891 for ECDSA, tcId is 389 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4891_pubkey[] = { 0xb9, 0xcc, 0xd7, 0xf0, 0xf3, 0x59, 0x49, 0x54, 0xaa, 0x72, 0x9b, 0xda, 0x4b, 0xe8, 0x83, 0xe1, 0x07, 0xe7, 0xf1, 0x22, 0x64, 0x65, 0xb6, 0x4c, 0x2c, 0xa7, 0x10, 0x57, 0x89, 0x82, 0x9d, 0x78, 0x70, 0x16, 0xc5, 0xc1, 0x18, 0xd3, 0xba, 0x33, 0x17, 0xa2, 0xda, 0x0a, 0x0d, 0xaa, 0xf5, 0x6d, 0x30, 0x04, 0xc1, 0x09, 0x62, 0x33, 0x3a, 0x9f, }; static const unsigned char ecdsa_secp224r1_sha512_4891_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4891_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x28, 0x94, 0x44, 0xbb, 0xd2, 0x2d, 0xb7, 0xf7, 0x36, 0x8f, 0x84, 0x11, 0xc2, 0x7e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4891 = { .name = "ecdsa_secp224r1_sha512_4891", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4891_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4891_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4891_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4892 for ECDSA, tcId is 390 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4892_pubkey[] = { 0x32, 0x1a, 0x17, 0xde, 0x02, 0x4f, 0xe8, 0x9c, 0x18, 0x64, 0xe1, 0x28, 0xb9, 0xe0, 0xaf, 0x3e, 0x6b, 0x48, 0x80, 0x0a, 0x70, 0xd6, 0xe8, 0x02, 0xb8, 0xb6, 0xdf, 0xfe, 0xb1, 0xa8, 0xae, 0x96, 0x91, 0x1d, 0xdb, 0xde, 0xb8, 0x39, 0x48, 0xa9, 0x92, 0xb1, 0xb0, 0xfe, 0x31, 0x66, 0x79, 0xc6, 0x48, 0x14, 0xb6, 0xa4, 0x5e, 0xc5, 0x6f, 0xe9, }; static const unsigned char ecdsa_secp224r1_sha512_4892_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4892_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0x56, 0x05, 0x92, 0x28, 0x97, 0x42, 0x7b, 0x7d, 0x80, 0xab, 0x10, 0x6b, 0x44, 0x74, 0xd7, 0xfa, 0x96, 0x2e, 0x97, 0x0f, 0xfa, 0xd6, 0x66, 0x58, 0x0f, 0xd5, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4892 = { .name = "ecdsa_secp224r1_sha512_4892", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4892_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4892_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4892_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4893 for ECDSA, tcId is 391 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4893_pubkey[] = { 0x08, 0x84, 0x2f, 0x19, 0xb1, 0x14, 0xd1, 0x6b, 0xe2, 0x7b, 0xb4, 0xb6, 0x97, 0x13, 0x77, 0xed, 0x6b, 0x1d, 0x09, 0x15, 0xe1, 0x33, 0xa9, 0xeb, 0xf0, 0x16, 0x74, 0xee, 0x4c, 0x97, 0x73, 0x8b, 0x69, 0x12, 0xff, 0x71, 0x55, 0x3c, 0x4a, 0x74, 0x7c, 0x78, 0x2e, 0xdd, 0xd9, 0xd2, 0xa2, 0x0f, 0xbe, 0xae, 0x38, 0x86, 0x4d, 0x21, 0x78, 0x59, }; static const unsigned char ecdsa_secp224r1_sha512_4893_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4893_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4893 = { .name = "ecdsa_secp224r1_sha512_4893", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4893_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4893_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4893_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 391 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4894 for ECDSA, tcId is 392 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4894_pubkey[] = { 0x84, 0xd6, 0x51, 0x59, 0x6f, 0xd2, 0x34, 0x8f, 0x1b, 0xb5, 0xc8, 0xae, 0x9d, 0x22, 0xc8, 0xb2, 0x1c, 0x4f, 0x75, 0x09, 0x24, 0x0b, 0x60, 0x9a, 0xba, 0xd5, 0xcc, 0x24, 0x31, 0x96, 0xb6, 0x7b, 0x4c, 0xfa, 0xff, 0xaf, 0x0d, 0xce, 0x25, 0xab, 0x00, 0xbf, 0xea, 0xa1, 0xa6, 0x48, 0x21, 0x33, 0x2e, 0xfa, 0x6d, 0xed, 0xd8, 0x7c, 0xc9, 0xe7, }; static const unsigned char ecdsa_secp224r1_sha512_4894_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4894_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4894 = { .name = "ecdsa_secp224r1_sha512_4894", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4894_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4894_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4894_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 392 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4895 for ECDSA, tcId is 393 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4895_pubkey[] = { 0x8f, 0xbe, 0x39, 0xe7, 0x5b, 0xc4, 0xfd, 0x8a, 0x15, 0xe4, 0xb5, 0x2e, 0x4b, 0xbe, 0xbe, 0x20, 0x47, 0xd5, 0x43, 0x85, 0xa7, 0x11, 0x7e, 0x17, 0xa4, 0xd0, 0xb2, 0xb2, 0x07, 0xab, 0xdb, 0x40, 0x82, 0x45, 0x38, 0xe5, 0x78, 0x7c, 0x71, 0x8d, 0x65, 0x48, 0x58, 0x3f, 0x52, 0x3f, 0x6b, 0x5b, 0xbf, 0xa2, 0x39, 0xa7, 0xf6, 0x22, 0xc8, 0xa0, }; static const unsigned char ecdsa_secp224r1_sha512_4895_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4895_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4895 = { .name = "ecdsa_secp224r1_sha512_4895", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4895_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4895_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4895_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 393 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4896 for ECDSA, tcId is 394 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4896_pubkey[] = { 0xc3, 0x36, 0xb3, 0x40, 0xbc, 0x99, 0xd4, 0x6c, 0x2c, 0x52, 0xdf, 0x54, 0x28, 0xb6, 0xa0, 0xc4, 0xeb, 0x2d, 0xa7, 0x6c, 0x42, 0x35, 0x30, 0xf7, 0x67, 0xcc, 0x76, 0x52, 0xf3, 0xab, 0x99, 0x81, 0xbd, 0x05, 0xd2, 0x95, 0x51, 0x23, 0x93, 0x5a, 0x37, 0x9c, 0xbb, 0x2d, 0x43, 0x61, 0xa1, 0x7d, 0x19, 0x87, 0x86, 0x73, 0xe1, 0xe1, 0x7d, 0xcc, }; static const unsigned char ecdsa_secp224r1_sha512_4896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4896_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4896 = { .name = "ecdsa_secp224r1_sha512_4896", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4896_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4896_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4896_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 394 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4897 for ECDSA, tcId is 395 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4897_pubkey[] = { 0x81, 0x6f, 0xdc, 0xf3, 0x70, 0x82, 0x7e, 0x3f, 0x77, 0x71, 0x56, 0x4e, 0x1a, 0xa7, 0x3e, 0xd7, 0x3e, 0x62, 0x55, 0x6d, 0xea, 0xda, 0xd8, 0x97, 0x11, 0xce, 0xf6, 0x63, 0xed, 0xcd, 0xa0, 0xea, 0x42, 0x23, 0x5f, 0x4c, 0x9a, 0x8c, 0x13, 0xf7, 0x87, 0x35, 0x1f, 0xfe, 0x5c, 0xeb, 0x32, 0xf1, 0x5f, 0xc0, 0xcc, 0xb2, 0x4e, 0x0a, 0x40, 0x9c, }; static const unsigned char ecdsa_secp224r1_sha512_4897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4897_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4897 = { .name = "ecdsa_secp224r1_sha512_4897", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4897_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4897_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4897_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4898 for ECDSA, tcId is 396 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4898_pubkey[] = { 0x64, 0x29, 0xd2, 0xb7, 0xb0, 0x7a, 0xb0, 0xd5, 0xea, 0x35, 0x29, 0x02, 0xdf, 0x0e, 0xfc, 0x03, 0x6d, 0x72, 0x70, 0xa0, 0xa6, 0xed, 0x39, 0xf6, 0x35, 0xd0, 0x4f, 0x39, 0x4f, 0x79, 0x32, 0x88, 0x3b, 0xc4, 0x53, 0x94, 0x15, 0x13, 0x24, 0xaa, 0xb2, 0x6a, 0xe2, 0x9b, 0xbd, 0x73, 0x85, 0xfa, 0x6a, 0x42, 0xc3, 0xdb, 0x84, 0x43, 0x28, 0x97, }; static const unsigned char ecdsa_secp224r1_sha512_4898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4898_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4898 = { .name = "ecdsa_secp224r1_sha512_4898", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4898_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4898_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4898_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4899 for ECDSA, tcId is 397 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4899_pubkey[] = { 0x28, 0x8f, 0x38, 0xfd, 0x77, 0xdd, 0x16, 0x03, 0xff, 0x02, 0x75, 0xcb, 0x11, 0xcb, 0xa2, 0x80, 0xae, 0x34, 0x08, 0xaf, 0xfa, 0x6a, 0x76, 0x0f, 0x39, 0x6f, 0x1a, 0x1e, 0xc8, 0x4c, 0xa6, 0xfd, 0x77, 0x2c, 0x6a, 0xc6, 0xcc, 0x52, 0x3c, 0xc7, 0x2c, 0x2e, 0x7e, 0x95, 0xeb, 0x6a, 0x36, 0xa6, 0x6b, 0x5c, 0xca, 0x5a, 0x58, 0xba, 0x07, 0x8a, }; static const unsigned char ecdsa_secp224r1_sha512_4899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4899_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4899 = { .name = "ecdsa_secp224r1_sha512_4899", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4899_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4899_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4899_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4900 for ECDSA, tcId is 398 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4900_pubkey[] = { 0xc7, 0x69, 0xc1, 0x38, 0xf9, 0xd7, 0x1f, 0xff, 0xf1, 0x13, 0x27, 0x3b, 0x71, 0xa4, 0xaf, 0xde, 0x4f, 0x99, 0x96, 0xa1, 0xc4, 0xbe, 0x65, 0x8a, 0x39, 0x03, 0xcf, 0x7f, 0x43, 0x0e, 0x51, 0x2b, 0x86, 0x8b, 0x37, 0xbb, 0x96, 0xbc, 0x17, 0xa0, 0x9b, 0x0a, 0xb0, 0x1b, 0x26, 0x2f, 0x2e, 0x23, 0xf3, 0x4f, 0x00, 0x41, 0x8f, 0x6b, 0x63, 0xd6, }; static const unsigned char ecdsa_secp224r1_sha512_4900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4900_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4900 = { .name = "ecdsa_secp224r1_sha512_4900", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4900_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4900_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4900_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4901 for ECDSA, tcId is 399 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4901_pubkey[] = { 0x75, 0xf0, 0x07, 0xc1, 0x1b, 0x93, 0xe6, 0xf4, 0x6e, 0x9a, 0x81, 0x5c, 0xb7, 0x65, 0x99, 0x0a, 0x83, 0x05, 0xd3, 0xad, 0x8d, 0x22, 0xc7, 0x6f, 0xe6, 0xb2, 0x57, 0xcc, 0x71, 0xb5, 0xc1, 0x95, 0x1b, 0x5d, 0x46, 0x4c, 0x66, 0xdf, 0x7c, 0x29, 0x0c, 0xf0, 0xa4, 0xf1, 0x56, 0xbb, 0xf5, 0x2f, 0x1e, 0x41, 0xa7, 0x9d, 0xc6, 0x3a, 0xbc, 0xe5, }; static const unsigned char ecdsa_secp224r1_sha512_4901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4901_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4901 = { .name = "ecdsa_secp224r1_sha512_4901", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4901_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4901_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4901_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4902 for ECDSA, tcId is 400 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4902_pubkey[] = { 0x12, 0x55, 0xfb, 0x94, 0xa0, 0xf2, 0x0e, 0x6f, 0xaa, 0x25, 0x05, 0xc3, 0x94, 0xcc, 0x3c, 0x39, 0xf0, 0x7d, 0xef, 0x41, 0x07, 0x12, 0x7d, 0xff, 0xc4, 0xda, 0xcb, 0x6e, 0xea, 0x73, 0xc1, 0x04, 0x45, 0x44, 0xa1, 0x49, 0x65, 0x60, 0xbd, 0x1b, 0x04, 0x9f, 0xf6, 0x15, 0xe6, 0x8a, 0xe0, 0xd4, 0x83, 0x22, 0x03, 0x27, 0x56, 0x98, 0x84, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4902_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4902 = { .name = "ecdsa_secp224r1_sha512_4902", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4902_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4902_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4902_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4903 for ECDSA, tcId is 401 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4903_pubkey[] = { 0xf6, 0x56, 0xa6, 0x32, 0xa0, 0x80, 0x4c, 0xf6, 0x88, 0x44, 0x6b, 0x26, 0x12, 0x08, 0xf7, 0x93, 0x37, 0x3c, 0x5f, 0xf4, 0x45, 0x4b, 0xd1, 0xe0, 0xa8, 0x82, 0x11, 0x3f, 0x30, 0xa2, 0x5d, 0x6f, 0x58, 0x6e, 0x02, 0xdd, 0x4d, 0xcb, 0xf7, 0x3d, 0x96, 0xaf, 0x3e, 0x48, 0x3b, 0x7a, 0xcb, 0x5f, 0x8f, 0x4c, 0x06, 0x45, 0x0d, 0xec, 0x19, 0x82, }; static const unsigned char ecdsa_secp224r1_sha512_4903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4903_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4903 = { .name = "ecdsa_secp224r1_sha512_4903", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4903_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4903_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4903_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4904 for ECDSA, tcId is 402 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4904_pubkey[] = { 0x8f, 0xb5, 0x72, 0xde, 0x4d, 0xaf, 0x76, 0x70, 0x26, 0x24, 0xce, 0x4e, 0xd8, 0x19, 0xd0, 0x26, 0x76, 0x22, 0x24, 0xe8, 0xa5, 0x42, 0x15, 0xbf, 0x81, 0xb2, 0x02, 0xa3, 0xf0, 0x74, 0xd2, 0x0e, 0x1d, 0xa7, 0x23, 0x2d, 0x27, 0x94, 0x61, 0x73, 0x2b, 0xc1, 0xba, 0xe0, 0xc5, 0x41, 0x6a, 0xb9, 0xd6, 0x96, 0x30, 0x86, 0x22, 0xe7, 0xff, 0xe8, }; static const unsigned char ecdsa_secp224r1_sha512_4904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4904_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xec, 0x0c, 0xe3, 0xfa, 0x72, 0x5c, 0x10, 0x27, 0x47, 0x5a, 0x5f, 0x5b, 0xf4, 0xee, 0x98, 0x0d, 0xe6, 0x1c, 0x3b, 0x48, 0x75, 0xaf, 0xe8, 0xb6, 0x54, 0xb2, 0x4e, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4904 = { .name = "ecdsa_secp224r1_sha512_4904", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4904_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4904_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4904_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 402 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4905 for ECDSA, tcId is 403 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4905_pubkey[] = { 0x8f, 0xb5, 0x72, 0xde, 0x4d, 0xaf, 0x76, 0x70, 0x26, 0x24, 0xce, 0x4e, 0xd8, 0x19, 0xd0, 0x26, 0x76, 0x22, 0x24, 0xe8, 0xa5, 0x42, 0x15, 0xbf, 0x81, 0xb2, 0x02, 0xa3, 0x0f, 0x8b, 0x2d, 0xf1, 0xe2, 0x58, 0xdc, 0xd2, 0xd8, 0x6b, 0x9e, 0x8c, 0xd4, 0x3e, 0x45, 0x1e, 0x3a, 0xbe, 0x95, 0x46, 0x29, 0x69, 0xcf, 0x79, 0xdd, 0x18, 0x00, 0x19, }; static const unsigned char ecdsa_secp224r1_sha512_4905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4905_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0xec, 0x0c, 0xe3, 0xfa, 0x72, 0x5c, 0x10, 0x27, 0x47, 0x5a, 0x5f, 0x5b, 0xf4, 0xee, 0x98, 0x0d, 0xe6, 0x1c, 0x3b, 0x48, 0x75, 0xaf, 0xe8, 0xb6, 0x54, 0xb2, 0x4e, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4905 = { .name = "ecdsa_secp224r1_sha512_4905", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4905_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4905_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4905_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 403 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4906 for ECDSA, tcId is 404 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4906_pubkey[] = { 0xe5, 0x46, 0x2d, 0x3a, 0x83, 0x8d, 0x4a, 0x14, 0xde, 0x96, 0xa7, 0xb0, 0xb1, 0x07, 0x1e, 0xb6, 0x22, 0xae, 0x6e, 0x71, 0xed, 0xe8, 0xf9, 0x5f, 0xf0, 0x1c, 0x21, 0x21, 0x36, 0x8e, 0x3a, 0x90, 0xd8, 0x58, 0x4e, 0x19, 0x46, 0x16, 0xd3, 0x21, 0x1a, 0x75, 0x41, 0xf6, 0xa0, 0x96, 0x03, 0x39, 0xca, 0xb2, 0x8e, 0x8b, 0xfd, 0x6b, 0x1d, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4906_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4906 = { .name = "ecdsa_secp224r1_sha512_4906", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4906_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4906_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4906_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 404 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4907 for ECDSA, tcId is 405 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4907_pubkey[] = { 0x5d, 0x97, 0x67, 0x0c, 0x1f, 0x12, 0x1f, 0x7f, 0x1b, 0xa5, 0x41, 0x50, 0x56, 0x09, 0xf2, 0x01, 0x43, 0xb3, 0x12, 0xa7, 0xbb, 0x49, 0xd3, 0x76, 0x69, 0x0e, 0x18, 0x31, 0xc1, 0xb4, 0x56, 0x71, 0x41, 0xa7, 0xb5, 0x34, 0xe2, 0x1b, 0xd2, 0xf7, 0x06, 0xae, 0x03, 0x41, 0x69, 0xab, 0x9c, 0x3f, 0x85, 0x36, 0x14, 0x79, 0x04, 0xde, 0x8c, 0x5f, }; static const unsigned char ecdsa_secp224r1_sha512_4907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4907_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4907 = { .name = "ecdsa_secp224r1_sha512_4907", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4907_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4907_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4907_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 405 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4908 for ECDSA, tcId is 406 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4908_pubkey[] = { 0xd2, 0x67, 0x52, 0x78, 0xda, 0x2d, 0x7d, 0xaa, 0x83, 0x73, 0xdd, 0x63, 0xb7, 0xaa, 0x46, 0xcb, 0x14, 0x76, 0x65, 0x71, 0xc2, 0xd8, 0x09, 0x8b, 0x83, 0xa1, 0x02, 0xa5, 0x69, 0x9b, 0x57, 0x2d, 0x4b, 0x95, 0x14, 0x97, 0x41, 0x8a, 0x37, 0x69, 0x30, 0x02, 0x2d, 0x48, 0xfe, 0x59, 0x96, 0x6b, 0x15, 0x8f, 0xa0, 0x83, 0x40, 0xe2, 0x4b, 0x98, }; static const unsigned char ecdsa_secp224r1_sha512_4908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4908_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4908 = { .name = "ecdsa_secp224r1_sha512_4908", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4908_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4908_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4908_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 406 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4909 for ECDSA, tcId is 407 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4909_pubkey[] = { 0x5a, 0x5c, 0xd1, 0x16, 0x23, 0x88, 0x34, 0x87, 0x34, 0xda, 0xe2, 0x0e, 0x22, 0x35, 0xae, 0x2c, 0x46, 0x4a, 0xde, 0xf0, 0xa1, 0x96, 0xf9, 0xaa, 0xf0, 0x24, 0x82, 0xca, 0x2a, 0xe9, 0x4e, 0x8b, 0x9a, 0x02, 0x43, 0x75, 0x03, 0x64, 0x29, 0xb6, 0x32, 0xab, 0x48, 0x5e, 0x02, 0xc5, 0xa9, 0x66, 0x5b, 0x28, 0x9b, 0x8a, 0x47, 0xba, 0xde, 0x8f, }; static const unsigned char ecdsa_secp224r1_sha512_4909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4909_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4909 = { .name = "ecdsa_secp224r1_sha512_4909", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4909_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4909_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4909_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 407 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4910 for ECDSA, tcId is 408 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4910_pubkey[] = { 0xca, 0xcd, 0x93, 0xeb, 0x11, 0xa8, 0x21, 0xde, 0x3d, 0x88, 0x2b, 0xab, 0x74, 0x11, 0xe7, 0xc7, 0x7f, 0x23, 0xc0, 0x8d, 0xa1, 0x74, 0x18, 0x9c, 0xc9, 0x87, 0xdc, 0x41, 0x71, 0x6f, 0xe3, 0x78, 0xab, 0x84, 0x21, 0x61, 0xbc, 0x16, 0xde, 0xf6, 0xe0, 0x37, 0xd4, 0xba, 0x9d, 0x30, 0xd8, 0xcb, 0x41, 0xad, 0x30, 0xcf, 0x06, 0x56, 0xe5, 0x0b, }; static const unsigned char ecdsa_secp224r1_sha512_4910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4910_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4910 = { .name = "ecdsa_secp224r1_sha512_4910", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4910_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4910_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4910_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 408 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4911 for ECDSA, tcId is 409 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4911_pubkey[] = { 0xcf, 0x46, 0x96, 0x00, 0x60, 0x45, 0x3e, 0x55, 0x57, 0x7f, 0x1b, 0xee, 0x6a, 0x9c, 0x47, 0x09, 0xe7, 0xcd, 0xcb, 0xa4, 0x5c, 0xa8, 0x02, 0x0b, 0xb3, 0x53, 0x69, 0x31, 0xea, 0x4e, 0xc3, 0x33, 0x09, 0x21, 0x38, 0x64, 0xa1, 0x31, 0x8a, 0xee, 0x0a, 0x86, 0xd8, 0xb6, 0xf0, 0xc1, 0xb9, 0x74, 0x1c, 0xd6, 0xbd, 0x5d, 0xea, 0x4f, 0x40, 0x66, }; static const unsigned char ecdsa_secp224r1_sha512_4911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4911_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4911 = { .name = "ecdsa_secp224r1_sha512_4911", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4911_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4911_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4911_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 409 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4912 for ECDSA, tcId is 410 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4912_pubkey[] = { 0x62, 0xf4, 0xea, 0xf3, 0x79, 0x7b, 0xdc, 0x3d, 0x5d, 0x8c, 0xfa, 0xa0, 0x7b, 0x5a, 0xf7, 0x06, 0x0e, 0x13, 0x1b, 0x18, 0x3c, 0xa4, 0xed, 0xed, 0x48, 0x19, 0xe5, 0x61, 0xbf, 0xf3, 0xea, 0xdd, 0x7b, 0x55, 0xdb, 0x2d, 0xc0, 0x1b, 0xd2, 0x05, 0x69, 0xe6, 0xc4, 0x7c, 0x92, 0x12, 0xf9, 0xb2, 0xd6, 0x79, 0x37, 0x95, 0xb5, 0x1e, 0x4f, 0x6c, }; static const unsigned char ecdsa_secp224r1_sha512_4912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4912_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4912 = { .name = "ecdsa_secp224r1_sha512_4912", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4912_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4912_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4912_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 410 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4913 for ECDSA, tcId is 411 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4913_pubkey[] = { 0xc4, 0xa4, 0xbf, 0x5a, 0xe0, 0x13, 0x85, 0x87, 0xf5, 0x0a, 0xb7, 0xa2, 0xc3, 0x36, 0xa4, 0x30, 0x52, 0x7a, 0x86, 0xf5, 0x9f, 0x97, 0x65, 0xc2, 0xf3, 0xf5, 0x48, 0x8d, 0xf9, 0x41, 0x9b, 0xf9, 0xdf, 0x5f, 0x12, 0x1d, 0xe3, 0xa3, 0x2d, 0xb1, 0x7b, 0x49, 0xc7, 0x2b, 0x60, 0x6b, 0x2b, 0xe5, 0xce, 0x56, 0xac, 0xb5, 0x65, 0xcc, 0x12, 0xb7, }; static const unsigned char ecdsa_secp224r1_sha512_4913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4913_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4913 = { .name = "ecdsa_secp224r1_sha512_4913", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4913_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4913_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4913_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 411 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4914 for ECDSA, tcId is 412 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4914_pubkey[] = { 0xe7, 0xcb, 0x5a, 0xe5, 0x4d, 0xbe, 0x61, 0x9a, 0xb5, 0x06, 0x9f, 0x14, 0x56, 0x62, 0x36, 0xb3, 0xc6, 0xb0, 0xb4, 0x4f, 0x1c, 0x4c, 0x53, 0x1e, 0x66, 0xd8, 0x9b, 0x3e, 0x64, 0xbe, 0x7f, 0xdc, 0x18, 0x78, 0x96, 0x29, 0xdf, 0xdd, 0xf7, 0x15, 0x8f, 0x8f, 0xf2, 0x7a, 0xbd, 0x55, 0x3b, 0xfa, 0xc3, 0xf7, 0xc8, 0x74, 0xbc, 0xcd, 0xc3, 0x1b, }; static const unsigned char ecdsa_secp224r1_sha512_4914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4914_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4914 = { .name = "ecdsa_secp224r1_sha512_4914", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4914_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4914_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4914_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 412 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4915 for ECDSA, tcId is 413 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4915_pubkey[] = { 0x30, 0xdb, 0x5d, 0x82, 0x79, 0x31, 0x9c, 0xf5, 0xa3, 0xb6, 0x76, 0x8a, 0x0c, 0x5e, 0x5c, 0x84, 0x75, 0x2f, 0x63, 0x14, 0xf7, 0x35, 0xd6, 0x3f, 0x6c, 0x56, 0x50, 0xcd, 0xd3, 0x2f, 0xb5, 0x4f, 0x74, 0xd4, 0xa5, 0x08, 0x8e, 0x67, 0x74, 0xa1, 0x32, 0x01, 0x68, 0x36, 0x42, 0x79, 0x0d, 0x2e, 0x69, 0xe5, 0x5e, 0x4f, 0x47, 0x61, 0x29, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4915_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4915 = { .name = "ecdsa_secp224r1_sha512_4915", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4915_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4915_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4915_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 413 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4916 for ECDSA, tcId is 414 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4916_pubkey[] = { 0x7d, 0xb2, 0x7d, 0xa4, 0xd6, 0x7a, 0x2d, 0xe0, 0xc7, 0x88, 0x15, 0x80, 0x97, 0x19, 0xbd, 0xf6, 0x97, 0x63, 0x32, 0xc6, 0x7e, 0xf0, 0xf3, 0x82, 0x7d, 0xf4, 0xad, 0xc2, 0x2a, 0xb3, 0x7a, 0xec, 0x2e, 0xed, 0x0d, 0x5e, 0x67, 0xac, 0xfd, 0x6a, 0x19, 0x5f, 0x21, 0x03, 0x2d, 0x9a, 0xf7, 0x1c, 0xe7, 0x3e, 0x12, 0x0f, 0xdd, 0xa2, 0x9f, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha512_4916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4916_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4916 = { .name = "ecdsa_secp224r1_sha512_4916", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4916_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4916_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4916_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 414 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4917 for ECDSA, tcId is 415 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4917_pubkey[] = { 0xd1, 0xc1, 0x9d, 0x46, 0xb5, 0x17, 0xbb, 0x3b, 0xd7, 0xbd, 0xf0, 0x74, 0xff, 0x97, 0x5c, 0x0d, 0xbd, 0x2b, 0xde, 0x10, 0xd1, 0xad, 0x21, 0x7e, 0x58, 0xeb, 0xc8, 0xc5, 0x5a, 0xc8, 0x98, 0xc0, 0x40, 0xa1, 0x85, 0x80, 0x4d, 0xdb, 0x03, 0x2b, 0x48, 0x10, 0x3d, 0x6c, 0x8d, 0x12, 0x04, 0x3d, 0x3a, 0x4f, 0xec, 0x93, 0xab, 0xa7, 0xa6, 0xd7, }; static const unsigned char ecdsa_secp224r1_sha512_4917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4917_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4917 = { .name = "ecdsa_secp224r1_sha512_4917", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4917_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4917_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4917_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4918 for ECDSA, tcId is 416 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4918_pubkey[] = { 0xd9, 0x5a, 0xc9, 0x6a, 0xe9, 0xdb, 0xfb, 0x80, 0x91, 0x18, 0x62, 0xe0, 0x0a, 0x4c, 0xad, 0xbc, 0xb2, 0x35, 0x9f, 0x49, 0x9b, 0x53, 0xbe, 0x00, 0x7f, 0x07, 0x11, 0xc0, 0x93, 0xd3, 0xda, 0x93, 0x1a, 0xcb, 0xb9, 0x24, 0x28, 0x00, 0xdc, 0x52, 0x16, 0x95, 0xb4, 0xf1, 0x9f, 0xf2, 0xdf, 0xfc, 0x36, 0x13, 0xf4, 0x0b, 0xdb, 0x15, 0xc3, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4918_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4918 = { .name = "ecdsa_secp224r1_sha512_4918", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4918_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4918_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4918_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 416 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4919 for ECDSA, tcId is 417 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4919_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4919_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4919 = { .name = "ecdsa_secp224r1_sha512_4919", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4919_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4919_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4919_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 417 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4920 for ECDSA, tcId is 418 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4920_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha512_4920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4920_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4920 = { .name = "ecdsa_secp224r1_sha512_4920", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4920_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4920_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4920_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 418 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4921 for ECDSA, tcId is 419 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4921_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4921_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4921 = { .name = "ecdsa_secp224r1_sha512_4921", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4921_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4921_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4921_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 419 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4922 for ECDSA, tcId is 420 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4922_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha512_4922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4922_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0x11, 0xe6, 0x96, 0xeb, 0x6b, 0x31, 0xda, 0x8f, 0xf5, 0xc2, 0xc7, 0x28, 0xd3, 0x8d, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4922 = { .name = "ecdsa_secp224r1_sha512_4922", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4922_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4922_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4922_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 420 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4923 for ECDSA, tcId is 421 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4923_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4923_sig[] = { 0xf7, 0x29, 0x15, 0xd6, 0xd9, 0x16, 0x01, 0x42, 0x79, 0x61, 0x61, 0x86, 0x86, 0x9a, 0x01, 0x22, 0x8f, 0xcd, 0x9f, 0x1b, 0x40, 0x78, 0x35, 0x30, 0x18, 0xb3, 0x99, 0xab, 0xb6, 0x7f, 0x2b, 0x91, 0xee, 0xeb, 0x91, 0x03, 0x81, 0xf5, 0xb4, 0x61, 0xa4, 0xa3, 0x9c, 0x64, 0x2a, 0xea, 0x47, 0x92, 0x01, 0x3d, 0x4e, 0xb6, 0x3d, 0xa1, 0x83, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4923 = { .name = "ecdsa_secp224r1_sha512_4923", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4923_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha512_4923_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 421 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4924 for ECDSA, tcId is 422 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4924_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4924_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha512_4924_sig[] = { 0xa5, 0xd1, 0x79, 0xc3, 0x36, 0xcc, 0xdc, 0x76, 0x0d, 0xfd, 0xdd, 0x91, 0x3c, 0xdf, 0x8e, 0xa4, 0x68, 0xd0, 0xf4, 0x68, 0x6f, 0x7b, 0x2d, 0x38, 0x25, 0x69, 0x8e, 0xd7, 0xa7, 0x7f, 0x12, 0x06, 0x0a, 0x4d, 0x1b, 0x94, 0xb0, 0xd1, 0xc4, 0x43, 0xea, 0xe3, 0xad, 0x6e, 0x21, 0xb7, 0xea, 0xcf, 0xdf, 0x6f, 0xbf, 0x39, 0xa2, 0xb2, 0x96, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4924 = { .name = "ecdsa_secp224r1_sha512_4924", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4924_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4924_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha512_4924_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 422 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4925 for ECDSA, tcId is 423 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4925_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha512_4925_sig[] = { 0xb7, 0xc6, 0x5d, 0xce, 0x56, 0xab, 0xe2, 0x4f, 0xb4, 0x59, 0x2e, 0xce, 0x5a, 0xc1, 0xe6, 0xee, 0x83, 0x53, 0x43, 0x1f, 0x74, 0x52, 0x40, 0x9a, 0xdd, 0x73, 0x68, 0x84, 0xe5, 0xfe, 0x5d, 0xb7, 0x98, 0x89, 0x31, 0x02, 0x6b, 0x93, 0x7d, 0xc4, 0xef, 0x98, 0x3f, 0xe4, 0x46, 0xca, 0x13, 0x4d, 0x29, 0xb9, 0x4a, 0xc7, 0x77, 0xcd, 0xe3, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4925 = { .name = "ecdsa_secp224r1_sha512_4925", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4925_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4925_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha512_4925_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 423 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4926 for ECDSA, tcId is 424 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4926_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha512_4926_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4926_sig[] = { 0x05, 0xc5, 0x63, 0xd3, 0xa4, 0xba, 0xd8, 0x74, 0xe4, 0x61, 0x0a, 0xdf, 0xa5, 0x77, 0x77, 0xa5, 0x9f, 0x99, 0x5b, 0xfa, 0x06, 0xef, 0x97, 0xbf, 0x12, 0x5a, 0x49, 0x88, 0x97, 0xed, 0x68, 0xf5, 0x46, 0xcf, 0x4b, 0xb4, 0x99, 0x85, 0x24, 0xc1, 0x83, 0x56, 0xf3, 0xaf, 0x16, 0x2d, 0x2b, 0xf2, 0x74, 0x4b, 0xe9, 0x33, 0x57, 0xbc, 0x4b, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4926 = { .name = "ecdsa_secp224r1_sha512_4926", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4926_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4926_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha512_4926_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 424 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4927 for ECDSA, tcId is 425 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4927_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4927_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4927_sig[] = { 0xc7, 0xa6, 0xf3, 0x58, 0xb7, 0xd9, 0x38, 0x15, 0x18, 0x9a, 0xe5, 0xd2, 0xc3, 0xab, 0x4d, 0x4e, 0x05, 0xf4, 0x31, 0x76, 0xa5, 0x2d, 0xd4, 0xfc, 0x5b, 0x48, 0xa3, 0x4a, 0xa2, 0x45, 0x85, 0x12, 0xbb, 0x8d, 0xbe, 0x6f, 0x1b, 0xd6, 0xeb, 0x01, 0xd2, 0xd7, 0x7d, 0x56, 0x24, 0xe8, 0x54, 0x7b, 0xf8, 0x7d, 0x85, 0xfc, 0x73, 0x1c, 0x0c, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4927 = { .name = "ecdsa_secp224r1_sha512_4927", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4927_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4927_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4927_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 425 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4928 for ECDSA, tcId is 426 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4928_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4928_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4928_sig[] = { 0x5f, 0x56, 0xca, 0x58, 0x7d, 0x16, 0x66, 0x4a, 0x20, 0xda, 0xd1, 0x3d, 0xf8, 0x5a, 0x47, 0x59, 0x78, 0xe5, 0xce, 0xe8, 0x1a, 0x8d, 0x0f, 0x49, 0xfa, 0xaf, 0x61, 0x58, 0xb6, 0x4e, 0xf5, 0x9d, 0x79, 0x46, 0x1f, 0xe1, 0xa0, 0x9a, 0x58, 0x64, 0x90, 0x74, 0x35, 0xf7, 0x0b, 0xd7, 0x5f, 0x18, 0x3a, 0xfb, 0x11, 0x90, 0x3f, 0x56, 0x0b, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4928 = { .name = "ecdsa_secp224r1_sha512_4928", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4928_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4928_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4928_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 426 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4929 for ECDSA, tcId is 427 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4929_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha512_4929_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4929_sig[] = { 0xdd, 0x94, 0xf5, 0xb5, 0x6e, 0x99, 0x47, 0xd0, 0x07, 0xe7, 0xc8, 0xef, 0xd8, 0x94, 0xa5, 0xc8, 0x82, 0xf1, 0xd0, 0xb5, 0xdd, 0x56, 0xc3, 0x2b, 0x5b, 0x26, 0x65, 0x21, 0xfb, 0xc8, 0x83, 0x74, 0x1b, 0xd2, 0x7c, 0x59, 0x95, 0x8a, 0xe1, 0x7b, 0xa6, 0xe4, 0xa4, 0x1a, 0xd1, 0xed, 0xec, 0xa9, 0xa3, 0xba, 0x31, 0xc8, 0xf2, 0x33, 0xb5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4929 = { .name = "ecdsa_secp224r1_sha512_4929", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4929_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4929_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4929_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 427 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4930 for ECDSA, tcId is 428 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4930_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4930_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4930_sig[] = { 0x80, 0x71, 0xe6, 0x68, 0x2c, 0x6e, 0x8a, 0x32, 0x70, 0x6d, 0xc7, 0xe4, 0x11, 0x50, 0x39, 0x46, 0x54, 0x6b, 0x31, 0xff, 0xf2, 0x7d, 0xcc, 0xe1, 0x88, 0xae, 0x38, 0x9f, 0xdc, 0x39, 0x6c, 0x79, 0x7d, 0x44, 0xed, 0xf7, 0x94, 0x43, 0x2d, 0x1d, 0xa0, 0x91, 0xf8, 0xc7, 0x62, 0x97, 0x4d, 0x8c, 0xe1, 0xf0, 0x6e, 0x08, 0xca, 0x01, 0x36, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4930 = { .name = "ecdsa_secp224r1_sha512_4930", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4930_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4930_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4930_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 428 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4931 for ECDSA, tcId is 429 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4931_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4931_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4931_sig[] = { 0x79, 0x16, 0x24, 0xe5, 0xf2, 0x34, 0xb8, 0x95, 0x0d, 0x50, 0x9d, 0x0b, 0x45, 0x6e, 0xf6, 0xfa, 0x77, 0x8b, 0x19, 0xdc, 0xcd, 0x60, 0x9d, 0x49, 0x6b, 0x62, 0xa2, 0x11, 0x6c, 0x51, 0xe8, 0x46, 0xfa, 0x53, 0xd0, 0x3d, 0x42, 0xf7, 0x98, 0xe6, 0xbb, 0x90, 0x95, 0x4f, 0x9a, 0x48, 0xc1, 0x79, 0x4b, 0x47, 0xe8, 0x4a, 0xc9, 0x7b, 0x46, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4931 = { .name = "ecdsa_secp224r1_sha512_4931", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4931_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4931_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4931_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 429 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4932 for ECDSA, tcId is 430 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4932_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha512_4932_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4932_sig[] = { 0x00, 0x34, 0xbe, 0xfa, 0x1d, 0x25, 0xb7, 0x56, 0xce, 0x76, 0xb3, 0x83, 0xa6, 0xe8, 0x75, 0x37, 0x41, 0xc1, 0x2a, 0x59, 0x26, 0x6c, 0x2c, 0x79, 0x21, 0xff, 0x6e, 0x8b, 0xbc, 0x44, 0xe3, 0x82, 0x3e, 0x4d, 0x80, 0x7c, 0xbc, 0x92, 0xfa, 0x78, 0x6a, 0x89, 0xe6, 0x2a, 0x4b, 0x21, 0x7b, 0x5f, 0xb0, 0xc0, 0xf1, 0x86, 0x5d, 0x4a, 0x7e, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4932 = { .name = "ecdsa_secp224r1_sha512_4932", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4932_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4932_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4932_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 430 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4933 for ECDSA, tcId is 431 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4933_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4933_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4933_sig[] = { 0x22, 0x4a, 0x38, 0xe7, 0x33, 0xeb, 0xd3, 0xfa, 0xc2, 0x74, 0xec, 0xc5, 0x0e, 0xce, 0xf2, 0xe7, 0xc3, 0x18, 0x9b, 0xe2, 0xb9, 0xd0, 0x93, 0xa8, 0xdc, 0xc6, 0xfa, 0x3a, 0x13, 0x4f, 0xa5, 0xa4, 0xf9, 0x23, 0xd2, 0x96, 0xb3, 0xc6, 0xdd, 0x46, 0x83, 0xd2, 0x49, 0xcc, 0xf0, 0xad, 0x27, 0x28, 0x90, 0xe4, 0x14, 0x9c, 0x9a, 0x0d, 0x74, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4933 = { .name = "ecdsa_secp224r1_sha512_4933", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4933_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4933_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4933_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 431 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4934 for ECDSA, tcId is 432 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4934_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4934_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4934_sig[] = { 0x33, 0x8d, 0x07, 0xd9, 0x90, 0x87, 0x9a, 0xd8, 0x44, 0xe2, 0x4c, 0x17, 0x88, 0xe3, 0x62, 0x26, 0x9d, 0x8a, 0xca, 0x70, 0x50, 0x03, 0x57, 0xd3, 0x85, 0x76, 0x82, 0x27, 0xf7, 0x45, 0xcc, 0x4e, 0xba, 0xaf, 0x1c, 0xd4, 0x28, 0x30, 0x02, 0x6a, 0x66, 0xe5, 0xb9, 0x55, 0x64, 0xcd, 0xbe, 0xe5, 0xed, 0xf8, 0x53, 0xbb, 0x2c, 0xc9, 0x12, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4934 = { .name = "ecdsa_secp224r1_sha512_4934", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4934_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4934_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4934_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 432 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4935 for ECDSA, tcId is 433 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4935_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha512_4935_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4935_sig[] = { 0x68, 0x9f, 0xce, 0x4b, 0x33, 0xd8, 0x21, 0x2a, 0x66, 0x36, 0x40, 0xa1, 0xae, 0x0e, 0xfa, 0xa7, 0xa7, 0xd7, 0x71, 0x1b, 0xeb, 0xa7, 0x19, 0x37, 0x4f, 0xe6, 0x34, 0xee, 0x04, 0xbd, 0x99, 0x81, 0xfa, 0x52, 0x29, 0x30, 0x63, 0x07, 0x6f, 0x0f, 0xd7, 0x0f, 0xc3, 0x18, 0x75, 0xd5, 0x80, 0xef, 0x94, 0xf0, 0x20, 0xd2, 0xf9, 0x54, 0x40, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4935 = { .name = "ecdsa_secp224r1_sha512_4935", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4935_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4935_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4935_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 433 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4936 for ECDSA, tcId is 434 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4936_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4936_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4936_sig[] = { 0x2a, 0x42, 0x87, 0xe0, 0x15, 0x10, 0xe7, 0xfb, 0x5f, 0xed, 0x2e, 0x1c, 0xcc, 0x3f, 0x2a, 0x69, 0x29, 0xcf, 0x7d, 0x03, 0x85, 0x0e, 0x49, 0xd7, 0xae, 0x8a, 0x50, 0x4a, 0x35, 0x5c, 0x39, 0x15, 0xf3, 0xfa, 0x96, 0x37, 0xdc, 0x80, 0x01, 0x43, 0x8a, 0x8c, 0x04, 0xe1, 0x5d, 0x14, 0x93, 0x4c, 0xab, 0xd4, 0x30, 0xfe, 0xb0, 0xcb, 0x5b, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4936 = { .name = "ecdsa_secp224r1_sha512_4936", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4936_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4936_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4936_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 434 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4937 for ECDSA, tcId is 435 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4937_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4937_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4937_sig[] = { 0xb5, 0xbf, 0x79, 0x5a, 0x38, 0xad, 0xb0, 0x52, 0xb4, 0x01, 0x46, 0x8f, 0xfc, 0xab, 0x81, 0x10, 0x3d, 0x2d, 0x9f, 0xca, 0x2e, 0x15, 0xb8, 0xd0, 0x8a, 0xb9, 0x8c, 0xe8, 0x5e, 0xc0, 0xd2, 0xc6, 0xae, 0xc7, 0x18, 0x88, 0xc9, 0x41, 0xaf, 0x32, 0x4c, 0x72, 0x72, 0xbe, 0xc1, 0x92, 0xab, 0xb2, 0x92, 0xf9, 0xdf, 0x82, 0xa2, 0x4e, 0x8a, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4937 = { .name = "ecdsa_secp224r1_sha512_4937", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4937_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4937_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4937_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 435 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4938 for ECDSA, tcId is 436 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4938_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha512_4938_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4938_sig[] = { 0x10, 0x0e, 0xd0, 0x7f, 0x46, 0x71, 0x33, 0xbf, 0x10, 0x91, 0x7f, 0x7a, 0x15, 0xab, 0x2b, 0xfd, 0xa5, 0x19, 0xbd, 0xbc, 0x26, 0x53, 0xb9, 0x59, 0x55, 0xe2, 0x22, 0x11, 0xb3, 0x8a, 0x08, 0x1f, 0x7c, 0x2e, 0x2b, 0x77, 0x5d, 0x1d, 0xa8, 0x68, 0xd0, 0x38, 0x1c, 0x09, 0xba, 0x15, 0x59, 0xc9, 0x61, 0x3b, 0x5b, 0xe7, 0x15, 0x93, 0x63, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4938 = { .name = "ecdsa_secp224r1_sha512_4938", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4938_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4938_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4938_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 436 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4939 for ECDSA, tcId is 437 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4939_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4939_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4939_sig[] = { 0x54, 0xe6, 0xad, 0xd8, 0xac, 0x91, 0x0e, 0x52, 0xc6, 0x22, 0x8f, 0xe3, 0x98, 0x0d, 0x8f, 0x58, 0x62, 0x18, 0x33, 0x4d, 0x8d, 0x85, 0x9b, 0xa9, 0xa3, 0x32, 0x99, 0x17, 0x58, 0x36, 0xcc, 0x79, 0xec, 0x88, 0x51, 0x9e, 0xab, 0x4a, 0x6b, 0x26, 0x14, 0xc5, 0x01, 0x62, 0x8c, 0x9f, 0xee, 0x32, 0xfb, 0xaf, 0xd9, 0x3e, 0x32, 0x15, 0x84, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4939 = { .name = "ecdsa_secp224r1_sha512_4939", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4939_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4939_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4939_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 437 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4940 for ECDSA, tcId is 438 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4940_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4940_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4940_sig[] = { 0x12, 0x30, 0xd5, 0x40, 0x9f, 0x37, 0x95, 0x84, 0xb4, 0xd5, 0x48, 0xb7, 0xbc, 0xcb, 0xa6, 0x4b, 0xaf, 0x81, 0xd5, 0x12, 0xa9, 0xf2, 0xe6, 0x39, 0x8c, 0x4e, 0x3a, 0x66, 0x19, 0x37, 0xa2, 0x98, 0xf8, 0xcb, 0xdf, 0xa8, 0x5b, 0x8e, 0x6f, 0xcf, 0x0a, 0x12, 0xbe, 0x49, 0x66, 0xd8, 0x02, 0x70, 0xca, 0xde, 0x85, 0xa0, 0xc3, 0x7e, 0xe6, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4940 = { .name = "ecdsa_secp224r1_sha512_4940", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4940_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4940_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4940_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 438 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4941 for ECDSA, tcId is 439 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4941_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha512_4941_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4941_sig[] = { 0x86, 0x2f, 0x43, 0xb0, 0x44, 0xfb, 0x32, 0xad, 0xb4, 0x5e, 0x00, 0x37, 0x8b, 0xa0, 0x83, 0xae, 0x76, 0x1c, 0x84, 0x45, 0x20, 0x54, 0xf1, 0x7b, 0x13, 0x41, 0xbf, 0x5b, 0x95, 0xd8, 0xd8, 0xe5, 0xe3, 0xa6, 0xcc, 0x2b, 0x0a, 0x06, 0xc7, 0x92, 0x25, 0x2c, 0xa1, 0x1a, 0x64, 0x22, 0x57, 0x72, 0x18, 0x31, 0x57, 0x85, 0x20, 0xf9, 0x6b, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4941 = { .name = "ecdsa_secp224r1_sha512_4941", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4941_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4941_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4941_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 439 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4942 for ECDSA, tcId is 440 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4942_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4942_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4942_sig[] = { 0xcb, 0x5c, 0xab, 0xb1, 0xca, 0x01, 0xb8, 0x47, 0xa6, 0xbc, 0x70, 0x55, 0x8d, 0x1e, 0x5d, 0x3a, 0x20, 0x4d, 0x17, 0x41, 0xbb, 0xe8, 0x00, 0xf4, 0xb1, 0x59, 0xaf, 0x35, 0x35, 0x80, 0xcc, 0x85, 0xf2, 0x18, 0x39, 0x41, 0x30, 0xbd, 0xdf, 0x1c, 0x4e, 0xac, 0x04, 0xfe, 0x96, 0xf5, 0x9f, 0x14, 0xfb, 0x43, 0x66, 0x86, 0x95, 0x03, 0x98, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4942 = { .name = "ecdsa_secp224r1_sha512_4942", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4942_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4942_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4942_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 440 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4943 for ECDSA, tcId is 441 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4943_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4943_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4943_sig[] = { 0xc9, 0xd8, 0x3d, 0xc0, 0x4c, 0xf4, 0xee, 0x89, 0xc4, 0x05, 0x04, 0x5d, 0x0f, 0xd1, 0xd7, 0x04, 0xf6, 0x27, 0xca, 0x5b, 0xbe, 0x35, 0x0f, 0x40, 0xb8, 0x26, 0xbb, 0xc1, 0x74, 0xfe, 0xdc, 0x9e, 0x55, 0x04, 0x5e, 0x97, 0x59, 0xf2, 0x12, 0x44, 0x60, 0xfd, 0xfb, 0x99, 0x1d, 0xc6, 0x20, 0xcf, 0xee, 0x6e, 0xff, 0xc0, 0xb4, 0xad, 0xaa, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4943 = { .name = "ecdsa_secp224r1_sha512_4943", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4943_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4943_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4943_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 441 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4944 for ECDSA, tcId is 442 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4944_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha512_4944_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4944_sig[] = { 0x46, 0xdd, 0x65, 0xb6, 0xe7, 0xf1, 0x0c, 0x08, 0x41, 0x84, 0x1b, 0x01, 0x03, 0x3a, 0x5b, 0xef, 0xd3, 0xa0, 0xe7, 0x8c, 0x85, 0xf1, 0xf3, 0x90, 0xbb, 0x3c, 0xdf, 0x25, 0xf3, 0x3a, 0xce, 0xa3, 0xd4, 0x7c, 0xf0, 0xdd, 0x52, 0x73, 0x73, 0x5b, 0x00, 0x41, 0x04, 0xf6, 0x51, 0x2e, 0xd6, 0x41, 0x05, 0x25, 0x09, 0x42, 0x2c, 0x03, 0x25, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4944 = { .name = "ecdsa_secp224r1_sha512_4944", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4944_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4944_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4944_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 442 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4945 for ECDSA, tcId is 443 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4945_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4945_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4945_sig[] = { 0xdd, 0xb4, 0xa7, 0xe4, 0x00, 0xa1, 0xe9, 0x81, 0x18, 0xf4, 0x74, 0x72, 0x2d, 0xa3, 0xf4, 0x21, 0xf6, 0x5a, 0x76, 0xee, 0xc6, 0x1f, 0x4f, 0x7b, 0x69, 0x9f, 0xaf, 0x07, 0xdb, 0x80, 0xcb, 0xa1, 0x99, 0x85, 0x9c, 0xdf, 0xe9, 0x16, 0xd6, 0xab, 0x3d, 0xeb, 0x91, 0xd7, 0x6a, 0xaf, 0x0e, 0xd5, 0x54, 0xc8, 0xf9, 0xed, 0x7e, 0x5a, 0xa5, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4945 = { .name = "ecdsa_secp224r1_sha512_4945", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4945_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4945_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4945_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 443 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4946 for ECDSA, tcId is 444 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4946_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4946_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4946_sig[] = { 0x4c, 0x26, 0x0b, 0x54, 0x62, 0x80, 0x60, 0x4e, 0x4c, 0x80, 0x38, 0x47, 0x21, 0xc9, 0xe8, 0x03, 0xef, 0x70, 0x4e, 0x7f, 0xb7, 0x01, 0x68, 0xe6, 0x73, 0x0f, 0xc1, 0xf3, 0xa8, 0xac, 0xea, 0xe2, 0x19, 0xac, 0x25, 0xc9, 0xf0, 0x42, 0x31, 0xb4, 0xe0, 0xc1, 0x71, 0x41, 0x3d, 0xb1, 0xd2, 0x6d, 0xf1, 0xc1, 0xe8, 0x43, 0x00, 0x62, 0xeb, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4946 = { .name = "ecdsa_secp224r1_sha512_4946", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4946_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4946_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4946_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 444 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4947 for ECDSA, tcId is 445 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4947_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha512_4947_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4947_sig[] = { 0xf4, 0x09, 0x8d, 0x2c, 0x02, 0x40, 0xe7, 0x8f, 0xce, 0xab, 0xb0, 0x18, 0x3d, 0xf0, 0xb3, 0x9e, 0x7a, 0xd3, 0xe7, 0xf5, 0xd6, 0xda, 0x15, 0x87, 0xfa, 0x09, 0x85, 0x3c, 0xd4, 0x24, 0x12, 0xb2, 0xab, 0xaa, 0x61, 0x4c, 0x95, 0xeb, 0x11, 0xf9, 0xb9, 0x34, 0x62, 0x82, 0xce, 0x3a, 0x1c, 0x93, 0xaa, 0xc3, 0x5c, 0xe7, 0xaa, 0x37, 0x2f, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4947 = { .name = "ecdsa_secp224r1_sha512_4947", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4947_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4947_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4947_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 445 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4948 for ECDSA, tcId is 446 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4948_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4948_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4948_sig[] = { 0x48, 0xdd, 0xc4, 0x97, 0xf9, 0xa4, 0x73, 0x2c, 0x67, 0x7e, 0x46, 0xc0, 0xe2, 0xbd, 0xab, 0xec, 0x54, 0xfc, 0x9d, 0x27, 0xe4, 0x6a, 0xb5, 0x95, 0x05, 0x6d, 0xb4, 0xd9, 0xb8, 0x21, 0x9e, 0xbb, 0xfa, 0xeb, 0xc2, 0xfe, 0x43, 0x11, 0xef, 0xab, 0x0c, 0x35, 0xd4, 0x39, 0x27, 0x51, 0x35, 0x1b, 0xcc, 0x19, 0x71, 0xe8, 0xd0, 0x19, 0x41, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4948 = { .name = "ecdsa_secp224r1_sha512_4948", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4948_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4948_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4948_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 446 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4949 for ECDSA, tcId is 447 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4949_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4949_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4949_sig[] = { 0xe1, 0xab, 0xaf, 0x51, 0xd2, 0x7a, 0x6d, 0x7d, 0x4c, 0x9b, 0x28, 0x07, 0x83, 0x25, 0xca, 0xc2, 0xd7, 0xce, 0x3d, 0x54, 0x03, 0x91, 0x6c, 0x68, 0x90, 0x37, 0x60, 0xb7, 0x2c, 0x45, 0xa9, 0x9e, 0x27, 0x70, 0xf7, 0x82, 0xfe, 0xe5, 0xca, 0x1d, 0x71, 0x3e, 0xae, 0xcf, 0x07, 0xe6, 0x2d, 0x53, 0xc6, 0x4b, 0x7c, 0xf9, 0x3d, 0xe9, 0x90, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4949 = { .name = "ecdsa_secp224r1_sha512_4949", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4949_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4949_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4949_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 447 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4950 for ECDSA, tcId is 448 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4950_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha512_4950_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4950_sig[] = { 0x86, 0x8c, 0xd1, 0x27, 0xc9, 0x9e, 0x11, 0x49, 0xf7, 0xfc, 0x8d, 0x87, 0x8c, 0xdf, 0xa9, 0x86, 0xb6, 0x2e, 0x99, 0xad, 0xde, 0xa2, 0x81, 0x14, 0x96, 0x11, 0xff, 0x15, 0x16, 0xe5, 0x95, 0x38, 0x20, 0x13, 0x5b, 0x7d, 0x46, 0x2c, 0xe5, 0x43, 0x4e, 0xf8, 0x59, 0x20, 0xe9, 0x73, 0xee, 0xc9, 0xe4, 0xd1, 0x4d, 0x7c, 0xb3, 0xcc, 0x2a, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4950 = { .name = "ecdsa_secp224r1_sha512_4950", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4950_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4950_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4950_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 448 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4951 for ECDSA, tcId is 449 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4951_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4951_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4951_sig[] = { 0xa3, 0x75, 0x92, 0x97, 0x18, 0xec, 0x4e, 0x6a, 0xda, 0x9c, 0x93, 0x70, 0xc5, 0x1d, 0xf6, 0xbd, 0xae, 0xe7, 0xeb, 0xab, 0x2a, 0x70, 0x67, 0x5d, 0x42, 0xa0, 0xb6, 0xb3, 0x9e, 0xaf, 0x48, 0x02, 0xef, 0xaf, 0x7c, 0xa0, 0x82, 0xff, 0xbf, 0x5e, 0xd7, 0x74, 0xaf, 0x43, 0x79, 0x2d, 0x9b, 0x3f, 0xd7, 0x11, 0xc6, 0xb1, 0xc3, 0x61, 0x12, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4951 = { .name = "ecdsa_secp224r1_sha512_4951", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4951_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4951_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4951_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 449 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4952 for ECDSA, tcId is 450 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4952_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4952_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4952_sig[] = { 0xd9, 0x7b, 0x32, 0xf3, 0xbf, 0x8b, 0xc1, 0x1e, 0xc2, 0x67, 0x2d, 0xd6, 0x32, 0x04, 0x18, 0xbe, 0xee, 0xd9, 0x95, 0x27, 0xa6, 0x3f, 0xe4, 0xc5, 0x21, 0x99, 0xec, 0x61, 0x68, 0xdd, 0x90, 0x06, 0xb0, 0x33, 0x19, 0xcc, 0xbe, 0x65, 0x1d, 0x0b, 0xda, 0xf8, 0x4c, 0x63, 0x35, 0x6f, 0x03, 0xcb, 0x00, 0x7a, 0x68, 0x65, 0xee, 0x3e, 0x02, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4952 = { .name = "ecdsa_secp224r1_sha512_4952", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4952_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4952_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4952_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 450 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4953 for ECDSA, tcId is 451 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4953_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha512_4953_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4953_sig[] = { 0x8e, 0xe5, 0x79, 0x4d, 0xc2, 0xe6, 0x6f, 0x25, 0x84, 0x91, 0x0e, 0xa1, 0xd8, 0x36, 0x1e, 0x5b, 0x53, 0xdb, 0x53, 0x5a, 0xdc, 0xf5, 0xc1, 0xc3, 0x5e, 0x12, 0x83, 0x09, 0x5d, 0x1d, 0x8b, 0x9b, 0x99, 0x6c, 0x0a, 0x48, 0x8e, 0x05, 0xaf, 0x14, 0x42, 0x1b, 0x86, 0xe9, 0x84, 0x1f, 0x0c, 0xba, 0x70, 0x60, 0x27, 0xfc, 0x82, 0x7d, 0x4d, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4953 = { .name = "ecdsa_secp224r1_sha512_4953", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4953_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4953_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4953_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 451 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4954 for ECDSA, tcId is 452 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4954_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4954_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4954_sig[] = { 0x79, 0x99, 0x72, 0x7c, 0x0c, 0xc0, 0x2d, 0x88, 0xef, 0x27, 0x40, 0x12, 0xa7, 0x62, 0xaf, 0xcb, 0xb1, 0x9e, 0x7f, 0xce, 0x19, 0x09, 0x1a, 0x02, 0xac, 0xd0, 0x05, 0x64, 0xdb, 0xfa, 0xcf, 0x67, 0x99, 0x9f, 0x22, 0xc4, 0x99, 0xd4, 0x8a, 0x60, 0xa6, 0xfe, 0x4b, 0xbb, 0x74, 0x61, 0x99, 0xc2, 0x99, 0x57, 0xa1, 0xec, 0x7a, 0x09, 0x00, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4954 = { .name = "ecdsa_secp224r1_sha512_4954", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4954_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4954_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4954_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 452 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4955 for ECDSA, tcId is 453 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4955_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4955_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4955_sig[] = { 0x57, 0x97, 0xc2, 0x1c, 0x01, 0x62, 0xe4, 0x2f, 0x69, 0x69, 0x3c, 0x6c, 0x02, 0x44, 0xdf, 0xdf, 0x92, 0x18, 0xc0, 0x1e, 0x92, 0x35, 0x76, 0x01, 0x77, 0xb6, 0x1a, 0x54, 0x54, 0x52, 0xc8, 0x87, 0xb2, 0x7f, 0xb3, 0x42, 0xa8, 0xa0, 0x0d, 0x27, 0x57, 0x9c, 0x71, 0x95, 0xdd, 0xdb, 0x73, 0xdf, 0x39, 0x92, 0x33, 0xed, 0x0d, 0xea, 0x56, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4955 = { .name = "ecdsa_secp224r1_sha512_4955", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4955_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4955_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4955_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 453 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4956 for ECDSA, tcId is 454 in file ecdsa_secp224r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp224r1_sha512_4956_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha512_4956_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha512_4956_sig[] = { 0x0e, 0xb9, 0xdc, 0x5d, 0x67, 0xbb, 0x0d, 0x40, 0x09, 0x54, 0x4f, 0x86, 0x54, 0x97, 0x79, 0x07, 0xdf, 0xe7, 0x70, 0xe7, 0xfa, 0xe4, 0x57, 0x1d, 0x31, 0xd7, 0xb4, 0xfa, 0xab, 0x5c, 0xda, 0x53, 0xe8, 0x68, 0xbf, 0xf5, 0x19, 0x8b, 0xe4, 0xbe, 0x36, 0x81, 0xb1, 0x86, 0xcb, 0x0c, 0x13, 0x96, 0xd2, 0x72, 0xc7, 0x1f, 0x09, 0x3f, 0x8b, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha512_4956 = { .name = "ecdsa_secp224r1_sha512_4956", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha512_4956_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha512_4956_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha512_4956_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 454 in file ecdsa_secp224r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) */ /* Test 4957 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4957_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4957_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7d, 0xb3, 0x7c, 0x21, 0xf4, 0xaf, 0xd3, 0x20, 0x3a, 0xe8, 0xdc, 0x4a, 0xe7, 0x79, 0x4b, 0x0f, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4957 = { .name = "ecdsa_secp256k1_sha256_4957", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4957_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4957_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4957_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4958 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4958_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4958_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x83, 0xb9, 0x0d, 0xea, 0xbc, 0xa4, 0xb0, 0x5c, 0x45, 0x74, 0xe4, 0x9b, 0x58, 0x99, 0xb9, 0x64, 0xa6, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4958 = { .name = "ecdsa_secp256k1_sha256_4958", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4958_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4958_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4958_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4959 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4959_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4959_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x79, 0xbc, 0x4f, 0xcf, 0x10, 0xb9, 0xe0, 0xe4, 0x32, 0x0a, 0xc0, 0x21, 0xc1, 0x06, 0xb3, 0x1d, 0xdc, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4959 = { .name = "ecdsa_secp256k1_sha256_4959", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4959_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4959_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4959_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4960 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4960_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4960_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4960 = { .name = "ecdsa_secp256k1_sha256_4960", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4960_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4960_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4960_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4961 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4961_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4961_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7b, 0x01, 0xa0, 0xf2, 0x2a, 0x0a, 0x98, 0x43, 0xf6, 0x4a, 0xed, 0xc3, 0x34, 0x36, 0x7c, 0xdc, 0x9b, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4961 = { .name = "ecdsa_secp256k1_sha256_4961", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4961_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4961_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4961_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4962 for ECDSA, tcId is 6 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4962_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4962_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x7f, 0xc1, 0xe1, 0x97, 0xd8, 0xae, 0xbe, 0x20, 0x3c, 0x96, 0xc8, 0x72, 0x32, 0x27, 0x21, 0x72, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4962 = { .name = "ecdsa_secp256k1_sha256_4962", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4962_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4962_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4962_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4963 for ECDSA, tcId is 7 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4963_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4963_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4963 = { .name = "ecdsa_secp256k1_sha256_4963", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4963_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4963_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4963_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4964 for ECDSA, tcId is 8 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4964_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4964_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7e, 0xf8, 0xcd, 0x45, 0x0e, 0x00, 0x8a, 0x7f, 0xff, 0x29, 0x09, 0xec, 0x5a, 0xa9, 0x14, 0xce, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4964 = { .name = "ecdsa_secp256k1_sha256_4964", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4964_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4964_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4964_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4965 for ECDSA, tcId is 9 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4965_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4965_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4965 = { .name = "ecdsa_secp256k1_sha256_4965", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4965_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4965_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4965_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4966 for ECDSA, tcId is 10 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4966_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4966_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4966 = { .name = "ecdsa_secp256k1_sha256_4966", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4966_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4966_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4966_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4967 for ECDSA, tcId is 11 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4967_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4967_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4967 = { .name = "ecdsa_secp256k1_sha256_4967", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4967_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4967_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4967_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4968 for ECDSA, tcId is 12 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4968_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4968_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4968 = { .name = "ecdsa_secp256k1_sha256_4968", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4968_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4968_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4968_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4969 for ECDSA, tcId is 13 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4969_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4969_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4969 = { .name = "ecdsa_secp256k1_sha256_4969", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4969_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4969_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4969_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4970 for ECDSA, tcId is 14 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4970_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4970_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4970 = { .name = "ecdsa_secp256k1_sha256_4970", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4970_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4970_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4970_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4971 for ECDSA, tcId is 15 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4971_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4971_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4971 = { .name = "ecdsa_secp256k1_sha256_4971", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4971_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4971_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4971_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4972 for ECDSA, tcId is 16 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4972_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4972_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4972 = { .name = "ecdsa_secp256k1_sha256_4972", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4972_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4972_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4972_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4973 for ECDSA, tcId is 17 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4973_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4973_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4973 = { .name = "ecdsa_secp256k1_sha256_4973", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4973_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4973_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4973_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4974 for ECDSA, tcId is 18 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4974_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4974_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4974 = { .name = "ecdsa_secp256k1_sha256_4974", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4974_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4974_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4974_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4975 for ECDSA, tcId is 19 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4975_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4975_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4975 = { .name = "ecdsa_secp256k1_sha256_4975", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4975_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4975_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4975_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4976 for ECDSA, tcId is 20 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4976_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4976_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4976 = { .name = "ecdsa_secp256k1_sha256_4976", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4976_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4976_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4976_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4977 for ECDSA, tcId is 21 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4977_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4977_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4977 = { .name = "ecdsa_secp256k1_sha256_4977", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4977_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4977_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4977_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4978 for ECDSA, tcId is 22 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4978_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4978_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4978 = { .name = "ecdsa_secp256k1_sha256_4978", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4978_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4978_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4978_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4979 for ECDSA, tcId is 23 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4979_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4979_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4979_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4979 = { .name = "ecdsa_secp256k1_sha256_4979", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4979_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4979_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4979_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4980 for ECDSA, tcId is 24 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4980_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4980_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4980_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4980 = { .name = "ecdsa_secp256k1_sha256_4980", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4980_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4980_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4980_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4981 for ECDSA, tcId is 25 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4981_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4981_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4981 = { .name = "ecdsa_secp256k1_sha256_4981", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4981_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4981_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4981_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4982 for ECDSA, tcId is 26 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4982_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4982_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4982_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4982 = { .name = "ecdsa_secp256k1_sha256_4982", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4982_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4982_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4982_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4983 for ECDSA, tcId is 27 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4983_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4983_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4983_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4983 = { .name = "ecdsa_secp256k1_sha256_4983", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4983_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4983_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4983_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4984 for ECDSA, tcId is 28 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4984_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4984_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4984_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4984 = { .name = "ecdsa_secp256k1_sha256_4984", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4984_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4984_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4984_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4985 for ECDSA, tcId is 29 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4985_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4985_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4985_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4985 = { .name = "ecdsa_secp256k1_sha256_4985", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4985_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4985_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4985_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4986 for ECDSA, tcId is 30 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4986_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4986_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4986_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4986 = { .name = "ecdsa_secp256k1_sha256_4986", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4986_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4986_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4986_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4987 for ECDSA, tcId is 31 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4987_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4987_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4987 = { .name = "ecdsa_secp256k1_sha256_4987", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4987_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4987_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4987_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4988 for ECDSA, tcId is 32 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4988_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4988_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4988_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4988 = { .name = "ecdsa_secp256k1_sha256_4988", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4988_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4988_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4988_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4989 for ECDSA, tcId is 33 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4989_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4989_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4989 = { .name = "ecdsa_secp256k1_sha256_4989", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4989_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4989_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4989_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4990 for ECDSA, tcId is 34 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4990_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4990_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4990_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4990 = { .name = "ecdsa_secp256k1_sha256_4990", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4990_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4990_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4990_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4991 for ECDSA, tcId is 35 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4991_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4991_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4991_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4991 = { .name = "ecdsa_secp256k1_sha256_4991", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4991_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4991_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4991_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4992 for ECDSA, tcId is 36 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4992_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4992_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4992_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4992 = { .name = "ecdsa_secp256k1_sha256_4992", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4992_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4992_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4992_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4993 for ECDSA, tcId is 37 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4993_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4993_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4993 = { .name = "ecdsa_secp256k1_sha256_4993", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4993_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4993_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4993_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4994 for ECDSA, tcId is 38 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4994_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4994_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4994_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4994 = { .name = "ecdsa_secp256k1_sha256_4994", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4994_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4994_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4994_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4995 for ECDSA, tcId is 39 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4995_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4995_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4995_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4995 = { .name = "ecdsa_secp256k1_sha256_4995", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4995_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4995_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4995_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4996 for ECDSA, tcId is 40 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4996_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4996_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4996_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4996 = { .name = "ecdsa_secp256k1_sha256_4996", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4996_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4996_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4996_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4997 for ECDSA, tcId is 41 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4997_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4997_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4997_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4997 = { .name = "ecdsa_secp256k1_sha256_4997", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4997_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4997_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4997_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4998 for ECDSA, tcId is 42 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4998_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4998_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4998_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4998 = { .name = "ecdsa_secp256k1_sha256_4998", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4998_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4998_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4998_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 4999 for ECDSA, tcId is 43 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_4999_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_4999_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_4999_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_4999 = { .name = "ecdsa_secp256k1_sha256_4999", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_4999_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_4999_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_4999_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5000 for ECDSA, tcId is 44 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5000_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5000_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5000_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5000 = { .name = "ecdsa_secp256k1_sha256_5000", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5000_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5000_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5000_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5001 for ECDSA, tcId is 45 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5001_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5001_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5001_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5001 = { .name = "ecdsa_secp256k1_sha256_5001", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5001_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5001_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5001_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5002 for ECDSA, tcId is 46 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5002_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5002_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5002_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5002 = { .name = "ecdsa_secp256k1_sha256_5002", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5002_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5002_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5002_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5003 for ECDSA, tcId is 47 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5003_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5003_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5003_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5003 = { .name = "ecdsa_secp256k1_sha256_5003", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5003_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5003_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5003_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5004 for ECDSA, tcId is 48 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5004_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5004_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5004 = { .name = "ecdsa_secp256k1_sha256_5004", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5004_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5004_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5004_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5005 for ECDSA, tcId is 49 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5005_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5005_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5005 = { .name = "ecdsa_secp256k1_sha256_5005", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5005_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5005_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5005_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5006 for ECDSA, tcId is 50 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5006_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5006_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5006 = { .name = "ecdsa_secp256k1_sha256_5006", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5006_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5006_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5006_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5007 for ECDSA, tcId is 51 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5007_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5007_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5007 = { .name = "ecdsa_secp256k1_sha256_5007", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5007_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5007_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5007_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5008 for ECDSA, tcId is 52 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5008_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5008_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5008 = { .name = "ecdsa_secp256k1_sha256_5008", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5008_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5008_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5008_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5009 for ECDSA, tcId is 53 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5009_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5009_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5009 = { .name = "ecdsa_secp256k1_sha256_5009", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5009_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5009_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5009_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5010 for ECDSA, tcId is 54 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5010_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5010_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5010 = { .name = "ecdsa_secp256k1_sha256_5010", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5010_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5010_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5010_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5011 for ECDSA, tcId is 55 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5011_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5011_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5011 = { .name = "ecdsa_secp256k1_sha256_5011", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5011_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5011_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5011_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5012 for ECDSA, tcId is 56 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5012_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5012_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5012 = { .name = "ecdsa_secp256k1_sha256_5012", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5012_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5012_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5012_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5013 for ECDSA, tcId is 57 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5013_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5013_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5013 = { .name = "ecdsa_secp256k1_sha256_5013", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5013_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5013_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5013_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5014 for ECDSA, tcId is 58 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5014_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5014_msg[] = { 0x32, 0x35, 0x35, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5014_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0x35, 0x13, 0x8c, 0x40, 0x1e, 0xf8, 0xd3, 0x49, 0x3d, 0x65, 0xc9, 0x00, 0x2f, 0xe6, 0x2b, 0x43, 0xae, 0xe5, 0x68, 0x73, 0x1b, 0x74, 0x45, 0x48, 0x35, 0x89, 0x96, 0xd9, 0xcc, 0x42, 0x7e, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5014 = { .name = "ecdsa_secp256k1_sha256_5014", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5014_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5014_msg, .msglen = 5, .sig = ecdsa_secp256k1_sha256_5014_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5015 for ECDSA, tcId is 59 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5015_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5015_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5015_sig[] = { 0x95, 0xc2, 0x92, 0x67, 0xd9, 0x72, 0xa0, 0x43, 0xd9, 0x55, 0x22, 0x45, 0x46, 0x22, 0x2b, 0xba, 0x34, 0x3f, 0xc1, 0xd4, 0xdb, 0x0f, 0xec, 0x26, 0x2a, 0x33, 0xac, 0x61, 0x30, 0x56, 0x96, 0xae, 0x6e, 0xdf, 0xe9, 0x67, 0x13, 0xae, 0xd5, 0x6f, 0x8a, 0x28, 0xa6, 0x65, 0x3f, 0x57, 0xe0, 0xb8, 0x29, 0x71, 0x2e, 0x5e, 0xdd, 0xc6, 0x7f, 0x34, 0x68, 0x2b, 0x24, 0xf0, 0x67, 0x6b, 0x26, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5015 = { .name = "ecdsa_secp256k1_sha256_5015", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5015_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5015_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5015_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5016 for ECDSA, tcId is 60 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5016_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5016_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5016_sig[] = { 0x28, 0xf9, 0x4a, 0x89, 0x4e, 0x92, 0x02, 0x46, 0x99, 0xe3, 0x45, 0xfe, 0x66, 0x97, 0x1e, 0x3e, 0xdc, 0xd0, 0x50, 0x02, 0x33, 0x86, 0x13, 0x5a, 0xb3, 0x93, 0x9d, 0x55, 0x08, 0x98, 0xfb, 0x25, 0xcd, 0x69, 0xc1, 0xa4, 0x2b, 0xe0, 0x5a, 0x6e, 0xe1, 0x27, 0x0c, 0x82, 0x14, 0x79, 0x25, 0x1e, 0x13, 0x4c, 0x21, 0x85, 0x8d, 0x80, 0x0b, 0xda, 0x6f, 0x4e, 0x98, 0xb3, 0x71, 0x96, 0x23, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5016 = { .name = "ecdsa_secp256k1_sha256_5016", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5016_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5016_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5016_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5017 for ECDSA, tcId is 61 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5017_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5017_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5017_sig[] = { 0xbe, 0x26, 0xb1, 0x8f, 0x95, 0x49, 0xf8, 0x9f, 0x41, 0x1a, 0x9b, 0x52, 0x53, 0x6b, 0x15, 0xaa, 0x27, 0x0b, 0x84, 0x54, 0x8d, 0x0e, 0x85, 0x9a, 0x19, 0x52, 0xa2, 0x7a, 0xf1, 0xa7, 0x7a, 0xc6, 0x8f, 0x3e, 0x2b, 0x05, 0x63, 0x2f, 0xc3, 0x37, 0x15, 0x57, 0x2a, 0xf9, 0x12, 0x46, 0x81, 0x11, 0x3f, 0x2b, 0x84, 0x32, 0x5b, 0x80, 0x15, 0x4c, 0x04, 0x4a, 0x54, 0x4d, 0xc1, 0xa8, 0xfa, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5017 = { .name = "ecdsa_secp256k1_sha256_5017", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5017_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5017_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5017_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5018 for ECDSA, tcId is 62 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5018_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5018_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5018_sig[] = { 0xb1, 0xa4, 0xb1, 0x47, 0x8e, 0x65, 0xcc, 0x3e, 0xaf, 0xdf, 0x22, 0x5d, 0x12, 0x98, 0xb4, 0x3f, 0x2d, 0xa1, 0x9e, 0x4b, 0xcf, 0xf7, 0xea, 0xcc, 0x0a, 0x2e, 0x98, 0xcd, 0x4b, 0x74, 0xb1, 0x14, 0xe8, 0x65, 0x5c, 0xe1, 0xcf, 0xb3, 0x3e, 0xbd, 0x30, 0xaf, 0x8c, 0xe8, 0xe8, 0xae, 0x4d, 0x6f, 0x7b, 0x50, 0xcd, 0x3e, 0x22, 0xaf, 0x51, 0xbf, 0x69, 0xe0, 0xa2, 0x85, 0x17, 0x60, 0xd5, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5018 = { .name = "ecdsa_secp256k1_sha256_5018", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5018_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5018_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5018_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5019 for ECDSA, tcId is 63 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5019_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5019_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5019_sig[] = { 0x32, 0x53, 0x32, 0x02, 0x12, 0x61, 0xf1, 0xbd, 0x18, 0xf2, 0x71, 0x2a, 0xa1, 0xe2, 0x25, 0x2d, 0xa2, 0x37, 0x96, 0xda, 0x8a, 0x4b, 0x1f, 0xf6, 0xea, 0x18, 0xca, 0xfe, 0xc7, 0xe1, 0x71, 0xf2, 0x40, 0xb4, 0xf5, 0xe2, 0x87, 0xee, 0x61, 0xfc, 0x3c, 0x80, 0x41, 0x86, 0x98, 0x23, 0x60, 0x89, 0x1e, 0xaa, 0x35, 0xc7, 0x5f, 0x05, 0xa4, 0x3e, 0xcd, 0x48, 0xb3, 0x5d, 0x98, 0x4a, 0x66, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5019 = { .name = "ecdsa_secp256k1_sha256_5019", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5019_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5019_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5019_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5020 for ECDSA, tcId is 64 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5020_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5020_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5020_sig[] = { 0xa2, 0x3a, 0xd1, 0x8d, 0x8f, 0xc6, 0x6d, 0x81, 0xaf, 0x09, 0x03, 0x89, 0x0c, 0xbd, 0x45, 0x3a, 0x55, 0x4c, 0xb0, 0x4c, 0xdc, 0x1a, 0x8c, 0xa7, 0xf7, 0xf7, 0x8e, 0x53, 0x67, 0xed, 0x88, 0xa0, 0xdc, 0x1c, 0x14, 0xd3, 0x1e, 0x3f, 0xb1, 0x58, 0xb7, 0x3c, 0x76, 0x42, 0x68, 0xc8, 0xb5, 0x55, 0x79, 0x73, 0x4a, 0x7e, 0x2a, 0x2c, 0x9b, 0x5e, 0xe5, 0xd9, 0xd0, 0x14, 0x4e, 0xf6, 0x52, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5020 = { .name = "ecdsa_secp256k1_sha256_5020", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5020_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5020_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5020_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5021 for ECDSA, tcId is 65 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5021_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5021_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5021_sig[] = { 0x2b, 0xde, 0xa4, 0x1c, 0xda, 0x63, 0xa2, 0xd1, 0x4b, 0xf4, 0x73, 0x53, 0xbd, 0x20, 0x88, 0x0a, 0x69, 0x09, 0x01, 0xde, 0x7c, 0xd6, 0xe3, 0xcc, 0x6d, 0x8e, 0xd5, 0xba, 0x0c, 0xdb, 0x10, 0x91, 0xc3, 0x15, 0x99, 0x43, 0x30, 0x36, 0x06, 0x40, 0x73, 0x83, 0x5b, 0x1e, 0x3e, 0xba, 0x83, 0x35, 0xa6, 0x50, 0xc8, 0xfd, 0x78, 0x6f, 0x94, 0xfe, 0x23, 0x5a, 0xd7, 0xd4, 0x1d, 0xc9, 0x4c, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5021 = { .name = "ecdsa_secp256k1_sha256_5021", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5021_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5021_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5021_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5022 for ECDSA, tcId is 66 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5022_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5022_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5022_sig[] = { 0xd7, 0xcd, 0x76, 0xec, 0x01, 0xc1, 0xb1, 0x07, 0x9e, 0xba, 0x9e, 0x2a, 0xa2, 0xa3, 0x97, 0x24, 0x3c, 0x47, 0x58, 0xc9, 0x8a, 0x1b, 0xa0, 0xb7, 0x40, 0x4a, 0x34, 0x0b, 0x9b, 0x00, 0xce, 0xd6, 0xca, 0x8a, 0xff, 0xe1, 0xe6, 0x26, 0xdd, 0x19, 0x21, 0x74, 0xc2, 0x93, 0x7b, 0x15, 0xbc, 0x48, 0xf7, 0x7b, 0x5b, 0xdf, 0xe0, 0x1f, 0x07, 0x3a, 0x8a, 0xea, 0xf7, 0xf2, 0x4d, 0xc6, 0xc8, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5022 = { .name = "ecdsa_secp256k1_sha256_5022", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5022_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5022_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5022_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5023 for ECDSA, tcId is 67 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5023_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5023_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5023_sig[] = { 0xa8, 0x72, 0xc7, 0x44, 0xd9, 0x36, 0xdb, 0x21, 0xa1, 0x0c, 0x36, 0x1d, 0xd5, 0xc9, 0x06, 0x33, 0x55, 0xf8, 0x49, 0x02, 0x21, 0x96, 0x52, 0xf6, 0xfc, 0x56, 0xdc, 0x95, 0xa7, 0x13, 0x9d, 0x96, 0x40, 0x0d, 0xf7, 0x57, 0x5d, 0x97, 0x56, 0x21, 0x0e, 0x9c, 0xcc, 0x77, 0x16, 0x2c, 0x6b, 0x59, 0x3c, 0x77, 0x46, 0xcf, 0xb4, 0x8a, 0xc2, 0x63, 0xc4, 0x27, 0x50, 0xb4, 0x21, 0xef, 0x4b, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5023 = { .name = "ecdsa_secp256k1_sha256_5023", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5023_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5023_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5023_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5024 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5024_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5024_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5024_sig[] = { 0x9f, 0xa9, 0xaf, 0xe0, 0x77, 0x52, 0xda, 0x10, 0xb3, 0x6d, 0x3a, 0xfc, 0xd0, 0xfe, 0x44, 0xbf, 0xc4, 0x02, 0x44, 0xd7, 0x52, 0x03, 0x59, 0x9c, 0xf8, 0xf5, 0x04, 0x7f, 0xa3, 0x45, 0x38, 0x54, 0xaf, 0x1f, 0x58, 0x3f, 0xec, 0x40, 0x40, 0xae, 0x7e, 0x68, 0xc9, 0x68, 0xd2, 0xbb, 0x4b, 0x49, 0x4e, 0xec, 0x3a, 0x33, 0xed, 0xc7, 0xc0, 0xcc, 0xf9, 0x5f, 0x7f, 0x75, 0xbc, 0x25, 0x69, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5024 = { .name = "ecdsa_secp256k1_sha256_5024", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5024_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5024_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5024_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5025 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5025_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5025_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5025_sig[] = { 0x88, 0x56, 0x40, 0x38, 0x4d, 0x0d, 0x91, 0x0e, 0xfb, 0x17, 0x7b, 0x46, 0xbe, 0x6c, 0x3d, 0xc5, 0xca, 0xc8, 0x1f, 0x0b, 0x88, 0xc3, 0x19, 0x0b, 0xb6, 0xb5, 0xf9, 0x9c, 0x26, 0x41, 0xf2, 0x05, 0x73, 0x8e, 0xd9, 0xbf, 0xf1, 0x16, 0x30, 0x6d, 0x9c, 0xaa, 0x0f, 0x8f, 0xc6, 0x08, 0xbe, 0x24, 0x3e, 0x0b, 0x56, 0x77, 0x79, 0xd8, 0xda, 0xb0, 0x3e, 0x8e, 0x19, 0xd5, 0x53, 0xf1, 0xdc, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5025 = { .name = "ecdsa_secp256k1_sha256_5025", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5025_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5025_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5026 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5026_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5026_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5026_sig[] = { 0x2d, 0x05, 0x1f, 0x91, 0xc5, 0xa9, 0xd4, 0x40, 0xc5, 0x67, 0x69, 0x85, 0x71, 0x04, 0x83, 0xbc, 0x4f, 0x1a, 0x6c, 0x61, 0x1b, 0x10, 0xc9, 0x5a, 0x2f, 0xf0, 0x36, 0x3d, 0x90, 0xc2, 0xa4, 0x58, 0x92, 0x20, 0x6b, 0x19, 0x04, 0x5a, 0x41, 0xa7, 0x97, 0xcc, 0x2f, 0x3a, 0xc3, 0x0d, 0xe9, 0x51, 0x81, 0x65, 0xe9, 0x6d, 0x5b, 0x86, 0x34, 0x1e, 0xcb, 0x3b, 0xcf, 0xf2, 0x31, 0xb3, 0xfd, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5026 = { .name = "ecdsa_secp256k1_sha256_5026", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5026_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5026_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5026_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5027 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5027_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5027_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5027_sig[] = { 0xf3, 0xac, 0x25, 0x23, 0x96, 0x74, 0x82, 0xf5, 0x3d, 0x50, 0x85, 0x22, 0x71, 0x2d, 0x58, 0x3f, 0x43, 0x79, 0xcd, 0x82, 0x41, 0x01, 0xff, 0x63, 0x5e, 0xa0, 0x93, 0x51, 0x17, 0xba, 0xa5, 0x4f, 0x27, 0xf1, 0x08, 0x12, 0x22, 0x73, 0x97, 0xe0, 0x2c, 0xea, 0x96, 0xfb, 0x0e, 0x68, 0x07, 0x61, 0x63, 0x6d, 0xab, 0x2b, 0x08, 0x0d, 0x1f, 0xc5, 0xd1, 0x16, 0x85, 0xcb, 0xe8, 0x50, 0x0c, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5027 = { .name = "ecdsa_secp256k1_sha256_5027", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5027_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5027_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5027_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5028 for ECDSA, tcId is 72 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5028_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5028_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5028_sig[] = { 0x96, 0x44, 0x7c, 0xf6, 0x8c, 0x3a, 0xb7, 0x26, 0x6e, 0xd7, 0x44, 0x7d, 0xe3, 0xac, 0x52, 0xfe, 0xd7, 0xcc, 0x08, 0xcb, 0xdf, 0xea, 0x39, 0x1c, 0x18, 0xa9, 0xb8, 0xab, 0x37, 0x0b, 0xc9, 0x13, 0xf0, 0xa1, 0x87, 0x8b, 0x2c, 0x53, 0xf1, 0x6e, 0x70, 0xfe, 0x37, 0x7a, 0x5e, 0x9c, 0x6e, 0x86, 0xf1, 0x8a, 0xe4, 0x80, 0xa2, 0x2b, 0xb4, 0x99, 0xf5, 0xb3, 0x2e, 0x71, 0x09, 0xc0, 0x73, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5028 = { .name = "ecdsa_secp256k1_sha256_5028", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5028_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5028_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5028_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5029 for ECDSA, tcId is 73 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5029_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5029_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5029_sig[] = { 0x53, 0x0a, 0x08, 0x32, 0xb6, 0x91, 0xda, 0x0b, 0x56, 0x19, 0xa0, 0xb1, 0x1d, 0xe6, 0x87, 0x7f, 0x3c, 0x09, 0x71, 0xba, 0xaa, 0x68, 0xed, 0x12, 0x27, 0x58, 0xc2, 0x9c, 0xaa, 0xf4, 0x6b, 0x72, 0x93, 0x76, 0x1b, 0xb0, 0xa1, 0x4c, 0xcf, 0x9f, 0x15, 0xb4, 0xb9, 0xce, 0x73, 0xc6, 0xec, 0x70, 0x0b, 0xd0, 0x15, 0xb8, 0xcb, 0x1c, 0xfa, 0xc5, 0x68, 0x37, 0xf4, 0x46, 0x3f, 0x53, 0x07, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5029 = { .name = "ecdsa_secp256k1_sha256_5029", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5029_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5029_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5029_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5030 for ECDSA, tcId is 74 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5030_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5030_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5030_sig[] = { 0x9c, 0x54, 0xc2, 0x55, 0x00, 0xbd, 0xe0, 0xb9, 0x2d, 0x72, 0xd6, 0xec, 0x48, 0x3d, 0xc2, 0x48, 0x2f, 0x36, 0x54, 0x29, 0x4c, 0xa7, 0x4d, 0xe7, 0x96, 0xb6, 0x81, 0x25, 0x5e, 0xd5, 0x8a, 0x77, 0x98, 0x8b, 0xac, 0x39, 0x4a, 0x90, 0xad, 0x89, 0xce, 0x36, 0x09, 0x84, 0xc0, 0xc1, 0x49, 0xdc, 0xbd, 0x26, 0x84, 0xbb, 0x64, 0x49, 0x8a, 0xce, 0x90, 0xbc, 0xf6, 0xb6, 0xaf, 0x1c, 0x17, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5030 = { .name = "ecdsa_secp256k1_sha256_5030", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5030_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5030_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5030_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5031 for ECDSA, tcId is 75 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5031_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5031_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5031_sig[] = { 0xe7, 0x90, 0x9d, 0x41, 0x43, 0x9e, 0x2f, 0x6a, 0xf2, 0x91, 0x36, 0xc7, 0x34, 0x8c, 0xa2, 0x64, 0x1a, 0x2b, 0x07, 0x0d, 0x5b, 0x64, 0xf9, 0x1e, 0xa9, 0xda, 0x70, 0x70, 0xc7, 0xa2, 0x61, 0x8b, 0x42, 0xd7, 0x82, 0xf1, 0x32, 0xfa, 0x1d, 0x36, 0xc2, 0xc8, 0x8b, 0xa2, 0x7c, 0x3d, 0x67, 0x8d, 0x80, 0x18, 0x4a, 0x5d, 0x1e, 0xcc, 0xac, 0x75, 0x01, 0xf0, 0xb4, 0x7e, 0x3d, 0x20, 0x50, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5031 = { .name = "ecdsa_secp256k1_sha256_5031", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5031_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5031_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5031_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5032 for ECDSA, tcId is 76 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5032_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5032_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5032_sig[] = { 0x59, 0x24, 0x87, 0x32, 0x09, 0x59, 0x31, 0x35, 0xa4, 0xc3, 0xda, 0x7b, 0xb3, 0x81, 0x22, 0x7f, 0x8a, 0x4b, 0x6a, 0xa9, 0xf3, 0x4f, 0xe5, 0xbb, 0x7f, 0x8f, 0xbc, 0x13, 0x1a, 0x03, 0x9f, 0xfe, 0xe0, 0xe4, 0x4e, 0xe4, 0xbb, 0xe3, 0x70, 0x15, 0x5b, 0xf0, 0xbb, 0xde, 0xc2, 0x65, 0xbf, 0x9f, 0xe3, 0x1c, 0x07, 0x46, 0xfa, 0xab, 0x44, 0x6d, 0xe6, 0x2e, 0x36, 0x31, 0xea, 0xcd, 0x11, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5032 = { .name = "ecdsa_secp256k1_sha256_5032", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5032_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5032_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5032_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5033 for ECDSA, tcId is 77 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5033_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5033_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5033_sig[] = { 0xee, 0xb6, 0x92, 0xc9, 0xb2, 0x62, 0x96, 0x9b, 0x23, 0x1c, 0x38, 0xb5, 0xa7, 0xf6, 0x06, 0x49, 0xe0, 0xc8, 0x75, 0xcd, 0x64, 0xdf, 0x88, 0xf3, 0x3a, 0xa5, 0x71, 0xfa, 0x3d, 0x29, 0xab, 0x0e, 0x21, 0x8b, 0x3a, 0x1e, 0xb0, 0x63, 0x79, 0xc2, 0xc1, 0x8c, 0xf5, 0x1b, 0x06, 0x43, 0x07, 0x86, 0xd1, 0xc6, 0x4c, 0xd2, 0xd2, 0x4c, 0x9b, 0x23, 0x2b, 0x23, 0xe5, 0xba, 0xc7, 0x98, 0x9a, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5033 = { .name = "ecdsa_secp256k1_sha256_5033", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5033_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5033_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5033_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5034 for ECDSA, tcId is 78 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5034_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5034_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5034_sig[] = { 0xa4, 0x00, 0x34, 0x17, 0x7f, 0x36, 0x09, 0x1c, 0x2b, 0x65, 0x36, 0x84, 0xa0, 0xe3, 0xeb, 0x5d, 0x4b, 0xff, 0x18, 0xe4, 0xd0, 0x9f, 0x66, 0x4c, 0x28, 0x00, 0xe7, 0xca, 0xfd, 0xa1, 0xda, 0xf8, 0x3a, 0x3e, 0xc2, 0x98, 0x53, 0x70, 0x4e, 0x52, 0x03, 0x1c, 0x58, 0x92, 0x7a, 0x80, 0x0a, 0x96, 0x83, 0x53, 0xad, 0xc3, 0xd9, 0x73, 0xbe, 0xba, 0x91, 0x72, 0xcb, 0xbe, 0xab, 0x4d, 0xd1, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5034 = { .name = "ecdsa_secp256k1_sha256_5034", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5034_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5034_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5034_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5035 for ECDSA, tcId is 79 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5035_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5035_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5035_sig[] = { 0xb5, 0xd7, 0x95, 0xcc, 0x75, 0xce, 0xa5, 0xc4, 0x34, 0xfa, 0x41, 0x85, 0x18, 0x0c, 0xd6, 0xbd, 0x21, 0x22, 0x3f, 0x3d, 0x5a, 0x86, 0xda, 0x66, 0x70, 0xd7, 0x1d, 0x95, 0x68, 0x0d, 0xad, 0xbf, 0xab, 0x1b, 0x27, 0x7e, 0xf5, 0xff, 0xe1, 0x34, 0x46, 0x08, 0x35, 0xe3, 0xd1, 0x40, 0x24, 0x61, 0xba, 0x10, 0x4c, 0xb5, 0x0b, 0x16, 0xf3, 0x97, 0xfd, 0xc7, 0xa9, 0xab, 0xfe, 0xfe, 0xf2, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5035 = { .name = "ecdsa_secp256k1_sha256_5035", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5035_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5035_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5035_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5036 for ECDSA, tcId is 80 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5036_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5036_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5036_sig[] = { 0x07, 0xdc, 0x24, 0x78, 0xd4, 0x3c, 0x12, 0x32, 0xa4, 0x59, 0x56, 0x08, 0xc6, 0x44, 0x26, 0xc3, 0x55, 0x10, 0x05, 0x1a, 0x63, 0x1a, 0xe6, 0xa5, 0xa6, 0xeb, 0x11, 0x61, 0xe5, 0x7e, 0x42, 0xe1, 0x4a, 0x59, 0xea, 0x0f, 0xdb, 0x72, 0xd1, 0x21, 0x65, 0xce, 0xa3, 0xbf, 0x1c, 0xa8, 0x6b, 0xa9, 0x75, 0x17, 0xbd, 0x18, 0x8d, 0xb3, 0xdb, 0xd2, 0x1a, 0x5a, 0x15, 0x78, 0x50, 0x02, 0x19, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5036 = { .name = "ecdsa_secp256k1_sha256_5036", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5036_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5036_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5036_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5037 for ECDSA, tcId is 81 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5037_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5037_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5037_sig[] = { 0xdd, 0xd2, 0x0c, 0x4a, 0x05, 0x59, 0x6c, 0xa8, 0x68, 0xb5, 0x58, 0x83, 0x9f, 0xce, 0x9f, 0x65, 0x11, 0xdd, 0xd8, 0x3d, 0x1c, 0xcb, 0x53, 0xf8, 0x2e, 0x52, 0x69, 0xd5, 0x59, 0xa0, 0x15, 0x52, 0xa4, 0x6e, 0x8c, 0xb8, 0xd6, 0x26, 0xcf, 0x6c, 0x00, 0xdd, 0xed, 0xc3, 0xb5, 0xda, 0x7e, 0x61, 0x3a, 0xc3, 0x76, 0x44, 0x5e, 0xe2, 0x60, 0x74, 0x3f, 0x06, 0xf7, 0x90, 0x54, 0xc7, 0xd4, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5037 = { .name = "ecdsa_secp256k1_sha256_5037", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5037_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5037_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5037_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5038 for ECDSA, tcId is 82 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5038_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5038_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5038_sig[] = { 0x9c, 0xde, 0x6e, 0x0e, 0xde, 0x0a, 0x00, 0x3f, 0x02, 0xfd, 0xa0, 0xa0, 0x1b, 0x59, 0xfa, 0xcf, 0xe5, 0xde, 0xc0, 0x63, 0x31, 0x8f, 0x27, 0x9c, 0xe2, 0xde, 0x7a, 0x9b, 0x10, 0x62, 0xf7, 0xb7, 0x28, 0x86, 0xa5, 0xb8, 0xc6, 0x79, 0xbd, 0xf8, 0x22, 0x4c, 0x66, 0xf9, 0x08, 0xfd, 0x62, 0x05, 0x49, 0x2c, 0xb7, 0x0b, 0x00, 0x68, 0xd4, 0x6a, 0xe4, 0xf3, 0x3a, 0x41, 0x49, 0xb1, 0x2a, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5038 = { .name = "ecdsa_secp256k1_sha256_5038", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5038_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5038_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5038_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5039 for ECDSA, tcId is 83 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5039_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5039_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5039_sig[] = { 0xc5, 0x77, 0x10, 0x16, 0xd0, 0xdd, 0x63, 0x57, 0x14, 0x3c, 0x89, 0xf6, 0x84, 0xcd, 0x74, 0x04, 0x23, 0x50, 0x25, 0x54, 0xc0, 0xc5, 0x9a, 0xa8, 0xc9, 0x95, 0x84, 0xf1, 0xff, 0x38, 0xf6, 0x09, 0xab, 0x4b, 0xfa, 0x0b, 0xb8, 0x8a, 0xb9, 0x97, 0x91, 0xb9, 0xb3, 0xab, 0x9c, 0x4b, 0x02, 0xbd, 0x2a, 0x57, 0xae, 0x8d, 0xde, 0x50, 0xb9, 0x06, 0x40, 0x63, 0xfc, 0xf8, 0x53, 0x15, 0xcf, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5039 = { .name = "ecdsa_secp256k1_sha256_5039", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5039_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5039_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5039_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5040 for ECDSA, tcId is 84 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5040_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5040_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5040_sig[] = { 0xa2, 0x4e, 0xbc, 0x0e, 0xc2, 0x24, 0xbd, 0x67, 0xae, 0x39, 0x7c, 0xbe, 0x6f, 0xa3, 0x7b, 0x31, 0x25, 0xad, 0xbd, 0x34, 0x89, 0x1a, 0xbe, 0x2d, 0x7c, 0x73, 0x56, 0x92, 0x19, 0x16, 0xdf, 0xe6, 0x34, 0xf6, 0xeb, 0x63, 0x74, 0x73, 0x1b, 0xbb, 0xaf, 0xc4, 0x92, 0x4f, 0xb8, 0xb0, 0xbd, 0xcd, 0xda, 0x49, 0x45, 0x6d, 0x72, 0x4c, 0xda, 0xe6, 0x17, 0x8d, 0x87, 0x01, 0x4c, 0xb5, 0x3d, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5040 = { .name = "ecdsa_secp256k1_sha256_5040", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5040_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5040_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5040_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5041 for ECDSA, tcId is 85 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5041_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5041_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5041_sig[] = { 0x25, 0x57, 0xd6, 0x4a, 0x7a, 0xee, 0x2e, 0x09, 0x31, 0xc0, 0x12, 0xe4, 0xfe, 0xa1, 0xcd, 0x3a, 0x2c, 0x33, 0x4e, 0xda, 0xe6, 0x8c, 0xde, 0xb7, 0x15, 0x8c, 0xaf, 0x21, 0xb6, 0x8e, 0x5a, 0x24, 0x80, 0xf9, 0x32, 0x44, 0x95, 0x6f, 0xfd, 0xc5, 0x68, 0xc7, 0x7d, 0x12, 0x68, 0x4f, 0x7f, 0x00, 0x4f, 0xa9, 0x2d, 0xa7, 0xe6, 0x0a, 0xe9, 0x4a, 0x1b, 0x98, 0xc4, 0x22, 0xe2, 0x3e, 0xda, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5041 = { .name = "ecdsa_secp256k1_sha256_5041", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5041_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5041_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5041_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5042 for ECDSA, tcId is 86 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5042_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5042_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5042_sig[] = { 0xc4, 0xf2, 0xec, 0xcb, 0xb6, 0xa2, 0x43, 0x50, 0xc8, 0x46, 0x64, 0x50, 0xb9, 0xd6, 0x1b, 0x20, 0x7e, 0xe3, 0x59, 0xe0, 0x37, 0xb3, 0xdc, 0xed, 0xb4, 0x2a, 0x3f, 0x2e, 0x6d, 0xd6, 0xae, 0xb5, 0xcd, 0x9c, 0x39, 0x4a, 0x65, 0xd0, 0xaa, 0x32, 0x2e, 0x39, 0x1e, 0xb7, 0x6b, 0x2a, 0x1a, 0x68, 0x7f, 0x86, 0x20, 0xa8, 0x8a, 0xde, 0xf3, 0xa0, 0x1e, 0xb8, 0xe4, 0xfb, 0x05, 0xb6, 0x47, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5042 = { .name = "ecdsa_secp256k1_sha256_5042", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5042_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5042_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5042_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5043 for ECDSA, tcId is 87 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5043_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5043_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5043_sig[] = { 0xef, 0xf0, 0x47, 0x81, 0xc9, 0xcb, 0xcd, 0x16, 0x2d, 0x0a, 0x25, 0xa6, 0xe2, 0xeb, 0xcc, 0xa4, 0x35, 0x06, 0xc5, 0x23, 0x38, 0x5c, 0xb5, 0x15, 0xd4, 0x9e, 0xa3, 0x8a, 0x1b, 0x12, 0xfc, 0xad, 0xea, 0x53, 0x28, 0xce, 0x6b, 0x36, 0xe5, 0x6a, 0xb8, 0x7a, 0xcb, 0x0d, 0xcf, 0xea, 0x49, 0x8b, 0xce, 0xc1, 0xbb, 0xa8, 0x6a, 0x06, 0x52, 0x68, 0xf6, 0xef, 0xf3, 0xc4, 0x1c, 0x4b, 0x0c, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5043 = { .name = "ecdsa_secp256k1_sha256_5043", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5043_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5043_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5043_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5044 for ECDSA, tcId is 88 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5044_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5044_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5044_sig[] = { 0xf5, 0x8b, 0x4e, 0x31, 0x10, 0xa6, 0x4b, 0xf1, 0xb5, 0xdb, 0x97, 0x63, 0x9e, 0xe0, 0xe5, 0xa9, 0xc8, 0xdf, 0xa4, 0x9d, 0xc5, 0x9b, 0x67, 0x98, 0x91, 0xf5, 0x20, 0xfd, 0xf0, 0x58, 0x4c, 0x87, 0xd3, 0x27, 0x01, 0xae, 0x77, 0x75, 0x11, 0x62, 0x4c, 0x1f, 0x8a, 0xbb, 0xf0, 0x2b, 0x24, 0x8b, 0x04, 0xe7, 0xa9, 0xeb, 0x27, 0x93, 0x8f, 0x52, 0x4f, 0x3e, 0x88, 0x28, 0xba, 0x40, 0x16, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5044 = { .name = "ecdsa_secp256k1_sha256_5044", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5044_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5044_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5044_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5045 for ECDSA, tcId is 89 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5045_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5045_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5045_sig[] = { 0xf8, 0xab, 0xec, 0xaa, 0x4f, 0x0c, 0x50, 0x2d, 0xe4, 0xbf, 0x59, 0x03, 0xd4, 0x84, 0x17, 0xf7, 0x86, 0xbf, 0x92, 0xe8, 0xad, 0x72, 0xfe, 0xc0, 0xbd, 0x7f, 0xcb, 0x78, 0x00, 0xc0, 0xbb, 0xe3, 0x4c, 0x7f, 0x9e, 0x23, 0x10, 0x76, 0xa3, 0x0b, 0x7a, 0xe3, 0x6b, 0x0c, 0xeb, 0xe6, 0x9c, 0xce, 0xf1, 0xcd, 0x19, 0x4f, 0x7c, 0xce, 0x93, 0xa5, 0x58, 0x8f, 0xd6, 0x81, 0x4f, 0x43, 0x7c, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5045 = { .name = "ecdsa_secp256k1_sha256_5045", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5045_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5045_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5045_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5046 for ECDSA, tcId is 90 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5046_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5046_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5046_sig[] = { 0x5d, 0x5b, 0x38, 0xbd, 0x37, 0xad, 0x49, 0x8b, 0x22, 0x27, 0xa6, 0x33, 0x26, 0x8a, 0x8c, 0xca, 0x87, 0x9a, 0x5c, 0x7c, 0x94, 0xa4, 0xe4, 0x16, 0xbd, 0x0a, 0x61, 0x4d, 0x09, 0xe6, 0x06, 0xd2, 0x12, 0xb8, 0xd6, 0x64, 0xea, 0x99, 0x91, 0x06, 0x2e, 0xcb, 0xb8, 0x34, 0xe5, 0x84, 0x00, 0xe2, 0x5c, 0x46, 0x00, 0x7a, 0xf8, 0x4f, 0x60, 0x07, 0xd7, 0xf1, 0x68, 0x54, 0x43, 0x26, 0x9a, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5046 = { .name = "ecdsa_secp256k1_sha256_5046", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5046_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5046_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5046_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5047 for ECDSA, tcId is 91 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5047_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5047_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5047_sig[] = { 0x0c, 0x1c, 0xd9, 0xfe, 0x40, 0x34, 0xf0, 0x86, 0xa2, 0xb5, 0x2d, 0x65, 0xb9, 0xd3, 0x83, 0x4d, 0x72, 0xae, 0xbe, 0x7f, 0x33, 0xdf, 0xe8, 0xf9, 0x76, 0xda, 0x82, 0x64, 0x81, 0x77, 0xd8, 0xe3, 0x13, 0x10, 0x57, 0x82, 0xe3, 0xd0, 0xcf, 0xe8, 0x5c, 0x27, 0x78, 0xde, 0xc1, 0xa8, 0x48, 0xb2, 0x7a, 0xc0, 0xae, 0x07, 0x1a, 0xa6, 0xda, 0x34, 0x1a, 0x95, 0x53, 0xa9, 0x46, 0xb4, 0x1e, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5047 = { .name = "ecdsa_secp256k1_sha256_5047", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5047_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5047_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5047_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5048 for ECDSA, tcId is 92 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5048_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5048_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5048_sig[] = { 0xae, 0x79, 0x35, 0xfb, 0x96, 0xff, 0x24, 0x6b, 0x7b, 0x5d, 0x56, 0x62, 0x87, 0x0d, 0x1b, 0xa5, 0x87, 0xb0, 0x3d, 0x6e, 0x13, 0x60, 0xba, 0xf4, 0x79, 0x88, 0xb5, 0xc0, 0x2c, 0xcc, 0x1a, 0x5b, 0x5f, 0x00, 0xc3, 0x23, 0x27, 0x20, 0x83, 0x78, 0x2d, 0x4a, 0x59, 0xf2, 0xdf, 0xd6, 0x5e, 0x49, 0xde, 0x06, 0x93, 0x62, 0x70, 0x16, 0x90, 0x0e, 0xf7, 0xe6, 0x14, 0x28, 0x05, 0x66, 0x64, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5048 = { .name = "ecdsa_secp256k1_sha256_5048", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5048_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5048_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5048_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5049 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5049_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5049_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5049_sig[] = { 0x00, 0xa1, 0x34, 0xb5, 0xc6, 0xcc, 0xbc, 0xef, 0xd4, 0xc8, 0x82, 0xb9, 0x45, 0xba, 0xeb, 0x49, 0x33, 0x44, 0x41, 0x72, 0x79, 0x5f, 0xa6, 0x79, 0x6a, 0xae, 0x14, 0x90, 0x67, 0x54, 0x70, 0x98, 0xa9, 0x91, 0xb9, 0xef, 0xa2, 0xdb, 0x27, 0x6f, 0xea, 0xe1, 0xc1, 0x15, 0xc1, 0x40, 0x77, 0x09, 0x01, 0x83, 0x9d, 0x87, 0xe6, 0x0e, 0x7e, 0xc4, 0x5a, 0x2b, 0x81, 0xcf, 0x3b, 0x43, 0x7b, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5049 = { .name = "ecdsa_secp256k1_sha256_5049", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5049_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5049_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5049_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5050 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5050_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5050_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5050_sig[] = { 0x2e, 0x47, 0x21, 0x36, 0x3a, 0xd3, 0x99, 0x2c, 0x13, 0x9e, 0x5a, 0x1c, 0x26, 0x39, 0x5d, 0x2c, 0x2d, 0x77, 0x78, 0x24, 0xaa, 0x24, 0xfd, 0xe0, 0x75, 0xe0, 0xd7, 0x38, 0x11, 0x71, 0x30, 0x9d, 0x8b, 0xf0, 0x83, 0xb6, 0xbb, 0xe7, 0x1e, 0xcf, 0xf2, 0x2b, 0xae, 0xd0, 0x87, 0xd5, 0xa7, 0x7e, 0xae, 0xaf, 0x72, 0x6b, 0xf1, 0x4a, 0xce, 0x2c, 0x03, 0xfd, 0x6e, 0x37, 0xba, 0x6c, 0x26, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5050 = { .name = "ecdsa_secp256k1_sha256_5050", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5050_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5050_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5050_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5051 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5051_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5051_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5051_sig[] = { 0x68, 0x52, 0xe9, 0xd3, 0xcd, 0x9f, 0xe3, 0x73, 0xc2, 0xd5, 0x04, 0x87, 0x79, 0x67, 0xd3, 0x65, 0xab, 0x14, 0x56, 0x70, 0x7b, 0x68, 0x17, 0xa0, 0x42, 0x86, 0x46, 0x94, 0xe1, 0x96, 0x0c, 0xcf, 0xf9, 0xb4, 0xd8, 0x15, 0xeb, 0xd4, 0xcf, 0x77, 0x84, 0x7b, 0x37, 0x95, 0x23, 0x34, 0xd0, 0x5b, 0x20, 0x45, 0xcb, 0x39, 0x8d, 0x4c, 0x21, 0xba, 0x20, 0x79, 0x22, 0xa7, 0xa4, 0x71, 0x4d, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5051 = { .name = "ecdsa_secp256k1_sha256_5051", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5051_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5051_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5051_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5052 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5052_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5052_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5052_sig[] = { 0x18, 0x8a, 0x8c, 0x56, 0x48, 0xdc, 0x79, 0xea, 0xce, 0x15, 0x8c, 0xf8, 0x86, 0xc6, 0x2b, 0x54, 0x68, 0xf0, 0x5f, 0xd9, 0x5f, 0x03, 0xa7, 0x63, 0x5c, 0x5b, 0x4c, 0x31, 0xf0, 0x9a, 0xf4, 0xc5, 0x36, 0x36, 0x1a, 0x0b, 0x57, 0x1a, 0x00, 0xc6, 0xcd, 0x5e, 0x68, 0x6c, 0xcb, 0xfc, 0xfa, 0x70, 0x3c, 0x4f, 0x97, 0xe4, 0x89, 0x38, 0x34, 0x6d, 0x0c, 0x10, 0x3f, 0xdc, 0x76, 0xdc, 0x58, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5052 = { .name = "ecdsa_secp256k1_sha256_5052", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5052_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5052_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5052_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5053 for ECDSA, tcId is 97 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5053_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5053_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5053_sig[] = { 0xa7, 0x4f, 0x1f, 0xb9, 0xa8, 0x26, 0x3f, 0x62, 0xfc, 0x44, 0x16, 0xa5, 0xb7, 0xd5, 0x84, 0xf4, 0x20, 0x6f, 0x39, 0x96, 0xbb, 0x91, 0xf6, 0xfc, 0x8e, 0x73, 0xb9, 0xe9, 0x2b, 0xad, 0x0e, 0x13, 0x68, 0x15, 0x03, 0x2e, 0x8c, 0x7d, 0x76, 0xc3, 0xab, 0x06, 0xa8, 0x6f, 0x33, 0x24, 0x9c, 0xe9, 0x94, 0x01, 0x48, 0xcb, 0x36, 0xd1, 0xf4, 0x17, 0xc2, 0xe9, 0x92, 0xe8, 0x01, 0xaf, 0xa3, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5053 = { .name = "ecdsa_secp256k1_sha256_5053", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5053_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5053_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5053_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5054 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5054_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5054_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5054_sig[] = { 0x07, 0x24, 0x48, 0x65, 0xb7, 0x2f, 0xf3, 0x7e, 0x62, 0xe3, 0x14, 0x6f, 0x0d, 0xc1, 0x46, 0x82, 0xba, 0xdd, 0x71, 0x97, 0x79, 0x91, 0x35, 0xf0, 0xb0, 0x0a, 0xde, 0x76, 0x71, 0x74, 0x2b, 0xfe, 0xf2, 0x7f, 0x3d, 0xdc, 0x71, 0x24, 0xb1, 0xb5, 0x85, 0x79, 0x57, 0x3a, 0x83, 0x56, 0x50, 0xe7, 0xa8, 0xba, 0xd5, 0xee, 0xb9, 0x6e, 0x9d, 0xa2, 0x15, 0xcd, 0x7b, 0xf9, 0xa2, 0xa0, 0x39, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5054 = { .name = "ecdsa_secp256k1_sha256_5054", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5054_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5054_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5054_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5055 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5055_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5055_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5055_sig[] = { 0xda, 0x7f, 0xdd, 0x05, 0xb5, 0xba, 0xda, 0xbd, 0x61, 0x9d, 0x80, 0x5c, 0x4e, 0xe7, 0xd9, 0xa8, 0x4f, 0x84, 0xdd, 0xd5, 0xcf, 0x9c, 0x5b, 0xf4, 0xd4, 0x33, 0x81, 0x40, 0xd6, 0x89, 0xef, 0x08, 0x28, 0xf1, 0xcf, 0x4f, 0xa1, 0xc3, 0xc5, 0x86, 0x2c, 0xfa, 0x14, 0x9c, 0x00, 0x13, 0xcf, 0x5f, 0xe6, 0xcf, 0x50, 0x76, 0xca, 0xe0, 0x00, 0x51, 0x10, 0x63, 0xe7, 0xde, 0x25, 0xbb, 0x38, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5055 = { .name = "ecdsa_secp256k1_sha256_5055", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5055_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5055_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5055_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5056 for ECDSA, tcId is 100 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5056_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5056_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5056_sig[] = { 0xd3, 0x02, 0x7c, 0x65, 0x6f, 0x6d, 0x4f, 0xdf, 0xd8, 0xed, 0xe2, 0x20, 0x93, 0xe3, 0xc3, 0x03, 0xb0, 0x13, 0x3c, 0x34, 0x0d, 0x61, 0x5e, 0x77, 0x56, 0xf6, 0x25, 0x3a, 0xea, 0x92, 0x72, 0x38, 0xf6, 0x51, 0x0f, 0x9f, 0x37, 0x1b, 0x31, 0x06, 0x8d, 0x68, 0xbf, 0xee, 0xaa, 0x72, 0x0e, 0xb9, 0xbb, 0xdc, 0x80, 0x40, 0x14, 0x5f, 0xcf, 0x88, 0xd4, 0xe0, 0xb5, 0x8d, 0xe0, 0x77, 0x7d, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5056 = { .name = "ecdsa_secp256k1_sha256_5056", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5056_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5056_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5056_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5057 for ECDSA, tcId is 101 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5057_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5057_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5057_sig[] = { 0x0b, 0xf6, 0xc0, 0x18, 0x8d, 0xc9, 0x57, 0x1c, 0xd0, 0xe2, 0x1e, 0xec, 0xac, 0x5f, 0xbb, 0x19, 0xd2, 0x43, 0x49, 0x88, 0xe9, 0xcc, 0x10, 0x24, 0x45, 0x93, 0xef, 0x3a, 0x98, 0x09, 0x9f, 0x69, 0x48, 0x64, 0xa5, 0x62, 0x66, 0x1f, 0x92, 0x21, 0xec, 0x88, 0xe3, 0xdd, 0x0b, 0xc2, 0xf6, 0xe2, 0x7a, 0xc1, 0x28, 0xc3, 0x0c, 0xc1, 0xa8, 0x0f, 0x79, 0xec, 0x67, 0x0a, 0x22, 0xb0, 0x42, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5057 = { .name = "ecdsa_secp256k1_sha256_5057", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5057_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5057_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5057_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5058 for ECDSA, tcId is 102 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5058_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5058_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5058_sig[] = { 0xae, 0x45, 0x96, 0x40, 0xd5, 0xd1, 0x17, 0x9b, 0xe4, 0x7a, 0x47, 0xfa, 0x53, 0x8e, 0x16, 0xd9, 0x4d, 0xde, 0xa5, 0x58, 0x5e, 0x7a, 0x24, 0x48, 0x04, 0xa5, 0x17, 0x42, 0xc6, 0x86, 0x44, 0x3a, 0x6c, 0x8e, 0x30, 0xe5, 0x30, 0xa6, 0x34, 0xfa, 0xe8, 0x0b, 0x3c, 0xeb, 0x06, 0x29, 0x78, 0xb3, 0x9e, 0xdb, 0xe1, 0x97, 0x77, 0xe0, 0xa2, 0x45, 0x53, 0xb6, 0x88, 0x86, 0x18, 0x1f, 0xd8, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5058 = { .name = "ecdsa_secp256k1_sha256_5058", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5058_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha256_5058_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5059 for ECDSA, tcId is 103 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5059_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5059_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5059_sig[] = { 0x1c, 0xf3, 0x51, 0x7b, 0xa3, 0xbf, 0x2a, 0xb8, 0xb9, 0xea, 0xd4, 0xeb, 0xb6, 0xe8, 0x66, 0xcb, 0x88, 0xa1, 0xde, 0xac, 0xb6, 0xa7, 0x85, 0xd3, 0xb6, 0x3b, 0x48, 0x3c, 0xa0, 0x2a, 0xc4, 0x95, 0x24, 0x9a, 0x79, 0x8b, 0x73, 0x60, 0x6f, 0x55, 0xf5, 0xf1, 0xc7, 0x0d, 0xe6, 0x7c, 0xb1, 0xa0, 0xcf, 0xf9, 0x5d, 0x7d, 0xc5, 0x0b, 0x3a, 0x61, 0x7d, 0xf8, 0x61, 0xba, 0xd3, 0xc6, 0xb1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5059 = { .name = "ecdsa_secp256k1_sha256_5059", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5059_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5059_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5060 for ECDSA, tcId is 104 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5060_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5060_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5060_sig[] = { 0xe6, 0x9b, 0x52, 0x38, 0x26, 0x5e, 0xa3, 0x5d, 0x77, 0xe4, 0xdd, 0x17, 0x22, 0x88, 0xd8, 0xce, 0xa1, 0x98, 0x10, 0xa1, 0x02, 0x92, 0x61, 0x7d, 0x59, 0x76, 0x51, 0x9d, 0xc5, 0x75, 0x7c, 0xb8, 0x4b, 0x03, 0xc5, 0xbc, 0x47, 0xe8, 0x26, 0xbd, 0xb2, 0x73, 0x28, 0xab, 0xd3, 0x8d, 0x30, 0x56, 0xd7, 0x74, 0x76, 0xb2, 0x13, 0x0f, 0x3d, 0xf6, 0xec, 0x48, 0x91, 0xaf, 0x08, 0xba, 0x1e, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5060 = { .name = "ecdsa_secp256k1_sha256_5060", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5060_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5060_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5061 for ECDSA, tcId is 105 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5061_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5061_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5061_sig[] = { 0x5f, 0x9d, 0x7d, 0x7c, 0x87, 0x0d, 0x08, 0x5f, 0xc1, 0xd4, 0x9f, 0xff, 0x69, 0xe4, 0xa2, 0x75, 0x81, 0x28, 0x00, 0xd2, 0xcf, 0x89, 0x73, 0xe7, 0x32, 0x58, 0x66, 0xcb, 0x40, 0xfa, 0x2b, 0x6f, 0x6d, 0x1f, 0x54, 0x91, 0xd9, 0xf7, 0x17, 0xa5, 0x97, 0xa1, 0x5f, 0xd5, 0x40, 0x40, 0x64, 0x86, 0xd7, 0x6a, 0x44, 0x69, 0x7b, 0x3f, 0x0d, 0x9d, 0x6d, 0xce, 0xf6, 0x66, 0x9f, 0x8a, 0x0a, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5061 = { .name = "ecdsa_secp256k1_sha256_5061", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5061_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5061_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5062 for ECDSA, tcId is 106 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5062_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5062_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5062_sig[] = { 0x0a, 0x7d, 0x5b, 0x19, 0x59, 0xf7, 0x1d, 0xf9, 0xf8, 0x17, 0x14, 0x6e, 0xe4, 0x9b, 0xd5, 0xc8, 0x9b, 0x43, 0x1e, 0x79, 0x93, 0xe2, 0xfd, 0xec, 0xab, 0x68, 0x58, 0x95, 0x7d, 0xa6, 0x85, 0xae, 0x0f, 0x8a, 0xad, 0x2d, 0x25, 0x46, 0x90, 0xbd, 0xc1, 0x3f, 0x34, 0xa4, 0xfe, 0xc4, 0x4a, 0x02, 0xfd, 0x74, 0x5a, 0x42, 0x2d, 0xf0, 0x5c, 0xcb, 0xb5, 0x46, 0x35, 0xa8, 0xb8, 0x6b, 0x96, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5062 = { .name = "ecdsa_secp256k1_sha256_5062", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5062_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5062_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5063 for ECDSA, tcId is 107 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5063_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5063_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5063_sig[] = { 0x79, 0xe8, 0x8b, 0xf5, 0x76, 0xb7, 0x4b, 0xc0, 0x7c, 0xa1, 0x42, 0x39, 0x5f, 0xda, 0x28, 0xf0, 0x3d, 0x3d, 0x5e, 0x64, 0x0b, 0x0b, 0x4f, 0xf0, 0x75, 0x2c, 0x6d, 0x94, 0xcd, 0x55, 0x34, 0x08, 0x32, 0xce, 0xa0, 0x5b, 0xd2, 0xd7, 0x06, 0xc8, 0xf6, 0x03, 0x6a, 0x50, 0x7e, 0x2a, 0xb7, 0x76, 0x60, 0x04, 0xf0, 0x90, 0x4e, 0x2e, 0x5c, 0x58, 0x62, 0x74, 0x9c, 0x00, 0x73, 0x24, 0x5d, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5063 = { .name = "ecdsa_secp256k1_sha256_5063", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5063_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5063_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5064 for ECDSA, tcId is 108 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5064_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5064_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5064_sig[] = { 0x9d, 0x54, 0xe0, 0x37, 0xa0, 0x02, 0x12, 0xb3, 0x77, 0xbc, 0x88, 0x74, 0x79, 0x8b, 0x8d, 0xa0, 0x80, 0x56, 0x4b, 0xbd, 0xf7, 0xe0, 0x75, 0x91, 0xb8, 0x61, 0x28, 0x58, 0x09, 0xd0, 0x14, 0x88, 0x18, 0xb4, 0xe5, 0x57, 0x66, 0x7a, 0x82, 0xbd, 0x95, 0x96, 0x5f, 0x07, 0x06, 0xf8, 0x1a, 0x29, 0x24, 0x3f, 0xbd, 0xd8, 0x69, 0x68, 0xa7, 0xeb, 0xeb, 0x43, 0x06, 0x9d, 0xb3, 0xb1, 0x8c, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5064 = { .name = "ecdsa_secp256k1_sha256_5064", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5064_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5064_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5065 for ECDSA, tcId is 109 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5065_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5065_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5065_sig[] = { 0x26, 0x64, 0xf1, 0xff, 0xa9, 0x82, 0xfe, 0xdb, 0xcc, 0x7c, 0xab, 0x1b, 0x8b, 0xc6, 0xe2, 0xcb, 0x42, 0x02, 0x18, 0xd2, 0xa6, 0x07, 0x7a, 0xd0, 0x8e, 0x59, 0x1b, 0xa9, 0xfe, 0xab, 0x33, 0xbd, 0x49, 0xf5, 0xc7, 0xcb, 0x51, 0x5e, 0x83, 0x87, 0x2a, 0x3d, 0x41, 0xb4, 0xcd, 0xb8, 0x5f, 0x24, 0x2a, 0xd9, 0xd6, 0x1a, 0x5b, 0xfc, 0x01, 0xde, 0xbf, 0xbb, 0x52, 0xc6, 0xc8, 0x4b, 0xa7, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5065 = { .name = "ecdsa_secp256k1_sha256_5065", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5065_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5065_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5066 for ECDSA, tcId is 110 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5066_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5066_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5066_sig[] = { 0x58, 0x27, 0x51, 0x83, 0x44, 0x84, 0x4f, 0xd6, 0xa7, 0xde, 0x73, 0xcb, 0xb0, 0xa6, 0xbe, 0xfd, 0xea, 0x7b, 0x13, 0xd2, 0xde, 0xe4, 0x47, 0x53, 0x17, 0xf0, 0xf1, 0x8f, 0xfc, 0x81, 0x52, 0x4b, 0xb0, 0xa3, 0x34, 0xb1, 0xf4, 0xb7, 0x74, 0xa5, 0xa2, 0x89, 0xf5, 0x53, 0x22, 0x4d, 0x28, 0x6d, 0x23, 0x9e, 0xf8, 0xa9, 0x09, 0x29, 0xed, 0x2d, 0x91, 0x42, 0x3e, 0x02, 0x4e, 0xb7, 0xfa, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5066 = { .name = "ecdsa_secp256k1_sha256_5066", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5066_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5066_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5067 for ECDSA, tcId is 111 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5067_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5067_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5067_sig[] = { 0x97, 0xab, 0x19, 0xbd, 0x13, 0x9c, 0xac, 0x31, 0x93, 0x25, 0x86, 0x92, 0x18, 0xb1, 0xbc, 0xe1, 0x11, 0x87, 0x5d, 0x63, 0xfb, 0x12, 0x09, 0x8a, 0x04, 0xb0, 0xcd, 0x59, 0xb6, 0xfd, 0xd3, 0xa3, 0xbc, 0xe2, 0x63, 0x15, 0xc5, 0xdb, 0xc7, 0xb8, 0xcf, 0xc3, 0x14, 0x25, 0xa9, 0xb8, 0x9b, 0xcc, 0xea, 0x7a, 0xa9, 0x47, 0x7d, 0x71, 0x1a, 0x4d, 0x37, 0x7f, 0x83, 0x3d, 0xcc, 0x28, 0xf8, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5067 = { .name = "ecdsa_secp256k1_sha256_5067", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5067_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5067_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5068 for ECDSA, tcId is 112 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5068_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5068_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5068_sig[] = { 0x52, 0xc6, 0x83, 0x14, 0x4e, 0x44, 0x11, 0x9a, 0xe2, 0x01, 0x37, 0x49, 0xd4, 0x96, 0x4e, 0xf6, 0x75, 0x09, 0x27, 0x8f, 0x6d, 0x38, 0xba, 0x86, 0x9a, 0xdc, 0xfa, 0x69, 0x97, 0x0e, 0x12, 0x3d, 0x34, 0x79, 0x91, 0x01, 0x67, 0x40, 0x8f, 0x45, 0xbd, 0xa4, 0x20, 0xa6, 0x26, 0xec, 0x9c, 0x4e, 0xc7, 0x11, 0xc1, 0x27, 0x4b, 0xe0, 0x92, 0x19, 0x8b, 0x41, 0x87, 0xc0, 0x18, 0xb5, 0x62, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5068 = { .name = "ecdsa_secp256k1_sha256_5068", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5068_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5068_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5069 for ECDSA, tcId is 113 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5069_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5069_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5069 = { .name = "ecdsa_secp256k1_sha256_5069", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5069_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5069_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 113 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5070 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5070_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5070_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5070 = { .name = "ecdsa_secp256k1_sha256_5070", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5070_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5070_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 114 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5071 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5071_pubkey[] = { 0xbc, 0x97, 0xe7, 0x58, 0x5e, 0xec, 0xad, 0x48, 0xe1, 0x66, 0x83, 0xbc, 0x40, 0x91, 0x70, 0x8e, 0x1a, 0x93, 0x0c, 0x68, 0x3f, 0xc4, 0x70, 0x01, 0xd4, 0xb3, 0x83, 0x59, 0x4f, 0x2c, 0x4e, 0x22, 0x70, 0x59, 0x89, 0xcf, 0x69, 0xda, 0xea, 0xdd, 0x4e, 0x4e, 0x4b, 0x81, 0x51, 0xed, 0x88, 0x8d, 0xfe, 0xc2, 0x0f, 0xb0, 0x17, 0x28, 0xd8, 0x9d, 0x56, 0xb3, 0xf3, 0x8f, 0x2a, 0xe9, 0xc8, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_5071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5071_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5071 = { .name = "ecdsa_secp256k1_sha256_5071", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5071_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5071_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 115 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5072 for ECDSA, tcId is 116 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5072_pubkey[] = { 0x44, 0xad, 0x33, 0x9a, 0xfb, 0xc2, 0x1e, 0x9a, 0xbf, 0x7b, 0x60, 0x2a, 0x5c, 0xa5, 0x35, 0xea, 0x37, 0x81, 0x35, 0xb6, 0xd1, 0x0d, 0x81, 0x31, 0x0b, 0xdd, 0x82, 0x93, 0xd1, 0xdf, 0x32, 0x52, 0xb6, 0x3f, 0xf7, 0xd0, 0x77, 0x47, 0x70, 0xf8, 0xfe, 0x1d, 0x17, 0x22, 0xfa, 0x83, 0xac, 0xd0, 0x2f, 0x43, 0x4e, 0x4f, 0xc1, 0x10, 0xa0, 0xcc, 0x8f, 0x6d, 0xdd, 0xd3, 0x7d, 0x56, 0xc4, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_5072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5072_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5072 = { .name = "ecdsa_secp256k1_sha256_5072", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5072_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5072_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 116 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5073 for ECDSA, tcId is 117 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5073_pubkey[] = { 0x12, 0x60, 0xc2, 0x12, 0x2c, 0x9e, 0x24, 0x4e, 0x1a, 0xf5, 0x15, 0x1b, 0xed, 0xe0, 0xc3, 0xae, 0x23, 0xb5, 0x4d, 0x7c, 0x59, 0x68, 0x81, 0xd3, 0xee, 0xba, 0xd2, 0x1f, 0x37, 0xdd, 0x87, 0x8c, 0x5c, 0x9a, 0x0c, 0x1a, 0x9a, 0xde, 0x76, 0x73, 0x7a, 0x88, 0x11, 0xbd, 0x6a, 0x7f, 0x92, 0x87, 0xc9, 0x78, 0xee, 0x39, 0x6a, 0xa8, 0x9c, 0x11, 0xe4, 0x72, 0x29, 0xd2, 0xcc, 0xb5, 0x52, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_5073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5073_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5073 = { .name = "ecdsa_secp256k1_sha256_5073", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5073_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5073_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 117 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5074 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5074_pubkey[] = { 0x18, 0x77, 0x04, 0x5b, 0xe2, 0x5d, 0x34, 0xa1, 0xd0, 0x60, 0x0f, 0x9d, 0x5c, 0x00, 0xd0, 0x64, 0x5a, 0x2a, 0x54, 0x37, 0x9b, 0x6c, 0xee, 0xfa, 0xd2, 0xe6, 0xbf, 0x5c, 0x2a, 0x33, 0x52, 0xce, 0x82, 0x1a, 0x53, 0x2c, 0xc1, 0x75, 0x1e, 0xe1, 0xd3, 0x6d, 0x41, 0xc3, 0xd6, 0xab, 0x4e, 0x9b, 0x14, 0x3e, 0x44, 0xec, 0x46, 0xd7, 0x34, 0x78, 0xea, 0x6a, 0x79, 0xa5, 0xc0, 0xe5, 0x41, 0x59, }; static const unsigned char ecdsa_secp256k1_sha256_5074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5074_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5074 = { .name = "ecdsa_secp256k1_sha256_5074", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5074_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5074_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 118 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5075 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5075_pubkey[] = { 0x18, 0x77, 0x04, 0x5b, 0xe2, 0x5d, 0x34, 0xa1, 0xd0, 0x60, 0x0f, 0x9d, 0x5c, 0x00, 0xd0, 0x64, 0x5a, 0x2a, 0x54, 0x37, 0x9b, 0x6c, 0xee, 0xfa, 0xd2, 0xe6, 0xbf, 0x5c, 0x2a, 0x33, 0x52, 0xce, 0x82, 0x1a, 0x53, 0x2c, 0xc1, 0x75, 0x1e, 0xe1, 0xd3, 0x6d, 0x41, 0xc3, 0xd6, 0xab, 0x4e, 0x9b, 0x14, 0x3e, 0x44, 0xec, 0x46, 0xd7, 0x34, 0x78, 0xea, 0x6a, 0x79, 0xa5, 0xc0, 0xe5, 0x41, 0x59, }; static const unsigned char ecdsa_secp256k1_sha256_5075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5075_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5075 = { .name = "ecdsa_secp256k1_sha256_5075", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5075_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5075_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 119 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5076 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5076_pubkey[] = { 0x45, 0x54, 0x39, 0xfc, 0xc3, 0xd2, 0xde, 0xec, 0xed, 0xde, 0xae, 0xce, 0x60, 0xe7, 0xbd, 0x17, 0x30, 0x4f, 0x36, 0xeb, 0xb6, 0x02, 0xad, 0xf5, 0xa2, 0x2e, 0x0b, 0x8f, 0x1d, 0xb4, 0x6a, 0x50, 0xae, 0xc3, 0x8f, 0xb2, 0xba, 0xf2, 0x21, 0xe9, 0xa8, 0xd1, 0x88, 0x7c, 0x7b, 0xf6, 0x22, 0x2d, 0xd1, 0x83, 0x46, 0x34, 0xe7, 0x72, 0x63, 0x31, 0x5a, 0xf6, 0xd2, 0x36, 0x09, 0xd0, 0x4f, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5076_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5076 = { .name = "ecdsa_secp256k1_sha256_5076", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5076_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5076_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 120 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5077 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5077_pubkey[] = { 0x45, 0x54, 0x39, 0xfc, 0xc3, 0xd2, 0xde, 0xec, 0xed, 0xde, 0xae, 0xce, 0x60, 0xe7, 0xbd, 0x17, 0x30, 0x4f, 0x36, 0xeb, 0xb6, 0x02, 0xad, 0xf5, 0xa2, 0x2e, 0x0b, 0x8f, 0x1d, 0xb4, 0x6a, 0x50, 0xae, 0xc3, 0x8f, 0xb2, 0xba, 0xf2, 0x21, 0xe9, 0xa8, 0xd1, 0x88, 0x7c, 0x7b, 0xf6, 0x22, 0x2d, 0xd1, 0x83, 0x46, 0x34, 0xe7, 0x72, 0x63, 0x31, 0x5a, 0xf6, 0xd2, 0x36, 0x09, 0xd0, 0x4f, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5077_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5077 = { .name = "ecdsa_secp256k1_sha256_5077", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5077_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5077_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 121 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5078 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5078_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5078_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5078 = { .name = "ecdsa_secp256k1_sha256_5078", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5078_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5078_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 122 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5079 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5079_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5079_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5079 = { .name = "ecdsa_secp256k1_sha256_5079", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5079_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5079_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5079_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 123 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5080 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5080_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5080_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5080 = { .name = "ecdsa_secp256k1_sha256_5080", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5080_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5080_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 124 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5081 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5081_pubkey[] = { 0xdd, 0xa9, 0x5d, 0x7b, 0x06, 0x98, 0xde, 0x5d, 0x2d, 0x0b, 0x4f, 0x00, 0x34, 0xdb, 0xe3, 0x5b, 0x50, 0xf9, 0x78, 0xfc, 0xc5, 0x18, 0xa8, 0x4a, 0xbf, 0x9c, 0x99, 0xef, 0xd9, 0x6a, 0x25, 0x30, 0x5a, 0xdc, 0x08, 0xd6, 0xa6, 0x3d, 0xbe, 0x83, 0x1a, 0xb9, 0x9c, 0xd9, 0x14, 0x6e, 0x3c, 0x4c, 0x45, 0x49, 0x2a, 0xd1, 0x95, 0x21, 0x61, 0x25, 0x42, 0x25, 0x6d, 0x6a, 0xf6, 0x0e, 0x78, 0x88, }; static const unsigned char ecdsa_secp256k1_sha256_5081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5081_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5081 = { .name = "ecdsa_secp256k1_sha256_5081", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5081_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5081_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 125 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5082 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5082_pubkey[] = { 0x02, 0xef, 0x4d, 0x6d, 0x6c, 0xfd, 0x5a, 0x94, 0xf1, 0xd7, 0x78, 0x42, 0x26, 0xe3, 0xe2, 0xa6, 0xc0, 0xa4, 0x36, 0xc5, 0x58, 0x39, 0x61, 0x9f, 0x38, 0xfb, 0x44, 0x72, 0xb5, 0xf9, 0xee, 0x77, 0x7e, 0xb4, 0xac, 0xd4, 0xee, 0xbd, 0xa5, 0xcd, 0x72, 0x87, 0x5f, 0xfd, 0x2a, 0x2f, 0x26, 0x22, 0x9c, 0x2d, 0xc6, 0xb4, 0x65, 0x00, 0x91, 0x9a, 0x43, 0x2c, 0x86, 0x73, 0x9f, 0x3a, 0xe8, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_5082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5082_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5082 = { .name = "ecdsa_secp256k1_sha256_5082", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5082_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5082_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 126 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5083 for ECDSA, tcId is 127 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5083_pubkey[] = { 0x46, 0x4f, 0x4f, 0xf7, 0x15, 0x72, 0x9c, 0xae, 0x50, 0x72, 0xca, 0x3b, 0xd8, 0x01, 0xd3, 0x19, 0x5b, 0x67, 0xae, 0xc6, 0x5e, 0x9b, 0x01, 0xaa, 0xd2, 0x0a, 0x29, 0x43, 0xdc, 0xbc, 0xb5, 0x84, 0xb1, 0xaf, 0xd2, 0x9d, 0x31, 0xa3, 0x9a, 0x11, 0xd5, 0x70, 0xaa, 0x15, 0x97, 0x43, 0x9b, 0x3b, 0x2d, 0x19, 0x71, 0xbf, 0x2f, 0x1a, 0xbf, 0x15, 0x43, 0x2d, 0x02, 0x07, 0xb1, 0x0d, 0x1d, 0x08, }; static const unsigned char ecdsa_secp256k1_sha256_5083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5083_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5083 = { .name = "ecdsa_secp256k1_sha256_5083", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5083_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5083_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 127 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5084 for ECDSA, tcId is 128 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5084_pubkey[] = { 0x15, 0x7f, 0x8f, 0xdd, 0xf3, 0x73, 0xeb, 0x5f, 0x49, 0xcf, 0xcf, 0x10, 0xd8, 0xb8, 0x53, 0xcf, 0x91, 0xcb, 0xcd, 0x7d, 0x66, 0x5c, 0x35, 0x22, 0xba, 0x7d, 0xd7, 0x38, 0xdd, 0xb7, 0x9a, 0x4c, 0xde, 0xad, 0xf1, 0xa5, 0xc4, 0x48, 0xea, 0x3c, 0x9f, 0x41, 0x91, 0xa8, 0x99, 0x9a, 0xbf, 0xcc, 0x75, 0x7a, 0xc6, 0xd6, 0x45, 0x67, 0xef, 0x07, 0x2c, 0x47, 0xfe, 0xc6, 0x13, 0x44, 0x3b, 0x8f, }; static const unsigned char ecdsa_secp256k1_sha256_5084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5084_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5084 = { .name = "ecdsa_secp256k1_sha256_5084", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5084_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5084_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 128 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5085 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5085_pubkey[] = { 0x09, 0x34, 0xa5, 0x37, 0x46, 0x6c, 0x07, 0x43, 0x0e, 0x2c, 0x48, 0xfe, 0xb9, 0x90, 0xbb, 0x19, 0xfb, 0x78, 0xce, 0xcc, 0x9c, 0xee, 0x42, 0x4e, 0xa4, 0xd1, 0x30, 0x29, 0x1a, 0xa2, 0x37, 0xf0, 0xd4, 0xf9, 0x2d, 0x23, 0xb4, 0x62, 0x80, 0x4b, 0x5b, 0x68, 0xc5, 0x25, 0x58, 0xc0, 0x1c, 0x99, 0x96, 0xdb, 0xf7, 0x27, 0xfc, 0xca, 0xbb, 0xee, 0xdb, 0x96, 0x21, 0xa4, 0x00, 0x53, 0x5a, 0xfa, }; static const unsigned char ecdsa_secp256k1_sha256_5085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5085_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5085 = { .name = "ecdsa_secp256k1_sha256_5085", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5085_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5085_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 129 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5086 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5086_pubkey[] = { 0xd6, 0xef, 0x20, 0xbe, 0x66, 0xc8, 0x93, 0xf7, 0x41, 0xa9, 0xbf, 0x90, 0xd9, 0xb7, 0x46, 0x75, 0xd1, 0xc2, 0xa3, 0x12, 0x96, 0x39, 0x7a, 0xcb, 0x3e, 0xf1, 0x74, 0xfd, 0x0b, 0x30, 0x0c, 0x65, 0x4a, 0x0c, 0x95, 0x47, 0x8c, 0xa0, 0x03, 0x99, 0x16, 0x2d, 0x7f, 0x0f, 0x2d, 0xc8, 0x9e, 0xfd, 0xc2, 0xb2, 0x8a, 0x30, 0xfb, 0xab, 0xe2, 0x85, 0x85, 0x72, 0x95, 0xa4, 0xb0, 0xc4, 0xe2, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5086_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5086 = { .name = "ecdsa_secp256k1_sha256_5086", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5086_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5086_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 130 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5087 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5087_pubkey[] = { 0xb7, 0x29, 0x1d, 0x14, 0x04, 0xe0, 0xc0, 0xc0, 0x7d, 0xab, 0x93, 0x72, 0x18, 0x9f, 0x4b, 0xd5, 0x8d, 0x2c, 0xea, 0xa8, 0xd1, 0x5e, 0xde, 0x54, 0x4d, 0x95, 0x14, 0x54, 0x5b, 0xa9, 0xee, 0x06, 0x29, 0xc9, 0xa6, 0x3d, 0x5e, 0x30, 0x87, 0x69, 0xcc, 0x30, 0xec, 0x27, 0x6a, 0x41, 0x0e, 0x64, 0x64, 0xa2, 0x7e, 0xea, 0xfd, 0x9e, 0x59, 0x9d, 0xb1, 0x0f, 0x05, 0x3a, 0x4f, 0xe4, 0xa8, 0x29, }; static const unsigned char ecdsa_secp256k1_sha256_5087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5087_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5087 = { .name = "ecdsa_secp256k1_sha256_5087", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5087_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5087_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 131 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5088 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5088_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5088_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5088 = { .name = "ecdsa_secp256k1_sha256_5088", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5088_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5088_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 132 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5089 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5089_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5089_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5089 = { .name = "ecdsa_secp256k1_sha256_5089", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5089_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5089_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 133 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5090 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5090_pubkey[] = { 0xd5, 0x33, 0xb7, 0x89, 0xa4, 0xaf, 0x89, 0x0f, 0xa7, 0xa8, 0x2a, 0x1f, 0xae, 0x58, 0xc4, 0x04, 0xf9, 0xa6, 0x2a, 0x50, 0xb4, 0x9a, 0xda, 0xfa, 0xb3, 0x49, 0xc5, 0x13, 0xb4, 0x15, 0x08, 0x74, 0x01, 0xb4, 0x17, 0x1b, 0x80, 0x3e, 0x76, 0xb3, 0x4a, 0x98, 0x61, 0xe1, 0x0f, 0x7b, 0xc2, 0x89, 0xa0, 0x66, 0xfd, 0x01, 0xbd, 0x29, 0xf8, 0x4c, 0x98, 0x7a, 0x10, 0xa5, 0xfb, 0x18, 0xc2, 0xd4, }; static const unsigned char ecdsa_secp256k1_sha256_5090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5090_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5090 = { .name = "ecdsa_secp256k1_sha256_5090", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5090_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5090_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 134 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5091 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5091_pubkey[] = { 0x3a, 0x31, 0x50, 0x79, 0x8c, 0x8a, 0xf6, 0x9d, 0x1e, 0x6e, 0x98, 0x1f, 0x3a, 0x45, 0x40, 0x2b, 0xa1, 0xd7, 0x32, 0xf4, 0xbe, 0x83, 0x30, 0xc5, 0x16, 0x4f, 0x49, 0xe1, 0x0e, 0xc5, 0x55, 0xb4, 0x22, 0x1b, 0xd8, 0x42, 0xbc, 0x5e, 0x4d, 0x97, 0xef, 0xf3, 0x71, 0x65, 0xf6, 0x0e, 0x39, 0x98, 0xa4, 0x24, 0xd7, 0x2a, 0x45, 0x0c, 0xf9, 0x5e, 0xa4, 0x77, 0xc7, 0x82, 0x87, 0xd0, 0x34, 0x3a, }; static const unsigned char ecdsa_secp256k1_sha256_5091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5091_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5091 = { .name = "ecdsa_secp256k1_sha256_5091", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5091_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5091_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 135 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5092 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5092_pubkey[] = { 0x3b, 0x37, 0xdf, 0x5f, 0xb3, 0x47, 0xc6, 0x9a, 0x0f, 0x17, 0xd8, 0x5c, 0x0c, 0x7c, 0xa8, 0x37, 0x36, 0x88, 0x3a, 0x82, 0x5e, 0x13, 0x14, 0x3d, 0x0f, 0xcf, 0xc8, 0x10, 0x1e, 0x85, 0x1e, 0x80, 0x0d, 0xe3, 0xc0, 0x90, 0xb6, 0xca, 0x21, 0xba, 0x54, 0x35, 0x17, 0x33, 0x0c, 0x04, 0xb1, 0x2f, 0x94, 0x8c, 0x6b, 0xad, 0xf1, 0x4a, 0x63, 0xab, 0xff, 0xdf, 0x4e, 0xf8, 0xc7, 0x53, 0x70, 0x26, }; static const unsigned char ecdsa_secp256k1_sha256_5092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5092_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5092 = { .name = "ecdsa_secp256k1_sha256_5092", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5092_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5092_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 136 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5093 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5093_pubkey[] = { 0xfe, 0xb5, 0x16, 0x3b, 0x0e, 0xce, 0x30, 0xff, 0x3e, 0x03, 0xc7, 0xd5, 0x5c, 0x43, 0x80, 0xfa, 0x2f, 0xa8, 0x1e, 0xe2, 0xc0, 0x35, 0x49, 0x42, 0xff, 0x6f, 0x08, 0xc9, 0x9d, 0x0c, 0xd8, 0x2c, 0xe8, 0x7d, 0xe0, 0x5e, 0xe1, 0xbd, 0xa0, 0x89, 0xd3, 0xe4, 0xe2, 0x48, 0xfa, 0x0f, 0x72, 0x11, 0x02, 0xac, 0xff, 0xfd, 0xf5, 0x0e, 0x65, 0x4b, 0xe2, 0x81, 0x43, 0x39, 0x99, 0xdf, 0x89, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha256_5093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5093_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5093 = { .name = "ecdsa_secp256k1_sha256_5093", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5093_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5093_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 137 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5094 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5094_pubkey[] = { 0x23, 0x8c, 0xed, 0x00, 0x1c, 0xf2, 0x2b, 0x88, 0x53, 0xe0, 0x2e, 0xdc, 0x89, 0xcb, 0xec, 0xa5, 0x05, 0x0b, 0xa7, 0xe0, 0x42, 0xa7, 0xa7, 0x7f, 0x93, 0x82, 0xcd, 0x41, 0x49, 0x22, 0x89, 0x76, 0x40, 0x68, 0x3d, 0x30, 0x94, 0x64, 0x38, 0x40, 0xf2, 0x95, 0x89, 0x0a, 0xa4, 0xc1, 0x8a, 0xa3, 0x9b, 0x41, 0xd7, 0x7d, 0xd0, 0xfb, 0x3b, 0xb2, 0x70, 0x0e, 0x4f, 0x9e, 0xc2, 0x84, 0xff, 0xc2, }; static const unsigned char ecdsa_secp256k1_sha256_5094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5094_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5094 = { .name = "ecdsa_secp256k1_sha256_5094", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5094_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5094_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 138 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5095 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5095_pubkey[] = { 0x96, 0x1c, 0xf6, 0x48, 0x17, 0xc0, 0x6c, 0x0e, 0x51, 0xb3, 0xc2, 0x73, 0x6c, 0x92, 0x2f, 0xde, 0x18, 0xbd, 0x8c, 0x49, 0x06, 0xfc, 0xd7, 0xf5, 0xef, 0x66, 0xc4, 0x67, 0x85, 0x08, 0xf3, 0x5e, 0xd2, 0xc5, 0xd1, 0x81, 0x68, 0xcf, 0xbe, 0x70, 0xf2, 0xf1, 0x23, 0xbd, 0x74, 0x19, 0x23, 0x2b, 0xb9, 0x2d, 0xd6, 0x91, 0x13, 0xe2, 0x94, 0x10, 0x61, 0x88, 0x94, 0x81, 0xc5, 0xa0, 0x27, 0xbf, }; static const unsigned char ecdsa_secp256k1_sha256_5095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5095_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5095 = { .name = "ecdsa_secp256k1_sha256_5095", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5095_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5095_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 139 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5096 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5096_pubkey[] = { 0x13, 0x68, 0x1e, 0xae, 0x16, 0x8c, 0xd4, 0xea, 0x7c, 0xf2, 0xe2, 0xa4, 0x5d, 0x05, 0x27, 0x42, 0xd1, 0x0a, 0x9f, 0x64, 0xe7, 0x96, 0x86, 0x7d, 0xbd, 0xcb, 0x82, 0x9f, 0xe0, 0xb1, 0x02, 0x88, 0x16, 0x52, 0x87, 0x60, 0xd1, 0x77, 0x37, 0x6c, 0x09, 0xdf, 0x79, 0xde, 0x39, 0x55, 0x7c, 0x32, 0x9c, 0xc1, 0x75, 0x35, 0x17, 0xac, 0xff, 0xe8, 0xfa, 0x2e, 0xc2, 0x98, 0x02, 0x6b, 0x83, 0x84, }; static const unsigned char ecdsa_secp256k1_sha256_5096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5096_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5096 = { .name = "ecdsa_secp256k1_sha256_5096", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5096_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5096_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 140 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5097 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5097_pubkey[] = { 0x5a, 0xa7, 0xab, 0xfd, 0xb6, 0xb4, 0x08, 0x6d, 0x54, 0x33, 0x25, 0xe5, 0xd7, 0x9c, 0x6e, 0x95, 0xce, 0x42, 0xf8, 0x66, 0xd2, 0xbb, 0x84, 0x90, 0x96, 0x33, 0xa0, 0x4b, 0xb1, 0xaa, 0x31, 0xc2, 0x91, 0xc8, 0x00, 0x88, 0x79, 0x49, 0x05, 0xe1, 0xda, 0x33, 0x33, 0x6d, 0x87, 0x4e, 0x2f, 0x91, 0xcc, 0xf4, 0x5c, 0xc5, 0x91, 0x85, 0xbe, 0xde, 0x5d, 0xd6, 0xf3, 0xf7, 0xac, 0xaa, 0xe1, 0x8b, }; static const unsigned char ecdsa_secp256k1_sha256_5097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5097_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe9, 0x1e, 0x1b, 0xa6, 0xba, 0x89, 0x86, 0x20, 0xa4, 0x6b, 0xcb, 0x51, 0xdc, 0x0b, 0x8b, 0x4a, 0xd1, 0xdc, 0x35, 0xda, 0xd8, 0x92, 0xc4, 0x55, 0x2d, 0x18, 0x47, 0xb2, 0xce, 0x44, 0x46, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5097 = { .name = "ecdsa_secp256k1_sha256_5097", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5097_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5097_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 141 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5098 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5098_pubkey[] = { 0x00, 0x27, 0x77, 0x91, 0xb3, 0x05, 0xa4, 0x5b, 0x2b, 0x39, 0x59, 0x0b, 0x2f, 0x05, 0xd3, 0x39, 0x2a, 0x6c, 0x81, 0x82, 0xce, 0xf4, 0xeb, 0x54, 0x01, 0x20, 0xe0, 0xf5, 0xc2, 0x06, 0xc3, 0xe4, 0x64, 0x10, 0x82, 0x33, 0xfb, 0x0b, 0x8c, 0x3a, 0xc8, 0x92, 0xd7, 0x9e, 0xf8, 0xe0, 0xfb, 0xf9, 0x2e, 0xd1, 0x33, 0xad, 0xdb, 0x45, 0x54, 0x27, 0x01, 0x32, 0x58, 0x4d, 0xc5, 0x2e, 0xef, 0x41, }; static const unsigned char ecdsa_secp256k1_sha256_5098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5098_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe3, 0x6b, 0xf0, 0xce, 0xc0, 0x6d, 0x9b, 0x84, 0x1d, 0xa8, 0x13, 0x32, 0x81, 0x2f, 0x74, 0xf3, 0x0b, 0xba, 0xec, 0x9f, 0x20, 0x23, 0x19, 0x20, 0x6c, 0x6f, 0x0b, 0x8a, 0x0a, 0x40, 0x0f, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5098 = { .name = "ecdsa_secp256k1_sha256_5098", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5098_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5098_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 142 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5099 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5099_pubkey[] = { 0x6e, 0xfa, 0x09, 0x2b, 0x68, 0xde, 0x94, 0x60, 0xf0, 0xbc, 0xc9, 0x19, 0x00, 0x5a, 0x5f, 0x6e, 0x80, 0xe1, 0x9d, 0xe9, 0x89, 0x68, 0xbe, 0x3c, 0xd2, 0xc7, 0x70, 0xa9, 0x94, 0x9b, 0xfb, 0x1a, 0xc7, 0x5e, 0x6e, 0x50, 0x87, 0xd6, 0x55, 0x0d, 0x5f, 0x9b, 0xeb, 0x1e, 0x79, 0xe5, 0x02, 0x93, 0x07, 0xbc, 0x25, 0x52, 0x35, 0xe2, 0xd5, 0xdc, 0x99, 0x24, 0x1a, 0xc3, 0xab, 0x88, 0x6c, 0x49, }; static const unsigned char ecdsa_secp256k1_sha256_5099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5099_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xea, 0x26, 0xb5, 0x7a, 0xf8, 0x84, 0xb6, 0xc0, 0x6e, 0x34, 0x8e, 0xfe, 0x13, 0x9c, 0x1e, 0x4e, 0x9e, 0xc9, 0x51, 0x8d, 0x60, 0xc3, 0x40, 0xf6, 0xba, 0xc7, 0xd2, 0x78, 0xca, 0x08, 0xd8, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5099 = { .name = "ecdsa_secp256k1_sha256_5099", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5099_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5099_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 143 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5100 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5100_pubkey[] = { 0x72, 0xd4, 0xa1, 0x9c, 0x4f, 0x9d, 0x2c, 0xf5, 0x84, 0x8e, 0xa4, 0x04, 0x45, 0xb7, 0x0d, 0x46, 0x96, 0xb5, 0xf0, 0x2d, 0x63, 0x2c, 0x0c, 0x65, 0x4c, 0xc7, 0xd7, 0xee, 0xb0, 0xc6, 0xd0, 0x58, 0xe8, 0xc4, 0xcd, 0x99, 0x43, 0xe4, 0x59, 0x17, 0x4c, 0x7a, 0xc0, 0x1f, 0xa7, 0x42, 0x19, 0x8e, 0x47, 0xe6, 0xc1, 0x9a, 0x6b, 0xdb, 0x0c, 0x4f, 0x6c, 0x23, 0x78, 0x31, 0xc1, 0xb3, 0xf9, 0x42, }; static const unsigned char ecdsa_secp256k1_sha256_5100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5100_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x1d, 0x27, 0xa7, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9d, 0x9e, 0xf3, 0xb9, 0xfb, 0x58, 0x38, 0x54, 0x18, 0xd9, 0xc9, 0x82, 0x10, 0x50, 0x77, 0xd1, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5100 = { .name = "ecdsa_secp256k1_sha256_5100", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5100_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5100_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5100_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 144 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5101 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5101_pubkey[] = { 0x2a, 0x8e, 0xa2, 0xf5, 0x0d, 0xcc, 0xed, 0x0c, 0x21, 0x75, 0x75, 0xbd, 0xfa, 0x7c, 0xd4, 0x7d, 0x1c, 0x6f, 0x10, 0x00, 0x41, 0xec, 0x0e, 0x35, 0x51, 0x27, 0x94, 0xc1, 0xbe, 0x7e, 0x74, 0x02, 0x58, 0xf8, 0xc1, 0x71, 0x22, 0xed, 0x30, 0x3f, 0xda, 0x71, 0x43, 0xeb, 0x58, 0xbe, 0xde, 0x70, 0x29, 0x5b, 0x65, 0x32, 0x66, 0x01, 0x3b, 0x0b, 0x0e, 0xbd, 0x3f, 0x05, 0x31, 0x37, 0xf6, 0xec, }; static const unsigned char ecdsa_secp256k1_sha256_5101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5101_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd2, 0x7a, 0x76, 0x94, 0xc1, 0x46, 0x24, 0x4a, 0x5a, 0xd0, 0xbd, 0x06, 0x36, 0xd9, 0xe1, 0x2a, 0xbe, 0x68, 0x78, 0x97, 0xe8, 0xe9, 0x99, 0x8d, 0xdb, 0xd4, 0xe5, 0x9a, 0x78, 0x52, 0x0d, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5101 = { .name = "ecdsa_secp256k1_sha256_5101", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5101_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5101_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5101_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 145 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5102 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5102_pubkey[] = { 0x88, 0xde, 0x68, 0x9c, 0xe9, 0xaf, 0x1e, 0x94, 0xbe, 0x6a, 0x20, 0x89, 0xc8, 0xa8, 0xb1, 0x25, 0x3f, 0xfd, 0xbb, 0x6c, 0x8e, 0x9c, 0x86, 0x24, 0x9b, 0xa2, 0x20, 0x00, 0x1a, 0x4a, 0xd3, 0xb8, 0x0c, 0x49, 0x98, 0xe5, 0x48, 0x42, 0xf4, 0x13, 0xb9, 0xed, 0xb1, 0x82, 0x5a, 0xcb, 0xb6, 0x33, 0x5e, 0x81, 0xe4, 0xd1, 0x84, 0xb2, 0xb0, 0x1c, 0x8b, 0xeb, 0xdc, 0x85, 0xd1, 0xf2, 0x89, 0x46, }; static const unsigned char ecdsa_secp256k1_sha256_5102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5102_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa4, 0xf4, 0xed, 0x29, 0x82, 0x8c, 0x48, 0x94, 0xb5, 0xa1, 0x7a, 0x0c, 0x6d, 0xb3, 0xc2, 0x56, 0xc2, 0x22, 0x14, 0x49, 0x22, 0x8a, 0x92, 0xdf, 0xf7, 0xd7, 0x6c, 0xa8, 0x20, 0x6d, 0xd8, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5102 = { .name = "ecdsa_secp256k1_sha256_5102", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5102_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5102_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5102_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 146 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5103 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5103_pubkey[] = { 0xfe, 0xa2, 0xd3, 0x1f, 0x70, 0xf9, 0x0d, 0x5f, 0xb3, 0xe0, 0x0e, 0x18, 0x6a, 0xc4, 0x2a, 0xb3, 0xc1, 0x61, 0x5c, 0xee, 0x71, 0x4e, 0x0b, 0x4e, 0x11, 0x31, 0xb3, 0xd4, 0xd8, 0x22, 0x5b, 0xf7, 0xb0, 0x37, 0xa1, 0x8d, 0xf2, 0xac, 0x15, 0x34, 0x3f, 0x30, 0xf7, 0x40, 0x67, 0xdd, 0xf2, 0x9e, 0x81, 0x7d, 0x5f, 0x77, 0xf8, 0xdc, 0xe0, 0x57, 0x14, 0xda, 0x59, 0xc0, 0x94, 0xf0, 0xcd, 0xa9, }; static const unsigned char ecdsa_secp256k1_sha256_5103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5103_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x09, 0xe6, 0x0e, 0x68, 0xb9, 0x0d, 0x0b, 0x5e, 0x6c, 0x5d, 0xdd, 0xd0, 0xcb, 0x69, 0x4d, 0x87, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5103 = { .name = "ecdsa_secp256k1_sha256_5103", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5103_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5103_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5103_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 147 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5104 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5104_pubkey[] = { 0x72, 0x58, 0x91, 0x1e, 0x3d, 0x42, 0x33, 0x49, 0x16, 0x64, 0x79, 0xdb, 0xe0, 0xb8, 0x34, 0x1a, 0xf7, 0xfb, 0xd0, 0x3d, 0x0a, 0x7e, 0x10, 0xed, 0xcc, 0xb3, 0x6b, 0x6c, 0xee, 0xa5, 0xa3, 0xdb, 0x17, 0xac, 0x2b, 0x89, 0x92, 0x79, 0x11, 0x28, 0xfa, 0x3b, 0x96, 0xdc, 0x2f, 0xbd, 0x4c, 0xa3, 0xbf, 0xa7, 0x82, 0xef, 0x28, 0x32, 0xfc, 0x66, 0x56, 0x94, 0x3d, 0xb1, 0x8e, 0x73, 0x46, 0xb0, }; static const unsigned char ecdsa_secp256k1_sha256_5104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5104_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3d, 0x7f, 0x48, 0x7c, 0x07, 0xbf, 0xc5, 0xf3, 0x08, 0x46, 0x93, 0x8a, 0x3d, 0xce, 0xf6, 0x96, 0x44, 0x47, 0x07, 0xcf, 0x96, 0x77, 0x25, 0x4a, 0x92, 0xb0, 0x6c, 0x63, 0xab, 0x86, 0x7d, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5104 = { .name = "ecdsa_secp256k1_sha256_5104", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5104_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5104_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5104_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 148 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5105 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5105_pubkey[] = { 0x4f, 0x28, 0x46, 0x1d, 0xea, 0x64, 0x47, 0x4d, 0x6b, 0xb3, 0x4d, 0x14, 0x99, 0xc9, 0x7d, 0x37, 0xb9, 0xe9, 0x56, 0x33, 0xdf, 0x1c, 0xee, 0xea, 0xac, 0xd4, 0x50, 0x16, 0xc9, 0x8b, 0x39, 0x14, 0xc8, 0x81, 0x88, 0x10, 0xb8, 0xcc, 0x06, 0xdd, 0xb4, 0x0e, 0x8a, 0x12, 0x61, 0xc5, 0x28, 0xfa, 0xa5, 0x89, 0x45, 0x5d, 0x5a, 0x6d, 0xf9, 0x3b, 0x77, 0xbc, 0x5e, 0x0e, 0x49, 0x3c, 0x74, 0x70, }; static const unsigned char ecdsa_secp256k1_sha256_5105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5105_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x6c, 0x76, 0x48, 0xfc, 0x0f, 0xbf, 0x8a, 0x06, 0xad, 0xb8, 0xb8, 0x39, 0xf9, 0x7b, 0x4f, 0xf7, 0xa8, 0x00, 0xf1, 0x1b, 0x1e, 0x37, 0xc5, 0x93, 0xb2, 0x61, 0x39, 0x45, 0x99, 0x79, 0x2b, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5105 = { .name = "ecdsa_secp256k1_sha256_5105", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5105_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5105_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5105_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 149 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5106 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5106_pubkey[] = { 0x74, 0xf2, 0xa8, 0x14, 0xfb, 0x5d, 0x8e, 0xca, 0x91, 0xa6, 0x9b, 0x5e, 0x60, 0x71, 0x27, 0x32, 0xb3, 0x93, 0x7d, 0xe3, 0x28, 0x29, 0xbe, 0x97, 0x4e, 0xd7, 0xb6, 0x8c, 0x5c, 0x2f, 0x5d, 0x66, 0xef, 0xf0, 0xf0, 0x7c, 0x56, 0xf9, 0x87, 0xa6, 0x57, 0xf4, 0x21, 0x96, 0x20, 0x5f, 0x58, 0x8c, 0x0f, 0x1d, 0x96, 0xfd, 0x8a, 0x63, 0xa5, 0xf2, 0x38, 0xb4, 0x8f, 0x47, 0x87, 0x88, 0xfe, 0x3b, }; static const unsigned char ecdsa_secp256k1_sha256_5106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5106_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9b, 0xe3, 0x63, 0xa2, 0x86, 0xf2, 0x3f, 0x63, 0x22, 0xc2, 0x05, 0x44, 0x9d, 0x32, 0x0b, 0xaa, 0xd4, 0x17, 0x95, 0x3e, 0xcb, 0x70, 0xf6, 0x21, 0x4e, 0x90, 0xd4, 0x9d, 0x7d, 0x1f, 0x26, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5106 = { .name = "ecdsa_secp256k1_sha256_5106", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5106_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5106_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5106_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 150 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5107 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5107_pubkey[] = { 0x19, 0x5b, 0x51, 0xa7, 0xcc, 0x4a, 0x21, 0xb8, 0x27, 0x4a, 0x70, 0xa9, 0x0d, 0xe7, 0x79, 0x81, 0x4c, 0x3c, 0x8c, 0xa3, 0x58, 0x32, 0x82, 0x08, 0xc0, 0x9a, 0x29, 0xf3, 0x36, 0xb8, 0x2d, 0x6a, 0xb2, 0x41, 0x6b, 0x7c, 0x92, 0xff, 0xfd, 0xc2, 0x9c, 0x3b, 0x12, 0x82, 0xdd, 0x2a, 0x77, 0xa4, 0xd0, 0x4d, 0xf7, 0xf7, 0x45, 0x20, 0x47, 0x39, 0x3d, 0x84, 0x99, 0x89, 0xc5, 0xce, 0xe9, 0xad, }; static const unsigned char ecdsa_secp256k1_sha256_5107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5107_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x29, 0x79, 0x8c, 0x5c, 0x45, 0xbd, 0xf5, 0x8b, 0x4a, 0x7b, 0x2f, 0xdc, 0x2c, 0x46, 0xab, 0x4a, 0xf1, 0x21, 0x8c, 0x7e, 0xeb, 0x9f, 0x0f, 0x27, 0xa8, 0x8f, 0x12, 0x67, 0x67, 0x4d, 0xe3, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5107 = { .name = "ecdsa_secp256k1_sha256_5107", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5107_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5107_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5107_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 151 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5108 for ECDSA, tcId is 152 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5108_pubkey[] = { 0x62, 0x2f, 0xc7, 0x47, 0x32, 0x03, 0x4b, 0xec, 0x2d, 0xdf, 0x3b, 0xc1, 0x6d, 0x34, 0xb3, 0xd1, 0xf7, 0xa3, 0x27, 0xdd, 0x2a, 0x8c, 0x19, 0xba, 0xb4, 0xbb, 0x4f, 0xe3, 0xa2, 0x4b, 0x58, 0xaa, 0x73, 0x6b, 0x2f, 0x2f, 0xae, 0x76, 0xf4, 0xdf, 0xae, 0xcc, 0x90, 0x96, 0x33, 0x3b, 0x01, 0x32, 0x8d, 0x51, 0xeb, 0x3f, 0xda, 0x9c, 0x92, 0x27, 0xe9, 0x0d, 0x0b, 0x44, 0x99, 0x83, 0xc4, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_5108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5108_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0b, 0x70, 0xf2, 0x2c, 0xa2, 0xbb, 0x3c, 0xef, 0xad, 0xca, 0x1a, 0x57, 0x11, 0xfa, 0x3a, 0x59, 0xf4, 0x69, 0x53, 0x85, 0xeb, 0x5a, 0xed, 0xf3, 0x49, 0x5d, 0x0b, 0x6d, 0x00, 0xf8, 0xfd, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5108 = { .name = "ecdsa_secp256k1_sha256_5108", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5108_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5108_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5108_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 152 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5109 for ECDSA, tcId is 153 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5109_pubkey[] = { 0x1f, 0x7f, 0x85, 0xca, 0xf2, 0xd7, 0x55, 0x0e, 0x7a, 0xf9, 0xb6, 0x50, 0x23, 0xeb, 0xb4, 0xdc, 0xe3, 0x45, 0x03, 0x11, 0x69, 0x23, 0x09, 0xdb, 0x26, 0x99, 0x69, 0xb8, 0x34, 0xb6, 0x11, 0xc7, 0x08, 0x27, 0xf4, 0x5b, 0x78, 0x02, 0x0e, 0xcb, 0xba, 0xf4, 0x84, 0xfd, 0xd5, 0xbf, 0xaa, 0xe6, 0x87, 0x0f, 0x11, 0x84, 0xc2, 0x15, 0x81, 0xba, 0xf6, 0xef, 0x82, 0xbd, 0x7b, 0x53, 0x0f, 0x93, }; static const unsigned char ecdsa_secp256k1_sha256_5109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5109_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x16, 0xe1, 0xe4, 0x59, 0x45, 0x76, 0x79, 0xdf, 0x5b, 0x94, 0x34, 0xae, 0x23, 0xf4, 0x74, 0xb3, 0xe8, 0xd2, 0xa7, 0x0b, 0xd6, 0xb5, 0xdb, 0xe6, 0x92, 0xba, 0x16, 0xda, 0x01, 0xf1, 0xfb, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5109 = { .name = "ecdsa_secp256k1_sha256_5109", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5109_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5109_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5109_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 153 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5110 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5110_pubkey[] = { 0x49, 0xc1, 0x97, 0xdc, 0x80, 0xad, 0x1d, 0xa4, 0x7a, 0x43, 0x42, 0xb9, 0x38, 0x93, 0xe8, 0xe1, 0xfb, 0x0b, 0xb9, 0x4f, 0xc3, 0x3a, 0x83, 0xe7, 0x83, 0xc0, 0x0b, 0x24, 0xc7, 0x81, 0x37, 0x7a, 0xef, 0xc2, 0x0d, 0xa9, 0x2b, 0xac, 0x76, 0x29, 0x51, 0xf7, 0x24, 0x74, 0xbe, 0xcc, 0x73, 0x4d, 0x4c, 0xc2, 0x2b, 0xa8, 0x1b, 0x89, 0x5e, 0x28, 0x2f, 0xda, 0xc4, 0xdf, 0x7a, 0xf0, 0xf3, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5110_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x22, 0x52, 0xd6, 0x85, 0xe8, 0x31, 0xb6, 0xcf, 0x09, 0x5e, 0x4f, 0x05, 0x35, 0xee, 0xaf, 0x0d, 0xdd, 0x3b, 0xfa, 0x91, 0xc2, 0x10, 0xc9, 0xd9, 0xdc, 0x17, 0x22, 0x47, 0x02, 0xea, 0xf8, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5110 = { .name = "ecdsa_secp256k1_sha256_5110", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5110_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5110_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5110_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 154 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5111 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5111_pubkey[] = { 0xd8, 0xcb, 0x68, 0x51, 0x7b, 0x61, 0x6a, 0x56, 0x40, 0x0a, 0xa3, 0x86, 0x86, 0x35, 0xe5, 0x4b, 0x6f, 0x69, 0x95, 0x98, 0xa2, 0xf6, 0x16, 0x77, 0x57, 0x65, 0x49, 0x80, 0xba, 0xf6, 0xac, 0xbe, 0x7e, 0xc8, 0xcf, 0x44, 0x9c, 0x84, 0x9a, 0xa0, 0x34, 0x61, 0xa3, 0x0e, 0xfa, 0xda, 0x41, 0x45, 0x3c, 0x57, 0xc6, 0xe6, 0xfb, 0xc9, 0x3b, 0xbc, 0x6f, 0xa4, 0x9a, 0xda, 0x6d, 0xc0, 0x55, 0x5c, }; static const unsigned char ecdsa_secp256k1_sha256_5111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5111_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x75, 0x13, 0x5a, 0xbd, 0x7c, 0x42, 0x5b, 0x60, 0x37, 0x1a, 0x47, 0x7f, 0x09, 0xce, 0x0f, 0x27, 0x4f, 0x64, 0xa8, 0xc6, 0xb0, 0x61, 0xa0, 0x7b, 0x5d, 0x63, 0xe9, 0x3c, 0x65, 0x04, 0x6c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5111 = { .name = "ecdsa_secp256k1_sha256_5111", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5111_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5111_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5111_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 155 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5112 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5112_pubkey[] = { 0x03, 0x07, 0x13, 0xfb, 0x63, 0xf2, 0xaa, 0x6f, 0xe2, 0xca, 0xdf, 0x1b, 0x20, 0xef, 0xc2, 0x59, 0xc7, 0x74, 0x45, 0xda, 0xfa, 0x87, 0xda, 0xc3, 0x98, 0xb8, 0x40, 0x65, 0xca, 0x34, 0x7d, 0xf3, 0xb2, 0x27, 0x81, 0x8d, 0xe1, 0xa3, 0x9b, 0x58, 0x9c, 0xb0, 0x71, 0xd8, 0x3e, 0x53, 0x17, 0xcc, 0xcd, 0xc2, 0x33, 0x8e, 0x51, 0xe3, 0x12, 0xfe, 0x31, 0xd8, 0xdc, 0x34, 0xa4, 0x80, 0x17, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_5112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5112_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5112 = { .name = "ecdsa_secp256k1_sha256_5112", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5112_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5112_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5112_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 156 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5113 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5113_pubkey[] = { 0xba, 0xbb, 0x36, 0x77, 0xb0, 0x95, 0x58, 0x02, 0xd8, 0xe9, 0x29, 0xa4, 0x13, 0x55, 0x64, 0x0e, 0xaf, 0x1e, 0xa1, 0x35, 0x3f, 0x8a, 0x77, 0x13, 0x31, 0xc4, 0x94, 0x6e, 0x34, 0x80, 0xaf, 0xa7, 0x25, 0x2f, 0x19, 0x6c, 0x87, 0xed, 0x3d, 0x2a, 0x59, 0xd3, 0xb1, 0xb5, 0x59, 0x13, 0x7f, 0xed, 0x00, 0x13, 0xfe, 0xce, 0xfc, 0x19, 0xfb, 0x5a, 0x92, 0x68, 0x2b, 0x9b, 0xca, 0x51, 0xb9, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_5113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5113_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5113 = { .name = "ecdsa_secp256k1_sha256_5113", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5113_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5113_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5113_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 157 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5114 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5114_pubkey[] = { 0x1a, 0xab, 0x20, 0x18, 0x79, 0x34, 0x71, 0x11, 0x1a, 0x8a, 0x0e, 0x9b, 0x14, 0x3f, 0xde, 0x02, 0xfc, 0x95, 0x92, 0x07, 0x96, 0xd3, 0xa6, 0x3d, 0xe3, 0x29, 0xb4, 0x24, 0x39, 0x6f, 0xba, 0x60, 0xbb, 0xe4, 0x13, 0x07, 0x05, 0x17, 0x47, 0x92, 0x44, 0x1b, 0x31, 0x8d, 0x3a, 0xa3, 0x1d, 0xfe, 0x85, 0x77, 0x82, 0x1e, 0x9b, 0x44, 0x6e, 0xc5, 0x73, 0xd2, 0x72, 0xe0, 0x36, 0xc4, 0xeb, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5114_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5114 = { .name = "ecdsa_secp256k1_sha256_5114", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5114_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5114_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5114_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 158 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5115 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5115_pubkey[] = { 0x8c, 0xb0, 0xb9, 0x09, 0x49, 0x9c, 0x83, 0xea, 0x80, 0x6c, 0xd8, 0x85, 0xb1, 0xdd, 0x46, 0x7a, 0x01, 0x19, 0xf0, 0x6a, 0x88, 0xa0, 0x27, 0x6e, 0xb0, 0xcf, 0xda, 0x27, 0x45, 0x35, 0xa8, 0xff, 0x47, 0xb5, 0x42, 0x88, 0x33, 0xbc, 0x3f, 0x2c, 0x8b, 0xf9, 0xd9, 0x04, 0x11, 0x58, 0xcf, 0x33, 0x71, 0x8a, 0x69, 0x96, 0x1c, 0xd0, 0x17, 0x29, 0xbc, 0x00, 0x11, 0xd1, 0xe5, 0x86, 0xab, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_5115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5115_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5115 = { .name = "ecdsa_secp256k1_sha256_5115", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5115_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5115_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5115_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 159 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5116 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5116_pubkey[] = { 0x8f, 0x03, 0xcf, 0x1a, 0x42, 0x27, 0x2b, 0xb1, 0x53, 0x27, 0x23, 0x09, 0x3f, 0x72, 0xe6, 0xfe, 0xea, 0xc8, 0x5e, 0x17, 0x00, 0xe9, 0xfb, 0xe9, 0xa6, 0xa2, 0xdd, 0x64, 0x2d, 0x74, 0xbf, 0x5d, 0x3b, 0x89, 0xa7, 0x18, 0x9d, 0xad, 0x8c, 0xf7, 0x5f, 0xc2, 0x2f, 0x6f, 0x15, 0x8a, 0xa2, 0x7f, 0x9c, 0x2c, 0xa0, 0x0d, 0xac, 0xa7, 0x85, 0xbe, 0x33, 0x58, 0xf2, 0xbd, 0xa3, 0x86, 0x2c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5116_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5116 = { .name = "ecdsa_secp256k1_sha256_5116", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5116_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5116_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5116_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 160 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5117 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5117_pubkey[] = { 0x44, 0xde, 0x3b, 0x9c, 0x7a, 0x57, 0xa8, 0xc9, 0xe8, 0x20, 0x95, 0x27, 0x53, 0x42, 0x1e, 0x7d, 0x98, 0x7b, 0xb3, 0xd7, 0x9f, 0x71, 0xf0, 0x13, 0x80, 0x5c, 0x89, 0x7e, 0x01, 0x8f, 0x8a, 0xce, 0xa2, 0x46, 0x07, 0x58, 0xc8, 0xf9, 0x8d, 0x3f, 0xdc, 0xe1, 0x21, 0xa9, 0x43, 0x65, 0x9e, 0x37, 0x2c, 0x32, 0x6f, 0xff, 0x2e, 0x5f, 0xc2, 0xae, 0x7f, 0xa3, 0xf7, 0x9d, 0xaa, 0xe1, 0x3c, 0x12, }; static const unsigned char ecdsa_secp256k1_sha256_5117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5117_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5117 = { .name = "ecdsa_secp256k1_sha256_5117", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5117_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5117_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5117_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 161 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5118 for ECDSA, tcId is 162 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5118_pubkey[] = { 0x6f, 0xb8, 0xb2, 0xb4, 0x8e, 0x33, 0x03, 0x12, 0x68, 0xad, 0x6a, 0x51, 0x74, 0x84, 0xdc, 0x88, 0x39, 0xea, 0x90, 0xf6, 0x66, 0x9e, 0xa0, 0xc7, 0xac, 0x32, 0x33, 0xe2, 0xac, 0x31, 0x39, 0x4a, 0x0a, 0xc8, 0xbb, 0xe7, 0xf7, 0x3c, 0x2f, 0xf4, 0xdf, 0x99, 0x78, 0x72, 0x7a, 0xc1, 0xdf, 0xc2, 0xfd, 0x58, 0x64, 0x7d, 0x20, 0xf3, 0x1f, 0x99, 0x10, 0x53, 0x16, 0xb6, 0x46, 0x71, 0xf2, 0x04, }; static const unsigned char ecdsa_secp256k1_sha256_5118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5118_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5118 = { .name = "ecdsa_secp256k1_sha256_5118", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5118_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5118_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5118_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 162 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5119 for ECDSA, tcId is 163 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5119_pubkey[] = { 0xbe, 0xa7, 0x11, 0x22, 0xa0, 0x48, 0x69, 0x3e, 0x90, 0x5f, 0xf6, 0x02, 0xb3, 0xcf, 0x9d, 0xd1, 0x8a, 0xf6, 0x9b, 0x9f, 0xc9, 0xd8, 0x43, 0x1d, 0x2b, 0x1d, 0xd2, 0x6b, 0x94, 0x2c, 0x95, 0xe6, 0xf4, 0x3c, 0x7b, 0x8b, 0x95, 0xeb, 0x62, 0x08, 0x2c, 0x12, 0xdb, 0x9d, 0xbd, 0xa7, 0xfe, 0x38, 0xe4, 0x5c, 0xbe, 0x4a, 0x48, 0x86, 0x90, 0x7f, 0xb8, 0x1b, 0xdb, 0x0c, 0x5e, 0xa9, 0x24, 0x6c, }; static const unsigned char ecdsa_secp256k1_sha256_5119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5119_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5119 = { .name = "ecdsa_secp256k1_sha256_5119", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5119_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5119_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5119_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 163 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5120 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5120_pubkey[] = { 0xda, 0x91, 0x8c, 0x73, 0x1b, 0xa0, 0x6a, 0x20, 0xcb, 0x94, 0xef, 0x33, 0xb7, 0x78, 0xe9, 0x81, 0xa4, 0x04, 0xa3, 0x05, 0xf1, 0x94, 0x1f, 0xe3, 0x36, 0x66, 0xb4, 0x5b, 0x03, 0x35, 0x31, 0x56, 0xe2, 0xbb, 0x26, 0x94, 0xf5, 0x75, 0xb4, 0x51, 0x83, 0xbe, 0x78, 0xe5, 0xc9, 0xb5, 0x21, 0x0b, 0xf3, 0xbf, 0x48, 0x8f, 0xd4, 0xc8, 0x29, 0x45, 0x16, 0xd8, 0x95, 0x72, 0xca, 0x4f, 0x53, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_5120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5120_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5120 = { .name = "ecdsa_secp256k1_sha256_5120", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5120_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5120_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5120_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 164 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5121 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5121_pubkey[] = { 0x30, 0x07, 0xe9, 0x2c, 0x39, 0x37, 0xda, 0xde, 0x79, 0x64, 0xdf, 0xa3, 0x5b, 0x0e, 0xff, 0x03, 0x1f, 0x7e, 0xb0, 0x2a, 0xed, 0x0a, 0x03, 0x14, 0x41, 0x11, 0x06, 0xcd, 0xeb, 0x70, 0xfe, 0x3d, 0x5a, 0x75, 0x46, 0xfc, 0x05, 0x52, 0x99, 0x7b, 0x20, 0xe3, 0xd6, 0xf4, 0x13, 0xe7, 0x5e, 0x2c, 0xb6, 0x6e, 0x11, 0x63, 0x22, 0x69, 0x71, 0x14, 0xb7, 0x9b, 0xac, 0x73, 0x4b, 0xfc, 0x4d, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_5121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5121_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5121 = { .name = "ecdsa_secp256k1_sha256_5121", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5121_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5121_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5121_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 165 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5122 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5122_pubkey[] = { 0x60, 0xe7, 0x34, 0xef, 0x56, 0x24, 0xd3, 0xcb, 0xf0, 0xdd, 0xd3, 0x75, 0x01, 0x1b, 0xd6, 0x63, 0xd6, 0xd6, 0xae, 0xbc, 0x64, 0x4e, 0xb5, 0x99, 0xfd, 0xf9, 0x8d, 0xbd, 0xcd, 0x18, 0xce, 0x9b, 0xd2, 0xd9, 0x0b, 0x3a, 0xc3, 0x1f, 0x13, 0x9a, 0xf8, 0x32, 0xcc, 0xcf, 0x6c, 0xcb, 0xbb, 0x2c, 0x6e, 0xa1, 0x1f, 0xa9, 0x73, 0x70, 0xdc, 0x99, 0x06, 0xda, 0x47, 0x4d, 0x7d, 0x8a, 0x75, 0x67, }; static const unsigned char ecdsa_secp256k1_sha256_5122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5122_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5122 = { .name = "ecdsa_secp256k1_sha256_5122", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5122_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5122_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5122_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 166 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5123 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5123_pubkey[] = { 0x85, 0xa9, 0x00, 0xe9, 0x78, 0x58, 0xf6, 0x93, 0xc0, 0xb7, 0xdf, 0xa2, 0x61, 0xe3, 0x80, 0xda, 0xd6, 0xea, 0x04, 0x6d, 0x1f, 0x65, 0xdd, 0xee, 0xed, 0xd5, 0xf7, 0xd8, 0xaf, 0x0b, 0xa3, 0x37, 0x69, 0x74, 0x4d, 0x15, 0xad, 0xd4, 0xf6, 0xc0, 0xbc, 0x3b, 0x0d, 0xa2, 0xae, 0xc9, 0x3b, 0x34, 0xcb, 0x8c, 0x65, 0xf9, 0x34, 0x0d, 0xdf, 0x74, 0xe7, 0xb0, 0x00, 0x9e, 0xee, 0xcc, 0xce, 0x3c, }; static const unsigned char ecdsa_secp256k1_sha256_5123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5123_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5123 = { .name = "ecdsa_secp256k1_sha256_5123", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5123_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5123_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5123_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 167 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5124 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5124_pubkey[] = { 0x38, 0x06, 0x6f, 0x75, 0xd8, 0x8e, 0xfc, 0x4c, 0x93, 0xde, 0x36, 0xf4, 0x9e, 0x03, 0x7b, 0x23, 0x4c, 0xc1, 0x8b, 0x1d, 0xe5, 0x60, 0x87, 0x50, 0xa6, 0x2c, 0xab, 0x03, 0x45, 0x40, 0x10, 0x46, 0xa3, 0xe8, 0x4b, 0xed, 0x8c, 0xfc, 0xb8, 0x19, 0xef, 0x4d, 0x55, 0x04, 0x44, 0xf2, 0xce, 0x4b, 0x65, 0x17, 0x66, 0xb6, 0x9e, 0x2e, 0x29, 0x01, 0xf8, 0x88, 0x36, 0xff, 0x90, 0x03, 0x4f, 0xed, }; static const unsigned char ecdsa_secp256k1_sha256_5124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5124_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5124 = { .name = "ecdsa_secp256k1_sha256_5124", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5124_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5124_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5124_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 168 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5125 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5125_pubkey[] = { 0x98, 0xf6, 0x81, 0x77, 0xdc, 0x95, 0xc1, 0xb4, 0xcb, 0xfa, 0x52, 0x45, 0x48, 0x8c, 0xa5, 0x23, 0xa7, 0xd5, 0x62, 0x94, 0x70, 0xd0, 0x35, 0xd6, 0x21, 0xa4, 0x43, 0xc7, 0x2f, 0x39, 0xaa, 0xbf, 0xa3, 0x3d, 0x29, 0x54, 0x6f, 0xa1, 0xc6, 0x48, 0xf2, 0xc7, 0xd5, 0xcc, 0xf7, 0x0c, 0xf1, 0xce, 0x4a, 0xb7, 0x9b, 0x5d, 0xb1, 0xac, 0x05, 0x9d, 0xbe, 0xcd, 0x06, 0x8d, 0xbd, 0xff, 0x1b, 0x89, }; static const unsigned char ecdsa_secp256k1_sha256_5125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5125_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5125 = { .name = "ecdsa_secp256k1_sha256_5125", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5125_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5125_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5125_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 169 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5126 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5126_pubkey[] = { 0x5c, 0x2b, 0xbf, 0xa2, 0x3c, 0x9b, 0x9a, 0xd0, 0x7f, 0x03, 0x8a, 0xa8, 0x9b, 0x49, 0x30, 0xbf, 0x26, 0x7d, 0x94, 0x01, 0xe4, 0x25, 0x5d, 0xe9, 0xe8, 0xda, 0x0a, 0x50, 0x78, 0xec, 0x82, 0x77, 0xe3, 0xe8, 0x82, 0xa3, 0x1d, 0x5e, 0x6a, 0x37, 0x9e, 0x07, 0x93, 0x98, 0x3c, 0xcd, 0xed, 0x39, 0xb9, 0x5c, 0x43, 0x53, 0xab, 0x2f, 0xf0, 0x1e, 0xa5, 0x36, 0x9b, 0xa4, 0x7b, 0x0c, 0x31, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_5126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5126_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5126 = { .name = "ecdsa_secp256k1_sha256_5126", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5126_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5126_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5126_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 170 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5127 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5127_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0x35, 0x47, 0x80, 0x82, 0x98, 0x44, 0x8e, 0xdb, 0x5e, 0x70, 0x1a, 0xde, 0x84, 0xcd, 0x5f, 0xb1, 0xac, 0x95, 0x67, 0xba, 0x5e, 0x8f, 0xb6, 0x8a, 0x6b, 0x93, 0x3e, 0xc4, 0xb5, 0xcc, 0x84, 0xcc, }; static const unsigned char ecdsa_secp256k1_sha256_5127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5127_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5127 = { .name = "ecdsa_secp256k1_sha256_5127", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5127_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5127_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5127_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 171 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5128 for ECDSA, tcId is 172 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5128_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0xca, 0xb8, 0x7f, 0x7d, 0x67, 0xbb, 0x71, 0x24, 0xa1, 0x8f, 0xe5, 0x21, 0x7b, 0x32, 0xa0, 0x4e, 0x53, 0x6a, 0x98, 0x45, 0xa1, 0x70, 0x49, 0x75, 0x94, 0x6c, 0xc1, 0x3a, 0x4a, 0x33, 0x77, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_5128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5128_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5128 = { .name = "ecdsa_secp256k1_sha256_5128", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5128_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5128_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5128_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 172 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5129 for ECDSA, tcId is 173 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5129_pubkey[] = { 0x8a, 0xa2, 0xc6, 0x4f, 0xa9, 0xc6, 0x43, 0x75, 0x63, 0xab, 0xfb, 0xcb, 0xd0, 0x0b, 0x20, 0x48, 0xd4, 0x8c, 0x18, 0xc1, 0x52, 0xa2, 0xa6, 0xf4, 0x90, 0x36, 0xde, 0x76, 0x47, 0xeb, 0xe8, 0x2e, 0x1c, 0xe6, 0x43, 0x87, 0x99, 0x5c, 0x68, 0xa0, 0x60, 0xfa, 0x3b, 0xc0, 0x39, 0x9b, 0x05, 0xcc, 0x06, 0xee, 0xc7, 0xd5, 0x98, 0xf7, 0x50, 0x41, 0xa4, 0x91, 0x7e, 0x69, 0x2b, 0x7f, 0x51, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5129_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5129 = { .name = "ecdsa_secp256k1_sha256_5129", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5129_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5129_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5129_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 173 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5130 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5130_pubkey[] = { 0x39, 0x14, 0x27, 0xff, 0x7e, 0xe7, 0x80, 0x13, 0xc1, 0x4a, 0xec, 0x7d, 0x96, 0xa8, 0xa0, 0x62, 0x20, 0x92, 0x98, 0xa7, 0x83, 0x83, 0x5e, 0x94, 0xfd, 0x65, 0x49, 0xd5, 0x02, 0xff, 0xf7, 0x1f, 0xdd, 0x66, 0x24, 0xec, 0x34, 0x3a, 0xd9, 0xfc, 0xf4, 0xd9, 0x87, 0x21, 0x81, 0xe5, 0x9f, 0x84, 0x2f, 0x9b, 0xa4, 0xcc, 0xca, 0xe0, 0x9a, 0x6c, 0x09, 0x72, 0xfb, 0x6a, 0xc6, 0xb4, 0xc6, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_5130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5130_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5130 = { .name = "ecdsa_secp256k1_sha256_5130", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5130_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5130_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5130_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 174 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5131 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5131_pubkey[] = { 0xe7, 0x62, 0xb8, 0xa2, 0x19, 0xb4, 0xf1, 0x80, 0x21, 0x9c, 0xc7, 0xa9, 0x05, 0x92, 0x45, 0xe4, 0x96, 0x1b, 0xd1, 0x91, 0xc0, 0x38, 0x99, 0x78, 0x9c, 0x7a, 0x34, 0xb8, 0x9e, 0x8c, 0x13, 0x8e, 0xc1, 0x53, 0x3e, 0xf0, 0x41, 0x9b, 0xb7, 0x37, 0x6e, 0x0b, 0xfd, 0xe9, 0x31, 0x9d, 0x10, 0xa0, 0x69, 0x68, 0x79, 0x1d, 0x9e, 0xa0, 0xee, 0xd9, 0xc1, 0xce, 0x63, 0x45, 0xae, 0xd9, 0x75, 0x9e, }; static const unsigned char ecdsa_secp256k1_sha256_5131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5131_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5131 = { .name = "ecdsa_secp256k1_sha256_5131", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5131_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5131_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5131_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 175 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5132 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5132_pubkey[] = { 0x9a, 0xed, 0xb0, 0xd2, 0x81, 0xdb, 0x16, 0x4e, 0x13, 0x00, 0x00, 0xc5, 0x69, 0x7f, 0xae, 0x0f, 0x30, 0x5e, 0xf8, 0x48, 0xbe, 0x6f, 0xff, 0xb4, 0x3a, 0xc5, 0x93, 0xfb, 0xb9, 0x50, 0xe9, 0x52, 0xfa, 0x6f, 0x63, 0x33, 0x59, 0xbd, 0xcd, 0x82, 0xb5, 0x6b, 0x0b, 0x9f, 0x96, 0x5b, 0x03, 0x77, 0x89, 0xd4, 0x6b, 0x9a, 0x81, 0x41, 0xb7, 0x91, 0xb2, 0xae, 0xfa, 0x71, 0x3f, 0x96, 0xc1, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_5132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5132_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5132 = { .name = "ecdsa_secp256k1_sha256_5132", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5132_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5132_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5132_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 176 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5133 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5133_pubkey[] = { 0x8a, 0xd4, 0x45, 0xdb, 0x62, 0x81, 0x62, 0x60, 0xe4, 0xe6, 0x87, 0xfd, 0x18, 0x84, 0xe4, 0x8b, 0x9f, 0xc0, 0x63, 0x6d, 0x03, 0x15, 0x47, 0xd6, 0x33, 0x15, 0xe7, 0x92, 0xe1, 0x9b, 0xfa, 0xee, 0x1d, 0xe6, 0x4f, 0x99, 0xd5, 0xf1, 0xcd, 0x8b, 0x6e, 0xc9, 0xcb, 0x0f, 0x78, 0x7a, 0x65, 0x4a, 0xe8, 0x69, 0x93, 0xba, 0x3d, 0xb1, 0x00, 0x8e, 0xf4, 0x3c, 0xff, 0x06, 0x84, 0xcb, 0x22, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_5133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5133_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5133 = { .name = "ecdsa_secp256k1_sha256_5133", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5133_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5133_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5133_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 177 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5134 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5134_pubkey[] = { 0x1f, 0x57, 0x99, 0xc9, 0x5b, 0xe8, 0x90, 0x63, 0xb2, 0x4f, 0x26, 0xe4, 0x0c, 0xb9, 0x28, 0xc1, 0xa8, 0x68, 0xa7, 0x6f, 0xb0, 0x09, 0x46, 0x07, 0xe8, 0x04, 0x3d, 0xb4, 0x09, 0xc9, 0x1c, 0x32, 0xe7, 0x57, 0x24, 0xe8, 0x13, 0xa4, 0x19, 0x1e, 0x3a, 0x83, 0x90, 0x07, 0xf0, 0x8e, 0x2e, 0x89, 0x73, 0x88, 0xb0, 0x6d, 0x4a, 0x00, 0xde, 0x6d, 0xe6, 0x0e, 0x53, 0x6d, 0x91, 0xfa, 0xb5, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_5134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5134_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5134 = { .name = "ecdsa_secp256k1_sha256_5134", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5134_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5134_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5134_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 178 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5135 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5135_pubkey[] = { 0xa3, 0x33, 0x1a, 0x4e, 0x1b, 0x42, 0x23, 0xec, 0x2c, 0x02, 0x7e, 0xdd, 0x48, 0x2c, 0x92, 0x8a, 0x14, 0xed, 0x35, 0x8d, 0x93, 0xf1, 0xd4, 0x21, 0x7d, 0x39, 0xab, 0xf6, 0x9f, 0xcb, 0x5c, 0xcc, 0x28, 0xd6, 0x84, 0xd2, 0xaa, 0xab, 0xcd, 0x63, 0x83, 0x77, 0x5c, 0xaa, 0x62, 0x39, 0xde, 0x26, 0xd4, 0xc6, 0x93, 0x7b, 0xb6, 0x03, 0xec, 0xb4, 0x19, 0x60, 0x82, 0xf4, 0xcf, 0xfd, 0x50, 0x9d, }; static const unsigned char ecdsa_secp256k1_sha256_5135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5135_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5135 = { .name = "ecdsa_secp256k1_sha256_5135", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5135_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5135_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5135_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 179 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5136 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5136_pubkey[] = { 0x3f, 0x39, 0x52, 0x19, 0x97, 0x74, 0xc7, 0xcf, 0x39, 0xb3, 0x8b, 0x66, 0xcb, 0x10, 0x42, 0xa6, 0x26, 0x0d, 0x86, 0x80, 0x80, 0x38, 0x45, 0xe4, 0xd4, 0x33, 0xad, 0xba, 0x3b, 0xb2, 0x48, 0x18, 0x5e, 0xa4, 0x95, 0xb6, 0x8c, 0xbc, 0x7e, 0xd4, 0x17, 0x3e, 0xe6, 0x3c, 0x90, 0x42, 0xdc, 0x50, 0x26, 0x25, 0xc7, 0xeb, 0x7e, 0x21, 0xfb, 0x02, 0xca, 0x9a, 0x91, 0x14, 0xe0, 0xa3, 0xa1, 0x8d, }; static const unsigned char ecdsa_secp256k1_sha256_5136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5136_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5136 = { .name = "ecdsa_secp256k1_sha256_5136", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5136_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5136_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5136_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 180 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5137 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5137_pubkey[] = { 0xcd, 0xfb, 0x8c, 0x0f, 0x42, 0x2e, 0x14, 0x4e, 0x13, 0x7c, 0x24, 0x12, 0xc8, 0x6c, 0x17, 0x1f, 0x5f, 0xe3, 0xfa, 0x3f, 0x5b, 0xbb, 0x54, 0x4e, 0x90, 0x76, 0x28, 0x8f, 0x3c, 0xed, 0x78, 0x6e, 0x05, 0x4f, 0xd0, 0x72, 0x1b, 0x77, 0xc1, 0x1c, 0x79, 0xbe, 0xac, 0xb3, 0xc9, 0x42, 0x11, 0xb0, 0xa1, 0x9b, 0xda, 0x08, 0x65, 0x2e, 0xfe, 0xaf, 0x92, 0x51, 0x3a, 0x3b, 0x0a, 0x16, 0x36, 0x98, }; static const unsigned char ecdsa_secp256k1_sha256_5137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5137_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5137 = { .name = "ecdsa_secp256k1_sha256_5137", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5137_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5137_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5137_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 181 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5138 for ECDSA, tcId is 182 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5138_pubkey[] = { 0x73, 0x59, 0x8a, 0x6a, 0x1c, 0x68, 0x27, 0x8f, 0xa6, 0xbf, 0xd0, 0xce, 0x40, 0x64, 0xe6, 0x82, 0x35, 0xbc, 0x1c, 0x0f, 0x6b, 0x20, 0xa9, 0x28, 0x10, 0x8b, 0xe3, 0x36, 0x73, 0x0f, 0x87, 0xe3, 0xcb, 0xae, 0x61, 0x25, 0x19, 0xb5, 0x03, 0x2e, 0xcc, 0x85, 0xae, 0xd8, 0x11, 0x27, 0x1a, 0x95, 0xfe, 0x79, 0x39, 0xd5, 0xd3, 0x46, 0x01, 0x40, 0xba, 0x31, 0x8f, 0x4d, 0x14, 0xab, 0xa3, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5138_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5138 = { .name = "ecdsa_secp256k1_sha256_5138", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5138_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5138_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5138_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 182 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5139 for ECDSA, tcId is 183 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5139_pubkey[] = { 0x58, 0xde, 0xbd, 0x9a, 0x7e, 0xe2, 0xc9, 0xd5, 0x91, 0x32, 0x47, 0x8a, 0x54, 0x40, 0xae, 0x4d, 0x5d, 0x7e, 0xd4, 0x37, 0x30, 0x83, 0x69, 0xf9, 0x2e, 0xa8, 0x6c, 0x82, 0x18, 0x3f, 0x10, 0xa1, 0x67, 0x73, 0xe7, 0x6f, 0x5e, 0xdb, 0xf4, 0xda, 0x0e, 0x4f, 0x1b, 0xdf, 0xfa, 0xc0, 0xf5, 0x72, 0x57, 0xe1, 0xdf, 0xa4, 0x65, 0x84, 0x29, 0x31, 0x30, 0x9a, 0x24, 0x24, 0x5f, 0xda, 0x6a, 0x5d, }; static const unsigned char ecdsa_secp256k1_sha256_5139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5139_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5139 = { .name = "ecdsa_secp256k1_sha256_5139", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5139_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5139_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5139_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 183 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5140 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5140_pubkey[] = { 0x8b, 0x90, 0x4d, 0xe4, 0x79, 0x67, 0x34, 0x0c, 0x5f, 0x8c, 0x35, 0x72, 0xa7, 0x20, 0x92, 0x4e, 0xf7, 0x57, 0x86, 0x37, 0xfe, 0xab, 0x19, 0x49, 0xac, 0xb2, 0x41, 0xa5, 0xa6, 0xac, 0x3f, 0x5b, 0x95, 0x09, 0x04, 0x49, 0x6f, 0x98, 0x24, 0xb1, 0xd6, 0x3f, 0x33, 0x13, 0xba, 0xe2, 0x1b, 0x89, 0xfa, 0xe8, 0x9a, 0xfd, 0xfc, 0x81, 0x1b, 0x5e, 0xce, 0x03, 0xfd, 0x5a, 0xa3, 0x01, 0x86, 0x4f, }; static const unsigned char ecdsa_secp256k1_sha256_5140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5140_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5140 = { .name = "ecdsa_secp256k1_sha256_5140", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5140_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5140_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5140_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 184 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5141 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5141_pubkey[] = { 0xf4, 0x89, 0x2b, 0x6d, 0x52, 0x5c, 0x77, 0x1e, 0x03, 0x5f, 0x2a, 0x25, 0x27, 0x08, 0xf3, 0x78, 0x4e, 0x48, 0x23, 0x86, 0x04, 0xb4, 0xf9, 0x4d, 0xc5, 0x6e, 0xaa, 0x1e, 0x54, 0x6d, 0x94, 0x1a, 0x34, 0x6b, 0x1a, 0xa0, 0xbc, 0xe6, 0x8b, 0x1c, 0x50, 0xe5, 0xb5, 0x2f, 0x50, 0x9f, 0xb5, 0x52, 0x2e, 0x5c, 0x25, 0xe0, 0x28, 0xbc, 0x8f, 0x86, 0x34, 0x02, 0xed, 0xb7, 0xbc, 0xad, 0x8b, 0x1b, }; static const unsigned char ecdsa_secp256k1_sha256_5141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5141_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5141 = { .name = "ecdsa_secp256k1_sha256_5141", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5141_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5141_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5141_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 185 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5142 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5142_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_5142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5142_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5142 = { .name = "ecdsa_secp256k1_sha256_5142", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5142_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5142_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5142_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 186 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5143 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5143_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_5143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5143_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5143 = { .name = "ecdsa_secp256k1_sha256_5143", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5143_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5143_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5143_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 187 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5144 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5144_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5144_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5144 = { .name = "ecdsa_secp256k1_sha256_5144", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5144_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5144_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5144_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 188 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5145 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5145_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5145_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5145 = { .name = "ecdsa_secp256k1_sha256_5145", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5145_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5145_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5145_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 189 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5146 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5146_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5146_sig[] = { 0xf8, 0x0a, 0xe4, 0xf9, 0x6c, 0xdb, 0xc9, 0xd8, 0x53, 0xf8, 0x3d, 0x47, 0xaa, 0xe2, 0x25, 0xbf, 0x40, 0x7d, 0x51, 0xc5, 0x6b, 0x77, 0x76, 0xcd, 0x67, 0xd0, 0xdc, 0x19, 0x5d, 0x99, 0xa9, 0xdc, 0xb3, 0x03, 0xe2, 0x6b, 0xe1, 0xf7, 0x34, 0x65, 0x31, 0x52, 0x21, 0xf0, 0xb3, 0x31, 0x52, 0x88, 0x07, 0xa1, 0xa9, 0xb6, 0xeb, 0x06, 0x8e, 0xde, 0x6e, 0xeb, 0xea, 0xaa, 0x49, 0xaf, 0x8a, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5146 = { .name = "ecdsa_secp256k1_sha256_5146", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5146_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha256_5146_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 190 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5147 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5147_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5147_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha256_5147_sig[] = { 0x10, 0x9c, 0xd8, 0xae, 0x03, 0x74, 0x35, 0x89, 0x84, 0xa8, 0x24, 0x9c, 0x0a, 0x84, 0x36, 0x28, 0xf2, 0x83, 0x5f, 0xfa, 0xd1, 0xdf, 0x1a, 0x9a, 0x69, 0xaa, 0x2f, 0xe7, 0x23, 0x55, 0x54, 0x5c, 0xac, 0x6f, 0x00, 0xda, 0xf5, 0x3b, 0xd8, 0xb1, 0xe3, 0x4d, 0xa3, 0x29, 0x35, 0x9b, 0x6e, 0x08, 0x01, 0x9c, 0x5b, 0x03, 0x7f, 0xed, 0x79, 0xee, 0x38, 0x3a, 0xe3, 0x9f, 0x85, 0xa1, 0x59, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5147 = { .name = "ecdsa_secp256k1_sha256_5147", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5147_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5147_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha256_5147_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 191 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5148 for ECDSA, tcId is 192 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5148_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5148_sig[] = { 0xd0, 0x35, 0xee, 0x1f, 0x17, 0xfd, 0xb0, 0xb2, 0x68, 0x1b, 0x16, 0x3e, 0x33, 0xc3, 0x59, 0x93, 0x26, 0x59, 0x99, 0x0a, 0xf7, 0x7d, 0xca, 0x63, 0x20, 0x12, 0xb3, 0x0b, 0x27, 0xa0, 0x57, 0xb3, 0x19, 0x39, 0xd9, 0xf3, 0xb2, 0x85, 0x8b, 0xc1, 0x3e, 0x34, 0x74, 0xcb, 0x50, 0xe6, 0xa8, 0x2b, 0xe4, 0x4f, 0xaa, 0x71, 0x94, 0x0f, 0x87, 0x6c, 0x1c, 0xba, 0x4c, 0x3e, 0x98, 0x92, 0x02, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5148 = { .name = "ecdsa_secp256k1_sha256_5148", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5148_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5148_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5148_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 192 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5149 for ECDSA, tcId is 193 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5149_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5149_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha256_5149_sig[] = { 0x4f, 0x05, 0x3f, 0x56, 0x3a, 0xd3, 0x4b, 0x74, 0xfd, 0x8c, 0x99, 0x34, 0xce, 0x59, 0xe7, 0x9c, 0x2e, 0xb8, 0xe6, 0xec, 0xa0, 0xfe, 0xf5, 0xb3, 0x23, 0xca, 0x67, 0xd5, 0xac, 0x7e, 0xd2, 0x38, 0x4d, 0x4b, 0x05, 0xda, 0xa0, 0x71, 0x9e, 0x77, 0x3d, 0x86, 0x17, 0xdc, 0xe5, 0x63, 0x1c, 0x5f, 0xd6, 0xf5, 0x9c, 0x9b, 0xdc, 0x74, 0x8e, 0x4b, 0x55, 0xc9, 0x70, 0x04, 0x0a, 0xf0, 0x1b, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5149 = { .name = "ecdsa_secp256k1_sha256_5149", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5149_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5149_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha256_5149_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 193 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5150 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5150_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5150_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5150_sig[] = { 0x6d, 0x6a, 0x4f, 0x55, 0x6c, 0xcc, 0xe1, 0x54, 0xe7, 0xfb, 0x9f, 0x19, 0xe7, 0x6c, 0x3d, 0xec, 0xa1, 0x3d, 0x59, 0xcc, 0x2a, 0xeb, 0x4e, 0xca, 0xd9, 0x68, 0xaa, 0xb2, 0xde, 0xd4, 0x59, 0x65, 0x53, 0xb9, 0xfa, 0x74, 0x80, 0x3e, 0xde, 0x0f, 0xc4, 0x44, 0x1b, 0xf6, 0x83, 0xd5, 0x6c, 0x56, 0x4d, 0x3e, 0x27, 0x4e, 0x09, 0xcc, 0xf4, 0x73, 0x90, 0xba, 0xdd, 0x14, 0x71, 0xc0, 0x5f, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5150 = { .name = "ecdsa_secp256k1_sha256_5150", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5150_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5150_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5150_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 194 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5151 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5151_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5151_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5151_sig[] = { 0xaa, 0xd5, 0x03, 0xde, 0x9b, 0x9f, 0xd6, 0x6b, 0x94, 0x8e, 0x9a, 0xcf, 0x59, 0x6f, 0x0a, 0x0e, 0x65, 0xe7, 0x00, 0xb2, 0x8b, 0x26, 0xec, 0x56, 0xe6, 0xe4, 0x5e, 0x84, 0x64, 0x89, 0xb3, 0xc4, 0xff, 0xf2, 0x23, 0xc5, 0xd0, 0x76, 0x54, 0x47, 0xe8, 0x44, 0x7a, 0x3f, 0x9d, 0x31, 0xfd, 0x06, 0x96, 0xe8, 0x9d, 0x24, 0x44, 0x22, 0x02, 0x2f, 0xf6, 0x1a, 0x11, 0x0b, 0x2a, 0x8c, 0x2f, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5151 = { .name = "ecdsa_secp256k1_sha256_5151", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5151_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5151_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5151_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 195 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5152 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5152_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5152_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5152_sig[] = { 0x91, 0x82, 0xce, 0xbd, 0x3b, 0xb8, 0xab, 0x57, 0x2e, 0x16, 0x71, 0x74, 0x39, 0x72, 0x09, 0xef, 0x4b, 0x1d, 0x43, 0x9a, 0xf3, 0xb2, 0x00, 0xcd, 0xf0, 0x03, 0x62, 0x00, 0x89, 0xe4, 0x32, 0x25, 0xab, 0xb8, 0x83, 0x67, 0xd1, 0x5f, 0xe6, 0x2d, 0x1e, 0xff, 0xfb, 0x68, 0x03, 0xda, 0x03, 0x10, 0x9e, 0xe2, 0x2e, 0x90, 0xbc, 0x9c, 0x78, 0xe8, 0xb4, 0xed, 0x23, 0x63, 0x0b, 0x82, 0xea, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5152 = { .name = "ecdsa_secp256k1_sha256_5152", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5152_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5152_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5152_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 196 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5153 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5153_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5153_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5153_sig[] = { 0x38, 0x54, 0xa3, 0x99, 0x8a, 0xeb, 0xdf, 0x2d, 0xbc, 0x28, 0xad, 0xac, 0x41, 0x81, 0x46, 0x2c, 0xca, 0xc7, 0x87, 0x39, 0x07, 0xab, 0x7f, 0x21, 0x2c, 0x42, 0xdb, 0x0e, 0x69, 0xb5, 0x6e, 0xd8, 0xc1, 0x2c, 0x09, 0x47, 0x5c, 0x77, 0x2f, 0xd0, 0xc1, 0xb2, 0x06, 0x0d, 0x51, 0x63, 0xe4, 0x2b, 0xf7, 0x1d, 0x72, 0x7e, 0x4a, 0xe7, 0xc0, 0x3e, 0xeb, 0xa9, 0x54, 0xbf, 0x50, 0xb4, 0x3b, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5153 = { .name = "ecdsa_secp256k1_sha256_5153", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5153_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5153_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5153_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 197 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5154 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5154_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5154_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5154_sig[] = { 0xe9, 0x4d, 0xbd, 0xc3, 0x87, 0x95, 0xfe, 0x5c, 0x90, 0x4d, 0x8f, 0x16, 0xd9, 0x69, 0xd3, 0xb5, 0x87, 0xf0, 0xa2, 0x5d, 0x2d, 0xe9, 0x0b, 0x6d, 0x8c, 0x5c, 0x53, 0xff, 0x88, 0x7e, 0x36, 0x07, 0x85, 0x6b, 0x8c, 0x96, 0x3e, 0x9b, 0x68, 0xda, 0xde, 0x44, 0x75, 0x0b, 0xf9, 0x7e, 0xc4, 0xd1, 0x1b, 0x1a, 0x0a, 0x38, 0x04, 0xf4, 0xcb, 0x79, 0xaa, 0x27, 0xbd, 0xea, 0x78, 0xac, 0x14, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5154 = { .name = "ecdsa_secp256k1_sha256_5154", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5154_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5154_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5154_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 198 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5155 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5155_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5155_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5155_sig[] = { 0x49, 0xfc, 0x10, 0x2a, 0x08, 0xca, 0x47, 0xb6, 0x0e, 0x08, 0x58, 0xcd, 0x02, 0x84, 0xd2, 0x2c, 0xdd, 0xd7, 0x23, 0x3f, 0x94, 0xaa, 0xff, 0xbb, 0x2d, 0xb1, 0xdd, 0x2c, 0xf0, 0x84, 0x25, 0xe1, 0x5b, 0x16, 0xfc, 0xa5, 0xa1, 0x2c, 0xdb, 0x39, 0x70, 0x16, 0x97, 0xad, 0x8e, 0x39, 0xff, 0xd6, 0xbd, 0xec, 0x00, 0x24, 0x29, 0x8a, 0xfa, 0xa2, 0x32, 0x6a, 0xea, 0x09, 0x20, 0x0b, 0x14, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5155 = { .name = "ecdsa_secp256k1_sha256_5155", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5155_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5155_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5155_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 199 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5156 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5156_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5156_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5156_sig[] = { 0x41, 0xef, 0xa7, 0xd3, 0xf0, 0x5a, 0x00, 0x10, 0x67, 0x5f, 0xcb, 0x91, 0x8a, 0x45, 0xc6, 0x93, 0xda, 0x4b, 0x34, 0x8d, 0xf2, 0x1a, 0x59, 0xd6, 0xf9, 0xcd, 0x73, 0xe0, 0xd8, 0x31, 0xd6, 0x7a, 0xbb, 0xab, 0x52, 0x59, 0x6c, 0x1a, 0x1d, 0x94, 0x84, 0x29, 0x6c, 0xdc, 0x92, 0xcb, 0xf0, 0x7e, 0x66, 0x52, 0x59, 0xa1, 0x37, 0x91, 0xa8, 0xfe, 0x88, 0x45, 0xe2, 0xc0, 0x7c, 0xf3, 0xfc, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5156 = { .name = "ecdsa_secp256k1_sha256_5156", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5156_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5156_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5156_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 200 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5157 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5157_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5157_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5157_sig[] = { 0xb6, 0x15, 0x69, 0x8c, 0x35, 0x8b, 0x35, 0x92, 0x0d, 0xd8, 0x83, 0xec, 0xa6, 0x25, 0xa6, 0xc5, 0xf7, 0x56, 0x39, 0x70, 0xcd, 0xfc, 0x37, 0x8f, 0x8f, 0xe0, 0xce, 0xe1, 0x70, 0x92, 0x14, 0x4c, 0xda, 0x0b, 0x84, 0xcd, 0x94, 0xa4, 0x1e, 0x04, 0x9e, 0xf4, 0x77, 0xae, 0xac, 0x15, 0x7b, 0x2a, 0x9b, 0xfa, 0x6b, 0x7a, 0xc8, 0xde, 0x06, 0xed, 0x38, 0x58, 0xc5, 0xee, 0xde, 0x6d, 0xdd, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5157 = { .name = "ecdsa_secp256k1_sha256_5157", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5157_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5157_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5157_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 201 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5158 for ECDSA, tcId is 202 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5158_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5158_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5158_sig[] = { 0x87, 0xcf, 0x8c, 0x0e, 0xb8, 0x2d, 0x44, 0xf6, 0x9c, 0x60, 0xa2, 0xff, 0x54, 0x57, 0xd3, 0xaa, 0xa3, 0x22, 0xe7, 0xec, 0x61, 0xae, 0x5a, 0xec, 0xfd, 0x67, 0x8a, 0xe1, 0xc1, 0x93, 0x2b, 0x0e, 0xc5, 0x22, 0xc4, 0xee, 0xa7, 0xea, 0xfb, 0x82, 0x91, 0x4c, 0xbf, 0x5c, 0x1f, 0xf7, 0x67, 0x60, 0x10, 0x9f, 0x55, 0xdd, 0xdd, 0xcf, 0x58, 0x27, 0x4d, 0x41, 0xc9, 0xbc, 0x43, 0x11, 0xe0, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5158 = { .name = "ecdsa_secp256k1_sha256_5158", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5158_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5158_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5158_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 202 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5159 for ECDSA, tcId is 203 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5159_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5159_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5159_sig[] = { 0x62, 0xf4, 0x8e, 0xf7, 0x1a, 0xce, 0x27, 0xbf, 0x5a, 0x01, 0x83, 0x4d, 0xe1, 0xf7, 0xe3, 0xf9, 0x48, 0xb9, 0xdc, 0xe1, 0xca, 0x1e, 0x91, 0x1d, 0x5e, 0x13, 0xd3, 0xb1, 0x04, 0x47, 0x1d, 0x82, 0xa1, 0x57, 0x0c, 0xc0, 0xf3, 0x88, 0x76, 0x8d, 0x3b, 0xa7, 0xdf, 0x7f, 0x21, 0x25, 0x64, 0xca, 0xa2, 0x56, 0xff, 0x82, 0x5d, 0xf9, 0x97, 0xf2, 0x1f, 0x72, 0xf5, 0x28, 0x0d, 0x53, 0x01, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5159 = { .name = "ecdsa_secp256k1_sha256_5159", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5159_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5159_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5159_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 203 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5160 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5160_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5160_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5160_sig[] = { 0xf6, 0xb0, 0xe2, 0xf6, 0xfe, 0x02, 0x0c, 0xf7, 0xc0, 0xc2, 0x01, 0x37, 0x43, 0x43, 0x44, 0xed, 0x7a, 0xdd, 0x6c, 0x4b, 0xe5, 0x18, 0x61, 0xe2, 0xd1, 0x4c, 0xbd, 0xa4, 0x72, 0xa6, 0xff, 0xb4, 0x9b, 0xe9, 0x37, 0x22, 0xc1, 0xa3, 0xad, 0x7d, 0x4c, 0xf9, 0x17, 0x23, 0x70, 0x0c, 0xb5, 0x48, 0x6d, 0xe5, 0x47, 0x9d, 0x8c, 0x1b, 0x38, 0xae, 0x4e, 0x8e, 0x5b, 0xa1, 0x63, 0x8e, 0x97, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5160 = { .name = "ecdsa_secp256k1_sha256_5160", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5160_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5160_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5160_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 204 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5161 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5161_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5161_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5161_sig[] = { 0xdb, 0x09, 0xd8, 0x46, 0x0f, 0x05, 0xef, 0xf2, 0x3b, 0xc7, 0xe4, 0x36, 0xb6, 0x7d, 0xa5, 0x63, 0xfa, 0x4b, 0x4e, 0xdb, 0x58, 0xac, 0x24, 0xce, 0x20, 0x1f, 0xa8, 0xa3, 0x58, 0x12, 0x50, 0x57, 0x46, 0xda, 0x11, 0x67, 0x54, 0x60, 0x29, 0x40, 0xc8, 0x99, 0x9c, 0x8d, 0x66, 0x5f, 0x78, 0x6c, 0x50, 0xf5, 0x77, 0x2c, 0x0a, 0x3c, 0xdb, 0xda, 0x07, 0x5e, 0x77, 0xea, 0xbc, 0x64, 0xdf, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5161 = { .name = "ecdsa_secp256k1_sha256_5161", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5161_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5161_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5161_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 205 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5162 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5162_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5162_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5162_sig[] = { 0x59, 0x2c, 0x41, 0xe1, 0x65, 0x17, 0xf1, 0x2f, 0xca, 0xbd, 0x98, 0x26, 0x76, 0x74, 0xf9, 0x74, 0xb5, 0x88, 0xe9, 0xf3, 0x5d, 0x35, 0x40, 0x6c, 0x1a, 0x7b, 0xb2, 0xed, 0x1d, 0x19, 0xb7, 0xb8, 0xc1, 0x9a, 0x5f, 0x94, 0x26, 0x07, 0xc3, 0x55, 0x14, 0x84, 0xff, 0x0d, 0xc9, 0x72, 0x81, 0xf0, 0xcd, 0xc8, 0x2b, 0xc4, 0x8e, 0x22, 0x05, 0xa0, 0x64, 0x5c, 0x0c, 0xf3, 0xd7, 0xf5, 0x9d, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5162 = { .name = "ecdsa_secp256k1_sha256_5162", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5162_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5162_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5162_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 206 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5163 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5163_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5163_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5163_sig[] = { 0xbe, 0x0d, 0x70, 0x88, 0x7d, 0x5e, 0x40, 0x82, 0x1a, 0x61, 0xb6, 0x80, 0x47, 0xde, 0x4e, 0xa0, 0x3d, 0xeb, 0xfd, 0xf5, 0x1c, 0xdf, 0x4d, 0x4b, 0x19, 0x55, 0x58, 0xb9, 0x59, 0xa0, 0x32, 0xb2, 0x82, 0x66, 0xb4, 0xd2, 0x70, 0xe2, 0x44, 0x14, 0xec, 0xac, 0xb1, 0x4c, 0x09, 0x1a, 0x23, 0x31, 0x34, 0xb9, 0x18, 0xd3, 0x73, 0x20, 0xc6, 0x55, 0x7d, 0x60, 0xad, 0x0a, 0x63, 0x54, 0x4a, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5163 = { .name = "ecdsa_secp256k1_sha256_5163", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5163_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5163_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5163_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 207 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5164 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5164_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5164_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5164_sig[] = { 0xfa, 0xe9, 0x2d, 0xfc, 0xb2, 0xee, 0x39, 0x2d, 0x27, 0x0a, 0xf3, 0xa5, 0x73, 0x9f, 0xaa, 0x26, 0xd4, 0xf9, 0x7b, 0xfd, 0x39, 0xed, 0x3c, 0xbe, 0xe4, 0xd2, 0x9e, 0x26, 0xaf, 0x3b, 0x20, 0x6a, 0x93, 0x64, 0x5c, 0x80, 0x60, 0x55, 0x95, 0xe0, 0x2c, 0x09, 0xa0, 0xdc, 0x4b, 0x17, 0xac, 0x2a, 0x51, 0x84, 0x6a, 0x72, 0x8b, 0x3e, 0x8d, 0x60, 0x44, 0x2e, 0xd6, 0x44, 0x9f, 0xd3, 0x34, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5164 = { .name = "ecdsa_secp256k1_sha256_5164", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5164_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5164_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5164_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 208 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5165 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5165_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5165_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5165_sig[] = { 0x17, 0x6a, 0x25, 0x57, 0x56, 0x6f, 0xfa, 0x51, 0x8b, 0x11, 0x22, 0x66, 0x94, 0xeb, 0x98, 0x02, 0xed, 0x20, 0x98, 0xbf, 0xe2, 0x78, 0xe5, 0x57, 0x0f, 0xe1, 0xd5, 0xd7, 0xaf, 0x18, 0xa9, 0x43, 0xed, 0x6e, 0x20, 0x95, 0xf1, 0x2a, 0x03, 0xf2, 0xea, 0xf6, 0x71, 0x8f, 0x43, 0x0e, 0xc5, 0xfe, 0x28, 0x29, 0xfd, 0x16, 0x46, 0xab, 0x64, 0x87, 0x01, 0x65, 0x6f, 0xd3, 0x12, 0x21, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5165 = { .name = "ecdsa_secp256k1_sha256_5165", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5165_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5165_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5165_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 209 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5166 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5166_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5166_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5166_sig[] = { 0x60, 0xbe, 0x20, 0xc3, 0xdb, 0xc1, 0x62, 0xdd, 0x34, 0xd2, 0x67, 0x80, 0x62, 0x1c, 0x10, 0x4b, 0xbe, 0x5d, 0xac, 0xe6, 0x30, 0x17, 0x1b, 0x2d, 0xae, 0xf0, 0xd8, 0x26, 0x40, 0x9e, 0xe5, 0xc2, 0xbd, 0x80, 0x81, 0xb2, 0x77, 0x62, 0xab, 0x6e, 0x8f, 0x42, 0x59, 0x56, 0xbf, 0x60, 0x4e, 0x33, 0x2f, 0xa0, 0x66, 0xa9, 0x9b, 0x59, 0xf8, 0x7e, 0x27, 0xdc, 0x11, 0x98, 0xb2, 0x6f, 0x5c, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5166 = { .name = "ecdsa_secp256k1_sha256_5166", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5166_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5166_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5166_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 210 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5167 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5167_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5167_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5167_sig[] = { 0xed, 0xf0, 0x3c, 0xf6, 0x3f, 0x65, 0x88, 0x83, 0x28, 0x9a, 0x1a, 0x59, 0x3d, 0x10, 0x07, 0x89, 0x5b, 0x9f, 0x23, 0x6d, 0x27, 0xc9, 0xc1, 0xf1, 0x31, 0x30, 0x89, 0xaa, 0xed, 0x6b, 0x16, 0xae, 0xe5, 0xb2, 0x29, 0x03, 0xf7, 0xeb, 0x23, 0xad, 0xc2, 0xe0, 0x10, 0x57, 0xe3, 0x9b, 0x04, 0x08, 0xd4, 0x95, 0xf6, 0x94, 0xc8, 0x3f, 0x30, 0x6f, 0x12, 0x16, 0xc9, 0xbf, 0x87, 0x50, 0x60, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5167 = { .name = "ecdsa_secp256k1_sha256_5167", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5167_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5167_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5167_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 211 in file ecdsa_secp256k1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5168 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5168_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5168_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7d, 0xb3, 0x7c, 0x21, 0xf4, 0xaf, 0xd3, 0x20, 0x3a, 0xe8, 0xdc, 0x4a, 0xe7, 0x79, 0x4b, 0x0f, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5168 = { .name = "ecdsa_secp256k1_sha256_5168", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5168_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5168_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5168_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5169 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5169_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5169_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5169 = { .name = "ecdsa_secp256k1_sha256_5169", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5169_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5169_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5169_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5170 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5170_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5170_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5170 = { .name = "ecdsa_secp256k1_sha256_5170", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5170_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5170_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5170_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5171 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5171_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5171_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5171 = { .name = "ecdsa_secp256k1_sha256_5171", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5171_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5171_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5171_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5172 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5172_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5172_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5172 = { .name = "ecdsa_secp256k1_sha256_5172", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5172_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5172_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5172_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5173 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5173_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5173_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5173 = { .name = "ecdsa_secp256k1_sha256_5173", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5173_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5173_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5173_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5174 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5174_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5174_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5174 = { .name = "ecdsa_secp256k1_sha256_5174", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5174_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5174_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5174_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5175 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5175_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5175_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5175 = { .name = "ecdsa_secp256k1_sha256_5175", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5175_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5175_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5175_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5176 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5176_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5176_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5176 = { .name = "ecdsa_secp256k1_sha256_5176", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5176_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5176_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5176_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5177 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5177_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5177_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5177 = { .name = "ecdsa_secp256k1_sha256_5177", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5177_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5177_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5177_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5178 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5178_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5178_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5178 = { .name = "ecdsa_secp256k1_sha256_5178", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5178_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5178_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5178_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5179 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5179_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5179_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5179 = { .name = "ecdsa_secp256k1_sha256_5179", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5179_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5179_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5179_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5180 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5180_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5180_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5180 = { .name = "ecdsa_secp256k1_sha256_5180", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5180_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5180_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5180_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5181 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5181_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5181_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x05, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5181 = { .name = "ecdsa_secp256k1_sha256_5181", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5181_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5181_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5181_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5182 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5182_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5182_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5182 = { .name = "ecdsa_secp256k1_sha256_5182", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5182_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5182_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5182_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5183 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5183_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5183_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5183 = { .name = "ecdsa_secp256k1_sha256_5183", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5183_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5183_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5183_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5184 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5184_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5184_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5184_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5184 = { .name = "ecdsa_secp256k1_sha256_5184", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5184_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5184_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5184_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5185 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5185_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5185_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5185_sig[] = { 0x02, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5185 = { .name = "ecdsa_secp256k1_sha256_5185", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5185_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5185_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5185_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5186 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5186_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5186_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6d, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5186 = { .name = "ecdsa_secp256k1_sha256_5186", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5186_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5186_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5186_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5187 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5187_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5187_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5187_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0xe5, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5187 = { .name = "ecdsa_secp256k1_sha256_5187", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5187_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5187_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5187_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5188 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5188_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5188_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5188_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5188 = { .name = "ecdsa_secp256k1_sha256_5188", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5188_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5188_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5188_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5189 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5189_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5189_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5189_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5189 = { .name = "ecdsa_secp256k1_sha256_5189", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5189_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5189_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5189_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5190 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5190_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5190_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5190 = { .name = "ecdsa_secp256k1_sha256_5190", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5190_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5190_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5190_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5191 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5191_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5191_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5191 = { .name = "ecdsa_secp256k1_sha256_5191", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5191_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5191_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5191_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5192 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5192_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5192_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5192 = { .name = "ecdsa_secp256k1_sha256_5192", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5192_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5192_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5192_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5193 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5193_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5193_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5193 = { .name = "ecdsa_secp256k1_sha256_5193", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5193_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5193_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5193_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256k1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5194 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5194_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5194_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5194 = { .name = "ecdsa_secp256k1_sha256_5194", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5194_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5194_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5194_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5195 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5195_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5195_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5195 = { .name = "ecdsa_secp256k1_sha256_5195", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5195_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5195_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5195_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5196 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5196_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5196_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x83, 0xb9, 0x0d, 0xea, 0xbc, 0xa4, 0xb0, 0x5c, 0x45, 0x74, 0xe4, 0x9b, 0x58, 0x99, 0xb9, 0x64, 0xa6, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5196 = { .name = "ecdsa_secp256k1_sha256_5196", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5196_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5196_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5196_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5197 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5197_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5197_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x86, 0x43, 0xb0, 0x30, 0xef, 0x46, 0x1f, 0x1b, 0xcd, 0xf5, 0x3f, 0xde, 0x3e, 0xf9, 0x4c, 0xe2, 0x24, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5197 = { .name = "ecdsa_secp256k1_sha256_5197", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5197_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5197_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5197_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5198 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5198_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5198_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7b, 0x01, 0xa0, 0xf2, 0x2a, 0x0a, 0x98, 0x43, 0xf6, 0x4a, 0xed, 0xc3, 0x34, 0x36, 0x7c, 0xdc, 0x9b, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5198 = { .name = "ecdsa_secp256k1_sha256_5198", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5198_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5198_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5198_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5199 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5199_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5199_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x79, 0xbc, 0x4f, 0xcf, 0x10, 0xb9, 0xe0, 0xe4, 0x32, 0x0a, 0xc0, 0x21, 0xc1, 0x06, 0xb3, 0x1d, 0xdc, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5199 = { .name = "ecdsa_secp256k1_sha256_5199", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5199_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5199_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5199_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5200 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5200_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5200_sig[] = { 0xfe, 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7c, 0x46, 0xf2, 0x15, 0x43, 0x5b, 0x4f, 0xa3, 0xba, 0x8b, 0x1b, 0x64, 0xa7, 0x66, 0x46, 0x9b, 0x5a, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5200 = { .name = "ecdsa_secp256k1_sha256_5200", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5200_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5200_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5200_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5201 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5201_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5201_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5201 = { .name = "ecdsa_secp256k1_sha256_5201", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5201_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5201_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5201_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5202 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5202_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5202_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7b, 0x01, 0xa0, 0xf2, 0x2a, 0x0a, 0x98, 0x43, 0xf6, 0x4a, 0xed, 0xc3, 0x34, 0x36, 0x7c, 0xdc, 0x9b, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5202 = { .name = "ecdsa_secp256k1_sha256_5202", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5202_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5202_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5202_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5203 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5203_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5203_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x7f, 0xc1, 0xe1, 0x97, 0xd8, 0xae, 0xbe, 0x20, 0x3c, 0x96, 0xc8, 0x72, 0x32, 0x27, 0x21, 0x72, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5203 = { .name = "ecdsa_secp256k1_sha256_5203", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5203_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5203_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5203_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5204 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5204_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5204_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x82, 0x4c, 0x83, 0xde, 0x0b, 0x50, 0x2c, 0xdf, 0xc5, 0x17, 0x23, 0xb5, 0x18, 0x86, 0xb4, 0xf0, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5204 = { .name = "ecdsa_secp256k1_sha256_5204", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5204_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5204_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5204_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5205 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5205_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5205_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7e, 0xf8, 0xcd, 0x45, 0x0e, 0x00, 0x8a, 0x7f, 0xff, 0x29, 0x09, 0xec, 0x5a, 0xa9, 0x14, 0xce, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5205 = { .name = "ecdsa_secp256k1_sha256_5205", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5205_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5205_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5205_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5206 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5206_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5206_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0xfe, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x80, 0x3e, 0x1e, 0x68, 0x27, 0x51, 0x41, 0xdf, 0xc3, 0x69, 0x37, 0x8d, 0xcd, 0xd8, 0xde, 0x8d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5206 = { .name = "ecdsa_secp256k1_sha256_5206", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5206_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5206_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5206_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5207 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5207_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5207_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5207 = { .name = "ecdsa_secp256k1_sha256_5207", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5207_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5207_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5207_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5208 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5208_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5208_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7e, 0xf8, 0xcd, 0x45, 0x0e, 0x00, 0x8a, 0x7f, 0xff, 0x29, 0x09, 0xec, 0x5a, 0xa9, 0x14, 0xce, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5208 = { .name = "ecdsa_secp256k1_sha256_5208", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5208_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5208_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5208_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5209 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5209_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5209_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5209 = { .name = "ecdsa_secp256k1_sha256_5209", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5209_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5209_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5209_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5210 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5210_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5210_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5210 = { .name = "ecdsa_secp256k1_sha256_5210", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5210_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5210_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5210_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5211 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5211_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5211_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5211 = { .name = "ecdsa_secp256k1_sha256_5211", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5211_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5211_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5211_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5212 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5212_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5212_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5212 = { .name = "ecdsa_secp256k1_sha256_5212", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5212_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5212_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5212_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5213 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5213_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5213_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5213 = { .name = "ecdsa_secp256k1_sha256_5213", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5213_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5213_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5213_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5214 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5214_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5214_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5214 = { .name = "ecdsa_secp256k1_sha256_5214", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5214_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5214_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5214_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5215 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5215_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5215_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5215 = { .name = "ecdsa_secp256k1_sha256_5215", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5215_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5215_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5215_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5216 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5216_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5216_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5216 = { .name = "ecdsa_secp256k1_sha256_5216", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5216_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5216_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5216_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5217 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5217_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5217_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5217 = { .name = "ecdsa_secp256k1_sha256_5217", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5217_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5217_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5217_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5218 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5218_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5218_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5218 = { .name = "ecdsa_secp256k1_sha256_5218", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5218_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5218_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5218_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5219 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5219_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5219_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5219 = { .name = "ecdsa_secp256k1_sha256_5219", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5219_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5219_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5219_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5220 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5220_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5220_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5220 = { .name = "ecdsa_secp256k1_sha256_5220", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5220_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5220_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5220_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5221 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5221_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5221_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5221 = { .name = "ecdsa_secp256k1_sha256_5221", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5221_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5221_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5221_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5222 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5222_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5222_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5222 = { .name = "ecdsa_secp256k1_sha256_5222", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5222_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5222_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5222_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5223 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5223_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5223_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5223 = { .name = "ecdsa_secp256k1_sha256_5223", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5223_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5223_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5223_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5224 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5224_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5224_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5224 = { .name = "ecdsa_secp256k1_sha256_5224", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5224_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5224_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5224_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5225 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5225_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5225_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5225 = { .name = "ecdsa_secp256k1_sha256_5225", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5225_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5225_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5225_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5226 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5226_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5226_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5226 = { .name = "ecdsa_secp256k1_sha256_5226", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5226_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5226_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5226_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5227 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5227_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5227_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5227 = { .name = "ecdsa_secp256k1_sha256_5227", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5227_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5227_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5227_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5228 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5228_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5228_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5228 = { .name = "ecdsa_secp256k1_sha256_5228", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5228_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5228_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5228_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5229 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5229_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5229_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5229 = { .name = "ecdsa_secp256k1_sha256_5229", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5229_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5229_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5229_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5230 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5230_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5230_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5230 = { .name = "ecdsa_secp256k1_sha256_5230", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5230_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5230_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5230_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5231 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5231_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5231_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5231 = { .name = "ecdsa_secp256k1_sha256_5231", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5231_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5231_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5231_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5232 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5232_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5232_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5232 = { .name = "ecdsa_secp256k1_sha256_5232", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5232_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5232_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5232_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5233 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5233_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5233_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5233 = { .name = "ecdsa_secp256k1_sha256_5233", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5233_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5233_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5233_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5234 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5234_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5234_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5234 = { .name = "ecdsa_secp256k1_sha256_5234", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5234_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5234_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5234_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5235 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5235_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5235_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5235 = { .name = "ecdsa_secp256k1_sha256_5235", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5235_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5235_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5235_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5236 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5236_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5236_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5236 = { .name = "ecdsa_secp256k1_sha256_5236", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5236_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5236_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5236_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5237 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5237_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5237_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5237 = { .name = "ecdsa_secp256k1_sha256_5237", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5237_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5237_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5237_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5238 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5238_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5238_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5238 = { .name = "ecdsa_secp256k1_sha256_5238", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5238_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5238_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5238_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5239 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5239_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5239_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5239 = { .name = "ecdsa_secp256k1_sha256_5239", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5239_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5239_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5239_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5240 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5240_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5240_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5240 = { .name = "ecdsa_secp256k1_sha256_5240", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5240_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5240_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5240_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5241 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5241_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5241_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5241 = { .name = "ecdsa_secp256k1_sha256_5241", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5241_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5241_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5241_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5242 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5242_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5242_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5242 = { .name = "ecdsa_secp256k1_sha256_5242", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5242_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5242_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5242_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5243 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5243_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5243_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5243 = { .name = "ecdsa_secp256k1_sha256_5243", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5243_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5243_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5243_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5244 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5244_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5244_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5244 = { .name = "ecdsa_secp256k1_sha256_5244", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5244_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5244_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5244_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5245 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5245_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5245_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5245 = { .name = "ecdsa_secp256k1_sha256_5245", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5245_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5245_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5245_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5246 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5246_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5246_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5246 = { .name = "ecdsa_secp256k1_sha256_5246", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5246_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5246_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5246_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5247 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5247_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5247_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5247 = { .name = "ecdsa_secp256k1_sha256_5247", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5247_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5247_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5247_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5248 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5248_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5248_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5248 = { .name = "ecdsa_secp256k1_sha256_5248", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5248_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5248_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5248_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5249 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5249_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5249_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5249 = { .name = "ecdsa_secp256k1_sha256_5249", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5249_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5249_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5249_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5250 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5250_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5250_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5250 = { .name = "ecdsa_secp256k1_sha256_5250", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5250_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5250_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5250_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5251 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5251_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5251_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5251 = { .name = "ecdsa_secp256k1_sha256_5251", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5251_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5251_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5251_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5252 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5252_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5252_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5252 = { .name = "ecdsa_secp256k1_sha256_5252", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5252_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5252_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5252_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5253 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5253_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5253_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5253 = { .name = "ecdsa_secp256k1_sha256_5253", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5253_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5253_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5253_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5254 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5254_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5254_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5254 = { .name = "ecdsa_secp256k1_sha256_5254", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5254_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5254_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5254_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5255 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5255_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5255_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5255 = { .name = "ecdsa_secp256k1_sha256_5255", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5255_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5255_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5255_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5256 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5256_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5256_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5256 = { .name = "ecdsa_secp256k1_sha256_5256", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5256_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5256_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5256_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5257 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5257_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5257_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5257 = { .name = "ecdsa_secp256k1_sha256_5257", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5257_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5257_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5257_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5258 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5258_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5258_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5258 = { .name = "ecdsa_secp256k1_sha256_5258", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5258_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5258_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5258_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5259 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5259_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5259_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5259 = { .name = "ecdsa_secp256k1_sha256_5259", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5259_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5259_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5259_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5260 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5260_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5260_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5260 = { .name = "ecdsa_secp256k1_sha256_5260", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5260_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5260_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5260_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5261 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5261_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5261_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5261 = { .name = "ecdsa_secp256k1_sha256_5261", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5261_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5261_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5261_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5262 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5262_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5262_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5262 = { .name = "ecdsa_secp256k1_sha256_5262", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5262_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5262_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5262_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5263 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5263_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5263_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5263 = { .name = "ecdsa_secp256k1_sha256_5263", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5263_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5263_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5263_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5264 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5264_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5264_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5264 = { .name = "ecdsa_secp256k1_sha256_5264", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5264_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5264_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5264_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5265 for ECDSA, tcId is 214 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5265_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5265_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5265 = { .name = "ecdsa_secp256k1_sha256_5265", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5265_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5265_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5265_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5266 for ECDSA, tcId is 215 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5266_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5266_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5266 = { .name = "ecdsa_secp256k1_sha256_5266", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5266_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5266_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5266_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5267 for ECDSA, tcId is 216 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5267_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5267_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5267 = { .name = "ecdsa_secp256k1_sha256_5267", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5267_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5267_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5267_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5268 for ECDSA, tcId is 217 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5268_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5268_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5268 = { .name = "ecdsa_secp256k1_sha256_5268", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5268_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5268_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5268_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5269 for ECDSA, tcId is 218 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5269_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5269_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5269 = { .name = "ecdsa_secp256k1_sha256_5269", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5269_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5269_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5269_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5270 for ECDSA, tcId is 219 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5270_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5270_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5270 = { .name = "ecdsa_secp256k1_sha256_5270", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5270_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5270_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5270_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5271 for ECDSA, tcId is 220 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5271_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5271_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5271 = { .name = "ecdsa_secp256k1_sha256_5271", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5271_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5271_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5271_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5272 for ECDSA, tcId is 221 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5272_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5272_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5272 = { .name = "ecdsa_secp256k1_sha256_5272", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5272_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5272_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5272_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5273 for ECDSA, tcId is 230 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5273_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5273_msg[] = { 0x32, 0x35, 0x35, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5273_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0x35, 0x13, 0x8c, 0x40, 0x1e, 0xf8, 0xd3, 0x49, 0x3d, 0x65, 0xc9, 0x00, 0x2f, 0xe6, 0x2b, 0x43, 0xae, 0xe5, 0x68, 0x73, 0x1b, 0x74, 0x45, 0x48, 0x35, 0x89, 0x96, 0xd9, 0xcc, 0x42, 0x7e, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5273 = { .name = "ecdsa_secp256k1_sha256_5273", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5273_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5273_msg, .msglen = 5, .sig = ecdsa_secp256k1_sha256_5273_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5274 for ECDSA, tcId is 231 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5274_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5274_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5274_sig[] = { 0x95, 0xc2, 0x92, 0x67, 0xd9, 0x72, 0xa0, 0x43, 0xd9, 0x55, 0x22, 0x45, 0x46, 0x22, 0x2b, 0xba, 0x34, 0x3f, 0xc1, 0xd4, 0xdb, 0x0f, 0xec, 0x26, 0x2a, 0x33, 0xac, 0x61, 0x30, 0x56, 0x96, 0xae, 0x6e, 0xdf, 0xe9, 0x67, 0x13, 0xae, 0xd5, 0x6f, 0x8a, 0x28, 0xa6, 0x65, 0x3f, 0x57, 0xe0, 0xb8, 0x29, 0x71, 0x2e, 0x5e, 0xdd, 0xc6, 0x7f, 0x34, 0x68, 0x2b, 0x24, 0xf0, 0x67, 0x6b, 0x26, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5274 = { .name = "ecdsa_secp256k1_sha256_5274", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5274_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5274_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5274_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5275 for ECDSA, tcId is 232 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5275_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5275_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5275_sig[] = { 0x28, 0xf9, 0x4a, 0x89, 0x4e, 0x92, 0x02, 0x46, 0x99, 0xe3, 0x45, 0xfe, 0x66, 0x97, 0x1e, 0x3e, 0xdc, 0xd0, 0x50, 0x02, 0x33, 0x86, 0x13, 0x5a, 0xb3, 0x93, 0x9d, 0x55, 0x08, 0x98, 0xfb, 0x25, 0xcd, 0x69, 0xc1, 0xa4, 0x2b, 0xe0, 0x5a, 0x6e, 0xe1, 0x27, 0x0c, 0x82, 0x14, 0x79, 0x25, 0x1e, 0x13, 0x4c, 0x21, 0x85, 0x8d, 0x80, 0x0b, 0xda, 0x6f, 0x4e, 0x98, 0xb3, 0x71, 0x96, 0x23, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5275 = { .name = "ecdsa_secp256k1_sha256_5275", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5275_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5275_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5275_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5276 for ECDSA, tcId is 233 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5276_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5276_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5276_sig[] = { 0xbe, 0x26, 0xb1, 0x8f, 0x95, 0x49, 0xf8, 0x9f, 0x41, 0x1a, 0x9b, 0x52, 0x53, 0x6b, 0x15, 0xaa, 0x27, 0x0b, 0x84, 0x54, 0x8d, 0x0e, 0x85, 0x9a, 0x19, 0x52, 0xa2, 0x7a, 0xf1, 0xa7, 0x7a, 0xc6, 0x8f, 0x3e, 0x2b, 0x05, 0x63, 0x2f, 0xc3, 0x37, 0x15, 0x57, 0x2a, 0xf9, 0x12, 0x46, 0x81, 0x11, 0x3f, 0x2b, 0x84, 0x32, 0x5b, 0x80, 0x15, 0x4c, 0x04, 0x4a, 0x54, 0x4d, 0xc1, 0xa8, 0xfa, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5276 = { .name = "ecdsa_secp256k1_sha256_5276", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5276_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5276_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5276_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5277 for ECDSA, tcId is 234 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5277_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5277_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5277_sig[] = { 0xb1, 0xa4, 0xb1, 0x47, 0x8e, 0x65, 0xcc, 0x3e, 0xaf, 0xdf, 0x22, 0x5d, 0x12, 0x98, 0xb4, 0x3f, 0x2d, 0xa1, 0x9e, 0x4b, 0xcf, 0xf7, 0xea, 0xcc, 0x0a, 0x2e, 0x98, 0xcd, 0x4b, 0x74, 0xb1, 0x14, 0xe8, 0x65, 0x5c, 0xe1, 0xcf, 0xb3, 0x3e, 0xbd, 0x30, 0xaf, 0x8c, 0xe8, 0xe8, 0xae, 0x4d, 0x6f, 0x7b, 0x50, 0xcd, 0x3e, 0x22, 0xaf, 0x51, 0xbf, 0x69, 0xe0, 0xa2, 0x85, 0x17, 0x60, 0xd5, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5277 = { .name = "ecdsa_secp256k1_sha256_5277", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5277_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5277_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5277_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5278 for ECDSA, tcId is 235 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5278_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5278_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5278_sig[] = { 0x32, 0x53, 0x32, 0x02, 0x12, 0x61, 0xf1, 0xbd, 0x18, 0xf2, 0x71, 0x2a, 0xa1, 0xe2, 0x25, 0x2d, 0xa2, 0x37, 0x96, 0xda, 0x8a, 0x4b, 0x1f, 0xf6, 0xea, 0x18, 0xca, 0xfe, 0xc7, 0xe1, 0x71, 0xf2, 0x40, 0xb4, 0xf5, 0xe2, 0x87, 0xee, 0x61, 0xfc, 0x3c, 0x80, 0x41, 0x86, 0x98, 0x23, 0x60, 0x89, 0x1e, 0xaa, 0x35, 0xc7, 0x5f, 0x05, 0xa4, 0x3e, 0xcd, 0x48, 0xb3, 0x5d, 0x98, 0x4a, 0x66, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5278 = { .name = "ecdsa_secp256k1_sha256_5278", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5278_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5278_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5278_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5279 for ECDSA, tcId is 236 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5279_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5279_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5279_sig[] = { 0xa2, 0x3a, 0xd1, 0x8d, 0x8f, 0xc6, 0x6d, 0x81, 0xaf, 0x09, 0x03, 0x89, 0x0c, 0xbd, 0x45, 0x3a, 0x55, 0x4c, 0xb0, 0x4c, 0xdc, 0x1a, 0x8c, 0xa7, 0xf7, 0xf7, 0x8e, 0x53, 0x67, 0xed, 0x88, 0xa0, 0xdc, 0x1c, 0x14, 0xd3, 0x1e, 0x3f, 0xb1, 0x58, 0xb7, 0x3c, 0x76, 0x42, 0x68, 0xc8, 0xb5, 0x55, 0x79, 0x73, 0x4a, 0x7e, 0x2a, 0x2c, 0x9b, 0x5e, 0xe5, 0xd9, 0xd0, 0x14, 0x4e, 0xf6, 0x52, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5279 = { .name = "ecdsa_secp256k1_sha256_5279", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5279_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5279_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5279_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5280 for ECDSA, tcId is 237 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5280_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5280_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5280_sig[] = { 0x2b, 0xde, 0xa4, 0x1c, 0xda, 0x63, 0xa2, 0xd1, 0x4b, 0xf4, 0x73, 0x53, 0xbd, 0x20, 0x88, 0x0a, 0x69, 0x09, 0x01, 0xde, 0x7c, 0xd6, 0xe3, 0xcc, 0x6d, 0x8e, 0xd5, 0xba, 0x0c, 0xdb, 0x10, 0x91, 0xc3, 0x15, 0x99, 0x43, 0x30, 0x36, 0x06, 0x40, 0x73, 0x83, 0x5b, 0x1e, 0x3e, 0xba, 0x83, 0x35, 0xa6, 0x50, 0xc8, 0xfd, 0x78, 0x6f, 0x94, 0xfe, 0x23, 0x5a, 0xd7, 0xd4, 0x1d, 0xc9, 0x4c, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5280 = { .name = "ecdsa_secp256k1_sha256_5280", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5280_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5280_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5280_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5281 for ECDSA, tcId is 238 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5281_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5281_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5281_sig[] = { 0xd7, 0xcd, 0x76, 0xec, 0x01, 0xc1, 0xb1, 0x07, 0x9e, 0xba, 0x9e, 0x2a, 0xa2, 0xa3, 0x97, 0x24, 0x3c, 0x47, 0x58, 0xc9, 0x8a, 0x1b, 0xa0, 0xb7, 0x40, 0x4a, 0x34, 0x0b, 0x9b, 0x00, 0xce, 0xd6, 0xca, 0x8a, 0xff, 0xe1, 0xe6, 0x26, 0xdd, 0x19, 0x21, 0x74, 0xc2, 0x93, 0x7b, 0x15, 0xbc, 0x48, 0xf7, 0x7b, 0x5b, 0xdf, 0xe0, 0x1f, 0x07, 0x3a, 0x8a, 0xea, 0xf7, 0xf2, 0x4d, 0xc6, 0xc8, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5281 = { .name = "ecdsa_secp256k1_sha256_5281", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5281_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5281_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5281_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5282 for ECDSA, tcId is 239 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5282_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5282_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5282_sig[] = { 0xa8, 0x72, 0xc7, 0x44, 0xd9, 0x36, 0xdb, 0x21, 0xa1, 0x0c, 0x36, 0x1d, 0xd5, 0xc9, 0x06, 0x33, 0x55, 0xf8, 0x49, 0x02, 0x21, 0x96, 0x52, 0xf6, 0xfc, 0x56, 0xdc, 0x95, 0xa7, 0x13, 0x9d, 0x96, 0x40, 0x0d, 0xf7, 0x57, 0x5d, 0x97, 0x56, 0x21, 0x0e, 0x9c, 0xcc, 0x77, 0x16, 0x2c, 0x6b, 0x59, 0x3c, 0x77, 0x46, 0xcf, 0xb4, 0x8a, 0xc2, 0x63, 0xc4, 0x27, 0x50, 0xb4, 0x21, 0xef, 0x4b, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5282 = { .name = "ecdsa_secp256k1_sha256_5282", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5282_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5282_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5282_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5283 for ECDSA, tcId is 240 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5283_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5283_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5283_sig[] = { 0x9f, 0xa9, 0xaf, 0xe0, 0x77, 0x52, 0xda, 0x10, 0xb3, 0x6d, 0x3a, 0xfc, 0xd0, 0xfe, 0x44, 0xbf, 0xc4, 0x02, 0x44, 0xd7, 0x52, 0x03, 0x59, 0x9c, 0xf8, 0xf5, 0x04, 0x7f, 0xa3, 0x45, 0x38, 0x54, 0xaf, 0x1f, 0x58, 0x3f, 0xec, 0x40, 0x40, 0xae, 0x7e, 0x68, 0xc9, 0x68, 0xd2, 0xbb, 0x4b, 0x49, 0x4e, 0xec, 0x3a, 0x33, 0xed, 0xc7, 0xc0, 0xcc, 0xf9, 0x5f, 0x7f, 0x75, 0xbc, 0x25, 0x69, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5283 = { .name = "ecdsa_secp256k1_sha256_5283", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5283_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5283_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5283_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5284 for ECDSA, tcId is 241 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5284_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5284_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5284_sig[] = { 0x88, 0x56, 0x40, 0x38, 0x4d, 0x0d, 0x91, 0x0e, 0xfb, 0x17, 0x7b, 0x46, 0xbe, 0x6c, 0x3d, 0xc5, 0xca, 0xc8, 0x1f, 0x0b, 0x88, 0xc3, 0x19, 0x0b, 0xb6, 0xb5, 0xf9, 0x9c, 0x26, 0x41, 0xf2, 0x05, 0x73, 0x8e, 0xd9, 0xbf, 0xf1, 0x16, 0x30, 0x6d, 0x9c, 0xaa, 0x0f, 0x8f, 0xc6, 0x08, 0xbe, 0x24, 0x3e, 0x0b, 0x56, 0x77, 0x79, 0xd8, 0xda, 0xb0, 0x3e, 0x8e, 0x19, 0xd5, 0x53, 0xf1, 0xdc, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5284 = { .name = "ecdsa_secp256k1_sha256_5284", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5284_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5284_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5284_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5285 for ECDSA, tcId is 242 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5285_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5285_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5285_sig[] = { 0x2d, 0x05, 0x1f, 0x91, 0xc5, 0xa9, 0xd4, 0x40, 0xc5, 0x67, 0x69, 0x85, 0x71, 0x04, 0x83, 0xbc, 0x4f, 0x1a, 0x6c, 0x61, 0x1b, 0x10, 0xc9, 0x5a, 0x2f, 0xf0, 0x36, 0x3d, 0x90, 0xc2, 0xa4, 0x58, 0x92, 0x20, 0x6b, 0x19, 0x04, 0x5a, 0x41, 0xa7, 0x97, 0xcc, 0x2f, 0x3a, 0xc3, 0x0d, 0xe9, 0x51, 0x81, 0x65, 0xe9, 0x6d, 0x5b, 0x86, 0x34, 0x1e, 0xcb, 0x3b, 0xcf, 0xf2, 0x31, 0xb3, 0xfd, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5285 = { .name = "ecdsa_secp256k1_sha256_5285", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5285_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5285_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5285_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5286 for ECDSA, tcId is 243 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5286_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5286_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5286_sig[] = { 0xf3, 0xac, 0x25, 0x23, 0x96, 0x74, 0x82, 0xf5, 0x3d, 0x50, 0x85, 0x22, 0x71, 0x2d, 0x58, 0x3f, 0x43, 0x79, 0xcd, 0x82, 0x41, 0x01, 0xff, 0x63, 0x5e, 0xa0, 0x93, 0x51, 0x17, 0xba, 0xa5, 0x4f, 0x27, 0xf1, 0x08, 0x12, 0x22, 0x73, 0x97, 0xe0, 0x2c, 0xea, 0x96, 0xfb, 0x0e, 0x68, 0x07, 0x61, 0x63, 0x6d, 0xab, 0x2b, 0x08, 0x0d, 0x1f, 0xc5, 0xd1, 0x16, 0x85, 0xcb, 0xe8, 0x50, 0x0c, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5286 = { .name = "ecdsa_secp256k1_sha256_5286", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5286_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5286_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5286_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5287 for ECDSA, tcId is 244 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5287_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5287_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5287_sig[] = { 0x96, 0x44, 0x7c, 0xf6, 0x8c, 0x3a, 0xb7, 0x26, 0x6e, 0xd7, 0x44, 0x7d, 0xe3, 0xac, 0x52, 0xfe, 0xd7, 0xcc, 0x08, 0xcb, 0xdf, 0xea, 0x39, 0x1c, 0x18, 0xa9, 0xb8, 0xab, 0x37, 0x0b, 0xc9, 0x13, 0xf0, 0xa1, 0x87, 0x8b, 0x2c, 0x53, 0xf1, 0x6e, 0x70, 0xfe, 0x37, 0x7a, 0x5e, 0x9c, 0x6e, 0x86, 0xf1, 0x8a, 0xe4, 0x80, 0xa2, 0x2b, 0xb4, 0x99, 0xf5, 0xb3, 0x2e, 0x71, 0x09, 0xc0, 0x73, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5287 = { .name = "ecdsa_secp256k1_sha256_5287", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5287_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5287_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5287_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5288 for ECDSA, tcId is 245 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5288_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5288_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5288_sig[] = { 0x53, 0x0a, 0x08, 0x32, 0xb6, 0x91, 0xda, 0x0b, 0x56, 0x19, 0xa0, 0xb1, 0x1d, 0xe6, 0x87, 0x7f, 0x3c, 0x09, 0x71, 0xba, 0xaa, 0x68, 0xed, 0x12, 0x27, 0x58, 0xc2, 0x9c, 0xaa, 0xf4, 0x6b, 0x72, 0x93, 0x76, 0x1b, 0xb0, 0xa1, 0x4c, 0xcf, 0x9f, 0x15, 0xb4, 0xb9, 0xce, 0x73, 0xc6, 0xec, 0x70, 0x0b, 0xd0, 0x15, 0xb8, 0xcb, 0x1c, 0xfa, 0xc5, 0x68, 0x37, 0xf4, 0x46, 0x3f, 0x53, 0x07, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5288 = { .name = "ecdsa_secp256k1_sha256_5288", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5288_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5288_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5288_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5289 for ECDSA, tcId is 246 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5289_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5289_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5289_sig[] = { 0x9c, 0x54, 0xc2, 0x55, 0x00, 0xbd, 0xe0, 0xb9, 0x2d, 0x72, 0xd6, 0xec, 0x48, 0x3d, 0xc2, 0x48, 0x2f, 0x36, 0x54, 0x29, 0x4c, 0xa7, 0x4d, 0xe7, 0x96, 0xb6, 0x81, 0x25, 0x5e, 0xd5, 0x8a, 0x77, 0x98, 0x8b, 0xac, 0x39, 0x4a, 0x90, 0xad, 0x89, 0xce, 0x36, 0x09, 0x84, 0xc0, 0xc1, 0x49, 0xdc, 0xbd, 0x26, 0x84, 0xbb, 0x64, 0x49, 0x8a, 0xce, 0x90, 0xbc, 0xf6, 0xb6, 0xaf, 0x1c, 0x17, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5289 = { .name = "ecdsa_secp256k1_sha256_5289", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5289_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5289_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5289_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5290 for ECDSA, tcId is 247 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5290_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5290_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5290_sig[] = { 0xe7, 0x90, 0x9d, 0x41, 0x43, 0x9e, 0x2f, 0x6a, 0xf2, 0x91, 0x36, 0xc7, 0x34, 0x8c, 0xa2, 0x64, 0x1a, 0x2b, 0x07, 0x0d, 0x5b, 0x64, 0xf9, 0x1e, 0xa9, 0xda, 0x70, 0x70, 0xc7, 0xa2, 0x61, 0x8b, 0x42, 0xd7, 0x82, 0xf1, 0x32, 0xfa, 0x1d, 0x36, 0xc2, 0xc8, 0x8b, 0xa2, 0x7c, 0x3d, 0x67, 0x8d, 0x80, 0x18, 0x4a, 0x5d, 0x1e, 0xcc, 0xac, 0x75, 0x01, 0xf0, 0xb4, 0x7e, 0x3d, 0x20, 0x50, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5290 = { .name = "ecdsa_secp256k1_sha256_5290", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5290_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5290_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5290_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5291 for ECDSA, tcId is 248 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5291_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5291_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5291_sig[] = { 0x59, 0x24, 0x87, 0x32, 0x09, 0x59, 0x31, 0x35, 0xa4, 0xc3, 0xda, 0x7b, 0xb3, 0x81, 0x22, 0x7f, 0x8a, 0x4b, 0x6a, 0xa9, 0xf3, 0x4f, 0xe5, 0xbb, 0x7f, 0x8f, 0xbc, 0x13, 0x1a, 0x03, 0x9f, 0xfe, 0xe0, 0xe4, 0x4e, 0xe4, 0xbb, 0xe3, 0x70, 0x15, 0x5b, 0xf0, 0xbb, 0xde, 0xc2, 0x65, 0xbf, 0x9f, 0xe3, 0x1c, 0x07, 0x46, 0xfa, 0xab, 0x44, 0x6d, 0xe6, 0x2e, 0x36, 0x31, 0xea, 0xcd, 0x11, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5291 = { .name = "ecdsa_secp256k1_sha256_5291", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5291_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5291_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5291_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5292 for ECDSA, tcId is 249 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5292_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5292_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5292_sig[] = { 0xee, 0xb6, 0x92, 0xc9, 0xb2, 0x62, 0x96, 0x9b, 0x23, 0x1c, 0x38, 0xb5, 0xa7, 0xf6, 0x06, 0x49, 0xe0, 0xc8, 0x75, 0xcd, 0x64, 0xdf, 0x88, 0xf3, 0x3a, 0xa5, 0x71, 0xfa, 0x3d, 0x29, 0xab, 0x0e, 0x21, 0x8b, 0x3a, 0x1e, 0xb0, 0x63, 0x79, 0xc2, 0xc1, 0x8c, 0xf5, 0x1b, 0x06, 0x43, 0x07, 0x86, 0xd1, 0xc6, 0x4c, 0xd2, 0xd2, 0x4c, 0x9b, 0x23, 0x2b, 0x23, 0xe5, 0xba, 0xc7, 0x98, 0x9a, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5292 = { .name = "ecdsa_secp256k1_sha256_5292", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5292_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5292_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5292_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5293 for ECDSA, tcId is 250 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5293_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5293_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5293_sig[] = { 0xa4, 0x00, 0x34, 0x17, 0x7f, 0x36, 0x09, 0x1c, 0x2b, 0x65, 0x36, 0x84, 0xa0, 0xe3, 0xeb, 0x5d, 0x4b, 0xff, 0x18, 0xe4, 0xd0, 0x9f, 0x66, 0x4c, 0x28, 0x00, 0xe7, 0xca, 0xfd, 0xa1, 0xda, 0xf8, 0x3a, 0x3e, 0xc2, 0x98, 0x53, 0x70, 0x4e, 0x52, 0x03, 0x1c, 0x58, 0x92, 0x7a, 0x80, 0x0a, 0x96, 0x83, 0x53, 0xad, 0xc3, 0xd9, 0x73, 0xbe, 0xba, 0x91, 0x72, 0xcb, 0xbe, 0xab, 0x4d, 0xd1, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5293 = { .name = "ecdsa_secp256k1_sha256_5293", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5293_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5293_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5293_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5294 for ECDSA, tcId is 251 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5294_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5294_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5294_sig[] = { 0xb5, 0xd7, 0x95, 0xcc, 0x75, 0xce, 0xa5, 0xc4, 0x34, 0xfa, 0x41, 0x85, 0x18, 0x0c, 0xd6, 0xbd, 0x21, 0x22, 0x3f, 0x3d, 0x5a, 0x86, 0xda, 0x66, 0x70, 0xd7, 0x1d, 0x95, 0x68, 0x0d, 0xad, 0xbf, 0xab, 0x1b, 0x27, 0x7e, 0xf5, 0xff, 0xe1, 0x34, 0x46, 0x08, 0x35, 0xe3, 0xd1, 0x40, 0x24, 0x61, 0xba, 0x10, 0x4c, 0xb5, 0x0b, 0x16, 0xf3, 0x97, 0xfd, 0xc7, 0xa9, 0xab, 0xfe, 0xfe, 0xf2, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5294 = { .name = "ecdsa_secp256k1_sha256_5294", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5294_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5294_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5294_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5295 for ECDSA, tcId is 252 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5295_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5295_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5295_sig[] = { 0x07, 0xdc, 0x24, 0x78, 0xd4, 0x3c, 0x12, 0x32, 0xa4, 0x59, 0x56, 0x08, 0xc6, 0x44, 0x26, 0xc3, 0x55, 0x10, 0x05, 0x1a, 0x63, 0x1a, 0xe6, 0xa5, 0xa6, 0xeb, 0x11, 0x61, 0xe5, 0x7e, 0x42, 0xe1, 0x4a, 0x59, 0xea, 0x0f, 0xdb, 0x72, 0xd1, 0x21, 0x65, 0xce, 0xa3, 0xbf, 0x1c, 0xa8, 0x6b, 0xa9, 0x75, 0x17, 0xbd, 0x18, 0x8d, 0xb3, 0xdb, 0xd2, 0x1a, 0x5a, 0x15, 0x78, 0x50, 0x02, 0x19, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5295 = { .name = "ecdsa_secp256k1_sha256_5295", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5295_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5295_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5295_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5296 for ECDSA, tcId is 253 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5296_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5296_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5296_sig[] = { 0xdd, 0xd2, 0x0c, 0x4a, 0x05, 0x59, 0x6c, 0xa8, 0x68, 0xb5, 0x58, 0x83, 0x9f, 0xce, 0x9f, 0x65, 0x11, 0xdd, 0xd8, 0x3d, 0x1c, 0xcb, 0x53, 0xf8, 0x2e, 0x52, 0x69, 0xd5, 0x59, 0xa0, 0x15, 0x52, 0xa4, 0x6e, 0x8c, 0xb8, 0xd6, 0x26, 0xcf, 0x6c, 0x00, 0xdd, 0xed, 0xc3, 0xb5, 0xda, 0x7e, 0x61, 0x3a, 0xc3, 0x76, 0x44, 0x5e, 0xe2, 0x60, 0x74, 0x3f, 0x06, 0xf7, 0x90, 0x54, 0xc7, 0xd4, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5296 = { .name = "ecdsa_secp256k1_sha256_5296", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5296_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5296_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5296_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5297 for ECDSA, tcId is 254 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5297_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5297_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5297_sig[] = { 0x9c, 0xde, 0x6e, 0x0e, 0xde, 0x0a, 0x00, 0x3f, 0x02, 0xfd, 0xa0, 0xa0, 0x1b, 0x59, 0xfa, 0xcf, 0xe5, 0xde, 0xc0, 0x63, 0x31, 0x8f, 0x27, 0x9c, 0xe2, 0xde, 0x7a, 0x9b, 0x10, 0x62, 0xf7, 0xb7, 0x28, 0x86, 0xa5, 0xb8, 0xc6, 0x79, 0xbd, 0xf8, 0x22, 0x4c, 0x66, 0xf9, 0x08, 0xfd, 0x62, 0x05, 0x49, 0x2c, 0xb7, 0x0b, 0x00, 0x68, 0xd4, 0x6a, 0xe4, 0xf3, 0x3a, 0x41, 0x49, 0xb1, 0x2a, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5297 = { .name = "ecdsa_secp256k1_sha256_5297", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5297_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5297_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5297_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5298 for ECDSA, tcId is 255 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5298_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5298_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5298_sig[] = { 0xc5, 0x77, 0x10, 0x16, 0xd0, 0xdd, 0x63, 0x57, 0x14, 0x3c, 0x89, 0xf6, 0x84, 0xcd, 0x74, 0x04, 0x23, 0x50, 0x25, 0x54, 0xc0, 0xc5, 0x9a, 0xa8, 0xc9, 0x95, 0x84, 0xf1, 0xff, 0x38, 0xf6, 0x09, 0xab, 0x4b, 0xfa, 0x0b, 0xb8, 0x8a, 0xb9, 0x97, 0x91, 0xb9, 0xb3, 0xab, 0x9c, 0x4b, 0x02, 0xbd, 0x2a, 0x57, 0xae, 0x8d, 0xde, 0x50, 0xb9, 0x06, 0x40, 0x63, 0xfc, 0xf8, 0x53, 0x15, 0xcf, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5298 = { .name = "ecdsa_secp256k1_sha256_5298", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5298_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5298_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5298_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5299 for ECDSA, tcId is 256 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5299_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5299_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5299_sig[] = { 0xa2, 0x4e, 0xbc, 0x0e, 0xc2, 0x24, 0xbd, 0x67, 0xae, 0x39, 0x7c, 0xbe, 0x6f, 0xa3, 0x7b, 0x31, 0x25, 0xad, 0xbd, 0x34, 0x89, 0x1a, 0xbe, 0x2d, 0x7c, 0x73, 0x56, 0x92, 0x19, 0x16, 0xdf, 0xe6, 0x34, 0xf6, 0xeb, 0x63, 0x74, 0x73, 0x1b, 0xbb, 0xaf, 0xc4, 0x92, 0x4f, 0xb8, 0xb0, 0xbd, 0xcd, 0xda, 0x49, 0x45, 0x6d, 0x72, 0x4c, 0xda, 0xe6, 0x17, 0x8d, 0x87, 0x01, 0x4c, 0xb5, 0x3d, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5299 = { .name = "ecdsa_secp256k1_sha256_5299", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5299_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5299_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5299_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5300 for ECDSA, tcId is 257 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5300_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5300_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5300_sig[] = { 0x25, 0x57, 0xd6, 0x4a, 0x7a, 0xee, 0x2e, 0x09, 0x31, 0xc0, 0x12, 0xe4, 0xfe, 0xa1, 0xcd, 0x3a, 0x2c, 0x33, 0x4e, 0xda, 0xe6, 0x8c, 0xde, 0xb7, 0x15, 0x8c, 0xaf, 0x21, 0xb6, 0x8e, 0x5a, 0x24, 0x80, 0xf9, 0x32, 0x44, 0x95, 0x6f, 0xfd, 0xc5, 0x68, 0xc7, 0x7d, 0x12, 0x68, 0x4f, 0x7f, 0x00, 0x4f, 0xa9, 0x2d, 0xa7, 0xe6, 0x0a, 0xe9, 0x4a, 0x1b, 0x98, 0xc4, 0x22, 0xe2, 0x3e, 0xda, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5300 = { .name = "ecdsa_secp256k1_sha256_5300", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5300_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5300_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5300_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5301 for ECDSA, tcId is 258 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5301_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5301_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5301_sig[] = { 0xc4, 0xf2, 0xec, 0xcb, 0xb6, 0xa2, 0x43, 0x50, 0xc8, 0x46, 0x64, 0x50, 0xb9, 0xd6, 0x1b, 0x20, 0x7e, 0xe3, 0x59, 0xe0, 0x37, 0xb3, 0xdc, 0xed, 0xb4, 0x2a, 0x3f, 0x2e, 0x6d, 0xd6, 0xae, 0xb5, 0xcd, 0x9c, 0x39, 0x4a, 0x65, 0xd0, 0xaa, 0x32, 0x2e, 0x39, 0x1e, 0xb7, 0x6b, 0x2a, 0x1a, 0x68, 0x7f, 0x86, 0x20, 0xa8, 0x8a, 0xde, 0xf3, 0xa0, 0x1e, 0xb8, 0xe4, 0xfb, 0x05, 0xb6, 0x47, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5301 = { .name = "ecdsa_secp256k1_sha256_5301", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5301_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5301_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5301_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5302 for ECDSA, tcId is 259 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5302_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5302_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_5302_sig[] = { 0xef, 0xf0, 0x47, 0x81, 0xc9, 0xcb, 0xcd, 0x16, 0x2d, 0x0a, 0x25, 0xa6, 0xe2, 0xeb, 0xcc, 0xa4, 0x35, 0x06, 0xc5, 0x23, 0x38, 0x5c, 0xb5, 0x15, 0xd4, 0x9e, 0xa3, 0x8a, 0x1b, 0x12, 0xfc, 0xad, 0xea, 0x53, 0x28, 0xce, 0x6b, 0x36, 0xe5, 0x6a, 0xb8, 0x7a, 0xcb, 0x0d, 0xcf, 0xea, 0x49, 0x8b, 0xce, 0xc1, 0xbb, 0xa8, 0x6a, 0x06, 0x52, 0x68, 0xf6, 0xef, 0xf3, 0xc4, 0x1c, 0x4b, 0x0c, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5302 = { .name = "ecdsa_secp256k1_sha256_5302", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5302_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5302_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5302_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5303 for ECDSA, tcId is 260 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5303_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5303_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5303_sig[] = { 0xf5, 0x8b, 0x4e, 0x31, 0x10, 0xa6, 0x4b, 0xf1, 0xb5, 0xdb, 0x97, 0x63, 0x9e, 0xe0, 0xe5, 0xa9, 0xc8, 0xdf, 0xa4, 0x9d, 0xc5, 0x9b, 0x67, 0x98, 0x91, 0xf5, 0x20, 0xfd, 0xf0, 0x58, 0x4c, 0x87, 0xd3, 0x27, 0x01, 0xae, 0x77, 0x75, 0x11, 0x62, 0x4c, 0x1f, 0x8a, 0xbb, 0xf0, 0x2b, 0x24, 0x8b, 0x04, 0xe7, 0xa9, 0xeb, 0x27, 0x93, 0x8f, 0x52, 0x4f, 0x3e, 0x88, 0x28, 0xba, 0x40, 0x16, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5303 = { .name = "ecdsa_secp256k1_sha256_5303", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5303_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5303_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5303_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5304 for ECDSA, tcId is 261 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5304_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5304_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5304_sig[] = { 0xf8, 0xab, 0xec, 0xaa, 0x4f, 0x0c, 0x50, 0x2d, 0xe4, 0xbf, 0x59, 0x03, 0xd4, 0x84, 0x17, 0xf7, 0x86, 0xbf, 0x92, 0xe8, 0xad, 0x72, 0xfe, 0xc0, 0xbd, 0x7f, 0xcb, 0x78, 0x00, 0xc0, 0xbb, 0xe3, 0x4c, 0x7f, 0x9e, 0x23, 0x10, 0x76, 0xa3, 0x0b, 0x7a, 0xe3, 0x6b, 0x0c, 0xeb, 0xe6, 0x9c, 0xce, 0xf1, 0xcd, 0x19, 0x4f, 0x7c, 0xce, 0x93, 0xa5, 0x58, 0x8f, 0xd6, 0x81, 0x4f, 0x43, 0x7c, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5304 = { .name = "ecdsa_secp256k1_sha256_5304", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5304_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5304_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5304_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5305 for ECDSA, tcId is 262 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5305_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5305_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5305_sig[] = { 0x5d, 0x5b, 0x38, 0xbd, 0x37, 0xad, 0x49, 0x8b, 0x22, 0x27, 0xa6, 0x33, 0x26, 0x8a, 0x8c, 0xca, 0x87, 0x9a, 0x5c, 0x7c, 0x94, 0xa4, 0xe4, 0x16, 0xbd, 0x0a, 0x61, 0x4d, 0x09, 0xe6, 0x06, 0xd2, 0x12, 0xb8, 0xd6, 0x64, 0xea, 0x99, 0x91, 0x06, 0x2e, 0xcb, 0xb8, 0x34, 0xe5, 0x84, 0x00, 0xe2, 0x5c, 0x46, 0x00, 0x7a, 0xf8, 0x4f, 0x60, 0x07, 0xd7, 0xf1, 0x68, 0x54, 0x43, 0x26, 0x9a, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5305 = { .name = "ecdsa_secp256k1_sha256_5305", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5305_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5305_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5305_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5306 for ECDSA, tcId is 263 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5306_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5306_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5306_sig[] = { 0x0c, 0x1c, 0xd9, 0xfe, 0x40, 0x34, 0xf0, 0x86, 0xa2, 0xb5, 0x2d, 0x65, 0xb9, 0xd3, 0x83, 0x4d, 0x72, 0xae, 0xbe, 0x7f, 0x33, 0xdf, 0xe8, 0xf9, 0x76, 0xda, 0x82, 0x64, 0x81, 0x77, 0xd8, 0xe3, 0x13, 0x10, 0x57, 0x82, 0xe3, 0xd0, 0xcf, 0xe8, 0x5c, 0x27, 0x78, 0xde, 0xc1, 0xa8, 0x48, 0xb2, 0x7a, 0xc0, 0xae, 0x07, 0x1a, 0xa6, 0xda, 0x34, 0x1a, 0x95, 0x53, 0xa9, 0x46, 0xb4, 0x1e, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5306 = { .name = "ecdsa_secp256k1_sha256_5306", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5306_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5306_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5306_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5307 for ECDSA, tcId is 264 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5307_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5307_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5307_sig[] = { 0xae, 0x79, 0x35, 0xfb, 0x96, 0xff, 0x24, 0x6b, 0x7b, 0x5d, 0x56, 0x62, 0x87, 0x0d, 0x1b, 0xa5, 0x87, 0xb0, 0x3d, 0x6e, 0x13, 0x60, 0xba, 0xf4, 0x79, 0x88, 0xb5, 0xc0, 0x2c, 0xcc, 0x1a, 0x5b, 0x5f, 0x00, 0xc3, 0x23, 0x27, 0x20, 0x83, 0x78, 0x2d, 0x4a, 0x59, 0xf2, 0xdf, 0xd6, 0x5e, 0x49, 0xde, 0x06, 0x93, 0x62, 0x70, 0x16, 0x90, 0x0e, 0xf7, 0xe6, 0x14, 0x28, 0x05, 0x66, 0x64, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5307 = { .name = "ecdsa_secp256k1_sha256_5307", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5307_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5307_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5307_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5308 for ECDSA, tcId is 265 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5308_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5308_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5308_sig[] = { 0x00, 0xa1, 0x34, 0xb5, 0xc6, 0xcc, 0xbc, 0xef, 0xd4, 0xc8, 0x82, 0xb9, 0x45, 0xba, 0xeb, 0x49, 0x33, 0x44, 0x41, 0x72, 0x79, 0x5f, 0xa6, 0x79, 0x6a, 0xae, 0x14, 0x90, 0x67, 0x54, 0x70, 0x98, 0xa9, 0x91, 0xb9, 0xef, 0xa2, 0xdb, 0x27, 0x6f, 0xea, 0xe1, 0xc1, 0x15, 0xc1, 0x40, 0x77, 0x09, 0x01, 0x83, 0x9d, 0x87, 0xe6, 0x0e, 0x7e, 0xc4, 0x5a, 0x2b, 0x81, 0xcf, 0x3b, 0x43, 0x7b, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5308 = { .name = "ecdsa_secp256k1_sha256_5308", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5308_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5308_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5308_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5309 for ECDSA, tcId is 266 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5309_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5309_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5309_sig[] = { 0x2e, 0x47, 0x21, 0x36, 0x3a, 0xd3, 0x99, 0x2c, 0x13, 0x9e, 0x5a, 0x1c, 0x26, 0x39, 0x5d, 0x2c, 0x2d, 0x77, 0x78, 0x24, 0xaa, 0x24, 0xfd, 0xe0, 0x75, 0xe0, 0xd7, 0x38, 0x11, 0x71, 0x30, 0x9d, 0x8b, 0xf0, 0x83, 0xb6, 0xbb, 0xe7, 0x1e, 0xcf, 0xf2, 0x2b, 0xae, 0xd0, 0x87, 0xd5, 0xa7, 0x7e, 0xae, 0xaf, 0x72, 0x6b, 0xf1, 0x4a, 0xce, 0x2c, 0x03, 0xfd, 0x6e, 0x37, 0xba, 0x6c, 0x26, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5309 = { .name = "ecdsa_secp256k1_sha256_5309", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5309_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5309_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5309_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5310 for ECDSA, tcId is 267 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5310_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5310_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5310_sig[] = { 0x68, 0x52, 0xe9, 0xd3, 0xcd, 0x9f, 0xe3, 0x73, 0xc2, 0xd5, 0x04, 0x87, 0x79, 0x67, 0xd3, 0x65, 0xab, 0x14, 0x56, 0x70, 0x7b, 0x68, 0x17, 0xa0, 0x42, 0x86, 0x46, 0x94, 0xe1, 0x96, 0x0c, 0xcf, 0xf9, 0xb4, 0xd8, 0x15, 0xeb, 0xd4, 0xcf, 0x77, 0x84, 0x7b, 0x37, 0x95, 0x23, 0x34, 0xd0, 0x5b, 0x20, 0x45, 0xcb, 0x39, 0x8d, 0x4c, 0x21, 0xba, 0x20, 0x79, 0x22, 0xa7, 0xa4, 0x71, 0x4d, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5310 = { .name = "ecdsa_secp256k1_sha256_5310", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5310_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5310_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5310_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5311 for ECDSA, tcId is 268 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5311_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5311_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_5311_sig[] = { 0x18, 0x8a, 0x8c, 0x56, 0x48, 0xdc, 0x79, 0xea, 0xce, 0x15, 0x8c, 0xf8, 0x86, 0xc6, 0x2b, 0x54, 0x68, 0xf0, 0x5f, 0xd9, 0x5f, 0x03, 0xa7, 0x63, 0x5c, 0x5b, 0x4c, 0x31, 0xf0, 0x9a, 0xf4, 0xc5, 0x36, 0x36, 0x1a, 0x0b, 0x57, 0x1a, 0x00, 0xc6, 0xcd, 0x5e, 0x68, 0x6c, 0xcb, 0xfc, 0xfa, 0x70, 0x3c, 0x4f, 0x97, 0xe4, 0x89, 0x38, 0x34, 0x6d, 0x0c, 0x10, 0x3f, 0xdc, 0x76, 0xdc, 0x58, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5311 = { .name = "ecdsa_secp256k1_sha256_5311", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5311_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5311_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5311_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5312 for ECDSA, tcId is 269 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5312_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5312_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_5312_sig[] = { 0xa7, 0x4f, 0x1f, 0xb9, 0xa8, 0x26, 0x3f, 0x62, 0xfc, 0x44, 0x16, 0xa5, 0xb7, 0xd5, 0x84, 0xf4, 0x20, 0x6f, 0x39, 0x96, 0xbb, 0x91, 0xf6, 0xfc, 0x8e, 0x73, 0xb9, 0xe9, 0x2b, 0xad, 0x0e, 0x13, 0x68, 0x15, 0x03, 0x2e, 0x8c, 0x7d, 0x76, 0xc3, 0xab, 0x06, 0xa8, 0x6f, 0x33, 0x24, 0x9c, 0xe9, 0x94, 0x01, 0x48, 0xcb, 0x36, 0xd1, 0xf4, 0x17, 0xc2, 0xe9, 0x92, 0xe8, 0x01, 0xaf, 0xa3, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5312 = { .name = "ecdsa_secp256k1_sha256_5312", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5312_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5312_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5312_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5313 for ECDSA, tcId is 270 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5313_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5313_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5313_sig[] = { 0x07, 0x24, 0x48, 0x65, 0xb7, 0x2f, 0xf3, 0x7e, 0x62, 0xe3, 0x14, 0x6f, 0x0d, 0xc1, 0x46, 0x82, 0xba, 0xdd, 0x71, 0x97, 0x79, 0x91, 0x35, 0xf0, 0xb0, 0x0a, 0xde, 0x76, 0x71, 0x74, 0x2b, 0xfe, 0xf2, 0x7f, 0x3d, 0xdc, 0x71, 0x24, 0xb1, 0xb5, 0x85, 0x79, 0x57, 0x3a, 0x83, 0x56, 0x50, 0xe7, 0xa8, 0xba, 0xd5, 0xee, 0xb9, 0x6e, 0x9d, 0xa2, 0x15, 0xcd, 0x7b, 0xf9, 0xa2, 0xa0, 0x39, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5313 = { .name = "ecdsa_secp256k1_sha256_5313", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5313_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5313_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5313_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5314 for ECDSA, tcId is 271 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5314_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5314_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5314_sig[] = { 0xda, 0x7f, 0xdd, 0x05, 0xb5, 0xba, 0xda, 0xbd, 0x61, 0x9d, 0x80, 0x5c, 0x4e, 0xe7, 0xd9, 0xa8, 0x4f, 0x84, 0xdd, 0xd5, 0xcf, 0x9c, 0x5b, 0xf4, 0xd4, 0x33, 0x81, 0x40, 0xd6, 0x89, 0xef, 0x08, 0x28, 0xf1, 0xcf, 0x4f, 0xa1, 0xc3, 0xc5, 0x86, 0x2c, 0xfa, 0x14, 0x9c, 0x00, 0x13, 0xcf, 0x5f, 0xe6, 0xcf, 0x50, 0x76, 0xca, 0xe0, 0x00, 0x51, 0x10, 0x63, 0xe7, 0xde, 0x25, 0xbb, 0x38, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5314 = { .name = "ecdsa_secp256k1_sha256_5314", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5314_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5314_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5314_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5315 for ECDSA, tcId is 272 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5315_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5315_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5315_sig[] = { 0xd3, 0x02, 0x7c, 0x65, 0x6f, 0x6d, 0x4f, 0xdf, 0xd8, 0xed, 0xe2, 0x20, 0x93, 0xe3, 0xc3, 0x03, 0xb0, 0x13, 0x3c, 0x34, 0x0d, 0x61, 0x5e, 0x77, 0x56, 0xf6, 0x25, 0x3a, 0xea, 0x92, 0x72, 0x38, 0xf6, 0x51, 0x0f, 0x9f, 0x37, 0x1b, 0x31, 0x06, 0x8d, 0x68, 0xbf, 0xee, 0xaa, 0x72, 0x0e, 0xb9, 0xbb, 0xdc, 0x80, 0x40, 0x14, 0x5f, 0xcf, 0x88, 0xd4, 0xe0, 0xb5, 0x8d, 0xe0, 0x77, 0x7d, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5315 = { .name = "ecdsa_secp256k1_sha256_5315", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5315_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5315_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5315_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5316 for ECDSA, tcId is 273 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5316_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5316_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5316_sig[] = { 0x0b, 0xf6, 0xc0, 0x18, 0x8d, 0xc9, 0x57, 0x1c, 0xd0, 0xe2, 0x1e, 0xec, 0xac, 0x5f, 0xbb, 0x19, 0xd2, 0x43, 0x49, 0x88, 0xe9, 0xcc, 0x10, 0x24, 0x45, 0x93, 0xef, 0x3a, 0x98, 0x09, 0x9f, 0x69, 0x48, 0x64, 0xa5, 0x62, 0x66, 0x1f, 0x92, 0x21, 0xec, 0x88, 0xe3, 0xdd, 0x0b, 0xc2, 0xf6, 0xe2, 0x7a, 0xc1, 0x28, 0xc3, 0x0c, 0xc1, 0xa8, 0x0f, 0x79, 0xec, 0x67, 0x0a, 0x22, 0xb0, 0x42, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5316 = { .name = "ecdsa_secp256k1_sha256_5316", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5316_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5316_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_5316_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5317 for ECDSA, tcId is 274 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5317_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5317_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5317_sig[] = { 0xae, 0x45, 0x96, 0x40, 0xd5, 0xd1, 0x17, 0x9b, 0xe4, 0x7a, 0x47, 0xfa, 0x53, 0x8e, 0x16, 0xd9, 0x4d, 0xde, 0xa5, 0x58, 0x5e, 0x7a, 0x24, 0x48, 0x04, 0xa5, 0x17, 0x42, 0xc6, 0x86, 0x44, 0x3a, 0x6c, 0x8e, 0x30, 0xe5, 0x30, 0xa6, 0x34, 0xfa, 0xe8, 0x0b, 0x3c, 0xeb, 0x06, 0x29, 0x78, 0xb3, 0x9e, 0xdb, 0xe1, 0x97, 0x77, 0xe0, 0xa2, 0x45, 0x53, 0xb6, 0x88, 0x86, 0x18, 0x1f, 0xd8, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5317 = { .name = "ecdsa_secp256k1_sha256_5317", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5317_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5317_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha256_5317_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5318 for ECDSA, tcId is 275 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5318_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5318_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5318_sig[] = { 0x1c, 0xf3, 0x51, 0x7b, 0xa3, 0xbf, 0x2a, 0xb8, 0xb9, 0xea, 0xd4, 0xeb, 0xb6, 0xe8, 0x66, 0xcb, 0x88, 0xa1, 0xde, 0xac, 0xb6, 0xa7, 0x85, 0xd3, 0xb6, 0x3b, 0x48, 0x3c, 0xa0, 0x2a, 0xc4, 0x95, 0x24, 0x9a, 0x79, 0x8b, 0x73, 0x60, 0x6f, 0x55, 0xf5, 0xf1, 0xc7, 0x0d, 0xe6, 0x7c, 0xb1, 0xa0, 0xcf, 0xf9, 0x5d, 0x7d, 0xc5, 0x0b, 0x3a, 0x61, 0x7d, 0xf8, 0x61, 0xba, 0xd3, 0xc6, 0xb1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5318 = { .name = "ecdsa_secp256k1_sha256_5318", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5318_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5318_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5318_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5319 for ECDSA, tcId is 276 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5319_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5319_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_5319_sig[] = { 0xe6, 0x9b, 0x52, 0x38, 0x26, 0x5e, 0xa3, 0x5d, 0x77, 0xe4, 0xdd, 0x17, 0x22, 0x88, 0xd8, 0xce, 0xa1, 0x98, 0x10, 0xa1, 0x02, 0x92, 0x61, 0x7d, 0x59, 0x76, 0x51, 0x9d, 0xc5, 0x75, 0x7c, 0xb8, 0x4b, 0x03, 0xc5, 0xbc, 0x47, 0xe8, 0x26, 0xbd, 0xb2, 0x73, 0x28, 0xab, 0xd3, 0x8d, 0x30, 0x56, 0xd7, 0x74, 0x76, 0xb2, 0x13, 0x0f, 0x3d, 0xf6, 0xec, 0x48, 0x91, 0xaf, 0x08, 0xba, 0x1e, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5319 = { .name = "ecdsa_secp256k1_sha256_5319", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5319_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5319_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5319_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5320 for ECDSA, tcId is 277 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5320_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5320_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_5320_sig[] = { 0x5f, 0x9d, 0x7d, 0x7c, 0x87, 0x0d, 0x08, 0x5f, 0xc1, 0xd4, 0x9f, 0xff, 0x69, 0xe4, 0xa2, 0x75, 0x81, 0x28, 0x00, 0xd2, 0xcf, 0x89, 0x73, 0xe7, 0x32, 0x58, 0x66, 0xcb, 0x40, 0xfa, 0x2b, 0x6f, 0x6d, 0x1f, 0x54, 0x91, 0xd9, 0xf7, 0x17, 0xa5, 0x97, 0xa1, 0x5f, 0xd5, 0x40, 0x40, 0x64, 0x86, 0xd7, 0x6a, 0x44, 0x69, 0x7b, 0x3f, 0x0d, 0x9d, 0x6d, 0xce, 0xf6, 0x66, 0x9f, 0x8a, 0x0a, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5320 = { .name = "ecdsa_secp256k1_sha256_5320", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5320_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5320_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5320_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5321 for ECDSA, tcId is 278 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5321_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5321_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5321_sig[] = { 0x0a, 0x7d, 0x5b, 0x19, 0x59, 0xf7, 0x1d, 0xf9, 0xf8, 0x17, 0x14, 0x6e, 0xe4, 0x9b, 0xd5, 0xc8, 0x9b, 0x43, 0x1e, 0x79, 0x93, 0xe2, 0xfd, 0xec, 0xab, 0x68, 0x58, 0x95, 0x7d, 0xa6, 0x85, 0xae, 0x0f, 0x8a, 0xad, 0x2d, 0x25, 0x46, 0x90, 0xbd, 0xc1, 0x3f, 0x34, 0xa4, 0xfe, 0xc4, 0x4a, 0x02, 0xfd, 0x74, 0x5a, 0x42, 0x2d, 0xf0, 0x5c, 0xcb, 0xb5, 0x46, 0x35, 0xa8, 0xb8, 0x6b, 0x96, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5321 = { .name = "ecdsa_secp256k1_sha256_5321", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5321_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5321_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5321_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5322 for ECDSA, tcId is 279 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5322_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5322_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5322_sig[] = { 0x79, 0xe8, 0x8b, 0xf5, 0x76, 0xb7, 0x4b, 0xc0, 0x7c, 0xa1, 0x42, 0x39, 0x5f, 0xda, 0x28, 0xf0, 0x3d, 0x3d, 0x5e, 0x64, 0x0b, 0x0b, 0x4f, 0xf0, 0x75, 0x2c, 0x6d, 0x94, 0xcd, 0x55, 0x34, 0x08, 0x32, 0xce, 0xa0, 0x5b, 0xd2, 0xd7, 0x06, 0xc8, 0xf6, 0x03, 0x6a, 0x50, 0x7e, 0x2a, 0xb7, 0x76, 0x60, 0x04, 0xf0, 0x90, 0x4e, 0x2e, 0x5c, 0x58, 0x62, 0x74, 0x9c, 0x00, 0x73, 0x24, 0x5d, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5322 = { .name = "ecdsa_secp256k1_sha256_5322", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5322_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5322_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5322_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5323 for ECDSA, tcId is 280 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5323_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5323_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5323_sig[] = { 0x9d, 0x54, 0xe0, 0x37, 0xa0, 0x02, 0x12, 0xb3, 0x77, 0xbc, 0x88, 0x74, 0x79, 0x8b, 0x8d, 0xa0, 0x80, 0x56, 0x4b, 0xbd, 0xf7, 0xe0, 0x75, 0x91, 0xb8, 0x61, 0x28, 0x58, 0x09, 0xd0, 0x14, 0x88, 0x18, 0xb4, 0xe5, 0x57, 0x66, 0x7a, 0x82, 0xbd, 0x95, 0x96, 0x5f, 0x07, 0x06, 0xf8, 0x1a, 0x29, 0x24, 0x3f, 0xbd, 0xd8, 0x69, 0x68, 0xa7, 0xeb, 0xeb, 0x43, 0x06, 0x9d, 0xb3, 0xb1, 0x8c, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5323 = { .name = "ecdsa_secp256k1_sha256_5323", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5323_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5323_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5323_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5324 for ECDSA, tcId is 281 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5324_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5324_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_5324_sig[] = { 0x26, 0x64, 0xf1, 0xff, 0xa9, 0x82, 0xfe, 0xdb, 0xcc, 0x7c, 0xab, 0x1b, 0x8b, 0xc6, 0xe2, 0xcb, 0x42, 0x02, 0x18, 0xd2, 0xa6, 0x07, 0x7a, 0xd0, 0x8e, 0x59, 0x1b, 0xa9, 0xfe, 0xab, 0x33, 0xbd, 0x49, 0xf5, 0xc7, 0xcb, 0x51, 0x5e, 0x83, 0x87, 0x2a, 0x3d, 0x41, 0xb4, 0xcd, 0xb8, 0x5f, 0x24, 0x2a, 0xd9, 0xd6, 0x1a, 0x5b, 0xfc, 0x01, 0xde, 0xbf, 0xbb, 0x52, 0xc6, 0xc8, 0x4b, 0xa7, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5324 = { .name = "ecdsa_secp256k1_sha256_5324", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5324_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5324_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5324_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5325 for ECDSA, tcId is 282 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5325_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5325_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_5325_sig[] = { 0x58, 0x27, 0x51, 0x83, 0x44, 0x84, 0x4f, 0xd6, 0xa7, 0xde, 0x73, 0xcb, 0xb0, 0xa6, 0xbe, 0xfd, 0xea, 0x7b, 0x13, 0xd2, 0xde, 0xe4, 0x47, 0x53, 0x17, 0xf0, 0xf1, 0x8f, 0xfc, 0x81, 0x52, 0x4b, 0xb0, 0xa3, 0x34, 0xb1, 0xf4, 0xb7, 0x74, 0xa5, 0xa2, 0x89, 0xf5, 0x53, 0x22, 0x4d, 0x28, 0x6d, 0x23, 0x9e, 0xf8, 0xa9, 0x09, 0x29, 0xed, 0x2d, 0x91, 0x42, 0x3e, 0x02, 0x4e, 0xb7, 0xfa, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5325 = { .name = "ecdsa_secp256k1_sha256_5325", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5325_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5325_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5325_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5326 for ECDSA, tcId is 283 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5326_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5326_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_5326_sig[] = { 0x97, 0xab, 0x19, 0xbd, 0x13, 0x9c, 0xac, 0x31, 0x93, 0x25, 0x86, 0x92, 0x18, 0xb1, 0xbc, 0xe1, 0x11, 0x87, 0x5d, 0x63, 0xfb, 0x12, 0x09, 0x8a, 0x04, 0xb0, 0xcd, 0x59, 0xb6, 0xfd, 0xd3, 0xa3, 0xbc, 0xe2, 0x63, 0x15, 0xc5, 0xdb, 0xc7, 0xb8, 0xcf, 0xc3, 0x14, 0x25, 0xa9, 0xb8, 0x9b, 0xcc, 0xea, 0x7a, 0xa9, 0x47, 0x7d, 0x71, 0x1a, 0x4d, 0x37, 0x7f, 0x83, 0x3d, 0xcc, 0x28, 0xf8, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5326 = { .name = "ecdsa_secp256k1_sha256_5326", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5326_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5326_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_5326_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5327 for ECDSA, tcId is 284 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5327_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5327_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5327_sig[] = { 0x52, 0xc6, 0x83, 0x14, 0x4e, 0x44, 0x11, 0x9a, 0xe2, 0x01, 0x37, 0x49, 0xd4, 0x96, 0x4e, 0xf6, 0x75, 0x09, 0x27, 0x8f, 0x6d, 0x38, 0xba, 0x86, 0x9a, 0xdc, 0xfa, 0x69, 0x97, 0x0e, 0x12, 0x3d, 0x34, 0x79, 0x91, 0x01, 0x67, 0x40, 0x8f, 0x45, 0xbd, 0xa4, 0x20, 0xa6, 0x26, 0xec, 0x9c, 0x4e, 0xc7, 0x11, 0xc1, 0x27, 0x4b, 0xe0, 0x92, 0x19, 0x8b, 0x41, 0x87, 0xc0, 0x18, 0xb5, 0x62, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5327 = { .name = "ecdsa_secp256k1_sha256_5327", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5327_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5327_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_5327_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5328 for ECDSA, tcId is 285 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5328_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5328_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5328 = { .name = "ecdsa_secp256k1_sha256_5328", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5328_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5328_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5328_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 285 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5329 for ECDSA, tcId is 286 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5329_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5329_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5329 = { .name = "ecdsa_secp256k1_sha256_5329", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5329_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5329_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5329_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 286 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5330 for ECDSA, tcId is 287 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5330_pubkey[] = { 0xbc, 0x97, 0xe7, 0x58, 0x5e, 0xec, 0xad, 0x48, 0xe1, 0x66, 0x83, 0xbc, 0x40, 0x91, 0x70, 0x8e, 0x1a, 0x93, 0x0c, 0x68, 0x3f, 0xc4, 0x70, 0x01, 0xd4, 0xb3, 0x83, 0x59, 0x4f, 0x2c, 0x4e, 0x22, 0x70, 0x59, 0x89, 0xcf, 0x69, 0xda, 0xea, 0xdd, 0x4e, 0x4e, 0x4b, 0x81, 0x51, 0xed, 0x88, 0x8d, 0xfe, 0xc2, 0x0f, 0xb0, 0x17, 0x28, 0xd8, 0x9d, 0x56, 0xb3, 0xf3, 0x8f, 0x2a, 0xe9, 0xc8, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_5330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5330_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5330 = { .name = "ecdsa_secp256k1_sha256_5330", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5330_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5330_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5330_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 287 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5331 for ECDSA, tcId is 288 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5331_pubkey[] = { 0x44, 0xad, 0x33, 0x9a, 0xfb, 0xc2, 0x1e, 0x9a, 0xbf, 0x7b, 0x60, 0x2a, 0x5c, 0xa5, 0x35, 0xea, 0x37, 0x81, 0x35, 0xb6, 0xd1, 0x0d, 0x81, 0x31, 0x0b, 0xdd, 0x82, 0x93, 0xd1, 0xdf, 0x32, 0x52, 0xb6, 0x3f, 0xf7, 0xd0, 0x77, 0x47, 0x70, 0xf8, 0xfe, 0x1d, 0x17, 0x22, 0xfa, 0x83, 0xac, 0xd0, 0x2f, 0x43, 0x4e, 0x4f, 0xc1, 0x10, 0xa0, 0xcc, 0x8f, 0x6d, 0xdd, 0xd3, 0x7d, 0x56, 0xc4, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_5331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5331_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5331 = { .name = "ecdsa_secp256k1_sha256_5331", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5331_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5331_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5331_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 288 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5332 for ECDSA, tcId is 289 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5332_pubkey[] = { 0x12, 0x60, 0xc2, 0x12, 0x2c, 0x9e, 0x24, 0x4e, 0x1a, 0xf5, 0x15, 0x1b, 0xed, 0xe0, 0xc3, 0xae, 0x23, 0xb5, 0x4d, 0x7c, 0x59, 0x68, 0x81, 0xd3, 0xee, 0xba, 0xd2, 0x1f, 0x37, 0xdd, 0x87, 0x8c, 0x5c, 0x9a, 0x0c, 0x1a, 0x9a, 0xde, 0x76, 0x73, 0x7a, 0x88, 0x11, 0xbd, 0x6a, 0x7f, 0x92, 0x87, 0xc9, 0x78, 0xee, 0x39, 0x6a, 0xa8, 0x9c, 0x11, 0xe4, 0x72, 0x29, 0xd2, 0xcc, 0xb5, 0x52, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_5332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5332_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5332 = { .name = "ecdsa_secp256k1_sha256_5332", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5332_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5332_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5332_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 289 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5333 for ECDSA, tcId is 290 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5333_pubkey[] = { 0x18, 0x77, 0x04, 0x5b, 0xe2, 0x5d, 0x34, 0xa1, 0xd0, 0x60, 0x0f, 0x9d, 0x5c, 0x00, 0xd0, 0x64, 0x5a, 0x2a, 0x54, 0x37, 0x9b, 0x6c, 0xee, 0xfa, 0xd2, 0xe6, 0xbf, 0x5c, 0x2a, 0x33, 0x52, 0xce, 0x82, 0x1a, 0x53, 0x2c, 0xc1, 0x75, 0x1e, 0xe1, 0xd3, 0x6d, 0x41, 0xc3, 0xd6, 0xab, 0x4e, 0x9b, 0x14, 0x3e, 0x44, 0xec, 0x46, 0xd7, 0x34, 0x78, 0xea, 0x6a, 0x79, 0xa5, 0xc0, 0xe5, 0x41, 0x59, }; static const unsigned char ecdsa_secp256k1_sha256_5333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5333_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5333 = { .name = "ecdsa_secp256k1_sha256_5333", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5333_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5333_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5333_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 290 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5334 for ECDSA, tcId is 291 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5334_pubkey[] = { 0x45, 0x54, 0x39, 0xfc, 0xc3, 0xd2, 0xde, 0xec, 0xed, 0xde, 0xae, 0xce, 0x60, 0xe7, 0xbd, 0x17, 0x30, 0x4f, 0x36, 0xeb, 0xb6, 0x02, 0xad, 0xf5, 0xa2, 0x2e, 0x0b, 0x8f, 0x1d, 0xb4, 0x6a, 0x50, 0xae, 0xc3, 0x8f, 0xb2, 0xba, 0xf2, 0x21, 0xe9, 0xa8, 0xd1, 0x88, 0x7c, 0x7b, 0xf6, 0x22, 0x2d, 0xd1, 0x83, 0x46, 0x34, 0xe7, 0x72, 0x63, 0x31, 0x5a, 0xf6, 0xd2, 0x36, 0x09, 0xd0, 0x4f, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5334_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5334 = { .name = "ecdsa_secp256k1_sha256_5334", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5334_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5334_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5334_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 291 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5335 for ECDSA, tcId is 292 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5335_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5335_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5335 = { .name = "ecdsa_secp256k1_sha256_5335", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5335_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5335_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5335_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 292 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5336 for ECDSA, tcId is 293 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5336_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5336_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5336 = { .name = "ecdsa_secp256k1_sha256_5336", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5336_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5336_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5336_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 293 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5337 for ECDSA, tcId is 294 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5337_pubkey[] = { 0xdd, 0xa9, 0x5d, 0x7b, 0x06, 0x98, 0xde, 0x5d, 0x2d, 0x0b, 0x4f, 0x00, 0x34, 0xdb, 0xe3, 0x5b, 0x50, 0xf9, 0x78, 0xfc, 0xc5, 0x18, 0xa8, 0x4a, 0xbf, 0x9c, 0x99, 0xef, 0xd9, 0x6a, 0x25, 0x30, 0x5a, 0xdc, 0x08, 0xd6, 0xa6, 0x3d, 0xbe, 0x83, 0x1a, 0xb9, 0x9c, 0xd9, 0x14, 0x6e, 0x3c, 0x4c, 0x45, 0x49, 0x2a, 0xd1, 0x95, 0x21, 0x61, 0x25, 0x42, 0x25, 0x6d, 0x6a, 0xf6, 0x0e, 0x78, 0x88, }; static const unsigned char ecdsa_secp256k1_sha256_5337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5337_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5337 = { .name = "ecdsa_secp256k1_sha256_5337", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5337_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5337_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5337_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 294 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5338 for ECDSA, tcId is 295 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5338_pubkey[] = { 0x02, 0xef, 0x4d, 0x6d, 0x6c, 0xfd, 0x5a, 0x94, 0xf1, 0xd7, 0x78, 0x42, 0x26, 0xe3, 0xe2, 0xa6, 0xc0, 0xa4, 0x36, 0xc5, 0x58, 0x39, 0x61, 0x9f, 0x38, 0xfb, 0x44, 0x72, 0xb5, 0xf9, 0xee, 0x77, 0x7e, 0xb4, 0xac, 0xd4, 0xee, 0xbd, 0xa5, 0xcd, 0x72, 0x87, 0x5f, 0xfd, 0x2a, 0x2f, 0x26, 0x22, 0x9c, 0x2d, 0xc6, 0xb4, 0x65, 0x00, 0x91, 0x9a, 0x43, 0x2c, 0x86, 0x73, 0x9f, 0x3a, 0xe8, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_5338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5338_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5338 = { .name = "ecdsa_secp256k1_sha256_5338", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5338_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5338_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5338_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 295 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5339 for ECDSA, tcId is 296 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5339_pubkey[] = { 0x46, 0x4f, 0x4f, 0xf7, 0x15, 0x72, 0x9c, 0xae, 0x50, 0x72, 0xca, 0x3b, 0xd8, 0x01, 0xd3, 0x19, 0x5b, 0x67, 0xae, 0xc6, 0x5e, 0x9b, 0x01, 0xaa, 0xd2, 0x0a, 0x29, 0x43, 0xdc, 0xbc, 0xb5, 0x84, 0xb1, 0xaf, 0xd2, 0x9d, 0x31, 0xa3, 0x9a, 0x11, 0xd5, 0x70, 0xaa, 0x15, 0x97, 0x43, 0x9b, 0x3b, 0x2d, 0x19, 0x71, 0xbf, 0x2f, 0x1a, 0xbf, 0x15, 0x43, 0x2d, 0x02, 0x07, 0xb1, 0x0d, 0x1d, 0x08, }; static const unsigned char ecdsa_secp256k1_sha256_5339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5339_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5339 = { .name = "ecdsa_secp256k1_sha256_5339", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5339_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5339_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5339_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 296 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5340 for ECDSA, tcId is 297 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5340_pubkey[] = { 0x15, 0x7f, 0x8f, 0xdd, 0xf3, 0x73, 0xeb, 0x5f, 0x49, 0xcf, 0xcf, 0x10, 0xd8, 0xb8, 0x53, 0xcf, 0x91, 0xcb, 0xcd, 0x7d, 0x66, 0x5c, 0x35, 0x22, 0xba, 0x7d, 0xd7, 0x38, 0xdd, 0xb7, 0x9a, 0x4c, 0xde, 0xad, 0xf1, 0xa5, 0xc4, 0x48, 0xea, 0x3c, 0x9f, 0x41, 0x91, 0xa8, 0x99, 0x9a, 0xbf, 0xcc, 0x75, 0x7a, 0xc6, 0xd6, 0x45, 0x67, 0xef, 0x07, 0x2c, 0x47, 0xfe, 0xc6, 0x13, 0x44, 0x3b, 0x8f, }; static const unsigned char ecdsa_secp256k1_sha256_5340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5340_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5340 = { .name = "ecdsa_secp256k1_sha256_5340", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5340_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5340_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5340_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 297 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5341 for ECDSA, tcId is 298 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5341_pubkey[] = { 0x09, 0x34, 0xa5, 0x37, 0x46, 0x6c, 0x07, 0x43, 0x0e, 0x2c, 0x48, 0xfe, 0xb9, 0x90, 0xbb, 0x19, 0xfb, 0x78, 0xce, 0xcc, 0x9c, 0xee, 0x42, 0x4e, 0xa4, 0xd1, 0x30, 0x29, 0x1a, 0xa2, 0x37, 0xf0, 0xd4, 0xf9, 0x2d, 0x23, 0xb4, 0x62, 0x80, 0x4b, 0x5b, 0x68, 0xc5, 0x25, 0x58, 0xc0, 0x1c, 0x99, 0x96, 0xdb, 0xf7, 0x27, 0xfc, 0xca, 0xbb, 0xee, 0xdb, 0x96, 0x21, 0xa4, 0x00, 0x53, 0x5a, 0xfa, }; static const unsigned char ecdsa_secp256k1_sha256_5341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5341_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5341 = { .name = "ecdsa_secp256k1_sha256_5341", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5341_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5341_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5341_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 298 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5342 for ECDSA, tcId is 299 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5342_pubkey[] = { 0xd6, 0xef, 0x20, 0xbe, 0x66, 0xc8, 0x93, 0xf7, 0x41, 0xa9, 0xbf, 0x90, 0xd9, 0xb7, 0x46, 0x75, 0xd1, 0xc2, 0xa3, 0x12, 0x96, 0x39, 0x7a, 0xcb, 0x3e, 0xf1, 0x74, 0xfd, 0x0b, 0x30, 0x0c, 0x65, 0x4a, 0x0c, 0x95, 0x47, 0x8c, 0xa0, 0x03, 0x99, 0x16, 0x2d, 0x7f, 0x0f, 0x2d, 0xc8, 0x9e, 0xfd, 0xc2, 0xb2, 0x8a, 0x30, 0xfb, 0xab, 0xe2, 0x85, 0x85, 0x72, 0x95, 0xa4, 0xb0, 0xc4, 0xe2, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5342_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5342 = { .name = "ecdsa_secp256k1_sha256_5342", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5342_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5342_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5342_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 299 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5343 for ECDSA, tcId is 300 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5343_pubkey[] = { 0xb7, 0x29, 0x1d, 0x14, 0x04, 0xe0, 0xc0, 0xc0, 0x7d, 0xab, 0x93, 0x72, 0x18, 0x9f, 0x4b, 0xd5, 0x8d, 0x2c, 0xea, 0xa8, 0xd1, 0x5e, 0xde, 0x54, 0x4d, 0x95, 0x14, 0x54, 0x5b, 0xa9, 0xee, 0x06, 0x29, 0xc9, 0xa6, 0x3d, 0x5e, 0x30, 0x87, 0x69, 0xcc, 0x30, 0xec, 0x27, 0x6a, 0x41, 0x0e, 0x64, 0x64, 0xa2, 0x7e, 0xea, 0xfd, 0x9e, 0x59, 0x9d, 0xb1, 0x0f, 0x05, 0x3a, 0x4f, 0xe4, 0xa8, 0x29, }; static const unsigned char ecdsa_secp256k1_sha256_5343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5343_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5343 = { .name = "ecdsa_secp256k1_sha256_5343", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5343_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5343_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5343_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 300 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5344 for ECDSA, tcId is 301 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5344_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5344_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5344 = { .name = "ecdsa_secp256k1_sha256_5344", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5344_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5344_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5344_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 301 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5345 for ECDSA, tcId is 302 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5345_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5345_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5345 = { .name = "ecdsa_secp256k1_sha256_5345", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5345_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5345_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5345_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 302 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5346 for ECDSA, tcId is 303 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5346_pubkey[] = { 0xd5, 0x33, 0xb7, 0x89, 0xa4, 0xaf, 0x89, 0x0f, 0xa7, 0xa8, 0x2a, 0x1f, 0xae, 0x58, 0xc4, 0x04, 0xf9, 0xa6, 0x2a, 0x50, 0xb4, 0x9a, 0xda, 0xfa, 0xb3, 0x49, 0xc5, 0x13, 0xb4, 0x15, 0x08, 0x74, 0x01, 0xb4, 0x17, 0x1b, 0x80, 0x3e, 0x76, 0xb3, 0x4a, 0x98, 0x61, 0xe1, 0x0f, 0x7b, 0xc2, 0x89, 0xa0, 0x66, 0xfd, 0x01, 0xbd, 0x29, 0xf8, 0x4c, 0x98, 0x7a, 0x10, 0xa5, 0xfb, 0x18, 0xc2, 0xd4, }; static const unsigned char ecdsa_secp256k1_sha256_5346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5346_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5346 = { .name = "ecdsa_secp256k1_sha256_5346", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5346_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5346_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5346_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 303 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5347 for ECDSA, tcId is 304 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5347_pubkey[] = { 0x3a, 0x31, 0x50, 0x79, 0x8c, 0x8a, 0xf6, 0x9d, 0x1e, 0x6e, 0x98, 0x1f, 0x3a, 0x45, 0x40, 0x2b, 0xa1, 0xd7, 0x32, 0xf4, 0xbe, 0x83, 0x30, 0xc5, 0x16, 0x4f, 0x49, 0xe1, 0x0e, 0xc5, 0x55, 0xb4, 0x22, 0x1b, 0xd8, 0x42, 0xbc, 0x5e, 0x4d, 0x97, 0xef, 0xf3, 0x71, 0x65, 0xf6, 0x0e, 0x39, 0x98, 0xa4, 0x24, 0xd7, 0x2a, 0x45, 0x0c, 0xf9, 0x5e, 0xa4, 0x77, 0xc7, 0x82, 0x87, 0xd0, 0x34, 0x3a, }; static const unsigned char ecdsa_secp256k1_sha256_5347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5347_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5347 = { .name = "ecdsa_secp256k1_sha256_5347", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5347_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5347_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5347_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 304 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5348 for ECDSA, tcId is 305 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5348_pubkey[] = { 0x3b, 0x37, 0xdf, 0x5f, 0xb3, 0x47, 0xc6, 0x9a, 0x0f, 0x17, 0xd8, 0x5c, 0x0c, 0x7c, 0xa8, 0x37, 0x36, 0x88, 0x3a, 0x82, 0x5e, 0x13, 0x14, 0x3d, 0x0f, 0xcf, 0xc8, 0x10, 0x1e, 0x85, 0x1e, 0x80, 0x0d, 0xe3, 0xc0, 0x90, 0xb6, 0xca, 0x21, 0xba, 0x54, 0x35, 0x17, 0x33, 0x0c, 0x04, 0xb1, 0x2f, 0x94, 0x8c, 0x6b, 0xad, 0xf1, 0x4a, 0x63, 0xab, 0xff, 0xdf, 0x4e, 0xf8, 0xc7, 0x53, 0x70, 0x26, }; static const unsigned char ecdsa_secp256k1_sha256_5348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5348_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5348 = { .name = "ecdsa_secp256k1_sha256_5348", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5348_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5348_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5348_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 305 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5349 for ECDSA, tcId is 306 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5349_pubkey[] = { 0xfe, 0xb5, 0x16, 0x3b, 0x0e, 0xce, 0x30, 0xff, 0x3e, 0x03, 0xc7, 0xd5, 0x5c, 0x43, 0x80, 0xfa, 0x2f, 0xa8, 0x1e, 0xe2, 0xc0, 0x35, 0x49, 0x42, 0xff, 0x6f, 0x08, 0xc9, 0x9d, 0x0c, 0xd8, 0x2c, 0xe8, 0x7d, 0xe0, 0x5e, 0xe1, 0xbd, 0xa0, 0x89, 0xd3, 0xe4, 0xe2, 0x48, 0xfa, 0x0f, 0x72, 0x11, 0x02, 0xac, 0xff, 0xfd, 0xf5, 0x0e, 0x65, 0x4b, 0xe2, 0x81, 0x43, 0x39, 0x99, 0xdf, 0x89, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha256_5349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5349_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5349 = { .name = "ecdsa_secp256k1_sha256_5349", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5349_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5349_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5349_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 306 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5350 for ECDSA, tcId is 307 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5350_pubkey[] = { 0x23, 0x8c, 0xed, 0x00, 0x1c, 0xf2, 0x2b, 0x88, 0x53, 0xe0, 0x2e, 0xdc, 0x89, 0xcb, 0xec, 0xa5, 0x05, 0x0b, 0xa7, 0xe0, 0x42, 0xa7, 0xa7, 0x7f, 0x93, 0x82, 0xcd, 0x41, 0x49, 0x22, 0x89, 0x76, 0x40, 0x68, 0x3d, 0x30, 0x94, 0x64, 0x38, 0x40, 0xf2, 0x95, 0x89, 0x0a, 0xa4, 0xc1, 0x8a, 0xa3, 0x9b, 0x41, 0xd7, 0x7d, 0xd0, 0xfb, 0x3b, 0xb2, 0x70, 0x0e, 0x4f, 0x9e, 0xc2, 0x84, 0xff, 0xc2, }; static const unsigned char ecdsa_secp256k1_sha256_5350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5350_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5350 = { .name = "ecdsa_secp256k1_sha256_5350", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5350_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5350_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5350_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 307 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5351 for ECDSA, tcId is 308 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5351_pubkey[] = { 0x96, 0x1c, 0xf6, 0x48, 0x17, 0xc0, 0x6c, 0x0e, 0x51, 0xb3, 0xc2, 0x73, 0x6c, 0x92, 0x2f, 0xde, 0x18, 0xbd, 0x8c, 0x49, 0x06, 0xfc, 0xd7, 0xf5, 0xef, 0x66, 0xc4, 0x67, 0x85, 0x08, 0xf3, 0x5e, 0xd2, 0xc5, 0xd1, 0x81, 0x68, 0xcf, 0xbe, 0x70, 0xf2, 0xf1, 0x23, 0xbd, 0x74, 0x19, 0x23, 0x2b, 0xb9, 0x2d, 0xd6, 0x91, 0x13, 0xe2, 0x94, 0x10, 0x61, 0x88, 0x94, 0x81, 0xc5, 0xa0, 0x27, 0xbf, }; static const unsigned char ecdsa_secp256k1_sha256_5351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5351_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5351 = { .name = "ecdsa_secp256k1_sha256_5351", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5351_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5351_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5351_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 308 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5352 for ECDSA, tcId is 309 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5352_pubkey[] = { 0x13, 0x68, 0x1e, 0xae, 0x16, 0x8c, 0xd4, 0xea, 0x7c, 0xf2, 0xe2, 0xa4, 0x5d, 0x05, 0x27, 0x42, 0xd1, 0x0a, 0x9f, 0x64, 0xe7, 0x96, 0x86, 0x7d, 0xbd, 0xcb, 0x82, 0x9f, 0xe0, 0xb1, 0x02, 0x88, 0x16, 0x52, 0x87, 0x60, 0xd1, 0x77, 0x37, 0x6c, 0x09, 0xdf, 0x79, 0xde, 0x39, 0x55, 0x7c, 0x32, 0x9c, 0xc1, 0x75, 0x35, 0x17, 0xac, 0xff, 0xe8, 0xfa, 0x2e, 0xc2, 0x98, 0x02, 0x6b, 0x83, 0x84, }; static const unsigned char ecdsa_secp256k1_sha256_5352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5352_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5352 = { .name = "ecdsa_secp256k1_sha256_5352", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5352_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5352_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5352_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 309 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5353 for ECDSA, tcId is 310 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5353_pubkey[] = { 0x5a, 0xa7, 0xab, 0xfd, 0xb6, 0xb4, 0x08, 0x6d, 0x54, 0x33, 0x25, 0xe5, 0xd7, 0x9c, 0x6e, 0x95, 0xce, 0x42, 0xf8, 0x66, 0xd2, 0xbb, 0x84, 0x90, 0x96, 0x33, 0xa0, 0x4b, 0xb1, 0xaa, 0x31, 0xc2, 0x91, 0xc8, 0x00, 0x88, 0x79, 0x49, 0x05, 0xe1, 0xda, 0x33, 0x33, 0x6d, 0x87, 0x4e, 0x2f, 0x91, 0xcc, 0xf4, 0x5c, 0xc5, 0x91, 0x85, 0xbe, 0xde, 0x5d, 0xd6, 0xf3, 0xf7, 0xac, 0xaa, 0xe1, 0x8b, }; static const unsigned char ecdsa_secp256k1_sha256_5353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5353_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe9, 0x1e, 0x1b, 0xa6, 0xba, 0x89, 0x86, 0x20, 0xa4, 0x6b, 0xcb, 0x51, 0xdc, 0x0b, 0x8b, 0x4a, 0xd1, 0xdc, 0x35, 0xda, 0xd8, 0x92, 0xc4, 0x55, 0x2d, 0x18, 0x47, 0xb2, 0xce, 0x44, 0x46, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5353 = { .name = "ecdsa_secp256k1_sha256_5353", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5353_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5353_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5353_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 310 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5354 for ECDSA, tcId is 311 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5354_pubkey[] = { 0x00, 0x27, 0x77, 0x91, 0xb3, 0x05, 0xa4, 0x5b, 0x2b, 0x39, 0x59, 0x0b, 0x2f, 0x05, 0xd3, 0x39, 0x2a, 0x6c, 0x81, 0x82, 0xce, 0xf4, 0xeb, 0x54, 0x01, 0x20, 0xe0, 0xf5, 0xc2, 0x06, 0xc3, 0xe4, 0x64, 0x10, 0x82, 0x33, 0xfb, 0x0b, 0x8c, 0x3a, 0xc8, 0x92, 0xd7, 0x9e, 0xf8, 0xe0, 0xfb, 0xf9, 0x2e, 0xd1, 0x33, 0xad, 0xdb, 0x45, 0x54, 0x27, 0x01, 0x32, 0x58, 0x4d, 0xc5, 0x2e, 0xef, 0x41, }; static const unsigned char ecdsa_secp256k1_sha256_5354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5354_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe3, 0x6b, 0xf0, 0xce, 0xc0, 0x6d, 0x9b, 0x84, 0x1d, 0xa8, 0x13, 0x32, 0x81, 0x2f, 0x74, 0xf3, 0x0b, 0xba, 0xec, 0x9f, 0x20, 0x23, 0x19, 0x20, 0x6c, 0x6f, 0x0b, 0x8a, 0x0a, 0x40, 0x0f, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5354 = { .name = "ecdsa_secp256k1_sha256_5354", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5354_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5354_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5354_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 311 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5355 for ECDSA, tcId is 312 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5355_pubkey[] = { 0x6e, 0xfa, 0x09, 0x2b, 0x68, 0xde, 0x94, 0x60, 0xf0, 0xbc, 0xc9, 0x19, 0x00, 0x5a, 0x5f, 0x6e, 0x80, 0xe1, 0x9d, 0xe9, 0x89, 0x68, 0xbe, 0x3c, 0xd2, 0xc7, 0x70, 0xa9, 0x94, 0x9b, 0xfb, 0x1a, 0xc7, 0x5e, 0x6e, 0x50, 0x87, 0xd6, 0x55, 0x0d, 0x5f, 0x9b, 0xeb, 0x1e, 0x79, 0xe5, 0x02, 0x93, 0x07, 0xbc, 0x25, 0x52, 0x35, 0xe2, 0xd5, 0xdc, 0x99, 0x24, 0x1a, 0xc3, 0xab, 0x88, 0x6c, 0x49, }; static const unsigned char ecdsa_secp256k1_sha256_5355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5355_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xea, 0x26, 0xb5, 0x7a, 0xf8, 0x84, 0xb6, 0xc0, 0x6e, 0x34, 0x8e, 0xfe, 0x13, 0x9c, 0x1e, 0x4e, 0x9e, 0xc9, 0x51, 0x8d, 0x60, 0xc3, 0x40, 0xf6, 0xba, 0xc7, 0xd2, 0x78, 0xca, 0x08, 0xd8, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5355 = { .name = "ecdsa_secp256k1_sha256_5355", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5355_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5355_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5355_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 312 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5356 for ECDSA, tcId is 313 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5356_pubkey[] = { 0x72, 0xd4, 0xa1, 0x9c, 0x4f, 0x9d, 0x2c, 0xf5, 0x84, 0x8e, 0xa4, 0x04, 0x45, 0xb7, 0x0d, 0x46, 0x96, 0xb5, 0xf0, 0x2d, 0x63, 0x2c, 0x0c, 0x65, 0x4c, 0xc7, 0xd7, 0xee, 0xb0, 0xc6, 0xd0, 0x58, 0xe8, 0xc4, 0xcd, 0x99, 0x43, 0xe4, 0x59, 0x17, 0x4c, 0x7a, 0xc0, 0x1f, 0xa7, 0x42, 0x19, 0x8e, 0x47, 0xe6, 0xc1, 0x9a, 0x6b, 0xdb, 0x0c, 0x4f, 0x6c, 0x23, 0x78, 0x31, 0xc1, 0xb3, 0xf9, 0x42, }; static const unsigned char ecdsa_secp256k1_sha256_5356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5356_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x1d, 0x27, 0xa7, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9d, 0x9e, 0xf3, 0xb9, 0xfb, 0x58, 0x38, 0x54, 0x18, 0xd9, 0xc9, 0x82, 0x10, 0x50, 0x77, 0xd1, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5356 = { .name = "ecdsa_secp256k1_sha256_5356", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5356_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5356_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5356_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 313 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5357 for ECDSA, tcId is 314 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5357_pubkey[] = { 0x2a, 0x8e, 0xa2, 0xf5, 0x0d, 0xcc, 0xed, 0x0c, 0x21, 0x75, 0x75, 0xbd, 0xfa, 0x7c, 0xd4, 0x7d, 0x1c, 0x6f, 0x10, 0x00, 0x41, 0xec, 0x0e, 0x35, 0x51, 0x27, 0x94, 0xc1, 0xbe, 0x7e, 0x74, 0x02, 0x58, 0xf8, 0xc1, 0x71, 0x22, 0xed, 0x30, 0x3f, 0xda, 0x71, 0x43, 0xeb, 0x58, 0xbe, 0xde, 0x70, 0x29, 0x5b, 0x65, 0x32, 0x66, 0x01, 0x3b, 0x0b, 0x0e, 0xbd, 0x3f, 0x05, 0x31, 0x37, 0xf6, 0xec, }; static const unsigned char ecdsa_secp256k1_sha256_5357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5357_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd2, 0x7a, 0x76, 0x94, 0xc1, 0x46, 0x24, 0x4a, 0x5a, 0xd0, 0xbd, 0x06, 0x36, 0xd9, 0xe1, 0x2a, 0xbe, 0x68, 0x78, 0x97, 0xe8, 0xe9, 0x99, 0x8d, 0xdb, 0xd4, 0xe5, 0x9a, 0x78, 0x52, 0x0d, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5357 = { .name = "ecdsa_secp256k1_sha256_5357", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5357_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5357_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5357_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 314 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5358 for ECDSA, tcId is 315 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5358_pubkey[] = { 0x88, 0xde, 0x68, 0x9c, 0xe9, 0xaf, 0x1e, 0x94, 0xbe, 0x6a, 0x20, 0x89, 0xc8, 0xa8, 0xb1, 0x25, 0x3f, 0xfd, 0xbb, 0x6c, 0x8e, 0x9c, 0x86, 0x24, 0x9b, 0xa2, 0x20, 0x00, 0x1a, 0x4a, 0xd3, 0xb8, 0x0c, 0x49, 0x98, 0xe5, 0x48, 0x42, 0xf4, 0x13, 0xb9, 0xed, 0xb1, 0x82, 0x5a, 0xcb, 0xb6, 0x33, 0x5e, 0x81, 0xe4, 0xd1, 0x84, 0xb2, 0xb0, 0x1c, 0x8b, 0xeb, 0xdc, 0x85, 0xd1, 0xf2, 0x89, 0x46, }; static const unsigned char ecdsa_secp256k1_sha256_5358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5358_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa4, 0xf4, 0xed, 0x29, 0x82, 0x8c, 0x48, 0x94, 0xb5, 0xa1, 0x7a, 0x0c, 0x6d, 0xb3, 0xc2, 0x56, 0xc2, 0x22, 0x14, 0x49, 0x22, 0x8a, 0x92, 0xdf, 0xf7, 0xd7, 0x6c, 0xa8, 0x20, 0x6d, 0xd8, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5358 = { .name = "ecdsa_secp256k1_sha256_5358", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5358_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5358_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5358_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 315 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5359 for ECDSA, tcId is 316 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5359_pubkey[] = { 0xfe, 0xa2, 0xd3, 0x1f, 0x70, 0xf9, 0x0d, 0x5f, 0xb3, 0xe0, 0x0e, 0x18, 0x6a, 0xc4, 0x2a, 0xb3, 0xc1, 0x61, 0x5c, 0xee, 0x71, 0x4e, 0x0b, 0x4e, 0x11, 0x31, 0xb3, 0xd4, 0xd8, 0x22, 0x5b, 0xf7, 0xb0, 0x37, 0xa1, 0x8d, 0xf2, 0xac, 0x15, 0x34, 0x3f, 0x30, 0xf7, 0x40, 0x67, 0xdd, 0xf2, 0x9e, 0x81, 0x7d, 0x5f, 0x77, 0xf8, 0xdc, 0xe0, 0x57, 0x14, 0xda, 0x59, 0xc0, 0x94, 0xf0, 0xcd, 0xa9, }; static const unsigned char ecdsa_secp256k1_sha256_5359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5359_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x09, 0xe6, 0x0e, 0x68, 0xb9, 0x0d, 0x0b, 0x5e, 0x6c, 0x5d, 0xdd, 0xd0, 0xcb, 0x69, 0x4d, 0x87, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5359 = { .name = "ecdsa_secp256k1_sha256_5359", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5359_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5359_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5359_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 316 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5360 for ECDSA, tcId is 317 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5360_pubkey[] = { 0x72, 0x58, 0x91, 0x1e, 0x3d, 0x42, 0x33, 0x49, 0x16, 0x64, 0x79, 0xdb, 0xe0, 0xb8, 0x34, 0x1a, 0xf7, 0xfb, 0xd0, 0x3d, 0x0a, 0x7e, 0x10, 0xed, 0xcc, 0xb3, 0x6b, 0x6c, 0xee, 0xa5, 0xa3, 0xdb, 0x17, 0xac, 0x2b, 0x89, 0x92, 0x79, 0x11, 0x28, 0xfa, 0x3b, 0x96, 0xdc, 0x2f, 0xbd, 0x4c, 0xa3, 0xbf, 0xa7, 0x82, 0xef, 0x28, 0x32, 0xfc, 0x66, 0x56, 0x94, 0x3d, 0xb1, 0x8e, 0x73, 0x46, 0xb0, }; static const unsigned char ecdsa_secp256k1_sha256_5360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5360_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3d, 0x7f, 0x48, 0x7c, 0x07, 0xbf, 0xc5, 0xf3, 0x08, 0x46, 0x93, 0x8a, 0x3d, 0xce, 0xf6, 0x96, 0x44, 0x47, 0x07, 0xcf, 0x96, 0x77, 0x25, 0x4a, 0x92, 0xb0, 0x6c, 0x63, 0xab, 0x86, 0x7d, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5360 = { .name = "ecdsa_secp256k1_sha256_5360", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5360_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5360_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5360_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 317 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5361 for ECDSA, tcId is 318 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5361_pubkey[] = { 0x4f, 0x28, 0x46, 0x1d, 0xea, 0x64, 0x47, 0x4d, 0x6b, 0xb3, 0x4d, 0x14, 0x99, 0xc9, 0x7d, 0x37, 0xb9, 0xe9, 0x56, 0x33, 0xdf, 0x1c, 0xee, 0xea, 0xac, 0xd4, 0x50, 0x16, 0xc9, 0x8b, 0x39, 0x14, 0xc8, 0x81, 0x88, 0x10, 0xb8, 0xcc, 0x06, 0xdd, 0xb4, 0x0e, 0x8a, 0x12, 0x61, 0xc5, 0x28, 0xfa, 0xa5, 0x89, 0x45, 0x5d, 0x5a, 0x6d, 0xf9, 0x3b, 0x77, 0xbc, 0x5e, 0x0e, 0x49, 0x3c, 0x74, 0x70, }; static const unsigned char ecdsa_secp256k1_sha256_5361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5361_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x6c, 0x76, 0x48, 0xfc, 0x0f, 0xbf, 0x8a, 0x06, 0xad, 0xb8, 0xb8, 0x39, 0xf9, 0x7b, 0x4f, 0xf7, 0xa8, 0x00, 0xf1, 0x1b, 0x1e, 0x37, 0xc5, 0x93, 0xb2, 0x61, 0x39, 0x45, 0x99, 0x79, 0x2b, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5361 = { .name = "ecdsa_secp256k1_sha256_5361", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5361_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5361_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5361_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5362 for ECDSA, tcId is 319 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5362_pubkey[] = { 0x74, 0xf2, 0xa8, 0x14, 0xfb, 0x5d, 0x8e, 0xca, 0x91, 0xa6, 0x9b, 0x5e, 0x60, 0x71, 0x27, 0x32, 0xb3, 0x93, 0x7d, 0xe3, 0x28, 0x29, 0xbe, 0x97, 0x4e, 0xd7, 0xb6, 0x8c, 0x5c, 0x2f, 0x5d, 0x66, 0xef, 0xf0, 0xf0, 0x7c, 0x56, 0xf9, 0x87, 0xa6, 0x57, 0xf4, 0x21, 0x96, 0x20, 0x5f, 0x58, 0x8c, 0x0f, 0x1d, 0x96, 0xfd, 0x8a, 0x63, 0xa5, 0xf2, 0x38, 0xb4, 0x8f, 0x47, 0x87, 0x88, 0xfe, 0x3b, }; static const unsigned char ecdsa_secp256k1_sha256_5362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5362_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9b, 0xe3, 0x63, 0xa2, 0x86, 0xf2, 0x3f, 0x63, 0x22, 0xc2, 0x05, 0x44, 0x9d, 0x32, 0x0b, 0xaa, 0xd4, 0x17, 0x95, 0x3e, 0xcb, 0x70, 0xf6, 0x21, 0x4e, 0x90, 0xd4, 0x9d, 0x7d, 0x1f, 0x26, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5362 = { .name = "ecdsa_secp256k1_sha256_5362", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5362_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5362_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5362_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5363 for ECDSA, tcId is 320 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5363_pubkey[] = { 0x19, 0x5b, 0x51, 0xa7, 0xcc, 0x4a, 0x21, 0xb8, 0x27, 0x4a, 0x70, 0xa9, 0x0d, 0xe7, 0x79, 0x81, 0x4c, 0x3c, 0x8c, 0xa3, 0x58, 0x32, 0x82, 0x08, 0xc0, 0x9a, 0x29, 0xf3, 0x36, 0xb8, 0x2d, 0x6a, 0xb2, 0x41, 0x6b, 0x7c, 0x92, 0xff, 0xfd, 0xc2, 0x9c, 0x3b, 0x12, 0x82, 0xdd, 0x2a, 0x77, 0xa4, 0xd0, 0x4d, 0xf7, 0xf7, 0x45, 0x20, 0x47, 0x39, 0x3d, 0x84, 0x99, 0x89, 0xc5, 0xce, 0xe9, 0xad, }; static const unsigned char ecdsa_secp256k1_sha256_5363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5363_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x29, 0x79, 0x8c, 0x5c, 0x45, 0xbd, 0xf5, 0x8b, 0x4a, 0x7b, 0x2f, 0xdc, 0x2c, 0x46, 0xab, 0x4a, 0xf1, 0x21, 0x8c, 0x7e, 0xeb, 0x9f, 0x0f, 0x27, 0xa8, 0x8f, 0x12, 0x67, 0x67, 0x4d, 0xe3, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5363 = { .name = "ecdsa_secp256k1_sha256_5363", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5363_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5363_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5363_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5364 for ECDSA, tcId is 321 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5364_pubkey[] = { 0x62, 0x2f, 0xc7, 0x47, 0x32, 0x03, 0x4b, 0xec, 0x2d, 0xdf, 0x3b, 0xc1, 0x6d, 0x34, 0xb3, 0xd1, 0xf7, 0xa3, 0x27, 0xdd, 0x2a, 0x8c, 0x19, 0xba, 0xb4, 0xbb, 0x4f, 0xe3, 0xa2, 0x4b, 0x58, 0xaa, 0x73, 0x6b, 0x2f, 0x2f, 0xae, 0x76, 0xf4, 0xdf, 0xae, 0xcc, 0x90, 0x96, 0x33, 0x3b, 0x01, 0x32, 0x8d, 0x51, 0xeb, 0x3f, 0xda, 0x9c, 0x92, 0x27, 0xe9, 0x0d, 0x0b, 0x44, 0x99, 0x83, 0xc4, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_5364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5364_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0b, 0x70, 0xf2, 0x2c, 0xa2, 0xbb, 0x3c, 0xef, 0xad, 0xca, 0x1a, 0x57, 0x11, 0xfa, 0x3a, 0x59, 0xf4, 0x69, 0x53, 0x85, 0xeb, 0x5a, 0xed, 0xf3, 0x49, 0x5d, 0x0b, 0x6d, 0x00, 0xf8, 0xfd, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5364 = { .name = "ecdsa_secp256k1_sha256_5364", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5364_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5364_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5364_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5365 for ECDSA, tcId is 322 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5365_pubkey[] = { 0x1f, 0x7f, 0x85, 0xca, 0xf2, 0xd7, 0x55, 0x0e, 0x7a, 0xf9, 0xb6, 0x50, 0x23, 0xeb, 0xb4, 0xdc, 0xe3, 0x45, 0x03, 0x11, 0x69, 0x23, 0x09, 0xdb, 0x26, 0x99, 0x69, 0xb8, 0x34, 0xb6, 0x11, 0xc7, 0x08, 0x27, 0xf4, 0x5b, 0x78, 0x02, 0x0e, 0xcb, 0xba, 0xf4, 0x84, 0xfd, 0xd5, 0xbf, 0xaa, 0xe6, 0x87, 0x0f, 0x11, 0x84, 0xc2, 0x15, 0x81, 0xba, 0xf6, 0xef, 0x82, 0xbd, 0x7b, 0x53, 0x0f, 0x93, }; static const unsigned char ecdsa_secp256k1_sha256_5365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5365_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x16, 0xe1, 0xe4, 0x59, 0x45, 0x76, 0x79, 0xdf, 0x5b, 0x94, 0x34, 0xae, 0x23, 0xf4, 0x74, 0xb3, 0xe8, 0xd2, 0xa7, 0x0b, 0xd6, 0xb5, 0xdb, 0xe6, 0x92, 0xba, 0x16, 0xda, 0x01, 0xf1, 0xfb, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5365 = { .name = "ecdsa_secp256k1_sha256_5365", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5365_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5365_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5365_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 322 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5366 for ECDSA, tcId is 323 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5366_pubkey[] = { 0x49, 0xc1, 0x97, 0xdc, 0x80, 0xad, 0x1d, 0xa4, 0x7a, 0x43, 0x42, 0xb9, 0x38, 0x93, 0xe8, 0xe1, 0xfb, 0x0b, 0xb9, 0x4f, 0xc3, 0x3a, 0x83, 0xe7, 0x83, 0xc0, 0x0b, 0x24, 0xc7, 0x81, 0x37, 0x7a, 0xef, 0xc2, 0x0d, 0xa9, 0x2b, 0xac, 0x76, 0x29, 0x51, 0xf7, 0x24, 0x74, 0xbe, 0xcc, 0x73, 0x4d, 0x4c, 0xc2, 0x2b, 0xa8, 0x1b, 0x89, 0x5e, 0x28, 0x2f, 0xda, 0xc4, 0xdf, 0x7a, 0xf0, 0xf3, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5366_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x22, 0x52, 0xd6, 0x85, 0xe8, 0x31, 0xb6, 0xcf, 0x09, 0x5e, 0x4f, 0x05, 0x35, 0xee, 0xaf, 0x0d, 0xdd, 0x3b, 0xfa, 0x91, 0xc2, 0x10, 0xc9, 0xd9, 0xdc, 0x17, 0x22, 0x47, 0x02, 0xea, 0xf8, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5366 = { .name = "ecdsa_secp256k1_sha256_5366", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5366_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5366_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5366_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 323 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5367 for ECDSA, tcId is 324 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5367_pubkey[] = { 0xd8, 0xcb, 0x68, 0x51, 0x7b, 0x61, 0x6a, 0x56, 0x40, 0x0a, 0xa3, 0x86, 0x86, 0x35, 0xe5, 0x4b, 0x6f, 0x69, 0x95, 0x98, 0xa2, 0xf6, 0x16, 0x77, 0x57, 0x65, 0x49, 0x80, 0xba, 0xf6, 0xac, 0xbe, 0x7e, 0xc8, 0xcf, 0x44, 0x9c, 0x84, 0x9a, 0xa0, 0x34, 0x61, 0xa3, 0x0e, 0xfa, 0xda, 0x41, 0x45, 0x3c, 0x57, 0xc6, 0xe6, 0xfb, 0xc9, 0x3b, 0xbc, 0x6f, 0xa4, 0x9a, 0xda, 0x6d, 0xc0, 0x55, 0x5c, }; static const unsigned char ecdsa_secp256k1_sha256_5367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5367_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x75, 0x13, 0x5a, 0xbd, 0x7c, 0x42, 0x5b, 0x60, 0x37, 0x1a, 0x47, 0x7f, 0x09, 0xce, 0x0f, 0x27, 0x4f, 0x64, 0xa8, 0xc6, 0xb0, 0x61, 0xa0, 0x7b, 0x5d, 0x63, 0xe9, 0x3c, 0x65, 0x04, 0x6c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5367 = { .name = "ecdsa_secp256k1_sha256_5367", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5367_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5367_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5367_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 324 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5368 for ECDSA, tcId is 325 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5368_pubkey[] = { 0x03, 0x07, 0x13, 0xfb, 0x63, 0xf2, 0xaa, 0x6f, 0xe2, 0xca, 0xdf, 0x1b, 0x20, 0xef, 0xc2, 0x59, 0xc7, 0x74, 0x45, 0xda, 0xfa, 0x87, 0xda, 0xc3, 0x98, 0xb8, 0x40, 0x65, 0xca, 0x34, 0x7d, 0xf3, 0xb2, 0x27, 0x81, 0x8d, 0xe1, 0xa3, 0x9b, 0x58, 0x9c, 0xb0, 0x71, 0xd8, 0x3e, 0x53, 0x17, 0xcc, 0xcd, 0xc2, 0x33, 0x8e, 0x51, 0xe3, 0x12, 0xfe, 0x31, 0xd8, 0xdc, 0x34, 0xa4, 0x80, 0x17, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_5368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5368_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5368 = { .name = "ecdsa_secp256k1_sha256_5368", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5368_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5368_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5368_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 325 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5369 for ECDSA, tcId is 326 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5369_pubkey[] = { 0xba, 0xbb, 0x36, 0x77, 0xb0, 0x95, 0x58, 0x02, 0xd8, 0xe9, 0x29, 0xa4, 0x13, 0x55, 0x64, 0x0e, 0xaf, 0x1e, 0xa1, 0x35, 0x3f, 0x8a, 0x77, 0x13, 0x31, 0xc4, 0x94, 0x6e, 0x34, 0x80, 0xaf, 0xa7, 0x25, 0x2f, 0x19, 0x6c, 0x87, 0xed, 0x3d, 0x2a, 0x59, 0xd3, 0xb1, 0xb5, 0x59, 0x13, 0x7f, 0xed, 0x00, 0x13, 0xfe, 0xce, 0xfc, 0x19, 0xfb, 0x5a, 0x92, 0x68, 0x2b, 0x9b, 0xca, 0x51, 0xb9, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_5369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5369_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5369 = { .name = "ecdsa_secp256k1_sha256_5369", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5369_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5369_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5369_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 326 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5370 for ECDSA, tcId is 327 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5370_pubkey[] = { 0x1a, 0xab, 0x20, 0x18, 0x79, 0x34, 0x71, 0x11, 0x1a, 0x8a, 0x0e, 0x9b, 0x14, 0x3f, 0xde, 0x02, 0xfc, 0x95, 0x92, 0x07, 0x96, 0xd3, 0xa6, 0x3d, 0xe3, 0x29, 0xb4, 0x24, 0x39, 0x6f, 0xba, 0x60, 0xbb, 0xe4, 0x13, 0x07, 0x05, 0x17, 0x47, 0x92, 0x44, 0x1b, 0x31, 0x8d, 0x3a, 0xa3, 0x1d, 0xfe, 0x85, 0x77, 0x82, 0x1e, 0x9b, 0x44, 0x6e, 0xc5, 0x73, 0xd2, 0x72, 0xe0, 0x36, 0xc4, 0xeb, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_5370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5370_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5370 = { .name = "ecdsa_secp256k1_sha256_5370", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5370_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5370_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5370_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 327 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5371 for ECDSA, tcId is 328 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5371_pubkey[] = { 0x8c, 0xb0, 0xb9, 0x09, 0x49, 0x9c, 0x83, 0xea, 0x80, 0x6c, 0xd8, 0x85, 0xb1, 0xdd, 0x46, 0x7a, 0x01, 0x19, 0xf0, 0x6a, 0x88, 0xa0, 0x27, 0x6e, 0xb0, 0xcf, 0xda, 0x27, 0x45, 0x35, 0xa8, 0xff, 0x47, 0xb5, 0x42, 0x88, 0x33, 0xbc, 0x3f, 0x2c, 0x8b, 0xf9, 0xd9, 0x04, 0x11, 0x58, 0xcf, 0x33, 0x71, 0x8a, 0x69, 0x96, 0x1c, 0xd0, 0x17, 0x29, 0xbc, 0x00, 0x11, 0xd1, 0xe5, 0x86, 0xab, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_5371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5371_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5371 = { .name = "ecdsa_secp256k1_sha256_5371", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5371_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5371_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5371_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 328 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5372 for ECDSA, tcId is 329 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5372_pubkey[] = { 0x8f, 0x03, 0xcf, 0x1a, 0x42, 0x27, 0x2b, 0xb1, 0x53, 0x27, 0x23, 0x09, 0x3f, 0x72, 0xe6, 0xfe, 0xea, 0xc8, 0x5e, 0x17, 0x00, 0xe9, 0xfb, 0xe9, 0xa6, 0xa2, 0xdd, 0x64, 0x2d, 0x74, 0xbf, 0x5d, 0x3b, 0x89, 0xa7, 0x18, 0x9d, 0xad, 0x8c, 0xf7, 0x5f, 0xc2, 0x2f, 0x6f, 0x15, 0x8a, 0xa2, 0x7f, 0x9c, 0x2c, 0xa0, 0x0d, 0xac, 0xa7, 0x85, 0xbe, 0x33, 0x58, 0xf2, 0xbd, 0xa3, 0x86, 0x2c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_5372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5372_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5372 = { .name = "ecdsa_secp256k1_sha256_5372", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5372_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5372_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5372_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 329 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5373 for ECDSA, tcId is 330 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5373_pubkey[] = { 0x44, 0xde, 0x3b, 0x9c, 0x7a, 0x57, 0xa8, 0xc9, 0xe8, 0x20, 0x95, 0x27, 0x53, 0x42, 0x1e, 0x7d, 0x98, 0x7b, 0xb3, 0xd7, 0x9f, 0x71, 0xf0, 0x13, 0x80, 0x5c, 0x89, 0x7e, 0x01, 0x8f, 0x8a, 0xce, 0xa2, 0x46, 0x07, 0x58, 0xc8, 0xf9, 0x8d, 0x3f, 0xdc, 0xe1, 0x21, 0xa9, 0x43, 0x65, 0x9e, 0x37, 0x2c, 0x32, 0x6f, 0xff, 0x2e, 0x5f, 0xc2, 0xae, 0x7f, 0xa3, 0xf7, 0x9d, 0xaa, 0xe1, 0x3c, 0x12, }; static const unsigned char ecdsa_secp256k1_sha256_5373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5373_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5373 = { .name = "ecdsa_secp256k1_sha256_5373", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5373_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5373_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5373_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5374 for ECDSA, tcId is 331 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5374_pubkey[] = { 0x6f, 0xb8, 0xb2, 0xb4, 0x8e, 0x33, 0x03, 0x12, 0x68, 0xad, 0x6a, 0x51, 0x74, 0x84, 0xdc, 0x88, 0x39, 0xea, 0x90, 0xf6, 0x66, 0x9e, 0xa0, 0xc7, 0xac, 0x32, 0x33, 0xe2, 0xac, 0x31, 0x39, 0x4a, 0x0a, 0xc8, 0xbb, 0xe7, 0xf7, 0x3c, 0x2f, 0xf4, 0xdf, 0x99, 0x78, 0x72, 0x7a, 0xc1, 0xdf, 0xc2, 0xfd, 0x58, 0x64, 0x7d, 0x20, 0xf3, 0x1f, 0x99, 0x10, 0x53, 0x16, 0xb6, 0x46, 0x71, 0xf2, 0x04, }; static const unsigned char ecdsa_secp256k1_sha256_5374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5374_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5374 = { .name = "ecdsa_secp256k1_sha256_5374", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5374_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5374_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5374_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5375 for ECDSA, tcId is 332 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5375_pubkey[] = { 0xbe, 0xa7, 0x11, 0x22, 0xa0, 0x48, 0x69, 0x3e, 0x90, 0x5f, 0xf6, 0x02, 0xb3, 0xcf, 0x9d, 0xd1, 0x8a, 0xf6, 0x9b, 0x9f, 0xc9, 0xd8, 0x43, 0x1d, 0x2b, 0x1d, 0xd2, 0x6b, 0x94, 0x2c, 0x95, 0xe6, 0xf4, 0x3c, 0x7b, 0x8b, 0x95, 0xeb, 0x62, 0x08, 0x2c, 0x12, 0xdb, 0x9d, 0xbd, 0xa7, 0xfe, 0x38, 0xe4, 0x5c, 0xbe, 0x4a, 0x48, 0x86, 0x90, 0x7f, 0xb8, 0x1b, 0xdb, 0x0c, 0x5e, 0xa9, 0x24, 0x6c, }; static const unsigned char ecdsa_secp256k1_sha256_5375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5375_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5375 = { .name = "ecdsa_secp256k1_sha256_5375", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5375_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5375_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5375_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 332 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5376 for ECDSA, tcId is 333 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5376_pubkey[] = { 0xda, 0x91, 0x8c, 0x73, 0x1b, 0xa0, 0x6a, 0x20, 0xcb, 0x94, 0xef, 0x33, 0xb7, 0x78, 0xe9, 0x81, 0xa4, 0x04, 0xa3, 0x05, 0xf1, 0x94, 0x1f, 0xe3, 0x36, 0x66, 0xb4, 0x5b, 0x03, 0x35, 0x31, 0x56, 0xe2, 0xbb, 0x26, 0x94, 0xf5, 0x75, 0xb4, 0x51, 0x83, 0xbe, 0x78, 0xe5, 0xc9, 0xb5, 0x21, 0x0b, 0xf3, 0xbf, 0x48, 0x8f, 0xd4, 0xc8, 0x29, 0x45, 0x16, 0xd8, 0x95, 0x72, 0xca, 0x4f, 0x53, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_5376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5376_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5376 = { .name = "ecdsa_secp256k1_sha256_5376", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5376_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5376_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5376_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5377 for ECDSA, tcId is 334 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5377_pubkey[] = { 0x30, 0x07, 0xe9, 0x2c, 0x39, 0x37, 0xda, 0xde, 0x79, 0x64, 0xdf, 0xa3, 0x5b, 0x0e, 0xff, 0x03, 0x1f, 0x7e, 0xb0, 0x2a, 0xed, 0x0a, 0x03, 0x14, 0x41, 0x11, 0x06, 0xcd, 0xeb, 0x70, 0xfe, 0x3d, 0x5a, 0x75, 0x46, 0xfc, 0x05, 0x52, 0x99, 0x7b, 0x20, 0xe3, 0xd6, 0xf4, 0x13, 0xe7, 0x5e, 0x2c, 0xb6, 0x6e, 0x11, 0x63, 0x22, 0x69, 0x71, 0x14, 0xb7, 0x9b, 0xac, 0x73, 0x4b, 0xfc, 0x4d, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_5377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5377_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5377 = { .name = "ecdsa_secp256k1_sha256_5377", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5377_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5377_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5377_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 334 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5378 for ECDSA, tcId is 335 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5378_pubkey[] = { 0x60, 0xe7, 0x34, 0xef, 0x56, 0x24, 0xd3, 0xcb, 0xf0, 0xdd, 0xd3, 0x75, 0x01, 0x1b, 0xd6, 0x63, 0xd6, 0xd6, 0xae, 0xbc, 0x64, 0x4e, 0xb5, 0x99, 0xfd, 0xf9, 0x8d, 0xbd, 0xcd, 0x18, 0xce, 0x9b, 0xd2, 0xd9, 0x0b, 0x3a, 0xc3, 0x1f, 0x13, 0x9a, 0xf8, 0x32, 0xcc, 0xcf, 0x6c, 0xcb, 0xbb, 0x2c, 0x6e, 0xa1, 0x1f, 0xa9, 0x73, 0x70, 0xdc, 0x99, 0x06, 0xda, 0x47, 0x4d, 0x7d, 0x8a, 0x75, 0x67, }; static const unsigned char ecdsa_secp256k1_sha256_5378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5378_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5378 = { .name = "ecdsa_secp256k1_sha256_5378", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5378_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5378_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5378_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 335 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5379 for ECDSA, tcId is 336 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5379_pubkey[] = { 0x85, 0xa9, 0x00, 0xe9, 0x78, 0x58, 0xf6, 0x93, 0xc0, 0xb7, 0xdf, 0xa2, 0x61, 0xe3, 0x80, 0xda, 0xd6, 0xea, 0x04, 0x6d, 0x1f, 0x65, 0xdd, 0xee, 0xed, 0xd5, 0xf7, 0xd8, 0xaf, 0x0b, 0xa3, 0x37, 0x69, 0x74, 0x4d, 0x15, 0xad, 0xd4, 0xf6, 0xc0, 0xbc, 0x3b, 0x0d, 0xa2, 0xae, 0xc9, 0x3b, 0x34, 0xcb, 0x8c, 0x65, 0xf9, 0x34, 0x0d, 0xdf, 0x74, 0xe7, 0xb0, 0x00, 0x9e, 0xee, 0xcc, 0xce, 0x3c, }; static const unsigned char ecdsa_secp256k1_sha256_5379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5379_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5379 = { .name = "ecdsa_secp256k1_sha256_5379", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5379_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5379_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5379_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 336 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5380 for ECDSA, tcId is 337 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5380_pubkey[] = { 0x38, 0x06, 0x6f, 0x75, 0xd8, 0x8e, 0xfc, 0x4c, 0x93, 0xde, 0x36, 0xf4, 0x9e, 0x03, 0x7b, 0x23, 0x4c, 0xc1, 0x8b, 0x1d, 0xe5, 0x60, 0x87, 0x50, 0xa6, 0x2c, 0xab, 0x03, 0x45, 0x40, 0x10, 0x46, 0xa3, 0xe8, 0x4b, 0xed, 0x8c, 0xfc, 0xb8, 0x19, 0xef, 0x4d, 0x55, 0x04, 0x44, 0xf2, 0xce, 0x4b, 0x65, 0x17, 0x66, 0xb6, 0x9e, 0x2e, 0x29, 0x01, 0xf8, 0x88, 0x36, 0xff, 0x90, 0x03, 0x4f, 0xed, }; static const unsigned char ecdsa_secp256k1_sha256_5380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5380_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5380 = { .name = "ecdsa_secp256k1_sha256_5380", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5380_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5380_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5380_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 337 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5381 for ECDSA, tcId is 338 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5381_pubkey[] = { 0x98, 0xf6, 0x81, 0x77, 0xdc, 0x95, 0xc1, 0xb4, 0xcb, 0xfa, 0x52, 0x45, 0x48, 0x8c, 0xa5, 0x23, 0xa7, 0xd5, 0x62, 0x94, 0x70, 0xd0, 0x35, 0xd6, 0x21, 0xa4, 0x43, 0xc7, 0x2f, 0x39, 0xaa, 0xbf, 0xa3, 0x3d, 0x29, 0x54, 0x6f, 0xa1, 0xc6, 0x48, 0xf2, 0xc7, 0xd5, 0xcc, 0xf7, 0x0c, 0xf1, 0xce, 0x4a, 0xb7, 0x9b, 0x5d, 0xb1, 0xac, 0x05, 0x9d, 0xbe, 0xcd, 0x06, 0x8d, 0xbd, 0xff, 0x1b, 0x89, }; static const unsigned char ecdsa_secp256k1_sha256_5381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5381_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5381 = { .name = "ecdsa_secp256k1_sha256_5381", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5381_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5381_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5381_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 338 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5382 for ECDSA, tcId is 339 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5382_pubkey[] = { 0x5c, 0x2b, 0xbf, 0xa2, 0x3c, 0x9b, 0x9a, 0xd0, 0x7f, 0x03, 0x8a, 0xa8, 0x9b, 0x49, 0x30, 0xbf, 0x26, 0x7d, 0x94, 0x01, 0xe4, 0x25, 0x5d, 0xe9, 0xe8, 0xda, 0x0a, 0x50, 0x78, 0xec, 0x82, 0x77, 0xe3, 0xe8, 0x82, 0xa3, 0x1d, 0x5e, 0x6a, 0x37, 0x9e, 0x07, 0x93, 0x98, 0x3c, 0xcd, 0xed, 0x39, 0xb9, 0x5c, 0x43, 0x53, 0xab, 0x2f, 0xf0, 0x1e, 0xa5, 0x36, 0x9b, 0xa4, 0x7b, 0x0c, 0x31, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_5382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5382_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5382 = { .name = "ecdsa_secp256k1_sha256_5382", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5382_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5382_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5382_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 339 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5383 for ECDSA, tcId is 340 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5383_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0x35, 0x47, 0x80, 0x82, 0x98, 0x44, 0x8e, 0xdb, 0x5e, 0x70, 0x1a, 0xde, 0x84, 0xcd, 0x5f, 0xb1, 0xac, 0x95, 0x67, 0xba, 0x5e, 0x8f, 0xb6, 0x8a, 0x6b, 0x93, 0x3e, 0xc4, 0xb5, 0xcc, 0x84, 0xcc, }; static const unsigned char ecdsa_secp256k1_sha256_5383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5383_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5383 = { .name = "ecdsa_secp256k1_sha256_5383", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5383_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5383_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5383_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 340 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5384 for ECDSA, tcId is 341 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5384_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0xca, 0xb8, 0x7f, 0x7d, 0x67, 0xbb, 0x71, 0x24, 0xa1, 0x8f, 0xe5, 0x21, 0x7b, 0x32, 0xa0, 0x4e, 0x53, 0x6a, 0x98, 0x45, 0xa1, 0x70, 0x49, 0x75, 0x94, 0x6c, 0xc1, 0x3a, 0x4a, 0x33, 0x77, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_5384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5384_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5384 = { .name = "ecdsa_secp256k1_sha256_5384", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5384_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5384_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5384_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 341 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5385 for ECDSA, tcId is 342 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5385_pubkey[] = { 0x8a, 0xa2, 0xc6, 0x4f, 0xa9, 0xc6, 0x43, 0x75, 0x63, 0xab, 0xfb, 0xcb, 0xd0, 0x0b, 0x20, 0x48, 0xd4, 0x8c, 0x18, 0xc1, 0x52, 0xa2, 0xa6, 0xf4, 0x90, 0x36, 0xde, 0x76, 0x47, 0xeb, 0xe8, 0x2e, 0x1c, 0xe6, 0x43, 0x87, 0x99, 0x5c, 0x68, 0xa0, 0x60, 0xfa, 0x3b, 0xc0, 0x39, 0x9b, 0x05, 0xcc, 0x06, 0xee, 0xc7, 0xd5, 0x98, 0xf7, 0x50, 0x41, 0xa4, 0x91, 0x7e, 0x69, 0x2b, 0x7f, 0x51, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5385_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5385 = { .name = "ecdsa_secp256k1_sha256_5385", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5385_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5385_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5385_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 342 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5386 for ECDSA, tcId is 343 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5386_pubkey[] = { 0x39, 0x14, 0x27, 0xff, 0x7e, 0xe7, 0x80, 0x13, 0xc1, 0x4a, 0xec, 0x7d, 0x96, 0xa8, 0xa0, 0x62, 0x20, 0x92, 0x98, 0xa7, 0x83, 0x83, 0x5e, 0x94, 0xfd, 0x65, 0x49, 0xd5, 0x02, 0xff, 0xf7, 0x1f, 0xdd, 0x66, 0x24, 0xec, 0x34, 0x3a, 0xd9, 0xfc, 0xf4, 0xd9, 0x87, 0x21, 0x81, 0xe5, 0x9f, 0x84, 0x2f, 0x9b, 0xa4, 0xcc, 0xca, 0xe0, 0x9a, 0x6c, 0x09, 0x72, 0xfb, 0x6a, 0xc6, 0xb4, 0xc6, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_5386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5386_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5386 = { .name = "ecdsa_secp256k1_sha256_5386", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5386_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5386_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5386_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 343 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5387 for ECDSA, tcId is 344 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5387_pubkey[] = { 0xe7, 0x62, 0xb8, 0xa2, 0x19, 0xb4, 0xf1, 0x80, 0x21, 0x9c, 0xc7, 0xa9, 0x05, 0x92, 0x45, 0xe4, 0x96, 0x1b, 0xd1, 0x91, 0xc0, 0x38, 0x99, 0x78, 0x9c, 0x7a, 0x34, 0xb8, 0x9e, 0x8c, 0x13, 0x8e, 0xc1, 0x53, 0x3e, 0xf0, 0x41, 0x9b, 0xb7, 0x37, 0x6e, 0x0b, 0xfd, 0xe9, 0x31, 0x9d, 0x10, 0xa0, 0x69, 0x68, 0x79, 0x1d, 0x9e, 0xa0, 0xee, 0xd9, 0xc1, 0xce, 0x63, 0x45, 0xae, 0xd9, 0x75, 0x9e, }; static const unsigned char ecdsa_secp256k1_sha256_5387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5387_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5387 = { .name = "ecdsa_secp256k1_sha256_5387", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5387_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5387_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5387_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 344 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5388 for ECDSA, tcId is 345 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5388_pubkey[] = { 0x9a, 0xed, 0xb0, 0xd2, 0x81, 0xdb, 0x16, 0x4e, 0x13, 0x00, 0x00, 0xc5, 0x69, 0x7f, 0xae, 0x0f, 0x30, 0x5e, 0xf8, 0x48, 0xbe, 0x6f, 0xff, 0xb4, 0x3a, 0xc5, 0x93, 0xfb, 0xb9, 0x50, 0xe9, 0x52, 0xfa, 0x6f, 0x63, 0x33, 0x59, 0xbd, 0xcd, 0x82, 0xb5, 0x6b, 0x0b, 0x9f, 0x96, 0x5b, 0x03, 0x77, 0x89, 0xd4, 0x6b, 0x9a, 0x81, 0x41, 0xb7, 0x91, 0xb2, 0xae, 0xfa, 0x71, 0x3f, 0x96, 0xc1, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_5388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5388_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5388 = { .name = "ecdsa_secp256k1_sha256_5388", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5388_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5388_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5388_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5389 for ECDSA, tcId is 346 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5389_pubkey[] = { 0x8a, 0xd4, 0x45, 0xdb, 0x62, 0x81, 0x62, 0x60, 0xe4, 0xe6, 0x87, 0xfd, 0x18, 0x84, 0xe4, 0x8b, 0x9f, 0xc0, 0x63, 0x6d, 0x03, 0x15, 0x47, 0xd6, 0x33, 0x15, 0xe7, 0x92, 0xe1, 0x9b, 0xfa, 0xee, 0x1d, 0xe6, 0x4f, 0x99, 0xd5, 0xf1, 0xcd, 0x8b, 0x6e, 0xc9, 0xcb, 0x0f, 0x78, 0x7a, 0x65, 0x4a, 0xe8, 0x69, 0x93, 0xba, 0x3d, 0xb1, 0x00, 0x8e, 0xf4, 0x3c, 0xff, 0x06, 0x84, 0xcb, 0x22, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_5389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5389_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5389 = { .name = "ecdsa_secp256k1_sha256_5389", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5389_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5389_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5389_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 346 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5390 for ECDSA, tcId is 347 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5390_pubkey[] = { 0x1f, 0x57, 0x99, 0xc9, 0x5b, 0xe8, 0x90, 0x63, 0xb2, 0x4f, 0x26, 0xe4, 0x0c, 0xb9, 0x28, 0xc1, 0xa8, 0x68, 0xa7, 0x6f, 0xb0, 0x09, 0x46, 0x07, 0xe8, 0x04, 0x3d, 0xb4, 0x09, 0xc9, 0x1c, 0x32, 0xe7, 0x57, 0x24, 0xe8, 0x13, 0xa4, 0x19, 0x1e, 0x3a, 0x83, 0x90, 0x07, 0xf0, 0x8e, 0x2e, 0x89, 0x73, 0x88, 0xb0, 0x6d, 0x4a, 0x00, 0xde, 0x6d, 0xe6, 0x0e, 0x53, 0x6d, 0x91, 0xfa, 0xb5, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_5390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5390_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5390 = { .name = "ecdsa_secp256k1_sha256_5390", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5390_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5390_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5390_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 347 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5391 for ECDSA, tcId is 348 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5391_pubkey[] = { 0xa3, 0x33, 0x1a, 0x4e, 0x1b, 0x42, 0x23, 0xec, 0x2c, 0x02, 0x7e, 0xdd, 0x48, 0x2c, 0x92, 0x8a, 0x14, 0xed, 0x35, 0x8d, 0x93, 0xf1, 0xd4, 0x21, 0x7d, 0x39, 0xab, 0xf6, 0x9f, 0xcb, 0x5c, 0xcc, 0x28, 0xd6, 0x84, 0xd2, 0xaa, 0xab, 0xcd, 0x63, 0x83, 0x77, 0x5c, 0xaa, 0x62, 0x39, 0xde, 0x26, 0xd4, 0xc6, 0x93, 0x7b, 0xb6, 0x03, 0xec, 0xb4, 0x19, 0x60, 0x82, 0xf4, 0xcf, 0xfd, 0x50, 0x9d, }; static const unsigned char ecdsa_secp256k1_sha256_5391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5391_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5391 = { .name = "ecdsa_secp256k1_sha256_5391", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5391_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5391_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5391_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 348 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5392 for ECDSA, tcId is 349 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5392_pubkey[] = { 0x3f, 0x39, 0x52, 0x19, 0x97, 0x74, 0xc7, 0xcf, 0x39, 0xb3, 0x8b, 0x66, 0xcb, 0x10, 0x42, 0xa6, 0x26, 0x0d, 0x86, 0x80, 0x80, 0x38, 0x45, 0xe4, 0xd4, 0x33, 0xad, 0xba, 0x3b, 0xb2, 0x48, 0x18, 0x5e, 0xa4, 0x95, 0xb6, 0x8c, 0xbc, 0x7e, 0xd4, 0x17, 0x3e, 0xe6, 0x3c, 0x90, 0x42, 0xdc, 0x50, 0x26, 0x25, 0xc7, 0xeb, 0x7e, 0x21, 0xfb, 0x02, 0xca, 0x9a, 0x91, 0x14, 0xe0, 0xa3, 0xa1, 0x8d, }; static const unsigned char ecdsa_secp256k1_sha256_5392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5392_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5392 = { .name = "ecdsa_secp256k1_sha256_5392", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5392_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5392_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5392_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 349 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5393 for ECDSA, tcId is 350 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5393_pubkey[] = { 0xcd, 0xfb, 0x8c, 0x0f, 0x42, 0x2e, 0x14, 0x4e, 0x13, 0x7c, 0x24, 0x12, 0xc8, 0x6c, 0x17, 0x1f, 0x5f, 0xe3, 0xfa, 0x3f, 0x5b, 0xbb, 0x54, 0x4e, 0x90, 0x76, 0x28, 0x8f, 0x3c, 0xed, 0x78, 0x6e, 0x05, 0x4f, 0xd0, 0x72, 0x1b, 0x77, 0xc1, 0x1c, 0x79, 0xbe, 0xac, 0xb3, 0xc9, 0x42, 0x11, 0xb0, 0xa1, 0x9b, 0xda, 0x08, 0x65, 0x2e, 0xfe, 0xaf, 0x92, 0x51, 0x3a, 0x3b, 0x0a, 0x16, 0x36, 0x98, }; static const unsigned char ecdsa_secp256k1_sha256_5393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5393_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5393 = { .name = "ecdsa_secp256k1_sha256_5393", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5393_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5393_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5393_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 350 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5394 for ECDSA, tcId is 351 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5394_pubkey[] = { 0x73, 0x59, 0x8a, 0x6a, 0x1c, 0x68, 0x27, 0x8f, 0xa6, 0xbf, 0xd0, 0xce, 0x40, 0x64, 0xe6, 0x82, 0x35, 0xbc, 0x1c, 0x0f, 0x6b, 0x20, 0xa9, 0x28, 0x10, 0x8b, 0xe3, 0x36, 0x73, 0x0f, 0x87, 0xe3, 0xcb, 0xae, 0x61, 0x25, 0x19, 0xb5, 0x03, 0x2e, 0xcc, 0x85, 0xae, 0xd8, 0x11, 0x27, 0x1a, 0x95, 0xfe, 0x79, 0x39, 0xd5, 0xd3, 0x46, 0x01, 0x40, 0xba, 0x31, 0x8f, 0x4d, 0x14, 0xab, 0xa3, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_5394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5394_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5394 = { .name = "ecdsa_secp256k1_sha256_5394", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5394_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5394_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5394_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 351 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5395 for ECDSA, tcId is 352 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5395_pubkey[] = { 0x58, 0xde, 0xbd, 0x9a, 0x7e, 0xe2, 0xc9, 0xd5, 0x91, 0x32, 0x47, 0x8a, 0x54, 0x40, 0xae, 0x4d, 0x5d, 0x7e, 0xd4, 0x37, 0x30, 0x83, 0x69, 0xf9, 0x2e, 0xa8, 0x6c, 0x82, 0x18, 0x3f, 0x10, 0xa1, 0x67, 0x73, 0xe7, 0x6f, 0x5e, 0xdb, 0xf4, 0xda, 0x0e, 0x4f, 0x1b, 0xdf, 0xfa, 0xc0, 0xf5, 0x72, 0x57, 0xe1, 0xdf, 0xa4, 0x65, 0x84, 0x29, 0x31, 0x30, 0x9a, 0x24, 0x24, 0x5f, 0xda, 0x6a, 0x5d, }; static const unsigned char ecdsa_secp256k1_sha256_5395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5395_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5395 = { .name = "ecdsa_secp256k1_sha256_5395", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5395_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5395_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5395_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 352 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5396 for ECDSA, tcId is 353 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5396_pubkey[] = { 0x8b, 0x90, 0x4d, 0xe4, 0x79, 0x67, 0x34, 0x0c, 0x5f, 0x8c, 0x35, 0x72, 0xa7, 0x20, 0x92, 0x4e, 0xf7, 0x57, 0x86, 0x37, 0xfe, 0xab, 0x19, 0x49, 0xac, 0xb2, 0x41, 0xa5, 0xa6, 0xac, 0x3f, 0x5b, 0x95, 0x09, 0x04, 0x49, 0x6f, 0x98, 0x24, 0xb1, 0xd6, 0x3f, 0x33, 0x13, 0xba, 0xe2, 0x1b, 0x89, 0xfa, 0xe8, 0x9a, 0xfd, 0xfc, 0x81, 0x1b, 0x5e, 0xce, 0x03, 0xfd, 0x5a, 0xa3, 0x01, 0x86, 0x4f, }; static const unsigned char ecdsa_secp256k1_sha256_5396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5396_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5396 = { .name = "ecdsa_secp256k1_sha256_5396", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5396_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5396_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5396_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 353 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5397 for ECDSA, tcId is 354 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5397_pubkey[] = { 0xf4, 0x89, 0x2b, 0x6d, 0x52, 0x5c, 0x77, 0x1e, 0x03, 0x5f, 0x2a, 0x25, 0x27, 0x08, 0xf3, 0x78, 0x4e, 0x48, 0x23, 0x86, 0x04, 0xb4, 0xf9, 0x4d, 0xc5, 0x6e, 0xaa, 0x1e, 0x54, 0x6d, 0x94, 0x1a, 0x34, 0x6b, 0x1a, 0xa0, 0xbc, 0xe6, 0x8b, 0x1c, 0x50, 0xe5, 0xb5, 0x2f, 0x50, 0x9f, 0xb5, 0x52, 0x2e, 0x5c, 0x25, 0xe0, 0x28, 0xbc, 0x8f, 0x86, 0x34, 0x02, 0xed, 0xb7, 0xbc, 0xad, 0x8b, 0x1b, }; static const unsigned char ecdsa_secp256k1_sha256_5397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5397_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5397 = { .name = "ecdsa_secp256k1_sha256_5397", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5397_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5397_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5397_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 354 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5398 for ECDSA, tcId is 355 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5398_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_5398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5398_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5398 = { .name = "ecdsa_secp256k1_sha256_5398", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5398_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5398_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5398_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 355 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5399 for ECDSA, tcId is 356 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5399_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_5399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5399_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5399 = { .name = "ecdsa_secp256k1_sha256_5399", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5399_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5399_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5399_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 356 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5400 for ECDSA, tcId is 357 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5400_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5400_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5400 = { .name = "ecdsa_secp256k1_sha256_5400", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5400_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5400_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5400_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 357 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5401 for ECDSA, tcId is 358 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5401_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_5401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5401_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5401 = { .name = "ecdsa_secp256k1_sha256_5401", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5401_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5401_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5401_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 358 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5402 for ECDSA, tcId is 359 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5402_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5402_sig[] = { 0xf8, 0x0a, 0xe4, 0xf9, 0x6c, 0xdb, 0xc9, 0xd8, 0x53, 0xf8, 0x3d, 0x47, 0xaa, 0xe2, 0x25, 0xbf, 0x40, 0x7d, 0x51, 0xc5, 0x6b, 0x77, 0x76, 0xcd, 0x67, 0xd0, 0xdc, 0x19, 0x5d, 0x99, 0xa9, 0xdc, 0xb3, 0x03, 0xe2, 0x6b, 0xe1, 0xf7, 0x34, 0x65, 0x31, 0x52, 0x21, 0xf0, 0xb3, 0x31, 0x52, 0x88, 0x07, 0xa1, 0xa9, 0xb6, 0xeb, 0x06, 0x8e, 0xde, 0x6e, 0xeb, 0xea, 0xaa, 0x49, 0xaf, 0x8a, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5402 = { .name = "ecdsa_secp256k1_sha256_5402", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5402_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha256_5402_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 359 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5403 for ECDSA, tcId is 360 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5403_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5403_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha256_5403_sig[] = { 0x10, 0x9c, 0xd8, 0xae, 0x03, 0x74, 0x35, 0x89, 0x84, 0xa8, 0x24, 0x9c, 0x0a, 0x84, 0x36, 0x28, 0xf2, 0x83, 0x5f, 0xfa, 0xd1, 0xdf, 0x1a, 0x9a, 0x69, 0xaa, 0x2f, 0xe7, 0x23, 0x55, 0x54, 0x5c, 0xac, 0x6f, 0x00, 0xda, 0xf5, 0x3b, 0xd8, 0xb1, 0xe3, 0x4d, 0xa3, 0x29, 0x35, 0x9b, 0x6e, 0x08, 0x01, 0x9c, 0x5b, 0x03, 0x7f, 0xed, 0x79, 0xee, 0x38, 0x3a, 0xe3, 0x9f, 0x85, 0xa1, 0x59, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5403 = { .name = "ecdsa_secp256k1_sha256_5403", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5403_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5403_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha256_5403_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 360 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5404 for ECDSA, tcId is 361 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5404_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_5404_sig[] = { 0xd0, 0x35, 0xee, 0x1f, 0x17, 0xfd, 0xb0, 0xb2, 0x68, 0x1b, 0x16, 0x3e, 0x33, 0xc3, 0x59, 0x93, 0x26, 0x59, 0x99, 0x0a, 0xf7, 0x7d, 0xca, 0x63, 0x20, 0x12, 0xb3, 0x0b, 0x27, 0xa0, 0x57, 0xb3, 0x19, 0x39, 0xd9, 0xf3, 0xb2, 0x85, 0x8b, 0xc1, 0x3e, 0x34, 0x74, 0xcb, 0x50, 0xe6, 0xa8, 0x2b, 0xe4, 0x4f, 0xaa, 0x71, 0x94, 0x0f, 0x87, 0x6c, 0x1c, 0xba, 0x4c, 0x3e, 0x98, 0x92, 0x02, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5404 = { .name = "ecdsa_secp256k1_sha256_5404", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5404_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5404_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_5404_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 361 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5405 for ECDSA, tcId is 362 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5405_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_5405_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha256_5405_sig[] = { 0x4f, 0x05, 0x3f, 0x56, 0x3a, 0xd3, 0x4b, 0x74, 0xfd, 0x8c, 0x99, 0x34, 0xce, 0x59, 0xe7, 0x9c, 0x2e, 0xb8, 0xe6, 0xec, 0xa0, 0xfe, 0xf5, 0xb3, 0x23, 0xca, 0x67, 0xd5, 0xac, 0x7e, 0xd2, 0x38, 0x4d, 0x4b, 0x05, 0xda, 0xa0, 0x71, 0x9e, 0x77, 0x3d, 0x86, 0x17, 0xdc, 0xe5, 0x63, 0x1c, 0x5f, 0xd6, 0xf5, 0x9c, 0x9b, 0xdc, 0x74, 0x8e, 0x4b, 0x55, 0xc9, 0x70, 0x04, 0x0a, 0xf0, 0x1b, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5405 = { .name = "ecdsa_secp256k1_sha256_5405", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5405_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5405_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha256_5405_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 362 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5406 for ECDSA, tcId is 363 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5406_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5406_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5406_sig[] = { 0x6d, 0x6a, 0x4f, 0x55, 0x6c, 0xcc, 0xe1, 0x54, 0xe7, 0xfb, 0x9f, 0x19, 0xe7, 0x6c, 0x3d, 0xec, 0xa1, 0x3d, 0x59, 0xcc, 0x2a, 0xeb, 0x4e, 0xca, 0xd9, 0x68, 0xaa, 0xb2, 0xde, 0xd4, 0x59, 0x65, 0x53, 0xb9, 0xfa, 0x74, 0x80, 0x3e, 0xde, 0x0f, 0xc4, 0x44, 0x1b, 0xf6, 0x83, 0xd5, 0x6c, 0x56, 0x4d, 0x3e, 0x27, 0x4e, 0x09, 0xcc, 0xf4, 0x73, 0x90, 0xba, 0xdd, 0x14, 0x71, 0xc0, 0x5f, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5406 = { .name = "ecdsa_secp256k1_sha256_5406", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5406_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5406_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5406_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 363 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5407 for ECDSA, tcId is 364 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5407_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5407_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5407_sig[] = { 0xaa, 0xd5, 0x03, 0xde, 0x9b, 0x9f, 0xd6, 0x6b, 0x94, 0x8e, 0x9a, 0xcf, 0x59, 0x6f, 0x0a, 0x0e, 0x65, 0xe7, 0x00, 0xb2, 0x8b, 0x26, 0xec, 0x56, 0xe6, 0xe4, 0x5e, 0x84, 0x64, 0x89, 0xb3, 0xc4, 0xff, 0xf2, 0x23, 0xc5, 0xd0, 0x76, 0x54, 0x47, 0xe8, 0x44, 0x7a, 0x3f, 0x9d, 0x31, 0xfd, 0x06, 0x96, 0xe8, 0x9d, 0x24, 0x44, 0x22, 0x02, 0x2f, 0xf6, 0x1a, 0x11, 0x0b, 0x2a, 0x8c, 0x2f, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5407 = { .name = "ecdsa_secp256k1_sha256_5407", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5407_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5407_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5407_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 364 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5408 for ECDSA, tcId is 365 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5408_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_5408_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5408_sig[] = { 0x91, 0x82, 0xce, 0xbd, 0x3b, 0xb8, 0xab, 0x57, 0x2e, 0x16, 0x71, 0x74, 0x39, 0x72, 0x09, 0xef, 0x4b, 0x1d, 0x43, 0x9a, 0xf3, 0xb2, 0x00, 0xcd, 0xf0, 0x03, 0x62, 0x00, 0x89, 0xe4, 0x32, 0x25, 0xab, 0xb8, 0x83, 0x67, 0xd1, 0x5f, 0xe6, 0x2d, 0x1e, 0xff, 0xfb, 0x68, 0x03, 0xda, 0x03, 0x10, 0x9e, 0xe2, 0x2e, 0x90, 0xbc, 0x9c, 0x78, 0xe8, 0xb4, 0xed, 0x23, 0x63, 0x0b, 0x82, 0xea, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5408 = { .name = "ecdsa_secp256k1_sha256_5408", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5408_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5408_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5408_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 365 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5409 for ECDSA, tcId is 366 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5409_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5409_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5409_sig[] = { 0x38, 0x54, 0xa3, 0x99, 0x8a, 0xeb, 0xdf, 0x2d, 0xbc, 0x28, 0xad, 0xac, 0x41, 0x81, 0x46, 0x2c, 0xca, 0xc7, 0x87, 0x39, 0x07, 0xab, 0x7f, 0x21, 0x2c, 0x42, 0xdb, 0x0e, 0x69, 0xb5, 0x6e, 0xd8, 0xc1, 0x2c, 0x09, 0x47, 0x5c, 0x77, 0x2f, 0xd0, 0xc1, 0xb2, 0x06, 0x0d, 0x51, 0x63, 0xe4, 0x2b, 0xf7, 0x1d, 0x72, 0x7e, 0x4a, 0xe7, 0xc0, 0x3e, 0xeb, 0xa9, 0x54, 0xbf, 0x50, 0xb4, 0x3b, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5409 = { .name = "ecdsa_secp256k1_sha256_5409", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5409_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5409_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5409_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 366 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5410 for ECDSA, tcId is 367 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5410_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5410_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5410_sig[] = { 0xe9, 0x4d, 0xbd, 0xc3, 0x87, 0x95, 0xfe, 0x5c, 0x90, 0x4d, 0x8f, 0x16, 0xd9, 0x69, 0xd3, 0xb5, 0x87, 0xf0, 0xa2, 0x5d, 0x2d, 0xe9, 0x0b, 0x6d, 0x8c, 0x5c, 0x53, 0xff, 0x88, 0x7e, 0x36, 0x07, 0x85, 0x6b, 0x8c, 0x96, 0x3e, 0x9b, 0x68, 0xda, 0xde, 0x44, 0x75, 0x0b, 0xf9, 0x7e, 0xc4, 0xd1, 0x1b, 0x1a, 0x0a, 0x38, 0x04, 0xf4, 0xcb, 0x79, 0xaa, 0x27, 0xbd, 0xea, 0x78, 0xac, 0x14, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5410 = { .name = "ecdsa_secp256k1_sha256_5410", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5410_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5410_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5410_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 367 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5411 for ECDSA, tcId is 368 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5411_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_5411_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5411_sig[] = { 0x49, 0xfc, 0x10, 0x2a, 0x08, 0xca, 0x47, 0xb6, 0x0e, 0x08, 0x58, 0xcd, 0x02, 0x84, 0xd2, 0x2c, 0xdd, 0xd7, 0x23, 0x3f, 0x94, 0xaa, 0xff, 0xbb, 0x2d, 0xb1, 0xdd, 0x2c, 0xf0, 0x84, 0x25, 0xe1, 0x5b, 0x16, 0xfc, 0xa5, 0xa1, 0x2c, 0xdb, 0x39, 0x70, 0x16, 0x97, 0xad, 0x8e, 0x39, 0xff, 0xd6, 0xbd, 0xec, 0x00, 0x24, 0x29, 0x8a, 0xfa, 0xa2, 0x32, 0x6a, 0xea, 0x09, 0x20, 0x0b, 0x14, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5411 = { .name = "ecdsa_secp256k1_sha256_5411", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5411_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5411_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5411_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 368 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5412 for ECDSA, tcId is 369 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5412_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5412_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5412_sig[] = { 0x41, 0xef, 0xa7, 0xd3, 0xf0, 0x5a, 0x00, 0x10, 0x67, 0x5f, 0xcb, 0x91, 0x8a, 0x45, 0xc6, 0x93, 0xda, 0x4b, 0x34, 0x8d, 0xf2, 0x1a, 0x59, 0xd6, 0xf9, 0xcd, 0x73, 0xe0, 0xd8, 0x31, 0xd6, 0x7a, 0xbb, 0xab, 0x52, 0x59, 0x6c, 0x1a, 0x1d, 0x94, 0x84, 0x29, 0x6c, 0xdc, 0x92, 0xcb, 0xf0, 0x7e, 0x66, 0x52, 0x59, 0xa1, 0x37, 0x91, 0xa8, 0xfe, 0x88, 0x45, 0xe2, 0xc0, 0x7c, 0xf3, 0xfc, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5412 = { .name = "ecdsa_secp256k1_sha256_5412", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5412_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5412_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5412_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 369 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5413 for ECDSA, tcId is 370 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5413_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5413_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5413_sig[] = { 0xb6, 0x15, 0x69, 0x8c, 0x35, 0x8b, 0x35, 0x92, 0x0d, 0xd8, 0x83, 0xec, 0xa6, 0x25, 0xa6, 0xc5, 0xf7, 0x56, 0x39, 0x70, 0xcd, 0xfc, 0x37, 0x8f, 0x8f, 0xe0, 0xce, 0xe1, 0x70, 0x92, 0x14, 0x4c, 0xda, 0x0b, 0x84, 0xcd, 0x94, 0xa4, 0x1e, 0x04, 0x9e, 0xf4, 0x77, 0xae, 0xac, 0x15, 0x7b, 0x2a, 0x9b, 0xfa, 0x6b, 0x7a, 0xc8, 0xde, 0x06, 0xed, 0x38, 0x58, 0xc5, 0xee, 0xde, 0x6d, 0xdd, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5413 = { .name = "ecdsa_secp256k1_sha256_5413", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5413_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5413_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5413_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 370 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5414 for ECDSA, tcId is 371 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5414_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_5414_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5414_sig[] = { 0x87, 0xcf, 0x8c, 0x0e, 0xb8, 0x2d, 0x44, 0xf6, 0x9c, 0x60, 0xa2, 0xff, 0x54, 0x57, 0xd3, 0xaa, 0xa3, 0x22, 0xe7, 0xec, 0x61, 0xae, 0x5a, 0xec, 0xfd, 0x67, 0x8a, 0xe1, 0xc1, 0x93, 0x2b, 0x0e, 0xc5, 0x22, 0xc4, 0xee, 0xa7, 0xea, 0xfb, 0x82, 0x91, 0x4c, 0xbf, 0x5c, 0x1f, 0xf7, 0x67, 0x60, 0x10, 0x9f, 0x55, 0xdd, 0xdd, 0xcf, 0x58, 0x27, 0x4d, 0x41, 0xc9, 0xbc, 0x43, 0x11, 0xe0, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5414 = { .name = "ecdsa_secp256k1_sha256_5414", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5414_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5414_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5414_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 371 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5415 for ECDSA, tcId is 372 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5415_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5415_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5415_sig[] = { 0x62, 0xf4, 0x8e, 0xf7, 0x1a, 0xce, 0x27, 0xbf, 0x5a, 0x01, 0x83, 0x4d, 0xe1, 0xf7, 0xe3, 0xf9, 0x48, 0xb9, 0xdc, 0xe1, 0xca, 0x1e, 0x91, 0x1d, 0x5e, 0x13, 0xd3, 0xb1, 0x04, 0x47, 0x1d, 0x82, 0xa1, 0x57, 0x0c, 0xc0, 0xf3, 0x88, 0x76, 0x8d, 0x3b, 0xa7, 0xdf, 0x7f, 0x21, 0x25, 0x64, 0xca, 0xa2, 0x56, 0xff, 0x82, 0x5d, 0xf9, 0x97, 0xf2, 0x1f, 0x72, 0xf5, 0x28, 0x0d, 0x53, 0x01, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5415 = { .name = "ecdsa_secp256k1_sha256_5415", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5415_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5415_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5415_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 372 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5416 for ECDSA, tcId is 373 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5416_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5416_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5416_sig[] = { 0xf6, 0xb0, 0xe2, 0xf6, 0xfe, 0x02, 0x0c, 0xf7, 0xc0, 0xc2, 0x01, 0x37, 0x43, 0x43, 0x44, 0xed, 0x7a, 0xdd, 0x6c, 0x4b, 0xe5, 0x18, 0x61, 0xe2, 0xd1, 0x4c, 0xbd, 0xa4, 0x72, 0xa6, 0xff, 0xb4, 0x9b, 0xe9, 0x37, 0x22, 0xc1, 0xa3, 0xad, 0x7d, 0x4c, 0xf9, 0x17, 0x23, 0x70, 0x0c, 0xb5, 0x48, 0x6d, 0xe5, 0x47, 0x9d, 0x8c, 0x1b, 0x38, 0xae, 0x4e, 0x8e, 0x5b, 0xa1, 0x63, 0x8e, 0x97, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5416 = { .name = "ecdsa_secp256k1_sha256_5416", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5416_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5416_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5416_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 373 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5417 for ECDSA, tcId is 374 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5417_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_5417_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5417_sig[] = { 0xdb, 0x09, 0xd8, 0x46, 0x0f, 0x05, 0xef, 0xf2, 0x3b, 0xc7, 0xe4, 0x36, 0xb6, 0x7d, 0xa5, 0x63, 0xfa, 0x4b, 0x4e, 0xdb, 0x58, 0xac, 0x24, 0xce, 0x20, 0x1f, 0xa8, 0xa3, 0x58, 0x12, 0x50, 0x57, 0x46, 0xda, 0x11, 0x67, 0x54, 0x60, 0x29, 0x40, 0xc8, 0x99, 0x9c, 0x8d, 0x66, 0x5f, 0x78, 0x6c, 0x50, 0xf5, 0x77, 0x2c, 0x0a, 0x3c, 0xdb, 0xda, 0x07, 0x5e, 0x77, 0xea, 0xbc, 0x64, 0xdf, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5417 = { .name = "ecdsa_secp256k1_sha256_5417", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5417_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5417_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5417_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 374 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5418 for ECDSA, tcId is 375 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5418_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5418_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5418_sig[] = { 0x59, 0x2c, 0x41, 0xe1, 0x65, 0x17, 0xf1, 0x2f, 0xca, 0xbd, 0x98, 0x26, 0x76, 0x74, 0xf9, 0x74, 0xb5, 0x88, 0xe9, 0xf3, 0x5d, 0x35, 0x40, 0x6c, 0x1a, 0x7b, 0xb2, 0xed, 0x1d, 0x19, 0xb7, 0xb8, 0xc1, 0x9a, 0x5f, 0x94, 0x26, 0x07, 0xc3, 0x55, 0x14, 0x84, 0xff, 0x0d, 0xc9, 0x72, 0x81, 0xf0, 0xcd, 0xc8, 0x2b, 0xc4, 0x8e, 0x22, 0x05, 0xa0, 0x64, 0x5c, 0x0c, 0xf3, 0xd7, 0xf5, 0x9d, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5418 = { .name = "ecdsa_secp256k1_sha256_5418", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5418_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5418_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5418_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 375 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5419 for ECDSA, tcId is 376 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5419_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5419_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5419_sig[] = { 0xbe, 0x0d, 0x70, 0x88, 0x7d, 0x5e, 0x40, 0x82, 0x1a, 0x61, 0xb6, 0x80, 0x47, 0xde, 0x4e, 0xa0, 0x3d, 0xeb, 0xfd, 0xf5, 0x1c, 0xdf, 0x4d, 0x4b, 0x19, 0x55, 0x58, 0xb9, 0x59, 0xa0, 0x32, 0xb2, 0x82, 0x66, 0xb4, 0xd2, 0x70, 0xe2, 0x44, 0x14, 0xec, 0xac, 0xb1, 0x4c, 0x09, 0x1a, 0x23, 0x31, 0x34, 0xb9, 0x18, 0xd3, 0x73, 0x20, 0xc6, 0x55, 0x7d, 0x60, 0xad, 0x0a, 0x63, 0x54, 0x4a, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5419 = { .name = "ecdsa_secp256k1_sha256_5419", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5419_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5419_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5419_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 376 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5420 for ECDSA, tcId is 377 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5420_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_5420_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5420_sig[] = { 0xfa, 0xe9, 0x2d, 0xfc, 0xb2, 0xee, 0x39, 0x2d, 0x27, 0x0a, 0xf3, 0xa5, 0x73, 0x9f, 0xaa, 0x26, 0xd4, 0xf9, 0x7b, 0xfd, 0x39, 0xed, 0x3c, 0xbe, 0xe4, 0xd2, 0x9e, 0x26, 0xaf, 0x3b, 0x20, 0x6a, 0x93, 0x64, 0x5c, 0x80, 0x60, 0x55, 0x95, 0xe0, 0x2c, 0x09, 0xa0, 0xdc, 0x4b, 0x17, 0xac, 0x2a, 0x51, 0x84, 0x6a, 0x72, 0x8b, 0x3e, 0x8d, 0x60, 0x44, 0x2e, 0xd6, 0x44, 0x9f, 0xd3, 0x34, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5420 = { .name = "ecdsa_secp256k1_sha256_5420", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5420_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5420_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5420_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 377 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5421 for ECDSA, tcId is 378 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5421_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5421_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5421_sig[] = { 0x17, 0x6a, 0x25, 0x57, 0x56, 0x6f, 0xfa, 0x51, 0x8b, 0x11, 0x22, 0x66, 0x94, 0xeb, 0x98, 0x02, 0xed, 0x20, 0x98, 0xbf, 0xe2, 0x78, 0xe5, 0x57, 0x0f, 0xe1, 0xd5, 0xd7, 0xaf, 0x18, 0xa9, 0x43, 0xed, 0x6e, 0x20, 0x95, 0xf1, 0x2a, 0x03, 0xf2, 0xea, 0xf6, 0x71, 0x8f, 0x43, 0x0e, 0xc5, 0xfe, 0x28, 0x29, 0xfd, 0x16, 0x46, 0xab, 0x64, 0x87, 0x01, 0x65, 0x6f, 0xd3, 0x12, 0x21, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5421 = { .name = "ecdsa_secp256k1_sha256_5421", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5421_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5421_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5421_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 378 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5422 for ECDSA, tcId is 379 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5422_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5422_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5422_sig[] = { 0x60, 0xbe, 0x20, 0xc3, 0xdb, 0xc1, 0x62, 0xdd, 0x34, 0xd2, 0x67, 0x80, 0x62, 0x1c, 0x10, 0x4b, 0xbe, 0x5d, 0xac, 0xe6, 0x30, 0x17, 0x1b, 0x2d, 0xae, 0xf0, 0xd8, 0x26, 0x40, 0x9e, 0xe5, 0xc2, 0xbd, 0x80, 0x81, 0xb2, 0x77, 0x62, 0xab, 0x6e, 0x8f, 0x42, 0x59, 0x56, 0xbf, 0x60, 0x4e, 0x33, 0x2f, 0xa0, 0x66, 0xa9, 0x9b, 0x59, 0xf8, 0x7e, 0x27, 0xdc, 0x11, 0x98, 0xb2, 0x6f, 0x5c, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5422 = { .name = "ecdsa_secp256k1_sha256_5422", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5422_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5422_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5422_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 379 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5423 for ECDSA, tcId is 380 in file ecdsa_secp256k1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_5423_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_5423_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_5423_sig[] = { 0xed, 0xf0, 0x3c, 0xf6, 0x3f, 0x65, 0x88, 0x83, 0x28, 0x9a, 0x1a, 0x59, 0x3d, 0x10, 0x07, 0x89, 0x5b, 0x9f, 0x23, 0x6d, 0x27, 0xc9, 0xc1, 0xf1, 0x31, 0x30, 0x89, 0xaa, 0xed, 0x6b, 0x16, 0xae, 0xe5, 0xb2, 0x29, 0x03, 0xf7, 0xeb, 0x23, 0xad, 0xc2, 0xe0, 0x10, 0x57, 0xe3, 0x9b, 0x04, 0x08, 0xd4, 0x95, 0xf6, 0x94, 0xc8, 0x3f, 0x30, 0x6f, 0x12, 0x16, 0xc9, 0xbf, 0x87, 0x50, 0x60, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_5423 = { .name = "ecdsa_secp256k1_sha256_5423", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_5423_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_5423_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_5423_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 380 in file ecdsa_secp256k1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 5424 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5424_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5424_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0xbb, 0xdb, 0xc2, 0x6e, 0x10, 0x99, 0xb2, 0x71, 0x3a, 0xda, 0x34, 0xdf, 0x9c, 0xfa, 0x8e, 0xda, 0xf9, 0x05, 0xa4, 0xa6, 0xd2, 0xa1, 0xf4, 0x49, 0xf0, 0x5d, 0xe0, 0x3d, 0xf8, 0xc2, 0xa6, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5424 = { .name = "ecdsa_secp256k1_sha3_256_5424", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5424_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5424_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5424_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5425 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5425_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5425_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5425 = { .name = "ecdsa_secp256k1_sha3_256_5425", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5425_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5425_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5425_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5426 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5426_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5426_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5426 = { .name = "ecdsa_secp256k1_sha3_256_5426", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5426_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5426_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5426_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5427 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5427_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5427_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5427 = { .name = "ecdsa_secp256k1_sha3_256_5427", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5427_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5427_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5427_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5428 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5428_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5428_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5428 = { .name = "ecdsa_secp256k1_sha3_256_5428", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5428_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5428_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5428_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5429 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5429_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5429_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5429 = { .name = "ecdsa_secp256k1_sha3_256_5429", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5429_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5429_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5429_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5430 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5430_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5430_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5430 = { .name = "ecdsa_secp256k1_sha3_256_5430", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5430_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5430_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5430_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5431 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5431_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5431_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5431 = { .name = "ecdsa_secp256k1_sha3_256_5431", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5431_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5431_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5431_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5432 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5432_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5432_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5432 = { .name = "ecdsa_secp256k1_sha3_256_5432", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5432_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5432_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5432_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5433 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5433_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5433_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x00, 0x00, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5433 = { .name = "ecdsa_secp256k1_sha3_256_5433", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5433_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5433_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5433_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5434 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5434_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5434_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5434 = { .name = "ecdsa_secp256k1_sha3_256_5434", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5434_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5434_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5434_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5435 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5435_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5435_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5435 = { .name = "ecdsa_secp256k1_sha3_256_5435", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5435_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5435_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5435_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5436 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5436_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5436_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5436 = { .name = "ecdsa_secp256k1_sha3_256_5436", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5436_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5436_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5436_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5437 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5437_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5437_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x05, 0x00, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5437 = { .name = "ecdsa_secp256k1_sha3_256_5437", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5437_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5437_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5437_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5438 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5438_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5438_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5438 = { .name = "ecdsa_secp256k1_sha3_256_5438", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5438_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5438_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5438_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5439 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5439_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5439_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5439 = { .name = "ecdsa_secp256k1_sha3_256_5439", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5439_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5439_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5439_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5440 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5440_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5440_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5440 = { .name = "ecdsa_secp256k1_sha3_256_5440", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5440_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5440_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5440_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5441 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5441_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5441_sig[] = { 0x02, 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5441 = { .name = "ecdsa_secp256k1_sha3_256_5441", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5441_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5441_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5441_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5442 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5442_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5442_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x46, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5442 = { .name = "ecdsa_secp256k1_sha3_256_5442", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5442_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5442_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5442_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5443 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5443_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5443_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0xd1, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5443 = { .name = "ecdsa_secp256k1_sha3_256_5443", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5443_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5443_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5443_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5444 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5444_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5444_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5444 = { .name = "ecdsa_secp256k1_sha3_256_5444", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5444_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5444_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5444_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5445 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5445_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5445_sig[] = { 0x00, 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5445 = { .name = "ecdsa_secp256k1_sha3_256_5445", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5445_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5445_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5445_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5446 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5446_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5446_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x00, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5446 = { .name = "ecdsa_secp256k1_sha3_256_5446", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5446_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5446_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5446_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5447 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5447_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5447_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x00, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5447 = { .name = "ecdsa_secp256k1_sha3_256_5447", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5447_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5447_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5447_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5448 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5448_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5448_sig[] = { 0x00, 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5448 = { .name = "ecdsa_secp256k1_sha3_256_5448", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5448_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5448_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5448_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5449 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5449_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5449_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5449 = { .name = "ecdsa_secp256k1_sha3_256_5449", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5449_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5449_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5449_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256k1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5450 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5450_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5450_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5450 = { .name = "ecdsa_secp256k1_sha3_256_5450", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5450_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5450_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5450_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5451 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5451_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5451_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5451 = { .name = "ecdsa_secp256k1_sha3_256_5451", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5451_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5451_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5451_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5452 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5452_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5452_sig[] = { 0x01, 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xf9, 0x40, 0x62, 0xcf, 0x04, 0x70, 0x15, 0x77, 0x72, 0x44, 0xb4, 0x42, 0xe3, 0x23, 0x86, 0x23, 0x92, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5452 = { .name = "ecdsa_secp256k1_sha3_256_5452", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5452_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5452_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5452_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5453 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5453_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5453_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfb, 0xcb, 0x05, 0x15, 0x37, 0x11, 0x84, 0x36, 0xfa, 0xc5, 0x0f, 0x85, 0xc9, 0x83, 0x19, 0xa1, 0x10, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5453 = { .name = "ecdsa_secp256k1_sha3_256_5453", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5453_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5453_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5453_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5454 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5454_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5454_sig[] = { 0x14, 0xfb, 0xb5, 0xd1, 0x8e, 0x62, 0x6b, 0x5c, 0xc7, 0xc8, 0x8e, 0x83, 0x16, 0x43, 0xa0, 0x05, 0x7a, 0x4c, 0x0d, 0xe2, 0x3f, 0x33, 0x28, 0xc9, 0x7b, 0x1e, 0x1b, 0xa9, 0xac, 0xb0, 0x1d, 0xaf, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5454 = { .name = "ecdsa_secp256k1_sha3_256_5454", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5454_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5454_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5454_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5455 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5455_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5455_sig[] = { 0x14, 0xfb, 0xb5, 0xd1, 0x8e, 0x62, 0x6b, 0x5c, 0xc7, 0xc8, 0x8e, 0x83, 0x16, 0x43, 0xa0, 0x04, 0x34, 0xfa, 0xea, 0xc8, 0xee, 0x7b, 0xc9, 0x05, 0x3a, 0xf0, 0x7a, 0x36, 0x7c, 0xe6, 0x5e, 0xf0, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5455 = { .name = "ecdsa_secp256k1_sha3_256_5455", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5455_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5455_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5455_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5456 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5456_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5456_sig[] = { 0xfe, 0x14, 0xfb, 0xb5, 0xd1, 0x8e, 0x62, 0x6b, 0x5c, 0xc7, 0xc8, 0x8e, 0x83, 0x16, 0x43, 0xa0, 0x06, 0xbf, 0x9d, 0x30, 0xfb, 0x8f, 0xea, 0x88, 0x8d, 0xbb, 0x4b, 0xbd, 0x1c, 0xdc, 0x79, 0xdc, 0x6e, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5456 = { .name = "ecdsa_secp256k1_sha3_256_5456", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5456_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5456_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5456_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5457 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5457_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5457_sig[] = { 0x01, 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5457 = { .name = "ecdsa_secp256k1_sha3_256_5457", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5457_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5457_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5457_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5458 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5458_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5458_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5458_sig[] = { 0x14, 0xfb, 0xb5, 0xd1, 0x8e, 0x62, 0x6b, 0x5c, 0xc7, 0xc8, 0x8e, 0x83, 0x16, 0x43, 0xa0, 0x05, 0x7a, 0x4c, 0x0d, 0xe2, 0x3f, 0x33, 0x28, 0xc9, 0x7b, 0x1e, 0x1b, 0xa9, 0xac, 0xb0, 0x1d, 0xaf, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5458 = { .name = "ecdsa_secp256k1_sha3_256_5458", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5458_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5458_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5458_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5459 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5459_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5459_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5459_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x01, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x22, 0x7c, 0x58, 0x15, 0x26, 0x8b, 0xef, 0x4c, 0x2d, 0x8f, 0x46, 0xdc, 0xdb, 0xa7, 0xa9, 0xdb, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5459 = { .name = "ecdsa_secp256k1_sha3_256_5459", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5459_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5459_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5459_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5460 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5460_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5460_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x25, 0x06, 0xfa, 0x5b, 0x59, 0x2d, 0x5e, 0x0b, 0xb6, 0x0f, 0xa2, 0x1f, 0xc2, 0x07, 0x3d, 0x59, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5460 = { .name = "ecdsa_secp256k1_sha3_256_5460", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5460_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5460_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5460_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5461 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5461_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5461_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5461_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0xbb, 0xdb, 0xc2, 0x6e, 0x10, 0x99, 0xb2, 0x71, 0x3a, 0xda, 0x34, 0xdf, 0x9c, 0xfa, 0x8e, 0xdc, 0x3e, 0x56, 0xc7, 0xc0, 0x23, 0x59, 0x54, 0x0e, 0x30, 0x8b, 0x81, 0xb1, 0x28, 0x8c, 0x65, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5461 = { .name = "ecdsa_secp256k1_sha3_256_5461", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5461_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5461_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5461_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5462 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5462_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5462_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5462_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0xfe, 0xbb, 0xdb, 0xc2, 0x6e, 0x10, 0x99, 0xb2, 0x71, 0x3a, 0xda, 0x34, 0xdf, 0x9c, 0xfa, 0x8e, 0xdd, 0x83, 0xa7, 0xea, 0xd9, 0x74, 0x10, 0xb3, 0xd2, 0x70, 0xb9, 0x23, 0x24, 0x58, 0x56, 0x24, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5462 = { .name = "ecdsa_secp256k1_sha3_256_5462", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5462_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5462_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5462_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5463 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5463_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5463_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5463_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0x01, 0x44, 0x24, 0x3d, 0x91, 0xef, 0x66, 0x4d, 0x8e, 0xc5, 0x25, 0xcb, 0x20, 0x63, 0x05, 0x71, 0x23, 0xc1, 0xa9, 0x38, 0x3f, 0xdc, 0xa6, 0xab, 0xf1, 0xcf, 0x74, 0x7e, 0x4e, 0xd7, 0x73, 0x9a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5463 = { .name = "ecdsa_secp256k1_sha3_256_5463", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5463_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5463_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5463_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5464 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5464_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5464_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5464_sig[] = { 0xeb, 0x04, 0x4a, 0x2e, 0x71, 0x9d, 0x94, 0xa3, 0x38, 0x37, 0x71, 0x7c, 0xe9, 0xbc, 0x5f, 0xfa, 0x85, 0xb3, 0xf2, 0x1d, 0xc0, 0xcc, 0xd7, 0x36, 0x84, 0xe1, 0xe4, 0x56, 0x53, 0x4f, 0xe2, 0x51, 0xbb, 0xdb, 0xc2, 0x6e, 0x10, 0x99, 0xb2, 0x71, 0x3a, 0xda, 0x34, 0xdf, 0x9c, 0xfa, 0x8e, 0xdc, 0x3e, 0x56, 0xc7, 0xc0, 0x23, 0x59, 0x54, 0x0e, 0x30, 0x8b, 0x81, 0xb1, 0x28, 0x8c, 0x65, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5464 = { .name = "ecdsa_secp256k1_sha3_256_5464", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5464_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5464_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5464_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5465 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5465_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5465_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5465_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5465 = { .name = "ecdsa_secp256k1_sha3_256_5465", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5465_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5465_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5465_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5466 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5466_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5466_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5466_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5466 = { .name = "ecdsa_secp256k1_sha3_256_5466", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5466_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5466_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5466_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5467 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5467_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5467_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5467_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5467 = { .name = "ecdsa_secp256k1_sha3_256_5467", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5467_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5467_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5467_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5468 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5468_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5468_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5468_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5468 = { .name = "ecdsa_secp256k1_sha3_256_5468", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5468_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5468_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5468_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5469 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5469_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5469_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5469_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5469 = { .name = "ecdsa_secp256k1_sha3_256_5469", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5469_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5469_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5469_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5470 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5470_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5470_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5470_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5470 = { .name = "ecdsa_secp256k1_sha3_256_5470", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5470_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5470_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5470_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5471 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5471_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5471_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5471_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5471 = { .name = "ecdsa_secp256k1_sha3_256_5471", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5471_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5471_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5471_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5472 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5472_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5472_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5472_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5472 = { .name = "ecdsa_secp256k1_sha3_256_5472", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5472_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5472_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5472_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5473 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5473_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5473_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5473 = { .name = "ecdsa_secp256k1_sha3_256_5473", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5473_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5473_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5473_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5474 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5474_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5474_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5474_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5474 = { .name = "ecdsa_secp256k1_sha3_256_5474", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5474_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5474_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5474_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5475 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5475_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5475_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5475_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5475 = { .name = "ecdsa_secp256k1_sha3_256_5475", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5475_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5475_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5475_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5476 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5476_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5476_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5476_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5476 = { .name = "ecdsa_secp256k1_sha3_256_5476", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5476_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5476_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5476_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5477 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5477_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5477_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5477_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5477 = { .name = "ecdsa_secp256k1_sha3_256_5477", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5477_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5477_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5477_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5478 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5478_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5478_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5478_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5478 = { .name = "ecdsa_secp256k1_sha3_256_5478", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5478_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5478_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5478_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5479 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5479_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5479_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5479 = { .name = "ecdsa_secp256k1_sha3_256_5479", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5479_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5479_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5479_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5480 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5480_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5480_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5480 = { .name = "ecdsa_secp256k1_sha3_256_5480", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5480_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5480_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5480_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5481 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5481_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5481_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5481 = { .name = "ecdsa_secp256k1_sha3_256_5481", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5481_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5481_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5481_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5482 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5482_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5482_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5482 = { .name = "ecdsa_secp256k1_sha3_256_5482", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5482_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5482_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5482_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5483 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5483_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5483_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5483_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5483 = { .name = "ecdsa_secp256k1_sha3_256_5483", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5483_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5483_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5483_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5484 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5484_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5484_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5484_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5484 = { .name = "ecdsa_secp256k1_sha3_256_5484", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5484_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5484_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5484_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5485 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5485_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5485_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5485_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5485 = { .name = "ecdsa_secp256k1_sha3_256_5485", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5485_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5485_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5485_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5486 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5486_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5486_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5486_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5486 = { .name = "ecdsa_secp256k1_sha3_256_5486", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5486_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5486_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5486_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5487 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5487_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5487_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5487_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5487 = { .name = "ecdsa_secp256k1_sha3_256_5487", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5487_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5487_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5487_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5488 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5488_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5488_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5488_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5488 = { .name = "ecdsa_secp256k1_sha3_256_5488", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5488_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5488_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5488_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5489 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5489_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5489_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5489_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5489 = { .name = "ecdsa_secp256k1_sha3_256_5489", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5489_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5489_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5489_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5490 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5490_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5490_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5490_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5490 = { .name = "ecdsa_secp256k1_sha3_256_5490", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5490_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5490_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5490_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5491 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5491_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5491_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5491_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5491 = { .name = "ecdsa_secp256k1_sha3_256_5491", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5491_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5491_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5491_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5492 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5492_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5492_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5492_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5492 = { .name = "ecdsa_secp256k1_sha3_256_5492", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5492_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5492_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5492_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5493 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5493_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5493_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5493_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5493 = { .name = "ecdsa_secp256k1_sha3_256_5493", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5493_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5493_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5493_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5494 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5494_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5494_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5494_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5494 = { .name = "ecdsa_secp256k1_sha3_256_5494", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5494_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5494_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5494_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5495 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5495_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5495_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5495_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5495 = { .name = "ecdsa_secp256k1_sha3_256_5495", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5495_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5495_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5495_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5496 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5496_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5496_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5496_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5496 = { .name = "ecdsa_secp256k1_sha3_256_5496", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5496_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5496_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5496_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5497 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5497_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5497_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5497_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5497 = { .name = "ecdsa_secp256k1_sha3_256_5497", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5497_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5497_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5497_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5498 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5498_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5498_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5498_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5498 = { .name = "ecdsa_secp256k1_sha3_256_5498", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5498_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5498_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5498_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5499 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5499_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5499_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5499_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5499 = { .name = "ecdsa_secp256k1_sha3_256_5499", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5499_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5499_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5499_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5500 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5500_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5500_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5500_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5500 = { .name = "ecdsa_secp256k1_sha3_256_5500", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5500_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5500_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5500_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5501 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5501_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5501_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5501_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5501 = { .name = "ecdsa_secp256k1_sha3_256_5501", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5501_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5501_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5501_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5502 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5502_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5502_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5502_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5502 = { .name = "ecdsa_secp256k1_sha3_256_5502", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5502_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5502_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5502_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5503 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5503_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5503_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5503_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5503 = { .name = "ecdsa_secp256k1_sha3_256_5503", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5503_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5503_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5503_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5504 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5504_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5504_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5504_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5504 = { .name = "ecdsa_secp256k1_sha3_256_5504", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5504_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5504_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5504_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5505 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5505_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5505_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5505_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5505 = { .name = "ecdsa_secp256k1_sha3_256_5505", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5505_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5505_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5505_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5506 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5506_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5506_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5506_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5506 = { .name = "ecdsa_secp256k1_sha3_256_5506", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5506_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5506_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5506_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5507 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5507_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5507_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5507_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5507 = { .name = "ecdsa_secp256k1_sha3_256_5507", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5507_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5507_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5507_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5508 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5508_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5508_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5508_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5508 = { .name = "ecdsa_secp256k1_sha3_256_5508", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5508_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5508_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5508_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5509 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5509_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5509_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5509_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5509 = { .name = "ecdsa_secp256k1_sha3_256_5509", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5509_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5509_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5509_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5510 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5510_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5510_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5510_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5510 = { .name = "ecdsa_secp256k1_sha3_256_5510", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5510_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5510_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5510_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5511 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5511_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5511_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5511_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5511 = { .name = "ecdsa_secp256k1_sha3_256_5511", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5511_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5511_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5511_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5512 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5512_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5512_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5512 = { .name = "ecdsa_secp256k1_sha3_256_5512", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5512_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5512_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5512_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5513 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5513_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5513_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5513_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5513 = { .name = "ecdsa_secp256k1_sha3_256_5513", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5513_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5513_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5513_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5514 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5514_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5514_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5514_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5514 = { .name = "ecdsa_secp256k1_sha3_256_5514", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5514_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5514_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5514_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5515 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5515_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5515_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5515_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5515 = { .name = "ecdsa_secp256k1_sha3_256_5515", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5515_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5515_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5515_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5516 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5516_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5516_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5516_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5516 = { .name = "ecdsa_secp256k1_sha3_256_5516", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5516_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5516_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5516_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5517 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5517_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5517_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5517_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5517 = { .name = "ecdsa_secp256k1_sha3_256_5517", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5517_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5517_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5517_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5518 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5518_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5518_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5518_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5518 = { .name = "ecdsa_secp256k1_sha3_256_5518", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5518_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5518_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5518_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5519 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5519_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5519_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5519_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5519 = { .name = "ecdsa_secp256k1_sha3_256_5519", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5519_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5519_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5519_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5520 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5520_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5520_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5520_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5520 = { .name = "ecdsa_secp256k1_sha3_256_5520", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5520_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5520_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5520_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5521 for ECDSA, tcId is 214 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5521_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5521_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5521_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5521 = { .name = "ecdsa_secp256k1_sha3_256_5521", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5521_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5521_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5521_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5522 for ECDSA, tcId is 215 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5522_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5522_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5522_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5522 = { .name = "ecdsa_secp256k1_sha3_256_5522", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5522_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5522_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5522_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5523 for ECDSA, tcId is 216 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5523_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5523_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5523 = { .name = "ecdsa_secp256k1_sha3_256_5523", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5523_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5523_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5523_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5524 for ECDSA, tcId is 217 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5524_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5524_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5524 = { .name = "ecdsa_secp256k1_sha3_256_5524", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5524_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5524_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5524_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5525 for ECDSA, tcId is 218 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5525_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5525_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5525 = { .name = "ecdsa_secp256k1_sha3_256_5525", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5525_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5525_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5525_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5526 for ECDSA, tcId is 219 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5526_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5526_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5526 = { .name = "ecdsa_secp256k1_sha3_256_5526", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5526_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5526_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5526_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5527 for ECDSA, tcId is 220 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5527_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5527_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5527 = { .name = "ecdsa_secp256k1_sha3_256_5527", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5527_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5527_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5527_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5528 for ECDSA, tcId is 221 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5528_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5528_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5528 = { .name = "ecdsa_secp256k1_sha3_256_5528", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5528_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5528_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5528_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5529 for ECDSA, tcId is 230 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5529_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5529_msg[] = { 0x32, 0x32, 0x33, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5529_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0xb9, 0x8c, 0x52, 0x32, 0xf0, 0x10, 0x0d, 0x55, 0xdb, 0x14, 0xeb, 0x0f, 0xe9, 0xe9, 0x43, 0xfb, 0x45, 0xd8, 0xf1, 0x92, 0xbb, 0xdd, 0x38, 0x14, 0x78, 0x50, 0xf4, 0xd9, 0x50, 0xf1, 0x6a, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5529 = { .name = "ecdsa_secp256k1_sha3_256_5529", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5529_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5529_msg, .msglen = 5, .sig = ecdsa_secp256k1_sha3_256_5529_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5530 for ECDSA, tcId is 231 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5530_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5530_msg[] = { 0x33, 0x31, 0x39, 0x30, 0x39, 0x34, 0x33, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5530_sig[] = { 0x84, 0x0a, 0x6c, 0xd8, 0x19, 0xf2, 0x1a, 0x2a, 0x3c, 0x3b, 0xe7, 0x46, 0x1b, 0xf5, 0x16, 0xf5, 0x19, 0x1c, 0x32, 0xd0, 0x59, 0xee, 0xa0, 0x96, 0x99, 0xac, 0x41, 0x32, 0xf7, 0x94, 0x88, 0x19, 0x94, 0xc5, 0x39, 0x06, 0xa1, 0x59, 0x5c, 0xf9, 0xfe, 0x14, 0x83, 0x1b, 0x52, 0x98, 0xb4, 0xe2, 0x97, 0x21, 0x9a, 0xfb, 0x89, 0x5c, 0x18, 0xa1, 0x9f, 0x45, 0x08, 0xfa, 0x4f, 0x6e, 0x03, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5530 = { .name = "ecdsa_secp256k1_sha3_256_5530", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5530_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5530_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5530_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5531 for ECDSA, tcId is 232 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5531_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5531_msg[] = { 0x38, 0x34, 0x33, 0x34, 0x37, 0x34, 0x31, 0x35, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5531_sig[] = { 0x59, 0x28, 0xb7, 0xee, 0xb8, 0x42, 0x42, 0x91, 0x4d, 0x4d, 0x5b, 0x87, 0x1f, 0xeb, 0x3b, 0x0d, 0x78, 0x94, 0x55, 0xe4, 0x4a, 0x41, 0xe3, 0xb6, 0x0e, 0x0e, 0x43, 0x85, 0x6a, 0x4a, 0x7a, 0x39, 0xd6, 0x50, 0x93, 0x0d, 0x76, 0xeb, 0x24, 0x44, 0x71, 0x3b, 0x63, 0xb5, 0x01, 0xa8, 0xe8, 0xb3, 0x96, 0x15, 0x78, 0x43, 0x06, 0xf1, 0xf2, 0xfa, 0x90, 0x91, 0x50, 0x66, 0xe4, 0xf6, 0x01, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5531 = { .name = "ecdsa_secp256k1_sha3_256_5531", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5531_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5531_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5531_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5532 for ECDSA, tcId is 233 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5532_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5532_msg[] = { 0x33, 0x35, 0x37, 0x32, 0x36, 0x39, 0x36, 0x38, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5532_sig[] = { 0x2f, 0xf0, 0x5b, 0x06, 0x07, 0x78, 0x11, 0xe7, 0xbf, 0x8a, 0x1b, 0x88, 0x04, 0xfa, 0x6b, 0xb7, 0xdb, 0x79, 0x3b, 0x0a, 0x89, 0x27, 0x74, 0x5f, 0x5b, 0x54, 0x39, 0x98, 0xda, 0xb3, 0x06, 0xb3, 0xc9, 0xe7, 0xda, 0x07, 0xe2, 0xb2, 0xd2, 0x8f, 0x16, 0x99, 0x24, 0xba, 0xb2, 0x2d, 0x90, 0xa1, 0x07, 0xca, 0x97, 0xf5, 0x02, 0x2e, 0xac, 0x08, 0xd0, 0xa4, 0x57, 0x7f, 0x30, 0xd8, 0x99, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5532 = { .name = "ecdsa_secp256k1_sha3_256_5532", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5532_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5532_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5532_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5533 for ECDSA, tcId is 234 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5533_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5533_msg[] = { 0x35, 0x39, 0x31, 0x38, 0x33, 0x33, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5533_sig[] = { 0x19, 0xc5, 0xe7, 0x4f, 0xd3, 0xab, 0x38, 0x47, 0xd1, 0xba, 0x8e, 0xc6, 0xff, 0x68, 0x2b, 0x18, 0x4e, 0xd2, 0xae, 0x46, 0x66, 0x22, 0x89, 0x0d, 0xeb, 0x42, 0x06, 0x38, 0x5c, 0x31, 0xb0, 0xa5, 0xc9, 0x59, 0xeb, 0xce, 0x99, 0xb3, 0x44, 0x6a, 0xac, 0xee, 0x56, 0xee, 0xcd, 0xba, 0xe1, 0x89, 0x8f, 0xc7, 0x1a, 0x6b, 0xac, 0xb4, 0x46, 0x4a, 0x6a, 0x4b, 0x02, 0x76, 0x82, 0x1b, 0x32, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5533 = { .name = "ecdsa_secp256k1_sha3_256_5533", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5533_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5533_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5533_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5534 for ECDSA, tcId is 235 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5534_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5534_msg[] = { 0x38, 0x32, 0x35, 0x33, 0x30, 0x38, 0x32, 0x32, 0x35, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5534_sig[] = { 0x54, 0xbb, 0x58, 0x4a, 0x67, 0xc7, 0x9e, 0x19, 0xd3, 0xf9, 0x62, 0x7c, 0xc1, 0xea, 0xda, 0xcc, 0xe8, 0x07, 0x5e, 0x3f, 0x5c, 0x03, 0xe4, 0x5c, 0x80, 0x7b, 0x46, 0xd5, 0x05, 0xca, 0x73, 0xab, 0xab, 0x37, 0xfb, 0xc7, 0x90, 0xa0, 0x40, 0x0d, 0xeb, 0xbb, 0xde, 0x06, 0xb9, 0x77, 0x1b, 0x63, 0x73, 0x2d, 0x79, 0xde, 0x6a, 0x56, 0xe8, 0x72, 0x75, 0xa9, 0x68, 0xe0, 0xd4, 0xaa, 0xef, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5534 = { .name = "ecdsa_secp256k1_sha3_256_5534", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5534_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5534_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5534_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5535 for ECDSA, tcId is 236 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5535_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5535_msg[] = { 0x31, 0x33, 0x37, 0x33, 0x34, 0x38, 0x32, 0x38, 0x31, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5535_sig[] = { 0x69, 0x9d, 0x4d, 0x68, 0xc2, 0x33, 0xf4, 0x4b, 0xf1, 0xd3, 0xf7, 0x00, 0x01, 0xa9, 0xac, 0xac, 0x7b, 0xe9, 0x06, 0xe0, 0x9a, 0xc4, 0x40, 0xc8, 0xd1, 0x60, 0x44, 0x36, 0x46, 0x96, 0xb9, 0x4d, 0x99, 0x90, 0xc2, 0xcd, 0x8d, 0x7c, 0x6a, 0x22, 0x7d, 0xce, 0x6a, 0x94, 0x90, 0x0b, 0xc7, 0xb6, 0x9a, 0x8e, 0xe6, 0xcf, 0x0b, 0xa0, 0x62, 0x76, 0x7c, 0x09, 0xd9, 0xe5, 0xb1, 0x2e, 0x41, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5535 = { .name = "ecdsa_secp256k1_sha3_256_5535", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5535_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5535_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5535_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5536 for ECDSA, tcId is 237 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5536_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5536_msg[] = { 0x31, 0x37, 0x33, 0x38, 0x31, 0x35, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5536_sig[] = { 0xe7, 0x79, 0xc8, 0x82, 0xa9, 0x77, 0x01, 0x29, 0x3d, 0xaa, 0x14, 0x13, 0xf9, 0xfe, 0x49, 0xab, 0x97, 0xbd, 0x8f, 0x74, 0x23, 0x31, 0x46, 0x1d, 0x0e, 0x3b, 0x93, 0x33, 0x3c, 0x1d, 0xb5, 0xbb, 0xad, 0x3f, 0xd9, 0x04, 0xab, 0x46, 0x3e, 0xc8, 0xbc, 0x7f, 0xf9, 0x88, 0xc1, 0x42, 0xac, 0xdb, 0xc5, 0xdd, 0x73, 0xd8, 0xdc, 0xe9, 0x19, 0xb4, 0x58, 0x98, 0x7c, 0x1f, 0x32, 0xba, 0x3e, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5536 = { .name = "ecdsa_secp256k1_sha3_256_5536", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5536_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5536_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5536_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5537 for ECDSA, tcId is 238 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5537_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5537_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x34, 0x36, 0x36, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5537_sig[] = { 0xd1, 0x21, 0xd4, 0x63, 0x9e, 0x90, 0xe4, 0x74, 0x19, 0x19, 0xd9, 0xcb, 0x38, 0x88, 0xd6, 0x9c, 0x46, 0xd6, 0xfd, 0xc8, 0x49, 0x80, 0xb5, 0xec, 0xc2, 0x49, 0xfa, 0x01, 0xca, 0xe1, 0x9b, 0xe5, 0xac, 0x05, 0x59, 0xaa, 0x58, 0x0e, 0x53, 0x5e, 0x40, 0x1e, 0xa9, 0xe2, 0x71, 0x0f, 0x06, 0x7a, 0x37, 0x5e, 0xc6, 0x9d, 0xc4, 0x9f, 0xba, 0x66, 0x8d, 0x7a, 0x14, 0xd8, 0xbd, 0xe4, 0x2d, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5537 = { .name = "ecdsa_secp256k1_sha3_256_5537", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5537_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5537_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5537_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5538 for ECDSA, tcId is 239 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5538_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5538_msg[] = { 0x32, 0x31, 0x38, 0x33, 0x30, 0x33, 0x39, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5538_sig[] = { 0xde, 0x04, 0xd3, 0x87, 0xdd, 0xd0, 0x18, 0x9e, 0xf2, 0xec, 0x49, 0x45, 0x94, 0xed, 0x05, 0x66, 0x75, 0x78, 0x8d, 0x6c, 0xac, 0x25, 0xf9, 0x82, 0x6e, 0x50, 0xfe, 0xc6, 0x6f, 0x47, 0xbe, 0x6f, 0xa5, 0x5c, 0xbc, 0x3e, 0x87, 0x80, 0x9b, 0x4d, 0xcc, 0x63, 0x4c, 0xea, 0x32, 0xfc, 0x23, 0xcf, 0x7a, 0xc7, 0x0f, 0x71, 0xef, 0x17, 0x31, 0xde, 0x41, 0x41, 0x4c, 0x0a, 0x71, 0x89, 0x1c, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5538 = { .name = "ecdsa_secp256k1_sha3_256_5538", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5538_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5538_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5538_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5539 for ECDSA, tcId is 240 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5539_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5539_msg[] = { 0x31, 0x30, 0x35, 0x32, 0x36, 0x31, 0x37, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5539_sig[] = { 0x5a, 0x8d, 0x2d, 0x50, 0x48, 0x31, 0xa0, 0x47, 0xc7, 0x27, 0x7d, 0x9c, 0x13, 0xf7, 0xf4, 0x56, 0xfd, 0x95, 0x69, 0xa3, 0x11, 0xc5, 0xbe, 0x93, 0xcb, 0xfa, 0x9a, 0x31, 0x22, 0x53, 0x4f, 0xf3, 0xd0, 0xf9, 0x58, 0x66, 0x30, 0x56, 0x42, 0x36, 0xe9, 0xb1, 0x33, 0xa7, 0xb5, 0x32, 0x02, 0xb2, 0x9d, 0x3a, 0x3c, 0xae, 0xb2, 0x8f, 0x5d, 0x23, 0x60, 0xad, 0xfe, 0xa2, 0x38, 0xf4, 0x15, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5539 = { .name = "ecdsa_secp256k1_sha3_256_5539", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5539_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5539_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5539_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5540 for ECDSA, tcId is 241 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5540_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5540_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x33, 0x39, 0x39, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5540_sig[] = { 0x0e, 0x2d, 0xc3, 0xe0, 0xb7, 0xc5, 0x1b, 0xe9, 0x50, 0xc8, 0x14, 0xb4, 0xcd, 0x74, 0xb8, 0x70, 0x77, 0x53, 0xbc, 0x5a, 0x75, 0x43, 0xd6, 0x58, 0x9a, 0xe1, 0x46, 0x4c, 0x93, 0x22, 0x7b, 0xf7, 0x9c, 0xea, 0x04, 0xdf, 0x12, 0x18, 0xbb, 0x7a, 0x0c, 0x85, 0x1d, 0xa9, 0xfe, 0xf4, 0x06, 0x9c, 0xfc, 0xa9, 0xfc, 0x00, 0xef, 0x08, 0xc3, 0x79, 0x76, 0xad, 0xfc, 0x4e, 0xc7, 0xb5, 0xe2, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5540 = { .name = "ecdsa_secp256k1_sha3_256_5540", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5540_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5540_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5540_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5541 for ECDSA, tcId is 242 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5541_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5541_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x33, 0x31, 0x36, 0x34, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5541_sig[] = { 0x0c, 0x93, 0x64, 0x6c, 0x50, 0x90, 0x40, 0xba, 0xc8, 0x68, 0x25, 0x8b, 0xf3, 0xf2, 0xd1, 0x3d, 0x26, 0xe9, 0x89, 0x93, 0xe8, 0x68, 0x0f, 0x0d, 0xa8, 0x46, 0xc1, 0x71, 0x2b, 0xe9, 0x51, 0x09, 0xc6, 0x53, 0x86, 0xf8, 0xb0, 0xa1, 0x2f, 0xef, 0x25, 0x79, 0x1c, 0xd9, 0x3a, 0x04, 0x51, 0x40, 0xaf, 0x9c, 0x24, 0xfe, 0x3d, 0x3d, 0x70, 0x0e, 0x02, 0xd2, 0x3b, 0x1c, 0xe2, 0xda, 0x05, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5541 = { .name = "ecdsa_secp256k1_sha3_256_5541", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5541_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5541_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5541_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5542 for ECDSA, tcId is 243 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5542_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5542_msg[] = { 0x32, 0x30, 0x36, 0x33, 0x38, 0x35, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5542_sig[] = { 0x99, 0x06, 0x86, 0x0d, 0x72, 0x86, 0x38, 0xf6, 0xa2, 0x60, 0xe1, 0x34, 0x95, 0xf2, 0xc6, 0x09, 0x98, 0x38, 0xe5, 0xc2, 0xf9, 0x48, 0x28, 0xf1, 0x0c, 0xaf, 0x2c, 0x58, 0x97, 0x0d, 0x3b, 0xf8, 0x48, 0x53, 0x23, 0x5f, 0xd5, 0x11, 0xb8, 0xdb, 0x39, 0x56, 0xbd, 0x25, 0xb7, 0x72, 0xfa, 0xb5, 0x4b, 0xad, 0x38, 0x67, 0xd1, 0xc6, 0x37, 0xa9, 0x98, 0x40, 0x16, 0xf7, 0x85, 0xfd, 0xc6, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5542 = { .name = "ecdsa_secp256k1_sha3_256_5542", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5542_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5542_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5542_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5543 for ECDSA, tcId is 244 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5543_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5543_msg[] = { 0x37, 0x38, 0x33, 0x39, 0x37, 0x36, 0x34, 0x39, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5543_sig[] = { 0xc6, 0xd6, 0x09, 0xfc, 0x86, 0x1a, 0x35, 0x13, 0x4b, 0x4d, 0xc1, 0x80, 0xa3, 0xb2, 0xa7, 0xb1, 0x3a, 0xd8, 0x47, 0x73, 0x58, 0xe8, 0x02, 0x86, 0xf9, 0x04, 0x99, 0xc5, 0x8b, 0xd3, 0x7d, 0xd3, 0x09, 0x78, 0xe0, 0xb2, 0x10, 0x55, 0xdc, 0xc8, 0x18, 0x44, 0xd2, 0x97, 0xd6, 0xbb, 0xec, 0xbd, 0x07, 0x4f, 0x09, 0x71, 0x7b, 0x46, 0xc6, 0x95, 0xae, 0x60, 0x79, 0x9d, 0x56, 0x4a, 0x1f, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5543 = { .name = "ecdsa_secp256k1_sha3_256_5543", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5543_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5543_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5543_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5544 for ECDSA, tcId is 245 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5544_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5544_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x36, 0x34, 0x34, 0x36, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5544_sig[] = { 0x14, 0x96, 0xfd, 0x7a, 0x50, 0x23, 0xfa, 0xf7, 0x8b, 0x0e, 0x10, 0x08, 0xb0, 0x54, 0xf2, 0x5c, 0x50, 0x9d, 0x34, 0x71, 0x3d, 0x45, 0x94, 0xcf, 0xab, 0xf2, 0x4c, 0x1b, 0x22, 0x29, 0x64, 0x3d, 0xf6, 0x60, 0xac, 0x1d, 0xaa, 0x77, 0x00, 0xa5, 0x51, 0x89, 0xd6, 0x71, 0x0a, 0x37, 0x3b, 0x35, 0x0e, 0xa2, 0x44, 0x6a, 0xe7, 0x6f, 0xc8, 0xa3, 0x52, 0x2d, 0xf3, 0xe0, 0x1a, 0x2b, 0xc2, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5544 = { .name = "ecdsa_secp256k1_sha3_256_5544", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5544_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5544_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5544_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5545 for ECDSA, tcId is 246 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5545_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5545_msg[] = { 0x34, 0x38, 0x33, 0x32, 0x30, 0x34, 0x32, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_256_5545_sig[] = { 0x31, 0x00, 0x7f, 0x03, 0x06, 0xf1, 0x71, 0xeb, 0x56, 0xc9, 0xbc, 0x7f, 0x7c, 0x0c, 0xd7, 0xd7, 0x76, 0xac, 0xd8, 0x6b, 0xe6, 0x80, 0xf6, 0x00, 0xd3, 0x72, 0x9a, 0xed, 0xc0, 0x3a, 0xa9, 0xef, 0x59, 0xf5, 0x29, 0xae, 0xcb, 0x6c, 0x8e, 0x74, 0x69, 0x83, 0x0d, 0xae, 0xa5, 0x06, 0x5e, 0x6d, 0xa8, 0xc3, 0x49, 0x68, 0x8a, 0xb4, 0xfa, 0x0e, 0xbe, 0xc3, 0x64, 0x03, 0x5a, 0x68, 0xe5, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5545 = { .name = "ecdsa_secp256k1_sha3_256_5545", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5545_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5545_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5545_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5546 for ECDSA, tcId is 247 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5546_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5546_msg[] = { 0x33, 0x36, 0x35, 0x32, 0x32, 0x31, 0x38, 0x31, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5546_sig[] = { 0xfb, 0xe1, 0xa1, 0x39, 0xe3, 0xc7, 0x4c, 0xef, 0x01, 0xd2, 0x1d, 0x9c, 0x5a, 0x47, 0xa7, 0x83, 0x08, 0x0d, 0xbd, 0x9b, 0x86, 0xa2, 0x02, 0xe9, 0x33, 0x87, 0x2a, 0x71, 0xa4, 0xb5, 0x38, 0x38, 0xfe, 0x31, 0x64, 0xad, 0x51, 0xc0, 0x80, 0xdd, 0xd4, 0x12, 0x6f, 0x42, 0x97, 0x9e, 0x6b, 0x51, 0x90, 0x75, 0xb2, 0xec, 0x96, 0x06, 0x0e, 0x02, 0xf9, 0xdd, 0x6f, 0xb6, 0xf9, 0xf3, 0xbf, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5546 = { .name = "ecdsa_secp256k1_sha3_256_5546", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5546_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5546_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5546_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5547 for ECDSA, tcId is 248 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5547_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5547_msg[] = { 0x32, 0x34, 0x39, 0x31, 0x37, 0x31, 0x32, 0x36, 0x39, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5547_sig[] = { 0x04, 0x51, 0x8c, 0x6b, 0xe6, 0x58, 0x6c, 0xeb, 0x55, 0x59, 0x01, 0x4f, 0xf4, 0x03, 0x11, 0xfe, 0x7e, 0x6d, 0x0f, 0xfc, 0xdf, 0xc6, 0x55, 0xb6, 0xa0, 0x6b, 0xbe, 0x20, 0x3a, 0x18, 0x5e, 0xd6, 0x1e, 0x0b, 0x92, 0x7e, 0x43, 0x12, 0x5a, 0xa1, 0x96, 0x32, 0x9b, 0xb0, 0xf0, 0x9b, 0xf7, 0x5d, 0x04, 0x81, 0xdb, 0xa9, 0x24, 0xf9, 0x1e, 0x3e, 0x39, 0xe3, 0xe0, 0x87, 0x8a, 0x97, 0x2a, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5547 = { .name = "ecdsa_secp256k1_sha3_256_5547", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5547_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5547_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5547_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5548 for ECDSA, tcId is 249 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5548_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5548_msg[] = { 0x32, 0x36, 0x32, 0x32, 0x37, 0x39, 0x30, 0x37, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5548_sig[] = { 0xad, 0x67, 0xc0, 0x27, 0x0e, 0xa0, 0x88, 0xa9, 0xda, 0xa8, 0x05, 0x78, 0x8b, 0x6a, 0xa5, 0x16, 0x1c, 0x6e, 0x7e, 0x12, 0xd2, 0x37, 0x51, 0x55, 0x18, 0x91, 0x4a, 0xb6, 0x6d, 0x1d, 0xcb, 0x66, 0xc5, 0xfa, 0x3b, 0x24, 0x3e, 0x91, 0x48, 0xe1, 0xdc, 0xfc, 0x27, 0xab, 0xd9, 0x99, 0x1a, 0x2c, 0x0c, 0x2d, 0x25, 0xbd, 0xe9, 0x82, 0x2c, 0xe2, 0x6f, 0x34, 0x4b, 0xc9, 0xe0, 0x3f, 0x9e, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5548 = { .name = "ecdsa_secp256k1_sha3_256_5548", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5548_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5548_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5548_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5549 for ECDSA, tcId is 250 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5549_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5549_msg[] = { 0x31, 0x30, 0x31, 0x32, 0x35, 0x37, 0x37, 0x32, 0x38, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5549_sig[] = { 0xed, 0xd7, 0xe3, 0xfb, 0x85, 0x81, 0xde, 0xd7, 0xc0, 0x96, 0x1f, 0x73, 0x65, 0xa1, 0xa3, 0x9c, 0x6f, 0xa3, 0x01, 0xd9, 0x72, 0x80, 0x00, 0xae, 0xb8, 0x4c, 0x41, 0xd9, 0x18, 0xc1, 0x7d, 0xbb, 0x25, 0xcf, 0xb4, 0xfd, 0xad, 0xe1, 0x18, 0x16, 0x35, 0x9c, 0xcf, 0xd2, 0x00, 0x1c, 0xc2, 0xb0, 0xe5, 0x09, 0xde, 0x9c, 0xca, 0x0c, 0x1a, 0xa7, 0xea, 0xae, 0x71, 0x96, 0x37, 0xe1, 0x11, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5549 = { .name = "ecdsa_secp256k1_sha3_256_5549", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5549_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5549_msg, .msglen = 12, .sig = ecdsa_secp256k1_sha3_256_5549_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5550 for ECDSA, tcId is 251 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5550_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5550_msg[] = { 0x31, 0x30, 0x35, 0x30, 0x38, 0x37, 0x32, 0x32, 0x30, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5550_sig[] = { 0x4c, 0xa5, 0x02, 0x1a, 0x99, 0xc5, 0x09, 0x16, 0xf9, 0x97, 0x00, 0x9a, 0x2f, 0x6a, 0xdd, 0xc6, 0xcb, 0x2a, 0x57, 0xca, 0xda, 0x7b, 0x1e, 0xb7, 0x28, 0x21, 0xf6, 0x6e, 0xc3, 0x53, 0x51, 0x6d, 0x43, 0xd4, 0x71, 0xd4, 0x04, 0x3f, 0x8f, 0xbb, 0x07, 0x65, 0xc0, 0x59, 0xd1, 0xb5, 0x38, 0x6b, 0x49, 0xa5, 0x30, 0xa6, 0x26, 0xd2, 0x6d, 0x2b, 0xed, 0x43, 0x23, 0xc0, 0xae, 0xa5, 0xd2, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5550 = { .name = "ecdsa_secp256k1_sha3_256_5550", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5550_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5550_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5550_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5551 for ECDSA, tcId is 252 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5551_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5551_msg[] = { 0x32, 0x35, 0x30, 0x37, 0x37, 0x32, 0x37, 0x30, 0x33, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5551_sig[] = { 0xeb, 0x3a, 0x1a, 0x91, 0x65, 0xde, 0x05, 0x02, 0x06, 0xfa, 0x04, 0x58, 0x82, 0xf7, 0xf3, 0xbd, 0x06, 0xbd, 0x02, 0xc2, 0xe8, 0x25, 0x74, 0x0d, 0x72, 0xd8, 0xcb, 0x2a, 0x07, 0xf4, 0x5c, 0xfb, 0x39, 0x4f, 0xa8, 0x62, 0x50, 0x04, 0xc6, 0x2c, 0xb1, 0xc8, 0xee, 0xa0, 0x2c, 0x34, 0x11, 0xe6, 0xa0, 0x36, 0xb4, 0xaf, 0xe1, 0x47, 0x27, 0xd4, 0x97, 0xb3, 0x1d, 0x72, 0x51, 0xd4, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5551 = { .name = "ecdsa_secp256k1_sha3_256_5551", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5551_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5551_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5551_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5552 for ECDSA, tcId is 253 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5552_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5552_msg[] = { 0x37, 0x31, 0x39, 0x33, 0x34, 0x35, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5552_sig[] = { 0x79, 0x21, 0xba, 0xdf, 0x49, 0xf2, 0xbe, 0xba, 0x3b, 0xc6, 0xd6, 0x96, 0x49, 0x4e, 0x7f, 0x6c, 0x74, 0xed, 0xc3, 0xb7, 0x22, 0x24, 0x7a, 0xdb, 0xc9, 0xcf, 0x54, 0xd0, 0x25, 0x27, 0xef, 0x30, 0xa4, 0x5e, 0xf9, 0xb6, 0x23, 0xba, 0xd9, 0xa2, 0x44, 0x33, 0xaf, 0xc7, 0xe4, 0xe2, 0xb2, 0x52, 0x70, 0xcf, 0x07, 0xab, 0x20, 0xe2, 0x9e, 0xe8, 0x22, 0x25, 0x5b, 0x6e, 0xe8, 0xda, 0x23, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5552 = { .name = "ecdsa_secp256k1_sha3_256_5552", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5552_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5552_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5552_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5553 for ECDSA, tcId is 254 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5553_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5553_msg[] = { 0x31, 0x36, 0x33, 0x37, 0x33, 0x30, 0x35, 0x37, 0x36, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_256_5553_sig[] = { 0x3e, 0x2c, 0x34, 0x2f, 0x84, 0xcb, 0x36, 0xf9, 0x86, 0xb7, 0x2b, 0xd1, 0x98, 0x67, 0xc3, 0x59, 0xad, 0x19, 0x50, 0x46, 0xef, 0x30, 0xca, 0x75, 0x49, 0xdf, 0x84, 0x2d, 0x33, 0xa5, 0x1c, 0xcb, 0x5b, 0x8b, 0xfc, 0xfc, 0x78, 0x5f, 0xf4, 0x4c, 0xcc, 0x26, 0x51, 0xb8, 0x93, 0xb5, 0xdf, 0xbc, 0x12, 0x73, 0x9c, 0xc3, 0x97, 0x39, 0x88, 0xdb, 0xb2, 0x09, 0xcd, 0x60, 0xf4, 0xc1, 0xb4, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5553 = { .name = "ecdsa_secp256k1_sha3_256_5553", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5553_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5553_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5553_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5554 for ECDSA, tcId is 255 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5554_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5554_msg[] = { 0x34, 0x32, 0x34, 0x31, 0x32, 0x37, 0x33, 0x37, 0x31, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_256_5554_sig[] = { 0x91, 0x9e, 0xb3, 0x6b, 0x49, 0x49, 0xe3, 0x19, 0x42, 0x7b, 0x21, 0x13, 0x92, 0x7f, 0xd4, 0x0f, 0x76, 0x7c, 0x11, 0xd2, 0xc6, 0xa9, 0x91, 0xc5, 0x58, 0x43, 0x87, 0x90, 0x95, 0x9c, 0x00, 0x71, 0x9e, 0x4b, 0xfd, 0x8b, 0xcc, 0xa8, 0x76, 0x32, 0x07, 0x1b, 0xdc, 0x10, 0x9c, 0xd4, 0x7e, 0x45, 0xc9, 0x0f, 0x7c, 0xbb, 0xff, 0x3f, 0xf0, 0x5a, 0x15, 0x91, 0x58, 0x5b, 0x2f, 0x0f, 0x65, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5554 = { .name = "ecdsa_secp256k1_sha3_256_5554", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5554_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5554_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5554_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5555 for ECDSA, tcId is 256 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5555_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5555_msg[] = { 0x34, 0x37, 0x35, 0x36, 0x31, 0x34, 0x37, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5555_sig[] = { 0xe3, 0x6e, 0x3c, 0x19, 0x18, 0xe3, 0x78, 0xf1, 0x2c, 0xca, 0xef, 0xe2, 0x49, 0x54, 0xc4, 0xfb, 0x77, 0xd8, 0xa2, 0x27, 0xf7, 0xa2, 0x34, 0xa0, 0x45, 0xc2, 0xfa, 0x69, 0xec, 0x01, 0x84, 0xc4, 0x65, 0xf7, 0xb5, 0xde, 0xf1, 0x12, 0xfd, 0x96, 0xd3, 0xc3, 0xdd, 0xf3, 0xaa, 0x5b, 0xce, 0x41, 0x8a, 0xe5, 0xcb, 0x73, 0x22, 0x38, 0x7b, 0x18, 0xb5, 0xb1, 0x5e, 0x2c, 0xaa, 0x78, 0xf2, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5555 = { .name = "ecdsa_secp256k1_sha3_256_5555", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5555_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5555_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5555_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5556 for ECDSA, tcId is 257 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5556_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5556_msg[] = { 0x37, 0x31, 0x36, 0x32, 0x33, 0x32, 0x37, 0x37, 0x33, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5556_sig[] = { 0x89, 0x67, 0x4f, 0x75, 0xb7, 0x44, 0x08, 0x69, 0xf9, 0xde, 0x0c, 0xdd, 0xe2, 0x1e, 0xf4, 0x70, 0x03, 0x30, 0x9b, 0xe9, 0xf0, 0xff, 0x7f, 0x85, 0x8c, 0x6f, 0x43, 0xa3, 0xb9, 0x06, 0x70, 0x96, 0xd3, 0x77, 0x81, 0xff, 0x99, 0x32, 0x10, 0xda, 0x54, 0x70, 0xba, 0x8c, 0xe3, 0xc1, 0x6a, 0x08, 0x8e, 0x58, 0xe7, 0x9d, 0x7f, 0xd0, 0xf5, 0xe2, 0xd2, 0x33, 0x64, 0x43, 0xd9, 0xb1, 0xae, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5556 = { .name = "ecdsa_secp256k1_sha3_256_5556", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5556_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5556_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5556_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5557 for ECDSA, tcId is 258 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5557_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5557_msg[] = { 0x31, 0x32, 0x32, 0x32, 0x34, 0x30, 0x34, 0x31, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5557_sig[] = { 0x58, 0x4c, 0x05, 0xaf, 0x98, 0xb4, 0x87, 0xe9, 0xa0, 0xb5, 0xdd, 0x5e, 0x01, 0x54, 0xd1, 0x24, 0xae, 0xef, 0xa5, 0x5e, 0xb4, 0x8a, 0x27, 0x47, 0x21, 0x36, 0x5e, 0x59, 0x75, 0x49, 0xec, 0x98, 0x47, 0xb4, 0x12, 0x7c, 0x6c, 0x09, 0x07, 0x76, 0x15, 0xa9, 0x21, 0xbe, 0x38, 0x94, 0x2b, 0xaa, 0x05, 0x3a, 0x88, 0xb7, 0x38, 0x84, 0xdf, 0xad, 0xd6, 0xa7, 0x45, 0xcc, 0x9c, 0x6f, 0xa0, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5557 = { .name = "ecdsa_secp256k1_sha3_256_5557", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5557_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5557_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5557_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5558 for ECDSA, tcId is 259 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5558_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5558_msg[] = { 0x33, 0x35, 0x32, 0x34, 0x35, 0x38, 0x33, 0x33, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5558_sig[] = { 0x5f, 0x21, 0xb5, 0x54, 0xfd, 0x91, 0xca, 0x9c, 0xdd, 0x51, 0x09, 0xa0, 0x0a, 0xb3, 0xec, 0xb2, 0xd8, 0xb5, 0x13, 0x7b, 0x4f, 0xd0, 0x5c, 0x25, 0x4c, 0x3f, 0xaa, 0xa3, 0x77, 0xb3, 0xda, 0x06, 0x5d, 0x03, 0x6a, 0x7d, 0xbe, 0xbf, 0x93, 0x51, 0xc8, 0x8d, 0x3b, 0xbe, 0x03, 0x99, 0x16, 0x90, 0xcb, 0x7b, 0x67, 0xd3, 0xb5, 0xca, 0x42, 0x66, 0xeb, 0x25, 0x02, 0x9e, 0x3a, 0x1f, 0x75, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5558 = { .name = "ecdsa_secp256k1_sha3_256_5558", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5558_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5558_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5558_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5559 for ECDSA, tcId is 260 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5559_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5559_msg[] = { 0x33, 0x31, 0x36, 0x33, 0x34, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5559_sig[] = { 0x6a, 0x30, 0x97, 0x80, 0x82, 0x65, 0x39, 0x05, 0x9b, 0x3b, 0x2c, 0x9d, 0x43, 0x15, 0xbb, 0xb8, 0x3b, 0x4c, 0x3a, 0xfc, 0x21, 0x8d, 0x44, 0x0a, 0xcf, 0x2d, 0x01, 0xec, 0x0a, 0x5c, 0xdf, 0x83, 0x5d, 0x3e, 0xa5, 0x69, 0xa5, 0xad, 0x21, 0xdb, 0x62, 0xe4, 0xbc, 0x0b, 0x60, 0x25, 0x1e, 0x5f, 0x65, 0xb0, 0x11, 0x58, 0xf2, 0xc8, 0x82, 0x19, 0x73, 0xee, 0x6c, 0x47, 0xcd, 0x15, 0xfc, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5559 = { .name = "ecdsa_secp256k1_sha3_256_5559", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5559_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5559_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha3_256_5559_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5560 for ECDSA, tcId is 261 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5560_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5560_msg[] = { 0x36, 0x35, 0x33, 0x32, 0x35, 0x39, 0x38, 0x34, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5560_sig[] = { 0x41, 0xd5, 0x1f, 0x04, 0xd6, 0xfd, 0xcc, 0x5f, 0x5c, 0xac, 0xf8, 0x8e, 0x50, 0xe4, 0x18, 0xef, 0x00, 0x67, 0xf8, 0xd8, 0x54, 0xdc, 0x99, 0x16, 0x15, 0x00, 0x3f, 0x1e, 0x49, 0x92, 0x7a, 0x53, 0xc6, 0xf7, 0xc1, 0x0c, 0xad, 0x03, 0xb8, 0x94, 0x60, 0xa9, 0x79, 0x4a, 0x17, 0x1f, 0x2e, 0x10, 0xd8, 0x49, 0x82, 0xc4, 0x62, 0xcb, 0xf0, 0x75, 0xb0, 0x67, 0x38, 0xb3, 0xf9, 0x04, 0xcc, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5560 = { .name = "ecdsa_secp256k1_sha3_256_5560", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5560_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5560_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5560_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5561 for ECDSA, tcId is 262 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5561_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5561_msg[] = { 0x37, 0x33, 0x38, 0x35, 0x31, 0x38, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5561_sig[] = { 0xda, 0x8e, 0x72, 0x9a, 0xc2, 0x36, 0x89, 0xe8, 0x68, 0x12, 0x98, 0x54, 0xfb, 0xbd, 0xe5, 0xc9, 0x13, 0x0e, 0xba, 0xd0, 0xe5, 0x55, 0x04, 0x7f, 0x6c, 0x4f, 0xfc, 0xcd, 0xb0, 0xd7, 0x5f, 0xde, 0xb6, 0x93, 0xc1, 0xa3, 0xcc, 0xd9, 0x3e, 0x29, 0x89, 0xf8, 0x4e, 0x77, 0xe0, 0xea, 0x59, 0x83, 0xb7, 0x58, 0xf4, 0xc1, 0xa2, 0xa8, 0xc4, 0xb6, 0x21, 0x9b, 0x6b, 0x00, 0x6e, 0x9b, 0xa1, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5561 = { .name = "ecdsa_secp256k1_sha3_256_5561", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5561_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5561_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5561_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5562 for ECDSA, tcId is 263 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5562_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5562_msg[] = { 0x31, 0x34, 0x36, 0x35, 0x32, 0x36, 0x36, 0x35, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5562_sig[] = { 0x07, 0x93, 0xb7, 0x0b, 0x17, 0xc7, 0xdb, 0x1e, 0xe4, 0xf8, 0x4a, 0x0f, 0xcc, 0x27, 0x11, 0x53, 0x55, 0xbc, 0xa4, 0x03, 0x6e, 0x33, 0x83, 0x0b, 0xdd, 0xb5, 0x8a, 0xaa, 0xf2, 0x1d, 0xb1, 0xe9, 0xb8, 0x84, 0xdc, 0x33, 0x29, 0xf8, 0x26, 0xa3, 0xcc, 0x17, 0x66, 0xab, 0x7f, 0x67, 0xcd, 0x31, 0xad, 0x17, 0xb4, 0xd4, 0x8e, 0x81, 0xb8, 0x64, 0x1d, 0x6c, 0xf7, 0x04, 0x00, 0xc8, 0x06, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5562 = { .name = "ecdsa_secp256k1_sha3_256_5562", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5562_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5562_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5562_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5563 for ECDSA, tcId is 264 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5563_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5563_msg[] = { 0x32, 0x30, 0x33, 0x34, 0x38, 0x38, 0x39, 0x34, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5563_sig[] = { 0x3e, 0xe2, 0x01, 0x73, 0x2a, 0xf7, 0xf4, 0xfb, 0x86, 0x29, 0x91, 0xd1, 0x62, 0xa1, 0x1f, 0x79, 0xfa, 0xe5, 0x72, 0x33, 0xff, 0x96, 0x47, 0x82, 0xdb, 0x1b, 0x35, 0xb2, 0xde, 0xe6, 0x7f, 0x60, 0x78, 0xe0, 0x0f, 0x30, 0xba, 0xbf, 0x2d, 0x48, 0x3c, 0x9e, 0x97, 0x29, 0xc5, 0x0a, 0xc0, 0x7d, 0xf9, 0xab, 0xe8, 0x78, 0xff, 0x8e, 0xdd, 0x3c, 0xd7, 0xea, 0x3c, 0xec, 0xc3, 0x0b, 0x72, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5563 = { .name = "ecdsa_secp256k1_sha3_256_5563", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5563_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5563_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5563_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5564 for ECDSA, tcId is 265 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5564_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5564_msg[] = { 0x34, 0x34, 0x37, 0x30, 0x38, 0x38, 0x36, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5564_sig[] = { 0x8f, 0x2c, 0x4f, 0x9d, 0xae, 0xae, 0x64, 0x5d, 0xeb, 0x82, 0x37, 0xf2, 0x59, 0x84, 0x85, 0xa7, 0xc3, 0xac, 0x3b, 0x0e, 0x0b, 0x94, 0x56, 0x41, 0xe4, 0xf2, 0x4f, 0x59, 0xff, 0xe7, 0x84, 0x5a, 0xa7, 0xf7, 0x81, 0xe4, 0x0a, 0x73, 0xcc, 0x4f, 0x49, 0x15, 0x9e, 0xd9, 0x82, 0xff, 0xb2, 0x64, 0x09, 0x7c, 0x5f, 0x34, 0x38, 0x23, 0x14, 0xba, 0x01, 0x28, 0xa5, 0x2c, 0x91, 0x44, 0xfd, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5564 = { .name = "ecdsa_secp256k1_sha3_256_5564", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5564_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5564_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5564_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5565 for ECDSA, tcId is 266 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5565_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5565_msg[] = { 0x35, 0x35, 0x37, 0x36, 0x34, 0x30, 0x34, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5565_sig[] = { 0x75, 0x0d, 0xad, 0x3a, 0x83, 0xd3, 0xc3, 0x62, 0x1a, 0x78, 0xdc, 0xd9, 0x2f, 0x7d, 0xa9, 0x48, 0xc6, 0xfc, 0x68, 0xd7, 0xf0, 0xd9, 0x60, 0x38, 0x35, 0xb2, 0x48, 0x85, 0x15, 0xc5, 0x39, 0xae, 0xa0, 0x73, 0x6c, 0x57, 0x50, 0x3c, 0x76, 0xc2, 0x34, 0x2e, 0x3f, 0x13, 0xe5, 0x5f, 0x6d, 0xfb, 0x66, 0x37, 0xb1, 0xfb, 0x6b, 0xa5, 0xca, 0xf0, 0x0b, 0x9e, 0x54, 0x0d, 0xaa, 0x7f, 0x70, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5565 = { .name = "ecdsa_secp256k1_sha3_256_5565", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5565_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5565_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5565_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5566 for ECDSA, tcId is 267 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5566_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5566_msg[] = { 0x36, 0x33, 0x34, 0x34, 0x39, 0x35, 0x36, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5566_sig[] = { 0xb3, 0xd1, 0x4a, 0x7f, 0x7d, 0xd6, 0x93, 0xc7, 0xfd, 0x62, 0xd0, 0x73, 0xcb, 0x6b, 0xc7, 0x75, 0x04, 0x43, 0x1d, 0x8a, 0x99, 0x2c, 0xc6, 0x4a, 0xf7, 0x74, 0x70, 0x3a, 0x98, 0x1d, 0xb0, 0xa1, 0xab, 0x8a, 0x35, 0xac, 0xce, 0x77, 0x32, 0x42, 0x85, 0x0c, 0x08, 0x60, 0x13, 0x86, 0x96, 0x31, 0xe9, 0x9c, 0xf9, 0xc5, 0x37, 0x8d, 0x39, 0xd0, 0xfe, 0x10, 0xca, 0x7b, 0x50, 0x4c, 0x0c, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5566 = { .name = "ecdsa_secp256k1_sha3_256_5566", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5566_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5566_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5566_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5567 for ECDSA, tcId is 268 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5567_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5567_msg[] = { 0x34, 0x39, 0x34, 0x32, 0x38, 0x30, 0x39, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_256_5567_sig[] = { 0xff, 0x35, 0x62, 0x1d, 0x42, 0x0e, 0x7a, 0x83, 0x43, 0xd2, 0x22, 0xf1, 0x8a, 0xcb, 0x46, 0xae, 0x5a, 0x5a, 0x29, 0x32, 0x0f, 0x88, 0xe2, 0xf0, 0x97, 0x7a, 0xcf, 0xd9, 0x6d, 0x70, 0x14, 0x41, 0x9f, 0xc2, 0x9b, 0xfd, 0x8a, 0x80, 0xa2, 0x49, 0x59, 0xbd, 0x44, 0x94, 0xde, 0x1b, 0x3c, 0x0a, 0x33, 0x66, 0x13, 0x1a, 0xef, 0xef, 0x4f, 0xe9, 0xd3, 0x3f, 0x1f, 0x91, 0xd1, 0x18, 0xbb, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5567 = { .name = "ecdsa_secp256k1_sha3_256_5567", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5567_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5567_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5567_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5568 for ECDSA, tcId is 269 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5568_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5568_msg[] = { 0x32, 0x36, 0x36, 0x35, 0x38, 0x31, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5568_sig[] = { 0x05, 0x12, 0x91, 0xf2, 0x74, 0x08, 0x43, 0x6b, 0x4c, 0x56, 0xcc, 0x89, 0x93, 0xb3, 0x89, 0x1c, 0x5c, 0x3a, 0x4b, 0xf3, 0x74, 0x70, 0x41, 0xb4, 0xd9, 0x15, 0xfd, 0xcc, 0xc1, 0xc6, 0x7a, 0x59, 0xf8, 0xd6, 0x97, 0x1a, 0x94, 0x83, 0x32, 0x61, 0x75, 0x64, 0xb4, 0xc9, 0x58, 0x18, 0x50, 0xf8, 0x99, 0x27, 0x52, 0xf1, 0xaf, 0xe3, 0x03, 0x70, 0xa4, 0xd3, 0x6a, 0xf7, 0x23, 0x76, 0x67, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5568 = { .name = "ecdsa_secp256k1_sha3_256_5568", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5568_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5568_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5568_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5569 for ECDSA, tcId is 270 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5569_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5569_msg[] = { 0x33, 0x33, 0x33, 0x32, 0x32, 0x31, 0x34, 0x31, 0x31, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5569_sig[] = { 0xb8, 0x20, 0xf2, 0x16, 0x3d, 0x1a, 0x90, 0x2e, 0x84, 0x7c, 0x69, 0x39, 0x2d, 0xa7, 0x12, 0x4b, 0xc3, 0x1f, 0x56, 0xec, 0xad, 0x5f, 0x73, 0xc3, 0xdb, 0x14, 0x2c, 0x9c, 0x82, 0x20, 0xcc, 0x65, 0x89, 0xc5, 0x27, 0xe5, 0x5e, 0x55, 0x9a, 0xa5, 0xef, 0xb2, 0x63, 0x86, 0x0f, 0xba, 0xc0, 0x4f, 0x1c, 0xe5, 0x56, 0xf8, 0x2b, 0xcc, 0xcb, 0x49, 0x99, 0x1b, 0xc2, 0xc5, 0x75, 0x80, 0x8a, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5569 = { .name = "ecdsa_secp256k1_sha3_256_5569", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5569_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5569_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5569_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5570 for ECDSA, tcId is 271 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5570_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5570_msg[] = { 0x36, 0x31, 0x36, 0x35, 0x32, 0x37, 0x37, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5570_sig[] = { 0x01, 0x80, 0xc0, 0x8e, 0x97, 0xd4, 0xfe, 0x40, 0x7c, 0x0e, 0xab, 0x2e, 0xb7, 0xd1, 0x7b, 0xae, 0x60, 0xe8, 0xca, 0x9a, 0xd4, 0x59, 0xe5, 0x7c, 0xdf, 0x48, 0x38, 0x9e, 0xd9, 0xed, 0x95, 0x36, 0x7d, 0x5e, 0xae, 0xff, 0xff, 0xba, 0x65, 0xaf, 0xbf, 0x1b, 0xa9, 0xca, 0x9b, 0xc0, 0xfe, 0x11, 0x81, 0xda, 0x76, 0xe5, 0xe4, 0x1a, 0xde, 0x86, 0x87, 0x79, 0x9b, 0x09, 0xe9, 0x10, 0x45, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5570 = { .name = "ecdsa_secp256k1_sha3_256_5570", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5570_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5570_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5570_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5571 for ECDSA, tcId is 272 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5571_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5571_msg[] = { 0x32, 0x33, 0x35, 0x39, 0x39, 0x35, 0x35, 0x38, 0x31, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_256_5571_sig[] = { 0x98, 0x5f, 0x15, 0xf0, 0xee, 0xcc, 0x62, 0x11, 0x28, 0x17, 0xbc, 0x23, 0x47, 0x84, 0xd6, 0x04, 0x04, 0x80, 0x4e, 0xa7, 0xdb, 0xa4, 0x8f, 0x8c, 0x09, 0xcc, 0x02, 0x40, 0x1c, 0x4e, 0x13, 0xae, 0xc7, 0x3d, 0x1b, 0xed, 0x70, 0x77, 0x73, 0x44, 0x92, 0xc7, 0x00, 0xed, 0xe8, 0xe6, 0x80, 0x0e, 0x04, 0x85, 0x23, 0xef, 0x9b, 0xcf, 0xfb, 0x53, 0xcc, 0x79, 0x94, 0x58, 0x05, 0xff, 0x71, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5571 = { .name = "ecdsa_secp256k1_sha3_256_5571", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5571_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5571_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5571_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5572 for ECDSA, tcId is 273 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5572_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5572_msg[] = { 0x32, 0x39, 0x31, 0x33, 0x36, 0x31, 0x39, 0x35, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5572_sig[] = { 0xd9, 0xa5, 0xae, 0x90, 0x12, 0xbc, 0xac, 0xfc, 0x12, 0xfa, 0x3d, 0xb6, 0x23, 0xd2, 0x09, 0x96, 0x57, 0xd4, 0xf3, 0x21, 0x46, 0x0d, 0x01, 0x35, 0xbc, 0x73, 0x1a, 0x70, 0x47, 0x8b, 0x79, 0xbc, 0xa5, 0xd8, 0x82, 0xaa, 0x5c, 0xf3, 0x90, 0x73, 0x78, 0x39, 0x44, 0x3a, 0xb0, 0x59, 0xd6, 0x82, 0x82, 0x06, 0x4d, 0x3d, 0x82, 0x7b, 0xfe, 0xf5, 0x2f, 0xc1, 0x76, 0xd0, 0xde, 0x60, 0xed, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5572 = { .name = "ecdsa_secp256k1_sha3_256_5572", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5572_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5572_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5572_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5573 for ECDSA, tcId is 274 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5573_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5573_msg[] = { 0x31, 0x36, 0x32, 0x30, 0x39, 0x30, 0x33, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5573_sig[] = { 0xf0, 0x70, 0xe1, 0x28, 0x5c, 0x47, 0x10, 0x6a, 0x1a, 0xd2, 0x3a, 0x77, 0x47, 0x56, 0xa3, 0xd3, 0x45, 0x3a, 0x48, 0xd2, 0x45, 0x40, 0x16, 0x04, 0xef, 0x59, 0xa9, 0x6b, 0x9a, 0x19, 0x10, 0xc2, 0xb4, 0x3c, 0xf5, 0x20, 0x41, 0x61, 0x3d, 0xbf, 0x8d, 0x3a, 0x13, 0x6a, 0x0d, 0x0f, 0x6b, 0xce, 0x87, 0xcd, 0x74, 0x26, 0x22, 0x24, 0xe6, 0x20, 0xf3, 0x55, 0xdd, 0xec, 0xed, 0x20, 0xe5, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5573 = { .name = "ecdsa_secp256k1_sha3_256_5573", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5573_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5573_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5573_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5574 for ECDSA, tcId is 275 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5574_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5574_msg[] = { 0x33, 0x33, 0x36, 0x33, 0x31, 0x30, 0x32, 0x38, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5574_sig[] = { 0x96, 0x3a, 0x3a, 0xe4, 0xb0, 0xa7, 0xae, 0x86, 0x04, 0x7e, 0x47, 0xf3, 0x75, 0xc7, 0xe4, 0x2d, 0xe0, 0x35, 0xf2, 0x8f, 0xb4, 0x30, 0xc4, 0x08, 0xd0, 0xd8, 0x15, 0xca, 0xeb, 0xef, 0xa3, 0x44, 0xa1, 0xed, 0xd8, 0xc2, 0xd3, 0x9f, 0x04, 0xf9, 0x9e, 0x05, 0xa7, 0x93, 0xb7, 0x97, 0x0d, 0xfa, 0x76, 0xf4, 0xb1, 0xfc, 0x06, 0x63, 0xd3, 0x08, 0xed, 0xee, 0x9d, 0x3e, 0xcd, 0x07, 0x7d, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5574 = { .name = "ecdsa_secp256k1_sha3_256_5574", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5574_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5574_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5574_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5575 for ECDSA, tcId is 276 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5575_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5575_msg[] = { 0x36, 0x32, 0x37, 0x37, 0x34, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_256_5575_sig[] = { 0xe6, 0xad, 0xb9, 0x13, 0x9c, 0xf4, 0x7d, 0xae, 0x08, 0x90, 0x00, 0x67, 0x32, 0x62, 0x9c, 0x8e, 0x09, 0x5c, 0x13, 0xdf, 0x37, 0x07, 0x17, 0xa4, 0x2a, 0x8b, 0xc6, 0xe8, 0x93, 0x66, 0x78, 0xef, 0xa8, 0xdf, 0x8a, 0xcc, 0x7e, 0xe7, 0x55, 0x1c, 0xf0, 0x40, 0x9e, 0x8c, 0x1c, 0x2f, 0xd0, 0xdf, 0x6e, 0x7e, 0x9b, 0x38, 0x27, 0xe9, 0x57, 0x27, 0xfa, 0x49, 0x2c, 0x27, 0x4e, 0x46, 0x68, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5575 = { .name = "ecdsa_secp256k1_sha3_256_5575", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5575_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5575_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5575_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5576 for ECDSA, tcId is 277 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5576_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5576_msg[] = { 0x33, 0x38, 0x35, 0x36, 0x37, 0x39, 0x38, 0x31, 0x34, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5576_sig[] = { 0x07, 0x66, 0x2a, 0x36, 0xa2, 0xbb, 0x77, 0x9a, 0x27, 0x61, 0x45, 0xe7, 0x85, 0x43, 0xc3, 0x60, 0xc7, 0xd0, 0xa2, 0x2a, 0x17, 0x49, 0xf6, 0x9e, 0xad, 0x27, 0x88, 0xc7, 0x57, 0x50, 0xd2, 0x48, 0x7c, 0x0a, 0x4d, 0xba, 0x49, 0x9b, 0x27, 0xcc, 0x24, 0x9a, 0x70, 0x5b, 0xa7, 0xbb, 0xf5, 0x12, 0xa7, 0x48, 0x4b, 0x93, 0xf9, 0xa8, 0x3c, 0xa9, 0x30, 0x5d, 0xd4, 0x9c, 0xde, 0x6a, 0x30, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5576 = { .name = "ecdsa_secp256k1_sha3_256_5576", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5576_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5576_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5576_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5577 for ECDSA, tcId is 278 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5577_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5577_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x38, 0x30, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5577_sig[] = { 0x36, 0xdf, 0x00, 0x3e, 0xfd, 0xbe, 0xc3, 0xbf, 0x53, 0xa2, 0xa4, 0x52, 0x48, 0xc1, 0xe9, 0x6e, 0x60, 0xc9, 0xbc, 0xf1, 0x0b, 0x4f, 0x5d, 0xfb, 0x22, 0x07, 0x44, 0xd2, 0xda, 0x51, 0xfc, 0x8e, 0xe5, 0xf1, 0x03, 0xb3, 0xa7, 0x4f, 0xa1, 0xd0, 0xa7, 0x8e, 0x74, 0xd6, 0x04, 0xf3, 0x18, 0x89, 0xe6, 0x63, 0x7c, 0xff, 0x2a, 0xcb, 0xb3, 0x1a, 0x70, 0x72, 0x6e, 0x72, 0xf3, 0x92, 0xd4, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5577 = { .name = "ecdsa_secp256k1_sha3_256_5577", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5577_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5577_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5577_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5578 for ECDSA, tcId is 279 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5578_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5578_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x37, 0x33, 0x39, 0x34, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5578_sig[] = { 0x71, 0x2d, 0xc3, 0x23, 0x3f, 0x46, 0x2b, 0x0a, 0x37, 0xf0, 0x20, 0xec, 0x55, 0x9b, 0xb1, 0xa1, 0x9d, 0x87, 0x9a, 0xe3, 0x62, 0x10, 0xc7, 0x5e, 0xfc, 0xb9, 0xc0, 0x71, 0x91, 0x51, 0x16, 0xe1, 0x06, 0xa9, 0x81, 0x76, 0x12, 0x49, 0xcc, 0x19, 0x29, 0xf5, 0xc1, 0x8d, 0x6f, 0x2a, 0x76, 0xee, 0xf4, 0x87, 0xbb, 0xda, 0x0c, 0x44, 0x70, 0xbb, 0x09, 0x8b, 0x87, 0xb9, 0x13, 0x28, 0x08, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5578 = { .name = "ecdsa_secp256k1_sha3_256_5578", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5578_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5578_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5578_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5579 for ECDSA, tcId is 280 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5579_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5579_msg[] = { 0x35, 0x34, 0x32, 0x37, 0x31, 0x31, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5579_sig[] = { 0x10, 0xe3, 0x73, 0xd1, 0xcb, 0x4c, 0x05, 0x29, 0x5b, 0x63, 0xce, 0x71, 0x03, 0x81, 0x7b, 0x7c, 0x0f, 0xd0, 0x96, 0xd7, 0xc6, 0x3f, 0x65, 0xf5, 0x6d, 0x95, 0x0a, 0x61, 0xe4, 0x55, 0xc1, 0xcb, 0x44, 0xcb, 0x5c, 0x82, 0x70, 0xc0, 0x69, 0xac, 0x40, 0x8a, 0x6c, 0x9f, 0x31, 0xac, 0xe9, 0x22, 0x9a, 0xb6, 0x07, 0x8a, 0x36, 0xad, 0xc4, 0x65, 0x10, 0x7f, 0x0a, 0x3d, 0x6d, 0xdf, 0xea, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5579 = { .name = "ecdsa_secp256k1_sha3_256_5579", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5579_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5579_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5579_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5580 for ECDSA, tcId is 281 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5580_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5580_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x30, 0x33, 0x34, 0x33, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5580_sig[] = { 0xcd, 0x12, 0x74, 0xf4, 0xc8, 0x9a, 0xb1, 0x94, 0x20, 0x3c, 0xcb, 0x5c, 0x39, 0xe7, 0xd0, 0xbc, 0x36, 0x45, 0x37, 0xb8, 0x4b, 0x9d, 0xd4, 0x8d, 0x92, 0x2e, 0x43, 0xe7, 0x9e, 0x42, 0x58, 0xc2, 0x42, 0xe1, 0xfc, 0xf7, 0x2e, 0xb6, 0x5d, 0x76, 0xb1, 0x31, 0x28, 0xd3, 0x06, 0x5d, 0xaa, 0x31, 0x31, 0x2b, 0xf9, 0xc1, 0x10, 0xf1, 0x8b, 0x47, 0x99, 0xdc, 0xe8, 0xec, 0xca, 0xe5, 0x2d, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5580 = { .name = "ecdsa_secp256k1_sha3_256_5580", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5580_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5580_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5580_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5581 for ECDSA, tcId is 282 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5581_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5581_msg[] = { 0x31, 0x39, 0x39, 0x39, 0x38, 0x32, 0x31, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_256_5581_sig[] = { 0x51, 0x6c, 0x98, 0x3f, 0xe6, 0x56, 0x7a, 0xc7, 0x00, 0xf9, 0x30, 0x28, 0xda, 0x6a, 0xff, 0xc5, 0x98, 0xdf, 0xa9, 0x53, 0x91, 0x89, 0x6c, 0x54, 0x4c, 0x8f, 0x73, 0xc9, 0x63, 0x14, 0xa0, 0xa0, 0xbf, 0xa5, 0x6a, 0x18, 0x33, 0x66, 0x8a, 0xcf, 0xd1, 0x48, 0x99, 0xe8, 0xcc, 0x16, 0x0b, 0x79, 0xc5, 0xe9, 0x2a, 0x30, 0x05, 0x5d, 0xd7, 0xc7, 0x00, 0x48, 0x4f, 0x6b, 0xfc, 0xe4, 0x2c, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5581 = { .name = "ecdsa_secp256k1_sha3_256_5581", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5581_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5581_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5581_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5582 for ECDSA, tcId is 283 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5582_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5582_msg[] = { 0x31, 0x39, 0x37, 0x31, 0x32, 0x30, 0x39, 0x32, 0x36, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_256_5582_sig[] = { 0x52, 0x27, 0x9b, 0x3d, 0xf5, 0x8e, 0x2a, 0xa7, 0xdd, 0xae, 0xe1, 0xe5, 0xde, 0x15, 0x5c, 0xb7, 0x5d, 0x4f, 0x00, 0xec, 0x7d, 0xb7, 0x4a, 0xe9, 0x13, 0xa6, 0xed, 0x33, 0xde, 0xa8, 0x96, 0xd4, 0xef, 0x58, 0x23, 0xff, 0x99, 0x77, 0xfa, 0x49, 0x24, 0x83, 0xbc, 0xbf, 0xc1, 0xd0, 0xbd, 0x76, 0x5f, 0xd6, 0xdf, 0xa7, 0x8c, 0xc1, 0x1e, 0x65, 0x8b, 0x49, 0x84, 0xb5, 0x43, 0xe0, 0xe7, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5582 = { .name = "ecdsa_secp256k1_sha3_256_5582", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5582_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5582_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5582_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5583 for ECDSA, tcId is 284 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5583_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5583_msg[] = { 0x33, 0x35, 0x37, 0x31, 0x38, 0x33, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5583_sig[] = { 0x01, 0xc2, 0xa0, 0x4e, 0xef, 0x58, 0x27, 0xe7, 0xe0, 0x4e, 0xb5, 0x18, 0x02, 0xcc, 0x38, 0x59, 0xaf, 0x6d, 0x84, 0xfe, 0x35, 0xae, 0xe4, 0xda, 0x4b, 0xc1, 0xb0, 0xee, 0x15, 0x4b, 0x7e, 0xf3, 0xdc, 0x57, 0xa1, 0x07, 0xda, 0x6b, 0xb1, 0x26, 0x24, 0x31, 0x36, 0x60, 0x23, 0x3c, 0xbd, 0xcc, 0x55, 0xff, 0x71, 0x47, 0xec, 0xb3, 0xa3, 0x28, 0xaf, 0x3e, 0x86, 0x22, 0x5c, 0x89, 0xbe, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5583 = { .name = "ecdsa_secp256k1_sha3_256_5583", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5583_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5583_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5583_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5584 for ECDSA, tcId is 285 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5584_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5584_msg[] = { 0x38, 0x36, 0x38, 0x32, 0x32, 0x36, 0x39, 0x38, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5584_sig[] = { 0x1c, 0xe1, 0xbb, 0x1f, 0xc7, 0x8a, 0x38, 0xd4, 0xaf, 0x21, 0x1b, 0x5f, 0xce, 0xeb, 0xd0, 0x11, 0x26, 0xc1, 0x0c, 0xea, 0xb1, 0xde, 0x64, 0x01, 0xe1, 0xdf, 0x1d, 0xc4, 0x95, 0xdb, 0xf5, 0xb5, 0xc9, 0xb5, 0x64, 0xa0, 0xa5, 0xb9, 0x67, 0x5e, 0xec, 0xe3, 0xcb, 0xe3, 0x34, 0x98, 0x63, 0x4e, 0x79, 0x43, 0x89, 0x3f, 0xe1, 0x6c, 0x61, 0xef, 0x89, 0x4b, 0xd4, 0xbe, 0x34, 0x9a, 0x68, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5584 = { .name = "ecdsa_secp256k1_sha3_256_5584", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5584_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5584_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5584_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5585 for ECDSA, tcId is 286 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5585_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5585_msg[] = { 0x32, 0x35, 0x34, 0x38, 0x38, 0x35, 0x36, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_256_5585_sig[] = { 0xb7, 0xae, 0x42, 0xb3, 0x6f, 0x06, 0x0c, 0x15, 0xc6, 0x74, 0x5e, 0xa4, 0xd8, 0xbd, 0x91, 0xae, 0x2e, 0xaf, 0xe0, 0xe1, 0x96, 0xc5, 0x2c, 0xfa, 0xc4, 0xe1, 0x6a, 0xb7, 0x4d, 0x30, 0x48, 0xb6, 0x42, 0x1b, 0xc2, 0xdc, 0xd0, 0x85, 0x4d, 0xd4, 0xe6, 0x9a, 0x3e, 0x93, 0x0b, 0x2c, 0xb6, 0x46, 0x55, 0x7b, 0xd6, 0x8c, 0x80, 0x0c, 0x5a, 0x2c, 0xa7, 0xbb, 0xb3, 0xdd, 0xd3, 0x23, 0x70, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5585 = { .name = "ecdsa_secp256k1_sha3_256_5585", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5585_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5585_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5585_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5586 for ECDSA, tcId is 287 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5586_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5586_msg[] = { 0x34, 0x39, 0x39, 0x35, 0x37, 0x30, 0x31, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_256_5586_sig[] = { 0xd5, 0x1d, 0xc2, 0x06, 0xdf, 0x9c, 0xfb, 0x71, 0x98, 0xe2, 0x2b, 0x95, 0x7c, 0x64, 0x43, 0x57, 0x54, 0x22, 0x64, 0xba, 0xdf, 0x5a, 0xed, 0xe3, 0xf7, 0x47, 0x45, 0x34, 0xda, 0x0d, 0x5b, 0x22, 0x26, 0x6d, 0x17, 0x2a, 0x6d, 0x67, 0x75, 0x96, 0x3f, 0x9e, 0xd4, 0xfb, 0x59, 0x06, 0x5c, 0x8f, 0x19, 0x48, 0xc4, 0x8a, 0x51, 0x46, 0x3f, 0xe7, 0x9b, 0xbf, 0x1b, 0x45, 0xdf, 0x7e, 0x57, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5586 = { .name = "ecdsa_secp256k1_sha3_256_5586", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5586_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5586_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5586_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5587 for ECDSA, tcId is 288 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5587_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5587_msg[] = { 0x32, 0x34, 0x35, 0x36, 0x36, 0x38, 0x31, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5587_sig[] = { 0xf8, 0x81, 0xb3, 0xe2, 0x16, 0x84, 0xfb, 0xf8, 0x99, 0xf7, 0x62, 0xc8, 0xfc, 0x7c, 0x74, 0x23, 0xa2, 0xad, 0x2c, 0x27, 0x62, 0x57, 0xc9, 0x9e, 0xae, 0x86, 0xb6, 0x6e, 0xe3, 0x9e, 0x4a, 0xe1, 0x27, 0x20, 0x7d, 0x5c, 0xcf, 0xf7, 0x73, 0xb2, 0x6b, 0xf0, 0xd2, 0x82, 0xd8, 0x84, 0xb3, 0xc3, 0xa6, 0x72, 0x4b, 0xa0, 0x6a, 0x16, 0x71, 0xc9, 0xf9, 0xbe, 0x8c, 0xbe, 0x6e, 0x35, 0x89, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5587 = { .name = "ecdsa_secp256k1_sha3_256_5587", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5587_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5587_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5587_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5588 for ECDSA, tcId is 289 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5588_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5588_msg[] = { 0x34, 0x31, 0x38, 0x35, 0x33, 0x37, 0x31, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5588_sig[] = { 0x24, 0x55, 0xeb, 0xf6, 0x2b, 0x50, 0xf9, 0x58, 0x78, 0x17, 0x92, 0xfd, 0xc7, 0x05, 0x75, 0x59, 0x23, 0xa3, 0x0c, 0x0e, 0xb7, 0xd5, 0x15, 0xa0, 0x98, 0x8c, 0x1a, 0x14, 0xde, 0x62, 0xca, 0xad, 0x10, 0xbd, 0x68, 0xc8, 0x81, 0x41, 0x62, 0x05, 0xbd, 0x95, 0xa5, 0xf2, 0x76, 0x5d, 0x69, 0x72, 0x6e, 0x0b, 0xce, 0x5b, 0x2a, 0x0e, 0xc5, 0x25, 0xae, 0xb1, 0xbb, 0xa7, 0xd3, 0x5d, 0x8e, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5588 = { .name = "ecdsa_secp256k1_sha3_256_5588", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5588_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5588_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5588_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5589 for ECDSA, tcId is 290 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5589_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5589_msg[] = { 0x37, 0x32, 0x37, 0x38, 0x34, 0x39, 0x30, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_256_5589_sig[] = { 0x91, 0x19, 0xd7, 0x94, 0x9d, 0x9e, 0x4c, 0x55, 0xe4, 0xc7, 0x12, 0xd2, 0x57, 0xc4, 0xba, 0x3a, 0xb9, 0xd6, 0x57, 0xc7, 0xe0, 0xaa, 0x78, 0x40, 0x09, 0x1c, 0xb2, 0xac, 0xfb, 0x4f, 0xc2, 0x5a, 0x42, 0x52, 0x4f, 0xd0, 0xc4, 0xae, 0x8b, 0x50, 0x64, 0x4c, 0xba, 0x34, 0xf8, 0x6c, 0x21, 0xa4, 0x2e, 0xe0, 0x45, 0xce, 0x7c, 0x15, 0xb4, 0xeb, 0x81, 0x7a, 0xff, 0xc7, 0x8d, 0x20, 0xfd, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5589 = { .name = "ecdsa_secp256k1_sha3_256_5589", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5589_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5589_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_256_5589_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5590 for ECDSA, tcId is 291 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5590_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5590_msg[] = { 0x31, 0x35, 0x36, 0x32, 0x38, 0x31, 0x39, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_256_5590_sig[] = { 0x19, 0x1e, 0x71, 0x66, 0x69, 0xd8, 0x46, 0x31, 0xa0, 0x4c, 0xc0, 0x85, 0xf0, 0x3b, 0x2f, 0x1a, 0x4f, 0x55, 0x81, 0x0f, 0x70, 0xbe, 0xbb, 0xaf, 0x5e, 0xe1, 0x3d, 0x68, 0xf2, 0x59, 0x8f, 0xfb, 0x90, 0xf2, 0x08, 0xa9, 0xf1, 0xc2, 0x79, 0x11, 0xb5, 0xfb, 0x8d, 0x86, 0x7b, 0xdf, 0x12, 0x3d, 0xd6, 0x01, 0x63, 0x9c, 0x2d, 0xfa, 0x1f, 0x6a, 0x61, 0xfd, 0x2f, 0x82, 0xca, 0xdb, 0x13, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5590 = { .name = "ecdsa_secp256k1_sha3_256_5590", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5590_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5590_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_256_5590_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5591 for ECDSA, tcId is 292 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5591_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_256_5591_msg[] = { 0x32, 0x31, 0x38, 0x37, 0x39, 0x39, 0x32, 0x38, 0x33, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_256_5591_sig[] = { 0x8c, 0xc2, 0xca, 0xb9, 0xf2, 0x57, 0x92, 0x81, 0x81, 0xc4, 0xd3, 0x68, 0x5d, 0x54, 0x4b, 0xec, 0x0b, 0x88, 0xb9, 0x5c, 0xbb, 0xdb, 0x8a, 0xd1, 0xb0, 0x54, 0x3b, 0x46, 0xb2, 0x41, 0x44, 0x73, 0x9d, 0x1d, 0x15, 0x8d, 0xab, 0x8e, 0x91, 0xc6, 0x8b, 0x37, 0x2a, 0xde, 0x10, 0x7a, 0xac, 0x5c, 0x22, 0xf8, 0xbe, 0x64, 0x46, 0x3b, 0x0c, 0x23, 0x34, 0x0d, 0xfc, 0x82, 0x8d, 0x7b, 0x7d, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5591 = { .name = "ecdsa_secp256k1_sha3_256_5591", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5591_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5591_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_256_5591_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5592 for ECDSA, tcId is 293 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5592_pubkey[] = { 0x27, 0x50, 0x4e, 0x89, 0x3f, 0xd6, 0x2d, 0x0b, 0xfd, 0xea, 0xa0, 0x73, 0x10, 0x6b, 0x16, 0xe8, 0xf8, 0xd2, 0x72, 0x6a, 0x97, 0x62, 0x52, 0x97, 0x64, 0xcf, 0xe8, 0xfe, 0x8a, 0x38, 0x46, 0x0e, 0x21, 0xbb, 0x0d, 0xdf, 0xf0, 0x40, 0xb7, 0xaf, 0xf8, 0xf0, 0x8a, 0x60, 0xd5, 0xae, 0x1a, 0x59, 0x47, 0x2f, 0x39, 0x48, 0x46, 0xae, 0x4f, 0x58, 0xc4, 0xbe, 0x0c, 0xc8, 0xa2, 0xa3, 0x65, 0x01, }; static const unsigned char ecdsa_secp256k1_sha3_256_5592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5592_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5592 = { .name = "ecdsa_secp256k1_sha3_256_5592", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5592_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5592_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5592_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 293 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5593 for ECDSA, tcId is 294 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5593_pubkey[] = { 0x27, 0x50, 0x4e, 0x89, 0x3f, 0xd6, 0x2d, 0x0b, 0xfd, 0xea, 0xa0, 0x73, 0x10, 0x6b, 0x16, 0xe8, 0xf8, 0xd2, 0x72, 0x6a, 0x97, 0x62, 0x52, 0x97, 0x64, 0xcf, 0xe8, 0xfe, 0x8a, 0x38, 0x46, 0x0e, 0x21, 0xbb, 0x0d, 0xdf, 0xf0, 0x40, 0xb7, 0xaf, 0xf8, 0xf0, 0x8a, 0x60, 0xd5, 0xae, 0x1a, 0x59, 0x47, 0x2f, 0x39, 0x48, 0x46, 0xae, 0x4f, 0x58, 0xc4, 0xbe, 0x0c, 0xc8, 0xa2, 0xa3, 0x65, 0x01, }; static const unsigned char ecdsa_secp256k1_sha3_256_5593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5593_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5593 = { .name = "ecdsa_secp256k1_sha3_256_5593", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5593_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5593_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5593_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 294 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5594 for ECDSA, tcId is 295 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5594_pubkey[] = { 0xf1, 0x31, 0xf6, 0xdd, 0xdd, 0xe5, 0x9b, 0xae, 0x7b, 0x00, 0x90, 0xa4, 0x7b, 0xaf, 0xbb, 0x33, 0xc1, 0x57, 0xac, 0x6d, 0xa4, 0x39, 0x32, 0x4a, 0x66, 0x81, 0xbf, 0x67, 0xf5, 0x75, 0xf9, 0x0b, 0xec, 0xcc, 0x2f, 0xb2, 0xc0, 0xbe, 0x31, 0x8f, 0xda, 0x93, 0x35, 0xbb, 0x83, 0x48, 0x8b, 0xca, 0xfd, 0x33, 0xbe, 0x82, 0xc3, 0x83, 0x18, 0xbc, 0xf8, 0x45, 0xfd, 0x0e, 0x50, 0x17, 0xc2, 0x48, }; static const unsigned char ecdsa_secp256k1_sha3_256_5594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5594_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5594 = { .name = "ecdsa_secp256k1_sha3_256_5594", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5594_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5594_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5594_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 295 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5595 for ECDSA, tcId is 296 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5595_pubkey[] = { 0x11, 0x01, 0xc4, 0x96, 0xd5, 0xf8, 0x91, 0x0a, 0x77, 0x49, 0xef, 0xff, 0x9d, 0xc4, 0x6f, 0x68, 0xa7, 0xfd, 0x02, 0xd6, 0x97, 0x5f, 0xdf, 0x15, 0xbf, 0x90, 0xef, 0xb7, 0x04, 0x63, 0xcb, 0x4e, 0xde, 0x19, 0x9e, 0x46, 0xe6, 0x7d, 0x46, 0x3a, 0xa8, 0xc7, 0x52, 0xca, 0xc8, 0xa3, 0x42, 0xb8, 0xfe, 0x0e, 0x9a, 0x5b, 0xa9, 0xa6, 0x74, 0x16, 0xc8, 0x86, 0x5c, 0x45, 0xe4, 0x78, 0x00, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha3_256_5595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5595_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5595 = { .name = "ecdsa_secp256k1_sha3_256_5595", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5595_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5595_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5595_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 296 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5596 for ECDSA, tcId is 297 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5596_pubkey[] = { 0x6e, 0x43, 0xa5, 0xc6, 0x3a, 0xd0, 0xbc, 0x8d, 0x17, 0x8a, 0x74, 0x51, 0x92, 0x67, 0x1c, 0x06, 0x50, 0x0f, 0x0d, 0xbd, 0x75, 0x7c, 0x3f, 0x2e, 0xae, 0x65, 0x08, 0x9a, 0xaf, 0x0d, 0x64, 0x89, 0x82, 0x95, 0x4f, 0xf6, 0x0c, 0x34, 0x60, 0xa2, 0x77, 0x48, 0x44, 0x55, 0x25, 0xc6, 0xcd, 0x30, 0x70, 0x17, 0x25, 0xe1, 0x69, 0x78, 0x91, 0xcb, 0x7f, 0x32, 0xfe, 0xed, 0x12, 0x8a, 0x3a, 0xe7, }; static const unsigned char ecdsa_secp256k1_sha3_256_5596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5596_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5596 = { .name = "ecdsa_secp256k1_sha3_256_5596", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5596_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5596_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5596_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 297 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5597 for ECDSA, tcId is 298 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5597_pubkey[] = { 0xef, 0x4e, 0x8b, 0x57, 0x32, 0xf5, 0x1a, 0x4b, 0x25, 0x47, 0xc6, 0x58, 0x13, 0x81, 0xcc, 0xf7, 0x50, 0xbb, 0x6d, 0x30, 0xa0, 0x7c, 0xb7, 0x58, 0x86, 0x54, 0x14, 0xd9, 0xa4, 0x50, 0x17, 0xfb, 0xf1, 0x02, 0x47, 0xbc, 0xaa, 0x4c, 0xa7, 0x3d, 0x5c, 0x9a, 0xd4, 0xc8, 0xa0, 0x3a, 0x60, 0xa7, 0xf5, 0xcf, 0xa0, 0x7f, 0xb5, 0x74, 0x37, 0xb5, 0xa6, 0xf0, 0xa9, 0xbd, 0x38, 0x1d, 0x78, 0xa5, }; static const unsigned char ecdsa_secp256k1_sha3_256_5597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5597_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5597 = { .name = "ecdsa_secp256k1_sha3_256_5597", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5597_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5597_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5597_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 298 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5598 for ECDSA, tcId is 299 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5598_pubkey[] = { 0xa9, 0x73, 0xc1, 0x5a, 0x44, 0xd2, 0xdc, 0xd5, 0x05, 0x58, 0xe0, 0x33, 0xd2, 0x42, 0x15, 0x5a, 0x29, 0x80, 0x8b, 0x87, 0x49, 0x15, 0x76, 0x56, 0x6a, 0x83, 0x82, 0x1b, 0x65, 0x0e, 0x6f, 0x2d, 0xfc, 0x5e, 0xcd, 0x54, 0x82, 0xfa, 0x59, 0x1f, 0x57, 0x83, 0x08, 0xb0, 0x9f, 0x2e, 0x70, 0x41, 0x16, 0xa3, 0x75, 0xba, 0x1e, 0x28, 0x37, 0x91, 0x2b, 0xae, 0x29, 0x72, 0xd3, 0x40, 0x41, 0x4d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5598_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5598 = { .name = "ecdsa_secp256k1_sha3_256_5598", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5598_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5598_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5598_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 299 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5599 for ECDSA, tcId is 300 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5599_pubkey[] = { 0x8c, 0xd3, 0x1f, 0x16, 0x56, 0xb2, 0x1e, 0xc2, 0x72, 0x76, 0xa5, 0x33, 0xc3, 0x5b, 0xf5, 0x1d, 0x95, 0x49, 0x0b, 0xfe, 0xc5, 0x78, 0x68, 0xa9, 0xb9, 0x44, 0x33, 0xed, 0xa4, 0x57, 0x9d, 0x61, 0xbb, 0x2c, 0x8e, 0x80, 0xc4, 0x5d, 0x94, 0x9b, 0xca, 0xf6, 0xf0, 0xbb, 0xc7, 0x6b, 0xc2, 0x7c, 0x95, 0x93, 0x99, 0x45, 0x05, 0x2a, 0xd1, 0xa1, 0x10, 0x14, 0x75, 0x65, 0x56, 0xc6, 0xf9, 0x78, }; static const unsigned char ecdsa_secp256k1_sha3_256_5599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5599_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5599 = { .name = "ecdsa_secp256k1_sha3_256_5599", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5599_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5599_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5599_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 300 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5600 for ECDSA, tcId is 301 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5600_pubkey[] = { 0x8c, 0xd3, 0x1f, 0x16, 0x56, 0xb2, 0x1e, 0xc2, 0x72, 0x76, 0xa5, 0x33, 0xc3, 0x5b, 0xf5, 0x1d, 0x95, 0x49, 0x0b, 0xfe, 0xc5, 0x78, 0x68, 0xa9, 0xb9, 0x44, 0x33, 0xed, 0xa4, 0x57, 0x9d, 0x61, 0xbb, 0x2c, 0x8e, 0x80, 0xc4, 0x5d, 0x94, 0x9b, 0xca, 0xf6, 0xf0, 0xbb, 0xc7, 0x6b, 0xc2, 0x7c, 0x95, 0x93, 0x99, 0x45, 0x05, 0x2a, 0xd1, 0xa1, 0x10, 0x14, 0x75, 0x65, 0x56, 0xc6, 0xf9, 0x78, }; static const unsigned char ecdsa_secp256k1_sha3_256_5600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5600_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5600 = { .name = "ecdsa_secp256k1_sha3_256_5600", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5600_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5600_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5600_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 301 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5601 for ECDSA, tcId is 302 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5601_pubkey[] = { 0x7f, 0x77, 0xdb, 0xb4, 0xe5, 0x00, 0xdc, 0x9e, 0x40, 0x5e, 0xbd, 0x90, 0x82, 0xaf, 0xa9, 0xd0, 0xaf, 0xb5, 0xc5, 0x19, 0xfd, 0xce, 0x25, 0x29, 0x10, 0xfc, 0xc9, 0x20, 0x28, 0x95, 0x66, 0x1c, 0xef, 0xce, 0x51, 0xd1, 0x6a, 0x51, 0x70, 0x0a, 0x67, 0x2d, 0xb8, 0xde, 0x2a, 0xf0, 0x70, 0x39, 0x1a, 0x02, 0xda, 0x1c, 0x6a, 0x39, 0x8b, 0x7d, 0xda, 0x94, 0x40, 0x3a, 0x06, 0xdb, 0x03, 0xd1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5601_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5601 = { .name = "ecdsa_secp256k1_sha3_256_5601", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5601_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5601_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5601_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 302 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5602 for ECDSA, tcId is 303 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5602_pubkey[] = { 0x6d, 0x4f, 0x41, 0xc9, 0xc4, 0xc1, 0x5f, 0x02, 0xa1, 0x99, 0x26, 0x4a, 0x51, 0x26, 0x6e, 0xd7, 0x93, 0x95, 0x2a, 0x7c, 0xea, 0x79, 0x12, 0x5d, 0xcd, 0xed, 0x80, 0x5e, 0xd7, 0xa5, 0x4c, 0x13, 0x50, 0x31, 0x4f, 0xa9, 0x27, 0x96, 0x6b, 0x90, 0xb6, 0xc4, 0xe5, 0x7c, 0xb5, 0x21, 0x66, 0x6f, 0xce, 0x4c, 0xb8, 0x1b, 0x7e, 0x4d, 0x35, 0x50, 0xd7, 0x29, 0xfe, 0x6d, 0xd6, 0xbb, 0xe5, 0xab, }; static const unsigned char ecdsa_secp256k1_sha3_256_5602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5602_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5602 = { .name = "ecdsa_secp256k1_sha3_256_5602", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5602_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5602_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5602_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 303 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5603 for ECDSA, tcId is 304 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5603_pubkey[] = { 0x3b, 0xd4, 0xa6, 0x02, 0x11, 0x9b, 0xc5, 0x0c, 0xfd, 0x05, 0xaa, 0x39, 0x5c, 0x3c, 0x9f, 0x75, 0x3b, 0x38, 0x3b, 0xdd, 0x95, 0x39, 0xd2, 0x7a, 0x1a, 0x14, 0x30, 0x33, 0xfc, 0xfc, 0xaa, 0xa8, 0x92, 0xd7, 0x54, 0x38, 0xeb, 0xa5, 0xaf, 0x69, 0x31, 0x96, 0xd4, 0xb7, 0x95, 0x31, 0x84, 0xe2, 0xd6, 0x49, 0xa0, 0x84, 0x5d, 0x11, 0xaf, 0x3c, 0x7d, 0x39, 0xe3, 0xb1, 0xf5, 0x44, 0x9c, 0x19, }; static const unsigned char ecdsa_secp256k1_sha3_256_5603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5603_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5603 = { .name = "ecdsa_secp256k1_sha3_256_5603", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5603_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5603_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5603_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 304 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5604 for ECDSA, tcId is 305 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5604_pubkey[] = { 0x7c, 0x98, 0x1d, 0x68, 0x70, 0x57, 0x57, 0x25, 0x42, 0x7f, 0xc8, 0x4c, 0xe6, 0xb5, 0xf7, 0x06, 0xaf, 0x6e, 0x8c, 0x62, 0xb4, 0xb5, 0xf7, 0xf7, 0x2c, 0x3e, 0xe2, 0x86, 0x08, 0x36, 0x99, 0x6d, 0x29, 0xf0, 0x74, 0x76, 0xcb, 0xf3, 0xf9, 0x3a, 0x34, 0xe7, 0x3f, 0x73, 0x76, 0x58, 0x07, 0x06, 0x42, 0xc6, 0x6d, 0x0e, 0x34, 0xf5, 0xd5, 0x6c, 0x71, 0x5a, 0x26, 0xb0, 0x99, 0x07, 0x84, 0x13, }; static const unsigned char ecdsa_secp256k1_sha3_256_5604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5604_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5604 = { .name = "ecdsa_secp256k1_sha3_256_5604", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5604_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5604_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5604_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 305 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5605 for ECDSA, tcId is 306 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5605_pubkey[] = { 0xd7, 0x5a, 0x78, 0xcf, 0x29, 0x6b, 0x58, 0xae, 0xb5, 0x2f, 0xae, 0xe6, 0xa9, 0x34, 0x83, 0x85, 0xbc, 0xdc, 0x61, 0xf9, 0x80, 0xda, 0x8a, 0xd6, 0xf2, 0x86, 0x54, 0xd8, 0x6f, 0xe5, 0x16, 0xe2, 0x0c, 0xe9, 0x95, 0x21, 0x82, 0xf5, 0xf0, 0x6c, 0xba, 0x50, 0xdb, 0x8c, 0x65, 0xaa, 0x6f, 0x8c, 0xf1, 0xa3, 0x2f, 0x2a, 0x46, 0x59, 0x9c, 0x0a, 0x2a, 0xbb, 0x4c, 0x14, 0x02, 0xce, 0xf4, 0x67, }; static const unsigned char ecdsa_secp256k1_sha3_256_5605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5605_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5605 = { .name = "ecdsa_secp256k1_sha3_256_5605", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5605_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5605_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5605_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 306 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5606 for ECDSA, tcId is 307 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5606_pubkey[] = { 0x0a, 0x35, 0xa4, 0x2f, 0xb4, 0x05, 0x7e, 0x11, 0xe3, 0x32, 0x44, 0x2d, 0x73, 0x72, 0x9c, 0xdc, 0x68, 0x4e, 0x7e, 0x0a, 0x78, 0x75, 0xec, 0x93, 0x33, 0x37, 0xe7, 0x4a, 0xb1, 0xe1, 0x7d, 0xe6, 0x21, 0x52, 0xe3, 0xa6, 0x55, 0x88, 0x65, 0xd7, 0xf3, 0x0a, 0x95, 0x0c, 0x64, 0xe9, 0xf2, 0xe9, 0xd2, 0xf0, 0x6c, 0x27, 0x03, 0xd2, 0xa1, 0x98, 0x4a, 0x79, 0x44, 0x5d, 0x38, 0x70, 0xa1, 0xcf, }; static const unsigned char ecdsa_secp256k1_sha3_256_5606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5606_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5606 = { .name = "ecdsa_secp256k1_sha3_256_5606", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5606_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5606_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5606_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 307 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5607 for ECDSA, tcId is 308 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5607_pubkey[] = { 0x70, 0x5e, 0x0c, 0x3e, 0xa1, 0xca, 0x44, 0x3a, 0x01, 0x05, 0x89, 0x6e, 0x7a, 0xf2, 0xb8, 0x91, 0xa0, 0x82, 0x43, 0xcc, 0xa5, 0x10, 0xcb, 0x5f, 0xff, 0xae, 0xbd, 0xd8, 0x6e, 0xc6, 0xfc, 0x8c, 0x25, 0xd1, 0x16, 0xfc, 0xf9, 0x12, 0xe8, 0x24, 0x6a, 0x64, 0xd5, 0x87, 0x84, 0x36, 0xdf, 0xc9, 0x58, 0xb5, 0x9d, 0x46, 0x62, 0xa4, 0xb2, 0x27, 0xa0, 0x06, 0x87, 0x6b, 0x50, 0x42, 0xfa, 0x58, }; static const unsigned char ecdsa_secp256k1_sha3_256_5607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5607_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5607 = { .name = "ecdsa_secp256k1_sha3_256_5607", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5607_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5607_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5607_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 308 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5608 for ECDSA, tcId is 309 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5608_pubkey[] = { 0xe3, 0x22, 0xc7, 0xaa, 0xd4, 0xa7, 0x00, 0x24, 0xc4, 0xf8, 0x0e, 0xa3, 0x73, 0xe7, 0xe8, 0x5f, 0x23, 0xdc, 0xbd, 0x11, 0xf1, 0x86, 0xd5, 0x5d, 0x5a, 0x74, 0x4c, 0xd0, 0xf4, 0x59, 0xf6, 0xdb, 0x71, 0xd5, 0x4d, 0xb0, 0x9e, 0xc6, 0x6e, 0xea, 0xdb, 0xed, 0xba, 0xcf, 0xe2, 0x25, 0x5b, 0xb8, 0x7d, 0x0c, 0x1a, 0x73, 0x7b, 0x3d, 0x3b, 0x1c, 0x7b, 0x76, 0xce, 0x78, 0xd6, 0x34, 0x2d, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha3_256_5608_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5608_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5608 = { .name = "ecdsa_secp256k1_sha3_256_5608", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5608_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5608_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5608_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 309 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5609 for ECDSA, tcId is 310 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5609_pubkey[] = { 0xe3, 0x22, 0xc7, 0xaa, 0xd4, 0xa7, 0x00, 0x24, 0xc4, 0xf8, 0x0e, 0xa3, 0x73, 0xe7, 0xe8, 0x5f, 0x23, 0xdc, 0xbd, 0x11, 0xf1, 0x86, 0xd5, 0x5d, 0x5a, 0x74, 0x4c, 0xd0, 0xf4, 0x59, 0xf6, 0xdb, 0x71, 0xd5, 0x4d, 0xb0, 0x9e, 0xc6, 0x6e, 0xea, 0xdb, 0xed, 0xba, 0xcf, 0xe2, 0x25, 0x5b, 0xb8, 0x7d, 0x0c, 0x1a, 0x73, 0x7b, 0x3d, 0x3b, 0x1c, 0x7b, 0x76, 0xce, 0x78, 0xd6, 0x34, 0x2d, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha3_256_5609_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5609_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5609 = { .name = "ecdsa_secp256k1_sha3_256_5609", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5609_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5609_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5609_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 310 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5610 for ECDSA, tcId is 311 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5610_pubkey[] = { 0x4b, 0x24, 0x2e, 0xe4, 0xa0, 0xa3, 0x78, 0x35, 0xc5, 0x90, 0xf6, 0xab, 0xe1, 0xaf, 0x66, 0x68, 0x47, 0x6c, 0x9c, 0x12, 0xc1, 0x5b, 0x8a, 0xff, 0x77, 0x6c, 0x7e, 0x7a, 0x8a, 0x45, 0x23, 0x19, 0xb7, 0x20, 0xcf, 0xfa, 0xe6, 0x42, 0x3c, 0xf4, 0x7a, 0xa3, 0x75, 0xfe, 0x3b, 0x84, 0x34, 0x6a, 0x83, 0xb0, 0x9e, 0x0e, 0xfa, 0x24, 0x5e, 0xb8, 0x9d, 0x99, 0xb2, 0x58, 0x54, 0x51, 0x60, 0x3d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5610_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5610_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5610 = { .name = "ecdsa_secp256k1_sha3_256_5610", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5610_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5610_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5610_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 311 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5611 for ECDSA, tcId is 312 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5611_pubkey[] = { 0xf9, 0x53, 0x2a, 0xa1, 0x89, 0x13, 0x8b, 0x5e, 0x20, 0x3f, 0x8f, 0x3a, 0x9a, 0xcf, 0x03, 0xaf, 0xfa, 0x80, 0x79, 0x4f, 0x37, 0xb6, 0x47, 0xac, 0x28, 0x92, 0x67, 0xe8, 0x29, 0x3e, 0xde, 0xdc, 0x61, 0xac, 0x8a, 0xc7, 0x34, 0xbc, 0x4c, 0x76, 0x76, 0xbb, 0xbf, 0x57, 0xea, 0xd5, 0x0b, 0x49, 0x81, 0xd9, 0xbc, 0xee, 0xe0, 0x17, 0x2e, 0x94, 0x7c, 0x22, 0xc0, 0x5f, 0x44, 0x24, 0xc9, 0xb2, }; static const unsigned char ecdsa_secp256k1_sha3_256_5611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5611_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5611 = { .name = "ecdsa_secp256k1_sha3_256_5611", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5611_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5611_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5611_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 312 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5612 for ECDSA, tcId is 313 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5612_pubkey[] = { 0x0f, 0x22, 0x56, 0x39, 0x2b, 0xbc, 0x44, 0x71, 0x4d, 0x5f, 0xd6, 0x98, 0xb6, 0x11, 0xb7, 0x14, 0x0c, 0x30, 0x31, 0x84, 0x5f, 0x14, 0xf8, 0x66, 0x0b, 0xae, 0xa5, 0xec, 0x83, 0x00, 0x88, 0xf5, 0xd5, 0x65, 0x0d, 0xc0, 0xf7, 0x84, 0xbd, 0x90, 0x7f, 0x41, 0xb1, 0x39, 0x36, 0xa2, 0xd1, 0x3d, 0x0e, 0x05, 0xde, 0xb1, 0x03, 0xef, 0xb0, 0x69, 0xf8, 0xa7, 0x71, 0xb5, 0x27, 0x32, 0x21, 0x55, }; static const unsigned char ecdsa_secp256k1_sha3_256_5612_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5612_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5612 = { .name = "ecdsa_secp256k1_sha3_256_5612", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5612_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5612_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5612_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 313 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5613 for ECDSA, tcId is 314 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5613_pubkey[] = { 0x26, 0x0b, 0x66, 0xd4, 0x7b, 0x3a, 0x3b, 0xe4, 0x43, 0x64, 0xf1, 0xfb, 0xdd, 0x57, 0x6b, 0x82, 0x48, 0x93, 0xce, 0x43, 0xc7, 0x8e, 0x47, 0x4d, 0xb3, 0xc1, 0xb2, 0x51, 0x06, 0xfb, 0x48, 0x65, 0x03, 0x62, 0x0b, 0x60, 0x68, 0x87, 0x7f, 0x8b, 0x90, 0x18, 0xef, 0xe9, 0x81, 0x91, 0xb2, 0x4c, 0xf6, 0x67, 0x05, 0x3c, 0x09, 0xca, 0x94, 0xda, 0x7b, 0xcf, 0x85, 0x4b, 0xf6, 0x92, 0x43, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5613_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5613_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5613 = { .name = "ecdsa_secp256k1_sha3_256_5613", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5613_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5613_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5613_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 314 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5614 for ECDSA, tcId is 315 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5614_pubkey[] = { 0x30, 0x54, 0x9b, 0xef, 0x51, 0x74, 0x96, 0x2c, 0x56, 0x50, 0x94, 0x4b, 0xbd, 0x78, 0x33, 0x22, 0x03, 0x38, 0xe2, 0xe3, 0x1f, 0x27, 0x77, 0x56, 0x66, 0xf7, 0xd1, 0x24, 0xd8, 0xed, 0x77, 0x83, 0xf4, 0x3e, 0xe6, 0x59, 0x9a, 0x84, 0x58, 0xc9, 0xd7, 0x86, 0xdd, 0x50, 0xcc, 0x67, 0x6b, 0xab, 0xf4, 0x89, 0x75, 0x7a, 0xde, 0x3e, 0x26, 0x7d, 0x87, 0xbf, 0x26, 0x54, 0xa3, 0x4a, 0xdb, 0x20, }; static const unsigned char ecdsa_secp256k1_sha3_256_5614_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5614_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x82, 0xc8, 0x1e, 0x3d, 0x60, 0x2c, 0xfd, 0xab, 0x62, 0xe0, 0x59, 0xb1, 0x95, 0x62, 0xbb, 0x03, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5614 = { .name = "ecdsa_secp256k1_sha3_256_5614", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5614_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5614_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5614_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 315 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5615 for ECDSA, tcId is 316 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5615_pubkey[] = { 0x22, 0x28, 0x3c, 0xa6, 0xf0, 0x55, 0x43, 0x9e, 0x85, 0x40, 0x45, 0x4f, 0x63, 0xff, 0x02, 0xe2, 0xe1, 0x14, 0x1d, 0x10, 0xe3, 0x4a, 0x54, 0x73, 0x75, 0x99, 0xfa, 0xe6, 0x62, 0x66, 0x63, 0x6d, 0xc8, 0xfe, 0xf9, 0x7c, 0x98, 0xfa, 0x11, 0x60, 0xf8, 0x29, 0xb7, 0xc1, 0x32, 0x6a, 0x06, 0x9e, 0x0b, 0xb4, 0x42, 0x42, 0x8f, 0x15, 0x03, 0xe8, 0xcf, 0xbb, 0x61, 0x6c, 0xd8, 0x11, 0x88, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_256_5615_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5615_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5615 = { .name = "ecdsa_secp256k1_sha3_256_5615", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5615_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5615_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5615_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 316 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5616 for ECDSA, tcId is 317 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5616_pubkey[] = { 0x06, 0x8f, 0x52, 0x3d, 0x44, 0xcb, 0xb1, 0x4a, 0x24, 0x93, 0x94, 0x86, 0x1c, 0x4f, 0x41, 0x7c, 0x19, 0xdb, 0xa7, 0x2f, 0x74, 0xe1, 0xb1, 0x23, 0xb4, 0xcb, 0xb8, 0x9c, 0x74, 0x54, 0x1b, 0x41, 0x44, 0xcd, 0x65, 0x4d, 0x2b, 0x58, 0x71, 0x94, 0x2e, 0x8d, 0x18, 0x1f, 0x9e, 0x38, 0xf3, 0x94, 0x6b, 0x3a, 0x73, 0x75, 0x5a, 0x20, 0xe6, 0x8b, 0xa5, 0x55, 0xd5, 0x6d, 0xe6, 0xe2, 0x90, 0xf4, }; static const unsigned char ecdsa_secp256k1_sha3_256_5616_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5616_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5616 = { .name = "ecdsa_secp256k1_sha3_256_5616", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5616_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5616_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5616_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 317 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5617 for ECDSA, tcId is 318 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5617_pubkey[] = { 0x12, 0x36, 0x70, 0xcc, 0xce, 0xb8, 0x6a, 0x9d, 0x5f, 0xce, 0x24, 0xf0, 0x70, 0xde, 0x8d, 0xfa, 0xb0, 0x93, 0xee, 0x66, 0x04, 0x7b, 0x17, 0xc1, 0xd7, 0xcc, 0xa4, 0x73, 0x48, 0x20, 0xda, 0xed, 0x76, 0x49, 0x5f, 0x92, 0x80, 0x49, 0x99, 0xf8, 0x94, 0xc0, 0x18, 0x4f, 0x72, 0x23, 0x5b, 0x2d, 0xb0, 0xa7, 0xd8, 0xad, 0x07, 0x74, 0x27, 0xb3, 0x46, 0xd4, 0x1f, 0x24, 0xeb, 0x22, 0x10, 0xa1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5617_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5617_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x1d, 0x10, 0x92, 0x96, 0xe9, 0xac, 0x43, 0xdf, 0xa9, 0x2b, 0xcd, 0xbc, 0xaa, 0x64, 0xc6, 0xd3, 0xfb, 0x85, 0x8a, 0x82, 0x2b, 0x6e, 0x51, 0x9d, 0x9f, 0xd2, 0xe4, 0x52, 0x79, 0xd3, 0xbf, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5617 = { .name = "ecdsa_secp256k1_sha3_256_5617", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5617_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5617_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5617_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5618 for ECDSA, tcId is 319 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5618_pubkey[] = { 0xf5, 0xab, 0x53, 0xb5, 0x65, 0xf1, 0x70, 0xa3, 0xa8, 0x3e, 0x61, 0xdc, 0x8c, 0xb5, 0xbb, 0x3a, 0x21, 0x73, 0x98, 0xf0, 0x88, 0x0d, 0xb8, 0x0c, 0x41, 0xda, 0x74, 0x6d, 0x53, 0x39, 0x93, 0x97, 0x3d, 0x11, 0x3d, 0x69, 0xa2, 0x3e, 0x02, 0xae, 0xb2, 0xe3, 0x35, 0xb2, 0x8b, 0x85, 0x49, 0x0a, 0xce, 0x7d, 0xf1, 0x82, 0x79, 0xe2, 0xf4, 0xa7, 0xbd, 0x6f, 0x69, 0xc6, 0x56, 0xfe, 0x67, 0x63, }; static const unsigned char ecdsa_secp256k1_sha3_256_5618_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5618_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3a, 0x8a, 0x53, 0xa9, 0xb9, 0x8a, 0x21, 0x11, 0xe0, 0xc5, 0xe7, 0x58, 0xa6, 0x1f, 0x57, 0x82, 0x2e, 0xad, 0x6a, 0xc1, 0xb9, 0x48, 0x9d, 0x7b, 0x1b, 0xae, 0x29, 0xdc, 0x1d, 0xda, 0x7a, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5618 = { .name = "ecdsa_secp256k1_sha3_256_5618", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5618_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5618_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5618_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5619 for ECDSA, tcId is 320 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5619_pubkey[] = { 0xd0, 0xab, 0xce, 0xe8, 0x86, 0xb6, 0x80, 0x23, 0x33, 0x90, 0xf1, 0xe6, 0xd5, 0xce, 0x27, 0x05, 0x6c, 0xbf, 0xec, 0x35, 0xba, 0x92, 0x31, 0x72, 0x58, 0x49, 0xa3, 0x71, 0x4b, 0x06, 0xe8, 0x28, 0x5b, 0xb1, 0x13, 0x95, 0x65, 0x2a, 0x85, 0x30, 0x1c, 0xf5, 0x11, 0x0d, 0x75, 0xd4, 0x04, 0xa1, 0xf4, 0x49, 0xab, 0x2a, 0xc4, 0x76, 0x70, 0x13, 0xfd, 0x58, 0x6a, 0x9b, 0x58, 0x11, 0x40, 0x06, }; static const unsigned char ecdsa_secp256k1_sha3_256_5619_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5619_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xac, 0x24, 0x16, 0x84, 0x0b, 0x83, 0xe8, 0x9e, 0x18, 0x8d, 0x94, 0x46, 0x3b, 0xd1, 0x9c, 0xdc, 0x29, 0x6f, 0xb2, 0xf8, 0x91, 0x78, 0x2d, 0xbd, 0x73, 0x6b, 0x72, 0x41, 0xd3, 0x71, 0xe8, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5619 = { .name = "ecdsa_secp256k1_sha3_256_5619", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5619_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5619_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5619_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5620 for ECDSA, tcId is 321 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5620_pubkey[] = { 0x0f, 0x82, 0x39, 0x2f, 0x49, 0x12, 0xba, 0xd8, 0xf4, 0xfc, 0xb1, 0x51, 0xb2, 0x90, 0x00, 0x31, 0x74, 0x52, 0x6a, 0x8c, 0xb2, 0x70, 0x91, 0xd3, 0x8c, 0x2a, 0xed, 0x16, 0x30, 0x40, 0x69, 0x8c, 0xdc, 0x34, 0xe9, 0x54, 0x2d, 0x26, 0x4e, 0xcf, 0xfc, 0xd6, 0x33, 0x99, 0x63, 0x80, 0x4d, 0x68, 0xfc, 0x8a, 0x73, 0x76, 0x31, 0x2b, 0x8a, 0x59, 0x0d, 0x83, 0x6e, 0x1c, 0xe1, 0xa9, 0xe6, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_256_5620_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5620_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2e, 0xc9, 0x28, 0x82, 0x61, 0xd8, 0xfb, 0xcd, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x60, 0xc9, 0x08, 0x62, 0x4c, 0x88, 0x69, 0x16, 0x1e, 0x6b, 0x15, 0xd7, 0x6e, 0x66, 0xec, 0x5d, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5620 = { .name = "ecdsa_secp256k1_sha3_256_5620", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5620_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5620_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5620_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5621 for ECDSA, tcId is 322 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5621_pubkey[] = { 0x3b, 0x84, 0x97, 0xa0, 0x03, 0x42, 0xaa, 0x0c, 0xa8, 0x14, 0x08, 0xf4, 0x0d, 0xe0, 0x5e, 0x93, 0x8a, 0x15, 0x1e, 0x62, 0x07, 0xa9, 0x12, 0xbc, 0x35, 0xa1, 0x3a, 0xb8, 0xce, 0x86, 0x82, 0xd4, 0x75, 0xd9, 0xd4, 0x0f, 0x07, 0xfa, 0x88, 0xa7, 0x41, 0x8e, 0x10, 0xd0, 0xf9, 0x2b, 0xd1, 0x0f, 0x64, 0x60, 0x16, 0xbe, 0x18, 0x1c, 0x04, 0xaf, 0x65, 0xe9, 0xac, 0x18, 0x58, 0xf8, 0xe1, 0x45, }; static const unsigned char ecdsa_secp256k1_sha3_256_5621_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5621_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x92, 0x88, 0x26, 0x1d, 0x8f, 0xbc, 0xda, 0x8c, 0xe4, 0x83, 0xb4, 0x2f, 0xb3, 0x46, 0x10, 0x47, 0x0f, 0x37, 0x56, 0x7e, 0x69, 0x2d, 0xb8, 0x1c, 0xe2, 0xca, 0xa2, 0xfe, 0x67, 0x59, 0x46, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5621 = { .name = "ecdsa_secp256k1_sha3_256_5621", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5621_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5621_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5621_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 322 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5622 for ECDSA, tcId is 323 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5622_pubkey[] = { 0xe9, 0x59, 0x14, 0xe5, 0xd6, 0x92, 0xf4, 0xc3, 0x07, 0x24, 0xc5, 0x0a, 0x23, 0x2d, 0x43, 0x2a, 0x09, 0x66, 0x4e, 0x1d, 0x48, 0x5e, 0xcf, 0xc3, 0xa8, 0x29, 0x9b, 0x70, 0x07, 0xb9, 0x90, 0xb5, 0x01, 0xa2, 0x10, 0x60, 0xc5, 0x29, 0xf3, 0x77, 0x6a, 0x1d, 0xf1, 0xb3, 0x82, 0x81, 0x57, 0xdb, 0xcd, 0x43, 0x2e, 0x84, 0xd3, 0xac, 0x22, 0x95, 0x85, 0xbc, 0x92, 0x34, 0x34, 0x17, 0x88, 0xa8, }; static const unsigned char ecdsa_secp256k1_sha3_256_5622_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5622_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x25, 0x10, 0x4c, 0x3b, 0x1f, 0x79, 0xb5, 0x19, 0xc9, 0x07, 0x68, 0x5f, 0x66, 0x8c, 0x20, 0x8f, 0x63, 0xbf, 0xd0, 0x16, 0x23, 0x12, 0xcf, 0xfe, 0x05, 0xc2, 0xe7, 0x6f, 0xfe, 0x7c, 0x4a, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5622 = { .name = "ecdsa_secp256k1_sha3_256_5622", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5622_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5622_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5622_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 323 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5623 for ECDSA, tcId is 324 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5623_pubkey[] = { 0xaf, 0x3e, 0x08, 0x84, 0x49, 0xe9, 0x7d, 0xf3, 0xdf, 0x47, 0x8c, 0x59, 0x53, 0x69, 0x65, 0xa1, 0x85, 0x98, 0x12, 0x2e, 0xfc, 0x5b, 0xb2, 0x0d, 0x23, 0xb9, 0xf5, 0xe4, 0x1b, 0xc8, 0x4e, 0x8a, 0x40, 0x31, 0x77, 0xe8, 0x36, 0xfa, 0x23, 0xbb, 0x3b, 0xa2, 0xb8, 0xfe, 0x60, 0x05, 0xc8, 0xd7, 0x9e, 0x13, 0x92, 0xdc, 0x3b, 0x72, 0x6d, 0xca, 0x4e, 0xca, 0x14, 0xe8, 0x8c, 0x00, 0xfd, 0xfd, }; static const unsigned char ecdsa_secp256k1_sha3_256_5623_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5623_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x61, 0xd8, 0xfb, 0xcd, 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xc9, 0x84, 0x7a, 0x30, 0xc5, 0x83, 0xc9, 0xb9, 0xf4, 0x95, 0x59, 0x1f, 0xa1, 0xe0, 0x37, 0xb4, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5623 = { .name = "ecdsa_secp256k1_sha3_256_5623", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5623_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5623_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5623_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 324 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5624 for ECDSA, tcId is 325 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5624_pubkey[] = { 0xac, 0xaf, 0x20, 0x8d, 0x26, 0x99, 0x5e, 0x46, 0x4e, 0xbc, 0xc5, 0x4a, 0x68, 0x3b, 0x04, 0x98, 0x5c, 0x7b, 0xe7, 0x44, 0x48, 0x92, 0x7e, 0x5c, 0x15, 0x33, 0x28, 0x52, 0x88, 0x6e, 0x6d, 0x74, 0x8b, 0x18, 0x2e, 0x24, 0x68, 0xf8, 0x6c, 0xae, 0x75, 0xd0, 0x45, 0xdc, 0x42, 0x63, 0x83, 0xd2, 0xda, 0x3c, 0x7e, 0x3a, 0xb5, 0x15, 0x58, 0x0f, 0x3f, 0xf6, 0x52, 0x3f, 0x03, 0xce, 0x40, 0xdc, }; static const unsigned char ecdsa_secp256k1_sha3_256_5624_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5624_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x85, 0x67, 0x39, 0x76, 0x4f, 0xc5, 0x0a, 0x93, 0x0e, 0x42, 0x01, 0x32, 0x5d, 0x77, 0x81, 0x5b, 0xcf, 0x9b, 0x76, 0x81, 0xed, 0x11, 0x21, 0x3a, 0x05, 0x3e, 0x81, 0x6c, 0x5d, 0xf8, 0xe6, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5624 = { .name = "ecdsa_secp256k1_sha3_256_5624", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5624_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5624_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5624_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 325 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5625 for ECDSA, tcId is 326 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5625_pubkey[] = { 0x78, 0x21, 0xe2, 0x0d, 0x39, 0x38, 0xbb, 0xb4, 0x82, 0x40, 0xff, 0x48, 0x09, 0x6e, 0x92, 0x8e, 0x40, 0x4e, 0xd9, 0x1e, 0xef, 0xa3, 0x7e, 0xa7, 0xcb, 0x2c, 0x8f, 0x33, 0x93, 0x47, 0xb6, 0xee, 0x6f, 0x7a, 0xda, 0x5c, 0x81, 0x4f, 0x0f, 0x06, 0xea, 0xe9, 0x51, 0x6a, 0x78, 0x48, 0x36, 0x1c, 0xc3, 0xac, 0x2e, 0xb4, 0x45, 0x0a, 0x44, 0x55, 0x74, 0x3d, 0x36, 0x3f, 0x84, 0xf0, 0xdd, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5625_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5625_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x51, 0x2c, 0x9e, 0x11, 0x78, 0xd2, 0x80, 0xd8, 0x46, 0x44, 0x12, 0xf2, 0xbd, 0xf2, 0xdd, 0x9a, 0x7e, 0x80, 0x65, 0xb7, 0xba, 0x92, 0x16, 0xf7, 0x00, 0x77, 0x97, 0x94, 0xc9, 0xa8, 0x49, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5625 = { .name = "ecdsa_secp256k1_sha3_256_5625", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5625_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5625_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5625_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 326 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5626 for ECDSA, tcId is 327 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5626_pubkey[] = { 0x9b, 0x0e, 0xf1, 0x7c, 0x0b, 0xd3, 0xde, 0xa1, 0x1b, 0xe2, 0xc3, 0x35, 0x80, 0x58, 0xa1, 0xe1, 0x0b, 0x02, 0x83, 0x10, 0x8b, 0xf7, 0x9a, 0xaa, 0xe3, 0x43, 0x55, 0xc2, 0x32, 0x9e, 0x84, 0xa0, 0x95, 0x5f, 0x5c, 0xf7, 0xcb, 0x59, 0x3e, 0xe7, 0x56, 0xcf, 0x4c, 0x9f, 0x2f, 0x0a, 0x48, 0x8a, 0x29, 0x93, 0xae, 0xba, 0x92, 0x33, 0x20, 0xbf, 0xab, 0x98, 0xc6, 0xf7, 0x2e, 0x07, 0x9d, 0x73, }; static const unsigned char ecdsa_secp256k1_sha3_256_5626_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5626_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc9, 0xe4, 0xbe, 0x24, 0x1b, 0xd5, 0x2c, 0x69, 0xa2, 0x48, 0x6b, 0x6d, 0x22, 0x29, 0x1f, 0x50, 0x2f, 0x64, 0xef, 0xab, 0x87, 0xe2, 0x44, 0xd3, 0x3c, 0xac, 0xce, 0x68, 0x67, 0x2f, 0xd4, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5626 = { .name = "ecdsa_secp256k1_sha3_256_5626", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5626_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5626_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5626_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 327 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5627 for ECDSA, tcId is 328 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5627_pubkey[] = { 0x4b, 0xa9, 0x73, 0x63, 0xa7, 0xe1, 0x4c, 0xe0, 0x94, 0x80, 0xbd, 0x3b, 0x88, 0x49, 0x1a, 0x7a, 0x50, 0x1b, 0x5d, 0x48, 0x71, 0xb4, 0x70, 0x49, 0x8a, 0xbc, 0x9a, 0x69, 0x8c, 0x06, 0x99, 0x55, 0x8c, 0xe9, 0xe1, 0x98, 0xc1, 0xd4, 0x8e, 0xc6, 0x65, 0x0d, 0x59, 0xc1, 0x5f, 0x9e, 0x1f, 0xb4, 0x0d, 0xc0, 0xad, 0xcc, 0xde, 0xa6, 0x32, 0x96, 0x13, 0xe3, 0xa9, 0xa4, 0xde, 0xcc, 0x80, 0xf8, }; static const unsigned char ecdsa_secp256k1_sha3_256_5627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5627_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb0, 0xa1, 0x05, 0x28, 0xcd, 0xed, 0x5f, 0x2b, 0x80, 0x52, 0x0a, 0xc5, 0x49, 0x33, 0x8c, 0x3f, 0x61, 0xbb, 0xb6, 0xf6, 0x98, 0x77, 0xaa, 0x1b, 0x2f, 0xe9, 0x12, 0x9c, 0x0c, 0xe7, 0x17, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5627 = { .name = "ecdsa_secp256k1_sha3_256_5627", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5627_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5627_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5627_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 328 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5628 for ECDSA, tcId is 329 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5628_pubkey[] = { 0x0b, 0xad, 0x8d, 0x9f, 0x01, 0x57, 0x70, 0xed, 0x8a, 0xc6, 0x54, 0x52, 0x87, 0x17, 0x73, 0x42, 0x14, 0xff, 0xf8, 0x13, 0x80, 0x9b, 0x5e, 0xb8, 0x86, 0xf8, 0x7c, 0x46, 0xd1, 0xba, 0xc6, 0x8f, 0xc9, 0x13, 0x4e, 0xbe, 0xd0, 0xd7, 0x9a, 0x82, 0x32, 0x1c, 0xec, 0x4c, 0x77, 0xd5, 0xb9, 0x1c, 0x1c, 0x7e, 0x3c, 0x34, 0xf6, 0xa6, 0x9c, 0xc1, 0x01, 0x40, 0x12, 0x74, 0x21, 0xb8, 0x7b, 0x92, }; static const unsigned char ecdsa_secp256k1_sha3_256_5628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5628_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf1, 0x77, 0xb6, 0xb4, 0x8b, 0x29, 0xde, 0x10, 0x2b, 0x6a, 0x19, 0x21, 0xaa, 0xcd, 0x9c, 0x94, 0xbc, 0xec, 0x17, 0xa5, 0x99, 0x91, 0x77, 0x6c, 0xef, 0xe8, 0xec, 0x63, 0x93, 0x4c, 0x61, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5628 = { .name = "ecdsa_secp256k1_sha3_256_5628", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5628_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5628_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5628_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 329 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5629 for ECDSA, tcId is 330 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5629_pubkey[] = { 0xab, 0x53, 0xf0, 0xd6, 0x64, 0xc6, 0x21, 0x13, 0x88, 0x93, 0xfc, 0x5e, 0xe2, 0xb2, 0x6a, 0xd2, 0xd6, 0x86, 0xbb, 0xbb, 0x67, 0xed, 0xa1, 0xee, 0x0d, 0xfb, 0x96, 0x09, 0xa3, 0xf5, 0x77, 0x7a, 0xfc, 0xf2, 0xd7, 0x2b, 0xbd, 0x35, 0x7b, 0xea, 0x8a, 0x15, 0x45, 0xfd, 0x4f, 0x16, 0x2f, 0x3f, 0xaf, 0x43, 0xbf, 0x74, 0x66, 0x6c, 0xf2, 0x39, 0x14, 0xc7, 0xe3, 0xd8, 0xdd, 0xe7, 0x9e, 0x97, }; static const unsigned char ecdsa_secp256k1_sha3_256_5629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5629_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe2, 0xef, 0x6d, 0x69, 0x16, 0x53, 0xbc, 0x20, 0x56, 0xd4, 0x32, 0x43, 0x55, 0x9b, 0x39, 0x2a, 0xbf, 0x29, 0x52, 0x64, 0x83, 0xda, 0x4e, 0x9e, 0x1f, 0xff, 0x7a, 0x3a, 0x56, 0x62, 0x82, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5629 = { .name = "ecdsa_secp256k1_sha3_256_5629", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5629_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5629_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5629_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 330 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5630 for ECDSA, tcId is 331 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5630_pubkey[] = { 0x41, 0x86, 0x98, 0xcf, 0xe9, 0xd5, 0x64, 0xe0, 0xe5, 0xd0, 0x4a, 0x90, 0x1c, 0x06, 0x20, 0x42, 0xd8, 0x64, 0x09, 0x15, 0x73, 0xf2, 0x82, 0x0f, 0x45, 0x92, 0xd4, 0x00, 0x27, 0xdc, 0xfe, 0x26, 0x34, 0x90, 0x9e, 0x2b, 0x92, 0xb3, 0xcb, 0xc5, 0x95, 0x20, 0x35, 0x53, 0x12, 0x1c, 0xa4, 0x6e, 0xfd, 0xda, 0x2c, 0x23, 0xca, 0x99, 0x0e, 0x1e, 0x56, 0x13, 0x73, 0x65, 0xc5, 0xa5, 0xb7, 0x95, }; static const unsigned char ecdsa_secp256k1_sha3_256_5630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5630_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd4, 0x67, 0x24, 0x1d, 0xa1, 0x7d, 0x9a, 0x30, 0x82, 0x3e, 0x4b, 0x65, 0x00, 0x68, 0xd5, 0xc0, 0xc1, 0x66, 0x8d, 0x23, 0x6e, 0x23, 0x25, 0xcf, 0x50, 0x16, 0x08, 0x11, 0x19, 0x78, 0xa2, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5630 = { .name = "ecdsa_secp256k1_sha3_256_5630", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5630_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5630_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5630_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 331 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5631 for ECDSA, tcId is 332 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5631_pubkey[] = { 0xdc, 0x05, 0x15, 0xe4, 0x00, 0xe3, 0x52, 0x7d, 0x27, 0x85, 0xe4, 0xa2, 0x1d, 0x10, 0x5a, 0xf4, 0xca, 0xe8, 0x62, 0xb3, 0x1e, 0x07, 0xde, 0x11, 0x7f, 0x11, 0xc9, 0xcd, 0x8d, 0xc9, 0xbc, 0x9b, 0x03, 0x4e, 0xef, 0x9d, 0x96, 0xa5, 0x6c, 0x0e, 0x74, 0xef, 0xa1, 0x0a, 0x9f, 0x75, 0xe2, 0xa4, 0x4d, 0x13, 0x37, 0xe8, 0x00, 0x81, 0x75, 0xfb, 0xb4, 0x0f, 0xe1, 0xc7, 0x00, 0x14, 0x46, 0x01, }; static const unsigned char ecdsa_secp256k1_sha3_256_5631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5631_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x12, 0x0b, 0x42, 0x05, 0xc1, 0xf4, 0x4f, 0x0c, 0x46, 0xca, 0x23, 0x1d, 0xe8, 0xce, 0x6e, 0x14, 0xb7, 0xd9, 0x7c, 0x48, 0xbc, 0x16, 0xde, 0xb9, 0xb5, 0xb9, 0x20, 0xe9, 0xb8, 0xf4, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5631 = { .name = "ecdsa_secp256k1_sha3_256_5631", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5631_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5631_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5631_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 332 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5632 for ECDSA, tcId is 333 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5632_pubkey[] = { 0x53, 0xff, 0x62, 0x3b, 0x31, 0x26, 0x69, 0xb4, 0x8c, 0xc8, 0xa1, 0x20, 0xb7, 0x6a, 0x81, 0x1e, 0x48, 0xa9, 0x30, 0x54, 0x8d, 0xe8, 0x47, 0x6d, 0x2c, 0x46, 0x07, 0xa5, 0x52, 0x4c, 0xe5, 0x92, 0x47, 0x7a, 0xe2, 0x8b, 0x23, 0x9f, 0x62, 0x60, 0x67, 0xa1, 0xd3, 0xde, 0xe9, 0x7d, 0x76, 0x9d, 0x37, 0xb4, 0x1b, 0x18, 0x4b, 0xae, 0x95, 0x00, 0x9e, 0x40, 0x1e, 0x44, 0x3e, 0x93, 0x0e, 0xf7, }; static const unsigned char ecdsa_secp256k1_sha3_256_5632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5632_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5632 = { .name = "ecdsa_secp256k1_sha3_256_5632", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5632_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5632_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5632_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5633 for ECDSA, tcId is 334 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5633_pubkey[] = { 0xd2, 0xd5, 0x34, 0x8d, 0xb9, 0xd8, 0x37, 0x53, 0x7c, 0x90, 0xe9, 0x30, 0xce, 0x35, 0xd4, 0xcd, 0x90, 0xe7, 0xd7, 0xa3, 0x46, 0x0b, 0x13, 0x84, 0x79, 0x0b, 0x63, 0x22, 0x81, 0xb9, 0x8c, 0xe8, 0x43, 0xcc, 0x7b, 0x9a, 0x20, 0xc8, 0x73, 0x4a, 0xc2, 0xc6, 0x2a, 0x7d, 0x20, 0x71, 0x05, 0xf5, 0xb2, 0xd8, 0x5c, 0x24, 0x18, 0x93, 0x9d, 0x35, 0xe3, 0x88, 0x6f, 0x38, 0x93, 0xcb, 0x21, 0xb4, }; static const unsigned char ecdsa_secp256k1_sha3_256_5633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5633_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5633 = { .name = "ecdsa_secp256k1_sha3_256_5633", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5633_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5633_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5633_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 334 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5634 for ECDSA, tcId is 335 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5634_pubkey[] = { 0xc5, 0xfe, 0x41, 0x59, 0xe0, 0xb6, 0x06, 0x87, 0x9f, 0xc2, 0xa1, 0x10, 0x88, 0xd6, 0x58, 0x03, 0x0e, 0xd7, 0xfe, 0xf2, 0xe6, 0x71, 0x1a, 0xab, 0x04, 0x86, 0x96, 0x12, 0xfd, 0x09, 0xc3, 0xda, 0xac, 0x9d, 0xc7, 0xe1, 0x98, 0x49, 0x5a, 0xfc, 0x0f, 0x43, 0xf4, 0xde, 0x43, 0x4b, 0x8d, 0xa2, 0x33, 0xd8, 0x49, 0x2c, 0xda, 0x28, 0xdb, 0x46, 0x0e, 0x84, 0x80, 0xae, 0xcb, 0x0a, 0x88, 0xf5, }; static const unsigned char ecdsa_secp256k1_sha3_256_5634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5634_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5634 = { .name = "ecdsa_secp256k1_sha3_256_5634", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5634_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5634_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5634_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 335 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5635 for ECDSA, tcId is 336 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5635_pubkey[] = { 0x9a, 0x72, 0xb7, 0x85, 0xc9, 0x0a, 0x69, 0x5b, 0x8e, 0x35, 0x5f, 0x5d, 0x8f, 0xc1, 0x51, 0x04, 0x6c, 0x36, 0x0d, 0x73, 0x91, 0x36, 0x24, 0x1c, 0x7f, 0xd1, 0xe7, 0x7a, 0x0e, 0x8b, 0x85, 0x45, 0xa4, 0x70, 0xb4, 0xb9, 0xa5, 0x4d, 0x1d, 0x42, 0x95, 0x6a, 0xc4, 0x3b, 0x9c, 0x9f, 0x2f, 0x0f, 0x54, 0x89, 0xda, 0x16, 0x13, 0x0b, 0x7b, 0xa1, 0xda, 0x38, 0x51, 0x6c, 0x91, 0x20, 0x09, 0xbc, }; static const unsigned char ecdsa_secp256k1_sha3_256_5635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5635_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5635 = { .name = "ecdsa_secp256k1_sha3_256_5635", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5635_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5635_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5635_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 336 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5636 for ECDSA, tcId is 337 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5636_pubkey[] = { 0x81, 0xe4, 0x27, 0xbc, 0x8f, 0x05, 0x09, 0xb1, 0x9a, 0x14, 0xc1, 0x6e, 0x88, 0x83, 0xb1, 0x26, 0x41, 0xd1, 0xd6, 0x8e, 0x07, 0x0c, 0x36, 0xab, 0x49, 0xd1, 0x69, 0x0e, 0x5d, 0xec, 0xd0, 0x61, 0xa9, 0x93, 0xd7, 0x7e, 0x9b, 0xc0, 0xf2, 0xb6, 0x6e, 0xdc, 0x6c, 0xd7, 0xca, 0x8e, 0x32, 0xbe, 0xcf, 0x32, 0x59, 0x64, 0x05, 0x62, 0x2e, 0xa2, 0x75, 0x60, 0x06, 0xde, 0xb3, 0xe8, 0xac, 0x5f, }; static const unsigned char ecdsa_secp256k1_sha3_256_5636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5636_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5636 = { .name = "ecdsa_secp256k1_sha3_256_5636", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5636_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5636_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5636_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 337 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5637 for ECDSA, tcId is 338 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5637_pubkey[] = { 0x75, 0x62, 0x79, 0xb4, 0x82, 0x7c, 0x83, 0x37, 0x21, 0x30, 0xd4, 0xfe, 0xab, 0x66, 0xa4, 0x39, 0x7e, 0xd4, 0x46, 0x3a, 0xc9, 0xee, 0x1d, 0xc8, 0xad, 0xca, 0xdd, 0xcf, 0xce, 0xc5, 0x92, 0x69, 0xb6, 0x32, 0x33, 0x37, 0xd8, 0x9a, 0xf4, 0x20, 0x8a, 0xd8, 0x81, 0x8b, 0x67, 0xe2, 0x6f, 0x9b, 0x80, 0x80, 0x31, 0x6b, 0xc4, 0x3f, 0xab, 0x53, 0xd1, 0xb3, 0xb7, 0xce, 0xa5, 0xdb, 0x99, 0x47, }; static const unsigned char ecdsa_secp256k1_sha3_256_5637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5637_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5637 = { .name = "ecdsa_secp256k1_sha3_256_5637", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5637_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5637_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5637_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 338 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5638 for ECDSA, tcId is 339 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5638_pubkey[] = { 0xcf, 0x93, 0x45, 0xe8, 0x50, 0x41, 0x7a, 0xa8, 0x1b, 0x01, 0xa9, 0x41, 0xa0, 0x2c, 0x55, 0x46, 0x95, 0x0c, 0x27, 0x83, 0x08, 0x41, 0xa4, 0x35, 0xf4, 0xf3, 0x65, 0x49, 0x27, 0xc6, 0x92, 0x6d, 0x1e, 0xc5, 0x3d, 0x04, 0x95, 0x4a, 0x47, 0xf3, 0x79, 0x15, 0xdd, 0xdb, 0x48, 0x27, 0x2f, 0xe7, 0x33, 0x32, 0x2d, 0x82, 0x50, 0x78, 0x39, 0x91, 0x70, 0x9b, 0x37, 0xd8, 0x7f, 0xa2, 0x96, 0xef, }; static const unsigned char ecdsa_secp256k1_sha3_256_5638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5638_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5638 = { .name = "ecdsa_secp256k1_sha3_256_5638", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5638_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5638_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5638_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 339 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5639 for ECDSA, tcId is 340 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5639_pubkey[] = { 0xf9, 0x5f, 0x62, 0x57, 0x95, 0xe6, 0xcc, 0x17, 0xb4, 0xc2, 0x8b, 0x1e, 0xc6, 0x43, 0xc3, 0x6a, 0x34, 0x98, 0x90, 0x84, 0xaa, 0x6a, 0x51, 0x38, 0x12, 0xc3, 0xaa, 0x9b, 0xec, 0x07, 0x30, 0x31, 0x2b, 0x22, 0xce, 0x0e, 0xee, 0xee, 0x9d, 0x45, 0xce, 0xe8, 0x63, 0xc1, 0xb1, 0xd0, 0x53, 0x81, 0xac, 0x8b, 0x2c, 0x89, 0x6a, 0x2c, 0xb1, 0x7d, 0x3e, 0x90, 0x70, 0xd4, 0x1d, 0x68, 0xbb, 0xea, }; static const unsigned char ecdsa_secp256k1_sha3_256_5639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5639_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5639 = { .name = "ecdsa_secp256k1_sha3_256_5639", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5639_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5639_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5639_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 340 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5640 for ECDSA, tcId is 341 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5640_pubkey[] = { 0xc3, 0xf0, 0xaa, 0xde, 0xf8, 0x67, 0x5d, 0xc8, 0x83, 0x2a, 0x29, 0xb3, 0x97, 0x48, 0x8d, 0x6a, 0x4f, 0xb5, 0x47, 0x80, 0xe5, 0x96, 0x7e, 0x8b, 0x43, 0x44, 0x94, 0x98, 0xc1, 0x6a, 0xd4, 0xbd, 0xcb, 0x39, 0x1b, 0x54, 0x54, 0x64, 0x66, 0x8d, 0x4d, 0x0a, 0x80, 0xb8, 0xe2, 0x83, 0x13, 0x24, 0x48, 0xa3, 0xc0, 0xbe, 0x0a, 0xbe, 0xd3, 0x04, 0xcf, 0x08, 0x39, 0xb5, 0x92, 0x0f, 0x38, 0x67, }; static const unsigned char ecdsa_secp256k1_sha3_256_5640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5640_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5640 = { .name = "ecdsa_secp256k1_sha3_256_5640", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5640_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5640_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5640_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 341 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5641 for ECDSA, tcId is 342 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5641_pubkey[] = { 0x76, 0xb9, 0x20, 0x70, 0x9a, 0x9e, 0x5d, 0xc5, 0x4a, 0x91, 0xbd, 0x47, 0x72, 0xab, 0x25, 0x93, 0xa7, 0x6f, 0x38, 0x84, 0x1d, 0xae, 0x28, 0x80, 0xf5, 0x47, 0xc3, 0xbb, 0x75, 0x3a, 0xe7, 0xc1, 0x5f, 0x01, 0xe6, 0x77, 0x9d, 0x5e, 0x3a, 0xba, 0x75, 0x99, 0x7b, 0xcf, 0x7e, 0x3f, 0x32, 0x08, 0x68, 0xba, 0x8f, 0x0b, 0xc1, 0x21, 0x0a, 0xb8, 0x0b, 0x42, 0x76, 0x0a, 0x6a, 0x70, 0x12, 0x06, }; static const unsigned char ecdsa_secp256k1_sha3_256_5641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5641_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5641 = { .name = "ecdsa_secp256k1_sha3_256_5641", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5641_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5641_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5641_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 342 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5642 for ECDSA, tcId is 343 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5642_pubkey[] = { 0xe3, 0x89, 0x51, 0x47, 0xf4, 0xe3, 0x6a, 0x13, 0xc3, 0x48, 0x3a, 0xc0, 0x0c, 0x88, 0xa7, 0x8a, 0x8f, 0xfa, 0x42, 0x47, 0x8a, 0xfc, 0x2e, 0x9d, 0x83, 0x86, 0x20, 0x5b, 0x0b, 0x1d, 0xf8, 0xb2, 0xb4, 0x15, 0x6b, 0x56, 0xba, 0x21, 0x7b, 0x1c, 0xa0, 0x8b, 0xd7, 0x7f, 0x81, 0x9a, 0xbb, 0x52, 0xd7, 0x42, 0xf6, 0xb2, 0xf7, 0xd6, 0x13, 0x53, 0xe4, 0xcc, 0x56, 0x63, 0xda, 0x48, 0x73, 0x17, }; static const unsigned char ecdsa_secp256k1_sha3_256_5642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5642_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5642 = { .name = "ecdsa_secp256k1_sha3_256_5642", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5642_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5642_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5642_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 343 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5643 for ECDSA, tcId is 344 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5643_pubkey[] = { 0xe7, 0x33, 0x99, 0x9c, 0xe3, 0x48, 0xcf, 0x7b, 0x36, 0x3d, 0xcf, 0x93, 0x19, 0x53, 0xcf, 0x1c, 0x24, 0x7c, 0x3a, 0x88, 0x74, 0x08, 0xc0, 0x64, 0xb9, 0x79, 0x1c, 0x17, 0x8a, 0xd3, 0x50, 0x29, 0x0b, 0x08, 0x49, 0x32, 0x9d, 0xa7, 0x00, 0x8e, 0x6a, 0x2d, 0x00, 0x14, 0x28, 0x83, 0xf8, 0x04, 0x1b, 0x99, 0x17, 0x52, 0x8f, 0xcc, 0x4c, 0x5b, 0xd3, 0xf7, 0x95, 0xac, 0xcf, 0xf2, 0x8e, 0xb6, }; static const unsigned char ecdsa_secp256k1_sha3_256_5643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5643_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5643 = { .name = "ecdsa_secp256k1_sha3_256_5643", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5643_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5643_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5643_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 344 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5644 for ECDSA, tcId is 345 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5644_pubkey[] = { 0x06, 0x9b, 0x66, 0xf7, 0x16, 0x90, 0x2c, 0xbd, 0x51, 0xda, 0xdf, 0xf6, 0x16, 0x44, 0xac, 0x74, 0xc6, 0xa3, 0x5e, 0x8c, 0x77, 0x6e, 0xa2, 0x2c, 0x9c, 0x34, 0x92, 0xd1, 0xd3, 0xfa, 0xa2, 0xec, 0xe4, 0x90, 0x5c, 0xc4, 0x80, 0xbc, 0x96, 0x7c, 0xe3, 0x89, 0xb8, 0x2c, 0x8e, 0x66, 0x92, 0xb1, 0x59, 0xd3, 0xfe, 0x9a, 0x26, 0x8b, 0xfc, 0x12, 0x01, 0x09, 0x93, 0x93, 0x4d, 0x7e, 0x24, 0xdd, }; static const unsigned char ecdsa_secp256k1_sha3_256_5644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5644_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5644 = { .name = "ecdsa_secp256k1_sha3_256_5644", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5644_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5644_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5644_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 345 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5645 for ECDSA, tcId is 346 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5645_pubkey[] = { 0x95, 0x43, 0xbf, 0xd3, 0xa0, 0xb6, 0x78, 0x65, 0x4f, 0xc6, 0x54, 0x58, 0xe3, 0xe6, 0x22, 0x69, 0xb3, 0x0b, 0xbd, 0x2a, 0x40, 0x28, 0x2d, 0x92, 0x05, 0x8c, 0x33, 0x11, 0xa6, 0x1b, 0xd8, 0x85, 0x33, 0x3d, 0x78, 0x22, 0x1d, 0x9a, 0xa0, 0xa9, 0x66, 0x3a, 0x5d, 0xf5, 0x12, 0x3d, 0x95, 0xc3, 0xff, 0x4a, 0x02, 0x60, 0x62, 0x78, 0x66, 0x61, 0x79, 0xe3, 0x3c, 0x94, 0xfe, 0x1e, 0x0c, 0xd1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5645_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5645 = { .name = "ecdsa_secp256k1_sha3_256_5645", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5645_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5645_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5645_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 346 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5646 for ECDSA, tcId is 347 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5646_pubkey[] = { 0xa6, 0x88, 0x4e, 0x62, 0x18, 0x64, 0x25, 0x18, 0xa2, 0x11, 0xf6, 0x7b, 0x03, 0xae, 0xf6, 0xa8, 0x4d, 0x3b, 0x32, 0xd1, 0x8e, 0xea, 0x44, 0x5b, 0x31, 0x91, 0x3e, 0x8a, 0x1a, 0x00, 0xf4, 0xc5, 0x31, 0xa3, 0x18, 0x16, 0x6c, 0xfc, 0xbc, 0xe3, 0x43, 0x07, 0x57, 0x2e, 0xb8, 0x23, 0xed, 0xc5, 0xd0, 0x33, 0x4c, 0x5e, 0x53, 0x73, 0xaf, 0x4e, 0x83, 0x2e, 0x73, 0x00, 0x47, 0x99, 0x6a, 0xca, }; static const unsigned char ecdsa_secp256k1_sha3_256_5646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5646_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5646 = { .name = "ecdsa_secp256k1_sha3_256_5646", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5646_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5646_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5646_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 347 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5647 for ECDSA, tcId is 348 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5647_pubkey[] = { 0xbd, 0x4c, 0x6f, 0x9a, 0xb3, 0x63, 0xa2, 0x04, 0xfd, 0x1a, 0xbe, 0x0f, 0x71, 0x58, 0xb8, 0x44, 0x17, 0xcc, 0xa2, 0xe0, 0xd3, 0x55, 0x27, 0x7d, 0xdc, 0x17, 0xca, 0xc2, 0x2a, 0xbd, 0xbc, 0x2d, 0xc6, 0x64, 0x69, 0xbb, 0x8e, 0x8e, 0x04, 0x18, 0x6e, 0x81, 0xa2, 0xb6, 0x93, 0xcc, 0x21, 0x21, 0xef, 0x22, 0xcb, 0x61, 0x80, 0x3a, 0x2b, 0x4e, 0xbe, 0x1a, 0x3e, 0x0d, 0x36, 0x7b, 0x29, 0x5d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5647_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xea, 0xaf, 0xe4, 0xce, 0x77, 0xcc, 0xd9, 0x13, 0x7f, 0x39, 0xed, 0xc5, 0x37, 0x0d, 0x26, 0xb7, 0x3f, 0x4d, 0xc6, 0xce, 0xad, 0xfb, 0x40, 0xa4, 0x88, 0xb2, 0xdc, 0x6c, 0x93, 0xf1, 0x99, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5647 = { .name = "ecdsa_secp256k1_sha3_256_5647", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5647_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5647_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5647_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 348 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5648 for ECDSA, tcId is 349 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5648_pubkey[] = { 0xbd, 0x4c, 0x6f, 0x9a, 0xb3, 0x63, 0xa2, 0x04, 0xfd, 0x1a, 0xbe, 0x0f, 0x71, 0x58, 0xb8, 0x44, 0x17, 0xcc, 0xa2, 0xe0, 0xd3, 0x55, 0x27, 0x7d, 0xdc, 0x17, 0xca, 0xc2, 0x2a, 0xbd, 0xbc, 0x2d, 0x39, 0x9b, 0x96, 0x44, 0x71, 0x71, 0xfb, 0xe7, 0x91, 0x7e, 0x5d, 0x49, 0x6c, 0x33, 0xde, 0xde, 0x10, 0xdd, 0x34, 0x9e, 0x7f, 0xc5, 0xd4, 0xb1, 0x41, 0xe5, 0xc1, 0xf1, 0xc9, 0x84, 0xd2, 0xd2, }; static const unsigned char ecdsa_secp256k1_sha3_256_5648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5648_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xea, 0xaf, 0xe4, 0xce, 0x77, 0xcc, 0xd9, 0x13, 0x7f, 0x39, 0xed, 0xc5, 0x37, 0x0d, 0x26, 0xb7, 0x3f, 0x4d, 0xc6, 0xce, 0xad, 0xfb, 0x40, 0xa4, 0x88, 0xb2, 0xdc, 0x6c, 0x93, 0xf1, 0x99, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5648 = { .name = "ecdsa_secp256k1_sha3_256_5648", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5648_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5648_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5648_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 349 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5649 for ECDSA, tcId is 350 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5649_pubkey[] = { 0xe1, 0x81, 0x5b, 0xb1, 0x65, 0x3b, 0x81, 0x46, 0xa2, 0xe9, 0x16, 0x0f, 0xb0, 0xe9, 0x46, 0x11, 0x2b, 0x89, 0x94, 0xb9, 0xd9, 0x0e, 0xf8, 0xa3, 0x6a, 0x8e, 0xf2, 0xba, 0x18, 0x7b, 0x70, 0x5d, 0x11, 0xb3, 0x44, 0xca, 0xed, 0x87, 0xdb, 0x94, 0xb9, 0xc9, 0xea, 0xb8, 0xa5, 0xe3, 0x27, 0x7a, 0x9a, 0xa4, 0x6b, 0x31, 0x76, 0x8c, 0xee, 0x54, 0x06, 0xc3, 0xcb, 0xcf, 0xfc, 0xe0, 0xa9, 0x45, }; static const unsigned char ecdsa_secp256k1_sha3_256_5649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5649_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5649 = { .name = "ecdsa_secp256k1_sha3_256_5649", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5649_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5649_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5649_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 350 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5650 for ECDSA, tcId is 351 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5650_pubkey[] = { 0x2b, 0xe9, 0x26, 0x5c, 0x14, 0x8f, 0xc6, 0x13, 0x79, 0xca, 0x14, 0x7e, 0x65, 0x1e, 0x7f, 0x0a, 0x1c, 0x60, 0x2c, 0xdd, 0x66, 0xf7, 0x0b, 0x4b, 0x6a, 0xda, 0x2e, 0x83, 0xf5, 0x6c, 0x1a, 0x71, 0xf5, 0xe1, 0xed, 0xe0, 0x13, 0x9b, 0xaa, 0x93, 0xaf, 0x58, 0x8c, 0xc7, 0xec, 0x1b, 0x47, 0x9b, 0x91, 0xd2, 0x30, 0xc8, 0x11, 0x57, 0x5c, 0xb1, 0x43, 0xaf, 0x12, 0xc6, 0x31, 0xd1, 0x6a, 0x61, }; static const unsigned char ecdsa_secp256k1_sha3_256_5650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5650_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5650 = { .name = "ecdsa_secp256k1_sha3_256_5650", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5650_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5650_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5650_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 351 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5651 for ECDSA, tcId is 352 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5651_pubkey[] = { 0xaf, 0x3b, 0x3f, 0x73, 0xa4, 0x09, 0xff, 0xa5, 0x1b, 0x10, 0xf3, 0xcd, 0xfa, 0x27, 0x2d, 0x9b, 0x42, 0x35, 0x8c, 0xa9, 0xae, 0xd2, 0x84, 0x0b, 0xfa, 0xf5, 0xbd, 0x67, 0xe6, 0x1f, 0xd1, 0xc4, 0x9d, 0x07, 0x37, 0x1c, 0xa9, 0x19, 0xa0, 0x69, 0xe4, 0x6c, 0x47, 0x3e, 0x6e, 0x45, 0xb2, 0xf2, 0xcd, 0x01, 0x9f, 0xa2, 0x1f, 0x84, 0xd0, 0xab, 0xfa, 0x28, 0x5b, 0xe5, 0x51, 0x37, 0x81, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_256_5651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5651_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5651 = { .name = "ecdsa_secp256k1_sha3_256_5651", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5651_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5651_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5651_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 352 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5652 for ECDSA, tcId is 353 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5652_pubkey[] = { 0xe1, 0x55, 0x24, 0x0c, 0x3b, 0xe3, 0x14, 0x92, 0x4e, 0xd7, 0x87, 0x35, 0x43, 0x25, 0xfd, 0xc3, 0xdc, 0xfe, 0x46, 0xd6, 0x03, 0x79, 0x8f, 0x24, 0x91, 0x15, 0x24, 0x48, 0xe0, 0xe4, 0x13, 0xb6, 0xce, 0x11, 0x24, 0x31, 0x3e, 0xb0, 0x04, 0x82, 0x92, 0xf6, 0xed, 0xf9, 0xf2, 0x48, 0xff, 0x96, 0x24, 0x93, 0x6e, 0x41, 0xbe, 0x6c, 0x93, 0xdc, 0xe2, 0xdf, 0x9a, 0xb7, 0x99, 0x72, 0x89, 0xfc, }; static const unsigned char ecdsa_secp256k1_sha3_256_5652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5652_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5652 = { .name = "ecdsa_secp256k1_sha3_256_5652", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5652_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5652_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5652_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 353 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5653 for ECDSA, tcId is 354 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5653_pubkey[] = { 0x87, 0xd4, 0xde, 0x4e, 0xd8, 0x90, 0xda, 0x42, 0xd7, 0xe1, 0x1a, 0x95, 0xe5, 0x60, 0x70, 0xc9, 0x59, 0x01, 0x50, 0x0c, 0x53, 0xdd, 0x55, 0xb6, 0x29, 0x52, 0x67, 0x98, 0x84, 0xd2, 0x59, 0x8d, 0xdf, 0x8a, 0x37, 0xce, 0x6d, 0x8f, 0x86, 0xf4, 0xe8, 0xb3, 0x58, 0x0d, 0x6e, 0x6a, 0x44, 0x85, 0x20, 0xcb, 0x74, 0x08, 0x88, 0xa3, 0xb0, 0xea, 0xc9, 0x2b, 0xc9, 0xa2, 0xf1, 0x58, 0x9b, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_256_5653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5653_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5653 = { .name = "ecdsa_secp256k1_sha3_256_5653", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5653_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5653_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5653_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 354 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5654 for ECDSA, tcId is 355 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5654_pubkey[] = { 0x8c, 0x03, 0xd7, 0x26, 0x64, 0x21, 0x4f, 0x3b, 0xda, 0xa6, 0xa2, 0xe1, 0x00, 0x3b, 0x14, 0x86, 0x40, 0x00, 0xe5, 0x99, 0x3b, 0x41, 0xb7, 0x1b, 0x68, 0xcd, 0xeb, 0xc4, 0xa0, 0x8f, 0x62, 0x8a, 0x4a, 0x49, 0x0e, 0xfc, 0x91, 0x72, 0x98, 0x3b, 0xec, 0x20, 0x3e, 0x60, 0x96, 0xdd, 0x97, 0x78, 0xbe, 0xc2, 0x6f, 0x6e, 0x44, 0x3e, 0x1d, 0xde, 0x67, 0x06, 0x0d, 0xac, 0x18, 0xca, 0x24, 0x40, }; static const unsigned char ecdsa_secp256k1_sha3_256_5654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5654_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5654 = { .name = "ecdsa_secp256k1_sha3_256_5654", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5654_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5654_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5654_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 355 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5655 for ECDSA, tcId is 356 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5655_pubkey[] = { 0x1a, 0xe8, 0xbf, 0x7b, 0x21, 0xb3, 0xae, 0x00, 0xfd, 0x01, 0xd1, 0x9b, 0x4f, 0x72, 0xae, 0x6b, 0x47, 0xbf, 0x75, 0x2e, 0xdf, 0x47, 0x6c, 0xc5, 0xcd, 0xfa, 0x1c, 0x23, 0x45, 0x58, 0x8e, 0x71, 0x54, 0xdc, 0x30, 0x61, 0x65, 0xf4, 0xf9, 0x07, 0x80, 0x24, 0x78, 0xed, 0x2a, 0xed, 0x41, 0xec, 0x54, 0xdd, 0xf8, 0x70, 0xbc, 0x62, 0xc2, 0xc3, 0x73, 0x97, 0x11, 0x94, 0x30, 0x84, 0x11, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha3_256_5655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5655_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5655 = { .name = "ecdsa_secp256k1_sha3_256_5655", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5655_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5655_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5655_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 356 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5656 for ECDSA, tcId is 357 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5656_pubkey[] = { 0xc5, 0xda, 0xd2, 0x12, 0x49, 0x27, 0x3c, 0xd7, 0x2a, 0xd0, 0x69, 0x43, 0xb4, 0xe3, 0xbe, 0x08, 0x22, 0x59, 0x5b, 0xf9, 0xfa, 0x04, 0x59, 0x22, 0x3d, 0x27, 0x35, 0x4d, 0xea, 0x24, 0x17, 0x9b, 0x97, 0x34, 0x0a, 0xbb, 0x32, 0x6a, 0xfd, 0x1e, 0xb6, 0xde, 0x5e, 0x52, 0x5a, 0x23, 0xaa, 0xd4, 0x92, 0x9f, 0x8a, 0x09, 0x24, 0x4c, 0x97, 0x28, 0x41, 0xa0, 0xcb, 0x76, 0x68, 0x0f, 0xf0, 0x60, }; static const unsigned char ecdsa_secp256k1_sha3_256_5656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5656_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5656 = { .name = "ecdsa_secp256k1_sha3_256_5656", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5656_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5656_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5656_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 357 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5657 for ECDSA, tcId is 358 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5657_pubkey[] = { 0xf2, 0xc6, 0x64, 0x3b, 0xf3, 0x73, 0xa0, 0x81, 0x2f, 0x99, 0x3c, 0xd6, 0x16, 0x99, 0x35, 0x51, 0xd7, 0xbc, 0x78, 0x26, 0xd3, 0xd6, 0xbe, 0xd0, 0x91, 0x8e, 0xd4, 0x99, 0x8b, 0x74, 0xe8, 0x37, 0xd7, 0x16, 0x0a, 0x45, 0x2d, 0xd2, 0xc8, 0xd3, 0xe5, 0xf4, 0xf8, 0x0a, 0x1e, 0xfb, 0xc3, 0x37, 0x93, 0xc3, 0x5d, 0x6e, 0x24, 0x3e, 0x9d, 0xfe, 0x9a, 0x39, 0xe2, 0x6d, 0xfb, 0x7a, 0x1b, 0x9f, }; static const unsigned char ecdsa_secp256k1_sha3_256_5657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5657_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5657 = { .name = "ecdsa_secp256k1_sha3_256_5657", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5657_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5657_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5657_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 358 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5658 for ECDSA, tcId is 359 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5658_pubkey[] = { 0x3a, 0x1b, 0xd6, 0x08, 0xd3, 0x18, 0x7c, 0x68, 0x4d, 0x8d, 0x46, 0x1a, 0x54, 0x06, 0xe2, 0xb8, 0x6b, 0x09, 0xee, 0xdc, 0x5d, 0x2d, 0xd2, 0x8f, 0xcc, 0x34, 0x1b, 0xd2, 0xd4, 0x83, 0xa6, 0xd8, 0x5e, 0x3a, 0xb9, 0xd9, 0xe7, 0x9e, 0xcb, 0x7e, 0x43, 0x13, 0x57, 0x82, 0xae, 0x60, 0xb1, 0x2f, 0xf6, 0x9b, 0x33, 0x49, 0xc1, 0x81, 0x9b, 0x4a, 0xb2, 0x7b, 0x73, 0x8c, 0x7f, 0x80, 0x35, 0x95, }; static const unsigned char ecdsa_secp256k1_sha3_256_5658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5658_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5658 = { .name = "ecdsa_secp256k1_sha3_256_5658", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5658_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5658_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5658_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 359 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5659 for ECDSA, tcId is 360 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5659_pubkey[] = { 0xae, 0xe2, 0xe5, 0xaa, 0x96, 0xd3, 0x1b, 0xde, 0x8b, 0x0e, 0xc1, 0xe7, 0x1d, 0x79, 0xe7, 0x21, 0xc5, 0xfb, 0x09, 0x4e, 0xba, 0x49, 0xd6, 0x1d, 0xfb, 0xa6, 0xe6, 0x36, 0xa7, 0x7b, 0x21, 0x5a, 0xaf, 0x35, 0x34, 0xfa, 0x21, 0x01, 0x43, 0xce, 0x3c, 0xec, 0xc5, 0xbf, 0xe1, 0xe0, 0xb1, 0x36, 0xab, 0x68, 0x11, 0xd6, 0x62, 0x37, 0x66, 0x37, 0xef, 0xe1, 0xed, 0xdd, 0x21, 0x2b, 0x6f, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha3_256_5659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5659_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5659 = { .name = "ecdsa_secp256k1_sha3_256_5659", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5659_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5659_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5659_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 360 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5660 for ECDSA, tcId is 361 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5660_pubkey[] = { 0xdb, 0x0d, 0xc6, 0x3f, 0x6d, 0xff, 0xf9, 0xb2, 0x56, 0x44, 0x98, 0xa2, 0x42, 0x34, 0x49, 0xcc, 0x5d, 0x89, 0x42, 0x22, 0xdd, 0xda, 0x86, 0xea, 0xbd, 0x6d, 0x2b, 0xb2, 0x54, 0x9d, 0x28, 0xd7, 0x5b, 0x5b, 0xc2, 0x01, 0x53, 0xef, 0x6a, 0x26, 0x49, 0xdc, 0x6f, 0x11, 0x6e, 0x6c, 0xa5, 0xc9, 0x16, 0x74, 0x0a, 0x9a, 0x64, 0x56, 0x18, 0x00, 0x3a, 0x5a, 0x44, 0x8e, 0xee, 0x92, 0x8f, 0xcc, }; static const unsigned char ecdsa_secp256k1_sha3_256_5660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5660_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5660 = { .name = "ecdsa_secp256k1_sha3_256_5660", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5660_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5660_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5660_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 361 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5661 for ECDSA, tcId is 362 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5661_pubkey[] = { 0x82, 0xa0, 0x04, 0xa2, 0xff, 0x4a, 0xa7, 0xc2, 0xfd, 0x4c, 0x71, 0xbc, 0x88, 0xa4, 0xee, 0x16, 0xd7, 0x5c, 0x11, 0xf5, 0xad, 0x85, 0x99, 0xa6, 0xeb, 0x41, 0xea, 0x73, 0xe4, 0x9f, 0x80, 0xbc, 0xf3, 0x60, 0xab, 0xc7, 0x95, 0xb4, 0xb2, 0x1b, 0x46, 0x58, 0x4a, 0x1b, 0xeb, 0xc4, 0x17, 0x20, 0xdf, 0x51, 0xa2, 0x50, 0x44, 0x88, 0x0f, 0x28, 0x7c, 0x5e, 0x5d, 0x83, 0xf8, 0x3c, 0x1d, 0x20, }; static const unsigned char ecdsa_secp256k1_sha3_256_5661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5661_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5661 = { .name = "ecdsa_secp256k1_sha3_256_5661", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5661_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5661_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5661_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 362 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5662 for ECDSA, tcId is 363 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5662_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha3_256_5662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5662_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5662 = { .name = "ecdsa_secp256k1_sha3_256_5662", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5662_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5662_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5662_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 363 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5663 for ECDSA, tcId is 364 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5663_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha3_256_5663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5663_sig[] = { 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x82, 0xc8, 0x1e, 0x3d, 0x60, 0x2c, 0xfd, 0xab, 0x62, 0xe0, 0x59, 0xb1, 0x95, 0x62, 0xbb, 0x03, 0xf3, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5663 = { .name = "ecdsa_secp256k1_sha3_256_5663", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5663_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5663_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5663_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 364 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5664 for ECDSA, tcId is 365 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5664_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha3_256_5664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5664_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5664 = { .name = "ecdsa_secp256k1_sha3_256_5664", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5664_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5664_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5664_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 365 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5665 for ECDSA, tcId is 366 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5665_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha3_256_5665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5665_sig[] = { 0xa8, 0xce, 0x48, 0x3b, 0x42, 0xfb, 0x34, 0x61, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x82, 0xc8, 0x1e, 0x3d, 0x60, 0x2c, 0xfd, 0xab, 0x62, 0xe0, 0x59, 0xb1, 0x95, 0x62, 0xbb, 0x03, 0xf3, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5665 = { .name = "ecdsa_secp256k1_sha3_256_5665", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5665_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5665_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5665_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 366 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5666 for ECDSA, tcId is 367 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5666_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_256_5666_sig[] = { 0xfc, 0x0f, 0x73, 0x7a, 0x79, 0xd5, 0x25, 0xee, 0xfe, 0x3c, 0x94, 0x0c, 0x16, 0x21, 0x73, 0xcc, 0x6f, 0xd9, 0xa6, 0xd5, 0xcc, 0x50, 0x17, 0x75, 0x40, 0x26, 0xc4, 0x11, 0x3d, 0x0f, 0x15, 0xcc, 0x89, 0x4d, 0x6f, 0xb5, 0x9c, 0xc7, 0x91, 0x99, 0xb8, 0x9c, 0xf1, 0x2b, 0x55, 0x6b, 0xa4, 0x9f, 0x86, 0x23, 0xb6, 0x6d, 0xa8, 0xc1, 0x1a, 0x55, 0xe2, 0x67, 0xe3, 0x31, 0x84, 0x97, 0x68, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5666 = { .name = "ecdsa_secp256k1_sha3_256_5666", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5666_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha3_256_5666_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 367 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5667 for ECDSA, tcId is 368 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5667_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_256_5667_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha3_256_5667_sig[] = { 0x76, 0xba, 0xe3, 0x3f, 0xfa, 0x37, 0x6b, 0x49, 0x6b, 0xde, 0x93, 0xc7, 0x74, 0x8d, 0x50, 0xa3, 0xa8, 0xb7, 0x3b, 0xac, 0x04, 0x5e, 0x54, 0xc4, 0x0c, 0x7f, 0xcd, 0x34, 0x4a, 0x10, 0xfa, 0x83, 0x00, 0x3e, 0x25, 0xa2, 0x07, 0x16, 0xa9, 0x02, 0xd5, 0x24, 0xd6, 0x56, 0xea, 0xd0, 0x90, 0xb7, 0xbb, 0xe1, 0xac, 0x25, 0xff, 0x71, 0x26, 0x9d, 0x70, 0x38, 0xd4, 0xb0, 0x8d, 0xb5, 0xb1, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5667 = { .name = "ecdsa_secp256k1_sha3_256_5667", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5667_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5667_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha3_256_5667_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 368 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5668 for ECDSA, tcId is 369 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5668_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_256_5668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_256_5668_sig[] = { 0x01, 0x6e, 0x2d, 0xfa, 0xc6, 0x00, 0xc8, 0xc9, 0x94, 0xc0, 0xbb, 0x81, 0x5b, 0x10, 0x72, 0xbb, 0x5b, 0xb6, 0x80, 0x77, 0x41, 0x21, 0xd3, 0x42, 0xf9, 0x3f, 0xe0, 0xa9, 0x94, 0xf7, 0x2c, 0x09, 0xc3, 0x78, 0x94, 0x4d, 0xe0, 0x5a, 0xac, 0xa7, 0x0c, 0x71, 0xed, 0x9a, 0x7f, 0xe4, 0xee, 0xd2, 0xb3, 0x6a, 0xb3, 0xdd, 0xb4, 0xb3, 0x2d, 0x09, 0xd5, 0x3e, 0xeb, 0xd9, 0x1f, 0x2f, 0x92, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5668 = { .name = "ecdsa_secp256k1_sha3_256_5668", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5668_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5668_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_256_5668_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 369 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5669 for ECDSA, tcId is 370 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5669_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_256_5669_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha3_256_5669_sig[] = { 0xa3, 0x3c, 0x4a, 0xcb, 0x03, 0x3f, 0x3d, 0x0d, 0x50, 0xd2, 0x44, 0x24, 0x9a, 0x12, 0x77, 0x44, 0x8b, 0x6a, 0x52, 0xf5, 0x24, 0xe3, 0x0f, 0x4b, 0x73, 0xd5, 0x95, 0xfb, 0x95, 0x5e, 0x92, 0x47, 0x7f, 0x31, 0xb5, 0x0c, 0x69, 0x8a, 0x97, 0x1c, 0x8f, 0xab, 0x98, 0x52, 0x1e, 0xf3, 0xa1, 0xd6, 0xfa, 0x48, 0x3a, 0x67, 0x62, 0x30, 0x46, 0x7c, 0x8a, 0xf3, 0x01, 0x84, 0x52, 0xbf, 0x1d, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5669 = { .name = "ecdsa_secp256k1_sha3_256_5669", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5669_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5669_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha3_256_5669_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 370 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5670 for ECDSA, tcId is 371 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5670_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5670_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5670_sig[] = { 0x09, 0x1b, 0xc8, 0x29, 0xbe, 0x86, 0x1c, 0x20, 0xc4, 0xbb, 0x87, 0x7f, 0x0d, 0xa2, 0x05, 0xb3, 0x91, 0x15, 0x84, 0x70, 0x8d, 0xde, 0xef, 0x58, 0x0a, 0xe4, 0x66, 0x91, 0xb2, 0x45, 0xb9, 0x9d, 0xc0, 0x3b, 0xb5, 0xe7, 0x7a, 0x8f, 0xad, 0x94, 0x73, 0x67, 0x75, 0xf3, 0x1a, 0xe3, 0x81, 0x01, 0x5a, 0x93, 0x97, 0x39, 0x54, 0xb2, 0xf3, 0xe5, 0x41, 0x45, 0x7f, 0xcb, 0x05, 0xbc, 0xcb, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5670 = { .name = "ecdsa_secp256k1_sha3_256_5670", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5670_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5670_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5670_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 371 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5671 for ECDSA, tcId is 372 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5671_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5671_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5671_sig[] = { 0xfd, 0x6a, 0x7e, 0xec, 0x40, 0xd1, 0x06, 0x2b, 0x9a, 0x4a, 0x7a, 0xf4, 0x81, 0x7b, 0x3e, 0xa8, 0xcd, 0x21, 0x59, 0x6d, 0x6d, 0xc2, 0x28, 0xb2, 0x87, 0xa2, 0x1b, 0x64, 0x7c, 0xaa, 0xb2, 0x9f, 0xab, 0x86, 0x16, 0x72, 0xdf, 0xe3, 0xb4, 0x28, 0xc2, 0x6e, 0x08, 0xf2, 0xf7, 0xca, 0x46, 0x4a, 0xd3, 0xe9, 0x66, 0xbb, 0xf6, 0x29, 0x31, 0x40, 0x8e, 0xd1, 0xce, 0x27, 0x35, 0xba, 0xb6, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5671 = { .name = "ecdsa_secp256k1_sha3_256_5671", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5671_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5671_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5671_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 372 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5672 for ECDSA, tcId is 373 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5672_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_256_5672_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5672_sig[] = { 0x53, 0xeb, 0xb6, 0xde, 0xbd, 0x02, 0x8f, 0x19, 0x5c, 0x03, 0x9e, 0xf4, 0xe0, 0x42, 0x76, 0xad, 0xfa, 0x2d, 0x95, 0x51, 0xa6, 0xe0, 0x2d, 0x2c, 0x41, 0x43, 0x90, 0x7e, 0xc8, 0x89, 0xe6, 0xd0, 0xfa, 0x01, 0xa2, 0x72, 0x40, 0xdd, 0x63, 0xaf, 0xf2, 0x35, 0xcd, 0x97, 0x78, 0xc9, 0x0a, 0x7c, 0x25, 0xc9, 0x93, 0x79, 0x1c, 0xda, 0x58, 0x4f, 0xdc, 0xca, 0x1a, 0x97, 0x9f, 0x5f, 0xaf, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5672 = { .name = "ecdsa_secp256k1_sha3_256_5672", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5672_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5672_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5672_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 373 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5673 for ECDSA, tcId is 374 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5673_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_256_5673_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5673_sig[] = { 0x60, 0xec, 0x4f, 0x23, 0xf1, 0xb2, 0xc0, 0xb5, 0xac, 0xae, 0x07, 0x5b, 0xbf, 0x09, 0xbe, 0x76, 0xff, 0xc9, 0x78, 0xaa, 0x4d, 0x35, 0x4d, 0x30, 0x97, 0x46, 0x04, 0x7a, 0x69, 0xc4, 0x3d, 0xdd, 0x79, 0x8c, 0x3d, 0xf3, 0xad, 0xa3, 0xc9, 0x18, 0x45, 0x27, 0x2b, 0x95, 0x73, 0xe7, 0x0e, 0x68, 0x3d, 0x4e, 0x49, 0xd9, 0x0a, 0x51, 0xf6, 0xad, 0x04, 0x7e, 0x24, 0xda, 0x19, 0x35, 0x5d, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5673 = { .name = "ecdsa_secp256k1_sha3_256_5673", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5673_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5673_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5673_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 374 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5674 for ECDSA, tcId is 375 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5674_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_256_5674_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5674_sig[] = { 0x44, 0x57, 0xc3, 0x2f, 0xe6, 0xbf, 0x74, 0xee, 0x82, 0xff, 0x8a, 0x38, 0xb8, 0x07, 0x6b, 0x48, 0x32, 0x37, 0x69, 0xf3, 0xb7, 0x97, 0x0f, 0x41, 0x93, 0x52, 0x28, 0x39, 0x84, 0xdd, 0xe0, 0x81, 0xc6, 0x38, 0x0b, 0x3e, 0xd9, 0x0d, 0xdb, 0xa6, 0x23, 0x94, 0xc1, 0x9e, 0x02, 0xa3, 0xb8, 0x69, 0x0d, 0x16, 0x15, 0xdd, 0x11, 0x20, 0xc0, 0xfe, 0x67, 0xb8, 0x6e, 0x79, 0x61, 0xb8, 0xe7, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5674 = { .name = "ecdsa_secp256k1_sha3_256_5674", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5674_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5674_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5674_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 375 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5675 for ECDSA, tcId is 376 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5675_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_256_5675_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5675_sig[] = { 0x24, 0x82, 0x0a, 0x98, 0x5b, 0xc7, 0x2c, 0x88, 0x17, 0xff, 0xde, 0xc2, 0x75, 0xdb, 0x74, 0x06, 0xed, 0x5b, 0x89, 0x7f, 0xff, 0x0b, 0x71, 0x3d, 0x98, 0xa7, 0x21, 0xa4, 0x2b, 0xb4, 0xc6, 0xd4, 0x94, 0xf1, 0x39, 0x7d, 0x1e, 0x57, 0x7f, 0xd4, 0x7c, 0xfe, 0xd7, 0xac, 0x01, 0xf2, 0xae, 0xad, 0x68, 0x88, 0x86, 0x3a, 0x3f, 0x8f, 0xf2, 0x1f, 0x00, 0xc3, 0x4c, 0x41, 0xe8, 0x40, 0xaf, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5675 = { .name = "ecdsa_secp256k1_sha3_256_5675", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5675_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5675_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5675_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 376 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5676 for ECDSA, tcId is 377 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5676_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5676_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5676_sig[] = { 0x1e, 0xd4, 0xe5, 0x13, 0x2e, 0x4b, 0x11, 0x26, 0x8a, 0xd5, 0x5b, 0x9a, 0x4b, 0x7a, 0x54, 0xad, 0x3e, 0x02, 0x89, 0x76, 0xbb, 0xe8, 0x5f, 0xef, 0x2e, 0x8c, 0xd0, 0xa3, 0xe4, 0x36, 0x2c, 0x70, 0x1d, 0x1c, 0xe9, 0x4f, 0xd8, 0xff, 0xda, 0x6d, 0xf3, 0xc3, 0x07, 0x15, 0x0a, 0x98, 0x71, 0x9f, 0x27, 0x63, 0x81, 0xb0, 0xc9, 0xd2, 0x61, 0xfb, 0xa7, 0xfe, 0xba, 0x37, 0xb4, 0x02, 0x39, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5676 = { .name = "ecdsa_secp256k1_sha3_256_5676", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5676_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5676_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5676_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 377 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5677 for ECDSA, tcId is 378 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5677_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5677_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5677_sig[] = { 0x4f, 0x03, 0x01, 0x96, 0xe9, 0xa5, 0x58, 0xb5, 0xaf, 0x55, 0x57, 0xc7, 0x34, 0x7d, 0x13, 0x2b, 0x13, 0x08, 0xb3, 0xa1, 0xce, 0x88, 0xa6, 0xbc, 0x6b, 0xf5, 0x66, 0xed, 0x22, 0xb5, 0xda, 0x78, 0x39, 0x2d, 0xdc, 0x6e, 0x83, 0xf9, 0x95, 0xa0, 0x03, 0x08, 0x56, 0xec, 0xd0, 0x82, 0x24, 0x49, 0xd8, 0xda, 0xc2, 0xbe, 0xad, 0x6d, 0x26, 0x9e, 0xf4, 0xb3, 0x07, 0xd5, 0x35, 0xdc, 0xe2, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5677 = { .name = "ecdsa_secp256k1_sha3_256_5677", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5677_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5677_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5677_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 378 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5678 for ECDSA, tcId is 379 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5678_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_256_5678_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5678_sig[] = { 0x9e, 0xaa, 0x25, 0x67, 0x62, 0xee, 0x3d, 0x5d, 0x3e, 0xd2, 0x69, 0xa2, 0x90, 0x7c, 0x4a, 0x83, 0x6c, 0x92, 0x07, 0x39, 0x18, 0xbe, 0x33, 0x54, 0x69, 0xe2, 0x57, 0x43, 0xea, 0x9b, 0xa0, 0xe1, 0x2c, 0x70, 0xe1, 0xdb, 0xee, 0x67, 0x1e, 0x9b, 0xbd, 0x6b, 0x68, 0x69, 0x5a, 0xe4, 0x0d, 0x58, 0xd1, 0x1c, 0xe8, 0x25, 0x92, 0xcf, 0x98, 0x24, 0x91, 0x4a, 0x1d, 0x8d, 0x9e, 0x42, 0x9f, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5678 = { .name = "ecdsa_secp256k1_sha3_256_5678", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5678_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5678_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5678_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 379 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5679 for ECDSA, tcId is 380 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5679_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5679_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5679_sig[] = { 0xdb, 0x96, 0x5e, 0x2d, 0x0d, 0x25, 0xc8, 0x4c, 0x30, 0xae, 0x8a, 0x3e, 0x31, 0xf1, 0x2b, 0x55, 0xb8, 0x78, 0x4b, 0x90, 0xf9, 0x1d, 0x44, 0x3a, 0x70, 0xf2, 0xc7, 0xcb, 0x48, 0x28, 0xf5, 0xbf, 0xaa, 0xbb, 0x28, 0x4a, 0x77, 0x15, 0x09, 0x5c, 0xb1, 0x17, 0x14, 0xec, 0x76, 0x77, 0x9c, 0x08, 0xad, 0x54, 0x96, 0xd8, 0x87, 0x0e, 0x21, 0x09, 0x46, 0x7a, 0x21, 0x09, 0x3f, 0x0b, 0x8b, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5679 = { .name = "ecdsa_secp256k1_sha3_256_5679", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5679_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5679_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5679_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 380 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5680 for ECDSA, tcId is 381 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5680_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5680_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5680_sig[] = { 0x58, 0x67, 0x58, 0x35, 0xad, 0xd3, 0xdd, 0x65, 0xf2, 0x5c, 0x76, 0xb0, 0x25, 0x45, 0x17, 0x6c, 0x37, 0xa8, 0x40, 0x74, 0x8f, 0xb6, 0x4a, 0x16, 0xb8, 0xbb, 0x11, 0x3e, 0x36, 0x1c, 0xf5, 0x5d, 0x3b, 0x1e, 0x25, 0x55, 0x2a, 0x5c, 0x35, 0x73, 0x2f, 0x33, 0x73, 0x5f, 0x4d, 0xc6, 0xf5, 0x0f, 0x94, 0x7b, 0xbe, 0xcb, 0x73, 0x45, 0x99, 0xa9, 0x87, 0xf1, 0xff, 0xbf, 0x86, 0xb2, 0x84, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5680 = { .name = "ecdsa_secp256k1_sha3_256_5680", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5680_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5680_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5680_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 381 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5681 for ECDSA, tcId is 382 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5681_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_256_5681_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5681_sig[] = { 0x78, 0x6a, 0x68, 0x77, 0x76, 0xda, 0x9c, 0x18, 0x5a, 0xfa, 0x16, 0xf9, 0x0a, 0x59, 0x6f, 0x5d, 0xdc, 0xe3, 0xc2, 0xd3, 0xca, 0xec, 0xe0, 0x34, 0x41, 0x01, 0xbe, 0x24, 0x58, 0x1b, 0x86, 0xe1, 0x75, 0xb1, 0x3d, 0xa2, 0x3b, 0xe0, 0x46, 0xd5, 0x51, 0xc6, 0x8b, 0x54, 0xe7, 0x2a, 0x99, 0x02, 0x88, 0xdd, 0x73, 0x09, 0x98, 0x00, 0x70, 0x5e, 0x1a, 0x85, 0x43, 0x66, 0x66, 0x2b, 0x95, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5681 = { .name = "ecdsa_secp256k1_sha3_256_5681", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5681_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5681_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5681_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 382 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5682 for ECDSA, tcId is 383 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5682_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_256_5682_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5682_sig[] = { 0xcf, 0xce, 0x71, 0x88, 0x66, 0x75, 0x68, 0xbd, 0x7d, 0x52, 0x69, 0xa7, 0x5b, 0xef, 0x42, 0xaa, 0x36, 0x07, 0x05, 0xdb, 0x52, 0x32, 0xd1, 0x89, 0xad, 0xcf, 0x23, 0x23, 0x03, 0x68, 0x52, 0xbb, 0x5d, 0x06, 0x87, 0x1c, 0x28, 0xd8, 0x91, 0x98, 0x87, 0x0f, 0x94, 0x26, 0x4a, 0xe1, 0x17, 0x44, 0xd2, 0x54, 0x68, 0x2e, 0x06, 0xf1, 0x54, 0x33, 0x2f, 0x97, 0x6b, 0x80, 0x3d, 0xa8, 0xa1, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5682 = { .name = "ecdsa_secp256k1_sha3_256_5682", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5682_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5682_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5682_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 383 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5683 for ECDSA, tcId is 384 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5683_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_256_5683_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5683_sig[] = { 0xb2, 0x1c, 0xc8, 0x18, 0x43, 0xc7, 0x47, 0x79, 0xfc, 0x5b, 0xa9, 0xfe, 0x1b, 0x0d, 0x5e, 0x71, 0x73, 0xf6, 0x96, 0xc6, 0xe9, 0x13, 0x98, 0xcf, 0x83, 0xa3, 0x1b, 0xc7, 0x35, 0xb6, 0x05, 0x0b, 0x89, 0x45, 0xe8, 0x71, 0x17, 0x89, 0x09, 0x3c, 0x80, 0xfe, 0x6c, 0xec, 0x39, 0x47, 0xcc, 0x9c, 0x36, 0xff, 0xe2, 0x50, 0x5f, 0x1e, 0xf7, 0x21, 0xbb, 0x50, 0x7e, 0x05, 0xc9, 0xc0, 0x7b, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5683 = { .name = "ecdsa_secp256k1_sha3_256_5683", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5683_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5683_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5683_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 384 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5684 for ECDSA, tcId is 385 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5684_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_256_5684_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5684_sig[] = { 0xfb, 0xc5, 0x08, 0x7d, 0x1e, 0x6b, 0xbc, 0x32, 0xda, 0xe2, 0x2a, 0x83, 0x7d, 0x03, 0x15, 0x10, 0x28, 0xac, 0x69, 0xad, 0x71, 0xe6, 0x6e, 0x5f, 0xc8, 0x41, 0xde, 0x05, 0x48, 0xc0, 0x6d, 0xce, 0xe2, 0xdf, 0xa5, 0xe5, 0x6d, 0xe2, 0x8d, 0x72, 0xd0, 0xe7, 0x70, 0xe7, 0x66, 0x60, 0x33, 0xc4, 0x24, 0x31, 0xbc, 0xae, 0x1f, 0xc6, 0xcf, 0xfd, 0x95, 0x93, 0xd5, 0x4c, 0xbc, 0xfc, 0xfa, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5684 = { .name = "ecdsa_secp256k1_sha3_256_5684", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5684_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5684_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5684_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 385 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5685 for ECDSA, tcId is 386 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5685_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_256_5685_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5685_sig[] = { 0x5e, 0xa7, 0x80, 0xb7, 0x3c, 0xe0, 0x27, 0xc0, 0x3f, 0xf8, 0x1e, 0x1b, 0x26, 0xe6, 0x10, 0x76, 0xc8, 0x94, 0x4a, 0x83, 0x5d, 0x34, 0x9c, 0xd7, 0x57, 0xec, 0xe0, 0xc4, 0xdd, 0xf1, 0xda, 0x24, 0xbd, 0x9b, 0x87, 0xdb, 0x26, 0x15, 0x8d, 0x5b, 0x91, 0x32, 0xbb, 0x0f, 0x3d, 0xf5, 0x4a, 0x2a, 0xb6, 0xc9, 0xae, 0x9a, 0x4e, 0x0b, 0x84, 0x96, 0xa5, 0x39, 0xab, 0x4a, 0xb5, 0x88, 0xcc, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5685 = { .name = "ecdsa_secp256k1_sha3_256_5685", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5685_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5685_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5685_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 386 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5686 for ECDSA, tcId is 387 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5686_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_256_5686_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5686_sig[] = { 0x46, 0x18, 0xf1, 0xa1, 0x1c, 0xf8, 0xcb, 0xc1, 0x96, 0x64, 0x16, 0x78, 0x5c, 0x31, 0x49, 0xf7, 0x5a, 0x71, 0xae, 0x25, 0x6d, 0x44, 0x5d, 0xeb, 0x31, 0x00, 0x8d, 0x51, 0xba, 0x60, 0x88, 0xc2, 0x40, 0x80, 0x87, 0x72, 0x5d, 0xd6, 0xce, 0x18, 0xbf, 0xb7, 0x49, 0x3a, 0x54, 0x60, 0xb5, 0x40, 0x22, 0x24, 0x5e, 0x5d, 0xbd, 0x73, 0x1e, 0xd6, 0xd3, 0x5d, 0xb8, 0x8a, 0x51, 0xd2, 0xba, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5686 = { .name = "ecdsa_secp256k1_sha3_256_5686", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5686_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5686_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5686_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 387 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5687 for ECDSA, tcId is 388 in file ecdsa_secp256k1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256k1_sha3_256_5687_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_256_5687_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_256_5687_sig[] = { 0x9d, 0x9c, 0xdb, 0x94, 0xe5, 0xe9, 0xa6, 0x6b, 0xf8, 0xee, 0xdf, 0xdf, 0x9f, 0x1a, 0xf4, 0x37, 0x13, 0xbb, 0x05, 0xd8, 0x80, 0xde, 0xc8, 0x9a, 0xec, 0x21, 0x63, 0x19, 0x58, 0x97, 0x0d, 0xe6, 0x73, 0x29, 0x32, 0x64, 0x9b, 0xea, 0x35, 0xf1, 0x1d, 0xfe, 0x09, 0x26, 0x61, 0x8e, 0x4f, 0x09, 0x1c, 0x1b, 0x26, 0x4c, 0xa1, 0x28, 0xa9, 0xee, 0xf1, 0x4e, 0x6d, 0x94, 0xd7, 0xc9, 0xf2, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_256_5687 = { .name = "ecdsa_secp256k1_sha3_256_5687", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_256_5687_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_256_5687_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_256_5687_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 388 in file ecdsa_secp256k1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) */ /* Test 5688 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5688_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5688_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x59, 0xf1, 0x00, 0xa7, 0xe4, 0xa7, 0x74, 0xcf, 0x8f, 0x04, 0x57, 0x7e, 0xbd, 0x9a, 0xb9, 0xab, 0x2f, 0x09, 0xcf, 0xc5, 0xa6, 0xbe, 0x10, 0xff, 0xd0, 0x33, 0x85, 0x24, 0xe6, 0xc2, 0x6c, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5688 = { .name = "ecdsa_secp256k1_sha3_512_5688", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5688_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5688_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5688_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5689 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5689_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5689_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5689 = { .name = "ecdsa_secp256k1_sha3_512_5689", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5689_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5689_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5689_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5690 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5690_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5690_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5690 = { .name = "ecdsa_secp256k1_sha3_512_5690", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5690_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5690_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5690_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5691 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5691_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5691_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5691 = { .name = "ecdsa_secp256k1_sha3_512_5691", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5691_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5691_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5691_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5692 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5692_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5692_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5692 = { .name = "ecdsa_secp256k1_sha3_512_5692", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5692_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5692_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5692_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5693 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5693_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5693_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5693 = { .name = "ecdsa_secp256k1_sha3_512_5693", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5693_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5693_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5693_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5694 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5694_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5694_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5694 = { .name = "ecdsa_secp256k1_sha3_512_5694", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5694_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5694_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5694_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5695 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5695_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5695_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5695 = { .name = "ecdsa_secp256k1_sha3_512_5695", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5695_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5695_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5695_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5696 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5696_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5696_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5696 = { .name = "ecdsa_secp256k1_sha3_512_5696", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5696_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5696_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5696_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5697 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5697_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5697_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x00, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5697 = { .name = "ecdsa_secp256k1_sha3_512_5697", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5697_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5697_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5697_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5698 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5698_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5698_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5698 = { .name = "ecdsa_secp256k1_sha3_512_5698", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5698_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5698_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5698_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5699 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5699_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5699_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5699 = { .name = "ecdsa_secp256k1_sha3_512_5699", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5699_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5699_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5699_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5700 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5700_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5700_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5700 = { .name = "ecdsa_secp256k1_sha3_512_5700", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5700_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5700_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5700_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5701 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5701_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5701_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x05, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5701 = { .name = "ecdsa_secp256k1_sha3_512_5701", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5701_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5701_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5701_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5702 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5702_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5702_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5702 = { .name = "ecdsa_secp256k1_sha3_512_5702", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5702_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5702_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5702_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5703 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5703_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5703_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5703 = { .name = "ecdsa_secp256k1_sha3_512_5703", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5703_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5703_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5703_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5704 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5704_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5704_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5704 = { .name = "ecdsa_secp256k1_sha3_512_5704", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5704_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5704_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5704_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5705 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5705_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5705_sig[] = { 0x7f, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5705 = { .name = "ecdsa_secp256k1_sha3_512_5705", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5705_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5705_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5705_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5706 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5706_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5706_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x02, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5706 = { .name = "ecdsa_secp256k1_sha3_512_5706", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5706_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5706_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5706_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5707 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5707_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5707_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0x66, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5707 = { .name = "ecdsa_secp256k1_sha3_512_5707", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5707_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5707_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5707_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5708 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5708_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5708_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5708 = { .name = "ecdsa_secp256k1_sha3_512_5708", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5708_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5708_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5708_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5709 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5709_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5709_sig[] = { 0x00, 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5709 = { .name = "ecdsa_secp256k1_sha3_512_5709", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5709_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5709_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5709_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5710 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5710_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5710_sig[] = { 0x00, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5710 = { .name = "ecdsa_secp256k1_sha3_512_5710", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5710_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5710_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5710_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5711 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5711_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5711_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5711 = { .name = "ecdsa_secp256k1_sha3_512_5711", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5711_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5711_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5711_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5712 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5712_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5712_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5712 = { .name = "ecdsa_secp256k1_sha3_512_5712", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5712_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5712_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5712_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5713 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5713_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5713_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5713 = { .name = "ecdsa_secp256k1_sha3_512_5713", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5713_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5713_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5713_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256k1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5714 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5714_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5714_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5714 = { .name = "ecdsa_secp256k1_sha3_512_5714", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5714_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5714_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5714_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5715 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5715_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5715_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5715 = { .name = "ecdsa_secp256k1_sha3_512_5715", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5715_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5715_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5715_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5716 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5716_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5716_sig[] = { 0x01, 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa5, 0xc3, 0xa9, 0x37, 0x10, 0xad, 0x3a, 0x9c, 0x11, 0x37, 0x19, 0x8b, 0x5a, 0x1f, 0x68, 0xed, 0x27, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5716 = { .name = "ecdsa_secp256k1_sha3_512_5716", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5716_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5716_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5716_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5717 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5717_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5717_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa8, 0x4e, 0x4b, 0x7d, 0x43, 0x4e, 0xa9, 0x5b, 0x99, 0xb7, 0x74, 0xce, 0x40, 0x7e, 0xfc, 0x6a, 0xa5, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5717 = { .name = "ecdsa_secp256k1_sha3_512_5717", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5717_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5717_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5717_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5718 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5718_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5718_sig[] = { 0x82, 0x97, 0x8a, 0x85, 0x3e, 0x68, 0x9d, 0xb5, 0x1a, 0x38, 0x82, 0x05, 0xe4, 0xc4, 0x22, 0x58, 0xf7, 0x05, 0xa5, 0xd6, 0x02, 0x0e, 0x04, 0x2a, 0x88, 0xb8, 0xd3, 0x32, 0xb0, 0xcd, 0x54, 0x1a, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5718 = { .name = "ecdsa_secp256k1_sha3_512_5718", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5718_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5718_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5718_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5719 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5719_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5719_sig[] = { 0x82, 0x97, 0x8a, 0x85, 0x3e, 0x68, 0x9d, 0xb5, 0x1a, 0x38, 0x82, 0x05, 0xe4, 0xc4, 0x22, 0x57, 0xb1, 0xb4, 0x82, 0xbc, 0xb1, 0x56, 0xa4, 0x66, 0x48, 0x8b, 0x31, 0xbf, 0x81, 0x03, 0x95, 0x5b, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5719 = { .name = "ecdsa_secp256k1_sha3_512_5719", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5719_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5719_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5719_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5720 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5720_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5720_sig[] = { 0xfe, 0x82, 0x97, 0x8a, 0x85, 0x3e, 0x68, 0x9d, 0xb5, 0x1a, 0x38, 0x82, 0x05, 0xe4, 0xc4, 0x22, 0x5a, 0x3c, 0x56, 0xc8, 0xef, 0x52, 0xc5, 0x63, 0xee, 0xc8, 0xe6, 0x74, 0xa5, 0xe0, 0x97, 0x12, 0xd9, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5720 = { .name = "ecdsa_secp256k1_sha3_512_5720", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5720_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5720_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5720_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5721 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5721_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5721_sig[] = { 0x01, 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5721 = { .name = "ecdsa_secp256k1_sha3_512_5721", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5721_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5721_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5721_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5722 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5722_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5722_sig[] = { 0x82, 0x97, 0x8a, 0x85, 0x3e, 0x68, 0x9d, 0xb5, 0x1a, 0x38, 0x82, 0x05, 0xe4, 0xc4, 0x22, 0x58, 0xf7, 0x05, 0xa5, 0xd6, 0x02, 0x0e, 0x04, 0x2a, 0x88, 0xb8, 0xd3, 0x32, 0xb0, 0xcd, 0x54, 0x1a, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5722 = { .name = "ecdsa_secp256k1_sha3_512_5722", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5722_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5722_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5722_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5723 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5723_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5723_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x01, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x52, 0x46, 0x53, 0xea, 0x07, 0xb7, 0xd3, 0x2f, 0x77, 0xaf, 0x71, 0x37, 0xf4, 0xb9, 0xaa, 0x15, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5723 = { .name = "ecdsa_secp256k1_sha3_512_5723", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5723_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5723_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5723_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5724 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5724_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5724_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x54, 0xd0, 0xf6, 0x30, 0x3a, 0x59, 0x41, 0xef, 0x00, 0x2f, 0xcc, 0x7a, 0xdb, 0x19, 0x3d, 0x93, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5724 = { .name = "ecdsa_secp256k1_sha3_512_5724", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5724_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5724_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5724_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5725 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5725_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5725_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x59, 0xf1, 0x00, 0xa7, 0xe4, 0xa7, 0x74, 0xcf, 0x8f, 0x04, 0x57, 0x7e, 0xbd, 0x9a, 0xb9, 0xac, 0x74, 0x5a, 0xf2, 0xde, 0xf7, 0x75, 0x70, 0xc4, 0x10, 0x61, 0x26, 0x98, 0x16, 0x8c, 0x2b, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5725 = { .name = "ecdsa_secp256k1_sha3_512_5725", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5725_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5725_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5725_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5726 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5726_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5726_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0xfe, 0x59, 0xf1, 0x00, 0xa7, 0xe4, 0xa7, 0x74, 0xcf, 0x8f, 0x04, 0x57, 0x7e, 0xbd, 0x9a, 0xb9, 0xad, 0xb9, 0xac, 0x15, 0xf8, 0x48, 0x2c, 0xd0, 0x88, 0x50, 0x8e, 0xc8, 0x0b, 0x46, 0x55, 0xea, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5726 = { .name = "ecdsa_secp256k1_sha3_512_5726", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5726_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5726_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5726_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5727 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5727_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5727_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x01, 0xa6, 0x0e, 0xff, 0x58, 0x1b, 0x58, 0x8b, 0x30, 0x70, 0xfb, 0xa8, 0x81, 0x42, 0x65, 0x46, 0x53, 0x8b, 0xa5, 0x0d, 0x21, 0x08, 0x8a, 0x8f, 0x3b, 0xef, 0x9e, 0xd9, 0x67, 0xe9, 0x73, 0xd4, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5727 = { .name = "ecdsa_secp256k1_sha3_512_5727", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5727_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5727_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5727_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5728 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5728_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5728_sig[] = { 0x7d, 0x68, 0x75, 0x7a, 0xc1, 0x97, 0x62, 0x4a, 0xe5, 0xc7, 0x7d, 0xfa, 0x1b, 0x3b, 0xdd, 0xa7, 0x08, 0xfa, 0x5a, 0x29, 0xfd, 0xf1, 0xfb, 0xd5, 0x77, 0x47, 0x2c, 0xcd, 0x4f, 0x32, 0xab, 0xe6, 0x59, 0xf1, 0x00, 0xa7, 0xe4, 0xa7, 0x74, 0xcf, 0x8f, 0x04, 0x57, 0x7e, 0xbd, 0x9a, 0xb9, 0xac, 0x74, 0x5a, 0xf2, 0xde, 0xf7, 0x75, 0x70, 0xc4, 0x10, 0x61, 0x26, 0x98, 0x16, 0x8c, 0x2b, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5728 = { .name = "ecdsa_secp256k1_sha3_512_5728", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5728_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5728_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5728_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5729 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5729_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5729_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5729 = { .name = "ecdsa_secp256k1_sha3_512_5729", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5729_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5729_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5729_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5730 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5730_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5730_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5730 = { .name = "ecdsa_secp256k1_sha3_512_5730", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5730_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5730_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5730_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5731 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5731_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5731_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5731 = { .name = "ecdsa_secp256k1_sha3_512_5731", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5731_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5731_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5731_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5732 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5732_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5732_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5732 = { .name = "ecdsa_secp256k1_sha3_512_5732", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5732_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5732_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5732_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5733 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5733_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5733_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5733 = { .name = "ecdsa_secp256k1_sha3_512_5733", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5733_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5733_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5733_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5734 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5734_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5734_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5734 = { .name = "ecdsa_secp256k1_sha3_512_5734", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5734_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5734_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5734_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5735 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5735_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5735_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5735 = { .name = "ecdsa_secp256k1_sha3_512_5735", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5735_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5735_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5735_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5736 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5736_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5736_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5736_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5736 = { .name = "ecdsa_secp256k1_sha3_512_5736", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5736_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5736_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5736_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5737 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5737_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5737_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5737 = { .name = "ecdsa_secp256k1_sha3_512_5737", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5737_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5737_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5737_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5738 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5738_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5738_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5738 = { .name = "ecdsa_secp256k1_sha3_512_5738", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5738_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5738_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5738_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5739 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5739_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5739_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5739 = { .name = "ecdsa_secp256k1_sha3_512_5739", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5739_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5739_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5739_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5740 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5740_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5740_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5740 = { .name = "ecdsa_secp256k1_sha3_512_5740", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5740_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5740_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5740_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5741 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5741_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5741_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5741 = { .name = "ecdsa_secp256k1_sha3_512_5741", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5741_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5741_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5741_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5742 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5742_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5742_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5742 = { .name = "ecdsa_secp256k1_sha3_512_5742", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5742_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5742_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5742_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5743 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5743_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5743_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5743 = { .name = "ecdsa_secp256k1_sha3_512_5743", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5743_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5743_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5743_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5744 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5744_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5744_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5744 = { .name = "ecdsa_secp256k1_sha3_512_5744", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5744_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5744_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5744_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5745 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5745_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5745_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5745 = { .name = "ecdsa_secp256k1_sha3_512_5745", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5745_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5745_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5745_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5746 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5746_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5746_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5746 = { .name = "ecdsa_secp256k1_sha3_512_5746", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5746_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5746_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5746_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5747 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5747_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5747_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5747 = { .name = "ecdsa_secp256k1_sha3_512_5747", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5747_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5747_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5747_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5748 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5748_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5748_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5748 = { .name = "ecdsa_secp256k1_sha3_512_5748", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5748_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5748_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5748_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5749 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5749_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5749_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5749 = { .name = "ecdsa_secp256k1_sha3_512_5749", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5749_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5749_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5749_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5750 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5750_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5750_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5750 = { .name = "ecdsa_secp256k1_sha3_512_5750", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5750_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5750_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5750_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5751 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5751_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5751_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5751 = { .name = "ecdsa_secp256k1_sha3_512_5751", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5751_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5751_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5751_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5752 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5752_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5752_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5752 = { .name = "ecdsa_secp256k1_sha3_512_5752", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5752_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5752_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5752_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5753 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5753_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5753_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5753 = { .name = "ecdsa_secp256k1_sha3_512_5753", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5753_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5753_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5753_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5754 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5754_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5754_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5754 = { .name = "ecdsa_secp256k1_sha3_512_5754", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5754_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5754_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5754_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5755 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5755_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5755_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5755 = { .name = "ecdsa_secp256k1_sha3_512_5755", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5755_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5755_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5755_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5756 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5756_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5756_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5756 = { .name = "ecdsa_secp256k1_sha3_512_5756", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5756_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5756_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5756_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5757 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5757_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5757_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5757 = { .name = "ecdsa_secp256k1_sha3_512_5757", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5757_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5757_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5757_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5758 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5758_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5758_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5758 = { .name = "ecdsa_secp256k1_sha3_512_5758", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5758_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5758_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5758_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5759 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5759_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5759_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5759 = { .name = "ecdsa_secp256k1_sha3_512_5759", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5759_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5759_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5759_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5760 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5760_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5760_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5760 = { .name = "ecdsa_secp256k1_sha3_512_5760", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5760_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5760_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5760_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5761 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5761_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5761_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5761 = { .name = "ecdsa_secp256k1_sha3_512_5761", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5761_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5761_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5761_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5762 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5762_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5762_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5762 = { .name = "ecdsa_secp256k1_sha3_512_5762", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5762_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5762_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5762_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5763 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5763_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5763_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5763 = { .name = "ecdsa_secp256k1_sha3_512_5763", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5763_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5763_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5763_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5764 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5764_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5764_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5764 = { .name = "ecdsa_secp256k1_sha3_512_5764", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5764_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5764_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5764_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5765 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5765_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5765_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5765 = { .name = "ecdsa_secp256k1_sha3_512_5765", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5765_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5765_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5765_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5766 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5766_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5766_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5766 = { .name = "ecdsa_secp256k1_sha3_512_5766", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5766_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5766_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5766_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5767 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5767_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5767_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5767 = { .name = "ecdsa_secp256k1_sha3_512_5767", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5767_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5767_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5767_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5768 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5768_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5768_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5768 = { .name = "ecdsa_secp256k1_sha3_512_5768", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5768_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5768_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5768_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5769 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5769_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5769_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5769 = { .name = "ecdsa_secp256k1_sha3_512_5769", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5769_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5769_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5769_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5770 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5770_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5770_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5770 = { .name = "ecdsa_secp256k1_sha3_512_5770", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5770_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5770_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5770_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5771 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5771_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5771_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5771 = { .name = "ecdsa_secp256k1_sha3_512_5771", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5771_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5771_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5771_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5772 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5772_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5772_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5772 = { .name = "ecdsa_secp256k1_sha3_512_5772", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5772_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5772_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5772_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5773 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5773_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5773_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5773 = { .name = "ecdsa_secp256k1_sha3_512_5773", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5773_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5773_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5773_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5774 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5774_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5774_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5774 = { .name = "ecdsa_secp256k1_sha3_512_5774", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5774_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5774_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5774_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5775 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5775_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5775_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5775 = { .name = "ecdsa_secp256k1_sha3_512_5775", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5775_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5775_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5775_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5776 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5776_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5776_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5776 = { .name = "ecdsa_secp256k1_sha3_512_5776", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5776_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5776_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5776_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5777 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5777_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5777_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5777 = { .name = "ecdsa_secp256k1_sha3_512_5777", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5777_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5777_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5777_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5778 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5778_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5778_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5778 = { .name = "ecdsa_secp256k1_sha3_512_5778", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5778_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5778_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5778_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5779 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5779_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5779_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5779 = { .name = "ecdsa_secp256k1_sha3_512_5779", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5779_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5779_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5779_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5780 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5780_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5780_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5780 = { .name = "ecdsa_secp256k1_sha3_512_5780", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5780_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5780_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5780_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5781 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5781_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5781_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5781 = { .name = "ecdsa_secp256k1_sha3_512_5781", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5781_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5781_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5781_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5782 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5782_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5782_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5782 = { .name = "ecdsa_secp256k1_sha3_512_5782", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5782_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5782_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5782_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5783 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5783_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5783_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5783 = { .name = "ecdsa_secp256k1_sha3_512_5783", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5783_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5783_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5783_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5784 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5784_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5784_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5784 = { .name = "ecdsa_secp256k1_sha3_512_5784", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5784_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5784_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5784_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5785 for ECDSA, tcId is 214 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5785_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5785_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5785 = { .name = "ecdsa_secp256k1_sha3_512_5785", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5785_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5785_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5785_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5786 for ECDSA, tcId is 215 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5786_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5786_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5786 = { .name = "ecdsa_secp256k1_sha3_512_5786", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5786_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5786_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5786_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5787 for ECDSA, tcId is 216 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5787_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5787_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5787 = { .name = "ecdsa_secp256k1_sha3_512_5787", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5787_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5787_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5787_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5788 for ECDSA, tcId is 217 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5788_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5788_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5788 = { .name = "ecdsa_secp256k1_sha3_512_5788", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5788_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5788_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5788_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5789 for ECDSA, tcId is 218 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5789_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5789_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5789 = { .name = "ecdsa_secp256k1_sha3_512_5789", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5789_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5789_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5789_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5790 for ECDSA, tcId is 219 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5790_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5790_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5790 = { .name = "ecdsa_secp256k1_sha3_512_5790", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5790_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5790_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5790_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5791 for ECDSA, tcId is 220 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5791_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5791_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5791 = { .name = "ecdsa_secp256k1_sha3_512_5791", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5791_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5791_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5791_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5792 for ECDSA, tcId is 221 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5792_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5792_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5792 = { .name = "ecdsa_secp256k1_sha3_512_5792", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5792_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5792_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5792_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5793 for ECDSA, tcId is 230 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5793_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5793_msg[] = { 0x37, 0x36, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5793_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0xf5, 0x13, 0x3b, 0x41, 0x77, 0x4a, 0x18, 0x52, 0x47, 0x72, 0x0d, 0x2a, 0xa5, 0xd8, 0x82, 0x6b, 0x6e, 0xc5, 0xaf, 0x4c, 0x07, 0x69, 0x36, 0xc8, 0xea, 0xa5, 0x2e, 0xd6, 0xcd, 0xf5, 0x94, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5793 = { .name = "ecdsa_secp256k1_sha3_512_5793", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5793_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5793_msg, .msglen = 4, .sig = ecdsa_secp256k1_sha3_512_5793_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5794 for ECDSA, tcId is 231 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5794_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5794_msg[] = { 0x32, 0x37, 0x32, 0x39, 0x37, 0x32, 0x36, 0x34, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5794_sig[] = { 0x90, 0x4b, 0x2b, 0xb6, 0xe9, 0xde, 0x8f, 0x73, 0x24, 0x3f, 0xa7, 0xec, 0xc1, 0x9a, 0x5a, 0x9f, 0xe0, 0x34, 0xac, 0xad, 0x2b, 0x75, 0xb9, 0x7c, 0x8c, 0xc8, 0x4a, 0x79, 0xc5, 0xf3, 0x57, 0x74, 0x81, 0x45, 0x23, 0x42, 0x98, 0x70, 0x40, 0xd4, 0x3f, 0x50, 0xc7, 0x2f, 0x2a, 0x52, 0x46, 0x43, 0x0a, 0xa7, 0x55, 0x9b, 0xee, 0x6c, 0x56, 0x66, 0x3f, 0xd1, 0x20, 0x29, 0x50, 0x7a, 0x91, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5794 = { .name = "ecdsa_secp256k1_sha3_512_5794", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5794_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5794_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5794_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5795 for ECDSA, tcId is 232 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5795_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5795_msg[] = { 0x34, 0x33, 0x31, 0x34, 0x37, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5795_sig[] = { 0xb0, 0x81, 0x22, 0xf0, 0x27, 0x07, 0x6f, 0x92, 0x4c, 0xd1, 0xdc, 0x87, 0x7c, 0x93, 0x65, 0x9e, 0xcf, 0x94, 0x24, 0x10, 0x77, 0x2f, 0xba, 0x58, 0x88, 0x1c, 0x91, 0x09, 0x31, 0x1b, 0xca, 0x53, 0x02, 0x87, 0xa0, 0x03, 0x3d, 0xf7, 0xc0, 0x69, 0xfb, 0xfa, 0xb7, 0xfa, 0xef, 0xff, 0xdd, 0xd7, 0x12, 0x19, 0x08, 0xfd, 0xef, 0x76, 0xc0, 0x4a, 0x1a, 0x40, 0x2d, 0x59, 0x9f, 0x04, 0x94, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5795 = { .name = "ecdsa_secp256k1_sha3_512_5795", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5795_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5795_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5795_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5796 for ECDSA, tcId is 233 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5796_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5796_msg[] = { 0x36, 0x36, 0x30, 0x33, 0x34, 0x33, 0x38, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5796_sig[] = { 0x48, 0xc0, 0x44, 0xb9, 0x4d, 0xe8, 0x80, 0x98, 0x98, 0x18, 0x4e, 0x37, 0x6a, 0x8a, 0x09, 0x03, 0x70, 0x76, 0x79, 0x35, 0x0e, 0x37, 0xce, 0x29, 0x0f, 0x85, 0x8c, 0x8b, 0xee, 0xf7, 0x8c, 0x6d, 0x6c, 0xcd, 0x83, 0x39, 0x4e, 0x8a, 0xbf, 0x4d, 0xf2, 0xa4, 0x0a, 0xfb, 0x00, 0x1c, 0xa4, 0x28, 0x4d, 0x91, 0x3d, 0x6b, 0x9c, 0xaf, 0x6e, 0xf2, 0x25, 0xd6, 0x6b, 0xdd, 0xdf, 0x9e, 0xb4, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5796 = { .name = "ecdsa_secp256k1_sha3_512_5796", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5796_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5796_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5796_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5797 for ECDSA, tcId is 234 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5797_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5797_msg[] = { 0x32, 0x38, 0x32, 0x39, 0x36, 0x32, 0x31, 0x34, 0x35, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5797_sig[] = { 0x05, 0x53, 0x5f, 0xc3, 0x92, 0x78, 0x26, 0x0e, 0xb2, 0xb8, 0xcf, 0xba, 0x00, 0x22, 0x6c, 0xb3, 0x15, 0x5d, 0x75, 0xc0, 0xcf, 0x6b, 0x41, 0x8a, 0xc5, 0x6d, 0xf6, 0x3b, 0x7c, 0x0b, 0x1e, 0x9b, 0x31, 0xae, 0xbd, 0x43, 0xe8, 0x48, 0x87, 0x43, 0x47, 0xb3, 0x8a, 0xd6, 0x4e, 0xf1, 0x72, 0xfa, 0x31, 0x5f, 0xda, 0x09, 0x64, 0x5c, 0x87, 0x52, 0xc0, 0xe0, 0x10, 0x15, 0x2e, 0x43, 0x41, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5797 = { .name = "ecdsa_secp256k1_sha3_512_5797", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5797_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5797_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5797_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5798 for ECDSA, tcId is 235 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5798_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5798_msg[] = { 0x34, 0x33, 0x31, 0x31, 0x38, 0x32, 0x31, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5798_sig[] = { 0x78, 0x95, 0x7c, 0x4f, 0x5a, 0x00, 0x0a, 0xf0, 0x5f, 0xc4, 0x77, 0xcc, 0x81, 0x3c, 0xc6, 0xdc, 0xd9, 0x44, 0x54, 0x38, 0x21, 0x5b, 0x1c, 0x49, 0x37, 0x80, 0xb6, 0xcc, 0xbd, 0x39, 0xa9, 0x65, 0x67, 0x02, 0x31, 0x27, 0xcc, 0xde, 0x41, 0x6b, 0x92, 0xcb, 0x3a, 0x75, 0x60, 0x43, 0x69, 0x50, 0xab, 0x64, 0x3b, 0xbf, 0x08, 0x38, 0x3e, 0xc9, 0xf4, 0xf6, 0x86, 0x2c, 0xdb, 0x30, 0x20, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5798 = { .name = "ecdsa_secp256k1_sha3_512_5798", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5798_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5798_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5798_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5799 for ECDSA, tcId is 236 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5799_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5799_msg[] = { 0x31, 0x31, 0x37, 0x37, 0x30, 0x37, 0x37, 0x34, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5799_sig[] = { 0xea, 0x1b, 0x7f, 0xd5, 0xba, 0x10, 0xee, 0xb7, 0x0a, 0x45, 0x6c, 0x14, 0x9d, 0x49, 0x4f, 0xa3, 0x75, 0x7a, 0x20, 0x90, 0x93, 0xc4, 0xdf, 0xcf, 0x03, 0x73, 0x0d, 0x1c, 0xd5, 0x48, 0x29, 0xe5, 0x3c, 0xd2, 0x04, 0xbb, 0x84, 0x65, 0x64, 0x35, 0xe3, 0x65, 0x6f, 0xa5, 0xe7, 0x6e, 0xdc, 0x4d, 0xf3, 0xee, 0x79, 0x61, 0x5f, 0x7f, 0x1a, 0xdf, 0xaf, 0x38, 0x8a, 0x7e, 0xec, 0x4f, 0x81, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5799 = { .name = "ecdsa_secp256k1_sha3_512_5799", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5799_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5799_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5799_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5800 for ECDSA, tcId is 237 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5800_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5800_msg[] = { 0x31, 0x35, 0x39, 0x38, 0x35, 0x31, 0x35, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5800_sig[] = { 0xc9, 0x61, 0x19, 0x52, 0xab, 0x60, 0x37, 0x53, 0xd0, 0x60, 0x1e, 0x0c, 0x97, 0xde, 0x91, 0xa6, 0xd2, 0x92, 0x7d, 0x38, 0xaf, 0xeb, 0x1b, 0x2b, 0x62, 0x2e, 0xa3, 0x84, 0x96, 0x8c, 0xbb, 0xe8, 0xdc, 0x32, 0xc4, 0x2c, 0xe6, 0x27, 0xf2, 0x86, 0xf7, 0xd1, 0x4a, 0xa4, 0xb0, 0x37, 0x58, 0x8a, 0xbf, 0xc2, 0x02, 0xb9, 0x16, 0xa7, 0xbf, 0x90, 0x51, 0xc3, 0xd0, 0x52, 0x7c, 0x66, 0xdc, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5800 = { .name = "ecdsa_secp256k1_sha3_512_5800", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5800_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5800_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5800_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5801 for ECDSA, tcId is 238 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5801_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5801_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x30, 0x31, 0x36, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5801_sig[] = { 0x12, 0xc9, 0x60, 0xe3, 0xfc, 0xfe, 0xe1, 0x73, 0x33, 0x51, 0x23, 0xfe, 0x15, 0xcd, 0x7f, 0x8c, 0x8b, 0xc5, 0x5f, 0x6f, 0x84, 0xa0, 0x71, 0xe4, 0x40, 0xb0, 0xe4, 0x18, 0xcc, 0x9c, 0x0c, 0x2c, 0x3f, 0x49, 0x42, 0x46, 0xc0, 0x88, 0x9b, 0x42, 0x13, 0x15, 0x0c, 0xe7, 0x7b, 0x6f, 0x5f, 0x29, 0x57, 0x47, 0x6d, 0x3f, 0xaf, 0x89, 0x81, 0x35, 0xd5, 0x6c, 0x14, 0x5f, 0xd3, 0xaf, 0x35, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5801 = { .name = "ecdsa_secp256k1_sha3_512_5801", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5801_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5801_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5801_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5802 for ECDSA, tcId is 239 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5802_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5802_msg[] = { 0x32, 0x30, 0x30, 0x34, 0x37, 0x38, 0x33, 0x33, 0x33, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5802_sig[] = { 0xdc, 0x92, 0x19, 0x12, 0xa7, 0x6a, 0x22, 0x58, 0x19, 0xd4, 0x95, 0x6a, 0x7f, 0xf0, 0x66, 0x0b, 0xcd, 0xf6, 0x95, 0xbd, 0xf2, 0x86, 0x28, 0x88, 0x58, 0xcc, 0xd5, 0xa2, 0x60, 0x01, 0x27, 0x71, 0x6b, 0xc5, 0x87, 0x91, 0x38, 0xb2, 0x07, 0xc3, 0xe4, 0xe6, 0x92, 0xd4, 0x41, 0x2c, 0x9a, 0x3f, 0xdf, 0xf9, 0x1a, 0xc5, 0x8a, 0x66, 0x9e, 0xc8, 0x30, 0xb6, 0x8b, 0x1c, 0xd5, 0x62, 0xe5, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5802 = { .name = "ecdsa_secp256k1_sha3_512_5802", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5802_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5802_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5802_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5803 for ECDSA, tcId is 240 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5803_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5803_msg[] = { 0x39, 0x35, 0x30, 0x30, 0x32, 0x34, 0x37, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5803_sig[] = { 0xe3, 0x1a, 0x34, 0xcb, 0x64, 0x7d, 0xdc, 0x65, 0xb0, 0x3f, 0x9b, 0xd0, 0x5a, 0xa3, 0xe5, 0xe6, 0x2a, 0x80, 0x0c, 0x6f, 0xb5, 0x67, 0x94, 0x84, 0x3b, 0x60, 0x6f, 0x1f, 0x08, 0x89, 0x05, 0x24, 0xe7, 0xf2, 0xe4, 0xff, 0x29, 0x1b, 0xd3, 0x09, 0xb0, 0x61, 0x74, 0x78, 0xda, 0x0f, 0xdb, 0xa9, 0x25, 0x35, 0x37, 0x6a, 0x69, 0xdc, 0x43, 0x06, 0x17, 0x83, 0xb3, 0xef, 0x92, 0x81, 0x13, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5803 = { .name = "ecdsa_secp256k1_sha3_512_5803", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5803_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5803_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5803_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5804 for ECDSA, tcId is 241 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5804_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5804_msg[] = { 0x32, 0x32, 0x30, 0x39, 0x35, 0x30, 0x30, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5804_sig[] = { 0x47, 0xb8, 0x25, 0xbd, 0xd6, 0x7c, 0xb5, 0xd9, 0x1f, 0x01, 0x7d, 0x52, 0xea, 0x77, 0xf5, 0x9b, 0x1d, 0xe1, 0xe0, 0x5b, 0xe4, 0x8a, 0x46, 0x99, 0x78, 0xfc, 0x88, 0xca, 0x57, 0x7d, 0xba, 0x2c, 0x53, 0xee, 0x36, 0x9d, 0x5b, 0x89, 0xbf, 0x58, 0xb3, 0xc7, 0x62, 0x18, 0xb7, 0xce, 0xcf, 0x12, 0xde, 0x68, 0x12, 0x71, 0x52, 0x91, 0x7c, 0x58, 0xee, 0x15, 0x5e, 0xe8, 0x5d, 0xc6, 0x64, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5804 = { .name = "ecdsa_secp256k1_sha3_512_5804", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5804_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5804_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5804_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5805 for ECDSA, tcId is 242 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5805_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5805_msg[] = { 0x38, 0x31, 0x39, 0x33, 0x37, 0x38, 0x39, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5805_sig[] = { 0x85, 0xb2, 0xd5, 0xfa, 0xa6, 0x5c, 0xd1, 0x62, 0xe6, 0x66, 0xdf, 0x35, 0xbe, 0xb5, 0x35, 0xc7, 0x97, 0xe7, 0xa2, 0xa2, 0x08, 0x36, 0xd3, 0x51, 0xeb, 0xcf, 0xf7, 0x98, 0xc3, 0x43, 0x30, 0x9b, 0x19, 0x6a, 0x83, 0x7a, 0xab, 0xc1, 0x9f, 0xa4, 0x52, 0x2c, 0x5f, 0xac, 0x4c, 0x8e, 0x63, 0xe7, 0xcf, 0x3a, 0x58, 0x19, 0xc9, 0x7f, 0xce, 0xc1, 0x0e, 0x80, 0xf3, 0x3e, 0x41, 0xf2, 0x66, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5805 = { .name = "ecdsa_secp256k1_sha3_512_5805", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5805_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5805_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5805_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5806 for ECDSA, tcId is 243 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5806_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5806_msg[] = { 0x33, 0x36, 0x35, 0x30, 0x36, 0x30, 0x33, 0x32, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5806_sig[] = { 0xde, 0x53, 0x8d, 0xca, 0xf2, 0x20, 0x33, 0x4a, 0xca, 0x9f, 0xbc, 0x11, 0xd1, 0x57, 0x66, 0x43, 0x66, 0x2c, 0x66, 0x58, 0x5e, 0x26, 0x8b, 0xc0, 0xeb, 0x33, 0x16, 0x08, 0xad, 0x95, 0x23, 0xed, 0x1b, 0x1d, 0x32, 0x79, 0x0d, 0x46, 0xc6, 0x92, 0x5a, 0xb9, 0x09, 0x40, 0x81, 0x70, 0x83, 0x9f, 0x83, 0xe6, 0xa0, 0x3a, 0x76, 0x32, 0xec, 0x88, 0x77, 0xa0, 0xc1, 0x91, 0xff, 0xfb, 0xee, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5806 = { .name = "ecdsa_secp256k1_sha3_512_5806", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5806_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5806_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5806_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5807 for ECDSA, tcId is 244 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5807_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5807_msg[] = { 0x31, 0x36, 0x33, 0x38, 0x33, 0x39, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5807_sig[] = { 0xb5, 0xd4, 0x5e, 0x7f, 0xe1, 0x19, 0x6b, 0xf5, 0xe0, 0x76, 0xfd, 0x76, 0x74, 0x2c, 0x1e, 0x12, 0xee, 0xfa, 0x79, 0x34, 0xde, 0x82, 0x6d, 0x73, 0x95, 0x64, 0x6c, 0x94, 0xa8, 0x01, 0x3f, 0xbc, 0xf5, 0x47, 0x5a, 0xba, 0xb6, 0x5d, 0x9e, 0xf6, 0x46, 0x16, 0xfd, 0xe9, 0x5b, 0x3c, 0xa6, 0xb7, 0x5f, 0xa8, 0x64, 0x75, 0x89, 0x50, 0x01, 0x54, 0x41, 0xa4, 0x41, 0x4a, 0xcd, 0xd0, 0xc8, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5807 = { .name = "ecdsa_secp256k1_sha3_512_5807", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5807_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5807_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5807_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5808 for ECDSA, tcId is 245 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5808_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5808_msg[] = { 0x32, 0x30, 0x39, 0x31, 0x37, 0x36, 0x38, 0x32, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5808_sig[] = { 0xd9, 0x73, 0xf8, 0xf2, 0x0c, 0x33, 0x77, 0x24, 0x13, 0xf2, 0x14, 0xd1, 0xb8, 0x70, 0x9c, 0xce, 0xaa, 0xd1, 0x59, 0xc9, 0x21, 0x1c, 0xcf, 0x33, 0x7e, 0x74, 0x77, 0xda, 0x19, 0x7d, 0x49, 0x53, 0x8d, 0x4c, 0x39, 0xee, 0x66, 0x53, 0x2e, 0x2c, 0xee, 0xa2, 0xf0, 0x86, 0x1e, 0xe0, 0x27, 0x81, 0xba, 0x03, 0x39, 0xee, 0xfb, 0x30, 0xbc, 0x06, 0x21, 0x8f, 0x4a, 0x63, 0xfd, 0x86, 0xc1, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5808 = { .name = "ecdsa_secp256k1_sha3_512_5808", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5808_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5808_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5808_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5809 for ECDSA, tcId is 246 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5809_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5809_msg[] = { 0x39, 0x33, 0x36, 0x34, 0x37, 0x30, 0x32, 0x38, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5809_sig[] = { 0xc4, 0x87, 0xab, 0x06, 0x6b, 0x8b, 0xda, 0xc1, 0x2b, 0x5c, 0x72, 0x85, 0x86, 0xa6, 0x1e, 0x42, 0xd0, 0xa1, 0xbe, 0xa1, 0x6f, 0xb5, 0x44, 0xd3, 0xbd, 0x56, 0xfe, 0xde, 0x77, 0xbb, 0x3d, 0xb9, 0xd2, 0x70, 0x22, 0xa1, 0x79, 0x57, 0xdc, 0x23, 0xbd, 0x76, 0x0d, 0x0f, 0x00, 0xe9, 0x3f, 0x10, 0x18, 0x9c, 0x67, 0xd3, 0x2a, 0x9e, 0xc5, 0x48, 0x95, 0x14, 0xf1, 0x40, 0xe4, 0x92, 0x72, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5809 = { .name = "ecdsa_secp256k1_sha3_512_5809", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5809_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5809_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5809_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5810 for ECDSA, tcId is 247 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5810_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5810_msg[] = { 0x39, 0x32, 0x36, 0x38, 0x36, 0x38, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5810_sig[] = { 0xf7, 0x77, 0x76, 0x48, 0xb1, 0x5a, 0xf8, 0x9a, 0xf4, 0x0c, 0xf9, 0xea, 0x0a, 0x3c, 0x87, 0x5a, 0xa0, 0xd9, 0xd7, 0x36, 0xec, 0xa5, 0x29, 0xaf, 0x4e, 0xb6, 0x23, 0x8f, 0x78, 0xa5, 0x62, 0xd2, 0x3b, 0x70, 0xd4, 0x6e, 0x14, 0x39, 0xbc, 0x5d, 0x94, 0x1b, 0xda, 0xe8, 0x50, 0x76, 0x25, 0x97, 0x1c, 0x1c, 0x64, 0xdc, 0xf4, 0xc5, 0x1b, 0xcd, 0xb4, 0x3b, 0x1c, 0xa3, 0xae, 0x03, 0x73, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5810 = { .name = "ecdsa_secp256k1_sha3_512_5810", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5810_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5810_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5810_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5811 for ECDSA, tcId is 248 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5811_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5811_msg[] = { 0x35, 0x31, 0x37, 0x38, 0x31, 0x33, 0x34, 0x38, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5811_sig[] = { 0x7b, 0xb4, 0x64, 0x6c, 0x88, 0x70, 0x62, 0xa6, 0xc3, 0xe6, 0x80, 0xb1, 0x49, 0x18, 0x54, 0xc4, 0xb2, 0x6a, 0x47, 0x28, 0xe5, 0xf2, 0xb2, 0xc1, 0xcc, 0x30, 0x87, 0xc7, 0x80, 0xda, 0xb7, 0xb3, 0x62, 0x90, 0x0f, 0x55, 0xb8, 0x85, 0x61, 0x7f, 0x9b, 0x3c, 0x7e, 0xf3, 0x4c, 0x67, 0xec, 0xc3, 0x7b, 0xf7, 0x8e, 0x11, 0xa0, 0x4c, 0xd6, 0xb9, 0x05, 0x2e, 0xb8, 0x0f, 0x97, 0x56, 0x55, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5811 = { .name = "ecdsa_secp256k1_sha3_512_5811", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5811_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5811_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5811_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5812 for ECDSA, tcId is 249 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5812_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5812_msg[] = { 0x34, 0x37, 0x33, 0x35, 0x30, 0x31, 0x30, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5812_sig[] = { 0x4a, 0x96, 0xed, 0x67, 0xd0, 0x95, 0x0d, 0x97, 0xa8, 0x67, 0x5c, 0x30, 0x2f, 0x61, 0x02, 0x21, 0x5c, 0xe0, 0xec, 0x83, 0x7f, 0xf5, 0x3f, 0xbf, 0x06, 0xb5, 0x7b, 0x01, 0x05, 0x26, 0xb5, 0x74, 0x8d, 0xeb, 0x5f, 0x7a, 0x7c, 0x8c, 0xbe, 0xff, 0x01, 0xc3, 0x44, 0x37, 0x00, 0xb8, 0xda, 0x12, 0x90, 0x88, 0x77, 0x1c, 0x8c, 0x2b, 0xf4, 0xce, 0xca, 0x2a, 0x5f, 0xa8, 0x11, 0x38, 0xa5, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5812 = { .name = "ecdsa_secp256k1_sha3_512_5812", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5812_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5812_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5812_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5813 for ECDSA, tcId is 250 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5813_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5813_msg[] = { 0x31, 0x34, 0x33, 0x35, 0x33, 0x39, 0x31, 0x31, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5813_sig[] = { 0xd9, 0xc3, 0x93, 0x8a, 0x4b, 0x91, 0xd0, 0x66, 0x0f, 0x6d, 0xda, 0xe8, 0x54, 0x0a, 0x7b, 0xbe, 0xae, 0x2b, 0x0d, 0x71, 0x7b, 0xde, 0x1f, 0x33, 0xe6, 0x90, 0x42, 0x80, 0x19, 0x74, 0x71, 0x93, 0x9b, 0x02, 0x2d, 0x65, 0x47, 0xab, 0xf9, 0xbe, 0xf9, 0x80, 0xbf, 0x8f, 0xd6, 0x7c, 0x36, 0x6e, 0x23, 0x4e, 0xff, 0x3a, 0xeb, 0xee, 0x58, 0xa7, 0xee, 0x56, 0xd3, 0x35, 0xdf, 0x80, 0x7a, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5813 = { .name = "ecdsa_secp256k1_sha3_512_5813", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5813_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5813_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5813_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5814 for ECDSA, tcId is 251 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5814_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5814_msg[] = { 0x31, 0x33, 0x38, 0x34, 0x35, 0x34, 0x39, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5814_sig[] = { 0xf8, 0x55, 0xa2, 0xd2, 0x37, 0x01, 0x6b, 0x1e, 0x0e, 0xc3, 0x07, 0x67, 0x2a, 0x79, 0x36, 0x68, 0xb6, 0x11, 0xd2, 0xb6, 0xd4, 0xe5, 0xac, 0xfe, 0x2b, 0x20, 0x88, 0xaa, 0xdd, 0x62, 0x96, 0xa7, 0x13, 0xc6, 0x0a, 0xcb, 0x5e, 0x6f, 0xa5, 0x1f, 0x03, 0xee, 0x8c, 0xbe, 0x3a, 0x22, 0x0f, 0x3a, 0xc1, 0xce, 0x52, 0x7d, 0xae, 0xe0, 0x5e, 0x9d, 0x74, 0x30, 0x34, 0x30, 0x30, 0xde, 0xa7, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5814 = { .name = "ecdsa_secp256k1_sha3_512_5814", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5814_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5814_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5814_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5815 for ECDSA, tcId is 252 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5815_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5815_msg[] = { 0x32, 0x37, 0x36, 0x32, 0x31, 0x39, 0x32, 0x37, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5815_sig[] = { 0xb8, 0xdd, 0xb1, 0xed, 0x6e, 0x80, 0x05, 0x6f, 0xb9, 0xce, 0xa2, 0x59, 0x0b, 0x1b, 0x63, 0xcf, 0xd1, 0xe8, 0x09, 0x8c, 0x27, 0x54, 0x7e, 0xc8, 0xc6, 0xca, 0xcd, 0x78, 0xe6, 0xeb, 0xfd, 0xdb, 0x75, 0x14, 0xac, 0x66, 0x44, 0x95, 0x57, 0x44, 0x94, 0x6f, 0xcb, 0x56, 0x17, 0xf8, 0xb0, 0x67, 0x85, 0x0a, 0x3e, 0xcf, 0x82, 0x9d, 0x82, 0x1f, 0x18, 0x43, 0x5a, 0x5e, 0x11, 0xa4, 0xa5, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5815 = { .name = "ecdsa_secp256k1_sha3_512_5815", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5815_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5815_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5815_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5816 for ECDSA, tcId is 253 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5816_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5816_msg[] = { 0x31, 0x38, 0x33, 0x31, 0x36, 0x35, 0x34, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5816_sig[] = { 0xe9, 0x03, 0xb7, 0xea, 0xd4, 0x54, 0xff, 0x8d, 0xe8, 0x71, 0xfd, 0xf6, 0x7b, 0x6b, 0xae, 0x4d, 0xdc, 0x88, 0x25, 0x4c, 0x35, 0xb3, 0x33, 0xa9, 0x8b, 0xa3, 0xa2, 0xf6, 0x56, 0x26, 0x78, 0xa5, 0xf7, 0x13, 0xe1, 0x02, 0x93, 0xae, 0xc6, 0x0e, 0x63, 0xc2, 0xa7, 0x9b, 0x18, 0x91, 0x29, 0xe5, 0x49, 0x19, 0xa7, 0x4c, 0xda, 0x6a, 0x20, 0x4a, 0x27, 0x27, 0xc1, 0x3b, 0xb6, 0x3a, 0x25, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5816 = { .name = "ecdsa_secp256k1_sha3_512_5816", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5816_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5816_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5816_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5817 for ECDSA, tcId is 254 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5817_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5817_msg[] = { 0x32, 0x34, 0x33, 0x36, 0x38, 0x39, 0x39, 0x30, 0x33, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5817_sig[] = { 0x61, 0x52, 0x08, 0xd0, 0x6b, 0x39, 0x2c, 0x41, 0x8f, 0xba, 0x55, 0xc7, 0x52, 0xfe, 0xf7, 0xb9, 0xab, 0x8e, 0xd4, 0x7d, 0x98, 0xf4, 0x07, 0x76, 0xd8, 0x6f, 0xf4, 0xbf, 0xa3, 0xe9, 0x54, 0x64, 0xf4, 0x03, 0xd5, 0x98, 0x4d, 0x44, 0x6a, 0xcb, 0x20, 0x3e, 0xba, 0x58, 0xa5, 0x46, 0x83, 0x72, 0x26, 0x7f, 0x90, 0x04, 0xf2, 0x63, 0xaa, 0xa1, 0xea, 0xa2, 0x08, 0x65, 0x22, 0x97, 0xdb, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5817 = { .name = "ecdsa_secp256k1_sha3_512_5817", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5817_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5817_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5817_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5818 for ECDSA, tcId is 255 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5818_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5818_msg[] = { 0x32, 0x30, 0x34, 0x30, 0x34, 0x31, 0x32, 0x32, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5818_sig[] = { 0x0e, 0xb6, 0x5a, 0x5b, 0xc3, 0x38, 0xcd, 0x92, 0x0a, 0x17, 0x46, 0x48, 0xdd, 0x84, 0xed, 0x54, 0x43, 0xf3, 0x74, 0x17, 0xd8, 0xd7, 0x30, 0xce, 0xab, 0x0d, 0xd3, 0xfb, 0x9a, 0x20, 0x46, 0xf3, 0xc7, 0xa8, 0x6d, 0x7e, 0x09, 0xf5, 0xe1, 0x42, 0xfc, 0x6d, 0x45, 0xa1, 0x36, 0xb4, 0x58, 0x1e, 0x08, 0x1f, 0x66, 0xa2, 0x6f, 0xe0, 0x25, 0x5f, 0x01, 0x2b, 0x81, 0x2d, 0x7c, 0xf9, 0x01, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5818 = { .name = "ecdsa_secp256k1_sha3_512_5818", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5818_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5818_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5818_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5819 for ECDSA, tcId is 256 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5819_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5819_msg[] = { 0x33, 0x33, 0x33, 0x37, 0x31, 0x31, 0x39, 0x39, 0x37, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5819_sig[] = { 0x22, 0x64, 0x64, 0x50, 0x1f, 0x1c, 0xcc, 0x32, 0xf1, 0xe1, 0x48, 0x2f, 0xff, 0x46, 0x24, 0xf4, 0x94, 0x93, 0x43, 0xc7, 0x9a, 0x82, 0x0d, 0x4b, 0x9d, 0xf6, 0x37, 0xb4, 0x93, 0xab, 0x5b, 0x23, 0x4e, 0xb4, 0x7d, 0x0f, 0xd1, 0x4d, 0xb4, 0x48, 0xce, 0xdd, 0x61, 0x1e, 0x1d, 0xae, 0x97, 0x2b, 0xdf, 0x27, 0xce, 0x0f, 0xcf, 0xc1, 0x9d, 0x9e, 0xc5, 0xbd, 0xa9, 0x68, 0x30, 0x81, 0x59, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5819 = { .name = "ecdsa_secp256k1_sha3_512_5819", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5819_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5819_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5819_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5820 for ECDSA, tcId is 257 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5820_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5820_msg[] = { 0x36, 0x36, 0x39, 0x35, 0x36, 0x32, 0x30, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5820_sig[] = { 0xbc, 0x0d, 0x70, 0x6b, 0x5f, 0xdf, 0x10, 0x28, 0x05, 0xcf, 0x83, 0xf6, 0x6c, 0xe1, 0x7a, 0x97, 0xae, 0xbd, 0x5e, 0x3b, 0x6e, 0x7d, 0x5c, 0x00, 0x8c, 0xd5, 0x11, 0x64, 0x75, 0x0a, 0xf1, 0x08, 0x65, 0x13, 0x88, 0xd1, 0x90, 0xda, 0x29, 0x74, 0x8d, 0xf3, 0x43, 0xdc, 0x61, 0xe2, 0x3c, 0x24, 0x8c, 0x75, 0x30, 0x13, 0xa5, 0x68, 0x86, 0x52, 0xca, 0x43, 0xd2, 0x22, 0xed, 0xd1, 0xbf, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5820 = { .name = "ecdsa_secp256k1_sha3_512_5820", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5820_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5820_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5820_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5821 for ECDSA, tcId is 258 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5821_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5821_msg[] = { 0x32, 0x30, 0x39, 0x33, 0x30, 0x31, 0x37, 0x37, 0x34, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5821_sig[] = { 0x39, 0xa1, 0xd9, 0x92, 0x73, 0x56, 0xd6, 0x84, 0x9b, 0x7e, 0x96, 0xcd, 0x34, 0xa5, 0x82, 0x8b, 0xad, 0x11, 0x26, 0x87, 0x19, 0x86, 0x37, 0xe7, 0xb8, 0x49, 0x00, 0xed, 0x92, 0xfa, 0xd0, 0xb7, 0x9b, 0x5c, 0x75, 0x3e, 0x2e, 0x10, 0x61, 0x9e, 0x19, 0x93, 0xb8, 0xd8, 0x17, 0x1a, 0x7a, 0xa4, 0xc4, 0x81, 0x3a, 0x87, 0x21, 0xac, 0xa1, 0xf7, 0x9b, 0xef, 0x06, 0xc0, 0xfa, 0x85, 0x84, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5821 = { .name = "ecdsa_secp256k1_sha3_512_5821", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5821_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5821_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5821_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5822 for ECDSA, tcId is 259 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5822_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x31, 0x37, 0x39, 0x31, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5822_sig[] = { 0xd5, 0x7a, 0xdd, 0xa8, 0x92, 0x6a, 0x6b, 0x75, 0xa5, 0xc9, 0x94, 0xa0, 0xb8, 0xab, 0xc7, 0x55, 0x34, 0xe6, 0x8b, 0xd7, 0x9b, 0x02, 0xb8, 0xea, 0xeb, 0x1a, 0x7a, 0xdd, 0x4c, 0x5c, 0x42, 0x32, 0x3b, 0x34, 0x94, 0x31, 0xe3, 0x77, 0x40, 0xc6, 0x0f, 0x92, 0xc5, 0x5d, 0xcc, 0x8a, 0x9f, 0x55, 0xe7, 0x0e, 0x27, 0xb9, 0xf7, 0x3d, 0x82, 0xe3, 0x7d, 0x72, 0x8b, 0xa7, 0x26, 0x6c, 0xdd, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5822 = { .name = "ecdsa_secp256k1_sha3_512_5822", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5822_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5822_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5822_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5823 for ECDSA, tcId is 260 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5823_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5823_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, 0x36, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5823_sig[] = { 0x7d, 0x5b, 0x4c, 0x29, 0x59, 0x9e, 0x97, 0x08, 0x56, 0x86, 0x53, 0x4f, 0x84, 0x3d, 0x71, 0xd2, 0x5f, 0x22, 0xb9, 0x6d, 0x89, 0xc7, 0x0b, 0x40, 0x30, 0xab, 0xcb, 0xe6, 0xab, 0xd7, 0x35, 0x59, 0x28, 0x79, 0x7e, 0xd8, 0x71, 0x20, 0xc4, 0xbf, 0x50, 0xe3, 0x7b, 0x07, 0x04, 0xd2, 0xd3, 0xb4, 0xe0, 0xb1, 0xb9, 0x8c, 0x27, 0xe6, 0x18, 0xeb, 0x99, 0x56, 0x8b, 0x08, 0x12, 0x3a, 0x1b, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5823 = { .name = "ecdsa_secp256k1_sha3_512_5823", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5823_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5823_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5823_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5824 for ECDSA, tcId is 261 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5824_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5824_msg[] = { 0x31, 0x31, 0x34, 0x31, 0x37, 0x32, 0x34, 0x31, 0x34, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5824_sig[] = { 0x0d, 0xb6, 0xc5, 0x47, 0xa1, 0xe7, 0xbb, 0xb7, 0x15, 0xb4, 0x8b, 0x79, 0x74, 0x10, 0x4b, 0x6d, 0x76, 0x18, 0xf1, 0xdf, 0xed, 0x77, 0x01, 0x9d, 0xaa, 0x29, 0xbd, 0x59, 0xb2, 0x73, 0xc0, 0x87, 0x57, 0xf0, 0x54, 0x58, 0x7c, 0xdd, 0x56, 0x28, 0x77, 0x2c, 0x14, 0xdd, 0xe0, 0xa7, 0x7d, 0xc5, 0xc1, 0xba, 0xd0, 0x68, 0x28, 0x41, 0x0c, 0x5c, 0x63, 0xb9, 0xc1, 0xb3, 0x5f, 0xe0, 0x44, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5824 = { .name = "ecdsa_secp256k1_sha3_512_5824", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5824_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5824_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5824_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5825 for ECDSA, tcId is 262 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5825_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5825_msg[] = { 0x32, 0x32, 0x36, 0x38, 0x32, 0x34, 0x36, 0x34, 0x39, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5825_sig[] = { 0x09, 0x4a, 0x1e, 0x17, 0x20, 0x12, 0xd9, 0x36, 0x78, 0x52, 0xf2, 0x28, 0xf4, 0x9c, 0x38, 0x2b, 0xbd, 0xf1, 0x9a, 0x6b, 0x35, 0x4b, 0x85, 0x11, 0x80, 0x7e, 0x58, 0x5c, 0xd4, 0x6e, 0x90, 0x7f, 0x0e, 0x50, 0x74, 0x0d, 0xa3, 0x04, 0x19, 0xa9, 0x87, 0xcc, 0xd5, 0x67, 0x46, 0xb8, 0x73, 0x7a, 0xa7, 0x4a, 0x12, 0x92, 0x89, 0x2e, 0xef, 0x99, 0xa3, 0x40, 0x25, 0xae, 0xbb, 0x6d, 0xd2, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5825 = { .name = "ecdsa_secp256k1_sha3_512_5825", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5825_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5825_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5825_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5826 for ECDSA, tcId is 263 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5826_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5826_msg[] = { 0x32, 0x37, 0x32, 0x34, 0x37, 0x39, 0x36, 0x37, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5826_sig[] = { 0x73, 0xa5, 0x44, 0x58, 0x95, 0xe0, 0x79, 0x66, 0x86, 0xdc, 0x28, 0xc3, 0xe4, 0xcd, 0x5b, 0xc1, 0xf8, 0x53, 0x68, 0xb3, 0x26, 0x4b, 0x45, 0x5d, 0x47, 0x0a, 0x7c, 0xbe, 0xb7, 0x59, 0x2d, 0x91, 0x8a, 0x9f, 0xfa, 0xbf, 0x9f, 0x65, 0x92, 0x17, 0x34, 0x93, 0x4d, 0x65, 0x05, 0x3a, 0x00, 0xbf, 0xa3, 0xc3, 0x53, 0xac, 0x81, 0xcc, 0x9b, 0x6f, 0x60, 0x27, 0x16, 0x35, 0x02, 0x6c, 0xd0, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5826 = { .name = "ecdsa_secp256k1_sha3_512_5826", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5826_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5826_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5826_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5827 for ECDSA, tcId is 264 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5827_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5827_msg[] = { 0x39, 0x37, 0x33, 0x33, 0x39, 0x35, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5827_sig[] = { 0x06, 0x30, 0xf2, 0xc6, 0x27, 0x7e, 0x9e, 0x04, 0x14, 0xb7, 0xe8, 0xda, 0x64, 0x31, 0x18, 0x50, 0xb6, 0xf3, 0x91, 0x21, 0x93, 0x97, 0x0f, 0xd6, 0xe2, 0xf4, 0xdf, 0x79, 0xdf, 0x72, 0x0c, 0x7c, 0x6c, 0xcd, 0xaf, 0x47, 0xa4, 0x4e, 0xe1, 0x04, 0x3b, 0x76, 0xef, 0x62, 0xb3, 0xde, 0x3a, 0xee, 0x87, 0x6c, 0x26, 0xf4, 0xef, 0xe4, 0x92, 0xcb, 0x36, 0x49, 0x42, 0x3e, 0x59, 0x97, 0x53, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5827 = { .name = "ecdsa_secp256k1_sha3_512_5827", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5827_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5827_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5827_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5828 for ECDSA, tcId is 265 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5828_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5828_msg[] = { 0x31, 0x35, 0x30, 0x37, 0x30, 0x30, 0x32, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5828_sig[] = { 0x1e, 0x1b, 0x75, 0xa3, 0x49, 0x5b, 0xb5, 0xce, 0xb2, 0xad, 0xb8, 0x4b, 0x80, 0xf1, 0x17, 0x67, 0x2b, 0x79, 0xc5, 0xbc, 0x71, 0xe9, 0x53, 0xd1, 0xa2, 0x74, 0xb1, 0x1d, 0xc4, 0x23, 0x87, 0x29, 0xdc, 0xf4, 0x8d, 0x93, 0x0d, 0x89, 0xc0, 0xd3, 0x01, 0xe9, 0x7f, 0x90, 0x83, 0x48, 0x7e, 0x63, 0xcb, 0x39, 0x12, 0x73, 0x10, 0xb0, 0xf5, 0xe3, 0xc8, 0x76, 0x9e, 0x98, 0xe5, 0xb2, 0x60, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5828 = { .name = "ecdsa_secp256k1_sha3_512_5828", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5828_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5828_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5828_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5829 for ECDSA, tcId is 266 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5829_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5829_msg[] = { 0x33, 0x37, 0x34, 0x33, 0x35, 0x36, 0x38, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5829_sig[] = { 0xeb, 0x92, 0xe1, 0xa8, 0x0a, 0xd7, 0xf4, 0x40, 0xd8, 0xa2, 0xe9, 0xd8, 0x8a, 0xc7, 0x65, 0xc5, 0xcb, 0xf7, 0x24, 0xbd, 0x36, 0x7f, 0x41, 0x4c, 0x9d, 0x91, 0xcc, 0x19, 0x04, 0xaf, 0xe4, 0x97, 0x74, 0xfe, 0x0e, 0xc7, 0xcc, 0x01, 0x22, 0xee, 0xa4, 0xe6, 0x3c, 0x4d, 0x16, 0xc8, 0x9e, 0xdf, 0x6a, 0x57, 0x82, 0x31, 0x78, 0xc3, 0x74, 0x7b, 0x01, 0xe7, 0xaf, 0xf3, 0xdf, 0x71, 0x00, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5829 = { .name = "ecdsa_secp256k1_sha3_512_5829", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5829_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5829_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5829_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5830 for ECDSA, tcId is 267 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5830_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5830_msg[] = { 0x39, 0x34, 0x37, 0x36, 0x37, 0x31, 0x32, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5830_sig[] = { 0x7c, 0x99, 0xe1, 0xae, 0x69, 0x41, 0xf4, 0xbc, 0xf5, 0x4e, 0xa6, 0x54, 0x91, 0xca, 0xfc, 0xa1, 0x80, 0xee, 0xe1, 0x60, 0x5a, 0x2e, 0xd9, 0x08, 0xc4, 0x76, 0xee, 0x67, 0xcb, 0xdd, 0x73, 0x73, 0x1f, 0x94, 0xf0, 0x3e, 0xd4, 0x7c, 0xc9, 0x67, 0x4a, 0xbb, 0x29, 0x4c, 0xfe, 0x7e, 0x7b, 0x10, 0xad, 0x67, 0x10, 0x1b, 0x8c, 0xb2, 0x45, 0xa8, 0xb5, 0xfb, 0x88, 0x3a, 0x21, 0xa0, 0x6d, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5830 = { .name = "ecdsa_secp256k1_sha3_512_5830", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5830_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5830_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5830_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5831 for ECDSA, tcId is 268 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5831_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5831_msg[] = { 0x37, 0x32, 0x35, 0x34, 0x34, 0x34, 0x33, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5831_sig[] = { 0x29, 0xbd, 0x14, 0xa9, 0xda, 0xfb, 0xe5, 0x62, 0xe0, 0xc4, 0xc0, 0xd4, 0xae, 0xcb, 0x64, 0x91, 0xbb, 0xd3, 0x7f, 0x70, 0x71, 0x33, 0xf7, 0x8f, 0xc5, 0xcb, 0x33, 0x13, 0x36, 0x53, 0x77, 0xb7, 0x2e, 0xa1, 0xd8, 0x62, 0x46, 0xd8, 0xed, 0xad, 0x31, 0x13, 0x2f, 0x3d, 0xbe, 0x64, 0x2c, 0xac, 0x48, 0x86, 0x90, 0x84, 0x9b, 0xdd, 0x74, 0x38, 0xd5, 0xc6, 0x26, 0xcf, 0x8c, 0x97, 0x39, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5831 = { .name = "ecdsa_secp256k1_sha3_512_5831", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5831_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5831_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5831_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5832 for ECDSA, tcId is 269 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5832_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5832_msg[] = { 0x35, 0x35, 0x33, 0x34, 0x30, 0x32, 0x31, 0x32, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5832_sig[] = { 0xcf, 0x72, 0x19, 0xdc, 0xc1, 0x8e, 0x22, 0xbd, 0x48, 0x7b, 0x6f, 0x59, 0xc6, 0x49, 0x4f, 0x63, 0x7c, 0x5f, 0x0c, 0xcb, 0x18, 0x19, 0x2e, 0x9e, 0x60, 0x17, 0x86, 0x21, 0x22, 0x0b, 0x49, 0xfc, 0xa0, 0x5d, 0x5a, 0xbb, 0xe2, 0x5a, 0x61, 0x0c, 0x8e, 0x36, 0x15, 0xcf, 0x7d, 0x01, 0xc6, 0x95, 0x63, 0xdd, 0xbf, 0xe7, 0x6d, 0x72, 0x35, 0xfd, 0xa4, 0x5f, 0x04, 0x6a, 0xf0, 0x3e, 0x50, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5832 = { .name = "ecdsa_secp256k1_sha3_512_5832", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5832_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5832_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5832_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5833 for ECDSA, tcId is 270 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5833_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5833_msg[] = { 0x31, 0x32, 0x33, 0x30, 0x31, 0x38, 0x31, 0x33, 0x37, 0x39, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5833_sig[] = { 0x15, 0x89, 0xde, 0x61, 0xcd, 0x31, 0x5b, 0xa0, 0xbf, 0x7f, 0x0e, 0x57, 0x7f, 0x00, 0x58, 0x9d, 0x28, 0xf7, 0x21, 0x31, 0xf4, 0xc7, 0xaf, 0x41, 0xc6, 0xbb, 0x31, 0xae, 0x8b, 0xa2, 0x71, 0xda, 0x2f, 0xf8, 0x2a, 0x9a, 0x1f, 0x52, 0x90, 0x1c, 0x4c, 0x6f, 0x8b, 0x8a, 0x41, 0xc0, 0xf6, 0xe7, 0x60, 0xf1, 0x60, 0xda, 0x26, 0x6d, 0x78, 0x8d, 0xa5, 0xbd, 0xc9, 0x45, 0x08, 0x4d, 0xff, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5833 = { .name = "ecdsa_secp256k1_sha3_512_5833", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5833_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5833_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5833_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5834 for ECDSA, tcId is 271 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5834_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5834_msg[] = { 0x39, 0x31, 0x31, 0x35, 0x33, 0x31, 0x37, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5834_sig[] = { 0xa8, 0xc5, 0x99, 0x42, 0x90, 0x70, 0x39, 0x88, 0x6b, 0xc3, 0x74, 0xc1, 0x7f, 0xf4, 0x52, 0xb6, 0x04, 0x38, 0x5c, 0x35, 0x37, 0xb9, 0xb6, 0xc6, 0x11, 0x3c, 0x1b, 0x19, 0xd7, 0x2e, 0x68, 0xa9, 0xd3, 0x76, 0xbc, 0x86, 0x6c, 0xc8, 0x2d, 0x78, 0xca, 0x17, 0xb4, 0x61, 0xed, 0xf1, 0x6f, 0xae, 0xa4, 0x4e, 0x57, 0x76, 0x59, 0xb1, 0xfe, 0xf0, 0x2c, 0xec, 0x0f, 0x41, 0xbd, 0x2e, 0x74, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5834 = { .name = "ecdsa_secp256k1_sha3_512_5834", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5834_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5834_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5834_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5835 for ECDSA, tcId is 272 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5835_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5835_msg[] = { 0x32, 0x38, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5835_sig[] = { 0x99, 0xcc, 0x65, 0x24, 0x12, 0xdc, 0xdf, 0xc5, 0x74, 0xb6, 0xfc, 0x25, 0x25, 0x61, 0x5e, 0x67, 0x11, 0xca, 0xaf, 0x7d, 0x55, 0x8c, 0xc7, 0x81, 0xa3, 0xa1, 0x1c, 0xf3, 0x71, 0xf4, 0x0f, 0x71, 0x86, 0x6d, 0xd4, 0xab, 0x6b, 0x58, 0xb5, 0xd6, 0x37, 0x9f, 0x0b, 0x43, 0x1f, 0x9a, 0x25, 0x13, 0x99, 0xde, 0xfd, 0x55, 0x16, 0xbf, 0x6b, 0xb5, 0x49, 0x55, 0x11, 0xe0, 0x5b, 0x24, 0xf8, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5835 = { .name = "ecdsa_secp256k1_sha3_512_5835", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5835_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5835_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5835_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5836 for ECDSA, tcId is 273 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5836_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5836_msg[] = { 0x31, 0x32, 0x33, 0x33, 0x35, 0x38, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5836_sig[] = { 0xb4, 0x7c, 0xad, 0x5c, 0x88, 0x16, 0x1e, 0x29, 0x62, 0x09, 0x57, 0x06, 0x1e, 0x24, 0xcd, 0xf4, 0x6f, 0x3f, 0xff, 0x97, 0xc2, 0x66, 0xb1, 0x63, 0x5f, 0xcf, 0x2e, 0x9c, 0xb4, 0xd9, 0x28, 0x79, 0x13, 0x54, 0x9f, 0x3b, 0x1b, 0x63, 0x9e, 0xeb, 0x33, 0xf4, 0x0c, 0xb3, 0x38, 0xec, 0xd0, 0x89, 0xb9, 0x09, 0x4d, 0x96, 0x25, 0xb7, 0x67, 0x34, 0xf3, 0x80, 0x3e, 0x9d, 0x40, 0xa1, 0xeb, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5836 = { .name = "ecdsa_secp256k1_sha3_512_5836", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5836_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5836_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5836_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5837 for ECDSA, tcId is 274 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5837_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5837_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x36, 0x39, 0x32, 0x35, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5837_sig[] = { 0xf4, 0xf3, 0xa0, 0x43, 0xb5, 0xbd, 0xc5, 0x6b, 0xd4, 0x71, 0x87, 0x6e, 0x2d, 0xf1, 0x5e, 0xa8, 0x0c, 0xcb, 0x18, 0x9b, 0x25, 0x48, 0x6e, 0x6a, 0xb9, 0x00, 0x7c, 0xff, 0xe1, 0x21, 0xac, 0xfc, 0x78, 0xe8, 0xe3, 0xb3, 0x58, 0x95, 0x80, 0xda, 0xc1, 0xce, 0x29, 0x9a, 0x18, 0xf5, 0x70, 0x49, 0x01, 0x10, 0x4c, 0xd2, 0x12, 0x05, 0x31, 0x76, 0x08, 0xc3, 0x30, 0xad, 0xc8, 0xd3, 0x52, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5837 = { .name = "ecdsa_secp256k1_sha3_512_5837", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5837_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5837_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5837_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5838 for ECDSA, tcId is 275 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5838_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5838_msg[] = { 0x33, 0x30, 0x30, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5838_sig[] = { 0x5d, 0xf4, 0x5e, 0x90, 0xf9, 0x41, 0x39, 0x08, 0xb4, 0x7f, 0x7c, 0xbb, 0x05, 0xd6, 0xc4, 0x3a, 0x81, 0xeb, 0x62, 0x37, 0x5a, 0xb9, 0x61, 0xd2, 0xb0, 0x65, 0xc6, 0x11, 0x80, 0x23, 0xc0, 0x18, 0xd7, 0x20, 0xa2, 0xa2, 0x3c, 0x34, 0xec, 0xe3, 0xac, 0xc1, 0xa5, 0x16, 0x07, 0x0b, 0xde, 0x6b, 0xfc, 0xad, 0x28, 0xfd, 0x89, 0xc4, 0x82, 0xd7, 0x2b, 0x69, 0xd8, 0x11, 0x3b, 0x19, 0x03, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5838 = { .name = "ecdsa_secp256k1_sha3_512_5838", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5838_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5838_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5838_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5839 for ECDSA, tcId is 276 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5839_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5839_msg[] = { 0x38, 0x33, 0x35, 0x36, 0x37, 0x36, 0x32, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5839_sig[] = { 0x78, 0x0b, 0xb9, 0x3f, 0x52, 0xd5, 0x37, 0x52, 0xa9, 0xa8, 0x77, 0xda, 0xb0, 0x57, 0x8c, 0x77, 0x02, 0xd1, 0xea, 0x88, 0x99, 0x60, 0xe1, 0x68, 0x2e, 0x84, 0xf8, 0x27, 0x40, 0xb1, 0xbe, 0x5d, 0x08, 0xe3, 0x66, 0xff, 0xe8, 0xf7, 0x2d, 0x04, 0x14, 0x26, 0xae, 0xe5, 0x7a, 0xef, 0xfc, 0xe7, 0x82, 0x2b, 0x20, 0x9c, 0x34, 0xb2, 0x82, 0x55, 0xa5, 0xde, 0x67, 0x19, 0x08, 0x70, 0xce, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5839 = { .name = "ecdsa_secp256k1_sha3_512_5839", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5839_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5839_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5839_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5840 for ECDSA, tcId is 277 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5840_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5840_msg[] = { 0x38, 0x33, 0x32, 0x39, 0x35, 0x30, 0x30, 0x37, 0x36, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5840_sig[] = { 0xf7, 0x43, 0xa7, 0x7c, 0x86, 0xdc, 0xe0, 0x94, 0xcc, 0x26, 0x5a, 0x87, 0xb2, 0xe0, 0x53, 0xc8, 0xcc, 0x77, 0x33, 0x70, 0x85, 0x1d, 0xbc, 0x7b, 0xa1, 0xa5, 0x2c, 0x58, 0xdf, 0x24, 0xd5, 0x54, 0x25, 0x16, 0xe4, 0x61, 0x4d, 0xd7, 0xcc, 0xd3, 0x6a, 0x23, 0xcb, 0xbb, 0x1b, 0x58, 0xc2, 0x9f, 0x90, 0x0d, 0x4d, 0xa2, 0x11, 0x3e, 0x7b, 0x9a, 0xc9, 0x56, 0xbf, 0x88, 0x79, 0x90, 0x76, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5840 = { .name = "ecdsa_secp256k1_sha3_512_5840", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5840_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5840_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5840_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5841 for ECDSA, tcId is 278 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5841_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5841_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x38, 0x34, 0x31, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5841_sig[] = { 0x0b, 0x77, 0xb2, 0xab, 0x21, 0xa5, 0xc9, 0x2c, 0xb0, 0xe3, 0xf2, 0xf5, 0xb8, 0x59, 0x4e, 0xdc, 0xc0, 0xdd, 0x6c, 0x70, 0xdb, 0xee, 0xa9, 0xd9, 0xd3, 0x63, 0xa3, 0x71, 0x8c, 0x64, 0xdf, 0xb4, 0x91, 0xc2, 0xd6, 0x51, 0x5f, 0xf6, 0xf2, 0x97, 0x7f, 0xd0, 0xa1, 0x50, 0xcb, 0x04, 0xc6, 0x00, 0x10, 0x2f, 0x0a, 0xe0, 0x7a, 0x90, 0x61, 0x99, 0x32, 0x44, 0x78, 0x3e, 0x62, 0xf2, 0x33, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5841 = { .name = "ecdsa_secp256k1_sha3_512_5841", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5841_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5841_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5841_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5842 for ECDSA, tcId is 279 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5842_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5842_msg[] = { 0x37, 0x33, 0x30, 0x32, 0x33, 0x35, 0x38, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5842_sig[] = { 0x41, 0xf0, 0xa2, 0x20, 0xd1, 0x1a, 0x01, 0x4d, 0xfe, 0x43, 0xf8, 0x9a, 0xb6, 0x47, 0xab, 0xea, 0x43, 0x0c, 0xf5, 0xa9, 0x70, 0x30, 0x88, 0xf2, 0x8c, 0x12, 0x22, 0xab, 0xb7, 0x7e, 0x88, 0x57, 0xf8, 0x11, 0xc5, 0x84, 0xc1, 0x0a, 0x25, 0xfb, 0xa6, 0x21, 0x61, 0x13, 0x69, 0x8e, 0x5a, 0x2d, 0xc5, 0x2d, 0x8e, 0xa3, 0x40, 0xd9, 0x2c, 0xe7, 0xa1, 0x1d, 0x35, 0x6f, 0x6d, 0x5a, 0x13, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5842 = { .name = "ecdsa_secp256k1_sha3_512_5842", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5842_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5842_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5842_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5843 for ECDSA, tcId is 280 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5843_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5843_msg[] = { 0x31, 0x33, 0x34, 0x37, 0x33, 0x37, 0x33, 0x37, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5843_sig[] = { 0xed, 0x70, 0x7e, 0x3c, 0xac, 0x8b, 0xd5, 0x6a, 0x4f, 0x0a, 0x31, 0x18, 0x55, 0x8e, 0x84, 0x02, 0xdd, 0x47, 0x7b, 0xe7, 0xdc, 0xaa, 0x1a, 0x7f, 0xf4, 0x48, 0xb0, 0xbc, 0xbf, 0xc0, 0xfa, 0xc1, 0x3d, 0x99, 0x33, 0xe0, 0x1d, 0x7e, 0x94, 0x39, 0x05, 0x99, 0x73, 0xfa, 0x49, 0x9c, 0x37, 0xb8, 0x96, 0x21, 0x3b, 0x04, 0x34, 0x6b, 0xb2, 0x92, 0xf8, 0x67, 0xff, 0x3a, 0x58, 0xc3, 0xd0, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5843 = { .name = "ecdsa_secp256k1_sha3_512_5843", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5843_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5843_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5843_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5844 for ECDSA, tcId is 281 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5844_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5844_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x35, 0x33, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5844_sig[] = { 0x80, 0x35, 0xd1, 0x0d, 0xfd, 0x53, 0x3e, 0x01, 0x71, 0x8f, 0xa9, 0xd0, 0xa1, 0x77, 0x3e, 0x55, 0xb4, 0x24, 0x77, 0x04, 0x15, 0xe5, 0x70, 0xae, 0xf7, 0x66, 0xea, 0x2c, 0xbe, 0x57, 0x7c, 0x27, 0x81, 0x5b, 0x0f, 0x14, 0xd6, 0xf7, 0xf4, 0xca, 0x45, 0x19, 0x14, 0x28, 0xd9, 0x8c, 0x9b, 0x41, 0x48, 0x71, 0xff, 0xec, 0xda, 0xc3, 0xd0, 0x71, 0x7d, 0x28, 0x5a, 0x47, 0x3e, 0x5d, 0xdb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5844 = { .name = "ecdsa_secp256k1_sha3_512_5844", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5844_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5844_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5844_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5845 for ECDSA, tcId is 282 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5845_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5845_msg[] = { 0x33, 0x35, 0x33, 0x35, 0x30, 0x34, 0x30, 0x30, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5845_sig[] = { 0xfb, 0xc3, 0x57, 0x6a, 0x64, 0x8e, 0xbd, 0x63, 0x31, 0x52, 0xfc, 0x89, 0x6a, 0xe6, 0xb4, 0x82, 0x7c, 0x55, 0x82, 0x4f, 0xb0, 0xc9, 0x6f, 0xdd, 0x21, 0x7f, 0xb2, 0xcf, 0xe3, 0xbb, 0xe6, 0x36, 0x0b, 0x37, 0xa9, 0x5b, 0x15, 0x58, 0x96, 0x63, 0xdb, 0x32, 0x2e, 0x1f, 0x08, 0x9a, 0xa8, 0x13, 0x29, 0x65, 0xed, 0x64, 0x90, 0x36, 0x2d, 0x24, 0x3e, 0xf7, 0x49, 0xc6, 0x09, 0x45, 0x27, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5845 = { .name = "ecdsa_secp256k1_sha3_512_5845", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5845_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5845_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5845_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5846 for ECDSA, tcId is 283 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5846_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5846_msg[] = { 0x31, 0x34, 0x32, 0x30, 0x33, 0x35, 0x37, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5846_sig[] = { 0xde, 0x08, 0xcc, 0x84, 0x00, 0x4d, 0x3f, 0xb3, 0x05, 0x21, 0xb8, 0xe0, 0xad, 0xe6, 0x6b, 0x6d, 0x52, 0x73, 0x4c, 0xcd, 0x18, 0x2c, 0xac, 0xe8, 0xa3, 0x4b, 0xa0, 0xe3, 0x90, 0xfe, 0xa8, 0x93, 0x2c, 0x1e, 0x3d, 0xeb, 0x79, 0xd1, 0x61, 0x17, 0xed, 0x84, 0xc8, 0x98, 0x22, 0x76, 0xd4, 0x37, 0x09, 0xc5, 0x96, 0x3d, 0x57, 0xbd, 0x2b, 0x10, 0xa5, 0x30, 0xeb, 0xf1, 0x61, 0xda, 0x1a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5846 = { .name = "ecdsa_secp256k1_sha3_512_5846", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5846_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5846_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5846_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5847 for ECDSA, tcId is 284 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5847_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5847_msg[] = { 0x39, 0x30, 0x35, 0x31, 0x37, 0x35, 0x30, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5847_sig[] = { 0x4e, 0xef, 0x79, 0x5d, 0xc7, 0xb1, 0x7e, 0xfd, 0xe9, 0x5d, 0xc5, 0x20, 0x62, 0xe3, 0xb6, 0x0a, 0xb3, 0x60, 0xd3, 0x77, 0x04, 0x80, 0x0f, 0xc9, 0x15, 0x78, 0x5e, 0x77, 0x39, 0xb8, 0x34, 0xd9, 0xc6, 0x83, 0x56, 0xea, 0xcc, 0x35, 0x09, 0xbf, 0x4d, 0x2b, 0x62, 0x41, 0x2b, 0x24, 0x72, 0xf2, 0x23, 0x83, 0xd1, 0x8f, 0xa8, 0x85, 0x15, 0x27, 0x29, 0x4b, 0x1f, 0xad, 0x19, 0x4c, 0x7b, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5847 = { .name = "ecdsa_secp256k1_sha3_512_5847", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5847_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5847_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5847_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5848 for ECDSA, tcId is 285 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5848_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5848_msg[] = { 0x31, 0x36, 0x31, 0x33, 0x37, 0x37, 0x34, 0x32, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5848_sig[] = { 0xcb, 0x84, 0x5b, 0x9f, 0xcf, 0xa0, 0x7e, 0x88, 0xe9, 0x01, 0x1f, 0x03, 0x11, 0xca, 0xe9, 0xf3, 0xf7, 0x40, 0x51, 0x6e, 0x7d, 0x16, 0xd9, 0x81, 0x9b, 0x7d, 0x0f, 0x6f, 0xc7, 0x64, 0xda, 0xc7, 0x3d, 0x7f, 0x3b, 0xa5, 0x17, 0x3e, 0x13, 0x09, 0x37, 0xb0, 0x2b, 0xb7, 0xb8, 0xda, 0x25, 0xc5, 0x06, 0xac, 0xe6, 0x18, 0x2b, 0x8f, 0x9a, 0xe4, 0xed, 0x89, 0x1f, 0x7d, 0x21, 0x6c, 0x03, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5848 = { .name = "ecdsa_secp256k1_sha3_512_5848", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5848_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5848_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5848_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5849 for ECDSA, tcId is 286 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5849_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5849_msg[] = { 0x38, 0x37, 0x33, 0x36, 0x37, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5849_sig[] = { 0x7d, 0x19, 0xff, 0x3e, 0xfc, 0x71, 0x25, 0x8f, 0x74, 0x7e, 0x74, 0xd7, 0x6f, 0x09, 0x11, 0x07, 0xb1, 0xfa, 0x47, 0xc8, 0x7c, 0x63, 0x87, 0x20, 0xb5, 0x51, 0x78, 0xc0, 0x65, 0x5d, 0xcb, 0xcc, 0xb8, 0xa6, 0x53, 0xe3, 0x19, 0x31, 0xdb, 0xd2, 0xff, 0xc4, 0xe9, 0x57, 0x67, 0x5c, 0x68, 0xc2, 0x87, 0x19, 0xb8, 0x11, 0x8e, 0xc3, 0xed, 0x37, 0x78, 0xc5, 0x7c, 0xe3, 0xef, 0xf1, 0x61, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5849 = { .name = "ecdsa_secp256k1_sha3_512_5849", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5849_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5849_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5849_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5850 for ECDSA, tcId is 287 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5850_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5850_msg[] = { 0x34, 0x33, 0x35, 0x35, 0x31, 0x30, 0x36, 0x34, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5850_sig[] = { 0x10, 0xd4, 0x65, 0xe0, 0x38, 0x29, 0xda, 0xd7, 0x7e, 0x82, 0x46, 0xad, 0x11, 0xca, 0xf8, 0xc6, 0xaa, 0x8a, 0xa9, 0x18, 0xc2, 0xbe, 0xf5, 0xa9, 0xa9, 0xe6, 0x01, 0xc5, 0xa9, 0x19, 0xf6, 0x8f, 0xf3, 0x65, 0xa7, 0xa7, 0x54, 0x0d, 0xcb, 0x64, 0x2d, 0xe9, 0x0e, 0x6d, 0x6c, 0xcf, 0x0c, 0x74, 0x09, 0x4a, 0x80, 0x05, 0xde, 0xae, 0xd4, 0x06, 0x2e, 0x39, 0x4e, 0x1c, 0xf2, 0xbc, 0xd8, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5850 = { .name = "ecdsa_secp256k1_sha3_512_5850", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5850_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5850_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5850_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5851 for ECDSA, tcId is 288 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5851_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5851_msg[] = { 0x34, 0x35, 0x33, 0x39, 0x35, 0x37, 0x35, 0x38, 0x37, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5851_sig[] = { 0x67, 0x43, 0x30, 0xea, 0x5a, 0x5d, 0x45, 0xd7, 0x1f, 0xca, 0x1f, 0x3b, 0xa0, 0x31, 0x49, 0x4d, 0xee, 0x9a, 0x86, 0x23, 0xe0, 0xd9, 0xe9, 0xad, 0xbb, 0x28, 0x22, 0x79, 0x4a, 0xcb, 0x4f, 0x12, 0xae, 0x4d, 0x38, 0x30, 0x15, 0x7c, 0x82, 0x0b, 0xc2, 0x3f, 0xa7, 0x92, 0x18, 0x8b, 0x94, 0xbb, 0x55, 0x9c, 0x3a, 0x62, 0x12, 0x76, 0x8d, 0x7a, 0xc5, 0x9d, 0xcf, 0x36, 0xf7, 0x44, 0x02, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5851 = { .name = "ecdsa_secp256k1_sha3_512_5851", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5851_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5851_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5851_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5852 for ECDSA, tcId is 289 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5852_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5852_msg[] = { 0x38, 0x39, 0x33, 0x36, 0x36, 0x33, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5852_sig[] = { 0xa6, 0x32, 0xc6, 0x76, 0xf6, 0x67, 0x66, 0x9b, 0xda, 0x1b, 0x0e, 0xcf, 0x5f, 0x33, 0xfa, 0x67, 0xaa, 0xaf, 0x8a, 0xee, 0x46, 0xbc, 0x9e, 0x9f, 0x2b, 0xd5, 0xbd, 0x10, 0xc3, 0x6c, 0xbb, 0x95, 0xa9, 0x93, 0x52, 0xca, 0xcd, 0x6b, 0xd4, 0x2b, 0x78, 0xa9, 0x39, 0x08, 0x00, 0x8c, 0x23, 0xee, 0xc2, 0xd3, 0x6e, 0x5e, 0x4f, 0xd0, 0xaa, 0x34, 0x9d, 0x56, 0x34, 0xfc, 0x54, 0x31, 0x99, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5852 = { .name = "ecdsa_secp256k1_sha3_512_5852", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5852_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5852_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5852_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5853 for ECDSA, tcId is 290 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5853_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5853_msg[] = { 0x33, 0x38, 0x30, 0x36, 0x30, 0x36, 0x38, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5853_sig[] = { 0x0c, 0x9d, 0x2e, 0x89, 0x35, 0xf8, 0x55, 0xe6, 0x9d, 0xcc, 0xd8, 0x77, 0xd9, 0x52, 0x48, 0x30, 0x3e, 0x1b, 0x6d, 0xaf, 0x8f, 0x61, 0xda, 0x50, 0x01, 0x50, 0x18, 0x5f, 0x55, 0x65, 0xfa, 0x97, 0xe4, 0xce, 0x32, 0x8f, 0x00, 0xe2, 0x18, 0xaa, 0x13, 0xd4, 0x96, 0xd8, 0x5b, 0x73, 0xb5, 0xb8, 0x91, 0xcf, 0x0b, 0x7c, 0x66, 0xeb, 0xef, 0xe5, 0xe6, 0xb9, 0x2b, 0x1d, 0xa7, 0xf8, 0x37, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5853 = { .name = "ecdsa_secp256k1_sha3_512_5853", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5853_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5853_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5853_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5854 for ECDSA, tcId is 291 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5854_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5854_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x38, 0x31, 0x37, 0x34, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5854_sig[] = { 0x47, 0x48, 0xc0, 0x0f, 0x44, 0xa6, 0xb3, 0xa8, 0x72, 0x6f, 0x60, 0x4d, 0x7b, 0x93, 0x33, 0x03, 0xd9, 0x8c, 0xd4, 0x58, 0xb8, 0x50, 0xff, 0x2d, 0x7c, 0xb9, 0x0c, 0x11, 0xd5, 0x95, 0x0a, 0xc7, 0x76, 0x6d, 0xf7, 0xaa, 0x4c, 0x8b, 0x3f, 0x8b, 0x03, 0xb0, 0xeb, 0x8a, 0xec, 0x65, 0x3f, 0xb7, 0x0e, 0xab, 0x74, 0x33, 0xa8, 0x4e, 0x7e, 0xf2, 0xd5, 0x7f, 0x36, 0x8a, 0x05, 0x1b, 0x70, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5854 = { .name = "ecdsa_secp256k1_sha3_512_5854", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5854_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5854_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5854_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5855 for ECDSA, tcId is 292 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5855_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5855_msg[] = { 0x34, 0x30, 0x37, 0x34, 0x33, 0x32, 0x32, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5855_sig[] = { 0x4e, 0x4f, 0xee, 0x37, 0xb0, 0xb9, 0x3d, 0x7d, 0x6d, 0xbe, 0xe8, 0x9b, 0x47, 0xda, 0xb0, 0xc0, 0x65, 0x18, 0x6e, 0xe8, 0x1c, 0xaf, 0x22, 0x27, 0xbb, 0x26, 0xe8, 0x51, 0x49, 0xbb, 0xf9, 0xef, 0x3e, 0xb8, 0x38, 0x50, 0xed, 0xda, 0x9a, 0x1b, 0x10, 0x11, 0x11, 0x8f, 0xec, 0xcd, 0x03, 0xe4, 0x7b, 0x3e, 0x1e, 0xc8, 0x15, 0x83, 0x7b, 0xb7, 0xf8, 0x86, 0x72, 0x88, 0xad, 0x8d, 0xf8, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5855 = { .name = "ecdsa_secp256k1_sha3_512_5855", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5855_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5855_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5855_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5856 for ECDSA, tcId is 293 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5856_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5856_msg[] = { 0x36, 0x31, 0x30, 0x36, 0x37, 0x35, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5856_sig[] = { 0x9e, 0x85, 0x20, 0xc5, 0xe8, 0x29, 0x69, 0x35, 0xfe, 0x93, 0xda, 0x2d, 0xad, 0x55, 0x96, 0x3b, 0x9f, 0x1f, 0x88, 0x18, 0x7f, 0x76, 0x81, 0x0f, 0xff, 0x53, 0xc0, 0xa6, 0xe9, 0x5b, 0x0c, 0x07, 0xd1, 0x85, 0xde, 0x4f, 0x68, 0x2a, 0x97, 0xd2, 0x8f, 0xc3, 0x06, 0x7d, 0x56, 0xa3, 0xd2, 0x4f, 0x74, 0x3f, 0x32, 0xd4, 0x7a, 0x6f, 0x39, 0x00, 0x68, 0xb2, 0xce, 0xb7, 0x16, 0x78, 0xfa, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5856 = { .name = "ecdsa_secp256k1_sha3_512_5856", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5856_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5856_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5856_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5857 for ECDSA, tcId is 294 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5857_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5857_msg[] = { 0x31, 0x37, 0x34, 0x31, 0x38, 0x37, 0x33, 0x39, 0x32, 0x31, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5857_sig[] = { 0x3c, 0xac, 0xb6, 0x73, 0x64, 0xa3, 0xfc, 0x1a, 0x37, 0x95, 0x57, 0xf7, 0xe6, 0xf5, 0xd0, 0xf5, 0x01, 0x97, 0x7f, 0xd4, 0x82, 0x26, 0x66, 0x95, 0x6c, 0x93, 0x56, 0x14, 0x6b, 0x7d, 0x92, 0x2f, 0x68, 0x6e, 0x27, 0xbe, 0x62, 0x17, 0x04, 0x5a, 0x50, 0x10, 0xc8, 0x80, 0x03, 0xdd, 0x39, 0x56, 0xa8, 0x64, 0x79, 0x8c, 0x8a, 0xe6, 0x87, 0x71, 0x4f, 0xc8, 0xb7, 0x27, 0x7f, 0x7b, 0x52, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5857 = { .name = "ecdsa_secp256k1_sha3_512_5857", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5857_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5857_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5857_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5858 for ECDSA, tcId is 295 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5858_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5858_msg[] = { 0x35, 0x31, 0x32, 0x37, 0x38, 0x34, 0x32, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5858_sig[] = { 0x5d, 0xf7, 0x02, 0xc7, 0x7d, 0x46, 0x38, 0xa4, 0x30, 0x2d, 0x21, 0xa9, 0xfd, 0xd7, 0x0b, 0xbe, 0x31, 0xa4, 0xa4, 0xa7, 0x9c, 0x7d, 0x53, 0x1d, 0x4f, 0x4c, 0x82, 0x83, 0x97, 0x0f, 0x66, 0x4a, 0xf7, 0x2d, 0x79, 0x9a, 0xbc, 0xe3, 0xcd, 0x22, 0x98, 0x5c, 0x5c, 0xfc, 0x68, 0xf7, 0xaf, 0xc8, 0xf9, 0x6f, 0x4e, 0x7d, 0xce, 0x84, 0x85, 0xed, 0x5c, 0x59, 0x5e, 0xdc, 0x1e, 0x1f, 0x1d, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5858 = { .name = "ecdsa_secp256k1_sha3_512_5858", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5858_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5858_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5858_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5859 for ECDSA, tcId is 296 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5859_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5859_msg[] = { 0x35, 0x30, 0x33, 0x38, 0x36, 0x39, 0x30, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5859_sig[] = { 0x24, 0x3a, 0x85, 0x7d, 0xfd, 0x16, 0x7b, 0x93, 0x84, 0x92, 0xc4, 0x21, 0xbd, 0x65, 0x76, 0x59, 0xd1, 0x01, 0x94, 0x47, 0x36, 0xfa, 0x79, 0xb9, 0x03, 0xcf, 0x91, 0xec, 0x1c, 0x49, 0xe8, 0xe3, 0xba, 0xb3, 0xf0, 0x4f, 0x13, 0x0d, 0x73, 0x79, 0x93, 0xec, 0x8f, 0x45, 0x50, 0x33, 0x76, 0xab, 0xe8, 0x16, 0xc2, 0xb8, 0xe5, 0xab, 0x3d, 0xec, 0xb0, 0xdb, 0xca, 0x4f, 0x5e, 0x18, 0x1d, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5859 = { .name = "ecdsa_secp256k1_sha3_512_5859", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5859_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5859_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5859_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5860 for ECDSA, tcId is 297 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5860_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5860_msg[] = { 0x33, 0x38, 0x37, 0x37, 0x30, 0x34, 0x32, 0x33, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5860_sig[] = { 0x67, 0xa7, 0x99, 0x6b, 0x76, 0x80, 0xe9, 0x58, 0x48, 0x0a, 0xc2, 0xf9, 0x70, 0x84, 0xf2, 0x05, 0x51, 0x94, 0xb3, 0x8e, 0x0e, 0xcf, 0x82, 0x24, 0x6d, 0xc8, 0x79, 0x18, 0xee, 0x19, 0x54, 0xa8, 0xde, 0x18, 0x7d, 0xfb, 0xee, 0xfc, 0xe3, 0x83, 0xdc, 0xea, 0x1a, 0x7f, 0xd7, 0x13, 0x62, 0x38, 0x5d, 0x09, 0xc6, 0xd2, 0x5a, 0xac, 0xdf, 0xa3, 0x4e, 0xa2, 0x70, 0xa9, 0x1e, 0xc9, 0x7c, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5860 = { .name = "ecdsa_secp256k1_sha3_512_5860", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5860_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5860_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5860_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5861 for ECDSA, tcId is 298 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5861_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5861_msg[] = { 0x33, 0x32, 0x31, 0x37, 0x30, 0x38, 0x31, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5861_sig[] = { 0xab, 0x6c, 0xf0, 0x03, 0xaa, 0x78, 0x65, 0xcf, 0x80, 0x10, 0xea, 0x01, 0x94, 0x4f, 0xa0, 0xd2, 0xf8, 0x25, 0xac, 0x6a, 0x99, 0x7a, 0x42, 0x7f, 0x8a, 0x4e, 0x79, 0x1e, 0x79, 0x7a, 0xc6, 0xf6, 0x28, 0xa7, 0xa6, 0xc8, 0x05, 0x82, 0xba, 0x8f, 0x88, 0x8d, 0x20, 0x08, 0xfb, 0xd6, 0x96, 0x79, 0x95, 0x61, 0xe9, 0x2d, 0x9a, 0x51, 0x92, 0x2c, 0xc6, 0x02, 0xae, 0xc2, 0x13, 0x5f, 0x08, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5861 = { .name = "ecdsa_secp256k1_sha3_512_5861", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5861_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5861_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5861_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5862 for ECDSA, tcId is 299 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5862_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5862_msg[] = { 0x37, 0x36, 0x36, 0x37, 0x30, 0x34, 0x34, 0x32, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5862_sig[] = { 0x9f, 0x9f, 0x0b, 0xe9, 0x92, 0xfd, 0xd3, 0xe0, 0x69, 0x16, 0x75, 0x99, 0xdc, 0x55, 0xe3, 0x31, 0xc9, 0xf1, 0x89, 0xd2, 0xc2, 0x30, 0xae, 0x15, 0xd1, 0xb5, 0xb4, 0x41, 0xd3, 0x84, 0x3c, 0x74, 0xf8, 0xe5, 0xb4, 0xed, 0x8e, 0xad, 0x03, 0x52, 0xe0, 0x32, 0xf7, 0x9b, 0x5f, 0x04, 0x75, 0xf0, 0x97, 0x5e, 0x37, 0x38, 0xd7, 0x84, 0xd8, 0x95, 0xe9, 0xe4, 0x00, 0x2b, 0x26, 0x76, 0x2b, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5862 = { .name = "ecdsa_secp256k1_sha3_512_5862", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5862_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5862_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5862_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5863 for ECDSA, tcId is 300 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5863_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5863_msg[] = { 0x31, 0x31, 0x30, 0x34, 0x37, 0x34, 0x35, 0x30, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5863_sig[] = { 0x37, 0x3b, 0x85, 0x87, 0x77, 0x7d, 0x2b, 0x4f, 0xf4, 0x61, 0xfd, 0xdf, 0x52, 0x1a, 0xbd, 0x8f, 0xc5, 0xd3, 0xa1, 0xca, 0xca, 0x84, 0x7f, 0x4a, 0x54, 0x61, 0xda, 0xb6, 0xba, 0x24, 0x2d, 0x83, 0x51, 0xa9, 0x8d, 0xa2, 0x62, 0x87, 0x24, 0x01, 0x8d, 0xff, 0x80, 0x4c, 0x26, 0xa9, 0x67, 0x1f, 0x7d, 0xf3, 0xe2, 0x44, 0x90, 0x39, 0x2a, 0x2d, 0x1a, 0x91, 0xfd, 0xc7, 0xf5, 0x0d, 0xea, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5863 = { .name = "ecdsa_secp256k1_sha3_512_5863", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5863_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5863_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5863_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5864 for ECDSA, tcId is 301 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5864_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5864_msg[] = { 0x31, 0x35, 0x33, 0x38, 0x37, 0x30, 0x31, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5864_sig[] = { 0x90, 0xa6, 0x28, 0x6a, 0x27, 0x1d, 0x8f, 0xfa, 0x72, 0xdd, 0xb5, 0x5e, 0x8c, 0x92, 0x47, 0x93, 0xe0, 0x3b, 0x2a, 0xf7, 0x3c, 0xe1, 0x0f, 0x2d, 0xea, 0xe8, 0x57, 0x96, 0x1c, 0xb0, 0x70, 0x70, 0x28, 0xdf, 0x2b, 0x63, 0x79, 0x50, 0x11, 0x10, 0xc1, 0x2a, 0xc1, 0x67, 0x18, 0x9f, 0x9e, 0xa8, 0x87, 0x3e, 0x1d, 0x62, 0xff, 0xc7, 0x6e, 0x6a, 0xda, 0x83, 0xf2, 0xcf, 0x41, 0x2e, 0xa5, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5864 = { .name = "ecdsa_secp256k1_sha3_512_5864", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5864_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5864_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5864_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5865 for ECDSA, tcId is 302 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5865_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5865_msg[] = { 0x32, 0x32, 0x36, 0x31, 0x33, 0x38, 0x35, 0x30, 0x34, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5865_sig[] = { 0x10, 0x74, 0x34, 0xa8, 0x24, 0xec, 0x05, 0x56, 0x8d, 0x52, 0x21, 0x9a, 0xb3, 0xe8, 0x47, 0x04, 0x6f, 0x01, 0x49, 0x3f, 0x1d, 0xb5, 0x7a, 0x82, 0xfa, 0xbe, 0x75, 0x45, 0x55, 0x83, 0x82, 0x92, 0xd1, 0xc2, 0xf7, 0xc1, 0xec, 0xb5, 0xaf, 0xbc, 0x9b, 0x0e, 0x63, 0xe2, 0x0f, 0xcf, 0x34, 0xcf, 0xc1, 0x6b, 0xb2, 0x60, 0xb0, 0x74, 0x83, 0x43, 0xeb, 0x86, 0xc4, 0x40, 0x12, 0x44, 0x9b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5865 = { .name = "ecdsa_secp256k1_sha3_512_5865", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5865_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5865_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5865_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5866 for ECDSA, tcId is 303 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5866_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5866_msg[] = { 0x37, 0x35, 0x35, 0x38, 0x37, 0x34, 0x37, 0x36, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5866_sig[] = { 0x4b, 0x73, 0x7f, 0xb7, 0x24, 0xc9, 0x73, 0x48, 0xfb, 0x67, 0xa9, 0x94, 0xe8, 0x88, 0x16, 0xb1, 0x09, 0x19, 0x51, 0xb7, 0x72, 0x34, 0xf1, 0x90, 0x47, 0x17, 0xec, 0x7e, 0xf1, 0xaa, 0x95, 0x1d, 0xff, 0x72, 0x2b, 0x66, 0x9b, 0xd4, 0x34, 0x2e, 0x6b, 0x85, 0x62, 0x32, 0xb5, 0xa5, 0xc0, 0x3d, 0x2c, 0xf1, 0x6f, 0x09, 0xb3, 0xd3, 0x84, 0x2d, 0x0a, 0x87, 0xfc, 0x19, 0xd9, 0x10, 0xac, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5866 = { .name = "ecdsa_secp256k1_sha3_512_5866", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5866_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5866_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5866_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5867 for ECDSA, tcId is 304 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5867_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5867_msg[] = { 0x33, 0x34, 0x39, 0x39, 0x33, 0x36, 0x34, 0x31, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5867_sig[] = { 0xab, 0xe8, 0x04, 0xf6, 0xc7, 0x6f, 0xa3, 0xf1, 0x47, 0x0c, 0x0f, 0x24, 0x4a, 0x7e, 0xd9, 0x68, 0x07, 0xdd, 0xff, 0xff, 0x40, 0x31, 0x92, 0x6c, 0xfa, 0xd9, 0xa2, 0xc9, 0xf7, 0x3e, 0xd7, 0x73, 0xe4, 0x83, 0x52, 0x65, 0x3c, 0xcc, 0x46, 0xf5, 0xf5, 0xa7, 0x6d, 0x7e, 0xb3, 0x99, 0x7d, 0xfd, 0x41, 0x20, 0x01, 0xfb, 0x16, 0x92, 0x31, 0x27, 0x88, 0xf7, 0xc2, 0x97, 0xef, 0x79, 0x2f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5867 = { .name = "ecdsa_secp256k1_sha3_512_5867", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5867_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5867_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5867_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5868 for ECDSA, tcId is 305 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5868_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5868_msg[] = { 0x32, 0x33, 0x36, 0x39, 0x32, 0x37, 0x33, 0x39, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5868_sig[] = { 0x7d, 0x55, 0xa5, 0xda, 0x32, 0x01, 0xde, 0x53, 0x43, 0x70, 0x3f, 0xf8, 0xee, 0x36, 0x3b, 0x7d, 0xdb, 0xcb, 0x3d, 0x78, 0x6a, 0xfc, 0xa8, 0xf1, 0x57, 0xb2, 0x5e, 0x7c, 0x90, 0xd0, 0x9d, 0xe8, 0x3d, 0xfc, 0xb5, 0x5a, 0xcd, 0x7d, 0xef, 0x42, 0x18, 0xab, 0xd3, 0xf9, 0x89, 0xe9, 0x01, 0xf8, 0x24, 0xcc, 0x2d, 0x4e, 0xd3, 0xa3, 0x7b, 0x87, 0x94, 0x11, 0x79, 0x75, 0x10, 0x3f, 0xf0, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5868 = { .name = "ecdsa_secp256k1_sha3_512_5868", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5868_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5868_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5868_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5869 for ECDSA, tcId is 306 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5869_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5869_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5869_sig[] = { 0x25, 0xd2, 0xc8, 0x8f, 0x0b, 0x79, 0xf2, 0x28, 0x9f, 0x92, 0xd3, 0xec, 0xb6, 0xde, 0x11, 0x9f, 0xab, 0x76, 0x4f, 0xb4, 0x3a, 0xb5, 0x28, 0x63, 0x91, 0xf9, 0xa2, 0x82, 0xc8, 0x2a, 0xc1, 0x98, 0x10, 0x5f, 0x44, 0xfa, 0x27, 0xaf, 0xe4, 0xdc, 0x98, 0x00, 0xe6, 0xa1, 0x65, 0x28, 0x31, 0x4d, 0xe0, 0x1b, 0x17, 0x73, 0x7e, 0x97, 0x41, 0x86, 0x2f, 0x93, 0xed, 0x0c, 0xc3, 0x3b, 0x30, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5869 = { .name = "ecdsa_secp256k1_sha3_512_5869", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5869_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5869_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5869_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5870 for ECDSA, tcId is 307 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5870_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5870_msg[] = { 0x32, 0x35, 0x33, 0x34, 0x33, 0x37, 0x39, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5870_sig[] = { 0xd7, 0x25, 0xc2, 0x73, 0x1a, 0x6d, 0xb8, 0xd6, 0x23, 0x02, 0x7a, 0x92, 0x6a, 0x66, 0x5e, 0x9d, 0xba, 0x0f, 0x95, 0xe9, 0x0a, 0x5f, 0xe6, 0x80, 0x7a, 0x84, 0xb2, 0x00, 0x11, 0x1f, 0x04, 0xec, 0x34, 0x61, 0x40, 0xbf, 0xfb, 0x84, 0x73, 0x1f, 0x0f, 0x1c, 0xf8, 0x57, 0x19, 0x3d, 0xea, 0x25, 0xa2, 0xf7, 0x21, 0x46, 0x3d, 0xc3, 0xb8, 0x5a, 0x8e, 0x72, 0xc7, 0x3f, 0xf7, 0x2b, 0xda, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5870 = { .name = "ecdsa_secp256k1_sha3_512_5870", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5870_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5870_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5870_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5871 for ECDSA, tcId is 308 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5871_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5871_msg[] = { 0x38, 0x33, 0x34, 0x38, 0x30, 0x31, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5871_sig[] = { 0x4f, 0xa9, 0x70, 0x4d, 0x3e, 0xaa, 0x57, 0x60, 0xda, 0x0b, 0x97, 0xab, 0xc0, 0xde, 0x1f, 0x87, 0x28, 0x40, 0xe5, 0x8b, 0xfd, 0xb1, 0xa8, 0xf9, 0xd8, 0xbe, 0x3f, 0x96, 0xf9, 0x50, 0xca, 0x7d, 0x6a, 0xe1, 0x5b, 0x57, 0x2c, 0x7d, 0x1a, 0x49, 0xc9, 0x9e, 0x1a, 0xa5, 0x4d, 0xe5, 0xfb, 0x2b, 0xbe, 0x05, 0x5d, 0x45, 0x68, 0x67, 0x70, 0xf5, 0x79, 0xc0, 0x8e, 0xe7, 0x99, 0x24, 0xed, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5871 = { .name = "ecdsa_secp256k1_sha3_512_5871", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5871_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5871_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5871_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5872 for ECDSA, tcId is 309 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5872_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5872_msg[] = { 0x32, 0x34, 0x31, 0x31, 0x30, 0x35, 0x37, 0x34, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5872_sig[] = { 0x34, 0x33, 0x53, 0xc8, 0xbe, 0x35, 0xca, 0x22, 0x2a, 0x38, 0x77, 0x1b, 0x19, 0xff, 0x35, 0x50, 0xab, 0xe4, 0x1b, 0x91, 0xf2, 0xff, 0xde, 0xa9, 0xc9, 0xf4, 0x88, 0x7d, 0x70, 0xb0, 0x27, 0x82, 0xc2, 0x85, 0xe3, 0x76, 0x1c, 0x66, 0x45, 0xb3, 0xdb, 0x4f, 0xf9, 0x9a, 0x7a, 0xc4, 0x08, 0x03, 0x28, 0x6f, 0x28, 0x47, 0x5b, 0xa2, 0x8b, 0x9c, 0xd5, 0x5c, 0xac, 0xde, 0xfb, 0x33, 0x09, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5872 = { .name = "ecdsa_secp256k1_sha3_512_5872", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5872_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5872_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5872_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5873 for ECDSA, tcId is 310 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5873_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5873_msg[] = { 0x37, 0x38, 0x36, 0x34, 0x36, 0x38, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5873_sig[] = { 0x52, 0x9b, 0x12, 0x1d, 0x5b, 0x3c, 0xcc, 0xb4, 0x26, 0x18, 0x9d, 0x73, 0x43, 0xd5, 0x71, 0xad, 0xf0, 0x5c, 0xfa, 0xee, 0x84, 0x36, 0x69, 0xda, 0x67, 0x22, 0xf7, 0x28, 0xc1, 0x92, 0xbb, 0x82, 0x86, 0x49, 0x0a, 0x76, 0x86, 0x21, 0x5f, 0xb2, 0x9b, 0x18, 0xa1, 0x66, 0xbc, 0x22, 0xc1, 0xb8, 0xa9, 0x82, 0xfd, 0x7d, 0x57, 0xab, 0x59, 0x33, 0x18, 0xad, 0xf8, 0x35, 0x56, 0x84, 0xb4, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5873 = { .name = "ecdsa_secp256k1_sha3_512_5873", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5873_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5873_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5873_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5874 for ECDSA, tcId is 311 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5874_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5874_msg[] = { 0x33, 0x30, 0x35, 0x34, 0x37, 0x37, 0x33, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5874_sig[] = { 0xff, 0x65, 0x70, 0x71, 0x77, 0xbb, 0x9a, 0xa1, 0x35, 0xc5, 0xfd, 0x77, 0x4b, 0xf7, 0x2e, 0xb3, 0x05, 0x8e, 0x80, 0xaf, 0xc7, 0xd8, 0xbd, 0xea, 0x8f, 0x7f, 0xd1, 0x80, 0x40, 0xea, 0x99, 0x59, 0x0d, 0x4e, 0xd1, 0x3f, 0x9e, 0x01, 0xba, 0xb8, 0xaa, 0xaa, 0x40, 0xd7, 0xf5, 0xc9, 0x23, 0xa7, 0x84, 0x70, 0x88, 0x83, 0x75, 0xb4, 0x69, 0x0e, 0x11, 0x64, 0xa8, 0x3f, 0xdf, 0x13, 0x62, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5874 = { .name = "ecdsa_secp256k1_sha3_512_5874", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5874_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5874_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5874_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5875 for ECDSA, tcId is 312 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5875_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5875_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x31, 0x37, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5875_sig[] = { 0x47, 0x1e, 0xbf, 0xcc, 0x45, 0xde, 0x07, 0xbd, 0x41, 0x18, 0xf9, 0x4b, 0x02, 0x84, 0xf0, 0xc5, 0x84, 0x8d, 0xd9, 0x31, 0x49, 0xa2, 0x17, 0xb5, 0x6b, 0x49, 0xe2, 0x0b, 0xaf, 0x58, 0x3c, 0xed, 0xad, 0x49, 0x8b, 0x79, 0xd6, 0x15, 0x1b, 0xf6, 0x4e, 0x00, 0x3f, 0x50, 0x2f, 0xca, 0x8f, 0xb7, 0xb0, 0x5b, 0x21, 0x06, 0xa9, 0x6c, 0xa1, 0xb9, 0x77, 0xee, 0x00, 0x2c, 0x73, 0xbc, 0x72, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5875 = { .name = "ecdsa_secp256k1_sha3_512_5875", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5875_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5875_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5875_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5876 for ECDSA, tcId is 313 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5876_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5876_msg[] = { 0x31, 0x30, 0x35, 0x31, 0x33, 0x32, 0x35, 0x36, 0x33, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5876_sig[] = { 0x1e, 0x27, 0x9a, 0xdd, 0x50, 0xce, 0x61, 0x48, 0xdd, 0x4a, 0x3d, 0x31, 0x1b, 0xad, 0x89, 0x67, 0x45, 0xa1, 0x69, 0x36, 0x4e, 0xf6, 0x8b, 0x94, 0xe6, 0x36, 0x0f, 0xc4, 0x8e, 0x94, 0x9b, 0x9f, 0x72, 0x30, 0xfb, 0xe4, 0x00, 0x7f, 0xb7, 0xd6, 0xa4, 0x27, 0x4c, 0x39, 0x60, 0x81, 0xf3, 0x7a, 0x1c, 0x9b, 0x25, 0x59, 0xb5, 0x26, 0xdb, 0x1e, 0xfe, 0x43, 0x5e, 0xad, 0x15, 0xe4, 0xb7, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5876 = { .name = "ecdsa_secp256k1_sha3_512_5876", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5876_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5876_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5876_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5877 for ECDSA, tcId is 314 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5877_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5877_msg[] = { 0x34, 0x30, 0x31, 0x39, 0x38, 0x36, 0x36, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5877_sig[] = { 0x52, 0xdf, 0xba, 0xbb, 0xcb, 0x99, 0x65, 0x10, 0x21, 0xc0, 0x25, 0xa3, 0x08, 0x53, 0x0b, 0x9c, 0xd0, 0x47, 0x32, 0xf4, 0x34, 0x63, 0xbb, 0xc5, 0x11, 0x60, 0xcd, 0x54, 0x2d, 0x90, 0x28, 0xdf, 0x0e, 0xbe, 0xf4, 0xf6, 0x87, 0x0b, 0xce, 0x1c, 0xa3, 0x02, 0xe7, 0x12, 0x05, 0x60, 0xe5, 0x17, 0x00, 0x67, 0xc0, 0xfb, 0x3d, 0xc8, 0x66, 0x84, 0x48, 0xb8, 0x9d, 0xd4, 0x82, 0x1b, 0x53, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5877 = { .name = "ecdsa_secp256k1_sha3_512_5877", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5877_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5877_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5877_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5878 for ECDSA, tcId is 315 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5878_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5878_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x30, 0x32, 0x35, 0x37, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5878_sig[] = { 0xda, 0xbd, 0x19, 0xae, 0xb8, 0x7f, 0xd5, 0x61, 0x19, 0xa3, 0x35, 0x4c, 0x46, 0x8f, 0x44, 0x29, 0xfc, 0x14, 0x42, 0x1c, 0x54, 0xe8, 0xbe, 0x9e, 0x9b, 0x92, 0x79, 0x41, 0x57, 0x9a, 0xe5, 0x5e, 0xb1, 0x0a, 0x73, 0x96, 0xc9, 0x73, 0xe0, 0x52, 0xaf, 0x29, 0x44, 0xd3, 0x72, 0x47, 0xe9, 0x01, 0x66, 0x82, 0xd4, 0xda, 0x7c, 0xab, 0x2d, 0x54, 0x28, 0x61, 0x8c, 0xe1, 0x20, 0xa2, 0x10, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5878 = { .name = "ecdsa_secp256k1_sha3_512_5878", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5878_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5878_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5878_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5879 for ECDSA, tcId is 316 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5879_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5879_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x35, 0x38, 0x35, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5879_sig[] = { 0x2b, 0x99, 0x50, 0xc4, 0x00, 0x5d, 0xea, 0x8e, 0x60, 0x3f, 0xfe, 0x0f, 0xd9, 0xb3, 0xf6, 0x6b, 0x7c, 0x0f, 0x07, 0x50, 0x9e, 0x50, 0x91, 0x3b, 0xb8, 0x25, 0xef, 0x7d, 0xdf, 0x2e, 0x6e, 0x77, 0x62, 0xc9, 0xfc, 0xdf, 0x79, 0x02, 0x6f, 0x60, 0xf8, 0x30, 0xe7, 0xca, 0xe4, 0xaf, 0x81, 0x4d, 0xb2, 0xcb, 0x58, 0xb5, 0xa9, 0x48, 0x56, 0x27, 0x72, 0xda, 0x13, 0x06, 0x13, 0xbb, 0xef, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5879 = { .name = "ecdsa_secp256k1_sha3_512_5879", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5879_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5879_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5879_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5880 for ECDSA, tcId is 317 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5880_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5880_msg[] = { 0x33, 0x30, 0x37, 0x34, 0x36, 0x35, 0x33, 0x32, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5880_sig[] = { 0x09, 0xd8, 0x81, 0xe3, 0x00, 0x44, 0x8b, 0x9e, 0xac, 0x33, 0xc6, 0x7f, 0x10, 0xc0, 0x61, 0xc2, 0xc9, 0x85, 0xc4, 0x15, 0xa4, 0x14, 0xd0, 0x9c, 0x89, 0x18, 0x47, 0xe3, 0xee, 0xc8, 0x85, 0x98, 0xe7, 0x54, 0x55, 0xa5, 0x08, 0x49, 0x35, 0x06, 0xf8, 0x74, 0x60, 0x74, 0xf8, 0xbb, 0x36, 0x98, 0xd4, 0x36, 0x2f, 0x98, 0xa9, 0xda, 0xa2, 0x0f, 0xa9, 0x16, 0xf6, 0xc4, 0x02, 0x37, 0x64, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5880 = { .name = "ecdsa_secp256k1_sha3_512_5880", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5880_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5880_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5880_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5881 for ECDSA, tcId is 318 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5881_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5881_msg[] = { 0x37, 0x37, 0x31, 0x34, 0x36, 0x38, 0x33, 0x34, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5881_sig[] = { 0x2d, 0xb5, 0xa6, 0xd9, 0xb1, 0x6c, 0x61, 0xc8, 0x88, 0xa5, 0xde, 0x06, 0x4f, 0x62, 0x1e, 0x45, 0x22, 0x7a, 0xb6, 0x3e, 0xfb, 0xa6, 0x1e, 0xf2, 0x10, 0xfe, 0x4e, 0xf8, 0x1c, 0x93, 0xe0, 0x0f, 0x04, 0xb8, 0xe5, 0x7a, 0x73, 0x73, 0xb3, 0x64, 0x2e, 0x58, 0xdb, 0x0c, 0xc6, 0x52, 0xd6, 0xda, 0x54, 0x1d, 0x6d, 0x25, 0xc7, 0xb3, 0x2c, 0x1e, 0xd2, 0xb4, 0x08, 0xc9, 0xe3, 0xc3, 0x97, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5881 = { .name = "ecdsa_secp256k1_sha3_512_5881", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5881_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5881_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5881_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5882 for ECDSA, tcId is 319 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5882_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5882_msg[] = { 0x31, 0x37, 0x39, 0x33, 0x33, 0x38, 0x31, 0x33, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5882_sig[] = { 0x7b, 0xd4, 0x6d, 0xbe, 0x13, 0x2d, 0x95, 0xaf, 0xf8, 0x54, 0xbe, 0xbf, 0x1c, 0x0d, 0xd1, 0xe9, 0x03, 0x03, 0x32, 0x8f, 0xd8, 0x4d, 0x38, 0x1e, 0x93, 0x21, 0x77, 0x23, 0xd1, 0xa4, 0xbc, 0x18, 0xf7, 0x95, 0xa0, 0xc6, 0x8d, 0x6c, 0x31, 0x8c, 0x03, 0x8d, 0xc3, 0x7b, 0xd2, 0x2d, 0x36, 0xbc, 0xe8, 0x08, 0x30, 0x96, 0x63, 0x7e, 0x89, 0x12, 0xc3, 0xd0, 0x1c, 0xba, 0xbd, 0x3f, 0xee, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5882 = { .name = "ecdsa_secp256k1_sha3_512_5882", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5882_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5882_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5882_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5883 for ECDSA, tcId is 320 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5883_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5883_msg[] = { 0x34, 0x38, 0x38, 0x30, 0x36, 0x32, 0x35, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5883_sig[] = { 0x0c, 0xa0, 0x3b, 0xeb, 0x6d, 0x34, 0x8d, 0x3d, 0x36, 0xd2, 0xe9, 0xf6, 0x77, 0x3e, 0x58, 0x82, 0xde, 0xd6, 0x6f, 0xe6, 0x02, 0x6c, 0x9c, 0x27, 0xb8, 0x47, 0xe3, 0x45, 0x23, 0xc7, 0x7c, 0x2c, 0x87, 0x70, 0xb6, 0xf0, 0xb6, 0xaa, 0x7c, 0x98, 0x2e, 0x84, 0x23, 0x5f, 0x18, 0x40, 0xa6, 0x17, 0x23, 0x86, 0xa4, 0x1a, 0xe7, 0x5f, 0xd9, 0xaf, 0xfa, 0xc7, 0x91, 0x6c, 0xbd, 0x19, 0xf8, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5883 = { .name = "ecdsa_secp256k1_sha3_512_5883", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5883_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5883_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5883_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5884 for ECDSA, tcId is 321 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5884_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5884_msg[] = { 0x34, 0x39, 0x34, 0x33, 0x37, 0x36, 0x34, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5884_sig[] = { 0x3f, 0x1a, 0x74, 0xc1, 0xda, 0xb6, 0xbf, 0xc3, 0x19, 0xda, 0x38, 0xcd, 0xe7, 0xa8, 0x12, 0x69, 0x5b, 0x53, 0x0c, 0x60, 0xb3, 0x6d, 0x2a, 0xe3, 0xfa, 0x11, 0xa7, 0x20, 0x6b, 0x20, 0x31, 0xd5, 0xf0, 0x7f, 0x8e, 0xb5, 0x82, 0x5b, 0x2d, 0x56, 0x42, 0x44, 0x31, 0x85, 0xd6, 0xaf, 0xd2, 0x26, 0x4e, 0x98, 0x99, 0x6d, 0xc3, 0x92, 0x51, 0x9f, 0x81, 0x28, 0x83, 0xdb, 0xe0, 0xe2, 0x47, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5884 = { .name = "ecdsa_secp256k1_sha3_512_5884", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5884_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5884_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5884_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5885 for ECDSA, tcId is 322 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5885_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5885_msg[] = { 0x34, 0x37, 0x30, 0x38, 0x36, 0x38, 0x39, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5885_sig[] = { 0x1a, 0xe1, 0xc3, 0xec, 0x96, 0xf8, 0x59, 0x1a, 0x3a, 0x23, 0x5d, 0xe7, 0xc6, 0xf7, 0x39, 0x20, 0x11, 0x04, 0x38, 0x1e, 0xeb, 0xea, 0xb5, 0xfb, 0x5e, 0xe5, 0x23, 0xf5, 0x77, 0xb6, 0xc7, 0xfa, 0x07, 0xac, 0x1a, 0x93, 0x48, 0xfc, 0x89, 0x46, 0x96, 0x4f, 0xbe, 0xf0, 0xaf, 0x11, 0xdc, 0x8b, 0x2d, 0xa6, 0xfe, 0xb3, 0xee, 0xe8, 0xcf, 0x47, 0x5c, 0x49, 0x26, 0xca, 0x9c, 0xd5, 0x71, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5885 = { .name = "ecdsa_secp256k1_sha3_512_5885", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5885_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5885_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5885_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5886 for ECDSA, tcId is 323 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5886_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5886_msg[] = { 0x33, 0x30, 0x32, 0x39, 0x38, 0x37, 0x32, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5886_sig[] = { 0xc6, 0xef, 0x54, 0x23, 0xc6, 0x95, 0x41, 0xca, 0xa3, 0xbb, 0x8f, 0x36, 0x1f, 0x4f, 0xa9, 0xca, 0xec, 0xa3, 0x0f, 0xb3, 0x29, 0xa0, 0xda, 0x80, 0x6e, 0xa9, 0x56, 0x27, 0x0e, 0x0a, 0x99, 0x28, 0xc0, 0x45, 0xde, 0x52, 0x05, 0xeb, 0x8b, 0xc8, 0x61, 0xbc, 0x15, 0x95, 0x22, 0xb4, 0x1c, 0x0d, 0x66, 0xe6, 0x2f, 0xac, 0x0f, 0x58, 0x73, 0x08, 0x61, 0x00, 0x0c, 0xdf, 0x9e, 0x27, 0xbd, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5886 = { .name = "ecdsa_secp256k1_sha3_512_5886", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5886_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5886_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5886_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5887 for ECDSA, tcId is 324 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5887_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5887_msg[] = { 0x33, 0x30, 0x31, 0x37, 0x31, 0x39, 0x30, 0x33, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5887_sig[] = { 0x30, 0x97, 0xd2, 0x29, 0x23, 0x9b, 0x40, 0x85, 0xe3, 0xfb, 0x31, 0x88, 0x10, 0x6d, 0x5d, 0xa5, 0x34, 0x56, 0x75, 0x29, 0x76, 0xd2, 0xc4, 0xba, 0x82, 0xdc, 0xff, 0x6a, 0xb9, 0x6d, 0x19, 0x09, 0x56, 0xf6, 0x0a, 0xb7, 0x6d, 0x33, 0xbc, 0x94, 0xeb, 0xae, 0x30, 0x42, 0xa1, 0xd5, 0x6a, 0x73, 0x14, 0x29, 0xf1, 0xbe, 0xd1, 0x62, 0xbf, 0x3e, 0xf7, 0x26, 0x9d, 0x91, 0x2a, 0xae, 0xea, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5887 = { .name = "ecdsa_secp256k1_sha3_512_5887", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5887_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5887_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5887_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5888 for ECDSA, tcId is 325 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5888_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5888_msg[] = { 0x39, 0x35, 0x36, 0x33, 0x36, 0x33, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5888_sig[] = { 0x6c, 0x9e, 0xcb, 0x8d, 0xd5, 0xb8, 0xba, 0xdd, 0x49, 0xea, 0x1b, 0x26, 0xae, 0x3a, 0xe2, 0xaf, 0x72, 0x36, 0xcb, 0xe1, 0xc6, 0x26, 0xaa, 0x6b, 0x27, 0x02, 0x9e, 0xf1, 0xd6, 0xd0, 0x59, 0x01, 0x06, 0xc9, 0xbf, 0x35, 0x64, 0x41, 0xf8, 0x42, 0x15, 0xb0, 0x06, 0xc7, 0x21, 0xa0, 0x06, 0x97, 0xce, 0xde, 0x69, 0x41, 0xa1, 0x8f, 0xbc, 0x0f, 0x9c, 0x5b, 0x3c, 0x26, 0x7e, 0xea, 0xa3, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5888 = { .name = "ecdsa_secp256k1_sha3_512_5888", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5888_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5888_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5888_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5889 for ECDSA, tcId is 326 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5889_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5889_msg[] = { 0x35, 0x33, 0x30, 0x30, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5889_sig[] = { 0x43, 0xae, 0x56, 0x19, 0xf9, 0x1b, 0x71, 0x1a, 0x61, 0xbe, 0x07, 0x65, 0x81, 0xf9, 0x1d, 0x38, 0x2c, 0x39, 0xfe, 0x53, 0xd5, 0x00, 0xb1, 0x36, 0xf8, 0x1b, 0xe6, 0x39, 0xbe, 0xa7, 0x6a, 0xdd, 0x82, 0x45, 0x94, 0xf0, 0x81, 0x85, 0x47, 0x97, 0x31, 0xed, 0x09, 0x53, 0x67, 0xc0, 0x4d, 0xef, 0x2f, 0xf1, 0x96, 0x22, 0x9c, 0x5b, 0x13, 0x6b, 0x38, 0x35, 0xeb, 0x8b, 0xb8, 0x19, 0xc5, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5889 = { .name = "ecdsa_secp256k1_sha3_512_5889", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5889_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5889_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5889_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5890 for ECDSA, tcId is 327 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5890_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5890_msg[] = { 0x31, 0x39, 0x33, 0x34, 0x36, 0x36, 0x34, 0x38, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5890_sig[] = { 0x13, 0xe8, 0xdc, 0x46, 0x0a, 0x0d, 0x2a, 0xf2, 0x30, 0x5a, 0x6a, 0xbf, 0xea, 0xc8, 0x34, 0x73, 0x7d, 0x44, 0x41, 0x57, 0x6b, 0x19, 0x4f, 0xe8, 0x31, 0x47, 0xb7, 0xd7, 0xd1, 0x24, 0x74, 0x79, 0xc5, 0x90, 0xa7, 0xb7, 0xfd, 0x6d, 0xe8, 0xc2, 0xd6, 0x58, 0xaa, 0x2b, 0xde, 0x97, 0xde, 0x84, 0x50, 0x59, 0x85, 0xe2, 0x97, 0x9a, 0xb2, 0xa5, 0x27, 0x65, 0x81, 0x22, 0xca, 0xfa, 0xf6, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5890 = { .name = "ecdsa_secp256k1_sha3_512_5890", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5890_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5890_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5890_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5891 for ECDSA, tcId is 328 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5891_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5891_msg[] = { 0x33, 0x35, 0x35, 0x34, 0x35, 0x30, 0x35, 0x35, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5891_sig[] = { 0x27, 0xfe, 0xb0, 0x6a, 0x4c, 0x5b, 0xb0, 0x46, 0x16, 0x24, 0x67, 0xe5, 0x23, 0xb4, 0xb6, 0x2c, 0x2c, 0x8d, 0xab, 0xf2, 0x6d, 0xed, 0x99, 0x7e, 0xb0, 0x73, 0x7d, 0x3e, 0xaf, 0xd1, 0x6c, 0x8a, 0x9c, 0xe8, 0x7c, 0x4c, 0xd6, 0xb9, 0x3d, 0x1e, 0xc3, 0xb3, 0xc5, 0xd2, 0x9f, 0xa4, 0x15, 0xcf, 0x91, 0x8e, 0xdd, 0x24, 0xe0, 0xfe, 0xbd, 0x7b, 0x20, 0x0d, 0x6c, 0x82, 0xc9, 0x1e, 0x5f, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5891 = { .name = "ecdsa_secp256k1_sha3_512_5891", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5891_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5891_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5891_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5892 for ECDSA, tcId is 329 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5892_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5892_msg[] = { 0x31, 0x33, 0x30, 0x31, 0x37, 0x32, 0x32, 0x31, 0x30, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5892_sig[] = { 0x9d, 0x76, 0xa0, 0x5d, 0x58, 0x03, 0xa2, 0xda, 0x17, 0xdc, 0x27, 0x82, 0xec, 0x46, 0x9c, 0x80, 0x24, 0xb1, 0xd2, 0x93, 0xa3, 0x8c, 0x23, 0xac, 0x4e, 0xeb, 0x30, 0x58, 0x59, 0x5a, 0x24, 0xa7, 0x22, 0x65, 0x95, 0xb1, 0x92, 0xea, 0x83, 0x36, 0xfa, 0xa4, 0x46, 0x70, 0xfe, 0xf5, 0xe8, 0x08, 0xff, 0x99, 0x11, 0xcc, 0xda, 0x85, 0xa1, 0x76, 0x5c, 0x19, 0xec, 0x44, 0x67, 0x1b, 0x05, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5892 = { .name = "ecdsa_secp256k1_sha3_512_5892", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5892_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5892_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5892_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5893 for ECDSA, tcId is 330 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5893_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5893_msg[] = { 0x35, 0x36, 0x31, 0x37, 0x36, 0x39, 0x31, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5893_sig[] = { 0x79, 0x10, 0x88, 0x73, 0x65, 0x61, 0xf4, 0x19, 0x32, 0xcd, 0x86, 0xf0, 0x66, 0xcc, 0xa6, 0xd6, 0x3d, 0x44, 0x73, 0xae, 0xbb, 0x86, 0x9b, 0xcc, 0x70, 0xc9, 0x23, 0xef, 0x80, 0xa7, 0xfd, 0x95, 0x33, 0x40, 0x29, 0x73, 0xe7, 0xa8, 0x24, 0x60, 0x27, 0x12, 0xa5, 0xab, 0xf7, 0x03, 0x0b, 0xad, 0x2f, 0x18, 0x3e, 0x6b, 0x4f, 0xa4, 0x0c, 0x66, 0x39, 0x9a, 0x14, 0xae, 0x48, 0xe2, 0x88, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5893 = { .name = "ecdsa_secp256k1_sha3_512_5893", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5893_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5893_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5893_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5894 for ECDSA, tcId is 331 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5894_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5894_msg[] = { 0x33, 0x35, 0x38, 0x31, 0x39, 0x33, 0x32, 0x35, 0x33, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5894_sig[] = { 0x52, 0x68, 0x5e, 0xef, 0x5f, 0x21, 0x68, 0x59, 0x8c, 0x29, 0x48, 0x70, 0x18, 0x8c, 0x04, 0x3d, 0xff, 0x04, 0x96, 0x63, 0x80, 0x37, 0x17, 0x07, 0x63, 0xef, 0x57, 0x78, 0xb7, 0xb6, 0xfc, 0x1f, 0x79, 0xa8, 0x8d, 0x3e, 0x7b, 0x2c, 0x3a, 0x44, 0xbe, 0x4b, 0x3b, 0x33, 0x05, 0xe4, 0xba, 0xd5, 0xfc, 0xfe, 0x07, 0xd1, 0x79, 0x13, 0x6f, 0x5a, 0xc9, 0x26, 0x31, 0x5f, 0xf9, 0xd4, 0x78, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5894 = { .name = "ecdsa_secp256k1_sha3_512_5894", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5894_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5894_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5894_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5895 for ECDSA, tcId is 332 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5895_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5895_msg[] = { 0x31, 0x35, 0x37, 0x31, 0x36, 0x36, 0x37, 0x38, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5895_sig[] = { 0x5d, 0xb8, 0x83, 0xb5, 0xa3, 0x76, 0x6a, 0x2a, 0x14, 0xab, 0x26, 0xa2, 0x5e, 0xc5, 0x98, 0xf7, 0xbd, 0x1f, 0x97, 0x58, 0x5f, 0xe0, 0xb5, 0x53, 0x41, 0xe7, 0xda, 0x25, 0x1a, 0x62, 0xec, 0x1e, 0xbf, 0x63, 0xc6, 0x6e, 0x99, 0x2c, 0x91, 0xfd, 0xe5, 0x13, 0xab, 0xdb, 0xd5, 0x9b, 0x4f, 0x9f, 0x54, 0x28, 0x81, 0xcf, 0xdc, 0x2b, 0xe3, 0xfb, 0xf3, 0xe7, 0x72, 0xb9, 0x7e, 0x50, 0x5b, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5895 = { .name = "ecdsa_secp256k1_sha3_512_5895", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5895_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5895_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5895_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5896 for ECDSA, tcId is 333 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5896_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5896_msg[] = { 0x33, 0x31, 0x39, 0x39, 0x37, 0x38, 0x33, 0x33, 0x36, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5896_sig[] = { 0x7e, 0x2f, 0x80, 0x30, 0x0a, 0x4c, 0x81, 0x54, 0x3e, 0x32, 0x4e, 0x9c, 0x89, 0x73, 0xbb, 0xb6, 0xf1, 0x65, 0x99, 0xc3, 0xd3, 0x37, 0xee, 0x82, 0xae, 0xd8, 0x16, 0x62, 0x48, 0x43, 0xf3, 0x70, 0x80, 0xa8, 0x07, 0xe9, 0x20, 0xde, 0xae, 0xba, 0xf3, 0xc3, 0x24, 0x70, 0x10, 0xcb, 0x3c, 0x91, 0xcf, 0xce, 0x21, 0xb0, 0xd5, 0xad, 0x69, 0x51, 0x77, 0xd9, 0x34, 0xee, 0x5a, 0x7f, 0x7c, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5896 = { .name = "ecdsa_secp256k1_sha3_512_5896", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5896_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5896_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5896_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5897 for ECDSA, tcId is 334 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5897_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5897_msg[] = { 0x37, 0x34, 0x30, 0x34, 0x37, 0x35, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5897_sig[] = { 0xde, 0x12, 0xeb, 0x33, 0xb7, 0x17, 0xfd, 0x88, 0x7f, 0xd6, 0x84, 0xa6, 0x4a, 0xf9, 0x43, 0x9a, 0x27, 0xee, 0x83, 0xb2, 0x8a, 0xc5, 0x75, 0x17, 0x72, 0x24, 0x9e, 0x60, 0x08, 0x56, 0xb5, 0x9e, 0x8d, 0xca, 0x36, 0x7b, 0xd7, 0xbc, 0x83, 0x70, 0x9f, 0x25, 0xb0, 0xfc, 0x4e, 0x1f, 0x4a, 0x0e, 0x7e, 0x74, 0x7b, 0xe0, 0xb8, 0xa2, 0x97, 0x7a, 0xab, 0xd2, 0x57, 0x50, 0xa0, 0xba, 0x60, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5897 = { .name = "ecdsa_secp256k1_sha3_512_5897", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5897_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5897_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5897_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5898 for ECDSA, tcId is 335 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5898_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5898_msg[] = { 0x34, 0x31, 0x37, 0x34, 0x33, 0x36, 0x35, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5898_sig[] = { 0xde, 0xe1, 0x12, 0xed, 0x70, 0x00, 0xc0, 0x77, 0x6b, 0xa4, 0xfa, 0xb0, 0x9f, 0x43, 0x9a, 0x84, 0x4a, 0xdd, 0xb8, 0x6c, 0x50, 0x46, 0x22, 0x33, 0x97, 0x49, 0x8a, 0xd7, 0x2d, 0x05, 0x9d, 0xe4, 0x70, 0x39, 0xb7, 0x15, 0x85, 0x1e, 0x4b, 0x38, 0x6e, 0xa1, 0x5e, 0x9b, 0xb0, 0x89, 0x9c, 0xa2, 0x1a, 0x4e, 0x6f, 0x4e, 0xcb, 0xbc, 0xe4, 0xf7, 0x06, 0xd2, 0x92, 0x74, 0x80, 0x64, 0x00, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5898 = { .name = "ecdsa_secp256k1_sha3_512_5898", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5898_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5898_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5898_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5899 for ECDSA, tcId is 336 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5899_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5899_msg[] = { 0x31, 0x32, 0x33, 0x35, 0x36, 0x35, 0x38, 0x38, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha3_512_5899_sig[] = { 0x9d, 0x01, 0x03, 0x2d, 0x95, 0xca, 0xc5, 0x96, 0xe7, 0xdf, 0x6c, 0x75, 0x96, 0x5c, 0x36, 0x69, 0xf2, 0x9c, 0xb8, 0xe5, 0x8c, 0xc9, 0xa9, 0x33, 0xbc, 0x5d, 0x60, 0xc1, 0xa9, 0x7e, 0x94, 0x6e, 0x1c, 0xf2, 0xce, 0x39, 0xdf, 0x73, 0xcc, 0x73, 0x4b, 0xb4, 0x18, 0x0e, 0xf0, 0x9d, 0xe8, 0x83, 0xba, 0xd7, 0xc8, 0xd8, 0x2a, 0xb1, 0xa5, 0x86, 0x1d, 0x26, 0x5b, 0x48, 0xaa, 0x19, 0x5b, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5899 = { .name = "ecdsa_secp256k1_sha3_512_5899", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5899_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5899_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5899_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5900 for ECDSA, tcId is 337 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5900_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5900_msg[] = { 0x32, 0x34, 0x32, 0x39, 0x32, 0x35, 0x35, 0x34, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5900_sig[] = { 0x6f, 0x15, 0x13, 0xd1, 0x2e, 0x21, 0x12, 0xec, 0x4f, 0x39, 0x6e, 0xf4, 0xea, 0x38, 0x32, 0x41, 0x02, 0xec, 0x3c, 0x7f, 0xb6, 0x3e, 0xe4, 0x9f, 0x48, 0x5c, 0xb4, 0x21, 0xa0, 0x7d, 0xce, 0x57, 0xa7, 0x8f, 0xbd, 0x65, 0xb2, 0x58, 0x2a, 0x40, 0x31, 0xc3, 0x4c, 0x7a, 0x8c, 0x28, 0xf0, 0x3f, 0x16, 0xef, 0x2b, 0xa1, 0x8e, 0x2d, 0xa4, 0x1e, 0xf1, 0x73, 0xee, 0x5a, 0x85, 0xaf, 0x1f, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5900 = { .name = "ecdsa_secp256k1_sha3_512_5900", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5900_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5900_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5900_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5901 for ECDSA, tcId is 338 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5901_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5901_msg[] = { 0x35, 0x31, 0x38, 0x30, 0x33, 0x30, 0x32, 0x35, 0x34, 0x36, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5901_sig[] = { 0xc3, 0xfb, 0x59, 0x67, 0x1c, 0xb8, 0xc6, 0xdb, 0x48, 0xbd, 0x51, 0xa6, 0x67, 0x06, 0x04, 0x28, 0xf7, 0x51, 0x24, 0xb5, 0xe9, 0x90, 0xaf, 0x1e, 0x99, 0x7f, 0xd6, 0x36, 0x33, 0x50, 0x72, 0xd5, 0xc7, 0x97, 0xe7, 0x24, 0x5c, 0xfc, 0x8d, 0x98, 0xbc, 0xa3, 0xae, 0x1f, 0x42, 0x39, 0xb8, 0x86, 0x84, 0xca, 0xde, 0xda, 0x2c, 0x62, 0x8f, 0x09, 0xae, 0x61, 0x05, 0x3e, 0xeb, 0x68, 0x37, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5901 = { .name = "ecdsa_secp256k1_sha3_512_5901", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5901_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5901_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5901_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5902 for ECDSA, tcId is 339 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5902_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5902_msg[] = { 0x34, 0x34, 0x37, 0x36, 0x33, 0x39, 0x38, 0x32, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5902_sig[] = { 0xe8, 0xb5, 0xb3, 0xf3, 0x44, 0x3d, 0x59, 0xd7, 0x52, 0x1d, 0x09, 0x38, 0x84, 0x48, 0x6e, 0x7a, 0x67, 0x32, 0xe2, 0x75, 0xec, 0x13, 0x31, 0x3b, 0xd4, 0xd1, 0x78, 0xf2, 0x81, 0x28, 0xe0, 0x75, 0xd2, 0x99, 0xb0, 0x62, 0x92, 0x8e, 0x5f, 0x05, 0x8c, 0x70, 0x5a, 0xcc, 0x3c, 0x62, 0xf2, 0x41, 0x28, 0xec, 0x70, 0x3c, 0x28, 0x28, 0x8b, 0x0d, 0x29, 0x42, 0x16, 0x37, 0x0c, 0xad, 0x69, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5902 = { .name = "ecdsa_secp256k1_sha3_512_5902", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5902_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5902_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5902_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5903 for ECDSA, tcId is 340 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5903_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5903_msg[] = { 0x39, 0x30, 0x36, 0x30, 0x30, 0x33, 0x35, 0x32, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5903_sig[] = { 0xce, 0x43, 0x21, 0x8d, 0x44, 0xe1, 0x13, 0xec, 0x38, 0xd5, 0xcb, 0xcf, 0x40, 0x2f, 0x3d, 0xbf, 0xa8, 0x7d, 0x58, 0x82, 0x6a, 0x76, 0x0f, 0x0b, 0xf2, 0xc8, 0x8f, 0x11, 0x98, 0x1f, 0x77, 0x19, 0x64, 0x8f, 0x3e, 0xd0, 0xd1, 0xb7, 0x6d, 0xec, 0x54, 0x37, 0xcb, 0x68, 0x5d, 0xda, 0x7a, 0x15, 0x12, 0xef, 0x07, 0xf4, 0xeb, 0x07, 0x8d, 0xc5, 0x0e, 0x41, 0x8e, 0xfe, 0xb1, 0xaf, 0x88, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5903 = { .name = "ecdsa_secp256k1_sha3_512_5903", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5903_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5903_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5903_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5904 for ECDSA, tcId is 341 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5904_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5904_msg[] = { 0x31, 0x37, 0x35, 0x36, 0x30, 0x35, 0x33, 0x30, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5904_sig[] = { 0xfd, 0xc9, 0x90, 0x47, 0x86, 0x5e, 0xef, 0xfc, 0xb6, 0x9f, 0x8b, 0x87, 0x28, 0xa0, 0x08, 0xe3, 0x1f, 0x9f, 0x6b, 0xa7, 0x8f, 0x69, 0x8f, 0xae, 0x62, 0xb7, 0x1c, 0xce, 0x79, 0x50, 0x18, 0x88, 0xf0, 0x66, 0x12, 0xf5, 0x93, 0x87, 0x3a, 0x13, 0x45, 0x96, 0x95, 0xa5, 0xc4, 0xcb, 0x50, 0x4a, 0xcc, 0x2a, 0x8c, 0x56, 0x17, 0x9b, 0x68, 0x55, 0x3e, 0x60, 0xf2, 0x31, 0x9c, 0x90, 0x5b, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5904 = { .name = "ecdsa_secp256k1_sha3_512_5904", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5904_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5904_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5904_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5905 for ECDSA, tcId is 342 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5905_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5905_msg[] = { 0x34, 0x39, 0x38, 0x30, 0x38, 0x36, 0x30, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha3_512_5905_sig[] = { 0x25, 0x6e, 0x5c, 0x4f, 0x4c, 0xd1, 0x21, 0xe2, 0xde, 0xe1, 0x98, 0x7b, 0xe7, 0xb2, 0x41, 0xb6, 0xe9, 0x1f, 0x90, 0xd4, 0x83, 0x21, 0x0a, 0xab, 0x9a, 0x4b, 0x36, 0x7d, 0xb5, 0x61, 0x31, 0x74, 0xf7, 0x50, 0x60, 0xdb, 0x4b, 0xd6, 0xcd, 0x52, 0xbb, 0x8e, 0x6a, 0xa9, 0x4f, 0x7a, 0xb6, 0x84, 0x88, 0xa6, 0x38, 0x87, 0x35, 0x15, 0x78, 0x7e, 0xc0, 0xd7, 0xe6, 0x1b, 0xad, 0x58, 0xab, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5905 = { .name = "ecdsa_secp256k1_sha3_512_5905", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5905_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5905_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5905_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5906 for ECDSA, tcId is 343 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5906_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5906_msg[] = { 0x33, 0x36, 0x32, 0x31, 0x38, 0x37, 0x35, 0x33, 0x33, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_5906_sig[] = { 0xc7, 0xa2, 0x69, 0x98, 0x6b, 0x6a, 0xd5, 0x40, 0xdd, 0x30, 0xe6, 0x20, 0xd1, 0x60, 0x6e, 0x32, 0x67, 0x93, 0x5c, 0x7f, 0xd5, 0x55, 0x1b, 0x33, 0x11, 0xfd, 0x4e, 0x84, 0x05, 0x10, 0xc2, 0x48, 0x8d, 0xb7, 0xc8, 0xc4, 0x64, 0x10, 0x9c, 0xf0, 0xed, 0xb8, 0x93, 0x57, 0xe6, 0x63, 0xde, 0x6e, 0x88, 0x2b, 0x6f, 0x59, 0x06, 0xad, 0xde, 0x6d, 0x58, 0x57, 0x5c, 0xe0, 0xa2, 0xcc, 0xe2, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5906 = { .name = "ecdsa_secp256k1_sha3_512_5906", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5906_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5906_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5906_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5907 for ECDSA, tcId is 344 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5907_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5907_msg[] = { 0x36, 0x36, 0x34, 0x33, 0x33, 0x33, 0x34, 0x37, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5907_sig[] = { 0x0b, 0xea, 0x32, 0x47, 0x58, 0xea, 0x80, 0xed, 0x4a, 0x0a, 0x56, 0xf7, 0xd8, 0x36, 0xfc, 0x73, 0xbf, 0x19, 0x6e, 0x43, 0xfb, 0xc5, 0x9d, 0x95, 0x3f, 0x0c, 0xe3, 0x4a, 0xbb, 0xa5, 0x7b, 0x22, 0xf0, 0x40, 0x27, 0x24, 0x8e, 0x83, 0xbd, 0x48, 0xfb, 0x15, 0x71, 0x29, 0x1c, 0xa1, 0xa5, 0xf0, 0x88, 0xeb, 0x3e, 0x89, 0xf0, 0x09, 0x04, 0xd7, 0x1b, 0x9e, 0xa8, 0xd6, 0x67, 0x7f, 0x78, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5907 = { .name = "ecdsa_secp256k1_sha3_512_5907", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5907_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5907_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5907_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5908 for ECDSA, tcId is 345 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5908_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5908_msg[] = { 0x34, 0x34, 0x35, 0x34, 0x39, 0x34, 0x32, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5908_sig[] = { 0x5b, 0x53, 0xc9, 0x6d, 0x7a, 0x19, 0x5f, 0x02, 0xcf, 0xac, 0x2d, 0x15, 0x5a, 0xa7, 0xe1, 0x32, 0xfb, 0xc3, 0x5d, 0x59, 0xaf, 0xb0, 0x80, 0xf6, 0x49, 0xdc, 0x13, 0x05, 0x62, 0x48, 0xad, 0xdf, 0x2b, 0x15, 0x7d, 0xb2, 0x15, 0x4b, 0xd5, 0xdc, 0x0e, 0xf2, 0xfc, 0x6e, 0xec, 0xd8, 0x67, 0xfa, 0xbd, 0xc6, 0x33, 0xd2, 0xca, 0x68, 0x3a, 0x48, 0xf3, 0xf9, 0x09, 0x57, 0x45, 0x35, 0x1a, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5908 = { .name = "ecdsa_secp256k1_sha3_512_5908", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5908_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5908_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5908_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5909 for ECDSA, tcId is 346 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5909_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5909_msg[] = { 0x32, 0x30, 0x31, 0x38, 0x34, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5909_sig[] = { 0x24, 0x17, 0x4a, 0x81, 0xd2, 0x21, 0xa4, 0xbf, 0xd8, 0x97, 0x8f, 0x31, 0x2a, 0xce, 0xc4, 0xda, 0xcc, 0x4f, 0x08, 0xf8, 0xf8, 0xcd, 0xf2, 0x9b, 0x20, 0x24, 0xba, 0xd2, 0x17, 0x77, 0x58, 0xdf, 0x73, 0xfc, 0x1b, 0xf3, 0x38, 0x80, 0x09, 0xe3, 0x21, 0x9c, 0xf4, 0xc7, 0xe6, 0x2e, 0x4a, 0xea, 0xff, 0xc1, 0xb9, 0x61, 0x4b, 0x28, 0x31, 0x40, 0x5a, 0x01, 0x40, 0x3c, 0x86, 0x93, 0x64, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5909 = { .name = "ecdsa_secp256k1_sha3_512_5909", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5909_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5909_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha3_512_5909_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5910 for ECDSA, tcId is 347 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5910_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5910_msg[] = { 0x35, 0x38, 0x31, 0x33, 0x32, 0x31, 0x37, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5910_sig[] = { 0x5d, 0xe7, 0xe8, 0x0c, 0xe3, 0x13, 0x7f, 0x57, 0x05, 0xd2, 0x33, 0x97, 0x19, 0x7c, 0x86, 0xe7, 0x74, 0x9e, 0x5e, 0x68, 0x21, 0x04, 0xf1, 0x3b, 0xeb, 0x5a, 0x63, 0x65, 0xa6, 0x37, 0x80, 0xea, 0xf3, 0xda, 0x2b, 0xfd, 0x64, 0x42, 0x63, 0x8d, 0xa6, 0x02, 0x01, 0xbe, 0x68, 0xfe, 0x2a, 0xd2, 0x06, 0x36, 0x5a, 0xf9, 0xe4, 0x0c, 0x4c, 0x15, 0x31, 0xcd, 0x3a, 0x05, 0xdb, 0x1a, 0xd3, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5910 = { .name = "ecdsa_secp256k1_sha3_512_5910", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5910_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5910_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha3_512_5910_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5911 for ECDSA, tcId is 348 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5911_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5911_msg[] = { 0x31, 0x31, 0x38, 0x33, 0x38, 0x36, 0x31, 0x38, 0x31, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5911_sig[] = { 0xdc, 0xdc, 0x28, 0xf8, 0x1f, 0xf5, 0xed, 0x91, 0xfa, 0x15, 0xf1, 0x5f, 0xc4, 0xf1, 0xd3, 0x8f, 0x9c, 0xdd, 0xfc, 0x3d, 0xf6, 0x5b, 0xb2, 0xd3, 0xa5, 0x55, 0x82, 0xfa, 0xf7, 0xc0, 0x91, 0x0d, 0x51, 0x5b, 0x77, 0x59, 0xa1, 0x30, 0xd6, 0x67, 0xef, 0xf7, 0xff, 0x31, 0x67, 0xc3, 0x05, 0xcc, 0xa1, 0x01, 0xbe, 0x3a, 0x07, 0x94, 0x5f, 0xd7, 0xcb, 0x6a, 0x13, 0x59, 0xc1, 0x6d, 0xb6, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5911 = { .name = "ecdsa_secp256k1_sha3_512_5911", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5911_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5911_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5911_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5912 for ECDSA, tcId is 349 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5912_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5912_msg[] = { 0x31, 0x39, 0x32, 0x32, 0x36, 0x30, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5912_sig[] = { 0x74, 0x07, 0x26, 0x1c, 0x97, 0x80, 0x18, 0xcc, 0x6e, 0x92, 0xa3, 0x40, 0xde, 0x80, 0xed, 0xd3, 0x04, 0x4a, 0x6e, 0x71, 0x16, 0xeb, 0x9f, 0xa9, 0xb0, 0x22, 0xa2, 0xae, 0xb3, 0x18, 0xc6, 0x5e, 0xbb, 0x58, 0x26, 0x95, 0x3e, 0x0b, 0x85, 0xad, 0x69, 0x74, 0x52, 0x49, 0xf6, 0x95, 0x07, 0x76, 0x5a, 0x93, 0xf8, 0x21, 0x98, 0xbc, 0xa1, 0xe4, 0x47, 0x5f, 0xd5, 0xde, 0x7d, 0xfb, 0x15, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5912 = { .name = "ecdsa_secp256k1_sha3_512_5912", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5912_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5912_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5912_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5913 for ECDSA, tcId is 350 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5913_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5913_msg[] = { 0x39, 0x37, 0x35, 0x31, 0x34, 0x33, 0x32, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha3_512_5913_sig[] = { 0x39, 0x62, 0x52, 0x0e, 0xa2, 0xef, 0x01, 0xcb, 0xa7, 0xd5, 0x13, 0x51, 0x17, 0xa7, 0xfc, 0xb5, 0xab, 0x12, 0x0b, 0x28, 0xba, 0xf6, 0xe3, 0x1d, 0xe2, 0xe6, 0xec, 0x99, 0x93, 0xd8, 0xd5, 0xbc, 0x25, 0x83, 0x65, 0x9f, 0xbd, 0xf8, 0x33, 0x99, 0x30, 0x9b, 0xdd, 0xc8, 0x9e, 0xa5, 0xf3, 0x9f, 0xe2, 0x21, 0x87, 0x67, 0x1f, 0x31, 0x49, 0xd9, 0x4f, 0x96, 0xfa, 0x23, 0x4a, 0x60, 0x13, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5913 = { .name = "ecdsa_secp256k1_sha3_512_5913", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5913_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5913_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5913_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5914 for ECDSA, tcId is 351 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5914_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5914_msg[] = { 0x38, 0x33, 0x31, 0x35, 0x31, 0x31, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha3_512_5914_sig[] = { 0xbe, 0xc3, 0xea, 0x35, 0x84, 0x44, 0x52, 0xbb, 0x73, 0x9d, 0x92, 0xb2, 0x08, 0x82, 0xe5, 0xb6, 0x72, 0xdc, 0x6e, 0xff, 0x32, 0x3c, 0xd3, 0x1d, 0x1a, 0x2d, 0xb3, 0x7d, 0xb9, 0x37, 0x91, 0xe8, 0x8e, 0xf7, 0x7b, 0x3c, 0x70, 0x9d, 0x60, 0xb9, 0xd5, 0xd9, 0x98, 0xf8, 0x1d, 0x3f, 0x72, 0xc4, 0x66, 0xfd, 0x7b, 0xb9, 0x9c, 0x68, 0x1a, 0xe8, 0xbc, 0x9c, 0x58, 0x0d, 0xb1, 0xf7, 0xc2, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5914 = { .name = "ecdsa_secp256k1_sha3_512_5914", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5914_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5914_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5914_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5915 for ECDSA, tcId is 352 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5915_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5915_msg[] = { 0x33, 0x32, 0x36, 0x33, 0x31, 0x36, 0x38, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha3_512_5915_sig[] = { 0xb8, 0xfb, 0xdf, 0xed, 0xee, 0x53, 0x76, 0xcf, 0xc9, 0x17, 0x7d, 0x96, 0xc4, 0x5e, 0x00, 0x3f, 0x90, 0xb7, 0x36, 0x7a, 0xa4, 0x0c, 0xf3, 0x7d, 0x63, 0xe4, 0x83, 0xbf, 0xaa, 0x4b, 0xe9, 0x51, 0x4d, 0xca, 0xcd, 0xfb, 0xe4, 0x1d, 0xf7, 0x89, 0x93, 0x82, 0x60, 0x74, 0x89, 0xbb, 0x75, 0x42, 0x2f, 0x3e, 0xb6, 0x78, 0x22, 0x89, 0x0e, 0xa3, 0xbb, 0xfd, 0x80, 0xcd, 0x45, 0x6f, 0xc1, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5915 = { .name = "ecdsa_secp256k1_sha3_512_5915", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5915_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5915_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha3_512_5915_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5916 for ECDSA, tcId is 353 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5916_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5916_msg[] = { 0x34, 0x30, 0x32, 0x39, 0x36, 0x38, 0x37, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha3_512_5916_sig[] = { 0xdf, 0x22, 0x8c, 0x1a, 0x8b, 0xb3, 0x68, 0x4b, 0x7f, 0xfa, 0x2e, 0x3f, 0x77, 0x76, 0x43, 0xc3, 0x69, 0xe1, 0xbc, 0x22, 0x99, 0xd6, 0x6a, 0x66, 0xc8, 0xed, 0x27, 0xa4, 0xed, 0x59, 0xb7, 0x83, 0x47, 0x31, 0x4a, 0xaf, 0x36, 0x29, 0xa0, 0xde, 0x02, 0x31, 0x3d, 0xf0, 0x6c, 0x0c, 0xb3, 0x63, 0xe4, 0xe0, 0x19, 0xaa, 0xfd, 0x20, 0xec, 0x06, 0xbe, 0x63, 0xb7, 0xb4, 0xc2, 0x15, 0x38, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5916 = { .name = "ecdsa_secp256k1_sha3_512_5916", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5916_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5916_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5916_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5917 for ECDSA, tcId is 354 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5917_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5917_msg[] = { 0x36, 0x33, 0x32, 0x30, 0x38, 0x38, 0x31, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5917_sig[] = { 0x52, 0x87, 0x46, 0xb2, 0x80, 0xd8, 0xa0, 0xe5, 0x48, 0x51, 0xcb, 0x99, 0x89, 0x4a, 0xfc, 0x01, 0xce, 0x24, 0xcf, 0xf7, 0xed, 0xd6, 0x01, 0x16, 0xe3, 0xd8, 0xda, 0xe4, 0x2a, 0xdb, 0x49, 0x61, 0x4e, 0xb2, 0x64, 0x62, 0x9e, 0x5c, 0xf4, 0xab, 0xa7, 0x7e, 0x05, 0xc5, 0x47, 0x74, 0xbd, 0x0c, 0xf2, 0x0b, 0x05, 0x71, 0x42, 0xa1, 0xac, 0x21, 0x03, 0x09, 0x9d, 0x66, 0x4c, 0x2c, 0x5d, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5917 = { .name = "ecdsa_secp256k1_sha3_512_5917", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5917_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5917_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5917_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5918 for ECDSA, tcId is 355 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5918_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5918_msg[] = { 0x35, 0x32, 0x32, 0x35, 0x33, 0x39, 0x30, 0x37, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5918_sig[] = { 0x44, 0xc3, 0x91, 0xf8, 0x2c, 0xf5, 0xee, 0xb8, 0x0f, 0x87, 0xc3, 0x47, 0xa5, 0xbf, 0xe4, 0x61, 0xc4, 0x9f, 0xd8, 0x77, 0x93, 0x11, 0xe2, 0x37, 0xab, 0xc0, 0x5b, 0x19, 0xf6, 0xae, 0xd0, 0x93, 0x86, 0x68, 0x53, 0x61, 0x93, 0x39, 0xb7, 0x16, 0x09, 0x2d, 0xf4, 0x46, 0x6a, 0xa0, 0xcc, 0x9e, 0x62, 0x56, 0xfb, 0x7e, 0x18, 0xa7, 0x98, 0x54, 0xb6, 0x0c, 0xcc, 0x53, 0x4b, 0xb6, 0xdf, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5918 = { .name = "ecdsa_secp256k1_sha3_512_5918", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5918_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5918_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5918_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 355 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5919 for ECDSA, tcId is 356 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5919_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5919_msg[] = { 0x31, 0x33, 0x34, 0x39, 0x33, 0x39, 0x33, 0x36, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha3_512_5919_sig[] = { 0x03, 0xd1, 0x27, 0xa6, 0xf7, 0x24, 0x65, 0xbd, 0x1c, 0x02, 0x10, 0x9f, 0x96, 0x05, 0x20, 0x2b, 0x24, 0x67, 0x63, 0x09, 0x7c, 0x75, 0x62, 0x35, 0xd8, 0xf8, 0xa2, 0x68, 0x48, 0xeb, 0x60, 0x9c, 0x83, 0xd5, 0x51, 0x42, 0x7f, 0x31, 0xb9, 0x57, 0x2b, 0x61, 0x18, 0x0c, 0xf1, 0x8b, 0xc8, 0x5c, 0x20, 0x30, 0x6c, 0x0d, 0xe2, 0xc3, 0x9d, 0x00, 0x43, 0x0b, 0x3f, 0xc9, 0x1d, 0xc5, 0x0c, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5919 = { .name = "ecdsa_secp256k1_sha3_512_5919", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5919_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5919_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha3_512_5919_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 356 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5920 for ECDSA, tcId is 357 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5920_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5920_msg[] = { 0x31, 0x30, 0x33, 0x39, 0x37, 0x39, 0x36, 0x30, 0x37, 0x36, 0x31, }; static const unsigned char ecdsa_secp256k1_sha3_512_5920_sig[] = { 0x50, 0x44, 0xef, 0x23, 0x62, 0xc8, 0xe6, 0xc3, 0x2f, 0xc1, 0x45, 0x84, 0xb0, 0x75, 0x1e, 0xda, 0x8e, 0x8e, 0x89, 0x01, 0xd9, 0x38, 0x23, 0x54, 0x04, 0x0d, 0x26, 0x15, 0xd9, 0xcc, 0x07, 0xc1, 0xdd, 0x16, 0x76, 0x59, 0x11, 0xdc, 0xe7, 0xa7, 0xae, 0x5f, 0x3b, 0x64, 0xb3, 0xce, 0x3a, 0x5e, 0x12, 0xe5, 0x48, 0x78, 0x45, 0x97, 0xdc, 0x0a, 0x37, 0x9f, 0x7b, 0xb8, 0xf4, 0xfc, 0xa8, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5920 = { .name = "ecdsa_secp256k1_sha3_512_5920", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5920_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5920_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha3_512_5920_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 357 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5921 for ECDSA, tcId is 358 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5921_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5921_sig[] = { 0xce, 0x64, 0x5f, 0x0f, 0x1c, 0xcb, 0x63, 0x84, 0x4e, 0x54, 0xbd, 0x76, 0x03, 0xa4, 0x28, 0x0e, 0xa0, 0x65, 0xe3, 0xc1, 0x47, 0xd2, 0x6e, 0x73, 0xcf, 0xbe, 0x58, 0xc6, 0x11, 0x6b, 0x0c, 0xf1, 0x40, 0xcc, 0xc2, 0x31, 0x88, 0xaa, 0x20, 0x45, 0x3d, 0x7f, 0x95, 0xd3, 0x38, 0x68, 0xf2, 0x47, 0xb3, 0xd7, 0x7c, 0x51, 0x6b, 0x70, 0xe4, 0xc3, 0x51, 0xb4, 0x8c, 0xa2, 0xeb, 0xef, 0x00, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5921 = { .name = "ecdsa_secp256k1_sha3_512_5921", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5921_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5921_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5921_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 358 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5922 for ECDSA, tcId is 359 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5922_pubkey[] = { 0x0f, 0xa3, 0x67, 0x69, 0x83, 0x5d, 0x1d, 0x21, 0x5f, 0x15, 0x6d, 0x5e, 0x82, 0xbe, 0xd2, 0xfa, 0x76, 0xaa, 0xb1, 0x34, 0xbd, 0xb1, 0xd3, 0xbd, 0x40, 0x97, 0x5f, 0xaf, 0x5a, 0xc1, 0x9c, 0xc6, 0xe6, 0x7d, 0x67, 0x5a, 0x8f, 0x0d, 0xc4, 0x76, 0x0b, 0x3f, 0x8f, 0xbe, 0x0f, 0x08, 0x53, 0xa8, 0x0b, 0x58, 0xaf, 0x8d, 0xd2, 0xc4, 0xa4, 0x1a, 0xfb, 0xf9, 0xcb, 0x0c, 0x72, 0xd0, 0x16, 0xca, }; static const unsigned char ecdsa_secp256k1_sha3_512_5922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5922_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5922 = { .name = "ecdsa_secp256k1_sha3_512_5922", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5922_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5922_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5922_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 359 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5923 for ECDSA, tcId is 360 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5923_pubkey[] = { 0x0f, 0xa3, 0x67, 0x69, 0x83, 0x5d, 0x1d, 0x21, 0x5f, 0x15, 0x6d, 0x5e, 0x82, 0xbe, 0xd2, 0xfa, 0x76, 0xaa, 0xb1, 0x34, 0xbd, 0xb1, 0xd3, 0xbd, 0x40, 0x97, 0x5f, 0xaf, 0x5a, 0xc1, 0x9c, 0xc6, 0xe6, 0x7d, 0x67, 0x5a, 0x8f, 0x0d, 0xc4, 0x76, 0x0b, 0x3f, 0x8f, 0xbe, 0x0f, 0x08, 0x53, 0xa8, 0x0b, 0x58, 0xaf, 0x8d, 0xd2, 0xc4, 0xa4, 0x1a, 0xfb, 0xf9, 0xcb, 0x0c, 0x72, 0xd0, 0x16, 0xca, }; static const unsigned char ecdsa_secp256k1_sha3_512_5923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5923_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5923 = { .name = "ecdsa_secp256k1_sha3_512_5923", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5923_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5923_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5923_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 360 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5924 for ECDSA, tcId is 361 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5924_pubkey[] = { 0x2f, 0x1d, 0xb0, 0x89, 0x5a, 0x8d, 0x61, 0x57, 0x79, 0xa3, 0x8d, 0xdc, 0xbe, 0xac, 0xad, 0x94, 0x58, 0xf3, 0x56, 0x88, 0xb5, 0x87, 0xab, 0xee, 0xda, 0x1c, 0xb5, 0xa8, 0x91, 0xe9, 0x54, 0xa5, 0xb5, 0x91, 0x47, 0x8e, 0x3b, 0x81, 0xf5, 0x88, 0x1d, 0xd7, 0x1f, 0x93, 0xb8, 0x11, 0x13, 0x0a, 0x67, 0xea, 0x69, 0x7f, 0x45, 0x2f, 0xac, 0xcd, 0x5c, 0x51, 0x17, 0xfa, 0xc1, 0x5f, 0x5f, 0x93, }; static const unsigned char ecdsa_secp256k1_sha3_512_5924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5924_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5924 = { .name = "ecdsa_secp256k1_sha3_512_5924", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5924_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5924_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5924_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 361 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5925 for ECDSA, tcId is 362 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5925_pubkey[] = { 0x46, 0x21, 0x55, 0x17, 0x4b, 0x64, 0xdd, 0x05, 0x06, 0x01, 0xb6, 0xd7, 0xc2, 0x29, 0x72, 0x51, 0x81, 0x5d, 0x41, 0x3e, 0x26, 0xc9, 0xb9, 0x1d, 0x12, 0x35, 0x36, 0xe7, 0x6f, 0xd3, 0xfb, 0x13, 0x5f, 0x0a, 0x20, 0xf8, 0x65, 0x28, 0xdf, 0xf2, 0x46, 0xec, 0xc7, 0x1d, 0x5d, 0x00, 0x5b, 0x29, 0x35, 0xe4, 0xd8, 0xe0, 0xb0, 0x76, 0xfd, 0x67, 0x92, 0xd4, 0xa2, 0xb3, 0xfd, 0x2b, 0x7b, 0xb9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5925_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5925 = { .name = "ecdsa_secp256k1_sha3_512_5925", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5925_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5925_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5925_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 362 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5926 for ECDSA, tcId is 363 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5926_pubkey[] = { 0x8e, 0x89, 0xe0, 0xff, 0xf2, 0xd7, 0x68, 0xc7, 0xc1, 0x39, 0xb2, 0x2b, 0x90, 0xaa, 0x66, 0xb2, 0x4b, 0x3b, 0x1c, 0xed, 0x43, 0x45, 0xc4, 0x69, 0xe4, 0x39, 0xb2, 0xc8, 0x0d, 0x6f, 0xed, 0x08, 0x4e, 0xb9, 0xca, 0x14, 0x86, 0xff, 0x34, 0x11, 0xdb, 0x46, 0x59, 0x0f, 0x78, 0x00, 0x8d, 0x6d, 0x6a, 0x0a, 0x9c, 0xf9, 0xcf, 0x36, 0xb2, 0xbe, 0xf8, 0x33, 0x40, 0x7a, 0xf5, 0xbc, 0x88, 0x3e, }; static const unsigned char ecdsa_secp256k1_sha3_512_5926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5926_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5926 = { .name = "ecdsa_secp256k1_sha3_512_5926", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5926_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5926_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5926_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 363 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5927 for ECDSA, tcId is 364 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5927_pubkey[] = { 0xf4, 0xc2, 0xd7, 0xdf, 0x7c, 0xa6, 0x16, 0xbc, 0xe4, 0x92, 0x12, 0xe4, 0x7e, 0xd1, 0x12, 0x10, 0x64, 0x45, 0xf4, 0x7c, 0xf1, 0x14, 0x78, 0x26, 0x26, 0x74, 0x0d, 0x37, 0xe1, 0xc5, 0x96, 0xdf, 0x10, 0x88, 0xb1, 0x9b, 0xca, 0xf0, 0xd1, 0x06, 0x09, 0xa4, 0x6b, 0xbd, 0xfd, 0x62, 0x6a, 0x83, 0xd1, 0x3e, 0x62, 0xd4, 0x05, 0x77, 0x5a, 0xe3, 0x94, 0x17, 0x55, 0xb2, 0x78, 0xa4, 0x43, 0xc0, }; static const unsigned char ecdsa_secp256k1_sha3_512_5927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5927_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5927 = { .name = "ecdsa_secp256k1_sha3_512_5927", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5927_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5927_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5927_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 364 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5928 for ECDSA, tcId is 365 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5928_pubkey[] = { 0x43, 0x05, 0x3f, 0xa5, 0x74, 0x36, 0xa0, 0xb2, 0x6f, 0x0f, 0x88, 0x7b, 0x24, 0x03, 0xcc, 0xd9, 0xd1, 0x8f, 0x14, 0xb7, 0x86, 0x6e, 0x1d, 0xa5, 0x93, 0x83, 0x5e, 0x93, 0xcd, 0x10, 0x3a, 0x15, 0x60, 0x39, 0xd7, 0xcc, 0xf6, 0xc3, 0x55, 0xac, 0x94, 0xed, 0x59, 0x22, 0x5a, 0xab, 0x8a, 0x5a, 0xa1, 0x90, 0xc8, 0x9c, 0x42, 0x2f, 0x80, 0xe7, 0x12, 0x46, 0xb9, 0x98, 0x81, 0x8e, 0xcd, 0x54, }; static const unsigned char ecdsa_secp256k1_sha3_512_5928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5928_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5928 = { .name = "ecdsa_secp256k1_sha3_512_5928", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5928_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5928_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5928_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 365 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5929 for ECDSA, tcId is 366 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5929_pubkey[] = { 0x9b, 0x27, 0xe4, 0x40, 0x9c, 0x49, 0xab, 0xe9, 0xd8, 0xd1, 0xb9, 0x0e, 0xdc, 0x64, 0x36, 0x7d, 0xae, 0xdb, 0x43, 0xd6, 0x8a, 0x41, 0xc5, 0x01, 0x03, 0x2d, 0xba, 0x5d, 0x73, 0xef, 0x10, 0x21, 0x0c, 0xd4, 0x2c, 0xc8, 0x48, 0x8e, 0xb0, 0x58, 0x86, 0x80, 0xb9, 0x4e, 0x93, 0x4f, 0xf7, 0x44, 0xf4, 0xe6, 0xcb, 0x07, 0x97, 0x37, 0xbe, 0xb5, 0xee, 0xab, 0xbe, 0x56, 0xfd, 0x11, 0xa7, 0xbb, }; static const unsigned char ecdsa_secp256k1_sha3_512_5929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5929_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5929 = { .name = "ecdsa_secp256k1_sha3_512_5929", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5929_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5929_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5929_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 366 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5930 for ECDSA, tcId is 367 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5930_pubkey[] = { 0x9b, 0x27, 0xe4, 0x40, 0x9c, 0x49, 0xab, 0xe9, 0xd8, 0xd1, 0xb9, 0x0e, 0xdc, 0x64, 0x36, 0x7d, 0xae, 0xdb, 0x43, 0xd6, 0x8a, 0x41, 0xc5, 0x01, 0x03, 0x2d, 0xba, 0x5d, 0x73, 0xef, 0x10, 0x21, 0x0c, 0xd4, 0x2c, 0xc8, 0x48, 0x8e, 0xb0, 0x58, 0x86, 0x80, 0xb9, 0x4e, 0x93, 0x4f, 0xf7, 0x44, 0xf4, 0xe6, 0xcb, 0x07, 0x97, 0x37, 0xbe, 0xb5, 0xee, 0xab, 0xbe, 0x56, 0xfd, 0x11, 0xa7, 0xbb, }; static const unsigned char ecdsa_secp256k1_sha3_512_5930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5930_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5930 = { .name = "ecdsa_secp256k1_sha3_512_5930", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5930_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5930_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5930_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 367 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5931 for ECDSA, tcId is 368 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5931_pubkey[] = { 0x6e, 0x3f, 0x0e, 0x1b, 0x05, 0xe5, 0xbe, 0xd7, 0xe8, 0xa1, 0xc8, 0xde, 0x7b, 0x8a, 0x12, 0x73, 0x67, 0x37, 0x31, 0x15, 0x1e, 0x3a, 0x04, 0xdd, 0xc8, 0x3e, 0x18, 0xc9, 0x8d, 0x84, 0x29, 0x43, 0xcf, 0x1d, 0x41, 0x05, 0x8a, 0x6b, 0x72, 0x72, 0xa0, 0x14, 0xc6, 0xca, 0xff, 0x94, 0xdb, 0x3f, 0x02, 0x33, 0xe0, 0xf2, 0x1c, 0xc1, 0x01, 0xea, 0x15, 0x9a, 0xb1, 0x4b, 0xc8, 0x48, 0x37, 0x45, }; static const unsigned char ecdsa_secp256k1_sha3_512_5931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5931_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5931 = { .name = "ecdsa_secp256k1_sha3_512_5931", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5931_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5931_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5931_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 368 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5932 for ECDSA, tcId is 369 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5932_pubkey[] = { 0x06, 0xb2, 0xc1, 0xb7, 0x2f, 0x12, 0x84, 0x6b, 0xbc, 0xce, 0xda, 0x68, 0x18, 0x33, 0x72, 0xd3, 0xf0, 0x5e, 0xc5, 0x91, 0xc4, 0x35, 0x69, 0x36, 0x16, 0x46, 0xf5, 0x91, 0x6a, 0x00, 0xa7, 0x20, 0x22, 0x82, 0xd1, 0x5b, 0x70, 0xf1, 0x9d, 0xb9, 0x14, 0xc6, 0xfd, 0xd8, 0xfa, 0xf1, 0x5a, 0xb9, 0x0c, 0xed, 0x3b, 0xd4, 0xc3, 0xf5, 0x9a, 0x24, 0x7b, 0xe4, 0x16, 0x10, 0x49, 0x75, 0x94, 0xc6, }; static const unsigned char ecdsa_secp256k1_sha3_512_5932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5932_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5932 = { .name = "ecdsa_secp256k1_sha3_512_5932", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5932_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5932_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5932_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 369 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5933 for ECDSA, tcId is 370 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5933_pubkey[] = { 0x4e, 0x61, 0x22, 0x6e, 0x0b, 0x1c, 0x1e, 0x5a, 0x40, 0x76, 0x79, 0x56, 0xc7, 0xb5, 0x30, 0xea, 0xce, 0x83, 0xd5, 0x50, 0x03, 0x8e, 0x32, 0xbd, 0x14, 0xc5, 0x25, 0x8c, 0x48, 0xc9, 0x39, 0xfd, 0x57, 0xd0, 0x69, 0x21, 0x5e, 0xa2, 0x10, 0xb3, 0x86, 0x82, 0x0a, 0x2d, 0x42, 0x6f, 0xc7, 0x11, 0x86, 0x2b, 0xcf, 0xb3, 0x4c, 0x7d, 0xea, 0xae, 0xd4, 0x04, 0xd1, 0x76, 0x92, 0x89, 0x2c, 0xc4, }; static const unsigned char ecdsa_secp256k1_sha3_512_5933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5933_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5933 = { .name = "ecdsa_secp256k1_sha3_512_5933", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5933_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5933_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5933_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 370 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5934 for ECDSA, tcId is 371 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5934_pubkey[] = { 0xcf, 0x25, 0x9a, 0x52, 0xf7, 0x69, 0xee, 0xca, 0xb5, 0x07, 0x1c, 0x0b, 0x46, 0x76, 0xbc, 0x4c, 0xc4, 0x74, 0x47, 0x4b, 0x74, 0x67, 0x5f, 0xe8, 0xbd, 0x16, 0x60, 0xdf, 0x5b, 0x70, 0xce, 0x1b, 0x72, 0x2f, 0x77, 0x4a, 0x60, 0x1a, 0x61, 0xf2, 0xe8, 0xe3, 0x64, 0x47, 0x7b, 0x0c, 0xce, 0xa4, 0x57, 0xb7, 0x69, 0x77, 0xab, 0x30, 0x01, 0x39, 0xc4, 0xee, 0x0e, 0x1f, 0xbb, 0x7f, 0xe8, 0xf9, }; static const unsigned char ecdsa_secp256k1_sha3_512_5934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5934_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5934 = { .name = "ecdsa_secp256k1_sha3_512_5934", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5934_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5934_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5934_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 371 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5935 for ECDSA, tcId is 372 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5935_pubkey[] = { 0x67, 0xba, 0x78, 0x32, 0x8c, 0xff, 0xa6, 0xeb, 0x3f, 0x71, 0x19, 0x09, 0x6a, 0xdf, 0x17, 0xe3, 0xfc, 0xa6, 0xb2, 0xda, 0x96, 0x6c, 0x03, 0xbc, 0x66, 0x17, 0x4c, 0x29, 0x84, 0xa1, 0xd5, 0x53, 0x9a, 0xbd, 0xde, 0x79, 0x89, 0xd6, 0xf5, 0x08, 0x31, 0x87, 0x26, 0x13, 0x93, 0xa6, 0xe1, 0x62, 0xeb, 0x50, 0x8a, 0xe6, 0x27, 0x49, 0xe4, 0x1c, 0xaf, 0x55, 0xb2, 0xbe, 0x14, 0xd9, 0xa9, 0x60, }; static const unsigned char ecdsa_secp256k1_sha3_512_5935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5935_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5935 = { .name = "ecdsa_secp256k1_sha3_512_5935", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5935_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5935_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5935_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 372 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5936 for ECDSA, tcId is 373 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5936_pubkey[] = { 0x8f, 0x8c, 0x5f, 0xdf, 0x71, 0x1a, 0xff, 0x7d, 0xdc, 0x80, 0x7c, 0x43, 0x08, 0xa1, 0x32, 0xb1, 0x09, 0x9e, 0x3e, 0x95, 0xda, 0xbf, 0x80, 0x3c, 0xa2, 0x92, 0x83, 0xdd, 0x41, 0xb0, 0x90, 0x55, 0x8f, 0x60, 0xc7, 0x1b, 0x4a, 0x81, 0x3e, 0x7b, 0x43, 0x64, 0xb0, 0xa7, 0x26, 0x07, 0x65, 0x04, 0x2d, 0x36, 0x96, 0xa9, 0x58, 0x05, 0x48, 0xf5, 0x85, 0xbe, 0x12, 0x63, 0x3a, 0xc3, 0xb8, 0x24, }; static const unsigned char ecdsa_secp256k1_sha3_512_5936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5936_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5936 = { .name = "ecdsa_secp256k1_sha3_512_5936", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5936_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5936_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5936_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 373 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5937 for ECDSA, tcId is 374 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5937_pubkey[] = { 0xfb, 0x78, 0xc4, 0x5f, 0x16, 0xde, 0x9b, 0x4e, 0x09, 0x8d, 0xdc, 0x9e, 0xf6, 0xeb, 0x34, 0x0b, 0x05, 0x5a, 0x6a, 0x49, 0xc4, 0x38, 0xb8, 0x7b, 0xf7, 0x96, 0x9d, 0xc2, 0x4f, 0x79, 0x67, 0xdd, 0x2a, 0xf9, 0xeb, 0xab, 0xa5, 0x5b, 0x67, 0x13, 0xe0, 0x6e, 0x9d, 0xf9, 0xe4, 0x2b, 0x79, 0xea, 0x93, 0x64, 0x40, 0x5e, 0xba, 0xb1, 0x19, 0x9e, 0xa2, 0x30, 0xae, 0x38, 0xec, 0x83, 0xb9, 0x1a, }; static const unsigned char ecdsa_secp256k1_sha3_512_5937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5937_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5937 = { .name = "ecdsa_secp256k1_sha3_512_5937", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5937_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5937_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5937_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 374 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5938 for ECDSA, tcId is 375 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5938_pubkey[] = { 0xb7, 0xb9, 0x15, 0x38, 0x78, 0x62, 0x72, 0xe7, 0x0a, 0x60, 0x3c, 0xfc, 0x80, 0xc5, 0x2f, 0x87, 0xf0, 0x57, 0xa3, 0x69, 0x14, 0x98, 0x48, 0xdb, 0xc8, 0x65, 0xa8, 0xd2, 0xf4, 0x45, 0xec, 0x26, 0xbd, 0x90, 0xba, 0x88, 0x44, 0xf5, 0x8d, 0xb6, 0x74, 0x4b, 0x5f, 0x31, 0xa4, 0x70, 0xe5, 0x9e, 0xbf, 0xee, 0x18, 0x91, 0xbe, 0x36, 0xee, 0x65, 0xb1, 0x8b, 0xa1, 0x72, 0xe5, 0xea, 0xf9, 0x43, }; static const unsigned char ecdsa_secp256k1_sha3_512_5938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5938_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5938 = { .name = "ecdsa_secp256k1_sha3_512_5938", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5938_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5938_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5938_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 375 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5939 for ECDSA, tcId is 376 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5939_pubkey[] = { 0xb7, 0xb9, 0x15, 0x38, 0x78, 0x62, 0x72, 0xe7, 0x0a, 0x60, 0x3c, 0xfc, 0x80, 0xc5, 0x2f, 0x87, 0xf0, 0x57, 0xa3, 0x69, 0x14, 0x98, 0x48, 0xdb, 0xc8, 0x65, 0xa8, 0xd2, 0xf4, 0x45, 0xec, 0x26, 0xbd, 0x90, 0xba, 0x88, 0x44, 0xf5, 0x8d, 0xb6, 0x74, 0x4b, 0x5f, 0x31, 0xa4, 0x70, 0xe5, 0x9e, 0xbf, 0xee, 0x18, 0x91, 0xbe, 0x36, 0xee, 0x65, 0xb1, 0x8b, 0xa1, 0x72, 0xe5, 0xea, 0xf9, 0x43, }; static const unsigned char ecdsa_secp256k1_sha3_512_5939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5939_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5939 = { .name = "ecdsa_secp256k1_sha3_512_5939", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5939_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5939_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5939_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 376 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5940 for ECDSA, tcId is 377 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5940_pubkey[] = { 0x9c, 0x0c, 0x46, 0x26, 0x58, 0xf6, 0x49, 0x32, 0x95, 0x77, 0x5e, 0xd9, 0x93, 0x48, 0xdb, 0x58, 0x95, 0xae, 0x84, 0x71, 0xc8, 0x19, 0xa1, 0xed, 0x9a, 0xe1, 0xb5, 0x18, 0x03, 0x97, 0xf0, 0x8f, 0xf3, 0x86, 0xd1, 0x4d, 0x6e, 0x56, 0x75, 0x8d, 0x1d, 0xaf, 0xa5, 0x07, 0x55, 0xaf, 0x4f, 0xe0, 0x79, 0x23, 0x3c, 0x13, 0x94, 0x36, 0xab, 0xf6, 0x1a, 0x92, 0x08, 0xf8, 0xb7, 0xf8, 0x93, 0xaf, }; static const unsigned char ecdsa_secp256k1_sha3_512_5940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5940_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5940 = { .name = "ecdsa_secp256k1_sha3_512_5940", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5940_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5940_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5940_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 377 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5941 for ECDSA, tcId is 378 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5941_pubkey[] = { 0x89, 0xe6, 0x31, 0x27, 0xc9, 0x7d, 0xd4, 0xcb, 0x19, 0xfb, 0x80, 0x2f, 0x22, 0x22, 0x9d, 0xec, 0xd0, 0xd8, 0x52, 0x63, 0x9b, 0x3d, 0x98, 0x2b, 0x25, 0x89, 0x81, 0x7a, 0x7e, 0x52, 0x00, 0x49, 0xe1, 0xfd, 0x70, 0xb1, 0x5e, 0x5e, 0x5d, 0x3e, 0xa4, 0xab, 0x74, 0x89, 0x03, 0xca, 0x89, 0x1a, 0xb3, 0x96, 0x4f, 0xf4, 0xd7, 0xbf, 0x48, 0xb1, 0x7c, 0x60, 0x07, 0x95, 0x7a, 0x5e, 0x20, 0x21, }; static const unsigned char ecdsa_secp256k1_sha3_512_5941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5941_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5941 = { .name = "ecdsa_secp256k1_sha3_512_5941", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5941_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5941_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5941_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 378 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5942 for ECDSA, tcId is 379 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5942_pubkey[] = { 0xeb, 0x89, 0xc8, 0x38, 0x54, 0x25, 0x37, 0xc3, 0xf5, 0x30, 0xb6, 0xe8, 0xbc, 0x62, 0xd1, 0xe6, 0x28, 0x4e, 0xd4, 0xe9, 0xb8, 0xc6, 0xae, 0xa9, 0x6e, 0x82, 0x97, 0x0d, 0x8a, 0xbd, 0xef, 0xff, 0x58, 0xca, 0xe0, 0xdf, 0x61, 0x87, 0x4d, 0x30, 0xc2, 0xaf, 0xa0, 0x5c, 0x8a, 0x70, 0x38, 0x00, 0xac, 0x80, 0x56, 0x43, 0x97, 0x68, 0x8b, 0x19, 0xa5, 0x14, 0x9f, 0x65, 0x05, 0x4b, 0x13, 0x8f, }; static const unsigned char ecdsa_secp256k1_sha3_512_5942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5942_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5942 = { .name = "ecdsa_secp256k1_sha3_512_5942", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5942_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5942_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5942_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 379 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5943 for ECDSA, tcId is 380 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5943_pubkey[] = { 0x72, 0xbd, 0xb4, 0x2d, 0x37, 0x9c, 0xd8, 0x07, 0xe8, 0xdc, 0xdd, 0x59, 0x7e, 0x5c, 0x68, 0xc4, 0x64, 0xec, 0xb4, 0x21, 0x1e, 0xe8, 0x85, 0xf7, 0x21, 0x0e, 0x55, 0xff, 0x52, 0xe9, 0x36, 0x88, 0x34, 0x23, 0x1f, 0x39, 0x21, 0x83, 0x9c, 0x8a, 0x3a, 0x2c, 0xc7, 0xff, 0x59, 0x64, 0xf1, 0xf7, 0x9c, 0x77, 0xf2, 0xc8, 0x81, 0x3e, 0x26, 0x59, 0x68, 0x4e, 0xe1, 0xd8, 0xbf, 0x71, 0x25, 0xc0, }; static const unsigned char ecdsa_secp256k1_sha3_512_5943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5943_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5943 = { .name = "ecdsa_secp256k1_sha3_512_5943", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5943_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5943_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5943_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 380 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5944 for ECDSA, tcId is 381 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5944_pubkey[] = { 0x57, 0xcf, 0x2c, 0x69, 0x87, 0x6d, 0x8a, 0x98, 0x22, 0xa6, 0xb7, 0x96, 0x49, 0x2a, 0xa8, 0x89, 0xc3, 0x9f, 0xa1, 0x37, 0x1f, 0xc7, 0x30, 0xc5, 0xa1, 0x55, 0x32, 0xac, 0x4a, 0xa1, 0x97, 0xb3, 0x8c, 0x93, 0x6d, 0x00, 0x41, 0x82, 0x1e, 0x1c, 0xa8, 0x1d, 0xf3, 0xf1, 0xfd, 0x0a, 0x49, 0x5c, 0x0c, 0x89, 0x74, 0xa8, 0x1f, 0xb4, 0x1c, 0xec, 0x46, 0x22, 0xcc, 0x1b, 0xfc, 0xcc, 0xf3, 0xd2, }; static const unsigned char ecdsa_secp256k1_sha3_512_5944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5944_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x14, 0x10, 0x89, 0x77, 0x03, 0xe7, 0x66, 0x3f, 0x19, 0xfe, 0x12, 0x89, 0x49, 0x7b, 0xee, 0x4f, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5944 = { .name = "ecdsa_secp256k1_sha3_512_5944", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5944_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5944_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5944_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 381 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5945 for ECDSA, tcId is 382 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5945_pubkey[] = { 0x0a, 0x74, 0x13, 0x80, 0x0a, 0x65, 0x71, 0xb0, 0x31, 0x00, 0xd9, 0xf3, 0x27, 0xc6, 0x8a, 0x89, 0xaa, 0xae, 0xf2, 0xe7, 0xff, 0x92, 0x2b, 0x0a, 0x0a, 0xa9, 0x5e, 0x39, 0xa0, 0x82, 0xc4, 0xfb, 0x37, 0x46, 0x6e, 0xb0, 0x4e, 0xd3, 0x81, 0x87, 0xbe, 0xdf, 0xd7, 0x67, 0xde, 0x7c, 0x45, 0x41, 0x65, 0x77, 0xbc, 0xa4, 0xbd, 0x96, 0x1d, 0xe3, 0xd8, 0x89, 0x0b, 0xea, 0x34, 0x09, 0xf6, 0x97, }; static const unsigned char ecdsa_secp256k1_sha3_512_5945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5945_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5945 = { .name = "ecdsa_secp256k1_sha3_512_5945", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5945_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5945_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5945_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 382 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5946 for ECDSA, tcId is 383 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5946_pubkey[] = { 0x7e, 0x27, 0x89, 0x3a, 0xdb, 0x37, 0x9d, 0x40, 0xa6, 0x16, 0x68, 0xad, 0x66, 0x0e, 0xdc, 0x25, 0x60, 0x04, 0xbb, 0xfc, 0x12, 0xd5, 0x58, 0x89, 0xfb, 0xd5, 0x12, 0x1e, 0xac, 0x56, 0xa0, 0x6e, 0x9a, 0x36, 0xf4, 0x25, 0x98, 0xdb, 0x7d, 0x64, 0x38, 0x42, 0xa7, 0x25, 0x62, 0xfe, 0x6d, 0x86, 0xdd, 0xc3, 0x86, 0x23, 0x83, 0x0e, 0x42, 0xa1, 0x7d, 0x44, 0x4d, 0x44, 0xa2, 0x47, 0x2b, 0x5f, }; static const unsigned char ecdsa_secp256k1_sha3_512_5946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5946_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5946 = { .name = "ecdsa_secp256k1_sha3_512_5946", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5946_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5946_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5946_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 383 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5947 for ECDSA, tcId is 384 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5947_pubkey[] = { 0x3b, 0x65, 0xf4, 0x0a, 0x24, 0x8d, 0x91, 0xa7, 0xe6, 0x37, 0x7b, 0xfb, 0x59, 0x89, 0xf4, 0x7d, 0x56, 0x2b, 0xda, 0xaf, 0x36, 0x4e, 0xa9, 0x82, 0x83, 0x0f, 0x61, 0xb7, 0x19, 0x57, 0xbd, 0xa5, 0xe4, 0x21, 0x08, 0xc5, 0xd3, 0x88, 0xf2, 0xe1, 0x73, 0x21, 0x0f, 0x86, 0x76, 0x33, 0x16, 0x7e, 0xb0, 0xf5, 0xcb, 0xc6, 0x93, 0xaa, 0x7b, 0xb9, 0x22, 0x3a, 0xe8, 0xf1, 0xaa, 0xa2, 0x69, 0x83, }; static const unsigned char ecdsa_secp256k1_sha3_512_5947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5947_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbc, 0x0f, 0x3a, 0x27, 0x08, 0xcb, 0xe1, 0x43, 0x80, 0x83, 0x45, 0x11, 0x63, 0xbe, 0x66, 0xf8, 0x0a, 0x81, 0x0a, 0x90, 0x0c, 0xd1, 0x35, 0xdd, 0xc0, 0x76, 0xdb, 0x74, 0x51, 0x91, 0x7c, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5947 = { .name = "ecdsa_secp256k1_sha3_512_5947", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5947_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5947_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5947_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5948 for ECDSA, tcId is 385 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5948_pubkey[] = { 0x05, 0x85, 0x24, 0x9f, 0xf4, 0xa3, 0xac, 0xbb, 0x99, 0x6e, 0xed, 0x6f, 0x17, 0xa7, 0x0a, 0x7b, 0x83, 0xa6, 0xdf, 0xe9, 0x6e, 0x80, 0xed, 0xc0, 0xcd, 0x4c, 0xc7, 0x59, 0x4e, 0x80, 0x6d, 0x59, 0xb7, 0x57, 0x65, 0x08, 0xdb, 0xb4, 0xea, 0xb1, 0x23, 0xe0, 0xed, 0x68, 0x8a, 0x9e, 0x66, 0x25, 0xd0, 0x56, 0xc7, 0xad, 0x81, 0x34, 0x77, 0x62, 0x52, 0x72, 0x8d, 0xca, 0xe3, 0x75, 0xcd, 0x84, }; static const unsigned char ecdsa_secp256k1_sha3_512_5948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5948_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x62, 0xbf, 0x43, 0xba, 0x34, 0xe7, 0x3c, 0xc3, 0xc8, 0x92, 0x2f, 0x26, 0xd6, 0x4e, 0x3b, 0xf8, 0x82, 0xf1, 0x2d, 0xcc, 0x06, 0xe0, 0xb3, 0x0c, 0x83, 0x63, 0xef, 0xa6, 0xba, 0xdc, 0xff, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5948 = { .name = "ecdsa_secp256k1_sha3_512_5948", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5948_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5948_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5948_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5949 for ECDSA, tcId is 386 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5949_pubkey[] = { 0xdd, 0x6b, 0xa6, 0x68, 0x55, 0xe3, 0x7b, 0x7f, 0xc9, 0x1a, 0xd1, 0x60, 0xbc, 0x4a, 0x7c, 0x50, 0x89, 0xf8, 0x63, 0x3a, 0xc0, 0xe1, 0x22, 0x98, 0xa6, 0xab, 0xa3, 0x4d, 0xb6, 0x80, 0xe1, 0x6b, 0x79, 0x8f, 0x55, 0x73, 0xbd, 0x93, 0x75, 0x6e, 0x39, 0xdd, 0x63, 0x5d, 0x9c, 0x5f, 0x8e, 0x87, 0x63, 0x64, 0x44, 0x5a, 0x1c, 0x9a, 0x43, 0xf2, 0x91, 0x8b, 0xeb, 0x91, 0x37, 0xba, 0x3b, 0x92, }; static const unsigned char ecdsa_secp256k1_sha3_512_5949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5949_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x39, 0x42, 0x26, 0x23, 0xa4, 0x38, 0x60, 0x33, 0xcc, 0xfa, 0x96, 0xad, 0x4f, 0x82, 0x28, 0xfb, 0x88, 0xac, 0x93, 0x64, 0xae, 0x8b, 0x3c, 0xd0, 0x71, 0x5e, 0xe1, 0x88, 0xc4, 0x67, 0x57, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5949 = { .name = "ecdsa_secp256k1_sha3_512_5949", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5949_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5949_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5949_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5950 for ECDSA, tcId is 387 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5950_pubkey[] = { 0xce, 0x2d, 0x8a, 0x84, 0x32, 0x67, 0x05, 0x15, 0xb2, 0x13, 0x36, 0x89, 0xd9, 0x6e, 0x73, 0x69, 0xde, 0xcf, 0xe9, 0x94, 0xc8, 0x7e, 0x39, 0xa2, 0x8e, 0x56, 0x36, 0x89, 0x7a, 0x36, 0x0f, 0x2a, 0xba, 0x43, 0xf7, 0xfa, 0x77, 0xfe, 0xba, 0x76, 0xde, 0x96, 0x34, 0xb6, 0xad, 0xfd, 0xe4, 0x7f, 0xb1, 0x6f, 0x70, 0xb7, 0x90, 0xbc, 0x9a, 0x1a, 0x50, 0x65, 0xef, 0x16, 0xf6, 0xfd, 0x24, 0x67, }; static const unsigned char ecdsa_secp256k1_sha3_512_5950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5950_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x62, 0x33, 0xbc, 0xf8, 0x55, 0x8b, 0xae, 0x02, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x01, 0xab, 0x62, 0x0e, 0xfc, 0xbd, 0x7b, 0x40, 0xd8, 0xdd, 0x1f, 0x72, 0x88, 0xff, 0x5d, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5950 = { .name = "ecdsa_secp256k1_sha3_512_5950", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5950_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5950_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5950_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5951 for ECDSA, tcId is 388 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5951_pubkey[] = { 0x6c, 0xef, 0xd8, 0x9c, 0x94, 0x90, 0x69, 0xc4, 0xef, 0x5f, 0xef, 0xd2, 0x05, 0x12, 0xa6, 0xfd, 0xe9, 0x2e, 0x08, 0xa2, 0xdf, 0xc4, 0x08, 0x69, 0x4a, 0x05, 0xd2, 0xa9, 0x74, 0xbd, 0x02, 0x84, 0xae, 0x47, 0x69, 0x49, 0x6c, 0x21, 0x9a, 0x59, 0x38, 0x3a, 0x7f, 0xd6, 0xdc, 0x1e, 0x06, 0x90, 0xc2, 0x55, 0x06, 0x26, 0x4b, 0x00, 0x88, 0xe0, 0x36, 0x28, 0x97, 0xe0, 0xda, 0x59, 0x10, 0x3a, }; static const unsigned char ecdsa_secp256k1_sha3_512_5951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5951_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3b, 0xcf, 0x85, 0x58, 0xba, 0xe0, 0x2c, 0xbd, 0x25, 0x18, 0xae, 0x59, 0xc5, 0xc3, 0x57, 0xe7, 0x17, 0x0b, 0x54, 0x26, 0x2d, 0x04, 0xbe, 0xe3, 0xa9, 0xfc, 0xee, 0x6e, 0x38, 0xe8, 0x4e, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5951 = { .name = "ecdsa_secp256k1_sha3_512_5951", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5951_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5951_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5951_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5952 for ECDSA, tcId is 389 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5952_pubkey[] = { 0x33, 0xa6, 0xee, 0x1a, 0x12, 0x1c, 0xca, 0xb2, 0x5b, 0x00, 0xfb, 0xec, 0xc8, 0x60, 0xbe, 0x15, 0x64, 0x1a, 0x5b, 0xaa, 0x4b, 0x4b, 0xeb, 0x35, 0xd9, 0xa6, 0xda, 0xd3, 0x5a, 0x16, 0x91, 0xfa, 0x36, 0xba, 0x23, 0x23, 0xe4, 0x63, 0xd6, 0x84, 0x21, 0x9a, 0x1b, 0xd1, 0x5c, 0x5e, 0xb3, 0x04, 0x87, 0x8d, 0x82, 0xd1, 0xda, 0x11, 0x3c, 0x52, 0xc7, 0x66, 0x3c, 0xfa, 0xe3, 0xf5, 0x75, 0x1a, }; static const unsigned char ecdsa_secp256k1_sha3_512_5952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5952_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x77, 0x9f, 0x0a, 0xb1, 0x75, 0xc0, 0x59, 0x7a, 0x4a, 0x31, 0x5c, 0xb3, 0x8b, 0x86, 0xaf, 0xce, 0x2e, 0x16, 0xa8, 0x4c, 0x5a, 0x09, 0x7d, 0xc7, 0x53, 0xf9, 0xdc, 0xdc, 0x71, 0xd0, 0x9c, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5952 = { .name = "ecdsa_secp256k1_sha3_512_5952", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5952_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5952_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5952_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5953 for ECDSA, tcId is 390 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5953_pubkey[] = { 0xa2, 0xd2, 0xe9, 0x81, 0x0b, 0xf8, 0xf9, 0x88, 0xaf, 0x6c, 0xdf, 0x11, 0x1f, 0x2f, 0x15, 0x06, 0x29, 0x00, 0xd2, 0xce, 0x06, 0xbb, 0x72, 0xc9, 0xc1, 0xdd, 0x1c, 0xa9, 0x0d, 0x69, 0xc5, 0x8c, 0x36, 0xc2, 0x4f, 0xbc, 0x13, 0x23, 0x35, 0x9f, 0xfc, 0x3d, 0x7c, 0xfd, 0xd6, 0x64, 0x51, 0xdd, 0x3e, 0x95, 0x0a, 0xd9, 0x7c, 0xc7, 0xf1, 0xdd, 0xed, 0xf3, 0x0e, 0x3a, 0xa4, 0x42, 0x5c, 0x0f, }; static const unsigned char ecdsa_secp256k1_sha3_512_5953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5953_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x55, 0x8b, 0xae, 0x02, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0x68, 0x0f, 0x5a, 0x3e, 0xe9, 0x80, 0x45, 0x97, 0x7a, 0x02, 0x1c, 0x90, 0x91, 0x92, 0x0d, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5953 = { .name = "ecdsa_secp256k1_sha3_512_5953", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5953_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5953_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5953_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5954 for ECDSA, tcId is 391 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5954_pubkey[] = { 0xe9, 0x3d, 0x65, 0x8e, 0xc3, 0xa9, 0x41, 0x8d, 0xae, 0xd0, 0xee, 0x21, 0x9d, 0x18, 0x18, 0x0d, 0x06, 0x84, 0xfd, 0x67, 0x6e, 0xd2, 0x4f, 0x69, 0x3b, 0xcd, 0xeb, 0x7e, 0x35, 0x8e, 0xc4, 0x4d, 0x69, 0x14, 0x85, 0x0b, 0xd2, 0x27, 0xee, 0xb2, 0x2b, 0xf2, 0x2a, 0x02, 0xc3, 0xbf, 0xd6, 0x28, 0xc7, 0x69, 0xb0, 0xf0, 0xe5, 0x00, 0x40, 0xb5, 0x0f, 0xd3, 0xaa, 0xa3, 0x24, 0xa1, 0xd4, 0xce, }; static const unsigned char ecdsa_secp256k1_sha3_512_5954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5954_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x19, 0xff, 0xa3, 0x2f, 0xd5, 0x1f, 0xb7, 0x96, 0xc6, 0x15, 0x41, 0x67, 0x34, 0x7b, 0x77, 0x73, 0xd9, 0x05, 0x8d, 0xdb, 0x14, 0x8f, 0xda, 0xef, 0x8c, 0x28, 0x7f, 0xef, 0x84, 0x8f, 0x2f, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5954 = { .name = "ecdsa_secp256k1_sha3_512_5954", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5954_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5954_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5954_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5955 for ECDSA, tcId is 392 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5955_pubkey[] = { 0xeb, 0xe7, 0xe1, 0x27, 0x86, 0x36, 0x29, 0x0c, 0xb0, 0x9c, 0x7d, 0x45, 0x54, 0xc7, 0x1c, 0x11, 0x73, 0x37, 0xd2, 0xed, 0x40, 0xc7, 0x77, 0x89, 0x43, 0x3c, 0x27, 0xea, 0xf4, 0xd4, 0xbc, 0x32, 0x73, 0x02, 0x57, 0x52, 0xca, 0x49, 0x22, 0x38, 0xb6, 0x22, 0x88, 0x4c, 0x9f, 0xe2, 0x87, 0xce, 0x37, 0x23, 0xae, 0x04, 0xeb, 0xfa, 0xa5, 0x35, 0x05, 0xe1, 0x4b, 0x8e, 0x86, 0xc5, 0xdb, 0xac, }; static const unsigned char ecdsa_secp256k1_sha3_512_5955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5955_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3d, 0x18, 0x09, 0x92, 0xc1, 0xa3, 0x8d, 0xdf, 0xd4, 0x9e, 0xcf, 0x3d, 0x18, 0x13, 0xb0, 0xb1, 0x95, 0xc6, 0x9b, 0x06, 0xbb, 0xd4, 0x1c, 0xf1, 0x01, 0xfe, 0x40, 0xda, 0xc9, 0xc9, 0xe6, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5955 = { .name = "ecdsa_secp256k1_sha3_512_5955", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5955_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5955_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5955_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5956 for ECDSA, tcId is 393 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5956_pubkey[] = { 0xd1, 0x15, 0x05, 0x30, 0xba, 0xc2, 0x1e, 0x35, 0x52, 0x4f, 0xf9, 0xe1, 0xb7, 0xd0, 0x07, 0x31, 0x40, 0x10, 0x72, 0xd5, 0x91, 0xe6, 0x96, 0xa1, 0x7b, 0xb3, 0x88, 0xb4, 0xd7, 0xe5, 0xca, 0x19, 0xbc, 0xc6, 0x6b, 0xce, 0x3f, 0xc1, 0x76, 0xd2, 0xda, 0x4a, 0x2c, 0xb9, 0x54, 0xc8, 0x36, 0xbf, 0x9b, 0x81, 0xf1, 0x91, 0x32, 0x30, 0xba, 0x99, 0xea, 0x6e, 0x50, 0x54, 0x07, 0x3d, 0xdf, 0x6f, }; static const unsigned char ecdsa_secp256k1_sha3_512_5956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5956_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd3, 0x98, 0x13, 0xc8, 0xe5, 0x85, 0x36, 0x46, 0x0c, 0xbf, 0xac, 0x4b, 0x0f, 0xa0, 0x28, 0xe6, 0x0d, 0x5d, 0x45, 0xc1, 0x36, 0x12, 0xd7, 0x9f, 0x99, 0x64, 0xa5, 0x8c, 0xb3, 0x3b, 0xe1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5956 = { .name = "ecdsa_secp256k1_sha3_512_5956", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5956_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5956_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5956_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5957 for ECDSA, tcId is 394 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5957_pubkey[] = { 0x52, 0x33, 0xa1, 0xde, 0xdd, 0xbb, 0xdc, 0x29, 0xc0, 0x99, 0x4f, 0xd4, 0x3c, 0xed, 0xa3, 0xb0, 0x20, 0xb3, 0x5c, 0x46, 0x5e, 0x02, 0xd1, 0xc1, 0x2f, 0xd2, 0x90, 0x17, 0x30, 0x6b, 0xe8, 0x7b, 0xc3, 0x1d, 0xb5, 0xc0, 0xe3, 0x2f, 0xbd, 0x3f, 0x04, 0x56, 0x64, 0xac, 0xf0, 0x88, 0x01, 0x4a, 0x11, 0x16, 0xeb, 0x33, 0x79, 0xf2, 0x48, 0x86, 0xb3, 0xa1, 0x3f, 0x00, 0x96, 0x28, 0xdf, 0x42, }; static const unsigned char ecdsa_secp256k1_sha3_512_5957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5957_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe9, 0xfc, 0xbc, 0xae, 0x7e, 0x1d, 0x74, 0x4c, 0xf6, 0xbf, 0x4c, 0xa0, 0xd8, 0x57, 0x33, 0x12, 0xa1, 0x31, 0xfc, 0xb3, 0xb9, 0x0e, 0xb2, 0x6b, 0xed, 0x6c, 0x7f, 0x6b, 0xa9, 0x08, 0xab, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5957 = { .name = "ecdsa_secp256k1_sha3_512_5957", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5957_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5957_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5957_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5958 for ECDSA, tcId is 395 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5958_pubkey[] = { 0xa1, 0x60, 0xab, 0x41, 0xfd, 0x3f, 0xe7, 0xd0, 0x88, 0xee, 0x87, 0x4c, 0x8b, 0x82, 0xd8, 0xae, 0x97, 0xc8, 0xed, 0x99, 0x46, 0x75, 0x79, 0xd0, 0x1b, 0x97, 0xba, 0xde, 0x23, 0xec, 0x46, 0xa6, 0xae, 0x70, 0x9a, 0x08, 0x8b, 0xcb, 0xc7, 0x23, 0x42, 0x99, 0x6e, 0xfe, 0xed, 0x0e, 0x91, 0x3f, 0x8a, 0x5d, 0xd8, 0xc8, 0x87, 0x8b, 0x1c, 0xae, 0xc5, 0xc9, 0xe0, 0x57, 0xe3, 0x5d, 0x5c, 0xfe, }; static const unsigned char ecdsa_secp256k1_sha3_512_5958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5958_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0xf8, 0x62, 0xec, 0x7b, 0x9a, 0x0f, 0x5e, 0x3f, 0xbe, 0x5d, 0x77, 0x4e, 0x20, 0xcc, 0x83, 0x58, 0x16, 0xe9, 0x2b, 0x51, 0x3b, 0xb5, 0x2e, 0xff, 0xad, 0xc1, 0x8c, 0x3f, 0x52, 0x62, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5958 = { .name = "ecdsa_secp256k1_sha3_512_5958", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5958_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5958_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5958_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 395 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5959 for ECDSA, tcId is 396 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5959_pubkey[] = { 0x1d, 0x91, 0x5e, 0xcb, 0xbf, 0x4c, 0x25, 0xbb, 0xc0, 0xd2, 0x21, 0x6d, 0xb6, 0xd1, 0xa3, 0xda, 0x8f, 0x80, 0x05, 0x86, 0x53, 0xa2, 0x48, 0x85, 0x49, 0x4a, 0xff, 0x88, 0xfe, 0x15, 0x99, 0xfc, 0x88, 0x16, 0x89, 0x8d, 0x95, 0x8f, 0xa5, 0x43, 0x1b, 0xb5, 0x57, 0xd1, 0x7b, 0x6b, 0x1b, 0x52, 0x0c, 0x3f, 0xbd, 0xab, 0x6b, 0xc5, 0x98, 0x41, 0x09, 0xd1, 0x46, 0x8b, 0x6c, 0xc1, 0x41, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha3_512_5959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5959_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x43, 0xf0, 0xc5, 0xd8, 0xf7, 0x34, 0x1e, 0xbc, 0x7f, 0x7c, 0xba, 0xee, 0x9c, 0x41, 0x99, 0x06, 0xb0, 0x2d, 0xd2, 0x56, 0xa2, 0x77, 0x6a, 0x5d, 0xff, 0x5b, 0x83, 0x18, 0x7e, 0xa4, 0xc5, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5959 = { .name = "ecdsa_secp256k1_sha3_512_5959", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5959_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5959_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5959_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 396 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5960 for ECDSA, tcId is 397 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5960_pubkey[] = { 0x95, 0x98, 0x10, 0x1f, 0x87, 0x04, 0xe2, 0xdd, 0x0e, 0x88, 0x9e, 0xca, 0xb9, 0xff, 0xe7, 0xa5, 0xe7, 0x53, 0x6f, 0x3e, 0xe6, 0x0d, 0x5f, 0x05, 0x11, 0x1c, 0xe6, 0xf5, 0xa4, 0xca, 0x04, 0x05, 0xc4, 0xc3, 0x9b, 0xbc, 0xa3, 0x4c, 0x6a, 0x68, 0x7c, 0x46, 0xa6, 0xdd, 0xff, 0x65, 0xe8, 0x1d, 0x0a, 0x9a, 0x78, 0xa8, 0xc1, 0x04, 0xf9, 0x1e, 0xa6, 0x63, 0x6a, 0x7c, 0x8e, 0xa6, 0x81, 0x9a, }; static const unsigned char ecdsa_secp256k1_sha3_512_5960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5960_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x65, 0xe9, 0x28, 0xc5, 0x72, 0xce, 0x2e, 0x1a, 0xbf, 0x3b, 0x18, 0x65, 0xea, 0x62, 0x65, 0x8a, 0x08, 0x44, 0xbb, 0x81, 0xf3, 0xb3, 0x1f, 0x8c, 0xff, 0x09, 0x44, 0xa4, 0xbd, 0xf7, 0x27, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5960 = { .name = "ecdsa_secp256k1_sha3_512_5960", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5960_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5960_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5960_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 397 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5961 for ECDSA, tcId is 398 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5961_pubkey[] = { 0x59, 0xee, 0x9e, 0x0a, 0x00, 0x0b, 0xae, 0xfb, 0xe3, 0xfb, 0x59, 0xea, 0x61, 0xd7, 0x37, 0x0d, 0xf7, 0x7c, 0x58, 0xde, 0xe9, 0xd8, 0x29, 0xb6, 0xc5, 0xe8, 0x9f, 0xaa, 0xe0, 0x19, 0x95, 0x1b, 0xbf, 0x61, 0xa7, 0x56, 0xc7, 0xa3, 0x0d, 0x04, 0x9b, 0xd3, 0x70, 0x10, 0xb7, 0xb1, 0xc2, 0x56, 0x70, 0xd4, 0xdd, 0xb6, 0xce, 0xb8, 0xf1, 0xd7, 0xc7, 0xd4, 0x49, 0xe3, 0x93, 0x46, 0x59, 0x59, }; static const unsigned char ecdsa_secp256k1_sha3_512_5961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5961_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x1c, 0xa1, 0x13, 0x11, 0xd2, 0x1c, 0x30, 0x19, 0xe6, 0x7d, 0x4b, 0x56, 0xa7, 0xc1, 0x14, 0x7d, 0xc4, 0x56, 0x49, 0xb2, 0x57, 0x45, 0x9e, 0x68, 0x38, 0xaf, 0x70, 0xc4, 0x62, 0x33, 0xab, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5961 = { .name = "ecdsa_secp256k1_sha3_512_5961", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5961_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5961_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5961_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 398 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5962 for ECDSA, tcId is 399 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5962_pubkey[] = { 0xd1, 0xf1, 0xdd, 0xd1, 0x2c, 0x71, 0x0d, 0x7c, 0x35, 0x61, 0x7a, 0x0e, 0xd2, 0xfc, 0x35, 0xf4, 0xd0, 0x98, 0x88, 0xf1, 0x70, 0x34, 0xa4, 0x7f, 0xe0, 0xa7, 0x84, 0x15, 0x85, 0x8e, 0x66, 0xa2, 0x5f, 0xcd, 0xa6, 0xab, 0xed, 0xc3, 0xa5, 0x8f, 0xfc, 0x55, 0xbc, 0x5d, 0x9f, 0x32, 0x0c, 0x60, 0xeb, 0x6b, 0x4c, 0x9a, 0x22, 0x83, 0x3e, 0x13, 0x51, 0x1b, 0x2e, 0x14, 0x0e, 0xf1, 0x40, 0x57, }; static const unsigned char ecdsa_secp256k1_sha3_512_5962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5962_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5962 = { .name = "ecdsa_secp256k1_sha3_512_5962", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5962_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5962_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5962_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5963 for ECDSA, tcId is 400 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5963_pubkey[] = { 0x3c, 0x9a, 0x50, 0x07, 0xf1, 0x9e, 0xc6, 0x24, 0xa7, 0x3c, 0xe7, 0x5f, 0xb6, 0x1a, 0xb3, 0xe1, 0x67, 0x36, 0xd5, 0x19, 0xee, 0x36, 0x38, 0x14, 0x97, 0xf2, 0x4b, 0xfd, 0x3b, 0xb6, 0x91, 0xb5, 0x34, 0xb4, 0x2b, 0x01, 0x34, 0xe1, 0x72, 0x22, 0xef, 0xf0, 0x5f, 0x3b, 0x54, 0x77, 0x32, 0x3a, 0x32, 0x24, 0x31, 0x0b, 0x10, 0x8c, 0x4a, 0x8f, 0xc9, 0xb1, 0x78, 0x33, 0x12, 0x8c, 0xb8, 0x22, }; static const unsigned char ecdsa_secp256k1_sha3_512_5963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5963_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5963 = { .name = "ecdsa_secp256k1_sha3_512_5963", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5963_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5963_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5963_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5964 for ECDSA, tcId is 401 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5964_pubkey[] = { 0xf7, 0xa2, 0xf1, 0x02, 0x72, 0x41, 0xc8, 0x51, 0x4b, 0x2b, 0xe7, 0x09, 0x7a, 0x3e, 0xb5, 0xb2, 0x08, 0xe8, 0xff, 0xd0, 0x9a, 0x70, 0x0e, 0x5d, 0x72, 0xfc, 0x3a, 0xf6, 0x96, 0x4b, 0x3b, 0xbf, 0x08, 0x31, 0x8a, 0x90, 0x43, 0xd9, 0x59, 0xa8, 0xfc, 0x8b, 0xaf, 0xa5, 0xd4, 0x03, 0xd3, 0x49, 0x0e, 0x4e, 0x45, 0xd9, 0xb1, 0xe1, 0x56, 0xff, 0x3e, 0x2a, 0xee, 0x38, 0xec, 0xe6, 0x6e, 0x88, }; static const unsigned char ecdsa_secp256k1_sha3_512_5964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5964_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5964 = { .name = "ecdsa_secp256k1_sha3_512_5964", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5964_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5964_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5964_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5965 for ECDSA, tcId is 402 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5965_pubkey[] = { 0xe5, 0x8d, 0x8a, 0xba, 0x78, 0x7d, 0x54, 0xff, 0xcb, 0xe5, 0x30, 0xc5, 0xba, 0x59, 0x55, 0xf5, 0x4e, 0x28, 0x6d, 0x31, 0xf1, 0xa7, 0x55, 0x8d, 0xce, 0x89, 0x24, 0x00, 0x0d, 0x7a, 0x1b, 0x96, 0xf5, 0xac, 0xbd, 0xf4, 0x79, 0xb3, 0x13, 0x38, 0x03, 0x25, 0xed, 0xbb, 0xad, 0xbc, 0x62, 0x87, 0xe0, 0x8e, 0x98, 0xcc, 0x86, 0xe2, 0xba, 0x83, 0x39, 0x87, 0x37, 0x24, 0x43, 0x7c, 0xe8, 0x13, }; static const unsigned char ecdsa_secp256k1_sha3_512_5965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5965_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5965 = { .name = "ecdsa_secp256k1_sha3_512_5965", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5965_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5965_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5965_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5966 for ECDSA, tcId is 403 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5966_pubkey[] = { 0x16, 0x7d, 0xf0, 0x09, 0xce, 0xc2, 0xef, 0xd4, 0x49, 0x91, 0xa5, 0x23, 0xdc, 0x2f, 0xd4, 0xa1, 0x3e, 0x4d, 0xe3, 0xe7, 0x63, 0x90, 0x38, 0x2d, 0x4c, 0x10, 0x88, 0x59, 0x3f, 0x33, 0xda, 0x65, 0x83, 0x8f, 0x62, 0x13, 0x8f, 0x2e, 0xd7, 0x3f, 0xbc, 0x7b, 0xe3, 0x16, 0xba, 0x5b, 0x6a, 0x79, 0xa4, 0x76, 0x8f, 0xd1, 0xf4, 0xea, 0x07, 0xdf, 0x9e, 0xb0, 0xee, 0xee, 0xf9, 0x88, 0xab, 0x73, }; static const unsigned char ecdsa_secp256k1_sha3_512_5966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5966_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5966 = { .name = "ecdsa_secp256k1_sha3_512_5966", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5966_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5966_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5966_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5967 for ECDSA, tcId is 404 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5967_pubkey[] = { 0x01, 0xa3, 0xa8, 0xdf, 0x8a, 0xee, 0x27, 0x8a, 0xa3, 0x06, 0x84, 0x4d, 0x60, 0xd9, 0xc5, 0x11, 0x3e, 0x59, 0x6d, 0x66, 0xcc, 0x92, 0xa3, 0x56, 0x6a, 0xb0, 0x79, 0x7c, 0xd0, 0x16, 0x38, 0x25, 0x00, 0x62, 0x49, 0x45, 0x73, 0xdd, 0xc9, 0xa2, 0x17, 0x06, 0x03, 0x0f, 0xd7, 0x95, 0x70, 0x8b, 0x3f, 0xe0, 0xd0, 0xf2, 0x24, 0xac, 0x01, 0xe5, 0x95, 0x7a, 0xd0, 0xd1, 0x1d, 0x6e, 0xe2, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_5967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5967_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5967 = { .name = "ecdsa_secp256k1_sha3_512_5967", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5967_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5967_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5967_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5968 for ECDSA, tcId is 405 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5968_pubkey[] = { 0xd6, 0xd0, 0xf4, 0x5d, 0xbf, 0xa1, 0x2a, 0xb4, 0xea, 0x5b, 0x29, 0xa8, 0x48, 0xc7, 0x19, 0x23, 0xd1, 0xec, 0xb5, 0x7b, 0x14, 0x8e, 0xc1, 0xc9, 0x69, 0xb4, 0x36, 0x62, 0xa1, 0x8d, 0x00, 0xf9, 0x88, 0xc2, 0x72, 0x8d, 0x21, 0x50, 0x8a, 0x42, 0x1a, 0xf6, 0xb6, 0x12, 0xa4, 0x43, 0x3c, 0x4b, 0x7c, 0x97, 0xf5, 0x5d, 0xc1, 0x2b, 0x24, 0xdb, 0x2c, 0xf6, 0xcb, 0x7f, 0xad, 0xa4, 0x3f, 0x15, }; static const unsigned char ecdsa_secp256k1_sha3_512_5968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5968_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5968 = { .name = "ecdsa_secp256k1_sha3_512_5968", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5968_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5968_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5968_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5969 for ECDSA, tcId is 406 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5969_pubkey[] = { 0x69, 0x21, 0x41, 0x98, 0x38, 0x8d, 0xa2, 0xa0, 0xd1, 0xa0, 0xc9, 0x46, 0x4c, 0x6e, 0xb3, 0x73, 0x1a, 0xd4, 0x4e, 0x27, 0x28, 0x7c, 0x17, 0xcd, 0x24, 0xbf, 0x73, 0xc3, 0xad, 0xa6, 0x7c, 0x2a, 0x48, 0xdf, 0xab, 0xbf, 0xa5, 0xd9, 0x12, 0x7f, 0xec, 0x9f, 0xb7, 0x98, 0x6f, 0xb3, 0x86, 0xcb, 0x5c, 0x7e, 0xbe, 0x3f, 0x60, 0x9d, 0x95, 0xe7, 0x1a, 0x70, 0xad, 0x7f, 0x83, 0x33, 0x45, 0x84, }; static const unsigned char ecdsa_secp256k1_sha3_512_5969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5969_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5969 = { .name = "ecdsa_secp256k1_sha3_512_5969", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5969_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5969_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5969_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5970 for ECDSA, tcId is 407 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5970_pubkey[] = { 0x84, 0x67, 0x2e, 0x2d, 0xe0, 0x42, 0xdf, 0x26, 0x68, 0x77, 0x57, 0x33, 0xc9, 0xb0, 0xcc, 0x71, 0x6e, 0xdd, 0x7d, 0x75, 0x34, 0xeb, 0x85, 0x92, 0x79, 0x31, 0x6e, 0xc5, 0x18, 0x6d, 0x77, 0x33, 0xba, 0xdc, 0x81, 0xe9, 0x33, 0xab, 0xf3, 0xd4, 0xce, 0x75, 0xfa, 0xe0, 0x0d, 0x1a, 0x47, 0xb3, 0x0d, 0x69, 0xde, 0x87, 0x54, 0x66, 0x6a, 0x29, 0x4b, 0x4c, 0x92, 0x58, 0x07, 0xdc, 0x3e, 0xcc, }; static const unsigned char ecdsa_secp256k1_sha3_512_5970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5970_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5970 = { .name = "ecdsa_secp256k1_sha3_512_5970", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5970_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5970_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5970_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5971 for ECDSA, tcId is 408 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5971_pubkey[] = { 0xc9, 0xbe, 0x9c, 0x19, 0x06, 0xa7, 0x37, 0x89, 0xa9, 0xaf, 0x1a, 0x67, 0x7f, 0x60, 0xdd, 0x41, 0x63, 0xc5, 0xfa, 0x06, 0xc7, 0xf4, 0x5c, 0x09, 0x93, 0xa6, 0x30, 0x51, 0xaa, 0x0c, 0x0f, 0x30, 0x32, 0x05, 0xde, 0xbe, 0xe5, 0xdc, 0x41, 0x3e, 0x4a, 0xbb, 0x3e, 0x1f, 0x6a, 0xf5, 0x50, 0xac, 0x64, 0xc4, 0x1b, 0x97, 0xe4, 0x25, 0xcc, 0x2e, 0xfa, 0x2a, 0x83, 0x3c, 0x2e, 0xe7, 0x22, 0x21, }; static const unsigned char ecdsa_secp256k1_sha3_512_5971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5971_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5971 = { .name = "ecdsa_secp256k1_sha3_512_5971", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5971_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5971_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5971_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 408 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5972 for ECDSA, tcId is 409 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5972_pubkey[] = { 0x02, 0x67, 0x94, 0xf7, 0xb5, 0xa8, 0x48, 0x49, 0xf4, 0x11, 0x41, 0xc6, 0x8d, 0x32, 0x48, 0xf9, 0xc9, 0x0c, 0x4d, 0xe7, 0xed, 0xad, 0x4f, 0xb8, 0xf4, 0x46, 0xe3, 0x07, 0x6f, 0xfb, 0x79, 0x62, 0xc9, 0x8e, 0x7b, 0x67, 0x19, 0x22, 0x96, 0xef, 0xe0, 0x43, 0x79, 0xc6, 0xa4, 0x02, 0x80, 0xb4, 0xf1, 0x13, 0x87, 0x69, 0x81, 0xb4, 0x4b, 0x73, 0xbb, 0x67, 0x6a, 0x88, 0x1f, 0x39, 0x87, 0x90, }; static const unsigned char ecdsa_secp256k1_sha3_512_5972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5972_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5972 = { .name = "ecdsa_secp256k1_sha3_512_5972", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5972_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5972_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5972_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 409 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5973 for ECDSA, tcId is 410 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5973_pubkey[] = { 0x18, 0xbd, 0x65, 0xdd, 0x46, 0xf8, 0xc0, 0xe3, 0x26, 0x55, 0x3b, 0xe5, 0x5e, 0x5e, 0x23, 0x4b, 0xb4, 0x31, 0x88, 0xac, 0x1f, 0xdd, 0xb3, 0x70, 0x03, 0xd1, 0x2f, 0x09, 0x1a, 0xa7, 0xa1, 0xb9, 0xe9, 0xc0, 0x0a, 0x03, 0xe4, 0xd5, 0x45, 0x2b, 0xa9, 0xa6, 0x07, 0x95, 0x1d, 0x4e, 0x4d, 0x8a, 0x73, 0x91, 0xa9, 0x52, 0x10, 0x9d, 0x96, 0x59, 0x92, 0x66, 0xd1, 0xe2, 0xd9, 0xab, 0x21, 0x99, }; static const unsigned char ecdsa_secp256k1_sha3_512_5973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5973_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5973 = { .name = "ecdsa_secp256k1_sha3_512_5973", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5973_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5973_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5973_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 410 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5974 for ECDSA, tcId is 411 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5974_pubkey[] = { 0xb8, 0x6a, 0xe7, 0x64, 0xf2, 0xf9, 0x5e, 0xb9, 0x33, 0x1a, 0xf5, 0x38, 0xfa, 0x51, 0x6f, 0xd7, 0x84, 0x35, 0x79, 0x4e, 0xbb, 0x24, 0x4c, 0x09, 0x0c, 0x6d, 0x6b, 0x28, 0x67, 0x50, 0xf9, 0x4c, 0xf3, 0x71, 0x2f, 0x76, 0x74, 0x95, 0xa1, 0x0f, 0x2e, 0x81, 0x35, 0x06, 0x62, 0xaf, 0x3b, 0xa0, 0x9d, 0xef, 0xa2, 0xe0, 0xe6, 0xf2, 0x7e, 0xce, 0xea, 0x35, 0x51, 0x30, 0x32, 0xda, 0xfb, 0x61, }; static const unsigned char ecdsa_secp256k1_sha3_512_5974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5974_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5974 = { .name = "ecdsa_secp256k1_sha3_512_5974", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5974_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5974_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5974_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 411 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5975 for ECDSA, tcId is 412 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5975_pubkey[] = { 0xe0, 0x45, 0xcc, 0x5a, 0x94, 0x14, 0xe4, 0x5e, 0x63, 0xf1, 0xb0, 0x86, 0x48, 0xe2, 0x0e, 0x22, 0x9a, 0x99, 0x50, 0xab, 0x56, 0xec, 0x30, 0x4e, 0x1b, 0x90, 0x79, 0x89, 0xe8, 0x1a, 0xf2, 0xbf, 0x21, 0xe5, 0x2d, 0xb4, 0x89, 0x85, 0x3d, 0xc4, 0x70, 0x71, 0x3a, 0xae, 0xcd, 0x6a, 0xad, 0xc7, 0xbf, 0xd8, 0x50, 0x4a, 0x9c, 0x82, 0xd0, 0x24, 0x3f, 0x6e, 0x77, 0x46, 0x00, 0xb5, 0xea, 0x0a, }; static const unsigned char ecdsa_secp256k1_sha3_512_5975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5975_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5975 = { .name = "ecdsa_secp256k1_sha3_512_5975", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5975_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5975_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5975_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 412 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5976 for ECDSA, tcId is 413 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5976_pubkey[] = { 0x37, 0xe3, 0x77, 0xfa, 0xea, 0x8a, 0x86, 0x7f, 0x49, 0x4b, 0xb4, 0x02, 0x03, 0x2c, 0x70, 0xc1, 0x2a, 0xf6, 0xfd, 0x57, 0xfe, 0xb3, 0x86, 0x6b, 0xfc, 0x5a, 0x5f, 0xc1, 0xd0, 0xa9, 0x09, 0xf0, 0x08, 0xdc, 0xbc, 0x53, 0xfd, 0x41, 0xb6, 0x70, 0x73, 0xa4, 0xe7, 0x1a, 0x81, 0xf3, 0xfe, 0x57, 0x8d, 0xa4, 0xd5, 0xad, 0xd0, 0xd6, 0x98, 0x04, 0x1a, 0x9b, 0x7f, 0x38, 0xa9, 0xa1, 0x9b, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_512_5976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5976_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5976 = { .name = "ecdsa_secp256k1_sha3_512_5976", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5976_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5976_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5976_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 413 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5977 for ECDSA, tcId is 414 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5977_pubkey[] = { 0x09, 0xa3, 0x31, 0x10, 0x67, 0x6e, 0x4a, 0x4f, 0x8a, 0x97, 0x71, 0x50, 0xa7, 0xbe, 0x29, 0x1e, 0x0a, 0x26, 0x9c, 0xae, 0x96, 0x78, 0x71, 0x0b, 0x1d, 0x87, 0xf8, 0x06, 0x8b, 0x0f, 0xe9, 0x61, 0x04, 0x3a, 0x6f, 0x64, 0xe8, 0x62, 0x78, 0xa6, 0x56, 0xa3, 0x9e, 0x44, 0x68, 0xb3, 0x47, 0x25, 0x97, 0xaf, 0xb2, 0xdc, 0xd9, 0x30, 0xcc, 0xba, 0x1b, 0x1e, 0xa2, 0xc9, 0x88, 0xc1, 0x34, 0x50, }; static const unsigned char ecdsa_secp256k1_sha3_512_5977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5977_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xc5, 0x52, 0x05, 0xf4, 0x23, 0x61, 0x1c, 0x7e, 0x96, 0x61, 0x5b, 0xcc, 0x20, 0x14, 0x19, 0x45, 0xfd, 0xe2, 0x4b, 0xbc, 0xe9, 0x56, 0xd4, 0x9c, 0xd4, 0x3e, 0x14, 0xab, 0x4c, 0xef, 0x36, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5977 = { .name = "ecdsa_secp256k1_sha3_512_5977", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5977_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5977_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5977_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 414 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5978 for ECDSA, tcId is 415 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5978_pubkey[] = { 0x09, 0xa3, 0x31, 0x10, 0x67, 0x6e, 0x4a, 0x4f, 0x8a, 0x97, 0x71, 0x50, 0xa7, 0xbe, 0x29, 0x1e, 0x0a, 0x26, 0x9c, 0xae, 0x96, 0x78, 0x71, 0x0b, 0x1d, 0x87, 0xf8, 0x06, 0x8b, 0x0f, 0xe9, 0x61, 0xfb, 0xc5, 0x90, 0x9b, 0x17, 0x9d, 0x87, 0x59, 0xa9, 0x5c, 0x61, 0xbb, 0x97, 0x4c, 0xb8, 0xda, 0x68, 0x50, 0x4d, 0x23, 0x26, 0xcf, 0x33, 0x45, 0xe4, 0xe1, 0x5d, 0x35, 0x77, 0x3e, 0xc7, 0xdf, }; static const unsigned char ecdsa_secp256k1_sha3_512_5978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5978_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xc5, 0x52, 0x05, 0xf4, 0x23, 0x61, 0x1c, 0x7e, 0x96, 0x61, 0x5b, 0xcc, 0x20, 0x14, 0x19, 0x45, 0xfd, 0xe2, 0x4b, 0xbc, 0xe9, 0x56, 0xd4, 0x9c, 0xd4, 0x3e, 0x14, 0xab, 0x4c, 0xef, 0x36, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5978 = { .name = "ecdsa_secp256k1_sha3_512_5978", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5978_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5978_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5978_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 415 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5979 for ECDSA, tcId is 416 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5979_pubkey[] = { 0xb7, 0x02, 0x1f, 0xae, 0xbf, 0x40, 0x81, 0xa6, 0x30, 0x94, 0xd8, 0xea, 0x78, 0xca, 0x20, 0x04, 0xd0, 0x2a, 0x30, 0x3b, 0xbf, 0x36, 0x34, 0x70, 0xea, 0x4a, 0x64, 0x9b, 0x08, 0xc1, 0x99, 0x5b, 0xde, 0x5e, 0xfb, 0xa2, 0x5c, 0x9d, 0x2f, 0x49, 0x0f, 0x18, 0x1e, 0x16, 0x79, 0x5d, 0x5c, 0x75, 0xf8, 0x3b, 0x5c, 0x11, 0xc8, 0x1d, 0x67, 0xed, 0xe2, 0xea, 0x8d, 0xf8, 0x1d, 0x97, 0x0c, 0xef, }; static const unsigned char ecdsa_secp256k1_sha3_512_5979_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5979_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5979 = { .name = "ecdsa_secp256k1_sha3_512_5979", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5979_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5979_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5979_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 416 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5980 for ECDSA, tcId is 417 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5980_pubkey[] = { 0x4d, 0xe0, 0x24, 0xff, 0x2a, 0xbe, 0x7a, 0xf9, 0x4f, 0xb5, 0xe9, 0xf5, 0x3c, 0x87, 0xd4, 0xb4, 0xbf, 0x1c, 0x54, 0x47, 0xc7, 0xc3, 0x9a, 0x92, 0x80, 0x83, 0x9f, 0x12, 0xe5, 0x2e, 0x38, 0xd8, 0x3c, 0xe6, 0x94, 0x1f, 0xc3, 0x29, 0x97, 0x8e, 0x79, 0x4a, 0xbf, 0x91, 0xa2, 0x5e, 0x83, 0x46, 0x3f, 0x8e, 0xab, 0xcf, 0x10, 0x6d, 0x76, 0xd4, 0xdc, 0xd9, 0x2c, 0x0a, 0xe0, 0x54, 0x93, 0xf3, }; static const unsigned char ecdsa_secp256k1_sha3_512_5980_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5980_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5980 = { .name = "ecdsa_secp256k1_sha3_512_5980", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5980_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5980_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5980_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 417 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5981 for ECDSA, tcId is 418 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5981_pubkey[] = { 0x42, 0x5e, 0x13, 0x7c, 0x5f, 0xe0, 0x8e, 0x84, 0x2c, 0x3b, 0xcc, 0x4e, 0xfb, 0xb6, 0xc4, 0xbc, 0xa8, 0x9e, 0xdd, 0xa8, 0xd6, 0xbe, 0xb1, 0x30, 0xe1, 0x48, 0x99, 0xde, 0x2f, 0x20, 0xb7, 0x4b, 0xb1, 0xaf, 0x66, 0xef, 0x5b, 0xae, 0xad, 0x32, 0xe7, 0x89, 0x21, 0x60, 0xde, 0xdd, 0xcb, 0x57, 0xf4, 0x35, 0x03, 0x10, 0x4d, 0xbc, 0x33, 0x1f, 0xa2, 0x0a, 0x8d, 0xe3, 0x76, 0xe5, 0xbd, 0x17, }; static const unsigned char ecdsa_secp256k1_sha3_512_5981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5981_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5981 = { .name = "ecdsa_secp256k1_sha3_512_5981", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5981_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5981_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5981_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 418 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5982 for ECDSA, tcId is 419 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5982_pubkey[] = { 0x6c, 0x63, 0xd8, 0x2f, 0x22, 0xbb, 0xeb, 0x1b, 0xd1, 0xc8, 0xeb, 0xa4, 0xc6, 0x80, 0xae, 0x17, 0xdc, 0x2b, 0x4d, 0x19, 0x6a, 0x0d, 0xa0, 0xe1, 0x91, 0xdc, 0x79, 0xfe, 0xfd, 0x85, 0xe3, 0x67, 0xa8, 0x83, 0x01, 0x8f, 0xb8, 0xd1, 0x60, 0xca, 0x01, 0xd1, 0x72, 0x34, 0xfa, 0x0b, 0x06, 0x0a, 0x61, 0x92, 0x15, 0xcc, 0xb9, 0xdf, 0xea, 0x62, 0x9d, 0x6b, 0xf9, 0x2c, 0xfd, 0x8e, 0xd3, 0x4b, }; static const unsigned char ecdsa_secp256k1_sha3_512_5982_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5982_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5982 = { .name = "ecdsa_secp256k1_sha3_512_5982", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5982_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5982_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5982_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 419 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5983 for ECDSA, tcId is 420 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5983_pubkey[] = { 0xdb, 0xf7, 0x7c, 0x56, 0x6f, 0x74, 0x83, 0xd7, 0x40, 0x7f, 0x00, 0x95, 0xb8, 0xb4, 0x68, 0xef, 0xdf, 0x85, 0xb7, 0x47, 0x6e, 0x61, 0x4b, 0x86, 0x58, 0xbc, 0xf5, 0xe7, 0x1e, 0x6f, 0xd5, 0x88, 0x41, 0x3b, 0x50, 0x40, 0x7d, 0xf0, 0xde, 0xf0, 0x1b, 0x8f, 0xcb, 0xa5, 0x62, 0x10, 0x28, 0xa6, 0xcb, 0x09, 0x72, 0x83, 0x1c, 0x89, 0x3e, 0x3d, 0x3c, 0x20, 0x06, 0x5b, 0x75, 0xa8, 0xe8, 0xe6, }; static const unsigned char ecdsa_secp256k1_sha3_512_5983_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5983_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5983 = { .name = "ecdsa_secp256k1_sha3_512_5983", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5983_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5983_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5983_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 420 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5984 for ECDSA, tcId is 421 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5984_pubkey[] = { 0xa7, 0x96, 0x7b, 0xfb, 0x54, 0xcf, 0xbd, 0x8d, 0x13, 0x49, 0x2b, 0x9a, 0xc4, 0x21, 0xd9, 0x67, 0xd7, 0xc4, 0xb0, 0xa3, 0xb1, 0x8e, 0xfb, 0x64, 0x08, 0xa4, 0x24, 0x91, 0x47, 0x89, 0xc8, 0xef, 0x90, 0x96, 0x96, 0x28, 0xe6, 0x55, 0x38, 0x98, 0xc9, 0x78, 0xba, 0x48, 0xeb, 0x85, 0x27, 0x14, 0xf9, 0xe2, 0x20, 0xe5, 0xe9, 0x3c, 0xad, 0xa9, 0x14, 0x78, 0xce, 0x1a, 0xf8, 0x94, 0x8f, 0xd8, }; static const unsigned char ecdsa_secp256k1_sha3_512_5984_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5984_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5984 = { .name = "ecdsa_secp256k1_sha3_512_5984", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5984_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5984_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5984_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5985 for ECDSA, tcId is 422 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5985_pubkey[] = { 0x32, 0x5f, 0xd7, 0xab, 0x7b, 0xc8, 0xcd, 0x7d, 0x85, 0x96, 0x87, 0x93, 0x7a, 0x90, 0x08, 0x3f, 0x1b, 0x46, 0x77, 0x6c, 0x2b, 0x8f, 0xdf, 0x4c, 0xe2, 0xbd, 0x9e, 0x2e, 0x80, 0x8c, 0x68, 0xb1, 0xbb, 0x0d, 0x68, 0x9c, 0xa6, 0xf5, 0x42, 0xc0, 0x94, 0xc9, 0x9c, 0x71, 0x91, 0x8f, 0x54, 0x55, 0xc7, 0x60, 0x85, 0x14, 0x14, 0x91, 0x48, 0x47, 0x04, 0x94, 0xe0, 0x5a, 0xa4, 0xff, 0x61, 0x10, }; static const unsigned char ecdsa_secp256k1_sha3_512_5985_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5985_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5985 = { .name = "ecdsa_secp256k1_sha3_512_5985", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5985_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5985_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5985_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 422 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5986 for ECDSA, tcId is 423 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5986_pubkey[] = { 0xd6, 0x37, 0xdc, 0x3c, 0x63, 0x06, 0x0a, 0x0b, 0x21, 0xb8, 0x0d, 0x6d, 0xc8, 0xa9, 0x7a, 0xb6, 0xa5, 0x43, 0xc2, 0x1c, 0x18, 0xcb, 0x5e, 0x5c, 0x63, 0xad, 0x80, 0xc3, 0xb8, 0x60, 0x50, 0xfb, 0x1d, 0x68, 0xbb, 0x9b, 0x9c, 0x36, 0xad, 0xe4, 0x9d, 0xdd, 0x84, 0xc7, 0xfa, 0x3a, 0xe5, 0xc7, 0x0f, 0x45, 0x54, 0x95, 0x92, 0xee, 0x03, 0xa2, 0x3a, 0x49, 0x0a, 0x89, 0x1c, 0xc7, 0x0e, 0xbb, }; static const unsigned char ecdsa_secp256k1_sha3_512_5986_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5986_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5986 = { .name = "ecdsa_secp256k1_sha3_512_5986", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5986_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5986_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5986_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 423 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5987 for ECDSA, tcId is 424 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5987_pubkey[] = { 0x6b, 0xc8, 0x7c, 0xe6, 0x04, 0x7a, 0x31, 0x64, 0xbe, 0x15, 0xad, 0x78, 0x1e, 0xf3, 0x2d, 0x12, 0xba, 0xd8, 0xca, 0xae, 0xf7, 0x70, 0x7a, 0xc3, 0xe1, 0x5a, 0x53, 0xed, 0x75, 0xef, 0xc9, 0x0c, 0x8e, 0xee, 0x28, 0x6e, 0x2a, 0xc0, 0xc8, 0xf9, 0xf6, 0xf0, 0x35, 0x0b, 0x8b, 0xba, 0x94, 0xb6, 0xc5, 0xbf, 0xad, 0xe8, 0x7b, 0xa2, 0x11, 0xad, 0xc0, 0xca, 0xd5, 0xf3, 0x81, 0x80, 0x91, 0xe0, }; static const unsigned char ecdsa_secp256k1_sha3_512_5987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5987_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5987 = { .name = "ecdsa_secp256k1_sha3_512_5987", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5987_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5987_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5987_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 424 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5988 for ECDSA, tcId is 425 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5988_pubkey[] = { 0xda, 0xc2, 0x47, 0x04, 0x04, 0x88, 0xbe, 0xc2, 0x8d, 0xc3, 0xec, 0x9a, 0x81, 0xa9, 0x90, 0x70, 0x1f, 0x45, 0xc0, 0xba, 0x4b, 0xb6, 0xe2, 0x25, 0x73, 0xda, 0x40, 0x0e, 0xfa, 0xa6, 0x5e, 0x2e, 0x7d, 0xe3, 0x75, 0x48, 0x6e, 0x17, 0x57, 0xb6, 0xc7, 0xb4, 0x26, 0x9b, 0xee, 0x42, 0x3e, 0xdb, 0x84, 0xc7, 0xf4, 0xb3, 0x33, 0xc1, 0x55, 0x7b, 0x5d, 0xdf, 0xba, 0x0d, 0xd9, 0x83, 0xcc, 0xf3, }; static const unsigned char ecdsa_secp256k1_sha3_512_5988_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5988_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5988 = { .name = "ecdsa_secp256k1_sha3_512_5988", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5988_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5988_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5988_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 425 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5989 for ECDSA, tcId is 426 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5989_pubkey[] = { 0x1d, 0x4d, 0x07, 0x31, 0x90, 0xb3, 0x27, 0xab, 0x4e, 0x4f, 0x5a, 0xce, 0x8d, 0x8c, 0x8b, 0x68, 0xe1, 0x00, 0xfd, 0x25, 0x65, 0xa1, 0xa4, 0xc4, 0x61, 0x0b, 0xca, 0x30, 0x9f, 0xe6, 0xa9, 0xc3, 0xe2, 0x74, 0xa1, 0x9b, 0x41, 0xe4, 0x96, 0xb0, 0x83, 0x2e, 0x9e, 0x42, 0xf5, 0x22, 0x9f, 0xc0, 0x00, 0x70, 0x6c, 0x96, 0x6d, 0x25, 0x57, 0xf3, 0x44, 0x1d, 0x32, 0x3d, 0x8f, 0xac, 0xa1, 0x29, }; static const unsigned char ecdsa_secp256k1_sha3_512_5989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5989_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5989 = { .name = "ecdsa_secp256k1_sha3_512_5989", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5989_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5989_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5989_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 426 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5990 for ECDSA, tcId is 427 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5990_pubkey[] = { 0x27, 0x4b, 0xa8, 0xda, 0x21, 0xe4, 0xed, 0x44, 0xe2, 0x18, 0x32, 0x0d, 0xaa, 0x10, 0x3f, 0x0d, 0x42, 0x27, 0xbb, 0x35, 0x1b, 0x67, 0xd8, 0x4a, 0xd2, 0x62, 0x86, 0x29, 0xb8, 0x2f, 0xa8, 0x27, 0x4c, 0x90, 0xd1, 0xdc, 0xfe, 0x55, 0xfe, 0x7e, 0xe6, 0x65, 0x71, 0xff, 0x45, 0x26, 0xc7, 0x55, 0xca, 0xc8, 0xc8, 0xed, 0x16, 0xb0, 0x1c, 0x4d, 0xb8, 0x30, 0xb7, 0xdd, 0x9d, 0xea, 0xe7, 0x49, }; static const unsigned char ecdsa_secp256k1_sha3_512_5990_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5990_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5990 = { .name = "ecdsa_secp256k1_sha3_512_5990", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5990_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5990_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5990_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 427 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5991 for ECDSA, tcId is 428 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5991_pubkey[] = { 0xb4, 0x54, 0x06, 0xf9, 0x51, 0xd3, 0x19, 0x75, 0xe9, 0x53, 0xac, 0x11, 0xc2, 0x5c, 0x23, 0x80, 0x46, 0xa7, 0x97, 0x5d, 0xd2, 0xfb, 0xb3, 0x8d, 0x89, 0x09, 0x13, 0xc1, 0xc8, 0xb4, 0x51, 0xcb, 0xca, 0xe0, 0xbe, 0x68, 0x8e, 0x6e, 0x40, 0x0a, 0x92, 0x65, 0xbd, 0x9a, 0x59, 0xba, 0x10, 0x47, 0xe1, 0x64, 0x30, 0x6e, 0xf6, 0xcd, 0x35, 0x8b, 0xc0, 0xff, 0x00, 0xe9, 0xe0, 0x27, 0xe9, 0x57, }; static const unsigned char ecdsa_secp256k1_sha3_512_5991_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5991_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5991 = { .name = "ecdsa_secp256k1_sha3_512_5991", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5991_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5991_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5991_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 428 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5992 for ECDSA, tcId is 429 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5992_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha3_512_5992_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5992_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5992 = { .name = "ecdsa_secp256k1_sha3_512_5992", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5992_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5992_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5992_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 429 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5993 for ECDSA, tcId is 430 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5993_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha3_512_5993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5993_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x14, 0x10, 0x89, 0x77, 0x03, 0xe7, 0x66, 0x3f, 0x19, 0xfe, 0x12, 0x89, 0x49, 0x7b, 0xee, 0x4f, 0x7e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5993 = { .name = "ecdsa_secp256k1_sha3_512_5993", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5993_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5993_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5993_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 430 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5994 for ECDSA, tcId is 431 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5994_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha3_512_5994_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5994_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5994 = { .name = "ecdsa_secp256k1_sha3_512_5994", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5994_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5994_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5994_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 431 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5995 for ECDSA, tcId is 432 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5995_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha3_512_5995_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5995_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x14, 0x10, 0x89, 0x77, 0x03, 0xe7, 0x66, 0x3f, 0x19, 0xfe, 0x12, 0x89, 0x49, 0x7b, 0xee, 0x4f, 0x7e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5995 = { .name = "ecdsa_secp256k1_sha3_512_5995", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5995_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5995_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5995_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 432 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5996 for ECDSA, tcId is 433 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5996_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_512_5996_sig[] = { 0x22, 0xbb, 0x00, 0x00, 0xe9, 0x64, 0x8a, 0x0e, 0xe6, 0x59, 0xf9, 0xb6, 0xa9, 0xab, 0x65, 0x13, 0xdc, 0x90, 0xab, 0x96, 0x8e, 0xc4, 0x9d, 0x39, 0x53, 0xf6, 0x4c, 0x82, 0xbd, 0xdc, 0x85, 0x20, 0x4a, 0xa0, 0xdf, 0xd0, 0x47, 0xb0, 0x78, 0x6e, 0x11, 0x82, 0x31, 0xef, 0xf7, 0xe8, 0x63, 0x11, 0x48, 0x7e, 0xc9, 0xd1, 0xbc, 0x84, 0xaa, 0xef, 0x1f, 0x73, 0x6f, 0x41, 0x78, 0xc2, 0x88, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5996 = { .name = "ecdsa_secp256k1_sha3_512_5996", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5996_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha3_512_5996_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 433 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5997 for ECDSA, tcId is 434 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5997_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_512_5997_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha3_512_5997_sig[] = { 0x85, 0x5b, 0x60, 0x54, 0x9e, 0x0d, 0x84, 0xed, 0x39, 0x59, 0xab, 0x28, 0x00, 0xee, 0xe0, 0xcb, 0xc9, 0xa2, 0xce, 0xca, 0xe2, 0xe5, 0x10, 0xed, 0x51, 0xe9, 0xf2, 0x79, 0x75, 0xcd, 0xcc, 0x4e, 0xc6, 0x0d, 0xcc, 0x80, 0xa3, 0xdc, 0xce, 0x99, 0x11, 0xcb, 0x9c, 0xfb, 0xa1, 0x23, 0xb6, 0xa6, 0xf8, 0x5d, 0x20, 0xab, 0x69, 0x5a, 0x9e, 0xe7, 0xd4, 0x6e, 0x0b, 0xd9, 0xee, 0xb3, 0x37, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5997 = { .name = "ecdsa_secp256k1_sha3_512_5997", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5997_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5997_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha3_512_5997_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 434 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5998 for ECDSA, tcId is 435 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5998_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_512_5998_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha3_512_5998_sig[] = { 0x5c, 0xd7, 0x3a, 0xa5, 0x81, 0x88, 0x65, 0x8e, 0xa5, 0x13, 0xf8, 0xec, 0xf0, 0xd9, 0xe2, 0xda, 0x9e, 0xb5, 0xd6, 0xbc, 0xc7, 0xcb, 0xad, 0xcd, 0x6a, 0x4a, 0x8e, 0x0c, 0xba, 0x51, 0x76, 0xde, 0xa9, 0xf0, 0x90, 0xbb, 0x5d, 0x3f, 0xcf, 0x5b, 0x7f, 0xa7, 0xe1, 0x6d, 0x28, 0x77, 0x18, 0x77, 0x3f, 0x5f, 0x4b, 0xa0, 0x97, 0x3b, 0x32, 0x9a, 0x37, 0x88, 0xcd, 0x45, 0xb4, 0xbd, 0x37, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5998 = { .name = "ecdsa_secp256k1_sha3_512_5998", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5998_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5998_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha3_512_5998_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 435 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 5999 for ECDSA, tcId is 436 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_5999_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha3_512_5999_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha3_512_5999_sig[] = { 0x7f, 0x9e, 0xeb, 0xad, 0x2a, 0x32, 0x3f, 0x83, 0x46, 0x44, 0x5d, 0x1e, 0x2f, 0xcd, 0xe4, 0x7a, 0xba, 0x4c, 0x96, 0xad, 0x46, 0x86, 0x17, 0x2b, 0xeb, 0xcf, 0xfa, 0xa6, 0x04, 0xe8, 0xdb, 0xe3, 0xec, 0x09, 0xd7, 0x31, 0xe5, 0x8e, 0x3a, 0x33, 0x7e, 0xa0, 0x3a, 0xb7, 0x26, 0x12, 0xb1, 0xf8, 0x01, 0xb8, 0x8e, 0xac, 0x57, 0x1b, 0xd3, 0xa0, 0x31, 0x25, 0x0a, 0xc6, 0xf2, 0xe3, 0x4f, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_5999 = { .name = "ecdsa_secp256k1_sha3_512_5999", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_5999_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_5999_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha3_512_5999_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 436 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6000 for ECDSA, tcId is 437 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6000_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_512_6000_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6000_sig[] = { 0xc2, 0x8a, 0xd1, 0x56, 0xfe, 0x80, 0x9e, 0xd3, 0x6d, 0xc8, 0x08, 0x12, 0xae, 0x2f, 0x32, 0xd8, 0x4d, 0xbb, 0xfb, 0xb9, 0x40, 0x01, 0x23, 0x30, 0x5c, 0x33, 0x25, 0x51, 0xc4, 0xf1, 0x0d, 0x39, 0xfc, 0x5b, 0x95, 0xb0, 0xc7, 0xfb, 0xc2, 0xe7, 0xcc, 0x4e, 0xc1, 0xbf, 0x01, 0x02, 0x0f, 0x80, 0x50, 0x26, 0x0c, 0xe2, 0xca, 0x45, 0xc3, 0xbf, 0x5b, 0x64, 0xa7, 0xb2, 0xae, 0xef, 0xac, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6000 = { .name = "ecdsa_secp256k1_sha3_512_6000", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6000_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6000_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6000_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 437 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6001 for ECDSA, tcId is 438 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6001_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_512_6001_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6001_sig[] = { 0xa3, 0x6b, 0xfd, 0xe0, 0xf5, 0xe2, 0x3f, 0x6e, 0x3b, 0x3d, 0x6c, 0xc8, 0x0e, 0xde, 0x3d, 0x9e, 0x4e, 0xa1, 0xc2, 0xcb, 0x93, 0x37, 0x22, 0x13, 0x88, 0xf7, 0x0a, 0xa5, 0x2d, 0xec, 0x5e, 0x53, 0xc2, 0x7e, 0x1d, 0xb1, 0x0d, 0x29, 0x72, 0x0a, 0x12, 0x0c, 0x26, 0x25, 0xc7, 0xe0, 0x75, 0x67, 0x90, 0x20, 0x0b, 0x2d, 0x9b, 0xcc, 0xeb, 0x17, 0x0a, 0x13, 0x56, 0xe1, 0xd5, 0x47, 0x7e, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6001 = { .name = "ecdsa_secp256k1_sha3_512_6001", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6001_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6001_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6001_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 438 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6002 for ECDSA, tcId is 439 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6002_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha3_512_6002_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6002_sig[] = { 0x81, 0x8d, 0xee, 0x97, 0x30, 0xf0, 0x1b, 0x3f, 0x52, 0x5d, 0xaa, 0x9c, 0xc0, 0xd5, 0x42, 0x3b, 0x0c, 0x4a, 0xf0, 0x41, 0x4c, 0x64, 0x7b, 0x6e, 0x0b, 0xc8, 0x85, 0x46, 0xdb, 0x9c, 0x0d, 0x75, 0x61, 0xc1, 0x6a, 0x90, 0xde, 0x1d, 0xbb, 0x1a, 0xb1, 0xe3, 0xc7, 0x91, 0x7e, 0x89, 0x16, 0x32, 0xf5, 0x57, 0xf4, 0x93, 0xb4, 0x10, 0x6f, 0x22, 0x55, 0x17, 0xef, 0x18, 0x6a, 0xbc, 0x0f, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6002 = { .name = "ecdsa_secp256k1_sha3_512_6002", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6002_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6002_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6002_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 439 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6003 for ECDSA, tcId is 440 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6003_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_512_6003_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6003_sig[] = { 0x53, 0xcc, 0x0e, 0xdf, 0xc6, 0x88, 0xe3, 0xd2, 0x64, 0xed, 0x47, 0x55, 0xf9, 0xcf, 0x00, 0x64, 0x18, 0xe1, 0x6e, 0x24, 0xdc, 0x97, 0x84, 0x53, 0xa6, 0xef, 0x14, 0xfb, 0xec, 0xff, 0x61, 0x7f, 0x24, 0x69, 0x4c, 0x00, 0xd3, 0x8c, 0x13, 0x25, 0x99, 0x73, 0xaa, 0x6d, 0xb8, 0x8a, 0xdf, 0x7c, 0xc4, 0x9b, 0x56, 0x73, 0xe6, 0x28, 0xb3, 0xc6, 0x5e, 0x7f, 0xe0, 0x6f, 0x26, 0x65, 0xdb, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6003 = { .name = "ecdsa_secp256k1_sha3_512_6003", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6003_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6003_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6003_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 440 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6004 for ECDSA, tcId is 441 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6004_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_512_6004_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6004_sig[] = { 0xca, 0xcd, 0x14, 0x40, 0x62, 0x11, 0xed, 0x85, 0xd8, 0xde, 0x1b, 0x50, 0xe1, 0x67, 0xf5, 0x9d, 0xec, 0x68, 0x85, 0x74, 0x52, 0x4c, 0x6f, 0xc1, 0x76, 0x2c, 0x92, 0x68, 0x21, 0x4e, 0x3b, 0xba, 0x28, 0x9c, 0xf8, 0x94, 0x9f, 0x71, 0x76, 0x26, 0xc2, 0x58, 0x33, 0xa0, 0xa1, 0x59, 0xd6, 0x3d, 0x77, 0xd0, 0x22, 0xb4, 0x8e, 0x16, 0x10, 0x07, 0x46, 0x4f, 0x59, 0xf5, 0x07, 0x2d, 0xf8, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6004 = { .name = "ecdsa_secp256k1_sha3_512_6004", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6004_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6004_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6004_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 441 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6005 for ECDSA, tcId is 442 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6005_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha3_512_6005_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6005_sig[] = { 0xc1, 0xa4, 0xc9, 0xd1, 0xfe, 0xef, 0x48, 0x04, 0x58, 0x13, 0xd9, 0x11, 0xf6, 0xab, 0xb1, 0x88, 0x50, 0x2e, 0x06, 0xd2, 0x6b, 0x34, 0x19, 0x4f, 0x2d, 0xea, 0xa3, 0x56, 0xe5, 0x78, 0xa7, 0x69, 0x40, 0x63, 0xd3, 0x36, 0x7b, 0x2b, 0xab, 0x52, 0xbf, 0x9f, 0xbc, 0x4c, 0xd3, 0xf6, 0x70, 0x66, 0x75, 0x69, 0xcc, 0xb1, 0xcf, 0xb0, 0x5a, 0x7c, 0x7c, 0x15, 0x66, 0x22, 0xba, 0x59, 0x3d, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6005 = { .name = "ecdsa_secp256k1_sha3_512_6005", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6005_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6005_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6005_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 442 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6006 for ECDSA, tcId is 443 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6006_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_512_6006_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6006_sig[] = { 0x5a, 0xf5, 0x68, 0x34, 0x67, 0xb4, 0xcb, 0x3d, 0x68, 0xbd, 0x16, 0x8c, 0x5f, 0xe2, 0x29, 0xa0, 0x7b, 0x7e, 0xb1, 0xde, 0x2f, 0x92, 0xb8, 0xa9, 0x74, 0x3f, 0xb4, 0x6c, 0x36, 0x91, 0x87, 0x2a, 0x4c, 0xbe, 0x35, 0xcb, 0xe6, 0x68, 0x05, 0x72, 0x9e, 0x90, 0x74, 0x62, 0x16, 0x9c, 0x13, 0xb5, 0xc4, 0xfe, 0xb4, 0x97, 0xaa, 0xb6, 0x58, 0x77, 0x4b, 0xec, 0x1e, 0xcd, 0x7b, 0xd8, 0x86, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6006 = { .name = "ecdsa_secp256k1_sha3_512_6006", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6006_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6006_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6006_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 443 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6007 for ECDSA, tcId is 444 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6007_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_512_6007_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6007_sig[] = { 0x05, 0x1e, 0x5f, 0x82, 0x5a, 0x5c, 0x29, 0xf9, 0x2a, 0x10, 0x8a, 0x3d, 0xdc, 0xdc, 0xbf, 0x7f, 0xfc, 0xe3, 0x7a, 0xb3, 0x29, 0x15, 0x98, 0x59, 0x78, 0x51, 0x2e, 0x89, 0xa2, 0xa8, 0x3b, 0x0c, 0x63, 0x40, 0xac, 0x18, 0x70, 0x77, 0xa7, 0xfb, 0x43, 0x73, 0x53, 0x7b, 0x45, 0x95, 0xa3, 0x92, 0x99, 0xad, 0x0b, 0xa3, 0x51, 0xdb, 0x23, 0xbc, 0xae, 0x91, 0x76, 0x12, 0x5c, 0x61, 0xed, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6007 = { .name = "ecdsa_secp256k1_sha3_512_6007", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6007_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6007_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6007_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 444 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6008 for ECDSA, tcId is 445 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6008_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha3_512_6008_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6008_sig[] = { 0x34, 0xe2, 0x8d, 0xec, 0xbf, 0x74, 0xab, 0xd3, 0x0f, 0x55, 0x15, 0x5e, 0xe2, 0xff, 0x96, 0xf6, 0x21, 0x06, 0x60, 0x01, 0xa8, 0x53, 0xac, 0xef, 0x91, 0x6c, 0xdb, 0x39, 0xa7, 0xd0, 0x7b, 0x40, 0x87, 0x56, 0x1a, 0x96, 0x16, 0x70, 0x16, 0xfb, 0x7d, 0xd6, 0xf3, 0xc7, 0x25, 0x9f, 0x8c, 0x56, 0x3f, 0x21, 0x44, 0x33, 0x2e, 0xbb, 0x9a, 0x48, 0xe9, 0x3b, 0x95, 0x12, 0xd3, 0xbf, 0x53, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6008 = { .name = "ecdsa_secp256k1_sha3_512_6008", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6008_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6008_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6008_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 445 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6009 for ECDSA, tcId is 446 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6009_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_6009_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6009_sig[] = { 0xca, 0xfd, 0xed, 0x1b, 0xc9, 0x8a, 0x4b, 0xdf, 0xe7, 0x6e, 0x1d, 0xf9, 0xab, 0x75, 0x34, 0x2a, 0x7f, 0xed, 0x16, 0xb0, 0xc1, 0x68, 0x8a, 0x2e, 0x74, 0x4d, 0x87, 0x1b, 0x94, 0x04, 0xbe, 0x14, 0xa1, 0x1f, 0xcb, 0x57, 0xd1, 0x21, 0x20, 0x68, 0xaf, 0xed, 0x86, 0xa3, 0x7e, 0x72, 0x91, 0xaa, 0x02, 0x06, 0x1e, 0x75, 0xb8, 0x83, 0xe9, 0xb9, 0xa7, 0xaf, 0x3a, 0x52, 0xe8, 0x1f, 0x50, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6009 = { .name = "ecdsa_secp256k1_sha3_512_6009", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6009_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6009_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6009_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 446 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6010 for ECDSA, tcId is 447 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6010_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_6010_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6010_sig[] = { 0x25, 0x4f, 0x95, 0x41, 0xae, 0xbd, 0x4f, 0xca, 0x9c, 0xe7, 0x13, 0x6f, 0xa8, 0xe6, 0xed, 0x63, 0x67, 0x77, 0x8a, 0xfe, 0xdf, 0x36, 0x20, 0x17, 0x79, 0xb0, 0xea, 0x6a, 0x61, 0xa8, 0x2f, 0x3b, 0x38, 0x66, 0x81, 0x03, 0xee, 0xbc, 0xa5, 0xe7, 0x86, 0xe0, 0x5d, 0xff, 0xfd, 0x8b, 0x9f, 0x1d, 0x87, 0xd4, 0xa1, 0x55, 0x8b, 0x1c, 0xdf, 0xc0, 0xee, 0xb9, 0x8a, 0x60, 0x6a, 0xb6, 0x54, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6010 = { .name = "ecdsa_secp256k1_sha3_512_6010", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6010_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6010_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6010_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6011 for ECDSA, tcId is 448 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6011_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha3_512_6011_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6011_sig[] = { 0xf9, 0x98, 0xe8, 0x32, 0x2b, 0x2a, 0x11, 0x01, 0xbb, 0xdf, 0x9b, 0x8b, 0x80, 0xbc, 0x14, 0x7e, 0x52, 0x25, 0x63, 0x2c, 0xdb, 0x6b, 0x1a, 0x8c, 0x4c, 0x4c, 0x25, 0xc2, 0x9c, 0xd3, 0x31, 0x9d, 0xee, 0x6b, 0x3e, 0x7b, 0x59, 0x62, 0x1f, 0xd6, 0x2b, 0x32, 0x53, 0xef, 0x64, 0x6a, 0xd7, 0xcd, 0x4a, 0x4d, 0x53, 0xdd, 0x11, 0x37, 0x20, 0x38, 0xb0, 0xb3, 0x14, 0xce, 0xd0, 0xe2, 0xe5, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6011 = { .name = "ecdsa_secp256k1_sha3_512_6011", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6011_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6011_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6011_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 448 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6012 for ECDSA, tcId is 449 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6012_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_512_6012_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6012_sig[] = { 0x0c, 0x42, 0x6a, 0x3f, 0x25, 0xf5, 0xd0, 0x25, 0x09, 0x28, 0xac, 0x4e, 0x5e, 0xa0, 0x3c, 0xf9, 0x49, 0xd3, 0x44, 0x44, 0x28, 0x3a, 0xc1, 0x8a, 0x49, 0xec, 0x63, 0x8a, 0x2a, 0x6e, 0xa4, 0xc5, 0x09, 0xf0, 0xdf, 0x2f, 0xe7, 0x8f, 0x8c, 0xe3, 0x01, 0x05, 0x7c, 0x73, 0x4c, 0xf3, 0xc2, 0x50, 0x5d, 0x72, 0x19, 0x77, 0x5f, 0xb7, 0x78, 0x75, 0x84, 0x61, 0x36, 0x0b, 0x16, 0x8e, 0x2c, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6012 = { .name = "ecdsa_secp256k1_sha3_512_6012", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6012_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6012_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6012_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 449 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6013 for ECDSA, tcId is 450 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6013_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_512_6013_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6013_sig[] = { 0x13, 0x09, 0xba, 0x74, 0x29, 0x99, 0xad, 0x66, 0xae, 0xf1, 0x04, 0xcc, 0x14, 0x02, 0x46, 0xbc, 0x57, 0x6b, 0xd1, 0x4a, 0xcc, 0x6b, 0xb0, 0xbe, 0x72, 0x85, 0x77, 0xe4, 0x9f, 0x4f, 0x8e, 0xd5, 0x31, 0xe2, 0x9f, 0xed, 0xca, 0xb5, 0x99, 0x9d, 0x66, 0xb2, 0x7a, 0x4f, 0x4f, 0xfc, 0x95, 0x0d, 0xcc, 0x80, 0x66, 0xfb, 0x7c, 0xdb, 0xad, 0x9a, 0x63, 0x62, 0x27, 0x0c, 0x06, 0x6a, 0x50, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6013 = { .name = "ecdsa_secp256k1_sha3_512_6013", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6013_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6013_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6013_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 450 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6014 for ECDSA, tcId is 451 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6014_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha3_512_6014_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6014_sig[] = { 0xcb, 0x56, 0x5e, 0xbf, 0xd4, 0x80, 0x44, 0xd1, 0x7d, 0x2e, 0x24, 0x1b, 0x7c, 0xd5, 0xfe, 0xc6, 0x08, 0x9e, 0x3d, 0x0b, 0xee, 0x83, 0x51, 0x6b, 0x71, 0x0f, 0x68, 0xd5, 0x83, 0xcc, 0xd1, 0xc6, 0x26, 0xd6, 0xd5, 0xa1, 0xf1, 0x2a, 0xe0, 0x63, 0x52, 0x8e, 0x7e, 0x4b, 0x1a, 0x6a, 0x9c, 0x5c, 0x76, 0x0a, 0xf3, 0x8f, 0x28, 0x28, 0xdb, 0x94, 0x07, 0xc4, 0x39, 0x48, 0x4f, 0x2a, 0xe9, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6014 = { .name = "ecdsa_secp256k1_sha3_512_6014", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6014_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6014_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6014_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 451 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6015 for ECDSA, tcId is 452 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6015_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_512_6015_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6015_sig[] = { 0xa6, 0xc4, 0x19, 0xf4, 0x78, 0x00, 0x7c, 0xe4, 0xeb, 0x07, 0xcd, 0x8d, 0xeb, 0x24, 0x8b, 0x8d, 0x9d, 0x11, 0xe1, 0x6c, 0x02, 0x36, 0x4e, 0x18, 0x39, 0x1a, 0xb9, 0x34, 0xc6, 0xf3, 0xe9, 0x1d, 0x36, 0x3a, 0xb4, 0x61, 0xb8, 0xd4, 0x0c, 0x86, 0x49, 0x98, 0xa6, 0xdf, 0xa9, 0xc9, 0xc7, 0x74, 0x19, 0x93, 0x0b, 0x93, 0x36, 0xf0, 0xcd, 0x47, 0x1b, 0x74, 0x78, 0x6b, 0x09, 0xab, 0xa2, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6015 = { .name = "ecdsa_secp256k1_sha3_512_6015", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6015_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6015_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6015_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 452 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6016 for ECDSA, tcId is 453 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6016_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_512_6016_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6016_sig[] = { 0xe2, 0x2a, 0xb4, 0x6f, 0x88, 0x3c, 0x6e, 0xa5, 0x8d, 0xe9, 0x7f, 0x98, 0x2f, 0xfd, 0x3e, 0xf5, 0x81, 0x74, 0x9f, 0xe5, 0x56, 0x8f, 0x81, 0x21, 0x76, 0x15, 0x66, 0x50, 0x91, 0x45, 0xb0, 0xc8, 0xfc, 0x4a, 0x53, 0xda, 0xf4, 0x12, 0x2a, 0xa1, 0x0b, 0x98, 0xa4, 0xd1, 0x8c, 0x2e, 0x49, 0x20, 0xb3, 0x77, 0x44, 0x44, 0x7f, 0x0d, 0x84, 0x3f, 0xf9, 0xed, 0x1d, 0x79, 0xd4, 0x82, 0xd7, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6016 = { .name = "ecdsa_secp256k1_sha3_512_6016", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6016_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6016_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6016_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 453 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6017 for ECDSA, tcId is 454 in file ecdsa_secp256k1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256k1_sha3_512_6017_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha3_512_6017_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha3_512_6017_sig[] = { 0x92, 0x1a, 0x16, 0xea, 0x24, 0x1e, 0x69, 0xc9, 0xd4, 0xf3, 0xbd, 0xe6, 0xba, 0x2c, 0xc7, 0xe1, 0x0a, 0x27, 0xc9, 0xdf, 0xd8, 0xb9, 0x20, 0x76, 0xd0, 0xa4, 0xa6, 0xd9, 0xf8, 0xae, 0x0a, 0xb3, 0x39, 0xb6, 0x6e, 0xe2, 0xaf, 0xd7, 0xdb, 0x10, 0x99, 0xfe, 0xe2, 0xcd, 0x8c, 0x69, 0xc9, 0xf1, 0xea, 0x29, 0x04, 0x7e, 0xfa, 0xcc, 0x1c, 0x6e, 0x8e, 0xe9, 0x2e, 0x5a, 0x22, 0x44, 0xa4, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha3_512_6017 = { .name = "ecdsa_secp256k1_sha3_512_6017", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha3_512_6017_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha3_512_6017_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha3_512_6017_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 454 in file ecdsa_secp256k1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) */ /* Test 6018 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6018_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6018_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5a, 0x2c, 0xc6, 0x1d, 0xf3, 0xce, 0x8a, 0xe2, 0xc1, 0x35, 0x7e, 0xa8, 0xc5, 0xff, 0x50, 0x55, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6018 = { .name = "ecdsa_secp256k1_sha512_6018", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6018_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6018_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6018_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6019 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6019_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6019_sig[] = { 0x01, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xde, 0x19, 0x9a, 0xb6, 0xbf, 0x23, 0xce, 0xc3, 0xa1, 0x20, 0xf5, 0x6d, 0xa5, 0x84, 0x3d, 0xe3, 0x2a, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6019 = { .name = "ecdsa_secp256k1_sha512_6019", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6019_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6019_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6019_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6020 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6020_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6020_sig[] = { 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x1f, 0x5b, 0xc3, 0x03, 0x0e, 0x3a, 0xc2, 0x7c, 0xd6, 0x5e, 0xaf, 0x4f, 0x74, 0x1c, 0x2e, 0x9f, 0x58, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6020 = { .name = "ecdsa_secp256k1_sha512_6020", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6020_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6020_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6020_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6021 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6021_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6021_sig[] = { 0x01, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6021 = { .name = "ecdsa_secp256k1_sha512_6021", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6021_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6021_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6021_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6022 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6022_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6022_sig[] = { 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x20, 0xa1, 0x14, 0x26, 0x27, 0x8b, 0x79, 0xdc, 0x9a, 0x9e, 0xdc, 0xf0, 0xe7, 0x4b, 0xf8, 0x5e, 0x17, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6022 = { .name = "ecdsa_secp256k1_sha512_6022", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6022_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6022_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6022_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6023 for ECDSA, tcId is 6 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6023_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6023_sig[] = { 0x00, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x01, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa3, 0x48, 0x97, 0x9b, 0xd9, 0x90, 0x06, 0x5d, 0xb6, 0x4a, 0x26, 0x14, 0x53, 0xa1, 0x1c, 0x2d, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6023 = { .name = "ecdsa_secp256k1_sha512_6023", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6023_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6023_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6023_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6024 for ECDSA, tcId is 7 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6024_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6024_sig[] = { 0x00, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x01, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6024 = { .name = "ecdsa_secp256k1_sha512_6024", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6024_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6024_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6024_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6025 for ECDSA, tcId is 8 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6025_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6025_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5b, 0x72, 0x17, 0x41, 0x0d, 0x1f, 0x42, 0x42, 0x85, 0x75, 0xac, 0x4a, 0x39, 0x2f, 0x1a, 0x14, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6025 = { .name = "ecdsa_secp256k1_sha512_6025", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6025_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6025_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6026 for ECDSA, tcId is 9 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6026_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6026_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6026 = { .name = "ecdsa_secp256k1_sha512_6026", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6026_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6026_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6026_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6027 for ECDSA, tcId is 10 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6027_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6027_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6027 = { .name = "ecdsa_secp256k1_sha512_6027", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6027_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6027_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6027_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6028 for ECDSA, tcId is 11 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6028_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6028_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6028 = { .name = "ecdsa_secp256k1_sha512_6028", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6028_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6028_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6028_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6029 for ECDSA, tcId is 12 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6029_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6029_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6029 = { .name = "ecdsa_secp256k1_sha512_6029", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6029_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6029_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6029_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6030 for ECDSA, tcId is 13 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6030_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6030_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6030 = { .name = "ecdsa_secp256k1_sha512_6030", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6030_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6030_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6030_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6031 for ECDSA, tcId is 14 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6031_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6031_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6031 = { .name = "ecdsa_secp256k1_sha512_6031", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6031_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6031_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6031_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6032 for ECDSA, tcId is 15 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6032_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6032_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6032 = { .name = "ecdsa_secp256k1_sha512_6032", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6032_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6032_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6032_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6033 for ECDSA, tcId is 16 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6033_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6033_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6033 = { .name = "ecdsa_secp256k1_sha512_6033", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6033_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6033_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6033_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6034 for ECDSA, tcId is 17 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6034_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6034_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6034 = { .name = "ecdsa_secp256k1_sha512_6034", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6034_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6034_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6034_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6035 for ECDSA, tcId is 18 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6035_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6035_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6035 = { .name = "ecdsa_secp256k1_sha512_6035", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6035_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6035_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6035_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6036 for ECDSA, tcId is 19 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6036_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6036_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6036 = { .name = "ecdsa_secp256k1_sha512_6036", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6036_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6036_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6036_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6037 for ECDSA, tcId is 20 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6037_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6037_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6037 = { .name = "ecdsa_secp256k1_sha512_6037", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6037_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6037_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6037_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6038 for ECDSA, tcId is 21 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6038_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6038_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6038 = { .name = "ecdsa_secp256k1_sha512_6038", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6038_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6038_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6038_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6039 for ECDSA, tcId is 22 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6039_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6039_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6039 = { .name = "ecdsa_secp256k1_sha512_6039", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6039_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6039_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6039_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6040 for ECDSA, tcId is 23 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6040_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6040_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6040 = { .name = "ecdsa_secp256k1_sha512_6040", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6040_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6040_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6040_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6041 for ECDSA, tcId is 24 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6041_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6041_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6041 = { .name = "ecdsa_secp256k1_sha512_6041", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6041_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6041_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6041_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6042 for ECDSA, tcId is 25 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6042_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6042_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6042 = { .name = "ecdsa_secp256k1_sha512_6042", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6042_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6042_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6042_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6043 for ECDSA, tcId is 26 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6043_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6043_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6043 = { .name = "ecdsa_secp256k1_sha512_6043", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6043_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6043_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6043_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6044 for ECDSA, tcId is 27 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6044_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6044_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6044 = { .name = "ecdsa_secp256k1_sha512_6044", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6044_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6044_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6044_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6045 for ECDSA, tcId is 28 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6045_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6045_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6045 = { .name = "ecdsa_secp256k1_sha512_6045", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6045_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6045_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6045_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6046 for ECDSA, tcId is 29 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6046_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6046_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6046 = { .name = "ecdsa_secp256k1_sha512_6046", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6046_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6046_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6046_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6047 for ECDSA, tcId is 30 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6047_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6047_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6047 = { .name = "ecdsa_secp256k1_sha512_6047", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6047_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6047_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6047_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6048 for ECDSA, tcId is 31 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6048_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6048_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6048 = { .name = "ecdsa_secp256k1_sha512_6048", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6048_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6048_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6048_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6049 for ECDSA, tcId is 32 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6049_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6049_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6049 = { .name = "ecdsa_secp256k1_sha512_6049", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6049_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6049_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6049_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6050 for ECDSA, tcId is 33 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6050_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6050_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6050 = { .name = "ecdsa_secp256k1_sha512_6050", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6050_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6050_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6050_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6051 for ECDSA, tcId is 34 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6051_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6051_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6051 = { .name = "ecdsa_secp256k1_sha512_6051", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6051_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6051_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6051_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6052 for ECDSA, tcId is 35 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6052_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6052_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6052 = { .name = "ecdsa_secp256k1_sha512_6052", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6052_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6052_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6052_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6053 for ECDSA, tcId is 36 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6053_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6053_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6053 = { .name = "ecdsa_secp256k1_sha512_6053", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6053_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6053_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6053_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6054 for ECDSA, tcId is 37 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6054_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6054_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6054 = { .name = "ecdsa_secp256k1_sha512_6054", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6054_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6054_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6054_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6055 for ECDSA, tcId is 38 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6055_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6055_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6055 = { .name = "ecdsa_secp256k1_sha512_6055", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6055_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6055_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6055_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6056 for ECDSA, tcId is 39 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6056_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6056_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6056 = { .name = "ecdsa_secp256k1_sha512_6056", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6056_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6056_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6056_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6057 for ECDSA, tcId is 40 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6057_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6057_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6057 = { .name = "ecdsa_secp256k1_sha512_6057", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6057_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6057_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6057_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6058 for ECDSA, tcId is 41 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6058_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6058_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6058 = { .name = "ecdsa_secp256k1_sha512_6058", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6058_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6058_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6059 for ECDSA, tcId is 42 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6059_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6059_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6059 = { .name = "ecdsa_secp256k1_sha512_6059", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6059_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6059_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6060 for ECDSA, tcId is 43 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6060_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6060_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6060 = { .name = "ecdsa_secp256k1_sha512_6060", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6060_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6060_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6061 for ECDSA, tcId is 44 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6061_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6061_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6061 = { .name = "ecdsa_secp256k1_sha512_6061", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6061_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6061_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6062 for ECDSA, tcId is 45 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6062_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6062_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6062 = { .name = "ecdsa_secp256k1_sha512_6062", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6062_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6062_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6063 for ECDSA, tcId is 46 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6063_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6063_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6063 = { .name = "ecdsa_secp256k1_sha512_6063", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6063_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6063_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6064 for ECDSA, tcId is 47 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6064_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6064_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6064 = { .name = "ecdsa_secp256k1_sha512_6064", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6064_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6064_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6065 for ECDSA, tcId is 48 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6065_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6065_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6065 = { .name = "ecdsa_secp256k1_sha512_6065", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6065_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6065_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6066 for ECDSA, tcId is 49 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6066_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6066_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6066 = { .name = "ecdsa_secp256k1_sha512_6066", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6066_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6066_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6067 for ECDSA, tcId is 50 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6067_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6067_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6067 = { .name = "ecdsa_secp256k1_sha512_6067", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6067_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6067_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6068 for ECDSA, tcId is 51 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6068_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6068_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6068 = { .name = "ecdsa_secp256k1_sha512_6068", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6068_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6068_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6069 for ECDSA, tcId is 52 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6069_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6069_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6069 = { .name = "ecdsa_secp256k1_sha512_6069", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6069_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6069_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6070 for ECDSA, tcId is 53 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6070_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6070_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6070 = { .name = "ecdsa_secp256k1_sha512_6070", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6070_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6070_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6071 for ECDSA, tcId is 54 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6071_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6071_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6071 = { .name = "ecdsa_secp256k1_sha512_6071", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6071_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6071_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6072 for ECDSA, tcId is 55 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6072_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6072_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6072 = { .name = "ecdsa_secp256k1_sha512_6072", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6072_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6072_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6073 for ECDSA, tcId is 56 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6073_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6073_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6073 = { .name = "ecdsa_secp256k1_sha512_6073", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6073_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6073_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6074 for ECDSA, tcId is 57 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6074_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6074_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6074 = { .name = "ecdsa_secp256k1_sha512_6074", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6074_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6074_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6075 for ECDSA, tcId is 58 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6075_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6075_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x39, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6075_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0x2c, 0x8a, 0x79, 0xb4, 0x9c, 0xae, 0x4e, 0xc1, 0x5d, 0x29, 0x35, 0x75, 0xa5, 0xa1, 0xaf, 0x5b, 0x4d, 0x6e, 0xfb, 0x74, 0xef, 0x5c, 0x2c, 0x1b, 0xe3, 0x4e, 0x33, 0xcd, 0xeb, 0x71, 0x13, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6075 = { .name = "ecdsa_secp256k1_sha512_6075", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6075_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6075_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6076 for ECDSA, tcId is 59 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6076_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6076_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6076_sig[] = { 0xd7, 0x43, 0xc5, 0xd7, 0x6e, 0x11, 0x93, 0xa5, 0x74, 0x38, 0xf1, 0xb4, 0x3b, 0x1b, 0x0e, 0x33, 0xd0, 0xd1, 0xab, 0x15, 0xbd, 0x3d, 0x57, 0xa5, 0xcf, 0x6a, 0xeb, 0xb3, 0x70, 0xd4, 0x6c, 0xe0, 0x7d, 0xf2, 0x7c, 0xb7, 0x30, 0xb3, 0x3d, 0xfe, 0x01, 0xe3, 0x4a, 0x00, 0x67, 0xe5, 0x48, 0xa9, 0x8c, 0x56, 0x84, 0x6d, 0x9a, 0x4c, 0xd6, 0x4a, 0x93, 0x0c, 0x96, 0xbf, 0xd9, 0x17, 0xcf, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6076 = { .name = "ecdsa_secp256k1_sha512_6076", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6076_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6076_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6077 for ECDSA, tcId is 60 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6077_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6077_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6077_sig[] = { 0xba, 0x30, 0xf4, 0xdd, 0xf3, 0x34, 0x8f, 0x26, 0x83, 0x5e, 0x9c, 0x50, 0xf6, 0xa2, 0xd5, 0x02, 0x3a, 0x9a, 0x1f, 0x5f, 0xe2, 0xe9, 0xcf, 0x14, 0xb3, 0x27, 0x00, 0x15, 0xda, 0xc2, 0x83, 0xfe, 0x1d, 0x16, 0x16, 0xab, 0xb2, 0x04, 0xf6, 0x15, 0xfb, 0xe9, 0x98, 0x60, 0xd8, 0x91, 0x58, 0xc3, 0x26, 0x41, 0x82, 0xd6, 0x17, 0xac, 0x9f, 0x15, 0x60, 0xfa, 0x82, 0x91, 0xb3, 0x49, 0xd5, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6077 = { .name = "ecdsa_secp256k1_sha512_6077", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6077_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6077_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6078 for ECDSA, tcId is 61 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6078_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6078_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6078_sig[] = { 0x55, 0x1d, 0x72, 0xe6, 0x3f, 0x7b, 0x27, 0x28, 0x3c, 0x41, 0x07, 0xf7, 0xd8, 0x51, 0xf3, 0x87, 0xb6, 0x0f, 0x3f, 0x47, 0x13, 0xa5, 0xd3, 0x5c, 0x21, 0xfa, 0x33, 0x2f, 0xbe, 0xed, 0x44, 0x94, 0x80, 0x91, 0x4c, 0xc3, 0x7a, 0x3f, 0xe1, 0x3a, 0x74, 0xdb, 0x7f, 0xcc, 0x52, 0x26, 0x38, 0x8d, 0x95, 0x03, 0x4a, 0x50, 0xa8, 0x9a, 0x9b, 0x2f, 0xe9, 0xbf, 0x42, 0xea, 0x29, 0xe5, 0x71, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6078 = { .name = "ecdsa_secp256k1_sha512_6078", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6078_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6078_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6079 for ECDSA, tcId is 62 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6079_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6079_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6079_sig[] = { 0x80, 0xce, 0xad, 0x3d, 0x16, 0x5c, 0xe0, 0x5c, 0x7c, 0xf8, 0x46, 0x9f, 0x1c, 0x35, 0xc5, 0xa3, 0xa6, 0x41, 0x69, 0x6c, 0x84, 0x3b, 0xef, 0x0f, 0x02, 0x2a, 0x6c, 0x68, 0x13, 0x3d, 0xc4, 0x9e, 0xea, 0x84, 0x09, 0xd7, 0x43, 0xa4, 0xad, 0x5e, 0x13, 0x62, 0x07, 0x73, 0x6c, 0x3a, 0xd7, 0x9c, 0x8c, 0xfc, 0x7b, 0x57, 0xeb, 0xd1, 0xbd, 0x9b, 0x8a, 0x59, 0x66, 0x70, 0xad, 0x12, 0xd4, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6079 = { .name = "ecdsa_secp256k1_sha512_6079", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6079_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6079_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6079_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6080 for ECDSA, tcId is 63 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6080_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6080_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6080_sig[] = { 0xbb, 0xc0, 0xe8, 0xb7, 0x72, 0x10, 0x65, 0xa5, 0x1b, 0xac, 0x9c, 0x3a, 0xad, 0x64, 0x16, 0x89, 0x98, 0xcc, 0x0e, 0xfa, 0x23, 0x29, 0x83, 0x40, 0xd4, 0x36, 0x86, 0x7c, 0xc8, 0x6b, 0xa8, 0x47, 0xae, 0x3b, 0xaa, 0x13, 0x1a, 0x83, 0x15, 0x3c, 0xb3, 0x1d, 0xe2, 0xf7, 0x58, 0xe4, 0x51, 0x39, 0xf6, 0x2f, 0xe6, 0xcc, 0x9c, 0xe3, 0x94, 0x1c, 0x6b, 0x17, 0x89, 0xdc, 0x10, 0x10, 0xf3, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6080 = { .name = "ecdsa_secp256k1_sha512_6080", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6080_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6080_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6081 for ECDSA, tcId is 64 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6081_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6081_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6081_sig[] = { 0x3a, 0x5b, 0xa9, 0x39, 0x17, 0xb9, 0x54, 0x61, 0x7b, 0x40, 0xe1, 0xd8, 0x66, 0x86, 0x0d, 0x15, 0x22, 0xb0, 0xd3, 0x10, 0xca, 0xc2, 0x45, 0x76, 0x36, 0xe5, 0x4e, 0x2f, 0xfd, 0xea, 0x88, 0x8e, 0x3e, 0xac, 0x6f, 0xe7, 0x62, 0xae, 0xe1, 0x27, 0x83, 0x7c, 0x2c, 0x65, 0xfd, 0x9c, 0x1f, 0x65, 0xb4, 0x04, 0xb2, 0xc3, 0x1b, 0xb9, 0x45, 0xe7, 0x5d, 0x61, 0x66, 0x50, 0x3f, 0xb5, 0xc8, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6081 = { .name = "ecdsa_secp256k1_sha512_6081", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6081_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6081_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6082 for ECDSA, tcId is 65 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6082_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6082_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6082_sig[] = { 0x64, 0x7f, 0x2b, 0x4b, 0xef, 0x6d, 0x1e, 0xa7, 0x90, 0x8a, 0xc5, 0xf3, 0xdf, 0xd7, 0x05, 0x49, 0x4c, 0x25, 0x87, 0x45, 0x65, 0x57, 0x80, 0x5f, 0xe6, 0x4a, 0x70, 0x3b, 0x2b, 0x17, 0x50, 0x3c, 0x20, 0xe1, 0x64, 0xbb, 0xb5, 0x05, 0xc6, 0xdf, 0x56, 0x45, 0x59, 0x08, 0x00, 0x8c, 0xf9, 0x62, 0x6d, 0xf3, 0x20, 0xf4, 0x8a, 0xa3, 0xfc, 0x9d, 0x0c, 0xc8, 0xad, 0x8b, 0xcf, 0x07, 0x8c, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6082 = { .name = "ecdsa_secp256k1_sha512_6082", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6082_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6082_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6083 for ECDSA, tcId is 66 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6083_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6083_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6083_sig[] = { 0x8a, 0xa6, 0x53, 0xcf, 0xa0, 0x01, 0x79, 0x8c, 0x47, 0x1e, 0xea, 0x31, 0x99, 0xdc, 0x97, 0x5a, 0x4d, 0xea, 0x4f, 0x7c, 0x1e, 0xde, 0x47, 0x45, 0x34, 0x09, 0xe6, 0x06, 0xd0, 0x5c, 0xeb, 0x51, 0xca, 0xb2, 0x09, 0x67, 0xa0, 0x56, 0xc0, 0xea, 0x7f, 0xe9, 0xcd, 0xf8, 0xe1, 0x98, 0x0f, 0x55, 0xb1, 0x59, 0x7a, 0x2d, 0xad, 0x80, 0xc9, 0x22, 0x3a, 0x0f, 0xab, 0x15, 0xc3, 0x14, 0xfe, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6083 = { .name = "ecdsa_secp256k1_sha512_6083", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6083_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6083_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6084 for ECDSA, tcId is 67 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6084_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6084_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6084_sig[] = { 0x84, 0x2e, 0x42, 0x1f, 0x33, 0xbe, 0x24, 0x1d, 0x27, 0xf1, 0x2f, 0x87, 0x53, 0x55, 0x90, 0x2a, 0x25, 0x81, 0x9f, 0x21, 0x0b, 0x36, 0x85, 0xad, 0x53, 0x6e, 0x23, 0x59, 0x40, 0x12, 0xd9, 0xd0, 0x4f, 0xb8, 0x94, 0xae, 0x0e, 0x9c, 0x24, 0xb6, 0xed, 0x28, 0x0e, 0x22, 0x4a, 0xb0, 0x81, 0x14, 0x69, 0x29, 0x6a, 0x98, 0x37, 0xd1, 0xe9, 0x5b, 0x5d, 0x9d, 0x66, 0x1d, 0x21, 0xa1, 0xc2, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6084 = { .name = "ecdsa_secp256k1_sha512_6084", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6084_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6084_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6085 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6085_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6085_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6085_sig[] = { 0x0b, 0x70, 0x3f, 0xd7, 0x5b, 0xdd, 0x8d, 0xce, 0x48, 0x20, 0xfe, 0x13, 0x0a, 0x0b, 0x0a, 0xf1, 0x7a, 0xad, 0x4e, 0x46, 0x81, 0xb0, 0x25, 0x48, 0x64, 0xd5, 0xd6, 0xf8, 0x93, 0x1f, 0xf5, 0x73, 0x40, 0x45, 0x21, 0xac, 0xf8, 0x4e, 0x72, 0xff, 0x22, 0xc2, 0xee, 0x05, 0xd1, 0x4a, 0x4b, 0xc7, 0xb7, 0x0e, 0x69, 0xad, 0xc7, 0x8c, 0xaf, 0x81, 0x35, 0x0e, 0x01, 0x37, 0x96, 0x94, 0xc3, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6085 = { .name = "ecdsa_secp256k1_sha512_6085", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6085_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6085_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6086 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6086_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6086_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6086_sig[] = { 0x62, 0xf0, 0xdf, 0x16, 0x50, 0x56, 0x0a, 0x58, 0x00, 0xfa, 0x67, 0x03, 0x77, 0xa4, 0x31, 0x7a, 0x60, 0x4d, 0x64, 0x75, 0xc4, 0x90, 0x06, 0x6c, 0xe1, 0x56, 0x38, 0xf8, 0xd1, 0x33, 0x0b, 0x63, 0x96, 0x3e, 0xdf, 0x90, 0x51, 0x97, 0x09, 0x68, 0x18, 0x36, 0x8a, 0x99, 0x3f, 0xbf, 0xfe, 0x32, 0x90, 0x8a, 0x57, 0x15, 0x3e, 0x6a, 0x16, 0x12, 0xba, 0xe6, 0xee, 0x9e, 0xe8, 0xa8, 0xa7, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6086 = { .name = "ecdsa_secp256k1_sha512_6086", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6086_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6086_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6087 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6087_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6087_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6087_sig[] = { 0x29, 0x01, 0xad, 0xe6, 0x94, 0xd4, 0xb9, 0xc3, 0x76, 0xb3, 0x24, 0x40, 0x18, 0xe5, 0x7b, 0xcd, 0xe7, 0x05, 0x7e, 0x8e, 0x11, 0xdd, 0x0f, 0x7d, 0x07, 0x08, 0x0c, 0xdd, 0x1a, 0x39, 0x19, 0x4b, 0xee, 0x65, 0xa4, 0xc2, 0xba, 0xa7, 0x0f, 0x8e, 0x23, 0x6c, 0xeb, 0xa9, 0xee, 0xd4, 0x00, 0xd8, 0x99, 0xf7, 0x52, 0x76, 0xf9, 0x4e, 0x4b, 0x79, 0x97, 0xb2, 0xb0, 0x1a, 0xc0, 0x08, 0xbb, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6087 = { .name = "ecdsa_secp256k1_sha512_6087", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6087_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6087_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6088 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6088_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6088_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6088_sig[] = { 0xaa, 0x9c, 0x8e, 0x53, 0x11, 0xb2, 0x32, 0xb4, 0xce, 0x9d, 0xb0, 0x38, 0x92, 0xf2, 0x6e, 0xb7, 0x7d, 0x65, 0x5c, 0x6f, 0xf0, 0x9a, 0x59, 0x94, 0x24, 0xab, 0xbd, 0x4b, 0x11, 0xe7, 0x50, 0xbe, 0xc1, 0x03, 0x4c, 0x44, 0xb0, 0x2e, 0x2f, 0xdf, 0x05, 0xe1, 0xba, 0x5e, 0xeb, 0xdf, 0x95, 0x4c, 0x5a, 0x01, 0x79, 0x46, 0x00, 0x05, 0x9e, 0x05, 0xe5, 0xc7, 0x3d, 0x54, 0x2d, 0xa3, 0xee, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6088 = { .name = "ecdsa_secp256k1_sha512_6088", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6088_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6088_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6089 for ECDSA, tcId is 72 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6089_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6089_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6089_sig[] = { 0x2f, 0xeb, 0xea, 0x01, 0x6e, 0x55, 0x05, 0x9e, 0x91, 0xe1, 0x57, 0xb9, 0x88, 0xf8, 0x60, 0x48, 0xdb, 0x57, 0xc3, 0x7f, 0xd1, 0x22, 0xf5, 0xcc, 0x60, 0x16, 0x9f, 0xf4, 0xfc, 0xb4, 0x86, 0x3c, 0xeb, 0x19, 0xcb, 0xc3, 0x5b, 0x30, 0x61, 0xe1, 0xac, 0x4b, 0x59, 0xb9, 0x2d, 0x1f, 0x73, 0x2c, 0xea, 0x32, 0x12, 0xdc, 0xbe, 0x94, 0x3c, 0xca, 0xd8, 0x2d, 0x32, 0x74, 0x0b, 0xc2, 0x2c, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6089 = { .name = "ecdsa_secp256k1_sha512_6089", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6089_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6089_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6090 for ECDSA, tcId is 73 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6090_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6090_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6090_sig[] = { 0x2b, 0xe4, 0x63, 0xff, 0x06, 0xaf, 0x20, 0x96, 0xdd, 0x62, 0xf0, 0x32, 0x6e, 0x1a, 0xf5, 0x1c, 0x58, 0x5f, 0x18, 0xca, 0x8f, 0x8a, 0xa3, 0x61, 0xde, 0xdc, 0xf5, 0x5d, 0x54, 0x3e, 0x6b, 0x7d, 0xf5, 0x6a, 0xfd, 0x59, 0xda, 0xd4, 0x25, 0x30, 0xd9, 0x4f, 0x11, 0xc5, 0x9a, 0x64, 0x08, 0xc5, 0x48, 0x26, 0xb7, 0xa9, 0xef, 0x83, 0xf4, 0xd0, 0x20, 0xf2, 0x09, 0xd7, 0x1f, 0x9b, 0x74, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6090 = { .name = "ecdsa_secp256k1_sha512_6090", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6090_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6090_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6091 for ECDSA, tcId is 74 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6091_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6091_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6091_sig[] = { 0xf6, 0x1f, 0x64, 0xde, 0xfc, 0x45, 0xab, 0xe2, 0x84, 0xb3, 0x91, 0x61, 0xb4, 0x95, 0x85, 0xf2, 0x1e, 0xde, 0xf1, 0xe8, 0x8d, 0x06, 0x38, 0x9e, 0x5b, 0x5a, 0xac, 0xbb, 0x39, 0x4c, 0xe4, 0xdc, 0xa5, 0xa2, 0x7e, 0x17, 0xdf, 0x10, 0xae, 0xda, 0xce, 0x97, 0xeb, 0x2c, 0x48, 0x65, 0x9f, 0x69, 0xb5, 0x8c, 0xfe, 0x76, 0xa1, 0xf1, 0xac, 0x30, 0xfe, 0xa3, 0x04, 0x36, 0x55, 0xbd, 0xe5, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6091 = { .name = "ecdsa_secp256k1_sha512_6091", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6091_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6091_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6092 for ECDSA, tcId is 75 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6092_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6092_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6092_sig[] = { 0x05, 0x21, 0x34, 0xea, 0xe1, 0x3c, 0x1d, 0xec, 0x5a, 0xc5, 0xaa, 0x46, 0x18, 0x63, 0x91, 0x78, 0x6f, 0x5b, 0x60, 0x59, 0x1c, 0xb0, 0xdd, 0x30, 0xbf, 0xc6, 0x1e, 0x89, 0x48, 0x6a, 0xbf, 0xe2, 0x09, 0xcd, 0xaa, 0x27, 0x9c, 0x4f, 0x0d, 0x3d, 0x5a, 0xe0, 0x0e, 0x0d, 0x74, 0xe7, 0x33, 0xa2, 0x60, 0xb8, 0xb1, 0x20, 0xa1, 0xbd, 0xa7, 0xe5, 0xa9, 0x01, 0x94, 0xec, 0x44, 0x2e, 0x59, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6092 = { .name = "ecdsa_secp256k1_sha512_6092", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6092_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6092_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6093 for ECDSA, tcId is 76 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6093_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6093_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6093_sig[] = { 0x24, 0x82, 0x46, 0x14, 0x68, 0x6b, 0x80, 0xf3, 0xb7, 0x38, 0x97, 0x0a, 0x27, 0x81, 0x6f, 0x58, 0xcf, 0x10, 0x3c, 0x4a, 0x93, 0xc2, 0xd6, 0xb0, 0xf5, 0xf6, 0xde, 0x65, 0xa6, 0x55, 0x01, 0xe3, 0x18, 0x0e, 0x58, 0x01, 0xa5, 0x93, 0x06, 0x3e, 0x75, 0xb8, 0x3c, 0xd7, 0xab, 0x8e, 0x52, 0x57, 0x5a, 0x01, 0x3a, 0x1b, 0xe5, 0xcd, 0xee, 0xb0, 0x5b, 0x30, 0xe3, 0xac, 0x9d, 0xc4, 0xed, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6093 = { .name = "ecdsa_secp256k1_sha512_6093", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6093_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6093_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6094 for ECDSA, tcId is 77 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6094_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6094_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6094_sig[] = { 0x2f, 0xf7, 0xa5, 0xab, 0x2f, 0x1a, 0x33, 0x23, 0x65, 0x1a, 0x0d, 0x17, 0xc4, 0x26, 0x36, 0x72, 0xee, 0x4d, 0x2c, 0x56, 0x0c, 0xda, 0x94, 0xe7, 0xd5, 0x2e, 0xe7, 0x55, 0x13, 0x8b, 0xb0, 0x45, 0x54, 0x2c, 0xe8, 0x3d, 0x8d, 0x9d, 0x44, 0x13, 0x57, 0xe2, 0x4b, 0x61, 0x8b, 0x56, 0x95, 0x16, 0x4d, 0x43, 0x91, 0x79, 0x1c, 0xff, 0x62, 0xee, 0xb0, 0x16, 0x09, 0xd1, 0xd7, 0xcb, 0x1c, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6094 = { .name = "ecdsa_secp256k1_sha512_6094", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6094_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6094_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6095 for ECDSA, tcId is 78 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6095_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6095_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6095_sig[] = { 0xae, 0x44, 0x6d, 0x1a, 0x81, 0x76, 0x6d, 0x21, 0xdd, 0x7f, 0xc5, 0x15, 0xd0, 0xa9, 0x56, 0x60, 0x5d, 0x0c, 0xde, 0x26, 0xd6, 0x08, 0x6a, 0x76, 0xf8, 0xff, 0xc8, 0x1a, 0x6d, 0xfb, 0xea, 0x46, 0x4f, 0xcc, 0xef, 0x9f, 0x75, 0xe9, 0x4a, 0xbc, 0x7e, 0xb3, 0xf2, 0xbd, 0xca, 0xfd, 0xc5, 0xd9, 0x7d, 0x61, 0xb9, 0xd9, 0x50, 0xa0, 0x60, 0x10, 0xab, 0x4c, 0x54, 0xe3, 0xda, 0x7f, 0xd4, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6095 = { .name = "ecdsa_secp256k1_sha512_6095", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6095_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6095_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6096 for ECDSA, tcId is 79 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6096_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6096_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6096_sig[] = { 0x39, 0x57, 0xcf, 0xf4, 0xa7, 0x5f, 0xc6, 0x03, 0x9c, 0x0b, 0x0c, 0x2e, 0x47, 0xeb, 0x9b, 0x07, 0xff, 0x6e, 0xc5, 0xdc, 0x8a, 0x3c, 0x33, 0x16, 0x59, 0x0a, 0x7e, 0xc9, 0xa1, 0xd7, 0xd9, 0x93, 0x4e, 0x57, 0x8e, 0xe6, 0x59, 0x4a, 0x00, 0xcb, 0x80, 0xc6, 0x40, 0xcb, 0x95, 0x89, 0xd6, 0x16, 0xdb, 0xd1, 0xce, 0xcd, 0xa2, 0xd1, 0x5d, 0xcc, 0x00, 0x62, 0xf3, 0x06, 0x86, 0xd6, 0x07, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6096 = { .name = "ecdsa_secp256k1_sha512_6096", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6096_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6096_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6097 for ECDSA, tcId is 80 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6097_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6097_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6097_sig[] = { 0x43, 0x7c, 0x36, 0x03, 0x17, 0x37, 0xa3, 0x14, 0x0d, 0xc3, 0x0e, 0xed, 0x28, 0x1a, 0xda, 0xc8, 0xe9, 0x07, 0x41, 0x87, 0xaa, 0xd4, 0x15, 0x02, 0xa3, 0xb9, 0xa3, 0xbf, 0xd4, 0xef, 0x25, 0x2c, 0xda, 0x13, 0xf8, 0x8f, 0x63, 0x32, 0x02, 0xb9, 0xb9, 0x51, 0x7b, 0x93, 0xa6, 0xc0, 0x8a, 0x7b, 0x8e, 0x68, 0x58, 0x73, 0x4e, 0x88, 0x94, 0xb1, 0xa6, 0x4c, 0x6e, 0xc0, 0x8f, 0x1d, 0x04, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6097 = { .name = "ecdsa_secp256k1_sha512_6097", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6097_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6097_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6098 for ECDSA, tcId is 81 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6098_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6098_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6098_sig[] = { 0x82, 0x8c, 0x12, 0xfd, 0x9f, 0xe3, 0x1f, 0x91, 0xbd, 0x8f, 0x58, 0xaa, 0xc7, 0x2e, 0xe6, 0x48, 0x5e, 0x34, 0xce, 0xdd, 0xf9, 0x19, 0x27, 0xcf, 0x3a, 0x09, 0xb6, 0x33, 0x63, 0xb9, 0xd8, 0xe9, 0x0e, 0x88, 0x96, 0x64, 0xa8, 0xc9, 0x86, 0x19, 0xca, 0xb5, 0x72, 0x68, 0x70, 0x64, 0xed, 0xb4, 0xf0, 0x50, 0x0f, 0x83, 0x24, 0xa5, 0xdf, 0x0b, 0xfb, 0x5a, 0x43, 0x1a, 0x3c, 0xb1, 0xca, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6098 = { .name = "ecdsa_secp256k1_sha512_6098", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6098_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6098_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6099 for ECDSA, tcId is 82 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6099_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6099_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6099_sig[] = { 0x80, 0x7c, 0xb3, 0x4a, 0xa6, 0xea, 0x48, 0xb1, 0x75, 0xf4, 0x1f, 0x3a, 0xfd, 0xf7, 0x0a, 0x10, 0x9d, 0x2b, 0x74, 0x6a, 0xe4, 0x8e, 0x08, 0x67, 0x7c, 0xda, 0xfc, 0x33, 0xd9, 0x16, 0xb2, 0xda, 0x41, 0x98, 0x0e, 0x6f, 0x7a, 0xd1, 0x99, 0x44, 0xd2, 0x78, 0x85, 0x1f, 0x98, 0xe0, 0xa6, 0x22, 0x0a, 0xe8, 0x88, 0x96, 0x4a, 0xe8, 0x1a, 0x66, 0x7a, 0x63, 0xfe, 0xc2, 0x14, 0x49, 0x33, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6099 = { .name = "ecdsa_secp256k1_sha512_6099", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6099_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6099_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6100 for ECDSA, tcId is 83 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6100_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6100_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6100_sig[] = { 0xa9, 0x98, 0xf9, 0xf0, 0xda, 0xf0, 0x2f, 0x71, 0x7f, 0x52, 0x92, 0x14, 0x2d, 0xca, 0x44, 0x7c, 0x72, 0x2d, 0x23, 0x94, 0xda, 0xe0, 0xc8, 0x49, 0x10, 0x43, 0x37, 0x54, 0x66, 0x97, 0x16, 0xac, 0x82, 0x6f, 0xc3, 0x72, 0x69, 0x53, 0x9c, 0xf8, 0xa9, 0x89, 0x97, 0xf8, 0xa0, 0x26, 0x8b, 0xff, 0xfe, 0x88, 0x8d, 0x6c, 0x23, 0xbc, 0x68, 0xad, 0x7c, 0x75, 0x9d, 0xb4, 0x7f, 0x65, 0xa9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6100 = { .name = "ecdsa_secp256k1_sha512_6100", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6100_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6100_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6100_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6101 for ECDSA, tcId is 84 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6101_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6101_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6101_sig[] = { 0xf1, 0x51, 0xb6, 0x14, 0xaf, 0xe5, 0xbc, 0x9d, 0x51, 0x1d, 0x0c, 0x34, 0xa7, 0xeb, 0x44, 0x28, 0x39, 0x21, 0x27, 0x2e, 0x91, 0xb3, 0xe5, 0xd0, 0x28, 0x21, 0xcf, 0x7a, 0x43, 0xa9, 0x2b, 0xc5, 0x09, 0x7a, 0xa3, 0x3d, 0xc5, 0x0e, 0xbf, 0x8f, 0xea, 0x03, 0x6c, 0xd7, 0xe2, 0x24, 0xa4, 0xd3, 0x8a, 0xa2, 0x07, 0x73, 0xe5, 0xa7, 0x8d, 0xdb, 0x83, 0xa2, 0xf3, 0xb5, 0x79, 0xb2, 0xef, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6101 = { .name = "ecdsa_secp256k1_sha512_6101", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6101_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6101_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6101_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6102 for ECDSA, tcId is 85 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6102_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6102_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6102_sig[] = { 0x5f, 0x21, 0x58, 0x53, 0x81, 0xf5, 0xf4, 0x2e, 0x9f, 0x76, 0xbe, 0x3f, 0x61, 0xf4, 0xcf, 0xd6, 0x47, 0x6e, 0xcc, 0x6f, 0x06, 0xcd, 0x4f, 0xbc, 0xf1, 0x3e, 0x08, 0xc2, 0x7f, 0x42, 0x61, 0x48, 0x95, 0xd5, 0xb2, 0xde, 0xab, 0xf1, 0x98, 0x91, 0xed, 0xd4, 0x1a, 0xc5, 0x2d, 0x90, 0x72, 0xfa, 0xde, 0xbb, 0x2f, 0x01, 0x45, 0xbe, 0xc9, 0xb9, 0x16, 0xf6, 0x8f, 0xd1, 0xfb, 0xcf, 0xb3, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6102 = { .name = "ecdsa_secp256k1_sha512_6102", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6102_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6102_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6102_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6103 for ECDSA, tcId is 86 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6103_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6103_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6103_sig[] = { 0xbd, 0xc3, 0x61, 0xe6, 0x89, 0x84, 0x48, 0x2d, 0x7b, 0x16, 0x9b, 0xc5, 0xe6, 0xcc, 0xf8, 0x2d, 0x22, 0x63, 0x87, 0x1b, 0xe7, 0x49, 0xd6, 0x7a, 0x44, 0xf5, 0x48, 0xd3, 0x2b, 0xca, 0xf5, 0xf1, 0x37, 0x56, 0x14, 0xfa, 0x41, 0x34, 0xd5, 0x05, 0x5a, 0xc1, 0x17, 0xa6, 0xea, 0x94, 0x8b, 0x74, 0x26, 0x9b, 0x80, 0x63, 0xe3, 0x92, 0x59, 0xd4, 0x94, 0xa7, 0x54, 0x4a, 0xfb, 0x62, 0x91, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6103 = { .name = "ecdsa_secp256k1_sha512_6103", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6103_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6103_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6103_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6104 for ECDSA, tcId is 87 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6104_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6104_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6104_sig[] = { 0x57, 0x73, 0xb0, 0x16, 0xdf, 0xfa, 0xc8, 0x65, 0xab, 0x00, 0x8a, 0xbe, 0x8a, 0x06, 0x35, 0x3d, 0x19, 0x7b, 0x4d, 0xff, 0x32, 0x40, 0x3d, 0x7c, 0xe9, 0x8a, 0xda, 0x4d, 0x20, 0xea, 0x8a, 0x00, 0xd6, 0x0d, 0xe9, 0xc9, 0x8c, 0xf5, 0x0e, 0xff, 0x05, 0x15, 0xb9, 0x62, 0xdf, 0xfd, 0x6a, 0xac, 0x8a, 0x1b, 0x72, 0xbc, 0x9c, 0xfa, 0xf6, 0xbd, 0xa1, 0x2b, 0x99, 0xf6, 0x3e, 0xb9, 0x76, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6104 = { .name = "ecdsa_secp256k1_sha512_6104", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6104_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6104_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6104_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6105 for ECDSA, tcId is 88 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6105_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6105_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6105_sig[] = { 0x57, 0xb7, 0x47, 0xd2, 0x1f, 0xc8, 0x98, 0x47, 0x2a, 0x88, 0x8b, 0x88, 0x69, 0x3a, 0x98, 0x9e, 0xab, 0xaf, 0x14, 0x33, 0x96, 0xe4, 0xcb, 0x2d, 0xe4, 0xaf, 0x19, 0x38, 0x6f, 0xba, 0x38, 0x4f, 0x7c, 0x99, 0xf6, 0x39, 0x04, 0x19, 0x1a, 0x44, 0x64, 0xd0, 0xd2, 0x3c, 0xa5, 0x60, 0xd5, 0x55, 0x88, 0x95, 0xcd, 0xcf, 0xf9, 0x3a, 0xf4, 0xb0, 0x0c, 0x1c, 0x66, 0xca, 0x2d, 0x97, 0x43, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6105 = { .name = "ecdsa_secp256k1_sha512_6105", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6105_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6105_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6105_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6106 for ECDSA, tcId is 89 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6106_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6106_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6106_sig[] = { 0x85, 0x4b, 0xe2, 0xbf, 0x30, 0x2a, 0x2d, 0x6d, 0xb4, 0x37, 0xeb, 0x9e, 0x78, 0x70, 0x36, 0x73, 0xc1, 0xc7, 0x37, 0x13, 0x99, 0xe6, 0x8c, 0xaa, 0x86, 0x25, 0xbb, 0x13, 0xc7, 0xaa, 0x0f, 0xec, 0x8f, 0xd2, 0x26, 0x07, 0xe0, 0x16, 0x9e, 0xb2, 0xe2, 0xe0, 0x0c, 0x4a, 0xf8, 0x98, 0xfd, 0x2a, 0x60, 0x9d, 0xc5, 0x7a, 0x9f, 0xa9, 0x4a, 0x7f, 0x93, 0x37, 0x20, 0x98, 0xfa, 0x67, 0x56, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6106 = { .name = "ecdsa_secp256k1_sha512_6106", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6106_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6106_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6106_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6107 for ECDSA, tcId is 90 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6107_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6107_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6107_sig[] = { 0xeb, 0xb3, 0x35, 0x9d, 0xe3, 0xb1, 0x3a, 0x51, 0x85, 0x45, 0xa8, 0x6b, 0x7f, 0xdd, 0x92, 0xf4, 0x79, 0x32, 0x25, 0xb8, 0xca, 0x45, 0x55, 0xa6, 0xbd, 0x41, 0x82, 0x92, 0x2b, 0x04, 0x52, 0xbe, 0x83, 0xfa, 0xa7, 0xdf, 0xf1, 0xaa, 0x0e, 0xed, 0x89, 0xa7, 0xdd, 0xcd, 0xaa, 0x5d, 0x71, 0x6b, 0xa6, 0x25, 0x3c, 0x5c, 0x21, 0xf7, 0x12, 0x2c, 0x27, 0x55, 0xeb, 0x78, 0xb2, 0x88, 0x84, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6107 = { .name = "ecdsa_secp256k1_sha512_6107", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6107_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6107_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6107_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6108 for ECDSA, tcId is 91 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6108_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6108_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6108_sig[] = { 0x8b, 0xc9, 0x1c, 0xfc, 0xfc, 0x85, 0xba, 0x8a, 0xa1, 0x71, 0xb7, 0x03, 0xa3, 0x30, 0xe3, 0x98, 0xdf, 0x44, 0x60, 0xd2, 0x26, 0x02, 0xe7, 0x3e, 0x32, 0x74, 0x23, 0xeb, 0xf9, 0x8b, 0xf6, 0x32, 0xec, 0x75, 0x69, 0x07, 0x2a, 0xa7, 0x3f, 0xf1, 0x9f, 0x18, 0x3d, 0xaf, 0x43, 0x3a, 0xbf, 0xf1, 0x42, 0xd7, 0xd5, 0xed, 0xce, 0xb2, 0x5b, 0x77, 0x1d, 0x85, 0x3a, 0xcf, 0x0f, 0xbd, 0x68, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6108 = { .name = "ecdsa_secp256k1_sha512_6108", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6108_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6108_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6108_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6109 for ECDSA, tcId is 92 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6109_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6109_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6109_sig[] = { 0x89, 0x5b, 0x07, 0xc0, 0x45, 0x0e, 0xd6, 0xf4, 0x94, 0x16, 0x33, 0xa0, 0x53, 0xc9, 0x78, 0x12, 0x8c, 0x46, 0xe5, 0x22, 0x5c, 0x00, 0xeb, 0x00, 0x9c, 0x3c, 0x6c, 0xee, 0x5e, 0xb2, 0xb8, 0x42, 0xc9, 0x82, 0x81, 0x8b, 0x26, 0x0f, 0x16, 0x50, 0xe0, 0x3e, 0xba, 0x8f, 0x9d, 0xb1, 0xa2, 0xca, 0x79, 0xc3, 0xf8, 0x04, 0xdb, 0xe7, 0xd1, 0x72, 0x23, 0x32, 0x60, 0xe1, 0xa9, 0xc1, 0x06, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6109 = { .name = "ecdsa_secp256k1_sha512_6109", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6109_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6109_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6109_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6110 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6110_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6110_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6110_sig[] = { 0xd5, 0xe1, 0x52, 0xec, 0x30, 0x40, 0x90, 0xd7, 0x64, 0xfd, 0x7a, 0xe6, 0x1a, 0xbe, 0xea, 0xdf, 0xf2, 0xfe, 0xe8, 0xdf, 0x3d, 0xcc, 0xd8, 0xfb, 0x44, 0xd2, 0xaf, 0x5a, 0x8d, 0xbe, 0xe0, 0xbc, 0x72, 0x51, 0x8d, 0xc1, 0xec, 0xc9, 0x93, 0xfa, 0xad, 0xff, 0xc3, 0x42, 0x65, 0x94, 0xfe, 0x20, 0x24, 0xc7, 0xc8, 0x4b, 0xa1, 0x01, 0xa9, 0x27, 0x4d, 0x88, 0x00, 0x93, 0x93, 0x10, 0x3f, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6110 = { .name = "ecdsa_secp256k1_sha512_6110", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6110_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6110_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6110_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6111 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6111_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6111_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6111_sig[] = { 0x12, 0x98, 0xb1, 0x31, 0xce, 0x97, 0xa5, 0x28, 0xe5, 0xda, 0xe0, 0x5d, 0x92, 0xb2, 0x86, 0xe2, 0x44, 0x7b, 0x17, 0xec, 0x00, 0x22, 0x67, 0xb9, 0xe8, 0xf0, 0x37, 0x84, 0xd4, 0x07, 0x4b, 0xd1, 0xed, 0xf2, 0x23, 0xad, 0x9c, 0x30, 0x8a, 0xef, 0x22, 0xe1, 0xe0, 0xc2, 0x4a, 0x20, 0x26, 0x8f, 0x96, 0x6c, 0xc2, 0xb9, 0xca, 0x4d, 0x94, 0x19, 0x45, 0xbb, 0xca, 0x05, 0x7d, 0xb9, 0x2d, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6111 = { .name = "ecdsa_secp256k1_sha512_6111", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6111_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6111_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6111_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6112 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6112_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6112_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6112_sig[] = { 0x1e, 0x79, 0xb3, 0x92, 0x1d, 0x23, 0xd2, 0x90, 0xa5, 0x7d, 0x08, 0x95, 0x8d, 0x3a, 0xd8, 0x30, 0x5e, 0xc4, 0x44, 0xef, 0xe1, 0x28, 0x1c, 0x98, 0xfd, 0xa4, 0x4e, 0x8a, 0xf7, 0x64, 0x8f, 0x49, 0xf4, 0xc7, 0x61, 0x0a, 0xd1, 0xba, 0x93, 0x39, 0x17, 0x8c, 0x50, 0xe7, 0x97, 0x9b, 0x5a, 0xa9, 0xaf, 0x07, 0xd8, 0x14, 0x3e, 0x59, 0xd1, 0x3a, 0x2e, 0x84, 0xf9, 0x8f, 0x37, 0x10, 0x1e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6112 = { .name = "ecdsa_secp256k1_sha512_6112", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6112_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6112_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6112_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6113 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6113_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6113_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6113_sig[] = { 0xe4, 0x55, 0xf4, 0x64, 0xe0, 0xed, 0xff, 0x9c, 0x95, 0x9f, 0x84, 0xf0, 0x81, 0x82, 0x88, 0x96, 0x14, 0x9a, 0x33, 0x03, 0x61, 0xff, 0x2d, 0x16, 0xd5, 0xa2, 0x44, 0x8c, 0x9d, 0x68, 0x36, 0x84, 0x35, 0x1c, 0xfa, 0x2f, 0x29, 0xa1, 0x31, 0x8e, 0xbb, 0x3a, 0x46, 0xf0, 0xa3, 0x6d, 0xf8, 0x95, 0x40, 0x43, 0x94, 0x9b, 0x8d, 0x7c, 0xea, 0x94, 0xea, 0xcf, 0x99, 0x10, 0x8b, 0x4d, 0x3f, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6113 = { .name = "ecdsa_secp256k1_sha512_6113", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6113_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6113_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6113_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6114 for ECDSA, tcId is 97 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6114_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6114_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6114_sig[] = { 0xa8, 0x85, 0x77, 0x0c, 0x9f, 0xfe, 0xf3, 0x3f, 0x0c, 0x11, 0x24, 0x50, 0x64, 0x93, 0x6e, 0x3d, 0xd1, 0x65, 0xea, 0x26, 0x33, 0x57, 0x5a, 0x6a, 0x15, 0x53, 0x68, 0x67, 0x03, 0x51, 0xf7, 0x26, 0xde, 0x31, 0xe6, 0xa5, 0x86, 0x26, 0xa4, 0x1f, 0xd0, 0x29, 0xcf, 0x76, 0x6e, 0xf4, 0x4b, 0x82, 0x73, 0xb8, 0x85, 0x58, 0xe2, 0x45, 0x2e, 0x89, 0x39, 0x78, 0xfb, 0xdd, 0xa1, 0xe3, 0x21, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6114 = { .name = "ecdsa_secp256k1_sha512_6114", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6114_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6114_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6114_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6115 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6115_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6115_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6115_sig[] = { 0x4b, 0x6b, 0x45, 0x14, 0x78, 0xba, 0x25, 0x3a, 0xe3, 0xc7, 0x5c, 0xa5, 0xb1, 0x8b, 0x70, 0xcc, 0xd3, 0xcc, 0xa4, 0x08, 0xed, 0x24, 0x5c, 0xb2, 0xaf, 0x33, 0x69, 0x54, 0x8d, 0xd2, 0xe5, 0x07, 0xfe, 0x47, 0x9b, 0x63, 0x1a, 0x34, 0x31, 0xb4, 0x27, 0x72, 0x92, 0x5c, 0xbf, 0xe8, 0xe7, 0x89, 0xf9, 0xc5, 0x5f, 0xb2, 0xfd, 0x1d, 0x7a, 0xb5, 0x16, 0x64, 0xcc, 0x2f, 0xa5, 0x71, 0xad, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6115 = { .name = "ecdsa_secp256k1_sha512_6115", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6115_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6115_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6115_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6116 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6116_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6116_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6116_sig[] = { 0x7c, 0xa7, 0x03, 0x76, 0x54, 0x7a, 0xd6, 0xd1, 0x8f, 0x8e, 0x53, 0x9f, 0x09, 0xdc, 0x26, 0x9e, 0xba, 0xa0, 0x68, 0x54, 0xc1, 0xad, 0xac, 0xd5, 0x8f, 0xdc, 0x73, 0x5e, 0xd3, 0xcf, 0x0c, 0x16, 0xf4, 0x76, 0x54, 0xf4, 0xc0, 0xac, 0x1b, 0x0e, 0x65, 0xb7, 0x12, 0x30, 0x0e, 0x3b, 0xb4, 0x72, 0x98, 0x3b, 0x11, 0x6d, 0xb5, 0x20, 0x65, 0x20, 0xea, 0xbd, 0x88, 0x6d, 0xc7, 0x06, 0xb2, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6116 = { .name = "ecdsa_secp256k1_sha512_6116", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6116_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6116_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6116_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6117 for ECDSA, tcId is 100 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6117_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6117_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6117_sig[] = { 0x38, 0x85, 0x14, 0xd1, 0x47, 0x66, 0x4f, 0xbb, 0x37, 0x27, 0x1c, 0xb8, 0x69, 0x3e, 0x47, 0x45, 0x9c, 0x06, 0x27, 0xd6, 0xb1, 0xdd, 0x52, 0xdf, 0xf1, 0xd3, 0x94, 0x7d, 0xfc, 0x9c, 0xab, 0xec, 0x99, 0xd3, 0xd4, 0x08, 0x14, 0xaa, 0x17, 0x7b, 0xe9, 0x9e, 0x48, 0x19, 0x69, 0x69, 0x96, 0xbc, 0x75, 0x07, 0x3f, 0x45, 0x18, 0x95, 0x55, 0x87, 0xcd, 0x56, 0xb5, 0xad, 0x8b, 0xbc, 0x2c, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6117 = { .name = "ecdsa_secp256k1_sha512_6117", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6117_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6117_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6117_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6118 for ECDSA, tcId is 101 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6118_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6118_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6118_sig[] = { 0x44, 0xd3, 0xac, 0x50, 0xd9, 0xb6, 0x56, 0x01, 0xd7, 0x9b, 0x47, 0xd6, 0xc5, 0xd9, 0x83, 0x94, 0xce, 0xf1, 0x55, 0x21, 0x1f, 0xf3, 0x7d, 0x4b, 0xac, 0x15, 0xe0, 0xd4, 0x89, 0x08, 0x09, 0xb8, 0x3e, 0xa0, 0x38, 0x29, 0xaf, 0xb0, 0x54, 0x5e, 0x08, 0x83, 0x61, 0xa8, 0xcf, 0x95, 0x2a, 0xec, 0x17, 0xba, 0xb7, 0x63, 0x7f, 0xdd, 0xd6, 0xdb, 0x35, 0xf0, 0x39, 0x80, 0x35, 0x23, 0xc9, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6118 = { .name = "ecdsa_secp256k1_sha512_6118", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6118_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6118_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6118_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6119 for ECDSA, tcId is 102 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6119_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6119_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6119_sig[] = { 0xa3, 0x30, 0x04, 0xa2, 0xcd, 0x50, 0xa4, 0xf7, 0x04, 0x47, 0xfd, 0x38, 0x2e, 0x7f, 0xdc, 0x92, 0x57, 0xc4, 0xd9, 0xbe, 0x7b, 0x16, 0xe6, 0x86, 0xc5, 0x08, 0x2a, 0x23, 0x1e, 0xe7, 0xb0, 0x10, 0xd8, 0x7b, 0x96, 0xed, 0x3b, 0xee, 0xa5, 0x46, 0x52, 0x60, 0x70, 0x17, 0x70, 0x2c, 0xfc, 0xe5, 0xd4, 0xe7, 0xfc, 0xec, 0x1f, 0xdd, 0x28, 0xf4, 0x16, 0x81, 0xab, 0x80, 0xa5, 0xc5, 0xb6, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6119 = { .name = "ecdsa_secp256k1_sha512_6119", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6119_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6119_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6119_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6120 for ECDSA, tcId is 103 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6120_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6120_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6120_sig[] = { 0x66, 0x8a, 0xd1, 0x8c, 0xc2, 0x2c, 0x1d, 0x14, 0x98, 0xcc, 0x8e, 0x5a, 0x11, 0xe2, 0xbf, 0xc4, 0xc1, 0xe1, 0xfc, 0xf0, 0xa7, 0x35, 0x0a, 0x58, 0x06, 0xc5, 0x53, 0x3a, 0xe3, 0x32, 0xf0, 0xb1, 0xf5, 0x8b, 0x49, 0x36, 0x97, 0x71, 0xbd, 0x20, 0xbb, 0x08, 0xb6, 0x3d, 0x4a, 0x92, 0x12, 0xe2, 0xdc, 0x71, 0xda, 0x92, 0x57, 0xed, 0x37, 0x10, 0xd9, 0xea, 0xef, 0x9b, 0xee, 0x46, 0x9e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6120 = { .name = "ecdsa_secp256k1_sha512_6120", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6120_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6120_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6120_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6121 for ECDSA, tcId is 104 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6121_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6121_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6121_sig[] = { 0xf7, 0xcd, 0xcb, 0x02, 0x81, 0xc7, 0x07, 0x86, 0xcc, 0x36, 0x53, 0x82, 0x0d, 0x17, 0x56, 0xa7, 0x83, 0x95, 0xa9, 0xee, 0xea, 0xb2, 0xa4, 0xd1, 0x64, 0xe2, 0x60, 0xf6, 0x4e, 0xbf, 0xd6, 0xa8, 0xd9, 0x66, 0xc7, 0x44, 0x99, 0xca, 0xc9, 0x7c, 0xa8, 0xee, 0x67, 0x40, 0x0d, 0xf0, 0x1b, 0x14, 0x79, 0x3b, 0x6d, 0x7d, 0x07, 0x66, 0x8f, 0xc2, 0x02, 0xa9, 0x91, 0x8f, 0x3c, 0x04, 0x6e, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6121 = { .name = "ecdsa_secp256k1_sha512_6121", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6121_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6121_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6121_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6122 for ECDSA, tcId is 105 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6122_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6122_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6122_sig[] = { 0xde, 0x0e, 0x78, 0x1d, 0x9e, 0x3e, 0x7f, 0x73, 0x02, 0x14, 0x58, 0xfc, 0x12, 0x01, 0xfc, 0x02, 0x1e, 0x5c, 0x54, 0xf1, 0xfe, 0x40, 0xb1, 0xb1, 0x0d, 0xb8, 0xfc, 0xf1, 0x6e, 0xf7, 0xe5, 0x4a, 0x7d, 0x9d, 0xb9, 0x23, 0x21, 0xb5, 0xe5, 0xbb, 0x10, 0x59, 0x90, 0x14, 0x53, 0x90, 0x97, 0x93, 0x90, 0xd3, 0x23, 0x94, 0x11, 0x6f, 0x4e, 0x78, 0xaf, 0x34, 0xb8, 0x51, 0x05, 0xde, 0xe8, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6122 = { .name = "ecdsa_secp256k1_sha512_6122", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6122_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6122_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6122_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6123 for ECDSA, tcId is 106 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6123_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6123_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6123_sig[] = { 0x01, 0x1d, 0xac, 0x8e, 0xa3, 0x7f, 0x7b, 0xc6, 0xa5, 0x30, 0xa4, 0x2d, 0x0e, 0x3b, 0xec, 0x8c, 0x84, 0x56, 0x94, 0xf7, 0x3b, 0xec, 0x69, 0x50, 0x08, 0x1a, 0x6f, 0x99, 0x9c, 0xcd, 0xfb, 0xc6, 0x15, 0x3e, 0x57, 0xee, 0x45, 0xe0, 0xa3, 0x79, 0x83, 0x9f, 0x3b, 0x8f, 0x6f, 0xaf, 0x86, 0xde, 0x7a, 0x62, 0x6b, 0x21, 0x0f, 0x4c, 0x10, 0x07, 0xe4, 0x31, 0xf8, 0x42, 0xe3, 0x9b, 0xf7, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6123 = { .name = "ecdsa_secp256k1_sha512_6123", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6123_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6123_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6123_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6124 for ECDSA, tcId is 107 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6124_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6124_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6124_sig[] = { 0x63, 0xf9, 0xc4, 0x3a, 0x8c, 0xab, 0x49, 0xf5, 0x18, 0x68, 0x5a, 0x12, 0x0b, 0xd7, 0x3a, 0x4e, 0x59, 0x56, 0xf9, 0xf1, 0x67, 0xa7, 0x8d, 0x46, 0x61, 0xfc, 0x79, 0x5d, 0x41, 0xbe, 0x2a, 0xe1, 0x6a, 0xaf, 0x4f, 0x33, 0x84, 0xf1, 0x48, 0x9e, 0xf0, 0x26, 0xcb, 0x29, 0xe9, 0x7e, 0xa1, 0xb5, 0x56, 0x2f, 0xe8, 0xce, 0xb9, 0x97, 0x8d, 0x50, 0x6f, 0xb7, 0x06, 0x4f, 0x42, 0x7b, 0x9f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6124 = { .name = "ecdsa_secp256k1_sha512_6124", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6124_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6124_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6124_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6125 for ECDSA, tcId is 108 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6125_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6125_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6125_sig[] = { 0x7f, 0x0f, 0xd3, 0x73, 0x61, 0x66, 0x19, 0x5b, 0xa8, 0x10, 0xd5, 0xa2, 0xdf, 0xb5, 0xe1, 0xf0, 0x3a, 0xec, 0xe2, 0x17, 0x05, 0x10, 0xc8, 0xaa, 0x4c, 0xc4, 0xa0, 0xc9, 0x74, 0xa7, 0xc5, 0xd6, 0x37, 0x0c, 0x87, 0x72, 0xa7, 0x5d, 0x32, 0xe8, 0xc9, 0xcc, 0x10, 0x30, 0x04, 0xe7, 0x5e, 0x6d, 0x30, 0xa8, 0xac, 0x86, 0x11, 0xb8, 0x4b, 0x89, 0xc4, 0x1c, 0x65, 0x54, 0x21, 0x71, 0xbc, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6125 = { .name = "ecdsa_secp256k1_sha512_6125", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6125_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6125_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6125_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6126 for ECDSA, tcId is 109 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6126_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6126_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6126_sig[] = { 0xf9, 0x75, 0x19, 0x60, 0x86, 0xd1, 0x0f, 0x68, 0x3f, 0x4a, 0xa1, 0xa3, 0xc2, 0xd5, 0xfe, 0x13, 0xfd, 0x0f, 0x52, 0xee, 0x72, 0xaa, 0x3f, 0x78, 0x50, 0x06, 0xaa, 0x02, 0x4c, 0x75, 0x87, 0x35, 0x6a, 0x66, 0x36, 0x41, 0x56, 0xef, 0x21, 0xb5, 0xdf, 0xdc, 0xee, 0x60, 0xcc, 0xe8, 0xfb, 0x09, 0xc1, 0x20, 0x19, 0xbc, 0x57, 0x68, 0x48, 0xff, 0x73, 0xdb, 0x49, 0x85, 0x6a, 0xf7, 0x46, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6126 = { .name = "ecdsa_secp256k1_sha512_6126", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6126_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6126_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6126_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6127 for ECDSA, tcId is 110 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6127_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6127_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6127_sig[] = { 0x35, 0xfe, 0x6d, 0x9b, 0xf9, 0xf7, 0xd4, 0x76, 0x12, 0xc3, 0xf5, 0xbe, 0x6a, 0x4e, 0x9a, 0x0f, 0xb0, 0xc1, 0x48, 0x54, 0xd1, 0xa3, 0x77, 0xad, 0xfb, 0x54, 0x85, 0xd6, 0xe3, 0x83, 0x5c, 0x6f, 0xf9, 0x65, 0x87, 0xfc, 0x46, 0x0e, 0x7d, 0x07, 0x39, 0x6f, 0x9f, 0x2d, 0x06, 0x06, 0x93, 0xda, 0xe6, 0x32, 0x72, 0x12, 0x59, 0xe7, 0x7c, 0x90, 0xb8, 0x31, 0x40, 0x02, 0xa5, 0x23, 0x5d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6127 = { .name = "ecdsa_secp256k1_sha512_6127", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6127_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6127_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6127_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6128 for ECDSA, tcId is 111 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6128_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6128_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6128_sig[] = { 0x21, 0x0c, 0x7c, 0x9b, 0x23, 0x12, 0x93, 0xc8, 0xec, 0x09, 0xb0, 0xf6, 0x10, 0xd3, 0x17, 0x24, 0xa0, 0x45, 0xf6, 0xa3, 0x3f, 0x84, 0x42, 0x3f, 0xdd, 0x54, 0x1a, 0xc1, 0x1f, 0xf7, 0x89, 0x62, 0xe5, 0xa4, 0x0e, 0x6b, 0x80, 0xda, 0x99, 0xcf, 0xc4, 0x9c, 0xe9, 0x69, 0xf1, 0xf5, 0x91, 0x46, 0x83, 0x51, 0x83, 0xe6, 0x10, 0x01, 0xb4, 0x51, 0x3f, 0x92, 0x7b, 0x71, 0xec, 0x3b, 0x2a, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6128 = { .name = "ecdsa_secp256k1_sha512_6128", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6128_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6128_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6128_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6129 for ECDSA, tcId is 112 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6129_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6129_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6129_sig[] = { 0x09, 0xb7, 0xdc, 0xfa, 0xd2, 0xc8, 0x4b, 0x89, 0x82, 0x5c, 0xf3, 0xaa, 0xaf, 0xfe, 0xd5, 0x16, 0x64, 0xfa, 0xcc, 0xc0, 0xd1, 0x71, 0xa4, 0x33, 0x87, 0xa6, 0xff, 0x98, 0xaa, 0x12, 0x8a, 0x04, 0x27, 0x2b, 0x00, 0xe6, 0xe0, 0x91, 0x7a, 0xfe, 0x4f, 0xbe, 0x78, 0x26, 0x04, 0x42, 0x8e, 0x09, 0xfd, 0x91, 0xc3, 0x81, 0x25, 0xd5, 0x1c, 0x3b, 0xa0, 0x6c, 0xe3, 0x19, 0x8e, 0x6b, 0xf7, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6129 = { .name = "ecdsa_secp256k1_sha512_6129", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6129_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6129_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6129_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6130 for ECDSA, tcId is 113 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6130_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6130_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6130_sig[] = { 0x09, 0xc7, 0xc9, 0x96, 0x81, 0xc9, 0x15, 0x9b, 0x22, 0xc0, 0xa4, 0x67, 0x99, 0x95, 0x59, 0xa3, 0x1e, 0x27, 0x90, 0x75, 0xd3, 0x7e, 0xf8, 0x72, 0xa8, 0x8a, 0xe1, 0x35, 0x65, 0xf6, 0x14, 0x9b, 0xb0, 0xff, 0x95, 0x3b, 0xe1, 0x94, 0x0d, 0x2c, 0xf5, 0x48, 0x66, 0x3c, 0x1b, 0x4d, 0xb7, 0xb4, 0x16, 0x52, 0x1d, 0xb2, 0x89, 0x46, 0x77, 0x33, 0xb9, 0xa7, 0x66, 0x29, 0xf8, 0xab, 0x26, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6130 = { .name = "ecdsa_secp256k1_sha512_6130", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6130_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6130_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6130_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6131 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6131_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6131_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6131_sig[] = { 0x2b, 0xfa, 0xae, 0x0e, 0xa6, 0xd8, 0xba, 0xab, 0x3e, 0x02, 0xad, 0x7f, 0xa3, 0xdd, 0xa3, 0xce, 0x07, 0x25, 0xd1, 0x15, 0x33, 0xe3, 0x66, 0x64, 0x77, 0xf5, 0x4d, 0x69, 0x7e, 0x2c, 0xa9, 0xbc, 0x92, 0x89, 0xd5, 0xda, 0x44, 0x33, 0x95, 0xbc, 0xa1, 0x8f, 0xe9, 0xd1, 0xa4, 0xaf, 0xbe, 0x04, 0xa3, 0x2b, 0x4e, 0xcd, 0x25, 0x8e, 0xca, 0x6c, 0x17, 0x72, 0xac, 0xff, 0x2d, 0x0b, 0x9a, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6131 = { .name = "ecdsa_secp256k1_sha512_6131", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6131_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6131_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6131_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6132 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6132_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6132_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6132_sig[] = { 0x36, 0x88, 0x46, 0xed, 0xc6, 0x77, 0xae, 0x8f, 0xc2, 0x37, 0x06, 0x9c, 0xda, 0x71, 0x9a, 0xf3, 0xd7, 0xf1, 0x7c, 0xc1, 0x36, 0xfe, 0x44, 0x3b, 0x2a, 0xf6, 0x14, 0xcc, 0xfb, 0x48, 0x44, 0xab, 0x5e, 0xbe, 0x6c, 0x1d, 0x3e, 0x88, 0xbc, 0x4e, 0x29, 0x18, 0x41, 0xea, 0x97, 0xc8, 0x36, 0xbd, 0xcf, 0x67, 0xd9, 0xea, 0xbe, 0x92, 0x63, 0x46, 0xc5, 0xf4, 0x21, 0x05, 0xf7, 0xb3, 0x8f, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6132 = { .name = "ecdsa_secp256k1_sha512_6132", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6132_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6132_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6132_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6133 for ECDSA, tcId is 116 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6133_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6133_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6133_sig[] = { 0xf3, 0x36, 0xda, 0x82, 0xbe, 0xa2, 0xa1, 0x11, 0xbd, 0xde, 0xf6, 0xa2, 0x5d, 0xe4, 0xab, 0x87, 0xd7, 0xc9, 0x5a, 0xa8, 0x0d, 0x21, 0x83, 0x8f, 0x3a, 0x4e, 0xfa, 0x3d, 0x93, 0x46, 0x55, 0x5d, 0xda, 0x5a, 0xb6, 0x12, 0xb3, 0x27, 0xaa, 0x0f, 0xe9, 0x5d, 0x1c, 0xaf, 0x85, 0xf3, 0xb6, 0x69, 0x8c, 0x23, 0xa4, 0x72, 0x12, 0x00, 0x6c, 0x56, 0x67, 0xcf, 0xa9, 0x2a, 0xa3, 0xef, 0x4d, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6133 = { .name = "ecdsa_secp256k1_sha512_6133", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6133_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6133_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6133_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6134 for ECDSA, tcId is 117 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6134_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6134_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6134_sig[] = { 0x97, 0xc2, 0xfb, 0x98, 0x65, 0xf9, 0xe7, 0x6f, 0x8d, 0x54, 0xce, 0x95, 0x71, 0x20, 0xb6, 0x8c, 0xcb, 0x04, 0xcd, 0x31, 0x83, 0xda, 0xe7, 0x13, 0x0f, 0x73, 0x13, 0x9c, 0xd5, 0x66, 0x55, 0xcf, 0xfb, 0x63, 0xe3, 0x81, 0x76, 0xff, 0xac, 0x37, 0xd0, 0xec, 0x1e, 0x49, 0xc2, 0xe2, 0xef, 0xef, 0xf0, 0x4d, 0xff, 0xda, 0xd5, 0xa7, 0x5f, 0x35, 0x76, 0xf8, 0x27, 0x6c, 0xcc, 0xee, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6134 = { .name = "ecdsa_secp256k1_sha512_6134", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6134_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6134_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6134_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6135 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6135_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6135_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6135_sig[] = { 0x73, 0x93, 0xe0, 0x20, 0x7e, 0x07, 0xbd, 0x73, 0xb6, 0x74, 0xd3, 0x66, 0x7d, 0xfb, 0xc9, 0xc3, 0x00, 0x22, 0x57, 0x4d, 0x63, 0x07, 0x9a, 0x04, 0x0a, 0x23, 0xc0, 0xcd, 0x7e, 0x1b, 0x6a, 0xa6, 0x29, 0x94, 0xb3, 0x46, 0x84, 0x32, 0xfe, 0xcd, 0x0a, 0x32, 0x13, 0x41, 0x71, 0x17, 0x9d, 0x28, 0x09, 0x24, 0x4d, 0x58, 0x6b, 0xd9, 0x71, 0x12, 0x9c, 0xdb, 0xa7, 0x3f, 0xd3, 0xdc, 0x88, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6135 = { .name = "ecdsa_secp256k1_sha512_6135", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6135_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6135_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6135_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6136 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6136_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6136_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6136_sig[] = { 0x21, 0xe1, 0x94, 0x3d, 0x7d, 0x39, 0x6a, 0x8c, 0x46, 0x65, 0x8b, 0xed, 0xe4, 0xce, 0x15, 0x5c, 0x9a, 0x06, 0xf9, 0x29, 0xcf, 0x6a, 0xd2, 0x92, 0xd3, 0x2c, 0x91, 0xcf, 0x8f, 0x49, 0x38, 0x87, 0x30, 0x78, 0x3c, 0x68, 0x2c, 0xeb, 0xff, 0xfe, 0xc5, 0x78, 0x7d, 0x76, 0x2b, 0xd7, 0x25, 0xba, 0xfc, 0x9c, 0x40, 0x75, 0xad, 0x8e, 0xb1, 0x58, 0x21, 0x88, 0xf4, 0xc0, 0x5d, 0xd5, 0x16, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6136 = { .name = "ecdsa_secp256k1_sha512_6136", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6136_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6136_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6136_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6137 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6137_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6137_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6137_sig[] = { 0x5a, 0x26, 0x9e, 0xb4, 0x4e, 0x91, 0x0b, 0xfe, 0x8a, 0x26, 0x56, 0xde, 0xe4, 0x75, 0x56, 0xcb, 0x90, 0x8a, 0x41, 0x79, 0x17, 0xe2, 0x06, 0x8e, 0x20, 0xd2, 0x01, 0x72, 0x1f, 0x44, 0xf9, 0xb1, 0xe6, 0x9d, 0x46, 0x32, 0x04, 0xdc, 0xe7, 0x7c, 0x24, 0x94, 0x39, 0xf2, 0x2f, 0x77, 0xcc, 0x4c, 0x88, 0x13, 0x40, 0x12, 0xa2, 0x86, 0xb3, 0x6a, 0x95, 0x59, 0xf6, 0x94, 0x20, 0x37, 0x66, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6137 = { .name = "ecdsa_secp256k1_sha512_6137", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6137_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6137_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6137_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6138 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6138_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6138_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6138_sig[] = { 0xcb, 0x8c, 0x14, 0x6f, 0xb3, 0xd5, 0x88, 0x46, 0xe5, 0x74, 0x8c, 0x48, 0x74, 0x2a, 0xf2, 0xf1, 0xb7, 0x78, 0x05, 0xf6, 0xcd, 0x1e, 0x4e, 0xb9, 0x8d, 0x8c, 0x66, 0xcb, 0xdf, 0x5d, 0x64, 0x55, 0x17, 0xac, 0x99, 0x2e, 0x10, 0x25, 0x1e, 0x33, 0x44, 0x67, 0xf8, 0xe5, 0x7e, 0x2e, 0x1c, 0x26, 0x9d, 0xb8, 0xb1, 0x94, 0x69, 0x32, 0x1c, 0x74, 0xb4, 0x43, 0x97, 0x2a, 0x80, 0xf3, 0x8b, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6138 = { .name = "ecdsa_secp256k1_sha512_6138", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6138_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6138_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6138_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6139 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6139_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6139_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6139_sig[] = { 0x21, 0x2d, 0x84, 0xa1, 0x53, 0xdb, 0x81, 0xce, 0xa5, 0x21, 0x2f, 0xa7, 0xde, 0xe3, 0x1d, 0x59, 0xbd, 0xca, 0x13, 0x07, 0x27, 0x7a, 0x01, 0xb5, 0x93, 0x6c, 0x3a, 0xea, 0xd3, 0x1b, 0xf1, 0xe4, 0x52, 0x03, 0x05, 0xdb, 0xef, 0x2b, 0xda, 0x65, 0x26, 0xfa, 0x2c, 0xfc, 0xa7, 0x89, 0xa1, 0xc9, 0xac, 0xa5, 0xc2, 0xad, 0x4c, 0x00, 0x27, 0xcc, 0x8c, 0xf3, 0x88, 0x18, 0x13, 0xda, 0x8a, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6139 = { .name = "ecdsa_secp256k1_sha512_6139", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6139_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6139_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6139_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6140 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6140_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6140_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6140_sig[] = { 0x31, 0x0c, 0x82, 0x89, 0x2f, 0x57, 0x11, 0x34, 0xa3, 0x67, 0x25, 0xf4, 0xa3, 0x1c, 0x5c, 0xba, 0x8b, 0xc4, 0x6e, 0x65, 0x00, 0x2d, 0x73, 0xb1, 0x13, 0x64, 0x08, 0x44, 0x33, 0xd8, 0xda, 0x4a, 0x9c, 0xa5, 0x52, 0xac, 0xa8, 0x4b, 0x96, 0xcc, 0x94, 0x61, 0xe2, 0xb6, 0x5a, 0x64, 0x97, 0x51, 0x18, 0xea, 0x78, 0xb8, 0xb3, 0x55, 0xa0, 0xeb, 0xcc, 0x1a, 0x61, 0xde, 0x37, 0x87, 0x7d, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6140 = { .name = "ecdsa_secp256k1_sha512_6140", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6140_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6140_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6140_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6141 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6141_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6141_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6141_sig[] = { 0x48, 0x9d, 0xed, 0xa5, 0x80, 0xc6, 0x25, 0x33, 0x78, 0x3d, 0xf9, 0xfe, 0x62, 0xde, 0x34, 0xc2, 0xe2, 0xca, 0xb9, 0x1d, 0x67, 0x67, 0x09, 0xbe, 0xef, 0xf1, 0x3a, 0xfa, 0xc8, 0xe9, 0x0d, 0xb9, 0x32, 0xa8, 0x5a, 0x9c, 0x56, 0xf3, 0x08, 0xb7, 0xa7, 0x94, 0xdc, 0xce, 0x61, 0x4a, 0x5e, 0xd7, 0xe0, 0x85, 0x70, 0x30, 0xb8, 0x42, 0x9f, 0xe3, 0xb4, 0xe0, 0x7a, 0xd5, 0x33, 0xa5, 0xa0, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6141 = { .name = "ecdsa_secp256k1_sha512_6141", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6141_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6141_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6141_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6142 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6142_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6142_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6142_sig[] = { 0xe8, 0x89, 0x7c, 0x1c, 0xad, 0x1f, 0xc8, 0x70, 0xa7, 0xd3, 0x64, 0x67, 0x6a, 0x9d, 0x7f, 0x7c, 0xd3, 0xac, 0x95, 0x1f, 0x3b, 0xc3, 0xa9, 0xef, 0x1f, 0x72, 0x31, 0x46, 0x6c, 0x34, 0x93, 0xd7, 0xdd, 0x21, 0x28, 0xe8, 0x76, 0xd6, 0x2d, 0xa8, 0x2c, 0xfc, 0x5f, 0xc5, 0x08, 0xd3, 0x3b, 0xf6, 0x6b, 0x71, 0xc0, 0xa8, 0x4d, 0x0a, 0x9b, 0x7e, 0x47, 0xdf, 0xc6, 0x20, 0xf5, 0x84, 0x6b, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6142 = { .name = "ecdsa_secp256k1_sha512_6142", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6142_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6142_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6142_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6143 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6143_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6143_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6143_sig[] = { 0xb4, 0xd7, 0x71, 0xd1, 0x9f, 0xff, 0xb1, 0xfe, 0x5e, 0xad, 0x25, 0xef, 0x5d, 0xbf, 0x6b, 0x53, 0xd4, 0xd3, 0xda, 0xd2, 0x84, 0x64, 0x11, 0x08, 0xad, 0x84, 0xb2, 0x54, 0x1a, 0xd4, 0x35, 0xa4, 0x84, 0x3e, 0xcd, 0xc2, 0x64, 0x1b, 0x33, 0xa3, 0xae, 0x9a, 0xe1, 0x5d, 0x55, 0x9f, 0x62, 0x29, 0xd7, 0x30, 0x4e, 0xe5, 0xec, 0xab, 0xe0, 0x0d, 0xb7, 0x3b, 0xf2, 0xb6, 0xb5, 0xc6, 0xc2, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6143 = { .name = "ecdsa_secp256k1_sha512_6143", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6143_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6143_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6143_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6144 for ECDSA, tcId is 127 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6144_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6144_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6144_sig[] = { 0x5a, 0xb5, 0xfb, 0x31, 0x36, 0xfa, 0xbd, 0xbd, 0x22, 0x00, 0x96, 0x42, 0xdf, 0x03, 0x68, 0x59, 0x35, 0x81, 0x98, 0x95, 0xd6, 0x75, 0xfc, 0x28, 0x4e, 0x8b, 0x81, 0x12, 0xdb, 0x52, 0x2d, 0x08, 0xd8, 0x7e, 0xc8, 0x81, 0x73, 0xe8, 0x23, 0xed, 0x70, 0x43, 0x8f, 0xb1, 0x08, 0x8b, 0x00, 0x68, 0x93, 0x52, 0x54, 0x2f, 0xab, 0xad, 0x5e, 0x9f, 0xd6, 0xd4, 0xc3, 0xc5, 0x8f, 0x72, 0x2f, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6144 = { .name = "ecdsa_secp256k1_sha512_6144", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6144_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6144_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6144_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6145 for ECDSA, tcId is 128 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6145_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6145_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6145_sig[] = { 0xbe, 0x31, 0x01, 0x20, 0x16, 0x9f, 0x8d, 0x48, 0x8c, 0x6e, 0x5e, 0xc5, 0xb5, 0xe5, 0x88, 0xab, 0x8a, 0x65, 0x04, 0x01, 0x69, 0xd9, 0xef, 0xd3, 0x06, 0x2e, 0x0d, 0x05, 0xfd, 0x7d, 0x58, 0xdf, 0x45, 0x03, 0x3f, 0x29, 0x1f, 0xa2, 0x1a, 0x85, 0xcc, 0x08, 0xf7, 0x8f, 0xec, 0x2d, 0xbd, 0x94, 0x13, 0x55, 0x20, 0xde, 0x26, 0x13, 0x60, 0x72, 0x8b, 0x87, 0x43, 0xb5, 0x58, 0xed, 0x16, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6145 = { .name = "ecdsa_secp256k1_sha512_6145", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6145_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6145_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6145_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6146 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6146_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6146_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6146_sig[] = { 0xcd, 0x7f, 0xb3, 0xf2, 0xc2, 0x5d, 0xfa, 0xb6, 0xf9, 0xee, 0x83, 0xfc, 0xbb, 0x08, 0x69, 0x86, 0x80, 0xe9, 0xd1, 0xf3, 0xd4, 0x78, 0x15, 0xbc, 0x77, 0x2d, 0x71, 0x7a, 0x76, 0x4f, 0x99, 0x97, 0x28, 0x7d, 0xd8, 0x5b, 0x97, 0x6d, 0x7f, 0x56, 0xd2, 0x3a, 0xe7, 0x83, 0x73, 0x98, 0xc1, 0x18, 0x93, 0x2a, 0xad, 0xc9, 0x82, 0xf6, 0x75, 0xf9, 0x41, 0x03, 0x03, 0x67, 0x29, 0xa4, 0x7c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6146 = { .name = "ecdsa_secp256k1_sha512_6146", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6146_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6146_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6146_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6147 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6147_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6147_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6147_sig[] = { 0x69, 0xf1, 0x8c, 0x06, 0x4a, 0xd2, 0x68, 0x3c, 0xc1, 0xb6, 0xd8, 0xb7, 0x90, 0x20, 0xaa, 0xcd, 0x18, 0x6b, 0x6a, 0xd1, 0x99, 0x9e, 0x6e, 0x55, 0xbf, 0x28, 0xbb, 0x1d, 0xac, 0x33, 0xf3, 0x39, 0xef, 0x66, 0xe6, 0x60, 0x01, 0xfc, 0xc2, 0x19, 0xc9, 0xa9, 0x27, 0xd7, 0xf0, 0xb8, 0x48, 0x63, 0x48, 0x3b, 0xfd, 0x1f, 0xfa, 0x60, 0x86, 0xc0, 0x69, 0x21, 0x90, 0x53, 0x10, 0xc7, 0x93, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6147 = { .name = "ecdsa_secp256k1_sha512_6147", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6147_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6147_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6147_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6148 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6148_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6148_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6148_sig[] = { 0x00, 0x54, 0x7c, 0x6b, 0xb4, 0x0f, 0x52, 0xd2, 0x07, 0xff, 0xf7, 0x96, 0xa2, 0x9f, 0x6d, 0xbe, 0x62, 0x05, 0x8e, 0x50, 0xfb, 0x73, 0xbd, 0xe6, 0xb9, 0xc6, 0xca, 0x11, 0x34, 0x6f, 0xd8, 0xe8, 0x2b, 0xc8, 0x2b, 0xd3, 0xef, 0xc9, 0xfe, 0xbe, 0x85, 0x78, 0xac, 0xdb, 0xc3, 0x14, 0x8b, 0xb4, 0x6c, 0x41, 0xa3, 0x9b, 0xe9, 0xae, 0x19, 0x94, 0xad, 0x52, 0xd8, 0xbf, 0x13, 0x19, 0x5d, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6148 = { .name = "ecdsa_secp256k1_sha512_6148", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6148_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6148_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6148_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6149 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6149_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6149_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6149_sig[] = { 0xa8, 0x04, 0x96, 0xad, 0xce, 0x42, 0xe7, 0x97, 0x1e, 0xbe, 0x91, 0x30, 0x07, 0x10, 0xcf, 0x4f, 0x53, 0x5f, 0xad, 0x26, 0x66, 0x68, 0xd7, 0x6d, 0x72, 0xc9, 0x5f, 0xff, 0xe4, 0xd4, 0x25, 0x70, 0x0d, 0x43, 0x38, 0xca, 0x32, 0x85, 0x7e, 0x14, 0xe0, 0xea, 0x80, 0x26, 0xbc, 0x19, 0x42, 0x27, 0xb9, 0x10, 0xb9, 0x85, 0x09, 0xc8, 0xc9, 0x30, 0x7b, 0x0d, 0x8d, 0x93, 0xd4, 0x7b, 0x19, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6149 = { .name = "ecdsa_secp256k1_sha512_6149", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6149_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6149_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6149_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6150 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6150_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6150_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6150_sig[] = { 0x3d, 0xe4, 0x06, 0x34, 0xd1, 0x1a, 0x7a, 0x6b, 0x67, 0x02, 0x3b, 0x84, 0x65, 0x04, 0x20, 0x67, 0x3c, 0xe6, 0xdb, 0xad, 0xb1, 0x15, 0x97, 0x68, 0xcc, 0x0f, 0xd5, 0x5f, 0x37, 0x84, 0xec, 0x88, 0xa4, 0x55, 0xfb, 0x08, 0xe5, 0x1b, 0x84, 0x93, 0x17, 0x7d, 0x88, 0xfc, 0xa4, 0x3a, 0xef, 0xf3, 0x06, 0xe1, 0x49, 0x0d, 0x7f, 0x6d, 0x24, 0xd6, 0xa9, 0x10, 0x97, 0x0a, 0x3d, 0x86, 0x19, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6150 = { .name = "ecdsa_secp256k1_sha512_6150", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6150_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6150_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6150_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6151 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6151_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6151_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6151_sig[] = { 0xc1, 0xf2, 0x29, 0xc0, 0x55, 0x7d, 0x4c, 0x47, 0x96, 0x25, 0x93, 0x78, 0x1b, 0xc9, 0x6c, 0xf7, 0x45, 0xf3, 0xbd, 0x62, 0x9a, 0xd8, 0x54, 0x34, 0xdc, 0x2e, 0xee, 0x45, 0x6d, 0xdb, 0x30, 0x31, 0x86, 0x38, 0xf6, 0xc0, 0x1c, 0x15, 0xd2, 0x3d, 0xb2, 0x4b, 0xb8, 0x51, 0xf6, 0xc6, 0x3c, 0x76, 0x3c, 0x1f, 0x04, 0x09, 0x76, 0xf3, 0xf2, 0xb3, 0x2c, 0x4b, 0xb1, 0xb9, 0x50, 0x6c, 0x1c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6151 = { .name = "ecdsa_secp256k1_sha512_6151", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6151_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6151_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6151_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6152 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6152_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6152_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6152_sig[] = { 0x35, 0xdd, 0x49, 0x57, 0xb3, 0x52, 0xe8, 0xb1, 0xbb, 0xc8, 0x0d, 0x1d, 0xeb, 0x21, 0xf9, 0xb0, 0x98, 0x91, 0x88, 0xad, 0xe3, 0xfb, 0xe4, 0x6f, 0x75, 0x10, 0x6d, 0xa1, 0x68, 0x4e, 0x1d, 0x6d, 0x8b, 0x50, 0x8e, 0x2e, 0xd7, 0xa5, 0x1e, 0xfe, 0xa0, 0xdf, 0xaf, 0x37, 0x7f, 0x6b, 0xd5, 0xd4, 0xae, 0x13, 0x3c, 0xc4, 0xc9, 0x36, 0x50, 0x60, 0x0b, 0xe5, 0x45, 0xaf, 0x5d, 0x3a, 0xcd, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6152 = { .name = "ecdsa_secp256k1_sha512_6152", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6152_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6152_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6152_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6153 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6153_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6153_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6153_sig[] = { 0x41, 0x0a, 0xa9, 0xc9, 0x43, 0xe6, 0x63, 0x08, 0x2c, 0x6f, 0x76, 0xb8, 0x44, 0x69, 0xc9, 0x84, 0x5e, 0x0d, 0x43, 0x9b, 0xa7, 0xff, 0xc7, 0xca, 0xc0, 0x41, 0x8e, 0xea, 0x0e, 0x20, 0xe6, 0x38, 0xc8, 0x73, 0xab, 0x5c, 0x21, 0xc9, 0xf0, 0xce, 0x0b, 0xf7, 0x84, 0x84, 0x02, 0x87, 0x96, 0xb7, 0x74, 0x51, 0xe1, 0x18, 0x72, 0x50, 0xee, 0x33, 0x53, 0x5d, 0xac, 0xfb, 0x3c, 0xee, 0x5f, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6153 = { .name = "ecdsa_secp256k1_sha512_6153", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6153_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6153_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6153_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6154 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6154_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6154_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6154_sig[] = { 0x81, 0x91, 0xdb, 0x06, 0x9b, 0x57, 0x1c, 0xd4, 0x0f, 0x26, 0x76, 0x34, 0x84, 0x33, 0x43, 0x0d, 0x3a, 0x65, 0x15, 0x5c, 0x23, 0x3c, 0x46, 0xa4, 0x2a, 0x42, 0x99, 0xe6, 0xf5, 0xbe, 0x80, 0x6c, 0xf3, 0x67, 0x9e, 0xf8, 0xaf, 0x0b, 0x1b, 0x3a, 0x3a, 0xea, 0xa7, 0xbc, 0xee, 0x51, 0xce, 0x96, 0x04, 0x41, 0x62, 0x2e, 0x9f, 0xf2, 0xdc, 0xb2, 0x2a, 0x8e, 0xc8, 0xde, 0x72, 0x4e, 0x0a, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6154 = { .name = "ecdsa_secp256k1_sha512_6154", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6154_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6154_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6154_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6155 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6155_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6155_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6155_sig[] = { 0x88, 0x9c, 0x44, 0xed, 0xbf, 0x38, 0x25, 0xb1, 0x8d, 0x93, 0x3a, 0xec, 0xd5, 0xef, 0x70, 0xd1, 0x2e, 0xbb, 0x00, 0xbf, 0x79, 0x55, 0x04, 0x51, 0x20, 0x5f, 0xd6, 0xf5, 0xba, 0x7f, 0x37, 0x2b, 0xec, 0xb6, 0x71, 0x94, 0xbe, 0xd2, 0xb8, 0x17, 0x60, 0x77, 0x62, 0x2d, 0x58, 0xc9, 0xab, 0x4f, 0xe4, 0xca, 0x34, 0x60, 0x1d, 0xec, 0xc0, 0x9f, 0x93, 0x86, 0xb8, 0xc4, 0x44, 0x5c, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6155 = { .name = "ecdsa_secp256k1_sha512_6155", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6155_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6155_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6155_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6156 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6156_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6156_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6156_sig[] = { 0xaa, 0x87, 0x11, 0x3a, 0xff, 0x2e, 0x1a, 0xd6, 0x46, 0x11, 0x91, 0x24, 0x1f, 0x90, 0xa2, 0x3b, 0x91, 0x24, 0x2d, 0x00, 0x66, 0x77, 0x9d, 0xaa, 0xa9, 0x50, 0x6a, 0x41, 0x88, 0xab, 0xc4, 0x27, 0x33, 0xdb, 0xaa, 0xc5, 0xac, 0x44, 0x3f, 0xb4, 0xd9, 0x52, 0x9f, 0x83, 0x24, 0x7f, 0x94, 0xc0, 0xad, 0x13, 0x60, 0xd4, 0xd0, 0xba, 0x8e, 0x16, 0x2a, 0x37, 0x79, 0x46, 0xc6, 0xab, 0x9a, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6156 = { .name = "ecdsa_secp256k1_sha512_6156", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6156_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6156_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6156_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6157 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6157_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6157_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6157_sig[] = { 0x0e, 0x13, 0xf6, 0x6a, 0x8f, 0xfd, 0x0d, 0xa1, 0xc4, 0xb6, 0x7f, 0x4d, 0x80, 0x59, 0x41, 0xe9, 0x0f, 0x98, 0xce, 0x38, 0x65, 0x40, 0xc4, 0x80, 0x19, 0xc1, 0xac, 0x10, 0x54, 0x07, 0x56, 0x83, 0x0c, 0xb4, 0x89, 0xe8, 0xd5, 0xac, 0xfc, 0xa5, 0x24, 0x5d, 0x92, 0x92, 0xf5, 0x9c, 0x6e, 0xde, 0x52, 0x42, 0x51, 0x57, 0xaf, 0x77, 0xb8, 0xbe, 0xef, 0x38, 0xd2, 0x3b, 0x6e, 0x6a, 0xde, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6157 = { .name = "ecdsa_secp256k1_sha512_6157", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6157_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6157_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6157_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6158 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6158_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6158_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6158_sig[] = { 0x6c, 0x18, 0x13, 0xf6, 0x60, 0xc7, 0x8b, 0xda, 0x95, 0x6c, 0x16, 0x85, 0xbc, 0x92, 0x4f, 0x69, 0xd1, 0xbb, 0xac, 0x5f, 0xad, 0xf3, 0xe4, 0xb0, 0x27, 0xab, 0x04, 0x9b, 0xc8, 0x2a, 0xd1, 0x34, 0x20, 0xde, 0x89, 0xee, 0x00, 0x5d, 0x76, 0x46, 0xf0, 0x70, 0xbd, 0xac, 0x79, 0x4c, 0xcc, 0xe2, 0x4d, 0x66, 0x1b, 0x39, 0x0a, 0x78, 0x85, 0x1d, 0x35, 0xfe, 0x6f, 0xb5, 0xb2, 0x5b, 0x3e, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6158 = { .name = "ecdsa_secp256k1_sha512_6158", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6158_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6158_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6158_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6159 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6159_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6159_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6159_sig[] = { 0x48, 0xdc, 0x83, 0x0b, 0x63, 0x26, 0xec, 0x21, 0x81, 0x44, 0x39, 0x1b, 0x65, 0x8d, 0x52, 0x04, 0x5e, 0xf8, 0x6e, 0xf9, 0x18, 0xa8, 0xd4, 0x1c, 0x59, 0x13, 0x19, 0x12, 0xb1, 0xa4, 0x6f, 0xb1, 0xa4, 0x31, 0x91, 0x6c, 0xb7, 0xcf, 0x79, 0x12, 0x9b, 0x90, 0xf0, 0x98, 0x42, 0xb3, 0xf2, 0x16, 0x4a, 0x6c, 0xf6, 0x03, 0xdb, 0x88, 0xf2, 0xd9, 0x99, 0x44, 0x14, 0x2c, 0x00, 0xb4, 0x25, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6159 = { .name = "ecdsa_secp256k1_sha512_6159", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6159_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6159_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6159_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6160 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6160_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6160_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6160_sig[] = { 0x4d, 0x45, 0x78, 0x2b, 0xe1, 0x45, 0xa2, 0x7a, 0xe9, 0xec, 0xb6, 0xca, 0xc1, 0xb9, 0xe3, 0x0b, 0xe8, 0x7c, 0x0d, 0x13, 0xb7, 0xd6, 0xad, 0xa9, 0xf7, 0x95, 0xff, 0x05, 0x13, 0x51, 0xac, 0x70, 0xcf, 0x71, 0xd1, 0xeb, 0x15, 0xe8, 0x84, 0x46, 0xdd, 0xb9, 0x00, 0xf2, 0x0d, 0x1e, 0x07, 0x39, 0xda, 0x49, 0x9d, 0xe9, 0x96, 0x3f, 0xe9, 0x9d, 0xed, 0x00, 0xa6, 0x2d, 0xa6, 0x46, 0x2d, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6160 = { .name = "ecdsa_secp256k1_sha512_6160", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6160_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6160_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6160_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6161 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6161_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6161_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6161_sig[] = { 0x11, 0xac, 0xd8, 0xb8, 0xd7, 0x36, 0xe7, 0xf0, 0x04, 0x76, 0x49, 0x58, 0x03, 0xfb, 0xd2, 0x0a, 0xd3, 0x51, 0x32, 0x1e, 0x80, 0x0c, 0xfb, 0xdd, 0xbd, 0x6a, 0x7d, 0xd6, 0x10, 0xc5, 0xab, 0x8c, 0x73, 0x40, 0x27, 0xaa, 0xbc, 0xca, 0x94, 0x87, 0x77, 0x3d, 0xc3, 0xab, 0x06, 0x9b, 0x80, 0x2c, 0x00, 0xf5, 0xb6, 0xe5, 0x52, 0x0e, 0x77, 0x61, 0x49, 0x6a, 0xc1, 0xe7, 0xc7, 0x8c, 0xed, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6161 = { .name = "ecdsa_secp256k1_sha512_6161", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6161_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6161_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6161_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6162 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6162_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6162_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6162_sig[] = { 0x41, 0xbe, 0x8b, 0x3b, 0xf4, 0x1a, 0x4c, 0x50, 0x7d, 0xe1, 0x2f, 0x09, 0x8f, 0x7d, 0x40, 0x9a, 0x1f, 0x94, 0x1f, 0xef, 0x84, 0xd9, 0x37, 0x94, 0xc4, 0x97, 0xf7, 0x24, 0x2a, 0x7c, 0x38, 0x2c, 0x81, 0xf7, 0xe7, 0x24, 0x31, 0x16, 0xf2, 0x4b, 0x84, 0xb0, 0x32, 0x1e, 0x93, 0xee, 0xd3, 0x5e, 0x2b, 0xdc, 0x32, 0xb0, 0x0a, 0xa8, 0xeb, 0x95, 0x83, 0xbe, 0x3e, 0x9b, 0x7a, 0x09, 0xa4, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6162 = { .name = "ecdsa_secp256k1_sha512_6162", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6162_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6162_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6162_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6163 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6163_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6163_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6163_sig[] = { 0xea, 0x03, 0x2f, 0xf4, 0x1b, 0x06, 0x1e, 0x93, 0xe4, 0x56, 0xa5, 0xf0, 0xa9, 0xcd, 0xef, 0x36, 0xc0, 0x73, 0x2d, 0xf4, 0xd5, 0x5a, 0xb4, 0xd3, 0x86, 0x74, 0x84, 0xb0, 0xfc, 0x49, 0xd9, 0xeb, 0xab, 0x29, 0x8d, 0xd8, 0x11, 0x82, 0x6a, 0x6a, 0x93, 0x19, 0xc3, 0x63, 0x2a, 0x96, 0x25, 0x3c, 0x31, 0xc1, 0x4f, 0x75, 0xba, 0xef, 0x53, 0x6a, 0x64, 0x54, 0x20, 0x44, 0x2b, 0xab, 0x4d, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6163 = { .name = "ecdsa_secp256k1_sha512_6163", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6163_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6163_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6163_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6164 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6164_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6164_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6164_sig[] = { 0x8b, 0x1f, 0xf1, 0x40, 0xc6, 0x5a, 0xdc, 0xa2, 0x2e, 0x55, 0x96, 0xff, 0xb9, 0x5a, 0x51, 0x21, 0xc3, 0x56, 0xd2, 0xd4, 0x05, 0x5f, 0x14, 0x60, 0x64, 0x45, 0x24, 0x9a, 0x57, 0x25, 0x68, 0x6f, 0xef, 0x8c, 0x16, 0xff, 0x22, 0x81, 0x14, 0xa7, 0xe3, 0x3b, 0x35, 0xad, 0x46, 0x5f, 0x95, 0x75, 0x77, 0xde, 0xa4, 0x05, 0xfb, 0xdf, 0x3f, 0xaf, 0x07, 0x7a, 0x87, 0x87, 0x54, 0xe5, 0x8b, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6164 = { .name = "ecdsa_secp256k1_sha512_6164", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6164_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6164_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6164_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6165 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6165_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6165_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6165_sig[] = { 0x3a, 0x40, 0xe8, 0xdc, 0x3e, 0xbe, 0x9e, 0x19, 0xdc, 0xd0, 0xd4, 0xd1, 0xb6, 0x98, 0xab, 0x2a, 0x49, 0x34, 0xa1, 0x46, 0xde, 0xf5, 0x42, 0x7b, 0x3a, 0x6a, 0x8f, 0xbf, 0xbf, 0x34, 0x78, 0x46, 0x54, 0xf6, 0x5e, 0x36, 0x08, 0x8d, 0x2d, 0x45, 0x43, 0x01, 0x1c, 0x94, 0xb1, 0xe5, 0x37, 0x16, 0x97, 0x20, 0x2d, 0x48, 0x8b, 0x34, 0x2d, 0xd6, 0xf7, 0x7a, 0x69, 0x94, 0x41, 0x28, 0x22, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6165 = { .name = "ecdsa_secp256k1_sha512_6165", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6165_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6165_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6165_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6166 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6166_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6166_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6166_sig[] = { 0x15, 0xfe, 0xcd, 0x43, 0x91, 0x37, 0xdf, 0x74, 0x82, 0x07, 0x27, 0xf7, 0x12, 0x18, 0x40, 0x5c, 0xbe, 0x52, 0x5d, 0x40, 0x3c, 0x57, 0x44, 0x71, 0xd8, 0xa3, 0x6f, 0xa4, 0xb1, 0xf5, 0x92, 0xab, 0x18, 0xec, 0x29, 0x09, 0x71, 0xed, 0x0a, 0x22, 0x7e, 0xc4, 0x7f, 0x1e, 0x21, 0x42, 0xf3, 0xb8, 0xfe, 0x5b, 0x17, 0x33, 0x63, 0x50, 0xc5, 0x51, 0x5d, 0x4a, 0x87, 0xeb, 0x33, 0x82, 0xfc, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6166 = { .name = "ecdsa_secp256k1_sha512_6166", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6166_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6166_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6166_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6167 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6167_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6167_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6167_sig[] = { 0xe6, 0x76, 0xe8, 0x4a, 0x29, 0x9f, 0x48, 0x1a, 0x20, 0x7c, 0xde, 0x6a, 0x42, 0x71, 0xc8, 0x7d, 0x73, 0xe2, 0x9d, 0x1e, 0x49, 0x21, 0x63, 0x93, 0x29, 0x23, 0x23, 0xbc, 0xdc, 0x23, 0x88, 0x44, 0xb8, 0xa9, 0x8c, 0x76, 0x9b, 0xf8, 0x14, 0x29, 0x64, 0x47, 0x58, 0xc8, 0xf8, 0x03, 0xdd, 0xbe, 0xdf, 0x81, 0x63, 0x4e, 0x53, 0x09, 0x9c, 0x43, 0xad, 0x0c, 0xa4, 0x2f, 0x42, 0x07, 0xba, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6167 = { .name = "ecdsa_secp256k1_sha512_6167", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6167_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6167_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6167_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6168 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6168_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6168_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6168_sig[] = { 0x51, 0x16, 0xf8, 0xf0, 0xaf, 0x12, 0xb4, 0x7b, 0xd0, 0x25, 0xaa, 0x6e, 0xae, 0xc5, 0x00, 0x7d, 0x4e, 0x3c, 0x5a, 0x3a, 0x72, 0xcb, 0x4c, 0x33, 0x1f, 0x56, 0x95, 0x81, 0xad, 0xb0, 0x1b, 0xfb, 0x69, 0x62, 0x25, 0x1d, 0xa7, 0xba, 0x9a, 0xc9, 0x51, 0xcf, 0xbd, 0x20, 0x51, 0xbc, 0xb7, 0xd9, 0x53, 0x00, 0x5c, 0xb9, 0x59, 0x9a, 0xe0, 0xad, 0x9c, 0x5f, 0x51, 0x39, 0xba, 0xac, 0xb9, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6168 = { .name = "ecdsa_secp256k1_sha512_6168", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6168_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6168_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6168_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6169 for ECDSA, tcId is 152 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6169_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6169_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6169_sig[] = { 0xb8, 0x3f, 0x39, 0x18, 0xb6, 0xc5, 0x50, 0x6d, 0x64, 0x8b, 0xa3, 0xdb, 0xa3, 0x67, 0x62, 0xdb, 0x59, 0x3a, 0xd4, 0xb7, 0x91, 0x45, 0x6b, 0xab, 0xcc, 0x3c, 0x1a, 0x49, 0x66, 0x31, 0x7a, 0xe6, 0x8c, 0xd0, 0x16, 0x60, 0x47, 0xce, 0xc8, 0x99, 0x63, 0xe9, 0xc8, 0xca, 0x43, 0xb5, 0x56, 0xac, 0x17, 0xd0, 0xd6, 0x21, 0x77, 0xa9, 0xbd, 0xa3, 0x5e, 0x61, 0xd0, 0xbb, 0x16, 0xdd, 0x47, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6169 = { .name = "ecdsa_secp256k1_sha512_6169", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6169_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6169_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6169_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6170 for ECDSA, tcId is 153 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6170_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6170_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6170_sig[] = { 0x07, 0x78, 0x58, 0xa8, 0x40, 0x23, 0x0c, 0xa2, 0x13, 0x85, 0xc4, 0xab, 0x4c, 0x36, 0xcb, 0xd3, 0xff, 0xaf, 0x85, 0x65, 0x62, 0x02, 0xfb, 0xa5, 0x8f, 0x1e, 0xa9, 0x95, 0xf5, 0x2e, 0xbc, 0x4c, 0x54, 0x3e, 0x5e, 0x32, 0xa6, 0xd2, 0xf5, 0xc0, 0x86, 0x64, 0xed, 0x72, 0x17, 0x5a, 0xda, 0xa2, 0x5c, 0xdb, 0x5d, 0x6a, 0x75, 0x4b, 0x0c, 0xb1, 0x84, 0xe6, 0x99, 0x4e, 0xde, 0x66, 0xc5, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6170 = { .name = "ecdsa_secp256k1_sha512_6170", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6170_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6170_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6170_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6171 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6171_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6171_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6171_sig[] = { 0x53, 0x8a, 0xd8, 0x79, 0x7a, 0x39, 0x74, 0x14, 0xac, 0x82, 0x28, 0x7c, 0x92, 0x16, 0xe4, 0x19, 0x15, 0xc9, 0xe3, 0xda, 0xdb, 0xd4, 0x93, 0xa0, 0xbb, 0xef, 0x5c, 0xb0, 0xdc, 0x79, 0x35, 0xec, 0x2c, 0x94, 0xcf, 0xda, 0xe7, 0xbf, 0x76, 0xf9, 0x0b, 0x3c, 0xc7, 0xd1, 0x9f, 0xee, 0xa4, 0x00, 0x5b, 0x38, 0x7e, 0x31, 0x2a, 0xd4, 0x11, 0x66, 0x54, 0xd6, 0x3c, 0xfb, 0xec, 0xf2, 0xae, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6171 = { .name = "ecdsa_secp256k1_sha512_6171", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6171_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6171_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha512_6171_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6172 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6172_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6172_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6172_sig[] = { 0xff, 0x8b, 0xbd, 0x1b, 0x64, 0x41, 0x38, 0x8c, 0xb8, 0xd5, 0x62, 0xc2, 0x8c, 0xe2, 0x9f, 0xbe, 0x51, 0xde, 0x11, 0x50, 0x2f, 0xc8, 0x25, 0x77, 0x3d, 0xed, 0x3f, 0x0d, 0xf2, 0x25, 0xb2, 0x36, 0x8e, 0xcc, 0xca, 0x01, 0x48, 0xb8, 0x2f, 0xdf, 0xb3, 0x70, 0xcd, 0xd0, 0x73, 0xaa, 0x06, 0x34, 0xb3, 0x9c, 0xc7, 0x0d, 0x0d, 0x52, 0x44, 0xa7, 0x31, 0x9e, 0x4b, 0x13, 0x79, 0x1e, 0x2c, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6172 = { .name = "ecdsa_secp256k1_sha512_6172", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6172_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6172_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6172_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6173 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6173_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6173_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6173_sig[] = { 0x7c, 0x17, 0x9a, 0x01, 0x0f, 0x51, 0xd6, 0x6e, 0xc8, 0x2f, 0xe5, 0xd5, 0xd4, 0x5b, 0xd8, 0x67, 0xb4, 0xb2, 0x36, 0xa2, 0x7b, 0xe8, 0x82, 0xe6, 0x27, 0x50, 0x6f, 0x72, 0x86, 0xed, 0x7b, 0xaa, 0x5e, 0x38, 0xc0, 0x48, 0xfb, 0x0f, 0xbd, 0x81, 0xc4, 0x0d, 0xf3, 0xdc, 0x16, 0x08, 0x7d, 0x9a, 0xab, 0xeb, 0x51, 0xa1, 0x93, 0x10, 0x74, 0x99, 0xd2, 0x9d, 0x8c, 0xf9, 0x9c, 0x38, 0x8a, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6173 = { .name = "ecdsa_secp256k1_sha512_6173", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6173_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6173_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6173_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6174 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6174_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6174_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6174_sig[] = { 0x7e, 0x08, 0x10, 0x88, 0x5b, 0x40, 0x5d, 0x54, 0xce, 0xb2, 0xeb, 0x18, 0xca, 0xe0, 0x8d, 0xe2, 0x06, 0x2f, 0x61, 0xb7, 0xed, 0x94, 0xab, 0x67, 0xeb, 0x15, 0xe8, 0x7b, 0x64, 0xe7, 0x30, 0xef, 0xf5, 0x11, 0xa7, 0x91, 0x9e, 0x6e, 0x4d, 0x70, 0xc8, 0xd6, 0x1b, 0x83, 0x1e, 0x38, 0x3f, 0x58, 0xde, 0xa5, 0x87, 0x8a, 0x6c, 0x8c, 0x5f, 0x04, 0x36, 0xee, 0x05, 0x8d, 0xd8, 0x0a, 0x76, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6174 = { .name = "ecdsa_secp256k1_sha512_6174", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6174_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6174_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6174_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6175 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6175_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6175_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6175_sig[] = { 0xc6, 0x65, 0xd5, 0x58, 0xdd, 0x63, 0x8e, 0xf2, 0x7a, 0x28, 0x55, 0x7c, 0x3d, 0xeb, 0x8a, 0x2f, 0x54, 0xab, 0xf9, 0xbd, 0x0b, 0xfa, 0x03, 0x2c, 0x7e, 0xc9, 0xa5, 0x14, 0xda, 0x9a, 0x9e, 0x9e, 0x65, 0xc9, 0xef, 0xc3, 0x55, 0x98, 0x1f, 0x91, 0x77, 0x82, 0x27, 0xee, 0xfa, 0xcf, 0x1b, 0xb2, 0xfe, 0xdb, 0x98, 0x65, 0x7e, 0x6c, 0xd8, 0x67, 0x4f, 0xdd, 0x42, 0xae, 0x00, 0xd6, 0x19, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6175 = { .name = "ecdsa_secp256k1_sha512_6175", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6175_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6175_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6175_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6176 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6176_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6176_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6176_sig[] = { 0x4f, 0x06, 0xb8, 0x2a, 0xa0, 0xd0, 0x70, 0xa0, 0x04, 0xa7, 0xfd, 0x11, 0x35, 0xbc, 0x3a, 0x0b, 0xc3, 0x6f, 0xca, 0xee, 0xca, 0x35, 0xe3, 0xed, 0xf0, 0x0f, 0x58, 0x95, 0x39, 0x4d, 0x59, 0xab, 0x65, 0xf7, 0x1d, 0xd7, 0x40, 0x6a, 0x17, 0xbf, 0x19, 0xe4, 0x34, 0xa4, 0x63, 0x54, 0x79, 0x34, 0x02, 0x04, 0xdd, 0x86, 0x2a, 0x9f, 0x2c, 0x46, 0x53, 0xe2, 0xfa, 0x39, 0xb1, 0x78, 0x28, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6176 = { .name = "ecdsa_secp256k1_sha512_6176", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6176_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6176_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6176_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6177 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6177_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6177_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6177_sig[] = { 0x53, 0x9c, 0x8f, 0xe5, 0x71, 0x5c, 0x3d, 0xc8, 0x93, 0x81, 0x5e, 0xc2, 0xf0, 0x0e, 0x20, 0x3b, 0x4c, 0xd4, 0xf8, 0xfd, 0x36, 0xcc, 0x57, 0x42, 0xcc, 0x81, 0xce, 0xd2, 0x66, 0xe0, 0x2e, 0x3b, 0xa5, 0x96, 0x4b, 0x2d, 0x51, 0x57, 0x62, 0x4c, 0xf4, 0x2b, 0x67, 0x26, 0xae, 0x23, 0xa7, 0xd5, 0xef, 0x83, 0xa5, 0xd1, 0xf1, 0x46, 0x0b, 0xd5, 0x73, 0xd5, 0xa1, 0x53, 0x16, 0xbe, 0x5b, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6177 = { .name = "ecdsa_secp256k1_sha512_6177", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6177_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6177_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6177_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6178 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6178_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6178_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6178_sig[] = { 0x25, 0xf3, 0x37, 0x27, 0x35, 0x91, 0xf2, 0x76, 0x84, 0x9c, 0xd8, 0x55, 0xb0, 0x3d, 0x07, 0xcb, 0xcb, 0x20, 0x59, 0x24, 0xcd, 0xa4, 0xf6, 0x2a, 0x07, 0x95, 0x91, 0x60, 0x2c, 0xc1, 0x0a, 0x8c, 0xd7, 0xb8, 0x2c, 0x8f, 0xb3, 0x8b, 0xbd, 0x50, 0x3d, 0x92, 0xe5, 0xae, 0x93, 0x03, 0xe8, 0x67, 0x3c, 0x6d, 0xd0, 0xe9, 0x38, 0x9f, 0x5a, 0xf5, 0x33, 0x66, 0xbb, 0xab, 0x85, 0x1f, 0x04, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6178 = { .name = "ecdsa_secp256k1_sha512_6178", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6178_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6178_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6178_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6179 for ECDSA, tcId is 162 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6179_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6179_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6179_sig[] = { 0xf3, 0x60, 0x18, 0x94, 0x5d, 0x24, 0xc8, 0x96, 0x78, 0xce, 0x2c, 0x8c, 0xf3, 0xcb, 0x4f, 0x93, 0xc3, 0x8b, 0xda, 0xd3, 0x58, 0x98, 0x91, 0xa5, 0xba, 0xa2, 0x93, 0x74, 0x4d, 0x4d, 0xaa, 0x20, 0x19, 0xef, 0x05, 0x87, 0x8d, 0xfc, 0x63, 0x6a, 0x46, 0x62, 0xfd, 0x5d, 0xd1, 0x27, 0xc9, 0x08, 0xd7, 0x94, 0x89, 0x91, 0xa3, 0x24, 0x84, 0x03, 0x23, 0xc8, 0xae, 0xf4, 0xfc, 0x2f, 0xf8, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6179 = { .name = "ecdsa_secp256k1_sha512_6179", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6179_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6179_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6179_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6180 for ECDSA, tcId is 163 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6180_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6180_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6180_sig[] = { 0x43, 0x20, 0x3c, 0x89, 0xad, 0x43, 0xa2, 0xbb, 0x19, 0x10, 0xe7, 0x0e, 0xa1, 0x04, 0x34, 0x7e, 0x84, 0x76, 0x45, 0x99, 0x53, 0x5d, 0x46, 0xda, 0xbb, 0xe5, 0x47, 0x39, 0x5b, 0x14, 0x63, 0xf4, 0xed, 0x3d, 0x29, 0xc7, 0xc5, 0x06, 0xec, 0xc9, 0x88, 0x61, 0x4b, 0x36, 0x8b, 0x38, 0xdd, 0x5b, 0x4f, 0x1e, 0x33, 0x0c, 0x1b, 0x86, 0x1e, 0xfc, 0xa8, 0x15, 0x2a, 0x70, 0x4b, 0x91, 0x46, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6180 = { .name = "ecdsa_secp256k1_sha512_6180", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6180_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6180_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6180_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6181 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6181_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6181_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6181_sig[] = { 0xc2, 0x74, 0x0b, 0xfb, 0x3f, 0x38, 0x7d, 0xf1, 0xb5, 0x64, 0xe3, 0xff, 0x48, 0x83, 0x5b, 0x9e, 0x38, 0x01, 0x04, 0x71, 0x6f, 0x58, 0xc5, 0xa4, 0x3e, 0x97, 0xbb, 0x2c, 0x2d, 0x84, 0xd0, 0x4a, 0xe7, 0x60, 0xee, 0x5d, 0x09, 0x50, 0xb5, 0x12, 0xf6, 0xc2, 0x71, 0xcd, 0x1a, 0x87, 0x61, 0x9b, 0x83, 0x0d, 0xf8, 0x3f, 0xd4, 0x0d, 0x44, 0xb9, 0x28, 0x35, 0x39, 0xb3, 0xaa, 0x38, 0x00, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6181 = { .name = "ecdsa_secp256k1_sha512_6181", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6181_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6181_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6181_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6182 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6182_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6182_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6182_sig[] = { 0xec, 0x07, 0xec, 0x53, 0x78, 0xed, 0x13, 0x1b, 0x2d, 0xea, 0x7a, 0xe9, 0x77, 0x6b, 0xa5, 0x36, 0xda, 0xef, 0x2a, 0xfc, 0x38, 0xe2, 0x55, 0x6a, 0x70, 0xb8, 0x9b, 0x97, 0x52, 0xeb, 0x1f, 0x71, 0xfe, 0xa2, 0x5b, 0x9e, 0x50, 0xb1, 0xcf, 0xa2, 0xcf, 0x47, 0x5d, 0xbb, 0x22, 0x45, 0x76, 0x1d, 0x5f, 0x45, 0x85, 0xfb, 0xbc, 0x43, 0x8d, 0x97, 0x22, 0x6c, 0x64, 0xff, 0x74, 0xbf, 0xf1, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6182 = { .name = "ecdsa_secp256k1_sha512_6182", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6182_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6182_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6182_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6183 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6183_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6183_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6183_sig[] = { 0xe4, 0x38, 0x30, 0x3c, 0xcb, 0xbe, 0xe3, 0x59, 0xc8, 0x65, 0x99, 0x7e, 0x46, 0x11, 0x2b, 0x0a, 0xfd, 0x7a, 0x64, 0x7c, 0x59, 0x34, 0x29, 0x29, 0x13, 0x98, 0xf0, 0xc4, 0x32, 0xdf, 0xb9, 0xf0, 0x84, 0x87, 0xe0, 0x7a, 0x53, 0xda, 0x18, 0x79, 0x3f, 0x8b, 0x52, 0x70, 0x69, 0xe6, 0x20, 0xe4, 0x45, 0x87, 0xe4, 0x20, 0x24, 0x5d, 0x6e, 0xc8, 0x27, 0xbb, 0x35, 0xcc, 0xcf, 0xae, 0x7a, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6183 = { .name = "ecdsa_secp256k1_sha512_6183", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6183_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6183_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6183_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6184 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6184_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6184_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6184_sig[] = { 0xfc, 0x09, 0xfa, 0x30, 0xe8, 0x9a, 0x2b, 0xa3, 0xd0, 0xc4, 0xd9, 0xd9, 0x35, 0x0e, 0x71, 0x71, 0x68, 0xc2, 0x12, 0x53, 0x37, 0x13, 0x59, 0xc0, 0xf3, 0xcb, 0x8c, 0x88, 0x07, 0xbd, 0xab, 0x56, 0x5d, 0x6c, 0x47, 0x66, 0xbc, 0xa4, 0x62, 0xcf, 0x95, 0xb4, 0xae, 0xb8, 0xf5, 0x88, 0x6b, 0x52, 0xfc, 0x32, 0x86, 0x64, 0x2f, 0xfe, 0xe8, 0xd0, 0xbd, 0x7f, 0xfd, 0x4a, 0xf7, 0xba, 0xdb, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6184 = { .name = "ecdsa_secp256k1_sha512_6184", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6184_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6184_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6184_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6185 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6185_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6185_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6185_sig[] = { 0x4f, 0x18, 0x4f, 0xba, 0x2b, 0xe3, 0x90, 0x78, 0x38, 0x52, 0x90, 0xac, 0xb4, 0xcc, 0x4b, 0x3f, 0x39, 0xb0, 0x99, 0xc3, 0x30, 0x0c, 0x76, 0x2d, 0xf2, 0x05, 0xc6, 0x05, 0xc6, 0xb3, 0x0e, 0x1a, 0x50, 0x64, 0x81, 0xd2, 0x01, 0x8b, 0x3a, 0x4c, 0x0a, 0xd5, 0x58, 0xf0, 0x29, 0xc8, 0x2e, 0x06, 0x25, 0xc8, 0x33, 0xcb, 0xbe, 0xe9, 0x78, 0xbe, 0xe7, 0xb5, 0x89, 0x74, 0x2e, 0xe1, 0xe3, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6185 = { .name = "ecdsa_secp256k1_sha512_6185", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6185_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6185_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6185_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6186 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6186_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6186_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6186_sig[] = { 0xe9, 0xa2, 0x75, 0x33, 0xa5, 0x0e, 0xaf, 0xb0, 0x95, 0x61, 0xdc, 0x33, 0x5d, 0x67, 0xf8, 0xe5, 0xe5, 0x3b, 0x4f, 0xc1, 0x6b, 0x30, 0x13, 0xf0, 0x62, 0xe5, 0x81, 0xad, 0x02, 0x7e, 0x11, 0x0e, 0x7e, 0x41, 0x50, 0xde, 0xf3, 0x68, 0xf9, 0x69, 0xac, 0xe0, 0xfc, 0x28, 0xca, 0xc7, 0xa3, 0x31, 0x2d, 0x6b, 0x9a, 0xf5, 0x38, 0xc4, 0x12, 0x04, 0x8b, 0xe1, 0x76, 0x3e, 0xa8, 0x1f, 0x3f, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6186 = { .name = "ecdsa_secp256k1_sha512_6186", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6186_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6186_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6186_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6187 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6187_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6187_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6187_sig[] = { 0xfa, 0xc2, 0x4d, 0x54, 0x38, 0x72, 0x02, 0xbf, 0xf0, 0x1a, 0x91, 0xf5, 0x50, 0x4f, 0x77, 0x8c, 0x18, 0x3a, 0x0a, 0x79, 0x30, 0xc0, 0x2a, 0xf0, 0xb6, 0x18, 0xee, 0x64, 0xd1, 0xb1, 0xe4, 0x38, 0xf3, 0xa5, 0x3c, 0xb6, 0xf9, 0x6f, 0xee, 0xa4, 0x5c, 0xca, 0xdc, 0xdf, 0x9a, 0xc7, 0x8c, 0xd7, 0x35, 0xec, 0x33, 0x42, 0x16, 0x3e, 0x57, 0x3d, 0x21, 0x25, 0xca, 0xa0, 0xd8, 0xd5, 0x07, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6187 = { .name = "ecdsa_secp256k1_sha512_6187", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6187_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6187_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6187_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6188 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6188_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6188_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6188_sig[] = { 0x35, 0x44, 0x59, 0x0a, 0x0f, 0x9f, 0xa5, 0xd4, 0x3a, 0xd4, 0xe0, 0xa0, 0x03, 0xa8, 0xd7, 0xdb, 0x58, 0xb8, 0x57, 0x09, 0x51, 0x65, 0x7a, 0xab, 0x3b, 0xab, 0x73, 0x27, 0x27, 0xd1, 0xbb, 0xc2, 0xf2, 0x57, 0xbe, 0xac, 0x10, 0xd5, 0x3e, 0x80, 0x12, 0xec, 0xd2, 0x36, 0x79, 0x3d, 0x28, 0x00, 0x26, 0xc5, 0xcf, 0x1c, 0x04, 0xaa, 0xe5, 0x22, 0x01, 0x9b, 0x87, 0xe0, 0x03, 0x50, 0x0e, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6188 = { .name = "ecdsa_secp256k1_sha512_6188", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6188_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6188_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6188_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6189 for ECDSA, tcId is 172 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6189_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6189_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6189_sig[] = { 0xbc, 0x07, 0x26, 0x38, 0x64, 0x97, 0xc8, 0x5d, 0xa8, 0xf4, 0x05, 0x5a, 0x72, 0x7b, 0x19, 0x38, 0xe9, 0x67, 0x86, 0xb0, 0x09, 0xe6, 0x84, 0x7a, 0x08, 0x0a, 0x8a, 0xae, 0x57, 0x1b, 0x07, 0x53, 0x54, 0xb1, 0xb1, 0x5f, 0xc7, 0x88, 0x6f, 0x09, 0xb1, 0x21, 0xaf, 0x65, 0x20, 0xd0, 0xf4, 0x33, 0x6d, 0x25, 0x9d, 0x73, 0x47, 0x13, 0xfc, 0x3e, 0x97, 0x3c, 0xf2, 0x83, 0x68, 0x83, 0x0e, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6189 = { .name = "ecdsa_secp256k1_sha512_6189", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6189_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6189_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6189_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6190 for ECDSA, tcId is 173 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6190_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6190_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6190_sig[] = { 0x21, 0x6f, 0x80, 0x51, 0xf9, 0xce, 0xed, 0x5b, 0x5c, 0xc1, 0x08, 0x5f, 0x83, 0xef, 0xd8, 0x71, 0x12, 0x8c, 0xb4, 0x4b, 0x26, 0x0a, 0xc1, 0x2c, 0x48, 0x6c, 0x0e, 0xa0, 0x6c, 0x71, 0xaa, 0x55, 0xdf, 0x90, 0x34, 0x6c, 0xb0, 0x28, 0x24, 0x5a, 0x72, 0xac, 0x7d, 0x80, 0x94, 0x49, 0x7f, 0x0e, 0xfb, 0x83, 0xa7, 0xc4, 0x4b, 0xa3, 0xb2, 0x58, 0x87, 0x31, 0x27, 0x35, 0x5e, 0x3b, 0x2e, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6190 = { .name = "ecdsa_secp256k1_sha512_6190", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6190_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6190_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6190_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6191 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6191_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6191_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6191_sig[] = { 0xcb, 0x76, 0x65, 0x2e, 0x19, 0xd6, 0xe7, 0xa7, 0x2c, 0x9c, 0xac, 0x35, 0xc2, 0xae, 0x46, 0x17, 0x8d, 0x8c, 0x0f, 0xf5, 0x9b, 0x06, 0xb0, 0xcb, 0x97, 0xc3, 0x1a, 0xad, 0x39, 0xec, 0x1b, 0x09, 0x5c, 0x47, 0xb8, 0x89, 0xa2, 0x9c, 0x78, 0x15, 0x40, 0xb8, 0x78, 0x3c, 0xa2, 0x4e, 0x2a, 0xcc, 0x34, 0x01, 0x78, 0x68, 0x5d, 0x73, 0x31, 0x01, 0x7e, 0x29, 0xb4, 0xef, 0xe9, 0x2d, 0x9f, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6191 = { .name = "ecdsa_secp256k1_sha512_6191", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6191_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6191_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6191_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6192 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6192_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6192_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6192_sig[] = { 0xed, 0xfc, 0x03, 0x19, 0x0c, 0x83, 0x95, 0x28, 0xba, 0x2a, 0xa0, 0xba, 0x3a, 0x23, 0xb5, 0x96, 0xfc, 0xfe, 0xc1, 0xbf, 0x2b, 0xbf, 0x44, 0x67, 0xf1, 0xfd, 0x88, 0x39, 0x8c, 0xab, 0x8a, 0xd2, 0x45, 0xb4, 0x1f, 0xa4, 0x9e, 0x0f, 0xa7, 0xf0, 0x60, 0xac, 0x1b, 0xa3, 0x8a, 0xb4, 0xd2, 0xd5, 0xab, 0x5b, 0x9f, 0xa5, 0x4c, 0xa5, 0x92, 0x85, 0xae, 0xe0, 0x9c, 0xee, 0xdd, 0x98, 0x65, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6192 = { .name = "ecdsa_secp256k1_sha512_6192", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6192_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6192_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6192_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6193 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6193_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6193_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6193_sig[] = { 0xe7, 0x63, 0x1f, 0x03, 0xd9, 0xdf, 0xdd, 0xc6, 0x4c, 0xfd, 0x2a, 0x97, 0x15, 0x23, 0xde, 0xf6, 0x8c, 0xb9, 0xf8, 0xa6, 0x4e, 0x07, 0xeb, 0x22, 0x35, 0xc7, 0x25, 0x0a, 0xdc, 0x36, 0x48, 0x0b, 0xa0, 0x04, 0xcb, 0xac, 0x3e, 0x04, 0x05, 0x6c, 0x7e, 0x65, 0xfd, 0xb4, 0x8b, 0xe0, 0x51, 0xe9, 0xa5, 0x2a, 0xb4, 0x27, 0xc8, 0x26, 0xc8, 0x4e, 0x2c, 0xb2, 0x22, 0x92, 0x52, 0x98, 0x36, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6193 = { .name = "ecdsa_secp256k1_sha512_6193", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6193_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6193_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6193_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6194 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6194_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6194_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6194_sig[] = { 0x15, 0xe3, 0x6a, 0x42, 0x51, 0x51, 0x18, 0x02, 0x1f, 0x6f, 0x53, 0x72, 0xec, 0xbf, 0xf9, 0x07, 0x55, 0xd8, 0xae, 0x77, 0xf9, 0xdd, 0x68, 0x39, 0x72, 0xd2, 0xf2, 0x6a, 0xa6, 0x71, 0x64, 0x51, 0x8d, 0x1c, 0xd9, 0x88, 0xba, 0x0a, 0x1b, 0xd9, 0x19, 0xd2, 0xf9, 0xb5, 0xc8, 0xa3, 0x51, 0x7e, 0xb5, 0x9e, 0xf7, 0x76, 0xca, 0xec, 0xdf, 0x2b, 0x5a, 0xc2, 0xf7, 0xa7, 0x21, 0x85, 0x83, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6194 = { .name = "ecdsa_secp256k1_sha512_6194", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6194_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6194_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6194_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6195 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6195_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6195_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6195_sig[] = { 0x6d, 0xaa, 0xcb, 0xc1, 0x12, 0x5c, 0xb3, 0x69, 0x0e, 0x43, 0xe1, 0x6b, 0x41, 0x40, 0x77, 0xc0, 0xdd, 0x27, 0x4b, 0x96, 0xed, 0x61, 0x89, 0x2b, 0xad, 0x5a, 0x51, 0x92, 0x74, 0xf0, 0x1b, 0x23, 0xd0, 0x44, 0x96, 0x58, 0x11, 0xb4, 0x05, 0x0c, 0x7a, 0x85, 0x02, 0x1e, 0x88, 0x27, 0x63, 0x5c, 0xf9, 0xf4, 0x62, 0x60, 0xfc, 0x33, 0xbb, 0x7c, 0xb5, 0x6b, 0x1b, 0x37, 0x18, 0x0c, 0x42, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6195 = { .name = "ecdsa_secp256k1_sha512_6195", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6195_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6195_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6195_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6196 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6196_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6196_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6196_sig[] = { 0x37, 0xe5, 0x07, 0x75, 0xee, 0x06, 0x02, 0x4d, 0x59, 0x6e, 0xd4, 0x98, 0x24, 0xb1, 0xe6, 0xa4, 0x9e, 0xfa, 0xe2, 0x5c, 0x7d, 0xce, 0x81, 0x81, 0xde, 0x33, 0xf9, 0x3c, 0xe3, 0x4a, 0xc3, 0xce, 0x61, 0x6a, 0x3e, 0x9d, 0x1f, 0xed, 0x08, 0x61, 0x38, 0xf6, 0xfe, 0xef, 0x65, 0x32, 0x64, 0x7c, 0x02, 0xbd, 0x32, 0x4b, 0xa4, 0xa8, 0xbf, 0xea, 0x20, 0x64, 0x0d, 0x22, 0xf5, 0x49, 0x44, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6196 = { .name = "ecdsa_secp256k1_sha512_6196", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6196_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6196_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6196_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6197 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6197_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6197_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6197_sig[] = { 0xd5, 0xb6, 0x4c, 0xdf, 0x82, 0xe3, 0x54, 0xba, 0x6a, 0x01, 0x77, 0x2f, 0x7d, 0x38, 0xe8, 0xd4, 0x6a, 0x72, 0x9b, 0x80, 0x8a, 0xae, 0xd7, 0x36, 0x16, 0xed, 0x41, 0xa9, 0xaf, 0xc8, 0x3d, 0xb7, 0xb5, 0xc4, 0x56, 0xc9, 0x12, 0x54, 0xe5, 0x70, 0x13, 0x22, 0x8c, 0x97, 0x24, 0xbb, 0x7f, 0x97, 0xaa, 0xf1, 0x8e, 0x1b, 0xfd, 0x4c, 0x99, 0xd3, 0xca, 0x9e, 0xaa, 0x82, 0x14, 0x38, 0x2a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6197 = { .name = "ecdsa_secp256k1_sha512_6197", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6197_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6197_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6197_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6198 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6198_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6198_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6198_sig[] = { 0x91, 0x57, 0x79, 0xb9, 0x0a, 0xe6, 0xf6, 0xc1, 0xfb, 0x82, 0xc1, 0x98, 0xc9, 0xf0, 0x71, 0x9c, 0xe2, 0xea, 0x37, 0xbe, 0x0f, 0x26, 0x1e, 0x36, 0x58, 0x5e, 0xc8, 0x9a, 0xda, 0xed, 0xd2, 0xb6, 0x7d, 0x05, 0xe7, 0x79, 0x4a, 0xc5, 0x75, 0x78, 0x79, 0x08, 0x08, 0xc0, 0xac, 0x52, 0xca, 0x3a, 0x51, 0xd1, 0x39, 0x9f, 0x1a, 0x4c, 0x71, 0x73, 0xa7, 0xed, 0x19, 0x86, 0x77, 0x32, 0xb3, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6198 = { .name = "ecdsa_secp256k1_sha512_6198", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6198_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6198_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6198_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6199 for ECDSA, tcId is 182 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6199_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6199_sig[] = { 0x09, 0x7a, 0x04, 0xee, 0x03, 0xa1, 0x3c, 0x51, 0x1d, 0x93, 0x9e, 0x8b, 0xbe, 0x14, 0x71, 0xc5, 0x7a, 0x71, 0x02, 0x0e, 0x16, 0x8e, 0x26, 0x89, 0xc6, 0x9a, 0x56, 0x25, 0x68, 0x6e, 0x24, 0xad, 0x40, 0xd2, 0x4d, 0x52, 0xf3, 0x70, 0x1a, 0xc8, 0xda, 0x95, 0x95, 0x60, 0xc3, 0x6e, 0xd0, 0x75, 0x0a, 0x1c, 0xf0, 0x31, 0xb7, 0x28, 0xa9, 0x13, 0x4e, 0x2b, 0x71, 0xed, 0x3d, 0xde, 0xf8, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6199 = { .name = "ecdsa_secp256k1_sha512_6199", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6199_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6199_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6199_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 182 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6200 for ECDSA, tcId is 183 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6200_pubkey[] = { 0x12, 0xc9, 0x0a, 0x5d, 0xeb, 0xd8, 0x8d, 0x42, 0x68, 0x6b, 0x84, 0x22, 0x7d, 0xbc, 0x75, 0x53, 0x51, 0xb7, 0x8e, 0x7c, 0x6c, 0xb8, 0x6c, 0x0b, 0x22, 0x53, 0x6f, 0x39, 0x46, 0x03, 0x64, 0x6e, 0xd0, 0x3d, 0x96, 0x58, 0x51, 0xbc, 0x41, 0xbb, 0x08, 0x94, 0x99, 0xc5, 0x19, 0x87, 0xb8, 0x99, 0xa8, 0x35, 0x3d, 0x99, 0x7e, 0x04, 0x0f, 0xdd, 0x35, 0x29, 0x0a, 0x26, 0x27, 0xf0, 0xa3, 0xab, }; static const unsigned char ecdsa_secp256k1_sha512_6200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6200_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6200 = { .name = "ecdsa_secp256k1_sha512_6200", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6200_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6200_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6200_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 183 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6201 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6201_pubkey[] = { 0x12, 0xc9, 0x0a, 0x5d, 0xeb, 0xd8, 0x8d, 0x42, 0x68, 0x6b, 0x84, 0x22, 0x7d, 0xbc, 0x75, 0x53, 0x51, 0xb7, 0x8e, 0x7c, 0x6c, 0xb8, 0x6c, 0x0b, 0x22, 0x53, 0x6f, 0x39, 0x46, 0x03, 0x64, 0x6e, 0xd0, 0x3d, 0x96, 0x58, 0x51, 0xbc, 0x41, 0xbb, 0x08, 0x94, 0x99, 0xc5, 0x19, 0x87, 0xb8, 0x99, 0xa8, 0x35, 0x3d, 0x99, 0x7e, 0x04, 0x0f, 0xdd, 0x35, 0x29, 0x0a, 0x26, 0x27, 0xf0, 0xa3, 0xab, }; static const unsigned char ecdsa_secp256k1_sha512_6201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6201_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6201 = { .name = "ecdsa_secp256k1_sha512_6201", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6201_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6201_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6201_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 184 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6202 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6202_pubkey[] = { 0x91, 0x3e, 0xd0, 0x43, 0x02, 0x2e, 0xe5, 0x90, 0xf5, 0x9e, 0x44, 0xf5, 0x19, 0xe5, 0xcf, 0xd9, 0xd6, 0xf1, 0xb8, 0x4a, 0x50, 0xfb, 0x41, 0x7e, 0x9a, 0xd0, 0x66, 0x83, 0xc6, 0xaf, 0xa1, 0x94, 0xb6, 0x8f, 0xb8, 0x0d, 0x6e, 0xf2, 0x61, 0xb5, 0xa6, 0x3b, 0x57, 0xf8, 0x71, 0xd2, 0xea, 0x72, 0x24, 0x31, 0x9f, 0x5f, 0xa3, 0xed, 0x3d, 0xd7, 0x7f, 0x10, 0x12, 0xdb, 0xa1, 0x9d, 0x03, 0x95, }; static const unsigned char ecdsa_secp256k1_sha512_6202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6202_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6202 = { .name = "ecdsa_secp256k1_sha512_6202", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6202_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6202_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6202_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 185 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6203 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6203_pubkey[] = { 0x64, 0x4c, 0xc5, 0x4e, 0x84, 0x46, 0x72, 0x13, 0xfa, 0xfe, 0x2a, 0x44, 0x51, 0xdb, 0xa5, 0x50, 0xf3, 0xea, 0x76, 0xea, 0x99, 0x70, 0xbd, 0x62, 0x51, 0xfc, 0x77, 0x83, 0xa4, 0x20, 0xd8, 0xb5, 0x1c, 0xd9, 0x43, 0x91, 0x55, 0xec, 0x45, 0xd5, 0x63, 0x46, 0x77, 0xc2, 0x81, 0x15, 0x4b, 0xbd, 0xf9, 0x9f, 0xe4, 0x40, 0x51, 0xdc, 0xec, 0x32, 0x20, 0x53, 0xca, 0x69, 0xea, 0x88, 0x29, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha512_6203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6203_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6203 = { .name = "ecdsa_secp256k1_sha512_6203", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6203_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6203_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6203_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6204 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6204_pubkey[] = { 0x0a, 0x11, 0xd4, 0x21, 0x54, 0xbd, 0x2d, 0xe1, 0x0c, 0xa9, 0x23, 0x21, 0xfb, 0x6b, 0x3e, 0x63, 0x8e, 0xe8, 0xb5, 0xa7, 0xfb, 0x4f, 0xb5, 0xf5, 0x01, 0xb4, 0x45, 0x15, 0xcf, 0x60, 0xe8, 0xc9, 0x06, 0xcc, 0xaa, 0xb8, 0x74, 0x8c, 0xd3, 0x8e, 0xce, 0x73, 0xdd, 0xc9, 0x75, 0xbc, 0x30, 0x7e, 0x7d, 0xe1, 0x72, 0x35, 0x7e, 0x14, 0xcd, 0x96, 0xa9, 0x4b, 0xb3, 0x46, 0x1d, 0x32, 0xd5, 0x0e, }; static const unsigned char ecdsa_secp256k1_sha512_6204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6204_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6204 = { .name = "ecdsa_secp256k1_sha512_6204", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6204_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6204_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6204_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 187 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6205 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6205_pubkey[] = { 0x9f, 0xa2, 0xc3, 0x2b, 0xb3, 0x49, 0x84, 0x6a, 0xcb, 0x5a, 0xf1, 0x4e, 0x1c, 0x67, 0xac, 0xfd, 0xd8, 0x96, 0x3e, 0xd2, 0x51, 0xc4, 0xb5, 0x78, 0x3c, 0xad, 0x4b, 0xcd, 0xd0, 0xfd, 0x50, 0x5d, 0x6f, 0x72, 0x49, 0x37, 0x21, 0x7d, 0x1e, 0x54, 0x83, 0x92, 0x04, 0x05, 0xcf, 0x1b, 0x20, 0x20, 0x07, 0x97, 0x52, 0x1c, 0x46, 0x4a, 0x23, 0x55, 0xfd, 0xde, 0x53, 0x06, 0xf2, 0xa9, 0xe4, 0x48, }; static const unsigned char ecdsa_secp256k1_sha512_6205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6205_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6205 = { .name = "ecdsa_secp256k1_sha512_6205", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6205_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6205_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6205_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 188 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6206 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6206_pubkey[] = { 0x9f, 0xa2, 0xc3, 0x2b, 0xb3, 0x49, 0x84, 0x6a, 0xcb, 0x5a, 0xf1, 0x4e, 0x1c, 0x67, 0xac, 0xfd, 0xd8, 0x96, 0x3e, 0xd2, 0x51, 0xc4, 0xb5, 0x78, 0x3c, 0xad, 0x4b, 0xcd, 0xd0, 0xfd, 0x50, 0x5d, 0x6f, 0x72, 0x49, 0x37, 0x21, 0x7d, 0x1e, 0x54, 0x83, 0x92, 0x04, 0x05, 0xcf, 0x1b, 0x20, 0x20, 0x07, 0x97, 0x52, 0x1c, 0x46, 0x4a, 0x23, 0x55, 0xfd, 0xde, 0x53, 0x06, 0xf2, 0xa9, 0xe4, 0x48, }; static const unsigned char ecdsa_secp256k1_sha512_6206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6206_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6206 = { .name = "ecdsa_secp256k1_sha512_6206", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6206_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6206_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6206_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 189 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6207 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6207_pubkey[] = { 0x60, 0xea, 0xce, 0x95, 0x00, 0x12, 0x01, 0xcf, 0x4c, 0x83, 0xb5, 0x80, 0xfb, 0x69, 0x8b, 0xb6, 0xab, 0xf4, 0x46, 0xe5, 0xc5, 0x6f, 0xf9, 0x45, 0xeb, 0x57, 0x69, 0xb1, 0xa4, 0x77, 0xb5, 0x50, 0x69, 0xf5, 0x35, 0x4a, 0x77, 0xfe, 0x2d, 0x60, 0x15, 0x28, 0xf1, 0x26, 0xc9, 0xa6, 0x85, 0x8d, 0xee, 0xdd, 0xb9, 0xe5, 0xec, 0x40, 0x83, 0x56, 0xd0, 0x5e, 0xd5, 0xc8, 0x0d, 0x62, 0xb8, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6207_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6207 = { .name = "ecdsa_secp256k1_sha512_6207", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6207_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6207_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6207_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 190 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6208 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6208_pubkey[] = { 0x60, 0xea, 0xce, 0x95, 0x00, 0x12, 0x01, 0xcf, 0x4c, 0x83, 0xb5, 0x80, 0xfb, 0x69, 0x8b, 0xb6, 0xab, 0xf4, 0x46, 0xe5, 0xc5, 0x6f, 0xf9, 0x45, 0xeb, 0x57, 0x69, 0xb1, 0xa4, 0x77, 0xb5, 0x50, 0x69, 0xf5, 0x35, 0x4a, 0x77, 0xfe, 0x2d, 0x60, 0x15, 0x28, 0xf1, 0x26, 0xc9, 0xa6, 0x85, 0x8d, 0xee, 0xdd, 0xb9, 0xe5, 0xec, 0x40, 0x83, 0x56, 0xd0, 0x5e, 0xd5, 0xc8, 0x0d, 0x62, 0xb8, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6208_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6208 = { .name = "ecdsa_secp256k1_sha512_6208", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6208_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6208_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6208_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 191 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6209 for ECDSA, tcId is 192 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6209_pubkey[] = { 0xf1, 0xa5, 0x7d, 0x93, 0x46, 0x84, 0x23, 0x10, 0x97, 0x5e, 0xd3, 0x56, 0x67, 0x2a, 0x48, 0xa0, 0x6a, 0x70, 0xb5, 0xef, 0xbc, 0x0c, 0x23, 0x28, 0x7c, 0x9b, 0x99, 0x52, 0xec, 0x95, 0x5b, 0x33, 0x00, 0x91, 0xae, 0xe1, 0x22, 0x4e, 0xcd, 0x69, 0x79, 0x18, 0x56, 0xc5, 0x21, 0xb1, 0x2d, 0xf1, 0x72, 0xb4, 0x5a, 0x5c, 0xe2, 0x47, 0xe6, 0xdc, 0xac, 0xa7, 0x34, 0x96, 0x84, 0x27, 0x8f, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6209_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6209 = { .name = "ecdsa_secp256k1_sha512_6209", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6209_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6209_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6209_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 192 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6210 for ECDSA, tcId is 193 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6210_pubkey[] = { 0xf1, 0xa5, 0x7d, 0x93, 0x46, 0x84, 0x23, 0x10, 0x97, 0x5e, 0xd3, 0x56, 0x67, 0x2a, 0x48, 0xa0, 0x6a, 0x70, 0xb5, 0xef, 0xbc, 0x0c, 0x23, 0x28, 0x7c, 0x9b, 0x99, 0x52, 0xec, 0x95, 0x5b, 0x33, 0x00, 0x91, 0xae, 0xe1, 0x22, 0x4e, 0xcd, 0x69, 0x79, 0x18, 0x56, 0xc5, 0x21, 0xb1, 0x2d, 0xf1, 0x72, 0xb4, 0x5a, 0x5c, 0xe2, 0x47, 0xe6, 0xdc, 0xac, 0xa7, 0x34, 0x96, 0x84, 0x27, 0x8f, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6210_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6210 = { .name = "ecdsa_secp256k1_sha512_6210", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6210_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6210_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6210_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 193 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6211 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6211_pubkey[] = { 0xf1, 0xa5, 0x7d, 0x93, 0x46, 0x84, 0x23, 0x10, 0x97, 0x5e, 0xd3, 0x56, 0x67, 0x2a, 0x48, 0xa0, 0x6a, 0x70, 0xb5, 0xef, 0xbc, 0x0c, 0x23, 0x28, 0x7c, 0x9b, 0x99, 0x52, 0xec, 0x95, 0x5b, 0x33, 0x00, 0x91, 0xae, 0xe1, 0x22, 0x4e, 0xcd, 0x69, 0x79, 0x18, 0x56, 0xc5, 0x21, 0xb1, 0x2d, 0xf1, 0x72, 0xb4, 0x5a, 0x5c, 0xe2, 0x47, 0xe6, 0xdc, 0xac, 0xa7, 0x34, 0x96, 0x84, 0x27, 0x8f, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6211_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6211 = { .name = "ecdsa_secp256k1_sha512_6211", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6211_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6211_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6211_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 194 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6212 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6212_pubkey[] = { 0x96, 0x8a, 0x49, 0x3f, 0x27, 0x9c, 0x0f, 0x8e, 0xa9, 0xf2, 0x44, 0x6e, 0x36, 0x1e, 0xe5, 0xb9, 0x75, 0x70, 0x39, 0xd5, 0x7a, 0x80, 0x03, 0xe6, 0xfd, 0x73, 0x1d, 0x4d, 0xc6, 0xa2, 0xd2, 0xca, 0x67, 0x84, 0xc5, 0x48, 0x4f, 0xe7, 0x97, 0xc8, 0x30, 0xaa, 0x49, 0xa7, 0x2c, 0xf8, 0x53, 0x75, 0x52, 0x32, 0x28, 0x39, 0x3b, 0x73, 0x0b, 0x20, 0xb0, 0x4a, 0x19, 0x20, 0x32, 0xaf, 0x4d, 0x29, }; static const unsigned char ecdsa_secp256k1_sha512_6212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6212_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6212 = { .name = "ecdsa_secp256k1_sha512_6212", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6212_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6212_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6212_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 195 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6213 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6213_pubkey[] = { 0xb3, 0xc7, 0xfb, 0xdf, 0x1d, 0x74, 0x72, 0xf7, 0xbd, 0x57, 0x87, 0x57, 0x76, 0x2c, 0x8e, 0xbc, 0x92, 0x2f, 0xf0, 0x63, 0xb0, 0xae, 0x9c, 0x3a, 0xa9, 0xcd, 0x81, 0x60, 0x0a, 0xbe, 0xa7, 0x6c, 0x03, 0x8e, 0xeb, 0x38, 0x52, 0xb8, 0x36, 0xc0, 0x64, 0x9f, 0xd8, 0x2f, 0xe5, 0xd1, 0xd0, 0x2c, 0x3d, 0x0d, 0xbb, 0x30, 0xfb, 0xcd, 0x7f, 0xe4, 0x18, 0x66, 0xeb, 0xc3, 0xbd, 0x92, 0x7c, 0x69, }; static const unsigned char ecdsa_secp256k1_sha512_6213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6213_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6213 = { .name = "ecdsa_secp256k1_sha512_6213", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6213_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6213_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6213_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 196 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6214 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6214_pubkey[] = { 0x75, 0x9f, 0xdd, 0x1a, 0x64, 0xc0, 0x00, 0x18, 0x8b, 0x87, 0xeb, 0x0d, 0xdd, 0x29, 0x1a, 0x50, 0x35, 0x8f, 0xca, 0x2b, 0x0a, 0x5b, 0x92, 0xf0, 0x27, 0x57, 0x38, 0x45, 0xdc, 0x40, 0xb2, 0x7a, 0x12, 0xec, 0x1b, 0x28, 0x92, 0xef, 0x46, 0x70, 0x0f, 0x13, 0xcf, 0xf8, 0xeb, 0x88, 0xf4, 0x00, 0x76, 0xcc, 0x81, 0x14, 0x78, 0xb0, 0x08, 0xf5, 0xaa, 0xbe, 0xe4, 0xa7, 0x4b, 0x45, 0x46, 0xf1, }; static const unsigned char ecdsa_secp256k1_sha512_6214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6214_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6214 = { .name = "ecdsa_secp256k1_sha512_6214", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6214_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6214_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6214_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 197 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6215 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6215_pubkey[] = { 0x48, 0x82, 0x82, 0x5a, 0x89, 0x2d, 0x30, 0x26, 0x72, 0x64, 0xe3, 0x00, 0xe8, 0x68, 0xab, 0x5d, 0x4b, 0x0f, 0xfc, 0x9e, 0xf3, 0xc2, 0xcb, 0x6e, 0x90, 0xd6, 0x1d, 0x23, 0x8d, 0xae, 0xd8, 0x56, 0xe4, 0xc8, 0x24, 0x8a, 0x18, 0x9e, 0xb3, 0x6d, 0x83, 0x74, 0x0f, 0x59, 0x28, 0xcb, 0x80, 0x2f, 0xb9, 0xc5, 0x0b, 0x5a, 0x18, 0xc9, 0x19, 0x63, 0x44, 0xa0, 0xc2, 0xcb, 0x74, 0x41, 0x64, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6215_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6215 = { .name = "ecdsa_secp256k1_sha512_6215", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6215_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6215_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6215_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 198 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6216 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6216_pubkey[] = { 0xc4, 0xd1, 0xb1, 0xfd, 0xf2, 0x74, 0xcf, 0x83, 0xf3, 0x39, 0x5a, 0x70, 0xa3, 0x6c, 0x94, 0xf7, 0xc5, 0x1f, 0x1a, 0x31, 0xe9, 0x95, 0x14, 0xb4, 0xef, 0x10, 0xba, 0x13, 0x04, 0x75, 0x6c, 0xaf, 0x4e, 0xaf, 0x43, 0x5b, 0x20, 0xdd, 0x76, 0xd6, 0xef, 0x44, 0x78, 0x69, 0x50, 0x3d, 0xa9, 0xb2, 0x8f, 0x0e, 0xa0, 0x8e, 0xdf, 0x28, 0x74, 0x24, 0xd4, 0x4a, 0xa0, 0x4b, 0x25, 0x4c, 0x17, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6216_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6216 = { .name = "ecdsa_secp256k1_sha512_6216", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6216_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6216_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6216_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 199 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6217 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6217_pubkey[] = { 0x33, 0x76, 0xdf, 0x73, 0x76, 0xd5, 0xe6, 0x51, 0xd4, 0x5b, 0x8e, 0xc2, 0xe5, 0xff, 0x9d, 0x89, 0x1c, 0x6f, 0xdd, 0x6d, 0xbb, 0xb5, 0x2b, 0x04, 0x6e, 0x6b, 0x5a, 0xc4, 0xc9, 0xfa, 0xce, 0xdf, 0x76, 0xcf, 0x27, 0xf9, 0xfc, 0xb6, 0x54, 0x03, 0xb1, 0xf5, 0x85, 0xa2, 0xda, 0xfe, 0x26, 0xb4, 0x3e, 0xbd, 0x62, 0x2b, 0xac, 0xcd, 0xe6, 0x99, 0xd8, 0x1c, 0x9b, 0xe9, 0x8d, 0xf9, 0xf4, 0xdf, }; static const unsigned char ecdsa_secp256k1_sha512_6217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6217_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6217 = { .name = "ecdsa_secp256k1_sha512_6217", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6217_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6217_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6217_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 200 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6218 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6218_pubkey[] = { 0x50, 0x77, 0xfd, 0xd2, 0x02, 0xfd, 0xb4, 0x19, 0x4b, 0x05, 0x49, 0x1b, 0x6c, 0x05, 0x3f, 0xff, 0x87, 0x60, 0x69, 0x75, 0x31, 0xfc, 0x52, 0x27, 0x87, 0x9e, 0x9c, 0xbe, 0xc3, 0x30, 0x95, 0x85, 0xd0, 0xb5, 0xcf, 0xfb, 0x3e, 0x0f, 0xdf, 0xb1, 0xc0, 0x6e, 0x6d, 0x11, 0xa1, 0x18, 0x27, 0x52, 0x73, 0x0c, 0xfe, 0x43, 0x9f, 0x7a, 0x4f, 0x8a, 0x49, 0xb9, 0xc2, 0x92, 0x4f, 0x49, 0xec, 0x14, }; static const unsigned char ecdsa_secp256k1_sha512_6218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6218_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6218 = { .name = "ecdsa_secp256k1_sha512_6218", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6218_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6218_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6218_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 201 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6219 for ECDSA, tcId is 202 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6219_pubkey[] = { 0x1b, 0x1f, 0x77, 0x3b, 0x47, 0x2d, 0xac, 0x5e, 0x1a, 0xdf, 0x94, 0xe6, 0x9d, 0x86, 0x5b, 0x40, 0x4d, 0x2c, 0xc9, 0x2c, 0xff, 0x7b, 0xb6, 0x6c, 0xf2, 0x19, 0x79, 0x78, 0xf6, 0xc4, 0x5d, 0x08, 0xa9, 0x72, 0x57, 0x91, 0xc5, 0xf3, 0x37, 0x87, 0x97, 0x7a, 0x9d, 0xdf, 0xa6, 0x92, 0x96, 0xbe, 0x99, 0x8a, 0x96, 0x8c, 0x51, 0xec, 0x7f, 0x1c, 0x54, 0x47, 0x79, 0x3b, 0xc5, 0x62, 0x86, 0xb3, }; static const unsigned char ecdsa_secp256k1_sha512_6219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6219_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6219 = { .name = "ecdsa_secp256k1_sha512_6219", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6219_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6219_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6219_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 202 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6220 for ECDSA, tcId is 203 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6220_pubkey[] = { 0x1b, 0x1f, 0x77, 0x3b, 0x47, 0x2d, 0xac, 0x5e, 0x1a, 0xdf, 0x94, 0xe6, 0x9d, 0x86, 0x5b, 0x40, 0x4d, 0x2c, 0xc9, 0x2c, 0xff, 0x7b, 0xb6, 0x6c, 0xf2, 0x19, 0x79, 0x78, 0xf6, 0xc4, 0x5d, 0x08, 0xa9, 0x72, 0x57, 0x91, 0xc5, 0xf3, 0x37, 0x87, 0x97, 0x7a, 0x9d, 0xdf, 0xa6, 0x92, 0x96, 0xbe, 0x99, 0x8a, 0x96, 0x8c, 0x51, 0xec, 0x7f, 0x1c, 0x54, 0x47, 0x79, 0x3b, 0xc5, 0x62, 0x86, 0xb3, }; static const unsigned char ecdsa_secp256k1_sha512_6220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6220_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6220 = { .name = "ecdsa_secp256k1_sha512_6220", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6220_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6220_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6220_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 203 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6221 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6221_pubkey[] = { 0x2f, 0x20, 0xbc, 0x22, 0x32, 0xb4, 0xba, 0x9d, 0x75, 0xfe, 0xa6, 0xa9, 0x2b, 0xc8, 0x27, 0xd9, 0x1c, 0x5a, 0x8f, 0x5c, 0x88, 0x7f, 0x4e, 0x30, 0x4d, 0x76, 0x65, 0x6b, 0xa1, 0x59, 0x99, 0xea, 0x5f, 0x83, 0x24, 0x2e, 0xfb, 0xd5, 0x7d, 0xd1, 0x6d, 0xbd, 0x3d, 0xe0, 0x91, 0x5b, 0xdb, 0x2d, 0xde, 0xc2, 0x01, 0xd2, 0xf7, 0x49, 0xb1, 0x3f, 0xc2, 0x2c, 0x22, 0x3a, 0x26, 0x44, 0xdc, 0xdc, }; static const unsigned char ecdsa_secp256k1_sha512_6221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6221_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6221 = { .name = "ecdsa_secp256k1_sha512_6221", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6221_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6221_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6221_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 204 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6222 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6222_pubkey[] = { 0x9e, 0x00, 0x9c, 0xd0, 0xa1, 0xa7, 0xd0, 0xc5, 0x17, 0x65, 0x16, 0x9c, 0x46, 0x8e, 0x62, 0xe5, 0x6f, 0xc4, 0xf3, 0xff, 0x02, 0xe8, 0x66, 0x6c, 0x55, 0x48, 0x34, 0x19, 0xa2, 0x56, 0x00, 0x32, 0xcd, 0x36, 0xd7, 0x13, 0xac, 0xd5, 0x04, 0x59, 0x8f, 0xf3, 0xb4, 0xf5, 0x80, 0x46, 0xa4, 0x69, 0x0f, 0x55, 0x0b, 0xd6, 0x0e, 0xf4, 0xc8, 0x23, 0xc5, 0xc5, 0x81, 0xc6, 0xb8, 0x99, 0x31, 0x5e, }; static const unsigned char ecdsa_secp256k1_sha512_6222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6222_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6222 = { .name = "ecdsa_secp256k1_sha512_6222", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6222_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6222_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6222_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 205 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6223 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6223_pubkey[] = { 0xaf, 0x58, 0xa6, 0xec, 0xc8, 0x25, 0x4b, 0x9b, 0x83, 0x1a, 0xe0, 0x44, 0x1c, 0x13, 0x99, 0x08, 0x02, 0xc3, 0xd6, 0x8c, 0x30, 0x1d, 0x43, 0x63, 0x4c, 0x71, 0xf1, 0x97, 0x4c, 0x09, 0xe7, 0x04, 0xd9, 0x20, 0x61, 0x2d, 0x82, 0xf3, 0x2f, 0xca, 0x43, 0x6c, 0x5c, 0x50, 0x97, 0x50, 0x52, 0x71, 0x49, 0x48, 0x75, 0x40, 0x27, 0x31, 0xd0, 0x3d, 0xba, 0x94, 0x2b, 0x35, 0x53, 0x06, 0xc7, 0x83, }; static const unsigned char ecdsa_secp256k1_sha512_6223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6223_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6223 = { .name = "ecdsa_secp256k1_sha512_6223", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6223_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6223_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6223_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 206 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6224 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6224_pubkey[] = { 0x4a, 0x72, 0x17, 0xca, 0xbc, 0x95, 0xb4, 0x96, 0xf3, 0xf4, 0xe1, 0x2d, 0x54, 0xe9, 0xde, 0xf7, 0x65, 0x1b, 0x86, 0x6b, 0xe6, 0x9d, 0x36, 0x95, 0xcd, 0x77, 0xad, 0x2e, 0x3a, 0x3f, 0x13, 0xd1, 0xd0, 0xfa, 0x71, 0xbf, 0x21, 0xd2, 0xc0, 0x0b, 0x1f, 0xf4, 0xcc, 0x76, 0xb5, 0x3a, 0x9c, 0x5c, 0x2a, 0x8a, 0x8b, 0x6b, 0x4c, 0x2e, 0xc8, 0x8b, 0x99, 0xee, 0x53, 0x7a, 0xc6, 0x26, 0x2b, 0x3d, }; static const unsigned char ecdsa_secp256k1_sha512_6224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6224_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6224 = { .name = "ecdsa_secp256k1_sha512_6224", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6224_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6224_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6224_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 207 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6225 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6225_pubkey[] = { 0x00, 0xa4, 0x2e, 0x27, 0x7c, 0xe6, 0x57, 0xfb, 0x3d, 0xd0, 0x7e, 0x13, 0x5a, 0x3c, 0xb9, 0xb0, 0xa7, 0x5a, 0x30, 0xbd, 0x8b, 0x64, 0x91, 0x16, 0x06, 0xee, 0x68, 0x37, 0x1e, 0x56, 0x12, 0x44, 0x67, 0xcf, 0x22, 0xe2, 0x6a, 0x70, 0x09, 0x04, 0x5b, 0x73, 0xff, 0x19, 0xcd, 0x79, 0x85, 0x1c, 0xce, 0xaa, 0xd9, 0xae, 0x72, 0xef, 0x2d, 0x04, 0x3d, 0x75, 0x36, 0x52, 0x45, 0xbe, 0xfa, 0x06, }; static const unsigned char ecdsa_secp256k1_sha512_6225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6225_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6225 = { .name = "ecdsa_secp256k1_sha512_6225", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6225_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6225_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6225_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 208 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6226 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6226_pubkey[] = { 0x85, 0x20, 0xb9, 0x50, 0x2f, 0x9a, 0x5e, 0xd7, 0x53, 0xf0, 0x9a, 0x52, 0x82, 0xca, 0xd7, 0x21, 0xf5, 0xeb, 0xfb, 0x3d, 0xb4, 0x14, 0x2d, 0x66, 0x7c, 0x62, 0x79, 0x86, 0x9e, 0x76, 0xbc, 0xf1, 0x67, 0x8e, 0x9b, 0xbd, 0x04, 0xa5, 0x14, 0x60, 0xaf, 0xc4, 0x0a, 0x3e, 0x0c, 0xb7, 0xb0, 0xf8, 0xb8, 0xad, 0xd8, 0x9b, 0x29, 0x79, 0x75, 0x8a, 0x5a, 0x1f, 0xfe, 0xb4, 0x58, 0x4e, 0xe4, 0x9e, }; static const unsigned char ecdsa_secp256k1_sha512_6226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6226_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6226 = { .name = "ecdsa_secp256k1_sha512_6226", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6226_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6226_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6226_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 209 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6227 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6227_pubkey[] = { 0xb5, 0xde, 0xca, 0x0f, 0xe0, 0x29, 0x69, 0x05, 0xaa, 0xc2, 0x7e, 0x36, 0x04, 0xa9, 0x5a, 0x0a, 0x2e, 0xcb, 0xee, 0x9f, 0xc4, 0x53, 0xd2, 0xe1, 0x16, 0x46, 0x32, 0x96, 0x44, 0x54, 0xd0, 0xc9, 0x4f, 0x9e, 0x4e, 0x85, 0xa1, 0x43, 0xee, 0x67, 0x7d, 0x40, 0x91, 0x9c, 0x71, 0x01, 0x4e, 0x8c, 0xab, 0xf4, 0xd9, 0xdb, 0x74, 0x42, 0xfe, 0x4b, 0x96, 0x29, 0x8f, 0x99, 0xf9, 0x0c, 0xa6, 0x7f, }; static const unsigned char ecdsa_secp256k1_sha512_6227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6227_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6227 = { .name = "ecdsa_secp256k1_sha512_6227", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6227_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6227_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6227_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 210 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6228 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6228_pubkey[] = { 0x5d, 0xcb, 0x27, 0x67, 0xdc, 0x85, 0x1e, 0x20, 0x91, 0x1e, 0xd7, 0xbe, 0x39, 0xdd, 0x87, 0xba, 0x81, 0xc7, 0xa6, 0xd1, 0x02, 0x55, 0xdf, 0xb8, 0x25, 0xf2, 0x41, 0x48, 0x6f, 0x98, 0xae, 0x10, 0xf8, 0xa9, 0xef, 0x73, 0x6b, 0x3e, 0x11, 0xd7, 0xd5, 0x4a, 0x0e, 0x08, 0x69, 0x02, 0xfb, 0x47, 0x72, 0x46, 0xec, 0x8c, 0x57, 0xde, 0x65, 0xd3, 0x36, 0x57, 0x0b, 0x65, 0xf6, 0x5e, 0x0d, 0x83, }; static const unsigned char ecdsa_secp256k1_sha512_6228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6228_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x6b, 0xfd, 0x55, 0xa9, 0x4e, 0x53, 0x0b, 0xd9, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0x56, 0xd4, 0x20, 0xa6, 0x4d, 0x87, 0x46, 0x94, 0xc7, 0x01, 0xe7, 0x14, 0x51, 0x1d, 0x16, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6228 = { .name = "ecdsa_secp256k1_sha512_6228", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6228_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6228_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6228_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 211 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6229 for ECDSA, tcId is 212 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6229_pubkey[] = { 0xc8, 0xe1, 0x44, 0xc8, 0x53, 0xa7, 0xe1, 0xa6, 0xf5, 0xbb, 0xab, 0xe7, 0xef, 0x91, 0xef, 0x5b, 0x15, 0x21, 0x13, 0x21, 0x0d, 0x44, 0xfd, 0x58, 0xd3, 0xcb, 0x61, 0x85, 0x18, 0x4e, 0x16, 0x8a, 0xac, 0x40, 0xfb, 0x36, 0x18, 0x88, 0x21, 0x93, 0xfc, 0x6d, 0x11, 0x37, 0x60, 0xe4, 0x76, 0x46, 0x5d, 0xf4, 0x90, 0x67, 0x48, 0x0a, 0x0a, 0x7c, 0xff, 0xe6, 0x86, 0x51, 0x5b, 0x33, 0x91, 0xa8, }; static const unsigned char ecdsa_secp256k1_sha512_6229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6229_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb4, 0x94, 0xbd, 0x67, 0xc2, 0x09, 0xa5, 0xad, 0xb1, 0xc9, 0xa0, 0x93, 0x37, 0xe2, 0x62, 0x9b, 0x03, 0xf8, 0xa9, 0x24, 0xbe, 0x53, 0xc5, 0x42, 0x47, 0x8e, 0x58, 0x64, 0xed, 0x26, 0x22, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6229 = { .name = "ecdsa_secp256k1_sha512_6229", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6229_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6229_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6229_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 212 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6230 for ECDSA, tcId is 213 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6230_pubkey[] = { 0x7f, 0xfe, 0x18, 0x5a, 0x23, 0xeb, 0x5b, 0x73, 0x67, 0x04, 0x38, 0x7e, 0x63, 0x57, 0x62, 0x8a, 0x65, 0x98, 0x49, 0x85, 0x77, 0x3b, 0x44, 0x73, 0xcf, 0x9e, 0xf5, 0x60, 0xb3, 0xfa, 0x50, 0x51, 0x47, 0x40, 0xcb, 0x12, 0x17, 0xf1, 0xad, 0x2b, 0x59, 0x10, 0xd7, 0xf7, 0x49, 0x06, 0x60, 0x2b, 0x1f, 0x95, 0x50, 0xb3, 0xd1, 0x1c, 0xff, 0x70, 0x5b, 0x35, 0x8c, 0x3b, 0xcb, 0xf7, 0x2c, 0x3d, }; static const unsigned char ecdsa_secp256k1_sha512_6230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6230_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xaa, 0xd4, 0xe2, 0xb6, 0x9a, 0x9f, 0x37, 0x8d, 0xae, 0x78, 0x73, 0xb4, 0x0f, 0x7c, 0x15, 0xcb, 0x45, 0x65, 0xfc, 0xc8, 0xcb, 0xc0, 0xec, 0x55, 0xb0, 0xbd, 0x3f, 0xe9, 0xd8, 0x62, 0x6b, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6230 = { .name = "ecdsa_secp256k1_sha512_6230", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6230_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6230_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6230_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6231 for ECDSA, tcId is 214 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6231_pubkey[] = { 0x8a, 0x85, 0x82, 0x26, 0x15, 0x5e, 0x34, 0xdb, 0xb7, 0xe5, 0xda, 0xc7, 0xf1, 0x31, 0x27, 0xc8, 0x1c, 0x6c, 0xe8, 0xc9, 0xd8, 0x91, 0x91, 0x8c, 0x67, 0xc8, 0x73, 0x8d, 0x7e, 0x4b, 0x46, 0xe9, 0x6c, 0x13, 0x86, 0xe8, 0x4c, 0x61, 0x23, 0x12, 0xde, 0x53, 0xe9, 0xe4, 0xaf, 0x34, 0xd9, 0xbd, 0x57, 0xf9, 0x3d, 0x9a, 0x06, 0xb8, 0x55, 0xb6, 0xe0, 0xb0, 0x6a, 0xd4, 0x13, 0x7f, 0xf5, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha512_6231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6231_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x73, 0xfe, 0xc4, 0x99, 0x5e, 0x9d, 0x31, 0x40, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0x13, 0xe9, 0x53, 0x89, 0xfb, 0x59, 0x9d, 0x22, 0xf2, 0x40, 0x39, 0x39, 0x2a, 0x40, 0x14, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6231 = { .name = "ecdsa_secp256k1_sha512_6231", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6231_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6231_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6231_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6232 for ECDSA, tcId is 215 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6232_pubkey[] = { 0xae, 0xc0, 0xbe, 0x72, 0x9b, 0x02, 0xf2, 0x66, 0xc5, 0x42, 0xd1, 0x39, 0xa3, 0xe0, 0x41, 0x10, 0xc9, 0x33, 0xe8, 0xec, 0xa1, 0x00, 0x8e, 0x8d, 0xba, 0x38, 0xd7, 0x5e, 0x7f, 0x8f, 0xab, 0x53, 0x2c, 0xd6, 0x88, 0xd9, 0x24, 0xb4, 0x56, 0x84, 0x8b, 0xd5, 0xc6, 0x51, 0x44, 0x4c, 0x67, 0xa9, 0x39, 0x9f, 0xdf, 0xb5, 0xb5, 0xb9, 0x69, 0x31, 0x62, 0xc1, 0x72, 0x8b, 0xfa, 0xdc, 0x10, 0x46, }; static const unsigned char ecdsa_secp256k1_sha512_6232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6232_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xec, 0x49, 0x95, 0xe9, 0xd3, 0x14, 0x0b, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x73, 0xdc, 0x25, 0xf4, 0x25, 0x7a, 0x91, 0x1e, 0x31, 0x0e, 0x38, 0x74, 0x4b, 0x48, 0x2a, 0x5a, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6232 = { .name = "ecdsa_secp256k1_sha512_6232", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6232_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6232_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6232_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6233 for ECDSA, tcId is 216 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6233_pubkey[] = { 0x01, 0xed, 0x4b, 0x5f, 0x94, 0x1f, 0x44, 0x3b, 0x31, 0xa7, 0xe2, 0x58, 0x3e, 0xa1, 0x65, 0x55, 0x1d, 0x18, 0x15, 0xb5, 0x47, 0x40, 0xde, 0xb1, 0x2e, 0x9f, 0xde, 0xff, 0x32, 0xe2, 0x30, 0x61, 0x84, 0x38, 0x5c, 0xa4, 0x48, 0xcc, 0x5d, 0xd7, 0x11, 0x39, 0xbd, 0xa3, 0xab, 0x42, 0xd0, 0xb6, 0xe4, 0x4d, 0x71, 0x9e, 0x52, 0xff, 0xf6, 0x4d, 0x97, 0x18, 0x76, 0xef, 0xa9, 0x10, 0x9f, 0xb2, }; static const unsigned char ecdsa_secp256k1_sha512_6233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6233_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd8, 0x93, 0x2b, 0xd3, 0xa6, 0x28, 0x17, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xe8, 0xfd, 0x9d, 0x0b, 0x64, 0x45, 0xd9, 0x9c, 0x26, 0x5c, 0x9e, 0x8a, 0x09, 0xc0, 0x1e, 0x72, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6233 = { .name = "ecdsa_secp256k1_sha512_6233", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6233_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6233_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6233_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6234 for ECDSA, tcId is 217 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6234_pubkey[] = { 0x59, 0xc4, 0x27, 0xcb, 0x65, 0x25, 0xea, 0xb5, 0x11, 0xa0, 0x6e, 0x03, 0xe0, 0x0c, 0xf2, 0xaa, 0xb4, 0xab, 0xc5, 0x87, 0xc2, 0x60, 0x15, 0x34, 0x33, 0x8a, 0x50, 0xbc, 0x25, 0x70, 0x1a, 0x70, 0x3e, 0x4e, 0xb3, 0x88, 0xb4, 0x53, 0xcb, 0xae, 0xa5, 0x94, 0xd6, 0xb5, 0xc1, 0x4a, 0x51, 0x9a, 0xc3, 0xfd, 0xa7, 0x70, 0xc5, 0x35, 0x80, 0xbe, 0xef, 0xc6, 0x8f, 0x09, 0x20, 0x0d, 0x55, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6234_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x9d, 0x31, 0x40, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa3, 0xba, 0x17, 0x6f, 0x06, 0xc2, 0xb6, 0xe3, 0x73, 0x63, 0xe2, 0xce, 0x1c, 0x14, 0x1f, 0x3c, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6234 = { .name = "ecdsa_secp256k1_sha512_6234", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6234_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6234_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6234_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6235 for ECDSA, tcId is 218 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6235_pubkey[] = { 0x04, 0xac, 0xbb, 0xcd, 0x23, 0xcf, 0x2e, 0xc8, 0x19, 0xfd, 0x29, 0x7a, 0xb2, 0xcb, 0x54, 0x07, 0xed, 0xe6, 0x31, 0x95, 0x18, 0x65, 0x1a, 0x39, 0x1e, 0x94, 0x1c, 0xc8, 0x00, 0x35, 0x68, 0x33, 0x12, 0x06, 0xdd, 0x00, 0xdf, 0x23, 0xbc, 0x8c, 0xe0, 0xb8, 0x5a, 0x01, 0x8c, 0x4b, 0x34, 0xe9, 0xc3, 0xb4, 0x1b, 0x4e, 0xf5, 0x9c, 0x71, 0x49, 0x2f, 0xa6, 0x2d, 0x13, 0x47, 0x72, 0xf9, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha512_6235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6235_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfd, 0x6d, 0xc7, 0x1a, 0x71, 0xf1, 0xd5, 0x0d, 0x1b, 0xbd, 0x97, 0x6a, 0xf4, 0x35, 0x7b, 0xe4, 0xdd, 0x2f, 0xe8, 0x50, 0x70, 0x7c, 0x43, 0x1f, 0xd3, 0x76, 0xe5, 0x3d, 0x17, 0x6c, 0x6b, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6235 = { .name = "ecdsa_secp256k1_sha512_6235", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6235_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6235_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6235_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6236 for ECDSA, tcId is 219 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6236_pubkey[] = { 0xcc, 0xac, 0xbc, 0x62, 0x6f, 0xd6, 0xea, 0x31, 0x17, 0x58, 0x15, 0xcf, 0xf9, 0x58, 0xca, 0x16, 0x37, 0x32, 0x38, 0x77, 0xd3, 0xbd, 0xf0, 0x98, 0x96, 0xb5, 0x27, 0xbf, 0x4e, 0x25, 0x5e, 0x85, 0x71, 0xf8, 0xa2, 0x7e, 0x63, 0x09, 0xbd, 0x9b, 0x9b, 0x15, 0xd7, 0x8d, 0x52, 0x70, 0x01, 0x2a, 0xd2, 0xed, 0x15, 0xa7, 0xff, 0xfe, 0x02, 0x4f, 0xc0, 0xec, 0xa6, 0x3f, 0xb6, 0xac, 0x2f, 0x8d, }; static const unsigned char ecdsa_secp256k1_sha512_6236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6236_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0xe7, 0x5a, 0xd2, 0xa5, 0x80, 0x1c, 0x54, 0x72, 0x2e, 0xb7, 0xd9, 0x5b, 0xa6, 0x7f, 0xeb, 0xcf, 0xc3, 0x99, 0xb9, 0x56, 0xb7, 0xb6, 0x82, 0xfe, 0x89, 0x63, 0x8d, 0xe3, 0x69, 0x0b, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6236 = { .name = "ecdsa_secp256k1_sha512_6236", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6236_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6236_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6236_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6237 for ECDSA, tcId is 220 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6237_pubkey[] = { 0xcc, 0xc3, 0x0b, 0x65, 0xca, 0xd3, 0xdd, 0x1d, 0x79, 0x3b, 0x6d, 0xb8, 0x0f, 0x57, 0xb2, 0xe1, 0x23, 0x79, 0x73, 0xe4, 0x26, 0x4c, 0x3d, 0x9b, 0xbc, 0x25, 0x51, 0xec, 0x68, 0xa0, 0xb7, 0xbe, 0x75, 0xff, 0x6d, 0x1f, 0x4f, 0x53, 0x5a, 0x13, 0x1a, 0xa5, 0x73, 0xf6, 0xe2, 0xd6, 0x91, 0x2c, 0x39, 0x71, 0x54, 0x93, 0x37, 0x50, 0x41, 0x7d, 0x28, 0xe4, 0x65, 0x24, 0x39, 0x25, 0x92, 0xde, }; static const unsigned char ecdsa_secp256k1_sha512_6237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6237_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf5, 0x33, 0x77, 0x6f, 0x11, 0xc4, 0x7e, 0xd0, 0xa7, 0xb5, 0xe2, 0x5a, 0xce, 0x7a, 0x3b, 0x92, 0x18, 0x66, 0x73, 0x3c, 0x74, 0x54, 0xb2, 0xc6, 0x78, 0xb8, 0x94, 0x3d, 0xfb, 0x4c, 0xf2, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6237 = { .name = "ecdsa_secp256k1_sha512_6237", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6237_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6237_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6237_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6238 for ECDSA, tcId is 221 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6238_pubkey[] = { 0xcc, 0x93, 0x49, 0xac, 0xa0, 0xcb, 0xd0, 0xb2, 0xdf, 0x0d, 0xee, 0xcd, 0x88, 0xed, 0x39, 0xe6, 0xd8, 0xc7, 0xc3, 0xd7, 0xb4, 0x22, 0xfd, 0x5d, 0x92, 0x43, 0x1b, 0xaf, 0x72, 0x25, 0xfc, 0xc0, 0xed, 0x49, 0x4b, 0xe6, 0x98, 0xd6, 0xf3, 0x85, 0x0b, 0xe2, 0x77, 0xc2, 0x68, 0x79, 0x24, 0x00, 0xf3, 0x96, 0x02, 0x5c, 0xfa, 0x95, 0xcf, 0x56, 0x01, 0x8b, 0xcb, 0xc2, 0x43, 0xe5, 0x12, 0xeb, }; static const unsigned char ecdsa_secp256k1_sha512_6238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6238_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe8, 0xdb, 0xff, 0xee, 0x01, 0x80, 0x7d, 0x75, 0xf9, 0xaa, 0x52, 0xc2, 0x95, 0xe1, 0x5b, 0x15, 0xf1, 0x38, 0x43, 0x9e, 0x7a, 0x19, 0x5a, 0x40, 0x70, 0x9b, 0x1a, 0xbf, 0x51, 0x1d, 0xbc, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6238 = { .name = "ecdsa_secp256k1_sha512_6238", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6238_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6238_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6238_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6239 for ECDSA, tcId is 222 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6239_pubkey[] = { 0x00, 0x0e, 0x7c, 0x30, 0xd2, 0xf2, 0x59, 0xf7, 0xc1, 0x3f, 0x19, 0x43, 0x20, 0xe4, 0x39, 0x05, 0xd0, 0xea, 0xd7, 0x27, 0x7e, 0x28, 0x3e, 0x89, 0x18, 0x43, 0x7c, 0x10, 0xf9, 0xd0, 0x52, 0xb0, 0x2b, 0x39, 0xb6, 0x6d, 0xbb, 0xa2, 0xb1, 0xcf, 0x5d, 0xac, 0x1b, 0x41, 0xd2, 0xde, 0xc6, 0xf1, 0xfb, 0x08, 0xbd, 0xd1, 0x4d, 0x42, 0x0d, 0x70, 0x39, 0x86, 0xf6, 0x3a, 0xed, 0xeb, 0x5c, 0x47, }; static const unsigned char ecdsa_secp256k1_sha512_6239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6239_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xca, 0x01, 0x55, 0x2b, 0x58, 0xd6, 0x7a, 0x13, 0x46, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xdf, 0x8f, 0x44, 0xcc, 0x93, 0x88, 0x84, 0xfc, 0xf1, 0x5c, 0x51, 0x6b, 0x02, 0xa7, 0xa7, 0xb5, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6239 = { .name = "ecdsa_secp256k1_sha512_6239", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6239_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6239_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6239_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6240 for ECDSA, tcId is 223 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6240_pubkey[] = { 0x8f, 0xa2, 0x98, 0xc0, 0x0a, 0xc9, 0x3f, 0x7c, 0x36, 0x89, 0x2c, 0x52, 0x99, 0x00, 0x5a, 0x0f, 0x68, 0x43, 0xf9, 0xcf, 0x06, 0x69, 0xfd, 0xbb, 0x7d, 0x6d, 0x81, 0xe0, 0x34, 0x18, 0x03, 0xed, 0x4c, 0xab, 0x33, 0xcc, 0x28, 0x21, 0xb2, 0xda, 0x84, 0x9f, 0x90, 0xef, 0x20, 0xdc, 0x1e, 0xb8, 0x96, 0xfc, 0x67, 0x16, 0x14, 0x40, 0xb3, 0xc5, 0x2c, 0x0b, 0x1e, 0x88, 0x62, 0x7e, 0x50, 0x8c, }; static const unsigned char ecdsa_secp256k1_sha512_6240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6240_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x94, 0x02, 0xaa, 0x56, 0xb1, 0xac, 0xf4, 0x26, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc0, 0x63, 0xda, 0xbc, 0x40, 0x61, 0xc1, 0x59, 0xa6, 0xf8, 0xd0, 0x77, 0x78, 0x7f, 0x19, 0x2a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6240 = { .name = "ecdsa_secp256k1_sha512_6240", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6240_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6240_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6240_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 223 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6241 for ECDSA, tcId is 224 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6241_pubkey[] = { 0x6f, 0xbf, 0x60, 0x8a, 0x83, 0xe3, 0x7e, 0xc2, 0x6b, 0x37, 0xda, 0x03, 0x3e, 0x06, 0x98, 0x16, 0x68, 0x0b, 0x77, 0x0b, 0xa7, 0x66, 0xfb, 0x8c, 0x44, 0xfc, 0xe0, 0x03, 0x96, 0x05, 0x62, 0xf1, 0x04, 0x5f, 0x26, 0x8c, 0xcc, 0x5e, 0x09, 0x49, 0x21, 0x3f, 0x7f, 0x2f, 0x1f, 0xa5, 0x7c, 0xfe, 0xad, 0x04, 0x62, 0x5e, 0xc3, 0xcc, 0xfc, 0x9c, 0x33, 0x35, 0x96, 0xe4, 0x87, 0xb2, 0x05, 0x6f, }; static const unsigned char ecdsa_secp256k1_sha512_6241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6241_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0x38, 0x70, 0xab, 0xed, 0x3a, 0xfd, 0xb6, 0x5c, 0x95, 0x4f, 0x83, 0xee, 0x56, 0x8a, 0x9f, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6241 = { .name = "ecdsa_secp256k1_sha512_6241", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6241_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6241_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6241_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 224 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6242 for ECDSA, tcId is 225 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6242_pubkey[] = { 0xc4, 0xdd, 0x54, 0x7a, 0xd7, 0x50, 0x17, 0x41, 0x79, 0xba, 0xc8, 0xb8, 0xce, 0x27, 0x48, 0x1c, 0x58, 0xb8, 0x13, 0x47, 0x77, 0x62, 0x20, 0xa1, 0xb5, 0x2a, 0xda, 0x13, 0xd6, 0x5c, 0x81, 0x24, 0xf9, 0xc2, 0xef, 0x3b, 0x5b, 0x49, 0x57, 0xcf, 0x69, 0xd3, 0xa1, 0x39, 0x89, 0x16, 0x82, 0x36, 0x3c, 0x04, 0x06, 0x10, 0xf2, 0x00, 0xf4, 0xc3, 0x18, 0xe5, 0x9a, 0xa6, 0x8f, 0x29, 0x8a, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha512_6242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6242_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x55, 0x6a, 0x71, 0x5b, 0x4d, 0x4f, 0x9b, 0xc6, 0xd7, 0x3c, 0x39, 0xda, 0x07, 0xbe, 0x0a, 0xe5, 0xa2, 0xb2, 0xfe, 0x64, 0x65, 0xe0, 0x76, 0x2a, 0xd8, 0x5e, 0x9f, 0xf4, 0xec, 0x31, 0x35, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6242 = { .name = "ecdsa_secp256k1_sha512_6242", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6242_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6242_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6242_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 225 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6243 for ECDSA, tcId is 226 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6243_pubkey[] = { 0x00, 0x05, 0x5d, 0x79, 0xfb, 0x26, 0x28, 0x6b, 0xb6, 0x28, 0x9a, 0x79, 0x83, 0xa2, 0xb2, 0x3b, 0xf5, 0xc3, 0x0c, 0xc3, 0xd7, 0x03, 0x63, 0xb5, 0x59, 0xad, 0xf5, 0x54, 0x8a, 0xf9, 0x91, 0xf8, 0xca, 0xe8, 0xb1, 0xb0, 0xac, 0xe3, 0x2f, 0xd7, 0x4a, 0x86, 0xee, 0x1a, 0x67, 0x1c, 0xc3, 0x6c, 0x05, 0x2a, 0x47, 0x96, 0xea, 0xe3, 0x23, 0xbe, 0x32, 0xe0, 0x2c, 0xe9, 0xa0, 0xfb, 0x62, 0x27, }; static const unsigned char ecdsa_secp256k1_sha512_6243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6243_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6243 = { .name = "ecdsa_secp256k1_sha512_6243", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6243_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6243_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6243_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 226 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6244 for ECDSA, tcId is 227 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6244_pubkey[] = { 0x0d, 0xb5, 0x1c, 0x74, 0xd3, 0x4e, 0x41, 0xba, 0xba, 0x67, 0xc1, 0x3a, 0x60, 0xaf, 0x40, 0x4e, 0xe8, 0x2d, 0x8f, 0x1b, 0x03, 0x86, 0xb0, 0x96, 0x96, 0xee, 0x1e, 0x6e, 0xa1, 0x32, 0x7b, 0x86, 0x41, 0x38, 0x86, 0xc4, 0x62, 0x3f, 0xc2, 0x22, 0xa6, 0x95, 0x0c, 0x3c, 0x3a, 0x09, 0xf3, 0xfd, 0x86, 0x7a, 0x56, 0x6b, 0xfd, 0x34, 0x5e, 0x06, 0xb0, 0x9e, 0xc6, 0xc5, 0xc2, 0xe4, 0xa1, 0x92, }; static const unsigned char ecdsa_secp256k1_sha512_6244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6244_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6244 = { .name = "ecdsa_secp256k1_sha512_6244", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6244_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6244_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6244_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6245 for ECDSA, tcId is 228 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6245_pubkey[] = { 0xbc, 0x2f, 0x7b, 0xc7, 0x4c, 0xb3, 0xbc, 0x7e, 0x79, 0x7b, 0x06, 0xcc, 0x3e, 0x64, 0x9b, 0xf3, 0x40, 0x7d, 0x1a, 0x55, 0xb4, 0xea, 0xad, 0xdd, 0x28, 0xd3, 0xdc, 0xfa, 0xff, 0x2c, 0x37, 0x37, 0xa2, 0x3b, 0xb3, 0x64, 0xe1, 0x6a, 0xc7, 0x93, 0x98, 0xc0, 0x13, 0xce, 0x29, 0xa2, 0x2e, 0x76, 0x2c, 0x0d, 0x60, 0x67, 0xaa, 0xef, 0xda, 0x95, 0x84, 0x74, 0xaa, 0xd1, 0x94, 0xa9, 0x2e, 0x8a, }; static const unsigned char ecdsa_secp256k1_sha512_6245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6245_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6245 = { .name = "ecdsa_secp256k1_sha512_6245", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6245_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6245_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6245_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6246 for ECDSA, tcId is 229 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6246_pubkey[] = { 0xd7, 0xed, 0xc7, 0xc6, 0x45, 0xef, 0xff, 0x6a, 0xf8, 0x82, 0x1a, 0xea, 0x5b, 0x7f, 0x96, 0x9f, 0x56, 0xef, 0x6e, 0x61, 0x58, 0x62, 0xb0, 0x8f, 0xba, 0x3e, 0xaf, 0x01, 0x11, 0xc0, 0x6f, 0x67, 0xe4, 0x7f, 0xd0, 0xda, 0x61, 0x68, 0x2a, 0xdc, 0xc4, 0x05, 0xf3, 0x29, 0x14, 0x8b, 0xf1, 0xc3, 0x5b, 0x89, 0xcb, 0x5e, 0xc5, 0xa9, 0xed, 0x0d, 0x98, 0xa4, 0x10, 0xe2, 0x61, 0xa6, 0xb4, 0x1a, }; static const unsigned char ecdsa_secp256k1_sha512_6246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6246_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6246 = { .name = "ecdsa_secp256k1_sha512_6246", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6246_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6246_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6246_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6247 for ECDSA, tcId is 230 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6247_pubkey[] = { 0x6b, 0xfd, 0x7a, 0xd0, 0x1b, 0x5d, 0xcf, 0xb0, 0x4d, 0xe4, 0x64, 0x08, 0x3d, 0x3c, 0xa7, 0xef, 0x50, 0x54, 0x50, 0x61, 0x11, 0xdf, 0x92, 0xef, 0x02, 0xff, 0x76, 0x90, 0xd9, 0xa6, 0xec, 0x93, 0x06, 0xc4, 0x69, 0xfe, 0x4c, 0x5a, 0x1e, 0x04, 0xf1, 0x14, 0xe1, 0x93, 0xb4, 0xbb, 0x19, 0x7d, 0xe2, 0xc8, 0xe3, 0x50, 0x89, 0x03, 0x7e, 0x5a, 0x20, 0x27, 0x5b, 0xcf, 0x67, 0xd9, 0xbf, 0x73, }; static const unsigned char ecdsa_secp256k1_sha512_6247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6247_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6247 = { .name = "ecdsa_secp256k1_sha512_6247", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6247_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6247_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6247_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6248 for ECDSA, tcId is 231 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6248_pubkey[] = { 0x8a, 0x90, 0x76, 0xc9, 0x23, 0x02, 0x1d, 0x5c, 0x5e, 0xf8, 0x58, 0x94, 0x17, 0x6e, 0xbb, 0x5c, 0x3a, 0x74, 0xab, 0xa7, 0x5b, 0x39, 0x44, 0xc9, 0x6f, 0x17, 0xde, 0xbc, 0x21, 0x73, 0xba, 0x99, 0xe5, 0x60, 0x1d, 0x11, 0x5b, 0xf0, 0x8d, 0x37, 0xae, 0x11, 0x5c, 0x4d, 0x18, 0x6b, 0xc2, 0x11, 0x27, 0xbb, 0xfb, 0x21, 0xd0, 0x62, 0x9b, 0xde, 0x27, 0xa1, 0x6e, 0x9e, 0xd7, 0x21, 0xb7, 0x40, }; static const unsigned char ecdsa_secp256k1_sha512_6248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6248_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6248 = { .name = "ecdsa_secp256k1_sha512_6248", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6248_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6248_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6248_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6249 for ECDSA, tcId is 232 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6249_pubkey[] = { 0x0f, 0xec, 0x6a, 0x85, 0xe0, 0x77, 0xef, 0x42, 0x40, 0xb9, 0x8c, 0x62, 0xab, 0x3b, 0x93, 0xe2, 0xce, 0xbc, 0xad, 0x0a, 0xe9, 0x61, 0x7f, 0x7b, 0x04, 0x71, 0x50, 0x4d, 0xb1, 0xf4, 0x5a, 0x65, 0x24, 0x5a, 0x5f, 0xd0, 0xad, 0x7a, 0x6d, 0x85, 0x41, 0x25, 0xed, 0x76, 0xd4, 0x78, 0x7f, 0x77, 0xcc, 0x19, 0x83, 0xec, 0xa8, 0xc6, 0xba, 0x8c, 0x01, 0x95, 0x23, 0xa0, 0x88, 0xc4, 0xd0, 0xf3, }; static const unsigned char ecdsa_secp256k1_sha512_6249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6249_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6249 = { .name = "ecdsa_secp256k1_sha512_6249", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6249_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6249_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6249_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6250 for ECDSA, tcId is 233 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6250_pubkey[] = { 0xd3, 0xab, 0x94, 0xd8, 0x70, 0x4f, 0xb5, 0x17, 0x74, 0xdc, 0xc3, 0x83, 0x8a, 0xd9, 0x70, 0x30, 0x71, 0xe0, 0x85, 0x1d, 0xe9, 0xb2, 0xd6, 0xca, 0x74, 0xcc, 0xd7, 0x9b, 0x85, 0x55, 0x81, 0x91, 0x4e, 0x49, 0x79, 0xb6, 0x7f, 0x37, 0x74, 0x19, 0xe5, 0xa9, 0xd4, 0xf0, 0x30, 0x12, 0xb7, 0xe7, 0x56, 0x56, 0x55, 0x6f, 0x23, 0x75, 0x6d, 0x4d, 0xbe, 0xe1, 0x45, 0x83, 0x4c, 0x82, 0x79, 0xef, }; static const unsigned char ecdsa_secp256k1_sha512_6250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6250_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6250 = { .name = "ecdsa_secp256k1_sha512_6250", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6250_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6250_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6250_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 233 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6251 for ECDSA, tcId is 234 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6251_pubkey[] = { 0x49, 0xe1, 0x3c, 0xd4, 0x4c, 0x8b, 0x83, 0x50, 0xa5, 0xea, 0xca, 0x21, 0x81, 0xbf, 0x96, 0xdb, 0x12, 0x0b, 0x76, 0x8b, 0xde, 0x88, 0x00, 0xf3, 0x79, 0xf4, 0x3e, 0x91, 0x98, 0x33, 0x3c, 0x75, 0x03, 0x0a, 0xd9, 0xfb, 0x4b, 0x0b, 0x23, 0x3b, 0xdc, 0x10, 0xca, 0x0d, 0xc4, 0xc2, 0x13, 0x4b, 0x18, 0xb6, 0x91, 0xe4, 0x6c, 0x71, 0x51, 0xe3, 0x57, 0x3a, 0xa2, 0xb6, 0x28, 0x91, 0xe6, 0x9d, }; static const unsigned char ecdsa_secp256k1_sha512_6251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6251_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6251 = { .name = "ecdsa_secp256k1_sha512_6251", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6251_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6251_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6251_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6252 for ECDSA, tcId is 235 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6252_pubkey[] = { 0x45, 0x74, 0xfd, 0x94, 0xad, 0x03, 0x82, 0x85, 0x88, 0xcb, 0x0b, 0xc2, 0xd4, 0x34, 0x84, 0x2e, 0xe0, 0x93, 0xef, 0xe6, 0x39, 0x01, 0x5c, 0xc1, 0x07, 0xd1, 0xea, 0x37, 0x10, 0xf2, 0x11, 0x2d, 0x17, 0x86, 0xd6, 0xef, 0x1d, 0x41, 0x1c, 0xbd, 0x1a, 0xf5, 0xb5, 0xee, 0x88, 0x45, 0x99, 0x3e, 0x73, 0x8f, 0xb6, 0x45, 0x19, 0xb4, 0x32, 0x9d, 0x04, 0xbe, 0x21, 0xf7, 0x90, 0x2a, 0x1c, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha512_6252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6252_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6252 = { .name = "ecdsa_secp256k1_sha512_6252", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6252_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6252_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6252_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 235 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6253 for ECDSA, tcId is 236 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6253_pubkey[] = { 0xee, 0x82, 0x4d, 0x81, 0x87, 0x68, 0xf1, 0x3f, 0xa0, 0xeb, 0x90, 0x8e, 0x39, 0x6e, 0xa1, 0xc5, 0x6b, 0x11, 0x77, 0x4c, 0xe6, 0x9d, 0x01, 0xe5, 0x63, 0xaa, 0x36, 0xbb, 0x41, 0xd6, 0x37, 0x1c, 0x99, 0x02, 0x91, 0xce, 0x2a, 0xbc, 0x55, 0xbb, 0x66, 0x82, 0xd5, 0x02, 0xae, 0x01, 0x29, 0xe7, 0xc5, 0x7e, 0x14, 0x6e, 0x96, 0xd4, 0x47, 0x57, 0xda, 0xaa, 0x1f, 0x94, 0xc9, 0x3e, 0x0b, 0x17, }; static const unsigned char ecdsa_secp256k1_sha512_6253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6253_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6253 = { .name = "ecdsa_secp256k1_sha512_6253", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6253_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6253_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6253_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 236 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6254 for ECDSA, tcId is 237 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6254_pubkey[] = { 0x48, 0x25, 0xee, 0x46, 0xb2, 0xd2, 0x15, 0x64, 0x72, 0x6a, 0x32, 0xa9, 0x22, 0xf5, 0xe3, 0xf2, 0xda, 0x60, 0x98, 0xf7, 0x80, 0xe1, 0xf1, 0x5c, 0x6b, 0xf1, 0x64, 0x06, 0x69, 0xc4, 0x1f, 0xe7, 0x29, 0x2c, 0x06, 0x6a, 0x24, 0xf0, 0xf4, 0x50, 0xc2, 0x60, 0x3f, 0x18, 0x37, 0x21, 0x08, 0x98, 0xf8, 0xe8, 0x0f, 0xa3, 0x84, 0xaa, 0xf0, 0x77, 0xeb, 0x5c, 0x7e, 0x87, 0xc6, 0xb2, 0x69, 0x76, }; static const unsigned char ecdsa_secp256k1_sha512_6254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6254_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6254 = { .name = "ecdsa_secp256k1_sha512_6254", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6254_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6254_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6254_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 237 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6255 for ECDSA, tcId is 238 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6255_pubkey[] = { 0x41, 0x34, 0x8e, 0x7a, 0xc1, 0x8e, 0xb1, 0xf4, 0x85, 0x28, 0x01, 0x46, 0x7b, 0xb0, 0xa0, 0xe3, 0x62, 0x09, 0x32, 0x1a, 0x8a, 0xf4, 0xb4, 0x10, 0xfd, 0x06, 0xf0, 0x70, 0xa8, 0x1f, 0x5d, 0xe6, 0x03, 0xb5, 0x59, 0x4f, 0x1a, 0x5a, 0x79, 0xd2, 0x30, 0x89, 0xe4, 0x9e, 0x3e, 0x37, 0x9f, 0x2a, 0x6c, 0xb1, 0x4f, 0x92, 0x30, 0x1c, 0x69, 0x99, 0xe5, 0x10, 0xb8, 0xc8, 0xdc, 0x37, 0xfb, 0x4b, }; static const unsigned char ecdsa_secp256k1_sha512_6255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6255_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6255 = { .name = "ecdsa_secp256k1_sha512_6255", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6255_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6255_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6255_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 238 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6256 for ECDSA, tcId is 239 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6256_pubkey[] = { 0x75, 0x3c, 0x74, 0xe5, 0xa3, 0x6e, 0x1a, 0x4b, 0x61, 0xbe, 0x77, 0x87, 0x20, 0x2c, 0x98, 0xe0, 0x58, 0x41, 0xfe, 0xa2, 0xb0, 0x39, 0x2b, 0x6a, 0xb6, 0x9e, 0xe2, 0xe8, 0xa7, 0x47, 0xe2, 0xb6, 0x18, 0x97, 0x1d, 0xa1, 0xc8, 0x58, 0x25, 0xc1, 0xd8, 0x14, 0x18, 0x86, 0x11, 0x5d, 0x27, 0xcb, 0x2a, 0xdd, 0x86, 0x54, 0x5e, 0x69, 0x71, 0xbb, 0x83, 0x5a, 0x2f, 0x45, 0x2c, 0xde, 0x1e, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6256_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6256 = { .name = "ecdsa_secp256k1_sha512_6256", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6256_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6256_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6256_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 239 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6257 for ECDSA, tcId is 240 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6257_pubkey[] = { 0x49, 0xc0, 0x25, 0x47, 0x24, 0x57, 0x6b, 0x09, 0x49, 0x82, 0x7c, 0xe4, 0x62, 0x40, 0xd9, 0x0c, 0xb4, 0x07, 0x5c, 0xd1, 0x97, 0x8a, 0x41, 0x64, 0x95, 0xa4, 0x55, 0xf0, 0x6a, 0x89, 0x55, 0x04, 0xdf, 0x7d, 0x64, 0xc3, 0x58, 0x53, 0x35, 0x3b, 0xd4, 0xd9, 0x05, 0xda, 0x6a, 0xdb, 0x88, 0xf2, 0x6e, 0x62, 0xa5, 0xf2, 0x0b, 0x3c, 0xd6, 0x38, 0x2a, 0xdf, 0x2c, 0x5a, 0x42, 0xd8, 0x50, 0x53, }; static const unsigned char ecdsa_secp256k1_sha512_6257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6257_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6257 = { .name = "ecdsa_secp256k1_sha512_6257", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6257_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6257_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6257_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 240 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6258 for ECDSA, tcId is 241 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6258_pubkey[] = { 0xb0, 0x5e, 0x98, 0xe8, 0x4e, 0x2c, 0x19, 0x74, 0x3c, 0x1d, 0xcf, 0x4e, 0x0d, 0xdf, 0x0b, 0xb1, 0xf3, 0x28, 0x54, 0x03, 0x3d, 0xe6, 0x3f, 0xcf, 0x3e, 0x60, 0x5f, 0xbb, 0x2e, 0xd9, 0x4c, 0xb1, 0x87, 0x1d, 0x74, 0x15, 0xd5, 0xf6, 0xc5, 0x7c, 0x84, 0x06, 0x78, 0xf7, 0xe1, 0xa1, 0xc1, 0xe3, 0x23, 0x51, 0x9a, 0x46, 0x47, 0xfb, 0x3f, 0x6f, 0x52, 0xab, 0xb4, 0x64, 0x7b, 0x9b, 0x6d, 0x70, }; static const unsigned char ecdsa_secp256k1_sha512_6258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6258_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0x6f, 0xd8, 0x48, 0x30, 0x6e, 0x96, 0x8e, 0x3a, 0xc1, 0xf6, 0xe4, 0x43, 0x57, 0x7c, 0x47, 0xa3, 0xc2, 0x0b, 0xf0, 0xd0, 0x1a, 0x5d, 0xc3, 0x9c, 0x78, 0xc2, 0xc6, 0x9d, 0x68, 0x18, 0x50, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6258 = { .name = "ecdsa_secp256k1_sha512_6258", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6258_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6258_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6258_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 241 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6259 for ECDSA, tcId is 242 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6259_pubkey[] = { 0xb0, 0x5e, 0x98, 0xe8, 0x4e, 0x2c, 0x19, 0x74, 0x3c, 0x1d, 0xcf, 0x4e, 0x0d, 0xdf, 0x0b, 0xb1, 0xf3, 0x28, 0x54, 0x03, 0x3d, 0xe6, 0x3f, 0xcf, 0x3e, 0x60, 0x5f, 0xbb, 0x2e, 0xd9, 0x4c, 0xb1, 0x78, 0xe2, 0x8b, 0xea, 0x2a, 0x09, 0x3a, 0x83, 0x7b, 0xf9, 0x87, 0x08, 0x1e, 0x5e, 0x3e, 0x1c, 0xdc, 0xae, 0x65, 0xb9, 0xb8, 0x04, 0xc0, 0x90, 0xad, 0x54, 0x4b, 0x9a, 0x84, 0x64, 0x8e, 0xbf, }; static const unsigned char ecdsa_secp256k1_sha512_6259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6259_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0x6f, 0xd8, 0x48, 0x30, 0x6e, 0x96, 0x8e, 0x3a, 0xc1, 0xf6, 0xe4, 0x43, 0x57, 0x7c, 0x47, 0xa3, 0xc2, 0x0b, 0xf0, 0xd0, 0x1a, 0x5d, 0xc3, 0x9c, 0x78, 0xc2, 0xc6, 0x9d, 0x68, 0x18, 0x50, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6259 = { .name = "ecdsa_secp256k1_sha512_6259", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6259_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6259_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6259_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 242 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6260 for ECDSA, tcId is 243 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6260_pubkey[] = { 0xa4, 0x9f, 0x9e, 0xbc, 0x08, 0x2c, 0x06, 0x4d, 0x61, 0xc0, 0xea, 0xb5, 0xf8, 0xbf, 0x23, 0x20, 0x7b, 0x06, 0xe3, 0xa6, 0x89, 0xdf, 0xc4, 0xfa, 0x28, 0x96, 0xed, 0x11, 0x4d, 0x1a, 0x88, 0xab, 0x55, 0x78, 0x3a, 0x6b, 0xaf, 0x94, 0x01, 0x97, 0x7d, 0x11, 0x7c, 0xcb, 0x74, 0x8c, 0x0d, 0x5c, 0x24, 0xa5, 0xd3, 0xbd, 0x21, 0x33, 0xd6, 0x2c, 0x74, 0xde, 0x2b, 0xe7, 0xcc, 0x7d, 0x9d, 0x40, }; static const unsigned char ecdsa_secp256k1_sha512_6260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6260_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6260 = { .name = "ecdsa_secp256k1_sha512_6260", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6260_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6260_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6260_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 243 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6261 for ECDSA, tcId is 244 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6261_pubkey[] = { 0xf9, 0x56, 0x7a, 0x43, 0x1b, 0x71, 0x63, 0x88, 0x42, 0x85, 0x10, 0x39, 0x3b, 0x37, 0xfe, 0xef, 0xd3, 0xaf, 0xcf, 0xc6, 0xdc, 0x38, 0x81, 0xf6, 0x23, 0xc0, 0xa0, 0x99, 0x5e, 0x46, 0x1e, 0xc3, 0xfb, 0xa2, 0xf9, 0x10, 0xce, 0xd1, 0x9f, 0x8e, 0x78, 0x9b, 0x15, 0x83, 0x90, 0xa2, 0x95, 0xe6, 0x36, 0xc5, 0x88, 0xc6, 0x22, 0xd5, 0x4f, 0x8f, 0xef, 0xfb, 0xd2, 0x85, 0x2e, 0x29, 0x11, 0xa9, }; static const unsigned char ecdsa_secp256k1_sha512_6261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6261_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6261 = { .name = "ecdsa_secp256k1_sha512_6261", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6261_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6261_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6261_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 244 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6262 for ECDSA, tcId is 245 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6262_pubkey[] = { 0x26, 0x09, 0x5e, 0xf9, 0x3b, 0x10, 0xbf, 0x50, 0xfe, 0x28, 0x3f, 0x4c, 0x99, 0x13, 0x6f, 0xb8, 0x1f, 0xa2, 0x97, 0x81, 0x4f, 0x09, 0x97, 0x7e, 0x8e, 0x38, 0xa3, 0xbf, 0xb8, 0x37, 0xf6, 0x1b, 0xaf, 0x8d, 0x7c, 0xfc, 0x46, 0xc1, 0x92, 0x86, 0x24, 0xf2, 0x01, 0xed, 0x14, 0xa7, 0x07, 0x01, 0xbc, 0x55, 0x31, 0xbf, 0xf4, 0xe2, 0xe5, 0x78, 0xd5, 0xc9, 0x2d, 0xab, 0xdd, 0xbc, 0x75, 0x80, }; static const unsigned char ecdsa_secp256k1_sha512_6262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6262_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6262 = { .name = "ecdsa_secp256k1_sha512_6262", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6262_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6262_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6262_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 245 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6263 for ECDSA, tcId is 246 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6263_pubkey[] = { 0x7a, 0x4b, 0x58, 0xee, 0x76, 0xd4, 0x61, 0xa1, 0xc3, 0xcd, 0xe6, 0x84, 0x00, 0xa0, 0xbb, 0xee, 0xab, 0x34, 0x6e, 0xe6, 0x93, 0x15, 0xbe, 0xd6, 0x3f, 0x17, 0x00, 0xc6, 0x6c, 0xf5, 0xe6, 0xcc, 0xa6, 0x42, 0xae, 0x40, 0x78, 0xbb, 0x6b, 0xbb, 0xb7, 0x60, 0x28, 0x97, 0x78, 0x82, 0xe9, 0xc8, 0x37, 0x4f, 0x26, 0x7a, 0x2c, 0xed, 0x13, 0x10, 0x29, 0xae, 0x89, 0x56, 0x0c, 0xe2, 0x98, 0x25, }; static const unsigned char ecdsa_secp256k1_sha512_6263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6263_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6263 = { .name = "ecdsa_secp256k1_sha512_6263", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6263_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6263_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6263_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 246 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6264 for ECDSA, tcId is 247 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6264_pubkey[] = { 0xf2, 0xa1, 0x11, 0xeb, 0x24, 0xc9, 0xd2, 0x80, 0xd9, 0xa6, 0x6e, 0x4f, 0xf1, 0x86, 0x81, 0xd2, 0x22, 0xdd, 0x6a, 0x18, 0x28, 0xeb, 0xc4, 0x52, 0x8f, 0x2b, 0xeb, 0xe3, 0xe2, 0x52, 0x28, 0xa1, 0xa0, 0x69, 0x9b, 0xce, 0xc5, 0x07, 0xfd, 0x0e, 0xc8, 0x3d, 0xa5, 0x41, 0xa5, 0xa6, 0x14, 0x3e, 0x2e, 0x68, 0xe4, 0xaf, 0x72, 0xfc, 0xdc, 0xc8, 0xa2, 0xae, 0xa2, 0xb1, 0x74, 0x78, 0xcc, 0x8a, }; static const unsigned char ecdsa_secp256k1_sha512_6264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6264_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6264 = { .name = "ecdsa_secp256k1_sha512_6264", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6264_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6264_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6264_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 247 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6265 for ECDSA, tcId is 248 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6265_pubkey[] = { 0xe5, 0x00, 0x54, 0xb3, 0xe4, 0xa4, 0xd1, 0xfe, 0xf9, 0x88, 0xe5, 0xa5, 0xe8, 0x30, 0x15, 0x5a, 0xbc, 0x29, 0x3f, 0xea, 0x35, 0x98, 0xaf, 0x4c, 0x5d, 0xda, 0xa1, 0x0a, 0xcd, 0x11, 0x12, 0x74, 0xeb, 0x71, 0x0d, 0x18, 0x34, 0x56, 0x8c, 0xb3, 0x79, 0xa1, 0xd1, 0xf3, 0xd6, 0x91, 0xa8, 0xc0, 0xdc, 0x19, 0xf9, 0x01, 0xfe, 0x32, 0x25, 0xc2, 0xb6, 0x69, 0x1d, 0xf5, 0xef, 0x53, 0x33, 0xfe, }; static const unsigned char ecdsa_secp256k1_sha512_6265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6265_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6265 = { .name = "ecdsa_secp256k1_sha512_6265", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6265_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6265_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6265_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 248 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6266 for ECDSA, tcId is 249 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6266_pubkey[] = { 0xed, 0xc1, 0x7c, 0xd4, 0xca, 0x6f, 0x99, 0x88, 0xfd, 0xa5, 0xaf, 0x40, 0x42, 0xe3, 0xf9, 0xeb, 0x42, 0xd0, 0xf7, 0xb6, 0xa1, 0xc0, 0x15, 0x6e, 0x1a, 0x2a, 0xf5, 0x66, 0xb7, 0x81, 0x03, 0x54, 0x8a, 0x5d, 0x35, 0x77, 0x77, 0xb3, 0x06, 0xe9, 0x64, 0x05, 0xf1, 0x2e, 0x26, 0x17, 0xc1, 0xb2, 0x9e, 0x8d, 0x57, 0x4e, 0x5f, 0x6d, 0x66, 0xd1, 0xbc, 0x8f, 0xf7, 0xea, 0x7c, 0x4b, 0x68, 0x3c, }; static const unsigned char ecdsa_secp256k1_sha512_6266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6266_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6266 = { .name = "ecdsa_secp256k1_sha512_6266", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6266_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6266_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6266_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 249 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6267 for ECDSA, tcId is 250 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6267_pubkey[] = { 0x6d, 0x26, 0x7c, 0x10, 0xd2, 0x31, 0x5b, 0x42, 0xdb, 0xaf, 0x34, 0xc9, 0x7c, 0x3c, 0x0d, 0x33, 0x1f, 0xab, 0xac, 0xaf, 0x60, 0x21, 0xdf, 0x4d, 0xc8, 0x5b, 0x3e, 0x9e, 0x63, 0xdc, 0x07, 0x98, 0xed, 0x15, 0x4b, 0x11, 0xfa, 0x3a, 0x5e, 0xd9, 0x52, 0xc1, 0x4d, 0x8a, 0x2d, 0xd2, 0x42, 0xde, 0x2b, 0x6c, 0xce, 0x3c, 0x22, 0xdf, 0x42, 0xcd, 0x97, 0xde, 0x30, 0x05, 0x4a, 0x19, 0x55, 0x5e, }; static const unsigned char ecdsa_secp256k1_sha512_6267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6267_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6267 = { .name = "ecdsa_secp256k1_sha512_6267", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6267_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6267_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6267_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 250 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6268 for ECDSA, tcId is 251 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6268_pubkey[] = { 0xc2, 0x4b, 0xf7, 0xa9, 0x84, 0xc9, 0x6e, 0xce, 0x10, 0x07, 0x7a, 0x9d, 0xef, 0x38, 0xcb, 0xd0, 0xd8, 0x98, 0xab, 0xd5, 0x55, 0xf1, 0x66, 0x8e, 0x06, 0xc2, 0x7c, 0xab, 0xc0, 0x0f, 0x6f, 0x67, 0x9f, 0x69, 0xb2, 0x38, 0xe1, 0xf9, 0x5e, 0x99, 0xe5, 0xb5, 0x58, 0xe0, 0x03, 0x62, 0x73, 0xeb, 0xd6, 0xc3, 0x6d, 0x12, 0xb4, 0x51, 0x53, 0x48, 0xb8, 0x5a, 0x21, 0xf6, 0x28, 0x3f, 0x50, 0x16, }; static const unsigned char ecdsa_secp256k1_sha512_6268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6268_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6268 = { .name = "ecdsa_secp256k1_sha512_6268", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6268_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6268_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6268_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 251 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6269 for ECDSA, tcId is 252 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6269_pubkey[] = { 0x1c, 0xd2, 0x6d, 0x66, 0x88, 0x07, 0xc8, 0x15, 0xed, 0x3f, 0x53, 0x2c, 0x1d, 0xb8, 0x1a, 0xc4, 0x73, 0xfb, 0x36, 0x8f, 0x0f, 0x7e, 0xf1, 0xaf, 0xf2, 0x59, 0x2e, 0xa6, 0xfa, 0x6c, 0x46, 0x24, 0xa2, 0x29, 0xb9, 0xab, 0x57, 0x46, 0xcf, 0xbc, 0x47, 0x28, 0x0c, 0x01, 0x9a, 0x42, 0x48, 0x54, 0x53, 0x54, 0xca, 0x20, 0x88, 0x0f, 0xf4, 0x1c, 0xac, 0x2e, 0x25, 0x2b, 0xc9, 0xb4, 0x97, 0x04, }; static const unsigned char ecdsa_secp256k1_sha512_6269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6269_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6269 = { .name = "ecdsa_secp256k1_sha512_6269", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6269_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6269_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6269_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 252 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6270 for ECDSA, tcId is 253 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6270_pubkey[] = { 0xfc, 0x78, 0x07, 0x77, 0xa3, 0x28, 0x9a, 0xf6, 0x63, 0xfa, 0x02, 0xb1, 0xc2, 0x62, 0xa8, 0x37, 0x3b, 0x84, 0x61, 0x4e, 0x65, 0x9c, 0x1a, 0xb4, 0x69, 0x42, 0xf1, 0xe0, 0x58, 0x92, 0x6f, 0xf8, 0x21, 0x96, 0xc6, 0xbc, 0xae, 0x0b, 0x27, 0x98, 0x29, 0x8d, 0x46, 0x3b, 0xe5, 0xc8, 0x79, 0x24, 0x34, 0x3d, 0x7f, 0x10, 0x3a, 0x27, 0x13, 0x1e, 0x0c, 0x7f, 0x4d, 0x60, 0xd2, 0xb5, 0xda, 0x8c, }; static const unsigned char ecdsa_secp256k1_sha512_6270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6270_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6270 = { .name = "ecdsa_secp256k1_sha512_6270", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6270_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6270_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6270_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 253 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6271 for ECDSA, tcId is 254 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6271_pubkey[] = { 0x5e, 0x25, 0xe2, 0xee, 0x8a, 0xf5, 0xef, 0x8a, 0x3e, 0x09, 0x08, 0x34, 0x1f, 0x98, 0x84, 0x50, 0x1f, 0xb5, 0x8a, 0x2f, 0xd2, 0x34, 0xb1, 0xdb, 0x6f, 0x22, 0xd5, 0x61, 0x02, 0x55, 0x24, 0xf4, 0x49, 0x1d, 0x97, 0xa7, 0x79, 0x3c, 0x9d, 0x9a, 0x1f, 0x35, 0xbb, 0x35, 0xf1, 0x21, 0x21, 0xb9, 0xdb, 0xe0, 0x75, 0xd8, 0x50, 0x1c, 0xbd, 0x4d, 0xb6, 0x69, 0x7e, 0x3e, 0x0a, 0xd9, 0x8b, 0xc0, }; static const unsigned char ecdsa_secp256k1_sha512_6271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6271_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6271 = { .name = "ecdsa_secp256k1_sha512_6271", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6271_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6271_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6271_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 254 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6272 for ECDSA, tcId is 255 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6272_pubkey[] = { 0x3d, 0xdf, 0x29, 0x20, 0x60, 0x7d, 0xf5, 0x96, 0xda, 0x90, 0x12, 0x3e, 0xa5, 0x67, 0x49, 0x58, 0x05, 0x4c, 0x8e, 0xd7, 0x75, 0x86, 0x61, 0xb8, 0x13, 0xf1, 0xaa, 0x30, 0xf1, 0x97, 0x78, 0xb0, 0x70, 0x72, 0x43, 0xe1, 0xa7, 0xbc, 0xc2, 0x64, 0xb5, 0x42, 0x89, 0x83, 0x2e, 0x95, 0x0c, 0x27, 0x56, 0x38, 0x56, 0x24, 0x1b, 0x79, 0xc2, 0x43, 0xd0, 0xfc, 0x54, 0xf7, 0xad, 0x24, 0xbc, 0x25, }; static const unsigned char ecdsa_secp256k1_sha512_6272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6272_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6272 = { .name = "ecdsa_secp256k1_sha512_6272", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6272_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6272_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6272_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 255 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6273 for ECDSA, tcId is 256 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6273_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha512_6273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6273_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6273 = { .name = "ecdsa_secp256k1_sha512_6273", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6273_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6273_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6273_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 256 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6274 for ECDSA, tcId is 257 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6274_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha512_6274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6274_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6274 = { .name = "ecdsa_secp256k1_sha512_6274", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6274_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6274_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6274_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 257 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6275 for ECDSA, tcId is 258 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6275_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha512_6275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6275_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6275 = { .name = "ecdsa_secp256k1_sha512_6275", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6275_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6275_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6275_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 258 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6276 for ECDSA, tcId is 259 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6276_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha512_6276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6276_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6276 = { .name = "ecdsa_secp256k1_sha512_6276", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6276_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6276_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6276_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 259 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6277 for ECDSA, tcId is 260 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6277_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6277_sig[] = { 0x66, 0x32, 0x47, 0x3c, 0x90, 0x94, 0x25, 0xb6, 0xfa, 0x37, 0x09, 0x53, 0x98, 0xe2, 0x53, 0x8d, 0xaa, 0xb8, 0x55, 0x24, 0x40, 0x32, 0x0f, 0x9f, 0xe1, 0x90, 0xdb, 0xa8, 0xf6, 0x72, 0x79, 0x6b, 0xa8, 0xc3, 0xaa, 0xcc, 0xe9, 0xff, 0xe4, 0xbc, 0x17, 0xc0, 0x53, 0x07, 0x38, 0xf1, 0x38, 0x6f, 0x9d, 0x95, 0x79, 0xf0, 0x29, 0xff, 0x3a, 0x77, 0x91, 0xb1, 0x6e, 0x98, 0x42, 0x22, 0x65, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6277 = { .name = "ecdsa_secp256k1_sha512_6277", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6277_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha512_6277_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 260 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6278 for ECDSA, tcId is 261 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6278_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6278_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha512_6278_sig[] = { 0x46, 0x5b, 0x0f, 0xb0, 0x5c, 0x14, 0xcd, 0x4d, 0xde, 0xf2, 0x3e, 0x13, 0xac, 0xbe, 0x5f, 0x23, 0x37, 0xc4, 0x5e, 0xa3, 0x81, 0x65, 0x36, 0x67, 0x0c, 0xfa, 0x7f, 0x2a, 0xb9, 0x09, 0x06, 0x19, 0x00, 0x5e, 0x52, 0x5e, 0x83, 0x7c, 0x40, 0x6c, 0xf8, 0x94, 0x43, 0x83, 0xe2, 0x0b, 0xce, 0xe3, 0x21, 0x12, 0xd8, 0xda, 0x5b, 0x42, 0xb4, 0x0f, 0x88, 0x41, 0x50, 0x98, 0xf7, 0x22, 0xaa, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6278 = { .name = "ecdsa_secp256k1_sha512_6278", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6278_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6278_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha512_6278_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 261 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6279 for ECDSA, tcId is 262 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6279_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6279_sig[] = { 0x7b, 0x15, 0x53, 0xe4, 0xd6, 0x50, 0xc7, 0x1f, 0xd4, 0x9a, 0xa3, 0x6c, 0xee, 0xd5, 0x6f, 0x04, 0x38, 0xb0, 0x06, 0x5e, 0x1b, 0x23, 0x44, 0x45, 0x13, 0x4b, 0xf7, 0xc8, 0x32, 0x31, 0xca, 0x9d, 0xe3, 0x69, 0xa2, 0x0f, 0xa6, 0x43, 0x4b, 0xd1, 0x38, 0xb0, 0x92, 0x88, 0x5a, 0x89, 0xe5, 0x3a, 0x3f, 0x0b, 0x6b, 0xdc, 0xc5, 0xd2, 0x65, 0x3e, 0x13, 0x6c, 0x54, 0x07, 0x00, 0x81, 0xdc, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6279 = { .name = "ecdsa_secp256k1_sha512_6279", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6279_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6279_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6279_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 262 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6280 for ECDSA, tcId is 263 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6280_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6280_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha512_6280_sig[] = { 0xc7, 0xba, 0x1c, 0x73, 0xbd, 0xc4, 0x36, 0x4f, 0x6c, 0x7c, 0x61, 0xab, 0x1f, 0xec, 0xc0, 0x54, 0x7f, 0x8d, 0x6f, 0xcb, 0xeb, 0x25, 0x1f, 0x73, 0x49, 0x64, 0x40, 0x75, 0x36, 0x35, 0x3f, 0x32, 0x7b, 0x3a, 0x6f, 0xb2, 0xfe, 0x60, 0xf8, 0x86, 0x1e, 0x9e, 0x09, 0x55, 0x66, 0x3f, 0x57, 0x03, 0xa1, 0x7f, 0x5e, 0xcc, 0x3a, 0x5b, 0x51, 0x40, 0xeb, 0x87, 0xea, 0xf3, 0x5a, 0x3a, 0x50, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6280 = { .name = "ecdsa_secp256k1_sha512_6280", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6280_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6280_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha512_6280_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 263 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6281 for ECDSA, tcId is 264 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6281_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6281_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6281_sig[] = { 0x2b, 0x9c, 0x9f, 0x85, 0x59, 0x6f, 0xed, 0x70, 0x8b, 0x3a, 0xf8, 0x03, 0x93, 0xb2, 0x7e, 0xdf, 0xd0, 0xb5, 0xae, 0x2f, 0x00, 0x74, 0x27, 0x0a, 0x56, 0x36, 0x2f, 0x5f, 0x9f, 0x62, 0xb4, 0xe1, 0x2f, 0xae, 0x83, 0x75, 0x03, 0xba, 0x2c, 0x1d, 0x4c, 0x94, 0x5e, 0x09, 0x13, 0x94, 0x9e, 0xf0, 0x94, 0xce, 0x0b, 0x80, 0x86, 0x35, 0x9b, 0xbb, 0x5d, 0xba, 0x4a, 0x12, 0x70, 0x7c, 0x56, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6281 = { .name = "ecdsa_secp256k1_sha512_6281", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6281_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6281_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6281_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 264 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6282 for ECDSA, tcId is 265 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6282_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6282_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6282_sig[] = { 0x5c, 0xd7, 0x65, 0x20, 0x90, 0x21, 0xd8, 0xc1, 0xa8, 0xae, 0xf4, 0xff, 0x61, 0xd6, 0xfa, 0x6e, 0x79, 0x93, 0xbf, 0x9f, 0xea, 0x0b, 0x93, 0x60, 0x9e, 0xea, 0x13, 0x0d, 0xe5, 0x36, 0xfc, 0xcc, 0x4f, 0x10, 0xc7, 0x98, 0x95, 0x87, 0xfe, 0x30, 0x19, 0xe3, 0x6d, 0x85, 0xaa, 0x02, 0x4b, 0xf2, 0x0d, 0xb6, 0x73, 0x7c, 0x4f, 0x28, 0x90, 0x0c, 0x1c, 0x96, 0x62, 0xf2, 0x78, 0x21, 0x43, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6282 = { .name = "ecdsa_secp256k1_sha512_6282", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6282_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6282_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6282_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 265 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6283 for ECDSA, tcId is 266 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6283_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6283_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6283_sig[] = { 0x4c, 0x1a, 0x59, 0xb1, 0xe5, 0x78, 0xd7, 0x6f, 0x15, 0x95, 0xe1, 0x3b, 0x55, 0x70, 0x57, 0x55, 0x9f, 0x26, 0xab, 0x55, 0x9e, 0xc1, 0xdf, 0x3f, 0x45, 0xec, 0x98, 0xb9, 0x0f, 0xa5, 0x26, 0xce, 0xc6, 0x87, 0x2f, 0x09, 0x4b, 0xdb, 0x3f, 0x82, 0xe3, 0x1f, 0x93, 0xad, 0x65, 0x35, 0x7e, 0x2d, 0xaa, 0xfe, 0x66, 0xf3, 0x04, 0xaf, 0x19, 0x70, 0x89, 0xef, 0x0d, 0xc9, 0x4f, 0xf9, 0x06, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6283 = { .name = "ecdsa_secp256k1_sha512_6283", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6283_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6283_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6283_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 266 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6284 for ECDSA, tcId is 267 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6284_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6284_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6284_sig[] = { 0xa3, 0x5d, 0x14, 0x00, 0xd4, 0xcc, 0x7a, 0x8f, 0x61, 0x7b, 0x72, 0x1f, 0xae, 0xe7, 0x11, 0x8a, 0x74, 0x10, 0x3c, 0x46, 0x30, 0xde, 0xc5, 0xaa, 0x47, 0xe0, 0x97, 0x95, 0x1d, 0xaf, 0xc1, 0xa7, 0x95, 0x82, 0x21, 0x02, 0x30, 0x24, 0xe9, 0x7e, 0xf6, 0xdf, 0x35, 0xa2, 0x2e, 0x82, 0x0c, 0x7b, 0xc5, 0xe1, 0x62, 0x99, 0xf3, 0xf1, 0x2e, 0x9d, 0x9b, 0x1b, 0x72, 0x7c, 0x46, 0xd7, 0x95, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6284 = { .name = "ecdsa_secp256k1_sha512_6284", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6284_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6284_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6284_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 267 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6285 for ECDSA, tcId is 268 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6285_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6285_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6285_sig[] = { 0x7f, 0xb7, 0x33, 0xed, 0x73, 0xc7, 0x2f, 0xc4, 0xf4, 0xcf, 0x06, 0x5e, 0x37, 0x0c, 0x73, 0x03, 0x01, 0x31, 0x6f, 0xf4, 0xe9, 0xc6, 0xa8, 0xa7, 0x01, 0x17, 0x0f, 0x60, 0x4c, 0x2d, 0x70, 0xb7, 0x7c, 0xa9, 0xca, 0x98, 0x5d, 0x3d, 0xf4, 0x89, 0x78, 0xb3, 0xa2, 0xf9, 0xc0, 0xbb, 0x8a, 0x58, 0xb2, 0x16, 0xc7, 0x95, 0xe6, 0x87, 0xf7, 0x46, 0x23, 0xa3, 0x32, 0x14, 0x48, 0xbf, 0xa7, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6285 = { .name = "ecdsa_secp256k1_sha512_6285", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6285_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6285_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6285_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 268 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6286 for ECDSA, tcId is 269 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6286_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6286_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6286_sig[] = { 0x95, 0xae, 0x4d, 0xf2, 0xfb, 0xa8, 0x52, 0x4e, 0x11, 0x51, 0xcb, 0x9a, 0x9c, 0x5c, 0x1e, 0xc1, 0x35, 0x7a, 0x66, 0x37, 0x22, 0xa1, 0x83, 0x29, 0x30, 0x3d, 0x86, 0xa5, 0x8e, 0x70, 0x47, 0x54, 0x59, 0x1e, 0xa6, 0x44, 0xb1, 0xdc, 0x6f, 0x4c, 0x7c, 0xd5, 0xd7, 0xd9, 0x39, 0x39, 0x7f, 0x84, 0xd9, 0xe0, 0x77, 0x10, 0x07, 0x60, 0xf0, 0x81, 0x6a, 0xe5, 0xb2, 0x2a, 0xe6, 0xa7, 0x42, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6286 = { .name = "ecdsa_secp256k1_sha512_6286", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6286_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6286_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6286_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 269 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6287 for ECDSA, tcId is 270 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6287_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6287_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6287_sig[] = { 0x71, 0x79, 0x25, 0xf0, 0xdd, 0x5c, 0xf4, 0x5e, 0x74, 0x6e, 0x87, 0xf7, 0x9c, 0x9e, 0xa9, 0x7d, 0x11, 0xeb, 0x01, 0x44, 0x40, 0x52, 0xc2, 0x70, 0xae, 0xcc, 0xef, 0x56, 0xc2, 0xe9, 0x58, 0x28, 0x78, 0x57, 0x87, 0xb6, 0x64, 0x13, 0x70, 0x80, 0x38, 0x3d, 0x2f, 0xc5, 0x00, 0x45, 0x9f, 0xa7, 0x13, 0x25, 0x82, 0x05, 0xfd, 0xae, 0x97, 0xb3, 0x24, 0x0f, 0xb6, 0x4b, 0xb6, 0x38, 0xa6, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6287 = { .name = "ecdsa_secp256k1_sha512_6287", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6287_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6287_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6287_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 270 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6288 for ECDSA, tcId is 271 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6288_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6288_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6288_sig[] = { 0x8a, 0xdf, 0xde, 0xae, 0x3b, 0x58, 0x63, 0x15, 0xd0, 0x61, 0x83, 0x61, 0x0d, 0x27, 0x1f, 0xc4, 0x23, 0xcc, 0x78, 0x99, 0x08, 0xb8, 0xf5, 0xdc, 0x56, 0x32, 0x53, 0xa3, 0xc7, 0x82, 0x51, 0x0a, 0x81, 0x37, 0xbe, 0xdb, 0xb4, 0xe6, 0x0d, 0xa2, 0x60, 0x41, 0xb3, 0x51, 0xf7, 0x2a, 0x6b, 0xc3, 0xb7, 0x74, 0x1f, 0x74, 0x57, 0x43, 0xf0, 0x73, 0x3b, 0x40, 0xb7, 0xfc, 0x56, 0xfe, 0xbd, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6288 = { .name = "ecdsa_secp256k1_sha512_6288", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6288_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6288_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6288_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 271 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6289 for ECDSA, tcId is 272 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6289_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6289_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6289_sig[] = { 0x92, 0xde, 0xd1, 0x4e, 0x19, 0xb9, 0x4d, 0x17, 0xc7, 0x9b, 0x06, 0x3a, 0x03, 0x4b, 0x12, 0x2c, 0xe3, 0xb9, 0x3a, 0x25, 0x02, 0xf2, 0xf2, 0x23, 0xfa, 0xd3, 0x46, 0x1a, 0xbf, 0x63, 0x16, 0x32, 0x52, 0xff, 0x8a, 0xd1, 0x4b, 0xa3, 0x65, 0x72, 0x42, 0xe2, 0x94, 0x40, 0xd0, 0x1c, 0xab, 0x36, 0xeb, 0xb6, 0x03, 0x3e, 0xe3, 0x60, 0x21, 0xdc, 0x8d, 0x9b, 0x38, 0xf0, 0x80, 0x8a, 0x90, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6289 = { .name = "ecdsa_secp256k1_sha512_6289", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6289_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6289_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6289_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 272 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6290 for ECDSA, tcId is 273 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6290_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6290_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6290_sig[] = { 0xd4, 0x83, 0x73, 0x48, 0x3e, 0x0f, 0xa2, 0xf1, 0x1c, 0xfd, 0xfa, 0xea, 0x6f, 0x1d, 0xe5, 0x9e, 0x68, 0x61, 0xe9, 0xe8, 0x7c, 0x4f, 0x64, 0x46, 0x60, 0x2b, 0xa0, 0x12, 0x5a, 0xb7, 0xde, 0x46, 0x9d, 0x75, 0x3b, 0xba, 0x3a, 0x7b, 0xe0, 0x8a, 0xab, 0x45, 0x6e, 0x93, 0xa6, 0x50, 0x0d, 0x47, 0x81, 0x79, 0x5e, 0xd5, 0x9a, 0xf8, 0xbd, 0x6d, 0x61, 0x33, 0x12, 0x9a, 0xbe, 0xf1, 0xad, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6290 = { .name = "ecdsa_secp256k1_sha512_6290", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6290_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6290_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6290_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 273 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6291 for ECDSA, tcId is 274 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6291_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6291_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6291_sig[] = { 0xf1, 0x14, 0x73, 0x11, 0x7b, 0x66, 0xe5, 0xd8, 0x4a, 0x2e, 0xcd, 0x0f, 0x8b, 0x7e, 0xc4, 0xa2, 0xcc, 0x2a, 0xee, 0x89, 0xae, 0x02, 0x20, 0x20, 0x23, 0x57, 0x77, 0x30, 0x51, 0x42, 0xf4, 0x98, 0xfe, 0x5c, 0xe4, 0x3c, 0xed, 0x28, 0xf3, 0xf6, 0x9f, 0x65, 0xe8, 0x10, 0x67, 0x8a, 0xfe, 0xfd, 0x2b, 0xde, 0xef, 0xb0, 0x51, 0x28, 0x0a, 0xd2, 0x88, 0x01, 0x57, 0xfd, 0xa2, 0x8b, 0x2a, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6291 = { .name = "ecdsa_secp256k1_sha512_6291", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6291_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6291_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6291_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 274 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6292 for ECDSA, tcId is 275 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6292_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6292_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6292_sig[] = { 0x3c, 0x9f, 0x5b, 0xdd, 0xe7, 0x31, 0x0b, 0x56, 0x96, 0xc9, 0x3c, 0x86, 0x20, 0x3f, 0xc9, 0x7e, 0x11, 0xa7, 0x07, 0x39, 0xe2, 0x0c, 0x71, 0xc9, 0xe7, 0x22, 0x30, 0x8d, 0x45, 0xa5, 0x9e, 0x6c, 0xc0, 0x9e, 0xfb, 0x9a, 0x04, 0x5a, 0x47, 0xcc, 0xe7, 0x99, 0xb7, 0x68, 0x89, 0x0b, 0xb1, 0x78, 0x33, 0xa0, 0x21, 0x0d, 0x86, 0x9a, 0x36, 0xbe, 0x1d, 0xa3, 0x3f, 0x25, 0x85, 0x47, 0x7c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6292 = { .name = "ecdsa_secp256k1_sha512_6292", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6292_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6292_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6292_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 275 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6293 for ECDSA, tcId is 276 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6293_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6293_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6293_sig[] = { 0x69, 0x53, 0x44, 0x2c, 0x48, 0x7f, 0x24, 0x04, 0x87, 0xd2, 0xaf, 0x81, 0xf9, 0x82, 0x5c, 0x89, 0x4b, 0x1f, 0xc2, 0x53, 0x43, 0x21, 0xfa, 0x01, 0x2d, 0xb8, 0x24, 0x8b, 0xe2, 0x0a, 0x4b, 0x06, 0x56, 0x92, 0x73, 0x95, 0xd6, 0x4c, 0xe4, 0xd6, 0x90, 0xca, 0xa9, 0x89, 0x44, 0xc2, 0xdd, 0xeb, 0xc3, 0x12, 0xf5, 0x7f, 0x43, 0x9d, 0x37, 0x23, 0x6e, 0xa6, 0x3c, 0xc1, 0xde, 0x09, 0x87, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6293 = { .name = "ecdsa_secp256k1_sha512_6293", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6293_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6293_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6293_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 276 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6294 for ECDSA, tcId is 277 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6294_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6294_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6294_sig[] = { 0xfb, 0x39, 0xaa, 0x5f, 0x36, 0xce, 0xca, 0x6e, 0x68, 0xd1, 0x93, 0x2e, 0x81, 0x15, 0x98, 0xc4, 0x12, 0x89, 0x27, 0x34, 0xda, 0xde, 0x38, 0x9f, 0xd9, 0xe8, 0xba, 0x94, 0xc5, 0xc7, 0xa2, 0x51, 0xfd, 0xdd, 0xf0, 0xc3, 0xdb, 0x66, 0xc7, 0xc4, 0x66, 0x08, 0xac, 0x98, 0x43, 0x1f, 0x0e, 0xe8, 0xeb, 0xb1, 0xe2, 0x7b, 0xa5, 0x01, 0x93, 0x77, 0x89, 0xeb, 0xcd, 0x0f, 0x7a, 0xc2, 0x6e, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6294 = { .name = "ecdsa_secp256k1_sha512_6294", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6294_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6294_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6294_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 277 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6295 for ECDSA, tcId is 278 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6295_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6295_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6295_sig[] = { 0x44, 0xfe, 0xf6, 0x01, 0x76, 0x38, 0xfd, 0x5b, 0xda, 0x17, 0xdf, 0xce, 0x34, 0x6b, 0x03, 0x11, 0xb5, 0xe3, 0x69, 0xbf, 0xb6, 0x8a, 0xa8, 0x5d, 0x5e, 0x97, 0x07, 0x86, 0xb8, 0xe6, 0x64, 0x4b, 0x72, 0x0b, 0x3a, 0x52, 0xfe, 0x44, 0xbe, 0x60, 0x28, 0x75, 0x9f, 0x0f, 0x1a, 0x6f, 0xd7, 0x02, 0x0f, 0xf6, 0x79, 0x2c, 0xd4, 0xec, 0xe9, 0x8d, 0xff, 0xd0, 0xd9, 0x7d, 0x3b, 0x72, 0x60, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6295 = { .name = "ecdsa_secp256k1_sha512_6295", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6295_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6295_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6295_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 278 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6296 for ECDSA, tcId is 279 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6296_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6296_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6296_sig[] = { 0x30, 0x4b, 0xab, 0xc4, 0x13, 0x46, 0xe6, 0x20, 0x5c, 0xf0, 0x3e, 0x2d, 0x0b, 0x26, 0xe4, 0xb2, 0x22, 0xdc, 0xe8, 0x22, 0x74, 0x02, 0xd0, 0x01, 0xba, 0x23, 0x3e, 0xfa, 0x69, 0xc9, 0x12, 0x34, 0x00, 0x65, 0xad, 0xd3, 0x27, 0x9f, 0x51, 0xb2, 0x41, 0x7f, 0xb0, 0xa1, 0x3b, 0x0f, 0x06, 0x40, 0x41, 0x99, 0xca, 0xac, 0x34, 0x30, 0x38, 0x55, 0x13, 0xee, 0x49, 0xf6, 0x7d, 0x8e, 0x8c, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6296 = { .name = "ecdsa_secp256k1_sha512_6296", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6296_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6296_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6296_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 279 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6297 for ECDSA, tcId is 280 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6297_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6297_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6297_sig[] = { 0x23, 0x86, 0x87, 0x00, 0xb7, 0x1f, 0xba, 0xfc, 0xaa, 0x73, 0x96, 0x0f, 0xaf, 0x92, 0x2e, 0xe0, 0x45, 0x8e, 0xf6, 0x9e, 0x01, 0xfb, 0x06, 0x0b, 0x2f, 0x9a, 0x80, 0xd9, 0x92, 0xfe, 0x11, 0x4c, 0x6e, 0xc1, 0x52, 0x6b, 0xd5, 0x6f, 0x6e, 0xeb, 0xf1, 0x04, 0x63, 0xbd, 0x92, 0x10, 0xd6, 0x25, 0x10, 0xb9, 0x51, 0x66, 0x36, 0x5e, 0x10, 0xa7, 0xb7, 0xab, 0xfc, 0x4d, 0x58, 0x4c, 0xa3, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6297 = { .name = "ecdsa_secp256k1_sha512_6297", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6297_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6297_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6297_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 280 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6298 for ECDSA, tcId is 281 in file ecdsa_secp256k1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6298_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6298_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6298_sig[] = { 0xdd, 0x60, 0xd7, 0xcf, 0x83, 0xa0, 0x82, 0x08, 0x63, 0x72, 0x12, 0xb6, 0x5d, 0x07, 0x9f, 0xb6, 0x58, 0xd8, 0xef, 0x1b, 0x84, 0x38, 0xd9, 0xc5, 0x8f, 0x41, 0x22, 0xb0, 0xcd, 0x14, 0xac, 0x49, 0xf1, 0xd7, 0x62, 0x51, 0x6f, 0x4d, 0x6c, 0x3e, 0x6a, 0x98, 0xdd, 0x31, 0xdc, 0x38, 0x69, 0xdc, 0x7c, 0xf3, 0x59, 0x44, 0xf3, 0x3b, 0x35, 0xc6, 0xa1, 0x7f, 0xe6, 0x32, 0xd2, 0xb1, 0x8c, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6298 = { .name = "ecdsa_secp256k1_sha512_6298", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6298_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6298_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6298_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 281 in file ecdsa_secp256k1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6299 for ECDSA, tcId is 1 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6299_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6299_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5a, 0x2c, 0xc6, 0x1d, 0xf3, 0xce, 0x8a, 0xe2, 0xc1, 0x35, 0x7e, 0xa8, 0xc5, 0xff, 0x50, 0x55, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6299 = { .name = "ecdsa_secp256k1_sha512_6299", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6299_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6299_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6299_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6300 for ECDSA, tcId is 2 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6300_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6300_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6300 = { .name = "ecdsa_secp256k1_sha512_6300", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6300_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6300_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6300_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6301 for ECDSA, tcId is 3 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6301_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6301_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6301 = { .name = "ecdsa_secp256k1_sha512_6301", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6301_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6301_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6301_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6302 for ECDSA, tcId is 4 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6302_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6302_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6302 = { .name = "ecdsa_secp256k1_sha512_6302", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6302_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6302_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6302_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6303 for ECDSA, tcId is 5 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6303_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6303_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6303 = { .name = "ecdsa_secp256k1_sha512_6303", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6303_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6303_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6303_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6304 for ECDSA, tcId is 68 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6304_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6304_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6304 = { .name = "ecdsa_secp256k1_sha512_6304", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6304_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6304_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6304_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6305 for ECDSA, tcId is 69 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6305_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6305_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6305 = { .name = "ecdsa_secp256k1_sha512_6305", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6305_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6305_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6305_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6306 for ECDSA, tcId is 70 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6306_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6306_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6306 = { .name = "ecdsa_secp256k1_sha512_6306", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6306_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6306_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6306_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6307 for ECDSA, tcId is 71 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6307_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6307_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6307 = { .name = "ecdsa_secp256k1_sha512_6307", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6307_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6307_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6307_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6308 for ECDSA, tcId is 93 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6308_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6308_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6308_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6308 = { .name = "ecdsa_secp256k1_sha512_6308", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6308_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6308_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6308_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6309 for ECDSA, tcId is 94 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6309_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6309_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6309_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6309 = { .name = "ecdsa_secp256k1_sha512_6309", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6309_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6309_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6309_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6310 for ECDSA, tcId is 95 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6310_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6310_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6310_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6310 = { .name = "ecdsa_secp256k1_sha512_6310", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6310_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6310_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6310_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6311 for ECDSA, tcId is 96 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6311_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6311_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6311 = { .name = "ecdsa_secp256k1_sha512_6311", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6311_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6311_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6311_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6312 for ECDSA, tcId is 98 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6312_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6312_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6312_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x05, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6312 = { .name = "ecdsa_secp256k1_sha512_6312", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6312_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6312_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6312_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6313 for ECDSA, tcId is 99 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6313_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6313_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6313_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6313 = { .name = "ecdsa_secp256k1_sha512_6313", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6313_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6313_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6313_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6314 for ECDSA, tcId is 114 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6314_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6314_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6314_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6314 = { .name = "ecdsa_secp256k1_sha512_6314", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6314_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6314_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6314_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6315 for ECDSA, tcId is 115 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6315_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6315_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6315_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6315 = { .name = "ecdsa_secp256k1_sha512_6315", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6315_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6315_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6315_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6316 for ECDSA, tcId is 118 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6316_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6316_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6316_sig[] = { 0x6e, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6316 = { .name = "ecdsa_secp256k1_sha512_6316", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6316_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6316_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6316_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6317 for ECDSA, tcId is 119 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6317_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6317_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6317_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x02, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6317 = { .name = "ecdsa_secp256k1_sha512_6317", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6317_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6317_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6317_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6318 for ECDSA, tcId is 120 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6318_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6318_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6318_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0x69, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6318 = { .name = "ecdsa_secp256k1_sha512_6318", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6318_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6318_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6318_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6319 for ECDSA, tcId is 121 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6319_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6319_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6319_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6319 = { .name = "ecdsa_secp256k1_sha512_6319", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6319_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6319_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6319_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6320 for ECDSA, tcId is 122 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6320_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6320_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6320_sig[] = { 0x00, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6320 = { .name = "ecdsa_secp256k1_sha512_6320", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6320_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6320_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6320_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6321 for ECDSA, tcId is 123 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6321_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6321_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6321_sig[] = { 0x00, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6321 = { .name = "ecdsa_secp256k1_sha512_6321", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6321_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6321_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6321_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6322 for ECDSA, tcId is 124 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6322_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6322_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6322 = { .name = "ecdsa_secp256k1_sha512_6322", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6322_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6322_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6322_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6323 for ECDSA, tcId is 125 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6323_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6323_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6323_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6323 = { .name = "ecdsa_secp256k1_sha512_6323", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6323_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6323_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6323_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6324 for ECDSA, tcId is 126 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6324_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6324_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6324_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6324 = { .name = "ecdsa_secp256k1_sha512_6324", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6324_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6324_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6324_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256k1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6325 for ECDSA, tcId is 129 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6325_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6325_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6325_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6325 = { .name = "ecdsa_secp256k1_sha512_6325", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6325_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6325_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6325_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6326 for ECDSA, tcId is 130 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6326_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6326_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6326_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6326 = { .name = "ecdsa_secp256k1_sha512_6326", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6326_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6326_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6326_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6327 for ECDSA, tcId is 131 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6327_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6327_sig[] = { 0x01, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xde, 0x19, 0x9a, 0xb6, 0xbf, 0x23, 0xce, 0xc3, 0xa1, 0x20, 0xf5, 0x6d, 0xa5, 0x84, 0x3d, 0xe3, 0x2a, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6327 = { .name = "ecdsa_secp256k1_sha512_6327", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6327_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6327_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6327_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6328 for ECDSA, tcId is 132 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6328_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6328_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xe0, 0xa4, 0x3c, 0xfc, 0xf1, 0xc5, 0x3d, 0x83, 0x29, 0xa1, 0x50, 0xb0, 0x8b, 0xe3, 0xd1, 0x60, 0xa8, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6328 = { .name = "ecdsa_secp256k1_sha512_6328", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6328_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6328_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6328_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6329 for ECDSA, tcId is 133 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6329_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6329_sig[] = { 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x20, 0xa1, 0x14, 0x26, 0x27, 0x8b, 0x79, 0xdc, 0x9a, 0x9e, 0xdc, 0xf0, 0xe7, 0x4b, 0xf8, 0x5e, 0x17, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6329 = { .name = "ecdsa_secp256k1_sha512_6329", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6329_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6329_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6329_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6330 for ECDSA, tcId is 134 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6330_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6330_sig[] = { 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x1f, 0x5b, 0xc3, 0x03, 0x0e, 0x3a, 0xc2, 0x7c, 0xd6, 0x5e, 0xaf, 0x4f, 0x74, 0x1c, 0x2e, 0x9f, 0x58, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6330 = { .name = "ecdsa_secp256k1_sha512_6330", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6330_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6330_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6330_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6331 for ECDSA, tcId is 135 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6331_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6331_sig[] = { 0xfe, 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x21, 0xe6, 0x65, 0x49, 0x40, 0xdc, 0x31, 0x3c, 0x5e, 0xdf, 0x0a, 0x92, 0x5a, 0x7b, 0xc2, 0x1c, 0xd6, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6331 = { .name = "ecdsa_secp256k1_sha512_6331", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6331_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6331_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6331_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6332 for ECDSA, tcId is 136 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6332_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6332_sig[] = { 0x01, 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6332 = { .name = "ecdsa_secp256k1_sha512_6332", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6332_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6332_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6332_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6333 for ECDSA, tcId is 137 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6333_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6333_sig[] = { 0x93, 0x46, 0xeb, 0xdb, 0x91, 0xe3, 0x6d, 0xfa, 0xf5, 0xfc, 0x26, 0x4f, 0x4b, 0x0f, 0xa2, 0x20, 0xa1, 0x14, 0x26, 0x27, 0x8b, 0x79, 0xdc, 0x9a, 0x9e, 0xdc, 0xf0, 0xe7, 0x4b, 0xf8, 0x5e, 0x17, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6333 = { .name = "ecdsa_secp256k1_sha512_6333", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6333_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6333_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6333_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6334 for ECDSA, tcId is 138 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6334_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6334_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x01, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa3, 0x48, 0x97, 0x9b, 0xd9, 0x90, 0x06, 0x5d, 0xb6, 0x4a, 0x26, 0x14, 0x53, 0xa1, 0x1c, 0x2d, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6334 = { .name = "ecdsa_secp256k1_sha512_6334", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6334_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6334_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6334_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6335 for ECDSA, tcId is 139 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6335_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6335_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa5, 0xd3, 0x39, 0xe2, 0x0c, 0x31, 0x75, 0x1d, 0x3e, 0xca, 0x81, 0x57, 0x3a, 0x00, 0xaf, 0xaa, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6335 = { .name = "ecdsa_secp256k1_sha512_6335", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6335_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6335_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6335_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6336 for ECDSA, tcId is 140 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6336_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6336_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5b, 0x72, 0x17, 0x41, 0x0d, 0x1f, 0x42, 0x42, 0x85, 0x75, 0xac, 0x4a, 0x39, 0x2f, 0x1a, 0x14, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6336 = { .name = "ecdsa_secp256k1_sha512_6336", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6336_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6336_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6336_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6337 for ECDSA, tcId is 141 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6337_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6337_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0xfe, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5c, 0xb7, 0x68, 0x64, 0x26, 0x6f, 0xf9, 0xa2, 0x49, 0xb5, 0xd9, 0xeb, 0xac, 0x5e, 0xe3, 0xd2, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6337 = { .name = "ecdsa_secp256k1_sha512_6337", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6337_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6337_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6337_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6338 for ECDSA, tcId is 142 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6338_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6338_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x01, 0xcb, 0x2d, 0x0e, 0x5a, 0x98, 0x28, 0x19, 0xb8, 0x4e, 0x87, 0xaa, 0xd2, 0x13, 0xca, 0x78, 0xa4, 0x8d, 0xe8, 0xbe, 0xf2, 0xe0, 0xbd, 0xbd, 0x7a, 0x8a, 0x53, 0xb5, 0xc6, 0xd0, 0xe5, 0xeb, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6338 = { .name = "ecdsa_secp256k1_sha512_6338", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6338_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6338_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6338_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6339 for ECDSA, tcId is 143 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6339_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6339_sig[] = { 0x6c, 0xb9, 0x14, 0x24, 0x6e, 0x1c, 0x92, 0x05, 0x0a, 0x03, 0xd9, 0xb0, 0xb4, 0xf0, 0x5d, 0xdf, 0x5e, 0xeb, 0xd9, 0xd8, 0x74, 0x86, 0x23, 0x65, 0x61, 0x23, 0x0f, 0x18, 0xb4, 0x07, 0xa1, 0xe9, 0x34, 0xd2, 0xf1, 0xa5, 0x67, 0xd7, 0xe6, 0x47, 0xb1, 0x78, 0x55, 0x2d, 0xec, 0x35, 0x87, 0x5b, 0x72, 0x17, 0x41, 0x0d, 0x1f, 0x42, 0x42, 0x85, 0x75, 0xac, 0x4a, 0x39, 0x2f, 0x1a, 0x14, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6339 = { .name = "ecdsa_secp256k1_sha512_6339", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6339_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6339_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6339_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6340 for ECDSA, tcId is 144 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6340_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6340_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6340 = { .name = "ecdsa_secp256k1_sha512_6340", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6340_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6340_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6340_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6341 for ECDSA, tcId is 145 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6341_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6341_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6341 = { .name = "ecdsa_secp256k1_sha512_6341", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6341_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6341_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6341_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6342 for ECDSA, tcId is 146 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6342_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6342_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6342 = { .name = "ecdsa_secp256k1_sha512_6342", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6342_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6342_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6342_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6343 for ECDSA, tcId is 147 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6343_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6343_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6343 = { .name = "ecdsa_secp256k1_sha512_6343", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6343_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6343_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6343_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6344 for ECDSA, tcId is 148 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6344_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6344_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6344 = { .name = "ecdsa_secp256k1_sha512_6344", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6344_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6344_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6344_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6345 for ECDSA, tcId is 149 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6345_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6345_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6345 = { .name = "ecdsa_secp256k1_sha512_6345", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6345_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6345_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6345_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6346 for ECDSA, tcId is 150 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6346_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6346_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6346 = { .name = "ecdsa_secp256k1_sha512_6346", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6346_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6346_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6346_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6347 for ECDSA, tcId is 151 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6347_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6347_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6347 = { .name = "ecdsa_secp256k1_sha512_6347", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6347_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6347_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6347_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6348 for ECDSA, tcId is 154 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6348_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6348_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6348 = { .name = "ecdsa_secp256k1_sha512_6348", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6348_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6348_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6348_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6349 for ECDSA, tcId is 155 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6349_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6349_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6349 = { .name = "ecdsa_secp256k1_sha512_6349", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6349_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6349_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6349_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6350 for ECDSA, tcId is 156 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6350_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6350_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6350 = { .name = "ecdsa_secp256k1_sha512_6350", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6350_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6350_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6350_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6351 for ECDSA, tcId is 157 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6351_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6351_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6351 = { .name = "ecdsa_secp256k1_sha512_6351", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6351_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6351_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6351_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6352 for ECDSA, tcId is 158 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6352_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6352_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6352 = { .name = "ecdsa_secp256k1_sha512_6352", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6352_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6352_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6352_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6353 for ECDSA, tcId is 159 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6353_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6353_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6353 = { .name = "ecdsa_secp256k1_sha512_6353", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6353_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6353_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6353_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6354 for ECDSA, tcId is 160 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6354_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6354_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6354 = { .name = "ecdsa_secp256k1_sha512_6354", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6354_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6354_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6354_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6355 for ECDSA, tcId is 161 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6355_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6355_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6355 = { .name = "ecdsa_secp256k1_sha512_6355", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6355_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6355_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6355_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6356 for ECDSA, tcId is 164 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6356_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6356_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6356 = { .name = "ecdsa_secp256k1_sha512_6356", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6356_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6356_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6356_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6357 for ECDSA, tcId is 165 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6357_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6357_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6357 = { .name = "ecdsa_secp256k1_sha512_6357", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6357_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6357_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6357_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6358 for ECDSA, tcId is 166 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6358_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6358_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6358 = { .name = "ecdsa_secp256k1_sha512_6358", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6358_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6358_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6358_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6359 for ECDSA, tcId is 167 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6359_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6359_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6359 = { .name = "ecdsa_secp256k1_sha512_6359", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6359_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6359_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6359_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6360 for ECDSA, tcId is 168 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6360_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6360_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6360 = { .name = "ecdsa_secp256k1_sha512_6360", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6360_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6360_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6360_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6361 for ECDSA, tcId is 169 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6361_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6361_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6361 = { .name = "ecdsa_secp256k1_sha512_6361", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6361_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6361_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6361_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6362 for ECDSA, tcId is 170 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6362_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6362_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6362 = { .name = "ecdsa_secp256k1_sha512_6362", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6362_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6362_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6362_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6363 for ECDSA, tcId is 171 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6363_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6363_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6363 = { .name = "ecdsa_secp256k1_sha512_6363", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6363_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6363_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6363_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6364 for ECDSA, tcId is 174 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6364_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6364_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6364 = { .name = "ecdsa_secp256k1_sha512_6364", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6364_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6364_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6364_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6365 for ECDSA, tcId is 175 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6365_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6365_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6365 = { .name = "ecdsa_secp256k1_sha512_6365", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6365_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6365_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6365_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6366 for ECDSA, tcId is 176 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6366_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6366_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6366 = { .name = "ecdsa_secp256k1_sha512_6366", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6366_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6366_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6366_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6367 for ECDSA, tcId is 177 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6367_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6367_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6367 = { .name = "ecdsa_secp256k1_sha512_6367", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6367_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6367_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6367_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6368 for ECDSA, tcId is 178 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6368_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6368_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6368 = { .name = "ecdsa_secp256k1_sha512_6368", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6368_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6368_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6368_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6369 for ECDSA, tcId is 179 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6369_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6369_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6369 = { .name = "ecdsa_secp256k1_sha512_6369", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6369_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6369_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6369_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6370 for ECDSA, tcId is 180 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6370_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6370_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6370 = { .name = "ecdsa_secp256k1_sha512_6370", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6370_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6370_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6370_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6371 for ECDSA, tcId is 181 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6371_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6371_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6371 = { .name = "ecdsa_secp256k1_sha512_6371", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6371_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6371_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6371_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6372 for ECDSA, tcId is 184 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6372_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6372_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6372 = { .name = "ecdsa_secp256k1_sha512_6372", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6372_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6372_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6372_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6373 for ECDSA, tcId is 185 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6373_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6373_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6373 = { .name = "ecdsa_secp256k1_sha512_6373", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6373_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6373_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6373_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6374 for ECDSA, tcId is 186 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6374_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6374_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6374 = { .name = "ecdsa_secp256k1_sha512_6374", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6374_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6374_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6374_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6375 for ECDSA, tcId is 187 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6375_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6375_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6375 = { .name = "ecdsa_secp256k1_sha512_6375", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6375_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6375_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6375_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6376 for ECDSA, tcId is 188 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6376_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6376_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6376 = { .name = "ecdsa_secp256k1_sha512_6376", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6376_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6376_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6376_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6377 for ECDSA, tcId is 189 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6377_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6377_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6377 = { .name = "ecdsa_secp256k1_sha512_6377", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6377_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6377_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6377_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6378 for ECDSA, tcId is 190 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6378_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6378_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6378 = { .name = "ecdsa_secp256k1_sha512_6378", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6378_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6378_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6378_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6379 for ECDSA, tcId is 191 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6379_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6379_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6379 = { .name = "ecdsa_secp256k1_sha512_6379", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6379_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6379_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6379_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6380 for ECDSA, tcId is 194 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6380_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6380_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6380 = { .name = "ecdsa_secp256k1_sha512_6380", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6380_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6380_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6380_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6381 for ECDSA, tcId is 195 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6381_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6381_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6381 = { .name = "ecdsa_secp256k1_sha512_6381", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6381_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6381_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6381_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6382 for ECDSA, tcId is 196 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6382_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6382_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6382 = { .name = "ecdsa_secp256k1_sha512_6382", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6382_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6382_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6382_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6383 for ECDSA, tcId is 197 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6383_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6383_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6383 = { .name = "ecdsa_secp256k1_sha512_6383", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6383_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6383_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6383_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6384 for ECDSA, tcId is 198 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6384_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6384_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6384 = { .name = "ecdsa_secp256k1_sha512_6384", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6384_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6384_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6384_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6385 for ECDSA, tcId is 199 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6385_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6385_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6385 = { .name = "ecdsa_secp256k1_sha512_6385", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6385_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6385_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6385_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6386 for ECDSA, tcId is 200 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6386_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6386_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6386 = { .name = "ecdsa_secp256k1_sha512_6386", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6386_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6386_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6386_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6387 for ECDSA, tcId is 201 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6387_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6387_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6387 = { .name = "ecdsa_secp256k1_sha512_6387", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6387_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6387_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6387_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6388 for ECDSA, tcId is 204 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6388_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6388_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6388 = { .name = "ecdsa_secp256k1_sha512_6388", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6388_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6388_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6388_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6389 for ECDSA, tcId is 205 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6389_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6389_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6389 = { .name = "ecdsa_secp256k1_sha512_6389", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6389_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6389_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6389_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6390 for ECDSA, tcId is 206 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6390_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6390_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6390 = { .name = "ecdsa_secp256k1_sha512_6390", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6390_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6390_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6390_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6391 for ECDSA, tcId is 207 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6391_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6391_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6391 = { .name = "ecdsa_secp256k1_sha512_6391", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6391_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6391_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6391_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6392 for ECDSA, tcId is 208 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6392_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6392_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6392 = { .name = "ecdsa_secp256k1_sha512_6392", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6392_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6392_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6392_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6393 for ECDSA, tcId is 209 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6393_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6393_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6393 = { .name = "ecdsa_secp256k1_sha512_6393", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6393_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6393_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6393_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6394 for ECDSA, tcId is 210 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6394_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6394_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6394 = { .name = "ecdsa_secp256k1_sha512_6394", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6394_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6394_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6394_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6395 for ECDSA, tcId is 211 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6395_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6395_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6395 = { .name = "ecdsa_secp256k1_sha512_6395", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6395_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6395_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6395_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6396 for ECDSA, tcId is 214 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6396_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6396_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6396 = { .name = "ecdsa_secp256k1_sha512_6396", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6396_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6396_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6396_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6397 for ECDSA, tcId is 215 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6397_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6397_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6397 = { .name = "ecdsa_secp256k1_sha512_6397", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6397_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6397_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6397_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6398 for ECDSA, tcId is 216 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6398_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6398_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6398 = { .name = "ecdsa_secp256k1_sha512_6398", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6398_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6398_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6398_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6399 for ECDSA, tcId is 217 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6399_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6399_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6399 = { .name = "ecdsa_secp256k1_sha512_6399", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6399_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6399_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6399_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6400 for ECDSA, tcId is 218 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6400_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6400_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6400 = { .name = "ecdsa_secp256k1_sha512_6400", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6400_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6400_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6400_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6401 for ECDSA, tcId is 219 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6401_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6401_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6401 = { .name = "ecdsa_secp256k1_sha512_6401", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6401_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6401_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6401_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6402 for ECDSA, tcId is 220 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6402_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6402_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6402 = { .name = "ecdsa_secp256k1_sha512_6402", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6402_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6402_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6402_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6403 for ECDSA, tcId is 221 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6403_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6403_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6403_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6403 = { .name = "ecdsa_secp256k1_sha512_6403", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6403_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6403_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6403_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6404 for ECDSA, tcId is 230 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6404_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6404_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x39, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6404_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0x2c, 0x8a, 0x79, 0xb4, 0x9c, 0xae, 0x4e, 0xc1, 0x5d, 0x29, 0x35, 0x75, 0xa5, 0xa1, 0xaf, 0x5b, 0x4d, 0x6e, 0xfb, 0x74, 0xef, 0x5c, 0x2c, 0x1b, 0xe3, 0x4e, 0x33, 0xcd, 0xeb, 0x71, 0x13, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6404 = { .name = "ecdsa_secp256k1_sha512_6404", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6404_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6404_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6404_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6405 for ECDSA, tcId is 231 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6405_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6405_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6405_sig[] = { 0xd7, 0x43, 0xc5, 0xd7, 0x6e, 0x11, 0x93, 0xa5, 0x74, 0x38, 0xf1, 0xb4, 0x3b, 0x1b, 0x0e, 0x33, 0xd0, 0xd1, 0xab, 0x15, 0xbd, 0x3d, 0x57, 0xa5, 0xcf, 0x6a, 0xeb, 0xb3, 0x70, 0xd4, 0x6c, 0xe0, 0x7d, 0xf2, 0x7c, 0xb7, 0x30, 0xb3, 0x3d, 0xfe, 0x01, 0xe3, 0x4a, 0x00, 0x67, 0xe5, 0x48, 0xa9, 0x8c, 0x56, 0x84, 0x6d, 0x9a, 0x4c, 0xd6, 0x4a, 0x93, 0x0c, 0x96, 0xbf, 0xd9, 0x17, 0xcf, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6405 = { .name = "ecdsa_secp256k1_sha512_6405", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6405_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6405_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6405_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6406 for ECDSA, tcId is 232 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6406_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6406_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6406_sig[] = { 0xba, 0x30, 0xf4, 0xdd, 0xf3, 0x34, 0x8f, 0x26, 0x83, 0x5e, 0x9c, 0x50, 0xf6, 0xa2, 0xd5, 0x02, 0x3a, 0x9a, 0x1f, 0x5f, 0xe2, 0xe9, 0xcf, 0x14, 0xb3, 0x27, 0x00, 0x15, 0xda, 0xc2, 0x83, 0xfe, 0x1d, 0x16, 0x16, 0xab, 0xb2, 0x04, 0xf6, 0x15, 0xfb, 0xe9, 0x98, 0x60, 0xd8, 0x91, 0x58, 0xc3, 0x26, 0x41, 0x82, 0xd6, 0x17, 0xac, 0x9f, 0x15, 0x60, 0xfa, 0x82, 0x91, 0xb3, 0x49, 0xd5, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6406 = { .name = "ecdsa_secp256k1_sha512_6406", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6406_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6406_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6406_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6407 for ECDSA, tcId is 233 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6407_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6407_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6407_sig[] = { 0x55, 0x1d, 0x72, 0xe6, 0x3f, 0x7b, 0x27, 0x28, 0x3c, 0x41, 0x07, 0xf7, 0xd8, 0x51, 0xf3, 0x87, 0xb6, 0x0f, 0x3f, 0x47, 0x13, 0xa5, 0xd3, 0x5c, 0x21, 0xfa, 0x33, 0x2f, 0xbe, 0xed, 0x44, 0x94, 0x80, 0x91, 0x4c, 0xc3, 0x7a, 0x3f, 0xe1, 0x3a, 0x74, 0xdb, 0x7f, 0xcc, 0x52, 0x26, 0x38, 0x8d, 0x95, 0x03, 0x4a, 0x50, 0xa8, 0x9a, 0x9b, 0x2f, 0xe9, 0xbf, 0x42, 0xea, 0x29, 0xe5, 0x71, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6407 = { .name = "ecdsa_secp256k1_sha512_6407", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6407_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6407_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6407_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6408 for ECDSA, tcId is 234 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6408_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6408_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6408_sig[] = { 0x80, 0xce, 0xad, 0x3d, 0x16, 0x5c, 0xe0, 0x5c, 0x7c, 0xf8, 0x46, 0x9f, 0x1c, 0x35, 0xc5, 0xa3, 0xa6, 0x41, 0x69, 0x6c, 0x84, 0x3b, 0xef, 0x0f, 0x02, 0x2a, 0x6c, 0x68, 0x13, 0x3d, 0xc4, 0x9e, 0xea, 0x84, 0x09, 0xd7, 0x43, 0xa4, 0xad, 0x5e, 0x13, 0x62, 0x07, 0x73, 0x6c, 0x3a, 0xd7, 0x9c, 0x8c, 0xfc, 0x7b, 0x57, 0xeb, 0xd1, 0xbd, 0x9b, 0x8a, 0x59, 0x66, 0x70, 0xad, 0x12, 0xd4, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6408 = { .name = "ecdsa_secp256k1_sha512_6408", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6408_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6408_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6408_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6409 for ECDSA, tcId is 235 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6409_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6409_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6409_sig[] = { 0xbb, 0xc0, 0xe8, 0xb7, 0x72, 0x10, 0x65, 0xa5, 0x1b, 0xac, 0x9c, 0x3a, 0xad, 0x64, 0x16, 0x89, 0x98, 0xcc, 0x0e, 0xfa, 0x23, 0x29, 0x83, 0x40, 0xd4, 0x36, 0x86, 0x7c, 0xc8, 0x6b, 0xa8, 0x47, 0xae, 0x3b, 0xaa, 0x13, 0x1a, 0x83, 0x15, 0x3c, 0xb3, 0x1d, 0xe2, 0xf7, 0x58, 0xe4, 0x51, 0x39, 0xf6, 0x2f, 0xe6, 0xcc, 0x9c, 0xe3, 0x94, 0x1c, 0x6b, 0x17, 0x89, 0xdc, 0x10, 0x10, 0xf3, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6409 = { .name = "ecdsa_secp256k1_sha512_6409", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6409_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6409_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6409_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6410 for ECDSA, tcId is 236 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6410_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6410_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6410_sig[] = { 0x3a, 0x5b, 0xa9, 0x39, 0x17, 0xb9, 0x54, 0x61, 0x7b, 0x40, 0xe1, 0xd8, 0x66, 0x86, 0x0d, 0x15, 0x22, 0xb0, 0xd3, 0x10, 0xca, 0xc2, 0x45, 0x76, 0x36, 0xe5, 0x4e, 0x2f, 0xfd, 0xea, 0x88, 0x8e, 0x3e, 0xac, 0x6f, 0xe7, 0x62, 0xae, 0xe1, 0x27, 0x83, 0x7c, 0x2c, 0x65, 0xfd, 0x9c, 0x1f, 0x65, 0xb4, 0x04, 0xb2, 0xc3, 0x1b, 0xb9, 0x45, 0xe7, 0x5d, 0x61, 0x66, 0x50, 0x3f, 0xb5, 0xc8, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6410 = { .name = "ecdsa_secp256k1_sha512_6410", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6410_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6410_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6410_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6411 for ECDSA, tcId is 237 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6411_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6411_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6411_sig[] = { 0x64, 0x7f, 0x2b, 0x4b, 0xef, 0x6d, 0x1e, 0xa7, 0x90, 0x8a, 0xc5, 0xf3, 0xdf, 0xd7, 0x05, 0x49, 0x4c, 0x25, 0x87, 0x45, 0x65, 0x57, 0x80, 0x5f, 0xe6, 0x4a, 0x70, 0x3b, 0x2b, 0x17, 0x50, 0x3c, 0x20, 0xe1, 0x64, 0xbb, 0xb5, 0x05, 0xc6, 0xdf, 0x56, 0x45, 0x59, 0x08, 0x00, 0x8c, 0xf9, 0x62, 0x6d, 0xf3, 0x20, 0xf4, 0x8a, 0xa3, 0xfc, 0x9d, 0x0c, 0xc8, 0xad, 0x8b, 0xcf, 0x07, 0x8c, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6411 = { .name = "ecdsa_secp256k1_sha512_6411", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6411_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6411_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6411_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6412 for ECDSA, tcId is 238 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6412_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6412_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6412_sig[] = { 0x8a, 0xa6, 0x53, 0xcf, 0xa0, 0x01, 0x79, 0x8c, 0x47, 0x1e, 0xea, 0x31, 0x99, 0xdc, 0x97, 0x5a, 0x4d, 0xea, 0x4f, 0x7c, 0x1e, 0xde, 0x47, 0x45, 0x34, 0x09, 0xe6, 0x06, 0xd0, 0x5c, 0xeb, 0x51, 0xca, 0xb2, 0x09, 0x67, 0xa0, 0x56, 0xc0, 0xea, 0x7f, 0xe9, 0xcd, 0xf8, 0xe1, 0x98, 0x0f, 0x55, 0xb1, 0x59, 0x7a, 0x2d, 0xad, 0x80, 0xc9, 0x22, 0x3a, 0x0f, 0xab, 0x15, 0xc3, 0x14, 0xfe, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6412 = { .name = "ecdsa_secp256k1_sha512_6412", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6412_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6412_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6412_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6413 for ECDSA, tcId is 239 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6413_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6413_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6413_sig[] = { 0x84, 0x2e, 0x42, 0x1f, 0x33, 0xbe, 0x24, 0x1d, 0x27, 0xf1, 0x2f, 0x87, 0x53, 0x55, 0x90, 0x2a, 0x25, 0x81, 0x9f, 0x21, 0x0b, 0x36, 0x85, 0xad, 0x53, 0x6e, 0x23, 0x59, 0x40, 0x12, 0xd9, 0xd0, 0x4f, 0xb8, 0x94, 0xae, 0x0e, 0x9c, 0x24, 0xb6, 0xed, 0x28, 0x0e, 0x22, 0x4a, 0xb0, 0x81, 0x14, 0x69, 0x29, 0x6a, 0x98, 0x37, 0xd1, 0xe9, 0x5b, 0x5d, 0x9d, 0x66, 0x1d, 0x21, 0xa1, 0xc2, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6413 = { .name = "ecdsa_secp256k1_sha512_6413", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6413_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6413_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6413_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6414 for ECDSA, tcId is 240 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6414_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6414_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6414_sig[] = { 0x0b, 0x70, 0x3f, 0xd7, 0x5b, 0xdd, 0x8d, 0xce, 0x48, 0x20, 0xfe, 0x13, 0x0a, 0x0b, 0x0a, 0xf1, 0x7a, 0xad, 0x4e, 0x46, 0x81, 0xb0, 0x25, 0x48, 0x64, 0xd5, 0xd6, 0xf8, 0x93, 0x1f, 0xf5, 0x73, 0x40, 0x45, 0x21, 0xac, 0xf8, 0x4e, 0x72, 0xff, 0x22, 0xc2, 0xee, 0x05, 0xd1, 0x4a, 0x4b, 0xc7, 0xb7, 0x0e, 0x69, 0xad, 0xc7, 0x8c, 0xaf, 0x81, 0x35, 0x0e, 0x01, 0x37, 0x96, 0x94, 0xc3, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6414 = { .name = "ecdsa_secp256k1_sha512_6414", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6414_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6414_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6414_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6415 for ECDSA, tcId is 241 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6415_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6415_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6415_sig[] = { 0x62, 0xf0, 0xdf, 0x16, 0x50, 0x56, 0x0a, 0x58, 0x00, 0xfa, 0x67, 0x03, 0x77, 0xa4, 0x31, 0x7a, 0x60, 0x4d, 0x64, 0x75, 0xc4, 0x90, 0x06, 0x6c, 0xe1, 0x56, 0x38, 0xf8, 0xd1, 0x33, 0x0b, 0x63, 0x96, 0x3e, 0xdf, 0x90, 0x51, 0x97, 0x09, 0x68, 0x18, 0x36, 0x8a, 0x99, 0x3f, 0xbf, 0xfe, 0x32, 0x90, 0x8a, 0x57, 0x15, 0x3e, 0x6a, 0x16, 0x12, 0xba, 0xe6, 0xee, 0x9e, 0xe8, 0xa8, 0xa7, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6415 = { .name = "ecdsa_secp256k1_sha512_6415", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6415_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6415_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6415_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6416 for ECDSA, tcId is 242 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6416_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6416_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6416_sig[] = { 0x29, 0x01, 0xad, 0xe6, 0x94, 0xd4, 0xb9, 0xc3, 0x76, 0xb3, 0x24, 0x40, 0x18, 0xe5, 0x7b, 0xcd, 0xe7, 0x05, 0x7e, 0x8e, 0x11, 0xdd, 0x0f, 0x7d, 0x07, 0x08, 0x0c, 0xdd, 0x1a, 0x39, 0x19, 0x4b, 0xee, 0x65, 0xa4, 0xc2, 0xba, 0xa7, 0x0f, 0x8e, 0x23, 0x6c, 0xeb, 0xa9, 0xee, 0xd4, 0x00, 0xd8, 0x99, 0xf7, 0x52, 0x76, 0xf9, 0x4e, 0x4b, 0x79, 0x97, 0xb2, 0xb0, 0x1a, 0xc0, 0x08, 0xbb, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6416 = { .name = "ecdsa_secp256k1_sha512_6416", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6416_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6416_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6416_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6417 for ECDSA, tcId is 243 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6417_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6417_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6417_sig[] = { 0xaa, 0x9c, 0x8e, 0x53, 0x11, 0xb2, 0x32, 0xb4, 0xce, 0x9d, 0xb0, 0x38, 0x92, 0xf2, 0x6e, 0xb7, 0x7d, 0x65, 0x5c, 0x6f, 0xf0, 0x9a, 0x59, 0x94, 0x24, 0xab, 0xbd, 0x4b, 0x11, 0xe7, 0x50, 0xbe, 0xc1, 0x03, 0x4c, 0x44, 0xb0, 0x2e, 0x2f, 0xdf, 0x05, 0xe1, 0xba, 0x5e, 0xeb, 0xdf, 0x95, 0x4c, 0x5a, 0x01, 0x79, 0x46, 0x00, 0x05, 0x9e, 0x05, 0xe5, 0xc7, 0x3d, 0x54, 0x2d, 0xa3, 0xee, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6417 = { .name = "ecdsa_secp256k1_sha512_6417", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6417_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6417_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6417_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6418 for ECDSA, tcId is 244 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6418_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6418_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6418_sig[] = { 0x2f, 0xeb, 0xea, 0x01, 0x6e, 0x55, 0x05, 0x9e, 0x91, 0xe1, 0x57, 0xb9, 0x88, 0xf8, 0x60, 0x48, 0xdb, 0x57, 0xc3, 0x7f, 0xd1, 0x22, 0xf5, 0xcc, 0x60, 0x16, 0x9f, 0xf4, 0xfc, 0xb4, 0x86, 0x3c, 0xeb, 0x19, 0xcb, 0xc3, 0x5b, 0x30, 0x61, 0xe1, 0xac, 0x4b, 0x59, 0xb9, 0x2d, 0x1f, 0x73, 0x2c, 0xea, 0x32, 0x12, 0xdc, 0xbe, 0x94, 0x3c, 0xca, 0xd8, 0x2d, 0x32, 0x74, 0x0b, 0xc2, 0x2c, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6418 = { .name = "ecdsa_secp256k1_sha512_6418", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6418_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6418_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6418_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6419 for ECDSA, tcId is 245 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6419_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6419_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6419_sig[] = { 0x2b, 0xe4, 0x63, 0xff, 0x06, 0xaf, 0x20, 0x96, 0xdd, 0x62, 0xf0, 0x32, 0x6e, 0x1a, 0xf5, 0x1c, 0x58, 0x5f, 0x18, 0xca, 0x8f, 0x8a, 0xa3, 0x61, 0xde, 0xdc, 0xf5, 0x5d, 0x54, 0x3e, 0x6b, 0x7d, 0xf5, 0x6a, 0xfd, 0x59, 0xda, 0xd4, 0x25, 0x30, 0xd9, 0x4f, 0x11, 0xc5, 0x9a, 0x64, 0x08, 0xc5, 0x48, 0x26, 0xb7, 0xa9, 0xef, 0x83, 0xf4, 0xd0, 0x20, 0xf2, 0x09, 0xd7, 0x1f, 0x9b, 0x74, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6419 = { .name = "ecdsa_secp256k1_sha512_6419", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6419_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6419_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6419_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6420 for ECDSA, tcId is 246 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6420_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6420_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6420_sig[] = { 0xf6, 0x1f, 0x64, 0xde, 0xfc, 0x45, 0xab, 0xe2, 0x84, 0xb3, 0x91, 0x61, 0xb4, 0x95, 0x85, 0xf2, 0x1e, 0xde, 0xf1, 0xe8, 0x8d, 0x06, 0x38, 0x9e, 0x5b, 0x5a, 0xac, 0xbb, 0x39, 0x4c, 0xe4, 0xdc, 0xa5, 0xa2, 0x7e, 0x17, 0xdf, 0x10, 0xae, 0xda, 0xce, 0x97, 0xeb, 0x2c, 0x48, 0x65, 0x9f, 0x69, 0xb5, 0x8c, 0xfe, 0x76, 0xa1, 0xf1, 0xac, 0x30, 0xfe, 0xa3, 0x04, 0x36, 0x55, 0xbd, 0xe5, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6420 = { .name = "ecdsa_secp256k1_sha512_6420", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6420_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6420_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6420_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6421 for ECDSA, tcId is 247 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6421_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6421_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6421_sig[] = { 0x05, 0x21, 0x34, 0xea, 0xe1, 0x3c, 0x1d, 0xec, 0x5a, 0xc5, 0xaa, 0x46, 0x18, 0x63, 0x91, 0x78, 0x6f, 0x5b, 0x60, 0x59, 0x1c, 0xb0, 0xdd, 0x30, 0xbf, 0xc6, 0x1e, 0x89, 0x48, 0x6a, 0xbf, 0xe2, 0x09, 0xcd, 0xaa, 0x27, 0x9c, 0x4f, 0x0d, 0x3d, 0x5a, 0xe0, 0x0e, 0x0d, 0x74, 0xe7, 0x33, 0xa2, 0x60, 0xb8, 0xb1, 0x20, 0xa1, 0xbd, 0xa7, 0xe5, 0xa9, 0x01, 0x94, 0xec, 0x44, 0x2e, 0x59, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6421 = { .name = "ecdsa_secp256k1_sha512_6421", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6421_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6421_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6421_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6422 for ECDSA, tcId is 248 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6422_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6422_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6422_sig[] = { 0x24, 0x82, 0x46, 0x14, 0x68, 0x6b, 0x80, 0xf3, 0xb7, 0x38, 0x97, 0x0a, 0x27, 0x81, 0x6f, 0x58, 0xcf, 0x10, 0x3c, 0x4a, 0x93, 0xc2, 0xd6, 0xb0, 0xf5, 0xf6, 0xde, 0x65, 0xa6, 0x55, 0x01, 0xe3, 0x18, 0x0e, 0x58, 0x01, 0xa5, 0x93, 0x06, 0x3e, 0x75, 0xb8, 0x3c, 0xd7, 0xab, 0x8e, 0x52, 0x57, 0x5a, 0x01, 0x3a, 0x1b, 0xe5, 0xcd, 0xee, 0xb0, 0x5b, 0x30, 0xe3, 0xac, 0x9d, 0xc4, 0xed, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6422 = { .name = "ecdsa_secp256k1_sha512_6422", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6422_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6422_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6422_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6423 for ECDSA, tcId is 249 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6423_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6423_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6423_sig[] = { 0x2f, 0xf7, 0xa5, 0xab, 0x2f, 0x1a, 0x33, 0x23, 0x65, 0x1a, 0x0d, 0x17, 0xc4, 0x26, 0x36, 0x72, 0xee, 0x4d, 0x2c, 0x56, 0x0c, 0xda, 0x94, 0xe7, 0xd5, 0x2e, 0xe7, 0x55, 0x13, 0x8b, 0xb0, 0x45, 0x54, 0x2c, 0xe8, 0x3d, 0x8d, 0x9d, 0x44, 0x13, 0x57, 0xe2, 0x4b, 0x61, 0x8b, 0x56, 0x95, 0x16, 0x4d, 0x43, 0x91, 0x79, 0x1c, 0xff, 0x62, 0xee, 0xb0, 0x16, 0x09, 0xd1, 0xd7, 0xcb, 0x1c, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6423 = { .name = "ecdsa_secp256k1_sha512_6423", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6423_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6423_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6423_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6424 for ECDSA, tcId is 250 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6424_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6424_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6424_sig[] = { 0xae, 0x44, 0x6d, 0x1a, 0x81, 0x76, 0x6d, 0x21, 0xdd, 0x7f, 0xc5, 0x15, 0xd0, 0xa9, 0x56, 0x60, 0x5d, 0x0c, 0xde, 0x26, 0xd6, 0x08, 0x6a, 0x76, 0xf8, 0xff, 0xc8, 0x1a, 0x6d, 0xfb, 0xea, 0x46, 0x4f, 0xcc, 0xef, 0x9f, 0x75, 0xe9, 0x4a, 0xbc, 0x7e, 0xb3, 0xf2, 0xbd, 0xca, 0xfd, 0xc5, 0xd9, 0x7d, 0x61, 0xb9, 0xd9, 0x50, 0xa0, 0x60, 0x10, 0xab, 0x4c, 0x54, 0xe3, 0xda, 0x7f, 0xd4, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6424 = { .name = "ecdsa_secp256k1_sha512_6424", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6424_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6424_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6424_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6425 for ECDSA, tcId is 251 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6425_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6425_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6425_sig[] = { 0x39, 0x57, 0xcf, 0xf4, 0xa7, 0x5f, 0xc6, 0x03, 0x9c, 0x0b, 0x0c, 0x2e, 0x47, 0xeb, 0x9b, 0x07, 0xff, 0x6e, 0xc5, 0xdc, 0x8a, 0x3c, 0x33, 0x16, 0x59, 0x0a, 0x7e, 0xc9, 0xa1, 0xd7, 0xd9, 0x93, 0x4e, 0x57, 0x8e, 0xe6, 0x59, 0x4a, 0x00, 0xcb, 0x80, 0xc6, 0x40, 0xcb, 0x95, 0x89, 0xd6, 0x16, 0xdb, 0xd1, 0xce, 0xcd, 0xa2, 0xd1, 0x5d, 0xcc, 0x00, 0x62, 0xf3, 0x06, 0x86, 0xd6, 0x07, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6425 = { .name = "ecdsa_secp256k1_sha512_6425", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6425_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6425_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6425_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6426 for ECDSA, tcId is 252 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6426_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6426_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6426_sig[] = { 0x43, 0x7c, 0x36, 0x03, 0x17, 0x37, 0xa3, 0x14, 0x0d, 0xc3, 0x0e, 0xed, 0x28, 0x1a, 0xda, 0xc8, 0xe9, 0x07, 0x41, 0x87, 0xaa, 0xd4, 0x15, 0x02, 0xa3, 0xb9, 0xa3, 0xbf, 0xd4, 0xef, 0x25, 0x2c, 0xda, 0x13, 0xf8, 0x8f, 0x63, 0x32, 0x02, 0xb9, 0xb9, 0x51, 0x7b, 0x93, 0xa6, 0xc0, 0x8a, 0x7b, 0x8e, 0x68, 0x58, 0x73, 0x4e, 0x88, 0x94, 0xb1, 0xa6, 0x4c, 0x6e, 0xc0, 0x8f, 0x1d, 0x04, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6426 = { .name = "ecdsa_secp256k1_sha512_6426", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6426_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6426_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6426_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6427 for ECDSA, tcId is 253 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6427_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6427_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6427_sig[] = { 0x82, 0x8c, 0x12, 0xfd, 0x9f, 0xe3, 0x1f, 0x91, 0xbd, 0x8f, 0x58, 0xaa, 0xc7, 0x2e, 0xe6, 0x48, 0x5e, 0x34, 0xce, 0xdd, 0xf9, 0x19, 0x27, 0xcf, 0x3a, 0x09, 0xb6, 0x33, 0x63, 0xb9, 0xd8, 0xe9, 0x0e, 0x88, 0x96, 0x64, 0xa8, 0xc9, 0x86, 0x19, 0xca, 0xb5, 0x72, 0x68, 0x70, 0x64, 0xed, 0xb4, 0xf0, 0x50, 0x0f, 0x83, 0x24, 0xa5, 0xdf, 0x0b, 0xfb, 0x5a, 0x43, 0x1a, 0x3c, 0xb1, 0xca, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6427 = { .name = "ecdsa_secp256k1_sha512_6427", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6427_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6427_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6427_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6428 for ECDSA, tcId is 254 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6428_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6428_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6428_sig[] = { 0x80, 0x7c, 0xb3, 0x4a, 0xa6, 0xea, 0x48, 0xb1, 0x75, 0xf4, 0x1f, 0x3a, 0xfd, 0xf7, 0x0a, 0x10, 0x9d, 0x2b, 0x74, 0x6a, 0xe4, 0x8e, 0x08, 0x67, 0x7c, 0xda, 0xfc, 0x33, 0xd9, 0x16, 0xb2, 0xda, 0x41, 0x98, 0x0e, 0x6f, 0x7a, 0xd1, 0x99, 0x44, 0xd2, 0x78, 0x85, 0x1f, 0x98, 0xe0, 0xa6, 0x22, 0x0a, 0xe8, 0x88, 0x96, 0x4a, 0xe8, 0x1a, 0x66, 0x7a, 0x63, 0xfe, 0xc2, 0x14, 0x49, 0x33, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6428 = { .name = "ecdsa_secp256k1_sha512_6428", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6428_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6428_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6428_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6429 for ECDSA, tcId is 255 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6429_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6429_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6429_sig[] = { 0xa9, 0x98, 0xf9, 0xf0, 0xda, 0xf0, 0x2f, 0x71, 0x7f, 0x52, 0x92, 0x14, 0x2d, 0xca, 0x44, 0x7c, 0x72, 0x2d, 0x23, 0x94, 0xda, 0xe0, 0xc8, 0x49, 0x10, 0x43, 0x37, 0x54, 0x66, 0x97, 0x16, 0xac, 0x82, 0x6f, 0xc3, 0x72, 0x69, 0x53, 0x9c, 0xf8, 0xa9, 0x89, 0x97, 0xf8, 0xa0, 0x26, 0x8b, 0xff, 0xfe, 0x88, 0x8d, 0x6c, 0x23, 0xbc, 0x68, 0xad, 0x7c, 0x75, 0x9d, 0xb4, 0x7f, 0x65, 0xa9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6429 = { .name = "ecdsa_secp256k1_sha512_6429", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6429_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6429_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6429_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6430 for ECDSA, tcId is 256 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6430_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6430_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6430_sig[] = { 0xf1, 0x51, 0xb6, 0x14, 0xaf, 0xe5, 0xbc, 0x9d, 0x51, 0x1d, 0x0c, 0x34, 0xa7, 0xeb, 0x44, 0x28, 0x39, 0x21, 0x27, 0x2e, 0x91, 0xb3, 0xe5, 0xd0, 0x28, 0x21, 0xcf, 0x7a, 0x43, 0xa9, 0x2b, 0xc5, 0x09, 0x7a, 0xa3, 0x3d, 0xc5, 0x0e, 0xbf, 0x8f, 0xea, 0x03, 0x6c, 0xd7, 0xe2, 0x24, 0xa4, 0xd3, 0x8a, 0xa2, 0x07, 0x73, 0xe5, 0xa7, 0x8d, 0xdb, 0x83, 0xa2, 0xf3, 0xb5, 0x79, 0xb2, 0xef, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6430 = { .name = "ecdsa_secp256k1_sha512_6430", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6430_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6430_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6430_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6431 for ECDSA, tcId is 257 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6431_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6431_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6431_sig[] = { 0x5f, 0x21, 0x58, 0x53, 0x81, 0xf5, 0xf4, 0x2e, 0x9f, 0x76, 0xbe, 0x3f, 0x61, 0xf4, 0xcf, 0xd6, 0x47, 0x6e, 0xcc, 0x6f, 0x06, 0xcd, 0x4f, 0xbc, 0xf1, 0x3e, 0x08, 0xc2, 0x7f, 0x42, 0x61, 0x48, 0x95, 0xd5, 0xb2, 0xde, 0xab, 0xf1, 0x98, 0x91, 0xed, 0xd4, 0x1a, 0xc5, 0x2d, 0x90, 0x72, 0xfa, 0xde, 0xbb, 0x2f, 0x01, 0x45, 0xbe, 0xc9, 0xb9, 0x16, 0xf6, 0x8f, 0xd1, 0xfb, 0xcf, 0xb3, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6431 = { .name = "ecdsa_secp256k1_sha512_6431", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6431_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6431_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6431_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6432 for ECDSA, tcId is 258 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6432_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6432_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6432_sig[] = { 0xbd, 0xc3, 0x61, 0xe6, 0x89, 0x84, 0x48, 0x2d, 0x7b, 0x16, 0x9b, 0xc5, 0xe6, 0xcc, 0xf8, 0x2d, 0x22, 0x63, 0x87, 0x1b, 0xe7, 0x49, 0xd6, 0x7a, 0x44, 0xf5, 0x48, 0xd3, 0x2b, 0xca, 0xf5, 0xf1, 0x37, 0x56, 0x14, 0xfa, 0x41, 0x34, 0xd5, 0x05, 0x5a, 0xc1, 0x17, 0xa6, 0xea, 0x94, 0x8b, 0x74, 0x26, 0x9b, 0x80, 0x63, 0xe3, 0x92, 0x59, 0xd4, 0x94, 0xa7, 0x54, 0x4a, 0xfb, 0x62, 0x91, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6432 = { .name = "ecdsa_secp256k1_sha512_6432", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6432_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6432_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6432_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6433 for ECDSA, tcId is 259 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6433_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6433_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6433_sig[] = { 0x57, 0x73, 0xb0, 0x16, 0xdf, 0xfa, 0xc8, 0x65, 0xab, 0x00, 0x8a, 0xbe, 0x8a, 0x06, 0x35, 0x3d, 0x19, 0x7b, 0x4d, 0xff, 0x32, 0x40, 0x3d, 0x7c, 0xe9, 0x8a, 0xda, 0x4d, 0x20, 0xea, 0x8a, 0x00, 0xd6, 0x0d, 0xe9, 0xc9, 0x8c, 0xf5, 0x0e, 0xff, 0x05, 0x15, 0xb9, 0x62, 0xdf, 0xfd, 0x6a, 0xac, 0x8a, 0x1b, 0x72, 0xbc, 0x9c, 0xfa, 0xf6, 0xbd, 0xa1, 0x2b, 0x99, 0xf6, 0x3e, 0xb9, 0x76, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6433 = { .name = "ecdsa_secp256k1_sha512_6433", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6433_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6433_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6433_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6434 for ECDSA, tcId is 260 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6434_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6434_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6434_sig[] = { 0x57, 0xb7, 0x47, 0xd2, 0x1f, 0xc8, 0x98, 0x47, 0x2a, 0x88, 0x8b, 0x88, 0x69, 0x3a, 0x98, 0x9e, 0xab, 0xaf, 0x14, 0x33, 0x96, 0xe4, 0xcb, 0x2d, 0xe4, 0xaf, 0x19, 0x38, 0x6f, 0xba, 0x38, 0x4f, 0x7c, 0x99, 0xf6, 0x39, 0x04, 0x19, 0x1a, 0x44, 0x64, 0xd0, 0xd2, 0x3c, 0xa5, 0x60, 0xd5, 0x55, 0x88, 0x95, 0xcd, 0xcf, 0xf9, 0x3a, 0xf4, 0xb0, 0x0c, 0x1c, 0x66, 0xca, 0x2d, 0x97, 0x43, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6434 = { .name = "ecdsa_secp256k1_sha512_6434", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6434_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6434_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6434_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6435 for ECDSA, tcId is 261 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6435_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6435_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6435_sig[] = { 0x85, 0x4b, 0xe2, 0xbf, 0x30, 0x2a, 0x2d, 0x6d, 0xb4, 0x37, 0xeb, 0x9e, 0x78, 0x70, 0x36, 0x73, 0xc1, 0xc7, 0x37, 0x13, 0x99, 0xe6, 0x8c, 0xaa, 0x86, 0x25, 0xbb, 0x13, 0xc7, 0xaa, 0x0f, 0xec, 0x8f, 0xd2, 0x26, 0x07, 0xe0, 0x16, 0x9e, 0xb2, 0xe2, 0xe0, 0x0c, 0x4a, 0xf8, 0x98, 0xfd, 0x2a, 0x60, 0x9d, 0xc5, 0x7a, 0x9f, 0xa9, 0x4a, 0x7f, 0x93, 0x37, 0x20, 0x98, 0xfa, 0x67, 0x56, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6435 = { .name = "ecdsa_secp256k1_sha512_6435", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6435_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6435_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6435_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6436 for ECDSA, tcId is 262 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6436_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6436_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6436_sig[] = { 0xeb, 0xb3, 0x35, 0x9d, 0xe3, 0xb1, 0x3a, 0x51, 0x85, 0x45, 0xa8, 0x6b, 0x7f, 0xdd, 0x92, 0xf4, 0x79, 0x32, 0x25, 0xb8, 0xca, 0x45, 0x55, 0xa6, 0xbd, 0x41, 0x82, 0x92, 0x2b, 0x04, 0x52, 0xbe, 0x83, 0xfa, 0xa7, 0xdf, 0xf1, 0xaa, 0x0e, 0xed, 0x89, 0xa7, 0xdd, 0xcd, 0xaa, 0x5d, 0x71, 0x6b, 0xa6, 0x25, 0x3c, 0x5c, 0x21, 0xf7, 0x12, 0x2c, 0x27, 0x55, 0xeb, 0x78, 0xb2, 0x88, 0x84, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6436 = { .name = "ecdsa_secp256k1_sha512_6436", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6436_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6436_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6436_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6437 for ECDSA, tcId is 263 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6437_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6437_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6437_sig[] = { 0x8b, 0xc9, 0x1c, 0xfc, 0xfc, 0x85, 0xba, 0x8a, 0xa1, 0x71, 0xb7, 0x03, 0xa3, 0x30, 0xe3, 0x98, 0xdf, 0x44, 0x60, 0xd2, 0x26, 0x02, 0xe7, 0x3e, 0x32, 0x74, 0x23, 0xeb, 0xf9, 0x8b, 0xf6, 0x32, 0xec, 0x75, 0x69, 0x07, 0x2a, 0xa7, 0x3f, 0xf1, 0x9f, 0x18, 0x3d, 0xaf, 0x43, 0x3a, 0xbf, 0xf1, 0x42, 0xd7, 0xd5, 0xed, 0xce, 0xb2, 0x5b, 0x77, 0x1d, 0x85, 0x3a, 0xcf, 0x0f, 0xbd, 0x68, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6437 = { .name = "ecdsa_secp256k1_sha512_6437", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6437_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6437_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6437_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6438 for ECDSA, tcId is 264 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6438_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6438_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6438_sig[] = { 0x89, 0x5b, 0x07, 0xc0, 0x45, 0x0e, 0xd6, 0xf4, 0x94, 0x16, 0x33, 0xa0, 0x53, 0xc9, 0x78, 0x12, 0x8c, 0x46, 0xe5, 0x22, 0x5c, 0x00, 0xeb, 0x00, 0x9c, 0x3c, 0x6c, 0xee, 0x5e, 0xb2, 0xb8, 0x42, 0xc9, 0x82, 0x81, 0x8b, 0x26, 0x0f, 0x16, 0x50, 0xe0, 0x3e, 0xba, 0x8f, 0x9d, 0xb1, 0xa2, 0xca, 0x79, 0xc3, 0xf8, 0x04, 0xdb, 0xe7, 0xd1, 0x72, 0x23, 0x32, 0x60, 0xe1, 0xa9, 0xc1, 0x06, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6438 = { .name = "ecdsa_secp256k1_sha512_6438", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6438_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6438_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6438_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6439 for ECDSA, tcId is 265 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6439_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6439_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6439_sig[] = { 0xd5, 0xe1, 0x52, 0xec, 0x30, 0x40, 0x90, 0xd7, 0x64, 0xfd, 0x7a, 0xe6, 0x1a, 0xbe, 0xea, 0xdf, 0xf2, 0xfe, 0xe8, 0xdf, 0x3d, 0xcc, 0xd8, 0xfb, 0x44, 0xd2, 0xaf, 0x5a, 0x8d, 0xbe, 0xe0, 0xbc, 0x72, 0x51, 0x8d, 0xc1, 0xec, 0xc9, 0x93, 0xfa, 0xad, 0xff, 0xc3, 0x42, 0x65, 0x94, 0xfe, 0x20, 0x24, 0xc7, 0xc8, 0x4b, 0xa1, 0x01, 0xa9, 0x27, 0x4d, 0x88, 0x00, 0x93, 0x93, 0x10, 0x3f, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6439 = { .name = "ecdsa_secp256k1_sha512_6439", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6439_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6439_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6439_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6440 for ECDSA, tcId is 266 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6440_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6440_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6440_sig[] = { 0x12, 0x98, 0xb1, 0x31, 0xce, 0x97, 0xa5, 0x28, 0xe5, 0xda, 0xe0, 0x5d, 0x92, 0xb2, 0x86, 0xe2, 0x44, 0x7b, 0x17, 0xec, 0x00, 0x22, 0x67, 0xb9, 0xe8, 0xf0, 0x37, 0x84, 0xd4, 0x07, 0x4b, 0xd1, 0xed, 0xf2, 0x23, 0xad, 0x9c, 0x30, 0x8a, 0xef, 0x22, 0xe1, 0xe0, 0xc2, 0x4a, 0x20, 0x26, 0x8f, 0x96, 0x6c, 0xc2, 0xb9, 0xca, 0x4d, 0x94, 0x19, 0x45, 0xbb, 0xca, 0x05, 0x7d, 0xb9, 0x2d, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6440 = { .name = "ecdsa_secp256k1_sha512_6440", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6440_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6440_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6440_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6441 for ECDSA, tcId is 267 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6441_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6441_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6441_sig[] = { 0x1e, 0x79, 0xb3, 0x92, 0x1d, 0x23, 0xd2, 0x90, 0xa5, 0x7d, 0x08, 0x95, 0x8d, 0x3a, 0xd8, 0x30, 0x5e, 0xc4, 0x44, 0xef, 0xe1, 0x28, 0x1c, 0x98, 0xfd, 0xa4, 0x4e, 0x8a, 0xf7, 0x64, 0x8f, 0x49, 0xf4, 0xc7, 0x61, 0x0a, 0xd1, 0xba, 0x93, 0x39, 0x17, 0x8c, 0x50, 0xe7, 0x97, 0x9b, 0x5a, 0xa9, 0xaf, 0x07, 0xd8, 0x14, 0x3e, 0x59, 0xd1, 0x3a, 0x2e, 0x84, 0xf9, 0x8f, 0x37, 0x10, 0x1e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6441 = { .name = "ecdsa_secp256k1_sha512_6441", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6441_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6441_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6441_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6442 for ECDSA, tcId is 268 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6442_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6442_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6442_sig[] = { 0xe4, 0x55, 0xf4, 0x64, 0xe0, 0xed, 0xff, 0x9c, 0x95, 0x9f, 0x84, 0xf0, 0x81, 0x82, 0x88, 0x96, 0x14, 0x9a, 0x33, 0x03, 0x61, 0xff, 0x2d, 0x16, 0xd5, 0xa2, 0x44, 0x8c, 0x9d, 0x68, 0x36, 0x84, 0x35, 0x1c, 0xfa, 0x2f, 0x29, 0xa1, 0x31, 0x8e, 0xbb, 0x3a, 0x46, 0xf0, 0xa3, 0x6d, 0xf8, 0x95, 0x40, 0x43, 0x94, 0x9b, 0x8d, 0x7c, 0xea, 0x94, 0xea, 0xcf, 0x99, 0x10, 0x8b, 0x4d, 0x3f, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6442 = { .name = "ecdsa_secp256k1_sha512_6442", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6442_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6442_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6442_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6443 for ECDSA, tcId is 269 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6443_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6443_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6443_sig[] = { 0xa8, 0x85, 0x77, 0x0c, 0x9f, 0xfe, 0xf3, 0x3f, 0x0c, 0x11, 0x24, 0x50, 0x64, 0x93, 0x6e, 0x3d, 0xd1, 0x65, 0xea, 0x26, 0x33, 0x57, 0x5a, 0x6a, 0x15, 0x53, 0x68, 0x67, 0x03, 0x51, 0xf7, 0x26, 0xde, 0x31, 0xe6, 0xa5, 0x86, 0x26, 0xa4, 0x1f, 0xd0, 0x29, 0xcf, 0x76, 0x6e, 0xf4, 0x4b, 0x82, 0x73, 0xb8, 0x85, 0x58, 0xe2, 0x45, 0x2e, 0x89, 0x39, 0x78, 0xfb, 0xdd, 0xa1, 0xe3, 0x21, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6443 = { .name = "ecdsa_secp256k1_sha512_6443", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6443_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6443_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6443_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6444 for ECDSA, tcId is 270 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6444_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6444_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6444_sig[] = { 0x4b, 0x6b, 0x45, 0x14, 0x78, 0xba, 0x25, 0x3a, 0xe3, 0xc7, 0x5c, 0xa5, 0xb1, 0x8b, 0x70, 0xcc, 0xd3, 0xcc, 0xa4, 0x08, 0xed, 0x24, 0x5c, 0xb2, 0xaf, 0x33, 0x69, 0x54, 0x8d, 0xd2, 0xe5, 0x07, 0xfe, 0x47, 0x9b, 0x63, 0x1a, 0x34, 0x31, 0xb4, 0x27, 0x72, 0x92, 0x5c, 0xbf, 0xe8, 0xe7, 0x89, 0xf9, 0xc5, 0x5f, 0xb2, 0xfd, 0x1d, 0x7a, 0xb5, 0x16, 0x64, 0xcc, 0x2f, 0xa5, 0x71, 0xad, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6444 = { .name = "ecdsa_secp256k1_sha512_6444", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6444_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6444_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6444_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6445 for ECDSA, tcId is 271 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6445_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6445_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6445_sig[] = { 0x7c, 0xa7, 0x03, 0x76, 0x54, 0x7a, 0xd6, 0xd1, 0x8f, 0x8e, 0x53, 0x9f, 0x09, 0xdc, 0x26, 0x9e, 0xba, 0xa0, 0x68, 0x54, 0xc1, 0xad, 0xac, 0xd5, 0x8f, 0xdc, 0x73, 0x5e, 0xd3, 0xcf, 0x0c, 0x16, 0xf4, 0x76, 0x54, 0xf4, 0xc0, 0xac, 0x1b, 0x0e, 0x65, 0xb7, 0x12, 0x30, 0x0e, 0x3b, 0xb4, 0x72, 0x98, 0x3b, 0x11, 0x6d, 0xb5, 0x20, 0x65, 0x20, 0xea, 0xbd, 0x88, 0x6d, 0xc7, 0x06, 0xb2, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6445 = { .name = "ecdsa_secp256k1_sha512_6445", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6445_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6445_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6445_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6446 for ECDSA, tcId is 272 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6446_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6446_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6446_sig[] = { 0x38, 0x85, 0x14, 0xd1, 0x47, 0x66, 0x4f, 0xbb, 0x37, 0x27, 0x1c, 0xb8, 0x69, 0x3e, 0x47, 0x45, 0x9c, 0x06, 0x27, 0xd6, 0xb1, 0xdd, 0x52, 0xdf, 0xf1, 0xd3, 0x94, 0x7d, 0xfc, 0x9c, 0xab, 0xec, 0x99, 0xd3, 0xd4, 0x08, 0x14, 0xaa, 0x17, 0x7b, 0xe9, 0x9e, 0x48, 0x19, 0x69, 0x69, 0x96, 0xbc, 0x75, 0x07, 0x3f, 0x45, 0x18, 0x95, 0x55, 0x87, 0xcd, 0x56, 0xb5, 0xad, 0x8b, 0xbc, 0x2c, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6446 = { .name = "ecdsa_secp256k1_sha512_6446", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6446_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6446_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6446_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6447 for ECDSA, tcId is 273 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6447_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6447_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6447_sig[] = { 0x44, 0xd3, 0xac, 0x50, 0xd9, 0xb6, 0x56, 0x01, 0xd7, 0x9b, 0x47, 0xd6, 0xc5, 0xd9, 0x83, 0x94, 0xce, 0xf1, 0x55, 0x21, 0x1f, 0xf3, 0x7d, 0x4b, 0xac, 0x15, 0xe0, 0xd4, 0x89, 0x08, 0x09, 0xb8, 0x3e, 0xa0, 0x38, 0x29, 0xaf, 0xb0, 0x54, 0x5e, 0x08, 0x83, 0x61, 0xa8, 0xcf, 0x95, 0x2a, 0xec, 0x17, 0xba, 0xb7, 0x63, 0x7f, 0xdd, 0xd6, 0xdb, 0x35, 0xf0, 0x39, 0x80, 0x35, 0x23, 0xc9, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6447 = { .name = "ecdsa_secp256k1_sha512_6447", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6447_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6447_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6447_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6448 for ECDSA, tcId is 274 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6448_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6448_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6448_sig[] = { 0xa3, 0x30, 0x04, 0xa2, 0xcd, 0x50, 0xa4, 0xf7, 0x04, 0x47, 0xfd, 0x38, 0x2e, 0x7f, 0xdc, 0x92, 0x57, 0xc4, 0xd9, 0xbe, 0x7b, 0x16, 0xe6, 0x86, 0xc5, 0x08, 0x2a, 0x23, 0x1e, 0xe7, 0xb0, 0x10, 0xd8, 0x7b, 0x96, 0xed, 0x3b, 0xee, 0xa5, 0x46, 0x52, 0x60, 0x70, 0x17, 0x70, 0x2c, 0xfc, 0xe5, 0xd4, 0xe7, 0xfc, 0xec, 0x1f, 0xdd, 0x28, 0xf4, 0x16, 0x81, 0xab, 0x80, 0xa5, 0xc5, 0xb6, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6448 = { .name = "ecdsa_secp256k1_sha512_6448", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6448_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6448_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6448_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6449 for ECDSA, tcId is 275 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6449_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6449_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6449_sig[] = { 0x66, 0x8a, 0xd1, 0x8c, 0xc2, 0x2c, 0x1d, 0x14, 0x98, 0xcc, 0x8e, 0x5a, 0x11, 0xe2, 0xbf, 0xc4, 0xc1, 0xe1, 0xfc, 0xf0, 0xa7, 0x35, 0x0a, 0x58, 0x06, 0xc5, 0x53, 0x3a, 0xe3, 0x32, 0xf0, 0xb1, 0xf5, 0x8b, 0x49, 0x36, 0x97, 0x71, 0xbd, 0x20, 0xbb, 0x08, 0xb6, 0x3d, 0x4a, 0x92, 0x12, 0xe2, 0xdc, 0x71, 0xda, 0x92, 0x57, 0xed, 0x37, 0x10, 0xd9, 0xea, 0xef, 0x9b, 0xee, 0x46, 0x9e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6449 = { .name = "ecdsa_secp256k1_sha512_6449", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6449_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6449_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6449_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6450 for ECDSA, tcId is 276 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6450_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6450_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6450_sig[] = { 0xf7, 0xcd, 0xcb, 0x02, 0x81, 0xc7, 0x07, 0x86, 0xcc, 0x36, 0x53, 0x82, 0x0d, 0x17, 0x56, 0xa7, 0x83, 0x95, 0xa9, 0xee, 0xea, 0xb2, 0xa4, 0xd1, 0x64, 0xe2, 0x60, 0xf6, 0x4e, 0xbf, 0xd6, 0xa8, 0xd9, 0x66, 0xc7, 0x44, 0x99, 0xca, 0xc9, 0x7c, 0xa8, 0xee, 0x67, 0x40, 0x0d, 0xf0, 0x1b, 0x14, 0x79, 0x3b, 0x6d, 0x7d, 0x07, 0x66, 0x8f, 0xc2, 0x02, 0xa9, 0x91, 0x8f, 0x3c, 0x04, 0x6e, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6450 = { .name = "ecdsa_secp256k1_sha512_6450", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6450_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6450_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6450_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6451 for ECDSA, tcId is 277 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6451_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6451_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6451_sig[] = { 0xde, 0x0e, 0x78, 0x1d, 0x9e, 0x3e, 0x7f, 0x73, 0x02, 0x14, 0x58, 0xfc, 0x12, 0x01, 0xfc, 0x02, 0x1e, 0x5c, 0x54, 0xf1, 0xfe, 0x40, 0xb1, 0xb1, 0x0d, 0xb8, 0xfc, 0xf1, 0x6e, 0xf7, 0xe5, 0x4a, 0x7d, 0x9d, 0xb9, 0x23, 0x21, 0xb5, 0xe5, 0xbb, 0x10, 0x59, 0x90, 0x14, 0x53, 0x90, 0x97, 0x93, 0x90, 0xd3, 0x23, 0x94, 0x11, 0x6f, 0x4e, 0x78, 0xaf, 0x34, 0xb8, 0x51, 0x05, 0xde, 0xe8, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6451 = { .name = "ecdsa_secp256k1_sha512_6451", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6451_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6451_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6451_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6452 for ECDSA, tcId is 278 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6452_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6452_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6452_sig[] = { 0x01, 0x1d, 0xac, 0x8e, 0xa3, 0x7f, 0x7b, 0xc6, 0xa5, 0x30, 0xa4, 0x2d, 0x0e, 0x3b, 0xec, 0x8c, 0x84, 0x56, 0x94, 0xf7, 0x3b, 0xec, 0x69, 0x50, 0x08, 0x1a, 0x6f, 0x99, 0x9c, 0xcd, 0xfb, 0xc6, 0x15, 0x3e, 0x57, 0xee, 0x45, 0xe0, 0xa3, 0x79, 0x83, 0x9f, 0x3b, 0x8f, 0x6f, 0xaf, 0x86, 0xde, 0x7a, 0x62, 0x6b, 0x21, 0x0f, 0x4c, 0x10, 0x07, 0xe4, 0x31, 0xf8, 0x42, 0xe3, 0x9b, 0xf7, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6452 = { .name = "ecdsa_secp256k1_sha512_6452", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6452_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6452_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6452_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6453 for ECDSA, tcId is 279 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6453_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6453_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6453_sig[] = { 0x63, 0xf9, 0xc4, 0x3a, 0x8c, 0xab, 0x49, 0xf5, 0x18, 0x68, 0x5a, 0x12, 0x0b, 0xd7, 0x3a, 0x4e, 0x59, 0x56, 0xf9, 0xf1, 0x67, 0xa7, 0x8d, 0x46, 0x61, 0xfc, 0x79, 0x5d, 0x41, 0xbe, 0x2a, 0xe1, 0x6a, 0xaf, 0x4f, 0x33, 0x84, 0xf1, 0x48, 0x9e, 0xf0, 0x26, 0xcb, 0x29, 0xe9, 0x7e, 0xa1, 0xb5, 0x56, 0x2f, 0xe8, 0xce, 0xb9, 0x97, 0x8d, 0x50, 0x6f, 0xb7, 0x06, 0x4f, 0x42, 0x7b, 0x9f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6453 = { .name = "ecdsa_secp256k1_sha512_6453", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6453_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6453_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6453_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6454 for ECDSA, tcId is 280 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6454_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6454_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6454_sig[] = { 0x7f, 0x0f, 0xd3, 0x73, 0x61, 0x66, 0x19, 0x5b, 0xa8, 0x10, 0xd5, 0xa2, 0xdf, 0xb5, 0xe1, 0xf0, 0x3a, 0xec, 0xe2, 0x17, 0x05, 0x10, 0xc8, 0xaa, 0x4c, 0xc4, 0xa0, 0xc9, 0x74, 0xa7, 0xc5, 0xd6, 0x37, 0x0c, 0x87, 0x72, 0xa7, 0x5d, 0x32, 0xe8, 0xc9, 0xcc, 0x10, 0x30, 0x04, 0xe7, 0x5e, 0x6d, 0x30, 0xa8, 0xac, 0x86, 0x11, 0xb8, 0x4b, 0x89, 0xc4, 0x1c, 0x65, 0x54, 0x21, 0x71, 0xbc, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6454 = { .name = "ecdsa_secp256k1_sha512_6454", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6454_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6454_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6454_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6455 for ECDSA, tcId is 281 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6455_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6455_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6455_sig[] = { 0xf9, 0x75, 0x19, 0x60, 0x86, 0xd1, 0x0f, 0x68, 0x3f, 0x4a, 0xa1, 0xa3, 0xc2, 0xd5, 0xfe, 0x13, 0xfd, 0x0f, 0x52, 0xee, 0x72, 0xaa, 0x3f, 0x78, 0x50, 0x06, 0xaa, 0x02, 0x4c, 0x75, 0x87, 0x35, 0x6a, 0x66, 0x36, 0x41, 0x56, 0xef, 0x21, 0xb5, 0xdf, 0xdc, 0xee, 0x60, 0xcc, 0xe8, 0xfb, 0x09, 0xc1, 0x20, 0x19, 0xbc, 0x57, 0x68, 0x48, 0xff, 0x73, 0xdb, 0x49, 0x85, 0x6a, 0xf7, 0x46, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6455 = { .name = "ecdsa_secp256k1_sha512_6455", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6455_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6455_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6455_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6456 for ECDSA, tcId is 282 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6456_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6456_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6456_sig[] = { 0x35, 0xfe, 0x6d, 0x9b, 0xf9, 0xf7, 0xd4, 0x76, 0x12, 0xc3, 0xf5, 0xbe, 0x6a, 0x4e, 0x9a, 0x0f, 0xb0, 0xc1, 0x48, 0x54, 0xd1, 0xa3, 0x77, 0xad, 0xfb, 0x54, 0x85, 0xd6, 0xe3, 0x83, 0x5c, 0x6f, 0xf9, 0x65, 0x87, 0xfc, 0x46, 0x0e, 0x7d, 0x07, 0x39, 0x6f, 0x9f, 0x2d, 0x06, 0x06, 0x93, 0xda, 0xe6, 0x32, 0x72, 0x12, 0x59, 0xe7, 0x7c, 0x90, 0xb8, 0x31, 0x40, 0x02, 0xa5, 0x23, 0x5d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6456 = { .name = "ecdsa_secp256k1_sha512_6456", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6456_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6456_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6456_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6457 for ECDSA, tcId is 283 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6457_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6457_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6457_sig[] = { 0x21, 0x0c, 0x7c, 0x9b, 0x23, 0x12, 0x93, 0xc8, 0xec, 0x09, 0xb0, 0xf6, 0x10, 0xd3, 0x17, 0x24, 0xa0, 0x45, 0xf6, 0xa3, 0x3f, 0x84, 0x42, 0x3f, 0xdd, 0x54, 0x1a, 0xc1, 0x1f, 0xf7, 0x89, 0x62, 0xe5, 0xa4, 0x0e, 0x6b, 0x80, 0xda, 0x99, 0xcf, 0xc4, 0x9c, 0xe9, 0x69, 0xf1, 0xf5, 0x91, 0x46, 0x83, 0x51, 0x83, 0xe6, 0x10, 0x01, 0xb4, 0x51, 0x3f, 0x92, 0x7b, 0x71, 0xec, 0x3b, 0x2a, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6457 = { .name = "ecdsa_secp256k1_sha512_6457", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6457_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6457_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6457_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6458 for ECDSA, tcId is 284 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6458_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6458_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6458_sig[] = { 0x09, 0xb7, 0xdc, 0xfa, 0xd2, 0xc8, 0x4b, 0x89, 0x82, 0x5c, 0xf3, 0xaa, 0xaf, 0xfe, 0xd5, 0x16, 0x64, 0xfa, 0xcc, 0xc0, 0xd1, 0x71, 0xa4, 0x33, 0x87, 0xa6, 0xff, 0x98, 0xaa, 0x12, 0x8a, 0x04, 0x27, 0x2b, 0x00, 0xe6, 0xe0, 0x91, 0x7a, 0xfe, 0x4f, 0xbe, 0x78, 0x26, 0x04, 0x42, 0x8e, 0x09, 0xfd, 0x91, 0xc3, 0x81, 0x25, 0xd5, 0x1c, 0x3b, 0xa0, 0x6c, 0xe3, 0x19, 0x8e, 0x6b, 0xf7, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6458 = { .name = "ecdsa_secp256k1_sha512_6458", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6458_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6458_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6458_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6459 for ECDSA, tcId is 285 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6459_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6459_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6459_sig[] = { 0x09, 0xc7, 0xc9, 0x96, 0x81, 0xc9, 0x15, 0x9b, 0x22, 0xc0, 0xa4, 0x67, 0x99, 0x95, 0x59, 0xa3, 0x1e, 0x27, 0x90, 0x75, 0xd3, 0x7e, 0xf8, 0x72, 0xa8, 0x8a, 0xe1, 0x35, 0x65, 0xf6, 0x14, 0x9b, 0xb0, 0xff, 0x95, 0x3b, 0xe1, 0x94, 0x0d, 0x2c, 0xf5, 0x48, 0x66, 0x3c, 0x1b, 0x4d, 0xb7, 0xb4, 0x16, 0x52, 0x1d, 0xb2, 0x89, 0x46, 0x77, 0x33, 0xb9, 0xa7, 0x66, 0x29, 0xf8, 0xab, 0x26, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6459 = { .name = "ecdsa_secp256k1_sha512_6459", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6459_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6459_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6459_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6460 for ECDSA, tcId is 286 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6460_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6460_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6460_sig[] = { 0x2b, 0xfa, 0xae, 0x0e, 0xa6, 0xd8, 0xba, 0xab, 0x3e, 0x02, 0xad, 0x7f, 0xa3, 0xdd, 0xa3, 0xce, 0x07, 0x25, 0xd1, 0x15, 0x33, 0xe3, 0x66, 0x64, 0x77, 0xf5, 0x4d, 0x69, 0x7e, 0x2c, 0xa9, 0xbc, 0x92, 0x89, 0xd5, 0xda, 0x44, 0x33, 0x95, 0xbc, 0xa1, 0x8f, 0xe9, 0xd1, 0xa4, 0xaf, 0xbe, 0x04, 0xa3, 0x2b, 0x4e, 0xcd, 0x25, 0x8e, 0xca, 0x6c, 0x17, 0x72, 0xac, 0xff, 0x2d, 0x0b, 0x9a, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6460 = { .name = "ecdsa_secp256k1_sha512_6460", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6460_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6460_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6460_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6461 for ECDSA, tcId is 287 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6461_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6461_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6461_sig[] = { 0x36, 0x88, 0x46, 0xed, 0xc6, 0x77, 0xae, 0x8f, 0xc2, 0x37, 0x06, 0x9c, 0xda, 0x71, 0x9a, 0xf3, 0xd7, 0xf1, 0x7c, 0xc1, 0x36, 0xfe, 0x44, 0x3b, 0x2a, 0xf6, 0x14, 0xcc, 0xfb, 0x48, 0x44, 0xab, 0x5e, 0xbe, 0x6c, 0x1d, 0x3e, 0x88, 0xbc, 0x4e, 0x29, 0x18, 0x41, 0xea, 0x97, 0xc8, 0x36, 0xbd, 0xcf, 0x67, 0xd9, 0xea, 0xbe, 0x92, 0x63, 0x46, 0xc5, 0xf4, 0x21, 0x05, 0xf7, 0xb3, 0x8f, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6461 = { .name = "ecdsa_secp256k1_sha512_6461", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6461_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6461_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6461_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6462 for ECDSA, tcId is 288 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6462_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6462_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6462_sig[] = { 0xf3, 0x36, 0xda, 0x82, 0xbe, 0xa2, 0xa1, 0x11, 0xbd, 0xde, 0xf6, 0xa2, 0x5d, 0xe4, 0xab, 0x87, 0xd7, 0xc9, 0x5a, 0xa8, 0x0d, 0x21, 0x83, 0x8f, 0x3a, 0x4e, 0xfa, 0x3d, 0x93, 0x46, 0x55, 0x5d, 0xda, 0x5a, 0xb6, 0x12, 0xb3, 0x27, 0xaa, 0x0f, 0xe9, 0x5d, 0x1c, 0xaf, 0x85, 0xf3, 0xb6, 0x69, 0x8c, 0x23, 0xa4, 0x72, 0x12, 0x00, 0x6c, 0x56, 0x67, 0xcf, 0xa9, 0x2a, 0xa3, 0xef, 0x4d, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6462 = { .name = "ecdsa_secp256k1_sha512_6462", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6462_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6462_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6462_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6463 for ECDSA, tcId is 289 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6463_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6463_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6463_sig[] = { 0x97, 0xc2, 0xfb, 0x98, 0x65, 0xf9, 0xe7, 0x6f, 0x8d, 0x54, 0xce, 0x95, 0x71, 0x20, 0xb6, 0x8c, 0xcb, 0x04, 0xcd, 0x31, 0x83, 0xda, 0xe7, 0x13, 0x0f, 0x73, 0x13, 0x9c, 0xd5, 0x66, 0x55, 0xcf, 0xfb, 0x63, 0xe3, 0x81, 0x76, 0xff, 0xac, 0x37, 0xd0, 0xec, 0x1e, 0x49, 0xc2, 0xe2, 0xef, 0xef, 0xf0, 0x4d, 0xff, 0xda, 0xd5, 0xa7, 0x5f, 0x35, 0x76, 0xf8, 0x27, 0x6c, 0xcc, 0xee, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6463 = { .name = "ecdsa_secp256k1_sha512_6463", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6463_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6463_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6463_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6464 for ECDSA, tcId is 290 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6464_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6464_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6464_sig[] = { 0x73, 0x93, 0xe0, 0x20, 0x7e, 0x07, 0xbd, 0x73, 0xb6, 0x74, 0xd3, 0x66, 0x7d, 0xfb, 0xc9, 0xc3, 0x00, 0x22, 0x57, 0x4d, 0x63, 0x07, 0x9a, 0x04, 0x0a, 0x23, 0xc0, 0xcd, 0x7e, 0x1b, 0x6a, 0xa6, 0x29, 0x94, 0xb3, 0x46, 0x84, 0x32, 0xfe, 0xcd, 0x0a, 0x32, 0x13, 0x41, 0x71, 0x17, 0x9d, 0x28, 0x09, 0x24, 0x4d, 0x58, 0x6b, 0xd9, 0x71, 0x12, 0x9c, 0xdb, 0xa7, 0x3f, 0xd3, 0xdc, 0x88, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6464 = { .name = "ecdsa_secp256k1_sha512_6464", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6464_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6464_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6464_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6465 for ECDSA, tcId is 291 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6465_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6465_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6465_sig[] = { 0x21, 0xe1, 0x94, 0x3d, 0x7d, 0x39, 0x6a, 0x8c, 0x46, 0x65, 0x8b, 0xed, 0xe4, 0xce, 0x15, 0x5c, 0x9a, 0x06, 0xf9, 0x29, 0xcf, 0x6a, 0xd2, 0x92, 0xd3, 0x2c, 0x91, 0xcf, 0x8f, 0x49, 0x38, 0x87, 0x30, 0x78, 0x3c, 0x68, 0x2c, 0xeb, 0xff, 0xfe, 0xc5, 0x78, 0x7d, 0x76, 0x2b, 0xd7, 0x25, 0xba, 0xfc, 0x9c, 0x40, 0x75, 0xad, 0x8e, 0xb1, 0x58, 0x21, 0x88, 0xf4, 0xc0, 0x5d, 0xd5, 0x16, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6465 = { .name = "ecdsa_secp256k1_sha512_6465", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6465_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6465_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6465_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6466 for ECDSA, tcId is 292 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6466_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6466_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6466_sig[] = { 0x5a, 0x26, 0x9e, 0xb4, 0x4e, 0x91, 0x0b, 0xfe, 0x8a, 0x26, 0x56, 0xde, 0xe4, 0x75, 0x56, 0xcb, 0x90, 0x8a, 0x41, 0x79, 0x17, 0xe2, 0x06, 0x8e, 0x20, 0xd2, 0x01, 0x72, 0x1f, 0x44, 0xf9, 0xb1, 0xe6, 0x9d, 0x46, 0x32, 0x04, 0xdc, 0xe7, 0x7c, 0x24, 0x94, 0x39, 0xf2, 0x2f, 0x77, 0xcc, 0x4c, 0x88, 0x13, 0x40, 0x12, 0xa2, 0x86, 0xb3, 0x6a, 0x95, 0x59, 0xf6, 0x94, 0x20, 0x37, 0x66, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6466 = { .name = "ecdsa_secp256k1_sha512_6466", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6466_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6466_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6466_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6467 for ECDSA, tcId is 293 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6467_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6467_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6467_sig[] = { 0xcb, 0x8c, 0x14, 0x6f, 0xb3, 0xd5, 0x88, 0x46, 0xe5, 0x74, 0x8c, 0x48, 0x74, 0x2a, 0xf2, 0xf1, 0xb7, 0x78, 0x05, 0xf6, 0xcd, 0x1e, 0x4e, 0xb9, 0x8d, 0x8c, 0x66, 0xcb, 0xdf, 0x5d, 0x64, 0x55, 0x17, 0xac, 0x99, 0x2e, 0x10, 0x25, 0x1e, 0x33, 0x44, 0x67, 0xf8, 0xe5, 0x7e, 0x2e, 0x1c, 0x26, 0x9d, 0xb8, 0xb1, 0x94, 0x69, 0x32, 0x1c, 0x74, 0xb4, 0x43, 0x97, 0x2a, 0x80, 0xf3, 0x8b, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6467 = { .name = "ecdsa_secp256k1_sha512_6467", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6467_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6467_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6467_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6468 for ECDSA, tcId is 294 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6468_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6468_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6468_sig[] = { 0x21, 0x2d, 0x84, 0xa1, 0x53, 0xdb, 0x81, 0xce, 0xa5, 0x21, 0x2f, 0xa7, 0xde, 0xe3, 0x1d, 0x59, 0xbd, 0xca, 0x13, 0x07, 0x27, 0x7a, 0x01, 0xb5, 0x93, 0x6c, 0x3a, 0xea, 0xd3, 0x1b, 0xf1, 0xe4, 0x52, 0x03, 0x05, 0xdb, 0xef, 0x2b, 0xda, 0x65, 0x26, 0xfa, 0x2c, 0xfc, 0xa7, 0x89, 0xa1, 0xc9, 0xac, 0xa5, 0xc2, 0xad, 0x4c, 0x00, 0x27, 0xcc, 0x8c, 0xf3, 0x88, 0x18, 0x13, 0xda, 0x8a, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6468 = { .name = "ecdsa_secp256k1_sha512_6468", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6468_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6468_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6468_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6469 for ECDSA, tcId is 295 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6469_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6469_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6469_sig[] = { 0x31, 0x0c, 0x82, 0x89, 0x2f, 0x57, 0x11, 0x34, 0xa3, 0x67, 0x25, 0xf4, 0xa3, 0x1c, 0x5c, 0xba, 0x8b, 0xc4, 0x6e, 0x65, 0x00, 0x2d, 0x73, 0xb1, 0x13, 0x64, 0x08, 0x44, 0x33, 0xd8, 0xda, 0x4a, 0x9c, 0xa5, 0x52, 0xac, 0xa8, 0x4b, 0x96, 0xcc, 0x94, 0x61, 0xe2, 0xb6, 0x5a, 0x64, 0x97, 0x51, 0x18, 0xea, 0x78, 0xb8, 0xb3, 0x55, 0xa0, 0xeb, 0xcc, 0x1a, 0x61, 0xde, 0x37, 0x87, 0x7d, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6469 = { .name = "ecdsa_secp256k1_sha512_6469", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6469_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6469_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6469_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6470 for ECDSA, tcId is 296 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6470_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6470_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6470_sig[] = { 0x48, 0x9d, 0xed, 0xa5, 0x80, 0xc6, 0x25, 0x33, 0x78, 0x3d, 0xf9, 0xfe, 0x62, 0xde, 0x34, 0xc2, 0xe2, 0xca, 0xb9, 0x1d, 0x67, 0x67, 0x09, 0xbe, 0xef, 0xf1, 0x3a, 0xfa, 0xc8, 0xe9, 0x0d, 0xb9, 0x32, 0xa8, 0x5a, 0x9c, 0x56, 0xf3, 0x08, 0xb7, 0xa7, 0x94, 0xdc, 0xce, 0x61, 0x4a, 0x5e, 0xd7, 0xe0, 0x85, 0x70, 0x30, 0xb8, 0x42, 0x9f, 0xe3, 0xb4, 0xe0, 0x7a, 0xd5, 0x33, 0xa5, 0xa0, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6470 = { .name = "ecdsa_secp256k1_sha512_6470", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6470_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6470_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6470_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6471 for ECDSA, tcId is 297 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6471_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6471_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6471_sig[] = { 0xe8, 0x89, 0x7c, 0x1c, 0xad, 0x1f, 0xc8, 0x70, 0xa7, 0xd3, 0x64, 0x67, 0x6a, 0x9d, 0x7f, 0x7c, 0xd3, 0xac, 0x95, 0x1f, 0x3b, 0xc3, 0xa9, 0xef, 0x1f, 0x72, 0x31, 0x46, 0x6c, 0x34, 0x93, 0xd7, 0xdd, 0x21, 0x28, 0xe8, 0x76, 0xd6, 0x2d, 0xa8, 0x2c, 0xfc, 0x5f, 0xc5, 0x08, 0xd3, 0x3b, 0xf6, 0x6b, 0x71, 0xc0, 0xa8, 0x4d, 0x0a, 0x9b, 0x7e, 0x47, 0xdf, 0xc6, 0x20, 0xf5, 0x84, 0x6b, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6471 = { .name = "ecdsa_secp256k1_sha512_6471", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6471_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6471_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6471_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6472 for ECDSA, tcId is 298 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6472_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6472_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6472_sig[] = { 0xb4, 0xd7, 0x71, 0xd1, 0x9f, 0xff, 0xb1, 0xfe, 0x5e, 0xad, 0x25, 0xef, 0x5d, 0xbf, 0x6b, 0x53, 0xd4, 0xd3, 0xda, 0xd2, 0x84, 0x64, 0x11, 0x08, 0xad, 0x84, 0xb2, 0x54, 0x1a, 0xd4, 0x35, 0xa4, 0x84, 0x3e, 0xcd, 0xc2, 0x64, 0x1b, 0x33, 0xa3, 0xae, 0x9a, 0xe1, 0x5d, 0x55, 0x9f, 0x62, 0x29, 0xd7, 0x30, 0x4e, 0xe5, 0xec, 0xab, 0xe0, 0x0d, 0xb7, 0x3b, 0xf2, 0xb6, 0xb5, 0xc6, 0xc2, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6472 = { .name = "ecdsa_secp256k1_sha512_6472", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6472_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6472_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6472_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6473 for ECDSA, tcId is 299 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6473_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6473_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6473_sig[] = { 0x5a, 0xb5, 0xfb, 0x31, 0x36, 0xfa, 0xbd, 0xbd, 0x22, 0x00, 0x96, 0x42, 0xdf, 0x03, 0x68, 0x59, 0x35, 0x81, 0x98, 0x95, 0xd6, 0x75, 0xfc, 0x28, 0x4e, 0x8b, 0x81, 0x12, 0xdb, 0x52, 0x2d, 0x08, 0xd8, 0x7e, 0xc8, 0x81, 0x73, 0xe8, 0x23, 0xed, 0x70, 0x43, 0x8f, 0xb1, 0x08, 0x8b, 0x00, 0x68, 0x93, 0x52, 0x54, 0x2f, 0xab, 0xad, 0x5e, 0x9f, 0xd6, 0xd4, 0xc3, 0xc5, 0x8f, 0x72, 0x2f, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6473 = { .name = "ecdsa_secp256k1_sha512_6473", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6473_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6473_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6473_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6474 for ECDSA, tcId is 300 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6474_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6474_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6474_sig[] = { 0xbe, 0x31, 0x01, 0x20, 0x16, 0x9f, 0x8d, 0x48, 0x8c, 0x6e, 0x5e, 0xc5, 0xb5, 0xe5, 0x88, 0xab, 0x8a, 0x65, 0x04, 0x01, 0x69, 0xd9, 0xef, 0xd3, 0x06, 0x2e, 0x0d, 0x05, 0xfd, 0x7d, 0x58, 0xdf, 0x45, 0x03, 0x3f, 0x29, 0x1f, 0xa2, 0x1a, 0x85, 0xcc, 0x08, 0xf7, 0x8f, 0xec, 0x2d, 0xbd, 0x94, 0x13, 0x55, 0x20, 0xde, 0x26, 0x13, 0x60, 0x72, 0x8b, 0x87, 0x43, 0xb5, 0x58, 0xed, 0x16, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6474 = { .name = "ecdsa_secp256k1_sha512_6474", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6474_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6474_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6474_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6475 for ECDSA, tcId is 301 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6475_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6475_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6475_sig[] = { 0xcd, 0x7f, 0xb3, 0xf2, 0xc2, 0x5d, 0xfa, 0xb6, 0xf9, 0xee, 0x83, 0xfc, 0xbb, 0x08, 0x69, 0x86, 0x80, 0xe9, 0xd1, 0xf3, 0xd4, 0x78, 0x15, 0xbc, 0x77, 0x2d, 0x71, 0x7a, 0x76, 0x4f, 0x99, 0x97, 0x28, 0x7d, 0xd8, 0x5b, 0x97, 0x6d, 0x7f, 0x56, 0xd2, 0x3a, 0xe7, 0x83, 0x73, 0x98, 0xc1, 0x18, 0x93, 0x2a, 0xad, 0xc9, 0x82, 0xf6, 0x75, 0xf9, 0x41, 0x03, 0x03, 0x67, 0x29, 0xa4, 0x7c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6475 = { .name = "ecdsa_secp256k1_sha512_6475", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6475_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6475_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6475_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6476 for ECDSA, tcId is 302 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6476_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6476_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6476_sig[] = { 0x69, 0xf1, 0x8c, 0x06, 0x4a, 0xd2, 0x68, 0x3c, 0xc1, 0xb6, 0xd8, 0xb7, 0x90, 0x20, 0xaa, 0xcd, 0x18, 0x6b, 0x6a, 0xd1, 0x99, 0x9e, 0x6e, 0x55, 0xbf, 0x28, 0xbb, 0x1d, 0xac, 0x33, 0xf3, 0x39, 0xef, 0x66, 0xe6, 0x60, 0x01, 0xfc, 0xc2, 0x19, 0xc9, 0xa9, 0x27, 0xd7, 0xf0, 0xb8, 0x48, 0x63, 0x48, 0x3b, 0xfd, 0x1f, 0xfa, 0x60, 0x86, 0xc0, 0x69, 0x21, 0x90, 0x53, 0x10, 0xc7, 0x93, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6476 = { .name = "ecdsa_secp256k1_sha512_6476", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6476_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6476_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6476_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6477 for ECDSA, tcId is 303 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6477_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6477_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6477_sig[] = { 0x00, 0x54, 0x7c, 0x6b, 0xb4, 0x0f, 0x52, 0xd2, 0x07, 0xff, 0xf7, 0x96, 0xa2, 0x9f, 0x6d, 0xbe, 0x62, 0x05, 0x8e, 0x50, 0xfb, 0x73, 0xbd, 0xe6, 0xb9, 0xc6, 0xca, 0x11, 0x34, 0x6f, 0xd8, 0xe8, 0x2b, 0xc8, 0x2b, 0xd3, 0xef, 0xc9, 0xfe, 0xbe, 0x85, 0x78, 0xac, 0xdb, 0xc3, 0x14, 0x8b, 0xb4, 0x6c, 0x41, 0xa3, 0x9b, 0xe9, 0xae, 0x19, 0x94, 0xad, 0x52, 0xd8, 0xbf, 0x13, 0x19, 0x5d, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6477 = { .name = "ecdsa_secp256k1_sha512_6477", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6477_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6477_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6477_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6478 for ECDSA, tcId is 304 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6478_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6478_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6478_sig[] = { 0xa8, 0x04, 0x96, 0xad, 0xce, 0x42, 0xe7, 0x97, 0x1e, 0xbe, 0x91, 0x30, 0x07, 0x10, 0xcf, 0x4f, 0x53, 0x5f, 0xad, 0x26, 0x66, 0x68, 0xd7, 0x6d, 0x72, 0xc9, 0x5f, 0xff, 0xe4, 0xd4, 0x25, 0x70, 0x0d, 0x43, 0x38, 0xca, 0x32, 0x85, 0x7e, 0x14, 0xe0, 0xea, 0x80, 0x26, 0xbc, 0x19, 0x42, 0x27, 0xb9, 0x10, 0xb9, 0x85, 0x09, 0xc8, 0xc9, 0x30, 0x7b, 0x0d, 0x8d, 0x93, 0xd4, 0x7b, 0x19, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6478 = { .name = "ecdsa_secp256k1_sha512_6478", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6478_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6478_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6478_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6479 for ECDSA, tcId is 305 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6479_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6479_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6479_sig[] = { 0x3d, 0xe4, 0x06, 0x34, 0xd1, 0x1a, 0x7a, 0x6b, 0x67, 0x02, 0x3b, 0x84, 0x65, 0x04, 0x20, 0x67, 0x3c, 0xe6, 0xdb, 0xad, 0xb1, 0x15, 0x97, 0x68, 0xcc, 0x0f, 0xd5, 0x5f, 0x37, 0x84, 0xec, 0x88, 0xa4, 0x55, 0xfb, 0x08, 0xe5, 0x1b, 0x84, 0x93, 0x17, 0x7d, 0x88, 0xfc, 0xa4, 0x3a, 0xef, 0xf3, 0x06, 0xe1, 0x49, 0x0d, 0x7f, 0x6d, 0x24, 0xd6, 0xa9, 0x10, 0x97, 0x0a, 0x3d, 0x86, 0x19, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6479 = { .name = "ecdsa_secp256k1_sha512_6479", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6479_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6479_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6479_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6480 for ECDSA, tcId is 306 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6480_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6480_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6480_sig[] = { 0xc1, 0xf2, 0x29, 0xc0, 0x55, 0x7d, 0x4c, 0x47, 0x96, 0x25, 0x93, 0x78, 0x1b, 0xc9, 0x6c, 0xf7, 0x45, 0xf3, 0xbd, 0x62, 0x9a, 0xd8, 0x54, 0x34, 0xdc, 0x2e, 0xee, 0x45, 0x6d, 0xdb, 0x30, 0x31, 0x86, 0x38, 0xf6, 0xc0, 0x1c, 0x15, 0xd2, 0x3d, 0xb2, 0x4b, 0xb8, 0x51, 0xf6, 0xc6, 0x3c, 0x76, 0x3c, 0x1f, 0x04, 0x09, 0x76, 0xf3, 0xf2, 0xb3, 0x2c, 0x4b, 0xb1, 0xb9, 0x50, 0x6c, 0x1c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6480 = { .name = "ecdsa_secp256k1_sha512_6480", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6480_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6480_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6480_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6481 for ECDSA, tcId is 307 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6481_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6481_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6481_sig[] = { 0x35, 0xdd, 0x49, 0x57, 0xb3, 0x52, 0xe8, 0xb1, 0xbb, 0xc8, 0x0d, 0x1d, 0xeb, 0x21, 0xf9, 0xb0, 0x98, 0x91, 0x88, 0xad, 0xe3, 0xfb, 0xe4, 0x6f, 0x75, 0x10, 0x6d, 0xa1, 0x68, 0x4e, 0x1d, 0x6d, 0x8b, 0x50, 0x8e, 0x2e, 0xd7, 0xa5, 0x1e, 0xfe, 0xa0, 0xdf, 0xaf, 0x37, 0x7f, 0x6b, 0xd5, 0xd4, 0xae, 0x13, 0x3c, 0xc4, 0xc9, 0x36, 0x50, 0x60, 0x0b, 0xe5, 0x45, 0xaf, 0x5d, 0x3a, 0xcd, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6481 = { .name = "ecdsa_secp256k1_sha512_6481", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6481_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6481_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6481_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6482 for ECDSA, tcId is 308 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6482_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6482_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6482_sig[] = { 0x41, 0x0a, 0xa9, 0xc9, 0x43, 0xe6, 0x63, 0x08, 0x2c, 0x6f, 0x76, 0xb8, 0x44, 0x69, 0xc9, 0x84, 0x5e, 0x0d, 0x43, 0x9b, 0xa7, 0xff, 0xc7, 0xca, 0xc0, 0x41, 0x8e, 0xea, 0x0e, 0x20, 0xe6, 0x38, 0xc8, 0x73, 0xab, 0x5c, 0x21, 0xc9, 0xf0, 0xce, 0x0b, 0xf7, 0x84, 0x84, 0x02, 0x87, 0x96, 0xb7, 0x74, 0x51, 0xe1, 0x18, 0x72, 0x50, 0xee, 0x33, 0x53, 0x5d, 0xac, 0xfb, 0x3c, 0xee, 0x5f, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6482 = { .name = "ecdsa_secp256k1_sha512_6482", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6482_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6482_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6482_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6483 for ECDSA, tcId is 309 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6483_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6483_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6483_sig[] = { 0x81, 0x91, 0xdb, 0x06, 0x9b, 0x57, 0x1c, 0xd4, 0x0f, 0x26, 0x76, 0x34, 0x84, 0x33, 0x43, 0x0d, 0x3a, 0x65, 0x15, 0x5c, 0x23, 0x3c, 0x46, 0xa4, 0x2a, 0x42, 0x99, 0xe6, 0xf5, 0xbe, 0x80, 0x6c, 0xf3, 0x67, 0x9e, 0xf8, 0xaf, 0x0b, 0x1b, 0x3a, 0x3a, 0xea, 0xa7, 0xbc, 0xee, 0x51, 0xce, 0x96, 0x04, 0x41, 0x62, 0x2e, 0x9f, 0xf2, 0xdc, 0xb2, 0x2a, 0x8e, 0xc8, 0xde, 0x72, 0x4e, 0x0a, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6483 = { .name = "ecdsa_secp256k1_sha512_6483", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6483_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6483_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6483_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6484 for ECDSA, tcId is 310 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6484_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6484_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6484_sig[] = { 0x88, 0x9c, 0x44, 0xed, 0xbf, 0x38, 0x25, 0xb1, 0x8d, 0x93, 0x3a, 0xec, 0xd5, 0xef, 0x70, 0xd1, 0x2e, 0xbb, 0x00, 0xbf, 0x79, 0x55, 0x04, 0x51, 0x20, 0x5f, 0xd6, 0xf5, 0xba, 0x7f, 0x37, 0x2b, 0xec, 0xb6, 0x71, 0x94, 0xbe, 0xd2, 0xb8, 0x17, 0x60, 0x77, 0x62, 0x2d, 0x58, 0xc9, 0xab, 0x4f, 0xe4, 0xca, 0x34, 0x60, 0x1d, 0xec, 0xc0, 0x9f, 0x93, 0x86, 0xb8, 0xc4, 0x44, 0x5c, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6484 = { .name = "ecdsa_secp256k1_sha512_6484", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6484_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6484_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6484_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6485 for ECDSA, tcId is 311 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6485_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6485_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6485_sig[] = { 0xaa, 0x87, 0x11, 0x3a, 0xff, 0x2e, 0x1a, 0xd6, 0x46, 0x11, 0x91, 0x24, 0x1f, 0x90, 0xa2, 0x3b, 0x91, 0x24, 0x2d, 0x00, 0x66, 0x77, 0x9d, 0xaa, 0xa9, 0x50, 0x6a, 0x41, 0x88, 0xab, 0xc4, 0x27, 0x33, 0xdb, 0xaa, 0xc5, 0xac, 0x44, 0x3f, 0xb4, 0xd9, 0x52, 0x9f, 0x83, 0x24, 0x7f, 0x94, 0xc0, 0xad, 0x13, 0x60, 0xd4, 0xd0, 0xba, 0x8e, 0x16, 0x2a, 0x37, 0x79, 0x46, 0xc6, 0xab, 0x9a, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6485 = { .name = "ecdsa_secp256k1_sha512_6485", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6485_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6485_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6485_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6486 for ECDSA, tcId is 312 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6486_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6486_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6486_sig[] = { 0x0e, 0x13, 0xf6, 0x6a, 0x8f, 0xfd, 0x0d, 0xa1, 0xc4, 0xb6, 0x7f, 0x4d, 0x80, 0x59, 0x41, 0xe9, 0x0f, 0x98, 0xce, 0x38, 0x65, 0x40, 0xc4, 0x80, 0x19, 0xc1, 0xac, 0x10, 0x54, 0x07, 0x56, 0x83, 0x0c, 0xb4, 0x89, 0xe8, 0xd5, 0xac, 0xfc, 0xa5, 0x24, 0x5d, 0x92, 0x92, 0xf5, 0x9c, 0x6e, 0xde, 0x52, 0x42, 0x51, 0x57, 0xaf, 0x77, 0xb8, 0xbe, 0xef, 0x38, 0xd2, 0x3b, 0x6e, 0x6a, 0xde, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6486 = { .name = "ecdsa_secp256k1_sha512_6486", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6486_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6486_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6486_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6487 for ECDSA, tcId is 313 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6487_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6487_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6487_sig[] = { 0x6c, 0x18, 0x13, 0xf6, 0x60, 0xc7, 0x8b, 0xda, 0x95, 0x6c, 0x16, 0x85, 0xbc, 0x92, 0x4f, 0x69, 0xd1, 0xbb, 0xac, 0x5f, 0xad, 0xf3, 0xe4, 0xb0, 0x27, 0xab, 0x04, 0x9b, 0xc8, 0x2a, 0xd1, 0x34, 0x20, 0xde, 0x89, 0xee, 0x00, 0x5d, 0x76, 0x46, 0xf0, 0x70, 0xbd, 0xac, 0x79, 0x4c, 0xcc, 0xe2, 0x4d, 0x66, 0x1b, 0x39, 0x0a, 0x78, 0x85, 0x1d, 0x35, 0xfe, 0x6f, 0xb5, 0xb2, 0x5b, 0x3e, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6487 = { .name = "ecdsa_secp256k1_sha512_6487", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6487_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6487_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6487_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6488 for ECDSA, tcId is 314 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6488_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6488_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6488_sig[] = { 0x48, 0xdc, 0x83, 0x0b, 0x63, 0x26, 0xec, 0x21, 0x81, 0x44, 0x39, 0x1b, 0x65, 0x8d, 0x52, 0x04, 0x5e, 0xf8, 0x6e, 0xf9, 0x18, 0xa8, 0xd4, 0x1c, 0x59, 0x13, 0x19, 0x12, 0xb1, 0xa4, 0x6f, 0xb1, 0xa4, 0x31, 0x91, 0x6c, 0xb7, 0xcf, 0x79, 0x12, 0x9b, 0x90, 0xf0, 0x98, 0x42, 0xb3, 0xf2, 0x16, 0x4a, 0x6c, 0xf6, 0x03, 0xdb, 0x88, 0xf2, 0xd9, 0x99, 0x44, 0x14, 0x2c, 0x00, 0xb4, 0x25, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6488 = { .name = "ecdsa_secp256k1_sha512_6488", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6488_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6488_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6488_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6489 for ECDSA, tcId is 315 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6489_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6489_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6489_sig[] = { 0x4d, 0x45, 0x78, 0x2b, 0xe1, 0x45, 0xa2, 0x7a, 0xe9, 0xec, 0xb6, 0xca, 0xc1, 0xb9, 0xe3, 0x0b, 0xe8, 0x7c, 0x0d, 0x13, 0xb7, 0xd6, 0xad, 0xa9, 0xf7, 0x95, 0xff, 0x05, 0x13, 0x51, 0xac, 0x70, 0xcf, 0x71, 0xd1, 0xeb, 0x15, 0xe8, 0x84, 0x46, 0xdd, 0xb9, 0x00, 0xf2, 0x0d, 0x1e, 0x07, 0x39, 0xda, 0x49, 0x9d, 0xe9, 0x96, 0x3f, 0xe9, 0x9d, 0xed, 0x00, 0xa6, 0x2d, 0xa6, 0x46, 0x2d, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6489 = { .name = "ecdsa_secp256k1_sha512_6489", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6489_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6489_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6489_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6490 for ECDSA, tcId is 316 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6490_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6490_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6490_sig[] = { 0x11, 0xac, 0xd8, 0xb8, 0xd7, 0x36, 0xe7, 0xf0, 0x04, 0x76, 0x49, 0x58, 0x03, 0xfb, 0xd2, 0x0a, 0xd3, 0x51, 0x32, 0x1e, 0x80, 0x0c, 0xfb, 0xdd, 0xbd, 0x6a, 0x7d, 0xd6, 0x10, 0xc5, 0xab, 0x8c, 0x73, 0x40, 0x27, 0xaa, 0xbc, 0xca, 0x94, 0x87, 0x77, 0x3d, 0xc3, 0xab, 0x06, 0x9b, 0x80, 0x2c, 0x00, 0xf5, 0xb6, 0xe5, 0x52, 0x0e, 0x77, 0x61, 0x49, 0x6a, 0xc1, 0xe7, 0xc7, 0x8c, 0xed, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6490 = { .name = "ecdsa_secp256k1_sha512_6490", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6490_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6490_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6490_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6491 for ECDSA, tcId is 317 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6491_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6491_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6491_sig[] = { 0x41, 0xbe, 0x8b, 0x3b, 0xf4, 0x1a, 0x4c, 0x50, 0x7d, 0xe1, 0x2f, 0x09, 0x8f, 0x7d, 0x40, 0x9a, 0x1f, 0x94, 0x1f, 0xef, 0x84, 0xd9, 0x37, 0x94, 0xc4, 0x97, 0xf7, 0x24, 0x2a, 0x7c, 0x38, 0x2c, 0x81, 0xf7, 0xe7, 0x24, 0x31, 0x16, 0xf2, 0x4b, 0x84, 0xb0, 0x32, 0x1e, 0x93, 0xee, 0xd3, 0x5e, 0x2b, 0xdc, 0x32, 0xb0, 0x0a, 0xa8, 0xeb, 0x95, 0x83, 0xbe, 0x3e, 0x9b, 0x7a, 0x09, 0xa4, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6491 = { .name = "ecdsa_secp256k1_sha512_6491", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6491_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6491_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6491_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6492 for ECDSA, tcId is 318 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6492_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6492_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6492_sig[] = { 0xea, 0x03, 0x2f, 0xf4, 0x1b, 0x06, 0x1e, 0x93, 0xe4, 0x56, 0xa5, 0xf0, 0xa9, 0xcd, 0xef, 0x36, 0xc0, 0x73, 0x2d, 0xf4, 0xd5, 0x5a, 0xb4, 0xd3, 0x86, 0x74, 0x84, 0xb0, 0xfc, 0x49, 0xd9, 0xeb, 0xab, 0x29, 0x8d, 0xd8, 0x11, 0x82, 0x6a, 0x6a, 0x93, 0x19, 0xc3, 0x63, 0x2a, 0x96, 0x25, 0x3c, 0x31, 0xc1, 0x4f, 0x75, 0xba, 0xef, 0x53, 0x6a, 0x64, 0x54, 0x20, 0x44, 0x2b, 0xab, 0x4d, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6492 = { .name = "ecdsa_secp256k1_sha512_6492", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6492_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6492_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6492_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6493 for ECDSA, tcId is 319 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6493_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6493_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6493_sig[] = { 0x8b, 0x1f, 0xf1, 0x40, 0xc6, 0x5a, 0xdc, 0xa2, 0x2e, 0x55, 0x96, 0xff, 0xb9, 0x5a, 0x51, 0x21, 0xc3, 0x56, 0xd2, 0xd4, 0x05, 0x5f, 0x14, 0x60, 0x64, 0x45, 0x24, 0x9a, 0x57, 0x25, 0x68, 0x6f, 0xef, 0x8c, 0x16, 0xff, 0x22, 0x81, 0x14, 0xa7, 0xe3, 0x3b, 0x35, 0xad, 0x46, 0x5f, 0x95, 0x75, 0x77, 0xde, 0xa4, 0x05, 0xfb, 0xdf, 0x3f, 0xaf, 0x07, 0x7a, 0x87, 0x87, 0x54, 0xe5, 0x8b, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6493 = { .name = "ecdsa_secp256k1_sha512_6493", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6493_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6493_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6493_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6494 for ECDSA, tcId is 320 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6494_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6494_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp256k1_sha512_6494_sig[] = { 0x3a, 0x40, 0xe8, 0xdc, 0x3e, 0xbe, 0x9e, 0x19, 0xdc, 0xd0, 0xd4, 0xd1, 0xb6, 0x98, 0xab, 0x2a, 0x49, 0x34, 0xa1, 0x46, 0xde, 0xf5, 0x42, 0x7b, 0x3a, 0x6a, 0x8f, 0xbf, 0xbf, 0x34, 0x78, 0x46, 0x54, 0xf6, 0x5e, 0x36, 0x08, 0x8d, 0x2d, 0x45, 0x43, 0x01, 0x1c, 0x94, 0xb1, 0xe5, 0x37, 0x16, 0x97, 0x20, 0x2d, 0x48, 0x8b, 0x34, 0x2d, 0xd6, 0xf7, 0x7a, 0x69, 0x94, 0x41, 0x28, 0x22, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6494 = { .name = "ecdsa_secp256k1_sha512_6494", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6494_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6494_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6494_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6495 for ECDSA, tcId is 321 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6495_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6495_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6495_sig[] = { 0x15, 0xfe, 0xcd, 0x43, 0x91, 0x37, 0xdf, 0x74, 0x82, 0x07, 0x27, 0xf7, 0x12, 0x18, 0x40, 0x5c, 0xbe, 0x52, 0x5d, 0x40, 0x3c, 0x57, 0x44, 0x71, 0xd8, 0xa3, 0x6f, 0xa4, 0xb1, 0xf5, 0x92, 0xab, 0x18, 0xec, 0x29, 0x09, 0x71, 0xed, 0x0a, 0x22, 0x7e, 0xc4, 0x7f, 0x1e, 0x21, 0x42, 0xf3, 0xb8, 0xfe, 0x5b, 0x17, 0x33, 0x63, 0x50, 0xc5, 0x51, 0x5d, 0x4a, 0x87, 0xeb, 0x33, 0x82, 0xfc, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6495 = { .name = "ecdsa_secp256k1_sha512_6495", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6495_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6495_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6495_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6496 for ECDSA, tcId is 322 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6496_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6496_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6496_sig[] = { 0xe6, 0x76, 0xe8, 0x4a, 0x29, 0x9f, 0x48, 0x1a, 0x20, 0x7c, 0xde, 0x6a, 0x42, 0x71, 0xc8, 0x7d, 0x73, 0xe2, 0x9d, 0x1e, 0x49, 0x21, 0x63, 0x93, 0x29, 0x23, 0x23, 0xbc, 0xdc, 0x23, 0x88, 0x44, 0xb8, 0xa9, 0x8c, 0x76, 0x9b, 0xf8, 0x14, 0x29, 0x64, 0x47, 0x58, 0xc8, 0xf8, 0x03, 0xdd, 0xbe, 0xdf, 0x81, 0x63, 0x4e, 0x53, 0x09, 0x9c, 0x43, 0xad, 0x0c, 0xa4, 0x2f, 0x42, 0x07, 0xba, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6496 = { .name = "ecdsa_secp256k1_sha512_6496", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6496_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6496_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6496_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6497 for ECDSA, tcId is 323 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6497_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6497_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6497_sig[] = { 0x51, 0x16, 0xf8, 0xf0, 0xaf, 0x12, 0xb4, 0x7b, 0xd0, 0x25, 0xaa, 0x6e, 0xae, 0xc5, 0x00, 0x7d, 0x4e, 0x3c, 0x5a, 0x3a, 0x72, 0xcb, 0x4c, 0x33, 0x1f, 0x56, 0x95, 0x81, 0xad, 0xb0, 0x1b, 0xfb, 0x69, 0x62, 0x25, 0x1d, 0xa7, 0xba, 0x9a, 0xc9, 0x51, 0xcf, 0xbd, 0x20, 0x51, 0xbc, 0xb7, 0xd9, 0x53, 0x00, 0x5c, 0xb9, 0x59, 0x9a, 0xe0, 0xad, 0x9c, 0x5f, 0x51, 0x39, 0xba, 0xac, 0xb9, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6497 = { .name = "ecdsa_secp256k1_sha512_6497", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6497_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6497_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6497_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6498 for ECDSA, tcId is 324 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6498_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6498_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6498_sig[] = { 0xb8, 0x3f, 0x39, 0x18, 0xb6, 0xc5, 0x50, 0x6d, 0x64, 0x8b, 0xa3, 0xdb, 0xa3, 0x67, 0x62, 0xdb, 0x59, 0x3a, 0xd4, 0xb7, 0x91, 0x45, 0x6b, 0xab, 0xcc, 0x3c, 0x1a, 0x49, 0x66, 0x31, 0x7a, 0xe6, 0x8c, 0xd0, 0x16, 0x60, 0x47, 0xce, 0xc8, 0x99, 0x63, 0xe9, 0xc8, 0xca, 0x43, 0xb5, 0x56, 0xac, 0x17, 0xd0, 0xd6, 0x21, 0x77, 0xa9, 0xbd, 0xa3, 0x5e, 0x61, 0xd0, 0xbb, 0x16, 0xdd, 0x47, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6498 = { .name = "ecdsa_secp256k1_sha512_6498", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6498_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6498_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6498_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6499 for ECDSA, tcId is 325 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6499_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6499_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6499_sig[] = { 0x07, 0x78, 0x58, 0xa8, 0x40, 0x23, 0x0c, 0xa2, 0x13, 0x85, 0xc4, 0xab, 0x4c, 0x36, 0xcb, 0xd3, 0xff, 0xaf, 0x85, 0x65, 0x62, 0x02, 0xfb, 0xa5, 0x8f, 0x1e, 0xa9, 0x95, 0xf5, 0x2e, 0xbc, 0x4c, 0x54, 0x3e, 0x5e, 0x32, 0xa6, 0xd2, 0xf5, 0xc0, 0x86, 0x64, 0xed, 0x72, 0x17, 0x5a, 0xda, 0xa2, 0x5c, 0xdb, 0x5d, 0x6a, 0x75, 0x4b, 0x0c, 0xb1, 0x84, 0xe6, 0x99, 0x4e, 0xde, 0x66, 0xc5, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6499 = { .name = "ecdsa_secp256k1_sha512_6499", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6499_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6499_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6499_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6500 for ECDSA, tcId is 326 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6500_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6500_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6500_sig[] = { 0x53, 0x8a, 0xd8, 0x79, 0x7a, 0x39, 0x74, 0x14, 0xac, 0x82, 0x28, 0x7c, 0x92, 0x16, 0xe4, 0x19, 0x15, 0xc9, 0xe3, 0xda, 0xdb, 0xd4, 0x93, 0xa0, 0xbb, 0xef, 0x5c, 0xb0, 0xdc, 0x79, 0x35, 0xec, 0x2c, 0x94, 0xcf, 0xda, 0xe7, 0xbf, 0x76, 0xf9, 0x0b, 0x3c, 0xc7, 0xd1, 0x9f, 0xee, 0xa4, 0x00, 0x5b, 0x38, 0x7e, 0x31, 0x2a, 0xd4, 0x11, 0x66, 0x54, 0xd6, 0x3c, 0xfb, 0xec, 0xf2, 0xae, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6500 = { .name = "ecdsa_secp256k1_sha512_6500", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6500_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6500_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha512_6500_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6501 for ECDSA, tcId is 327 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6501_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6501_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6501_sig[] = { 0xff, 0x8b, 0xbd, 0x1b, 0x64, 0x41, 0x38, 0x8c, 0xb8, 0xd5, 0x62, 0xc2, 0x8c, 0xe2, 0x9f, 0xbe, 0x51, 0xde, 0x11, 0x50, 0x2f, 0xc8, 0x25, 0x77, 0x3d, 0xed, 0x3f, 0x0d, 0xf2, 0x25, 0xb2, 0x36, 0x8e, 0xcc, 0xca, 0x01, 0x48, 0xb8, 0x2f, 0xdf, 0xb3, 0x70, 0xcd, 0xd0, 0x73, 0xaa, 0x06, 0x34, 0xb3, 0x9c, 0xc7, 0x0d, 0x0d, 0x52, 0x44, 0xa7, 0x31, 0x9e, 0x4b, 0x13, 0x79, 0x1e, 0x2c, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6501 = { .name = "ecdsa_secp256k1_sha512_6501", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6501_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6501_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6501_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6502 for ECDSA, tcId is 328 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6502_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6502_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6502_sig[] = { 0x7c, 0x17, 0x9a, 0x01, 0x0f, 0x51, 0xd6, 0x6e, 0xc8, 0x2f, 0xe5, 0xd5, 0xd4, 0x5b, 0xd8, 0x67, 0xb4, 0xb2, 0x36, 0xa2, 0x7b, 0xe8, 0x82, 0xe6, 0x27, 0x50, 0x6f, 0x72, 0x86, 0xed, 0x7b, 0xaa, 0x5e, 0x38, 0xc0, 0x48, 0xfb, 0x0f, 0xbd, 0x81, 0xc4, 0x0d, 0xf3, 0xdc, 0x16, 0x08, 0x7d, 0x9a, 0xab, 0xeb, 0x51, 0xa1, 0x93, 0x10, 0x74, 0x99, 0xd2, 0x9d, 0x8c, 0xf9, 0x9c, 0x38, 0x8a, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6502 = { .name = "ecdsa_secp256k1_sha512_6502", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6502_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6502_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6502_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6503 for ECDSA, tcId is 329 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6503_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6503_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6503_sig[] = { 0x7e, 0x08, 0x10, 0x88, 0x5b, 0x40, 0x5d, 0x54, 0xce, 0xb2, 0xeb, 0x18, 0xca, 0xe0, 0x8d, 0xe2, 0x06, 0x2f, 0x61, 0xb7, 0xed, 0x94, 0xab, 0x67, 0xeb, 0x15, 0xe8, 0x7b, 0x64, 0xe7, 0x30, 0xef, 0xf5, 0x11, 0xa7, 0x91, 0x9e, 0x6e, 0x4d, 0x70, 0xc8, 0xd6, 0x1b, 0x83, 0x1e, 0x38, 0x3f, 0x58, 0xde, 0xa5, 0x87, 0x8a, 0x6c, 0x8c, 0x5f, 0x04, 0x36, 0xee, 0x05, 0x8d, 0xd8, 0x0a, 0x76, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6503 = { .name = "ecdsa_secp256k1_sha512_6503", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6503_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6503_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6503_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6504 for ECDSA, tcId is 330 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6504_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6504_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6504_sig[] = { 0xc6, 0x65, 0xd5, 0x58, 0xdd, 0x63, 0x8e, 0xf2, 0x7a, 0x28, 0x55, 0x7c, 0x3d, 0xeb, 0x8a, 0x2f, 0x54, 0xab, 0xf9, 0xbd, 0x0b, 0xfa, 0x03, 0x2c, 0x7e, 0xc9, 0xa5, 0x14, 0xda, 0x9a, 0x9e, 0x9e, 0x65, 0xc9, 0xef, 0xc3, 0x55, 0x98, 0x1f, 0x91, 0x77, 0x82, 0x27, 0xee, 0xfa, 0xcf, 0x1b, 0xb2, 0xfe, 0xdb, 0x98, 0x65, 0x7e, 0x6c, 0xd8, 0x67, 0x4f, 0xdd, 0x42, 0xae, 0x00, 0xd6, 0x19, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6504 = { .name = "ecdsa_secp256k1_sha512_6504", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6504_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6504_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6504_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6505 for ECDSA, tcId is 331 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6505_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6505_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6505_sig[] = { 0x4f, 0x06, 0xb8, 0x2a, 0xa0, 0xd0, 0x70, 0xa0, 0x04, 0xa7, 0xfd, 0x11, 0x35, 0xbc, 0x3a, 0x0b, 0xc3, 0x6f, 0xca, 0xee, 0xca, 0x35, 0xe3, 0xed, 0xf0, 0x0f, 0x58, 0x95, 0x39, 0x4d, 0x59, 0xab, 0x65, 0xf7, 0x1d, 0xd7, 0x40, 0x6a, 0x17, 0xbf, 0x19, 0xe4, 0x34, 0xa4, 0x63, 0x54, 0x79, 0x34, 0x02, 0x04, 0xdd, 0x86, 0x2a, 0x9f, 0x2c, 0x46, 0x53, 0xe2, 0xfa, 0x39, 0xb1, 0x78, 0x28, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6505 = { .name = "ecdsa_secp256k1_sha512_6505", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6505_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6505_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6505_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6506 for ECDSA, tcId is 332 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6506_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6506_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp256k1_sha512_6506_sig[] = { 0x53, 0x9c, 0x8f, 0xe5, 0x71, 0x5c, 0x3d, 0xc8, 0x93, 0x81, 0x5e, 0xc2, 0xf0, 0x0e, 0x20, 0x3b, 0x4c, 0xd4, 0xf8, 0xfd, 0x36, 0xcc, 0x57, 0x42, 0xcc, 0x81, 0xce, 0xd2, 0x66, 0xe0, 0x2e, 0x3b, 0xa5, 0x96, 0x4b, 0x2d, 0x51, 0x57, 0x62, 0x4c, 0xf4, 0x2b, 0x67, 0x26, 0xae, 0x23, 0xa7, 0xd5, 0xef, 0x83, 0xa5, 0xd1, 0xf1, 0x46, 0x0b, 0xd5, 0x73, 0xd5, 0xa1, 0x53, 0x16, 0xbe, 0x5b, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6506 = { .name = "ecdsa_secp256k1_sha512_6506", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6506_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6506_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6506_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6507 for ECDSA, tcId is 333 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6507_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6507_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6507_sig[] = { 0x25, 0xf3, 0x37, 0x27, 0x35, 0x91, 0xf2, 0x76, 0x84, 0x9c, 0xd8, 0x55, 0xb0, 0x3d, 0x07, 0xcb, 0xcb, 0x20, 0x59, 0x24, 0xcd, 0xa4, 0xf6, 0x2a, 0x07, 0x95, 0x91, 0x60, 0x2c, 0xc1, 0x0a, 0x8c, 0xd7, 0xb8, 0x2c, 0x8f, 0xb3, 0x8b, 0xbd, 0x50, 0x3d, 0x92, 0xe5, 0xae, 0x93, 0x03, 0xe8, 0x67, 0x3c, 0x6d, 0xd0, 0xe9, 0x38, 0x9f, 0x5a, 0xf5, 0x33, 0x66, 0xbb, 0xab, 0x85, 0x1f, 0x04, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6507 = { .name = "ecdsa_secp256k1_sha512_6507", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6507_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6507_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6507_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6508 for ECDSA, tcId is 334 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6508_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6508_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6508_sig[] = { 0xf3, 0x60, 0x18, 0x94, 0x5d, 0x24, 0xc8, 0x96, 0x78, 0xce, 0x2c, 0x8c, 0xf3, 0xcb, 0x4f, 0x93, 0xc3, 0x8b, 0xda, 0xd3, 0x58, 0x98, 0x91, 0xa5, 0xba, 0xa2, 0x93, 0x74, 0x4d, 0x4d, 0xaa, 0x20, 0x19, 0xef, 0x05, 0x87, 0x8d, 0xfc, 0x63, 0x6a, 0x46, 0x62, 0xfd, 0x5d, 0xd1, 0x27, 0xc9, 0x08, 0xd7, 0x94, 0x89, 0x91, 0xa3, 0x24, 0x84, 0x03, 0x23, 0xc8, 0xae, 0xf4, 0xfc, 0x2f, 0xf8, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6508 = { .name = "ecdsa_secp256k1_sha512_6508", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6508_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6508_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6508_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6509 for ECDSA, tcId is 335 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6509_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6509_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6509_sig[] = { 0x43, 0x20, 0x3c, 0x89, 0xad, 0x43, 0xa2, 0xbb, 0x19, 0x10, 0xe7, 0x0e, 0xa1, 0x04, 0x34, 0x7e, 0x84, 0x76, 0x45, 0x99, 0x53, 0x5d, 0x46, 0xda, 0xbb, 0xe5, 0x47, 0x39, 0x5b, 0x14, 0x63, 0xf4, 0xed, 0x3d, 0x29, 0xc7, 0xc5, 0x06, 0xec, 0xc9, 0x88, 0x61, 0x4b, 0x36, 0x8b, 0x38, 0xdd, 0x5b, 0x4f, 0x1e, 0x33, 0x0c, 0x1b, 0x86, 0x1e, 0xfc, 0xa8, 0x15, 0x2a, 0x70, 0x4b, 0x91, 0x46, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6509 = { .name = "ecdsa_secp256k1_sha512_6509", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6509_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6509_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6509_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6510 for ECDSA, tcId is 336 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6510_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6510_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6510_sig[] = { 0xc2, 0x74, 0x0b, 0xfb, 0x3f, 0x38, 0x7d, 0xf1, 0xb5, 0x64, 0xe3, 0xff, 0x48, 0x83, 0x5b, 0x9e, 0x38, 0x01, 0x04, 0x71, 0x6f, 0x58, 0xc5, 0xa4, 0x3e, 0x97, 0xbb, 0x2c, 0x2d, 0x84, 0xd0, 0x4a, 0xe7, 0x60, 0xee, 0x5d, 0x09, 0x50, 0xb5, 0x12, 0xf6, 0xc2, 0x71, 0xcd, 0x1a, 0x87, 0x61, 0x9b, 0x83, 0x0d, 0xf8, 0x3f, 0xd4, 0x0d, 0x44, 0xb9, 0x28, 0x35, 0x39, 0xb3, 0xaa, 0x38, 0x00, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6510 = { .name = "ecdsa_secp256k1_sha512_6510", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6510_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6510_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6510_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6511 for ECDSA, tcId is 337 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6511_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6511_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6511_sig[] = { 0xec, 0x07, 0xec, 0x53, 0x78, 0xed, 0x13, 0x1b, 0x2d, 0xea, 0x7a, 0xe9, 0x77, 0x6b, 0xa5, 0x36, 0xda, 0xef, 0x2a, 0xfc, 0x38, 0xe2, 0x55, 0x6a, 0x70, 0xb8, 0x9b, 0x97, 0x52, 0xeb, 0x1f, 0x71, 0xfe, 0xa2, 0x5b, 0x9e, 0x50, 0xb1, 0xcf, 0xa2, 0xcf, 0x47, 0x5d, 0xbb, 0x22, 0x45, 0x76, 0x1d, 0x5f, 0x45, 0x85, 0xfb, 0xbc, 0x43, 0x8d, 0x97, 0x22, 0x6c, 0x64, 0xff, 0x74, 0xbf, 0xf1, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6511 = { .name = "ecdsa_secp256k1_sha512_6511", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6511_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6511_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6511_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6512 for ECDSA, tcId is 338 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6512_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6512_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp256k1_sha512_6512_sig[] = { 0xe4, 0x38, 0x30, 0x3c, 0xcb, 0xbe, 0xe3, 0x59, 0xc8, 0x65, 0x99, 0x7e, 0x46, 0x11, 0x2b, 0x0a, 0xfd, 0x7a, 0x64, 0x7c, 0x59, 0x34, 0x29, 0x29, 0x13, 0x98, 0xf0, 0xc4, 0x32, 0xdf, 0xb9, 0xf0, 0x84, 0x87, 0xe0, 0x7a, 0x53, 0xda, 0x18, 0x79, 0x3f, 0x8b, 0x52, 0x70, 0x69, 0xe6, 0x20, 0xe4, 0x45, 0x87, 0xe4, 0x20, 0x24, 0x5d, 0x6e, 0xc8, 0x27, 0xbb, 0x35, 0xcc, 0xcf, 0xae, 0x7a, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6512 = { .name = "ecdsa_secp256k1_sha512_6512", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6512_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6512_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6512_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6513 for ECDSA, tcId is 339 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6513_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6513_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6513_sig[] = { 0xfc, 0x09, 0xfa, 0x30, 0xe8, 0x9a, 0x2b, 0xa3, 0xd0, 0xc4, 0xd9, 0xd9, 0x35, 0x0e, 0x71, 0x71, 0x68, 0xc2, 0x12, 0x53, 0x37, 0x13, 0x59, 0xc0, 0xf3, 0xcb, 0x8c, 0x88, 0x07, 0xbd, 0xab, 0x56, 0x5d, 0x6c, 0x47, 0x66, 0xbc, 0xa4, 0x62, 0xcf, 0x95, 0xb4, 0xae, 0xb8, 0xf5, 0x88, 0x6b, 0x52, 0xfc, 0x32, 0x86, 0x64, 0x2f, 0xfe, 0xe8, 0xd0, 0xbd, 0x7f, 0xfd, 0x4a, 0xf7, 0xba, 0xdb, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6513 = { .name = "ecdsa_secp256k1_sha512_6513", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6513_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6513_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6513_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6514 for ECDSA, tcId is 340 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6514_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6514_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6514_sig[] = { 0x4f, 0x18, 0x4f, 0xba, 0x2b, 0xe3, 0x90, 0x78, 0x38, 0x52, 0x90, 0xac, 0xb4, 0xcc, 0x4b, 0x3f, 0x39, 0xb0, 0x99, 0xc3, 0x30, 0x0c, 0x76, 0x2d, 0xf2, 0x05, 0xc6, 0x05, 0xc6, 0xb3, 0x0e, 0x1a, 0x50, 0x64, 0x81, 0xd2, 0x01, 0x8b, 0x3a, 0x4c, 0x0a, 0xd5, 0x58, 0xf0, 0x29, 0xc8, 0x2e, 0x06, 0x25, 0xc8, 0x33, 0xcb, 0xbe, 0xe9, 0x78, 0xbe, 0xe7, 0xb5, 0x89, 0x74, 0x2e, 0xe1, 0xe3, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6514 = { .name = "ecdsa_secp256k1_sha512_6514", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6514_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6514_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6514_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6515 for ECDSA, tcId is 341 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6515_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6515_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6515_sig[] = { 0xe9, 0xa2, 0x75, 0x33, 0xa5, 0x0e, 0xaf, 0xb0, 0x95, 0x61, 0xdc, 0x33, 0x5d, 0x67, 0xf8, 0xe5, 0xe5, 0x3b, 0x4f, 0xc1, 0x6b, 0x30, 0x13, 0xf0, 0x62, 0xe5, 0x81, 0xad, 0x02, 0x7e, 0x11, 0x0e, 0x7e, 0x41, 0x50, 0xde, 0xf3, 0x68, 0xf9, 0x69, 0xac, 0xe0, 0xfc, 0x28, 0xca, 0xc7, 0xa3, 0x31, 0x2d, 0x6b, 0x9a, 0xf5, 0x38, 0xc4, 0x12, 0x04, 0x8b, 0xe1, 0x76, 0x3e, 0xa8, 0x1f, 0x3f, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6515 = { .name = "ecdsa_secp256k1_sha512_6515", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6515_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6515_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6515_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6516 for ECDSA, tcId is 342 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6516_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6516_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6516_sig[] = { 0xfa, 0xc2, 0x4d, 0x54, 0x38, 0x72, 0x02, 0xbf, 0xf0, 0x1a, 0x91, 0xf5, 0x50, 0x4f, 0x77, 0x8c, 0x18, 0x3a, 0x0a, 0x79, 0x30, 0xc0, 0x2a, 0xf0, 0xb6, 0x18, 0xee, 0x64, 0xd1, 0xb1, 0xe4, 0x38, 0xf3, 0xa5, 0x3c, 0xb6, 0xf9, 0x6f, 0xee, 0xa4, 0x5c, 0xca, 0xdc, 0xdf, 0x9a, 0xc7, 0x8c, 0xd7, 0x35, 0xec, 0x33, 0x42, 0x16, 0x3e, 0x57, 0x3d, 0x21, 0x25, 0xca, 0xa0, 0xd8, 0xd5, 0x07, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6516 = { .name = "ecdsa_secp256k1_sha512_6516", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6516_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6516_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6516_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6517 for ECDSA, tcId is 343 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6517_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6517_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6517_sig[] = { 0x35, 0x44, 0x59, 0x0a, 0x0f, 0x9f, 0xa5, 0xd4, 0x3a, 0xd4, 0xe0, 0xa0, 0x03, 0xa8, 0xd7, 0xdb, 0x58, 0xb8, 0x57, 0x09, 0x51, 0x65, 0x7a, 0xab, 0x3b, 0xab, 0x73, 0x27, 0x27, 0xd1, 0xbb, 0xc2, 0xf2, 0x57, 0xbe, 0xac, 0x10, 0xd5, 0x3e, 0x80, 0x12, 0xec, 0xd2, 0x36, 0x79, 0x3d, 0x28, 0x00, 0x26, 0xc5, 0xcf, 0x1c, 0x04, 0xaa, 0xe5, 0x22, 0x01, 0x9b, 0x87, 0xe0, 0x03, 0x50, 0x0e, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6517 = { .name = "ecdsa_secp256k1_sha512_6517", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6517_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6517_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6517_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6518 for ECDSA, tcId is 344 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6518_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6518_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6518_sig[] = { 0xbc, 0x07, 0x26, 0x38, 0x64, 0x97, 0xc8, 0x5d, 0xa8, 0xf4, 0x05, 0x5a, 0x72, 0x7b, 0x19, 0x38, 0xe9, 0x67, 0x86, 0xb0, 0x09, 0xe6, 0x84, 0x7a, 0x08, 0x0a, 0x8a, 0xae, 0x57, 0x1b, 0x07, 0x53, 0x54, 0xb1, 0xb1, 0x5f, 0xc7, 0x88, 0x6f, 0x09, 0xb1, 0x21, 0xaf, 0x65, 0x20, 0xd0, 0xf4, 0x33, 0x6d, 0x25, 0x9d, 0x73, 0x47, 0x13, 0xfc, 0x3e, 0x97, 0x3c, 0xf2, 0x83, 0x68, 0x83, 0x0e, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6518 = { .name = "ecdsa_secp256k1_sha512_6518", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6518_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6518_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6518_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6519 for ECDSA, tcId is 345 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6519_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6519_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6519_sig[] = { 0x21, 0x6f, 0x80, 0x51, 0xf9, 0xce, 0xed, 0x5b, 0x5c, 0xc1, 0x08, 0x5f, 0x83, 0xef, 0xd8, 0x71, 0x12, 0x8c, 0xb4, 0x4b, 0x26, 0x0a, 0xc1, 0x2c, 0x48, 0x6c, 0x0e, 0xa0, 0x6c, 0x71, 0xaa, 0x55, 0xdf, 0x90, 0x34, 0x6c, 0xb0, 0x28, 0x24, 0x5a, 0x72, 0xac, 0x7d, 0x80, 0x94, 0x49, 0x7f, 0x0e, 0xfb, 0x83, 0xa7, 0xc4, 0x4b, 0xa3, 0xb2, 0x58, 0x87, 0x31, 0x27, 0x35, 0x5e, 0x3b, 0x2e, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6519 = { .name = "ecdsa_secp256k1_sha512_6519", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6519_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6519_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6519_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6520 for ECDSA, tcId is 346 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6520_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6520_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha512_6520_sig[] = { 0xcb, 0x76, 0x65, 0x2e, 0x19, 0xd6, 0xe7, 0xa7, 0x2c, 0x9c, 0xac, 0x35, 0xc2, 0xae, 0x46, 0x17, 0x8d, 0x8c, 0x0f, 0xf5, 0x9b, 0x06, 0xb0, 0xcb, 0x97, 0xc3, 0x1a, 0xad, 0x39, 0xec, 0x1b, 0x09, 0x5c, 0x47, 0xb8, 0x89, 0xa2, 0x9c, 0x78, 0x15, 0x40, 0xb8, 0x78, 0x3c, 0xa2, 0x4e, 0x2a, 0xcc, 0x34, 0x01, 0x78, 0x68, 0x5d, 0x73, 0x31, 0x01, 0x7e, 0x29, 0xb4, 0xef, 0xe9, 0x2d, 0x9f, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6520 = { .name = "ecdsa_secp256k1_sha512_6520", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6520_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6520_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6520_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6521 for ECDSA, tcId is 347 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6521_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6521_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6521_sig[] = { 0xed, 0xfc, 0x03, 0x19, 0x0c, 0x83, 0x95, 0x28, 0xba, 0x2a, 0xa0, 0xba, 0x3a, 0x23, 0xb5, 0x96, 0xfc, 0xfe, 0xc1, 0xbf, 0x2b, 0xbf, 0x44, 0x67, 0xf1, 0xfd, 0x88, 0x39, 0x8c, 0xab, 0x8a, 0xd2, 0x45, 0xb4, 0x1f, 0xa4, 0x9e, 0x0f, 0xa7, 0xf0, 0x60, 0xac, 0x1b, 0xa3, 0x8a, 0xb4, 0xd2, 0xd5, 0xab, 0x5b, 0x9f, 0xa5, 0x4c, 0xa5, 0x92, 0x85, 0xae, 0xe0, 0x9c, 0xee, 0xdd, 0x98, 0x65, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6521 = { .name = "ecdsa_secp256k1_sha512_6521", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6521_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6521_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6521_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6522 for ECDSA, tcId is 348 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6522_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6522_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp256k1_sha512_6522_sig[] = { 0xe7, 0x63, 0x1f, 0x03, 0xd9, 0xdf, 0xdd, 0xc6, 0x4c, 0xfd, 0x2a, 0x97, 0x15, 0x23, 0xde, 0xf6, 0x8c, 0xb9, 0xf8, 0xa6, 0x4e, 0x07, 0xeb, 0x22, 0x35, 0xc7, 0x25, 0x0a, 0xdc, 0x36, 0x48, 0x0b, 0xa0, 0x04, 0xcb, 0xac, 0x3e, 0x04, 0x05, 0x6c, 0x7e, 0x65, 0xfd, 0xb4, 0x8b, 0xe0, 0x51, 0xe9, 0xa5, 0x2a, 0xb4, 0x27, 0xc8, 0x26, 0xc8, 0x4e, 0x2c, 0xb2, 0x22, 0x92, 0x52, 0x98, 0x36, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6522 = { .name = "ecdsa_secp256k1_sha512_6522", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6522_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6522_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6522_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6523 for ECDSA, tcId is 349 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6523_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6523_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6523_sig[] = { 0x15, 0xe3, 0x6a, 0x42, 0x51, 0x51, 0x18, 0x02, 0x1f, 0x6f, 0x53, 0x72, 0xec, 0xbf, 0xf9, 0x07, 0x55, 0xd8, 0xae, 0x77, 0xf9, 0xdd, 0x68, 0x39, 0x72, 0xd2, 0xf2, 0x6a, 0xa6, 0x71, 0x64, 0x51, 0x8d, 0x1c, 0xd9, 0x88, 0xba, 0x0a, 0x1b, 0xd9, 0x19, 0xd2, 0xf9, 0xb5, 0xc8, 0xa3, 0x51, 0x7e, 0xb5, 0x9e, 0xf7, 0x76, 0xca, 0xec, 0xdf, 0x2b, 0x5a, 0xc2, 0xf7, 0xa7, 0x21, 0x85, 0x83, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6523 = { .name = "ecdsa_secp256k1_sha512_6523", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6523_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6523_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6523_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6524 for ECDSA, tcId is 350 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6524_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6524_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6524_sig[] = { 0x6d, 0xaa, 0xcb, 0xc1, 0x12, 0x5c, 0xb3, 0x69, 0x0e, 0x43, 0xe1, 0x6b, 0x41, 0x40, 0x77, 0xc0, 0xdd, 0x27, 0x4b, 0x96, 0xed, 0x61, 0x89, 0x2b, 0xad, 0x5a, 0x51, 0x92, 0x74, 0xf0, 0x1b, 0x23, 0xd0, 0x44, 0x96, 0x58, 0x11, 0xb4, 0x05, 0x0c, 0x7a, 0x85, 0x02, 0x1e, 0x88, 0x27, 0x63, 0x5c, 0xf9, 0xf4, 0x62, 0x60, 0xfc, 0x33, 0xbb, 0x7c, 0xb5, 0x6b, 0x1b, 0x37, 0x18, 0x0c, 0x42, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6524 = { .name = "ecdsa_secp256k1_sha512_6524", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6524_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6524_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6524_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6525 for ECDSA, tcId is 351 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6525_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6525_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6525_sig[] = { 0x37, 0xe5, 0x07, 0x75, 0xee, 0x06, 0x02, 0x4d, 0x59, 0x6e, 0xd4, 0x98, 0x24, 0xb1, 0xe6, 0xa4, 0x9e, 0xfa, 0xe2, 0x5c, 0x7d, 0xce, 0x81, 0x81, 0xde, 0x33, 0xf9, 0x3c, 0xe3, 0x4a, 0xc3, 0xce, 0x61, 0x6a, 0x3e, 0x9d, 0x1f, 0xed, 0x08, 0x61, 0x38, 0xf6, 0xfe, 0xef, 0x65, 0x32, 0x64, 0x7c, 0x02, 0xbd, 0x32, 0x4b, 0xa4, 0xa8, 0xbf, 0xea, 0x20, 0x64, 0x0d, 0x22, 0xf5, 0x49, 0x44, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6525 = { .name = "ecdsa_secp256k1_sha512_6525", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6525_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6525_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha512_6525_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6526 for ECDSA, tcId is 352 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6526_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6526_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256k1_sha512_6526_sig[] = { 0xd5, 0xb6, 0x4c, 0xdf, 0x82, 0xe3, 0x54, 0xba, 0x6a, 0x01, 0x77, 0x2f, 0x7d, 0x38, 0xe8, 0xd4, 0x6a, 0x72, 0x9b, 0x80, 0x8a, 0xae, 0xd7, 0x36, 0x16, 0xed, 0x41, 0xa9, 0xaf, 0xc8, 0x3d, 0xb7, 0xb5, 0xc4, 0x56, 0xc9, 0x12, 0x54, 0xe5, 0x70, 0x13, 0x22, 0x8c, 0x97, 0x24, 0xbb, 0x7f, 0x97, 0xaa, 0xf1, 0x8e, 0x1b, 0xfd, 0x4c, 0x99, 0xd3, 0xca, 0x9e, 0xaa, 0x82, 0x14, 0x38, 0x2a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6526 = { .name = "ecdsa_secp256k1_sha512_6526", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6526_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6526_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha512_6526_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6527 for ECDSA, tcId is 353 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6527_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6527_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha512_6527_sig[] = { 0x91, 0x57, 0x79, 0xb9, 0x0a, 0xe6, 0xf6, 0xc1, 0xfb, 0x82, 0xc1, 0x98, 0xc9, 0xf0, 0x71, 0x9c, 0xe2, 0xea, 0x37, 0xbe, 0x0f, 0x26, 0x1e, 0x36, 0x58, 0x5e, 0xc8, 0x9a, 0xda, 0xed, 0xd2, 0xb6, 0x7d, 0x05, 0xe7, 0x79, 0x4a, 0xc5, 0x75, 0x78, 0x79, 0x08, 0x08, 0xc0, 0xac, 0x52, 0xca, 0x3a, 0x51, 0xd1, 0x39, 0x9f, 0x1a, 0x4c, 0x71, 0x73, 0xa7, 0xed, 0x19, 0x86, 0x77, 0x32, 0xb3, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6527 = { .name = "ecdsa_secp256k1_sha512_6527", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6527_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6527_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha512_6527_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6528 for ECDSA, tcId is 354 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6528_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha512_6528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6528_sig[] = { 0x09, 0x7a, 0x04, 0xee, 0x03, 0xa1, 0x3c, 0x51, 0x1d, 0x93, 0x9e, 0x8b, 0xbe, 0x14, 0x71, 0xc5, 0x7a, 0x71, 0x02, 0x0e, 0x16, 0x8e, 0x26, 0x89, 0xc6, 0x9a, 0x56, 0x25, 0x68, 0x6e, 0x24, 0xad, 0x40, 0xd2, 0x4d, 0x52, 0xf3, 0x70, 0x1a, 0xc8, 0xda, 0x95, 0x95, 0x60, 0xc3, 0x6e, 0xd0, 0x75, 0x0a, 0x1c, 0xf0, 0x31, 0xb7, 0x28, 0xa9, 0x13, 0x4e, 0x2b, 0x71, 0xed, 0x3d, 0xde, 0xf8, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6528 = { .name = "ecdsa_secp256k1_sha512_6528", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6528_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6528_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6528_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 354 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6529 for ECDSA, tcId is 355 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6529_pubkey[] = { 0x12, 0xc9, 0x0a, 0x5d, 0xeb, 0xd8, 0x8d, 0x42, 0x68, 0x6b, 0x84, 0x22, 0x7d, 0xbc, 0x75, 0x53, 0x51, 0xb7, 0x8e, 0x7c, 0x6c, 0xb8, 0x6c, 0x0b, 0x22, 0x53, 0x6f, 0x39, 0x46, 0x03, 0x64, 0x6e, 0xd0, 0x3d, 0x96, 0x58, 0x51, 0xbc, 0x41, 0xbb, 0x08, 0x94, 0x99, 0xc5, 0x19, 0x87, 0xb8, 0x99, 0xa8, 0x35, 0x3d, 0x99, 0x7e, 0x04, 0x0f, 0xdd, 0x35, 0x29, 0x0a, 0x26, 0x27, 0xf0, 0xa3, 0xab, }; static const unsigned char ecdsa_secp256k1_sha512_6529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6529_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6529 = { .name = "ecdsa_secp256k1_sha512_6529", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6529_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6529_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6529_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 355 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6530 for ECDSA, tcId is 356 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6530_pubkey[] = { 0x12, 0xc9, 0x0a, 0x5d, 0xeb, 0xd8, 0x8d, 0x42, 0x68, 0x6b, 0x84, 0x22, 0x7d, 0xbc, 0x75, 0x53, 0x51, 0xb7, 0x8e, 0x7c, 0x6c, 0xb8, 0x6c, 0x0b, 0x22, 0x53, 0x6f, 0x39, 0x46, 0x03, 0x64, 0x6e, 0xd0, 0x3d, 0x96, 0x58, 0x51, 0xbc, 0x41, 0xbb, 0x08, 0x94, 0x99, 0xc5, 0x19, 0x87, 0xb8, 0x99, 0xa8, 0x35, 0x3d, 0x99, 0x7e, 0x04, 0x0f, 0xdd, 0x35, 0x29, 0x0a, 0x26, 0x27, 0xf0, 0xa3, 0xab, }; static const unsigned char ecdsa_secp256k1_sha512_6530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6530_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6530 = { .name = "ecdsa_secp256k1_sha512_6530", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6530_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6530_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6530_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 356 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6531 for ECDSA, tcId is 357 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6531_pubkey[] = { 0x91, 0x3e, 0xd0, 0x43, 0x02, 0x2e, 0xe5, 0x90, 0xf5, 0x9e, 0x44, 0xf5, 0x19, 0xe5, 0xcf, 0xd9, 0xd6, 0xf1, 0xb8, 0x4a, 0x50, 0xfb, 0x41, 0x7e, 0x9a, 0xd0, 0x66, 0x83, 0xc6, 0xaf, 0xa1, 0x94, 0xb6, 0x8f, 0xb8, 0x0d, 0x6e, 0xf2, 0x61, 0xb5, 0xa6, 0x3b, 0x57, 0xf8, 0x71, 0xd2, 0xea, 0x72, 0x24, 0x31, 0x9f, 0x5f, 0xa3, 0xed, 0x3d, 0xd7, 0x7f, 0x10, 0x12, 0xdb, 0xa1, 0x9d, 0x03, 0x95, }; static const unsigned char ecdsa_secp256k1_sha512_6531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6531_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6531 = { .name = "ecdsa_secp256k1_sha512_6531", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6531_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6531_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6531_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 357 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6532 for ECDSA, tcId is 358 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6532_pubkey[] = { 0x64, 0x4c, 0xc5, 0x4e, 0x84, 0x46, 0x72, 0x13, 0xfa, 0xfe, 0x2a, 0x44, 0x51, 0xdb, 0xa5, 0x50, 0xf3, 0xea, 0x76, 0xea, 0x99, 0x70, 0xbd, 0x62, 0x51, 0xfc, 0x77, 0x83, 0xa4, 0x20, 0xd8, 0xb5, 0x1c, 0xd9, 0x43, 0x91, 0x55, 0xec, 0x45, 0xd5, 0x63, 0x46, 0x77, 0xc2, 0x81, 0x15, 0x4b, 0xbd, 0xf9, 0x9f, 0xe4, 0x40, 0x51, 0xdc, 0xec, 0x32, 0x20, 0x53, 0xca, 0x69, 0xea, 0x88, 0x29, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha512_6532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6532_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6532 = { .name = "ecdsa_secp256k1_sha512_6532", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6532_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6532_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6532_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 358 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6533 for ECDSA, tcId is 359 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6533_pubkey[] = { 0x0a, 0x11, 0xd4, 0x21, 0x54, 0xbd, 0x2d, 0xe1, 0x0c, 0xa9, 0x23, 0x21, 0xfb, 0x6b, 0x3e, 0x63, 0x8e, 0xe8, 0xb5, 0xa7, 0xfb, 0x4f, 0xb5, 0xf5, 0x01, 0xb4, 0x45, 0x15, 0xcf, 0x60, 0xe8, 0xc9, 0x06, 0xcc, 0xaa, 0xb8, 0x74, 0x8c, 0xd3, 0x8e, 0xce, 0x73, 0xdd, 0xc9, 0x75, 0xbc, 0x30, 0x7e, 0x7d, 0xe1, 0x72, 0x35, 0x7e, 0x14, 0xcd, 0x96, 0xa9, 0x4b, 0xb3, 0x46, 0x1d, 0x32, 0xd5, 0x0e, }; static const unsigned char ecdsa_secp256k1_sha512_6533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6533_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6533 = { .name = "ecdsa_secp256k1_sha512_6533", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6533_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6533_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6533_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 359 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6534 for ECDSA, tcId is 360 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6534_pubkey[] = { 0x9f, 0xa2, 0xc3, 0x2b, 0xb3, 0x49, 0x84, 0x6a, 0xcb, 0x5a, 0xf1, 0x4e, 0x1c, 0x67, 0xac, 0xfd, 0xd8, 0x96, 0x3e, 0xd2, 0x51, 0xc4, 0xb5, 0x78, 0x3c, 0xad, 0x4b, 0xcd, 0xd0, 0xfd, 0x50, 0x5d, 0x6f, 0x72, 0x49, 0x37, 0x21, 0x7d, 0x1e, 0x54, 0x83, 0x92, 0x04, 0x05, 0xcf, 0x1b, 0x20, 0x20, 0x07, 0x97, 0x52, 0x1c, 0x46, 0x4a, 0x23, 0x55, 0xfd, 0xde, 0x53, 0x06, 0xf2, 0xa9, 0xe4, 0x48, }; static const unsigned char ecdsa_secp256k1_sha512_6534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6534_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6534 = { .name = "ecdsa_secp256k1_sha512_6534", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6534_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6534_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6534_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6535 for ECDSA, tcId is 361 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6535_pubkey[] = { 0x60, 0xea, 0xce, 0x95, 0x00, 0x12, 0x01, 0xcf, 0x4c, 0x83, 0xb5, 0x80, 0xfb, 0x69, 0x8b, 0xb6, 0xab, 0xf4, 0x46, 0xe5, 0xc5, 0x6f, 0xf9, 0x45, 0xeb, 0x57, 0x69, 0xb1, 0xa4, 0x77, 0xb5, 0x50, 0x69, 0xf5, 0x35, 0x4a, 0x77, 0xfe, 0x2d, 0x60, 0x15, 0x28, 0xf1, 0x26, 0xc9, 0xa6, 0x85, 0x8d, 0xee, 0xdd, 0xb9, 0xe5, 0xec, 0x40, 0x83, 0x56, 0xd0, 0x5e, 0xd5, 0xc8, 0x0d, 0x62, 0xb8, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6535_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6535_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6535 = { .name = "ecdsa_secp256k1_sha512_6535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6535_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6535_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6535_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 361 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6536 for ECDSA, tcId is 362 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6536_pubkey[] = { 0xf1, 0xa5, 0x7d, 0x93, 0x46, 0x84, 0x23, 0x10, 0x97, 0x5e, 0xd3, 0x56, 0x67, 0x2a, 0x48, 0xa0, 0x6a, 0x70, 0xb5, 0xef, 0xbc, 0x0c, 0x23, 0x28, 0x7c, 0x9b, 0x99, 0x52, 0xec, 0x95, 0x5b, 0x33, 0x00, 0x91, 0xae, 0xe1, 0x22, 0x4e, 0xcd, 0x69, 0x79, 0x18, 0x56, 0xc5, 0x21, 0xb1, 0x2d, 0xf1, 0x72, 0xb4, 0x5a, 0x5c, 0xe2, 0x47, 0xe6, 0xdc, 0xac, 0xa7, 0x34, 0x96, 0x84, 0x27, 0x8f, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6536_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6536_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6536 = { .name = "ecdsa_secp256k1_sha512_6536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6536_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6536_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6536_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6537 for ECDSA, tcId is 363 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6537_pubkey[] = { 0xf1, 0xa5, 0x7d, 0x93, 0x46, 0x84, 0x23, 0x10, 0x97, 0x5e, 0xd3, 0x56, 0x67, 0x2a, 0x48, 0xa0, 0x6a, 0x70, 0xb5, 0xef, 0xbc, 0x0c, 0x23, 0x28, 0x7c, 0x9b, 0x99, 0x52, 0xec, 0x95, 0x5b, 0x33, 0x00, 0x91, 0xae, 0xe1, 0x22, 0x4e, 0xcd, 0x69, 0x79, 0x18, 0x56, 0xc5, 0x21, 0xb1, 0x2d, 0xf1, 0x72, 0xb4, 0x5a, 0x5c, 0xe2, 0x47, 0xe6, 0xdc, 0xac, 0xa7, 0x34, 0x96, 0x84, 0x27, 0x8f, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6537_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6537_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6537 = { .name = "ecdsa_secp256k1_sha512_6537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6537_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6537_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6537_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 363 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6538 for ECDSA, tcId is 364 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6538_pubkey[] = { 0x96, 0x8a, 0x49, 0x3f, 0x27, 0x9c, 0x0f, 0x8e, 0xa9, 0xf2, 0x44, 0x6e, 0x36, 0x1e, 0xe5, 0xb9, 0x75, 0x70, 0x39, 0xd5, 0x7a, 0x80, 0x03, 0xe6, 0xfd, 0x73, 0x1d, 0x4d, 0xc6, 0xa2, 0xd2, 0xca, 0x67, 0x84, 0xc5, 0x48, 0x4f, 0xe7, 0x97, 0xc8, 0x30, 0xaa, 0x49, 0xa7, 0x2c, 0xf8, 0x53, 0x75, 0x52, 0x32, 0x28, 0x39, 0x3b, 0x73, 0x0b, 0x20, 0xb0, 0x4a, 0x19, 0x20, 0x32, 0xaf, 0x4d, 0x29, }; static const unsigned char ecdsa_secp256k1_sha512_6538_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6538_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6538 = { .name = "ecdsa_secp256k1_sha512_6538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6538_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6538_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6538_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 364 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6539 for ECDSA, tcId is 365 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6539_pubkey[] = { 0xb3, 0xc7, 0xfb, 0xdf, 0x1d, 0x74, 0x72, 0xf7, 0xbd, 0x57, 0x87, 0x57, 0x76, 0x2c, 0x8e, 0xbc, 0x92, 0x2f, 0xf0, 0x63, 0xb0, 0xae, 0x9c, 0x3a, 0xa9, 0xcd, 0x81, 0x60, 0x0a, 0xbe, 0xa7, 0x6c, 0x03, 0x8e, 0xeb, 0x38, 0x52, 0xb8, 0x36, 0xc0, 0x64, 0x9f, 0xd8, 0x2f, 0xe5, 0xd1, 0xd0, 0x2c, 0x3d, 0x0d, 0xbb, 0x30, 0xfb, 0xcd, 0x7f, 0xe4, 0x18, 0x66, 0xeb, 0xc3, 0xbd, 0x92, 0x7c, 0x69, }; static const unsigned char ecdsa_secp256k1_sha512_6539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6539_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6539 = { .name = "ecdsa_secp256k1_sha512_6539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6539_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6539_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6539_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 365 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6540 for ECDSA, tcId is 366 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6540_pubkey[] = { 0x75, 0x9f, 0xdd, 0x1a, 0x64, 0xc0, 0x00, 0x18, 0x8b, 0x87, 0xeb, 0x0d, 0xdd, 0x29, 0x1a, 0x50, 0x35, 0x8f, 0xca, 0x2b, 0x0a, 0x5b, 0x92, 0xf0, 0x27, 0x57, 0x38, 0x45, 0xdc, 0x40, 0xb2, 0x7a, 0x12, 0xec, 0x1b, 0x28, 0x92, 0xef, 0x46, 0x70, 0x0f, 0x13, 0xcf, 0xf8, 0xeb, 0x88, 0xf4, 0x00, 0x76, 0xcc, 0x81, 0x14, 0x78, 0xb0, 0x08, 0xf5, 0xaa, 0xbe, 0xe4, 0xa7, 0x4b, 0x45, 0x46, 0xf1, }; static const unsigned char ecdsa_secp256k1_sha512_6540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6540_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6540 = { .name = "ecdsa_secp256k1_sha512_6540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6540_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6540_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6540_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 366 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6541 for ECDSA, tcId is 367 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6541_pubkey[] = { 0x48, 0x82, 0x82, 0x5a, 0x89, 0x2d, 0x30, 0x26, 0x72, 0x64, 0xe3, 0x00, 0xe8, 0x68, 0xab, 0x5d, 0x4b, 0x0f, 0xfc, 0x9e, 0xf3, 0xc2, 0xcb, 0x6e, 0x90, 0xd6, 0x1d, 0x23, 0x8d, 0xae, 0xd8, 0x56, 0xe4, 0xc8, 0x24, 0x8a, 0x18, 0x9e, 0xb3, 0x6d, 0x83, 0x74, 0x0f, 0x59, 0x28, 0xcb, 0x80, 0x2f, 0xb9, 0xc5, 0x0b, 0x5a, 0x18, 0xc9, 0x19, 0x63, 0x44, 0xa0, 0xc2, 0xcb, 0x74, 0x41, 0x64, 0x23, }; static const unsigned char ecdsa_secp256k1_sha512_6541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6541_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6541 = { .name = "ecdsa_secp256k1_sha512_6541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6541_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6541_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6541_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 367 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6542 for ECDSA, tcId is 368 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6542_pubkey[] = { 0xc4, 0xd1, 0xb1, 0xfd, 0xf2, 0x74, 0xcf, 0x83, 0xf3, 0x39, 0x5a, 0x70, 0xa3, 0x6c, 0x94, 0xf7, 0xc5, 0x1f, 0x1a, 0x31, 0xe9, 0x95, 0x14, 0xb4, 0xef, 0x10, 0xba, 0x13, 0x04, 0x75, 0x6c, 0xaf, 0x4e, 0xaf, 0x43, 0x5b, 0x20, 0xdd, 0x76, 0xd6, 0xef, 0x44, 0x78, 0x69, 0x50, 0x3d, 0xa9, 0xb2, 0x8f, 0x0e, 0xa0, 0x8e, 0xdf, 0x28, 0x74, 0x24, 0xd4, 0x4a, 0xa0, 0x4b, 0x25, 0x4c, 0x17, 0x36, }; static const unsigned char ecdsa_secp256k1_sha512_6542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6542_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6542 = { .name = "ecdsa_secp256k1_sha512_6542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6542_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6542_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6542_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 368 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6543 for ECDSA, tcId is 369 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6543_pubkey[] = { 0x33, 0x76, 0xdf, 0x73, 0x76, 0xd5, 0xe6, 0x51, 0xd4, 0x5b, 0x8e, 0xc2, 0xe5, 0xff, 0x9d, 0x89, 0x1c, 0x6f, 0xdd, 0x6d, 0xbb, 0xb5, 0x2b, 0x04, 0x6e, 0x6b, 0x5a, 0xc4, 0xc9, 0xfa, 0xce, 0xdf, 0x76, 0xcf, 0x27, 0xf9, 0xfc, 0xb6, 0x54, 0x03, 0xb1, 0xf5, 0x85, 0xa2, 0xda, 0xfe, 0x26, 0xb4, 0x3e, 0xbd, 0x62, 0x2b, 0xac, 0xcd, 0xe6, 0x99, 0xd8, 0x1c, 0x9b, 0xe9, 0x8d, 0xf9, 0xf4, 0xdf, }; static const unsigned char ecdsa_secp256k1_sha512_6543_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6543_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6543 = { .name = "ecdsa_secp256k1_sha512_6543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6543_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6543_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6543_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 369 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6544 for ECDSA, tcId is 370 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6544_pubkey[] = { 0x50, 0x77, 0xfd, 0xd2, 0x02, 0xfd, 0xb4, 0x19, 0x4b, 0x05, 0x49, 0x1b, 0x6c, 0x05, 0x3f, 0xff, 0x87, 0x60, 0x69, 0x75, 0x31, 0xfc, 0x52, 0x27, 0x87, 0x9e, 0x9c, 0xbe, 0xc3, 0x30, 0x95, 0x85, 0xd0, 0xb5, 0xcf, 0xfb, 0x3e, 0x0f, 0xdf, 0xb1, 0xc0, 0x6e, 0x6d, 0x11, 0xa1, 0x18, 0x27, 0x52, 0x73, 0x0c, 0xfe, 0x43, 0x9f, 0x7a, 0x4f, 0x8a, 0x49, 0xb9, 0xc2, 0x92, 0x4f, 0x49, 0xec, 0x14, }; static const unsigned char ecdsa_secp256k1_sha512_6544_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6544_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6544 = { .name = "ecdsa_secp256k1_sha512_6544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6544_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6544_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6544_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 370 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6545 for ECDSA, tcId is 371 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6545_pubkey[] = { 0x1b, 0x1f, 0x77, 0x3b, 0x47, 0x2d, 0xac, 0x5e, 0x1a, 0xdf, 0x94, 0xe6, 0x9d, 0x86, 0x5b, 0x40, 0x4d, 0x2c, 0xc9, 0x2c, 0xff, 0x7b, 0xb6, 0x6c, 0xf2, 0x19, 0x79, 0x78, 0xf6, 0xc4, 0x5d, 0x08, 0xa9, 0x72, 0x57, 0x91, 0xc5, 0xf3, 0x37, 0x87, 0x97, 0x7a, 0x9d, 0xdf, 0xa6, 0x92, 0x96, 0xbe, 0x99, 0x8a, 0x96, 0x8c, 0x51, 0xec, 0x7f, 0x1c, 0x54, 0x47, 0x79, 0x3b, 0xc5, 0x62, 0x86, 0xb3, }; static const unsigned char ecdsa_secp256k1_sha512_6545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6545_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6545 = { .name = "ecdsa_secp256k1_sha512_6545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6545_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6545_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6545_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 371 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6546 for ECDSA, tcId is 372 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6546_pubkey[] = { 0x1b, 0x1f, 0x77, 0x3b, 0x47, 0x2d, 0xac, 0x5e, 0x1a, 0xdf, 0x94, 0xe6, 0x9d, 0x86, 0x5b, 0x40, 0x4d, 0x2c, 0xc9, 0x2c, 0xff, 0x7b, 0xb6, 0x6c, 0xf2, 0x19, 0x79, 0x78, 0xf6, 0xc4, 0x5d, 0x08, 0xa9, 0x72, 0x57, 0x91, 0xc5, 0xf3, 0x37, 0x87, 0x97, 0x7a, 0x9d, 0xdf, 0xa6, 0x92, 0x96, 0xbe, 0x99, 0x8a, 0x96, 0x8c, 0x51, 0xec, 0x7f, 0x1c, 0x54, 0x47, 0x79, 0x3b, 0xc5, 0x62, 0x86, 0xb3, }; static const unsigned char ecdsa_secp256k1_sha512_6546_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6546_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6546 = { .name = "ecdsa_secp256k1_sha512_6546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6546_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6546_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6546_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 372 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6547 for ECDSA, tcId is 373 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6547_pubkey[] = { 0x2f, 0x20, 0xbc, 0x22, 0x32, 0xb4, 0xba, 0x9d, 0x75, 0xfe, 0xa6, 0xa9, 0x2b, 0xc8, 0x27, 0xd9, 0x1c, 0x5a, 0x8f, 0x5c, 0x88, 0x7f, 0x4e, 0x30, 0x4d, 0x76, 0x65, 0x6b, 0xa1, 0x59, 0x99, 0xea, 0x5f, 0x83, 0x24, 0x2e, 0xfb, 0xd5, 0x7d, 0xd1, 0x6d, 0xbd, 0x3d, 0xe0, 0x91, 0x5b, 0xdb, 0x2d, 0xde, 0xc2, 0x01, 0xd2, 0xf7, 0x49, 0xb1, 0x3f, 0xc2, 0x2c, 0x22, 0x3a, 0x26, 0x44, 0xdc, 0xdc, }; static const unsigned char ecdsa_secp256k1_sha512_6547_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6547_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6547 = { .name = "ecdsa_secp256k1_sha512_6547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6547_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6547_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6547_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 373 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6548 for ECDSA, tcId is 374 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6548_pubkey[] = { 0x9e, 0x00, 0x9c, 0xd0, 0xa1, 0xa7, 0xd0, 0xc5, 0x17, 0x65, 0x16, 0x9c, 0x46, 0x8e, 0x62, 0xe5, 0x6f, 0xc4, 0xf3, 0xff, 0x02, 0xe8, 0x66, 0x6c, 0x55, 0x48, 0x34, 0x19, 0xa2, 0x56, 0x00, 0x32, 0xcd, 0x36, 0xd7, 0x13, 0xac, 0xd5, 0x04, 0x59, 0x8f, 0xf3, 0xb4, 0xf5, 0x80, 0x46, 0xa4, 0x69, 0x0f, 0x55, 0x0b, 0xd6, 0x0e, 0xf4, 0xc8, 0x23, 0xc5, 0xc5, 0x81, 0xc6, 0xb8, 0x99, 0x31, 0x5e, }; static const unsigned char ecdsa_secp256k1_sha512_6548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6548_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6548 = { .name = "ecdsa_secp256k1_sha512_6548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6548_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6548_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6548_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 374 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6549 for ECDSA, tcId is 375 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6549_pubkey[] = { 0xaf, 0x58, 0xa6, 0xec, 0xc8, 0x25, 0x4b, 0x9b, 0x83, 0x1a, 0xe0, 0x44, 0x1c, 0x13, 0x99, 0x08, 0x02, 0xc3, 0xd6, 0x8c, 0x30, 0x1d, 0x43, 0x63, 0x4c, 0x71, 0xf1, 0x97, 0x4c, 0x09, 0xe7, 0x04, 0xd9, 0x20, 0x61, 0x2d, 0x82, 0xf3, 0x2f, 0xca, 0x43, 0x6c, 0x5c, 0x50, 0x97, 0x50, 0x52, 0x71, 0x49, 0x48, 0x75, 0x40, 0x27, 0x31, 0xd0, 0x3d, 0xba, 0x94, 0x2b, 0x35, 0x53, 0x06, 0xc7, 0x83, }; static const unsigned char ecdsa_secp256k1_sha512_6549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6549_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6549 = { .name = "ecdsa_secp256k1_sha512_6549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6549_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6549_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6549_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 375 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6550 for ECDSA, tcId is 376 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6550_pubkey[] = { 0x4a, 0x72, 0x17, 0xca, 0xbc, 0x95, 0xb4, 0x96, 0xf3, 0xf4, 0xe1, 0x2d, 0x54, 0xe9, 0xde, 0xf7, 0x65, 0x1b, 0x86, 0x6b, 0xe6, 0x9d, 0x36, 0x95, 0xcd, 0x77, 0xad, 0x2e, 0x3a, 0x3f, 0x13, 0xd1, 0xd0, 0xfa, 0x71, 0xbf, 0x21, 0xd2, 0xc0, 0x0b, 0x1f, 0xf4, 0xcc, 0x76, 0xb5, 0x3a, 0x9c, 0x5c, 0x2a, 0x8a, 0x8b, 0x6b, 0x4c, 0x2e, 0xc8, 0x8b, 0x99, 0xee, 0x53, 0x7a, 0xc6, 0x26, 0x2b, 0x3d, }; static const unsigned char ecdsa_secp256k1_sha512_6550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6550_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6550 = { .name = "ecdsa_secp256k1_sha512_6550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6550_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6550_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6550_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 376 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6551 for ECDSA, tcId is 377 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6551_pubkey[] = { 0x00, 0xa4, 0x2e, 0x27, 0x7c, 0xe6, 0x57, 0xfb, 0x3d, 0xd0, 0x7e, 0x13, 0x5a, 0x3c, 0xb9, 0xb0, 0xa7, 0x5a, 0x30, 0xbd, 0x8b, 0x64, 0x91, 0x16, 0x06, 0xee, 0x68, 0x37, 0x1e, 0x56, 0x12, 0x44, 0x67, 0xcf, 0x22, 0xe2, 0x6a, 0x70, 0x09, 0x04, 0x5b, 0x73, 0xff, 0x19, 0xcd, 0x79, 0x85, 0x1c, 0xce, 0xaa, 0xd9, 0xae, 0x72, 0xef, 0x2d, 0x04, 0x3d, 0x75, 0x36, 0x52, 0x45, 0xbe, 0xfa, 0x06, }; static const unsigned char ecdsa_secp256k1_sha512_6551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6551_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6551 = { .name = "ecdsa_secp256k1_sha512_6551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6551_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6551_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6551_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 377 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6552 for ECDSA, tcId is 378 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6552_pubkey[] = { 0x85, 0x20, 0xb9, 0x50, 0x2f, 0x9a, 0x5e, 0xd7, 0x53, 0xf0, 0x9a, 0x52, 0x82, 0xca, 0xd7, 0x21, 0xf5, 0xeb, 0xfb, 0x3d, 0xb4, 0x14, 0x2d, 0x66, 0x7c, 0x62, 0x79, 0x86, 0x9e, 0x76, 0xbc, 0xf1, 0x67, 0x8e, 0x9b, 0xbd, 0x04, 0xa5, 0x14, 0x60, 0xaf, 0xc4, 0x0a, 0x3e, 0x0c, 0xb7, 0xb0, 0xf8, 0xb8, 0xad, 0xd8, 0x9b, 0x29, 0x79, 0x75, 0x8a, 0x5a, 0x1f, 0xfe, 0xb4, 0x58, 0x4e, 0xe4, 0x9e, }; static const unsigned char ecdsa_secp256k1_sha512_6552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6552_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6552 = { .name = "ecdsa_secp256k1_sha512_6552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6552_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6552_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6552_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 378 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6553 for ECDSA, tcId is 379 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6553_pubkey[] = { 0xb5, 0xde, 0xca, 0x0f, 0xe0, 0x29, 0x69, 0x05, 0xaa, 0xc2, 0x7e, 0x36, 0x04, 0xa9, 0x5a, 0x0a, 0x2e, 0xcb, 0xee, 0x9f, 0xc4, 0x53, 0xd2, 0xe1, 0x16, 0x46, 0x32, 0x96, 0x44, 0x54, 0xd0, 0xc9, 0x4f, 0x9e, 0x4e, 0x85, 0xa1, 0x43, 0xee, 0x67, 0x7d, 0x40, 0x91, 0x9c, 0x71, 0x01, 0x4e, 0x8c, 0xab, 0xf4, 0xd9, 0xdb, 0x74, 0x42, 0xfe, 0x4b, 0x96, 0x29, 0x8f, 0x99, 0xf9, 0x0c, 0xa6, 0x7f, }; static const unsigned char ecdsa_secp256k1_sha512_6553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6553_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6553 = { .name = "ecdsa_secp256k1_sha512_6553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6553_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6553_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6553_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 379 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6554 for ECDSA, tcId is 380 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6554_pubkey[] = { 0x5d, 0xcb, 0x27, 0x67, 0xdc, 0x85, 0x1e, 0x20, 0x91, 0x1e, 0xd7, 0xbe, 0x39, 0xdd, 0x87, 0xba, 0x81, 0xc7, 0xa6, 0xd1, 0x02, 0x55, 0xdf, 0xb8, 0x25, 0xf2, 0x41, 0x48, 0x6f, 0x98, 0xae, 0x10, 0xf8, 0xa9, 0xef, 0x73, 0x6b, 0x3e, 0x11, 0xd7, 0xd5, 0x4a, 0x0e, 0x08, 0x69, 0x02, 0xfb, 0x47, 0x72, 0x46, 0xec, 0x8c, 0x57, 0xde, 0x65, 0xd3, 0x36, 0x57, 0x0b, 0x65, 0xf6, 0x5e, 0x0d, 0x83, }; static const unsigned char ecdsa_secp256k1_sha512_6554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6554_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x6b, 0xfd, 0x55, 0xa9, 0x4e, 0x53, 0x0b, 0xd9, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0x56, 0xd4, 0x20, 0xa6, 0x4d, 0x87, 0x46, 0x94, 0xc7, 0x01, 0xe7, 0x14, 0x51, 0x1d, 0x16, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6554 = { .name = "ecdsa_secp256k1_sha512_6554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6554_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6554_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6554_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 380 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6555 for ECDSA, tcId is 381 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6555_pubkey[] = { 0xc8, 0xe1, 0x44, 0xc8, 0x53, 0xa7, 0xe1, 0xa6, 0xf5, 0xbb, 0xab, 0xe7, 0xef, 0x91, 0xef, 0x5b, 0x15, 0x21, 0x13, 0x21, 0x0d, 0x44, 0xfd, 0x58, 0xd3, 0xcb, 0x61, 0x85, 0x18, 0x4e, 0x16, 0x8a, 0xac, 0x40, 0xfb, 0x36, 0x18, 0x88, 0x21, 0x93, 0xfc, 0x6d, 0x11, 0x37, 0x60, 0xe4, 0x76, 0x46, 0x5d, 0xf4, 0x90, 0x67, 0x48, 0x0a, 0x0a, 0x7c, 0xff, 0xe6, 0x86, 0x51, 0x5b, 0x33, 0x91, 0xa8, }; static const unsigned char ecdsa_secp256k1_sha512_6555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6555_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb4, 0x94, 0xbd, 0x67, 0xc2, 0x09, 0xa5, 0xad, 0xb1, 0xc9, 0xa0, 0x93, 0x37, 0xe2, 0x62, 0x9b, 0x03, 0xf8, 0xa9, 0x24, 0xbe, 0x53, 0xc5, 0x42, 0x47, 0x8e, 0x58, 0x64, 0xed, 0x26, 0x22, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6555 = { .name = "ecdsa_secp256k1_sha512_6555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6555_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6555_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6555_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6556 for ECDSA, tcId is 382 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6556_pubkey[] = { 0x7f, 0xfe, 0x18, 0x5a, 0x23, 0xeb, 0x5b, 0x73, 0x67, 0x04, 0x38, 0x7e, 0x63, 0x57, 0x62, 0x8a, 0x65, 0x98, 0x49, 0x85, 0x77, 0x3b, 0x44, 0x73, 0xcf, 0x9e, 0xf5, 0x60, 0xb3, 0xfa, 0x50, 0x51, 0x47, 0x40, 0xcb, 0x12, 0x17, 0xf1, 0xad, 0x2b, 0x59, 0x10, 0xd7, 0xf7, 0x49, 0x06, 0x60, 0x2b, 0x1f, 0x95, 0x50, 0xb3, 0xd1, 0x1c, 0xff, 0x70, 0x5b, 0x35, 0x8c, 0x3b, 0xcb, 0xf7, 0x2c, 0x3d, }; static const unsigned char ecdsa_secp256k1_sha512_6556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6556_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xaa, 0xd4, 0xe2, 0xb6, 0x9a, 0x9f, 0x37, 0x8d, 0xae, 0x78, 0x73, 0xb4, 0x0f, 0x7c, 0x15, 0xcb, 0x45, 0x65, 0xfc, 0xc8, 0xcb, 0xc0, 0xec, 0x55, 0xb0, 0xbd, 0x3f, 0xe9, 0xd8, 0x62, 0x6b, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6556 = { .name = "ecdsa_secp256k1_sha512_6556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6556_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6556_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6556_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6557 for ECDSA, tcId is 383 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6557_pubkey[] = { 0x8a, 0x85, 0x82, 0x26, 0x15, 0x5e, 0x34, 0xdb, 0xb7, 0xe5, 0xda, 0xc7, 0xf1, 0x31, 0x27, 0xc8, 0x1c, 0x6c, 0xe8, 0xc9, 0xd8, 0x91, 0x91, 0x8c, 0x67, 0xc8, 0x73, 0x8d, 0x7e, 0x4b, 0x46, 0xe9, 0x6c, 0x13, 0x86, 0xe8, 0x4c, 0x61, 0x23, 0x12, 0xde, 0x53, 0xe9, 0xe4, 0xaf, 0x34, 0xd9, 0xbd, 0x57, 0xf9, 0x3d, 0x9a, 0x06, 0xb8, 0x55, 0xb6, 0xe0, 0xb0, 0x6a, 0xd4, 0x13, 0x7f, 0xf5, 0x7c, }; static const unsigned char ecdsa_secp256k1_sha512_6557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6557_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x73, 0xfe, 0xc4, 0x99, 0x5e, 0x9d, 0x31, 0x40, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0x13, 0xe9, 0x53, 0x89, 0xfb, 0x59, 0x9d, 0x22, 0xf2, 0x40, 0x39, 0x39, 0x2a, 0x40, 0x14, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6557 = { .name = "ecdsa_secp256k1_sha512_6557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6557_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6557_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6557_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6558 for ECDSA, tcId is 384 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6558_pubkey[] = { 0xae, 0xc0, 0xbe, 0x72, 0x9b, 0x02, 0xf2, 0x66, 0xc5, 0x42, 0xd1, 0x39, 0xa3, 0xe0, 0x41, 0x10, 0xc9, 0x33, 0xe8, 0xec, 0xa1, 0x00, 0x8e, 0x8d, 0xba, 0x38, 0xd7, 0x5e, 0x7f, 0x8f, 0xab, 0x53, 0x2c, 0xd6, 0x88, 0xd9, 0x24, 0xb4, 0x56, 0x84, 0x8b, 0xd5, 0xc6, 0x51, 0x44, 0x4c, 0x67, 0xa9, 0x39, 0x9f, 0xdf, 0xb5, 0xb5, 0xb9, 0x69, 0x31, 0x62, 0xc1, 0x72, 0x8b, 0xfa, 0xdc, 0x10, 0x46, }; static const unsigned char ecdsa_secp256k1_sha512_6558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6558_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xec, 0x49, 0x95, 0xe9, 0xd3, 0x14, 0x0b, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x73, 0xdc, 0x25, 0xf4, 0x25, 0x7a, 0x91, 0x1e, 0x31, 0x0e, 0x38, 0x74, 0x4b, 0x48, 0x2a, 0x5a, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6558 = { .name = "ecdsa_secp256k1_sha512_6558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6558_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6558_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6558_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6559 for ECDSA, tcId is 385 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6559_pubkey[] = { 0x01, 0xed, 0x4b, 0x5f, 0x94, 0x1f, 0x44, 0x3b, 0x31, 0xa7, 0xe2, 0x58, 0x3e, 0xa1, 0x65, 0x55, 0x1d, 0x18, 0x15, 0xb5, 0x47, 0x40, 0xde, 0xb1, 0x2e, 0x9f, 0xde, 0xff, 0x32, 0xe2, 0x30, 0x61, 0x84, 0x38, 0x5c, 0xa4, 0x48, 0xcc, 0x5d, 0xd7, 0x11, 0x39, 0xbd, 0xa3, 0xab, 0x42, 0xd0, 0xb6, 0xe4, 0x4d, 0x71, 0x9e, 0x52, 0xff, 0xf6, 0x4d, 0x97, 0x18, 0x76, 0xef, 0xa9, 0x10, 0x9f, 0xb2, }; static const unsigned char ecdsa_secp256k1_sha512_6559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6559_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd8, 0x93, 0x2b, 0xd3, 0xa6, 0x28, 0x17, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xe8, 0xfd, 0x9d, 0x0b, 0x64, 0x45, 0xd9, 0x9c, 0x26, 0x5c, 0x9e, 0x8a, 0x09, 0xc0, 0x1e, 0x72, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6559 = { .name = "ecdsa_secp256k1_sha512_6559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6559_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6559_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6559_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6560 for ECDSA, tcId is 386 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6560_pubkey[] = { 0x59, 0xc4, 0x27, 0xcb, 0x65, 0x25, 0xea, 0xb5, 0x11, 0xa0, 0x6e, 0x03, 0xe0, 0x0c, 0xf2, 0xaa, 0xb4, 0xab, 0xc5, 0x87, 0xc2, 0x60, 0x15, 0x34, 0x33, 0x8a, 0x50, 0xbc, 0x25, 0x70, 0x1a, 0x70, 0x3e, 0x4e, 0xb3, 0x88, 0xb4, 0x53, 0xcb, 0xae, 0xa5, 0x94, 0xd6, 0xb5, 0xc1, 0x4a, 0x51, 0x9a, 0xc3, 0xfd, 0xa7, 0x70, 0xc5, 0x35, 0x80, 0xbe, 0xef, 0xc6, 0x8f, 0x09, 0x20, 0x0d, 0x55, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6560_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x9d, 0x31, 0x40, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa3, 0xba, 0x17, 0x6f, 0x06, 0xc2, 0xb6, 0xe3, 0x73, 0x63, 0xe2, 0xce, 0x1c, 0x14, 0x1f, 0x3c, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6560 = { .name = "ecdsa_secp256k1_sha512_6560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6560_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6560_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6560_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6561 for ECDSA, tcId is 387 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6561_pubkey[] = { 0x04, 0xac, 0xbb, 0xcd, 0x23, 0xcf, 0x2e, 0xc8, 0x19, 0xfd, 0x29, 0x7a, 0xb2, 0xcb, 0x54, 0x07, 0xed, 0xe6, 0x31, 0x95, 0x18, 0x65, 0x1a, 0x39, 0x1e, 0x94, 0x1c, 0xc8, 0x00, 0x35, 0x68, 0x33, 0x12, 0x06, 0xdd, 0x00, 0xdf, 0x23, 0xbc, 0x8c, 0xe0, 0xb8, 0x5a, 0x01, 0x8c, 0x4b, 0x34, 0xe9, 0xc3, 0xb4, 0x1b, 0x4e, 0xf5, 0x9c, 0x71, 0x49, 0x2f, 0xa6, 0x2d, 0x13, 0x47, 0x72, 0xf9, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha512_6561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6561_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfd, 0x6d, 0xc7, 0x1a, 0x71, 0xf1, 0xd5, 0x0d, 0x1b, 0xbd, 0x97, 0x6a, 0xf4, 0x35, 0x7b, 0xe4, 0xdd, 0x2f, 0xe8, 0x50, 0x70, 0x7c, 0x43, 0x1f, 0xd3, 0x76, 0xe5, 0x3d, 0x17, 0x6c, 0x6b, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6561 = { .name = "ecdsa_secp256k1_sha512_6561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6561_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6561_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6561_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6562 for ECDSA, tcId is 388 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6562_pubkey[] = { 0xcc, 0xac, 0xbc, 0x62, 0x6f, 0xd6, 0xea, 0x31, 0x17, 0x58, 0x15, 0xcf, 0xf9, 0x58, 0xca, 0x16, 0x37, 0x32, 0x38, 0x77, 0xd3, 0xbd, 0xf0, 0x98, 0x96, 0xb5, 0x27, 0xbf, 0x4e, 0x25, 0x5e, 0x85, 0x71, 0xf8, 0xa2, 0x7e, 0x63, 0x09, 0xbd, 0x9b, 0x9b, 0x15, 0xd7, 0x8d, 0x52, 0x70, 0x01, 0x2a, 0xd2, 0xed, 0x15, 0xa7, 0xff, 0xfe, 0x02, 0x4f, 0xc0, 0xec, 0xa6, 0x3f, 0xb6, 0xac, 0x2f, 0x8d, }; static const unsigned char ecdsa_secp256k1_sha512_6562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6562_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7e, 0xe7, 0x5a, 0xd2, 0xa5, 0x80, 0x1c, 0x54, 0x72, 0x2e, 0xb7, 0xd9, 0x5b, 0xa6, 0x7f, 0xeb, 0xcf, 0xc3, 0x99, 0xb9, 0x56, 0xb7, 0xb6, 0x82, 0xfe, 0x89, 0x63, 0x8d, 0xe3, 0x69, 0x0b, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6562 = { .name = "ecdsa_secp256k1_sha512_6562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6562_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6562_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6562_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6563 for ECDSA, tcId is 389 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6563_pubkey[] = { 0xcc, 0xc3, 0x0b, 0x65, 0xca, 0xd3, 0xdd, 0x1d, 0x79, 0x3b, 0x6d, 0xb8, 0x0f, 0x57, 0xb2, 0xe1, 0x23, 0x79, 0x73, 0xe4, 0x26, 0x4c, 0x3d, 0x9b, 0xbc, 0x25, 0x51, 0xec, 0x68, 0xa0, 0xb7, 0xbe, 0x75, 0xff, 0x6d, 0x1f, 0x4f, 0x53, 0x5a, 0x13, 0x1a, 0xa5, 0x73, 0xf6, 0xe2, 0xd6, 0x91, 0x2c, 0x39, 0x71, 0x54, 0x93, 0x37, 0x50, 0x41, 0x7d, 0x28, 0xe4, 0x65, 0x24, 0x39, 0x25, 0x92, 0xde, }; static const unsigned char ecdsa_secp256k1_sha512_6563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6563_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf5, 0x33, 0x77, 0x6f, 0x11, 0xc4, 0x7e, 0xd0, 0xa7, 0xb5, 0xe2, 0x5a, 0xce, 0x7a, 0x3b, 0x92, 0x18, 0x66, 0x73, 0x3c, 0x74, 0x54, 0xb2, 0xc6, 0x78, 0xb8, 0x94, 0x3d, 0xfb, 0x4c, 0xf2, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6563 = { .name = "ecdsa_secp256k1_sha512_6563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6563_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6563_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6563_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6564 for ECDSA, tcId is 390 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6564_pubkey[] = { 0xcc, 0x93, 0x49, 0xac, 0xa0, 0xcb, 0xd0, 0xb2, 0xdf, 0x0d, 0xee, 0xcd, 0x88, 0xed, 0x39, 0xe6, 0xd8, 0xc7, 0xc3, 0xd7, 0xb4, 0x22, 0xfd, 0x5d, 0x92, 0x43, 0x1b, 0xaf, 0x72, 0x25, 0xfc, 0xc0, 0xed, 0x49, 0x4b, 0xe6, 0x98, 0xd6, 0xf3, 0x85, 0x0b, 0xe2, 0x77, 0xc2, 0x68, 0x79, 0x24, 0x00, 0xf3, 0x96, 0x02, 0x5c, 0xfa, 0x95, 0xcf, 0x56, 0x01, 0x8b, 0xcb, 0xc2, 0x43, 0xe5, 0x12, 0xeb, }; static const unsigned char ecdsa_secp256k1_sha512_6564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6564_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe8, 0xdb, 0xff, 0xee, 0x01, 0x80, 0x7d, 0x75, 0xf9, 0xaa, 0x52, 0xc2, 0x95, 0xe1, 0x5b, 0x15, 0xf1, 0x38, 0x43, 0x9e, 0x7a, 0x19, 0x5a, 0x40, 0x70, 0x9b, 0x1a, 0xbf, 0x51, 0x1d, 0xbc, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6564 = { .name = "ecdsa_secp256k1_sha512_6564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6564_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6564_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6564_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6565 for ECDSA, tcId is 391 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6565_pubkey[] = { 0x00, 0x0e, 0x7c, 0x30, 0xd2, 0xf2, 0x59, 0xf7, 0xc1, 0x3f, 0x19, 0x43, 0x20, 0xe4, 0x39, 0x05, 0xd0, 0xea, 0xd7, 0x27, 0x7e, 0x28, 0x3e, 0x89, 0x18, 0x43, 0x7c, 0x10, 0xf9, 0xd0, 0x52, 0xb0, 0x2b, 0x39, 0xb6, 0x6d, 0xbb, 0xa2, 0xb1, 0xcf, 0x5d, 0xac, 0x1b, 0x41, 0xd2, 0xde, 0xc6, 0xf1, 0xfb, 0x08, 0xbd, 0xd1, 0x4d, 0x42, 0x0d, 0x70, 0x39, 0x86, 0xf6, 0x3a, 0xed, 0xeb, 0x5c, 0x47, }; static const unsigned char ecdsa_secp256k1_sha512_6565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6565_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xca, 0x01, 0x55, 0x2b, 0x58, 0xd6, 0x7a, 0x13, 0x46, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xdf, 0x8f, 0x44, 0xcc, 0x93, 0x88, 0x84, 0xfc, 0xf1, 0x5c, 0x51, 0x6b, 0x02, 0xa7, 0xa7, 0xb5, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6565 = { .name = "ecdsa_secp256k1_sha512_6565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6565_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6565_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6565_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6566 for ECDSA, tcId is 392 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6566_pubkey[] = { 0x8f, 0xa2, 0x98, 0xc0, 0x0a, 0xc9, 0x3f, 0x7c, 0x36, 0x89, 0x2c, 0x52, 0x99, 0x00, 0x5a, 0x0f, 0x68, 0x43, 0xf9, 0xcf, 0x06, 0x69, 0xfd, 0xbb, 0x7d, 0x6d, 0x81, 0xe0, 0x34, 0x18, 0x03, 0xed, 0x4c, 0xab, 0x33, 0xcc, 0x28, 0x21, 0xb2, 0xda, 0x84, 0x9f, 0x90, 0xef, 0x20, 0xdc, 0x1e, 0xb8, 0x96, 0xfc, 0x67, 0x16, 0x14, 0x40, 0xb3, 0xc5, 0x2c, 0x0b, 0x1e, 0x88, 0x62, 0x7e, 0x50, 0x8c, }; static const unsigned char ecdsa_secp256k1_sha512_6566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6566_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x94, 0x02, 0xaa, 0x56, 0xb1, 0xac, 0xf4, 0x26, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc0, 0x63, 0xda, 0xbc, 0x40, 0x61, 0xc1, 0x59, 0xa6, 0xf8, 0xd0, 0x77, 0x78, 0x7f, 0x19, 0x2a, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6566 = { .name = "ecdsa_secp256k1_sha512_6566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6566_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6566_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6566_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6567 for ECDSA, tcId is 393 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6567_pubkey[] = { 0x6f, 0xbf, 0x60, 0x8a, 0x83, 0xe3, 0x7e, 0xc2, 0x6b, 0x37, 0xda, 0x03, 0x3e, 0x06, 0x98, 0x16, 0x68, 0x0b, 0x77, 0x0b, 0xa7, 0x66, 0xfb, 0x8c, 0x44, 0xfc, 0xe0, 0x03, 0x96, 0x05, 0x62, 0xf1, 0x04, 0x5f, 0x26, 0x8c, 0xcc, 0x5e, 0x09, 0x49, 0x21, 0x3f, 0x7f, 0x2f, 0x1f, 0xa5, 0x7c, 0xfe, 0xad, 0x04, 0x62, 0x5e, 0xc3, 0xcc, 0xfc, 0x9c, 0x33, 0x35, 0x96, 0xe4, 0x87, 0xb2, 0x05, 0x6f, }; static const unsigned char ecdsa_secp256k1_sha512_6567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6567_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0x38, 0x70, 0xab, 0xed, 0x3a, 0xfd, 0xb6, 0x5c, 0x95, 0x4f, 0x83, 0xee, 0x56, 0x8a, 0x9f, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6567 = { .name = "ecdsa_secp256k1_sha512_6567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6567_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6567_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6567_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6568 for ECDSA, tcId is 394 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6568_pubkey[] = { 0xc4, 0xdd, 0x54, 0x7a, 0xd7, 0x50, 0x17, 0x41, 0x79, 0xba, 0xc8, 0xb8, 0xce, 0x27, 0x48, 0x1c, 0x58, 0xb8, 0x13, 0x47, 0x77, 0x62, 0x20, 0xa1, 0xb5, 0x2a, 0xda, 0x13, 0xd6, 0x5c, 0x81, 0x24, 0xf9, 0xc2, 0xef, 0x3b, 0x5b, 0x49, 0x57, 0xcf, 0x69, 0xd3, 0xa1, 0x39, 0x89, 0x16, 0x82, 0x36, 0x3c, 0x04, 0x06, 0x10, 0xf2, 0x00, 0xf4, 0xc3, 0x18, 0xe5, 0x9a, 0xa6, 0x8f, 0x29, 0x8a, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha512_6568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6568_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x55, 0x6a, 0x71, 0x5b, 0x4d, 0x4f, 0x9b, 0xc6, 0xd7, 0x3c, 0x39, 0xda, 0x07, 0xbe, 0x0a, 0xe5, 0xa2, 0xb2, 0xfe, 0x64, 0x65, 0xe0, 0x76, 0x2a, 0xd8, 0x5e, 0x9f, 0xf4, 0xec, 0x31, 0x35, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6568 = { .name = "ecdsa_secp256k1_sha512_6568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6568_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6568_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6568_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6569 for ECDSA, tcId is 395 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6569_pubkey[] = { 0x00, 0x05, 0x5d, 0x79, 0xfb, 0x26, 0x28, 0x6b, 0xb6, 0x28, 0x9a, 0x79, 0x83, 0xa2, 0xb2, 0x3b, 0xf5, 0xc3, 0x0c, 0xc3, 0xd7, 0x03, 0x63, 0xb5, 0x59, 0xad, 0xf5, 0x54, 0x8a, 0xf9, 0x91, 0xf8, 0xca, 0xe8, 0xb1, 0xb0, 0xac, 0xe3, 0x2f, 0xd7, 0x4a, 0x86, 0xee, 0x1a, 0x67, 0x1c, 0xc3, 0x6c, 0x05, 0x2a, 0x47, 0x96, 0xea, 0xe3, 0x23, 0xbe, 0x32, 0xe0, 0x2c, 0xe9, 0xa0, 0xfb, 0x62, 0x27, }; static const unsigned char ecdsa_secp256k1_sha512_6569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6569_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6569 = { .name = "ecdsa_secp256k1_sha512_6569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6569_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6569_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6569_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6570 for ECDSA, tcId is 396 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6570_pubkey[] = { 0x0d, 0xb5, 0x1c, 0x74, 0xd3, 0x4e, 0x41, 0xba, 0xba, 0x67, 0xc1, 0x3a, 0x60, 0xaf, 0x40, 0x4e, 0xe8, 0x2d, 0x8f, 0x1b, 0x03, 0x86, 0xb0, 0x96, 0x96, 0xee, 0x1e, 0x6e, 0xa1, 0x32, 0x7b, 0x86, 0x41, 0x38, 0x86, 0xc4, 0x62, 0x3f, 0xc2, 0x22, 0xa6, 0x95, 0x0c, 0x3c, 0x3a, 0x09, 0xf3, 0xfd, 0x86, 0x7a, 0x56, 0x6b, 0xfd, 0x34, 0x5e, 0x06, 0xb0, 0x9e, 0xc6, 0xc5, 0xc2, 0xe4, 0xa1, 0x92, }; static const unsigned char ecdsa_secp256k1_sha512_6570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6570_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6570 = { .name = "ecdsa_secp256k1_sha512_6570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6570_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6570_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6570_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6571 for ECDSA, tcId is 397 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6571_pubkey[] = { 0xbc, 0x2f, 0x7b, 0xc7, 0x4c, 0xb3, 0xbc, 0x7e, 0x79, 0x7b, 0x06, 0xcc, 0x3e, 0x64, 0x9b, 0xf3, 0x40, 0x7d, 0x1a, 0x55, 0xb4, 0xea, 0xad, 0xdd, 0x28, 0xd3, 0xdc, 0xfa, 0xff, 0x2c, 0x37, 0x37, 0xa2, 0x3b, 0xb3, 0x64, 0xe1, 0x6a, 0xc7, 0x93, 0x98, 0xc0, 0x13, 0xce, 0x29, 0xa2, 0x2e, 0x76, 0x2c, 0x0d, 0x60, 0x67, 0xaa, 0xef, 0xda, 0x95, 0x84, 0x74, 0xaa, 0xd1, 0x94, 0xa9, 0x2e, 0x8a, }; static const unsigned char ecdsa_secp256k1_sha512_6571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6571_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6571 = { .name = "ecdsa_secp256k1_sha512_6571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6571_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6571_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6571_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6572 for ECDSA, tcId is 398 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6572_pubkey[] = { 0xd7, 0xed, 0xc7, 0xc6, 0x45, 0xef, 0xff, 0x6a, 0xf8, 0x82, 0x1a, 0xea, 0x5b, 0x7f, 0x96, 0x9f, 0x56, 0xef, 0x6e, 0x61, 0x58, 0x62, 0xb0, 0x8f, 0xba, 0x3e, 0xaf, 0x01, 0x11, 0xc0, 0x6f, 0x67, 0xe4, 0x7f, 0xd0, 0xda, 0x61, 0x68, 0x2a, 0xdc, 0xc4, 0x05, 0xf3, 0x29, 0x14, 0x8b, 0xf1, 0xc3, 0x5b, 0x89, 0xcb, 0x5e, 0xc5, 0xa9, 0xed, 0x0d, 0x98, 0xa4, 0x10, 0xe2, 0x61, 0xa6, 0xb4, 0x1a, }; static const unsigned char ecdsa_secp256k1_sha512_6572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6572_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6572 = { .name = "ecdsa_secp256k1_sha512_6572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6572_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6572_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6572_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6573 for ECDSA, tcId is 399 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6573_pubkey[] = { 0x6b, 0xfd, 0x7a, 0xd0, 0x1b, 0x5d, 0xcf, 0xb0, 0x4d, 0xe4, 0x64, 0x08, 0x3d, 0x3c, 0xa7, 0xef, 0x50, 0x54, 0x50, 0x61, 0x11, 0xdf, 0x92, 0xef, 0x02, 0xff, 0x76, 0x90, 0xd9, 0xa6, 0xec, 0x93, 0x06, 0xc4, 0x69, 0xfe, 0x4c, 0x5a, 0x1e, 0x04, 0xf1, 0x14, 0xe1, 0x93, 0xb4, 0xbb, 0x19, 0x7d, 0xe2, 0xc8, 0xe3, 0x50, 0x89, 0x03, 0x7e, 0x5a, 0x20, 0x27, 0x5b, 0xcf, 0x67, 0xd9, 0xbf, 0x73, }; static const unsigned char ecdsa_secp256k1_sha512_6573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6573_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6573 = { .name = "ecdsa_secp256k1_sha512_6573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6573_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6573_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6573_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6574 for ECDSA, tcId is 400 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6574_pubkey[] = { 0x8a, 0x90, 0x76, 0xc9, 0x23, 0x02, 0x1d, 0x5c, 0x5e, 0xf8, 0x58, 0x94, 0x17, 0x6e, 0xbb, 0x5c, 0x3a, 0x74, 0xab, 0xa7, 0x5b, 0x39, 0x44, 0xc9, 0x6f, 0x17, 0xde, 0xbc, 0x21, 0x73, 0xba, 0x99, 0xe5, 0x60, 0x1d, 0x11, 0x5b, 0xf0, 0x8d, 0x37, 0xae, 0x11, 0x5c, 0x4d, 0x18, 0x6b, 0xc2, 0x11, 0x27, 0xbb, 0xfb, 0x21, 0xd0, 0x62, 0x9b, 0xde, 0x27, 0xa1, 0x6e, 0x9e, 0xd7, 0x21, 0xb7, 0x40, }; static const unsigned char ecdsa_secp256k1_sha512_6574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6574_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6574 = { .name = "ecdsa_secp256k1_sha512_6574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6574_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6574_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6574_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6575 for ECDSA, tcId is 401 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6575_pubkey[] = { 0x0f, 0xec, 0x6a, 0x85, 0xe0, 0x77, 0xef, 0x42, 0x40, 0xb9, 0x8c, 0x62, 0xab, 0x3b, 0x93, 0xe2, 0xce, 0xbc, 0xad, 0x0a, 0xe9, 0x61, 0x7f, 0x7b, 0x04, 0x71, 0x50, 0x4d, 0xb1, 0xf4, 0x5a, 0x65, 0x24, 0x5a, 0x5f, 0xd0, 0xad, 0x7a, 0x6d, 0x85, 0x41, 0x25, 0xed, 0x76, 0xd4, 0x78, 0x7f, 0x77, 0xcc, 0x19, 0x83, 0xec, 0xa8, 0xc6, 0xba, 0x8c, 0x01, 0x95, 0x23, 0xa0, 0x88, 0xc4, 0xd0, 0xf3, }; static const unsigned char ecdsa_secp256k1_sha512_6575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6575_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6575 = { .name = "ecdsa_secp256k1_sha512_6575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6575_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6575_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6575_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6576 for ECDSA, tcId is 402 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6576_pubkey[] = { 0xd3, 0xab, 0x94, 0xd8, 0x70, 0x4f, 0xb5, 0x17, 0x74, 0xdc, 0xc3, 0x83, 0x8a, 0xd9, 0x70, 0x30, 0x71, 0xe0, 0x85, 0x1d, 0xe9, 0xb2, 0xd6, 0xca, 0x74, 0xcc, 0xd7, 0x9b, 0x85, 0x55, 0x81, 0x91, 0x4e, 0x49, 0x79, 0xb6, 0x7f, 0x37, 0x74, 0x19, 0xe5, 0xa9, 0xd4, 0xf0, 0x30, 0x12, 0xb7, 0xe7, 0x56, 0x56, 0x55, 0x6f, 0x23, 0x75, 0x6d, 0x4d, 0xbe, 0xe1, 0x45, 0x83, 0x4c, 0x82, 0x79, 0xef, }; static const unsigned char ecdsa_secp256k1_sha512_6576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6576_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6576 = { .name = "ecdsa_secp256k1_sha512_6576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6576_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6576_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6576_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6577 for ECDSA, tcId is 403 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6577_pubkey[] = { 0x49, 0xe1, 0x3c, 0xd4, 0x4c, 0x8b, 0x83, 0x50, 0xa5, 0xea, 0xca, 0x21, 0x81, 0xbf, 0x96, 0xdb, 0x12, 0x0b, 0x76, 0x8b, 0xde, 0x88, 0x00, 0xf3, 0x79, 0xf4, 0x3e, 0x91, 0x98, 0x33, 0x3c, 0x75, 0x03, 0x0a, 0xd9, 0xfb, 0x4b, 0x0b, 0x23, 0x3b, 0xdc, 0x10, 0xca, 0x0d, 0xc4, 0xc2, 0x13, 0x4b, 0x18, 0xb6, 0x91, 0xe4, 0x6c, 0x71, 0x51, 0xe3, 0x57, 0x3a, 0xa2, 0xb6, 0x28, 0x91, 0xe6, 0x9d, }; static const unsigned char ecdsa_secp256k1_sha512_6577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6577_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6577 = { .name = "ecdsa_secp256k1_sha512_6577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6577_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6577_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6577_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6578 for ECDSA, tcId is 404 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6578_pubkey[] = { 0x45, 0x74, 0xfd, 0x94, 0xad, 0x03, 0x82, 0x85, 0x88, 0xcb, 0x0b, 0xc2, 0xd4, 0x34, 0x84, 0x2e, 0xe0, 0x93, 0xef, 0xe6, 0x39, 0x01, 0x5c, 0xc1, 0x07, 0xd1, 0xea, 0x37, 0x10, 0xf2, 0x11, 0x2d, 0x17, 0x86, 0xd6, 0xef, 0x1d, 0x41, 0x1c, 0xbd, 0x1a, 0xf5, 0xb5, 0xee, 0x88, 0x45, 0x99, 0x3e, 0x73, 0x8f, 0xb6, 0x45, 0x19, 0xb4, 0x32, 0x9d, 0x04, 0xbe, 0x21, 0xf7, 0x90, 0x2a, 0x1c, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha512_6578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6578_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6578 = { .name = "ecdsa_secp256k1_sha512_6578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6578_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6578_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6578_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6579 for ECDSA, tcId is 405 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6579_pubkey[] = { 0xee, 0x82, 0x4d, 0x81, 0x87, 0x68, 0xf1, 0x3f, 0xa0, 0xeb, 0x90, 0x8e, 0x39, 0x6e, 0xa1, 0xc5, 0x6b, 0x11, 0x77, 0x4c, 0xe6, 0x9d, 0x01, 0xe5, 0x63, 0xaa, 0x36, 0xbb, 0x41, 0xd6, 0x37, 0x1c, 0x99, 0x02, 0x91, 0xce, 0x2a, 0xbc, 0x55, 0xbb, 0x66, 0x82, 0xd5, 0x02, 0xae, 0x01, 0x29, 0xe7, 0xc5, 0x7e, 0x14, 0x6e, 0x96, 0xd4, 0x47, 0x57, 0xda, 0xaa, 0x1f, 0x94, 0xc9, 0x3e, 0x0b, 0x17, }; static const unsigned char ecdsa_secp256k1_sha512_6579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6579_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6579 = { .name = "ecdsa_secp256k1_sha512_6579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6579_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6579_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6579_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6580 for ECDSA, tcId is 406 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6580_pubkey[] = { 0x48, 0x25, 0xee, 0x46, 0xb2, 0xd2, 0x15, 0x64, 0x72, 0x6a, 0x32, 0xa9, 0x22, 0xf5, 0xe3, 0xf2, 0xda, 0x60, 0x98, 0xf7, 0x80, 0xe1, 0xf1, 0x5c, 0x6b, 0xf1, 0x64, 0x06, 0x69, 0xc4, 0x1f, 0xe7, 0x29, 0x2c, 0x06, 0x6a, 0x24, 0xf0, 0xf4, 0x50, 0xc2, 0x60, 0x3f, 0x18, 0x37, 0x21, 0x08, 0x98, 0xf8, 0xe8, 0x0f, 0xa3, 0x84, 0xaa, 0xf0, 0x77, 0xeb, 0x5c, 0x7e, 0x87, 0xc6, 0xb2, 0x69, 0x76, }; static const unsigned char ecdsa_secp256k1_sha512_6580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6580_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6580 = { .name = "ecdsa_secp256k1_sha512_6580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6580_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6580_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6580_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6581 for ECDSA, tcId is 407 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6581_pubkey[] = { 0x41, 0x34, 0x8e, 0x7a, 0xc1, 0x8e, 0xb1, 0xf4, 0x85, 0x28, 0x01, 0x46, 0x7b, 0xb0, 0xa0, 0xe3, 0x62, 0x09, 0x32, 0x1a, 0x8a, 0xf4, 0xb4, 0x10, 0xfd, 0x06, 0xf0, 0x70, 0xa8, 0x1f, 0x5d, 0xe6, 0x03, 0xb5, 0x59, 0x4f, 0x1a, 0x5a, 0x79, 0xd2, 0x30, 0x89, 0xe4, 0x9e, 0x3e, 0x37, 0x9f, 0x2a, 0x6c, 0xb1, 0x4f, 0x92, 0x30, 0x1c, 0x69, 0x99, 0xe5, 0x10, 0xb8, 0xc8, 0xdc, 0x37, 0xfb, 0x4b, }; static const unsigned char ecdsa_secp256k1_sha512_6581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6581_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6581 = { .name = "ecdsa_secp256k1_sha512_6581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6581_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6581_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6581_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6582 for ECDSA, tcId is 408 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6582_pubkey[] = { 0x75, 0x3c, 0x74, 0xe5, 0xa3, 0x6e, 0x1a, 0x4b, 0x61, 0xbe, 0x77, 0x87, 0x20, 0x2c, 0x98, 0xe0, 0x58, 0x41, 0xfe, 0xa2, 0xb0, 0x39, 0x2b, 0x6a, 0xb6, 0x9e, 0xe2, 0xe8, 0xa7, 0x47, 0xe2, 0xb6, 0x18, 0x97, 0x1d, 0xa1, 0xc8, 0x58, 0x25, 0xc1, 0xd8, 0x14, 0x18, 0x86, 0x11, 0x5d, 0x27, 0xcb, 0x2a, 0xdd, 0x86, 0x54, 0x5e, 0x69, 0x71, 0xbb, 0x83, 0x5a, 0x2f, 0x45, 0x2c, 0xde, 0x1e, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6582_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6582 = { .name = "ecdsa_secp256k1_sha512_6582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6582_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6582_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6582_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 408 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6583 for ECDSA, tcId is 409 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6583_pubkey[] = { 0x49, 0xc0, 0x25, 0x47, 0x24, 0x57, 0x6b, 0x09, 0x49, 0x82, 0x7c, 0xe4, 0x62, 0x40, 0xd9, 0x0c, 0xb4, 0x07, 0x5c, 0xd1, 0x97, 0x8a, 0x41, 0x64, 0x95, 0xa4, 0x55, 0xf0, 0x6a, 0x89, 0x55, 0x04, 0xdf, 0x7d, 0x64, 0xc3, 0x58, 0x53, 0x35, 0x3b, 0xd4, 0xd9, 0x05, 0xda, 0x6a, 0xdb, 0x88, 0xf2, 0x6e, 0x62, 0xa5, 0xf2, 0x0b, 0x3c, 0xd6, 0x38, 0x2a, 0xdf, 0x2c, 0x5a, 0x42, 0xd8, 0x50, 0x53, }; static const unsigned char ecdsa_secp256k1_sha512_6583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6583_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6583 = { .name = "ecdsa_secp256k1_sha512_6583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6583_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6583_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6583_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 409 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6584 for ECDSA, tcId is 410 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6584_pubkey[] = { 0xb0, 0x5e, 0x98, 0xe8, 0x4e, 0x2c, 0x19, 0x74, 0x3c, 0x1d, 0xcf, 0x4e, 0x0d, 0xdf, 0x0b, 0xb1, 0xf3, 0x28, 0x54, 0x03, 0x3d, 0xe6, 0x3f, 0xcf, 0x3e, 0x60, 0x5f, 0xbb, 0x2e, 0xd9, 0x4c, 0xb1, 0x87, 0x1d, 0x74, 0x15, 0xd5, 0xf6, 0xc5, 0x7c, 0x84, 0x06, 0x78, 0xf7, 0xe1, 0xa1, 0xc1, 0xe3, 0x23, 0x51, 0x9a, 0x46, 0x47, 0xfb, 0x3f, 0x6f, 0x52, 0xab, 0xb4, 0x64, 0x7b, 0x9b, 0x6d, 0x70, }; static const unsigned char ecdsa_secp256k1_sha512_6584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6584_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0x6f, 0xd8, 0x48, 0x30, 0x6e, 0x96, 0x8e, 0x3a, 0xc1, 0xf6, 0xe4, 0x43, 0x57, 0x7c, 0x47, 0xa3, 0xc2, 0x0b, 0xf0, 0xd0, 0x1a, 0x5d, 0xc3, 0x9c, 0x78, 0xc2, 0xc6, 0x9d, 0x68, 0x18, 0x50, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6584 = { .name = "ecdsa_secp256k1_sha512_6584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6584_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6584_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6584_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 410 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6585 for ECDSA, tcId is 411 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6585_pubkey[] = { 0xb0, 0x5e, 0x98, 0xe8, 0x4e, 0x2c, 0x19, 0x74, 0x3c, 0x1d, 0xcf, 0x4e, 0x0d, 0xdf, 0x0b, 0xb1, 0xf3, 0x28, 0x54, 0x03, 0x3d, 0xe6, 0x3f, 0xcf, 0x3e, 0x60, 0x5f, 0xbb, 0x2e, 0xd9, 0x4c, 0xb1, 0x78, 0xe2, 0x8b, 0xea, 0x2a, 0x09, 0x3a, 0x83, 0x7b, 0xf9, 0x87, 0x08, 0x1e, 0x5e, 0x3e, 0x1c, 0xdc, 0xae, 0x65, 0xb9, 0xb8, 0x04, 0xc0, 0x90, 0xad, 0x54, 0x4b, 0x9a, 0x84, 0x64, 0x8e, 0xbf, }; static const unsigned char ecdsa_secp256k1_sha512_6585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6585_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0x6f, 0xd8, 0x48, 0x30, 0x6e, 0x96, 0x8e, 0x3a, 0xc1, 0xf6, 0xe4, 0x43, 0x57, 0x7c, 0x47, 0xa3, 0xc2, 0x0b, 0xf0, 0xd0, 0x1a, 0x5d, 0xc3, 0x9c, 0x78, 0xc2, 0xc6, 0x9d, 0x68, 0x18, 0x50, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6585 = { .name = "ecdsa_secp256k1_sha512_6585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6585_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6585_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6585_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 411 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6586 for ECDSA, tcId is 412 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6586_pubkey[] = { 0xa4, 0x9f, 0x9e, 0xbc, 0x08, 0x2c, 0x06, 0x4d, 0x61, 0xc0, 0xea, 0xb5, 0xf8, 0xbf, 0x23, 0x20, 0x7b, 0x06, 0xe3, 0xa6, 0x89, 0xdf, 0xc4, 0xfa, 0x28, 0x96, 0xed, 0x11, 0x4d, 0x1a, 0x88, 0xab, 0x55, 0x78, 0x3a, 0x6b, 0xaf, 0x94, 0x01, 0x97, 0x7d, 0x11, 0x7c, 0xcb, 0x74, 0x8c, 0x0d, 0x5c, 0x24, 0xa5, 0xd3, 0xbd, 0x21, 0x33, 0xd6, 0x2c, 0x74, 0xde, 0x2b, 0xe7, 0xcc, 0x7d, 0x9d, 0x40, }; static const unsigned char ecdsa_secp256k1_sha512_6586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6586_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6586 = { .name = "ecdsa_secp256k1_sha512_6586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6586_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6586_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6586_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 412 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6587 for ECDSA, tcId is 413 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6587_pubkey[] = { 0xf9, 0x56, 0x7a, 0x43, 0x1b, 0x71, 0x63, 0x88, 0x42, 0x85, 0x10, 0x39, 0x3b, 0x37, 0xfe, 0xef, 0xd3, 0xaf, 0xcf, 0xc6, 0xdc, 0x38, 0x81, 0xf6, 0x23, 0xc0, 0xa0, 0x99, 0x5e, 0x46, 0x1e, 0xc3, 0xfb, 0xa2, 0xf9, 0x10, 0xce, 0xd1, 0x9f, 0x8e, 0x78, 0x9b, 0x15, 0x83, 0x90, 0xa2, 0x95, 0xe6, 0x36, 0xc5, 0x88, 0xc6, 0x22, 0xd5, 0x4f, 0x8f, 0xef, 0xfb, 0xd2, 0x85, 0x2e, 0x29, 0x11, 0xa9, }; static const unsigned char ecdsa_secp256k1_sha512_6587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6587_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6587 = { .name = "ecdsa_secp256k1_sha512_6587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6587_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6587_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6587_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 413 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6588 for ECDSA, tcId is 414 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6588_pubkey[] = { 0x26, 0x09, 0x5e, 0xf9, 0x3b, 0x10, 0xbf, 0x50, 0xfe, 0x28, 0x3f, 0x4c, 0x99, 0x13, 0x6f, 0xb8, 0x1f, 0xa2, 0x97, 0x81, 0x4f, 0x09, 0x97, 0x7e, 0x8e, 0x38, 0xa3, 0xbf, 0xb8, 0x37, 0xf6, 0x1b, 0xaf, 0x8d, 0x7c, 0xfc, 0x46, 0xc1, 0x92, 0x86, 0x24, 0xf2, 0x01, 0xed, 0x14, 0xa7, 0x07, 0x01, 0xbc, 0x55, 0x31, 0xbf, 0xf4, 0xe2, 0xe5, 0x78, 0xd5, 0xc9, 0x2d, 0xab, 0xdd, 0xbc, 0x75, 0x80, }; static const unsigned char ecdsa_secp256k1_sha512_6588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6588_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6588 = { .name = "ecdsa_secp256k1_sha512_6588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6588_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6588_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6588_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 414 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6589 for ECDSA, tcId is 415 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6589_pubkey[] = { 0x7a, 0x4b, 0x58, 0xee, 0x76, 0xd4, 0x61, 0xa1, 0xc3, 0xcd, 0xe6, 0x84, 0x00, 0xa0, 0xbb, 0xee, 0xab, 0x34, 0x6e, 0xe6, 0x93, 0x15, 0xbe, 0xd6, 0x3f, 0x17, 0x00, 0xc6, 0x6c, 0xf5, 0xe6, 0xcc, 0xa6, 0x42, 0xae, 0x40, 0x78, 0xbb, 0x6b, 0xbb, 0xb7, 0x60, 0x28, 0x97, 0x78, 0x82, 0xe9, 0xc8, 0x37, 0x4f, 0x26, 0x7a, 0x2c, 0xed, 0x13, 0x10, 0x29, 0xae, 0x89, 0x56, 0x0c, 0xe2, 0x98, 0x25, }; static const unsigned char ecdsa_secp256k1_sha512_6589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6589_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6589 = { .name = "ecdsa_secp256k1_sha512_6589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6589_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6589_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6589_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6590 for ECDSA, tcId is 416 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6590_pubkey[] = { 0xf2, 0xa1, 0x11, 0xeb, 0x24, 0xc9, 0xd2, 0x80, 0xd9, 0xa6, 0x6e, 0x4f, 0xf1, 0x86, 0x81, 0xd2, 0x22, 0xdd, 0x6a, 0x18, 0x28, 0xeb, 0xc4, 0x52, 0x8f, 0x2b, 0xeb, 0xe3, 0xe2, 0x52, 0x28, 0xa1, 0xa0, 0x69, 0x9b, 0xce, 0xc5, 0x07, 0xfd, 0x0e, 0xc8, 0x3d, 0xa5, 0x41, 0xa5, 0xa6, 0x14, 0x3e, 0x2e, 0x68, 0xe4, 0xaf, 0x72, 0xfc, 0xdc, 0xc8, 0xa2, 0xae, 0xa2, 0xb1, 0x74, 0x78, 0xcc, 0x8a, }; static const unsigned char ecdsa_secp256k1_sha512_6590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6590_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6590 = { .name = "ecdsa_secp256k1_sha512_6590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6590_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6590_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6590_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6591 for ECDSA, tcId is 417 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6591_pubkey[] = { 0xe5, 0x00, 0x54, 0xb3, 0xe4, 0xa4, 0xd1, 0xfe, 0xf9, 0x88, 0xe5, 0xa5, 0xe8, 0x30, 0x15, 0x5a, 0xbc, 0x29, 0x3f, 0xea, 0x35, 0x98, 0xaf, 0x4c, 0x5d, 0xda, 0xa1, 0x0a, 0xcd, 0x11, 0x12, 0x74, 0xeb, 0x71, 0x0d, 0x18, 0x34, 0x56, 0x8c, 0xb3, 0x79, 0xa1, 0xd1, 0xf3, 0xd6, 0x91, 0xa8, 0xc0, 0xdc, 0x19, 0xf9, 0x01, 0xfe, 0x32, 0x25, 0xc2, 0xb6, 0x69, 0x1d, 0xf5, 0xef, 0x53, 0x33, 0xfe, }; static const unsigned char ecdsa_secp256k1_sha512_6591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6591_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6591 = { .name = "ecdsa_secp256k1_sha512_6591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6591_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6591_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6591_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6592 for ECDSA, tcId is 418 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6592_pubkey[] = { 0xed, 0xc1, 0x7c, 0xd4, 0xca, 0x6f, 0x99, 0x88, 0xfd, 0xa5, 0xaf, 0x40, 0x42, 0xe3, 0xf9, 0xeb, 0x42, 0xd0, 0xf7, 0xb6, 0xa1, 0xc0, 0x15, 0x6e, 0x1a, 0x2a, 0xf5, 0x66, 0xb7, 0x81, 0x03, 0x54, 0x8a, 0x5d, 0x35, 0x77, 0x77, 0xb3, 0x06, 0xe9, 0x64, 0x05, 0xf1, 0x2e, 0x26, 0x17, 0xc1, 0xb2, 0x9e, 0x8d, 0x57, 0x4e, 0x5f, 0x6d, 0x66, 0xd1, 0xbc, 0x8f, 0xf7, 0xea, 0x7c, 0x4b, 0x68, 0x3c, }; static const unsigned char ecdsa_secp256k1_sha512_6592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6592_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6592 = { .name = "ecdsa_secp256k1_sha512_6592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6592_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6592_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6592_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 418 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6593 for ECDSA, tcId is 419 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6593_pubkey[] = { 0x6d, 0x26, 0x7c, 0x10, 0xd2, 0x31, 0x5b, 0x42, 0xdb, 0xaf, 0x34, 0xc9, 0x7c, 0x3c, 0x0d, 0x33, 0x1f, 0xab, 0xac, 0xaf, 0x60, 0x21, 0xdf, 0x4d, 0xc8, 0x5b, 0x3e, 0x9e, 0x63, 0xdc, 0x07, 0x98, 0xed, 0x15, 0x4b, 0x11, 0xfa, 0x3a, 0x5e, 0xd9, 0x52, 0xc1, 0x4d, 0x8a, 0x2d, 0xd2, 0x42, 0xde, 0x2b, 0x6c, 0xce, 0x3c, 0x22, 0xdf, 0x42, 0xcd, 0x97, 0xde, 0x30, 0x05, 0x4a, 0x19, 0x55, 0x5e, }; static const unsigned char ecdsa_secp256k1_sha512_6593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6593_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6593 = { .name = "ecdsa_secp256k1_sha512_6593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6593_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6593_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6593_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 419 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6594 for ECDSA, tcId is 420 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6594_pubkey[] = { 0xc2, 0x4b, 0xf7, 0xa9, 0x84, 0xc9, 0x6e, 0xce, 0x10, 0x07, 0x7a, 0x9d, 0xef, 0x38, 0xcb, 0xd0, 0xd8, 0x98, 0xab, 0xd5, 0x55, 0xf1, 0x66, 0x8e, 0x06, 0xc2, 0x7c, 0xab, 0xc0, 0x0f, 0x6f, 0x67, 0x9f, 0x69, 0xb2, 0x38, 0xe1, 0xf9, 0x5e, 0x99, 0xe5, 0xb5, 0x58, 0xe0, 0x03, 0x62, 0x73, 0xeb, 0xd6, 0xc3, 0x6d, 0x12, 0xb4, 0x51, 0x53, 0x48, 0xb8, 0x5a, 0x21, 0xf6, 0x28, 0x3f, 0x50, 0x16, }; static const unsigned char ecdsa_secp256k1_sha512_6594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6594_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6594 = { .name = "ecdsa_secp256k1_sha512_6594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6594_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6594_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6594_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 420 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6595 for ECDSA, tcId is 421 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6595_pubkey[] = { 0x1c, 0xd2, 0x6d, 0x66, 0x88, 0x07, 0xc8, 0x15, 0xed, 0x3f, 0x53, 0x2c, 0x1d, 0xb8, 0x1a, 0xc4, 0x73, 0xfb, 0x36, 0x8f, 0x0f, 0x7e, 0xf1, 0xaf, 0xf2, 0x59, 0x2e, 0xa6, 0xfa, 0x6c, 0x46, 0x24, 0xa2, 0x29, 0xb9, 0xab, 0x57, 0x46, 0xcf, 0xbc, 0x47, 0x28, 0x0c, 0x01, 0x9a, 0x42, 0x48, 0x54, 0x53, 0x54, 0xca, 0x20, 0x88, 0x0f, 0xf4, 0x1c, 0xac, 0x2e, 0x25, 0x2b, 0xc9, 0xb4, 0x97, 0x04, }; static const unsigned char ecdsa_secp256k1_sha512_6595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6595_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6595 = { .name = "ecdsa_secp256k1_sha512_6595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6595_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6595_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6595_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6596 for ECDSA, tcId is 422 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6596_pubkey[] = { 0xfc, 0x78, 0x07, 0x77, 0xa3, 0x28, 0x9a, 0xf6, 0x63, 0xfa, 0x02, 0xb1, 0xc2, 0x62, 0xa8, 0x37, 0x3b, 0x84, 0x61, 0x4e, 0x65, 0x9c, 0x1a, 0xb4, 0x69, 0x42, 0xf1, 0xe0, 0x58, 0x92, 0x6f, 0xf8, 0x21, 0x96, 0xc6, 0xbc, 0xae, 0x0b, 0x27, 0x98, 0x29, 0x8d, 0x46, 0x3b, 0xe5, 0xc8, 0x79, 0x24, 0x34, 0x3d, 0x7f, 0x10, 0x3a, 0x27, 0x13, 0x1e, 0x0c, 0x7f, 0x4d, 0x60, 0xd2, 0xb5, 0xda, 0x8c, }; static const unsigned char ecdsa_secp256k1_sha512_6596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6596_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6596 = { .name = "ecdsa_secp256k1_sha512_6596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6596_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6596_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6596_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6597 for ECDSA, tcId is 423 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6597_pubkey[] = { 0x5e, 0x25, 0xe2, 0xee, 0x8a, 0xf5, 0xef, 0x8a, 0x3e, 0x09, 0x08, 0x34, 0x1f, 0x98, 0x84, 0x50, 0x1f, 0xb5, 0x8a, 0x2f, 0xd2, 0x34, 0xb1, 0xdb, 0x6f, 0x22, 0xd5, 0x61, 0x02, 0x55, 0x24, 0xf4, 0x49, 0x1d, 0x97, 0xa7, 0x79, 0x3c, 0x9d, 0x9a, 0x1f, 0x35, 0xbb, 0x35, 0xf1, 0x21, 0x21, 0xb9, 0xdb, 0xe0, 0x75, 0xd8, 0x50, 0x1c, 0xbd, 0x4d, 0xb6, 0x69, 0x7e, 0x3e, 0x0a, 0xd9, 0x8b, 0xc0, }; static const unsigned char ecdsa_secp256k1_sha512_6597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6597_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6597 = { .name = "ecdsa_secp256k1_sha512_6597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6597_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6597_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6597_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 423 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6598 for ECDSA, tcId is 424 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6598_pubkey[] = { 0x3d, 0xdf, 0x29, 0x20, 0x60, 0x7d, 0xf5, 0x96, 0xda, 0x90, 0x12, 0x3e, 0xa5, 0x67, 0x49, 0x58, 0x05, 0x4c, 0x8e, 0xd7, 0x75, 0x86, 0x61, 0xb8, 0x13, 0xf1, 0xaa, 0x30, 0xf1, 0x97, 0x78, 0xb0, 0x70, 0x72, 0x43, 0xe1, 0xa7, 0xbc, 0xc2, 0x64, 0xb5, 0x42, 0x89, 0x83, 0x2e, 0x95, 0x0c, 0x27, 0x56, 0x38, 0x56, 0x24, 0x1b, 0x79, 0xc2, 0x43, 0xd0, 0xfc, 0x54, 0xf7, 0xad, 0x24, 0xbc, 0x25, }; static const unsigned char ecdsa_secp256k1_sha512_6598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6598_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6598 = { .name = "ecdsa_secp256k1_sha512_6598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6598_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6598_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6598_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 424 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6599 for ECDSA, tcId is 425 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6599_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha512_6599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6599_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6599 = { .name = "ecdsa_secp256k1_sha512_6599", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6599_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6599_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6599_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 425 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6600 for ECDSA, tcId is 426 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6600_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha512_6600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6600_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6600 = { .name = "ecdsa_secp256k1_sha512_6600", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6600_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6600_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6600_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 426 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6601 for ECDSA, tcId is 427 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6601_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha512_6601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6601_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6601 = { .name = "ecdsa_secp256k1_sha512_6601", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6601_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6601_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6601_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 427 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6602 for ECDSA, tcId is 428 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6602_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha512_6602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6602_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x42, 0x70, 0xe1, 0x57, 0xda, 0x75, 0xfb, 0x6c, 0xb9, 0x2a, 0x9f, 0x07, 0xdc, 0xad, 0x15, 0x3e, 0xc0, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6602 = { .name = "ecdsa_secp256k1_sha512_6602", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6602_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6602_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6602_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 428 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6603 for ECDSA, tcId is 429 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6603_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6603_sig[] = { 0x66, 0x32, 0x47, 0x3c, 0x90, 0x94, 0x25, 0xb6, 0xfa, 0x37, 0x09, 0x53, 0x98, 0xe2, 0x53, 0x8d, 0xaa, 0xb8, 0x55, 0x24, 0x40, 0x32, 0x0f, 0x9f, 0xe1, 0x90, 0xdb, 0xa8, 0xf6, 0x72, 0x79, 0x6b, 0xa8, 0xc3, 0xaa, 0xcc, 0xe9, 0xff, 0xe4, 0xbc, 0x17, 0xc0, 0x53, 0x07, 0x38, 0xf1, 0x38, 0x6f, 0x9d, 0x95, 0x79, 0xf0, 0x29, 0xff, 0x3a, 0x77, 0x91, 0xb1, 0x6e, 0x98, 0x42, 0x22, 0x65, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6603 = { .name = "ecdsa_secp256k1_sha512_6603", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6603_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha512_6603_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 429 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6604 for ECDSA, tcId is 430 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6604_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6604_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256k1_sha512_6604_sig[] = { 0x46, 0x5b, 0x0f, 0xb0, 0x5c, 0x14, 0xcd, 0x4d, 0xde, 0xf2, 0x3e, 0x13, 0xac, 0xbe, 0x5f, 0x23, 0x37, 0xc4, 0x5e, 0xa3, 0x81, 0x65, 0x36, 0x67, 0x0c, 0xfa, 0x7f, 0x2a, 0xb9, 0x09, 0x06, 0x19, 0x00, 0x5e, 0x52, 0x5e, 0x83, 0x7c, 0x40, 0x6c, 0xf8, 0x94, 0x43, 0x83, 0xe2, 0x0b, 0xce, 0xe3, 0x21, 0x12, 0xd8, 0xda, 0x5b, 0x42, 0xb4, 0x0f, 0x88, 0x41, 0x50, 0x98, 0xf7, 0x22, 0xaa, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6604 = { .name = "ecdsa_secp256k1_sha512_6604", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6604_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6604_msg, .msglen = 3, .sig = ecdsa_secp256k1_sha512_6604_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 430 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6605 for ECDSA, tcId is 431 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6605_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha512_6605_sig[] = { 0x7b, 0x15, 0x53, 0xe4, 0xd6, 0x50, 0xc7, 0x1f, 0xd4, 0x9a, 0xa3, 0x6c, 0xee, 0xd5, 0x6f, 0x04, 0x38, 0xb0, 0x06, 0x5e, 0x1b, 0x23, 0x44, 0x45, 0x13, 0x4b, 0xf7, 0xc8, 0x32, 0x31, 0xca, 0x9d, 0xe3, 0x69, 0xa2, 0x0f, 0xa6, 0x43, 0x4b, 0xd1, 0x38, 0xb0, 0x92, 0x88, 0x5a, 0x89, 0xe5, 0x3a, 0x3f, 0x0b, 0x6b, 0xdc, 0xc5, 0xd2, 0x65, 0x3e, 0x13, 0x6c, 0x54, 0x07, 0x00, 0x81, 0xdc, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6605 = { .name = "ecdsa_secp256k1_sha512_6605", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6605_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6605_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha512_6605_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 431 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6606 for ECDSA, tcId is 432 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6606_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha512_6606_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha512_6606_sig[] = { 0xc7, 0xba, 0x1c, 0x73, 0xbd, 0xc4, 0x36, 0x4f, 0x6c, 0x7c, 0x61, 0xab, 0x1f, 0xec, 0xc0, 0x54, 0x7f, 0x8d, 0x6f, 0xcb, 0xeb, 0x25, 0x1f, 0x73, 0x49, 0x64, 0x40, 0x75, 0x36, 0x35, 0x3f, 0x32, 0x7b, 0x3a, 0x6f, 0xb2, 0xfe, 0x60, 0xf8, 0x86, 0x1e, 0x9e, 0x09, 0x55, 0x66, 0x3f, 0x57, 0x03, 0xa1, 0x7f, 0x5e, 0xcc, 0x3a, 0x5b, 0x51, 0x40, 0xeb, 0x87, 0xea, 0xf3, 0x5a, 0x3a, 0x50, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6606 = { .name = "ecdsa_secp256k1_sha512_6606", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6606_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6606_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha512_6606_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 432 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6607 for ECDSA, tcId is 433 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6607_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6607_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6607_sig[] = { 0x2b, 0x9c, 0x9f, 0x85, 0x59, 0x6f, 0xed, 0x70, 0x8b, 0x3a, 0xf8, 0x03, 0x93, 0xb2, 0x7e, 0xdf, 0xd0, 0xb5, 0xae, 0x2f, 0x00, 0x74, 0x27, 0x0a, 0x56, 0x36, 0x2f, 0x5f, 0x9f, 0x62, 0xb4, 0xe1, 0x2f, 0xae, 0x83, 0x75, 0x03, 0xba, 0x2c, 0x1d, 0x4c, 0x94, 0x5e, 0x09, 0x13, 0x94, 0x9e, 0xf0, 0x94, 0xce, 0x0b, 0x80, 0x86, 0x35, 0x9b, 0xbb, 0x5d, 0xba, 0x4a, 0x12, 0x70, 0x7c, 0x56, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6607 = { .name = "ecdsa_secp256k1_sha512_6607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6607_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6607_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6607_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 433 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6608 for ECDSA, tcId is 434 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6608_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6608_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6608_sig[] = { 0x5c, 0xd7, 0x65, 0x20, 0x90, 0x21, 0xd8, 0xc1, 0xa8, 0xae, 0xf4, 0xff, 0x61, 0xd6, 0xfa, 0x6e, 0x79, 0x93, 0xbf, 0x9f, 0xea, 0x0b, 0x93, 0x60, 0x9e, 0xea, 0x13, 0x0d, 0xe5, 0x36, 0xfc, 0xcc, 0x4f, 0x10, 0xc7, 0x98, 0x95, 0x87, 0xfe, 0x30, 0x19, 0xe3, 0x6d, 0x85, 0xaa, 0x02, 0x4b, 0xf2, 0x0d, 0xb6, 0x73, 0x7c, 0x4f, 0x28, 0x90, 0x0c, 0x1c, 0x96, 0x62, 0xf2, 0x78, 0x21, 0x43, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6608 = { .name = "ecdsa_secp256k1_sha512_6608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6608_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6608_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6608_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 434 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6609 for ECDSA, tcId is 435 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6609_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha512_6609_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6609_sig[] = { 0x4c, 0x1a, 0x59, 0xb1, 0xe5, 0x78, 0xd7, 0x6f, 0x15, 0x95, 0xe1, 0x3b, 0x55, 0x70, 0x57, 0x55, 0x9f, 0x26, 0xab, 0x55, 0x9e, 0xc1, 0xdf, 0x3f, 0x45, 0xec, 0x98, 0xb9, 0x0f, 0xa5, 0x26, 0xce, 0xc6, 0x87, 0x2f, 0x09, 0x4b, 0xdb, 0x3f, 0x82, 0xe3, 0x1f, 0x93, 0xad, 0x65, 0x35, 0x7e, 0x2d, 0xaa, 0xfe, 0x66, 0xf3, 0x04, 0xaf, 0x19, 0x70, 0x89, 0xef, 0x0d, 0xc9, 0x4f, 0xf9, 0x06, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6609 = { .name = "ecdsa_secp256k1_sha512_6609", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6609_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6609_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6609_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 435 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6610 for ECDSA, tcId is 436 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6610_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6610_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6610_sig[] = { 0xa3, 0x5d, 0x14, 0x00, 0xd4, 0xcc, 0x7a, 0x8f, 0x61, 0x7b, 0x72, 0x1f, 0xae, 0xe7, 0x11, 0x8a, 0x74, 0x10, 0x3c, 0x46, 0x30, 0xde, 0xc5, 0xaa, 0x47, 0xe0, 0x97, 0x95, 0x1d, 0xaf, 0xc1, 0xa7, 0x95, 0x82, 0x21, 0x02, 0x30, 0x24, 0xe9, 0x7e, 0xf6, 0xdf, 0x35, 0xa2, 0x2e, 0x82, 0x0c, 0x7b, 0xc5, 0xe1, 0x62, 0x99, 0xf3, 0xf1, 0x2e, 0x9d, 0x9b, 0x1b, 0x72, 0x7c, 0x46, 0xd7, 0x95, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6610 = { .name = "ecdsa_secp256k1_sha512_6610", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6610_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6610_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6610_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 436 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6611 for ECDSA, tcId is 437 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6611_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6611_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6611_sig[] = { 0x7f, 0xb7, 0x33, 0xed, 0x73, 0xc7, 0x2f, 0xc4, 0xf4, 0xcf, 0x06, 0x5e, 0x37, 0x0c, 0x73, 0x03, 0x01, 0x31, 0x6f, 0xf4, 0xe9, 0xc6, 0xa8, 0xa7, 0x01, 0x17, 0x0f, 0x60, 0x4c, 0x2d, 0x70, 0xb7, 0x7c, 0xa9, 0xca, 0x98, 0x5d, 0x3d, 0xf4, 0x89, 0x78, 0xb3, 0xa2, 0xf9, 0xc0, 0xbb, 0x8a, 0x58, 0xb2, 0x16, 0xc7, 0x95, 0xe6, 0x87, 0xf7, 0x46, 0x23, 0xa3, 0x32, 0x14, 0x48, 0xbf, 0xa7, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6611 = { .name = "ecdsa_secp256k1_sha512_6611", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6611_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6611_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6611_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 437 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6612 for ECDSA, tcId is 438 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6612_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha512_6612_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6612_sig[] = { 0x95, 0xae, 0x4d, 0xf2, 0xfb, 0xa8, 0x52, 0x4e, 0x11, 0x51, 0xcb, 0x9a, 0x9c, 0x5c, 0x1e, 0xc1, 0x35, 0x7a, 0x66, 0x37, 0x22, 0xa1, 0x83, 0x29, 0x30, 0x3d, 0x86, 0xa5, 0x8e, 0x70, 0x47, 0x54, 0x59, 0x1e, 0xa6, 0x44, 0xb1, 0xdc, 0x6f, 0x4c, 0x7c, 0xd5, 0xd7, 0xd9, 0x39, 0x39, 0x7f, 0x84, 0xd9, 0xe0, 0x77, 0x10, 0x07, 0x60, 0xf0, 0x81, 0x6a, 0xe5, 0xb2, 0x2a, 0xe6, 0xa7, 0x42, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6612 = { .name = "ecdsa_secp256k1_sha512_6612", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6612_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6612_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6612_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 438 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6613 for ECDSA, tcId is 439 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6613_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6613_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6613_sig[] = { 0x71, 0x79, 0x25, 0xf0, 0xdd, 0x5c, 0xf4, 0x5e, 0x74, 0x6e, 0x87, 0xf7, 0x9c, 0x9e, 0xa9, 0x7d, 0x11, 0xeb, 0x01, 0x44, 0x40, 0x52, 0xc2, 0x70, 0xae, 0xcc, 0xef, 0x56, 0xc2, 0xe9, 0x58, 0x28, 0x78, 0x57, 0x87, 0xb6, 0x64, 0x13, 0x70, 0x80, 0x38, 0x3d, 0x2f, 0xc5, 0x00, 0x45, 0x9f, 0xa7, 0x13, 0x25, 0x82, 0x05, 0xfd, 0xae, 0x97, 0xb3, 0x24, 0x0f, 0xb6, 0x4b, 0xb6, 0x38, 0xa6, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6613 = { .name = "ecdsa_secp256k1_sha512_6613", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6613_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6613_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6613_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 439 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6614 for ECDSA, tcId is 440 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6614_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6614_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6614_sig[] = { 0x8a, 0xdf, 0xde, 0xae, 0x3b, 0x58, 0x63, 0x15, 0xd0, 0x61, 0x83, 0x61, 0x0d, 0x27, 0x1f, 0xc4, 0x23, 0xcc, 0x78, 0x99, 0x08, 0xb8, 0xf5, 0xdc, 0x56, 0x32, 0x53, 0xa3, 0xc7, 0x82, 0x51, 0x0a, 0x81, 0x37, 0xbe, 0xdb, 0xb4, 0xe6, 0x0d, 0xa2, 0x60, 0x41, 0xb3, 0x51, 0xf7, 0x2a, 0x6b, 0xc3, 0xb7, 0x74, 0x1f, 0x74, 0x57, 0x43, 0xf0, 0x73, 0x3b, 0x40, 0xb7, 0xfc, 0x56, 0xfe, 0xbd, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6614 = { .name = "ecdsa_secp256k1_sha512_6614", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6614_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6614_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6614_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 440 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6615 for ECDSA, tcId is 441 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6615_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha512_6615_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6615_sig[] = { 0x92, 0xde, 0xd1, 0x4e, 0x19, 0xb9, 0x4d, 0x17, 0xc7, 0x9b, 0x06, 0x3a, 0x03, 0x4b, 0x12, 0x2c, 0xe3, 0xb9, 0x3a, 0x25, 0x02, 0xf2, 0xf2, 0x23, 0xfa, 0xd3, 0x46, 0x1a, 0xbf, 0x63, 0x16, 0x32, 0x52, 0xff, 0x8a, 0xd1, 0x4b, 0xa3, 0x65, 0x72, 0x42, 0xe2, 0x94, 0x40, 0xd0, 0x1c, 0xab, 0x36, 0xeb, 0xb6, 0x03, 0x3e, 0xe3, 0x60, 0x21, 0xdc, 0x8d, 0x9b, 0x38, 0xf0, 0x80, 0x8a, 0x90, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6615 = { .name = "ecdsa_secp256k1_sha512_6615", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6615_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6615_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6615_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 441 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6616 for ECDSA, tcId is 442 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6616_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6616_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6616_sig[] = { 0xd4, 0x83, 0x73, 0x48, 0x3e, 0x0f, 0xa2, 0xf1, 0x1c, 0xfd, 0xfa, 0xea, 0x6f, 0x1d, 0xe5, 0x9e, 0x68, 0x61, 0xe9, 0xe8, 0x7c, 0x4f, 0x64, 0x46, 0x60, 0x2b, 0xa0, 0x12, 0x5a, 0xb7, 0xde, 0x46, 0x9d, 0x75, 0x3b, 0xba, 0x3a, 0x7b, 0xe0, 0x8a, 0xab, 0x45, 0x6e, 0x93, 0xa6, 0x50, 0x0d, 0x47, 0x81, 0x79, 0x5e, 0xd5, 0x9a, 0xf8, 0xbd, 0x6d, 0x61, 0x33, 0x12, 0x9a, 0xbe, 0xf1, 0xad, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6616 = { .name = "ecdsa_secp256k1_sha512_6616", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6616_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6616_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6616_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 442 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6617 for ECDSA, tcId is 443 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6617_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6617_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6617_sig[] = { 0xf1, 0x14, 0x73, 0x11, 0x7b, 0x66, 0xe5, 0xd8, 0x4a, 0x2e, 0xcd, 0x0f, 0x8b, 0x7e, 0xc4, 0xa2, 0xcc, 0x2a, 0xee, 0x89, 0xae, 0x02, 0x20, 0x20, 0x23, 0x57, 0x77, 0x30, 0x51, 0x42, 0xf4, 0x98, 0xfe, 0x5c, 0xe4, 0x3c, 0xed, 0x28, 0xf3, 0xf6, 0x9f, 0x65, 0xe8, 0x10, 0x67, 0x8a, 0xfe, 0xfd, 0x2b, 0xde, 0xef, 0xb0, 0x51, 0x28, 0x0a, 0xd2, 0x88, 0x01, 0x57, 0xfd, 0xa2, 0x8b, 0x2a, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6617 = { .name = "ecdsa_secp256k1_sha512_6617", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6617_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6617_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6617_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 443 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6618 for ECDSA, tcId is 444 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6618_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha512_6618_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6618_sig[] = { 0x3c, 0x9f, 0x5b, 0xdd, 0xe7, 0x31, 0x0b, 0x56, 0x96, 0xc9, 0x3c, 0x86, 0x20, 0x3f, 0xc9, 0x7e, 0x11, 0xa7, 0x07, 0x39, 0xe2, 0x0c, 0x71, 0xc9, 0xe7, 0x22, 0x30, 0x8d, 0x45, 0xa5, 0x9e, 0x6c, 0xc0, 0x9e, 0xfb, 0x9a, 0x04, 0x5a, 0x47, 0xcc, 0xe7, 0x99, 0xb7, 0x68, 0x89, 0x0b, 0xb1, 0x78, 0x33, 0xa0, 0x21, 0x0d, 0x86, 0x9a, 0x36, 0xbe, 0x1d, 0xa3, 0x3f, 0x25, 0x85, 0x47, 0x7c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6618 = { .name = "ecdsa_secp256k1_sha512_6618", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6618_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6618_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6618_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 444 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6619 for ECDSA, tcId is 445 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6619_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6619_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6619_sig[] = { 0x69, 0x53, 0x44, 0x2c, 0x48, 0x7f, 0x24, 0x04, 0x87, 0xd2, 0xaf, 0x81, 0xf9, 0x82, 0x5c, 0x89, 0x4b, 0x1f, 0xc2, 0x53, 0x43, 0x21, 0xfa, 0x01, 0x2d, 0xb8, 0x24, 0x8b, 0xe2, 0x0a, 0x4b, 0x06, 0x56, 0x92, 0x73, 0x95, 0xd6, 0x4c, 0xe4, 0xd6, 0x90, 0xca, 0xa9, 0x89, 0x44, 0xc2, 0xdd, 0xeb, 0xc3, 0x12, 0xf5, 0x7f, 0x43, 0x9d, 0x37, 0x23, 0x6e, 0xa6, 0x3c, 0xc1, 0xde, 0x09, 0x87, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6619 = { .name = "ecdsa_secp256k1_sha512_6619", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6619_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6619_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6619_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 445 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6620 for ECDSA, tcId is 446 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6620_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6620_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6620_sig[] = { 0xfb, 0x39, 0xaa, 0x5f, 0x36, 0xce, 0xca, 0x6e, 0x68, 0xd1, 0x93, 0x2e, 0x81, 0x15, 0x98, 0xc4, 0x12, 0x89, 0x27, 0x34, 0xda, 0xde, 0x38, 0x9f, 0xd9, 0xe8, 0xba, 0x94, 0xc5, 0xc7, 0xa2, 0x51, 0xfd, 0xdd, 0xf0, 0xc3, 0xdb, 0x66, 0xc7, 0xc4, 0x66, 0x08, 0xac, 0x98, 0x43, 0x1f, 0x0e, 0xe8, 0xeb, 0xb1, 0xe2, 0x7b, 0xa5, 0x01, 0x93, 0x77, 0x89, 0xeb, 0xcd, 0x0f, 0x7a, 0xc2, 0x6e, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6620 = { .name = "ecdsa_secp256k1_sha512_6620", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6620_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6620_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6620_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 446 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6621 for ECDSA, tcId is 447 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6621_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha512_6621_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6621_sig[] = { 0x44, 0xfe, 0xf6, 0x01, 0x76, 0x38, 0xfd, 0x5b, 0xda, 0x17, 0xdf, 0xce, 0x34, 0x6b, 0x03, 0x11, 0xb5, 0xe3, 0x69, 0xbf, 0xb6, 0x8a, 0xa8, 0x5d, 0x5e, 0x97, 0x07, 0x86, 0xb8, 0xe6, 0x64, 0x4b, 0x72, 0x0b, 0x3a, 0x52, 0xfe, 0x44, 0xbe, 0x60, 0x28, 0x75, 0x9f, 0x0f, 0x1a, 0x6f, 0xd7, 0x02, 0x0f, 0xf6, 0x79, 0x2c, 0xd4, 0xec, 0xe9, 0x8d, 0xff, 0xd0, 0xd9, 0x7d, 0x3b, 0x72, 0x60, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6621 = { .name = "ecdsa_secp256k1_sha512_6621", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6621_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6621_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6621_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6622 for ECDSA, tcId is 448 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6622_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6622_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6622_sig[] = { 0x30, 0x4b, 0xab, 0xc4, 0x13, 0x46, 0xe6, 0x20, 0x5c, 0xf0, 0x3e, 0x2d, 0x0b, 0x26, 0xe4, 0xb2, 0x22, 0xdc, 0xe8, 0x22, 0x74, 0x02, 0xd0, 0x01, 0xba, 0x23, 0x3e, 0xfa, 0x69, 0xc9, 0x12, 0x34, 0x00, 0x65, 0xad, 0xd3, 0x27, 0x9f, 0x51, 0xb2, 0x41, 0x7f, 0xb0, 0xa1, 0x3b, 0x0f, 0x06, 0x40, 0x41, 0x99, 0xca, 0xac, 0x34, 0x30, 0x38, 0x55, 0x13, 0xee, 0x49, 0xf6, 0x7d, 0x8e, 0x8c, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6622 = { .name = "ecdsa_secp256k1_sha512_6622", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6622_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6622_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6622_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 448 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6623 for ECDSA, tcId is 449 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6623_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6623_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6623_sig[] = { 0x23, 0x86, 0x87, 0x00, 0xb7, 0x1f, 0xba, 0xfc, 0xaa, 0x73, 0x96, 0x0f, 0xaf, 0x92, 0x2e, 0xe0, 0x45, 0x8e, 0xf6, 0x9e, 0x01, 0xfb, 0x06, 0x0b, 0x2f, 0x9a, 0x80, 0xd9, 0x92, 0xfe, 0x11, 0x4c, 0x6e, 0xc1, 0x52, 0x6b, 0xd5, 0x6f, 0x6e, 0xeb, 0xf1, 0x04, 0x63, 0xbd, 0x92, 0x10, 0xd6, 0x25, 0x10, 0xb9, 0x51, 0x66, 0x36, 0x5e, 0x10, 0xa7, 0xb7, 0xab, 0xfc, 0x4d, 0x58, 0x4c, 0xa3, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6623 = { .name = "ecdsa_secp256k1_sha512_6623", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6623_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6623_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6623_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 449 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6624 for ECDSA, tcId is 450 in file ecdsa_secp256k1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256k1_sha512_6624_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha512_6624_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha512_6624_sig[] = { 0xdd, 0x60, 0xd7, 0xcf, 0x83, 0xa0, 0x82, 0x08, 0x63, 0x72, 0x12, 0xb6, 0x5d, 0x07, 0x9f, 0xb6, 0x58, 0xd8, 0xef, 0x1b, 0x84, 0x38, 0xd9, 0xc5, 0x8f, 0x41, 0x22, 0xb0, 0xcd, 0x14, 0xac, 0x49, 0xf1, 0xd7, 0x62, 0x51, 0x6f, 0x4d, 0x6c, 0x3e, 0x6a, 0x98, 0xdd, 0x31, 0xdc, 0x38, 0x69, 0xdc, 0x7c, 0xf3, 0x59, 0x44, 0xf3, 0x3b, 0x35, 0xc6, 0xa1, 0x7f, 0xe6, 0x32, 0xd2, 0xb1, 0x8c, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha512_6624 = { .name = "ecdsa_secp256k1_sha512_6624", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha512_6624_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha512_6624_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha512_6624_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 450 in file ecdsa_secp256k1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) */ /* Test 6625 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6625_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6625_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6625_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x85, 0x5d, 0x44, 0x2f, 0x5b, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x52, 0x5f, 0xe7, 0x10, 0xfa, 0xb9, 0xaa, 0x7c, 0x77, 0xa6, 0x7f, 0x79, 0xe6, 0xfa, 0xdd, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6625 = { .name = "ecdsa_secp256r1_sha256_6625", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6625_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6625_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6625_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6626 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6626_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6626_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6626_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbd, 0x6b, 0x94, 0xd5, 0xed, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xbc, 0xcc, 0x08, 0x33, 0x49, 0x06, 0x86, 0xde, 0xac, 0x86, 0x35, 0xbc, 0xb9, 0xbf, 0x53, 0x69, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6626 = { .name = "ecdsa_secp256r1_sha256_6626", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6626_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6626_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6626_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6627 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6627_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6627_sig[] = { 0xd4, 0x5c, 0x57, 0x40, 0x94, 0x6b, 0x2a, 0x14, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x90, 0xbd, 0x01, 0xed, 0x28, 0x05, 0x28, 0xb6, 0x2b, 0x3a, 0xed, 0x5f, 0xc9, 0x3f, 0x06, 0xf7, 0x39, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6627 = { .name = "ecdsa_secp256r1_sha256_6627", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6627_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6627_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6627_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6628 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6628_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6628_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6628 = { .name = "ecdsa_secp256r1_sha256_6628", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6628_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6628_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6628_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6629 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6629_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6629_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6629 = { .name = "ecdsa_secp256r1_sha256_6629", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6629_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6629_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6629_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6630 for ECDSA, tcId is 6 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6630_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6630_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x78, 0xa2, 0xbb, 0xd0, 0xa6, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x27, 0x6e, 0x0e, 0x4a, 0x53, 0x75, 0x92, 0x8d, 0x6f, 0xcd, 0x16, 0x0c, 0x11, 0xcb, 0x6d, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6630 = { .name = "ecdsa_secp256r1_sha256_6630", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6630_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6630_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6630_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6631 for ECDSA, tcId is 7 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6631_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6631_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6631 = { .name = "ecdsa_secp256r1_sha256_6631", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6631_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6631_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6631_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6632 for ECDSA, tcId is 8 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6632_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6632_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6632 = { .name = "ecdsa_secp256r1_sha256_6632", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6632_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6632_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6632_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6633 for ECDSA, tcId is 9 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6633_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6633_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6633 = { .name = "ecdsa_secp256r1_sha256_6633", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6633_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6633_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6633_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6634 for ECDSA, tcId is 10 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6634_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6634_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6634 = { .name = "ecdsa_secp256r1_sha256_6634", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6634_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6634_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6634_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6635 for ECDSA, tcId is 11 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6635_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6635_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6635 = { .name = "ecdsa_secp256r1_sha256_6635", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6635_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6635_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6635_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6636 for ECDSA, tcId is 12 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6636_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6636_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6636 = { .name = "ecdsa_secp256r1_sha256_6636", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6636_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6636_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6636_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6637 for ECDSA, tcId is 13 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6637_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6637_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6637 = { .name = "ecdsa_secp256r1_sha256_6637", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6637_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6637_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6637_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6638 for ECDSA, tcId is 14 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6638_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6638_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6638 = { .name = "ecdsa_secp256r1_sha256_6638", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6638_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6638_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6638_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6639 for ECDSA, tcId is 15 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6639_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6639_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6639 = { .name = "ecdsa_secp256r1_sha256_6639", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6639_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6639_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6639_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6640 for ECDSA, tcId is 16 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6640_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6640_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6640 = { .name = "ecdsa_secp256r1_sha256_6640", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6640_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6640_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6640_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6641 for ECDSA, tcId is 17 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6641_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6641_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6641 = { .name = "ecdsa_secp256r1_sha256_6641", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6641_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6641_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6641_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6642 for ECDSA, tcId is 18 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6642_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6642_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6642 = { .name = "ecdsa_secp256r1_sha256_6642", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6642_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6642_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6642_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6643 for ECDSA, tcId is 19 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6643_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6643_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6643 = { .name = "ecdsa_secp256r1_sha256_6643", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6643_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6643_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6643_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6644 for ECDSA, tcId is 20 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6644_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6644_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6644 = { .name = "ecdsa_secp256r1_sha256_6644", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6644_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6644_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6644_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6645 for ECDSA, tcId is 21 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6645_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6645_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6645 = { .name = "ecdsa_secp256r1_sha256_6645", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6645_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6645_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6645_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6646 for ECDSA, tcId is 22 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6646_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6646_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6646 = { .name = "ecdsa_secp256r1_sha256_6646", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6646_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6646_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6646_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6647 for ECDSA, tcId is 23 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6647_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6647_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6647 = { .name = "ecdsa_secp256r1_sha256_6647", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6647_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6647_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6647_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6648 for ECDSA, tcId is 24 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6648_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6648_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6648 = { .name = "ecdsa_secp256r1_sha256_6648", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6648_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6648_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6648_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6649 for ECDSA, tcId is 25 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6649_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6649_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6649 = { .name = "ecdsa_secp256r1_sha256_6649", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6649_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6649_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6649_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6650 for ECDSA, tcId is 26 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6650_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6650_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6650 = { .name = "ecdsa_secp256r1_sha256_6650", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6650_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6650_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6650_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6651 for ECDSA, tcId is 27 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6651_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6651_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6651 = { .name = "ecdsa_secp256r1_sha256_6651", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6651_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6651_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6651_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6652 for ECDSA, tcId is 28 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6652_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6652_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6652 = { .name = "ecdsa_secp256r1_sha256_6652", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6652_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6652_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6652_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6653 for ECDSA, tcId is 29 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6653_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6653_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6653 = { .name = "ecdsa_secp256r1_sha256_6653", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6653_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6653_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6653_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6654 for ECDSA, tcId is 30 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6654_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6654_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6654 = { .name = "ecdsa_secp256r1_sha256_6654", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6654_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6654_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6654_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6655 for ECDSA, tcId is 31 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6655_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6655_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6655 = { .name = "ecdsa_secp256r1_sha256_6655", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6655_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6655_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6655_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6656 for ECDSA, tcId is 32 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6656_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6656_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6656 = { .name = "ecdsa_secp256r1_sha256_6656", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6656_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6656_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6656_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6657 for ECDSA, tcId is 33 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6657_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6657_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6657 = { .name = "ecdsa_secp256r1_sha256_6657", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6657_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6657_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6657_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6658 for ECDSA, tcId is 34 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6658_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6658_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6658 = { .name = "ecdsa_secp256r1_sha256_6658", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6658_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6658_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6658_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6659 for ECDSA, tcId is 35 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6659_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6659_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6659 = { .name = "ecdsa_secp256r1_sha256_6659", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6659_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6659_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6659_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6660 for ECDSA, tcId is 36 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6660_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6660_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6660 = { .name = "ecdsa_secp256r1_sha256_6660", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6660_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6660_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6660_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6661 for ECDSA, tcId is 37 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6661_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6661_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6661 = { .name = "ecdsa_secp256r1_sha256_6661", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6661_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6661_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6661_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6662 for ECDSA, tcId is 38 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6662_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6662_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6662 = { .name = "ecdsa_secp256r1_sha256_6662", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6662_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6662_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6662_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6663 for ECDSA, tcId is 39 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6663_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6663_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6663 = { .name = "ecdsa_secp256r1_sha256_6663", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6663_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6663_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6663_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6664 for ECDSA, tcId is 40 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6664_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6664_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6664 = { .name = "ecdsa_secp256r1_sha256_6664", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6664_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6664_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6664_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6665 for ECDSA, tcId is 41 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6665_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6665_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6665 = { .name = "ecdsa_secp256r1_sha256_6665", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6665_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6665_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6665_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6666 for ECDSA, tcId is 42 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6666_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6666_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6666 = { .name = "ecdsa_secp256r1_sha256_6666", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6666_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6666_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6666_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6667 for ECDSA, tcId is 43 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6667_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6667_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6667 = { .name = "ecdsa_secp256r1_sha256_6667", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6667_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6667_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6667_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6668 for ECDSA, tcId is 44 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6668_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6668_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6668 = { .name = "ecdsa_secp256r1_sha256_6668", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6668_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6668_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6668_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6669 for ECDSA, tcId is 45 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6669_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6669_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6669 = { .name = "ecdsa_secp256r1_sha256_6669", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6669_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6669_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6669_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6670 for ECDSA, tcId is 46 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6670_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6670_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6670 = { .name = "ecdsa_secp256r1_sha256_6670", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6670_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6670_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6670_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6671 for ECDSA, tcId is 47 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6671_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6671_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6671 = { .name = "ecdsa_secp256r1_sha256_6671", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6671_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6671_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6671_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6672 for ECDSA, tcId is 48 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6672_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6672_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6672 = { .name = "ecdsa_secp256r1_sha256_6672", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6672_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6672_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6672_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6673 for ECDSA, tcId is 49 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6673_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6673_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6673 = { .name = "ecdsa_secp256r1_sha256_6673", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6673_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6673_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6673_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6674 for ECDSA, tcId is 50 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6674_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6674_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6674 = { .name = "ecdsa_secp256r1_sha256_6674", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6674_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6674_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6674_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6675 for ECDSA, tcId is 51 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6675_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6675_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6675 = { .name = "ecdsa_secp256r1_sha256_6675", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6675_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6675_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6675_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6676 for ECDSA, tcId is 52 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6676_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6676_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6676 = { .name = "ecdsa_secp256r1_sha256_6676", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6676_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6676_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6676_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6677 for ECDSA, tcId is 53 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6677_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6677_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6677 = { .name = "ecdsa_secp256r1_sha256_6677", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6677_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6677_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6677_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6678 for ECDSA, tcId is 54 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6678_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6678_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6678 = { .name = "ecdsa_secp256r1_sha256_6678", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6678_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6678_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6678_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6679 for ECDSA, tcId is 55 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6679_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6679_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6679 = { .name = "ecdsa_secp256r1_sha256_6679", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6679_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6679_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6679_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6680 for ECDSA, tcId is 56 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6680_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6680_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6680 = { .name = "ecdsa_secp256r1_sha256_6680", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6680_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6680_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6680_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6681 for ECDSA, tcId is 57 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6681_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6681_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6681 = { .name = "ecdsa_secp256r1_sha256_6681", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6681_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6681_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6681_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6682 for ECDSA, tcId is 58 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6682_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6682_msg[] = { 0x36, 0x39, 0x38, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6682_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x6a, 0xf0, 0x15, 0x97, 0x1c, 0xc3, 0x0b, 0xe6, 0xd1, 0xa2, 0x06, 0xd4, 0xe0, 0x13, 0xe0, 0x99, 0x77, 0x72, 0xa2, 0xf9, 0x1d, 0x73, 0x28, 0x6f, 0xfd, 0x68, 0x3b, 0x9b, 0xb2, 0xcf, 0x4f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6682 = { .name = "ecdsa_secp256r1_sha256_6682", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6682_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6682_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha256_6682_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6683 for ECDSA, tcId is 59 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6683_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6683_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6683_sig[] = { 0x16, 0xae, 0xa9, 0x64, 0xa2, 0xf6, 0x50, 0x6d, 0x6f, 0x78, 0xc8, 0x1c, 0x91, 0xfc, 0x7e, 0x8b, 0xde, 0xd7, 0xd3, 0x97, 0x73, 0x84, 0x48, 0xde, 0x1e, 0x19, 0xa0, 0xec, 0x58, 0x0b, 0xf2, 0x66, 0x25, 0x2c, 0xd7, 0x62, 0x13, 0x0c, 0x66, 0x67, 0xcf, 0xe8, 0xb7, 0xbc, 0x47, 0xd2, 0x7d, 0x78, 0x39, 0x1e, 0x8e, 0x80, 0xc5, 0x78, 0xd1, 0xcd, 0x38, 0xc3, 0xff, 0x03, 0x3b, 0xe9, 0x28, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6683 = { .name = "ecdsa_secp256r1_sha256_6683", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6683_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6683_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6683_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6684 for ECDSA, tcId is 60 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6684_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6684_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6684_sig[] = { 0x9c, 0xc9, 0x8b, 0xe2, 0x34, 0x7d, 0x46, 0x9b, 0xf4, 0x76, 0xdf, 0xc2, 0x6b, 0x9b, 0x73, 0x3d, 0xf2, 0xd2, 0x6d, 0x6e, 0xf5, 0x24, 0xaf, 0x91, 0x7c, 0x66, 0x5b, 0xac, 0xcb, 0x23, 0xc8, 0x82, 0x09, 0x34, 0x96, 0x45, 0x9e, 0xff, 0xe2, 0xd8, 0xd7, 0x07, 0x27, 0xb8, 0x24, 0x62, 0xf6, 0x1d, 0x0e, 0xc1, 0xb7, 0x84, 0x79, 0x29, 0xd1, 0x0e, 0xa6, 0x31, 0xda, 0xcb, 0x16, 0xb5, 0x6c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6684 = { .name = "ecdsa_secp256r1_sha256_6684", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6684_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6684_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6684_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6685 for ECDSA, tcId is 61 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6685_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6685_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6685_sig[] = { 0x73, 0xb3, 0xc9, 0x0e, 0xcd, 0x39, 0x00, 0x28, 0x05, 0x81, 0x64, 0x52, 0x4d, 0xde, 0x89, 0x27, 0x03, 0xdc, 0xe3, 0xde, 0xa0, 0xd5, 0x3f, 0xa8, 0x09, 0x39, 0x99, 0xf0, 0x7a, 0xb8, 0xaa, 0x43, 0x2f, 0x67, 0xb0, 0xb8, 0xe2, 0x06, 0x36, 0x69, 0x5b, 0xb7, 0xd8, 0xbf, 0x0a, 0x65, 0x1c, 0x80, 0x2e, 0xd2, 0x5a, 0x39, 0x53, 0x87, 0xb5, 0xf4, 0x18, 0x8c, 0x0c, 0x40, 0x75, 0xc8, 0x86, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6685 = { .name = "ecdsa_secp256r1_sha256_6685", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6685_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6685_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6685_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6686 for ECDSA, tcId is 62 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6686_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6686_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6686_sig[] = { 0xbf, 0xab, 0x30, 0x98, 0x25, 0x28, 0x47, 0xb3, 0x28, 0xfa, 0xdf, 0x2f, 0x89, 0xb9, 0x5c, 0x85, 0x1a, 0x7f, 0x0e, 0xb3, 0x90, 0x76, 0x33, 0x78, 0xf3, 0x7e, 0x90, 0x11, 0x9d, 0x5b, 0xa3, 0xdd, 0xbd, 0xd6, 0x4e, 0x23, 0x4e, 0x83, 0x2b, 0x10, 0x67, 0xc2, 0xd0, 0x58, 0xcc, 0xb4, 0x4d, 0x97, 0x81, 0x95, 0xcc, 0xeb, 0xb6, 0x5c, 0x2a, 0xaf, 0x1e, 0x2d, 0xa9, 0xb8, 0xb4, 0x98, 0x7e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6686 = { .name = "ecdsa_secp256r1_sha256_6686", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6686_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6686_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6686_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6687 for ECDSA, tcId is 63 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6687_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6687_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6687_sig[] = { 0x20, 0x4a, 0x97, 0x84, 0x07, 0x4b, 0x24, 0x6d, 0x8b, 0xf8, 0xbf, 0x04, 0xa4, 0xce, 0xb1, 0xc1, 0xf1, 0xc9, 0xaa, 0xab, 0x16, 0x8b, 0x15, 0x96, 0xd1, 0x70, 0x93, 0xc5, 0xcd, 0x21, 0xd2, 0xcd, 0x51, 0xcc, 0xe4, 0x16, 0x70, 0x63, 0x67, 0x83, 0xdc, 0x06, 0xa7, 0x59, 0xc8, 0x84, 0x78, 0x68, 0xa4, 0x06, 0xc2, 0x50, 0x6f, 0xe1, 0x79, 0x75, 0x58, 0x2f, 0xe6, 0x48, 0xd1, 0xd8, 0x8b, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6687 = { .name = "ecdsa_secp256r1_sha256_6687", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6687_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6687_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6687_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6688 for ECDSA, tcId is 64 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6688_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6688_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6688_sig[] = { 0xed, 0x66, 0xdc, 0x34, 0xf5, 0x51, 0xac, 0x82, 0xf6, 0x3d, 0x4a, 0xa4, 0xf8, 0x1f, 0xe2, 0xcb, 0x00, 0x31, 0xa9, 0x1d, 0x13, 0x14, 0xf8, 0x35, 0x02, 0x7b, 0xca, 0x0f, 0x1c, 0xee, 0xaa, 0x03, 0x99, 0xca, 0x12, 0x3a, 0xa0, 0x9b, 0x13, 0xcd, 0x19, 0x4a, 0x42, 0x2e, 0x18, 0xd5, 0xfd, 0xa1, 0x67, 0x62, 0x3c, 0x3f, 0x6e, 0x5d, 0x4d, 0x6a, 0xbb, 0x89, 0x53, 0xd6, 0x7c, 0x0c, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6688 = { .name = "ecdsa_secp256r1_sha256_6688", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6688_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6688_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6688_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6689 for ECDSA, tcId is 65 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6689_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6689_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6689_sig[] = { 0x06, 0x0b, 0x70, 0x0b, 0xef, 0x66, 0x5c, 0x68, 0x89, 0x9d, 0x44, 0xf2, 0x35, 0x6a, 0x57, 0x8d, 0x12, 0x6b, 0x06, 0x20, 0x23, 0xcc, 0xc3, 0xc0, 0x56, 0xbf, 0x0f, 0x60, 0xa2, 0x37, 0x01, 0x2b, 0x8d, 0x18, 0x6c, 0x02, 0x78, 0x32, 0x96, 0x5f, 0x4f, 0xcc, 0x78, 0xa3, 0x36, 0x6c, 0xa9, 0x5d, 0xed, 0xbb, 0x41, 0x0c, 0xbe, 0xf3, 0xf2, 0x6d, 0x6b, 0xe5, 0xd5, 0x81, 0xc1, 0x1d, 0x36, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6689 = { .name = "ecdsa_secp256r1_sha256_6689", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6689_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6689_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6689_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6690 for ECDSA, tcId is 66 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6690_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6690_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6690_sig[] = { 0x9f, 0x6a, 0xdf, 0xe8, 0xd5, 0xeb, 0x5b, 0x2c, 0x24, 0xd7, 0xaa, 0x79, 0x34, 0xb6, 0xcf, 0x29, 0xc9, 0x3e, 0xa7, 0x6c, 0xd3, 0x13, 0xc9, 0x13, 0x2b, 0xb0, 0xc8, 0xe3, 0x8c, 0x96, 0x83, 0x1d, 0xb2, 0x6a, 0x9c, 0x9e, 0x40, 0xe5, 0x5e, 0xe0, 0x89, 0x0c, 0x94, 0x4c, 0xf2, 0x71, 0x75, 0x6c, 0x90, 0x6a, 0x33, 0xe6, 0x6b, 0x5b, 0xd1, 0x5e, 0x05, 0x15, 0x93, 0x88, 0x3b, 0x5e, 0x99, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6690 = { .name = "ecdsa_secp256r1_sha256_6690", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6690_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6690_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6690_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6691 for ECDSA, tcId is 67 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6691_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6691_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6691_sig[] = { 0xa1, 0xaf, 0x03, 0xca, 0x91, 0x67, 0x7b, 0x67, 0x3a, 0xd2, 0xf3, 0x36, 0x15, 0xe5, 0x61, 0x74, 0xa1, 0xab, 0xf6, 0xda, 0x16, 0x8c, 0xeb, 0xfa, 0x88, 0x68, 0xf4, 0xba, 0x27, 0x3f, 0x16, 0xb7, 0x20, 0xaa, 0x73, 0xff, 0xe4, 0x8a, 0xfa, 0x64, 0x35, 0xcd, 0x25, 0x8b, 0x17, 0x3d, 0x0c, 0x23, 0x77, 0xd6, 0x90, 0x22, 0xe7, 0xd0, 0x98, 0xd7, 0x5c, 0xaf, 0x24, 0xc8, 0xc5, 0xe0, 0x6b, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6691 = { .name = "ecdsa_secp256r1_sha256_6691", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6691_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6691_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6691_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6692 for ECDSA, tcId is 68 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6692_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6692_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6692_sig[] = { 0xfd, 0xc7, 0x06, 0x02, 0x76, 0x6f, 0x8e, 0xed, 0x11, 0xa6, 0xc9, 0x9a, 0x71, 0xc9, 0x73, 0xd5, 0x65, 0x93, 0x55, 0x50, 0x7b, 0x84, 0x3d, 0xa6, 0xe3, 0x27, 0xa2, 0x8c, 0x11, 0x89, 0x3d, 0xb9, 0x3d, 0xf5, 0x34, 0x96, 0x88, 0xa0, 0x85, 0xb1, 0x37, 0xb1, 0xea, 0xcf, 0x45, 0x6a, 0x9e, 0x9e, 0x0f, 0x6d, 0x15, 0xec, 0x00, 0x78, 0xca, 0x60, 0xa7, 0xf8, 0x3f, 0x2b, 0x10, 0xd2, 0x13, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6692 = { .name = "ecdsa_secp256r1_sha256_6692", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6692_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6692_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6692_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6693 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6693_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6693_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6693_sig[] = { 0xb5, 0x16, 0xa3, 0x14, 0xf2, 0xfc, 0xe5, 0x30, 0xd6, 0x53, 0x7f, 0x6a, 0x6c, 0x49, 0x96, 0x6c, 0x23, 0x45, 0x6f, 0x63, 0xc6, 0x43, 0xcf, 0x8e, 0x0d, 0xc7, 0x38, 0xf7, 0xb8, 0x76, 0xe6, 0x75, 0xd3, 0x9f, 0xfd, 0x03, 0x3c, 0x92, 0xb6, 0xd7, 0x17, 0xdd, 0x53, 0x6f, 0xbc, 0x5e, 0xfd, 0xf1, 0x96, 0x7c, 0x4b, 0xd8, 0x09, 0x54, 0x47, 0x9b, 0xa6, 0x6b, 0x01, 0x20, 0xcd, 0x16, 0xff, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6693 = { .name = "ecdsa_secp256r1_sha256_6693", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6693_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6693_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6693_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6694 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6694_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6694_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6694_sig[] = { 0x3b, 0x2c, 0xbf, 0x04, 0x6e, 0xac, 0x45, 0x84, 0x2e, 0xcb, 0x79, 0x84, 0xd4, 0x75, 0x83, 0x15, 0x82, 0x71, 0x7b, 0xeb, 0xb6, 0x49, 0x2f, 0xd0, 0xa4, 0x85, 0xc1, 0x01, 0xe2, 0x9f, 0xf0, 0xa8, 0x4c, 0x9b, 0x7b, 0x47, 0xa9, 0x8b, 0x0f, 0x82, 0xde, 0x51, 0x2b, 0xc9, 0x31, 0x3a, 0xaf, 0x51, 0x70, 0x10, 0x99, 0xca, 0xc5, 0xf7, 0x6e, 0x68, 0xc8, 0x59, 0x5f, 0xc1, 0xc1, 0xd9, 0x92, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6694 = { .name = "ecdsa_secp256r1_sha256_6694", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6694_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6694_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6694_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6695 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6695_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6695_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6695_sig[] = { 0x30, 0xc8, 0x7d, 0x35, 0xe6, 0x36, 0xf5, 0x40, 0x84, 0x1f, 0x14, 0xaf, 0x54, 0xe2, 0xf9, 0xed, 0xd7, 0x9d, 0x03, 0x12, 0xcf, 0xa1, 0xab, 0x65, 0x6c, 0x3f, 0xb1, 0x5b, 0xfd, 0xe4, 0x8d, 0xcf, 0x47, 0xc1, 0x5a, 0x5a, 0x82, 0xd2, 0x4b, 0x75, 0xc8, 0x5a, 0x69, 0x2b, 0xd6, 0xec, 0xaf, 0xeb, 0x71, 0x40, 0x9e, 0xde, 0x23, 0xef, 0xd0, 0x8e, 0x0d, 0xb9, 0xab, 0xf6, 0x34, 0x06, 0x77, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6695 = { .name = "ecdsa_secp256r1_sha256_6695", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6695_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6695_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6695_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6696 for ECDSA, tcId is 72 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6696_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6696_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6696_sig[] = { 0x38, 0x68, 0x6f, 0xf0, 0xfd, 0xa2, 0xce, 0xf6, 0xbc, 0x43, 0xb5, 0x8c, 0xfe, 0x66, 0x47, 0xb9, 0xe2, 0xe8, 0x17, 0x6d, 0x16, 0x8d, 0xec, 0x3c, 0x68, 0xff, 0x26, 0x21, 0x13, 0x76, 0x0f, 0x52, 0x06, 0x7e, 0xc3, 0xb6, 0x51, 0xf4, 0x22, 0x66, 0x96, 0x01, 0x66, 0x21, 0x67, 0xfa, 0x87, 0x17, 0xe9, 0x76, 0xe2, 0xdb, 0x5e, 0x6a, 0x4c, 0xf7, 0xc2, 0xdd, 0xab, 0xb3, 0xfd, 0xe9, 0xd6, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6696 = { .name = "ecdsa_secp256r1_sha256_6696", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6696_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6696_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6696_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6697 for ECDSA, tcId is 73 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6697_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6697_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6697_sig[] = { 0x44, 0xa3, 0xe2, 0x3b, 0xf3, 0x14, 0xf2, 0xb3, 0x44, 0xfc, 0x25, 0xc7, 0xf2, 0xde, 0x8b, 0x6a, 0xf3, 0xe1, 0x7d, 0x27, 0xf5, 0xee, 0x84, 0x4b, 0x22, 0x59, 0x85, 0xab, 0x6e, 0x27, 0x75, 0xcf, 0x2d, 0x48, 0xe2, 0x23, 0x20, 0x5e, 0x98, 0x04, 0x1d, 0xdc, 0x87, 0xbe, 0x53, 0x2a, 0xbe, 0xd5, 0x84, 0xf0, 0x41, 0x1f, 0x57, 0x29, 0x50, 0x04, 0x93, 0xc9, 0xcc, 0x3f, 0x4d, 0xd1, 0x5e, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6697 = { .name = "ecdsa_secp256r1_sha256_6697", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6697_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6697_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6697_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6698 for ECDSA, tcId is 74 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6698_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6698_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6698_sig[] = { 0x2d, 0xed, 0x5b, 0x7e, 0xc8, 0xe9, 0x0e, 0x7b, 0xf1, 0x1f, 0x96, 0x7a, 0x3d, 0x95, 0x11, 0x0c, 0x41, 0xb9, 0x9d, 0xb3, 0xb5, 0xaa, 0x8d, 0x33, 0x0e, 0xb9, 0xd6, 0x38, 0x78, 0x16, 0x88, 0xe9, 0x7d, 0x57, 0x92, 0xc5, 0x36, 0x28, 0x15, 0x5e, 0x1b, 0xfc, 0x46, 0xfb, 0x1a, 0x67, 0xe3, 0x08, 0x8d, 0xe0, 0x49, 0xc3, 0x28, 0xae, 0x1f, 0x44, 0xec, 0x69, 0x23, 0x8a, 0x00, 0x98, 0x08, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6698 = { .name = "ecdsa_secp256r1_sha256_6698", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6698_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6698_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6698_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6699 for ECDSA, tcId is 75 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6699_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6699_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6699_sig[] = { 0xbd, 0xae, 0x7b, 0xcb, 0x58, 0x0b, 0xf3, 0x35, 0xef, 0xd3, 0xbc, 0x3d, 0x31, 0x87, 0x0f, 0x92, 0x3e, 0xac, 0xca, 0xfc, 0xd4, 0x0e, 0xc2, 0xf6, 0x05, 0x97, 0x6f, 0x15, 0x13, 0x7d, 0x8b, 0x8f, 0xf6, 0xdf, 0xa1, 0x2f, 0x19, 0xe5, 0x25, 0x27, 0x0b, 0x01, 0x06, 0xee, 0xcf, 0xe2, 0x57, 0x49, 0x9f, 0x37, 0x3a, 0x4f, 0xb3, 0x18, 0x99, 0x4f, 0x24, 0x83, 0x81, 0x22, 0xce, 0x7e, 0xc3, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6699 = { .name = "ecdsa_secp256r1_sha256_6699", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6699_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6699_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6699_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6700 for ECDSA, tcId is 76 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6700_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6700_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6700_sig[] = { 0x50, 0xf9, 0xc4, 0xf0, 0xcd, 0x69, 0x40, 0xe1, 0x62, 0x72, 0x09, 0x57, 0xff, 0xff, 0x51, 0x37, 0x99, 0x20, 0x9b, 0x78, 0x59, 0x69, 0x56, 0xd2, 0x1e, 0xce, 0x25, 0x1c, 0x24, 0x01, 0xf1, 0xc6, 0xd7, 0x03, 0x3a, 0x0a, 0x78, 0x7d, 0x33, 0x8e, 0x88, 0x9d, 0xef, 0xaa, 0xab, 0xb1, 0x06, 0xb9, 0x5a, 0x43, 0x55, 0xe4, 0x11, 0xa5, 0x9c, 0x32, 0xaa, 0x51, 0x67, 0xdf, 0xab, 0x24, 0x47, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6700 = { .name = "ecdsa_secp256r1_sha256_6700", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6700_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6700_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6700_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6701 for ECDSA, tcId is 77 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6701_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6701_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6701_sig[] = { 0xf6, 0x12, 0x82, 0x06, 0x87, 0x60, 0x4f, 0xa0, 0x19, 0x06, 0x06, 0x6a, 0x37, 0x8d, 0x67, 0x54, 0x09, 0x82, 0xe2, 0x95, 0x75, 0xd0, 0x19, 0xaa, 0xbe, 0x90, 0x92, 0x4e, 0xad, 0x5c, 0x86, 0x0d, 0x3f, 0x93, 0x67, 0x70, 0x2d, 0xd7, 0xdd, 0x4f, 0x75, 0xea, 0x98, 0xaf, 0xd2, 0x0e, 0x32, 0x8a, 0x1a, 0x99, 0xf4, 0x85, 0x7b, 0x31, 0x65, 0x25, 0x32, 0x82, 0x30, 0xce, 0x29, 0x4b, 0x0f, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6701 = { .name = "ecdsa_secp256r1_sha256_6701", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6701_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6701_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6701_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6702 for ECDSA, tcId is 78 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6702_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6702_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6702_sig[] = { 0x95, 0x05, 0xe4, 0x07, 0x65, 0x7d, 0x6e, 0x8b, 0xc9, 0x3d, 0xb5, 0xda, 0x7a, 0xa6, 0xf5, 0x08, 0x1f, 0x61, 0x98, 0x0c, 0x19, 0x49, 0xf5, 0x6b, 0x0f, 0x2f, 0x50, 0x7d, 0xa5, 0x78, 0x2a, 0x7a, 0xc6, 0x0d, 0x31, 0x90, 0x4e, 0x36, 0x69, 0x73, 0x8f, 0xfb, 0xec, 0xca, 0xb6, 0xc3, 0x65, 0x6c, 0x08, 0xe0, 0xed, 0x5c, 0xb9, 0x2b, 0x3c, 0xfa, 0x5e, 0x7f, 0x71, 0x78, 0x4f, 0x9c, 0x50, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6702 = { .name = "ecdsa_secp256r1_sha256_6702", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6702_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6702_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6702_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6703 for ECDSA, tcId is 79 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6703_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6703_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6703_sig[] = { 0xbb, 0xd1, 0x6f, 0xbb, 0xb6, 0x56, 0xb6, 0xd0, 0xd8, 0x3e, 0x6a, 0x77, 0x87, 0xcd, 0x69, 0x1b, 0x08, 0x73, 0x5a, 0xed, 0x37, 0x17, 0x32, 0x72, 0x3e, 0x1c, 0x68, 0xa4, 0x04, 0x04, 0x51, 0x7d, 0x9d, 0x8e, 0x35, 0xdb, 0xa9, 0x60, 0x28, 0xb7, 0x78, 0x7d, 0x91, 0x31, 0x5b, 0xe6, 0x75, 0x87, 0x7d, 0x2d, 0x09, 0x7b, 0xe5, 0xe8, 0xee, 0x34, 0x56, 0x0e, 0x3e, 0x7f, 0xd2, 0x5c, 0x0f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6703 = { .name = "ecdsa_secp256r1_sha256_6703", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6703_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6703_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6703_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6704 for ECDSA, tcId is 80 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6704_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6704_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6704_sig[] = { 0x2e, 0xc9, 0x76, 0x01, 0x22, 0xdb, 0x98, 0xfd, 0x06, 0xea, 0x76, 0x84, 0x8d, 0x35, 0xa6, 0xda, 0x44, 0x2d, 0x2c, 0xee, 0xf7, 0x55, 0x9a, 0x30, 0xcf, 0x57, 0xc6, 0x1e, 0x92, 0xdf, 0x32, 0x7e, 0x7a, 0xb2, 0x71, 0xda, 0x90, 0x85, 0x94, 0x79, 0x70, 0x1f, 0xcc, 0xf8, 0x6e, 0x46, 0x2e, 0xe3, 0x39, 0x3f, 0xb6, 0x81, 0x4c, 0x27, 0xb7, 0x60, 0xc4, 0x96, 0x36, 0x25, 0xc0, 0xa1, 0x98, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6704 = { .name = "ecdsa_secp256r1_sha256_6704", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6704_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6704_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6704_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6705 for ECDSA, tcId is 81 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6705_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6705_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6705_sig[] = { 0x54, 0xe7, 0x6b, 0x76, 0x83, 0xb6, 0x65, 0x0b, 0xaa, 0x6a, 0x7f, 0xc4, 0x9b, 0x1c, 0x51, 0xee, 0xd9, 0xba, 0x9d, 0xd4, 0x63, 0x22, 0x1f, 0x7a, 0x4f, 0x10, 0x05, 0xa8, 0x9f, 0xe0, 0x0c, 0x59, 0x2e, 0xa0, 0x76, 0x88, 0x6c, 0x77, 0x3e, 0xb9, 0x37, 0xec, 0x1c, 0xc8, 0x37, 0x4b, 0x79, 0x15, 0xcf, 0xd1, 0x1b, 0x1c, 0x1a, 0xe1, 0x16, 0x61, 0x52, 0xf2, 0xf7, 0x80, 0x6a, 0x31, 0xc8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6705 = { .name = "ecdsa_secp256r1_sha256_6705", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6705_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6705_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6705_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6706 for ECDSA, tcId is 82 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6706_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6706_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6706_sig[] = { 0x52, 0x91, 0xde, 0xaf, 0x24, 0x65, 0x9f, 0xfb, 0xbc, 0xe6, 0xe3, 0xc2, 0x6f, 0x60, 0x21, 0x09, 0x7a, 0x74, 0xab, 0xdb, 0xb6, 0x9b, 0xe4, 0xfb, 0x10, 0x41, 0x9c, 0x0c, 0x49, 0x6c, 0x94, 0x66, 0x65, 0xd6, 0xfc, 0xf3, 0x36, 0xd2, 0x7c, 0xc7, 0xcd, 0xb9, 0x82, 0xbb, 0x4e, 0x4e, 0xce, 0xf5, 0x82, 0x7f, 0x84, 0x74, 0x2f, 0x29, 0xf1, 0x0a, 0xbf, 0x83, 0x46, 0x92, 0x70, 0xa0, 0x3d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6706 = { .name = "ecdsa_secp256r1_sha256_6706", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6706_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6706_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6706_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6707 for ECDSA, tcId is 83 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6707_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6707_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6707_sig[] = { 0x20, 0x7a, 0x32, 0x41, 0x81, 0x2d, 0x75, 0xd9, 0x47, 0x41, 0x9d, 0xc5, 0x8e, 0xfb, 0x05, 0xe8, 0x00, 0x3b, 0x33, 0xfc, 0x17, 0xeb, 0x50, 0xf9, 0xd1, 0x51, 0x66, 0xa8, 0x84, 0x79, 0xf1, 0x07, 0xcd, 0xee, 0x74, 0x9f, 0x2e, 0x49, 0x2b, 0x21, 0x3c, 0xe8, 0x0b, 0x32, 0xd0, 0x57, 0x4f, 0x62, 0xf1, 0xc5, 0xd7, 0x07, 0x93, 0xcf, 0x55, 0xe3, 0x82, 0xd5, 0xca, 0xad, 0xf7, 0x59, 0x27, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6707 = { .name = "ecdsa_secp256r1_sha256_6707", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6707_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6707_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6707_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6708 for ECDSA, tcId is 84 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6708_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6708_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6708_sig[] = { 0x65, 0x54, 0xe4, 0x9f, 0x82, 0xa8, 0x55, 0x20, 0x43, 0x28, 0xac, 0x94, 0x91, 0x3b, 0xf0, 0x1b, 0xbe, 0x84, 0x43, 0x7a, 0x35, 0x5a, 0x0a, 0x37, 0xc0, 0xde, 0xe3, 0xcf, 0x81, 0xaa, 0x77, 0x28, 0xae, 0xa0, 0x0d, 0xe2, 0x50, 0x7d, 0xda, 0xf5, 0xc9, 0x4e, 0x1e, 0x12, 0x69, 0x80, 0xd3, 0xdf, 0x16, 0x25, 0x0a, 0x2e, 0xae, 0xbc, 0x8b, 0xe4, 0x86, 0xef, 0xfe, 0x7f, 0x22, 0xb4, 0xf9, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6708 = { .name = "ecdsa_secp256r1_sha256_6708", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6708_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6708_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6708_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6709 for ECDSA, tcId is 85 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6709_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6709_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6709_sig[] = { 0xa5, 0x4c, 0x50, 0x62, 0x64, 0x83, 0x39, 0xd2, 0xbf, 0xf0, 0x6f, 0x71, 0xc8, 0x82, 0x16, 0xc2, 0x6c, 0x6e, 0x19, 0xb4, 0xd8, 0x0a, 0x8c, 0x60, 0x29, 0x90, 0xac, 0x82, 0x70, 0x7e, 0xfd, 0xfc, 0xe9, 0x9b, 0xbe, 0x7f, 0xcf, 0xaf, 0xae, 0x3e, 0x69, 0xfd, 0x01, 0x67, 0x77, 0x51, 0x7a, 0xa0, 0x10, 0x56, 0x31, 0x7f, 0x46, 0x7a, 0xd0, 0x9a, 0xff, 0x09, 0xbe, 0x73, 0xc9, 0x73, 0x1b, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6709 = { .name = "ecdsa_secp256r1_sha256_6709", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6709_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6709_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6709_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6710 for ECDSA, tcId is 86 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6710_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6710_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6710_sig[] = { 0x97, 0x5b, 0xd7, 0x15, 0x7a, 0x8d, 0x36, 0x3b, 0x30, 0x9f, 0x1f, 0x44, 0x40, 0x12, 0xb1, 0xa1, 0xd2, 0x30, 0x96, 0x59, 0x31, 0x33, 0xe7, 0x1b, 0x4c, 0xa8, 0xb0, 0x59, 0xcf, 0xf3, 0x7e, 0xaf, 0x7f, 0xaa, 0x7a, 0x28, 0xb1, 0xc8, 0x22, 0xba, 0xa2, 0x41, 0x79, 0x3f, 0x2a, 0xbc, 0x93, 0x0b, 0xd4, 0xc6, 0x98, 0x40, 0xfe, 0x09, 0x0f, 0x2a, 0xac, 0xc4, 0x67, 0x86, 0xbf, 0x91, 0x96, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6710 = { .name = "ecdsa_secp256r1_sha256_6710", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6710_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6710_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6710_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6711 for ECDSA, tcId is 87 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6711_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6711_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6711_sig[] = { 0x56, 0x94, 0xa6, 0xf8, 0x4b, 0x8f, 0x87, 0x5c, 0x27, 0x6a, 0xfd, 0x2e, 0xbc, 0xfe, 0x4d, 0x61, 0xde, 0x9e, 0xc9, 0x03, 0x05, 0xaf, 0xb1, 0x35, 0x7b, 0x95, 0xb3, 0xe0, 0xda, 0x43, 0x88, 0x5e, 0x0d, 0xff, 0xad, 0x9f, 0xfd, 0x0b, 0x75, 0x7d, 0x80, 0x51, 0xde, 0xc0, 0x2e, 0xbd, 0xf7, 0x0d, 0x8e, 0xe2, 0xdc, 0x5c, 0x78, 0x70, 0xc0, 0x82, 0x3b, 0x6c, 0xcc, 0x7c, 0x67, 0x9c, 0xba, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6711 = { .name = "ecdsa_secp256r1_sha256_6711", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6711_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6711_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6711_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6712 for ECDSA, tcId is 88 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6712_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6712_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6712_sig[] = { 0xa0, 0xc3, 0x0e, 0x80, 0x26, 0xfd, 0xb2, 0xb4, 0xb4, 0x96, 0x8a, 0x27, 0xd1, 0x6a, 0x6d, 0x08, 0xf7, 0x09, 0x8f, 0x1a, 0x98, 0xd2, 0x16, 0x20, 0xd7, 0x45, 0x4b, 0xa9, 0x79, 0x0f, 0x1b, 0xa6, 0x5e, 0x47, 0x04, 0x53, 0xa8, 0xa3, 0x99, 0xf1, 0x5b, 0xaf, 0x46, 0x3f, 0x9d, 0xec, 0xeb, 0x53, 0xac, 0xc5, 0xca, 0x64, 0x45, 0x91, 0x49, 0x68, 0x8b, 0xd2, 0x76, 0x0c, 0x65, 0x42, 0x43, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6712 = { .name = "ecdsa_secp256r1_sha256_6712", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6712_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6712_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6712_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6713 for ECDSA, tcId is 89 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6713_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6713_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6713_sig[] = { 0x61, 0x4e, 0xa8, 0x4a, 0xcf, 0x73, 0x65, 0x27, 0xdd, 0x73, 0x60, 0x2c, 0xd4, 0xbb, 0x4e, 0xea, 0x1d, 0xfe, 0xbe, 0xbd, 0x5a, 0xd8, 0xac, 0xa5, 0x2a, 0xa0, 0x22, 0x8c, 0xf7, 0xb9, 0x9a, 0x88, 0x73, 0x7c, 0xc8, 0x5f, 0x5f, 0x2d, 0x2f, 0x60, 0xd1, 0xb8, 0x18, 0x3f, 0x3e, 0xd4, 0x90, 0xe4, 0xde, 0x14, 0x36, 0x8e, 0x96, 0xa9, 0x48, 0x2c, 0x2a, 0x4d, 0xd1, 0x93, 0x19, 0x5c, 0x90, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6713 = { .name = "ecdsa_secp256r1_sha256_6713", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6713_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6713_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6713_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6714 for ECDSA, tcId is 90 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6714_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6714_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6714_sig[] = { 0xbe, 0xad, 0x67, 0x34, 0xeb, 0xe4, 0x4b, 0x81, 0x0d, 0x3f, 0xb2, 0xea, 0x00, 0xb1, 0x73, 0x29, 0x45, 0x37, 0x73, 0x38, 0xfe, 0xbf, 0xd4, 0x39, 0xa8, 0xd7, 0x4d, 0xfb, 0xd0, 0xf9, 0x42, 0xfa, 0x6b, 0xb1, 0x8e, 0xae, 0x36, 0x61, 0x6a, 0x7d, 0x3c, 0xad, 0x35, 0x91, 0x9f, 0xd2, 0x1a, 0x8a, 0xf4, 0xbb, 0xe7, 0xa1, 0x0f, 0x73, 0xb3, 0xe0, 0x36, 0xa4, 0x6b, 0x10, 0x3e, 0xf5, 0x6e, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6714 = { .name = "ecdsa_secp256r1_sha256_6714", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6714_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6714_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6714_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6715 for ECDSA, tcId is 91 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6715_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6715_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6715_sig[] = { 0x49, 0x96, 0x25, 0x47, 0x9e, 0x16, 0x1d, 0xac, 0xd4, 0xdb, 0x9d, 0x9c, 0xe6, 0x48, 0x54, 0xc9, 0x8d, 0x92, 0x2c, 0xbf, 0x21, 0x27, 0x03, 0xe9, 0x65, 0x4f, 0xae, 0x18, 0x2d, 0xf9, 0xba, 0xd2, 0x42, 0xc1, 0x77, 0xcf, 0x37, 0xb8, 0x19, 0x3a, 0x01, 0x31, 0x10, 0x8d, 0x97, 0x81, 0x9e, 0xdd, 0x94, 0x39, 0x93, 0x60, 0x28, 0x86, 0x4a, 0xc1, 0x95, 0xb6, 0x4f, 0xca, 0x76, 0xd9, 0xd6, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6715 = { .name = "ecdsa_secp256r1_sha256_6715", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6715_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6715_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6715_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6716 for ECDSA, tcId is 92 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6716_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6716_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6716_sig[] = { 0x08, 0xf1, 0x6b, 0x80, 0x93, 0xa8, 0xfb, 0x4d, 0x66, 0xa2, 0xc8, 0x06, 0x5b, 0x54, 0x1b, 0x3d, 0x31, 0xe3, 0xbf, 0xe6, 0x94, 0xf6, 0xb8, 0x9c, 0x50, 0xfb, 0x1a, 0xaa, 0x6f, 0xf6, 0xc9, 0xb2, 0x9d, 0x64, 0x55, 0xe2, 0xd5, 0xd1, 0x77, 0x97, 0x48, 0x57, 0x3b, 0x61, 0x1c, 0xb9, 0x5d, 0x4a, 0x21, 0xf9, 0x67, 0x41, 0x03, 0x99, 0xb3, 0x9b, 0x53, 0x5b, 0xa3, 0xe5, 0xaf, 0x81, 0xca, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6716 = { .name = "ecdsa_secp256r1_sha256_6716", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6716_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6716_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6716_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6717 for ECDSA, tcId is 93 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6717_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6717_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6717_sig[] = { 0xbe, 0x26, 0x23, 0x1b, 0x61, 0x91, 0x65, 0x8a, 0x19, 0xdd, 0x72, 0xdd, 0xb9, 0x9e, 0xd8, 0xf8, 0xc5, 0x79, 0xb6, 0x93, 0x8d, 0x19, 0xbc, 0xe8, 0xee, 0xd8, 0xdc, 0x2b, 0x33, 0x8c, 0xb5, 0xf8, 0xe1, 0xd9, 0xa3, 0x2e, 0xe5, 0x6c, 0xff, 0xed, 0x37, 0xf0, 0xf2, 0x2b, 0x2d, 0xcb, 0x57, 0xd5, 0xc9, 0x43, 0xc1, 0x4f, 0x79, 0x69, 0x4a, 0x03, 0xb9, 0xc5, 0xe9, 0x69, 0x52, 0x57, 0x5c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6717 = { .name = "ecdsa_secp256r1_sha256_6717", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6717_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6717_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6717_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6718 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6718_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6718_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6718_sig[] = { 0x15, 0xe7, 0x68, 0x80, 0x89, 0x83, 0x16, 0xb1, 0x62, 0x04, 0xac, 0x92, 0x0a, 0x02, 0xd5, 0x80, 0x45, 0xf3, 0x6a, 0x22, 0x9d, 0x4a, 0xa4, 0xf8, 0x12, 0x63, 0x8c, 0x45, 0x5a, 0xbe, 0x04, 0x43, 0xe7, 0x4d, 0x35, 0x7d, 0x3f, 0xcb, 0x5c, 0x8c, 0x53, 0x37, 0xbd, 0x6a, 0xba, 0x41, 0x78, 0xb4, 0x55, 0xca, 0x10, 0xe2, 0x26, 0xe1, 0x3f, 0x96, 0x38, 0x19, 0x65, 0x06, 0xa1, 0x93, 0x91, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6718 = { .name = "ecdsa_secp256r1_sha256_6718", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6718_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6718_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6718_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6719 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6719_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6719_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6719_sig[] = { 0x35, 0x2e, 0xcb, 0x53, 0xf8, 0xdf, 0x2c, 0x50, 0x3a, 0x45, 0xf9, 0x84, 0x6f, 0xc2, 0x8d, 0x1d, 0x31, 0xe6, 0x30, 0x7d, 0x3d, 0xdb, 0xff, 0xc1, 0x13, 0x23, 0x15, 0xcc, 0x07, 0xf1, 0x6d, 0xad, 0x13, 0x48, 0xdf, 0xa9, 0xc4, 0x82, 0xc5, 0x58, 0xe1, 0xd0, 0x5c, 0x52, 0x42, 0xca, 0x1c, 0x39, 0x43, 0x67, 0x26, 0xec, 0xd2, 0x82, 0x58, 0xb1, 0x89, 0x97, 0x92, 0x88, 0x7d, 0xd0, 0xa3, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6719 = { .name = "ecdsa_secp256r1_sha256_6719", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6719_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6719_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6719_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6720 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6720_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6720_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6720_sig[] = { 0x4a, 0x40, 0x80, 0x1a, 0x7e, 0x60, 0x6b, 0xa7, 0x8a, 0x0d, 0xa9, 0x88, 0x2a, 0xb2, 0x3c, 0x76, 0x77, 0xb8, 0x64, 0x23, 0x49, 0xed, 0x3d, 0x65, 0x2c, 0x5b, 0xfa, 0x5f, 0x2a, 0x95, 0x58, 0xfb, 0x3a, 0x49, 0xb6, 0x48, 0x48, 0xd6, 0x82, 0xef, 0x7f, 0x60, 0x5f, 0x28, 0x32, 0xf7, 0x38, 0x4b, 0xdc, 0x24, 0xed, 0x29, 0x25, 0x82, 0x5b, 0xf8, 0xea, 0x77, 0xdc, 0x59, 0x81, 0x72, 0x57, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6720 = { .name = "ecdsa_secp256r1_sha256_6720", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6720_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6720_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6720_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6721 for ECDSA, tcId is 97 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6721_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6721_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6721_sig[] = { 0xea, 0xcc, 0x5e, 0x1a, 0x83, 0x04, 0xa7, 0x4d, 0x2b, 0xe4, 0x12, 0xb0, 0x78, 0x92, 0x4b, 0x3b, 0xb3, 0x51, 0x1b, 0xac, 0x85, 0x5c, 0x05, 0xc9, 0xe5, 0xe9, 0xe4, 0x4d, 0xf3, 0xd6, 0x1e, 0x96, 0x74, 0x51, 0xcd, 0x8e, 0x18, 0xd6, 0xed, 0x18, 0x85, 0xdd, 0x82, 0x77, 0x14, 0x84, 0x7f, 0x96, 0xec, 0x4b, 0xb0, 0xed, 0x4c, 0x36, 0xce, 0x98, 0x08, 0xdb, 0x8f, 0x71, 0x42, 0x04, 0xf6, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6721 = { .name = "ecdsa_secp256r1_sha256_6721", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6721_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6721_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6721_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6722 for ECDSA, tcId is 98 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6722_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6722_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6722_sig[] = { 0x2f, 0x7a, 0x5e, 0x9e, 0x57, 0x71, 0xd4, 0x24, 0xf3, 0x0f, 0x67, 0xfd, 0xab, 0x61, 0xe8, 0xce, 0x4f, 0x8c, 0xd1, 0x21, 0x48, 0x82, 0xad, 0xb6, 0x5f, 0x7d, 0xe9, 0x4c, 0x31, 0x57, 0x70, 0x52, 0xac, 0x4e, 0x69, 0x80, 0x83, 0x45, 0x80, 0x9b, 0x44, 0xac, 0xb0, 0xb2, 0xbd, 0x88, 0x91, 0x75, 0xfb, 0x75, 0xdd, 0x05, 0x0c, 0x5a, 0x44, 0x9a, 0xb9, 0x52, 0x8f, 0x8f, 0x78, 0xda, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6722 = { .name = "ecdsa_secp256r1_sha256_6722", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6722_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6722_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6722_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6723 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6723_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6723_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6723_sig[] = { 0xff, 0xcd, 0xa4, 0x0f, 0x79, 0x2c, 0xe4, 0xd9, 0x3e, 0x7e, 0x0f, 0x0e, 0x95, 0xe1, 0xa2, 0x14, 0x7d, 0xdd, 0xd7, 0xf6, 0x48, 0x76, 0x21, 0xc3, 0x0a, 0x03, 0xd7, 0x10, 0xb3, 0x30, 0x02, 0x19, 0x79, 0x93, 0x8b, 0x55, 0xf8, 0xa1, 0x7f, 0x7e, 0xd7, 0xba, 0x9a, 0xde, 0x8f, 0x20, 0x65, 0xa1, 0xfa, 0x77, 0x61, 0x8f, 0x0b, 0x67, 0xad, 0xd8, 0xd5, 0x8c, 0x42, 0x2c, 0x24, 0x53, 0xa4, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6723 = { .name = "ecdsa_secp256r1_sha256_6723", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6723_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6723_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6723_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6724 for ECDSA, tcId is 100 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6724_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6724_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6724_sig[] = { 0x81, 0xf2, 0x35, 0x9c, 0x4f, 0xab, 0xa6, 0xb5, 0x3d, 0x3e, 0x8c, 0x8c, 0x3f, 0xcc, 0x16, 0xa9, 0x48, 0x35, 0x0f, 0x7a, 0xb3, 0xa5, 0x88, 0xb2, 0x8c, 0x17, 0x60, 0x3a, 0x43, 0x1e, 0x39, 0xa8, 0xcd, 0x6f, 0x6a, 0x5c, 0xc3, 0xb5, 0x5e, 0xad, 0x0f, 0xf6, 0x95, 0xd0, 0x6c, 0x68, 0x60, 0xb5, 0x09, 0xe4, 0x6d, 0x99, 0xfc, 0xce, 0xfb, 0x9f, 0x7f, 0x9e, 0x10, 0x18, 0x57, 0xf7, 0x43, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6724 = { .name = "ecdsa_secp256r1_sha256_6724", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6724_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6724_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6724_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6725 for ECDSA, tcId is 101 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6725_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6725_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6725_sig[] = { 0xdf, 0xc8, 0xbf, 0x52, 0x04, 0x45, 0xcb, 0xb8, 0xee, 0x15, 0x96, 0xfb, 0x07, 0x3e, 0xa2, 0x83, 0xea, 0x13, 0x02, 0x51, 0xa6, 0xfd, 0xff, 0xa5, 0xc3, 0xf5, 0xf2, 0xaa, 0xf7, 0x5c, 0xa8, 0x08, 0x04, 0x8e, 0x33, 0xef, 0xce, 0x14, 0x7c, 0x9d, 0xd9, 0x28, 0x23, 0x64, 0x0e, 0x33, 0x8e, 0x68, 0xbf, 0xd7, 0xd0, 0xdc, 0x7a, 0x49, 0x05, 0xb3, 0xa7, 0xac, 0x71, 0x1e, 0x57, 0x7e, 0x90, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6725 = { .name = "ecdsa_secp256r1_sha256_6725", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6725_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6725_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6725_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6726 for ECDSA, tcId is 102 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6726_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6726_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6726_sig[] = { 0xad, 0x01, 0x9f, 0x74, 0xc6, 0x94, 0x1d, 0x20, 0xef, 0xda, 0x70, 0xb4, 0x6c, 0x53, 0xdb, 0x16, 0x65, 0x03, 0xa0, 0xe3, 0x93, 0xe9, 0x32, 0xf6, 0x88, 0x22, 0x76, 0x88, 0xba, 0x6a, 0x57, 0x62, 0x93, 0x32, 0x0e, 0xb7, 0xca, 0x07, 0x10, 0x25, 0x53, 0x46, 0xbd, 0xbb, 0x31, 0x02, 0xcd, 0xcf, 0x79, 0x64, 0xef, 0x2e, 0x09, 0x88, 0xe7, 0x12, 0xbc, 0x05, 0xef, 0xe1, 0x6c, 0x19, 0x93, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6726 = { .name = "ecdsa_secp256r1_sha256_6726", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6726_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6726_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha256_6726_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6727 for ECDSA, tcId is 103 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6727_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6727_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6727_sig[] = { 0xac, 0x80, 0x96, 0x84, 0x2e, 0x8a, 0xdd, 0x68, 0xc3, 0x4e, 0x78, 0xce, 0x11, 0xdd, 0x71, 0xe4, 0xb5, 0x43, 0x16, 0xbd, 0x3e, 0xbf, 0x7f, 0xff, 0xde, 0xb7, 0xbd, 0x5a, 0x3e, 0xbc, 0x18, 0x83, 0xf5, 0xca, 0x2f, 0x4f, 0x23, 0xd6, 0x74, 0x50, 0x2d, 0x4c, 0xaf, 0x85, 0xd1, 0x87, 0x21, 0x5d, 0x36, 0xe3, 0xce, 0x9f, 0x0c, 0xe2, 0x19, 0x70, 0x9f, 0x21, 0xa3, 0xaa, 0xc0, 0x03, 0xb7, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6727 = { .name = "ecdsa_secp256r1_sha256_6727", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6727_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6727_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6727_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6728 for ECDSA, tcId is 104 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6728_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6728_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6728_sig[] = { 0x67, 0x7b, 0x2d, 0x3a, 0x59, 0xb1, 0x8a, 0x5f, 0xf9, 0x39, 0xb7, 0x0e, 0xa0, 0x02, 0x25, 0x08, 0x89, 0xdd, 0xcd, 0x7b, 0x7b, 0x9d, 0x77, 0x68, 0x54, 0xb4, 0x94, 0x36, 0x93, 0xfb, 0x92, 0xf7, 0x6b, 0x4b, 0xa8, 0x56, 0xad, 0xe7, 0x67, 0x7b, 0xf3, 0x03, 0x07, 0xb2, 0x1f, 0x3c, 0xcd, 0xa3, 0x5d, 0x2f, 0x63, 0xae, 0xe8, 0x1e, 0xfd, 0x0b, 0xab, 0x69, 0x72, 0xcc, 0x07, 0x95, 0xdb, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6728 = { .name = "ecdsa_secp256r1_sha256_6728", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6728_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6728_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6728_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6729 for ECDSA, tcId is 105 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6729_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6729_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6729_sig[] = { 0x47, 0x9e, 0x1d, 0xed, 0x14, 0xbc, 0xae, 0xd0, 0x37, 0x9b, 0xa8, 0xe1, 0xb7, 0x3d, 0x31, 0x15, 0xd8, 0x4d, 0x31, 0xd4, 0xb7, 0xc3, 0x0e, 0x1f, 0x05, 0xe1, 0xfc, 0x0d, 0x59, 0x57, 0xcf, 0xb0, 0x91, 0x8f, 0x79, 0xe3, 0x5b, 0x3d, 0x89, 0x48, 0x7c, 0xf6, 0x34, 0xa4, 0xf0, 0x5b, 0x2e, 0x0c, 0x30, 0x85, 0x7c, 0xa8, 0x79, 0xf9, 0x7c, 0x77, 0x1e, 0x87, 0x70, 0x27, 0x35, 0x5b, 0x24, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6729 = { .name = "ecdsa_secp256r1_sha256_6729", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6729_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6729_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6729_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6730 for ECDSA, tcId is 106 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6730_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6730_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6730_sig[] = { 0x43, 0xdf, 0xcc, 0xd0, 0xed, 0xb9, 0xe2, 0x80, 0xd9, 0xa5, 0x8f, 0x01, 0x16, 0x4d, 0x55, 0xc3, 0xd7, 0x11, 0xe1, 0x4b, 0x12, 0xac, 0x5c, 0xf3, 0xb6, 0x48, 0x40, 0xea, 0xd5, 0x12, 0xa0, 0xa3, 0x1d, 0xbe, 0x33, 0xfa, 0x8b, 0xa8, 0x45, 0x33, 0xcd, 0x5c, 0x49, 0x34, 0x36, 0x5b, 0x34, 0x42, 0xca, 0x11, 0x74, 0x89, 0x9b, 0x78, 0xef, 0x9a, 0x31, 0x99, 0xf4, 0x95, 0x84, 0x38, 0x97, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6730 = { .name = "ecdsa_secp256r1_sha256_6730", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6730_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6730_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6730_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6731 for ECDSA, tcId is 107 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6731_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6731_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6731_sig[] = { 0x5b, 0x09, 0xab, 0x63, 0x7b, 0xd4, 0xca, 0xf0, 0xf4, 0xc7, 0xc7, 0xe4, 0xbc, 0xa5, 0x92, 0xfe, 0xa2, 0x0e, 0x90, 0x87, 0xc2, 0x59, 0xd2, 0x6a, 0x38, 0xbb, 0x40, 0x85, 0xf0, 0xbb, 0xff, 0x11, 0x45, 0xb7, 0xeb, 0x46, 0x7b, 0x67, 0x48, 0xaf, 0x61, 0x8e, 0x9d, 0x80, 0xd6, 0xfd, 0xcd, 0x6a, 0xa2, 0x49, 0x64, 0xe5, 0xa1, 0x3f, 0x88, 0x5b, 0xca, 0x81, 0x01, 0xde, 0x08, 0xeb, 0x0d, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6731 = { .name = "ecdsa_secp256r1_sha256_6731", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6731_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6731_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6731_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6732 for ECDSA, tcId is 108 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6732_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6732_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6732_sig[] = { 0x5e, 0x9b, 0x1c, 0x5a, 0x02, 0x80, 0x70, 0xdf, 0x57, 0x28, 0xc5, 0xc8, 0xaf, 0x9b, 0x74, 0xe0, 0x66, 0x7a, 0xfa, 0x57, 0x0a, 0x6c, 0xfa, 0x01, 0x14, 0xa5, 0x03, 0x9e, 0xd1, 0x5e, 0xe0, 0x6f, 0xb1, 0x36, 0x09, 0x07, 0xe2, 0xd9, 0x78, 0x5e, 0xad, 0x36, 0x2b, 0xb8, 0xd7, 0xbd, 0x66, 0x1b, 0x6c, 0x29, 0xee, 0xff, 0xd3, 0xc5, 0x03, 0x77, 0x44, 0xed, 0xae, 0xb9, 0xad, 0x99, 0x0c, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6732 = { .name = "ecdsa_secp256r1_sha256_6732", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6732_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6732_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6732_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6733 for ECDSA, tcId is 109 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6733_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6733_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6733_sig[] = { 0x06, 0x71, 0xa0, 0xa8, 0x5c, 0x2b, 0x72, 0xd5, 0x4a, 0x2f, 0xb0, 0x99, 0x0e, 0x34, 0x53, 0x8b, 0x48, 0x90, 0x05, 0x0f, 0x5a, 0x57, 0x12, 0xf6, 0xd1, 0xa7, 0xa5, 0xfb, 0x85, 0x78, 0xf3, 0x2e, 0xdb, 0x18, 0x46, 0xba, 0xb6, 0xb7, 0x36, 0x14, 0x79, 0xab, 0x9c, 0x32, 0x85, 0xca, 0x41, 0x29, 0x18, 0x08, 0xf2, 0x7f, 0xd5, 0xbd, 0x4f, 0xda, 0xc7, 0x20, 0xe5, 0x85, 0x47, 0x13, 0x69, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6733 = { .name = "ecdsa_secp256r1_sha256_6733", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6733_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6733_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6733_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6734 for ECDSA, tcId is 110 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6734_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6734_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6734_sig[] = { 0x76, 0x73, 0xf8, 0x52, 0x67, 0x48, 0x44, 0x64, 0x77, 0xdb, 0xbb, 0x05, 0x90, 0xa4, 0x54, 0x92, 0xc5, 0xd7, 0xd6, 0x98, 0x59, 0xd3, 0x01, 0xab, 0xba, 0xed, 0xb3, 0x5b, 0x20, 0x95, 0x10, 0x3a, 0x3d, 0xc7, 0x0d, 0xdf, 0x9c, 0x6b, 0x52, 0x4d, 0x88, 0x6b, 0xed, 0x9e, 0x6a, 0xf0, 0x2e, 0x0e, 0x4d, 0xec, 0x0d, 0x41, 0x7a, 0x41, 0x4f, 0xed, 0x38, 0x07, 0xef, 0x44, 0x22, 0x91, 0x3d, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6734 = { .name = "ecdsa_secp256r1_sha256_6734", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6734_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6734_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6734_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6735 for ECDSA, tcId is 111 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6735_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6735_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6735_sig[] = { 0x7f, 0x08, 0x54, 0x41, 0x07, 0x0e, 0xcd, 0x2b, 0xb2, 0x12, 0x85, 0x08, 0x9e, 0xbb, 0x1a, 0xa6, 0x45, 0x0d, 0x1a, 0x06, 0xc3, 0x6d, 0x3f, 0xf3, 0x9d, 0xfd, 0x65, 0x7a, 0x79, 0x6d, 0x12, 0xb5, 0x24, 0x97, 0x12, 0x01, 0x20, 0x29, 0x87, 0x0a, 0x24, 0x59, 0xd1, 0x8d, 0x47, 0xda, 0x9a, 0xa4, 0x92, 0xa5, 0xe6, 0xcb, 0x4b, 0x2d, 0x8d, 0xaf, 0xa9, 0xe4, 0xc5, 0xc5, 0x4a, 0x2b, 0x9a, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6735 = { .name = "ecdsa_secp256r1_sha256_6735", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6735_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6735_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6735_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6736 for ECDSA, tcId is 112 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6736_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6736_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6736_sig[] = { 0x91, 0x4c, 0x67, 0xfb, 0x61, 0xdd, 0x1e, 0x27, 0xc8, 0x67, 0x39, 0x8e, 0xa7, 0x32, 0x2d, 0x5a, 0xb7, 0x6d, 0xf0, 0x4b, 0xc5, 0xaa, 0x66, 0x83, 0xa8, 0xe0, 0xf3, 0x0a, 0x5d, 0x28, 0x73, 0x48, 0xfa, 0x07, 0x47, 0x40, 0x31, 0x48, 0x1d, 0xda, 0x49, 0x53, 0xe3, 0xac, 0x19, 0x59, 0xee, 0x8c, 0xea, 0x7e, 0x66, 0xec, 0x41, 0x2b, 0x38, 0xd6, 0xc9, 0x6d, 0x28, 0xf6, 0xd3, 0x73, 0x04, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6736 = { .name = "ecdsa_secp256r1_sha256_6736", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6736_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6736_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6736_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6737 for ECDSA, tcId is 113 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6737_pubkey[] = { 0x0a, 0xd9, 0x95, 0x00, 0x28, 0x8d, 0x46, 0x69, 0x40, 0x03, 0x1d, 0x72, 0xa9, 0xf5, 0x44, 0x5a, 0x4d, 0x43, 0x78, 0x46, 0x40, 0x85, 0x5b, 0xf0, 0xa6, 0x98, 0x74, 0xd2, 0xde, 0x5f, 0xe1, 0x03, 0xc5, 0x01, 0x1e, 0x6e, 0xf2, 0xc4, 0x2d, 0xcd, 0x50, 0xd5, 0xd3, 0xd2, 0x9f, 0x99, 0xae, 0x6e, 0xba, 0x2c, 0x80, 0xc9, 0x24, 0x4f, 0x4c, 0x54, 0x22, 0xf0, 0x97, 0x9f, 0xf0, 0xc3, 0xba, 0x5e, }; static const unsigned char ecdsa_secp256r1_sha256_6737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6737_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6737 = { .name = "ecdsa_secp256r1_sha256_6737", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6737_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6737_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6737_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 113 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6738 for ECDSA, tcId is 114 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6738_pubkey[] = { 0x0a, 0xd9, 0x95, 0x00, 0x28, 0x8d, 0x46, 0x69, 0x40, 0x03, 0x1d, 0x72, 0xa9, 0xf5, 0x44, 0x5a, 0x4d, 0x43, 0x78, 0x46, 0x40, 0x85, 0x5b, 0xf0, 0xa6, 0x98, 0x74, 0xd2, 0xde, 0x5f, 0xe1, 0x03, 0xc5, 0x01, 0x1e, 0x6e, 0xf2, 0xc4, 0x2d, 0xcd, 0x50, 0xd5, 0xd3, 0xd2, 0x9f, 0x99, 0xae, 0x6e, 0xba, 0x2c, 0x80, 0xc9, 0x24, 0x4f, 0x4c, 0x54, 0x22, 0xf0, 0x97, 0x9f, 0xf0, 0xc3, 0xba, 0x5e, }; static const unsigned char ecdsa_secp256r1_sha256_6738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6738_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6738 = { .name = "ecdsa_secp256r1_sha256_6738", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6738_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6738_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6738_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 114 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6739 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6739_pubkey[] = { 0xab, 0x05, 0xfd, 0x9d, 0x0d, 0xe2, 0x6b, 0x9c, 0xe6, 0xf4, 0x81, 0x96, 0x52, 0xd9, 0xfc, 0x69, 0x19, 0x3d, 0x0a, 0xa3, 0x98, 0xf0, 0xfb, 0xa8, 0x01, 0x3e, 0x09, 0xc5, 0x82, 0x20, 0x45, 0x54, 0x19, 0x23, 0x52, 0x71, 0x22, 0x8c, 0x78, 0x67, 0x59, 0x09, 0x5d, 0x12, 0xb7, 0x5a, 0xf0, 0x69, 0x2d, 0xd4, 0x10, 0x3f, 0x19, 0xf6, 0xa8, 0xc3, 0x2f, 0x49, 0x43, 0x5a, 0x1e, 0x9b, 0x8d, 0x45, }; static const unsigned char ecdsa_secp256r1_sha256_6739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6739_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6739 = { .name = "ecdsa_secp256r1_sha256_6739", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6739_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6739_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6739_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 115 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6740 for ECDSA, tcId is 116 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6740_pubkey[] = { 0x80, 0x98, 0x4f, 0x39, 0xa1, 0xff, 0x38, 0xa8, 0x6a, 0x68, 0xaa, 0x42, 0x01, 0xb6, 0xbe, 0x5d, 0xfb, 0xfe, 0xcf, 0x87, 0x62, 0x19, 0x71, 0x0b, 0x07, 0xba, 0xdf, 0x6f, 0xdd, 0x4c, 0x6c, 0x56, 0x11, 0xfe, 0xb9, 0x73, 0x90, 0xd9, 0x82, 0x6e, 0x7a, 0x06, 0xdf, 0xb4, 0x18, 0x71, 0xc9, 0x40, 0xd7, 0x44, 0x15, 0xed, 0x3c, 0xac, 0x20, 0x89, 0xf1, 0x44, 0x50, 0x19, 0xbb, 0x55, 0xed, 0x95, }; static const unsigned char ecdsa_secp256r1_sha256_6740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6740_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6740 = { .name = "ecdsa_secp256r1_sha256_6740", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6740_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6740_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6740_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 116 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6741 for ECDSA, tcId is 117 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6741_pubkey[] = { 0x42, 0x01, 0xb4, 0x27, 0x29, 0x44, 0x20, 0x1c, 0x32, 0x94, 0xf5, 0xba, 0xa9, 0xa3, 0x23, 0x2b, 0x6d, 0xd6, 0x87, 0x49, 0x5f, 0xcc, 0x19, 0xa7, 0x0a, 0x95, 0xbc, 0x60, 0x2b, 0x4f, 0x7c, 0x05, 0x95, 0xc3, 0x7e, 0xba, 0x9e, 0xe8, 0x17, 0x1c, 0x1b, 0xb5, 0xac, 0x6f, 0xea, 0xf7, 0x53, 0xbc, 0x36, 0xf4, 0x63, 0xe3, 0xae, 0xf1, 0x66, 0x29, 0x57, 0x2c, 0x0c, 0x0a, 0x8f, 0xb0, 0x80, 0x0e, }; static const unsigned char ecdsa_secp256r1_sha256_6741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6741_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6741 = { .name = "ecdsa_secp256r1_sha256_6741", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6741_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6741_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6741_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 117 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6742 for ECDSA, tcId is 118 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6742_pubkey[] = { 0xa7, 0x1a, 0xf6, 0x4d, 0xe5, 0x12, 0x6a, 0x4a, 0x4e, 0x02, 0xb7, 0x92, 0x2d, 0x66, 0xce, 0x94, 0x15, 0xce, 0x88, 0xa4, 0xc9, 0xd2, 0x55, 0x14, 0xd9, 0x10, 0x82, 0xc8, 0x72, 0x5a, 0xc9, 0x57, 0x5d, 0x47, 0x72, 0x3c, 0x8f, 0xbe, 0x58, 0x0b, 0xb3, 0x69, 0xfe, 0xc9, 0xc2, 0x66, 0x5d, 0x8e, 0x30, 0xa4, 0x35, 0xb9, 0x93, 0x26, 0x45, 0x48, 0x2e, 0x7c, 0x9f, 0x11, 0xe8, 0x72, 0x29, 0x6b, }; static const unsigned char ecdsa_secp256r1_sha256_6742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6742_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6742 = { .name = "ecdsa_secp256r1_sha256_6742", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6742_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6742_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6742_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 118 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6743 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6743_pubkey[] = { 0xa7, 0x1a, 0xf6, 0x4d, 0xe5, 0x12, 0x6a, 0x4a, 0x4e, 0x02, 0xb7, 0x92, 0x2d, 0x66, 0xce, 0x94, 0x15, 0xce, 0x88, 0xa4, 0xc9, 0xd2, 0x55, 0x14, 0xd9, 0x10, 0x82, 0xc8, 0x72, 0x5a, 0xc9, 0x57, 0x5d, 0x47, 0x72, 0x3c, 0x8f, 0xbe, 0x58, 0x0b, 0xb3, 0x69, 0xfe, 0xc9, 0xc2, 0x66, 0x5d, 0x8e, 0x30, 0xa4, 0x35, 0xb9, 0x93, 0x26, 0x45, 0x48, 0x2e, 0x7c, 0x9f, 0x11, 0xe8, 0x72, 0x29, 0x6b, }; static const unsigned char ecdsa_secp256r1_sha256_6743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6743_sig[] = { 0x05, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6743 = { .name = "ecdsa_secp256r1_sha256_6743", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6743_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6743_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6743_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 119 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6744 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6744_pubkey[] = { 0x66, 0x27, 0xce, 0xc4, 0xf0, 0x73, 0x1e, 0xa2, 0x3f, 0xc2, 0x93, 0x1f, 0x90, 0xeb, 0xe5, 0xb7, 0x57, 0x2f, 0x59, 0x7d, 0x20, 0xdf, 0x08, 0xfc, 0x2b, 0x31, 0xee, 0x8e, 0xf1, 0x6b, 0x15, 0x72, 0x61, 0x70, 0xed, 0x77, 0xd8, 0xd0, 0xa1, 0x4f, 0xc5, 0xc9, 0xc3, 0xc4, 0xc9, 0xbe, 0x7f, 0x0d, 0x3e, 0xe1, 0x8f, 0x70, 0x9b, 0xb2, 0x75, 0xea, 0xf2, 0x07, 0x3e, 0x25, 0x8f, 0xe6, 0x94, 0xa5, }; static const unsigned char ecdsa_secp256r1_sha256_6744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6744_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6744 = { .name = "ecdsa_secp256r1_sha256_6744", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6744_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6744_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6744_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 120 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6745 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6745_pubkey[] = { 0x66, 0x27, 0xce, 0xc4, 0xf0, 0x73, 0x1e, 0xa2, 0x3f, 0xc2, 0x93, 0x1f, 0x90, 0xeb, 0xe5, 0xb7, 0x57, 0x2f, 0x59, 0x7d, 0x20, 0xdf, 0x08, 0xfc, 0x2b, 0x31, 0xee, 0x8e, 0xf1, 0x6b, 0x15, 0x72, 0x61, 0x70, 0xed, 0x77, 0xd8, 0xd0, 0xa1, 0x4f, 0xc5, 0xc9, 0xc3, 0xc4, 0xc9, 0xbe, 0x7f, 0x0d, 0x3e, 0xe1, 0x8f, 0x70, 0x9b, 0xb2, 0x75, 0xea, 0xf2, 0x07, 0x3e, 0x25, 0x8f, 0xe6, 0x94, 0xa5, }; static const unsigned char ecdsa_secp256r1_sha256_6745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6745_sig[] = { 0x05, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6745 = { .name = "ecdsa_secp256r1_sha256_6745", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6745_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6745_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6745_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 121 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6746 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6746_pubkey[] = { 0x5a, 0x7c, 0x88, 0x25, 0xe8, 0x56, 0x91, 0xcc, 0xe1, 0xf5, 0xe7, 0x54, 0x4c, 0x54, 0xe7, 0x3f, 0x14, 0xaf, 0xc0, 0x10, 0xcb, 0x73, 0x13, 0x43, 0x26, 0x2c, 0xa7, 0xec, 0x5a, 0x77, 0xf5, 0xbf, 0xef, 0x6e, 0xdf, 0x62, 0xa4, 0x49, 0x7c, 0x1b, 0xd7, 0xb1, 0x47, 0xfb, 0x6c, 0x3d, 0x22, 0xaf, 0x3c, 0x39, 0xbf, 0xce, 0x95, 0xf3, 0x0e, 0x13, 0xa1, 0x6d, 0x3d, 0x7b, 0x28, 0x12, 0xf8, 0x13, }; static const unsigned char ecdsa_secp256r1_sha256_6746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6746_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6746 = { .name = "ecdsa_secp256r1_sha256_6746", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6746_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6746_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6746_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 122 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6747 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6747_pubkey[] = { 0x5a, 0x7c, 0x88, 0x25, 0xe8, 0x56, 0x91, 0xcc, 0xe1, 0xf5, 0xe7, 0x54, 0x4c, 0x54, 0xe7, 0x3f, 0x14, 0xaf, 0xc0, 0x10, 0xcb, 0x73, 0x13, 0x43, 0x26, 0x2c, 0xa7, 0xec, 0x5a, 0x77, 0xf5, 0xbf, 0xef, 0x6e, 0xdf, 0x62, 0xa4, 0x49, 0x7c, 0x1b, 0xd7, 0xb1, 0x47, 0xfb, 0x6c, 0x3d, 0x22, 0xaf, 0x3c, 0x39, 0xbf, 0xce, 0x95, 0xf3, 0x0e, 0x13, 0xa1, 0x6d, 0x3d, 0x7b, 0x28, 0x12, 0xf8, 0x13, }; static const unsigned char ecdsa_secp256r1_sha256_6747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6747_sig[] = { 0x05, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6747 = { .name = "ecdsa_secp256r1_sha256_6747", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6747_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6747_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6747_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 123 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6748 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6748_pubkey[] = { 0xcb, 0xe0, 0xc2, 0x91, 0x32, 0xcd, 0x73, 0x83, 0x64, 0xfe, 0xdd, 0x60, 0x31, 0x52, 0x99, 0x0c, 0x04, 0x8e, 0x5e, 0x2f, 0xff, 0x99, 0x6d, 0x88, 0x3f, 0xa6, 0xca, 0xca, 0x79, 0x78, 0xc7, 0x37, 0x70, 0xaf, 0x6a, 0x8c, 0xe4, 0x4c, 0xb4, 0x12, 0x24, 0xb2, 0x60, 0x36, 0x06, 0xf4, 0xc0, 0x4d, 0x18, 0x8e, 0x80, 0xbf, 0xf7, 0xcc, 0x31, 0xad, 0x51, 0x89, 0xd4, 0xab, 0x0d, 0x70, 0xe8, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_6748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6748_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6748 = { .name = "ecdsa_secp256r1_sha256_6748", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6748_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6748_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6748_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 124 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6749 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6749_pubkey[] = { 0xcb, 0xe0, 0xc2, 0x91, 0x32, 0xcd, 0x73, 0x83, 0x64, 0xfe, 0xdd, 0x60, 0x31, 0x52, 0x99, 0x0c, 0x04, 0x8e, 0x5e, 0x2f, 0xff, 0x99, 0x6d, 0x88, 0x3f, 0xa6, 0xca, 0xca, 0x79, 0x78, 0xc7, 0x37, 0x70, 0xaf, 0x6a, 0x8c, 0xe4, 0x4c, 0xb4, 0x12, 0x24, 0xb2, 0x60, 0x36, 0x06, 0xf4, 0xc0, 0x4d, 0x18, 0x8e, 0x80, 0xbf, 0xf7, 0xcc, 0x31, 0xad, 0x51, 0x89, 0xd4, 0xab, 0x0d, 0x70, 0xe8, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_6749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6749_sig[] = { 0x05, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6749 = { .name = "ecdsa_secp256r1_sha256_6749", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6749_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6749_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6749_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 125 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6750 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6750_pubkey[] = { 0xcb, 0xe0, 0xc2, 0x91, 0x32, 0xcd, 0x73, 0x83, 0x64, 0xfe, 0xdd, 0x60, 0x31, 0x52, 0x99, 0x0c, 0x04, 0x8e, 0x5e, 0x2f, 0xff, 0x99, 0x6d, 0x88, 0x3f, 0xa6, 0xca, 0xca, 0x79, 0x78, 0xc7, 0x37, 0x70, 0xaf, 0x6a, 0x8c, 0xe4, 0x4c, 0xb4, 0x12, 0x24, 0xb2, 0x60, 0x36, 0x06, 0xf4, 0xc0, 0x4d, 0x18, 0x8e, 0x80, 0xbf, 0xf7, 0xcc, 0x31, 0xad, 0x51, 0x89, 0xd4, 0xab, 0x0d, 0x70, 0xe8, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_6750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6750_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6750 = { .name = "ecdsa_secp256r1_sha256_6750", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6750_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6750_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6750_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 126 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6751 for ECDSA, tcId is 127 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6751_pubkey[] = { 0x4b, 0xe4, 0x17, 0x80, 0x97, 0x00, 0x2f, 0x0d, 0xea, 0xb6, 0x8f, 0x0d, 0x9a, 0x13, 0x0e, 0x0e, 0xd3, 0x3a, 0x67, 0x95, 0xd0, 0x2a, 0x20, 0x79, 0x6d, 0xb8, 0x34, 0x44, 0xb0, 0x37, 0xe1, 0x39, 0x20, 0xf1, 0x30, 0x51, 0xe0, 0xee, 0xcd, 0xcf, 0xce, 0x4d, 0xac, 0xea, 0x0f, 0x50, 0xd1, 0xf2, 0x47, 0xca, 0xa6, 0x69, 0xf1, 0x93, 0xc1, 0xb4, 0x07, 0x5b, 0x51, 0xae, 0x29, 0x6d, 0x2d, 0x56, }; static const unsigned char ecdsa_secp256r1_sha256_6751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6751_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6751 = { .name = "ecdsa_secp256r1_sha256_6751", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6751_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6751_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6751_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 127 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6752 for ECDSA, tcId is 128 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6752_pubkey[] = { 0xd0, 0xf7, 0x37, 0x92, 0x20, 0x37, 0x16, 0xaf, 0xd4, 0xbe, 0x43, 0x29, 0xfa, 0xa4, 0x8d, 0x26, 0x9f, 0x15, 0x31, 0x3e, 0xbb, 0xba, 0x37, 0x9d, 0x77, 0x83, 0xc9, 0x7b, 0xf3, 0xe8, 0x90, 0xd9, 0x97, 0x1f, 0x4a, 0x32, 0x06, 0x60, 0x5b, 0xec, 0x21, 0x78, 0x2b, 0xf5, 0xe2, 0x75, 0xc7, 0x14, 0x41, 0x7e, 0x8f, 0x56, 0x65, 0x49, 0xe6, 0xbc, 0x68, 0x69, 0x0d, 0x23, 0x63, 0xc8, 0x9c, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_6752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6752_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6752 = { .name = "ecdsa_secp256r1_sha256_6752", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6752_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6752_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6752_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 128 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6753 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6753_pubkey[] = { 0x48, 0x38, 0xb2, 0xbe, 0x35, 0xa6, 0x27, 0x6a, 0x80, 0xef, 0x9e, 0x22, 0x81, 0x40, 0xf9, 0xd9, 0xb9, 0x6c, 0xe8, 0x3b, 0x7a, 0x25, 0x4f, 0x71, 0xcc, 0xde, 0xbb, 0xb8, 0x05, 0x4c, 0xe0, 0x5f, 0xfa, 0x9c, 0xbc, 0x12, 0x3c, 0x91, 0x9b, 0x19, 0xe0, 0x02, 0x38, 0x19, 0x8d, 0x04, 0x06, 0x90, 0x43, 0xbd, 0x66, 0x0a, 0x82, 0x88, 0x14, 0x05, 0x1f, 0xcb, 0x8a, 0xac, 0x73, 0x8a, 0x6c, 0x6b, }; static const unsigned char ecdsa_secp256r1_sha256_6753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6753_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6753 = { .name = "ecdsa_secp256r1_sha256_6753", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6753_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6753_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6753_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 129 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6754 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6754_pubkey[] = { 0x73, 0x93, 0x98, 0x3c, 0xa3, 0x0a, 0x52, 0x0b, 0xbc, 0x47, 0x83, 0xdc, 0x99, 0x60, 0x74, 0x6a, 0xab, 0x44, 0x4e, 0xf5, 0x20, 0xc0, 0xa8, 0xe7, 0x71, 0x11, 0x9a, 0xa4, 0xe7, 0x4b, 0x0f, 0x64, 0xe9, 0xd7, 0xbe, 0x1a, 0xb0, 0x1a, 0x0b, 0xf6, 0x26, 0xe7, 0x09, 0x86, 0x3e, 0x6a, 0x48, 0x6d, 0xba, 0xf3, 0x27, 0x93, 0xaf, 0xcc, 0xf7, 0x74, 0xe2, 0xc6, 0xcd, 0x27, 0xb1, 0x85, 0x75, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_6754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6754_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6754 = { .name = "ecdsa_secp256r1_sha256_6754", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6754_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6754_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6754_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 130 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6755 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6755_pubkey[] = { 0x5a, 0xc3, 0x31, 0xa1, 0x10, 0x3f, 0xe9, 0x66, 0x69, 0x73, 0x79, 0xf3, 0x56, 0xa9, 0x37, 0xf3, 0x50, 0x58, 0x8a, 0x05, 0x47, 0x7e, 0x30, 0x88, 0x51, 0xb8, 0xa5, 0x02, 0xd5, 0xdf, 0xcd, 0xc5, 0xfe, 0x99, 0x93, 0xdf, 0x4b, 0x57, 0x93, 0x9b, 0x2b, 0x8d, 0xa0, 0x95, 0xbf, 0x6d, 0x79, 0x42, 0x65, 0x20, 0x4c, 0xfe, 0x03, 0xbe, 0x99, 0x5a, 0x02, 0xe6, 0x5d, 0x40, 0x8c, 0x87, 0x1c, 0x0b, }; static const unsigned char ecdsa_secp256r1_sha256_6755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6755_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6755 = { .name = "ecdsa_secp256r1_sha256_6755", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6755_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6755_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6755_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 131 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6756 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6756_pubkey[] = { 0x1d, 0x20, 0x9b, 0xe8, 0xde, 0x2d, 0xe8, 0x77, 0x09, 0x5a, 0x39, 0x9d, 0x39, 0x04, 0xc7, 0x4c, 0xc4, 0x58, 0xd9, 0x26, 0xe2, 0x7b, 0xb8, 0xe5, 0x8e, 0x5e, 0xae, 0x57, 0x67, 0xc4, 0x15, 0x09, 0xdd, 0x59, 0xe0, 0x4c, 0x21, 0x4f, 0x7b, 0x18, 0xdc, 0xe3, 0x51, 0xfc, 0x2a, 0x54, 0x98, 0x93, 0xa6, 0x86, 0x0e, 0x80, 0x16, 0x3f, 0x38, 0xcc, 0x60, 0xa4, 0xf2, 0xc9, 0xd0, 0x40, 0xd8, 0xc9, }; static const unsigned char ecdsa_secp256r1_sha256_6756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6756_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6756 = { .name = "ecdsa_secp256r1_sha256_6756", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6756_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6756_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6756_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 132 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6757 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6757_pubkey[] = { 0x08, 0x35, 0x39, 0xfb, 0xee, 0x44, 0x62, 0x5e, 0x3a, 0xca, 0xaf, 0xa2, 0xfc, 0xb4, 0x13, 0x49, 0x39, 0x2c, 0xef, 0x06, 0x33, 0xa1, 0xb8, 0xfa, 0xbe, 0xce, 0xe0, 0xc1, 0x33, 0xb1, 0x0e, 0x99, 0x91, 0x5c, 0x1e, 0xbe, 0x7b, 0xf0, 0x0d, 0xf8, 0x53, 0x51, 0x96, 0x77, 0x0a, 0x58, 0x04, 0x7a, 0xe2, 0xa4, 0x02, 0xf2, 0x63, 0x26, 0xbb, 0x7d, 0x41, 0xd4, 0xd7, 0x61, 0x63, 0x37, 0x91, 0x1e, }; static const unsigned char ecdsa_secp256r1_sha256_6757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6757_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6757 = { .name = "ecdsa_secp256r1_sha256_6757", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6757_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6757_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6757_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 133 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6758 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6758_pubkey[] = { 0x8a, 0xeb, 0x36, 0x8a, 0x70, 0x27, 0xa4, 0xd6, 0x4a, 0xbd, 0xea, 0x37, 0x39, 0x0c, 0x0c, 0x1d, 0x6a, 0x26, 0xf3, 0x99, 0xe2, 0xd9, 0x73, 0x4d, 0xe1, 0xeb, 0x3d, 0x0e, 0x19, 0x37, 0x38, 0x74, 0x05, 0xbd, 0x13, 0x83, 0x47, 0x15, 0xe1, 0xdb, 0xae, 0x9b, 0x87, 0x5c, 0xf0, 0x7b, 0xd5, 0x5e, 0x1b, 0x66, 0x91, 0xc7, 0xf7, 0x53, 0x6a, 0xef, 0x3b, 0x19, 0xbf, 0x7a, 0x4a, 0xdf, 0x57, 0x6d, }; static const unsigned char ecdsa_secp256r1_sha256_6758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6758_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6758 = { .name = "ecdsa_secp256r1_sha256_6758", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6758_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6758_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6758_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 134 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6759 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6759_pubkey[] = { 0x8a, 0xeb, 0x36, 0x8a, 0x70, 0x27, 0xa4, 0xd6, 0x4a, 0xbd, 0xea, 0x37, 0x39, 0x0c, 0x0c, 0x1d, 0x6a, 0x26, 0xf3, 0x99, 0xe2, 0xd9, 0x73, 0x4d, 0xe1, 0xeb, 0x3d, 0x0e, 0x19, 0x37, 0x38, 0x74, 0x05, 0xbd, 0x13, 0x83, 0x47, 0x15, 0xe1, 0xdb, 0xae, 0x9b, 0x87, 0x5c, 0xf0, 0x7b, 0xd5, 0x5e, 0x1b, 0x66, 0x91, 0xc7, 0xf7, 0x53, 0x6a, 0xef, 0x3b, 0x19, 0xbf, 0x7a, 0x4a, 0xdf, 0x57, 0x6d, }; static const unsigned char ecdsa_secp256r1_sha256_6759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6759_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6759 = { .name = "ecdsa_secp256r1_sha256_6759", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6759_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6759_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6759_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 135 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6760 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6760_pubkey[] = { 0xb5, 0x33, 0xd4, 0x69, 0x5d, 0xd5, 0xb8, 0xc5, 0xe0, 0x77, 0x57, 0xe5, 0x5e, 0x6e, 0x51, 0x6f, 0x7e, 0x2c, 0x88, 0xfa, 0x02, 0x39, 0xe2, 0x3f, 0x60, 0xe8, 0xec, 0x07, 0xdd, 0x70, 0xf2, 0x87, 0x1b, 0x13, 0x4e, 0xe5, 0x8c, 0xc5, 0x83, 0x27, 0x84, 0x56, 0x86, 0x3f, 0x33, 0xc3, 0xa8, 0x5d, 0x88, 0x1f, 0x7d, 0x4a, 0x39, 0x85, 0x01, 0x43, 0xe2, 0x9d, 0x4e, 0xaf, 0x00, 0x9a, 0xfe, 0x47, }; static const unsigned char ecdsa_secp256r1_sha256_6760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6760_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6760 = { .name = "ecdsa_secp256r1_sha256_6760", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6760_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6760_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6760_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 136 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6761 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6761_pubkey[] = { 0xf5, 0x0d, 0x37, 0x1b, 0x91, 0xbf, 0xb1, 0xd7, 0xd1, 0x4e, 0x13, 0x23, 0x52, 0x3b, 0xc3, 0xaa, 0x8c, 0xbf, 0x2c, 0x57, 0xf9, 0xe2, 0x84, 0xde, 0x62, 0x8c, 0x8b, 0x45, 0x36, 0x78, 0x7b, 0x86, 0xf9, 0x4a, 0xd8, 0x87, 0xac, 0x94, 0xd5, 0x27, 0x24, 0x7c, 0xd2, 0xe7, 0xd0, 0xc8, 0xb1, 0x29, 0x1c, 0x55, 0x3c, 0x97, 0x30, 0x40, 0x53, 0x80, 0xb1, 0x4c, 0xbb, 0x20, 0x9f, 0x5f, 0xa2, 0xdd, }; static const unsigned char ecdsa_secp256r1_sha256_6761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6761_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6761 = { .name = "ecdsa_secp256r1_sha256_6761", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6761_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6761_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6761_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 137 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6762 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6762_pubkey[] = { 0x68, 0xec, 0x6e, 0x29, 0x8e, 0xaf, 0xe1, 0x65, 0x39, 0x15, 0x6c, 0xe5, 0x7a, 0x14, 0xb0, 0x4a, 0x70, 0x47, 0xc2, 0x21, 0xba, 0xfc, 0x3a, 0x58, 0x2e, 0xae, 0xb0, 0xd8, 0x57, 0xc4, 0xd9, 0x46, 0x97, 0xbe, 0xd1, 0xaf, 0x17, 0x85, 0x01, 0x17, 0xfd, 0xb3, 0x9b, 0x23, 0x24, 0xf2, 0x20, 0xa5, 0x69, 0x8e, 0xd1, 0x6c, 0x42, 0x6a, 0x27, 0x33, 0x5b, 0xb3, 0x85, 0xac, 0x8c, 0xa6, 0xfb, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6762_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6762 = { .name = "ecdsa_secp256r1_sha256_6762", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6762_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6762_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6762_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 138 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6763 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6763_pubkey[] = { 0x69, 0xda, 0x03, 0x64, 0x73, 0x4d, 0x2e, 0x53, 0x0f, 0xec, 0xe9, 0x40, 0x19, 0x26, 0x5f, 0xef, 0xb7, 0x81, 0xa0, 0xf1, 0xb0, 0x8f, 0x6c, 0x88, 0x97, 0xbd, 0xf6, 0x55, 0x79, 0x27, 0xc8, 0xb8, 0x66, 0xd2, 0xd3, 0xc7, 0xdc, 0xd5, 0x18, 0xb2, 0x3d, 0x72, 0x69, 0x60, 0xf0, 0x69, 0xad, 0x71, 0xa9, 0x33, 0xd8, 0x6e, 0xf8, 0xab, 0xbc, 0xce, 0x8b, 0x20, 0xf7, 0x1e, 0x2a, 0x84, 0x70, 0x02, }; static const unsigned char ecdsa_secp256r1_sha256_6763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6763_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6763 = { .name = "ecdsa_secp256r1_sha256_6763", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6763_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6763_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6763_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 139 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6764 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6764_pubkey[] = { 0xd8, 0xad, 0xc0, 0x00, 0x23, 0xa8, 0xed, 0xc0, 0x25, 0x76, 0xe2, 0xb6, 0x3e, 0x3e, 0x30, 0x62, 0x1a, 0x47, 0x1e, 0x2b, 0x23, 0x20, 0x62, 0x01, 0x87, 0xbf, 0x06, 0x7a, 0x1a, 0xc1, 0xff, 0x32, 0x33, 0xe2, 0xb5, 0x0e, 0xc0, 0x98, 0x07, 0xac, 0xcb, 0x36, 0x13, 0x1f, 0xff, 0x95, 0xed, 0x12, 0xa0, 0x9a, 0x86, 0xb4, 0xea, 0x96, 0x90, 0xaa, 0x32, 0x86, 0x15, 0x76, 0xba, 0x23, 0x62, 0xe1, }; static const unsigned char ecdsa_secp256r1_sha256_6764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6764_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6764 = { .name = "ecdsa_secp256r1_sha256_6764", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6764_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6764_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6764_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 140 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6765 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6765_pubkey[] = { 0x36, 0x23, 0xac, 0x97, 0x3c, 0xed, 0x0a, 0x56, 0xfa, 0x6d, 0x88, 0x2f, 0x03, 0xa7, 0xd5, 0xc7, 0xed, 0xca, 0x02, 0xcf, 0xc7, 0xb2, 0x40, 0x1f, 0xab, 0x36, 0x90, 0xdb, 0xe7, 0x5a, 0xb7, 0x85, 0x8d, 0xb0, 0x69, 0x08, 0xe6, 0x4b, 0x28, 0x61, 0x3d, 0xa7, 0x25, 0x7e, 0x73, 0x7f, 0x39, 0x79, 0x3d, 0xa8, 0xe7, 0x13, 0xba, 0x06, 0x43, 0xb9, 0x2e, 0x9b, 0xb3, 0x25, 0x2b, 0xe7, 0xf8, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha256_6765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6765_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6765 = { .name = "ecdsa_secp256r1_sha256_6765", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6765_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6765_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6765_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 141 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6766 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6766_pubkey[] = { 0xcf, 0x04, 0xea, 0x77, 0xe9, 0x62, 0x25, 0x23, 0xd8, 0x94, 0xb9, 0x3f, 0xf5, 0x2d, 0xc3, 0x02, 0x7b, 0x31, 0x95, 0x95, 0x03, 0xb6, 0xfa, 0x38, 0x90, 0xe5, 0xe0, 0x42, 0x63, 0xf9, 0x22, 0xf1, 0xe8, 0x52, 0x8f, 0xb7, 0xc0, 0x06, 0xb3, 0x98, 0x3c, 0x8b, 0x84, 0x00, 0xe5, 0x7b, 0x4e, 0xd7, 0x17, 0x40, 0xc2, 0xf3, 0x97, 0x54, 0x38, 0x82, 0x11, 0x99, 0xbe, 0xde, 0xae, 0xca, 0xb2, 0xe9, }; static const unsigned char ecdsa_secp256r1_sha256_6766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6766_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6766 = { .name = "ecdsa_secp256r1_sha256_6766", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6766_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6766_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6766_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 142 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6767 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6767_pubkey[] = { 0xdb, 0x7a, 0x2c, 0x8a, 0x1a, 0xb5, 0x73, 0xe5, 0x92, 0x9d, 0xc2, 0x40, 0x77, 0xb5, 0x08, 0xd7, 0xe6, 0x83, 0xd4, 0x92, 0x27, 0x99, 0x6b, 0xda, 0x3e, 0x9f, 0x78, 0xdb, 0xef, 0xf7, 0x73, 0x50, 0x4f, 0x41, 0x7f, 0x3b, 0xc9, 0xa8, 0x80, 0x75, 0xc2, 0xe0, 0xaa, 0xdd, 0x5a, 0x13, 0x31, 0x17, 0x30, 0xcf, 0x7c, 0xc7, 0x6a, 0x82, 0xf1, 0x1a, 0x36, 0xea, 0xf0, 0x8a, 0x6c, 0x99, 0xa2, 0x06, }; static const unsigned char ecdsa_secp256r1_sha256_6767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6767_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe9, 0x1e, 0x1b, 0xa6, 0x0f, 0xde, 0xdb, 0x76, 0xa4, 0x6b, 0xcb, 0x51, 0xdc, 0x0b, 0x8b, 0x4b, 0x7e, 0x01, 0x9f, 0x0a, 0x28, 0x72, 0x18, 0x85, 0xfa, 0x5d, 0x3a, 0x81, 0x96, 0x62, 0x33, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6767 = { .name = "ecdsa_secp256r1_sha256_6767", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6767_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6767_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6767_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 143 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6768 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6768_pubkey[] = { 0xde, 0xad, 0x11, 0xc7, 0xa5, 0xb3, 0x96, 0x86, 0x2f, 0x21, 0x97, 0x4d, 0xc4, 0x75, 0x2f, 0xad, 0xef, 0xf9, 0x94, 0xef, 0xe9, 0xbb, 0xd0, 0x5a, 0xb4, 0x13, 0x76, 0x5e, 0xa8, 0x0b, 0x6e, 0x1f, 0x1d, 0xe3, 0xf0, 0x64, 0x0e, 0x8a, 0xc6, 0xed, 0xcf, 0x89, 0xcf, 0xf5, 0x3c, 0x40, 0xe2, 0x65, 0xbb, 0x94, 0x07, 0x8a, 0x34, 0x37, 0x36, 0xdf, 0x07, 0xaa, 0x03, 0x18, 0xfc, 0x7f, 0xe1, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_6768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6768_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xea, 0x58, 0x43, 0xff, 0xeb, 0x73, 0xaf, 0x94, 0x31, 0x3b, 0xa4, 0x83, 0x1b, 0x53, 0xfe, 0x24, 0xf7, 0x99, 0xe5, 0x25, 0xb1, 0xe8, 0xe8, 0xc8, 0x7b, 0x59, 0xb9, 0x5b, 0x43, 0x0a, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6768 = { .name = "ecdsa_secp256r1_sha256_6768", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6768_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6768_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6768_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 144 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6769 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6769_pubkey[] = { 0xd0, 0xbc, 0x47, 0x2e, 0x0d, 0x7c, 0x81, 0xeb, 0xae, 0xd3, 0xa6, 0xef, 0x96, 0xc1, 0x86, 0x13, 0xbb, 0x1f, 0xea, 0x6f, 0x99, 0x43, 0x26, 0xfb, 0xe8, 0x0e, 0x00, 0xdf, 0xde, 0x67, 0xc7, 0xe9, 0x98, 0x6c, 0x72, 0x3e, 0xa4, 0x84, 0x3d, 0x48, 0x38, 0x9b, 0x94, 0x6f, 0x64, 0xad, 0x56, 0xc8, 0x3a, 0xd7, 0x0f, 0xf1, 0x7b, 0xa8, 0x53, 0x35, 0x66, 0x7d, 0x1b, 0xb9, 0xfa, 0x61, 0x9e, 0xfd, }; static const unsigned char ecdsa_secp256r1_sha256_6769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6769_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x03, 0xff, 0xca, 0xbf, 0x2f, 0x1b, 0x4d, 0x2a, 0x65, 0x19, 0x0d, 0xb1, 0x68, 0x0d, 0x62, 0xbb, 0x99, 0x4e, 0x41, 0xc5, 0x25, 0x1c, 0xd7, 0x3b, 0x3c, 0x3d, 0xfc, 0x5e, 0x5b, 0xaf, 0xc0, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6769 = { .name = "ecdsa_secp256r1_sha256_6769", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6769_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6769_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6769_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 145 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6770 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6770_pubkey[] = { 0xa0, 0xa4, 0x4c, 0xa9, 0x47, 0xd6, 0x6a, 0x2a, 0xcb, 0x73, 0x60, 0x08, 0xb9, 0xc0, 0x8d, 0x1a, 0xb2, 0xad, 0x03, 0x77, 0x6e, 0x02, 0x64, 0x0f, 0x78, 0x49, 0x5d, 0x45, 0x8d, 0xd5, 0x1c, 0x32, 0x63, 0x37, 0xfe, 0x5c, 0xf8, 0xc4, 0x60, 0x4b, 0x1f, 0x1c, 0x40, 0x9d, 0xc2, 0xd8, 0x72, 0xd4, 0x29, 0x4a, 0x47, 0x62, 0x42, 0x0d, 0xf4, 0x3a, 0x30, 0xa2, 0x39, 0x2e, 0x40, 0x42, 0x6a, 0xdd, }; static const unsigned char ecdsa_secp256r1_sha256_6770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6770_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4d, 0xfb, 0xc4, 0x01, 0xf9, 0x71, 0xcd, 0x30, 0x4b, 0x33, 0xdf, 0xdb, 0x17, 0xd0, 0xfe, 0xd0, 0xfe, 0x4c, 0x1a, 0x88, 0xae, 0x64, 0x8e, 0x0d, 0x28, 0x47, 0xf7, 0x49, 0x77, 0x53, 0x49, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6770 = { .name = "ecdsa_secp256r1_sha256_6770", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6770_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6770_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6770_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 146 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6771 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6771_pubkey[] = { 0xc9, 0xc2, 0x11, 0x52, 0x90, 0xd0, 0x08, 0xb4, 0x5f, 0xb6, 0x5f, 0xad, 0x0f, 0x60, 0x23, 0x89, 0x29, 0x8c, 0x25, 0x42, 0x0b, 0x77, 0x50, 0x19, 0xd4, 0x2b, 0x62, 0xc3, 0xce, 0x8a, 0x96, 0xb7, 0x38, 0x77, 0xd2, 0x5a, 0x80, 0x80, 0xdc, 0x02, 0xd9, 0x87, 0xca, 0x73, 0x0f, 0x04, 0x05, 0xc2, 0xc9, 0xdb, 0xef, 0xac, 0x46, 0xf9, 0xe6, 0x01, 0xcc, 0x3f, 0x06, 0xe9, 0x71, 0x39, 0x73, 0xfd, }; static const unsigned char ecdsa_secp256r1_sha256_6771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6771_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbc, 0x40, 0x24, 0x76, 0x1c, 0xd2, 0xff, 0xd4, 0x3d, 0xfd, 0xb1, 0x7d, 0x0f, 0xed, 0x11, 0x2b, 0x98, 0x89, 0x77, 0x05, 0x5c, 0xd3, 0xa8, 0xe5, 0x49, 0x71, 0xeb, 0xa9, 0xcd, 0xa5, 0xca, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6771 = { .name = "ecdsa_secp256r1_sha256_6771", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6771_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6771_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6771_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 147 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6772 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6772_pubkey[] = { 0x5e, 0xca, 0x1e, 0xf4, 0xc2, 0x87, 0xdd, 0xdc, 0x66, 0xb8, 0xbc, 0xcf, 0x1b, 0x88, 0xe8, 0xa2, 0x4c, 0x00, 0x18, 0x96, 0x2f, 0x3c, 0x5e, 0x7e, 0xfa, 0x83, 0xbc, 0x1a, 0x5f, 0xf6, 0x03, 0x3e, 0x5e, 0x79, 0xc4, 0xcb, 0x2c, 0x24, 0x5b, 0x8c, 0x45, 0xab, 0xdc, 0xe8, 0xa8, 0xe4, 0xda, 0x75, 0x8d, 0x92, 0xa6, 0x07, 0xc3, 0x2c, 0xd4, 0x07, 0xec, 0xae, 0xf2, 0x2f, 0x1c, 0x93, 0x4a, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_6772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6772_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x78, 0x80, 0x48, 0xed, 0x39, 0xa5, 0xff, 0xa7, 0x7b, 0xfb, 0x62, 0xfa, 0x1f, 0xda, 0x22, 0x57, 0x74, 0x2b, 0xf3, 0x5d, 0x12, 0x8f, 0xb3, 0x45, 0x9f, 0x2a, 0x0c, 0x90, 0x9e, 0xe8, 0x6f, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6772 = { .name = "ecdsa_secp256r1_sha256_6772", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6772_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6772_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6772_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 148 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6773 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6773_pubkey[] = { 0x5c, 0xaa, 0xa0, 0x30, 0xe7, 0xfd, 0xf0, 0xe4, 0x93, 0x6b, 0xc7, 0xab, 0x5a, 0x96, 0x35, 0x3e, 0x0a, 0x01, 0xe4, 0x13, 0x0c, 0x3f, 0x8b, 0xf2, 0x2d, 0x47, 0x3e, 0x31, 0x70, 0x29, 0xa4, 0x7a, 0xde, 0xb6, 0xad, 0xc4, 0x62, 0xf7, 0x05, 0x8f, 0x2a, 0x20, 0xd3, 0x71, 0xe9, 0x70, 0x22, 0x54, 0xe9, 0xb2, 0x01, 0x64, 0x20, 0x05, 0xb3, 0xce, 0xda, 0x92, 0x6b, 0x42, 0xb1, 0x78, 0xbe, 0xf9, }; static const unsigned char ecdsa_secp256r1_sha256_6773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6773_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x47, 0x6d, 0x91, 0x31, 0xfd, 0x38, 0x1b, 0xd9, 0x17, 0xd0, 0xfe, 0xd1, 0x12, 0xbc, 0x9e, 0x0a, 0x59, 0x24, 0xb5, 0xed, 0x5b, 0x11, 0x16, 0x7e, 0xdd, 0x8b, 0x23, 0x58, 0x2b, 0x3c, 0xb1, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6773 = { .name = "ecdsa_secp256r1_sha256_6773", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6773_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6773_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6773_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 149 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6774 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6774_pubkey[] = { 0xc2, 0xfd, 0x20, 0xba, 0xc0, 0x6e, 0x55, 0x5b, 0xb8, 0xac, 0x0c, 0xe6, 0x9e, 0xb1, 0xea, 0x20, 0xf8, 0x3a, 0x1f, 0xc3, 0x50, 0x1c, 0x8a, 0x66, 0x46, 0x9b, 0x1a, 0x31, 0xf6, 0x19, 0xb0, 0x98, 0x62, 0x37, 0x05, 0x07, 0x79, 0xf5, 0x2b, 0x61, 0x5b, 0xd7, 0xb8, 0xd7, 0x6a, 0x25, 0xfc, 0x95, 0xca, 0x2e, 0xd3, 0x25, 0x25, 0xc7, 0x5f, 0x27, 0xff, 0xc8, 0x7a, 0xc3, 0x97, 0xe6, 0xcb, 0xaf, }; static const unsigned char ecdsa_secp256r1_sha256_6774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6774_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x74, 0x25, 0x3e, 0x3e, 0x21, 0xbd, 0x15, 0x44, 0x48, 0xd0, 0xa8, 0xf6, 0x40, 0xfe, 0x46, 0xfa, 0xfa, 0x8b, 0x19, 0xce, 0x78, 0xd5, 0x38, 0xf6, 0xcc, 0x0a, 0x19, 0x66, 0x2d, 0x36, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6774 = { .name = "ecdsa_secp256r1_sha256_6774", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6774_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6774_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6774_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 150 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6775 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6775_pubkey[] = { 0x3f, 0xd6, 0xa1, 0xca, 0x7f, 0x77, 0xfb, 0x3b, 0x0b, 0xbe, 0x72, 0x6c, 0x37, 0x20, 0x10, 0x06, 0x84, 0x26, 0xe1, 0x1e, 0xa6, 0xae, 0x78, 0xce, 0x17, 0xbe, 0xda, 0xe4, 0xbb, 0xa8, 0x6c, 0xed, 0x03, 0xce, 0x55, 0x16, 0x40, 0x6b, 0xf8, 0xcf, 0xaa, 0xb8, 0x74, 0x5e, 0xac, 0x1c, 0xd6, 0x90, 0x18, 0xad, 0x6f, 0x50, 0xb5, 0x46, 0x18, 0x72, 0xdd, 0xfc, 0x56, 0xe0, 0xdb, 0x3c, 0x8f, 0xf4, }; static const unsigned char ecdsa_secp256r1_sha256_6775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6775_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x35, 0x7c, 0xfd, 0x3b, 0xe4, 0xd0, 0x1d, 0x41, 0x3c, 0x5b, 0x9e, 0xde, 0x36, 0xcb, 0xa5, 0x45, 0x2c, 0x11, 0xee, 0x7f, 0xe1, 0x48, 0x79, 0xe7, 0x49, 0xae, 0x6a, 0x2d, 0x89, 0x7a, 0x52, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6775 = { .name = "ecdsa_secp256r1_sha256_6775", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6775_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6775_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6775_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 151 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6776 for ECDSA, tcId is 152 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6776_pubkey[] = { 0x9c, 0xb8, 0xe5, 0x1e, 0x27, 0xa5, 0xae, 0x3b, 0x62, 0x4a, 0x60, 0xd6, 0xdc, 0x32, 0x73, 0x4e, 0x49, 0x89, 0xdb, 0x20, 0xe9, 0xbc, 0xa3, 0xed, 0xe1, 0xed, 0xf7, 0xb0, 0x86, 0x91, 0x11, 0x14, 0xb4, 0xc1, 0x04, 0xab, 0x3c, 0x67, 0x7e, 0x4b, 0x36, 0xd6, 0x55, 0x6e, 0x8a, 0xd5, 0xf5, 0x23, 0x41, 0x0a, 0x19, 0xf2, 0xe2, 0x77, 0xaa, 0x89, 0x5f, 0xc5, 0x73, 0x22, 0xb4, 0x42, 0x75, 0x44, }; static const unsigned char ecdsa_secp256r1_sha256_6776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6776_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x29, 0x79, 0x8c, 0x5c, 0x0e, 0xe2, 0x87, 0xd4, 0xa5, 0xe8, 0xe6, 0xb7, 0x99, 0xfd, 0x86, 0xb8, 0xdf, 0x52, 0x25, 0x29, 0x8e, 0x6f, 0xfc, 0x80, 0x7c, 0xd2, 0xf2, 0xbc, 0x27, 0xa0, 0xa6, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6776 = { .name = "ecdsa_secp256r1_sha256_6776", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6776_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6776_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6776_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 152 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6777 for ECDSA, tcId is 153 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6777_pubkey[] = { 0xa3, 0xe5, 0x2c, 0x15, 0x6d, 0xca, 0xf1, 0x05, 0x02, 0x62, 0x0b, 0x79, 0x55, 0xbc, 0x2b, 0x40, 0xbc, 0x78, 0xef, 0x3d, 0x56, 0x9e, 0x12, 0x23, 0xc2, 0x62, 0x51, 0x2d, 0x8f, 0x49, 0x60, 0x2a, 0x4a, 0x20, 0x39, 0xf3, 0x1c, 0x10, 0x97, 0x02, 0x4a, 0xd3, 0xcc, 0x86, 0xe5, 0x73, 0x21, 0xde, 0x03, 0x23, 0x55, 0x46, 0x34, 0x86, 0x16, 0x4c, 0xf1, 0x92, 0x94, 0x49, 0x77, 0xdf, 0x14, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha256_6777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6777_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x0b, 0x70, 0xf2, 0x2c, 0x78, 0x10, 0x92, 0x45, 0x2d, 0xca, 0x1a, 0x57, 0x11, 0xfa, 0x3a, 0x5a, 0x1f, 0x72, 0xad, 0xd1, 0xbf, 0x52, 0xc2, 0xff, 0x7c, 0xae, 0x48, 0x20, 0xb3, 0x00, 0x78, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6777 = { .name = "ecdsa_secp256r1_sha256_6777", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6777_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6777_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6777_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 153 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6778 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6778_pubkey[] = { 0xf1, 0x9b, 0x78, 0x92, 0x87, 0x20, 0xd5, 0xbe, 0xe8, 0xe6, 0x70, 0xfb, 0x90, 0x01, 0x0f, 0xb1, 0x5c, 0x37, 0xbf, 0x91, 0xb5, 0x8a, 0x51, 0x57, 0xc3, 0xf3, 0xc0, 0x59, 0xb2, 0x65, 0x5e, 0x88, 0xcf, 0x70, 0x1e, 0xc9, 0x62, 0xfb, 0x4a, 0x11, 0xdc, 0xf2, 0x73, 0xf5, 0xdc, 0x35, 0x7e, 0x58, 0x46, 0x85, 0x60, 0xc7, 0xcf, 0xeb, 0x94, 0x2d, 0x07, 0x4a, 0xbd, 0x43, 0x29, 0x26, 0x05, 0x09, }; static const unsigned char ecdsa_secp256r1_sha256_6778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6778_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x16, 0xe1, 0xe4, 0x58, 0xf0, 0x21, 0x24, 0x8a, 0x5b, 0x94, 0x34, 0xae, 0x23, 0xf4, 0x74, 0xb4, 0x3e, 0xe5, 0x5b, 0xa3, 0x7e, 0xa5, 0x85, 0xfe, 0xf9, 0x5c, 0x90, 0x41, 0x66, 0x00, 0xf1, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6778 = { .name = "ecdsa_secp256r1_sha256_6778", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6778_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6778_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6778_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 154 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6779 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6779_pubkey[] = { 0x83, 0xa7, 0x44, 0x45, 0x9e, 0xcd, 0xfb, 0x01, 0xa5, 0xcf, 0x52, 0xb2, 0x7a, 0x05, 0xbb, 0x73, 0x37, 0x48, 0x2d, 0x24, 0x2f, 0x23, 0x5d, 0x7b, 0x4c, 0xb8, 0x93, 0x45, 0x54, 0x5c, 0x90, 0xa8, 0xc0, 0x5d, 0x49, 0x33, 0x7b, 0x96, 0x49, 0x81, 0x32, 0x87, 0xde, 0x9f, 0xfe, 0x90, 0x35, 0x5f, 0xd9, 0x05, 0xdf, 0x5f, 0x3c, 0x32, 0x94, 0x58, 0x28, 0x12, 0x1f, 0x37, 0xcc, 0x50, 0xde, 0x6e, }; static const unsigned char ecdsa_secp256r1_sha256_6779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6779_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x22, 0x52, 0xd6, 0x85, 0x68, 0x31, 0xb6, 0xcf, 0x89, 0x5e, 0x4f, 0x05, 0x35, 0xee, 0xaf, 0x0e, 0x5e, 0x58, 0x09, 0x75, 0x3d, 0xf8, 0x48, 0xfe, 0x76, 0x0a, 0xd8, 0x62, 0x19, 0x01, 0x6a, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6779 = { .name = "ecdsa_secp256r1_sha256_6779", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6779_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6779_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6779_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 155 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6780 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6780_pubkey[] = { 0xdd, 0x13, 0xc6, 0xb3, 0x4c, 0x56, 0x98, 0x2d, 0xda, 0xe1, 0x24, 0xf0, 0x39, 0xdf, 0xd2, 0x3f, 0x4b, 0x19, 0xbb, 0xe8, 0x8c, 0xee, 0x8e, 0x52, 0x8a, 0xe5, 0x1e, 0x5d, 0x6f, 0x3a, 0x21, 0xd7, 0xbf, 0xad, 0x4c, 0x2e, 0x6f, 0x26, 0x3f, 0xe5, 0xeb, 0x59, 0xca, 0x97, 0x4d, 0x03, 0x9f, 0xc0, 0xe4, 0xc3, 0x34, 0x56, 0x92, 0xfb, 0x53, 0x20, 0xbd, 0xae, 0x4b, 0xd3, 0xb4, 0x2a, 0x45, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_6780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6780_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x81, 0xff, 0xe5, 0x5f, 0x17, 0x8d, 0xa6, 0x95, 0xb2, 0x8c, 0x86, 0xd8, 0xb4, 0x06, 0xb1, 0x5d, 0xab, 0x1a, 0x9e, 0x39, 0x66, 0x1a, 0x3a, 0xe0, 0x17, 0xfb, 0xe3, 0x90, 0xac, 0x09, 0x72, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6780 = { .name = "ecdsa_secp256r1_sha256_6780", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6780_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6780_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6780_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 156 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6781 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6781_pubkey[] = { 0x67, 0xe6, 0xf6, 0x59, 0xcd, 0xde, 0x86, 0x9a, 0x2f, 0x65, 0xf0, 0x94, 0xe9, 0x4e, 0x5b, 0x4d, 0xfa, 0xd6, 0x36, 0xbb, 0xf9, 0x51, 0x92, 0xfe, 0xee, 0xd0, 0x1b, 0x0f, 0x3d, 0xeb, 0x74, 0x60, 0xa3, 0x7e, 0x0a, 0x51, 0xf2, 0x58, 0xb7, 0xae, 0xb5, 0x1d, 0xfe, 0x59, 0x2f, 0x5c, 0xfd, 0x56, 0x85, 0xbb, 0xe5, 0x87, 0x12, 0xc8, 0xd9, 0x23, 0x3c, 0x62, 0x88, 0x64, 0x37, 0xc3, 0x8b, 0xa0, }; static const unsigned char ecdsa_secp256r1_sha256_6781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6781_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6781 = { .name = "ecdsa_secp256r1_sha256_6781", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6781_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6781_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6781_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 157 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6782 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6782_pubkey[] = { 0x2e, 0xb6, 0x41, 0x25, 0x05, 0xae, 0xc0, 0x5c, 0x65, 0x45, 0xf0, 0x29, 0x93, 0x20, 0x87, 0xe4, 0x90, 0xd0, 0x55, 0x11, 0xe8, 0xec, 0x1f, 0x59, 0x96, 0x17, 0xbb, 0x36, 0x7f, 0x9e, 0xca, 0xaf, 0x80, 0x5f, 0x51, 0xef, 0xcc, 0x48, 0x03, 0x40, 0x3f, 0x9b, 0x1a, 0xe0, 0x12, 0x48, 0x90, 0xf0, 0x6a, 0x43, 0xfe, 0xdc, 0xdd, 0xb3, 0x18, 0x30, 0xf6, 0x66, 0x9a, 0xf2, 0x92, 0x89, 0x5c, 0xb0, }; static const unsigned char ecdsa_secp256r1_sha256_6782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6782_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6782 = { .name = "ecdsa_secp256r1_sha256_6782", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6782_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6782_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6782_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 158 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6783 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6783_pubkey[] = { 0x84, 0xdb, 0x64, 0x58, 0x68, 0xea, 0xb3, 0x5e, 0x3a, 0x9f, 0xd8, 0x0e, 0x05, 0x6e, 0x2e, 0x85, 0x54, 0x35, 0xe3, 0xa6, 0xb6, 0x8d, 0x75, 0xa5, 0x0a, 0x85, 0x46, 0x25, 0xfe, 0x0d, 0x7f, 0x35, 0x6d, 0x25, 0x89, 0xac, 0x65, 0x5e, 0xdc, 0x9a, 0x11, 0xef, 0x3e, 0x07, 0x5e, 0xdd, 0xda, 0x9a, 0xbf, 0x92, 0xe7, 0x21, 0x71, 0x57, 0x0e, 0xf7, 0xbf, 0x43, 0xa2, 0xee, 0x39, 0x33, 0x8c, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha256_6783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6783_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6783 = { .name = "ecdsa_secp256r1_sha256_6783", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6783_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6783_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6783_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 159 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6784 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6784_pubkey[] = { 0x91, 0xb9, 0xe4, 0x7c, 0x56, 0x27, 0x86, 0x62, 0xd7, 0x5c, 0x09, 0x83, 0xb2, 0x2c, 0xa8, 0xea, 0x6a, 0xa5, 0x05, 0x9b, 0x7a, 0x2f, 0xf7, 0x63, 0x7e, 0xb2, 0x97, 0x5e, 0x38, 0x6a, 0xd6, 0x63, 0x49, 0xaa, 0x8f, 0xf2, 0x83, 0xd0, 0xf7, 0x7c, 0x18, 0xd6, 0xd1, 0x1d, 0xc0, 0x62, 0x16, 0x5f, 0xd1, 0x3c, 0x3c, 0x03, 0x10, 0x67, 0x9c, 0x14, 0x08, 0x30, 0x2a, 0x16, 0x85, 0x4e, 0xcf, 0xbd, }; static const unsigned char ecdsa_secp256r1_sha256_6784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6784_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6784 = { .name = "ecdsa_secp256r1_sha256_6784", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6784_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6784_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6784_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 160 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6785 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6785_pubkey[] = { 0xf3, 0xec, 0x2f, 0x13, 0xca, 0xf0, 0x4d, 0x01, 0x92, 0xb4, 0x7f, 0xb4, 0xc5, 0x31, 0x1f, 0xb6, 0xd4, 0xdc, 0x6b, 0x0a, 0x9e, 0x80, 0x2e, 0x53, 0x27, 0xf7, 0xec, 0x5e, 0xe8, 0xe4, 0x83, 0x4d, 0xf9, 0x7e, 0x3e, 0x46, 0x8b, 0x7d, 0x0d, 0xb8, 0x67, 0xd6, 0xec, 0xfe, 0x81, 0xe2, 0xb0, 0xf9, 0x53, 0x1d, 0xf8, 0x7e, 0xfd, 0xb4, 0x7c, 0x13, 0x38, 0xac, 0x32, 0x1f, 0xef, 0xe5, 0xa4, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6785_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6785 = { .name = "ecdsa_secp256r1_sha256_6785", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6785_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6785_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6785_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 161 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6786 for ECDSA, tcId is 162 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6786_pubkey[] = { 0xd9, 0x2b, 0x20, 0x0a, 0xef, 0xca, 0xb6, 0xac, 0x7d, 0xaf, 0xd9, 0xac, 0xaf, 0x2f, 0xa1, 0x0b, 0x31, 0x80, 0x23, 0x5b, 0x8f, 0x46, 0xb4, 0x50, 0x3e, 0x46, 0x93, 0xc6, 0x70, 0xfc, 0xcc, 0x88, 0x5e, 0xf2, 0xf3, 0xae, 0xbf, 0x5b, 0x31, 0x74, 0x75, 0x33, 0x62, 0x56, 0x76, 0x8f, 0x7c, 0x19, 0xef, 0xb7, 0x35, 0x2d, 0x27, 0xe4, 0xcc, 0xca, 0xdc, 0x85, 0xb6, 0xb8, 0xab, 0x92, 0x2c, 0x72, }; static const unsigned char ecdsa_secp256r1_sha256_6786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6786_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6786 = { .name = "ecdsa_secp256r1_sha256_6786", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6786_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6786_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6786_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 162 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6787 for ECDSA, tcId is 163 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6787_pubkey[] = { 0x0a, 0x88, 0x36, 0x1e, 0xb9, 0x2e, 0xcc, 0xa2, 0x62, 0x5b, 0x38, 0xe5, 0xf9, 0x8b, 0xba, 0xbb, 0x96, 0xbf, 0x17, 0x9b, 0x3d, 0x76, 0xfc, 0x48, 0x14, 0x0a, 0x3b, 0xcd, 0x88, 0x15, 0x23, 0xcd, 0xe6, 0xbd, 0xf5, 0x60, 0x33, 0xf8, 0x4a, 0x50, 0x54, 0x03, 0x55, 0x97, 0x37, 0x5d, 0x90, 0x86, 0x6a, 0xa2, 0xc9, 0x6b, 0x86, 0xa4, 0x1c, 0xcf, 0x6e, 0xde, 0xbf, 0x47, 0x29, 0x8a, 0xd4, 0x89, }; static const unsigned char ecdsa_secp256r1_sha256_6787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6787_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6787 = { .name = "ecdsa_secp256r1_sha256_6787", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6787_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6787_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6787_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 163 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6788 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6788_pubkey[] = { 0xd0, 0xfb, 0x17, 0xcc, 0xd8, 0xfa, 0xfe, 0x82, 0x7e, 0x0c, 0x1a, 0xfc, 0x5d, 0x8d, 0x80, 0x36, 0x6e, 0x2b, 0x20, 0xe7, 0xf1, 0x4a, 0x56, 0x3a, 0x2b, 0xa5, 0x04, 0x69, 0xd8, 0x43, 0x75, 0xe8, 0x68, 0x61, 0x25, 0x69, 0xd3, 0x9e, 0x2b, 0xb9, 0xf5, 0x54, 0x35, 0x55, 0x64, 0x64, 0x6d, 0xe9, 0x9a, 0xc6, 0x02, 0xcc, 0x63, 0x49, 0xcf, 0x8c, 0x1e, 0x23, 0x6a, 0x7d, 0xe7, 0x63, 0x7d, 0x93, }; static const unsigned char ecdsa_secp256r1_sha256_6788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6788_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6788 = { .name = "ecdsa_secp256r1_sha256_6788", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6788_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6788_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6788_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 164 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6789 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6789_pubkey[] = { 0x83, 0x6f, 0x33, 0xbb, 0xc1, 0xdc, 0x0d, 0x3d, 0x3a, 0xbb, 0xce, 0xf0, 0xd9, 0x1f, 0x11, 0xe2, 0xac, 0x41, 0x81, 0x07, 0x6c, 0x9a, 0xf0, 0xa2, 0x2b, 0x1e, 0x43, 0x09, 0xd3, 0xed, 0xb2, 0x76, 0x9a, 0xb4, 0x43, 0xff, 0x6f, 0x90, 0x1e, 0x30, 0xc7, 0x73, 0x86, 0x75, 0x82, 0x99, 0x7c, 0x2b, 0xec, 0x2b, 0x0c, 0xb8, 0x12, 0x0d, 0x76, 0x02, 0x36, 0xf3, 0xa9, 0x5b, 0xbe, 0x88, 0x1f, 0x75, }; static const unsigned char ecdsa_secp256r1_sha256_6789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6789_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6789 = { .name = "ecdsa_secp256r1_sha256_6789", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6789_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6789_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6789_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 165 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6790 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6790_pubkey[] = { 0x92, 0xf9, 0x9f, 0xbe, 0x97, 0x3e, 0xd4, 0xa2, 0x99, 0x71, 0x9b, 0xae, 0xe4, 0xb4, 0x32, 0x74, 0x12, 0x37, 0x03, 0x4d, 0xec, 0x8d, 0x72, 0xba, 0x51, 0x03, 0xcb, 0x33, 0xe5, 0x5f, 0xee, 0xb8, 0x03, 0x3d, 0xd0, 0xe9, 0x11, 0x34, 0xc7, 0x34, 0x17, 0x48, 0x89, 0xf3, 0xeb, 0xcf, 0x1b, 0x7a, 0x1a, 0xc0, 0x57, 0x67, 0x28, 0x92, 0x80, 0xee, 0x7a, 0x79, 0x4c, 0xeb, 0xd6, 0xe6, 0x96, 0x97, }; static const unsigned char ecdsa_secp256r1_sha256_6790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6790_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6790 = { .name = "ecdsa_secp256r1_sha256_6790", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6790_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6790_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6790_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 166 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6791 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6791_pubkey[] = { 0xd3, 0x5b, 0xa5, 0x8d, 0xa3, 0x01, 0x97, 0xd3, 0x78, 0xe6, 0x18, 0xec, 0x0f, 0xa7, 0xe2, 0xe2, 0xd1, 0x2c, 0xff, 0xd7, 0x3e, 0xbb, 0xb2, 0x04, 0x9d, 0x13, 0x0b, 0xba, 0x43, 0x4a, 0xf0, 0x9e, 0xff, 0x83, 0x98, 0x6e, 0x68, 0x75, 0xe4, 0x1e, 0xa4, 0x32, 0xb7, 0x58, 0x5a, 0x49, 0xb3, 0xa6, 0xc7, 0x7c, 0xbb, 0x3c, 0x47, 0x91, 0x9f, 0x8e, 0x82, 0x87, 0x4c, 0x79, 0x46, 0x35, 0xc1, 0xd2, }; static const unsigned char ecdsa_secp256r1_sha256_6791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6791_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6791 = { .name = "ecdsa_secp256r1_sha256_6791", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6791_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6791_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6791_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 167 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6792 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6792_pubkey[] = { 0x86, 0x51, 0xce, 0x49, 0x0f, 0x1b, 0x46, 0xd7, 0x3f, 0x3f, 0xf4, 0x75, 0x14, 0x9b, 0xe2, 0x91, 0x36, 0x69, 0x73, 0x34, 0xa5, 0x19, 0xd7, 0xdd, 0xab, 0x07, 0x25, 0xc8, 0xd0, 0x79, 0x32, 0x24, 0xe1, 0x1c, 0x65, 0xbd, 0x8c, 0xa9, 0x2d, 0xc8, 0xbc, 0x9a, 0xe8, 0x29, 0x11, 0xf0, 0xb5, 0x27, 0x51, 0xce, 0x21, 0xdd, 0x90, 0x03, 0xae, 0x60, 0x90, 0x0b, 0xd8, 0x25, 0xf5, 0x90, 0xcc, 0x28, }; static const unsigned char ecdsa_secp256r1_sha256_6792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6792_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6792 = { .name = "ecdsa_secp256r1_sha256_6792", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6792_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6792_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6792_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 168 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6793 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6793_pubkey[] = { 0x6d, 0x8e, 0x1b, 0x12, 0xc8, 0x31, 0xa0, 0xda, 0x87, 0x95, 0x65, 0x0f, 0xf9, 0x5f, 0x10, 0x1e, 0xd9, 0x21, 0xd9, 0xe2, 0xf7, 0x2b, 0x15, 0xb1, 0xcd, 0xac, 0xa9, 0x82, 0x6b, 0x9c, 0xfc, 0x6d, 0xef, 0x6d, 0x63, 0xe2, 0xbc, 0x5c, 0x08, 0x95, 0x70, 0x39, 0x4a, 0x4b, 0xc9, 0xf8, 0x92, 0xd5, 0xe6, 0xc7, 0xa6, 0xa6, 0x37, 0xb2, 0x04, 0x69, 0xa5, 0x8c, 0x10, 0x6a, 0xd4, 0x86, 0xbf, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6793_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6793_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6793 = { .name = "ecdsa_secp256r1_sha256_6793", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6793_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6793_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6793_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 169 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6794 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6794_pubkey[] = { 0x0a, 0xe5, 0x80, 0xba, 0xe9, 0x33, 0xb4, 0xef, 0x29, 0x97, 0xcb, 0xdb, 0xb0, 0x92, 0x23, 0x28, 0xca, 0x9a, 0x41, 0x0f, 0x62, 0x7a, 0x0f, 0x7d, 0xff, 0x24, 0xcb, 0x4d, 0x92, 0x0e, 0x15, 0x42, 0x89, 0x11, 0xe7, 0xf8, 0xcc, 0x36, 0x5a, 0x8a, 0x88, 0xeb, 0x81, 0x42, 0x1a, 0x36, 0x1c, 0xcc, 0x2b, 0x99, 0xe3, 0x09, 0xd8, 0xdc, 0xd9, 0xa9, 0x8b, 0xa8, 0x3c, 0x39, 0x49, 0xd8, 0x93, 0xe3, }; static const unsigned char ecdsa_secp256r1_sha256_6794_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6794_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6794 = { .name = "ecdsa_secp256r1_sha256_6794", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6794_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6794_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6794_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 170 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6795 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6795_pubkey[] = { 0x5b, 0x81, 0x2f, 0xd5, 0x21, 0xaa, 0xfa, 0x69, 0x83, 0x5a, 0x84, 0x9c, 0xce, 0x6f, 0xbd, 0xeb, 0x69, 0x83, 0xb4, 0x42, 0xd2, 0x44, 0x4f, 0xe7, 0x0e, 0x13, 0x4c, 0x02, 0x7f, 0xc4, 0x69, 0x63, 0x83, 0x8a, 0x40, 0xf2, 0xa3, 0x60, 0x92, 0xe9, 0x00, 0x4e, 0x92, 0xd8, 0xd9, 0x40, 0xcf, 0x56, 0x38, 0x55, 0x0c, 0xe6, 0x72, 0xce, 0x8b, 0x8d, 0x4e, 0x15, 0xeb, 0xa5, 0x49, 0x92, 0x49, 0xe9, }; static const unsigned char ecdsa_secp256r1_sha256_6795_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6795_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xbb, 0x72, 0x66, 0x60, 0x23, 0x57, 0x93, 0xaa, 0x99, 0x57, 0xa6, 0x1e, 0x76, 0xe0, 0x0c, 0x2c, 0x43, 0x51, 0x09, 0xcf, 0x9a, 0x15, 0xdd, 0x62, 0x4d, 0x53, 0xf4, 0x30, 0x10, 0x47, 0x85, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6795 = { .name = "ecdsa_secp256r1_sha256_6795", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6795_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6795_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6795_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 171 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6796 for ECDSA, tcId is 172 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6796_pubkey[] = { 0x5b, 0x81, 0x2f, 0xd5, 0x21, 0xaa, 0xfa, 0x69, 0x83, 0x5a, 0x84, 0x9c, 0xce, 0x6f, 0xbd, 0xeb, 0x69, 0x83, 0xb4, 0x42, 0xd2, 0x44, 0x4f, 0xe7, 0x0e, 0x13, 0x4c, 0x02, 0x7f, 0xc4, 0x69, 0x63, 0x7c, 0x75, 0xbf, 0x0c, 0x5c, 0x9f, 0x6d, 0x17, 0xff, 0xb1, 0x6d, 0x27, 0x26, 0xbf, 0x30, 0xa9, 0xc7, 0xaa, 0xf3, 0x1a, 0x8d, 0x31, 0x74, 0x72, 0xb1, 0xea, 0x14, 0x5a, 0xb6, 0x6d, 0xb6, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_6796_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6796_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xbb, 0x72, 0x66, 0x60, 0x23, 0x57, 0x93, 0xaa, 0x99, 0x57, 0xa6, 0x1e, 0x76, 0xe0, 0x0c, 0x2c, 0x43, 0x51, 0x09, 0xcf, 0x9a, 0x15, 0xdd, 0x62, 0x4d, 0x53, 0xf4, 0x30, 0x10, 0x47, 0x85, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6796 = { .name = "ecdsa_secp256r1_sha256_6796", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6796_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6796_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6796_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 172 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6797 for ECDSA, tcId is 173 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6797_pubkey[] = { 0x6a, 0xdd, 0xa8, 0x2b, 0x90, 0x26, 0x1b, 0x0f, 0x31, 0x9f, 0xaa, 0x0d, 0x87, 0x86, 0x65, 0xa6, 0xb6, 0xda, 0x49, 0x7f, 0x09, 0xc9, 0x03, 0x17, 0x62, 0x22, 0xc3, 0x4a, 0xcf, 0xef, 0x72, 0xa6, 0x47, 0xe6, 0xf5, 0x0d, 0xcc, 0x40, 0xad, 0x5d, 0x9b, 0x59, 0xf7, 0x60, 0x2b, 0xb2, 0x22, 0xfa, 0xd7, 0x1a, 0x41, 0xbf, 0x5e, 0x1f, 0x9d, 0xf4, 0x95, 0x9a, 0x36, 0x4c, 0x62, 0xe4, 0x88, 0xd9, }; static const unsigned char ecdsa_secp256r1_sha256_6797_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6797_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6797 = { .name = "ecdsa_secp256r1_sha256_6797", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6797_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6797_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6797_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 173 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6798 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6798_pubkey[] = { 0x2f, 0xca, 0x0d, 0x0a, 0x47, 0x91, 0x4d, 0xe7, 0x7e, 0xd5, 0x6e, 0x7e, 0xcc, 0xc3, 0x27, 0x6a, 0x60, 0x11, 0x20, 0xc6, 0xdf, 0x00, 0x69, 0xc8, 0x25, 0xc8, 0xf6, 0xa0, 0x1c, 0x9f, 0x38, 0x20, 0x65, 0xf3, 0x45, 0x0a, 0x1d, 0x17, 0xc6, 0xb2, 0x49, 0x89, 0xa3, 0x9b, 0xeb, 0x1c, 0x7d, 0xec, 0xfc, 0xa8, 0x38, 0x4f, 0xbd, 0xc2, 0x94, 0x41, 0x8e, 0x5d, 0x80, 0x7b, 0x3c, 0x6e, 0xd7, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_6798_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6798_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6798 = { .name = "ecdsa_secp256r1_sha256_6798", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6798_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6798_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6798_sig, .siglen = 66, .result = -1, .comment = "point with x-coordinate 0, tcId is 174 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6799 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6799_pubkey[] = { 0xdd, 0x86, 0xd3, 0xb5, 0xf4, 0xa1, 0x3e, 0x85, 0x11, 0x08, 0x3b, 0x78, 0x00, 0x20, 0x81, 0xc5, 0x3f, 0xf4, 0x67, 0xf1, 0x1e, 0xbd, 0x98, 0xa5, 0x1a, 0x63, 0x3d, 0xb7, 0x66, 0x65, 0xd2, 0x50, 0x45, 0xd5, 0xc8, 0x20, 0x0c, 0x89, 0xf2, 0xfa, 0x10, 0xd8, 0x49, 0x34, 0x92, 0x26, 0xd2, 0x1d, 0x8d, 0xfa, 0xed, 0x6f, 0xf8, 0xd5, 0xcb, 0x3e, 0x1b, 0x7e, 0x17, 0x47, 0x4e, 0xbc, 0x18, 0xf7, }; static const unsigned char ecdsa_secp256r1_sha256_6799_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6799_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6799 = { .name = "ecdsa_secp256r1_sha256_6799", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6799_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6799_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6799_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 175 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6800 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6800_pubkey[] = { 0x4f, 0xea, 0x55, 0xb3, 0x2c, 0xb3, 0x2a, 0xca, 0x0c, 0x12, 0xc4, 0xcd, 0x0a, 0xbf, 0xb4, 0xe6, 0x4b, 0x0f, 0x5a, 0x51, 0x6e, 0x57, 0x8c, 0x01, 0x65, 0x91, 0xa9, 0x3f, 0x5a, 0x0f, 0xbc, 0xc5, 0xd7, 0xd3, 0xfd, 0x10, 0xb2, 0xbe, 0x66, 0x8c, 0x54, 0x7b, 0x21, 0x2f, 0x6b, 0xb1, 0x4c, 0x88, 0xf0, 0xfe, 0xcd, 0x38, 0xa8, 0xa4, 0xb2, 0xc7, 0x85, 0xed, 0x3b, 0xe6, 0x2c, 0xe4, 0xb2, 0x80, }; static const unsigned char ecdsa_secp256r1_sha256_6800_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6800_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6800 = { .name = "ecdsa_secp256r1_sha256_6800", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6800_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6800_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6800_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 176 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6801 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6801_pubkey[] = { 0xc6, 0xa7, 0x71, 0x52, 0x70, 0x24, 0x22, 0x77, 0x92, 0x17, 0x0a, 0x6f, 0x8e, 0xee, 0x73, 0x5b, 0xf3, 0x2b, 0x7f, 0x98, 0xaf, 0x66, 0x9e, 0xad, 0x29, 0x98, 0x02, 0xe3, 0x2d, 0x7c, 0x31, 0x07, 0xbc, 0x3b, 0x4b, 0x5e, 0x65, 0xab, 0x88, 0x7b, 0xbd, 0x34, 0x35, 0x72, 0xb3, 0xe5, 0x61, 0x92, 0x61, 0xfe, 0x3a, 0x07, 0x3e, 0x2f, 0xfd, 0x78, 0x41, 0x2f, 0x72, 0x68, 0x67, 0xdb, 0x58, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha256_6801_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6801_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6801 = { .name = "ecdsa_secp256r1_sha256_6801", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6801_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6801_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6801_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 177 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6802 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6802_pubkey[] = { 0x85, 0x1c, 0x2b, 0xba, 0xd0, 0x8e, 0x54, 0xec, 0x7a, 0x9a, 0xf9, 0x9f, 0x49, 0xf0, 0x36, 0x44, 0xd6, 0xec, 0x6d, 0x59, 0xb2, 0x07, 0xfe, 0xc9, 0x8d, 0xe8, 0x5a, 0x7d, 0x15, 0xb9, 0x56, 0xef, 0xce, 0xe9, 0x96, 0x02, 0x83, 0x04, 0x50, 0x75, 0x68, 0x4b, 0x41, 0x0b, 0xe8, 0xd0, 0xf7, 0x49, 0x4b, 0x91, 0xaa, 0x23, 0x79, 0xf6, 0x07, 0x27, 0x31, 0x9f, 0x10, 0xdd, 0xeb, 0x0f, 0xe9, 0xd6, }; static const unsigned char ecdsa_secp256r1_sha256_6802_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6802_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6802 = { .name = "ecdsa_secp256r1_sha256_6802", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6802_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6802_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6802_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 178 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6803 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6803_pubkey[] = { 0xf6, 0x41, 0x7c, 0x8a, 0x67, 0x05, 0x84, 0xe3, 0x88, 0x67, 0x69, 0x49, 0xe5, 0x3d, 0xa7, 0xfc, 0x55, 0x91, 0x1f, 0xf6, 0x83, 0x18, 0xd1, 0xbf, 0x30, 0x61, 0x20, 0x5a, 0xcb, 0x19, 0xc4, 0x8f, 0x8f, 0x2b, 0x74, 0x3d, 0xf3, 0x4a, 0xd0, 0xf7, 0x26, 0x74, 0xac, 0xb7, 0x50, 0x59, 0x29, 0x78, 0x47, 0x79, 0xcd, 0x9a, 0xc9, 0x16, 0xc3, 0x66, 0x9e, 0xad, 0x43, 0x02, 0x6a, 0xb6, 0xd4, 0x3f, }; static const unsigned char ecdsa_secp256r1_sha256_6803_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6803_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6803 = { .name = "ecdsa_secp256r1_sha256_6803", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6803_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6803_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6803_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 179 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6804 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6804_pubkey[] = { 0x50, 0x14, 0x21, 0x27, 0x7b, 0xe4, 0x5a, 0x5e, 0xef, 0xec, 0x6c, 0x63, 0x99, 0x30, 0xd6, 0x36, 0x03, 0x25, 0x65, 0xaf, 0x42, 0x0c, 0xf3, 0x37, 0x3f, 0x55, 0x7f, 0xaa, 0x7f, 0x8a, 0x06, 0x43, 0x86, 0x73, 0xd6, 0xcb, 0x60, 0x76, 0xe1, 0xcf, 0xcd, 0xc7, 0xdf, 0xe7, 0x38, 0x4c, 0x8e, 0x5c, 0xac, 0x08, 0xd7, 0x45, 0x01, 0xf2, 0xae, 0x6e, 0x89, 0xca, 0xd1, 0x95, 0xd0, 0xaa, 0x13, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_6804_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6804_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6804 = { .name = "ecdsa_secp256r1_sha256_6804", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6804_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6804_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6804_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 180 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6805 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6805_pubkey[] = { 0x0d, 0x93, 0x5b, 0xf9, 0xff, 0xc1, 0x15, 0xa5, 0x27, 0x73, 0x5f, 0x72, 0x9c, 0xa8, 0xa4, 0xca, 0x23, 0xee, 0x01, 0xa4, 0x89, 0x4a, 0xdf, 0x0e, 0x34, 0x15, 0xac, 0x84, 0xe8, 0x08, 0xbb, 0x34, 0x31, 0x95, 0xa3, 0x76, 0x2f, 0xea, 0x29, 0xed, 0x38, 0x91, 0x2b, 0xd9, 0xea, 0x6c, 0x4f, 0xde, 0x70, 0xc3, 0x05, 0x08, 0x93, 0xa4, 0x37, 0x58, 0x50, 0xce, 0x61, 0xd8, 0x2e, 0xba, 0x33, 0xc5, }; static const unsigned char ecdsa_secp256r1_sha256_6805_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6805_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6805 = { .name = "ecdsa_secp256r1_sha256_6805", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6805_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6805_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6805_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 181 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6806 for ECDSA, tcId is 182 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6806_pubkey[] = { 0x5e, 0x59, 0xf5, 0x07, 0x08, 0x64, 0x6b, 0xe8, 0xa5, 0x89, 0x35, 0x50, 0x14, 0x30, 0x8e, 0x60, 0xb6, 0x68, 0xfb, 0x67, 0x01, 0x96, 0x20, 0x6c, 0x41, 0xe7, 0x48, 0xe6, 0x4e, 0x4d, 0xca, 0x21, 0x5d, 0xe3, 0x7f, 0xee, 0x5c, 0x97, 0xbc, 0xaf, 0x71, 0x44, 0xd5, 0xb4, 0x59, 0x98, 0x2f, 0x52, 0xee, 0xea, 0xfb, 0xdf, 0x03, 0xaa, 0xcb, 0xaf, 0xef, 0x38, 0xe2, 0x13, 0x62, 0x4a, 0x01, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_6806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6806_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6806 = { .name = "ecdsa_secp256r1_sha256_6806", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6806_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6806_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6806_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 182 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6807 for ECDSA, tcId is 183 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6807_pubkey[] = { 0x16, 0x9f, 0xb7, 0x97, 0x32, 0x58, 0x43, 0xfa, 0xff, 0x2f, 0x7a, 0x5b, 0x54, 0x45, 0xda, 0x9e, 0x2f, 0xd6, 0x22, 0x6f, 0x7e, 0xf9, 0x0e, 0xf0, 0xbf, 0xe9, 0x24, 0x10, 0x4b, 0x02, 0xdb, 0x8e, 0x7b, 0xbb, 0x8d, 0xe6, 0x62, 0xc7, 0xb9, 0xb1, 0xcf, 0x9b, 0x22, 0xf7, 0xa2, 0xe5, 0x82, 0xbd, 0x46, 0xd5, 0x81, 0xd6, 0x88, 0x78, 0xef, 0xb2, 0xb8, 0x61, 0xb1, 0x31, 0xd8, 0xa1, 0xd6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha256_6807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6807_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6807 = { .name = "ecdsa_secp256r1_sha256_6807", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6807_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6807_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6807_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 183 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6808 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6808_pubkey[] = { 0x27, 0x1c, 0xd8, 0x9c, 0x00, 0x01, 0x43, 0x09, 0x6b, 0x62, 0xd4, 0xe9, 0xe4, 0xca, 0x88, 0x5a, 0xef, 0x2f, 0x70, 0x23, 0xd1, 0x8a, 0xff, 0xda, 0xf8, 0xb7, 0xb5, 0x48, 0x98, 0x14, 0x87, 0x54, 0x0a, 0x1c, 0x6e, 0x95, 0x4e, 0x32, 0x10, 0x84, 0x35, 0xb5, 0x5f, 0xa3, 0x85, 0xb0, 0xf7, 0x64, 0x81, 0xa6, 0x09, 0xb9, 0x14, 0x9c, 0xcb, 0x4b, 0x02, 0xb2, 0xca, 0x47, 0xfe, 0x8e, 0x4d, 0xa5, }; static const unsigned char ecdsa_secp256r1_sha256_6808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6808_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6808 = { .name = "ecdsa_secp256r1_sha256_6808", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6808_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6808_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6808_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 184 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6809 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6809_pubkey[] = { 0x3d, 0x0b, 0xc7, 0xed, 0x8f, 0x09, 0xd2, 0xcb, 0x7d, 0xdb, 0x46, 0xeb, 0xc1, 0xed, 0x79, 0x9a, 0xb1, 0x56, 0x3a, 0x9a, 0xb8, 0x4b, 0xf5, 0x24, 0x58, 0x7a, 0x22, 0x0a, 0xfe, 0x49, 0x9c, 0x12, 0xe2, 0x2d, 0xc3, 0xb3, 0xc1, 0x03, 0x82, 0x4a, 0x4f, 0x37, 0x8d, 0x96, 0xad, 0xb0, 0xa4, 0x08, 0xab, 0xf1, 0x9c, 0xe7, 0xd6, 0x8a, 0xa6, 0x24, 0x4f, 0x78, 0xcb, 0x21, 0x6f, 0xa3, 0xf8, 0xdf, }; static const unsigned char ecdsa_secp256r1_sha256_6809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6809_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6809 = { .name = "ecdsa_secp256r1_sha256_6809", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6809_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6809_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6809_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 185 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6810 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6810_pubkey[] = { 0xa6, 0xc8, 0x85, 0xad, 0xe1, 0xa4, 0xc5, 0x66, 0xf9, 0xbb, 0x01, 0x0d, 0x06, 0x69, 0x74, 0xab, 0xb2, 0x81, 0x79, 0x7f, 0xa7, 0x01, 0x28, 0x8c, 0x72, 0x1b, 0xcb, 0xd2, 0x36, 0x63, 0xa9, 0xb7, 0x2e, 0x42, 0x4b, 0x69, 0x09, 0x57, 0x16, 0x8d, 0x19, 0x3a, 0x60, 0x96, 0xfc, 0x77, 0xa2, 0xb0, 0x04, 0xa9, 0xc7, 0xd4, 0x67, 0xe0, 0x07, 0xe1, 0xf2, 0x05, 0x84, 0x58, 0xf9, 0x8a, 0xf3, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_6810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6810_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6810 = { .name = "ecdsa_secp256r1_sha256_6810", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6810_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6810_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6810_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 186 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6811 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6811_pubkey[] = { 0x8d, 0x3c, 0x2c, 0x2c, 0x3b, 0x76, 0x5b, 0xa8, 0x28, 0x9e, 0x6a, 0xc3, 0x81, 0x25, 0x72, 0xa2, 0x5b, 0xf7, 0x5d, 0xf6, 0x2d, 0x87, 0xab, 0x73, 0x30, 0xc3, 0xbd, 0xba, 0xd9, 0xeb, 0xfa, 0x5c, 0x4c, 0x68, 0x45, 0x44, 0x2d, 0x66, 0x93, 0x5b, 0x23, 0x85, 0x78, 0xd4, 0x3a, 0xec, 0x54, 0xf7, 0xca, 0xa1, 0x62, 0x1d, 0x1a, 0xf2, 0x41, 0xd4, 0x63, 0x2e, 0x0b, 0x78, 0x0c, 0x42, 0x3f, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_6811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6811_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6811 = { .name = "ecdsa_secp256r1_sha256_6811", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6811_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6811_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6811_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 187 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6812 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6812_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_6812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6812_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6812 = { .name = "ecdsa_secp256r1_sha256_6812", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6812_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6812_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6812_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 188 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6813 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6813_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_6813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6813_sig[] = { 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6813 = { .name = "ecdsa_secp256r1_sha256_6813", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6813_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6813_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6813_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 189 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6814 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6814_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_6814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6814_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6814 = { .name = "ecdsa_secp256r1_sha256_6814", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6814_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6814_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6814_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 190 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6815 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6815_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_6815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6815_sig[] = { 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6815 = { .name = "ecdsa_secp256r1_sha256_6815", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6815_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6815_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6815_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 191 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6816 for ECDSA, tcId is 192 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6816_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_6816_sig[] = { 0xb2, 0x92, 0xa6, 0x19, 0x33, 0x9f, 0x6e, 0x56, 0x7a, 0x30, 0x5c, 0x95, 0x1c, 0x0d, 0xcb, 0xcc, 0x42, 0xd1, 0x6e, 0x47, 0xf2, 0x19, 0xf9, 0xe9, 0x8e, 0x76, 0xe0, 0x9d, 0x87, 0x70, 0xb3, 0x4a, 0x01, 0x77, 0xe6, 0x04, 0x92, 0xc5, 0xa8, 0x24, 0x2f, 0x76, 0xf0, 0x7b, 0xfe, 0x36, 0x61, 0xbd, 0xe5, 0x9e, 0xc2, 0xa1, 0x7c, 0xe5, 0xbd, 0x2d, 0xab, 0x2a, 0xbe, 0xbd, 0xf8, 0x9a, 0x62, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6816 = { .name = "ecdsa_secp256r1_sha256_6816", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6816_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha256_6816_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 192 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6817 for ECDSA, tcId is 193 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6817_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_6817_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha256_6817_sig[] = { 0x53, 0x0b, 0xd6, 0xb0, 0xc9, 0xaf, 0x2d, 0x69, 0xba, 0x89, 0x7f, 0x6b, 0x5f, 0xb5, 0x96, 0x95, 0xcf, 0xbf, 0x33, 0xaf, 0xe6, 0x6d, 0xba, 0xdc, 0xf5, 0xb8, 0xd2, 0xa2, 0xa6, 0x53, 0x8e, 0x23, 0xd8, 0x5e, 0x48, 0x9c, 0xb7, 0xa1, 0x61, 0xfd, 0x55, 0xed, 0xed, 0xce, 0xdb, 0xf4, 0xcc, 0x0c, 0x09, 0x87, 0xe3, 0xe3, 0xf0, 0xf2, 0x42, 0xca, 0xe9, 0x34, 0xc7, 0x2c, 0xaa, 0x3f, 0x43, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6817 = { .name = "ecdsa_secp256r1_sha256_6817", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6817_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6817_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha256_6817_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 193 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6818 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6818_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_6818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6818_sig[] = { 0xa8, 0xea, 0x15, 0x0c, 0xb8, 0x01, 0x25, 0xd7, 0x38, 0x1c, 0x4c, 0x1f, 0x1d, 0xa8, 0xe9, 0xde, 0x27, 0x11, 0xf9, 0x91, 0x70, 0x60, 0x40, 0x6a, 0x73, 0xd7, 0x90, 0x45, 0x19, 0xe5, 0x13, 0x88, 0xf3, 0xab, 0x9f, 0xa6, 0x8b, 0xd4, 0x79, 0x73, 0xa7, 0x3b, 0x2d, 0x40, 0x48, 0x0c, 0x2b, 0xa5, 0x0c, 0x22, 0xc9, 0xd7, 0x6e, 0xc2, 0x17, 0x25, 0x72, 0x88, 0x29, 0x32, 0x85, 0x44, 0x9b, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6818 = { .name = "ecdsa_secp256r1_sha256_6818", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6818_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6818_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6818_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 194 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6819 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6819_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_6819_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_6819_sig[] = { 0x98, 0x6e, 0x65, 0x93, 0x3e, 0xf2, 0xed, 0x4e, 0xe5, 0xaa, 0xda, 0x13, 0x9f, 0x52, 0xb7, 0x05, 0x39, 0xaa, 0xf6, 0x3f, 0x00, 0xa9, 0x1f, 0x29, 0xc6, 0x91, 0x78, 0x49, 0x0d, 0x57, 0xfb, 0x71, 0x3d, 0xaf, 0xed, 0xfb, 0x8d, 0xa6, 0x18, 0x9d, 0x37, 0x23, 0x08, 0xcb, 0xf1, 0x48, 0x9b, 0xbb, 0xda, 0xbf, 0x0c, 0x02, 0x17, 0xd1, 0xc0, 0xff, 0x0f, 0x70, 0x1a, 0xaa, 0x7a, 0x69, 0x4b, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6819 = { .name = "ecdsa_secp256r1_sha256_6819", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6819_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6819_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha256_6819_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 195 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6820 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6820_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_6820_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6820_sig[] = { 0xd4, 0x34, 0xe2, 0x62, 0xa4, 0x9e, 0xab, 0x77, 0x81, 0xe3, 0x53, 0xa3, 0x56, 0x5e, 0x48, 0x25, 0x50, 0xdd, 0x0f, 0xd5, 0xde, 0xfa, 0x01, 0x3c, 0x7f, 0x29, 0x74, 0x5e, 0xff, 0x35, 0x69, 0xf1, 0x9b, 0x0c, 0x0a, 0x93, 0xf2, 0x67, 0xfb, 0x60, 0x52, 0xfd, 0x80, 0x77, 0xbe, 0x76, 0x9c, 0x2b, 0x98, 0x95, 0x31, 0x95, 0xd7, 0xbc, 0x10, 0xde, 0x84, 0x42, 0x18, 0x30, 0x5c, 0x6b, 0xa1, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6820 = { .name = "ecdsa_secp256r1_sha256_6820", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6820_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6820_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6820_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 196 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6821 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6821_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_6821_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6821_sig[] = { 0x0f, 0xe7, 0x74, 0x35, 0x5c, 0x04, 0xd0, 0x60, 0xf7, 0x6d, 0x79, 0xfd, 0x7a, 0x77, 0x2e, 0x42, 0x14, 0x63, 0x48, 0x92, 0x21, 0xbf, 0x0a, 0x33, 0xad, 0xd0, 0xbe, 0x9b, 0x19, 0x79, 0x11, 0x0b, 0x50, 0x0d, 0xcb, 0xa1, 0xc6, 0x9a, 0x8f, 0xbd, 0x43, 0xfa, 0x4f, 0x57, 0xf7, 0x43, 0xce, 0x12, 0x4c, 0xa8, 0xb9, 0x1a, 0x1f, 0x32, 0x5f, 0x3f, 0xac, 0x61, 0x81, 0x17, 0x5d, 0xf5, 0x57, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6821 = { .name = "ecdsa_secp256r1_sha256_6821", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6821_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6821_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6821_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 197 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6822 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6822_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_6822_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6822_sig[] = { 0xbb, 0x40, 0xbf, 0x21, 0x7b, 0xed, 0x3f, 0xb3, 0x95, 0x0c, 0x7d, 0x39, 0xf0, 0x3d, 0x36, 0xdc, 0x8e, 0x3b, 0x2c, 0xd7, 0x96, 0x93, 0xf1, 0x25, 0xbf, 0xd0, 0x65, 0x95, 0xee, 0x11, 0x35, 0xe3, 0x54, 0x1b, 0xf3, 0x53, 0x23, 0x51, 0xeb, 0xb0, 0x32, 0x71, 0x0b, 0xdb, 0x6a, 0x1b, 0xf1, 0xbf, 0xc8, 0x9a, 0x1e, 0x29, 0x1a, 0xc6, 0x92, 0xb3, 0xfa, 0x47, 0x80, 0x74, 0x5b, 0xb5, 0x56, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6822 = { .name = "ecdsa_secp256r1_sha256_6822", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6822_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6822_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6822_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 198 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6823 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6823_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_6823_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6823_sig[] = { 0x66, 0x4e, 0xb7, 0xee, 0x6d, 0xb8, 0x4a, 0x34, 0xdf, 0x3c, 0x86, 0xea, 0x31, 0x38, 0x9a, 0x54, 0x05, 0xba, 0xdd, 0x5c, 0xa9, 0x92, 0x31, 0xff, 0x55, 0x6d, 0x3e, 0x75, 0xa2, 0x33, 0xe7, 0x3a, 0x59, 0xf3, 0xc7, 0x52, 0xe5, 0x2e, 0xca, 0x46, 0x13, 0x76, 0x42, 0x49, 0x0a, 0x51, 0x56, 0x0c, 0xe0, 0xba, 0xdc, 0x67, 0x87, 0x54, 0xb8, 0xf7, 0x2e, 0x51, 0xa2, 0x90, 0x14, 0x26, 0xa1, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6823 = { .name = "ecdsa_secp256r1_sha256_6823", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6823_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6823_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6823_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 199 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6824 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6824_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_6824_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6824_sig[] = { 0x4c, 0xd0, 0x42, 0x9b, 0xba, 0xbd, 0x28, 0x27, 0x00, 0x9d, 0x6f, 0xcd, 0x84, 0x3d, 0x4c, 0xe3, 0x9c, 0x3e, 0x42, 0xe2, 0xd1, 0x63, 0x1f, 0xd0, 0x01, 0x98, 0x5a, 0x79, 0xd1, 0xfd, 0x8b, 0x43, 0x96, 0x38, 0xbf, 0x12, 0xdd, 0x68, 0x2f, 0x60, 0xbe, 0x7e, 0xf1, 0xd0, 0xe0, 0xd9, 0x8f, 0x08, 0xb7, 0xbc, 0xa7, 0x7a, 0x1a, 0x2b, 0x86, 0x9a, 0xe4, 0x66, 0x18, 0x9d, 0x2a, 0xcd, 0xab, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6824 = { .name = "ecdsa_secp256r1_sha256_6824", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6824_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6824_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6824_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 200 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6825 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6825_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_6825_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6825_sig[] = { 0xe5, 0x6c, 0x6e, 0xa2, 0xd1, 0xb0, 0x17, 0x09, 0x1c, 0x44, 0xd8, 0xb6, 0xcb, 0x62, 0xb9, 0xf4, 0x60, 0xe3, 0xce, 0x9a, 0xed, 0x5e, 0x5f, 0xd4, 0x1e, 0x8a, 0xdd, 0xed, 0x97, 0xc5, 0x6c, 0x04, 0xa3, 0x08, 0xec, 0x31, 0xf2, 0x81, 0xe9, 0x55, 0xbe, 0x20, 0xb4, 0x57, 0xe4, 0x63, 0x44, 0x0b, 0x4f, 0xcf, 0x2b, 0x80, 0x25, 0x80, 0x78, 0x20, 0x7f, 0xc1, 0x37, 0x81, 0x80, 0xf8, 0x9b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6825 = { .name = "ecdsa_secp256r1_sha256_6825", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6825_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6825_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6825_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 201 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6826 for ECDSA, tcId is 202 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6826_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_6826_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6826_sig[] = { 0x11, 0x58, 0xa0, 0x8d, 0x29, 0x15, 0x00, 0xb4, 0xca, 0xbe, 0xd3, 0x34, 0x6d, 0x89, 0x1e, 0xee, 0x57, 0xc1, 0x76, 0x35, 0x6a, 0x26, 0x24, 0xfb, 0x01, 0x1f, 0x8f, 0xbb, 0xf3, 0x46, 0x68, 0x30, 0x22, 0x8a, 0x8c, 0x48, 0x6a, 0x73, 0x60, 0x06, 0xe0, 0x82, 0x32, 0x5b, 0x85, 0x29, 0x0c, 0x5b, 0xc9, 0x1f, 0x37, 0x8b, 0x75, 0xd4, 0x87, 0xdd, 0xa4, 0x67, 0x98, 0xc1, 0x8f, 0x28, 0x55, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6826 = { .name = "ecdsa_secp256r1_sha256_6826", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6826_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6826_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6826_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 202 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6827 for ECDSA, tcId is 203 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6827_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_6827_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6827_sig[] = { 0xb1, 0xdb, 0x92, 0x89, 0x64, 0x9f, 0x59, 0x41, 0x0e, 0xa3, 0x6b, 0x0c, 0x0f, 0xc8, 0xd6, 0xaa, 0x26, 0x87, 0xb2, 0x91, 0x76, 0x93, 0x9d, 0xd2, 0x3e, 0x0d, 0xde, 0x56, 0xd3, 0x09, 0xfa, 0x9d, 0x3e, 0x15, 0x35, 0xe4, 0x28, 0x05, 0x59, 0x01, 0x5b, 0x0d, 0xbd, 0x98, 0x73, 0x66, 0xdc, 0xf4, 0x3a, 0x6d, 0x1a, 0xf5, 0xc2, 0x3c, 0x7d, 0x58, 0x4e, 0x1c, 0x3f, 0x48, 0xa1, 0x25, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6827 = { .name = "ecdsa_secp256r1_sha256_6827", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6827_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6827_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6827_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 203 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6828 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6828_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_6828_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6828_sig[] = { 0xb7, 0xb1, 0x6e, 0x76, 0x22, 0x86, 0xcb, 0x96, 0x44, 0x6a, 0xa8, 0xd4, 0xe6, 0xe7, 0x57, 0x8b, 0x0a, 0x34, 0x1a, 0x79, 0xf2, 0xdd, 0x1a, 0x22, 0x0a, 0xc6, 0xf0, 0xca, 0x4e, 0x24, 0xed, 0x86, 0xdd, 0xc6, 0x0a, 0x70, 0x0a, 0x13, 0x9b, 0x04, 0x66, 0x1c, 0x54, 0x7d, 0x07, 0xbb, 0xb0, 0x72, 0x17, 0x80, 0x14, 0x6d, 0xf7, 0x99, 0xcc, 0xf5, 0x5e, 0x55, 0x23, 0x4e, 0xcb, 0x8f, 0x12, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6828 = { .name = "ecdsa_secp256r1_sha256_6828", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6828_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6828_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6828_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 204 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6829 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6829_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_6829_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6829_sig[] = { 0xd8, 0x2a, 0x7c, 0x27, 0x17, 0x26, 0x11, 0x87, 0xc8, 0xe0, 0x0d, 0x8d, 0xf9, 0x63, 0xff, 0x35, 0xd7, 0x96, 0xed, 0xad, 0x36, 0xbc, 0x6e, 0x6b, 0xd1, 0xc9, 0x1c, 0x67, 0x0d, 0x91, 0x05, 0xb4, 0x3d, 0xca, 0xbd, 0xda, 0xf8, 0xfc, 0xaa, 0x61, 0xf4, 0x60, 0x3e, 0x7c, 0xba, 0xc0, 0xf3, 0xc0, 0x35, 0x1e, 0xcd, 0x59, 0x88, 0xef, 0xb2, 0x3f, 0x68, 0x0d, 0x07, 0xde, 0xbd, 0x13, 0x99, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6829 = { .name = "ecdsa_secp256r1_sha256_6829", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6829_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6829_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6829_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 205 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6830 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6830_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_6830_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6830_sig[] = { 0x5e, 0xb9, 0xc8, 0x84, 0x5d, 0xe6, 0x8e, 0xb1, 0x3d, 0x5b, 0xef, 0xe7, 0x19, 0xf4, 0x62, 0xd7, 0x77, 0x87, 0x80, 0x2b, 0xaf, 0xf3, 0x0c, 0xe9, 0x6a, 0x5c, 0xba, 0x06, 0x32, 0x54, 0xaf, 0x78, 0x2c, 0x02, 0x6a, 0xe9, 0xbe, 0x2e, 0x2a, 0x5e, 0x7c, 0xa0, 0xff, 0x9b, 0xbd, 0x92, 0xfb, 0x6e, 0x44, 0x97, 0x21, 0x86, 0x22, 0x8e, 0xe9, 0xa6, 0x2b, 0x87, 0xdd, 0xbe, 0x2e, 0xf6, 0x6f, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6830 = { .name = "ecdsa_secp256r1_sha256_6830", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6830_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6830_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6830_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 206 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6831 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6831_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_6831_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6831_sig[] = { 0x96, 0x84, 0x3d, 0xd0, 0x3c, 0x22, 0xab, 0xd2, 0xf3, 0xb7, 0x82, 0xb1, 0x70, 0x23, 0x9f, 0x90, 0xf2, 0x77, 0x92, 0x1b, 0xec, 0xc1, 0x17, 0xd0, 0x40, 0x4a, 0x8e, 0x4e, 0x36, 0x23, 0x0c, 0x28, 0xf2, 0xbe, 0x37, 0x8f, 0x52, 0x6f, 0x74, 0xa5, 0x43, 0xf6, 0x71, 0x65, 0x97, 0x6d, 0xe9, 0xed, 0x9a, 0x31, 0x21, 0x4e, 0xb4, 0xd7, 0xe6, 0xdb, 0x19, 0xe1, 0xed, 0xe1, 0x23, 0xdd, 0x99, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6831 = { .name = "ecdsa_secp256r1_sha256_6831", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6831_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6831_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6831_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 207 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6832 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6832_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_6832_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6832_sig[] = { 0x76, 0x64, 0x56, 0xdc, 0xe1, 0x85, 0x7c, 0x90, 0x6f, 0x99, 0x96, 0xaf, 0x72, 0x93, 0x39, 0x46, 0x4d, 0x27, 0xe9, 0xd9, 0x8e, 0xdc, 0x2d, 0x0e, 0x3b, 0x76, 0x02, 0x97, 0x06, 0x74, 0x21, 0xf6, 0x40, 0x23, 0x85, 0xec, 0xad, 0xae, 0x0d, 0x80, 0x81, 0xdc, 0xca, 0xf5, 0xd1, 0x90, 0x37, 0xec, 0x4e, 0x55, 0x37, 0x6e, 0xce, 0xd6, 0x99, 0xe9, 0x36, 0x46, 0xbf, 0xbb, 0xf1, 0x9d, 0x0b, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6832 = { .name = "ecdsa_secp256r1_sha256_6832", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6832_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6832_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6832_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 208 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6833 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6833_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_6833_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6833_sig[] = { 0xc6, 0x05, 0xc4, 0xb2, 0xed, 0xea, 0xb2, 0x04, 0x19, 0xe6, 0x51, 0x8a, 0x11, 0xb2, 0xdb, 0xc2, 0xb9, 0x7e, 0xd8, 0xb0, 0x7c, 0xce, 0xd0, 0xb1, 0x9c, 0x34, 0xf7, 0x77, 0xde, 0x7b, 0x9f, 0xd9, 0xed, 0xf0, 0xf6, 0x12, 0xc5, 0xf4, 0x6e, 0x03, 0xc7, 0x19, 0x64, 0x7b, 0xc8, 0xaf, 0x1b, 0x29, 0xb2, 0xcd, 0xe2, 0xed, 0xa7, 0x00, 0xfb, 0x1c, 0xff, 0x5e, 0x15, 0x9d, 0x47, 0x32, 0x6d, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6833 = { .name = "ecdsa_secp256r1_sha256_6833", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6833_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6833_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6833_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 209 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6834 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6834_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_6834_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6834_sig[] = { 0xd4, 0x8b, 0x68, 0xe6, 0xca, 0xbf, 0xe0, 0x3c, 0xf6, 0x14, 0x1c, 0x9a, 0xc5, 0x41, 0x41, 0xf2, 0x10, 0xe6, 0x44, 0x85, 0xd9, 0x92, 0x9a, 0xd7, 0xb7, 0x32, 0xbf, 0xe3, 0xb7, 0xeb, 0x8a, 0x84, 0xfe, 0xed, 0xae, 0x50, 0xc6, 0x1b, 0xd0, 0x0e, 0x19, 0xdc, 0x26, 0xf9, 0xb7, 0xe2, 0x26, 0x5e, 0x45, 0x08, 0xc3, 0x89, 0x10, 0x9a, 0xd2, 0xf2, 0x08, 0xf0, 0x77, 0x23, 0x15, 0xb6, 0xc9, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6834 = { .name = "ecdsa_secp256r1_sha256_6834", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6834_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6834_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6834_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 210 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6835 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6835_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_6835_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6835_sig[] = { 0xb7, 0xc8, 0x14, 0x57, 0xd4, 0xae, 0xb6, 0xaa, 0x65, 0x95, 0x70, 0x98, 0x56, 0x9f, 0x04, 0x79, 0x71, 0x0a, 0xd7, 0xf6, 0x59, 0x5d, 0x58, 0x74, 0xc3, 0x5a, 0x93, 0xd1, 0x2a, 0x5d, 0xd4, 0xc7, 0xb7, 0x96, 0x1a, 0x0b, 0x65, 0x28, 0x78, 0xc2, 0xd5, 0x68, 0x06, 0x9a, 0x43, 0x2c, 0xa1, 0x8a, 0x1a, 0x91, 0x99, 0xf2, 0xca, 0x57, 0x4d, 0xad, 0x4b, 0x9e, 0x3a, 0x05, 0xc0, 0xa1, 0xcd, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6835 = { .name = "ecdsa_secp256r1_sha256_6835", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6835_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6835_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6835_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 211 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6836 for ECDSA, tcId is 212 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6836_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_6836_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6836_sig[] = { 0x6b, 0x01, 0x33, 0x2d, 0xdb, 0x6e, 0xdf, 0xa9, 0xa3, 0x0a, 0x13, 0x21, 0xd5, 0x85, 0x8e, 0x1e, 0xe3, 0xcf, 0x97, 0xe2, 0x63, 0xe6, 0x69, 0xf8, 0xde, 0x5e, 0x96, 0x52, 0xe7, 0x6f, 0xf3, 0xf7, 0x59, 0x39, 0x54, 0x5f, 0xce, 0xd4, 0x57, 0x30, 0x9a, 0x6a, 0x04, 0xac, 0xe2, 0xbd, 0x0f, 0x70, 0x13, 0x9c, 0x8f, 0x7d, 0x86, 0xb0, 0x2c, 0xb1, 0xcc, 0x58, 0xf9, 0xe6, 0x9e, 0x96, 0xcd, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6836 = { .name = "ecdsa_secp256r1_sha256_6836", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6836_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6836_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6836_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 212 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6837 for ECDSA, tcId is 213 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6837_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_6837_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6837_sig[] = { 0xef, 0xdb, 0x88, 0x47, 0x20, 0xea, 0xea, 0xdc, 0x34, 0x9f, 0x9f, 0xc3, 0x56, 0xb6, 0xc0, 0x34, 0x41, 0x01, 0xcd, 0x2f, 0xd8, 0x43, 0x6b, 0x7d, 0x0e, 0x6a, 0x4f, 0xb9, 0x3f, 0x10, 0x63, 0x61, 0xf2, 0x4b, 0xee, 0x6a, 0xd5, 0xdc, 0x05, 0xf7, 0x61, 0x39, 0x75, 0x47, 0x3a, 0xad, 0xf3, 0xaa, 0xcb, 0xa9, 0xe7, 0x7d, 0xe7, 0xd6, 0x9b, 0x6c, 0xe4, 0x8c, 0xb6, 0x0d, 0x81, 0x13, 0x38, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6837 = { .name = "ecdsa_secp256r1_sha256_6837", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6837_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6837_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6837_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 213 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6838 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6838_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_6838_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6838_sig[] = { 0x31, 0x23, 0x04, 0x28, 0x40, 0x55, 0x60, 0xdc, 0xb8, 0x8f, 0xb5, 0xa6, 0x46, 0x83, 0x6a, 0xea, 0x9b, 0x23, 0xa2, 0x3d, 0xd9, 0x73, 0xdc, 0xbe, 0x80, 0x14, 0xc8, 0x7b, 0x8b, 0x20, 0xeb, 0x07, 0x0f, 0x93, 0x44, 0xd6, 0xe8, 0x12, 0xce, 0x16, 0x66, 0x46, 0x74, 0x76, 0x94, 0xa4, 0x1b, 0x0a, 0xaf, 0x97, 0x37, 0x4e, 0x19, 0xf3, 0xc5, 0xfb, 0x8b, 0xd7, 0xae, 0x3d, 0x9b, 0xd0, 0xbe, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6838 = { .name = "ecdsa_secp256r1_sha256_6838", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6838_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6838_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6838_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 214 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6839 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6839_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_6839_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6839_sig[] = { 0xca, 0xa7, 0x97, 0xda, 0x65, 0xb3, 0x20, 0xab, 0x0d, 0x5c, 0x47, 0x0c, 0xda, 0x0b, 0x36, 0xb2, 0x94, 0x35, 0x9c, 0x7d, 0xb9, 0x84, 0x1d, 0x67, 0x91, 0x74, 0xdb, 0x34, 0xc4, 0x85, 0x57, 0x43, 0xcf, 0x54, 0x3a, 0x62, 0xf2, 0x3e, 0x21, 0x27, 0x45, 0x39, 0x1a, 0xaf, 0x75, 0x05, 0xf3, 0x45, 0x12, 0x3d, 0x26, 0x85, 0xee, 0x3b, 0x94, 0x1d, 0x3d, 0xe6, 0xd9, 0xb3, 0x62, 0x42, 0xe5, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6839 = { .name = "ecdsa_secp256r1_sha256_6839", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6839_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6839_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6839_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 215 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6840 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6840_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_6840_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6840_sig[] = { 0x7e, 0x5f, 0x0a, 0xb5, 0xd9, 0x00, 0xd3, 0xd3, 0xd7, 0x86, 0x76, 0x57, 0xe5, 0xd6, 0xd3, 0x65, 0x19, 0xbc, 0x54, 0x08, 0x45, 0x36, 0xe7, 0xd2, 0x1c, 0x33, 0x6e, 0xd8, 0x00, 0x18, 0x59, 0x45, 0x94, 0x50, 0xc0, 0x7f, 0x20, 0x1f, 0xae, 0xc9, 0x4b, 0x82, 0xdf, 0xb3, 0x22, 0xe5, 0xac, 0x67, 0x66, 0x88, 0x29, 0x4a, 0xad, 0x35, 0xaa, 0x72, 0xe7, 0x27, 0xff, 0x0b, 0x19, 0xb6, 0x46, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6840 = { .name = "ecdsa_secp256r1_sha256_6840", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6840_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6840_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6840_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 216 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6841 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6841_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_6841_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6841_sig[] = { 0xd7, 0xd7, 0x0c, 0x58, 0x1a, 0xe9, 0xe3, 0xf6, 0x6d, 0xc6, 0xa4, 0x80, 0xbf, 0x03, 0x7a, 0xe2, 0x3f, 0x8a, 0x1e, 0x4a, 0x21, 0x36, 0xfe, 0x4b, 0x03, 0xaa, 0x69, 0xf0, 0xca, 0x25, 0xb3, 0x56, 0x89, 0xc4, 0x60, 0xf8, 0xa5, 0xa5, 0xc2, 0xbb, 0xba, 0x96, 0x2c, 0x8a, 0x3e, 0xe8, 0x33, 0xa4, 0x13, 0xe8, 0x56, 0x58, 0xe6, 0x2a, 0x59, 0xe2, 0xaf, 0x41, 0xd9, 0x12, 0x7c, 0xc4, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6841 = { .name = "ecdsa_secp256r1_sha256_6841", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6841_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6841_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6841_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 217 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6842 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6842_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_6842_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6842_sig[] = { 0x34, 0x1c, 0x1b, 0x9f, 0xf3, 0xc8, 0x3d, 0xd5, 0xe0, 0xdf, 0xa0, 0xbf, 0x68, 0xbc, 0xdf, 0x4b, 0xb7, 0xaa, 0x20, 0xc6, 0x25, 0x97, 0x5e, 0x5e, 0xee, 0xe3, 0x4b, 0xb3, 0x96, 0x26, 0x6b, 0x34, 0x72, 0xb6, 0x9f, 0x06, 0x1b, 0x75, 0x0f, 0xd5, 0x12, 0x1b, 0x22, 0xb1, 0x13, 0x66, 0xfa, 0xd5, 0x49, 0xc6, 0x34, 0xe7, 0x77, 0x65, 0xa0, 0x17, 0x90, 0x2a, 0x67, 0x09, 0x9e, 0x0a, 0x44, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6842 = { .name = "ecdsa_secp256r1_sha256_6842", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6842_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6842_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6842_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 218 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6843 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha256_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6843_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_6843_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_6843_sig[] = { 0x70, 0xbe, 0xbe, 0x68, 0x4c, 0xdc, 0xb5, 0xca, 0x72, 0xa4, 0x2f, 0x0d, 0x87, 0x38, 0x79, 0x35, 0x9b, 0xd1, 0x78, 0x1a, 0x59, 0x18, 0x09, 0x94, 0x76, 0x28, 0xd3, 0x13, 0xa3, 0x81, 0x4f, 0x67, 0xae, 0xc0, 0x3a, 0xca, 0x8f, 0x55, 0x87, 0xa4, 0xd5, 0x35, 0xfa, 0x31, 0x02, 0x7b, 0xbe, 0x9c, 0xc0, 0xe4, 0x64, 0xb1, 0xc3, 0x57, 0x7f, 0x4c, 0x2d, 0xcd, 0xe6, 0xb2, 0x09, 0x47, 0x98, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6843 = { .name = "ecdsa_secp256r1_sha256_6843", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6843_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6843_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_6843_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 219 in file ecdsa_secp256r1_sha256_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6844 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6844_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6844_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6844_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x85, 0x5d, 0x44, 0x2f, 0x5b, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x52, 0x5f, 0xe7, 0x10, 0xfa, 0xb9, 0xaa, 0x7c, 0x77, 0xa6, 0x7f, 0x79, 0xe6, 0xfa, 0xdd, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6844 = { .name = "ecdsa_secp256r1_sha256_6844", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6844_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6844_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6844_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6845 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6845_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6845_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6845_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6845 = { .name = "ecdsa_secp256r1_sha256_6845", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6845_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6845_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6845_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6846 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6846_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6846_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6846_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6846 = { .name = "ecdsa_secp256r1_sha256_6846", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6846_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6846_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6846_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6847 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6847_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6847_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6847 = { .name = "ecdsa_secp256r1_sha256_6847", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6847_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6847_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6847_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6848 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6848_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6848_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6848 = { .name = "ecdsa_secp256r1_sha256_6848", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6848_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6848_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6848_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6849 for ECDSA, tcId is 68 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6849_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6849_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6849 = { .name = "ecdsa_secp256r1_sha256_6849", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6849_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6849_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6849_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6850 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6850_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6850_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6850 = { .name = "ecdsa_secp256r1_sha256_6850", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6850_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6850_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6850_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6851 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6851_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6851_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6851 = { .name = "ecdsa_secp256r1_sha256_6851", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6851_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6851_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6851_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6852 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6852_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6852_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6852 = { .name = "ecdsa_secp256r1_sha256_6852", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6852_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6852_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6852_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6853 for ECDSA, tcId is 93 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6853_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6853_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6853 = { .name = "ecdsa_secp256r1_sha256_6853", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6853_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6853_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6853_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6854 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6854_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6854_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6854 = { .name = "ecdsa_secp256r1_sha256_6854", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6854_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6854_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6854_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6855 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6855_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6855_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6855 = { .name = "ecdsa_secp256r1_sha256_6855", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6855_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6855_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6855_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6856 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6856_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6856_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6856 = { .name = "ecdsa_secp256r1_sha256_6856", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6856_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6856_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6856_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6857 for ECDSA, tcId is 98 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6857_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6857_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x05, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6857 = { .name = "ecdsa_secp256r1_sha256_6857", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6857_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6857_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6857_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6858 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6858_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6858_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6858 = { .name = "ecdsa_secp256r1_sha256_6858", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6858_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6858_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6858_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6859 for ECDSA, tcId is 114 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6859_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6859_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6859 = { .name = "ecdsa_secp256r1_sha256_6859", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6859_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6859_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6859_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6860 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6860_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6860_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6860 = { .name = "ecdsa_secp256r1_sha256_6860", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6860_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6860_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6860_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6861 for ECDSA, tcId is 118 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6861_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6861_sig[] = { 0x29, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6861 = { .name = "ecdsa_secp256r1_sha256_6861", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6861_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6861_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6861_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6862 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6862_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6862_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x02, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6862 = { .name = "ecdsa_secp256r1_sha256_6862", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6862_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6862_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6862_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6863 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6863_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6863_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x98, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6863 = { .name = "ecdsa_secp256r1_sha256_6863", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6863_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6863_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6863_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6864 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6864_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6864_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6864 = { .name = "ecdsa_secp256r1_sha256_6864", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6864_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6864_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6864_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6865 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6865_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6865_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6865 = { .name = "ecdsa_secp256r1_sha256_6865", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6865_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6865_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6865_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6866 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6866_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6866_sig[] = { 0x00, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6866 = { .name = "ecdsa_secp256r1_sha256_6866", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6866_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6866_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6866_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6867 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6867_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6867_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6867 = { .name = "ecdsa_secp256r1_sha256_6867", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6867_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6867_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6867_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6868 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6868_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6868_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6868 = { .name = "ecdsa_secp256r1_sha256_6868", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6868_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6868_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6868_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6869 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6869_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6869_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6869 = { .name = "ecdsa_secp256r1_sha256_6869", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6869_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6869_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6869_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256r1_sha256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6870 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6870_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6870_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6870 = { .name = "ecdsa_secp256r1_sha256_6870", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6870_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6870_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6870_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6871 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6871_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6871_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6871 = { .name = "ecdsa_secp256r1_sha256_6871", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6871_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6871_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6871_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6872 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6872_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6872_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbd, 0x6b, 0x94, 0xd5, 0xed, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xbc, 0xcc, 0x08, 0x33, 0x49, 0x06, 0x86, 0xde, 0xac, 0x86, 0x35, 0xbc, 0xb9, 0xbf, 0x53, 0x69, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6872 = { .name = "ecdsa_secp256r1_sha256_6872", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6872_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6872_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6872_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6873 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6873_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6873_sig[] = { 0x2b, 0xa3, 0xa8, 0xbf, 0x6b, 0x94, 0xd5, 0xeb, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6f, 0x42, 0xfe, 0x12, 0xd7, 0xfa, 0xd7, 0x49, 0xd4, 0xc5, 0x12, 0xa0, 0x36, 0xc0, 0xf9, 0x08, 0xc7, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6873 = { .name = "ecdsa_secp256r1_sha256_6873", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6873_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6873_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6873_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6874 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6874_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6874_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6874 = { .name = "ecdsa_secp256r1_sha256_6874", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6874_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6874_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6874_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6875 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6875_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6875_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6875_sig[] = { 0xd4, 0x5c, 0x57, 0x40, 0x94, 0x6b, 0x2a, 0x14, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x90, 0xbd, 0x01, 0xed, 0x28, 0x05, 0x28, 0xb6, 0x2b, 0x3a, 0xed, 0x5f, 0xc9, 0x3f, 0x06, 0xf7, 0x39, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6875 = { .name = "ecdsa_secp256r1_sha256_6875", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6875_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6875_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6875_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6876 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6876_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6876_sig[] = { 0xfe, 0xd4, 0x5c, 0x57, 0x42, 0x94, 0x6b, 0x2a, 0x12, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x43, 0x33, 0xf7, 0xcc, 0xb6, 0xf9, 0x79, 0x21, 0x53, 0x79, 0xca, 0x43, 0x46, 0x40, 0xac, 0x97, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6876 = { .name = "ecdsa_secp256r1_sha256_6876", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6876_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6876_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6876_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6877 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6877_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6877_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6877_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6877 = { .name = "ecdsa_secp256r1_sha256_6877", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6877_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6877_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6877_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6878 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6878_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6878_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6878_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6878 = { .name = "ecdsa_secp256r1_sha256_6878", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6878_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6878_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6878_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6879 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6879_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6879_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6879_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x78, 0xa2, 0xbb, 0xd0, 0xa6, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x27, 0x6e, 0x0e, 0x4a, 0x53, 0x75, 0x92, 0x8d, 0x6f, 0xcd, 0x16, 0x0c, 0x11, 0xcb, 0x6d, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6879 = { .name = "ecdsa_secp256r1_sha256_6879", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6879_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6879_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6879_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6880 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6880_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6880_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6880_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x7a, 0xa2, 0xbb, 0xd0, 0xa4, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0xad, 0xa0, 0x18, 0xef, 0x05, 0x46, 0x55, 0x83, 0x88, 0x59, 0x80, 0x86, 0x19, 0x05, 0x22, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6880 = { .name = "ecdsa_secp256r1_sha256_6880", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6880_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6880_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6880_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6881 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6881_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6881_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6881_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6881 = { .name = "ecdsa_secp256r1_sha256_6881", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6881_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6881_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6881_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6882 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6882_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6882_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6882_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xfe, 0x4c, 0xd6, 0x0b, 0x87, 0x5d, 0x44, 0x2f, 0x59, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0xd8, 0x91, 0xf1, 0xb5, 0xac, 0x8a, 0x6d, 0x72, 0x90, 0x32, 0xe9, 0xf3, 0xee, 0x34, 0x92, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6882 = { .name = "ecdsa_secp256r1_sha256_6882", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6882_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6882_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6882_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6883 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6883_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6883_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6883_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6883 = { .name = "ecdsa_secp256r1_sha256_6883", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6883_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6883_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6883_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6884 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6884_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6884_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6884_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6884 = { .name = "ecdsa_secp256r1_sha256_6884", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6884_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6884_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6884_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6885 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6885_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6885_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6885_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6885 = { .name = "ecdsa_secp256r1_sha256_6885", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6885_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6885_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6885_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6886 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6886_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6886_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6886_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6886 = { .name = "ecdsa_secp256r1_sha256_6886", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6886_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6886_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6886_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6887 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6887_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6887_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6887_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6887 = { .name = "ecdsa_secp256r1_sha256_6887", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6887_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6887_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6887_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6888 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6888_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6888_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6888_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6888 = { .name = "ecdsa_secp256r1_sha256_6888", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6888_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6888_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6888_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6889 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6889_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6889_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6889_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6889 = { .name = "ecdsa_secp256r1_sha256_6889", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6889_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6889_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6889_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6890 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6890_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6890_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6890_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6890 = { .name = "ecdsa_secp256r1_sha256_6890", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6890_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6890_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6890_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6891 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6891_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6891_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6891_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6891 = { .name = "ecdsa_secp256r1_sha256_6891", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6891_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6891_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6891_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6892 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6892_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6892_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6892_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6892 = { .name = "ecdsa_secp256r1_sha256_6892", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6892_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6892_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6892_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6893 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6893_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6893_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6893_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6893 = { .name = "ecdsa_secp256r1_sha256_6893", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6893_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6893_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6893_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6894 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6894_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6894_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6894_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6894 = { .name = "ecdsa_secp256r1_sha256_6894", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6894_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6894_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6894_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6895 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6895_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6895_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6895_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6895 = { .name = "ecdsa_secp256r1_sha256_6895", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6895_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6895_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6895_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6896 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6896_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6896_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6896 = { .name = "ecdsa_secp256r1_sha256_6896", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6896_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6896_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6896_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6897 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6897_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6897_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6897 = { .name = "ecdsa_secp256r1_sha256_6897", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6897_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6897_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6897_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6898 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6898_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6898_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6898 = { .name = "ecdsa_secp256r1_sha256_6898", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6898_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6898_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6898_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6899 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6899_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6899_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6899 = { .name = "ecdsa_secp256r1_sha256_6899", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6899_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6899_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6899_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6900 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6900_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6900_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6900 = { .name = "ecdsa_secp256r1_sha256_6900", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6900_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6900_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6900_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6901 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6901_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6901_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6901 = { .name = "ecdsa_secp256r1_sha256_6901", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6901_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6901_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6901_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6902 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6902_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6902_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6902 = { .name = "ecdsa_secp256r1_sha256_6902", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6902_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6902_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6902_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6903 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6903_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6903_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6903 = { .name = "ecdsa_secp256r1_sha256_6903", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6903_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6903_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6903_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6904 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6904_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6904_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6904 = { .name = "ecdsa_secp256r1_sha256_6904", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6904_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6904_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6904_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6905 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6905_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6905_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6905 = { .name = "ecdsa_secp256r1_sha256_6905", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6905_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6905_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6905_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6906 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6906_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6906_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6906 = { .name = "ecdsa_secp256r1_sha256_6906", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6906_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6906_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6906_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6907 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6907_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6907_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6907 = { .name = "ecdsa_secp256r1_sha256_6907", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6907_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6907_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6907_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6908 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6908_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6908_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6908 = { .name = "ecdsa_secp256r1_sha256_6908", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6908_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6908_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6908_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6909 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6909_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6909_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6909 = { .name = "ecdsa_secp256r1_sha256_6909", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6909_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6909_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6909_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6910 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6910_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6910_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6910 = { .name = "ecdsa_secp256r1_sha256_6910", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6910_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6910_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6910_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6911 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6911_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6911_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6911 = { .name = "ecdsa_secp256r1_sha256_6911", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6911_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6911_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6911_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6912 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6912_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6912_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6912 = { .name = "ecdsa_secp256r1_sha256_6912", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6912_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6912_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6912_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6913 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6913_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6913_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6913 = { .name = "ecdsa_secp256r1_sha256_6913", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6913_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6913_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6913_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6914 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6914_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6914_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6914 = { .name = "ecdsa_secp256r1_sha256_6914", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6914_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6914_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6914_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6915 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6915_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6915_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6915 = { .name = "ecdsa_secp256r1_sha256_6915", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6915_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6915_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6915_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6916 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6916_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6916_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6916 = { .name = "ecdsa_secp256r1_sha256_6916", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6916_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6916_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6916_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6917 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6917_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6917_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6917 = { .name = "ecdsa_secp256r1_sha256_6917", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6917_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6917_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6917_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6918 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6918_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6918_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6918 = { .name = "ecdsa_secp256r1_sha256_6918", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6918_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6918_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6918_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6919 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6919_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6919_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6919 = { .name = "ecdsa_secp256r1_sha256_6919", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6919_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6919_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6919_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6920 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6920_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6920_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6920 = { .name = "ecdsa_secp256r1_sha256_6920", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6920_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6920_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6920_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6921 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6921_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6921_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6921 = { .name = "ecdsa_secp256r1_sha256_6921", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6921_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6921_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6921_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6922 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6922_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6922_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6922 = { .name = "ecdsa_secp256r1_sha256_6922", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6922_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6922_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6922_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6923 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6923_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6923_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6923 = { .name = "ecdsa_secp256r1_sha256_6923", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6923_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6923_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6923_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6924 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6924_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6924_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6924 = { .name = "ecdsa_secp256r1_sha256_6924", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6924_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6924_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6924_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6925 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6925_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6925_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6925 = { .name = "ecdsa_secp256r1_sha256_6925", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6925_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6925_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6925_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6926 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6926_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6926_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6926 = { .name = "ecdsa_secp256r1_sha256_6926", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6926_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6926_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6926_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6927 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6927_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6927_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6927 = { .name = "ecdsa_secp256r1_sha256_6927", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6927_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6927_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6927_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6928 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6928_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6928_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6928 = { .name = "ecdsa_secp256r1_sha256_6928", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6928_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6928_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6928_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6929 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6929_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6929_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6929 = { .name = "ecdsa_secp256r1_sha256_6929", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6929_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6929_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6929_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6930 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6930_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6930_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6930 = { .name = "ecdsa_secp256r1_sha256_6930", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6930_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6930_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6930_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6931 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6931_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6931_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6931 = { .name = "ecdsa_secp256r1_sha256_6931", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6931_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6931_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6931_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6932 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6932_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6932_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6932 = { .name = "ecdsa_secp256r1_sha256_6932", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6932_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6932_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6932_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6933 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6933_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6933_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6933 = { .name = "ecdsa_secp256r1_sha256_6933", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6933_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6933_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6933_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6934 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6934_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6934_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6934 = { .name = "ecdsa_secp256r1_sha256_6934", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6934_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6934_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6934_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6935 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6935_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6935_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6935 = { .name = "ecdsa_secp256r1_sha256_6935", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6935_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6935_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6935_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6936 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6936_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6936_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6936 = { .name = "ecdsa_secp256r1_sha256_6936", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6936_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6936_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6936_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6937 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6937_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6937_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6937 = { .name = "ecdsa_secp256r1_sha256_6937", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6937_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6937_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6937_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6938 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6938_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6938_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6938 = { .name = "ecdsa_secp256r1_sha256_6938", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6938_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6938_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6938_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6939 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6939_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6939_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6939 = { .name = "ecdsa_secp256r1_sha256_6939", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6939_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6939_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6939_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6940 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6940_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6940_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6940 = { .name = "ecdsa_secp256r1_sha256_6940", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6940_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6940_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6940_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6941 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6941_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6941_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6941 = { .name = "ecdsa_secp256r1_sha256_6941", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6941_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6941_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6941_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6942 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6942_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6942_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6942 = { .name = "ecdsa_secp256r1_sha256_6942", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6942_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6942_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6942_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6943 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6943_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6943_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6943 = { .name = "ecdsa_secp256r1_sha256_6943", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6943_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6943_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6943_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6944 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6944_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6944_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6944 = { .name = "ecdsa_secp256r1_sha256_6944", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6944_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6944_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6944_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6945 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6945_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6945_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6945 = { .name = "ecdsa_secp256r1_sha256_6945", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6945_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6945_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6945_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6946 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6946_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6946_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6946 = { .name = "ecdsa_secp256r1_sha256_6946", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6946_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6946_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6946_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6947 for ECDSA, tcId is 220 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6947_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6947_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6947 = { .name = "ecdsa_secp256r1_sha256_6947", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6947_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6947_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6947_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6948 for ECDSA, tcId is 221 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6948_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6948_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6948 = { .name = "ecdsa_secp256r1_sha256_6948", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6948_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6948_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_6948_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6949 for ECDSA, tcId is 230 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6949_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6949_msg[] = { 0x36, 0x39, 0x38, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6949_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x6a, 0xf0, 0x15, 0x97, 0x1c, 0xc3, 0x0b, 0xe6, 0xd1, 0xa2, 0x06, 0xd4, 0xe0, 0x13, 0xe0, 0x99, 0x77, 0x72, 0xa2, 0xf9, 0x1d, 0x73, 0x28, 0x6f, 0xfd, 0x68, 0x3b, 0x9b, 0xb2, 0xcf, 0x4f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6949 = { .name = "ecdsa_secp256r1_sha256_6949", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6949_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6949_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha256_6949_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6950 for ECDSA, tcId is 231 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6950_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6950_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6950_sig[] = { 0x16, 0xae, 0xa9, 0x64, 0xa2, 0xf6, 0x50, 0x6d, 0x6f, 0x78, 0xc8, 0x1c, 0x91, 0xfc, 0x7e, 0x8b, 0xde, 0xd7, 0xd3, 0x97, 0x73, 0x84, 0x48, 0xde, 0x1e, 0x19, 0xa0, 0xec, 0x58, 0x0b, 0xf2, 0x66, 0x25, 0x2c, 0xd7, 0x62, 0x13, 0x0c, 0x66, 0x67, 0xcf, 0xe8, 0xb7, 0xbc, 0x47, 0xd2, 0x7d, 0x78, 0x39, 0x1e, 0x8e, 0x80, 0xc5, 0x78, 0xd1, 0xcd, 0x38, 0xc3, 0xff, 0x03, 0x3b, 0xe9, 0x28, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6950 = { .name = "ecdsa_secp256r1_sha256_6950", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6950_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6950_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6950_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6951 for ECDSA, tcId is 232 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6951_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6951_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6951_sig[] = { 0x9c, 0xc9, 0x8b, 0xe2, 0x34, 0x7d, 0x46, 0x9b, 0xf4, 0x76, 0xdf, 0xc2, 0x6b, 0x9b, 0x73, 0x3d, 0xf2, 0xd2, 0x6d, 0x6e, 0xf5, 0x24, 0xaf, 0x91, 0x7c, 0x66, 0x5b, 0xac, 0xcb, 0x23, 0xc8, 0x82, 0x09, 0x34, 0x96, 0x45, 0x9e, 0xff, 0xe2, 0xd8, 0xd7, 0x07, 0x27, 0xb8, 0x24, 0x62, 0xf6, 0x1d, 0x0e, 0xc1, 0xb7, 0x84, 0x79, 0x29, 0xd1, 0x0e, 0xa6, 0x31, 0xda, 0xcb, 0x16, 0xb5, 0x6c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6951 = { .name = "ecdsa_secp256r1_sha256_6951", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6951_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6951_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6951_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6952 for ECDSA, tcId is 233 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6952_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6952_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6952_sig[] = { 0x73, 0xb3, 0xc9, 0x0e, 0xcd, 0x39, 0x00, 0x28, 0x05, 0x81, 0x64, 0x52, 0x4d, 0xde, 0x89, 0x27, 0x03, 0xdc, 0xe3, 0xde, 0xa0, 0xd5, 0x3f, 0xa8, 0x09, 0x39, 0x99, 0xf0, 0x7a, 0xb8, 0xaa, 0x43, 0x2f, 0x67, 0xb0, 0xb8, 0xe2, 0x06, 0x36, 0x69, 0x5b, 0xb7, 0xd8, 0xbf, 0x0a, 0x65, 0x1c, 0x80, 0x2e, 0xd2, 0x5a, 0x39, 0x53, 0x87, 0xb5, 0xf4, 0x18, 0x8c, 0x0c, 0x40, 0x75, 0xc8, 0x86, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6952 = { .name = "ecdsa_secp256r1_sha256_6952", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6952_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6952_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6952_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6953 for ECDSA, tcId is 234 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6953_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6953_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6953_sig[] = { 0xbf, 0xab, 0x30, 0x98, 0x25, 0x28, 0x47, 0xb3, 0x28, 0xfa, 0xdf, 0x2f, 0x89, 0xb9, 0x5c, 0x85, 0x1a, 0x7f, 0x0e, 0xb3, 0x90, 0x76, 0x33, 0x78, 0xf3, 0x7e, 0x90, 0x11, 0x9d, 0x5b, 0xa3, 0xdd, 0xbd, 0xd6, 0x4e, 0x23, 0x4e, 0x83, 0x2b, 0x10, 0x67, 0xc2, 0xd0, 0x58, 0xcc, 0xb4, 0x4d, 0x97, 0x81, 0x95, 0xcc, 0xeb, 0xb6, 0x5c, 0x2a, 0xaf, 0x1e, 0x2d, 0xa9, 0xb8, 0xb4, 0x98, 0x7e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6953 = { .name = "ecdsa_secp256r1_sha256_6953", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6953_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6953_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6953_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6954 for ECDSA, tcId is 235 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6954_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6954_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6954_sig[] = { 0x20, 0x4a, 0x97, 0x84, 0x07, 0x4b, 0x24, 0x6d, 0x8b, 0xf8, 0xbf, 0x04, 0xa4, 0xce, 0xb1, 0xc1, 0xf1, 0xc9, 0xaa, 0xab, 0x16, 0x8b, 0x15, 0x96, 0xd1, 0x70, 0x93, 0xc5, 0xcd, 0x21, 0xd2, 0xcd, 0x51, 0xcc, 0xe4, 0x16, 0x70, 0x63, 0x67, 0x83, 0xdc, 0x06, 0xa7, 0x59, 0xc8, 0x84, 0x78, 0x68, 0xa4, 0x06, 0xc2, 0x50, 0x6f, 0xe1, 0x79, 0x75, 0x58, 0x2f, 0xe6, 0x48, 0xd1, 0xd8, 0x8b, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6954 = { .name = "ecdsa_secp256r1_sha256_6954", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6954_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6954_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6954_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6955 for ECDSA, tcId is 236 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6955_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6955_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6955_sig[] = { 0xed, 0x66, 0xdc, 0x34, 0xf5, 0x51, 0xac, 0x82, 0xf6, 0x3d, 0x4a, 0xa4, 0xf8, 0x1f, 0xe2, 0xcb, 0x00, 0x31, 0xa9, 0x1d, 0x13, 0x14, 0xf8, 0x35, 0x02, 0x7b, 0xca, 0x0f, 0x1c, 0xee, 0xaa, 0x03, 0x99, 0xca, 0x12, 0x3a, 0xa0, 0x9b, 0x13, 0xcd, 0x19, 0x4a, 0x42, 0x2e, 0x18, 0xd5, 0xfd, 0xa1, 0x67, 0x62, 0x3c, 0x3f, 0x6e, 0x5d, 0x4d, 0x6a, 0xbb, 0x89, 0x53, 0xd6, 0x7c, 0x0c, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6955 = { .name = "ecdsa_secp256r1_sha256_6955", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6955_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6955_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6955_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6956 for ECDSA, tcId is 237 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6956_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6956_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6956_sig[] = { 0x06, 0x0b, 0x70, 0x0b, 0xef, 0x66, 0x5c, 0x68, 0x89, 0x9d, 0x44, 0xf2, 0x35, 0x6a, 0x57, 0x8d, 0x12, 0x6b, 0x06, 0x20, 0x23, 0xcc, 0xc3, 0xc0, 0x56, 0xbf, 0x0f, 0x60, 0xa2, 0x37, 0x01, 0x2b, 0x8d, 0x18, 0x6c, 0x02, 0x78, 0x32, 0x96, 0x5f, 0x4f, 0xcc, 0x78, 0xa3, 0x36, 0x6c, 0xa9, 0x5d, 0xed, 0xbb, 0x41, 0x0c, 0xbe, 0xf3, 0xf2, 0x6d, 0x6b, 0xe5, 0xd5, 0x81, 0xc1, 0x1d, 0x36, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6956 = { .name = "ecdsa_secp256r1_sha256_6956", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6956_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6956_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6956_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6957 for ECDSA, tcId is 238 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6957_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6957_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6957_sig[] = { 0x9f, 0x6a, 0xdf, 0xe8, 0xd5, 0xeb, 0x5b, 0x2c, 0x24, 0xd7, 0xaa, 0x79, 0x34, 0xb6, 0xcf, 0x29, 0xc9, 0x3e, 0xa7, 0x6c, 0xd3, 0x13, 0xc9, 0x13, 0x2b, 0xb0, 0xc8, 0xe3, 0x8c, 0x96, 0x83, 0x1d, 0xb2, 0x6a, 0x9c, 0x9e, 0x40, 0xe5, 0x5e, 0xe0, 0x89, 0x0c, 0x94, 0x4c, 0xf2, 0x71, 0x75, 0x6c, 0x90, 0x6a, 0x33, 0xe6, 0x6b, 0x5b, 0xd1, 0x5e, 0x05, 0x15, 0x93, 0x88, 0x3b, 0x5e, 0x99, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6957 = { .name = "ecdsa_secp256r1_sha256_6957", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6957_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6957_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6957_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6958 for ECDSA, tcId is 239 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6958_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6958_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6958_sig[] = { 0xa1, 0xaf, 0x03, 0xca, 0x91, 0x67, 0x7b, 0x67, 0x3a, 0xd2, 0xf3, 0x36, 0x15, 0xe5, 0x61, 0x74, 0xa1, 0xab, 0xf6, 0xda, 0x16, 0x8c, 0xeb, 0xfa, 0x88, 0x68, 0xf4, 0xba, 0x27, 0x3f, 0x16, 0xb7, 0x20, 0xaa, 0x73, 0xff, 0xe4, 0x8a, 0xfa, 0x64, 0x35, 0xcd, 0x25, 0x8b, 0x17, 0x3d, 0x0c, 0x23, 0x77, 0xd6, 0x90, 0x22, 0xe7, 0xd0, 0x98, 0xd7, 0x5c, 0xaf, 0x24, 0xc8, 0xc5, 0xe0, 0x6b, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6958 = { .name = "ecdsa_secp256r1_sha256_6958", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6958_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6958_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6958_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6959 for ECDSA, tcId is 240 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6959_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6959_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6959_sig[] = { 0xfd, 0xc7, 0x06, 0x02, 0x76, 0x6f, 0x8e, 0xed, 0x11, 0xa6, 0xc9, 0x9a, 0x71, 0xc9, 0x73, 0xd5, 0x65, 0x93, 0x55, 0x50, 0x7b, 0x84, 0x3d, 0xa6, 0xe3, 0x27, 0xa2, 0x8c, 0x11, 0x89, 0x3d, 0xb9, 0x3d, 0xf5, 0x34, 0x96, 0x88, 0xa0, 0x85, 0xb1, 0x37, 0xb1, 0xea, 0xcf, 0x45, 0x6a, 0x9e, 0x9e, 0x0f, 0x6d, 0x15, 0xec, 0x00, 0x78, 0xca, 0x60, 0xa7, 0xf8, 0x3f, 0x2b, 0x10, 0xd2, 0x13, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6959 = { .name = "ecdsa_secp256r1_sha256_6959", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6959_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6959_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6959_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6960 for ECDSA, tcId is 241 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6960_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6960_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6960_sig[] = { 0xb5, 0x16, 0xa3, 0x14, 0xf2, 0xfc, 0xe5, 0x30, 0xd6, 0x53, 0x7f, 0x6a, 0x6c, 0x49, 0x96, 0x6c, 0x23, 0x45, 0x6f, 0x63, 0xc6, 0x43, 0xcf, 0x8e, 0x0d, 0xc7, 0x38, 0xf7, 0xb8, 0x76, 0xe6, 0x75, 0xd3, 0x9f, 0xfd, 0x03, 0x3c, 0x92, 0xb6, 0xd7, 0x17, 0xdd, 0x53, 0x6f, 0xbc, 0x5e, 0xfd, 0xf1, 0x96, 0x7c, 0x4b, 0xd8, 0x09, 0x54, 0x47, 0x9b, 0xa6, 0x6b, 0x01, 0x20, 0xcd, 0x16, 0xff, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6960 = { .name = "ecdsa_secp256r1_sha256_6960", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6960_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6960_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6960_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6961 for ECDSA, tcId is 242 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6961_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6961_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6961_sig[] = { 0x3b, 0x2c, 0xbf, 0x04, 0x6e, 0xac, 0x45, 0x84, 0x2e, 0xcb, 0x79, 0x84, 0xd4, 0x75, 0x83, 0x15, 0x82, 0x71, 0x7b, 0xeb, 0xb6, 0x49, 0x2f, 0xd0, 0xa4, 0x85, 0xc1, 0x01, 0xe2, 0x9f, 0xf0, 0xa8, 0x4c, 0x9b, 0x7b, 0x47, 0xa9, 0x8b, 0x0f, 0x82, 0xde, 0x51, 0x2b, 0xc9, 0x31, 0x3a, 0xaf, 0x51, 0x70, 0x10, 0x99, 0xca, 0xc5, 0xf7, 0x6e, 0x68, 0xc8, 0x59, 0x5f, 0xc1, 0xc1, 0xd9, 0x92, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6961 = { .name = "ecdsa_secp256r1_sha256_6961", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6961_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6961_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6961_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6962 for ECDSA, tcId is 243 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6962_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6962_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6962_sig[] = { 0x30, 0xc8, 0x7d, 0x35, 0xe6, 0x36, 0xf5, 0x40, 0x84, 0x1f, 0x14, 0xaf, 0x54, 0xe2, 0xf9, 0xed, 0xd7, 0x9d, 0x03, 0x12, 0xcf, 0xa1, 0xab, 0x65, 0x6c, 0x3f, 0xb1, 0x5b, 0xfd, 0xe4, 0x8d, 0xcf, 0x47, 0xc1, 0x5a, 0x5a, 0x82, 0xd2, 0x4b, 0x75, 0xc8, 0x5a, 0x69, 0x2b, 0xd6, 0xec, 0xaf, 0xeb, 0x71, 0x40, 0x9e, 0xde, 0x23, 0xef, 0xd0, 0x8e, 0x0d, 0xb9, 0xab, 0xf6, 0x34, 0x06, 0x77, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6962 = { .name = "ecdsa_secp256r1_sha256_6962", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6962_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6962_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6962_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6963 for ECDSA, tcId is 244 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6963_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6963_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6963_sig[] = { 0x38, 0x68, 0x6f, 0xf0, 0xfd, 0xa2, 0xce, 0xf6, 0xbc, 0x43, 0xb5, 0x8c, 0xfe, 0x66, 0x47, 0xb9, 0xe2, 0xe8, 0x17, 0x6d, 0x16, 0x8d, 0xec, 0x3c, 0x68, 0xff, 0x26, 0x21, 0x13, 0x76, 0x0f, 0x52, 0x06, 0x7e, 0xc3, 0xb6, 0x51, 0xf4, 0x22, 0x66, 0x96, 0x01, 0x66, 0x21, 0x67, 0xfa, 0x87, 0x17, 0xe9, 0x76, 0xe2, 0xdb, 0x5e, 0x6a, 0x4c, 0xf7, 0xc2, 0xdd, 0xab, 0xb3, 0xfd, 0xe9, 0xd6, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6963 = { .name = "ecdsa_secp256r1_sha256_6963", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6963_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6963_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6963_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6964 for ECDSA, tcId is 245 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6964_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6964_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6964_sig[] = { 0x44, 0xa3, 0xe2, 0x3b, 0xf3, 0x14, 0xf2, 0xb3, 0x44, 0xfc, 0x25, 0xc7, 0xf2, 0xde, 0x8b, 0x6a, 0xf3, 0xe1, 0x7d, 0x27, 0xf5, 0xee, 0x84, 0x4b, 0x22, 0x59, 0x85, 0xab, 0x6e, 0x27, 0x75, 0xcf, 0x2d, 0x48, 0xe2, 0x23, 0x20, 0x5e, 0x98, 0x04, 0x1d, 0xdc, 0x87, 0xbe, 0x53, 0x2a, 0xbe, 0xd5, 0x84, 0xf0, 0x41, 0x1f, 0x57, 0x29, 0x50, 0x04, 0x93, 0xc9, 0xcc, 0x3f, 0x4d, 0xd1, 0x5e, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6964 = { .name = "ecdsa_secp256r1_sha256_6964", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6964_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6964_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6964_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6965 for ECDSA, tcId is 246 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6965_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6965_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6965_sig[] = { 0x2d, 0xed, 0x5b, 0x7e, 0xc8, 0xe9, 0x0e, 0x7b, 0xf1, 0x1f, 0x96, 0x7a, 0x3d, 0x95, 0x11, 0x0c, 0x41, 0xb9, 0x9d, 0xb3, 0xb5, 0xaa, 0x8d, 0x33, 0x0e, 0xb9, 0xd6, 0x38, 0x78, 0x16, 0x88, 0xe9, 0x7d, 0x57, 0x92, 0xc5, 0x36, 0x28, 0x15, 0x5e, 0x1b, 0xfc, 0x46, 0xfb, 0x1a, 0x67, 0xe3, 0x08, 0x8d, 0xe0, 0x49, 0xc3, 0x28, 0xae, 0x1f, 0x44, 0xec, 0x69, 0x23, 0x8a, 0x00, 0x98, 0x08, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6965 = { .name = "ecdsa_secp256r1_sha256_6965", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6965_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6965_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6965_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6966 for ECDSA, tcId is 247 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6966_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6966_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6966_sig[] = { 0xbd, 0xae, 0x7b, 0xcb, 0x58, 0x0b, 0xf3, 0x35, 0xef, 0xd3, 0xbc, 0x3d, 0x31, 0x87, 0x0f, 0x92, 0x3e, 0xac, 0xca, 0xfc, 0xd4, 0x0e, 0xc2, 0xf6, 0x05, 0x97, 0x6f, 0x15, 0x13, 0x7d, 0x8b, 0x8f, 0xf6, 0xdf, 0xa1, 0x2f, 0x19, 0xe5, 0x25, 0x27, 0x0b, 0x01, 0x06, 0xee, 0xcf, 0xe2, 0x57, 0x49, 0x9f, 0x37, 0x3a, 0x4f, 0xb3, 0x18, 0x99, 0x4f, 0x24, 0x83, 0x81, 0x22, 0xce, 0x7e, 0xc3, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6966 = { .name = "ecdsa_secp256r1_sha256_6966", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6966_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6966_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6966_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6967 for ECDSA, tcId is 248 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6967_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6967_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6967_sig[] = { 0x50, 0xf9, 0xc4, 0xf0, 0xcd, 0x69, 0x40, 0xe1, 0x62, 0x72, 0x09, 0x57, 0xff, 0xff, 0x51, 0x37, 0x99, 0x20, 0x9b, 0x78, 0x59, 0x69, 0x56, 0xd2, 0x1e, 0xce, 0x25, 0x1c, 0x24, 0x01, 0xf1, 0xc6, 0xd7, 0x03, 0x3a, 0x0a, 0x78, 0x7d, 0x33, 0x8e, 0x88, 0x9d, 0xef, 0xaa, 0xab, 0xb1, 0x06, 0xb9, 0x5a, 0x43, 0x55, 0xe4, 0x11, 0xa5, 0x9c, 0x32, 0xaa, 0x51, 0x67, 0xdf, 0xab, 0x24, 0x47, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6967 = { .name = "ecdsa_secp256r1_sha256_6967", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6967_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6967_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6967_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6968 for ECDSA, tcId is 249 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6968_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6968_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6968_sig[] = { 0xf6, 0x12, 0x82, 0x06, 0x87, 0x60, 0x4f, 0xa0, 0x19, 0x06, 0x06, 0x6a, 0x37, 0x8d, 0x67, 0x54, 0x09, 0x82, 0xe2, 0x95, 0x75, 0xd0, 0x19, 0xaa, 0xbe, 0x90, 0x92, 0x4e, 0xad, 0x5c, 0x86, 0x0d, 0x3f, 0x93, 0x67, 0x70, 0x2d, 0xd7, 0xdd, 0x4f, 0x75, 0xea, 0x98, 0xaf, 0xd2, 0x0e, 0x32, 0x8a, 0x1a, 0x99, 0xf4, 0x85, 0x7b, 0x31, 0x65, 0x25, 0x32, 0x82, 0x30, 0xce, 0x29, 0x4b, 0x0f, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6968 = { .name = "ecdsa_secp256r1_sha256_6968", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6968_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6968_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6968_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6969 for ECDSA, tcId is 250 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6969_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6969_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6969_sig[] = { 0x95, 0x05, 0xe4, 0x07, 0x65, 0x7d, 0x6e, 0x8b, 0xc9, 0x3d, 0xb5, 0xda, 0x7a, 0xa6, 0xf5, 0x08, 0x1f, 0x61, 0x98, 0x0c, 0x19, 0x49, 0xf5, 0x6b, 0x0f, 0x2f, 0x50, 0x7d, 0xa5, 0x78, 0x2a, 0x7a, 0xc6, 0x0d, 0x31, 0x90, 0x4e, 0x36, 0x69, 0x73, 0x8f, 0xfb, 0xec, 0xca, 0xb6, 0xc3, 0x65, 0x6c, 0x08, 0xe0, 0xed, 0x5c, 0xb9, 0x2b, 0x3c, 0xfa, 0x5e, 0x7f, 0x71, 0x78, 0x4f, 0x9c, 0x50, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6969 = { .name = "ecdsa_secp256r1_sha256_6969", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6969_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6969_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6969_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6970 for ECDSA, tcId is 251 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6970_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6970_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6970_sig[] = { 0xbb, 0xd1, 0x6f, 0xbb, 0xb6, 0x56, 0xb6, 0xd0, 0xd8, 0x3e, 0x6a, 0x77, 0x87, 0xcd, 0x69, 0x1b, 0x08, 0x73, 0x5a, 0xed, 0x37, 0x17, 0x32, 0x72, 0x3e, 0x1c, 0x68, 0xa4, 0x04, 0x04, 0x51, 0x7d, 0x9d, 0x8e, 0x35, 0xdb, 0xa9, 0x60, 0x28, 0xb7, 0x78, 0x7d, 0x91, 0x31, 0x5b, 0xe6, 0x75, 0x87, 0x7d, 0x2d, 0x09, 0x7b, 0xe5, 0xe8, 0xee, 0x34, 0x56, 0x0e, 0x3e, 0x7f, 0xd2, 0x5c, 0x0f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6970 = { .name = "ecdsa_secp256r1_sha256_6970", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6970_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6970_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6970_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6971 for ECDSA, tcId is 252 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6971_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6971_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6971_sig[] = { 0x2e, 0xc9, 0x76, 0x01, 0x22, 0xdb, 0x98, 0xfd, 0x06, 0xea, 0x76, 0x84, 0x8d, 0x35, 0xa6, 0xda, 0x44, 0x2d, 0x2c, 0xee, 0xf7, 0x55, 0x9a, 0x30, 0xcf, 0x57, 0xc6, 0x1e, 0x92, 0xdf, 0x32, 0x7e, 0x7a, 0xb2, 0x71, 0xda, 0x90, 0x85, 0x94, 0x79, 0x70, 0x1f, 0xcc, 0xf8, 0x6e, 0x46, 0x2e, 0xe3, 0x39, 0x3f, 0xb6, 0x81, 0x4c, 0x27, 0xb7, 0x60, 0xc4, 0x96, 0x36, 0x25, 0xc0, 0xa1, 0x98, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6971 = { .name = "ecdsa_secp256r1_sha256_6971", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6971_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6971_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6971_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6972 for ECDSA, tcId is 253 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6972_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6972_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6972_sig[] = { 0x54, 0xe7, 0x6b, 0x76, 0x83, 0xb6, 0x65, 0x0b, 0xaa, 0x6a, 0x7f, 0xc4, 0x9b, 0x1c, 0x51, 0xee, 0xd9, 0xba, 0x9d, 0xd4, 0x63, 0x22, 0x1f, 0x7a, 0x4f, 0x10, 0x05, 0xa8, 0x9f, 0xe0, 0x0c, 0x59, 0x2e, 0xa0, 0x76, 0x88, 0x6c, 0x77, 0x3e, 0xb9, 0x37, 0xec, 0x1c, 0xc8, 0x37, 0x4b, 0x79, 0x15, 0xcf, 0xd1, 0x1b, 0x1c, 0x1a, 0xe1, 0x16, 0x61, 0x52, 0xf2, 0xf7, 0x80, 0x6a, 0x31, 0xc8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6972 = { .name = "ecdsa_secp256r1_sha256_6972", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6972_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6972_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6972_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6973 for ECDSA, tcId is 254 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6973_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6973_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6973_sig[] = { 0x52, 0x91, 0xde, 0xaf, 0x24, 0x65, 0x9f, 0xfb, 0xbc, 0xe6, 0xe3, 0xc2, 0x6f, 0x60, 0x21, 0x09, 0x7a, 0x74, 0xab, 0xdb, 0xb6, 0x9b, 0xe4, 0xfb, 0x10, 0x41, 0x9c, 0x0c, 0x49, 0x6c, 0x94, 0x66, 0x65, 0xd6, 0xfc, 0xf3, 0x36, 0xd2, 0x7c, 0xc7, 0xcd, 0xb9, 0x82, 0xbb, 0x4e, 0x4e, 0xce, 0xf5, 0x82, 0x7f, 0x84, 0x74, 0x2f, 0x29, 0xf1, 0x0a, 0xbf, 0x83, 0x46, 0x92, 0x70, 0xa0, 0x3d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6973 = { .name = "ecdsa_secp256r1_sha256_6973", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6973_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6973_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6973_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6974 for ECDSA, tcId is 255 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6974_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6974_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6974_sig[] = { 0x20, 0x7a, 0x32, 0x41, 0x81, 0x2d, 0x75, 0xd9, 0x47, 0x41, 0x9d, 0xc5, 0x8e, 0xfb, 0x05, 0xe8, 0x00, 0x3b, 0x33, 0xfc, 0x17, 0xeb, 0x50, 0xf9, 0xd1, 0x51, 0x66, 0xa8, 0x84, 0x79, 0xf1, 0x07, 0xcd, 0xee, 0x74, 0x9f, 0x2e, 0x49, 0x2b, 0x21, 0x3c, 0xe8, 0x0b, 0x32, 0xd0, 0x57, 0x4f, 0x62, 0xf1, 0xc5, 0xd7, 0x07, 0x93, 0xcf, 0x55, 0xe3, 0x82, 0xd5, 0xca, 0xad, 0xf7, 0x59, 0x27, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6974 = { .name = "ecdsa_secp256r1_sha256_6974", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6974_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6974_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6974_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6975 for ECDSA, tcId is 256 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6975_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6975_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6975_sig[] = { 0x65, 0x54, 0xe4, 0x9f, 0x82, 0xa8, 0x55, 0x20, 0x43, 0x28, 0xac, 0x94, 0x91, 0x3b, 0xf0, 0x1b, 0xbe, 0x84, 0x43, 0x7a, 0x35, 0x5a, 0x0a, 0x37, 0xc0, 0xde, 0xe3, 0xcf, 0x81, 0xaa, 0x77, 0x28, 0xae, 0xa0, 0x0d, 0xe2, 0x50, 0x7d, 0xda, 0xf5, 0xc9, 0x4e, 0x1e, 0x12, 0x69, 0x80, 0xd3, 0xdf, 0x16, 0x25, 0x0a, 0x2e, 0xae, 0xbc, 0x8b, 0xe4, 0x86, 0xef, 0xfe, 0x7f, 0x22, 0xb4, 0xf9, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6975 = { .name = "ecdsa_secp256r1_sha256_6975", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6975_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6975_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6975_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6976 for ECDSA, tcId is 257 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6976_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6976_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6976_sig[] = { 0xa5, 0x4c, 0x50, 0x62, 0x64, 0x83, 0x39, 0xd2, 0xbf, 0xf0, 0x6f, 0x71, 0xc8, 0x82, 0x16, 0xc2, 0x6c, 0x6e, 0x19, 0xb4, 0xd8, 0x0a, 0x8c, 0x60, 0x29, 0x90, 0xac, 0x82, 0x70, 0x7e, 0xfd, 0xfc, 0xe9, 0x9b, 0xbe, 0x7f, 0xcf, 0xaf, 0xae, 0x3e, 0x69, 0xfd, 0x01, 0x67, 0x77, 0x51, 0x7a, 0xa0, 0x10, 0x56, 0x31, 0x7f, 0x46, 0x7a, 0xd0, 0x9a, 0xff, 0x09, 0xbe, 0x73, 0xc9, 0x73, 0x1b, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6976 = { .name = "ecdsa_secp256r1_sha256_6976", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6976_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6976_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6976_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6977 for ECDSA, tcId is 258 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6977_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6977_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6977_sig[] = { 0x97, 0x5b, 0xd7, 0x15, 0x7a, 0x8d, 0x36, 0x3b, 0x30, 0x9f, 0x1f, 0x44, 0x40, 0x12, 0xb1, 0xa1, 0xd2, 0x30, 0x96, 0x59, 0x31, 0x33, 0xe7, 0x1b, 0x4c, 0xa8, 0xb0, 0x59, 0xcf, 0xf3, 0x7e, 0xaf, 0x7f, 0xaa, 0x7a, 0x28, 0xb1, 0xc8, 0x22, 0xba, 0xa2, 0x41, 0x79, 0x3f, 0x2a, 0xbc, 0x93, 0x0b, 0xd4, 0xc6, 0x98, 0x40, 0xfe, 0x09, 0x0f, 0x2a, 0xac, 0xc4, 0x67, 0x86, 0xbf, 0x91, 0x96, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6977 = { .name = "ecdsa_secp256r1_sha256_6977", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6977_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6977_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6977_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6978 for ECDSA, tcId is 259 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6978_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6978_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_6978_sig[] = { 0x56, 0x94, 0xa6, 0xf8, 0x4b, 0x8f, 0x87, 0x5c, 0x27, 0x6a, 0xfd, 0x2e, 0xbc, 0xfe, 0x4d, 0x61, 0xde, 0x9e, 0xc9, 0x03, 0x05, 0xaf, 0xb1, 0x35, 0x7b, 0x95, 0xb3, 0xe0, 0xda, 0x43, 0x88, 0x5e, 0x0d, 0xff, 0xad, 0x9f, 0xfd, 0x0b, 0x75, 0x7d, 0x80, 0x51, 0xde, 0xc0, 0x2e, 0xbd, 0xf7, 0x0d, 0x8e, 0xe2, 0xdc, 0x5c, 0x78, 0x70, 0xc0, 0x82, 0x3b, 0x6c, 0xcc, 0x7c, 0x67, 0x9c, 0xba, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6978 = { .name = "ecdsa_secp256r1_sha256_6978", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6978_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6978_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6978_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6979 for ECDSA, tcId is 260 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6979_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6979_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6979_sig[] = { 0xa0, 0xc3, 0x0e, 0x80, 0x26, 0xfd, 0xb2, 0xb4, 0xb4, 0x96, 0x8a, 0x27, 0xd1, 0x6a, 0x6d, 0x08, 0xf7, 0x09, 0x8f, 0x1a, 0x98, 0xd2, 0x16, 0x20, 0xd7, 0x45, 0x4b, 0xa9, 0x79, 0x0f, 0x1b, 0xa6, 0x5e, 0x47, 0x04, 0x53, 0xa8, 0xa3, 0x99, 0xf1, 0x5b, 0xaf, 0x46, 0x3f, 0x9d, 0xec, 0xeb, 0x53, 0xac, 0xc5, 0xca, 0x64, 0x45, 0x91, 0x49, 0x68, 0x8b, 0xd2, 0x76, 0x0c, 0x65, 0x42, 0x43, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6979 = { .name = "ecdsa_secp256r1_sha256_6979", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6979_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6979_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6979_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6980 for ECDSA, tcId is 261 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6980_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6980_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_6980_sig[] = { 0x61, 0x4e, 0xa8, 0x4a, 0xcf, 0x73, 0x65, 0x27, 0xdd, 0x73, 0x60, 0x2c, 0xd4, 0xbb, 0x4e, 0xea, 0x1d, 0xfe, 0xbe, 0xbd, 0x5a, 0xd8, 0xac, 0xa5, 0x2a, 0xa0, 0x22, 0x8c, 0xf7, 0xb9, 0x9a, 0x88, 0x73, 0x7c, 0xc8, 0x5f, 0x5f, 0x2d, 0x2f, 0x60, 0xd1, 0xb8, 0x18, 0x3f, 0x3e, 0xd4, 0x90, 0xe4, 0xde, 0x14, 0x36, 0x8e, 0x96, 0xa9, 0x48, 0x2c, 0x2a, 0x4d, 0xd1, 0x93, 0x19, 0x5c, 0x90, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6980 = { .name = "ecdsa_secp256r1_sha256_6980", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6980_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6980_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6980_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6981 for ECDSA, tcId is 262 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6981_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6981_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6981_sig[] = { 0xbe, 0xad, 0x67, 0x34, 0xeb, 0xe4, 0x4b, 0x81, 0x0d, 0x3f, 0xb2, 0xea, 0x00, 0xb1, 0x73, 0x29, 0x45, 0x37, 0x73, 0x38, 0xfe, 0xbf, 0xd4, 0x39, 0xa8, 0xd7, 0x4d, 0xfb, 0xd0, 0xf9, 0x42, 0xfa, 0x6b, 0xb1, 0x8e, 0xae, 0x36, 0x61, 0x6a, 0x7d, 0x3c, 0xad, 0x35, 0x91, 0x9f, 0xd2, 0x1a, 0x8a, 0xf4, 0xbb, 0xe7, 0xa1, 0x0f, 0x73, 0xb3, 0xe0, 0x36, 0xa4, 0x6b, 0x10, 0x3e, 0xf5, 0x6e, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6981 = { .name = "ecdsa_secp256r1_sha256_6981", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6981_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6981_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6981_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6982 for ECDSA, tcId is 263 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6982_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6982_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6982_sig[] = { 0x49, 0x96, 0x25, 0x47, 0x9e, 0x16, 0x1d, 0xac, 0xd4, 0xdb, 0x9d, 0x9c, 0xe6, 0x48, 0x54, 0xc9, 0x8d, 0x92, 0x2c, 0xbf, 0x21, 0x27, 0x03, 0xe9, 0x65, 0x4f, 0xae, 0x18, 0x2d, 0xf9, 0xba, 0xd2, 0x42, 0xc1, 0x77, 0xcf, 0x37, 0xb8, 0x19, 0x3a, 0x01, 0x31, 0x10, 0x8d, 0x97, 0x81, 0x9e, 0xdd, 0x94, 0x39, 0x93, 0x60, 0x28, 0x86, 0x4a, 0xc1, 0x95, 0xb6, 0x4f, 0xca, 0x76, 0xd9, 0xd6, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6982 = { .name = "ecdsa_secp256r1_sha256_6982", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6982_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6982_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6982_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6983 for ECDSA, tcId is 264 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6983_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6983_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6983_sig[] = { 0x08, 0xf1, 0x6b, 0x80, 0x93, 0xa8, 0xfb, 0x4d, 0x66, 0xa2, 0xc8, 0x06, 0x5b, 0x54, 0x1b, 0x3d, 0x31, 0xe3, 0xbf, 0xe6, 0x94, 0xf6, 0xb8, 0x9c, 0x50, 0xfb, 0x1a, 0xaa, 0x6f, 0xf6, 0xc9, 0xb2, 0x9d, 0x64, 0x55, 0xe2, 0xd5, 0xd1, 0x77, 0x97, 0x48, 0x57, 0x3b, 0x61, 0x1c, 0xb9, 0x5d, 0x4a, 0x21, 0xf9, 0x67, 0x41, 0x03, 0x99, 0xb3, 0x9b, 0x53, 0x5b, 0xa3, 0xe5, 0xaf, 0x81, 0xca, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6983 = { .name = "ecdsa_secp256r1_sha256_6983", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6983_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6983_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6983_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6984 for ECDSA, tcId is 265 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6984_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6984_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6984_sig[] = { 0xbe, 0x26, 0x23, 0x1b, 0x61, 0x91, 0x65, 0x8a, 0x19, 0xdd, 0x72, 0xdd, 0xb9, 0x9e, 0xd8, 0xf8, 0xc5, 0x79, 0xb6, 0x93, 0x8d, 0x19, 0xbc, 0xe8, 0xee, 0xd8, 0xdc, 0x2b, 0x33, 0x8c, 0xb5, 0xf8, 0xe1, 0xd9, 0xa3, 0x2e, 0xe5, 0x6c, 0xff, 0xed, 0x37, 0xf0, 0xf2, 0x2b, 0x2d, 0xcb, 0x57, 0xd5, 0xc9, 0x43, 0xc1, 0x4f, 0x79, 0x69, 0x4a, 0x03, 0xb9, 0xc5, 0xe9, 0x69, 0x52, 0x57, 0x5c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6984 = { .name = "ecdsa_secp256r1_sha256_6984", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6984_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6984_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6984_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6985 for ECDSA, tcId is 266 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6985_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6985_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6985_sig[] = { 0x15, 0xe7, 0x68, 0x80, 0x89, 0x83, 0x16, 0xb1, 0x62, 0x04, 0xac, 0x92, 0x0a, 0x02, 0xd5, 0x80, 0x45, 0xf3, 0x6a, 0x22, 0x9d, 0x4a, 0xa4, 0xf8, 0x12, 0x63, 0x8c, 0x45, 0x5a, 0xbe, 0x04, 0x43, 0xe7, 0x4d, 0x35, 0x7d, 0x3f, 0xcb, 0x5c, 0x8c, 0x53, 0x37, 0xbd, 0x6a, 0xba, 0x41, 0x78, 0xb4, 0x55, 0xca, 0x10, 0xe2, 0x26, 0xe1, 0x3f, 0x96, 0x38, 0x19, 0x65, 0x06, 0xa1, 0x93, 0x91, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6985 = { .name = "ecdsa_secp256r1_sha256_6985", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6985_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6985_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6985_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6986 for ECDSA, tcId is 267 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6986_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6986_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6986_sig[] = { 0x35, 0x2e, 0xcb, 0x53, 0xf8, 0xdf, 0x2c, 0x50, 0x3a, 0x45, 0xf9, 0x84, 0x6f, 0xc2, 0x8d, 0x1d, 0x31, 0xe6, 0x30, 0x7d, 0x3d, 0xdb, 0xff, 0xc1, 0x13, 0x23, 0x15, 0xcc, 0x07, 0xf1, 0x6d, 0xad, 0x13, 0x48, 0xdf, 0xa9, 0xc4, 0x82, 0xc5, 0x58, 0xe1, 0xd0, 0x5c, 0x52, 0x42, 0xca, 0x1c, 0x39, 0x43, 0x67, 0x26, 0xec, 0xd2, 0x82, 0x58, 0xb1, 0x89, 0x97, 0x92, 0x88, 0x7d, 0xd0, 0xa3, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6986 = { .name = "ecdsa_secp256r1_sha256_6986", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6986_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6986_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6986_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6987 for ECDSA, tcId is 268 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6987_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6987_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_6987_sig[] = { 0x4a, 0x40, 0x80, 0x1a, 0x7e, 0x60, 0x6b, 0xa7, 0x8a, 0x0d, 0xa9, 0x88, 0x2a, 0xb2, 0x3c, 0x76, 0x77, 0xb8, 0x64, 0x23, 0x49, 0xed, 0x3d, 0x65, 0x2c, 0x5b, 0xfa, 0x5f, 0x2a, 0x95, 0x58, 0xfb, 0x3a, 0x49, 0xb6, 0x48, 0x48, 0xd6, 0x82, 0xef, 0x7f, 0x60, 0x5f, 0x28, 0x32, 0xf7, 0x38, 0x4b, 0xdc, 0x24, 0xed, 0x29, 0x25, 0x82, 0x5b, 0xf8, 0xea, 0x77, 0xdc, 0x59, 0x81, 0x72, 0x57, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6987 = { .name = "ecdsa_secp256r1_sha256_6987", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6987_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6987_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6987_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6988 for ECDSA, tcId is 269 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6988_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6988_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_6988_sig[] = { 0xea, 0xcc, 0x5e, 0x1a, 0x83, 0x04, 0xa7, 0x4d, 0x2b, 0xe4, 0x12, 0xb0, 0x78, 0x92, 0x4b, 0x3b, 0xb3, 0x51, 0x1b, 0xac, 0x85, 0x5c, 0x05, 0xc9, 0xe5, 0xe9, 0xe4, 0x4d, 0xf3, 0xd6, 0x1e, 0x96, 0x74, 0x51, 0xcd, 0x8e, 0x18, 0xd6, 0xed, 0x18, 0x85, 0xdd, 0x82, 0x77, 0x14, 0x84, 0x7f, 0x96, 0xec, 0x4b, 0xb0, 0xed, 0x4c, 0x36, 0xce, 0x98, 0x08, 0xdb, 0x8f, 0x71, 0x42, 0x04, 0xf6, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6988 = { .name = "ecdsa_secp256r1_sha256_6988", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6988_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6988_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6988_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6989 for ECDSA, tcId is 270 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6989_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6989_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6989_sig[] = { 0x2f, 0x7a, 0x5e, 0x9e, 0x57, 0x71, 0xd4, 0x24, 0xf3, 0x0f, 0x67, 0xfd, 0xab, 0x61, 0xe8, 0xce, 0x4f, 0x8c, 0xd1, 0x21, 0x48, 0x82, 0xad, 0xb6, 0x5f, 0x7d, 0xe9, 0x4c, 0x31, 0x57, 0x70, 0x52, 0xac, 0x4e, 0x69, 0x80, 0x83, 0x45, 0x80, 0x9b, 0x44, 0xac, 0xb0, 0xb2, 0xbd, 0x88, 0x91, 0x75, 0xfb, 0x75, 0xdd, 0x05, 0x0c, 0x5a, 0x44, 0x9a, 0xb9, 0x52, 0x8f, 0x8f, 0x78, 0xda, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6989 = { .name = "ecdsa_secp256r1_sha256_6989", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6989_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6989_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6989_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6990 for ECDSA, tcId is 271 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6990_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6990_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_6990_sig[] = { 0xff, 0xcd, 0xa4, 0x0f, 0x79, 0x2c, 0xe4, 0xd9, 0x3e, 0x7e, 0x0f, 0x0e, 0x95, 0xe1, 0xa2, 0x14, 0x7d, 0xdd, 0xd7, 0xf6, 0x48, 0x76, 0x21, 0xc3, 0x0a, 0x03, 0xd7, 0x10, 0xb3, 0x30, 0x02, 0x19, 0x79, 0x93, 0x8b, 0x55, 0xf8, 0xa1, 0x7f, 0x7e, 0xd7, 0xba, 0x9a, 0xde, 0x8f, 0x20, 0x65, 0xa1, 0xfa, 0x77, 0x61, 0x8f, 0x0b, 0x67, 0xad, 0xd8, 0xd5, 0x8c, 0x42, 0x2c, 0x24, 0x53, 0xa4, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6990 = { .name = "ecdsa_secp256r1_sha256_6990", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6990_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6990_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6990_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6991 for ECDSA, tcId is 272 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6991_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6991_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6991_sig[] = { 0x81, 0xf2, 0x35, 0x9c, 0x4f, 0xab, 0xa6, 0xb5, 0x3d, 0x3e, 0x8c, 0x8c, 0x3f, 0xcc, 0x16, 0xa9, 0x48, 0x35, 0x0f, 0x7a, 0xb3, 0xa5, 0x88, 0xb2, 0x8c, 0x17, 0x60, 0x3a, 0x43, 0x1e, 0x39, 0xa8, 0xcd, 0x6f, 0x6a, 0x5c, 0xc3, 0xb5, 0x5e, 0xad, 0x0f, 0xf6, 0x95, 0xd0, 0x6c, 0x68, 0x60, 0xb5, 0x09, 0xe4, 0x6d, 0x99, 0xfc, 0xce, 0xfb, 0x9f, 0x7f, 0x9e, 0x10, 0x18, 0x57, 0xf7, 0x43, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6991 = { .name = "ecdsa_secp256r1_sha256_6991", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6991_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6991_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_6991_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6992 for ECDSA, tcId is 273 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6992_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6992_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6992_sig[] = { 0xdf, 0xc8, 0xbf, 0x52, 0x04, 0x45, 0xcb, 0xb8, 0xee, 0x15, 0x96, 0xfb, 0x07, 0x3e, 0xa2, 0x83, 0xea, 0x13, 0x02, 0x51, 0xa6, 0xfd, 0xff, 0xa5, 0xc3, 0xf5, 0xf2, 0xaa, 0xf7, 0x5c, 0xa8, 0x08, 0x04, 0x8e, 0x33, 0xef, 0xce, 0x14, 0x7c, 0x9d, 0xd9, 0x28, 0x23, 0x64, 0x0e, 0x33, 0x8e, 0x68, 0xbf, 0xd7, 0xd0, 0xdc, 0x7a, 0x49, 0x05, 0xb3, 0xa7, 0xac, 0x71, 0x1e, 0x57, 0x7e, 0x90, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6992 = { .name = "ecdsa_secp256r1_sha256_6992", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6992_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6992_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_6992_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6993 for ECDSA, tcId is 274 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6993_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6993_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6993_sig[] = { 0xad, 0x01, 0x9f, 0x74, 0xc6, 0x94, 0x1d, 0x20, 0xef, 0xda, 0x70, 0xb4, 0x6c, 0x53, 0xdb, 0x16, 0x65, 0x03, 0xa0, 0xe3, 0x93, 0xe9, 0x32, 0xf6, 0x88, 0x22, 0x76, 0x88, 0xba, 0x6a, 0x57, 0x62, 0x93, 0x32, 0x0e, 0xb7, 0xca, 0x07, 0x10, 0x25, 0x53, 0x46, 0xbd, 0xbb, 0x31, 0x02, 0xcd, 0xcf, 0x79, 0x64, 0xef, 0x2e, 0x09, 0x88, 0xe7, 0x12, 0xbc, 0x05, 0xef, 0xe1, 0x6c, 0x19, 0x93, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6993 = { .name = "ecdsa_secp256r1_sha256_6993", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6993_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6993_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha256_6993_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6994 for ECDSA, tcId is 275 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6994_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6994_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6994_sig[] = { 0xac, 0x80, 0x96, 0x84, 0x2e, 0x8a, 0xdd, 0x68, 0xc3, 0x4e, 0x78, 0xce, 0x11, 0xdd, 0x71, 0xe4, 0xb5, 0x43, 0x16, 0xbd, 0x3e, 0xbf, 0x7f, 0xff, 0xde, 0xb7, 0xbd, 0x5a, 0x3e, 0xbc, 0x18, 0x83, 0xf5, 0xca, 0x2f, 0x4f, 0x23, 0xd6, 0x74, 0x50, 0x2d, 0x4c, 0xaf, 0x85, 0xd1, 0x87, 0x21, 0x5d, 0x36, 0xe3, 0xce, 0x9f, 0x0c, 0xe2, 0x19, 0x70, 0x9f, 0x21, 0xa3, 0xaa, 0xc0, 0x03, 0xb7, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6994 = { .name = "ecdsa_secp256r1_sha256_6994", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6994_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6994_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6994_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6995 for ECDSA, tcId is 276 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6995_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6995_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_6995_sig[] = { 0x67, 0x7b, 0x2d, 0x3a, 0x59, 0xb1, 0x8a, 0x5f, 0xf9, 0x39, 0xb7, 0x0e, 0xa0, 0x02, 0x25, 0x08, 0x89, 0xdd, 0xcd, 0x7b, 0x7b, 0x9d, 0x77, 0x68, 0x54, 0xb4, 0x94, 0x36, 0x93, 0xfb, 0x92, 0xf7, 0x6b, 0x4b, 0xa8, 0x56, 0xad, 0xe7, 0x67, 0x7b, 0xf3, 0x03, 0x07, 0xb2, 0x1f, 0x3c, 0xcd, 0xa3, 0x5d, 0x2f, 0x63, 0xae, 0xe8, 0x1e, 0xfd, 0x0b, 0xab, 0x69, 0x72, 0xcc, 0x07, 0x95, 0xdb, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6995 = { .name = "ecdsa_secp256r1_sha256_6995", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6995_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6995_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6995_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6996 for ECDSA, tcId is 277 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6996_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6996_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_6996_sig[] = { 0x47, 0x9e, 0x1d, 0xed, 0x14, 0xbc, 0xae, 0xd0, 0x37, 0x9b, 0xa8, 0xe1, 0xb7, 0x3d, 0x31, 0x15, 0xd8, 0x4d, 0x31, 0xd4, 0xb7, 0xc3, 0x0e, 0x1f, 0x05, 0xe1, 0xfc, 0x0d, 0x59, 0x57, 0xcf, 0xb0, 0x91, 0x8f, 0x79, 0xe3, 0x5b, 0x3d, 0x89, 0x48, 0x7c, 0xf6, 0x34, 0xa4, 0xf0, 0x5b, 0x2e, 0x0c, 0x30, 0x85, 0x7c, 0xa8, 0x79, 0xf9, 0x7c, 0x77, 0x1e, 0x87, 0x70, 0x27, 0x35, 0x5b, 0x24, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6996 = { .name = "ecdsa_secp256r1_sha256_6996", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6996_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6996_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6996_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6997 for ECDSA, tcId is 278 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6997_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6997_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_6997_sig[] = { 0x43, 0xdf, 0xcc, 0xd0, 0xed, 0xb9, 0xe2, 0x80, 0xd9, 0xa5, 0x8f, 0x01, 0x16, 0x4d, 0x55, 0xc3, 0xd7, 0x11, 0xe1, 0x4b, 0x12, 0xac, 0x5c, 0xf3, 0xb6, 0x48, 0x40, 0xea, 0xd5, 0x12, 0xa0, 0xa3, 0x1d, 0xbe, 0x33, 0xfa, 0x8b, 0xa8, 0x45, 0x33, 0xcd, 0x5c, 0x49, 0x34, 0x36, 0x5b, 0x34, 0x42, 0xca, 0x11, 0x74, 0x89, 0x9b, 0x78, 0xef, 0x9a, 0x31, 0x99, 0xf4, 0x95, 0x84, 0x38, 0x97, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6997 = { .name = "ecdsa_secp256r1_sha256_6997", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6997_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6997_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6997_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6998 for ECDSA, tcId is 279 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6998_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6998_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_6998_sig[] = { 0x5b, 0x09, 0xab, 0x63, 0x7b, 0xd4, 0xca, 0xf0, 0xf4, 0xc7, 0xc7, 0xe4, 0xbc, 0xa5, 0x92, 0xfe, 0xa2, 0x0e, 0x90, 0x87, 0xc2, 0x59, 0xd2, 0x6a, 0x38, 0xbb, 0x40, 0x85, 0xf0, 0xbb, 0xff, 0x11, 0x45, 0xb7, 0xeb, 0x46, 0x7b, 0x67, 0x48, 0xaf, 0x61, 0x8e, 0x9d, 0x80, 0xd6, 0xfd, 0xcd, 0x6a, 0xa2, 0x49, 0x64, 0xe5, 0xa1, 0x3f, 0x88, 0x5b, 0xca, 0x81, 0x01, 0xde, 0x08, 0xeb, 0x0d, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6998 = { .name = "ecdsa_secp256r1_sha256_6998", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6998_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6998_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6998_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 6999 for ECDSA, tcId is 280 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_6999_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_6999_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_6999_sig[] = { 0x5e, 0x9b, 0x1c, 0x5a, 0x02, 0x80, 0x70, 0xdf, 0x57, 0x28, 0xc5, 0xc8, 0xaf, 0x9b, 0x74, 0xe0, 0x66, 0x7a, 0xfa, 0x57, 0x0a, 0x6c, 0xfa, 0x01, 0x14, 0xa5, 0x03, 0x9e, 0xd1, 0x5e, 0xe0, 0x6f, 0xb1, 0x36, 0x09, 0x07, 0xe2, 0xd9, 0x78, 0x5e, 0xad, 0x36, 0x2b, 0xb8, 0xd7, 0xbd, 0x66, 0x1b, 0x6c, 0x29, 0xee, 0xff, 0xd3, 0xc5, 0x03, 0x77, 0x44, 0xed, 0xae, 0xb9, 0xad, 0x99, 0x0c, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_6999 = { .name = "ecdsa_secp256r1_sha256_6999", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_6999_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_6999_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_6999_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7000 for ECDSA, tcId is 281 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7000_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_7000_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_7000_sig[] = { 0x06, 0x71, 0xa0, 0xa8, 0x5c, 0x2b, 0x72, 0xd5, 0x4a, 0x2f, 0xb0, 0x99, 0x0e, 0x34, 0x53, 0x8b, 0x48, 0x90, 0x05, 0x0f, 0x5a, 0x57, 0x12, 0xf6, 0xd1, 0xa7, 0xa5, 0xfb, 0x85, 0x78, 0xf3, 0x2e, 0xdb, 0x18, 0x46, 0xba, 0xb6, 0xb7, 0x36, 0x14, 0x79, 0xab, 0x9c, 0x32, 0x85, 0xca, 0x41, 0x29, 0x18, 0x08, 0xf2, 0x7f, 0xd5, 0xbd, 0x4f, 0xda, 0xc7, 0x20, 0xe5, 0x85, 0x47, 0x13, 0x69, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7000 = { .name = "ecdsa_secp256r1_sha256_7000", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7000_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7000_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_7000_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7001 for ECDSA, tcId is 282 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7001_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_7001_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_7001_sig[] = { 0x76, 0x73, 0xf8, 0x52, 0x67, 0x48, 0x44, 0x64, 0x77, 0xdb, 0xbb, 0x05, 0x90, 0xa4, 0x54, 0x92, 0xc5, 0xd7, 0xd6, 0x98, 0x59, 0xd3, 0x01, 0xab, 0xba, 0xed, 0xb3, 0x5b, 0x20, 0x95, 0x10, 0x3a, 0x3d, 0xc7, 0x0d, 0xdf, 0x9c, 0x6b, 0x52, 0x4d, 0x88, 0x6b, 0xed, 0x9e, 0x6a, 0xf0, 0x2e, 0x0e, 0x4d, 0xec, 0x0d, 0x41, 0x7a, 0x41, 0x4f, 0xed, 0x38, 0x07, 0xef, 0x44, 0x22, 0x91, 0x3d, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7001 = { .name = "ecdsa_secp256r1_sha256_7001", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7001_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7001_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_7001_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7002 for ECDSA, tcId is 283 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7002_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_7002_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_7002_sig[] = { 0x7f, 0x08, 0x54, 0x41, 0x07, 0x0e, 0xcd, 0x2b, 0xb2, 0x12, 0x85, 0x08, 0x9e, 0xbb, 0x1a, 0xa6, 0x45, 0x0d, 0x1a, 0x06, 0xc3, 0x6d, 0x3f, 0xf3, 0x9d, 0xfd, 0x65, 0x7a, 0x79, 0x6d, 0x12, 0xb5, 0x24, 0x97, 0x12, 0x01, 0x20, 0x29, 0x87, 0x0a, 0x24, 0x59, 0xd1, 0x8d, 0x47, 0xda, 0x9a, 0xa4, 0x92, 0xa5, 0xe6, 0xcb, 0x4b, 0x2d, 0x8d, 0xaf, 0xa9, 0xe4, 0xc5, 0xc5, 0x4a, 0x2b, 0x9a, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7002 = { .name = "ecdsa_secp256r1_sha256_7002", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7002_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7002_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_7002_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7003 for ECDSA, tcId is 284 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7003_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_7003_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_7003_sig[] = { 0x91, 0x4c, 0x67, 0xfb, 0x61, 0xdd, 0x1e, 0x27, 0xc8, 0x67, 0x39, 0x8e, 0xa7, 0x32, 0x2d, 0x5a, 0xb7, 0x6d, 0xf0, 0x4b, 0xc5, 0xaa, 0x66, 0x83, 0xa8, 0xe0, 0xf3, 0x0a, 0x5d, 0x28, 0x73, 0x48, 0xfa, 0x07, 0x47, 0x40, 0x31, 0x48, 0x1d, 0xda, 0x49, 0x53, 0xe3, 0xac, 0x19, 0x59, 0xee, 0x8c, 0xea, 0x7e, 0x66, 0xec, 0x41, 0x2b, 0x38, 0xd6, 0xc9, 0x6d, 0x28, 0xf6, 0xd3, 0x73, 0x04, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7003 = { .name = "ecdsa_secp256r1_sha256_7003", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7003_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7003_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_7003_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7004 for ECDSA, tcId is 285 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7004_pubkey[] = { 0x0a, 0xd9, 0x95, 0x00, 0x28, 0x8d, 0x46, 0x69, 0x40, 0x03, 0x1d, 0x72, 0xa9, 0xf5, 0x44, 0x5a, 0x4d, 0x43, 0x78, 0x46, 0x40, 0x85, 0x5b, 0xf0, 0xa6, 0x98, 0x74, 0xd2, 0xde, 0x5f, 0xe1, 0x03, 0xc5, 0x01, 0x1e, 0x6e, 0xf2, 0xc4, 0x2d, 0xcd, 0x50, 0xd5, 0xd3, 0xd2, 0x9f, 0x99, 0xae, 0x6e, 0xba, 0x2c, 0x80, 0xc9, 0x24, 0x4f, 0x4c, 0x54, 0x22, 0xf0, 0x97, 0x9f, 0xf0, 0xc3, 0xba, 0x5e, }; static const unsigned char ecdsa_secp256r1_sha256_7004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7004_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7004 = { .name = "ecdsa_secp256r1_sha256_7004", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7004_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7004_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7004_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 285 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7005 for ECDSA, tcId is 286 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7005_pubkey[] = { 0x0a, 0xd9, 0x95, 0x00, 0x28, 0x8d, 0x46, 0x69, 0x40, 0x03, 0x1d, 0x72, 0xa9, 0xf5, 0x44, 0x5a, 0x4d, 0x43, 0x78, 0x46, 0x40, 0x85, 0x5b, 0xf0, 0xa6, 0x98, 0x74, 0xd2, 0xde, 0x5f, 0xe1, 0x03, 0xc5, 0x01, 0x1e, 0x6e, 0xf2, 0xc4, 0x2d, 0xcd, 0x50, 0xd5, 0xd3, 0xd2, 0x9f, 0x99, 0xae, 0x6e, 0xba, 0x2c, 0x80, 0xc9, 0x24, 0x4f, 0x4c, 0x54, 0x22, 0xf0, 0x97, 0x9f, 0xf0, 0xc3, 0xba, 0x5e, }; static const unsigned char ecdsa_secp256r1_sha256_7005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7005_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7005 = { .name = "ecdsa_secp256r1_sha256_7005", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7005_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7005_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7005_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 286 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7006 for ECDSA, tcId is 287 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7006_pubkey[] = { 0xab, 0x05, 0xfd, 0x9d, 0x0d, 0xe2, 0x6b, 0x9c, 0xe6, 0xf4, 0x81, 0x96, 0x52, 0xd9, 0xfc, 0x69, 0x19, 0x3d, 0x0a, 0xa3, 0x98, 0xf0, 0xfb, 0xa8, 0x01, 0x3e, 0x09, 0xc5, 0x82, 0x20, 0x45, 0x54, 0x19, 0x23, 0x52, 0x71, 0x22, 0x8c, 0x78, 0x67, 0x59, 0x09, 0x5d, 0x12, 0xb7, 0x5a, 0xf0, 0x69, 0x2d, 0xd4, 0x10, 0x3f, 0x19, 0xf6, 0xa8, 0xc3, 0x2f, 0x49, 0x43, 0x5a, 0x1e, 0x9b, 0x8d, 0x45, }; static const unsigned char ecdsa_secp256r1_sha256_7006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7006_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7006 = { .name = "ecdsa_secp256r1_sha256_7006", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7006_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7006_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7006_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 287 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7007 for ECDSA, tcId is 288 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7007_pubkey[] = { 0x80, 0x98, 0x4f, 0x39, 0xa1, 0xff, 0x38, 0xa8, 0x6a, 0x68, 0xaa, 0x42, 0x01, 0xb6, 0xbe, 0x5d, 0xfb, 0xfe, 0xcf, 0x87, 0x62, 0x19, 0x71, 0x0b, 0x07, 0xba, 0xdf, 0x6f, 0xdd, 0x4c, 0x6c, 0x56, 0x11, 0xfe, 0xb9, 0x73, 0x90, 0xd9, 0x82, 0x6e, 0x7a, 0x06, 0xdf, 0xb4, 0x18, 0x71, 0xc9, 0x40, 0xd7, 0x44, 0x15, 0xed, 0x3c, 0xac, 0x20, 0x89, 0xf1, 0x44, 0x50, 0x19, 0xbb, 0x55, 0xed, 0x95, }; static const unsigned char ecdsa_secp256r1_sha256_7007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7007_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7007 = { .name = "ecdsa_secp256r1_sha256_7007", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7007_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7007_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7007_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 288 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7008 for ECDSA, tcId is 289 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7008_pubkey[] = { 0x42, 0x01, 0xb4, 0x27, 0x29, 0x44, 0x20, 0x1c, 0x32, 0x94, 0xf5, 0xba, 0xa9, 0xa3, 0x23, 0x2b, 0x6d, 0xd6, 0x87, 0x49, 0x5f, 0xcc, 0x19, 0xa7, 0x0a, 0x95, 0xbc, 0x60, 0x2b, 0x4f, 0x7c, 0x05, 0x95, 0xc3, 0x7e, 0xba, 0x9e, 0xe8, 0x17, 0x1c, 0x1b, 0xb5, 0xac, 0x6f, 0xea, 0xf7, 0x53, 0xbc, 0x36, 0xf4, 0x63, 0xe3, 0xae, 0xf1, 0x66, 0x29, 0x57, 0x2c, 0x0c, 0x0a, 0x8f, 0xb0, 0x80, 0x0e, }; static const unsigned char ecdsa_secp256r1_sha256_7008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7008_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7008 = { .name = "ecdsa_secp256r1_sha256_7008", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7008_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7008_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7008_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 289 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7009 for ECDSA, tcId is 290 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7009_pubkey[] = { 0xa7, 0x1a, 0xf6, 0x4d, 0xe5, 0x12, 0x6a, 0x4a, 0x4e, 0x02, 0xb7, 0x92, 0x2d, 0x66, 0xce, 0x94, 0x15, 0xce, 0x88, 0xa4, 0xc9, 0xd2, 0x55, 0x14, 0xd9, 0x10, 0x82, 0xc8, 0x72, 0x5a, 0xc9, 0x57, 0x5d, 0x47, 0x72, 0x3c, 0x8f, 0xbe, 0x58, 0x0b, 0xb3, 0x69, 0xfe, 0xc9, 0xc2, 0x66, 0x5d, 0x8e, 0x30, 0xa4, 0x35, 0xb9, 0x93, 0x26, 0x45, 0x48, 0x2e, 0x7c, 0x9f, 0x11, 0xe8, 0x72, 0x29, 0x6b, }; static const unsigned char ecdsa_secp256r1_sha256_7009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7009_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7009 = { .name = "ecdsa_secp256r1_sha256_7009", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7009_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7009_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7009_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 290 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7010 for ECDSA, tcId is 291 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7010_pubkey[] = { 0x66, 0x27, 0xce, 0xc4, 0xf0, 0x73, 0x1e, 0xa2, 0x3f, 0xc2, 0x93, 0x1f, 0x90, 0xeb, 0xe5, 0xb7, 0x57, 0x2f, 0x59, 0x7d, 0x20, 0xdf, 0x08, 0xfc, 0x2b, 0x31, 0xee, 0x8e, 0xf1, 0x6b, 0x15, 0x72, 0x61, 0x70, 0xed, 0x77, 0xd8, 0xd0, 0xa1, 0x4f, 0xc5, 0xc9, 0xc3, 0xc4, 0xc9, 0xbe, 0x7f, 0x0d, 0x3e, 0xe1, 0x8f, 0x70, 0x9b, 0xb2, 0x75, 0xea, 0xf2, 0x07, 0x3e, 0x25, 0x8f, 0xe6, 0x94, 0xa5, }; static const unsigned char ecdsa_secp256r1_sha256_7010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7010_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7010 = { .name = "ecdsa_secp256r1_sha256_7010", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7010_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7010_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7010_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 291 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7011 for ECDSA, tcId is 292 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7011_pubkey[] = { 0x5a, 0x7c, 0x88, 0x25, 0xe8, 0x56, 0x91, 0xcc, 0xe1, 0xf5, 0xe7, 0x54, 0x4c, 0x54, 0xe7, 0x3f, 0x14, 0xaf, 0xc0, 0x10, 0xcb, 0x73, 0x13, 0x43, 0x26, 0x2c, 0xa7, 0xec, 0x5a, 0x77, 0xf5, 0xbf, 0xef, 0x6e, 0xdf, 0x62, 0xa4, 0x49, 0x7c, 0x1b, 0xd7, 0xb1, 0x47, 0xfb, 0x6c, 0x3d, 0x22, 0xaf, 0x3c, 0x39, 0xbf, 0xce, 0x95, 0xf3, 0x0e, 0x13, 0xa1, 0x6d, 0x3d, 0x7b, 0x28, 0x12, 0xf8, 0x13, }; static const unsigned char ecdsa_secp256r1_sha256_7011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7011_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7011 = { .name = "ecdsa_secp256r1_sha256_7011", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7011_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7011_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7011_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 292 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7012 for ECDSA, tcId is 293 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7012_pubkey[] = { 0xcb, 0xe0, 0xc2, 0x91, 0x32, 0xcd, 0x73, 0x83, 0x64, 0xfe, 0xdd, 0x60, 0x31, 0x52, 0x99, 0x0c, 0x04, 0x8e, 0x5e, 0x2f, 0xff, 0x99, 0x6d, 0x88, 0x3f, 0xa6, 0xca, 0xca, 0x79, 0x78, 0xc7, 0x37, 0x70, 0xaf, 0x6a, 0x8c, 0xe4, 0x4c, 0xb4, 0x12, 0x24, 0xb2, 0x60, 0x36, 0x06, 0xf4, 0xc0, 0x4d, 0x18, 0x8e, 0x80, 0xbf, 0xf7, 0xcc, 0x31, 0xad, 0x51, 0x89, 0xd4, 0xab, 0x0d, 0x70, 0xe8, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_7012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7012_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7012 = { .name = "ecdsa_secp256r1_sha256_7012", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7012_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7012_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7012_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 293 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7013 for ECDSA, tcId is 294 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7013_pubkey[] = { 0xcb, 0xe0, 0xc2, 0x91, 0x32, 0xcd, 0x73, 0x83, 0x64, 0xfe, 0xdd, 0x60, 0x31, 0x52, 0x99, 0x0c, 0x04, 0x8e, 0x5e, 0x2f, 0xff, 0x99, 0x6d, 0x88, 0x3f, 0xa6, 0xca, 0xca, 0x79, 0x78, 0xc7, 0x37, 0x70, 0xaf, 0x6a, 0x8c, 0xe4, 0x4c, 0xb4, 0x12, 0x24, 0xb2, 0x60, 0x36, 0x06, 0xf4, 0xc0, 0x4d, 0x18, 0x8e, 0x80, 0xbf, 0xf7, 0xcc, 0x31, 0xad, 0x51, 0x89, 0xd4, 0xab, 0x0d, 0x70, 0xe8, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_7013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7013_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7013 = { .name = "ecdsa_secp256r1_sha256_7013", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7013_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7013_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7013_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 294 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7014 for ECDSA, tcId is 295 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7014_pubkey[] = { 0x4b, 0xe4, 0x17, 0x80, 0x97, 0x00, 0x2f, 0x0d, 0xea, 0xb6, 0x8f, 0x0d, 0x9a, 0x13, 0x0e, 0x0e, 0xd3, 0x3a, 0x67, 0x95, 0xd0, 0x2a, 0x20, 0x79, 0x6d, 0xb8, 0x34, 0x44, 0xb0, 0x37, 0xe1, 0x39, 0x20, 0xf1, 0x30, 0x51, 0xe0, 0xee, 0xcd, 0xcf, 0xce, 0x4d, 0xac, 0xea, 0x0f, 0x50, 0xd1, 0xf2, 0x47, 0xca, 0xa6, 0x69, 0xf1, 0x93, 0xc1, 0xb4, 0x07, 0x5b, 0x51, 0xae, 0x29, 0x6d, 0x2d, 0x56, }; static const unsigned char ecdsa_secp256r1_sha256_7014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7014_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7014 = { .name = "ecdsa_secp256r1_sha256_7014", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7014_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7014_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7014_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 295 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7015 for ECDSA, tcId is 296 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7015_pubkey[] = { 0xd0, 0xf7, 0x37, 0x92, 0x20, 0x37, 0x16, 0xaf, 0xd4, 0xbe, 0x43, 0x29, 0xfa, 0xa4, 0x8d, 0x26, 0x9f, 0x15, 0x31, 0x3e, 0xbb, 0xba, 0x37, 0x9d, 0x77, 0x83, 0xc9, 0x7b, 0xf3, 0xe8, 0x90, 0xd9, 0x97, 0x1f, 0x4a, 0x32, 0x06, 0x60, 0x5b, 0xec, 0x21, 0x78, 0x2b, 0xf5, 0xe2, 0x75, 0xc7, 0x14, 0x41, 0x7e, 0x8f, 0x56, 0x65, 0x49, 0xe6, 0xbc, 0x68, 0x69, 0x0d, 0x23, 0x63, 0xc8, 0x9c, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha256_7015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7015_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7015 = { .name = "ecdsa_secp256r1_sha256_7015", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7015_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7015_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7015_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 296 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7016 for ECDSA, tcId is 297 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7016_pubkey[] = { 0x48, 0x38, 0xb2, 0xbe, 0x35, 0xa6, 0x27, 0x6a, 0x80, 0xef, 0x9e, 0x22, 0x81, 0x40, 0xf9, 0xd9, 0xb9, 0x6c, 0xe8, 0x3b, 0x7a, 0x25, 0x4f, 0x71, 0xcc, 0xde, 0xbb, 0xb8, 0x05, 0x4c, 0xe0, 0x5f, 0xfa, 0x9c, 0xbc, 0x12, 0x3c, 0x91, 0x9b, 0x19, 0xe0, 0x02, 0x38, 0x19, 0x8d, 0x04, 0x06, 0x90, 0x43, 0xbd, 0x66, 0x0a, 0x82, 0x88, 0x14, 0x05, 0x1f, 0xcb, 0x8a, 0xac, 0x73, 0x8a, 0x6c, 0x6b, }; static const unsigned char ecdsa_secp256r1_sha256_7016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7016_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7016 = { .name = "ecdsa_secp256r1_sha256_7016", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7016_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7016_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7016_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 297 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7017 for ECDSA, tcId is 298 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7017_pubkey[] = { 0x73, 0x93, 0x98, 0x3c, 0xa3, 0x0a, 0x52, 0x0b, 0xbc, 0x47, 0x83, 0xdc, 0x99, 0x60, 0x74, 0x6a, 0xab, 0x44, 0x4e, 0xf5, 0x20, 0xc0, 0xa8, 0xe7, 0x71, 0x11, 0x9a, 0xa4, 0xe7, 0x4b, 0x0f, 0x64, 0xe9, 0xd7, 0xbe, 0x1a, 0xb0, 0x1a, 0x0b, 0xf6, 0x26, 0xe7, 0x09, 0x86, 0x3e, 0x6a, 0x48, 0x6d, 0xba, 0xf3, 0x27, 0x93, 0xaf, 0xcc, 0xf7, 0x74, 0xe2, 0xc6, 0xcd, 0x27, 0xb1, 0x85, 0x75, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_7017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7017_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7017 = { .name = "ecdsa_secp256r1_sha256_7017", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7017_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7017_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7017_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 298 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7018 for ECDSA, tcId is 299 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7018_pubkey[] = { 0x5a, 0xc3, 0x31, 0xa1, 0x10, 0x3f, 0xe9, 0x66, 0x69, 0x73, 0x79, 0xf3, 0x56, 0xa9, 0x37, 0xf3, 0x50, 0x58, 0x8a, 0x05, 0x47, 0x7e, 0x30, 0x88, 0x51, 0xb8, 0xa5, 0x02, 0xd5, 0xdf, 0xcd, 0xc5, 0xfe, 0x99, 0x93, 0xdf, 0x4b, 0x57, 0x93, 0x9b, 0x2b, 0x8d, 0xa0, 0x95, 0xbf, 0x6d, 0x79, 0x42, 0x65, 0x20, 0x4c, 0xfe, 0x03, 0xbe, 0x99, 0x5a, 0x02, 0xe6, 0x5d, 0x40, 0x8c, 0x87, 0x1c, 0x0b, }; static const unsigned char ecdsa_secp256r1_sha256_7018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7018_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7018 = { .name = "ecdsa_secp256r1_sha256_7018", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7018_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7018_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7018_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 299 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7019 for ECDSA, tcId is 300 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7019_pubkey[] = { 0x1d, 0x20, 0x9b, 0xe8, 0xde, 0x2d, 0xe8, 0x77, 0x09, 0x5a, 0x39, 0x9d, 0x39, 0x04, 0xc7, 0x4c, 0xc4, 0x58, 0xd9, 0x26, 0xe2, 0x7b, 0xb8, 0xe5, 0x8e, 0x5e, 0xae, 0x57, 0x67, 0xc4, 0x15, 0x09, 0xdd, 0x59, 0xe0, 0x4c, 0x21, 0x4f, 0x7b, 0x18, 0xdc, 0xe3, 0x51, 0xfc, 0x2a, 0x54, 0x98, 0x93, 0xa6, 0x86, 0x0e, 0x80, 0x16, 0x3f, 0x38, 0xcc, 0x60, 0xa4, 0xf2, 0xc9, 0xd0, 0x40, 0xd8, 0xc9, }; static const unsigned char ecdsa_secp256r1_sha256_7019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7019_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7019 = { .name = "ecdsa_secp256r1_sha256_7019", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7019_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7019_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7019_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 300 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7020 for ECDSA, tcId is 301 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7020_pubkey[] = { 0x08, 0x35, 0x39, 0xfb, 0xee, 0x44, 0x62, 0x5e, 0x3a, 0xca, 0xaf, 0xa2, 0xfc, 0xb4, 0x13, 0x49, 0x39, 0x2c, 0xef, 0x06, 0x33, 0xa1, 0xb8, 0xfa, 0xbe, 0xce, 0xe0, 0xc1, 0x33, 0xb1, 0x0e, 0x99, 0x91, 0x5c, 0x1e, 0xbe, 0x7b, 0xf0, 0x0d, 0xf8, 0x53, 0x51, 0x96, 0x77, 0x0a, 0x58, 0x04, 0x7a, 0xe2, 0xa4, 0x02, 0xf2, 0x63, 0x26, 0xbb, 0x7d, 0x41, 0xd4, 0xd7, 0x61, 0x63, 0x37, 0x91, 0x1e, }; static const unsigned char ecdsa_secp256r1_sha256_7020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7020_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7020 = { .name = "ecdsa_secp256r1_sha256_7020", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7020_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7020_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7020_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 301 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7021 for ECDSA, tcId is 302 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7021_pubkey[] = { 0x8a, 0xeb, 0x36, 0x8a, 0x70, 0x27, 0xa4, 0xd6, 0x4a, 0xbd, 0xea, 0x37, 0x39, 0x0c, 0x0c, 0x1d, 0x6a, 0x26, 0xf3, 0x99, 0xe2, 0xd9, 0x73, 0x4d, 0xe1, 0xeb, 0x3d, 0x0e, 0x19, 0x37, 0x38, 0x74, 0x05, 0xbd, 0x13, 0x83, 0x47, 0x15, 0xe1, 0xdb, 0xae, 0x9b, 0x87, 0x5c, 0xf0, 0x7b, 0xd5, 0x5e, 0x1b, 0x66, 0x91, 0xc7, 0xf7, 0x53, 0x6a, 0xef, 0x3b, 0x19, 0xbf, 0x7a, 0x4a, 0xdf, 0x57, 0x6d, }; static const unsigned char ecdsa_secp256r1_sha256_7021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7021_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7021 = { .name = "ecdsa_secp256r1_sha256_7021", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7021_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7021_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7021_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 302 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7022 for ECDSA, tcId is 303 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7022_pubkey[] = { 0x8a, 0xeb, 0x36, 0x8a, 0x70, 0x27, 0xa4, 0xd6, 0x4a, 0xbd, 0xea, 0x37, 0x39, 0x0c, 0x0c, 0x1d, 0x6a, 0x26, 0xf3, 0x99, 0xe2, 0xd9, 0x73, 0x4d, 0xe1, 0xeb, 0x3d, 0x0e, 0x19, 0x37, 0x38, 0x74, 0x05, 0xbd, 0x13, 0x83, 0x47, 0x15, 0xe1, 0xdb, 0xae, 0x9b, 0x87, 0x5c, 0xf0, 0x7b, 0xd5, 0x5e, 0x1b, 0x66, 0x91, 0xc7, 0xf7, 0x53, 0x6a, 0xef, 0x3b, 0x19, 0xbf, 0x7a, 0x4a, 0xdf, 0x57, 0x6d, }; static const unsigned char ecdsa_secp256r1_sha256_7022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7022_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7022 = { .name = "ecdsa_secp256r1_sha256_7022", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7022_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7022_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7022_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 303 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7023 for ECDSA, tcId is 304 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7023_pubkey[] = { 0xb5, 0x33, 0xd4, 0x69, 0x5d, 0xd5, 0xb8, 0xc5, 0xe0, 0x77, 0x57, 0xe5, 0x5e, 0x6e, 0x51, 0x6f, 0x7e, 0x2c, 0x88, 0xfa, 0x02, 0x39, 0xe2, 0x3f, 0x60, 0xe8, 0xec, 0x07, 0xdd, 0x70, 0xf2, 0x87, 0x1b, 0x13, 0x4e, 0xe5, 0x8c, 0xc5, 0x83, 0x27, 0x84, 0x56, 0x86, 0x3f, 0x33, 0xc3, 0xa8, 0x5d, 0x88, 0x1f, 0x7d, 0x4a, 0x39, 0x85, 0x01, 0x43, 0xe2, 0x9d, 0x4e, 0xaf, 0x00, 0x9a, 0xfe, 0x47, }; static const unsigned char ecdsa_secp256r1_sha256_7023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7023_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7023 = { .name = "ecdsa_secp256r1_sha256_7023", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7023_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7023_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7023_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 304 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7024 for ECDSA, tcId is 305 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7024_pubkey[] = { 0xf5, 0x0d, 0x37, 0x1b, 0x91, 0xbf, 0xb1, 0xd7, 0xd1, 0x4e, 0x13, 0x23, 0x52, 0x3b, 0xc3, 0xaa, 0x8c, 0xbf, 0x2c, 0x57, 0xf9, 0xe2, 0x84, 0xde, 0x62, 0x8c, 0x8b, 0x45, 0x36, 0x78, 0x7b, 0x86, 0xf9, 0x4a, 0xd8, 0x87, 0xac, 0x94, 0xd5, 0x27, 0x24, 0x7c, 0xd2, 0xe7, 0xd0, 0xc8, 0xb1, 0x29, 0x1c, 0x55, 0x3c, 0x97, 0x30, 0x40, 0x53, 0x80, 0xb1, 0x4c, 0xbb, 0x20, 0x9f, 0x5f, 0xa2, 0xdd, }; static const unsigned char ecdsa_secp256r1_sha256_7024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7024_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7024 = { .name = "ecdsa_secp256r1_sha256_7024", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7024_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7024_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7024_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 305 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7025 for ECDSA, tcId is 306 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7025_pubkey[] = { 0x68, 0xec, 0x6e, 0x29, 0x8e, 0xaf, 0xe1, 0x65, 0x39, 0x15, 0x6c, 0xe5, 0x7a, 0x14, 0xb0, 0x4a, 0x70, 0x47, 0xc2, 0x21, 0xba, 0xfc, 0x3a, 0x58, 0x2e, 0xae, 0xb0, 0xd8, 0x57, 0xc4, 0xd9, 0x46, 0x97, 0xbe, 0xd1, 0xaf, 0x17, 0x85, 0x01, 0x17, 0xfd, 0xb3, 0x9b, 0x23, 0x24, 0xf2, 0x20, 0xa5, 0x69, 0x8e, 0xd1, 0x6c, 0x42, 0x6a, 0x27, 0x33, 0x5b, 0xb3, 0x85, 0xac, 0x8c, 0xa6, 0xfb, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7025_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7025 = { .name = "ecdsa_secp256r1_sha256_7025", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7025_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7025_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 306 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7026 for ECDSA, tcId is 307 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7026_pubkey[] = { 0x69, 0xda, 0x03, 0x64, 0x73, 0x4d, 0x2e, 0x53, 0x0f, 0xec, 0xe9, 0x40, 0x19, 0x26, 0x5f, 0xef, 0xb7, 0x81, 0xa0, 0xf1, 0xb0, 0x8f, 0x6c, 0x88, 0x97, 0xbd, 0xf6, 0x55, 0x79, 0x27, 0xc8, 0xb8, 0x66, 0xd2, 0xd3, 0xc7, 0xdc, 0xd5, 0x18, 0xb2, 0x3d, 0x72, 0x69, 0x60, 0xf0, 0x69, 0xad, 0x71, 0xa9, 0x33, 0xd8, 0x6e, 0xf8, 0xab, 0xbc, 0xce, 0x8b, 0x20, 0xf7, 0x1e, 0x2a, 0x84, 0x70, 0x02, }; static const unsigned char ecdsa_secp256r1_sha256_7026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7026_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7026 = { .name = "ecdsa_secp256r1_sha256_7026", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7026_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7026_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7026_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 307 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7027 for ECDSA, tcId is 308 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7027_pubkey[] = { 0xd8, 0xad, 0xc0, 0x00, 0x23, 0xa8, 0xed, 0xc0, 0x25, 0x76, 0xe2, 0xb6, 0x3e, 0x3e, 0x30, 0x62, 0x1a, 0x47, 0x1e, 0x2b, 0x23, 0x20, 0x62, 0x01, 0x87, 0xbf, 0x06, 0x7a, 0x1a, 0xc1, 0xff, 0x32, 0x33, 0xe2, 0xb5, 0x0e, 0xc0, 0x98, 0x07, 0xac, 0xcb, 0x36, 0x13, 0x1f, 0xff, 0x95, 0xed, 0x12, 0xa0, 0x9a, 0x86, 0xb4, 0xea, 0x96, 0x90, 0xaa, 0x32, 0x86, 0x15, 0x76, 0xba, 0x23, 0x62, 0xe1, }; static const unsigned char ecdsa_secp256r1_sha256_7027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7027_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7027 = { .name = "ecdsa_secp256r1_sha256_7027", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7027_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7027_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7027_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 308 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7028 for ECDSA, tcId is 309 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7028_pubkey[] = { 0x36, 0x23, 0xac, 0x97, 0x3c, 0xed, 0x0a, 0x56, 0xfa, 0x6d, 0x88, 0x2f, 0x03, 0xa7, 0xd5, 0xc7, 0xed, 0xca, 0x02, 0xcf, 0xc7, 0xb2, 0x40, 0x1f, 0xab, 0x36, 0x90, 0xdb, 0xe7, 0x5a, 0xb7, 0x85, 0x8d, 0xb0, 0x69, 0x08, 0xe6, 0x4b, 0x28, 0x61, 0x3d, 0xa7, 0x25, 0x7e, 0x73, 0x7f, 0x39, 0x79, 0x3d, 0xa8, 0xe7, 0x13, 0xba, 0x06, 0x43, 0xb9, 0x2e, 0x9b, 0xb3, 0x25, 0x2b, 0xe7, 0xf8, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha256_7028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7028_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7028 = { .name = "ecdsa_secp256r1_sha256_7028", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7028_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7028_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7028_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 309 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7029 for ECDSA, tcId is 310 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7029_pubkey[] = { 0xcf, 0x04, 0xea, 0x77, 0xe9, 0x62, 0x25, 0x23, 0xd8, 0x94, 0xb9, 0x3f, 0xf5, 0x2d, 0xc3, 0x02, 0x7b, 0x31, 0x95, 0x95, 0x03, 0xb6, 0xfa, 0x38, 0x90, 0xe5, 0xe0, 0x42, 0x63, 0xf9, 0x22, 0xf1, 0xe8, 0x52, 0x8f, 0xb7, 0xc0, 0x06, 0xb3, 0x98, 0x3c, 0x8b, 0x84, 0x00, 0xe5, 0x7b, 0x4e, 0xd7, 0x17, 0x40, 0xc2, 0xf3, 0x97, 0x54, 0x38, 0x82, 0x11, 0x99, 0xbe, 0xde, 0xae, 0xca, 0xb2, 0xe9, }; static const unsigned char ecdsa_secp256r1_sha256_7029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7029_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7029 = { .name = "ecdsa_secp256r1_sha256_7029", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7029_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7029_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7029_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 310 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7030 for ECDSA, tcId is 311 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7030_pubkey[] = { 0xdb, 0x7a, 0x2c, 0x8a, 0x1a, 0xb5, 0x73, 0xe5, 0x92, 0x9d, 0xc2, 0x40, 0x77, 0xb5, 0x08, 0xd7, 0xe6, 0x83, 0xd4, 0x92, 0x27, 0x99, 0x6b, 0xda, 0x3e, 0x9f, 0x78, 0xdb, 0xef, 0xf7, 0x73, 0x50, 0x4f, 0x41, 0x7f, 0x3b, 0xc9, 0xa8, 0x80, 0x75, 0xc2, 0xe0, 0xaa, 0xdd, 0x5a, 0x13, 0x31, 0x17, 0x30, 0xcf, 0x7c, 0xc7, 0x6a, 0x82, 0xf1, 0x1a, 0x36, 0xea, 0xf0, 0x8a, 0x6c, 0x99, 0xa2, 0x06, }; static const unsigned char ecdsa_secp256r1_sha256_7030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7030_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe9, 0x1e, 0x1b, 0xa6, 0x0f, 0xde, 0xdb, 0x76, 0xa4, 0x6b, 0xcb, 0x51, 0xdc, 0x0b, 0x8b, 0x4b, 0x7e, 0x01, 0x9f, 0x0a, 0x28, 0x72, 0x18, 0x85, 0xfa, 0x5d, 0x3a, 0x81, 0x96, 0x62, 0x33, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7030 = { .name = "ecdsa_secp256r1_sha256_7030", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7030_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7030_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7030_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 311 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7031 for ECDSA, tcId is 312 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7031_pubkey[] = { 0xde, 0xad, 0x11, 0xc7, 0xa5, 0xb3, 0x96, 0x86, 0x2f, 0x21, 0x97, 0x4d, 0xc4, 0x75, 0x2f, 0xad, 0xef, 0xf9, 0x94, 0xef, 0xe9, 0xbb, 0xd0, 0x5a, 0xb4, 0x13, 0x76, 0x5e, 0xa8, 0x0b, 0x6e, 0x1f, 0x1d, 0xe3, 0xf0, 0x64, 0x0e, 0x8a, 0xc6, 0xed, 0xcf, 0x89, 0xcf, 0xf5, 0x3c, 0x40, 0xe2, 0x65, 0xbb, 0x94, 0x07, 0x8a, 0x34, 0x37, 0x36, 0xdf, 0x07, 0xaa, 0x03, 0x18, 0xfc, 0x7f, 0xe1, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_7031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7031_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xea, 0x58, 0x43, 0xff, 0xeb, 0x73, 0xaf, 0x94, 0x31, 0x3b, 0xa4, 0x83, 0x1b, 0x53, 0xfe, 0x24, 0xf7, 0x99, 0xe5, 0x25, 0xb1, 0xe8, 0xe8, 0xc8, 0x7b, 0x59, 0xb9, 0x5b, 0x43, 0x0a, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7031 = { .name = "ecdsa_secp256r1_sha256_7031", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7031_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7031_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7031_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 312 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7032 for ECDSA, tcId is 313 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7032_pubkey[] = { 0xd0, 0xbc, 0x47, 0x2e, 0x0d, 0x7c, 0x81, 0xeb, 0xae, 0xd3, 0xa6, 0xef, 0x96, 0xc1, 0x86, 0x13, 0xbb, 0x1f, 0xea, 0x6f, 0x99, 0x43, 0x26, 0xfb, 0xe8, 0x0e, 0x00, 0xdf, 0xde, 0x67, 0xc7, 0xe9, 0x98, 0x6c, 0x72, 0x3e, 0xa4, 0x84, 0x3d, 0x48, 0x38, 0x9b, 0x94, 0x6f, 0x64, 0xad, 0x56, 0xc8, 0x3a, 0xd7, 0x0f, 0xf1, 0x7b, 0xa8, 0x53, 0x35, 0x66, 0x7d, 0x1b, 0xb9, 0xfa, 0x61, 0x9e, 0xfd, }; static const unsigned char ecdsa_secp256r1_sha256_7032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7032_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x03, 0xff, 0xca, 0xbf, 0x2f, 0x1b, 0x4d, 0x2a, 0x65, 0x19, 0x0d, 0xb1, 0x68, 0x0d, 0x62, 0xbb, 0x99, 0x4e, 0x41, 0xc5, 0x25, 0x1c, 0xd7, 0x3b, 0x3c, 0x3d, 0xfc, 0x5e, 0x5b, 0xaf, 0xc0, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7032 = { .name = "ecdsa_secp256r1_sha256_7032", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7032_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7032_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7032_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 313 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7033 for ECDSA, tcId is 314 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7033_pubkey[] = { 0xa0, 0xa4, 0x4c, 0xa9, 0x47, 0xd6, 0x6a, 0x2a, 0xcb, 0x73, 0x60, 0x08, 0xb9, 0xc0, 0x8d, 0x1a, 0xb2, 0xad, 0x03, 0x77, 0x6e, 0x02, 0x64, 0x0f, 0x78, 0x49, 0x5d, 0x45, 0x8d, 0xd5, 0x1c, 0x32, 0x63, 0x37, 0xfe, 0x5c, 0xf8, 0xc4, 0x60, 0x4b, 0x1f, 0x1c, 0x40, 0x9d, 0xc2, 0xd8, 0x72, 0xd4, 0x29, 0x4a, 0x47, 0x62, 0x42, 0x0d, 0xf4, 0x3a, 0x30, 0xa2, 0x39, 0x2e, 0x40, 0x42, 0x6a, 0xdd, }; static const unsigned char ecdsa_secp256r1_sha256_7033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7033_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4d, 0xfb, 0xc4, 0x01, 0xf9, 0x71, 0xcd, 0x30, 0x4b, 0x33, 0xdf, 0xdb, 0x17, 0xd0, 0xfe, 0xd0, 0xfe, 0x4c, 0x1a, 0x88, 0xae, 0x64, 0x8e, 0x0d, 0x28, 0x47, 0xf7, 0x49, 0x77, 0x53, 0x49, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7033 = { .name = "ecdsa_secp256r1_sha256_7033", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7033_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7033_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7033_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 314 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7034 for ECDSA, tcId is 315 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7034_pubkey[] = { 0xc9, 0xc2, 0x11, 0x52, 0x90, 0xd0, 0x08, 0xb4, 0x5f, 0xb6, 0x5f, 0xad, 0x0f, 0x60, 0x23, 0x89, 0x29, 0x8c, 0x25, 0x42, 0x0b, 0x77, 0x50, 0x19, 0xd4, 0x2b, 0x62, 0xc3, 0xce, 0x8a, 0x96, 0xb7, 0x38, 0x77, 0xd2, 0x5a, 0x80, 0x80, 0xdc, 0x02, 0xd9, 0x87, 0xca, 0x73, 0x0f, 0x04, 0x05, 0xc2, 0xc9, 0xdb, 0xef, 0xac, 0x46, 0xf9, 0xe6, 0x01, 0xcc, 0x3f, 0x06, 0xe9, 0x71, 0x39, 0x73, 0xfd, }; static const unsigned char ecdsa_secp256r1_sha256_7034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7034_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbc, 0x40, 0x24, 0x76, 0x1c, 0xd2, 0xff, 0xd4, 0x3d, 0xfd, 0xb1, 0x7d, 0x0f, 0xed, 0x11, 0x2b, 0x98, 0x89, 0x77, 0x05, 0x5c, 0xd3, 0xa8, 0xe5, 0x49, 0x71, 0xeb, 0xa9, 0xcd, 0xa5, 0xca, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7034 = { .name = "ecdsa_secp256r1_sha256_7034", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7034_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7034_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7034_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 315 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7035 for ECDSA, tcId is 316 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7035_pubkey[] = { 0x5e, 0xca, 0x1e, 0xf4, 0xc2, 0x87, 0xdd, 0xdc, 0x66, 0xb8, 0xbc, 0xcf, 0x1b, 0x88, 0xe8, 0xa2, 0x4c, 0x00, 0x18, 0x96, 0x2f, 0x3c, 0x5e, 0x7e, 0xfa, 0x83, 0xbc, 0x1a, 0x5f, 0xf6, 0x03, 0x3e, 0x5e, 0x79, 0xc4, 0xcb, 0x2c, 0x24, 0x5b, 0x8c, 0x45, 0xab, 0xdc, 0xe8, 0xa8, 0xe4, 0xda, 0x75, 0x8d, 0x92, 0xa6, 0x07, 0xc3, 0x2c, 0xd4, 0x07, 0xec, 0xae, 0xf2, 0x2f, 0x1c, 0x93, 0x4a, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_7035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7035_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x78, 0x80, 0x48, 0xed, 0x39, 0xa5, 0xff, 0xa7, 0x7b, 0xfb, 0x62, 0xfa, 0x1f, 0xda, 0x22, 0x57, 0x74, 0x2b, 0xf3, 0x5d, 0x12, 0x8f, 0xb3, 0x45, 0x9f, 0x2a, 0x0c, 0x90, 0x9e, 0xe8, 0x6f, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7035 = { .name = "ecdsa_secp256r1_sha256_7035", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7035_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7035_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7035_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 316 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7036 for ECDSA, tcId is 317 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7036_pubkey[] = { 0x5c, 0xaa, 0xa0, 0x30, 0xe7, 0xfd, 0xf0, 0xe4, 0x93, 0x6b, 0xc7, 0xab, 0x5a, 0x96, 0x35, 0x3e, 0x0a, 0x01, 0xe4, 0x13, 0x0c, 0x3f, 0x8b, 0xf2, 0x2d, 0x47, 0x3e, 0x31, 0x70, 0x29, 0xa4, 0x7a, 0xde, 0xb6, 0xad, 0xc4, 0x62, 0xf7, 0x05, 0x8f, 0x2a, 0x20, 0xd3, 0x71, 0xe9, 0x70, 0x22, 0x54, 0xe9, 0xb2, 0x01, 0x64, 0x20, 0x05, 0xb3, 0xce, 0xda, 0x92, 0x6b, 0x42, 0xb1, 0x78, 0xbe, 0xf9, }; static const unsigned char ecdsa_secp256r1_sha256_7036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7036_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x47, 0x6d, 0x91, 0x31, 0xfd, 0x38, 0x1b, 0xd9, 0x17, 0xd0, 0xfe, 0xd1, 0x12, 0xbc, 0x9e, 0x0a, 0x59, 0x24, 0xb5, 0xed, 0x5b, 0x11, 0x16, 0x7e, 0xdd, 0x8b, 0x23, 0x58, 0x2b, 0x3c, 0xb1, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7036 = { .name = "ecdsa_secp256r1_sha256_7036", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7036_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7036_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7036_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 317 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7037 for ECDSA, tcId is 318 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7037_pubkey[] = { 0xc2, 0xfd, 0x20, 0xba, 0xc0, 0x6e, 0x55, 0x5b, 0xb8, 0xac, 0x0c, 0xe6, 0x9e, 0xb1, 0xea, 0x20, 0xf8, 0x3a, 0x1f, 0xc3, 0x50, 0x1c, 0x8a, 0x66, 0x46, 0x9b, 0x1a, 0x31, 0xf6, 0x19, 0xb0, 0x98, 0x62, 0x37, 0x05, 0x07, 0x79, 0xf5, 0x2b, 0x61, 0x5b, 0xd7, 0xb8, 0xd7, 0x6a, 0x25, 0xfc, 0x95, 0xca, 0x2e, 0xd3, 0x25, 0x25, 0xc7, 0x5f, 0x27, 0xff, 0xc8, 0x7a, 0xc3, 0x97, 0xe6, 0xcb, 0xaf, }; static const unsigned char ecdsa_secp256r1_sha256_7037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7037_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x74, 0x25, 0x3e, 0x3e, 0x21, 0xbd, 0x15, 0x44, 0x48, 0xd0, 0xa8, 0xf6, 0x40, 0xfe, 0x46, 0xfa, 0xfa, 0x8b, 0x19, 0xce, 0x78, 0xd5, 0x38, 0xf6, 0xcc, 0x0a, 0x19, 0x66, 0x2d, 0x36, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7037 = { .name = "ecdsa_secp256r1_sha256_7037", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7037_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7037_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7037_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 318 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7038 for ECDSA, tcId is 319 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7038_pubkey[] = { 0x3f, 0xd6, 0xa1, 0xca, 0x7f, 0x77, 0xfb, 0x3b, 0x0b, 0xbe, 0x72, 0x6c, 0x37, 0x20, 0x10, 0x06, 0x84, 0x26, 0xe1, 0x1e, 0xa6, 0xae, 0x78, 0xce, 0x17, 0xbe, 0xda, 0xe4, 0xbb, 0xa8, 0x6c, 0xed, 0x03, 0xce, 0x55, 0x16, 0x40, 0x6b, 0xf8, 0xcf, 0xaa, 0xb8, 0x74, 0x5e, 0xac, 0x1c, 0xd6, 0x90, 0x18, 0xad, 0x6f, 0x50, 0xb5, 0x46, 0x18, 0x72, 0xdd, 0xfc, 0x56, 0xe0, 0xdb, 0x3c, 0x8f, 0xf4, }; static const unsigned char ecdsa_secp256r1_sha256_7038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7038_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x35, 0x7c, 0xfd, 0x3b, 0xe4, 0xd0, 0x1d, 0x41, 0x3c, 0x5b, 0x9e, 0xde, 0x36, 0xcb, 0xa5, 0x45, 0x2c, 0x11, 0xee, 0x7f, 0xe1, 0x48, 0x79, 0xe7, 0x49, 0xae, 0x6a, 0x2d, 0x89, 0x7a, 0x52, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7038 = { .name = "ecdsa_secp256r1_sha256_7038", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7038_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7038_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7038_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7039 for ECDSA, tcId is 320 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7039_pubkey[] = { 0x9c, 0xb8, 0xe5, 0x1e, 0x27, 0xa5, 0xae, 0x3b, 0x62, 0x4a, 0x60, 0xd6, 0xdc, 0x32, 0x73, 0x4e, 0x49, 0x89, 0xdb, 0x20, 0xe9, 0xbc, 0xa3, 0xed, 0xe1, 0xed, 0xf7, 0xb0, 0x86, 0x91, 0x11, 0x14, 0xb4, 0xc1, 0x04, 0xab, 0x3c, 0x67, 0x7e, 0x4b, 0x36, 0xd6, 0x55, 0x6e, 0x8a, 0xd5, 0xf5, 0x23, 0x41, 0x0a, 0x19, 0xf2, 0xe2, 0x77, 0xaa, 0x89, 0x5f, 0xc5, 0x73, 0x22, 0xb4, 0x42, 0x75, 0x44, }; static const unsigned char ecdsa_secp256r1_sha256_7039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7039_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x29, 0x79, 0x8c, 0x5c, 0x0e, 0xe2, 0x87, 0xd4, 0xa5, 0xe8, 0xe6, 0xb7, 0x99, 0xfd, 0x86, 0xb8, 0xdf, 0x52, 0x25, 0x29, 0x8e, 0x6f, 0xfc, 0x80, 0x7c, 0xd2, 0xf2, 0xbc, 0x27, 0xa0, 0xa6, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7039 = { .name = "ecdsa_secp256r1_sha256_7039", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7039_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7039_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7039_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7040 for ECDSA, tcId is 321 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7040_pubkey[] = { 0xa3, 0xe5, 0x2c, 0x15, 0x6d, 0xca, 0xf1, 0x05, 0x02, 0x62, 0x0b, 0x79, 0x55, 0xbc, 0x2b, 0x40, 0xbc, 0x78, 0xef, 0x3d, 0x56, 0x9e, 0x12, 0x23, 0xc2, 0x62, 0x51, 0x2d, 0x8f, 0x49, 0x60, 0x2a, 0x4a, 0x20, 0x39, 0xf3, 0x1c, 0x10, 0x97, 0x02, 0x4a, 0xd3, 0xcc, 0x86, 0xe5, 0x73, 0x21, 0xde, 0x03, 0x23, 0x55, 0x46, 0x34, 0x86, 0x16, 0x4c, 0xf1, 0x92, 0x94, 0x49, 0x77, 0xdf, 0x14, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha256_7040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7040_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x0b, 0x70, 0xf2, 0x2c, 0x78, 0x10, 0x92, 0x45, 0x2d, 0xca, 0x1a, 0x57, 0x11, 0xfa, 0x3a, 0x5a, 0x1f, 0x72, 0xad, 0xd1, 0xbf, 0x52, 0xc2, 0xff, 0x7c, 0xae, 0x48, 0x20, 0xb3, 0x00, 0x78, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7040 = { .name = "ecdsa_secp256r1_sha256_7040", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7040_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7040_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7040_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7041 for ECDSA, tcId is 322 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7041_pubkey[] = { 0xf1, 0x9b, 0x78, 0x92, 0x87, 0x20, 0xd5, 0xbe, 0xe8, 0xe6, 0x70, 0xfb, 0x90, 0x01, 0x0f, 0xb1, 0x5c, 0x37, 0xbf, 0x91, 0xb5, 0x8a, 0x51, 0x57, 0xc3, 0xf3, 0xc0, 0x59, 0xb2, 0x65, 0x5e, 0x88, 0xcf, 0x70, 0x1e, 0xc9, 0x62, 0xfb, 0x4a, 0x11, 0xdc, 0xf2, 0x73, 0xf5, 0xdc, 0x35, 0x7e, 0x58, 0x46, 0x85, 0x60, 0xc7, 0xcf, 0xeb, 0x94, 0x2d, 0x07, 0x4a, 0xbd, 0x43, 0x29, 0x26, 0x05, 0x09, }; static const unsigned char ecdsa_secp256r1_sha256_7041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7041_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x16, 0xe1, 0xe4, 0x58, 0xf0, 0x21, 0x24, 0x8a, 0x5b, 0x94, 0x34, 0xae, 0x23, 0xf4, 0x74, 0xb4, 0x3e, 0xe5, 0x5b, 0xa3, 0x7e, 0xa5, 0x85, 0xfe, 0xf9, 0x5c, 0x90, 0x41, 0x66, 0x00, 0xf1, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7041 = { .name = "ecdsa_secp256r1_sha256_7041", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7041_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7041_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7041_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 322 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7042 for ECDSA, tcId is 323 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7042_pubkey[] = { 0x83, 0xa7, 0x44, 0x45, 0x9e, 0xcd, 0xfb, 0x01, 0xa5, 0xcf, 0x52, 0xb2, 0x7a, 0x05, 0xbb, 0x73, 0x37, 0x48, 0x2d, 0x24, 0x2f, 0x23, 0x5d, 0x7b, 0x4c, 0xb8, 0x93, 0x45, 0x54, 0x5c, 0x90, 0xa8, 0xc0, 0x5d, 0x49, 0x33, 0x7b, 0x96, 0x49, 0x81, 0x32, 0x87, 0xde, 0x9f, 0xfe, 0x90, 0x35, 0x5f, 0xd9, 0x05, 0xdf, 0x5f, 0x3c, 0x32, 0x94, 0x58, 0x28, 0x12, 0x1f, 0x37, 0xcc, 0x50, 0xde, 0x6e, }; static const unsigned char ecdsa_secp256r1_sha256_7042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7042_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x22, 0x52, 0xd6, 0x85, 0x68, 0x31, 0xb6, 0xcf, 0x89, 0x5e, 0x4f, 0x05, 0x35, 0xee, 0xaf, 0x0e, 0x5e, 0x58, 0x09, 0x75, 0x3d, 0xf8, 0x48, 0xfe, 0x76, 0x0a, 0xd8, 0x62, 0x19, 0x01, 0x6a, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7042 = { .name = "ecdsa_secp256r1_sha256_7042", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7042_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7042_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7042_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 323 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7043 for ECDSA, tcId is 324 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7043_pubkey[] = { 0xdd, 0x13, 0xc6, 0xb3, 0x4c, 0x56, 0x98, 0x2d, 0xda, 0xe1, 0x24, 0xf0, 0x39, 0xdf, 0xd2, 0x3f, 0x4b, 0x19, 0xbb, 0xe8, 0x8c, 0xee, 0x8e, 0x52, 0x8a, 0xe5, 0x1e, 0x5d, 0x6f, 0x3a, 0x21, 0xd7, 0xbf, 0xad, 0x4c, 0x2e, 0x6f, 0x26, 0x3f, 0xe5, 0xeb, 0x59, 0xca, 0x97, 0x4d, 0x03, 0x9f, 0xc0, 0xe4, 0xc3, 0x34, 0x56, 0x92, 0xfb, 0x53, 0x20, 0xbd, 0xae, 0x4b, 0xd3, 0xb4, 0x2a, 0x45, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_7043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7043_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x81, 0xff, 0xe5, 0x5f, 0x17, 0x8d, 0xa6, 0x95, 0xb2, 0x8c, 0x86, 0xd8, 0xb4, 0x06, 0xb1, 0x5d, 0xab, 0x1a, 0x9e, 0x39, 0x66, 0x1a, 0x3a, 0xe0, 0x17, 0xfb, 0xe3, 0x90, 0xac, 0x09, 0x72, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7043 = { .name = "ecdsa_secp256r1_sha256_7043", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7043_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7043_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7043_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 324 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7044 for ECDSA, tcId is 325 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7044_pubkey[] = { 0x67, 0xe6, 0xf6, 0x59, 0xcd, 0xde, 0x86, 0x9a, 0x2f, 0x65, 0xf0, 0x94, 0xe9, 0x4e, 0x5b, 0x4d, 0xfa, 0xd6, 0x36, 0xbb, 0xf9, 0x51, 0x92, 0xfe, 0xee, 0xd0, 0x1b, 0x0f, 0x3d, 0xeb, 0x74, 0x60, 0xa3, 0x7e, 0x0a, 0x51, 0xf2, 0x58, 0xb7, 0xae, 0xb5, 0x1d, 0xfe, 0x59, 0x2f, 0x5c, 0xfd, 0x56, 0x85, 0xbb, 0xe5, 0x87, 0x12, 0xc8, 0xd9, 0x23, 0x3c, 0x62, 0x88, 0x64, 0x37, 0xc3, 0x8b, 0xa0, }; static const unsigned char ecdsa_secp256r1_sha256_7044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7044_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7044 = { .name = "ecdsa_secp256r1_sha256_7044", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7044_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7044_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7044_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 325 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7045 for ECDSA, tcId is 326 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7045_pubkey[] = { 0x2e, 0xb6, 0x41, 0x25, 0x05, 0xae, 0xc0, 0x5c, 0x65, 0x45, 0xf0, 0x29, 0x93, 0x20, 0x87, 0xe4, 0x90, 0xd0, 0x55, 0x11, 0xe8, 0xec, 0x1f, 0x59, 0x96, 0x17, 0xbb, 0x36, 0x7f, 0x9e, 0xca, 0xaf, 0x80, 0x5f, 0x51, 0xef, 0xcc, 0x48, 0x03, 0x40, 0x3f, 0x9b, 0x1a, 0xe0, 0x12, 0x48, 0x90, 0xf0, 0x6a, 0x43, 0xfe, 0xdc, 0xdd, 0xb3, 0x18, 0x30, 0xf6, 0x66, 0x9a, 0xf2, 0x92, 0x89, 0x5c, 0xb0, }; static const unsigned char ecdsa_secp256r1_sha256_7045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7045_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7045 = { .name = "ecdsa_secp256r1_sha256_7045", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7045_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7045_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7045_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 326 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7046 for ECDSA, tcId is 327 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7046_pubkey[] = { 0x84, 0xdb, 0x64, 0x58, 0x68, 0xea, 0xb3, 0x5e, 0x3a, 0x9f, 0xd8, 0x0e, 0x05, 0x6e, 0x2e, 0x85, 0x54, 0x35, 0xe3, 0xa6, 0xb6, 0x8d, 0x75, 0xa5, 0x0a, 0x85, 0x46, 0x25, 0xfe, 0x0d, 0x7f, 0x35, 0x6d, 0x25, 0x89, 0xac, 0x65, 0x5e, 0xdc, 0x9a, 0x11, 0xef, 0x3e, 0x07, 0x5e, 0xdd, 0xda, 0x9a, 0xbf, 0x92, 0xe7, 0x21, 0x71, 0x57, 0x0e, 0xf7, 0xbf, 0x43, 0xa2, 0xee, 0x39, 0x33, 0x8c, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha256_7046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7046_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7046 = { .name = "ecdsa_secp256r1_sha256_7046", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7046_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7046_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7046_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 327 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7047 for ECDSA, tcId is 328 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7047_pubkey[] = { 0x91, 0xb9, 0xe4, 0x7c, 0x56, 0x27, 0x86, 0x62, 0xd7, 0x5c, 0x09, 0x83, 0xb2, 0x2c, 0xa8, 0xea, 0x6a, 0xa5, 0x05, 0x9b, 0x7a, 0x2f, 0xf7, 0x63, 0x7e, 0xb2, 0x97, 0x5e, 0x38, 0x6a, 0xd6, 0x63, 0x49, 0xaa, 0x8f, 0xf2, 0x83, 0xd0, 0xf7, 0x7c, 0x18, 0xd6, 0xd1, 0x1d, 0xc0, 0x62, 0x16, 0x5f, 0xd1, 0x3c, 0x3c, 0x03, 0x10, 0x67, 0x9c, 0x14, 0x08, 0x30, 0x2a, 0x16, 0x85, 0x4e, 0xcf, 0xbd, }; static const unsigned char ecdsa_secp256r1_sha256_7047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7047_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7047 = { .name = "ecdsa_secp256r1_sha256_7047", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7047_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7047_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7047_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 328 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7048 for ECDSA, tcId is 329 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7048_pubkey[] = { 0xf3, 0xec, 0x2f, 0x13, 0xca, 0xf0, 0x4d, 0x01, 0x92, 0xb4, 0x7f, 0xb4, 0xc5, 0x31, 0x1f, 0xb6, 0xd4, 0xdc, 0x6b, 0x0a, 0x9e, 0x80, 0x2e, 0x53, 0x27, 0xf7, 0xec, 0x5e, 0xe8, 0xe4, 0x83, 0x4d, 0xf9, 0x7e, 0x3e, 0x46, 0x8b, 0x7d, 0x0d, 0xb8, 0x67, 0xd6, 0xec, 0xfe, 0x81, 0xe2, 0xb0, 0xf9, 0x53, 0x1d, 0xf8, 0x7e, 0xfd, 0xb4, 0x7c, 0x13, 0x38, 0xac, 0x32, 0x1f, 0xef, 0xe5, 0xa4, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_7048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7048_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7048 = { .name = "ecdsa_secp256r1_sha256_7048", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7048_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7048_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7048_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 329 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7049 for ECDSA, tcId is 330 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7049_pubkey[] = { 0xd9, 0x2b, 0x20, 0x0a, 0xef, 0xca, 0xb6, 0xac, 0x7d, 0xaf, 0xd9, 0xac, 0xaf, 0x2f, 0xa1, 0x0b, 0x31, 0x80, 0x23, 0x5b, 0x8f, 0x46, 0xb4, 0x50, 0x3e, 0x46, 0x93, 0xc6, 0x70, 0xfc, 0xcc, 0x88, 0x5e, 0xf2, 0xf3, 0xae, 0xbf, 0x5b, 0x31, 0x74, 0x75, 0x33, 0x62, 0x56, 0x76, 0x8f, 0x7c, 0x19, 0xef, 0xb7, 0x35, 0x2d, 0x27, 0xe4, 0xcc, 0xca, 0xdc, 0x85, 0xb6, 0xb8, 0xab, 0x92, 0x2c, 0x72, }; static const unsigned char ecdsa_secp256r1_sha256_7049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7049_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7049 = { .name = "ecdsa_secp256r1_sha256_7049", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7049_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7049_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7049_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 330 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7050 for ECDSA, tcId is 331 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7050_pubkey[] = { 0x0a, 0x88, 0x36, 0x1e, 0xb9, 0x2e, 0xcc, 0xa2, 0x62, 0x5b, 0x38, 0xe5, 0xf9, 0x8b, 0xba, 0xbb, 0x96, 0xbf, 0x17, 0x9b, 0x3d, 0x76, 0xfc, 0x48, 0x14, 0x0a, 0x3b, 0xcd, 0x88, 0x15, 0x23, 0xcd, 0xe6, 0xbd, 0xf5, 0x60, 0x33, 0xf8, 0x4a, 0x50, 0x54, 0x03, 0x55, 0x97, 0x37, 0x5d, 0x90, 0x86, 0x6a, 0xa2, 0xc9, 0x6b, 0x86, 0xa4, 0x1c, 0xcf, 0x6e, 0xde, 0xbf, 0x47, 0x29, 0x8a, 0xd4, 0x89, }; static const unsigned char ecdsa_secp256r1_sha256_7050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7050_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7050 = { .name = "ecdsa_secp256r1_sha256_7050", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7050_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7050_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7050_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 331 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7051 for ECDSA, tcId is 332 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7051_pubkey[] = { 0xd0, 0xfb, 0x17, 0xcc, 0xd8, 0xfa, 0xfe, 0x82, 0x7e, 0x0c, 0x1a, 0xfc, 0x5d, 0x8d, 0x80, 0x36, 0x6e, 0x2b, 0x20, 0xe7, 0xf1, 0x4a, 0x56, 0x3a, 0x2b, 0xa5, 0x04, 0x69, 0xd8, 0x43, 0x75, 0xe8, 0x68, 0x61, 0x25, 0x69, 0xd3, 0x9e, 0x2b, 0xb9, 0xf5, 0x54, 0x35, 0x55, 0x64, 0x64, 0x6d, 0xe9, 0x9a, 0xc6, 0x02, 0xcc, 0x63, 0x49, 0xcf, 0x8c, 0x1e, 0x23, 0x6a, 0x7d, 0xe7, 0x63, 0x7d, 0x93, }; static const unsigned char ecdsa_secp256r1_sha256_7051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7051_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7051 = { .name = "ecdsa_secp256r1_sha256_7051", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7051_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7051_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7051_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 332 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7052 for ECDSA, tcId is 333 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7052_pubkey[] = { 0x83, 0x6f, 0x33, 0xbb, 0xc1, 0xdc, 0x0d, 0x3d, 0x3a, 0xbb, 0xce, 0xf0, 0xd9, 0x1f, 0x11, 0xe2, 0xac, 0x41, 0x81, 0x07, 0x6c, 0x9a, 0xf0, 0xa2, 0x2b, 0x1e, 0x43, 0x09, 0xd3, 0xed, 0xb2, 0x76, 0x9a, 0xb4, 0x43, 0xff, 0x6f, 0x90, 0x1e, 0x30, 0xc7, 0x73, 0x86, 0x75, 0x82, 0x99, 0x7c, 0x2b, 0xec, 0x2b, 0x0c, 0xb8, 0x12, 0x0d, 0x76, 0x02, 0x36, 0xf3, 0xa9, 0x5b, 0xbe, 0x88, 0x1f, 0x75, }; static const unsigned char ecdsa_secp256r1_sha256_7052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7052_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7052 = { .name = "ecdsa_secp256r1_sha256_7052", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7052_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7052_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7052_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7053 for ECDSA, tcId is 334 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7053_pubkey[] = { 0x92, 0xf9, 0x9f, 0xbe, 0x97, 0x3e, 0xd4, 0xa2, 0x99, 0x71, 0x9b, 0xae, 0xe4, 0xb4, 0x32, 0x74, 0x12, 0x37, 0x03, 0x4d, 0xec, 0x8d, 0x72, 0xba, 0x51, 0x03, 0xcb, 0x33, 0xe5, 0x5f, 0xee, 0xb8, 0x03, 0x3d, 0xd0, 0xe9, 0x11, 0x34, 0xc7, 0x34, 0x17, 0x48, 0x89, 0xf3, 0xeb, 0xcf, 0x1b, 0x7a, 0x1a, 0xc0, 0x57, 0x67, 0x28, 0x92, 0x80, 0xee, 0x7a, 0x79, 0x4c, 0xeb, 0xd6, 0xe6, 0x96, 0x97, }; static const unsigned char ecdsa_secp256r1_sha256_7053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7053_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7053 = { .name = "ecdsa_secp256r1_sha256_7053", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7053_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7053_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7053_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 334 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7054 for ECDSA, tcId is 335 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7054_pubkey[] = { 0xd3, 0x5b, 0xa5, 0x8d, 0xa3, 0x01, 0x97, 0xd3, 0x78, 0xe6, 0x18, 0xec, 0x0f, 0xa7, 0xe2, 0xe2, 0xd1, 0x2c, 0xff, 0xd7, 0x3e, 0xbb, 0xb2, 0x04, 0x9d, 0x13, 0x0b, 0xba, 0x43, 0x4a, 0xf0, 0x9e, 0xff, 0x83, 0x98, 0x6e, 0x68, 0x75, 0xe4, 0x1e, 0xa4, 0x32, 0xb7, 0x58, 0x5a, 0x49, 0xb3, 0xa6, 0xc7, 0x7c, 0xbb, 0x3c, 0x47, 0x91, 0x9f, 0x8e, 0x82, 0x87, 0x4c, 0x79, 0x46, 0x35, 0xc1, 0xd2, }; static const unsigned char ecdsa_secp256r1_sha256_7054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7054_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7054 = { .name = "ecdsa_secp256r1_sha256_7054", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7054_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7054_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7054_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 335 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7055 for ECDSA, tcId is 336 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7055_pubkey[] = { 0x86, 0x51, 0xce, 0x49, 0x0f, 0x1b, 0x46, 0xd7, 0x3f, 0x3f, 0xf4, 0x75, 0x14, 0x9b, 0xe2, 0x91, 0x36, 0x69, 0x73, 0x34, 0xa5, 0x19, 0xd7, 0xdd, 0xab, 0x07, 0x25, 0xc8, 0xd0, 0x79, 0x32, 0x24, 0xe1, 0x1c, 0x65, 0xbd, 0x8c, 0xa9, 0x2d, 0xc8, 0xbc, 0x9a, 0xe8, 0x29, 0x11, 0xf0, 0xb5, 0x27, 0x51, 0xce, 0x21, 0xdd, 0x90, 0x03, 0xae, 0x60, 0x90, 0x0b, 0xd8, 0x25, 0xf5, 0x90, 0xcc, 0x28, }; static const unsigned char ecdsa_secp256r1_sha256_7055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7055_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7055 = { .name = "ecdsa_secp256r1_sha256_7055", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7055_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7055_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7055_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 336 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7056 for ECDSA, tcId is 337 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7056_pubkey[] = { 0x6d, 0x8e, 0x1b, 0x12, 0xc8, 0x31, 0xa0, 0xda, 0x87, 0x95, 0x65, 0x0f, 0xf9, 0x5f, 0x10, 0x1e, 0xd9, 0x21, 0xd9, 0xe2, 0xf7, 0x2b, 0x15, 0xb1, 0xcd, 0xac, 0xa9, 0x82, 0x6b, 0x9c, 0xfc, 0x6d, 0xef, 0x6d, 0x63, 0xe2, 0xbc, 0x5c, 0x08, 0x95, 0x70, 0x39, 0x4a, 0x4b, 0xc9, 0xf8, 0x92, 0xd5, 0xe6, 0xc7, 0xa6, 0xa6, 0x37, 0xb2, 0x04, 0x69, 0xa5, 0x8c, 0x10, 0x6a, 0xd4, 0x86, 0xbf, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_7056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7056_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7056 = { .name = "ecdsa_secp256r1_sha256_7056", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7056_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7056_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7056_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 337 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7057 for ECDSA, tcId is 338 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7057_pubkey[] = { 0x0a, 0xe5, 0x80, 0xba, 0xe9, 0x33, 0xb4, 0xef, 0x29, 0x97, 0xcb, 0xdb, 0xb0, 0x92, 0x23, 0x28, 0xca, 0x9a, 0x41, 0x0f, 0x62, 0x7a, 0x0f, 0x7d, 0xff, 0x24, 0xcb, 0x4d, 0x92, 0x0e, 0x15, 0x42, 0x89, 0x11, 0xe7, 0xf8, 0xcc, 0x36, 0x5a, 0x8a, 0x88, 0xeb, 0x81, 0x42, 0x1a, 0x36, 0x1c, 0xcc, 0x2b, 0x99, 0xe3, 0x09, 0xd8, 0xdc, 0xd9, 0xa9, 0x8b, 0xa8, 0x3c, 0x39, 0x49, 0xd8, 0x93, 0xe3, }; static const unsigned char ecdsa_secp256r1_sha256_7057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7057_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7057 = { .name = "ecdsa_secp256r1_sha256_7057", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7057_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7057_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7057_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 338 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7058 for ECDSA, tcId is 339 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7058_pubkey[] = { 0x5b, 0x81, 0x2f, 0xd5, 0x21, 0xaa, 0xfa, 0x69, 0x83, 0x5a, 0x84, 0x9c, 0xce, 0x6f, 0xbd, 0xeb, 0x69, 0x83, 0xb4, 0x42, 0xd2, 0x44, 0x4f, 0xe7, 0x0e, 0x13, 0x4c, 0x02, 0x7f, 0xc4, 0x69, 0x63, 0x83, 0x8a, 0x40, 0xf2, 0xa3, 0x60, 0x92, 0xe9, 0x00, 0x4e, 0x92, 0xd8, 0xd9, 0x40, 0xcf, 0x56, 0x38, 0x55, 0x0c, 0xe6, 0x72, 0xce, 0x8b, 0x8d, 0x4e, 0x15, 0xeb, 0xa5, 0x49, 0x92, 0x49, 0xe9, }; static const unsigned char ecdsa_secp256r1_sha256_7058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7058_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xbb, 0x72, 0x66, 0x60, 0x23, 0x57, 0x93, 0xaa, 0x99, 0x57, 0xa6, 0x1e, 0x76, 0xe0, 0x0c, 0x2c, 0x43, 0x51, 0x09, 0xcf, 0x9a, 0x15, 0xdd, 0x62, 0x4d, 0x53, 0xf4, 0x30, 0x10, 0x47, 0x85, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7058 = { .name = "ecdsa_secp256r1_sha256_7058", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7058_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7058_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 339 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7059 for ECDSA, tcId is 340 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7059_pubkey[] = { 0x5b, 0x81, 0x2f, 0xd5, 0x21, 0xaa, 0xfa, 0x69, 0x83, 0x5a, 0x84, 0x9c, 0xce, 0x6f, 0xbd, 0xeb, 0x69, 0x83, 0xb4, 0x42, 0xd2, 0x44, 0x4f, 0xe7, 0x0e, 0x13, 0x4c, 0x02, 0x7f, 0xc4, 0x69, 0x63, 0x7c, 0x75, 0xbf, 0x0c, 0x5c, 0x9f, 0x6d, 0x17, 0xff, 0xb1, 0x6d, 0x27, 0x26, 0xbf, 0x30, 0xa9, 0xc7, 0xaa, 0xf3, 0x1a, 0x8d, 0x31, 0x74, 0x72, 0xb1, 0xea, 0x14, 0x5a, 0xb6, 0x6d, 0xb6, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_7059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7059_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xbb, 0x72, 0x66, 0x60, 0x23, 0x57, 0x93, 0xaa, 0x99, 0x57, 0xa6, 0x1e, 0x76, 0xe0, 0x0c, 0x2c, 0x43, 0x51, 0x09, 0xcf, 0x9a, 0x15, 0xdd, 0x62, 0x4d, 0x53, 0xf4, 0x30, 0x10, 0x47, 0x85, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7059 = { .name = "ecdsa_secp256r1_sha256_7059", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7059_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7059_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 340 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7060 for ECDSA, tcId is 341 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7060_pubkey[] = { 0x6a, 0xdd, 0xa8, 0x2b, 0x90, 0x26, 0x1b, 0x0f, 0x31, 0x9f, 0xaa, 0x0d, 0x87, 0x86, 0x65, 0xa6, 0xb6, 0xda, 0x49, 0x7f, 0x09, 0xc9, 0x03, 0x17, 0x62, 0x22, 0xc3, 0x4a, 0xcf, 0xef, 0x72, 0xa6, 0x47, 0xe6, 0xf5, 0x0d, 0xcc, 0x40, 0xad, 0x5d, 0x9b, 0x59, 0xf7, 0x60, 0x2b, 0xb2, 0x22, 0xfa, 0xd7, 0x1a, 0x41, 0xbf, 0x5e, 0x1f, 0x9d, 0xf4, 0x95, 0x9a, 0x36, 0x4c, 0x62, 0xe4, 0x88, 0xd9, }; static const unsigned char ecdsa_secp256r1_sha256_7060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7060_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7060 = { .name = "ecdsa_secp256r1_sha256_7060", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7060_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7060_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 341 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7061 for ECDSA, tcId is 342 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7061_pubkey[] = { 0x2f, 0xca, 0x0d, 0x0a, 0x47, 0x91, 0x4d, 0xe7, 0x7e, 0xd5, 0x6e, 0x7e, 0xcc, 0xc3, 0x27, 0x6a, 0x60, 0x11, 0x20, 0xc6, 0xdf, 0x00, 0x69, 0xc8, 0x25, 0xc8, 0xf6, 0xa0, 0x1c, 0x9f, 0x38, 0x20, 0x65, 0xf3, 0x45, 0x0a, 0x1d, 0x17, 0xc6, 0xb2, 0x49, 0x89, 0xa3, 0x9b, 0xeb, 0x1c, 0x7d, 0xec, 0xfc, 0xa8, 0x38, 0x4f, 0xbd, 0xc2, 0x94, 0x41, 0x8e, 0x5d, 0x80, 0x7b, 0x3c, 0x6e, 0xd7, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_7061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7061_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7061 = { .name = "ecdsa_secp256r1_sha256_7061", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7061_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7061_sig, .siglen = 65, .result = -1, .comment = "point with x-coordinate 0, tcId is 342 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7062 for ECDSA, tcId is 343 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7062_pubkey[] = { 0xdd, 0x86, 0xd3, 0xb5, 0xf4, 0xa1, 0x3e, 0x85, 0x11, 0x08, 0x3b, 0x78, 0x00, 0x20, 0x81, 0xc5, 0x3f, 0xf4, 0x67, 0xf1, 0x1e, 0xbd, 0x98, 0xa5, 0x1a, 0x63, 0x3d, 0xb7, 0x66, 0x65, 0xd2, 0x50, 0x45, 0xd5, 0xc8, 0x20, 0x0c, 0x89, 0xf2, 0xfa, 0x10, 0xd8, 0x49, 0x34, 0x92, 0x26, 0xd2, 0x1d, 0x8d, 0xfa, 0xed, 0x6f, 0xf8, 0xd5, 0xcb, 0x3e, 0x1b, 0x7e, 0x17, 0x47, 0x4e, 0xbc, 0x18, 0xf7, }; static const unsigned char ecdsa_secp256r1_sha256_7062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7062_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7062 = { .name = "ecdsa_secp256r1_sha256_7062", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7062_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7062_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 343 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7063 for ECDSA, tcId is 344 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7063_pubkey[] = { 0x4f, 0xea, 0x55, 0xb3, 0x2c, 0xb3, 0x2a, 0xca, 0x0c, 0x12, 0xc4, 0xcd, 0x0a, 0xbf, 0xb4, 0xe6, 0x4b, 0x0f, 0x5a, 0x51, 0x6e, 0x57, 0x8c, 0x01, 0x65, 0x91, 0xa9, 0x3f, 0x5a, 0x0f, 0xbc, 0xc5, 0xd7, 0xd3, 0xfd, 0x10, 0xb2, 0xbe, 0x66, 0x8c, 0x54, 0x7b, 0x21, 0x2f, 0x6b, 0xb1, 0x4c, 0x88, 0xf0, 0xfe, 0xcd, 0x38, 0xa8, 0xa4, 0xb2, 0xc7, 0x85, 0xed, 0x3b, 0xe6, 0x2c, 0xe4, 0xb2, 0x80, }; static const unsigned char ecdsa_secp256r1_sha256_7063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7063_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7063 = { .name = "ecdsa_secp256r1_sha256_7063", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7063_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7063_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 344 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7064 for ECDSA, tcId is 345 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7064_pubkey[] = { 0xc6, 0xa7, 0x71, 0x52, 0x70, 0x24, 0x22, 0x77, 0x92, 0x17, 0x0a, 0x6f, 0x8e, 0xee, 0x73, 0x5b, 0xf3, 0x2b, 0x7f, 0x98, 0xaf, 0x66, 0x9e, 0xad, 0x29, 0x98, 0x02, 0xe3, 0x2d, 0x7c, 0x31, 0x07, 0xbc, 0x3b, 0x4b, 0x5e, 0x65, 0xab, 0x88, 0x7b, 0xbd, 0x34, 0x35, 0x72, 0xb3, 0xe5, 0x61, 0x92, 0x61, 0xfe, 0x3a, 0x07, 0x3e, 0x2f, 0xfd, 0x78, 0x41, 0x2f, 0x72, 0x68, 0x67, 0xdb, 0x58, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha256_7064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7064_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7064 = { .name = "ecdsa_secp256r1_sha256_7064", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7064_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7064_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 345 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7065 for ECDSA, tcId is 346 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7065_pubkey[] = { 0x85, 0x1c, 0x2b, 0xba, 0xd0, 0x8e, 0x54, 0xec, 0x7a, 0x9a, 0xf9, 0x9f, 0x49, 0xf0, 0x36, 0x44, 0xd6, 0xec, 0x6d, 0x59, 0xb2, 0x07, 0xfe, 0xc9, 0x8d, 0xe8, 0x5a, 0x7d, 0x15, 0xb9, 0x56, 0xef, 0xce, 0xe9, 0x96, 0x02, 0x83, 0x04, 0x50, 0x75, 0x68, 0x4b, 0x41, 0x0b, 0xe8, 0xd0, 0xf7, 0x49, 0x4b, 0x91, 0xaa, 0x23, 0x79, 0xf6, 0x07, 0x27, 0x31, 0x9f, 0x10, 0xdd, 0xeb, 0x0f, 0xe9, 0xd6, }; static const unsigned char ecdsa_secp256r1_sha256_7065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7065_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7065 = { .name = "ecdsa_secp256r1_sha256_7065", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7065_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7065_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 346 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7066 for ECDSA, tcId is 347 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7066_pubkey[] = { 0xf6, 0x41, 0x7c, 0x8a, 0x67, 0x05, 0x84, 0xe3, 0x88, 0x67, 0x69, 0x49, 0xe5, 0x3d, 0xa7, 0xfc, 0x55, 0x91, 0x1f, 0xf6, 0x83, 0x18, 0xd1, 0xbf, 0x30, 0x61, 0x20, 0x5a, 0xcb, 0x19, 0xc4, 0x8f, 0x8f, 0x2b, 0x74, 0x3d, 0xf3, 0x4a, 0xd0, 0xf7, 0x26, 0x74, 0xac, 0xb7, 0x50, 0x59, 0x29, 0x78, 0x47, 0x79, 0xcd, 0x9a, 0xc9, 0x16, 0xc3, 0x66, 0x9e, 0xad, 0x43, 0x02, 0x6a, 0xb6, 0xd4, 0x3f, }; static const unsigned char ecdsa_secp256r1_sha256_7066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7066_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7066 = { .name = "ecdsa_secp256r1_sha256_7066", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7066_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7066_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 347 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7067 for ECDSA, tcId is 348 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7067_pubkey[] = { 0x50, 0x14, 0x21, 0x27, 0x7b, 0xe4, 0x5a, 0x5e, 0xef, 0xec, 0x6c, 0x63, 0x99, 0x30, 0xd6, 0x36, 0x03, 0x25, 0x65, 0xaf, 0x42, 0x0c, 0xf3, 0x37, 0x3f, 0x55, 0x7f, 0xaa, 0x7f, 0x8a, 0x06, 0x43, 0x86, 0x73, 0xd6, 0xcb, 0x60, 0x76, 0xe1, 0xcf, 0xcd, 0xc7, 0xdf, 0xe7, 0x38, 0x4c, 0x8e, 0x5c, 0xac, 0x08, 0xd7, 0x45, 0x01, 0xf2, 0xae, 0x6e, 0x89, 0xca, 0xd1, 0x95, 0xd0, 0xaa, 0x13, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_7067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7067_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7067 = { .name = "ecdsa_secp256r1_sha256_7067", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7067_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7067_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 348 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7068 for ECDSA, tcId is 349 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7068_pubkey[] = { 0x0d, 0x93, 0x5b, 0xf9, 0xff, 0xc1, 0x15, 0xa5, 0x27, 0x73, 0x5f, 0x72, 0x9c, 0xa8, 0xa4, 0xca, 0x23, 0xee, 0x01, 0xa4, 0x89, 0x4a, 0xdf, 0x0e, 0x34, 0x15, 0xac, 0x84, 0xe8, 0x08, 0xbb, 0x34, 0x31, 0x95, 0xa3, 0x76, 0x2f, 0xea, 0x29, 0xed, 0x38, 0x91, 0x2b, 0xd9, 0xea, 0x6c, 0x4f, 0xde, 0x70, 0xc3, 0x05, 0x08, 0x93, 0xa4, 0x37, 0x58, 0x50, 0xce, 0x61, 0xd8, 0x2e, 0xba, 0x33, 0xc5, }; static const unsigned char ecdsa_secp256r1_sha256_7068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7068_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7068 = { .name = "ecdsa_secp256r1_sha256_7068", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7068_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7068_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 349 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7069 for ECDSA, tcId is 350 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7069_pubkey[] = { 0x5e, 0x59, 0xf5, 0x07, 0x08, 0x64, 0x6b, 0xe8, 0xa5, 0x89, 0x35, 0x50, 0x14, 0x30, 0x8e, 0x60, 0xb6, 0x68, 0xfb, 0x67, 0x01, 0x96, 0x20, 0x6c, 0x41, 0xe7, 0x48, 0xe6, 0x4e, 0x4d, 0xca, 0x21, 0x5d, 0xe3, 0x7f, 0xee, 0x5c, 0x97, 0xbc, 0xaf, 0x71, 0x44, 0xd5, 0xb4, 0x59, 0x98, 0x2f, 0x52, 0xee, 0xea, 0xfb, 0xdf, 0x03, 0xaa, 0xcb, 0xaf, 0xef, 0x38, 0xe2, 0x13, 0x62, 0x4a, 0x01, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_7069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7069_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7069 = { .name = "ecdsa_secp256r1_sha256_7069", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7069_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7069_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 350 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7070 for ECDSA, tcId is 351 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7070_pubkey[] = { 0x16, 0x9f, 0xb7, 0x97, 0x32, 0x58, 0x43, 0xfa, 0xff, 0x2f, 0x7a, 0x5b, 0x54, 0x45, 0xda, 0x9e, 0x2f, 0xd6, 0x22, 0x6f, 0x7e, 0xf9, 0x0e, 0xf0, 0xbf, 0xe9, 0x24, 0x10, 0x4b, 0x02, 0xdb, 0x8e, 0x7b, 0xbb, 0x8d, 0xe6, 0x62, 0xc7, 0xb9, 0xb1, 0xcf, 0x9b, 0x22, 0xf7, 0xa2, 0xe5, 0x82, 0xbd, 0x46, 0xd5, 0x81, 0xd6, 0x88, 0x78, 0xef, 0xb2, 0xb8, 0x61, 0xb1, 0x31, 0xd8, 0xa1, 0xd6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha256_7070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7070_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7070 = { .name = "ecdsa_secp256r1_sha256_7070", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7070_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7070_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 351 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7071 for ECDSA, tcId is 352 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7071_pubkey[] = { 0x27, 0x1c, 0xd8, 0x9c, 0x00, 0x01, 0x43, 0x09, 0x6b, 0x62, 0xd4, 0xe9, 0xe4, 0xca, 0x88, 0x5a, 0xef, 0x2f, 0x70, 0x23, 0xd1, 0x8a, 0xff, 0xda, 0xf8, 0xb7, 0xb5, 0x48, 0x98, 0x14, 0x87, 0x54, 0x0a, 0x1c, 0x6e, 0x95, 0x4e, 0x32, 0x10, 0x84, 0x35, 0xb5, 0x5f, 0xa3, 0x85, 0xb0, 0xf7, 0x64, 0x81, 0xa6, 0x09, 0xb9, 0x14, 0x9c, 0xcb, 0x4b, 0x02, 0xb2, 0xca, 0x47, 0xfe, 0x8e, 0x4d, 0xa5, }; static const unsigned char ecdsa_secp256r1_sha256_7071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7071_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7071 = { .name = "ecdsa_secp256r1_sha256_7071", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7071_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7071_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 352 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7072 for ECDSA, tcId is 353 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7072_pubkey[] = { 0x3d, 0x0b, 0xc7, 0xed, 0x8f, 0x09, 0xd2, 0xcb, 0x7d, 0xdb, 0x46, 0xeb, 0xc1, 0xed, 0x79, 0x9a, 0xb1, 0x56, 0x3a, 0x9a, 0xb8, 0x4b, 0xf5, 0x24, 0x58, 0x7a, 0x22, 0x0a, 0xfe, 0x49, 0x9c, 0x12, 0xe2, 0x2d, 0xc3, 0xb3, 0xc1, 0x03, 0x82, 0x4a, 0x4f, 0x37, 0x8d, 0x96, 0xad, 0xb0, 0xa4, 0x08, 0xab, 0xf1, 0x9c, 0xe7, 0xd6, 0x8a, 0xa6, 0x24, 0x4f, 0x78, 0xcb, 0x21, 0x6f, 0xa3, 0xf8, 0xdf, }; static const unsigned char ecdsa_secp256r1_sha256_7072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7072_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7072 = { .name = "ecdsa_secp256r1_sha256_7072", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7072_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7072_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 353 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7073 for ECDSA, tcId is 354 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7073_pubkey[] = { 0xa6, 0xc8, 0x85, 0xad, 0xe1, 0xa4, 0xc5, 0x66, 0xf9, 0xbb, 0x01, 0x0d, 0x06, 0x69, 0x74, 0xab, 0xb2, 0x81, 0x79, 0x7f, 0xa7, 0x01, 0x28, 0x8c, 0x72, 0x1b, 0xcb, 0xd2, 0x36, 0x63, 0xa9, 0xb7, 0x2e, 0x42, 0x4b, 0x69, 0x09, 0x57, 0x16, 0x8d, 0x19, 0x3a, 0x60, 0x96, 0xfc, 0x77, 0xa2, 0xb0, 0x04, 0xa9, 0xc7, 0xd4, 0x67, 0xe0, 0x07, 0xe1, 0xf2, 0x05, 0x84, 0x58, 0xf9, 0x8a, 0xf3, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_7073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7073_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7073 = { .name = "ecdsa_secp256r1_sha256_7073", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7073_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7073_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 354 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7074 for ECDSA, tcId is 355 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7074_pubkey[] = { 0x8d, 0x3c, 0x2c, 0x2c, 0x3b, 0x76, 0x5b, 0xa8, 0x28, 0x9e, 0x6a, 0xc3, 0x81, 0x25, 0x72, 0xa2, 0x5b, 0xf7, 0x5d, 0xf6, 0x2d, 0x87, 0xab, 0x73, 0x30, 0xc3, 0xbd, 0xba, 0xd9, 0xeb, 0xfa, 0x5c, 0x4c, 0x68, 0x45, 0x44, 0x2d, 0x66, 0x93, 0x5b, 0x23, 0x85, 0x78, 0xd4, 0x3a, 0xec, 0x54, 0xf7, 0xca, 0xa1, 0x62, 0x1d, 0x1a, 0xf2, 0x41, 0xd4, 0x63, 0x2e, 0x0b, 0x78, 0x0c, 0x42, 0x3f, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_7074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7074_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7074 = { .name = "ecdsa_secp256r1_sha256_7074", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7074_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7074_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 355 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7075 for ECDSA, tcId is 356 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7075_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_7075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7075_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7075 = { .name = "ecdsa_secp256r1_sha256_7075", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7075_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7075_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 356 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7076 for ECDSA, tcId is 357 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7076_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_7076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7076_sig[] = { 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7076 = { .name = "ecdsa_secp256r1_sha256_7076", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7076_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7076_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 357 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7077 for ECDSA, tcId is 358 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7077_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_7077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7077_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7077 = { .name = "ecdsa_secp256r1_sha256_7077", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7077_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7077_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 358 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7078 for ECDSA, tcId is 359 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7078_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_7078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7078_sig[] = { 0x44, 0xa5, 0xad, 0x0a, 0xd0, 0x63, 0x6d, 0x9f, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1c, 0xbc, 0xb0, 0x12, 0xea, 0x7b, 0xf0, 0x91, 0xfc, 0xec, 0x15, 0xb0, 0xc4, 0x32, 0x02, 0xd5, 0x2e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7078 = { .name = "ecdsa_secp256r1_sha256_7078", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7078_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7078_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 359 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7079 for ECDSA, tcId is 360 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7079_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_7079_sig[] = { 0xb2, 0x92, 0xa6, 0x19, 0x33, 0x9f, 0x6e, 0x56, 0x7a, 0x30, 0x5c, 0x95, 0x1c, 0x0d, 0xcb, 0xcc, 0x42, 0xd1, 0x6e, 0x47, 0xf2, 0x19, 0xf9, 0xe9, 0x8e, 0x76, 0xe0, 0x9d, 0x87, 0x70, 0xb3, 0x4a, 0x01, 0x77, 0xe6, 0x04, 0x92, 0xc5, 0xa8, 0x24, 0x2f, 0x76, 0xf0, 0x7b, 0xfe, 0x36, 0x61, 0xbd, 0xe5, 0x9e, 0xc2, 0xa1, 0x7c, 0xe5, 0xbd, 0x2d, 0xab, 0x2a, 0xbe, 0xbd, 0xf8, 0x9a, 0x62, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7079 = { .name = "ecdsa_secp256r1_sha256_7079", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7079_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha256_7079_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 360 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7080 for ECDSA, tcId is 361 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7080_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_7080_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha256_7080_sig[] = { 0x53, 0x0b, 0xd6, 0xb0, 0xc9, 0xaf, 0x2d, 0x69, 0xba, 0x89, 0x7f, 0x6b, 0x5f, 0xb5, 0x96, 0x95, 0xcf, 0xbf, 0x33, 0xaf, 0xe6, 0x6d, 0xba, 0xdc, 0xf5, 0xb8, 0xd2, 0xa2, 0xa6, 0x53, 0x8e, 0x23, 0xd8, 0x5e, 0x48, 0x9c, 0xb7, 0xa1, 0x61, 0xfd, 0x55, 0xed, 0xed, 0xce, 0xdb, 0xf4, 0xcc, 0x0c, 0x09, 0x87, 0xe3, 0xe3, 0xf0, 0xf2, 0x42, 0xca, 0xe9, 0x34, 0xc7, 0x2c, 0xaa, 0x3f, 0x43, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7080 = { .name = "ecdsa_secp256r1_sha256_7080", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7080_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha256_7080_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 361 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7081 for ECDSA, tcId is 362 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7081_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_7081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_7081_sig[] = { 0xa8, 0xea, 0x15, 0x0c, 0xb8, 0x01, 0x25, 0xd7, 0x38, 0x1c, 0x4c, 0x1f, 0x1d, 0xa8, 0xe9, 0xde, 0x27, 0x11, 0xf9, 0x91, 0x70, 0x60, 0x40, 0x6a, 0x73, 0xd7, 0x90, 0x45, 0x19, 0xe5, 0x13, 0x88, 0xf3, 0xab, 0x9f, 0xa6, 0x8b, 0xd4, 0x79, 0x73, 0xa7, 0x3b, 0x2d, 0x40, 0x48, 0x0c, 0x2b, 0xa5, 0x0c, 0x22, 0xc9, 0xd7, 0x6e, 0xc2, 0x17, 0x25, 0x72, 0x88, 0x29, 0x32, 0x85, 0x44, 0x9b, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7081 = { .name = "ecdsa_secp256r1_sha256_7081", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7081_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_7081_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 362 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7082 for ECDSA, tcId is 363 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7082_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_7082_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_7082_sig[] = { 0x98, 0x6e, 0x65, 0x93, 0x3e, 0xf2, 0xed, 0x4e, 0xe5, 0xaa, 0xda, 0x13, 0x9f, 0x52, 0xb7, 0x05, 0x39, 0xaa, 0xf6, 0x3f, 0x00, 0xa9, 0x1f, 0x29, 0xc6, 0x91, 0x78, 0x49, 0x0d, 0x57, 0xfb, 0x71, 0x3d, 0xaf, 0xed, 0xfb, 0x8d, 0xa6, 0x18, 0x9d, 0x37, 0x23, 0x08, 0xcb, 0xf1, 0x48, 0x9b, 0xbb, 0xda, 0xbf, 0x0c, 0x02, 0x17, 0xd1, 0xc0, 0xff, 0x0f, 0x70, 0x1a, 0xaa, 0x7a, 0x69, 0x4b, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7082 = { .name = "ecdsa_secp256r1_sha256_7082", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7082_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha256_7082_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 363 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7083 for ECDSA, tcId is 364 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7083_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_7083_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7083_sig[] = { 0xd4, 0x34, 0xe2, 0x62, 0xa4, 0x9e, 0xab, 0x77, 0x81, 0xe3, 0x53, 0xa3, 0x56, 0x5e, 0x48, 0x25, 0x50, 0xdd, 0x0f, 0xd5, 0xde, 0xfa, 0x01, 0x3c, 0x7f, 0x29, 0x74, 0x5e, 0xff, 0x35, 0x69, 0xf1, 0x9b, 0x0c, 0x0a, 0x93, 0xf2, 0x67, 0xfb, 0x60, 0x52, 0xfd, 0x80, 0x77, 0xbe, 0x76, 0x9c, 0x2b, 0x98, 0x95, 0x31, 0x95, 0xd7, 0xbc, 0x10, 0xde, 0x84, 0x42, 0x18, 0x30, 0x5c, 0x6b, 0xa1, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7083 = { .name = "ecdsa_secp256r1_sha256_7083", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7083_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7083_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 364 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7084 for ECDSA, tcId is 365 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7084_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_7084_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7084_sig[] = { 0x0f, 0xe7, 0x74, 0x35, 0x5c, 0x04, 0xd0, 0x60, 0xf7, 0x6d, 0x79, 0xfd, 0x7a, 0x77, 0x2e, 0x42, 0x14, 0x63, 0x48, 0x92, 0x21, 0xbf, 0x0a, 0x33, 0xad, 0xd0, 0xbe, 0x9b, 0x19, 0x79, 0x11, 0x0b, 0x50, 0x0d, 0xcb, 0xa1, 0xc6, 0x9a, 0x8f, 0xbd, 0x43, 0xfa, 0x4f, 0x57, 0xf7, 0x43, 0xce, 0x12, 0x4c, 0xa8, 0xb9, 0x1a, 0x1f, 0x32, 0x5f, 0x3f, 0xac, 0x61, 0x81, 0x17, 0x5d, 0xf5, 0x57, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7084 = { .name = "ecdsa_secp256r1_sha256_7084", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7084_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7084_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 365 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7085 for ECDSA, tcId is 366 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7085_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_7085_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7085_sig[] = { 0xbb, 0x40, 0xbf, 0x21, 0x7b, 0xed, 0x3f, 0xb3, 0x95, 0x0c, 0x7d, 0x39, 0xf0, 0x3d, 0x36, 0xdc, 0x8e, 0x3b, 0x2c, 0xd7, 0x96, 0x93, 0xf1, 0x25, 0xbf, 0xd0, 0x65, 0x95, 0xee, 0x11, 0x35, 0xe3, 0x54, 0x1b, 0xf3, 0x53, 0x23, 0x51, 0xeb, 0xb0, 0x32, 0x71, 0x0b, 0xdb, 0x6a, 0x1b, 0xf1, 0xbf, 0xc8, 0x9a, 0x1e, 0x29, 0x1a, 0xc6, 0x92, 0xb3, 0xfa, 0x47, 0x80, 0x74, 0x5b, 0xb5, 0x56, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7085 = { .name = "ecdsa_secp256r1_sha256_7085", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7085_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7085_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 366 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7086 for ECDSA, tcId is 367 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7086_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_7086_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7086_sig[] = { 0x66, 0x4e, 0xb7, 0xee, 0x6d, 0xb8, 0x4a, 0x34, 0xdf, 0x3c, 0x86, 0xea, 0x31, 0x38, 0x9a, 0x54, 0x05, 0xba, 0xdd, 0x5c, 0xa9, 0x92, 0x31, 0xff, 0x55, 0x6d, 0x3e, 0x75, 0xa2, 0x33, 0xe7, 0x3a, 0x59, 0xf3, 0xc7, 0x52, 0xe5, 0x2e, 0xca, 0x46, 0x13, 0x76, 0x42, 0x49, 0x0a, 0x51, 0x56, 0x0c, 0xe0, 0xba, 0xdc, 0x67, 0x87, 0x54, 0xb8, 0xf7, 0x2e, 0x51, 0xa2, 0x90, 0x14, 0x26, 0xa1, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7086 = { .name = "ecdsa_secp256r1_sha256_7086", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7086_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7086_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 367 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7087 for ECDSA, tcId is 368 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7087_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_7087_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7087_sig[] = { 0x4c, 0xd0, 0x42, 0x9b, 0xba, 0xbd, 0x28, 0x27, 0x00, 0x9d, 0x6f, 0xcd, 0x84, 0x3d, 0x4c, 0xe3, 0x9c, 0x3e, 0x42, 0xe2, 0xd1, 0x63, 0x1f, 0xd0, 0x01, 0x98, 0x5a, 0x79, 0xd1, 0xfd, 0x8b, 0x43, 0x96, 0x38, 0xbf, 0x12, 0xdd, 0x68, 0x2f, 0x60, 0xbe, 0x7e, 0xf1, 0xd0, 0xe0, 0xd9, 0x8f, 0x08, 0xb7, 0xbc, 0xa7, 0x7a, 0x1a, 0x2b, 0x86, 0x9a, 0xe4, 0x66, 0x18, 0x9d, 0x2a, 0xcd, 0xab, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7087 = { .name = "ecdsa_secp256r1_sha256_7087", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7087_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7087_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 368 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7088 for ECDSA, tcId is 369 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7088_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_7088_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7088_sig[] = { 0xe5, 0x6c, 0x6e, 0xa2, 0xd1, 0xb0, 0x17, 0x09, 0x1c, 0x44, 0xd8, 0xb6, 0xcb, 0x62, 0xb9, 0xf4, 0x60, 0xe3, 0xce, 0x9a, 0xed, 0x5e, 0x5f, 0xd4, 0x1e, 0x8a, 0xdd, 0xed, 0x97, 0xc5, 0x6c, 0x04, 0xa3, 0x08, 0xec, 0x31, 0xf2, 0x81, 0xe9, 0x55, 0xbe, 0x20, 0xb4, 0x57, 0xe4, 0x63, 0x44, 0x0b, 0x4f, 0xcf, 0x2b, 0x80, 0x25, 0x80, 0x78, 0x20, 0x7f, 0xc1, 0x37, 0x81, 0x80, 0xf8, 0x9b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7088 = { .name = "ecdsa_secp256r1_sha256_7088", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7088_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7088_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 369 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7089 for ECDSA, tcId is 370 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7089_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_7089_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7089_sig[] = { 0x11, 0x58, 0xa0, 0x8d, 0x29, 0x15, 0x00, 0xb4, 0xca, 0xbe, 0xd3, 0x34, 0x6d, 0x89, 0x1e, 0xee, 0x57, 0xc1, 0x76, 0x35, 0x6a, 0x26, 0x24, 0xfb, 0x01, 0x1f, 0x8f, 0xbb, 0xf3, 0x46, 0x68, 0x30, 0x22, 0x8a, 0x8c, 0x48, 0x6a, 0x73, 0x60, 0x06, 0xe0, 0x82, 0x32, 0x5b, 0x85, 0x29, 0x0c, 0x5b, 0xc9, 0x1f, 0x37, 0x8b, 0x75, 0xd4, 0x87, 0xdd, 0xa4, 0x67, 0x98, 0xc1, 0x8f, 0x28, 0x55, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7089 = { .name = "ecdsa_secp256r1_sha256_7089", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7089_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7089_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 370 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7090 for ECDSA, tcId is 371 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7090_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_7090_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7090_sig[] = { 0xb1, 0xdb, 0x92, 0x89, 0x64, 0x9f, 0x59, 0x41, 0x0e, 0xa3, 0x6b, 0x0c, 0x0f, 0xc8, 0xd6, 0xaa, 0x26, 0x87, 0xb2, 0x91, 0x76, 0x93, 0x9d, 0xd2, 0x3e, 0x0d, 0xde, 0x56, 0xd3, 0x09, 0xfa, 0x9d, 0x3e, 0x15, 0x35, 0xe4, 0x28, 0x05, 0x59, 0x01, 0x5b, 0x0d, 0xbd, 0x98, 0x73, 0x66, 0xdc, 0xf4, 0x3a, 0x6d, 0x1a, 0xf5, 0xc2, 0x3c, 0x7d, 0x58, 0x4e, 0x1c, 0x3f, 0x48, 0xa1, 0x25, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7090 = { .name = "ecdsa_secp256r1_sha256_7090", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7090_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7090_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 371 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7091 for ECDSA, tcId is 372 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7091_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_7091_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7091_sig[] = { 0xb7, 0xb1, 0x6e, 0x76, 0x22, 0x86, 0xcb, 0x96, 0x44, 0x6a, 0xa8, 0xd4, 0xe6, 0xe7, 0x57, 0x8b, 0x0a, 0x34, 0x1a, 0x79, 0xf2, 0xdd, 0x1a, 0x22, 0x0a, 0xc6, 0xf0, 0xca, 0x4e, 0x24, 0xed, 0x86, 0xdd, 0xc6, 0x0a, 0x70, 0x0a, 0x13, 0x9b, 0x04, 0x66, 0x1c, 0x54, 0x7d, 0x07, 0xbb, 0xb0, 0x72, 0x17, 0x80, 0x14, 0x6d, 0xf7, 0x99, 0xcc, 0xf5, 0x5e, 0x55, 0x23, 0x4e, 0xcb, 0x8f, 0x12, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7091 = { .name = "ecdsa_secp256r1_sha256_7091", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7091_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7091_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 372 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7092 for ECDSA, tcId is 373 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7092_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_7092_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7092_sig[] = { 0xd8, 0x2a, 0x7c, 0x27, 0x17, 0x26, 0x11, 0x87, 0xc8, 0xe0, 0x0d, 0x8d, 0xf9, 0x63, 0xff, 0x35, 0xd7, 0x96, 0xed, 0xad, 0x36, 0xbc, 0x6e, 0x6b, 0xd1, 0xc9, 0x1c, 0x67, 0x0d, 0x91, 0x05, 0xb4, 0x3d, 0xca, 0xbd, 0xda, 0xf8, 0xfc, 0xaa, 0x61, 0xf4, 0x60, 0x3e, 0x7c, 0xba, 0xc0, 0xf3, 0xc0, 0x35, 0x1e, 0xcd, 0x59, 0x88, 0xef, 0xb2, 0x3f, 0x68, 0x0d, 0x07, 0xde, 0xbd, 0x13, 0x99, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7092 = { .name = "ecdsa_secp256r1_sha256_7092", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7092_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7092_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 373 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7093 for ECDSA, tcId is 374 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7093_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_7093_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7093_sig[] = { 0x5e, 0xb9, 0xc8, 0x84, 0x5d, 0xe6, 0x8e, 0xb1, 0x3d, 0x5b, 0xef, 0xe7, 0x19, 0xf4, 0x62, 0xd7, 0x77, 0x87, 0x80, 0x2b, 0xaf, 0xf3, 0x0c, 0xe9, 0x6a, 0x5c, 0xba, 0x06, 0x32, 0x54, 0xaf, 0x78, 0x2c, 0x02, 0x6a, 0xe9, 0xbe, 0x2e, 0x2a, 0x5e, 0x7c, 0xa0, 0xff, 0x9b, 0xbd, 0x92, 0xfb, 0x6e, 0x44, 0x97, 0x21, 0x86, 0x22, 0x8e, 0xe9, 0xa6, 0x2b, 0x87, 0xdd, 0xbe, 0x2e, 0xf6, 0x6f, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7093 = { .name = "ecdsa_secp256r1_sha256_7093", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7093_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7093_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 374 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7094 for ECDSA, tcId is 375 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7094_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_7094_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7094_sig[] = { 0x96, 0x84, 0x3d, 0xd0, 0x3c, 0x22, 0xab, 0xd2, 0xf3, 0xb7, 0x82, 0xb1, 0x70, 0x23, 0x9f, 0x90, 0xf2, 0x77, 0x92, 0x1b, 0xec, 0xc1, 0x17, 0xd0, 0x40, 0x4a, 0x8e, 0x4e, 0x36, 0x23, 0x0c, 0x28, 0xf2, 0xbe, 0x37, 0x8f, 0x52, 0x6f, 0x74, 0xa5, 0x43, 0xf6, 0x71, 0x65, 0x97, 0x6d, 0xe9, 0xed, 0x9a, 0x31, 0x21, 0x4e, 0xb4, 0xd7, 0xe6, 0xdb, 0x19, 0xe1, 0xed, 0xe1, 0x23, 0xdd, 0x99, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7094 = { .name = "ecdsa_secp256r1_sha256_7094", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7094_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7094_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 375 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7095 for ECDSA, tcId is 376 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7095_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_7095_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7095_sig[] = { 0x76, 0x64, 0x56, 0xdc, 0xe1, 0x85, 0x7c, 0x90, 0x6f, 0x99, 0x96, 0xaf, 0x72, 0x93, 0x39, 0x46, 0x4d, 0x27, 0xe9, 0xd9, 0x8e, 0xdc, 0x2d, 0x0e, 0x3b, 0x76, 0x02, 0x97, 0x06, 0x74, 0x21, 0xf6, 0x40, 0x23, 0x85, 0xec, 0xad, 0xae, 0x0d, 0x80, 0x81, 0xdc, 0xca, 0xf5, 0xd1, 0x90, 0x37, 0xec, 0x4e, 0x55, 0x37, 0x6e, 0xce, 0xd6, 0x99, 0xe9, 0x36, 0x46, 0xbf, 0xbb, 0xf1, 0x9d, 0x0b, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7095 = { .name = "ecdsa_secp256r1_sha256_7095", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7095_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7095_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 376 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7096 for ECDSA, tcId is 377 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7096_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_7096_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7096_sig[] = { 0xc6, 0x05, 0xc4, 0xb2, 0xed, 0xea, 0xb2, 0x04, 0x19, 0xe6, 0x51, 0x8a, 0x11, 0xb2, 0xdb, 0xc2, 0xb9, 0x7e, 0xd8, 0xb0, 0x7c, 0xce, 0xd0, 0xb1, 0x9c, 0x34, 0xf7, 0x77, 0xde, 0x7b, 0x9f, 0xd9, 0xed, 0xf0, 0xf6, 0x12, 0xc5, 0xf4, 0x6e, 0x03, 0xc7, 0x19, 0x64, 0x7b, 0xc8, 0xaf, 0x1b, 0x29, 0xb2, 0xcd, 0xe2, 0xed, 0xa7, 0x00, 0xfb, 0x1c, 0xff, 0x5e, 0x15, 0x9d, 0x47, 0x32, 0x6d, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7096 = { .name = "ecdsa_secp256r1_sha256_7096", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7096_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7096_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 377 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7097 for ECDSA, tcId is 378 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7097_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_7097_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7097_sig[] = { 0xd4, 0x8b, 0x68, 0xe6, 0xca, 0xbf, 0xe0, 0x3c, 0xf6, 0x14, 0x1c, 0x9a, 0xc5, 0x41, 0x41, 0xf2, 0x10, 0xe6, 0x44, 0x85, 0xd9, 0x92, 0x9a, 0xd7, 0xb7, 0x32, 0xbf, 0xe3, 0xb7, 0xeb, 0x8a, 0x84, 0xfe, 0xed, 0xae, 0x50, 0xc6, 0x1b, 0xd0, 0x0e, 0x19, 0xdc, 0x26, 0xf9, 0xb7, 0xe2, 0x26, 0x5e, 0x45, 0x08, 0xc3, 0x89, 0x10, 0x9a, 0xd2, 0xf2, 0x08, 0xf0, 0x77, 0x23, 0x15, 0xb6, 0xc9, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7097 = { .name = "ecdsa_secp256r1_sha256_7097", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7097_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7097_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 378 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7098 for ECDSA, tcId is 379 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7098_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_7098_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7098_sig[] = { 0xb7, 0xc8, 0x14, 0x57, 0xd4, 0xae, 0xb6, 0xaa, 0x65, 0x95, 0x70, 0x98, 0x56, 0x9f, 0x04, 0x79, 0x71, 0x0a, 0xd7, 0xf6, 0x59, 0x5d, 0x58, 0x74, 0xc3, 0x5a, 0x93, 0xd1, 0x2a, 0x5d, 0xd4, 0xc7, 0xb7, 0x96, 0x1a, 0x0b, 0x65, 0x28, 0x78, 0xc2, 0xd5, 0x68, 0x06, 0x9a, 0x43, 0x2c, 0xa1, 0x8a, 0x1a, 0x91, 0x99, 0xf2, 0xca, 0x57, 0x4d, 0xad, 0x4b, 0x9e, 0x3a, 0x05, 0xc0, 0xa1, 0xcd, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7098 = { .name = "ecdsa_secp256r1_sha256_7098", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7098_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7098_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 379 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7099 for ECDSA, tcId is 380 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7099_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_7099_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7099_sig[] = { 0x6b, 0x01, 0x33, 0x2d, 0xdb, 0x6e, 0xdf, 0xa9, 0xa3, 0x0a, 0x13, 0x21, 0xd5, 0x85, 0x8e, 0x1e, 0xe3, 0xcf, 0x97, 0xe2, 0x63, 0xe6, 0x69, 0xf8, 0xde, 0x5e, 0x96, 0x52, 0xe7, 0x6f, 0xf3, 0xf7, 0x59, 0x39, 0x54, 0x5f, 0xce, 0xd4, 0x57, 0x30, 0x9a, 0x6a, 0x04, 0xac, 0xe2, 0xbd, 0x0f, 0x70, 0x13, 0x9c, 0x8f, 0x7d, 0x86, 0xb0, 0x2c, 0xb1, 0xcc, 0x58, 0xf9, 0xe6, 0x9e, 0x96, 0xcd, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7099 = { .name = "ecdsa_secp256r1_sha256_7099", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7099_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7099_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 380 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7100 for ECDSA, tcId is 381 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7100_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_7100_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7100_sig[] = { 0xef, 0xdb, 0x88, 0x47, 0x20, 0xea, 0xea, 0xdc, 0x34, 0x9f, 0x9f, 0xc3, 0x56, 0xb6, 0xc0, 0x34, 0x41, 0x01, 0xcd, 0x2f, 0xd8, 0x43, 0x6b, 0x7d, 0x0e, 0x6a, 0x4f, 0xb9, 0x3f, 0x10, 0x63, 0x61, 0xf2, 0x4b, 0xee, 0x6a, 0xd5, 0xdc, 0x05, 0xf7, 0x61, 0x39, 0x75, 0x47, 0x3a, 0xad, 0xf3, 0xaa, 0xcb, 0xa9, 0xe7, 0x7d, 0xe7, 0xd6, 0x9b, 0x6c, 0xe4, 0x8c, 0xb6, 0x0d, 0x81, 0x13, 0x38, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7100 = { .name = "ecdsa_secp256r1_sha256_7100", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7100_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7100_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7100_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 381 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7101 for ECDSA, tcId is 382 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7101_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_7101_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7101_sig[] = { 0x31, 0x23, 0x04, 0x28, 0x40, 0x55, 0x60, 0xdc, 0xb8, 0x8f, 0xb5, 0xa6, 0x46, 0x83, 0x6a, 0xea, 0x9b, 0x23, 0xa2, 0x3d, 0xd9, 0x73, 0xdc, 0xbe, 0x80, 0x14, 0xc8, 0x7b, 0x8b, 0x20, 0xeb, 0x07, 0x0f, 0x93, 0x44, 0xd6, 0xe8, 0x12, 0xce, 0x16, 0x66, 0x46, 0x74, 0x76, 0x94, 0xa4, 0x1b, 0x0a, 0xaf, 0x97, 0x37, 0x4e, 0x19, 0xf3, 0xc5, 0xfb, 0x8b, 0xd7, 0xae, 0x3d, 0x9b, 0xd0, 0xbe, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7101 = { .name = "ecdsa_secp256r1_sha256_7101", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7101_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7101_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7101_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 382 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7102 for ECDSA, tcId is 383 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7102_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_7102_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7102_sig[] = { 0xca, 0xa7, 0x97, 0xda, 0x65, 0xb3, 0x20, 0xab, 0x0d, 0x5c, 0x47, 0x0c, 0xda, 0x0b, 0x36, 0xb2, 0x94, 0x35, 0x9c, 0x7d, 0xb9, 0x84, 0x1d, 0x67, 0x91, 0x74, 0xdb, 0x34, 0xc4, 0x85, 0x57, 0x43, 0xcf, 0x54, 0x3a, 0x62, 0xf2, 0x3e, 0x21, 0x27, 0x45, 0x39, 0x1a, 0xaf, 0x75, 0x05, 0xf3, 0x45, 0x12, 0x3d, 0x26, 0x85, 0xee, 0x3b, 0x94, 0x1d, 0x3d, 0xe6, 0xd9, 0xb3, 0x62, 0x42, 0xe5, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7102 = { .name = "ecdsa_secp256r1_sha256_7102", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7102_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7102_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7102_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 383 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7103 for ECDSA, tcId is 384 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7103_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_7103_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7103_sig[] = { 0x7e, 0x5f, 0x0a, 0xb5, 0xd9, 0x00, 0xd3, 0xd3, 0xd7, 0x86, 0x76, 0x57, 0xe5, 0xd6, 0xd3, 0x65, 0x19, 0xbc, 0x54, 0x08, 0x45, 0x36, 0xe7, 0xd2, 0x1c, 0x33, 0x6e, 0xd8, 0x00, 0x18, 0x59, 0x45, 0x94, 0x50, 0xc0, 0x7f, 0x20, 0x1f, 0xae, 0xc9, 0x4b, 0x82, 0xdf, 0xb3, 0x22, 0xe5, 0xac, 0x67, 0x66, 0x88, 0x29, 0x4a, 0xad, 0x35, 0xaa, 0x72, 0xe7, 0x27, 0xff, 0x0b, 0x19, 0xb6, 0x46, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7103 = { .name = "ecdsa_secp256r1_sha256_7103", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7103_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7103_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7103_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 384 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7104 for ECDSA, tcId is 385 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7104_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_7104_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7104_sig[] = { 0xd7, 0xd7, 0x0c, 0x58, 0x1a, 0xe9, 0xe3, 0xf6, 0x6d, 0xc6, 0xa4, 0x80, 0xbf, 0x03, 0x7a, 0xe2, 0x3f, 0x8a, 0x1e, 0x4a, 0x21, 0x36, 0xfe, 0x4b, 0x03, 0xaa, 0x69, 0xf0, 0xca, 0x25, 0xb3, 0x56, 0x89, 0xc4, 0x60, 0xf8, 0xa5, 0xa5, 0xc2, 0xbb, 0xba, 0x96, 0x2c, 0x8a, 0x3e, 0xe8, 0x33, 0xa4, 0x13, 0xe8, 0x56, 0x58, 0xe6, 0x2a, 0x59, 0xe2, 0xaf, 0x41, 0xd9, 0x12, 0x7c, 0xc4, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7104 = { .name = "ecdsa_secp256r1_sha256_7104", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7104_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7104_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7104_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 385 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7105 for ECDSA, tcId is 386 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7105_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_7105_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7105_sig[] = { 0x34, 0x1c, 0x1b, 0x9f, 0xf3, 0xc8, 0x3d, 0xd5, 0xe0, 0xdf, 0xa0, 0xbf, 0x68, 0xbc, 0xdf, 0x4b, 0xb7, 0xaa, 0x20, 0xc6, 0x25, 0x97, 0x5e, 0x5e, 0xee, 0xe3, 0x4b, 0xb3, 0x96, 0x26, 0x6b, 0x34, 0x72, 0xb6, 0x9f, 0x06, 0x1b, 0x75, 0x0f, 0xd5, 0x12, 0x1b, 0x22, 0xb1, 0x13, 0x66, 0xfa, 0xd5, 0x49, 0xc6, 0x34, 0xe7, 0x77, 0x65, 0xa0, 0x17, 0x90, 0x2a, 0x67, 0x09, 0x9e, 0x0a, 0x44, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7105 = { .name = "ecdsa_secp256r1_sha256_7105", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7105_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7105_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7105_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 386 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7106 for ECDSA, tcId is 387 in file ecdsa_secp256r1_sha256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_7106_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_7106_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_7106_sig[] = { 0x70, 0xbe, 0xbe, 0x68, 0x4c, 0xdc, 0xb5, 0xca, 0x72, 0xa4, 0x2f, 0x0d, 0x87, 0x38, 0x79, 0x35, 0x9b, 0xd1, 0x78, 0x1a, 0x59, 0x18, 0x09, 0x94, 0x76, 0x28, 0xd3, 0x13, 0xa3, 0x81, 0x4f, 0x67, 0xae, 0xc0, 0x3a, 0xca, 0x8f, 0x55, 0x87, 0xa4, 0xd5, 0x35, 0xfa, 0x31, 0x02, 0x7b, 0xbe, 0x9c, 0xc0, 0xe4, 0x64, 0xb1, 0xc3, 0x57, 0x7f, 0x4c, 0x2d, 0xcd, 0xe6, 0xb2, 0x09, 0x47, 0x98, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_7106 = { .name = "ecdsa_secp256r1_sha256_7106", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_7106_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_7106_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_7106_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 387 in file ecdsa_secp256r1_sha256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 7107 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7107_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7107_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x93, 0x64, 0x74, 0x5a, 0x6a, 0x2d, 0x69, 0xf2, 0x28, 0x36, 0x98, 0xfd, 0xfb, 0xee, 0x7b, 0x13, 0xde, 0x20, 0xbc, 0x93, 0xde, 0xb0, 0x23, 0x0a, 0x9a, 0xf3, 0xbd, 0x9f, 0xdd, 0xf0, 0x44, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7107 = { .name = "ecdsa_secp256r1_sha3_256_7107", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7107_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7107_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7107_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7108 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7108_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7108_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7108 = { .name = "ecdsa_secp256r1_sha3_256_7108", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7108_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7108_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7108_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7109 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7109_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7109_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7109 = { .name = "ecdsa_secp256r1_sha3_256_7109", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7109_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7109_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7109_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7110 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7110_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7110_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7110 = { .name = "ecdsa_secp256r1_sha3_256_7110", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7110_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7110_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7110_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7111 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7111_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7111_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7111 = { .name = "ecdsa_secp256r1_sha3_256_7111", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7111_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7111_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7111_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7112 for ECDSA, tcId is 68 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7112_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7112_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7112 = { .name = "ecdsa_secp256r1_sha3_256_7112", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7112_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7112_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7112_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7113 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7113_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7113_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7113 = { .name = "ecdsa_secp256r1_sha3_256_7113", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7113_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7113_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7113_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7114 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7114_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7114_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7114 = { .name = "ecdsa_secp256r1_sha3_256_7114", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7114_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7114_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7114_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7115 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7115_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7115_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7115 = { .name = "ecdsa_secp256r1_sha3_256_7115", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7115_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7115_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7115_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7116 for ECDSA, tcId is 93 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7116_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7116_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x00, 0x00, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7116 = { .name = "ecdsa_secp256r1_sha3_256_7116", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7116_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7116_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7116_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7117 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7117_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7117_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7117 = { .name = "ecdsa_secp256r1_sha3_256_7117", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7117_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7117_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7117_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7118 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7118_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7118_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7118 = { .name = "ecdsa_secp256r1_sha3_256_7118", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7118_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7118_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7118_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7119 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7119_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7119_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7119 = { .name = "ecdsa_secp256r1_sha3_256_7119", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7119_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7119_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7119_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7120 for ECDSA, tcId is 98 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7120_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7120_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x05, 0x00, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7120 = { .name = "ecdsa_secp256r1_sha3_256_7120", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7120_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7120_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7120_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7121 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7121_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7121_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7121 = { .name = "ecdsa_secp256r1_sha3_256_7121", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7121_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7121_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7121_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7122 for ECDSA, tcId is 114 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7122_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7122_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7122 = { .name = "ecdsa_secp256r1_sha3_256_7122", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7122_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7122_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7122_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7123 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7123_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7123_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7123 = { .name = "ecdsa_secp256r1_sha3_256_7123", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7123_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7123_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7123_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7124 for ECDSA, tcId is 118 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7124_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7124_sig[] = { 0x02, 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7124 = { .name = "ecdsa_secp256r1_sha3_256_7124", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7124_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7124_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7124_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7125 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7125_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7125_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6e, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7125 = { .name = "ecdsa_secp256r1_sha3_256_7125", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7125_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7125_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7125_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7126 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7126_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7126_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0xee, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7126 = { .name = "ecdsa_secp256r1_sha3_256_7126", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7126_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7126_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7126_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7127 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7127_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7127_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7127 = { .name = "ecdsa_secp256r1_sha3_256_7127", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7127_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7127_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7127_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7128 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7128_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7128_sig[] = { 0x00, 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7128 = { .name = "ecdsa_secp256r1_sha3_256_7128", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7128_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7128_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7128_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7129 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7129_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7129_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x00, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7129 = { .name = "ecdsa_secp256r1_sha3_256_7129", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7129_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7129_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7129_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7130 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7130_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7130_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x00, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7130 = { .name = "ecdsa_secp256r1_sha3_256_7130", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7130_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7130_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7130_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7131 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7131_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7131_sig[] = { 0x00, 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7131 = { .name = "ecdsa_secp256r1_sha3_256_7131", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7131_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7131_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7131_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7132 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7132_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7132_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7132 = { .name = "ecdsa_secp256r1_sha3_256_7132", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7132_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7132_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7132_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256r1_sha3_256_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7133 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7133_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7133_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7133 = { .name = "ecdsa_secp256r1_sha3_256_7133", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7133_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7133_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7133_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7134 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7134_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7134_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7134 = { .name = "ecdsa_secp256r1_sha3_256_7134", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7134_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7134_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7134_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7135 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7135_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7135_sig[] = { 0x01, 0x8a, 0xb9, 0xef, 0xfc, 0x67, 0x38, 0x80, 0x40, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x4f, 0xec, 0x66, 0x26, 0xe5, 0x40, 0xf2, 0xb0, 0x2e, 0xdc, 0x15, 0xb8, 0x3a, 0x73, 0xe8, 0xbf, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7135 = { .name = "ecdsa_secp256r1_sha3_256_7135", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7135_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7135_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7135_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7136 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7136_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7136_sig[] = { 0x8a, 0xb9, 0xef, 0xfe, 0x67, 0x38, 0x80, 0x3e, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0xd6, 0x1e, 0x70, 0xcb, 0x97, 0x11, 0xb5, 0xa6, 0x47, 0x68, 0x80, 0x32, 0x41, 0xad, 0x9e, 0x1d, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7136 = { .name = "ecdsa_secp256r1_sha3_256_7136", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7136_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7136_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7136_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7137 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7137_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7137_sig[] = { 0x75, 0x46, 0x10, 0x02, 0x98, 0xc7, 0x7f, 0xc0, 0x2e, 0x64, 0x6d, 0x2d, 0x16, 0x02, 0x15, 0xed, 0x6c, 0xfa, 0x94, 0x86, 0xc1, 0xd6, 0xab, 0xd4, 0xc4, 0xdd, 0xb5, 0x0a, 0xc1, 0xef, 0x3c, 0x92, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7137 = { .name = "ecdsa_secp256r1_sha3_256_7137", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7137_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7137_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7137_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7138 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7138_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7138_sig[] = { 0x75, 0x46, 0x10, 0x01, 0x98, 0xc7, 0x7f, 0xc1, 0x2e, 0x64, 0x6d, 0x2d, 0x16, 0x02, 0x15, 0xed, 0x29, 0xe1, 0x8f, 0x34, 0x68, 0xee, 0x4a, 0x59, 0xb8, 0x97, 0x7f, 0xcd, 0xbe, 0x52, 0x61, 0xe3, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7138 = { .name = "ecdsa_secp256r1_sha3_256_7138", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7138_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7138_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7138_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7139 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7139_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7139_sig[] = { 0xfe, 0x75, 0x46, 0x10, 0x03, 0x98, 0xc7, 0x7f, 0xbf, 0x2e, 0x64, 0x6d, 0x2d, 0x16, 0x02, 0x15, 0xed, 0xb0, 0x13, 0x99, 0xd9, 0x1a, 0xbf, 0x0d, 0x4f, 0xd1, 0x23, 0xea, 0x47, 0xc5, 0x8c, 0x17, 0x41, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7139 = { .name = "ecdsa_secp256r1_sha3_256_7139", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7139_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7139_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7139_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7140 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7140_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7140_sig[] = { 0x01, 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7140 = { .name = "ecdsa_secp256r1_sha3_256_7140", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7140_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7140_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7140_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7141 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7141_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7141_sig[] = { 0x75, 0x46, 0x10, 0x02, 0x98, 0xc7, 0x7f, 0xc0, 0x2e, 0x64, 0x6d, 0x2d, 0x16, 0x02, 0x15, 0xed, 0x6c, 0xfa, 0x94, 0x86, 0xc1, 0xd6, 0xab, 0xd4, 0xc4, 0xdd, 0xb5, 0x0a, 0xc1, 0xef, 0x3c, 0x92, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7141 = { .name = "ecdsa_secp256r1_sha3_256_7141", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7141_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7141_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7141_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7142 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7142_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7142_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x01, 0x6c, 0x9b, 0x8b, 0xa3, 0x95, 0xd2, 0x96, 0x0f, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0x9b, 0xad, 0x38, 0xc7, 0x6f, 0x7f, 0x19, 0xff, 0x4c, 0x7f, 0xd7, 0xe6, 0x1a, 0xd6, 0x06, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7142 = { .name = "ecdsa_secp256r1_sha3_256_7142", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7142_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7142_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7142_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7143 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7143_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7143_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x6c, 0x9b, 0x8b, 0xa5, 0x95, 0xd2, 0x96, 0x0d, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xec, 0x21, 0xdf, 0x43, 0x6c, 0x21, 0x4f, 0xdc, 0xf5, 0x65, 0x0c, 0x42, 0x60, 0x22, 0x0f, 0xbb, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7143 = { .name = "ecdsa_secp256r1_sha3_256_7143", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7143_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7143_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7143_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7144 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7144_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7144_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x93, 0x64, 0x74, 0x5b, 0x6a, 0x2d, 0x69, 0xf1, 0x28, 0x36, 0x98, 0xfd, 0xfb, 0xee, 0x7b, 0x14, 0x21, 0x39, 0xc1, 0xe6, 0x37, 0x98, 0x84, 0x85, 0xa7, 0x39, 0xf2, 0xdc, 0xe1, 0x8d, 0x1e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7144 = { .name = "ecdsa_secp256r1_sha3_256_7144", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7144_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7144_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7144_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7145 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7145_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7145_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0xfe, 0x93, 0x64, 0x74, 0x5c, 0x6a, 0x2d, 0x69, 0xf0, 0x28, 0x36, 0x98, 0xfd, 0xfb, 0xee, 0x7b, 0x14, 0x64, 0x52, 0xc7, 0x38, 0x90, 0x80, 0xe6, 0x00, 0xb3, 0x80, 0x28, 0x19, 0xe5, 0x29, 0xf9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7145 = { .name = "ecdsa_secp256r1_sha3_256_7145", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7145_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7145_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7145_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7146 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7146_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7146_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x01, 0x6c, 0x9b, 0x8b, 0xa4, 0x95, 0xd2, 0x96, 0x0e, 0xd7, 0xc9, 0x67, 0x02, 0x04, 0x11, 0x84, 0xeb, 0xde, 0xc6, 0x3e, 0x19, 0xc8, 0x67, 0x7b, 0x7a, 0x58, 0xc6, 0x0d, 0x23, 0x1e, 0x72, 0xe1, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7146 = { .name = "ecdsa_secp256r1_sha3_256_7146", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7146_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7146_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7146_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7147 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7147_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7147_sig[] = { 0x8a, 0xb9, 0xef, 0xfd, 0x67, 0x38, 0x80, 0x3f, 0xd1, 0x9b, 0x92, 0xd2, 0xe9, 0xfd, 0xea, 0x12, 0x93, 0x05, 0x6b, 0x79, 0x3e, 0x29, 0x54, 0x2b, 0x3b, 0x22, 0x4a, 0xf5, 0x3e, 0x10, 0xc3, 0x6e, 0x93, 0x64, 0x74, 0x5b, 0x6a, 0x2d, 0x69, 0xf1, 0x28, 0x36, 0x98, 0xfd, 0xfb, 0xee, 0x7b, 0x14, 0x21, 0x39, 0xc1, 0xe6, 0x37, 0x98, 0x84, 0x85, 0xa7, 0x39, 0xf2, 0xdc, 0xe1, 0x8d, 0x1e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7147 = { .name = "ecdsa_secp256r1_sha3_256_7147", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7147_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7147_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7147_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7148 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7148_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7148_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7148 = { .name = "ecdsa_secp256r1_sha3_256_7148", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7148_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7148_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7148_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7149 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7149_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7149_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7149 = { .name = "ecdsa_secp256r1_sha3_256_7149", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7149_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7149_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7149_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7150 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7150_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7150_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7150 = { .name = "ecdsa_secp256r1_sha3_256_7150", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7150_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7150_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7150_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7151 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7151_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7151_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7151 = { .name = "ecdsa_secp256r1_sha3_256_7151", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7151_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7151_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7151_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7152 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7152_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7152_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7152 = { .name = "ecdsa_secp256r1_sha3_256_7152", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7152_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7152_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7152_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7153 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7153_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7153_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7153 = { .name = "ecdsa_secp256r1_sha3_256_7153", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7153_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7153_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7153_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7154 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7154_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7154_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7154 = { .name = "ecdsa_secp256r1_sha3_256_7154", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7154_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7154_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7154_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7155 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7155_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7155_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7155 = { .name = "ecdsa_secp256r1_sha3_256_7155", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7155_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7155_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7155_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7156 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7156_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7156_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7156 = { .name = "ecdsa_secp256r1_sha3_256_7156", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7156_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7156_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7156_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7157 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7157_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7157_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7157 = { .name = "ecdsa_secp256r1_sha3_256_7157", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7157_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7157_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7157_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7158 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7158_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7158_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7158 = { .name = "ecdsa_secp256r1_sha3_256_7158", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7158_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7158_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7158_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7159 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7159_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7159_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7159 = { .name = "ecdsa_secp256r1_sha3_256_7159", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7159_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7159_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7159_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7160 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7160_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7160_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7160 = { .name = "ecdsa_secp256r1_sha3_256_7160", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7160_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7160_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7160_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7161 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7161_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7161_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7161 = { .name = "ecdsa_secp256r1_sha3_256_7161", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7161_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7161_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7161_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7162 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7162_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7162_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7162 = { .name = "ecdsa_secp256r1_sha3_256_7162", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7162_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7162_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7162_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7163 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7163_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7163_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7163 = { .name = "ecdsa_secp256r1_sha3_256_7163", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7163_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7163_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7163_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7164 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7164_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7164_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7164 = { .name = "ecdsa_secp256r1_sha3_256_7164", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7164_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7164_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7164_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7165 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7165_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7165_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7165 = { .name = "ecdsa_secp256r1_sha3_256_7165", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7165_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7165_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7165_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7166 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7166_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7166_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7166 = { .name = "ecdsa_secp256r1_sha3_256_7166", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7166_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7166_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7166_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7167 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7167_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7167_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7167 = { .name = "ecdsa_secp256r1_sha3_256_7167", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7167_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7167_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7167_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7168 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7168_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7168_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7168 = { .name = "ecdsa_secp256r1_sha3_256_7168", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7168_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7168_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7168_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7169 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7169_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7169_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7169 = { .name = "ecdsa_secp256r1_sha3_256_7169", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7169_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7169_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7169_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7170 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7170_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7170_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7170 = { .name = "ecdsa_secp256r1_sha3_256_7170", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7170_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7170_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7170_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7171 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7171_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7171_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7171 = { .name = "ecdsa_secp256r1_sha3_256_7171", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7171_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7171_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7171_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7172 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7172_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7172_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7172 = { .name = "ecdsa_secp256r1_sha3_256_7172", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7172_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7172_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7172_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7173 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7173_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7173_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7173 = { .name = "ecdsa_secp256r1_sha3_256_7173", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7173_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7173_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7173_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7174 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7174_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7174_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7174 = { .name = "ecdsa_secp256r1_sha3_256_7174", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7174_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7174_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7174_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7175 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7175_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7175_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7175 = { .name = "ecdsa_secp256r1_sha3_256_7175", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7175_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7175_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7175_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7176 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7176_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7176_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7176 = { .name = "ecdsa_secp256r1_sha3_256_7176", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7176_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7176_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7176_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7177 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7177_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7177_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7177 = { .name = "ecdsa_secp256r1_sha3_256_7177", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7177_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7177_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7177_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7178 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7178_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7178_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7178 = { .name = "ecdsa_secp256r1_sha3_256_7178", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7178_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7178_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7178_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7179 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7179_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7179_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7179 = { .name = "ecdsa_secp256r1_sha3_256_7179", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7179_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7179_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7179_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7180 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7180_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7180_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7180 = { .name = "ecdsa_secp256r1_sha3_256_7180", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7180_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7180_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7180_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7181 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7181_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7181_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7181 = { .name = "ecdsa_secp256r1_sha3_256_7181", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7181_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7181_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7181_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7182 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7182_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7182_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7182 = { .name = "ecdsa_secp256r1_sha3_256_7182", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7182_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7182_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7182_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7183 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7183_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7183_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7183 = { .name = "ecdsa_secp256r1_sha3_256_7183", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7183_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7183_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7183_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7184 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7184_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7184_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7184_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7184 = { .name = "ecdsa_secp256r1_sha3_256_7184", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7184_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7184_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7184_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7185 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7185_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7185_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7185_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7185 = { .name = "ecdsa_secp256r1_sha3_256_7185", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7185_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7185_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7185_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7186 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7186_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7186_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7186 = { .name = "ecdsa_secp256r1_sha3_256_7186", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7186_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7186_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7186_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7187 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7187_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7187_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7187_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7187 = { .name = "ecdsa_secp256r1_sha3_256_7187", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7187_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7187_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7187_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7188 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7188_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7188_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7188_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7188 = { .name = "ecdsa_secp256r1_sha3_256_7188", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7188_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7188_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7188_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7189 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7189_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7189_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7189_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7189 = { .name = "ecdsa_secp256r1_sha3_256_7189", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7189_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7189_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7189_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7190 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7190_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7190_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7190 = { .name = "ecdsa_secp256r1_sha3_256_7190", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7190_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7190_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7190_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7191 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7191_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7191_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7191 = { .name = "ecdsa_secp256r1_sha3_256_7191", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7191_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7191_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7191_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7192 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7192_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7192_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7192 = { .name = "ecdsa_secp256r1_sha3_256_7192", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7192_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7192_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7192_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7193 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7193_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7193_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7193 = { .name = "ecdsa_secp256r1_sha3_256_7193", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7193_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7193_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7193_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7194 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7194_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7194_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7194 = { .name = "ecdsa_secp256r1_sha3_256_7194", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7194_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7194_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7194_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7195 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7195_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7195_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7195 = { .name = "ecdsa_secp256r1_sha3_256_7195", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7195_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7195_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7195_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7196 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7196_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7196_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7196 = { .name = "ecdsa_secp256r1_sha3_256_7196", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7196_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7196_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7196_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7197 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7197_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7197_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7197 = { .name = "ecdsa_secp256r1_sha3_256_7197", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7197_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7197_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7197_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7198 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7198_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7198_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7198 = { .name = "ecdsa_secp256r1_sha3_256_7198", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7198_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7198_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7198_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7199 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7199_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7199_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7199 = { .name = "ecdsa_secp256r1_sha3_256_7199", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7199_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7199_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7199_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7200 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7200_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7200_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7200 = { .name = "ecdsa_secp256r1_sha3_256_7200", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7200_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7200_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7200_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7201 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7201_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7201_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7201 = { .name = "ecdsa_secp256r1_sha3_256_7201", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7201_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7201_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7201_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7202 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7202_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7202_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7202 = { .name = "ecdsa_secp256r1_sha3_256_7202", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7202_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7202_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7202_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7203 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7203_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7203_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7203 = { .name = "ecdsa_secp256r1_sha3_256_7203", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7203_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7203_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7203_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7204 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7204_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7204_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7204 = { .name = "ecdsa_secp256r1_sha3_256_7204", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7204_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7204_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7204_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7205 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7205_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7205_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7205 = { .name = "ecdsa_secp256r1_sha3_256_7205", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7205_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7205_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7205_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7206 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7206_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7206_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7206 = { .name = "ecdsa_secp256r1_sha3_256_7206", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7206_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7206_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7206_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7207 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7207_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7207_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7207 = { .name = "ecdsa_secp256r1_sha3_256_7207", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7207_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7207_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7207_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7208 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7208_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7208_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7208 = { .name = "ecdsa_secp256r1_sha3_256_7208", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7208_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7208_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7208_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7209 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7209_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7209_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7209 = { .name = "ecdsa_secp256r1_sha3_256_7209", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7209_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7209_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7209_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7210 for ECDSA, tcId is 220 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7210_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7210_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7210 = { .name = "ecdsa_secp256r1_sha3_256_7210", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7210_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7210_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7210_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7211 for ECDSA, tcId is 221 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7211_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7211_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7211 = { .name = "ecdsa_secp256r1_sha3_256_7211", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7211_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7211_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7211_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7212 for ECDSA, tcId is 230 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7212_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7212_msg[] = { 0x31, 0x37, 0x33, 0x32, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7212_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x40, 0x4a, 0x1a, 0x6d, 0xa1, 0x58, 0xae, 0x14, 0x73, 0xfc, 0xe0, 0x8d, 0x33, 0x8b, 0x8d, 0x64, 0x10, 0xa6, 0xa5, 0x90, 0x33, 0x58, 0xb2, 0x3f, 0xdd, 0x3a, 0x54, 0xfe, 0xe2, 0xc2, 0x74, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7212 = { .name = "ecdsa_secp256r1_sha3_256_7212", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7212_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7212_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7212_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7213 for ECDSA, tcId is 231 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7213_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7213_msg[] = { 0x33, 0x31, 0x39, 0x30, 0x39, 0x34, 0x33, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7213_sig[] = { 0xa9, 0xed, 0xb8, 0x79, 0x25, 0x68, 0x4b, 0xcc, 0x5b, 0x92, 0xd0, 0xf7, 0x45, 0x51, 0x23, 0x65, 0x6e, 0x34, 0x98, 0xa0, 0xd1, 0x82, 0xbe, 0x63, 0xe2, 0xe6, 0x07, 0x7c, 0x2b, 0x43, 0xbc, 0x6e, 0x2c, 0x72, 0x9e, 0xa1, 0xb0, 0x1d, 0x14, 0xee, 0x8f, 0xe7, 0x02, 0x09, 0x6c, 0xdd, 0xd9, 0x39, 0x4e, 0x35, 0x1d, 0x80, 0x14, 0x11, 0xec, 0x8e, 0xac, 0x6b, 0x75, 0x84, 0x75, 0xea, 0x00, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7213 = { .name = "ecdsa_secp256r1_sha3_256_7213", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7213_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7213_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7213_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7214 for ECDSA, tcId is 232 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7214_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7214_msg[] = { 0x38, 0x34, 0x33, 0x34, 0x37, 0x34, 0x31, 0x35, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7214_sig[] = { 0x3f, 0xba, 0x20, 0xca, 0x89, 0x3d, 0xca, 0xf0, 0x4e, 0x89, 0x14, 0x13, 0x37, 0xa9, 0x6a, 0xbc, 0x7e, 0x24, 0xe0, 0x26, 0xa8, 0xff, 0x4c, 0x86, 0xd9, 0x50, 0xde, 0x1c, 0x31, 0xb6, 0x42, 0x72, 0x6b, 0xe2, 0xec, 0xed, 0x4c, 0xe3, 0x88, 0xff, 0x80, 0x26, 0xdf, 0xd3, 0xb6, 0x58, 0x14, 0x4f, 0x30, 0x93, 0x1b, 0x70, 0x83, 0xee, 0x2a, 0xf0, 0x6e, 0x75, 0x15, 0x8c, 0x15, 0xb1, 0x22, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7214 = { .name = "ecdsa_secp256r1_sha3_256_7214", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7214_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7214_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7214_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7215 for ECDSA, tcId is 233 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7215_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7215_msg[] = { 0x33, 0x35, 0x37, 0x32, 0x36, 0x39, 0x36, 0x38, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7215_sig[] = { 0xc5, 0xaa, 0x31, 0x11, 0x6f, 0x60, 0x06, 0xc4, 0x79, 0x58, 0x6f, 0xf7, 0x07, 0x00, 0x14, 0xa3, 0x5f, 0x22, 0x16, 0x67, 0x01, 0xbe, 0x8a, 0x5f, 0x1f, 0x1e, 0x9a, 0x43, 0xcb, 0x27, 0xdc, 0xa0, 0x68, 0xd1, 0xce, 0xe3, 0x5b, 0xa3, 0x89, 0x3b, 0x9c, 0xc3, 0xb5, 0xdf, 0x5a, 0xc6, 0xaf, 0xef, 0x55, 0xeb, 0xdb, 0x7a, 0xd9, 0x23, 0x6b, 0x1f, 0xa8, 0xe4, 0x38, 0xa5, 0x38, 0xf8, 0xcb, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7215 = { .name = "ecdsa_secp256r1_sha3_256_7215", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7215_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7215_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7215_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7216 for ECDSA, tcId is 234 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7216_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7216_msg[] = { 0x35, 0x39, 0x31, 0x38, 0x33, 0x33, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7216_sig[] = { 0x5b, 0x5b, 0x4d, 0x89, 0x05, 0x04, 0xf5, 0x6c, 0x16, 0xa4, 0xac, 0x79, 0x47, 0xac, 0x00, 0x57, 0xcd, 0xf6, 0x40, 0xd2, 0xc3, 0x9b, 0xac, 0x09, 0xfe, 0xdc, 0x64, 0x8b, 0xb0, 0xa1, 0x6f, 0x1d, 0xf9, 0xc1, 0x2e, 0x73, 0xa5, 0x6d, 0x79, 0x9e, 0x28, 0x27, 0x53, 0x81, 0x87, 0xf0, 0xed, 0x0e, 0xc3, 0x31, 0xf6, 0xf0, 0xc0, 0x89, 0xa4, 0xf6, 0x24, 0x9d, 0x04, 0xc1, 0xb0, 0xc5, 0xcc, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7216 = { .name = "ecdsa_secp256r1_sha3_256_7216", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7216_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7216_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7216_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7217 for ECDSA, tcId is 235 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7217_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7217_msg[] = { 0x38, 0x32, 0x35, 0x33, 0x30, 0x38, 0x32, 0x32, 0x35, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7217_sig[] = { 0x43, 0x38, 0xe7, 0x10, 0x47, 0x8e, 0x8b, 0x92, 0x2e, 0x50, 0xdc, 0x94, 0x7f, 0x6f, 0xa0, 0xcd, 0x19, 0x03, 0x10, 0x6c, 0xf0, 0x2e, 0xe0, 0x74, 0x2d, 0xa6, 0x9e, 0x8b, 0x62, 0x4c, 0x5b, 0x67, 0x90, 0xc7, 0x3b, 0xd0, 0xfc, 0xd0, 0x7a, 0x4d, 0xd4, 0xa3, 0x66, 0x4d, 0x55, 0x9b, 0xd4, 0x79, 0x5a, 0xc9, 0x50, 0xd8, 0x94, 0x63, 0x68, 0x08, 0x52, 0xd3, 0x39, 0x15, 0xde, 0x1a, 0x57, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7217 = { .name = "ecdsa_secp256r1_sha3_256_7217", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7217_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7217_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7217_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7218 for ECDSA, tcId is 236 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7218_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7218_msg[] = { 0x31, 0x33, 0x37, 0x33, 0x34, 0x38, 0x32, 0x38, 0x31, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_256_7218_sig[] = { 0x0f, 0xc9, 0x7d, 0x77, 0x44, 0xe0, 0xb2, 0x76, 0x2e, 0x6b, 0x48, 0x73, 0x0d, 0x44, 0xc7, 0x58, 0xab, 0x23, 0x81, 0x36, 0xa7, 0x26, 0x93, 0xff, 0x27, 0x33, 0x9a, 0xae, 0xbe, 0xfa, 0xd5, 0x81, 0xab, 0x68, 0xec, 0x80, 0xcf, 0x4a, 0xfc, 0xca, 0x0f, 0x7d, 0x75, 0xf3, 0xc4, 0xb0, 0x0e, 0x34, 0xed, 0x4f, 0xe9, 0x10, 0x1c, 0x98, 0xed, 0x4d, 0x8c, 0x2f, 0x97, 0xeb, 0x86, 0x5b, 0x16, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7218 = { .name = "ecdsa_secp256r1_sha3_256_7218", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7218_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7218_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7218_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7219 for ECDSA, tcId is 237 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7219_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7219_msg[] = { 0x31, 0x37, 0x33, 0x38, 0x31, 0x35, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7219_sig[] = { 0x82, 0x5f, 0x0b, 0x42, 0x30, 0xe3, 0x01, 0x82, 0xb2, 0x4b, 0x65, 0x15, 0x1e, 0xc8, 0x3d, 0x0a, 0xad, 0xc6, 0x3e, 0xcf, 0xe0, 0xa9, 0x1b, 0x58, 0x79, 0xcc, 0xf7, 0xfc, 0xce, 0x9e, 0xb4, 0x0a, 0x47, 0xf0, 0x21, 0x1a, 0xd5, 0x47, 0x1d, 0x05, 0x5f, 0xe0, 0x7c, 0x75, 0xf3, 0x7f, 0x3f, 0xad, 0x8a, 0xee, 0xff, 0x1e, 0xe1, 0x1a, 0x54, 0xa1, 0x7b, 0xab, 0x35, 0x21, 0x2c, 0x46, 0xd5, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7219 = { .name = "ecdsa_secp256r1_sha3_256_7219", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7219_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7219_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7219_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7220 for ECDSA, tcId is 238 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7220_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7220_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x34, 0x36, 0x36, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7220_sig[] = { 0x3f, 0xed, 0xd8, 0x35, 0x79, 0x43, 0x18, 0x89, 0x71, 0x0b, 0x67, 0xb6, 0x45, 0x4d, 0x43, 0xea, 0x7e, 0xdd, 0xaa, 0xa9, 0xda, 0x95, 0x04, 0x24, 0xe2, 0xc4, 0xac, 0x73, 0x00, 0x65, 0xa8, 0x22, 0xb5, 0x0c, 0xef, 0x5a, 0x9d, 0xa8, 0x32, 0x3f, 0xcc, 0xd5, 0xbf, 0x13, 0x26, 0x0d, 0xea, 0x65, 0x17, 0xc8, 0xae, 0x6c, 0xcd, 0x64, 0x95, 0xf9, 0xed, 0x74, 0x94, 0xcf, 0xd5, 0x89, 0x15, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7220 = { .name = "ecdsa_secp256r1_sha3_256_7220", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7220_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7220_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7220_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7221 for ECDSA, tcId is 239 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7221_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7221_msg[] = { 0x32, 0x31, 0x38, 0x33, 0x30, 0x33, 0x39, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_256_7221_sig[] = { 0x69, 0xba, 0x62, 0xb0, 0x20, 0xa3, 0x63, 0x33, 0xf7, 0xa0, 0x71, 0x65, 0x77, 0xdd, 0x57, 0xd2, 0x80, 0x13, 0x2c, 0x54, 0x0f, 0x66, 0xb9, 0xe2, 0xfe, 0x8d, 0x47, 0x01, 0x21, 0xe0, 0xf1, 0x35, 0x66, 0xc7, 0x81, 0x15, 0x87, 0xcb, 0x92, 0x47, 0xec, 0x6d, 0x8c, 0x22, 0x3b, 0x4c, 0x6d, 0x55, 0x33, 0x94, 0x8f, 0xba, 0xbf, 0x07, 0x29, 0x73, 0xd7, 0x4c, 0xb1, 0x9d, 0x3b, 0x2c, 0x91, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7221 = { .name = "ecdsa_secp256r1_sha3_256_7221", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7221_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7221_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7221_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7222 for ECDSA, tcId is 240 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7222_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7222_msg[] = { 0x31, 0x30, 0x35, 0x32, 0x36, 0x31, 0x37, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7222_sig[] = { 0x8b, 0xb7, 0x63, 0x09, 0x7d, 0x8c, 0xa8, 0xe9, 0xcb, 0x84, 0xe1, 0x11, 0xf3, 0x61, 0xf4, 0x7d, 0xe9, 0x34, 0x99, 0xf5, 0x0b, 0xc8, 0x54, 0x01, 0xea, 0x96, 0xa6, 0x1d, 0x54, 0xfa, 0xd7, 0xa8, 0x25, 0x87, 0xb8, 0x1e, 0x27, 0x72, 0x83, 0xd5, 0xc1, 0x39, 0xb8, 0xe9, 0xa5, 0xf4, 0xaa, 0x0b, 0xb0, 0xb1, 0xc2, 0xb2, 0x89, 0x63, 0xef, 0xdd, 0xbf, 0x73, 0xa0, 0xee, 0xf3, 0x41, 0x65, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7222 = { .name = "ecdsa_secp256r1_sha3_256_7222", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7222_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7222_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7222_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7223 for ECDSA, tcId is 241 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7223_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7223_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x33, 0x39, 0x39, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7223_sig[] = { 0x82, 0x60, 0xa1, 0xeb, 0x8b, 0xa8, 0xb5, 0x2d, 0xb9, 0x5b, 0x07, 0x22, 0x88, 0x79, 0x20, 0xa1, 0xf9, 0x98, 0x9d, 0xfa, 0x1e, 0xfd, 0x42, 0x0d, 0x1f, 0x8f, 0x9a, 0xb3, 0xdf, 0x0c, 0xff, 0xce, 0x67, 0x52, 0xc5, 0x68, 0x7e, 0x68, 0x89, 0xe0, 0x08, 0xeb, 0x9a, 0xd6, 0xe4, 0x19, 0x33, 0x79, 0x6b, 0x4a, 0xdc, 0xd6, 0x01, 0x84, 0x20, 0xfd, 0xef, 0x25, 0x09, 0x98, 0xf6, 0xad, 0xf6, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7223 = { .name = "ecdsa_secp256r1_sha3_256_7223", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7223_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7223_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7223_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7224 for ECDSA, tcId is 242 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7224_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7224_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x33, 0x31, 0x36, 0x34, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7224_sig[] = { 0xb8, 0x09, 0xc1, 0x33, 0xb3, 0x0c, 0x3a, 0x8f, 0xf1, 0x1e, 0xa9, 0x02, 0x4b, 0x13, 0x16, 0x64, 0xb5, 0x1c, 0x27, 0x68, 0xaf, 0xb8, 0x53, 0x67, 0x44, 0xe0, 0x41, 0x01, 0x5d, 0xa9, 0x38, 0x06, 0x6c, 0xd0, 0x15, 0xa4, 0x9e, 0x19, 0xb2, 0x60, 0xda, 0x6c, 0xd3, 0x2a, 0x94, 0x80, 0x6f, 0xb8, 0xbd, 0xce, 0xec, 0x5d, 0xc5, 0x54, 0x2a, 0x7b, 0x2b, 0x93, 0x8c, 0xce, 0x75, 0x13, 0x7f, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7224 = { .name = "ecdsa_secp256r1_sha3_256_7224", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7224_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7224_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7224_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7225 for ECDSA, tcId is 243 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7225_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7225_msg[] = { 0x32, 0x30, 0x36, 0x33, 0x38, 0x35, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7225_sig[] = { 0x20, 0x69, 0x24, 0x4f, 0x8e, 0x72, 0x56, 0x24, 0x06, 0xd6, 0x31, 0xf6, 0x47, 0xa1, 0x41, 0x83, 0x1a, 0xca, 0x59, 0x07, 0xfb, 0xff, 0x09, 0x93, 0x27, 0x97, 0xd8, 0x30, 0x5a, 0xd3, 0xc1, 0x9d, 0xdf, 0xb7, 0xa3, 0xae, 0x1a, 0x4b, 0xdf, 0x76, 0x98, 0x7d, 0x7d, 0xe4, 0x04, 0xc5, 0xd8, 0xb7, 0xc5, 0x1a, 0x6a, 0xe8, 0xdb, 0xec, 0xe9, 0xde, 0x34, 0x5a, 0x4b, 0x71, 0xcb, 0x5e, 0x1f, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7225 = { .name = "ecdsa_secp256r1_sha3_256_7225", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7225_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7225_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7225_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7226 for ECDSA, tcId is 244 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7226_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7226_msg[] = { 0x37, 0x38, 0x33, 0x39, 0x37, 0x36, 0x34, 0x39, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_256_7226_sig[] = { 0x4d, 0x82, 0xe4, 0x57, 0x95, 0x47, 0x61, 0x00, 0x1d, 0xa6, 0xc5, 0xdd, 0x0f, 0xb4, 0x5d, 0x3b, 0x8a, 0xae, 0x12, 0xa2, 0x70, 0xcd, 0xc5, 0xb9, 0x7d, 0x66, 0xf8, 0x10, 0xe3, 0x06, 0x53, 0x26, 0x0c, 0xc6, 0x21, 0x7e, 0x3a, 0xee, 0x38, 0x39, 0xfd, 0x80, 0x9b, 0x20, 0x7d, 0x47, 0xde, 0xa4, 0x12, 0x99, 0x19, 0x32, 0xad, 0xb2, 0xde, 0x18, 0xee, 0x86, 0x43, 0x14, 0x52, 0xc2, 0x25, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7226 = { .name = "ecdsa_secp256r1_sha3_256_7226", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7226_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7226_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7226_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7227 for ECDSA, tcId is 245 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7227_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7227_msg[] = { 0x32, 0x31, 0x32, 0x39, 0x32, 0x36, 0x34, 0x34, 0x36, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7227_sig[] = { 0xa8, 0x1c, 0x62, 0x58, 0x48, 0x9e, 0x10, 0xbb, 0x11, 0x32, 0xa6, 0xf8, 0x1f, 0x76, 0xc3, 0x1d, 0x74, 0x65, 0x86, 0x97, 0x08, 0xd8, 0x9e, 0xb0, 0x18, 0xc5, 0x1b, 0xf7, 0x74, 0xe8, 0xa0, 0x93, 0x30, 0x4d, 0x75, 0xb7, 0xbe, 0xbe, 0x9a, 0xbd, 0xa5, 0xda, 0xaf, 0xc4, 0x19, 0xa7, 0x65, 0xff, 0xb8, 0xe5, 0xc0, 0x2d, 0xd9, 0x18, 0x36, 0xc4, 0x0c, 0x43, 0x0f, 0x05, 0x2d, 0x5c, 0xa5, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7227 = { .name = "ecdsa_secp256r1_sha3_256_7227", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7227_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7227_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7227_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7228 for ECDSA, tcId is 246 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7228_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7228_msg[] = { 0x34, 0x38, 0x33, 0x32, 0x30, 0x34, 0x32, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_256_7228_sig[] = { 0xe8, 0xda, 0x77, 0x69, 0x84, 0xd6, 0xaf, 0x2b, 0x8d, 0x52, 0x3d, 0x1b, 0xd6, 0xfa, 0xb8, 0xb2, 0x54, 0x09, 0xe6, 0x69, 0xd1, 0x72, 0xef, 0x51, 0xe1, 0x04, 0x64, 0x8c, 0x1b, 0xf0, 0xda, 0xd1, 0x49, 0xb4, 0x17, 0x0f, 0xed, 0x1c, 0xc5, 0x9a, 0xb0, 0x00, 0x08, 0x7a, 0x2c, 0x09, 0x1b, 0x3f, 0x69, 0xa6, 0x6c, 0x85, 0x62, 0xed, 0x35, 0x04, 0x72, 0xe9, 0x82, 0xbd, 0x31, 0xa0, 0xd0, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7228 = { .name = "ecdsa_secp256r1_sha3_256_7228", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7228_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7228_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7228_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7229 for ECDSA, tcId is 247 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7229_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7229_msg[] = { 0x33, 0x36, 0x35, 0x32, 0x32, 0x31, 0x38, 0x31, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7229_sig[] = { 0xc5, 0x3d, 0x29, 0x37, 0x75, 0xc5, 0xcf, 0xdb, 0x87, 0x9b, 0x67, 0xff, 0x4f, 0x47, 0x92, 0x94, 0x21, 0x32, 0xc3, 0x5c, 0x9d, 0xc7, 0xf8, 0xfd, 0xa8, 0xb3, 0xa0, 0x09, 0x67, 0xc7, 0x5b, 0x47, 0xc3, 0x60, 0x45, 0x15, 0x1f, 0x70, 0xa5, 0xd6, 0xaf, 0x2f, 0xd2, 0x7c, 0xf1, 0xf1, 0x3c, 0xb3, 0x08, 0xb2, 0xe8, 0x47, 0x15, 0x1f, 0xa4, 0xb4, 0x7e, 0x22, 0xf2, 0xdf, 0x62, 0x20, 0xae, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7229 = { .name = "ecdsa_secp256r1_sha3_256_7229", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7229_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7229_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7229_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7230 for ECDSA, tcId is 248 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7230_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7230_msg[] = { 0x32, 0x34, 0x39, 0x31, 0x37, 0x31, 0x32, 0x36, 0x39, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7230_sig[] = { 0x30, 0x0e, 0xe6, 0xfa, 0x4d, 0xe8, 0x53, 0xac, 0x66, 0x80, 0x30, 0x2a, 0x9c, 0x43, 0x9b, 0x82, 0xdf, 0xd0, 0x46, 0xc3, 0x14, 0xd7, 0xbb, 0xac, 0xb2, 0xe0, 0x12, 0x74, 0xe6, 0x1e, 0x9b, 0x54, 0x0b, 0xb2, 0xb6, 0x2f, 0x11, 0xb7, 0x89, 0x84, 0x86, 0x48, 0xfa, 0xb7, 0xe0, 0xc4, 0x6c, 0xa7, 0xb0, 0x9c, 0xde, 0xd0, 0x18, 0x87, 0xef, 0x6b, 0xda, 0x9f, 0x87, 0x1b, 0xc5, 0xcc, 0x60, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7230 = { .name = "ecdsa_secp256r1_sha3_256_7230", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7230_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7230_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7230_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7231 for ECDSA, tcId is 249 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7231_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7231_msg[] = { 0x32, 0x36, 0x32, 0x32, 0x37, 0x39, 0x30, 0x37, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7231_sig[] = { 0xac, 0x58, 0xa1, 0x8f, 0xa5, 0x97, 0x3e, 0xfb, 0x06, 0xad, 0xba, 0x84, 0x2a, 0xff, 0xbd, 0x25, 0x6a, 0x1c, 0x62, 0x46, 0x06, 0xb1, 0x46, 0xda, 0xe5, 0xa6, 0xef, 0x85, 0x99, 0x2c, 0xb4, 0x28, 0x48, 0xb4, 0xec, 0xb8, 0x69, 0x7e, 0x4c, 0xd2, 0x0e, 0x0f, 0x30, 0x72, 0x1a, 0xd9, 0x4f, 0x4c, 0x18, 0x94, 0x38, 0x79, 0xce, 0x5d, 0x99, 0xd8, 0xc0, 0x00, 0xd9, 0x04, 0x65, 0x13, 0x8b, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7231 = { .name = "ecdsa_secp256r1_sha3_256_7231", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7231_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7231_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7231_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7232 for ECDSA, tcId is 250 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7232_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7232_msg[] = { 0x31, 0x30, 0x31, 0x32, 0x35, 0x37, 0x37, 0x32, 0x38, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_256_7232_sig[] = { 0x6e, 0xbc, 0x28, 0x57, 0xfd, 0x53, 0x65, 0x6b, 0x85, 0x70, 0x05, 0xeb, 0x8f, 0x95, 0xc4, 0xf6, 0xfd, 0x3c, 0x99, 0xf9, 0x63, 0x6a, 0x02, 0x8e, 0x52, 0x44, 0xed, 0xc6, 0x0b, 0xc9, 0xe1, 0x8c, 0x27, 0x71, 0x9f, 0x12, 0xeb, 0x1d, 0xe6, 0xca, 0xde, 0x54, 0x7c, 0xb9, 0x85, 0x23, 0xbd, 0xc7, 0x10, 0x86, 0x22, 0x24, 0x0f, 0x38, 0xd1, 0x2f, 0x41, 0x5c, 0x79, 0xcd, 0x0b, 0x13, 0x44, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7232 = { .name = "ecdsa_secp256r1_sha3_256_7232", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7232_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7232_msg, .msglen = 12, .sig = ecdsa_secp256r1_sha3_256_7232_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7233 for ECDSA, tcId is 251 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7233_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7233_msg[] = { 0x31, 0x30, 0x35, 0x30, 0x38, 0x37, 0x32, 0x32, 0x30, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_256_7233_sig[] = { 0x67, 0xe8, 0xca, 0x19, 0x07, 0x62, 0x44, 0x19, 0xe3, 0xcc, 0xd8, 0x80, 0x02, 0xdd, 0x77, 0x57, 0xf5, 0x95, 0xab, 0xc8, 0x4b, 0xd8, 0x61, 0xcd, 0x01, 0x98, 0x36, 0x4a, 0x45, 0x71, 0xff, 0x6b, 0x0d, 0xb4, 0x0b, 0x6a, 0x72, 0x00, 0xcd, 0xc1, 0xa0, 0x9d, 0xf4, 0x32, 0xa5, 0xa7, 0x63, 0x43, 0x6a, 0xb4, 0x13, 0x0c, 0xbd, 0xee, 0x02, 0x4d, 0xea, 0x2a, 0x3d, 0xdd, 0x6c, 0x02, 0x3e, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7233 = { .name = "ecdsa_secp256r1_sha3_256_7233", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7233_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7233_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7233_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7234 for ECDSA, tcId is 252 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7234_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7234_msg[] = { 0x32, 0x35, 0x30, 0x37, 0x37, 0x32, 0x37, 0x30, 0x33, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_256_7234_sig[] = { 0xf4, 0xd8, 0x20, 0x8e, 0xed, 0x5c, 0xb4, 0xbf, 0xe4, 0xef, 0x6d, 0xdb, 0xbc, 0x37, 0x42, 0xe7, 0x80, 0xe4, 0x21, 0x2a, 0x39, 0xcf, 0x79, 0xc9, 0xf8, 0x56, 0x05, 0xee, 0x64, 0xa9, 0x62, 0xcb, 0x43, 0xde, 0xe8, 0xa3, 0xc4, 0x5a, 0x45, 0xa9, 0x1e, 0x83, 0xa1, 0x8f, 0xf3, 0xf8, 0x81, 0x04, 0x7b, 0x4f, 0xd6, 0xad, 0x30, 0x03, 0xb3, 0xaf, 0x37, 0xfb, 0x82, 0x11, 0xea, 0xf7, 0xd5, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7234 = { .name = "ecdsa_secp256r1_sha3_256_7234", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7234_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7234_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7234_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7235 for ECDSA, tcId is 253 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7235_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7235_msg[] = { 0x37, 0x31, 0x39, 0x33, 0x34, 0x35, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7235_sig[] = { 0x33, 0x63, 0xcc, 0xc9, 0x3e, 0x24, 0x13, 0xe4, 0x75, 0x28, 0xab, 0x08, 0x64, 0x08, 0xbc, 0x05, 0x21, 0xbe, 0x73, 0x35, 0x3f, 0x2c, 0x23, 0x71, 0xbb, 0xf2, 0xd9, 0xdc, 0x16, 0xe6, 0x3f, 0xb3, 0x68, 0xf3, 0xd1, 0x07, 0x4a, 0x2e, 0x06, 0xd3, 0x3f, 0xc1, 0x9a, 0x56, 0x7a, 0x8a, 0xf0, 0xed, 0xca, 0xe9, 0x23, 0x56, 0x0c, 0xf3, 0x8d, 0xa2, 0xda, 0xb8, 0x2e, 0x22, 0x49, 0xc8, 0xdb, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7235 = { .name = "ecdsa_secp256r1_sha3_256_7235", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7235_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7235_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7235_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7236 for ECDSA, tcId is 254 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7236_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7236_msg[] = { 0x31, 0x36, 0x33, 0x37, 0x33, 0x30, 0x35, 0x37, 0x36, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_256_7236_sig[] = { 0x84, 0x96, 0x07, 0x58, 0x12, 0x5a, 0xd8, 0xde, 0x3d, 0xf0, 0xc1, 0x13, 0xff, 0x35, 0xf1, 0x64, 0x4e, 0x4d, 0x43, 0xf6, 0x61, 0xc2, 0xd8, 0x18, 0x48, 0xf3, 0xfe, 0x4e, 0x55, 0x84, 0x6f, 0x18, 0x59, 0x83, 0x63, 0x0f, 0xc8, 0x97, 0x5b, 0xab, 0x57, 0x0d, 0x2c, 0x9f, 0x3c, 0xbb, 0xde, 0xcb, 0x4d, 0xd6, 0x17, 0x9e, 0xc4, 0x97, 0xaf, 0xf3, 0x12, 0xd8, 0x07, 0xec, 0x26, 0xca, 0x94, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7236 = { .name = "ecdsa_secp256r1_sha3_256_7236", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7236_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7236_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7236_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7237 for ECDSA, tcId is 255 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7237_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7237_msg[] = { 0x34, 0x32, 0x34, 0x31, 0x32, 0x37, 0x33, 0x37, 0x31, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_256_7237_sig[] = { 0x06, 0xca, 0x92, 0x4b, 0x56, 0x86, 0xa2, 0x2f, 0x2e, 0x39, 0xc0, 0xf9, 0x80, 0xfd, 0x58, 0xd6, 0x2b, 0xba, 0xf3, 0x3c, 0x3a, 0x57, 0xf9, 0x8a, 0x31, 0x53, 0x32, 0x12, 0x1e, 0x9b, 0xa6, 0x0b, 0x65, 0x16, 0xb9, 0x8b, 0x31, 0x04, 0x87, 0x22, 0xca, 0x25, 0xe0, 0xa6, 0xc4, 0x50, 0x46, 0x18, 0x23, 0xc0, 0xa3, 0x5f, 0x37, 0xd6, 0x71, 0x43, 0x90, 0x84, 0xfb, 0xc2, 0x7c, 0x47, 0x79, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7237 = { .name = "ecdsa_secp256r1_sha3_256_7237", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7237_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7237_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7237_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7238 for ECDSA, tcId is 256 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7238_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7238_msg[] = { 0x34, 0x37, 0x35, 0x36, 0x31, 0x34, 0x37, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_256_7238_sig[] = { 0x00, 0x93, 0xc5, 0xef, 0x07, 0xa7, 0xd9, 0x55, 0x05, 0x6b, 0x88, 0xcc, 0x82, 0x40, 0x06, 0x0b, 0x4f, 0xfb, 0x42, 0x83, 0x5a, 0x3d, 0xf3, 0x53, 0xcb, 0xe1, 0x6c, 0xcb, 0x62, 0xea, 0xf3, 0xf6, 0x36, 0x4d, 0xbe, 0xa6, 0xd5, 0xea, 0xd4, 0x20, 0x2d, 0x6f, 0xdc, 0x25, 0x3b, 0xb0, 0xc2, 0xc0, 0x52, 0x2b, 0x55, 0x82, 0x3e, 0x8b, 0xb8, 0x90, 0x23, 0x5a, 0xb0, 0x9a, 0xe9, 0x03, 0x0e, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7238 = { .name = "ecdsa_secp256r1_sha3_256_7238", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7238_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7238_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7238_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7239 for ECDSA, tcId is 257 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7239_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7239_msg[] = { 0x37, 0x31, 0x36, 0x32, 0x33, 0x32, 0x37, 0x37, 0x33, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7239_sig[] = { 0x83, 0x52, 0x74, 0xf3, 0x15, 0x7b, 0x73, 0x79, 0x75, 0x48, 0x6c, 0x73, 0xe5, 0xbb, 0xdd, 0x15, 0xb6, 0x1e, 0x2e, 0xbb, 0x9e, 0x58, 0x09, 0x11, 0xe4, 0x5f, 0xc2, 0x88, 0x21, 0x4d, 0x2e, 0x67, 0x1d, 0x5d, 0xce, 0xbf, 0xc6, 0xd3, 0xae, 0x38, 0x26, 0xb9, 0xa3, 0x21, 0x1f, 0x5e, 0x22, 0x49, 0xac, 0xc9, 0x67, 0xeb, 0x47, 0xdf, 0xd4, 0x1a, 0x84, 0x92, 0x41, 0xff, 0xe7, 0x79, 0x15, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7239 = { .name = "ecdsa_secp256r1_sha3_256_7239", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7239_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7239_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7239_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7240 for ECDSA, tcId is 258 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7240_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7240_msg[] = { 0x31, 0x32, 0x32, 0x32, 0x34, 0x30, 0x34, 0x31, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7240_sig[] = { 0x37, 0x97, 0x91, 0x6f, 0xb5, 0xc4, 0x01, 0xa6, 0x91, 0xb7, 0x10, 0x05, 0x0d, 0xf3, 0xee, 0xc1, 0x63, 0x38, 0x3f, 0x85, 0x5f, 0x93, 0xb6, 0x13, 0x22, 0xa5, 0x6d, 0x86, 0x2a, 0xd5, 0x57, 0x2d, 0xeb, 0x7b, 0xff, 0x40, 0x00, 0x73, 0x8a, 0x83, 0xdd, 0x64, 0x08, 0x2e, 0xff, 0x71, 0x0d, 0x5e, 0xb6, 0x19, 0x42, 0x71, 0x98, 0xac, 0x29, 0x0b, 0x29, 0x1f, 0x45, 0x99, 0x76, 0x89, 0x59, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7240 = { .name = "ecdsa_secp256r1_sha3_256_7240", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7240_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7240_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7240_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7241 for ECDSA, tcId is 259 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7241_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7241_msg[] = { 0x33, 0x35, 0x32, 0x34, 0x35, 0x38, 0x33, 0x33, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7241_sig[] = { 0x70, 0x99, 0x24, 0x63, 0x69, 0x4c, 0x84, 0x51, 0x83, 0xdb, 0x14, 0x2a, 0x77, 0xbf, 0x5d, 0x73, 0xc1, 0x7e, 0x90, 0x04, 0xa8, 0xb9, 0x46, 0xb7, 0xb8, 0xee, 0xb3, 0xfd, 0xf2, 0xb2, 0x2e, 0x00, 0x03, 0x84, 0x3e, 0xc2, 0x8e, 0x4c, 0x4d, 0x4f, 0x77, 0x26, 0xa5, 0xa5, 0x83, 0x55, 0x75, 0xbb, 0x3e, 0x27, 0x2f, 0x61, 0x22, 0x46, 0xbc, 0x3a, 0xff, 0x28, 0x8a, 0xc4, 0xa4, 0xe9, 0x0c, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7241 = { .name = "ecdsa_secp256r1_sha3_256_7241", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7241_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7241_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7241_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7242 for ECDSA, tcId is 260 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7242_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7242_msg[] = { 0x33, 0x31, 0x36, 0x33, 0x34, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7242_sig[] = { 0xae, 0xaf, 0x22, 0x8b, 0x41, 0xa1, 0xf3, 0x11, 0xd4, 0xdf, 0x74, 0x71, 0x7f, 0x41, 0x34, 0xee, 0x99, 0x2e, 0x5f, 0x29, 0x22, 0xee, 0xc6, 0x5e, 0xc8, 0x3e, 0x2d, 0xb8, 0x2a, 0x86, 0x64, 0x72, 0xf5, 0xef, 0x65, 0xeb, 0x9f, 0xc3, 0xfe, 0xaa, 0xac, 0x04, 0xf7, 0x1a, 0x9a, 0x5c, 0xeb, 0x73, 0xe8, 0xcd, 0x6c, 0xb7, 0x5b, 0x45, 0x95, 0xb3, 0x9b, 0x25, 0x0a, 0x50, 0x47, 0x6c, 0xb6, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7242 = { .name = "ecdsa_secp256r1_sha3_256_7242", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7242_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7242_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha3_256_7242_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7243 for ECDSA, tcId is 261 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7243_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7243_msg[] = { 0x36, 0x35, 0x33, 0x32, 0x35, 0x39, 0x38, 0x34, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7243_sig[] = { 0xb8, 0x4d, 0xbb, 0xdd, 0xd3, 0xb8, 0xa2, 0xdd, 0xf6, 0x7d, 0x27, 0xe4, 0xef, 0x88, 0x6f, 0x72, 0xd9, 0x0c, 0xbb, 0x7e, 0xc2, 0xd6, 0x88, 0x37, 0x28, 0xb2, 0x78, 0x42, 0xd6, 0x15, 0x05, 0xcc, 0x32, 0xbe, 0x7f, 0x0f, 0xf4, 0x20, 0xae, 0x3b, 0xe2, 0x12, 0xbe, 0xb4, 0xc2, 0x76, 0xd9, 0x3e, 0x25, 0x27, 0xb0, 0x96, 0x4d, 0x64, 0x3c, 0x58, 0x07, 0xc8, 0xee, 0x71, 0x1e, 0x66, 0xe8, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7243 = { .name = "ecdsa_secp256r1_sha3_256_7243", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7243_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7243_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7243_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7244 for ECDSA, tcId is 262 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7244_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7244_msg[] = { 0x37, 0x33, 0x38, 0x35, 0x31, 0x38, 0x35, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7244_sig[] = { 0xf7, 0xf6, 0x78, 0x29, 0x78, 0xf3, 0x76, 0xca, 0xf9, 0x43, 0x49, 0x41, 0x53, 0x5e, 0x1c, 0x87, 0xad, 0x09, 0xb9, 0xd3, 0x9e, 0xe9, 0x36, 0x14, 0x5a, 0x0b, 0x53, 0xb9, 0x25, 0x0f, 0xd1, 0x82, 0xfb, 0x75, 0x29, 0x30, 0xc8, 0x4c, 0x29, 0xe4, 0x9f, 0x81, 0xa9, 0x97, 0xa4, 0xd0, 0xf0, 0x0f, 0xcd, 0xcb, 0x4a, 0x2f, 0x2b, 0xf8, 0x04, 0x9c, 0xca, 0x5d, 0x7c, 0xf7, 0x0b, 0x07, 0x9c, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7244 = { .name = "ecdsa_secp256r1_sha3_256_7244", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7244_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7244_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7244_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7245 for ECDSA, tcId is 263 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7245_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7245_msg[] = { 0x31, 0x34, 0x36, 0x35, 0x32, 0x36, 0x36, 0x35, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7245_sig[] = { 0xfb, 0x4b, 0x43, 0x41, 0x12, 0xc1, 0x30, 0x2f, 0xfd, 0x49, 0xeb, 0xd9, 0x93, 0xcf, 0x5e, 0xc5, 0x97, 0x29, 0xcb, 0xe7, 0x87, 0x39, 0xdb, 0x3c, 0x47, 0x02, 0x64, 0xe3, 0x78, 0xd5, 0x6e, 0x8d, 0x3a, 0xba, 0x99, 0xbd, 0x10, 0xbe, 0x0f, 0xba, 0x04, 0xca, 0x8d, 0x96, 0x01, 0xae, 0x8f, 0x68, 0xca, 0x7f, 0xfe, 0x58, 0x14, 0xf4, 0xcf, 0xbd, 0xe7, 0x8c, 0x1c, 0xc0, 0x7a, 0x29, 0xfd, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7245 = { .name = "ecdsa_secp256r1_sha3_256_7245", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7245_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7245_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7245_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7246 for ECDSA, tcId is 264 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7246_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7246_msg[] = { 0x32, 0x30, 0x33, 0x34, 0x38, 0x38, 0x39, 0x34, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7246_sig[] = { 0xea, 0xfa, 0xfe, 0x85, 0x1a, 0xad, 0x76, 0x03, 0x60, 0x13, 0xbd, 0x57, 0x17, 0x72, 0x14, 0x7b, 0x72, 0x57, 0xfb, 0x73, 0x6e, 0xd7, 0xb4, 0x45, 0x8e, 0x0d, 0xcf, 0x60, 0xa2, 0xc7, 0xb9, 0xc0, 0xb5, 0x9c, 0x64, 0x09, 0xe5, 0x10, 0x43, 0xb7, 0xe5, 0xc8, 0x6a, 0x8d, 0x46, 0x59, 0x78, 0xa4, 0xc8, 0xf7, 0x8e, 0x13, 0xef, 0x5b, 0x18, 0x4f, 0xe5, 0xf4, 0x6f, 0x20, 0x1f, 0xf4, 0xef, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7246 = { .name = "ecdsa_secp256r1_sha3_256_7246", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7246_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7246_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7246_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7247 for ECDSA, tcId is 265 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7247_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7247_msg[] = { 0x34, 0x34, 0x37, 0x30, 0x38, 0x38, 0x36, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7247_sig[] = { 0x6c, 0x74, 0xd1, 0x67, 0x9d, 0x87, 0x1a, 0x46, 0xa4, 0x3c, 0x3f, 0xe3, 0x75, 0xe0, 0x9d, 0x4f, 0x1b, 0x64, 0x13, 0xc5, 0x9b, 0x5e, 0x07, 0x0d, 0x79, 0x84, 0xda, 0xe0, 0xaa, 0xdb, 0xc3, 0x7e, 0xff, 0x1d, 0x22, 0x22, 0x8c, 0x9e, 0x9c, 0xf9, 0x95, 0x8d, 0x67, 0x7e, 0xed, 0x4c, 0x3a, 0x25, 0x2b, 0x10, 0x27, 0x3c, 0xe2, 0xd3, 0x60, 0x45, 0x7f, 0xaa, 0xbe, 0x7f, 0x74, 0x39, 0xc0, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7247 = { .name = "ecdsa_secp256r1_sha3_256_7247", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7247_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7247_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7247_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7248 for ECDSA, tcId is 266 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7248_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7248_msg[] = { 0x35, 0x35, 0x37, 0x36, 0x34, 0x30, 0x34, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7248_sig[] = { 0xca, 0xe2, 0x8b, 0x59, 0x2e, 0x2d, 0x5b, 0xf6, 0xf9, 0xea, 0x54, 0x1e, 0x70, 0xbc, 0xee, 0xdd, 0x07, 0xad, 0xde, 0x40, 0xbc, 0x2b, 0x5f, 0x88, 0x3d, 0x35, 0xae, 0x95, 0x60, 0xfc, 0x85, 0xc2, 0x99, 0xea, 0xff, 0xc1, 0x6f, 0x57, 0x0b, 0x78, 0x37, 0xd7, 0x41, 0x77, 0xda, 0xe6, 0xe6, 0xcf, 0xd8, 0x73, 0xea, 0x89, 0x42, 0x45, 0x81, 0xbc, 0x69, 0x0d, 0x0e, 0x49, 0xc4, 0x21, 0x84, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7248 = { .name = "ecdsa_secp256r1_sha3_256_7248", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7248_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7248_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7248_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7249 for ECDSA, tcId is 267 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7249_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7249_msg[] = { 0x36, 0x33, 0x34, 0x34, 0x39, 0x35, 0x36, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7249_sig[] = { 0x6c, 0xe5, 0x13, 0x35, 0x79, 0xdd, 0x04, 0x44, 0x47, 0x20, 0x6b, 0x9f, 0x6e, 0x16, 0x05, 0xd2, 0x7f, 0x09, 0x4b, 0x2c, 0x44, 0x66, 0xa5, 0xbf, 0x8e, 0x15, 0x78, 0x73, 0x17, 0x6b, 0xaf, 0x3a, 0xbb, 0xe3, 0x55, 0x24, 0xd9, 0xc1, 0x93, 0x6b, 0xac, 0xec, 0xb6, 0xc2, 0x70, 0xbf, 0x49, 0x4e, 0xac, 0x75, 0x93, 0x3c, 0xaa, 0x8d, 0xbb, 0x2f, 0xef, 0x30, 0xf6, 0x57, 0x2e, 0xd8, 0x66, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7249 = { .name = "ecdsa_secp256r1_sha3_256_7249", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7249_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7249_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7249_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7250 for ECDSA, tcId is 268 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7250_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7250_msg[] = { 0x34, 0x39, 0x34, 0x32, 0x38, 0x30, 0x39, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7250_sig[] = { 0x28, 0x55, 0xcf, 0x6e, 0x65, 0x81, 0x2e, 0xa2, 0x46, 0xe3, 0x66, 0xab, 0x96, 0x19, 0x70, 0xd1, 0x93, 0x87, 0x03, 0x9a, 0x93, 0xf0, 0xbd, 0x40, 0x63, 0x65, 0xd6, 0x8b, 0x03, 0x56, 0x66, 0x13, 0x1b, 0x3a, 0x95, 0x93, 0x11, 0x73, 0x80, 0x89, 0x9d, 0x5c, 0x8f, 0x8f, 0x97, 0x6a, 0xd4, 0xde, 0xe9, 0x7d, 0xb9, 0xf1, 0x22, 0x5f, 0x73, 0x5b, 0x1d, 0x41, 0xc2, 0xa1, 0x15, 0xbe, 0x93, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7250 = { .name = "ecdsa_secp256r1_sha3_256_7250", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7250_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7250_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7250_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7251 for ECDSA, tcId is 269 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7251_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7251_msg[] = { 0x32, 0x36, 0x36, 0x35, 0x38, 0x31, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7251_sig[] = { 0x90, 0xed, 0x3a, 0xa8, 0x95, 0x79, 0xb7, 0x34, 0x77, 0xe3, 0xfc, 0xba, 0x9f, 0x52, 0xa5, 0xa6, 0x4b, 0x9b, 0x6d, 0x83, 0xb4, 0x75, 0xa3, 0x88, 0x1b, 0xc0, 0xe6, 0x3d, 0x74, 0xf6, 0xbf, 0x9c, 0x04, 0xcb, 0x5e, 0x2c, 0xa1, 0xd4, 0x13, 0xb3, 0x7a, 0x71, 0x60, 0x7d, 0x5b, 0x5f, 0xa7, 0x2c, 0xcc, 0x87, 0xa2, 0xed, 0xcd, 0x5c, 0x7f, 0x30, 0xda, 0xaa, 0x94, 0x24, 0x1b, 0x74, 0x99, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7251 = { .name = "ecdsa_secp256r1_sha3_256_7251", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7251_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7251_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7251_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7252 for ECDSA, tcId is 270 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7252_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7252_msg[] = { 0x33, 0x33, 0x33, 0x32, 0x32, 0x31, 0x34, 0x31, 0x31, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7252_sig[] = { 0x05, 0x5e, 0x38, 0x18, 0x87, 0x56, 0x83, 0x1c, 0xed, 0x4b, 0x01, 0xe0, 0xf9, 0xd4, 0xdb, 0x6b, 0x02, 0x29, 0x3c, 0x7e, 0xe2, 0xc3, 0xfd, 0x47, 0x86, 0x0d, 0x38, 0x37, 0x7e, 0xe0, 0xf4, 0x19, 0x9c, 0x29, 0xf1, 0x68, 0x8f, 0x16, 0xe1, 0x11, 0x91, 0x4d, 0x9c, 0x84, 0x3c, 0x0a, 0x8f, 0x03, 0x06, 0xc1, 0xc4, 0xdd, 0xd5, 0x16, 0x7c, 0xdd, 0x54, 0x33, 0x8a, 0x4f, 0x4a, 0xb7, 0x9a, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7252 = { .name = "ecdsa_secp256r1_sha3_256_7252", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7252_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7252_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7252_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7253 for ECDSA, tcId is 271 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7253_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7253_msg[] = { 0x36, 0x31, 0x36, 0x35, 0x32, 0x37, 0x37, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7253_sig[] = { 0x06, 0xb2, 0x8c, 0xd8, 0x53, 0x8d, 0x8c, 0xc5, 0x63, 0x47, 0x3c, 0xf6, 0xc7, 0xab, 0xb5, 0x19, 0xe4, 0xc8, 0xbb, 0x4c, 0x37, 0x91, 0x5e, 0xf7, 0x65, 0x12, 0xf3, 0x7d, 0xe0, 0x2c, 0x21, 0x64, 0xa6, 0x2d, 0xc2, 0xaf, 0xb0, 0x1a, 0x1a, 0x9b, 0xc8, 0x77, 0xed, 0xd5, 0x4f, 0x25, 0xfd, 0x1f, 0x6d, 0x03, 0x78, 0xb3, 0xfb, 0xaa, 0x21, 0x9f, 0xf9, 0xef, 0x28, 0xc5, 0x60, 0xcc, 0x80, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7253 = { .name = "ecdsa_secp256r1_sha3_256_7253", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7253_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7253_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7253_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7254 for ECDSA, tcId is 272 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7254_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7254_msg[] = { 0x32, 0x33, 0x35, 0x39, 0x39, 0x35, 0x35, 0x38, 0x31, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_256_7254_sig[] = { 0xc4, 0xb9, 0x76, 0x52, 0x70, 0x2e, 0xfb, 0x1d, 0x1b, 0x67, 0xe9, 0x66, 0xe8, 0x87, 0x89, 0xef, 0xc0, 0xd9, 0xeb, 0x76, 0xd3, 0x2e, 0xfb, 0xea, 0xf9, 0xc1, 0xbc, 0xa3, 0x6b, 0x2e, 0xa9, 0xa5, 0x13, 0xe1, 0xb2, 0x35, 0x8c, 0x7a, 0x34, 0xfe, 0xf3, 0xea, 0x73, 0x8e, 0xf1, 0xa4, 0x8f, 0xab, 0x63, 0xa2, 0x61, 0x64, 0x55, 0xc8, 0x1f, 0x80, 0x95, 0x39, 0x4a, 0x22, 0x30, 0xc8, 0x52, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7254 = { .name = "ecdsa_secp256r1_sha3_256_7254", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7254_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7254_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7254_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7255 for ECDSA, tcId is 273 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7255_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7255_msg[] = { 0x32, 0x39, 0x31, 0x33, 0x36, 0x31, 0x39, 0x35, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7255_sig[] = { 0x6a, 0x86, 0x10, 0x08, 0x48, 0x56, 0x6b, 0x5f, 0x5f, 0x89, 0xc1, 0x36, 0x43, 0x51, 0x5d, 0x81, 0x39, 0x09, 0x52, 0xb6, 0xb5, 0xce, 0x56, 0xb6, 0x4f, 0xc3, 0x34, 0x9e, 0x4e, 0xdf, 0x21, 0xdf, 0xc9, 0xca, 0x4b, 0xa3, 0xa6, 0xfd, 0x50, 0x1d, 0xae, 0x99, 0x17, 0x28, 0x3a, 0x68, 0x51, 0x69, 0x2f, 0x57, 0xdf, 0xbf, 0xa4, 0x9d, 0x7a, 0x31, 0xaa, 0x93, 0x75, 0x34, 0xdf, 0x76, 0x0c, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7255 = { .name = "ecdsa_secp256r1_sha3_256_7255", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7255_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7255_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7255_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7256 for ECDSA, tcId is 274 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7256_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7256_msg[] = { 0x31, 0x36, 0x32, 0x30, 0x39, 0x30, 0x33, 0x33, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7256_sig[] = { 0xc1, 0xea, 0x20, 0x4e, 0xe7, 0x1a, 0x05, 0x02, 0xfc, 0x47, 0xde, 0x5d, 0x89, 0xfa, 0xd9, 0x8b, 0x89, 0x7b, 0x5c, 0x30, 0x8a, 0x40, 0x30, 0xb4, 0xa2, 0x9d, 0xe9, 0xcc, 0x39, 0xff, 0x17, 0x04, 0xa5, 0x26, 0x17, 0x98, 0xed, 0x96, 0x65, 0x35, 0x8c, 0x31, 0xa2, 0x36, 0x8c, 0x67, 0x05, 0xb5, 0x3b, 0x5d, 0x7d, 0x17, 0x02, 0x3c, 0x36, 0x5a, 0xe5, 0x32, 0x57, 0x35, 0x93, 0x93, 0x44, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7256 = { .name = "ecdsa_secp256r1_sha3_256_7256", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7256_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7256_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7256_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7257 for ECDSA, tcId is 275 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7257_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7257_msg[] = { 0x33, 0x33, 0x36, 0x33, 0x31, 0x30, 0x32, 0x38, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_256_7257_sig[] = { 0xb3, 0xc1, 0x3e, 0x49, 0x07, 0xaf, 0xa5, 0xa6, 0x29, 0x39, 0x8f, 0xf4, 0xfb, 0x50, 0xc4, 0x8f, 0xae, 0x69, 0xdd, 0x37, 0x21, 0xa6, 0xf6, 0x2a, 0xc1, 0x3b, 0x90, 0x1e, 0xfc, 0xb4, 0x71, 0x7c, 0x6c, 0xb8, 0xa9, 0x57, 0x28, 0x75, 0x1b, 0x62, 0x74, 0xfb, 0x57, 0xe0, 0xe8, 0xfc, 0x87, 0xbd, 0x79, 0x11, 0xb1, 0xb9, 0x4f, 0xb9, 0x2e, 0xdf, 0x09, 0xef, 0x30, 0xfc, 0xe4, 0x10, 0xef, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7257 = { .name = "ecdsa_secp256r1_sha3_256_7257", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7257_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7257_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7257_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7258 for ECDSA, tcId is 276 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7258_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7258_msg[] = { 0x36, 0x32, 0x37, 0x37, 0x34, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7258_sig[] = { 0x9f, 0xaf, 0xeb, 0xd8, 0x84, 0x15, 0x88, 0xe5, 0x61, 0x16, 0xb2, 0xaa, 0x35, 0x45, 0x57, 0xbe, 0x81, 0x46, 0x30, 0xba, 0xe5, 0x82, 0x4e, 0x18, 0x74, 0x05, 0xf3, 0x39, 0x8f, 0x36, 0xbc, 0x5e, 0xf0, 0x12, 0x64, 0xfe, 0xb4, 0x6a, 0xee, 0xfe, 0x68, 0xc9, 0x67, 0xe4, 0x39, 0x98, 0x6f, 0x14, 0xae, 0xb8, 0x5a, 0xd9, 0x9b, 0x52, 0x0d, 0xb5, 0x72, 0xaf, 0x8d, 0x13, 0x49, 0xd6, 0x96, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7258 = { .name = "ecdsa_secp256r1_sha3_256_7258", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7258_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7258_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7258_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7259 for ECDSA, tcId is 277 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7259_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7259_msg[] = { 0x33, 0x38, 0x35, 0x36, 0x37, 0x39, 0x38, 0x31, 0x34, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_256_7259_sig[] = { 0xb4, 0x57, 0x03, 0xf2, 0xc6, 0xe9, 0x5c, 0x2f, 0x23, 0x78, 0x91, 0x3c, 0xb7, 0x8e, 0xcf, 0x7a, 0x01, 0x93, 0x2b, 0x66, 0xd8, 0x5e, 0x6f, 0x68, 0x7d, 0xbb, 0x61, 0x8b, 0x05, 0x68, 0x51, 0xe8, 0xe1, 0x33, 0x33, 0x52, 0xea, 0x3a, 0xd4, 0x2d, 0x7f, 0xd9, 0xa5, 0x2a, 0x9b, 0x6d, 0xd1, 0x25, 0x28, 0x48, 0xa1, 0x80, 0x60, 0x6d, 0x30, 0x01, 0x2e, 0x14, 0x2d, 0x13, 0x51, 0x56, 0x72, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7259 = { .name = "ecdsa_secp256r1_sha3_256_7259", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7259_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7259_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7259_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7260 for ECDSA, tcId is 278 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7260_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7260_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x38, 0x30, 0x36, 0x34, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7260_sig[] = { 0x41, 0x38, 0x93, 0x4d, 0xa6, 0x32, 0x93, 0x35, 0x70, 0x28, 0x14, 0x33, 0x3f, 0x4d, 0xf8, 0xf9, 0x07, 0xdf, 0x7a, 0xa8, 0xe6, 0x84, 0xcc, 0x38, 0xe2, 0x36, 0x69, 0x61, 0x82, 0x8a, 0xd9, 0x37, 0xb9, 0x0b, 0x1b, 0x0d, 0x77, 0xfa, 0x39, 0xc8, 0x1f, 0x3d, 0xf7, 0xa4, 0x71, 0x49, 0x9e, 0xbb, 0xe4, 0x15, 0xa3, 0x72, 0xe7, 0xc9, 0x47, 0xea, 0xe8, 0x61, 0x26, 0x46, 0x08, 0x1a, 0xeb, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7260 = { .name = "ecdsa_secp256r1_sha3_256_7260", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7260_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7260_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7260_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7261 for ECDSA, tcId is 279 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7261_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7261_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x37, 0x33, 0x39, 0x34, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7261_sig[] = { 0xa5, 0x2a, 0x6c, 0xca, 0x52, 0xd6, 0x0a, 0xed, 0xc2, 0x70, 0xcf, 0xd2, 0xfb, 0x0e, 0x0c, 0x2d, 0xde, 0x1e, 0xc4, 0xbb, 0x61, 0x43, 0x4a, 0x7f, 0x11, 0xcd, 0x12, 0x6a, 0xd4, 0x6b, 0xec, 0x56, 0x1d, 0xba, 0x92, 0xbb, 0x08, 0xe5, 0x66, 0x5d, 0xa3, 0x84, 0x7a, 0xbf, 0x69, 0x5d, 0xbe, 0x18, 0xae, 0xae, 0x37, 0xd9, 0xfd, 0xcd, 0x36, 0x17, 0xfa, 0xb0, 0xc6, 0x48, 0xf4, 0x8d, 0x8c, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7261 = { .name = "ecdsa_secp256r1_sha3_256_7261", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7261_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7261_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7261_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7262 for ECDSA, tcId is 280 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7262_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7262_msg[] = { 0x35, 0x34, 0x32, 0x37, 0x31, 0x31, 0x39, 0x38, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7262_sig[] = { 0xb1, 0x53, 0x36, 0x3d, 0x48, 0xa5, 0x8d, 0x33, 0x9a, 0x7e, 0x53, 0xbf, 0xed, 0xdd, 0xb6, 0x3e, 0xa6, 0x34, 0x84, 0x56, 0x9b, 0xda, 0x26, 0x30, 0xd6, 0x1c, 0x12, 0x9a, 0x45, 0xd3, 0x52, 0xe1, 0x59, 0x2d, 0xc8, 0x76, 0x9b, 0x48, 0x34, 0xfa, 0xe7, 0x0f, 0x2c, 0xf3, 0xee, 0xa1, 0x57, 0xea, 0x96, 0x84, 0xc5, 0x6d, 0x48, 0x75, 0xd2, 0x96, 0x31, 0x3c, 0xdf, 0x12, 0xe4, 0x93, 0x9d, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7262 = { .name = "ecdsa_secp256r1_sha3_256_7262", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7262_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7262_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7262_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7263 for ECDSA, tcId is 281 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7263_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7263_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x30, 0x33, 0x34, 0x33, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7263_sig[] = { 0x35, 0x16, 0xe0, 0xc8, 0xc9, 0x71, 0x10, 0x17, 0x0a, 0x51, 0x21, 0xb5, 0x40, 0x80, 0x43, 0xf3, 0x3c, 0x6e, 0xfb, 0xef, 0x0e, 0x55, 0x56, 0x16, 0x58, 0x12, 0x71, 0x3b, 0xe6, 0x42, 0x2a, 0xe8, 0x5d, 0x80, 0xc5, 0xdf, 0xfa, 0x87, 0xd3, 0x85, 0x60, 0x83, 0xbf, 0x67, 0xbe, 0xb2, 0x7e, 0x90, 0xeb, 0xdc, 0x2e, 0x54, 0xd8, 0x47, 0x60, 0xc1, 0x58, 0x8f, 0x64, 0x32, 0xca, 0x73, 0x31, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7263 = { .name = "ecdsa_secp256r1_sha3_256_7263", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7263_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7263_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7263_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7264 for ECDSA, tcId is 282 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7264_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7264_msg[] = { 0x31, 0x39, 0x39, 0x39, 0x38, 0x32, 0x31, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7264_sig[] = { 0x90, 0x3d, 0x83, 0x97, 0x24, 0x4b, 0xfc, 0x99, 0xf2, 0xa6, 0x77, 0x50, 0x7d, 0xb4, 0x19, 0x59, 0x7f, 0xef, 0x6f, 0x0c, 0xbf, 0xd4, 0x9e, 0x0c, 0x02, 0x27, 0x09, 0xc0, 0x6c, 0x93, 0xe3, 0x58, 0xf1, 0x70, 0x5f, 0x4a, 0x19, 0xab, 0x86, 0x89, 0x3e, 0x0e, 0x02, 0x2b, 0xca, 0x90, 0x81, 0x02, 0x27, 0x64, 0xbd, 0x98, 0x6c, 0x1c, 0x89, 0x1e, 0xb8, 0x02, 0x02, 0xec, 0x46, 0xf5, 0x08, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7264 = { .name = "ecdsa_secp256r1_sha3_256_7264", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7264_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7264_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7264_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7265 for ECDSA, tcId is 283 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7265_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7265_msg[] = { 0x31, 0x39, 0x37, 0x31, 0x32, 0x30, 0x39, 0x32, 0x36, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7265_sig[] = { 0x3b, 0xa4, 0xd0, 0x1a, 0xc8, 0xcb, 0xfc, 0x4a, 0xbf, 0x84, 0x82, 0x53, 0xd0, 0x60, 0xa4, 0xe3, 0xfa, 0xed, 0xe1, 0x88, 0xfd, 0x01, 0xc2, 0x16, 0x57, 0xc2, 0x0b, 0x61, 0xd1, 0x94, 0x3f, 0x43, 0xca, 0x3b, 0x53, 0x65, 0xff, 0xbb, 0x98, 0xa5, 0x53, 0x9c, 0xbe, 0x3e, 0x71, 0xb3, 0xd9, 0xfc, 0x59, 0xb5, 0xf1, 0xd5, 0xbe, 0xe1, 0x12, 0x28, 0x70, 0xe1, 0x53, 0xde, 0xd9, 0xe1, 0xce, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7265 = { .name = "ecdsa_secp256r1_sha3_256_7265", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7265_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7265_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7265_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7266 for ECDSA, tcId is 284 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7266_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7266_msg[] = { 0x33, 0x35, 0x37, 0x31, 0x38, 0x33, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_256_7266_sig[] = { 0x74, 0x1b, 0x76, 0xd3, 0x38, 0x21, 0xc8, 0xca, 0xc2, 0x36, 0x10, 0x48, 0xf1, 0x0d, 0x28, 0x06, 0x0f, 0x43, 0xe2, 0xc3, 0x0b, 0x42, 0xb3, 0xf1, 0xb6, 0x4a, 0x43, 0x2f, 0x32, 0x2e, 0x70, 0x5c, 0x37, 0x33, 0x1c, 0xde, 0xbe, 0x15, 0x2f, 0xf8, 0x4b, 0xf9, 0x09, 0x18, 0x30, 0x69, 0xf2, 0x78, 0xf8, 0xb0, 0x77, 0x90, 0x42, 0xd5, 0x48, 0x6b, 0x2d, 0x98, 0x26, 0xb4, 0x25, 0x46, 0x95, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7266 = { .name = "ecdsa_secp256r1_sha3_256_7266", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7266_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7266_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7266_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7267 for ECDSA, tcId is 285 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7267_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7267_msg[] = { 0x38, 0x36, 0x38, 0x32, 0x32, 0x36, 0x39, 0x38, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7267_sig[] = { 0xd7, 0x98, 0x81, 0x35, 0xfd, 0x21, 0x1a, 0x2c, 0xc0, 0x9a, 0x45, 0x88, 0xf2, 0xd9, 0x1d, 0xe3, 0xa9, 0xa9, 0x49, 0x8d, 0x5c, 0x5c, 0x3e, 0xf7, 0xe7, 0x8e, 0x9b, 0xd8, 0x09, 0x06, 0xa6, 0x3f, 0x25, 0xde, 0x31, 0x62, 0xae, 0xfb, 0xd6, 0xaf, 0xed, 0xf0, 0x11, 0x16, 0xb4, 0xe6, 0x9d, 0x49, 0x8e, 0xae, 0xfb, 0xf2, 0x95, 0x99, 0xa7, 0xe0, 0xab, 0x60, 0x61, 0x4d, 0x64, 0xfb, 0x3d, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7267 = { .name = "ecdsa_secp256r1_sha3_256_7267", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7267_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7267_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7267_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7268 for ECDSA, tcId is 286 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7268_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7268_msg[] = { 0x32, 0x35, 0x34, 0x38, 0x38, 0x35, 0x36, 0x30, 0x33, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_256_7268_sig[] = { 0x14, 0x58, 0x0c, 0xf3, 0xaa, 0xe5, 0xeb, 0xbb, 0x74, 0xfe, 0xd0, 0x9f, 0xf1, 0x93, 0xf3, 0x47, 0xf6, 0x9a, 0xc5, 0xb3, 0x84, 0x35, 0xee, 0xb7, 0xc3, 0x8a, 0x0f, 0xd9, 0x5f, 0x5b, 0x7a, 0xd8, 0xfc, 0xd9, 0x23, 0xfd, 0xbd, 0xce, 0xcb, 0x3e, 0xce, 0x3b, 0xd0, 0x06, 0x9c, 0x81, 0x39, 0x6b, 0x4a, 0xcf, 0x63, 0x28, 0x64, 0x8f, 0xbe, 0x53, 0x24, 0xae, 0x0c, 0x5a, 0x27, 0x6f, 0xd8, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7268 = { .name = "ecdsa_secp256r1_sha3_256_7268", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7268_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7268_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7268_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7269 for ECDSA, tcId is 287 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7269_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7269_msg[] = { 0x34, 0x39, 0x39, 0x35, 0x37, 0x30, 0x31, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_256_7269_sig[] = { 0x13, 0x08, 0x21, 0xbb, 0x00, 0xd0, 0xf4, 0x41, 0x6e, 0xf0, 0x67, 0x61, 0xaa, 0x28, 0x3d, 0x35, 0x38, 0x3c, 0xc2, 0xd4, 0x6a, 0xd6, 0xbe, 0x76, 0xc9, 0x6d, 0x83, 0x9a, 0xdc, 0xe2, 0xdb, 0xb6, 0xd9, 0xde, 0xef, 0x38, 0xe7, 0xd0, 0xf1, 0x36, 0xcc, 0x53, 0x5f, 0x1f, 0x89, 0x31, 0xf2, 0x71, 0xcb, 0xf0, 0xb0, 0xd9, 0xe4, 0xe2, 0x0f, 0xc8, 0xdb, 0x7a, 0x1f, 0xb3, 0xc6, 0x16, 0xbb, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7269 = { .name = "ecdsa_secp256r1_sha3_256_7269", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7269_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7269_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7269_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7270 for ECDSA, tcId is 288 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7270_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7270_msg[] = { 0x32, 0x34, 0x35, 0x36, 0x36, 0x38, 0x31, 0x37, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_256_7270_sig[] = { 0xab, 0x49, 0x91, 0xca, 0xd9, 0x03, 0xfc, 0x45, 0xf6, 0xaf, 0xe2, 0x2b, 0x93, 0x96, 0x40, 0x73, 0x6a, 0xec, 0x97, 0x88, 0xb9, 0xd8, 0xf9, 0x41, 0x09, 0x34, 0x36, 0x49, 0xd6, 0x32, 0x76, 0x95, 0xab, 0x12, 0x6d, 0xec, 0xd1, 0x74, 0x3c, 0xaf, 0x4b, 0x46, 0x1a, 0x9c, 0x80, 0x29, 0xcf, 0x12, 0x30, 0xa5, 0x4a, 0x01, 0x80, 0xe5, 0x22, 0x5a, 0x79, 0xc0, 0x75, 0x16, 0x7c, 0x29, 0x11, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7270 = { .name = "ecdsa_secp256r1_sha3_256_7270", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7270_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7270_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7270_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7271 for ECDSA, tcId is 289 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7271_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7271_msg[] = { 0x34, 0x31, 0x38, 0x35, 0x33, 0x37, 0x31, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7271_sig[] = { 0xdc, 0x3b, 0x75, 0x6b, 0x20, 0xb9, 0x06, 0xf0, 0x2d, 0xc0, 0x3b, 0x46, 0xbb, 0xef, 0x56, 0x70, 0x8b, 0xe6, 0x49, 0xbb, 0x4b, 0x23, 0xa4, 0x1a, 0xc4, 0x33, 0x3c, 0xd7, 0x9d, 0x72, 0x74, 0x9d, 0x30, 0x9d, 0xfe, 0x06, 0x23, 0x03, 0x4d, 0x64, 0x41, 0x33, 0x2a, 0xeb, 0xb3, 0x27, 0xbf, 0x5b, 0x0f, 0xb2, 0xf3, 0xd6, 0xdf, 0x5a, 0x6c, 0x02, 0xd8, 0x36, 0xfc, 0x90, 0x8e, 0x37, 0xb0, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7271 = { .name = "ecdsa_secp256r1_sha3_256_7271", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7271_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7271_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7271_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7272 for ECDSA, tcId is 290 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7272_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7272_msg[] = { 0x37, 0x32, 0x37, 0x38, 0x34, 0x39, 0x30, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_256_7272_sig[] = { 0xd7, 0x33, 0xb4, 0x39, 0x1a, 0x48, 0x76, 0xd3, 0x0a, 0xcd, 0xb9, 0x59, 0x77, 0xe4, 0xfd, 0xfd, 0xed, 0x20, 0x1e, 0x69, 0x8e, 0x42, 0xbe, 0x54, 0xc5, 0xc6, 0x90, 0xb4, 0xc8, 0x3c, 0x90, 0x36, 0xf5, 0x55, 0x65, 0x47, 0x5d, 0xc5, 0x8e, 0x46, 0x8b, 0x4a, 0xae, 0xe6, 0x0e, 0xda, 0x22, 0x47, 0x70, 0xc5, 0xb3, 0x05, 0x17, 0x94, 0x4c, 0x06, 0x57, 0x58, 0xcd, 0x51, 0x55, 0xae, 0x12, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7272 = { .name = "ecdsa_secp256r1_sha3_256_7272", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7272_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7272_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_256_7272_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7273 for ECDSA, tcId is 291 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7273_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7273_msg[] = { 0x31, 0x35, 0x36, 0x32, 0x38, 0x31, 0x39, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_256_7273_sig[] = { 0xaa, 0x9e, 0xa0, 0x86, 0xe3, 0x01, 0x72, 0x8e, 0x0c, 0xac, 0x75, 0x68, 0xbf, 0x64, 0x09, 0x5b, 0x9f, 0x51, 0xd0, 0x70, 0xed, 0xb4, 0x66, 0x79, 0xa9, 0x98, 0x35, 0x00, 0x24, 0x5e, 0x34, 0x68, 0x3a, 0xeb, 0x24, 0x15, 0xf1, 0x06, 0x25, 0xc3, 0xa4, 0xe8, 0x18, 0xda, 0x7d, 0xde, 0xce, 0xa2, 0x7f, 0x56, 0xf0, 0xa3, 0x93, 0x92, 0x0f, 0x6a, 0x5d, 0x2f, 0x4f, 0x30, 0x54, 0xe2, 0x13, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7273 = { .name = "ecdsa_secp256r1_sha3_256_7273", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7273_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7273_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_256_7273_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7274 for ECDSA, tcId is 292 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7274_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7274_msg[] = { 0x32, 0x31, 0x38, 0x37, 0x39, 0x39, 0x32, 0x38, 0x33, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_256_7274_sig[] = { 0xd5, 0xa6, 0xff, 0xdd, 0xec, 0xe9, 0x18, 0xc5, 0xfe, 0x4e, 0x7d, 0x3a, 0x11, 0x34, 0x46, 0x12, 0xbf, 0xb0, 0xcd, 0x27, 0x35, 0xce, 0x07, 0x1d, 0xfa, 0xde, 0x01, 0x24, 0x4c, 0x3b, 0x30, 0x3c, 0x0f, 0xf4, 0xee, 0x3a, 0x70, 0xb9, 0x98, 0x4e, 0x49, 0x27, 0x7b, 0x3b, 0x15, 0x25, 0x2c, 0x9f, 0x25, 0x5b, 0x9e, 0xd5, 0x1c, 0x7a, 0x44, 0x73, 0xcf, 0x55, 0xa7, 0x95, 0x50, 0x83, 0xa9, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7274 = { .name = "ecdsa_secp256r1_sha3_256_7274", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7274_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7274_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_256_7274_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7275 for ECDSA, tcId is 293 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7275_pubkey[] = { 0x58, 0xe7, 0x1f, 0xfb, 0xfd, 0x2e, 0xab, 0xf4, 0xe4, 0xa4, 0x65, 0xf6, 0x81, 0x00, 0xf3, 0xd2, 0x3d, 0x47, 0x02, 0x53, 0x7d, 0xfc, 0xca, 0x5e, 0xe8, 0x9d, 0x18, 0xa7, 0x5a, 0xd7, 0xf7, 0x56, 0x16, 0x53, 0x5d, 0x3b, 0x19, 0xf0, 0x50, 0xe4, 0x43, 0xbf, 0x5d, 0xc3, 0x8f, 0x7f, 0x7c, 0xda, 0x9d, 0xf3, 0x79, 0x8d, 0x4a, 0x2f, 0x65, 0xa4, 0x13, 0xa9, 0xaf, 0x5d, 0xf0, 0x02, 0x82, 0x8c, }; static const unsigned char ecdsa_secp256r1_sha3_256_7275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7275_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7275 = { .name = "ecdsa_secp256r1_sha3_256_7275", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7275_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7275_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7275_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 293 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7276 for ECDSA, tcId is 294 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7276_pubkey[] = { 0x58, 0xe7, 0x1f, 0xfb, 0xfd, 0x2e, 0xab, 0xf4, 0xe4, 0xa4, 0x65, 0xf6, 0x81, 0x00, 0xf3, 0xd2, 0x3d, 0x47, 0x02, 0x53, 0x7d, 0xfc, 0xca, 0x5e, 0xe8, 0x9d, 0x18, 0xa7, 0x5a, 0xd7, 0xf7, 0x56, 0x16, 0x53, 0x5d, 0x3b, 0x19, 0xf0, 0x50, 0xe4, 0x43, 0xbf, 0x5d, 0xc3, 0x8f, 0x7f, 0x7c, 0xda, 0x9d, 0xf3, 0x79, 0x8d, 0x4a, 0x2f, 0x65, 0xa4, 0x13, 0xa9, 0xaf, 0x5d, 0xf0, 0x02, 0x82, 0x8c, }; static const unsigned char ecdsa_secp256r1_sha3_256_7276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7276_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7276 = { .name = "ecdsa_secp256r1_sha3_256_7276", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7276_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7276_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7276_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 294 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7277 for ECDSA, tcId is 295 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7277_pubkey[] = { 0x0a, 0x78, 0xda, 0xd1, 0x70, 0x1d, 0x05, 0x51, 0x08, 0x9d, 0x3a, 0x0e, 0xe3, 0x29, 0xa2, 0x2a, 0x9d, 0x8b, 0xf4, 0x26, 0x3c, 0x8a, 0x50, 0xe0, 0x66, 0x8d, 0x24, 0x30, 0x6c, 0xf0, 0x24, 0x0b, 0x03, 0x95, 0x0b, 0x34, 0xbb, 0x63, 0x8c, 0x68, 0x3c, 0x16, 0x7a, 0x00, 0xac, 0x06, 0x23, 0x2c, 0x2e, 0xf1, 0x71, 0x8d, 0x3e, 0xd7, 0xeb, 0xcf, 0xc1, 0x45, 0xa4, 0x10, 0x31, 0xb0, 0x4e, 0xe0, }; static const unsigned char ecdsa_secp256r1_sha3_256_7277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7277_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7277 = { .name = "ecdsa_secp256r1_sha3_256_7277", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7277_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7277_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7277_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 295 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7278 for ECDSA, tcId is 296 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7278_pubkey[] = { 0xe5, 0xb0, 0x27, 0xe1, 0xf5, 0xda, 0xf6, 0xe5, 0x2e, 0xca, 0x80, 0xe3, 0x5b, 0xe2, 0x86, 0x51, 0xbf, 0x84, 0x9f, 0xf3, 0xde, 0x70, 0xd2, 0xa3, 0x4c, 0x0d, 0x78, 0x2b, 0x5a, 0xaa, 0xd6, 0x85, 0x3c, 0x8e, 0x2c, 0xff, 0x9b, 0x02, 0xc9, 0x0b, 0xf4, 0xd7, 0xd4, 0x9c, 0x7f, 0xf2, 0xa2, 0x61, 0xd2, 0x6a, 0xed, 0x7d, 0x40, 0x22, 0xb4, 0x13, 0x92, 0xc8, 0x5a, 0x85, 0x7d, 0x43, 0x45, 0x79, }; static const unsigned char ecdsa_secp256r1_sha3_256_7278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7278_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7278 = { .name = "ecdsa_secp256r1_sha3_256_7278", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7278_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7278_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7278_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 296 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7279 for ECDSA, tcId is 297 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7279_pubkey[] = { 0x24, 0xc5, 0x46, 0x2b, 0xb7, 0xd1, 0xf1, 0x76, 0x3c, 0xe2, 0x8b, 0x3a, 0x9f, 0x85, 0x1d, 0x86, 0xd7, 0xcb, 0x4c, 0x5f, 0x7c, 0x61, 0xed, 0x9e, 0xd7, 0xd3, 0x97, 0xf1, 0xa9, 0x20, 0xff, 0xc9, 0x94, 0x60, 0x93, 0x6b, 0x69, 0x19, 0xf8, 0x86, 0x46, 0x84, 0x4b, 0x27, 0x50, 0x35, 0x55, 0x26, 0x2e, 0xf8, 0xa8, 0x1e, 0x67, 0x04, 0xf4, 0x3e, 0x07, 0xde, 0xda, 0x12, 0xaa, 0x06, 0xf4, 0xae, }; static const unsigned char ecdsa_secp256r1_sha3_256_7279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7279_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7279 = { .name = "ecdsa_secp256r1_sha3_256_7279", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7279_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7279_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7279_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 297 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7280 for ECDSA, tcId is 298 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7280_pubkey[] = { 0x62, 0x26, 0xbb, 0x83, 0xd3, 0xce, 0xf0, 0x1a, 0xe2, 0x7b, 0x7d, 0x04, 0xa9, 0x05, 0x39, 0x76, 0x82, 0xd5, 0xe4, 0xa5, 0x96, 0x4b, 0x51, 0x60, 0xdb, 0xa8, 0xa0, 0x55, 0xa2, 0xe2, 0xae, 0xca, 0x7a, 0x36, 0x30, 0xd4, 0x9d, 0x99, 0x9d, 0x0e, 0x85, 0xe5, 0x9f, 0xe7, 0x62, 0xc9, 0xc5, 0x67, 0xcb, 0x76, 0x7c, 0xa2, 0xa0, 0xa7, 0xa7, 0x75, 0x6a, 0xc9, 0x17, 0xe6, 0x08, 0x5b, 0x18, 0xe1, }; static const unsigned char ecdsa_secp256r1_sha3_256_7280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7280_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7280 = { .name = "ecdsa_secp256r1_sha3_256_7280", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7280_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7280_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7280_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 298 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7281 for ECDSA, tcId is 299 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7281_pubkey[] = { 0x65, 0xaf, 0x8c, 0x23, 0x31, 0x0f, 0xe0, 0x60, 0xa0, 0x9e, 0x73, 0x66, 0xd8, 0x2e, 0xa3, 0x5f, 0x48, 0xf8, 0xe2, 0xc6, 0x82, 0xea, 0xb3, 0x78, 0x3d, 0xe7, 0xd9, 0x71, 0x1f, 0x59, 0x23, 0xbe, 0xbe, 0xba, 0xbf, 0xaf, 0x08, 0x47, 0x41, 0xfc, 0x80, 0x6b, 0x96, 0x98, 0xef, 0x87, 0xc9, 0x45, 0x92, 0x46, 0xb7, 0x84, 0x6f, 0xa1, 0x74, 0x00, 0x09, 0x4a, 0xd0, 0xbb, 0x22, 0x2c, 0x2c, 0xb6, }; static const unsigned char ecdsa_secp256r1_sha3_256_7281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7281_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7281 = { .name = "ecdsa_secp256r1_sha3_256_7281", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7281_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7281_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7281_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 299 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7282 for ECDSA, tcId is 300 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7282_pubkey[] = { 0xf2, 0x6e, 0xa8, 0x76, 0xed, 0xab, 0x91, 0xb4, 0x07, 0x0c, 0x5e, 0xc6, 0xe3, 0x66, 0x63, 0xff, 0xf8, 0x6f, 0x1f, 0xe5, 0xef, 0x73, 0x93, 0x8b, 0x22, 0x77, 0x66, 0xb1, 0x80, 0x57, 0x73, 0xcd, 0x07, 0x05, 0x95, 0x06, 0xa5, 0x29, 0x6d, 0x57, 0x66, 0xd4, 0xc5, 0x5c, 0x06, 0xee, 0xbc, 0xcf, 0x81, 0xc0, 0x4e, 0x52, 0xcb, 0x14, 0xc3, 0xb1, 0x98, 0xa1, 0x88, 0x08, 0xd5, 0x70, 0xd4, 0x17, }; static const unsigned char ecdsa_secp256r1_sha3_256_7282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7282_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7282 = { .name = "ecdsa_secp256r1_sha3_256_7282", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7282_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7282_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7282_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 300 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7283 for ECDSA, tcId is 301 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7283_pubkey[] = { 0x78, 0x11, 0xe1, 0x66, 0x75, 0x79, 0x90, 0x76, 0xc4, 0xf5, 0xea, 0x78, 0xe5, 0xf8, 0x33, 0xbe, 0x46, 0x49, 0x92, 0x51, 0x65, 0x67, 0x20, 0x57, 0x44, 0x3c, 0x43, 0x6c, 0xf4, 0x01, 0x7e, 0x0d, 0x8e, 0x37, 0x7d, 0x53, 0xfe, 0xcd, 0xf1, 0x55, 0x6b, 0x1c, 0xdf, 0xdd, 0x82, 0x70, 0xd9, 0x20, 0xcf, 0x7c, 0x6d, 0x32, 0xc9, 0x46, 0xaf, 0x2d, 0xb4, 0xc8, 0x64, 0xfa, 0xec, 0x6b, 0x1e, 0xba, }; static const unsigned char ecdsa_secp256r1_sha3_256_7283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7283_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7283 = { .name = "ecdsa_secp256r1_sha3_256_7283", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7283_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7283_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7283_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 301 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7284 for ECDSA, tcId is 302 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7284_pubkey[] = { 0x78, 0x11, 0xe1, 0x66, 0x75, 0x79, 0x90, 0x76, 0xc4, 0xf5, 0xea, 0x78, 0xe5, 0xf8, 0x33, 0xbe, 0x46, 0x49, 0x92, 0x51, 0x65, 0x67, 0x20, 0x57, 0x44, 0x3c, 0x43, 0x6c, 0xf4, 0x01, 0x7e, 0x0d, 0x8e, 0x37, 0x7d, 0x53, 0xfe, 0xcd, 0xf1, 0x55, 0x6b, 0x1c, 0xdf, 0xdd, 0x82, 0x70, 0xd9, 0x20, 0xcf, 0x7c, 0x6d, 0x32, 0xc9, 0x46, 0xaf, 0x2d, 0xb4, 0xc8, 0x64, 0xfa, 0xec, 0x6b, 0x1e, 0xba, }; static const unsigned char ecdsa_secp256r1_sha3_256_7284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7284_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7284 = { .name = "ecdsa_secp256r1_sha3_256_7284", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7284_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7284_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7284_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 302 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7285 for ECDSA, tcId is 303 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7285_pubkey[] = { 0x03, 0xc8, 0x40, 0xf0, 0xfc, 0xdf, 0xbe, 0x9c, 0xba, 0x93, 0x17, 0x26, 0xd5, 0x4a, 0x1f, 0x95, 0x53, 0x73, 0x2b, 0xe8, 0x32, 0xd8, 0xab, 0x70, 0x1a, 0xeb, 0xad, 0xe4, 0x52, 0x4b, 0x73, 0x6d, 0x94, 0x23, 0x79, 0xf1, 0x0b, 0x74, 0xb7, 0x0e, 0xc5, 0xa0, 0x6d, 0x31, 0xc7, 0xb6, 0x5e, 0xca, 0x6f, 0x77, 0xa0, 0x47, 0xe2, 0x57, 0x36, 0xaa, 0xce, 0x32, 0xcf, 0x46, 0xed, 0xf9, 0xe9, 0x0b, }; static const unsigned char ecdsa_secp256r1_sha3_256_7285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7285_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7285 = { .name = "ecdsa_secp256r1_sha3_256_7285", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7285_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7285_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7285_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 303 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7286 for ECDSA, tcId is 304 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7286_pubkey[] = { 0x4b, 0x24, 0x75, 0xae, 0x91, 0x1a, 0xb3, 0xe3, 0x33, 0x4b, 0xd5, 0xac, 0xef, 0xce, 0x22, 0x25, 0xe3, 0x5a, 0xd7, 0xf4, 0x52, 0x3d, 0xf5, 0x2c, 0x13, 0xf5, 0x81, 0xb8, 0x78, 0x98, 0xcc, 0xa1, 0x95, 0x57, 0x5d, 0x52, 0x96, 0xd1, 0xbd, 0x97, 0xef, 0xaa, 0x74, 0xa1, 0x2c, 0xc0, 0xdf, 0x3d, 0x55, 0x6a, 0x61, 0x4f, 0x17, 0x6c, 0x25, 0xb0, 0x63, 0x48, 0xaf, 0x8d, 0x30, 0x4e, 0xa6, 0xc7, }; static const unsigned char ecdsa_secp256r1_sha3_256_7286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7286_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7286 = { .name = "ecdsa_secp256r1_sha3_256_7286", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7286_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7286_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7286_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 304 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7287 for ECDSA, tcId is 305 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7287_pubkey[] = { 0x21, 0x1c, 0xc2, 0x6f, 0x1f, 0x60, 0x99, 0x8b, 0xcc, 0xfc, 0x6a, 0xe6, 0x5c, 0xfe, 0x8f, 0x1b, 0xf2, 0xe7, 0x0f, 0xc2, 0x8b, 0x5a, 0xaf, 0x8e, 0x2a, 0x29, 0x7f, 0x3f, 0x44, 0x60, 0x66, 0x2c, 0x3f, 0xfc, 0x8d, 0xbd, 0x9b, 0x58, 0xa3, 0x41, 0xd5, 0x16, 0x0f, 0xf0, 0x3b, 0x7a, 0x50, 0x36, 0x49, 0x96, 0x7a, 0x9a, 0x93, 0x7e, 0xdb, 0xbf, 0xc4, 0xbf, 0x15, 0x4a, 0xa6, 0xe1, 0xa0, 0xae, }; static const unsigned char ecdsa_secp256r1_sha3_256_7287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7287_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7287 = { .name = "ecdsa_secp256r1_sha3_256_7287", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7287_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7287_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7287_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 305 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7288 for ECDSA, tcId is 306 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7288_pubkey[] = { 0x0a, 0x7b, 0xb5, 0x20, 0xf0, 0xcc, 0x16, 0x28, 0x48, 0x31, 0x16, 0x7d, 0x36, 0x22, 0xb2, 0x76, 0x48, 0x7a, 0x7b, 0xbf, 0x41, 0xbf, 0x91, 0x1d, 0x36, 0x7b, 0x48, 0x4f, 0x1b, 0xd8, 0x1a, 0x0c, 0x0c, 0x30, 0xd5, 0x73, 0xd2, 0x7d, 0x44, 0xe6, 0x8f, 0xb9, 0xa1, 0x09, 0xac, 0x7f, 0xaa, 0xd2, 0xc5, 0x7a, 0xe0, 0x9d, 0xe3, 0x0d, 0x82, 0x03, 0xab, 0x40, 0x9c, 0xd3, 0xca, 0x63, 0xaf, 0x3a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7288_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7288 = { .name = "ecdsa_secp256r1_sha3_256_7288", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7288_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7288_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7288_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 306 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7289 for ECDSA, tcId is 307 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7289_pubkey[] = { 0xd5, 0x28, 0xa4, 0x8f, 0xb3, 0x91, 0xdd, 0x49, 0x0d, 0x3f, 0x32, 0x81, 0x05, 0x70, 0x61, 0x3d, 0x16, 0xfe, 0x27, 0x09, 0xb8, 0x22, 0x45, 0x02, 0x77, 0x05, 0xe3, 0x59, 0x54, 0x9b, 0x0e, 0x15, 0x5f, 0x4a, 0x5a, 0xc2, 0x79, 0xd5, 0x5c, 0x9e, 0xa6, 0x37, 0x1f, 0x56, 0x40, 0x3f, 0x81, 0x6e, 0xe7, 0x23, 0x63, 0x29, 0x11, 0xdf, 0x98, 0x04, 0xf0, 0x1c, 0x7f, 0xa2, 0x89, 0xeb, 0x23, 0x61, }; static const unsigned char ecdsa_secp256r1_sha3_256_7289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7289_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7289 = { .name = "ecdsa_secp256r1_sha3_256_7289", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7289_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7289_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7289_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 307 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7290 for ECDSA, tcId is 308 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7290_pubkey[] = { 0xd1, 0xf0, 0x35, 0xf0, 0xa2, 0x8c, 0x0c, 0x49, 0xe6, 0x24, 0x8f, 0xf3, 0x73, 0x87, 0x4d, 0xa5, 0xb2, 0x6b, 0x47, 0xe7, 0xcd, 0x89, 0xc1, 0xb3, 0xbd, 0x15, 0x40, 0x2d, 0xc9, 0xbd, 0x7b, 0x62, 0x7a, 0x18, 0x2a, 0x18, 0x84, 0xf3, 0x02, 0x22, 0x97, 0x65, 0x79, 0xd7, 0x66, 0xda, 0x68, 0x1a, 0x7f, 0x31, 0xfe, 0x55, 0xb1, 0x4e, 0x77, 0x0d, 0xd0, 0xf3, 0xf1, 0xc0, 0x96, 0x54, 0xb2, 0x9c, }; static const unsigned char ecdsa_secp256r1_sha3_256_7290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7290_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7290 = { .name = "ecdsa_secp256r1_sha3_256_7290", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7290_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7290_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7290_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 308 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7291 for ECDSA, tcId is 309 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7291_pubkey[] = { 0x07, 0xdf, 0x49, 0x50, 0x50, 0xdc, 0xb1, 0x73, 0x8f, 0x4e, 0x2a, 0xac, 0x5b, 0xa2, 0xc8, 0xa1, 0xf8, 0xe0, 0x9d, 0x26, 0x2a, 0x3b, 0x00, 0x18, 0x65, 0xaf, 0x3f, 0xba, 0x08, 0x6d, 0x7a, 0xa1, 0xb5, 0x96, 0xcd, 0xe4, 0x82, 0xa6, 0xbf, 0xdc, 0x5e, 0x49, 0xe4, 0x06, 0x9f, 0xce, 0x7c, 0x2d, 0x11, 0x45, 0xd1, 0xe0, 0xf7, 0xfe, 0xd6, 0x3f, 0x9e, 0x84, 0x84, 0x46, 0xfa, 0xe4, 0x79, 0xed, }; static const unsigned char ecdsa_secp256r1_sha3_256_7291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7291_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7291 = { .name = "ecdsa_secp256r1_sha3_256_7291", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7291_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7291_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7291_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 309 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7292 for ECDSA, tcId is 310 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7292_pubkey[] = { 0xcc, 0xd7, 0x0d, 0x87, 0x30, 0x53, 0x2b, 0x28, 0xc7, 0x8c, 0x27, 0xdb, 0xd3, 0x04, 0x3f, 0xdd, 0xe3, 0xe9, 0x6f, 0x10, 0xed, 0xe4, 0x06, 0x58, 0x2c, 0x9c, 0xba, 0x26, 0x18, 0xdc, 0x03, 0xc1, 0x95, 0xd5, 0x92, 0xc3, 0x66, 0xbd, 0x18, 0x96, 0x83, 0xfd, 0x58, 0x1d, 0xde, 0x22, 0xfb, 0x91, 0x17, 0x6b, 0x55, 0xd9, 0x4e, 0x48, 0xdd, 0x81, 0x46, 0x72, 0x34, 0x77, 0x7d, 0x8c, 0x22, 0x3a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7292_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7292 = { .name = "ecdsa_secp256r1_sha3_256_7292", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7292_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7292_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7292_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 310 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7293 for ECDSA, tcId is 311 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7293_pubkey[] = { 0xcc, 0xd7, 0x0d, 0x87, 0x30, 0x53, 0x2b, 0x28, 0xc7, 0x8c, 0x27, 0xdb, 0xd3, 0x04, 0x3f, 0xdd, 0xe3, 0xe9, 0x6f, 0x10, 0xed, 0xe4, 0x06, 0x58, 0x2c, 0x9c, 0xba, 0x26, 0x18, 0xdc, 0x03, 0xc1, 0x95, 0xd5, 0x92, 0xc3, 0x66, 0xbd, 0x18, 0x96, 0x83, 0xfd, 0x58, 0x1d, 0xde, 0x22, 0xfb, 0x91, 0x17, 0x6b, 0x55, 0xd9, 0x4e, 0x48, 0xdd, 0x81, 0x46, 0x72, 0x34, 0x77, 0x7d, 0x8c, 0x22, 0x3a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7293_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7293 = { .name = "ecdsa_secp256r1_sha3_256_7293", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7293_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7293_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7293_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 311 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7294 for ECDSA, tcId is 312 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7294_pubkey[] = { 0xfc, 0x13, 0xb3, 0x7b, 0xab, 0xa1, 0x82, 0xba, 0x13, 0xdf, 0xc8, 0xca, 0x74, 0xf5, 0x89, 0x64, 0x83, 0x37, 0x8a, 0xa9, 0xbd, 0x6f, 0x0a, 0xa9, 0x31, 0x87, 0x7d, 0xdc, 0x5e, 0x77, 0x26, 0x2f, 0x1b, 0xf8, 0xb9, 0xcf, 0xdc, 0xbb, 0xe0, 0xd6, 0x2e, 0xed, 0x81, 0xe5, 0x87, 0x43, 0x10, 0xbd, 0x51, 0x17, 0x8d, 0x1c, 0x6d, 0x01, 0xb6, 0x92, 0x9a, 0x34, 0x5d, 0x94, 0x19, 0x0f, 0xdf, 0x3b, }; static const unsigned char ecdsa_secp256r1_sha3_256_7294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7294_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7294 = { .name = "ecdsa_secp256r1_sha3_256_7294", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7294_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7294_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7294_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 312 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7295 for ECDSA, tcId is 313 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7295_pubkey[] = { 0x20, 0xad, 0xbb, 0x6c, 0xb9, 0xe0, 0x9c, 0xe8, 0xee, 0x4b, 0x6b, 0xdb, 0xc2, 0xe8, 0x04, 0x7a, 0x0b, 0x9d, 0xc8, 0x11, 0xeb, 0x41, 0x5a, 0x2a, 0x25, 0x89, 0x06, 0xef, 0xbd, 0x8a, 0x88, 0xce, 0xc1, 0x6b, 0x21, 0x11, 0xb5, 0x99, 0x1d, 0x98, 0xdc, 0x4c, 0x93, 0x5d, 0xa6, 0x19, 0xb5, 0x5f, 0x78, 0x4c, 0x79, 0xf0, 0x00, 0x83, 0x0d, 0x51, 0x4f, 0xfe, 0xb6, 0xad, 0x3f, 0xcf, 0x06, 0x40, }; static const unsigned char ecdsa_secp256r1_sha3_256_7295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7295_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7295 = { .name = "ecdsa_secp256r1_sha3_256_7295", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7295_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7295_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7295_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 313 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7296 for ECDSA, tcId is 314 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7296_pubkey[] = { 0xf0, 0x33, 0xaa, 0x21, 0x1c, 0xf1, 0x1e, 0xe6, 0x1c, 0x24, 0x75, 0x67, 0x97, 0x4f, 0xb8, 0x66, 0x7c, 0x78, 0xf1, 0x3a, 0x35, 0xbc, 0x2e, 0x6b, 0xea, 0xd4, 0x43, 0x6c, 0x26, 0x1f, 0x14, 0x4d, 0x99, 0xb4, 0xd0, 0x7b, 0x6c, 0xe8, 0x00, 0x8f, 0xec, 0xf8, 0xa4, 0xc4, 0xaf, 0x56, 0x1b, 0x97, 0x2b, 0x00, 0xe6, 0x34, 0x43, 0xa2, 0xf2, 0x00, 0x38, 0xee, 0x84, 0xed, 0x0c, 0x23, 0x8a, 0x3c, }; static const unsigned char ecdsa_secp256r1_sha3_256_7296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7296_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7296 = { .name = "ecdsa_secp256r1_sha3_256_7296", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7296_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7296_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7296_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 314 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7297 for ECDSA, tcId is 315 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7297_pubkey[] = { 0xbe, 0xf2, 0x53, 0x8d, 0xa3, 0xd0, 0x71, 0x58, 0x79, 0x15, 0x56, 0xb2, 0xd0, 0x29, 0x7c, 0xa9, 0xc1, 0xb3, 0x06, 0x45, 0x9c, 0x93, 0x23, 0xce, 0x7d, 0x07, 0xa2, 0x12, 0x82, 0xde, 0x1a, 0xce, 0x4e, 0x40, 0x0c, 0x8e, 0x4e, 0xb5, 0x77, 0x51, 0xfa, 0xa0, 0xdd, 0xe6, 0xbb, 0xeb, 0xf9, 0x6f, 0xaa, 0xac, 0x9e, 0xfc, 0x80, 0xe3, 0xde, 0x76, 0x8f, 0xb4, 0xf5, 0xa3, 0x7f, 0x95, 0xea, 0xd7, }; static const unsigned char ecdsa_secp256r1_sha3_256_7297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7297_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7297 = { .name = "ecdsa_secp256r1_sha3_256_7297", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7297_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7297_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7297_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 315 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7298 for ECDSA, tcId is 316 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7298_pubkey[] = { 0xbf, 0x25, 0x70, 0xb5, 0x8f, 0x38, 0x18, 0x3f, 0xab, 0xca, 0x3c, 0xa7, 0x22, 0x55, 0xbd, 0x46, 0x51, 0xcb, 0xb7, 0xe8, 0x29, 0x22, 0x87, 0x80, 0x9b, 0xd8, 0xe5, 0xc2, 0x85, 0xd2, 0x4a, 0x53, 0x2f, 0x85, 0x9b, 0x7f, 0x75, 0xc2, 0xf5, 0xe8, 0xd3, 0x79, 0x1a, 0x5c, 0xcb, 0x60, 0xfa, 0x38, 0x88, 0x89, 0x5c, 0x63, 0x23, 0x7c, 0x9e, 0xa6, 0x5e, 0x43, 0xf8, 0x75, 0x23, 0xe1, 0x04, 0xe5, }; static const unsigned char ecdsa_secp256r1_sha3_256_7298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7298_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xa8, 0xce, 0x48, 0x3a, 0x42, 0xfb, 0x34, 0x62, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x83, 0xca, 0x56, 0x5b, 0x27, 0x24, 0xcc, 0xa9, 0xac, 0x14, 0x41, 0x1d, 0xcb, 0x8e, 0xe7, 0xe8, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7298 = { .name = "ecdsa_secp256r1_sha3_256_7298", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7298_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7298_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7298_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 316 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7299 for ECDSA, tcId is 317 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7299_pubkey[] = { 0x9b, 0xa8, 0xf1, 0x47, 0x33, 0x22, 0x70, 0x98, 0x7e, 0x5b, 0xaa, 0xb2, 0xab, 0x0a, 0x4e, 0xbc, 0x99, 0x68, 0xeb, 0x86, 0x82, 0xc2, 0x87, 0x22, 0x66, 0xa2, 0x2b, 0x43, 0xc2, 0xcf, 0x55, 0xf7, 0x72, 0x8d, 0x55, 0x2f, 0xc6, 0x5b, 0x5a, 0x3c, 0x7c, 0xee, 0x18, 0x87, 0x6f, 0x1d, 0x8b, 0x46, 0xae, 0x60, 0x15, 0x3a, 0xec, 0x3b, 0x8a, 0x2b, 0x2c, 0x25, 0x27, 0x97, 0x9f, 0x4a, 0x7d, 0x29, }; static const unsigned char ecdsa_secp256r1_sha3_256_7299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7299_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7299 = { .name = "ecdsa_secp256r1_sha3_256_7299", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7299_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7299_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7299_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 317 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7300 for ECDSA, tcId is 318 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7300_pubkey[] = { 0xd9, 0xe6, 0x4d, 0xb2, 0xea, 0x56, 0x01, 0x62, 0xda, 0xd3, 0xec, 0x67, 0xd6, 0xeb, 0xaa, 0xb9, 0xe8, 0x21, 0xa8, 0x1d, 0xa8, 0xd4, 0x58, 0x4f, 0x00, 0xfb, 0x14, 0x81, 0x3c, 0x7e, 0x96, 0xe1, 0x53, 0xe9, 0xe9, 0x6e, 0x17, 0xeb, 0x05, 0x22, 0x8f, 0xf3, 0xc9, 0xcb, 0xc5, 0x31, 0x8b, 0xbb, 0x87, 0xe8, 0x8b, 0xec, 0x48, 0x9d, 0xec, 0x2b, 0xe7, 0xa2, 0x0a, 0xdc, 0xe0, 0x6c, 0xf8, 0xbd, }; static const unsigned char ecdsa_secp256r1_sha3_256_7300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7300_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7300 = { .name = "ecdsa_secp256r1_sha3_256_7300", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7300_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7300_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7300_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 318 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7301 for ECDSA, tcId is 319 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7301_pubkey[] = { 0x85, 0x7c, 0x58, 0xd9, 0x01, 0x0d, 0x1f, 0x83, 0x86, 0xe2, 0x79, 0xcd, 0xcc, 0x36, 0x9b, 0x32, 0xa8, 0x96, 0x02, 0x59, 0xa3, 0xa6, 0x46, 0xf6, 0xd8, 0x9a, 0xd5, 0x27, 0x32, 0x52, 0xf3, 0xfc, 0x65, 0xd2, 0x38, 0x4c, 0xab, 0xf6, 0xa2, 0x15, 0x8b, 0x1c, 0xd1, 0xb2, 0xe2, 0x47, 0x7d, 0x10, 0xb1, 0xb7, 0x19, 0x12, 0x5e, 0x92, 0x26, 0xe9, 0x9a, 0xe9, 0x0a, 0x7a, 0xfa, 0xab, 0x49, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7301_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1d, 0x10, 0x92, 0x96, 0xe9, 0xac, 0x43, 0xdf, 0xa9, 0x2b, 0xcd, 0xbc, 0xaa, 0x64, 0xc6, 0xd3, 0xfb, 0x85, 0x8a, 0x82, 0x2b, 0x6e, 0x51, 0x9d, 0x9f, 0xd2, 0xe4, 0x52, 0x79, 0xd3, 0xbf, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7301 = { .name = "ecdsa_secp256r1_sha3_256_7301", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7301_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7301_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7301_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 319 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7302 for ECDSA, tcId is 320 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7302_pubkey[] = { 0x89, 0xd8, 0x87, 0xb0, 0x64, 0x5d, 0x2f, 0x96, 0xb4, 0x07, 0xb0, 0x80, 0xcf, 0x6d, 0xb3, 0x68, 0x5c, 0xc9, 0xd4, 0x45, 0x4d, 0x35, 0xa5, 0xac, 0x79, 0x83, 0xbb, 0x5e, 0xbb, 0xfd, 0x2e, 0x20, 0xde, 0x4f, 0xcd, 0x41, 0x0c, 0x3b, 0x6e, 0x11, 0xf5, 0xe4, 0xcc, 0xcb, 0x19, 0x32, 0x7c, 0x18, 0x1c, 0x43, 0xc2, 0xd2, 0x16, 0x86, 0x93, 0x09, 0xf2, 0x24, 0x95, 0xd3, 0x4e, 0xe2, 0x79, 0x6f, }; static const unsigned char ecdsa_secp256r1_sha3_256_7302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7302_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x02, 0x7d, 0x37, 0x7d, 0x04, 0x71, 0x5e, 0x43, 0x75, 0x46, 0x29, 0x96, 0x1c, 0x62, 0x33, 0x96, 0x1b, 0x92, 0x1b, 0x32, 0x83, 0xc3, 0x3f, 0xcb, 0x54, 0x1c, 0xc2, 0x72, 0x85, 0x09, 0x2e, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7302 = { .name = "ecdsa_secp256r1_sha3_256_7302", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7302_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7302_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7302_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 320 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7303 for ECDSA, tcId is 321 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7303_pubkey[] = { 0x04, 0x09, 0x24, 0x29, 0x1a, 0xa7, 0x97, 0x5f, 0xd0, 0x4f, 0x8b, 0x2e, 0x92, 0x3a, 0x1f, 0x91, 0x21, 0x83, 0x6f, 0xdf, 0xbf, 0x2f, 0xea, 0x12, 0x3c, 0xc1, 0x87, 0x0f, 0x4f, 0x6c, 0xc0, 0xf2, 0xc5, 0x10, 0xee, 0x34, 0xa3, 0x25, 0xe7, 0x72, 0xd2, 0x32, 0xb5, 0x76, 0x05, 0x2f, 0x96, 0xd3, 0xec, 0x4a, 0x33, 0xb0, 0x86, 0x50, 0x86, 0x82, 0xfc, 0x53, 0x09, 0x9c, 0x0c, 0xd4, 0x8e, 0x45, }; static const unsigned char ecdsa_secp256r1_sha3_256_7303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7303_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xce, 0x16, 0x02, 0xee, 0x5a, 0x6d, 0x68, 0x6c, 0x5b, 0x8d, 0x8a, 0x3f, 0x44, 0xf4, 0x19, 0xaa, 0x60, 0x64, 0xf0, 0xd3, 0x53, 0x23, 0x34, 0x1d, 0x77, 0xa6, 0x5a, 0x4b, 0xc9, 0xe1, 0x98, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7303 = { .name = "ecdsa_secp256r1_sha3_256_7303", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7303_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7303_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7303_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 321 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7304 for ECDSA, tcId is 322 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7304_pubkey[] = { 0x3e, 0x7e, 0xd2, 0xfb, 0xb8, 0x9f, 0x7b, 0x64, 0x3d, 0x4a, 0xb4, 0x48, 0x95, 0xff, 0x9f, 0xb1, 0x6e, 0x8b, 0xe7, 0xa8, 0x64, 0x9e, 0x4a, 0xc4, 0xee, 0x2f, 0x59, 0xec, 0x8f, 0x68, 0xfc, 0x63, 0x4c, 0xa9, 0x1c, 0xc2, 0x60, 0x43, 0xa8, 0x24, 0x2e, 0x29, 0x69, 0xc8, 0x71, 0xd3, 0xca, 0x98, 0x33, 0x14, 0x81, 0x35, 0xb2, 0x7d, 0x37, 0x71, 0x98, 0x18, 0x2c, 0xea, 0xa7, 0xe7, 0x0f, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha3_256_7304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7304_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x32, 0x8a, 0xb2, 0x73, 0xff, 0x68, 0x1a, 0x79, 0xa9, 0x66, 0x2d, 0xc1, 0x74, 0xee, 0x01, 0x4e, 0xf7, 0x3d, 0x59, 0x7d, 0x32, 0xef, 0x42, 0xb1, 0x7f, 0x44, 0x3a, 0x33, 0xf5, 0xe4, 0x30, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7304 = { .name = "ecdsa_secp256r1_sha3_256_7304", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7304_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7304_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7304_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 322 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7305 for ECDSA, tcId is 323 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7305_pubkey[] = { 0xe6, 0x7f, 0x55, 0x9f, 0x55, 0x27, 0x72, 0xb1, 0x74, 0xd3, 0x77, 0xb2, 0x39, 0xe6, 0x07, 0x50, 0x29, 0x9d, 0x37, 0x9b, 0x6b, 0xec, 0x6f, 0xc9, 0x3a, 0xdf, 0x04, 0x02, 0x69, 0xd5, 0x8c, 0x42, 0x6c, 0x39, 0x7f, 0x79, 0x84, 0xa1, 0x49, 0xf0, 0x7b, 0xf7, 0x9f, 0xbb, 0xa3, 0xb1, 0x8c, 0x92, 0x5a, 0x79, 0x7c, 0xc6, 0x67, 0x8e, 0x2e, 0xea, 0xbe, 0xc4, 0x7f, 0xb4, 0xac, 0x46, 0x10, 0x41, }; static const unsigned char ecdsa_secp256r1_sha3_256_7305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7305_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x27, 0x43, 0x1e, 0x81, 0xa7, 0x97, 0x6e, 0x62, 0xdc, 0x17, 0x4e, 0xe0, 0x14, 0xf0, 0x47, 0x9c, 0x90, 0x9f, 0x17, 0x91, 0x9e, 0xc4, 0x53, 0x01, 0x3b, 0x47, 0xf1, 0xaa, 0x22, 0x18, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7305 = { .name = "ecdsa_secp256r1_sha3_256_7305", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7305_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7305_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7305_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 323 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7306 for ECDSA, tcId is 324 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7306_pubkey[] = { 0x88, 0xb1, 0xd3, 0x0e, 0x29, 0xfe, 0x0e, 0xde, 0xb9, 0x3a, 0xb4, 0x69, 0xd2, 0x69, 0x8d, 0x0f, 0xbc, 0x29, 0x77, 0xf7, 0x7f, 0x48, 0x29, 0x3d, 0x0e, 0x87, 0xac, 0xc0, 0x85, 0x6a, 0x51, 0xfc, 0x3d, 0x1b, 0x4f, 0x23, 0xfa, 0x3f, 0x6e, 0xf2, 0x6f, 0x0e, 0x94, 0xcb, 0x7a, 0x63, 0x90, 0x7b, 0x19, 0x23, 0xe3, 0x0d, 0x08, 0x19, 0x71, 0x15, 0x05, 0x0b, 0x9d, 0xa9, 0x8a, 0x2b, 0x5f, 0x56, }; static const unsigned char ecdsa_secp256r1_sha3_256_7306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7306_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x56, 0x4e, 0x86, 0x3e, 0x03, 0x4f, 0x2e, 0xdb, 0xc5, 0xb8, 0x2e, 0x9d, 0xc0, 0x29, 0xe0, 0x8f, 0x7c, 0x3a, 0x43, 0x81, 0x7c, 0x25, 0xea, 0x21, 0x0e, 0xbc, 0xc5, 0x20, 0x57, 0xe1, 0x0b, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7306 = { .name = "ecdsa_secp256r1_sha3_256_7306", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7306_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7306_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7306_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 324 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7307 for ECDSA, tcId is 325 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7307_pubkey[] = { 0x23, 0xa6, 0xed, 0x2b, 0x10, 0x64, 0x92, 0x31, 0x04, 0xd0, 0x8e, 0xe4, 0x39, 0x2b, 0x44, 0xbb, 0x51, 0x55, 0x5a, 0x39, 0x54, 0x77, 0xdc, 0x52, 0x54, 0x6a, 0xf6, 0xc7, 0x87, 0xcc, 0x65, 0xaa, 0x81, 0x10, 0x5b, 0x8c, 0x72, 0xc3, 0x57, 0xd7, 0x52, 0x15, 0xb2, 0x10, 0x28, 0x6d, 0xf7, 0x81, 0xd6, 0x73, 0x1c, 0x4f, 0x0b, 0x87, 0xe9, 0xfe, 0x70, 0x66, 0x48, 0x96, 0x53, 0xdc, 0x35, 0xd3, }; static const unsigned char ecdsa_secp256r1_sha3_256_7307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7307_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x31, 0xf2, 0xcc, 0xed, 0x76, 0xdb, 0x7b, 0x4d, 0x74, 0xee, 0x01, 0x4f, 0x04, 0x7c, 0x96, 0xc9, 0xf3, 0xba, 0x3e, 0x21, 0xf1, 0x12, 0x48, 0xbc, 0xf4, 0x51, 0x52, 0x6a, 0xc3, 0x76, 0xc5, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7307 = { .name = "ecdsa_secp256r1_sha3_256_7307", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7307_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7307_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7307_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 325 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7308 for ECDSA, tcId is 326 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7308_pubkey[] = { 0x59, 0x2d, 0x27, 0xcd, 0x81, 0xfb, 0xb6, 0x1e, 0xbb, 0xdd, 0x78, 0x2e, 0xaa, 0x1d, 0x86, 0xd5, 0x3b, 0x59, 0xea, 0xef, 0x43, 0x49, 0x66, 0x77, 0xc3, 0x45, 0xad, 0xc9, 0x89, 0x6c, 0x56, 0x2e, 0x35, 0x5b, 0x8f, 0xfd, 0xa4, 0xf8, 0x68, 0x3d, 0xa9, 0x86, 0x53, 0xf0, 0xd6, 0x06, 0x7b, 0xd8, 0x13, 0x4c, 0x5c, 0x3e, 0x22, 0xe3, 0xdc, 0xde, 0xe6, 0xa5, 0xcd, 0xbd, 0x82, 0x6f, 0x49, 0x15, }; static const unsigned char ecdsa_secp256r1_sha3_256_7308_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7308_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x8f, 0xcf, 0xbe, 0xdd, 0x4e, 0xed, 0x7e, 0xb6, 0x84, 0x0c, 0x7f, 0x6c, 0xf1, 0xe3, 0xdd, 0xe5, 0x04, 0xaf, 0xe5, 0x73, 0x2e, 0xe0, 0xe1, 0xbc, 0xbe, 0xee, 0x15, 0xb9, 0x4a, 0x2c, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7308 = { .name = "ecdsa_secp256r1_sha3_256_7308", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7308_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7308_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7308_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 326 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7309 for ECDSA, tcId is 327 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7309_pubkey[] = { 0x8c, 0x4a, 0xa4, 0x2e, 0xf4, 0x7c, 0x4e, 0x2d, 0x7b, 0x60, 0xca, 0x2b, 0x5a, 0x0b, 0x30, 0x38, 0xa9, 0xf8, 0xe7, 0xee, 0x1d, 0xe7, 0x7d, 0x29, 0x92, 0x86, 0xdb, 0x3c, 0xd6, 0x35, 0xb7, 0x54, 0xf6, 0x54, 0x38, 0x55, 0x8a, 0x22, 0x71, 0xc9, 0x44, 0x4b, 0x77, 0x40, 0x5a, 0x1f, 0x97, 0xe8, 0x40, 0x36, 0xc3, 0x14, 0x6c, 0x42, 0x50, 0x06, 0xe6, 0x5b, 0xe8, 0x3f, 0x97, 0xe4, 0x11, 0x91, }; static const unsigned char ecdsa_secp256r1_sha3_256_7309_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7309_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x63, 0x7e, 0x57, 0xbd, 0x4f, 0x08, 0x5f, 0x9d, 0x3b, 0xe2, 0x05, 0x06, 0xbb, 0xc2, 0xb8, 0xea, 0xb2, 0x68, 0xa3, 0x38, 0x71, 0xb1, 0x9d, 0xa5, 0x6b, 0x1b, 0xa0, 0xac, 0x25, 0x92, 0x7b, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7309 = { .name = "ecdsa_secp256r1_sha3_256_7309", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7309_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7309_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7309_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 327 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7310 for ECDSA, tcId is 328 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7310_pubkey[] = { 0xf5, 0x61, 0x8f, 0xb9, 0x78, 0xb7, 0x0f, 0x15, 0xb8, 0xe0, 0x7a, 0x74, 0xed, 0xfb, 0xce, 0xa7, 0x75, 0xdc, 0xb9, 0x20, 0x55, 0xf9, 0x43, 0x1b, 0x81, 0x6c, 0xd4, 0xcb, 0x5d, 0x4f, 0xd6, 0x3c, 0xbd, 0x17, 0x59, 0xfd, 0x35, 0xba, 0xe7, 0x9b, 0xf5, 0xbb, 0x03, 0x94, 0x64, 0x6b, 0x14, 0xfb, 0xcb, 0x1e, 0xd2, 0x61, 0x4f, 0xdc, 0xc9, 0xa9, 0xf5, 0x36, 0x63, 0xe0, 0x9f, 0x8c, 0x6a, 0x09, }; static const unsigned char ecdsa_secp256r1_sha3_256_7310_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7310_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb0, 0xa1, 0x05, 0x28, 0x17, 0x11, 0xf1, 0x75, 0x5b, 0xbf, 0xc1, 0xa0, 0xb6, 0xea, 0x67, 0xad, 0xd1, 0x08, 0x5e, 0x84, 0xb7, 0x30, 0x16, 0x98, 0x9e, 0x20, 0xa9, 0x0b, 0xe3, 0x50, 0x4d, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7310 = { .name = "ecdsa_secp256r1_sha3_256_7310", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7310_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7310_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7310_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 328 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7311 for ECDSA, tcId is 329 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7311_pubkey[] = { 0x53, 0xc1, 0x43, 0x43, 0x52, 0x47, 0xe1, 0xe2, 0x14, 0x4c, 0x4c, 0x32, 0xcb, 0x1c, 0x90, 0x0b, 0x8e, 0x9c, 0xb1, 0x60, 0x97, 0x6b, 0xdc, 0xda, 0x1b, 0x24, 0x87, 0x7c, 0xe7, 0x26, 0x6a, 0x74, 0x41, 0xa2, 0x17, 0x80, 0xd9, 0x15, 0x54, 0xd3, 0x49, 0xa4, 0xc7, 0xc6, 0x1f, 0x79, 0x9b, 0xda, 0x9d, 0xdc, 0x81, 0xa6, 0x63, 0x23, 0x07, 0x82, 0x45, 0xdc, 0xb3, 0x96, 0x04, 0x17, 0xa6, 0x60, }; static const unsigned char ecdsa_secp256r1_sha3_256_7311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7311_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0x77, 0xb6, 0xb3, 0x8b, 0x29, 0xde, 0x11, 0x2b, 0x6a, 0x19, 0x21, 0xaa, 0xcd, 0x9c, 0x95, 0xbf, 0x24, 0x35, 0x6c, 0x91, 0x60, 0x75, 0xb6, 0x23, 0xd0, 0x58, 0x99, 0xbf, 0x79, 0x45, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7311 = { .name = "ecdsa_secp256r1_sha3_256_7311", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7311_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7311_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7311_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 329 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7312 for ECDSA, tcId is 330 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7312_pubkey[] = { 0x93, 0x48, 0x6f, 0x66, 0x53, 0xc2, 0x90, 0x61, 0x52, 0xeb, 0x9d, 0x1c, 0x2b, 0x28, 0xe5, 0x1c, 0x08, 0x5f, 0x20, 0xac, 0x54, 0x01, 0x6a, 0x80, 0x8f, 0x6e, 0x3c, 0x6b, 0x2c, 0xdc, 0xc0, 0x2a, 0x35, 0x43, 0x9b, 0x7b, 0x9a, 0xb9, 0xe8, 0x6d, 0xf0, 0xca, 0x61, 0x77, 0x37, 0xb4, 0x9f, 0x28, 0xba, 0xdf, 0x8f, 0x56, 0x36, 0xc9, 0xbb, 0xaa, 0x19, 0x9b, 0xdd, 0x20, 0x06, 0x3e, 0xc7, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_256_7312_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7312_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0xef, 0x6d, 0x68, 0x16, 0x53, 0xbc, 0x21, 0x56, 0xd4, 0x32, 0x43, 0x55, 0x9b, 0x39, 0x2b, 0xc1, 0x61, 0x70, 0x2b, 0x7b, 0xa9, 0x4c, 0xe7, 0x53, 0xe6, 0xe6, 0x70, 0x82, 0x8f, 0x66, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7312 = { .name = "ecdsa_secp256r1_sha3_256_7312", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7312_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7312_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7312_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 330 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7313 for ECDSA, tcId is 331 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7313_pubkey[] = { 0x5f, 0x2e, 0x06, 0xf0, 0xec, 0x92, 0xb6, 0x49, 0x9e, 0xb7, 0xd2, 0x49, 0xff, 0x01, 0x47, 0x63, 0x92, 0x53, 0xe7, 0xab, 0xe0, 0xe4, 0x49, 0x72, 0x26, 0x33, 0x6a, 0x5c, 0x94, 0xca, 0xa7, 0x77, 0x4e, 0xb3, 0xc2, 0x8a, 0xcf, 0x50, 0x12, 0xba, 0x02, 0x39, 0x71, 0x41, 0x6c, 0x60, 0x0a, 0x10, 0xfb, 0x6d, 0x28, 0xa2, 0x3f, 0x3a, 0x2c, 0x1f, 0x77, 0xfb, 0x06, 0x86, 0xd0, 0x6c, 0xdf, 0x80, }; static const unsigned char ecdsa_secp256r1_sha3_256_7313_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7313_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd4, 0x67, 0x24, 0x1c, 0xa1, 0x7d, 0x9a, 0x31, 0x82, 0x3e, 0x4b, 0x65, 0x00, 0x68, 0xd5, 0xc1, 0xc3, 0x9e, 0xaa, 0xea, 0x65, 0xf2, 0x24, 0x18, 0x83, 0xfd, 0x74, 0x47, 0x45, 0xa5, 0x86, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7313 = { .name = "ecdsa_secp256r1_sha3_256_7313", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7313_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7313_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7313_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 331 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7314 for ECDSA, tcId is 332 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7314_pubkey[] = { 0xc2, 0xaf, 0x0b, 0x9d, 0xa0, 0x6d, 0x54, 0xb1, 0xa5, 0xff, 0x93, 0x80, 0x0b, 0x57, 0x9c, 0xbc, 0xe2, 0x95, 0xd0, 0xb2, 0x71, 0x9d, 0xa3, 0x07, 0xb0, 0x28, 0xbe, 0xe3, 0xc6, 0x57, 0x42, 0x4b, 0x28, 0xc4, 0x92, 0x8f, 0x18, 0x5f, 0x68, 0x31, 0x2b, 0x47, 0xde, 0x31, 0xad, 0x87, 0xfa, 0xc1, 0x34, 0xde, 0x90, 0xcf, 0x11, 0x4c, 0xc8, 0x5d, 0x45, 0xa8, 0xfe, 0xfd, 0x9a, 0x3a, 0x23, 0x50, }; static const unsigned char ecdsa_secp256r1_sha3_256_7314_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7314_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0x0b, 0x01, 0x76, 0xad, 0x36, 0xb4, 0x36, 0xad, 0xc6, 0xc5, 0x1f, 0xa2, 0x7a, 0x0c, 0xd5, 0x0e, 0xa5, 0xf5, 0xc0, 0x7d, 0x1d, 0x69, 0x51, 0x35, 0xb0, 0x12, 0x87, 0x63, 0x22, 0x5e, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7314 = { .name = "ecdsa_secp256r1_sha3_256_7314", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7314_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7314_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7314_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 332 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7315 for ECDSA, tcId is 333 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7315_pubkey[] = { 0x2a, 0x3c, 0x02, 0x53, 0xd5, 0x4d, 0xc8, 0xa2, 0xa7, 0x2a, 0x31, 0xf8, 0x15, 0xb0, 0xbb, 0x6c, 0x36, 0xd8, 0x52, 0xf8, 0xdb, 0x14, 0xed, 0xf1, 0xe1, 0xb7, 0x1c, 0xd3, 0xa7, 0x38, 0x9a, 0x49, 0x48, 0x91, 0xba, 0xfa, 0x17, 0x67, 0xb8, 0x5e, 0x36, 0xf7, 0x50, 0x7f, 0xa5, 0xee, 0xbd, 0x3d, 0xa0, 0x02, 0x42, 0x08, 0xfc, 0xfe, 0xf2, 0x8d, 0x56, 0xcd, 0x49, 0xa9, 0x80, 0xba, 0x14, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7315_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7315_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7315 = { .name = "ecdsa_secp256r1_sha3_256_7315", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7315_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7315_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7315_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 333 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7316 for ECDSA, tcId is 334 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7316_pubkey[] = { 0x3d, 0xd3, 0x45, 0x11, 0x40, 0x90, 0x32, 0x8c, 0xcc, 0x0b, 0xde, 0xaf, 0x82, 0x69, 0x39, 0x65, 0x93, 0x64, 0x57, 0x20, 0xb0, 0xb3, 0x26, 0x84, 0x9d, 0x1f, 0xe8, 0x1e, 0xc9, 0x56, 0xf9, 0x96, 0xce, 0xee, 0x0a, 0x81, 0xd7, 0xf6, 0x5e, 0x12, 0x05, 0xbb, 0x1b, 0x69, 0x63, 0xa8, 0xe0, 0xfa, 0xcf, 0xd2, 0xa6, 0x12, 0x47, 0x01, 0xb1, 0xa1, 0x52, 0x09, 0x4d, 0x03, 0x7a, 0x21, 0x6f, 0x4e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7316_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7316_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7316 = { .name = "ecdsa_secp256r1_sha3_256_7316", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7316_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7316_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7316_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 334 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7317 for ECDSA, tcId is 335 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7317_pubkey[] = { 0xfc, 0x82, 0x07, 0xca, 0x84, 0xc4, 0xaf, 0x42, 0x29, 0x13, 0x9d, 0xe9, 0x53, 0xda, 0x3b, 0xde, 0xbf, 0x69, 0x45, 0x37, 0xc1, 0x54, 0x06, 0xe1, 0x72, 0xd6, 0x31, 0xe9, 0x85, 0x91, 0xf4, 0x0c, 0x34, 0xa0, 0xd9, 0x57, 0xe3, 0x9e, 0x96, 0x86, 0x91, 0x4e, 0x98, 0xea, 0x46, 0x79, 0x72, 0xce, 0xde, 0xc5, 0xa5, 0xc6, 0xbb, 0x55, 0xbe, 0xc7, 0x91, 0x6d, 0xc7, 0x1f, 0x7a, 0x4c, 0x6f, 0x77, }; static const unsigned char ecdsa_secp256r1_sha3_256_7317_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7317_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7317 = { .name = "ecdsa_secp256r1_sha3_256_7317", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7317_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7317_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7317_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 335 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7318 for ECDSA, tcId is 336 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7318_pubkey[] = { 0x60, 0xbf, 0x7b, 0xeb, 0x80, 0x82, 0x86, 0xd8, 0xab, 0xff, 0x60, 0xc2, 0x0f, 0xae, 0xd7, 0x39, 0x97, 0x39, 0x51, 0x24, 0x54, 0x2e, 0x6b, 0x76, 0x72, 0x08, 0x9d, 0x88, 0xc1, 0x4b, 0xbe, 0xd5, 0x7f, 0x4a, 0xf9, 0x60, 0x6f, 0x9b, 0xe0, 0x19, 0x9e, 0x41, 0x45, 0x69, 0x8a, 0x62, 0xad, 0x25, 0x45, 0x12, 0x3a, 0x49, 0xeb, 0x14, 0xe0, 0xc3, 0x33, 0x17, 0xf6, 0x90, 0x9e, 0x39, 0x15, 0xb5, }; static const unsigned char ecdsa_secp256r1_sha3_256_7318_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7318_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7318 = { .name = "ecdsa_secp256r1_sha3_256_7318", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7318_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7318_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7318_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 336 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7319 for ECDSA, tcId is 337 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7319_pubkey[] = { 0x2d, 0xcd, 0x69, 0x93, 0x62, 0xd3, 0x66, 0x5b, 0x6c, 0x92, 0x60, 0x60, 0x8b, 0x3f, 0xaf, 0x98, 0x9d, 0x45, 0xac, 0x15, 0xb9, 0xda, 0x41, 0xfb, 0x34, 0x8d, 0x55, 0x20, 0xec, 0xdf, 0x4e, 0x04, 0x03, 0xe4, 0x83, 0x67, 0x0a, 0xad, 0xef, 0x46, 0x15, 0xc7, 0xa1, 0x3f, 0xe1, 0xbf, 0x3b, 0xf9, 0x27, 0xb4, 0xe4, 0x7a, 0x66, 0x76, 0x60, 0xb5, 0x05, 0xba, 0x47, 0xaf, 0xfe, 0xe9, 0x2a, 0xb6, }; static const unsigned char ecdsa_secp256r1_sha3_256_7319_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7319_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7319 = { .name = "ecdsa_secp256r1_sha3_256_7319", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7319_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7319_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7319_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 337 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7320 for ECDSA, tcId is 338 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7320_pubkey[] = { 0xe6, 0x20, 0x5f, 0x87, 0xfa, 0x83, 0x7c, 0x47, 0x4a, 0x2b, 0xad, 0xac, 0x67, 0x15, 0x78, 0xde, 0x77, 0xd6, 0xa0, 0x77, 0xcd, 0x28, 0x6a, 0xed, 0x45, 0x40, 0x35, 0x08, 0x76, 0x71, 0x14, 0xff, 0xc1, 0x8d, 0xaa, 0xf2, 0x46, 0x3d, 0xea, 0x80, 0x30, 0x0c, 0x1f, 0x4d, 0x7e, 0x25, 0xb9, 0xf6, 0x03, 0xee, 0xfb, 0x2e, 0x2c, 0xbf, 0x01, 0x2f, 0x31, 0xa8, 0x19, 0xc9, 0x1c, 0xad, 0x7c, 0xf2, }; static const unsigned char ecdsa_secp256r1_sha3_256_7320_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7320_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7320 = { .name = "ecdsa_secp256r1_sha3_256_7320", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7320_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7320_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7320_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 338 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7321 for ECDSA, tcId is 339 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7321_pubkey[] = { 0x35, 0x7e, 0x76, 0x87, 0xa7, 0x92, 0x43, 0xd5, 0xe0, 0x30, 0xeb, 0x12, 0x0a, 0x36, 0x52, 0xc2, 0xfb, 0x95, 0xfc, 0xb1, 0x48, 0x81, 0x3f, 0x3d, 0xa9, 0x5d, 0x04, 0x4b, 0xdc, 0x31, 0xc8, 0xd5, 0xe3, 0xed, 0x90, 0xea, 0x73, 0x56, 0x7c, 0xb3, 0x6c, 0x0f, 0xcc, 0xd0, 0x21, 0xda, 0x4c, 0xcc, 0xcf, 0xfe, 0x40, 0xdf, 0xe1, 0xb6, 0x03, 0x42, 0x89, 0x69, 0x78, 0x8b, 0xed, 0x44, 0x16, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha3_256_7321_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7321_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7321 = { .name = "ecdsa_secp256r1_sha3_256_7321", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7321_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7321_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7321_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 339 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7322 for ECDSA, tcId is 340 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7322_pubkey[] = { 0x3d, 0x97, 0x23, 0xa8, 0xea, 0x5e, 0xba, 0xff, 0xac, 0xab, 0x8b, 0xf8, 0x7b, 0x1d, 0x63, 0xe4, 0x2d, 0xa7, 0xbd, 0xf9, 0x4e, 0x6c, 0x25, 0x20, 0xa0, 0x78, 0x6b, 0x7b, 0x53, 0x4d, 0xac, 0xf3, 0x37, 0x25, 0xdb, 0x2f, 0xb2, 0x72, 0x48, 0x27, 0x4a, 0xc2, 0xe6, 0x21, 0x2f, 0x90, 0x71, 0x49, 0x5c, 0x90, 0xae, 0x68, 0x4d, 0x05, 0x6b, 0x57, 0xad, 0x18, 0xe7, 0x2b, 0xce, 0x8f, 0x36, 0xb0, }; static const unsigned char ecdsa_secp256r1_sha3_256_7322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7322_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7322 = { .name = "ecdsa_secp256r1_sha3_256_7322", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7322_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7322_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7322_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 340 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7323 for ECDSA, tcId is 341 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7323_pubkey[] = { 0x4b, 0xab, 0x5b, 0x68, 0x66, 0x70, 0x90, 0xed, 0x13, 0xe5, 0x65, 0x8c, 0xfe, 0x68, 0xf1, 0x24, 0x70, 0x31, 0xae, 0xe8, 0x0a, 0x8c, 0xcb, 0x52, 0xba, 0x05, 0x05, 0x75, 0x2f, 0x7c, 0xd3, 0xf0, 0x85, 0xc7, 0x01, 0x29, 0xc1, 0x71, 0x5d, 0x96, 0x10, 0xa4, 0x1b, 0xf7, 0xa0, 0x63, 0xb8, 0x1c, 0x1b, 0xc7, 0xec, 0x34, 0xbb, 0x6a, 0x1c, 0x95, 0xcc, 0xd0, 0x8e, 0x09, 0xf1, 0x47, 0x63, 0x43, }; static const unsigned char ecdsa_secp256r1_sha3_256_7323_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7323_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7323 = { .name = "ecdsa_secp256r1_sha3_256_7323", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7323_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7323_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7323_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 341 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7324 for ECDSA, tcId is 342 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7324_pubkey[] = { 0x78, 0x01, 0x78, 0x0a, 0xaa, 0xb4, 0xaa, 0xf3, 0x1b, 0x7c, 0x94, 0x06, 0x96, 0x09, 0xa5, 0xec, 0xf6, 0x23, 0xa6, 0xdd, 0x7e, 0x97, 0x96, 0x40, 0x61, 0xc6, 0xb3, 0xe4, 0x10, 0x3b, 0xb8, 0x4a, 0x59, 0xc1, 0x11, 0x79, 0x66, 0x24, 0xcc, 0xcb, 0xba, 0x09, 0x39, 0x4b, 0xca, 0x04, 0xaf, 0x79, 0xa3, 0x1c, 0xbd, 0x36, 0x17, 0x6d, 0x2e, 0xc4, 0xce, 0xaa, 0x70, 0x07, 0x30, 0xd5, 0x73, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_256_7324_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7324_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7324 = { .name = "ecdsa_secp256r1_sha3_256_7324", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7324_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7324_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7324_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 342 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7325 for ECDSA, tcId is 343 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7325_pubkey[] = { 0x55, 0xb0, 0x45, 0x1d, 0x91, 0x1e, 0x9c, 0x64, 0x51, 0x6a, 0xc9, 0xe9, 0xda, 0x3d, 0xa1, 0x70, 0x3e, 0xaa, 0xa4, 0x6a, 0x8b, 0x0a, 0x70, 0x25, 0xc8, 0xc5, 0xed, 0x38, 0xb5, 0x47, 0x47, 0x13, 0xf1, 0xfd, 0xe0, 0xcd, 0xee, 0x83, 0x0b, 0xf1, 0x69, 0xda, 0x9c, 0xa3, 0xd7, 0x0d, 0x56, 0xf4, 0x60, 0x79, 0x89, 0x87, 0x3f, 0xbd, 0xcf, 0xcb, 0xb7, 0x40, 0xe9, 0xa4, 0x2f, 0xaf, 0x86, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7325_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7325_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7325 = { .name = "ecdsa_secp256r1_sha3_256_7325", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7325_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7325_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7325_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 343 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7326 for ECDSA, tcId is 344 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7326_pubkey[] = { 0x2e, 0x19, 0xea, 0x3a, 0x97, 0x3a, 0x4c, 0x15, 0x58, 0x14, 0xf8, 0xa7, 0xb6, 0x41, 0xe1, 0x24, 0x77, 0xd2, 0x88, 0xf9, 0x58, 0xb7, 0x4f, 0x60, 0x31, 0x32, 0x63, 0x56, 0xf5, 0x06, 0x1f, 0xa4, 0x1a, 0xcd, 0xd1, 0xbe, 0x10, 0xc0, 0x52, 0xea, 0xeb, 0x9c, 0x22, 0xd3, 0xf0, 0x4c, 0xfe, 0xc6, 0xe9, 0x1b, 0xd2, 0x3d, 0x6d, 0x39, 0x96, 0xec, 0xa9, 0xcd, 0x48, 0x5e, 0x50, 0xe8, 0x59, 0x09, }; static const unsigned char ecdsa_secp256r1_sha3_256_7326_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7326_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7326 = { .name = "ecdsa_secp256r1_sha3_256_7326", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7326_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7326_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7326_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 344 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7327 for ECDSA, tcId is 345 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7327_pubkey[] = { 0x6e, 0xaf, 0xbc, 0xb6, 0x83, 0xe0, 0x5e, 0x0b, 0xdb, 0x2a, 0xa0, 0xac, 0x06, 0x86, 0xf6, 0x0b, 0x34, 0xce, 0x66, 0x76, 0x1b, 0x7e, 0xcf, 0xfc, 0xcd, 0x3d, 0xa8, 0xfe, 0x87, 0x99, 0xd6, 0x24, 0x45, 0x47, 0xb4, 0xae, 0xca, 0x8a, 0x8e, 0x56, 0xdb, 0xa4, 0x57, 0x50, 0xcd, 0x9f, 0xc4, 0xf0, 0xe3, 0xf1, 0x33, 0x3d, 0xcb, 0x85, 0x55, 0x66, 0xc2, 0x9b, 0xd1, 0x44, 0x57, 0xcf, 0x48, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha3_256_7327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7327_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7327 = { .name = "ecdsa_secp256r1_sha3_256_7327", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7327_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7327_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7327_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 345 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7328 for ECDSA, tcId is 346 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7328_pubkey[] = { 0x50, 0xf5, 0x1c, 0xe9, 0x59, 0xe2, 0x4a, 0xc8, 0x6b, 0x10, 0x54, 0xea, 0x01, 0x6c, 0x57, 0xd1, 0xda, 0x5f, 0x4c, 0xee, 0x00, 0x8d, 0xd8, 0x00, 0x75, 0x7a, 0x81, 0x76, 0x06, 0x23, 0x4f, 0x78, 0xaa, 0x17, 0xf3, 0xef, 0x6f, 0x7a, 0x6c, 0x51, 0x38, 0x1c, 0x63, 0xd6, 0x66, 0x97, 0xb1, 0xb5, 0xc1, 0x96, 0xeb, 0x1d, 0xa7, 0x3d, 0x7b, 0x73, 0xc3, 0x3f, 0x91, 0x15, 0xd7, 0x43, 0x2d, 0x23, }; static const unsigned char ecdsa_secp256r1_sha3_256_7328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7328_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7328 = { .name = "ecdsa_secp256r1_sha3_256_7328", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7328_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7328_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7328_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 346 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7329 for ECDSA, tcId is 347 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7329_pubkey[] = { 0x9c, 0x8e, 0xf3, 0x6f, 0x19, 0x81, 0x55, 0x72, 0xdb, 0x15, 0x4e, 0x8f, 0x47, 0xa8, 0xdc, 0x5c, 0xc8, 0x07, 0xd5, 0x51, 0xa7, 0x14, 0x1f, 0xed, 0x8a, 0x2c, 0x15, 0x46, 0x0f, 0xe7, 0xee, 0x10, 0x66, 0x0b, 0x93, 0x66, 0x44, 0xe1, 0xcc, 0xad, 0x24, 0x57, 0x88, 0x11, 0xdd, 0x45, 0xa3, 0x25, 0x21, 0x4e, 0x28, 0xa7, 0x8e, 0x99, 0xa0, 0xed, 0x2d, 0xf7, 0x35, 0x4f, 0xe9, 0xbc, 0xa0, 0xad, }; static const unsigned char ecdsa_secp256r1_sha3_256_7329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7329_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0x56, 0xbe, 0x8a, 0xae, 0xbb, 0x86, 0x27, 0xef, 0x5e, 0x37, 0x05, 0x7f, 0xeb, 0x34, 0x48, 0xf7, 0x26, 0xfb, 0x60, 0x53, 0x12, 0x99, 0x24, 0x66, 0xee, 0x8d, 0x9e, 0xd7, 0xcd, 0x43, 0xc1, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7329 = { .name = "ecdsa_secp256r1_sha3_256_7329", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7329_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7329_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7329_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 347 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7330 for ECDSA, tcId is 348 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7330_pubkey[] = { 0x9c, 0x8e, 0xf3, 0x6f, 0x19, 0x81, 0x55, 0x72, 0xdb, 0x15, 0x4e, 0x8f, 0x47, 0xa8, 0xdc, 0x5c, 0xc8, 0x07, 0xd5, 0x51, 0xa7, 0x14, 0x1f, 0xed, 0x8a, 0x2c, 0x15, 0x46, 0x0f, 0xe7, 0xee, 0x10, 0x99, 0xf4, 0x6c, 0x98, 0xbb, 0x1e, 0x33, 0x53, 0xdb, 0xa8, 0x77, 0xee, 0x22, 0xba, 0x5c, 0xda, 0xde, 0xb1, 0xd7, 0x59, 0x71, 0x66, 0x5f, 0x12, 0xd2, 0x08, 0xca, 0xb0, 0x16, 0x43, 0x5f, 0x52, }; static const unsigned char ecdsa_secp256r1_sha3_256_7330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7330_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0x56, 0xbe, 0x8a, 0xae, 0xbb, 0x86, 0x27, 0xef, 0x5e, 0x37, 0x05, 0x7f, 0xeb, 0x34, 0x48, 0xf7, 0x26, 0xfb, 0x60, 0x53, 0x12, 0x99, 0x24, 0x66, 0xee, 0x8d, 0x9e, 0xd7, 0xcd, 0x43, 0xc1, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7330 = { .name = "ecdsa_secp256r1_sha3_256_7330", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7330_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7330_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7330_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 348 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7331 for ECDSA, tcId is 349 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7331_pubkey[] = { 0xf2, 0xa3, 0xeb, 0xc4, 0x4f, 0xe9, 0x44, 0x06, 0xcd, 0x6d, 0xc9, 0xbf, 0xc7, 0x9a, 0x84, 0x60, 0x0a, 0xe5, 0x68, 0xcf, 0x53, 0x31, 0x31, 0xe0, 0x15, 0x05, 0x01, 0x26, 0x49, 0xe3, 0x9b, 0x8f, 0x0f, 0x88, 0x6d, 0x54, 0x9f, 0x83, 0xaa, 0x61, 0xec, 0xd1, 0xee, 0xb7, 0x7b, 0xa7, 0x25, 0x6e, 0x98, 0x4f, 0x08, 0x8c, 0x3b, 0x91, 0x83, 0xe8, 0x4a, 0x16, 0xe9, 0x6f, 0x93, 0x86, 0x0e, 0x4f, }; static const unsigned char ecdsa_secp256r1_sha3_256_7331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7331_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7331 = { .name = "ecdsa_secp256r1_sha3_256_7331", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7331_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7331_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7331_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 349 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7332 for ECDSA, tcId is 350 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7332_pubkey[] = { 0xe3, 0x07, 0x51, 0x01, 0x8c, 0x30, 0x2c, 0x69, 0x16, 0xc2, 0x1e, 0x22, 0x39, 0xba, 0xa4, 0x1f, 0x0e, 0x69, 0xc5, 0xac, 0xfc, 0x37, 0x1b, 0xb3, 0xe3, 0x76, 0xad, 0x36, 0x4e, 0xa6, 0x38, 0x02, 0x65, 0x9c, 0xce, 0xea, 0xe0, 0xca, 0xbf, 0xee, 0x3e, 0xd3, 0x3a, 0xba, 0xcb, 0xc4, 0x90, 0xe8, 0x71, 0x6b, 0x5f, 0xbf, 0x11, 0x13, 0x76, 0x47, 0xb5, 0x24, 0xe4, 0xb8, 0x55, 0xd7, 0xd6, 0x59, }; static const unsigned char ecdsa_secp256r1_sha3_256_7332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7332_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7332 = { .name = "ecdsa_secp256r1_sha3_256_7332", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7332_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7332_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7332_sig, .siglen = 65, .result = -1, .comment = "point with x-coordinate 0, tcId is 350 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7333 for ECDSA, tcId is 351 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7333_pubkey[] = { 0xef, 0x28, 0x34, 0x0f, 0xb0, 0x27, 0xda, 0xbc, 0x05, 0xa2, 0xbd, 0x3b, 0xe9, 0x9c, 0x6c, 0xc2, 0x73, 0x0a, 0xb0, 0xc3, 0xd8, 0x28, 0x9e, 0x6a, 0x24, 0x2f, 0x2b, 0x76, 0xcf, 0xcc, 0xf9, 0xa2, 0x40, 0x5c, 0xd0, 0x53, 0x01, 0x83, 0xdb, 0x66, 0x40, 0x11, 0x9a, 0x20, 0xad, 0x9c, 0x1c, 0x24, 0xec, 0x87, 0xd4, 0xd9, 0xd5, 0xde, 0x42, 0xbf, 0xfa, 0xb5, 0x4f, 0xd6, 0xcb, 0x6f, 0x9e, 0xd6, }; static const unsigned char ecdsa_secp256r1_sha3_256_7333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7333_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7333 = { .name = "ecdsa_secp256r1_sha3_256_7333", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7333_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7333_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7333_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 351 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7334 for ECDSA, tcId is 352 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7334_pubkey[] = { 0x01, 0xb4, 0xe8, 0xeb, 0x0c, 0xf6, 0xf3, 0x21, 0x00, 0x6f, 0xc1, 0x07, 0x24, 0x6c, 0x19, 0x96, 0xf7, 0x03, 0x4f, 0x56, 0xd8, 0x27, 0x06, 0xcd, 0x8f, 0x14, 0xf0, 0x5d, 0xa0, 0xa7, 0xc5, 0x14, 0xf1, 0x58, 0xad, 0x7f, 0xf3, 0xc6, 0xa0, 0x8b, 0x2f, 0x05, 0x7c, 0x6c, 0x28, 0x25, 0x5f, 0x95, 0x13, 0x81, 0x1f, 0x20, 0xab, 0x18, 0xf7, 0x10, 0x4d, 0xf5, 0x54, 0xd5, 0x91, 0x91, 0x3f, 0x78, }; static const unsigned char ecdsa_secp256r1_sha3_256_7334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7334_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7334 = { .name = "ecdsa_secp256r1_sha3_256_7334", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7334_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7334_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7334_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 352 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7335 for ECDSA, tcId is 353 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7335_pubkey[] = { 0x0b, 0x1c, 0xc5, 0x80, 0xbb, 0x6f, 0x71, 0xe4, 0xbf, 0xfb, 0x73, 0x1a, 0x1e, 0x74, 0xf9, 0x29, 0xc0, 0x4a, 0x10, 0xff, 0x94, 0xac, 0x23, 0x12, 0x35, 0x9d, 0x3f, 0x13, 0x21, 0x3c, 0x3b, 0x4c, 0x87, 0x02, 0x13, 0xc2, 0xad, 0x36, 0x65, 0xa3, 0xd2, 0x43, 0xdc, 0xb5, 0x57, 0x80, 0xe2, 0x1c, 0x86, 0x01, 0xc5, 0xf9, 0x80, 0x3f, 0x27, 0xe3, 0x1f, 0xf2, 0x2f, 0x8c, 0xe7, 0x7e, 0x73, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7335_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7335 = { .name = "ecdsa_secp256r1_sha3_256_7335", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7335_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7335_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7335_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 353 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7336 for ECDSA, tcId is 354 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7336_pubkey[] = { 0x26, 0x99, 0x73, 0x6f, 0xdb, 0x60, 0x3e, 0x90, 0xb1, 0xd9, 0xa0, 0x4f, 0xcd, 0x90, 0xed, 0x39, 0x75, 0x6e, 0xd5, 0x67, 0x21, 0x40, 0x33, 0xdd, 0xb5, 0xad, 0x57, 0x92, 0x13, 0x08, 0x9d, 0x2e, 0x96, 0xac, 0xfb, 0x0b, 0xae, 0xec, 0x9c, 0xfe, 0x2d, 0xf1, 0x50, 0xaa, 0x06, 0xb0, 0x1b, 0xa5, 0x8d, 0x03, 0x16, 0x2b, 0x49, 0x7c, 0x57, 0xa0, 0xd3, 0x05, 0xad, 0xb4, 0xc5, 0xf7, 0xf3, 0x75, }; static const unsigned char ecdsa_secp256r1_sha3_256_7336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7336_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7336 = { .name = "ecdsa_secp256r1_sha3_256_7336", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7336_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7336_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7336_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 354 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7337 for ECDSA, tcId is 355 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7337_pubkey[] = { 0x2a, 0x30, 0x21, 0x06, 0x9e, 0x88, 0x41, 0xf9, 0xd6, 0x9a, 0xd4, 0xc2, 0x99, 0x2b, 0x02, 0xdc, 0x7a, 0x2f, 0x54, 0x47, 0xaf, 0xa5, 0x5a, 0x46, 0x83, 0xc6, 0x45, 0x1c, 0xdc, 0x4e, 0x72, 0x86, 0x00, 0xca, 0x41, 0x23, 0x52, 0x06, 0x11, 0x08, 0x5c, 0xb1, 0x0e, 0xa8, 0x0b, 0xdb, 0x85, 0x1a, 0x0b, 0x09, 0xdd, 0x79, 0x70, 0x3c, 0x42, 0x06, 0x06, 0xff, 0x65, 0x8d, 0xba, 0x94, 0xc3, 0x45, }; static const unsigned char ecdsa_secp256r1_sha3_256_7337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7337_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7337 = { .name = "ecdsa_secp256r1_sha3_256_7337", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7337_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7337_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7337_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 355 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7338 for ECDSA, tcId is 356 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7338_pubkey[] = { 0x53, 0x52, 0x12, 0x04, 0x0d, 0x83, 0xb1, 0x80, 0x2c, 0xd4, 0xa9, 0xc0, 0xb6, 0xce, 0xb0, 0xa8, 0x9d, 0xe6, 0x8b, 0x79, 0x4d, 0xdf, 0x97, 0x9c, 0x2f, 0xfb, 0x9a, 0x72, 0xe5, 0x9e, 0xea, 0x00, 0x76, 0x50, 0x16, 0x62, 0x17, 0xeb, 0x39, 0xf4, 0xe0, 0x3f, 0xec, 0xd4, 0x8e, 0x9e, 0x74, 0x48, 0x03, 0x2d, 0xa2, 0x61, 0xca, 0xa6, 0x8d, 0x21, 0xdf, 0x63, 0x9b, 0xa6, 0x8e, 0xe6, 0x67, 0xa6, }; static const unsigned char ecdsa_secp256r1_sha3_256_7338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7338_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7338 = { .name = "ecdsa_secp256r1_sha3_256_7338", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7338_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7338_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7338_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 356 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7339 for ECDSA, tcId is 357 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7339_pubkey[] = { 0x88, 0x4a, 0x86, 0xa8, 0x99, 0x81, 0xe2, 0x16, 0x73, 0x29, 0x16, 0x56, 0x9f, 0x9e, 0x3f, 0x20, 0x38, 0x06, 0x35, 0x9e, 0xf9, 0xb9, 0xce, 0xd6, 0x1e, 0xbb, 0x82, 0xd5, 0xf8, 0x03, 0x00, 0x45, 0x07, 0x9c, 0xee, 0xf7, 0x1b, 0x8f, 0x9e, 0x1d, 0xeb, 0x29, 0xae, 0xdd, 0xaf, 0x3b, 0xcc, 0x78, 0x0d, 0xff, 0x88, 0xf9, 0x2b, 0x70, 0x5c, 0x68, 0xf5, 0x72, 0xec, 0x48, 0x11, 0x39, 0xb8, 0x4a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7339_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7339 = { .name = "ecdsa_secp256r1_sha3_256_7339", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7339_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7339_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7339_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 357 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7340 for ECDSA, tcId is 358 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7340_pubkey[] = { 0xcd, 0xb0, 0x31, 0xf0, 0xe0, 0xbc, 0x43, 0x2f, 0x0b, 0x95, 0x9b, 0xc2, 0x70, 0x45, 0x6f, 0x6a, 0x50, 0x06, 0x35, 0x73, 0x2c, 0x76, 0x76, 0x40, 0x10, 0xa5, 0xea, 0x20, 0xf5, 0x4a, 0x71, 0xd8, 0x5c, 0xf6, 0xce, 0x18, 0x41, 0x1c, 0xdc, 0xb5, 0x05, 0x6e, 0x42, 0x80, 0xe4, 0x49, 0xc3, 0xad, 0x6d, 0xf9, 0x0f, 0x9a, 0xe2, 0xde, 0xa4, 0xab, 0xc0, 0x82, 0x80, 0xd9, 0x97, 0x49, 0x64, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7340_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7340 = { .name = "ecdsa_secp256r1_sha3_256_7340", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7340_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7340_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7340_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 358 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7341 for ECDSA, tcId is 359 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7341_pubkey[] = { 0x63, 0x09, 0xff, 0xd3, 0xc5, 0x59, 0xfe, 0x1b, 0x09, 0x67, 0x21, 0x34, 0x61, 0xd8, 0x84, 0xb5, 0x8d, 0x1c, 0xd5, 0x49, 0xdb, 0xc2, 0x97, 0x10, 0x1d, 0x9d, 0xb5, 0xa7, 0xe3, 0xfc, 0xf3, 0xd3, 0x88, 0xf5, 0xfa, 0x86, 0xbd, 0x31, 0x04, 0x3c, 0xa6, 0x07, 0x7c, 0xd1, 0xda, 0x4b, 0x28, 0x3f, 0x41, 0x79, 0xa2, 0x3e, 0x9d, 0x68, 0x0f, 0x66, 0xa2, 0x08, 0x1a, 0xc5, 0x02, 0x73, 0x27, 0x14, }; static const unsigned char ecdsa_secp256r1_sha3_256_7341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7341_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7341 = { .name = "ecdsa_secp256r1_sha3_256_7341", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7341_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7341_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7341_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 359 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7342 for ECDSA, tcId is 360 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7342_pubkey[] = { 0x6e, 0x56, 0x4f, 0xf8, 0x41, 0x2e, 0x92, 0xf5, 0xee, 0x23, 0xfd, 0x29, 0x9c, 0x92, 0xc5, 0x7e, 0xb6, 0xef, 0x0c, 0xbd, 0x17, 0xc2, 0x87, 0x21, 0xb9, 0x26, 0x25, 0x93, 0x8d, 0x0e, 0xab, 0x1c, 0xff, 0x89, 0x41, 0x06, 0x88, 0x15, 0xc9, 0xad, 0x2d, 0x3b, 0x7f, 0x05, 0x84, 0x5c, 0x41, 0xc4, 0xac, 0xeb, 0xb9, 0x2b, 0x3d, 0xc1, 0x55, 0xaa, 0x7a, 0x51, 0x04, 0x69, 0x48, 0xa4, 0xee, 0xd0, }; static const unsigned char ecdsa_secp256r1_sha3_256_7342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7342_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7342 = { .name = "ecdsa_secp256r1_sha3_256_7342", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7342_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7342_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7342_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 360 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7343 for ECDSA, tcId is 361 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7343_pubkey[] = { 0x83, 0xfe, 0x78, 0x2d, 0x90, 0x60, 0x23, 0xda, 0x7b, 0xa7, 0x00, 0xd0, 0x97, 0xf8, 0xcc, 0x96, 0x18, 0xcb, 0x23, 0xf1, 0xcd, 0x89, 0xc2, 0x13, 0xb9, 0x8b, 0x8f, 0x9a, 0xe8, 0xfc, 0x02, 0x3d, 0xb1, 0x5d, 0xe3, 0x8b, 0x85, 0x6d, 0xb2, 0x4d, 0x4d, 0x6c, 0xc7, 0x9b, 0x6d, 0x76, 0x1f, 0xbd, 0x9a, 0xc9, 0x4d, 0xad, 0x5f, 0x17, 0x28, 0x83, 0xba, 0x09, 0x27, 0x8b, 0xa8, 0x6d, 0x99, 0x55, }; static const unsigned char ecdsa_secp256r1_sha3_256_7343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7343_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7343 = { .name = "ecdsa_secp256r1_sha3_256_7343", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7343_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7343_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7343_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 361 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7344 for ECDSA, tcId is 362 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7344_pubkey[] = { 0xd1, 0xdd, 0xdc, 0x94, 0x7a, 0xaf, 0x9e, 0x69, 0x30, 0xcc, 0x46, 0x07, 0x2f, 0x2c, 0xf2, 0xb6, 0x8e, 0xb5, 0xe3, 0x2d, 0xcf, 0x4e, 0xe8, 0x4e, 0xa0, 0x64, 0x7a, 0x20, 0x1b, 0x29, 0x9f, 0xbc, 0x6b, 0x38, 0x20, 0x61, 0x30, 0x99, 0x43, 0xab, 0xef, 0xa5, 0x93, 0x8e, 0x84, 0x65, 0xe2, 0xf6, 0xaf, 0xd0, 0x51, 0xea, 0xb9, 0x74, 0xd2, 0x61, 0x79, 0x7c, 0xd4, 0x83, 0x93, 0x40, 0x97, 0xa4, }; static const unsigned char ecdsa_secp256r1_sha3_256_7344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7344_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7344 = { .name = "ecdsa_secp256r1_sha3_256_7344", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7344_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7344_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7344_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 362 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7345 for ECDSA, tcId is 363 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7345_pubkey[] = { 0xd1, 0x7c, 0x1c, 0x55, 0x05, 0xbc, 0x71, 0x01, 0x45, 0xef, 0x74, 0x98, 0x48, 0x64, 0xfe, 0x86, 0x1e, 0x64, 0x30, 0x2c, 0x16, 0xbb, 0x4a, 0x4b, 0xc6, 0x9b, 0x47, 0x50, 0x7b, 0x3f, 0x02, 0x35, 0x41, 0x48, 0x0e, 0x04, 0x7b, 0x19, 0xbf, 0xe4, 0xbb, 0x88, 0x5e, 0xc1, 0x27, 0xcf, 0x25, 0x4d, 0xb1, 0x04, 0x1a, 0xe1, 0xd5, 0xe8, 0xfd, 0x77, 0xe0, 0x82, 0x94, 0xd3, 0x98, 0xb6, 0x2e, 0xb0, }; static const unsigned char ecdsa_secp256r1_sha3_256_7345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7345_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7345 = { .name = "ecdsa_secp256r1_sha3_256_7345", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7345_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7345_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7345_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 363 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7346 for ECDSA, tcId is 364 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7346_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha3_256_7346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7346_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7346 = { .name = "ecdsa_secp256r1_sha3_256_7346", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7346_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7346_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7346_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 364 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7347 for ECDSA, tcId is 365 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7347_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha3_256_7347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7347_sig[] = { 0xa8, 0xce, 0x48, 0x3a, 0x42, 0xfb, 0x34, 0x62, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x83, 0xca, 0x56, 0x5b, 0x27, 0x24, 0xcc, 0xa9, 0xac, 0x14, 0x41, 0x1d, 0xcb, 0x8e, 0xe7, 0xe8, 0x03, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7347 = { .name = "ecdsa_secp256r1_sha3_256_7347", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7347_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7347_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7347_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 365 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7348 for ECDSA, tcId is 366 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7348_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7348_sig[] = { 0x57, 0x31, 0xb7, 0xc4, 0xbd, 0x04, 0xcb, 0x9e, 0xfb, 0x83, 0x69, 0x35, 0xff, 0x2e, 0x54, 0x7b, 0xf2, 0x90, 0x9f, 0x86, 0x82, 0x4a, 0xf4, 0xd8, 0xdf, 0x78, 0xac, 0xf7, 0x6d, 0x7b, 0x3d, 0x4e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7348 = { .name = "ecdsa_secp256r1_sha3_256_7348", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7348_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7348_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7348_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 366 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7349 for ECDSA, tcId is 367 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7349_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha3_256_7349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7349_sig[] = { 0xa8, 0xce, 0x48, 0x3a, 0x42, 0xfb, 0x34, 0x62, 0x04, 0x7c, 0x96, 0xca, 0x00, 0xd1, 0xab, 0x83, 0xca, 0x56, 0x5b, 0x27, 0x24, 0xcc, 0xa9, 0xac, 0x14, 0x41, 0x1d, 0xcb, 0x8e, 0xe7, 0xe8, 0x03, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7349 = { .name = "ecdsa_secp256r1_sha3_256_7349", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7349_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7349_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7349_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 367 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7350 for ECDSA, tcId is 368 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7350_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7350_sig[] = { 0x63, 0xf0, 0x18, 0x99, 0xb4, 0xb0, 0xbf, 0xe9, 0xdc, 0x99, 0x29, 0xfd, 0x45, 0x26, 0x91, 0x9b, 0x98, 0x1a, 0xcd, 0xa7, 0x81, 0x04, 0x4e, 0xe3, 0xd2, 0xc3, 0x37, 0xbf, 0x5f, 0xc7, 0x48, 0x30, 0x59, 0x13, 0x81, 0xbd, 0xf1, 0xb1, 0xa9, 0xb0, 0x10, 0x20, 0xb8, 0x73, 0x14, 0xa1, 0x28, 0xd0, 0x6e, 0x48, 0x33, 0x34, 0x2b, 0xf2, 0x32, 0x77, 0x9f, 0x61, 0x48, 0x07, 0x39, 0x61, 0x39, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7350 = { .name = "ecdsa_secp256r1_sha3_256_7350", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7350_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha3_256_7350_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 368 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7351 for ECDSA, tcId is 369 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7351_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7351_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha3_256_7351_sig[] = { 0x10, 0x22, 0x8b, 0xea, 0xf7, 0x73, 0xca, 0xef, 0xf2, 0x2a, 0x94, 0x60, 0x2e, 0x9e, 0xff, 0x19, 0x23, 0xdc, 0xc5, 0x1b, 0x27, 0x7f, 0x64, 0xb4, 0x82, 0xea, 0x63, 0x21, 0x8c, 0x35, 0x0b, 0x0d, 0x21, 0x04, 0xc8, 0x34, 0x3f, 0x89, 0x70, 0xa2, 0x8c, 0x9e, 0xb2, 0x21, 0xa6, 0x3c, 0x85, 0x7e, 0xf3, 0x85, 0xe7, 0x58, 0xea, 0xcc, 0xc5, 0xf7, 0xd2, 0xae, 0x97, 0x55, 0x53, 0xa1, 0x53, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7351 = { .name = "ecdsa_secp256r1_sha3_256_7351", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7351_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7351_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha3_256_7351_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 369 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7352 for ECDSA, tcId is 370 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7352_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_256_7352_sig[] = { 0xe6, 0xe1, 0xb8, 0xc2, 0x0e, 0x9d, 0x00, 0xf0, 0xb6, 0xcf, 0x1b, 0x2c, 0x39, 0xca, 0xcd, 0x9c, 0x50, 0xee, 0x3f, 0x99, 0x05, 0x53, 0x25, 0x0f, 0x07, 0x4a, 0x4a, 0x3e, 0xed, 0x3a, 0xfe, 0x43, 0x52, 0xf3, 0xbe, 0x1a, 0xe2, 0xd2, 0xf9, 0xb2, 0xbf, 0xea, 0x8e, 0x8c, 0x22, 0xd9, 0x5a, 0xf4, 0x57, 0x45, 0x81, 0xa9, 0xf4, 0xb0, 0x9a, 0x89, 0xf7, 0xb6, 0xa4, 0xad, 0x1c, 0x5b, 0x27, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7352 = { .name = "ecdsa_secp256r1_sha3_256_7352", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7352_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7352_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_256_7352_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 370 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7353 for ECDSA, tcId is 371 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7353_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7353_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_256_7353_sig[] = { 0x20, 0xf6, 0x20, 0x3e, 0x48, 0xfc, 0x4c, 0x66, 0xae, 0x8a, 0x74, 0xec, 0x61, 0xd5, 0x12, 0x47, 0x72, 0xda, 0xad, 0x05, 0x8a, 0x74, 0xb8, 0x71, 0x91, 0x4d, 0x37, 0xdf, 0xe9, 0xd4, 0x09, 0xc1, 0x8b, 0x68, 0xde, 0x7a, 0x47, 0x86, 0xe2, 0x9b, 0x3a, 0x72, 0x6e, 0xa7, 0xfd, 0x8e, 0xf2, 0xa5, 0x85, 0xb5, 0xc8, 0xda, 0xdf, 0x11, 0x28, 0x1f, 0x2c, 0xaa, 0x22, 0x8e, 0xb3, 0xdf, 0x3f, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7353 = { .name = "ecdsa_secp256r1_sha3_256_7353", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7353_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7353_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha3_256_7353_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 371 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7354 for ECDSA, tcId is 372 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7354_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_256_7354_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7354_sig[] = { 0x20, 0x7d, 0xb6, 0x05, 0xe4, 0x2c, 0x96, 0x03, 0x5d, 0x54, 0x35, 0x2c, 0x5b, 0xc5, 0x5c, 0xf2, 0x7d, 0x5d, 0xed, 0x42, 0xcb, 0x6b, 0x42, 0xbd, 0xae, 0xe4, 0x99, 0xea, 0x64, 0x78, 0x4d, 0xb6, 0x7f, 0x83, 0xc0, 0x91, 0x92, 0xaa, 0x04, 0xce, 0x03, 0x8e, 0x86, 0x16, 0x99, 0xa0, 0xf2, 0x7c, 0xa5, 0x5b, 0xf3, 0x27, 0x41, 0xdb, 0xc9, 0x5b, 0xbf, 0x99, 0x7d, 0xee, 0x57, 0xf5, 0x38, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7354 = { .name = "ecdsa_secp256r1_sha3_256_7354", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7354_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7354_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7354_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 372 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7355 for ECDSA, tcId is 373 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7355_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_256_7355_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7355_sig[] = { 0x67, 0xc2, 0x59, 0xa2, 0x58, 0x00, 0x89, 0xed, 0x52, 0x78, 0x07, 0x55, 0xc7, 0x5e, 0xa8, 0xa2, 0x6b, 0x90, 0x57, 0xcc, 0x19, 0x95, 0xe4, 0xb0, 0x44, 0xc8, 0x17, 0x6c, 0xef, 0xe3, 0xcc, 0x7b, 0xd4, 0x8f, 0x63, 0xd3, 0x13, 0x33, 0x05, 0x4b, 0xbd, 0x7f, 0xab, 0x67, 0x6d, 0x20, 0x7b, 0xbd, 0xc4, 0xde, 0xa1, 0xcf, 0x1b, 0x4f, 0x71, 0xac, 0xeb, 0x03, 0x7b, 0x8d, 0xc7, 0xf7, 0x95, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7355 = { .name = "ecdsa_secp256r1_sha3_256_7355", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7355_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7355_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7355_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 373 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7356 for ECDSA, tcId is 374 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7356_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_256_7356_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7356_sig[] = { 0x5d, 0xc6, 0x75, 0xa2, 0xbe, 0xae, 0x6d, 0xee, 0xb1, 0xef, 0x68, 0x2e, 0x92, 0x2c, 0x5f, 0xe4, 0x71, 0x56, 0xe0, 0x69, 0xac, 0xd0, 0x80, 0x73, 0xa0, 0xf8, 0xd9, 0x18, 0x4d, 0x6b, 0xaa, 0x6c, 0xe3, 0x3c, 0xad, 0x4c, 0xe4, 0x8f, 0x22, 0xff, 0x6e, 0x50, 0xb4, 0x7b, 0xa5, 0xdd, 0x44, 0x04, 0x6a, 0x78, 0xed, 0x78, 0x73, 0xcf, 0xd3, 0xa2, 0xc8, 0xb2, 0xd4, 0xb4, 0x9a, 0xad, 0x25, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7356 = { .name = "ecdsa_secp256r1_sha3_256_7356", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7356_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7356_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7356_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 374 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7357 for ECDSA, tcId is 375 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7357_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_256_7357_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7357_sig[] = { 0x1a, 0x3b, 0x5c, 0x4b, 0x4a, 0x2f, 0xb0, 0xc2, 0xf9, 0xef, 0xb0, 0x28, 0xa9, 0xef, 0xc7, 0x89, 0x93, 0xf3, 0x15, 0x16, 0x83, 0xce, 0xdf, 0x76, 0x21, 0x40, 0x09, 0xea, 0x41, 0x8d, 0x3e, 0x5d, 0xe8, 0x2e, 0x87, 0x33, 0x2e, 0x7b, 0xd0, 0x04, 0xca, 0xd9, 0xb1, 0x38, 0x57, 0x93, 0x9c, 0x01, 0x46, 0x7f, 0xc1, 0xc3, 0xe4, 0x20, 0x7e, 0xfa, 0x45, 0xef, 0x82, 0x79, 0x85, 0xa8, 0x24, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7357 = { .name = "ecdsa_secp256r1_sha3_256_7357", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7357_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7357_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7357_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 375 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7358 for ECDSA, tcId is 376 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7358_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_256_7358_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7358_sig[] = { 0x8c, 0x44, 0xef, 0x66, 0x0a, 0xb8, 0x93, 0x6f, 0xe0, 0x15, 0x71, 0x16, 0x84, 0x35, 0xc1, 0x91, 0x8d, 0x00, 0x5b, 0xd2, 0x4e, 0xc7, 0x6f, 0x72, 0xce, 0xa8, 0xf0, 0xfa, 0xeb, 0x9f, 0x77, 0x7a, 0xd7, 0x93, 0xdc, 0xb3, 0xa6, 0xd4, 0x7e, 0x24, 0x51, 0xe7, 0xd6, 0x2e, 0x1c, 0x28, 0x4a, 0xe2, 0x5b, 0xbf, 0xaa, 0x08, 0x20, 0xf5, 0x8a, 0xda, 0xb7, 0x9c, 0x20, 0x1b, 0xa8, 0xd3, 0x4a, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7358 = { .name = "ecdsa_secp256r1_sha3_256_7358", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7358_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7358_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7358_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 376 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7359 for ECDSA, tcId is 377 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7359_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_256_7359_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7359_sig[] = { 0x42, 0x27, 0xa3, 0xdb, 0xff, 0x7a, 0xc5, 0x35, 0x3c, 0xd3, 0x2c, 0x8b, 0x34, 0x56, 0x39, 0x7a, 0x7e, 0xe7, 0xc0, 0xe6, 0x80, 0x96, 0x15, 0xfc, 0xee, 0x46, 0x6b, 0x1d, 0xcd, 0xe3, 0xeb, 0x49, 0x22, 0xea, 0x6a, 0xd8, 0x11, 0xb2, 0x7f, 0x94, 0x4a, 0xbe, 0x70, 0xb4, 0x7f, 0x49, 0x0d, 0x25, 0x57, 0x60, 0xf8, 0xc3, 0x56, 0x2e, 0x6f, 0x7e, 0x2c, 0x1d, 0xa3, 0xdb, 0xe4, 0x5e, 0xb5, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7359 = { .name = "ecdsa_secp256r1_sha3_256_7359", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7359_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7359_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7359_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 377 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7360 for ECDSA, tcId is 378 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7360_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_256_7360_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7360_sig[] = { 0x36, 0x63, 0x61, 0x62, 0xdb, 0x85, 0xe8, 0xd3, 0x00, 0xee, 0x45, 0xc5, 0x1b, 0x9d, 0xa0, 0x0a, 0x7c, 0x2c, 0xff, 0xd9, 0xa6, 0xfb, 0x20, 0x07, 0x61, 0xa6, 0x47, 0xcc, 0xbf, 0x5d, 0x7e, 0x8e, 0x9d, 0x18, 0x37, 0x4c, 0xf1, 0xf8, 0x7a, 0x90, 0x51, 0xe5, 0x63, 0x83, 0x8e, 0x75, 0x72, 0x8d, 0x3f, 0x2f, 0xf7, 0xa8, 0x6c, 0x10, 0x29, 0x28, 0x51, 0xb6, 0xce, 0x88, 0x5c, 0x5b, 0x0c, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7360 = { .name = "ecdsa_secp256r1_sha3_256_7360", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7360_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7360_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7360_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 378 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7361 for ECDSA, tcId is 379 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7361_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_256_7361_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7361_sig[] = { 0xa6, 0x37, 0xfc, 0x97, 0x2f, 0x38, 0x00, 0x70, 0x5b, 0x8d, 0x52, 0x93, 0x09, 0x63, 0x82, 0xd1, 0xc1, 0xae, 0x7f, 0x67, 0x0b, 0xe4, 0x50, 0x11, 0xb8, 0xbd, 0x29, 0x05, 0x9f, 0x30, 0x49, 0xbd, 0x9c, 0x4a, 0xbb, 0x6b, 0xbe, 0x06, 0x55, 0x2d, 0x5d, 0x59, 0x8b, 0x07, 0x72, 0x8c, 0xca, 0xed, 0x17, 0x38, 0xea, 0xc9, 0xfc, 0x98, 0x5f, 0xd7, 0x86, 0xfb, 0xc0, 0xa7, 0x34, 0x7d, 0xa8, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7361 = { .name = "ecdsa_secp256r1_sha3_256_7361", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7361_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7361_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7361_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 379 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7362 for ECDSA, tcId is 380 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7362_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_256_7362_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7362_sig[] = { 0x76, 0xbf, 0xc7, 0x4f, 0x3b, 0x48, 0x8b, 0x34, 0x83, 0x5a, 0xee, 0x96, 0xee, 0x96, 0x06, 0x7f, 0x53, 0xda, 0x02, 0x1c, 0xff, 0x40, 0x20, 0xa1, 0x09, 0x96, 0xd6, 0x93, 0x3a, 0x27, 0xc0, 0x32, 0x2f, 0xd1, 0x65, 0x8f, 0xe4, 0xe0, 0x9b, 0x2e, 0x71, 0x1b, 0x10, 0x11, 0x7f, 0x5c, 0x37, 0xd9, 0xc3, 0xea, 0x8b, 0x6f, 0x55, 0xcd, 0xf1, 0xe5, 0xa5, 0xdd, 0xae, 0x2c, 0x96, 0x6d, 0x7e, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7362 = { .name = "ecdsa_secp256r1_sha3_256_7362", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7362_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7362_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7362_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 380 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7363 for ECDSA, tcId is 381 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7363_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7363_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7363_sig[] = { 0x8e, 0x0c, 0x35, 0x24, 0x0e, 0x9e, 0x5b, 0x7b, 0xf2, 0xab, 0x35, 0x1a, 0xfb, 0x13, 0xac, 0x26, 0x55, 0x65, 0x3b, 0xae, 0xab, 0xc2, 0x47, 0xca, 0xb2, 0xc7, 0x1c, 0xc4, 0x0d, 0xa4, 0x4c, 0x00, 0x07, 0x9c, 0xbf, 0x8c, 0x9b, 0xa9, 0xb5, 0x36, 0x08, 0xb2, 0x19, 0xd6, 0x98, 0x98, 0x75, 0xd9, 0x60, 0xbd, 0xef, 0xcd, 0xe2, 0x24, 0xcf, 0x7a, 0xc6, 0xf8, 0xe7, 0x91, 0xad, 0xaa, 0x43, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7363 = { .name = "ecdsa_secp256r1_sha3_256_7363", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7363_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7363_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7363_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 381 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7364 for ECDSA, tcId is 382 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7364_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7364_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7364_sig[] = { 0xf6, 0xce, 0xb6, 0xc8, 0xf7, 0x6c, 0x33, 0x7f, 0x51, 0xf4, 0xec, 0x38, 0x59, 0xeb, 0x16, 0xca, 0xec, 0x96, 0x9f, 0xc0, 0x2a, 0x61, 0xde, 0xc1, 0xa7, 0x0f, 0xa4, 0x22, 0x3b, 0xdf, 0xb2, 0x54, 0x10, 0xc0, 0x33, 0x42, 0x98, 0xa9, 0x8a, 0x6e, 0x5c, 0x12, 0xe9, 0xc0, 0xca, 0xd5, 0x87, 0xdc, 0xab, 0x43, 0x19, 0x9b, 0x43, 0xcd, 0xf3, 0x78, 0x5b, 0xd9, 0xc3, 0x6b, 0x30, 0x92, 0x5c, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7364 = { .name = "ecdsa_secp256r1_sha3_256_7364", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7364_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7364_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7364_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 382 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7365 for ECDSA, tcId is 383 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7365_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_256_7365_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7365_sig[] = { 0x08, 0x30, 0x00, 0xa8, 0xe6, 0x12, 0x19, 0x39, 0xf4, 0xb8, 0x36, 0x12, 0x72, 0x7b, 0x20, 0x91, 0xd8, 0xab, 0xbb, 0xdf, 0x9c, 0x92, 0xbf, 0x9b, 0xdc, 0xac, 0xe8, 0x36, 0x61, 0x50, 0xce, 0x6f, 0xba, 0x69, 0x3f, 0x4e, 0x0b, 0x96, 0xdc, 0xbe, 0xea, 0xa7, 0x8c, 0x0d, 0x74, 0x43, 0x65, 0x76, 0x11, 0x51, 0x74, 0x03, 0x23, 0xc3, 0x46, 0xa5, 0x4d, 0x74, 0xb3, 0x32, 0x56, 0x8d, 0x93, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7365 = { .name = "ecdsa_secp256r1_sha3_256_7365", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7365_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7365_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7365_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 383 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7366 for ECDSA, tcId is 384 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7366_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_256_7366_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7366_sig[] = { 0x8a, 0x1b, 0xd6, 0xef, 0x28, 0x39, 0x48, 0x18, 0x4b, 0x5a, 0x32, 0xd3, 0x18, 0x60, 0xe9, 0x7c, 0xc0, 0xc4, 0x50, 0x93, 0x1f, 0x02, 0x4c, 0x30, 0xbb, 0x3b, 0x26, 0x1f, 0x25, 0x52, 0xcd, 0xc7, 0xb7, 0xe5, 0x0c, 0x05, 0x13, 0xa8, 0xec, 0x73, 0x0d, 0x11, 0x21, 0x09, 0xe9, 0x27, 0x61, 0xa2, 0x11, 0x51, 0xe4, 0xbe, 0xc6, 0x82, 0x68, 0xe5, 0xc7, 0x9e, 0xf8, 0x04, 0xb7, 0x57, 0xde, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7366 = { .name = "ecdsa_secp256r1_sha3_256_7366", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7366_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7366_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7366_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 384 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7367 for ECDSA, tcId is 385 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7367_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_256_7367_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7367_sig[] = { 0x0c, 0x18, 0x33, 0x7b, 0x70, 0x1b, 0x60, 0x00, 0xd3, 0xce, 0x35, 0x74, 0x66, 0x4c, 0x5d, 0xc4, 0x4e, 0xad, 0x6a, 0x1f, 0x2e, 0xe0, 0xc2, 0x7a, 0x72, 0x8e, 0xa0, 0xb0, 0xf3, 0x79, 0x90, 0xb9, 0xc3, 0x1d, 0xb9, 0xb1, 0x99, 0xb3, 0xe1, 0x70, 0x9c, 0x44, 0xa4, 0x41, 0x18, 0xd1, 0xd7, 0xcb, 0x75, 0x32, 0x4e, 0xe8, 0x2a, 0xda, 0x23, 0x18, 0x74, 0x4e, 0xb8, 0x96, 0x51, 0xe6, 0xf6, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7367 = { .name = "ecdsa_secp256r1_sha3_256_7367", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7367_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7367_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7367_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 385 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7368 for ECDSA, tcId is 386 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7368_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_256_7368_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7368_sig[] = { 0x21, 0x33, 0xd6, 0xfc, 0x78, 0xb3, 0x94, 0xd4, 0xc3, 0x4e, 0x17, 0x31, 0x20, 0xb1, 0xe4, 0x8c, 0x7f, 0xed, 0x7b, 0x89, 0xa0, 0x3e, 0x55, 0xca, 0xb9, 0x0b, 0x13, 0x67, 0x15, 0x5b, 0x43, 0x8a, 0x92, 0x93, 0xe6, 0x7f, 0xf4, 0xb9, 0x81, 0xe5, 0x0c, 0x48, 0xb0, 0x30, 0x4f, 0x7b, 0x1e, 0x6b, 0x53, 0x04, 0x16, 0xee, 0x35, 0x18, 0x83, 0x02, 0xb1, 0xdd, 0x2f, 0x21, 0xe5, 0xcb, 0x47, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7368 = { .name = "ecdsa_secp256r1_sha3_256_7368", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7368_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7368_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7368_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 386 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7369 for ECDSA, tcId is 387 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7369_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_256_7369_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7369_sig[] = { 0x36, 0x04, 0xa9, 0x8e, 0x92, 0x6b, 0x2f, 0x9d, 0x75, 0x85, 0xe3, 0x41, 0xa5, 0xec, 0xc7, 0x3a, 0x4e, 0x81, 0x1c, 0x5c, 0x8d, 0xa8, 0x2b, 0x65, 0x79, 0x0f, 0xf8, 0xa1, 0x17, 0xa7, 0x5b, 0xda, 0xa0, 0xff, 0x07, 0x77, 0x4c, 0x9a, 0x0d, 0x4b, 0xf8, 0x3d, 0xb2, 0x94, 0xb9, 0x70, 0xf2, 0x69, 0x6c, 0xc2, 0x9a, 0x73, 0x63, 0x7a, 0xa4, 0x54, 0xd4, 0xd3, 0xb4, 0x5e, 0xb9, 0x64, 0xbb, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7369 = { .name = "ecdsa_secp256r1_sha3_256_7369", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7369_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7369_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7369_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 387 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7370 for ECDSA, tcId is 388 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7370_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_256_7370_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7370_sig[] = { 0x6b, 0xf7, 0xe8, 0xf8, 0xbc, 0x3a, 0x5a, 0x2e, 0x22, 0x49, 0xc9, 0x27, 0x25, 0xcf, 0x0d, 0xff, 0xa9, 0xb7, 0x2e, 0xad, 0x3c, 0xc5, 0x6d, 0x05, 0x10, 0x7a, 0x4d, 0x58, 0x75, 0x63, 0xbe, 0xb4, 0xa0, 0x53, 0x32, 0xb5, 0xb4, 0x24, 0xd9, 0x7b, 0xfc, 0x08, 0x0f, 0xe0, 0x35, 0x34, 0x70, 0x61, 0x09, 0x31, 0xcd, 0x53, 0x8d, 0x2e, 0x4b, 0xcf, 0x78, 0xc6, 0xfc, 0x59, 0xb4, 0x81, 0xd2, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7370 = { .name = "ecdsa_secp256r1_sha3_256_7370", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7370_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7370_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7370_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 388 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7371 for ECDSA, tcId is 389 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7371_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_256_7371_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7371_sig[] = { 0x97, 0xe0, 0x99, 0xc7, 0x30, 0x88, 0xfc, 0x37, 0x05, 0x21, 0x80, 0xd0, 0x48, 0x39, 0x87, 0xe5, 0x0c, 0x15, 0x5c, 0x99, 0x3c, 0xba, 0x2e, 0x6c, 0x93, 0xdd, 0x9b, 0xea, 0x57, 0x98, 0xe2, 0xc3, 0x4a, 0x9e, 0xc5, 0xf0, 0x57, 0x39, 0xef, 0xb4, 0xea, 0x93, 0x79, 0x0e, 0xa2, 0x2c, 0x3f, 0xc4, 0x23, 0xd0, 0xae, 0xb1, 0x09, 0xcd, 0x13, 0xfb, 0x1b, 0x44, 0xd8, 0x7e, 0xa5, 0x2c, 0xa7, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7371 = { .name = "ecdsa_secp256r1_sha3_256_7371", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7371_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7371_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7371_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 389 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7372 for ECDSA, tcId is 390 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7372_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_256_7372_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7372_sig[] = { 0x39, 0x88, 0xbc, 0xe3, 0x19, 0x5a, 0xaf, 0x7c, 0x9b, 0x00, 0x8a, 0x9f, 0x16, 0x63, 0xa5, 0xe1, 0x3a, 0x8b, 0xee, 0x7d, 0xdb, 0xa3, 0x3a, 0x1b, 0xc5, 0xd5, 0x5a, 0xa4, 0x9f, 0xd3, 0x90, 0x3d, 0xc3, 0x9f, 0x61, 0x48, 0x28, 0xe2, 0xf7, 0x1a, 0x4c, 0x66, 0xd8, 0x6d, 0x1c, 0x3e, 0xc7, 0xe2, 0x83, 0xf7, 0x68, 0x03, 0x3c, 0xff, 0x5e, 0xd0, 0x9e, 0x93, 0xe3, 0x21, 0x8d, 0x9d, 0xf1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7372 = { .name = "ecdsa_secp256r1_sha3_256_7372", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7372_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7372_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7372_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 390 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7373 for ECDSA, tcId is 391 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7373_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_256_7373_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7373_sig[] = { 0xc3, 0xeb, 0x2e, 0x8f, 0x78, 0xa3, 0x1f, 0x22, 0x1d, 0x60, 0x03, 0xb9, 0x49, 0xf8, 0xdf, 0x6c, 0x7e, 0xc1, 0xe0, 0xc5, 0x38, 0x03, 0x23, 0x1e, 0x12, 0x43, 0x8c, 0xb2, 0xb1, 0xb1, 0xd9, 0xba, 0xb9, 0x7c, 0xc1, 0xfc, 0xce, 0x1d, 0x8d, 0xdb, 0xb5, 0xe1, 0xbf, 0xa6, 0xd5, 0x30, 0x0d, 0x7c, 0xac, 0x15, 0x54, 0x94, 0x60, 0x3c, 0x66, 0xf7, 0xee, 0xe8, 0xb8, 0xe9, 0xc9, 0x64, 0x34, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7373 = { .name = "ecdsa_secp256r1_sha3_256_7373", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7373_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7373_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7373_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 391 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7374 for ECDSA, tcId is 392 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7374_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_256_7374_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7374_sig[] = { 0x89, 0xe0, 0xc2, 0x3c, 0xcf, 0x61, 0xe6, 0x8d, 0xc0, 0xcb, 0x97, 0x77, 0xf1, 0x8b, 0x18, 0xc8, 0x4b, 0x2b, 0x02, 0xb4, 0x36, 0x0c, 0x79, 0xea, 0xa4, 0x0d, 0x46, 0xeb, 0xe7, 0xf3, 0xd9, 0xb1, 0xa5, 0xd0, 0x16, 0x4e, 0x39, 0x87, 0x64, 0xe7, 0xd1, 0x2d, 0x69, 0x67, 0x50, 0xfc, 0xb0, 0x92, 0x21, 0x1c, 0x22, 0xdf, 0xdd, 0x39, 0x41, 0xe5, 0x9c, 0xd7, 0x3b, 0xc4, 0x8e, 0xb9, 0x14, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7374 = { .name = "ecdsa_secp256r1_sha3_256_7374", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7374_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7374_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7374_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 392 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7375 for ECDSA, tcId is 393 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7375_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7375_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7375_sig[] = { 0xbb, 0xc1, 0xbb, 0x4f, 0xfc, 0xeb, 0x61, 0xa0, 0xdb, 0xe5, 0xa1, 0x2d, 0x96, 0x38, 0xdc, 0x9f, 0x00, 0x4e, 0x79, 0x7c, 0xf7, 0x2c, 0xdb, 0xa8, 0xd8, 0x79, 0xfd, 0xbc, 0xd8, 0x4d, 0xec, 0x14, 0x65, 0xa7, 0xc1, 0x7d, 0x9a, 0x68, 0x92, 0xcf, 0x54, 0x55, 0xa1, 0x90, 0x4f, 0xdd, 0x9b, 0x57, 0xce, 0x2b, 0x41, 0x54, 0x9b, 0x9b, 0x2c, 0xa5, 0xd7, 0xd1, 0x82, 0xc3, 0x05, 0xe9, 0xa2, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7375 = { .name = "ecdsa_secp256r1_sha3_256_7375", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7375_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7375_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7375_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 393 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7376 for ECDSA, tcId is 394 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7376_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7376_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7376_sig[] = { 0x2f, 0x09, 0x3a, 0x33, 0xc6, 0x9e, 0xea, 0xf8, 0x47, 0xe3, 0x32, 0xb1, 0x2b, 0xd0, 0x75, 0x8b, 0xe4, 0x1d, 0xcf, 0x75, 0xd8, 0x13, 0x18, 0x78, 0xf1, 0x6e, 0x6f, 0x12, 0x1c, 0xb3, 0xf4, 0xf1, 0x93, 0xc3, 0x04, 0xdf, 0x07, 0x4a, 0xef, 0x8c, 0xc2, 0xc8, 0xcd, 0xde, 0xaf, 0xfd, 0xa6, 0x7e, 0xb2, 0x42, 0x8e, 0xa7, 0xd3, 0xa1, 0x13, 0xd5, 0x13, 0x63, 0xe1, 0x78, 0xd8, 0x06, 0x8f, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7376 = { .name = "ecdsa_secp256r1_sha3_256_7376", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7376_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7376_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7376_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 394 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7377 for ECDSA, tcId is 395 in file ecdsa_secp256r1_sha3_256_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) static const unsigned char ecdsa_secp256r1_sha3_256_7377_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_256_7377_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_256_7377_sig[] = { 0xb6, 0x86, 0x77, 0x4d, 0xb3, 0x92, 0x01, 0xa9, 0x46, 0x2b, 0x96, 0x84, 0x2a, 0xdb, 0xee, 0xa1, 0x6a, 0xe6, 0x00, 0x37, 0x89, 0xbb, 0x18, 0x21, 0x4d, 0xab, 0x9e, 0x5a, 0x75, 0x8b, 0xf6, 0xef, 0xff, 0xc6, 0xb3, 0x96, 0x29, 0x3b, 0x94, 0xc9, 0x6f, 0xcb, 0x32, 0x5f, 0xae, 0x12, 0x76, 0x08, 0xeb, 0xfd, 0x11, 0x8a, 0x46, 0xf7, 0x15, 0xb4, 0x9b, 0x91, 0x8c, 0xaa, 0xfb, 0x60, 0x2a, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_256_7377 = { .name = "ecdsa_secp256r1_sha3_256_7377", .sig_alg = ECDSA, .hash = SHA3_256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_256_7377_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_256_7377_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_256_7377_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 395 in file ecdsa_secp256r1_sha3_256_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) */ /* Test 7378 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7378_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7378_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x12, 0x02, 0x06, 0x9b, 0x6b, 0x5f, 0xfa, 0xde, 0xde, 0x2f, 0xdc, 0x29, 0x0d, 0xa1, 0xba, 0xdc, 0x98, 0x9b, 0xa9, 0x8a, 0x9a, 0x49, 0x1d, 0xb3, 0x39, 0xbf, 0xe4, 0x78, 0x45, 0x0e, 0xf9, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7378 = { .name = "ecdsa_secp256r1_sha3_512_7378", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7378_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7378_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7378_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7379 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7379_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7379_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7379 = { .name = "ecdsa_secp256r1_sha3_512_7379", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7379_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7379_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7379_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7380 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7380_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7380_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7380 = { .name = "ecdsa_secp256r1_sha3_512_7380", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7380_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7380_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7380_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7381 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7381_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7381_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7381 = { .name = "ecdsa_secp256r1_sha3_512_7381", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7381_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7381_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7381_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7382 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7382_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7382_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7382 = { .name = "ecdsa_secp256r1_sha3_512_7382", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7382_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7382_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7382_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7383 for ECDSA, tcId is 6 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7383_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7383_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7383 = { .name = "ecdsa_secp256r1_sha3_512_7383", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7383_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7383_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7383_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7384 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7384_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7384_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7384 = { .name = "ecdsa_secp256r1_sha3_512_7384", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7384_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7384_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7384_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7385 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7385_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7385_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7385 = { .name = "ecdsa_secp256r1_sha3_512_7385", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7385_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7385_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7385_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7386 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7386_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7386_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7386 = { .name = "ecdsa_secp256r1_sha3_512_7386", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7386_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7386_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7386_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7387 for ECDSA, tcId is 72 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7387_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7387_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7387 = { .name = "ecdsa_secp256r1_sha3_512_7387", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7387_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7387_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7387_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7388 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7388_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7388_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x00, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7388 = { .name = "ecdsa_secp256r1_sha3_512_7388", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7388_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7388_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7388_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7389 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7389_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7389_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7389 = { .name = "ecdsa_secp256r1_sha3_512_7389", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7389_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7389_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7389_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7390 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7390_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7390_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7390 = { .name = "ecdsa_secp256r1_sha3_512_7390", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7390_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7390_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7390_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7391 for ECDSA, tcId is 97 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7391_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7391_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7391 = { .name = "ecdsa_secp256r1_sha3_512_7391", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7391_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7391_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7391_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7392 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7392_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7392_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x05, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7392 = { .name = "ecdsa_secp256r1_sha3_512_7392", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7392_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7392_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7392_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7393 for ECDSA, tcId is 100 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7393_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7393_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7393 = { .name = "ecdsa_secp256r1_sha3_512_7393", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7393_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7393_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7393_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7394 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7394_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7394_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7394 = { .name = "ecdsa_secp256r1_sha3_512_7394", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7394_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7394_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7394_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7395 for ECDSA, tcId is 116 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7395_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7395_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7395 = { .name = "ecdsa_secp256r1_sha3_512_7395", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7395_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7395_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7395_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7396 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7396_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7396_sig[] = { 0x02, 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7396 = { .name = "ecdsa_secp256r1_sha3_512_7396", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7396_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7396_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7396_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7397 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7397_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7397_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x02, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7397 = { .name = "ecdsa_secp256r1_sha3_512_7397", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7397_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7397_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7397_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7398 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7398_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7398_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0xad, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7398 = { .name = "ecdsa_secp256r1_sha3_512_7398", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7398_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7398_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7398_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7399 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7399_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7399_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7399 = { .name = "ecdsa_secp256r1_sha3_512_7399", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7399_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7399_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7399_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7400 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7400_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7400_sig[] = { 0x00, 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7400 = { .name = "ecdsa_secp256r1_sha3_512_7400", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7400_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7400_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7400_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7401 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7401_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7401_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7401 = { .name = "ecdsa_secp256r1_sha3_512_7401", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7401_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7401_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7401_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7402 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7402_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7402_sig[] = { 0x00, 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7402 = { .name = "ecdsa_secp256r1_sha3_512_7402", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7402_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7402_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7402_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7403 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7403_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7403_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7403_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7403 = { .name = "ecdsa_secp256r1_sha3_512_7403", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7403_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7403_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7403_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7404 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7404_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7404_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7404 = { .name = "ecdsa_secp256r1_sha3_512_7404", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7404_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7404_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7404_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7405 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7405_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7405_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7405 = { .name = "ecdsa_secp256r1_sha3_512_7405", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7405_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7405_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7405_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7406 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7406_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7406_sig[] = { 0x01, 0xdc, 0xbe, 0x02, 0xd2, 0x80, 0x91, 0xfc, 0xcc, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x0d, 0x08, 0xc1, 0x66, 0x99, 0x29, 0x5b, 0x22, 0x35, 0x5e, 0x5e, 0x3a, 0xe9, 0xbb, 0x14, 0x7e, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7406 = { .name = "ecdsa_secp256r1_sha3_512_7406", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7406_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7406_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7406_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7407 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7407_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7407_sig[] = { 0xdc, 0xbe, 0x02, 0xd4, 0x80, 0x91, 0xfc, 0xca, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x93, 0x3a, 0xcc, 0x0b, 0x4a, 0xfa, 0x1e, 0x18, 0x4d, 0xea, 0xc8, 0xb4, 0xf0, 0xf4, 0xc9, 0xdc, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7407 = { .name = "ecdsa_secp256r1_sha3_512_7407", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7407_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7407_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7407_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7408 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7408_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7408_sig[] = { 0x23, 0x41, 0xfd, 0x2c, 0x7f, 0x6e, 0x03, 0x34, 0x58, 0xed, 0xe8, 0xa1, 0xe1, 0x00, 0x25, 0x89, 0xaf, 0xde, 0x39, 0x47, 0x0d, 0xee, 0x43, 0x62, 0xbe, 0x5b, 0x6c, 0x88, 0x12, 0xa8, 0x10, 0xd3, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7408 = { .name = "ecdsa_secp256r1_sha3_512_7408", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7408_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7408_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7408_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7409 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7409_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7409_sig[] = { 0x23, 0x41, 0xfd, 0x2b, 0x7f, 0x6e, 0x03, 0x35, 0x58, 0xed, 0xe8, 0xa1, 0xe1, 0x00, 0x25, 0x89, 0x6c, 0xc5, 0x33, 0xf4, 0xb5, 0x05, 0xe1, 0xe7, 0xb2, 0x15, 0x37, 0x4b, 0x0f, 0x0b, 0x36, 0x24, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7409 = { .name = "ecdsa_secp256r1_sha3_512_7409", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7409_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7409_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7409_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7410 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7410_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7410_sig[] = { 0xfe, 0x23, 0x41, 0xfd, 0x2d, 0x7f, 0x6e, 0x03, 0x33, 0x58, 0xed, 0xe8, 0xa1, 0xe1, 0x00, 0x25, 0x89, 0xf2, 0xf7, 0x3e, 0x99, 0x66, 0xd6, 0xa4, 0xdd, 0xca, 0xa1, 0xa1, 0xc5, 0x16, 0x44, 0xeb, 0x82, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7410 = { .name = "ecdsa_secp256r1_sha3_512_7410", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7410_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7410_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7410_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7411 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7411_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7411_sig[] = { 0x01, 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7411 = { .name = "ecdsa_secp256r1_sha3_512_7411", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7411_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7411_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7411_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7412 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7412_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7412_sig[] = { 0x23, 0x41, 0xfd, 0x2c, 0x7f, 0x6e, 0x03, 0x34, 0x58, 0xed, 0xe8, 0xa1, 0xe1, 0x00, 0x25, 0x89, 0xaf, 0xde, 0x39, 0x47, 0x0d, 0xee, 0x43, 0x62, 0xbe, 0x5b, 0x6c, 0x88, 0x12, 0xa8, 0x10, 0xd3, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7412 = { .name = "ecdsa_secp256r1_sha3_512_7412", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7412_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7412_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7412_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7413 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7413_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7413_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x01, 0xed, 0xfd, 0xf9, 0x62, 0x94, 0xa0, 0x05, 0x23, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x22, 0xe1, 0x32, 0x4b, 0xd0, 0xb3, 0xe6, 0x1f, 0x56, 0xad, 0xb3, 0xb1, 0x0d, 0xb3, 0xb7, 0x50, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7413 = { .name = "ecdsa_secp256r1_sha3_512_7413", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7413_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7413_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7413_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7414 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7414_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7414_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xed, 0xfd, 0xf9, 0x64, 0x94, 0xa0, 0x05, 0x21, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x67, 0x64, 0x56, 0x75, 0x65, 0xb6, 0xe2, 0x4c, 0xc6, 0x40, 0x1b, 0x87, 0xba, 0xf1, 0x06, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7414 = { .name = "ecdsa_secp256r1_sha3_512_7414", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7414_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7414_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7414_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7415 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7415_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7415_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x12, 0x02, 0x06, 0x9c, 0x6b, 0x5f, 0xfa, 0xdd, 0xde, 0x2f, 0xdc, 0x29, 0x0d, 0xa1, 0xba, 0xdc, 0xdb, 0xb4, 0xae, 0xdc, 0xf3, 0x31, 0x7f, 0x2e, 0x46, 0x06, 0x19, 0xb5, 0x48, 0xab, 0xd4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7415 = { .name = "ecdsa_secp256r1_sha3_512_7415", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7415_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7415_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7415_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7416 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7416_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7416_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0xfe, 0x12, 0x02, 0x06, 0x9d, 0x6b, 0x5f, 0xfa, 0xdc, 0xde, 0x2f, 0xdc, 0x29, 0x0d, 0xa1, 0xba, 0xdd, 0x1e, 0xcd, 0xb4, 0x2f, 0x4c, 0x19, 0xe0, 0xa9, 0x52, 0x4c, 0x4e, 0xf2, 0x4c, 0x48, 0xaf, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7416 = { .name = "ecdsa_secp256r1_sha3_512_7416", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7416_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7416_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7416_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7417 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7417_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7417_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x01, 0xed, 0xfd, 0xf9, 0x63, 0x94, 0xa0, 0x05, 0x22, 0x21, 0xd0, 0x23, 0xd6, 0xf2, 0x5e, 0x45, 0x23, 0x24, 0x4b, 0x51, 0x23, 0x0c, 0xce, 0x80, 0xd1, 0xb9, 0xf9, 0xe6, 0x4a, 0xb7, 0x54, 0x2b, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7417 = { .name = "ecdsa_secp256r1_sha3_512_7417", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7417_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7417_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7417_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7418 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7418_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7418_sig[] = { 0xdc, 0xbe, 0x02, 0xd3, 0x80, 0x91, 0xfc, 0xcb, 0xa7, 0x12, 0x17, 0x5e, 0x1e, 0xff, 0xda, 0x76, 0x50, 0x21, 0xc6, 0xb8, 0xf2, 0x11, 0xbc, 0x9d, 0x41, 0xa4, 0x93, 0x77, 0xed, 0x57, 0xef, 0x2d, 0x12, 0x02, 0x06, 0x9c, 0x6b, 0x5f, 0xfa, 0xdd, 0xde, 0x2f, 0xdc, 0x29, 0x0d, 0xa1, 0xba, 0xdc, 0xdb, 0xb4, 0xae, 0xdc, 0xf3, 0x31, 0x7f, 0x2e, 0x46, 0x06, 0x19, 0xb5, 0x48, 0xab, 0xd4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7418 = { .name = "ecdsa_secp256r1_sha3_512_7418", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7418_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7418_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7418_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7419 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7419_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7419_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7419 = { .name = "ecdsa_secp256r1_sha3_512_7419", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7419_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7419_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7419_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7420 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7420_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7420_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7420 = { .name = "ecdsa_secp256r1_sha3_512_7420", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7420_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7420_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7420_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7421 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7421_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7421_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7421 = { .name = "ecdsa_secp256r1_sha3_512_7421", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7421_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7421_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7421_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7422 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7422_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7422_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7422 = { .name = "ecdsa_secp256r1_sha3_512_7422", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7422_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7422_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7422_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7423 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7423_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7423_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7423 = { .name = "ecdsa_secp256r1_sha3_512_7423", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7423_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7423_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7423_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7424 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7424_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7424_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7424 = { .name = "ecdsa_secp256r1_sha3_512_7424", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7424_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7424_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7424_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7425 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7425_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7425_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7425 = { .name = "ecdsa_secp256r1_sha3_512_7425", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7425_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7425_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7425_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7426 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7426_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7426_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7426 = { .name = "ecdsa_secp256r1_sha3_512_7426", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7426_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7426_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7426_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7427 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7427_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7427_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7427 = { .name = "ecdsa_secp256r1_sha3_512_7427", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7427_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7427_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7427_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7428 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7428_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7428_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7428 = { .name = "ecdsa_secp256r1_sha3_512_7428", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7428_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7428_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7428_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7429 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7429_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7429_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7429 = { .name = "ecdsa_secp256r1_sha3_512_7429", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7429_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7429_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7429_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7430 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7430_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7430_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7430 = { .name = "ecdsa_secp256r1_sha3_512_7430", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7430_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7430_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7430_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7431 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7431_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7431_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7431 = { .name = "ecdsa_secp256r1_sha3_512_7431", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7431_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7431_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7431_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7432 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7432_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7432_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7432 = { .name = "ecdsa_secp256r1_sha3_512_7432", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7432_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7432_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7432_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7433 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7433_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7433_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7433 = { .name = "ecdsa_secp256r1_sha3_512_7433", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7433_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7433_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7433_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7434 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7434_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7434_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7434 = { .name = "ecdsa_secp256r1_sha3_512_7434", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7434_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7434_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7434_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7435 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7435_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7435_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7435 = { .name = "ecdsa_secp256r1_sha3_512_7435", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7435_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7435_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7435_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7436 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7436_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7436_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7436 = { .name = "ecdsa_secp256r1_sha3_512_7436", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7436_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7436_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7436_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7437 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7437_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7437_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7437 = { .name = "ecdsa_secp256r1_sha3_512_7437", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7437_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7437_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7437_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7438 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7438_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7438_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7438 = { .name = "ecdsa_secp256r1_sha3_512_7438", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7438_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7438_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7438_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7439 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7439_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7439_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7439 = { .name = "ecdsa_secp256r1_sha3_512_7439", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7439_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7439_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7439_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7440 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7440_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7440_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7440 = { .name = "ecdsa_secp256r1_sha3_512_7440", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7440_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7440_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7440_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7441 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7441_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7441_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7441 = { .name = "ecdsa_secp256r1_sha3_512_7441", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7441_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7441_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7441_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7442 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7442_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7442_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7442 = { .name = "ecdsa_secp256r1_sha3_512_7442", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7442_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7442_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7442_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7443 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7443_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7443_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7443 = { .name = "ecdsa_secp256r1_sha3_512_7443", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7443_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7443_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7443_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7444 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7444_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7444_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7444 = { .name = "ecdsa_secp256r1_sha3_512_7444", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7444_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7444_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7444_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7445 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7445_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7445_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7445 = { .name = "ecdsa_secp256r1_sha3_512_7445", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7445_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7445_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7445_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7446 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7446_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7446_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7446 = { .name = "ecdsa_secp256r1_sha3_512_7446", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7446_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7446_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7446_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7447 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7447_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7447_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7447 = { .name = "ecdsa_secp256r1_sha3_512_7447", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7447_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7447_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7447_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7448 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7448_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7448_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7448 = { .name = "ecdsa_secp256r1_sha3_512_7448", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7448_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7448_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7448_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7449 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7449_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7449_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7449 = { .name = "ecdsa_secp256r1_sha3_512_7449", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7449_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7449_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7449_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7450 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7450_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7450_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7450 = { .name = "ecdsa_secp256r1_sha3_512_7450", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7450_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7450_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7450_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7451 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7451_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7451_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7451 = { .name = "ecdsa_secp256r1_sha3_512_7451", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7451_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7451_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7451_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7452 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7452_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7452_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7452 = { .name = "ecdsa_secp256r1_sha3_512_7452", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7452_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7452_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7452_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7453 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7453_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7453_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7453 = { .name = "ecdsa_secp256r1_sha3_512_7453", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7453_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7453_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7453_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7454 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7454_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7454_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7454 = { .name = "ecdsa_secp256r1_sha3_512_7454", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7454_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7454_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7454_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7455 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7455_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7455_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7455 = { .name = "ecdsa_secp256r1_sha3_512_7455", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7455_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7455_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7455_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7456 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7456_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7456_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7456 = { .name = "ecdsa_secp256r1_sha3_512_7456", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7456_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7456_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7456_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7457 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7457_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7457_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7457 = { .name = "ecdsa_secp256r1_sha3_512_7457", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7457_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7457_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7457_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7458 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7458_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7458_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7458_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7458 = { .name = "ecdsa_secp256r1_sha3_512_7458", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7458_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7458_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7458_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7459 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7459_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7459_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7459_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7459 = { .name = "ecdsa_secp256r1_sha3_512_7459", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7459_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7459_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7459_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7460 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7460_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7460_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7460 = { .name = "ecdsa_secp256r1_sha3_512_7460", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7460_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7460_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7460_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7461 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7461_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7461_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7461_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7461 = { .name = "ecdsa_secp256r1_sha3_512_7461", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7461_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7461_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7461_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7462 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7462_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7462_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7462_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7462 = { .name = "ecdsa_secp256r1_sha3_512_7462", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7462_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7462_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7462_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7463 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7463_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7463_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7463_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7463 = { .name = "ecdsa_secp256r1_sha3_512_7463", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7463_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7463_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7463_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7464 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7464_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7464_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7464_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7464 = { .name = "ecdsa_secp256r1_sha3_512_7464", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7464_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7464_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7464_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7465 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7465_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7465_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7465_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7465 = { .name = "ecdsa_secp256r1_sha3_512_7465", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7465_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7465_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7465_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7466 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7466_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7466_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7466_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7466 = { .name = "ecdsa_secp256r1_sha3_512_7466", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7466_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7466_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7466_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7467 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7467_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7467_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7467_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7467 = { .name = "ecdsa_secp256r1_sha3_512_7467", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7467_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7467_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7467_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7468 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7468_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7468_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7468_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7468 = { .name = "ecdsa_secp256r1_sha3_512_7468", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7468_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7468_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7468_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7469 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7469_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7469_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7469_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7469 = { .name = "ecdsa_secp256r1_sha3_512_7469", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7469_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7469_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7469_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7470 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7470_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7470_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7470_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7470 = { .name = "ecdsa_secp256r1_sha3_512_7470", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7470_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7470_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7470_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7471 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7471_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7471_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7471_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7471 = { .name = "ecdsa_secp256r1_sha3_512_7471", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7471_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7471_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7471_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7472 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7472_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7472_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7472_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7472 = { .name = "ecdsa_secp256r1_sha3_512_7472", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7472_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7472_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7472_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7473 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7473_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7473_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7473 = { .name = "ecdsa_secp256r1_sha3_512_7473", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7473_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7473_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7473_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7474 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7474_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7474_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7474_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7474 = { .name = "ecdsa_secp256r1_sha3_512_7474", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7474_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7474_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7474_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7475 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7475_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7475_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7475_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7475 = { .name = "ecdsa_secp256r1_sha3_512_7475", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7475_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7475_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7475_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7476 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7476_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7476_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7476_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7476 = { .name = "ecdsa_secp256r1_sha3_512_7476", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7476_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7476_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7476_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7477 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7477_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7477_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7477_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7477 = { .name = "ecdsa_secp256r1_sha3_512_7477", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7477_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7477_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7477_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7478 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7478_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7478_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7478_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7478 = { .name = "ecdsa_secp256r1_sha3_512_7478", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7478_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7478_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7478_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7479 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7479_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7479_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7479 = { .name = "ecdsa_secp256r1_sha3_512_7479", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7479_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7479_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7479_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7480 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7480_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7480_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7480 = { .name = "ecdsa_secp256r1_sha3_512_7480", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7480_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7480_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7480_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7481 for ECDSA, tcId is 220 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7481_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7481_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7481 = { .name = "ecdsa_secp256r1_sha3_512_7481", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7481_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7481_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7481_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7482 for ECDSA, tcId is 221 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7482_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7482_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7482 = { .name = "ecdsa_secp256r1_sha3_512_7482", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7482_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7482_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7482_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7483 for ECDSA, tcId is 230 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7483_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7483_msg[] = { 0x33, 0x35, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7483_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x3d, 0x4e, 0x6c, 0x69, 0x17, 0x6b, 0xb9, 0xe3, 0x0e, 0xec, 0x30, 0x4a, 0x30, 0xd9, 0x82, 0xcb, 0x3f, 0x60, 0x73, 0xa2, 0x27, 0x3f, 0x36, 0xb6, 0x7b, 0x1b, 0x28, 0x48, 0x99, 0xb0, 0x81, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7483 = { .name = "ecdsa_secp256r1_sha3_512_7483", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7483_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7483_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha3_512_7483_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7484 for ECDSA, tcId is 231 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7484_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7484_msg[] = { 0x32, 0x37, 0x32, 0x39, 0x37, 0x32, 0x36, 0x34, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7484_sig[] = { 0xf5, 0x21, 0x80, 0x7c, 0x1e, 0x32, 0x9a, 0xc6, 0xdf, 0x4d, 0xf2, 0x42, 0x08, 0xd1, 0xe7, 0x08, 0x8b, 0x4e, 0x4d, 0xe5, 0xa8, 0x2e, 0xd3, 0x7d, 0xbf, 0xd8, 0xd4, 0x9c, 0x74, 0x06, 0xf9, 0x1b, 0xc4, 0x4f, 0x72, 0x30, 0x38, 0xde, 0xea, 0x85, 0x8a, 0x25, 0xd7, 0x26, 0x4d, 0x16, 0x80, 0xb4, 0x16, 0xff, 0xc0, 0xd9, 0x09, 0xb9, 0x4d, 0xef, 0x9f, 0xbd, 0xa0, 0x24, 0x77, 0xd6, 0x9e, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7484 = { .name = "ecdsa_secp256r1_sha3_512_7484", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7484_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7484_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7484_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7485 for ECDSA, tcId is 232 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7485_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7485_msg[] = { 0x34, 0x33, 0x31, 0x34, 0x37, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7485_sig[] = { 0x21, 0x9f, 0x84, 0x27, 0x83, 0x02, 0x8c, 0xab, 0x66, 0xf4, 0x19, 0x24, 0x1d, 0xee, 0x39, 0xda, 0x45, 0x9e, 0x2d, 0x29, 0x5d, 0x0a, 0xb1, 0xe5, 0x6b, 0x29, 0xb3, 0x8f, 0x50, 0xa8, 0xbd, 0x51, 0xf6, 0xf3, 0x57, 0x07, 0x76, 0x77, 0xe2, 0x66, 0x9c, 0x1e, 0x28, 0x9f, 0x65, 0xc6, 0x09, 0x4c, 0x68, 0xb8, 0xe1, 0xef, 0xbe, 0x4c, 0x87, 0x46, 0x83, 0x27, 0xc8, 0x1d, 0x55, 0x97, 0x9b, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7485 = { .name = "ecdsa_secp256r1_sha3_512_7485", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7485_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7485_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7485_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7486 for ECDSA, tcId is 233 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7486_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7486_msg[] = { 0x36, 0x36, 0x30, 0x33, 0x34, 0x33, 0x38, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7486_sig[] = { 0x15, 0x76, 0x8c, 0x26, 0x23, 0xe7, 0x09, 0x3c, 0x7d, 0xcb, 0x46, 0x8d, 0x43, 0x00, 0x07, 0xfc, 0x73, 0x38, 0xf1, 0xcf, 0xd0, 0x58, 0xfe, 0x22, 0xab, 0x09, 0xa4, 0x51, 0xb6, 0x1e, 0xc3, 0x4c, 0xa6, 0x09, 0x68, 0x92, 0x26, 0xf0, 0x73, 0xc9, 0x68, 0xfc, 0x46, 0x33, 0x6c, 0xfd, 0x11, 0x6e, 0xdb, 0x92, 0x04, 0x5f, 0x23, 0x83, 0xd5, 0x37, 0x6f, 0xf8, 0x82, 0x72, 0xdc, 0x44, 0x4c, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7486 = { .name = "ecdsa_secp256r1_sha3_512_7486", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7486_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7486_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7486_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7487 for ECDSA, tcId is 234 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7487_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7487_msg[] = { 0x32, 0x38, 0x32, 0x39, 0x36, 0x32, 0x31, 0x34, 0x35, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7487_sig[] = { 0xbb, 0x44, 0x9a, 0xce, 0x6f, 0x3b, 0x90, 0x01, 0x03, 0xa0, 0x93, 0x57, 0xcd, 0xa1, 0x6e, 0x3b, 0x14, 0xe9, 0xe9, 0x9b, 0xeb, 0x3b, 0x8f, 0x19, 0x28, 0xf0, 0xa6, 0x6c, 0xe3, 0x0b, 0x0e, 0xa5, 0x6e, 0x6b, 0x65, 0xf9, 0x79, 0x8c, 0xd8, 0xc3, 0x2d, 0x70, 0x68, 0x27, 0x08, 0x00, 0xda, 0x5d, 0x98, 0xf0, 0x6d, 0x36, 0x83, 0x6c, 0xcb, 0x7c, 0x30, 0x55, 0x17, 0x17, 0xfa, 0xe3, 0x05, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7487 = { .name = "ecdsa_secp256r1_sha3_512_7487", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7487_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7487_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7487_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7488 for ECDSA, tcId is 235 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7488_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7488_msg[] = { 0x34, 0x33, 0x31, 0x31, 0x38, 0x32, 0x31, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7488_sig[] = { 0x58, 0x9e, 0x10, 0xe3, 0x4c, 0x3f, 0xea, 0x59, 0x47, 0x8a, 0x93, 0x01, 0xbd, 0xe9, 0x76, 0xcb, 0xd5, 0x6a, 0xc1, 0x5a, 0xfa, 0x2f, 0x13, 0xf1, 0x4f, 0x31, 0x0e, 0x5e, 0x8d, 0x6b, 0xf1, 0xe1, 0xad, 0xf5, 0x19, 0x81, 0x11, 0x93, 0x9b, 0xd3, 0x95, 0xbd, 0x38, 0x20, 0x74, 0x2a, 0x68, 0xae, 0x97, 0xf8, 0x59, 0x5c, 0xfc, 0x8b, 0x7e, 0x18, 0x92, 0xfc, 0x36, 0x0d, 0x13, 0x14, 0x21, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7488 = { .name = "ecdsa_secp256r1_sha3_512_7488", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7488_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7488_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7488_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7489 for ECDSA, tcId is 236 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7489_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7489_msg[] = { 0x31, 0x31, 0x37, 0x37, 0x30, 0x37, 0x37, 0x34, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7489_sig[] = { 0xad, 0x5a, 0x1d, 0xaa, 0xb3, 0x02, 0x3a, 0x65, 0x1b, 0x58, 0xe3, 0xa1, 0x3e, 0xbf, 0xae, 0xfc, 0x14, 0xfb, 0x9c, 0x79, 0xad, 0x26, 0x10, 0xbe, 0x68, 0xe4, 0x9b, 0xd3, 0x99, 0x2e, 0x57, 0x22, 0xcf, 0xb9, 0x1f, 0xa1, 0x6a, 0x32, 0xc8, 0x72, 0x4c, 0xef, 0x57, 0x14, 0xe7, 0x2f, 0x2c, 0x91, 0xb1, 0xd5, 0x00, 0x50, 0xb4, 0xeb, 0x27, 0x2a, 0x82, 0x32, 0x76, 0x04, 0x48, 0x6c, 0xbb, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7489 = { .name = "ecdsa_secp256r1_sha3_512_7489", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7489_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7489_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7489_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7490 for ECDSA, tcId is 237 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7490_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7490_msg[] = { 0x31, 0x35, 0x39, 0x38, 0x35, 0x31, 0x35, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7490_sig[] = { 0x59, 0xd0, 0xdf, 0x11, 0x76, 0xb2, 0x77, 0xe1, 0x2c, 0x09, 0x7e, 0x9e, 0x00, 0x86, 0x0d, 0xc4, 0xad, 0x3b, 0xb7, 0xf2, 0xe4, 0xaf, 0x22, 0x82, 0xbe, 0xb1, 0x3e, 0xff, 0x9d, 0x7b, 0x6a, 0xfc, 0xd3, 0xda, 0x4f, 0x61, 0xe8, 0xad, 0xc8, 0x44, 0x98, 0x85, 0xa5, 0x2b, 0xf7, 0x3e, 0xda, 0x66, 0xac, 0x1b, 0x77, 0xba, 0x05, 0xa1, 0xab, 0x83, 0x97, 0xe4, 0x2e, 0xca, 0xea, 0xff, 0x68, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7490 = { .name = "ecdsa_secp256r1_sha3_512_7490", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7490_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7490_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7490_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7491 for ECDSA, tcId is 238 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7491_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7491_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x30, 0x31, 0x36, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7491_sig[] = { 0xd2, 0x74, 0xba, 0xce, 0xef, 0xc7, 0x2a, 0x92, 0x1f, 0xc4, 0x96, 0x2c, 0xc9, 0x48, 0x72, 0x63, 0xec, 0x69, 0x84, 0xf0, 0xf8, 0x2c, 0x0b, 0x99, 0x2a, 0xe3, 0xc8, 0x0b, 0xa6, 0x85, 0xb4, 0x23, 0x24, 0xbd, 0x9a, 0x9f, 0x39, 0xed, 0x02, 0x77, 0x3e, 0x8b, 0xa5, 0x4e, 0x3f, 0x0f, 0x99, 0xf4, 0xe8, 0x06, 0xa6, 0x98, 0x39, 0xb7, 0x89, 0x00, 0x99, 0xbe, 0x29, 0x78, 0xcd, 0x55, 0x07, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7491 = { .name = "ecdsa_secp256r1_sha3_512_7491", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7491_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7491_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7491_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7492 for ECDSA, tcId is 239 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7492_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7492_msg[] = { 0x32, 0x30, 0x30, 0x34, 0x37, 0x38, 0x33, 0x33, 0x33, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7492_sig[] = { 0x34, 0x11, 0xdb, 0x9e, 0x53, 0xaf, 0x62, 0x47, 0x2c, 0x8a, 0xfa, 0x3a, 0x4a, 0xe7, 0xd0, 0x44, 0xfd, 0xbb, 0x78, 0xb1, 0xe3, 0xa8, 0xe8, 0xfd, 0x32, 0x9b, 0xc7, 0x2e, 0x9e, 0x1d, 0xfb, 0x5d, 0x82, 0x84, 0xd9, 0x3b, 0x62, 0x24, 0x2f, 0x62, 0x74, 0xa2, 0x6a, 0x34, 0x19, 0x71, 0x9d, 0xc0, 0x63, 0x5e, 0x06, 0x04, 0xfa, 0x6d, 0xa5, 0xc2, 0xdb, 0xfb, 0xb8, 0x55, 0x41, 0xc8, 0x85, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7492 = { .name = "ecdsa_secp256r1_sha3_512_7492", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7492_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7492_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7492_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7493 for ECDSA, tcId is 240 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7493_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7493_msg[] = { 0x39, 0x35, 0x30, 0x30, 0x32, 0x34, 0x37, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7493_sig[] = { 0x33, 0xb2, 0xab, 0xf9, 0x20, 0x21, 0xa1, 0x4f, 0xd1, 0xe5, 0x29, 0x30, 0x08, 0xc8, 0xaf, 0xf5, 0x51, 0xfd, 0x4a, 0x0c, 0xac, 0xaf, 0x8e, 0xc6, 0xe1, 0x47, 0xf4, 0x0d, 0x0f, 0x52, 0x1c, 0xb0, 0x4d, 0x0d, 0x3e, 0xd0, 0x85, 0x47, 0x7a, 0x4d, 0xc7, 0xfd, 0x86, 0xd2, 0x42, 0x90, 0x56, 0x37, 0xa7, 0x17, 0x00, 0xff, 0xd4, 0xc2, 0x2c, 0xf9, 0x62, 0xa6, 0x7e, 0x9a, 0xe3, 0x2b, 0x88, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7493 = { .name = "ecdsa_secp256r1_sha3_512_7493", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7493_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7493_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7493_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7494 for ECDSA, tcId is 241 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7494_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7494_msg[] = { 0x32, 0x32, 0x30, 0x39, 0x35, 0x30, 0x30, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7494_sig[] = { 0x71, 0x7f, 0x51, 0x85, 0x24, 0x2a, 0xc5, 0x72, 0x15, 0xd8, 0x71, 0x3f, 0x90, 0x2c, 0xf9, 0x01, 0x2f, 0x45, 0xdb, 0xa7, 0x6b, 0x8e, 0x7e, 0x51, 0xc6, 0x7b, 0x71, 0xe6, 0xde, 0x10, 0xf0, 0xd8, 0x28, 0xa9, 0xad, 0x76, 0x5a, 0x6b, 0x12, 0x48, 0x80, 0x7b, 0xe1, 0x26, 0xb9, 0xee, 0xe0, 0x1e, 0x8e, 0x2d, 0x65, 0xd8, 0x52, 0x8c, 0xb2, 0x8f, 0x0d, 0x45, 0x76, 0x3f, 0x50, 0x7d, 0x97, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7494 = { .name = "ecdsa_secp256r1_sha3_512_7494", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7494_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7494_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7494_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7495 for ECDSA, tcId is 242 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7495_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7495_msg[] = { 0x38, 0x31, 0x39, 0x33, 0x37, 0x38, 0x39, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7495_sig[] = { 0x4e, 0x57, 0xdb, 0xec, 0xe1, 0x4d, 0x3d, 0x27, 0x9f, 0x1e, 0x83, 0x17, 0x77, 0xb2, 0x84, 0x01, 0xd2, 0x99, 0x0c, 0x4a, 0xe4, 0x77, 0xee, 0xbb, 0x99, 0x7b, 0x58, 0x3e, 0x82, 0xf2, 0x9c, 0x54, 0x3e, 0x41, 0xfe, 0x09, 0x0c, 0x8f, 0x14, 0xb8, 0xaf, 0x7f, 0xd3, 0x9c, 0x26, 0x28, 0x86, 0x92, 0x58, 0xcf, 0x05, 0xb0, 0xe2, 0x89, 0xb6, 0x69, 0x26, 0x02, 0xc1, 0x0c, 0xdc, 0xc8, 0xdd, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7495 = { .name = "ecdsa_secp256r1_sha3_512_7495", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7495_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7495_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7495_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7496 for ECDSA, tcId is 243 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7496_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7496_msg[] = { 0x33, 0x36, 0x35, 0x30, 0x36, 0x30, 0x33, 0x32, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7496_sig[] = { 0x09, 0xeb, 0x0b, 0x2b, 0xf6, 0xa2, 0x49, 0x1e, 0xb3, 0x5c, 0x3a, 0x90, 0x2d, 0xa3, 0xc6, 0xc9, 0x09, 0x33, 0xdd, 0x37, 0x4d, 0xfb, 0x1f, 0x60, 0xf8, 0xef, 0x7b, 0xd7, 0x49, 0x72, 0x57, 0x55, 0xdf, 0x8a, 0x0e, 0xe8, 0xf7, 0x57, 0xdc, 0x59, 0x93, 0x50, 0xbb, 0x0e, 0x2a, 0xec, 0x51, 0x54, 0x51, 0x15, 0x2f, 0xf0, 0x5b, 0xb2, 0xe4, 0x39, 0xba, 0x91, 0x45, 0xfc, 0x9a, 0x08, 0x49, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7496 = { .name = "ecdsa_secp256r1_sha3_512_7496", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7496_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7496_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7496_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7497 for ECDSA, tcId is 244 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7497_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7497_msg[] = { 0x31, 0x36, 0x33, 0x38, 0x33, 0x39, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7497_sig[] = { 0x1c, 0x66, 0xa3, 0x03, 0xf7, 0xf5, 0x48, 0xff, 0x4c, 0x17, 0xce, 0x6c, 0x60, 0x38, 0x87, 0x9c, 0xb9, 0xd4, 0x7a, 0xbb, 0xb7, 0x1a, 0xd6, 0x9a, 0x79, 0x8d, 0x0d, 0x8a, 0x99, 0x51, 0x8d, 0xcd, 0x48, 0x5e, 0xe2, 0x05, 0xc6, 0xfa, 0x3f, 0xfe, 0x54, 0x11, 0x94, 0x8d, 0xff, 0x23, 0x51, 0xab, 0x9b, 0xbb, 0xc2, 0x0c, 0xa4, 0x19, 0xd6, 0x18, 0x2d, 0xa7, 0x7f, 0x55, 0x79, 0x05, 0x87, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7497 = { .name = "ecdsa_secp256r1_sha3_512_7497", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7497_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7497_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7497_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7498 for ECDSA, tcId is 245 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7498_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7498_msg[] = { 0x32, 0x30, 0x39, 0x31, 0x37, 0x36, 0x38, 0x32, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7498_sig[] = { 0xae, 0x1f, 0xd2, 0xdb, 0xad, 0x7e, 0xbc, 0x2b, 0x7f, 0x19, 0xd1, 0x78, 0x9e, 0x1f, 0x68, 0xce, 0x34, 0x5f, 0x40, 0x56, 0x8a, 0x57, 0x6a, 0x29, 0xda, 0xdc, 0xf8, 0x94, 0xc5, 0x1f, 0x7a, 0x3f, 0x69, 0xe8, 0x0f, 0x80, 0xc7, 0x6b, 0x57, 0xe1, 0x76, 0x74, 0x84, 0x48, 0x59, 0x15, 0x98, 0x0b, 0x5e, 0x24, 0x93, 0xe8, 0x9d, 0x88, 0x24, 0xb7, 0x92, 0x2e, 0xa2, 0xcb, 0xc6, 0x87, 0xd2, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7498 = { .name = "ecdsa_secp256r1_sha3_512_7498", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7498_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7498_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7498_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7499 for ECDSA, tcId is 246 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7499_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7499_msg[] = { 0x39, 0x33, 0x36, 0x34, 0x37, 0x30, 0x32, 0x38, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7499_sig[] = { 0x67, 0xaf, 0xdc, 0x52, 0x7b, 0x00, 0x03, 0xc8, 0x40, 0x0a, 0xde, 0x54, 0xdf, 0x56, 0x63, 0x63, 0x5f, 0x81, 0x19, 0x50, 0xcb, 0x34, 0xea, 0x77, 0x43, 0x5c, 0x0c, 0xe4, 0x00, 0x36, 0x52, 0x49, 0x7a, 0xfa, 0x3d, 0x39, 0xb8, 0xa7, 0xe5, 0x2c, 0xe7, 0x68, 0xe4, 0x66, 0xdb, 0x6d, 0xa4, 0x1a, 0x35, 0x4c, 0x12, 0xea, 0x2f, 0x67, 0x7b, 0xf0, 0x5a, 0x24, 0xfc, 0x68, 0x9e, 0x34, 0x73, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7499 = { .name = "ecdsa_secp256r1_sha3_512_7499", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7499_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7499_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7499_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7500 for ECDSA, tcId is 247 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7500_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7500_msg[] = { 0x39, 0x32, 0x36, 0x38, 0x36, 0x38, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7500_sig[] = { 0x9b, 0x1a, 0x90, 0xf8, 0x11, 0x6d, 0x33, 0xd6, 0x74, 0x13, 0x75, 0x79, 0x52, 0x8f, 0x39, 0x5e, 0xd1, 0x3e, 0xcb, 0xc2, 0x38, 0x94, 0x0a, 0x1a, 0x9a, 0x85, 0x04, 0xa7, 0x25, 0x68, 0xa9, 0xd7, 0x07, 0xf3, 0x4d, 0x94, 0x00, 0xaf, 0x00, 0x4f, 0xd6, 0x57, 0x14, 0x4c, 0xe9, 0x7a, 0x13, 0xb7, 0x6d, 0x50, 0x9f, 0x7f, 0xd4, 0xc9, 0x24, 0x5c, 0xe5, 0x46, 0x09, 0xf7, 0x49, 0xea, 0xd3, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7500 = { .name = "ecdsa_secp256r1_sha3_512_7500", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7500_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7500_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7500_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7501 for ECDSA, tcId is 248 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7501_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7501_msg[] = { 0x35, 0x31, 0x37, 0x38, 0x31, 0x33, 0x34, 0x38, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7501_sig[] = { 0x26, 0x30, 0x40, 0xf9, 0xba, 0xbb, 0x63, 0xae, 0xc7, 0xd7, 0x3f, 0xdb, 0xce, 0x98, 0x8f, 0xb3, 0xca, 0x21, 0x15, 0xab, 0x24, 0xbb, 0xa0, 0xc8, 0x08, 0x32, 0xe3, 0xde, 0x34, 0xb6, 0x98, 0xb9, 0xf7, 0xd9, 0x9b, 0x77, 0x38, 0xac, 0xa7, 0x45, 0xb9, 0x1b, 0x65, 0xc6, 0x97, 0xa8, 0x3a, 0xc7, 0x6c, 0xe1, 0xe6, 0x15, 0x68, 0xd9, 0x27, 0x16, 0x31, 0xd0, 0x6a, 0xf1, 0xb7, 0x7a, 0xd5, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7501 = { .name = "ecdsa_secp256r1_sha3_512_7501", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7501_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7501_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7501_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7502 for ECDSA, tcId is 249 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7502_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7502_msg[] = { 0x34, 0x37, 0x33, 0x35, 0x30, 0x31, 0x30, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7502_sig[] = { 0x82, 0xf6, 0x76, 0xde, 0x71, 0xec, 0xae, 0x70, 0x41, 0xb8, 0x78, 0x8e, 0x08, 0x70, 0xa5, 0x79, 0x23, 0xc7, 0x1f, 0xd2, 0x1d, 0xb1, 0xf8, 0x86, 0x4e, 0x45, 0x19, 0xee, 0x2f, 0x65, 0xd8, 0x88, 0x02, 0x0f, 0x12, 0xd9, 0x8b, 0x79, 0xd4, 0x53, 0x48, 0x51, 0x36, 0x96, 0xd5, 0xb4, 0x92, 0x68, 0x56, 0xd9, 0x53, 0xe7, 0x2f, 0x26, 0x7d, 0x30, 0xe7, 0xbc, 0xd5, 0x7e, 0xe8, 0x14, 0x72, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7502 = { .name = "ecdsa_secp256r1_sha3_512_7502", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7502_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7502_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7502_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7503 for ECDSA, tcId is 250 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7503_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7503_msg[] = { 0x31, 0x34, 0x33, 0x35, 0x33, 0x39, 0x31, 0x31, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7503_sig[] = { 0x4e, 0x3c, 0x9c, 0x22, 0xa5, 0x4f, 0x1c, 0xeb, 0x93, 0x36, 0xb6, 0x56, 0xbf, 0x70, 0x19, 0xc3, 0x75, 0xcb, 0x7f, 0x91, 0x37, 0xd6, 0x92, 0x45, 0x4c, 0x6d, 0x88, 0x29, 0x27, 0xf1, 0x67, 0x95, 0xb3, 0xbd, 0xe8, 0xf4, 0x5d, 0x5f, 0x88, 0x59, 0x48, 0xb4, 0x54, 0x02, 0xb9, 0xe7, 0xa7, 0x22, 0xc2, 0x92, 0xe8, 0x8b, 0xfa, 0xdb, 0x5b, 0xb2, 0xfd, 0xad, 0xfe, 0x8e, 0x1b, 0x3f, 0x51, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7503 = { .name = "ecdsa_secp256r1_sha3_512_7503", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7503_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7503_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7503_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7504 for ECDSA, tcId is 251 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7504_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7504_msg[] = { 0x31, 0x33, 0x38, 0x34, 0x35, 0x34, 0x39, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7504_sig[] = { 0xb2, 0x07, 0x21, 0xbd, 0x0e, 0x8c, 0x9e, 0xe6, 0xeb, 0x79, 0x0c, 0xee, 0x9d, 0x88, 0x48, 0x1d, 0x17, 0xd5, 0x68, 0xb4, 0xc9, 0x42, 0xba, 0x43, 0x7e, 0x60, 0x74, 0x60, 0x03, 0x1c, 0x1d, 0xf5, 0x9f, 0x13, 0xff, 0x6a, 0x54, 0xe6, 0xa0, 0xc5, 0x04, 0x1c, 0xc3, 0x69, 0x0c, 0x8f, 0x3b, 0x49, 0x9f, 0x05, 0xe3, 0x4f, 0x23, 0x5c, 0x8a, 0xdf, 0x8f, 0xd4, 0x55, 0xdf, 0x4a, 0x17, 0xce, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7504 = { .name = "ecdsa_secp256r1_sha3_512_7504", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7504_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7504_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7504_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7505 for ECDSA, tcId is 252 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7505_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7505_msg[] = { 0x32, 0x37, 0x36, 0x32, 0x31, 0x39, 0x32, 0x37, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7505_sig[] = { 0x6b, 0x1d, 0x46, 0xee, 0xac, 0xcc, 0xf7, 0x06, 0x6a, 0x0f, 0xef, 0x27, 0xf4, 0x98, 0xa5, 0x9a, 0x93, 0x76, 0xb2, 0x54, 0x42, 0x58, 0x51, 0x04, 0x52, 0x78, 0x7b, 0xd4, 0xa3, 0x57, 0x83, 0xb5, 0x88, 0x32, 0x8a, 0xc0, 0x79, 0x38, 0xb5, 0xb9, 0xcf, 0xe6, 0x2a, 0x38, 0x41, 0x38, 0x2c, 0xfb, 0xe9, 0xd6, 0x23, 0x48, 0x0c, 0xec, 0x2a, 0x3f, 0xdb, 0x73, 0xee, 0x36, 0xdd, 0x4a, 0xef, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7505 = { .name = "ecdsa_secp256r1_sha3_512_7505", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7505_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7505_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7505_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7506 for ECDSA, tcId is 253 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7506_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7506_msg[] = { 0x31, 0x38, 0x33, 0x31, 0x36, 0x35, 0x34, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7506_sig[] = { 0x25, 0x7e, 0x76, 0x0a, 0x54, 0x63, 0x73, 0x87, 0xb4, 0x43, 0xf8, 0x29, 0xf1, 0xa5, 0x80, 0x2c, 0x7f, 0xc9, 0x2b, 0xdf, 0x03, 0x30, 0x39, 0xac, 0xf6, 0x8e, 0x1a, 0xce, 0xa0, 0xcb, 0xcd, 0xbe, 0x25, 0x08, 0x7f, 0x12, 0x04, 0x67, 0xa8, 0x0c, 0xc0, 0x7e, 0xfb, 0x7b, 0xb2, 0x7a, 0xe6, 0x8d, 0x85, 0x69, 0xa3, 0x8f, 0xe2, 0x90, 0x82, 0x82, 0xc3, 0xc7, 0xa3, 0x10, 0x32, 0x27, 0x61, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7506 = { .name = "ecdsa_secp256r1_sha3_512_7506", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7506_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7506_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7506_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7507 for ECDSA, tcId is 254 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7507_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7507_msg[] = { 0x32, 0x34, 0x33, 0x36, 0x38, 0x39, 0x39, 0x30, 0x33, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7507_sig[] = { 0x18, 0x69, 0xc8, 0x21, 0xe2, 0x71, 0x83, 0x84, 0x53, 0xc8, 0x8c, 0x4a, 0x86, 0x7d, 0xf2, 0x30, 0x1d, 0x27, 0x66, 0x2b, 0x72, 0xd9, 0x38, 0x5b, 0xac, 0xb6, 0x74, 0x0a, 0xb6, 0xd6, 0xb5, 0xc3, 0x22, 0xcc, 0xc9, 0xa0, 0x49, 0x31, 0x16, 0x55, 0x6d, 0x9f, 0xfc, 0x75, 0x82, 0x25, 0x3c, 0x58, 0x14, 0x52, 0xd7, 0x17, 0xa7, 0xe0, 0x06, 0x18, 0xdc, 0xe2, 0x1f, 0x46, 0xf5, 0xb6, 0x4f, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7507 = { .name = "ecdsa_secp256r1_sha3_512_7507", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7507_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7507_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7507_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7508 for ECDSA, tcId is 255 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7508_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7508_msg[] = { 0x32, 0x30, 0x34, 0x30, 0x34, 0x31, 0x32, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7508_sig[] = { 0x94, 0xa5, 0x21, 0xfb, 0x3b, 0xed, 0x34, 0x7b, 0x0d, 0xcb, 0xe5, 0x5f, 0x2e, 0x67, 0xc0, 0xd7, 0xab, 0xc4, 0xaa, 0x32, 0xed, 0x2e, 0x1a, 0x6f, 0xd1, 0xc2, 0x09, 0xde, 0x3a, 0x25, 0xca, 0x25, 0x9b, 0x76, 0x31, 0xa6, 0x52, 0x0e, 0xd4, 0xb1, 0x4b, 0x5b, 0x2a, 0x8b, 0x57, 0xa5, 0x2d, 0xe3, 0x1f, 0x58, 0x3b, 0x8d, 0x12, 0x60, 0xeb, 0x8d, 0xc0, 0x61, 0xad, 0x96, 0x5d, 0x0e, 0x9e, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7508 = { .name = "ecdsa_secp256r1_sha3_512_7508", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7508_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7508_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7508_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7509 for ECDSA, tcId is 256 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7509_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7509_msg[] = { 0x33, 0x33, 0x33, 0x37, 0x31, 0x31, 0x39, 0x39, 0x37, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7509_sig[] = { 0xee, 0x49, 0x13, 0xa5, 0xf8, 0x3d, 0xd3, 0x31, 0x0e, 0x91, 0x59, 0x5e, 0xf1, 0x97, 0x07, 0x56, 0x00, 0xae, 0x17, 0x78, 0x5e, 0x1c, 0x0b, 0x91, 0x39, 0xcb, 0xae, 0xa8, 0xde, 0xf1, 0xd6, 0xd0, 0x28, 0x18, 0xf7, 0x84, 0x7c, 0x48, 0xa9, 0xa3, 0x87, 0x39, 0xc7, 0x16, 0x53, 0x91, 0x91, 0x04, 0xdb, 0x89, 0x20, 0xa8, 0x16, 0x00, 0x0e, 0xd2, 0x1e, 0x51, 0x79, 0x98, 0x0e, 0xfb, 0x6b, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7509 = { .name = "ecdsa_secp256r1_sha3_512_7509", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7509_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7509_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7509_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7510 for ECDSA, tcId is 257 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7510_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7510_msg[] = { 0x36, 0x36, 0x39, 0x35, 0x36, 0x32, 0x30, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7510_sig[] = { 0xe9, 0x12, 0xb0, 0xe5, 0x43, 0x6d, 0xb2, 0xa5, 0x08, 0x17, 0xc6, 0x42, 0x42, 0x91, 0xff, 0xdd, 0x41, 0x35, 0x29, 0x16, 0xe9, 0x56, 0xcc, 0xad, 0x90, 0x68, 0xc9, 0x51, 0x25, 0xf3, 0xa1, 0xe9, 0x73, 0x30, 0x9a, 0xa3, 0x84, 0xc5, 0x64, 0x86, 0xb6, 0xa4, 0xc6, 0x99, 0xfc, 0xa4, 0x46, 0xe6, 0xf6, 0x7a, 0x11, 0x33, 0x89, 0x29, 0x71, 0xbe, 0x83, 0xb4, 0xe2, 0xda, 0xb4, 0x9a, 0xfc, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7510 = { .name = "ecdsa_secp256r1_sha3_512_7510", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7510_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7510_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7510_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7511 for ECDSA, tcId is 258 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7511_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7511_msg[] = { 0x32, 0x30, 0x39, 0x33, 0x30, 0x31, 0x37, 0x37, 0x34, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7511_sig[] = { 0xeb, 0x0b, 0x71, 0x98, 0x79, 0xb2, 0xfd, 0x16, 0x76, 0xb3, 0xf6, 0xf9, 0x13, 0xe3, 0x53, 0xc2, 0xb4, 0xdd, 0x82, 0x01, 0xfa, 0xcb, 0x06, 0x7e, 0x15, 0xda, 0x1d, 0xae, 0x9a, 0xdd, 0xcc, 0x8c, 0xa7, 0x3b, 0x3a, 0x70, 0x38, 0x57, 0xaa, 0x8d, 0x12, 0x26, 0x32, 0x90, 0x36, 0x6a, 0x19, 0xd6, 0x4e, 0x0b, 0x3e, 0xfc, 0xcd, 0x06, 0x23, 0xf5, 0x3a, 0x73, 0x70, 0x09, 0x9e, 0x9d, 0xce, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7511 = { .name = "ecdsa_secp256r1_sha3_512_7511", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7511_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7511_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7511_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7512 for ECDSA, tcId is 259 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7512_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x31, 0x37, 0x39, 0x31, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7512_sig[] = { 0x95, 0x61, 0x7b, 0x71, 0xdc, 0x18, 0xa9, 0x9e, 0x96, 0xa9, 0x5a, 0xb5, 0x38, 0x43, 0x24, 0xbf, 0xf7, 0x97, 0xad, 0x70, 0x4d, 0xfb, 0x1e, 0x2d, 0x6b, 0x3c, 0xc0, 0x6e, 0x76, 0x65, 0x2c, 0xed, 0xb1, 0x1b, 0xc4, 0x94, 0x44, 0xa2, 0xe2, 0x63, 0x5d, 0x4d, 0x9b, 0x1b, 0xde, 0xde, 0xb6, 0x15, 0x93, 0xb5, 0xf3, 0xe0, 0xe1, 0x6c, 0xe7, 0x8d, 0xa8, 0x13, 0xff, 0x64, 0xb7, 0x28, 0xf8, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7512 = { .name = "ecdsa_secp256r1_sha3_512_7512", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7512_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7512_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7512_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7513 for ECDSA, tcId is 260 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7513_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7513_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, 0x36, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7513_sig[] = { 0x28, 0xfb, 0xeb, 0xb0, 0xc1, 0x42, 0xc6, 0xd2, 0x00, 0xbf, 0xb1, 0x73, 0x17, 0x3c, 0x03, 0xbc, 0x3a, 0xa5, 0x5d, 0xa6, 0xd4, 0x8c, 0x1b, 0x78, 0x46, 0x28, 0xf2, 0xb9, 0xf5, 0x90, 0x38, 0xf2, 0xc0, 0xf1, 0x42, 0x70, 0x05, 0xa4, 0x6a, 0xac, 0x00, 0xa0, 0xaf, 0x43, 0xb8, 0xf5, 0x4a, 0x95, 0x1e, 0x67, 0x3e, 0x04, 0x80, 0xc6, 0xbf, 0x7a, 0x6b, 0x57, 0x75, 0xd4, 0xa3, 0xde, 0x5e, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7513 = { .name = "ecdsa_secp256r1_sha3_512_7513", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7513_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7513_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7513_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7514 for ECDSA, tcId is 261 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7514_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7514_msg[] = { 0x31, 0x31, 0x34, 0x31, 0x37, 0x32, 0x34, 0x31, 0x34, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7514_sig[] = { 0x45, 0x7f, 0xf8, 0x63, 0x69, 0xe4, 0xef, 0xd6, 0x95, 0x92, 0xb1, 0x61, 0xae, 0xa2, 0xb0, 0x91, 0x53, 0xf3, 0x7c, 0xf6, 0x90, 0x06, 0x90, 0x7a, 0x75, 0x58, 0x99, 0x8a, 0xb3, 0x4b, 0x38, 0xa4, 0x12, 0x69, 0x2f, 0xfc, 0x56, 0x98, 0x49, 0xdc, 0x8e, 0x3b, 0x9f, 0xd2, 0xcd, 0x7c, 0x6f, 0x42, 0x20, 0x7b, 0xb4, 0xc0, 0x78, 0x32, 0xd4, 0x90, 0xc9, 0xd3, 0x5a, 0x70, 0x26, 0x65, 0xce, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7514 = { .name = "ecdsa_secp256r1_sha3_512_7514", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7514_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7514_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7514_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7515 for ECDSA, tcId is 262 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7515_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7515_msg[] = { 0x32, 0x32, 0x36, 0x38, 0x32, 0x34, 0x36, 0x34, 0x39, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7515_sig[] = { 0xac, 0x70, 0x03, 0x6f, 0x60, 0x58, 0xfd, 0x1e, 0xb4, 0x0d, 0xc6, 0xf5, 0x8d, 0xd6, 0x8a, 0xb5, 0x6e, 0x73, 0xdc, 0x68, 0x41, 0xea, 0xa4, 0x5a, 0x83, 0x81, 0x3b, 0x6a, 0xaf, 0x75, 0xfa, 0xe2, 0xf7, 0x0f, 0x7f, 0x05, 0x63, 0xc4, 0x6a, 0x07, 0xd2, 0x48, 0xe8, 0x0a, 0x65, 0xf3, 0x85, 0x32, 0xd5, 0x75, 0x9f, 0x49, 0xfc, 0x10, 0x41, 0x84, 0xfa, 0x67, 0x18, 0xca, 0x55, 0x27, 0x43, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7515 = { .name = "ecdsa_secp256r1_sha3_512_7515", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7515_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7515_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7515_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7516 for ECDSA, tcId is 263 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7516_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7516_msg[] = { 0x32, 0x37, 0x32, 0x34, 0x37, 0x39, 0x36, 0x37, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7516_sig[] = { 0x59, 0xba, 0xab, 0xa3, 0x99, 0x2d, 0xab, 0x0b, 0x59, 0x4a, 0x2e, 0x9f, 0xbc, 0x4c, 0x34, 0x4c, 0xfd, 0xab, 0xe7, 0x86, 0x8e, 0x4e, 0x77, 0xf4, 0x7a, 0x31, 0x0d, 0x94, 0x91, 0x6d, 0x30, 0xce, 0x20, 0xb1, 0x6c, 0x38, 0x30, 0x85, 0xee, 0x74, 0x40, 0x21, 0x57, 0xd4, 0xf2, 0xda, 0x5f, 0x7e, 0x3e, 0x99, 0x5d, 0xbb, 0xf5, 0x3e, 0xe5, 0x09, 0x85, 0xd4, 0xf7, 0x09, 0x68, 0x82, 0xed, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7516 = { .name = "ecdsa_secp256r1_sha3_512_7516", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7516_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7516_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7516_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7517 for ECDSA, tcId is 264 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7517_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7517_msg[] = { 0x39, 0x37, 0x33, 0x33, 0x39, 0x35, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7517_sig[] = { 0xaa, 0x56, 0x7a, 0x71, 0x0f, 0x70, 0x10, 0x71, 0x8b, 0x1e, 0x02, 0x79, 0x2b, 0xc6, 0x3f, 0x90, 0x49, 0xc0, 0x2f, 0x79, 0x8b, 0xb3, 0x19, 0x21, 0x4c, 0x97, 0xbc, 0x73, 0x4e, 0x54, 0xd1, 0x15, 0xdd, 0xb7, 0xc7, 0x8b, 0x45, 0xc4, 0x22, 0x1d, 0xb6, 0xf2, 0x6e, 0x84, 0x5f, 0x8c, 0x30, 0xbe, 0x61, 0xc2, 0x9b, 0xcf, 0x38, 0xe3, 0x8a, 0xba, 0xf7, 0xcb, 0xd0, 0x3e, 0x5a, 0xf9, 0x14, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7517 = { .name = "ecdsa_secp256r1_sha3_512_7517", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7517_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7517_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7517_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7518 for ECDSA, tcId is 265 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7518_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7518_msg[] = { 0x31, 0x35, 0x30, 0x37, 0x30, 0x30, 0x32, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7518_sig[] = { 0x6a, 0xc1, 0x8c, 0x06, 0x08, 0x1a, 0x51, 0xac, 0x5f, 0xb6, 0xd0, 0xa0, 0x73, 0x5a, 0xf5, 0x10, 0xdd, 0x0a, 0xd5, 0x29, 0x20, 0x6e, 0x7f, 0xc0, 0xc1, 0xb6, 0xd0, 0xea, 0x36, 0xce, 0xc4, 0xa8, 0x64, 0xd4, 0x95, 0x24, 0xcc, 0x26, 0xef, 0x8e, 0xda, 0x21, 0xad, 0x5f, 0x2c, 0x37, 0x12, 0x03, 0xd6, 0xee, 0xf8, 0xdd, 0xfa, 0x5d, 0xa7, 0xa6, 0xc3, 0x7d, 0x86, 0xf2, 0x9e, 0xfc, 0x1f, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7518 = { .name = "ecdsa_secp256r1_sha3_512_7518", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7518_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7518_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7518_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7519 for ECDSA, tcId is 266 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7519_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7519_msg[] = { 0x33, 0x37, 0x34, 0x33, 0x35, 0x36, 0x38, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7519_sig[] = { 0xcf, 0x59, 0xdf, 0xd6, 0x75, 0x12, 0xe2, 0xd1, 0x73, 0xa3, 0x98, 0xcb, 0x64, 0x88, 0x05, 0xfb, 0x41, 0xe3, 0x09, 0x9f, 0x27, 0xa7, 0x86, 0x7a, 0xa2, 0xdd, 0xa5, 0x0d, 0xcf, 0x2e, 0x1f, 0x86, 0xbd, 0x52, 0x8b, 0xe7, 0x71, 0xfa, 0x1e, 0x52, 0xca, 0xb6, 0xd7, 0x48, 0x5c, 0x58, 0x87, 0xbe, 0xfb, 0x37, 0x8c, 0xea, 0xf5, 0x65, 0xac, 0xa0, 0xf3, 0x2d, 0x28, 0x31, 0xa4, 0x66, 0x95, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7519 = { .name = "ecdsa_secp256r1_sha3_512_7519", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7519_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7519_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7519_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7520 for ECDSA, tcId is 267 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7520_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7520_msg[] = { 0x39, 0x34, 0x37, 0x36, 0x37, 0x31, 0x32, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7520_sig[] = { 0x45, 0x5f, 0x1c, 0x44, 0x06, 0xb5, 0x98, 0xfc, 0x82, 0x8d, 0xdb, 0x3b, 0xc7, 0x7d, 0xf7, 0xad, 0x04, 0xba, 0xad, 0x39, 0x9f, 0xb4, 0x97, 0x5f, 0x54, 0x2b, 0x19, 0xae, 0xed, 0xfd, 0x5a, 0x11, 0x4e, 0x05, 0x55, 0xd9, 0xbf, 0x42, 0x11, 0xd3, 0xab, 0x17, 0x3e, 0x2e, 0x6c, 0x7e, 0xdb, 0x99, 0x08, 0x67, 0xf8, 0xf9, 0x82, 0xf6, 0xaf, 0xc1, 0xb4, 0xb6, 0x73, 0x2e, 0xe9, 0x6a, 0x0a, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7520 = { .name = "ecdsa_secp256r1_sha3_512_7520", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7520_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7520_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7520_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7521 for ECDSA, tcId is 268 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7521_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7521_msg[] = { 0x37, 0x32, 0x35, 0x34, 0x34, 0x34, 0x33, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7521_sig[] = { 0xe1, 0xdc, 0x7a, 0x43, 0x96, 0x33, 0xb9, 0xbc, 0x91, 0xd3, 0x7a, 0x95, 0x49, 0x43, 0xbc, 0x94, 0xe5, 0xf5, 0x6a, 0x04, 0x42, 0xa3, 0x52, 0x8f, 0xba, 0x5c, 0x60, 0x70, 0xcf, 0x25, 0xe8, 0x6f, 0x03, 0x76, 0xb7, 0xff, 0x76, 0x01, 0x97, 0x8a, 0x47, 0xbb, 0xf7, 0xd1, 0x1c, 0x68, 0x44, 0x52, 0x0a, 0x44, 0x2c, 0xeb, 0x16, 0x7a, 0xec, 0x3a, 0x0d, 0xdf, 0x36, 0xe1, 0x50, 0xa3, 0x85, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7521 = { .name = "ecdsa_secp256r1_sha3_512_7521", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7521_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7521_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7521_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7522 for ECDSA, tcId is 269 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7522_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7522_msg[] = { 0x35, 0x35, 0x33, 0x34, 0x30, 0x32, 0x31, 0x32, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7522_sig[] = { 0xae, 0xee, 0xef, 0x01, 0x0c, 0xf9, 0x7f, 0x32, 0x4e, 0x6f, 0x89, 0xf3, 0x16, 0x36, 0x56, 0x30, 0x57, 0x28, 0xa5, 0x73, 0xb8, 0x85, 0xc5, 0x2e, 0xc5, 0x97, 0x3e, 0xba, 0x86, 0x3a, 0x08, 0xda, 0x90, 0x4c, 0x25, 0xf9, 0x31, 0xe7, 0x8e, 0x2b, 0x59, 0xfa, 0x9a, 0x13, 0x8c, 0xb8, 0x0a, 0x5c, 0x22, 0x34, 0x16, 0x01, 0xa1, 0x85, 0x01, 0xd3, 0x64, 0xaf, 0x36, 0x1d, 0x69, 0xcd, 0x0b, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7522 = { .name = "ecdsa_secp256r1_sha3_512_7522", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7522_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7522_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7522_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7523 for ECDSA, tcId is 270 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7523_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7523_msg[] = { 0x31, 0x32, 0x33, 0x30, 0x31, 0x38, 0x31, 0x33, 0x37, 0x39, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7523_sig[] = { 0x0e, 0x37, 0x98, 0xe4, 0x41, 0xe7, 0x87, 0xda, 0xe4, 0xbf, 0x84, 0xe2, 0x74, 0x8a, 0xbc, 0xe9, 0x13, 0xf3, 0x62, 0xd4, 0x1d, 0x59, 0xa3, 0x9d, 0x58, 0xd8, 0x9c, 0x88, 0x9e, 0x52, 0x22, 0x9f, 0xe3, 0xa0, 0x02, 0x02, 0x32, 0x96, 0xfe, 0x6d, 0x93, 0x95, 0xfc, 0x92, 0xba, 0x31, 0xdd, 0x35, 0xc5, 0xad, 0xa4, 0x2e, 0x06, 0xdb, 0x01, 0x46, 0x6a, 0x24, 0xf0, 0x87, 0xae, 0x70, 0xcd, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7523 = { .name = "ecdsa_secp256r1_sha3_512_7523", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7523_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7523_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7523_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7524 for ECDSA, tcId is 271 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7524_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7524_msg[] = { 0x39, 0x31, 0x31, 0x35, 0x33, 0x31, 0x37, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7524_sig[] = { 0x9b, 0xfe, 0x9e, 0x09, 0xc4, 0x0f, 0xad, 0x40, 0xbb, 0x44, 0x2e, 0xb0, 0x45, 0x21, 0x6c, 0x20, 0xdc, 0x12, 0x82, 0xd3, 0xcc, 0x4b, 0xa7, 0x7f, 0xe2, 0xe3, 0xdb, 0x92, 0xd3, 0x12, 0xfd, 0x80, 0x8a, 0x15, 0x2a, 0xfa, 0x21, 0x64, 0x54, 0x8b, 0x6e, 0xdf, 0xd6, 0x61, 0x00, 0x46, 0xee, 0x00, 0x1f, 0xdf, 0xb0, 0x65, 0x55, 0x67, 0x7c, 0x98, 0xbc, 0x50, 0x5b, 0x6a, 0xef, 0x29, 0x7d, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7524 = { .name = "ecdsa_secp256r1_sha3_512_7524", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7524_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7524_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7524_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7525 for ECDSA, tcId is 272 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7525_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7525_msg[] = { 0x32, 0x38, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7525_sig[] = { 0x15, 0x31, 0xf9, 0xb6, 0x22, 0xd3, 0x17, 0x2f, 0x72, 0x09, 0x6b, 0x8a, 0xfc, 0x72, 0x78, 0xeb, 0x7b, 0xee, 0x49, 0xb7, 0x2e, 0x1b, 0x94, 0x8e, 0x48, 0xcc, 0x1a, 0xdd, 0x8f, 0x01, 0xe3, 0x65, 0xed, 0xc8, 0x03, 0xcd, 0xb5, 0x4b, 0xd4, 0xc5, 0x4b, 0x87, 0xbc, 0x69, 0xa4, 0x2d, 0xf3, 0xdd, 0x11, 0xab, 0x56, 0xbb, 0x13, 0xd8, 0xb5, 0xb7, 0x86, 0x42, 0xff, 0xa9, 0xef, 0x88, 0xd3, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7525 = { .name = "ecdsa_secp256r1_sha3_512_7525", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7525_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7525_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7525_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7526 for ECDSA, tcId is 273 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7526_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7526_msg[] = { 0x31, 0x32, 0x33, 0x33, 0x35, 0x38, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7526_sig[] = { 0x79, 0x73, 0x33, 0x36, 0x17, 0x68, 0x0f, 0xf8, 0x97, 0x98, 0xc6, 0xb6, 0x4b, 0xb4, 0x2f, 0x43, 0x6b, 0xe7, 0x77, 0x18, 0x87, 0xc2, 0xd1, 0x4a, 0x98, 0xdd, 0x33, 0x97, 0xe6, 0x89, 0x6e, 0x0a, 0x11, 0xb7, 0x0b, 0x23, 0xa6, 0x2f, 0xd9, 0xce, 0x1b, 0x27, 0xc1, 0xb6, 0x69, 0xc8, 0x51, 0x18, 0x7c, 0x09, 0xe9, 0x08, 0x1f, 0x0a, 0xa6, 0xae, 0x01, 0x14, 0x11, 0x42, 0x5f, 0x69, 0x49, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7526 = { .name = "ecdsa_secp256r1_sha3_512_7526", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7526_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7526_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7526_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7527 for ECDSA, tcId is 274 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7527_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7527_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x36, 0x39, 0x32, 0x35, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7527_sig[] = { 0x4f, 0xc4, 0x0e, 0x0b, 0x3d, 0xd4, 0x9c, 0x4f, 0x25, 0x9c, 0x5e, 0xe2, 0xff, 0x27, 0x1b, 0x70, 0x3b, 0x9b, 0x73, 0x80, 0x45, 0x51, 0x67, 0xe1, 0x13, 0x60, 0xbf, 0x33, 0x6f, 0x72, 0xc0, 0xc4, 0xd2, 0x19, 0xcd, 0xbf, 0xef, 0xa9, 0xce, 0xd8, 0x43, 0xf9, 0x47, 0x19, 0x1f, 0xf1, 0x1b, 0xfe, 0x48, 0x80, 0x70, 0x2a, 0x45, 0x04, 0xf3, 0x4b, 0x28, 0x48, 0x1b, 0x42, 0x4f, 0x43, 0x3a, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7527 = { .name = "ecdsa_secp256r1_sha3_512_7527", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7527_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7527_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7527_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7528 for ECDSA, tcId is 275 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7528_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7528_msg[] = { 0x33, 0x30, 0x30, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7528_sig[] = { 0x81, 0x6c, 0x36, 0x9e, 0x7b, 0x86, 0x72, 0xcc, 0xe3, 0x25, 0xda, 0xe1, 0xad, 0x2f, 0x2a, 0x53, 0x30, 0xd1, 0x77, 0xfe, 0x0d, 0xa3, 0x99, 0xc8, 0xe5, 0x20, 0xf3, 0x61, 0xac, 0x77, 0x03, 0x89, 0x85, 0x8c, 0x9c, 0xdf, 0x1a, 0x2c, 0xa4, 0x0e, 0xf9, 0xc1, 0xe0, 0x2f, 0x88, 0x3b, 0x34, 0x70, 0x1d, 0xc1, 0x76, 0x0a, 0x9d, 0x13, 0xba, 0x71, 0x4c, 0x57, 0xdd, 0x88, 0x62, 0x82, 0xac, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7528 = { .name = "ecdsa_secp256r1_sha3_512_7528", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7528_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7528_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7528_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7529 for ECDSA, tcId is 276 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7529_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7529_msg[] = { 0x38, 0x33, 0x35, 0x36, 0x37, 0x36, 0x32, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7529_sig[] = { 0x51, 0xad, 0xf4, 0x3c, 0xda, 0x1a, 0x93, 0x8e, 0x1d, 0xeb, 0x5f, 0xe0, 0x8a, 0xb2, 0x8d, 0xf1, 0xe6, 0x07, 0xf2, 0x5f, 0xb2, 0xe9, 0x89, 0x13, 0xd2, 0x57, 0x94, 0x20, 0xb6, 0x30, 0x56, 0xe6, 0x3b, 0x89, 0x20, 0x18, 0x1a, 0x8a, 0xb6, 0xf9, 0xea, 0x0a, 0x18, 0x14, 0x17, 0x1d, 0xb3, 0xeb, 0x4f, 0xf3, 0xd5, 0xfd, 0x9c, 0xbd, 0x2d, 0x9c, 0x1e, 0xc4, 0x01, 0x8a, 0x76, 0x25, 0x56, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7529 = { .name = "ecdsa_secp256r1_sha3_512_7529", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7529_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7529_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7529_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7530 for ECDSA, tcId is 277 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7530_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7530_msg[] = { 0x38, 0x33, 0x32, 0x39, 0x35, 0x30, 0x30, 0x37, 0x36, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7530_sig[] = { 0x42, 0xce, 0x9e, 0x0f, 0x87, 0x7b, 0x75, 0x86, 0xe7, 0xc0, 0xeb, 0x2f, 0xde, 0x6f, 0x7c, 0x4b, 0x1f, 0x4c, 0xc8, 0x88, 0xf5, 0x44, 0x02, 0xf2, 0xb7, 0xbb, 0x99, 0xde, 0xdc, 0x2b, 0x7f, 0x07, 0xf0, 0x41, 0x3e, 0x76, 0x36, 0xcb, 0x66, 0x05, 0xe0, 0xd7, 0x28, 0x4c, 0x78, 0x04, 0xd7, 0xc9, 0xa3, 0xcc, 0x09, 0x24, 0xd3, 0x7f, 0xca, 0x7d, 0x49, 0x43, 0xd9, 0xe0, 0xc9, 0x81, 0x74, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7530 = { .name = "ecdsa_secp256r1_sha3_512_7530", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7530_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7530_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7530_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7531 for ECDSA, tcId is 278 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7531_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7531_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x38, 0x34, 0x31, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7531_sig[] = { 0x4b, 0x2e, 0x5a, 0x79, 0x7d, 0x24, 0x0c, 0xd8, 0xc8, 0x0b, 0x42, 0x4a, 0x41, 0xdc, 0x47, 0xea, 0xad, 0x24, 0x9f, 0xc6, 0x42, 0xe3, 0xc5, 0xb4, 0xbc, 0x68, 0x32, 0x8f, 0xc1, 0xe2, 0x6f, 0xc5, 0x11, 0x79, 0x10, 0x98, 0x55, 0x97, 0xa6, 0xf7, 0x48, 0x2b, 0xec, 0x76, 0x32, 0xe9, 0x46, 0x76, 0xc4, 0x32, 0x68, 0x4f, 0x16, 0xf7, 0xf3, 0xd0, 0x9a, 0x90, 0xff, 0x4e, 0xd6, 0xad, 0x36, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7531 = { .name = "ecdsa_secp256r1_sha3_512_7531", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7531_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7531_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7531_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7532 for ECDSA, tcId is 279 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7532_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7532_msg[] = { 0x37, 0x33, 0x30, 0x32, 0x33, 0x35, 0x38, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7532_sig[] = { 0x42, 0xbf, 0x9a, 0x16, 0x47, 0x23, 0xef, 0x3f, 0x5c, 0xb5, 0x9b, 0x52, 0x89, 0x66, 0xae, 0x64, 0x8e, 0x80, 0x29, 0x17, 0x85, 0xa4, 0xe0, 0x06, 0x72, 0x83, 0xa7, 0xaf, 0x59, 0x79, 0x5b, 0xb7, 0x01, 0x7e, 0x1d, 0x24, 0x96, 0x2a, 0x34, 0xd8, 0x50, 0xd9, 0x41, 0x87, 0xd2, 0x69, 0x83, 0x6a, 0xd4, 0x37, 0x39, 0x6a, 0x0f, 0xf1, 0x34, 0x06, 0x7b, 0x1b, 0xae, 0xde, 0xf6, 0x9b, 0x59, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7532 = { .name = "ecdsa_secp256r1_sha3_512_7532", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7532_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7532_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7532_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7533 for ECDSA, tcId is 280 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7533_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7533_msg[] = { 0x31, 0x33, 0x34, 0x37, 0x33, 0x37, 0x33, 0x37, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7533_sig[] = { 0x1e, 0xc0, 0x6a, 0x62, 0xd6, 0x9f, 0xca, 0x8d, 0x99, 0x47, 0x3b, 0x8d, 0x5a, 0x8a, 0xf3, 0xbb, 0xd7, 0x01, 0x89, 0x1d, 0xf9, 0x76, 0xe3, 0x3e, 0x2f, 0x86, 0xc6, 0x08, 0x4f, 0xb7, 0x05, 0xf2, 0xb6, 0x79, 0xef, 0xf4, 0x36, 0xfa, 0xa5, 0x3c, 0x0a, 0x3c, 0x43, 0x77, 0x17, 0xf5, 0x74, 0xb5, 0x91, 0x35, 0xd5, 0xdc, 0x49, 0xfb, 0x85, 0x24, 0xa3, 0x65, 0x29, 0x6d, 0xb2, 0xd1, 0x19, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7533 = { .name = "ecdsa_secp256r1_sha3_512_7533", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7533_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7533_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7533_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7534 for ECDSA, tcId is 281 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7534_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7534_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x35, 0x33, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7534_sig[] = { 0x18, 0x3c, 0x81, 0xab, 0x34, 0xa7, 0xd7, 0xc6, 0x74, 0x2e, 0xde, 0x41, 0x98, 0xf5, 0xc7, 0x5e, 0xd7, 0xfb, 0x79, 0xe8, 0x31, 0x58, 0x99, 0xef, 0x0d, 0xd2, 0x6f, 0x95, 0xe3, 0xc4, 0xba, 0x26, 0x73, 0xf0, 0x19, 0x6e, 0x45, 0x9e, 0xb9, 0x80, 0xb6, 0xe7, 0xac, 0x44, 0xd8, 0x68, 0xab, 0x63, 0x2d, 0x64, 0x21, 0xd1, 0x78, 0x8b, 0x9f, 0x96, 0x51, 0xfb, 0x82, 0x7b, 0x1a, 0x8e, 0x5d, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7534 = { .name = "ecdsa_secp256r1_sha3_512_7534", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7534_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7534_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7534_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7535 for ECDSA, tcId is 282 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7535_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7535_msg[] = { 0x33, 0x35, 0x33, 0x35, 0x30, 0x34, 0x30, 0x30, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7535_sig[] = { 0xf5, 0xbe, 0xc0, 0x0e, 0x6b, 0x90, 0xab, 0x2a, 0x8f, 0x18, 0x8f, 0x81, 0x63, 0xdc, 0xdd, 0x9b, 0x81, 0x85, 0xa6, 0xbb, 0xbc, 0x62, 0x3c, 0x12, 0xd5, 0x83, 0xc9, 0xcf, 0x55, 0xc8, 0xe3, 0xba, 0x5d, 0xba, 0x08, 0x5b, 0xd5, 0x7b, 0x54, 0x71, 0xf8, 0x54, 0x7c, 0xff, 0x0a, 0xca, 0x9e, 0x51, 0x23, 0x4d, 0x85, 0xc0, 0x84, 0x7d, 0x01, 0xa3, 0xaa, 0x0b, 0x3c, 0xf3, 0xca, 0xce, 0x82, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7535 = { .name = "ecdsa_secp256r1_sha3_512_7535", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7535_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7535_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7535_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7536 for ECDSA, tcId is 283 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7536_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7536_msg[] = { 0x31, 0x34, 0x32, 0x30, 0x33, 0x35, 0x37, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7536_sig[] = { 0x7c, 0x18, 0x89, 0x14, 0x99, 0xaf, 0x92, 0xcf, 0xa1, 0xdb, 0x55, 0x38, 0xc7, 0xaf, 0xbd, 0x44, 0x60, 0x5b, 0x17, 0xdd, 0x0e, 0xde, 0x57, 0x32, 0x06, 0xdb, 0x85, 0xaf, 0x23, 0xd3, 0xfe, 0x9d, 0x28, 0xce, 0xff, 0x96, 0x83, 0x39, 0x96, 0xeb, 0xab, 0xab, 0xef, 0x33, 0x2b, 0x05, 0x37, 0x22, 0x09, 0x84, 0x4d, 0xdc, 0xc4, 0xc2, 0x13, 0x4f, 0xd9, 0x31, 0x13, 0x97, 0xe7, 0x33, 0xb1, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7536 = { .name = "ecdsa_secp256r1_sha3_512_7536", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7536_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7536_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7536_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7537 for ECDSA, tcId is 284 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7537_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7537_msg[] = { 0x39, 0x30, 0x35, 0x31, 0x37, 0x35, 0x30, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7537_sig[] = { 0x4e, 0xd5, 0x87, 0x53, 0x6b, 0xa1, 0x5e, 0x67, 0x07, 0x01, 0x4f, 0x5a, 0xe7, 0x73, 0xa4, 0x23, 0x47, 0x5e, 0x5e, 0x37, 0x56, 0x4f, 0xfe, 0x91, 0xae, 0xc1, 0x77, 0x22, 0x89, 0x4c, 0xff, 0x34, 0x9f, 0xf5, 0x9f, 0xab, 0xe5, 0xe8, 0xdc, 0xf9, 0x53, 0x9e, 0xa1, 0xbf, 0x9f, 0x4b, 0x88, 0x0f, 0x11, 0x2a, 0x26, 0xc9, 0x15, 0xc1, 0x48, 0x27, 0xda, 0xd9, 0xde, 0x6b, 0x25, 0x1d, 0xd6, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7537 = { .name = "ecdsa_secp256r1_sha3_512_7537", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7537_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7537_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7537_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7538 for ECDSA, tcId is 285 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7538_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7538_msg[] = { 0x31, 0x36, 0x31, 0x33, 0x37, 0x37, 0x34, 0x32, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7538_sig[] = { 0x4f, 0xb6, 0x15, 0x77, 0x2d, 0x56, 0xb6, 0xd1, 0xba, 0x60, 0xf3, 0x71, 0xeb, 0x04, 0xc5, 0x57, 0xe0, 0xc9, 0x41, 0x4c, 0x4e, 0xec, 0x00, 0x81, 0x9c, 0x76, 0x47, 0xd9, 0x1e, 0x7d, 0xee, 0x01, 0x26, 0x23, 0xc6, 0xc4, 0xa3, 0xbf, 0xfc, 0x59, 0x6c, 0xb5, 0xf2, 0xf7, 0x0a, 0x5a, 0x38, 0x19, 0x42, 0xd3, 0x50, 0xdf, 0x04, 0xc3, 0x59, 0x78, 0xf6, 0x60, 0x7d, 0xdf, 0x7d, 0x57, 0xe4, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7538 = { .name = "ecdsa_secp256r1_sha3_512_7538", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7538_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7538_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7538_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7539 for ECDSA, tcId is 286 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7539_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7539_msg[] = { 0x38, 0x37, 0x33, 0x36, 0x37, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7539_sig[] = { 0xc5, 0x3d, 0x66, 0x97, 0xf5, 0x36, 0xb8, 0xfb, 0x0e, 0x79, 0xf3, 0xb0, 0x02, 0xdc, 0x62, 0x6a, 0x02, 0x94, 0x8e, 0x20, 0x6d, 0x96, 0xde, 0x7c, 0x62, 0xbd, 0x7f, 0x97, 0x36, 0x40, 0x8a, 0xce, 0xc9, 0x42, 0x3b, 0x85, 0x75, 0xe4, 0xaf, 0xe1, 0x6c, 0xfe, 0xbe, 0xfb, 0x03, 0xe5, 0x5d, 0x62, 0x82, 0x70, 0x26, 0x4f, 0xad, 0x0e, 0xb6, 0x7c, 0x9a, 0xcf, 0x02, 0x68, 0xe5, 0x14, 0x58, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7539 = { .name = "ecdsa_secp256r1_sha3_512_7539", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7539_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7539_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7539_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7540 for ECDSA, tcId is 287 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7540_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7540_msg[] = { 0x34, 0x33, 0x35, 0x35, 0x31, 0x30, 0x36, 0x34, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7540_sig[] = { 0x08, 0x01, 0x2c, 0xfd, 0x37, 0x13, 0x06, 0x8d, 0x8b, 0xa6, 0xf3, 0xfa, 0x45, 0x3b, 0xe9, 0xda, 0x95, 0xaf, 0xa6, 0x57, 0x2a, 0x89, 0x38, 0x82, 0x07, 0x5e, 0xd5, 0xd6, 0x4d, 0x62, 0xa4, 0x17, 0x3c, 0x5d, 0x1b, 0xf3, 0x41, 0x82, 0x3a, 0x4c, 0xca, 0x25, 0x1c, 0xd6, 0x7d, 0x43, 0xa6, 0xbc, 0xd6, 0xb5, 0xe4, 0x73, 0x03, 0x08, 0x2b, 0x7e, 0x54, 0xc8, 0x0d, 0xf5, 0xac, 0xbb, 0xac, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7540 = { .name = "ecdsa_secp256r1_sha3_512_7540", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7540_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7540_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7540_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7541 for ECDSA, tcId is 288 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7541_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7541_msg[] = { 0x34, 0x35, 0x33, 0x39, 0x35, 0x37, 0x35, 0x38, 0x37, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7541_sig[] = { 0x8a, 0xd3, 0xda, 0x76, 0x71, 0x11, 0xf4, 0x15, 0x58, 0xfd, 0xc5, 0x17, 0x23, 0xc6, 0x49, 0xa8, 0x7f, 0x58, 0xd4, 0x2b, 0xea, 0x34, 0x31, 0xc8, 0xfd, 0xfa, 0x1f, 0x10, 0x96, 0xe3, 0xf2, 0xdd, 0x7d, 0x1e, 0xa6, 0x85, 0x9a, 0x0c, 0x93, 0x2f, 0x22, 0x98, 0xf9, 0xd2, 0x1c, 0x89, 0xeb, 0xea, 0x73, 0x54, 0xbb, 0xe5, 0x08, 0xd2, 0xb7, 0x34, 0x69, 0xdc, 0x3e, 0xfe, 0x86, 0x13, 0xbc, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7541 = { .name = "ecdsa_secp256r1_sha3_512_7541", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7541_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7541_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7541_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7542 for ECDSA, tcId is 289 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7542_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7542_msg[] = { 0x38, 0x39, 0x33, 0x36, 0x36, 0x33, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7542_sig[] = { 0x62, 0xbe, 0xcf, 0x5a, 0xfb, 0x08, 0x83, 0x5f, 0x67, 0x68, 0x88, 0x2c, 0x58, 0xa2, 0x6c, 0x50, 0x1f, 0x27, 0x7e, 0xcd, 0x61, 0xa4, 0x8d, 0x1f, 0xe6, 0x83, 0xb6, 0xa7, 0x8c, 0x49, 0xce, 0x82, 0x89, 0xd1, 0x12, 0x30, 0xde, 0x69, 0x53, 0xa1, 0xee, 0xeb, 0x6b, 0x30, 0x77, 0x4f, 0xc6, 0xbf, 0xd0, 0x93, 0xc1, 0xe7, 0xc0, 0x42, 0x2a, 0x72, 0x53, 0x42, 0x8b, 0xa1, 0x7e, 0xf9, 0x69, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7542 = { .name = "ecdsa_secp256r1_sha3_512_7542", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7542_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7542_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7542_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7543 for ECDSA, tcId is 290 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7543_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7543_msg[] = { 0x33, 0x38, 0x30, 0x36, 0x30, 0x36, 0x38, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7543_sig[] = { 0x22, 0xb5, 0x43, 0x82, 0xe2, 0xf2, 0xe6, 0xd7, 0xcf, 0xfe, 0x3b, 0x34, 0xfb, 0xd5, 0x67, 0xc8, 0xb5, 0x03, 0xbf, 0xa6, 0xb5, 0xc3, 0xe5, 0xb8, 0x13, 0x1e, 0x0f, 0xfe, 0x20, 0x74, 0x71, 0x76, 0xa6, 0xd2, 0x5a, 0xe5, 0xca, 0xb3, 0x9c, 0xc8, 0x31, 0x16, 0xd0, 0x73, 0xcd, 0x1e, 0xb5, 0x9d, 0x80, 0xce, 0x2e, 0xd2, 0x08, 0xc1, 0xc9, 0x70, 0xb1, 0x34, 0xbe, 0x2a, 0xd2, 0x9d, 0x60, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7543 = { .name = "ecdsa_secp256r1_sha3_512_7543", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7543_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7543_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7543_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7544 for ECDSA, tcId is 291 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7544_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7544_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x38, 0x31, 0x37, 0x34, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7544_sig[] = { 0xe2, 0xd9, 0xf5, 0xc3, 0x7d, 0xdb, 0x25, 0x97, 0x8e, 0xd4, 0x72, 0x7b, 0x63, 0xa5, 0xe1, 0x75, 0x46, 0x29, 0x25, 0x26, 0x87, 0x7e, 0x90, 0x3f, 0x11, 0xd3, 0xd2, 0x98, 0x74, 0xe9, 0x52, 0xc8, 0x5c, 0x28, 0xeb, 0xaf, 0xa2, 0xc2, 0xd2, 0x85, 0xed, 0x7f, 0x14, 0x3d, 0x49, 0xb6, 0xd4, 0x7d, 0xaf, 0x12, 0xad, 0x21, 0xc3, 0x6f, 0x78, 0xed, 0x7f, 0x18, 0xcb, 0x53, 0xd9, 0xc2, 0x9f, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7544 = { .name = "ecdsa_secp256r1_sha3_512_7544", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7544_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7544_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7544_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7545 for ECDSA, tcId is 292 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7545_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7545_msg[] = { 0x34, 0x30, 0x37, 0x34, 0x33, 0x32, 0x32, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7545_sig[] = { 0x3b, 0x4c, 0x2f, 0xb7, 0x73, 0x22, 0x3c, 0x1d, 0xaf, 0xa6, 0xd6, 0xde, 0x9e, 0xd2, 0x30, 0x4d, 0xc2, 0x5e, 0xea, 0x1f, 0xd4, 0x87, 0x44, 0x2a, 0x3a, 0x64, 0xae, 0x8d, 0xc8, 0xf1, 0x49, 0x27, 0x56, 0xc2, 0x15, 0x79, 0xe8, 0x5f, 0xc9, 0x07, 0x5c, 0x76, 0x01, 0xbd, 0x36, 0xef, 0x8a, 0x3f, 0xa5, 0x7d, 0x5b, 0xc7, 0x55, 0x0c, 0x9a, 0x17, 0xbb, 0x83, 0x83, 0xe7, 0xfd, 0xbb, 0x36, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7545 = { .name = "ecdsa_secp256r1_sha3_512_7545", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7545_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7545_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7545_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7546 for ECDSA, tcId is 293 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7546_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7546_msg[] = { 0x36, 0x31, 0x30, 0x36, 0x37, 0x35, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7546_sig[] = { 0x05, 0x27, 0x6f, 0x61, 0x59, 0xe2, 0x85, 0x3f, 0xc6, 0x88, 0x4c, 0x29, 0x39, 0x99, 0x7b, 0x5a, 0x3b, 0xe7, 0xae, 0x61, 0x5d, 0xad, 0x75, 0x17, 0xd6, 0x00, 0x62, 0x08, 0x11, 0x1d, 0xd6, 0x78, 0x05, 0x9e, 0xa3, 0x47, 0x4b, 0xc6, 0x90, 0x8c, 0x56, 0x5d, 0xfb, 0x5b, 0xc7, 0x2f, 0xd1, 0xa8, 0x42, 0x31, 0x36, 0x3c, 0xf7, 0x8c, 0x4c, 0x31, 0x7a, 0x06, 0x1d, 0xbf, 0x1b, 0x03, 0xcc, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7546 = { .name = "ecdsa_secp256r1_sha3_512_7546", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7546_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7546_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7546_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7547 for ECDSA, tcId is 294 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7547_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7547_msg[] = { 0x31, 0x37, 0x34, 0x31, 0x38, 0x37, 0x33, 0x39, 0x32, 0x31, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7547_sig[] = { 0x5f, 0x85, 0x6a, 0x30, 0xa8, 0x80, 0x3a, 0x22, 0x76, 0xe8, 0xe5, 0xb8, 0x47, 0x5f, 0x08, 0x5d, 0x14, 0xf6, 0xde, 0x0c, 0x5f, 0x64, 0xea, 0xf9, 0xe9, 0xb8, 0x1c, 0x75, 0xfa, 0x83, 0x16, 0x72, 0xa2, 0x10, 0xa7, 0x4c, 0x1c, 0x68, 0x2d, 0xe5, 0x70, 0x8b, 0x9d, 0x19, 0xe6, 0xfd, 0x2f, 0x74, 0xea, 0x04, 0x7b, 0x13, 0x52, 0xed, 0xac, 0x7e, 0x47, 0x84, 0xcc, 0x00, 0x8e, 0x8b, 0x0b, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7547 = { .name = "ecdsa_secp256r1_sha3_512_7547", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7547_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7547_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7547_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7548 for ECDSA, tcId is 295 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7548_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7548_msg[] = { 0x35, 0x31, 0x32, 0x37, 0x38, 0x34, 0x32, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7548_sig[] = { 0x1c, 0x05, 0x8d, 0xae, 0xb1, 0x7f, 0x99, 0x5c, 0xba, 0xa4, 0xb0, 0x2f, 0xc1, 0xcc, 0xf0, 0xa1, 0x21, 0xfb, 0x76, 0x73, 0xd7, 0xb9, 0xb7, 0xbb, 0xaa, 0x2c, 0x9d, 0x85, 0x0f, 0x9b, 0xa7, 0x41, 0x3e, 0x54, 0x00, 0xac, 0xc9, 0x92, 0x69, 0x8d, 0xbe, 0x9c, 0x41, 0xe2, 0x55, 0x47, 0xc6, 0xee, 0x08, 0xc8, 0x41, 0xd6, 0x60, 0x4d, 0xe4, 0x57, 0x55, 0x8e, 0xe8, 0xaf, 0x11, 0xd5, 0x44, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7548 = { .name = "ecdsa_secp256r1_sha3_512_7548", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7548_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7548_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7548_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7549 for ECDSA, tcId is 296 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7549_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7549_msg[] = { 0x35, 0x30, 0x33, 0x38, 0x36, 0x39, 0x30, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7549_sig[] = { 0x7a, 0x6c, 0x6e, 0xb1, 0x98, 0xbc, 0xed, 0x25, 0x22, 0x3f, 0xed, 0x63, 0x0d, 0xbd, 0x29, 0x56, 0xc3, 0x79, 0x9a, 0x21, 0x38, 0x9e, 0x00, 0x7e, 0xfc, 0x23, 0xa0, 0xb3, 0x96, 0x8f, 0x8a, 0xa5, 0x45, 0x35, 0x35, 0x4e, 0x8f, 0xb4, 0x77, 0xd0, 0xbe, 0x4a, 0x16, 0xf4, 0x47, 0x19, 0xd9, 0x46, 0x50, 0xed, 0x46, 0x07, 0xea, 0xbe, 0x20, 0x68, 0x48, 0xba, 0x24, 0x32, 0x24, 0x06, 0xc1, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7549 = { .name = "ecdsa_secp256r1_sha3_512_7549", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7549_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7549_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7549_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7550 for ECDSA, tcId is 297 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7550_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7550_msg[] = { 0x33, 0x38, 0x37, 0x37, 0x30, 0x34, 0x32, 0x33, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7550_sig[] = { 0x9d, 0x05, 0xa4, 0x3f, 0x8d, 0xea, 0x2c, 0x4a, 0x3c, 0x08, 0x38, 0xe5, 0x98, 0x7d, 0x89, 0x9e, 0x63, 0x31, 0x7a, 0x17, 0xfa, 0x5f, 0x60, 0x9a, 0x4b, 0xaa, 0x37, 0x64, 0xda, 0xc9, 0x89, 0x9a, 0xd7, 0xc1, 0x83, 0x34, 0x85, 0xf0, 0xa6, 0x91, 0x4e, 0x56, 0x33, 0x11, 0x53, 0x30, 0xa5, 0x9b, 0x2a, 0xde, 0x51, 0x53, 0xb0, 0x1b, 0x2a, 0x1a, 0xf0, 0xa8, 0x15, 0xf4, 0x4d, 0x7f, 0x0a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7550 = { .name = "ecdsa_secp256r1_sha3_512_7550", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7550_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7550_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7550_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7551 for ECDSA, tcId is 298 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7551_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7551_msg[] = { 0x33, 0x32, 0x31, 0x37, 0x30, 0x38, 0x31, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7551_sig[] = { 0xb2, 0x62, 0xa7, 0x57, 0xff, 0xcb, 0x49, 0x6d, 0x88, 0x07, 0x39, 0xd1, 0x93, 0x7f, 0x13, 0x9d, 0x39, 0xcd, 0xe8, 0xe7, 0xed, 0x29, 0x51, 0x2a, 0x3b, 0xe5, 0x1a, 0xd4, 0x70, 0xdc, 0xf5, 0xd9, 0xeb, 0x8d, 0xd0, 0x06, 0x68, 0x05, 0x30, 0xf2, 0x73, 0x26, 0xf1, 0xc9, 0xc5, 0x4e, 0x5c, 0x43, 0x00, 0xf1, 0xbc, 0xa2, 0x1b, 0xdb, 0x17, 0x24, 0x5c, 0x48, 0x5d, 0x7b, 0x29, 0x6a, 0x23, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7551 = { .name = "ecdsa_secp256r1_sha3_512_7551", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7551_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7551_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7551_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7552 for ECDSA, tcId is 299 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7552_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7552_msg[] = { 0x37, 0x36, 0x36, 0x37, 0x30, 0x34, 0x34, 0x32, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7552_sig[] = { 0x48, 0x0a, 0x68, 0x75, 0xb7, 0xbe, 0xe4, 0xed, 0x80, 0xf7, 0x02, 0x06, 0x40, 0x0d, 0xf1, 0x02, 0x64, 0xc3, 0x8b, 0xe4, 0x2b, 0x07, 0x44, 0x3c, 0x6f, 0xf1, 0x9c, 0x0a, 0xab, 0x58, 0x04, 0x44, 0x78, 0xe3, 0xfa, 0x1c, 0x2f, 0xe1, 0x12, 0x08, 0xc1, 0x89, 0xa3, 0x9e, 0x71, 0x7b, 0x19, 0xa5, 0x1f, 0x51, 0x72, 0x05, 0x48, 0x91, 0xc0, 0x83, 0x93, 0x18, 0x61, 0xc7, 0x91, 0x9d, 0x47, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7552 = { .name = "ecdsa_secp256r1_sha3_512_7552", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7552_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7552_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7552_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7553 for ECDSA, tcId is 300 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7553_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7553_msg[] = { 0x31, 0x31, 0x30, 0x34, 0x37, 0x34, 0x35, 0x30, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7553_sig[] = { 0xf2, 0xbe, 0x8c, 0xc6, 0x15, 0xb1, 0x4c, 0x28, 0x9e, 0x50, 0x11, 0x4a, 0xe2, 0x47, 0x3b, 0x10, 0x54, 0x47, 0xec, 0x8c, 0x53, 0x11, 0xec, 0xc3, 0xab, 0xce, 0xdc, 0xbe, 0xae, 0xea, 0x19, 0x83, 0x56, 0xae, 0x20, 0xcd, 0x65, 0x93, 0x70, 0x71, 0x2e, 0x06, 0xbd, 0x6d, 0x59, 0x36, 0xbc, 0xaa, 0x06, 0x16, 0x97, 0x37, 0xa0, 0x62, 0x43, 0x8c, 0x7e, 0x59, 0x9b, 0xff, 0xf0, 0x09, 0x9f, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7553 = { .name = "ecdsa_secp256r1_sha3_512_7553", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7553_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7553_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7553_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7554 for ECDSA, tcId is 301 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7554_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7554_msg[] = { 0x31, 0x35, 0x33, 0x38, 0x37, 0x30, 0x31, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7554_sig[] = { 0xbe, 0xd3, 0x8f, 0x88, 0xfd, 0x52, 0xbf, 0x1c, 0xc4, 0xb4, 0xcc, 0x58, 0xbd, 0xd8, 0xa8, 0x1a, 0xf8, 0x94, 0xc5, 0xa4, 0x5b, 0xd8, 0x22, 0xac, 0xf4, 0x68, 0xee, 0xe0, 0x8a, 0x68, 0x35, 0x84, 0x1c, 0x9f, 0x77, 0xab, 0x2c, 0x82, 0x1d, 0xaa, 0x89, 0x6e, 0x73, 0xb9, 0xf6, 0xed, 0x4e, 0xdf, 0x72, 0xce, 0x62, 0xa6, 0xc4, 0x8b, 0x5c, 0xaa, 0xe6, 0xa5, 0xac, 0x9e, 0xdd, 0x8d, 0x29, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7554 = { .name = "ecdsa_secp256r1_sha3_512_7554", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7554_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7554_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7554_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7555 for ECDSA, tcId is 302 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7555_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7555_msg[] = { 0x32, 0x32, 0x36, 0x31, 0x33, 0x38, 0x35, 0x30, 0x34, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7555_sig[] = { 0x85, 0x13, 0xed, 0x01, 0x2e, 0xa7, 0xa1, 0x0d, 0x22, 0x39, 0xc2, 0x09, 0xe1, 0x72, 0xed, 0xb5, 0x65, 0xb1, 0xbf, 0xd2, 0xcd, 0xfd, 0x80, 0x26, 0x9f, 0x79, 0x95, 0x6a, 0x4a, 0xab, 0x5a, 0xf2, 0xa4, 0x13, 0x07, 0x0c, 0x1e, 0x97, 0x46, 0x43, 0xe5, 0xd5, 0xfd, 0xc5, 0x62, 0x09, 0xe1, 0x42, 0x1a, 0x25, 0x4f, 0x47, 0xfd, 0xa3, 0x31, 0x2c, 0xed, 0xa2, 0x44, 0x06, 0x4e, 0xfe, 0x69, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7555 = { .name = "ecdsa_secp256r1_sha3_512_7555", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7555_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7555_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7555_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7556 for ECDSA, tcId is 303 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7556_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7556_msg[] = { 0x37, 0x35, 0x35, 0x38, 0x37, 0x34, 0x37, 0x36, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7556_sig[] = { 0x25, 0xbc, 0x1c, 0x38, 0xb2, 0x91, 0xa5, 0xf6, 0x0b, 0x7b, 0x01, 0xee, 0xc8, 0xa5, 0x02, 0x5c, 0x69, 0x72, 0x3b, 0x18, 0x3f, 0x90, 0x90, 0x15, 0x0a, 0x7f, 0x0a, 0xc8, 0x74, 0x64, 0xf2, 0xf5, 0xc9, 0x86, 0xa0, 0x30, 0x25, 0xcb, 0xf9, 0xbd, 0xfa, 0x4e, 0x9a, 0x09, 0x88, 0x82, 0x2d, 0xae, 0x44, 0xc4, 0x86, 0x24, 0xbc, 0x63, 0xa2, 0x03, 0x07, 0x2c, 0x9c, 0xb1, 0xb8, 0x13, 0x10, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7556 = { .name = "ecdsa_secp256r1_sha3_512_7556", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7556_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7556_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7556_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7557 for ECDSA, tcId is 304 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7557_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7557_msg[] = { 0x33, 0x34, 0x39, 0x39, 0x33, 0x36, 0x34, 0x31, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7557_sig[] = { 0xb7, 0x21, 0x21, 0x4c, 0xff, 0x17, 0x79, 0xb8, 0xf4, 0x07, 0xf4, 0xb1, 0xb2, 0xb2, 0xc5, 0xaa, 0x4e, 0x49, 0xa4, 0xa5, 0x17, 0x03, 0x1f, 0xf3, 0xd2, 0x4b, 0x5a, 0xf5, 0x89, 0xb2, 0x8b, 0x96, 0xe9, 0xc5, 0x36, 0x70, 0xe9, 0x43, 0x37, 0x53, 0x5d, 0xda, 0x10, 0xa5, 0x99, 0xde, 0x0a, 0x6d, 0xa2, 0x40, 0xea, 0x81, 0x3e, 0x80, 0x81, 0xf9, 0xca, 0xa6, 0xba, 0xe5, 0x9c, 0xbd, 0x31, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7557 = { .name = "ecdsa_secp256r1_sha3_512_7557", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7557_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7557_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7557_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7558 for ECDSA, tcId is 305 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7558_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7558_msg[] = { 0x32, 0x33, 0x36, 0x39, 0x32, 0x37, 0x33, 0x39, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7558_sig[] = { 0x86, 0x95, 0x06, 0x4b, 0xbd, 0x15, 0xd7, 0x6b, 0x69, 0x8e, 0x4b, 0xb8, 0xc0, 0x18, 0x3b, 0xc2, 0x63, 0x4a, 0x5c, 0x24, 0x55, 0xd6, 0xbd, 0x2c, 0x3f, 0x83, 0x23, 0xa4, 0x26, 0x8e, 0xdf, 0xe0, 0xc7, 0x06, 0xf6, 0x65, 0x07, 0xb5, 0x2d, 0x2c, 0x88, 0x65, 0xe3, 0xeb, 0x59, 0x59, 0x26, 0x73, 0x07, 0xf5, 0x1f, 0xdb, 0x05, 0x65, 0xc2, 0x32, 0x01, 0x32, 0xf2, 0xca, 0x14, 0x12, 0x34, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7558 = { .name = "ecdsa_secp256r1_sha3_512_7558", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7558_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7558_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7558_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7559 for ECDSA, tcId is 306 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7559_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7559_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7559_sig[] = { 0xc9, 0x1a, 0xad, 0x6b, 0x3c, 0x08, 0x60, 0x73, 0xda, 0xfd, 0xb7, 0x68, 0x8c, 0x63, 0x66, 0xbe, 0x91, 0x27, 0xd9, 0x93, 0x5c, 0xbc, 0x6e, 0x0c, 0x14, 0xb9, 0xf7, 0x6c, 0x9d, 0x27, 0x2c, 0x43, 0x73, 0xc0, 0xf7, 0x51, 0x56, 0x53, 0x1a, 0xad, 0x36, 0xd2, 0xd1, 0x41, 0x69, 0xc2, 0xb6, 0x67, 0x97, 0xe8, 0xdd, 0x31, 0xd6, 0xf6, 0x6b, 0x8d, 0xdb, 0x83, 0xf7, 0x52, 0x2f, 0xba, 0x21, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7559 = { .name = "ecdsa_secp256r1_sha3_512_7559", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7559_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7559_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7559_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7560 for ECDSA, tcId is 307 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7560_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7560_msg[] = { 0x32, 0x35, 0x33, 0x34, 0x33, 0x37, 0x39, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7560_sig[] = { 0x81, 0x25, 0x83, 0x2e, 0xdd, 0x19, 0x94, 0x93, 0x28, 0xb1, 0x70, 0xb1, 0x06, 0x7e, 0xaf, 0xcc, 0x17, 0xb3, 0xb7, 0x9f, 0x5c, 0x13, 0x9d, 0xfb, 0x6c, 0x10, 0x9a, 0x11, 0x07, 0xac, 0x76, 0xc8, 0xfc, 0xe7, 0xf7, 0x70, 0xe2, 0x24, 0x5e, 0xea, 0xb1, 0x6c, 0x33, 0xa2, 0x30, 0xf6, 0xde, 0xa2, 0xce, 0x1d, 0xa6, 0x7d, 0x11, 0x30, 0x2a, 0x8c, 0xe7, 0xdc, 0x61, 0x45, 0xc3, 0x0a, 0x2b, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7560 = { .name = "ecdsa_secp256r1_sha3_512_7560", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7560_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7560_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7560_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7561 for ECDSA, tcId is 308 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7561_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7561_msg[] = { 0x38, 0x33, 0x34, 0x38, 0x30, 0x31, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7561_sig[] = { 0x5e, 0x39, 0x99, 0x62, 0x38, 0x5a, 0xec, 0x96, 0x3c, 0xb8, 0x0d, 0xab, 0x6b, 0x5f, 0x5c, 0x34, 0x1c, 0xe1, 0x5e, 0x43, 0x71, 0x42, 0xf4, 0x27, 0x5e, 0xf9, 0xc2, 0x10, 0x38, 0x53, 0x48, 0xc1, 0x18, 0xa8, 0x15, 0x7a, 0x09, 0x76, 0xbb, 0x0e, 0x34, 0x9a, 0x02, 0x13, 0x4f, 0xad, 0x0d, 0x02, 0x86, 0xc4, 0x0a, 0x5e, 0x43, 0xa4, 0x7b, 0x49, 0xb5, 0xa0, 0x36, 0x53, 0xe3, 0xae, 0x9e, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7561 = { .name = "ecdsa_secp256r1_sha3_512_7561", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7561_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7561_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7561_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7562 for ECDSA, tcId is 309 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7562_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7562_msg[] = { 0x32, 0x34, 0x31, 0x31, 0x30, 0x35, 0x37, 0x34, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7562_sig[] = { 0xad, 0xa1, 0x47, 0xd5, 0x93, 0x73, 0x31, 0xd0, 0x37, 0x08, 0x3c, 0x0b, 0xcd, 0xa5, 0x9a, 0xdb, 0x61, 0x25, 0x48, 0x5a, 0x9e, 0xa7, 0x8e, 0xf6, 0x88, 0x4c, 0x14, 0x32, 0xe9, 0x3e, 0x40, 0x93, 0xb5, 0xea, 0x22, 0x3b, 0x88, 0xf4, 0x55, 0x33, 0x82, 0x6a, 0x8b, 0x24, 0xfc, 0x91, 0xed, 0x80, 0xae, 0x35, 0x60, 0x54, 0x31, 0x02, 0xfe, 0xd1, 0xd8, 0x23, 0x60, 0x37, 0x29, 0x88, 0xdd, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7562 = { .name = "ecdsa_secp256r1_sha3_512_7562", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7562_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7562_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7562_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7563 for ECDSA, tcId is 310 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7563_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7563_msg[] = { 0x37, 0x38, 0x36, 0x34, 0x36, 0x38, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7563_sig[] = { 0xff, 0x56, 0xb2, 0x2a, 0xca, 0x92, 0x06, 0xd8, 0xdb, 0xa4, 0x58, 0x50, 0x78, 0x04, 0xc9, 0xf8, 0x0b, 0x94, 0xe7, 0x5d, 0x2b, 0x61, 0x44, 0x3a, 0x1c, 0x8d, 0x72, 0x48, 0x0d, 0x86, 0x80, 0xb4, 0xa8, 0x66, 0xf6, 0x20, 0x64, 0x05, 0x11, 0x35, 0x7b, 0x7d, 0xd3, 0xbc, 0x0e, 0xdd, 0xcd, 0xdc, 0xc5, 0xa5, 0x9e, 0x91, 0x62, 0x20, 0x4c, 0x1d, 0x85, 0xf2, 0x23, 0xec, 0x48, 0x5c, 0xde, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7563 = { .name = "ecdsa_secp256r1_sha3_512_7563", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7563_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7563_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7563_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7564 for ECDSA, tcId is 311 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7564_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7564_msg[] = { 0x33, 0x30, 0x35, 0x34, 0x37, 0x37, 0x33, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7564_sig[] = { 0xcf, 0x35, 0x55, 0xd2, 0x77, 0xeb, 0x8f, 0x6f, 0xa6, 0x29, 0xe8, 0xed, 0x87, 0x5d, 0xf1, 0x44, 0x03, 0x52, 0xe5, 0x3f, 0x32, 0xf9, 0x50, 0x9c, 0xee, 0xcf, 0x22, 0x2c, 0x41, 0x97, 0xc5, 0xde, 0x84, 0x82, 0x9a, 0x12, 0x86, 0xf9, 0x8c, 0x29, 0x9e, 0xc5, 0xc2, 0x16, 0x9a, 0x14, 0xd0, 0xcb, 0xf4, 0x89, 0x2a, 0x97, 0xba, 0xca, 0x83, 0x10, 0x27, 0x9d, 0x9b, 0x4c, 0x98, 0xfd, 0xef, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7564 = { .name = "ecdsa_secp256r1_sha3_512_7564", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7564_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7564_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7564_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7565 for ECDSA, tcId is 312 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7565_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7565_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x31, 0x37, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7565_sig[] = { 0xd8, 0xdd, 0x50, 0x94, 0xbc, 0x40, 0x65, 0x2d, 0xdc, 0x19, 0xd0, 0x4b, 0xee, 0xef, 0xee, 0x8d, 0x90, 0xfe, 0xf8, 0x26, 0x28, 0xed, 0xbc, 0x21, 0x8a, 0x9d, 0x2d, 0xe5, 0x96, 0xbb, 0x02, 0x3d, 0x5c, 0x0a, 0x46, 0x80, 0x4e, 0x7d, 0xe7, 0xc7, 0x41, 0xe5, 0xbe, 0x55, 0xa7, 0xeb, 0xba, 0x09, 0x2d, 0xc1, 0x0a, 0x4d, 0x16, 0x91, 0xe6, 0xa0, 0x4a, 0xc1, 0x69, 0x0b, 0x54, 0xac, 0xf9, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7565 = { .name = "ecdsa_secp256r1_sha3_512_7565", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7565_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7565_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7565_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7566 for ECDSA, tcId is 313 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7566_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7566_msg[] = { 0x31, 0x30, 0x35, 0x31, 0x33, 0x32, 0x35, 0x36, 0x33, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7566_sig[] = { 0x25, 0x23, 0x6b, 0x00, 0xa0, 0xa6, 0x7e, 0x12, 0xea, 0x78, 0x1a, 0xe5, 0x3a, 0x92, 0x9e, 0x13, 0xc3, 0x79, 0x94, 0xdd, 0xce, 0x78, 0x4f, 0x3c, 0x0c, 0x33, 0x40, 0x2a, 0x43, 0xb4, 0xa6, 0xf0, 0x11, 0x73, 0x31, 0xe5, 0xb3, 0x9f, 0xe2, 0xa1, 0x1f, 0x5c, 0x8b, 0xbf, 0xa5, 0xbb, 0x4f, 0xdc, 0x36, 0x59, 0xac, 0x0a, 0x0e, 0xfc, 0xd0, 0x3a, 0x94, 0x36, 0x20, 0x81, 0xa4, 0xc0, 0xe5, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7566 = { .name = "ecdsa_secp256r1_sha3_512_7566", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7566_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7566_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7566_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7567 for ECDSA, tcId is 314 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7567_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7567_msg[] = { 0x34, 0x30, 0x31, 0x39, 0x38, 0x36, 0x36, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7567_sig[] = { 0x0f, 0x35, 0x64, 0xb7, 0x71, 0x33, 0x7b, 0xc8, 0xd4, 0x94, 0xa0, 0x4e, 0x4d, 0x05, 0x18, 0xf2, 0x6d, 0x06, 0x7d, 0x07, 0xc3, 0x16, 0x89, 0xd5, 0xe2, 0x7b, 0x50, 0x3d, 0x36, 0x52, 0x11, 0x7a, 0x17, 0x14, 0x47, 0x40, 0xdb, 0x21, 0x87, 0x4a, 0xa5, 0x8c, 0x0d, 0xe6, 0xa4, 0xca, 0xdb, 0x16, 0xc5, 0xd9, 0x23, 0x0d, 0x4f, 0x46, 0x07, 0x98, 0x0a, 0xab, 0xd1, 0x61, 0xd2, 0x10, 0x45, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7567 = { .name = "ecdsa_secp256r1_sha3_512_7567", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7567_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7567_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7567_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7568 for ECDSA, tcId is 315 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7568_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7568_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x30, 0x32, 0x35, 0x37, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7568_sig[] = { 0xbf, 0xf7, 0x06, 0xd2, 0x7d, 0xc3, 0xc8, 0xc5, 0x99, 0x51, 0xc3, 0x42, 0x24, 0x4e, 0x3c, 0x35, 0x52, 0x21, 0x6b, 0x92, 0x25, 0x89, 0x8d, 0xe1, 0x30, 0xc6, 0xa5, 0xa8, 0xf5, 0x8e, 0xef, 0x42, 0x0e, 0x20, 0xcb, 0x9b, 0xff, 0xd2, 0x0d, 0x88, 0xfe, 0x70, 0xe5, 0xd1, 0xf9, 0x09, 0x05, 0x15, 0x28, 0xc5, 0x5e, 0xfb, 0xad, 0xbf, 0xd7, 0xcd, 0xcc, 0xe6, 0x7d, 0xe8, 0x53, 0xf6, 0x46, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7568 = { .name = "ecdsa_secp256r1_sha3_512_7568", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7568_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7568_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7568_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7569 for ECDSA, tcId is 316 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7569_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7569_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x35, 0x38, 0x35, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7569_sig[] = { 0xec, 0x5c, 0x12, 0x88, 0x1d, 0xae, 0x52, 0x16, 0x8a, 0xa6, 0x35, 0xc8, 0x0d, 0xcb, 0x00, 0x31, 0xa4, 0x3e, 0x7d, 0x1b, 0x76, 0xea, 0x97, 0x23, 0x1b, 0x81, 0x90, 0x51, 0xa8, 0x61, 0xa7, 0xff, 0x09, 0x14, 0x9c, 0x00, 0x0d, 0x1a, 0xf1, 0x2d, 0x80, 0x02, 0x25, 0xc1, 0xba, 0x35, 0x87, 0xa5, 0x3e, 0x5a, 0xab, 0xd8, 0xa8, 0xfe, 0x78, 0x23, 0x0b, 0x1b, 0x4c, 0x12, 0xba, 0x7d, 0xf0, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7569 = { .name = "ecdsa_secp256r1_sha3_512_7569", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7569_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7569_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7569_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7570 for ECDSA, tcId is 317 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7570_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7570_msg[] = { 0x33, 0x30, 0x37, 0x34, 0x36, 0x35, 0x33, 0x32, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7570_sig[] = { 0xca, 0xed, 0xa2, 0xff, 0x27, 0xee, 0xf0, 0xc7, 0x1a, 0x30, 0xc2, 0x77, 0xdd, 0xa1, 0x28, 0x69, 0x2e, 0x48, 0x50, 0xe5, 0x89, 0xd0, 0x7f, 0x84, 0x04, 0x63, 0x42, 0xdd, 0xae, 0xf9, 0x84, 0x2a, 0x69, 0xd4, 0x22, 0x21, 0x54, 0x39, 0x15, 0x0d, 0x1d, 0xa0, 0x0a, 0x08, 0x11, 0xd2, 0x12, 0x6d, 0xe5, 0xb5, 0xc5, 0xa8, 0x5b, 0xe1, 0x8f, 0xd3, 0xc0, 0x6e, 0xb6, 0x38, 0x70, 0x3e, 0x60, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7570 = { .name = "ecdsa_secp256r1_sha3_512_7570", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7570_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7570_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7570_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7571 for ECDSA, tcId is 318 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7571_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7571_msg[] = { 0x37, 0x37, 0x31, 0x34, 0x36, 0x38, 0x33, 0x34, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7571_sig[] = { 0x39, 0x77, 0x46, 0x59, 0x17, 0x47, 0x2d, 0x3c, 0xb6, 0x7d, 0x6f, 0xc8, 0x88, 0x88, 0x34, 0xf2, 0x6f, 0xa4, 0x7c, 0x8d, 0x3a, 0x2c, 0x8e, 0x04, 0x6f, 0x70, 0x68, 0x0e, 0x30, 0x37, 0xa3, 0x7e, 0x78, 0x5a, 0xdc, 0xed, 0x4f, 0x3d, 0x40, 0x0b, 0x28, 0x6a, 0xd7, 0xeb, 0x7b, 0xdf, 0x0b, 0x7c, 0x0f, 0x46, 0xd9, 0xe7, 0x26, 0x8d, 0xb5, 0xa3, 0x4e, 0x74, 0x01, 0x66, 0xca, 0xaf, 0xd1, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7571 = { .name = "ecdsa_secp256r1_sha3_512_7571", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7571_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7571_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7571_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7572 for ECDSA, tcId is 319 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7572_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7572_msg[] = { 0x31, 0x37, 0x39, 0x33, 0x33, 0x38, 0x31, 0x33, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7572_sig[] = { 0x05, 0x1b, 0x25, 0x29, 0x34, 0xf1, 0xc6, 0x5f, 0x39, 0x65, 0x2a, 0x89, 0x3e, 0x95, 0x17, 0xf0, 0x49, 0xaf, 0x42, 0x25, 0x99, 0x36, 0x83, 0x2c, 0xc3, 0xf8, 0xff, 0x56, 0xd7, 0xf3, 0xcc, 0x54, 0x86, 0x7b, 0xc5, 0x7a, 0x96, 0xeb, 0x9d, 0x8d, 0xc3, 0xaf, 0xd6, 0xdb, 0x11, 0xb5, 0x27, 0xf1, 0x9e, 0x4a, 0xd8, 0xc0, 0x31, 0x13, 0x4a, 0xe6, 0xec, 0x9b, 0x2b, 0x6e, 0xe0, 0x92, 0x54, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7572 = { .name = "ecdsa_secp256r1_sha3_512_7572", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7572_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7572_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7572_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7573 for ECDSA, tcId is 320 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7573_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7573_msg[] = { 0x34, 0x38, 0x38, 0x30, 0x36, 0x32, 0x35, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7573_sig[] = { 0x01, 0x62, 0xba, 0x94, 0x0a, 0x75, 0xc7, 0xa1, 0x25, 0x74, 0x73, 0x6d, 0x45, 0xd6, 0x0b, 0xbb, 0x2c, 0x6c, 0xe7, 0x73, 0x9b, 0x04, 0x42, 0x9c, 0xc7, 0x23, 0x52, 0xad, 0xea, 0x46, 0x66, 0xc3, 0x4c, 0x68, 0x6a, 0xaa, 0xfb, 0x4f, 0x36, 0x15, 0x24, 0x7f, 0xf0, 0x6b, 0x97, 0xbd, 0x76, 0xd4, 0x9b, 0x93, 0xf6, 0x5b, 0x5f, 0x66, 0xc9, 0x3f, 0xc2, 0xa8, 0xa2, 0x22, 0x46, 0x53, 0x6c, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7573 = { .name = "ecdsa_secp256r1_sha3_512_7573", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7573_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7573_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7573_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7574 for ECDSA, tcId is 321 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7574_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7574_msg[] = { 0x34, 0x39, 0x34, 0x33, 0x37, 0x36, 0x34, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7574_sig[] = { 0xf7, 0x4e, 0x65, 0xdd, 0xb4, 0x1c, 0x6c, 0x01, 0x56, 0x4b, 0x33, 0x44, 0xfc, 0xaa, 0x8d, 0xb2, 0xb7, 0xb7, 0x3f, 0x8f, 0xd1, 0x56, 0xe5, 0x00, 0x86, 0x5a, 0x04, 0x82, 0x6c, 0x5e, 0x4a, 0xb0, 0x6e, 0xc0, 0x37, 0x66, 0x75, 0xb8, 0xc3, 0x69, 0x2f, 0x39, 0x73, 0x41, 0x26, 0x96, 0x67, 0xea, 0xdc, 0x60, 0x69, 0x6d, 0x56, 0xd8, 0x45, 0x0c, 0xed, 0x85, 0xa6, 0x5d, 0xe9, 0xd3, 0xcf, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7574 = { .name = "ecdsa_secp256r1_sha3_512_7574", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7574_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7574_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7574_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7575 for ECDSA, tcId is 322 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7575_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7575_msg[] = { 0x34, 0x37, 0x30, 0x38, 0x36, 0x38, 0x39, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7575_sig[] = { 0x91, 0xf3, 0xcc, 0xfb, 0x87, 0xb3, 0x66, 0x7b, 0xea, 0x8c, 0x6b, 0xb0, 0x7d, 0x55, 0x44, 0x67, 0xfb, 0xb9, 0xa7, 0x76, 0x85, 0xa6, 0x52, 0x3d, 0xa5, 0xcf, 0x97, 0xdf, 0xa7, 0x10, 0xe6, 0xb2, 0x55, 0x59, 0x93, 0x6f, 0x9c, 0x94, 0xc6, 0xe4, 0xa9, 0x7c, 0x9f, 0xeb, 0xbc, 0xb2, 0xc1, 0xa4, 0x18, 0xfb, 0xf9, 0xf2, 0x93, 0x3d, 0xd6, 0x4d, 0xef, 0x68, 0x6b, 0x37, 0x71, 0xdc, 0x3f, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7575 = { .name = "ecdsa_secp256r1_sha3_512_7575", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7575_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7575_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7575_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7576 for ECDSA, tcId is 323 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7576_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7576_msg[] = { 0x33, 0x30, 0x32, 0x39, 0x38, 0x37, 0x32, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7576_sig[] = { 0x0a, 0xfd, 0xcd, 0xcf, 0x68, 0x66, 0x9e, 0xcc, 0x53, 0xb0, 0x19, 0xd7, 0xad, 0xbe, 0x8d, 0xc9, 0x43, 0xf4, 0x53, 0xb7, 0x44, 0x51, 0x33, 0x5a, 0x63, 0x1a, 0x2a, 0x3d, 0xd5, 0x67, 0x2f, 0x83, 0x77, 0xea, 0x83, 0x34, 0x68, 0x95, 0x3e, 0x14, 0xbd, 0x42, 0x86, 0x63, 0xee, 0xbc, 0xe4, 0xb3, 0xcd, 0xef, 0x41, 0xe9, 0x82, 0x17, 0x04, 0xfb, 0x91, 0xd1, 0x51, 0x5d, 0x20, 0x07, 0x8e, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7576 = { .name = "ecdsa_secp256r1_sha3_512_7576", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7576_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7576_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7576_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7577 for ECDSA, tcId is 324 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7577_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7577_msg[] = { 0x33, 0x30, 0x31, 0x37, 0x31, 0x39, 0x30, 0x33, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7577_sig[] = { 0xa1, 0x97, 0xd8, 0xf8, 0xfa, 0x0c, 0xcc, 0xfa, 0x7e, 0xcc, 0xfa, 0xea, 0x7c, 0xa4, 0x44, 0x1b, 0xda, 0x97, 0x89, 0xcc, 0x3e, 0x8d, 0x22, 0xa1, 0xd1, 0xb1, 0x4d, 0x6d, 0xee, 0xb2, 0xdb, 0x21, 0x88, 0xfb, 0x12, 0x31, 0x8d, 0x60, 0xb6, 0x6b, 0x68, 0xfe, 0x80, 0x83, 0x41, 0x72, 0x81, 0x39, 0x89, 0xc2, 0x49, 0x01, 0xe3, 0xad, 0xbc, 0xd4, 0xc7, 0x38, 0x60, 0xfa, 0x95, 0x00, 0xbc, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7577 = { .name = "ecdsa_secp256r1_sha3_512_7577", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7577_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7577_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7577_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7578 for ECDSA, tcId is 325 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7578_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7578_msg[] = { 0x39, 0x35, 0x36, 0x33, 0x36, 0x33, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7578_sig[] = { 0x4b, 0x3e, 0xee, 0xaf, 0x50, 0xe9, 0xf9, 0xba, 0xe0, 0xbf, 0xe6, 0x4e, 0x27, 0x76, 0xbf, 0x2d, 0xb1, 0x81, 0xab, 0x44, 0xc7, 0x63, 0x39, 0x31, 0x36, 0x92, 0x78, 0x27, 0xf3, 0xad, 0xb2, 0x4e, 0x31, 0x7a, 0xbe, 0xc1, 0x31, 0xed, 0xdf, 0x21, 0x17, 0xe2, 0x7e, 0xa2, 0xbb, 0x40, 0x08, 0xe8, 0xfd, 0x0f, 0x4a, 0x32, 0xaa, 0x41, 0xf7, 0x4e, 0xec, 0x7b, 0x16, 0x59, 0xc0, 0x91, 0xfd, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7578 = { .name = "ecdsa_secp256r1_sha3_512_7578", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7578_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7578_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7578_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7579 for ECDSA, tcId is 326 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7579_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7579_msg[] = { 0x35, 0x33, 0x30, 0x30, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7579_sig[] = { 0x46, 0x4b, 0xdc, 0x2d, 0xb7, 0xc5, 0xa2, 0x74, 0x5a, 0x5d, 0x8c, 0x96, 0xa3, 0x23, 0xeb, 0x99, 0xc1, 0x75, 0xe0, 0xf9, 0x9b, 0xaa, 0x75, 0xdb, 0xb9, 0xc6, 0xd2, 0x9b, 0x98, 0xfa, 0xcf, 0x3b, 0xd9, 0x32, 0x8c, 0xa0, 0x0c, 0xe3, 0x29, 0x34, 0xb4, 0xed, 0x34, 0x0a, 0x6e, 0x15, 0x23, 0x6c, 0xb1, 0x6e, 0x53, 0x64, 0xcc, 0x91, 0xef, 0x5c, 0xd6, 0xf6, 0x75, 0xe0, 0x48, 0x98, 0x5b, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7579 = { .name = "ecdsa_secp256r1_sha3_512_7579", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7579_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7579_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7579_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7580 for ECDSA, tcId is 327 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7580_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7580_msg[] = { 0x31, 0x39, 0x33, 0x34, 0x36, 0x36, 0x34, 0x38, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7580_sig[] = { 0x27, 0x02, 0x50, 0xc5, 0x91, 0xcb, 0x20, 0xc7, 0x97, 0x8d, 0x9f, 0x45, 0x71, 0x04, 0xaf, 0xa7, 0xc3, 0x48, 0x48, 0x79, 0xcf, 0xdc, 0xf9, 0xdc, 0x6a, 0xc8, 0xe7, 0x85, 0xe1, 0xfd, 0x20, 0xa0, 0x09, 0x60, 0x1d, 0xc5, 0x97, 0xc1, 0x23, 0xed, 0x7e, 0x76, 0xbd, 0xbe, 0x2d, 0x14, 0x68, 0x63, 0xbd, 0xdc, 0xf3, 0x57, 0xf9, 0x21, 0x77, 0x13, 0xdf, 0xe1, 0xaf, 0xd8, 0xf4, 0x98, 0x91, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7580 = { .name = "ecdsa_secp256r1_sha3_512_7580", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7580_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7580_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7580_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7581 for ECDSA, tcId is 328 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7581_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7581_msg[] = { 0x33, 0x35, 0x35, 0x34, 0x35, 0x30, 0x35, 0x35, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7581_sig[] = { 0x72, 0x9a, 0x17, 0x31, 0x1a, 0x2f, 0xbf, 0x9f, 0x23, 0x25, 0x11, 0x7b, 0x2c, 0xda, 0xc1, 0x8f, 0xd6, 0xbb, 0xe3, 0xdb, 0x4c, 0x5a, 0x1b, 0xd4, 0xe4, 0xf4, 0xf3, 0xd8, 0xf3, 0xd6, 0x8d, 0xc7, 0x48, 0xdd, 0x02, 0x69, 0xcb, 0x21, 0x6e, 0x27, 0x92, 0xf3, 0xb4, 0x10, 0xa7, 0x81, 0xc9, 0xb1, 0x0e, 0x59, 0xab, 0xdc, 0x55, 0x3a, 0xae, 0x2a, 0x00, 0xd4, 0x03, 0x8f, 0x44, 0xa2, 0x84, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7581 = { .name = "ecdsa_secp256r1_sha3_512_7581", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7581_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7581_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7581_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7582 for ECDSA, tcId is 329 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7582_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7582_msg[] = { 0x31, 0x33, 0x30, 0x31, 0x37, 0x32, 0x32, 0x31, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7582_sig[] = { 0x52, 0x28, 0xf9, 0x7e, 0x5d, 0x0d, 0xfb, 0x62, 0xce, 0xc6, 0x82, 0x00, 0x29, 0x17, 0x58, 0x67, 0xd7, 0xd6, 0x3b, 0x17, 0x9d, 0xb3, 0xe8, 0xa9, 0xe7, 0xee, 0xcd, 0x1e, 0xc5, 0x5e, 0x0b, 0x90, 0xdc, 0x54, 0x7d, 0x7b, 0x7b, 0x68, 0x0b, 0x40, 0xbc, 0xbe, 0x0c, 0xbf, 0x9a, 0x2d, 0x74, 0x97, 0x87, 0x86, 0x41, 0x58, 0xaf, 0x3c, 0x0e, 0x0f, 0x8e, 0xf0, 0x8d, 0xfc, 0xbb, 0xb3, 0x6f, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7582 = { .name = "ecdsa_secp256r1_sha3_512_7582", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7582_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7582_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7582_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7583 for ECDSA, tcId is 330 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7583_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7583_msg[] = { 0x35, 0x36, 0x31, 0x37, 0x36, 0x39, 0x31, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7583_sig[] = { 0x21, 0xf7, 0x75, 0xd3, 0xc7, 0xf7, 0xfe, 0x68, 0xe8, 0x48, 0x42, 0xb3, 0x0d, 0xe9, 0xfb, 0xe4, 0xff, 0xbb, 0x4f, 0x33, 0x24, 0xb2, 0x95, 0x59, 0x1e, 0x36, 0xe4, 0x65, 0x1c, 0x14, 0x83, 0x0d, 0xaf, 0xa2, 0x4a, 0x4c, 0xd1, 0x63, 0x04, 0x2d, 0xa5, 0xf7, 0x67, 0xe7, 0x08, 0x8e, 0x6f, 0xa0, 0x3e, 0xfe, 0x03, 0x9a, 0x47, 0x7f, 0xc1, 0x3f, 0x6c, 0x23, 0x27, 0x0c, 0xda, 0x91, 0x51, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7583 = { .name = "ecdsa_secp256r1_sha3_512_7583", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7583_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7583_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7583_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7584 for ECDSA, tcId is 331 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7584_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7584_msg[] = { 0x33, 0x35, 0x38, 0x31, 0x39, 0x33, 0x32, 0x35, 0x33, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7584_sig[] = { 0xda, 0xbe, 0xc4, 0x2e, 0x9c, 0x44, 0xf0, 0xc2, 0x30, 0xd3, 0x6c, 0x45, 0x95, 0x6c, 0xd4, 0xa8, 0x25, 0x0f, 0x36, 0x65, 0xb6, 0xf2, 0x91, 0xf7, 0x00, 0xe7, 0x3d, 0x06, 0xfe, 0x20, 0x37, 0x44, 0x23, 0xb6, 0x87, 0xc2, 0x9e, 0x03, 0xbc, 0x69, 0xc5, 0x49, 0x17, 0x74, 0x58, 0x8e, 0x3c, 0x51, 0x9f, 0xa1, 0xea, 0xfa, 0xe2, 0xff, 0x8e, 0xde, 0x2f, 0xfd, 0x4a, 0x00, 0x4e, 0x23, 0x32, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7584 = { .name = "ecdsa_secp256r1_sha3_512_7584", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7584_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7584_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7584_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7585 for ECDSA, tcId is 332 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7585_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7585_msg[] = { 0x31, 0x35, 0x37, 0x31, 0x36, 0x36, 0x37, 0x38, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7585_sig[] = { 0x38, 0x14, 0x58, 0xd6, 0xc4, 0x0c, 0x88, 0x8b, 0xf9, 0x0a, 0xef, 0x14, 0x28, 0xbc, 0x96, 0x8c, 0xaa, 0xce, 0x55, 0x3f, 0x94, 0x28, 0x7e, 0x7a, 0xda, 0xa4, 0x89, 0x43, 0xdc, 0x55, 0x31, 0x5d, 0x1e, 0x0e, 0x1f, 0x75, 0x48, 0x9a, 0x45, 0x1f, 0xc7, 0xcc, 0x4b, 0xca, 0x61, 0xa0, 0xa7, 0x33, 0x0a, 0x5b, 0x4d, 0xc4, 0x28, 0x3d, 0xf6, 0x8e, 0x21, 0x79, 0x89, 0x96, 0xd8, 0xc6, 0x9b, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7585 = { .name = "ecdsa_secp256r1_sha3_512_7585", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7585_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7585_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7585_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7586 for ECDSA, tcId is 333 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7586_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7586_msg[] = { 0x33, 0x31, 0x39, 0x39, 0x37, 0x38, 0x33, 0x33, 0x36, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7586_sig[] = { 0xe0, 0x88, 0x81, 0xda, 0xcd, 0x7a, 0xd6, 0x44, 0x1f, 0x80, 0xbe, 0x1d, 0x55, 0x10, 0xb7, 0xe2, 0x9d, 0xa4, 0xc8, 0x50, 0x4d, 0x65, 0x86, 0x34, 0xf1, 0x3e, 0x5f, 0x3c, 0xfc, 0xf2, 0xa1, 0x6d, 0x37, 0x92, 0x54, 0x15, 0x48, 0xf0, 0xd8, 0x91, 0xdd, 0xf9, 0x5e, 0xe4, 0x0b, 0x81, 0x5f, 0xc3, 0xac, 0x16, 0x0c, 0xbf, 0xe8, 0xcd, 0x94, 0x8e, 0x07, 0x86, 0xdb, 0x7c, 0xc2, 0x0b, 0x38, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7586 = { .name = "ecdsa_secp256r1_sha3_512_7586", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7586_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7586_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7586_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7587 for ECDSA, tcId is 334 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7587_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7587_msg[] = { 0x37, 0x34, 0x30, 0x34, 0x37, 0x35, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7587_sig[] = { 0xa3, 0xef, 0xb0, 0xab, 0xc9, 0xd7, 0x6e, 0x66, 0x01, 0xcb, 0x23, 0xd2, 0x8b, 0x02, 0x76, 0x29, 0x3e, 0xb8, 0xd6, 0xf2, 0x10, 0x3d, 0x0d, 0xa7, 0xb0, 0x6a, 0x01, 0x69, 0xdb, 0x1e, 0xa6, 0xa4, 0xc6, 0x19, 0xab, 0x2b, 0xa2, 0x3b, 0x20, 0xf9, 0x0b, 0xc8, 0x15, 0xd2, 0xfd, 0x4c, 0x34, 0x5d, 0x03, 0x81, 0x47, 0x6b, 0x16, 0x45, 0x90, 0xcd, 0x93, 0x2b, 0x40, 0xb2, 0x26, 0x3e, 0x40, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7587 = { .name = "ecdsa_secp256r1_sha3_512_7587", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7587_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7587_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7587_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7588 for ECDSA, tcId is 335 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7588_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7588_msg[] = { 0x34, 0x31, 0x37, 0x34, 0x33, 0x36, 0x35, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7588_sig[] = { 0x61, 0x74, 0x6d, 0xf1, 0xd5, 0xf3, 0xd3, 0x04, 0x03, 0xf5, 0x28, 0x17, 0x67, 0xcb, 0x66, 0x01, 0x17, 0x2b, 0x26, 0x56, 0x4e, 0x97, 0xc3, 0x5d, 0x4c, 0x68, 0xfb, 0x74, 0x26, 0xdb, 0x4f, 0xfd, 0x7c, 0xa2, 0xb0, 0xa4, 0xfb, 0x0d, 0x58, 0xa1, 0x19, 0xa8, 0xdf, 0x39, 0x1a, 0xd3, 0xf2, 0xde, 0x47, 0xcb, 0x3b, 0x1a, 0x8f, 0xdf, 0x04, 0xd6, 0xec, 0x23, 0x5f, 0x63, 0x9f, 0xe4, 0x40, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7588 = { .name = "ecdsa_secp256r1_sha3_512_7588", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7588_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7588_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7588_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7589 for ECDSA, tcId is 336 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7589_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7589_msg[] = { 0x31, 0x32, 0x33, 0x35, 0x36, 0x35, 0x38, 0x38, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha3_512_7589_sig[] = { 0xce, 0x48, 0xfc, 0x4b, 0xed, 0xd4, 0xda, 0xba, 0xcc, 0x68, 0xf7, 0x1c, 0x4f, 0x5b, 0x58, 0x41, 0x4e, 0x9b, 0x05, 0x4b, 0x44, 0x5c, 0x47, 0x81, 0xcf, 0x6d, 0x9b, 0x40, 0xd3, 0x35, 0xb4, 0xb6, 0x1e, 0x73, 0xb8, 0x29, 0x95, 0x79, 0x68, 0x4b, 0x80, 0x80, 0x1d, 0x2f, 0xd7, 0x0d, 0x5c, 0x6f, 0x9a, 0x90, 0x4a, 0xb0, 0x73, 0x5b, 0x26, 0xd2, 0x7f, 0xf4, 0x40, 0x21, 0x00, 0x2c, 0x61, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7589 = { .name = "ecdsa_secp256r1_sha3_512_7589", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7589_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7589_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7589_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7590 for ECDSA, tcId is 337 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7590_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7590_msg[] = { 0x32, 0x34, 0x32, 0x39, 0x32, 0x35, 0x35, 0x34, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7590_sig[] = { 0x8c, 0x93, 0x6b, 0x04, 0x4c, 0xf6, 0xdb, 0xdb, 0xe3, 0x0c, 0xff, 0xde, 0xb9, 0xeb, 0x40, 0xb4, 0xaa, 0x48, 0xe6, 0x97, 0x97, 0x58, 0x05, 0xdd, 0x40, 0x45, 0x5e, 0x44, 0xfa, 0x4d, 0x6d, 0xfb, 0xf0, 0x3b, 0xd8, 0x2b, 0xc7, 0x3d, 0xc7, 0xa9, 0xd5, 0x18, 0x01, 0x2f, 0x9c, 0xab, 0x53, 0x60, 0xd6, 0xda, 0xa0, 0x6d, 0xd0, 0x14, 0x57, 0x65, 0xb5, 0x12, 0x26, 0x3b, 0x13, 0xc3, 0xd8, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7590 = { .name = "ecdsa_secp256r1_sha3_512_7590", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7590_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7590_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7590_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7591 for ECDSA, tcId is 338 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7591_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7591_msg[] = { 0x35, 0x31, 0x38, 0x30, 0x33, 0x30, 0x32, 0x35, 0x34, 0x36, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7591_sig[] = { 0x4b, 0xfa, 0xa8, 0xc7, 0x86, 0x36, 0xef, 0xe6, 0x39, 0x15, 0xda, 0xba, 0xae, 0xe9, 0x14, 0xde, 0xaa, 0xf4, 0xa0, 0x6a, 0xe4, 0x73, 0x67, 0x91, 0x60, 0xea, 0xec, 0xa8, 0x8d, 0x5c, 0xc1, 0x16, 0x8b, 0xc2, 0x45, 0x46, 0x61, 0x3e, 0x48, 0x11, 0xfa, 0xce, 0xcf, 0x60, 0x5d, 0x6b, 0x1f, 0x79, 0xb4, 0x42, 0xc3, 0xd8, 0xfe, 0x45, 0x8c, 0x1c, 0x69, 0x33, 0x4c, 0xbe, 0xe3, 0x1e, 0xf5, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7591 = { .name = "ecdsa_secp256r1_sha3_512_7591", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7591_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7591_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7591_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7592 for ECDSA, tcId is 339 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7592_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7592_msg[] = { 0x34, 0x34, 0x37, 0x36, 0x33, 0x39, 0x38, 0x32, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7592_sig[] = { 0x13, 0x0f, 0xc6, 0x64, 0xec, 0xce, 0xce, 0x7b, 0x71, 0xa0, 0xa9, 0xca, 0xdc, 0x53, 0x69, 0xfb, 0x5b, 0xd5, 0x4c, 0xcc, 0x53, 0xfd, 0x2c, 0x51, 0x5e, 0x5e, 0xf2, 0x32, 0xac, 0xd1, 0xb9, 0x65, 0x43, 0x72, 0xa6, 0x9e, 0xf3, 0x4e, 0xc2, 0xb2, 0x96, 0xdb, 0xe9, 0x4c, 0x5e, 0x8a, 0x88, 0x81, 0x64, 0x5b, 0x9c, 0x0f, 0x6b, 0x6c, 0x42, 0x70, 0xc1, 0x9b, 0x81, 0x49, 0x3e, 0xb5, 0x94, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7592 = { .name = "ecdsa_secp256r1_sha3_512_7592", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7592_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7592_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7592_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7593 for ECDSA, tcId is 340 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7593_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7593_msg[] = { 0x39, 0x30, 0x36, 0x30, 0x30, 0x33, 0x35, 0x32, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7593_sig[] = { 0x7b, 0x67, 0x5a, 0x89, 0xf3, 0x16, 0x5e, 0x2a, 0xd1, 0xf3, 0xac, 0x49, 0x50, 0x89, 0x8d, 0x17, 0xe7, 0xcd, 0x86, 0x9d, 0xf4, 0xef, 0x58, 0xaa, 0x54, 0x90, 0x1d, 0x51, 0x19, 0x3f, 0x91, 0xf3, 0x3a, 0x7e, 0xa0, 0x99, 0xd7, 0xc2, 0x90, 0x9f, 0xf4, 0xa5, 0xc3, 0xc2, 0x86, 0xd9, 0xf7, 0x73, 0x9f, 0x38, 0xb7, 0xe4, 0x46, 0x05, 0xea, 0x3f, 0x51, 0x5f, 0xde, 0x11, 0x7a, 0x45, 0x19, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7593 = { .name = "ecdsa_secp256r1_sha3_512_7593", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7593_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7593_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7593_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7594 for ECDSA, tcId is 341 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7594_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7594_msg[] = { 0x31, 0x37, 0x35, 0x36, 0x30, 0x35, 0x33, 0x30, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7594_sig[] = { 0x39, 0x3a, 0x05, 0x6a, 0x5c, 0xe7, 0x6d, 0xc1, 0x61, 0xda, 0xf1, 0xa6, 0xa7, 0x7a, 0xfb, 0x72, 0xca, 0xcb, 0x80, 0x9d, 0x41, 0x73, 0xb9, 0x12, 0x6e, 0x63, 0x6a, 0x01, 0xcf, 0x7c, 0xce, 0xa1, 0x08, 0x59, 0xe4, 0x19, 0x51, 0x24, 0xe1, 0x1e, 0x40, 0xdb, 0x39, 0x1a, 0x7b, 0xf0, 0x4f, 0x3e, 0xcd, 0x7d, 0xff, 0xe2, 0xa5, 0x62, 0x9a, 0xac, 0x93, 0x74, 0x46, 0x8f, 0xe8, 0xf1, 0x70, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7594 = { .name = "ecdsa_secp256r1_sha3_512_7594", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7594_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7594_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7594_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7595 for ECDSA, tcId is 342 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7595_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7595_msg[] = { 0x34, 0x39, 0x38, 0x30, 0x38, 0x36, 0x30, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha3_512_7595_sig[] = { 0x2d, 0x97, 0x38, 0xa6, 0xe3, 0x6c, 0x24, 0xa5, 0xdc, 0xde, 0x61, 0xff, 0x7f, 0xa5, 0xec, 0xb1, 0xe9, 0x6e, 0x00, 0x77, 0xa4, 0xa1, 0x83, 0xe8, 0x95, 0x37, 0x45, 0xcb, 0x94, 0x61, 0xe5, 0xfa, 0x55, 0xab, 0xb2, 0x7f, 0xad, 0x17, 0x9d, 0x13, 0x28, 0x30, 0xf7, 0xe5, 0xdf, 0xf0, 0xd2, 0x6a, 0x63, 0xf0, 0x14, 0x1f, 0xe2, 0x28, 0x8b, 0x9f, 0xf7, 0x94, 0x3c, 0x3a, 0x48, 0x2a, 0xc1, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7595 = { .name = "ecdsa_secp256r1_sha3_512_7595", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7595_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7595_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7595_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7596 for ECDSA, tcId is 343 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7596_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7596_msg[] = { 0x33, 0x36, 0x32, 0x31, 0x38, 0x37, 0x35, 0x33, 0x33, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7596_sig[] = { 0x46, 0x0f, 0x52, 0x8b, 0xb6, 0xf8, 0xad, 0xb5, 0x56, 0x26, 0xc5, 0x16, 0x6c, 0x45, 0x72, 0xa9, 0x3c, 0x38, 0x25, 0xdd, 0x1a, 0x69, 0x58, 0x22, 0xa8, 0x1c, 0x9e, 0x75, 0xe3, 0x7f, 0xe8, 0xfd, 0x01, 0x97, 0xc8, 0xb8, 0x31, 0x93, 0x11, 0x0f, 0x04, 0x26, 0xa4, 0x17, 0xfa, 0xe7, 0xec, 0x3b, 0x99, 0xfc, 0x66, 0x93, 0x71, 0xf1, 0xe7, 0xde, 0xbb, 0xbd, 0x38, 0x50, 0xf6, 0x95, 0x6c, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7596 = { .name = "ecdsa_secp256r1_sha3_512_7596", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7596_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7596_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7596_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7597 for ECDSA, tcId is 344 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7597_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7597_msg[] = { 0x36, 0x36, 0x34, 0x33, 0x33, 0x33, 0x34, 0x37, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7597_sig[] = { 0x2d, 0x13, 0x93, 0x94, 0x55, 0x19, 0x2c, 0x22, 0xb1, 0xf1, 0x8f, 0x7c, 0xa8, 0x2a, 0xd4, 0x26, 0x5e, 0xc2, 0xc4, 0xdb, 0xd1, 0x24, 0xae, 0x4a, 0x2b, 0x00, 0x17, 0x98, 0x45, 0x12, 0xc9, 0xe9, 0x3d, 0x9e, 0x4f, 0xac, 0x78, 0x4b, 0xe6, 0x1e, 0x2d, 0xec, 0xb7, 0x5a, 0x1f, 0x67, 0x68, 0xaf, 0x21, 0x87, 0x3e, 0xb4, 0x98, 0x81, 0x84, 0x9b, 0x93, 0x60, 0x36, 0xb1, 0x91, 0x87, 0xa7, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7597 = { .name = "ecdsa_secp256r1_sha3_512_7597", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7597_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7597_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7597_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7598 for ECDSA, tcId is 345 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7598_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7598_msg[] = { 0x34, 0x34, 0x35, 0x34, 0x39, 0x34, 0x32, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7598_sig[] = { 0x8f, 0x25, 0x23, 0xbb, 0xd4, 0xa2, 0xf4, 0xd1, 0x44, 0xc0, 0xb7, 0xf7, 0xb5, 0xda, 0x84, 0xce, 0x20, 0xd0, 0xd4, 0xf5, 0x51, 0xcf, 0x5e, 0x0a, 0xd2, 0xb0, 0xcb, 0x06, 0xc6, 0xa2, 0x07, 0xf0, 0x05, 0xe4, 0x6a, 0x85, 0xf6, 0x1e, 0x16, 0x76, 0xde, 0xf5, 0x9d, 0x81, 0x92, 0x20, 0xed, 0xcd, 0xf4, 0x21, 0xdb, 0x36, 0xef, 0xbe, 0x00, 0xbd, 0xa7, 0xf9, 0xe3, 0x31, 0xd5, 0x6e, 0x8c, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7598 = { .name = "ecdsa_secp256r1_sha3_512_7598", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7598_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7598_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7598_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7599 for ECDSA, tcId is 346 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7599_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7599_msg[] = { 0x32, 0x30, 0x31, 0x38, 0x34, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7599_sig[] = { 0x4f, 0x60, 0x87, 0x8b, 0xeb, 0x27, 0x55, 0xb3, 0x5f, 0x71, 0x52, 0xa3, 0x3e, 0x41, 0x6e, 0x16, 0xe1, 0x0f, 0x77, 0xbc, 0xa2, 0xad, 0x70, 0xb0, 0x9c, 0x86, 0xef, 0xf1, 0x48, 0xca, 0x6f, 0xb3, 0xbc, 0xbc, 0x6f, 0xa1, 0x8d, 0x8c, 0xa5, 0x70, 0xb4, 0xa9, 0xa5, 0xf2, 0xa8, 0xf6, 0xff, 0x9d, 0xb3, 0xe3, 0x37, 0x0f, 0xfd, 0x3e, 0x5a, 0x7e, 0x19, 0x88, 0x09, 0x90, 0xf6, 0xf8, 0xe6, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7599 = { .name = "ecdsa_secp256r1_sha3_512_7599", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7599_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7599_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha3_512_7599_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7600 for ECDSA, tcId is 347 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7600_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7600_msg[] = { 0x35, 0x38, 0x31, 0x33, 0x32, 0x31, 0x37, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7600_sig[] = { 0x9b, 0x14, 0x8c, 0x63, 0x58, 0x8e, 0xe8, 0xf2, 0x24, 0x36, 0xa6, 0x1d, 0x52, 0xae, 0x8a, 0x60, 0xc3, 0xf3, 0x50, 0x07, 0xdd, 0xe8, 0xbb, 0x6e, 0x31, 0x99, 0x7d, 0x99, 0x20, 0x59, 0x73, 0xb3, 0x20, 0x15, 0x54, 0x85, 0x63, 0x16, 0x8f, 0x49, 0x6c, 0x7b, 0x11, 0x5b, 0xff, 0x54, 0x1f, 0xd7, 0x1f, 0xc9, 0x26, 0x44, 0x8a, 0x45, 0x54, 0xa1, 0x5f, 0x97, 0xc5, 0x8f, 0xdd, 0x03, 0x90, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7600 = { .name = "ecdsa_secp256r1_sha3_512_7600", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7600_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7600_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha3_512_7600_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7601 for ECDSA, tcId is 348 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7601_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7601_msg[] = { 0x31, 0x31, 0x38, 0x33, 0x38, 0x36, 0x31, 0x38, 0x31, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7601_sig[] = { 0x2b, 0x7d, 0x76, 0x9e, 0xa6, 0x82, 0xaf, 0x0b, 0xe4, 0x28, 0x66, 0xcf, 0x3a, 0xd8, 0x86, 0x5b, 0x12, 0xd4, 0xb3, 0x7c, 0x37, 0x08, 0xfb, 0x2a, 0xd0, 0xdc, 0x5c, 0x87, 0xed, 0xa1, 0x01, 0x54, 0x11, 0xd8, 0xc4, 0x8b, 0xa6, 0xc4, 0x00, 0xf7, 0x95, 0x0f, 0x9d, 0xfd, 0x9e, 0xa6, 0x56, 0x17, 0xb3, 0x76, 0x5d, 0xb0, 0xe7, 0x97, 0x78, 0xbb, 0x07, 0x9f, 0xbd, 0x7d, 0xb6, 0x7b, 0x68, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7601 = { .name = "ecdsa_secp256r1_sha3_512_7601", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7601_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7601_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7601_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7602 for ECDSA, tcId is 349 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7602_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7602_msg[] = { 0x31, 0x39, 0x32, 0x32, 0x36, 0x30, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7602_sig[] = { 0xbf, 0xd3, 0xac, 0x43, 0x6e, 0x5c, 0x4d, 0x42, 0xf1, 0x5f, 0xbc, 0xe0, 0x6d, 0x98, 0x59, 0xad, 0x82, 0xd4, 0x60, 0xd3, 0x22, 0xa8, 0xc4, 0xc1, 0xd0, 0x6e, 0xc3, 0x18, 0xfd, 0xff, 0x4f, 0x51, 0x33, 0x5b, 0xd5, 0xd0, 0x61, 0x9a, 0x52, 0x90, 0xc7, 0xfc, 0xe4, 0x2a, 0xaa, 0x97, 0xcc, 0xd5, 0x2d, 0x80, 0x52, 0x8a, 0x09, 0xa6, 0x2a, 0x4c, 0xe8, 0xd1, 0xe7, 0xcf, 0x00, 0xdb, 0x7a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7602 = { .name = "ecdsa_secp256r1_sha3_512_7602", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7602_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7602_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7602_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7603 for ECDSA, tcId is 350 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7603_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7603_msg[] = { 0x39, 0x37, 0x35, 0x31, 0x34, 0x33, 0x32, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha3_512_7603_sig[] = { 0x56, 0xa5, 0xc2, 0xc2, 0xe8, 0x03, 0xe6, 0x6c, 0x57, 0x51, 0xfe, 0x8f, 0xb3, 0x48, 0x82, 0x26, 0x09, 0xb1, 0x67, 0x47, 0x8c, 0xad, 0x40, 0x30, 0xe7, 0xbf, 0x61, 0x20, 0xfd, 0x53, 0x5b, 0xb0, 0x7b, 0x3f, 0xee, 0x66, 0x76, 0x87, 0x94, 0xc0, 0xb3, 0x62, 0xf2, 0xd4, 0x0a, 0xd6, 0x4f, 0xdf, 0x03, 0xe0, 0xfb, 0x0e, 0x8a, 0x47, 0xf2, 0x03, 0x41, 0x67, 0xaa, 0xe2, 0xca, 0x38, 0x3c, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7603 = { .name = "ecdsa_secp256r1_sha3_512_7603", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7603_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7603_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7603_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7604 for ECDSA, tcId is 351 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7604_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7604_msg[] = { 0x38, 0x33, 0x31, 0x35, 0x31, 0x31, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7604_sig[] = { 0x71, 0xbc, 0x39, 0x9e, 0x56, 0x43, 0xa1, 0xd8, 0xe2, 0xaf, 0xc3, 0x17, 0xe7, 0x8a, 0x2c, 0x43, 0xd7, 0x6b, 0x6d, 0x87, 0xf1, 0x7a, 0x58, 0x09, 0xa7, 0xb6, 0xd1, 0x9f, 0x92, 0x2c, 0x2e, 0x62, 0x05, 0x7e, 0x76, 0x15, 0xa2, 0xc9, 0x03, 0x3e, 0xf0, 0xd1, 0xa3, 0xd3, 0x02, 0x09, 0x77, 0x00, 0x23, 0x95, 0xe1, 0x96, 0xd3, 0xb8, 0x20, 0x6c, 0x9a, 0xfe, 0xcf, 0xb9, 0x8a, 0xbd, 0x52, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7604 = { .name = "ecdsa_secp256r1_sha3_512_7604", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7604_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7604_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7604_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7605 for ECDSA, tcId is 352 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7605_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7605_msg[] = { 0x33, 0x32, 0x36, 0x33, 0x31, 0x36, 0x38, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha3_512_7605_sig[] = { 0x8f, 0x94, 0xbc, 0xda, 0x03, 0x6e, 0x64, 0x78, 0x39, 0x35, 0x45, 0x62, 0x89, 0xae, 0xdc, 0xb6, 0x72, 0x32, 0x93, 0x2d, 0xb1, 0xac, 0x2e, 0x8a, 0xd1, 0xca, 0x97, 0x0b, 0x14, 0xd4, 0x7a, 0x1a, 0x21, 0xa7, 0x15, 0x28, 0xf9, 0xe8, 0xfe, 0x60, 0x67, 0xca, 0x74, 0xcc, 0x0d, 0x8b, 0x4b, 0x48, 0x27, 0x0a, 0xad, 0x9a, 0xde, 0x9d, 0xb4, 0x4a, 0x98, 0xc9, 0x81, 0x82, 0xa5, 0xe8, 0xf2, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7605 = { .name = "ecdsa_secp256r1_sha3_512_7605", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7605_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7605_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha3_512_7605_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7606 for ECDSA, tcId is 353 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7606_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7606_msg[] = { 0x34, 0x30, 0x32, 0x39, 0x36, 0x38, 0x37, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha3_512_7606_sig[] = { 0x27, 0x7a, 0x0c, 0x4f, 0x34, 0xb2, 0x74, 0x9f, 0xd5, 0x8f, 0x55, 0xa0, 0xf3, 0x73, 0x43, 0x0f, 0x3c, 0x86, 0x8b, 0xb1, 0xf4, 0x85, 0xd4, 0x77, 0x10, 0x2b, 0x3e, 0x79, 0x7c, 0xea, 0x55, 0x60, 0xbc, 0xcb, 0xec, 0x7d, 0xc1, 0xe2, 0x74, 0x07, 0x51, 0xb7, 0xcb, 0x89, 0x68, 0xe7, 0xd3, 0x88, 0xe1, 0x36, 0xd7, 0x64, 0x7a, 0x29, 0xc6, 0x84, 0x5b, 0xcf, 0x37, 0x59, 0xf4, 0x4b, 0xf3, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7606 = { .name = "ecdsa_secp256r1_sha3_512_7606", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7606_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7606_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7606_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7607 for ECDSA, tcId is 354 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7607_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7607_msg[] = { 0x36, 0x33, 0x32, 0x30, 0x38, 0x38, 0x31, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7607_sig[] = { 0x93, 0x47, 0x62, 0x96, 0x7e, 0xfc, 0x8c, 0x97, 0x65, 0x5c, 0xb7, 0x3d, 0x71, 0x68, 0xd1, 0xab, 0xb5, 0x88, 0x9e, 0x55, 0x24, 0x3d, 0xc6, 0x7c, 0x1c, 0x55, 0x17, 0xd6, 0x29, 0x8c, 0xe2, 0xc3, 0x44, 0xc3, 0x2f, 0xb9, 0xd2, 0xb5, 0xe6, 0xf9, 0xc3, 0x82, 0x26, 0x53, 0x87, 0x76, 0x53, 0x8a, 0x55, 0xeb, 0x1b, 0xdf, 0xba, 0xc4, 0x4e, 0x3e, 0x12, 0x29, 0x33, 0x74, 0x15, 0x64, 0x5d, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7607 = { .name = "ecdsa_secp256r1_sha3_512_7607", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7607_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7607_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7607_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7608 for ECDSA, tcId is 355 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7608_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7608_msg[] = { 0x35, 0x32, 0x32, 0x35, 0x33, 0x39, 0x30, 0x37, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7608_sig[] = { 0x8f, 0x05, 0x28, 0x02, 0x12, 0x6f, 0x22, 0x2b, 0xa3, 0xad, 0xe9, 0xcf, 0xed, 0xf5, 0x9f, 0xc4, 0x79, 0xa1, 0x20, 0xed, 0x8e, 0x59, 0x36, 0x6b, 0x1b, 0xe4, 0xf3, 0x03, 0x94, 0x80, 0x00, 0x4e, 0x3e, 0x14, 0xe9, 0x20, 0x9b, 0xe9, 0xdc, 0x6d, 0x00, 0xed, 0x76, 0xcd, 0xdc, 0xa1, 0xc2, 0xe5, 0xb8, 0x5f, 0x11, 0x2b, 0xff, 0xd2, 0x77, 0x9f, 0x45, 0xf2, 0x46, 0xcb, 0x60, 0xc3, 0x19, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7608 = { .name = "ecdsa_secp256r1_sha3_512_7608", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7608_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7608_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7608_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 355 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7609 for ECDSA, tcId is 356 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7609_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7609_msg[] = { 0x31, 0x33, 0x34, 0x39, 0x33, 0x39, 0x33, 0x36, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7609_sig[] = { 0x44, 0x56, 0xd6, 0x79, 0x2f, 0xf7, 0xe4, 0xd2, 0x75, 0x17, 0x11, 0x3f, 0x30, 0x91, 0x77, 0xc2, 0x6e, 0xf3, 0xbf, 0x64, 0x82, 0xe1, 0x31, 0xd4, 0x3f, 0x9d, 0x8b, 0x80, 0xe9, 0x54, 0xd6, 0x1e, 0x4f, 0xfb, 0xcc, 0x50, 0xa7, 0xa6, 0x9d, 0xfc, 0xe9, 0x2a, 0x47, 0x41, 0x0f, 0x85, 0x74, 0xf7, 0xb0, 0xab, 0xfc, 0x8b, 0x4c, 0x7f, 0x74, 0xac, 0x0d, 0xc1, 0xc1, 0x18, 0x3d, 0x39, 0x34, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7609 = { .name = "ecdsa_secp256r1_sha3_512_7609", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7609_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7609_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha3_512_7609_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 356 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7610 for ECDSA, tcId is 357 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7610_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7610_msg[] = { 0x31, 0x30, 0x33, 0x39, 0x37, 0x39, 0x36, 0x30, 0x37, 0x36, 0x31, }; static const unsigned char ecdsa_secp256r1_sha3_512_7610_sig[] = { 0xc0, 0xe2, 0x7a, 0x8a, 0xd3, 0x06, 0xf4, 0xed, 0x4d, 0xd7, 0x7e, 0xdc, 0xef, 0xb6, 0x1a, 0x6d, 0x8f, 0x1a, 0x9f, 0x65, 0x46, 0xa9, 0x96, 0x9e, 0x79, 0x44, 0x32, 0xfc, 0xb5, 0x76, 0xcd, 0x49, 0x67, 0xfd, 0xca, 0xb3, 0x39, 0x5e, 0xeb, 0xe5, 0x3d, 0xd0, 0x3b, 0x9c, 0xad, 0xd3, 0xeb, 0x62, 0xd8, 0x43, 0x27, 0xde, 0x15, 0x49, 0x8b, 0x60, 0xa6, 0x0b, 0x02, 0x3f, 0xea, 0x99, 0x04, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7610 = { .name = "ecdsa_secp256r1_sha3_512_7610", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7610_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7610_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha3_512_7610_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 357 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7611 for ECDSA, tcId is 358 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7611_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7611_sig[] = { 0x50, 0x4d, 0x07, 0x0e, 0x4c, 0xf2, 0x59, 0x6e, 0x56, 0x0c, 0x1a, 0xad, 0xc6, 0x3c, 0x57, 0x3c, 0xee, 0x0b, 0xf8, 0xc4, 0xd1, 0x28, 0x29, 0x2c, 0x23, 0xb4, 0x7a, 0x29, 0x4c, 0x60, 0x77, 0x03, 0xf1, 0x81, 0x21, 0x3b, 0x28, 0xb9, 0x21, 0xaf, 0x29, 0x2e, 0xa2, 0xfb, 0xcb, 0x8a, 0xf4, 0xa0, 0xe1, 0x4e, 0x2c, 0x5a, 0xa6, 0x03, 0xc4, 0x5d, 0xab, 0x7a, 0x46, 0xf0, 0x5b, 0xbd, 0x5d, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7611 = { .name = "ecdsa_secp256r1_sha3_512_7611", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7611_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7611_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7611_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 358 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7612 for ECDSA, tcId is 359 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7612_pubkey[] = { 0x0f, 0xbf, 0x9d, 0x13, 0x1f, 0xf8, 0xa0, 0x37, 0x74, 0x7a, 0xc2, 0x32, 0x46, 0xc5, 0xb0, 0xe0, 0xce, 0x09, 0xa9, 0x05, 0x43, 0x2d, 0x3d, 0x75, 0x47, 0x7a, 0xf2, 0xd2, 0x99, 0x3b, 0x1e, 0x0a, 0x4b, 0x14, 0xe9, 0x3d, 0x45, 0x74, 0xfc, 0x2a, 0x55, 0x3f, 0x85, 0xeb, 0x3c, 0x4c, 0x06, 0x58, 0xa1, 0xbd, 0x7e, 0x1c, 0xc7, 0xf0, 0x8d, 0x47, 0x39, 0x6e, 0x76, 0xd6, 0xd4, 0x0e, 0xd7, 0x72, }; static const unsigned char ecdsa_secp256r1_sha3_512_7612_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7612_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7612 = { .name = "ecdsa_secp256r1_sha3_512_7612", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7612_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7612_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7612_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 359 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7613 for ECDSA, tcId is 360 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7613_pubkey[] = { 0x0f, 0xbf, 0x9d, 0x13, 0x1f, 0xf8, 0xa0, 0x37, 0x74, 0x7a, 0xc2, 0x32, 0x46, 0xc5, 0xb0, 0xe0, 0xce, 0x09, 0xa9, 0x05, 0x43, 0x2d, 0x3d, 0x75, 0x47, 0x7a, 0xf2, 0xd2, 0x99, 0x3b, 0x1e, 0x0a, 0x4b, 0x14, 0xe9, 0x3d, 0x45, 0x74, 0xfc, 0x2a, 0x55, 0x3f, 0x85, 0xeb, 0x3c, 0x4c, 0x06, 0x58, 0xa1, 0xbd, 0x7e, 0x1c, 0xc7, 0xf0, 0x8d, 0x47, 0x39, 0x6e, 0x76, 0xd6, 0xd4, 0x0e, 0xd7, 0x72, }; static const unsigned char ecdsa_secp256r1_sha3_512_7613_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7613_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7613 = { .name = "ecdsa_secp256r1_sha3_512_7613", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7613_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7613_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7613_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 360 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7614 for ECDSA, tcId is 361 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7614_pubkey[] = { 0x92, 0x09, 0x45, 0x52, 0x2a, 0x36, 0x49, 0x75, 0xff, 0xc2, 0x7b, 0xdd, 0xdd, 0x7f, 0x01, 0xec, 0x26, 0xef, 0x8a, 0xc4, 0x8d, 0x46, 0x6a, 0x81, 0xfb, 0xb1, 0xd0, 0x2f, 0xc8, 0x91, 0x33, 0xe9, 0xce, 0x7d, 0x01, 0x19, 0x0e, 0x81, 0x5d, 0xaf, 0x1d, 0x18, 0xe5, 0x93, 0x2e, 0xc8, 0xa3, 0xd8, 0x3a, 0xf5, 0x9c, 0x7f, 0x66, 0x73, 0x8b, 0x65, 0x21, 0xa9, 0x85, 0x0d, 0x79, 0x4a, 0x4b, 0xa3, }; static const unsigned char ecdsa_secp256r1_sha3_512_7614_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7614_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7614 = { .name = "ecdsa_secp256r1_sha3_512_7614", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7614_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7614_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7614_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 361 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7615 for ECDSA, tcId is 362 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7615_pubkey[] = { 0xe0, 0xce, 0x6d, 0x55, 0xda, 0xe2, 0x57, 0xd1, 0x0a, 0x06, 0xbe, 0x4f, 0xb7, 0x33, 0x3e, 0x68, 0x47, 0x54, 0x07, 0xa4, 0x01, 0xde, 0x84, 0xff, 0x86, 0xa9, 0x31, 0xac, 0x02, 0x2a, 0x45, 0x13, 0x80, 0x2c, 0xa5, 0x6c, 0x9a, 0x1d, 0x2f, 0x67, 0xe8, 0xa4, 0x57, 0x03, 0xb1, 0x74, 0xf0, 0x56, 0x2d, 0xfb, 0x7e, 0x6a, 0x53, 0x2e, 0xb1, 0x74, 0x3b, 0x3c, 0xeb, 0x49, 0xf9, 0xbe, 0xa4, 0x20, }; static const unsigned char ecdsa_secp256r1_sha3_512_7615_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7615_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7615 = { .name = "ecdsa_secp256r1_sha3_512_7615", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7615_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7615_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7615_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 362 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7616 for ECDSA, tcId is 363 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7616_pubkey[] = { 0x0c, 0x5b, 0xae, 0xfb, 0x69, 0x76, 0x4c, 0x3a, 0x55, 0xe9, 0xd3, 0xef, 0x10, 0xa7, 0x6f, 0x65, 0x2f, 0xfa, 0x69, 0x77, 0x94, 0xab, 0x91, 0x16, 0x98, 0x78, 0x11, 0x6d, 0x05, 0x84, 0x20, 0xe3, 0xcc, 0xd7, 0xb9, 0x15, 0x36, 0x94, 0x15, 0x1e, 0xe2, 0xd0, 0x50, 0x48, 0xe4, 0x0f, 0xe0, 0x72, 0xd8, 0xe0, 0xf4, 0x81, 0xaf, 0x5d, 0x3d, 0x0a, 0x9e, 0x8c, 0xf3, 0x9e, 0x1e, 0xf7, 0xe0, 0xbb, }; static const unsigned char ecdsa_secp256r1_sha3_512_7616_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7616_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7616 = { .name = "ecdsa_secp256r1_sha3_512_7616", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7616_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7616_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7616_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 363 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7617 for ECDSA, tcId is 364 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7617_pubkey[] = { 0x1a, 0x4c, 0xb3, 0x9a, 0x67, 0x4b, 0xf0, 0xbe, 0xc4, 0xbe, 0x1a, 0x5b, 0x03, 0x5a, 0xe1, 0x86, 0x34, 0xf4, 0xb6, 0x81, 0xa3, 0x30, 0xc1, 0xf9, 0x1b, 0x42, 0x36, 0x6a, 0x0a, 0x7c, 0x75, 0x32, 0x0b, 0x3f, 0x80, 0x18, 0xda, 0x54, 0xa8, 0xd0, 0xdb, 0x30, 0xf7, 0xc2, 0xb3, 0xf0, 0x4d, 0xc0, 0x11, 0xa4, 0xa1, 0xc3, 0x83, 0x22, 0x1e, 0x52, 0x18, 0x76, 0x32, 0xa5, 0x65, 0xe5, 0x79, 0x5c, }; static const unsigned char ecdsa_secp256r1_sha3_512_7617_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7617_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7617 = { .name = "ecdsa_secp256r1_sha3_512_7617", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7617_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7617_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7617_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 364 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7618 for ECDSA, tcId is 365 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7618_pubkey[] = { 0x1c, 0xd7, 0x20, 0x95, 0xfd, 0x85, 0x6c, 0xf2, 0x9f, 0xaf, 0xb8, 0x1c, 0x25, 0xf7, 0xff, 0x24, 0xde, 0xe3, 0x4e, 0xea, 0xea, 0xcc, 0x00, 0x25, 0xd5, 0x12, 0x09, 0x1b, 0x1f, 0x1e, 0x82, 0x2b, 0x42, 0x7e, 0xb3, 0xbb, 0xb9, 0x15, 0x20, 0x9e, 0x06, 0x4b, 0xfb, 0xe1, 0xa1, 0x79, 0x8f, 0xf6, 0xda, 0xc8, 0xd0, 0xad, 0xd6, 0xd7, 0x53, 0xbf, 0xf4, 0xf1, 0x28, 0xfe, 0xe7, 0xe0, 0x0f, 0x89, }; static const unsigned char ecdsa_secp256r1_sha3_512_7618_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7618_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7618 = { .name = "ecdsa_secp256r1_sha3_512_7618", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7618_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7618_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7618_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 365 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7619 for ECDSA, tcId is 366 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7619_pubkey[] = { 0x69, 0x7c, 0xd5, 0x85, 0x6c, 0x8c, 0x34, 0x7f, 0xdf, 0xbc, 0xa4, 0xc2, 0xcb, 0x2f, 0xc1, 0xbe, 0x12, 0xf1, 0x61, 0x1f, 0x19, 0x03, 0x33, 0xb8, 0x0a, 0x5c, 0xf4, 0xe0, 0xf7, 0xd4, 0x8d, 0xab, 0x5d, 0x08, 0x74, 0x09, 0x36, 0xbb, 0xc4, 0x6c, 0x90, 0xb1, 0xda, 0x91, 0x6d, 0x5e, 0xf3, 0x9c, 0x3d, 0x9f, 0xb9, 0x09, 0x2f, 0x57, 0x9a, 0x43, 0xd9, 0x11, 0x47, 0x20, 0x22, 0xa7, 0xfa, 0x90, }; static const unsigned char ecdsa_secp256r1_sha3_512_7619_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7619_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7619 = { .name = "ecdsa_secp256r1_sha3_512_7619", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7619_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7619_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7619_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 366 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7620 for ECDSA, tcId is 367 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7620_pubkey[] = { 0x69, 0xd3, 0x1f, 0xf5, 0x2d, 0xbc, 0x09, 0x35, 0x50, 0x87, 0x55, 0xcd, 0x48, 0xcf, 0x3f, 0x30, 0xf0, 0xea, 0x78, 0xfb, 0x67, 0x00, 0x48, 0x98, 0x3b, 0xe0, 0xeb, 0xac, 0xf4, 0xde, 0x10, 0x76, 0x77, 0x3c, 0x9d, 0xce, 0x9a, 0xa2, 0x4b, 0x78, 0x3d, 0x86, 0x88, 0xd6, 0x35, 0x47, 0xdc, 0x98, 0x7d, 0x46, 0x50, 0xf2, 0x0c, 0x11, 0x79, 0xe6, 0xae, 0x5d, 0x4f, 0x14, 0xf6, 0xd5, 0x5c, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha3_512_7620_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7620_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7620 = { .name = "ecdsa_secp256r1_sha3_512_7620", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7620_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7620_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7620_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 367 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7621 for ECDSA, tcId is 368 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7621_pubkey[] = { 0x69, 0xd3, 0x1f, 0xf5, 0x2d, 0xbc, 0x09, 0x35, 0x50, 0x87, 0x55, 0xcd, 0x48, 0xcf, 0x3f, 0x30, 0xf0, 0xea, 0x78, 0xfb, 0x67, 0x00, 0x48, 0x98, 0x3b, 0xe0, 0xeb, 0xac, 0xf4, 0xde, 0x10, 0x76, 0x77, 0x3c, 0x9d, 0xce, 0x9a, 0xa2, 0x4b, 0x78, 0x3d, 0x86, 0x88, 0xd6, 0x35, 0x47, 0xdc, 0x98, 0x7d, 0x46, 0x50, 0xf2, 0x0c, 0x11, 0x79, 0xe6, 0xae, 0x5d, 0x4f, 0x14, 0xf6, 0xd5, 0x5c, 0xc1, }; static const unsigned char ecdsa_secp256r1_sha3_512_7621_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7621_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7621 = { .name = "ecdsa_secp256r1_sha3_512_7621", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7621_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7621_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7621_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 368 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7622 for ECDSA, tcId is 369 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7622_pubkey[] = { 0x22, 0x55, 0x4b, 0x95, 0xfc, 0xd1, 0x8c, 0xb7, 0xcd, 0xf7, 0xdb, 0x4a, 0x57, 0xb2, 0x59, 0xf3, 0xd4, 0x0f, 0x5c, 0x7c, 0xd5, 0xcc, 0x90, 0x7a, 0x1d, 0x08, 0x61, 0xb3, 0xb8, 0x35, 0xfb, 0x2f, 0x63, 0xb9, 0x29, 0x93, 0x89, 0x3f, 0x14, 0xbf, 0x17, 0xfb, 0x9b, 0xde, 0xfb, 0xcb, 0xb9, 0x40, 0x4c, 0x19, 0x85, 0xe7, 0xa1, 0x96, 0x99, 0xd0, 0x48, 0x48, 0x37, 0x02, 0xf7, 0xe2, 0x55, 0x47, }; static const unsigned char ecdsa_secp256r1_sha3_512_7622_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7622_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7622 = { .name = "ecdsa_secp256r1_sha3_512_7622", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7622_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7622_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7622_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 369 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7623 for ECDSA, tcId is 370 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7623_pubkey[] = { 0x2f, 0x5c, 0x46, 0x4f, 0x48, 0x42, 0x3a, 0x87, 0x80, 0x6e, 0x88, 0xe2, 0xe6, 0xb4, 0xe6, 0xf9, 0x47, 0xee, 0xa1, 0xa5, 0xf2, 0xc0, 0x71, 0x78, 0x97, 0x40, 0x6d, 0x97, 0xdd, 0x3c, 0x28, 0x65, 0x61, 0xb6, 0x2e, 0x96, 0x9a, 0xbf, 0x04, 0xb8, 0x40, 0xbe, 0x95, 0x87, 0xa2, 0xa1, 0x6c, 0x0a, 0x83, 0xff, 0x3b, 0xf6, 0x81, 0x2b, 0x72, 0x57, 0xc1, 0x06, 0xa2, 0x6b, 0xe2, 0xe7, 0x1d, 0x25, }; static const unsigned char ecdsa_secp256r1_sha3_512_7623_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7623_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7623 = { .name = "ecdsa_secp256r1_sha3_512_7623", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7623_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7623_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7623_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 370 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7624 for ECDSA, tcId is 371 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7624_pubkey[] = { 0x27, 0x52, 0x7d, 0x9b, 0xa3, 0x51, 0xf6, 0x92, 0x85, 0xcb, 0xd9, 0xba, 0x14, 0x4b, 0x9e, 0x7c, 0x6c, 0x95, 0x7d, 0x41, 0x8c, 0x8b, 0xf6, 0x39, 0x25, 0xfb, 0x93, 0x4a, 0xb5, 0x87, 0xd3, 0x85, 0x21, 0x6a, 0x62, 0x63, 0x07, 0xe2, 0x47, 0xc3, 0xd5, 0xbc, 0xf4, 0x89, 0xb5, 0x2a, 0xd4, 0xc1, 0x98, 0x79, 0x73, 0xd7, 0xd4, 0xcc, 0x90, 0xfb, 0x5b, 0x1f, 0x48, 0x8d, 0x80, 0x13, 0x46, 0x56, }; static const unsigned char ecdsa_secp256r1_sha3_512_7624_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7624_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7624 = { .name = "ecdsa_secp256r1_sha3_512_7624", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7624_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7624_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7624_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 371 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7625 for ECDSA, tcId is 372 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7625_pubkey[] = { 0x1b, 0xfc, 0x10, 0x6d, 0x79, 0x11, 0x2f, 0x08, 0x43, 0x9a, 0x4f, 0xfa, 0x4e, 0x06, 0x26, 0x1b, 0xba, 0xb3, 0x03, 0x1f, 0xf7, 0xed, 0x32, 0x56, 0x81, 0x72, 0xca, 0xae, 0xab, 0xae, 0x2f, 0x90, 0xb8, 0x94, 0xec, 0xc8, 0x92, 0x2a, 0xce, 0x77, 0x6e, 0xd6, 0xd1, 0x52, 0x6b, 0x77, 0x71, 0xf2, 0xcc, 0x43, 0xb0, 0xe8, 0x4b, 0xac, 0x40, 0x05, 0x41, 0x61, 0x9e, 0x14, 0x23, 0x19, 0x05, 0x9f, }; static const unsigned char ecdsa_secp256r1_sha3_512_7625_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7625_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7625 = { .name = "ecdsa_secp256r1_sha3_512_7625", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7625_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7625_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7625_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 372 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7626 for ECDSA, tcId is 373 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7626_pubkey[] = { 0x71, 0xe1, 0x31, 0x91, 0x22, 0x91, 0x97, 0xee, 0xfe, 0x92, 0x24, 0xbe, 0x11, 0x21, 0x78, 0x78, 0x63, 0x50, 0x56, 0xfd, 0x8e, 0x55, 0x8b, 0x74, 0x12, 0x10, 0x36, 0x04, 0x3c, 0xb7, 0x50, 0x17, 0x09, 0xa0, 0x9b, 0xc0, 0x04, 0xff, 0xc9, 0x8a, 0x40, 0x51, 0xa3, 0xfb, 0x97, 0x98, 0xcb, 0x9f, 0xd5, 0xc1, 0x79, 0x19, 0xec, 0xab, 0x9f, 0xf8, 0x45, 0x9a, 0x7d, 0x56, 0x1f, 0x30, 0x58, 0xb2, }; static const unsigned char ecdsa_secp256r1_sha3_512_7626_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7626_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7626 = { .name = "ecdsa_secp256r1_sha3_512_7626", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7626_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7626_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7626_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 373 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7627 for ECDSA, tcId is 374 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7627_pubkey[] = { 0x15, 0xb8, 0x86, 0x72, 0x17, 0xbf, 0x4d, 0x53, 0x1a, 0x56, 0x18, 0x50, 0x9d, 0x9c, 0xdd, 0xc6, 0xa3, 0xff, 0x4f, 0xcc, 0x55, 0xcc, 0x94, 0xdf, 0x82, 0xd9, 0x95, 0x2b, 0x42, 0xae, 0x56, 0x4d, 0x72, 0x34, 0xd5, 0xc4, 0x32, 0x38, 0xe5, 0x91, 0x50, 0x1c, 0x1f, 0xad, 0xa3, 0x9a, 0x60, 0x05, 0x7f, 0xef, 0xb4, 0x6b, 0x58, 0x8d, 0x47, 0xcb, 0xed, 0xb5, 0x29, 0xde, 0xf0, 0x80, 0xfb, 0x83, }; static const unsigned char ecdsa_secp256r1_sha3_512_7627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7627_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7627 = { .name = "ecdsa_secp256r1_sha3_512_7627", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7627_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7627_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7627_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 374 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7628 for ECDSA, tcId is 375 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7628_pubkey[] = { 0xe7, 0xc1, 0xfc, 0xc7, 0x75, 0xb8, 0xd4, 0x67, 0x70, 0x26, 0x1c, 0x41, 0x32, 0x91, 0xbc, 0x9d, 0x91, 0x3c, 0x77, 0x85, 0x77, 0x98, 0x70, 0xeb, 0x47, 0x5f, 0x74, 0x37, 0xda, 0x3e, 0xe1, 0xa0, 0x16, 0xad, 0x89, 0x86, 0xf7, 0xef, 0x63, 0xd4, 0x23, 0x7a, 0x9c, 0x80, 0x2e, 0x5e, 0x49, 0x47, 0x1d, 0x24, 0x8e, 0x4d, 0xf6, 0x42, 0x83, 0xe7, 0x76, 0x08, 0xee, 0x19, 0x1e, 0xc6, 0x1f, 0x3f, }; static const unsigned char ecdsa_secp256r1_sha3_512_7628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7628_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7628 = { .name = "ecdsa_secp256r1_sha3_512_7628", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7628_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7628_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7628_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 375 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7629 for ECDSA, tcId is 376 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7629_pubkey[] = { 0xcf, 0xac, 0x11, 0xbd, 0x4b, 0x7a, 0xa0, 0xa2, 0x93, 0x09, 0x76, 0x7e, 0xdd, 0xd3, 0x37, 0xd3, 0x02, 0xf1, 0xf4, 0x2c, 0xca, 0xb2, 0x15, 0x17, 0x1f, 0x96, 0x22, 0x99, 0x2a, 0x67, 0x1e, 0x4a, 0x14, 0x51, 0x10, 0x2a, 0xd1, 0x00, 0xa2, 0x4e, 0x6f, 0xb5, 0xcb, 0x13, 0x0c, 0x69, 0xde, 0x2a, 0x61, 0xfa, 0x50, 0xf2, 0xd0, 0x7a, 0x09, 0x9d, 0x73, 0xae, 0x96, 0xf9, 0x71, 0x59, 0x35, 0x88, }; static const unsigned char ecdsa_secp256r1_sha3_512_7629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7629_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7629 = { .name = "ecdsa_secp256r1_sha3_512_7629", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7629_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7629_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7629_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 376 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7630 for ECDSA, tcId is 377 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7630_pubkey[] = { 0xcf, 0xac, 0x11, 0xbd, 0x4b, 0x7a, 0xa0, 0xa2, 0x93, 0x09, 0x76, 0x7e, 0xdd, 0xd3, 0x37, 0xd3, 0x02, 0xf1, 0xf4, 0x2c, 0xca, 0xb2, 0x15, 0x17, 0x1f, 0x96, 0x22, 0x99, 0x2a, 0x67, 0x1e, 0x4a, 0x14, 0x51, 0x10, 0x2a, 0xd1, 0x00, 0xa2, 0x4e, 0x6f, 0xb5, 0xcb, 0x13, 0x0c, 0x69, 0xde, 0x2a, 0x61, 0xfa, 0x50, 0xf2, 0xd0, 0x7a, 0x09, 0x9d, 0x73, 0xae, 0x96, 0xf9, 0x71, 0x59, 0x35, 0x88, }; static const unsigned char ecdsa_secp256r1_sha3_512_7630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7630_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7630 = { .name = "ecdsa_secp256r1_sha3_512_7630", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7630_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7630_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7630_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 377 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7631 for ECDSA, tcId is 378 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7631_pubkey[] = { 0xca, 0x99, 0xe8, 0xca, 0xcb, 0x96, 0xb9, 0xb7, 0x3a, 0x7e, 0xcf, 0x47, 0x86, 0x17, 0x26, 0x9f, 0x08, 0x97, 0x1c, 0x30, 0x7a, 0xba, 0x95, 0x86, 0x92, 0x38, 0x16, 0x96, 0xc2, 0x44, 0x44, 0x3b, 0x5c, 0x5d, 0xf1, 0xf7, 0x40, 0xdb, 0x30, 0x16, 0xb0, 0xad, 0x29, 0x89, 0x97, 0x13, 0x1c, 0xea, 0x68, 0x5b, 0x2b, 0xa4, 0x05, 0xc3, 0xb0, 0xf7, 0x22, 0xc6, 0x99, 0x2b, 0xda, 0xa6, 0xfd, 0x3a, }; static const unsigned char ecdsa_secp256r1_sha3_512_7631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7631_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7631 = { .name = "ecdsa_secp256r1_sha3_512_7631", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7631_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7631_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7631_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 378 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7632 for ECDSA, tcId is 379 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7632_pubkey[] = { 0x3c, 0x31, 0xbe, 0x01, 0x51, 0x78, 0xa9, 0xc3, 0xd3, 0xca, 0xe9, 0x10, 0x3b, 0xf2, 0x5b, 0xc1, 0x1a, 0x70, 0x93, 0x16, 0xd0, 0x6a, 0xb4, 0x6c, 0x01, 0xf8, 0x84, 0xa8, 0xeb, 0x33, 0xda, 0x2e, 0x91, 0xf3, 0x2a, 0x13, 0x52, 0x71, 0x25, 0x08, 0x64, 0x2c, 0x47, 0x74, 0xea, 0x67, 0x04, 0x91, 0x75, 0x16, 0x1c, 0xb2, 0xba, 0xfd, 0x55, 0x24, 0xb8, 0x13, 0x27, 0x4b, 0x14, 0x0f, 0x8e, 0x99, }; static const unsigned char ecdsa_secp256r1_sha3_512_7632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7632_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7632 = { .name = "ecdsa_secp256r1_sha3_512_7632", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7632_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7632_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7632_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 379 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7633 for ECDSA, tcId is 380 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7633_pubkey[] = { 0x35, 0x5d, 0x9c, 0x3f, 0x97, 0xa2, 0x82, 0xac, 0x17, 0xf7, 0xbc, 0x98, 0x37, 0x3f, 0x27, 0x1d, 0x6a, 0x2b, 0xc0, 0x2e, 0xb9, 0x64, 0xf1, 0x3c, 0x1e, 0x2d, 0x7d, 0xeb, 0xff, 0x4a, 0x02, 0xfd, 0x63, 0x28, 0x2e, 0x78, 0xfb, 0x9b, 0x88, 0xf8, 0x14, 0x13, 0xbc, 0xf9, 0x5f, 0x16, 0x98, 0x2d, 0x9f, 0x50, 0xe7, 0xf9, 0x4a, 0x5d, 0x28, 0x68, 0x5b, 0x41, 0xda, 0x99, 0x72, 0x01, 0xdb, 0x5e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7633_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7633 = { .name = "ecdsa_secp256r1_sha3_512_7633", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7633_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7633_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7633_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 380 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7634 for ECDSA, tcId is 381 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7634_pubkey[] = { 0x1c, 0x95, 0x99, 0x64, 0xca, 0xba, 0xa5, 0xce, 0x96, 0x6b, 0x95, 0xac, 0xda, 0x1c, 0x52, 0x64, 0x84, 0x7a, 0x78, 0x04, 0x26, 0xc8, 0x78, 0xd7, 0x16, 0xd7, 0x3a, 0xe6, 0x62, 0x1d, 0x30, 0x84, 0xd3, 0xfe, 0xdf, 0xc4, 0xf9, 0xc3, 0xb8, 0xcc, 0x8b, 0xc6, 0x53, 0x9b, 0x82, 0x1a, 0xd2, 0x08, 0xec, 0x08, 0xd5, 0x73, 0x7a, 0xaa, 0xf1, 0x80, 0x1d, 0x66, 0x6d, 0xdc, 0x37, 0xe5, 0x4f, 0xaf, }; static const unsigned char ecdsa_secp256r1_sha3_512_7634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7634_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7634 = { .name = "ecdsa_secp256r1_sha3_512_7634", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7634_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7634_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7634_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 381 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7635 for ECDSA, tcId is 382 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7635_pubkey[] = { 0x98, 0x42, 0xa8, 0x2a, 0x83, 0x93, 0x2d, 0x5a, 0x44, 0xda, 0xab, 0x14, 0xaf, 0xb7, 0x99, 0x68, 0xdd, 0x24, 0xd9, 0xff, 0xc5, 0x8e, 0x63, 0x85, 0x86, 0xa9, 0x0b, 0x0f, 0x25, 0xb5, 0x21, 0xdd, 0x38, 0xb2, 0xc0, 0x5c, 0x8d, 0x54, 0x8b, 0xcf, 0x5a, 0xb2, 0xa9, 0x06, 0xe2, 0xf3, 0xfb, 0xdd, 0xe7, 0xf0, 0xb9, 0xbb, 0xde, 0xcb, 0x85, 0x22, 0x97, 0xd5, 0x5a, 0xe3, 0x42, 0x57, 0xf8, 0xf3, }; static const unsigned char ecdsa_secp256r1_sha3_512_7635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7635_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xcb, 0xd2, 0x51, 0x89, 0xe5, 0x9c, 0x5c, 0x36, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x12, 0xc1, 0x94, 0xca, 0xdf, 0x35, 0x3d, 0x63, 0x31, 0xf9, 0xf5, 0x7f, 0xa8, 0x1b, 0x33, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7635 = { .name = "ecdsa_secp256r1_sha3_512_7635", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7635_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7635_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7635_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 382 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7636 for ECDSA, tcId is 383 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7636_pubkey[] = { 0x98, 0x7a, 0x83, 0x9e, 0xc5, 0x70, 0x96, 0x4d, 0x3a, 0x1b, 0xfc, 0x6a, 0x03, 0x34, 0xe7, 0x32, 0x8c, 0x16, 0x24, 0x67, 0x7c, 0x66, 0xb8, 0xfe, 0xf3, 0xa5, 0xe6, 0x4d, 0x11, 0x78, 0xdd, 0xae, 0x55, 0x77, 0xdf, 0xcd, 0x0f, 0xe0, 0x0d, 0xa9, 0xe1, 0xd8, 0xbb, 0x8b, 0xbd, 0x95, 0x2a, 0xaa, 0x5b, 0xc1, 0x0e, 0xcb, 0x14, 0xca, 0xe4, 0xe3, 0xf5, 0xe2, 0x8c, 0x50, 0x6b, 0xbc, 0x3a, 0x21, }; static const unsigned char ecdsa_secp256r1_sha3_512_7636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7636_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7636 = { .name = "ecdsa_secp256r1_sha3_512_7636", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7636_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7636_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7636_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 383 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7637 for ECDSA, tcId is 384 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7637_pubkey[] = { 0xab, 0x65, 0x90, 0xad, 0x51, 0x34, 0xf8, 0xe1, 0xbf, 0x45, 0x81, 0xcf, 0x90, 0xca, 0x03, 0x98, 0xce, 0xb9, 0x28, 0x61, 0xc2, 0xaf, 0x06, 0x92, 0x8c, 0xc0, 0x30, 0x3d, 0x96, 0x54, 0xca, 0x3e, 0x1d, 0x82, 0x1f, 0x6a, 0x35, 0x7d, 0xc1, 0x73, 0xf2, 0x2a, 0x3b, 0x77, 0x14, 0x5c, 0x05, 0x7a, 0x63, 0x2b, 0xb5, 0x6f, 0x31, 0x51, 0x4e, 0x31, 0xd6, 0xd2, 0xed, 0x7f, 0xdd, 0xea, 0xde, 0x55, }; static const unsigned char ecdsa_secp256r1_sha3_512_7637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7637_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7637 = { .name = "ecdsa_secp256r1_sha3_512_7637", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7637_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7637_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7637_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 384 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7638 for ECDSA, tcId is 385 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7638_pubkey[] = { 0xcd, 0xe4, 0x12, 0x30, 0xf0, 0xcd, 0xf7, 0x32, 0xac, 0x76, 0xe5, 0xf2, 0x84, 0xcb, 0x7f, 0x46, 0x91, 0x5e, 0xd3, 0x09, 0xb4, 0x8d, 0xeb, 0xf2, 0x45, 0xf3, 0xff, 0x2f, 0x24, 0x3e, 0x93, 0x66, 0x24, 0x0d, 0xa3, 0x6c, 0xa5, 0xad, 0x28, 0x9b, 0xdf, 0xea, 0x83, 0x21, 0x38, 0x47, 0xb1, 0x4a, 0x73, 0x07, 0x97, 0x05, 0xea, 0xb0, 0xa2, 0xa2, 0x8a, 0xef, 0xc9, 0x99, 0xe5, 0xed, 0x15, 0x04, }; static const unsigned char ecdsa_secp256r1_sha3_512_7638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7638_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbc, 0x0f, 0x3a, 0x26, 0x5e, 0x21, 0x36, 0x99, 0x80, 0x83, 0x45, 0x11, 0x63, 0xbe, 0x66, 0xf8, 0xb6, 0xa6, 0x73, 0xbf, 0x5c, 0xb0, 0x8a, 0x0e, 0x8d, 0xbb, 0xce, 0x43, 0x19, 0xaf, 0x69, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7638 = { .name = "ecdsa_secp256r1_sha3_512_7638", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7638_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7638_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7638_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7639 for ECDSA, tcId is 386 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7639_pubkey[] = { 0x36, 0xc6, 0xfa, 0xa9, 0xf6, 0xdc, 0xa4, 0x2e, 0xa8, 0xb0, 0xe6, 0xd0, 0x2d, 0x36, 0xc3, 0x94, 0x15, 0x82, 0x74, 0x92, 0x51, 0xbf, 0xa8, 0x8c, 0x35, 0xfc, 0x8a, 0x8e, 0x9a, 0xd5, 0x1c, 0xda, 0xc4, 0x4c, 0xe5, 0xf2, 0x0f, 0x36, 0xb4, 0xae, 0x75, 0xcc, 0x72, 0x91, 0x67, 0x8d, 0xbf, 0xf1, 0x88, 0xcf, 0x8c, 0x83, 0x8b, 0x89, 0x63, 0xee, 0xb8, 0xb7, 0x88, 0x91, 0x79, 0x5a, 0x73, 0x64, }; static const unsigned char ecdsa_secp256r1_sha3_512_7639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7639_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2a, 0x06, 0xd7, 0x43, 0x96, 0x7a, 0x13, 0x30, 0xca, 0x91, 0xcc, 0x46, 0xc9, 0x39, 0x45, 0x12, 0xcc, 0x85, 0xb4, 0xf1, 0xb9, 0x35, 0x5e, 0xb7, 0xf4, 0xbb, 0xe5, 0x3a, 0x32, 0xb7, 0x6c, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7639 = { .name = "ecdsa_secp256r1_sha3_512_7639", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7639_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7639_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7639_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7640 for ECDSA, tcId is 387 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7640_pubkey[] = { 0x70, 0x9e, 0x58, 0xa1, 0x2b, 0x12, 0x03, 0x41, 0x73, 0x39, 0x5b, 0xf9, 0x1e, 0x68, 0x25, 0x5d, 0x90, 0xd8, 0xa3, 0xa1, 0xd5, 0x87, 0x5c, 0x75, 0xf8, 0x77, 0x87, 0xd9, 0xa8, 0x5a, 0x09, 0x29, 0x80, 0xe0, 0x9b, 0x79, 0xf4, 0x34, 0x89, 0xbe, 0x72, 0x6a, 0x42, 0x53, 0xae, 0x6c, 0x05, 0xad, 0xce, 0x71, 0xbc, 0xc6, 0x53, 0x89, 0x25, 0x49, 0x23, 0xcb, 0xfa, 0xcc, 0x07, 0x75, 0xbf, 0xf6, }; static const unsigned char ecdsa_secp256r1_sha3_512_7640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7640_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8a, 0x45, 0x70, 0x17, 0xb2, 0x90, 0xd6, 0xed, 0xb5, 0x45, 0x5e, 0x16, 0x7b, 0x99, 0x44, 0xf6, 0x7d, 0xc5, 0xba, 0x95, 0x8c, 0x7c, 0x81, 0x08, 0xac, 0x56, 0xe8, 0x59, 0x6b, 0x9b, 0xc9, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7640 = { .name = "ecdsa_secp256r1_sha3_512_7640", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7640_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7640_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7640_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7641 for ECDSA, tcId is 388 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7641_pubkey[] = { 0x86, 0x66, 0x4a, 0x9e, 0x09, 0xdb, 0x80, 0xdb, 0xe3, 0xbd, 0x01, 0x58, 0xcc, 0x4a, 0x64, 0xa2, 0xcd, 0xed, 0x9c, 0x85, 0x2b, 0x45, 0x5f, 0x44, 0x43, 0xe9, 0x7c, 0xca, 0x55, 0x69, 0xf7, 0xcc, 0x74, 0x54, 0xf9, 0x6b, 0x52, 0xa2, 0x7a, 0x43, 0xa1, 0x34, 0x5b, 0x5d, 0x34, 0x09, 0x02, 0xe1, 0x47, 0x88, 0x0a, 0xda, 0xf2, 0xfe, 0x69, 0x1c, 0x16, 0x8b, 0x42, 0x03, 0xba, 0x2e, 0x1d, 0xf4, }; static const unsigned char ecdsa_secp256r1_sha3_512_7641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7641_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0xfa, 0xf8, 0x12, 0x12, 0x46, 0x38, 0xc0, 0xb9, 0x8c, 0x18, 0xca, 0xc3, 0xdd, 0x8d, 0x08, 0x48, 0xff, 0x92, 0x1f, 0x26, 0xae, 0xc4, 0x2a, 0x70, 0x8d, 0xf7, 0xb6, 0xa9, 0x75, 0x71, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7641 = { .name = "ecdsa_secp256r1_sha3_512_7641", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7641_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7641_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7641_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7642 for ECDSA, tcId is 389 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7642_pubkey[] = { 0x62, 0x3c, 0x66, 0x8c, 0x5d, 0xba, 0xe4, 0x06, 0xe7, 0xb4, 0xe8, 0xe9, 0x7b, 0x2b, 0xba, 0x20, 0x28, 0x58, 0x6f, 0x2e, 0x3c, 0x31, 0xf6, 0x94, 0xd9, 0xfe, 0x87, 0xa3, 0xde, 0x29, 0xf8, 0x43, 0x3a, 0xc7, 0xeb, 0x04, 0x89, 0x18, 0x98, 0xdd, 0x90, 0x77, 0x43, 0x2c, 0x38, 0xcc, 0x97, 0x80, 0x49, 0xca, 0xb7, 0x72, 0x16, 0x30, 0xed, 0x03, 0x30, 0x95, 0xf8, 0x50, 0xad, 0xe8, 0x3e, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7642_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaf, 0x81, 0x2d, 0xe3, 0x63, 0x8b, 0xfe, 0xd9, 0xc1, 0x8c, 0xac, 0x3d, 0xd8, 0xd0, 0x87, 0xe7, 0x35, 0x0c, 0xc7, 0x06, 0x26, 0x35, 0x26, 0x6a, 0x52, 0x5b, 0xff, 0x48, 0x63, 0x63, 0xcc, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7642 = { .name = "ecdsa_secp256r1_sha3_512_7642", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7642_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7642_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7642_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7643 for ECDSA, tcId is 390 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7643_pubkey[] = { 0xb0, 0x34, 0x89, 0x7e, 0x2a, 0x74, 0xa7, 0x87, 0xe0, 0x08, 0xb1, 0x4c, 0x62, 0x88, 0x2e, 0xae, 0xe0, 0xe6, 0xe5, 0x3a, 0x1c, 0x8a, 0x58, 0xf7, 0x09, 0xa5, 0x44, 0x32, 0x71, 0x3c, 0x20, 0xfd, 0x28, 0xe0, 0x7d, 0xe2, 0xca, 0x64, 0xb5, 0xe2, 0x15, 0xd2, 0x5d, 0x05, 0x30, 0xd7, 0x80, 0x7d, 0xf1, 0x1b, 0x98, 0xbb, 0x39, 0xc2, 0x6a, 0x24, 0x05, 0x38, 0x8a, 0xc0, 0xb1, 0x63, 0xfa, 0xfc, }; static const unsigned char ecdsa_secp256r1_sha3_512_7643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7643_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5f, 0x02, 0x5b, 0xc7, 0xc7, 0x17, 0xfd, 0xb2, 0x83, 0x19, 0x58, 0x7b, 0xb1, 0xa1, 0x0f, 0xce, 0xad, 0x32, 0x93, 0x5e, 0xa5, 0x52, 0xae, 0x4f, 0xb0, 0xfe, 0x33, 0xcd, 0xca, 0x64, 0x73, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7643 = { .name = "ecdsa_secp256r1_sha3_512_7643", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7643_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7643_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7643_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7644 for ECDSA, tcId is 391 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7644_pubkey[] = { 0x14, 0xc4, 0xf6, 0x21, 0x0b, 0x62, 0x8e, 0xdd, 0x44, 0x16, 0x51, 0xd3, 0xcb, 0x61, 0xa0, 0x7f, 0x7c, 0xa8, 0x76, 0x29, 0xa9, 0xe0, 0xad, 0xd5, 0xa4, 0xfd, 0x92, 0x90, 0x2a, 0x20, 0xcd, 0x25, 0x51, 0x46, 0xbe, 0xbd, 0xb2, 0x2b, 0x4d, 0x49, 0x52, 0x7e, 0xbc, 0x90, 0xba, 0x62, 0x94, 0x78, 0x4a, 0xe7, 0xca, 0x66, 0x47, 0x24, 0xd4, 0x5a, 0x46, 0x6c, 0x9f, 0xe8, 0xb8, 0x69, 0x9b, 0xbf, }; static const unsigned char ecdsa_secp256r1_sha3_512_7644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7644_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xde, 0x41, 0x30, 0xd1, 0xed, 0x91, 0x20, 0xb8, 0xc3, 0xdd, 0x8d, 0x08, 0x7e, 0x76, 0x30, 0xcb, 0x9a, 0x84, 0x02, 0x51, 0x94, 0x39, 0xaf, 0x08, 0xe9, 0x6b, 0x34, 0x27, 0x88, 0xc6, 0xe8, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7644 = { .name = "ecdsa_secp256r1_sha3_512_7644", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7644_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7644_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7644_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7645 for ECDSA, tcId is 392 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7645_pubkey[] = { 0xb5, 0x40, 0x8e, 0xef, 0xbd, 0xb7, 0x48, 0x0f, 0xad, 0x4c, 0x17, 0x35, 0xf3, 0x78, 0xc9, 0xa1, 0xde, 0xd2, 0x8c, 0xf4, 0x76, 0x83, 0x5f, 0x27, 0xb6, 0xfd, 0x3b, 0x8a, 0xf5, 0xe4, 0xc5, 0x96, 0xa6, 0x0a, 0x80, 0x6e, 0x24, 0x4c, 0x63, 0xa7, 0x98, 0xba, 0xf2, 0xfd, 0x5a, 0x66, 0xc6, 0xc0, 0xd7, 0xf7, 0x79, 0x52, 0xba, 0x2d, 0x74, 0xb0, 0xfe, 0x36, 0x52, 0x81, 0x1c, 0xaa, 0xc6, 0xf0, }; static const unsigned char ecdsa_secp256r1_sha3_512_7645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7645_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xec, 0x61, 0x8e, 0x7b, 0x1a, 0xf4, 0x0b, 0xe0, 0xd0, 0x52, 0xf5, 0xa0, 0x20, 0x38, 0x8f, 0xc6, 0xca, 0xfb, 0x82, 0x29, 0x33, 0xc1, 0xbf, 0xfa, 0xb1, 0x37, 0x88, 0x5f, 0x52, 0xe8, 0x9d, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7645 = { .name = "ecdsa_secp256r1_sha3_512_7645", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7645_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7645_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7645_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7646 for ECDSA, tcId is 393 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7646_pubkey[] = { 0xde, 0x9e, 0x22, 0xbc, 0x58, 0xf4, 0xb9, 0xc9, 0x13, 0xe7, 0xf7, 0xc2, 0x6f, 0xcb, 0xc5, 0xd7, 0xf6, 0xbd, 0xc9, 0xfc, 0xed, 0x5f, 0x52, 0x0a, 0xc8, 0x8e, 0x8a, 0x03, 0x29, 0x0b, 0xe4, 0x03, 0x74, 0x6a, 0x12, 0x58, 0x44, 0x50, 0x9d, 0x79, 0x84, 0x0e, 0x35, 0x44, 0x0b, 0x31, 0x2d, 0xbf, 0xdf, 0x4a, 0xb8, 0xab, 0x00, 0x11, 0xe7, 0xc3, 0x6b, 0xc9, 0xe0, 0x12, 0x01, 0xb1, 0xb0, 0xe0, }; static const unsigned char ecdsa_secp256r1_sha3_512_7646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7646_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd3, 0x98, 0x13, 0xc8, 0x10, 0x2f, 0xe0, 0xf1, 0x8c, 0xbf, 0xac, 0x4b, 0x0f, 0xa0, 0x28, 0xe6, 0xe4, 0x8c, 0x09, 0x3c, 0x59, 0xea, 0x00, 0xdc, 0x99, 0xfa, 0xd5, 0x0f, 0x2d, 0x61, 0x4a, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7646 = { .name = "ecdsa_secp256r1_sha3_512_7646", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7646_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7646_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7646_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7647 for ECDSA, tcId is 394 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7647_pubkey[] = { 0xee, 0x3b, 0xfd, 0x2e, 0x1c, 0x3d, 0x99, 0xac, 0xd8, 0x8d, 0xbf, 0x6f, 0xc9, 0xa3, 0xa8, 0xf5, 0x68, 0x6b, 0x50, 0xa6, 0xa3, 0xe9, 0x21, 0x5f, 0x57, 0xe8, 0x3a, 0x81, 0x38, 0x98, 0x36, 0xa5, 0xf8, 0xeb, 0xff, 0x9a, 0x3e, 0x46, 0x3d, 0x47, 0xec, 0x36, 0x25, 0x9f, 0xdd, 0xe6, 0x94, 0xbd, 0xbb, 0x88, 0x0b, 0x0a, 0x09, 0xfe, 0x9a, 0xc6, 0x49, 0xd6, 0x91, 0x64, 0x6b, 0xa6, 0x24, 0xf6, }; static const unsigned char ecdsa_secp256r1_sha3_512_7647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7647_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe9, 0xfc, 0xbc, 0xad, 0x90, 0x66, 0x98, 0xe0, 0x2d, 0x9a, 0xba, 0x57, 0xb3, 0xc4, 0xe9, 0xee, 0xfe, 0xaf, 0x3c, 0xec, 0x7a, 0x98, 0x0c, 0x42, 0x2f, 0xe7, 0xf6, 0x30, 0x3f, 0xc4, 0xa3, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7647 = { .name = "ecdsa_secp256r1_sha3_512_7647", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7647_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7647_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7647_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7648 for ECDSA, tcId is 395 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7648_pubkey[] = { 0x3c, 0x0c, 0x4d, 0x0a, 0xd0, 0x84, 0x8d, 0x13, 0x35, 0xb1, 0x2a, 0x89, 0x19, 0xd3, 0x2f, 0xaf, 0xc5, 0xf2, 0xb0, 0xd5, 0xc2, 0xf3, 0xcf, 0x64, 0x94, 0xb0, 0x6b, 0xa8, 0xeb, 0x17, 0xcb, 0x29, 0xdd, 0x70, 0x54, 0x09, 0x54, 0x54, 0xfd, 0xb5, 0x19, 0x27, 0x9c, 0xde, 0x10, 0x25, 0x9e, 0xc5, 0xd9, 0xe5, 0xe4, 0xb5, 0xa8, 0xc4, 0xda, 0xca, 0x64, 0x9a, 0x15, 0x0f, 0x2d, 0xbf, 0x21, 0xac, }; static const unsigned char ecdsa_secp256r1_sha3_512_7648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7648_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x21, 0xf8, 0x62, 0xec, 0x50, 0xef, 0x64, 0xb3, 0xbf, 0xbe, 0x5d, 0x77, 0x4e, 0x20, 0xcc, 0x83, 0x83, 0x20, 0x43, 0x77, 0x25, 0x33, 0x8a, 0x3b, 0x32, 0xfe, 0xfe, 0x3f, 0xf1, 0x59, 0xdd, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7648 = { .name = "ecdsa_secp256r1_sha3_512_7648", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7648_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7648_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7648_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 395 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7649 for ECDSA, tcId is 396 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7649_pubkey[] = { 0x6c, 0xf9, 0x14, 0x40, 0x81, 0x8e, 0xa2, 0x62, 0xb9, 0x37, 0x6e, 0x23, 0xf7, 0xb5, 0x30, 0xb9, 0xe4, 0x4e, 0xdf, 0x5b, 0xc6, 0xdb, 0x1a, 0x67, 0xdd, 0x60, 0xcc, 0x72, 0x29, 0x75, 0xd6, 0x23, 0x17, 0xc1, 0x9e, 0x7d, 0x6e, 0xbc, 0x0c, 0xbd, 0xc8, 0x93, 0x88, 0x24, 0x2d, 0x60, 0x4a, 0xe9, 0x4a, 0xc4, 0xca, 0x17, 0x9e, 0xf2, 0xcd, 0x8b, 0xf3, 0x3f, 0xbf, 0x73, 0x8a, 0xfc, 0xb3, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha3_512_7649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7649_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x43, 0xf0, 0xc5, 0xd8, 0xa1, 0xde, 0xc9, 0x67, 0x7f, 0x7c, 0xba, 0xee, 0x9c, 0x41, 0x99, 0x07, 0x06, 0x40, 0x86, 0xee, 0x4a, 0x67, 0x14, 0x76, 0x65, 0xfd, 0xfc, 0x7f, 0xe2, 0xb3, 0xbb, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7649 = { .name = "ecdsa_secp256r1_sha3_512_7649", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7649_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7649_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7649_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 396 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7650 for ECDSA, tcId is 397 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7650_pubkey[] = { 0x1b, 0x5a, 0xfc, 0xf3, 0x98, 0x88, 0xd2, 0xda, 0x72, 0x15, 0xf3, 0x64, 0x21, 0xa8, 0x5c, 0x42, 0x17, 0xb0, 0xac, 0x88, 0x3b, 0xf5, 0x95, 0x7c, 0x2d, 0x06, 0x6e, 0xfd, 0x8b, 0xc8, 0x9f, 0x18, 0xd8, 0xfb, 0x3b, 0x6a, 0xca, 0x0b, 0x35, 0x77, 0xa8, 0x83, 0x94, 0x8e, 0x01, 0x69, 0x05, 0x06, 0x5a, 0x3f, 0xdc, 0x13, 0xd6, 0xf4, 0x33, 0x17, 0x2e, 0xe0, 0xf1, 0x67, 0x84, 0xe5, 0x2c, 0x78, }; static const unsigned char ecdsa_secp256r1_sha3_512_7650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7650_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0xe9, 0x28, 0xc4, 0xf2, 0xce, 0x2e, 0x1b, 0x3f, 0x3b, 0x18, 0x65, 0xea, 0x62, 0x65, 0x8a, 0x89, 0x60, 0xca, 0x65, 0x6f, 0x9a, 0x9e, 0xb1, 0x98, 0xfc, 0xfa, 0xbf, 0xd4, 0x0d, 0x99, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7650 = { .name = "ecdsa_secp256r1_sha3_512_7650", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7650_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7650_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7650_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 397 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7651 for ECDSA, tcId is 398 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7651_pubkey[] = { 0x89, 0x0d, 0x36, 0xdb, 0x64, 0x6c, 0x27, 0xc2, 0xe6, 0xc7, 0xbc, 0x7f, 0xdc, 0x3f, 0x0c, 0xbf, 0x66, 0xfa, 0xb3, 0x6d, 0x13, 0x27, 0x9b, 0x9e, 0xcf, 0x6e, 0x98, 0x45, 0x7d, 0x8c, 0xf4, 0x92, 0x07, 0xa8, 0x3c, 0xfd, 0xa8, 0xe9, 0xd0, 0x37, 0x54, 0x04, 0xc6, 0xcb, 0xff, 0x66, 0x79, 0x2e, 0xef, 0x97, 0x22, 0x02, 0x39, 0x25, 0x40, 0x00, 0xb4, 0xbf, 0x98, 0x3e, 0x6b, 0xae, 0x26, 0xd7, }; static const unsigned char ecdsa_secp256r1_sha3_512_7651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7651_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc5, 0x22, 0xb8, 0x0b, 0x59, 0x48, 0x6b, 0x77, 0x5a, 0xa2, 0xaf, 0x0b, 0x3d, 0xcc, 0xa2, 0x7b, 0x1d, 0x56, 0x5a, 0xa1, 0x99, 0xca, 0x0f, 0xc6, 0xd0, 0x08, 0x59, 0x8e, 0x33, 0xff, 0x77, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7651 = { .name = "ecdsa_secp256r1_sha3_512_7651", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7651_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7651_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7651_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 398 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7652 for ECDSA, tcId is 399 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7652_pubkey[] = { 0x2a, 0x15, 0x71, 0xed, 0x0f, 0xfe, 0x39, 0x57, 0x4d, 0x03, 0x0b, 0x40, 0x6f, 0x63, 0x8b, 0xf8, 0x8e, 0xea, 0x5b, 0x4b, 0x50, 0x75, 0x4e, 0x93, 0x43, 0x1f, 0xe0, 0x17, 0x2f, 0xdf, 0x2f, 0xbc, 0xbc, 0x77, 0xf6, 0x01, 0xdc, 0x6d, 0xbc, 0x88, 0xcc, 0x2b, 0x56, 0x0e, 0x8c, 0xca, 0x5e, 0x73, 0x8f, 0x2c, 0x76, 0x98, 0x10, 0xb2, 0xc8, 0x76, 0x2d, 0xab, 0x91, 0x7a, 0xdf, 0xe2, 0x45, 0x35, }; static const unsigned char ecdsa_secp256r1_sha3_512_7652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7652_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7652 = { .name = "ecdsa_secp256r1_sha3_512_7652", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7652_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7652_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7652_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7653 for ECDSA, tcId is 400 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7653_pubkey[] = { 0x61, 0x2b, 0x44, 0x67, 0xc8, 0xb3, 0xb8, 0xec, 0xbf, 0x53, 0x74, 0x99, 0x7e, 0xc7, 0xdb, 0x8c, 0xab, 0x2b, 0xda, 0x9e, 0x43, 0x19, 0x82, 0xc4, 0x97, 0x27, 0xf3, 0xfc, 0xef, 0xb1, 0x0b, 0x47, 0xb9, 0xd1, 0xec, 0xc0, 0x26, 0xc3, 0x66, 0x54, 0x25, 0x73, 0x01, 0x28, 0x13, 0x8c, 0x4e, 0x18, 0x1c, 0x61, 0xec, 0x28, 0xb3, 0x89, 0x10, 0xca, 0x59, 0xe5, 0xfc, 0x49, 0x6e, 0xc3, 0x1f, 0x08, }; static const unsigned char ecdsa_secp256r1_sha3_512_7653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7653_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7653 = { .name = "ecdsa_secp256r1_sha3_512_7653", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7653_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7653_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7653_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7654 for ECDSA, tcId is 401 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7654_pubkey[] = { 0x34, 0x19, 0x1b, 0x6c, 0xe8, 0x86, 0x5c, 0x22, 0x30, 0xa5, 0x14, 0xb6, 0x1e, 0x2b, 0x27, 0x30, 0xc9, 0x4b, 0xeb, 0x07, 0x2e, 0x9d, 0xe3, 0x09, 0x87, 0x2a, 0xea, 0x37, 0x43, 0xbb, 0x3e, 0x27, 0x22, 0xd2, 0x02, 0xfc, 0x59, 0x98, 0x4e, 0x74, 0x21, 0xa2, 0x5e, 0x6a, 0x82, 0x66, 0x4b, 0x50, 0x80, 0xf7, 0x2a, 0xb2, 0x8d, 0xf9, 0xc0, 0xaf, 0x4e, 0x1e, 0x30, 0x0a, 0xf1, 0x1a, 0xe9, 0xb0, }; static const unsigned char ecdsa_secp256r1_sha3_512_7654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7654_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7654 = { .name = "ecdsa_secp256r1_sha3_512_7654", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7654_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7654_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7654_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7655 for ECDSA, tcId is 402 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7655_pubkey[] = { 0xd5, 0x33, 0xc6, 0x20, 0xa8, 0xfd, 0x3d, 0x5a, 0x83, 0x42, 0xca, 0xba, 0x89, 0xea, 0xdc, 0x25, 0x90, 0x7d, 0x1e, 0x9b, 0x6f, 0xea, 0x48, 0xee, 0x8f, 0x80, 0x6a, 0xa7, 0x72, 0xf0, 0xc8, 0x0f, 0x70, 0xe0, 0x9c, 0x02, 0x2f, 0xa1, 0x13, 0x9d, 0xa3, 0x2a, 0x45, 0x6e, 0xc0, 0x24, 0x94, 0x98, 0x24, 0x47, 0x7b, 0xf0, 0xbd, 0xbf, 0x60, 0x3e, 0x8f, 0xac, 0xcd, 0x6b, 0x20, 0x5d, 0x26, 0x3c, }; static const unsigned char ecdsa_secp256r1_sha3_512_7655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7655_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7655 = { .name = "ecdsa_secp256r1_sha3_512_7655", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7655_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7655_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7655_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7656 for ECDSA, tcId is 403 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7656_pubkey[] = { 0x91, 0x01, 0x4b, 0xea, 0x87, 0x05, 0xa0, 0x22, 0x97, 0x2e, 0x12, 0xb1, 0x76, 0xc9, 0x6e, 0x84, 0xc0, 0xb6, 0x1c, 0x05, 0xeb, 0x1c, 0x6f, 0x8c, 0x5c, 0x1d, 0xb7, 0x31, 0xd5, 0x4d, 0x67, 0xe2, 0x90, 0x60, 0xef, 0x6c, 0x76, 0x4d, 0x8d, 0x47, 0xed, 0x5e, 0xbf, 0x8f, 0x6c, 0x23, 0x83, 0x5c, 0xb8, 0x9f, 0x8b, 0x05, 0x6c, 0xdf, 0x7e, 0x45, 0x7f, 0x92, 0x73, 0xb6, 0x47, 0x7e, 0xce, 0x33, }; static const unsigned char ecdsa_secp256r1_sha3_512_7656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7656_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7656 = { .name = "ecdsa_secp256r1_sha3_512_7656", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7656_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7656_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7656_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7657 for ECDSA, tcId is 404 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7657_pubkey[] = { 0x28, 0x7a, 0x7f, 0x8e, 0xdf, 0xbb, 0x55, 0xcb, 0xb5, 0x6d, 0x6b, 0x7b, 0xe5, 0xb9, 0x6c, 0x41, 0x0a, 0x85, 0xa3, 0x5b, 0xc6, 0x63, 0x96, 0x61, 0xa9, 0x2b, 0xd6, 0x53, 0xe1, 0xf5, 0x96, 0x88, 0xbb, 0xd1, 0x33, 0xa7, 0x78, 0x28, 0x49, 0x3b, 0x3e, 0x0f, 0x86, 0x7f, 0x34, 0xac, 0xfc, 0xac, 0x09, 0x94, 0x15, 0x39, 0x9a, 0x6b, 0x11, 0x06, 0xa0, 0xf9, 0x42, 0x0c, 0x06, 0xf8, 0xbf, 0x94, }; static const unsigned char ecdsa_secp256r1_sha3_512_7657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7657_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7657 = { .name = "ecdsa_secp256r1_sha3_512_7657", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7657_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7657_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7657_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7658 for ECDSA, tcId is 405 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7658_pubkey[] = { 0x82, 0xec, 0xa5, 0x24, 0xc9, 0xee, 0x84, 0x75, 0xec, 0x89, 0x48, 0x72, 0x1a, 0x94, 0x09, 0xb5, 0x09, 0x0c, 0x6c, 0x28, 0x86, 0x6d, 0x0c, 0x12, 0x66, 0x9b, 0xd5, 0xcb, 0x7e, 0x68, 0x5a, 0x58, 0x06, 0x6b, 0x1e, 0x71, 0x35, 0x94, 0x6a, 0x42, 0x5d, 0xdd, 0x22, 0x80, 0x76, 0xea, 0x24, 0xd1, 0x31, 0xb9, 0xbd, 0x2e, 0xae, 0x6b, 0x51, 0xc8, 0x08, 0x38, 0x57, 0x62, 0x8f, 0x26, 0x0b, 0x80, }; static const unsigned char ecdsa_secp256r1_sha3_512_7658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7658_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7658 = { .name = "ecdsa_secp256r1_sha3_512_7658", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7658_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7658_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7658_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7659 for ECDSA, tcId is 406 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7659_pubkey[] = { 0x9c, 0xc5, 0x12, 0xb5, 0x8d, 0x5b, 0x92, 0x1f, 0x91, 0x07, 0x54, 0x41, 0xb0, 0xdf, 0x61, 0xe0, 0x38, 0x14, 0x59, 0xde, 0x70, 0x3a, 0x84, 0x52, 0x3c, 0xda, 0x31, 0xdc, 0x18, 0x54, 0x9f, 0xf8, 0x56, 0x47, 0xdd, 0x4b, 0xd3, 0x9f, 0x67, 0x61, 0xa1, 0x44, 0xd8, 0x1e, 0xf3, 0x9d, 0xb7, 0xbc, 0x0d, 0xed, 0xbc, 0xb1, 0x5b, 0xda, 0xf0, 0x84, 0xe3, 0xa1, 0x0f, 0xdd, 0x10, 0xbd, 0x90, 0x6a, }; static const unsigned char ecdsa_secp256r1_sha3_512_7659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7659_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7659 = { .name = "ecdsa_secp256r1_sha3_512_7659", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7659_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7659_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7659_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7660 for ECDSA, tcId is 407 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7660_pubkey[] = { 0xaa, 0x9d, 0x33, 0xc7, 0x6c, 0xcd, 0x01, 0x1b, 0xa2, 0x30, 0x47, 0xa4, 0x20, 0x84, 0x03, 0x74, 0xb4, 0xfa, 0x3b, 0xe4, 0x80, 0xc6, 0x52, 0x63, 0xd5, 0x43, 0xba, 0xf2, 0xcc, 0xc6, 0x14, 0x1e, 0x5e, 0xd3, 0xb4, 0x2a, 0xd9, 0x52, 0x78, 0x69, 0xfa, 0xe9, 0x29, 0x14, 0xb8, 0x2b, 0x95, 0x2d, 0x2c, 0x31, 0xc8, 0xfc, 0xc8, 0x5b, 0x4c, 0x10, 0x09, 0x83, 0x09, 0x66, 0x94, 0x28, 0x57, 0x66, }; static const unsigned char ecdsa_secp256r1_sha3_512_7660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7660_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7660 = { .name = "ecdsa_secp256r1_sha3_512_7660", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7660_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7660_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7660_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7661 for ECDSA, tcId is 408 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7661_pubkey[] = { 0x28, 0x12, 0x99, 0x69, 0x34, 0xdb, 0x13, 0x57, 0x04, 0x8a, 0x1a, 0xac, 0xb0, 0x7c, 0xb2, 0xa8, 0x73, 0x0f, 0xbe, 0x53, 0x09, 0x84, 0xa7, 0xa5, 0x16, 0x6f, 0x84, 0x74, 0x8f, 0xf6, 0x3e, 0x4c, 0xe6, 0xe8, 0xa8, 0x0e, 0x23, 0x5e, 0x21, 0x6e, 0x1a, 0x9e, 0x75, 0xba, 0x3b, 0x3a, 0x32, 0x1a, 0xf5, 0x1d, 0x2e, 0x45, 0x24, 0xad, 0x3c, 0x8b, 0xe9, 0x92, 0x88, 0x46, 0x3b, 0x91, 0x15, 0x5a, }; static const unsigned char ecdsa_secp256r1_sha3_512_7661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7661_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7661 = { .name = "ecdsa_secp256r1_sha3_512_7661", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7661_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7661_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7661_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 408 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7662 for ECDSA, tcId is 409 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7662_pubkey[] = { 0x82, 0x86, 0xd3, 0x4a, 0xfa, 0x19, 0x04, 0xae, 0x75, 0x6d, 0x73, 0xbf, 0x02, 0xa6, 0xb6, 0xa9, 0xdb, 0x1e, 0xaa, 0x1b, 0x83, 0x51, 0xad, 0x71, 0x3a, 0x78, 0x6d, 0xcf, 0xb8, 0x29, 0x13, 0x5b, 0xf9, 0x79, 0x22, 0xdf, 0xe8, 0x0c, 0xd4, 0xf0, 0xe4, 0x38, 0xa8, 0xd8, 0x42, 0xe7, 0x66, 0x68, 0x53, 0x43, 0x6d, 0x97, 0x28, 0x60, 0xf7, 0x15, 0xe6, 0x22, 0xa1, 0xe8, 0x76, 0xdb, 0x42, 0x51, }; static const unsigned char ecdsa_secp256r1_sha3_512_7662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7662_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7662 = { .name = "ecdsa_secp256r1_sha3_512_7662", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7662_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7662_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7662_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 409 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7663 for ECDSA, tcId is 410 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7663_pubkey[] = { 0x4b, 0x7b, 0x99, 0x90, 0xa6, 0xc2, 0xc5, 0xa8, 0x10, 0x10, 0x7c, 0x09, 0xee, 0x09, 0xcf, 0x33, 0x88, 0xc1, 0xa6, 0xe8, 0x2a, 0xaa, 0x44, 0xc3, 0x78, 0xd9, 0x88, 0x6e, 0x25, 0x08, 0xc2, 0xe0, 0x86, 0x7e, 0x76, 0x32, 0xfc, 0xc3, 0x12, 0xfc, 0xfd, 0xc0, 0x1f, 0xb6, 0xa5, 0x79, 0xce, 0x6a, 0xa6, 0x28, 0x55, 0x63, 0xb1, 0xad, 0xbb, 0x32, 0x72, 0xf0, 0xe1, 0x22, 0xf9, 0xde, 0x73, 0xe3, }; static const unsigned char ecdsa_secp256r1_sha3_512_7663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7663_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7663 = { .name = "ecdsa_secp256r1_sha3_512_7663", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7663_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7663_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7663_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 410 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7664 for ECDSA, tcId is 411 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7664_pubkey[] = { 0x56, 0x84, 0x26, 0x54, 0x0e, 0x19, 0xbe, 0x64, 0x04, 0xe6, 0xcb, 0x47, 0x45, 0xfc, 0x7a, 0x94, 0x3c, 0x0c, 0x05, 0x9d, 0x7c, 0x7b, 0xaf, 0x3b, 0xc4, 0xfc, 0x78, 0x2e, 0x9a, 0xed, 0xf2, 0xde, 0xba, 0x7f, 0xb2, 0x0a, 0xd1, 0x2a, 0x88, 0x6c, 0x53, 0x94, 0x5d, 0x3c, 0xdb, 0x01, 0x9a, 0xfa, 0x8b, 0x0d, 0x58, 0xed, 0x30, 0x7d, 0x55, 0xf5, 0x56, 0xac, 0xf7, 0x9e, 0xc8, 0x90, 0x12, 0xd5, }; static const unsigned char ecdsa_secp256r1_sha3_512_7664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7664_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7664 = { .name = "ecdsa_secp256r1_sha3_512_7664", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7664_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7664_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7664_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 411 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7665 for ECDSA, tcId is 412 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7665_pubkey[] = { 0x1b, 0xeb, 0xc1, 0xa6, 0x82, 0x31, 0x07, 0xd1, 0x26, 0x32, 0x19, 0xe3, 0x6d, 0x2e, 0xc1, 0x95, 0x7d, 0x20, 0xb0, 0xb4, 0x50, 0xb4, 0x81, 0xc9, 0xde, 0x46, 0xea, 0x92, 0x94, 0xd4, 0x8b, 0x66, 0x72, 0xb7, 0xa8, 0x11, 0xaf, 0x95, 0x28, 0xe6, 0x11, 0x99, 0xf4, 0xa2, 0xa7, 0xf3, 0x0d, 0x86, 0x85, 0xf5, 0xa0, 0x47, 0x67, 0xb5, 0x92, 0x76, 0xe6, 0x5a, 0x73, 0x2e, 0x8f, 0x39, 0x50, 0xa1, }; static const unsigned char ecdsa_secp256r1_sha3_512_7665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7665_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7665 = { .name = "ecdsa_secp256r1_sha3_512_7665", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7665_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7665_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7665_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 412 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7666 for ECDSA, tcId is 413 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7666_pubkey[] = { 0x08, 0xa2, 0xb7, 0xfa, 0x62, 0x5f, 0x09, 0x10, 0x6a, 0x1a, 0x8d, 0x98, 0xf8, 0x31, 0xe5, 0x3d, 0x91, 0x8f, 0xb3, 0x30, 0xd6, 0xc3, 0x88, 0xa7, 0xb8, 0x0d, 0xf9, 0x8b, 0xb9, 0xe9, 0xc9, 0x34, 0x47, 0x8d, 0xa8, 0x18, 0xb4, 0xd9, 0x40, 0x82, 0x51, 0x7f, 0xa9, 0x63, 0x5a, 0x8a, 0xa5, 0xbe, 0x05, 0x32, 0x3d, 0xe6, 0x04, 0xfc, 0xfa, 0x97, 0xbc, 0x3a, 0x1a, 0x57, 0xa5, 0xe8, 0x0c, 0x34, }; static const unsigned char ecdsa_secp256r1_sha3_512_7666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7666_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xae, 0x36, 0x70, 0x1f, 0x24, 0x1f, 0x60, 0x73, 0x60, 0x8b, 0x5f, 0x77, 0xd9, 0x03, 0x9a, 0x9a, 0xec, 0x44, 0xaa, 0x5a, 0x12, 0xa9, 0x92, 0x27, 0xfd, 0x29, 0x11, 0xb0, 0x01, 0x91, 0x5d, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7666 = { .name = "ecdsa_secp256r1_sha3_512_7666", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7666_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7666_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7666_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 413 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7667 for ECDSA, tcId is 414 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7667_pubkey[] = { 0x08, 0xa2, 0xb7, 0xfa, 0x62, 0x5f, 0x09, 0x10, 0x6a, 0x1a, 0x8d, 0x98, 0xf8, 0x31, 0xe5, 0x3d, 0x91, 0x8f, 0xb3, 0x30, 0xd6, 0xc3, 0x88, 0xa7, 0xb8, 0x0d, 0xf9, 0x8b, 0xb9, 0xe9, 0xc9, 0x34, 0xb8, 0x72, 0x57, 0xe6, 0x4b, 0x26, 0xbf, 0x7e, 0xae, 0x80, 0x56, 0x9c, 0xa5, 0x75, 0x5a, 0x41, 0xfa, 0xcd, 0xc2, 0x1a, 0xfb, 0x03, 0x05, 0x68, 0x43, 0xc5, 0xe5, 0xa8, 0x5a, 0x17, 0xf3, 0xcb, }; static const unsigned char ecdsa_secp256r1_sha3_512_7667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7667_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xae, 0x36, 0x70, 0x1f, 0x24, 0x1f, 0x60, 0x73, 0x60, 0x8b, 0x5f, 0x77, 0xd9, 0x03, 0x9a, 0x9a, 0xec, 0x44, 0xaa, 0x5a, 0x12, 0xa9, 0x92, 0x27, 0xfd, 0x29, 0x11, 0xb0, 0x01, 0x91, 0x5d, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7667 = { .name = "ecdsa_secp256r1_sha3_512_7667", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7667_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7667_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7667_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 414 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7668 for ECDSA, tcId is 415 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7668_pubkey[] = { 0x69, 0xaa, 0xc6, 0x89, 0x7b, 0x04, 0x57, 0xe5, 0x4c, 0xac, 0x25, 0xf2, 0x45, 0x90, 0xbe, 0x25, 0x5d, 0x35, 0x2a, 0x20, 0x05, 0x50, 0x04, 0xe7, 0xca, 0xa7, 0xcb, 0xb4, 0x30, 0xb3, 0xc9, 0x0f, 0x91, 0x13, 0xbf, 0xfe, 0x22, 0x0d, 0xb9, 0x14, 0x3e, 0x38, 0x51, 0x4d, 0xa0, 0x48, 0x1d, 0xf6, 0x7f, 0x17, 0x17, 0xc5, 0x8a, 0xab, 0x1a, 0x18, 0x9f, 0xb9, 0xd4, 0xf6, 0xe5, 0x3c, 0x39, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_512_7668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7668_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7668 = { .name = "ecdsa_secp256r1_sha3_512_7668", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7668_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7668_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7668_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 415 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7669 for ECDSA, tcId is 416 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7669_pubkey[] = { 0x44, 0x9f, 0xf6, 0xdd, 0xbe, 0xc4, 0xbf, 0x9b, 0xcc, 0x31, 0x49, 0xb8, 0xdf, 0xe4, 0x80, 0xf9, 0xa6, 0x77, 0xc3, 0xb8, 0xe2, 0x03, 0xd2, 0x72, 0xf3, 0xe0, 0xa2, 0xcf, 0x90, 0xa2, 0xce, 0xa7, 0x87, 0xfc, 0xbc, 0x07, 0x99, 0xa9, 0x32, 0x3d, 0xa3, 0xf7, 0xfd, 0xdb, 0x48, 0x18, 0xb8, 0x9b, 0x1d, 0x97, 0xb3, 0x2b, 0x96, 0x2e, 0x1b, 0x3e, 0xda, 0xd2, 0xfb, 0xed, 0x47, 0xb5, 0x8d, 0x41, }; static const unsigned char ecdsa_secp256r1_sha3_512_7669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7669_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7669 = { .name = "ecdsa_secp256r1_sha3_512_7669", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7669_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7669_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7669_sig, .siglen = 65, .result = -1, .comment = "point with x-coordinate 0, tcId is 416 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7670 for ECDSA, tcId is 417 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7670_pubkey[] = { 0xb2, 0x82, 0xb1, 0xb5, 0xbc, 0x00, 0xc2, 0xbb, 0x18, 0xf2, 0x8c, 0xe6, 0x78, 0xe1, 0xcd, 0x48, 0xc8, 0xce, 0xd8, 0x33, 0x5a, 0xf5, 0xd8, 0xe4, 0xab, 0xd3, 0xd7, 0xa7, 0xd3, 0x61, 0x6f, 0x56, 0x3d, 0x47, 0xa5, 0x5d, 0xdc, 0x11, 0xe9, 0x66, 0xfd, 0xe2, 0xbd, 0x87, 0xb0, 0x28, 0xe6, 0x2f, 0xc8, 0x13, 0x3d, 0xef, 0x82, 0x4e, 0x3e, 0x00, 0x52, 0x8f, 0x24, 0x42, 0x90, 0x8f, 0xe8, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha3_512_7670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7670_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7670 = { .name = "ecdsa_secp256r1_sha3_512_7670", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7670_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7670_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7670_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 417 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7671 for ECDSA, tcId is 418 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7671_pubkey[] = { 0xfa, 0xcb, 0xd6, 0xf5, 0xe9, 0x96, 0x28, 0x4a, 0x53, 0xcb, 0x1c, 0xa4, 0x1f, 0xfc, 0x4e, 0xb0, 0xa3, 0xfd, 0x73, 0xb7, 0x3c, 0x73, 0x01, 0x94, 0x01, 0x11, 0x69, 0xb9, 0xad, 0xa1, 0x45, 0x19, 0xc5, 0x49, 0x1e, 0xde, 0x60, 0x61, 0x4d, 0x82, 0x3b, 0x49, 0x11, 0x98, 0xdf, 0x7b, 0xc6, 0xc6, 0x76, 0x8e, 0x06, 0x4e, 0x0e, 0x43, 0xb7, 0xf0, 0x53, 0xab, 0x8f, 0x27, 0x9c, 0xd4, 0xf4, 0xec, }; static const unsigned char ecdsa_secp256r1_sha3_512_7671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7671_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7671 = { .name = "ecdsa_secp256r1_sha3_512_7671", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7671_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7671_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7671_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 418 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7672 for ECDSA, tcId is 419 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7672_pubkey[] = { 0xa0, 0x11, 0x80, 0x1d, 0x52, 0xa7, 0x5f, 0x48, 0x41, 0xe4, 0x02, 0x40, 0xda, 0x49, 0xdd, 0xa8, 0xf3, 0x8e, 0x86, 0x8b, 0x4e, 0x6f, 0x94, 0x1f, 0x77, 0xca, 0x9b, 0x86, 0x66, 0x5a, 0xd5, 0xa7, 0x47, 0x51, 0xea, 0xbf, 0x00, 0xfc, 0x2a, 0x7a, 0x86, 0x3f, 0xec, 0x36, 0x69, 0x75, 0xed, 0xbc, 0xd4, 0x88, 0x56, 0x93, 0x02, 0x2c, 0xd7, 0x55, 0xc0, 0xd8, 0x93, 0x6e, 0x66, 0x0d, 0x61, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha3_512_7672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7672_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7672 = { .name = "ecdsa_secp256r1_sha3_512_7672", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7672_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7672_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7672_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 419 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7673 for ECDSA, tcId is 420 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7673_pubkey[] = { 0xfd, 0xfa, 0x5d, 0x35, 0xe4, 0x2e, 0xf9, 0x1b, 0x18, 0x42, 0xc9, 0xf2, 0x8a, 0xeb, 0x6c, 0x68, 0xbd, 0x77, 0x32, 0x93, 0x5f, 0x74, 0x81, 0x68, 0xde, 0xb7, 0x18, 0xe6, 0x66, 0x08, 0xb9, 0x80, 0xd6, 0xf8, 0x5f, 0xa6, 0x78, 0xdf, 0x3c, 0xab, 0xb5, 0x5b, 0x50, 0x02, 0xe6, 0x3b, 0x55, 0xd7, 0xca, 0xe1, 0x1e, 0x89, 0xf7, 0x49, 0x40, 0xb7, 0x99, 0x0a, 0x3b, 0x16, 0x7d, 0xfa, 0x19, 0x1b, }; static const unsigned char ecdsa_secp256r1_sha3_512_7673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7673_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7673 = { .name = "ecdsa_secp256r1_sha3_512_7673", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7673_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7673_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7673_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 420 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7674 for ECDSA, tcId is 421 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7674_pubkey[] = { 0x07, 0x54, 0xde, 0x71, 0xbd, 0x21, 0xf1, 0x4f, 0x49, 0x27, 0xbd, 0xab, 0x77, 0xef, 0xc5, 0x7f, 0x14, 0x8b, 0x36, 0x27, 0x5c, 0x30, 0x5a, 0x86, 0xc1, 0xd7, 0xa0, 0xdc, 0xfd, 0x53, 0xba, 0xb4, 0x98, 0x9f, 0xc9, 0x9b, 0xc7, 0x25, 0xda, 0x84, 0x19, 0x7c, 0x2f, 0x28, 0x4e, 0xcc, 0x60, 0x30, 0x48, 0x9e, 0xda, 0x77, 0xef, 0x92, 0xf8, 0x68, 0x01, 0x30, 0x62, 0x2b, 0x63, 0x1a, 0xf2, 0xb3, }; static const unsigned char ecdsa_secp256r1_sha3_512_7674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7674_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7674 = { .name = "ecdsa_secp256r1_sha3_512_7674", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7674_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7674_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7674_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7675 for ECDSA, tcId is 422 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7675_pubkey[] = { 0x8a, 0xad, 0x84, 0xfd, 0x5d, 0x52, 0xaf, 0xd5, 0x31, 0xf1, 0x06, 0x8f, 0xb7, 0xa1, 0x0b, 0xb3, 0x65, 0xfa, 0xef, 0xa8, 0x99, 0x75, 0x59, 0x71, 0x87, 0x47, 0x0d, 0x04, 0xa8, 0xc9, 0xc8, 0xb3, 0x27, 0x25, 0x8e, 0x32, 0xd1, 0x9c, 0xd5, 0x8d, 0xdf, 0xd3, 0x5b, 0xd7, 0xea, 0x1f, 0x06, 0x3c, 0x77, 0xc6, 0x1b, 0x78, 0x79, 0x45, 0x1b, 0xdd, 0x3e, 0x8f, 0x44, 0xcb, 0xf4, 0x02, 0x41, 0xa2, }; static const unsigned char ecdsa_secp256r1_sha3_512_7675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7675_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7675 = { .name = "ecdsa_secp256r1_sha3_512_7675", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7675_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7675_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7675_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7676 for ECDSA, tcId is 423 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7676_pubkey[] = { 0xb4, 0xa0, 0x1e, 0xc7, 0xb1, 0x0a, 0xcf, 0xf3, 0xda, 0xce, 0x05, 0x22, 0x2f, 0xae, 0x05, 0xc7, 0x53, 0x68, 0xa3, 0x75, 0xd8, 0xce, 0x1f, 0xaf, 0x4a, 0x1b, 0x2d, 0xef, 0x1a, 0xb7, 0x15, 0xab, 0x61, 0xa6, 0x64, 0x2e, 0x82, 0xff, 0x95, 0x0f, 0x37, 0x3a, 0xce, 0x5c, 0x0c, 0xc2, 0x98, 0x63, 0x9a, 0xb9, 0xae, 0x73, 0x9e, 0x46, 0x14, 0xa9, 0x3f, 0xb1, 0x12, 0x2e, 0xe1, 0x6d, 0x92, 0x2f, }; static const unsigned char ecdsa_secp256r1_sha3_512_7676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7676_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7676 = { .name = "ecdsa_secp256r1_sha3_512_7676", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7676_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7676_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7676_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 423 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7677 for ECDSA, tcId is 424 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7677_pubkey[] = { 0x4e, 0xfc, 0x2b, 0xef, 0x42, 0xb1, 0x1e, 0x09, 0x29, 0xed, 0xca, 0x3b, 0x02, 0x5f, 0x01, 0xb1, 0xfa, 0x37, 0xac, 0xee, 0xf4, 0xcd, 0x3e, 0x8c, 0x2d, 0x4b, 0xea, 0xb5, 0x00, 0x85, 0x6a, 0xf8, 0x77, 0x16, 0x82, 0x8f, 0xc1, 0x78, 0x8c, 0x88, 0x1a, 0xe3, 0x9f, 0x53, 0x4c, 0x3e, 0x27, 0x0c, 0xa8, 0x69, 0xa5, 0x78, 0x21, 0x0b, 0x5d, 0xad, 0x8a, 0x89, 0x38, 0x69, 0x1d, 0x0c, 0x4b, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_512_7677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7677_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7677 = { .name = "ecdsa_secp256r1_sha3_512_7677", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7677_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7677_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7677_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 424 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7678 for ECDSA, tcId is 425 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7678_pubkey[] = { 0x46, 0x06, 0xb9, 0xfc, 0xee, 0xcc, 0x47, 0xba, 0xbc, 0xc7, 0x8d, 0xe7, 0x3c, 0xa5, 0x56, 0x72, 0xf0, 0x99, 0x30, 0xaa, 0xcd, 0x56, 0x0d, 0xb0, 0xa2, 0x96, 0x7a, 0x99, 0xef, 0x8a, 0x59, 0x5e, 0x61, 0x2a, 0x05, 0x00, 0x25, 0x78, 0x5c, 0x0e, 0x7c, 0x77, 0x63, 0xdb, 0x0b, 0xb5, 0x3c, 0x48, 0xb6, 0xff, 0x0e, 0xd1, 0xdf, 0xb6, 0x05, 0x5d, 0xf9, 0x02, 0x99, 0xe2, 0x95, 0x09, 0x29, 0x90, }; static const unsigned char ecdsa_secp256r1_sha3_512_7678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7678_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7678 = { .name = "ecdsa_secp256r1_sha3_512_7678", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7678_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7678_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7678_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 425 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7679 for ECDSA, tcId is 426 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7679_pubkey[] = { 0xb6, 0xde, 0x6d, 0xe2, 0x67, 0x72, 0x0d, 0x16, 0xbc, 0xcf, 0x71, 0xfd, 0xbe, 0x07, 0xeb, 0xe5, 0xc1, 0x14, 0x9f, 0x8c, 0xfb, 0x20, 0x41, 0xb1, 0xd6, 0xca, 0xbb, 0xc9, 0xb6, 0x65, 0x6d, 0x68, 0x2d, 0x3e, 0x21, 0xf4, 0x02, 0x5d, 0xdc, 0xac, 0xab, 0x03, 0x5b, 0x5d, 0xa6, 0x31, 0x03, 0x61, 0x10, 0x20, 0x79, 0xf1, 0xb4, 0x0c, 0x1e, 0xf7, 0xc7, 0xb8, 0x84, 0x27, 0x69, 0x4c, 0x11, 0xc6, }; static const unsigned char ecdsa_secp256r1_sha3_512_7679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7679_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7679 = { .name = "ecdsa_secp256r1_sha3_512_7679", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7679_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7679_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7679_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 426 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7680 for ECDSA, tcId is 427 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7680_pubkey[] = { 0xef, 0xd3, 0xbd, 0x12, 0x99, 0xd4, 0xb2, 0xbb, 0x0a, 0xfb, 0xce, 0x2a, 0xfd, 0x90, 0x79, 0x2d, 0x8c, 0x72, 0xe1, 0xd2, 0x9c, 0x60, 0x92, 0xe4, 0x68, 0x15, 0x40, 0x42, 0x06, 0x64, 0xe2, 0x75, 0x39, 0x0a, 0x4d, 0xbb, 0x20, 0xd1, 0x0f, 0x73, 0x60, 0xc5, 0xb7, 0x94, 0x56, 0x4d, 0xcd, 0x44, 0x3b, 0xb1, 0xdf, 0x94, 0xbf, 0x6b, 0x1f, 0x4b, 0xe5, 0x90, 0x9a, 0x22, 0xa6, 0xa5, 0x34, 0xba, }; static const unsigned char ecdsa_secp256r1_sha3_512_7680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7680_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7680 = { .name = "ecdsa_secp256r1_sha3_512_7680", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7680_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7680_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7680_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 427 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7681 for ECDSA, tcId is 428 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7681_pubkey[] = { 0xda, 0xe9, 0xcf, 0x16, 0x58, 0x67, 0xda, 0x64, 0x82, 0xed, 0xe8, 0x4b, 0xfc, 0x5b, 0x94, 0x37, 0x55, 0x29, 0xbc, 0xb9, 0x53, 0xf2, 0x6d, 0x0c, 0xd6, 0x8f, 0xc8, 0x77, 0x08, 0x8f, 0x78, 0xd9, 0x51, 0xca, 0xdc, 0x9f, 0x61, 0xc5, 0x5f, 0x8e, 0x2a, 0x04, 0xdb, 0xaa, 0xe1, 0x25, 0x1f, 0xd1, 0x5c, 0xb1, 0x2d, 0xf9, 0xbc, 0xd0, 0x72, 0xa5, 0x19, 0x71, 0x12, 0x7e, 0xaa, 0x6c, 0xe6, 0x12, }; static const unsigned char ecdsa_secp256r1_sha3_512_7681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7681_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7681 = { .name = "ecdsa_secp256r1_sha3_512_7681", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7681_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7681_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7681_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 428 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7682 for ECDSA, tcId is 429 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7682_pubkey[] = { 0x84, 0x18, 0x92, 0x4e, 0x94, 0x16, 0x1d, 0x35, 0x0c, 0x9f, 0xe8, 0xdc, 0x1c, 0xc0, 0x87, 0xde, 0x4b, 0x44, 0x91, 0xd0, 0xbc, 0x69, 0x4a, 0x68, 0x62, 0xdf, 0x4e, 0x8a, 0x55, 0x5f, 0x9a, 0xfb, 0xb0, 0xb3, 0x91, 0xaf, 0x97, 0xb0, 0xda, 0xcb, 0xdc, 0xeb, 0x7a, 0x98, 0x27, 0x81, 0xd0, 0x09, 0x09, 0x78, 0xef, 0xbf, 0x76, 0xb8, 0xe6, 0x91, 0x42, 0x50, 0xe9, 0x2a, 0xde, 0x9a, 0x61, 0x26, }; static const unsigned char ecdsa_secp256r1_sha3_512_7682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7682_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7682 = { .name = "ecdsa_secp256r1_sha3_512_7682", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7682_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7682_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7682_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 429 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7683 for ECDSA, tcId is 430 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7683_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha3_512_7683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7683_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7683 = { .name = "ecdsa_secp256r1_sha3_512_7683", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7683_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7683_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7683_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 430 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7684 for ECDSA, tcId is 431 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7684_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha3_512_7684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7684_sig[] = { 0xcb, 0xd2, 0x51, 0x89, 0xe5, 0x9c, 0x5c, 0x36, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x12, 0xc1, 0x94, 0xca, 0xdf, 0x35, 0x3d, 0x63, 0x31, 0xf9, 0xf5, 0x7f, 0xa8, 0x1b, 0x33, 0x8e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7684 = { .name = "ecdsa_secp256r1_sha3_512_7684", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7684_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7684_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7684_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 431 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7685 for ECDSA, tcId is 432 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7685_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha3_512_7685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7685_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7685 = { .name = "ecdsa_secp256r1_sha3_512_7685", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7685_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7685_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7685_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 432 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7686 for ECDSA, tcId is 433 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7686_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha3_512_7686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7686_sig[] = { 0xcb, 0xd2, 0x51, 0x89, 0xe5, 0x9c, 0x5c, 0x36, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x12, 0xc1, 0x94, 0xca, 0xdf, 0x35, 0x3d, 0x63, 0x31, 0xf9, 0xf5, 0x7f, 0xa8, 0x1b, 0x33, 0x8e, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7686 = { .name = "ecdsa_secp256r1_sha3_512_7686", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7686_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7686_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7686_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 433 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7687 for ECDSA, tcId is 434 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7687_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7687_sig[] = { 0xdd, 0xb5, 0x77, 0x67, 0x0d, 0x5a, 0x9b, 0x93, 0x66, 0x6d, 0xf2, 0xaf, 0x7f, 0x9b, 0xaa, 0xdd, 0x82, 0x56, 0xfc, 0xa0, 0xc8, 0x1d, 0xeb, 0x2d, 0x5c, 0xd7, 0x30, 0x1a, 0x4b, 0x39, 0x10, 0x5f, 0xa2, 0xbc, 0xd9, 0xf6, 0x22, 0x8a, 0x0a, 0xa0, 0xa4, 0xf0, 0x66, 0xaa, 0x67, 0x4b, 0x9b, 0x08, 0xda, 0x25, 0x2b, 0x02, 0xa7, 0x7f, 0xd1, 0xb2, 0xf7, 0xa2, 0xd8, 0x59, 0x29, 0xe8, 0xb4, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7687 = { .name = "ecdsa_secp256r1_sha3_512_7687", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7687_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha3_512_7687_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 434 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7688 for ECDSA, tcId is 435 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7688_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7688_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha3_512_7688_sig[] = { 0x53, 0x2d, 0x67, 0x2c, 0x30, 0x7d, 0xa2, 0x89, 0x17, 0x20, 0xd1, 0x14, 0x22, 0x03, 0x5e, 0xa2, 0x57, 0x71, 0xf4, 0xfc, 0xe0, 0xdc, 0x99, 0x48, 0xd7, 0x54, 0xca, 0x4f, 0x66, 0xef, 0x36, 0xbb, 0x4f, 0x29, 0x61, 0x81, 0x79, 0x9d, 0x3e, 0x67, 0x80, 0x08, 0x6d, 0x69, 0x08, 0xab, 0x86, 0x42, 0x71, 0x1b, 0xd4, 0x06, 0xe4, 0x81, 0xb0, 0xce, 0x3a, 0xf1, 0xc4, 0x4b, 0x9f, 0x09, 0x84, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7688 = { .name = "ecdsa_secp256r1_sha3_512_7688", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7688_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7688_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha3_512_7688_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 435 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7689 for ECDSA, tcId is 436 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7689_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha3_512_7689_sig[] = { 0x1c, 0x58, 0xcd, 0xe6, 0x9d, 0xdb, 0x36, 0x3e, 0x7a, 0x6d, 0x26, 0x12, 0x77, 0x1b, 0x3e, 0x71, 0x3b, 0xe8, 0xbe, 0xd0, 0x7f, 0x37, 0xbc, 0xda, 0x48, 0x75, 0xf1, 0x52, 0xdb, 0x2a, 0xc1, 0xad, 0xa6, 0x67, 0x55, 0xb0, 0x78, 0x26, 0x2b, 0x6b, 0x0d, 0x90, 0xc7, 0x4a, 0xee, 0x64, 0x52, 0x21, 0x04, 0xaa, 0x58, 0xb5, 0xf8, 0x2f, 0xc5, 0xba, 0x98, 0xbc, 0xef, 0x5b, 0xdb, 0x9d, 0x43, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7689 = { .name = "ecdsa_secp256r1_sha3_512_7689", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7689_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7689_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha3_512_7689_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 436 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7690 for ECDSA, tcId is 437 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7690_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7690_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_512_7690_sig[] = { 0x66, 0x37, 0xf1, 0x43, 0x69, 0xd1, 0xdd, 0x11, 0x2c, 0x56, 0x91, 0x96, 0x9f, 0xcc, 0x86, 0x7e, 0x64, 0xba, 0xfb, 0x1f, 0x5d, 0x8f, 0x91, 0x7a, 0x9a, 0xcf, 0x8e, 0xcf, 0x1d, 0xc9, 0x57, 0x54, 0x45, 0x7b, 0x4a, 0x8b, 0xdd, 0x1c, 0x04, 0x7b, 0x12, 0x82, 0x68, 0x97, 0x99, 0x12, 0x41, 0x70, 0x0d, 0xad, 0x09, 0x66, 0x6b, 0x4f, 0x41, 0x0a, 0x56, 0x99, 0x30, 0x23, 0xb0, 0x98, 0xfd, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7690 = { .name = "ecdsa_secp256r1_sha3_512_7690", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7690_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7690_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha3_512_7690_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 437 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7691 for ECDSA, tcId is 438 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7691_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_512_7691_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7691_sig[] = { 0xef, 0x9a, 0x46, 0x72, 0xe0, 0xa0, 0x7a, 0x0e, 0xfd, 0x59, 0x36, 0xa7, 0x7f, 0x4e, 0xa0, 0xfc, 0xd6, 0x9d, 0xae, 0x6f, 0xd9, 0x5c, 0xcb, 0xa8, 0xdc, 0xb6, 0x85, 0xe7, 0x49, 0x06, 0x23, 0xc3, 0xcf, 0x13, 0x5d, 0x42, 0xf5, 0xe3, 0x79, 0xf6, 0xef, 0x94, 0xb6, 0xa4, 0x93, 0xdb, 0x01, 0xc7, 0x40, 0xf4, 0x41, 0xff, 0x5b, 0x24, 0x75, 0x63, 0x8b, 0x6b, 0x08, 0x1f, 0x44, 0x5b, 0x17, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7691 = { .name = "ecdsa_secp256r1_sha3_512_7691", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7691_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7691_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7691_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 438 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7692 for ECDSA, tcId is 439 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7692_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_512_7692_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7692_sig[] = { 0xb8, 0xcb, 0x05, 0xb2, 0x78, 0xc1, 0x5d, 0xf7, 0xc6, 0xa3, 0x11, 0xb0, 0xce, 0x7b, 0xb5, 0x59, 0x8f, 0xe3, 0xa9, 0x5f, 0xdb, 0x57, 0x68, 0x3a, 0xc0, 0x82, 0x1a, 0xa2, 0xf5, 0xd6, 0xfa, 0x18, 0xa9, 0xdf, 0xa1, 0xcc, 0x0c, 0x9a, 0xe0, 0x01, 0x5a, 0xe2, 0x48, 0x5f, 0x22, 0xed, 0x6b, 0x09, 0x25, 0xe8, 0x2d, 0x96, 0xff, 0x69, 0x5b, 0x8c, 0x2e, 0xd5, 0x93, 0xf0, 0x27, 0x19, 0xf3, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7692 = { .name = "ecdsa_secp256r1_sha3_512_7692", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7692_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7692_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7692_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 439 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7693 for ECDSA, tcId is 440 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7693_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha3_512_7693_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7693_sig[] = { 0x2f, 0xe6, 0xf2, 0xaa, 0xed, 0x0e, 0xb7, 0x60, 0x22, 0x3e, 0x8c, 0x58, 0x03, 0x63, 0x63, 0x0d, 0x30, 0x41, 0x61, 0x48, 0x06, 0xe7, 0xfb, 0xc8, 0x63, 0x40, 0x5a, 0xa4, 0xd9, 0x88, 0x25, 0xee, 0xf5, 0xd2, 0xc3, 0x96, 0xe4, 0x5d, 0x9a, 0xf9, 0xfe, 0x1b, 0x06, 0xb2, 0x7f, 0x0d, 0xb4, 0xd9, 0xee, 0x66, 0xe1, 0x85, 0x5f, 0x48, 0x46, 0xda, 0xe5, 0xdb, 0x6b, 0x3d, 0x8a, 0xfb, 0xc4, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7693 = { .name = "ecdsa_secp256r1_sha3_512_7693", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7693_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7693_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7693_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 440 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7694 for ECDSA, tcId is 441 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7694_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_512_7694_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7694_sig[] = { 0xfb, 0x9e, 0x31, 0x2c, 0xed, 0x9f, 0x95, 0xc9, 0x12, 0x48, 0xba, 0xe2, 0x50, 0x56, 0xb7, 0xbb, 0xd8, 0x4a, 0x05, 0xfc, 0x92, 0xac, 0xbd, 0x30, 0x42, 0x69, 0xa1, 0x26, 0x9b, 0xbf, 0x4f, 0x4c, 0xf3, 0x14, 0x26, 0xa8, 0x09, 0xce, 0xeb, 0xb3, 0x69, 0x27, 0x8a, 0x51, 0x82, 0xbc, 0xe9, 0x48, 0x35, 0xf0, 0x66, 0xca, 0xb8, 0x65, 0x4f, 0x8b, 0xd2, 0x33, 0x95, 0x95, 0x84, 0x42, 0x44, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7694 = { .name = "ecdsa_secp256r1_sha3_512_7694", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7694_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7694_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7694_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 441 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7695 for ECDSA, tcId is 442 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7695_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_512_7695_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7695_sig[] = { 0x28, 0x4f, 0xe5, 0xf1, 0xc8, 0x6a, 0x55, 0xfc, 0xb3, 0xc2, 0x7a, 0x12, 0xd8, 0x2d, 0x79, 0x4e, 0xab, 0x9a, 0x0d, 0x76, 0xd1, 0xfd, 0xc4, 0xf2, 0x5d, 0xf5, 0xa9, 0xbf, 0x52, 0xe8, 0xe7, 0x68, 0x7a, 0xaa, 0x75, 0xe5, 0xa7, 0x94, 0x8b, 0xe6, 0x6f, 0x06, 0xce, 0x52, 0xfc, 0x3e, 0x49, 0x16, 0xfc, 0x93, 0x51, 0x4b, 0x08, 0xc5, 0x1f, 0x84, 0xb7, 0x38, 0x39, 0xd2, 0xc0, 0x5a, 0xcf, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7695 = { .name = "ecdsa_secp256r1_sha3_512_7695", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7695_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7695_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7695_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 442 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7696 for ECDSA, tcId is 443 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7696_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha3_512_7696_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7696_sig[] = { 0x81, 0x29, 0x50, 0x44, 0x9a, 0xb9, 0x03, 0x51, 0xab, 0x0f, 0x12, 0x47, 0x74, 0xa2, 0x63, 0x36, 0x25, 0xd0, 0x87, 0x1d, 0x42, 0xa6, 0x9d, 0x2e, 0x47, 0x3d, 0x8a, 0xc1, 0x18, 0xb5, 0x06, 0xa6, 0x50, 0xc9, 0x88, 0x78, 0xc3, 0x69, 0x9c, 0x34, 0xf3, 0x04, 0x9e, 0x6f, 0x94, 0x96, 0xe3, 0x19, 0x9f, 0xb5, 0xd8, 0x60, 0x23, 0x29, 0x95, 0x20, 0x5f, 0x17, 0x61, 0xc0, 0x00, 0xaf, 0x4e, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7696 = { .name = "ecdsa_secp256r1_sha3_512_7696", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7696_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7696_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7696_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 443 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7697 for ECDSA, tcId is 444 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7697_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_512_7697_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7697_sig[] = { 0xea, 0xa4, 0xf3, 0xa8, 0x80, 0x5c, 0x60, 0xcf, 0xf7, 0x4c, 0xec, 0x78, 0xc6, 0xb7, 0xce, 0xa7, 0x1e, 0xf1, 0x16, 0xc3, 0x33, 0x61, 0x2a, 0x6e, 0x00, 0x96, 0xa4, 0xc4, 0x24, 0x50, 0x93, 0x6b, 0xfb, 0xb3, 0x50, 0x8d, 0x66, 0x92, 0xb8, 0xe0, 0x85, 0x4c, 0x1a, 0x17, 0x49, 0xea, 0x06, 0x52, 0x62, 0xba, 0xe7, 0xc8, 0xb8, 0x31, 0xec, 0xe8, 0x95, 0xa1, 0xee, 0xda, 0x01, 0xce, 0xbe, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7697 = { .name = "ecdsa_secp256r1_sha3_512_7697", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7697_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7697_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7697_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 444 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7698 for ECDSA, tcId is 445 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7698_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_512_7698_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7698_sig[] = { 0x3d, 0x0c, 0xac, 0xa4, 0x4c, 0x21, 0xd3, 0x4c, 0xfd, 0xcf, 0xb0, 0x00, 0x98, 0xc9, 0x52, 0x03, 0xe0, 0x88, 0x47, 0xf4, 0xaa, 0xba, 0xb5, 0xae, 0x6e, 0xa7, 0xf3, 0x65, 0xae, 0xfb, 0xbc, 0xf8, 0xbb, 0x99, 0xbe, 0x72, 0x9e, 0x51, 0xcf, 0xd1, 0x67, 0xda, 0xd2, 0x21, 0x82, 0x38, 0x33, 0x14, 0xc9, 0xd8, 0x54, 0x32, 0x30, 0x9c, 0xbe, 0x36, 0xf4, 0xb1, 0xeb, 0x73, 0xe7, 0x76, 0xb2, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7698 = { .name = "ecdsa_secp256r1_sha3_512_7698", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7698_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7698_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7698_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 445 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7699 for ECDSA, tcId is 446 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7699_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha3_512_7699_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7699_sig[] = { 0xe4, 0xf8, 0xb2, 0x7c, 0x3c, 0x2c, 0x5c, 0xb2, 0xa6, 0xcb, 0x9c, 0x20, 0x49, 0x01, 0x1d, 0xd1, 0x06, 0x00, 0x85, 0xc6, 0xe2, 0xa1, 0x53, 0x80, 0xbc, 0xf5, 0x22, 0x40, 0x63, 0xd3, 0xae, 0x08, 0x4b, 0x3a, 0x19, 0xf1, 0xbe, 0x94, 0x5c, 0xd6, 0x49, 0xf3, 0x4d, 0x96, 0x5e, 0x7e, 0xec, 0xac, 0x0a, 0x05, 0xac, 0x80, 0x30, 0xb7, 0xcd, 0x2d, 0x6b, 0xed, 0x84, 0x08, 0x6f, 0xda, 0x56, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7699 = { .name = "ecdsa_secp256r1_sha3_512_7699", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7699_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7699_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7699_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 446 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7700 for ECDSA, tcId is 447 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7700_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7700_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7700_sig[] = { 0x67, 0x0c, 0xe6, 0x0d, 0x0f, 0xc7, 0x22, 0x4c, 0x8d, 0x06, 0xf3, 0xb0, 0x1c, 0x44, 0x16, 0xee, 0x0b, 0x3a, 0xc1, 0x2f, 0x0c, 0xff, 0x3e, 0x1a, 0xd2, 0x14, 0x89, 0x83, 0x89, 0xeb, 0xc8, 0x19, 0x45, 0xda, 0x7b, 0x6f, 0xc8, 0xf4, 0xf7, 0x66, 0xf8, 0x2c, 0x51, 0x32, 0x73, 0x5f, 0x2e, 0xd9, 0x41, 0x30, 0x78, 0x0b, 0x44, 0x4e, 0x2e, 0x10, 0xc1, 0x48, 0x4d, 0x5e, 0x45, 0xf6, 0x43, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7700 = { .name = "ecdsa_secp256r1_sha3_512_7700", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7700_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7700_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7700_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7701 for ECDSA, tcId is 448 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7701_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7701_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7701_sig[] = { 0xa2, 0x29, 0x28, 0xb3, 0x02, 0x2f, 0xd5, 0x54, 0x67, 0x0a, 0x86, 0xed, 0x51, 0x9a, 0x48, 0xd8, 0x44, 0x8d, 0xc9, 0x08, 0x56, 0xe9, 0xc4, 0x05, 0x89, 0x07, 0x6b, 0xaf, 0xf5, 0x91, 0xe0, 0x76, 0xb4, 0x00, 0x5a, 0x89, 0xae, 0xf0, 0x27, 0xe5, 0x06, 0x3a, 0x89, 0x70, 0x9f, 0xbc, 0x66, 0xa0, 0x5e, 0xb1, 0x2d, 0x8d, 0x34, 0xaf, 0x84, 0xf3, 0x5e, 0xa7, 0xac, 0x93, 0xf7, 0xbb, 0xd4, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7701 = { .name = "ecdsa_secp256r1_sha3_512_7701", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7701_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7701_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7701_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 448 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7702 for ECDSA, tcId is 449 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7702_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha3_512_7702_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7702_sig[] = { 0xa2, 0x77, 0x18, 0x1e, 0x64, 0x1e, 0xda, 0xfb, 0xdb, 0x35, 0x98, 0x01, 0x60, 0x57, 0x91, 0xc8, 0x33, 0xff, 0x3b, 0x46, 0x2d, 0xac, 0x3c, 0x4d, 0x36, 0x08, 0xd4, 0x79, 0xc9, 0x80, 0x90, 0xff, 0x8b, 0x2a, 0xd6, 0x88, 0x80, 0xce, 0xde, 0x22, 0x90, 0xa9, 0x96, 0xfe, 0x5b, 0x70, 0x03, 0x61, 0x0c, 0x5c, 0x9f, 0x53, 0xe1, 0xdc, 0xf2, 0xcd, 0xb2, 0xad, 0x81, 0x5e, 0x2b, 0xa5, 0xc1, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7702 = { .name = "ecdsa_secp256r1_sha3_512_7702", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7702_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7702_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7702_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 449 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7703 for ECDSA, tcId is 450 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7703_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_512_7703_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7703_sig[] = { 0x76, 0x0c, 0x48, 0x78, 0x41, 0xa7, 0x21, 0x4e, 0x98, 0x50, 0xb5, 0x56, 0x9d, 0x99, 0xfe, 0x3f, 0xf9, 0xdd, 0xdc, 0x41, 0xde, 0xe7, 0x31, 0x3a, 0x78, 0x09, 0x21, 0xd8, 0xd3, 0x65, 0x7b, 0x16, 0xb9, 0x9d, 0x63, 0xe3, 0xcc, 0x81, 0x45, 0x88, 0x01, 0xd5, 0xfd, 0x59, 0x26, 0x40, 0x5d, 0x33, 0xb8, 0x94, 0xe0, 0xf9, 0x6a, 0x85, 0xc3, 0xc4, 0xa9, 0x29, 0xa4, 0x5c, 0x82, 0x8d, 0x76, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7703 = { .name = "ecdsa_secp256r1_sha3_512_7703", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7703_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7703_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7703_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 450 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7704 for ECDSA, tcId is 451 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7704_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_512_7704_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7704_sig[] = { 0x9b, 0x7e, 0x72, 0xac, 0x45, 0x45, 0x05, 0x01, 0x7c, 0x53, 0x77, 0xb2, 0xc3, 0x79, 0xf3, 0x1a, 0x7a, 0x02, 0x68, 0xb7, 0x39, 0xfc, 0xa4, 0xc9, 0x7d, 0xfe, 0x1c, 0x9a, 0xa4, 0xbc, 0x54, 0x8e, 0x1e, 0x65, 0xcb, 0xee, 0x69, 0xa4, 0x2a, 0xb0, 0xa7, 0xae, 0x50, 0xe9, 0xac, 0xce, 0xaa, 0x09, 0x71, 0x57, 0x4f, 0xb6, 0x04, 0x95, 0x88, 0x76, 0xad, 0x63, 0x16, 0xc3, 0x9e, 0xeb, 0xdd, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7704 = { .name = "ecdsa_secp256r1_sha3_512_7704", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7704_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7704_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7704_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 451 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7705 for ECDSA, tcId is 452 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7705_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha3_512_7705_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7705_sig[] = { 0x4a, 0x7e, 0x44, 0xe4, 0xa8, 0xa9, 0xfe, 0xe2, 0x26, 0x47, 0x92, 0x3e, 0xae, 0xe0, 0x36, 0x8b, 0x3f, 0xa4, 0x08, 0xed, 0xaa, 0x19, 0xb4, 0x06, 0x50, 0x73, 0x09, 0xb1, 0x3e, 0x07, 0x38, 0x55, 0xfd, 0x85, 0x97, 0x58, 0x5f, 0xa0, 0x27, 0x0c, 0x8c, 0xdf, 0x85, 0x5a, 0x7a, 0x69, 0xa8, 0x43, 0xeb, 0x28, 0x12, 0x4e, 0xcf, 0x90, 0xac, 0x53, 0xa5, 0x8a, 0x84, 0x7c, 0x7b, 0x43, 0xc7, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7705 = { .name = "ecdsa_secp256r1_sha3_512_7705", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7705_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7705_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7705_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 452 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7706 for ECDSA, tcId is 453 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7706_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_512_7706_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7706_sig[] = { 0x45, 0x89, 0xf0, 0xc2, 0x4d, 0x1b, 0x2f, 0x89, 0xc2, 0xe8, 0x06, 0xf6, 0x67, 0x29, 0x7c, 0x84, 0x4c, 0x63, 0x33, 0x0d, 0x6b, 0x9a, 0x07, 0x9b, 0x2b, 0xdd, 0x2d, 0x95, 0x24, 0x7e, 0x3e, 0xae, 0x75, 0xda, 0xa1, 0xda, 0x09, 0xa3, 0xf1, 0xed, 0x8d, 0xe1, 0xaa, 0xcc, 0x70, 0x39, 0xa7, 0x21, 0xc4, 0x6f, 0x9e, 0xbc, 0xd4, 0x67, 0x27, 0x50, 0xf2, 0xfd, 0x9c, 0x2f, 0x70, 0xf1, 0xe6, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7706 = { .name = "ecdsa_secp256r1_sha3_512_7706", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7706_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7706_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7706_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 453 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7707 for ECDSA, tcId is 454 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7707_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_512_7707_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7707_sig[] = { 0x37, 0x75, 0x78, 0xa8, 0x1d, 0xa5, 0x86, 0xea, 0xe2, 0x69, 0xf0, 0x5c, 0x9b, 0xb2, 0x28, 0x0a, 0x51, 0x7a, 0xb3, 0x18, 0x4e, 0x02, 0x17, 0x9a, 0xca, 0x5d, 0x64, 0xde, 0xe1, 0xa9, 0x30, 0xc7, 0xcc, 0x17, 0x35, 0xef, 0xd4, 0xb4, 0x3e, 0x8b, 0xdb, 0xa8, 0xc1, 0xb4, 0x4f, 0x9e, 0xc3, 0xe6, 0x25, 0x77, 0xe5, 0xf4, 0xf6, 0x54, 0x30, 0x51, 0x46, 0x7b, 0xac, 0xd9, 0xea, 0xaa, 0x4d, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7707 = { .name = "ecdsa_secp256r1_sha3_512_7707", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7707_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7707_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7707_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 454 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7708 for ECDSA, tcId is 455 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7708_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha3_512_7708_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7708_sig[] = { 0x7f, 0x72, 0x27, 0x16, 0xc2, 0x79, 0xf3, 0xd1, 0x45, 0x63, 0xfb, 0xd8, 0xcb, 0xf3, 0xab, 0xcd, 0x51, 0xc3, 0x30, 0x57, 0x95, 0x60, 0x9e, 0x04, 0xc8, 0xed, 0x7e, 0xde, 0x12, 0xae, 0x25, 0x18, 0x8a, 0x99, 0x6a, 0x37, 0x06, 0x79, 0xc3, 0xce, 0x62, 0x32, 0x24, 0x4d, 0x64, 0x48, 0x1e, 0x96, 0xe4, 0x7b, 0xf6, 0x61, 0x1a, 0xa5, 0x49, 0x00, 0x00, 0xc0, 0xb1, 0xdf, 0xfc, 0x23, 0x1a, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7708 = { .name = "ecdsa_secp256r1_sha3_512_7708", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7708_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7708_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7708_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 455 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7709 for ECDSA, tcId is 456 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7709_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_512_7709_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7709_sig[] = { 0x2f, 0x11, 0xd9, 0x67, 0x79, 0x0d, 0xd4, 0x38, 0x7a, 0x21, 0x89, 0x29, 0xb3, 0xfc, 0x0f, 0x13, 0x02, 0x38, 0xec, 0x6f, 0xd9, 0x32, 0x13, 0x48, 0xfe, 0x63, 0x1a, 0x1e, 0x60, 0x7b, 0xd7, 0x42, 0x3b, 0x52, 0xa4, 0x26, 0x06, 0xd0, 0xda, 0xa1, 0x35, 0x09, 0x2d, 0x89, 0xab, 0x74, 0xb3, 0xc4, 0xe7, 0x2b, 0x4e, 0xd2, 0x13, 0x13, 0x74, 0x06, 0xd4, 0xb5, 0x0f, 0xa8, 0x4c, 0x4e, 0xa0, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7709 = { .name = "ecdsa_secp256r1_sha3_512_7709", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7709_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7709_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7709_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 456 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7710 for ECDSA, tcId is 457 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7710_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_512_7710_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7710_sig[] = { 0x19, 0x2d, 0x29, 0x9e, 0x96, 0x27, 0x2a, 0x0c, 0x49, 0xed, 0x1b, 0x15, 0xf9, 0x04, 0x7b, 0x54, 0xb4, 0x87, 0x8e, 0xaf, 0x35, 0x0a, 0x7b, 0x2f, 0x54, 0x39, 0xb1, 0xe3, 0xc8, 0x3f, 0x97, 0x03, 0x26, 0x51, 0x3e, 0x9c, 0xbb, 0xac, 0xa7, 0x94, 0x6f, 0x3d, 0x6d, 0x90, 0xb5, 0xcc, 0x65, 0xa9, 0x85, 0xcd, 0xfe, 0x08, 0x97, 0x34, 0xf9, 0x44, 0xab, 0x74, 0x84, 0x2a, 0x4d, 0xc4, 0x12, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7710 = { .name = "ecdsa_secp256r1_sha3_512_7710", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7710_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7710_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7710_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 457 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7711 for ECDSA, tcId is 458 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7711_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha3_512_7711_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7711_sig[] = { 0xeb, 0xd7, 0xa6, 0xf1, 0x45, 0x0f, 0x8b, 0xb9, 0xe9, 0xab, 0xf9, 0xf6, 0x6c, 0x41, 0x43, 0xd2, 0x8c, 0x8c, 0x84, 0x5b, 0x2e, 0x26, 0x0a, 0xb0, 0xff, 0xf3, 0xf7, 0xba, 0x58, 0x37, 0xf9, 0x44, 0x99, 0x28, 0xaf, 0xe5, 0x7d, 0xf6, 0xb8, 0xc9, 0x0b, 0x7a, 0xf7, 0xc3, 0xda, 0x98, 0x1b, 0x71, 0xdb, 0x6a, 0xe3, 0xa5, 0xa2, 0x1a, 0x4c, 0x5a, 0x48, 0xb7, 0x16, 0x28, 0xe5, 0x81, 0x1a, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7711 = { .name = "ecdsa_secp256r1_sha3_512_7711", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7711_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7711_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7711_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 458 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7712 for ECDSA, tcId is 459 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7712_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7712_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7712_sig[] = { 0x37, 0xfd, 0x00, 0xb1, 0x4f, 0xf4, 0x69, 0xa8, 0xbb, 0x4d, 0x2f, 0x9c, 0x6c, 0xa2, 0x28, 0xc4, 0xc2, 0x4b, 0x85, 0x71, 0x93, 0x89, 0xa4, 0x60, 0x99, 0x65, 0x3c, 0x41, 0x17, 0x4e, 0x9a, 0xfd, 0x5f, 0x64, 0xdc, 0x68, 0x89, 0x3c, 0xf3, 0x18, 0x6d, 0xf3, 0xe8, 0x3a, 0xf7, 0x0e, 0x96, 0xe9, 0xf2, 0x10, 0x3d, 0x25, 0xb8, 0xdd, 0xff, 0xec, 0xda, 0x96, 0xe8, 0xe9, 0x18, 0x16, 0x19, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7712 = { .name = "ecdsa_secp256r1_sha3_512_7712", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7712_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7712_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7712_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 459 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7713 for ECDSA, tcId is 460 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7713_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7713_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7713_sig[] = { 0x3c, 0xe3, 0x39, 0xa6, 0x3e, 0xa4, 0xcc, 0x1a, 0x6b, 0x12, 0xd1, 0xe6, 0x6b, 0x91, 0x20, 0x5e, 0x8a, 0xf5, 0x30, 0xee, 0xbe, 0x32, 0x08, 0x35, 0x9c, 0x53, 0x27, 0xb2, 0x42, 0xb2, 0xb6, 0x69, 0xf2, 0xb1, 0xd6, 0xda, 0xe6, 0x2b, 0xfe, 0x9c, 0x44, 0xb1, 0xcb, 0xd5, 0x6c, 0xf0, 0xde, 0x86, 0x5a, 0x12, 0x01, 0xc0, 0x48, 0x6d, 0x65, 0x8d, 0xa5, 0xfc, 0x02, 0x9a, 0xd4, 0x7b, 0x91, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7713 = { .name = "ecdsa_secp256r1_sha3_512_7713", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7713_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7713_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7713_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 460 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7714 for ECDSA, tcId is 461 in file ecdsa_secp256r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp256r1_sha3_512_7714_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha3_512_7714_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha3_512_7714_sig[] = { 0x7b, 0xf2, 0x25, 0xbe, 0xc3, 0x3c, 0xe7, 0xfb, 0x40, 0x14, 0x09, 0x7e, 0x35, 0x0c, 0x15, 0x04, 0xd3, 0x37, 0x40, 0x28, 0xcd, 0xa8, 0xf6, 0xfb, 0xba, 0xc4, 0xe0, 0xfa, 0x53, 0x19, 0xa0, 0x48, 0xaa, 0xa4, 0x5d, 0x54, 0xeb, 0xa6, 0xbb, 0x3c, 0xe0, 0x0c, 0xe8, 0xe6, 0x3d, 0xe2, 0x4d, 0xc7, 0xee, 0x19, 0x06, 0x90, 0x62, 0xe8, 0xd3, 0x40, 0x66, 0x3a, 0xdc, 0xac, 0x07, 0xf0, 0x97, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha3_512_7714 = { .name = "ecdsa_secp256r1_sha3_512_7714", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha3_512_7714_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha3_512_7714_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha3_512_7714_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 461 in file ecdsa_secp256r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) */ /* Test 7715 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7715_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7715_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x5f, 0x85, 0xa6, 0x3a, 0x5b, 0xe9, 0x77, 0xad, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf0, 0x7c, 0xad, 0xf7, 0x51, 0x3a, 0xe8, 0xcc, 0xa8, 0x6f, 0x35, 0xb7, 0x69, 0x2a, 0xaf, 0xd6, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7715 = { .name = "ecdsa_secp256r1_sha512_7715", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7715_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7715_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7715_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7716 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7716_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7716_sig[] = { 0x01, 0x24, 0x78, 0xf1, 0xcf, 0x49, 0xf6, 0xd8, 0x58, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0x61, 0xac, 0x95, 0xe2, 0x06, 0xd3, 0x2e, 0xe6, 0x30, 0x20, 0xbe, 0xee, 0x95, 0x5c, 0xa7, 0x11, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7716 = { .name = "ecdsa_secp256r1_sha512_7716", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7716_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7716_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7716_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7717 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7717_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7717_sig[] = { 0xdb, 0x87, 0x0e, 0x2e, 0xb6, 0x09, 0x27, 0xa9, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x18, 0x21, 0x5f, 0x79, 0x47, 0x5c, 0x0e, 0x23, 0xb7, 0x52, 0xd6, 0x97, 0x63, 0x69, 0xa3, 0x91, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7717 = { .name = "ecdsa_secp256r1_sha512_7717", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7717_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7717_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7717_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7718 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7718_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7718_sig[] = { 0x01, 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7718 = { .name = "ecdsa_secp256r1_sha512_7718", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7718_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7718_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7718_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7719 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7719_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7719_sig[] = { 0xdb, 0x87, 0x0e, 0x2f, 0xb6, 0x09, 0x27, 0xa8, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x5b, 0x3a, 0x64, 0xcb, 0xa0, 0x44, 0x6f, 0x9e, 0xc3, 0x99, 0x0b, 0xd4, 0x67, 0x06, 0x7e, 0x40, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7719 = { .name = "ecdsa_secp256r1_sha512_7719", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7719_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7719_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7719_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7720 for ECDSA, tcId is 6 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7720_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7720_sig[] = { 0x00, 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x01, 0xa0, 0x7a, 0x59, 0xc3, 0xa4, 0x16, 0x88, 0x54, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0e, 0xfd, 0x1f, 0xfe, 0x0a, 0x13, 0x46, 0x70, 0x61, 0x78, 0x3d, 0xde, 0x1c, 0xce, 0x16, 0x74, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7720 = { .name = "ecdsa_secp256r1_sha512_7720", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7720_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7720_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7720_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7721 for ECDSA, tcId is 7 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7721_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7721_sig[] = { 0x00, 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x01, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7721 = { .name = "ecdsa_secp256r1_sha512_7721", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7721_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7721_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7721_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7722 for ECDSA, tcId is 8 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7722_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7722_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x5f, 0x85, 0xa6, 0x3b, 0x5b, 0xe9, 0x77, 0xac, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf0, 0xbf, 0xc6, 0xfc, 0xa3, 0x93, 0xd1, 0x2e, 0x23, 0x7b, 0x7b, 0xec, 0xa6, 0x2e, 0x4c, 0xb1, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7722 = { .name = "ecdsa_secp256r1_sha512_7722", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7722_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7722_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7722_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7723 for ECDSA, tcId is 9 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7723_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7723_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7723 = { .name = "ecdsa_secp256r1_sha512_7723", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7723_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7723_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7723_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7724 for ECDSA, tcId is 10 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7724_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7724_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7724 = { .name = "ecdsa_secp256r1_sha512_7724", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7724_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7724_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7724_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7725 for ECDSA, tcId is 11 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7725_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7725_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7725 = { .name = "ecdsa_secp256r1_sha512_7725", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7725_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7725_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7725_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7726 for ECDSA, tcId is 12 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7726_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7726_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7726 = { .name = "ecdsa_secp256r1_sha512_7726", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7726_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7726_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7726_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7727 for ECDSA, tcId is 13 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7727_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7727_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7727 = { .name = "ecdsa_secp256r1_sha512_7727", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7727_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7727_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7727_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7728 for ECDSA, tcId is 14 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7728_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7728_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7728 = { .name = "ecdsa_secp256r1_sha512_7728", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7728_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7728_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7728_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7729 for ECDSA, tcId is 15 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7729_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7729_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7729 = { .name = "ecdsa_secp256r1_sha512_7729", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7729_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7729_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7729_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7730 for ECDSA, tcId is 16 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7730_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7730_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7730 = { .name = "ecdsa_secp256r1_sha512_7730", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7730_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7730_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7730_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7731 for ECDSA, tcId is 17 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7731_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7731_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7731 = { .name = "ecdsa_secp256r1_sha512_7731", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7731_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7731_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7731_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7732 for ECDSA, tcId is 18 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7732_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7732_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7732 = { .name = "ecdsa_secp256r1_sha512_7732", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7732_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7732_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7732_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7733 for ECDSA, tcId is 19 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7733_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7733_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7733 = { .name = "ecdsa_secp256r1_sha512_7733", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7733_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7733_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7733_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7734 for ECDSA, tcId is 20 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7734_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7734_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7734 = { .name = "ecdsa_secp256r1_sha512_7734", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7734_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7734_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7734_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7735 for ECDSA, tcId is 21 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7735_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7735_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7735 = { .name = "ecdsa_secp256r1_sha512_7735", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7735_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7735_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7735_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7736 for ECDSA, tcId is 22 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7736_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7736_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7736_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7736 = { .name = "ecdsa_secp256r1_sha512_7736", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7736_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7736_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7736_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7737 for ECDSA, tcId is 23 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7737_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7737_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7737 = { .name = "ecdsa_secp256r1_sha512_7737", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7737_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7737_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7737_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7738 for ECDSA, tcId is 24 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7738_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7738_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7738 = { .name = "ecdsa_secp256r1_sha512_7738", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7738_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7738_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7738_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7739 for ECDSA, tcId is 25 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7739_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7739_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7739 = { .name = "ecdsa_secp256r1_sha512_7739", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7739_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7739_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7739_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7740 for ECDSA, tcId is 26 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7740_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7740_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7740 = { .name = "ecdsa_secp256r1_sha512_7740", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7740_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7740_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7740_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7741 for ECDSA, tcId is 27 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7741_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7741_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7741 = { .name = "ecdsa_secp256r1_sha512_7741", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7741_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7741_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7741_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7742 for ECDSA, tcId is 28 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7742_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7742_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7742 = { .name = "ecdsa_secp256r1_sha512_7742", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7742_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7742_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7742_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7743 for ECDSA, tcId is 29 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7743_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7743_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7743 = { .name = "ecdsa_secp256r1_sha512_7743", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7743_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7743_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7743_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7744 for ECDSA, tcId is 30 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7744_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7744_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7744 = { .name = "ecdsa_secp256r1_sha512_7744", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7744_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7744_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7744_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7745 for ECDSA, tcId is 31 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7745_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7745_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7745 = { .name = "ecdsa_secp256r1_sha512_7745", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7745_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7745_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7745_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7746 for ECDSA, tcId is 32 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7746_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7746_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7746 = { .name = "ecdsa_secp256r1_sha512_7746", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7746_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7746_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7746_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7747 for ECDSA, tcId is 33 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7747_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7747_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7747 = { .name = "ecdsa_secp256r1_sha512_7747", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7747_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7747_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7747_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7748 for ECDSA, tcId is 34 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7748_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7748_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7748 = { .name = "ecdsa_secp256r1_sha512_7748", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7748_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7748_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7748_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7749 for ECDSA, tcId is 35 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7749_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7749_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7749 = { .name = "ecdsa_secp256r1_sha512_7749", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7749_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7749_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7749_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7750 for ECDSA, tcId is 36 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7750_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7750_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7750 = { .name = "ecdsa_secp256r1_sha512_7750", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7750_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7750_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7750_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7751 for ECDSA, tcId is 37 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7751_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7751_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7751 = { .name = "ecdsa_secp256r1_sha512_7751", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7751_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7751_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7751_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7752 for ECDSA, tcId is 38 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7752_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7752_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7752 = { .name = "ecdsa_secp256r1_sha512_7752", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7752_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7752_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7752_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7753 for ECDSA, tcId is 39 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7753_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7753_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7753 = { .name = "ecdsa_secp256r1_sha512_7753", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7753_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7753_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7753_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7754 for ECDSA, tcId is 40 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7754_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7754_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7754 = { .name = "ecdsa_secp256r1_sha512_7754", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7754_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7754_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7754_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7755 for ECDSA, tcId is 41 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7755_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7755_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7755 = { .name = "ecdsa_secp256r1_sha512_7755", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7755_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7755_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7755_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7756 for ECDSA, tcId is 42 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7756_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7756_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7756 = { .name = "ecdsa_secp256r1_sha512_7756", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7756_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7756_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7756_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7757 for ECDSA, tcId is 43 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7757_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7757_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7757 = { .name = "ecdsa_secp256r1_sha512_7757", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7757_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7757_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7757_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7758 for ECDSA, tcId is 44 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7758_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7758_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7758 = { .name = "ecdsa_secp256r1_sha512_7758", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7758_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7758_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7758_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7759 for ECDSA, tcId is 45 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7759_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7759_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7759 = { .name = "ecdsa_secp256r1_sha512_7759", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7759_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7759_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7759_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7760 for ECDSA, tcId is 46 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7760_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7760_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7760 = { .name = "ecdsa_secp256r1_sha512_7760", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7760_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7760_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7760_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7761 for ECDSA, tcId is 47 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7761_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7761_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7761 = { .name = "ecdsa_secp256r1_sha512_7761", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7761_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7761_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7761_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7762 for ECDSA, tcId is 48 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7762_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7762_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7762 = { .name = "ecdsa_secp256r1_sha512_7762", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7762_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7762_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7762_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7763 for ECDSA, tcId is 49 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7763_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7763_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7763 = { .name = "ecdsa_secp256r1_sha512_7763", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7763_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7763_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7763_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7764 for ECDSA, tcId is 50 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7764_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7764_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7764 = { .name = "ecdsa_secp256r1_sha512_7764", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7764_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7764_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7764_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7765 for ECDSA, tcId is 51 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7765_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7765_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7765 = { .name = "ecdsa_secp256r1_sha512_7765", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7765_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7765_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7765_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7766 for ECDSA, tcId is 52 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7766_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7766_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7766 = { .name = "ecdsa_secp256r1_sha512_7766", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7766_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7766_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7766_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7767 for ECDSA, tcId is 53 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7767_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7767_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7767 = { .name = "ecdsa_secp256r1_sha512_7767", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7767_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7767_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7767_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7768 for ECDSA, tcId is 54 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7768_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7768_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7768 = { .name = "ecdsa_secp256r1_sha512_7768", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7768_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7768_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7768_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7769 for ECDSA, tcId is 55 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7769_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7769_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7769 = { .name = "ecdsa_secp256r1_sha512_7769", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7769_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7769_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7769_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7770 for ECDSA, tcId is 56 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7770_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7770_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7770 = { .name = "ecdsa_secp256r1_sha512_7770", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7770_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7770_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7770_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7771 for ECDSA, tcId is 57 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7771_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7771_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7771 = { .name = "ecdsa_secp256r1_sha512_7771", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7771_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7771_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7771_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7772 for ECDSA, tcId is 58 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7772_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7772_msg[] = { 0x39, 0x32, 0x32, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7772_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x3c, 0x62, 0x3e, 0x7f, 0x75, 0x98, 0x37, 0x68, 0x25, 0xfa, 0x8b, 0xc0, 0x9e, 0x72, 0x7c, 0x75, 0x79, 0x4c, 0xbb, 0x4e, 0xe8, 0x71, 0x6a, 0xe1, 0x5c, 0x31, 0xcd, 0x1c, 0xbe, 0x9c, 0xa3, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7772 = { .name = "ecdsa_secp256r1_sha512_7772", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7772_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7772_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha512_7772_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7773 for ECDSA, tcId is 59 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7773_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7773_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7773_sig[] = { 0x3a, 0x4f, 0x61, 0xf7, 0xf8, 0xc4, 0x54, 0x6e, 0x35, 0x80, 0xf7, 0x84, 0x84, 0x11, 0x78, 0x6f, 0xee, 0x12, 0x29, 0xa0, 0x7a, 0x6e, 0xcf, 0x5f, 0xb8, 0x48, 0x70, 0x86, 0x91, 0x88, 0x21, 0x5d, 0x18, 0xc5, 0xce, 0x44, 0x35, 0x4e, 0x22, 0x74, 0xea, 0xdb, 0x8f, 0xea, 0x31, 0x9f, 0x8d, 0x6f, 0x60, 0x94, 0x45, 0x32, 0xdb, 0xaa, 0xe8, 0x6b, 0xfd, 0x81, 0x05, 0xf2, 0x53, 0x04, 0x1b, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7773 = { .name = "ecdsa_secp256r1_sha512_7773", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7773_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7773_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7773_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7774 for ECDSA, tcId is 60 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7774_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7774_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7774_sig[] = { 0x3f, 0xa9, 0x97, 0x5f, 0xb2, 0xb0, 0x8b, 0x7b, 0x6e, 0x33, 0xf3, 0x84, 0x30, 0x99, 0xda, 0x3f, 0x43, 0xf1, 0xdc, 0xfe, 0x9b, 0x17, 0x1a, 0x60, 0xca, 0xfd, 0x54, 0x89, 0xca, 0x9c, 0x53, 0x28, 0x98, 0x5a, 0x86, 0x82, 0x5a, 0x0c, 0xc7, 0x28, 0xf5, 0xd9, 0xda, 0xc2, 0xa5, 0x13, 0xb4, 0x91, 0x27, 0xa0, 0x61, 0x00, 0xf0, 0xfc, 0x4b, 0x8b, 0x1f, 0x20, 0x09, 0x03, 0xe0, 0xdf, 0x9e, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7774 = { .name = "ecdsa_secp256r1_sha512_7774", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7774_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7774_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7774_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7775 for ECDSA, tcId is 61 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7775_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7775_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7775_sig[] = { 0x4d, 0x66, 0xe7, 0xee, 0x5e, 0xdd, 0x02, 0xab, 0x96, 0xdb, 0x25, 0x95, 0x40, 0x50, 0x07, 0x9e, 0xf8, 0xde, 0x1d, 0x0f, 0x02, 0xf3, 0x4d, 0x4d, 0x75, 0x11, 0x2e, 0xaf, 0x3f, 0x73, 0x12, 0x40, 0x62, 0x92, 0xd1, 0x56, 0x31, 0x40, 0x01, 0x3c, 0x58, 0x9b, 0xe4, 0x0e, 0x59, 0x98, 0x62, 0xbd, 0xd6, 0xbd, 0xa2, 0x10, 0x38, 0x09, 0x92, 0x89, 0x28, 0xa1, 0x19, 0xb4, 0x38, 0x51, 0xa2, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7775 = { .name = "ecdsa_secp256r1_sha512_7775", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7775_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7775_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7775_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7776 for ECDSA, tcId is 62 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7776_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7776_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7776_sig[] = { 0xa9, 0x22, 0x83, 0x05, 0xf7, 0xb4, 0x86, 0xf5, 0x68, 0xeb, 0x65, 0xd4, 0x4e, 0x49, 0xba, 0x00, 0x7e, 0x3f, 0x14, 0xb8, 0xf2, 0x3c, 0x68, 0x9c, 0x95, 0x2e, 0x4c, 0xed, 0x1e, 0x6c, 0xf9, 0x1e, 0xb7, 0x3c, 0x74, 0xd2, 0x8b, 0xd1, 0x26, 0x80, 0x02, 0xbe, 0xd7, 0x84, 0xa6, 0xb0, 0x6c, 0x40, 0xa9, 0x0e, 0xe5, 0x93, 0x8e, 0xa6, 0xd0, 0x8f, 0x27, 0x2d, 0x02, 0x7e, 0x0f, 0x96, 0xa7, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7776 = { .name = "ecdsa_secp256r1_sha512_7776", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7776_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7776_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7776_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7777 for ECDSA, tcId is 63 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7777_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7777_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7777_sig[] = { 0x3f, 0xa3, 0x98, 0x42, 0xbf, 0xab, 0x6c, 0x38, 0xaf, 0xa7, 0x96, 0x3c, 0x60, 0xbe, 0xb0, 0x94, 0x84, 0xd4, 0x57, 0x9f, 0xc7, 0x5e, 0xf0, 0x9e, 0xff, 0xf4, 0x4e, 0x91, 0xbc, 0x62, 0xca, 0x83, 0x56, 0x12, 0xad, 0xd1, 0x92, 0x4f, 0x02, 0x85, 0xac, 0xe5, 0xb1, 0x58, 0x82, 0x8e, 0x2b, 0x32, 0xab, 0x2b, 0x6e, 0x7f, 0x10, 0xee, 0x68, 0xdc, 0xa1, 0xcc, 0x54, 0x59, 0x1f, 0xee, 0x1f, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7777 = { .name = "ecdsa_secp256r1_sha512_7777", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7777_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7777_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7777_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7778 for ECDSA, tcId is 64 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7778_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7778_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7778_sig[] = { 0x06, 0xc0, 0x4b, 0x02, 0xed, 0xfe, 0xec, 0xd8, 0x62, 0x0f, 0x03, 0x5e, 0xa4, 0xf4, 0x49, 0xbd, 0x92, 0x45, 0x93, 0xe8, 0x6e, 0x52, 0x88, 0xa6, 0xf2, 0x2d, 0x19, 0x23, 0xb0, 0xe2, 0xe8, 0xa9, 0xf6, 0x66, 0x71, 0x8e, 0x6f, 0xef, 0xb5, 0x15, 0xbb, 0x93, 0x39, 0xd2, 0x9c, 0xc0, 0xe5, 0x8c, 0xfb, 0xa8, 0x9d, 0x60, 0x5c, 0xa0, 0x06, 0x6b, 0xca, 0x87, 0xf6, 0xa3, 0xf0, 0x8e, 0xbc, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7778 = { .name = "ecdsa_secp256r1_sha512_7778", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7778_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7778_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7778_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7779 for ECDSA, tcId is 65 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7779_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7779_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7779_sig[] = { 0x1d, 0xdd, 0x95, 0x3c, 0x32, 0xa5, 0xf8, 0x41, 0x09, 0xcd, 0x4d, 0x9e, 0xc8, 0xc3, 0x64, 0xdd, 0x31, 0x83, 0x76, 0xff, 0x5d, 0x22, 0x82, 0x11, 0xa3, 0x67, 0x48, 0x30, 0x77, 0xd6, 0x38, 0x80, 0x56, 0x3d, 0xba, 0x48, 0x45, 0xde, 0x76, 0x2b, 0xaf, 0x04, 0x91, 0x06, 0x18, 0xd5, 0x87, 0xe0, 0xdd, 0x0c, 0x97, 0xdd, 0x1c, 0x97, 0x85, 0xc2, 0x4f, 0xfd, 0xf2, 0xf8, 0xa6, 0x60, 0xab, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7779 = { .name = "ecdsa_secp256r1_sha512_7779", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7779_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7779_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7779_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7780 for ECDSA, tcId is 66 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7780_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7780_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7780_sig[] = { 0x9f, 0xe4, 0xec, 0x48, 0x31, 0xef, 0x49, 0x45, 0xf1, 0x00, 0xd5, 0xd3, 0x5a, 0x2e, 0x63, 0x12, 0x41, 0x1c, 0xa5, 0xdf, 0x6c, 0x90, 0x0c, 0xa6, 0x06, 0x90, 0xf2, 0x98, 0x5d, 0x55, 0x34, 0x82, 0xc6, 0x74, 0xad, 0x5e, 0x1b, 0xea, 0xd2, 0xf7, 0x67, 0xc9, 0x24, 0x8e, 0x44, 0x44, 0x52, 0xa4, 0xa8, 0x53, 0x0d, 0xd4, 0x72, 0x46, 0xcb, 0xbc, 0x96, 0x8d, 0xa8, 0x65, 0xbd, 0xf2, 0x12, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7780 = { .name = "ecdsa_secp256r1_sha512_7780", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7780_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7780_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7780_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7781 for ECDSA, tcId is 67 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7781_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7781_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7781_sig[] = { 0xe8, 0x70, 0x3d, 0x6b, 0x16, 0xa7, 0x9f, 0xc2, 0xab, 0x36, 0x53, 0xce, 0xce, 0x29, 0xd0, 0x6f, 0x65, 0xdd, 0x6f, 0x2c, 0x23, 0x0c, 0xb0, 0x8e, 0xe3, 0x0c, 0x55, 0x17, 0x40, 0x7d, 0x75, 0xdb, 0x8c, 0xfe, 0xb8, 0x7b, 0x8e, 0x95, 0xdd, 0xac, 0xd6, 0x38, 0xb3, 0x7d, 0x31, 0x53, 0x93, 0xc5, 0x00, 0x5f, 0x3a, 0xb8, 0xbb, 0xa0, 0xcc, 0x1c, 0xd1, 0xa0, 0x50, 0x82, 0x9b, 0x77, 0x5b, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7781 = { .name = "ecdsa_secp256r1_sha512_7781", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7781_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7781_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7781_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7782 for ECDSA, tcId is 68 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7782_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7782_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7782_sig[] = { 0xde, 0xf6, 0x08, 0xca, 0xf1, 0xf2, 0x77, 0xd7, 0x14, 0x03, 0x00, 0x9f, 0x20, 0x9c, 0x1d, 0x7e, 0xef, 0x11, 0xaa, 0xa7, 0x92, 0x03, 0x97, 0xfb, 0xf4, 0x29, 0xb8, 0x14, 0x61, 0x81, 0xae, 0xce, 0xf3, 0xb8, 0xf2, 0xaa, 0x5b, 0x3d, 0xf9, 0xa8, 0xb3, 0x73, 0x13, 0xea, 0x66, 0xad, 0x5b, 0x74, 0x67, 0x3f, 0x3e, 0x86, 0x14, 0xff, 0x47, 0x1b, 0x1e, 0xb6, 0x77, 0x32, 0x17, 0x51, 0x1f, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7782 = { .name = "ecdsa_secp256r1_sha512_7782", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7782_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7782_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7782_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7783 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7783_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7783_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7783_sig[] = { 0x4f, 0x5d, 0x08, 0xe8, 0xd9, 0x36, 0xce, 0x83, 0x1d, 0x02, 0xd6, 0xb2, 0x3f, 0xb8, 0xfc, 0xe0, 0xe0, 0x75, 0x01, 0x01, 0xaf, 0x3a, 0xb9, 0xc3, 0xb2, 0x86, 0x36, 0xb9, 0x5a, 0x5e, 0x24, 0xad, 0x6f, 0x03, 0x44, 0x80, 0x55, 0x3b, 0xce, 0xca, 0xc2, 0x21, 0xf8, 0xbe, 0x82, 0x88, 0x16, 0x3c, 0x55, 0x49, 0x2e, 0x2e, 0x56, 0xa8, 0x8f, 0x4d, 0x03, 0x41, 0xb6, 0x14, 0x36, 0xa0, 0xa6, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7783 = { .name = "ecdsa_secp256r1_sha512_7783", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7783_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7783_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7783_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7784 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7784_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7784_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7784_sig[] = { 0xbd, 0xd8, 0x22, 0xbf, 0xe3, 0x73, 0x3d, 0x9f, 0x4b, 0x88, 0x76, 0x4f, 0xe0, 0x91, 0xdb, 0x2e, 0x8f, 0x8a, 0xf3, 0x66, 0xe4, 0xc4, 0x4d, 0x87, 0x6b, 0xf8, 0x2e, 0x62, 0xbd, 0x48, 0xc7, 0xee, 0x7f, 0xbf, 0x77, 0x50, 0xc5, 0xdc, 0x84, 0x9a, 0x2c, 0x55, 0xdb, 0xdd, 0x06, 0x78, 0x06, 0xf8, 0x69, 0x65, 0x2a, 0x7b, 0x3a, 0x57, 0xba, 0xa4, 0x73, 0x37, 0x81, 0xd3, 0x12, 0x8f, 0x02, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7784 = { .name = "ecdsa_secp256r1_sha512_7784", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7784_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7784_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7784_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7785 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7785_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7785_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7785_sig[] = { 0x1c, 0x4f, 0xc0, 0x29, 0x61, 0xb7, 0xf4, 0x24, 0x55, 0x66, 0xb4, 0x10, 0xbf, 0x08, 0xf4, 0x47, 0x50, 0x2e, 0xa4, 0xf7, 0x5b, 0x15, 0x69, 0x03, 0x44, 0x68, 0x1e, 0xfa, 0x2e, 0xdf, 0x7b, 0x4b, 0x7d, 0x63, 0xee, 0xf1, 0x19, 0xdc, 0x88, 0xbc, 0x4a, 0x1b, 0x2c, 0x43, 0xac, 0x21, 0xcd, 0x53, 0x89, 0x24, 0x43, 0x66, 0x1f, 0x8c, 0x3a, 0x97, 0xd5, 0x58, 0xbf, 0x88, 0x8c, 0x29, 0xf7, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7785 = { .name = "ecdsa_secp256r1_sha512_7785", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7785_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7785_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7785_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7786 for ECDSA, tcId is 72 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7786_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7786_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7786_sig[] = { 0x64, 0x06, 0xf2, 0xd2, 0x49, 0xab, 0x12, 0x64, 0xe1, 0x75, 0x47, 0x6c, 0xa3, 0x30, 0x0e, 0xfd, 0x04, 0x9f, 0xca, 0xd5, 0x69, 0xdf, 0xf4, 0x0b, 0x92, 0x20, 0x82, 0xb4, 0x1c, 0xc7, 0xb7, 0xce, 0x46, 0x18, 0x72, 0xb8, 0x03, 0x38, 0x3f, 0x78, 0x50, 0x77, 0x71, 0x4a, 0x95, 0x66, 0xc4, 0xd6, 0x52, 0xe8, 0x7b, 0x2c, 0xad, 0x90, 0xdd, 0x4f, 0x4c, 0xc8, 0x4b, 0xc5, 0x50, 0x04, 0xc5, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7786 = { .name = "ecdsa_secp256r1_sha512_7786", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7786_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7786_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7786_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7787 for ECDSA, tcId is 73 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7787_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7787_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7787_sig[] = { 0x41, 0x5c, 0x92, 0x4b, 0x9b, 0xa1, 0x90, 0x2b, 0x34, 0x00, 0x58, 0x11, 0x7d, 0x90, 0x62, 0x36, 0x02, 0xd4, 0x8b, 0x82, 0x80, 0x58, 0x3f, 0xb2, 0x31, 0xdc, 0x93, 0x82, 0x3b, 0x83, 0xa1, 0x53, 0xf1, 0x8b, 0xe8, 0xcd, 0xc2, 0x06, 0x3a, 0x26, 0xab, 0x03, 0x05, 0x04, 0xd3, 0x39, 0x7d, 0xc6, 0xe9, 0xc6, 0xb6, 0xc5, 0x6f, 0x4e, 0x3a, 0x59, 0x83, 0x2c, 0x0e, 0x46, 0x43, 0xc0, 0x26, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7787 = { .name = "ecdsa_secp256r1_sha512_7787", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7787_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7787_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7787_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7788 for ECDSA, tcId is 74 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7788_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7788_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7788_sig[] = { 0xd1, 0x2e, 0x96, 0xc7, 0xd2, 0xf1, 0x77, 0xb7, 0xcf, 0x6d, 0x8a, 0x1e, 0xde, 0x06, 0x0a, 0x2b, 0x17, 0x4d, 0xc9, 0x93, 0xd4, 0x3f, 0x5f, 0xe6, 0x0f, 0x75, 0x60, 0x48, 0x24, 0xb6, 0x4f, 0xef, 0x0c, 0x97, 0xd8, 0x70, 0x35, 0xfc, 0xca, 0x0a, 0x5f, 0x47, 0xfe, 0x64, 0x61, 0xbb, 0x30, 0xcb, 0xaf, 0x05, 0xb3, 0x7e, 0x42, 0x11, 0xec, 0x3f, 0xcd, 0x51, 0xfc, 0x71, 0xa1, 0x22, 0x39, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7788 = { .name = "ecdsa_secp256r1_sha512_7788", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7788_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7788_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7788_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7789 for ECDSA, tcId is 75 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7789_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7789_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7789_sig[] = { 0x7d, 0xf7, 0x2a, 0x64, 0xc7, 0xe9, 0x82, 0xc8, 0x8f, 0x83, 0xb3, 0xa2, 0x28, 0x02, 0x69, 0x00, 0x98, 0x14, 0x7e, 0x0e, 0x42, 0xef, 0x43, 0x71, 0xef, 0x06, 0x99, 0x10, 0x85, 0x8c, 0x06, 0x46, 0xad, 0xba, 0xa7, 0xb1, 0x0c, 0x6a, 0x3f, 0x99, 0x5e, 0xd5, 0xf8, 0x3d, 0x7b, 0xda, 0x4b, 0xa6, 0x26, 0xb3, 0x55, 0xf3, 0x4a, 0x72, 0xbf, 0x92, 0xff, 0x78, 0x83, 0x00, 0xb7, 0x0e, 0x72, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7789 = { .name = "ecdsa_secp256r1_sha512_7789", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7789_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7789_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7789_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7790 for ECDSA, tcId is 76 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7790_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7790_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7790_sig[] = { 0x04, 0x7c, 0x43, 0x06, 0xf8, 0xd3, 0x0e, 0x42, 0x5a, 0xe7, 0x0e, 0x0b, 0xee, 0x9e, 0x0b, 0x94, 0xfa, 0xa4, 0xef, 0x18, 0xa9, 0xc6, 0xd7, 0xf2, 0xc9, 0x5d, 0xe0, 0xfe, 0x6e, 0x2a, 0x32, 0x37, 0x7a, 0x4d, 0x0d, 0x0a, 0x59, 0x6b, 0xd9, 0xea, 0x3f, 0xe9, 0x85, 0x0e, 0x9c, 0x8c, 0x77, 0x32, 0x25, 0x94, 0x34, 0x46, 0x23, 0xc0, 0xb4, 0x6a, 0xc2, 0xa8, 0xc9, 0x59, 0x48, 0xae, 0xfd, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7790 = { .name = "ecdsa_secp256r1_sha512_7790", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7790_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7790_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7790_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7791 for ECDSA, tcId is 77 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7791_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7791_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7791_sig[] = { 0x57, 0xd6, 0x03, 0xa3, 0x67, 0xe2, 0x3a, 0xf3, 0x9c, 0x95, 0xdd, 0x41, 0x8c, 0x01, 0x76, 0xda, 0x8b, 0x21, 0x1d, 0x50, 0xb1, 0xbe, 0x82, 0xbf, 0x5e, 0xf6, 0x21, 0xa2, 0x64, 0x02, 0x04, 0xf7, 0x5d, 0xc3, 0xf2, 0x85, 0xad, 0x01, 0x5c, 0x4d, 0x71, 0x15, 0x7b, 0xd1, 0x1e, 0x5b, 0x8d, 0xf6, 0xa8, 0x9e, 0x4b, 0x26, 0x73, 0x93, 0xb0, 0x8b, 0x5a, 0xd5, 0x01, 0x3b, 0xda, 0xe5, 0x44, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7791 = { .name = "ecdsa_secp256r1_sha512_7791", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7791_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7791_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7791_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7792 for ECDSA, tcId is 78 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7792_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7792_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7792_sig[] = { 0x11, 0xdf, 0x67, 0x41, 0x02, 0x1e, 0xc8, 0xcc, 0x56, 0x75, 0x84, 0xae, 0xa1, 0x68, 0x17, 0xc5, 0x40, 0x85, 0x9c, 0x4e, 0x50, 0x11, 0x55, 0x1c, 0x00, 0xb0, 0x97, 0xfc, 0xfc, 0x23, 0x37, 0xe5, 0x66, 0x85, 0x51, 0x91, 0x9d, 0x43, 0x20, 0x6a, 0xc0, 0x57, 0x1f, 0xc5, 0xad, 0x3a, 0xc0, 0xef, 0xb4, 0x89, 0xbe, 0xa5, 0x99, 0xe7, 0xbf, 0x99, 0xfe, 0x4c, 0x74, 0x68, 0xd6, 0xc2, 0xc5, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7792 = { .name = "ecdsa_secp256r1_sha512_7792", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7792_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7792_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7792_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7793 for ECDSA, tcId is 79 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7793_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7793_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7793_sig[] = { 0x74, 0x51, 0xff, 0xed, 0xe4, 0x71, 0xbd, 0x37, 0x04, 0x06, 0x53, 0x34, 0x36, 0xfc, 0x42, 0xa8, 0x9d, 0xaa, 0x0a, 0xf4, 0x90, 0x3d, 0x08, 0x7c, 0xbc, 0x06, 0x2f, 0xe7, 0xe5, 0x4d, 0xbf, 0x70, 0x59, 0x08, 0x95, 0x39, 0x8f, 0x22, 0xb4, 0x8c, 0xe7, 0x2c, 0xbf, 0x7c, 0x3d, 0x3e, 0xe1, 0xdd, 0x7f, 0xb0, 0xee, 0x64, 0x5e, 0xdb, 0x0b, 0x1b, 0x1d, 0xe3, 0x5f, 0x37, 0x0e, 0x5b, 0xf5, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7793 = { .name = "ecdsa_secp256r1_sha512_7793", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7793_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7793_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7793_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7794 for ECDSA, tcId is 80 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7794_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7794_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7794_sig[] = { 0xfc, 0x4c, 0x4d, 0x81, 0xda, 0x6f, 0x68, 0x7a, 0x64, 0x26, 0x26, 0x31, 0x93, 0xc1, 0xa6, 0x80, 0xb6, 0x77, 0x34, 0xa1, 0xb1, 0x80, 0x64, 0x7b, 0x8c, 0x76, 0x40, 0x7c, 0xc4, 0xf0, 0xa9, 0xc6, 0x56, 0xf7, 0x75, 0xd3, 0x72, 0xc9, 0xbe, 0xe6, 0x85, 0x37, 0x40, 0x85, 0xbe, 0x67, 0x6c, 0x9c, 0xf3, 0x1c, 0xf1, 0xf9, 0x78, 0xa5, 0xe6, 0xcc, 0xb0, 0x4e, 0x4a, 0x07, 0x61, 0x15, 0x9c, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7794 = { .name = "ecdsa_secp256r1_sha512_7794", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7794_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7794_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7794_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7795 for ECDSA, tcId is 81 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7795_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7795_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7795_sig[] = { 0xfe, 0xb9, 0x78, 0xca, 0x33, 0xc4, 0x6f, 0xfb, 0xa4, 0x7e, 0xb6, 0x3b, 0xb4, 0x0d, 0xe7, 0x83, 0x3e, 0x43, 0xd5, 0x65, 0x45, 0x75, 0xb5, 0x4d, 0xe1, 0xfe, 0xa3, 0xd1, 0xde, 0x3c, 0x8a, 0xd5, 0x10, 0x80, 0x78, 0xba, 0x99, 0x7b, 0xfa, 0x06, 0x45, 0x21, 0xba, 0xf3, 0x42, 0xc9, 0x7b, 0x0c, 0x64, 0xbd, 0x25, 0x24, 0x0c, 0x8f, 0xd0, 0xfd, 0x75, 0x33, 0xae, 0x2d, 0x03, 0x08, 0x1b, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7795 = { .name = "ecdsa_secp256r1_sha512_7795", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7795_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7795_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7795_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7796 for ECDSA, tcId is 82 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7796_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7796_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7796_sig[] = { 0xcc, 0x61, 0x72, 0x96, 0x98, 0x46, 0x7b, 0xa5, 0x3d, 0xa1, 0x99, 0xff, 0x48, 0x1f, 0xe7, 0x43, 0x3f, 0x19, 0x4f, 0xc9, 0x63, 0x67, 0x90, 0x7e, 0x8d, 0xc5, 0xe1, 0xd9, 0xf4, 0x2b, 0x1e, 0x21, 0x83, 0xdd, 0x9e, 0xf1, 0x56, 0xe7, 0xc1, 0xf9, 0xc0, 0x9b, 0x3b, 0xf8, 0x6a, 0x4f, 0x1c, 0x88, 0xe5, 0xdd, 0x20, 0xcd, 0x74, 0xd9, 0x97, 0x85, 0x8e, 0x60, 0x07, 0x97, 0xdb, 0xe7, 0x4a, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7796 = { .name = "ecdsa_secp256r1_sha512_7796", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7796_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7796_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7796_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7797 for ECDSA, tcId is 83 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7797_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7797_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7797_sig[] = { 0xd4, 0x7f, 0x61, 0x63, 0x03, 0xff, 0x0e, 0xb8, 0x13, 0xea, 0xc3, 0x2e, 0x76, 0x0b, 0xa3, 0x0a, 0xd4, 0x45, 0xe0, 0xaf, 0x7d, 0xc5, 0x7e, 0x70, 0x75, 0x61, 0x04, 0x82, 0x3f, 0x6a, 0x89, 0x5f, 0x04, 0x7f, 0x22, 0x17, 0xb3, 0x99, 0xc4, 0x6a, 0x42, 0x6b, 0x93, 0x6a, 0x12, 0x49, 0x80, 0xa6, 0x01, 0x1f, 0x08, 0x96, 0xf5, 0x1d, 0xbe, 0x07, 0x63, 0x28, 0x28, 0xa7, 0x2d, 0x71, 0x73, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7797 = { .name = "ecdsa_secp256r1_sha512_7797", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7797_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7797_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7797_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7798 for ECDSA, tcId is 84 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7798_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7798_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7798_sig[] = { 0xcf, 0xf7, 0x3d, 0xfa, 0x2b, 0xac, 0x67, 0xce, 0x13, 0x40, 0xb2, 0x5c, 0x88, 0x5a, 0xbb, 0x3e, 0x79, 0x79, 0xef, 0x7f, 0x84, 0x0f, 0x15, 0xd5, 0xf1, 0x9e, 0x86, 0x64, 0x0c, 0xdd, 0x40, 0xa3, 0xc7, 0xd1, 0x21, 0x08, 0x02, 0x79, 0x6c, 0x4f, 0x25, 0x10, 0x49, 0xee, 0x08, 0xa2, 0xc2, 0x9f, 0x5c, 0x71, 0x06, 0x40, 0x33, 0xd1, 0x70, 0x10, 0xc6, 0x5b, 0xf2, 0xe9, 0x44, 0x99, 0x38, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7798 = { .name = "ecdsa_secp256r1_sha512_7798", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7798_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7798_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7798_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7799 for ECDSA, tcId is 85 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7799_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7799_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7799_sig[] = { 0x10, 0xac, 0xaf, 0x9c, 0x48, 0x5a, 0xb1, 0x22, 0x03, 0x55, 0xb9, 0x5b, 0xe2, 0x69, 0xf1, 0x24, 0xe1, 0x2e, 0xb2, 0x52, 0xf2, 0x22, 0x4b, 0x0f, 0xc5, 0x07, 0x85, 0xeb, 0x2e, 0xe3, 0xdf, 0x45, 0x32, 0x44, 0x3b, 0x55, 0x7e, 0xfc, 0x68, 0x96, 0x34, 0x7f, 0xa7, 0x78, 0xe1, 0xfc, 0xf3, 0x3c, 0xbb, 0x76, 0x9c, 0x9a, 0x7d, 0xa8, 0x96, 0xb2, 0x0d, 0x93, 0xfe, 0xa7, 0xc2, 0x79, 0x1e, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7799 = { .name = "ecdsa_secp256r1_sha512_7799", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7799_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7799_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7799_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7800 for ECDSA, tcId is 86 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7800_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7800_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7800_sig[] = { 0xf9, 0x19, 0xda, 0x06, 0x51, 0xab, 0xc2, 0xbf, 0xf9, 0x94, 0xa8, 0x79, 0xd2, 0x77, 0x8f, 0xa5, 0x19, 0x5d, 0x57, 0x40, 0x0e, 0x00, 0x3e, 0x8d, 0xd6, 0xad, 0xb3, 0xfc, 0x7a, 0x0c, 0xc4, 0xcc, 0x9b, 0x94, 0x5d, 0x06, 0xbd, 0x11, 0x96, 0x65, 0xb2, 0x78, 0xa5, 0x9b, 0xd2, 0x4f, 0xdd, 0x23, 0x50, 0x81, 0x7d, 0x0b, 0xe8, 0x79, 0x97, 0xbe, 0xe5, 0x7b, 0x70, 0xc4, 0x79, 0xd6, 0x4a, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7800 = { .name = "ecdsa_secp256r1_sha512_7800", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7800_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7800_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7800_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7801 for ECDSA, tcId is 87 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7801_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7801_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7801_sig[] = { 0xcc, 0x38, 0xe7, 0xa0, 0x18, 0xf6, 0xd7, 0x0b, 0x2d, 0x9b, 0x49, 0x12, 0x0c, 0xc9, 0xb4, 0xa1, 0x69, 0xf2, 0xf7, 0x22, 0x38, 0x82, 0x1a, 0x86, 0xb8, 0x1f, 0x55, 0x3b, 0x62, 0x25, 0xd2, 0x4e, 0x27, 0x6e, 0xfd, 0x8b, 0xf0, 0x6c, 0xcc, 0xe0, 0x7c, 0x7a, 0xae, 0x35, 0xea, 0xac, 0x3b, 0xd1, 0xc3, 0x74, 0xdc, 0xf0, 0xcf, 0x05, 0x88, 0xd5, 0xe0, 0xe4, 0x17, 0x19, 0x36, 0x68, 0x86, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7801 = { .name = "ecdsa_secp256r1_sha512_7801", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7801_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7801_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7801_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7802 for ECDSA, tcId is 88 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7802_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7802_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7802_sig[] = { 0xff, 0x85, 0xad, 0x66, 0x62, 0x19, 0x91, 0xc3, 0x18, 0xb8, 0x5c, 0xef, 0x73, 0xc5, 0x76, 0xcb, 0x2a, 0x8d, 0x43, 0xc5, 0x68, 0xc1, 0xaa, 0xfc, 0x85, 0xb4, 0x0e, 0xf2, 0xa9, 0xa6, 0xb4, 0x1c, 0x73, 0x2a, 0x79, 0xe6, 0x83, 0x7e, 0xbf, 0x84, 0x34, 0xfe, 0xa6, 0xe7, 0xfe, 0xfa, 0x94, 0x8f, 0x50, 0x6a, 0xe4, 0x55, 0xc1, 0xa3, 0xeb, 0x36, 0xa0, 0x30, 0x18, 0x5a, 0x23, 0x03, 0x7d, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7802 = { .name = "ecdsa_secp256r1_sha512_7802", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7802_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7802_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7802_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7803 for ECDSA, tcId is 89 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7803_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7803_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7803_sig[] = { 0x33, 0xf0, 0x16, 0xe5, 0x1e, 0xef, 0x9b, 0x11, 0x36, 0x38, 0x0c, 0xb8, 0xb8, 0x4c, 0x6b, 0x38, 0xb1, 0x07, 0xe2, 0x4c, 0x67, 0x31, 0xbd, 0x07, 0xcb, 0x1c, 0x7f, 0x4a, 0x29, 0xf3, 0x3a, 0x83, 0x36, 0xb1, 0x77, 0xbb, 0x8b, 0xe9, 0x4c, 0x8b, 0xe6, 0x7f, 0xf3, 0xa4, 0x1f, 0xcc, 0x4d, 0x22, 0xb5, 0xc9, 0xeb, 0x37, 0x7d, 0xa7, 0x13, 0xeb, 0x01, 0x4a, 0xe0, 0x1c, 0x64, 0xca, 0x6d, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7803 = { .name = "ecdsa_secp256r1_sha512_7803", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7803_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7803_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7803_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7804 for ECDSA, tcId is 90 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7804_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7804_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7804_sig[] = { 0x92, 0x94, 0x13, 0xee, 0x91, 0xf2, 0x74, 0x54, 0xd7, 0x4e, 0x91, 0x37, 0x0a, 0x10, 0xa8, 0x6f, 0xc9, 0x8a, 0xc7, 0x30, 0x5c, 0x8a, 0xb4, 0xca, 0x59, 0x75, 0x2b, 0xda, 0x3a, 0x7b, 0xfc, 0x37, 0x48, 0x3b, 0x47, 0xa2, 0x6a, 0x0d, 0x7d, 0x2e, 0x6b, 0xd3, 0x7d, 0x35, 0x1d, 0x9e, 0xe3, 0x7c, 0x5e, 0xc2, 0xa4, 0x68, 0x6d, 0x88, 0x4d, 0x78, 0xb6, 0xbe, 0xb7, 0xf6, 0xb0, 0x8c, 0x50, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7804 = { .name = "ecdsa_secp256r1_sha512_7804", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7804_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7804_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7804_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7805 for ECDSA, tcId is 91 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7805_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7805_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7805_sig[] = { 0x57, 0x82, 0x02, 0xc7, 0xd0, 0xab, 0xac, 0x93, 0xca, 0x43, 0xdd, 0xe3, 0xcb, 0x44, 0x41, 0x4e, 0x56, 0x01, 0xc1, 0xeb, 0x55, 0x76, 0x04, 0xcb, 0x9a, 0xdb, 0x4b, 0xde, 0x0a, 0x12, 0x63, 0x3b, 0xfb, 0x9a, 0x74, 0x12, 0xe3, 0x07, 0xae, 0xe9, 0x5e, 0xf4, 0xb5, 0x35, 0x40, 0x57, 0x1a, 0x21, 0x55, 0x94, 0x14, 0xe5, 0x30, 0x67, 0x94, 0xab, 0x51, 0x82, 0xcf, 0xb2, 0x29, 0xda, 0xb3, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7805 = { .name = "ecdsa_secp256r1_sha512_7805", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7805_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7805_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7805_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7806 for ECDSA, tcId is 92 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7806_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7806_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7806_sig[] = { 0x46, 0xd4, 0x5a, 0xd0, 0xbb, 0x75, 0xb8, 0x63, 0x9d, 0x0e, 0x91, 0xd8, 0x45, 0x0f, 0xc3, 0x18, 0x87, 0xc2, 0x11, 0x32, 0x8a, 0x57, 0x84, 0xfc, 0x83, 0xb4, 0xcb, 0x7f, 0x5b, 0x96, 0x2c, 0x1b, 0xd6, 0x75, 0x1d, 0x13, 0xed, 0xe2, 0x07, 0x9b, 0x7a, 0xa1, 0xd8, 0x22, 0xbd, 0xb3, 0x2d, 0x7f, 0x3c, 0xf0, 0x02, 0x73, 0xa1, 0xff, 0x03, 0xdf, 0x90, 0xc0, 0xec, 0x7c, 0x62, 0xa4, 0x75, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7806 = { .name = "ecdsa_secp256r1_sha512_7806", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7806_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7806_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7806_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7807 for ECDSA, tcId is 93 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7807_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7807_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7807_sig[] = { 0xab, 0xe8, 0x4c, 0x94, 0x17, 0x83, 0xd5, 0xce, 0xd2, 0x84, 0xfe, 0xa5, 0x63, 0x41, 0xec, 0xc6, 0x8d, 0x6b, 0xdd, 0x31, 0x96, 0xd3, 0x18, 0xfb, 0xd0, 0x74, 0x64, 0x1f, 0x8c, 0x88, 0x5b, 0xd5, 0xbd, 0xea, 0x3c, 0x44, 0xd4, 0x8e, 0x01, 0xaa, 0x40, 0x93, 0x5c, 0x1c, 0x97, 0x23, 0xff, 0x73, 0x31, 0x99, 0x56, 0x34, 0x40, 0xf2, 0x6b, 0x4e, 0xcf, 0x0b, 0x44, 0x4b, 0x04, 0x18, 0xd9, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7807 = { .name = "ecdsa_secp256r1_sha512_7807", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7807_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7807_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7807_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7808 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7808_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7808_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7808_sig[] = { 0x05, 0x27, 0x7c, 0xdb, 0xf4, 0x91, 0xe3, 0x36, 0xfe, 0x81, 0xbe, 0x24, 0xe3, 0x93, 0xa1, 0x61, 0xa4, 0xfb, 0x89, 0x11, 0x2c, 0x9f, 0xfe, 0xd1, 0xee, 0x66, 0x49, 0xc4, 0x06, 0x71, 0x34, 0x08, 0xab, 0x69, 0x34, 0x33, 0x2e, 0x68, 0xe1, 0x08, 0xbb, 0x04, 0x84, 0xd2, 0x1c, 0x45, 0x7d, 0xcf, 0x38, 0x1a, 0x62, 0x0c, 0x3a, 0x47, 0x12, 0xfd, 0xbf, 0xeb, 0x65, 0x8a, 0x3f, 0xaf, 0xd6, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7808 = { .name = "ecdsa_secp256r1_sha512_7808", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7808_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7808_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7808_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7809 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7809_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7809_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7809_sig[] = { 0x29, 0x38, 0x25, 0x73, 0x7c, 0x8c, 0x14, 0x43, 0x0e, 0xd1, 0x0d, 0xba, 0xdd, 0x7d, 0xa3, 0x37, 0x27, 0x5f, 0x9b, 0x61, 0xd1, 0xd2, 0x63, 0x77, 0xf7, 0x78, 0xff, 0xaa, 0x00, 0xc1, 0x39, 0xde, 0xcd, 0xdd, 0xec, 0x26, 0x7a, 0x86, 0x78, 0xc9, 0x68, 0x29, 0xbf, 0x6c, 0x1d, 0x6f, 0x38, 0x32, 0x2e, 0x11, 0x99, 0x37, 0xcf, 0xd2, 0xfe, 0xe0, 0x1e, 0x9d, 0xc9, 0x52, 0x5f, 0x43, 0xed, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7809 = { .name = "ecdsa_secp256r1_sha512_7809", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7809_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7809_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7809_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7810 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7810_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7810_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7810_sig[] = { 0x20, 0x41, 0xfd, 0xd6, 0x11, 0x1c, 0x45, 0xdf, 0xd2, 0x9e, 0x75, 0x0e, 0x08, 0x2d, 0xcd, 0xad, 0xc9, 0xa5, 0x84, 0xa8, 0xa2, 0xbe, 0x46, 0x58, 0x0f, 0xb0, 0xba, 0x3b, 0x3d, 0xc6, 0x58, 0x62, 0x42, 0x18, 0x24, 0xfe, 0x98, 0x7e, 0x41, 0x72, 0xa0, 0xf8, 0xbb, 0xcb, 0x7b, 0xcd, 0x9e, 0x1b, 0x07, 0x3b, 0x77, 0x42, 0xed, 0x9f, 0x9d, 0xf9, 0x8f, 0x2a, 0x1a, 0x37, 0xcd, 0x37, 0x4c, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7810 = { .name = "ecdsa_secp256r1_sha512_7810", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7810_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7810_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7810_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7811 for ECDSA, tcId is 97 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7811_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7811_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7811_sig[] = { 0x26, 0x79, 0x41, 0xdb, 0x66, 0x0e, 0x04, 0x6a, 0xb1, 0x4e, 0x79, 0x56, 0x69, 0xe0, 0x02, 0xb8, 0x52, 0xf7, 0x78, 0x84, 0x47, 0xc5, 0x3e, 0xbe, 0xf4, 0x6a, 0x20, 0x56, 0x97, 0x8b, 0x55, 0x74, 0xd0, 0x01, 0x83, 0xbc, 0xaf, 0x75, 0xbc, 0x11, 0xe3, 0x76, 0x53, 0xf9, 0x52, 0xf6, 0xa6, 0x53, 0x71, 0x51, 0xc3, 0xaa, 0x0a, 0x1b, 0x9e, 0x4e, 0x41, 0xb0, 0x04, 0xa2, 0x91, 0x85, 0x39, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7811 = { .name = "ecdsa_secp256r1_sha512_7811", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7811_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7811_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7811_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7812 for ECDSA, tcId is 98 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7812_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7812_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7812_sig[] = { 0x5d, 0xcd, 0x7f, 0x68, 0x14, 0x73, 0x9d, 0x47, 0xf8, 0x0a, 0x36, 0x3b, 0x94, 0x14, 0xe6, 0xcb, 0xfb, 0x5f, 0x08, 0x46, 0x22, 0x38, 0x88, 0x51, 0x0a, 0xbd, 0x5b, 0x39, 0x03, 0xd7, 0xae, 0x09, 0x43, 0x41, 0x8f, 0x13, 0x8b, 0xb3, 0xc8, 0x57, 0xc0, 0xad, 0x75, 0x0c, 0xa8, 0x38, 0x9e, 0xbc, 0xf3, 0x71, 0x9c, 0xb3, 0x89, 0x63, 0x4a, 0xc5, 0x4a, 0x91, 0xde, 0x9f, 0x18, 0xfd, 0x72, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7812 = { .name = "ecdsa_secp256r1_sha512_7812", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7812_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7812_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7812_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7813 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7813_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7813_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7813_sig[] = { 0x5e, 0x0e, 0x8c, 0xc0, 0x28, 0x04, 0x09, 0xa0, 0xce, 0x25, 0x2d, 0xa0, 0x2b, 0x24, 0x24, 0xd2, 0xde, 0x3a, 0x52, 0xb4, 0x06, 0xc3, 0x77, 0x89, 0x32, 0xdb, 0xc6, 0x0c, 0xb8, 0x6c, 0x35, 0x67, 0x93, 0xd2, 0x5e, 0x92, 0x9c, 0x5b, 0x00, 0xe9, 0x50, 0xd8, 0x95, 0x85, 0xec, 0x6c, 0x01, 0xb6, 0x58, 0x9a, 0xe0, 0xec, 0x0a, 0xf8, 0xa7, 0x9c, 0x04, 0xdf, 0x9e, 0x5b, 0x27, 0xb5, 0x8b, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7813 = { .name = "ecdsa_secp256r1_sha512_7813", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7813_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7813_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7813_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7814 for ECDSA, tcId is 100 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7814_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7814_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7814_sig[] = { 0x4f, 0xcf, 0x9c, 0x9d, 0x9f, 0xfb, 0xf4, 0xe0, 0xb9, 0x82, 0x68, 0xc0, 0x87, 0x07, 0x1b, 0xff, 0xe0, 0x67, 0x3b, 0xb8, 0xdc, 0xb3, 0x2a, 0xa6, 0x67, 0xf8, 0xa6, 0x39, 0xc3, 0x64, 0xea, 0x47, 0x82, 0x0d, 0xb0, 0x73, 0x0b, 0xee, 0x82, 0x27, 0xfc, 0x83, 0x16, 0x43, 0xfc, 0xb8, 0xe2, 0xef, 0x9c, 0x0f, 0x70, 0x59, 0xce, 0x42, 0xda, 0x45, 0xcf, 0x74, 0x82, 0x8e, 0xff, 0xa8, 0xd7, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7814 = { .name = "ecdsa_secp256r1_sha512_7814", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7814_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7814_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7814_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7815 for ECDSA, tcId is 101 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7815_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7815_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7815_sig[] = { 0xc6, 0x0c, 0xd2, 0xe0, 0x82, 0x48, 0xd5, 0x8d, 0x16, 0x39, 0xb1, 0x23, 0x63, 0x36, 0x43, 0xc6, 0x3f, 0x89, 0xaf, 0xf6, 0x11, 0xf9, 0x98, 0x93, 0x7c, 0xcb, 0x08, 0xc9, 0x11, 0x3b, 0xcd, 0xca, 0xac, 0x4b, 0xb4, 0x70, 0xce, 0x01, 0x64, 0x61, 0x6d, 0xad, 0xa7, 0xa1, 0x73, 0x36, 0x4e, 0xd3, 0xf9, 0xd1, 0x6f, 0xd3, 0x2c, 0x68, 0x61, 0x36, 0xf9, 0x04, 0xc9, 0x92, 0x66, 0xfd, 0xa1, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7815 = { .name = "ecdsa_secp256r1_sha512_7815", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7815_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7815_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7815_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7816 for ECDSA, tcId is 102 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7816_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7816_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7816_sig[] = { 0x7c, 0xfd, 0xaf, 0x6f, 0x22, 0xc1, 0xc7, 0x66, 0x8d, 0x7b, 0x6f, 0x56, 0xf8, 0xa7, 0xbe, 0x3f, 0xde, 0xeb, 0x17, 0xa7, 0x86, 0x35, 0x39, 0x55, 0x5b, 0xbf, 0xa8, 0x99, 0xdd, 0x70, 0xc5, 0xf1, 0xce, 0xe1, 0x51, 0xad, 0xc7, 0x1e, 0x68, 0x48, 0x3b, 0x95, 0xa7, 0x85, 0x7a, 0x86, 0x2a, 0xe0, 0xc5, 0xa6, 0xee, 0xe4, 0x78, 0xd9, 0x3d, 0x40, 0xcc, 0xc7, 0xd4, 0x0a, 0x31, 0xdc, 0xbd, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7816 = { .name = "ecdsa_secp256r1_sha512_7816", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7816_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7816_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7816_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7817 for ECDSA, tcId is 103 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7817_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7817_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7817_sig[] = { 0x22, 0x70, 0xbe, 0x7e, 0xe0, 0x33, 0xa7, 0x06, 0xb5, 0x97, 0x46, 0xea, 0xb3, 0x48, 0x16, 0xbe, 0x7e, 0x15, 0xc8, 0x78, 0x40, 0x61, 0xd5, 0x28, 0x10, 0x60, 0x70, 0x7a, 0x0a, 0xbe, 0x0a, 0x7d, 0x56, 0xa1, 0x63, 0x34, 0x1e, 0xe9, 0x5e, 0x7e, 0x3c, 0x04, 0x29, 0x4a, 0x57, 0xf5, 0xf7, 0xd2, 0x4b, 0xf3, 0xc3, 0xc6, 0xf1, 0x3e, 0xf2, 0xf1, 0x61, 0x07, 0x7c, 0x47, 0xbd, 0x27, 0x66, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7817 = { .name = "ecdsa_secp256r1_sha512_7817", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7817_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7817_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7817_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7818 for ECDSA, tcId is 104 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7818_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7818_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7818_sig[] = { 0x16, 0xb5, 0xd2, 0xbf, 0xca, 0xba, 0x21, 0x16, 0x7a, 0x69, 0xf7, 0x43, 0x3d, 0x0c, 0x47, 0x6b, 0x21, 0xde, 0xd3, 0x7d, 0x84, 0xdc, 0x74, 0xca, 0x40, 0x1a, 0x3e, 0xcd, 0xdb, 0x27, 0x52, 0xa8, 0x62, 0x85, 0x2c, 0xf9, 0x7d, 0x89, 0xad, 0xfb, 0x0e, 0xbb, 0xe6, 0xf3, 0x98, 0xee, 0x64, 0x1b, 0xfe, 0xa8, 0xa2, 0x27, 0x15, 0x80, 0xaa, 0xc8, 0xa3, 0xd8, 0x32, 0x6d, 0x8c, 0x6e, 0x0e, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7818 = { .name = "ecdsa_secp256r1_sha512_7818", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7818_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7818_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7818_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7819 for ECDSA, tcId is 105 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7819_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7819_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7819_sig[] = { 0xd9, 0x07, 0xee, 0xfa, 0x66, 0x41, 0x15, 0x84, 0x8b, 0x90, 0xc3, 0xd5, 0xba, 0xa0, 0x23, 0x6f, 0x08, 0xea, 0xfa, 0xf8, 0x1c, 0x0d, 0x52, 0xbb, 0x9d, 0x0f, 0x8a, 0xcb, 0x57, 0x49, 0x08, 0x47, 0xfd, 0x91, 0xbc, 0x45, 0xa7, 0x6e, 0x31, 0xcd, 0xc5, 0x8c, 0x4b, 0xfb, 0x3d, 0xf2, 0x7f, 0x64, 0x70, 0xd2, 0x0b, 0x19, 0xf0, 0xfb, 0xa6, 0xa7, 0x7b, 0x6c, 0x88, 0x46, 0x65, 0x0e, 0xd8, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7819 = { .name = "ecdsa_secp256r1_sha512_7819", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7819_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7819_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7819_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7820 for ECDSA, tcId is 106 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7820_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7820_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7820_sig[] = { 0x04, 0x83, 0x37, 0xb3, 0x4f, 0x42, 0x7e, 0x87, 0x74, 0xb3, 0xbf, 0x7c, 0x8f, 0xf4, 0xb1, 0xae, 0x65, 0xd1, 0x32, 0xac, 0x8a, 0xf9, 0x48, 0x29, 0xbb, 0x2d, 0x32, 0x94, 0x45, 0x79, 0xbb, 0x31, 0xbd, 0x6f, 0x8e, 0xab, 0x82, 0x21, 0x3c, 0xcf, 0x80, 0x76, 0x46, 0x44, 0x20, 0x4b, 0xb6, 0xbf, 0x16, 0xc6, 0x68, 0x72, 0x9c, 0xdd, 0x31, 0xdd, 0x85, 0x96, 0x28, 0x6c, 0x15, 0x68, 0x6e, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7820 = { .name = "ecdsa_secp256r1_sha512_7820", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7820_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7820_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7820_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7821 for ECDSA, tcId is 107 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7821_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7821_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7821_sig[] = { 0xb2, 0xbc, 0x46, 0xb7, 0xc4, 0x42, 0x93, 0x55, 0x7a, 0xb7, 0xeb, 0xeb, 0x02, 0x64, 0x92, 0x42, 0x77, 0x19, 0x3f, 0x87, 0xa2, 0x5d, 0x94, 0xc9, 0x24, 0xdf, 0x15, 0x18, 0xba, 0x7c, 0x72, 0x60, 0xab, 0xf1, 0xf6, 0x23, 0x8f, 0xf6, 0x96, 0xaa, 0xaf, 0xaf, 0x4f, 0x0c, 0xbb, 0xe1, 0x52, 0xc3, 0xd7, 0x71, 0xc5, 0xbf, 0xc4, 0x3f, 0x36, 0xd7, 0xe5, 0xf5, 0x23, 0x58, 0x19, 0xd0, 0x2c, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7821 = { .name = "ecdsa_secp256r1_sha512_7821", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7821_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7821_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7821_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7822 for ECDSA, tcId is 108 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7822_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7822_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7822_sig[] = { 0x40, 0xd4, 0xb3, 0x8a, 0x61, 0x23, 0x2e, 0x65, 0x4f, 0xfd, 0x08, 0xb9, 0x1e, 0x18, 0x60, 0x98, 0x51, 0xf4, 0x18, 0x9f, 0x7b, 0xf8, 0xa4, 0x25, 0xad, 0x59, 0xd9, 0xcb, 0xb1, 0xb5, 0x4c, 0x99, 0x9e, 0x77, 0x5a, 0x7b, 0xd0, 0xd9, 0x34, 0xc3, 0xed, 0x88, 0x60, 0x37, 0xf5, 0xd3, 0xb3, 0x56, 0xf6, 0x0e, 0xda, 0x41, 0x19, 0x16, 0x90, 0x56, 0x6e, 0x99, 0x67, 0x7d, 0x7a, 0xaf, 0x64, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7822 = { .name = "ecdsa_secp256r1_sha512_7822", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7822_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7822_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7822_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7823 for ECDSA, tcId is 109 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7823_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7823_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7823_sig[] = { 0xac, 0x8f, 0x64, 0xd7, 0xdf, 0x8d, 0x9f, 0xea, 0x00, 0x57, 0x44, 0xe3, 0xac, 0x4a, 0xf7, 0x0a, 0xa3, 0xa3, 0x8e, 0x5a, 0x0f, 0x3d, 0x06, 0x9d, 0x85, 0x80, 0x6a, 0x4f, 0x29, 0x71, 0x03, 0x39, 0xc0, 0x14, 0xe9, 0x6d, 0xec, 0xfe, 0xf3, 0x85, 0x7c, 0xc1, 0x74, 0xf2, 0xc4, 0x6a, 0xd0, 0x88, 0x2b, 0xef, 0x0c, 0x4c, 0x8a, 0x17, 0xce, 0x09, 0x44, 0x19, 0x61, 0xe4, 0xae, 0x8d, 0x2d, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7823 = { .name = "ecdsa_secp256r1_sha512_7823", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7823_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7823_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7823_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7824 for ECDSA, tcId is 110 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7824_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7824_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7824_sig[] = { 0x41, 0xb3, 0x76, 0x6f, 0x41, 0xa6, 0x73, 0xa0, 0x1e, 0x2c, 0x0c, 0xab, 0x5c, 0xee, 0xdb, 0xce, 0xc8, 0xd8, 0x25, 0x30, 0xa3, 0x93, 0xf8, 0x84, 0xd7, 0x2a, 0xa4, 0xe6, 0x68, 0x5d, 0xea, 0x0a, 0x07, 0x3a, 0x55, 0xdc, 0xa2, 0xda, 0x57, 0x7c, 0xaf, 0xb4, 0x0e, 0x12, 0xdd, 0x20, 0xbf, 0x85, 0x29, 0xa1, 0x3a, 0x6a, 0xcd, 0xf9, 0xa1, 0xc7, 0xd4, 0xb2, 0x04, 0x8d, 0x60, 0x87, 0x6c, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7824 = { .name = "ecdsa_secp256r1_sha512_7824", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7824_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7824_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7824_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7825 for ECDSA, tcId is 111 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7825_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7825_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7825_sig[] = { 0x19, 0x42, 0x75, 0x5a, 0xa8, 0x12, 0x83, 0x82, 0xcd, 0x8e, 0x35, 0xa4, 0x35, 0x0c, 0x22, 0xcc, 0x45, 0xba, 0x57, 0x04, 0xd9, 0x9e, 0x8a, 0x24, 0x09, 0x70, 0xdf, 0x11, 0x95, 0x6a, 0xd8, 0x66, 0xf6, 0x4c, 0xf1, 0xe0, 0x81, 0x6c, 0xf7, 0xac, 0x50, 0x44, 0xf7, 0x3b, 0xa9, 0x38, 0xe1, 0x42, 0xef, 0x33, 0x05, 0xcb, 0x09, 0xbe, 0xcb, 0x80, 0xa0, 0xa5, 0xb9, 0xad, 0x7b, 0xa3, 0xeb, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7825 = { .name = "ecdsa_secp256r1_sha512_7825", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7825_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7825_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7825_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7826 for ECDSA, tcId is 112 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7826_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7826_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7826_sig[] = { 0x51, 0xab, 0xa4, 0xff, 0x1c, 0x7d, 0xdf, 0x17, 0xe0, 0x63, 0x2a, 0xb7, 0x16, 0x84, 0xd8, 0xde, 0x6d, 0xc7, 0x00, 0x21, 0x9e, 0xf3, 0x46, 0xcb, 0x28, 0xce, 0x9d, 0xaf, 0xc3, 0x56, 0x5b, 0x3b, 0xb6, 0xaa, 0xeb, 0xe1, 0xaf, 0x0a, 0xd0, 0x1f, 0x07, 0xa6, 0x8b, 0xf1, 0xcf, 0x57, 0xf9, 0xd6, 0x04, 0x0b, 0x43, 0xc1, 0x4b, 0x7e, 0xb8, 0x23, 0x85, 0x42, 0x76, 0x0e, 0x32, 0xce, 0x3b, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7826 = { .name = "ecdsa_secp256r1_sha512_7826", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7826_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7826_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7826_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7827 for ECDSA, tcId is 113 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7827_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7827_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7827_sig[] = { 0x91, 0xef, 0xbf, 0xcc, 0x73, 0x16, 0x50, 0xe9, 0xf0, 0x04, 0xc3, 0x8b, 0x71, 0xdb, 0x14, 0x6c, 0x17, 0xbf, 0x87, 0x1c, 0x82, 0xc4, 0xe8, 0x77, 0x16, 0xf7, 0xff, 0x2f, 0x7f, 0x9e, 0x51, 0xd0, 0x08, 0x9e, 0xa6, 0x31, 0xa7, 0xc5, 0xf0, 0x53, 0x11, 0xc5, 0x21, 0xd2, 0x1b, 0xa7, 0x98, 0xb5, 0x17, 0x48, 0x81, 0xf0, 0xfd, 0x80, 0x95, 0xfb, 0x3a, 0x77, 0x51, 0x59, 0x13, 0xef, 0xb6, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7827 = { .name = "ecdsa_secp256r1_sha512_7827", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7827_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7827_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7827_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7828 for ECDSA, tcId is 114 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7828_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7828_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7828_sig[] = { 0x4a, 0x7e, 0x47, 0xbd, 0x28, 0x1e, 0xa0, 0x9b, 0x9e, 0x3a, 0x32, 0x93, 0x4c, 0x7a, 0x96, 0x9e, 0x1f, 0x78, 0x8f, 0x97, 0x8b, 0x41, 0x58, 0x59, 0x89, 0xf4, 0x68, 0x9e, 0x80, 0x46, 0x63, 0xfb, 0xe6, 0x5f, 0x6b, 0xd7, 0x02, 0x40, 0x3c, 0xbb, 0xed, 0x7f, 0x8a, 0xd0, 0x04, 0x5f, 0x33, 0x1d, 0x4a, 0x96, 0xfb, 0xf8, 0xc4, 0x3f, 0x71, 0xf1, 0x16, 0x15, 0xb7, 0xd1, 0xb9, 0x15, 0x3b, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7828 = { .name = "ecdsa_secp256r1_sha512_7828", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7828_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7828_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7828_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7829 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7829_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7829_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7829_sig[] = { 0xc7, 0x95, 0xf5, 0xda, 0x86, 0xe1, 0x0a, 0x60, 0x4d, 0x4f, 0x94, 0xbf, 0x7c, 0xac, 0x38, 0x1c, 0x73, 0xed, 0xad, 0x14, 0x61, 0xd6, 0x69, 0x29, 0xe5, 0x3a, 0xa5, 0x7c, 0xa2, 0x94, 0xe8, 0x9f, 0xba, 0xe7, 0x84, 0xab, 0x6c, 0x7b, 0x58, 0x33, 0x2e, 0xe0, 0x5e, 0x7d, 0x54, 0x16, 0x9e, 0xdf, 0x55, 0xce, 0x45, 0xf0, 0x30, 0xe7, 0x1a, 0xe8, 0xdf, 0x63, 0x96, 0x9f, 0xb3, 0x27, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7829 = { .name = "ecdsa_secp256r1_sha512_7829", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7829_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7829_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7829_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7830 for ECDSA, tcId is 116 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7830_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7830_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7830_sig[] = { 0xea, 0x68, 0xb2, 0x48, 0x43, 0xb2, 0x25, 0xf5, 0x05, 0xe0, 0x1c, 0x0e, 0x60, 0x8b, 0x20, 0xb4, 0xd9, 0x3e, 0x8f, 0xaf, 0x6b, 0x9c, 0xf7, 0x0c, 0xf8, 0xf9, 0x13, 0x4a, 0x80, 0xe7, 0xb6, 0x68, 0xa3, 0xab, 0xc0, 0x44, 0xb4, 0x72, 0x8f, 0x80, 0xfe, 0x41, 0x4b, 0xdc, 0x66, 0xf0, 0x32, 0xb2, 0x62, 0x35, 0x67, 0x20, 0x54, 0x7b, 0xec, 0x77, 0x29, 0xfa, 0xd9, 0x41, 0x51, 0xc6, 0xad, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7830 = { .name = "ecdsa_secp256r1_sha512_7830", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7830_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7830_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7830_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7831 for ECDSA, tcId is 117 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7831_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7831_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7831_sig[] = { 0xbf, 0xe7, 0x50, 0x21, 0x40, 0xc5, 0x7a, 0x24, 0xa7, 0x7e, 0xdc, 0x3d, 0x9b, 0x3c, 0x4b, 0xc1, 0x1d, 0x21, 0xbd, 0xb0, 0xb1, 0x96, 0x97, 0x7b, 0x7f, 0x2b, 0x13, 0xac, 0x97, 0x3a, 0xd6, 0x97, 0x94, 0x7a, 0x01, 0xda, 0x97, 0x31, 0x84, 0x9d, 0x72, 0xb6, 0x7e, 0xf7, 0xbc, 0x40, 0xb0, 0x12, 0x48, 0x0f, 0xd3, 0x89, 0x89, 0x5a, 0xad, 0x1f, 0x6b, 0x1c, 0xdb, 0xea, 0xb3, 0xb9, 0x3b, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7831 = { .name = "ecdsa_secp256r1_sha512_7831", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7831_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7831_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7831_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7832 for ECDSA, tcId is 118 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7832_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7832_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7832_sig[] = { 0x34, 0x34, 0xee, 0x11, 0x42, 0x74, 0x0a, 0x0a, 0xb8, 0x62, 0x3b, 0x97, 0xfc, 0x8d, 0xc2, 0x56, 0x7e, 0xda, 0x45, 0xda, 0xdf, 0x60, 0x39, 0xb4, 0x5c, 0x44, 0x88, 0x19, 0xe8, 0x40, 0xcf, 0x30, 0x3c, 0x0f, 0xac, 0x04, 0x87, 0x84, 0x19, 0x97, 0x20, 0x2c, 0x29, 0xf3, 0xbf, 0x2d, 0xf5, 0x40, 0xb1, 0x15, 0xb2, 0x9d, 0xc6, 0x19, 0x16, 0x0d, 0x52, 0x20, 0x3d, 0x4a, 0x1f, 0xd4, 0xb9, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7832 = { .name = "ecdsa_secp256r1_sha512_7832", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7832_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7832_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7832_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7833 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7833_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7833_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7833_sig[] = { 0x53, 0x38, 0x50, 0x0e, 0x23, 0xba, 0x96, 0xa0, 0xad, 0xc6, 0xef, 0x84, 0x93, 0x2e, 0x25, 0xfb, 0xad, 0x74, 0x35, 0xd9, 0xf7, 0x0e, 0xb7, 0xf4, 0x76, 0xc6, 0x91, 0x2d, 0xe1, 0x2e, 0x33, 0xc8, 0xa0, 0x02, 0xf5, 0x58, 0x3e, 0xa8, 0xc0, 0xd7, 0xfb, 0x17, 0x13, 0x6d, 0x0e, 0xe0, 0x41, 0x5a, 0xcf, 0x62, 0x98, 0x79, 0xce, 0x6b, 0x01, 0xac, 0x52, 0xe3, 0xec, 0xd7, 0x77, 0x2a, 0x37, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7833 = { .name = "ecdsa_secp256r1_sha512_7833", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7833_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7833_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7833_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7834 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7834_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7834_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7834_sig[] = { 0x4f, 0xf2, 0xd4, 0xe3, 0x1f, 0x41, 0x80, 0xde, 0x69, 0x01, 0xd2, 0xd2, 0x03, 0x41, 0xd1, 0x23, 0x87, 0xc9, 0xc5, 0x5f, 0x4c, 0xf0, 0x03, 0xa7, 0x42, 0xf0, 0x49, 0xb8, 0x4a, 0xf6, 0xfe, 0x05, 0x03, 0x12, 0xf3, 0x87, 0x71, 0x41, 0x45, 0x55, 0xfa, 0x5e, 0xd2, 0x81, 0x7d, 0xcc, 0x62, 0x9a, 0x8c, 0x7c, 0xf6, 0x9d, 0x30, 0x63, 0x00, 0xe8, 0x7b, 0xc1, 0x67, 0x27, 0x8e, 0xc3, 0xef, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7834 = { .name = "ecdsa_secp256r1_sha512_7834", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7834_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7834_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7834_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7835 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7835_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7835_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7835_sig[] = { 0x51, 0xd6, 0x65, 0xba, 0xd5, 0xf2, 0xd6, 0x30, 0x6c, 0x6b, 0xbf, 0xe1, 0xf2, 0x75, 0x55, 0x88, 0x76, 0x70, 0x06, 0x1d, 0x4d, 0xf3, 0x6e, 0xc9, 0xf4, 0xce, 0x6c, 0xdf, 0xaf, 0x9e, 0xa7, 0xac, 0x29, 0x05, 0xe4, 0x3f, 0x62, 0x07, 0xee, 0x93, 0xdf, 0x35, 0xa2, 0xe9, 0xfb, 0x9b, 0xc8, 0x09, 0x8c, 0x44, 0x8a, 0xe9, 0x8a, 0x14, 0xe4, 0xad, 0x1e, 0xba, 0xea, 0x5d, 0x56, 0xb6, 0xe4, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7835 = { .name = "ecdsa_secp256r1_sha512_7835", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7835_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7835_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7835_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7836 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7836_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7836_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7836_sig[] = { 0xb8, 0x04, 0xe0, 0x23, 0x5f, 0x13, 0x5a, 0xba, 0x7b, 0x75, 0x31, 0xb6, 0x83, 0x1f, 0x26, 0xcc, 0x9f, 0xb7, 0x7d, 0x3f, 0x83, 0x85, 0x49, 0x57, 0x43, 0x1b, 0xe2, 0x07, 0x06, 0xb8, 0x13, 0x69, 0x9d, 0x31, 0x7f, 0xd0, 0x8e, 0x4e, 0x04, 0x67, 0x61, 0x7d, 0xb8, 0x19, 0xcd, 0xe1, 0xd7, 0xd4, 0xd7, 0x4d, 0xa4, 0x89, 0xb2, 0xbc, 0xe4, 0xdb, 0x05, 0x5e, 0xa0, 0x1e, 0xcc, 0xfa, 0xfc, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7836 = { .name = "ecdsa_secp256r1_sha512_7836", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7836_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7836_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7836_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7837 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7837_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7837_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7837_sig[] = { 0x8a, 0xb5, 0x0e, 0xf3, 0x66, 0x0c, 0xcb, 0x6a, 0xf3, 0x4c, 0x78, 0xe7, 0x95, 0xde, 0xd6, 0xb2, 0x56, 0xff, 0xca, 0x5c, 0x94, 0xf2, 0x49, 0xf3, 0xd9, 0x07, 0xfb, 0x65, 0x23, 0x5e, 0xf6, 0x80, 0x49, 0xd5, 0xaa, 0xea, 0xe5, 0xa6, 0xd0, 0xc1, 0x5b, 0x28, 0x6e, 0x42, 0x8b, 0x5e, 0x72, 0x0c, 0xf3, 0x7a, 0x82, 0x2e, 0xde, 0x44, 0x5b, 0xaa, 0x14, 0x3f, 0xfa, 0xe6, 0x9a, 0xba, 0x91, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7837 = { .name = "ecdsa_secp256r1_sha512_7837", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7837_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7837_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7837_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7838 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7838_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7838_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7838_sig[] = { 0x57, 0x1b, 0x9c, 0x46, 0xa4, 0x7c, 0x5c, 0xc5, 0x3a, 0x57, 0x4c, 0x19, 0x6c, 0x3f, 0xb0, 0x7f, 0x35, 0x10, 0xc0, 0xf4, 0x44, 0x3b, 0x9f, 0x2f, 0xe7, 0x81, 0x25, 0x2c, 0x24, 0xd3, 0x43, 0xde, 0x68, 0xa9, 0xae, 0xbd, 0x50, 0xff, 0x16, 0x5c, 0x89, 0xb5, 0xb9, 0xcb, 0x6c, 0x17, 0x54, 0x19, 0x19, 0x58, 0xf3, 0x60, 0xb4, 0xd2, 0x85, 0x1a, 0x48, 0x1a, 0x3e, 0x11, 0x06, 0xee, 0x78, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7838 = { .name = "ecdsa_secp256r1_sha512_7838", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7838_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7838_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7838_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7839 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7839_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7839_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7839_sig[] = { 0x4c, 0xb7, 0x81, 0x7b, 0x04, 0xdc, 0x73, 0xbe, 0x60, 0xd3, 0x71, 0x18, 0x03, 0xbc, 0x10, 0x68, 0x7a, 0x6e, 0x3f, 0x4a, 0xb7, 0x9c, 0x4c, 0x1a, 0x4e, 0x9d, 0x63, 0xa7, 0x31, 0x74, 0xd4, 0xeb, 0xce, 0x39, 0x8d, 0x2d, 0x66, 0x02, 0xd2, 0xaf, 0x58, 0xa6, 0x40, 0x42, 0xf8, 0x30, 0xbf, 0x77, 0x4a, 0xee, 0x18, 0x20, 0x9d, 0x6f, 0xb5, 0xc7, 0x43, 0xb6, 0xa6, 0xe4, 0x37, 0x82, 0x6b, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7839 = { .name = "ecdsa_secp256r1_sha512_7839", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7839_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7839_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7839_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7840 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7840_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7840_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7840_sig[] = { 0x68, 0x43, 0x99, 0xc6, 0xcd, 0x6e, 0xbb, 0x1c, 0x5d, 0x5e, 0xfb, 0x0d, 0x78, 0xdc, 0xe4, 0x0e, 0xbd, 0x48, 0xd9, 0xd9, 0x44, 0xeb, 0x65, 0x48, 0xc9, 0xce, 0x68, 0xd7, 0xfd, 0xc8, 0x22, 0x29, 0xcf, 0x25, 0xc8, 0xe4, 0x27, 0xfa, 0xe3, 0x59, 0xbf, 0xe6, 0x0f, 0xa0, 0x29, 0x64, 0xf4, 0xc9, 0xb8, 0xd6, 0xdb, 0x54, 0x61, 0x2e, 0x05, 0xc7, 0x8c, 0x34, 0x1f, 0x0a, 0x8c, 0x52, 0xd0, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7840 = { .name = "ecdsa_secp256r1_sha512_7840", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7840_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7840_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7840_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7841 for ECDSA, tcId is 127 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7841_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7841_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7841_sig[] = { 0x20, 0xb7, 0xb3, 0x6d, 0x5b, 0xc7, 0x6f, 0xa1, 0x82, 0xca, 0x27, 0x15, 0x2a, 0x99, 0xa9, 0x56, 0xe6, 0xa0, 0x88, 0x00, 0x00, 0x69, 0x42, 0x96, 0xe3, 0x1a, 0xf9, 0x8a, 0x73, 0x12, 0xd0, 0x4b, 0xee, 0xea, 0xbc, 0x55, 0x21, 0xf9, 0x85, 0x6e, 0x92, 0x0e, 0xb7, 0xd2, 0x9e, 0xd7, 0xe4, 0x04, 0x2f, 0x17, 0x8f, 0xf7, 0x06, 0xdf, 0xf8, 0xee, 0xb2, 0x4b, 0x42, 0x9e, 0x3b, 0x63, 0x40, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7841 = { .name = "ecdsa_secp256r1_sha512_7841", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7841_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7841_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7841_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7842 for ECDSA, tcId is 128 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7842_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7842_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7842_sig[] = { 0x6b, 0x65, 0xc9, 0x5e, 0x8e, 0x12, 0x1d, 0x2e, 0x6e, 0xe5, 0x06, 0xcf, 0xd6, 0x2c, 0xb8, 0x8e, 0x0b, 0xfb, 0x35, 0x89, 0xda, 0x40, 0x87, 0x68, 0x98, 0xef, 0x66, 0xc4, 0x39, 0x82, 0xac, 0xa9, 0x09, 0x64, 0x2c, 0x05, 0xad, 0x61, 0x9b, 0x44, 0x02, 0xfd, 0x29, 0x7e, 0xb5, 0x7e, 0x29, 0xcc, 0xa5, 0xc2, 0xeb, 0x68, 0x23, 0x93, 0x1b, 0xa8, 0x2d, 0xe3, 0x2d, 0x7c, 0x65, 0x2b, 0xa7, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7842 = { .name = "ecdsa_secp256r1_sha512_7842", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7842_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7842_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7842_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7843 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7843_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7843_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7843_sig[] = { 0x67, 0xc7, 0x4c, 0xbf, 0x5e, 0xa4, 0xb7, 0x77, 0xbf, 0x52, 0x1a, 0xce, 0x09, 0x9f, 0x4f, 0x09, 0x4d, 0x8f, 0x58, 0x90, 0x0e, 0x15, 0xe6, 0x7e, 0x1b, 0x4b, 0xd3, 0x99, 0x05, 0x66, 0x29, 0xed, 0x3d, 0x28, 0x84, 0x65, 0x5c, 0x49, 0xb8, 0xb5, 0xf6, 0x4e, 0x80, 0x2a, 0x05, 0x4e, 0x7b, 0xf0, 0x9b, 0x0f, 0xc8, 0x0c, 0xa1, 0x8e, 0xbf, 0x92, 0x7b, 0x82, 0xe5, 0x8b, 0xb4, 0xa0, 0x04, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7843 = { .name = "ecdsa_secp256r1_sha512_7843", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7843_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7843_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7843_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7844 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7844_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7844_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7844_sig[] = { 0x79, 0xa5, 0xe4, 0x0d, 0xa5, 0xcf, 0x34, 0xc4, 0xc3, 0x9a, 0xdf, 0x7d, 0xfc, 0x5d, 0x45, 0x49, 0x95, 0xa2, 0x50, 0x31, 0x4e, 0xbd, 0x21, 0x2b, 0x5c, 0x8e, 0x3f, 0x4e, 0x6f, 0x87, 0x5f, 0xeb, 0xb2, 0x68, 0x92, 0x0e, 0x40, 0x3b, 0xa1, 0x78, 0x28, 0xff, 0x27, 0x19, 0x38, 0xa6, 0x55, 0x8a, 0x5b, 0x2d, 0xd0, 0x00, 0x22, 0x9f, 0x8e, 0xdb, 0x4a, 0x9d, 0x9f, 0x9b, 0x6a, 0xc1, 0xb4, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7844 = { .name = "ecdsa_secp256r1_sha512_7844", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7844_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7844_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7844_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7845 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7845_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7845_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7845_sig[] = { 0xc8, 0xb1, 0x30, 0x06, 0xc3, 0xa5, 0x1a, 0x32, 0x2f, 0xff, 0x93, 0x21, 0x76, 0x1b, 0x01, 0xde, 0x13, 0x4f, 0x52, 0x6b, 0xe5, 0x82, 0xb2, 0x2e, 0x19, 0x69, 0x3c, 0x44, 0x3f, 0xc9, 0xfe, 0x46, 0x34, 0xe7, 0xf6, 0x01, 0x79, 0xc6, 0x16, 0x2a, 0xb9, 0x80, 0xfc, 0xd5, 0x8f, 0x17, 0x3b, 0x0e, 0x6c, 0x30, 0xb5, 0x24, 0xd3, 0x5c, 0x67, 0x92, 0x16, 0x77, 0x52, 0x2d, 0xce, 0xf8, 0x43, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7845 = { .name = "ecdsa_secp256r1_sha512_7845", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7845_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7845_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7845_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7846 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7846_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7846_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7846_sig[] = { 0x35, 0x13, 0xdb, 0x74, 0x54, 0x89, 0xa4, 0x87, 0xc8, 0x8a, 0x6c, 0xed, 0xf8, 0x79, 0x5b, 0x64, 0x0f, 0x8f, 0x71, 0x57, 0x83, 0x97, 0xbd, 0xab, 0xd6, 0xcc, 0x58, 0x6c, 0x25, 0xbd, 0x66, 0xad, 0x99, 0xa7, 0x2c, 0xd3, 0xf0, 0xca, 0x6c, 0x79, 0x91, 0x49, 0x28, 0x3c, 0xa0, 0xaf, 0x37, 0xf8, 0x6b, 0x88, 0x20, 0x0d, 0x0c, 0x90, 0x5b, 0xd3, 0xc9, 0xf1, 0xb8, 0x59, 0xe5, 0x5b, 0x16, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7846 = { .name = "ecdsa_secp256r1_sha512_7846", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7846_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7846_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7846_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7847 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7847_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7847_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7847_sig[] = { 0x3a, 0x63, 0x86, 0xaf, 0xb0, 0x8f, 0x7f, 0xf8, 0x14, 0x0b, 0x5a, 0x27, 0x0f, 0x76, 0x4e, 0x87, 0x06, 0xef, 0x28, 0x30, 0xfb, 0x17, 0x74, 0x46, 0xf7, 0xb4, 0xee, 0xb8, 0xa2, 0x5a, 0xac, 0x64, 0x4b, 0x70, 0x85, 0x4b, 0x38, 0xc2, 0x92, 0x45, 0xb2, 0xb9, 0x80, 0xeb, 0xa1, 0x0e, 0xa9, 0x36, 0xc6, 0x8a, 0x38, 0xc1, 0xda, 0x52, 0x55, 0xce, 0x23, 0x86, 0xdb, 0x23, 0xaf, 0xc7, 0xc0, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7847 = { .name = "ecdsa_secp256r1_sha512_7847", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7847_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7847_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7847_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7848 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7848_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7848_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7848_sig[] = { 0xb8, 0xfc, 0x54, 0xa8, 0xa6, 0xbe, 0x3c, 0x55, 0xe9, 0x9c, 0x06, 0xf9, 0x9c, 0xcd, 0xcc, 0xe7, 0xaf, 0x5c, 0x18, 0xa3, 0xc5, 0x82, 0x97, 0x26, 0xa8, 0x70, 0xcc, 0x10, 0x68, 0x45, 0x8f, 0x64, 0xcc, 0x72, 0x37, 0xc3, 0x9c, 0x8e, 0x6a, 0x4a, 0x1c, 0x8c, 0x62, 0xf5, 0xf8, 0x86, 0x36, 0x54, 0x9c, 0x74, 0x10, 0x79, 0x8b, 0x89, 0x68, 0x4c, 0x50, 0x2c, 0x3a, 0xdf, 0xe5, 0xfb, 0x7a, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7848 = { .name = "ecdsa_secp256r1_sha512_7848", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7848_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7848_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7848_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7849 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7849_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7849_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7849_sig[] = { 0x47, 0xb4, 0x60, 0x85, 0x1e, 0x56, 0x07, 0xf2, 0x02, 0x16, 0x26, 0x63, 0x5c, 0x56, 0x5a, 0x63, 0xf7, 0x8f, 0x55, 0x87, 0x95, 0xe1, 0xb3, 0x30, 0xd0, 0x91, 0x15, 0x97, 0x0d, 0xbb, 0xb8, 0xab, 0xa6, 0xa9, 0xf4, 0xf2, 0x13, 0xe0, 0x8d, 0x3c, 0x73, 0x6d, 0x3e, 0x1c, 0x44, 0xa3, 0x51, 0x40, 0xcb, 0x10, 0x76, 0x19, 0xf2, 0x65, 0xa5, 0xb1, 0x36, 0x08, 0xed, 0x72, 0x9f, 0xd6, 0xd8, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7849 = { .name = "ecdsa_secp256r1_sha512_7849", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7849_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7849_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7849_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7850 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7850_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7850_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7850_sig[] = { 0x8c, 0xfd, 0xa4, 0xf7, 0xa6, 0x58, 0x64, 0xeb, 0xbe, 0xa3, 0x14, 0x48, 0x63, 0xda, 0x9b, 0x07, 0x5c, 0x07, 0xb5, 0xb4, 0x2c, 0xb4, 0x56, 0x96, 0x43, 0xdd, 0xfd, 0x70, 0xdd, 0x75, 0x3b, 0x19, 0x59, 0x57, 0x84, 0xb1, 0xab, 0x21, 0x78, 0x74, 0xb8, 0x2b, 0x95, 0x85, 0x52, 0x1f, 0x80, 0x90, 0xb9, 0xf6, 0x32, 0x28, 0x84, 0xab, 0x7a, 0x62, 0x04, 0x64, 0xf5, 0x1c, 0xf8, 0x46, 0xc5, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7850 = { .name = "ecdsa_secp256r1_sha512_7850", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7850_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7850_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7850_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7851 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7851_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7851_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7851_sig[] = { 0x4c, 0xd6, 0xa4, 0x5b, 0xd7, 0xc8, 0xbf, 0x0e, 0xdb, 0xdf, 0x07, 0x3d, 0xbf, 0x1f, 0x74, 0x62, 0x34, 0xcb, 0xbc, 0xa3, 0x1e, 0xc2, 0x0b, 0x52, 0x6b, 0x07, 0x7c, 0x9f, 0x48, 0x00, 0x96, 0xe7, 0x7c, 0xf9, 0x7a, 0xe0, 0xd3, 0x3f, 0x50, 0xb7, 0x3a, 0x5d, 0x7a, 0xdf, 0x8a, 0xa4, 0xee, 0xeb, 0x6f, 0xf1, 0x0f, 0x89, 0xa8, 0x79, 0x4e, 0xfe, 0x1d, 0x87, 0x4e, 0x23, 0x29, 0x9c, 0x1b, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7851 = { .name = "ecdsa_secp256r1_sha512_7851", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7851_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7851_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7851_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7852 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7852_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7852_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7852_sig[] = { 0x2e, 0x23, 0x3f, 0x4d, 0xf8, 0xff, 0xeb, 0xea, 0xec, 0x64, 0x84, 0x2b, 0x23, 0xcc, 0xe1, 0x61, 0xc8, 0x0d, 0x30, 0x3b, 0x01, 0x6e, 0xca, 0x56, 0x24, 0x29, 0xb2, 0x27, 0xae, 0x2b, 0x58, 0xec, 0x46, 0xb6, 0xb5, 0x6a, 0xde, 0xc8, 0x2f, 0x82, 0xb5, 0x4d, 0xaa, 0x6a, 0x5f, 0xca, 0x28, 0x67, 0x40, 0xa1, 0x70, 0x48, 0x28, 0x05, 0x20, 0x72, 0xa5, 0xf0, 0xbc, 0x8c, 0x7b, 0x88, 0x42, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7852 = { .name = "ecdsa_secp256r1_sha512_7852", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7852_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7852_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7852_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7853 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7853_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7853_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7853_sig[] = { 0x54, 0x9f, 0x65, 0x8d, 0x4a, 0x3f, 0x98, 0x23, 0x3a, 0x2c, 0x93, 0xbd, 0x5b, 0x1a, 0x52, 0xd6, 0x4a, 0xf1, 0x08, 0x15, 0xae, 0x60, 0xbe, 0xcb, 0x41, 0x39, 0xca, 0xc8, 0x22, 0xb5, 0x79, 0xc3, 0x27, 0xbd, 0xdd, 0xf0, 0xdb, 0xcf, 0x37, 0x4a, 0x2a, 0xec, 0x8a, 0xcc, 0xc4, 0x7a, 0x8a, 0xc8, 0x97, 0xf8, 0xd1, 0x82, 0x3d, 0xda, 0x8e, 0xb2, 0x05, 0x25, 0x90, 0x97, 0x0b, 0x39, 0xce, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7853 = { .name = "ecdsa_secp256r1_sha512_7853", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7853_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7853_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7853_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7854 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7854_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7854_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7854_sig[] = { 0x9f, 0xab, 0xcc, 0x1e, 0x5f, 0xd9, 0x65, 0x22, 0x69, 0x02, 0xf5, 0x94, 0x55, 0x9e, 0x23, 0x13, 0x69, 0xe5, 0x84, 0x45, 0x39, 0x74, 0xe7, 0x4f, 0x49, 0xd7, 0xd7, 0x62, 0xe1, 0x34, 0xfb, 0x9d, 0x29, 0x3c, 0xcc, 0xc5, 0x10, 0x79, 0x3b, 0xac, 0x45, 0xce, 0x5d, 0xa2, 0xbb, 0x6c, 0x9e, 0x90, 0x64, 0x37, 0xf5, 0x94, 0x35, 0xca, 0x20, 0x66, 0x55, 0xf7, 0x4b, 0x62, 0x5d, 0xf0, 0x7c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7854 = { .name = "ecdsa_secp256r1_sha512_7854", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7854_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7854_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7854_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7855 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7855_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7855_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7855_sig[] = { 0x2e, 0x5c, 0x14, 0x0f, 0xd6, 0xf5, 0xf8, 0x23, 0xad, 0xdc, 0x80, 0x88, 0xff, 0xaa, 0xe9, 0x67, 0xe7, 0xf4, 0x89, 0x72, 0x74, 0x31, 0x67, 0x69, 0x56, 0x1d, 0xfb, 0x31, 0x43, 0x58, 0x25, 0xd9, 0xed, 0xa4, 0x73, 0x27, 0xd7, 0xcf, 0xae, 0x1d, 0xaa, 0x34, 0x4f, 0xf5, 0x58, 0x2a, 0x46, 0x7b, 0xd1, 0x8e, 0xb9, 0xf0, 0x1c, 0xae, 0xab, 0x9c, 0x6d, 0xa3, 0xc0, 0xcc, 0x89, 0xdf, 0x67, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7855 = { .name = "ecdsa_secp256r1_sha512_7855", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7855_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7855_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7855_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7856 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7856_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7856_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7856_sig[] = { 0x4c, 0x11, 0xe3, 0xb7, 0xef, 0xbe, 0x39, 0x08, 0xad, 0x21, 0x18, 0xe5, 0x4d, 0x7d, 0x34, 0xd6, 0xc6, 0xeb, 0x45, 0x70, 0xbf, 0x7f, 0xdb, 0x11, 0xa7, 0x67, 0x9f, 0xe9, 0x3a, 0xfa, 0x25, 0x4c, 0x71, 0x2e, 0x90, 0xf4, 0x21, 0x83, 0x6e, 0x54, 0x2d, 0xac, 0x49, 0xd1, 0x0b, 0xb3, 0x9d, 0xb4, 0xa9, 0x8b, 0x27, 0x35, 0xb6, 0x33, 0x6d, 0x8a, 0x3c, 0x39, 0x2f, 0x3b, 0x90, 0xe6, 0x0b, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7856 = { .name = "ecdsa_secp256r1_sha512_7856", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7856_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7856_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7856_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7857 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7857_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7857_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7857_sig[] = { 0xdf, 0xb4, 0x61, 0x93, 0x03, 0xf4, 0xff, 0x68, 0x95, 0x63, 0xd2, 0x27, 0x50, 0x69, 0xfa, 0xc4, 0x4d, 0x63, 0xea, 0x3c, 0x3b, 0x18, 0xf4, 0xfb, 0x1a, 0xc8, 0x05, 0xd7, 0xdf, 0x3d, 0x12, 0xec, 0x68, 0xe3, 0x7b, 0x84, 0x65, 0x83, 0x90, 0x1d, 0xb2, 0x56, 0x32, 0x9f, 0x9c, 0xf6, 0x4f, 0x40, 0xc4, 0x16, 0xfb, 0xa5, 0x0d, 0xcb, 0x9b, 0xe3, 0x33, 0xa3, 0xe2, 0x9c, 0x76, 0xae, 0x32, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7857 = { .name = "ecdsa_secp256r1_sha512_7857", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7857_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7857_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7857_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7858 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7858_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7858_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7858_sig[] = { 0xe7, 0x0e, 0x8e, 0x17, 0xbd, 0x75, 0x8f, 0xf0, 0xc4, 0x8f, 0x91, 0xcb, 0x2c, 0x53, 0xd2, 0x93, 0xf0, 0xf5, 0xae, 0x82, 0xeb, 0x9d, 0xfe, 0x76, 0xab, 0x98, 0xf9, 0xb0, 0x64, 0x27, 0x86, 0x35, 0x21, 0xdd, 0xe3, 0x2c, 0xb0, 0x38, 0x9c, 0xad, 0x7b, 0xdf, 0x67, 0x6d, 0x9b, 0x9b, 0x7d, 0x25, 0xbb, 0x03, 0x4a, 0xd2, 0x5a, 0x55, 0xea, 0x71, 0xee, 0x7e, 0xe2, 0x6a, 0x18, 0x35, 0x9d, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7858 = { .name = "ecdsa_secp256r1_sha512_7858", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7858_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7858_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7858_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7859 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7859_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7859_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7859_sig[] = { 0x42, 0x13, 0x97, 0xec, 0xae, 0x30, 0x61, 0x7a, 0x5a, 0x60, 0x81, 0xad, 0x1b, 0xad, 0xf6, 0xce, 0x9d, 0x9d, 0x4c, 0xb2, 0xaf, 0xda, 0xbf, 0x1f, 0x90, 0x0e, 0x7f, 0xdb, 0x7f, 0xb0, 0xaf, 0x5a, 0x57, 0xca, 0x89, 0xdc, 0x22, 0x80, 0x1c, 0x75, 0xfd, 0xbe, 0xfd, 0xae, 0xca, 0x65, 0xc6, 0x75, 0x62, 0x5f, 0x94, 0xde, 0x7d, 0x63, 0x50, 0x62, 0xb0, 0x8e, 0xd3, 0x08, 0xdf, 0x57, 0x62, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7859 = { .name = "ecdsa_secp256r1_sha512_7859", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7859_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7859_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7859_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7860 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7860_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7860_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7860_sig[] = { 0x06, 0x10, 0xc0, 0x80, 0x76, 0x90, 0x9b, 0xb7, 0x22, 0xfb, 0xa1, 0x05, 0xc2, 0x3e, 0xac, 0x8f, 0x66, 0xb4, 0xdb, 0x1d, 0x58, 0xf6, 0x6a, 0x88, 0x2f, 0xc9, 0x0d, 0x59, 0xac, 0xde, 0xc8, 0xe0, 0xaf, 0x59, 0xe8, 0xd5, 0x70, 0x76, 0x1c, 0xac, 0x58, 0x9d, 0x49, 0xf1, 0x1c, 0x88, 0x40, 0x07, 0xf7, 0xac, 0x1e, 0xea, 0x1a, 0x44, 0xc6, 0xf3, 0xfd, 0xad, 0x1d, 0x54, 0x21, 0x87, 0xd2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7860 = { .name = "ecdsa_secp256r1_sha512_7860", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7860_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7860_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7860_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7861 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7861_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7861_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7861_sig[] = { 0x59, 0xa1, 0x18, 0x1c, 0xab, 0x0e, 0xe8, 0xce, 0x94, 0xab, 0x2b, 0x5a, 0xb4, 0xf4, 0xb1, 0x3a, 0x42, 0x2e, 0x38, 0xef, 0xe6, 0x9f, 0x63, 0x4b, 0xf9, 0x47, 0x48, 0x5a, 0x5b, 0x9e, 0xa4, 0x9c, 0x9b, 0x3c, 0x91, 0x3d, 0x98, 0xa4, 0xab, 0x15, 0xf6, 0xa3, 0x9f, 0x18, 0x02, 0xb8, 0xf2, 0xd2, 0x85, 0x59, 0xaa, 0x1f, 0x8d, 0x03, 0xa3, 0xa8, 0x8d, 0xf0, 0x0c, 0x89, 0xdc, 0x29, 0x3a, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7861 = { .name = "ecdsa_secp256r1_sha512_7861", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7861_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7861_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7861_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7862 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7862_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7862_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7862_sig[] = { 0x8c, 0xae, 0x6c, 0x4d, 0xfb, 0xf9, 0x01, 0xbd, 0x66, 0xab, 0x82, 0x54, 0x10, 0x11, 0xfa, 0x15, 0xc8, 0xe9, 0x0e, 0x2c, 0x18, 0xc0, 0x1b, 0xd8, 0x81, 0xac, 0xaa, 0x2b, 0x63, 0xcb, 0x58, 0x7b, 0xa8, 0x6a, 0xcf, 0x94, 0x3f, 0x29, 0xce, 0xf9, 0x1d, 0x1b, 0x66, 0xa7, 0xde, 0x55, 0x47, 0xdf, 0x6c, 0xdf, 0xc4, 0x5d, 0xd7, 0xbe, 0xf8, 0x16, 0xdc, 0xb8, 0xde, 0x9f, 0x5a, 0x42, 0x5d, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7862 = { .name = "ecdsa_secp256r1_sha512_7862", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7862_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7862_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7862_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7863 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7863_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7863_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7863_sig[] = { 0x8b, 0x00, 0xc7, 0x4b, 0x86, 0x47, 0x4d, 0x78, 0x2e, 0xac, 0x99, 0x74, 0xae, 0xa6, 0x06, 0xd8, 0xf7, 0xee, 0x78, 0xc7, 0x95, 0x97, 0xe1, 0x56, 0x87, 0x02, 0x1f, 0x59, 0x91, 0xe8, 0x6a, 0xcd, 0x30, 0x9d, 0xfe, 0x36, 0x86, 0x64, 0x8e, 0xae, 0x10, 0x4e, 0x87, 0xb3, 0xe9, 0xb5, 0x61, 0x6a, 0x3a, 0xd4, 0x79, 0xca, 0x4f, 0x0b, 0x55, 0x8a, 0xe4, 0xf1, 0xe5, 0xab, 0x31, 0x15, 0x34, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7863 = { .name = "ecdsa_secp256r1_sha512_7863", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7863_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7863_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7863_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7864 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7864_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7864_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7864_sig[] = { 0x43, 0x3a, 0x91, 0x55, 0x04, 0xc9, 0x77, 0x80, 0x96, 0x34, 0xa3, 0x6f, 0xcf, 0x44, 0x80, 0xe4, 0xc8, 0x06, 0x9f, 0xc1, 0x27, 0xd2, 0x01, 0xd3, 0x0d, 0xfd, 0xb1, 0xf4, 0x23, 0xc9, 0x5f, 0xd4, 0xbc, 0xb1, 0xb8, 0x9a, 0xaf, 0xd5, 0x0a, 0x17, 0x66, 0xb0, 0x97, 0x41, 0xfc, 0x6a, 0x9a, 0x96, 0xe7, 0x44, 0xae, 0x98, 0x26, 0xd8, 0x39, 0xbf, 0x85, 0xff, 0xb5, 0x0a, 0x91, 0x98, 0x17, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7864 = { .name = "ecdsa_secp256r1_sha512_7864", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7864_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7864_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7864_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7865 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7865_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7865_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7865_sig[] = { 0x4b, 0x69, 0xab, 0xd2, 0xb3, 0x98, 0x40, 0xa5, 0x45, 0xcd, 0xd4, 0xa7, 0x2d, 0x38, 0x42, 0x34, 0x58, 0x0e, 0x2f, 0xd9, 0x38, 0xb7, 0x09, 0x1d, 0x0e, 0xcd, 0xb5, 0x62, 0x78, 0x08, 0x57, 0xdb, 0xfd, 0xab, 0x99, 0x57, 0x11, 0x9e, 0x0a, 0x40, 0x92, 0xaf, 0x82, 0xf6, 0xcc, 0x29, 0xf3, 0xc8, 0xa6, 0x92, 0x67, 0x1e, 0xc8, 0x6e, 0xfb, 0x0a, 0x03, 0xc1, 0x11, 0x2a, 0x0a, 0x1e, 0x04, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7865 = { .name = "ecdsa_secp256r1_sha512_7865", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7865_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7865_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7865_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7866 for ECDSA, tcId is 152 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7866_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7866_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7866_sig[] = { 0xda, 0xb9, 0xd3, 0x68, 0x6c, 0x28, 0x36, 0x3a, 0xd0, 0x17, 0xb4, 0xa2, 0xb3, 0x6d, 0x35, 0xbf, 0x2e, 0xb8, 0x06, 0x33, 0x61, 0x3d, 0x44, 0xde, 0xb9, 0x50, 0x1d, 0x42, 0xa3, 0xef, 0xbd, 0x38, 0x13, 0x92, 0xa5, 0x62, 0xd7, 0x9f, 0x9a, 0xb1, 0x90, 0x14, 0xe4, 0xf7, 0xe2, 0xf2, 0x66, 0x82, 0x59, 0xf3, 0x72, 0x0a, 0x76, 0xc1, 0x20, 0xd4, 0xa3, 0xc3, 0x96, 0x4e, 0x88, 0x0f, 0x76, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7866 = { .name = "ecdsa_secp256r1_sha512_7866", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7866_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7866_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7866_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7867 for ECDSA, tcId is 153 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7867_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7867_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7867_sig[] = { 0x23, 0xf9, 0x4e, 0x47, 0xb4, 0x40, 0xce, 0x37, 0x9b, 0x74, 0xc9, 0x31, 0x12, 0x32, 0xb1, 0x9a, 0x64, 0xe3, 0xe7, 0xc9, 0xb9, 0x0d, 0xa3, 0x4b, 0x0c, 0x1c, 0x3f, 0x3d, 0x7a, 0xf2, 0x81, 0x05, 0xe1, 0x42, 0x59, 0x03, 0xb1, 0x47, 0x9c, 0x2c, 0xe1, 0x8b, 0x10, 0x8a, 0x6d, 0x1e, 0xc8, 0xb7, 0xa4, 0xf0, 0xf6, 0x57, 0xde, 0xdb, 0x00, 0xde, 0x3a, 0x3c, 0xee, 0xa7, 0xfd, 0xee, 0xe9, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7867 = { .name = "ecdsa_secp256r1_sha512_7867", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7867_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7867_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7867_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7868 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7868_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7868_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7868_sig[] = { 0x9d, 0x70, 0x6a, 0x8f, 0xa8, 0x5d, 0x15, 0xbd, 0x0c, 0x34, 0x92, 0xc6, 0x67, 0x2d, 0xfe, 0x52, 0x9f, 0x40, 0x73, 0xb2, 0x17, 0xb3, 0x94, 0x7b, 0x5b, 0x2c, 0xfd, 0x61, 0xf8, 0x7c, 0xcb, 0x71, 0x6a, 0xaa, 0xaf, 0x36, 0x9f, 0x82, 0xa0, 0xe5, 0x42, 0xf7, 0x2d, 0xed, 0x7d, 0x7e, 0xb9, 0x0c, 0x83, 0x14, 0xff, 0xa6, 0x13, 0xa0, 0xea, 0x81, 0xda, 0x1c, 0x83, 0x93, 0xdb, 0xae, 0x2b, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7868 = { .name = "ecdsa_secp256r1_sha512_7868", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7868_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7868_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha512_7868_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7869 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7869_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7869_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7869_sig[] = { 0xac, 0x77, 0x91, 0x8c, 0x40, 0x85, 0xc8, 0xa7, 0xce, 0x50, 0x20, 0xb0, 0x0c, 0x31, 0x56, 0x29, 0xae, 0xe0, 0x53, 0xa4, 0x45, 0xcb, 0x46, 0x61, 0xeb, 0x50, 0xf6, 0xb6, 0x2a, 0x47, 0xda, 0x29, 0xdf, 0x2a, 0xea, 0x2b, 0x9c, 0x11, 0xa6, 0xce, 0x39, 0xd3, 0xcd, 0x9e, 0x1f, 0xaf, 0x4a, 0x53, 0x05, 0x7e, 0x0b, 0x1b, 0x2e, 0x48, 0xa3, 0x24, 0xbe, 0x9e, 0x77, 0x32, 0x03, 0xfe, 0x9f, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7869 = { .name = "ecdsa_secp256r1_sha512_7869", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7869_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7869_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7869_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7870 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7870_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7870_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7870_sig[] = { 0x9d, 0xb2, 0xdb, 0xd2, 0x93, 0x5f, 0x14, 0x7f, 0xae, 0x7f, 0x6a, 0x95, 0xc8, 0xe2, 0x30, 0x7b, 0xd8, 0x53, 0x7c, 0x3d, 0x96, 0xeb, 0x73, 0x2a, 0xd6, 0xd5, 0xeb, 0xdd, 0x89, 0xbc, 0x75, 0x4e, 0x93, 0xa9, 0xab, 0x99, 0xd2, 0xde, 0x9d, 0x08, 0xfe, 0x0a, 0x61, 0xe2, 0x6c, 0x8f, 0xe1, 0xeb, 0xbf, 0x88, 0x72, 0x6e, 0x4b, 0x69, 0xd5, 0x51, 0xb5, 0x7d, 0x15, 0xf0, 0xae, 0x16, 0xdf, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7870 = { .name = "ecdsa_secp256r1_sha512_7870", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7870_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7870_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7870_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7871 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7871_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7871_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7871_sig[] = { 0x76, 0x9f, 0x70, 0x09, 0x39, 0x39, 0xaf, 0xbd, 0x1f, 0xa1, 0x58, 0x73, 0xde, 0xcf, 0xa8, 0x03, 0xca, 0x52, 0x3a, 0xce, 0x80, 0x40, 0x28, 0x0b, 0xa7, 0x8c, 0xf8, 0x33, 0x49, 0x77, 0x22, 0xbc, 0x36, 0x98, 0x75, 0xab, 0xa5, 0xe1, 0xce, 0xd5, 0xa4, 0xca, 0x84, 0x44, 0xec, 0x93, 0x99, 0xa3, 0x80, 0x38, 0xb0, 0x0e, 0x15, 0x3a, 0x0a, 0xe3, 0x4d, 0x9b, 0x3c, 0x97, 0x81, 0x44, 0x7e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7871 = { .name = "ecdsa_secp256r1_sha512_7871", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7871_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7871_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7871_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7872 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7872_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7872_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7872_sig[] = { 0x26, 0xe5, 0x18, 0x2b, 0x98, 0x22, 0x55, 0x0a, 0xd5, 0x2f, 0x46, 0xad, 0x80, 0x78, 0x1d, 0x6b, 0xef, 0x3d, 0x11, 0x0a, 0x20, 0x4d, 0xb5, 0xe5, 0x8a, 0x07, 0x46, 0xf7, 0x96, 0x98, 0x22, 0x00, 0xa9, 0x41, 0x8e, 0x76, 0x02, 0x9c, 0xed, 0x0c, 0xf7, 0x8a, 0x57, 0x1a, 0x9e, 0x59, 0xad, 0x04, 0x08, 0x6e, 0x91, 0xf7, 0x0e, 0x68, 0x13, 0x98, 0x1b, 0xb3, 0x3c, 0x1d, 0xee, 0x89, 0x11, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7872 = { .name = "ecdsa_secp256r1_sha512_7872", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7872_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7872_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7872_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7873 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7873_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7873_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7873_sig[] = { 0xe7, 0xbd, 0x6a, 0xef, 0xcf, 0x7b, 0x27, 0xe1, 0xf3, 0xfa, 0xdb, 0xe7, 0x13, 0xf9, 0xad, 0xb3, 0xd2, 0x33, 0x98, 0xe8, 0x82, 0x00, 0xcd, 0x2e, 0x94, 0x98, 0x9c, 0x9d, 0x12, 0xe9, 0x21, 0x77, 0x95, 0x83, 0xe0, 0xde, 0x3b, 0x76, 0xf8, 0xd4, 0xb1, 0xe6, 0x34, 0xa8, 0x1c, 0xbc, 0x34, 0xaf, 0x54, 0xe2, 0xf8, 0x59, 0x9f, 0x36, 0x84, 0xce, 0x48, 0xd3, 0x72, 0x76, 0x0c, 0x82, 0x04, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7873 = { .name = "ecdsa_secp256r1_sha512_7873", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7873_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7873_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7873_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7874 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7874_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7874_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_7874_sig[] = { 0x86, 0x38, 0xed, 0x7e, 0xaa, 0x83, 0x60, 0x9a, 0x01, 0xa6, 0xaf, 0x9c, 0x52, 0xec, 0x9b, 0xfd, 0xdd, 0xa9, 0x04, 0x42, 0xb1, 0xe6, 0x03, 0x1d, 0x61, 0xcf, 0xa2, 0x2e, 0x48, 0xb2, 0xe1, 0xe2, 0x20, 0xc2, 0x84, 0xd5, 0x96, 0xf7, 0x1c, 0x6c, 0x8d, 0xf7, 0x32, 0xf5, 0xa5, 0xa2, 0x00, 0x63, 0x02, 0x30, 0x1e, 0x1a, 0x79, 0x2e, 0x2b, 0x39, 0x66, 0x3d, 0x93, 0xa9, 0x76, 0x07, 0x62, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7874 = { .name = "ecdsa_secp256r1_sha512_7874", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7874_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7874_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7874_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7875 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7875_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7875_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7875_sig[] = { 0x61, 0xd9, 0x24, 0x30, 0x7a, 0x96, 0x18, 0x0b, 0x06, 0x38, 0x36, 0x08, 0xba, 0x91, 0x67, 0x4e, 0x15, 0xc3, 0xea, 0x06, 0xff, 0x25, 0x34, 0x41, 0x2b, 0x93, 0xa5, 0x87, 0xdd, 0xe6, 0x49, 0xc1, 0x59, 0xb8, 0x4a, 0xa2, 0x11, 0x5b, 0x25, 0x47, 0xed, 0xac, 0x88, 0x08, 0x8c, 0xa6, 0x31, 0x3e, 0x9f, 0xbe, 0x1c, 0xa6, 0xa3, 0x61, 0xc7, 0xe5, 0x79, 0x38, 0xf9, 0xdd, 0xe3, 0xf4, 0x34, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7875 = { .name = "ecdsa_secp256r1_sha512_7875", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7875_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7875_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7875_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7876 for ECDSA, tcId is 162 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7876_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7876_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7876_sig[] = { 0x42, 0x4f, 0xcf, 0xc3, 0xfd, 0x63, 0xd1, 0x28, 0xc2, 0xeb, 0x12, 0x5e, 0x88, 0xc7, 0xfe, 0x5d, 0x28, 0x3b, 0x63, 0x47, 0x0a, 0x78, 0x6b, 0x82, 0x78, 0x3e, 0xdb, 0xb8, 0xa0, 0xb7, 0xa6, 0xd7, 0xb1, 0x15, 0x48, 0xc2, 0xcd, 0x7f, 0xce, 0x9d, 0x44, 0xe7, 0x95, 0xca, 0x51, 0xaf, 0x0b, 0x2f, 0x6a, 0x51, 0x80, 0xe9, 0xc9, 0xbe, 0x03, 0x14, 0x00, 0x7e, 0xd9, 0xe7, 0xf4, 0xbb, 0xe5, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7876 = { .name = "ecdsa_secp256r1_sha512_7876", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7876_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7876_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7876_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7877 for ECDSA, tcId is 163 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7877_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7877_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7877_sig[] = { 0xa5, 0xf7, 0x47, 0xae, 0x62, 0x90, 0xfa, 0x95, 0x82, 0xc6, 0xce, 0x8d, 0x56, 0x08, 0x62, 0x1d, 0x49, 0x5f, 0x06, 0x15, 0x51, 0xbc, 0x45, 0x31, 0xba, 0xcb, 0xa5, 0x86, 0xa5, 0x63, 0xb1, 0x84, 0x62, 0xfa, 0xf8, 0xf9, 0x22, 0x91, 0xe1, 0x28, 0x12, 0x83, 0x5b, 0x3f, 0x1d, 0x43, 0xc9, 0x67, 0xbc, 0xeb, 0x88, 0x5b, 0x11, 0x0b, 0xd0, 0x6e, 0x5a, 0x68, 0xe2, 0xd7, 0x47, 0x81, 0xae, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7877 = { .name = "ecdsa_secp256r1_sha512_7877", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7877_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7877_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7877_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7878 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7878_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7878_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7878_sig[] = { 0xb7, 0x31, 0xdc, 0x0d, 0x92, 0xc2, 0xcc, 0x7a, 0x60, 0x5d, 0x78, 0x23, 0x3f, 0x78, 0x14, 0x69, 0x9b, 0xdf, 0x1c, 0xab, 0x2d, 0xf2, 0x97, 0xb6, 0x84, 0x4e, 0xec, 0x40, 0x15, 0xaf, 0x8e, 0xa0, 0x39, 0xb1, 0xa0, 0xcc, 0x88, 0xeb, 0x85, 0xbc, 0xdc, 0x35, 0x6b, 0x36, 0x20, 0xc5, 0x1f, 0x12, 0x98, 0xc6, 0x0a, 0xec, 0x53, 0x06, 0xb1, 0x07, 0xe9, 0x00, 0xff, 0xdb, 0xa0, 0x49, 0xdd, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7878 = { .name = "ecdsa_secp256r1_sha512_7878", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7878_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7878_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7878_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7879 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7879_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7879_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7879_sig[] = { 0xef, 0x73, 0xc4, 0xfa, 0x32, 0x2d, 0xa3, 0x9f, 0xb6, 0x50, 0x3b, 0xab, 0x6b, 0x66, 0xb6, 0x4d, 0x24, 0x10, 0x56, 0xaf, 0xbc, 0xd6, 0x90, 0x8f, 0x84, 0xb6, 0x1c, 0xcb, 0xbe, 0x89, 0x04, 0x33, 0xf1, 0xef, 0x85, 0x41, 0x3e, 0x57, 0x64, 0xaa, 0x58, 0xa3, 0x12, 0x8c, 0xcf, 0xcf, 0x38, 0x83, 0x24, 0xfe, 0x53, 0x40, 0xe5, 0xed, 0xf8, 0xd0, 0x13, 0x5a, 0xe7, 0x67, 0x86, 0xce, 0x41, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7879 = { .name = "ecdsa_secp256r1_sha512_7879", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7879_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7879_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7879_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7880 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7880_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7880_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_7880_sig[] = { 0x69, 0x4c, 0xd3, 0x0e, 0x2a, 0xd0, 0x18, 0x25, 0x79, 0x33, 0x14, 0x74, 0xb2, 0x71, 0xee, 0x2d, 0x48, 0x72, 0x3b, 0xc8, 0x41, 0x5d, 0xc6, 0x51, 0x38, 0x73, 0x58, 0x6c, 0xe7, 0x05, 0xb7, 0x6b, 0xc5, 0xac, 0x0c, 0x0e, 0xd5, 0xa4, 0x01, 0x7d, 0x11, 0x0c, 0xb4, 0x5d, 0x63, 0xaa, 0x95, 0x5d, 0xc7, 0xdc, 0x5c, 0xe2, 0x3e, 0x79, 0x65, 0xc5, 0x39, 0x7c, 0x3f, 0xf4, 0x6a, 0x88, 0x46, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7880 = { .name = "ecdsa_secp256r1_sha512_7880", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7880_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7880_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7880_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7881 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7881_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7881_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7881_sig[] = { 0xf3, 0x8b, 0x22, 0x36, 0xbe, 0x30, 0x24, 0xe1, 0x0b, 0x89, 0x4f, 0xfb, 0x1c, 0xc6, 0x8d, 0x0b, 0xb8, 0xd4, 0xcf, 0x0f, 0xcd, 0x2c, 0xfc, 0x17, 0x79, 0xf8, 0x88, 0x37, 0x65, 0xd3, 0xcd, 0x96, 0xda, 0x69, 0xcd, 0x0b, 0x74, 0xc2, 0x55, 0x66, 0xd6, 0x0a, 0x48, 0x6e, 0xdd, 0x55, 0x9f, 0xc3, 0x9d, 0x56, 0x9f, 0xb2, 0x75, 0x14, 0x45, 0xa4, 0x79, 0x8d, 0xf8, 0xa3, 0x68, 0x91, 0x80, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7881 = { .name = "ecdsa_secp256r1_sha512_7881", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7881_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7881_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7881_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7882 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7882_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7882_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7882_sig[] = { 0xa8, 0x81, 0x73, 0x2c, 0x20, 0x5a, 0x0b, 0x4b, 0x95, 0x66, 0x9c, 0x00, 0x75, 0x6f, 0xd9, 0x19, 0x73, 0x45, 0x01, 0x09, 0xa4, 0x6f, 0x17, 0xd5, 0xa9, 0xd9, 0x71, 0xb5, 0xe9, 0x2b, 0x9a, 0xa4, 0x8a, 0xce, 0xfd, 0xca, 0x4e, 0x06, 0xc1, 0x6b, 0x47, 0xcc, 0xad, 0x1c, 0x57, 0xc0, 0x59, 0x12, 0x63, 0x7e, 0x10, 0x70, 0x96, 0xba, 0x23, 0x0c, 0x92, 0xb9, 0x71, 0x87, 0xdb, 0x79, 0xe1, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7882 = { .name = "ecdsa_secp256r1_sha512_7882", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7882_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7882_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7882_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7883 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7883_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7883_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7883_sig[] = { 0x04, 0x45, 0x2f, 0x55, 0x4b, 0xae, 0x81, 0x9b, 0x42, 0xef, 0xfb, 0x84, 0xef, 0x44, 0xa9, 0xf1, 0xcb, 0x7e, 0x2d, 0x75, 0xb4, 0xba, 0x9f, 0xf9, 0xb9, 0xcf, 0xff, 0xad, 0xdd, 0xe3, 0xfd, 0x1b, 0x61, 0xa3, 0xfb, 0xc5, 0xe7, 0x3c, 0x35, 0x0f, 0x2e, 0x3d, 0x85, 0xa7, 0x45, 0x2c, 0xd2, 0x31, 0xa3, 0xf3, 0x37, 0x5f, 0xc1, 0x1f, 0x5f, 0xe1, 0x53, 0xb1, 0x85, 0xf5, 0x3b, 0x09, 0xc1, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7883 = { .name = "ecdsa_secp256r1_sha512_7883", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7883_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7883_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7883_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7884 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7884_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7884_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7884_sig[] = { 0x05, 0x81, 0x4f, 0x57, 0xf5, 0x8e, 0xfc, 0x7c, 0xb4, 0x90, 0x11, 0x9e, 0x58, 0x4e, 0x63, 0x5e, 0x6f, 0x0a, 0xd1, 0xc1, 0x9f, 0xb5, 0xdc, 0x2e, 0xda, 0xfd, 0xa0, 0x75, 0xbb, 0x55, 0xf9, 0x8e, 0x9d, 0xd5, 0xc6, 0xe3, 0x90, 0x09, 0xd6, 0x7d, 0x96, 0x59, 0x03, 0xec, 0xff, 0xe0, 0x8a, 0x85, 0x17, 0x75, 0xcc, 0x12, 0x48, 0xcc, 0x19, 0xc0, 0xb7, 0x77, 0x98, 0x28, 0x21, 0x31, 0xb8, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7884 = { .name = "ecdsa_secp256r1_sha512_7884", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7884_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7884_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7884_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7885 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7885_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7885_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7885_sig[] = { 0xdc, 0x1c, 0x4a, 0x46, 0x08, 0x5e, 0x19, 0x88, 0x43, 0xb1, 0xf0, 0x19, 0x80, 0xcd, 0x5e, 0x4a, 0x1f, 0xf6, 0xf8, 0xe8, 0xff, 0x70, 0x14, 0x39, 0x7f, 0x0a, 0xfd, 0x5b, 0x24, 0x7f, 0xb0, 0xa0, 0x38, 0xa1, 0x3d, 0xc7, 0x23, 0xed, 0x90, 0xb3, 0x02, 0x51, 0xd7, 0x42, 0xb1, 0x47, 0x33, 0xa0, 0x32, 0x92, 0xff, 0x26, 0x53, 0x0a, 0x1e, 0xbc, 0xaf, 0x3d, 0x10, 0x86, 0x2a, 0x6e, 0xff, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7885 = { .name = "ecdsa_secp256r1_sha512_7885", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7885_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7885_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7885_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7886 for ECDSA, tcId is 172 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7886_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7886_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7886_sig[] = { 0x10, 0x67, 0x66, 0x7b, 0xf5, 0x25, 0x73, 0x4c, 0xa7, 0xf2, 0x51, 0x0e, 0x36, 0x34, 0x8f, 0xd9, 0xc2, 0xc9, 0xbc, 0xcf, 0x03, 0x2d, 0xfd, 0x57, 0x1d, 0xe6, 0xd4, 0x5a, 0xbd, 0x49, 0x36, 0x1a, 0xfa, 0x76, 0x25, 0x68, 0xd3, 0xa1, 0x9e, 0x5a, 0x1d, 0x8e, 0xa6, 0x5e, 0x00, 0x20, 0x2a, 0x5b, 0x16, 0xf9, 0xaf, 0xae, 0x56, 0x73, 0x3a, 0x01, 0xf8, 0x6e, 0x35, 0x37, 0x8c, 0x55, 0x8d, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7886 = { .name = "ecdsa_secp256r1_sha512_7886", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7886_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7886_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7886_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7887 for ECDSA, tcId is 173 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7887_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7887_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7887_sig[] = { 0xe5, 0x8d, 0x69, 0xdc, 0x56, 0xbc, 0x10, 0x31, 0x64, 0x48, 0x47, 0xe3, 0xe0, 0x46, 0xe2, 0xea, 0x84, 0x5a, 0x51, 0x5d, 0x96, 0x9d, 0x07, 0xea, 0x1a, 0xa5, 0x3a, 0xea, 0x5b, 0xd9, 0x2f, 0xa1, 0xbf, 0xe5, 0x0b, 0x80, 0xf7, 0xc5, 0x12, 0xf5, 0xab, 0x52, 0x1f, 0xe7, 0xe1, 0xa1, 0x31, 0x04, 0x5f, 0xde, 0x78, 0xd4, 0xde, 0x82, 0x6c, 0x91, 0x57, 0x3b, 0xaa, 0xba, 0x1e, 0x35, 0xca, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7887 = { .name = "ecdsa_secp256r1_sha512_7887", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7887_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7887_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7887_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7888 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7888_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7888_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7888_sig[] = { 0xfe, 0x79, 0xc6, 0xb8, 0xc1, 0x4d, 0x0f, 0x23, 0xd4, 0x26, 0xe3, 0xd1, 0x57, 0xf1, 0xb5, 0x41, 0xf6, 0xbb, 0x91, 0xbf, 0x29, 0x95, 0x7e, 0xf9, 0x7c, 0x55, 0x94, 0x9c, 0x9b, 0xa4, 0x8a, 0x35, 0x9d, 0xa1, 0x12, 0xc4, 0xa4, 0xcf, 0x4b, 0x1f, 0xf4, 0x90, 0xc4, 0x26, 0xf6, 0xc8, 0xff, 0x12, 0x21, 0x83, 0x96, 0x4a, 0x0d, 0xe5, 0x6f, 0x73, 0x36, 0xab, 0x38, 0x2d, 0xc9, 0xd1, 0x02, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7888 = { .name = "ecdsa_secp256r1_sha512_7888", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7888_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7888_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7888_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7889 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7889_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7889_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7889_sig[] = { 0x45, 0xd4, 0xed, 0x7e, 0x9e, 0xda, 0xcb, 0x5a, 0x73, 0x09, 0x44, 0xab, 0x00, 0x37, 0xfb, 0xa0, 0xa1, 0x36, 0xed, 0x9d, 0x0d, 0x26, 0xb2, 0xf4, 0xd4, 0x05, 0x85, 0x54, 0xf1, 0x48, 0xfa, 0x6f, 0xf1, 0x36, 0xf1, 0x5f, 0xd3, 0x0c, 0xfe, 0x5e, 0x55, 0x48, 0xb3, 0xf4, 0x96, 0x5c, 0x16, 0xa6, 0x6a, 0x7c, 0x12, 0x90, 0x46, 0x86, 0xab, 0xe1, 0x2d, 0xa7, 0x77, 0x61, 0x92, 0x12, 0xae, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7889 = { .name = "ecdsa_secp256r1_sha512_7889", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7889_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7889_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7889_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7890 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7890_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7890_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_7890_sig[] = { 0x4f, 0xb7, 0xc1, 0x72, 0x7e, 0x40, 0xba, 0xe2, 0x72, 0xf6, 0x14, 0x3a, 0x50, 0x00, 0x1b, 0x54, 0xb5, 0x36, 0xf9, 0x02, 0x33, 0x15, 0x78, 0x96, 0xdb, 0xf8, 0x45, 0xe2, 0x63, 0xf2, 0x48, 0x63, 0x6f, 0xea, 0x5c, 0x92, 0x4d, 0xca, 0x17, 0x51, 0x9f, 0x6e, 0x50, 0x2e, 0xf6, 0x7e, 0xfa, 0x08, 0xd3, 0x9e, 0xb5, 0xcc, 0x33, 0x81, 0x26, 0x6f, 0x02, 0x16, 0x86, 0x4d, 0x2b, 0xd0, 0x0a, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7890 = { .name = "ecdsa_secp256r1_sha512_7890", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7890_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7890_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7890_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7891 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7891_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7891_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_7891_sig[] = { 0x77, 0x9a, 0xac, 0x66, 0x5d, 0xd9, 0x88, 0x05, 0x4b, 0x04, 0xf2, 0xe9, 0xd4, 0x83, 0xca, 0x79, 0x17, 0x9b, 0x33, 0x72, 0xb5, 0x8c, 0xa0, 0x0f, 0xe4, 0x35, 0x20, 0xf4, 0x4f, 0xcb, 0x4c, 0x32, 0xb4, 0xec, 0xa1, 0x18, 0x2c, 0xd5, 0x1f, 0x0a, 0xbd, 0x3e, 0xa2, 0x26, 0x8d, 0xcd, 0xa4, 0x9a, 0x80, 0x7a, 0xd4, 0x11, 0x6a, 0x58, 0x31, 0x02, 0x04, 0x74, 0x98, 0xaa, 0x86, 0x36, 0x53, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7891 = { .name = "ecdsa_secp256r1_sha512_7891", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7891_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7891_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7891_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7892 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7892_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7892_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7892_sig[] = { 0xdb, 0x7a, 0xc6, 0xf6, 0x5f, 0xb1, 0xc3, 0x8d, 0x80, 0x06, 0x4f, 0xd1, 0x18, 0x61, 0x63, 0x12, 0x37, 0xa0, 0x99, 0x24, 0xb4, 0xee, 0xca, 0x4e, 0x15, 0x69, 0xfa, 0x4b, 0x7d, 0x80, 0xad, 0x24, 0xa3, 0x8d, 0x17, 0x8d, 0x37, 0xe1, 0x3e, 0x1a, 0xfa, 0x07, 0xa9, 0xd0, 0x3d, 0xa0, 0x25, 0xd5, 0x94, 0x46, 0x19, 0x38, 0xa6, 0x2a, 0x6c, 0x67, 0x44, 0xf5, 0xc8, 0xf7, 0xd7, 0xb7, 0xbb, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7892 = { .name = "ecdsa_secp256r1_sha512_7892", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7892_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7892_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7892_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7893 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7893_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7893_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7893_sig[] = { 0xc9, 0x00, 0x43, 0xb4, 0xaa, 0xdf, 0x79, 0x5d, 0x87, 0x0a, 0xc2, 0x23, 0xf3, 0x3a, 0xcd, 0xbd, 0x19, 0x48, 0xc3, 0x1a, 0xff, 0xf0, 0x59, 0x05, 0x4d, 0xc9, 0x95, 0x28, 0xc6, 0x50, 0x3f, 0xa6, 0x82, 0x9f, 0x67, 0xb3, 0x12, 0xbb, 0x13, 0x4f, 0x69, 0x54, 0xa2, 0x3c, 0x61, 0x1a, 0x7f, 0x7b, 0x5b, 0x2a, 0x69, 0xef, 0xce, 0xd9, 0xc4, 0x8d, 0xb5, 0x89, 0xac, 0x0b, 0x4d, 0x3d, 0xa8, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7893 = { .name = "ecdsa_secp256r1_sha512_7893", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7893_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7893_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_7893_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7894 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7894_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7894_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_7894_sig[] = { 0xfa, 0x16, 0xc0, 0x12, 0x5b, 0x66, 0x15, 0xb9, 0x0e, 0x81, 0xf7, 0x49, 0x98, 0x04, 0x30, 0x8a, 0x90, 0x17, 0x9b, 0xf3, 0xfc, 0xff, 0x6a, 0x4b, 0x26, 0x95, 0x27, 0x1c, 0x68, 0xb2, 0x3d, 0xed, 0x0d, 0x6c, 0xda, 0x5c, 0xe0, 0x41, 0xdc, 0x5a, 0x5f, 0x31, 0x9a, 0xd9, 0xc0, 0xde, 0x49, 0x27, 0xd0, 0xcf, 0x5e, 0x89, 0xe3, 0x7b, 0x79, 0x21, 0x61, 0x94, 0x41, 0x3d, 0x42, 0x97, 0x6d, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7894 = { .name = "ecdsa_secp256r1_sha512_7894", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7894_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7894_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_7894_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7895 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7895_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7895_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_7895_sig[] = { 0x1a, 0x4b, 0x5b, 0xd0, 0xf8, 0x06, 0x54, 0x9f, 0x46, 0xa3, 0xe7, 0x1b, 0xfe, 0x41, 0x2d, 0x6d, 0x89, 0x20, 0x60, 0x17, 0x64, 0x0d, 0xed, 0x66, 0xf3, 0xd0, 0xb2, 0xd9, 0xb2, 0x6b, 0xec, 0x45, 0xaa, 0xc5, 0xf7, 0x4e, 0x31, 0x30, 0x26, 0x4e, 0x01, 0x42, 0x85, 0x70, 0xee, 0x82, 0xee, 0x47, 0xe2, 0x45, 0xd1, 0x60, 0xed, 0x81, 0x2a, 0xe2, 0x52, 0xde, 0xdf, 0xfd, 0x82, 0xe1, 0xec, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7895 = { .name = "ecdsa_secp256r1_sha512_7895", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7895_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7895_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_7895_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7896 for ECDSA, tcId is 182 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7896_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_7896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7896_sig[] = { 0xf8, 0xe2, 0x72, 0x23, 0x4b, 0x51, 0x47, 0x5e, 0xc4, 0xc6, 0xf3, 0x27, 0x56, 0x2a, 0x6e, 0x5c, 0x90, 0x80, 0xa9, 0x62, 0x25, 0xe8, 0x8b, 0x2e, 0x5f, 0x72, 0xa8, 0xee, 0xcb, 0xd4, 0x1a, 0xb4, 0x51, 0x6b, 0x91, 0x61, 0x7f, 0xc3, 0x9e, 0x31, 0x41, 0xb3, 0xbc, 0x76, 0x9f, 0x6a, 0x3b, 0x2e, 0x46, 0x8e, 0x68, 0x7f, 0x50, 0xbd, 0xc2, 0x9e, 0x19, 0x08, 0x8a, 0xf6, 0x2d, 0x20, 0x3f, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7896 = { .name = "ecdsa_secp256r1_sha512_7896", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7896_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7896_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7896_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 182 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7897 for ECDSA, tcId is 183 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7897_pubkey[] = { 0xb6, 0xe0, 0x8b, 0x1b, 0xcc, 0x89, 0xe7, 0xfb, 0x0b, 0x84, 0xd7, 0x49, 0x7e, 0x31, 0x05, 0x53, 0x49, 0x5b, 0xe4, 0x87, 0x7e, 0xcc, 0xc4, 0xb3, 0xd6, 0xd7, 0x9f, 0x7c, 0x68, 0xa0, 0x57, 0x34, 0x31, 0x76, 0x0f, 0xa1, 0xbc, 0xea, 0x49, 0x72, 0x75, 0x91, 0x74, 0xac, 0x11, 0x03, 0xbc, 0x60, 0x11, 0x98, 0x5c, 0xce, 0xe2, 0x51, 0x91, 0x8d, 0x05, 0x73, 0xfb, 0xcb, 0x78, 0x96, 0x91, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_7897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7897_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7897 = { .name = "ecdsa_secp256r1_sha512_7897", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7897_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7897_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7897_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 183 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7898 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7898_pubkey[] = { 0xb6, 0xe0, 0x8b, 0x1b, 0xcc, 0x89, 0xe7, 0xfb, 0x0b, 0x84, 0xd7, 0x49, 0x7e, 0x31, 0x05, 0x53, 0x49, 0x5b, 0xe4, 0x87, 0x7e, 0xcc, 0xc4, 0xb3, 0xd6, 0xd7, 0x9f, 0x7c, 0x68, 0xa0, 0x57, 0x34, 0x31, 0x76, 0x0f, 0xa1, 0xbc, 0xea, 0x49, 0x72, 0x75, 0x91, 0x74, 0xac, 0x11, 0x03, 0xbc, 0x60, 0x11, 0x98, 0x5c, 0xce, 0xe2, 0x51, 0x91, 0x8d, 0x05, 0x73, 0xfb, 0xcb, 0x78, 0x96, 0x91, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_7898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7898_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7898 = { .name = "ecdsa_secp256r1_sha512_7898", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7898_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7898_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7898_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 184 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7899 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7899_pubkey[] = { 0x35, 0x90, 0xc6, 0xa1, 0x03, 0x53, 0xd6, 0x69, 0xbc, 0x94, 0xd8, 0xe2, 0xff, 0x9e, 0x14, 0xbb, 0xee, 0xd4, 0xa7, 0xf4, 0x5b, 0x88, 0x72, 0x55, 0xab, 0x7e, 0x37, 0xb6, 0x76, 0x38, 0x7b, 0xb6, 0x15, 0xfc, 0x6f, 0x97, 0xce, 0x39, 0xa3, 0x87, 0x4c, 0x2b, 0x34, 0xcc, 0x57, 0x18, 0x89, 0xab, 0xfa, 0x0a, 0x70, 0x6c, 0x2c, 0xfb, 0x0e, 0x5a, 0x47, 0x50, 0xcc, 0x25, 0x69, 0x06, 0x96, 0xf8, }; static const unsigned char ecdsa_secp256r1_sha512_7899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7899_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7899 = { .name = "ecdsa_secp256r1_sha512_7899", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7899_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7899_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7899_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 185 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7900 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7900_pubkey[] = { 0x36, 0x9e, 0x96, 0x40, 0x2f, 0x2c, 0xfd, 0x1a, 0x37, 0xb3, 0xac, 0xbd, 0xec, 0xfc, 0x56, 0x28, 0x62, 0xdb, 0xca, 0x94, 0x4a, 0x0f, 0x12, 0xd7, 0xaa, 0xac, 0xb8, 0xd3, 0x25, 0xd7, 0x65, 0x0a, 0xa7, 0x23, 0x62, 0x19, 0x22, 0xbe, 0x2b, 0xda, 0xc9, 0x18, 0x62, 0x90, 0xfd, 0xcd, 0xda, 0x02, 0x8d, 0x94, 0x43, 0x79, 0x66, 0x50, 0x7d, 0x93, 0xf2, 0xfc, 0x1f, 0x5c, 0x88, 0x7f, 0xde, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha512_7900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7900_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7900 = { .name = "ecdsa_secp256r1_sha512_7900", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7900_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7900_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7900_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7901 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7901_pubkey[] = { 0x27, 0xa0, 0xa8, 0x0e, 0xa2, 0xe1, 0xaa, 0x79, 0x8e, 0xa9, 0xbc, 0xc3, 0xae, 0xdb, 0xf0, 0x1a, 0xb7, 0x8e, 0x49, 0xc9, 0xec, 0x2a, 0xd0, 0xe0, 0x8a, 0x04, 0x29, 0xa0, 0xe1, 0xdb, 0x4d, 0x0d, 0x32, 0xa8, 0xee, 0x7b, 0xee, 0x9d, 0x0a, 0x40, 0x01, 0x4e, 0x48, 0x4f, 0x34, 0xa9, 0x2b, 0xd6, 0xf3, 0x3f, 0xe6, 0x36, 0x24, 0xea, 0x95, 0x79, 0x65, 0x74, 0x41, 0xac, 0x79, 0x66, 0x6e, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha512_7901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7901_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7901 = { .name = "ecdsa_secp256r1_sha512_7901", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7901_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7901_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7901_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 187 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7902 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7902_pubkey[] = { 0x9c, 0xff, 0x61, 0x71, 0x2d, 0x4b, 0xc5, 0xb3, 0x63, 0x83, 0x41, 0xe6, 0xe0, 0xa5, 0x76, 0xa8, 0x09, 0x8c, 0x9c, 0x6d, 0x3f, 0x19, 0x8d, 0x38, 0x9c, 0x46, 0x69, 0xf3, 0x98, 0xdc, 0x08, 0x67, 0xf3, 0xb9, 0xe0, 0x9f, 0x56, 0x7f, 0x3d, 0xfd, 0x9c, 0x4d, 0x2c, 0x11, 0x63, 0xe8, 0x2b, 0xea, 0xdf, 0x16, 0xc7, 0x6e, 0x8f, 0x9d, 0x7a, 0x64, 0x67, 0x38, 0x00, 0xea, 0x76, 0xfa, 0x1e, 0x59, }; static const unsigned char ecdsa_secp256r1_sha512_7902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7902_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7902 = { .name = "ecdsa_secp256r1_sha512_7902", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7902_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7902_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7902_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 188 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7903 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7903_pubkey[] = { 0x9c, 0xff, 0x61, 0x71, 0x2d, 0x4b, 0xc5, 0xb3, 0x63, 0x83, 0x41, 0xe6, 0xe0, 0xa5, 0x76, 0xa8, 0x09, 0x8c, 0x9c, 0x6d, 0x3f, 0x19, 0x8d, 0x38, 0x9c, 0x46, 0x69, 0xf3, 0x98, 0xdc, 0x08, 0x67, 0xf3, 0xb9, 0xe0, 0x9f, 0x56, 0x7f, 0x3d, 0xfd, 0x9c, 0x4d, 0x2c, 0x11, 0x63, 0xe8, 0x2b, 0xea, 0xdf, 0x16, 0xc7, 0x6e, 0x8f, 0x9d, 0x7a, 0x64, 0x67, 0x38, 0x00, 0xea, 0x76, 0xfa, 0x1e, 0x59, }; static const unsigned char ecdsa_secp256r1_sha512_7903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7903_sig[] = { 0x05, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7903 = { .name = "ecdsa_secp256r1_sha512_7903", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7903_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7903_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7903_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 189 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7904 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7904_pubkey[] = { 0xd9, 0x11, 0x7c, 0xae, 0x81, 0x29, 0x5e, 0x82, 0x68, 0x2f, 0xa3, 0x87, 0x99, 0x1e, 0x66, 0x8e, 0x15, 0x70, 0xe0, 0xe9, 0x01, 0x00, 0xbf, 0x4e, 0x63, 0x96, 0x48, 0x22, 0x46, 0x05, 0x61, 0xbc, 0x19, 0xf9, 0x6b, 0x17, 0x87, 0xed, 0x15, 0x76, 0x99, 0x29, 0x97, 0x8b, 0xa3, 0xdd, 0x7f, 0x68, 0xc9, 0x7a, 0xdf, 0x5c, 0x16, 0xf6, 0x71, 0xe7, 0x56, 0xcd, 0x8f, 0x08, 0xc4, 0x94, 0x56, 0xca, }; static const unsigned char ecdsa_secp256r1_sha512_7904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7904_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7904 = { .name = "ecdsa_secp256r1_sha512_7904", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7904_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7904_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7904_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 190 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7905 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7905_pubkey[] = { 0xd9, 0x11, 0x7c, 0xae, 0x81, 0x29, 0x5e, 0x82, 0x68, 0x2f, 0xa3, 0x87, 0x99, 0x1e, 0x66, 0x8e, 0x15, 0x70, 0xe0, 0xe9, 0x01, 0x00, 0xbf, 0x4e, 0x63, 0x96, 0x48, 0x22, 0x46, 0x05, 0x61, 0xbc, 0x19, 0xf9, 0x6b, 0x17, 0x87, 0xed, 0x15, 0x76, 0x99, 0x29, 0x97, 0x8b, 0xa3, 0xdd, 0x7f, 0x68, 0xc9, 0x7a, 0xdf, 0x5c, 0x16, 0xf6, 0x71, 0xe7, 0x56, 0xcd, 0x8f, 0x08, 0xc4, 0x94, 0x56, 0xca, }; static const unsigned char ecdsa_secp256r1_sha512_7905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7905_sig[] = { 0x05, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7905 = { .name = "ecdsa_secp256r1_sha512_7905", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7905_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7905_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7905_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 191 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7906 for ECDSA, tcId is 192 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7906_pubkey[] = { 0x8c, 0xfc, 0xba, 0xd3, 0x52, 0x4c, 0x22, 0xb9, 0x92, 0x52, 0x9f, 0x94, 0x3e, 0x3c, 0xe0, 0xb2, 0xd1, 0x26, 0x08, 0x55, 0x01, 0xd6, 0xe3, 0xed, 0xd4, 0xf1, 0xdb, 0xf7, 0x4b, 0xdc, 0xa2, 0x1e, 0xaf, 0xb2, 0x59, 0xb1, 0xba, 0x17, 0x9c, 0xac, 0x09, 0xe8, 0xe4, 0x3a, 0x88, 0xc8, 0xa0, 0x9e, 0x73, 0x39, 0x91, 0x0a, 0x7c, 0x94, 0x19, 0x32, 0xe4, 0x4b, 0x8b, 0xe5, 0x6f, 0x1f, 0xcc, 0xde, }; static const unsigned char ecdsa_secp256r1_sha512_7906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7906_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7906 = { .name = "ecdsa_secp256r1_sha512_7906", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7906_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7906_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7906_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 192 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7907 for ECDSA, tcId is 193 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7907_pubkey[] = { 0x8c, 0xfc, 0xba, 0xd3, 0x52, 0x4c, 0x22, 0xb9, 0x92, 0x52, 0x9f, 0x94, 0x3e, 0x3c, 0xe0, 0xb2, 0xd1, 0x26, 0x08, 0x55, 0x01, 0xd6, 0xe3, 0xed, 0xd4, 0xf1, 0xdb, 0xf7, 0x4b, 0xdc, 0xa2, 0x1e, 0xaf, 0xb2, 0x59, 0xb1, 0xba, 0x17, 0x9c, 0xac, 0x09, 0xe8, 0xe4, 0x3a, 0x88, 0xc8, 0xa0, 0x9e, 0x73, 0x39, 0x91, 0x0a, 0x7c, 0x94, 0x19, 0x32, 0xe4, 0x4b, 0x8b, 0xe5, 0x6f, 0x1f, 0xcc, 0xde, }; static const unsigned char ecdsa_secp256r1_sha512_7907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7907_sig[] = { 0x05, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7907 = { .name = "ecdsa_secp256r1_sha512_7907", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7907_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7907_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7907_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 193 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7908 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7908_pubkey[] = { 0xfb, 0xb5, 0x11, 0x27, 0xe1, 0xf1, 0xb6, 0xa3, 0x8e, 0x9f, 0xe9, 0xa2, 0x54, 0x46, 0x14, 0xed, 0xb8, 0xe4, 0x3a, 0xd7, 0xcd, 0x8c, 0x56, 0xf1, 0x4b, 0x32, 0x35, 0xdd, 0xa3, 0xbc, 0x11, 0x17, 0x9a, 0xbd, 0x97, 0x53, 0xa9, 0xe6, 0x47, 0xe9, 0x34, 0x0c, 0x39, 0x5f, 0xb2, 0xb9, 0x13, 0x84, 0xd6, 0xd3, 0x3f, 0xcb, 0x64, 0x56, 0x21, 0x43, 0x50, 0xb6, 0xf3, 0xfa, 0x00, 0xf4, 0x36, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha512_7908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7908_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7908 = { .name = "ecdsa_secp256r1_sha512_7908", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7908_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7908_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7908_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 194 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7909 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7909_pubkey[] = { 0xfb, 0xb5, 0x11, 0x27, 0xe1, 0xf1, 0xb6, 0xa3, 0x8e, 0x9f, 0xe9, 0xa2, 0x54, 0x46, 0x14, 0xed, 0xb8, 0xe4, 0x3a, 0xd7, 0xcd, 0x8c, 0x56, 0xf1, 0x4b, 0x32, 0x35, 0xdd, 0xa3, 0xbc, 0x11, 0x17, 0x9a, 0xbd, 0x97, 0x53, 0xa9, 0xe6, 0x47, 0xe9, 0x34, 0x0c, 0x39, 0x5f, 0xb2, 0xb9, 0x13, 0x84, 0xd6, 0xd3, 0x3f, 0xcb, 0x64, 0x56, 0x21, 0x43, 0x50, 0xb6, 0xf3, 0xfa, 0x00, 0xf4, 0x36, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha512_7909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7909_sig[] = { 0x05, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7909 = { .name = "ecdsa_secp256r1_sha512_7909", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7909_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7909_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7909_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 195 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7910 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7910_pubkey[] = { 0xfb, 0xb5, 0x11, 0x27, 0xe1, 0xf1, 0xb6, 0xa3, 0x8e, 0x9f, 0xe9, 0xa2, 0x54, 0x46, 0x14, 0xed, 0xb8, 0xe4, 0x3a, 0xd7, 0xcd, 0x8c, 0x56, 0xf1, 0x4b, 0x32, 0x35, 0xdd, 0xa3, 0xbc, 0x11, 0x17, 0x9a, 0xbd, 0x97, 0x53, 0xa9, 0xe6, 0x47, 0xe9, 0x34, 0x0c, 0x39, 0x5f, 0xb2, 0xb9, 0x13, 0x84, 0xd6, 0xd3, 0x3f, 0xcb, 0x64, 0x56, 0x21, 0x43, 0x50, 0xb6, 0xf3, 0xfa, 0x00, 0xf4, 0x36, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha512_7910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7910_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7910 = { .name = "ecdsa_secp256r1_sha512_7910", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7910_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7910_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7910_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 196 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7911 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7911_pubkey[] = { 0xdc, 0x80, 0x90, 0x55, 0x00, 0xd7, 0xd7, 0x4e, 0xd4, 0x7d, 0xe5, 0x22, 0x4d, 0x87, 0x34, 0x54, 0x5f, 0x22, 0xb7, 0x76, 0xae, 0x08, 0x6c, 0xab, 0xff, 0xfe, 0x6c, 0xe5, 0x8d, 0x5e, 0xf9, 0x94, 0xdc, 0x30, 0x67, 0xce, 0x7d, 0x2c, 0xdf, 0xa9, 0xf4, 0xd5, 0xac, 0xe2, 0x96, 0xb7, 0x52, 0x81, 0x4a, 0xcc, 0x69, 0xc1, 0x9a, 0x93, 0x2d, 0x8b, 0x14, 0x07, 0x79, 0x27, 0x90, 0x1d, 0xe3, 0xbf, }; static const unsigned char ecdsa_secp256r1_sha512_7911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7911_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7911 = { .name = "ecdsa_secp256r1_sha512_7911", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7911_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7911_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7911_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 197 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7912 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7912_pubkey[] = { 0x1b, 0x82, 0x4a, 0x11, 0xee, 0xd9, 0x4f, 0xbc, 0xd9, 0xb7, 0x22, 0xd0, 0x66, 0x13, 0xbb, 0xcf, 0x7e, 0xca, 0x00, 0xb9, 0x13, 0x6f, 0x26, 0x52, 0x64, 0x21, 0x78, 0xf3, 0x7b, 0x1a, 0x92, 0x0e, 0xe9, 0x00, 0xde, 0x49, 0x5d, 0x9e, 0xf5, 0x6f, 0xa6, 0xd1, 0x9f, 0x3d, 0xd1, 0xe0, 0xed, 0xb2, 0x3d, 0x23, 0x83, 0x5a, 0xc8, 0xc2, 0xd3, 0xd1, 0x3c, 0x02, 0x27, 0xe8, 0x52, 0xe5, 0x03, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha512_7912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7912_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7912 = { .name = "ecdsa_secp256r1_sha512_7912", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7912_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7912_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7912_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 198 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7913 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7913_pubkey[] = { 0x29, 0x14, 0xb3, 0x0c, 0x4c, 0x78, 0x46, 0x96, 0xff, 0xc3, 0xdd, 0xdc, 0xec, 0x05, 0xf3, 0x6c, 0xb1, 0x48, 0x8b, 0xc3, 0x42, 0xb9, 0xf5, 0x29, 0xd5, 0x38, 0x7a, 0xcb, 0x9e, 0x48, 0xcb, 0x8d, 0x3d, 0xbd, 0x30, 0xd0, 0xd5, 0xd6, 0xd6, 0xa3, 0x91, 0x08, 0x86, 0x3c, 0x2d, 0x6a, 0x6e, 0x85, 0x71, 0xcd, 0x32, 0x61, 0xfb, 0x9e, 0xb9, 0x8c, 0xe4, 0x61, 0x25, 0xbd, 0x8f, 0x13, 0x91, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_7913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7913_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7913 = { .name = "ecdsa_secp256r1_sha512_7913", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7913_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7913_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7913_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 199 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7914 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7914_pubkey[] = { 0x25, 0x79, 0xf5, 0x46, 0xfe, 0x2f, 0x2a, 0xeb, 0x5f, 0x82, 0x2f, 0xeb, 0x28, 0xf2, 0xf8, 0x37, 0x16, 0x18, 0xd0, 0x48, 0x15, 0x45, 0x5a, 0x7e, 0x90, 0x3c, 0x10, 0x02, 0x4a, 0x17, 0xda, 0x41, 0x55, 0x28, 0xe9, 0x51, 0x14, 0x7f, 0x76, 0xbe, 0xe1, 0x31, 0x4e, 0x65, 0xa4, 0x9c, 0x6e, 0xc7, 0x06, 0x86, 0xe6, 0x2d, 0x38, 0xfb, 0xc2, 0x34, 0x72, 0xf9, 0x6e, 0x3d, 0x3b, 0x33, 0xfd, 0x1f, }; static const unsigned char ecdsa_secp256r1_sha512_7914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7914_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7914 = { .name = "ecdsa_secp256r1_sha512_7914", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7914_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7914_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7914_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 200 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7915 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7915_pubkey[] = { 0xb1, 0x02, 0x19, 0x6b, 0xf4, 0x55, 0xee, 0x5a, 0xaf, 0xc6, 0xf8, 0x95, 0x50, 0x4d, 0x3c, 0x3b, 0x6b, 0x2d, 0x37, 0xc3, 0x5f, 0x86, 0x69, 0xbd, 0x0f, 0x0b, 0x69, 0x47, 0x95, 0xfb, 0xd9, 0x92, 0xf7, 0x77, 0xb6, 0xf8, 0x29, 0xb9, 0x62, 0x8a, 0xc3, 0x5d, 0xb0, 0xef, 0x43, 0xf6, 0xa8, 0x9f, 0x0a, 0x42, 0x81, 0x26, 0x14, 0xe4, 0xc1, 0x59, 0x24, 0xd8, 0xd4, 0x7e, 0xbe, 0x45, 0xba, 0xe5, }; static const unsigned char ecdsa_secp256r1_sha512_7915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7915_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7915 = { .name = "ecdsa_secp256r1_sha512_7915", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7915_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7915_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7915_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 201 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7916 for ECDSA, tcId is 202 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7916_pubkey[] = { 0x4d, 0x05, 0x6a, 0xb2, 0xff, 0x57, 0x66, 0x2f, 0xd6, 0xee, 0xbb, 0xe2, 0x39, 0x30, 0xfe, 0xf5, 0xcd, 0x08, 0x08, 0x3e, 0x24, 0x14, 0x61, 0x90, 0xcd, 0x01, 0x96, 0x0b, 0x1f, 0xcd, 0x37, 0x49, 0xfe, 0x7e, 0xc5, 0x84, 0x76, 0x51, 0xc8, 0x57, 0x89, 0x8b, 0xe0, 0xf0, 0x9e, 0xfd, 0x6e, 0x01, 0x16, 0xa5, 0xdb, 0xe3, 0x27, 0xf6, 0xf3, 0x08, 0x0a, 0x65, 0xfc, 0x96, 0x6b, 0xf6, 0x4d, 0x91, }; static const unsigned char ecdsa_secp256r1_sha512_7916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7916_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7916 = { .name = "ecdsa_secp256r1_sha512_7916", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7916_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7916_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7916_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 202 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7917 for ECDSA, tcId is 203 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7917_pubkey[] = { 0x36, 0x1c, 0x4a, 0x62, 0xcd, 0x86, 0x76, 0x13, 0x13, 0x8d, 0xfe, 0x24, 0xcc, 0xeb, 0xc4, 0xb7, 0xdf, 0x1b, 0x55, 0xfc, 0x74, 0x10, 0xf4, 0x99, 0x5e, 0xe2, 0xb6, 0xb9, 0xab, 0x22, 0x20, 0x58, 0x4f, 0x11, 0x6c, 0x6c, 0x84, 0xe5, 0x3d, 0x26, 0x2f, 0xd1, 0x3a, 0x5f, 0x5d, 0xe6, 0xb5, 0x7e, 0x7a, 0x19, 0x81, 0xde, 0x4e, 0xcd, 0xff, 0xdf, 0x33, 0x23, 0xb4, 0xe9, 0x1d, 0x80, 0x64, 0x9c, }; static const unsigned char ecdsa_secp256r1_sha512_7917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7917_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7917 = { .name = "ecdsa_secp256r1_sha512_7917", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7917_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7917_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7917_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 203 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7918 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7918_pubkey[] = { 0xdb, 0x9d, 0x5c, 0x51, 0x13, 0xf0, 0x08, 0x22, 0xa1, 0x46, 0xc9, 0xcd, 0xa2, 0xe7, 0x5c, 0xb6, 0x63, 0x4c, 0xd0, 0xdf, 0xf5, 0x4a, 0xff, 0x6e, 0x22, 0x87, 0x51, 0x71, 0xf5, 0x7a, 0x0d, 0xad, 0x1c, 0x42, 0x4c, 0xdd, 0x83, 0xeb, 0x01, 0xc0, 0x2f, 0x6f, 0x8d, 0x36, 0xf4, 0x2c, 0x6d, 0xc7, 0xe3, 0x9d, 0xb7, 0x43, 0x58, 0xda, 0x8a, 0xc9, 0xbc, 0x9d, 0xc5, 0x89, 0x0d, 0x46, 0xf6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_7918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7918_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7918 = { .name = "ecdsa_secp256r1_sha512_7918", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7918_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7918_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7918_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 204 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7919 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7919_pubkey[] = { 0xdb, 0x9d, 0x5c, 0x51, 0x13, 0xf0, 0x08, 0x22, 0xa1, 0x46, 0xc9, 0xcd, 0xa2, 0xe7, 0x5c, 0xb6, 0x63, 0x4c, 0xd0, 0xdf, 0xf5, 0x4a, 0xff, 0x6e, 0x22, 0x87, 0x51, 0x71, 0xf5, 0x7a, 0x0d, 0xad, 0x1c, 0x42, 0x4c, 0xdd, 0x83, 0xeb, 0x01, 0xc0, 0x2f, 0x6f, 0x8d, 0x36, 0xf4, 0x2c, 0x6d, 0xc7, 0xe3, 0x9d, 0xb7, 0x43, 0x58, 0xda, 0x8a, 0xc9, 0xbc, 0x9d, 0xc5, 0x89, 0x0d, 0x46, 0xf6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_7919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7919_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7919 = { .name = "ecdsa_secp256r1_sha512_7919", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7919_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7919_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7919_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 205 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7920 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7920_pubkey[] = { 0x99, 0xf1, 0x9f, 0x07, 0xb3, 0x3e, 0x03, 0xca, 0xf4, 0x70, 0x3e, 0x04, 0xb9, 0x30, 0xd5, 0x7d, 0x6d, 0x9b, 0xaa, 0x44, 0x46, 0x0c, 0x59, 0x6a, 0x2d, 0x30, 0x64, 0xe0, 0xb6, 0x3e, 0xa4, 0x12, 0x86, 0xa7, 0x4c, 0x46, 0x12, 0xa8, 0x12, 0xee, 0x34, 0x8d, 0x2b, 0x43, 0xf8, 0x0d, 0xe6, 0x27, 0xc1, 0x1c, 0x75, 0xd8, 0x15, 0x11, 0xe2, 0x2a, 0x19, 0x9c, 0x32, 0x11, 0x9b, 0x79, 0x2c, 0x6a, }; static const unsigned char ecdsa_secp256r1_sha512_7920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7920_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7920 = { .name = "ecdsa_secp256r1_sha512_7920", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7920_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7920_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7920_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 206 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7921 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7921_pubkey[] = { 0x31, 0x3f, 0x33, 0x09, 0xb2, 0x36, 0x48, 0x4c, 0x6e, 0xb4, 0xea, 0x38, 0x1e, 0x00, 0x78, 0x54, 0x46, 0x7a, 0x61, 0x73, 0x43, 0xa2, 0xe9, 0x7d, 0x84, 0x58, 0x01, 0xc0, 0x1a, 0x63, 0x2c, 0xfe, 0x33, 0xf2, 0x31, 0x85, 0x4b, 0xba, 0x89, 0xa8, 0xca, 0x3f, 0x80, 0x2a, 0x27, 0x64, 0xd3, 0xbf, 0x6c, 0x32, 0x33, 0xc8, 0x11, 0xa3, 0x1e, 0x5e, 0x80, 0x28, 0xa0, 0xb8, 0x62, 0xcb, 0x19, 0x77, }; static const unsigned char ecdsa_secp256r1_sha512_7921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7921_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7921 = { .name = "ecdsa_secp256r1_sha512_7921", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7921_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7921_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7921_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 207 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7922 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7922_pubkey[] = { 0xd3, 0xaa, 0x01, 0xfe, 0x59, 0xba, 0xd9, 0x2c, 0xff, 0xe3, 0xdb, 0x59, 0xe1, 0x38, 0x53, 0x91, 0xfa, 0xfd, 0x7a, 0xf4, 0xe4, 0xce, 0x46, 0x2e, 0x8a, 0xac, 0x15, 0x72, 0x74, 0xcc, 0x8a, 0x05, 0xc7, 0xa7, 0xe6, 0x03, 0xe1, 0x85, 0x38, 0xaa, 0xc1, 0x5f, 0x89, 0x61, 0x0b, 0xea, 0xcc, 0x21, 0xe3, 0x98, 0x98, 0xe6, 0xc5, 0xf7, 0x68, 0x0a, 0x81, 0xc5, 0xbd, 0x7b, 0xd7, 0x44, 0xa9, 0x89, }; static const unsigned char ecdsa_secp256r1_sha512_7922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7922_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7922 = { .name = "ecdsa_secp256r1_sha512_7922", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7922_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7922_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7922_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 208 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7923 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7923_pubkey[] = { 0x5e, 0x31, 0xec, 0xcd, 0x47, 0x04, 0xeb, 0xf7, 0xa4, 0x24, 0x7e, 0xa5, 0x7f, 0x93, 0x51, 0xab, 0xad, 0xff, 0x63, 0x67, 0x9f, 0x22, 0x76, 0xe2, 0xa3, 0xb0, 0x50, 0x09, 0xeb, 0xc1, 0xb8, 0xdf, 0x64, 0x84, 0x65, 0xa9, 0x25, 0x01, 0x0d, 0xb8, 0x23, 0xb2, 0xa5, 0xf3, 0xa6, 0x07, 0x23, 0x43, 0xa6, 0xcc, 0x99, 0x61, 0xa9, 0xc4, 0x82, 0x39, 0x9d, 0x0d, 0x82, 0x05, 0x1c, 0x2e, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_7923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7923_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7923 = { .name = "ecdsa_secp256r1_sha512_7923", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7923_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7923_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7923_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 209 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7924 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7924_pubkey[] = { 0xce, 0x0a, 0x47, 0xf8, 0x81, 0xfd, 0x73, 0x15, 0xa7, 0x33, 0xc4, 0x31, 0x78, 0x48, 0xfa, 0x33, 0xc7, 0x2e, 0x38, 0xde, 0x0b, 0x8f, 0xda, 0x36, 0xb6, 0x1a, 0xa9, 0xa1, 0x64, 0xf5, 0x80, 0x8a, 0x85, 0xb0, 0x5d, 0x25, 0x11, 0x5e, 0xa4, 0x09, 0x7d, 0xdf, 0x63, 0xf8, 0x78, 0xc8, 0xe8, 0x36, 0x57, 0xe6, 0x6d, 0xe1, 0x36, 0xa8, 0xf9, 0xe6, 0x2e, 0xd8, 0x1a, 0x58, 0xbf, 0x11, 0x7f, 0xf9, }; static const unsigned char ecdsa_secp256r1_sha512_7924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7924_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7924 = { .name = "ecdsa_secp256r1_sha512_7924", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7924_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7924_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7924_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 210 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7925 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7925_pubkey[] = { 0xcd, 0x6f, 0x48, 0x7b, 0x47, 0xf3, 0x6c, 0x0d, 0xea, 0x8f, 0x4b, 0x04, 0xc4, 0xe6, 0xac, 0x63, 0x7c, 0x76, 0xb7, 0x25, 0x92, 0x9c, 0x61, 0x1f, 0x48, 0xad, 0xdc, 0xf3, 0xd2, 0xf6, 0x59, 0x41, 0xb5, 0x0e, 0xa8, 0xf3, 0xa4, 0x91, 0x19, 0x0e, 0xe0, 0xb2, 0x0c, 0xfb, 0x6e, 0xfd, 0x11, 0x36, 0x08, 0xe7, 0xc7, 0xc1, 0x27, 0x57, 0x75, 0x00, 0xe7, 0xf5, 0xc4, 0xa4, 0xe4, 0x90, 0xfd, 0x60, }; static const unsigned char ecdsa_secp256r1_sha512_7925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7925_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7925 = { .name = "ecdsa_secp256r1_sha512_7925", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7925_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7925_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7925_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 211 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7926 for ECDSA, tcId is 212 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7926_pubkey[] = { 0x45, 0x6e, 0x5f, 0x80, 0x67, 0xd6, 0x8a, 0x1b, 0x0a, 0x2e, 0x8f, 0xe2, 0xb2, 0x8a, 0xca, 0xd5, 0x75, 0x56, 0x87, 0x15, 0x4a, 0x0f, 0x16, 0x77, 0x34, 0xeb, 0xab, 0xbd, 0xc0, 0x59, 0x07, 0x0d, 0x72, 0x0d, 0xbe, 0x96, 0x65, 0x9a, 0x66, 0xef, 0x0c, 0xf2, 0x7a, 0x73, 0xe7, 0xb3, 0xf3, 0xf1, 0x45, 0xa6, 0x0e, 0x0a, 0xd2, 0x9f, 0x1e, 0x21, 0xdc, 0xc2, 0xbb, 0x42, 0xf0, 0xd8, 0x2c, 0x1e, }; static const unsigned char ecdsa_secp256r1_sha512_7926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7926_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7926 = { .name = "ecdsa_secp256r1_sha512_7926", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7926_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7926_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7926_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 212 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7927 for ECDSA, tcId is 213 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7927_pubkey[] = { 0x42, 0xbf, 0x0c, 0x0a, 0xc1, 0xe3, 0x85, 0x0b, 0xaf, 0x55, 0x15, 0x74, 0x8a, 0x87, 0x8e, 0x34, 0x24, 0x9f, 0x71, 0x03, 0x5e, 0x20, 0xa9, 0xf5, 0x4e, 0xd4, 0x68, 0xec, 0x27, 0x3c, 0xb0, 0xfc, 0x5b, 0x31, 0x38, 0x50, 0x02, 0x30, 0x05, 0x5c, 0x71, 0xf1, 0x2d, 0x53, 0xf5, 0xc7, 0xd0, 0xe3, 0xd8, 0xaa, 0x54, 0xa9, 0x4c, 0x66, 0x8c, 0xb3, 0x11, 0xe2, 0x0d, 0x19, 0x5f, 0xc7, 0x1a, 0xbb, }; static const unsigned char ecdsa_secp256r1_sha512_7927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7927_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6b, 0xfd, 0x55, 0xa8, 0xf8, 0xfd, 0xb6, 0x84, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0xac, 0xe6, 0xd5, 0x3d, 0xf5, 0x76, 0xf0, 0xad, 0x2d, 0xa4, 0x60, 0x7b, 0xb5, 0x2c, 0x0d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7927 = { .name = "ecdsa_secp256r1_sha512_7927", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7927_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7927_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7927_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7928 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7928_pubkey[] = { 0xff, 0xdd, 0x48, 0xda, 0x63, 0xd3, 0xaf, 0x67, 0x22, 0x3f, 0x16, 0xc5, 0x1e, 0xb7, 0xe9, 0x56, 0x00, 0xeb, 0x0b, 0x0e, 0x8b, 0x96, 0x4f, 0x4f, 0xcd, 0x8c, 0x53, 0x4f, 0xac, 0xe3, 0xc2, 0xc2, 0xb4, 0xe0, 0x09, 0xab, 0x2a, 0x76, 0x82, 0x94, 0x80, 0xe6, 0x9c, 0x9e, 0x43, 0xb2, 0xf1, 0xfe, 0x07, 0x6c, 0xfa, 0xfb, 0x3f, 0xa8, 0xd2, 0x7d, 0xd4, 0xd6, 0xba, 0xb4, 0xd6, 0xc3, 0xdb, 0x54, }; static const unsigned char ecdsa_secp256r1_sha512_7928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7928_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0x49, 0x37, 0x79, 0x1d, 0xb0, 0x68, 0x6f, 0x71, 0x2f, 0xf9, 0xb4, 0x53, 0xee, 0xad, 0xb0, 0x02, 0x6c, 0x9b, 0x05, 0x8b, 0xba, 0x49, 0x19, 0x9c, 0xa3, 0xe8, 0xfa, 0xc0, 0x3c, 0x09, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7928 = { .name = "ecdsa_secp256r1_sha512_7928", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7928_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7928_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7928_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7929 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7929_pubkey[] = { 0x79, 0x3c, 0xbf, 0xce, 0x6f, 0x33, 0x5d, 0xcf, 0xed, 0xe7, 0xc6, 0x89, 0x8e, 0xa1, 0xc5, 0x37, 0xd7, 0x66, 0x1e, 0xd6, 0xa8, 0xc9, 0xd3, 0x08, 0xd6, 0x4a, 0x25, 0x60, 0xd2, 0x1c, 0x6e, 0x2c, 0x48, 0x3d, 0x23, 0xa5, 0xff, 0x05, 0xda, 0x00, 0xea, 0xf9, 0xd5, 0x2c, 0xf5, 0x36, 0x2b, 0xe9, 0xb5, 0x3b, 0x95, 0x31, 0x6c, 0x6a, 0x32, 0xe9, 0xeb, 0xe6, 0x8d, 0x9a, 0xc3, 0x5c, 0x2f, 0xd6, }; static const unsigned char ecdsa_secp256r1_sha512_7929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7929_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc5, 0x1b, 0xbe, 0xe2, 0x3a, 0x95, 0x43, 0x7a, 0xbe, 0x5c, 0x97, 0x8f, 0x8f, 0xe5, 0x96, 0xa3, 0x1c, 0x85, 0x8a, 0xc8, 0xd5, 0x5b, 0xe9, 0x78, 0x6a, 0xa5, 0xd3, 0x6a, 0x5a, 0xc7, 0x4e, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7929 = { .name = "ecdsa_secp256r1_sha512_7929", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7929_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7929_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7929_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7930 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7930_pubkey[] = { 0xa9, 0xf7, 0x02, 0x3f, 0x55, 0x9d, 0x4b, 0xb6, 0xc9, 0xf4, 0xbc, 0x36, 0x43, 0xe2, 0x82, 0x4a, 0xff, 0x54, 0x51, 0xd9, 0x29, 0x47, 0x9e, 0xc3, 0xea, 0x5e, 0xb3, 0x0b, 0xad, 0x2c, 0x36, 0xac, 0x6a, 0x7c, 0x77, 0xe8, 0xdd, 0x21, 0xf4, 0xad, 0x49, 0xb1, 0x03, 0xe6, 0x7d, 0xa9, 0xd3, 0xcd, 0xa6, 0x2b, 0x65, 0x3d, 0xd1, 0x94, 0xfa, 0xd2, 0xba, 0x8d, 0x1d, 0xd3, 0x7b, 0xb0, 0xea, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha512_7930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7930_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8b, 0xa4, 0xc3, 0xda, 0x71, 0x54, 0xba, 0x56, 0x4a, 0xb3, 0x44, 0xae, 0x12, 0x00, 0x5a, 0xa4, 0x82, 0xb6, 0xc1, 0x63, 0x9e, 0xa1, 0x91, 0xf8, 0x56, 0x8a, 0xfb, 0x6e, 0x47, 0x16, 0x3c, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7930 = { .name = "ecdsa_secp256r1_sha512_7930", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7930_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7930_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7930_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7931 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7931_pubkey[] = { 0xdf, 0x79, 0xee, 0x08, 0x2b, 0x2f, 0xc7, 0x7e, 0x9c, 0xe4, 0x63, 0x34, 0x71, 0xf5, 0x69, 0xbb, 0xcb, 0x5c, 0xe5, 0x38, 0x56, 0xe3, 0x06, 0x77, 0x74, 0xf3, 0x7e, 0x8a, 0x64, 0xa2, 0xc7, 0xff, 0xaa, 0x48, 0x8a, 0x6c, 0x34, 0xd4, 0x99, 0xdf, 0x76, 0xf4, 0x27, 0xde, 0x36, 0x09, 0xbf, 0xcf, 0xd9, 0xfe, 0xae, 0x67, 0xff, 0xe0, 0xb0, 0xde, 0x59, 0x44, 0x63, 0xc4, 0x53, 0xb0, 0xab, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_7931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7931_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x3d, 0xaf, 0xcf, 0x4b, 0xa5, 0x5b, 0xf1, 0x34, 0x4a, 0xe1, 0x20, 0x05, 0xaa, 0x4a, 0x74, 0xf4, 0x6e, 0xaa, 0x85, 0xf5, 0x02, 0x31, 0x31, 0xcc, 0x63, 0x7a, 0xe2, 0xea, 0x90, 0xab, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7931 = { .name = "ecdsa_secp256r1_sha512_7931", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7931_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7931_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7931_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7932 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7932_pubkey[] = { 0x4c, 0xc3, 0xbf, 0x65, 0xe3, 0x2e, 0x00, 0x28, 0x4a, 0xdf, 0xca, 0x00, 0xf4, 0x0d, 0xf7, 0x55, 0x41, 0x5c, 0x48, 0x50, 0x91, 0xac, 0x04, 0x89, 0xae, 0x9a, 0x33, 0x71, 0x03, 0xa5, 0xf8, 0xf0, 0x12, 0x3a, 0xb8, 0x6d, 0xd4, 0x33, 0xb9, 0x33, 0xb4, 0xf2, 0x06, 0x3c, 0x00, 0x21, 0x44, 0xdf, 0x3c, 0xfe, 0xba, 0x78, 0xda, 0xd0, 0xed, 0x89, 0xc0, 0x37, 0x75, 0x41, 0x53, 0x29, 0x08, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_7932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7932_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x98, 0x7b, 0x5f, 0x9e, 0x97, 0x4a, 0xb7, 0xe2, 0x68, 0x95, 0xc2, 0x40, 0x0b, 0x54, 0x94, 0xe9, 0xe8, 0xdd, 0x55, 0x0b, 0xea, 0x04, 0x62, 0x63, 0x98, 0xc6, 0xf5, 0xc5, 0xd5, 0x21, 0x56, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7932 = { .name = "ecdsa_secp256r1_sha512_7932", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7932_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7932_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7932_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7933 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7933_pubkey[] = { 0x26, 0x4a, 0x7a, 0xd4, 0x39, 0xa4, 0x82, 0x8a, 0x9d, 0xc9, 0x7e, 0xcf, 0x83, 0x71, 0x55, 0x35, 0x5f, 0x99, 0xae, 0x0b, 0x65, 0x97, 0x5f, 0x85, 0x1b, 0x54, 0x1a, 0xd3, 0xa0, 0xe0, 0x32, 0xf0, 0x67, 0x26, 0x8b, 0x72, 0x98, 0xc7, 0x3e, 0x58, 0x18, 0x66, 0xfb, 0xcb, 0xd1, 0x61, 0x68, 0x9b, 0x16, 0xb8, 0x1c, 0xf2, 0x62, 0xe0, 0x07, 0xce, 0x68, 0xe2, 0x5a, 0x28, 0xc8, 0x3e, 0xf0, 0x41, }; static const unsigned char ecdsa_secp256r1_sha512_7933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7933_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xf9, 0x7e, 0x2f, 0xbf, 0x0e, 0x80, 0xd4, 0x12, 0x00, 0x5a, 0xa4, 0xa7, 0x50, 0x86, 0xa3, 0xf0, 0x04, 0xf5, 0x9d, 0x51, 0x2c, 0xb4, 0x72, 0x71, 0x79, 0x87, 0x33, 0xab, 0x41, 0x86, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7933 = { .name = "ecdsa_secp256r1_sha512_7933", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7933_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7933_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7933_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7934 for ECDSA, tcId is 220 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7934_pubkey[] = { 0x1d, 0x7f, 0xf4, 0xd3, 0xa4, 0x12, 0x06, 0xc8, 0x14, 0x36, 0x35, 0xf1, 0x28, 0x76, 0xe0, 0xea, 0x08, 0x75, 0xea, 0x5e, 0x4a, 0x5a, 0x24, 0x92, 0x50, 0xd0, 0xed, 0xa3, 0x3d, 0xaa, 0x21, 0x1f, 0x56, 0xe8, 0x9c, 0x0b, 0xea, 0xf9, 0x10, 0xac, 0x93, 0x4c, 0xa1, 0x23, 0x80, 0x45, 0x56, 0x00, 0xd0, 0xfd, 0x85, 0xb5, 0x6a, 0x70, 0x35, 0xcb, 0x17, 0x1b, 0x3f, 0x1c, 0x72, 0xa1, 0x55, 0x69, }; static const unsigned char ecdsa_secp256r1_sha512_7934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7934_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xd4, 0x82, 0xb6, 0x08, 0x64, 0xd6, 0xc5, 0xcb, 0x4f, 0xd5, 0xdb, 0x9e, 0x7e, 0x28, 0xcc, 0xd9, 0xa5, 0x94, 0x8c, 0x31, 0x6c, 0x87, 0x40, 0xfb, 0x42, 0x9c, 0x0f, 0x37, 0x16, 0x9a, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7934 = { .name = "ecdsa_secp256r1_sha512_7934", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7934_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7934_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7934_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7935 for ECDSA, tcId is 221 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7935_pubkey[] = { 0xb0, 0x96, 0x85, 0xf3, 0x38, 0xdc, 0xeb, 0x42, 0x17, 0x78, 0xa1, 0x45, 0x8d, 0x52, 0xbe, 0xd7, 0x34, 0xc2, 0x36, 0x24, 0x2d, 0xa2, 0xba, 0xa2, 0x80, 0xd6, 0xf6, 0xb7, 0xb8, 0x6e, 0x4f, 0x11, 0x7f, 0xe6, 0xa3, 0x41, 0x46, 0xb4, 0x22, 0xd7, 0xae, 0xbd, 0x1a, 0x51, 0xb2, 0x09, 0x48, 0xd7, 0x87, 0x2a, 0x51, 0x4c, 0x4c, 0xfd, 0x76, 0x86, 0xdc, 0x43, 0x6b, 0x70, 0x73, 0x3d, 0x64, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_7935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7935_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0xcd, 0x11, 0x08, 0x1a, 0x4d, 0x07, 0x59, 0xc1, 0x4f, 0x7b, 0xf4, 0x68, 0x13, 0xd5, 0x2c, 0xc6, 0x73, 0x81, 0x15, 0x32, 0x1b, 0xe0, 0xa4, 0xda, 0x78, 0xa3, 0x35, 0x6b, 0xb7, 0x15, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7935 = { .name = "ecdsa_secp256r1_sha512_7935", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7935_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7935_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7935_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7936 for ECDSA, tcId is 222 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7936_pubkey[] = { 0xdd, 0x81, 0x1f, 0x2c, 0x0f, 0x5e, 0x9d, 0x4f, 0xbb, 0x2e, 0xf3, 0x18, 0x18, 0xc1, 0xcd, 0x80, 0x72, 0x47, 0xbc, 0x14, 0xfc, 0xd1, 0x17, 0x0b, 0xef, 0x00, 0xe2, 0xc7, 0x1d, 0xc0, 0x37, 0xb4, 0x43, 0xa1, 0x5c, 0xdf, 0x8f, 0x3f, 0xbd, 0xc8, 0x7e, 0x06, 0x25, 0x0c, 0x07, 0x20, 0xd2, 0x61, 0xd2, 0xb8, 0xd0, 0x87, 0xfa, 0x7b, 0xf9, 0x54, 0x8f, 0x62, 0x93, 0xf0, 0xce, 0x5a, 0xe8, 0x99, }; static const unsigned char ecdsa_secp256r1_sha512_7936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7936_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe8, 0xdb, 0xff, 0xed, 0x13, 0xc9, 0xa2, 0x09, 0x30, 0x85, 0xc0, 0x79, 0x71, 0x4f, 0x11, 0xf2, 0x4e, 0xb5, 0x83, 0xd7, 0x3b, 0xa2, 0xb4, 0x16, 0xb3, 0x16, 0x91, 0x83, 0xe7, 0xd9, 0xb4, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7936 = { .name = "ecdsa_secp256r1_sha512_7936", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7936_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7936_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7936_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7937 for ECDSA, tcId is 223 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7937_pubkey[] = { 0x69, 0xd6, 0x0a, 0xe1, 0xf3, 0x9e, 0x1d, 0xa9, 0x58, 0x09, 0xd4, 0x08, 0x89, 0x47, 0x07, 0xad, 0x21, 0x34, 0xf4, 0x94, 0x3a, 0x1d, 0xb0, 0x89, 0xbe, 0xbf, 0x81, 0x5a, 0x39, 0x1f, 0x18, 0xdb, 0x32, 0xb4, 0x01, 0xd9, 0x8b, 0xf8, 0x94, 0xd3, 0xb6, 0xd5, 0x9e, 0x6e, 0xb4, 0x55, 0x73, 0x28, 0x56, 0x42, 0xe3, 0x58, 0xad, 0x68, 0x7b, 0x7d, 0x7b, 0xf9, 0x60, 0x0b, 0x19, 0x87, 0x80, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha512_7937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7937_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x01, 0x55, 0x2a, 0x83, 0x81, 0x24, 0xbe, 0xc6, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xe0, 0x66, 0x73, 0x90, 0x0e, 0xac, 0x5c, 0x26, 0x2e, 0x5c, 0xe7, 0x9a, 0x85, 0x21, 0xcd, 0x1e, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7937 = { .name = "ecdsa_secp256r1_sha512_7937", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7937_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7937_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7937_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 223 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7938 for ECDSA, tcId is 224 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7938_pubkey[] = { 0xa6, 0x58, 0x55, 0x3a, 0x06, 0x20, 0xc9, 0x5e, 0x98, 0x7b, 0x5c, 0x31, 0x63, 0xbc, 0xfe, 0xa6, 0x8c, 0x52, 0x06, 0x5f, 0x53, 0xc9, 0xd5, 0x53, 0xf2, 0xa9, 0x24, 0xd8, 0xb3, 0xed, 0x51, 0x1f, 0x79, 0xf0, 0xdf, 0xec, 0x45, 0x36, 0xb6, 0x5a, 0xa5, 0xfb, 0x31, 0x29, 0x7e, 0x96, 0xf6, 0xb4, 0x64, 0xaa, 0x66, 0x9b, 0x92, 0x68, 0xb3, 0x15, 0x6c, 0x43, 0xd4, 0x61, 0x29, 0x78, 0xa5, 0x77, }; static const unsigned char ecdsa_secp256r1_sha512_7938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7938_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x94, 0x02, 0xaa, 0x56, 0x07, 0x02, 0x49, 0x7c, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc1, 0x10, 0x00, 0x25, 0x6f, 0xb1, 0xa0, 0xad, 0xd7, 0xc6, 0x15, 0x6a, 0x47, 0x47, 0x37, 0x18, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7938 = { .name = "ecdsa_secp256r1_sha512_7938", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7938_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7938_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7938_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 224 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7939 for ECDSA, tcId is 225 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7939_pubkey[] = { 0xbc, 0x4d, 0x33, 0x54, 0xa6, 0xa9, 0x73, 0xdd, 0x80, 0x88, 0x91, 0x9c, 0xc1, 0x81, 0x19, 0x4e, 0x87, 0x9e, 0xd7, 0x92, 0x0d, 0xb3, 0x0d, 0x0d, 0x12, 0x78, 0xed, 0xf7, 0x44, 0x13, 0xb7, 0xb9, 0x24, 0x50, 0xd1, 0x62, 0xb2, 0x6d, 0xcb, 0x25, 0xfb, 0xbd, 0x53, 0xea, 0x40, 0x44, 0x18, 0x99, 0x81, 0xd7, 0x37, 0x05, 0x59, 0x25, 0xbd, 0x2e, 0x86, 0xbf, 0xb0, 0x37, 0x4b, 0x09, 0xf3, 0xca, }; static const unsigned char ecdsa_secp256r1_sha512_7939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7939_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x03, 0xff, 0x81, 0x8a, 0x83, 0x6e, 0x3a, 0x53, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xb9, 0x8c, 0xba, 0xd0, 0xb6, 0xe5, 0x35, 0x81, 0x2f, 0x43, 0x3a, 0x09, 0x6c, 0xa1, 0x11, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7939 = { .name = "ecdsa_secp256r1_sha512_7939", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7939_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7939_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7939_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 225 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7940 for ECDSA, tcId is 226 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7940_pubkey[] = { 0x0e, 0xb6, 0x28, 0x72, 0x4f, 0xce, 0x76, 0x4c, 0x68, 0x7d, 0x87, 0x4a, 0xde, 0x7b, 0x8e, 0x0a, 0xa4, 0xab, 0xf2, 0x0e, 0xe6, 0xe3, 0x61, 0x0f, 0xac, 0x9f, 0xe3, 0xe7, 0x2f, 0x97, 0xab, 0x5a, 0xed, 0x09, 0xf4, 0x84, 0x36, 0x60, 0xeb, 0x1d, 0xaf, 0x01, 0x5d, 0x39, 0x7a, 0x7c, 0x10, 0x73, 0xd7, 0xae, 0x43, 0xbd, 0xa0, 0xba, 0x3e, 0x11, 0x70, 0x08, 0x78, 0x5a, 0xbf, 0xff, 0xa0, 0x0f, }; static const unsigned char ecdsa_secp256r1_sha512_7940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7940_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0x8d, 0xdf, 0x70, 0x9d, 0x4a, 0xa1, 0xbd, 0xdf, 0x2e, 0x4b, 0xc7, 0xc7, 0xf2, 0xcb, 0x51, 0x6c, 0xb6, 0x42, 0xbb, 0x3e, 0x39, 0xc3, 0xfe, 0xaf, 0x2f, 0xcf, 0x16, 0xab, 0x95, 0x39, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7940 = { .name = "ecdsa_secp256r1_sha512_7940", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7940_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7940_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7940_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 226 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7941 for ECDSA, tcId is 227 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7941_pubkey[] = { 0xe7, 0xac, 0x5c, 0xc7, 0xf2, 0x96, 0x91, 0x2f, 0x70, 0x3f, 0x59, 0xfe, 0x88, 0xe4, 0x9b, 0x52, 0x1d, 0xa2, 0x45, 0xe1, 0x2e, 0x6e, 0xee, 0x16, 0x1e, 0xe6, 0xb3, 0xb1, 0x12, 0x76, 0x11, 0xa7, 0x7b, 0x3b, 0xed, 0xd2, 0xa7, 0x73, 0xcf, 0x58, 0xb0, 0x62, 0x9b, 0x93, 0x6d, 0xd8, 0x5d, 0xad, 0x2d, 0x0c, 0x39, 0x67, 0x63, 0x06, 0xed, 0x63, 0xe1, 0xa9, 0xbc, 0xd0, 0xe0, 0x8b, 0xcc, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_7941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7941_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7941 = { .name = "ecdsa_secp256r1_sha512_7941", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7941_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7941_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7941_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7942 for ECDSA, tcId is 228 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7942_pubkey[] = { 0x24, 0x07, 0xb6, 0x0a, 0xbf, 0x3e, 0xe5, 0xed, 0xaf, 0x92, 0xed, 0x50, 0x5a, 0x11, 0xd0, 0xdd, 0xce, 0x0e, 0xa3, 0x3e, 0xca, 0x58, 0xa0, 0x31, 0xbb, 0x2f, 0x16, 0x2c, 0x51, 0x2f, 0x40, 0x62, 0xfb, 0x81, 0xbf, 0xf3, 0x6b, 0xf9, 0x67, 0xe8, 0x34, 0xe3, 0xd5, 0xd4, 0x68, 0x73, 0x0d, 0xcd, 0x70, 0x44, 0x00, 0x22, 0xab, 0x60, 0x06, 0x1a, 0x62, 0xfa, 0xc5, 0x33, 0x50, 0xfe, 0x25, 0x9f, }; static const unsigned char ecdsa_secp256r1_sha512_7942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7942_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7942 = { .name = "ecdsa_secp256r1_sha512_7942", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7942_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7942_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7942_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7943 for ECDSA, tcId is 229 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7943_pubkey[] = { 0x47, 0xb2, 0xad, 0x96, 0xdf, 0xc2, 0xf2, 0x3f, 0xe5, 0x92, 0x68, 0x09, 0xf3, 0x80, 0x42, 0xb2, 0xc8, 0x01, 0x96, 0x2b, 0xd7, 0x39, 0x4c, 0xef, 0xbf, 0x4a, 0xac, 0xb2, 0x55, 0x4b, 0x7b, 0x0b, 0xdf, 0x2b, 0x93, 0x7a, 0x16, 0xa7, 0xd9, 0x6a, 0x2a, 0x06, 0x82, 0xcd, 0x16, 0x44, 0x28, 0x89, 0x02, 0x08, 0x59, 0x7f, 0x2c, 0xdc, 0xc7, 0x34, 0xfd, 0xa7, 0x36, 0x00, 0xb5, 0xcf, 0x6c, 0x59, }; static const unsigned char ecdsa_secp256r1_sha512_7943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7943_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7943 = { .name = "ecdsa_secp256r1_sha512_7943", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7943_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7943_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7943_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7944 for ECDSA, tcId is 230 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7944_pubkey[] = { 0x69, 0xa6, 0x5b, 0x75, 0xf3, 0x1a, 0xe7, 0xb4, 0x93, 0x02, 0x92, 0xf9, 0x09, 0x02, 0x46, 0x1b, 0xef, 0xce, 0xe5, 0xd1, 0x60, 0x69, 0x39, 0xc2, 0x8e, 0x01, 0xb6, 0x52, 0xa7, 0xfb, 0xc4, 0x98, 0xcf, 0x68, 0x61, 0x9e, 0x58, 0x60, 0x12, 0x8f, 0x56, 0xce, 0xcf, 0x53, 0xeb, 0xa2, 0xff, 0xe8, 0x28, 0x89, 0xa9, 0xbb, 0x04, 0xa5, 0xfa, 0x4c, 0x8b, 0x72, 0x2b, 0xc9, 0x1d, 0x55, 0x97, 0x8a, }; static const unsigned char ecdsa_secp256r1_sha512_7944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7944_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7944 = { .name = "ecdsa_secp256r1_sha512_7944", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7944_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7944_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7944_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7945 for ECDSA, tcId is 231 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7945_pubkey[] = { 0xb2, 0x03, 0x71, 0x76, 0xc8, 0x4d, 0xb0, 0x4a, 0x6c, 0x77, 0x3e, 0x32, 0xf9, 0xed, 0x1d, 0x6b, 0x25, 0xef, 0x4c, 0x30, 0x3c, 0x67, 0x25, 0xc6, 0x93, 0x2e, 0xc2, 0xcc, 0x27, 0x88, 0xbc, 0xbb, 0x93, 0x61, 0x50, 0x5e, 0x6b, 0x77, 0x16, 0x91, 0xad, 0xb4, 0x15, 0x98, 0xf2, 0x92, 0xd6, 0x52, 0x17, 0x22, 0x40, 0x4b, 0xf1, 0x83, 0x24, 0x1b, 0x19, 0x57, 0x38, 0xb7, 0x7a, 0xbd, 0x6c, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha512_7945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7945_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7945 = { .name = "ecdsa_secp256r1_sha512_7945", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7945_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7945_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7945_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7946 for ECDSA, tcId is 232 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7946_pubkey[] = { 0x1e, 0xef, 0x95, 0xae, 0xf7, 0x1f, 0x79, 0x3a, 0xfd, 0x50, 0xbb, 0x26, 0x04, 0x06, 0x4d, 0x63, 0xe8, 0x8b, 0xef, 0x74, 0x04, 0xa4, 0xd0, 0xe2, 0x06, 0x44, 0x62, 0x45, 0xae, 0x2e, 0x78, 0x34, 0xc9, 0x6e, 0x86, 0xdd, 0x04, 0x0f, 0x97, 0x94, 0xb6, 0x37, 0x12, 0xd9, 0x0e, 0x71, 0x95, 0x76, 0xb8, 0xb9, 0x2c, 0x40, 0x6a, 0xb0, 0xf2, 0x88, 0xad, 0x9b, 0x32, 0x7b, 0xd1, 0x24, 0x45, 0x4f, }; static const unsigned char ecdsa_secp256r1_sha512_7946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7946_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7946 = { .name = "ecdsa_secp256r1_sha512_7946", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7946_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7946_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7946_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7947 for ECDSA, tcId is 233 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7947_pubkey[] = { 0xa9, 0x73, 0x48, 0x99, 0xc9, 0x54, 0xe5, 0xb7, 0xad, 0xbc, 0xa8, 0xf7, 0x83, 0x42, 0x8b, 0x5f, 0xbc, 0xbd, 0xfd, 0x3d, 0x28, 0x13, 0xf8, 0xd2, 0xf9, 0x5b, 0x31, 0xa7, 0x8a, 0xb1, 0x07, 0x56, 0x76, 0x67, 0xab, 0xf8, 0xc0, 0x2c, 0xe4, 0x95, 0x1b, 0xc5, 0x9b, 0x25, 0x64, 0x13, 0x0c, 0x27, 0xd7, 0xb6, 0x4c, 0xdb, 0xc5, 0xca, 0xd9, 0x5c, 0xa4, 0x2d, 0x5b, 0xbb, 0x7c, 0xd4, 0xe7, 0x93, }; static const unsigned char ecdsa_secp256r1_sha512_7947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7947_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7947 = { .name = "ecdsa_secp256r1_sha512_7947", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7947_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7947_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7947_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 233 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7948 for ECDSA, tcId is 234 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7948_pubkey[] = { 0x1a, 0xe5, 0x16, 0x62, 0x33, 0x1a, 0x1d, 0xbf, 0xab, 0x07, 0x51, 0xd3, 0x0d, 0xfa, 0xb2, 0x27, 0x3a, 0x04, 0xa2, 0x39, 0xe0, 0x55, 0xa5, 0x37, 0xb1, 0x6a, 0xb5, 0x95, 0xf9, 0x61, 0x23, 0x96, 0x43, 0x4f, 0x21, 0xc2, 0xbf, 0xe6, 0x55, 0x5c, 0x9f, 0xc4, 0xa8, 0xe8, 0x2d, 0xab, 0x1f, 0xa5, 0x63, 0x18, 0x81, 0xb0, 0x16, 0xe0, 0x83, 0x1d, 0x9e, 0x1b, 0xbf, 0x57, 0x99, 0xfc, 0xf3, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_7948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7948_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7948 = { .name = "ecdsa_secp256r1_sha512_7948", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7948_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7948_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7948_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7949 for ECDSA, tcId is 235 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7949_pubkey[] = { 0x53, 0xc9, 0x0c, 0xdd, 0x8b, 0x0d, 0xad, 0xd2, 0x1c, 0x44, 0xad, 0x55, 0x7b, 0x32, 0x7f, 0x4d, 0xbf, 0x57, 0x14, 0x4a, 0xaf, 0x06, 0x59, 0x7d, 0xeb, 0x3f, 0x94, 0x12, 0x52, 0x06, 0xa6, 0xc1, 0x46, 0x03, 0x47, 0x5b, 0xd7, 0x9b, 0x30, 0xe3, 0x63, 0x40, 0xcd, 0x09, 0xb0, 0xb5, 0x9e, 0x6c, 0xd4, 0x6c, 0xe9, 0x01, 0x50, 0xe9, 0xff, 0xe5, 0xc8, 0xa0, 0x17, 0x2b, 0x2c, 0x98, 0x98, 0xe3, }; static const unsigned char ecdsa_secp256r1_sha512_7949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7949_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7949 = { .name = "ecdsa_secp256r1_sha512_7949", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7949_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7949_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7949_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 235 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7950 for ECDSA, tcId is 236 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7950_pubkey[] = { 0x33, 0x79, 0x75, 0x39, 0x51, 0x5c, 0x51, 0xf4, 0x29, 0x96, 0x7b, 0x8e, 0x36, 0x93, 0x0d, 0x9f, 0xdd, 0xa1, 0xed, 0xb1, 0x3a, 0xec, 0xec, 0x97, 0x71, 0xf7, 0xcd, 0xe5, 0xf6, 0xf2, 0xe7, 0x4e, 0xba, 0x51, 0xd0, 0xb6, 0x45, 0x6b, 0xb9, 0x02, 0xdb, 0xa1, 0xf3, 0xea, 0x43, 0x6f, 0x96, 0xad, 0x23, 0x55, 0xda, 0x45, 0x4d, 0xc9, 0xb3, 0x2c, 0x50, 0x3c, 0x4b, 0xc6, 0xcf, 0xd6, 0xd4, 0x10, }; static const unsigned char ecdsa_secp256r1_sha512_7950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7950_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7950 = { .name = "ecdsa_secp256r1_sha512_7950", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7950_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7950_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7950_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 236 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7951 for ECDSA, tcId is 237 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7951_pubkey[] = { 0x0a, 0x8f, 0x5f, 0x1d, 0x5b, 0xbd, 0x27, 0x83, 0xfa, 0x7f, 0x37, 0xc8, 0x68, 0x79, 0x05, 0x7f, 0xb2, 0xfc, 0xf2, 0x53, 0x83, 0xaa, 0xfb, 0x86, 0xd0, 0x3d, 0x6b, 0xaf, 0xb4, 0x1a, 0x17, 0xb3, 0xea, 0xf6, 0xda, 0x71, 0x5f, 0xe9, 0x50, 0x34, 0x9f, 0xd5, 0x73, 0x61, 0x17, 0xb0, 0x8e, 0x15, 0xe3, 0x2c, 0xf1, 0xd2, 0xfd, 0xc0, 0x03, 0xe5, 0x10, 0x00, 0x9f, 0x1b, 0x4b, 0xa1, 0xe6, 0x48, }; static const unsigned char ecdsa_secp256r1_sha512_7951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7951_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7951 = { .name = "ecdsa_secp256r1_sha512_7951", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7951_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7951_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7951_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 237 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7952 for ECDSA, tcId is 238 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7952_pubkey[] = { 0x1d, 0xbc, 0x94, 0xe9, 0x6c, 0x05, 0x6b, 0x9d, 0x2c, 0xb6, 0x77, 0x3b, 0xb2, 0x4b, 0x69, 0xed, 0x47, 0x38, 0x51, 0xba, 0xdf, 0x92, 0x7a, 0x29, 0x95, 0x5a, 0xff, 0x29, 0x0e, 0xf3, 0x67, 0x5a, 0x65, 0xe5, 0x87, 0x56, 0x11, 0x22, 0xaa, 0x82, 0x26, 0xfa, 0xcb, 0x95, 0xdf, 0x08, 0x30, 0x8c, 0xad, 0xf0, 0x1c, 0x83, 0x51, 0xa1, 0x56, 0x91, 0x76, 0xd9, 0x17, 0x82, 0x11, 0x13, 0xaa, 0x7c, }; static const unsigned char ecdsa_secp256r1_sha512_7952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7952_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7952 = { .name = "ecdsa_secp256r1_sha512_7952", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7952_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7952_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7952_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 238 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7953 for ECDSA, tcId is 239 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7953_pubkey[] = { 0x08, 0x4a, 0xb8, 0x85, 0xdb, 0xff, 0x7f, 0x12, 0xe6, 0xcd, 0xad, 0xb5, 0x9d, 0x45, 0x6e, 0x50, 0x07, 0x97, 0x77, 0x94, 0x25, 0xc7, 0x51, 0x8c, 0x25, 0x9c, 0x83, 0x71, 0x82, 0x89, 0xe6, 0xe9, 0x91, 0xc3, 0x45, 0xd3, 0xa0, 0x93, 0xe8, 0x66, 0x70, 0x60, 0x5b, 0xbc, 0x2f, 0xf4, 0xc6, 0x9d, 0x0e, 0xd6, 0x94, 0xfd, 0x43, 0x3e, 0xc6, 0xb6, 0xba, 0x1b, 0xf7, 0xd5, 0x6c, 0x3e, 0x6b, 0x51, }; static const unsigned char ecdsa_secp256r1_sha512_7953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7953_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7953 = { .name = "ecdsa_secp256r1_sha512_7953", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7953_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7953_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7953_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 239 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7954 for ECDSA, tcId is 240 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7954_pubkey[] = { 0x00, 0x3a, 0xdf, 0xa4, 0xc6, 0x20, 0xa2, 0x07, 0x09, 0x6c, 0xd1, 0x8e, 0xe8, 0xfd, 0x2a, 0x90, 0xe2, 0x01, 0x06, 0xcf, 0x82, 0x4a, 0x0c, 0x63, 0xd6, 0xde, 0xc7, 0x27, 0xa9, 0xfe, 0x7f, 0x50, 0x94, 0x30, 0xd2, 0x6b, 0xdd, 0x5f, 0x71, 0xe8, 0x19, 0xd1, 0x2b, 0x70, 0x06, 0x99, 0x01, 0x46, 0x1a, 0xe0, 0x83, 0xcc, 0x80, 0x91, 0x22, 0xd4, 0xfb, 0x86, 0xb5, 0xc4, 0x75, 0x24, 0x4e, 0x5a, }; static const unsigned char ecdsa_secp256r1_sha512_7954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7954_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7954 = { .name = "ecdsa_secp256r1_sha512_7954", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7954_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7954_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7954_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 240 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7955 for ECDSA, tcId is 241 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7955_pubkey[] = { 0x7c, 0x98, 0xb2, 0xd4, 0x7e, 0xb4, 0x33, 0xc0, 0xd1, 0x8e, 0x53, 0x3c, 0xfb, 0xc8, 0x90, 0x9d, 0x66, 0xf7, 0xb7, 0x9d, 0x59, 0x25, 0xcc, 0xb1, 0x7e, 0xcc, 0xec, 0x9d, 0x10, 0x5c, 0x58, 0x84, 0x8d, 0x5c, 0xa9, 0x9b, 0x35, 0x0b, 0xd7, 0xd1, 0x0a, 0xb5, 0xee, 0x6f, 0xcf, 0xe4, 0x66, 0x23, 0xfd, 0xc0, 0x3e, 0x9f, 0x82, 0x81, 0x58, 0xf4, 0xd4, 0xcc, 0x08, 0xad, 0x1f, 0xf8, 0x3d, 0xe4, }; static const unsigned char ecdsa_secp256r1_sha512_7955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7955_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xb4, 0xcf, 0xa1, 0x99, 0x6e, 0xc1, 0xd2, 0x4c, 0xdb, 0xc8, 0xfa, 0x17, 0xfc, 0xab, 0xc3, 0xa5, 0xd4, 0xb2, 0xb3, 0x6c, 0xf4, 0xb5, 0x0a, 0x7b, 0x77, 0x5a, 0xb7, 0x87, 0x85, 0x71, 0x07, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7955 = { .name = "ecdsa_secp256r1_sha512_7955", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7955_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7955_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7955_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 241 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7956 for ECDSA, tcId is 242 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7956_pubkey[] = { 0x7c, 0x98, 0xb2, 0xd4, 0x7e, 0xb4, 0x33, 0xc0, 0xd1, 0x8e, 0x53, 0x3c, 0xfb, 0xc8, 0x90, 0x9d, 0x66, 0xf7, 0xb7, 0x9d, 0x59, 0x25, 0xcc, 0xb1, 0x7e, 0xcc, 0xec, 0x9d, 0x10, 0x5c, 0x58, 0x84, 0x72, 0xa3, 0x56, 0x63, 0xca, 0xf4, 0x28, 0x2f, 0xf5, 0x4a, 0x11, 0x90, 0x30, 0x1b, 0x99, 0xdc, 0x02, 0x3f, 0xc1, 0x61, 0x7d, 0x7e, 0xa7, 0x0b, 0x2b, 0x33, 0xf7, 0x52, 0xe0, 0x07, 0xc2, 0x1b, }; static const unsigned char ecdsa_secp256r1_sha512_7956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7956_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xb4, 0xcf, 0xa1, 0x99, 0x6e, 0xc1, 0xd2, 0x4c, 0xdb, 0xc8, 0xfa, 0x17, 0xfc, 0xab, 0xc3, 0xa5, 0xd4, 0xb2, 0xb3, 0x6c, 0xf4, 0xb5, 0x0a, 0x7b, 0x77, 0x5a, 0xb7, 0x87, 0x85, 0x71, 0x07, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7956 = { .name = "ecdsa_secp256r1_sha512_7956", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7956_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7956_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7956_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 242 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7957 for ECDSA, tcId is 243 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7957_pubkey[] = { 0xb7, 0xa9, 0x0e, 0x21, 0xe7, 0x54, 0x7d, 0x73, 0x26, 0x79, 0x40, 0x03, 0x3c, 0xea, 0x05, 0x04, 0x2c, 0x50, 0xf7, 0xc9, 0xfa, 0x5e, 0xae, 0xb4, 0x71, 0xcd, 0x62, 0x60, 0xc6, 0x85, 0xf2, 0xe3, 0x8b, 0xb7, 0x30, 0x9d, 0x0c, 0x3b, 0xab, 0x24, 0x9f, 0xaa, 0xf3, 0xe4, 0x41, 0x79, 0xd6, 0xdd, 0x53, 0x02, 0x37, 0x5c, 0x58, 0x0f, 0xd0, 0x57, 0x0a, 0x78, 0x8c, 0x6b, 0xe3, 0x68, 0x0c, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_7957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7957_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7957 = { .name = "ecdsa_secp256r1_sha512_7957", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7957_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7957_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7957_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 243 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7958 for ECDSA, tcId is 244 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7958_pubkey[] = { 0x15, 0x50, 0xa1, 0x73, 0x37, 0x3b, 0x2d, 0x59, 0x43, 0x74, 0xf0, 0x64, 0x2c, 0xd7, 0x3d, 0xe0, 0x6a, 0x04, 0x5c, 0x09, 0xc7, 0xa4, 0xf3, 0x88, 0xc7, 0x31, 0xe8, 0xcd, 0x89, 0x71, 0xad, 0xfc, 0x9a, 0x3a, 0x98, 0x43, 0x58, 0x3a, 0x86, 0xc0, 0xe1, 0xc6, 0x2c, 0xbd, 0xe6, 0x71, 0x65, 0xf4, 0x0a, 0x92, 0x6b, 0x10, 0x28, 0xba, 0x38, 0xaa, 0x38, 0x95, 0xe1, 0x88, 0xeb, 0xbc, 0x70, 0x66, }; static const unsigned char ecdsa_secp256r1_sha512_7958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7958_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7958 = { .name = "ecdsa_secp256r1_sha512_7958", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7958_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7958_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7958_sig, .siglen = 66, .result = -1, .comment = "point with x-coordinate 0, tcId is 244 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7959 for ECDSA, tcId is 245 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7959_pubkey[] = { 0x31, 0x34, 0x47, 0x77, 0x81, 0x95, 0xda, 0xa1, 0x79, 0x1a, 0x65, 0x30, 0xcd, 0x06, 0x97, 0xae, 0x34, 0xbf, 0x9d, 0x8d, 0x22, 0x59, 0x84, 0x39, 0x4f, 0x72, 0xee, 0xf3, 0x50, 0x59, 0x71, 0x11, 0x09, 0x96, 0xa8, 0xfb, 0xdd, 0x1a, 0x70, 0xec, 0xd6, 0x4c, 0xb0, 0x0b, 0x59, 0x5a, 0xfe, 0x16, 0x69, 0xbf, 0xef, 0x80, 0xd9, 0x17, 0x56, 0xa6, 0x2d, 0x84, 0xc1, 0xd8, 0x3e, 0x0f, 0x22, 0xab, }; static const unsigned char ecdsa_secp256r1_sha512_7959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7959_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7959 = { .name = "ecdsa_secp256r1_sha512_7959", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7959_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7959_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7959_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 245 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7960 for ECDSA, tcId is 246 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7960_pubkey[] = { 0x4a, 0xda, 0x63, 0x49, 0x41, 0x47, 0x6c, 0xa6, 0x3c, 0x2c, 0x58, 0x03, 0xee, 0xc2, 0xf3, 0x3b, 0x2d, 0x17, 0x92, 0x0f, 0x79, 0x8a, 0x5b, 0xe6, 0x27, 0x5f, 0x5a, 0x54, 0xcd, 0x2e, 0x76, 0x39, 0xb1, 0xa0, 0x4b, 0xea, 0xd5, 0xc7, 0x31, 0x4c, 0x42, 0x74, 0x92, 0xdb, 0x21, 0xb9, 0x54, 0x4d, 0x81, 0xca, 0xa8, 0x15, 0x95, 0x87, 0xe4, 0x1a, 0xa0, 0x23, 0xaa, 0x96, 0x7f, 0x31, 0xaa, 0xa1, }; static const unsigned char ecdsa_secp256r1_sha512_7960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7960_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7960 = { .name = "ecdsa_secp256r1_sha512_7960", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7960_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7960_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7960_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 246 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7961 for ECDSA, tcId is 247 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7961_pubkey[] = { 0xaa, 0xcc, 0xe0, 0x93, 0x27, 0x0f, 0xa5, 0x9a, 0xd4, 0x12, 0xb5, 0x45, 0x9a, 0x08, 0xe4, 0x90, 0x74, 0x3b, 0x97, 0x08, 0x6c, 0x78, 0x1a, 0xc3, 0xc8, 0xd5, 0x40, 0x30, 0xb4, 0x1a, 0x31, 0x19, 0x3b, 0xec, 0xe4, 0x95, 0x61, 0x72, 0xd5, 0x6b, 0xef, 0xb7, 0x01, 0x1d, 0x68, 0x4e, 0x77, 0x29, 0x05, 0xe4, 0x8d, 0x21, 0x15, 0x44, 0x4a, 0x75, 0xac, 0x7a, 0x32, 0x5a, 0x3f, 0x25, 0xf4, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha512_7961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7961_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7961 = { .name = "ecdsa_secp256r1_sha512_7961", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7961_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7961_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7961_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 247 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7962 for ECDSA, tcId is 248 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7962_pubkey[] = { 0xf6, 0x2b, 0x8d, 0x7f, 0xee, 0xff, 0x5a, 0x84, 0x7a, 0xb7, 0x92, 0x12, 0x26, 0x9e, 0x55, 0xe6, 0x2f, 0xa8, 0x7e, 0xbe, 0x93, 0x08, 0x21, 0x74, 0x7b, 0x57, 0xa5, 0x11, 0xa5, 0xea, 0x99, 0xf0, 0x43, 0x9e, 0xe0, 0x57, 0xbb, 0x27, 0x89, 0x85, 0x82, 0xa6, 0x83, 0xc3, 0xfd, 0xb7, 0xf9, 0x54, 0x04, 0xd4, 0x1d, 0x42, 0xf2, 0x76, 0x80, 0x37, 0x51, 0xa3, 0x16, 0xeb, 0x3a, 0xab, 0x7e, 0xbf, }; static const unsigned char ecdsa_secp256r1_sha512_7962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7962_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7962 = { .name = "ecdsa_secp256r1_sha512_7962", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7962_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7962_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7962_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 248 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7963 for ECDSA, tcId is 249 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7963_pubkey[] = { 0x4b, 0xaa, 0x07, 0xff, 0x6e, 0x7b, 0xb9, 0xaa, 0x22, 0x3d, 0x1c, 0x61, 0x93, 0x20, 0x05, 0xfe, 0x98, 0xfe, 0x78, 0xb7, 0x87, 0xfd, 0xab, 0x4b, 0xd3, 0x61, 0x9b, 0xc8, 0x83, 0x30, 0x72, 0xa2, 0xbc, 0xac, 0xd6, 0x38, 0x02, 0xc5, 0x6a, 0xf8, 0x26, 0x07, 0x95, 0x3e, 0x72, 0xa0, 0xf5, 0xd3, 0xc2, 0x3b, 0xd2, 0x65, 0x54, 0x4e, 0x02, 0x09, 0x51, 0x82, 0x4e, 0xa4, 0x85, 0x55, 0x5d, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_7963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7963_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7963 = { .name = "ecdsa_secp256r1_sha512_7963", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7963_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7963_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7963_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 249 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7964 for ECDSA, tcId is 250 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7964_pubkey[] = { 0x0c, 0x75, 0x3e, 0xd1, 0xba, 0x92, 0xf7, 0x66, 0x80, 0x0f, 0xdd, 0x0a, 0xe1, 0xc0, 0xd7, 0xf8, 0xf4, 0xcd, 0x83, 0x05, 0xfd, 0x80, 0x3d, 0x8b, 0xca, 0x88, 0x13, 0x97, 0xb5, 0x93, 0x7e, 0x2d, 0xb5, 0x68, 0x50, 0x9b, 0x1f, 0xaf, 0x3c, 0xf2, 0x51, 0xde, 0x6d, 0xb9, 0x81, 0x0e, 0x8b, 0x8c, 0xae, 0xd2, 0x35, 0xda, 0x10, 0xee, 0xdd, 0xbe, 0xd6, 0x27, 0x75, 0xc8, 0xe5, 0xc9, 0x46, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_7964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7964_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7964 = { .name = "ecdsa_secp256r1_sha512_7964", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7964_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7964_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7964_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 250 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7965 for ECDSA, tcId is 251 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7965_pubkey[] = { 0x03, 0x0f, 0xdc, 0xae, 0x65, 0x41, 0xf2, 0x2c, 0x5b, 0xab, 0x25, 0x4e, 0x4f, 0x1a, 0x28, 0x5c, 0x50, 0x7d, 0x1c, 0xef, 0xea, 0x03, 0xbf, 0x90, 0xcf, 0x19, 0xda, 0xf3, 0xcb, 0x62, 0xdf, 0x69, 0x5f, 0xf2, 0xc9, 0x4d, 0x58, 0x8f, 0x2c, 0x2b, 0x2b, 0x0a, 0x12, 0xbe, 0xbc, 0x01, 0x1b, 0xce, 0xe4, 0xfa, 0x1b, 0x54, 0x50, 0x6e, 0xc0, 0x7d, 0x0a, 0x29, 0xd2, 0x4a, 0x08, 0x91, 0x19, 0x3c, }; static const unsigned char ecdsa_secp256r1_sha512_7965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7965_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7965 = { .name = "ecdsa_secp256r1_sha512_7965", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7965_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7965_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7965_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 251 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7966 for ECDSA, tcId is 252 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7966_pubkey[] = { 0x03, 0xfc, 0x62, 0x1e, 0xaf, 0x90, 0xc2, 0x3d, 0x8f, 0x9f, 0xa1, 0x25, 0xd2, 0xc5, 0x9b, 0x87, 0x28, 0xeb, 0xcc, 0xb3, 0x0c, 0xa3, 0xe3, 0xdb, 0x87, 0x9a, 0x06, 0xca, 0x90, 0xf2, 0x0c, 0xdc, 0xae, 0x58, 0xd3, 0xf0, 0xc6, 0xae, 0xf0, 0xe8, 0x05, 0xbe, 0x10, 0xea, 0x54, 0xe2, 0x3c, 0xf6, 0xf0, 0x39, 0x7f, 0x9a, 0xdd, 0xdd, 0xc2, 0xb0, 0x90, 0x88, 0x85, 0x53, 0x16, 0xb0, 0xef, 0x44, }; static const unsigned char ecdsa_secp256r1_sha512_7966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7966_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7966 = { .name = "ecdsa_secp256r1_sha512_7966", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7966_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7966_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7966_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 252 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7967 for ECDSA, tcId is 253 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7967_pubkey[] = { 0x70, 0xf2, 0xce, 0x24, 0xdc, 0x62, 0x92, 0x3b, 0xb0, 0x9c, 0xc9, 0x2d, 0x74, 0x32, 0x9b, 0xbd, 0x0d, 0x2e, 0x6b, 0x0e, 0x35, 0x4c, 0x0b, 0xe2, 0x38, 0x3d, 0x24, 0xac, 0xdc, 0xcb, 0x9e, 0x4c, 0xd4, 0x2d, 0x1f, 0x97, 0x34, 0x66, 0xf5, 0xe5, 0x46, 0x2a, 0x93, 0x90, 0x84, 0xa2, 0x94, 0xeb, 0xfc, 0x7a, 0x45, 0x62, 0x9c, 0x70, 0xee, 0x5d, 0xef, 0x46, 0xde, 0x95, 0x36, 0xea, 0x7b, 0xf7, }; static const unsigned char ecdsa_secp256r1_sha512_7967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7967_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7967 = { .name = "ecdsa_secp256r1_sha512_7967", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7967_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7967_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7967_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 253 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7968 for ECDSA, tcId is 254 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7968_pubkey[] = { 0x73, 0x2b, 0x8a, 0xc0, 0xc3, 0x0f, 0xe4, 0x43, 0x07, 0x43, 0x12, 0x35, 0x27, 0x1c, 0xb5, 0xd6, 0xe5, 0xf6, 0x77, 0xa1, 0x9c, 0xe3, 0xf0, 0x58, 0xb9, 0x39, 0xa7, 0xbf, 0x19, 0x34, 0x9d, 0x3c, 0x85, 0x8c, 0xc7, 0x35, 0xaf, 0x85, 0x77, 0x46, 0x82, 0x75, 0x84, 0x7c, 0xf5, 0xec, 0x19, 0x97, 0x2e, 0x6c, 0x20, 0x73, 0x82, 0x76, 0xe2, 0x70, 0x8b, 0x23, 0xc5, 0x95, 0xbf, 0xc4, 0x43, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_7968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7968_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7968 = { .name = "ecdsa_secp256r1_sha512_7968", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7968_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7968_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7968_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 254 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7969 for ECDSA, tcId is 255 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7969_pubkey[] = { 0x47, 0xaf, 0xf9, 0x50, 0x18, 0x25, 0xa1, 0x66, 0x78, 0x2b, 0xb5, 0x8a, 0x5b, 0x45, 0x90, 0x06, 0xea, 0xcd, 0xbc, 0xe5, 0xe5, 0x32, 0x3a, 0xdd, 0xad, 0x34, 0xec, 0x1b, 0x64, 0x44, 0xcd, 0xce, 0x91, 0x99, 0xc3, 0x15, 0x02, 0xad, 0x42, 0x77, 0xc7, 0x3d, 0xdd, 0x0c, 0x80, 0x7b, 0x72, 0x63, 0x4c, 0x45, 0x76, 0x24, 0x04, 0x83, 0x7d, 0x98, 0x14, 0xa5, 0xd4, 0xb5, 0xa7, 0xc3, 0xf3, 0x98, }; static const unsigned char ecdsa_secp256r1_sha512_7969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7969_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7969 = { .name = "ecdsa_secp256r1_sha512_7969", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7969_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7969_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7969_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 255 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7970 for ECDSA, tcId is 256 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7970_pubkey[] = { 0xae, 0xd8, 0xee, 0xff, 0x77, 0x64, 0x4b, 0xf8, 0x3b, 0x92, 0x22, 0xf8, 0xf5, 0x71, 0x73, 0xfa, 0x82, 0x17, 0xec, 0x7e, 0x07, 0x63, 0xee, 0x7d, 0x71, 0x71, 0xfb, 0x60, 0x92, 0xfb, 0xa5, 0xc0, 0x64, 0x86, 0xa8, 0x6d, 0x94, 0xf4, 0x88, 0x34, 0xba, 0x5a, 0xdb, 0xaf, 0x34, 0x96, 0x87, 0xf9, 0xce, 0xe4, 0x00, 0x38, 0x96, 0x42, 0xb8, 0x28, 0xe6, 0x82, 0x07, 0xb1, 0x47, 0xca, 0x2c, 0x46, }; static const unsigned char ecdsa_secp256r1_sha512_7970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7970_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7970 = { .name = "ecdsa_secp256r1_sha512_7970", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7970_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7970_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7970_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 256 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7971 for ECDSA, tcId is 257 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7971_pubkey[] = { 0xf7, 0xc5, 0x4a, 0x58, 0x5a, 0x90, 0x43, 0x00, 0xd0, 0x5b, 0x53, 0xef, 0x3b, 0x85, 0x4e, 0x71, 0x99, 0x9a, 0x34, 0x4b, 0x89, 0xad, 0xc0, 0xca, 0xaa, 0x28, 0xe2, 0x54, 0xdb, 0x9b, 0xc7, 0xc7, 0xc1, 0x61, 0xa7, 0x9f, 0x38, 0xff, 0x44, 0x60, 0x51, 0x30, 0x35, 0x77, 0xe4, 0x06, 0x38, 0xfb, 0x02, 0x03, 0x29, 0x94, 0x0a, 0x63, 0xc2, 0x41, 0xbb, 0x32, 0xc2, 0x20, 0x5e, 0xb5, 0x7b, 0x7d, }; static const unsigned char ecdsa_secp256r1_sha512_7971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7971_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7971 = { .name = "ecdsa_secp256r1_sha512_7971", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7971_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7971_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7971_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 257 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7972 for ECDSA, tcId is 258 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7972_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha512_7972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7972_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7972 = { .name = "ecdsa_secp256r1_sha512_7972", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7972_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7972_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7972_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 258 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7973 for ECDSA, tcId is 259 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7973_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha512_7973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7973_sig[] = { 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7973 = { .name = "ecdsa_secp256r1_sha512_7973", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7973_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7973_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7973_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 259 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7974 for ECDSA, tcId is 260 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7974_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_7974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7974_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7974 = { .name = "ecdsa_secp256r1_sha512_7974", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7974_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7974_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7974_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 260 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7975 for ECDSA, tcId is 261 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7975_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_7975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7975_sig[] = { 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7975 = { .name = "ecdsa_secp256r1_sha512_7975", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7975_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7975_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7975_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 261 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7976 for ECDSA, tcId is 262 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7976_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_7976_sig[] = { 0x09, 0x3f, 0x38, 0x25, 0xc0, 0xcf, 0x82, 0x0c, 0xce, 0xd8, 0x16, 0xa3, 0xa6, 0x74, 0x46, 0xc8, 0x56, 0x06, 0xa6, 0xd5, 0x29, 0xe4, 0x38, 0x57, 0x64, 0x3f, 0xcc, 0xc1, 0x1e, 0x1f, 0x70, 0x5f, 0x76, 0x97, 0x82, 0x88, 0x8c, 0x63, 0x05, 0x86, 0x30, 0xf9, 0x7a, 0x58, 0x91, 0xc8, 0x70, 0x0e, 0x82, 0x97, 0x9e, 0x4f, 0x23, 0x35, 0x86, 0xbf, 0xc5, 0x04, 0x2f, 0xa7, 0x3c, 0xb7, 0x0a, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7976 = { .name = "ecdsa_secp256r1_sha512_7976", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7976_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha512_7976_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 262 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7977 for ECDSA, tcId is 263 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7977_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_7977_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_7977_sig[] = { 0xe8, 0x56, 0x4e, 0x3e, 0x51, 0x5a, 0x09, 0xf9, 0xf3, 0x52, 0x58, 0x44, 0x2b, 0x99, 0xe1, 0x62, 0xd2, 0x7e, 0x10, 0x97, 0x5f, 0xcb, 0x79, 0x63, 0xd3, 0xc2, 0x63, 0x19, 0xdc, 0x09, 0x3f, 0x84, 0xc3, 0xaf, 0x01, 0xed, 0x0f, 0xd0, 0x14, 0x87, 0x49, 0xca, 0x32, 0x33, 0x64, 0x84, 0x6c, 0x86, 0x2f, 0xc6, 0xf4, 0xbe, 0xb6, 0x82, 0xb7, 0xea, 0xd3, 0xb2, 0xd8, 0x9b, 0x9d, 0xa8, 0xba, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7977 = { .name = "ecdsa_secp256r1_sha512_7977", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7977_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7977_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha512_7977_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 263 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7978 for ECDSA, tcId is 264 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7978_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_7978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_7978_sig[] = { 0x14, 0x12, 0x25, 0x4f, 0x8c, 0x1d, 0xd2, 0x74, 0x2a, 0x00, 0xdd, 0xee, 0x51, 0x92, 0xe7, 0xba, 0xa2, 0x88, 0x74, 0x10, 0x26, 0x87, 0x1f, 0x30, 0x57, 0xad, 0x9f, 0x98, 0x3b, 0x5a, 0xb1, 0x14, 0xbc, 0xdf, 0x87, 0x8f, 0xa1, 0x56, 0xf3, 0x70, 0x40, 0x92, 0x26, 0x98, 0xad, 0x6f, 0xb6, 0x92, 0x86, 0x01, 0xdd, 0xc2, 0x6c, 0x40, 0x44, 0x8e, 0xa6, 0x60, 0xe6, 0x7c, 0x25, 0xed, 0xa0, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7978 = { .name = "ecdsa_secp256r1_sha512_7978", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7978_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7978_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_7978_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 264 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7979 for ECDSA, tcId is 265 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7979_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_7979_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_7979_sig[] = { 0x9e, 0x06, 0x76, 0x04, 0x83, 0x81, 0x83, 0x9b, 0xb0, 0xa4, 0x70, 0x3a, 0x0a, 0xe3, 0x8f, 0xac, 0xfe, 0x1e, 0x2c, 0x61, 0xbd, 0x25, 0x95, 0x0c, 0x89, 0x6a, 0xa9, 0x75, 0xcd, 0x6e, 0xc8, 0x69, 0x6e, 0xa0, 0xce, 0xdf, 0x96, 0xf1, 0x1f, 0xff, 0x0e, 0x74, 0x69, 0x41, 0x18, 0x34, 0x92, 0xf4, 0xd1, 0x72, 0x72, 0xc9, 0x24, 0x49, 0xaf, 0xd2, 0x0e, 0x34, 0x04, 0x1a, 0x68, 0x94, 0xee, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7979 = { .name = "ecdsa_secp256r1_sha512_7979", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7979_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7979_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha512_7979_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 265 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7980 for ECDSA, tcId is 266 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7980_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_7980_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7980_sig[] = { 0x55, 0x44, 0x82, 0x40, 0x41, 0x73, 0xa5, 0x58, 0x28, 0x84, 0xb0, 0xd1, 0x68, 0xa3, 0x2e, 0xf8, 0x03, 0x3d, 0x7e, 0xb7, 0x80, 0x93, 0x6c, 0x39, 0x0e, 0x8e, 0xed, 0xf7, 0x20, 0xc7, 0xf5, 0x64, 0x0a, 0x15, 0x41, 0x3f, 0x9e, 0xd0, 0xd4, 0x54, 0xb9, 0x2a, 0xb9, 0x01, 0x11, 0x9e, 0x72, 0x51, 0xa4, 0xd4, 0x44, 0xba, 0x14, 0x21, 0xba, 0x63, 0x9f, 0xa5, 0x7e, 0x0d, 0x8c, 0xf6, 0xb3, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7980 = { .name = "ecdsa_secp256r1_sha512_7980", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7980_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7980_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7980_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 266 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7981 for ECDSA, tcId is 267 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7981_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_7981_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7981_sig[] = { 0x0b, 0x1d, 0x83, 0x8d, 0xd5, 0x4a, 0x46, 0x27, 0x45, 0xe2, 0xc8, 0xd5, 0xf3, 0x26, 0x37, 0xf2, 0x6f, 0xb1, 0x6d, 0xde, 0x20, 0xa3, 0x85, 0xe4, 0x5f, 0x8a, 0x20, 0xa8, 0xa1, 0xf8, 0x37, 0x0e, 0xae, 0x85, 0x5e, 0x0a, 0x10, 0xef, 0x08, 0x70, 0x75, 0xfd, 0xa0, 0xed, 0x84, 0xe2, 0xbc, 0x57, 0x86, 0xa6, 0x81, 0x17, 0x2e, 0xa9, 0x83, 0x4e, 0x53, 0x35, 0x13, 0x16, 0xdf, 0x33, 0x2b, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7981 = { .name = "ecdsa_secp256r1_sha512_7981", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7981_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7981_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7981_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 267 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7982 for ECDSA, tcId is 268 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7982_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_7982_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7982_sig[] = { 0xaf, 0x89, 0xe4, 0xf2, 0xb0, 0x3e, 0x5d, 0x1f, 0x03, 0x52, 0xe2, 0x58, 0xef, 0x71, 0x49, 0x30, 0x40, 0xc1, 0x7d, 0x70, 0xc3, 0x6c, 0xfd, 0x04, 0x41, 0x28, 0x30, 0x2d, 0xf2, 0xed, 0x5e, 0x4a, 0x42, 0x0f, 0x04, 0x14, 0x8c, 0x3e, 0x6f, 0x06, 0x56, 0x1b, 0xd4, 0x48, 0x36, 0x2d, 0x6c, 0x6f, 0xa3, 0xf9, 0xae, 0xeb, 0x7e, 0x42, 0x84, 0x3b, 0x46, 0x74, 0xe7, 0xdd, 0xfd, 0x0b, 0xa9, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7982 = { .name = "ecdsa_secp256r1_sha512_7982", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7982_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7982_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7982_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 268 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7983 for ECDSA, tcId is 269 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7983_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_7983_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7983_sig[] = { 0x6c, 0x15, 0x81, 0xf1, 0x48, 0x5c, 0xcc, 0x4e, 0x65, 0x76, 0x06, 0xfa, 0x1a, 0x38, 0xcf, 0x22, 0x7e, 0x38, 0x70, 0xdc, 0x9f, 0x41, 0xe2, 0x6b, 0x84, 0xe2, 0x84, 0x83, 0x63, 0x5e, 0x32, 0x1b, 0x1b, 0x3e, 0x3c, 0x22, 0xaf, 0x23, 0xe9, 0x19, 0xb3, 0x03, 0x30, 0xf8, 0x71, 0x0f, 0x6e, 0xf3, 0x76, 0x0c, 0x0e, 0x22, 0x37, 0xa9, 0xa9, 0xf5, 0xcf, 0x30, 0xa1, 0xd9, 0xf5, 0xbb, 0xd4, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7983 = { .name = "ecdsa_secp256r1_sha512_7983", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7983_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7983_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7983_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 269 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7984 for ECDSA, tcId is 270 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7984_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_7984_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7984_sig[] = { 0xdc, 0x83, 0xbf, 0x97, 0xca, 0x28, 0xdb, 0x0e, 0x04, 0x10, 0x4a, 0x16, 0xfe, 0x3d, 0xe6, 0x94, 0x31, 0x1a, 0x6c, 0xd9, 0xf2, 0x30, 0xa3, 0x00, 0x50, 0x4a, 0xe7, 0x1d, 0x8e, 0xc7, 0x55, 0xb1, 0x64, 0xa8, 0x3a, 0xf0, 0xab, 0x3e, 0x60, 0x37, 0x00, 0x3a, 0x1f, 0x42, 0x40, 0xdf, 0xfd, 0x8a, 0x34, 0x2a, 0xfd, 0xee, 0x50, 0x60, 0x4e, 0xd1, 0xaf, 0xa4, 0x16, 0xfd, 0x00, 0x9e, 0x46, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7984 = { .name = "ecdsa_secp256r1_sha512_7984", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7984_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7984_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7984_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 270 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7985 for ECDSA, tcId is 271 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7985_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_7985_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7985_sig[] = { 0x57, 0x5b, 0x70, 0xb4, 0x37, 0x56, 0x84, 0x29, 0x1b, 0x95, 0xd8, 0x1e, 0x3c, 0x82, 0x0e, 0xd9, 0xbd, 0xe9, 0xe5, 0xb7, 0x34, 0x30, 0x36, 0xe4, 0x95, 0x1f, 0x3c, 0x46, 0x89, 0x4a, 0x6d, 0x9d, 0xf1, 0x0d, 0x71, 0x6e, 0xfb, 0xfe, 0xba, 0x95, 0x37, 0x01, 0xb6, 0x03, 0xfc, 0x9e, 0xf6, 0xff, 0x6e, 0x47, 0xed, 0xef, 0x38, 0xc9, 0xee, 0xef, 0x2d, 0x55, 0xe6, 0x48, 0x6b, 0xc4, 0xd6, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7985 = { .name = "ecdsa_secp256r1_sha512_7985", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7985_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7985_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7985_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 271 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7986 for ECDSA, tcId is 272 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7986_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_7986_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7986_sig[] = { 0x8d, 0x4f, 0x11, 0x31, 0x89, 0xdf, 0xd3, 0xd3, 0x23, 0x9e, 0x33, 0x1f, 0x76, 0xd3, 0xfc, 0xa9, 0xce, 0xf8, 0x6f, 0xcd, 0x5d, 0xc9, 0xb4, 0xab, 0x2c, 0xa3, 0x8a, 0xeb, 0xa5, 0x6c, 0x17, 0x8b, 0x78, 0x38, 0x9c, 0x3c, 0xf1, 0x1d, 0xcf, 0xf6, 0xd6, 0xc7, 0xf5, 0xef, 0xd2, 0x77, 0xd4, 0x80, 0x06, 0x06, 0x91, 0x14, 0x4b, 0x56, 0x8a, 0x6f, 0x09, 0x0c, 0x89, 0x02, 0x55, 0x7b, 0xfc, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7986 = { .name = "ecdsa_secp256r1_sha512_7986", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7986_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7986_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7986_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 272 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7987 for ECDSA, tcId is 273 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7987_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_7987_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7987_sig[] = { 0x83, 0x4d, 0x10, 0xec, 0x2d, 0x2d, 0x50, 0xee, 0xeb, 0xfe, 0xcd, 0x63, 0x28, 0xf0, 0x3f, 0xaf, 0xbb, 0x48, 0x8f, 0xc0, 0x43, 0xc3, 0x62, 0xcb, 0xc6, 0x78, 0x80, 0xec, 0x0e, 0xbd, 0x04, 0xb3, 0x94, 0xc0, 0x26, 0xfe, 0xaf, 0x6e, 0x68, 0x75, 0x91, 0x46, 0xfe, 0x5b, 0x6f, 0xd5, 0x2e, 0xaa, 0x3c, 0x3c, 0x55, 0x52, 0xd8, 0x37, 0x19, 0xd2, 0xcb, 0x90, 0x06, 0x15, 0xe2, 0xa6, 0x34, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7987 = { .name = "ecdsa_secp256r1_sha512_7987", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7987_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7987_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7987_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 273 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7988 for ECDSA, tcId is 274 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7988_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_7988_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7988_sig[] = { 0x68, 0x94, 0xde, 0x49, 0x5e, 0x7b, 0xb5, 0x56, 0x68, 0x07, 0xd4, 0x75, 0xd9, 0x6a, 0x0d, 0x41, 0x4a, 0x94, 0xf4, 0xf0, 0x2c, 0x3a, 0xb7, 0xc2, 0xed, 0xc2, 0x91, 0x6d, 0xea, 0xfc, 0x1e, 0x1f, 0xa6, 0x03, 0x64, 0x2c, 0x20, 0xfa, 0xbc, 0x07, 0x18, 0x28, 0x67, 0xfc, 0xc6, 0x92, 0x3d, 0x35, 0xbe, 0x23, 0xad, 0x3f, 0x97, 0xa5, 0xf9, 0x3c, 0x6e, 0xc5, 0xb9, 0xcc, 0xe8, 0x23, 0x95, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7988 = { .name = "ecdsa_secp256r1_sha512_7988", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7988_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7988_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7988_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 274 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7989 for ECDSA, tcId is 275 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7989_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_7989_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7989_sig[] = { 0xe5, 0x00, 0xc0, 0x86, 0xfe, 0xdd, 0x59, 0xe0, 0x90, 0xce, 0x7b, 0xfb, 0x61, 0x57, 0x51, 0xed, 0x9a, 0xbe, 0x4c, 0x09, 0xb8, 0x39, 0xee, 0x8f, 0x05, 0x32, 0x02, 0x45, 0xb9, 0x79, 0x6f, 0x3e, 0x80, 0x7b, 0x1d, 0x06, 0x38, 0xc8, 0x6e, 0xf6, 0x11, 0x3f, 0xff, 0x0d, 0x63, 0x49, 0x78, 0x00, 0xe1, 0xb8, 0x48, 0xb5, 0xa3, 0x03, 0xa5, 0x4c, 0x74, 0x8e, 0x45, 0xca, 0x8f, 0x35, 0xd7, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7989 = { .name = "ecdsa_secp256r1_sha512_7989", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7989_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7989_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7989_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 275 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7990 for ECDSA, tcId is 276 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7990_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_7990_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7990_sig[] = { 0xb9, 0x22, 0xc1, 0xab, 0xe1, 0xa8, 0x30, 0x9c, 0x0a, 0xcf, 0x90, 0xe5, 0x86, 0xc6, 0xde, 0x8c, 0x33, 0xe3, 0x70, 0x57, 0x67, 0x33, 0x90, 0xa9, 0x7f, 0xf0, 0x98, 0xf7, 0x16, 0x80, 0xb3, 0x2b, 0xf8, 0x6d, 0x92, 0xb0, 0x51, 0xb7, 0x92, 0x3d, 0x82, 0x55, 0x5c, 0x20, 0x5e, 0x21, 0xb5, 0x4e, 0xab, 0x86, 0x97, 0x66, 0xc7, 0x16, 0x20, 0x96, 0x48, 0xc3, 0xe6, 0xcc, 0x26, 0x29, 0x05, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7990 = { .name = "ecdsa_secp256r1_sha512_7990", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7990_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7990_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7990_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 276 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7991 for ECDSA, tcId is 277 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7991_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_7991_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7991_sig[] = { 0x82, 0x3c, 0x37, 0xe4, 0x6c, 0x74, 0xec, 0x84, 0x97, 0xd8, 0x92, 0x45, 0xfd, 0xe3, 0xbf, 0x53, 0xdd, 0xb4, 0x62, 0xc0, 0x0d, 0x84, 0x0e, 0x98, 0x3d, 0xcb, 0x1b, 0x72, 0xbb, 0xf8, 0xbf, 0x27, 0xc4, 0x55, 0x2f, 0x24, 0x25, 0xd1, 0x4f, 0x0f, 0x0f, 0xa9, 0x88, 0x77, 0x84, 0x03, 0xd6, 0x0a, 0x58, 0x96, 0x2e, 0x7c, 0x54, 0x87, 0x15, 0xaf, 0x83, 0xb2, 0xed, 0xab, 0xbb, 0x24, 0xa4, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7991 = { .name = "ecdsa_secp256r1_sha512_7991", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7991_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7991_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7991_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 277 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7992 for ECDSA, tcId is 278 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7992_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_7992_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7992_sig[] = { 0x57, 0x7a, 0x08, 0xa9, 0x5d, 0xb6, 0xdc, 0xda, 0x99, 0x85, 0x10, 0x99, 0x42, 0xd3, 0x78, 0x66, 0x30, 0xf6, 0x40, 0x19, 0x0f, 0x92, 0x0b, 0x95, 0xbd, 0x4d, 0x5d, 0x84, 0xe0, 0xf1, 0x63, 0xef, 0xd7, 0x62, 0x28, 0x6e, 0x92, 0x92, 0x59, 0x73, 0xfd, 0x38, 0xb6, 0x7e, 0xf9, 0x44, 0xa9, 0x9c, 0x0e, 0xc5, 0xb4, 0x99, 0xb7, 0x17, 0x5c, 0xbb, 0x43, 0x69, 0xe0, 0x53, 0xc1, 0xfc, 0xbb, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7992 = { .name = "ecdsa_secp256r1_sha512_7992", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7992_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7992_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7992_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 278 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7993 for ECDSA, tcId is 279 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7993_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_7993_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7993_sig[] = { 0x7b, 0xa4, 0x58, 0xcf, 0xe9, 0x52, 0x32, 0x69, 0x22, 0xc7, 0xaa, 0x28, 0x54, 0xbd, 0xc6, 0x73, 0xce, 0x3d, 0xaa, 0xf6, 0x5d, 0x46, 0x4d, 0xfb, 0x9f, 0x70, 0x07, 0x01, 0x50, 0x30, 0x56, 0xb1, 0x0d, 0xf8, 0x82, 0x1c, 0x92, 0xd2, 0x05, 0x46, 0xfa, 0x74, 0x1f, 0xb4, 0x26, 0xbf, 0x56, 0x72, 0x8a, 0x53, 0x18, 0x26, 0x91, 0x96, 0x42, 0x25, 0xc9, 0xb3, 0x80, 0xb5, 0x6b, 0x22, 0xee, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7993 = { .name = "ecdsa_secp256r1_sha512_7993", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7993_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7993_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7993_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 279 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7994 for ECDSA, tcId is 280 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7994_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_7994_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7994_sig[] = { 0x5c, 0xd6, 0x0c, 0x3b, 0x02, 0x1b, 0x4b, 0xe1, 0x16, 0xf0, 0x6f, 0x1d, 0x44, 0x7f, 0x65, 0xe4, 0x58, 0x32, 0x9a, 0x8b, 0xba, 0xe1, 0xd9, 0xb5, 0x97, 0x7d, 0x18, 0xcf, 0x56, 0x18, 0x48, 0x61, 0x4c, 0x63, 0x5c, 0xd7, 0xaa, 0x9a, 0xeb, 0xb5, 0x71, 0x6d, 0x5a, 0xe0, 0x9e, 0x57, 0xf8, 0xc4, 0x81, 0xa7, 0x41, 0xa0, 0x29, 0xb4, 0x0f, 0x71, 0xec, 0x47, 0x34, 0x4e, 0xf8, 0x83, 0xe8, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7994 = { .name = "ecdsa_secp256r1_sha512_7994", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7994_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7994_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7994_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 280 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7995 for ECDSA, tcId is 281 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7995_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_7995_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7995_sig[] = { 0x4b, 0x50, 0xe1, 0xe8, 0xcf, 0x83, 0x0e, 0x04, 0xc1, 0x7e, 0x74, 0x72, 0xca, 0xf6, 0x0d, 0xa8, 0x15, 0x0f, 0xfa, 0x56, 0x8e, 0x2c, 0x64, 0x49, 0x8c, 0xc9, 0x72, 0xa3, 0x79, 0xe5, 0x42, 0xe5, 0x2e, 0x3a, 0xda, 0xa5, 0xaf, 0xab, 0x89, 0xcc, 0xa9, 0x16, 0x93, 0x60, 0x95, 0x55, 0xf4, 0x05, 0x43, 0x57, 0x88, 0x52, 0xcd, 0xe2, 0x9c, 0x21, 0xcb, 0x03, 0x7c, 0x0c, 0x0b, 0x78, 0x47, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7995 = { .name = "ecdsa_secp256r1_sha512_7995", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7995_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7995_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7995_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 281 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7996 for ECDSA, tcId is 282 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7996_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_7996_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7996_sig[] = { 0x5a, 0xea, 0x93, 0x0c, 0x7d, 0x8f, 0xff, 0xcd, 0x5c, 0x6d, 0xf2, 0xc9, 0x43, 0x0e, 0xf7, 0x6f, 0x8b, 0x5e, 0xd5, 0x8a, 0x8b, 0x9c, 0x95, 0x84, 0x72, 0x88, 0xab, 0xf8, 0xf0, 0x9a, 0x1a, 0xc2, 0x7d, 0xdf, 0xef, 0x76, 0x88, 0xa6, 0x05, 0x3c, 0xe4, 0xee, 0xee, 0xef, 0xd6, 0xf1, 0xa9, 0xd7, 0x13, 0x81, 0xb7, 0x54, 0x89, 0x25, 0xf6, 0x68, 0x2a, 0xa0, 0xa9, 0xd0, 0x5c, 0xf5, 0xa3, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7996 = { .name = "ecdsa_secp256r1_sha512_7996", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7996_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7996_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7996_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 282 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7997 for ECDSA, tcId is 283 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7997_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_7997_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7997_sig[] = { 0x98, 0xb0, 0x92, 0xc2, 0xd1, 0x4b, 0x5b, 0x14, 0xa2, 0x3e, 0x93, 0x68, 0xe0, 0xce, 0x1b, 0xe7, 0x44, 0xdf, 0xae, 0x9f, 0x9a, 0x5c, 0xda, 0xba, 0x51, 0xe7, 0x87, 0x20, 0x99, 0xdf, 0x96, 0xf2, 0x90, 0xd3, 0xe4, 0xf8, 0x7b, 0xd7, 0xbc, 0x94, 0x58, 0x9f, 0x81, 0x50, 0xb6, 0xb0, 0x10, 0x45, 0xcd, 0x87, 0x59, 0xa0, 0x0a, 0xf7, 0x8b, 0x24, 0xd7, 0xde, 0x77, 0x18, 0x87, 0x61, 0x0d, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7997 = { .name = "ecdsa_secp256r1_sha512_7997", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7997_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7997_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7997_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 283 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7998 for ECDSA, tcId is 284 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7998_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_7998_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7998_sig[] = { 0x9e, 0x95, 0xf2, 0x85, 0x6a, 0x9f, 0xff, 0x9a, 0x17, 0x2b, 0x07, 0x81, 0x7c, 0x8c, 0x60, 0xfe, 0x18, 0x5c, 0xd3, 0xce, 0x95, 0x82, 0x67, 0x8f, 0x8c, 0xc4, 0xb0, 0x2b, 0xc4, 0x44, 0x62, 0x1a, 0xc5, 0x4c, 0xa5, 0x1d, 0x81, 0x17, 0xd9, 0x04, 0xf0, 0xd3, 0x77, 0x39, 0x11, 0xcb, 0x27, 0x92, 0x34, 0x8f, 0xae, 0x21, 0xc2, 0xda, 0x7d, 0xad, 0x25, 0xf9, 0x90, 0xd1, 0x22, 0x37, 0x6e, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7998 = { .name = "ecdsa_secp256r1_sha512_7998", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7998_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7998_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7998_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 284 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 7999 for ECDSA, tcId is 285 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_7999_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_7999_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_7999_sig[] = { 0xe7, 0x7d, 0xf8, 0xf9, 0x78, 0x26, 0x96, 0x34, 0x4c, 0x33, 0xde, 0x29, 0xeb, 0xdc, 0x9f, 0x8d, 0x3f, 0xcf, 0x46, 0x3d, 0x95, 0x0c, 0xdb, 0xe2, 0x56, 0xfd, 0x4f, 0xc2, 0xfd, 0x44, 0x87, 0x7e, 0x87, 0x02, 0x88, 0x50, 0xc9, 0x62, 0xcf, 0x2f, 0xb4, 0x50, 0xff, 0xe6, 0xb9, 0x83, 0x98, 0x1e, 0x49, 0x9d, 0xc4, 0x98, 0xfb, 0xd6, 0x54, 0xfa, 0x45, 0x4c, 0x9e, 0x07, 0xc8, 0xcb, 0x5c, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_7999 = { .name = "ecdsa_secp256r1_sha512_7999", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_7999_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_7999_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_7999_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 285 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8000 for ECDSA, tcId is 286 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8000_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8000_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8000_sig[] = { 0xbd, 0x2d, 0xd6, 0xf5, 0x02, 0x6d, 0x2b, 0x5a, 0xd7, 0xea, 0xd7, 0x4b, 0xdf, 0x52, 0xb8, 0xcb, 0xca, 0xbc, 0x08, 0xfa, 0xce, 0xe0, 0xa1, 0xc8, 0x58, 0x46, 0x58, 0xa8, 0x5e, 0xd0, 0xc5, 0xdc, 0x3e, 0x85, 0x43, 0xe8, 0x19, 0xbd, 0xae, 0x47, 0xd8, 0x72, 0xe2, 0x9a, 0x85, 0xba, 0x38, 0xad, 0xdf, 0x3e, 0xae, 0xaa, 0xd8, 0x78, 0x6d, 0x79, 0xc3, 0xfb, 0x02, 0x7f, 0x6f, 0x1f, 0xf4, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8000 = { .name = "ecdsa_secp256r1_sha512_8000", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8000_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8000_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8000_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 286 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8001 for ECDSA, tcId is 287 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8001_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8001_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8001_sig[] = { 0xbd, 0x5c, 0x02, 0x94, 0xac, 0xc2, 0x8c, 0x15, 0xc5, 0xd1, 0xeb, 0xc7, 0x27, 0x4c, 0x9c, 0xa2, 0x1a, 0x08, 0x1c, 0x8a, 0x67, 0xda, 0x43, 0x0a, 0x34, 0xa7, 0xff, 0xf1, 0xa5, 0x64, 0xfa, 0xbb, 0x7e, 0xc1, 0x03, 0xa2, 0x38, 0x5b, 0x4f, 0xf3, 0x8b, 0x47, 0xd3, 0x06, 0x43, 0x4e, 0x90, 0x91, 0xde, 0x24, 0xdc, 0x9f, 0x1a, 0x25, 0x96, 0x7e, 0xe0, 0x6f, 0x8a, 0x0a, 0x53, 0xac, 0x01, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8001 = { .name = "ecdsa_secp256r1_sha512_8001", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8001_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8001_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8001_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 287 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8002 for ECDSA, tcId is 288 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8002_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8002_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8002_sig[] = { 0x3c, 0x7d, 0xbf, 0xb4, 0x3d, 0xd8, 0x03, 0x79, 0xee, 0x2c, 0x23, 0xad, 0x54, 0x72, 0x87, 0x3a, 0x22, 0xc8, 0xa0, 0x17, 0x9a, 0xc8, 0xf3, 0x81, 0xad, 0x9e, 0x0f, 0x19, 0x32, 0x31, 0xdc, 0x1f, 0x7c, 0xf8, 0xe0, 0x75, 0x30, 0xad, 0xe5, 0x03, 0xb3, 0xd4, 0x3a, 0x84, 0xb7, 0x5a, 0x2a, 0x76, 0xfc, 0x40, 0x76, 0x3d, 0xae, 0xd4, 0xe9, 0x73, 0x4e, 0x74, 0x5c, 0x58, 0xc9, 0xae, 0x72, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8002 = { .name = "ecdsa_secp256r1_sha512_8002", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8002_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8002_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8002_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 288 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8003 for ECDSA, tcId is 289 in file ecdsa_secp256r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8003_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8003_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8003_sig[] = { 0xb3, 0x8c, 0xa4, 0xda, 0xc6, 0xd9, 0x49, 0xbe, 0x5e, 0x5f, 0x96, 0x98, 0x60, 0x26, 0x9f, 0x0e, 0xed, 0xff, 0x2e, 0xb9, 0x2f, 0x45, 0xbf, 0xc0, 0x24, 0x70, 0x30, 0x0c, 0xc9, 0x6d, 0xd5, 0x26, 0x1c, 0x7b, 0x22, 0x99, 0x2b, 0xb1, 0x37, 0x49, 0xcc, 0x0c, 0x5b, 0xc2, 0x53, 0x30, 0xa1, 0x74, 0x46, 0xe4, 0x0d, 0xb7, 0x34, 0x20, 0x3f, 0x90, 0x35, 0x17, 0x27, 0x25, 0xfc, 0x70, 0xf8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8003 = { .name = "ecdsa_secp256r1_sha512_8003", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8003_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8003_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8003_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 289 in file ecdsa_secp256r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8004 for ECDSA, tcId is 1 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8004_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8004_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x5f, 0x85, 0xa6, 0x3a, 0x5b, 0xe9, 0x77, 0xad, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf0, 0x7c, 0xad, 0xf7, 0x51, 0x3a, 0xe8, 0xcc, 0xa8, 0x6f, 0x35, 0xb7, 0x69, 0x2a, 0xaf, 0xd6, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8004 = { .name = "ecdsa_secp256r1_sha512_8004", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8004_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8004_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8004_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8005 for ECDSA, tcId is 2 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8005_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8005_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8005 = { .name = "ecdsa_secp256r1_sha512_8005", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8005_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8005_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8005_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8006 for ECDSA, tcId is 3 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8006_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8006_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8006 = { .name = "ecdsa_secp256r1_sha512_8006", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8006_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8006_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8006_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8007 for ECDSA, tcId is 4 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8007_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8007_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8007 = { .name = "ecdsa_secp256r1_sha512_8007", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8007_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8007_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8007_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8008 for ECDSA, tcId is 5 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8008_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8008_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8008 = { .name = "ecdsa_secp256r1_sha512_8008", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8008_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8008_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8008_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8009 for ECDSA, tcId is 68 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8009_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8009_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8009 = { .name = "ecdsa_secp256r1_sha512_8009", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8009_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8009_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8009_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8010 for ECDSA, tcId is 69 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8010_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8010_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8010 = { .name = "ecdsa_secp256r1_sha512_8010", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8010_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8010_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8010_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8011 for ECDSA, tcId is 70 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8011_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8011_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8011 = { .name = "ecdsa_secp256r1_sha512_8011", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8011_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8011_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8011_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8012 for ECDSA, tcId is 71 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8012_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8012_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8012 = { .name = "ecdsa_secp256r1_sha512_8012", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8012_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8012_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8012_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8013 for ECDSA, tcId is 93 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8013_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8013_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8013 = { .name = "ecdsa_secp256r1_sha512_8013", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8013_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8013_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8013_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8014 for ECDSA, tcId is 94 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8014_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8014_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8014 = { .name = "ecdsa_secp256r1_sha512_8014", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8014_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8014_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8014_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8015 for ECDSA, tcId is 95 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8015_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8015_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8015 = { .name = "ecdsa_secp256r1_sha512_8015", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8015_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8015_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8015_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8016 for ECDSA, tcId is 96 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8016_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8016_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8016 = { .name = "ecdsa_secp256r1_sha512_8016", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8016_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8016_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8016_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8017 for ECDSA, tcId is 98 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8017_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8017_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x05, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8017 = { .name = "ecdsa_secp256r1_sha512_8017", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8017_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8017_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8017_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8018 for ECDSA, tcId is 99 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8018_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8018_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8018 = { .name = "ecdsa_secp256r1_sha512_8018", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8018_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8018_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8018_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8019 for ECDSA, tcId is 114 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8019_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8019_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8019 = { .name = "ecdsa_secp256r1_sha512_8019", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8019_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8019_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8019_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8020 for ECDSA, tcId is 115 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8020_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8020_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8020 = { .name = "ecdsa_secp256r1_sha512_8020", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8020_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8020_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8020_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8021 for ECDSA, tcId is 118 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8021_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8021_sig[] = { 0x26, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8021 = { .name = "ecdsa_secp256r1_sha512_8021", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8021_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8021_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8021_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8022 for ECDSA, tcId is 119 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8022_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8022_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x02, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8022 = { .name = "ecdsa_secp256r1_sha512_8022", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8022_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8022_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8022_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8023 for ECDSA, tcId is 120 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8023_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8023_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0x40, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8023 = { .name = "ecdsa_secp256r1_sha512_8023", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8023_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8023_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8023_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8024 for ECDSA, tcId is 121 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8024_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8024_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8024 = { .name = "ecdsa_secp256r1_sha512_8024", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8024_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8024_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8024_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8025 for ECDSA, tcId is 122 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8025_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8025_sig[] = { 0x00, 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8025 = { .name = "ecdsa_secp256r1_sha512_8025", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8025_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8025_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8026 for ECDSA, tcId is 123 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8026_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8026_sig[] = { 0x00, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8026 = { .name = "ecdsa_secp256r1_sha512_8026", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8026_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8026_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8026_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8027 for ECDSA, tcId is 124 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8027_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8027_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8027 = { .name = "ecdsa_secp256r1_sha512_8027", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8027_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8027_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8027_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8028 for ECDSA, tcId is 125 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8028_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8028_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8028 = { .name = "ecdsa_secp256r1_sha512_8028", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8028_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8028_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8028_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8029 for ECDSA, tcId is 126 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8029_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8029_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8029 = { .name = "ecdsa_secp256r1_sha512_8029", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8029_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8029_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8029_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp256r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8030 for ECDSA, tcId is 129 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8030_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8030_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8030 = { .name = "ecdsa_secp256r1_sha512_8030", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8030_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8030_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8030_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8031 for ECDSA, tcId is 130 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8031_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8031_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8031 = { .name = "ecdsa_secp256r1_sha512_8031", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8031_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8031_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8031_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8032 for ECDSA, tcId is 131 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8032_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8032_sig[] = { 0x01, 0x24, 0x78, 0xf1, 0xcf, 0x49, 0xf6, 0xd8, 0x58, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0x61, 0xac, 0x95, 0xe2, 0x06, 0xd3, 0x2e, 0xe6, 0x30, 0x20, 0xbe, 0xee, 0x95, 0x5c, 0xa7, 0x11, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8032 = { .name = "ecdsa_secp256r1_sha512_8032", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8032_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8032_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8032_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8033 for ECDSA, tcId is 132 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8033_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8033_sig[] = { 0x24, 0x78, 0xf1, 0xd1, 0x49, 0xf6, 0xd8, 0x56, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xe7, 0xde, 0xa0, 0x86, 0xb8, 0xa3, 0xf1, 0xdc, 0x48, 0xad, 0x29, 0x68, 0x9c, 0x96, 0x5c, 0x6f, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8033 = { .name = "ecdsa_secp256r1_sha512_8033", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8033_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8033_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8033_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8034 for ECDSA, tcId is 133 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8034_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8034_sig[] = { 0xdb, 0x87, 0x0e, 0x2f, 0xb6, 0x09, 0x27, 0xa8, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x5b, 0x3a, 0x64, 0xcb, 0xa0, 0x44, 0x6f, 0x9e, 0xc3, 0x99, 0x0b, 0xd4, 0x67, 0x06, 0x7e, 0x40, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8034 = { .name = "ecdsa_secp256r1_sha512_8034", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8034_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8034_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8034_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8035 for ECDSA, tcId is 134 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8035_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8035_sig[] = { 0xdb, 0x87, 0x0e, 0x2e, 0xb6, 0x09, 0x27, 0xa9, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x18, 0x21, 0x5f, 0x79, 0x47, 0x5c, 0x0e, 0x23, 0xb7, 0x52, 0xd6, 0x97, 0x63, 0x69, 0xa3, 0x91, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8035 = { .name = "ecdsa_secp256r1_sha512_8035", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8035_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8035_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8035_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8036 for ECDSA, tcId is 135 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8036_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8036_sig[] = { 0xfe, 0xdb, 0x87, 0x0e, 0x30, 0xb6, 0x09, 0x27, 0xa7, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x9e, 0x53, 0x6a, 0x1d, 0xf9, 0x2c, 0xd1, 0x19, 0xcf, 0xdf, 0x41, 0x11, 0x6a, 0xa3, 0x58, 0xef, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8036 = { .name = "ecdsa_secp256r1_sha512_8036", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8036_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8036_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8036_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8037 for ECDSA, tcId is 136 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8037_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8037_sig[] = { 0x01, 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8037 = { .name = "ecdsa_secp256r1_sha512_8037", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8037_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8037_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8037_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8038 for ECDSA, tcId is 137 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8038_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8038_sig[] = { 0xdb, 0x87, 0x0e, 0x2f, 0xb6, 0x09, 0x27, 0xa8, 0x53, 0x6f, 0xf5, 0x85, 0x0e, 0x88, 0xdd, 0xd9, 0x5b, 0x3a, 0x64, 0xcb, 0xa0, 0x44, 0x6f, 0x9e, 0xc3, 0x99, 0x0b, 0xd4, 0x67, 0x06, 0x7e, 0x40, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8038 = { .name = "ecdsa_secp256r1_sha512_8038", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8038_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8038_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8038_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8039 for ECDSA, tcId is 138 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8039_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8039_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x01, 0xa0, 0x7a, 0x59, 0xc3, 0xa4, 0x16, 0x88, 0x54, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0e, 0xfd, 0x1f, 0xfe, 0x0a, 0x13, 0x46, 0x70, 0x61, 0x78, 0x3d, 0xde, 0x1c, 0xce, 0x16, 0x74, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8039 = { .name = "ecdsa_secp256r1_sha512_8039", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8039_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8039_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8039_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8040 for ECDSA, tcId is 139 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8040_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8040_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xa0, 0x7a, 0x59, 0xc5, 0xa4, 0x16, 0x88, 0x52, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x83, 0x52, 0x08, 0xae, 0xc5, 0x17, 0x33, 0x57, 0x90, 0xca, 0x48, 0x96, 0xd5, 0x50, 0x29, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8040 = { .name = "ecdsa_secp256r1_sha512_8040", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8040_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8040_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8040_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8041 for ECDSA, tcId is 140 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8041_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8041_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x5f, 0x85, 0xa6, 0x3b, 0x5b, 0xe9, 0x77, 0xac, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf0, 0xbf, 0xc6, 0xfc, 0xa3, 0x93, 0xd1, 0x2e, 0x23, 0x7b, 0x7b, 0xec, 0xa6, 0x2e, 0x4c, 0xb1, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8041 = { .name = "ecdsa_secp256r1_sha512_8041", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8041_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8041_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8041_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8042 for ECDSA, tcId is 141 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8042_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8042_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0xfe, 0x5f, 0x85, 0xa6, 0x3c, 0x5b, 0xe9, 0x77, 0xab, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf1, 0x02, 0xe0, 0x01, 0xf5, 0xec, 0xb9, 0x8f, 0x9e, 0x87, 0xc2, 0x21, 0xe3, 0x31, 0xe9, 0x8b, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8042 = { .name = "ecdsa_secp256r1_sha512_8042", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8042_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8042_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8042_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8043 for ECDSA, tcId is 142 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8043_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8043_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x01, 0xa0, 0x7a, 0x59, 0xc4, 0xa4, 0x16, 0x88, 0x53, 0x8e, 0xb3, 0x15, 0xe9, 0x4e, 0xff, 0xca, 0x0f, 0x40, 0x39, 0x03, 0x5c, 0x6c, 0x2e, 0xd1, 0xdc, 0x84, 0x84, 0x13, 0x59, 0xd1, 0xb3, 0x4e, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8043 = { .name = "ecdsa_secp256r1_sha512_8043", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8043_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8043_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8043_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8044 for ECDSA, tcId is 143 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8044_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8044_sig[] = { 0x24, 0x78, 0xf1, 0xd0, 0x49, 0xf6, 0xd8, 0x57, 0xac, 0x90, 0x0a, 0x7a, 0xf1, 0x77, 0x22, 0x26, 0xa4, 0xc5, 0x9b, 0x34, 0x5f, 0xbb, 0x90, 0x61, 0x3c, 0x66, 0xf4, 0x2b, 0x98, 0xf9, 0x81, 0xc0, 0x5f, 0x85, 0xa6, 0x3b, 0x5b, 0xe9, 0x77, 0xac, 0x71, 0x4c, 0xea, 0x16, 0xb1, 0x00, 0x35, 0xf0, 0xbf, 0xc6, 0xfc, 0xa3, 0x93, 0xd1, 0x2e, 0x23, 0x7b, 0x7b, 0xec, 0xa6, 0x2e, 0x4c, 0xb1, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8044 = { .name = "ecdsa_secp256r1_sha512_8044", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8044_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8044_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8044_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8045 for ECDSA, tcId is 144 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8045_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8045_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8045 = { .name = "ecdsa_secp256r1_sha512_8045", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8045_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8045_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8045_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8046 for ECDSA, tcId is 145 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8046_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8046_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8046 = { .name = "ecdsa_secp256r1_sha512_8046", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8046_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8046_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8046_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8047 for ECDSA, tcId is 146 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8047_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8047_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8047 = { .name = "ecdsa_secp256r1_sha512_8047", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8047_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8047_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8047_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8048 for ECDSA, tcId is 147 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8048_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8048_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8048 = { .name = "ecdsa_secp256r1_sha512_8048", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8048_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8048_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8048_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8049 for ECDSA, tcId is 148 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8049_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8049_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8049 = { .name = "ecdsa_secp256r1_sha512_8049", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8049_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8049_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8049_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8050 for ECDSA, tcId is 149 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8050_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8050_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8050 = { .name = "ecdsa_secp256r1_sha512_8050", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8050_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8050_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8050_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8051 for ECDSA, tcId is 150 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8051_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8051_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8051 = { .name = "ecdsa_secp256r1_sha512_8051", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8051_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8051_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8051_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8052 for ECDSA, tcId is 151 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8052_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8052_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8052 = { .name = "ecdsa_secp256r1_sha512_8052", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8052_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8052_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8052_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8053 for ECDSA, tcId is 154 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8053_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8053_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8053 = { .name = "ecdsa_secp256r1_sha512_8053", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8053_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8053_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8053_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8054 for ECDSA, tcId is 155 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8054_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8054_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8054 = { .name = "ecdsa_secp256r1_sha512_8054", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8054_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8054_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8054_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8055 for ECDSA, tcId is 156 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8055_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8055_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8055 = { .name = "ecdsa_secp256r1_sha512_8055", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8055_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8055_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8055_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8056 for ECDSA, tcId is 157 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8056_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8056_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8056 = { .name = "ecdsa_secp256r1_sha512_8056", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8056_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8056_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8056_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8057 for ECDSA, tcId is 158 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8057_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8057_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8057 = { .name = "ecdsa_secp256r1_sha512_8057", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8057_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8057_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8057_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8058 for ECDSA, tcId is 159 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8058_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8058_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8058 = { .name = "ecdsa_secp256r1_sha512_8058", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8058_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8058_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8059 for ECDSA, tcId is 160 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8059_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8059_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8059 = { .name = "ecdsa_secp256r1_sha512_8059", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8059_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8059_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8060 for ECDSA, tcId is 161 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8060_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8060_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8060 = { .name = "ecdsa_secp256r1_sha512_8060", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8060_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8060_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8061 for ECDSA, tcId is 164 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8061_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8061_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8061 = { .name = "ecdsa_secp256r1_sha512_8061", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8061_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8061_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8062 for ECDSA, tcId is 165 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8062_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8062_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8062 = { .name = "ecdsa_secp256r1_sha512_8062", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8062_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8062_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8063 for ECDSA, tcId is 166 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8063_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8063_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8063 = { .name = "ecdsa_secp256r1_sha512_8063", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8063_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8063_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8064 for ECDSA, tcId is 167 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8064_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8064_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8064 = { .name = "ecdsa_secp256r1_sha512_8064", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8064_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8064_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8065 for ECDSA, tcId is 168 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8065_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8065_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8065 = { .name = "ecdsa_secp256r1_sha512_8065", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8065_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8065_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8066 for ECDSA, tcId is 169 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8066_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8066_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8066 = { .name = "ecdsa_secp256r1_sha512_8066", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8066_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8066_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8067 for ECDSA, tcId is 170 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8067_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8067_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8067 = { .name = "ecdsa_secp256r1_sha512_8067", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8067_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8067_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8068 for ECDSA, tcId is 171 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8068_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8068_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8068 = { .name = "ecdsa_secp256r1_sha512_8068", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8068_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8068_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8069 for ECDSA, tcId is 174 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8069_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8069_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8069 = { .name = "ecdsa_secp256r1_sha512_8069", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8069_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8069_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8070 for ECDSA, tcId is 175 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8070_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8070_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8070 = { .name = "ecdsa_secp256r1_sha512_8070", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8070_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8070_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8071 for ECDSA, tcId is 176 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8071_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8071_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8071 = { .name = "ecdsa_secp256r1_sha512_8071", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8071_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8071_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8072 for ECDSA, tcId is 177 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8072_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8072_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8072 = { .name = "ecdsa_secp256r1_sha512_8072", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8072_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8072_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8073 for ECDSA, tcId is 178 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8073_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8073_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8073 = { .name = "ecdsa_secp256r1_sha512_8073", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8073_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8073_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8074 for ECDSA, tcId is 179 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8074_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8074_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8074 = { .name = "ecdsa_secp256r1_sha512_8074", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8074_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8074_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8075 for ECDSA, tcId is 180 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8075_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8075_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8075 = { .name = "ecdsa_secp256r1_sha512_8075", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8075_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8075_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8076 for ECDSA, tcId is 181 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8076_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8076_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8076 = { .name = "ecdsa_secp256r1_sha512_8076", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8076_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8076_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8077 for ECDSA, tcId is 184 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8077_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8077_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8077 = { .name = "ecdsa_secp256r1_sha512_8077", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8077_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8077_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8078 for ECDSA, tcId is 185 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8078_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8078_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8078 = { .name = "ecdsa_secp256r1_sha512_8078", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8078_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8078_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8079 for ECDSA, tcId is 186 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8079_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8079_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8079 = { .name = "ecdsa_secp256r1_sha512_8079", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8079_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8079_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8079_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8080 for ECDSA, tcId is 187 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8080_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8080_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8080 = { .name = "ecdsa_secp256r1_sha512_8080", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8080_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8080_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8081 for ECDSA, tcId is 188 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8081_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8081_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8081 = { .name = "ecdsa_secp256r1_sha512_8081", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8081_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8081_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8082 for ECDSA, tcId is 189 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8082_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8082_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8082 = { .name = "ecdsa_secp256r1_sha512_8082", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8082_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8082_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8083 for ECDSA, tcId is 190 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8083_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8083_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8083 = { .name = "ecdsa_secp256r1_sha512_8083", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8083_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8083_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8084 for ECDSA, tcId is 191 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8084_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8084_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8084 = { .name = "ecdsa_secp256r1_sha512_8084", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8084_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8084_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8085 for ECDSA, tcId is 194 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8085_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8085_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8085 = { .name = "ecdsa_secp256r1_sha512_8085", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8085_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8085_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8086 for ECDSA, tcId is 195 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8086_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8086_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8086 = { .name = "ecdsa_secp256r1_sha512_8086", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8086_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8086_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8087 for ECDSA, tcId is 196 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8087_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8087_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8087 = { .name = "ecdsa_secp256r1_sha512_8087", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8087_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8087_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8088 for ECDSA, tcId is 197 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8088_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8088_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8088 = { .name = "ecdsa_secp256r1_sha512_8088", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8088_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8088_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8089 for ECDSA, tcId is 198 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8089_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8089_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8089 = { .name = "ecdsa_secp256r1_sha512_8089", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8089_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8089_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8090 for ECDSA, tcId is 199 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8090_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8090_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8090 = { .name = "ecdsa_secp256r1_sha512_8090", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8090_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8090_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8091 for ECDSA, tcId is 200 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8091_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8091_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8091 = { .name = "ecdsa_secp256r1_sha512_8091", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8091_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8091_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8092 for ECDSA, tcId is 201 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8092_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8092_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8092 = { .name = "ecdsa_secp256r1_sha512_8092", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8092_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8092_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8093 for ECDSA, tcId is 204 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8093_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8093_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8093 = { .name = "ecdsa_secp256r1_sha512_8093", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8093_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8093_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8094 for ECDSA, tcId is 205 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8094_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8094_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8094 = { .name = "ecdsa_secp256r1_sha512_8094", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8094_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8094_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8095 for ECDSA, tcId is 206 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8095_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8095_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8095 = { .name = "ecdsa_secp256r1_sha512_8095", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8095_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8095_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8096 for ECDSA, tcId is 207 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8096_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8096_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8096 = { .name = "ecdsa_secp256r1_sha512_8096", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8096_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8096_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8097 for ECDSA, tcId is 208 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8097_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8097_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8097 = { .name = "ecdsa_secp256r1_sha512_8097", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8097_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8097_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8098 for ECDSA, tcId is 209 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8098_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8098_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8098 = { .name = "ecdsa_secp256r1_sha512_8098", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8098_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8098_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8099 for ECDSA, tcId is 210 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8099_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8099_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8099 = { .name = "ecdsa_secp256r1_sha512_8099", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8099_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8099_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8100 for ECDSA, tcId is 211 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8100_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8100_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8100 = { .name = "ecdsa_secp256r1_sha512_8100", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8100_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8100_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8100_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8101 for ECDSA, tcId is 214 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8101_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8101_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8101 = { .name = "ecdsa_secp256r1_sha512_8101", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8101_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8101_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8101_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8102 for ECDSA, tcId is 215 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8102_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8102_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8102 = { .name = "ecdsa_secp256r1_sha512_8102", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8102_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8102_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8102_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8103 for ECDSA, tcId is 216 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8103_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8103_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8103 = { .name = "ecdsa_secp256r1_sha512_8103", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8103_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8103_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8103_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8104 for ECDSA, tcId is 217 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8104_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8104_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8104 = { .name = "ecdsa_secp256r1_sha512_8104", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8104_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8104_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8104_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8105 for ECDSA, tcId is 218 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8105_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8105_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8105 = { .name = "ecdsa_secp256r1_sha512_8105", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8105_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8105_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8105_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8106 for ECDSA, tcId is 219 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8106_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8106_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8106 = { .name = "ecdsa_secp256r1_sha512_8106", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8106_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8106_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8106_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8107 for ECDSA, tcId is 220 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8107_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8107_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8107 = { .name = "ecdsa_secp256r1_sha512_8107", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8107_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8107_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8107_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8108 for ECDSA, tcId is 221 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8108_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8108_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8108 = { .name = "ecdsa_secp256r1_sha512_8108", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8108_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8108_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8108_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8109 for ECDSA, tcId is 230 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8109_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8109_msg[] = { 0x39, 0x32, 0x32, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8109_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x3c, 0x62, 0x3e, 0x7f, 0x75, 0x98, 0x37, 0x68, 0x25, 0xfa, 0x8b, 0xc0, 0x9e, 0x72, 0x7c, 0x75, 0x79, 0x4c, 0xbb, 0x4e, 0xe8, 0x71, 0x6a, 0xe1, 0x5c, 0x31, 0xcd, 0x1c, 0xbe, 0x9c, 0xa3, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8109 = { .name = "ecdsa_secp256r1_sha512_8109", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8109_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8109_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha512_8109_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8110 for ECDSA, tcId is 231 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8110_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8110_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8110_sig[] = { 0x3a, 0x4f, 0x61, 0xf7, 0xf8, 0xc4, 0x54, 0x6e, 0x35, 0x80, 0xf7, 0x84, 0x84, 0x11, 0x78, 0x6f, 0xee, 0x12, 0x29, 0xa0, 0x7a, 0x6e, 0xcf, 0x5f, 0xb8, 0x48, 0x70, 0x86, 0x91, 0x88, 0x21, 0x5d, 0x18, 0xc5, 0xce, 0x44, 0x35, 0x4e, 0x22, 0x74, 0xea, 0xdb, 0x8f, 0xea, 0x31, 0x9f, 0x8d, 0x6f, 0x60, 0x94, 0x45, 0x32, 0xdb, 0xaa, 0xe8, 0x6b, 0xfd, 0x81, 0x05, 0xf2, 0x53, 0x04, 0x1b, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8110 = { .name = "ecdsa_secp256r1_sha512_8110", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8110_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8110_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8110_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8111 for ECDSA, tcId is 232 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8111_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8111_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8111_sig[] = { 0x3f, 0xa9, 0x97, 0x5f, 0xb2, 0xb0, 0x8b, 0x7b, 0x6e, 0x33, 0xf3, 0x84, 0x30, 0x99, 0xda, 0x3f, 0x43, 0xf1, 0xdc, 0xfe, 0x9b, 0x17, 0x1a, 0x60, 0xca, 0xfd, 0x54, 0x89, 0xca, 0x9c, 0x53, 0x28, 0x98, 0x5a, 0x86, 0x82, 0x5a, 0x0c, 0xc7, 0x28, 0xf5, 0xd9, 0xda, 0xc2, 0xa5, 0x13, 0xb4, 0x91, 0x27, 0xa0, 0x61, 0x00, 0xf0, 0xfc, 0x4b, 0x8b, 0x1f, 0x20, 0x09, 0x03, 0xe0, 0xdf, 0x9e, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8111 = { .name = "ecdsa_secp256r1_sha512_8111", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8111_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8111_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8111_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8112 for ECDSA, tcId is 233 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8112_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8112_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8112_sig[] = { 0x4d, 0x66, 0xe7, 0xee, 0x5e, 0xdd, 0x02, 0xab, 0x96, 0xdb, 0x25, 0x95, 0x40, 0x50, 0x07, 0x9e, 0xf8, 0xde, 0x1d, 0x0f, 0x02, 0xf3, 0x4d, 0x4d, 0x75, 0x11, 0x2e, 0xaf, 0x3f, 0x73, 0x12, 0x40, 0x62, 0x92, 0xd1, 0x56, 0x31, 0x40, 0x01, 0x3c, 0x58, 0x9b, 0xe4, 0x0e, 0x59, 0x98, 0x62, 0xbd, 0xd6, 0xbd, 0xa2, 0x10, 0x38, 0x09, 0x92, 0x89, 0x28, 0xa1, 0x19, 0xb4, 0x38, 0x51, 0xa2, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8112 = { .name = "ecdsa_secp256r1_sha512_8112", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8112_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8112_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8112_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8113 for ECDSA, tcId is 234 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8113_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8113_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8113_sig[] = { 0xa9, 0x22, 0x83, 0x05, 0xf7, 0xb4, 0x86, 0xf5, 0x68, 0xeb, 0x65, 0xd4, 0x4e, 0x49, 0xba, 0x00, 0x7e, 0x3f, 0x14, 0xb8, 0xf2, 0x3c, 0x68, 0x9c, 0x95, 0x2e, 0x4c, 0xed, 0x1e, 0x6c, 0xf9, 0x1e, 0xb7, 0x3c, 0x74, 0xd2, 0x8b, 0xd1, 0x26, 0x80, 0x02, 0xbe, 0xd7, 0x84, 0xa6, 0xb0, 0x6c, 0x40, 0xa9, 0x0e, 0xe5, 0x93, 0x8e, 0xa6, 0xd0, 0x8f, 0x27, 0x2d, 0x02, 0x7e, 0x0f, 0x96, 0xa7, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8113 = { .name = "ecdsa_secp256r1_sha512_8113", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8113_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8113_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8113_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8114 for ECDSA, tcId is 235 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8114_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8114_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8114_sig[] = { 0x3f, 0xa3, 0x98, 0x42, 0xbf, 0xab, 0x6c, 0x38, 0xaf, 0xa7, 0x96, 0x3c, 0x60, 0xbe, 0xb0, 0x94, 0x84, 0xd4, 0x57, 0x9f, 0xc7, 0x5e, 0xf0, 0x9e, 0xff, 0xf4, 0x4e, 0x91, 0xbc, 0x62, 0xca, 0x83, 0x56, 0x12, 0xad, 0xd1, 0x92, 0x4f, 0x02, 0x85, 0xac, 0xe5, 0xb1, 0x58, 0x82, 0x8e, 0x2b, 0x32, 0xab, 0x2b, 0x6e, 0x7f, 0x10, 0xee, 0x68, 0xdc, 0xa1, 0xcc, 0x54, 0x59, 0x1f, 0xee, 0x1f, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8114 = { .name = "ecdsa_secp256r1_sha512_8114", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8114_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8114_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8114_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8115 for ECDSA, tcId is 236 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8115_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8115_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8115_sig[] = { 0x06, 0xc0, 0x4b, 0x02, 0xed, 0xfe, 0xec, 0xd8, 0x62, 0x0f, 0x03, 0x5e, 0xa4, 0xf4, 0x49, 0xbd, 0x92, 0x45, 0x93, 0xe8, 0x6e, 0x52, 0x88, 0xa6, 0xf2, 0x2d, 0x19, 0x23, 0xb0, 0xe2, 0xe8, 0xa9, 0xf6, 0x66, 0x71, 0x8e, 0x6f, 0xef, 0xb5, 0x15, 0xbb, 0x93, 0x39, 0xd2, 0x9c, 0xc0, 0xe5, 0x8c, 0xfb, 0xa8, 0x9d, 0x60, 0x5c, 0xa0, 0x06, 0x6b, 0xca, 0x87, 0xf6, 0xa3, 0xf0, 0x8e, 0xbc, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8115 = { .name = "ecdsa_secp256r1_sha512_8115", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8115_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8115_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8115_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8116 for ECDSA, tcId is 237 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8116_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8116_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8116_sig[] = { 0x1d, 0xdd, 0x95, 0x3c, 0x32, 0xa5, 0xf8, 0x41, 0x09, 0xcd, 0x4d, 0x9e, 0xc8, 0xc3, 0x64, 0xdd, 0x31, 0x83, 0x76, 0xff, 0x5d, 0x22, 0x82, 0x11, 0xa3, 0x67, 0x48, 0x30, 0x77, 0xd6, 0x38, 0x80, 0x56, 0x3d, 0xba, 0x48, 0x45, 0xde, 0x76, 0x2b, 0xaf, 0x04, 0x91, 0x06, 0x18, 0xd5, 0x87, 0xe0, 0xdd, 0x0c, 0x97, 0xdd, 0x1c, 0x97, 0x85, 0xc2, 0x4f, 0xfd, 0xf2, 0xf8, 0xa6, 0x60, 0xab, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8116 = { .name = "ecdsa_secp256r1_sha512_8116", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8116_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8116_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8116_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8117 for ECDSA, tcId is 238 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8117_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8117_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8117_sig[] = { 0x9f, 0xe4, 0xec, 0x48, 0x31, 0xef, 0x49, 0x45, 0xf1, 0x00, 0xd5, 0xd3, 0x5a, 0x2e, 0x63, 0x12, 0x41, 0x1c, 0xa5, 0xdf, 0x6c, 0x90, 0x0c, 0xa6, 0x06, 0x90, 0xf2, 0x98, 0x5d, 0x55, 0x34, 0x82, 0xc6, 0x74, 0xad, 0x5e, 0x1b, 0xea, 0xd2, 0xf7, 0x67, 0xc9, 0x24, 0x8e, 0x44, 0x44, 0x52, 0xa4, 0xa8, 0x53, 0x0d, 0xd4, 0x72, 0x46, 0xcb, 0xbc, 0x96, 0x8d, 0xa8, 0x65, 0xbd, 0xf2, 0x12, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8117 = { .name = "ecdsa_secp256r1_sha512_8117", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8117_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8117_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8117_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8118 for ECDSA, tcId is 239 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8118_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8118_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8118_sig[] = { 0xe8, 0x70, 0x3d, 0x6b, 0x16, 0xa7, 0x9f, 0xc2, 0xab, 0x36, 0x53, 0xce, 0xce, 0x29, 0xd0, 0x6f, 0x65, 0xdd, 0x6f, 0x2c, 0x23, 0x0c, 0xb0, 0x8e, 0xe3, 0x0c, 0x55, 0x17, 0x40, 0x7d, 0x75, 0xdb, 0x8c, 0xfe, 0xb8, 0x7b, 0x8e, 0x95, 0xdd, 0xac, 0xd6, 0x38, 0xb3, 0x7d, 0x31, 0x53, 0x93, 0xc5, 0x00, 0x5f, 0x3a, 0xb8, 0xbb, 0xa0, 0xcc, 0x1c, 0xd1, 0xa0, 0x50, 0x82, 0x9b, 0x77, 0x5b, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8118 = { .name = "ecdsa_secp256r1_sha512_8118", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8118_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8118_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8118_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8119 for ECDSA, tcId is 240 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8119_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8119_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8119_sig[] = { 0xde, 0xf6, 0x08, 0xca, 0xf1, 0xf2, 0x77, 0xd7, 0x14, 0x03, 0x00, 0x9f, 0x20, 0x9c, 0x1d, 0x7e, 0xef, 0x11, 0xaa, 0xa7, 0x92, 0x03, 0x97, 0xfb, 0xf4, 0x29, 0xb8, 0x14, 0x61, 0x81, 0xae, 0xce, 0xf3, 0xb8, 0xf2, 0xaa, 0x5b, 0x3d, 0xf9, 0xa8, 0xb3, 0x73, 0x13, 0xea, 0x66, 0xad, 0x5b, 0x74, 0x67, 0x3f, 0x3e, 0x86, 0x14, 0xff, 0x47, 0x1b, 0x1e, 0xb6, 0x77, 0x32, 0x17, 0x51, 0x1f, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8119 = { .name = "ecdsa_secp256r1_sha512_8119", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8119_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8119_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8119_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8120 for ECDSA, tcId is 241 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8120_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8120_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8120_sig[] = { 0x4f, 0x5d, 0x08, 0xe8, 0xd9, 0x36, 0xce, 0x83, 0x1d, 0x02, 0xd6, 0xb2, 0x3f, 0xb8, 0xfc, 0xe0, 0xe0, 0x75, 0x01, 0x01, 0xaf, 0x3a, 0xb9, 0xc3, 0xb2, 0x86, 0x36, 0xb9, 0x5a, 0x5e, 0x24, 0xad, 0x6f, 0x03, 0x44, 0x80, 0x55, 0x3b, 0xce, 0xca, 0xc2, 0x21, 0xf8, 0xbe, 0x82, 0x88, 0x16, 0x3c, 0x55, 0x49, 0x2e, 0x2e, 0x56, 0xa8, 0x8f, 0x4d, 0x03, 0x41, 0xb6, 0x14, 0x36, 0xa0, 0xa6, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8120 = { .name = "ecdsa_secp256r1_sha512_8120", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8120_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8120_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8120_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8121 for ECDSA, tcId is 242 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8121_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8121_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8121_sig[] = { 0xbd, 0xd8, 0x22, 0xbf, 0xe3, 0x73, 0x3d, 0x9f, 0x4b, 0x88, 0x76, 0x4f, 0xe0, 0x91, 0xdb, 0x2e, 0x8f, 0x8a, 0xf3, 0x66, 0xe4, 0xc4, 0x4d, 0x87, 0x6b, 0xf8, 0x2e, 0x62, 0xbd, 0x48, 0xc7, 0xee, 0x7f, 0xbf, 0x77, 0x50, 0xc5, 0xdc, 0x84, 0x9a, 0x2c, 0x55, 0xdb, 0xdd, 0x06, 0x78, 0x06, 0xf8, 0x69, 0x65, 0x2a, 0x7b, 0x3a, 0x57, 0xba, 0xa4, 0x73, 0x37, 0x81, 0xd3, 0x12, 0x8f, 0x02, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8121 = { .name = "ecdsa_secp256r1_sha512_8121", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8121_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8121_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8121_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8122 for ECDSA, tcId is 243 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8122_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8122_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8122_sig[] = { 0x1c, 0x4f, 0xc0, 0x29, 0x61, 0xb7, 0xf4, 0x24, 0x55, 0x66, 0xb4, 0x10, 0xbf, 0x08, 0xf4, 0x47, 0x50, 0x2e, 0xa4, 0xf7, 0x5b, 0x15, 0x69, 0x03, 0x44, 0x68, 0x1e, 0xfa, 0x2e, 0xdf, 0x7b, 0x4b, 0x7d, 0x63, 0xee, 0xf1, 0x19, 0xdc, 0x88, 0xbc, 0x4a, 0x1b, 0x2c, 0x43, 0xac, 0x21, 0xcd, 0x53, 0x89, 0x24, 0x43, 0x66, 0x1f, 0x8c, 0x3a, 0x97, 0xd5, 0x58, 0xbf, 0x88, 0x8c, 0x29, 0xf7, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8122 = { .name = "ecdsa_secp256r1_sha512_8122", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8122_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8122_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8122_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8123 for ECDSA, tcId is 244 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8123_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8123_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8123_sig[] = { 0x64, 0x06, 0xf2, 0xd2, 0x49, 0xab, 0x12, 0x64, 0xe1, 0x75, 0x47, 0x6c, 0xa3, 0x30, 0x0e, 0xfd, 0x04, 0x9f, 0xca, 0xd5, 0x69, 0xdf, 0xf4, 0x0b, 0x92, 0x20, 0x82, 0xb4, 0x1c, 0xc7, 0xb7, 0xce, 0x46, 0x18, 0x72, 0xb8, 0x03, 0x38, 0x3f, 0x78, 0x50, 0x77, 0x71, 0x4a, 0x95, 0x66, 0xc4, 0xd6, 0x52, 0xe8, 0x7b, 0x2c, 0xad, 0x90, 0xdd, 0x4f, 0x4c, 0xc8, 0x4b, 0xc5, 0x50, 0x04, 0xc5, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8123 = { .name = "ecdsa_secp256r1_sha512_8123", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8123_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8123_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8123_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8124 for ECDSA, tcId is 245 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8124_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8124_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8124_sig[] = { 0x41, 0x5c, 0x92, 0x4b, 0x9b, 0xa1, 0x90, 0x2b, 0x34, 0x00, 0x58, 0x11, 0x7d, 0x90, 0x62, 0x36, 0x02, 0xd4, 0x8b, 0x82, 0x80, 0x58, 0x3f, 0xb2, 0x31, 0xdc, 0x93, 0x82, 0x3b, 0x83, 0xa1, 0x53, 0xf1, 0x8b, 0xe8, 0xcd, 0xc2, 0x06, 0x3a, 0x26, 0xab, 0x03, 0x05, 0x04, 0xd3, 0x39, 0x7d, 0xc6, 0xe9, 0xc6, 0xb6, 0xc5, 0x6f, 0x4e, 0x3a, 0x59, 0x83, 0x2c, 0x0e, 0x46, 0x43, 0xc0, 0x26, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8124 = { .name = "ecdsa_secp256r1_sha512_8124", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8124_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8124_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8124_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8125 for ECDSA, tcId is 246 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8125_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8125_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8125_sig[] = { 0xd1, 0x2e, 0x96, 0xc7, 0xd2, 0xf1, 0x77, 0xb7, 0xcf, 0x6d, 0x8a, 0x1e, 0xde, 0x06, 0x0a, 0x2b, 0x17, 0x4d, 0xc9, 0x93, 0xd4, 0x3f, 0x5f, 0xe6, 0x0f, 0x75, 0x60, 0x48, 0x24, 0xb6, 0x4f, 0xef, 0x0c, 0x97, 0xd8, 0x70, 0x35, 0xfc, 0xca, 0x0a, 0x5f, 0x47, 0xfe, 0x64, 0x61, 0xbb, 0x30, 0xcb, 0xaf, 0x05, 0xb3, 0x7e, 0x42, 0x11, 0xec, 0x3f, 0xcd, 0x51, 0xfc, 0x71, 0xa1, 0x22, 0x39, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8125 = { .name = "ecdsa_secp256r1_sha512_8125", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8125_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8125_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8125_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8126 for ECDSA, tcId is 247 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8126_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8126_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8126_sig[] = { 0x7d, 0xf7, 0x2a, 0x64, 0xc7, 0xe9, 0x82, 0xc8, 0x8f, 0x83, 0xb3, 0xa2, 0x28, 0x02, 0x69, 0x00, 0x98, 0x14, 0x7e, 0x0e, 0x42, 0xef, 0x43, 0x71, 0xef, 0x06, 0x99, 0x10, 0x85, 0x8c, 0x06, 0x46, 0xad, 0xba, 0xa7, 0xb1, 0x0c, 0x6a, 0x3f, 0x99, 0x5e, 0xd5, 0xf8, 0x3d, 0x7b, 0xda, 0x4b, 0xa6, 0x26, 0xb3, 0x55, 0xf3, 0x4a, 0x72, 0xbf, 0x92, 0xff, 0x78, 0x83, 0x00, 0xb7, 0x0e, 0x72, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8126 = { .name = "ecdsa_secp256r1_sha512_8126", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8126_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8126_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8126_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8127 for ECDSA, tcId is 248 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8127_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8127_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8127_sig[] = { 0x04, 0x7c, 0x43, 0x06, 0xf8, 0xd3, 0x0e, 0x42, 0x5a, 0xe7, 0x0e, 0x0b, 0xee, 0x9e, 0x0b, 0x94, 0xfa, 0xa4, 0xef, 0x18, 0xa9, 0xc6, 0xd7, 0xf2, 0xc9, 0x5d, 0xe0, 0xfe, 0x6e, 0x2a, 0x32, 0x37, 0x7a, 0x4d, 0x0d, 0x0a, 0x59, 0x6b, 0xd9, 0xea, 0x3f, 0xe9, 0x85, 0x0e, 0x9c, 0x8c, 0x77, 0x32, 0x25, 0x94, 0x34, 0x46, 0x23, 0xc0, 0xb4, 0x6a, 0xc2, 0xa8, 0xc9, 0x59, 0x48, 0xae, 0xfd, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8127 = { .name = "ecdsa_secp256r1_sha512_8127", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8127_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8127_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8127_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8128 for ECDSA, tcId is 249 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8128_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8128_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8128_sig[] = { 0x57, 0xd6, 0x03, 0xa3, 0x67, 0xe2, 0x3a, 0xf3, 0x9c, 0x95, 0xdd, 0x41, 0x8c, 0x01, 0x76, 0xda, 0x8b, 0x21, 0x1d, 0x50, 0xb1, 0xbe, 0x82, 0xbf, 0x5e, 0xf6, 0x21, 0xa2, 0x64, 0x02, 0x04, 0xf7, 0x5d, 0xc3, 0xf2, 0x85, 0xad, 0x01, 0x5c, 0x4d, 0x71, 0x15, 0x7b, 0xd1, 0x1e, 0x5b, 0x8d, 0xf6, 0xa8, 0x9e, 0x4b, 0x26, 0x73, 0x93, 0xb0, 0x8b, 0x5a, 0xd5, 0x01, 0x3b, 0xda, 0xe5, 0x44, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8128 = { .name = "ecdsa_secp256r1_sha512_8128", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8128_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8128_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8128_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8129 for ECDSA, tcId is 250 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8129_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8129_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8129_sig[] = { 0x11, 0xdf, 0x67, 0x41, 0x02, 0x1e, 0xc8, 0xcc, 0x56, 0x75, 0x84, 0xae, 0xa1, 0x68, 0x17, 0xc5, 0x40, 0x85, 0x9c, 0x4e, 0x50, 0x11, 0x55, 0x1c, 0x00, 0xb0, 0x97, 0xfc, 0xfc, 0x23, 0x37, 0xe5, 0x66, 0x85, 0x51, 0x91, 0x9d, 0x43, 0x20, 0x6a, 0xc0, 0x57, 0x1f, 0xc5, 0xad, 0x3a, 0xc0, 0xef, 0xb4, 0x89, 0xbe, 0xa5, 0x99, 0xe7, 0xbf, 0x99, 0xfe, 0x4c, 0x74, 0x68, 0xd6, 0xc2, 0xc5, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8129 = { .name = "ecdsa_secp256r1_sha512_8129", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8129_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8129_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8129_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8130 for ECDSA, tcId is 251 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8130_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8130_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8130_sig[] = { 0x74, 0x51, 0xff, 0xed, 0xe4, 0x71, 0xbd, 0x37, 0x04, 0x06, 0x53, 0x34, 0x36, 0xfc, 0x42, 0xa8, 0x9d, 0xaa, 0x0a, 0xf4, 0x90, 0x3d, 0x08, 0x7c, 0xbc, 0x06, 0x2f, 0xe7, 0xe5, 0x4d, 0xbf, 0x70, 0x59, 0x08, 0x95, 0x39, 0x8f, 0x22, 0xb4, 0x8c, 0xe7, 0x2c, 0xbf, 0x7c, 0x3d, 0x3e, 0xe1, 0xdd, 0x7f, 0xb0, 0xee, 0x64, 0x5e, 0xdb, 0x0b, 0x1b, 0x1d, 0xe3, 0x5f, 0x37, 0x0e, 0x5b, 0xf5, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8130 = { .name = "ecdsa_secp256r1_sha512_8130", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8130_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8130_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8130_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8131 for ECDSA, tcId is 252 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8131_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8131_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8131_sig[] = { 0xfc, 0x4c, 0x4d, 0x81, 0xda, 0x6f, 0x68, 0x7a, 0x64, 0x26, 0x26, 0x31, 0x93, 0xc1, 0xa6, 0x80, 0xb6, 0x77, 0x34, 0xa1, 0xb1, 0x80, 0x64, 0x7b, 0x8c, 0x76, 0x40, 0x7c, 0xc4, 0xf0, 0xa9, 0xc6, 0x56, 0xf7, 0x75, 0xd3, 0x72, 0xc9, 0xbe, 0xe6, 0x85, 0x37, 0x40, 0x85, 0xbe, 0x67, 0x6c, 0x9c, 0xf3, 0x1c, 0xf1, 0xf9, 0x78, 0xa5, 0xe6, 0xcc, 0xb0, 0x4e, 0x4a, 0x07, 0x61, 0x15, 0x9c, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8131 = { .name = "ecdsa_secp256r1_sha512_8131", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8131_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8131_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8131_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8132 for ECDSA, tcId is 253 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8132_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8132_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8132_sig[] = { 0xfe, 0xb9, 0x78, 0xca, 0x33, 0xc4, 0x6f, 0xfb, 0xa4, 0x7e, 0xb6, 0x3b, 0xb4, 0x0d, 0xe7, 0x83, 0x3e, 0x43, 0xd5, 0x65, 0x45, 0x75, 0xb5, 0x4d, 0xe1, 0xfe, 0xa3, 0xd1, 0xde, 0x3c, 0x8a, 0xd5, 0x10, 0x80, 0x78, 0xba, 0x99, 0x7b, 0xfa, 0x06, 0x45, 0x21, 0xba, 0xf3, 0x42, 0xc9, 0x7b, 0x0c, 0x64, 0xbd, 0x25, 0x24, 0x0c, 0x8f, 0xd0, 0xfd, 0x75, 0x33, 0xae, 0x2d, 0x03, 0x08, 0x1b, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8132 = { .name = "ecdsa_secp256r1_sha512_8132", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8132_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8132_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8132_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8133 for ECDSA, tcId is 254 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8133_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8133_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8133_sig[] = { 0xcc, 0x61, 0x72, 0x96, 0x98, 0x46, 0x7b, 0xa5, 0x3d, 0xa1, 0x99, 0xff, 0x48, 0x1f, 0xe7, 0x43, 0x3f, 0x19, 0x4f, 0xc9, 0x63, 0x67, 0x90, 0x7e, 0x8d, 0xc5, 0xe1, 0xd9, 0xf4, 0x2b, 0x1e, 0x21, 0x83, 0xdd, 0x9e, 0xf1, 0x56, 0xe7, 0xc1, 0xf9, 0xc0, 0x9b, 0x3b, 0xf8, 0x6a, 0x4f, 0x1c, 0x88, 0xe5, 0xdd, 0x20, 0xcd, 0x74, 0xd9, 0x97, 0x85, 0x8e, 0x60, 0x07, 0x97, 0xdb, 0xe7, 0x4a, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8133 = { .name = "ecdsa_secp256r1_sha512_8133", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8133_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8133_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8133_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8134 for ECDSA, tcId is 255 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8134_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8134_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8134_sig[] = { 0xd4, 0x7f, 0x61, 0x63, 0x03, 0xff, 0x0e, 0xb8, 0x13, 0xea, 0xc3, 0x2e, 0x76, 0x0b, 0xa3, 0x0a, 0xd4, 0x45, 0xe0, 0xaf, 0x7d, 0xc5, 0x7e, 0x70, 0x75, 0x61, 0x04, 0x82, 0x3f, 0x6a, 0x89, 0x5f, 0x04, 0x7f, 0x22, 0x17, 0xb3, 0x99, 0xc4, 0x6a, 0x42, 0x6b, 0x93, 0x6a, 0x12, 0x49, 0x80, 0xa6, 0x01, 0x1f, 0x08, 0x96, 0xf5, 0x1d, 0xbe, 0x07, 0x63, 0x28, 0x28, 0xa7, 0x2d, 0x71, 0x73, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8134 = { .name = "ecdsa_secp256r1_sha512_8134", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8134_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8134_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8134_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8135 for ECDSA, tcId is 256 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8135_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8135_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8135_sig[] = { 0xcf, 0xf7, 0x3d, 0xfa, 0x2b, 0xac, 0x67, 0xce, 0x13, 0x40, 0xb2, 0x5c, 0x88, 0x5a, 0xbb, 0x3e, 0x79, 0x79, 0xef, 0x7f, 0x84, 0x0f, 0x15, 0xd5, 0xf1, 0x9e, 0x86, 0x64, 0x0c, 0xdd, 0x40, 0xa3, 0xc7, 0xd1, 0x21, 0x08, 0x02, 0x79, 0x6c, 0x4f, 0x25, 0x10, 0x49, 0xee, 0x08, 0xa2, 0xc2, 0x9f, 0x5c, 0x71, 0x06, 0x40, 0x33, 0xd1, 0x70, 0x10, 0xc6, 0x5b, 0xf2, 0xe9, 0x44, 0x99, 0x38, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8135 = { .name = "ecdsa_secp256r1_sha512_8135", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8135_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8135_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8135_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8136 for ECDSA, tcId is 257 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8136_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8136_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8136_sig[] = { 0x10, 0xac, 0xaf, 0x9c, 0x48, 0x5a, 0xb1, 0x22, 0x03, 0x55, 0xb9, 0x5b, 0xe2, 0x69, 0xf1, 0x24, 0xe1, 0x2e, 0xb2, 0x52, 0xf2, 0x22, 0x4b, 0x0f, 0xc5, 0x07, 0x85, 0xeb, 0x2e, 0xe3, 0xdf, 0x45, 0x32, 0x44, 0x3b, 0x55, 0x7e, 0xfc, 0x68, 0x96, 0x34, 0x7f, 0xa7, 0x78, 0xe1, 0xfc, 0xf3, 0x3c, 0xbb, 0x76, 0x9c, 0x9a, 0x7d, 0xa8, 0x96, 0xb2, 0x0d, 0x93, 0xfe, 0xa7, 0xc2, 0x79, 0x1e, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8136 = { .name = "ecdsa_secp256r1_sha512_8136", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8136_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8136_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8136_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8137 for ECDSA, tcId is 258 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8137_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8137_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8137_sig[] = { 0xf9, 0x19, 0xda, 0x06, 0x51, 0xab, 0xc2, 0xbf, 0xf9, 0x94, 0xa8, 0x79, 0xd2, 0x77, 0x8f, 0xa5, 0x19, 0x5d, 0x57, 0x40, 0x0e, 0x00, 0x3e, 0x8d, 0xd6, 0xad, 0xb3, 0xfc, 0x7a, 0x0c, 0xc4, 0xcc, 0x9b, 0x94, 0x5d, 0x06, 0xbd, 0x11, 0x96, 0x65, 0xb2, 0x78, 0xa5, 0x9b, 0xd2, 0x4f, 0xdd, 0x23, 0x50, 0x81, 0x7d, 0x0b, 0xe8, 0x79, 0x97, 0xbe, 0xe5, 0x7b, 0x70, 0xc4, 0x79, 0xd6, 0x4a, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8137 = { .name = "ecdsa_secp256r1_sha512_8137", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8137_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8137_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8137_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8138 for ECDSA, tcId is 259 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8138_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8138_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8138_sig[] = { 0xcc, 0x38, 0xe7, 0xa0, 0x18, 0xf6, 0xd7, 0x0b, 0x2d, 0x9b, 0x49, 0x12, 0x0c, 0xc9, 0xb4, 0xa1, 0x69, 0xf2, 0xf7, 0x22, 0x38, 0x82, 0x1a, 0x86, 0xb8, 0x1f, 0x55, 0x3b, 0x62, 0x25, 0xd2, 0x4e, 0x27, 0x6e, 0xfd, 0x8b, 0xf0, 0x6c, 0xcc, 0xe0, 0x7c, 0x7a, 0xae, 0x35, 0xea, 0xac, 0x3b, 0xd1, 0xc3, 0x74, 0xdc, 0xf0, 0xcf, 0x05, 0x88, 0xd5, 0xe0, 0xe4, 0x17, 0x19, 0x36, 0x68, 0x86, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8138 = { .name = "ecdsa_secp256r1_sha512_8138", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8138_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8138_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8138_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8139 for ECDSA, tcId is 260 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8139_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8139_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8139_sig[] = { 0xff, 0x85, 0xad, 0x66, 0x62, 0x19, 0x91, 0xc3, 0x18, 0xb8, 0x5c, 0xef, 0x73, 0xc5, 0x76, 0xcb, 0x2a, 0x8d, 0x43, 0xc5, 0x68, 0xc1, 0xaa, 0xfc, 0x85, 0xb4, 0x0e, 0xf2, 0xa9, 0xa6, 0xb4, 0x1c, 0x73, 0x2a, 0x79, 0xe6, 0x83, 0x7e, 0xbf, 0x84, 0x34, 0xfe, 0xa6, 0xe7, 0xfe, 0xfa, 0x94, 0x8f, 0x50, 0x6a, 0xe4, 0x55, 0xc1, 0xa3, 0xeb, 0x36, 0xa0, 0x30, 0x18, 0x5a, 0x23, 0x03, 0x7d, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8139 = { .name = "ecdsa_secp256r1_sha512_8139", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8139_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8139_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8139_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8140 for ECDSA, tcId is 261 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8140_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8140_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8140_sig[] = { 0x33, 0xf0, 0x16, 0xe5, 0x1e, 0xef, 0x9b, 0x11, 0x36, 0x38, 0x0c, 0xb8, 0xb8, 0x4c, 0x6b, 0x38, 0xb1, 0x07, 0xe2, 0x4c, 0x67, 0x31, 0xbd, 0x07, 0xcb, 0x1c, 0x7f, 0x4a, 0x29, 0xf3, 0x3a, 0x83, 0x36, 0xb1, 0x77, 0xbb, 0x8b, 0xe9, 0x4c, 0x8b, 0xe6, 0x7f, 0xf3, 0xa4, 0x1f, 0xcc, 0x4d, 0x22, 0xb5, 0xc9, 0xeb, 0x37, 0x7d, 0xa7, 0x13, 0xeb, 0x01, 0x4a, 0xe0, 0x1c, 0x64, 0xca, 0x6d, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8140 = { .name = "ecdsa_secp256r1_sha512_8140", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8140_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8140_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8140_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8141 for ECDSA, tcId is 262 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8141_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8141_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8141_sig[] = { 0x92, 0x94, 0x13, 0xee, 0x91, 0xf2, 0x74, 0x54, 0xd7, 0x4e, 0x91, 0x37, 0x0a, 0x10, 0xa8, 0x6f, 0xc9, 0x8a, 0xc7, 0x30, 0x5c, 0x8a, 0xb4, 0xca, 0x59, 0x75, 0x2b, 0xda, 0x3a, 0x7b, 0xfc, 0x37, 0x48, 0x3b, 0x47, 0xa2, 0x6a, 0x0d, 0x7d, 0x2e, 0x6b, 0xd3, 0x7d, 0x35, 0x1d, 0x9e, 0xe3, 0x7c, 0x5e, 0xc2, 0xa4, 0x68, 0x6d, 0x88, 0x4d, 0x78, 0xb6, 0xbe, 0xb7, 0xf6, 0xb0, 0x8c, 0x50, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8141 = { .name = "ecdsa_secp256r1_sha512_8141", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8141_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8141_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8141_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8142 for ECDSA, tcId is 263 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8142_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8142_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8142_sig[] = { 0x57, 0x82, 0x02, 0xc7, 0xd0, 0xab, 0xac, 0x93, 0xca, 0x43, 0xdd, 0xe3, 0xcb, 0x44, 0x41, 0x4e, 0x56, 0x01, 0xc1, 0xeb, 0x55, 0x76, 0x04, 0xcb, 0x9a, 0xdb, 0x4b, 0xde, 0x0a, 0x12, 0x63, 0x3b, 0xfb, 0x9a, 0x74, 0x12, 0xe3, 0x07, 0xae, 0xe9, 0x5e, 0xf4, 0xb5, 0x35, 0x40, 0x57, 0x1a, 0x21, 0x55, 0x94, 0x14, 0xe5, 0x30, 0x67, 0x94, 0xab, 0x51, 0x82, 0xcf, 0xb2, 0x29, 0xda, 0xb3, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8142 = { .name = "ecdsa_secp256r1_sha512_8142", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8142_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8142_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8142_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8143 for ECDSA, tcId is 264 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8143_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8143_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8143_sig[] = { 0x46, 0xd4, 0x5a, 0xd0, 0xbb, 0x75, 0xb8, 0x63, 0x9d, 0x0e, 0x91, 0xd8, 0x45, 0x0f, 0xc3, 0x18, 0x87, 0xc2, 0x11, 0x32, 0x8a, 0x57, 0x84, 0xfc, 0x83, 0xb4, 0xcb, 0x7f, 0x5b, 0x96, 0x2c, 0x1b, 0xd6, 0x75, 0x1d, 0x13, 0xed, 0xe2, 0x07, 0x9b, 0x7a, 0xa1, 0xd8, 0x22, 0xbd, 0xb3, 0x2d, 0x7f, 0x3c, 0xf0, 0x02, 0x73, 0xa1, 0xff, 0x03, 0xdf, 0x90, 0xc0, 0xec, 0x7c, 0x62, 0xa4, 0x75, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8143 = { .name = "ecdsa_secp256r1_sha512_8143", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8143_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8143_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8143_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8144 for ECDSA, tcId is 265 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8144_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8144_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8144_sig[] = { 0xab, 0xe8, 0x4c, 0x94, 0x17, 0x83, 0xd5, 0xce, 0xd2, 0x84, 0xfe, 0xa5, 0x63, 0x41, 0xec, 0xc6, 0x8d, 0x6b, 0xdd, 0x31, 0x96, 0xd3, 0x18, 0xfb, 0xd0, 0x74, 0x64, 0x1f, 0x8c, 0x88, 0x5b, 0xd5, 0xbd, 0xea, 0x3c, 0x44, 0xd4, 0x8e, 0x01, 0xaa, 0x40, 0x93, 0x5c, 0x1c, 0x97, 0x23, 0xff, 0x73, 0x31, 0x99, 0x56, 0x34, 0x40, 0xf2, 0x6b, 0x4e, 0xcf, 0x0b, 0x44, 0x4b, 0x04, 0x18, 0xd9, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8144 = { .name = "ecdsa_secp256r1_sha512_8144", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8144_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8144_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8144_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8145 for ECDSA, tcId is 266 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8145_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8145_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8145_sig[] = { 0x05, 0x27, 0x7c, 0xdb, 0xf4, 0x91, 0xe3, 0x36, 0xfe, 0x81, 0xbe, 0x24, 0xe3, 0x93, 0xa1, 0x61, 0xa4, 0xfb, 0x89, 0x11, 0x2c, 0x9f, 0xfe, 0xd1, 0xee, 0x66, 0x49, 0xc4, 0x06, 0x71, 0x34, 0x08, 0xab, 0x69, 0x34, 0x33, 0x2e, 0x68, 0xe1, 0x08, 0xbb, 0x04, 0x84, 0xd2, 0x1c, 0x45, 0x7d, 0xcf, 0x38, 0x1a, 0x62, 0x0c, 0x3a, 0x47, 0x12, 0xfd, 0xbf, 0xeb, 0x65, 0x8a, 0x3f, 0xaf, 0xd6, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8145 = { .name = "ecdsa_secp256r1_sha512_8145", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8145_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8145_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8145_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8146 for ECDSA, tcId is 267 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8146_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8146_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8146_sig[] = { 0x29, 0x38, 0x25, 0x73, 0x7c, 0x8c, 0x14, 0x43, 0x0e, 0xd1, 0x0d, 0xba, 0xdd, 0x7d, 0xa3, 0x37, 0x27, 0x5f, 0x9b, 0x61, 0xd1, 0xd2, 0x63, 0x77, 0xf7, 0x78, 0xff, 0xaa, 0x00, 0xc1, 0x39, 0xde, 0xcd, 0xdd, 0xec, 0x26, 0x7a, 0x86, 0x78, 0xc9, 0x68, 0x29, 0xbf, 0x6c, 0x1d, 0x6f, 0x38, 0x32, 0x2e, 0x11, 0x99, 0x37, 0xcf, 0xd2, 0xfe, 0xe0, 0x1e, 0x9d, 0xc9, 0x52, 0x5f, 0x43, 0xed, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8146 = { .name = "ecdsa_secp256r1_sha512_8146", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8146_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8146_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8146_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8147 for ECDSA, tcId is 268 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8147_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8147_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8147_sig[] = { 0x20, 0x41, 0xfd, 0xd6, 0x11, 0x1c, 0x45, 0xdf, 0xd2, 0x9e, 0x75, 0x0e, 0x08, 0x2d, 0xcd, 0xad, 0xc9, 0xa5, 0x84, 0xa8, 0xa2, 0xbe, 0x46, 0x58, 0x0f, 0xb0, 0xba, 0x3b, 0x3d, 0xc6, 0x58, 0x62, 0x42, 0x18, 0x24, 0xfe, 0x98, 0x7e, 0x41, 0x72, 0xa0, 0xf8, 0xbb, 0xcb, 0x7b, 0xcd, 0x9e, 0x1b, 0x07, 0x3b, 0x77, 0x42, 0xed, 0x9f, 0x9d, 0xf9, 0x8f, 0x2a, 0x1a, 0x37, 0xcd, 0x37, 0x4c, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8147 = { .name = "ecdsa_secp256r1_sha512_8147", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8147_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8147_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8147_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8148 for ECDSA, tcId is 269 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8148_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8148_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8148_sig[] = { 0x26, 0x79, 0x41, 0xdb, 0x66, 0x0e, 0x04, 0x6a, 0xb1, 0x4e, 0x79, 0x56, 0x69, 0xe0, 0x02, 0xb8, 0x52, 0xf7, 0x78, 0x84, 0x47, 0xc5, 0x3e, 0xbe, 0xf4, 0x6a, 0x20, 0x56, 0x97, 0x8b, 0x55, 0x74, 0xd0, 0x01, 0x83, 0xbc, 0xaf, 0x75, 0xbc, 0x11, 0xe3, 0x76, 0x53, 0xf9, 0x52, 0xf6, 0xa6, 0x53, 0x71, 0x51, 0xc3, 0xaa, 0x0a, 0x1b, 0x9e, 0x4e, 0x41, 0xb0, 0x04, 0xa2, 0x91, 0x85, 0x39, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8148 = { .name = "ecdsa_secp256r1_sha512_8148", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8148_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8148_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8148_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8149 for ECDSA, tcId is 270 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8149_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8149_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8149_sig[] = { 0x5d, 0xcd, 0x7f, 0x68, 0x14, 0x73, 0x9d, 0x47, 0xf8, 0x0a, 0x36, 0x3b, 0x94, 0x14, 0xe6, 0xcb, 0xfb, 0x5f, 0x08, 0x46, 0x22, 0x38, 0x88, 0x51, 0x0a, 0xbd, 0x5b, 0x39, 0x03, 0xd7, 0xae, 0x09, 0x43, 0x41, 0x8f, 0x13, 0x8b, 0xb3, 0xc8, 0x57, 0xc0, 0xad, 0x75, 0x0c, 0xa8, 0x38, 0x9e, 0xbc, 0xf3, 0x71, 0x9c, 0xb3, 0x89, 0x63, 0x4a, 0xc5, 0x4a, 0x91, 0xde, 0x9f, 0x18, 0xfd, 0x72, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8149 = { .name = "ecdsa_secp256r1_sha512_8149", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8149_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8149_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8149_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8150 for ECDSA, tcId is 271 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8150_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8150_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8150_sig[] = { 0x5e, 0x0e, 0x8c, 0xc0, 0x28, 0x04, 0x09, 0xa0, 0xce, 0x25, 0x2d, 0xa0, 0x2b, 0x24, 0x24, 0xd2, 0xde, 0x3a, 0x52, 0xb4, 0x06, 0xc3, 0x77, 0x89, 0x32, 0xdb, 0xc6, 0x0c, 0xb8, 0x6c, 0x35, 0x67, 0x93, 0xd2, 0x5e, 0x92, 0x9c, 0x5b, 0x00, 0xe9, 0x50, 0xd8, 0x95, 0x85, 0xec, 0x6c, 0x01, 0xb6, 0x58, 0x9a, 0xe0, 0xec, 0x0a, 0xf8, 0xa7, 0x9c, 0x04, 0xdf, 0x9e, 0x5b, 0x27, 0xb5, 0x8b, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8150 = { .name = "ecdsa_secp256r1_sha512_8150", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8150_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8150_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8150_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8151 for ECDSA, tcId is 272 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8151_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8151_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8151_sig[] = { 0x4f, 0xcf, 0x9c, 0x9d, 0x9f, 0xfb, 0xf4, 0xe0, 0xb9, 0x82, 0x68, 0xc0, 0x87, 0x07, 0x1b, 0xff, 0xe0, 0x67, 0x3b, 0xb8, 0xdc, 0xb3, 0x2a, 0xa6, 0x67, 0xf8, 0xa6, 0x39, 0xc3, 0x64, 0xea, 0x47, 0x82, 0x0d, 0xb0, 0x73, 0x0b, 0xee, 0x82, 0x27, 0xfc, 0x83, 0x16, 0x43, 0xfc, 0xb8, 0xe2, 0xef, 0x9c, 0x0f, 0x70, 0x59, 0xce, 0x42, 0xda, 0x45, 0xcf, 0x74, 0x82, 0x8e, 0xff, 0xa8, 0xd7, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8151 = { .name = "ecdsa_secp256r1_sha512_8151", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8151_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8151_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8151_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8152 for ECDSA, tcId is 273 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8152_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8152_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8152_sig[] = { 0xc6, 0x0c, 0xd2, 0xe0, 0x82, 0x48, 0xd5, 0x8d, 0x16, 0x39, 0xb1, 0x23, 0x63, 0x36, 0x43, 0xc6, 0x3f, 0x89, 0xaf, 0xf6, 0x11, 0xf9, 0x98, 0x93, 0x7c, 0xcb, 0x08, 0xc9, 0x11, 0x3b, 0xcd, 0xca, 0xac, 0x4b, 0xb4, 0x70, 0xce, 0x01, 0x64, 0x61, 0x6d, 0xad, 0xa7, 0xa1, 0x73, 0x36, 0x4e, 0xd3, 0xf9, 0xd1, 0x6f, 0xd3, 0x2c, 0x68, 0x61, 0x36, 0xf9, 0x04, 0xc9, 0x92, 0x66, 0xfd, 0xa1, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8152 = { .name = "ecdsa_secp256r1_sha512_8152", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8152_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8152_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8152_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8153 for ECDSA, tcId is 274 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8153_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8153_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8153_sig[] = { 0x7c, 0xfd, 0xaf, 0x6f, 0x22, 0xc1, 0xc7, 0x66, 0x8d, 0x7b, 0x6f, 0x56, 0xf8, 0xa7, 0xbe, 0x3f, 0xde, 0xeb, 0x17, 0xa7, 0x86, 0x35, 0x39, 0x55, 0x5b, 0xbf, 0xa8, 0x99, 0xdd, 0x70, 0xc5, 0xf1, 0xce, 0xe1, 0x51, 0xad, 0xc7, 0x1e, 0x68, 0x48, 0x3b, 0x95, 0xa7, 0x85, 0x7a, 0x86, 0x2a, 0xe0, 0xc5, 0xa6, 0xee, 0xe4, 0x78, 0xd9, 0x3d, 0x40, 0xcc, 0xc7, 0xd4, 0x0a, 0x31, 0xdc, 0xbd, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8153 = { .name = "ecdsa_secp256r1_sha512_8153", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8153_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8153_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8153_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8154 for ECDSA, tcId is 275 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8154_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8154_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8154_sig[] = { 0x22, 0x70, 0xbe, 0x7e, 0xe0, 0x33, 0xa7, 0x06, 0xb5, 0x97, 0x46, 0xea, 0xb3, 0x48, 0x16, 0xbe, 0x7e, 0x15, 0xc8, 0x78, 0x40, 0x61, 0xd5, 0x28, 0x10, 0x60, 0x70, 0x7a, 0x0a, 0xbe, 0x0a, 0x7d, 0x56, 0xa1, 0x63, 0x34, 0x1e, 0xe9, 0x5e, 0x7e, 0x3c, 0x04, 0x29, 0x4a, 0x57, 0xf5, 0xf7, 0xd2, 0x4b, 0xf3, 0xc3, 0xc6, 0xf1, 0x3e, 0xf2, 0xf1, 0x61, 0x07, 0x7c, 0x47, 0xbd, 0x27, 0x66, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8154 = { .name = "ecdsa_secp256r1_sha512_8154", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8154_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8154_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8154_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8155 for ECDSA, tcId is 276 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8155_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8155_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8155_sig[] = { 0x16, 0xb5, 0xd2, 0xbf, 0xca, 0xba, 0x21, 0x16, 0x7a, 0x69, 0xf7, 0x43, 0x3d, 0x0c, 0x47, 0x6b, 0x21, 0xde, 0xd3, 0x7d, 0x84, 0xdc, 0x74, 0xca, 0x40, 0x1a, 0x3e, 0xcd, 0xdb, 0x27, 0x52, 0xa8, 0x62, 0x85, 0x2c, 0xf9, 0x7d, 0x89, 0xad, 0xfb, 0x0e, 0xbb, 0xe6, 0xf3, 0x98, 0xee, 0x64, 0x1b, 0xfe, 0xa8, 0xa2, 0x27, 0x15, 0x80, 0xaa, 0xc8, 0xa3, 0xd8, 0x32, 0x6d, 0x8c, 0x6e, 0x0e, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8155 = { .name = "ecdsa_secp256r1_sha512_8155", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8155_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8155_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8155_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8156 for ECDSA, tcId is 277 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8156_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8156_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8156_sig[] = { 0xd9, 0x07, 0xee, 0xfa, 0x66, 0x41, 0x15, 0x84, 0x8b, 0x90, 0xc3, 0xd5, 0xba, 0xa0, 0x23, 0x6f, 0x08, 0xea, 0xfa, 0xf8, 0x1c, 0x0d, 0x52, 0xbb, 0x9d, 0x0f, 0x8a, 0xcb, 0x57, 0x49, 0x08, 0x47, 0xfd, 0x91, 0xbc, 0x45, 0xa7, 0x6e, 0x31, 0xcd, 0xc5, 0x8c, 0x4b, 0xfb, 0x3d, 0xf2, 0x7f, 0x64, 0x70, 0xd2, 0x0b, 0x19, 0xf0, 0xfb, 0xa6, 0xa7, 0x7b, 0x6c, 0x88, 0x46, 0x65, 0x0e, 0xd8, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8156 = { .name = "ecdsa_secp256r1_sha512_8156", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8156_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8156_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8156_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8157 for ECDSA, tcId is 278 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8157_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8157_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8157_sig[] = { 0x04, 0x83, 0x37, 0xb3, 0x4f, 0x42, 0x7e, 0x87, 0x74, 0xb3, 0xbf, 0x7c, 0x8f, 0xf4, 0xb1, 0xae, 0x65, 0xd1, 0x32, 0xac, 0x8a, 0xf9, 0x48, 0x29, 0xbb, 0x2d, 0x32, 0x94, 0x45, 0x79, 0xbb, 0x31, 0xbd, 0x6f, 0x8e, 0xab, 0x82, 0x21, 0x3c, 0xcf, 0x80, 0x76, 0x46, 0x44, 0x20, 0x4b, 0xb6, 0xbf, 0x16, 0xc6, 0x68, 0x72, 0x9c, 0xdd, 0x31, 0xdd, 0x85, 0x96, 0x28, 0x6c, 0x15, 0x68, 0x6e, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8157 = { .name = "ecdsa_secp256r1_sha512_8157", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8157_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8157_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8157_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8158 for ECDSA, tcId is 279 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8158_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8158_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8158_sig[] = { 0xb2, 0xbc, 0x46, 0xb7, 0xc4, 0x42, 0x93, 0x55, 0x7a, 0xb7, 0xeb, 0xeb, 0x02, 0x64, 0x92, 0x42, 0x77, 0x19, 0x3f, 0x87, 0xa2, 0x5d, 0x94, 0xc9, 0x24, 0xdf, 0x15, 0x18, 0xba, 0x7c, 0x72, 0x60, 0xab, 0xf1, 0xf6, 0x23, 0x8f, 0xf6, 0x96, 0xaa, 0xaf, 0xaf, 0x4f, 0x0c, 0xbb, 0xe1, 0x52, 0xc3, 0xd7, 0x71, 0xc5, 0xbf, 0xc4, 0x3f, 0x36, 0xd7, 0xe5, 0xf5, 0x23, 0x58, 0x19, 0xd0, 0x2c, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8158 = { .name = "ecdsa_secp256r1_sha512_8158", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8158_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8158_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8158_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8159 for ECDSA, tcId is 280 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8159_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8159_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8159_sig[] = { 0x40, 0xd4, 0xb3, 0x8a, 0x61, 0x23, 0x2e, 0x65, 0x4f, 0xfd, 0x08, 0xb9, 0x1e, 0x18, 0x60, 0x98, 0x51, 0xf4, 0x18, 0x9f, 0x7b, 0xf8, 0xa4, 0x25, 0xad, 0x59, 0xd9, 0xcb, 0xb1, 0xb5, 0x4c, 0x99, 0x9e, 0x77, 0x5a, 0x7b, 0xd0, 0xd9, 0x34, 0xc3, 0xed, 0x88, 0x60, 0x37, 0xf5, 0xd3, 0xb3, 0x56, 0xf6, 0x0e, 0xda, 0x41, 0x19, 0x16, 0x90, 0x56, 0x6e, 0x99, 0x67, 0x7d, 0x7a, 0xaf, 0x64, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8159 = { .name = "ecdsa_secp256r1_sha512_8159", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8159_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8159_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8159_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8160 for ECDSA, tcId is 281 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8160_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8160_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8160_sig[] = { 0xac, 0x8f, 0x64, 0xd7, 0xdf, 0x8d, 0x9f, 0xea, 0x00, 0x57, 0x44, 0xe3, 0xac, 0x4a, 0xf7, 0x0a, 0xa3, 0xa3, 0x8e, 0x5a, 0x0f, 0x3d, 0x06, 0x9d, 0x85, 0x80, 0x6a, 0x4f, 0x29, 0x71, 0x03, 0x39, 0xc0, 0x14, 0xe9, 0x6d, 0xec, 0xfe, 0xf3, 0x85, 0x7c, 0xc1, 0x74, 0xf2, 0xc4, 0x6a, 0xd0, 0x88, 0x2b, 0xef, 0x0c, 0x4c, 0x8a, 0x17, 0xce, 0x09, 0x44, 0x19, 0x61, 0xe4, 0xae, 0x8d, 0x2d, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8160 = { .name = "ecdsa_secp256r1_sha512_8160", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8160_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8160_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8160_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8161 for ECDSA, tcId is 282 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8161_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8161_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8161_sig[] = { 0x41, 0xb3, 0x76, 0x6f, 0x41, 0xa6, 0x73, 0xa0, 0x1e, 0x2c, 0x0c, 0xab, 0x5c, 0xee, 0xdb, 0xce, 0xc8, 0xd8, 0x25, 0x30, 0xa3, 0x93, 0xf8, 0x84, 0xd7, 0x2a, 0xa4, 0xe6, 0x68, 0x5d, 0xea, 0x0a, 0x07, 0x3a, 0x55, 0xdc, 0xa2, 0xda, 0x57, 0x7c, 0xaf, 0xb4, 0x0e, 0x12, 0xdd, 0x20, 0xbf, 0x85, 0x29, 0xa1, 0x3a, 0x6a, 0xcd, 0xf9, 0xa1, 0xc7, 0xd4, 0xb2, 0x04, 0x8d, 0x60, 0x87, 0x6c, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8161 = { .name = "ecdsa_secp256r1_sha512_8161", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8161_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8161_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8161_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8162 for ECDSA, tcId is 283 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8162_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8162_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8162_sig[] = { 0x19, 0x42, 0x75, 0x5a, 0xa8, 0x12, 0x83, 0x82, 0xcd, 0x8e, 0x35, 0xa4, 0x35, 0x0c, 0x22, 0xcc, 0x45, 0xba, 0x57, 0x04, 0xd9, 0x9e, 0x8a, 0x24, 0x09, 0x70, 0xdf, 0x11, 0x95, 0x6a, 0xd8, 0x66, 0xf6, 0x4c, 0xf1, 0xe0, 0x81, 0x6c, 0xf7, 0xac, 0x50, 0x44, 0xf7, 0x3b, 0xa9, 0x38, 0xe1, 0x42, 0xef, 0x33, 0x05, 0xcb, 0x09, 0xbe, 0xcb, 0x80, 0xa0, 0xa5, 0xb9, 0xad, 0x7b, 0xa3, 0xeb, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8162 = { .name = "ecdsa_secp256r1_sha512_8162", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8162_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8162_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8162_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8163 for ECDSA, tcId is 284 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8163_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8163_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8163_sig[] = { 0x51, 0xab, 0xa4, 0xff, 0x1c, 0x7d, 0xdf, 0x17, 0xe0, 0x63, 0x2a, 0xb7, 0x16, 0x84, 0xd8, 0xde, 0x6d, 0xc7, 0x00, 0x21, 0x9e, 0xf3, 0x46, 0xcb, 0x28, 0xce, 0x9d, 0xaf, 0xc3, 0x56, 0x5b, 0x3b, 0xb6, 0xaa, 0xeb, 0xe1, 0xaf, 0x0a, 0xd0, 0x1f, 0x07, 0xa6, 0x8b, 0xf1, 0xcf, 0x57, 0xf9, 0xd6, 0x04, 0x0b, 0x43, 0xc1, 0x4b, 0x7e, 0xb8, 0x23, 0x85, 0x42, 0x76, 0x0e, 0x32, 0xce, 0x3b, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8163 = { .name = "ecdsa_secp256r1_sha512_8163", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8163_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8163_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8163_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8164 for ECDSA, tcId is 285 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8164_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8164_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8164_sig[] = { 0x91, 0xef, 0xbf, 0xcc, 0x73, 0x16, 0x50, 0xe9, 0xf0, 0x04, 0xc3, 0x8b, 0x71, 0xdb, 0x14, 0x6c, 0x17, 0xbf, 0x87, 0x1c, 0x82, 0xc4, 0xe8, 0x77, 0x16, 0xf7, 0xff, 0x2f, 0x7f, 0x9e, 0x51, 0xd0, 0x08, 0x9e, 0xa6, 0x31, 0xa7, 0xc5, 0xf0, 0x53, 0x11, 0xc5, 0x21, 0xd2, 0x1b, 0xa7, 0x98, 0xb5, 0x17, 0x48, 0x81, 0xf0, 0xfd, 0x80, 0x95, 0xfb, 0x3a, 0x77, 0x51, 0x59, 0x13, 0xef, 0xb6, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8164 = { .name = "ecdsa_secp256r1_sha512_8164", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8164_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8164_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8164_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8165 for ECDSA, tcId is 286 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8165_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8165_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8165_sig[] = { 0x4a, 0x7e, 0x47, 0xbd, 0x28, 0x1e, 0xa0, 0x9b, 0x9e, 0x3a, 0x32, 0x93, 0x4c, 0x7a, 0x96, 0x9e, 0x1f, 0x78, 0x8f, 0x97, 0x8b, 0x41, 0x58, 0x59, 0x89, 0xf4, 0x68, 0x9e, 0x80, 0x46, 0x63, 0xfb, 0xe6, 0x5f, 0x6b, 0xd7, 0x02, 0x40, 0x3c, 0xbb, 0xed, 0x7f, 0x8a, 0xd0, 0x04, 0x5f, 0x33, 0x1d, 0x4a, 0x96, 0xfb, 0xf8, 0xc4, 0x3f, 0x71, 0xf1, 0x16, 0x15, 0xb7, 0xd1, 0xb9, 0x15, 0x3b, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8165 = { .name = "ecdsa_secp256r1_sha512_8165", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8165_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8165_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8165_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8166 for ECDSA, tcId is 287 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8166_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8166_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8166_sig[] = { 0xc7, 0x95, 0xf5, 0xda, 0x86, 0xe1, 0x0a, 0x60, 0x4d, 0x4f, 0x94, 0xbf, 0x7c, 0xac, 0x38, 0x1c, 0x73, 0xed, 0xad, 0x14, 0x61, 0xd6, 0x69, 0x29, 0xe5, 0x3a, 0xa5, 0x7c, 0xa2, 0x94, 0xe8, 0x9f, 0xba, 0xe7, 0x84, 0xab, 0x6c, 0x7b, 0x58, 0x33, 0x2e, 0xe0, 0x5e, 0x7d, 0x54, 0x16, 0x9e, 0xdf, 0x55, 0xce, 0x45, 0xf0, 0x30, 0xe7, 0x1a, 0xe8, 0xdf, 0x63, 0x96, 0x9f, 0xb3, 0x27, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8166 = { .name = "ecdsa_secp256r1_sha512_8166", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8166_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8166_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8166_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8167 for ECDSA, tcId is 288 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8167_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8167_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8167_sig[] = { 0xea, 0x68, 0xb2, 0x48, 0x43, 0xb2, 0x25, 0xf5, 0x05, 0xe0, 0x1c, 0x0e, 0x60, 0x8b, 0x20, 0xb4, 0xd9, 0x3e, 0x8f, 0xaf, 0x6b, 0x9c, 0xf7, 0x0c, 0xf8, 0xf9, 0x13, 0x4a, 0x80, 0xe7, 0xb6, 0x68, 0xa3, 0xab, 0xc0, 0x44, 0xb4, 0x72, 0x8f, 0x80, 0xfe, 0x41, 0x4b, 0xdc, 0x66, 0xf0, 0x32, 0xb2, 0x62, 0x35, 0x67, 0x20, 0x54, 0x7b, 0xec, 0x77, 0x29, 0xfa, 0xd9, 0x41, 0x51, 0xc6, 0xad, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8167 = { .name = "ecdsa_secp256r1_sha512_8167", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8167_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8167_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8167_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8168 for ECDSA, tcId is 289 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8168_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8168_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8168_sig[] = { 0xbf, 0xe7, 0x50, 0x21, 0x40, 0xc5, 0x7a, 0x24, 0xa7, 0x7e, 0xdc, 0x3d, 0x9b, 0x3c, 0x4b, 0xc1, 0x1d, 0x21, 0xbd, 0xb0, 0xb1, 0x96, 0x97, 0x7b, 0x7f, 0x2b, 0x13, 0xac, 0x97, 0x3a, 0xd6, 0x97, 0x94, 0x7a, 0x01, 0xda, 0x97, 0x31, 0x84, 0x9d, 0x72, 0xb6, 0x7e, 0xf7, 0xbc, 0x40, 0xb0, 0x12, 0x48, 0x0f, 0xd3, 0x89, 0x89, 0x5a, 0xad, 0x1f, 0x6b, 0x1c, 0xdb, 0xea, 0xb3, 0xb9, 0x3b, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8168 = { .name = "ecdsa_secp256r1_sha512_8168", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8168_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8168_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8168_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8169 for ECDSA, tcId is 290 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8169_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8169_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8169_sig[] = { 0x34, 0x34, 0xee, 0x11, 0x42, 0x74, 0x0a, 0x0a, 0xb8, 0x62, 0x3b, 0x97, 0xfc, 0x8d, 0xc2, 0x56, 0x7e, 0xda, 0x45, 0xda, 0xdf, 0x60, 0x39, 0xb4, 0x5c, 0x44, 0x88, 0x19, 0xe8, 0x40, 0xcf, 0x30, 0x3c, 0x0f, 0xac, 0x04, 0x87, 0x84, 0x19, 0x97, 0x20, 0x2c, 0x29, 0xf3, 0xbf, 0x2d, 0xf5, 0x40, 0xb1, 0x15, 0xb2, 0x9d, 0xc6, 0x19, 0x16, 0x0d, 0x52, 0x20, 0x3d, 0x4a, 0x1f, 0xd4, 0xb9, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8169 = { .name = "ecdsa_secp256r1_sha512_8169", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8169_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8169_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8169_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8170 for ECDSA, tcId is 291 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8170_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8170_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8170_sig[] = { 0x53, 0x38, 0x50, 0x0e, 0x23, 0xba, 0x96, 0xa0, 0xad, 0xc6, 0xef, 0x84, 0x93, 0x2e, 0x25, 0xfb, 0xad, 0x74, 0x35, 0xd9, 0xf7, 0x0e, 0xb7, 0xf4, 0x76, 0xc6, 0x91, 0x2d, 0xe1, 0x2e, 0x33, 0xc8, 0xa0, 0x02, 0xf5, 0x58, 0x3e, 0xa8, 0xc0, 0xd7, 0xfb, 0x17, 0x13, 0x6d, 0x0e, 0xe0, 0x41, 0x5a, 0xcf, 0x62, 0x98, 0x79, 0xce, 0x6b, 0x01, 0xac, 0x52, 0xe3, 0xec, 0xd7, 0x77, 0x2a, 0x37, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8170 = { .name = "ecdsa_secp256r1_sha512_8170", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8170_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8170_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8170_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8171 for ECDSA, tcId is 292 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8171_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8171_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8171_sig[] = { 0x4f, 0xf2, 0xd4, 0xe3, 0x1f, 0x41, 0x80, 0xde, 0x69, 0x01, 0xd2, 0xd2, 0x03, 0x41, 0xd1, 0x23, 0x87, 0xc9, 0xc5, 0x5f, 0x4c, 0xf0, 0x03, 0xa7, 0x42, 0xf0, 0x49, 0xb8, 0x4a, 0xf6, 0xfe, 0x05, 0x03, 0x12, 0xf3, 0x87, 0x71, 0x41, 0x45, 0x55, 0xfa, 0x5e, 0xd2, 0x81, 0x7d, 0xcc, 0x62, 0x9a, 0x8c, 0x7c, 0xf6, 0x9d, 0x30, 0x63, 0x00, 0xe8, 0x7b, 0xc1, 0x67, 0x27, 0x8e, 0xc3, 0xef, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8171 = { .name = "ecdsa_secp256r1_sha512_8171", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8171_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8171_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8171_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8172 for ECDSA, tcId is 293 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8172_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8172_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8172_sig[] = { 0x51, 0xd6, 0x65, 0xba, 0xd5, 0xf2, 0xd6, 0x30, 0x6c, 0x6b, 0xbf, 0xe1, 0xf2, 0x75, 0x55, 0x88, 0x76, 0x70, 0x06, 0x1d, 0x4d, 0xf3, 0x6e, 0xc9, 0xf4, 0xce, 0x6c, 0xdf, 0xaf, 0x9e, 0xa7, 0xac, 0x29, 0x05, 0xe4, 0x3f, 0x62, 0x07, 0xee, 0x93, 0xdf, 0x35, 0xa2, 0xe9, 0xfb, 0x9b, 0xc8, 0x09, 0x8c, 0x44, 0x8a, 0xe9, 0x8a, 0x14, 0xe4, 0xad, 0x1e, 0xba, 0xea, 0x5d, 0x56, 0xb6, 0xe4, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8172 = { .name = "ecdsa_secp256r1_sha512_8172", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8172_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8172_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8172_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8173 for ECDSA, tcId is 294 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8173_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8173_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8173_sig[] = { 0xb8, 0x04, 0xe0, 0x23, 0x5f, 0x13, 0x5a, 0xba, 0x7b, 0x75, 0x31, 0xb6, 0x83, 0x1f, 0x26, 0xcc, 0x9f, 0xb7, 0x7d, 0x3f, 0x83, 0x85, 0x49, 0x57, 0x43, 0x1b, 0xe2, 0x07, 0x06, 0xb8, 0x13, 0x69, 0x9d, 0x31, 0x7f, 0xd0, 0x8e, 0x4e, 0x04, 0x67, 0x61, 0x7d, 0xb8, 0x19, 0xcd, 0xe1, 0xd7, 0xd4, 0xd7, 0x4d, 0xa4, 0x89, 0xb2, 0xbc, 0xe4, 0xdb, 0x05, 0x5e, 0xa0, 0x1e, 0xcc, 0xfa, 0xfc, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8173 = { .name = "ecdsa_secp256r1_sha512_8173", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8173_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8173_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8173_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8174 for ECDSA, tcId is 295 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8174_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8174_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8174_sig[] = { 0x8a, 0xb5, 0x0e, 0xf3, 0x66, 0x0c, 0xcb, 0x6a, 0xf3, 0x4c, 0x78, 0xe7, 0x95, 0xde, 0xd6, 0xb2, 0x56, 0xff, 0xca, 0x5c, 0x94, 0xf2, 0x49, 0xf3, 0xd9, 0x07, 0xfb, 0x65, 0x23, 0x5e, 0xf6, 0x80, 0x49, 0xd5, 0xaa, 0xea, 0xe5, 0xa6, 0xd0, 0xc1, 0x5b, 0x28, 0x6e, 0x42, 0x8b, 0x5e, 0x72, 0x0c, 0xf3, 0x7a, 0x82, 0x2e, 0xde, 0x44, 0x5b, 0xaa, 0x14, 0x3f, 0xfa, 0xe6, 0x9a, 0xba, 0x91, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8174 = { .name = "ecdsa_secp256r1_sha512_8174", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8174_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8174_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8174_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8175 for ECDSA, tcId is 296 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8175_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8175_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8175_sig[] = { 0x57, 0x1b, 0x9c, 0x46, 0xa4, 0x7c, 0x5c, 0xc5, 0x3a, 0x57, 0x4c, 0x19, 0x6c, 0x3f, 0xb0, 0x7f, 0x35, 0x10, 0xc0, 0xf4, 0x44, 0x3b, 0x9f, 0x2f, 0xe7, 0x81, 0x25, 0x2c, 0x24, 0xd3, 0x43, 0xde, 0x68, 0xa9, 0xae, 0xbd, 0x50, 0xff, 0x16, 0x5c, 0x89, 0xb5, 0xb9, 0xcb, 0x6c, 0x17, 0x54, 0x19, 0x19, 0x58, 0xf3, 0x60, 0xb4, 0xd2, 0x85, 0x1a, 0x48, 0x1a, 0x3e, 0x11, 0x06, 0xee, 0x78, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8175 = { .name = "ecdsa_secp256r1_sha512_8175", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8175_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8175_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8175_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8176 for ECDSA, tcId is 297 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8176_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8176_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8176_sig[] = { 0x4c, 0xb7, 0x81, 0x7b, 0x04, 0xdc, 0x73, 0xbe, 0x60, 0xd3, 0x71, 0x18, 0x03, 0xbc, 0x10, 0x68, 0x7a, 0x6e, 0x3f, 0x4a, 0xb7, 0x9c, 0x4c, 0x1a, 0x4e, 0x9d, 0x63, 0xa7, 0x31, 0x74, 0xd4, 0xeb, 0xce, 0x39, 0x8d, 0x2d, 0x66, 0x02, 0xd2, 0xaf, 0x58, 0xa6, 0x40, 0x42, 0xf8, 0x30, 0xbf, 0x77, 0x4a, 0xee, 0x18, 0x20, 0x9d, 0x6f, 0xb5, 0xc7, 0x43, 0xb6, 0xa6, 0xe4, 0x37, 0x82, 0x6b, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8176 = { .name = "ecdsa_secp256r1_sha512_8176", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8176_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8176_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8176_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8177 for ECDSA, tcId is 298 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8177_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8177_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8177_sig[] = { 0x68, 0x43, 0x99, 0xc6, 0xcd, 0x6e, 0xbb, 0x1c, 0x5d, 0x5e, 0xfb, 0x0d, 0x78, 0xdc, 0xe4, 0x0e, 0xbd, 0x48, 0xd9, 0xd9, 0x44, 0xeb, 0x65, 0x48, 0xc9, 0xce, 0x68, 0xd7, 0xfd, 0xc8, 0x22, 0x29, 0xcf, 0x25, 0xc8, 0xe4, 0x27, 0xfa, 0xe3, 0x59, 0xbf, 0xe6, 0x0f, 0xa0, 0x29, 0x64, 0xf4, 0xc9, 0xb8, 0xd6, 0xdb, 0x54, 0x61, 0x2e, 0x05, 0xc7, 0x8c, 0x34, 0x1f, 0x0a, 0x8c, 0x52, 0xd0, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8177 = { .name = "ecdsa_secp256r1_sha512_8177", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8177_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8177_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8177_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8178 for ECDSA, tcId is 299 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8178_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8178_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8178_sig[] = { 0x20, 0xb7, 0xb3, 0x6d, 0x5b, 0xc7, 0x6f, 0xa1, 0x82, 0xca, 0x27, 0x15, 0x2a, 0x99, 0xa9, 0x56, 0xe6, 0xa0, 0x88, 0x00, 0x00, 0x69, 0x42, 0x96, 0xe3, 0x1a, 0xf9, 0x8a, 0x73, 0x12, 0xd0, 0x4b, 0xee, 0xea, 0xbc, 0x55, 0x21, 0xf9, 0x85, 0x6e, 0x92, 0x0e, 0xb7, 0xd2, 0x9e, 0xd7, 0xe4, 0x04, 0x2f, 0x17, 0x8f, 0xf7, 0x06, 0xdf, 0xf8, 0xee, 0xb2, 0x4b, 0x42, 0x9e, 0x3b, 0x63, 0x40, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8178 = { .name = "ecdsa_secp256r1_sha512_8178", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8178_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8178_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8178_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8179 for ECDSA, tcId is 300 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8179_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8179_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8179_sig[] = { 0x6b, 0x65, 0xc9, 0x5e, 0x8e, 0x12, 0x1d, 0x2e, 0x6e, 0xe5, 0x06, 0xcf, 0xd6, 0x2c, 0xb8, 0x8e, 0x0b, 0xfb, 0x35, 0x89, 0xda, 0x40, 0x87, 0x68, 0x98, 0xef, 0x66, 0xc4, 0x39, 0x82, 0xac, 0xa9, 0x09, 0x64, 0x2c, 0x05, 0xad, 0x61, 0x9b, 0x44, 0x02, 0xfd, 0x29, 0x7e, 0xb5, 0x7e, 0x29, 0xcc, 0xa5, 0xc2, 0xeb, 0x68, 0x23, 0x93, 0x1b, 0xa8, 0x2d, 0xe3, 0x2d, 0x7c, 0x65, 0x2b, 0xa7, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8179 = { .name = "ecdsa_secp256r1_sha512_8179", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8179_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8179_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8179_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8180 for ECDSA, tcId is 301 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8180_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8180_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8180_sig[] = { 0x67, 0xc7, 0x4c, 0xbf, 0x5e, 0xa4, 0xb7, 0x77, 0xbf, 0x52, 0x1a, 0xce, 0x09, 0x9f, 0x4f, 0x09, 0x4d, 0x8f, 0x58, 0x90, 0x0e, 0x15, 0xe6, 0x7e, 0x1b, 0x4b, 0xd3, 0x99, 0x05, 0x66, 0x29, 0xed, 0x3d, 0x28, 0x84, 0x65, 0x5c, 0x49, 0xb8, 0xb5, 0xf6, 0x4e, 0x80, 0x2a, 0x05, 0x4e, 0x7b, 0xf0, 0x9b, 0x0f, 0xc8, 0x0c, 0xa1, 0x8e, 0xbf, 0x92, 0x7b, 0x82, 0xe5, 0x8b, 0xb4, 0xa0, 0x04, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8180 = { .name = "ecdsa_secp256r1_sha512_8180", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8180_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8180_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8180_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8181 for ECDSA, tcId is 302 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8181_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8181_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8181_sig[] = { 0x79, 0xa5, 0xe4, 0x0d, 0xa5, 0xcf, 0x34, 0xc4, 0xc3, 0x9a, 0xdf, 0x7d, 0xfc, 0x5d, 0x45, 0x49, 0x95, 0xa2, 0x50, 0x31, 0x4e, 0xbd, 0x21, 0x2b, 0x5c, 0x8e, 0x3f, 0x4e, 0x6f, 0x87, 0x5f, 0xeb, 0xb2, 0x68, 0x92, 0x0e, 0x40, 0x3b, 0xa1, 0x78, 0x28, 0xff, 0x27, 0x19, 0x38, 0xa6, 0x55, 0x8a, 0x5b, 0x2d, 0xd0, 0x00, 0x22, 0x9f, 0x8e, 0xdb, 0x4a, 0x9d, 0x9f, 0x9b, 0x6a, 0xc1, 0xb4, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8181 = { .name = "ecdsa_secp256r1_sha512_8181", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8181_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8181_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8181_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8182 for ECDSA, tcId is 303 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8182_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8182_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8182_sig[] = { 0xc8, 0xb1, 0x30, 0x06, 0xc3, 0xa5, 0x1a, 0x32, 0x2f, 0xff, 0x93, 0x21, 0x76, 0x1b, 0x01, 0xde, 0x13, 0x4f, 0x52, 0x6b, 0xe5, 0x82, 0xb2, 0x2e, 0x19, 0x69, 0x3c, 0x44, 0x3f, 0xc9, 0xfe, 0x46, 0x34, 0xe7, 0xf6, 0x01, 0x79, 0xc6, 0x16, 0x2a, 0xb9, 0x80, 0xfc, 0xd5, 0x8f, 0x17, 0x3b, 0x0e, 0x6c, 0x30, 0xb5, 0x24, 0xd3, 0x5c, 0x67, 0x92, 0x16, 0x77, 0x52, 0x2d, 0xce, 0xf8, 0x43, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8182 = { .name = "ecdsa_secp256r1_sha512_8182", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8182_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8182_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8182_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8183 for ECDSA, tcId is 304 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8183_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8183_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8183_sig[] = { 0x35, 0x13, 0xdb, 0x74, 0x54, 0x89, 0xa4, 0x87, 0xc8, 0x8a, 0x6c, 0xed, 0xf8, 0x79, 0x5b, 0x64, 0x0f, 0x8f, 0x71, 0x57, 0x83, 0x97, 0xbd, 0xab, 0xd6, 0xcc, 0x58, 0x6c, 0x25, 0xbd, 0x66, 0xad, 0x99, 0xa7, 0x2c, 0xd3, 0xf0, 0xca, 0x6c, 0x79, 0x91, 0x49, 0x28, 0x3c, 0xa0, 0xaf, 0x37, 0xf8, 0x6b, 0x88, 0x20, 0x0d, 0x0c, 0x90, 0x5b, 0xd3, 0xc9, 0xf1, 0xb8, 0x59, 0xe5, 0x5b, 0x16, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8183 = { .name = "ecdsa_secp256r1_sha512_8183", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8183_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8183_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8183_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8184 for ECDSA, tcId is 305 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8184_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8184_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8184_sig[] = { 0x3a, 0x63, 0x86, 0xaf, 0xb0, 0x8f, 0x7f, 0xf8, 0x14, 0x0b, 0x5a, 0x27, 0x0f, 0x76, 0x4e, 0x87, 0x06, 0xef, 0x28, 0x30, 0xfb, 0x17, 0x74, 0x46, 0xf7, 0xb4, 0xee, 0xb8, 0xa2, 0x5a, 0xac, 0x64, 0x4b, 0x70, 0x85, 0x4b, 0x38, 0xc2, 0x92, 0x45, 0xb2, 0xb9, 0x80, 0xeb, 0xa1, 0x0e, 0xa9, 0x36, 0xc6, 0x8a, 0x38, 0xc1, 0xda, 0x52, 0x55, 0xce, 0x23, 0x86, 0xdb, 0x23, 0xaf, 0xc7, 0xc0, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8184 = { .name = "ecdsa_secp256r1_sha512_8184", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8184_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8184_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8184_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8185 for ECDSA, tcId is 306 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8185_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8185_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8185_sig[] = { 0xb8, 0xfc, 0x54, 0xa8, 0xa6, 0xbe, 0x3c, 0x55, 0xe9, 0x9c, 0x06, 0xf9, 0x9c, 0xcd, 0xcc, 0xe7, 0xaf, 0x5c, 0x18, 0xa3, 0xc5, 0x82, 0x97, 0x26, 0xa8, 0x70, 0xcc, 0x10, 0x68, 0x45, 0x8f, 0x64, 0xcc, 0x72, 0x37, 0xc3, 0x9c, 0x8e, 0x6a, 0x4a, 0x1c, 0x8c, 0x62, 0xf5, 0xf8, 0x86, 0x36, 0x54, 0x9c, 0x74, 0x10, 0x79, 0x8b, 0x89, 0x68, 0x4c, 0x50, 0x2c, 0x3a, 0xdf, 0xe5, 0xfb, 0x7a, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8185 = { .name = "ecdsa_secp256r1_sha512_8185", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8185_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8185_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8185_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8186 for ECDSA, tcId is 307 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8186_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8186_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8186_sig[] = { 0x47, 0xb4, 0x60, 0x85, 0x1e, 0x56, 0x07, 0xf2, 0x02, 0x16, 0x26, 0x63, 0x5c, 0x56, 0x5a, 0x63, 0xf7, 0x8f, 0x55, 0x87, 0x95, 0xe1, 0xb3, 0x30, 0xd0, 0x91, 0x15, 0x97, 0x0d, 0xbb, 0xb8, 0xab, 0xa6, 0xa9, 0xf4, 0xf2, 0x13, 0xe0, 0x8d, 0x3c, 0x73, 0x6d, 0x3e, 0x1c, 0x44, 0xa3, 0x51, 0x40, 0xcb, 0x10, 0x76, 0x19, 0xf2, 0x65, 0xa5, 0xb1, 0x36, 0x08, 0xed, 0x72, 0x9f, 0xd6, 0xd8, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8186 = { .name = "ecdsa_secp256r1_sha512_8186", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8186_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8186_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8186_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8187 for ECDSA, tcId is 308 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8187_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8187_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8187_sig[] = { 0x8c, 0xfd, 0xa4, 0xf7, 0xa6, 0x58, 0x64, 0xeb, 0xbe, 0xa3, 0x14, 0x48, 0x63, 0xda, 0x9b, 0x07, 0x5c, 0x07, 0xb5, 0xb4, 0x2c, 0xb4, 0x56, 0x96, 0x43, 0xdd, 0xfd, 0x70, 0xdd, 0x75, 0x3b, 0x19, 0x59, 0x57, 0x84, 0xb1, 0xab, 0x21, 0x78, 0x74, 0xb8, 0x2b, 0x95, 0x85, 0x52, 0x1f, 0x80, 0x90, 0xb9, 0xf6, 0x32, 0x28, 0x84, 0xab, 0x7a, 0x62, 0x04, 0x64, 0xf5, 0x1c, 0xf8, 0x46, 0xc5, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8187 = { .name = "ecdsa_secp256r1_sha512_8187", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8187_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8187_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8187_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8188 for ECDSA, tcId is 309 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8188_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8188_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8188_sig[] = { 0x4c, 0xd6, 0xa4, 0x5b, 0xd7, 0xc8, 0xbf, 0x0e, 0xdb, 0xdf, 0x07, 0x3d, 0xbf, 0x1f, 0x74, 0x62, 0x34, 0xcb, 0xbc, 0xa3, 0x1e, 0xc2, 0x0b, 0x52, 0x6b, 0x07, 0x7c, 0x9f, 0x48, 0x00, 0x96, 0xe7, 0x7c, 0xf9, 0x7a, 0xe0, 0xd3, 0x3f, 0x50, 0xb7, 0x3a, 0x5d, 0x7a, 0xdf, 0x8a, 0xa4, 0xee, 0xeb, 0x6f, 0xf1, 0x0f, 0x89, 0xa8, 0x79, 0x4e, 0xfe, 0x1d, 0x87, 0x4e, 0x23, 0x29, 0x9c, 0x1b, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8188 = { .name = "ecdsa_secp256r1_sha512_8188", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8188_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8188_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8188_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8189 for ECDSA, tcId is 310 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8189_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8189_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8189_sig[] = { 0x2e, 0x23, 0x3f, 0x4d, 0xf8, 0xff, 0xeb, 0xea, 0xec, 0x64, 0x84, 0x2b, 0x23, 0xcc, 0xe1, 0x61, 0xc8, 0x0d, 0x30, 0x3b, 0x01, 0x6e, 0xca, 0x56, 0x24, 0x29, 0xb2, 0x27, 0xae, 0x2b, 0x58, 0xec, 0x46, 0xb6, 0xb5, 0x6a, 0xde, 0xc8, 0x2f, 0x82, 0xb5, 0x4d, 0xaa, 0x6a, 0x5f, 0xca, 0x28, 0x67, 0x40, 0xa1, 0x70, 0x48, 0x28, 0x05, 0x20, 0x72, 0xa5, 0xf0, 0xbc, 0x8c, 0x7b, 0x88, 0x42, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8189 = { .name = "ecdsa_secp256r1_sha512_8189", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8189_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8189_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8189_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8190 for ECDSA, tcId is 311 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8190_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8190_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8190_sig[] = { 0x54, 0x9f, 0x65, 0x8d, 0x4a, 0x3f, 0x98, 0x23, 0x3a, 0x2c, 0x93, 0xbd, 0x5b, 0x1a, 0x52, 0xd6, 0x4a, 0xf1, 0x08, 0x15, 0xae, 0x60, 0xbe, 0xcb, 0x41, 0x39, 0xca, 0xc8, 0x22, 0xb5, 0x79, 0xc3, 0x27, 0xbd, 0xdd, 0xf0, 0xdb, 0xcf, 0x37, 0x4a, 0x2a, 0xec, 0x8a, 0xcc, 0xc4, 0x7a, 0x8a, 0xc8, 0x97, 0xf8, 0xd1, 0x82, 0x3d, 0xda, 0x8e, 0xb2, 0x05, 0x25, 0x90, 0x97, 0x0b, 0x39, 0xce, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8190 = { .name = "ecdsa_secp256r1_sha512_8190", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8190_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8190_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8190_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8191 for ECDSA, tcId is 312 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8191_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8191_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8191_sig[] = { 0x9f, 0xab, 0xcc, 0x1e, 0x5f, 0xd9, 0x65, 0x22, 0x69, 0x02, 0xf5, 0x94, 0x55, 0x9e, 0x23, 0x13, 0x69, 0xe5, 0x84, 0x45, 0x39, 0x74, 0xe7, 0x4f, 0x49, 0xd7, 0xd7, 0x62, 0xe1, 0x34, 0xfb, 0x9d, 0x29, 0x3c, 0xcc, 0xc5, 0x10, 0x79, 0x3b, 0xac, 0x45, 0xce, 0x5d, 0xa2, 0xbb, 0x6c, 0x9e, 0x90, 0x64, 0x37, 0xf5, 0x94, 0x35, 0xca, 0x20, 0x66, 0x55, 0xf7, 0x4b, 0x62, 0x5d, 0xf0, 0x7c, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8191 = { .name = "ecdsa_secp256r1_sha512_8191", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8191_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8191_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8191_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8192 for ECDSA, tcId is 313 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8192_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8192_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8192_sig[] = { 0x2e, 0x5c, 0x14, 0x0f, 0xd6, 0xf5, 0xf8, 0x23, 0xad, 0xdc, 0x80, 0x88, 0xff, 0xaa, 0xe9, 0x67, 0xe7, 0xf4, 0x89, 0x72, 0x74, 0x31, 0x67, 0x69, 0x56, 0x1d, 0xfb, 0x31, 0x43, 0x58, 0x25, 0xd9, 0xed, 0xa4, 0x73, 0x27, 0xd7, 0xcf, 0xae, 0x1d, 0xaa, 0x34, 0x4f, 0xf5, 0x58, 0x2a, 0x46, 0x7b, 0xd1, 0x8e, 0xb9, 0xf0, 0x1c, 0xae, 0xab, 0x9c, 0x6d, 0xa3, 0xc0, 0xcc, 0x89, 0xdf, 0x67, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8192 = { .name = "ecdsa_secp256r1_sha512_8192", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8192_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8192_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8192_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8193 for ECDSA, tcId is 314 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8193_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8193_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8193_sig[] = { 0x4c, 0x11, 0xe3, 0xb7, 0xef, 0xbe, 0x39, 0x08, 0xad, 0x21, 0x18, 0xe5, 0x4d, 0x7d, 0x34, 0xd6, 0xc6, 0xeb, 0x45, 0x70, 0xbf, 0x7f, 0xdb, 0x11, 0xa7, 0x67, 0x9f, 0xe9, 0x3a, 0xfa, 0x25, 0x4c, 0x71, 0x2e, 0x90, 0xf4, 0x21, 0x83, 0x6e, 0x54, 0x2d, 0xac, 0x49, 0xd1, 0x0b, 0xb3, 0x9d, 0xb4, 0xa9, 0x8b, 0x27, 0x35, 0xb6, 0x33, 0x6d, 0x8a, 0x3c, 0x39, 0x2f, 0x3b, 0x90, 0xe6, 0x0b, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8193 = { .name = "ecdsa_secp256r1_sha512_8193", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8193_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8193_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8193_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8194 for ECDSA, tcId is 315 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8194_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8194_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8194_sig[] = { 0xdf, 0xb4, 0x61, 0x93, 0x03, 0xf4, 0xff, 0x68, 0x95, 0x63, 0xd2, 0x27, 0x50, 0x69, 0xfa, 0xc4, 0x4d, 0x63, 0xea, 0x3c, 0x3b, 0x18, 0xf4, 0xfb, 0x1a, 0xc8, 0x05, 0xd7, 0xdf, 0x3d, 0x12, 0xec, 0x68, 0xe3, 0x7b, 0x84, 0x65, 0x83, 0x90, 0x1d, 0xb2, 0x56, 0x32, 0x9f, 0x9c, 0xf6, 0x4f, 0x40, 0xc4, 0x16, 0xfb, 0xa5, 0x0d, 0xcb, 0x9b, 0xe3, 0x33, 0xa3, 0xe2, 0x9c, 0x76, 0xae, 0x32, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8194 = { .name = "ecdsa_secp256r1_sha512_8194", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8194_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8194_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8194_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8195 for ECDSA, tcId is 316 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8195_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8195_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8195_sig[] = { 0xe7, 0x0e, 0x8e, 0x17, 0xbd, 0x75, 0x8f, 0xf0, 0xc4, 0x8f, 0x91, 0xcb, 0x2c, 0x53, 0xd2, 0x93, 0xf0, 0xf5, 0xae, 0x82, 0xeb, 0x9d, 0xfe, 0x76, 0xab, 0x98, 0xf9, 0xb0, 0x64, 0x27, 0x86, 0x35, 0x21, 0xdd, 0xe3, 0x2c, 0xb0, 0x38, 0x9c, 0xad, 0x7b, 0xdf, 0x67, 0x6d, 0x9b, 0x9b, 0x7d, 0x25, 0xbb, 0x03, 0x4a, 0xd2, 0x5a, 0x55, 0xea, 0x71, 0xee, 0x7e, 0xe2, 0x6a, 0x18, 0x35, 0x9d, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8195 = { .name = "ecdsa_secp256r1_sha512_8195", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8195_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8195_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8195_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8196 for ECDSA, tcId is 317 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8196_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8196_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8196_sig[] = { 0x42, 0x13, 0x97, 0xec, 0xae, 0x30, 0x61, 0x7a, 0x5a, 0x60, 0x81, 0xad, 0x1b, 0xad, 0xf6, 0xce, 0x9d, 0x9d, 0x4c, 0xb2, 0xaf, 0xda, 0xbf, 0x1f, 0x90, 0x0e, 0x7f, 0xdb, 0x7f, 0xb0, 0xaf, 0x5a, 0x57, 0xca, 0x89, 0xdc, 0x22, 0x80, 0x1c, 0x75, 0xfd, 0xbe, 0xfd, 0xae, 0xca, 0x65, 0xc6, 0x75, 0x62, 0x5f, 0x94, 0xde, 0x7d, 0x63, 0x50, 0x62, 0xb0, 0x8e, 0xd3, 0x08, 0xdf, 0x57, 0x62, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8196 = { .name = "ecdsa_secp256r1_sha512_8196", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8196_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8196_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8196_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8197 for ECDSA, tcId is 318 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8197_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8197_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8197_sig[] = { 0x06, 0x10, 0xc0, 0x80, 0x76, 0x90, 0x9b, 0xb7, 0x22, 0xfb, 0xa1, 0x05, 0xc2, 0x3e, 0xac, 0x8f, 0x66, 0xb4, 0xdb, 0x1d, 0x58, 0xf6, 0x6a, 0x88, 0x2f, 0xc9, 0x0d, 0x59, 0xac, 0xde, 0xc8, 0xe0, 0xaf, 0x59, 0xe8, 0xd5, 0x70, 0x76, 0x1c, 0xac, 0x58, 0x9d, 0x49, 0xf1, 0x1c, 0x88, 0x40, 0x07, 0xf7, 0xac, 0x1e, 0xea, 0x1a, 0x44, 0xc6, 0xf3, 0xfd, 0xad, 0x1d, 0x54, 0x21, 0x87, 0xd2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8197 = { .name = "ecdsa_secp256r1_sha512_8197", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8197_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8197_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8197_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8198 for ECDSA, tcId is 319 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8198_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8198_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8198_sig[] = { 0x59, 0xa1, 0x18, 0x1c, 0xab, 0x0e, 0xe8, 0xce, 0x94, 0xab, 0x2b, 0x5a, 0xb4, 0xf4, 0xb1, 0x3a, 0x42, 0x2e, 0x38, 0xef, 0xe6, 0x9f, 0x63, 0x4b, 0xf9, 0x47, 0x48, 0x5a, 0x5b, 0x9e, 0xa4, 0x9c, 0x9b, 0x3c, 0x91, 0x3d, 0x98, 0xa4, 0xab, 0x15, 0xf6, 0xa3, 0x9f, 0x18, 0x02, 0xb8, 0xf2, 0xd2, 0x85, 0x59, 0xaa, 0x1f, 0x8d, 0x03, 0xa3, 0xa8, 0x8d, 0xf0, 0x0c, 0x89, 0xdc, 0x29, 0x3a, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8198 = { .name = "ecdsa_secp256r1_sha512_8198", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8198_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8198_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8198_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8199 for ECDSA, tcId is 320 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8199_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8199_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8199_sig[] = { 0x8c, 0xae, 0x6c, 0x4d, 0xfb, 0xf9, 0x01, 0xbd, 0x66, 0xab, 0x82, 0x54, 0x10, 0x11, 0xfa, 0x15, 0xc8, 0xe9, 0x0e, 0x2c, 0x18, 0xc0, 0x1b, 0xd8, 0x81, 0xac, 0xaa, 0x2b, 0x63, 0xcb, 0x58, 0x7b, 0xa8, 0x6a, 0xcf, 0x94, 0x3f, 0x29, 0xce, 0xf9, 0x1d, 0x1b, 0x66, 0xa7, 0xde, 0x55, 0x47, 0xdf, 0x6c, 0xdf, 0xc4, 0x5d, 0xd7, 0xbe, 0xf8, 0x16, 0xdc, 0xb8, 0xde, 0x9f, 0x5a, 0x42, 0x5d, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8199 = { .name = "ecdsa_secp256r1_sha512_8199", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8199_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8199_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8199_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8200 for ECDSA, tcId is 321 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8200_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8200_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8200_sig[] = { 0x8b, 0x00, 0xc7, 0x4b, 0x86, 0x47, 0x4d, 0x78, 0x2e, 0xac, 0x99, 0x74, 0xae, 0xa6, 0x06, 0xd8, 0xf7, 0xee, 0x78, 0xc7, 0x95, 0x97, 0xe1, 0x56, 0x87, 0x02, 0x1f, 0x59, 0x91, 0xe8, 0x6a, 0xcd, 0x30, 0x9d, 0xfe, 0x36, 0x86, 0x64, 0x8e, 0xae, 0x10, 0x4e, 0x87, 0xb3, 0xe9, 0xb5, 0x61, 0x6a, 0x3a, 0xd4, 0x79, 0xca, 0x4f, 0x0b, 0x55, 0x8a, 0xe4, 0xf1, 0xe5, 0xab, 0x31, 0x15, 0x34, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8200 = { .name = "ecdsa_secp256r1_sha512_8200", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8200_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8200_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8200_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8201 for ECDSA, tcId is 322 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8201_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8201_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8201_sig[] = { 0x43, 0x3a, 0x91, 0x55, 0x04, 0xc9, 0x77, 0x80, 0x96, 0x34, 0xa3, 0x6f, 0xcf, 0x44, 0x80, 0xe4, 0xc8, 0x06, 0x9f, 0xc1, 0x27, 0xd2, 0x01, 0xd3, 0x0d, 0xfd, 0xb1, 0xf4, 0x23, 0xc9, 0x5f, 0xd4, 0xbc, 0xb1, 0xb8, 0x9a, 0xaf, 0xd5, 0x0a, 0x17, 0x66, 0xb0, 0x97, 0x41, 0xfc, 0x6a, 0x9a, 0x96, 0xe7, 0x44, 0xae, 0x98, 0x26, 0xd8, 0x39, 0xbf, 0x85, 0xff, 0xb5, 0x0a, 0x91, 0x98, 0x17, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8201 = { .name = "ecdsa_secp256r1_sha512_8201", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8201_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8201_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8201_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8202 for ECDSA, tcId is 323 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8202_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8202_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8202_sig[] = { 0x4b, 0x69, 0xab, 0xd2, 0xb3, 0x98, 0x40, 0xa5, 0x45, 0xcd, 0xd4, 0xa7, 0x2d, 0x38, 0x42, 0x34, 0x58, 0x0e, 0x2f, 0xd9, 0x38, 0xb7, 0x09, 0x1d, 0x0e, 0xcd, 0xb5, 0x62, 0x78, 0x08, 0x57, 0xdb, 0xfd, 0xab, 0x99, 0x57, 0x11, 0x9e, 0x0a, 0x40, 0x92, 0xaf, 0x82, 0xf6, 0xcc, 0x29, 0xf3, 0xc8, 0xa6, 0x92, 0x67, 0x1e, 0xc8, 0x6e, 0xfb, 0x0a, 0x03, 0xc1, 0x11, 0x2a, 0x0a, 0x1e, 0x04, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8202 = { .name = "ecdsa_secp256r1_sha512_8202", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8202_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8202_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8202_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8203 for ECDSA, tcId is 324 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8203_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8203_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8203_sig[] = { 0xda, 0xb9, 0xd3, 0x68, 0x6c, 0x28, 0x36, 0x3a, 0xd0, 0x17, 0xb4, 0xa2, 0xb3, 0x6d, 0x35, 0xbf, 0x2e, 0xb8, 0x06, 0x33, 0x61, 0x3d, 0x44, 0xde, 0xb9, 0x50, 0x1d, 0x42, 0xa3, 0xef, 0xbd, 0x38, 0x13, 0x92, 0xa5, 0x62, 0xd7, 0x9f, 0x9a, 0xb1, 0x90, 0x14, 0xe4, 0xf7, 0xe2, 0xf2, 0x66, 0x82, 0x59, 0xf3, 0x72, 0x0a, 0x76, 0xc1, 0x20, 0xd4, 0xa3, 0xc3, 0x96, 0x4e, 0x88, 0x0f, 0x76, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8203 = { .name = "ecdsa_secp256r1_sha512_8203", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8203_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8203_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8203_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8204 for ECDSA, tcId is 325 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8204_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8204_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8204_sig[] = { 0x23, 0xf9, 0x4e, 0x47, 0xb4, 0x40, 0xce, 0x37, 0x9b, 0x74, 0xc9, 0x31, 0x12, 0x32, 0xb1, 0x9a, 0x64, 0xe3, 0xe7, 0xc9, 0xb9, 0x0d, 0xa3, 0x4b, 0x0c, 0x1c, 0x3f, 0x3d, 0x7a, 0xf2, 0x81, 0x05, 0xe1, 0x42, 0x59, 0x03, 0xb1, 0x47, 0x9c, 0x2c, 0xe1, 0x8b, 0x10, 0x8a, 0x6d, 0x1e, 0xc8, 0xb7, 0xa4, 0xf0, 0xf6, 0x57, 0xde, 0xdb, 0x00, 0xde, 0x3a, 0x3c, 0xee, 0xa7, 0xfd, 0xee, 0xe9, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8204 = { .name = "ecdsa_secp256r1_sha512_8204", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8204_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8204_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8204_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8205 for ECDSA, tcId is 326 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8205_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8205_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8205_sig[] = { 0x9d, 0x70, 0x6a, 0x8f, 0xa8, 0x5d, 0x15, 0xbd, 0x0c, 0x34, 0x92, 0xc6, 0x67, 0x2d, 0xfe, 0x52, 0x9f, 0x40, 0x73, 0xb2, 0x17, 0xb3, 0x94, 0x7b, 0x5b, 0x2c, 0xfd, 0x61, 0xf8, 0x7c, 0xcb, 0x71, 0x6a, 0xaa, 0xaf, 0x36, 0x9f, 0x82, 0xa0, 0xe5, 0x42, 0xf7, 0x2d, 0xed, 0x7d, 0x7e, 0xb9, 0x0c, 0x83, 0x14, 0xff, 0xa6, 0x13, 0xa0, 0xea, 0x81, 0xda, 0x1c, 0x83, 0x93, 0xdb, 0xae, 0x2b, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8205 = { .name = "ecdsa_secp256r1_sha512_8205", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8205_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8205_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha512_8205_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8206 for ECDSA, tcId is 327 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8206_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8206_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8206_sig[] = { 0xac, 0x77, 0x91, 0x8c, 0x40, 0x85, 0xc8, 0xa7, 0xce, 0x50, 0x20, 0xb0, 0x0c, 0x31, 0x56, 0x29, 0xae, 0xe0, 0x53, 0xa4, 0x45, 0xcb, 0x46, 0x61, 0xeb, 0x50, 0xf6, 0xb6, 0x2a, 0x47, 0xda, 0x29, 0xdf, 0x2a, 0xea, 0x2b, 0x9c, 0x11, 0xa6, 0xce, 0x39, 0xd3, 0xcd, 0x9e, 0x1f, 0xaf, 0x4a, 0x53, 0x05, 0x7e, 0x0b, 0x1b, 0x2e, 0x48, 0xa3, 0x24, 0xbe, 0x9e, 0x77, 0x32, 0x03, 0xfe, 0x9f, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8206 = { .name = "ecdsa_secp256r1_sha512_8206", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8206_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8206_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8206_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8207 for ECDSA, tcId is 328 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8207_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8207_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8207_sig[] = { 0x9d, 0xb2, 0xdb, 0xd2, 0x93, 0x5f, 0x14, 0x7f, 0xae, 0x7f, 0x6a, 0x95, 0xc8, 0xe2, 0x30, 0x7b, 0xd8, 0x53, 0x7c, 0x3d, 0x96, 0xeb, 0x73, 0x2a, 0xd6, 0xd5, 0xeb, 0xdd, 0x89, 0xbc, 0x75, 0x4e, 0x93, 0xa9, 0xab, 0x99, 0xd2, 0xde, 0x9d, 0x08, 0xfe, 0x0a, 0x61, 0xe2, 0x6c, 0x8f, 0xe1, 0xeb, 0xbf, 0x88, 0x72, 0x6e, 0x4b, 0x69, 0xd5, 0x51, 0xb5, 0x7d, 0x15, 0xf0, 0xae, 0x16, 0xdf, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8207 = { .name = "ecdsa_secp256r1_sha512_8207", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8207_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8207_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8207_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8208 for ECDSA, tcId is 329 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8208_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8208_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8208_sig[] = { 0x76, 0x9f, 0x70, 0x09, 0x39, 0x39, 0xaf, 0xbd, 0x1f, 0xa1, 0x58, 0x73, 0xde, 0xcf, 0xa8, 0x03, 0xca, 0x52, 0x3a, 0xce, 0x80, 0x40, 0x28, 0x0b, 0xa7, 0x8c, 0xf8, 0x33, 0x49, 0x77, 0x22, 0xbc, 0x36, 0x98, 0x75, 0xab, 0xa5, 0xe1, 0xce, 0xd5, 0xa4, 0xca, 0x84, 0x44, 0xec, 0x93, 0x99, 0xa3, 0x80, 0x38, 0xb0, 0x0e, 0x15, 0x3a, 0x0a, 0xe3, 0x4d, 0x9b, 0x3c, 0x97, 0x81, 0x44, 0x7e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8208 = { .name = "ecdsa_secp256r1_sha512_8208", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8208_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8208_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8208_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8209 for ECDSA, tcId is 330 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8209_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8209_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8209_sig[] = { 0x26, 0xe5, 0x18, 0x2b, 0x98, 0x22, 0x55, 0x0a, 0xd5, 0x2f, 0x46, 0xad, 0x80, 0x78, 0x1d, 0x6b, 0xef, 0x3d, 0x11, 0x0a, 0x20, 0x4d, 0xb5, 0xe5, 0x8a, 0x07, 0x46, 0xf7, 0x96, 0x98, 0x22, 0x00, 0xa9, 0x41, 0x8e, 0x76, 0x02, 0x9c, 0xed, 0x0c, 0xf7, 0x8a, 0x57, 0x1a, 0x9e, 0x59, 0xad, 0x04, 0x08, 0x6e, 0x91, 0xf7, 0x0e, 0x68, 0x13, 0x98, 0x1b, 0xb3, 0x3c, 0x1d, 0xee, 0x89, 0x11, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8209 = { .name = "ecdsa_secp256r1_sha512_8209", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8209_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8209_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8209_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8210 for ECDSA, tcId is 331 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8210_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8210_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8210_sig[] = { 0xe7, 0xbd, 0x6a, 0xef, 0xcf, 0x7b, 0x27, 0xe1, 0xf3, 0xfa, 0xdb, 0xe7, 0x13, 0xf9, 0xad, 0xb3, 0xd2, 0x33, 0x98, 0xe8, 0x82, 0x00, 0xcd, 0x2e, 0x94, 0x98, 0x9c, 0x9d, 0x12, 0xe9, 0x21, 0x77, 0x95, 0x83, 0xe0, 0xde, 0x3b, 0x76, 0xf8, 0xd4, 0xb1, 0xe6, 0x34, 0xa8, 0x1c, 0xbc, 0x34, 0xaf, 0x54, 0xe2, 0xf8, 0x59, 0x9f, 0x36, 0x84, 0xce, 0x48, 0xd3, 0x72, 0x76, 0x0c, 0x82, 0x04, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8210 = { .name = "ecdsa_secp256r1_sha512_8210", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8210_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8210_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8210_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8211 for ECDSA, tcId is 332 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8211_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8211_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp256r1_sha512_8211_sig[] = { 0x86, 0x38, 0xed, 0x7e, 0xaa, 0x83, 0x60, 0x9a, 0x01, 0xa6, 0xaf, 0x9c, 0x52, 0xec, 0x9b, 0xfd, 0xdd, 0xa9, 0x04, 0x42, 0xb1, 0xe6, 0x03, 0x1d, 0x61, 0xcf, 0xa2, 0x2e, 0x48, 0xb2, 0xe1, 0xe2, 0x20, 0xc2, 0x84, 0xd5, 0x96, 0xf7, 0x1c, 0x6c, 0x8d, 0xf7, 0x32, 0xf5, 0xa5, 0xa2, 0x00, 0x63, 0x02, 0x30, 0x1e, 0x1a, 0x79, 0x2e, 0x2b, 0x39, 0x66, 0x3d, 0x93, 0xa9, 0x76, 0x07, 0x62, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8211 = { .name = "ecdsa_secp256r1_sha512_8211", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8211_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8211_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8211_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8212 for ECDSA, tcId is 333 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8212_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8212_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8212_sig[] = { 0x61, 0xd9, 0x24, 0x30, 0x7a, 0x96, 0x18, 0x0b, 0x06, 0x38, 0x36, 0x08, 0xba, 0x91, 0x67, 0x4e, 0x15, 0xc3, 0xea, 0x06, 0xff, 0x25, 0x34, 0x41, 0x2b, 0x93, 0xa5, 0x87, 0xdd, 0xe6, 0x49, 0xc1, 0x59, 0xb8, 0x4a, 0xa2, 0x11, 0x5b, 0x25, 0x47, 0xed, 0xac, 0x88, 0x08, 0x8c, 0xa6, 0x31, 0x3e, 0x9f, 0xbe, 0x1c, 0xa6, 0xa3, 0x61, 0xc7, 0xe5, 0x79, 0x38, 0xf9, 0xdd, 0xe3, 0xf4, 0x34, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8212 = { .name = "ecdsa_secp256r1_sha512_8212", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8212_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8212_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8212_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8213 for ECDSA, tcId is 334 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8213_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8213_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8213_sig[] = { 0x42, 0x4f, 0xcf, 0xc3, 0xfd, 0x63, 0xd1, 0x28, 0xc2, 0xeb, 0x12, 0x5e, 0x88, 0xc7, 0xfe, 0x5d, 0x28, 0x3b, 0x63, 0x47, 0x0a, 0x78, 0x6b, 0x82, 0x78, 0x3e, 0xdb, 0xb8, 0xa0, 0xb7, 0xa6, 0xd7, 0xb1, 0x15, 0x48, 0xc2, 0xcd, 0x7f, 0xce, 0x9d, 0x44, 0xe7, 0x95, 0xca, 0x51, 0xaf, 0x0b, 0x2f, 0x6a, 0x51, 0x80, 0xe9, 0xc9, 0xbe, 0x03, 0x14, 0x00, 0x7e, 0xd9, 0xe7, 0xf4, 0xbb, 0xe5, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8213 = { .name = "ecdsa_secp256r1_sha512_8213", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8213_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8213_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8213_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8214 for ECDSA, tcId is 335 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8214_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8214_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8214_sig[] = { 0xa5, 0xf7, 0x47, 0xae, 0x62, 0x90, 0xfa, 0x95, 0x82, 0xc6, 0xce, 0x8d, 0x56, 0x08, 0x62, 0x1d, 0x49, 0x5f, 0x06, 0x15, 0x51, 0xbc, 0x45, 0x31, 0xba, 0xcb, 0xa5, 0x86, 0xa5, 0x63, 0xb1, 0x84, 0x62, 0xfa, 0xf8, 0xf9, 0x22, 0x91, 0xe1, 0x28, 0x12, 0x83, 0x5b, 0x3f, 0x1d, 0x43, 0xc9, 0x67, 0xbc, 0xeb, 0x88, 0x5b, 0x11, 0x0b, 0xd0, 0x6e, 0x5a, 0x68, 0xe2, 0xd7, 0x47, 0x81, 0xae, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8214 = { .name = "ecdsa_secp256r1_sha512_8214", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8214_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8214_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8214_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8215 for ECDSA, tcId is 336 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8215_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8215_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8215_sig[] = { 0xb7, 0x31, 0xdc, 0x0d, 0x92, 0xc2, 0xcc, 0x7a, 0x60, 0x5d, 0x78, 0x23, 0x3f, 0x78, 0x14, 0x69, 0x9b, 0xdf, 0x1c, 0xab, 0x2d, 0xf2, 0x97, 0xb6, 0x84, 0x4e, 0xec, 0x40, 0x15, 0xaf, 0x8e, 0xa0, 0x39, 0xb1, 0xa0, 0xcc, 0x88, 0xeb, 0x85, 0xbc, 0xdc, 0x35, 0x6b, 0x36, 0x20, 0xc5, 0x1f, 0x12, 0x98, 0xc6, 0x0a, 0xec, 0x53, 0x06, 0xb1, 0x07, 0xe9, 0x00, 0xff, 0xdb, 0xa0, 0x49, 0xdd, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8215 = { .name = "ecdsa_secp256r1_sha512_8215", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8215_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8215_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8215_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8216 for ECDSA, tcId is 337 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8216_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8216_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8216_sig[] = { 0xef, 0x73, 0xc4, 0xfa, 0x32, 0x2d, 0xa3, 0x9f, 0xb6, 0x50, 0x3b, 0xab, 0x6b, 0x66, 0xb6, 0x4d, 0x24, 0x10, 0x56, 0xaf, 0xbc, 0xd6, 0x90, 0x8f, 0x84, 0xb6, 0x1c, 0xcb, 0xbe, 0x89, 0x04, 0x33, 0xf1, 0xef, 0x85, 0x41, 0x3e, 0x57, 0x64, 0xaa, 0x58, 0xa3, 0x12, 0x8c, 0xcf, 0xcf, 0x38, 0x83, 0x24, 0xfe, 0x53, 0x40, 0xe5, 0xed, 0xf8, 0xd0, 0x13, 0x5a, 0xe7, 0x67, 0x86, 0xce, 0x41, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8216 = { .name = "ecdsa_secp256r1_sha512_8216", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8216_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8216_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8216_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8217 for ECDSA, tcId is 338 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8217_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8217_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp256r1_sha512_8217_sig[] = { 0x69, 0x4c, 0xd3, 0x0e, 0x2a, 0xd0, 0x18, 0x25, 0x79, 0x33, 0x14, 0x74, 0xb2, 0x71, 0xee, 0x2d, 0x48, 0x72, 0x3b, 0xc8, 0x41, 0x5d, 0xc6, 0x51, 0x38, 0x73, 0x58, 0x6c, 0xe7, 0x05, 0xb7, 0x6b, 0xc5, 0xac, 0x0c, 0x0e, 0xd5, 0xa4, 0x01, 0x7d, 0x11, 0x0c, 0xb4, 0x5d, 0x63, 0xaa, 0x95, 0x5d, 0xc7, 0xdc, 0x5c, 0xe2, 0x3e, 0x79, 0x65, 0xc5, 0x39, 0x7c, 0x3f, 0xf4, 0x6a, 0x88, 0x46, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8217 = { .name = "ecdsa_secp256r1_sha512_8217", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8217_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8217_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8217_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8218 for ECDSA, tcId is 339 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8218_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8218_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8218_sig[] = { 0xf3, 0x8b, 0x22, 0x36, 0xbe, 0x30, 0x24, 0xe1, 0x0b, 0x89, 0x4f, 0xfb, 0x1c, 0xc6, 0x8d, 0x0b, 0xb8, 0xd4, 0xcf, 0x0f, 0xcd, 0x2c, 0xfc, 0x17, 0x79, 0xf8, 0x88, 0x37, 0x65, 0xd3, 0xcd, 0x96, 0xda, 0x69, 0xcd, 0x0b, 0x74, 0xc2, 0x55, 0x66, 0xd6, 0x0a, 0x48, 0x6e, 0xdd, 0x55, 0x9f, 0xc3, 0x9d, 0x56, 0x9f, 0xb2, 0x75, 0x14, 0x45, 0xa4, 0x79, 0x8d, 0xf8, 0xa3, 0x68, 0x91, 0x80, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8218 = { .name = "ecdsa_secp256r1_sha512_8218", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8218_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8218_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8218_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8219 for ECDSA, tcId is 340 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8219_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8219_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8219_sig[] = { 0xa8, 0x81, 0x73, 0x2c, 0x20, 0x5a, 0x0b, 0x4b, 0x95, 0x66, 0x9c, 0x00, 0x75, 0x6f, 0xd9, 0x19, 0x73, 0x45, 0x01, 0x09, 0xa4, 0x6f, 0x17, 0xd5, 0xa9, 0xd9, 0x71, 0xb5, 0xe9, 0x2b, 0x9a, 0xa4, 0x8a, 0xce, 0xfd, 0xca, 0x4e, 0x06, 0xc1, 0x6b, 0x47, 0xcc, 0xad, 0x1c, 0x57, 0xc0, 0x59, 0x12, 0x63, 0x7e, 0x10, 0x70, 0x96, 0xba, 0x23, 0x0c, 0x92, 0xb9, 0x71, 0x87, 0xdb, 0x79, 0xe1, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8219 = { .name = "ecdsa_secp256r1_sha512_8219", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8219_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8219_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8219_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8220 for ECDSA, tcId is 341 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8220_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8220_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8220_sig[] = { 0x04, 0x45, 0x2f, 0x55, 0x4b, 0xae, 0x81, 0x9b, 0x42, 0xef, 0xfb, 0x84, 0xef, 0x44, 0xa9, 0xf1, 0xcb, 0x7e, 0x2d, 0x75, 0xb4, 0xba, 0x9f, 0xf9, 0xb9, 0xcf, 0xff, 0xad, 0xdd, 0xe3, 0xfd, 0x1b, 0x61, 0xa3, 0xfb, 0xc5, 0xe7, 0x3c, 0x35, 0x0f, 0x2e, 0x3d, 0x85, 0xa7, 0x45, 0x2c, 0xd2, 0x31, 0xa3, 0xf3, 0x37, 0x5f, 0xc1, 0x1f, 0x5f, 0xe1, 0x53, 0xb1, 0x85, 0xf5, 0x3b, 0x09, 0xc1, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8220 = { .name = "ecdsa_secp256r1_sha512_8220", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8220_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8220_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8220_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8221 for ECDSA, tcId is 342 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8221_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8221_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8221_sig[] = { 0x05, 0x81, 0x4f, 0x57, 0xf5, 0x8e, 0xfc, 0x7c, 0xb4, 0x90, 0x11, 0x9e, 0x58, 0x4e, 0x63, 0x5e, 0x6f, 0x0a, 0xd1, 0xc1, 0x9f, 0xb5, 0xdc, 0x2e, 0xda, 0xfd, 0xa0, 0x75, 0xbb, 0x55, 0xf9, 0x8e, 0x9d, 0xd5, 0xc6, 0xe3, 0x90, 0x09, 0xd6, 0x7d, 0x96, 0x59, 0x03, 0xec, 0xff, 0xe0, 0x8a, 0x85, 0x17, 0x75, 0xcc, 0x12, 0x48, 0xcc, 0x19, 0xc0, 0xb7, 0x77, 0x98, 0x28, 0x21, 0x31, 0xb8, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8221 = { .name = "ecdsa_secp256r1_sha512_8221", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8221_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8221_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8221_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8222 for ECDSA, tcId is 343 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8222_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8222_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8222_sig[] = { 0xdc, 0x1c, 0x4a, 0x46, 0x08, 0x5e, 0x19, 0x88, 0x43, 0xb1, 0xf0, 0x19, 0x80, 0xcd, 0x5e, 0x4a, 0x1f, 0xf6, 0xf8, 0xe8, 0xff, 0x70, 0x14, 0x39, 0x7f, 0x0a, 0xfd, 0x5b, 0x24, 0x7f, 0xb0, 0xa0, 0x38, 0xa1, 0x3d, 0xc7, 0x23, 0xed, 0x90, 0xb3, 0x02, 0x51, 0xd7, 0x42, 0xb1, 0x47, 0x33, 0xa0, 0x32, 0x92, 0xff, 0x26, 0x53, 0x0a, 0x1e, 0xbc, 0xaf, 0x3d, 0x10, 0x86, 0x2a, 0x6e, 0xff, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8222 = { .name = "ecdsa_secp256r1_sha512_8222", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8222_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8222_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8222_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8223 for ECDSA, tcId is 344 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8223_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8223_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8223_sig[] = { 0x10, 0x67, 0x66, 0x7b, 0xf5, 0x25, 0x73, 0x4c, 0xa7, 0xf2, 0x51, 0x0e, 0x36, 0x34, 0x8f, 0xd9, 0xc2, 0xc9, 0xbc, 0xcf, 0x03, 0x2d, 0xfd, 0x57, 0x1d, 0xe6, 0xd4, 0x5a, 0xbd, 0x49, 0x36, 0x1a, 0xfa, 0x76, 0x25, 0x68, 0xd3, 0xa1, 0x9e, 0x5a, 0x1d, 0x8e, 0xa6, 0x5e, 0x00, 0x20, 0x2a, 0x5b, 0x16, 0xf9, 0xaf, 0xae, 0x56, 0x73, 0x3a, 0x01, 0xf8, 0x6e, 0x35, 0x37, 0x8c, 0x55, 0x8d, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8223 = { .name = "ecdsa_secp256r1_sha512_8223", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8223_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8223_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8223_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8224 for ECDSA, tcId is 345 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8224_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8224_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8224_sig[] = { 0xe5, 0x8d, 0x69, 0xdc, 0x56, 0xbc, 0x10, 0x31, 0x64, 0x48, 0x47, 0xe3, 0xe0, 0x46, 0xe2, 0xea, 0x84, 0x5a, 0x51, 0x5d, 0x96, 0x9d, 0x07, 0xea, 0x1a, 0xa5, 0x3a, 0xea, 0x5b, 0xd9, 0x2f, 0xa1, 0xbf, 0xe5, 0x0b, 0x80, 0xf7, 0xc5, 0x12, 0xf5, 0xab, 0x52, 0x1f, 0xe7, 0xe1, 0xa1, 0x31, 0x04, 0x5f, 0xde, 0x78, 0xd4, 0xde, 0x82, 0x6c, 0x91, 0x57, 0x3b, 0xaa, 0xba, 0x1e, 0x35, 0xca, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8224 = { .name = "ecdsa_secp256r1_sha512_8224", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8224_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8224_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8224_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8225 for ECDSA, tcId is 346 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8225_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8225_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8225_sig[] = { 0xfe, 0x79, 0xc6, 0xb8, 0xc1, 0x4d, 0x0f, 0x23, 0xd4, 0x26, 0xe3, 0xd1, 0x57, 0xf1, 0xb5, 0x41, 0xf6, 0xbb, 0x91, 0xbf, 0x29, 0x95, 0x7e, 0xf9, 0x7c, 0x55, 0x94, 0x9c, 0x9b, 0xa4, 0x8a, 0x35, 0x9d, 0xa1, 0x12, 0xc4, 0xa4, 0xcf, 0x4b, 0x1f, 0xf4, 0x90, 0xc4, 0x26, 0xf6, 0xc8, 0xff, 0x12, 0x21, 0x83, 0x96, 0x4a, 0x0d, 0xe5, 0x6f, 0x73, 0x36, 0xab, 0x38, 0x2d, 0xc9, 0xd1, 0x02, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8225 = { .name = "ecdsa_secp256r1_sha512_8225", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8225_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8225_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8225_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8226 for ECDSA, tcId is 347 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8226_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8226_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8226_sig[] = { 0x45, 0xd4, 0xed, 0x7e, 0x9e, 0xda, 0xcb, 0x5a, 0x73, 0x09, 0x44, 0xab, 0x00, 0x37, 0xfb, 0xa0, 0xa1, 0x36, 0xed, 0x9d, 0x0d, 0x26, 0xb2, 0xf4, 0xd4, 0x05, 0x85, 0x54, 0xf1, 0x48, 0xfa, 0x6f, 0xf1, 0x36, 0xf1, 0x5f, 0xd3, 0x0c, 0xfe, 0x5e, 0x55, 0x48, 0xb3, 0xf4, 0x96, 0x5c, 0x16, 0xa6, 0x6a, 0x7c, 0x12, 0x90, 0x46, 0x86, 0xab, 0xe1, 0x2d, 0xa7, 0x77, 0x61, 0x92, 0x12, 0xae, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8226 = { .name = "ecdsa_secp256r1_sha512_8226", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8226_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8226_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8226_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8227 for ECDSA, tcId is 348 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8227_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8227_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp256r1_sha512_8227_sig[] = { 0x4f, 0xb7, 0xc1, 0x72, 0x7e, 0x40, 0xba, 0xe2, 0x72, 0xf6, 0x14, 0x3a, 0x50, 0x00, 0x1b, 0x54, 0xb5, 0x36, 0xf9, 0x02, 0x33, 0x15, 0x78, 0x96, 0xdb, 0xf8, 0x45, 0xe2, 0x63, 0xf2, 0x48, 0x63, 0x6f, 0xea, 0x5c, 0x92, 0x4d, 0xca, 0x17, 0x51, 0x9f, 0x6e, 0x50, 0x2e, 0xf6, 0x7e, 0xfa, 0x08, 0xd3, 0x9e, 0xb5, 0xcc, 0x33, 0x81, 0x26, 0x6f, 0x02, 0x16, 0x86, 0x4d, 0x2b, 0xd0, 0x0a, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8227 = { .name = "ecdsa_secp256r1_sha512_8227", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8227_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8227_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8227_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8228 for ECDSA, tcId is 349 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8228_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8228_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha512_8228_sig[] = { 0x77, 0x9a, 0xac, 0x66, 0x5d, 0xd9, 0x88, 0x05, 0x4b, 0x04, 0xf2, 0xe9, 0xd4, 0x83, 0xca, 0x79, 0x17, 0x9b, 0x33, 0x72, 0xb5, 0x8c, 0xa0, 0x0f, 0xe4, 0x35, 0x20, 0xf4, 0x4f, 0xcb, 0x4c, 0x32, 0xb4, 0xec, 0xa1, 0x18, 0x2c, 0xd5, 0x1f, 0x0a, 0xbd, 0x3e, 0xa2, 0x26, 0x8d, 0xcd, 0xa4, 0x9a, 0x80, 0x7a, 0xd4, 0x11, 0x6a, 0x58, 0x31, 0x02, 0x04, 0x74, 0x98, 0xaa, 0x86, 0x36, 0x53, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8228 = { .name = "ecdsa_secp256r1_sha512_8228", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8228_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8228_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8228_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8229 for ECDSA, tcId is 350 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8229_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8229_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8229_sig[] = { 0xdb, 0x7a, 0xc6, 0xf6, 0x5f, 0xb1, 0xc3, 0x8d, 0x80, 0x06, 0x4f, 0xd1, 0x18, 0x61, 0x63, 0x12, 0x37, 0xa0, 0x99, 0x24, 0xb4, 0xee, 0xca, 0x4e, 0x15, 0x69, 0xfa, 0x4b, 0x7d, 0x80, 0xad, 0x24, 0xa3, 0x8d, 0x17, 0x8d, 0x37, 0xe1, 0x3e, 0x1a, 0xfa, 0x07, 0xa9, 0xd0, 0x3d, 0xa0, 0x25, 0xd5, 0x94, 0x46, 0x19, 0x38, 0xa6, 0x2a, 0x6c, 0x67, 0x44, 0xf5, 0xc8, 0xf7, 0xd7, 0xb7, 0xbb, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8229 = { .name = "ecdsa_secp256r1_sha512_8229", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8229_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8229_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8229_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8230 for ECDSA, tcId is 351 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8230_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8230_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8230_sig[] = { 0xc9, 0x00, 0x43, 0xb4, 0xaa, 0xdf, 0x79, 0x5d, 0x87, 0x0a, 0xc2, 0x23, 0xf3, 0x3a, 0xcd, 0xbd, 0x19, 0x48, 0xc3, 0x1a, 0xff, 0xf0, 0x59, 0x05, 0x4d, 0xc9, 0x95, 0x28, 0xc6, 0x50, 0x3f, 0xa6, 0x82, 0x9f, 0x67, 0xb3, 0x12, 0xbb, 0x13, 0x4f, 0x69, 0x54, 0xa2, 0x3c, 0x61, 0x1a, 0x7f, 0x7b, 0x5b, 0x2a, 0x69, 0xef, 0xce, 0xd9, 0xc4, 0x8d, 0xb5, 0x89, 0xac, 0x0b, 0x4d, 0x3d, 0xa8, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8230 = { .name = "ecdsa_secp256r1_sha512_8230", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8230_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8230_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha512_8230_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8231 for ECDSA, tcId is 352 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8231_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8231_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha512_8231_sig[] = { 0xfa, 0x16, 0xc0, 0x12, 0x5b, 0x66, 0x15, 0xb9, 0x0e, 0x81, 0xf7, 0x49, 0x98, 0x04, 0x30, 0x8a, 0x90, 0x17, 0x9b, 0xf3, 0xfc, 0xff, 0x6a, 0x4b, 0x26, 0x95, 0x27, 0x1c, 0x68, 0xb2, 0x3d, 0xed, 0x0d, 0x6c, 0xda, 0x5c, 0xe0, 0x41, 0xdc, 0x5a, 0x5f, 0x31, 0x9a, 0xd9, 0xc0, 0xde, 0x49, 0x27, 0xd0, 0xcf, 0x5e, 0x89, 0xe3, 0x7b, 0x79, 0x21, 0x61, 0x94, 0x41, 0x3d, 0x42, 0x97, 0x6d, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8231 = { .name = "ecdsa_secp256r1_sha512_8231", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8231_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8231_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha512_8231_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8232 for ECDSA, tcId is 353 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8232_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8232_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha512_8232_sig[] = { 0x1a, 0x4b, 0x5b, 0xd0, 0xf8, 0x06, 0x54, 0x9f, 0x46, 0xa3, 0xe7, 0x1b, 0xfe, 0x41, 0x2d, 0x6d, 0x89, 0x20, 0x60, 0x17, 0x64, 0x0d, 0xed, 0x66, 0xf3, 0xd0, 0xb2, 0xd9, 0xb2, 0x6b, 0xec, 0x45, 0xaa, 0xc5, 0xf7, 0x4e, 0x31, 0x30, 0x26, 0x4e, 0x01, 0x42, 0x85, 0x70, 0xee, 0x82, 0xee, 0x47, 0xe2, 0x45, 0xd1, 0x60, 0xed, 0x81, 0x2a, 0xe2, 0x52, 0xde, 0xdf, 0xfd, 0x82, 0xe1, 0xec, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8232 = { .name = "ecdsa_secp256r1_sha512_8232", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8232_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8232_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha512_8232_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8233 for ECDSA, tcId is 354 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8233_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha512_8233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8233_sig[] = { 0xf8, 0xe2, 0x72, 0x23, 0x4b, 0x51, 0x47, 0x5e, 0xc4, 0xc6, 0xf3, 0x27, 0x56, 0x2a, 0x6e, 0x5c, 0x90, 0x80, 0xa9, 0x62, 0x25, 0xe8, 0x8b, 0x2e, 0x5f, 0x72, 0xa8, 0xee, 0xcb, 0xd4, 0x1a, 0xb4, 0x51, 0x6b, 0x91, 0x61, 0x7f, 0xc3, 0x9e, 0x31, 0x41, 0xb3, 0xbc, 0x76, 0x9f, 0x6a, 0x3b, 0x2e, 0x46, 0x8e, 0x68, 0x7f, 0x50, 0xbd, 0xc2, 0x9e, 0x19, 0x08, 0x8a, 0xf6, 0x2d, 0x20, 0x3f, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8233 = { .name = "ecdsa_secp256r1_sha512_8233", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8233_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8233_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8233_sig, .siglen = 64, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 354 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8234 for ECDSA, tcId is 355 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8234_pubkey[] = { 0xb6, 0xe0, 0x8b, 0x1b, 0xcc, 0x89, 0xe7, 0xfb, 0x0b, 0x84, 0xd7, 0x49, 0x7e, 0x31, 0x05, 0x53, 0x49, 0x5b, 0xe4, 0x87, 0x7e, 0xcc, 0xc4, 0xb3, 0xd6, 0xd7, 0x9f, 0x7c, 0x68, 0xa0, 0x57, 0x34, 0x31, 0x76, 0x0f, 0xa1, 0xbc, 0xea, 0x49, 0x72, 0x75, 0x91, 0x74, 0xac, 0x11, 0x03, 0xbc, 0x60, 0x11, 0x98, 0x5c, 0xce, 0xe2, 0x51, 0x91, 0x8d, 0x05, 0x73, 0xfb, 0xcb, 0x78, 0x96, 0x91, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_8234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8234_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8234 = { .name = "ecdsa_secp256r1_sha512_8234", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8234_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8234_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8234_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 355 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8235 for ECDSA, tcId is 356 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8235_pubkey[] = { 0xb6, 0xe0, 0x8b, 0x1b, 0xcc, 0x89, 0xe7, 0xfb, 0x0b, 0x84, 0xd7, 0x49, 0x7e, 0x31, 0x05, 0x53, 0x49, 0x5b, 0xe4, 0x87, 0x7e, 0xcc, 0xc4, 0xb3, 0xd6, 0xd7, 0x9f, 0x7c, 0x68, 0xa0, 0x57, 0x34, 0x31, 0x76, 0x0f, 0xa1, 0xbc, 0xea, 0x49, 0x72, 0x75, 0x91, 0x74, 0xac, 0x11, 0x03, 0xbc, 0x60, 0x11, 0x98, 0x5c, 0xce, 0xe2, 0x51, 0x91, 0x8d, 0x05, 0x73, 0xfb, 0xcb, 0x78, 0x96, 0x91, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_8235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8235_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8235 = { .name = "ecdsa_secp256r1_sha512_8235", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8235_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8235_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8235_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 356 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8236 for ECDSA, tcId is 357 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8236_pubkey[] = { 0x35, 0x90, 0xc6, 0xa1, 0x03, 0x53, 0xd6, 0x69, 0xbc, 0x94, 0xd8, 0xe2, 0xff, 0x9e, 0x14, 0xbb, 0xee, 0xd4, 0xa7, 0xf4, 0x5b, 0x88, 0x72, 0x55, 0xab, 0x7e, 0x37, 0xb6, 0x76, 0x38, 0x7b, 0xb6, 0x15, 0xfc, 0x6f, 0x97, 0xce, 0x39, 0xa3, 0x87, 0x4c, 0x2b, 0x34, 0xcc, 0x57, 0x18, 0x89, 0xab, 0xfa, 0x0a, 0x70, 0x6c, 0x2c, 0xfb, 0x0e, 0x5a, 0x47, 0x50, 0xcc, 0x25, 0x69, 0x06, 0x96, 0xf8, }; static const unsigned char ecdsa_secp256r1_sha512_8236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8236_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8236 = { .name = "ecdsa_secp256r1_sha512_8236", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8236_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8236_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8236_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 357 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8237 for ECDSA, tcId is 358 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8237_pubkey[] = { 0x36, 0x9e, 0x96, 0x40, 0x2f, 0x2c, 0xfd, 0x1a, 0x37, 0xb3, 0xac, 0xbd, 0xec, 0xfc, 0x56, 0x28, 0x62, 0xdb, 0xca, 0x94, 0x4a, 0x0f, 0x12, 0xd7, 0xaa, 0xac, 0xb8, 0xd3, 0x25, 0xd7, 0x65, 0x0a, 0xa7, 0x23, 0x62, 0x19, 0x22, 0xbe, 0x2b, 0xda, 0xc9, 0x18, 0x62, 0x90, 0xfd, 0xcd, 0xda, 0x02, 0x8d, 0x94, 0x43, 0x79, 0x66, 0x50, 0x7d, 0x93, 0xf2, 0xfc, 0x1f, 0x5c, 0x88, 0x7f, 0xde, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha512_8237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8237_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8237 = { .name = "ecdsa_secp256r1_sha512_8237", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8237_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8237_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8237_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 358 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8238 for ECDSA, tcId is 359 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8238_pubkey[] = { 0x27, 0xa0, 0xa8, 0x0e, 0xa2, 0xe1, 0xaa, 0x79, 0x8e, 0xa9, 0xbc, 0xc3, 0xae, 0xdb, 0xf0, 0x1a, 0xb7, 0x8e, 0x49, 0xc9, 0xec, 0x2a, 0xd0, 0xe0, 0x8a, 0x04, 0x29, 0xa0, 0xe1, 0xdb, 0x4d, 0x0d, 0x32, 0xa8, 0xee, 0x7b, 0xee, 0x9d, 0x0a, 0x40, 0x01, 0x4e, 0x48, 0x4f, 0x34, 0xa9, 0x2b, 0xd6, 0xf3, 0x3f, 0xe6, 0x36, 0x24, 0xea, 0x95, 0x79, 0x65, 0x74, 0x41, 0xac, 0x79, 0x66, 0x6e, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha512_8238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8238_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8238 = { .name = "ecdsa_secp256r1_sha512_8238", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8238_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8238_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8238_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 359 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8239 for ECDSA, tcId is 360 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8239_pubkey[] = { 0x9c, 0xff, 0x61, 0x71, 0x2d, 0x4b, 0xc5, 0xb3, 0x63, 0x83, 0x41, 0xe6, 0xe0, 0xa5, 0x76, 0xa8, 0x09, 0x8c, 0x9c, 0x6d, 0x3f, 0x19, 0x8d, 0x38, 0x9c, 0x46, 0x69, 0xf3, 0x98, 0xdc, 0x08, 0x67, 0xf3, 0xb9, 0xe0, 0x9f, 0x56, 0x7f, 0x3d, 0xfd, 0x9c, 0x4d, 0x2c, 0x11, 0x63, 0xe8, 0x2b, 0xea, 0xdf, 0x16, 0xc7, 0x6e, 0x8f, 0x9d, 0x7a, 0x64, 0x67, 0x38, 0x00, 0xea, 0x76, 0xfa, 0x1e, 0x59, }; static const unsigned char ecdsa_secp256r1_sha512_8239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8239_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8239 = { .name = "ecdsa_secp256r1_sha512_8239", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8239_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8239_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8239_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8240 for ECDSA, tcId is 361 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8240_pubkey[] = { 0xd9, 0x11, 0x7c, 0xae, 0x81, 0x29, 0x5e, 0x82, 0x68, 0x2f, 0xa3, 0x87, 0x99, 0x1e, 0x66, 0x8e, 0x15, 0x70, 0xe0, 0xe9, 0x01, 0x00, 0xbf, 0x4e, 0x63, 0x96, 0x48, 0x22, 0x46, 0x05, 0x61, 0xbc, 0x19, 0xf9, 0x6b, 0x17, 0x87, 0xed, 0x15, 0x76, 0x99, 0x29, 0x97, 0x8b, 0xa3, 0xdd, 0x7f, 0x68, 0xc9, 0x7a, 0xdf, 0x5c, 0x16, 0xf6, 0x71, 0xe7, 0x56, 0xcd, 0x8f, 0x08, 0xc4, 0x94, 0x56, 0xca, }; static const unsigned char ecdsa_secp256r1_sha512_8240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8240_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8240 = { .name = "ecdsa_secp256r1_sha512_8240", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8240_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8240_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8240_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 361 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8241 for ECDSA, tcId is 362 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8241_pubkey[] = { 0x8c, 0xfc, 0xba, 0xd3, 0x52, 0x4c, 0x22, 0xb9, 0x92, 0x52, 0x9f, 0x94, 0x3e, 0x3c, 0xe0, 0xb2, 0xd1, 0x26, 0x08, 0x55, 0x01, 0xd6, 0xe3, 0xed, 0xd4, 0xf1, 0xdb, 0xf7, 0x4b, 0xdc, 0xa2, 0x1e, 0xaf, 0xb2, 0x59, 0xb1, 0xba, 0x17, 0x9c, 0xac, 0x09, 0xe8, 0xe4, 0x3a, 0x88, 0xc8, 0xa0, 0x9e, 0x73, 0x39, 0x91, 0x0a, 0x7c, 0x94, 0x19, 0x32, 0xe4, 0x4b, 0x8b, 0xe5, 0x6f, 0x1f, 0xcc, 0xde, }; static const unsigned char ecdsa_secp256r1_sha512_8241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8241_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8241 = { .name = "ecdsa_secp256r1_sha512_8241", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8241_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8241_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8241_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8242 for ECDSA, tcId is 363 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8242_pubkey[] = { 0xfb, 0xb5, 0x11, 0x27, 0xe1, 0xf1, 0xb6, 0xa3, 0x8e, 0x9f, 0xe9, 0xa2, 0x54, 0x46, 0x14, 0xed, 0xb8, 0xe4, 0x3a, 0xd7, 0xcd, 0x8c, 0x56, 0xf1, 0x4b, 0x32, 0x35, 0xdd, 0xa3, 0xbc, 0x11, 0x17, 0x9a, 0xbd, 0x97, 0x53, 0xa9, 0xe6, 0x47, 0xe9, 0x34, 0x0c, 0x39, 0x5f, 0xb2, 0xb9, 0x13, 0x84, 0xd6, 0xd3, 0x3f, 0xcb, 0x64, 0x56, 0x21, 0x43, 0x50, 0xb6, 0xf3, 0xfa, 0x00, 0xf4, 0x36, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha512_8242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8242_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8242 = { .name = "ecdsa_secp256r1_sha512_8242", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8242_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8242_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8242_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 363 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8243 for ECDSA, tcId is 364 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8243_pubkey[] = { 0xfb, 0xb5, 0x11, 0x27, 0xe1, 0xf1, 0xb6, 0xa3, 0x8e, 0x9f, 0xe9, 0xa2, 0x54, 0x46, 0x14, 0xed, 0xb8, 0xe4, 0x3a, 0xd7, 0xcd, 0x8c, 0x56, 0xf1, 0x4b, 0x32, 0x35, 0xdd, 0xa3, 0xbc, 0x11, 0x17, 0x9a, 0xbd, 0x97, 0x53, 0xa9, 0xe6, 0x47, 0xe9, 0x34, 0x0c, 0x39, 0x5f, 0xb2, 0xb9, 0x13, 0x84, 0xd6, 0xd3, 0x3f, 0xcb, 0x64, 0x56, 0x21, 0x43, 0x50, 0xb6, 0xf3, 0xfa, 0x00, 0xf4, 0x36, 0x4c, }; static const unsigned char ecdsa_secp256r1_sha512_8243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8243_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8243 = { .name = "ecdsa_secp256r1_sha512_8243", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8243_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8243_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8243_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 364 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8244 for ECDSA, tcId is 365 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8244_pubkey[] = { 0xdc, 0x80, 0x90, 0x55, 0x00, 0xd7, 0xd7, 0x4e, 0xd4, 0x7d, 0xe5, 0x22, 0x4d, 0x87, 0x34, 0x54, 0x5f, 0x22, 0xb7, 0x76, 0xae, 0x08, 0x6c, 0xab, 0xff, 0xfe, 0x6c, 0xe5, 0x8d, 0x5e, 0xf9, 0x94, 0xdc, 0x30, 0x67, 0xce, 0x7d, 0x2c, 0xdf, 0xa9, 0xf4, 0xd5, 0xac, 0xe2, 0x96, 0xb7, 0x52, 0x81, 0x4a, 0xcc, 0x69, 0xc1, 0x9a, 0x93, 0x2d, 0x8b, 0x14, 0x07, 0x79, 0x27, 0x90, 0x1d, 0xe3, 0xbf, }; static const unsigned char ecdsa_secp256r1_sha512_8244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8244_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8244 = { .name = "ecdsa_secp256r1_sha512_8244", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8244_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8244_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8244_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 365 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8245 for ECDSA, tcId is 366 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8245_pubkey[] = { 0x1b, 0x82, 0x4a, 0x11, 0xee, 0xd9, 0x4f, 0xbc, 0xd9, 0xb7, 0x22, 0xd0, 0x66, 0x13, 0xbb, 0xcf, 0x7e, 0xca, 0x00, 0xb9, 0x13, 0x6f, 0x26, 0x52, 0x64, 0x21, 0x78, 0xf3, 0x7b, 0x1a, 0x92, 0x0e, 0xe9, 0x00, 0xde, 0x49, 0x5d, 0x9e, 0xf5, 0x6f, 0xa6, 0xd1, 0x9f, 0x3d, 0xd1, 0xe0, 0xed, 0xb2, 0x3d, 0x23, 0x83, 0x5a, 0xc8, 0xc2, 0xd3, 0xd1, 0x3c, 0x02, 0x27, 0xe8, 0x52, 0xe5, 0x03, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha512_8245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8245_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8245 = { .name = "ecdsa_secp256r1_sha512_8245", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8245_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8245_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8245_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 366 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8246 for ECDSA, tcId is 367 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8246_pubkey[] = { 0x29, 0x14, 0xb3, 0x0c, 0x4c, 0x78, 0x46, 0x96, 0xff, 0xc3, 0xdd, 0xdc, 0xec, 0x05, 0xf3, 0x6c, 0xb1, 0x48, 0x8b, 0xc3, 0x42, 0xb9, 0xf5, 0x29, 0xd5, 0x38, 0x7a, 0xcb, 0x9e, 0x48, 0xcb, 0x8d, 0x3d, 0xbd, 0x30, 0xd0, 0xd5, 0xd6, 0xd6, 0xa3, 0x91, 0x08, 0x86, 0x3c, 0x2d, 0x6a, 0x6e, 0x85, 0x71, 0xcd, 0x32, 0x61, 0xfb, 0x9e, 0xb9, 0x8c, 0xe4, 0x61, 0x25, 0xbd, 0x8f, 0x13, 0x91, 0x36, }; static const unsigned char ecdsa_secp256r1_sha512_8246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8246_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8246 = { .name = "ecdsa_secp256r1_sha512_8246", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8246_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8246_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8246_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 367 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8247 for ECDSA, tcId is 368 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8247_pubkey[] = { 0x25, 0x79, 0xf5, 0x46, 0xfe, 0x2f, 0x2a, 0xeb, 0x5f, 0x82, 0x2f, 0xeb, 0x28, 0xf2, 0xf8, 0x37, 0x16, 0x18, 0xd0, 0x48, 0x15, 0x45, 0x5a, 0x7e, 0x90, 0x3c, 0x10, 0x02, 0x4a, 0x17, 0xda, 0x41, 0x55, 0x28, 0xe9, 0x51, 0x14, 0x7f, 0x76, 0xbe, 0xe1, 0x31, 0x4e, 0x65, 0xa4, 0x9c, 0x6e, 0xc7, 0x06, 0x86, 0xe6, 0x2d, 0x38, 0xfb, 0xc2, 0x34, 0x72, 0xf9, 0x6e, 0x3d, 0x3b, 0x33, 0xfd, 0x1f, }; static const unsigned char ecdsa_secp256r1_sha512_8247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8247_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8247 = { .name = "ecdsa_secp256r1_sha512_8247", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8247_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8247_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8247_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 368 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8248 for ECDSA, tcId is 369 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8248_pubkey[] = { 0xb1, 0x02, 0x19, 0x6b, 0xf4, 0x55, 0xee, 0x5a, 0xaf, 0xc6, 0xf8, 0x95, 0x50, 0x4d, 0x3c, 0x3b, 0x6b, 0x2d, 0x37, 0xc3, 0x5f, 0x86, 0x69, 0xbd, 0x0f, 0x0b, 0x69, 0x47, 0x95, 0xfb, 0xd9, 0x92, 0xf7, 0x77, 0xb6, 0xf8, 0x29, 0xb9, 0x62, 0x8a, 0xc3, 0x5d, 0xb0, 0xef, 0x43, 0xf6, 0xa8, 0x9f, 0x0a, 0x42, 0x81, 0x26, 0x14, 0xe4, 0xc1, 0x59, 0x24, 0xd8, 0xd4, 0x7e, 0xbe, 0x45, 0xba, 0xe5, }; static const unsigned char ecdsa_secp256r1_sha512_8248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8248_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8248 = { .name = "ecdsa_secp256r1_sha512_8248", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8248_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8248_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8248_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 369 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8249 for ECDSA, tcId is 370 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8249_pubkey[] = { 0x4d, 0x05, 0x6a, 0xb2, 0xff, 0x57, 0x66, 0x2f, 0xd6, 0xee, 0xbb, 0xe2, 0x39, 0x30, 0xfe, 0xf5, 0xcd, 0x08, 0x08, 0x3e, 0x24, 0x14, 0x61, 0x90, 0xcd, 0x01, 0x96, 0x0b, 0x1f, 0xcd, 0x37, 0x49, 0xfe, 0x7e, 0xc5, 0x84, 0x76, 0x51, 0xc8, 0x57, 0x89, 0x8b, 0xe0, 0xf0, 0x9e, 0xfd, 0x6e, 0x01, 0x16, 0xa5, 0xdb, 0xe3, 0x27, 0xf6, 0xf3, 0x08, 0x0a, 0x65, 0xfc, 0x96, 0x6b, 0xf6, 0x4d, 0x91, }; static const unsigned char ecdsa_secp256r1_sha512_8249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8249_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8249 = { .name = "ecdsa_secp256r1_sha512_8249", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8249_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8249_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8249_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 370 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8250 for ECDSA, tcId is 371 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8250_pubkey[] = { 0x36, 0x1c, 0x4a, 0x62, 0xcd, 0x86, 0x76, 0x13, 0x13, 0x8d, 0xfe, 0x24, 0xcc, 0xeb, 0xc4, 0xb7, 0xdf, 0x1b, 0x55, 0xfc, 0x74, 0x10, 0xf4, 0x99, 0x5e, 0xe2, 0xb6, 0xb9, 0xab, 0x22, 0x20, 0x58, 0x4f, 0x11, 0x6c, 0x6c, 0x84, 0xe5, 0x3d, 0x26, 0x2f, 0xd1, 0x3a, 0x5f, 0x5d, 0xe6, 0xb5, 0x7e, 0x7a, 0x19, 0x81, 0xde, 0x4e, 0xcd, 0xff, 0xdf, 0x33, 0x23, 0xb4, 0xe9, 0x1d, 0x80, 0x64, 0x9c, }; static const unsigned char ecdsa_secp256r1_sha512_8250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8250_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8250 = { .name = "ecdsa_secp256r1_sha512_8250", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8250_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8250_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8250_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 371 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8251 for ECDSA, tcId is 372 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8251_pubkey[] = { 0xdb, 0x9d, 0x5c, 0x51, 0x13, 0xf0, 0x08, 0x22, 0xa1, 0x46, 0xc9, 0xcd, 0xa2, 0xe7, 0x5c, 0xb6, 0x63, 0x4c, 0xd0, 0xdf, 0xf5, 0x4a, 0xff, 0x6e, 0x22, 0x87, 0x51, 0x71, 0xf5, 0x7a, 0x0d, 0xad, 0x1c, 0x42, 0x4c, 0xdd, 0x83, 0xeb, 0x01, 0xc0, 0x2f, 0x6f, 0x8d, 0x36, 0xf4, 0x2c, 0x6d, 0xc7, 0xe3, 0x9d, 0xb7, 0x43, 0x58, 0xda, 0x8a, 0xc9, 0xbc, 0x9d, 0xc5, 0x89, 0x0d, 0x46, 0xf6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_8251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8251_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8251 = { .name = "ecdsa_secp256r1_sha512_8251", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8251_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8251_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8251_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 372 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8252 for ECDSA, tcId is 373 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8252_pubkey[] = { 0xdb, 0x9d, 0x5c, 0x51, 0x13, 0xf0, 0x08, 0x22, 0xa1, 0x46, 0xc9, 0xcd, 0xa2, 0xe7, 0x5c, 0xb6, 0x63, 0x4c, 0xd0, 0xdf, 0xf5, 0x4a, 0xff, 0x6e, 0x22, 0x87, 0x51, 0x71, 0xf5, 0x7a, 0x0d, 0xad, 0x1c, 0x42, 0x4c, 0xdd, 0x83, 0xeb, 0x01, 0xc0, 0x2f, 0x6f, 0x8d, 0x36, 0xf4, 0x2c, 0x6d, 0xc7, 0xe3, 0x9d, 0xb7, 0x43, 0x58, 0xda, 0x8a, 0xc9, 0xbc, 0x9d, 0xc5, 0x89, 0x0d, 0x46, 0xf6, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_8252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8252_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8252 = { .name = "ecdsa_secp256r1_sha512_8252", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8252_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8252_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8252_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 373 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8253 for ECDSA, tcId is 374 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8253_pubkey[] = { 0x99, 0xf1, 0x9f, 0x07, 0xb3, 0x3e, 0x03, 0xca, 0xf4, 0x70, 0x3e, 0x04, 0xb9, 0x30, 0xd5, 0x7d, 0x6d, 0x9b, 0xaa, 0x44, 0x46, 0x0c, 0x59, 0x6a, 0x2d, 0x30, 0x64, 0xe0, 0xb6, 0x3e, 0xa4, 0x12, 0x86, 0xa7, 0x4c, 0x46, 0x12, 0xa8, 0x12, 0xee, 0x34, 0x8d, 0x2b, 0x43, 0xf8, 0x0d, 0xe6, 0x27, 0xc1, 0x1c, 0x75, 0xd8, 0x15, 0x11, 0xe2, 0x2a, 0x19, 0x9c, 0x32, 0x11, 0x9b, 0x79, 0x2c, 0x6a, }; static const unsigned char ecdsa_secp256r1_sha512_8253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8253_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8253 = { .name = "ecdsa_secp256r1_sha512_8253", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8253_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8253_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8253_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 374 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8254 for ECDSA, tcId is 375 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8254_pubkey[] = { 0x31, 0x3f, 0x33, 0x09, 0xb2, 0x36, 0x48, 0x4c, 0x6e, 0xb4, 0xea, 0x38, 0x1e, 0x00, 0x78, 0x54, 0x46, 0x7a, 0x61, 0x73, 0x43, 0xa2, 0xe9, 0x7d, 0x84, 0x58, 0x01, 0xc0, 0x1a, 0x63, 0x2c, 0xfe, 0x33, 0xf2, 0x31, 0x85, 0x4b, 0xba, 0x89, 0xa8, 0xca, 0x3f, 0x80, 0x2a, 0x27, 0x64, 0xd3, 0xbf, 0x6c, 0x32, 0x33, 0xc8, 0x11, 0xa3, 0x1e, 0x5e, 0x80, 0x28, 0xa0, 0xb8, 0x62, 0xcb, 0x19, 0x77, }; static const unsigned char ecdsa_secp256r1_sha512_8254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8254_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8254 = { .name = "ecdsa_secp256r1_sha512_8254", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8254_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8254_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8254_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 375 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8255 for ECDSA, tcId is 376 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8255_pubkey[] = { 0xd3, 0xaa, 0x01, 0xfe, 0x59, 0xba, 0xd9, 0x2c, 0xff, 0xe3, 0xdb, 0x59, 0xe1, 0x38, 0x53, 0x91, 0xfa, 0xfd, 0x7a, 0xf4, 0xe4, 0xce, 0x46, 0x2e, 0x8a, 0xac, 0x15, 0x72, 0x74, 0xcc, 0x8a, 0x05, 0xc7, 0xa7, 0xe6, 0x03, 0xe1, 0x85, 0x38, 0xaa, 0xc1, 0x5f, 0x89, 0x61, 0x0b, 0xea, 0xcc, 0x21, 0xe3, 0x98, 0x98, 0xe6, 0xc5, 0xf7, 0x68, 0x0a, 0x81, 0xc5, 0xbd, 0x7b, 0xd7, 0x44, 0xa9, 0x89, }; static const unsigned char ecdsa_secp256r1_sha512_8255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8255_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8255 = { .name = "ecdsa_secp256r1_sha512_8255", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8255_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8255_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8255_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 376 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8256 for ECDSA, tcId is 377 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8256_pubkey[] = { 0x5e, 0x31, 0xec, 0xcd, 0x47, 0x04, 0xeb, 0xf7, 0xa4, 0x24, 0x7e, 0xa5, 0x7f, 0x93, 0x51, 0xab, 0xad, 0xff, 0x63, 0x67, 0x9f, 0x22, 0x76, 0xe2, 0xa3, 0xb0, 0x50, 0x09, 0xeb, 0xc1, 0xb8, 0xdf, 0x64, 0x84, 0x65, 0xa9, 0x25, 0x01, 0x0d, 0xb8, 0x23, 0xb2, 0xa5, 0xf3, 0xa6, 0x07, 0x23, 0x43, 0xa6, 0xcc, 0x99, 0x61, 0xa9, 0xc4, 0x82, 0x39, 0x9d, 0x0d, 0x82, 0x05, 0x1c, 0x2e, 0x32, 0x32, }; static const unsigned char ecdsa_secp256r1_sha512_8256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8256_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8256 = { .name = "ecdsa_secp256r1_sha512_8256", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8256_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8256_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8256_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 377 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8257 for ECDSA, tcId is 378 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8257_pubkey[] = { 0xce, 0x0a, 0x47, 0xf8, 0x81, 0xfd, 0x73, 0x15, 0xa7, 0x33, 0xc4, 0x31, 0x78, 0x48, 0xfa, 0x33, 0xc7, 0x2e, 0x38, 0xde, 0x0b, 0x8f, 0xda, 0x36, 0xb6, 0x1a, 0xa9, 0xa1, 0x64, 0xf5, 0x80, 0x8a, 0x85, 0xb0, 0x5d, 0x25, 0x11, 0x5e, 0xa4, 0x09, 0x7d, 0xdf, 0x63, 0xf8, 0x78, 0xc8, 0xe8, 0x36, 0x57, 0xe6, 0x6d, 0xe1, 0x36, 0xa8, 0xf9, 0xe6, 0x2e, 0xd8, 0x1a, 0x58, 0xbf, 0x11, 0x7f, 0xf9, }; static const unsigned char ecdsa_secp256r1_sha512_8257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8257_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8257 = { .name = "ecdsa_secp256r1_sha512_8257", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8257_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8257_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8257_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 378 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8258 for ECDSA, tcId is 379 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8258_pubkey[] = { 0xcd, 0x6f, 0x48, 0x7b, 0x47, 0xf3, 0x6c, 0x0d, 0xea, 0x8f, 0x4b, 0x04, 0xc4, 0xe6, 0xac, 0x63, 0x7c, 0x76, 0xb7, 0x25, 0x92, 0x9c, 0x61, 0x1f, 0x48, 0xad, 0xdc, 0xf3, 0xd2, 0xf6, 0x59, 0x41, 0xb5, 0x0e, 0xa8, 0xf3, 0xa4, 0x91, 0x19, 0x0e, 0xe0, 0xb2, 0x0c, 0xfb, 0x6e, 0xfd, 0x11, 0x36, 0x08, 0xe7, 0xc7, 0xc1, 0x27, 0x57, 0x75, 0x00, 0xe7, 0xf5, 0xc4, 0xa4, 0xe4, 0x90, 0xfd, 0x60, }; static const unsigned char ecdsa_secp256r1_sha512_8258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8258_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8258 = { .name = "ecdsa_secp256r1_sha512_8258", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8258_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8258_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8258_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 379 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8259 for ECDSA, tcId is 380 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8259_pubkey[] = { 0x45, 0x6e, 0x5f, 0x80, 0x67, 0xd6, 0x8a, 0x1b, 0x0a, 0x2e, 0x8f, 0xe2, 0xb2, 0x8a, 0xca, 0xd5, 0x75, 0x56, 0x87, 0x15, 0x4a, 0x0f, 0x16, 0x77, 0x34, 0xeb, 0xab, 0xbd, 0xc0, 0x59, 0x07, 0x0d, 0x72, 0x0d, 0xbe, 0x96, 0x65, 0x9a, 0x66, 0xef, 0x0c, 0xf2, 0x7a, 0x73, 0xe7, 0xb3, 0xf3, 0xf1, 0x45, 0xa6, 0x0e, 0x0a, 0xd2, 0x9f, 0x1e, 0x21, 0xdc, 0xc2, 0xbb, 0x42, 0xf0, 0xd8, 0x2c, 0x1e, }; static const unsigned char ecdsa_secp256r1_sha512_8259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8259_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8259 = { .name = "ecdsa_secp256r1_sha512_8259", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8259_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8259_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8259_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 380 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8260 for ECDSA, tcId is 381 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8260_pubkey[] = { 0x42, 0xbf, 0x0c, 0x0a, 0xc1, 0xe3, 0x85, 0x0b, 0xaf, 0x55, 0x15, 0x74, 0x8a, 0x87, 0x8e, 0x34, 0x24, 0x9f, 0x71, 0x03, 0x5e, 0x20, 0xa9, 0xf5, 0x4e, 0xd4, 0x68, 0xec, 0x27, 0x3c, 0xb0, 0xfc, 0x5b, 0x31, 0x38, 0x50, 0x02, 0x30, 0x05, 0x5c, 0x71, 0xf1, 0x2d, 0x53, 0xf5, 0xc7, 0xd0, 0xe3, 0xd8, 0xaa, 0x54, 0xa9, 0x4c, 0x66, 0x8c, 0xb3, 0x11, 0xe2, 0x0d, 0x19, 0x5f, 0xc7, 0x1a, 0xbb, }; static const unsigned char ecdsa_secp256r1_sha512_8260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8260_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6b, 0xfd, 0x55, 0xa8, 0xf8, 0xfd, 0xb6, 0x84, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0xac, 0xe6, 0xd5, 0x3d, 0xf5, 0x76, 0xf0, 0xad, 0x2d, 0xa4, 0x60, 0x7b, 0xb5, 0x2c, 0x0d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8260 = { .name = "ecdsa_secp256r1_sha512_8260", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8260_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8260_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8260_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8261 for ECDSA, tcId is 382 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8261_pubkey[] = { 0xff, 0xdd, 0x48, 0xda, 0x63, 0xd3, 0xaf, 0x67, 0x22, 0x3f, 0x16, 0xc5, 0x1e, 0xb7, 0xe9, 0x56, 0x00, 0xeb, 0x0b, 0x0e, 0x8b, 0x96, 0x4f, 0x4f, 0xcd, 0x8c, 0x53, 0x4f, 0xac, 0xe3, 0xc2, 0xc2, 0xb4, 0xe0, 0x09, 0xab, 0x2a, 0x76, 0x82, 0x94, 0x80, 0xe6, 0x9c, 0x9e, 0x43, 0xb2, 0xf1, 0xfe, 0x07, 0x6c, 0xfa, 0xfb, 0x3f, 0xa8, 0xd2, 0x7d, 0xd4, 0xd6, 0xba, 0xb4, 0xd6, 0xc3, 0xdb, 0x54, }; static const unsigned char ecdsa_secp256r1_sha512_8261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8261_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x65, 0x49, 0x37, 0x79, 0x1d, 0xb0, 0x68, 0x6f, 0x71, 0x2f, 0xf9, 0xb4, 0x53, 0xee, 0xad, 0xb0, 0x02, 0x6c, 0x9b, 0x05, 0x8b, 0xba, 0x49, 0x19, 0x9c, 0xa3, 0xe8, 0xfa, 0xc0, 0x3c, 0x09, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8261 = { .name = "ecdsa_secp256r1_sha512_8261", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8261_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8261_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8261_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8262 for ECDSA, tcId is 383 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8262_pubkey[] = { 0x79, 0x3c, 0xbf, 0xce, 0x6f, 0x33, 0x5d, 0xcf, 0xed, 0xe7, 0xc6, 0x89, 0x8e, 0xa1, 0xc5, 0x37, 0xd7, 0x66, 0x1e, 0xd6, 0xa8, 0xc9, 0xd3, 0x08, 0xd6, 0x4a, 0x25, 0x60, 0xd2, 0x1c, 0x6e, 0x2c, 0x48, 0x3d, 0x23, 0xa5, 0xff, 0x05, 0xda, 0x00, 0xea, 0xf9, 0xd5, 0x2c, 0xf5, 0x36, 0x2b, 0xe9, 0xb5, 0x3b, 0x95, 0x31, 0x6c, 0x6a, 0x32, 0xe9, 0xeb, 0xe6, 0x8d, 0x9a, 0xc3, 0x5c, 0x2f, 0xd6, }; static const unsigned char ecdsa_secp256r1_sha512_8262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8262_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc5, 0x1b, 0xbe, 0xe2, 0x3a, 0x95, 0x43, 0x7a, 0xbe, 0x5c, 0x97, 0x8f, 0x8f, 0xe5, 0x96, 0xa3, 0x1c, 0x85, 0x8a, 0xc8, 0xd5, 0x5b, 0xe9, 0x78, 0x6a, 0xa5, 0xd3, 0x6a, 0x5a, 0xc7, 0x4e, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8262 = { .name = "ecdsa_secp256r1_sha512_8262", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8262_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8262_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8262_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8263 for ECDSA, tcId is 384 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8263_pubkey[] = { 0xa9, 0xf7, 0x02, 0x3f, 0x55, 0x9d, 0x4b, 0xb6, 0xc9, 0xf4, 0xbc, 0x36, 0x43, 0xe2, 0x82, 0x4a, 0xff, 0x54, 0x51, 0xd9, 0x29, 0x47, 0x9e, 0xc3, 0xea, 0x5e, 0xb3, 0x0b, 0xad, 0x2c, 0x36, 0xac, 0x6a, 0x7c, 0x77, 0xe8, 0xdd, 0x21, 0xf4, 0xad, 0x49, 0xb1, 0x03, 0xe6, 0x7d, 0xa9, 0xd3, 0xcd, 0xa6, 0x2b, 0x65, 0x3d, 0xd1, 0x94, 0xfa, 0xd2, 0xba, 0x8d, 0x1d, 0xd3, 0x7b, 0xb0, 0xea, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha512_8263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8263_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8b, 0xa4, 0xc3, 0xda, 0x71, 0x54, 0xba, 0x56, 0x4a, 0xb3, 0x44, 0xae, 0x12, 0x00, 0x5a, 0xa4, 0x82, 0xb6, 0xc1, 0x63, 0x9e, 0xa1, 0x91, 0xf8, 0x56, 0x8a, 0xfb, 0x6e, 0x47, 0x16, 0x3c, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8263 = { .name = "ecdsa_secp256r1_sha512_8263", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8263_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8263_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8263_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8264 for ECDSA, tcId is 385 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8264_pubkey[] = { 0xdf, 0x79, 0xee, 0x08, 0x2b, 0x2f, 0xc7, 0x7e, 0x9c, 0xe4, 0x63, 0x34, 0x71, 0xf5, 0x69, 0xbb, 0xcb, 0x5c, 0xe5, 0x38, 0x56, 0xe3, 0x06, 0x77, 0x74, 0xf3, 0x7e, 0x8a, 0x64, 0xa2, 0xc7, 0xff, 0xaa, 0x48, 0x8a, 0x6c, 0x34, 0xd4, 0x99, 0xdf, 0x76, 0xf4, 0x27, 0xde, 0x36, 0x09, 0xbf, 0xcf, 0xd9, 0xfe, 0xae, 0x67, 0xff, 0xe0, 0xb0, 0xde, 0x59, 0x44, 0x63, 0xc4, 0x53, 0xb0, 0xab, 0x16, }; static const unsigned char ecdsa_secp256r1_sha512_8264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8264_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x3d, 0xaf, 0xcf, 0x4b, 0xa5, 0x5b, 0xf1, 0x34, 0x4a, 0xe1, 0x20, 0x05, 0xaa, 0x4a, 0x74, 0xf4, 0x6e, 0xaa, 0x85, 0xf5, 0x02, 0x31, 0x31, 0xcc, 0x63, 0x7a, 0xe2, 0xea, 0x90, 0xab, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8264 = { .name = "ecdsa_secp256r1_sha512_8264", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8264_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8264_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8264_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8265 for ECDSA, tcId is 386 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8265_pubkey[] = { 0x4c, 0xc3, 0xbf, 0x65, 0xe3, 0x2e, 0x00, 0x28, 0x4a, 0xdf, 0xca, 0x00, 0xf4, 0x0d, 0xf7, 0x55, 0x41, 0x5c, 0x48, 0x50, 0x91, 0xac, 0x04, 0x89, 0xae, 0x9a, 0x33, 0x71, 0x03, 0xa5, 0xf8, 0xf0, 0x12, 0x3a, 0xb8, 0x6d, 0xd4, 0x33, 0xb9, 0x33, 0xb4, 0xf2, 0x06, 0x3c, 0x00, 0x21, 0x44, 0xdf, 0x3c, 0xfe, 0xba, 0x78, 0xda, 0xd0, 0xed, 0x89, 0xc0, 0x37, 0x75, 0x41, 0x53, 0x29, 0x08, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8265_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x98, 0x7b, 0x5f, 0x9e, 0x97, 0x4a, 0xb7, 0xe2, 0x68, 0x95, 0xc2, 0x40, 0x0b, 0x54, 0x94, 0xe9, 0xe8, 0xdd, 0x55, 0x0b, 0xea, 0x04, 0x62, 0x63, 0x98, 0xc6, 0xf5, 0xc5, 0xd5, 0x21, 0x56, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8265 = { .name = "ecdsa_secp256r1_sha512_8265", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8265_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8265_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8265_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8266 for ECDSA, tcId is 387 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8266_pubkey[] = { 0x26, 0x4a, 0x7a, 0xd4, 0x39, 0xa4, 0x82, 0x8a, 0x9d, 0xc9, 0x7e, 0xcf, 0x83, 0x71, 0x55, 0x35, 0x5f, 0x99, 0xae, 0x0b, 0x65, 0x97, 0x5f, 0x85, 0x1b, 0x54, 0x1a, 0xd3, 0xa0, 0xe0, 0x32, 0xf0, 0x67, 0x26, 0x8b, 0x72, 0x98, 0xc7, 0x3e, 0x58, 0x18, 0x66, 0xfb, 0xcb, 0xd1, 0x61, 0x68, 0x9b, 0x16, 0xb8, 0x1c, 0xf2, 0x62, 0xe0, 0x07, 0xce, 0x68, 0xe2, 0x5a, 0x28, 0xc8, 0x3e, 0xf0, 0x41, }; static const unsigned char ecdsa_secp256r1_sha512_8266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8266_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xf9, 0x7e, 0x2f, 0xbf, 0x0e, 0x80, 0xd4, 0x12, 0x00, 0x5a, 0xa4, 0xa7, 0x50, 0x86, 0xa3, 0xf0, 0x04, 0xf5, 0x9d, 0x51, 0x2c, 0xb4, 0x72, 0x71, 0x79, 0x87, 0x33, 0xab, 0x41, 0x86, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8266 = { .name = "ecdsa_secp256r1_sha512_8266", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8266_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8266_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8266_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8267 for ECDSA, tcId is 388 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8267_pubkey[] = { 0x1d, 0x7f, 0xf4, 0xd3, 0xa4, 0x12, 0x06, 0xc8, 0x14, 0x36, 0x35, 0xf1, 0x28, 0x76, 0xe0, 0xea, 0x08, 0x75, 0xea, 0x5e, 0x4a, 0x5a, 0x24, 0x92, 0x50, 0xd0, 0xed, 0xa3, 0x3d, 0xaa, 0x21, 0x1f, 0x56, 0xe8, 0x9c, 0x0b, 0xea, 0xf9, 0x10, 0xac, 0x93, 0x4c, 0xa1, 0x23, 0x80, 0x45, 0x56, 0x00, 0xd0, 0xfd, 0x85, 0xb5, 0x6a, 0x70, 0x35, 0xcb, 0x17, 0x1b, 0x3f, 0x1c, 0x72, 0xa1, 0x55, 0x69, }; static const unsigned char ecdsa_secp256r1_sha512_8267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8267_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xd4, 0x82, 0xb6, 0x08, 0x64, 0xd6, 0xc5, 0xcb, 0x4f, 0xd5, 0xdb, 0x9e, 0x7e, 0x28, 0xcc, 0xd9, 0xa5, 0x94, 0x8c, 0x31, 0x6c, 0x87, 0x40, 0xfb, 0x42, 0x9c, 0x0f, 0x37, 0x16, 0x9a, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8267 = { .name = "ecdsa_secp256r1_sha512_8267", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8267_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8267_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8267_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8268 for ECDSA, tcId is 389 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8268_pubkey[] = { 0xb0, 0x96, 0x85, 0xf3, 0x38, 0xdc, 0xeb, 0x42, 0x17, 0x78, 0xa1, 0x45, 0x8d, 0x52, 0xbe, 0xd7, 0x34, 0xc2, 0x36, 0x24, 0x2d, 0xa2, 0xba, 0xa2, 0x80, 0xd6, 0xf6, 0xb7, 0xb8, 0x6e, 0x4f, 0x11, 0x7f, 0xe6, 0xa3, 0x41, 0x46, 0xb4, 0x22, 0xd7, 0xae, 0xbd, 0x1a, 0x51, 0xb2, 0x09, 0x48, 0xd7, 0x87, 0x2a, 0x51, 0x4c, 0x4c, 0xfd, 0x76, 0x86, 0xdc, 0x43, 0x6b, 0x70, 0x73, 0x3d, 0x64, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_8268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8268_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0xcd, 0x11, 0x08, 0x1a, 0x4d, 0x07, 0x59, 0xc1, 0x4f, 0x7b, 0xf4, 0x68, 0x13, 0xd5, 0x2c, 0xc6, 0x73, 0x81, 0x15, 0x32, 0x1b, 0xe0, 0xa4, 0xda, 0x78, 0xa3, 0x35, 0x6b, 0xb7, 0x15, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8268 = { .name = "ecdsa_secp256r1_sha512_8268", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8268_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8268_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8268_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8269 for ECDSA, tcId is 390 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8269_pubkey[] = { 0xdd, 0x81, 0x1f, 0x2c, 0x0f, 0x5e, 0x9d, 0x4f, 0xbb, 0x2e, 0xf3, 0x18, 0x18, 0xc1, 0xcd, 0x80, 0x72, 0x47, 0xbc, 0x14, 0xfc, 0xd1, 0x17, 0x0b, 0xef, 0x00, 0xe2, 0xc7, 0x1d, 0xc0, 0x37, 0xb4, 0x43, 0xa1, 0x5c, 0xdf, 0x8f, 0x3f, 0xbd, 0xc8, 0x7e, 0x06, 0x25, 0x0c, 0x07, 0x20, 0xd2, 0x61, 0xd2, 0xb8, 0xd0, 0x87, 0xfa, 0x7b, 0xf9, 0x54, 0x8f, 0x62, 0x93, 0xf0, 0xce, 0x5a, 0xe8, 0x99, }; static const unsigned char ecdsa_secp256r1_sha512_8269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8269_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe8, 0xdb, 0xff, 0xed, 0x13, 0xc9, 0xa2, 0x09, 0x30, 0x85, 0xc0, 0x79, 0x71, 0x4f, 0x11, 0xf2, 0x4e, 0xb5, 0x83, 0xd7, 0x3b, 0xa2, 0xb4, 0x16, 0xb3, 0x16, 0x91, 0x83, 0xe7, 0xd9, 0xb4, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8269 = { .name = "ecdsa_secp256r1_sha512_8269", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8269_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8269_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8269_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8270 for ECDSA, tcId is 391 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8270_pubkey[] = { 0x69, 0xd6, 0x0a, 0xe1, 0xf3, 0x9e, 0x1d, 0xa9, 0x58, 0x09, 0xd4, 0x08, 0x89, 0x47, 0x07, 0xad, 0x21, 0x34, 0xf4, 0x94, 0x3a, 0x1d, 0xb0, 0x89, 0xbe, 0xbf, 0x81, 0x5a, 0x39, 0x1f, 0x18, 0xdb, 0x32, 0xb4, 0x01, 0xd9, 0x8b, 0xf8, 0x94, 0xd3, 0xb6, 0xd5, 0x9e, 0x6e, 0xb4, 0x55, 0x73, 0x28, 0x56, 0x42, 0xe3, 0x58, 0xad, 0x68, 0x7b, 0x7d, 0x7b, 0xf9, 0x60, 0x0b, 0x19, 0x87, 0x80, 0x9e, }; static const unsigned char ecdsa_secp256r1_sha512_8270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8270_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x01, 0x55, 0x2a, 0x83, 0x81, 0x24, 0xbe, 0xc6, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xe0, 0x66, 0x73, 0x90, 0x0e, 0xac, 0x5c, 0x26, 0x2e, 0x5c, 0xe7, 0x9a, 0x85, 0x21, 0xcd, 0x1e, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8270 = { .name = "ecdsa_secp256r1_sha512_8270", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8270_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8270_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8270_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8271 for ECDSA, tcId is 392 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8271_pubkey[] = { 0xa6, 0x58, 0x55, 0x3a, 0x06, 0x20, 0xc9, 0x5e, 0x98, 0x7b, 0x5c, 0x31, 0x63, 0xbc, 0xfe, 0xa6, 0x8c, 0x52, 0x06, 0x5f, 0x53, 0xc9, 0xd5, 0x53, 0xf2, 0xa9, 0x24, 0xd8, 0xb3, 0xed, 0x51, 0x1f, 0x79, 0xf0, 0xdf, 0xec, 0x45, 0x36, 0xb6, 0x5a, 0xa5, 0xfb, 0x31, 0x29, 0x7e, 0x96, 0xf6, 0xb4, 0x64, 0xaa, 0x66, 0x9b, 0x92, 0x68, 0xb3, 0x15, 0x6c, 0x43, 0xd4, 0x61, 0x29, 0x78, 0xa5, 0x77, }; static const unsigned char ecdsa_secp256r1_sha512_8271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8271_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x94, 0x02, 0xaa, 0x56, 0x07, 0x02, 0x49, 0x7c, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc1, 0x10, 0x00, 0x25, 0x6f, 0xb1, 0xa0, 0xad, 0xd7, 0xc6, 0x15, 0x6a, 0x47, 0x47, 0x37, 0x18, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8271 = { .name = "ecdsa_secp256r1_sha512_8271", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8271_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8271_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8271_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8272 for ECDSA, tcId is 393 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8272_pubkey[] = { 0xbc, 0x4d, 0x33, 0x54, 0xa6, 0xa9, 0x73, 0xdd, 0x80, 0x88, 0x91, 0x9c, 0xc1, 0x81, 0x19, 0x4e, 0x87, 0x9e, 0xd7, 0x92, 0x0d, 0xb3, 0x0d, 0x0d, 0x12, 0x78, 0xed, 0xf7, 0x44, 0x13, 0xb7, 0xb9, 0x24, 0x50, 0xd1, 0x62, 0xb2, 0x6d, 0xcb, 0x25, 0xfb, 0xbd, 0x53, 0xea, 0x40, 0x44, 0x18, 0x99, 0x81, 0xd7, 0x37, 0x05, 0x59, 0x25, 0xbd, 0x2e, 0x86, 0xbf, 0xb0, 0x37, 0x4b, 0x09, 0xf3, 0xca, }; static const unsigned char ecdsa_secp256r1_sha512_8272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8272_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x03, 0xff, 0x81, 0x8a, 0x83, 0x6e, 0x3a, 0x53, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xb9, 0x8c, 0xba, 0xd0, 0xb6, 0xe5, 0x35, 0x81, 0x2f, 0x43, 0x3a, 0x09, 0x6c, 0xa1, 0x11, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8272 = { .name = "ecdsa_secp256r1_sha512_8272", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8272_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8272_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8272_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8273 for ECDSA, tcId is 394 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8273_pubkey[] = { 0x0e, 0xb6, 0x28, 0x72, 0x4f, 0xce, 0x76, 0x4c, 0x68, 0x7d, 0x87, 0x4a, 0xde, 0x7b, 0x8e, 0x0a, 0xa4, 0xab, 0xf2, 0x0e, 0xe6, 0xe3, 0x61, 0x0f, 0xac, 0x9f, 0xe3, 0xe7, 0x2f, 0x97, 0xab, 0x5a, 0xed, 0x09, 0xf4, 0x84, 0x36, 0x60, 0xeb, 0x1d, 0xaf, 0x01, 0x5d, 0x39, 0x7a, 0x7c, 0x10, 0x73, 0xd7, 0xae, 0x43, 0xbd, 0xa0, 0xba, 0x3e, 0x11, 0x70, 0x08, 0x78, 0x5a, 0xbf, 0xff, 0xa0, 0x0f, }; static const unsigned char ecdsa_secp256r1_sha512_8273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8273_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0x8d, 0xdf, 0x70, 0x9d, 0x4a, 0xa1, 0xbd, 0xdf, 0x2e, 0x4b, 0xc7, 0xc7, 0xf2, 0xcb, 0x51, 0x6c, 0xb6, 0x42, 0xbb, 0x3e, 0x39, 0xc3, 0xfe, 0xaf, 0x2f, 0xcf, 0x16, 0xab, 0x95, 0x39, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8273 = { .name = "ecdsa_secp256r1_sha512_8273", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8273_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8273_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8273_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8274 for ECDSA, tcId is 395 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8274_pubkey[] = { 0xe7, 0xac, 0x5c, 0xc7, 0xf2, 0x96, 0x91, 0x2f, 0x70, 0x3f, 0x59, 0xfe, 0x88, 0xe4, 0x9b, 0x52, 0x1d, 0xa2, 0x45, 0xe1, 0x2e, 0x6e, 0xee, 0x16, 0x1e, 0xe6, 0xb3, 0xb1, 0x12, 0x76, 0x11, 0xa7, 0x7b, 0x3b, 0xed, 0xd2, 0xa7, 0x73, 0xcf, 0x58, 0xb0, 0x62, 0x9b, 0x93, 0x6d, 0xd8, 0x5d, 0xad, 0x2d, 0x0c, 0x39, 0x67, 0x63, 0x06, 0xed, 0x63, 0xe1, 0xa9, 0xbc, 0xd0, 0xe0, 0x8b, 0xcc, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8274_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8274 = { .name = "ecdsa_secp256r1_sha512_8274", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8274_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8274_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8274_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8275 for ECDSA, tcId is 396 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8275_pubkey[] = { 0x24, 0x07, 0xb6, 0x0a, 0xbf, 0x3e, 0xe5, 0xed, 0xaf, 0x92, 0xed, 0x50, 0x5a, 0x11, 0xd0, 0xdd, 0xce, 0x0e, 0xa3, 0x3e, 0xca, 0x58, 0xa0, 0x31, 0xbb, 0x2f, 0x16, 0x2c, 0x51, 0x2f, 0x40, 0x62, 0xfb, 0x81, 0xbf, 0xf3, 0x6b, 0xf9, 0x67, 0xe8, 0x34, 0xe3, 0xd5, 0xd4, 0x68, 0x73, 0x0d, 0xcd, 0x70, 0x44, 0x00, 0x22, 0xab, 0x60, 0x06, 0x1a, 0x62, 0xfa, 0xc5, 0x33, 0x50, 0xfe, 0x25, 0x9f, }; static const unsigned char ecdsa_secp256r1_sha512_8275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8275_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8275 = { .name = "ecdsa_secp256r1_sha512_8275", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8275_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8275_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8275_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8276 for ECDSA, tcId is 397 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8276_pubkey[] = { 0x47, 0xb2, 0xad, 0x96, 0xdf, 0xc2, 0xf2, 0x3f, 0xe5, 0x92, 0x68, 0x09, 0xf3, 0x80, 0x42, 0xb2, 0xc8, 0x01, 0x96, 0x2b, 0xd7, 0x39, 0x4c, 0xef, 0xbf, 0x4a, 0xac, 0xb2, 0x55, 0x4b, 0x7b, 0x0b, 0xdf, 0x2b, 0x93, 0x7a, 0x16, 0xa7, 0xd9, 0x6a, 0x2a, 0x06, 0x82, 0xcd, 0x16, 0x44, 0x28, 0x89, 0x02, 0x08, 0x59, 0x7f, 0x2c, 0xdc, 0xc7, 0x34, 0xfd, 0xa7, 0x36, 0x00, 0xb5, 0xcf, 0x6c, 0x59, }; static const unsigned char ecdsa_secp256r1_sha512_8276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8276_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8276 = { .name = "ecdsa_secp256r1_sha512_8276", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8276_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8276_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8276_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8277 for ECDSA, tcId is 398 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8277_pubkey[] = { 0x69, 0xa6, 0x5b, 0x75, 0xf3, 0x1a, 0xe7, 0xb4, 0x93, 0x02, 0x92, 0xf9, 0x09, 0x02, 0x46, 0x1b, 0xef, 0xce, 0xe5, 0xd1, 0x60, 0x69, 0x39, 0xc2, 0x8e, 0x01, 0xb6, 0x52, 0xa7, 0xfb, 0xc4, 0x98, 0xcf, 0x68, 0x61, 0x9e, 0x58, 0x60, 0x12, 0x8f, 0x56, 0xce, 0xcf, 0x53, 0xeb, 0xa2, 0xff, 0xe8, 0x28, 0x89, 0xa9, 0xbb, 0x04, 0xa5, 0xfa, 0x4c, 0x8b, 0x72, 0x2b, 0xc9, 0x1d, 0x55, 0x97, 0x8a, }; static const unsigned char ecdsa_secp256r1_sha512_8277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8277_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8277 = { .name = "ecdsa_secp256r1_sha512_8277", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8277_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8277_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8277_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8278 for ECDSA, tcId is 399 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8278_pubkey[] = { 0xb2, 0x03, 0x71, 0x76, 0xc8, 0x4d, 0xb0, 0x4a, 0x6c, 0x77, 0x3e, 0x32, 0xf9, 0xed, 0x1d, 0x6b, 0x25, 0xef, 0x4c, 0x30, 0x3c, 0x67, 0x25, 0xc6, 0x93, 0x2e, 0xc2, 0xcc, 0x27, 0x88, 0xbc, 0xbb, 0x93, 0x61, 0x50, 0x5e, 0x6b, 0x77, 0x16, 0x91, 0xad, 0xb4, 0x15, 0x98, 0xf2, 0x92, 0xd6, 0x52, 0x17, 0x22, 0x40, 0x4b, 0xf1, 0x83, 0x24, 0x1b, 0x19, 0x57, 0x38, 0xb7, 0x7a, 0xbd, 0x6c, 0xfe, }; static const unsigned char ecdsa_secp256r1_sha512_8278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8278_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8278 = { .name = "ecdsa_secp256r1_sha512_8278", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8278_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8278_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8278_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8279 for ECDSA, tcId is 400 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8279_pubkey[] = { 0x1e, 0xef, 0x95, 0xae, 0xf7, 0x1f, 0x79, 0x3a, 0xfd, 0x50, 0xbb, 0x26, 0x04, 0x06, 0x4d, 0x63, 0xe8, 0x8b, 0xef, 0x74, 0x04, 0xa4, 0xd0, 0xe2, 0x06, 0x44, 0x62, 0x45, 0xae, 0x2e, 0x78, 0x34, 0xc9, 0x6e, 0x86, 0xdd, 0x04, 0x0f, 0x97, 0x94, 0xb6, 0x37, 0x12, 0xd9, 0x0e, 0x71, 0x95, 0x76, 0xb8, 0xb9, 0x2c, 0x40, 0x6a, 0xb0, 0xf2, 0x88, 0xad, 0x9b, 0x32, 0x7b, 0xd1, 0x24, 0x45, 0x4f, }; static const unsigned char ecdsa_secp256r1_sha512_8279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8279_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8279 = { .name = "ecdsa_secp256r1_sha512_8279", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8279_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8279_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8279_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8280 for ECDSA, tcId is 401 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8280_pubkey[] = { 0xa9, 0x73, 0x48, 0x99, 0xc9, 0x54, 0xe5, 0xb7, 0xad, 0xbc, 0xa8, 0xf7, 0x83, 0x42, 0x8b, 0x5f, 0xbc, 0xbd, 0xfd, 0x3d, 0x28, 0x13, 0xf8, 0xd2, 0xf9, 0x5b, 0x31, 0xa7, 0x8a, 0xb1, 0x07, 0x56, 0x76, 0x67, 0xab, 0xf8, 0xc0, 0x2c, 0xe4, 0x95, 0x1b, 0xc5, 0x9b, 0x25, 0x64, 0x13, 0x0c, 0x27, 0xd7, 0xb6, 0x4c, 0xdb, 0xc5, 0xca, 0xd9, 0x5c, 0xa4, 0x2d, 0x5b, 0xbb, 0x7c, 0xd4, 0xe7, 0x93, }; static const unsigned char ecdsa_secp256r1_sha512_8280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8280_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8280 = { .name = "ecdsa_secp256r1_sha512_8280", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8280_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8280_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8280_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8281 for ECDSA, tcId is 402 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8281_pubkey[] = { 0x1a, 0xe5, 0x16, 0x62, 0x33, 0x1a, 0x1d, 0xbf, 0xab, 0x07, 0x51, 0xd3, 0x0d, 0xfa, 0xb2, 0x27, 0x3a, 0x04, 0xa2, 0x39, 0xe0, 0x55, 0xa5, 0x37, 0xb1, 0x6a, 0xb5, 0x95, 0xf9, 0x61, 0x23, 0x96, 0x43, 0x4f, 0x21, 0xc2, 0xbf, 0xe6, 0x55, 0x5c, 0x9f, 0xc4, 0xa8, 0xe8, 0x2d, 0xab, 0x1f, 0xa5, 0x63, 0x18, 0x81, 0xb0, 0x16, 0xe0, 0x83, 0x1d, 0x9e, 0x1b, 0xbf, 0x57, 0x99, 0xfc, 0xf3, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_8281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8281_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8281 = { .name = "ecdsa_secp256r1_sha512_8281", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8281_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8281_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8281_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8282 for ECDSA, tcId is 403 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8282_pubkey[] = { 0x53, 0xc9, 0x0c, 0xdd, 0x8b, 0x0d, 0xad, 0xd2, 0x1c, 0x44, 0xad, 0x55, 0x7b, 0x32, 0x7f, 0x4d, 0xbf, 0x57, 0x14, 0x4a, 0xaf, 0x06, 0x59, 0x7d, 0xeb, 0x3f, 0x94, 0x12, 0x52, 0x06, 0xa6, 0xc1, 0x46, 0x03, 0x47, 0x5b, 0xd7, 0x9b, 0x30, 0xe3, 0x63, 0x40, 0xcd, 0x09, 0xb0, 0xb5, 0x9e, 0x6c, 0xd4, 0x6c, 0xe9, 0x01, 0x50, 0xe9, 0xff, 0xe5, 0xc8, 0xa0, 0x17, 0x2b, 0x2c, 0x98, 0x98, 0xe3, }; static const unsigned char ecdsa_secp256r1_sha512_8282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8282_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8282 = { .name = "ecdsa_secp256r1_sha512_8282", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8282_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8282_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8282_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8283 for ECDSA, tcId is 404 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8283_pubkey[] = { 0x33, 0x79, 0x75, 0x39, 0x51, 0x5c, 0x51, 0xf4, 0x29, 0x96, 0x7b, 0x8e, 0x36, 0x93, 0x0d, 0x9f, 0xdd, 0xa1, 0xed, 0xb1, 0x3a, 0xec, 0xec, 0x97, 0x71, 0xf7, 0xcd, 0xe5, 0xf6, 0xf2, 0xe7, 0x4e, 0xba, 0x51, 0xd0, 0xb6, 0x45, 0x6b, 0xb9, 0x02, 0xdb, 0xa1, 0xf3, 0xea, 0x43, 0x6f, 0x96, 0xad, 0x23, 0x55, 0xda, 0x45, 0x4d, 0xc9, 0xb3, 0x2c, 0x50, 0x3c, 0x4b, 0xc6, 0xcf, 0xd6, 0xd4, 0x10, }; static const unsigned char ecdsa_secp256r1_sha512_8283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8283_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8283 = { .name = "ecdsa_secp256r1_sha512_8283", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8283_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8283_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8283_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8284 for ECDSA, tcId is 405 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8284_pubkey[] = { 0x0a, 0x8f, 0x5f, 0x1d, 0x5b, 0xbd, 0x27, 0x83, 0xfa, 0x7f, 0x37, 0xc8, 0x68, 0x79, 0x05, 0x7f, 0xb2, 0xfc, 0xf2, 0x53, 0x83, 0xaa, 0xfb, 0x86, 0xd0, 0x3d, 0x6b, 0xaf, 0xb4, 0x1a, 0x17, 0xb3, 0xea, 0xf6, 0xda, 0x71, 0x5f, 0xe9, 0x50, 0x34, 0x9f, 0xd5, 0x73, 0x61, 0x17, 0xb0, 0x8e, 0x15, 0xe3, 0x2c, 0xf1, 0xd2, 0xfd, 0xc0, 0x03, 0xe5, 0x10, 0x00, 0x9f, 0x1b, 0x4b, 0xa1, 0xe6, 0x48, }; static const unsigned char ecdsa_secp256r1_sha512_8284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8284_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8284 = { .name = "ecdsa_secp256r1_sha512_8284", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8284_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8284_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8284_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8285 for ECDSA, tcId is 406 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8285_pubkey[] = { 0x1d, 0xbc, 0x94, 0xe9, 0x6c, 0x05, 0x6b, 0x9d, 0x2c, 0xb6, 0x77, 0x3b, 0xb2, 0x4b, 0x69, 0xed, 0x47, 0x38, 0x51, 0xba, 0xdf, 0x92, 0x7a, 0x29, 0x95, 0x5a, 0xff, 0x29, 0x0e, 0xf3, 0x67, 0x5a, 0x65, 0xe5, 0x87, 0x56, 0x11, 0x22, 0xaa, 0x82, 0x26, 0xfa, 0xcb, 0x95, 0xdf, 0x08, 0x30, 0x8c, 0xad, 0xf0, 0x1c, 0x83, 0x51, 0xa1, 0x56, 0x91, 0x76, 0xd9, 0x17, 0x82, 0x11, 0x13, 0xaa, 0x7c, }; static const unsigned char ecdsa_secp256r1_sha512_8285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8285_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8285 = { .name = "ecdsa_secp256r1_sha512_8285", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8285_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8285_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8285_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8286 for ECDSA, tcId is 407 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8286_pubkey[] = { 0x08, 0x4a, 0xb8, 0x85, 0xdb, 0xff, 0x7f, 0x12, 0xe6, 0xcd, 0xad, 0xb5, 0x9d, 0x45, 0x6e, 0x50, 0x07, 0x97, 0x77, 0x94, 0x25, 0xc7, 0x51, 0x8c, 0x25, 0x9c, 0x83, 0x71, 0x82, 0x89, 0xe6, 0xe9, 0x91, 0xc3, 0x45, 0xd3, 0xa0, 0x93, 0xe8, 0x66, 0x70, 0x60, 0x5b, 0xbc, 0x2f, 0xf4, 0xc6, 0x9d, 0x0e, 0xd6, 0x94, 0xfd, 0x43, 0x3e, 0xc6, 0xb6, 0xba, 0x1b, 0xf7, 0xd5, 0x6c, 0x3e, 0x6b, 0x51, }; static const unsigned char ecdsa_secp256r1_sha512_8286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8286_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8286 = { .name = "ecdsa_secp256r1_sha512_8286", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8286_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8286_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8286_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8287 for ECDSA, tcId is 408 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8287_pubkey[] = { 0x00, 0x3a, 0xdf, 0xa4, 0xc6, 0x20, 0xa2, 0x07, 0x09, 0x6c, 0xd1, 0x8e, 0xe8, 0xfd, 0x2a, 0x90, 0xe2, 0x01, 0x06, 0xcf, 0x82, 0x4a, 0x0c, 0x63, 0xd6, 0xde, 0xc7, 0x27, 0xa9, 0xfe, 0x7f, 0x50, 0x94, 0x30, 0xd2, 0x6b, 0xdd, 0x5f, 0x71, 0xe8, 0x19, 0xd1, 0x2b, 0x70, 0x06, 0x99, 0x01, 0x46, 0x1a, 0xe0, 0x83, 0xcc, 0x80, 0x91, 0x22, 0xd4, 0xfb, 0x86, 0xb5, 0xc4, 0x75, 0x24, 0x4e, 0x5a, }; static const unsigned char ecdsa_secp256r1_sha512_8287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8287_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8287 = { .name = "ecdsa_secp256r1_sha512_8287", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8287_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8287_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8287_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 408 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8288 for ECDSA, tcId is 409 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8288_pubkey[] = { 0x7c, 0x98, 0xb2, 0xd4, 0x7e, 0xb4, 0x33, 0xc0, 0xd1, 0x8e, 0x53, 0x3c, 0xfb, 0xc8, 0x90, 0x9d, 0x66, 0xf7, 0xb7, 0x9d, 0x59, 0x25, 0xcc, 0xb1, 0x7e, 0xcc, 0xec, 0x9d, 0x10, 0x5c, 0x58, 0x84, 0x8d, 0x5c, 0xa9, 0x9b, 0x35, 0x0b, 0xd7, 0xd1, 0x0a, 0xb5, 0xee, 0x6f, 0xcf, 0xe4, 0x66, 0x23, 0xfd, 0xc0, 0x3e, 0x9f, 0x82, 0x81, 0x58, 0xf4, 0xd4, 0xcc, 0x08, 0xad, 0x1f, 0xf8, 0x3d, 0xe4, }; static const unsigned char ecdsa_secp256r1_sha512_8288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8288_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xb4, 0xcf, 0xa1, 0x99, 0x6e, 0xc1, 0xd2, 0x4c, 0xdb, 0xc8, 0xfa, 0x17, 0xfc, 0xab, 0xc3, 0xa5, 0xd4, 0xb2, 0xb3, 0x6c, 0xf4, 0xb5, 0x0a, 0x7b, 0x77, 0x5a, 0xb7, 0x87, 0x85, 0x71, 0x07, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8288 = { .name = "ecdsa_secp256r1_sha512_8288", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8288_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8288_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8288_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 409 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8289 for ECDSA, tcId is 410 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8289_pubkey[] = { 0x7c, 0x98, 0xb2, 0xd4, 0x7e, 0xb4, 0x33, 0xc0, 0xd1, 0x8e, 0x53, 0x3c, 0xfb, 0xc8, 0x90, 0x9d, 0x66, 0xf7, 0xb7, 0x9d, 0x59, 0x25, 0xcc, 0xb1, 0x7e, 0xcc, 0xec, 0x9d, 0x10, 0x5c, 0x58, 0x84, 0x72, 0xa3, 0x56, 0x63, 0xca, 0xf4, 0x28, 0x2f, 0xf5, 0x4a, 0x11, 0x90, 0x30, 0x1b, 0x99, 0xdc, 0x02, 0x3f, 0xc1, 0x61, 0x7d, 0x7e, 0xa7, 0x0b, 0x2b, 0x33, 0xf7, 0x52, 0xe0, 0x07, 0xc2, 0x1b, }; static const unsigned char ecdsa_secp256r1_sha512_8289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8289_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xb4, 0xcf, 0xa1, 0x99, 0x6e, 0xc1, 0xd2, 0x4c, 0xdb, 0xc8, 0xfa, 0x17, 0xfc, 0xab, 0xc3, 0xa5, 0xd4, 0xb2, 0xb3, 0x6c, 0xf4, 0xb5, 0x0a, 0x7b, 0x77, 0x5a, 0xb7, 0x87, 0x85, 0x71, 0x07, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8289 = { .name = "ecdsa_secp256r1_sha512_8289", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8289_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8289_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8289_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 410 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8290 for ECDSA, tcId is 411 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8290_pubkey[] = { 0xb7, 0xa9, 0x0e, 0x21, 0xe7, 0x54, 0x7d, 0x73, 0x26, 0x79, 0x40, 0x03, 0x3c, 0xea, 0x05, 0x04, 0x2c, 0x50, 0xf7, 0xc9, 0xfa, 0x5e, 0xae, 0xb4, 0x71, 0xcd, 0x62, 0x60, 0xc6, 0x85, 0xf2, 0xe3, 0x8b, 0xb7, 0x30, 0x9d, 0x0c, 0x3b, 0xab, 0x24, 0x9f, 0xaa, 0xf3, 0xe4, 0x41, 0x79, 0xd6, 0xdd, 0x53, 0x02, 0x37, 0x5c, 0x58, 0x0f, 0xd0, 0x57, 0x0a, 0x78, 0x8c, 0x6b, 0xe3, 0x68, 0x0c, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_8290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8290_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8290 = { .name = "ecdsa_secp256r1_sha512_8290", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8290_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8290_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8290_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 411 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8291 for ECDSA, tcId is 412 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8291_pubkey[] = { 0x15, 0x50, 0xa1, 0x73, 0x37, 0x3b, 0x2d, 0x59, 0x43, 0x74, 0xf0, 0x64, 0x2c, 0xd7, 0x3d, 0xe0, 0x6a, 0x04, 0x5c, 0x09, 0xc7, 0xa4, 0xf3, 0x88, 0xc7, 0x31, 0xe8, 0xcd, 0x89, 0x71, 0xad, 0xfc, 0x9a, 0x3a, 0x98, 0x43, 0x58, 0x3a, 0x86, 0xc0, 0xe1, 0xc6, 0x2c, 0xbd, 0xe6, 0x71, 0x65, 0xf4, 0x0a, 0x92, 0x6b, 0x10, 0x28, 0xba, 0x38, 0xaa, 0x38, 0x95, 0xe1, 0x88, 0xeb, 0xbc, 0x70, 0x66, }; static const unsigned char ecdsa_secp256r1_sha512_8291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8291_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8291 = { .name = "ecdsa_secp256r1_sha512_8291", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8291_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8291_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8291_sig, .siglen = 65, .result = -1, .comment = "point with x-coordinate 0, tcId is 412 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8292 for ECDSA, tcId is 413 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8292_pubkey[] = { 0x31, 0x34, 0x47, 0x77, 0x81, 0x95, 0xda, 0xa1, 0x79, 0x1a, 0x65, 0x30, 0xcd, 0x06, 0x97, 0xae, 0x34, 0xbf, 0x9d, 0x8d, 0x22, 0x59, 0x84, 0x39, 0x4f, 0x72, 0xee, 0xf3, 0x50, 0x59, 0x71, 0x11, 0x09, 0x96, 0xa8, 0xfb, 0xdd, 0x1a, 0x70, 0xec, 0xd6, 0x4c, 0xb0, 0x0b, 0x59, 0x5a, 0xfe, 0x16, 0x69, 0xbf, 0xef, 0x80, 0xd9, 0x17, 0x56, 0xa6, 0x2d, 0x84, 0xc1, 0xd8, 0x3e, 0x0f, 0x22, 0xab, }; static const unsigned char ecdsa_secp256r1_sha512_8292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8292_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8292 = { .name = "ecdsa_secp256r1_sha512_8292", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8292_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8292_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8292_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 413 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8293 for ECDSA, tcId is 414 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8293_pubkey[] = { 0x4a, 0xda, 0x63, 0x49, 0x41, 0x47, 0x6c, 0xa6, 0x3c, 0x2c, 0x58, 0x03, 0xee, 0xc2, 0xf3, 0x3b, 0x2d, 0x17, 0x92, 0x0f, 0x79, 0x8a, 0x5b, 0xe6, 0x27, 0x5f, 0x5a, 0x54, 0xcd, 0x2e, 0x76, 0x39, 0xb1, 0xa0, 0x4b, 0xea, 0xd5, 0xc7, 0x31, 0x4c, 0x42, 0x74, 0x92, 0xdb, 0x21, 0xb9, 0x54, 0x4d, 0x81, 0xca, 0xa8, 0x15, 0x95, 0x87, 0xe4, 0x1a, 0xa0, 0x23, 0xaa, 0x96, 0x7f, 0x31, 0xaa, 0xa1, }; static const unsigned char ecdsa_secp256r1_sha512_8293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8293_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8293 = { .name = "ecdsa_secp256r1_sha512_8293", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8293_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8293_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8293_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 414 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8294 for ECDSA, tcId is 415 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8294_pubkey[] = { 0xaa, 0xcc, 0xe0, 0x93, 0x27, 0x0f, 0xa5, 0x9a, 0xd4, 0x12, 0xb5, 0x45, 0x9a, 0x08, 0xe4, 0x90, 0x74, 0x3b, 0x97, 0x08, 0x6c, 0x78, 0x1a, 0xc3, 0xc8, 0xd5, 0x40, 0x30, 0xb4, 0x1a, 0x31, 0x19, 0x3b, 0xec, 0xe4, 0x95, 0x61, 0x72, 0xd5, 0x6b, 0xef, 0xb7, 0x01, 0x1d, 0x68, 0x4e, 0x77, 0x29, 0x05, 0xe4, 0x8d, 0x21, 0x15, 0x44, 0x4a, 0x75, 0xac, 0x7a, 0x32, 0x5a, 0x3f, 0x25, 0xf4, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha512_8294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8294_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8294 = { .name = "ecdsa_secp256r1_sha512_8294", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8294_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8294_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8294_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8295 for ECDSA, tcId is 416 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8295_pubkey[] = { 0xf6, 0x2b, 0x8d, 0x7f, 0xee, 0xff, 0x5a, 0x84, 0x7a, 0xb7, 0x92, 0x12, 0x26, 0x9e, 0x55, 0xe6, 0x2f, 0xa8, 0x7e, 0xbe, 0x93, 0x08, 0x21, 0x74, 0x7b, 0x57, 0xa5, 0x11, 0xa5, 0xea, 0x99, 0xf0, 0x43, 0x9e, 0xe0, 0x57, 0xbb, 0x27, 0x89, 0x85, 0x82, 0xa6, 0x83, 0xc3, 0xfd, 0xb7, 0xf9, 0x54, 0x04, 0xd4, 0x1d, 0x42, 0xf2, 0x76, 0x80, 0x37, 0x51, 0xa3, 0x16, 0xeb, 0x3a, 0xab, 0x7e, 0xbf, }; static const unsigned char ecdsa_secp256r1_sha512_8295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8295_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8295 = { .name = "ecdsa_secp256r1_sha512_8295", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8295_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8295_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8295_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8296 for ECDSA, tcId is 417 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8296_pubkey[] = { 0x4b, 0xaa, 0x07, 0xff, 0x6e, 0x7b, 0xb9, 0xaa, 0x22, 0x3d, 0x1c, 0x61, 0x93, 0x20, 0x05, 0xfe, 0x98, 0xfe, 0x78, 0xb7, 0x87, 0xfd, 0xab, 0x4b, 0xd3, 0x61, 0x9b, 0xc8, 0x83, 0x30, 0x72, 0xa2, 0xbc, 0xac, 0xd6, 0x38, 0x02, 0xc5, 0x6a, 0xf8, 0x26, 0x07, 0x95, 0x3e, 0x72, 0xa0, 0xf5, 0xd3, 0xc2, 0x3b, 0xd2, 0x65, 0x54, 0x4e, 0x02, 0x09, 0x51, 0x82, 0x4e, 0xa4, 0x85, 0x55, 0x5d, 0x33, }; static const unsigned char ecdsa_secp256r1_sha512_8296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8296_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8296 = { .name = "ecdsa_secp256r1_sha512_8296", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8296_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8296_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8296_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8297 for ECDSA, tcId is 418 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8297_pubkey[] = { 0x0c, 0x75, 0x3e, 0xd1, 0xba, 0x92, 0xf7, 0x66, 0x80, 0x0f, 0xdd, 0x0a, 0xe1, 0xc0, 0xd7, 0xf8, 0xf4, 0xcd, 0x83, 0x05, 0xfd, 0x80, 0x3d, 0x8b, 0xca, 0x88, 0x13, 0x97, 0xb5, 0x93, 0x7e, 0x2d, 0xb5, 0x68, 0x50, 0x9b, 0x1f, 0xaf, 0x3c, 0xf2, 0x51, 0xde, 0x6d, 0xb9, 0x81, 0x0e, 0x8b, 0x8c, 0xae, 0xd2, 0x35, 0xda, 0x10, 0xee, 0xdd, 0xbe, 0xd6, 0x27, 0x75, 0xc8, 0xe5, 0xc9, 0x46, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_8297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8297_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8297 = { .name = "ecdsa_secp256r1_sha512_8297", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8297_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8297_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8297_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 418 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8298 for ECDSA, tcId is 419 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8298_pubkey[] = { 0x03, 0x0f, 0xdc, 0xae, 0x65, 0x41, 0xf2, 0x2c, 0x5b, 0xab, 0x25, 0x4e, 0x4f, 0x1a, 0x28, 0x5c, 0x50, 0x7d, 0x1c, 0xef, 0xea, 0x03, 0xbf, 0x90, 0xcf, 0x19, 0xda, 0xf3, 0xcb, 0x62, 0xdf, 0x69, 0x5f, 0xf2, 0xc9, 0x4d, 0x58, 0x8f, 0x2c, 0x2b, 0x2b, 0x0a, 0x12, 0xbe, 0xbc, 0x01, 0x1b, 0xce, 0xe4, 0xfa, 0x1b, 0x54, 0x50, 0x6e, 0xc0, 0x7d, 0x0a, 0x29, 0xd2, 0x4a, 0x08, 0x91, 0x19, 0x3c, }; static const unsigned char ecdsa_secp256r1_sha512_8298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8298_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8298 = { .name = "ecdsa_secp256r1_sha512_8298", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8298_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8298_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8298_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 419 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8299 for ECDSA, tcId is 420 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8299_pubkey[] = { 0x03, 0xfc, 0x62, 0x1e, 0xaf, 0x90, 0xc2, 0x3d, 0x8f, 0x9f, 0xa1, 0x25, 0xd2, 0xc5, 0x9b, 0x87, 0x28, 0xeb, 0xcc, 0xb3, 0x0c, 0xa3, 0xe3, 0xdb, 0x87, 0x9a, 0x06, 0xca, 0x90, 0xf2, 0x0c, 0xdc, 0xae, 0x58, 0xd3, 0xf0, 0xc6, 0xae, 0xf0, 0xe8, 0x05, 0xbe, 0x10, 0xea, 0x54, 0xe2, 0x3c, 0xf6, 0xf0, 0x39, 0x7f, 0x9a, 0xdd, 0xdd, 0xc2, 0xb0, 0x90, 0x88, 0x85, 0x53, 0x16, 0xb0, 0xef, 0x44, }; static const unsigned char ecdsa_secp256r1_sha512_8299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8299_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8299 = { .name = "ecdsa_secp256r1_sha512_8299", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8299_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8299_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8299_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 420 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8300 for ECDSA, tcId is 421 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8300_pubkey[] = { 0x70, 0xf2, 0xce, 0x24, 0xdc, 0x62, 0x92, 0x3b, 0xb0, 0x9c, 0xc9, 0x2d, 0x74, 0x32, 0x9b, 0xbd, 0x0d, 0x2e, 0x6b, 0x0e, 0x35, 0x4c, 0x0b, 0xe2, 0x38, 0x3d, 0x24, 0xac, 0xdc, 0xcb, 0x9e, 0x4c, 0xd4, 0x2d, 0x1f, 0x97, 0x34, 0x66, 0xf5, 0xe5, 0x46, 0x2a, 0x93, 0x90, 0x84, 0xa2, 0x94, 0xeb, 0xfc, 0x7a, 0x45, 0x62, 0x9c, 0x70, 0xee, 0x5d, 0xef, 0x46, 0xde, 0x95, 0x36, 0xea, 0x7b, 0xf7, }; static const unsigned char ecdsa_secp256r1_sha512_8300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8300_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8300 = { .name = "ecdsa_secp256r1_sha512_8300", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8300_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8300_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8300_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8301 for ECDSA, tcId is 422 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8301_pubkey[] = { 0x73, 0x2b, 0x8a, 0xc0, 0xc3, 0x0f, 0xe4, 0x43, 0x07, 0x43, 0x12, 0x35, 0x27, 0x1c, 0xb5, 0xd6, 0xe5, 0xf6, 0x77, 0xa1, 0x9c, 0xe3, 0xf0, 0x58, 0xb9, 0x39, 0xa7, 0xbf, 0x19, 0x34, 0x9d, 0x3c, 0x85, 0x8c, 0xc7, 0x35, 0xaf, 0x85, 0x77, 0x46, 0x82, 0x75, 0x84, 0x7c, 0xf5, 0xec, 0x19, 0x97, 0x2e, 0x6c, 0x20, 0x73, 0x82, 0x76, 0xe2, 0x70, 0x8b, 0x23, 0xc5, 0x95, 0xbf, 0xc4, 0x43, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8301_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8301_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8301 = { .name = "ecdsa_secp256r1_sha512_8301", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8301_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8301_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8301_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8302 for ECDSA, tcId is 423 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8302_pubkey[] = { 0x47, 0xaf, 0xf9, 0x50, 0x18, 0x25, 0xa1, 0x66, 0x78, 0x2b, 0xb5, 0x8a, 0x5b, 0x45, 0x90, 0x06, 0xea, 0xcd, 0xbc, 0xe5, 0xe5, 0x32, 0x3a, 0xdd, 0xad, 0x34, 0xec, 0x1b, 0x64, 0x44, 0xcd, 0xce, 0x91, 0x99, 0xc3, 0x15, 0x02, 0xad, 0x42, 0x77, 0xc7, 0x3d, 0xdd, 0x0c, 0x80, 0x7b, 0x72, 0x63, 0x4c, 0x45, 0x76, 0x24, 0x04, 0x83, 0x7d, 0x98, 0x14, 0xa5, 0xd4, 0xb5, 0xa7, 0xc3, 0xf3, 0x98, }; static const unsigned char ecdsa_secp256r1_sha512_8302_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8302_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8302 = { .name = "ecdsa_secp256r1_sha512_8302", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8302_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8302_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8302_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 423 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8303 for ECDSA, tcId is 424 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8303_pubkey[] = { 0xae, 0xd8, 0xee, 0xff, 0x77, 0x64, 0x4b, 0xf8, 0x3b, 0x92, 0x22, 0xf8, 0xf5, 0x71, 0x73, 0xfa, 0x82, 0x17, 0xec, 0x7e, 0x07, 0x63, 0xee, 0x7d, 0x71, 0x71, 0xfb, 0x60, 0x92, 0xfb, 0xa5, 0xc0, 0x64, 0x86, 0xa8, 0x6d, 0x94, 0xf4, 0x88, 0x34, 0xba, 0x5a, 0xdb, 0xaf, 0x34, 0x96, 0x87, 0xf9, 0xce, 0xe4, 0x00, 0x38, 0x96, 0x42, 0xb8, 0x28, 0xe6, 0x82, 0x07, 0xb1, 0x47, 0xca, 0x2c, 0x46, }; static const unsigned char ecdsa_secp256r1_sha512_8303_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8303_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8303 = { .name = "ecdsa_secp256r1_sha512_8303", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8303_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8303_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8303_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 424 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8304 for ECDSA, tcId is 425 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8304_pubkey[] = { 0xf7, 0xc5, 0x4a, 0x58, 0x5a, 0x90, 0x43, 0x00, 0xd0, 0x5b, 0x53, 0xef, 0x3b, 0x85, 0x4e, 0x71, 0x99, 0x9a, 0x34, 0x4b, 0x89, 0xad, 0xc0, 0xca, 0xaa, 0x28, 0xe2, 0x54, 0xdb, 0x9b, 0xc7, 0xc7, 0xc1, 0x61, 0xa7, 0x9f, 0x38, 0xff, 0x44, 0x60, 0x51, 0x30, 0x35, 0x77, 0xe4, 0x06, 0x38, 0xfb, 0x02, 0x03, 0x29, 0x94, 0x0a, 0x63, 0xc2, 0x41, 0xbb, 0x32, 0xc2, 0x20, 0x5e, 0xb5, 0x7b, 0x7d, }; static const unsigned char ecdsa_secp256r1_sha512_8304_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8304_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8304 = { .name = "ecdsa_secp256r1_sha512_8304", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8304_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8304_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8304_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 425 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8305 for ECDSA, tcId is 426 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8305_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha512_8305_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8305_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8305 = { .name = "ecdsa_secp256r1_sha512_8305", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8305_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8305_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8305_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 426 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8306 for ECDSA, tcId is 427 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8306_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha512_8306_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8306_sig[] = { 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8306 = { .name = "ecdsa_secp256r1_sha512_8306", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8306_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8306_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8306_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 427 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8307 for ECDSA, tcId is 428 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8307_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_8307_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8307_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8307 = { .name = "ecdsa_secp256r1_sha512_8307", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8307_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8307_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8307_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 428 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8308 for ECDSA, tcId is 429 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8308_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha512_8308_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8308_sig[] = { 0xbc, 0x07, 0xff, 0x03, 0x15, 0x06, 0xdc, 0x74, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x73, 0x19, 0x75, 0xa1, 0x6d, 0xca, 0x6b, 0x02, 0x5e, 0x86, 0x74, 0x12, 0xd9, 0x42, 0x22, 0xd0, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8308 = { .name = "ecdsa_secp256r1_sha512_8308", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8308_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8308_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8308_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 429 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8309 for ECDSA, tcId is 430 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8309_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_8309_sig[] = { 0x09, 0x3f, 0x38, 0x25, 0xc0, 0xcf, 0x82, 0x0c, 0xce, 0xd8, 0x16, 0xa3, 0xa6, 0x74, 0x46, 0xc8, 0x56, 0x06, 0xa6, 0xd5, 0x29, 0xe4, 0x38, 0x57, 0x64, 0x3f, 0xcc, 0xc1, 0x1e, 0x1f, 0x70, 0x5f, 0x76, 0x97, 0x82, 0x88, 0x8c, 0x63, 0x05, 0x86, 0x30, 0xf9, 0x7a, 0x58, 0x91, 0xc8, 0x70, 0x0e, 0x82, 0x97, 0x9e, 0x4f, 0x23, 0x35, 0x86, 0xbf, 0xc5, 0x04, 0x2f, 0xa7, 0x3c, 0xb7, 0x0a, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8309 = { .name = "ecdsa_secp256r1_sha512_8309", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8309_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha512_8309_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 430 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8310 for ECDSA, tcId is 431 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8310_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_8310_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha512_8310_sig[] = { 0xe8, 0x56, 0x4e, 0x3e, 0x51, 0x5a, 0x09, 0xf9, 0xf3, 0x52, 0x58, 0x44, 0x2b, 0x99, 0xe1, 0x62, 0xd2, 0x7e, 0x10, 0x97, 0x5f, 0xcb, 0x79, 0x63, 0xd3, 0xc2, 0x63, 0x19, 0xdc, 0x09, 0x3f, 0x84, 0xc3, 0xaf, 0x01, 0xed, 0x0f, 0xd0, 0x14, 0x87, 0x49, 0xca, 0x32, 0x33, 0x64, 0x84, 0x6c, 0x86, 0x2f, 0xc6, 0xf4, 0xbe, 0xb6, 0x82, 0xb7, 0xea, 0xd3, 0xb2, 0xd8, 0x9b, 0x9d, 0xa8, 0xba, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8310 = { .name = "ecdsa_secp256r1_sha512_8310", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8310_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8310_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha512_8310_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 431 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8311 for ECDSA, tcId is 432 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8311_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_8311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha512_8311_sig[] = { 0x14, 0x12, 0x25, 0x4f, 0x8c, 0x1d, 0xd2, 0x74, 0x2a, 0x00, 0xdd, 0xee, 0x51, 0x92, 0xe7, 0xba, 0xa2, 0x88, 0x74, 0x10, 0x26, 0x87, 0x1f, 0x30, 0x57, 0xad, 0x9f, 0x98, 0x3b, 0x5a, 0xb1, 0x14, 0xbc, 0xdf, 0x87, 0x8f, 0xa1, 0x56, 0xf3, 0x70, 0x40, 0x92, 0x26, 0x98, 0xad, 0x6f, 0xb6, 0x92, 0x86, 0x01, 0xdd, 0xc2, 0x6c, 0x40, 0x44, 0x8e, 0xa6, 0x60, 0xe6, 0x7c, 0x25, 0xed, 0xa0, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8311 = { .name = "ecdsa_secp256r1_sha512_8311", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8311_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8311_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha512_8311_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 432 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8312 for ECDSA, tcId is 433 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8312_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha512_8312_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_8312_sig[] = { 0x9e, 0x06, 0x76, 0x04, 0x83, 0x81, 0x83, 0x9b, 0xb0, 0xa4, 0x70, 0x3a, 0x0a, 0xe3, 0x8f, 0xac, 0xfe, 0x1e, 0x2c, 0x61, 0xbd, 0x25, 0x95, 0x0c, 0x89, 0x6a, 0xa9, 0x75, 0xcd, 0x6e, 0xc8, 0x69, 0x6e, 0xa0, 0xce, 0xdf, 0x96, 0xf1, 0x1f, 0xff, 0x0e, 0x74, 0x69, 0x41, 0x18, 0x34, 0x92, 0xf4, 0xd1, 0x72, 0x72, 0xc9, 0x24, 0x49, 0xaf, 0xd2, 0x0e, 0x34, 0x04, 0x1a, 0x68, 0x94, 0xee, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8312 = { .name = "ecdsa_secp256r1_sha512_8312", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8312_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8312_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha512_8312_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 433 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8313 for ECDSA, tcId is 434 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8313_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_8313_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8313_sig[] = { 0x55, 0x44, 0x82, 0x40, 0x41, 0x73, 0xa5, 0x58, 0x28, 0x84, 0xb0, 0xd1, 0x68, 0xa3, 0x2e, 0xf8, 0x03, 0x3d, 0x7e, 0xb7, 0x80, 0x93, 0x6c, 0x39, 0x0e, 0x8e, 0xed, 0xf7, 0x20, 0xc7, 0xf5, 0x64, 0x0a, 0x15, 0x41, 0x3f, 0x9e, 0xd0, 0xd4, 0x54, 0xb9, 0x2a, 0xb9, 0x01, 0x11, 0x9e, 0x72, 0x51, 0xa4, 0xd4, 0x44, 0xba, 0x14, 0x21, 0xba, 0x63, 0x9f, 0xa5, 0x7e, 0x0d, 0x8c, 0xf6, 0xb3, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8313 = { .name = "ecdsa_secp256r1_sha512_8313", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8313_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8313_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8313_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 434 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8314 for ECDSA, tcId is 435 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8314_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_8314_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8314_sig[] = { 0x0b, 0x1d, 0x83, 0x8d, 0xd5, 0x4a, 0x46, 0x27, 0x45, 0xe2, 0xc8, 0xd5, 0xf3, 0x26, 0x37, 0xf2, 0x6f, 0xb1, 0x6d, 0xde, 0x20, 0xa3, 0x85, 0xe4, 0x5f, 0x8a, 0x20, 0xa8, 0xa1, 0xf8, 0x37, 0x0e, 0xae, 0x85, 0x5e, 0x0a, 0x10, 0xef, 0x08, 0x70, 0x75, 0xfd, 0xa0, 0xed, 0x84, 0xe2, 0xbc, 0x57, 0x86, 0xa6, 0x81, 0x17, 0x2e, 0xa9, 0x83, 0x4e, 0x53, 0x35, 0x13, 0x16, 0xdf, 0x33, 0x2b, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8314 = { .name = "ecdsa_secp256r1_sha512_8314", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8314_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8314_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8314_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 435 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8315 for ECDSA, tcId is 436 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8315_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha512_8315_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8315_sig[] = { 0xaf, 0x89, 0xe4, 0xf2, 0xb0, 0x3e, 0x5d, 0x1f, 0x03, 0x52, 0xe2, 0x58, 0xef, 0x71, 0x49, 0x30, 0x40, 0xc1, 0x7d, 0x70, 0xc3, 0x6c, 0xfd, 0x04, 0x41, 0x28, 0x30, 0x2d, 0xf2, 0xed, 0x5e, 0x4a, 0x42, 0x0f, 0x04, 0x14, 0x8c, 0x3e, 0x6f, 0x06, 0x56, 0x1b, 0xd4, 0x48, 0x36, 0x2d, 0x6c, 0x6f, 0xa3, 0xf9, 0xae, 0xeb, 0x7e, 0x42, 0x84, 0x3b, 0x46, 0x74, 0xe7, 0xdd, 0xfd, 0x0b, 0xa9, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8315 = { .name = "ecdsa_secp256r1_sha512_8315", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8315_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8315_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8315_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 436 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8316 for ECDSA, tcId is 437 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8316_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_8316_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8316_sig[] = { 0x6c, 0x15, 0x81, 0xf1, 0x48, 0x5c, 0xcc, 0x4e, 0x65, 0x76, 0x06, 0xfa, 0x1a, 0x38, 0xcf, 0x22, 0x7e, 0x38, 0x70, 0xdc, 0x9f, 0x41, 0xe2, 0x6b, 0x84, 0xe2, 0x84, 0x83, 0x63, 0x5e, 0x32, 0x1b, 0x1b, 0x3e, 0x3c, 0x22, 0xaf, 0x23, 0xe9, 0x19, 0xb3, 0x03, 0x30, 0xf8, 0x71, 0x0f, 0x6e, 0xf3, 0x76, 0x0c, 0x0e, 0x22, 0x37, 0xa9, 0xa9, 0xf5, 0xcf, 0x30, 0xa1, 0xd9, 0xf5, 0xbb, 0xd4, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8316 = { .name = "ecdsa_secp256r1_sha512_8316", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8316_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8316_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8316_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 437 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8317 for ECDSA, tcId is 438 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8317_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_8317_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8317_sig[] = { 0xdc, 0x83, 0xbf, 0x97, 0xca, 0x28, 0xdb, 0x0e, 0x04, 0x10, 0x4a, 0x16, 0xfe, 0x3d, 0xe6, 0x94, 0x31, 0x1a, 0x6c, 0xd9, 0xf2, 0x30, 0xa3, 0x00, 0x50, 0x4a, 0xe7, 0x1d, 0x8e, 0xc7, 0x55, 0xb1, 0x64, 0xa8, 0x3a, 0xf0, 0xab, 0x3e, 0x60, 0x37, 0x00, 0x3a, 0x1f, 0x42, 0x40, 0xdf, 0xfd, 0x8a, 0x34, 0x2a, 0xfd, 0xee, 0x50, 0x60, 0x4e, 0xd1, 0xaf, 0xa4, 0x16, 0xfd, 0x00, 0x9e, 0x46, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8317 = { .name = "ecdsa_secp256r1_sha512_8317", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8317_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8317_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8317_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 438 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8318 for ECDSA, tcId is 439 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8318_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha512_8318_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8318_sig[] = { 0x57, 0x5b, 0x70, 0xb4, 0x37, 0x56, 0x84, 0x29, 0x1b, 0x95, 0xd8, 0x1e, 0x3c, 0x82, 0x0e, 0xd9, 0xbd, 0xe9, 0xe5, 0xb7, 0x34, 0x30, 0x36, 0xe4, 0x95, 0x1f, 0x3c, 0x46, 0x89, 0x4a, 0x6d, 0x9d, 0xf1, 0x0d, 0x71, 0x6e, 0xfb, 0xfe, 0xba, 0x95, 0x37, 0x01, 0xb6, 0x03, 0xfc, 0x9e, 0xf6, 0xff, 0x6e, 0x47, 0xed, 0xef, 0x38, 0xc9, 0xee, 0xef, 0x2d, 0x55, 0xe6, 0x48, 0x6b, 0xc4, 0xd6, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8318 = { .name = "ecdsa_secp256r1_sha512_8318", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8318_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8318_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8318_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 439 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8319 for ECDSA, tcId is 440 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8319_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_8319_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8319_sig[] = { 0x8d, 0x4f, 0x11, 0x31, 0x89, 0xdf, 0xd3, 0xd3, 0x23, 0x9e, 0x33, 0x1f, 0x76, 0xd3, 0xfc, 0xa9, 0xce, 0xf8, 0x6f, 0xcd, 0x5d, 0xc9, 0xb4, 0xab, 0x2c, 0xa3, 0x8a, 0xeb, 0xa5, 0x6c, 0x17, 0x8b, 0x78, 0x38, 0x9c, 0x3c, 0xf1, 0x1d, 0xcf, 0xf6, 0xd6, 0xc7, 0xf5, 0xef, 0xd2, 0x77, 0xd4, 0x80, 0x06, 0x06, 0x91, 0x14, 0x4b, 0x56, 0x8a, 0x6f, 0x09, 0x0c, 0x89, 0x02, 0x55, 0x7b, 0xfc, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8319 = { .name = "ecdsa_secp256r1_sha512_8319", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8319_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8319_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8319_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 440 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8320 for ECDSA, tcId is 441 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8320_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_8320_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8320_sig[] = { 0x83, 0x4d, 0x10, 0xec, 0x2d, 0x2d, 0x50, 0xee, 0xeb, 0xfe, 0xcd, 0x63, 0x28, 0xf0, 0x3f, 0xaf, 0xbb, 0x48, 0x8f, 0xc0, 0x43, 0xc3, 0x62, 0xcb, 0xc6, 0x78, 0x80, 0xec, 0x0e, 0xbd, 0x04, 0xb3, 0x94, 0xc0, 0x26, 0xfe, 0xaf, 0x6e, 0x68, 0x75, 0x91, 0x46, 0xfe, 0x5b, 0x6f, 0xd5, 0x2e, 0xaa, 0x3c, 0x3c, 0x55, 0x52, 0xd8, 0x37, 0x19, 0xd2, 0xcb, 0x90, 0x06, 0x15, 0xe2, 0xa6, 0x34, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8320 = { .name = "ecdsa_secp256r1_sha512_8320", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8320_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8320_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8320_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 441 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8321 for ECDSA, tcId is 442 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8321_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha512_8321_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8321_sig[] = { 0x68, 0x94, 0xde, 0x49, 0x5e, 0x7b, 0xb5, 0x56, 0x68, 0x07, 0xd4, 0x75, 0xd9, 0x6a, 0x0d, 0x41, 0x4a, 0x94, 0xf4, 0xf0, 0x2c, 0x3a, 0xb7, 0xc2, 0xed, 0xc2, 0x91, 0x6d, 0xea, 0xfc, 0x1e, 0x1f, 0xa6, 0x03, 0x64, 0x2c, 0x20, 0xfa, 0xbc, 0x07, 0x18, 0x28, 0x67, 0xfc, 0xc6, 0x92, 0x3d, 0x35, 0xbe, 0x23, 0xad, 0x3f, 0x97, 0xa5, 0xf9, 0x3c, 0x6e, 0xc5, 0xb9, 0xcc, 0xe8, 0x23, 0x95, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8321 = { .name = "ecdsa_secp256r1_sha512_8321", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8321_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8321_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8321_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 442 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8322 for ECDSA, tcId is 443 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8322_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_8322_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8322_sig[] = { 0xe5, 0x00, 0xc0, 0x86, 0xfe, 0xdd, 0x59, 0xe0, 0x90, 0xce, 0x7b, 0xfb, 0x61, 0x57, 0x51, 0xed, 0x9a, 0xbe, 0x4c, 0x09, 0xb8, 0x39, 0xee, 0x8f, 0x05, 0x32, 0x02, 0x45, 0xb9, 0x79, 0x6f, 0x3e, 0x80, 0x7b, 0x1d, 0x06, 0x38, 0xc8, 0x6e, 0xf6, 0x11, 0x3f, 0xff, 0x0d, 0x63, 0x49, 0x78, 0x00, 0xe1, 0xb8, 0x48, 0xb5, 0xa3, 0x03, 0xa5, 0x4c, 0x74, 0x8e, 0x45, 0xca, 0x8f, 0x35, 0xd7, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8322 = { .name = "ecdsa_secp256r1_sha512_8322", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8322_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8322_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8322_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 443 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8323 for ECDSA, tcId is 444 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8323_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_8323_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8323_sig[] = { 0xb9, 0x22, 0xc1, 0xab, 0xe1, 0xa8, 0x30, 0x9c, 0x0a, 0xcf, 0x90, 0xe5, 0x86, 0xc6, 0xde, 0x8c, 0x33, 0xe3, 0x70, 0x57, 0x67, 0x33, 0x90, 0xa9, 0x7f, 0xf0, 0x98, 0xf7, 0x16, 0x80, 0xb3, 0x2b, 0xf8, 0x6d, 0x92, 0xb0, 0x51, 0xb7, 0x92, 0x3d, 0x82, 0x55, 0x5c, 0x20, 0x5e, 0x21, 0xb5, 0x4e, 0xab, 0x86, 0x97, 0x66, 0xc7, 0x16, 0x20, 0x96, 0x48, 0xc3, 0xe6, 0xcc, 0x26, 0x29, 0x05, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8323 = { .name = "ecdsa_secp256r1_sha512_8323", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8323_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8323_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8323_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 444 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8324 for ECDSA, tcId is 445 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8324_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha512_8324_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8324_sig[] = { 0x82, 0x3c, 0x37, 0xe4, 0x6c, 0x74, 0xec, 0x84, 0x97, 0xd8, 0x92, 0x45, 0xfd, 0xe3, 0xbf, 0x53, 0xdd, 0xb4, 0x62, 0xc0, 0x0d, 0x84, 0x0e, 0x98, 0x3d, 0xcb, 0x1b, 0x72, 0xbb, 0xf8, 0xbf, 0x27, 0xc4, 0x55, 0x2f, 0x24, 0x25, 0xd1, 0x4f, 0x0f, 0x0f, 0xa9, 0x88, 0x77, 0x84, 0x03, 0xd6, 0x0a, 0x58, 0x96, 0x2e, 0x7c, 0x54, 0x87, 0x15, 0xaf, 0x83, 0xb2, 0xed, 0xab, 0xbb, 0x24, 0xa4, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8324 = { .name = "ecdsa_secp256r1_sha512_8324", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8324_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8324_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8324_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 445 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8325 for ECDSA, tcId is 446 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8325_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_8325_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8325_sig[] = { 0x57, 0x7a, 0x08, 0xa9, 0x5d, 0xb6, 0xdc, 0xda, 0x99, 0x85, 0x10, 0x99, 0x42, 0xd3, 0x78, 0x66, 0x30, 0xf6, 0x40, 0x19, 0x0f, 0x92, 0x0b, 0x95, 0xbd, 0x4d, 0x5d, 0x84, 0xe0, 0xf1, 0x63, 0xef, 0xd7, 0x62, 0x28, 0x6e, 0x92, 0x92, 0x59, 0x73, 0xfd, 0x38, 0xb6, 0x7e, 0xf9, 0x44, 0xa9, 0x9c, 0x0e, 0xc5, 0xb4, 0x99, 0xb7, 0x17, 0x5c, 0xbb, 0x43, 0x69, 0xe0, 0x53, 0xc1, 0xfc, 0xbb, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8325 = { .name = "ecdsa_secp256r1_sha512_8325", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8325_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8325_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8325_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 446 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8326 for ECDSA, tcId is 447 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8326_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_8326_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8326_sig[] = { 0x7b, 0xa4, 0x58, 0xcf, 0xe9, 0x52, 0x32, 0x69, 0x22, 0xc7, 0xaa, 0x28, 0x54, 0xbd, 0xc6, 0x73, 0xce, 0x3d, 0xaa, 0xf6, 0x5d, 0x46, 0x4d, 0xfb, 0x9f, 0x70, 0x07, 0x01, 0x50, 0x30, 0x56, 0xb1, 0x0d, 0xf8, 0x82, 0x1c, 0x92, 0xd2, 0x05, 0x46, 0xfa, 0x74, 0x1f, 0xb4, 0x26, 0xbf, 0x56, 0x72, 0x8a, 0x53, 0x18, 0x26, 0x91, 0x96, 0x42, 0x25, 0xc9, 0xb3, 0x80, 0xb5, 0x6b, 0x22, 0xee, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8326 = { .name = "ecdsa_secp256r1_sha512_8326", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8326_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8326_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8326_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 447 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8327 for ECDSA, tcId is 448 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8327_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha512_8327_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8327_sig[] = { 0x5c, 0xd6, 0x0c, 0x3b, 0x02, 0x1b, 0x4b, 0xe1, 0x16, 0xf0, 0x6f, 0x1d, 0x44, 0x7f, 0x65, 0xe4, 0x58, 0x32, 0x9a, 0x8b, 0xba, 0xe1, 0xd9, 0xb5, 0x97, 0x7d, 0x18, 0xcf, 0x56, 0x18, 0x48, 0x61, 0x4c, 0x63, 0x5c, 0xd7, 0xaa, 0x9a, 0xeb, 0xb5, 0x71, 0x6d, 0x5a, 0xe0, 0x9e, 0x57, 0xf8, 0xc4, 0x81, 0xa7, 0x41, 0xa0, 0x29, 0xb4, 0x0f, 0x71, 0xec, 0x47, 0x34, 0x4e, 0xf8, 0x83, 0xe8, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8327 = { .name = "ecdsa_secp256r1_sha512_8327", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8327_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8327_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8327_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 448 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8328 for ECDSA, tcId is 449 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8328_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_8328_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8328_sig[] = { 0x4b, 0x50, 0xe1, 0xe8, 0xcf, 0x83, 0x0e, 0x04, 0xc1, 0x7e, 0x74, 0x72, 0xca, 0xf6, 0x0d, 0xa8, 0x15, 0x0f, 0xfa, 0x56, 0x8e, 0x2c, 0x64, 0x49, 0x8c, 0xc9, 0x72, 0xa3, 0x79, 0xe5, 0x42, 0xe5, 0x2e, 0x3a, 0xda, 0xa5, 0xaf, 0xab, 0x89, 0xcc, 0xa9, 0x16, 0x93, 0x60, 0x95, 0x55, 0xf4, 0x05, 0x43, 0x57, 0x88, 0x52, 0xcd, 0xe2, 0x9c, 0x21, 0xcb, 0x03, 0x7c, 0x0c, 0x0b, 0x78, 0x47, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8328 = { .name = "ecdsa_secp256r1_sha512_8328", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8328_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8328_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8328_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 449 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8329 for ECDSA, tcId is 450 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8329_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_8329_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8329_sig[] = { 0x5a, 0xea, 0x93, 0x0c, 0x7d, 0x8f, 0xff, 0xcd, 0x5c, 0x6d, 0xf2, 0xc9, 0x43, 0x0e, 0xf7, 0x6f, 0x8b, 0x5e, 0xd5, 0x8a, 0x8b, 0x9c, 0x95, 0x84, 0x72, 0x88, 0xab, 0xf8, 0xf0, 0x9a, 0x1a, 0xc2, 0x7d, 0xdf, 0xef, 0x76, 0x88, 0xa6, 0x05, 0x3c, 0xe4, 0xee, 0xee, 0xef, 0xd6, 0xf1, 0xa9, 0xd7, 0x13, 0x81, 0xb7, 0x54, 0x89, 0x25, 0xf6, 0x68, 0x2a, 0xa0, 0xa9, 0xd0, 0x5c, 0xf5, 0xa3, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8329 = { .name = "ecdsa_secp256r1_sha512_8329", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8329_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8329_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8329_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 450 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8330 for ECDSA, tcId is 451 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8330_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha512_8330_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8330_sig[] = { 0x98, 0xb0, 0x92, 0xc2, 0xd1, 0x4b, 0x5b, 0x14, 0xa2, 0x3e, 0x93, 0x68, 0xe0, 0xce, 0x1b, 0xe7, 0x44, 0xdf, 0xae, 0x9f, 0x9a, 0x5c, 0xda, 0xba, 0x51, 0xe7, 0x87, 0x20, 0x99, 0xdf, 0x96, 0xf2, 0x90, 0xd3, 0xe4, 0xf8, 0x7b, 0xd7, 0xbc, 0x94, 0x58, 0x9f, 0x81, 0x50, 0xb6, 0xb0, 0x10, 0x45, 0xcd, 0x87, 0x59, 0xa0, 0x0a, 0xf7, 0x8b, 0x24, 0xd7, 0xde, 0x77, 0x18, 0x87, 0x61, 0x0d, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8330 = { .name = "ecdsa_secp256r1_sha512_8330", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8330_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8330_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8330_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 451 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8331 for ECDSA, tcId is 452 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8331_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8331_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8331_sig[] = { 0x9e, 0x95, 0xf2, 0x85, 0x6a, 0x9f, 0xff, 0x9a, 0x17, 0x2b, 0x07, 0x81, 0x7c, 0x8c, 0x60, 0xfe, 0x18, 0x5c, 0xd3, 0xce, 0x95, 0x82, 0x67, 0x8f, 0x8c, 0xc4, 0xb0, 0x2b, 0xc4, 0x44, 0x62, 0x1a, 0xc5, 0x4c, 0xa5, 0x1d, 0x81, 0x17, 0xd9, 0x04, 0xf0, 0xd3, 0x77, 0x39, 0x11, 0xcb, 0x27, 0x92, 0x34, 0x8f, 0xae, 0x21, 0xc2, 0xda, 0x7d, 0xad, 0x25, 0xf9, 0x90, 0xd1, 0x22, 0x37, 0x6e, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8331 = { .name = "ecdsa_secp256r1_sha512_8331", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8331_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8331_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8331_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 452 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8332 for ECDSA, tcId is 453 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8332_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8332_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8332_sig[] = { 0xe7, 0x7d, 0xf8, 0xf9, 0x78, 0x26, 0x96, 0x34, 0x4c, 0x33, 0xde, 0x29, 0xeb, 0xdc, 0x9f, 0x8d, 0x3f, 0xcf, 0x46, 0x3d, 0x95, 0x0c, 0xdb, 0xe2, 0x56, 0xfd, 0x4f, 0xc2, 0xfd, 0x44, 0x87, 0x7e, 0x87, 0x02, 0x88, 0x50, 0xc9, 0x62, 0xcf, 0x2f, 0xb4, 0x50, 0xff, 0xe6, 0xb9, 0x83, 0x98, 0x1e, 0x49, 0x9d, 0xc4, 0x98, 0xfb, 0xd6, 0x54, 0xfa, 0x45, 0x4c, 0x9e, 0x07, 0xc8, 0xcb, 0x5c, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8332 = { .name = "ecdsa_secp256r1_sha512_8332", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8332_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8332_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8332_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 453 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8333 for ECDSA, tcId is 454 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8333_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha512_8333_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8333_sig[] = { 0xbd, 0x2d, 0xd6, 0xf5, 0x02, 0x6d, 0x2b, 0x5a, 0xd7, 0xea, 0xd7, 0x4b, 0xdf, 0x52, 0xb8, 0xcb, 0xca, 0xbc, 0x08, 0xfa, 0xce, 0xe0, 0xa1, 0xc8, 0x58, 0x46, 0x58, 0xa8, 0x5e, 0xd0, 0xc5, 0xdc, 0x3e, 0x85, 0x43, 0xe8, 0x19, 0xbd, 0xae, 0x47, 0xd8, 0x72, 0xe2, 0x9a, 0x85, 0xba, 0x38, 0xad, 0xdf, 0x3e, 0xae, 0xaa, 0xd8, 0x78, 0x6d, 0x79, 0xc3, 0xfb, 0x02, 0x7f, 0x6f, 0x1f, 0xf4, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8333 = { .name = "ecdsa_secp256r1_sha512_8333", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8333_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8333_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8333_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 454 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8334 for ECDSA, tcId is 455 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8334_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8334_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8334_sig[] = { 0xbd, 0x5c, 0x02, 0x94, 0xac, 0xc2, 0x8c, 0x15, 0xc5, 0xd1, 0xeb, 0xc7, 0x27, 0x4c, 0x9c, 0xa2, 0x1a, 0x08, 0x1c, 0x8a, 0x67, 0xda, 0x43, 0x0a, 0x34, 0xa7, 0xff, 0xf1, 0xa5, 0x64, 0xfa, 0xbb, 0x7e, 0xc1, 0x03, 0xa2, 0x38, 0x5b, 0x4f, 0xf3, 0x8b, 0x47, 0xd3, 0x06, 0x43, 0x4e, 0x90, 0x91, 0xde, 0x24, 0xdc, 0x9f, 0x1a, 0x25, 0x96, 0x7e, 0xe0, 0x6f, 0x8a, 0x0a, 0x53, 0xac, 0x01, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8334 = { .name = "ecdsa_secp256r1_sha512_8334", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8334_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8334_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8334_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 455 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8335 for ECDSA, tcId is 456 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8335_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8335_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8335_sig[] = { 0x3c, 0x7d, 0xbf, 0xb4, 0x3d, 0xd8, 0x03, 0x79, 0xee, 0x2c, 0x23, 0xad, 0x54, 0x72, 0x87, 0x3a, 0x22, 0xc8, 0xa0, 0x17, 0x9a, 0xc8, 0xf3, 0x81, 0xad, 0x9e, 0x0f, 0x19, 0x32, 0x31, 0xdc, 0x1f, 0x7c, 0xf8, 0xe0, 0x75, 0x30, 0xad, 0xe5, 0x03, 0xb3, 0xd4, 0x3a, 0x84, 0xb7, 0x5a, 0x2a, 0x76, 0xfc, 0x40, 0x76, 0x3d, 0xae, 0xd4, 0xe9, 0x73, 0x4e, 0x74, 0x5c, 0x58, 0xc9, 0xae, 0x72, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8335 = { .name = "ecdsa_secp256r1_sha512_8335", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8335_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8335_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8335_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 456 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8336 for ECDSA, tcId is 457 in file ecdsa_secp256r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp256r1_sha512_8336_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha512_8336_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha512_8336_sig[] = { 0xb3, 0x8c, 0xa4, 0xda, 0xc6, 0xd9, 0x49, 0xbe, 0x5e, 0x5f, 0x96, 0x98, 0x60, 0x26, 0x9f, 0x0e, 0xed, 0xff, 0x2e, 0xb9, 0x2f, 0x45, 0xbf, 0xc0, 0x24, 0x70, 0x30, 0x0c, 0xc9, 0x6d, 0xd5, 0x26, 0x1c, 0x7b, 0x22, 0x99, 0x2b, 0xb1, 0x37, 0x49, 0xcc, 0x0c, 0x5b, 0xc2, 0x53, 0x30, 0xa1, 0x74, 0x46, 0xe4, 0x0d, 0xb7, 0x34, 0x20, 0x3f, 0x90, 0x35, 0x17, 0x27, 0x25, 0xfc, 0x70, 0xf8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha512_8336 = { .name = "ecdsa_secp256r1_sha512_8336", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha512_8336_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha512_8336_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha512_8336_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 457 in file ecdsa_secp256r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) */ /* Test 8337 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8337_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8337_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0xc0, 0xbb, 0x0e, 0xe1, 0xbf, 0xfc, 0x6c, 0x7b, 0x74, 0x60, 0x9e, 0xc2, 0x0c, 0x46, 0x0e, 0xc4, 0x7f, 0x4d, 0x06, 0x8f, 0x33, 0xd6, 0x01, 0x87, 0x07, 0x78, 0xe5, 0xe4, 0x74, 0x86, 0x0d, 0x77, 0x83, 0x4d, 0x74, 0x4d, 0xb2, 0x19, 0xe6, 0xab, 0xae, 0x9c, 0x32, 0x91, 0x29, 0x07, 0xef, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8337 = { .name = "ecdsa_secp384r1_sha3_384_8337", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8337_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8337_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8337_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8338 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8338_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8338_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8338 = { .name = "ecdsa_secp384r1_sha3_384_8338", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8338_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8338_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8338_sig, .siglen = 96, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8339 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8339_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8339_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8339 = { .name = "ecdsa_secp384r1_sha3_384_8339", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8339_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8339_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8339_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of sequence, tcId is 3 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8340 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8340_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8340_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8340 = { .name = "ecdsa_secp384r1_sha3_384_8340", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8340_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8340_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8340_sig, .siglen = 96, .result = 0, .comment = "length of sequence contains leading 0, tcId is 4 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8341 for ECDSA, tcId is 67 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8341_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8341_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8341 = { .name = "ecdsa_secp384r1_sha3_384_8341", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8341_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8341_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8341_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8342 for ECDSA, tcId is 68 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8342_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8342_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8342 = { .name = "ecdsa_secp384r1_sha3_384_8342", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8342_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8342_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8342_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8343 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8343_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8343_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8343 = { .name = "ecdsa_secp384r1_sha3_384_8343", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8343_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8343_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8343_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8344 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8344_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8344_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8344 = { .name = "ecdsa_secp384r1_sha3_384_8344", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8344_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8344_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8344_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8345 for ECDSA, tcId is 92 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8345_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8345_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x00, 0x00, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8345 = { .name = "ecdsa_secp384r1_sha3_384_8345", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8345_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8345_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8345_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8346 for ECDSA, tcId is 93 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8346_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8346_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8346 = { .name = "ecdsa_secp384r1_sha3_384_8346", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8346_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8346_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8346_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8347 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8347_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8347_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8347 = { .name = "ecdsa_secp384r1_sha3_384_8347", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8347_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8347_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8347_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8348 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8348_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8348_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8348 = { .name = "ecdsa_secp384r1_sha3_384_8348", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8348_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8348_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8348_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8349 for ECDSA, tcId is 97 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8349_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8349_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x05, 0x00, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8349 = { .name = "ecdsa_secp384r1_sha3_384_8349", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8349_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8349_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8349_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8350 for ECDSA, tcId is 98 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8350_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8350_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8350 = { .name = "ecdsa_secp384r1_sha3_384_8350", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8350_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8350_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8350_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8351 for ECDSA, tcId is 113 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8351_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8351_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8351 = { .name = "ecdsa_secp384r1_sha3_384_8351", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8351_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8351_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8351_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8352 for ECDSA, tcId is 114 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8352_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8352_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8352 = { .name = "ecdsa_secp384r1_sha3_384_8352", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8352_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8352_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8352_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8353 for ECDSA, tcId is 117 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8353_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8353_sig[] = { 0x36, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8353 = { .name = "ecdsa_secp384r1_sha3_384_8353", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8353_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8353_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8353_sig, .siglen = 96, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8354 for ECDSA, tcId is 118 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8354_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8354_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3d, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8354 = { .name = "ecdsa_secp384r1_sha3_384_8354", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8354_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8354_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8354_sig, .siglen = 96, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8355 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8355_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8355_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0xcc, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8355 = { .name = "ecdsa_secp384r1_sha3_384_8355", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8355_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8355_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8355_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8356 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8356_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8356_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8356 = { .name = "ecdsa_secp384r1_sha3_384_8356", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8356_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8356_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8356_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8357 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8357_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8357_sig[] = { 0x00, 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8357 = { .name = "ecdsa_secp384r1_sha3_384_8357", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8357_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8357_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8357_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8358 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8358_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8358_sig[] = { 0x00, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8358 = { .name = "ecdsa_secp384r1_sha3_384_8358", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8358_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8358_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8358_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8359 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8359_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8359_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x00, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8359 = { .name = "ecdsa_secp384r1_sha3_384_8359", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8359_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8359_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8359_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8360 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8360_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8360_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x00, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8360 = { .name = "ecdsa_secp384r1_sha3_384_8360", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8360_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8360_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8360_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8361 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8361_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8361_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8361 = { .name = "ecdsa_secp384r1_sha3_384_8361", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8361_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8361_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8361_sig, .siglen = 96, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8362 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8362_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8362_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8362 = { .name = "ecdsa_secp384r1_sha3_384_8362", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8362_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8362_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8362_sig, .siglen = 96, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp384r1_sha3_384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8363 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8363_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8363_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8363 = { .name = "ecdsa_secp384r1_sha3_384_8363", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8363_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8363_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8363_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8364 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8364_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8364_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8364 = { .name = "ecdsa_secp384r1_sha3_384_8364", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8364_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8364_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8364_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8365 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8365_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8365_sig[] = { 0x01, 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xb4, 0xf0, 0xfd, 0xd1, 0xba, 0x4e, 0xeb, 0x86, 0x9a, 0xb3, 0x18, 0x23, 0x45, 0xa8, 0x87, 0x54, 0x17, 0x8a, 0x3e, 0x92, 0xaa, 0x12, 0xdd, 0xbf, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8365 = { .name = "ecdsa_secp384r1_sha3_384_8365", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8365_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8365_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8365_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8366 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8366_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8366_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x27, 0x26, 0x2a, 0x62, 0xcd, 0xd1, 0xe0, 0x8f, 0xc7, 0xea, 0x7e, 0xfc, 0xbe, 0xb4, 0x47, 0x38, 0x5e, 0x3d, 0xb2, 0x0b, 0xbd, 0x10, 0x88, 0x8a, 0xd9, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8366 = { .name = "ecdsa_secp384r1_sha3_384_8366", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8366_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8366_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8366_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8367 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8367_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8367_sig[] = { 0xcb, 0x5b, 0xd1, 0x25, 0x92, 0x75, 0x77, 0xe3, 0x95, 0xcc, 0x96, 0x02, 0x76, 0x24, 0x9d, 0x63, 0x64, 0x9e, 0x6f, 0xb3, 0x79, 0xfe, 0x68, 0xd9, 0x12, 0x72, 0x4f, 0xb0, 0x39, 0xe8, 0x42, 0x58, 0xbd, 0x66, 0xf5, 0x8f, 0x03, 0x08, 0x20, 0x26, 0xd5, 0x61, 0xda, 0xd8, 0x22, 0xb2, 0x4b, 0xb4, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8367 = { .name = "ecdsa_secp384r1_sha3_384_8367", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8367_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8367_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8367_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8368 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8368_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8368_sig[] = { 0xcb, 0x5b, 0xd1, 0x25, 0x92, 0x75, 0x77, 0xe3, 0x95, 0xcc, 0x96, 0x02, 0x76, 0x24, 0x9d, 0x63, 0x64, 0x9e, 0x6f, 0xb3, 0x79, 0xfe, 0x68, 0xd8, 0xd9, 0xd5, 0x9d, 0x32, 0x2e, 0x1f, 0x70, 0x38, 0x15, 0x81, 0x03, 0x41, 0x4b, 0xb8, 0xc7, 0xa1, 0xc2, 0x4d, 0xf4, 0x42, 0xef, 0x77, 0x75, 0x27, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8368 = { .name = "ecdsa_secp384r1_sha3_384_8368", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8368_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8368_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8368_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8369 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8369_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8369_sig[] = { 0xfe, 0xcb, 0x5b, 0xd1, 0x25, 0x92, 0x75, 0x77, 0xe3, 0x95, 0xcc, 0x96, 0x02, 0x76, 0x24, 0x9d, 0x63, 0x64, 0x9e, 0x6f, 0xb3, 0x79, 0xfe, 0x68, 0xd9, 0x4b, 0x0f, 0x02, 0x2e, 0x45, 0xb1, 0x14, 0x79, 0x65, 0x4c, 0xe7, 0xdc, 0xba, 0x57, 0x78, 0xab, 0xe8, 0x75, 0xc1, 0x6d, 0x55, 0xed, 0x22, 0x41, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8369 = { .name = "ecdsa_secp384r1_sha3_384_8369", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8369_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8369_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8369_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8370 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8370_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8370_sig[] = { 0x01, 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8370 = { .name = "ecdsa_secp384r1_sha3_384_8370", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8370_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8370_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8370_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8371 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8371_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8371_sig[] = { 0xcb, 0x5b, 0xd1, 0x25, 0x92, 0x75, 0x77, 0xe3, 0x95, 0xcc, 0x96, 0x02, 0x76, 0x24, 0x9d, 0x63, 0x64, 0x9e, 0x6f, 0xb3, 0x79, 0xfe, 0x68, 0xd9, 0x12, 0x72, 0x4f, 0xb0, 0x39, 0xe8, 0x42, 0x58, 0xbd, 0x66, 0xf5, 0x8f, 0x03, 0x08, 0x20, 0x26, 0xd5, 0x61, 0xda, 0xd8, 0x22, 0xb2, 0x4b, 0xb4, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8371 = { .name = "ecdsa_secp384r1_sha3_384_8371", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8371_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8371_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8371_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8372 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8372_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8372_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x01, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0x87, 0x4d, 0xb5, 0x1f, 0x73, 0xe8, 0x4e, 0x47, 0x2c, 0xe6, 0xa7, 0x16, 0xdf, 0x47, 0x68, 0x4a, 0x2b, 0x3c, 0x00, 0x44, 0x70, 0x82, 0x63, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8372 = { .name = "ecdsa_secp384r1_sha3_384_8372", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8372_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8372_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8372_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8373 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8373_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8373_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xf8, 0x87, 0x1a, 0x1b, 0x8b, 0x79, 0xf2, 0x88, 0x7c, 0xb2, 0x8b, 0xb2, 0x4d, 0xe6, 0x19, 0x54, 0x51, 0x63, 0xcd, 0x6e, 0xd6, 0xf8, 0x10, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8373 = { .name = "ecdsa_secp384r1_sha3_384_8373", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8373_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8373_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8373_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8374 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8374_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8374_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0xc0, 0xbb, 0x0e, 0xe1, 0xbf, 0xfc, 0x6c, 0x7b, 0x74, 0x60, 0x9e, 0xc2, 0x0c, 0x46, 0x0e, 0xc4, 0x7f, 0x4d, 0x06, 0x8f, 0x33, 0xd6, 0x01, 0x87, 0x40, 0x15, 0x98, 0x62, 0x80, 0x4e, 0xdf, 0x98, 0x2b, 0x33, 0x66, 0x9b, 0x69, 0x69, 0x3f, 0x30, 0xc1, 0xb0, 0x19, 0x26, 0x5c, 0x42, 0xc6, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8374 = { .name = "ecdsa_secp384r1_sha3_384_8374", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8374_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8374_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8374_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8375 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8375_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8375_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0xfe, 0xc0, 0xbb, 0x0e, 0xe1, 0xbf, 0xfc, 0x6c, 0x7b, 0x74, 0x60, 0x9e, 0xc2, 0x0c, 0x46, 0x0e, 0xc4, 0x7f, 0x4d, 0x06, 0x8f, 0x33, 0xd6, 0x01, 0x87, 0x78, 0xb2, 0x4a, 0xe0, 0x8c, 0x17, 0xb1, 0xb8, 0xd3, 0x19, 0x58, 0xe9, 0x20, 0xb8, 0x97, 0xb5, 0xd4, 0xc3, 0xff, 0xbb, 0x8f, 0x7d, 0x9c, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8375 = { .name = "ecdsa_secp384r1_sha3_384_8375", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8375_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8375_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8375_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8376 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8376_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8376_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0x01, 0x3f, 0x44, 0xf1, 0x1e, 0x40, 0x03, 0x93, 0x84, 0x8b, 0x9f, 0x61, 0x3d, 0xf3, 0xb9, 0xf1, 0x3b, 0x80, 0xb2, 0xf9, 0x70, 0xcc, 0x29, 0xfe, 0x78, 0xbf, 0xea, 0x67, 0x9d, 0x7f, 0xb1, 0x20, 0x67, 0xd4, 0xcc, 0x99, 0x64, 0x96, 0x96, 0xc0, 0xcf, 0x3e, 0x4f, 0xe6, 0xd9, 0xa3, 0xbd, 0x39, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8376 = { .name = "ecdsa_secp384r1_sha3_384_8376", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8376_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8376_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8376_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8377 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8377_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8377_sig[] = { 0x34, 0xa4, 0x2e, 0xda, 0x6d, 0x8a, 0x88, 0x1c, 0x6a, 0x33, 0x69, 0xfd, 0x89, 0xdb, 0x62, 0x9c, 0x9b, 0x61, 0x90, 0x4c, 0x86, 0x01, 0x97, 0x26, 0xed, 0x8d, 0xb0, 0x4f, 0xc6, 0x17, 0xbd, 0xa7, 0x42, 0x99, 0x0a, 0x70, 0xfc, 0xf7, 0xdf, 0xd9, 0x2a, 0x9e, 0x25, 0x27, 0xdd, 0x4d, 0xb4, 0x4c, 0xc0, 0xbb, 0x0e, 0xe1, 0xbf, 0xfc, 0x6c, 0x7b, 0x74, 0x60, 0x9e, 0xc2, 0x0c, 0x46, 0x0e, 0xc4, 0x7f, 0x4d, 0x06, 0x8f, 0x33, 0xd6, 0x01, 0x87, 0x40, 0x15, 0x98, 0x62, 0x80, 0x4e, 0xdf, 0x98, 0x2b, 0x33, 0x66, 0x9b, 0x69, 0x69, 0x3f, 0x30, 0xc1, 0xb0, 0x19, 0x26, 0x5c, 0x42, 0xc6, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8377 = { .name = "ecdsa_secp384r1_sha3_384_8377", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8377_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8377_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8377_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8378 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8378_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8378_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8378 = { .name = "ecdsa_secp384r1_sha3_384_8378", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8378_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8378_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8378_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8379 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8379_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8379_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8379 = { .name = "ecdsa_secp384r1_sha3_384_8379", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8379_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8379_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8379_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8380 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8380_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8380_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8380 = { .name = "ecdsa_secp384r1_sha3_384_8380", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8380_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8380_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8380_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8381 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8381_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8381_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8381 = { .name = "ecdsa_secp384r1_sha3_384_8381", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8381_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8381_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8381_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8382 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8382_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8382_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8382 = { .name = "ecdsa_secp384r1_sha3_384_8382", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8382_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8382_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8382_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8383 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8383_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8383_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8383 = { .name = "ecdsa_secp384r1_sha3_384_8383", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8383_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8383_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8383_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8384 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8384_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8384_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8384 = { .name = "ecdsa_secp384r1_sha3_384_8384", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8384_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8384_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8384_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8385 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8385_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8385_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8385 = { .name = "ecdsa_secp384r1_sha3_384_8385", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8385_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8385_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8385_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8386 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8386_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8386_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8386 = { .name = "ecdsa_secp384r1_sha3_384_8386", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8386_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8386_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8386_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8387 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8387_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8387_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8387 = { .name = "ecdsa_secp384r1_sha3_384_8387", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8387_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8387_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8387_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8388 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8388_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8388_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8388 = { .name = "ecdsa_secp384r1_sha3_384_8388", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8388_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8388_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8388_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8389 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8389_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8389_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8389 = { .name = "ecdsa_secp384r1_sha3_384_8389", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8389_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8389_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8389_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8390 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8390_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8390_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8390 = { .name = "ecdsa_secp384r1_sha3_384_8390", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8390_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8390_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8390_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8391 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8391_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8391_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8391 = { .name = "ecdsa_secp384r1_sha3_384_8391", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8391_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8391_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8391_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8392 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8392_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8392_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8392 = { .name = "ecdsa_secp384r1_sha3_384_8392", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8392_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8392_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8392_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8393 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8393_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8393_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8393 = { .name = "ecdsa_secp384r1_sha3_384_8393", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8393_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8393_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8393_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8394 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8394_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8394_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8394 = { .name = "ecdsa_secp384r1_sha3_384_8394", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8394_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8394_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8394_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8395 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8395_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8395_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8395 = { .name = "ecdsa_secp384r1_sha3_384_8395", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8395_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8395_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8395_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8396 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8396_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8396_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8396 = { .name = "ecdsa_secp384r1_sha3_384_8396", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8396_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8396_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8396_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8397 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8397_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8397_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8397 = { .name = "ecdsa_secp384r1_sha3_384_8397", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8397_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8397_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8397_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8398 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8398_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8398_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8398 = { .name = "ecdsa_secp384r1_sha3_384_8398", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8398_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8398_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8398_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8399 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8399_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8399_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8399 = { .name = "ecdsa_secp384r1_sha3_384_8399", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8399_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8399_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8399_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8400 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8400_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8400_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8400 = { .name = "ecdsa_secp384r1_sha3_384_8400", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8400_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8400_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8400_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8401 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8401_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8401_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8401 = { .name = "ecdsa_secp384r1_sha3_384_8401", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8401_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8401_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8401_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8402 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8402_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8402_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8402 = { .name = "ecdsa_secp384r1_sha3_384_8402", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8402_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8402_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8402_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8403 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8403_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8403_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8403_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8403 = { .name = "ecdsa_secp384r1_sha3_384_8403", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8403_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8403_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8403_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8404 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8404_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8404_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8404 = { .name = "ecdsa_secp384r1_sha3_384_8404", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8404_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8404_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8404_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8405 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8405_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8405_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8405 = { .name = "ecdsa_secp384r1_sha3_384_8405", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8405_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8405_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8405_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8406 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8406_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8406_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8406 = { .name = "ecdsa_secp384r1_sha3_384_8406", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8406_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8406_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8406_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8407 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8407_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8407_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8407 = { .name = "ecdsa_secp384r1_sha3_384_8407", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8407_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8407_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8407_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8408 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8408_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8408_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8408 = { .name = "ecdsa_secp384r1_sha3_384_8408", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8408_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8408_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8408_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8409 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8409_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8409_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8409 = { .name = "ecdsa_secp384r1_sha3_384_8409", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8409_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8409_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8409_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8410 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8410_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8410_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8410 = { .name = "ecdsa_secp384r1_sha3_384_8410", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8410_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8410_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8410_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8411 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8411_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8411_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8411 = { .name = "ecdsa_secp384r1_sha3_384_8411", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8411_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8411_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8411_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8412 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8412_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8412_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8412 = { .name = "ecdsa_secp384r1_sha3_384_8412", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8412_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8412_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8412_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8413 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8413_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8413_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8413 = { .name = "ecdsa_secp384r1_sha3_384_8413", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8413_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8413_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8413_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8414 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8414_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8414_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8414 = { .name = "ecdsa_secp384r1_sha3_384_8414", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8414_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8414_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8414_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8415 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8415_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8415_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8415 = { .name = "ecdsa_secp384r1_sha3_384_8415", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8415_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8415_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8415_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8416 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8416_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8416_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8416 = { .name = "ecdsa_secp384r1_sha3_384_8416", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8416_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8416_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8416_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8417 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8417_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8417_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8417 = { .name = "ecdsa_secp384r1_sha3_384_8417", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8417_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8417_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8417_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8418 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8418_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8418_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8418 = { .name = "ecdsa_secp384r1_sha3_384_8418", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8418_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8418_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8418_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8419 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8419_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8419_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8419 = { .name = "ecdsa_secp384r1_sha3_384_8419", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8419_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8419_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8419_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8420 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8420_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8420_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8420 = { .name = "ecdsa_secp384r1_sha3_384_8420", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8420_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8420_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8420_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8421 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8421_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8421_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8421 = { .name = "ecdsa_secp384r1_sha3_384_8421", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8421_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8421_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8421_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8422 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8422_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8422_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8422 = { .name = "ecdsa_secp384r1_sha3_384_8422", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8422_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8422_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8422_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8423 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8423_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8423_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8423 = { .name = "ecdsa_secp384r1_sha3_384_8423", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8423_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8423_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8423_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8424 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8424_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8424_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8424 = { .name = "ecdsa_secp384r1_sha3_384_8424", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8424_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8424_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8424_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8425 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8425_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8425_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8425 = { .name = "ecdsa_secp384r1_sha3_384_8425", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8425_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8425_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8425_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8426 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8426_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8426_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8426 = { .name = "ecdsa_secp384r1_sha3_384_8426", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8426_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8426_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8426_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8427 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8427_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8427_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8427 = { .name = "ecdsa_secp384r1_sha3_384_8427", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8427_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8427_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8427_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8428 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8428_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8428_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8428 = { .name = "ecdsa_secp384r1_sha3_384_8428", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8428_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8428_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8428_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8429 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8429_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8429_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8429 = { .name = "ecdsa_secp384r1_sha3_384_8429", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8429_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8429_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8429_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8430 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8430_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8430_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8430 = { .name = "ecdsa_secp384r1_sha3_384_8430", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8430_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8430_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8430_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8431 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8431_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8431_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8431 = { .name = "ecdsa_secp384r1_sha3_384_8431", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8431_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8431_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8431_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8432 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8432_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8432_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8432 = { .name = "ecdsa_secp384r1_sha3_384_8432", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8432_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8432_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8432_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8433 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8433_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8433_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8433 = { .name = "ecdsa_secp384r1_sha3_384_8433", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8433_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8433_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8433_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8434 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8434_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8434_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8434 = { .name = "ecdsa_secp384r1_sha3_384_8434", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8434_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8434_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8434_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8435 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8435_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8435_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8435 = { .name = "ecdsa_secp384r1_sha3_384_8435", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8435_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8435_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8435_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8436 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8436_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8436_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8436 = { .name = "ecdsa_secp384r1_sha3_384_8436", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8436_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8436_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8436_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8437 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8437_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8437_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8437 = { .name = "ecdsa_secp384r1_sha3_384_8437", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8437_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8437_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8437_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8438 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8438_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8438_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8438 = { .name = "ecdsa_secp384r1_sha3_384_8438", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8438_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8438_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8438_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8439 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8439_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8439_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8439 = { .name = "ecdsa_secp384r1_sha3_384_8439", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8439_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8439_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8439_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8440 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8440_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8440_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8440 = { .name = "ecdsa_secp384r1_sha3_384_8440", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8440_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8440_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8440_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8441 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8441_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8441_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8441 = { .name = "ecdsa_secp384r1_sha3_384_8441", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8441_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8441_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8441_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8442 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8442_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8442_msg[] = { 0x33, 0x37, 0x33, 0x31, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8442_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0xc1, 0x04, 0x5e, 0xd2, 0x6a, 0xe9, 0xe8, 0xaa, 0xbf, 0x53, 0x07, 0xdb, 0x31, 0x7f, 0x60, 0xe8, 0xc2, 0x84, 0x2f, 0x67, 0xdf, 0x81, 0xda, 0x26, 0x63, 0x3d, 0x83, 0x1a, 0xe5, 0xe0, 0x61, 0xa5, 0xef, 0x85, 0x0d, 0x7d, 0x49, 0xf0, 0x85, 0xd5, 0x66, 0xd9, 0x2c, 0xfd, 0x9f, 0x15, 0x2d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8442 = { .name = "ecdsa_secp384r1_sha3_384_8442", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8442_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8442_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha3_384_8442_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8443 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8443_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8443_msg[] = { 0x31, 0x31, 0x35, 0x35, 0x34, 0x39, 0x30, 0x35, 0x38, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8443_sig[] = { 0x0c, 0x0b, 0x82, 0xbe, 0x4c, 0x36, 0xd5, 0x06, 0x06, 0x3f, 0xc9, 0x63, 0x13, 0x3c, 0x14, 0xd5, 0x01, 0x4d, 0x65, 0xc9, 0xeb, 0x79, 0x6e, 0xe8, 0xa8, 0x38, 0x71, 0x20, 0x11, 0x9c, 0xcc, 0x16, 0xb5, 0x73, 0x02, 0xb6, 0xcc, 0xb1, 0x9a, 0x84, 0x6b, 0x77, 0x62, 0x37, 0x5b, 0x3c, 0x97, 0x18, 0x28, 0x59, 0x19, 0x25, 0x9f, 0x68, 0x4f, 0x56, 0xf8, 0x9c, 0xba, 0xa7, 0x89, 0xef, 0x13, 0xe1, 0x85, 0xfd, 0x24, 0xd0, 0x9d, 0xcd, 0x46, 0xce, 0x79, 0x4a, 0xed, 0xc4, 0xe5, 0xb4, 0xa3, 0x82, 0x05, 0x35, 0x21, 0x3a, 0xbb, 0x7c, 0x4e, 0x60, 0x5b, 0x02, 0x20, 0x0f, 0xbe, 0xb3, 0x22, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8443 = { .name = "ecdsa_secp384r1_sha3_384_8443", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8443_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8443_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8443_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8444 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8444_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8444_msg[] = { 0x32, 0x36, 0x38, 0x31, 0x39, 0x30, 0x31, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8444_sig[] = { 0x7d, 0xa9, 0x9d, 0x7e, 0x8b, 0xb5, 0x05, 0xcc, 0x5f, 0x12, 0x70, 0x6d, 0x5e, 0xb7, 0x66, 0x93, 0x36, 0xa6, 0x1a, 0x72, 0x6a, 0x5b, 0x37, 0x6f, 0xf9, 0x6d, 0x67, 0x8a, 0x62, 0x1f, 0x38, 0x68, 0x1b, 0xc7, 0x85, 0x92, 0xcd, 0x06, 0x71, 0x7c, 0xb8, 0x77, 0x53, 0xda, 0xf0, 0xd3, 0x9b, 0x77, 0xca, 0x91, 0xcd, 0xb7, 0x8f, 0x21, 0x95, 0x08, 0x77, 0xb6, 0x9d, 0xb1, 0x41, 0x8a, 0x3e, 0x9b, 0x57, 0x99, 0xb3, 0x46, 0x4f, 0x1f, 0xa2, 0x23, 0xc7, 0xac, 0x8d, 0x6f, 0xa9, 0xf6, 0x47, 0xf2, 0xa0, 0x81, 0x09, 0x93, 0x5a, 0xd6, 0x74, 0x77, 0xc9, 0x6b, 0xbf, 0x1a, 0x2a, 0x12, 0x7a, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8444 = { .name = "ecdsa_secp384r1_sha3_384_8444", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8444_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8444_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8444_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8445 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8445_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8445_msg[] = { 0x38, 0x33, 0x33, 0x36, 0x35, 0x34, 0x38, 0x36, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8445_sig[] = { 0x20, 0x4d, 0x32, 0x2a, 0xf7, 0x17, 0x8a, 0xc2, 0x0b, 0x39, 0xa4, 0x27, 0x23, 0xfb, 0x1f, 0x83, 0x29, 0xb1, 0x05, 0x99, 0x3e, 0x09, 0xdb, 0xdc, 0xab, 0xf3, 0xe0, 0xea, 0xa0, 0xa0, 0x8d, 0x54, 0x71, 0x9e, 0x06, 0xba, 0x70, 0x46, 0x91, 0x29, 0x5a, 0x56, 0xbe, 0x77, 0x65, 0xb5, 0xfd, 0x74, 0x3b, 0x52, 0x6d, 0xe3, 0xe4, 0x7e, 0x69, 0x51, 0x8d, 0x4f, 0xbc, 0x08, 0x33, 0xa5, 0x78, 0x50, 0x74, 0xc3, 0xf4, 0xee, 0xf2, 0x7b, 0x9f, 0x0f, 0xc4, 0x84, 0x81, 0x51, 0x49, 0x31, 0xe4, 0x32, 0x35, 0xb8, 0x1e, 0x51, 0xd2, 0xb5, 0x77, 0xb1, 0x73, 0x99, 0x64, 0xef, 0x25, 0xd8, 0xfa, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8445 = { .name = "ecdsa_secp384r1_sha3_384_8445", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8445_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8445_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8445_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8446 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8446_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8446_msg[] = { 0x33, 0x36, 0x32, 0x35, 0x30, 0x35, 0x38, 0x31, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8446_sig[] = { 0x9d, 0x4a, 0xdb, 0x54, 0xf5, 0x23, 0x49, 0xcc, 0x73, 0x32, 0x2f, 0xfc, 0x94, 0x6b, 0xf4, 0x4a, 0x1a, 0x1b, 0xb9, 0x54, 0xbd, 0x4b, 0x58, 0xf9, 0x12, 0xbe, 0x06, 0x8c, 0xe0, 0x52, 0x72, 0xa1, 0x24, 0x79, 0xbb, 0xb0, 0xf7, 0x78, 0xa9, 0xfa, 0xf8, 0xf9, 0xf2, 0xe9, 0x32, 0x4b, 0xd5, 0xe9, 0x1e, 0xee, 0x2f, 0x98, 0x40, 0x6c, 0x30, 0x72, 0x8d, 0xa3, 0xb2, 0xb5, 0x33, 0xc3, 0x87, 0x10, 0x8c, 0xc6, 0x7f, 0xc2, 0x4a, 0xbd, 0xb6, 0xbd, 0xab, 0x68, 0x6f, 0x20, 0x7f, 0x0a, 0x75, 0xcc, 0x9c, 0x3b, 0x4d, 0x4e, 0xa9, 0x42, 0x7d, 0x88, 0x1c, 0x47, 0xd4, 0x19, 0xed, 0x7a, 0x1b, 0x95, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8446 = { .name = "ecdsa_secp384r1_sha3_384_8446", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8446_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8446_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8446_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8447 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8447_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8447_msg[] = { 0x33, 0x32, 0x37, 0x39, 0x33, 0x32, 0x37, 0x31, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8447_sig[] = { 0xae, 0x50, 0xb1, 0xaa, 0xad, 0x54, 0xef, 0xbe, 0x00, 0x7f, 0x1d, 0xa7, 0xd5, 0x0e, 0xc0, 0x0c, 0xf1, 0x10, 0x0f, 0x90, 0x4f, 0xd8, 0xf4, 0x94, 0x0e, 0xf4, 0x8f, 0x36, 0x40, 0x31, 0xdc, 0x12, 0x84, 0xab, 0x98, 0x4e, 0x01, 0x81, 0x05, 0xe6, 0xd3, 0x68, 0xbb, 0x5a, 0x47, 0xc2, 0x50, 0x22, 0xa8, 0x03, 0xfb, 0x01, 0x56, 0xa1, 0x0e, 0x42, 0xd4, 0x29, 0x4a, 0x76, 0x4a, 0x1d, 0xa9, 0xc3, 0xe0, 0xc8, 0x32, 0x0b, 0xd1, 0xa8, 0x35, 0x44, 0xff, 0x46, 0x75, 0x1a, 0x77, 0x7b, 0xbc, 0xe2, 0x39, 0x85, 0x66, 0x9e, 0x43, 0xff, 0x63, 0xfc, 0xdb, 0xac, 0x34, 0xd6, 0x8f, 0x42, 0xde, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8447 = { .name = "ecdsa_secp384r1_sha3_384_8447", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8447_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8447_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8447_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8448 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8448_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8448_msg[] = { 0x38, 0x38, 0x36, 0x36, 0x34, 0x32, 0x31, 0x34, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8448_sig[] = { 0xbc, 0x65, 0x64, 0x4a, 0xcb, 0x7d, 0xcf, 0x72, 0xbb, 0xf9, 0x37, 0xe7, 0x81, 0xd6, 0xde, 0x7b, 0xca, 0x05, 0x2a, 0xdc, 0xad, 0x47, 0x4e, 0x3a, 0x2b, 0x06, 0x79, 0x5a, 0x18, 0xdb, 0x7b, 0x89, 0xd2, 0x46, 0xa4, 0x85, 0xd6, 0x96, 0xb2, 0xb8, 0xd0, 0x7c, 0x07, 0xd2, 0xba, 0x2e, 0x29, 0x29, 0xaf, 0x81, 0x1c, 0xb9, 0x77, 0x2b, 0x4b, 0x3f, 0x1e, 0xed, 0x35, 0x8b, 0x72, 0x2a, 0x5b, 0x28, 0xa2, 0x16, 0x17, 0xae, 0xa7, 0xeb, 0x6f, 0x93, 0x71, 0xb6, 0x8a, 0x8d, 0x1e, 0xb7, 0x23, 0x2d, 0xef, 0x26, 0x7b, 0xa5, 0x6a, 0x62, 0x20, 0xf6, 0x6a, 0x03, 0xc3, 0xed, 0x7c, 0xd3, 0x22, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8448 = { .name = "ecdsa_secp384r1_sha3_384_8448", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8448_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8448_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8448_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8449 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8449_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8449_msg[] = { 0x32, 0x33, 0x37, 0x37, 0x39, 0x30, 0x36, 0x31, 0x35, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8449_sig[] = { 0xf6, 0x20, 0x5c, 0x15, 0x4a, 0x9c, 0xd3, 0x8a, 0x1f, 0xc9, 0xa1, 0x8c, 0x7b, 0xf6, 0x35, 0x06, 0x99, 0xc9, 0x51, 0x44, 0x26, 0x8b, 0xa4, 0xca, 0x18, 0x2a, 0x5c, 0x8d, 0x50, 0xb7, 0x80, 0xd4, 0x68, 0xaa, 0x9b, 0xeb, 0x81, 0x15, 0xf8, 0xec, 0x48, 0x95, 0x58, 0x89, 0x1e, 0xcd, 0x6d, 0x65, 0x86, 0x3f, 0x41, 0x41, 0x2a, 0xb4, 0x18, 0xfe, 0x03, 0x7f, 0xd6, 0x88, 0xa9, 0xf6, 0xc5, 0x09, 0xbc, 0x55, 0x35, 0xb2, 0xc6, 0xb5, 0xad, 0x7b, 0xf9, 0x48, 0x6f, 0xb0, 0xe5, 0xb0, 0x21, 0x36, 0x21, 0x9a, 0xca, 0x2c, 0xdd, 0x9d, 0x5d, 0x63, 0xf9, 0x14, 0x0e, 0x6d, 0x1d, 0x05, 0x42, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8449 = { .name = "ecdsa_secp384r1_sha3_384_8449", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8449_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8449_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8449_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8450 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8450_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8450_msg[] = { 0x38, 0x30, 0x38, 0x33, 0x32, 0x34, 0x36, 0x36, 0x32, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8450_sig[] = { 0xae, 0xdf, 0x73, 0x82, 0x96, 0x53, 0x59, 0xc9, 0xab, 0xff, 0x67, 0xf0, 0xfa, 0xd2, 0xbe, 0x6b, 0x84, 0xd7, 0x60, 0xac, 0x95, 0xda, 0x1c, 0x65, 0x69, 0x89, 0xf1, 0x99, 0x38, 0xb0, 0x46, 0x37, 0x1e, 0x10, 0x1e, 0x8b, 0xab, 0x9a, 0x0a, 0xe9, 0xb9, 0xad, 0x2b, 0xc2, 0x42, 0xa9, 0x82, 0x01, 0x91, 0x75, 0x51, 0x15, 0x15, 0xa0, 0x10, 0x96, 0xb4, 0xd7, 0x7c, 0xc5, 0x05, 0xc6, 0x0f, 0xac, 0xfc, 0xeb, 0x18, 0x41, 0x94, 0x84, 0x42, 0x44, 0x8e, 0x5c, 0x9f, 0x24, 0x20, 0x4f, 0x81, 0x7e, 0xb2, 0x0d, 0x12, 0x47, 0x93, 0x05, 0xe8, 0x2e, 0xe5, 0xa3, 0x4b, 0xd7, 0x3e, 0xbb, 0x04, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8450 = { .name = "ecdsa_secp384r1_sha3_384_8450", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8450_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8450_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8450_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8451 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8451_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8451_msg[] = { 0x31, 0x34, 0x38, 0x32, 0x35, 0x36, 0x34, 0x39, 0x35, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8451_sig[] = { 0xbc, 0xc6, 0x96, 0xd8, 0xd3, 0x44, 0x59, 0x60, 0xe0, 0x0c, 0x9f, 0x76, 0xf2, 0x77, 0xe5, 0xfa, 0x32, 0x67, 0x22, 0x4d, 0x01, 0x87, 0xad, 0x12, 0x0f, 0x9c, 0x07, 0x45, 0x97, 0xee, 0xaf, 0xcb, 0x6c, 0x7f, 0x22, 0xf5, 0x19, 0x00, 0x35, 0x18, 0x48, 0x85, 0x5b, 0x20, 0x07, 0x2a, 0xfd, 0xae, 0x93, 0x5d, 0xfc, 0x4f, 0x7b, 0x48, 0xac, 0x01, 0x11, 0x6e, 0x5c, 0xf1, 0x94, 0xfd, 0x2f, 0xee, 0xd3, 0xcb, 0x28, 0xe7, 0x2c, 0xba, 0x84, 0x85, 0xf1, 0xd9, 0x4e, 0x5d, 0x20, 0xf5, 0xf4, 0x14, 0x7a, 0x1c, 0xa3, 0xd6, 0x49, 0x6b, 0xbe, 0x91, 0x59, 0x13, 0xd2, 0x1c, 0x4f, 0x5a, 0xfb, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8451 = { .name = "ecdsa_secp384r1_sha3_384_8451", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8451_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8451_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8451_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8452 for ECDSA, tcId is 240 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8452_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8452_msg[] = { 0x33, 0x30, 0x36, 0x35, 0x30, 0x37, 0x32, 0x35, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8452_sig[] = { 0xc0, 0x29, 0xe4, 0x90, 0x48, 0x92, 0x16, 0x47, 0x65, 0x9a, 0x04, 0x2e, 0xb5, 0x33, 0x00, 0x4e, 0xa3, 0x48, 0x7f, 0x22, 0xa7, 0xf2, 0xc4, 0x71, 0xc4, 0x3a, 0x5a, 0x23, 0x26, 0xdd, 0x03, 0xac, 0x24, 0x38, 0x62, 0x42, 0xc0, 0x56, 0x98, 0x19, 0x4b, 0x5c, 0x61, 0x71, 0xf0, 0x8b, 0xb7, 0xcc, 0xa9, 0x2e, 0xd5, 0xf2, 0xc7, 0x36, 0xe2, 0x77, 0x11, 0x38, 0x4a, 0x13, 0x1c, 0x46, 0x4f, 0x73, 0x85, 0x2a, 0x7d, 0xd1, 0x67, 0xb2, 0x7c, 0x63, 0x02, 0x00, 0x40, 0xd8, 0xde, 0x99, 0x1a, 0x39, 0x0a, 0xd7, 0x66, 0x27, 0xd5, 0x97, 0xcc, 0xfe, 0xbe, 0xd8, 0x09, 0xf2, 0xf7, 0xf5, 0x7b, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8452 = { .name = "ecdsa_secp384r1_sha3_384_8452", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8452_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8452_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8452_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8453 for ECDSA, tcId is 241 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8453_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8453_msg[] = { 0x31, 0x34, 0x39, 0x32, 0x31, 0x31, 0x38, 0x32, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8453_sig[] = { 0x0f, 0x5e, 0x17, 0x71, 0xba, 0x19, 0x57, 0xfe, 0x87, 0x94, 0xc2, 0x37, 0x76, 0x83, 0x2e, 0xa4, 0x0e, 0xc4, 0xfd, 0xa9, 0x99, 0x18, 0x6f, 0x6c, 0x36, 0x5f, 0x47, 0x49, 0xf0, 0x78, 0x93, 0xcb, 0x55, 0xe9, 0x72, 0x65, 0x8c, 0x2d, 0x3b, 0x39, 0xa7, 0xb4, 0x85, 0x19, 0x3f, 0xf1, 0xd7, 0x19, 0x39, 0x67, 0x98, 0x3d, 0x1d, 0xa9, 0xdc, 0xf0, 0x10, 0x5d, 0xdc, 0x38, 0x3f, 0x59, 0x95, 0x39, 0xd4, 0xb3, 0x2b, 0x1b, 0xb8, 0xda, 0xe1, 0xa6, 0xfe, 0x0a, 0xfb, 0xc9, 0xbf, 0xf1, 0xe0, 0x95, 0x2a, 0x32, 0xf0, 0x8d, 0x16, 0x1b, 0x39, 0x79, 0xa6, 0x0b, 0xb6, 0xe4, 0x9b, 0x6c, 0x7d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8453 = { .name = "ecdsa_secp384r1_sha3_384_8453", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8453_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8453_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8453_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8454 for ECDSA, tcId is 242 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8454_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8454_msg[] = { 0x35, 0x35, 0x35, 0x33, 0x32, 0x30, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8454_sig[] = { 0x09, 0x39, 0x87, 0x4c, 0x2f, 0x67, 0x09, 0x0a, 0x90, 0x0a, 0xd7, 0x39, 0x9d, 0xf7, 0x8c, 0x60, 0x05, 0xfc, 0x46, 0x73, 0xe2, 0x3b, 0x15, 0x5d, 0xf7, 0x47, 0x1b, 0x31, 0xde, 0xbd, 0x21, 0x74, 0xfe, 0xa9, 0x4e, 0x00, 0x18, 0x0d, 0xdc, 0x1a, 0x86, 0x60, 0x9e, 0xda, 0x88, 0x30, 0xb4, 0x49, 0xc9, 0xd7, 0x19, 0x34, 0xa7, 0x22, 0x2e, 0x41, 0x5a, 0x01, 0x69, 0x2c, 0x72, 0x74, 0xe5, 0x09, 0x7d, 0x58, 0x0d, 0xfe, 0x74, 0x17, 0x5d, 0xfc, 0x00, 0x55, 0xfe, 0xdd, 0xfb, 0x41, 0x4c, 0x1a, 0xe8, 0x57, 0x05, 0x1c, 0xe1, 0x2c, 0x0f, 0xf2, 0x5d, 0x53, 0x72, 0x75, 0x14, 0x56, 0x62, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8454 = { .name = "ecdsa_secp384r1_sha3_384_8454", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8454_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8454_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8454_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8455 for ECDSA, tcId is 243 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8455_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8455_msg[] = { 0x33, 0x33, 0x31, 0x37, 0x30, 0x32, 0x30, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8455_sig[] = { 0xc3, 0x5b, 0x9e, 0xaa, 0x9a, 0x03, 0xa3, 0x6b, 0xa5, 0x2b, 0x7a, 0xb2, 0x07, 0xff, 0x48, 0x92, 0x5a, 0x01, 0x88, 0xd2, 0x88, 0xb1, 0xed, 0x25, 0xd7, 0xde, 0x8b, 0xc2, 0x03, 0xe8, 0xef, 0x91, 0x2a, 0x01, 0x89, 0x1e, 0xab, 0x8f, 0x8e, 0x3a, 0x7d, 0x0a, 0x94, 0x8a, 0x26, 0xd3, 0x5a, 0xb1, 0xcf, 0x04, 0x10, 0x52, 0x08, 0xf1, 0x0a, 0xf6, 0x12, 0x40, 0xda, 0x60, 0x73, 0xcc, 0x39, 0x27, 0x8f, 0xda, 0xdc, 0x05, 0x78, 0xbf, 0x40, 0xbb, 0xd0, 0xb0, 0xf6, 0x01, 0xed, 0x79, 0x1e, 0x04, 0x1a, 0x90, 0xa0, 0x9d, 0x7c, 0x42, 0x3a, 0x83, 0xf6, 0xcd, 0x04, 0x7d, 0x74, 0x5c, 0x4f, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8455 = { .name = "ecdsa_secp384r1_sha3_384_8455", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8455_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8455_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8455_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8456 for ECDSA, tcId is 244 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8456_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8456_msg[] = { 0x37, 0x35, 0x31, 0x31, 0x38, 0x32, 0x33, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8456_sig[] = { 0x6c, 0x1f, 0xff, 0xcc, 0x27, 0x0c, 0x9b, 0xf1, 0x08, 0x28, 0x9b, 0x42, 0x51, 0x4e, 0x57, 0xe3, 0xf2, 0x9e, 0xa0, 0xf1, 0xb3, 0xfb, 0xfc, 0x10, 0xea, 0x28, 0x3b, 0x3e, 0x6d, 0x2a, 0x44, 0x38, 0xd5, 0x91, 0xfb, 0x72, 0x74, 0xc9, 0xff, 0xee, 0x15, 0x00, 0x9c, 0xd9, 0xe3, 0x40, 0xf1, 0x06, 0xde, 0x38, 0x04, 0x3b, 0x47, 0xc7, 0xd5, 0xab, 0x21, 0xd8, 0xec, 0x5a, 0x35, 0x75, 0x8f, 0x1a, 0x69, 0xee, 0x59, 0xea, 0x6d, 0xf5, 0x25, 0x88, 0x4a, 0x04, 0x21, 0x01, 0x72, 0xe7, 0x42, 0x1f, 0x2a, 0x49, 0xf5, 0x92, 0x1a, 0x4e, 0xac, 0x40, 0xb2, 0x78, 0xf6, 0xe7, 0xc4, 0x94, 0x74, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8456 = { .name = "ecdsa_secp384r1_sha3_384_8456", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8456_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8456_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8456_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8457 for ECDSA, tcId is 245 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8457_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8457_msg[] = { 0x37, 0x37, 0x30, 0x34, 0x39, 0x35, 0x34, 0x36, 0x34, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8457_sig[] = { 0xec, 0xc6, 0x37, 0xf3, 0xd3, 0x2b, 0xc9, 0xa1, 0xec, 0x20, 0xf0, 0x25, 0xaf, 0x72, 0xeb, 0x03, 0xdf, 0x49, 0xf2, 0x79, 0x01, 0xfe, 0xf6, 0xb5, 0x8d, 0x22, 0x6b, 0x6e, 0xaa, 0x9f, 0xaa, 0x63, 0x74, 0xf8, 0x7c, 0x2a, 0xaa, 0xec, 0xd6, 0x99, 0x46, 0xf3, 0x77, 0x7f, 0xb9, 0xd4, 0x58, 0x1e, 0x48, 0xf6, 0xa0, 0x6b, 0x29, 0x6a, 0x17, 0xd8, 0x4d, 0xd2, 0x6f, 0xfd, 0xed, 0x0c, 0x5d, 0xcc, 0xf1, 0x77, 0xe6, 0xdf, 0x9a, 0x77, 0x10, 0xb0, 0x40, 0x6f, 0xed, 0xfd, 0x26, 0x9b, 0x2c, 0x22, 0x0f, 0x11, 0xc1, 0xe0, 0x2c, 0xea, 0x42, 0xc1, 0x8c, 0xca, 0xc7, 0x68, 0xc6, 0x4b, 0xa7, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8457 = { .name = "ecdsa_secp384r1_sha3_384_8457", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8457_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8457_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8457_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8458 for ECDSA, tcId is 246 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8458_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8458_msg[] = { 0x34, 0x32, 0x35, 0x39, 0x30, 0x37, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8458_sig[] = { 0x7d, 0xcf, 0x9d, 0xed, 0x94, 0x53, 0x2d, 0x50, 0xe9, 0xa2, 0xac, 0x97, 0x16, 0x42, 0xda, 0x0d, 0xe9, 0x5a, 0x1c, 0xa9, 0x55, 0x00, 0x62, 0x11, 0x74, 0x11, 0x3c, 0x1d, 0x55, 0x4f, 0x21, 0xbb, 0x2d, 0x17, 0x5b, 0x5b, 0xea, 0xcd, 0xd7, 0x34, 0x43, 0x04, 0x3c, 0x6c, 0xc8, 0xea, 0xf1, 0x05, 0xd4, 0xda, 0x51, 0x8d, 0xe6, 0xb8, 0xc0, 0x5c, 0x64, 0x0a, 0x3e, 0x7a, 0x15, 0x40, 0x48, 0x2d, 0x93, 0x5c, 0x4d, 0xfd, 0xca, 0x75, 0x44, 0xda, 0xf9, 0x4a, 0xc8, 0x13, 0x58, 0x04, 0x12, 0x7b, 0x93, 0x66, 0x5e, 0x11, 0x91, 0xb6, 0x6b, 0xdb, 0x00, 0x89, 0xc4, 0x98, 0x02, 0xc3, 0x3f, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8458 = { .name = "ecdsa_secp384r1_sha3_384_8458", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8458_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8458_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8458_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8459 for ECDSA, tcId is 247 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8459_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8459_msg[] = { 0x31, 0x34, 0x31, 0x39, 0x37, 0x31, 0x33, 0x35, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8459_sig[] = { 0x82, 0x09, 0x05, 0x4b, 0xb4, 0x08, 0xee, 0xd6, 0xab, 0x65, 0xf4, 0xbb, 0x76, 0x22, 0x3d, 0x50, 0x9e, 0xa2, 0x4d, 0x02, 0xcb, 0xbc, 0x52, 0x73, 0x14, 0x5b, 0xcb, 0x40, 0x18, 0x90, 0x52, 0x54, 0x0e, 0x56, 0x5f, 0xbf, 0x50, 0x47, 0x4f, 0x83, 0xdb, 0x3d, 0xa0, 0x54, 0xa7, 0x93, 0xc8, 0x63, 0xb8, 0x16, 0x9b, 0x12, 0x56, 0x8f, 0xfa, 0x03, 0xc0, 0xe3, 0x7d, 0x4a, 0x19, 0x91, 0x1e, 0x9f, 0x4a, 0xf7, 0xcd, 0x25, 0x63, 0x43, 0xa3, 0x6e, 0x41, 0xcd, 0x7b, 0x41, 0x39, 0x55, 0x24, 0x23, 0x5e, 0x86, 0xd5, 0x5c, 0x64, 0x7f, 0x28, 0x8f, 0xe5, 0xce, 0xf2, 0xb5, 0x40, 0x1e, 0x44, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8459 = { .name = "ecdsa_secp384r1_sha3_384_8459", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8459_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8459_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8459_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8460 for ECDSA, tcId is 248 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8460_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8460_msg[] = { 0x32, 0x31, 0x39, 0x32, 0x38, 0x33, 0x35, 0x34, 0x36, 0x38, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8460_sig[] = { 0x9f, 0xe9, 0x69, 0x77, 0x0d, 0x63, 0x0b, 0xb9, 0x38, 0xca, 0x22, 0x82, 0x53, 0x6f, 0x71, 0xf3, 0xdc, 0x46, 0x10, 0x71, 0x18, 0x62, 0x16, 0xd9, 0x40, 0xec, 0xa1, 0x0f, 0xc5, 0x3c, 0x4e, 0x7e, 0xf0, 0x67, 0xbc, 0xa2, 0x37, 0xbd, 0x6a, 0x82, 0xea, 0xfe, 0xf0, 0xfb, 0x8d, 0x38, 0x05, 0x0e, 0xb2, 0x3a, 0x04, 0x21, 0x78, 0xfd, 0xea, 0x5d, 0xa8, 0x62, 0x29, 0xc0, 0x8a, 0x51, 0x22, 0x7f, 0x23, 0xe3, 0x1b, 0x1e, 0x23, 0x45, 0xde, 0xfa, 0x12, 0xed, 0x70, 0x41, 0xbe, 0xc3, 0x1f, 0x87, 0x83, 0x7b, 0xa4, 0x76, 0x47, 0x21, 0x82, 0x3e, 0xa9, 0xf1, 0xe6, 0x52, 0xd5, 0x36, 0xc5, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8460 = { .name = "ecdsa_secp384r1_sha3_384_8460", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8460_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8460_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8460_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8461 for ECDSA, tcId is 249 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8461_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8461_msg[] = { 0x36, 0x36, 0x32, 0x35, 0x39, 0x39, 0x34, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8461_sig[] = { 0x45, 0x9b, 0xe5, 0x10, 0xbc, 0xa7, 0x60, 0xf7, 0x5a, 0xca, 0x10, 0xe4, 0x1e, 0xfb, 0x7f, 0xf6, 0x4b, 0x78, 0xfb, 0x97, 0x11, 0xe7, 0x2f, 0x22, 0x43, 0x73, 0xb9, 0xaf, 0x14, 0xf2, 0xc0, 0x42, 0xb6, 0x8b, 0x15, 0xbb, 0x18, 0x9b, 0x3d, 0x7c, 0xca, 0xed, 0x93, 0x18, 0x93, 0x65, 0x43, 0xc9, 0x57, 0x9c, 0x07, 0xe9, 0x9f, 0xc9, 0x89, 0x14, 0x98, 0xef, 0x31, 0x09, 0x36, 0x00, 0x17, 0x05, 0x2c, 0xb2, 0x0b, 0xaf, 0xb2, 0x90, 0xca, 0x2f, 0xfa, 0x64, 0xa7, 0x2c, 0xf0, 0x1e, 0x38, 0xe1, 0x27, 0x70, 0xba, 0x0a, 0xd5, 0xe1, 0x90, 0xd2, 0xef, 0x10, 0xc2, 0xd2, 0x94, 0xe0, 0x99, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8461 = { .name = "ecdsa_secp384r1_sha3_384_8461", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8461_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8461_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8461_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8462 for ECDSA, tcId is 250 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8462_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8462_msg[] = { 0x39, 0x35, 0x38, 0x34, 0x39, 0x37, 0x30, 0x38, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8462_sig[] = { 0x2b, 0xc3, 0xbb, 0x18, 0x19, 0x1a, 0x5b, 0xfe, 0x6d, 0x13, 0xc7, 0x35, 0x10, 0x4d, 0x78, 0xdd, 0x94, 0x78, 0x54, 0xcf, 0x1d, 0x93, 0x01, 0x76, 0x95, 0x11, 0x9c, 0x8f, 0x04, 0xeb, 0xb4, 0x4d, 0x7a, 0x7f, 0xff, 0xe7, 0x1d, 0x15, 0xb7, 0x8e, 0x0c, 0x2c, 0x28, 0x76, 0x5b, 0xbd, 0xfc, 0x38, 0xa9, 0x05, 0x1d, 0xd1, 0x02, 0xb2, 0x0e, 0x3c, 0x69, 0xa0, 0x1a, 0x36, 0xb8, 0x5a, 0x1c, 0xce, 0xa6, 0x70, 0xda, 0x78, 0x40, 0x38, 0x98, 0x91, 0x45, 0xe3, 0xcd, 0x91, 0x08, 0xb0, 0x64, 0xd6, 0xd5, 0x4f, 0x7d, 0xf2, 0x11, 0x64, 0xad, 0xb9, 0x1b, 0x38, 0x50, 0xcd, 0x00, 0x5f, 0xf6, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8462 = { .name = "ecdsa_secp384r1_sha3_384_8462", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8462_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8462_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8462_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8463 for ECDSA, tcId is 251 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8463_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8463_msg[] = { 0x32, 0x35, 0x39, 0x39, 0x33, 0x34, 0x34, 0x39, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8463_sig[] = { 0xfe, 0x2c, 0x05, 0x67, 0x48, 0x3e, 0xcb, 0xc6, 0x08, 0x6a, 0x24, 0x16, 0x02, 0x00, 0xa9, 0xce, 0x91, 0xe6, 0xcf, 0x52, 0xdf, 0x6d, 0x25, 0xb2, 0xab, 0x08, 0xfe, 0xdc, 0xc4, 0xca, 0x95, 0xcb, 0xb6, 0xbe, 0x68, 0xb5, 0x88, 0x70, 0xc1, 0x01, 0x69, 0x26, 0x4f, 0x3b, 0x3e, 0x8d, 0x55, 0x2e, 0x34, 0xb7, 0xef, 0x7c, 0x58, 0x05, 0x06, 0xd2, 0x9b, 0x1e, 0xf8, 0x22, 0x3e, 0x21, 0x31, 0x60, 0x2d, 0xad, 0x9f, 0xbc, 0xbc, 0xe6, 0xf8, 0x46, 0xde, 0x42, 0x51, 0x9f, 0xae, 0xcf, 0xa6, 0x12, 0xa8, 0x2e, 0x99, 0x9c, 0xbf, 0xed, 0x45, 0xf3, 0x77, 0xb7, 0x7a, 0xe5, 0xef, 0x0b, 0x48, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8463 = { .name = "ecdsa_secp384r1_sha3_384_8463", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8463_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8463_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8463_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8464 for ECDSA, tcId is 252 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8464_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8464_msg[] = { 0x36, 0x32, 0x33, 0x32, 0x34, 0x37, 0x33, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8464_sig[] = { 0x09, 0x29, 0x69, 0x17, 0xf1, 0x2f, 0xb3, 0xbb, 0xe2, 0xc6, 0x9c, 0x9b, 0xbb, 0xcc, 0xf8, 0xa4, 0x00, 0xd7, 0xe0, 0xb3, 0x1c, 0x45, 0x3f, 0xf7, 0xe9, 0x28, 0xa7, 0xe4, 0x34, 0x7a, 0x18, 0x54, 0x35, 0x49, 0x07, 0x90, 0xf5, 0x6a, 0x5a, 0x81, 0x92, 0x71, 0x19, 0x2d, 0x64, 0xd6, 0x12, 0xda, 0x16, 0x38, 0x60, 0xe1, 0xf6, 0x39, 0x0c, 0x0a, 0xda, 0x26, 0x1d, 0x2d, 0x03, 0x46, 0xb4, 0x9f, 0x18, 0xec, 0x3b, 0x17, 0xe0, 0x38, 0x9e, 0x4c, 0x3b, 0x22, 0x96, 0x38, 0x2b, 0xc2, 0x3d, 0x65, 0x76, 0xbb, 0x96, 0x81, 0x20, 0xcf, 0xd2, 0x4c, 0xe7, 0x35, 0xa1, 0x4d, 0x31, 0x67, 0xf2, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8464 = { .name = "ecdsa_secp384r1_sha3_384_8464", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8464_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8464_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8464_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8465 for ECDSA, tcId is 253 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8465_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8465_msg[] = { 0x37, 0x37, 0x36, 0x30, 0x33, 0x31, 0x30, 0x33, 0x32, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8465_sig[] = { 0x9b, 0xf9, 0x80, 0xd1, 0xd9, 0x1f, 0xa0, 0xda, 0xf7, 0x3e, 0x3b, 0xcc, 0x02, 0xc7, 0x77, 0x35, 0x03, 0xf2, 0x91, 0xb3, 0x37, 0x8c, 0x96, 0x70, 0x0e, 0xcd, 0x71, 0xae, 0xd8, 0x1f, 0xb8, 0xff, 0x47, 0xd4, 0xba, 0xa8, 0xb6, 0x78, 0x28, 0x42, 0xf2, 0x27, 0xa9, 0x31, 0x4f, 0x34, 0x3e, 0x44, 0x43, 0x42, 0xd3, 0x35, 0xdd, 0x87, 0x0f, 0x4a, 0x1b, 0x81, 0x7b, 0x51, 0x9a, 0xb1, 0x84, 0x71, 0x0c, 0x2c, 0x79, 0xb6, 0x32, 0x9a, 0xe3, 0xf8, 0x7b, 0x73, 0x5e, 0x48, 0x87, 0x4b, 0x6e, 0x47, 0x95, 0x0d, 0xb7, 0xc8, 0xf0, 0xfb, 0xa5, 0x9a, 0x34, 0x91, 0x12, 0xbd, 0x2b, 0x3d, 0x9e, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8465 = { .name = "ecdsa_secp384r1_sha3_384_8465", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8465_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8465_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8465_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8466 for ECDSA, tcId is 254 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8466_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8466_msg[] = { 0x38, 0x39, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8466_sig[] = { 0x3f, 0x9b, 0x09, 0x85, 0x5b, 0x47, 0xd1, 0x80, 0xd6, 0x0f, 0xe6, 0xac, 0x42, 0x74, 0x58, 0xa4, 0x52, 0xad, 0x72, 0x67, 0x8d, 0x13, 0x81, 0x8d, 0x1a, 0x28, 0xa3, 0x76, 0xb3, 0x1f, 0xd7, 0xd1, 0xc6, 0x7e, 0x70, 0xec, 0x23, 0x4c, 0x40, 0xfa, 0xb7, 0xd1, 0x77, 0x19, 0xf7, 0xca, 0xa2, 0x7c, 0xdc, 0x1d, 0x57, 0x65, 0xbc, 0x5c, 0x26, 0x6a, 0x39, 0xe1, 0xa9, 0x40, 0x85, 0x98, 0x3c, 0xcc, 0x63, 0xcb, 0x41, 0x55, 0x6e, 0x37, 0x33, 0x33, 0x0c, 0x98, 0x93, 0x4c, 0x32, 0x9e, 0xb7, 0xe7, 0x24, 0xe1, 0x2c, 0xad, 0xd0, 0x82, 0xda, 0x23, 0x95, 0x2b, 0x83, 0x1b, 0xcc, 0x19, 0x7f, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8466 = { .name = "ecdsa_secp384r1_sha3_384_8466", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8466_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8466_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8466_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8467 for ECDSA, tcId is 255 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8467_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8467_msg[] = { 0x32, 0x34, 0x35, 0x33, 0x38, 0x35, 0x30, 0x30, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8467_sig[] = { 0x8c, 0x69, 0x10, 0xc0, 0x12, 0xfb, 0x1a, 0x5b, 0x45, 0x03, 0x2b, 0x09, 0xf2, 0xcf, 0xdb, 0xc7, 0xc3, 0xb2, 0x2b, 0x0e, 0x18, 0xa0, 0xcc, 0x0e, 0xc4, 0xad, 0xc2, 0x96, 0xcb, 0xfc, 0xa6, 0x68, 0x32, 0x37, 0x94, 0x56, 0xb8, 0x67, 0xad, 0x1a, 0x01, 0x84, 0xab, 0x1a, 0x80, 0xaf, 0x59, 0xee, 0x3d, 0x87, 0xfe, 0xc6, 0xfe, 0xb8, 0x33, 0xd0, 0x1e, 0x4f, 0x77, 0xa3, 0x06, 0x44, 0x1f, 0xd2, 0x7f, 0x32, 0x8d, 0x01, 0xf6, 0xc2, 0x0e, 0xef, 0x9b, 0x18, 0x5a, 0xd4, 0x72, 0x3c, 0x46, 0xf5, 0xd1, 0x5e, 0x7b, 0xe0, 0xdb, 0x1c, 0x49, 0x60, 0x18, 0xb4, 0xfa, 0x19, 0x87, 0xac, 0x6b, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8467 = { .name = "ecdsa_secp384r1_sha3_384_8467", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8467_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8467_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8467_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8468 for ECDSA, tcId is 256 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8468_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8468_msg[] = { 0x32, 0x36, 0x39, 0x34, 0x38, 0x31, 0x37, 0x30, 0x32, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8468_sig[] = { 0x8c, 0xb0, 0xad, 0x26, 0x35, 0x57, 0x31, 0x81, 0x56, 0xff, 0xde, 0x6b, 0x45, 0xcb, 0x6c, 0xa8, 0x63, 0x3c, 0x3b, 0x50, 0xb5, 0x14, 0x54, 0x60, 0x5d, 0xd0, 0x12, 0x42, 0xdd, 0xa4, 0x4c, 0x9c, 0xc5, 0xb5, 0x9b, 0x32, 0x7e, 0x91, 0x96, 0x29, 0xa9, 0xf7, 0x37, 0x20, 0xe5, 0x3a, 0x5e, 0x63, 0x4f, 0x2a, 0x0c, 0xd1, 0x1c, 0x7a, 0xc0, 0x34, 0x25, 0xe2, 0x5d, 0x84, 0xbb, 0x44, 0x14, 0x91, 0x17, 0x90, 0x3c, 0xc4, 0x63, 0x8e, 0x2f, 0x64, 0x45, 0x0e, 0x2a, 0x91, 0x5b, 0x14, 0xc6, 0xd9, 0xc7, 0x4f, 0x70, 0xc4, 0xf8, 0x5d, 0x60, 0x36, 0xbc, 0x60, 0x4a, 0x92, 0xf9, 0xb9, 0x71, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8468 = { .name = "ecdsa_secp384r1_sha3_384_8468", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8468_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8468_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8468_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8469 for ECDSA, tcId is 257 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8469_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8469_msg[] = { 0x34, 0x33, 0x31, 0x32, 0x30, 0x36, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8469_sig[] = { 0x17, 0xd2, 0xc9, 0xd3, 0x22, 0x53, 0x23, 0x4b, 0x36, 0xa0, 0x2e, 0x59, 0xf9, 0x91, 0x63, 0x91, 0x3a, 0x7c, 0x11, 0xa7, 0x23, 0xf7, 0x12, 0x2c, 0x52, 0x1d, 0xba, 0x2c, 0xde, 0xc3, 0x6b, 0xdc, 0xd1, 0x83, 0x7c, 0x8b, 0x60, 0xa9, 0x16, 0xaa, 0x64, 0xed, 0x32, 0xb2, 0xc4, 0x00, 0xd2, 0x3a, 0x82, 0x1f, 0xb5, 0x03, 0xcb, 0x89, 0x38, 0x5b, 0xf9, 0xa6, 0x28, 0x8c, 0xe6, 0x55, 0x9c, 0xb6, 0x96, 0x52, 0xe8, 0xbf, 0x94, 0x0c, 0xcd, 0x0f, 0xa8, 0x8a, 0xae, 0x2e, 0x72, 0xd3, 0x1a, 0xc7, 0xd7, 0xcf, 0x51, 0x43, 0x3e, 0xe4, 0x58, 0x89, 0x09, 0x4f, 0x51, 0xa4, 0xcc, 0x17, 0x27, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8469 = { .name = "ecdsa_secp384r1_sha3_384_8469", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8469_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8469_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8469_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8470 for ECDSA, tcId is 258 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8470_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8470_msg[] = { 0x33, 0x32, 0x30, 0x31, 0x31, 0x39, 0x36, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8470_sig[] = { 0xb2, 0xe6, 0xfb, 0xb2, 0xa7, 0x0a, 0xf4, 0x16, 0x54, 0xfb, 0x5d, 0x63, 0x2f, 0xcb, 0xf9, 0xdc, 0x8a, 0x8a, 0x36, 0x23, 0x94, 0xe4, 0x2d, 0x13, 0xe0, 0x86, 0xe7, 0xda, 0x26, 0x1a, 0xa9, 0x80, 0xb4, 0x9c, 0x4a, 0x61, 0x0a, 0x36, 0x79, 0x73, 0xf7, 0x98, 0xb9, 0xaa, 0x9d, 0xf6, 0xd0, 0xd1, 0x6d, 0x23, 0x7b, 0x31, 0x61, 0xec, 0x60, 0x25, 0x29, 0xee, 0xcb, 0x5c, 0x7c, 0x70, 0x60, 0x20, 0xf8, 0x2b, 0x80, 0x40, 0xcc, 0xf7, 0x08, 0x25, 0x76, 0xe3, 0xca, 0xef, 0x5e, 0x8d, 0x6c, 0xd8, 0x7c, 0x46, 0xa8, 0xf3, 0xea, 0x99, 0x47, 0xb1, 0x8d, 0x1a, 0x35, 0xc8, 0x34, 0x94, 0xd8, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8470 = { .name = "ecdsa_secp384r1_sha3_384_8470", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8470_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8470_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8470_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8471 for ECDSA, tcId is 259 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8471_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8471_msg[] = { 0x32, 0x38, 0x33, 0x30, 0x30, 0x30, 0x38, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8471_sig[] = { 0xa6, 0x92, 0x71, 0x25, 0x45, 0x9e, 0x31, 0xaf, 0xc3, 0x18, 0x10, 0x11, 0x76, 0x77, 0xc6, 0xec, 0x2b, 0xa2, 0x7c, 0x3e, 0xe5, 0xcc, 0x5f, 0xaf, 0xbb, 0xd7, 0x41, 0x53, 0xd3, 0xd2, 0xb2, 0xf7, 0xc7, 0x41, 0x1e, 0x56, 0x4c, 0x09, 0xd5, 0x82, 0xdd, 0x2d, 0x5a, 0x20, 0x1e, 0xc2, 0xb0, 0xfa, 0x6e, 0x14, 0xa3, 0x95, 0x5d, 0x24, 0xc4, 0xac, 0x4f, 0x8c, 0x03, 0x5f, 0x5e, 0xda, 0xf7, 0x4e, 0x45, 0xeb, 0xd9, 0x5a, 0x27, 0x95, 0x4b, 0xb1, 0xc1, 0x1f, 0xdb, 0x00, 0xfb, 0xc7, 0x15, 0x6e, 0x96, 0x31, 0x8d, 0x33, 0x72, 0x5c, 0x06, 0x66, 0x00, 0x6a, 0xe0, 0x57, 0x3f, 0x7d, 0xf7, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8471 = { .name = "ecdsa_secp384r1_sha3_384_8471", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8471_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8471_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8471_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8472 for ECDSA, tcId is 260 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8472_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8472_msg[] = { 0x38, 0x38, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8472_sig[] = { 0xd0, 0xf8, 0xe8, 0xa5, 0x70, 0xa0, 0x46, 0x2e, 0xa8, 0xcc, 0xb9, 0x80, 0x78, 0x9a, 0xcb, 0xf2, 0x43, 0xcb, 0xe9, 0x46, 0x52, 0x2a, 0xe4, 0xe9, 0xe6, 0xfa, 0x7e, 0x5e, 0x8e, 0x1b, 0xc0, 0x06, 0xc8, 0xb8, 0x49, 0x15, 0x35, 0x5f, 0x00, 0xf3, 0x9a, 0x61, 0xdb, 0xe7, 0x7d, 0x2b, 0x4b, 0x9a, 0x0f, 0x1e, 0xd9, 0x79, 0x29, 0xbd, 0x7c, 0xd6, 0x33, 0xf8, 0x35, 0x08, 0x6d, 0x22, 0x41, 0xa7, 0xb7, 0xd8, 0xf8, 0x57, 0xb9, 0x4f, 0x71, 0xe3, 0x0b, 0x3e, 0x9b, 0xd1, 0x98, 0x63, 0xa4, 0x01, 0x83, 0x4d, 0x01, 0xd2, 0x9d, 0x32, 0x39, 0x90, 0x06, 0xe8, 0xf8, 0x4e, 0x08, 0x52, 0xe3, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8472 = { .name = "ecdsa_secp384r1_sha3_384_8472", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8472_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8472_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8472_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8473 for ECDSA, tcId is 261 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8473_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x34, 0x39, 0x36, 0x38, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8473_sig[] = { 0x19, 0xe5, 0xa3, 0x8c, 0x81, 0xae, 0x16, 0x7c, 0x70, 0xef, 0x4a, 0x18, 0x79, 0xb7, 0xdb, 0xa0, 0xdf, 0xaf, 0x5d, 0xc8, 0xa8, 0x41, 0x26, 0x9e, 0x82, 0xb1, 0x06, 0xc6, 0xea, 0x3f, 0x9e, 0x3f, 0x7e, 0x16, 0x2b, 0x8c, 0x56, 0x1d, 0x8f, 0x1b, 0x7b, 0x4a, 0x2c, 0xfb, 0xa4, 0xc8, 0xa9, 0x25, 0x08, 0xc4, 0x1e, 0x65, 0x4d, 0x26, 0x2e, 0xa6, 0xe1, 0xd2, 0xf7, 0x4c, 0xd9, 0x9e, 0xf4, 0x79, 0xcb, 0x36, 0x47, 0x6b, 0x2d, 0xac, 0x5b, 0xf0, 0xf2, 0x50, 0xd8, 0x7f, 0x71, 0x15, 0xbd, 0xcb, 0x59, 0xdd, 0xda, 0x54, 0xab, 0xf3, 0xb3, 0xb7, 0x74, 0x71, 0x34, 0x8f, 0xac, 0xc0, 0xc8, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8473 = { .name = "ecdsa_secp384r1_sha3_384_8473", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8473_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8473_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8473_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8474 for ECDSA, tcId is 262 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8474_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8474_msg[] = { 0x35, 0x34, 0x39, 0x32, 0x34, 0x33, 0x35, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8474_sig[] = { 0xe4, 0x7a, 0x0d, 0xd0, 0x50, 0x77, 0x17, 0xc2, 0x9d, 0x0e, 0x48, 0x20, 0x37, 0xd7, 0xfd, 0x00, 0x1e, 0xff, 0x3b, 0x80, 0x01, 0x36, 0x88, 0x08, 0x5a, 0xe4, 0x30, 0xd4, 0x6e, 0xdb, 0x23, 0xca, 0xb8, 0xdf, 0x87, 0x16, 0xd0, 0x78, 0xc6, 0x50, 0x3e, 0x38, 0xa1, 0xcf, 0x6a, 0x9e, 0x74, 0xf2, 0xed, 0xaf, 0x65, 0xe6, 0x09, 0xdb, 0x09, 0x25, 0xdf, 0xf8, 0x8d, 0x25, 0x27, 0x91, 0xdb, 0x4a, 0x00, 0x8d, 0x9b, 0x46, 0xe5, 0xe6, 0xda, 0x98, 0xe2, 0x3a, 0x76, 0x6a, 0x8a, 0x35, 0xb8, 0xdf, 0x79, 0xec, 0x18, 0x9d, 0x27, 0x24, 0x29, 0xdd, 0x64, 0xca, 0x60, 0x98, 0x34, 0x62, 0xda, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8474 = { .name = "ecdsa_secp384r1_sha3_384_8474", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8474_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8474_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8474_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8475 for ECDSA, tcId is 263 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8475_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8475_msg[] = { 0x33, 0x30, 0x38, 0x32, 0x38, 0x32, 0x35, 0x33, 0x33, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8475_sig[] = { 0x35, 0xd4, 0x7a, 0x72, 0x35, 0x21, 0x55, 0x3e, 0xa0, 0x44, 0x0e, 0x6d, 0xea, 0x66, 0x04, 0x39, 0xc5, 0x1b, 0x80, 0xe8, 0x96, 0x87, 0x7b, 0x03, 0xb0, 0xc0, 0x2f, 0xfa, 0xbc, 0xec, 0xd8, 0x6e, 0x6c, 0xfe, 0xd2, 0xe4, 0xfc, 0xd8, 0x0d, 0x76, 0xc9, 0x7e, 0xf9, 0x45, 0xb6, 0x26, 0xb0, 0x25, 0xdd, 0x61, 0x31, 0x1a, 0x4d, 0x0e, 0xb0, 0x24, 0x28, 0x8f, 0xae, 0x55, 0xab, 0xef, 0x6f, 0x0f, 0xda, 0xf7, 0x1a, 0x55, 0xcd, 0x3c, 0xcb, 0x2f, 0x8b, 0xa8, 0xd4, 0x3e, 0xf3, 0x6d, 0xd5, 0x56, 0x2c, 0x07, 0xd2, 0xb4, 0xef, 0x60, 0xe0, 0x4e, 0xc4, 0xc6, 0x96, 0xfc, 0xd0, 0x52, 0x18, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8475 = { .name = "ecdsa_secp384r1_sha3_384_8475", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8475_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8475_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8475_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8476 for ECDSA, tcId is 264 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8476_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8476_msg[] = { 0x38, 0x30, 0x33, 0x37, 0x35, 0x37, 0x32, 0x35, 0x35, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8476_sig[] = { 0x53, 0x19, 0xf4, 0xa0, 0x1c, 0x4e, 0x88, 0x26, 0x11, 0x46, 0xde, 0x21, 0x3d, 0x65, 0xe5, 0x5c, 0x25, 0x32, 0xd9, 0xa5, 0x35, 0xbc, 0x8c, 0x47, 0xcd, 0x94, 0x0f, 0xd2, 0xb7, 0xb5, 0xbb, 0x36, 0x3e, 0x19, 0x32, 0xbd, 0xac, 0xc9, 0xa1, 0x96, 0xcd, 0xe3, 0x93, 0x68, 0xd8, 0x6a, 0x14, 0xf5, 0x8a, 0xfe, 0xa3, 0x30, 0xd8, 0x33, 0xa1, 0xf3, 0x31, 0x0a, 0xaf, 0xef, 0x6b, 0xc2, 0x7b, 0x68, 0x48, 0x38, 0xef, 0x3e, 0x57, 0xac, 0x7e, 0x36, 0xc0, 0x2e, 0x0d, 0xbf, 0x9e, 0x33, 0xb9, 0x34, 0xdc, 0x7a, 0xfa, 0x74, 0x18, 0xaa, 0xbc, 0x3e, 0x6b, 0x08, 0x41, 0xef, 0xf0, 0x9b, 0xc4, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8476 = { .name = "ecdsa_secp384r1_sha3_384_8476", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8476_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8476_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8476_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8477 for ECDSA, tcId is 265 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8477_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8477_msg[] = { 0x37, 0x37, 0x34, 0x34, 0x37, 0x39, 0x38, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8477_sig[] = { 0x5c, 0x51, 0x10, 0x69, 0x27, 0xcb, 0x27, 0x5b, 0x54, 0xa7, 0xc9, 0x0f, 0x6b, 0xa6, 0x99, 0x02, 0xf1, 0xb1, 0xa1, 0x9e, 0x2a, 0xc4, 0xb7, 0x6b, 0x8d, 0x1e, 0x41, 0xb8, 0x6f, 0x14, 0xff, 0x32, 0xbb, 0xc6, 0x6f, 0x07, 0xd4, 0xbe, 0x61, 0x0c, 0xcd, 0xe8, 0x4a, 0xf4, 0xe1, 0x40, 0x11, 0x81, 0x55, 0x1d, 0x99, 0x01, 0x40, 0x8a, 0x4d, 0x9a, 0x1a, 0x85, 0xfa, 0x17, 0xde, 0x0c, 0x7b, 0xc4, 0x9b, 0x15, 0xbc, 0xcf, 0xae, 0x09, 0x52, 0x47, 0xfc, 0x25, 0x6a, 0x04, 0x85, 0x82, 0x61, 0x0b, 0x6b, 0xa8, 0x7b, 0xd8, 0x9d, 0xc9, 0x88, 0x59, 0xdb, 0xa2, 0xdf, 0x76, 0xd7, 0x7a, 0xff, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8477 = { .name = "ecdsa_secp384r1_sha3_384_8477", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8477_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8477_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8477_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8478 for ECDSA, tcId is 266 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8478_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8478_msg[] = { 0x31, 0x33, 0x33, 0x37, 0x32, 0x30, 0x35, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8478_sig[] = { 0xe9, 0x31, 0xac, 0x04, 0x9c, 0x0b, 0x7b, 0xd9, 0x06, 0x0a, 0x58, 0xb0, 0xf7, 0x8d, 0x8d, 0x0b, 0x60, 0xf5, 0x7c, 0xaf, 0x64, 0x7f, 0xe6, 0x47, 0x68, 0x02, 0xc9, 0xba, 0xae, 0x7e, 0x06, 0x06, 0x2f, 0xe3, 0xd1, 0xa1, 0xf0, 0xc6, 0x34, 0x5d, 0xc7, 0xc5, 0x30, 0xdb, 0x32, 0xca, 0xd8, 0x43, 0xb8, 0x38, 0x67, 0xf6, 0x56, 0xb9, 0xfe, 0xa0, 0x99, 0xca, 0x06, 0x78, 0xbd, 0x62, 0xf2, 0x01, 0x32, 0x38, 0xbb, 0xd6, 0x96, 0x9a, 0x23, 0x84, 0xe0, 0xcb, 0x24, 0x88, 0xda, 0xd6, 0x15, 0xa4, 0xd9, 0x1d, 0xbd, 0xf7, 0x90, 0x84, 0x26, 0xc9, 0xea, 0x9e, 0xcf, 0x17, 0xb8, 0x72, 0xa2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8478 = { .name = "ecdsa_secp384r1_sha3_384_8478", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8478_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8478_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8478_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8479 for ECDSA, tcId is 267 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8479_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8479_msg[] = { 0x35, 0x31, 0x38, 0x32, 0x37, 0x30, 0x36, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8479_sig[] = { 0xd4, 0xcc, 0xc6, 0xe8, 0x9e, 0x85, 0xff, 0xcc, 0xa4, 0xb9, 0xe3, 0x2f, 0xd4, 0x5c, 0x5b, 0xe1, 0x58, 0x5d, 0x20, 0xc3, 0x5e, 0xc8, 0x32, 0x53, 0xf3, 0x08, 0x0b, 0x07, 0x05, 0x74, 0x6f, 0x0f, 0x5e, 0x7e, 0x92, 0x04, 0x3b, 0x5a, 0xe8, 0xfd, 0x95, 0x96, 0x3e, 0x45, 0xb4, 0x19, 0x92, 0x13, 0x48, 0x44, 0x8f, 0x45, 0xad, 0x0f, 0xc8, 0xd2, 0x0f, 0xd1, 0xdb, 0xd0, 0x88, 0xbd, 0xf6, 0xd5, 0x15, 0x77, 0xf7, 0x9a, 0x1e, 0x5e, 0x55, 0x43, 0x2e, 0xa7, 0x9d, 0x84, 0xee, 0xfe, 0x0b, 0x9b, 0x55, 0xba, 0x14, 0x5d, 0x63, 0x7b, 0xe5, 0xa6, 0x86, 0x47, 0x7f, 0xe0, 0x0e, 0x1f, 0xb4, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8479 = { .name = "ecdsa_secp384r1_sha3_384_8479", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8479_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8479_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8479_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8480 for ECDSA, tcId is 268 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8480_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8480_msg[] = { 0x34, 0x30, 0x33, 0x37, 0x36, 0x39, 0x39, 0x30, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8480_sig[] = { 0x6d, 0x3e, 0xa9, 0x19, 0x36, 0x5f, 0x9f, 0x39, 0xfe, 0x1f, 0x9b, 0x8c, 0x17, 0x41, 0x57, 0x66, 0xf4, 0xc2, 0xb7, 0x7c, 0x83, 0x93, 0xdc, 0x8c, 0xef, 0x32, 0x1a, 0xf5, 0xb4, 0xaa, 0x95, 0x56, 0x46, 0x64, 0x3a, 0xc3, 0x2b, 0x22, 0x20, 0xb7, 0x59, 0x0d, 0xea, 0xde, 0xc1, 0x5b, 0x88, 0xaf, 0x4d, 0x64, 0xa4, 0xfb, 0x9e, 0x26, 0xaa, 0xee, 0xc0, 0xd9, 0x22, 0x70, 0xbe, 0xcb, 0xb5, 0xe2, 0xf0, 0x4d, 0x81, 0x2b, 0x2b, 0xb8, 0xb8, 0x6c, 0xb1, 0x74, 0x44, 0x37, 0xe6, 0x2e, 0x58, 0xdc, 0x72, 0xf9, 0x8e, 0xca, 0xfe, 0xad, 0xae, 0x69, 0xae, 0xf3, 0x32, 0x89, 0x53, 0x14, 0x34, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8480 = { .name = "ecdsa_secp384r1_sha3_384_8480", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8480_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8480_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8480_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8481 for ECDSA, tcId is 269 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8481_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8481_msg[] = { 0x31, 0x31, 0x34, 0x32, 0x30, 0x30, 0x30, 0x39, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8481_sig[] = { 0x77, 0x74, 0x08, 0x0a, 0x80, 0xe3, 0x20, 0x87, 0xc8, 0xe9, 0x23, 0xc6, 0x55, 0x22, 0xc7, 0x66, 0x48, 0x20, 0x5d, 0x98, 0x04, 0x80, 0x5b, 0xdf, 0x05, 0x97, 0x7c, 0x45, 0x59, 0xee, 0xac, 0xc5, 0x18, 0x56, 0x09, 0x20, 0xe5, 0x5f, 0x62, 0x67, 0x48, 0xae, 0x12, 0x03, 0x47, 0x45, 0xf7, 0xbc, 0x1b, 0xfb, 0xb5, 0xbc, 0xaf, 0xf2, 0xb7, 0x02, 0x98, 0x45, 0x6f, 0xd8, 0x14, 0x5b, 0xbc, 0xc6, 0xd1, 0x50, 0xd9, 0xf2, 0xc3, 0xd9, 0x1d, 0x6e, 0xd0, 0xf3, 0xd7, 0xea, 0xcc, 0x16, 0x45, 0x6f, 0x69, 0x81, 0x38, 0xab, 0x34, 0xa5, 0x46, 0x19, 0x59, 0x41, 0xa6, 0x8d, 0x7e, 0x92, 0xf3, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8481 = { .name = "ecdsa_secp384r1_sha3_384_8481", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8481_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8481_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8481_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8482 for ECDSA, tcId is 270 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8482_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8482_msg[] = { 0x33, 0x32, 0x30, 0x37, 0x35, 0x35, 0x34, 0x30, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8482_sig[] = { 0xb8, 0x23, 0x24, 0x17, 0xc3, 0x71, 0xec, 0xc5, 0x6e, 0xf6, 0x34, 0x2a, 0xbe, 0xcf, 0xa4, 0x2a, 0xfe, 0x47, 0x9a, 0xd1, 0xcf, 0xcb, 0x18, 0xf8, 0x94, 0x5a, 0xb0, 0xe2, 0x07, 0x66, 0x21, 0xc1, 0x85, 0xc2, 0x82, 0x1a, 0x80, 0x28, 0xc3, 0x6f, 0x1f, 0x2a, 0x8d, 0x3b, 0xe7, 0xfc, 0x34, 0x42, 0x17, 0xa0, 0xf7, 0xc1, 0x54, 0x03, 0xa3, 0xfb, 0xa3, 0xd8, 0xf0, 0x95, 0xcd, 0x7e, 0xea, 0x59, 0x7d, 0xf7, 0x61, 0xdc, 0x46, 0xe5, 0xc8, 0x12, 0x2a, 0x3f, 0xff, 0xab, 0xb9, 0xfe, 0x37, 0xc5, 0x22, 0x32, 0xe7, 0xf4, 0x9a, 0xf7, 0xe7, 0xcb, 0xaa, 0xd8, 0xed, 0x62, 0xde, 0xe8, 0xa3, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8482 = { .name = "ecdsa_secp384r1_sha3_384_8482", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8482_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8482_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8482_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8483 for ECDSA, tcId is 271 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8483_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8483_msg[] = { 0x32, 0x38, 0x35, 0x36, 0x32, 0x33, 0x35, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8483_sig[] = { 0x9a, 0x5e, 0x7a, 0xc2, 0xa1, 0x95, 0xf5, 0x85, 0x9a, 0x07, 0x53, 0x08, 0x7d, 0xa0, 0xa2, 0xac, 0x20, 0xa8, 0xba, 0xcc, 0x55, 0x1d, 0x4c, 0x19, 0xb1, 0x0f, 0xff, 0xe6, 0xb7, 0xac, 0xdd, 0x3c, 0xa6, 0x54, 0x39, 0x57, 0xc9, 0xf7, 0xbe, 0x8b, 0xed, 0xd3, 0x3e, 0x89, 0xdf, 0x7b, 0xa5, 0x94, 0x10, 0x6c, 0xb9, 0x82, 0x1f, 0x8a, 0xad, 0xaf, 0x7a, 0x7c, 0x41, 0x1d, 0xf6, 0xca, 0x3b, 0xde, 0x9b, 0x6d, 0x4a, 0x26, 0x7e, 0x4a, 0x43, 0xff, 0xa9, 0xd5, 0xd2, 0x9c, 0xc9, 0x73, 0xf3, 0xca, 0x4d, 0x77, 0x63, 0x51, 0xb8, 0x25, 0x86, 0xbe, 0x7d, 0x6e, 0x2c, 0x25, 0x17, 0x26, 0xb3, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8483 = { .name = "ecdsa_secp384r1_sha3_384_8483", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8483_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8483_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8483_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8484 for ECDSA, tcId is 272 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8484_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8484_msg[] = { 0x32, 0x36, 0x37, 0x36, 0x34, 0x35, 0x35, 0x32, 0x35, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8484_sig[] = { 0x1c, 0xdc, 0x96, 0xcc, 0x78, 0x92, 0x32, 0x20, 0x75, 0x39, 0x9a, 0xac, 0x7e, 0x0a, 0x86, 0xd4, 0xff, 0xdb, 0x6e, 0x45, 0x15, 0x3c, 0x0a, 0xfa, 0x98, 0xbf, 0xd9, 0x12, 0x94, 0x1c, 0x22, 0xd0, 0x5f, 0x36, 0x0f, 0xba, 0x6f, 0x87, 0x34, 0x54, 0x2e, 0xb5, 0x53, 0x75, 0xb2, 0x6d, 0x38, 0xaa, 0x8e, 0xc4, 0x52, 0xf8, 0xac, 0xbb, 0xef, 0x3e, 0xbb, 0xff, 0x11, 0xe6, 0xbf, 0x34, 0x90, 0x32, 0xb6, 0x10, 0xe8, 0x79, 0x46, 0xa6, 0x22, 0x1c, 0xcc, 0xb5, 0x05, 0x5c, 0x18, 0xd1, 0xf1, 0x18, 0x8b, 0x62, 0x54, 0xa6, 0x01, 0x13, 0xed, 0x8a, 0xdc, 0x6d, 0x0b, 0x09, 0xfb, 0x2f, 0x3f, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8484 = { .name = "ecdsa_secp384r1_sha3_384_8484", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8484_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8484_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8484_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8485 for ECDSA, tcId is 273 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8485_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8485_msg[] = { 0x32, 0x31, 0x38, 0x32, 0x32, 0x34, 0x33, 0x30, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8485_sig[] = { 0x93, 0x7d, 0x4d, 0xf9, 0x0d, 0x09, 0x29, 0x9b, 0xd3, 0x2b, 0xf3, 0x54, 0xe1, 0x12, 0x1a, 0x31, 0x1a, 0x77, 0xba, 0x02, 0x74, 0xe7, 0xb8, 0x47, 0x80, 0x4a, 0x40, 0xd5, 0xb7, 0x2e, 0xcb, 0x8e, 0x9e, 0x44, 0x1a, 0xfc, 0x52, 0x89, 0xe0, 0x33, 0x7c, 0xa1, 0x19, 0x5a, 0x49, 0x51, 0xc1, 0xe9, 0x7e, 0x44, 0x23, 0x71, 0xb9, 0x99, 0x19, 0x05, 0xf4, 0x17, 0xe4, 0xe6, 0x7e, 0xad, 0x31, 0x62, 0x1b, 0xc0, 0x68, 0x96, 0x40, 0x97, 0xa4, 0x6d, 0x5b, 0xda, 0x50, 0x7a, 0x80, 0x4f, 0x5b, 0x3b, 0xb1, 0x42, 0xff, 0x66, 0xd0, 0x70, 0x12, 0x54, 0x9f, 0xc4, 0x2c, 0xec, 0x38, 0x75, 0x4d, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8485 = { .name = "ecdsa_secp384r1_sha3_384_8485", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8485_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8485_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8485_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8486 for ECDSA, tcId is 274 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8486_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8486_msg[] = { 0x35, 0x32, 0x32, 0x39, 0x34, 0x34, 0x37, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8486_sig[] = { 0x65, 0x21, 0x0e, 0xd1, 0x79, 0xaf, 0x3b, 0x99, 0xc0, 0x9b, 0x9e, 0x95, 0xdc, 0x81, 0xf7, 0x70, 0x07, 0xa3, 0x20, 0x02, 0xee, 0x7d, 0x53, 0xee, 0xd5, 0x67, 0x08, 0x6a, 0x68, 0xa6, 0x2f, 0x1c, 0x08, 0x54, 0x3c, 0x85, 0xf7, 0xd1, 0xe1, 0xf0, 0x81, 0xba, 0xe4, 0x77, 0xff, 0x36, 0x13, 0xfa, 0x02, 0x5c, 0xe6, 0xef, 0xa2, 0xfe, 0x24, 0x73, 0x2f, 0xe1, 0x1f, 0x5b, 0x1f, 0x12, 0x32, 0xd4, 0x8f, 0xa5, 0xdb, 0xcf, 0xbd, 0x62, 0xf9, 0x67, 0x76, 0x30, 0x2b, 0x1a, 0xc5, 0x2f, 0x0d, 0x0d, 0x40, 0x54, 0x9f, 0x2b, 0x2f, 0x67, 0x29, 0x95, 0x69, 0xcd, 0x14, 0xfb, 0x7e, 0xad, 0x4c, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8486 = { .name = "ecdsa_secp384r1_sha3_384_8486", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8486_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8486_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8486_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8487 for ECDSA, tcId is 275 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8487_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8487_msg[] = { 0x34, 0x35, 0x35, 0x38, 0x34, 0x31, 0x31, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8487_sig[] = { 0xe6, 0xa4, 0x51, 0x87, 0x71, 0x46, 0x79, 0x67, 0xe2, 0x64, 0xa9, 0xb7, 0x36, 0xaa, 0x1f, 0x8b, 0xc6, 0xf4, 0x21, 0xde, 0x60, 0x7f, 0xec, 0x7e, 0x93, 0xfc, 0x62, 0xd9, 0x10, 0x82, 0xc9, 0x79, 0x93, 0x0e, 0x6a, 0x3f, 0xfd, 0xcc, 0x54, 0xd5, 0xf0, 0xf4, 0xb4, 0xa2, 0xf0, 0x66, 0x5d, 0x49, 0x4c, 0x6c, 0x62, 0x5b, 0x60, 0xab, 0x32, 0x30, 0xe6, 0xd1, 0x90, 0xf3, 0x7a, 0x6f, 0x14, 0xe5, 0x74, 0xf8, 0xdc, 0x75, 0x95, 0x46, 0x7f, 0xe8, 0x9c, 0xe6, 0x2d, 0x6d, 0x1f, 0x2f, 0xd1, 0x98, 0x36, 0x87, 0x69, 0xfc, 0x84, 0xb5, 0x56, 0xa3, 0x84, 0x7b, 0xe2, 0x68, 0x41, 0x35, 0x14, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8487 = { .name = "ecdsa_secp384r1_sha3_384_8487", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8487_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8487_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8487_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8488 for ECDSA, tcId is 276 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8488_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8488_msg[] = { 0x31, 0x32, 0x39, 0x31, 0x34, 0x35, 0x34, 0x30, 0x36, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8488_sig[] = { 0x63, 0x88, 0xaf, 0xc6, 0xca, 0xe9, 0x42, 0x1b, 0xa6, 0xc5, 0x2a, 0x64, 0x0a, 0x0e, 0xbc, 0xb9, 0xc5, 0x47, 0x50, 0x5f, 0x50, 0x03, 0x07, 0x19, 0x4c, 0x8c, 0x1e, 0xb4, 0x1c, 0xac, 0x95, 0x96, 0x86, 0xff, 0xa7, 0xb3, 0xa2, 0xad, 0xda, 0x65, 0x13, 0x60, 0x30, 0xcb, 0xa1, 0x7d, 0x16, 0x95, 0xcb, 0x1e, 0x14, 0x86, 0x45, 0x58, 0x0d, 0xea, 0x5a, 0x87, 0xc6, 0x0d, 0xb7, 0xc8, 0x18, 0x94, 0x2d, 0x55, 0xf1, 0x69, 0xfc, 0x59, 0xed, 0xa9, 0xa2, 0x17, 0x7a, 0x00, 0x1e, 0xcc, 0x1b, 0xcb, 0xf2, 0xd5, 0x19, 0xd6, 0x7d, 0x79, 0xfb, 0xa4, 0x4d, 0xaa, 0x29, 0x45, 0xbd, 0x38, 0x0c, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8488 = { .name = "ecdsa_secp384r1_sha3_384_8488", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8488_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8488_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8488_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8489 for ECDSA, tcId is 277 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8489_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8489_msg[] = { 0x32, 0x32, 0x37, 0x30, 0x32, 0x31, 0x32, 0x34, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8489_sig[] = { 0x2d, 0x7f, 0x29, 0xf7, 0x67, 0xba, 0x2f, 0x21, 0x61, 0x93, 0x47, 0xbf, 0x29, 0x49, 0x4a, 0x31, 0x8e, 0xee, 0x94, 0x9e, 0x91, 0x18, 0x1e, 0xd7, 0xd2, 0xcf, 0x61, 0x16, 0x2b, 0x92, 0xf0, 0x74, 0x7c, 0x30, 0x88, 0x85, 0x89, 0x1b, 0x17, 0x34, 0xe9, 0xb6, 0xd5, 0xd3, 0x70, 0x54, 0x75, 0xa9, 0x1c, 0x34, 0xc2, 0xce, 0x61, 0xe3, 0xdc, 0xa2, 0xbb, 0x32, 0x02, 0xb6, 0xc4, 0x32, 0x01, 0x55, 0xf7, 0x64, 0xfc, 0x58, 0xd3, 0x18, 0xba, 0x44, 0xdf, 0x9a, 0x7c, 0x06, 0xa0, 0xa4, 0x53, 0xee, 0x43, 0xb6, 0x33, 0x35, 0x3d, 0xbc, 0xfe, 0x12, 0x9a, 0x54, 0xdd, 0xc8, 0xb6, 0xa2, 0x7e, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8489 = { .name = "ecdsa_secp384r1_sha3_384_8489", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8489_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8489_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8489_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8490 for ECDSA, tcId is 278 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8490_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8490_msg[] = { 0x35, 0x31, 0x37, 0x32, 0x35, 0x37, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8490_sig[] = { 0x68, 0xa8, 0x75, 0x8f, 0xb6, 0x6c, 0x0e, 0xe5, 0x03, 0x09, 0x49, 0x08, 0x52, 0xf2, 0x14, 0xf6, 0xbd, 0x09, 0xdd, 0x88, 0x8f, 0x35, 0x39, 0x01, 0x63, 0xde, 0xfa, 0x70, 0x64, 0x72, 0x02, 0x98, 0x3e, 0xba, 0xbf, 0xf3, 0x79, 0x12, 0x87, 0xd0, 0x16, 0x16, 0x4c, 0x94, 0x54, 0x94, 0xed, 0xf9, 0x09, 0x9a, 0x2c, 0x10, 0x73, 0x81, 0x59, 0x16, 0xce, 0xbd, 0x4a, 0x41, 0x44, 0x8e, 0x1b, 0x8d, 0xc9, 0xbb, 0x15, 0x04, 0x65, 0xad, 0xf9, 0x9c, 0x8a, 0x96, 0x5b, 0x5f, 0xb3, 0x27, 0xbb, 0x87, 0x9e, 0x1b, 0x34, 0xf8, 0xd7, 0xc5, 0x09, 0xaa, 0x1b, 0x01, 0x8f, 0x98, 0xc9, 0xe1, 0x3e, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8490 = { .name = "ecdsa_secp384r1_sha3_384_8490", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8490_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8490_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8490_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8491 for ECDSA, tcId is 279 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8491_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8491_msg[] = { 0x31, 0x33, 0x38, 0x35, 0x39, 0x35, 0x30, 0x37, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8491_sig[] = { 0x7f, 0xf1, 0x34, 0xc0, 0x55, 0xbd, 0xa5, 0xbb, 0xa9, 0x1f, 0xa5, 0x3d, 0xa5, 0xff, 0x90, 0xc5, 0x01, 0xa6, 0x26, 0x4a, 0xbd, 0x8d, 0xb5, 0xce, 0xd0, 0x3e, 0x9e, 0xb8, 0x8e, 0xe6, 0x33, 0x25, 0xf2, 0x67, 0xa8, 0xfe, 0x48, 0x3b, 0x0f, 0x7f, 0x12, 0x94, 0x34, 0xd2, 0xe2, 0x11, 0x47, 0x05, 0x11, 0x64, 0x92, 0x94, 0xf0, 0x67, 0xd4, 0x15, 0x68, 0x1c, 0xa6, 0xcf, 0x62, 0x45, 0xb0, 0xbe, 0xad, 0xcb, 0x40, 0x95, 0xb8, 0xe9, 0xc9, 0xd1, 0x8b, 0xf1, 0x1e, 0xba, 0xe4, 0x1e, 0xca, 0xfd, 0xe7, 0x52, 0x97, 0x96, 0x28, 0x6e, 0xc2, 0xef, 0xa9, 0x07, 0x3d, 0xe2, 0xf9, 0x02, 0x5e, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8491 = { .name = "ecdsa_secp384r1_sha3_384_8491", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8491_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8491_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8491_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8492 for ECDSA, tcId is 280 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8492_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8492_msg[] = { 0x36, 0x34, 0x33, 0x38, 0x37, 0x38, 0x30, 0x33, 0x37, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_384_8492_sig[] = { 0x9d, 0xfc, 0x83, 0x6f, 0x6a, 0x99, 0x3e, 0x1a, 0xeb, 0xa9, 0xfe, 0x4b, 0x4e, 0x09, 0x90, 0x1b, 0x83, 0xa5, 0x43, 0x9a, 0x0e, 0xde, 0x15, 0x0a, 0xb5, 0x83, 0xc2, 0x17, 0xfc, 0x22, 0x15, 0x40, 0x50, 0xeb, 0x9c, 0x4a, 0x2f, 0x1f, 0x0f, 0x75, 0xc0, 0x61, 0x39, 0x54, 0x9d, 0x30, 0x13, 0xee, 0xed, 0x83, 0xee, 0x55, 0x47, 0x77, 0xa5, 0x08, 0x6a, 0xc9, 0x0b, 0x96, 0x54, 0xf7, 0x24, 0x50, 0x7a, 0x54, 0xe5, 0x65, 0x1b, 0x4d, 0x38, 0x15, 0x3a, 0xc7, 0x57, 0x6c, 0xf8, 0xdc, 0x94, 0x87, 0xbe, 0x7d, 0x3e, 0xfc, 0xa5, 0x44, 0xff, 0x4b, 0x48, 0x04, 0x98, 0x1e, 0xfb, 0xda, 0x10, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8492 = { .name = "ecdsa_secp384r1_sha3_384_8492", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8492_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8492_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8492_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8493 for ECDSA, tcId is 281 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8493_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8493_msg[] = { 0x34, 0x38, 0x36, 0x37, 0x31, 0x31, 0x33, 0x30, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8493_sig[] = { 0xfd, 0x61, 0x49, 0x24, 0xd6, 0x32, 0x5d, 0xaf, 0x27, 0x0e, 0xfb, 0xff, 0x4d, 0xb1, 0x1d, 0x64, 0x5e, 0xc9, 0xb1, 0xf9, 0x03, 0xfd, 0x36, 0xe1, 0x54, 0x3b, 0xbd, 0x53, 0x6e, 0xe0, 0x10, 0xd0, 0x7d, 0xd1, 0x54, 0xfd, 0xc9, 0x45, 0xa5, 0x7f, 0x52, 0xf2, 0x39, 0x43, 0x92, 0x79, 0xf4, 0x2f, 0x07, 0x9e, 0xdf, 0x2f, 0x7a, 0xb3, 0x61, 0xf7, 0x54, 0x2b, 0xfd, 0x91, 0x75, 0xdd, 0x41, 0xec, 0x13, 0x7b, 0xc0, 0x0d, 0x99, 0x79, 0x43, 0x72, 0x0e, 0x16, 0x4e, 0x71, 0x87, 0x58, 0x5a, 0x48, 0x7a, 0x18, 0x93, 0xcd, 0xe5, 0x36, 0xb1, 0xdc, 0x52, 0xcd, 0xc0, 0xba, 0xa1, 0xfc, 0x21, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8493 = { .name = "ecdsa_secp384r1_sha3_384_8493", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8493_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8493_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8493_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8494 for ECDSA, tcId is 282 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8494_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8494_msg[] = { 0x31, 0x33, 0x34, 0x32, 0x39, 0x36, 0x31, 0x39, 0x30, 0x35, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8494_sig[] = { 0xeb, 0x55, 0x10, 0x1d, 0x2d, 0x48, 0x9c, 0x01, 0x51, 0xd9, 0x91, 0xb0, 0xe4, 0x86, 0x01, 0x62, 0x22, 0x99, 0x7b, 0x91, 0x73, 0x63, 0xf8, 0xc4, 0x83, 0x86, 0x68, 0x30, 0x91, 0x29, 0x78, 0x19, 0x66, 0x2c, 0xcc, 0x34, 0x38, 0x1d, 0x5e, 0x5e, 0xc1, 0xc0, 0xc4, 0x3d, 0x13, 0x72, 0x32, 0xe0, 0xd8, 0xbd, 0x99, 0x2c, 0x2e, 0x0a, 0xb4, 0xfe, 0x46, 0xa4, 0xb4, 0x3d, 0xc3, 0xb5, 0x10, 0x3c, 0x12, 0x3c, 0xa3, 0x8e, 0x88, 0xe3, 0xc5, 0x55, 0x38, 0x5a, 0x6f, 0xc8, 0xec, 0xe7, 0xd9, 0xc9, 0x57, 0x77, 0x66, 0x67, 0xf3, 0x89, 0xa9, 0x50, 0xbc, 0xa4, 0xb2, 0xad, 0x65, 0x03, 0xc4, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8494 = { .name = "ecdsa_secp384r1_sha3_384_8494", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8494_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8494_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8494_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8495 for ECDSA, tcId is 283 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8495_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8495_msg[] = { 0x35, 0x30, 0x36, 0x34, 0x34, 0x39, 0x32, 0x36, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8495_sig[] = { 0xf2, 0x9a, 0xea, 0x47, 0x6f, 0x19, 0xea, 0xcc, 0x44, 0x74, 0x9f, 0x60, 0x57, 0xd3, 0x9c, 0x6d, 0xa9, 0x03, 0xba, 0x5c, 0x5b, 0x56, 0x67, 0x69, 0x41, 0x45, 0xa6, 0xfe, 0x05, 0x3e, 0xe0, 0x8a, 0xbe, 0xd1, 0xd6, 0x86, 0x9d, 0x38, 0x30, 0x03, 0x6a, 0x29, 0xb0, 0x63, 0xb2, 0x95, 0xe6, 0x7f, 0x2d, 0xec, 0xfc, 0x3e, 0x7d, 0x8c, 0xf0, 0x39, 0x1f, 0x8e, 0x21, 0x71, 0x4e, 0xee, 0xf0, 0x4f, 0xa4, 0xf6, 0x60, 0xa4, 0x04, 0x29, 0x4b, 0xca, 0xb6, 0xcd, 0xf2, 0x3e, 0x4f, 0xa9, 0xe4, 0x49, 0x97, 0x69, 0x47, 0x81, 0xc4, 0x9f, 0x45, 0x39, 0xa8, 0xd5, 0xb0, 0xdf, 0xa5, 0x56, 0x03, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8495 = { .name = "ecdsa_secp384r1_sha3_384_8495", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8495_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8495_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8495_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8496 for ECDSA, tcId is 284 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8496_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8496_msg[] = { 0x32, 0x32, 0x37, 0x33, 0x39, 0x39, 0x31, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8496_sig[] = { 0x4b, 0x55, 0xc6, 0xc5, 0xf0, 0x26, 0x4d, 0xdd, 0x31, 0xb8, 0x8a, 0x92, 0x07, 0x2d, 0x3a, 0x8f, 0x33, 0xb2, 0x83, 0x06, 0x71, 0x6d, 0x54, 0x30, 0xc0, 0xff, 0x8f, 0xbc, 0x37, 0xd9, 0xdd, 0xf1, 0xe4, 0xa6, 0x0e, 0x4e, 0x49, 0x6b, 0x35, 0x5f, 0x77, 0xed, 0x00, 0x5b, 0x51, 0xe3, 0x52, 0xbe, 0x54, 0xd6, 0xda, 0x5a, 0x63, 0x85, 0xfa, 0x10, 0xe9, 0x7c, 0x21, 0xb5, 0xbd, 0xb7, 0x32, 0xa9, 0xa9, 0xc0, 0x68, 0x58, 0x83, 0xda, 0x74, 0xf1, 0xf8, 0xde, 0xa0, 0xae, 0x49, 0x7b, 0x76, 0x09, 0xb3, 0xaa, 0x4e, 0xe9, 0x2f, 0x44, 0x81, 0x44, 0xea, 0x2c, 0x55, 0x29, 0xec, 0x2f, 0xc0, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8496 = { .name = "ecdsa_secp384r1_sha3_384_8496", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8496_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8496_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha3_384_8496_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8497 for ECDSA, tcId is 285 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8497_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8497_msg[] = { 0x32, 0x33, 0x39, 0x32, 0x35, 0x37, 0x36, 0x39, 0x34, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8497_sig[] = { 0x60, 0x24, 0xed, 0x7e, 0xe8, 0xef, 0x3e, 0xdc, 0x59, 0x3a, 0x9d, 0x07, 0x85, 0x6b, 0x9a, 0xa7, 0x89, 0x72, 0xff, 0x33, 0xb8, 0x26, 0x08, 0xc9, 0x3e, 0x70, 0x68, 0xbc, 0xac, 0x05, 0xe0, 0xc5, 0x04, 0x88, 0x89, 0xc8, 0xd5, 0x20, 0x35, 0x10, 0x47, 0xfa, 0x80, 0xf0, 0x50, 0xab, 0xf8, 0x3a, 0x0d, 0x22, 0x1d, 0xba, 0x3e, 0xf2, 0xd3, 0xc1, 0x49, 0x23, 0xa6, 0x51, 0xbd, 0x2b, 0x80, 0x36, 0x03, 0xfb, 0xc9, 0x46, 0x34, 0x03, 0x3d, 0x52, 0xa6, 0x6d, 0x80, 0xea, 0x61, 0x20, 0x97, 0x6c, 0x8f, 0xad, 0xc7, 0x27, 0x4d, 0x05, 0xcc, 0xd4, 0x7e, 0x1d, 0x06, 0xa6, 0x33, 0x10, 0xb6, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8497 = { .name = "ecdsa_secp384r1_sha3_384_8497", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8497_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8497_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8497_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8498 for ECDSA, tcId is 286 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8498_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8498_msg[] = { 0x32, 0x34, 0x34, 0x35, 0x32, 0x30, 0x32, 0x37, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8498_sig[] = { 0xfa, 0xb3, 0xf2, 0xcf, 0x33, 0x8b, 0xd7, 0xbf, 0x46, 0xda, 0xda, 0x59, 0x7a, 0x4f, 0x66, 0xcb, 0xeb, 0x33, 0x63, 0x93, 0xe4, 0xa2, 0x89, 0xe2, 0x1f, 0x8a, 0x02, 0xa6, 0x42, 0x8b, 0xcd, 0x5f, 0xe6, 0x6e, 0x87, 0xbd, 0xd3, 0xb5, 0x07, 0x29, 0x97, 0xf9, 0x4b, 0x76, 0xf0, 0x4d, 0x9a, 0xa6, 0xad, 0x0c, 0x0f, 0x1d, 0x9c, 0x4f, 0x8a, 0x4b, 0x51, 0x00, 0xe1, 0x83, 0xde, 0xe6, 0xd5, 0xd6, 0x82, 0x52, 0x96, 0x78, 0x4c, 0xb8, 0x20, 0x5d, 0x44, 0x82, 0x04, 0x23, 0x7f, 0x5d, 0x34, 0x35, 0xf4, 0xc8, 0xf0, 0xa4, 0xfe, 0xf8, 0x18, 0x90, 0xc5, 0xa5, 0xa0, 0x28, 0x40, 0x53, 0x30, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8498 = { .name = "ecdsa_secp384r1_sha3_384_8498", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8498_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8498_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8498_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8499 for ECDSA, tcId is 287 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8499_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8499_msg[] = { 0x37, 0x35, 0x39, 0x34, 0x39, 0x36, 0x39, 0x36, 0x35, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8499_sig[] = { 0x15, 0xcd, 0x43, 0x39, 0xb5, 0x68, 0x21, 0x2b, 0x20, 0x85, 0x6d, 0x83, 0x97, 0xe5, 0xc5, 0xae, 0xbf, 0x3b, 0x4e, 0x4e, 0xaf, 0xd8, 0xc9, 0x0a, 0xdc, 0x2d, 0xfe, 0x93, 0xf9, 0x28, 0xe8, 0xa8, 0xbf, 0x17, 0xec, 0x30, 0x70, 0x64, 0xba, 0x86, 0x64, 0x91, 0xd4, 0xb4, 0x44, 0x40, 0xd1, 0x16, 0xba, 0x93, 0x57, 0x23, 0x7d, 0x9d, 0x6b, 0x22, 0xbe, 0x67, 0x61, 0xf6, 0x3d, 0x91, 0xa2, 0x65, 0xd1, 0xdc, 0x08, 0xcc, 0x69, 0x3a, 0xe1, 0x45, 0x76, 0x20, 0x0d, 0x6a, 0xa7, 0x32, 0x2e, 0xca, 0x43, 0x9e, 0xea, 0x41, 0x46, 0x34, 0xf5, 0x66, 0x6c, 0x22, 0xab, 0x29, 0xc6, 0x7f, 0xbc, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8499 = { .name = "ecdsa_secp384r1_sha3_384_8499", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8499_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8499_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8499_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8500 for ECDSA, tcId is 288 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8500_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8500_msg[] = { 0x31, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, 0x34, 0x36, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8500_sig[] = { 0x9d, 0x2d, 0xeb, 0x75, 0x3b, 0x8e, 0x16, 0xe6, 0xf2, 0x4e, 0x1b, 0x71, 0x80, 0x00, 0xda, 0xa0, 0xd4, 0x61, 0x72, 0x42, 0x22, 0x5f, 0x1b, 0x91, 0x19, 0x2b, 0x1e, 0xa8, 0xac, 0xdc, 0xa6, 0x07, 0xb0, 0x5f, 0x1c, 0x0d, 0xa8, 0xe3, 0xcd, 0xbd, 0xc5, 0x2f, 0x44, 0x8a, 0x37, 0x6f, 0x13, 0xb1, 0x86, 0x54, 0xd2, 0x73, 0x87, 0x25, 0x42, 0x3c, 0x09, 0x34, 0xc2, 0x0b, 0x28, 0x32, 0x7f, 0x7a, 0x5a, 0xc5, 0x3a, 0x61, 0xf2, 0x96, 0xa5, 0xce, 0x56, 0x2c, 0x86, 0x84, 0xd2, 0xf3, 0x09, 0x0d, 0x19, 0x81, 0x1f, 0xe7, 0x0d, 0xbc, 0xe7, 0x1f, 0x10, 0x6c, 0x40, 0x60, 0x74, 0x09, 0x81, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8500 = { .name = "ecdsa_secp384r1_sha3_384_8500", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8500_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8500_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8500_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8501 for ECDSA, tcId is 289 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8501_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8501_msg[] = { 0x39, 0x37, 0x30, 0x34, 0x36, 0x37, 0x38, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8501_sig[] = { 0x1c, 0x7c, 0x8d, 0x1c, 0x49, 0x3b, 0xdb, 0x1f, 0x12, 0x90, 0xf0, 0x4a, 0xed, 0x3c, 0x4a, 0x7c, 0xb0, 0xa8, 0x3c, 0x36, 0x33, 0x0a, 0x4f, 0xab, 0x50, 0xe6, 0x8f, 0x23, 0x57, 0x77, 0x57, 0x9d, 0xd0, 0x6a, 0x07, 0x3a, 0x38, 0x57, 0xf2, 0x26, 0xda, 0xe5, 0x11, 0xa2, 0x56, 0x9e, 0x92, 0x8d, 0x14, 0xe5, 0x05, 0x8d, 0x70, 0xb7, 0xcf, 0xb0, 0x4c, 0xfb, 0x0c, 0x3c, 0x1d, 0x3d, 0x6f, 0xe5, 0x00, 0x32, 0x83, 0x40, 0x86, 0x0e, 0x4b, 0x7c, 0xc2, 0xb5, 0xf1, 0x1c, 0xab, 0x09, 0xcb, 0xa0, 0xc7, 0xb8, 0x87, 0x27, 0x44, 0x53, 0xab, 0x30, 0xd9, 0x16, 0x4c, 0x73, 0xfc, 0x1f, 0x6f, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8501 = { .name = "ecdsa_secp384r1_sha3_384_8501", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8501_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8501_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8501_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8502 for ECDSA, tcId is 290 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8502_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8502_msg[] = { 0x34, 0x31, 0x31, 0x30, 0x33, 0x38, 0x33, 0x31, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8502_sig[] = { 0xca, 0xde, 0x48, 0x6e, 0x6a, 0x8e, 0x78, 0x14, 0x1b, 0x15, 0xdb, 0xe6, 0x00, 0x95, 0xe4, 0x2d, 0x81, 0x96, 0xfa, 0xfd, 0x84, 0x3c, 0x72, 0x2c, 0x8c, 0x68, 0x6a, 0x60, 0x06, 0x3e, 0x70, 0x1f, 0x30, 0xd8, 0xa4, 0x88, 0xc2, 0xa1, 0x8a, 0x63, 0x63, 0x5a, 0x13, 0xbc, 0x8f, 0xf0, 0xa7, 0x87, 0xed, 0x7a, 0xa0, 0x20, 0x89, 0x52, 0xd2, 0xd4, 0x52, 0x43, 0x2f, 0xfa, 0x1b, 0xbf, 0x71, 0x46, 0x08, 0x09, 0x11, 0xcf, 0x7e, 0x87, 0xaa, 0x84, 0x8e, 0xe9, 0x03, 0x14, 0xb2, 0xaf, 0xe4, 0x27, 0xa8, 0x0c, 0xd7, 0x01, 0x87, 0xb3, 0xac, 0x35, 0x72, 0xa3, 0x60, 0xd4, 0xdb, 0x6b, 0x17, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8502 = { .name = "ecdsa_secp384r1_sha3_384_8502", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8502_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8502_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8502_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8503 for ECDSA, tcId is 291 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8503_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8503_msg[] = { 0x35, 0x34, 0x37, 0x38, 0x34, 0x38, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8503_sig[] = { 0x27, 0x87, 0x24, 0x0e, 0x7f, 0xd6, 0xd8, 0x95, 0x09, 0x8d, 0x17, 0x73, 0x73, 0x37, 0x27, 0xee, 0x57, 0x92, 0xfe, 0x64, 0x4b, 0x07, 0x74, 0xb8, 0x53, 0x0d, 0xdd, 0x75, 0x8b, 0x34, 0x71, 0x43, 0xd1, 0x93, 0x9b, 0xb7, 0xc9, 0xa3, 0x31, 0x27, 0x74, 0xcf, 0x71, 0x26, 0xe4, 0x99, 0xf5, 0xab, 0xad, 0x21, 0x5c, 0xb6, 0x68, 0x1f, 0x28, 0x7f, 0xfb, 0x96, 0xa6, 0xe7, 0xc4, 0x13, 0x31, 0xa2, 0xe7, 0x73, 0xe6, 0x87, 0x91, 0x39, 0x1c, 0x65, 0x8f, 0x2e, 0x5c, 0x95, 0xcf, 0x82, 0xe3, 0x87, 0x1e, 0x49, 0xc9, 0xff, 0xf0, 0x8f, 0x7b, 0x54, 0x08, 0x48, 0xc1, 0xa7, 0xce, 0xe2, 0xab, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8503 = { .name = "ecdsa_secp384r1_sha3_384_8503", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8503_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8503_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8503_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8504 for ECDSA, tcId is 292 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8504_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8504_msg[] = { 0x33, 0x33, 0x37, 0x38, 0x36, 0x37, 0x32, 0x38, 0x36, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8504_sig[] = { 0xaa, 0x92, 0xd0, 0xb7, 0xd6, 0x04, 0x62, 0x10, 0x02, 0x4b, 0x96, 0x2f, 0xd7, 0x9d, 0x1a, 0x27, 0xee, 0x69, 0xc2, 0x59, 0x36, 0xe5, 0x89, 0x5c, 0xd9, 0x22, 0x24, 0xb3, 0xf5, 0x60, 0x82, 0x9c, 0x11, 0xde, 0x20, 0xe7, 0xf5, 0x23, 0x20, 0xbb, 0xa9, 0x1b, 0x87, 0xc4, 0xc7, 0xef, 0x49, 0x62, 0x81, 0x6c, 0x95, 0xee, 0x54, 0xc6, 0x77, 0xc4, 0xbe, 0x1b, 0xa7, 0x03, 0x17, 0xa9, 0x0a, 0xaf, 0x1c, 0x1d, 0x2f, 0x23, 0x3f, 0xd4, 0x80, 0xd2, 0x2c, 0xab, 0x45, 0x3d, 0x95, 0x39, 0x65, 0x7c, 0xe6, 0x95, 0xe2, 0x19, 0x52, 0xe6, 0x15, 0x7c, 0xe3, 0x46, 0x06, 0x80, 0xdc, 0x2f, 0xdb, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8504 = { .name = "ecdsa_secp384r1_sha3_384_8504", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8504_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8504_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8504_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8505 for ECDSA, tcId is 293 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8505_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8505_msg[] = { 0x31, 0x36, 0x36, 0x35, 0x37, 0x34, 0x35, 0x36, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8505_sig[] = { 0x4e, 0xda, 0x9f, 0xc1, 0xe0, 0xdf, 0x8e, 0xf2, 0x4f, 0x31, 0x48, 0xf8, 0xa7, 0x37, 0xa7, 0x6e, 0xce, 0xdd, 0xfa, 0x60, 0x57, 0x44, 0x1c, 0x87, 0x78, 0x16, 0xac, 0x40, 0x23, 0x49, 0xf3, 0x25, 0x71, 0xc8, 0x07, 0x46, 0x11, 0x17, 0x99, 0x68, 0xe6, 0xfe, 0x7c, 0xfc, 0x1f, 0x41, 0xa8, 0x0b, 0xe0, 0x54, 0x9e, 0x78, 0xe7, 0x74, 0x37, 0x7d, 0xff, 0xb9, 0xe7, 0x42, 0xf0, 0x5f, 0x5b, 0x1a, 0x1a, 0x21, 0x98, 0x57, 0x1d, 0x0f, 0x22, 0x43, 0xfd, 0x25, 0x70, 0x30, 0x29, 0xe0, 0xef, 0xfa, 0xc2, 0x80, 0x8f, 0xad, 0x1c, 0x82, 0xef, 0xbd, 0xf0, 0x06, 0x3d, 0x60, 0x32, 0xdf, 0x33, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8505 = { .name = "ecdsa_secp384r1_sha3_384_8505", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8505_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8505_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8505_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8506 for ECDSA, tcId is 294 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8506_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8506_msg[] = { 0x36, 0x34, 0x31, 0x34, 0x30, 0x37, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8506_sig[] = { 0x18, 0xa8, 0x3b, 0x96, 0xdb, 0xd1, 0x0d, 0xe3, 0xa6, 0x2f, 0xda, 0xb7, 0x14, 0x2f, 0x20, 0x1f, 0x9f, 0x48, 0x04, 0x47, 0xbf, 0x00, 0x0f, 0x6e, 0xe3, 0x14, 0xda, 0x64, 0xd2, 0x35, 0x1b, 0xbc, 0x7b, 0xb9, 0x4c, 0xd1, 0xc5, 0x51, 0xde, 0xe4, 0x82, 0x8a, 0x60, 0x3e, 0x6a, 0x85, 0x3f, 0xca, 0x8f, 0xbf, 0x2a, 0x1a, 0x7a, 0xd4, 0xed, 0x76, 0xa0, 0x87, 0x48, 0xf4, 0x1f, 0x5b, 0x34, 0x68, 0xa9, 0xa7, 0xcd, 0xa5, 0x75, 0x03, 0xaa, 0x71, 0xc4, 0x55, 0x29, 0x2b, 0xde, 0x2d, 0xc8, 0x8a, 0x25, 0x80, 0xa6, 0x5a, 0x68, 0x59, 0xd2, 0x0f, 0x92, 0x4a, 0xa7, 0xa5, 0xce, 0xa3, 0x74, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8506 = { .name = "ecdsa_secp384r1_sha3_384_8506", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8506_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8506_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8506_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8507 for ECDSA, tcId is 295 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8507_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8507_msg[] = { 0x32, 0x30, 0x38, 0x33, 0x36, 0x30, 0x36, 0x30, 0x36, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8507_sig[] = { 0x2f, 0xb5, 0x72, 0x62, 0x26, 0x52, 0x1d, 0x11, 0x05, 0xcd, 0xd2, 0x2e, 0x84, 0xff, 0x46, 0xa3, 0x67, 0x68, 0xee, 0x4d, 0x71, 0xe6, 0xf5, 0xcf, 0xe7, 0x20, 0xdd, 0xbd, 0x36, 0xad, 0x64, 0x5c, 0x05, 0xa7, 0x20, 0x7c, 0x9f, 0x7c, 0xae, 0x2d, 0x82, 0x36, 0xd9, 0x65, 0xff, 0x64, 0xf9, 0x43, 0xac, 0x3f, 0x8b, 0x78, 0x41, 0xb3, 0x1c, 0x95, 0xf2, 0x7e, 0x99, 0xa8, 0x64, 0x13, 0xb6, 0xaa, 0x90, 0x86, 0xfc, 0xdb, 0xd1, 0x76, 0xf7, 0xde, 0x65, 0xa6, 0x96, 0xd7, 0x6e, 0xdc, 0xb0, 0x77, 0x5f, 0x2e, 0x25, 0x7d, 0xb7, 0x5f, 0xa5, 0xaa, 0x71, 0x69, 0x46, 0xf3, 0xd8, 0x0b, 0x1c, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8507 = { .name = "ecdsa_secp384r1_sha3_384_8507", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8507_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8507_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8507_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8508 for ECDSA, tcId is 296 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8508_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8508_msg[] = { 0x32, 0x38, 0x32, 0x35, 0x30, 0x34, 0x36, 0x30, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8508_sig[] = { 0x2a, 0x38, 0xf4, 0xcc, 0x1d, 0xa4, 0x26, 0xf1, 0x5d, 0x8c, 0x8d, 0xbe, 0xd5, 0x86, 0x08, 0xee, 0xc8, 0x68, 0x62, 0x55, 0x4f, 0x4d, 0x6d, 0x50, 0x3d, 0xc6, 0xe1, 0x62, 0xe7, 0x27, 0x54, 0xb1, 0x29, 0x8a, 0xd4, 0x50, 0x8a, 0xe2, 0xa9, 0x3d, 0x49, 0x3c, 0x83, 0x6b, 0x19, 0x54, 0x8c, 0x4c, 0x9b, 0x51, 0x61, 0x05, 0x14, 0x13, 0x6d, 0x5d, 0xcf, 0xda, 0x3c, 0x47, 0x36, 0xa8, 0x39, 0x28, 0x8b, 0xc1, 0xf0, 0x43, 0xea, 0x36, 0x2c, 0xf6, 0xe5, 0x6d, 0xce, 0x3f, 0x43, 0x37, 0x20, 0x4d, 0x5b, 0xdf, 0x92, 0x16, 0x0a, 0x03, 0x4f, 0x45, 0x9b, 0x30, 0x41, 0x08, 0x72, 0xdb, 0xeb, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8508 = { .name = "ecdsa_secp384r1_sha3_384_8508", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8508_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8508_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8508_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8509 for ECDSA, tcId is 297 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8509_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8509_msg[] = { 0x31, 0x34, 0x32, 0x32, 0x39, 0x38, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8509_sig[] = { 0x34, 0x07, 0x84, 0x46, 0x41, 0xa7, 0x5b, 0xa7, 0x2e, 0xd0, 0x5f, 0x9b, 0x72, 0x89, 0xea, 0x2c, 0x8f, 0x90, 0x15, 0xc9, 0x7e, 0x8d, 0x7a, 0xac, 0xec, 0x4a, 0x88, 0xb3, 0x74, 0xa2, 0x55, 0x37, 0x1b, 0x19, 0xe7, 0xa2, 0xe7, 0x94, 0x9f, 0x4b, 0x78, 0xb6, 0x33, 0x34, 0xb4, 0x98, 0x44, 0x34, 0xce, 0xe1, 0x17, 0xc6, 0xfb, 0x8f, 0x8e, 0x47, 0xce, 0x33, 0x35, 0x7d, 0x7e, 0xd1, 0xa8, 0x2b, 0x1e, 0xd9, 0x12, 0xbe, 0x37, 0x78, 0xed, 0xa9, 0xde, 0x30, 0x3b, 0x2e, 0xe9, 0x10, 0xc0, 0x14, 0xee, 0xe3, 0xcf, 0x03, 0xe2, 0x7f, 0x16, 0xfd, 0x94, 0xd7, 0xed, 0x5a, 0x8e, 0x8c, 0x7b, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8509 = { .name = "ecdsa_secp384r1_sha3_384_8509", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8509_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8509_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8509_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8510 for ECDSA, tcId is 298 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8510_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8510_msg[] = { 0x32, 0x31, 0x36, 0x36, 0x34, 0x32, 0x32, 0x30, 0x39, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8510_sig[] = { 0xb9, 0x8e, 0x13, 0x13, 0xe6, 0x2f, 0xf0, 0x15, 0x51, 0x58, 0x05, 0x9e, 0x42, 0x2c, 0xb6, 0xe8, 0xce, 0x70, 0xd1, 0x03, 0xf1, 0xa9, 0x5a, 0x77, 0xe1, 0x79, 0x5e, 0xf2, 0xae, 0x38, 0xa4, 0x25, 0x96, 0x73, 0x24, 0x05, 0x60, 0x22, 0x99, 0xee, 0x73, 0x0b, 0x81, 0xe9, 0x48, 0x08, 0x3a, 0xdf, 0x8a, 0x34, 0x13, 0x4e, 0x86, 0x35, 0x4d, 0x26, 0xf3, 0x43, 0x34, 0x3c, 0x05, 0xcd, 0xb4, 0x63, 0x50, 0xb6, 0x10, 0xad, 0x16, 0x88, 0x3f, 0x23, 0x4e, 0x84, 0x7f, 0xad, 0x97, 0x04, 0x7e, 0xe4, 0xb8, 0xdf, 0xec, 0xd0, 0xbf, 0x77, 0x47, 0x9b, 0x65, 0x64, 0x3f, 0x9c, 0x35, 0xb7, 0x44, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8510 = { .name = "ecdsa_secp384r1_sha3_384_8510", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8510_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8510_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8510_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8511 for ECDSA, tcId is 299 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8511_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8511_msg[] = { 0x31, 0x34, 0x38, 0x30, 0x31, 0x39, 0x30, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8511_sig[] = { 0x0a, 0xe0, 0xa9, 0xcb, 0xd0, 0xde, 0x42, 0xe6, 0x59, 0x08, 0x35, 0x37, 0x45, 0x48, 0x70, 0x8d, 0xf9, 0x67, 0x12, 0x08, 0xab, 0x72, 0xe2, 0x3b, 0xf7, 0xaa, 0x43, 0x29, 0xbb, 0xd0, 0xd4, 0xa6, 0x96, 0xe9, 0x9d, 0x04, 0xd3, 0x65, 0x34, 0xe8, 0x95, 0x73, 0x7b, 0x46, 0x8c, 0xff, 0x08, 0xea, 0x8c, 0x8b, 0x6b, 0xb1, 0x01, 0xee, 0x84, 0x4b, 0xc7, 0x5c, 0xd2, 0xb3, 0xb3, 0x2e, 0xa9, 0xc3, 0xb6, 0xc2, 0xac, 0x54, 0x08, 0xc2, 0x6f, 0x6a, 0x44, 0x43, 0x35, 0xd7, 0x30, 0xaf, 0x2d, 0xce, 0x6f, 0x4b, 0xf1, 0xbf, 0x45, 0x85, 0x42, 0x8e, 0x90, 0x2f, 0x90, 0x1e, 0xed, 0x10, 0xda, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8511 = { .name = "ecdsa_secp384r1_sha3_384_8511", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8511_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8511_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8511_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8512 for ECDSA, tcId is 300 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8512_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8512_msg[] = { 0x35, 0x32, 0x31, 0x38, 0x39, 0x37, 0x34, 0x30, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8512_sig[] = { 0xcf, 0x03, 0x10, 0x48, 0x76, 0x90, 0xde, 0x93, 0xd3, 0x44, 0xbb, 0xa9, 0x57, 0xa1, 0xba, 0x38, 0x0f, 0x72, 0xc2, 0xae, 0x44, 0x97, 0x5f, 0x69, 0x71, 0x6b, 0x2a, 0xa2, 0xa8, 0x66, 0x78, 0x7d, 0xfc, 0x46, 0x62, 0x98, 0x25, 0xef, 0x19, 0xe5, 0x52, 0x83, 0x95, 0xd8, 0x72, 0xff, 0x93, 0x67, 0xff, 0x60, 0xa9, 0x95, 0x86, 0x5b, 0x6f, 0x5e, 0x6f, 0xfc, 0x15, 0x88, 0x4e, 0x59, 0x01, 0xd5, 0x5f, 0x38, 0x4f, 0xfc, 0x62, 0x98, 0x2e, 0x54, 0xa9, 0xc2, 0xdc, 0xca, 0xf7, 0x54, 0x32, 0x46, 0x67, 0x3c, 0x5b, 0xfe, 0x71, 0x0f, 0x2a, 0x29, 0xda, 0xca, 0x77, 0xde, 0x76, 0x6e, 0xe9, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8512 = { .name = "ecdsa_secp384r1_sha3_384_8512", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8512_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8512_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8512_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8513 for ECDSA, tcId is 301 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8513_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8513_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x38, 0x38, 0x34, 0x35, 0x39, 0x37, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8513_sig[] = { 0x4a, 0x0f, 0x3d, 0x91, 0xef, 0x6b, 0x9b, 0x6e, 0x51, 0x2c, 0xd9, 0xc9, 0x96, 0xf8, 0xe8, 0x96, 0x71, 0x7e, 0xa8, 0xc6, 0xd6, 0x85, 0x83, 0x4e, 0x4c, 0x31, 0xbc, 0xaf, 0x59, 0x2a, 0x93, 0xd0, 0xf0, 0xb1, 0x69, 0xef, 0xeb, 0x0e, 0xa5, 0x2a, 0x5b, 0xea, 0x6b, 0xe3, 0x61, 0xd7, 0xa7, 0xb3, 0xc3, 0xd4, 0x29, 0xd0, 0xda, 0xf1, 0xee, 0x7c, 0x2b, 0xf4, 0xa0, 0xbc, 0x8f, 0x10, 0xcd, 0x7c, 0xe4, 0x53, 0xb8, 0xe2, 0xa7, 0x62, 0xb3, 0x18, 0x85, 0xd3, 0x6f, 0x5e, 0x03, 0xcd, 0xae, 0x3a, 0xdb, 0x69, 0x3b, 0xc2, 0xef, 0xe8, 0xa6, 0x4d, 0x6e, 0x7b, 0xbc, 0x17, 0xf2, 0x3b, 0x55, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8513 = { .name = "ecdsa_secp384r1_sha3_384_8513", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8513_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8513_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8513_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8514 for ECDSA, tcId is 302 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8514_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8514_msg[] = { 0x34, 0x38, 0x39, 0x32, 0x32, 0x35, 0x33, 0x33, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8514_sig[] = { 0x40, 0xf8, 0x29, 0x35, 0x32, 0x8e, 0x34, 0xe3, 0x1f, 0x19, 0x66, 0xbd, 0x0b, 0xc1, 0xdf, 0xc2, 0xad, 0xf1, 0xd7, 0x1d, 0x86, 0xfc, 0x6d, 0xd0, 0xf9, 0xe9, 0xe1, 0x93, 0x0d, 0xfc, 0x35, 0x7e, 0x30, 0xfa, 0x67, 0x72, 0x2c, 0x56, 0x2d, 0xd8, 0x4c, 0xdb, 0x73, 0xfb, 0x71, 0x5b, 0x62, 0x2d, 0xcf, 0x40, 0x65, 0x85, 0x91, 0xf3, 0x45, 0x27, 0x58, 0x7b, 0x09, 0x69, 0xa4, 0x5c, 0xa5, 0xa3, 0x0f, 0x87, 0xdb, 0xcf, 0x0b, 0x05, 0x8f, 0x75, 0xc1, 0x58, 0xac, 0x88, 0x3d, 0x52, 0x11, 0x90, 0x30, 0x88, 0x1c, 0x0a, 0xeb, 0x1f, 0x8e, 0x12, 0x68, 0x2d, 0x06, 0xd0, 0x72, 0x70, 0x55, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8514 = { .name = "ecdsa_secp384r1_sha3_384_8514", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8514_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8514_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8514_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8515 for ECDSA, tcId is 303 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8515_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8515_msg[] = { 0x35, 0x30, 0x34, 0x33, 0x39, 0x38, 0x32, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8515_sig[] = { 0xa3, 0x43, 0x4d, 0xf3, 0xd0, 0x65, 0xf4, 0xb3, 0x29, 0x57, 0x07, 0x7f, 0x42, 0x9b, 0xcc, 0xda, 0xa8, 0x87, 0x59, 0x81, 0x00, 0x6c, 0xe8, 0x80, 0x58, 0x5c, 0x16, 0x0f, 0xca, 0x1f, 0x55, 0x2d, 0xc6, 0x33, 0x45, 0x83, 0xd7, 0x69, 0x82, 0x26, 0xe6, 0x50, 0xe9, 0x5d, 0x86, 0xa8, 0x96, 0xb7, 0x54, 0xe2, 0xeb, 0x28, 0xc7, 0x07, 0x96, 0xe3, 0xbe, 0xa9, 0xf2, 0xfd, 0xc3, 0x79, 0x9f, 0x7d, 0x6d, 0xde, 0x5b, 0x3c, 0xc8, 0x4d, 0xe7, 0x44, 0x82, 0x96, 0xd6, 0x5f, 0xd8, 0xa4, 0x42, 0x60, 0xb0, 0x66, 0x6c, 0xef, 0xa4, 0x16, 0xad, 0xda, 0x50, 0x46, 0xf4, 0x5a, 0x5b, 0x8a, 0x9a, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8515 = { .name = "ecdsa_secp384r1_sha3_384_8515", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8515_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8515_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8515_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8516 for ECDSA, tcId is 304 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8516_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8516_msg[] = { 0x31, 0x32, 0x39, 0x38, 0x33, 0x35, 0x30, 0x30, 0x36, 0x39, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8516_sig[] = { 0xb5, 0x4b, 0x00, 0x44, 0x89, 0xe1, 0x2e, 0xc9, 0x1e, 0x87, 0x5f, 0x30, 0x62, 0xdf, 0xf1, 0xf1, 0xbd, 0x04, 0x07, 0xe2, 0x16, 0x16, 0x2b, 0x49, 0x13, 0xa3, 0x4f, 0x19, 0x94, 0x3c, 0x8f, 0x96, 0x7c, 0x1f, 0x72, 0x50, 0xff, 0x0c, 0xe5, 0xf4, 0x3a, 0x0b, 0x25, 0x0b, 0xb9, 0xfa, 0xe1, 0x6b, 0x95, 0xc1, 0x3a, 0x70, 0x2c, 0xa6, 0x26, 0x9e, 0xd8, 0xca, 0xc6, 0x92, 0x91, 0xe0, 0x17, 0x67, 0xc0, 0xf8, 0x62, 0x64, 0x8b, 0x09, 0x61, 0x23, 0x8e, 0xf0, 0xb6, 0xbe, 0x88, 0xcd, 0x31, 0x69, 0x73, 0xa2, 0x90, 0xba, 0xe4, 0xf5, 0x01, 0x47, 0x81, 0x6a, 0x49, 0xab, 0x01, 0x4a, 0x7d, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8516 = { .name = "ecdsa_secp384r1_sha3_384_8516", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8516_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8516_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8516_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8517 for ECDSA, tcId is 305 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8517_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8517_msg[] = { 0x31, 0x31, 0x33, 0x32, 0x36, 0x37, 0x33, 0x31, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8517_sig[] = { 0xea, 0x28, 0xa6, 0xb9, 0x15, 0x83, 0x28, 0xd0, 0x71, 0x1b, 0xfd, 0x10, 0x01, 0x96, 0x43, 0x64, 0x8e, 0x69, 0x5c, 0x1f, 0xa9, 0xdf, 0x2a, 0x7c, 0x2e, 0x1a, 0x6d, 0x3b, 0x03, 0xb6, 0x70, 0x3b, 0xc7, 0x63, 0xf8, 0xf0, 0xc7, 0x01, 0xd7, 0xb9, 0x25, 0xd3, 0x50, 0x75, 0xda, 0x78, 0x3f, 0x38, 0xb4, 0xbb, 0x6b, 0x03, 0x42, 0x88, 0xaf, 0x21, 0x3e, 0xca, 0xbd, 0xcc, 0x2d, 0x55, 0x61, 0x01, 0x81, 0xba, 0x77, 0xb2, 0x66, 0x73, 0xb1, 0x49, 0x0e, 0x7e, 0x08, 0xa4, 0x3f, 0x6e, 0x57, 0xfe, 0x20, 0x61, 0x8a, 0x5a, 0xdc, 0x7f, 0xbf, 0xcb, 0xe2, 0x55, 0xfa, 0x79, 0x65, 0x5a, 0xae, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8517 = { .name = "ecdsa_secp384r1_sha3_384_8517", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8517_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8517_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8517_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8518 for ECDSA, tcId is 306 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8518_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8518_msg[] = { 0x33, 0x35, 0x37, 0x33, 0x32, 0x38, 0x39, 0x30, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_384_8518_sig[] = { 0xd9, 0x73, 0xf5, 0xfa, 0x26, 0xa7, 0x06, 0x9d, 0xac, 0x82, 0x79, 0x00, 0x97, 0xdb, 0x0d, 0x93, 0xdf, 0xc5, 0x2a, 0x49, 0x0a, 0xc2, 0xa8, 0x49, 0x60, 0xc6, 0xdc, 0x52, 0xc2, 0xe8, 0x4d, 0x2d, 0xf1, 0x91, 0x7c, 0x8d, 0x19, 0x47, 0x89, 0xfe, 0x89, 0x81, 0xbe, 0x40, 0xfb, 0xef, 0xb0, 0x06, 0x1d, 0xc1, 0xab, 0x55, 0x75, 0x2a, 0xdd, 0x39, 0x52, 0xee, 0x3f, 0x5d, 0x86, 0xbb, 0x16, 0x7e, 0xd1, 0xfd, 0xf2, 0x0e, 0x19, 0xd5, 0xc8, 0x93, 0xc1, 0xa6, 0x03, 0x1c, 0x1a, 0x2b, 0x70, 0x70, 0x1b, 0xa0, 0x3c, 0xf7, 0xd7, 0x8b, 0x89, 0x33, 0x1d, 0x52, 0x4c, 0x5d, 0xcf, 0x38, 0x46, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8518 = { .name = "ecdsa_secp384r1_sha3_384_8518", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8518_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8518_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8518_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8519 for ECDSA, tcId is 307 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8519_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8519_msg[] = { 0x31, 0x31, 0x37, 0x33, 0x39, 0x35, 0x36, 0x34, 0x33, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8519_sig[] = { 0x3d, 0x4e, 0xd5, 0xe7, 0x11, 0x27, 0xa0, 0xda, 0x4a, 0xa6, 0x3c, 0xc1, 0xd7, 0xce, 0x51, 0x7a, 0x45, 0x03, 0x70, 0xdf, 0xf6, 0x5e, 0xf9, 0x5b, 0x41, 0x85, 0xa4, 0x41, 0x99, 0x18, 0x1e, 0xc5, 0xff, 0x70, 0xf8, 0x0f, 0x6d, 0x74, 0x35, 0xe6, 0xbe, 0xc4, 0xd6, 0xe5, 0x8e, 0x73, 0x59, 0x1b, 0x27, 0xb2, 0xd6, 0x5b, 0xf0, 0x8a, 0xb8, 0xe7, 0x45, 0x54, 0x42, 0x25, 0x18, 0x16, 0x38, 0xaf, 0x5d, 0xf0, 0x8b, 0x85, 0xc9, 0xf7, 0xa9, 0x05, 0x7e, 0x16, 0x05, 0xf1, 0x45, 0xb3, 0xa1, 0x38, 0x96, 0x61, 0xd9, 0xc9, 0x90, 0xd0, 0xf4, 0xd8, 0x26, 0x36, 0xdc, 0x63, 0x32, 0xb6, 0x94, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8519 = { .name = "ecdsa_secp384r1_sha3_384_8519", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8519_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8519_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8519_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8520 for ECDSA, tcId is 308 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8520_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8520_msg[] = { 0x37, 0x33, 0x38, 0x32, 0x30, 0x37, 0x39, 0x35, 0x30, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8520_sig[] = { 0xe3, 0x6f, 0xfc, 0x2c, 0xa7, 0xe6, 0x2c, 0x2f, 0xe3, 0x5c, 0x77, 0x61, 0xa7, 0x8a, 0xe2, 0x83, 0x9d, 0x15, 0x03, 0xb4, 0x37, 0xcc, 0x7a, 0x89, 0xee, 0xe2, 0x8e, 0xc7, 0x4d, 0x75, 0xd2, 0x94, 0x8c, 0x7a, 0x31, 0x48, 0x07, 0x0a, 0xd7, 0x15, 0xf7, 0xce, 0x82, 0x60, 0xc1, 0x60, 0x61, 0x1d, 0x0c, 0x18, 0xed, 0xef, 0x91, 0x3d, 0x63, 0xac, 0x22, 0x0c, 0xd4, 0xb2, 0x8a, 0xef, 0x1c, 0xd4, 0x3a, 0xa9, 0xac, 0xf7, 0xb0, 0xfe, 0x88, 0x9c, 0x4a, 0x28, 0xac, 0x22, 0x93, 0x4e, 0x46, 0xaa, 0x2a, 0x99, 0xa5, 0xb8, 0x03, 0xa6, 0x14, 0x71, 0xbd, 0x5b, 0xfe, 0xef, 0x8c, 0x86, 0xb1, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8520 = { .name = "ecdsa_secp384r1_sha3_384_8520", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8520_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8520_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8520_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8521 for ECDSA, tcId is 309 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8521_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8521_msg[] = { 0x34, 0x35, 0x32, 0x33, 0x33, 0x37, 0x38, 0x38, 0x34, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8521_sig[] = { 0x14, 0x89, 0x06, 0xbc, 0xfc, 0x68, 0x6a, 0xa3, 0xf6, 0x08, 0x32, 0x1d, 0x17, 0xa4, 0x25, 0x37, 0x3b, 0xd9, 0xce, 0x2f, 0x47, 0xa3, 0x5a, 0x6a, 0x01, 0x12, 0x49, 0x92, 0xcb, 0xa5, 0x6e, 0x74, 0x4d, 0xae, 0xf2, 0xb0, 0x0d, 0xec, 0xec, 0xff, 0x63, 0xed, 0x96, 0xd5, 0xd7, 0xc2, 0xe1, 0x58, 0x43, 0x03, 0xa5, 0xc7, 0x04, 0x97, 0x66, 0x95, 0x66, 0x79, 0xf2, 0x04, 0xe6, 0x55, 0x30, 0x1d, 0xc1, 0x6f, 0xe9, 0xcd, 0x85, 0xf6, 0xeb, 0xb1, 0x99, 0x74, 0x10, 0xe0, 0xd2, 0x02, 0x92, 0x40, 0x18, 0x1c, 0x94, 0x6d, 0x86, 0x80, 0x0c, 0xc6, 0xba, 0x88, 0x2f, 0x27, 0x66, 0x03, 0xdb, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8521 = { .name = "ecdsa_secp384r1_sha3_384_8521", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8521_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8521_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8521_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8522 for ECDSA, tcId is 310 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8522_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8522_msg[] = { 0x39, 0x30, 0x32, 0x39, 0x36, 0x35, 0x35, 0x32, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8522_sig[] = { 0x52, 0x64, 0xc2, 0x6c, 0xeb, 0x04, 0x81, 0xb7, 0x44, 0x72, 0xf2, 0x6e, 0xcc, 0xa4, 0x45, 0x97, 0x85, 0xa2, 0xd6, 0x3c, 0x94, 0x94, 0xd8, 0x74, 0x4e, 0x42, 0xe9, 0xee, 0xa5, 0x79, 0x9b, 0xfb, 0x0f, 0xa9, 0x5f, 0xf3, 0xc8, 0xa5, 0xde, 0x28, 0x68, 0x09, 0x8a, 0x02, 0x51, 0x10, 0xbb, 0xe9, 0xe1, 0x85, 0x8d, 0x96, 0xc8, 0x14, 0xdb, 0xd3, 0x9c, 0xa5, 0xdb, 0xde, 0x82, 0x4b, 0xe0, 0x89, 0x4b, 0x4e, 0x41, 0x8f, 0xe5, 0x13, 0x06, 0x78, 0x4a, 0x8f, 0xd0, 0x68, 0x08, 0x50, 0xa5, 0xb3, 0x29, 0x58, 0x71, 0x4a, 0xe9, 0x12, 0x4e, 0x9a, 0xd6, 0x37, 0x24, 0x12, 0x21, 0x2d, 0xf1, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8522 = { .name = "ecdsa_secp384r1_sha3_384_8522", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8522_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8522_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8522_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8523 for ECDSA, tcId is 311 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8523_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8523_msg[] = { 0x36, 0x36, 0x30, 0x30, 0x35, 0x32, 0x38, 0x36, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8523_sig[] = { 0x27, 0x3e, 0x22, 0x9d, 0xdd, 0xfa, 0xa7, 0xba, 0x57, 0x63, 0xc8, 0x56, 0x3f, 0x3a, 0x05, 0xc7, 0xd2, 0xd2, 0x47, 0x13, 0x31, 0x22, 0x5e, 0x8f, 0x26, 0xa2, 0x0e, 0x0a, 0xe6, 0x56, 0x11, 0x5c, 0x62, 0xdd, 0xfa, 0xc3, 0x89, 0x5f, 0x10, 0x01, 0x22, 0x53, 0xba, 0x7b, 0xb7, 0x9a, 0x65, 0xca, 0x89, 0xa6, 0xab, 0x6f, 0xd5, 0xbc, 0xa3, 0x16, 0x59, 0x27, 0x8a, 0xc3, 0xf3, 0xe7, 0x9d, 0xed, 0x9a, 0x47, 0xa6, 0xfd, 0x16, 0x6f, 0xc7, 0x46, 0xb7, 0x9f, 0xc3, 0xbd, 0x9d, 0x21, 0xe5, 0xf3, 0x32, 0xbb, 0x1e, 0x89, 0xa1, 0x4e, 0xfc, 0xd3, 0x64, 0x7f, 0x94, 0xaf, 0xf9, 0x71, 0x5a, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8523 = { .name = "ecdsa_secp384r1_sha3_384_8523", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8523_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8523_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8523_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8524 for ECDSA, tcId is 312 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8524_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8524_msg[] = { 0x38, 0x33, 0x36, 0x39, 0x34, 0x35, 0x36, 0x34, 0x31, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8524_sig[] = { 0xf4, 0x47, 0xdc, 0xc8, 0xce, 0x65, 0x73, 0xa2, 0xda, 0x5f, 0xd5, 0x8a, 0x39, 0x74, 0xf4, 0x6a, 0x8d, 0x76, 0x60, 0x8e, 0x47, 0x77, 0x42, 0xb6, 0x8c, 0x2e, 0x93, 0x24, 0x5f, 0x35, 0x95, 0x67, 0xa9, 0x53, 0xcd, 0x18, 0xdc, 0x1d, 0x95, 0xfa, 0x7e, 0x3c, 0x5d, 0x02, 0x21, 0x0c, 0xfc, 0x0e, 0xb2, 0x73, 0xa9, 0xce, 0x5a, 0x02, 0x1a, 0x66, 0xf6, 0xa4, 0x4f, 0x2a, 0xe9, 0x4f, 0x2f, 0x5f, 0xab, 0x6e, 0x3b, 0x50, 0x16, 0x64, 0x8c, 0x9d, 0xf3, 0x87, 0x56, 0xa5, 0xb7, 0xe7, 0x1d, 0x07, 0xaa, 0x45, 0x32, 0x40, 0xd3, 0x9b, 0xef, 0x0d, 0x22, 0xaf, 0xab, 0x1e, 0x19, 0x09, 0x56, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8524 = { .name = "ecdsa_secp384r1_sha3_384_8524", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8524_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8524_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8524_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8525 for ECDSA, tcId is 313 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8525_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8525_msg[] = { 0x31, 0x30, 0x30, 0x31, 0x39, 0x39, 0x32, 0x30, 0x37, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8525_sig[] = { 0x93, 0x78, 0x87, 0x4a, 0x38, 0xf2, 0x21, 0xb2, 0x7d, 0x8b, 0x7a, 0xb0, 0x6d, 0x82, 0x71, 0x30, 0xd0, 0xdb, 0x2e, 0x9c, 0x43, 0xf4, 0x43, 0xe9, 0xcd, 0xd2, 0x54, 0xef, 0x77, 0xa4, 0xf7, 0xaa, 0xe5, 0x89, 0xa6, 0xc1, 0x49, 0x99, 0x70, 0xdd, 0x5a, 0xcf, 0x51, 0x68, 0x02, 0x68, 0x8a, 0xa6, 0xf9, 0x4a, 0x63, 0x19, 0x37, 0x95, 0x98, 0x11, 0x9b, 0xdd, 0xf9, 0xf7, 0x87, 0xe7, 0x4b, 0x13, 0x5a, 0xd1, 0x93, 0xb6, 0x92, 0xe4, 0x4a, 0x84, 0x8a, 0xc6, 0xd1, 0xd0, 0x44, 0x3d, 0x49, 0xad, 0xcd, 0xcf, 0x1a, 0x9f, 0x53, 0x06, 0x86, 0xe7, 0x60, 0x80, 0x84, 0x0e, 0x1b, 0x64, 0x7b, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8525 = { .name = "ecdsa_secp384r1_sha3_384_8525", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8525_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8525_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8525_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8526 for ECDSA, tcId is 314 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8526_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8526_msg[] = { 0x31, 0x37, 0x30, 0x32, 0x33, 0x31, 0x33, 0x32, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8526_sig[] = { 0xa4, 0x8c, 0xc7, 0x4a, 0x1d, 0x39, 0xa0, 0xb8, 0xcf, 0xcd, 0x12, 0x76, 0x82, 0x77, 0x53, 0x53, 0x89, 0x79, 0x0c, 0x9a, 0xd2, 0x63, 0x8a, 0xca, 0x42, 0x40, 0x1a, 0x44, 0xe8, 0x0f, 0xf0, 0xce, 0xb4, 0x0e, 0x19, 0x3c, 0xd9, 0xe2, 0x7e, 0x39, 0x44, 0x3a, 0x1d, 0x26, 0x65, 0xde, 0x48, 0x5c, 0x15, 0x69, 0xca, 0x82, 0xe5, 0x63, 0xdf, 0x78, 0xfe, 0xb1, 0xd7, 0x04, 0x95, 0x3b, 0x8c, 0x35, 0xb7, 0xed, 0xa0, 0x92, 0x59, 0xfc, 0x16, 0xab, 0x26, 0x23, 0x04, 0xd0, 0xc0, 0x93, 0x83, 0xf5, 0x50, 0xcf, 0xdc, 0x97, 0xce, 0x54, 0x98, 0x74, 0x21, 0x2e, 0x3f, 0xc7, 0xb8, 0x3f, 0x6d, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8526 = { .name = "ecdsa_secp384r1_sha3_384_8526", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8526_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8526_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8526_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8527 for ECDSA, tcId is 315 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8527_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8527_msg[] = { 0x31, 0x38, 0x30, 0x38, 0x39, 0x34, 0x39, 0x38, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8527_sig[] = { 0xe6, 0x04, 0x9a, 0x43, 0xaa, 0x57, 0x61, 0xad, 0x41, 0x93, 0xa7, 0x39, 0xda, 0x84, 0xc7, 0x34, 0xf3, 0x9f, 0x2f, 0x79, 0xf8, 0xd9, 0x72, 0x41, 0x98, 0x20, 0x82, 0x18, 0x5f, 0xe9, 0xce, 0xf7, 0x74, 0x7b, 0x68, 0xc5, 0x9e, 0xf3, 0x90, 0x9f, 0x18, 0xaf, 0x6c, 0x5d, 0xf4, 0x8e, 0xe5, 0x59, 0xbb, 0x78, 0x00, 0x43, 0x67, 0x91, 0xba, 0xe9, 0x10, 0xfb, 0xfc, 0x6b, 0x69, 0xc0, 0xb7, 0xe6, 0x97, 0x2d, 0xea, 0x1b, 0xd5, 0xad, 0x82, 0xaa, 0xf9, 0x7e, 0xbb, 0x85, 0xd9, 0x20, 0xa1, 0x5f, 0x9f, 0x5f, 0x28, 0x0f, 0xd8, 0x13, 0x28, 0x1f, 0x36, 0xb2, 0xae, 0x3c, 0x53, 0xfd, 0x6e, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8527 = { .name = "ecdsa_secp384r1_sha3_384_8527", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8527_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8527_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8527_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8528 for ECDSA, tcId is 316 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8528_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8528_msg[] = { 0x31, 0x37, 0x34, 0x38, 0x32, 0x38, 0x39, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8528_sig[] = { 0x14, 0x8d, 0x73, 0x41, 0x04, 0xa5, 0x2c, 0x9d, 0x58, 0xca, 0x1a, 0xd7, 0xba, 0x56, 0xfd, 0x35, 0x14, 0x7e, 0x8d, 0x32, 0x4a, 0x09, 0x23, 0xeb, 0xc9, 0xc5, 0xd8, 0xb3, 0x93, 0xf4, 0x92, 0xbc, 0xe1, 0xda, 0x6c, 0x9d, 0x1f, 0xa6, 0x8d, 0x4f, 0xae, 0xeb, 0xf0, 0x86, 0x8e, 0x03, 0xf1, 0x71, 0x46, 0x29, 0x80, 0x90, 0x43, 0xf2, 0x28, 0xf0, 0xf3, 0xad, 0xfc, 0x06, 0x96, 0xc2, 0xe9, 0xd8, 0x00, 0x79, 0x1e, 0xe8, 0x20, 0x34, 0xc5, 0xfa, 0xc3, 0x7f, 0xc5, 0x21, 0xe4, 0x0f, 0x9b, 0xf2, 0x25, 0x0c, 0x53, 0x03, 0x6b, 0x82, 0x86, 0xe0, 0x32, 0x95, 0x9e, 0xd5, 0xf3, 0xa5, 0x84, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8528 = { .name = "ecdsa_secp384r1_sha3_384_8528", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8528_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8528_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8528_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8529 for ECDSA, tcId is 317 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8529_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8529_msg[] = { 0x36, 0x36, 0x32, 0x32, 0x31, 0x30, 0x31, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8529_sig[] = { 0x16, 0x76, 0x2b, 0xa4, 0x64, 0x5c, 0x90, 0x55, 0x90, 0xe6, 0xa3, 0xdd, 0x4b, 0x1e, 0x2a, 0xf6, 0x93, 0xcc, 0x4e, 0x64, 0x15, 0x38, 0x12, 0xf9, 0x3b, 0x80, 0xed, 0x4d, 0x1c, 0x07, 0xe6, 0x64, 0xe5, 0xb2, 0x28, 0x80, 0xf2, 0x4a, 0x12, 0x0d, 0x4b, 0x48, 0xe1, 0x40, 0x0f, 0xcd, 0x3a, 0xfb, 0xd4, 0x81, 0xc2, 0xf9, 0xb2, 0x55, 0xbb, 0xa2, 0xac, 0x29, 0xfe, 0x05, 0x55, 0x36, 0xc3, 0xc7, 0xfa, 0x92, 0xe4, 0xf3, 0x4c, 0xfd, 0xc5, 0xb5, 0xf5, 0x22, 0x7f, 0x58, 0x27, 0x36, 0xc8, 0x7c, 0x13, 0x50, 0xbc, 0xb7, 0x60, 0x06, 0x9c, 0x40, 0x04, 0xac, 0x33, 0xfb, 0xe2, 0xed, 0x35, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8529 = { .name = "ecdsa_secp384r1_sha3_384_8529", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8529_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8529_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8529_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8530 for ECDSA, tcId is 318 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8530_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8530_msg[] = { 0x31, 0x32, 0x31, 0x38, 0x33, 0x36, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8530_sig[] = { 0x83, 0x0c, 0x8c, 0x92, 0x46, 0x5f, 0xc7, 0xf1, 0xa6, 0x54, 0xd2, 0x2e, 0xae, 0xad, 0xf6, 0x2b, 0x5f, 0xa2, 0x9b, 0xeb, 0xc8, 0xe1, 0x84, 0xca, 0x10, 0x49, 0x13, 0xeb, 0x8b, 0xea, 0x23, 0x4d, 0x28, 0x79, 0x61, 0x90, 0x0f, 0x30, 0x8d, 0x88, 0xf9, 0xbb, 0x73, 0x87, 0xc8, 0xde, 0x58, 0xb2, 0x96, 0x0e, 0xb6, 0x35, 0xdb, 0x96, 0x7c, 0xd6, 0x9f, 0x80, 0x12, 0x3e, 0x0a, 0x43, 0x50, 0x1c, 0x61, 0x61, 0xcb, 0xd9, 0xe8, 0x05, 0x8f, 0x5b, 0xb7, 0x50, 0x6c, 0xc2, 0x4f, 0xba, 0x3a, 0x36, 0x94, 0x68, 0x8b, 0x5b, 0x0e, 0x06, 0x6b, 0xf2, 0xcc, 0xae, 0xcb, 0xb5, 0xa9, 0xeb, 0x0c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8530 = { .name = "ecdsa_secp384r1_sha3_384_8530", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8530_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8530_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha3_384_8530_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8531 for ECDSA, tcId is 319 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8531_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8531_msg[] = { 0x39, 0x35, 0x35, 0x32, 0x34, 0x37, 0x33, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_384_8531_sig[] = { 0x13, 0x77, 0x90, 0x6f, 0x42, 0x62, 0x90, 0x10, 0xe7, 0x9b, 0xc6, 0x01, 0x42, 0x23, 0x4a, 0x44, 0xc7, 0x8e, 0x88, 0x87, 0xf6, 0xdc, 0x40, 0x86, 0xbd, 0xc7, 0xe9, 0xbf, 0x94, 0xc9, 0x2c, 0x84, 0xaa, 0xf4, 0x8e, 0xfb, 0x02, 0x69, 0x20, 0x5b, 0x8b, 0xd6, 0xe3, 0x24, 0x22, 0x4d, 0xf1, 0x78, 0x6f, 0x43, 0x0a, 0x19, 0x37, 0xfc, 0x04, 0x63, 0x14, 0x3c, 0x80, 0xa0, 0xe1, 0x32, 0x07, 0x4a, 0x64, 0xac, 0xc8, 0x25, 0xc2, 0xf4, 0xed, 0x8b, 0x0d, 0xe0, 0x32, 0x04, 0xa6, 0x81, 0xbf, 0x17, 0x1e, 0x9e, 0x00, 0x2a, 0x88, 0x43, 0x1f, 0xd3, 0x88, 0xc7, 0xa9, 0x06, 0x51, 0x11, 0x71, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8531 = { .name = "ecdsa_secp384r1_sha3_384_8531", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8531_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8531_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8531_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8532 for ECDSA, tcId is 320 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8532_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8532_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x39, 0x36, 0x36, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_384_8532_sig[] = { 0xd1, 0xd3, 0x35, 0xdc, 0xa8, 0x3a, 0x7e, 0xf4, 0x77, 0x0e, 0x68, 0xff, 0x82, 0xd2, 0xbb, 0x75, 0x34, 0x1a, 0xbf, 0x72, 0xa3, 0x62, 0xc8, 0x8d, 0x8a, 0x17, 0x60, 0x20, 0xdb, 0x37, 0xbf, 0xd5, 0x87, 0x4e, 0x14, 0xc0, 0xcb, 0x01, 0x1c, 0xb3, 0x16, 0xbc, 0x6e, 0x6d, 0x13, 0x22, 0xa8, 0x93, 0xc6, 0x1f, 0xc7, 0xdd, 0x9f, 0x66, 0xb8, 0xcf, 0x2f, 0x8c, 0x9a, 0x78, 0x00, 0x89, 0xfe, 0x31, 0xa2, 0x06, 0x08, 0xb4, 0x58, 0xea, 0x12, 0xa2, 0x46, 0xa1, 0xcb, 0xa3, 0x45, 0x66, 0xc2, 0xd8, 0x33, 0xa7, 0x1b, 0xbe, 0x09, 0x48, 0x2a, 0xd3, 0xc2, 0x6b, 0xf9, 0xbb, 0x60, 0x88, 0xfd, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8532 = { .name = "ecdsa_secp384r1_sha3_384_8532", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8532_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8532_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8532_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8533 for ECDSA, tcId is 321 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8533_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8533_msg[] = { 0x32, 0x38, 0x38, 0x30, 0x30, 0x37, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_384_8533_sig[] = { 0x53, 0x61, 0x83, 0x37, 0x4f, 0xa3, 0x7f, 0x21, 0x07, 0x23, 0xfe, 0x3a, 0xab, 0xde, 0x18, 0x99, 0x7b, 0xe2, 0x47, 0xbe, 0x00, 0x6e, 0x20, 0xc5, 0xd1, 0x7d, 0x8e, 0x4c, 0x79, 0x79, 0x0d, 0xdf, 0xe4, 0xe6, 0xf1, 0x7f, 0x88, 0x23, 0xd3, 0x6a, 0xce, 0xee, 0xa2, 0x2c, 0x9e, 0x44, 0xba, 0x9d, 0xb6, 0xa0, 0xf6, 0x3b, 0x27, 0x87, 0x6d, 0x16, 0x86, 0xb9, 0xe6, 0x01, 0xc2, 0x73, 0xc2, 0x05, 0x30, 0xc7, 0x65, 0xe5, 0x06, 0x60, 0x5c, 0xea, 0x39, 0xd9, 0xac, 0xcb, 0xa9, 0xa7, 0x00, 0x7b, 0xb1, 0x0d, 0x64, 0x33, 0x3e, 0x5e, 0x22, 0x12, 0x5f, 0x34, 0xd1, 0xdf, 0xc8, 0xe6, 0x04, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8533 = { .name = "ecdsa_secp384r1_sha3_384_8533", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8533_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8533_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8533_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8534 for ECDSA, tcId is 322 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8534_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8534_msg[] = { 0x31, 0x36, 0x37, 0x39, 0x37, 0x33, 0x36, 0x31, 0x32, 0x31, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8534_sig[] = { 0x2f, 0xa6, 0x07, 0x3f, 0xd2, 0x90, 0xa6, 0x99, 0xff, 0x0a, 0x4b, 0xd4, 0x25, 0xa6, 0x9d, 0x4e, 0x15, 0x1a, 0x3e, 0xc3, 0xfa, 0xa6, 0x5c, 0x50, 0x4d, 0x5e, 0x41, 0xb4, 0x5c, 0x2a, 0x73, 0x8d, 0x34, 0x3a, 0x99, 0x86, 0x56, 0x90, 0xbc, 0xc2, 0x2c, 0x03, 0x23, 0x0c, 0x39, 0x49, 0xce, 0x3f, 0x39, 0x89, 0xdd, 0x2d, 0x63, 0x20, 0x07, 0xc4, 0x98, 0xed, 0x83, 0x0d, 0x27, 0x7c, 0xc1, 0x19, 0x35, 0x90, 0xf2, 0x3f, 0xe5, 0xe7, 0x78, 0xde, 0xef, 0xfd, 0xbb, 0x2c, 0x13, 0x52, 0x58, 0x32, 0x7b, 0x12, 0x1a, 0x81, 0x31, 0x3a, 0x0b, 0xcc, 0x9f, 0x77, 0xdb, 0x20, 0x6a, 0xfd, 0xdd, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8534 = { .name = "ecdsa_secp384r1_sha3_384_8534", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8534_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8534_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8534_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8535 for ECDSA, tcId is 323 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8535_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8535_msg[] = { 0x32, 0x32, 0x35, 0x35, 0x38, 0x33, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_384_8535_sig[] = { 0xcf, 0x60, 0xfb, 0x97, 0x89, 0xb4, 0x49, 0xac, 0x9b, 0x9f, 0x02, 0x2d, 0xc8, 0x34, 0x81, 0x77, 0x76, 0x75, 0xe5, 0x5f, 0x09, 0xb4, 0xcb, 0xa5, 0xd8, 0x34, 0x9c, 0x0e, 0x16, 0x90, 0x7f, 0x89, 0x29, 0xe3, 0xb5, 0x38, 0xcc, 0xe4, 0xd7, 0x1c, 0x01, 0xb0, 0x10, 0xa6, 0x33, 0x80, 0x79, 0x97, 0x67, 0x65, 0x4a, 0x0b, 0xeb, 0xf3, 0xa6, 0x3f, 0xa9, 0x3c, 0xf9, 0x90, 0x6c, 0x84, 0x6c, 0xf5, 0xed, 0xbb, 0x03, 0x96, 0x8c, 0x86, 0xee, 0xf5, 0xe7, 0x55, 0x5a, 0x14, 0xd6, 0x06, 0x00, 0x90, 0x06, 0xf9, 0xf9, 0xe4, 0x56, 0x9b, 0xe3, 0x37, 0x5a, 0x9a, 0x8a, 0xa0, 0x4a, 0xa2, 0x0c, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8535 = { .name = "ecdsa_secp384r1_sha3_384_8535", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8535_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8535_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_384_8535_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8536 for ECDSA, tcId is 324 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8536_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8536_msg[] = { 0x32, 0x36, 0x39, 0x32, 0x38, 0x34, 0x34, 0x33, 0x34, 0x33, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_384_8536_sig[] = { 0x6a, 0xb2, 0x3c, 0x76, 0x78, 0x4d, 0x00, 0x3e, 0xc5, 0x08, 0x23, 0x3f, 0x7f, 0x5e, 0x64, 0x61, 0xd6, 0x80, 0x6c, 0x66, 0xaf, 0x62, 0xc4, 0x76, 0x9d, 0x45, 0xec, 0x87, 0x51, 0xd2, 0x76, 0xbd, 0xb6, 0x8b, 0x2e, 0xfc, 0x4f, 0xcf, 0x83, 0xf6, 0x75, 0xa3, 0x10, 0x19, 0x41, 0xf9, 0xad, 0xec, 0x6f, 0x30, 0x6b, 0xd6, 0xf7, 0x82, 0xab, 0xa3, 0xc7, 0xd0, 0xc0, 0xd6, 0xc0, 0xe0, 0xe8, 0x89, 0x7f, 0x96, 0x7f, 0x0d, 0xe2, 0xa8, 0x4d, 0xb1, 0xd6, 0x7e, 0x47, 0x73, 0x78, 0xea, 0x42, 0x5d, 0xcc, 0x6f, 0xc6, 0x11, 0x3e, 0x5a, 0x5f, 0x67, 0xac, 0x34, 0xec, 0xa2, 0xc6, 0x9d, 0x0b, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8536 = { .name = "ecdsa_secp384r1_sha3_384_8536", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8536_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8536_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_384_8536_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8537 for ECDSA, tcId is 325 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8537_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8537_msg[] = { 0x36, 0x32, 0x37, 0x34, 0x38, 0x30, 0x32, 0x32, 0x32, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_384_8537_sig[] = { 0x52, 0x63, 0x65, 0xe3, 0x64, 0x72, 0x88, 0x36, 0x64, 0xeb, 0x01, 0x1b, 0xdf, 0x9a, 0x15, 0x03, 0x39, 0x7f, 0x0e, 0x35, 0x09, 0x06, 0x66, 0x65, 0xf9, 0xc2, 0x76, 0xe3, 0x67, 0xcf, 0x27, 0x30, 0x77, 0x4d, 0x45, 0x25, 0x12, 0x5c, 0xad, 0xcc, 0xfe, 0xf0, 0xc0, 0xcf, 0x28, 0x94, 0x9a, 0x2b, 0x94, 0x8c, 0xba, 0xf1, 0xc0, 0xe7, 0xf0, 0xcc, 0xca, 0x5f, 0x5d, 0x2a, 0x7e, 0x4a, 0x94, 0xf4, 0xa7, 0xec, 0x43, 0xd2, 0xcf, 0x69, 0xae, 0x5e, 0xbe, 0xcb, 0x41, 0x52, 0x1d, 0xaa, 0x9e, 0x61, 0x86, 0x15, 0x20, 0x8c, 0xb6, 0x2b, 0x35, 0x80, 0x9f, 0xc4, 0x04, 0x01, 0x67, 0x0a, 0xe3, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8537 = { .name = "ecdsa_secp384r1_sha3_384_8537", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8537_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8537_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8537_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8538 for ECDSA, tcId is 326 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8538_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8538_msg[] = { 0x31, 0x31, 0x34, 0x39, 0x32, 0x34, 0x31, 0x36, 0x34, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_384_8538_sig[] = { 0xb1, 0xcf, 0x39, 0xb0, 0x23, 0x50, 0x2a, 0x1a, 0xa3, 0xda, 0xca, 0x37, 0x2c, 0x29, 0x5c, 0x1e, 0xb3, 0xc5, 0xfe, 0xe2, 0xa8, 0x41, 0xef, 0x2c, 0xfd, 0x40, 0x87, 0xff, 0xdd, 0x4e, 0x35, 0xe8, 0x80, 0x4b, 0x8d, 0x87, 0x9a, 0x93, 0x92, 0x16, 0xd2, 0x4f, 0xae, 0x1b, 0xd1, 0xe7, 0xf1, 0x9a, 0x8b, 0x8b, 0xea, 0x55, 0xa9, 0x62, 0x5e, 0xfb, 0x97, 0x33, 0xd1, 0xdc, 0xfa, 0xd8, 0xd4, 0x26, 0xb8, 0x1c, 0x9e, 0x71, 0xfb, 0x53, 0xb2, 0x46, 0xae, 0x54, 0xc3, 0x19, 0x69, 0x72, 0xd2, 0x84, 0x17, 0x2e, 0x6b, 0x19, 0x11, 0xba, 0xfe, 0x6b, 0x63, 0x1e, 0x5e, 0x48, 0x34, 0x4c, 0x44, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8538 = { .name = "ecdsa_secp384r1_sha3_384_8538", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8538_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8538_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_384_8538_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8539 for ECDSA, tcId is 327 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8539_pubkey[] = { 0xd7, 0xde, 0xa8, 0xac, 0x1e, 0x4b, 0x9a, 0xea, 0x2d, 0x3d, 0x1a, 0xd7, 0xd6, 0xa8, 0x77, 0xe1, 0x16, 0xa8, 0xbc, 0xdb, 0x87, 0xc8, 0x46, 0x3c, 0x69, 0xad, 0x78, 0xf8, 0x07, 0x4f, 0x33, 0xb2, 0xc1, 0x79, 0xac, 0x05, 0x80, 0xaf, 0x90, 0x1d, 0x21, 0x85, 0x1c, 0xf1, 0x5b, 0x3a, 0x5e, 0x34, 0x2a, 0x08, 0x81, 0x98, 0xc0, 0x90, 0xb9, 0xe3, 0x67, 0x69, 0x5a, 0x1c, 0x7f, 0xa1, 0x10, 0xb6, 0x68, 0x28, 0xd8, 0xf0, 0x7b, 0xaf, 0xe6, 0xeb, 0x25, 0x21, 0xdd, 0x20, 0xe5, 0x17, 0xce, 0xbd, 0x29, 0x5c, 0xc9, 0xcc, 0xe5, 0x2e, 0x0c, 0x00, 0x81, 0xb4, 0xcf, 0x7f, 0xe5, 0xea, 0x88, 0x4e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8539_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8539_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8539 = { .name = "ecdsa_secp384r1_sha3_384_8539", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8539_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8539_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8539_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 327 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8540 for ECDSA, tcId is 328 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8540_pubkey[] = { 0xd7, 0xde, 0xa8, 0xac, 0x1e, 0x4b, 0x9a, 0xea, 0x2d, 0x3d, 0x1a, 0xd7, 0xd6, 0xa8, 0x77, 0xe1, 0x16, 0xa8, 0xbc, 0xdb, 0x87, 0xc8, 0x46, 0x3c, 0x69, 0xad, 0x78, 0xf8, 0x07, 0x4f, 0x33, 0xb2, 0xc1, 0x79, 0xac, 0x05, 0x80, 0xaf, 0x90, 0x1d, 0x21, 0x85, 0x1c, 0xf1, 0x5b, 0x3a, 0x5e, 0x34, 0x2a, 0x08, 0x81, 0x98, 0xc0, 0x90, 0xb9, 0xe3, 0x67, 0x69, 0x5a, 0x1c, 0x7f, 0xa1, 0x10, 0xb6, 0x68, 0x28, 0xd8, 0xf0, 0x7b, 0xaf, 0xe6, 0xeb, 0x25, 0x21, 0xdd, 0x20, 0xe5, 0x17, 0xce, 0xbd, 0x29, 0x5c, 0xc9, 0xcc, 0xe5, 0x2e, 0x0c, 0x00, 0x81, 0xb4, 0xcf, 0x7f, 0xe5, 0xea, 0x88, 0x4e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8540_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8540_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8540 = { .name = "ecdsa_secp384r1_sha3_384_8540", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8540_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8540_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8540_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 328 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8541 for ECDSA, tcId is 329 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8541_pubkey[] = { 0xcb, 0xa0, 0xcc, 0x09, 0x7c, 0x79, 0x5c, 0xd4, 0x67, 0xd8, 0x35, 0x97, 0x77, 0x64, 0xb7, 0x74, 0x0f, 0xa4, 0x80, 0xc3, 0xca, 0xd8, 0x3a, 0x72, 0x6d, 0x68, 0xbb, 0xfe, 0x8d, 0xbb, 0x75, 0x29, 0x34, 0xeb, 0x4f, 0xb6, 0xc7, 0x67, 0xdc, 0x09, 0xbd, 0xda, 0x6d, 0x0d, 0x2d, 0x05, 0x7a, 0xe8, 0xe2, 0x77, 0xc7, 0xad, 0x56, 0xd6, 0xf2, 0x10, 0x99, 0xd9, 0x98, 0xe7, 0xbf, 0xde, 0xd8, 0xc8, 0xd2, 0xd1, 0x00, 0xc8, 0xeb, 0xd9, 0xf5, 0x76, 0x81, 0xa6, 0x33, 0xb9, 0x1a, 0xd0, 0x89, 0x0c, 0x02, 0x0e, 0x72, 0x46, 0x89, 0xc6, 0xb1, 0xb4, 0xb8, 0xf3, 0x5b, 0x49, 0x67, 0x9a, 0x4f, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_384_8541_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8541_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8541 = { .name = "ecdsa_secp384r1_sha3_384_8541", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8541_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8541_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8541_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 329 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8542 for ECDSA, tcId is 330 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8542_pubkey[] = { 0xff, 0xc2, 0x71, 0xe3, 0x11, 0xce, 0xfc, 0x1c, 0x13, 0x32, 0x02, 0x44, 0x8e, 0x2e, 0xe7, 0x44, 0x57, 0xbb, 0x68, 0x95, 0x1b, 0x0e, 0x57, 0x57, 0x47, 0xcc, 0x6e, 0xe9, 0xc0, 0x69, 0x17, 0x20, 0xbc, 0xf9, 0xeb, 0xa2, 0x3c, 0x18, 0xf9, 0x6e, 0x84, 0x5c, 0xda, 0x05, 0xe0, 0x6d, 0x4f, 0x7b, 0xdc, 0x7c, 0x5d, 0x17, 0xe9, 0x1f, 0x12, 0xab, 0xf3, 0x63, 0x8f, 0xc8, 0xe8, 0x78, 0x66, 0xf0, 0x37, 0x3f, 0x0f, 0xfa, 0x90, 0xc2, 0xc7, 0x59, 0x71, 0x2d, 0x3f, 0xb1, 0x63, 0x73, 0x0a, 0x18, 0x4e, 0x47, 0x07, 0xef, 0x42, 0x4e, 0xf8, 0x33, 0x07, 0x9c, 0x0e, 0xd5, 0xe1, 0x49, 0x83, 0x44, }; static const unsigned char ecdsa_secp384r1_sha3_384_8542_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8542_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8542 = { .name = "ecdsa_secp384r1_sha3_384_8542", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8542_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8542_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8542_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 330 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8543 for ECDSA, tcId is 331 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8543_pubkey[] = { 0x74, 0xae, 0x98, 0x7a, 0xf3, 0xa0, 0xeb, 0xd9, 0xf9, 0xa4, 0xf5, 0x7b, 0xe2, 0xd7, 0xd1, 0xc0, 0x79, 0xc9, 0xec, 0x79, 0x28, 0xa1, 0xda, 0x8c, 0x38, 0xff, 0x0c, 0x2b, 0x9b, 0xd9, 0x82, 0x2f, 0xa7, 0x60, 0x3d, 0xec, 0xc1, 0xbe, 0xca, 0xbd, 0x3f, 0x6c, 0xee, 0xbb, 0x35, 0x3c, 0xb7, 0x98, 0xe0, 0xc9, 0xac, 0x6f, 0x4f, 0x57, 0x5f, 0xa1, 0xed, 0x2d, 0xaf, 0x36, 0x22, 0x4d, 0x09, 0xaa, 0x56, 0x9f, 0x8b, 0x1d, 0x25, 0xb6, 0x2f, 0xba, 0xed, 0xdf, 0x76, 0x6a, 0x34, 0xb9, 0x30, 0x90, 0x00, 0xcc, 0xe2, 0x44, 0x70, 0x17, 0xa5, 0xcd, 0x8a, 0x3c, 0xe7, 0x6d, 0xd5, 0x42, 0x8f, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8543_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8543_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8543 = { .name = "ecdsa_secp384r1_sha3_384_8543", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8543_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8543_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8543_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 331 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8544 for ECDSA, tcId is 332 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8544_pubkey[] = { 0xdc, 0x23, 0x28, 0x0a, 0xe6, 0x27, 0x10, 0x9b, 0x86, 0xd6, 0x0b, 0xe0, 0xe7, 0x0c, 0xec, 0x05, 0x82, 0xa5, 0xb3, 0x18, 0xfa, 0x82, 0x54, 0xdf, 0xcb, 0x97, 0x04, 0x5e, 0xef, 0xdf, 0x1a, 0xa2, 0x72, 0x93, 0x7d, 0xe9, 0x9c, 0x6b, 0x39, 0x72, 0xc4, 0xcd, 0x10, 0x8b, 0x4f, 0xc6, 0x81, 0xcc, 0x0e, 0xc5, 0x43, 0x8a, 0x5d, 0x44, 0x90, 0x8c, 0x47, 0x9d, 0xa4, 0x28, 0xe5, 0xb2, 0xe4, 0xf5, 0xae, 0x93, 0xbf, 0x82, 0xb4, 0x27, 0xd8, 0xdc, 0xa9, 0x96, 0xe2, 0x3d, 0x93, 0x07, 0x00, 0x08, 0x28, 0x28, 0x11, 0x2f, 0xaa, 0xc7, 0xf7, 0x10, 0x92, 0x8d, 0xaa, 0x67, 0x0b, 0x75, 0x76, 0xcb, }; static const unsigned char ecdsa_secp384r1_sha3_384_8544_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8544_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8544 = { .name = "ecdsa_secp384r1_sha3_384_8544", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8544_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8544_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8544_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 332 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8545 for ECDSA, tcId is 333 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8545_pubkey[] = { 0x9b, 0xdf, 0x0a, 0x77, 0x93, 0xd0, 0x37, 0x5a, 0x89, 0x6a, 0x7f, 0x30, 0x84, 0xd3, 0xc4, 0x5f, 0x8d, 0xfc, 0xd7, 0xf7, 0x3d, 0x04, 0x54, 0x84, 0xe7, 0x11, 0x28, 0x71, 0x3c, 0xab, 0x49, 0xb4, 0xc2, 0x18, 0xaf, 0x17, 0xe0, 0x48, 0xfa, 0x6d, 0xbe, 0x32, 0xf2, 0xe2, 0x89, 0xee, 0x83, 0x95, 0x0b, 0xe2, 0x8a, 0x09, 0x0c, 0x2f, 0x67, 0x69, 0xf8, 0x5e, 0x5f, 0xf1, 0xcf, 0xb3, 0x00, 0xbd, 0x0a, 0xe9, 0x07, 0xb5, 0xd5, 0x36, 0x7e, 0xde, 0x98, 0xdf, 0xd3, 0xe6, 0xa8, 0x1c, 0x4b, 0x49, 0x03, 0x28, 0x99, 0x73, 0x28, 0x5a, 0x4e, 0xf9, 0x1b, 0x79, 0x0a, 0xd1, 0x27, 0x61, 0x32, 0x1c, }; static const unsigned char ecdsa_secp384r1_sha3_384_8545_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8545_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8545 = { .name = "ecdsa_secp384r1_sha3_384_8545", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8545_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8545_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8545_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 333 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8546 for ECDSA, tcId is 334 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8546_pubkey[] = { 0x90, 0x77, 0x05, 0x15, 0xf2, 0x73, 0x51, 0x11, 0x1e, 0x56, 0xd3, 0xbf, 0x14, 0xfe, 0x39, 0x2d, 0x42, 0x18, 0x6c, 0xb8, 0x70, 0x37, 0x4a, 0x8d, 0x40, 0x87, 0x08, 0x30, 0x05, 0x7b, 0xf5, 0x2d, 0xa8, 0xc2, 0xe2, 0x76, 0x91, 0x23, 0x6a, 0x0d, 0xe2, 0x87, 0x68, 0x93, 0xf9, 0xb7, 0x7a, 0xb2, 0xfb, 0x1c, 0xb5, 0xdc, 0xfd, 0x30, 0xe3, 0xa2, 0xa0, 0x05, 0x6a, 0x5d, 0xbb, 0xc1, 0xc5, 0xd6, 0x26, 0xba, 0x66, 0x9c, 0xbb, 0xfe, 0x8b, 0xdb, 0x12, 0x1d, 0xe7, 0xcc, 0x39, 0x4a, 0x61, 0x72, 0x1d, 0x5c, 0x3c, 0x73, 0xa3, 0xf5, 0xde, 0xa9, 0x38, 0x8c, 0xad, 0x7f, 0xbc, 0xa7, 0x26, 0x49, }; static const unsigned char ecdsa_secp384r1_sha3_384_8546_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8546_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8546 = { .name = "ecdsa_secp384r1_sha3_384_8546", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8546_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8546_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8546_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 334 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8547 for ECDSA, tcId is 335 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8547_pubkey[] = { 0x90, 0x77, 0x05, 0x15, 0xf2, 0x73, 0x51, 0x11, 0x1e, 0x56, 0xd3, 0xbf, 0x14, 0xfe, 0x39, 0x2d, 0x42, 0x18, 0x6c, 0xb8, 0x70, 0x37, 0x4a, 0x8d, 0x40, 0x87, 0x08, 0x30, 0x05, 0x7b, 0xf5, 0x2d, 0xa8, 0xc2, 0xe2, 0x76, 0x91, 0x23, 0x6a, 0x0d, 0xe2, 0x87, 0x68, 0x93, 0xf9, 0xb7, 0x7a, 0xb2, 0xfb, 0x1c, 0xb5, 0xdc, 0xfd, 0x30, 0xe3, 0xa2, 0xa0, 0x05, 0x6a, 0x5d, 0xbb, 0xc1, 0xc5, 0xd6, 0x26, 0xba, 0x66, 0x9c, 0xbb, 0xfe, 0x8b, 0xdb, 0x12, 0x1d, 0xe7, 0xcc, 0x39, 0x4a, 0x61, 0x72, 0x1d, 0x5c, 0x3c, 0x73, 0xa3, 0xf5, 0xde, 0xa9, 0x38, 0x8c, 0xad, 0x7f, 0xbc, 0xa7, 0x26, 0x49, }; static const unsigned char ecdsa_secp384r1_sha3_384_8547_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8547_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8547 = { .name = "ecdsa_secp384r1_sha3_384_8547", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8547_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8547_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8547_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 335 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8548 for ECDSA, tcId is 336 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8548_pubkey[] = { 0xf7, 0xf5, 0xf9, 0x38, 0x2d, 0xa5, 0xdd, 0x3d, 0x41, 0xcc, 0x2d, 0x4e, 0x62, 0x57, 0x0b, 0x58, 0x1b, 0x67, 0xdc, 0x2a, 0xd4, 0x56, 0xde, 0x3a, 0xf7, 0x5a, 0xd1, 0xce, 0x7b, 0xe2, 0x7a, 0xf8, 0xa7, 0x77, 0x71, 0xe6, 0x7a, 0x08, 0xf2, 0xdc, 0x87, 0xac, 0x91, 0xc5, 0xa7, 0x44, 0x88, 0x6c, 0xf7, 0x19, 0x4e, 0x81, 0x91, 0x62, 0x86, 0x2c, 0xb7, 0xc3, 0x9e, 0x39, 0x44, 0x5d, 0xa6, 0x3a, 0xdf, 0xe1, 0x07, 0x04, 0xef, 0x74, 0x07, 0xf1, 0xfc, 0xef, 0x06, 0x2c, 0x8f, 0x86, 0x72, 0x9c, 0x70, 0x0d, 0xa4, 0xf9, 0xe7, 0x47, 0xc5, 0xc7, 0x7e, 0x32, 0xdd, 0x25, 0xe7, 0xf8, 0x67, 0xaf, }; static const unsigned char ecdsa_secp384r1_sha3_384_8548_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8548_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8548 = { .name = "ecdsa_secp384r1_sha3_384_8548", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8548_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8548_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8548_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 336 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8549 for ECDSA, tcId is 337 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8549_pubkey[] = { 0x24, 0xf0, 0xd5, 0x9e, 0x6b, 0xab, 0x85, 0xcc, 0xe6, 0x38, 0x23, 0xe4, 0xb0, 0x75, 0xc9, 0x15, 0x20, 0xe0, 0xf7, 0x09, 0x0c, 0x58, 0xdb, 0xae, 0x24, 0x77, 0x4e, 0xf2, 0x59, 0x17, 0xcf, 0x9f, 0xab, 0x10, 0x30, 0x51, 0x3f, 0x4a, 0x10, 0xb8, 0x4c, 0x59, 0xdf, 0x52, 0x9b, 0xc1, 0xd3, 0xb1, 0x24, 0x69, 0xf2, 0x3a, 0x67, 0x4b, 0xf4, 0x9a, 0x03, 0x83, 0xd2, 0x39, 0xca, 0x15, 0x67, 0x67, 0x04, 0xea, 0xb8, 0x6b, 0xd3, 0x14, 0x9e, 0xa0, 0x41, 0xa2, 0x74, 0x64, 0x38, 0x66, 0x64, 0x3b, 0x78, 0x6b, 0xb1, 0x7c, 0x5d, 0x0f, 0x10, 0xdb, 0xf2, 0xbf, 0xc7, 0x75, 0xc7, 0x08, 0x7c, 0xc1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8549_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8549_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8549 = { .name = "ecdsa_secp384r1_sha3_384_8549", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8549_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8549_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8549_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 337 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8550 for ECDSA, tcId is 338 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8550_pubkey[] = { 0x39, 0x83, 0x3a, 0xec, 0x75, 0x15, 0xda, 0xcd, 0x95, 0x46, 0xba, 0xb8, 0xdc, 0x74, 0x04, 0x17, 0xf1, 0x4d, 0x20, 0x0b, 0xd2, 0x60, 0x41, 0xbb, 0xf4, 0x32, 0x66, 0xa8, 0x64, 0x46, 0x28, 0xda, 0x82, 0xdb, 0xf5, 0x30, 0x97, 0xfe, 0x43, 0xdc, 0xa1, 0xc9, 0x2b, 0x09, 0x83, 0x24, 0x66, 0xec, 0x67, 0xf8, 0x62, 0xc0, 0x2c, 0x89, 0x11, 0x34, 0x3a, 0x14, 0x6f, 0xdd, 0xc8, 0x24, 0x6c, 0x16, 0x83, 0x76, 0xe4, 0x16, 0x6e, 0x32, 0xba, 0xd3, 0x9d, 0xb5, 0xbe, 0x2b, 0x74, 0xe5, 0x84, 0x10, 0xb4, 0xe9, 0xcc, 0x47, 0x01, 0xdd, 0x0b, 0x97, 0xba, 0x54, 0x41, 0x42, 0xe6, 0x6d, 0x77, 0x15, }; static const unsigned char ecdsa_secp384r1_sha3_384_8550_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8550_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8550 = { .name = "ecdsa_secp384r1_sha3_384_8550", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8550_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8550_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8550_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 338 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8551 for ECDSA, tcId is 339 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8551_pubkey[] = { 0x6c, 0xc5, 0xf5, 0x64, 0x0d, 0x39, 0x6d, 0xe2, 0x5e, 0x6b, 0x81, 0x33, 0x1c, 0x1d, 0x4f, 0xeb, 0xa4, 0x18, 0x31, 0x9f, 0x98, 0x4d, 0x8a, 0x1e, 0x17, 0x9d, 0xa5, 0x97, 0x39, 0xd0, 0xd4, 0x09, 0x71, 0x58, 0x5e, 0x7c, 0x02, 0xd6, 0x8c, 0x9a, 0x62, 0xd4, 0x26, 0xca, 0x59, 0x12, 0x8e, 0x0f, 0xfe, 0xab, 0x57, 0x96, 0x3b, 0x96, 0x53, 0x02, 0xcf, 0xfe, 0x96, 0x45, 0xcf, 0x3e, 0xe4, 0x49, 0x84, 0x63, 0x81, 0xd8, 0x2d, 0x58, 0x14, 0xe8, 0xca, 0x77, 0x16, 0x7c, 0xcf, 0x4c, 0x20, 0xec, 0x54, 0x27, 0x8e, 0x87, 0x4f, 0x83, 0x47, 0x25, 0xd2, 0x2e, 0x82, 0xb9, 0x10, 0xc2, 0x4c, 0x2a, }; static const unsigned char ecdsa_secp384r1_sha3_384_8551_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8551_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8551 = { .name = "ecdsa_secp384r1_sha3_384_8551", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8551_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8551_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8551_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 339 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8552 for ECDSA, tcId is 340 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8552_pubkey[] = { 0x56, 0x7e, 0x09, 0x86, 0xa8, 0x9e, 0x4a, 0x51, 0xff, 0x44, 0xef, 0xdf, 0x92, 0x4e, 0x99, 0x70, 0xcb, 0xda, 0xf5, 0x79, 0x6d, 0xea, 0x61, 0x7f, 0x93, 0xe6, 0xe5, 0x13, 0xf7, 0x3c, 0xb5, 0x29, 0xe7, 0xa6, 0x66, 0xbd, 0x43, 0x38, 0x46, 0x5c, 0x90, 0xdd, 0xd3, 0xf6, 0x18, 0x23, 0xd6, 0x18, 0x5b, 0x25, 0x2f, 0x20, 0x92, 0x1f, 0x66, 0xa7, 0x2d, 0xfc, 0xd4, 0xd1, 0xe3, 0x23, 0xaa, 0x05, 0x48, 0x7a, 0xbb, 0x16, 0xc7, 0x97, 0x82, 0x0f, 0x34, 0x9d, 0xaa, 0x04, 0x72, 0x4f, 0x6a, 0x0e, 0x81, 0x42, 0x3d, 0xdf, 0x74, 0xfd, 0xb1, 0x7f, 0x08, 0x01, 0xd6, 0x35, 0xd7, 0xaf, 0x21, 0x3d, }; static const unsigned char ecdsa_secp384r1_sha3_384_8552_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8552_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8552 = { .name = "ecdsa_secp384r1_sha3_384_8552", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8552_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8552_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8552_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 340 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8553 for ECDSA, tcId is 341 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8553_pubkey[] = { 0x95, 0x51, 0x2f, 0x92, 0xe5, 0x5b, 0x5d, 0x18, 0x00, 0x33, 0x97, 0xb8, 0x22, 0xc1, 0x17, 0x3f, 0x4e, 0x25, 0xa2, 0x64, 0x0a, 0x4a, 0x68, 0xbb, 0x88, 0x0a, 0x6c, 0xa8, 0x60, 0x5c, 0xbf, 0xb8, 0x3c, 0x75, 0xdb, 0xdd, 0xc4, 0x93, 0x7e, 0xd8, 0x22, 0xe5, 0x6a, 0xcd, 0xe8, 0xf4, 0x7c, 0x73, 0x48, 0xe4, 0xff, 0x02, 0x7a, 0x1b, 0x0a, 0x2d, 0x57, 0x90, 0xf6, 0x8c, 0x69, 0x92, 0x3f, 0x32, 0x31, 0xac, 0x61, 0x07, 0x4c, 0xaa, 0xd2, 0xa0, 0x22, 0xf6, 0xea, 0xbf, 0x8c, 0x25, 0x8b, 0xdb, 0x81, 0x42, 0xbe, 0x43, 0xff, 0xa1, 0x6a, 0x6f, 0x2c, 0x52, 0xf3, 0x3c, 0xba, 0x00, 0x64, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_384_8553_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8553_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8553 = { .name = "ecdsa_secp384r1_sha3_384_8553", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8553_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8553_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8553_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 341 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8554 for ECDSA, tcId is 342 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8554_pubkey[] = { 0x74, 0xd5, 0x67, 0x9e, 0x10, 0xed, 0xc4, 0x1e, 0xb0, 0x6b, 0xa5, 0x4a, 0x1d, 0xe2, 0xc9, 0xc7, 0x18, 0x20, 0xbb, 0xac, 0x14, 0xf3, 0x75, 0x8b, 0xb7, 0xfb, 0x59, 0x3d, 0xdd, 0xbb, 0x2e, 0x57, 0x3e, 0x0d, 0x7a, 0x78, 0x53, 0x44, 0x96, 0x13, 0x99, 0xda, 0x18, 0xc8, 0xf6, 0x15, 0xae, 0x1d, 0xf7, 0x1e, 0x1c, 0x0e, 0xa8, 0x92, 0x93, 0x15, 0x71, 0xda, 0x09, 0x43, 0x2a, 0xc4, 0x6f, 0x6c, 0xbf, 0x53, 0x12, 0x9e, 0x1e, 0x3e, 0x74, 0xc5, 0x67, 0x18, 0x0c, 0x03, 0x7d, 0xf5, 0x9d, 0xa8, 0x4c, 0x83, 0x74, 0xb2, 0x95, 0xb5, 0xa0, 0xec, 0x61, 0x00, 0xce, 0x9d, 0x80, 0x0c, 0xd0, 0x5e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8554_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8554_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8554 = { .name = "ecdsa_secp384r1_sha3_384_8554", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8554_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8554_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8554_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 342 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8555 for ECDSA, tcId is 343 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8555_pubkey[] = { 0x17, 0x64, 0xc8, 0x3f, 0xf4, 0xc2, 0x8f, 0x7b, 0x69, 0x0c, 0xa1, 0xc4, 0xb0, 0x58, 0x32, 0xd7, 0x83, 0x94, 0xf0, 0xaa, 0x48, 0xde, 0x45, 0x2e, 0xb7, 0xb4, 0x70, 0x52, 0x6f, 0x40, 0x99, 0xd4, 0x5d, 0xe5, 0x63, 0xb5, 0x06, 0xc1, 0x57, 0x0e, 0xb9, 0xb0, 0xf8, 0x99, 0xa5, 0xf0, 0x3f, 0x5a, 0xff, 0x89, 0xe5, 0x62, 0x38, 0x5d, 0x77, 0xb2, 0xc5, 0xd4, 0x8d, 0xbb, 0x54, 0x50, 0x19, 0x60, 0x99, 0x75, 0x66, 0xbc, 0xa5, 0xdc, 0xde, 0xe1, 0x58, 0x48, 0xb9, 0x07, 0xee, 0x74, 0x57, 0xf8, 0xe4, 0x6a, 0x22, 0x1f, 0x64, 0x09, 0x1c, 0x36, 0xf8, 0xd3, 0x05, 0x31, 0x47, 0xc1, 0xa6, 0x28, }; static const unsigned char ecdsa_secp384r1_sha3_384_8555_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8555_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8555 = { .name = "ecdsa_secp384r1_sha3_384_8555", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8555_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8555_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8555_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 343 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8556 for ECDSA, tcId is 344 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8556_pubkey[] = { 0x17, 0x64, 0xc8, 0x3f, 0xf4, 0xc2, 0x8f, 0x7b, 0x69, 0x0c, 0xa1, 0xc4, 0xb0, 0x58, 0x32, 0xd7, 0x83, 0x94, 0xf0, 0xaa, 0x48, 0xde, 0x45, 0x2e, 0xb7, 0xb4, 0x70, 0x52, 0x6f, 0x40, 0x99, 0xd4, 0x5d, 0xe5, 0x63, 0xb5, 0x06, 0xc1, 0x57, 0x0e, 0xb9, 0xb0, 0xf8, 0x99, 0xa5, 0xf0, 0x3f, 0x5a, 0xff, 0x89, 0xe5, 0x62, 0x38, 0x5d, 0x77, 0xb2, 0xc5, 0xd4, 0x8d, 0xbb, 0x54, 0x50, 0x19, 0x60, 0x99, 0x75, 0x66, 0xbc, 0xa5, 0xdc, 0xde, 0xe1, 0x58, 0x48, 0xb9, 0x07, 0xee, 0x74, 0x57, 0xf8, 0xe4, 0x6a, 0x22, 0x1f, 0x64, 0x09, 0x1c, 0x36, 0xf8, 0xd3, 0x05, 0x31, 0x47, 0xc1, 0xa6, 0x28, }; static const unsigned char ecdsa_secp384r1_sha3_384_8556_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8556_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8556 = { .name = "ecdsa_secp384r1_sha3_384_8556", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8556_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8556_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8556_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 344 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8557 for ECDSA, tcId is 345 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8557_pubkey[] = { 0x10, 0x0f, 0xd7, 0xac, 0x4a, 0xe4, 0x42, 0xab, 0x98, 0x9f, 0x94, 0xa1, 0x0a, 0x1f, 0x31, 0x0f, 0x79, 0x9d, 0x76, 0x98, 0x0d, 0x00, 0xa1, 0x44, 0x18, 0xdb, 0x06, 0x7b, 0x14, 0x4b, 0xf4, 0x5f, 0xa7, 0x63, 0x94, 0x46, 0xfa, 0xd5, 0x08, 0xb7, 0x6f, 0xd3, 0xad, 0x9c, 0x9f, 0xe5, 0x58, 0x10, 0x69, 0x35, 0x98, 0x52, 0x9b, 0x83, 0x49, 0xa2, 0x8d, 0xd1, 0xd0, 0x63, 0x20, 0x39, 0xff, 0x08, 0x97, 0x52, 0x3f, 0xed, 0x9a, 0xf2, 0x35, 0x6c, 0x0e, 0x36, 0x61, 0x21, 0x35, 0xed, 0x62, 0x93, 0x69, 0x44, 0x8b, 0x97, 0xd1, 0x65, 0xae, 0x5b, 0x2f, 0xe5, 0xc5, 0xad, 0x39, 0x6d, 0x2b, 0x06, }; static const unsigned char ecdsa_secp384r1_sha3_384_8557_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8557_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8557 = { .name = "ecdsa_secp384r1_sha3_384_8557", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8557_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8557_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8557_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 345 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8558 for ECDSA, tcId is 346 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8558_pubkey[] = { 0xd9, 0xa0, 0x8d, 0x4f, 0x9f, 0x87, 0x08, 0x47, 0x1e, 0x2e, 0x6b, 0x04, 0xce, 0x08, 0x75, 0x0c, 0x39, 0x5b, 0x80, 0xf4, 0xa1, 0x41, 0x69, 0x12, 0x3e, 0x2f, 0xd9, 0x75, 0x56, 0xc1, 0x17, 0x1d, 0x82, 0xe8, 0x71, 0x65, 0xa7, 0x7b, 0x2d, 0xfd, 0x08, 0x9a, 0xd2, 0x53, 0x82, 0xef, 0x42, 0x51, 0x51, 0x7d, 0x0c, 0x26, 0xbe, 0xbf, 0xce, 0x84, 0x83, 0xbf, 0xb0, 0x89, 0x24, 0x3d, 0x82, 0xeb, 0x0e, 0x71, 0x2a, 0x7d, 0x2e, 0x7f, 0x71, 0xf9, 0xab, 0xb8, 0x2d, 0xdf, 0x16, 0xc2, 0xe5, 0x25, 0x14, 0x6c, 0x7d, 0xc5, 0x68, 0x6f, 0xb7, 0xad, 0x33, 0x40, 0x22, 0xad, 0x09, 0x2d, 0x32, 0xa4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8558_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8558_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8558 = { .name = "ecdsa_secp384r1_sha3_384_8558", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8558_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8558_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8558_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 346 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8559 for ECDSA, tcId is 347 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8559_pubkey[] = { 0x68, 0x13, 0x36, 0x53, 0x28, 0x4e, 0xe7, 0xe9, 0xa8, 0xcc, 0xcf, 0x58, 0x4a, 0x9e, 0x4f, 0x06, 0xbc, 0x31, 0xa3, 0xeb, 0x03, 0x19, 0x99, 0xf0, 0x22, 0x9d, 0xb7, 0xc2, 0xb1, 0x06, 0x30, 0x42, 0x4c, 0x7e, 0xe7, 0x51, 0x3e, 0x40, 0x31, 0x9e, 0x39, 0x72, 0xc1, 0xa5, 0x15, 0x2d, 0x5d, 0x28, 0xa5, 0x47, 0xa1, 0x7d, 0xf7, 0x30, 0xd8, 0x62, 0x78, 0xde, 0x44, 0xcc, 0x09, 0x96, 0x43, 0xeb, 0xe1, 0xf0, 0x7e, 0x48, 0x61, 0x8d, 0xe2, 0x55, 0xbc, 0x67, 0x2d, 0xff, 0x63, 0xc5, 0x8f, 0x86, 0xb2, 0xdb, 0x29, 0xc8, 0x9f, 0x10, 0x91, 0x47, 0xd8, 0xd6, 0xbe, 0x1f, 0x03, 0xc4, 0x66, 0xe5, }; static const unsigned char ecdsa_secp384r1_sha3_384_8559_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8559_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8559 = { .name = "ecdsa_secp384r1_sha3_384_8559", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8559_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8559_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8559_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 347 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8560 for ECDSA, tcId is 348 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8560_pubkey[] = { 0x23, 0x3c, 0x39, 0x95, 0x96, 0xe0, 0x90, 0xc1, 0x32, 0xc8, 0xe8, 0xb3, 0x3c, 0x2e, 0xd4, 0x43, 0xd7, 0x3a, 0xb9, 0xab, 0xaf, 0xae, 0xce, 0x5e, 0x47, 0xc6, 0xa6, 0xdc, 0x82, 0xd3, 0xfc, 0xc0, 0x06, 0xeb, 0xf8, 0xb5, 0xb1, 0xc5, 0xfd, 0x02, 0x8c, 0x97, 0x09, 0x79, 0x09, 0xd5, 0xbe, 0x38, 0x03, 0x5f, 0x77, 0x7d, 0xff, 0xaa, 0xc0, 0xef, 0x90, 0x9b, 0xbe, 0x6b, 0xe4, 0xe0, 0x1e, 0xcf, 0xae, 0x3b, 0x36, 0xb2, 0xea, 0x20, 0x95, 0xe3, 0x52, 0xc1, 0x79, 0x73, 0x79, 0x80, 0xf9, 0x61, 0x24, 0xd4, 0x5b, 0x76, 0x67, 0x72, 0x74, 0xd9, 0x75, 0xed, 0xa5, 0x74, 0x36, 0xf4, 0x53, 0xde, }; static const unsigned char ecdsa_secp384r1_sha3_384_8560_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8560_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xf8, 0x72, 0x30, 0x83, 0xbd, 0xe4, 0x8f, 0xae, 0x6e, 0x2f, 0x3b, 0xa5, 0xd8, 0x36, 0xc2, 0xe9, 0x54, 0xae, 0xc1, 0x13, 0x03, 0x08, 0x36, 0xfb, 0x97, 0x8c, 0x08, 0xab, 0x1b, 0x5a, 0x3d, 0xfe, 0x54, 0xaa, 0x2f, 0xab, 0x24, 0x23, 0x74, 0x7e, 0x3b, 0x4f, 0xa7, 0x0e, 0xc7, 0x44, 0x89, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8560 = { .name = "ecdsa_secp384r1_sha3_384_8560", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8560_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8560_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8560_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 348 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8561 for ECDSA, tcId is 349 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8561_pubkey[] = { 0x35, 0x79, 0x31, 0x29, 0x7f, 0x6a, 0x36, 0x9d, 0xf1, 0xe1, 0x83, 0x5a, 0xe6, 0x6a, 0x97, 0x22, 0x9c, 0x2a, 0xb6, 0x3a, 0x75, 0xa5, 0x5a, 0x9d, 0xb2, 0xcd, 0xbf, 0x2e, 0x85, 0x82, 0xc7, 0xc0, 0xd8, 0xaa, 0x79, 0xf2, 0xc3, 0x37, 0xe4, 0xe0, 0x19, 0x80, 0xd7, 0xd8, 0x4f, 0xd7, 0x99, 0x17, 0x06, 0xb1, 0xde, 0x38, 0x59, 0x65, 0xae, 0x26, 0xfc, 0x38, 0xab, 0x2b, 0x18, 0xa8, 0xea, 0x60, 0xe5, 0x2f, 0xae, 0xa5, 0xc2, 0xe2, 0x76, 0x66, 0x91, 0x38, 0x58, 0x91, 0x7c, 0xb1, 0xcf, 0x5b, 0x5c, 0x0b, 0xdc, 0x9c, 0x14, 0x98, 0x38, 0x9c, 0x1d, 0xb1, 0x55, 0xe5, 0x4d, 0x31, 0x98, 0xe2, }; static const unsigned char ecdsa_secp384r1_sha3_384_8561_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8561_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x07, 0x8d, 0xcf, 0x7c, 0x42, 0x1b, 0x70, 0x51, 0x91, 0xd0, 0xc4, 0x5a, 0x27, 0xc9, 0x3d, 0x16, 0xab, 0x51, 0x3e, 0xec, 0xfc, 0xf7, 0xc9, 0x04, 0x2f, 0xd7, 0x44, 0xd6, 0xd8, 0xdc, 0xef, 0xe1, 0x03, 0x6f, 0xde, 0x07, 0x24, 0x8d, 0x32, 0xfc, 0xb1, 0x9c, 0x72, 0x5c, 0x05, 0x80, 0xa0, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8561 = { .name = "ecdsa_secp384r1_sha3_384_8561", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8561_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8561_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8561_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 349 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8562 for ECDSA, tcId is 350 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8562_pubkey[] = { 0xb7, 0x60, 0xdc, 0xee, 0x33, 0x8c, 0xa7, 0x3c, 0x8c, 0xc6, 0x9f, 0x03, 0x60, 0xd8, 0x72, 0x53, 0xef, 0x36, 0x32, 0xd3, 0x02, 0xbd, 0xbf, 0x74, 0x3a, 0x65, 0xf8, 0x76, 0x2e, 0xce, 0xa2, 0x07, 0xa5, 0xc5, 0xaf, 0xf3, 0xad, 0xd1, 0x77, 0x37, 0x8e, 0x13, 0x33, 0x78, 0xd2, 0xc8, 0x3a, 0x40, 0xab, 0xcb, 0xa7, 0x3c, 0x68, 0x6f, 0x35, 0xe1, 0x3d, 0x1c, 0xb4, 0x41, 0x97, 0xbd, 0x76, 0x3b, 0x52, 0x21, 0xd3, 0xb1, 0x7c, 0xa7, 0xd8, 0x88, 0xbb, 0xbc, 0x52, 0xeb, 0x2c, 0x33, 0x46, 0x20, 0x36, 0xdd, 0x7a, 0x3b, 0x56, 0x92, 0x90, 0xcb, 0x58, 0x6d, 0x9e, 0x65, 0x14, 0xd6, 0x9b, 0x92, }; static const unsigned char ecdsa_secp384r1_sha3_384_8562_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8562_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8562 = { .name = "ecdsa_secp384r1_sha3_384_8562", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8562_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8562_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8562_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 350 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8563 for ECDSA, tcId is 351 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8563_pubkey[] = { 0xfa, 0x8f, 0x96, 0xdb, 0x8c, 0x7c, 0x93, 0x50, 0xd9, 0x0a, 0xb4, 0x9b, 0xaa, 0xa9, 0x41, 0xa7, 0x9e, 0xbe, 0x62, 0xf0, 0x17, 0xd5, 0x4b, 0x6f, 0x83, 0x85, 0x4f, 0x43, 0x04, 0x08, 0x92, 0x6e, 0x4a, 0x46, 0x33, 0x5e, 0x44, 0xe1, 0xd6, 0x7f, 0x0f, 0x18, 0xc7, 0xdb, 0x2d, 0x70, 0xca, 0x93, 0xb6, 0x5d, 0xf3, 0x86, 0xca, 0xa1, 0x93, 0x87, 0x5f, 0xe9, 0x17, 0x40, 0x21, 0x45, 0x26, 0xa2, 0xed, 0x17, 0x39, 0x3d, 0x8b, 0xb6, 0x2b, 0xdc, 0xee, 0x9f, 0x88, 0x78, 0x02, 0xbc, 0x2d, 0x76, 0xca, 0x9a, 0x30, 0x4b, 0x94, 0xe7, 0x95, 0x03, 0x29, 0x56, 0xc8, 0x60, 0x8c, 0x0e, 0x7f, 0x46, }; static const unsigned char ecdsa_secp384r1_sha3_384_8563_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8563_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8563 = { .name = "ecdsa_secp384r1_sha3_384_8563", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8563_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8563_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8563_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 351 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8564 for ECDSA, tcId is 352 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8564_pubkey[] = { 0x69, 0xbf, 0x12, 0x3f, 0xb0, 0xd3, 0x8b, 0x6a, 0x1c, 0x3f, 0x01, 0xa8, 0x11, 0xe1, 0x6a, 0xc7, 0x8f, 0x40, 0x30, 0x13, 0x32, 0xa0, 0xa1, 0x84, 0x54, 0xfb, 0x4b, 0xd9, 0xb7, 0xc9, 0x51, 0x65, 0x20, 0xf5, 0xac, 0xe9, 0xed, 0xda, 0xd3, 0x28, 0xb8, 0xd2, 0x83, 0x16, 0x2e, 0xed, 0x1c, 0x75, 0x9f, 0xa3, 0x6f, 0x89, 0xc1, 0x34, 0x19, 0x40, 0x4c, 0x11, 0xc2, 0xac, 0x98, 0x27, 0x77, 0xcd, 0x30, 0xae, 0xa7, 0xe6, 0x21, 0x35, 0x1d, 0x96, 0xba, 0x39, 0x67, 0x6c, 0x26, 0xb3, 0x6c, 0xcd, 0x10, 0x90, 0x35, 0xd7, 0x08, 0xda, 0x63, 0xab, 0x9a, 0xef, 0xee, 0x3c, 0x82, 0xf6, 0xd4, 0x05, }; static const unsigned char ecdsa_secp384r1_sha3_384_8564_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8564_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x52, 0xd0, 0xba, 0xd6, 0x94, 0xa1, 0x85, 0x3a, 0x24, 0xba, 0x69, 0x37, 0x48, 0x12, 0x40, 0xf8, 0x71, 0x8f, 0x95, 0xb1, 0x01, 0x02, 0xbc, 0xfe, 0x87, 0xd9, 0x58, 0x39, 0x09, 0x1e, 0x14, 0xaa, 0x1c, 0x38, 0xba, 0x8e, 0x61, 0x61, 0x26, 0xd4, 0xbe, 0x6f, 0xe2, 0x5a, 0x42, 0x6c, 0x2d, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8564 = { .name = "ecdsa_secp384r1_sha3_384_8564", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8564_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8564_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8564_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 352 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8565 for ECDSA, tcId is 353 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8565_pubkey[] = { 0x1e, 0x58, 0x63, 0xf2, 0xda, 0xfa, 0x6a, 0x4d, 0x1a, 0x10, 0xa4, 0xcb, 0x18, 0xeb, 0xe7, 0x92, 0xc0, 0x15, 0x4a, 0xce, 0xd0, 0xc5, 0xc2, 0xab, 0xe3, 0x3f, 0x72, 0x73, 0x35, 0xc7, 0x20, 0x69, 0x3e, 0x92, 0x74, 0x97, 0x95, 0x53, 0x93, 0x50, 0xd8, 0x50, 0x3f, 0x20, 0x9d, 0xa1, 0xbe, 0xa5, 0x6f, 0x08, 0x89, 0xc2, 0x5c, 0xd0, 0xae, 0xe8, 0x34, 0x43, 0x12, 0x62, 0x17, 0x7f, 0x43, 0xb7, 0xdd, 0xb0, 0x1a, 0x75, 0x53, 0x2d, 0xd5, 0x50, 0x86, 0xc4, 0x4c, 0x19, 0x31, 0xcd, 0xd3, 0xe0, 0x31, 0x2e, 0xea, 0x51, 0xd3, 0x00, 0x05, 0x01, 0x30, 0xf6, 0xe7, 0x54, 0xaa, 0x9f, 0x92, 0xf8, }; static const unsigned char ecdsa_secp384r1_sha3_384_8565_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8565_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x24, 0x12, 0xcc, 0x83, 0x5d, 0xa0, 0xa4, 0x35, 0x7d, 0x1b, 0x7a, 0x98, 0x6a, 0x76, 0xfe, 0x42, 0xb7, 0x95, 0x42, 0x25, 0x8c, 0x02, 0xdd, 0x7a, 0xf9, 0x27, 0xb2, 0x7a, 0x9f, 0x93, 0x52, 0xed, 0x3e, 0xed, 0xb6, 0x52, 0x0a, 0x42, 0x2e, 0x87, 0x69, 0x49, 0xcb, 0x5f, 0xd0, 0x72, 0x40, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8565 = { .name = "ecdsa_secp384r1_sha3_384_8565", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8565_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8565_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8565_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 353 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8566 for ECDSA, tcId is 354 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8566_pubkey[] = { 0x87, 0xfc, 0x83, 0x57, 0x86, 0x0b, 0x94, 0x52, 0x87, 0x75, 0xf3, 0x78, 0x74, 0x06, 0xb7, 0x9d, 0x7a, 0x7d, 0x65, 0xd2, 0x3d, 0x1d, 0x57, 0x07, 0xe6, 0x69, 0x78, 0xbe, 0x71, 0xaa, 0xba, 0xe8, 0x7b, 0xc5, 0x39, 0xc2, 0x4a, 0xdd, 0xf6, 0xc5, 0x54, 0x68, 0xce, 0xa1, 0x1c, 0xfb, 0x85, 0xbf, 0x3f, 0x88, 0x15, 0x73, 0x28, 0x5d, 0xd3, 0x74, 0x2e, 0xcf, 0x06, 0x2d, 0x53, 0x21, 0xc3, 0xd5, 0xf8, 0x62, 0x12, 0xba, 0x88, 0xae, 0x75, 0xdd, 0x39, 0x45, 0xeb, 0xb3, 0xb4, 0x4c, 0x37, 0xa1, 0x78, 0xd4, 0x40, 0xbf, 0xd7, 0x2c, 0xa8, 0xf2, 0xe7, 0xc9, 0x9c, 0xf6, 0x36, 0x7d, 0xa2, 0x48, }; static const unsigned char ecdsa_secp384r1_sha3_384_8566_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8566_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1a, 0x23, 0x03, 0xbd, 0x73, 0xab, 0x20, 0x71, 0x76, 0x27, 0x36, 0x6a, 0x49, 0x8a, 0x23, 0xf4, 0xaf, 0xe2, 0x3f, 0x30, 0xb9, 0x3b, 0x0f, 0x3b, 0xe6, 0x5b, 0x74, 0xe5, 0xeb, 0x19, 0xf2, 0xab, 0xef, 0x04, 0x94, 0x11, 0xba, 0x50, 0x14, 0x6a, 0x30, 0x5c, 0x5b, 0xb9, 0x81, 0x69, 0xc5, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8566 = { .name = "ecdsa_secp384r1_sha3_384_8566", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8566_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8566_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8566_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 354 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8567 for ECDSA, tcId is 355 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8567_pubkey[] = { 0xee, 0xbe, 0x37, 0x63, 0x02, 0x58, 0x94, 0x61, 0x91, 0x73, 0xc8, 0xb4, 0x39, 0x7d, 0xeb, 0x7f, 0xeb, 0xbf, 0xe1, 0x0f, 0xe2, 0xd2, 0x83, 0xfd, 0x30, 0x3d, 0x48, 0x69, 0x1e, 0xbc, 0x8b, 0xa3, 0xab, 0x12, 0x09, 0x27, 0x8e, 0x76, 0x31, 0x99, 0xa1, 0x8f, 0x39, 0x8b, 0x9c, 0x14, 0x84, 0x05, 0x98, 0x64, 0x05, 0x39, 0xd7, 0xec, 0x66, 0xd3, 0xc4, 0x3b, 0xfe, 0xd7, 0x23, 0x29, 0x2c, 0x85, 0x85, 0x6f, 0x02, 0xe0, 0x20, 0xde, 0xff, 0x4e, 0x46, 0x8b, 0xf3, 0xbf, 0x3c, 0x7f, 0xd0, 0x83, 0x91, 0xd9, 0x52, 0x5a, 0x2c, 0xb4, 0xf8, 0x5f, 0xbe, 0xbb, 0xb7, 0x94, 0x5a, 0x58, 0x53, 0xad, }; static const unsigned char ecdsa_secp384r1_sha3_384_8567_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8567_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x05, 0xe0, 0x63, 0xd3, 0x15, 0xae, 0x83, 0x07, 0x8d, 0xcf, 0x7c, 0x42, 0x1b, 0x70, 0x51, 0x91, 0xd0, 0xc4, 0x5a, 0x27, 0xc9, 0x3d, 0x16, 0xa2, 0x77, 0x76, 0x5a, 0x9f, 0x34, 0xe9, 0xa4, 0xb2, 0xe3, 0xba, 0xc6, 0x29, 0x1d, 0x3b, 0xa5, 0x08, 0xe5, 0x76, 0x9f, 0xdb, 0xc4, 0x92, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8567 = { .name = "ecdsa_secp384r1_sha3_384_8567", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8567_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8567_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8567_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 355 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8568 for ECDSA, tcId is 356 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8568_pubkey[] = { 0x41, 0xa0, 0x50, 0x4d, 0xa3, 0x99, 0x5a, 0xdb, 0x76, 0x65, 0x65, 0x4b, 0x6e, 0xf7, 0xd0, 0xd0, 0x0f, 0x77, 0xfc, 0xc5, 0x36, 0xfc, 0x1c, 0xad, 0x41, 0xb0, 0xda, 0xca, 0x5a, 0x60, 0xdd, 0x88, 0xc9, 0x9c, 0x20, 0xe6, 0x98, 0xc9, 0x9d, 0x56, 0x63, 0xeb, 0x53, 0x2a, 0x57, 0xdb, 0x08, 0xb3, 0x4d, 0x2b, 0x0a, 0xcb, 0x79, 0xb9, 0x5b, 0x70, 0xcb, 0x0a, 0x5e, 0x2e, 0xba, 0x11, 0x00, 0x61, 0xef, 0x87, 0xf0, 0xd3, 0x4b, 0x5b, 0xbf, 0xde, 0xaf, 0x51, 0x84, 0xb6, 0x71, 0x03, 0xf8, 0xa2, 0xbd, 0xcd, 0x20, 0xa7, 0xb9, 0xf0, 0x9a, 0xd1, 0x18, 0x11, 0x77, 0x66, 0x59, 0xbe, 0xcb, 0x75, }; static const unsigned char ecdsa_secp384r1_sha3_384_8568_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8568_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x06, 0x3d, 0x31, 0x5a, 0xe8, 0x30, 0x78, 0xdc, 0xf7, 0xc4, 0x21, 0xb7, 0x05, 0x19, 0x1d, 0x0c, 0x45, 0xa2, 0x7c, 0x93, 0xd1, 0x6a, 0xb4, 0xff, 0x23, 0xe5, 0x10, 0xc4, 0xa7, 0x9c, 0xd1, 0xfa, 0x8a, 0x24, 0xdc, 0x1a, 0x17, 0x9d, 0x3e, 0x09, 0x2a, 0x72, 0xbc, 0x5c, 0x39, 0x10, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8568 = { .name = "ecdsa_secp384r1_sha3_384_8568", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8568_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8568_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8568_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 356 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8569 for ECDSA, tcId is 357 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8569_pubkey[] = { 0x45, 0xc1, 0x52, 0xc4, 0xe6, 0x42, 0xf1, 0x56, 0xb5, 0x0e, 0xf6, 0x25, 0x2f, 0x2b, 0x0c, 0xdd, 0x36, 0xf2, 0x0c, 0xfa, 0xcb, 0xe3, 0x89, 0xfd, 0x79, 0xe2, 0xfb, 0xf1, 0x9f, 0x08, 0x10, 0xcf, 0xbf, 0xe5, 0xd1, 0x57, 0xd2, 0xfc, 0xc9, 0xb2, 0xa6, 0x49, 0xe9, 0x67, 0x5f, 0xd8, 0x6c, 0x07, 0x4e, 0xea, 0xab, 0x3b, 0xec, 0x18, 0xef, 0xf3, 0xb7, 0x02, 0xe0, 0xe0, 0xf5, 0xc4, 0x0c, 0xe9, 0x28, 0xae, 0x48, 0x16, 0x1e, 0x06, 0x83, 0x3e, 0xf3, 0xd7, 0x6f, 0xa7, 0x43, 0xc5, 0x1b, 0x27, 0x11, 0xca, 0x7c, 0x06, 0xcf, 0xc3, 0xa2, 0x0a, 0xb8, 0x04, 0x06, 0x62, 0x51, 0xd2, 0xa1, 0x15, }; static const unsigned char ecdsa_secp384r1_sha3_384_8569_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8569_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbc, 0x0c, 0x7a, 0x62, 0xb5, 0xd0, 0x60, 0xf1, 0xb9, 0xef, 0x88, 0x43, 0x6e, 0x0a, 0x32, 0x3a, 0x18, 0x8b, 0x44, 0xf9, 0x27, 0xa2, 0xd5, 0x69, 0xfe, 0x47, 0xca, 0x21, 0x89, 0x4f, 0x39, 0xa3, 0xf5, 0x14, 0x49, 0xb8, 0x34, 0x2f, 0x3a, 0x7c, 0x12, 0x54, 0xe5, 0x78, 0xb8, 0x72, 0x21, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8569 = { .name = "ecdsa_secp384r1_sha3_384_8569", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8569_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8569_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8569_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 357 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8570 for ECDSA, tcId is 358 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8570_pubkey[] = { 0x5f, 0x68, 0x49, 0xef, 0xa9, 0xaa, 0xfd, 0x6a, 0x40, 0x30, 0x01, 0x85, 0x79, 0xe3, 0x9d, 0x24, 0x1d, 0xf4, 0xc1, 0x92, 0xe5, 0xba, 0x78, 0xc6, 0xe9, 0xb4, 0x41, 0xaa, 0xbd, 0xac, 0x8e, 0xb8, 0xf4, 0xb3, 0x53, 0x86, 0x5c, 0x1c, 0x91, 0x27, 0xec, 0xcc, 0xca, 0x46, 0x8c, 0x41, 0xa5, 0x61, 0xec, 0x50, 0x15, 0x82, 0x45, 0x6f, 0xe6, 0x39, 0x66, 0x43, 0xc3, 0x68, 0xd2, 0xb9, 0x73, 0x5c, 0x47, 0x38, 0x4d, 0xbd, 0xcf, 0x2c, 0xc1, 0x69, 0x27, 0xab, 0x9b, 0x32, 0x7c, 0x36, 0x35, 0x0f, 0xe7, 0xe1, 0xf9, 0x49, 0xe7, 0xce, 0x14, 0xe6, 0x0b, 0x1c, 0x1d, 0xbe, 0xc8, 0xdf, 0xf5, 0xf0, }; static const unsigned char ecdsa_secp384r1_sha3_384_8570_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8570_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd3, 0x15, 0xae, 0x83, 0x07, 0x8d, 0xcf, 0x7c, 0x42, 0x1b, 0x70, 0x51, 0x91, 0xd0, 0xc4, 0x5a, 0x27, 0xc9, 0x3d, 0x16, 0xab, 0x51, 0x3e, 0xec, 0xce, 0x49, 0xd6, 0x74, 0x2e, 0x48, 0xc5, 0xaa, 0x2b, 0x36, 0xea, 0x79, 0xdf, 0x9d, 0x9e, 0x32, 0x77, 0x24, 0x7c, 0x3d, 0x84, 0x3d, 0x58, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8570 = { .name = "ecdsa_secp384r1_sha3_384_8570", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8570_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8570_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8570_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 358 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8571 for ECDSA, tcId is 359 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8571_pubkey[] = { 0xc3, 0xec, 0xd7, 0x4e, 0x38, 0x3f, 0x55, 0xb7, 0xec, 0x8c, 0xf0, 0x57, 0x9e, 0x6f, 0xed, 0xb9, 0x86, 0x3e, 0xe0, 0xa8, 0x2c, 0xc8, 0x4c, 0xf1, 0x38, 0x54, 0xdc, 0x10, 0x17, 0xae, 0xcb, 0x2a, 0x59, 0x69, 0xf1, 0x51, 0x94, 0xa9, 0xcc, 0xb0, 0x9e, 0x82, 0x35, 0x59, 0xfc, 0xd7, 0xb6, 0xf1, 0x1f, 0xaa, 0x3c, 0xd5, 0x53, 0x11, 0x9d, 0xe6, 0xef, 0xd2, 0x37, 0xb9, 0xa8, 0x4d, 0xfe, 0x52, 0x06, 0x94, 0xba, 0x37, 0x3c, 0x8b, 0x60, 0xd5, 0xb2, 0xe7, 0x41, 0xb3, 0x5b, 0xbd, 0xd9, 0xcf, 0xa6, 0x35, 0x35, 0x3a, 0x1f, 0x0c, 0xf4, 0x70, 0x42, 0x88, 0x16, 0x84, 0xa9, 0x6f, 0xe5, 0x16, }; static const unsigned char ecdsa_secp384r1_sha3_384_8571_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8571_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe2, 0xc0, 0x87, 0xfa, 0xee, 0xd9, 0xab, 0xb4, 0x5e, 0x39, 0x42, 0xa1, 0x01, 0x87, 0xbd, 0x6d, 0x2d, 0xf9, 0x47, 0x57, 0xe2, 0x58, 0x4c, 0xa7, 0x59, 0x9b, 0x33, 0x85, 0x11, 0x9b, 0xc5, 0x7f, 0x75, 0x73, 0xf7, 0x1d, 0xfc, 0xc9, 0x16, 0x1d, 0xd8, 0x6a, 0x91, 0x09, 0x66, 0x95, 0xd2, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8571 = { .name = "ecdsa_secp384r1_sha3_384_8571", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8571_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8571_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8571_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 359 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8572 for ECDSA, tcId is 360 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8572_pubkey[] = { 0xe4, 0xef, 0xcd, 0x75, 0x25, 0xaa, 0x87, 0xa1, 0x39, 0x0c, 0xa9, 0x1c, 0xd3, 0xf0, 0xad, 0x38, 0x61, 0x33, 0x84, 0x37, 0x72, 0x78, 0xc4, 0xe2, 0x9b, 0x14, 0x26, 0x4c, 0xa5, 0x50, 0xe6, 0xe5, 0x7e, 0x6c, 0x65, 0x59, 0xdf, 0x83, 0x00, 0x65, 0xca, 0xf9, 0x02, 0xa2, 0xf8, 0xdf, 0x41, 0xad, 0xff, 0x11, 0x21, 0x27, 0x6e, 0x42, 0x28, 0xac, 0x45, 0x4d, 0x62, 0x99, 0x4c, 0xa1, 0xa3, 0xcd, 0x24, 0xd5, 0x00, 0xa9, 0x0d, 0xda, 0xae, 0xe2, 0xe5, 0x20, 0x3d, 0xa6, 0x58, 0x50, 0x42, 0x92, 0xbd, 0x81, 0xb6, 0x2c, 0x40, 0x24, 0xa8, 0xfd, 0x4d, 0x07, 0x25, 0xe6, 0xa0, 0x7c, 0x25, 0x4a, }; static const unsigned char ecdsa_secp384r1_sha3_384_8572_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8572_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0x27, 0xc7, 0xf2, 0xd3, 0x69, 0x24, 0xd4, 0xf4, 0xfb, 0x46, 0xd5, 0xd0, 0xc7, 0x52, 0xe8, 0xaa, 0xbb, 0x53, 0x17, 0xb2, 0xe5, 0x94, 0x19, 0xd1, 0xd5, 0x4c, 0xa4, 0x0b, 0x14, 0x8e, 0x12, 0xb6, 0x09, 0x08, 0xed, 0xf8, 0x46, 0xb5, 0x6e, 0x4d, 0x64, 0x22, 0x4f, 0xb8, 0xd7, 0xe8, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8572 = { .name = "ecdsa_secp384r1_sha3_384_8572", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8572_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8572_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8572_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 360 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8573 for ECDSA, tcId is 361 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8573_pubkey[] = { 0x54, 0xa0, 0x18, 0x05, 0x3b, 0xf8, 0xdf, 0xf6, 0x9c, 0xe3, 0x2e, 0x1f, 0x8c, 0x0c, 0x9b, 0xa6, 0x58, 0xdf, 0xfc, 0xfc, 0x12, 0x00, 0xcb, 0xd8, 0x9c, 0x16, 0x99, 0x6a, 0xec, 0xe0, 0x5b, 0x84, 0xba, 0x94, 0x51, 0x64, 0xb4, 0xbc, 0xdb, 0x4d, 0x8b, 0x6d, 0xac, 0x96, 0x7a, 0xc7, 0x8c, 0x47, 0xed, 0xaa, 0xfe, 0xa8, 0x4b, 0x25, 0x52, 0x04, 0x78, 0xe6, 0x7b, 0x32, 0x8d, 0xef, 0x37, 0xe5, 0xbd, 0xb9, 0x4f, 0x18, 0xf3, 0xbc, 0xe5, 0x07, 0xcc, 0x24, 0x16, 0x1a, 0xa4, 0x29, 0x74, 0x77, 0xff, 0xf2, 0x39, 0x68, 0xae, 0x36, 0x7c, 0xf0, 0xc3, 0xf2, 0xf7, 0x0e, 0xd2, 0xbc, 0x20, 0x5d, }; static const unsigned char ecdsa_secp384r1_sha3_384_8573_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8573_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xad, 0x2f, 0x45, 0x29, 0x6b, 0x5e, 0x7a, 0xc5, 0xdb, 0x45, 0x96, 0xc8, 0xb7, 0xed, 0xbf, 0x07, 0x8e, 0x70, 0x6a, 0x4e, 0xfe, 0xfd, 0x43, 0x01, 0x3f, 0x89, 0xf5, 0x48, 0xeb, 0x19, 0x19, 0x35, 0x3b, 0xe1, 0x53, 0x23, 0xe7, 0x4f, 0x80, 0xa6, 0x2e, 0x7c, 0x37, 0x10, 0x8a, 0x58, 0xfb, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8573 = { .name = "ecdsa_secp384r1_sha3_384_8573", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8573_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8573_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8573_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 361 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8574 for ECDSA, tcId is 362 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8574_pubkey[] = { 0x68, 0x82, 0x89, 0x12, 0xc3, 0x12, 0xed, 0x14, 0x28, 0x0c, 0x95, 0x41, 0x02, 0xf2, 0xd4, 0xab, 0x06, 0xd5, 0x8b, 0xd9, 0xe7, 0xab, 0xd0, 0xaf, 0xca, 0xfa, 0x0c, 0x34, 0x9d, 0x0f, 0x09, 0x10, 0x0b, 0xc5, 0xc9, 0x11, 0x56, 0xce, 0xfe, 0xb9, 0xd3, 0xe3, 0x37, 0x21, 0xf5, 0xd1, 0xd5, 0xf4, 0x69, 0xcc, 0x3a, 0x91, 0x96, 0x7d, 0x5b, 0x96, 0x49, 0x63, 0x04, 0x4e, 0xa9, 0x66, 0xe4, 0xa3, 0xe2, 0x48, 0x8f, 0x3b, 0xe4, 0x23, 0x2f, 0x1a, 0x87, 0x23, 0xd2, 0x95, 0x6c, 0x68, 0x72, 0x40, 0xfb, 0x2f, 0x92, 0xd4, 0x56, 0xbe, 0xa0, 0xb0, 0x87, 0xb1, 0x00, 0x7b, 0x44, 0x41, 0x41, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha3_384_8574_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8574_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0xc6, 0xe7, 0xbe, 0x21, 0x0d, 0xb8, 0x28, 0xc8, 0xe8, 0x62, 0x2d, 0x13, 0xe4, 0x9e, 0x8b, 0x55, 0xa8, 0x9f, 0x76, 0x7e, 0x7b, 0xe4, 0x81, 0xfb, 0x9d, 0x49, 0x2c, 0x66, 0x8a, 0x0e, 0xe0, 0x2d, 0xc4, 0xf5, 0xdc, 0xb6, 0x9e, 0xed, 0x3b, 0xcf, 0x44, 0x45, 0xe3, 0x69, 0x22, 0xe4, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8574 = { .name = "ecdsa_secp384r1_sha3_384_8574", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8574_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8574_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8574_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 362 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8575 for ECDSA, tcId is 363 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8575_pubkey[] = { 0x1d, 0xc3, 0xd0, 0xda, 0x27, 0x13, 0x9b, 0x88, 0xb6, 0x18, 0x93, 0xd1, 0xbd, 0xee, 0x2e, 0x5f, 0xce, 0x3d, 0xcd, 0x8c, 0x4b, 0x65, 0xe1, 0x86, 0x1a, 0xd0, 0x88, 0x60, 0x68, 0xd3, 0x2d, 0x90, 0x5d, 0x34, 0x3c, 0x45, 0x67, 0xab, 0x20, 0x90, 0x3f, 0x43, 0xbe, 0xb1, 0xf5, 0xe3, 0x05, 0x9a, 0x3c, 0xb4, 0x4b, 0x07, 0x93, 0xc7, 0x90, 0xe3, 0xf6, 0x5b, 0xf7, 0x87, 0x99, 0x75, 0x5a, 0x8f, 0x40, 0x10, 0x7c, 0xae, 0x62, 0x7b, 0x57, 0xfb, 0xc0, 0x31, 0x81, 0xf6, 0x5b, 0x12, 0x41, 0x6b, 0xa5, 0xf5, 0xfe, 0xd5, 0x66, 0xa9, 0x5d, 0xc4, 0xb1, 0xb9, 0x3a, 0x1a, 0x63, 0x55, 0x08, 0x11, }; static const unsigned char ecdsa_secp384r1_sha3_384_8575_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8575_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8d, 0x11, 0x81, 0xde, 0xb9, 0xd5, 0x90, 0x38, 0xbb, 0x13, 0x9b, 0x35, 0x24, 0xc5, 0x11, 0xfa, 0x57, 0xf1, 0x1f, 0x98, 0x5c, 0x9d, 0x87, 0x9d, 0xd6, 0xdf, 0x61, 0x33, 0xef, 0xa8, 0x90, 0x45, 0xa3, 0x8f, 0x50, 0xe2, 0x01, 0x80, 0x5d, 0xf2, 0x8e, 0xa4, 0x3a, 0x92, 0x27, 0x17, 0x77, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8575 = { .name = "ecdsa_secp384r1_sha3_384_8575", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8575_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8575_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8575_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 363 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8576 for ECDSA, tcId is 364 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8576_pubkey[] = { 0x85, 0xd1, 0xe9, 0x38, 0x94, 0x96, 0x9e, 0xf0, 0x5e, 0x85, 0x26, 0x3e, 0x37, 0x51, 0x28, 0x5a, 0xbf, 0x14, 0xce, 0x1f, 0xb1, 0xa9, 0x47, 0xd9, 0x9a, 0xb8, 0x69, 0xe6, 0x12, 0x49, 0xab, 0x51, 0x52, 0x24, 0xab, 0x3b, 0x0f, 0x32, 0x2b, 0xe3, 0x6c, 0x90, 0xa3, 0xa1, 0x52, 0x2f, 0x83, 0xab, 0x88, 0xfc, 0xdd, 0x84, 0x57, 0xe3, 0x4a, 0x9e, 0x81, 0x05, 0xd3, 0x61, 0xfb, 0x37, 0x11, 0xb5, 0x44, 0xe4, 0x68, 0x4a, 0xac, 0x17, 0x8a, 0x32, 0x17, 0x50, 0x5b, 0xb8, 0x94, 0xe8, 0x51, 0x18, 0x10, 0x33, 0xd7, 0xc7, 0x56, 0xd5, 0x72, 0xab, 0xce, 0xa1, 0xaa, 0x7b, 0xb1, 0xe1, 0x0c, 0x6e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8576_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8576_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8576 = { .name = "ecdsa_secp384r1_sha3_384_8576", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8576_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8576_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8576_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 364 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8577 for ECDSA, tcId is 365 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8577_pubkey[] = { 0x60, 0x9b, 0x71, 0x64, 0xd1, 0xe1, 0x96, 0xa5, 0x59, 0x6b, 0xef, 0x71, 0xb3, 0x4a, 0x8f, 0xb4, 0xea, 0xcb, 0xbe, 0xa1, 0x0f, 0xd4, 0x1d, 0x12, 0x6c, 0x16, 0xea, 0x35, 0x78, 0xd8, 0x93, 0xe8, 0x98, 0xc4, 0x13, 0x80, 0x52, 0x30, 0xc7, 0xfd, 0x7e, 0x33, 0xee, 0x83, 0x2b, 0xe7, 0x21, 0x20, 0xc2, 0xe3, 0x79, 0xc8, 0x57, 0xc0, 0x1d, 0x95, 0xb5, 0x3d, 0xaf, 0x38, 0x2f, 0xa5, 0xc1, 0x96, 0x70, 0x5c, 0x7f, 0x92, 0x7a, 0xb3, 0xdc, 0xd8, 0xe6, 0xaa, 0x6b, 0xd4, 0xfe, 0x67, 0x67, 0xc5, 0x6c, 0x17, 0x8d, 0xcc, 0x1b, 0xbd, 0xe3, 0x2e, 0xa0, 0x0a, 0xfd, 0xc1, 0xa4, 0xf5, 0x9f, 0xa6, }; static const unsigned char ecdsa_secp384r1_sha3_384_8577_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8577_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8577 = { .name = "ecdsa_secp384r1_sha3_384_8577", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8577_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8577_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8577_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 365 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8578 for ECDSA, tcId is 366 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8578_pubkey[] = { 0x6f, 0x55, 0x7e, 0xf5, 0x2d, 0x48, 0x0e, 0xa4, 0x76, 0xd4, 0xe6, 0xbb, 0x8e, 0xb4, 0xc5, 0xa9, 0x59, 0xea, 0xcf, 0x2e, 0xe6, 0x66, 0x13, 0xdc, 0x78, 0x4f, 0xff, 0x16, 0x60, 0xf2, 0x46, 0xa1, 0x76, 0x5e, 0x91, 0x6d, 0x20, 0xac, 0x0d, 0xbc, 0x45, 0x43, 0x30, 0x32, 0x94, 0x77, 0x2d, 0x12, 0xda, 0xba, 0x49, 0xf7, 0x8c, 0x8a, 0x65, 0xd8, 0x94, 0x6a, 0xab, 0x0a, 0x80, 0x61, 0x40, 0x13, 0x65, 0x16, 0xcf, 0xf6, 0x72, 0x52, 0x67, 0x86, 0x5e, 0x9f, 0x93, 0xe4, 0x05, 0x2e, 0x07, 0x2a, 0xe9, 0x84, 0xf3, 0xe9, 0x75, 0xe7, 0x79, 0x2b, 0x67, 0xb5, 0xb1, 0x80, 0x71, 0x60, 0xd4, 0x29, }; static const unsigned char ecdsa_secp384r1_sha3_384_8578_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8578_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8578 = { .name = "ecdsa_secp384r1_sha3_384_8578", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8578_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8578_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8578_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 366 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8579 for ECDSA, tcId is 367 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8579_pubkey[] = { 0xf0, 0x7a, 0x94, 0xc4, 0xb1, 0xdd, 0x87, 0x8c, 0x2b, 0x45, 0x07, 0x54, 0x9a, 0xd7, 0x55, 0x7c, 0xf7, 0x0f, 0x72, 0x86, 0xb9, 0x5d, 0x7b, 0x7b, 0x48, 0xa0, 0x49, 0x1a, 0x63, 0x53, 0x79, 0xc0, 0x03, 0x2d, 0x21, 0xd3, 0xfb, 0xb2, 0x89, 0xbb, 0x5b, 0x72, 0x14, 0xe2, 0x37, 0x2d, 0x88, 0xee, 0x38, 0x93, 0x41, 0x25, 0xec, 0x56, 0x25, 0x3e, 0xf4, 0xb8, 0x41, 0x37, 0x3a, 0xea, 0x54, 0x51, 0xb6, 0xe5, 0x5b, 0x7e, 0x8e, 0x99, 0x99, 0x22, 0x98, 0x0c, 0x05, 0x08, 0xdc, 0x4f, 0xfd, 0x5d, 0xf7, 0x06, 0x27, 0xc3, 0x0a, 0x20, 0x26, 0xaf, 0xbf, 0x99, 0xef, 0x31, 0x8e, 0x44, 0x5c, 0x78, }; static const unsigned char ecdsa_secp384r1_sha3_384_8579_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8579_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8579 = { .name = "ecdsa_secp384r1_sha3_384_8579", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8579_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8579_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8579_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 367 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8580 for ECDSA, tcId is 368 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8580_pubkey[] = { 0x61, 0xf3, 0x52, 0x56, 0x49, 0x99, 0xc6, 0x9c, 0xe8, 0x6c, 0x03, 0x36, 0xc9, 0xa9, 0xa9, 0xba, 0xdd, 0xcf, 0x45, 0x55, 0xb6, 0x75, 0x18, 0x3e, 0xa2, 0x7f, 0x68, 0x2a, 0x7b, 0x06, 0x61, 0x25, 0x0f, 0xf7, 0xd2, 0xd0, 0x06, 0x72, 0x88, 0x0e, 0x7d, 0x3f, 0xd5, 0x32, 0x9b, 0x4d, 0x19, 0xa3, 0x1f, 0x28, 0xc5, 0x29, 0x83, 0x2d, 0x0b, 0x33, 0x66, 0x33, 0xe3, 0xef, 0x2b, 0x0b, 0xf9, 0x70, 0x07, 0xa6, 0x1b, 0x7e, 0x42, 0x7c, 0x9d, 0x2c, 0xa1, 0xfc, 0x29, 0x10, 0xb0, 0xcc, 0x68, 0x5d, 0x40, 0x9e, 0xc4, 0x23, 0xbf, 0x2f, 0x52, 0x11, 0x74, 0x2b, 0x8d, 0x3b, 0x33, 0xd2, 0xf0, 0x4a, }; static const unsigned char ecdsa_secp384r1_sha3_384_8580_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8580_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8580 = { .name = "ecdsa_secp384r1_sha3_384_8580", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8580_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8580_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8580_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 368 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8581 for ECDSA, tcId is 369 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8581_pubkey[] = { 0xd2, 0x3d, 0x62, 0xe8, 0xf8, 0xc2, 0x86, 0xda, 0x7a, 0x8e, 0x2a, 0xaa, 0xad, 0x9b, 0x75, 0x9c, 0x68, 0x52, 0xda, 0x31, 0x63, 0x9e, 0xbd, 0xdf, 0x7b, 0x4e, 0x4f, 0xd1, 0xeb, 0xe2, 0x68, 0x06, 0xca, 0xef, 0x21, 0xc9, 0xfd, 0xcc, 0xce, 0xd0, 0x5c, 0xbe, 0x13, 0x32, 0xbc, 0xe4, 0xbd, 0x4d, 0x89, 0x94, 0x80, 0xda, 0xf0, 0x3c, 0x59, 0x18, 0xb4, 0x74, 0xd9, 0xda, 0xc0, 0x74, 0x2e, 0xd9, 0x7a, 0xa6, 0x22, 0xd1, 0x8b, 0x74, 0x7c, 0x44, 0x46, 0x19, 0x1b, 0x56, 0x39, 0xab, 0xc7, 0x08, 0xc0, 0x2f, 0xf9, 0x71, 0x47, 0xb5, 0x09, 0x2c, 0xc1, 0x39, 0x5d, 0xa6, 0x11, 0x47, 0x60, 0x01, }; static const unsigned char ecdsa_secp384r1_sha3_384_8581_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8581_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8581 = { .name = "ecdsa_secp384r1_sha3_384_8581", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8581_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8581_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8581_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 369 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8582 for ECDSA, tcId is 370 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8582_pubkey[] = { 0xd1, 0xc1, 0xd5, 0x98, 0x0b, 0xb2, 0x0f, 0x66, 0x22, 0xb3, 0x5b, 0x87, 0xf0, 0x20, 0xa5, 0x3d, 0x73, 0xfe, 0x7d, 0x14, 0x81, 0x78, 0xdf, 0x52, 0xa9, 0x19, 0x64, 0xb5, 0x41, 0x31, 0x1b, 0xd8, 0x8e, 0x00, 0xb3, 0x58, 0x34, 0x23, 0x8a, 0x0b, 0xc1, 0x40, 0x1f, 0x9c, 0x3e, 0xa0, 0xc3, 0xe3, 0xa5, 0x0b, 0x86, 0x1b, 0x70, 0x10, 0x99, 0x04, 0x8e, 0x0b, 0x36, 0xec, 0x57, 0xb7, 0x24, 0xb7, 0x81, 0xf5, 0xc9, 0xe9, 0xd3, 0x8e, 0xb3, 0x45, 0xdd, 0x77, 0xea, 0xb0, 0xcb, 0x58, 0xb4, 0xfd, 0xea, 0x44, 0xe3, 0x58, 0xbc, 0x6a, 0x6a, 0xe4, 0xd1, 0x74, 0x76, 0xeb, 0x44, 0x4b, 0xc6, 0x1c, }; static const unsigned char ecdsa_secp384r1_sha3_384_8582_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8582_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8582 = { .name = "ecdsa_secp384r1_sha3_384_8582", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8582_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8582_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8582_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 370 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8583 for ECDSA, tcId is 371 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8583_pubkey[] = { 0x66, 0x26, 0x33, 0x9d, 0xe0, 0x5b, 0xe6, 0xe5, 0xb2, 0xe1, 0x5c, 0x47, 0x25, 0x3a, 0xd6, 0x21, 0xae, 0x13, 0xfd, 0x4d, 0x5d, 0xe4, 0xe4, 0xa0, 0x38, 0xeb, 0x21, 0x27, 0xfe, 0x33, 0xfd, 0x5b, 0x89, 0x8c, 0xd0, 0x59, 0xa4, 0x3e, 0xc0, 0x9d, 0x18, 0x6f, 0xbf, 0x24, 0xed, 0x8c, 0x00, 0xd1, 0x92, 0x51, 0xdb, 0x17, 0xbc, 0x71, 0xd0, 0x7b, 0x53, 0xe8, 0xd0, 0x94, 0xc6, 0x1b, 0x8e, 0x30, 0x49, 0xe0, 0x40, 0xda, 0x95, 0xa8, 0x85, 0xe4, 0xe4, 0x76, 0xa4, 0x45, 0xf7, 0xbf, 0xc3, 0x70, 0x5f, 0x8c, 0x66, 0xa7, 0xf7, 0xd9, 0x5f, 0x06, 0x97, 0xb9, 0xbf, 0x2e, 0xff, 0x9e, 0x4c, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha3_384_8583_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8583_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8583 = { .name = "ecdsa_secp384r1_sha3_384_8583", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8583_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8583_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8583_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 371 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8584 for ECDSA, tcId is 372 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8584_pubkey[] = { 0x62, 0x88, 0x73, 0x9d, 0xeb, 0x45, 0x13, 0x0e, 0xe9, 0xd8, 0x4c, 0x5d, 0x7a, 0x74, 0xa6, 0x4d, 0x4e, 0x1a, 0x82, 0x9a, 0x65, 0x7c, 0x8f, 0x06, 0xa1, 0x78, 0x43, 0x8b, 0x86, 0x57, 0x16, 0x9c, 0x48, 0x6f, 0xe7, 0xc2, 0x61, 0x0e, 0xa1, 0xa0, 0x1b, 0x90, 0x73, 0x1e, 0xdf, 0x8e, 0x2d, 0xd8, 0x1f, 0x2d, 0x7a, 0x09, 0x2e, 0xcf, 0x4a, 0x08, 0xe3, 0x81, 0x47, 0x3f, 0x70, 0x51, 0x9b, 0xef, 0xd7, 0x9e, 0x3b, 0x14, 0x84, 0x07, 0x6f, 0xb8, 0x37, 0xa9, 0xef, 0x80, 0x65, 0xd0, 0x5f, 0x62, 0xdf, 0x47, 0x53, 0xa2, 0x6f, 0x72, 0x16, 0x2f, 0x8b, 0xe1, 0x0d, 0x5b, 0xdf, 0x52, 0xa9, 0xe7, }; static const unsigned char ecdsa_secp384r1_sha3_384_8584_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8584_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8584 = { .name = "ecdsa_secp384r1_sha3_384_8584", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8584_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8584_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8584_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 372 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8585 for ECDSA, tcId is 373 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8585_pubkey[] = { 0x2b, 0xdc, 0x91, 0xe8, 0x79, 0x27, 0x36, 0x4f, 0x31, 0x67, 0x99, 0xff, 0xab, 0xbf, 0xcd, 0xa6, 0xfd, 0x15, 0x57, 0x22, 0x55, 0xb0, 0x8d, 0xeb, 0x46, 0x09, 0x0c, 0xd2, 0xea, 0x35, 0x1c, 0x91, 0x13, 0x66, 0xb3, 0xc5, 0x53, 0x83, 0x89, 0x2c, 0xc6, 0xb8, 0xdd, 0x50, 0x0a, 0x2c, 0xba, 0xef, 0x9f, 0xfd, 0x06, 0xe9, 0x25, 0xb7, 0x33, 0xf3, 0xf0, 0x17, 0xc9, 0x21, 0x36, 0xa6, 0xcd, 0x09, 0x6a, 0xd6, 0xd5, 0x12, 0x86, 0x6c, 0x52, 0xfe, 0xca, 0xfc, 0x3b, 0x2d, 0x43, 0xa0, 0xd6, 0x2e, 0xf1, 0xf8, 0x70, 0x9d, 0x9b, 0xb5, 0xd2, 0x9f, 0x59, 0x5f, 0x6d, 0xbe, 0x35, 0x99, 0xad, 0x3e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8585_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8585 = { .name = "ecdsa_secp384r1_sha3_384_8585", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8585_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8585_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8585_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 373 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8586 for ECDSA, tcId is 374 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8586_pubkey[] = { 0x9a, 0xaa, 0x6c, 0x4c, 0x26, 0xe5, 0x5f, 0xde, 0xce, 0x62, 0x2d, 0x4e, 0x1b, 0x84, 0x54, 0xa7, 0xe4, 0xbe, 0x94, 0x70, 0xe2, 0xe9, 0xec, 0xd6, 0x74, 0x79, 0xf2, 0xb7, 0xbb, 0x79, 0xac, 0x9e, 0x28, 0xba, 0x36, 0x3b, 0x20, 0x6c, 0xe7, 0xaf, 0x59, 0x32, 0xa1, 0x54, 0x98, 0x0c, 0x16, 0x12, 0xcb, 0x93, 0x0c, 0xce, 0xfb, 0xd7, 0x59, 0xbe, 0xfa, 0xfd, 0xb2, 0x34, 0xf7, 0x2e, 0x4f, 0x58, 0xe0, 0xce, 0x77, 0x09, 0x91, 0xda, 0xc7, 0xc2, 0x5b, 0xc3, 0xe4, 0xc7, 0xc0, 0x76, 0x5f, 0xcf, 0x1d, 0xac, 0xbc, 0x55, 0xf4, 0x43, 0x05, 0x20, 0xdb, 0x7b, 0xf7, 0xda, 0x40, 0x10, 0x80, 0xe1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8586_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8586 = { .name = "ecdsa_secp384r1_sha3_384_8586", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8586_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8586_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8586_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 374 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8587 for ECDSA, tcId is 375 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8587_pubkey[] = { 0x90, 0x04, 0xb1, 0x04, 0x36, 0x28, 0x50, 0x6e, 0x37, 0x30, 0x8d, 0xd0, 0x10, 0x7b, 0xa0, 0x2d, 0x80, 0x9b, 0x15, 0x04, 0xf8, 0x99, 0x48, 0x16, 0x1a, 0xb7, 0xa5, 0x80, 0xb9, 0xe2, 0xb6, 0xc1, 0x11, 0x68, 0x8f, 0x9a, 0x7d, 0xb9, 0xec, 0x1e, 0x52, 0xc9, 0x87, 0xcb, 0xe0, 0x6f, 0x11, 0x73, 0xf2, 0x0b, 0x95, 0x3d, 0x46, 0xc6, 0x17, 0x2a, 0x88, 0x3f, 0xb6, 0x14, 0xc7, 0x88, 0xbf, 0x86, 0x0c, 0x45, 0x6b, 0x1b, 0x08, 0xdb, 0x11, 0x0b, 0x09, 0x44, 0x7e, 0xf0, 0x17, 0x6f, 0x72, 0x22, 0xbe, 0x41, 0x20, 0x12, 0x8f, 0x8a, 0x19, 0x8f, 0x37, 0x26, 0x4e, 0xfe, 0x62, 0x56, 0xaf, 0x93, }; static const unsigned char ecdsa_secp384r1_sha3_384_8587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8587_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8587 = { .name = "ecdsa_secp384r1_sha3_384_8587", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8587_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8587_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8587_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 375 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8588 for ECDSA, tcId is 376 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8588_pubkey[] = { 0x23, 0xc5, 0x69, 0x4e, 0xc8, 0x55, 0x63, 0x43, 0xea, 0xf8, 0xe7, 0x07, 0x6d, 0xe0, 0xc8, 0x10, 0xce, 0x26, 0xaa, 0x96, 0xfc, 0xe9, 0xda, 0x32, 0x5a, 0x81, 0x3c, 0x4b, 0x04, 0x62, 0x55, 0x3d, 0x67, 0x9c, 0x70, 0xa3, 0xd9, 0xd6, 0x26, 0xde, 0xac, 0x31, 0x60, 0x37, 0x3b, 0xf0, 0x5d, 0x11, 0xf4, 0xe0, 0xf8, 0x5a, 0x87, 0xd3, 0xb0, 0x8a, 0x69, 0x9d, 0x6e, 0x83, 0xd0, 0xc8, 0x30, 0x9e, 0x7e, 0x16, 0x46, 0x62, 0x5f, 0x7c, 0xaa, 0x73, 0xbe, 0xd8, 0x3e, 0x78, 0xb2, 0xe2, 0x8d, 0x83, 0x84, 0xf2, 0xc0, 0x55, 0x5b, 0xd1, 0x02, 0x37, 0x01, 0xc1, 0x0a, 0x2c, 0x17, 0x26, 0xa9, 0xdc, }; static const unsigned char ecdsa_secp384r1_sha3_384_8588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8588_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x7c, 0xd3, 0x74, 0xee, 0xbe, 0x35, 0xc2, 0x5c, 0xe6, 0x7a, 0xa3, 0x8b, 0xaa, 0xfe, 0xf7, 0xf6, 0xe4, 0x70, 0xc9, 0xec, 0x31, 0x1a, 0x0b, 0xc8, 0x16, 0x36, 0xf7, 0x1b, 0x31, 0xb0, 0x9a, 0x1c, 0x38, 0x60, 0xf7, 0x0b, 0x53, 0xe2, 0x85, 0xea, 0xb6, 0x41, 0x33, 0x57, 0x0b, 0xd7, 0x57, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8588 = { .name = "ecdsa_secp384r1_sha3_384_8588", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8588_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8588_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8588_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 376 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8589 for ECDSA, tcId is 377 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8589_pubkey[] = { 0x23, 0xc5, 0x69, 0x4e, 0xc8, 0x55, 0x63, 0x43, 0xea, 0xf8, 0xe7, 0x07, 0x6d, 0xe0, 0xc8, 0x10, 0xce, 0x26, 0xaa, 0x96, 0xfc, 0xe9, 0xda, 0x32, 0x5a, 0x81, 0x3c, 0x4b, 0x04, 0x62, 0x55, 0x3d, 0x67, 0x9c, 0x70, 0xa3, 0xd9, 0xd6, 0x26, 0xde, 0xac, 0x31, 0x60, 0x37, 0x3b, 0xf0, 0x5d, 0x11, 0x0b, 0x1f, 0x07, 0xa5, 0x78, 0x2c, 0x4f, 0x75, 0x96, 0x62, 0x91, 0x7c, 0x2f, 0x37, 0xcf, 0x61, 0x81, 0xe9, 0xb9, 0x9d, 0xa0, 0x83, 0x55, 0x8c, 0x41, 0x27, 0xc1, 0x87, 0x4d, 0x1d, 0x72, 0x7b, 0x7b, 0x0d, 0x3f, 0xa9, 0xa4, 0x2e, 0xfd, 0xc8, 0xfe, 0x3e, 0xf5, 0xd4, 0xe8, 0xd9, 0x56, 0x23, }; static const unsigned char ecdsa_secp384r1_sha3_384_8589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8589_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x7c, 0xd3, 0x74, 0xee, 0xbe, 0x35, 0xc2, 0x5c, 0xe6, 0x7a, 0xa3, 0x8b, 0xaa, 0xfe, 0xf7, 0xf6, 0xe4, 0x70, 0xc9, 0xec, 0x31, 0x1a, 0x0b, 0xc8, 0x16, 0x36, 0xf7, 0x1b, 0x31, 0xb0, 0x9a, 0x1c, 0x38, 0x60, 0xf7, 0x0b, 0x53, 0xe2, 0x85, 0xea, 0xb6, 0x41, 0x33, 0x57, 0x0b, 0xd7, 0x57, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8589 = { .name = "ecdsa_secp384r1_sha3_384_8589", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8589_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8589_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8589_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 377 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8590 for ECDSA, tcId is 378 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8590_pubkey[] = { 0x91, 0x6e, 0x53, 0x51, 0xbd, 0x3e, 0xfe, 0xcf, 0x75, 0x57, 0x86, 0xfa, 0x77, 0xf6, 0xac, 0xfe, 0xcf, 0x3b, 0x00, 0xcd, 0x49, 0x6f, 0xbc, 0xde, 0xcd, 0x8d, 0x25, 0x51, 0x20, 0xdf, 0xcf, 0x27, 0xb7, 0x0e, 0x7f, 0xc9, 0xde, 0x74, 0xbe, 0x9b, 0x15, 0xf7, 0x26, 0x50, 0xb3, 0xee, 0xdf, 0xdd, 0x5b, 0xb6, 0xbc, 0xbd, 0xf4, 0x78, 0xe1, 0x5f, 0x77, 0x22, 0x1d, 0x01, 0xd6, 0x08, 0x6e, 0xae, 0x7d, 0xae, 0x44, 0xa1, 0x6b, 0xde, 0xb4, 0xaf, 0xe1, 0x78, 0xeb, 0x44, 0x46, 0x00, 0x45, 0x27, 0x89, 0x88, 0x93, 0x10, 0xad, 0x61, 0x01, 0x4a, 0x39, 0x57, 0x43, 0x6a, 0x59, 0xa3, 0x23, 0x9a, }; static const unsigned char ecdsa_secp384r1_sha3_384_8590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8590_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8590 = { .name = "ecdsa_secp384r1_sha3_384_8590", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8590_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8590_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8590_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 378 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8591 for ECDSA, tcId is 379 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8591_pubkey[] = { 0xe7, 0x9f, 0x9e, 0xe5, 0x94, 0xe7, 0x11, 0xae, 0x14, 0x39, 0xa2, 0x37, 0xa0, 0xdb, 0x17, 0x4a, 0xbd, 0x0b, 0x01, 0x38, 0xc4, 0xda, 0x3d, 0xb1, 0xa6, 0xbc, 0x01, 0x80, 0x28, 0x0b, 0x83, 0x02, 0x01, 0x04, 0x58, 0x05, 0x28, 0xd1, 0x03, 0x05, 0x44, 0xee, 0x4e, 0x7a, 0x17, 0x34, 0x1e, 0x5c, 0x39, 0x3d, 0xe2, 0x0f, 0x31, 0x9b, 0x72, 0xe5, 0x23, 0xb0, 0xb9, 0xff, 0x9c, 0xd1, 0x0c, 0xdc, 0x4a, 0x5b, 0x6b, 0x35, 0x85, 0x0b, 0xe5, 0x70, 0x79, 0xe1, 0xaf, 0xd3, 0x0d, 0xbd, 0x6d, 0x46, 0x51, 0x13, 0x9c, 0xfe, 0x0b, 0x16, 0xb3, 0x2b, 0x07, 0x4f, 0x81, 0x56, 0x30, 0x09, 0xf7, 0xd9, }; static const unsigned char ecdsa_secp384r1_sha3_384_8591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8591_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8591 = { .name = "ecdsa_secp384r1_sha3_384_8591", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8591_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8591_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8591_sig, .siglen = 97, .result = -1, .comment = "point with x-coordinate 0, tcId is 379 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8592 for ECDSA, tcId is 380 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8592_pubkey[] = { 0x9d, 0x91, 0x68, 0x0b, 0xd5, 0xac, 0x91, 0x2d, 0xde, 0xcc, 0x5b, 0x60, 0x90, 0x94, 0xa8, 0xd5, 0xfd, 0x12, 0xb5, 0xd5, 0xaf, 0x7c, 0x5b, 0xbf, 0xf8, 0xf1, 0x29, 0xd9, 0xbc, 0xed, 0xd5, 0xde, 0xa4, 0x5d, 0xf2, 0xd0, 0x95, 0x13, 0xec, 0x7a, 0xea, 0xd1, 0x88, 0x88, 0x5f, 0xd2, 0x78, 0xbc, 0xd9, 0x68, 0xfb, 0xab, 0xa2, 0xbd, 0x7d, 0x86, 0x6f, 0x68, 0x53, 0xa6, 0xd7, 0x96, 0x61, 0xfd, 0x53, 0xf2, 0x52, 0xea, 0x93, 0x65, 0x73, 0xf6, 0xbc, 0x7a, 0x32, 0x42, 0x6c, 0x6a, 0x37, 0x9d, 0x3d, 0x8c, 0x1a, 0x6b, 0x1e, 0x1a, 0x1a, 0xa7, 0xfa, 0xa7, 0xff, 0xdf, 0x5c, 0x4b, 0x0f, 0xbd, }; static const unsigned char ecdsa_secp384r1_sha3_384_8592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8592_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8592 = { .name = "ecdsa_secp384r1_sha3_384_8592", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8592_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8592_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8592_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 380 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8593 for ECDSA, tcId is 381 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8593_pubkey[] = { 0x66, 0xc4, 0x8e, 0xa2, 0x17, 0x60, 0x2f, 0x3e, 0x0e, 0x77, 0xf4, 0x02, 0xdf, 0xd3, 0x86, 0x45, 0x0c, 0x3a, 0x33, 0xf3, 0xb9, 0xa2, 0x66, 0xd0, 0x1c, 0xfa, 0x4d, 0x8c, 0xb9, 0xd5, 0x8f, 0x19, 0xe7, 0xcc, 0x56, 0x31, 0x5a, 0x57, 0x17, 0xae, 0x27, 0xf9, 0x31, 0xa8, 0xb6, 0x40, 0x1a, 0xed, 0x0f, 0x47, 0xcc, 0x97, 0x9e, 0x0e, 0xdb, 0x9b, 0x79, 0x70, 0xac, 0x66, 0xbc, 0x66, 0x31, 0x5d, 0x3d, 0x38, 0x59, 0x4d, 0xc9, 0x33, 0xdf, 0xb9, 0x63, 0xcc, 0xd5, 0x67, 0x6e, 0xfb, 0x57, 0xb1, 0x4b, 0xe8, 0x06, 0xc0, 0x87, 0x9b, 0x3c, 0xd2, 0x8f, 0xe6, 0xdd, 0xea, 0xaa, 0xf4, 0xad, 0x92, }; static const unsigned char ecdsa_secp384r1_sha3_384_8593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8593_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8593 = { .name = "ecdsa_secp384r1_sha3_384_8593", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8593_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8593_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8593_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 381 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8594 for ECDSA, tcId is 382 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8594_pubkey[] = { 0xa0, 0x3d, 0x02, 0x64, 0x31, 0xe0, 0xf7, 0x5a, 0x9c, 0xe6, 0xcd, 0x45, 0x9e, 0xb2, 0x68, 0xc4, 0x4d, 0x59, 0xa0, 0x0b, 0xb6, 0xfa, 0xcd, 0x5b, 0x81, 0x6a, 0x28, 0x23, 0x84, 0x5e, 0x7f, 0x65, 0xc4, 0x8c, 0x69, 0xcf, 0xb4, 0x84, 0x1b, 0xc0, 0xab, 0x8c, 0x98, 0x1e, 0x6c, 0x49, 0x1d, 0xb2, 0x48, 0x8e, 0xb2, 0xd9, 0x32, 0x1b, 0x30, 0xeb, 0xf3, 0xf1, 0xf9, 0x9d, 0xa6, 0x18, 0xd3, 0x31, 0x1b, 0x01, 0x92, 0x8a, 0xe9, 0xb2, 0x37, 0x64, 0xb5, 0x30, 0xe2, 0xad, 0x41, 0xdd, 0x12, 0x1b, 0x68, 0x12, 0xb7, 0xa8, 0xa8, 0x0f, 0x66, 0x99, 0x34, 0xdd, 0x8e, 0xfb, 0x04, 0x45, 0xa9, 0x62, }; static const unsigned char ecdsa_secp384r1_sha3_384_8594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8594_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8594 = { .name = "ecdsa_secp384r1_sha3_384_8594", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8594_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8594_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8594_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 382 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8595 for ECDSA, tcId is 383 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8595_pubkey[] = { 0xdb, 0x12, 0xe7, 0x90, 0x80, 0x92, 0xc1, 0x95, 0x81, 0x9e, 0xa7, 0x65, 0x2a, 0x2f, 0x92, 0x3f, 0x67, 0x8f, 0x00, 0xaa, 0x81, 0x81, 0xf3, 0xc2, 0xcb, 0x00, 0x21, 0xe2, 0x68, 0xa1, 0x76, 0x73, 0x7d, 0x48, 0xa4, 0x8e, 0xa2, 0x5a, 0x48, 0xea, 0x2b, 0x0c, 0xce, 0x3c, 0x31, 0xf1, 0x40, 0x6c, 0x9c, 0x46, 0xa9, 0xb4, 0x15, 0xca, 0x03, 0xd1, 0xb3, 0x09, 0xc5, 0xf4, 0x73, 0x5b, 0x6c, 0xe4, 0x8d, 0xa4, 0xd3, 0x2a, 0x0e, 0xab, 0x51, 0x77, 0x2d, 0xc6, 0xbb, 0x7e, 0x63, 0xd8, 0x35, 0xea, 0x76, 0x12, 0xc9, 0x2a, 0x62, 0x9c, 0x05, 0x8a, 0xf6, 0x38, 0xa5, 0xbb, 0x53, 0x54, 0x11, 0x0e, }; static const unsigned char ecdsa_secp384r1_sha3_384_8595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8595_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8595 = { .name = "ecdsa_secp384r1_sha3_384_8595", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8595_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8595_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8595_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 383 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8596 for ECDSA, tcId is 384 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8596_pubkey[] = { 0x53, 0x2b, 0x95, 0x50, 0x7c, 0xa9, 0x29, 0x50, 0x61, 0x3d, 0xcf, 0xfe, 0x77, 0x40, 0x71, 0x5a, 0xf0, 0x79, 0x53, 0xe8, 0x81, 0xd1, 0x33, 0xb7, 0x59, 0x89, 0x42, 0x6f, 0x9a, 0xea, 0x6e, 0xd1, 0xbd, 0x22, 0xa9, 0xeb, 0x89, 0x94, 0x41, 0xb2, 0x98, 0x82, 0xa8, 0xe4, 0xf5, 0x3f, 0x1d, 0xb2, 0x65, 0xdd, 0xa7, 0x15, 0x4f, 0x92, 0xc5, 0x61, 0xb2, 0xb6, 0xc9, 0xf1, 0x54, 0xaf, 0x3a, 0x58, 0x98, 0x71, 0xf5, 0x29, 0x01, 0x14, 0xa4, 0x57, 0x89, 0x6f, 0xd1, 0xe9, 0xaf, 0x23, 0x5d, 0xe9, 0xf1, 0xeb, 0x7c, 0xfe, 0x09, 0x11, 0xe2, 0x7c, 0xec, 0xaa, 0x30, 0xf9, 0x0b, 0xec, 0x73, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8596_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8596 = { .name = "ecdsa_secp384r1_sha3_384_8596", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8596_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8596_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8596_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 384 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8597 for ECDSA, tcId is 385 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8597_pubkey[] = { 0x1d, 0xd1, 0xd7, 0xb6, 0xb2, 0xf6, 0x77, 0xd7, 0xe1, 0x0f, 0xa1, 0x4b, 0xb3, 0x5a, 0x74, 0xbc, 0xf8, 0x3d, 0x6e, 0xa0, 0xbb, 0x30, 0x8f, 0xfe, 0xb7, 0xd7, 0x36, 0x34, 0xf6, 0x91, 0x1e, 0x42, 0x13, 0x75, 0x21, 0x73, 0xfa, 0x76, 0xb2, 0xc5, 0xbe, 0x12, 0xd7, 0x52, 0xb8, 0x17, 0x66, 0x59, 0x88, 0x83, 0x25, 0xcc, 0x90, 0xb2, 0x3a, 0xe3, 0x4f, 0xac, 0x03, 0xa5, 0xb9, 0xa3, 0x0c, 0xbc, 0xb9, 0xd2, 0x4e, 0x02, 0x92, 0x3d, 0x6d, 0x68, 0xe8, 0xe5, 0x40, 0x66, 0xea, 0xbb, 0xf8, 0xa8, 0x72, 0x72, 0x82, 0x7f, 0xb2, 0xf2, 0x63, 0x92, 0xdc, 0x45, 0x66, 0x4b, 0xb2, 0x39, 0x9e, 0x90, }; static const unsigned char ecdsa_secp384r1_sha3_384_8597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8597_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8597 = { .name = "ecdsa_secp384r1_sha3_384_8597", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8597_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8597_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8597_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 385 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8598 for ECDSA, tcId is 386 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8598_pubkey[] = { 0xed, 0xc6, 0xdd, 0xb4, 0xa7, 0x61, 0x67, 0xf8, 0xf7, 0xdb, 0x96, 0xdb, 0xbb, 0xd8, 0x7b, 0x24, 0x1a, 0x24, 0x77, 0xe6, 0x0e, 0xf2, 0x1f, 0x22, 0xd0, 0xfb, 0x23, 0x5f, 0xdd, 0x98, 0x7a, 0xdb, 0x15, 0xa1, 0x3a, 0x9c, 0x9f, 0x05, 0x22, 0x8e, 0xc7, 0xe3, 0x3e, 0x39, 0xb5, 0x6b, 0xaf, 0x17, 0x83, 0x97, 0x07, 0x4f, 0x1f, 0x3b, 0x7e, 0x1d, 0x97, 0xa3, 0x5d, 0x13, 0x57, 0x60, 0xff, 0x51, 0x75, 0xda, 0x02, 0x7f, 0x52, 0x1e, 0xe1, 0xd7, 0x05, 0xb2, 0xf0, 0x3e, 0x08, 0x35, 0x36, 0xac, 0xfe, 0xf9, 0xa9, 0xc5, 0x7e, 0xfe, 0x76, 0x55, 0x09, 0x56, 0x31, 0xc6, 0x11, 0x70, 0x05, 0x42, }; static const unsigned char ecdsa_secp384r1_sha3_384_8598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8598_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8598 = { .name = "ecdsa_secp384r1_sha3_384_8598", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8598_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8598_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8598_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 386 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8599 for ECDSA, tcId is 387 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8599_pubkey[] = { 0xfe, 0xbf, 0x3b, 0x36, 0x5d, 0xf3, 0x15, 0x48, 0xa5, 0x29, 0x5c, 0xda, 0x6d, 0x7c, 0xff, 0x00, 0xf8, 0xce, 0x15, 0xb4, 0xaa, 0x7d, 0xc8, 0xaf, 0xfe, 0x9c, 0x57, 0x3d, 0xec, 0xea, 0x9f, 0x7b, 0x75, 0xb6, 0x42, 0x34, 0xe2, 0xd5, 0xda, 0x59, 0x9b, 0xf2, 0xd1, 0xe4, 0x16, 0xa7, 0x50, 0x07, 0x69, 0x20, 0x52, 0x29, 0xd1, 0x89, 0x8c, 0x7d, 0xb1, 0xd5, 0x3a, 0x6b, 0xd1, 0x10, 0x79, 0x45, 0x8c, 0xc4, 0x0d, 0xa8, 0x3c, 0x16, 0xf0, 0x70, 0xe5, 0x77, 0x2b, 0x1d, 0x20, 0x59, 0xfe, 0xf1, 0x9f, 0x0f, 0x36, 0xd4, 0x47, 0x1a, 0xd8, 0x5e, 0xc8, 0x6c, 0xf1, 0xcd, 0x4e, 0x7d, 0x90, 0xc4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8599_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8599 = { .name = "ecdsa_secp384r1_sha3_384_8599", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8599_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8599_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8599_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 387 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8600 for ECDSA, tcId is 388 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8600_pubkey[] = { 0x83, 0x73, 0xe6, 0x5a, 0xc6, 0x25, 0xa5, 0xa4, 0x11, 0x0e, 0x35, 0x0e, 0x7f, 0x08, 0xa0, 0x39, 0x2f, 0x82, 0x61, 0x58, 0x1c, 0x06, 0xa8, 0x8b, 0x12, 0x5a, 0x14, 0x56, 0x81, 0x68, 0x7f, 0xc5, 0xa6, 0xc7, 0x96, 0xf1, 0x6c, 0xa4, 0x89, 0x77, 0xbb, 0xfc, 0x77, 0x29, 0xbb, 0xa8, 0x00, 0x63, 0x01, 0xd9, 0x66, 0xa2, 0xd3, 0x0f, 0xdf, 0x2b, 0x6d, 0xbc, 0xc8, 0xc9, 0xac, 0x3b, 0x6b, 0x21, 0x50, 0x43, 0x1f, 0x95, 0xfd, 0xf4, 0x9e, 0x8e, 0xa5, 0xff, 0xf9, 0x9f, 0x18, 0x5c, 0xbc, 0xd2, 0xf9, 0x63, 0x1e, 0xe3, 0xf0, 0x74, 0xd6, 0x80, 0x70, 0x0f, 0xe6, 0x93, 0xb0, 0x39, 0x85, 0x83, }; static const unsigned char ecdsa_secp384r1_sha3_384_8600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8600_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8600 = { .name = "ecdsa_secp384r1_sha3_384_8600", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8600_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8600_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8600_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 388 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8601 for ECDSA, tcId is 389 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8601_pubkey[] = { 0xd8, 0xb5, 0xb7, 0x51, 0xbe, 0xf2, 0x46, 0xa3, 0x76, 0x96, 0x82, 0x96, 0x62, 0x32, 0xb7, 0x14, 0xb0, 0x5d, 0x99, 0xa3, 0x71, 0x99, 0x22, 0x3e, 0x55, 0xcb, 0xc4, 0xdf, 0x69, 0x41, 0xb2, 0x52, 0x9e, 0x57, 0x96, 0x5c, 0x94, 0xf6, 0x0d, 0x88, 0x83, 0x7c, 0xfd, 0x95, 0x2d, 0x15, 0x1a, 0xbf, 0x9e, 0xb5, 0x17, 0x27, 0xdc, 0x46, 0x65, 0xf8, 0xe7, 0x4e, 0x8f, 0x5c, 0x79, 0xd3, 0x4f, 0xfd, 0x11, 0xc9, 0xea, 0xb8, 0xb5, 0xb7, 0x73, 0x95, 0x0d, 0x1f, 0x2c, 0x44, 0x6d, 0x84, 0xc1, 0x58, 0xae, 0xf8, 0xbb, 0xf9, 0x3b, 0x98, 0x6d, 0x9b, 0x37, 0x4f, 0x72, 0x2d, 0x94, 0xf5, 0x9f, 0x1b, }; static const unsigned char ecdsa_secp384r1_sha3_384_8601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8601_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8601 = { .name = "ecdsa_secp384r1_sha3_384_8601", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8601_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8601_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8601_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 389 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8602 for ECDSA, tcId is 390 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8602_pubkey[] = { 0x5f, 0x20, 0x98, 0xbc, 0x0e, 0xda, 0x6a, 0x77, 0x48, 0xfb, 0x7d, 0x95, 0xd5, 0x83, 0x8a, 0x66, 0xd3, 0xf3, 0x3a, 0xe4, 0x13, 0x87, 0x67, 0xa7, 0xd3, 0xe2, 0x21, 0x26, 0x9d, 0x5b, 0x35, 0x9b, 0x64, 0x56, 0x04, 0x3b, 0x7a, 0x09, 0x73, 0xcf, 0x63, 0x5e, 0x74, 0x24, 0xaa, 0xf1, 0x90, 0x7d, 0xb1, 0xe7, 0x67, 0x23, 0x3b, 0x18, 0x98, 0x8d, 0x95, 0xe0, 0x0b, 0xbb, 0x2d, 0xaf, 0xbb, 0x69, 0xf9, 0x2d, 0xcc, 0x01, 0xe5, 0xcb, 0x8d, 0xa0, 0xc2, 0x62, 0xcb, 0x52, 0x92, 0x4a, 0xf7, 0x97, 0x6d, 0x9d, 0xed, 0x1d, 0x5f, 0xe6, 0x03, 0x94, 0x03, 0x5c, 0xc5, 0x50, 0x9f, 0x45, 0x86, 0x5c, }; static const unsigned char ecdsa_secp384r1_sha3_384_8602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8602_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8602 = { .name = "ecdsa_secp384r1_sha3_384_8602", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8602_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8602_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8602_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 390 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8603 for ECDSA, tcId is 391 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8603_pubkey[] = { 0x01, 0x8c, 0xb6, 0x4d, 0xa6, 0x15, 0x48, 0x01, 0x67, 0x7d, 0x34, 0xbe, 0x71, 0xe7, 0x58, 0x83, 0xf9, 0x12, 0x27, 0x40, 0x36, 0x02, 0x9b, 0xb3, 0xcf, 0x2d, 0x56, 0x79, 0xbc, 0xa2, 0x2c, 0x9f, 0xf1, 0x0d, 0x71, 0x7e, 0x4d, 0x9c, 0x37, 0x0d, 0x05, 0x8d, 0xdd, 0x3f, 0x6d, 0x38, 0xbe, 0xb2, 0x5b, 0xc9, 0x2d, 0x39, 0xb9, 0xbe, 0x3f, 0xce, 0x5e, 0xbc, 0x38, 0x95, 0x60, 0x44, 0xaf, 0x21, 0x22, 0x0a, 0xac, 0x31, 0x50, 0xbd, 0x89, 0x92, 0x56, 0xe3, 0x03, 0x44, 0xcf, 0x7c, 0xaa, 0x68, 0x20, 0x66, 0x60, 0x05, 0xed, 0x96, 0x5d, 0x8d, 0xc3, 0xe6, 0x78, 0x41, 0x2f, 0x39, 0xad, 0xda, }; static const unsigned char ecdsa_secp384r1_sha3_384_8603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8603_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8603 = { .name = "ecdsa_secp384r1_sha3_384_8603", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8603_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8603_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8603_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 391 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8604 for ECDSA, tcId is 392 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8604_pubkey[] = { 0xae, 0xdf, 0xc5, 0xce, 0x97, 0xb0, 0x1b, 0x62, 0x01, 0x93, 0x67, 0x77, 0xb3, 0xd0, 0x1f, 0xe1, 0x9e, 0xce, 0xe9, 0x8b, 0xfa, 0xde, 0x49, 0xec, 0x59, 0x36, 0xac, 0xca, 0xc3, 0xb0, 0x2e, 0xe9, 0x0b, 0xd5, 0xaf, 0x66, 0x7a, 0x23, 0x3c, 0x60, 0xc1, 0x4d, 0xac, 0x61, 0x9f, 0x11, 0x0a, 0x7a, 0xd9, 0xb9, 0x9c, 0x30, 0x85, 0x6e, 0xf4, 0x7a, 0x57, 0x80, 0x0e, 0xa6, 0x93, 0x5e, 0x63, 0xc0, 0xc2, 0xdd, 0x7a, 0xc0, 0x1d, 0xd5, 0xc0, 0x22, 0x42, 0x31, 0xc6, 0x8f, 0xf4, 0xb7, 0x91, 0x8e, 0xf2, 0x3f, 0x26, 0x19, 0x54, 0x67, 0xe1, 0xd6, 0xe1, 0xa2, 0x76, 0x7d, 0x73, 0x81, 0x7f, 0x69, }; static const unsigned char ecdsa_secp384r1_sha3_384_8604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8604_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8604 = { .name = "ecdsa_secp384r1_sha3_384_8604", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8604_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8604_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8604_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 392 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8605 for ECDSA, tcId is 393 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8605_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8605_sig[] = { 0xf8, 0x72, 0x30, 0x83, 0xbd, 0xe4, 0x8f, 0xae, 0x6e, 0x2f, 0x3b, 0xa5, 0xd8, 0x36, 0xc2, 0xe9, 0x54, 0xae, 0xc1, 0x13, 0x03, 0x08, 0x36, 0xfb, 0x97, 0x8c, 0x08, 0xab, 0x1b, 0x5a, 0x3d, 0xfe, 0x54, 0xaa, 0x2f, 0xab, 0x24, 0x23, 0x74, 0x7e, 0x3b, 0x4f, 0xa7, 0x0e, 0xc7, 0x44, 0x89, 0x4c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8605 = { .name = "ecdsa_secp384r1_sha3_384_8605", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8605_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8605_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8605_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 393 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8606 for ECDSA, tcId is 394 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8606_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha3_384_8606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8606_sig[] = { 0x07, 0x8d, 0xcf, 0x7c, 0x42, 0x1b, 0x70, 0x51, 0x91, 0xd0, 0xc4, 0x5a, 0x27, 0xc9, 0x3d, 0x16, 0xab, 0x51, 0x3e, 0xec, 0xfc, 0xf7, 0xc9, 0x04, 0x2f, 0xd7, 0x44, 0xd6, 0xd8, 0xdc, 0xef, 0xe1, 0x03, 0x6f, 0xde, 0x07, 0x24, 0x8d, 0x32, 0xfc, 0xb1, 0x9c, 0x72, 0x5c, 0x05, 0x80, 0xa0, 0x27, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8606 = { .name = "ecdsa_secp384r1_sha3_384_8606", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8606_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8606_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8606_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 394 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8607 for ECDSA, tcId is 395 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8607_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha3_384_8607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8607_sig[] = { 0xf8, 0x72, 0x30, 0x83, 0xbd, 0xe4, 0x8f, 0xae, 0x6e, 0x2f, 0x3b, 0xa5, 0xd8, 0x36, 0xc2, 0xe9, 0x54, 0xae, 0xc1, 0x13, 0x03, 0x08, 0x36, 0xfb, 0x97, 0x8c, 0x08, 0xab, 0x1b, 0x5a, 0x3d, 0xfe, 0x54, 0xaa, 0x2f, 0xab, 0x24, 0x23, 0x74, 0x7e, 0x3b, 0x4f, 0xa7, 0x0e, 0xc7, 0x44, 0x89, 0x4c, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8607 = { .name = "ecdsa_secp384r1_sha3_384_8607", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8607_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8607_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8607_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 395 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8608 for ECDSA, tcId is 396 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8608_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha3_384_8608_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8608_sig[] = { 0x07, 0x8d, 0xcf, 0x7c, 0x42, 0x1b, 0x70, 0x51, 0x91, 0xd0, 0xc4, 0x5a, 0x27, 0xc9, 0x3d, 0x16, 0xab, 0x51, 0x3e, 0xec, 0xfc, 0xf7, 0xc9, 0x04, 0x2f, 0xd7, 0x44, 0xd6, 0xd8, 0xdc, 0xef, 0xe1, 0x03, 0x6f, 0xde, 0x07, 0x24, 0x8d, 0x32, 0xfc, 0xb1, 0x9c, 0x72, 0x5c, 0x05, 0x80, 0xa0, 0x27, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8608 = { .name = "ecdsa_secp384r1_sha3_384_8608", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8608_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8608_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8608_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 396 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8609 for ECDSA, tcId is 397 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8609_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_384_8609_sig[] = { 0x9d, 0xa5, 0xc0, 0x54, 0xa9, 0xed, 0xda, 0xbf, 0x47, 0x53, 0x55, 0x9e, 0xdd, 0x5a, 0x86, 0x2c, 0xdf, 0x57, 0xad, 0xc0, 0xc2, 0x71, 0x7a, 0x69, 0x49, 0xa4, 0x3d, 0x80, 0xcf, 0xcc, 0xd0, 0x2b, 0x14, 0xec, 0x06, 0x11, 0x3c, 0xcf, 0x08, 0x08, 0x1b, 0xe4, 0x35, 0x52, 0x39, 0x1c, 0xfb, 0x16, 0x88, 0xbb, 0x30, 0x7e, 0x9a, 0x04, 0xf9, 0x23, 0xc7, 0x00, 0x13, 0xdb, 0x3c, 0xa7, 0x16, 0xd2, 0x1b, 0x31, 0x3d, 0xde, 0x0c, 0xd6, 0x84, 0x94, 0x35, 0xbf, 0x3b, 0x19, 0x2d, 0x52, 0x66, 0x58, 0x9a, 0x00, 0xb3, 0x4e, 0x9c, 0x4c, 0x62, 0x6b, 0x10, 0x55, 0xe7, 0xa3, 0x8e, 0xf1, 0x08, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8609 = { .name = "ecdsa_secp384r1_sha3_384_8609", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8609_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha3_384_8609_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 397 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8610 for ECDSA, tcId is 398 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8610_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_384_8610_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha3_384_8610_sig[] = { 0x22, 0xb0, 0xee, 0x0e, 0x8c, 0xe8, 0x66, 0xc4, 0x8a, 0x44, 0x00, 0xdd, 0x85, 0x22, 0xdd, 0x91, 0xbd, 0x7a, 0x13, 0xcc, 0x8a, 0x55, 0xf2, 0x81, 0x41, 0x23, 0x56, 0x4d, 0x03, 0x9b, 0x1d, 0x1e, 0x3a, 0x7d, 0xf0, 0x10, 0x68, 0x8d, 0xab, 0x94, 0x87, 0x8f, 0x88, 0xa1, 0xe3, 0x4a, 0x90, 0x5e, 0xf7, 0x66, 0x89, 0x25, 0x26, 0x2d, 0xa6, 0xaa, 0xd9, 0x67, 0x12, 0xf8, 0x17, 0xa9, 0x39, 0x7b, 0x79, 0xf0, 0xfb, 0x89, 0x3a, 0xed, 0xcd, 0x72, 0x21, 0xf4, 0x54, 0xa6, 0x0a, 0x18, 0xab, 0xb3, 0xb1, 0x65, 0xaa, 0xe9, 0x79, 0xf2, 0x9d, 0x22, 0xcf, 0xab, 0x18, 0xfb, 0x61, 0x94, 0x5f, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8610 = { .name = "ecdsa_secp384r1_sha3_384_8610", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8610_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8610_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha3_384_8610_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 398 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8611 for ECDSA, tcId is 399 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8611_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_384_8611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_384_8611_sig[] = { 0x3d, 0xb6, 0xc4, 0xd7, 0xd4, 0x82, 0xfd, 0xb0, 0xa1, 0x34, 0x70, 0x84, 0x5f, 0x5a, 0xd2, 0x43, 0x81, 0x98, 0x77, 0x6c, 0x2a, 0x59, 0x54, 0xb2, 0x33, 0xe2, 0x42, 0x30, 0x88, 0x9f, 0x30, 0x23, 0xff, 0x64, 0xe4, 0xcb, 0xc7, 0x93, 0xc4, 0xe3, 0xe9, 0x43, 0x18, 0xb4, 0xe6, 0x5f, 0x8c, 0xdb, 0x03, 0xc2, 0x2a, 0xa0, 0x10, 0xea, 0x72, 0x47, 0xae, 0x7c, 0xc6, 0xc7, 0xd0, 0xf6, 0xaf, 0x76, 0xf7, 0x6e, 0xf9, 0x1c, 0xe3, 0x3a, 0x02, 0x8d, 0xe4, 0x99, 0x79, 0xbd, 0xc2, 0xcc, 0x17, 0xd7, 0xdf, 0x4c, 0x19, 0xc0, 0xe4, 0xc6, 0x1c, 0x49, 0x27, 0x5b, 0xc4, 0x08, 0x69, 0x7e, 0x78, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8611 = { .name = "ecdsa_secp384r1_sha3_384_8611", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8611_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8611_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_384_8611_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 399 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8612 for ECDSA, tcId is 400 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8612_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_384_8612_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_384_8612_sig[] = { 0x7a, 0x36, 0xe2, 0xc2, 0xeb, 0xf9, 0xbc, 0x01, 0x65, 0xff, 0x75, 0xf5, 0x90, 0x6a, 0x48, 0x06, 0xc2, 0xa6, 0x68, 0xcb, 0x48, 0x47, 0x7f, 0x7f, 0x10, 0x51, 0x69, 0xc9, 0xb5, 0xa7, 0x56, 0xab, 0xcc, 0x06, 0xb0, 0x5b, 0x4d, 0x5a, 0xc4, 0x2e, 0xcf, 0xd1, 0x2c, 0xdd, 0x0f, 0x8f, 0xc6, 0x5e, 0x96, 0xaf, 0xf9, 0xdb, 0x78, 0x73, 0xcd, 0x2f, 0x6a, 0xa8, 0x5c, 0x26, 0x93, 0xe1, 0x12, 0x9b, 0x78, 0x96, 0x34, 0x02, 0x87, 0x76, 0x28, 0x54, 0x06, 0x2d, 0xf8, 0x10, 0x41, 0x62, 0xa4, 0x57, 0x2b, 0xdc, 0xba, 0xf6, 0x73, 0xaf, 0x28, 0xa9, 0x23, 0x14, 0xec, 0x59, 0x7f, 0x7a, 0xcf, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8612 = { .name = "ecdsa_secp384r1_sha3_384_8612", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8612_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8612_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha3_384_8612_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 400 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8613 for ECDSA, tcId is 401 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8613_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8613_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8613_sig[] = { 0x82, 0xb4, 0x11, 0x76, 0x57, 0x1a, 0x05, 0x1a, 0x82, 0xc1, 0x8e, 0x1f, 0xfb, 0xf4, 0xf3, 0xef, 0x71, 0x46, 0xe0, 0x63, 0x47, 0x55, 0xba, 0x30, 0xfc, 0x96, 0x5e, 0xfe, 0xc6, 0x84, 0xd1, 0x28, 0x30, 0xed, 0x36, 0x6a, 0xcf, 0x47, 0x59, 0xfc, 0xce, 0x14, 0x6e, 0x86, 0x7b, 0x91, 0x08, 0xea, 0x52, 0xea, 0xa4, 0x3d, 0xf5, 0xa9, 0x5a, 0x92, 0xae, 0xe5, 0xf0, 0x00, 0x2f, 0x4b, 0x4a, 0x1c, 0x87, 0x0c, 0xde, 0xc0, 0x40, 0xc9, 0x66, 0x28, 0x0b, 0xe5, 0x79, 0xa1, 0x5e, 0x86, 0x5b, 0xeb, 0xc1, 0x26, 0x9b, 0x08, 0x4e, 0x17, 0xe7, 0x27, 0xba, 0xe1, 0x4b, 0x8a, 0xd6, 0xe6, 0xc7, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8613 = { .name = "ecdsa_secp384r1_sha3_384_8613", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8613_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8613_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8613_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 401 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8614 for ECDSA, tcId is 402 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8614_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8614_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8614_sig[] = { 0xb4, 0xc1, 0x89, 0x78, 0x95, 0xe4, 0xc2, 0x14, 0xaf, 0x7a, 0xc5, 0x46, 0x23, 0x0a, 0xb6, 0xea, 0x73, 0x3a, 0x63, 0x53, 0xfa, 0x11, 0xbd, 0x5d, 0x98, 0x92, 0xdc, 0x89, 0xe1, 0x13, 0xdf, 0xfb, 0x50, 0xa3, 0x58, 0x1e, 0x58, 0xd5, 0xca, 0xc3, 0x1e, 0xfe, 0xe0, 0xd5, 0x66, 0x01, 0xbc, 0x84, 0xb1, 0x49, 0x4f, 0x4c, 0xc1, 0x7f, 0x4b, 0xaa, 0x96, 0xaa, 0x2c, 0x3d, 0xa9, 0xdb, 0x00, 0x4f, 0x64, 0x25, 0x6c, 0x1f, 0x28, 0xae, 0xfd, 0x29, 0x90, 0x85, 0xe2, 0x9f, 0xe5, 0x39, 0x95, 0x17, 0xa3, 0x5a, 0xe8, 0xe0, 0x49, 0xec, 0x43, 0x6e, 0x7f, 0xe1, 0xb2, 0x74, 0x3f, 0x2a, 0x90, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8614 = { .name = "ecdsa_secp384r1_sha3_384_8614", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8614_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8614_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8614_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 402 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8615 for ECDSA, tcId is 403 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8615_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_384_8615_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8615_sig[] = { 0xc9, 0xb5, 0x89, 0x45, 0xee, 0xd8, 0xb9, 0x94, 0x9b, 0xd3, 0xe7, 0x8c, 0x89, 0x20, 0xe0, 0x21, 0x02, 0x89, 0xc1, 0x02, 0x9c, 0xdb, 0x22, 0xdf, 0x78, 0x0b, 0x66, 0xae, 0xe8, 0x0d, 0xca, 0x40, 0xe0, 0xe9, 0x14, 0x2f, 0xc6, 0xdb, 0x22, 0x69, 0xad, 0xbc, 0x4c, 0xb8, 0x9a, 0x42, 0x5f, 0x09, 0xd6, 0x72, 0x27, 0x3c, 0xc9, 0x79, 0xc1, 0x6b, 0x33, 0x36, 0x42, 0x8a, 0x60, 0xa3, 0x62, 0x7b, 0xf7, 0x52, 0xf9, 0xd7, 0xf1, 0xba, 0x03, 0xc5, 0xe1, 0x55, 0xce, 0xc8, 0xfc, 0xf5, 0x23, 0x37, 0x6f, 0xea, 0xb0, 0x8f, 0xe0, 0xe7, 0x68, 0xf1, 0x74, 0x82, 0x8a, 0xdc, 0xd1, 0x7d, 0xa0, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8615 = { .name = "ecdsa_secp384r1_sha3_384_8615", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8615_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8615_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8615_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 403 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8616 for ECDSA, tcId is 404 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8616_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_384_8616_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8616_sig[] = { 0x9a, 0xd0, 0xec, 0x81, 0xfe, 0x78, 0xe7, 0x43, 0x3c, 0xcf, 0xe8, 0xd4, 0x29, 0xff, 0xd8, 0xcc, 0x37, 0x92, 0xa7, 0xed, 0x23, 0x91, 0x04, 0xad, 0xe9, 0xb7, 0xc8, 0x28, 0x33, 0x2a, 0x5b, 0xe5, 0x74, 0x93, 0x34, 0x6c, 0x9a, 0x4e, 0x94, 0x4e, 0xec, 0x91, 0x4a, 0xca, 0xc1, 0xab, 0x5a, 0x45, 0xca, 0xb9, 0xbe, 0x17, 0x2e, 0x51, 0xff, 0x52, 0xc7, 0x01, 0x76, 0x64, 0x8c, 0x6c, 0x62, 0x85, 0x63, 0x05, 0x94, 0x33, 0x0d, 0x8f, 0xfa, 0x5d, 0x28, 0xa4, 0x7a, 0x1b, 0x8e, 0x58, 0xec, 0x5c, 0x32, 0xc7, 0x07, 0x69, 0xed, 0x28, 0xbc, 0x55, 0x33, 0x30, 0xc9, 0xa7, 0xe6, 0x74, 0xda, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8616 = { .name = "ecdsa_secp384r1_sha3_384_8616", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8616_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8616_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8616_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 404 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8617 for ECDSA, tcId is 405 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8617_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_384_8617_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8617_sig[] = { 0x84, 0xba, 0x92, 0x52, 0x42, 0xea, 0xed, 0xb5, 0x3c, 0xc5, 0x29, 0xe4, 0x76, 0x3d, 0x89, 0x95, 0xaa, 0x73, 0x15, 0xe6, 0x8a, 0x47, 0xef, 0x89, 0xf2, 0x91, 0xdd, 0x29, 0xef, 0x13, 0x8e, 0x48, 0x10, 0xbc, 0x1c, 0x58, 0xa6, 0xbc, 0xba, 0xda, 0x3a, 0xc8, 0x35, 0x41, 0xdc, 0x13, 0x9c, 0x79, 0x45, 0x79, 0x27, 0x8b, 0x73, 0xad, 0xad, 0xb6, 0x35, 0x99, 0x02, 0x8b, 0x87, 0x3b, 0xf5, 0xf7, 0xce, 0xe2, 0xff, 0x01, 0xea, 0xf0, 0xfa, 0xf2, 0xd5, 0x29, 0xb0, 0x12, 0x11, 0xa6, 0x3e, 0x78, 0x43, 0x30, 0x11, 0xda, 0x37, 0xfa, 0xb1, 0x74, 0x60, 0x7f, 0xe9, 0x0a, 0x4c, 0x3d, 0x81, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8617 = { .name = "ecdsa_secp384r1_sha3_384_8617", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8617_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8617_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8617_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 405 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8618 for ECDSA, tcId is 406 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8618_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_384_8618_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8618_sig[] = { 0x56, 0xa6, 0x9c, 0xb5, 0xb4, 0x02, 0x62, 0x68, 0xe1, 0x16, 0x31, 0xf7, 0xfc, 0x35, 0x83, 0x0e, 0x8a, 0x61, 0x2e, 0xd7, 0x92, 0x78, 0xf2, 0x80, 0xe7, 0xd7, 0xe4, 0x09, 0x55, 0x8c, 0x43, 0xef, 0x22, 0x6a, 0xb2, 0x5c, 0xf6, 0x39, 0xaa, 0xe7, 0xf4, 0x35, 0x54, 0x5c, 0xc4, 0xd8, 0xe8, 0xe5, 0x50, 0x66, 0x49, 0x47, 0x54, 0x68, 0x0d, 0x61, 0xc2, 0x34, 0x19, 0x27, 0x3b, 0xa0, 0x30, 0xdf, 0x0f, 0x0b, 0x8b, 0x0a, 0x48, 0x6c, 0xb0, 0xdd, 0x49, 0x82, 0x98, 0xa3, 0x4d, 0xb4, 0x78, 0xa6, 0xc1, 0x33, 0xb4, 0xf5, 0xe0, 0x71, 0xb6, 0x69, 0x6c, 0xdb, 0xec, 0x63, 0xa7, 0x4d, 0x84, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8618 = { .name = "ecdsa_secp384r1_sha3_384_8618", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8618_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8618_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8618_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 406 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8619 for ECDSA, tcId is 407 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8619_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_384_8619_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8619_sig[] = { 0x63, 0x28, 0xe3, 0x0a, 0x8e, 0x21, 0x89, 0x04, 0x63, 0x1d, 0x6e, 0x88, 0x58, 0xe1, 0xe3, 0x84, 0x1a, 0x2f, 0x6c, 0x09, 0x59, 0xaf, 0x1b, 0x53, 0xad, 0x35, 0x15, 0xbe, 0xe1, 0x6c, 0xbb, 0x60, 0x0b, 0x5a, 0xba, 0xa5, 0x12, 0x3c, 0x8e, 0xeb, 0x8c, 0xdc, 0x9b, 0x2d, 0xa1, 0xa8, 0xef, 0x39, 0x40, 0xe7, 0x08, 0xde, 0x5a, 0x00, 0x17, 0x89, 0x26, 0xcd, 0xb2, 0x63, 0xaf, 0xcb, 0x12, 0x71, 0x0a, 0xe8, 0xc0, 0x3b, 0x29, 0x8e, 0xea, 0xdb, 0xc4, 0x05, 0x22, 0xc0, 0x47, 0x9a, 0x94, 0xe9, 0x8d, 0xfb, 0xdc, 0xe4, 0x93, 0xfc, 0xf0, 0xcf, 0x7f, 0x4a, 0xfb, 0x69, 0x49, 0xd9, 0xf9, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8619 = { .name = "ecdsa_secp384r1_sha3_384_8619", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8619_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8619_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8619_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 407 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8620 for ECDSA, tcId is 408 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8620_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_384_8620_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8620_sig[] = { 0x34, 0xb9, 0xce, 0x48, 0xad, 0x0a, 0xac, 0x78, 0xff, 0x13, 0x88, 0x81, 0xf3, 0xb1, 0x3b, 0xad, 0xae, 0x7e, 0x1c, 0xf5, 0xda, 0x7f, 0xf0, 0x60, 0xc5, 0x64, 0x2b, 0x22, 0xc5, 0xec, 0x4c, 0x76, 0xfd, 0x4c, 0xd4, 0x6d, 0x56, 0x46, 0x76, 0xd4, 0x63, 0x1b, 0xd5, 0x67, 0xa7, 0xea, 0x92, 0x84, 0x61, 0xda, 0xe7, 0x99, 0x3b, 0x45, 0x00, 0x00, 0x5f, 0x45, 0xf5, 0x59, 0x24, 0xc5, 0x02, 0xf8, 0x80, 0x34, 0x55, 0xe2, 0x1a, 0x62, 0x49, 0x9d, 0xb2, 0xcb, 0xbc, 0x80, 0xa5, 0x82, 0xc1, 0x10, 0x7c, 0x80, 0x14, 0xaf, 0xb4, 0x61, 0x9f, 0x5d, 0x4d, 0x37, 0xfd, 0xdb, 0xdf, 0x2d, 0x7b, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8620 = { .name = "ecdsa_secp384r1_sha3_384_8620", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8620_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8620_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8620_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 408 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8621 for ECDSA, tcId is 409 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8621_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_384_8621_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8621_sig[] = { 0xe3, 0x37, 0x21, 0x74, 0x05, 0xa8, 0x45, 0x7b, 0x0e, 0x31, 0xae, 0x4e, 0x90, 0x9e, 0xab, 0xe7, 0x93, 0x43, 0x33, 0x1c, 0x4d, 0xd0, 0x62, 0x3c, 0x2b, 0x13, 0xd0, 0x98, 0x10, 0x12, 0xe2, 0x8d, 0x1f, 0xbf, 0x88, 0xf0, 0x10, 0x1c, 0x1a, 0xba, 0xe8, 0xca, 0xce, 0x1c, 0x80, 0x1d, 0xfe, 0x16, 0x94, 0x86, 0x03, 0x71, 0x0e, 0x13, 0xfe, 0x5b, 0x87, 0xe9, 0x6c, 0xa8, 0x7f, 0xb1, 0x7b, 0xdd, 0xb5, 0x76, 0x2b, 0x9e, 0x4f, 0x2f, 0xc6, 0xe1, 0xc4, 0xac, 0xf4, 0xee, 0x20, 0xb6, 0x41, 0x51, 0x81, 0x58, 0xb3, 0x2b, 0xbd, 0x42, 0x88, 0x4b, 0xff, 0xad, 0x25, 0xe0, 0x17, 0x1a, 0x34, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8621 = { .name = "ecdsa_secp384r1_sha3_384_8621", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8621_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8621_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8621_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 409 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8622 for ECDSA, tcId is 410 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8622_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_384_8622_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8622_sig[] = { 0xb2, 0xf2, 0x2a, 0xeb, 0x02, 0x5c, 0x40, 0xf6, 0x95, 0x85, 0x0c, 0xa8, 0xd9, 0x24, 0x3d, 0x67, 0x15, 0x57, 0xec, 0xdb, 0x28, 0xba, 0x78, 0xad, 0x2f, 0x33, 0x89, 0xe7, 0x8f, 0xe6, 0x85, 0x25, 0x1a, 0x29, 0xdf, 0xbc, 0x2e, 0xbc, 0x1d, 0x7e, 0x5e, 0x10, 0x98, 0xb4, 0xb2, 0x86, 0xdb, 0x18, 0xd2, 0xac, 0x24, 0xa6, 0x5d, 0x14, 0x63, 0x40, 0x5b, 0xd4, 0xbb, 0x11, 0x7e, 0x4d, 0x1e, 0xd7, 0xf7, 0xd9, 0xb4, 0x57, 0xd5, 0x1d, 0xcb, 0x1f, 0xd8, 0x70, 0x4a, 0xd2, 0x7d, 0xe5, 0xcb, 0xc1, 0x1b, 0xea, 0x45, 0xf8, 0xe3, 0xcd, 0x1e, 0xcd, 0xb5, 0x19, 0x81, 0x96, 0x2f, 0xea, 0xa4, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8622 = { .name = "ecdsa_secp384r1_sha3_384_8622", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8622_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8622_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8622_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 410 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8623 for ECDSA, tcId is 411 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8623_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_384_8623_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8623_sig[] = { 0xf3, 0xb3, 0x74, 0xde, 0xaa, 0x91, 0x23, 0x09, 0xbe, 0x3a, 0x08, 0x72, 0x2f, 0xcd, 0x0f, 0xa1, 0x7f, 0xba, 0xd8, 0xa0, 0xd6, 0x74, 0xa9, 0x6b, 0x11, 0x40, 0xef, 0xe2, 0xf9, 0x45, 0x1e, 0x37, 0x30, 0x29, 0x54, 0x6b, 0x84, 0xa5, 0x65, 0xdd, 0x88, 0xb6, 0x81, 0x6b, 0x03, 0xc6, 0x99, 0x12, 0xf4, 0x4f, 0xcc, 0x8e, 0x25, 0x13, 0xa2, 0x57, 0x4e, 0x9c, 0x88, 0xde, 0x19, 0x60, 0xe8, 0xd7, 0xf6, 0xc6, 0x07, 0xfb, 0x0a, 0xa6, 0x40, 0x03, 0x62, 0xcc, 0xac, 0xf8, 0x6e, 0x56, 0xcc, 0x44, 0xbf, 0xa6, 0xe2, 0x33, 0xa9, 0x93, 0x80, 0x0f, 0xe1, 0x38, 0x5e, 0x74, 0x73, 0x12, 0x39, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8623 = { .name = "ecdsa_secp384r1_sha3_384_8623", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8623_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8623_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8623_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 411 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8624 for ECDSA, tcId is 412 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8624_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_384_8624_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8624_sig[] = { 0xde, 0x77, 0x86, 0x36, 0xb0, 0xc8, 0x77, 0x5a, 0x48, 0xe8, 0xf7, 0xc2, 0xda, 0x3c, 0xe0, 0x56, 0xea, 0x18, 0xc0, 0xf7, 0xb6, 0x1a, 0x6c, 0xee, 0xbc, 0xcd, 0xc1, 0xdb, 0x04, 0x62, 0xa7, 0x39, 0xa9, 0xf6, 0x23, 0xb3, 0x42, 0xd8, 0x2b, 0x5c, 0xdb, 0xa9, 0x32, 0x9f, 0xd3, 0x2d, 0x48, 0x70, 0x5f, 0x84, 0x3d, 0xc4, 0x9e, 0x8c, 0x86, 0x42, 0xd0, 0xad, 0xe1, 0xfb, 0xd6, 0x35, 0xee, 0x1e, 0xa6, 0xf6, 0xda, 0x8f, 0x98, 0x0e, 0xc1, 0xd8, 0x39, 0xde, 0x2b, 0x37, 0xba, 0x70, 0x82, 0x66, 0x81, 0x79, 0xcb, 0x80, 0xe7, 0xc9, 0x77, 0x75, 0xe7, 0x7c, 0x7a, 0xfe, 0x8d, 0xfb, 0x97, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8624 = { .name = "ecdsa_secp384r1_sha3_384_8624", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8624_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8624_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8624_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 412 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8625 for ECDSA, tcId is 413 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8625_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8625_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8625_sig[] = { 0x8f, 0x6f, 0x35, 0x10, 0x2e, 0xbc, 0x10, 0x57, 0x16, 0x03, 0xd6, 0x5d, 0x14, 0xd4, 0x5e, 0x26, 0x58, 0xe3, 0x6a, 0x96, 0x1d, 0x79, 0x03, 0x48, 0xdf, 0x0e, 0xd3, 0xee, 0x61, 0x5d, 0x55, 0x91, 0x9e, 0x1c, 0x31, 0xd0, 0x2e, 0x48, 0xb4, 0xc2, 0x9b, 0x72, 0x4e, 0x75, 0x09, 0x4e, 0x88, 0xe1, 0x16, 0x74, 0x42, 0x4d, 0x64, 0xd3, 0xa7, 0x80, 0xb0, 0x31, 0xe9, 0x28, 0xee, 0x3b, 0x24, 0x6a, 0x37, 0x03, 0x86, 0x8a, 0xef, 0x1a, 0xfc, 0xc6, 0xb5, 0x0d, 0xd2, 0x17, 0xae, 0x6b, 0xdc, 0xb5, 0xfc, 0x7f, 0x59, 0xd2, 0xb1, 0x4d, 0xc4, 0xdd, 0x08, 0xf2, 0x28, 0x53, 0xab, 0xef, 0x62, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8625 = { .name = "ecdsa_secp384r1_sha3_384_8625", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8625_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8625_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8625_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 413 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8626 for ECDSA, tcId is 414 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8626_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8626_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8626_sig[] = { 0x81, 0xfd, 0xae, 0x0b, 0x7e, 0x18, 0xcc, 0xa4, 0x8e, 0x0b, 0xae, 0x1a, 0x4e, 0x2c, 0x96, 0xf3, 0x97, 0x3b, 0x0f, 0x66, 0x1c, 0xca, 0xe2, 0x69, 0xc1, 0xf0, 0x53, 0x52, 0x65, 0x95, 0x4e, 0x76, 0x47, 0x3f, 0x51, 0x71, 0x0f, 0xd2, 0xec, 0xa0, 0xb0, 0x14, 0xe0, 0x38, 0x6b, 0xdb, 0x38, 0x7e, 0xb4, 0xfd, 0x60, 0x41, 0x1a, 0xe7, 0xad, 0x83, 0x6c, 0x8b, 0x17, 0x68, 0xbf, 0x44, 0xfe, 0x12, 0x6d, 0x75, 0x37, 0x81, 0x62, 0x8a, 0x2b, 0x34, 0xf2, 0x1f, 0xe1, 0xfb, 0xc9, 0x61, 0xd2, 0x1a, 0x15, 0x3d, 0x38, 0x38, 0xe0, 0x20, 0x0d, 0xdf, 0x8b, 0x7c, 0x16, 0x81, 0x92, 0x30, 0xc0, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8626 = { .name = "ecdsa_secp384r1_sha3_384_8626", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8626_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8626_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8626_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 414 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8627 for ECDSA, tcId is 415 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8627_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_384_8627_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8627_sig[] = { 0xf6, 0xb9, 0x4c, 0xdc, 0x20, 0x83, 0xd5, 0xc6, 0xb4, 0x90, 0x80, 0x63, 0x03, 0x3d, 0xbe, 0x18, 0x17, 0xf5, 0x18, 0x7a, 0x80, 0xfb, 0xf2, 0x1e, 0x01, 0x55, 0xeb, 0xc1, 0x6c, 0x3b, 0x14, 0xb0, 0x62, 0x82, 0x17, 0x1a, 0x63, 0xd8, 0xc6, 0xad, 0x17, 0x3b, 0xad, 0x8a, 0xa4, 0x0b, 0x84, 0x06, 0x56, 0x9d, 0xb8, 0x29, 0x36, 0xc0, 0xd2, 0x84, 0xc7, 0x52, 0x14, 0x90, 0x34, 0xa2, 0x8e, 0x24, 0x15, 0xb5, 0x72, 0x47, 0xc7, 0x23, 0x07, 0x7d, 0x8a, 0x5a, 0x7c, 0x97, 0x25, 0xeb, 0xca, 0x76, 0x03, 0xde, 0x5b, 0x7a, 0x41, 0xc5, 0x3f, 0xed, 0x2b, 0xed, 0x81, 0x43, 0xa9, 0xbb, 0x8b, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8627 = { .name = "ecdsa_secp384r1_sha3_384_8627", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8627_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8627_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8627_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 415 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8628 for ECDSA, tcId is 416 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8628_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_384_8628_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8628_sig[] = { 0x89, 0xd3, 0xd1, 0xa5, 0xc2, 0xce, 0x6b, 0x63, 0x7c, 0xc9, 0xe3, 0x0a, 0x73, 0x4e, 0xa6, 0x3d, 0x34, 0xa7, 0xa7, 0x26, 0x30, 0x40, 0x0e, 0xe8, 0x29, 0x16, 0xb7, 0x9f, 0xa9, 0xa9, 0xa8, 0x3b, 0x4e, 0x2f, 0xaf, 0x76, 0x5d, 0xdc, 0xf1, 0xfa, 0x59, 0x6a, 0x4c, 0x02, 0x62, 0x93, 0xea, 0x06, 0x90, 0x13, 0xc5, 0xc5, 0x1b, 0xde, 0x3c, 0x11, 0x4a, 0xe0, 0xce, 0x19, 0x14, 0x1c, 0x6c, 0x72, 0xbb, 0xf0, 0xa8, 0xf7, 0x58, 0x85, 0x25, 0x7f, 0x20, 0x22, 0x40, 0xaf, 0x21, 0x20, 0x64, 0xf0, 0xfa, 0x9b, 0x14, 0x09, 0xd8, 0xc5, 0xe1, 0x95, 0xa8, 0xdb, 0x9d, 0x99, 0x6e, 0xb1, 0xcd, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8628 = { .name = "ecdsa_secp384r1_sha3_384_8628", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8628_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8628_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8628_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 416 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8629 for ECDSA, tcId is 417 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8629_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_384_8629_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8629_sig[] = { 0x4b, 0xb0, 0xdd, 0xb7, 0xaf, 0x2d, 0x58, 0xe7, 0x5b, 0x17, 0xf7, 0xea, 0x81, 0xc6, 0x18, 0xca, 0x19, 0x1e, 0xfa, 0xa3, 0x74, 0x02, 0x69, 0x01, 0xfc, 0x19, 0x14, 0xb9, 0x7b, 0x44, 0xed, 0x64, 0x87, 0x34, 0x04, 0xb4, 0x0c, 0x24, 0x9e, 0xe6, 0x52, 0xe9, 0x68, 0x5c, 0x67, 0x34, 0x78, 0x81, 0xaf, 0x0b, 0xc8, 0x06, 0x78, 0xb4, 0x11, 0xce, 0x0e, 0xa7, 0x8c, 0x57, 0xf5, 0x0b, 0xbb, 0x9b, 0x11, 0x67, 0x8e, 0x00, 0x1d, 0x92, 0xf2, 0xf4, 0x9a, 0xd1, 0x7a, 0xf4, 0x75, 0x9c, 0x7a, 0x01, 0x3d, 0x27, 0x66, 0x8e, 0xd1, 0x7b, 0x13, 0xbc, 0x01, 0xe1, 0x3e, 0xb9, 0xee, 0x68, 0x04, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8629 = { .name = "ecdsa_secp384r1_sha3_384_8629", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8629_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8629_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8629_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 417 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8630 for ECDSA, tcId is 418 in file ecdsa_secp384r1_sha3_384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) static const unsigned char ecdsa_secp384r1_sha3_384_8630_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_384_8630_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_384_8630_sig[] = { 0x02, 0x4d, 0xea, 0xc9, 0x2b, 0xcc, 0xdf, 0x77, 0xa3, 0xfe, 0x01, 0x9f, 0xb5, 0xd3, 0x50, 0x63, 0xc9, 0xad, 0x93, 0x74, 0xbf, 0x1e, 0x75, 0x08, 0x21, 0x8b, 0x25, 0x77, 0x68, 0x15, 0xeb, 0x95, 0xf5, 0x1c, 0x8c, 0x25, 0x3f, 0x88, 0x99, 0x1c, 0x30, 0x73, 0xc6, 0x7c, 0xa8, 0xbb, 0xd5, 0x77, 0x8d, 0xa6, 0xb6, 0xf9, 0xfd, 0xe4, 0x2f, 0x24, 0x53, 0x64, 0x13, 0xf8, 0xc2, 0xd3, 0x50, 0x61, 0x71, 0xc7, 0x42, 0xb6, 0xa0, 0x88, 0x3d, 0xe1, 0x16, 0xb3, 0x14, 0xd5, 0x59, 0x38, 0x8b, 0x41, 0x63, 0x0a, 0xa2, 0x4c, 0x48, 0x5e, 0x09, 0x0f, 0xee, 0x5f, 0x34, 0x0c, 0x79, 0x48, 0x61, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_384_8630 = { .name = "ecdsa_secp384r1_sha3_384_8630", .sig_alg = ECDSA, .hash = SHA3_384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_384_8630_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_384_8630_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_384_8630_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 418 in file ecdsa_secp384r1_sha3_384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) */ /* Test 8631 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8631_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8631_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x30, 0x2d, 0x08, 0xb5, 0x63, 0xb0, 0x9f, 0xbd, 0x4b, 0xb6, 0x48, 0xf5, 0x6a, 0x35, 0x79, 0x4a, 0x12, 0xd2, 0x4f, 0x48, 0xce, 0xfb, 0x87, 0x4e, 0xac, 0x86, 0x0c, 0x11, 0x5c, 0x04, 0x30, 0x20, 0xc9, 0x2d, 0xa2, 0xa8, 0xa5, 0x5a, 0xd7, 0xb5, 0x2a, 0xa1, 0x65, 0xbb, 0xb9, 0x0f, 0xf9, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8631 = { .name = "ecdsa_secp384r1_sha3_512_8631", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8631_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8631_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8631_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8632 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8632_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8632_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8632 = { .name = "ecdsa_secp384r1_sha3_512_8632", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8632_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8632_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8632_sig, .siglen = 96, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8633 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8633_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8633_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8633 = { .name = "ecdsa_secp384r1_sha3_512_8633", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8633_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8633_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8633_sig, .siglen = 96, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8634 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8634_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8634_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8634 = { .name = "ecdsa_secp384r1_sha3_512_8634", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8634_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8634_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8634_sig, .siglen = 96, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8635 for ECDSA, tcId is 5 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8635_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8635_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8635 = { .name = "ecdsa_secp384r1_sha3_512_8635", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8635_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8635_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8635_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8636 for ECDSA, tcId is 6 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8636_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8636_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8636 = { .name = "ecdsa_secp384r1_sha3_512_8636", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8636_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8636_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8636_sig, .siglen = 96, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8637 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8637_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8637_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8637 = { .name = "ecdsa_secp384r1_sha3_512_8637", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8637_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8637_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8637_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8638 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8638_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8638_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8638 = { .name = "ecdsa_secp384r1_sha3_512_8638", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8638_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8638_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8638_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8639 for ECDSA, tcId is 71 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8639_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8639_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8639 = { .name = "ecdsa_secp384r1_sha3_512_8639", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8639_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8639_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8639_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8640 for ECDSA, tcId is 72 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8640_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8640_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8640 = { .name = "ecdsa_secp384r1_sha3_512_8640", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8640_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8640_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8640_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8641 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8641_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8641_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x00, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8641 = { .name = "ecdsa_secp384r1_sha3_512_8641", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8641_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8641_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8641_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8642 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8642_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8642_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8642 = { .name = "ecdsa_secp384r1_sha3_512_8642", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8642_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8642_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8642_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8643 for ECDSA, tcId is 96 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8643_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8643_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8643 = { .name = "ecdsa_secp384r1_sha3_512_8643", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8643_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8643_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8643_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8644 for ECDSA, tcId is 97 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8644_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8644_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8644 = { .name = "ecdsa_secp384r1_sha3_512_8644", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8644_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8644_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8644_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8645 for ECDSA, tcId is 99 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8645_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8645_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x05, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8645 = { .name = "ecdsa_secp384r1_sha3_512_8645", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8645_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8645_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8645_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8646 for ECDSA, tcId is 100 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8646_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8646_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8646 = { .name = "ecdsa_secp384r1_sha3_512_8646", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8646_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8646_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8646_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8647 for ECDSA, tcId is 115 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8647_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8647_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8647 = { .name = "ecdsa_secp384r1_sha3_512_8647", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8647_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8647_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8647_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8648 for ECDSA, tcId is 116 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8648_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8648_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8648 = { .name = "ecdsa_secp384r1_sha3_512_8648", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8648_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8648_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8648_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8649 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8649_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8649_sig[] = { 0x02, 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8649 = { .name = "ecdsa_secp384r1_sha3_512_8649", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8649_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8649_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8649_sig, .siglen = 97, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8650 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8650_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8650_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x02, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8650 = { .name = "ecdsa_secp384r1_sha3_512_8650", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8650_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8650_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8650_sig, .siglen = 97, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8651 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8651_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8651_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0xf6, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8651 = { .name = "ecdsa_secp384r1_sha3_512_8651", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8651_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8651_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8651_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8652 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8652_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8652_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8652 = { .name = "ecdsa_secp384r1_sha3_512_8652", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8652_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8652_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8652_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8653 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8653_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8653_sig[] = { 0x00, 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8653 = { .name = "ecdsa_secp384r1_sha3_512_8653", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8653_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8653_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8653_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8654 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8654_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8654_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8654 = { .name = "ecdsa_secp384r1_sha3_512_8654", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8654_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8654_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8654_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8655 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8655_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8655_sig[] = { 0x00, 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8655 = { .name = "ecdsa_secp384r1_sha3_512_8655", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8655_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8655_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8655_sig, .siglen = 97, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8656 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8656_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8656_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8656 = { .name = "ecdsa_secp384r1_sha3_512_8656", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8656_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8656_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8656_sig, .siglen = 97, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp384r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8657 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8657_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8657_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8657 = { .name = "ecdsa_secp384r1_sha3_512_8657", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8657_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8657_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8657_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8658 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8658_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8658_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8658 = { .name = "ecdsa_secp384r1_sha3_512_8658", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8658_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8658_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8658_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8659 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8659_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8659_sig[] = { 0x01, 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x31, 0x8f, 0xfb, 0x70, 0x88, 0x76, 0xbb, 0xed, 0x37, 0x34, 0xce, 0x25, 0x78, 0xa5, 0xd7, 0xd5, 0xa7, 0xc0, 0x49, 0x16, 0x3f, 0x7c, 0xd4, 0xe9, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8659 = { .name = "ecdsa_secp384r1_sha3_512_8659", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8659_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8659_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8659_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8660 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8660_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8660_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0xa2, 0xc9, 0x60, 0x6c, 0xa0, 0x08, 0x60, 0x2e, 0x87, 0x00, 0xb2, 0xc0, 0xe7, 0x44, 0x88, 0xdf, 0xcd, 0xe8, 0x16, 0x40, 0xa5, 0xf2, 0x82, 0x03, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8660 = { .name = "ecdsa_secp384r1_sha3_512_8660", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8660_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8660_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8660_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8661 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8661_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8661_sig[] = { 0x04, 0x2d, 0xc5, 0xe4, 0xfb, 0x2d, 0x96, 0x93, 0x63, 0x37, 0x92, 0x6c, 0x37, 0x17, 0xcd, 0xab, 0xd8, 0x7f, 0xd0, 0x18, 0x8e, 0xf0, 0x9a, 0x1f, 0x95, 0xd3, 0x52, 0x11, 0x6b, 0xc0, 0x71, 0xf2, 0x20, 0xe5, 0x3f, 0x8c, 0xd0, 0x0a, 0xcf, 0xa5, 0x45, 0x2b, 0xd0, 0x54, 0x8d, 0x48, 0x54, 0x8a, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8661 = { .name = "ecdsa_secp384r1_sha3_512_8661", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8661_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8661_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8661_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8662 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8662_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8662_sig[] = { 0x04, 0x2d, 0xc5, 0xe4, 0xfb, 0x2d, 0x96, 0x93, 0x63, 0x37, 0x92, 0x6c, 0x37, 0x17, 0xcd, 0xab, 0xd8, 0x7f, 0xd0, 0x18, 0x8e, 0xf0, 0x9a, 0x1f, 0x5d, 0x36, 0x9f, 0x93, 0x5f, 0xf7, 0x9f, 0xd1, 0x78, 0xff, 0x4d, 0x3f, 0x18, 0xbb, 0x77, 0x20, 0x32, 0x17, 0xe9, 0xbf, 0x5a, 0x0d, 0x7d, 0xfd, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8662 = { .name = "ecdsa_secp384r1_sha3_512_8662", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8662_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8662_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8662_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8663 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8663_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8663_sig[] = { 0xfe, 0x04, 0x2d, 0xc5, 0xe4, 0xfb, 0x2d, 0x96, 0x93, 0x63, 0x37, 0x92, 0x6c, 0x37, 0x17, 0xcd, 0xab, 0xd8, 0x7f, 0xd0, 0x18, 0x8e, 0xf0, 0x9a, 0x1f, 0xce, 0x70, 0x04, 0x8f, 0x77, 0x89, 0x44, 0x12, 0xc8, 0xcb, 0x31, 0xda, 0x87, 0x5a, 0x28, 0x2a, 0x58, 0x3f, 0xb6, 0xe9, 0xc0, 0x83, 0x2b, 0x17, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8663 = { .name = "ecdsa_secp384r1_sha3_512_8663", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8663_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8663_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8663_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8664 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8664_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8664_sig[] = { 0x01, 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8664 = { .name = "ecdsa_secp384r1_sha3_512_8664", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8664_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8664_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8664_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8665 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8665_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8665_sig[] = { 0x04, 0x2d, 0xc5, 0xe4, 0xfb, 0x2d, 0x96, 0x93, 0x63, 0x37, 0x92, 0x6c, 0x37, 0x17, 0xcd, 0xab, 0xd8, 0x7f, 0xd0, 0x18, 0x8e, 0xf0, 0x9a, 0x1f, 0x95, 0xd3, 0x52, 0x11, 0x6b, 0xc0, 0x71, 0xf2, 0x20, 0xe5, 0x3f, 0x8c, 0xd0, 0x0a, 0xcf, 0xa5, 0x45, 0x2b, 0xd0, 0x54, 0x8d, 0x48, 0x54, 0x8a, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8665 = { .name = "ecdsa_secp384r1_sha3_512_8665", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8665_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8665_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8665_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8666 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8666_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8666_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x01, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb0, 0xe2, 0x40, 0x8e, 0xf2, 0x8c, 0x6a, 0x2b, 0x9d, 0xe7, 0x06, 0x78, 0xbb, 0xec, 0x06, 0x77, 0x40, 0xaf, 0x36, 0xcd, 0x19, 0xe0, 0x7a, 0x59, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8666 = { .name = "ecdsa_secp384r1_sha3_512_8666", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8666_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8666_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8666_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8667 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8667_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8667_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x53, 0x79, 0xf3, 0xee, 0xa3, 0xfb, 0xcf, 0xdf, 0x36, 0xd2, 0x5d, 0x57, 0x5a, 0xa5, 0x28, 0x4a, 0xd5, 0x5e, 0x9a, 0x44, 0x46, 0xf0, 0x06, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8667 = { .name = "ecdsa_secp384r1_sha3_512_8667", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8667_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8667_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8667_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8668 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8668_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8668_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x30, 0x2d, 0x08, 0xb5, 0x63, 0xb0, 0x9f, 0xbd, 0x4b, 0xb6, 0x48, 0xf5, 0x6a, 0x35, 0x79, 0x4a, 0x12, 0xd2, 0x4f, 0x48, 0xce, 0xfb, 0x87, 0x4e, 0xe5, 0x22, 0xbe, 0x8f, 0x67, 0xcd, 0x02, 0x41, 0x71, 0x13, 0x94, 0xf6, 0x5c, 0xaa, 0x30, 0x3a, 0x3d, 0xb5, 0x4c, 0x50, 0xec, 0x4a, 0xcf, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8668 = { .name = "ecdsa_secp384r1_sha3_512_8668", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8668_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8668_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8668_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8669 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8669_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8669_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0xfe, 0x30, 0x2d, 0x08, 0xb5, 0x63, 0xb0, 0x9f, 0xbd, 0x4b, 0xb6, 0x48, 0xf5, 0x6a, 0x35, 0x79, 0x4a, 0x12, 0xd2, 0x4f, 0x48, 0xce, 0xfb, 0x87, 0x4f, 0x1d, 0xbf, 0x71, 0x0d, 0x73, 0x95, 0xd4, 0x62, 0x18, 0xf9, 0x87, 0x44, 0x13, 0xf9, 0x88, 0xbf, 0x50, 0xc9, 0x32, 0xe6, 0x1f, 0x85, 0xa6, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8669 = { .name = "ecdsa_secp384r1_sha3_512_8669", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8669_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8669_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8669_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8670 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8670_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8670_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x01, 0xcf, 0xd2, 0xf7, 0x4a, 0x9c, 0x4f, 0x60, 0x42, 0xb4, 0x49, 0xb7, 0x0a, 0x95, 0xca, 0x86, 0xb5, 0xed, 0x2d, 0xb0, 0xb7, 0x31, 0x04, 0x78, 0xb1, 0x1a, 0xdd, 0x41, 0x70, 0x98, 0x32, 0xfd, 0xbe, 0x8e, 0xec, 0x6b, 0x09, 0xa3, 0x55, 0xcf, 0xc5, 0xc2, 0x4a, 0xb3, 0xaf, 0x13, 0xb5, 0x30, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8670 = { .name = "ecdsa_secp384r1_sha3_512_8670", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8670_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8670_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8670_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8671 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8671_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8671_sig[] = { 0xfb, 0xd2, 0x3a, 0x1b, 0x04, 0xd2, 0x69, 0x6c, 0x9c, 0xc8, 0x6d, 0x93, 0xc8, 0xe8, 0x32, 0x54, 0x27, 0x80, 0x2f, 0xe7, 0x71, 0x0f, 0x65, 0xe0, 0x6a, 0x2c, 0xad, 0xee, 0x94, 0x3f, 0x8e, 0x0d, 0xdf, 0x1a, 0xc0, 0x73, 0x2f, 0xf5, 0x30, 0x5a, 0xba, 0xd4, 0x2f, 0xab, 0x72, 0xb7, 0xab, 0x76, 0x30, 0x2d, 0x08, 0xb5, 0x63, 0xb0, 0x9f, 0xbd, 0x4b, 0xb6, 0x48, 0xf5, 0x6a, 0x35, 0x79, 0x4a, 0x12, 0xd2, 0x4f, 0x48, 0xce, 0xfb, 0x87, 0x4e, 0xe5, 0x22, 0xbe, 0x8f, 0x67, 0xcd, 0x02, 0x41, 0x71, 0x13, 0x94, 0xf6, 0x5c, 0xaa, 0x30, 0x3a, 0x3d, 0xb5, 0x4c, 0x50, 0xec, 0x4a, 0xcf, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8671 = { .name = "ecdsa_secp384r1_sha3_512_8671", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8671_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8671_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8671_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8672 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8672_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8672_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8672 = { .name = "ecdsa_secp384r1_sha3_512_8672", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8672_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8672_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8672_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8673 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8673_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8673_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8673 = { .name = "ecdsa_secp384r1_sha3_512_8673", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8673_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8673_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8673_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8674 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8674_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8674_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8674 = { .name = "ecdsa_secp384r1_sha3_512_8674", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8674_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8674_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8674_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8675 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8675_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8675_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8675 = { .name = "ecdsa_secp384r1_sha3_512_8675", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8675_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8675_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8675_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8676 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8676_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8676_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8676 = { .name = "ecdsa_secp384r1_sha3_512_8676", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8676_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8676_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8676_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8677 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8677_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8677_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8677 = { .name = "ecdsa_secp384r1_sha3_512_8677", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8677_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8677_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8677_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8678 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8678_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8678_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8678 = { .name = "ecdsa_secp384r1_sha3_512_8678", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8678_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8678_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8678_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8679 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8679_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8679_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8679 = { .name = "ecdsa_secp384r1_sha3_512_8679", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8679_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8679_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8679_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8680 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8680_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8680_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8680 = { .name = "ecdsa_secp384r1_sha3_512_8680", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8680_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8680_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8680_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8681 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8681_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8681_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8681 = { .name = "ecdsa_secp384r1_sha3_512_8681", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8681_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8681_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8681_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8682 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8682_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8682_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8682 = { .name = "ecdsa_secp384r1_sha3_512_8682", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8682_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8682_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8682_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8683 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8683_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8683_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8683 = { .name = "ecdsa_secp384r1_sha3_512_8683", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8683_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8683_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8683_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8684 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8684_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8684_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8684 = { .name = "ecdsa_secp384r1_sha3_512_8684", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8684_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8684_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8684_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8685 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8685_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8685_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8685 = { .name = "ecdsa_secp384r1_sha3_512_8685", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8685_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8685_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8685_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8686 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8686_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8686_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8686 = { .name = "ecdsa_secp384r1_sha3_512_8686", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8686_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8686_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8686_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8687 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8687_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8687_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8687 = { .name = "ecdsa_secp384r1_sha3_512_8687", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8687_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8687_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8687_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8688 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8688_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8688_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8688 = { .name = "ecdsa_secp384r1_sha3_512_8688", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8688_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8688_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8688_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8689 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8689_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8689_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8689 = { .name = "ecdsa_secp384r1_sha3_512_8689", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8689_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8689_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8689_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8690 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8690_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8690_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8690 = { .name = "ecdsa_secp384r1_sha3_512_8690", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8690_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8690_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8690_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8691 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8691_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8691_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8691 = { .name = "ecdsa_secp384r1_sha3_512_8691", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8691_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8691_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8691_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8692 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8692_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8692_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8692 = { .name = "ecdsa_secp384r1_sha3_512_8692", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8692_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8692_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8692_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8693 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8693_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8693_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8693 = { .name = "ecdsa_secp384r1_sha3_512_8693", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8693_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8693_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8693_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8694 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8694_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8694_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8694 = { .name = "ecdsa_secp384r1_sha3_512_8694", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8694_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8694_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8694_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8695 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8695_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8695_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8695 = { .name = "ecdsa_secp384r1_sha3_512_8695", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8695_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8695_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8695_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8696 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8696_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8696_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8696 = { .name = "ecdsa_secp384r1_sha3_512_8696", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8696_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8696_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8696_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8697 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8697_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8697_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8697 = { .name = "ecdsa_secp384r1_sha3_512_8697", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8697_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8697_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8697_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8698 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8698_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8698_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8698 = { .name = "ecdsa_secp384r1_sha3_512_8698", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8698_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8698_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8698_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8699 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8699_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8699_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8699 = { .name = "ecdsa_secp384r1_sha3_512_8699", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8699_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8699_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8699_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8700 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8700_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8700_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8700 = { .name = "ecdsa_secp384r1_sha3_512_8700", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8700_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8700_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8700_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8701 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8701_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8701_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8701 = { .name = "ecdsa_secp384r1_sha3_512_8701", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8701_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8701_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8701_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8702 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8702_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8702_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8702 = { .name = "ecdsa_secp384r1_sha3_512_8702", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8702_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8702_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8702_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8703 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8703_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8703_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8703 = { .name = "ecdsa_secp384r1_sha3_512_8703", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8703_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8703_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8703_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8704 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8704_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8704_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8704 = { .name = "ecdsa_secp384r1_sha3_512_8704", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8704_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8704_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8704_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8705 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8705_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8705_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8705 = { .name = "ecdsa_secp384r1_sha3_512_8705", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8705_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8705_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8705_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8706 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8706_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8706_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8706 = { .name = "ecdsa_secp384r1_sha3_512_8706", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8706_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8706_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8706_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8707 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8707_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8707_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8707 = { .name = "ecdsa_secp384r1_sha3_512_8707", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8707_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8707_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8707_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8708 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8708_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8708_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8708 = { .name = "ecdsa_secp384r1_sha3_512_8708", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8708_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8708_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8708_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8709 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8709_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8709_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8709 = { .name = "ecdsa_secp384r1_sha3_512_8709", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8709_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8709_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8709_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8710 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8710_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8710_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8710 = { .name = "ecdsa_secp384r1_sha3_512_8710", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8710_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8710_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8710_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8711 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8711_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8711_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8711 = { .name = "ecdsa_secp384r1_sha3_512_8711", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8711_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8711_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8711_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8712 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8712_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8712_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8712 = { .name = "ecdsa_secp384r1_sha3_512_8712", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8712_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8712_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8712_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8713 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8713_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8713_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8713 = { .name = "ecdsa_secp384r1_sha3_512_8713", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8713_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8713_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8713_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8714 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8714_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8714_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8714 = { .name = "ecdsa_secp384r1_sha3_512_8714", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8714_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8714_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8714_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8715 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8715_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8715_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8715 = { .name = "ecdsa_secp384r1_sha3_512_8715", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8715_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8715_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8715_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8716 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8716_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8716_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8716 = { .name = "ecdsa_secp384r1_sha3_512_8716", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8716_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8716_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8716_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8717 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8717_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8717_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8717 = { .name = "ecdsa_secp384r1_sha3_512_8717", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8717_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8717_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8717_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8718 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8718_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8718_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8718 = { .name = "ecdsa_secp384r1_sha3_512_8718", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8718_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8718_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8718_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8719 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8719_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8719_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8719 = { .name = "ecdsa_secp384r1_sha3_512_8719", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8719_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8719_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8719_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8720 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8720_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8720_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8720 = { .name = "ecdsa_secp384r1_sha3_512_8720", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8720_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8720_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8720_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8721 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8721_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8721_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8721 = { .name = "ecdsa_secp384r1_sha3_512_8721", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8721_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8721_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8721_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8722 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8722_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8722_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8722 = { .name = "ecdsa_secp384r1_sha3_512_8722", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8722_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8722_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8722_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8723 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8723_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8723_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8723 = { .name = "ecdsa_secp384r1_sha3_512_8723", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8723_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8723_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8723_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8724 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8724_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8724_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8724 = { .name = "ecdsa_secp384r1_sha3_512_8724", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8724_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8724_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8724_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8725 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8725_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8725_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8725 = { .name = "ecdsa_secp384r1_sha3_512_8725", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8725_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8725_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8725_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8726 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8726_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8726_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8726 = { .name = "ecdsa_secp384r1_sha3_512_8726", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8726_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8726_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8726_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8727 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8727_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8727_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8727 = { .name = "ecdsa_secp384r1_sha3_512_8727", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8727_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8727_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8727_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8728 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8728_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8728_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8728 = { .name = "ecdsa_secp384r1_sha3_512_8728", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8728_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8728_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8728_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8729 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8729_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8729_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8729 = { .name = "ecdsa_secp384r1_sha3_512_8729", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8729_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8729_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8729_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8730 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8730_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8730_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8730 = { .name = "ecdsa_secp384r1_sha3_512_8730", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8730_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8730_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8730_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8731 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8731_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8731_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8731 = { .name = "ecdsa_secp384r1_sha3_512_8731", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8731_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8731_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8731_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8732 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8732_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8732_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8732 = { .name = "ecdsa_secp384r1_sha3_512_8732", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8732_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8732_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8732_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8733 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8733_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8733_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8733 = { .name = "ecdsa_secp384r1_sha3_512_8733", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8733_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8733_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8733_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8734 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8734_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8734_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8734 = { .name = "ecdsa_secp384r1_sha3_512_8734", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8734_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8734_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8734_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8735 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8735_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8735_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8735 = { .name = "ecdsa_secp384r1_sha3_512_8735", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8735_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8735_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8735_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8736 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8736_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8736_msg[] = { 0x32, 0x30, 0x30, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8736_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0xe0, 0xf1, 0x33, 0xf6, 0xff, 0x3d, 0xd2, 0x49, 0x6a, 0x15, 0xab, 0xc9, 0x2b, 0x34, 0x31, 0x5a, 0x17, 0xf4, 0x96, 0x79, 0x73, 0x47, 0x20, 0xc0, 0x27, 0x0f, 0x5d, 0xad, 0x3d, 0xcd, 0x28, 0x33, 0xf9, 0x13, 0xb4, 0x8a, 0x6c, 0xdf, 0x2e, 0xc6, 0xb2, 0xff, 0xc9, 0xd3, 0xd7, 0x2d, 0x54, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8736 = { .name = "ecdsa_secp384r1_sha3_512_8736", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8736_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8736_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8736_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8737 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8737_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8737_msg[] = { 0x32, 0x37, 0x32, 0x39, 0x37, 0x32, 0x36, 0x34, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8737_sig[] = { 0x20, 0x28, 0x58, 0x60, 0x7c, 0x9a, 0x87, 0x77, 0xf7, 0x00, 0x1f, 0x0f, 0xb2, 0x5b, 0x12, 0xf3, 0x9d, 0x5f, 0xb1, 0xb8, 0x6b, 0x76, 0x7a, 0xdb, 0x1a, 0x32, 0xfd, 0x8c, 0xa1, 0x8d, 0xec, 0x71, 0xd0, 0xcf, 0x69, 0xa3, 0x83, 0x9f, 0x30, 0x97, 0xd9, 0x13, 0x22, 0x47, 0xb5, 0x58, 0xe1, 0xb6, 0xd7, 0xbe, 0x6c, 0xa3, 0x4d, 0x3a, 0x84, 0x61, 0x95, 0xb6, 0x7e, 0x5b, 0xb5, 0x17, 0xfb, 0x16, 0x9e, 0xd4, 0xda, 0x4e, 0xe1, 0x24, 0xb8, 0x54, 0x63, 0x7c, 0x7f, 0x86, 0xbc, 0xac, 0xba, 0xd6, 0x4c, 0xaa, 0x4e, 0x9e, 0x50, 0xfb, 0x93, 0x2c, 0x16, 0x79, 0xb4, 0x63, 0xff, 0xa8, 0x7b, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8737 = { .name = "ecdsa_secp384r1_sha3_512_8737", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8737_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8737_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8737_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8738 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8738_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8738_msg[] = { 0x34, 0x33, 0x31, 0x34, 0x37, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8738_sig[] = { 0xbb, 0xd2, 0xe9, 0x99, 0x74, 0xa7, 0x33, 0x00, 0x05, 0x92, 0xeb, 0xad, 0x06, 0x9c, 0x39, 0xad, 0xcb, 0x4e, 0xe3, 0x27, 0x18, 0xf2, 0x62, 0xdc, 0x16, 0x7f, 0xa0, 0xb4, 0x08, 0x0e, 0x78, 0x8c, 0x95, 0xcf, 0x17, 0x7b, 0xcf, 0xf6, 0x1b, 0x72, 0xdc, 0xdf, 0x74, 0x06, 0x90, 0x6a, 0xf9, 0x95, 0x89, 0x55, 0x2e, 0x36, 0x91, 0x43, 0xd5, 0x6a, 0x00, 0x6b, 0x90, 0xb8, 0xb3, 0xfd, 0x68, 0xcd, 0xb4, 0x9a, 0x8f, 0x26, 0xec, 0x5c, 0xa4, 0xdf, 0x03, 0xab, 0xc1, 0x49, 0x27, 0x3d, 0xe0, 0xa4, 0x69, 0x3a, 0xf3, 0x73, 0x62, 0xf3, 0xc6, 0x89, 0xa6, 0xd8, 0xb6, 0x93, 0x56, 0x63, 0x27, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8738 = { .name = "ecdsa_secp384r1_sha3_512_8738", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8738_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8738_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8738_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8739 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8739_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8739_msg[] = { 0x36, 0x36, 0x30, 0x33, 0x34, 0x33, 0x38, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8739_sig[] = { 0xb3, 0x5e, 0x96, 0xf9, 0x33, 0x02, 0xbc, 0x08, 0xe3, 0x39, 0xbf, 0xbb, 0x2f, 0xbe, 0x04, 0x87, 0x2f, 0x1e, 0xca, 0x41, 0x30, 0x84, 0x62, 0x90, 0x41, 0xff, 0xc0, 0xdd, 0x94, 0xee, 0xe6, 0x77, 0xbc, 0x32, 0xcb, 0x09, 0x02, 0x2e, 0xd6, 0x21, 0x41, 0x53, 0xf2, 0xed, 0x70, 0x5e, 0xdb, 0x22, 0x5a, 0xee, 0x1a, 0xcf, 0xf7, 0x9c, 0x6b, 0xdb, 0xbb, 0x4d, 0x3c, 0x65, 0x6c, 0x30, 0x10, 0xeb, 0xa7, 0x2f, 0xa6, 0x71, 0xdf, 0x68, 0x63, 0x7a, 0x5f, 0xbb, 0xc2, 0xdd, 0x22, 0x68, 0xbb, 0xb4, 0xfe, 0xf4, 0xa8, 0x5c, 0x90, 0xb4, 0x90, 0x13, 0xe0, 0xc1, 0xa2, 0xae, 0xcd, 0x34, 0x2b, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8739 = { .name = "ecdsa_secp384r1_sha3_512_8739", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8739_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8739_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8739_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8740 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8740_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8740_msg[] = { 0x32, 0x38, 0x32, 0x39, 0x36, 0x32, 0x31, 0x34, 0x35, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8740_sig[] = { 0x66, 0x5d, 0x94, 0x55, 0x05, 0x23, 0x11, 0x0b, 0xbf, 0xd1, 0x3d, 0x7f, 0x67, 0x62, 0x62, 0x59, 0x1a, 0x53, 0xba, 0xf2, 0x5e, 0xb3, 0x63, 0x51, 0x49, 0x5c, 0x6f, 0x3c, 0x79, 0x7d, 0x1d, 0x0b, 0x2a, 0x69, 0xf6, 0x0f, 0x0d, 0x4a, 0x12, 0x77, 0x41, 0x4a, 0x90, 0x0c, 0x4e, 0xad, 0xc0, 0xb4, 0xcd, 0x30, 0x03, 0x2e, 0x93, 0xa7, 0x73, 0xa2, 0x60, 0x39, 0x55, 0xc0, 0x40, 0x41, 0x5b, 0xd3, 0xba, 0x1e, 0xf4, 0xe4, 0x3a, 0xb4, 0x76, 0xdd, 0x4f, 0x6e, 0xee, 0x58, 0x25, 0xed, 0x1b, 0xc5, 0xb0, 0x53, 0x10, 0x99, 0xae, 0xa5, 0x19, 0x09, 0xa5, 0x1a, 0x8c, 0x66, 0x41, 0xe2, 0x0c, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8740 = { .name = "ecdsa_secp384r1_sha3_512_8740", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8740_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8740_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8740_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8741 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8741_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8741_msg[] = { 0x34, 0x33, 0x31, 0x31, 0x38, 0x32, 0x31, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8741_sig[] = { 0xdd, 0xa8, 0xc8, 0x51, 0xbc, 0x39, 0x20, 0xbe, 0x10, 0x0a, 0x4a, 0x1f, 0xf6, 0x4f, 0x54, 0x15, 0xc9, 0x69, 0xc2, 0xdb, 0x65, 0x3f, 0x3a, 0x8e, 0x62, 0xe9, 0x50, 0x86, 0x3a, 0xed, 0x9a, 0xa1, 0x8a, 0x6c, 0xf9, 0xc9, 0x8e, 0xd1, 0x57, 0x25, 0xfb, 0xa1, 0x0d, 0x43, 0x9e, 0xd9, 0x4f, 0x3c, 0x40, 0x7f, 0x8f, 0x01, 0x21, 0xe9, 0x6f, 0xeb, 0xb3, 0x05, 0x02, 0xb2, 0x8a, 0x64, 0xa8, 0xb8, 0x60, 0x99, 0xd6, 0x02, 0xf1, 0x4e, 0xc2, 0x5b, 0x68, 0x56, 0x74, 0x81, 0xb7, 0xf4, 0x27, 0x09, 0xc7, 0xce, 0xf8, 0xb2, 0x12, 0xd2, 0x3c, 0xd5, 0xc6, 0xfe, 0x7e, 0x5f, 0x00, 0xec, 0xb2, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8741 = { .name = "ecdsa_secp384r1_sha3_512_8741", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8741_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8741_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8741_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8742 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8742_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8742_msg[] = { 0x31, 0x31, 0x37, 0x37, 0x30, 0x37, 0x37, 0x34, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8742_sig[] = { 0x4c, 0x33, 0xb7, 0x66, 0x18, 0x35, 0xf7, 0x5c, 0x0b, 0x71, 0xe9, 0xa6, 0x08, 0x4f, 0x58, 0x15, 0x2e, 0x00, 0x67, 0x04, 0x9e, 0x67, 0x73, 0x2e, 0xa1, 0xbd, 0xf7, 0x78, 0x8b, 0x1d, 0x5d, 0x7e, 0xfe, 0x67, 0x68, 0x55, 0x1a, 0x56, 0xf1, 0x63, 0x3c, 0x64, 0x56, 0xca, 0xed, 0x18, 0xa5, 0xe8, 0xf7, 0xb4, 0xbf, 0xcc, 0x04, 0x1b, 0xe4, 0x0e, 0x5c, 0x24, 0x90, 0x7c, 0x51, 0x74, 0xdd, 0x21, 0x0e, 0x48, 0x72, 0x5a, 0xdd, 0x92, 0x96, 0x2f, 0xb2, 0x23, 0xc1, 0xa0, 0xea, 0xad, 0x11, 0x33, 0x6c, 0x66, 0x61, 0x26, 0x38, 0xa8, 0x4b, 0x58, 0x65, 0xb5, 0x05, 0x01, 0xf0, 0x66, 0x7e, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8742 = { .name = "ecdsa_secp384r1_sha3_512_8742", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8742_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8742_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8742_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8743 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8743_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8743_msg[] = { 0x31, 0x35, 0x39, 0x38, 0x35, 0x31, 0x35, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8743_sig[] = { 0x2b, 0x1b, 0x1e, 0x7c, 0x87, 0xe0, 0x40, 0x1b, 0xe9, 0x35, 0x91, 0x9c, 0x50, 0x9e, 0x02, 0x0b, 0x39, 0x1b, 0x4d, 0x52, 0x42, 0xdf, 0x35, 0x84, 0xf4, 0x65, 0xc3, 0x16, 0xc8, 0x85, 0x43, 0xa8, 0x5f, 0x58, 0xdd, 0x7e, 0xca, 0x62, 0x0e, 0x2c, 0x16, 0xd8, 0x60, 0x68, 0x01, 0x38, 0x92, 0xf5, 0xa2, 0x17, 0xfa, 0x87, 0x85, 0xfc, 0xbc, 0xe6, 0xe5, 0xb1, 0xad, 0x7d, 0x9b, 0xde, 0x09, 0xaa, 0x25, 0x1a, 0x6e, 0x3e, 0x91, 0x5d, 0xf5, 0xf4, 0x4e, 0xcb, 0x0d, 0x43, 0xba, 0xf3, 0x3e, 0xc1, 0x97, 0x53, 0x7b, 0x2a, 0xc2, 0xd4, 0x13, 0x66, 0x3f, 0xf1, 0x9c, 0x4d, 0x98, 0x94, 0x3b, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8743 = { .name = "ecdsa_secp384r1_sha3_512_8743", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8743_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8743_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8743_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8744 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8744_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8744_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x30, 0x31, 0x36, 0x31, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8744_sig[] = { 0xf3, 0xe8, 0x88, 0x2f, 0x07, 0xc7, 0x8c, 0x0b, 0x60, 0x91, 0x5c, 0x07, 0x8a, 0xf9, 0x78, 0xa7, 0x9e, 0x9e, 0x9f, 0x64, 0x20, 0x1e, 0xd5, 0x14, 0x08, 0xe3, 0x77, 0x6f, 0xd3, 0x38, 0x30, 0xa0, 0x6e, 0x60, 0x66, 0xda, 0xb7, 0x21, 0x8d, 0xf8, 0xcb, 0xaf, 0xdb, 0xd7, 0xef, 0xee, 0xd8, 0x66, 0xea, 0x37, 0xa3, 0x52, 0x5b, 0xd2, 0xb4, 0x89, 0x91, 0xe3, 0xc8, 0x2d, 0x8e, 0x99, 0x02, 0x69, 0x3b, 0xe6, 0x5e, 0xb0, 0x95, 0x3c, 0xb9, 0x7a, 0x7f, 0x45, 0x38, 0x1d, 0x4b, 0xa7, 0x59, 0x8f, 0x9f, 0x07, 0x6c, 0x0e, 0x42, 0x22, 0xc9, 0x2a, 0x7d, 0x9d, 0xea, 0x7b, 0xa0, 0x66, 0x84, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8744 = { .name = "ecdsa_secp384r1_sha3_512_8744", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8744_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8744_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8744_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8745 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8745_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8745_msg[] = { 0x32, 0x30, 0x30, 0x34, 0x37, 0x38, 0x33, 0x33, 0x33, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8745_sig[] = { 0x8a, 0x37, 0xc7, 0xba, 0x93, 0x2e, 0x24, 0x99, 0x87, 0xad, 0xc4, 0xb8, 0x60, 0xa1, 0x44, 0x77, 0x27, 0xb7, 0x5d, 0x23, 0x96, 0xae, 0x57, 0x7e, 0x60, 0xa4, 0x33, 0x3e, 0x11, 0x6a, 0x88, 0x75, 0x5b, 0x9b, 0x0b, 0xc9, 0xab, 0x6f, 0x99, 0x80, 0x42, 0xf4, 0x55, 0xc5, 0xca, 0x3e, 0xfe, 0x45, 0x2b, 0xab, 0x3f, 0x9a, 0x0f, 0xc3, 0xf0, 0xd8, 0x4a, 0xd1, 0xfe, 0x46, 0x52, 0x16, 0x0c, 0xb0, 0x6a, 0x47, 0x76, 0x01, 0x37, 0x41, 0xc5, 0xdf, 0x39, 0x54, 0x75, 0x34, 0xf5, 0x3d, 0x25, 0x5b, 0xae, 0x0f, 0xce, 0xc9, 0xa8, 0x0b, 0x65, 0xb7, 0x5b, 0x86, 0x96, 0x16, 0xd7, 0x98, 0x61, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8745 = { .name = "ecdsa_secp384r1_sha3_512_8745", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8745_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8745_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8745_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8746 for ECDSA, tcId is 240 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8746_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8746_msg[] = { 0x39, 0x35, 0x30, 0x30, 0x32, 0x34, 0x37, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8746_sig[] = { 0x3d, 0xad, 0xe5, 0xc9, 0xf3, 0xc3, 0xdf, 0x65, 0x8b, 0x91, 0xe7, 0x3b, 0x58, 0x37, 0x16, 0x15, 0x20, 0xc5, 0x47, 0xfa, 0x93, 0x0c, 0x06, 0x82, 0xe4, 0x45, 0xc9, 0x0a, 0x99, 0xab, 0x81, 0x52, 0x42, 0x00, 0xc3, 0x57, 0x87, 0x03, 0xc8, 0x15, 0xfc, 0x79, 0x4c, 0x17, 0x8a, 0xe1, 0x13, 0xe7, 0x86, 0x64, 0x07, 0xb2, 0xdb, 0xc0, 0x1d, 0x52, 0x3d, 0xf6, 0x32, 0x44, 0x7e, 0x01, 0x48, 0x8e, 0xbf, 0x35, 0xa5, 0x49, 0x44, 0xf4, 0xfb, 0x05, 0x4c, 0xb8, 0x9d, 0x31, 0xed, 0x15, 0xbe, 0xc3, 0xe8, 0xbc, 0xef, 0xfe, 0x4a, 0x42, 0x2b, 0xa2, 0x7c, 0xb4, 0x26, 0x75, 0xf3, 0x7d, 0xf5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8746 = { .name = "ecdsa_secp384r1_sha3_512_8746", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8746_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8746_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8746_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8747 for ECDSA, tcId is 241 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8747_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8747_msg[] = { 0x32, 0x32, 0x30, 0x39, 0x35, 0x30, 0x30, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8747_sig[] = { 0x0d, 0xba, 0xbe, 0x75, 0xfa, 0x65, 0x38, 0xe0, 0x86, 0x1b, 0xbb, 0x50, 0x2f, 0x93, 0x07, 0x47, 0xfb, 0x57, 0xcb, 0x4d, 0xcd, 0x34, 0x4d, 0xb3, 0x94, 0x71, 0x4e, 0x0c, 0xcb, 0xba, 0x35, 0xab, 0x83, 0x2c, 0x42, 0xad, 0x48, 0x95, 0xa0, 0xba, 0xe2, 0x14, 0x8a, 0x4c, 0xd2, 0x22, 0xf3, 0x38, 0xf4, 0x6c, 0x22, 0x3b, 0x04, 0x62, 0xa5, 0xde, 0xc8, 0xe1, 0x80, 0xed, 0x08, 0x37, 0x36, 0xa8, 0x6d, 0x05, 0xa2, 0x9b, 0x5f, 0x1d, 0x60, 0x0a, 0xef, 0x1b, 0x74, 0xbd, 0x37, 0x97, 0x1d, 0x56, 0xd9, 0x16, 0x61, 0x50, 0x6c, 0x50, 0x02, 0x60, 0xb5, 0xb5, 0x11, 0x40, 0x33, 0x6e, 0x66, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8747 = { .name = "ecdsa_secp384r1_sha3_512_8747", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8747_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8747_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8747_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8748 for ECDSA, tcId is 242 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8748_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8748_msg[] = { 0x38, 0x31, 0x39, 0x33, 0x37, 0x38, 0x39, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8748_sig[] = { 0x81, 0x0c, 0x6c, 0x1b, 0x6e, 0xed, 0x63, 0x96, 0xb6, 0xd2, 0x39, 0x32, 0xa8, 0xdc, 0x5a, 0x73, 0xb7, 0x64, 0x0c, 0x5f, 0x5a, 0xf2, 0xaf, 0x29, 0x1f, 0xd8, 0x67, 0xcd, 0x48, 0x4a, 0x94, 0x0c, 0xe4, 0xbf, 0x65, 0xf4, 0x53, 0xc9, 0x91, 0xe0, 0x8d, 0x5e, 0x78, 0xc0, 0xee, 0xab, 0xb0, 0x8d, 0x47, 0x92, 0x09, 0x14, 0xc9, 0x35, 0x72, 0x7f, 0x8f, 0xbf, 0xe9, 0xea, 0x39, 0x19, 0x99, 0x8b, 0xa8, 0x45, 0x53, 0x49, 0x19, 0x9b, 0x34, 0xfc, 0x7d, 0xfd, 0x9a, 0x98, 0x2b, 0xd6, 0x86, 0xb0, 0x83, 0x02, 0x17, 0x1d, 0xef, 0xc5, 0xbc, 0xe0, 0x28, 0x93, 0xc5, 0x7a, 0x0d, 0x1b, 0x27, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8748 = { .name = "ecdsa_secp384r1_sha3_512_8748", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8748_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8748_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8748_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8749 for ECDSA, tcId is 243 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8749_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8749_msg[] = { 0x33, 0x36, 0x35, 0x30, 0x36, 0x30, 0x33, 0x32, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8749_sig[] = { 0xb7, 0x8c, 0x8f, 0x50, 0x2a, 0xa5, 0x39, 0x8a, 0xaf, 0x25, 0xeb, 0xaf, 0xda, 0x69, 0xf3, 0x6c, 0xf0, 0x42, 0x0e, 0x40, 0xef, 0x54, 0x2d, 0x82, 0xe9, 0x0e, 0x4a, 0x9a, 0x38, 0xab, 0x4c, 0x7f, 0x35, 0xfb, 0x4a, 0xe4, 0x18, 0xba, 0xde, 0xbb, 0xa8, 0x34, 0x9e, 0x41, 0xae, 0xdf, 0x53, 0xc3, 0xe0, 0xdf, 0x0d, 0xc9, 0x85, 0xa2, 0x46, 0x06, 0xc9, 0xbe, 0x53, 0x7e, 0xba, 0xaf, 0x7d, 0xbd, 0xa3, 0xff, 0x7b, 0x0b, 0xcd, 0xe1, 0x9f, 0x09, 0x62, 0xce, 0xc1, 0xf4, 0x3c, 0x42, 0xf2, 0x02, 0x81, 0x87, 0x77, 0x76, 0x93, 0xd0, 0x8c, 0x07, 0xb1, 0xa9, 0x93, 0x5c, 0xd1, 0xd1, 0xf5, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8749 = { .name = "ecdsa_secp384r1_sha3_512_8749", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8749_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8749_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8749_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8750 for ECDSA, tcId is 244 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8750_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8750_msg[] = { 0x31, 0x36, 0x33, 0x38, 0x33, 0x39, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8750_sig[] = { 0xee, 0xbe, 0x68, 0x1f, 0xb8, 0xe6, 0xed, 0x44, 0x74, 0x7d, 0x37, 0x51, 0x3d, 0xe1, 0x23, 0x31, 0x30, 0xc9, 0x9e, 0xe3, 0x79, 0x61, 0x0b, 0x6e, 0xd2, 0xdd, 0x38, 0x9b, 0x22, 0x37, 0x55, 0xe2, 0x9e, 0x18, 0x18, 0x4a, 0xbf, 0x5a, 0x79, 0x19, 0x5e, 0x20, 0x2a, 0x61, 0xfd, 0xd9, 0x38, 0xac, 0xc3, 0x36, 0xc3, 0x2e, 0x83, 0x42, 0xd3, 0xb4, 0x33, 0x43, 0x69, 0xf4, 0x9c, 0xc6, 0xd4, 0x8e, 0x6d, 0x59, 0x13, 0x98, 0x8c, 0xb3, 0xac, 0x4d, 0x7d, 0xeb, 0xd0, 0x7c, 0x43, 0x33, 0xa4, 0x61, 0x2e, 0x23, 0x87, 0xf1, 0x11, 0xd6, 0xc0, 0x29, 0xaa, 0x65, 0xdc, 0x3c, 0xbf, 0xc5, 0x09, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8750 = { .name = "ecdsa_secp384r1_sha3_512_8750", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8750_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8750_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8750_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8751 for ECDSA, tcId is 245 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8751_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8751_msg[] = { 0x32, 0x30, 0x39, 0x31, 0x37, 0x36, 0x38, 0x32, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8751_sig[] = { 0xed, 0xfa, 0xec, 0x64, 0x89, 0xe5, 0x80, 0x21, 0xc6, 0x99, 0x66, 0x2c, 0x52, 0xfa, 0x05, 0x93, 0xbc, 0x27, 0x87, 0x88, 0x38, 0x0f, 0x3a, 0x5b, 0x13, 0xc4, 0x2f, 0xf8, 0xf6, 0x8b, 0x3e, 0x7a, 0xfe, 0x26, 0x62, 0x07, 0x58, 0x9f, 0x33, 0x1c, 0xf4, 0xa1, 0xe6, 0x21, 0xb4, 0xfe, 0xce, 0xf1, 0x8f, 0xb9, 0x1c, 0x6d, 0xec, 0xd2, 0xd4, 0x9c, 0x8d, 0x90, 0x1a, 0x8e, 0xc4, 0x3f, 0x7d, 0xa9, 0x1f, 0x87, 0x75, 0x0a, 0xbf, 0x72, 0x69, 0x6d, 0x0c, 0x87, 0xc4, 0x25, 0x8a, 0xe6, 0x3e, 0xa3, 0xe5, 0xbd, 0xbc, 0x34, 0xe0, 0x03, 0x1f, 0x95, 0xb3, 0x60, 0x79, 0xd3, 0x79, 0x1d, 0xa0, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8751 = { .name = "ecdsa_secp384r1_sha3_512_8751", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8751_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8751_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8751_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8752 for ECDSA, tcId is 246 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8752_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8752_msg[] = { 0x39, 0x33, 0x36, 0x34, 0x37, 0x30, 0x32, 0x38, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8752_sig[] = { 0xbd, 0x74, 0x6f, 0xfa, 0x50, 0x59, 0xd9, 0xe8, 0x87, 0xfa, 0xb3, 0xbe, 0x1c, 0x53, 0xc2, 0x1d, 0x47, 0xe6, 0x42, 0xcb, 0xd3, 0x2b, 0xf3, 0xda, 0x4d, 0x1e, 0xf1, 0xe8, 0x16, 0xe7, 0x5c, 0xb0, 0x2b, 0x14, 0xc5, 0x8a, 0x6e, 0xcb, 0x50, 0xd4, 0xfc, 0xe2, 0xbb, 0x86, 0xb8, 0xaa, 0x15, 0xfb, 0xbf, 0xac, 0xd0, 0x71, 0x54, 0x1d, 0x1c, 0xec, 0x2c, 0xf9, 0x7a, 0x82, 0x16, 0x2a, 0xba, 0x7a, 0xac, 0x62, 0x12, 0x00, 0x13, 0xa8, 0x35, 0x14, 0xd7, 0xdc, 0xc3, 0x5d, 0x11, 0xf5, 0x64, 0x6b, 0xb1, 0xc0, 0x0c, 0x3d, 0xc6, 0x2b, 0x8e, 0xe7, 0x4a, 0xc5, 0x68, 0x8a, 0xa7, 0xd6, 0x05, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8752 = { .name = "ecdsa_secp384r1_sha3_512_8752", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8752_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8752_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8752_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8753 for ECDSA, tcId is 247 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8753_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8753_msg[] = { 0x39, 0x32, 0x36, 0x38, 0x36, 0x38, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8753_sig[] = { 0xc4, 0x2e, 0x5e, 0xee, 0xcf, 0xeb, 0x6f, 0x34, 0x1a, 0x2c, 0x43, 0xe8, 0x63, 0xbb, 0xc9, 0xbb, 0x93, 0x18, 0xe6, 0x7c, 0x14, 0x64, 0xfb, 0xf0, 0xdf, 0x53, 0xae, 0xe6, 0x91, 0x56, 0x52, 0x0a, 0x59, 0xc9, 0x6f, 0xd4, 0xb2, 0xe8, 0x33, 0xa5, 0x31, 0xfd, 0x15, 0xe5, 0xb8, 0xa2, 0x27, 0xb3, 0xd9, 0xda, 0xd6, 0x75, 0xa1, 0xed, 0xb4, 0xee, 0x2f, 0x71, 0x11, 0x77, 0xdb, 0x77, 0x21, 0x9d, 0x6e, 0x00, 0x65, 0x72, 0x47, 0x6a, 0x7d, 0x35, 0x9b, 0xaf, 0x2a, 0x84, 0x6a, 0x36, 0x55, 0xa9, 0x7f, 0xe2, 0xe4, 0xb1, 0x09, 0xcf, 0x6b, 0x5d, 0xd4, 0xc7, 0xbc, 0x65, 0x7d, 0xf9, 0xa9, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8753 = { .name = "ecdsa_secp384r1_sha3_512_8753", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8753_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8753_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8753_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8754 for ECDSA, tcId is 248 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8754_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8754_msg[] = { 0x35, 0x31, 0x37, 0x38, 0x31, 0x33, 0x34, 0x38, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8754_sig[] = { 0xf7, 0x04, 0xc0, 0x37, 0xbf, 0xc4, 0x35, 0x38, 0xce, 0xa1, 0x5d, 0x6f, 0xc2, 0x0d, 0x03, 0x4b, 0xe9, 0x0b, 0x08, 0x26, 0xac, 0x65, 0xf6, 0x4d, 0xfd, 0xff, 0x42, 0x9c, 0x0e, 0xf0, 0xb8, 0x4e, 0x96, 0xaa, 0xae, 0x20, 0x7b, 0x2f, 0x9b, 0xb9, 0xee, 0xab, 0x1d, 0x38, 0x2d, 0x76, 0x34, 0xb4, 0x7b, 0xed, 0x53, 0x2d, 0xf0, 0x7a, 0x9f, 0x04, 0xfb, 0x77, 0x90, 0x83, 0x6d, 0xd0, 0x6e, 0x35, 0x83, 0x88, 0x91, 0x2d, 0x5c, 0xd7, 0xb5, 0xeb, 0xfd, 0xc7, 0xab, 0xd2, 0xe1, 0x51, 0x04, 0x43, 0x29, 0x77, 0x63, 0xd6, 0xa9, 0x46, 0x0e, 0x3b, 0xb2, 0x04, 0xf2, 0x82, 0xa9, 0xe2, 0x19, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8754 = { .name = "ecdsa_secp384r1_sha3_512_8754", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8754_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8754_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8754_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8755 for ECDSA, tcId is 249 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8755_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8755_msg[] = { 0x34, 0x37, 0x33, 0x35, 0x30, 0x31, 0x30, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8755_sig[] = { 0xb3, 0x6a, 0x25, 0x4a, 0x2b, 0xec, 0x5f, 0x2d, 0xc6, 0x23, 0x02, 0x45, 0x7c, 0x20, 0xe8, 0xee, 0x07, 0x47, 0xec, 0x65, 0x3b, 0x51, 0x0b, 0xf9, 0xaf, 0x9d, 0x9b, 0x9d, 0xc7, 0xac, 0x05, 0xe4, 0xfd, 0x65, 0x78, 0xdf, 0xc6, 0x60, 0x80, 0x19, 0xad, 0x80, 0x34, 0xaf, 0xd1, 0x4d, 0xa0, 0x4b, 0x73, 0xcd, 0xec, 0x37, 0x52, 0xfa, 0x0d, 0xe7, 0x1a, 0x3f, 0xa5, 0x6e, 0x4d, 0xd8, 0x9a, 0xf0, 0xec, 0xde, 0x8d, 0xe5, 0x4b, 0x39, 0xb6, 0x38, 0xa1, 0xa3, 0xd8, 0x59, 0x28, 0xa1, 0x9e, 0x8c, 0x20, 0x8f, 0xed, 0xdf, 0x5d, 0x35, 0xa2, 0x51, 0xd9, 0xb7, 0x35, 0x0a, 0x4b, 0x18, 0x37, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8755 = { .name = "ecdsa_secp384r1_sha3_512_8755", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8755_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8755_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8755_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8756 for ECDSA, tcId is 250 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8756_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8756_msg[] = { 0x31, 0x34, 0x33, 0x35, 0x33, 0x39, 0x31, 0x31, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8756_sig[] = { 0x18, 0xdc, 0x65, 0x0e, 0x8c, 0x18, 0x6c, 0x04, 0xa7, 0x56, 0x04, 0x67, 0xfe, 0x8d, 0x87, 0xeb, 0x61, 0xdf, 0xf7, 0xca, 0x40, 0x09, 0x24, 0xdd, 0x3f, 0x36, 0xca, 0xb1, 0xc8, 0x1f, 0x25, 0x28, 0x1b, 0x69, 0xb1, 0x85, 0x61, 0xbb, 0xda, 0xab, 0x57, 0x15, 0xb9, 0x97, 0xaa, 0x21, 0xc1, 0x03, 0xa6, 0x5a, 0xb7, 0x98, 0x77, 0xd0, 0x6f, 0x72, 0x18, 0xf0, 0x0e, 0xa7, 0x2d, 0x87, 0x1a, 0x77, 0x93, 0x3e, 0xc8, 0x48, 0x7a, 0x35, 0xf0, 0xec, 0x21, 0x45, 0x05, 0x67, 0xe6, 0xbd, 0x01, 0x6d, 0x88, 0x78, 0xf3, 0x6b, 0xc6, 0x76, 0x55, 0xb4, 0xb0, 0x9e, 0x8c, 0x76, 0x56, 0x43, 0xe2, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8756 = { .name = "ecdsa_secp384r1_sha3_512_8756", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8756_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8756_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8756_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8757 for ECDSA, tcId is 251 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8757_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8757_msg[] = { 0x31, 0x33, 0x38, 0x34, 0x35, 0x34, 0x39, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8757_sig[] = { 0xe8, 0x04, 0x39, 0xc8, 0x07, 0xbd, 0xba, 0x93, 0x21, 0x1d, 0xd1, 0xa6, 0x31, 0x59, 0xb9, 0xa4, 0xdd, 0xe1, 0xb6, 0x27, 0xee, 0xc6, 0x2f, 0x09, 0x93, 0x9c, 0x07, 0x51, 0xcd, 0xee, 0xe9, 0xb5, 0x8f, 0xa3, 0xae, 0xf5, 0x07, 0xb9, 0x6c, 0xd3, 0xec, 0x81, 0x9d, 0x7a, 0xc4, 0x60, 0xc6, 0xd7, 0xc0, 0x73, 0x5c, 0xa5, 0x35, 0x71, 0xc1, 0x60, 0x13, 0x08, 0xdc, 0xcf, 0x51, 0x0a, 0x82, 0x5e, 0xb6, 0xb9, 0x59, 0xae, 0xd1, 0x1c, 0xbf, 0xeb, 0xce, 0x36, 0x0c, 0x8f, 0x9f, 0x54, 0xe0, 0x1f, 0x61, 0xb7, 0x19, 0x5b, 0x07, 0xfd, 0xfd, 0xbe, 0xb5, 0xa4, 0xbf, 0x2b, 0x9a, 0xf2, 0xd7, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8757 = { .name = "ecdsa_secp384r1_sha3_512_8757", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8757_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8757_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8757_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8758 for ECDSA, tcId is 252 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8758_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8758_msg[] = { 0x32, 0x37, 0x36, 0x32, 0x31, 0x39, 0x32, 0x37, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8758_sig[] = { 0xc6, 0x73, 0x62, 0x41, 0x16, 0xd7, 0xaa, 0x29, 0x43, 0xb6, 0x0d, 0xb7, 0x2b, 0x9c, 0x59, 0xb7, 0x34, 0xf9, 0x37, 0xea, 0x07, 0x77, 0x88, 0xa5, 0x81, 0x14, 0x15, 0x39, 0xb0, 0xdd, 0xd3, 0xa8, 0x2e, 0x45, 0x52, 0xcd, 0x9a, 0xed, 0x07, 0x3c, 0xf2, 0x34, 0x23, 0x0d, 0xcc, 0x1a, 0x8e, 0x51, 0xa4, 0xf9, 0x3e, 0xd4, 0xb0, 0xaf, 0xe9, 0x96, 0x45, 0x65, 0xde, 0x3b, 0x73, 0xe7, 0x72, 0x58, 0xa7, 0xae, 0x57, 0x34, 0x56, 0x4b, 0x74, 0xb8, 0xcc, 0xb1, 0xc7, 0xe6, 0x12, 0xc2, 0xb4, 0xfc, 0x86, 0x92, 0x37, 0xa6, 0xdf, 0xd3, 0x17, 0xbb, 0xaf, 0x2b, 0xd7, 0x5b, 0x08, 0xc4, 0xe6, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8758 = { .name = "ecdsa_secp384r1_sha3_512_8758", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8758_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8758_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8758_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8759 for ECDSA, tcId is 253 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8759_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8759_msg[] = { 0x31, 0x38, 0x33, 0x31, 0x36, 0x35, 0x34, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8759_sig[] = { 0x2d, 0x93, 0x23, 0x89, 0x73, 0x83, 0xe7, 0x20, 0xa0, 0x8d, 0x05, 0xf2, 0xed, 0x51, 0xf4, 0xf4, 0xe2, 0x67, 0x17, 0x48, 0x93, 0x25, 0x3f, 0xc6, 0xe4, 0x75, 0x18, 0x8f, 0x00, 0xee, 0x88, 0x1e, 0xf7, 0x1f, 0xdf, 0xb1, 0x93, 0x37, 0xf6, 0x80, 0x0e, 0x49, 0x22, 0x90, 0xb7, 0xb8, 0xa3, 0xe2, 0xbd, 0xf5, 0xd4, 0x5c, 0x4f, 0xb9, 0x89, 0xdb, 0x43, 0x53, 0xcc, 0xa9, 0x99, 0x06, 0x5f, 0x9b, 0xfe, 0x51, 0x42, 0x3b, 0xf6, 0x10, 0x83, 0xb8, 0x2b, 0x9c, 0x23, 0xbd, 0x2f, 0x25, 0x78, 0x7f, 0x22, 0xee, 0x5b, 0xce, 0xc9, 0x70, 0x4f, 0xbb, 0x90, 0xa0, 0x96, 0xe8, 0x5d, 0xfd, 0x4c, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8759 = { .name = "ecdsa_secp384r1_sha3_512_8759", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8759_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8759_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8759_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8760 for ECDSA, tcId is 254 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8760_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8760_msg[] = { 0x32, 0x34, 0x33, 0x36, 0x38, 0x39, 0x39, 0x30, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8760_sig[] = { 0x7f, 0x31, 0xcb, 0xd1, 0x4d, 0xbb, 0x0d, 0x07, 0x9b, 0x43, 0xcc, 0xa2, 0x00, 0xe7, 0x58, 0xac, 0xb4, 0x29, 0xab, 0x33, 0xeb, 0x8f, 0x99, 0xad, 0x2c, 0x2e, 0x1f, 0x0b, 0xe5, 0x1d, 0x0e, 0x20, 0xe8, 0x88, 0xbe, 0xd0, 0x56, 0x3f, 0x5d, 0x80, 0xa7, 0xba, 0x60, 0x3b, 0xc1, 0x84, 0xbd, 0x52, 0x57, 0x2b, 0x79, 0x75, 0x0a, 0xd4, 0x21, 0xc4, 0x3c, 0xa2, 0xee, 0xc7, 0xc7, 0x3b, 0xa7, 0xec, 0xe9, 0x01, 0x3c, 0x09, 0xdd, 0x02, 0xbf, 0x56, 0xdb, 0x86, 0x0e, 0xbb, 0x04, 0xb0, 0x60, 0xa9, 0x71, 0xd9, 0xba, 0x04, 0x39, 0x75, 0xab, 0xf3, 0x40, 0xba, 0x80, 0x1a, 0xe0, 0xbf, 0xc7, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8760 = { .name = "ecdsa_secp384r1_sha3_512_8760", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8760_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8760_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8760_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8761 for ECDSA, tcId is 255 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8761_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8761_msg[] = { 0x32, 0x30, 0x34, 0x30, 0x34, 0x31, 0x32, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8761_sig[] = { 0x9c, 0x45, 0x59, 0xb0, 0x76, 0xbe, 0xb6, 0xa4, 0x9a, 0x55, 0x8d, 0x7d, 0x9b, 0xd6, 0x8a, 0xd5, 0x7f, 0x26, 0xc7, 0xd8, 0xf5, 0xb4, 0xa7, 0x0a, 0x4b, 0x44, 0x18, 0x27, 0x99, 0x81, 0x05, 0x18, 0xe3, 0xff, 0xa9, 0xe8, 0x8e, 0x06, 0xe4, 0xe8, 0x07, 0x92, 0x69, 0x5c, 0xdf, 0x59, 0x8d, 0xcb, 0x97, 0x70, 0x43, 0xd2, 0x08, 0x70, 0xac, 0xa8, 0x86, 0xb9, 0x4b, 0x59, 0xd9, 0x91, 0xf1, 0x81, 0x67, 0xf9, 0xb8, 0x46, 0xe6, 0x4c, 0xe4, 0x2c, 0x9c, 0x5f, 0x4e, 0x76, 0x1a, 0x53, 0x4f, 0xa1, 0x78, 0xf9, 0x9d, 0x8b, 0x9f, 0xf7, 0xd1, 0xd3, 0x11, 0x9a, 0xf4, 0xc2, 0x06, 0xe3, 0xa9, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8761 = { .name = "ecdsa_secp384r1_sha3_512_8761", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8761_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8761_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8761_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8762 for ECDSA, tcId is 256 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8762_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8762_msg[] = { 0x33, 0x33, 0x33, 0x37, 0x31, 0x31, 0x39, 0x39, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8762_sig[] = { 0x21, 0x6f, 0xa8, 0x58, 0xf9, 0x8c, 0x2c, 0x36, 0xe1, 0xd6, 0x36, 0x12, 0xd8, 0xe3, 0x03, 0xad, 0x1e, 0x79, 0xc2, 0xbe, 0x9d, 0xf5, 0x6e, 0x4b, 0x91, 0x4b, 0x39, 0x07, 0x1e, 0x3c, 0xf6, 0x73, 0x05, 0x19, 0xae, 0xc8, 0x2e, 0x7a, 0x4b, 0x95, 0x33, 0x87, 0xc5, 0x96, 0x8c, 0x7e, 0xe2, 0xa6, 0x9d, 0xbb, 0x30, 0x99, 0x0b, 0x54, 0x7d, 0xac, 0x67, 0x16, 0xa9, 0x66, 0x3d, 0xec, 0x4a, 0xda, 0xb9, 0x5c, 0x8b, 0x96, 0x27, 0xeb, 0x82, 0x32, 0x49, 0x60, 0x88, 0x0c, 0x06, 0x65, 0x2f, 0x95, 0xf2, 0x31, 0x5f, 0x77, 0x96, 0x37, 0x69, 0xbe, 0x04, 0xba, 0xac, 0x72, 0x57, 0x26, 0xef, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8762 = { .name = "ecdsa_secp384r1_sha3_512_8762", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8762_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8762_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8762_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8763 for ECDSA, tcId is 257 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8763_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8763_msg[] = { 0x36, 0x36, 0x39, 0x35, 0x36, 0x32, 0x30, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8763_sig[] = { 0xf4, 0xad, 0xe3, 0x88, 0x5d, 0x93, 0x01, 0x9d, 0xec, 0xe7, 0xc2, 0xd0, 0xc6, 0x0e, 0xd2, 0x81, 0xe6, 0xdf, 0x18, 0x93, 0x89, 0xf6, 0xb3, 0x26, 0x08, 0xd0, 0x3e, 0x07, 0x5f, 0x2c, 0x21, 0x03, 0x8f, 0x6c, 0xdc, 0x17, 0x59, 0xb3, 0x12, 0x1f, 0x4b, 0xce, 0xc6, 0x2b, 0xe0, 0xce, 0xd2, 0x47, 0xc5, 0x23, 0xd6, 0xc8, 0x3f, 0xdc, 0xc6, 0xfe, 0xe5, 0xf2, 0x50, 0xe8, 0x01, 0x43, 0x5c, 0x4b, 0xd6, 0xff, 0x32, 0x70, 0x2a, 0xa3, 0x79, 0xf4, 0xe0, 0x76, 0x34, 0xd2, 0x9c, 0x5f, 0xc0, 0xc5, 0x98, 0xa3, 0x03, 0x32, 0xbd, 0x7e, 0xe2, 0x35, 0xcf, 0x5e, 0x7c, 0xfa, 0xa1, 0x21, 0xd6, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8763 = { .name = "ecdsa_secp384r1_sha3_512_8763", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8763_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8763_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8763_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8764 for ECDSA, tcId is 258 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8764_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8764_msg[] = { 0x32, 0x30, 0x39, 0x33, 0x30, 0x31, 0x37, 0x37, 0x34, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8764_sig[] = { 0x36, 0x57, 0x27, 0x20, 0x51, 0xa5, 0x89, 0x29, 0x83, 0x15, 0x01, 0x31, 0xcb, 0x07, 0xb1, 0xa1, 0x0d, 0xe3, 0xa8, 0x2a, 0x36, 0x6e, 0x2c, 0x18, 0xa6, 0x30, 0x10, 0x0e, 0x75, 0x28, 0x1f, 0x77, 0xc0, 0x74, 0x11, 0x7a, 0x2b, 0xd0, 0xf8, 0x6d, 0xf7, 0x22, 0xbd, 0xb7, 0x79, 0x39, 0x35, 0x20, 0x65, 0x6b, 0xf9, 0xb0, 0x02, 0xf1, 0xde, 0x2a, 0x6a, 0x4e, 0x96, 0x7d, 0x5b, 0xf2, 0xd1, 0x16, 0x75, 0x94, 0xfb, 0x1e, 0x7f, 0x02, 0xfa, 0x89, 0x90, 0xd7, 0x81, 0x56, 0x8e, 0xe7, 0x98, 0x6c, 0x2b, 0x16, 0x1c, 0x3d, 0xfb, 0xd4, 0xe9, 0xc5, 0x4b, 0x99, 0xaf, 0x62, 0xd3, 0x89, 0xe5, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8764 = { .name = "ecdsa_secp384r1_sha3_512_8764", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8764_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8764_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8764_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8765 for ECDSA, tcId is 259 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8765_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x31, 0x37, 0x39, 0x31, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8765_sig[] = { 0x0e, 0x6b, 0x00, 0xb7, 0x86, 0x8a, 0xb7, 0xf1, 0xa7, 0xd7, 0x38, 0xcf, 0x23, 0x1f, 0x11, 0xa8, 0x5e, 0x7d, 0xf4, 0xc8, 0xb8, 0xe3, 0xfd, 0x0c, 0x64, 0xe3, 0xa2, 0x61, 0xf9, 0x86, 0xa2, 0x02, 0x55, 0xbf, 0x60, 0xfa, 0x98, 0x2c, 0xfd, 0x86, 0xfc, 0xbd, 0x6a, 0xb8, 0x76, 0x99, 0x41, 0xd8, 0x36, 0xb8, 0x10, 0x7a, 0x32, 0x70, 0x26, 0xb9, 0x3b, 0xa8, 0xfc, 0x9d, 0x12, 0xc0, 0x87, 0xce, 0x06, 0xde, 0x3e, 0x7f, 0x02, 0xa5, 0x13, 0xf5, 0x20, 0xba, 0x83, 0x48, 0x17, 0x89, 0xa3, 0x3a, 0x66, 0x67, 0xe4, 0xd9, 0x6f, 0x54, 0x78, 0x4b, 0x3c, 0xbe, 0x5f, 0x61, 0x33, 0xf7, 0x64, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8765 = { .name = "ecdsa_secp384r1_sha3_512_8765", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8765_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8765_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8765_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8766 for ECDSA, tcId is 260 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8766_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8766_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, 0x36, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8766_sig[] = { 0xe9, 0x99, 0xa6, 0xf8, 0x9b, 0x37, 0xeb, 0x88, 0xad, 0xd8, 0x2e, 0xe5, 0x50, 0x0f, 0xbf, 0xea, 0x4d, 0x08, 0x5e, 0xa8, 0x9a, 0xa8, 0x7d, 0xc5, 0x1a, 0x5e, 0x02, 0x31, 0xfb, 0x98, 0xe2, 0x30, 0xe2, 0x7c, 0xc7, 0xd8, 0xfb, 0x3f, 0x4c, 0xb5, 0x0d, 0x73, 0x1b, 0x2d, 0x9f, 0x95, 0xe4, 0xa7, 0x68, 0x47, 0x91, 0xd3, 0x76, 0x26, 0x12, 0x75, 0xce, 0x51, 0x79, 0xbf, 0x38, 0xfd, 0x38, 0xad, 0xbf, 0xa0, 0x44, 0x58, 0x55, 0xd2, 0x54, 0x01, 0x56, 0x63, 0x80, 0xf3, 0xac, 0x47, 0xb9, 0x7a, 0x5a, 0xa0, 0x13, 0x4a, 0x06, 0xda, 0xee, 0xef, 0x1b, 0x5c, 0xd1, 0x20, 0x3b, 0x7f, 0xa0, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8766 = { .name = "ecdsa_secp384r1_sha3_512_8766", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8766_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8766_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8766_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8767 for ECDSA, tcId is 261 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8767_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8767_msg[] = { 0x31, 0x31, 0x34, 0x31, 0x37, 0x32, 0x34, 0x31, 0x34, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8767_sig[] = { 0x12, 0x1d, 0xf5, 0x56, 0xb6, 0xe2, 0x9f, 0xef, 0x7c, 0xcb, 0x87, 0x5d, 0xc2, 0xba, 0xe6, 0x5f, 0x8b, 0xd4, 0xb3, 0x36, 0x21, 0x42, 0x6d, 0x7f, 0xc7, 0xac, 0xc2, 0x00, 0x3a, 0x01, 0x6a, 0x95, 0xae, 0x5f, 0xe3, 0xf2, 0x29, 0x24, 0x01, 0x9e, 0xf9, 0xe5, 0xf2, 0x16, 0xbf, 0x21, 0xd6, 0x06, 0x97, 0xea, 0x41, 0x26, 0xcb, 0x43, 0xac, 0x8f, 0x19, 0x38, 0xee, 0x82, 0x32, 0x3c, 0x3e, 0x31, 0x77, 0xc0, 0x9f, 0x8b, 0x7a, 0x7b, 0xb8, 0x62, 0xfa, 0xfc, 0x9c, 0xee, 0x13, 0x39, 0xe1, 0x93, 0x29, 0xdc, 0x8a, 0x26, 0x1c, 0xda, 0x1b, 0x05, 0x0d, 0x78, 0x2d, 0xa0, 0x6e, 0x79, 0xd6, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8767 = { .name = "ecdsa_secp384r1_sha3_512_8767", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8767_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8767_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8767_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8768 for ECDSA, tcId is 262 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8768_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8768_msg[] = { 0x32, 0x32, 0x36, 0x38, 0x32, 0x34, 0x36, 0x34, 0x39, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8768_sig[] = { 0xec, 0x2e, 0x79, 0x2c, 0xfb, 0xc8, 0x5f, 0x6e, 0x25, 0x19, 0xcf, 0xcd, 0x49, 0xe9, 0xb1, 0x0e, 0x9f, 0x08, 0xa5, 0xcb, 0xe8, 0x8a, 0x68, 0xc7, 0xaf, 0xfd, 0xd8, 0x40, 0xac, 0x21, 0xf0, 0x53, 0x63, 0x19, 0x12, 0xf6, 0x2b, 0x3d, 0x45, 0xac, 0xb3, 0xcd, 0xf7, 0xdb, 0x9f, 0x78, 0xf8, 0x70, 0x0a, 0x0d, 0xa2, 0xd5, 0xe1, 0x08, 0x86, 0xf7, 0xd4, 0xd7, 0x91, 0x0a, 0xb6, 0xc4, 0xe5, 0x89, 0xfa, 0x7e, 0x89, 0xef, 0x94, 0x52, 0x93, 0x20, 0xd3, 0xc6, 0xd1, 0x68, 0xb8, 0x05, 0x6a, 0xf2, 0xb0, 0x7b, 0x0a, 0xfd, 0xfe, 0x2e, 0x33, 0x17, 0x61, 0x8f, 0xe0, 0xaa, 0x1f, 0xbb, 0x21, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8768 = { .name = "ecdsa_secp384r1_sha3_512_8768", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8768_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8768_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8768_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8769 for ECDSA, tcId is 263 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8769_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8769_msg[] = { 0x32, 0x37, 0x32, 0x34, 0x37, 0x39, 0x36, 0x37, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8769_sig[] = { 0x0d, 0xf1, 0xb7, 0x59, 0x6a, 0xde, 0x29, 0xc0, 0x9e, 0xb4, 0xa8, 0x72, 0x90, 0xec, 0x10, 0x2f, 0x2b, 0xcb, 0xa8, 0x73, 0x12, 0x81, 0xa5, 0xb3, 0x81, 0x88, 0x09, 0x51, 0x0b, 0x2d, 0x3e, 0x23, 0xe0, 0xc2, 0xb1, 0x94, 0x21, 0x9b, 0xe1, 0x14, 0x4a, 0xe3, 0x54, 0x51, 0x2d, 0x4e, 0x4c, 0x14, 0x71, 0x01, 0x58, 0xc3, 0xe7, 0x81, 0x62, 0x69, 0xbb, 0x08, 0xaf, 0x3b, 0x8b, 0x1b, 0xbb, 0xbe, 0x59, 0x5f, 0xd5, 0xab, 0x77, 0xa0, 0x6d, 0x14, 0xb4, 0x7a, 0x90, 0x03, 0xf9, 0xbc, 0x57, 0x13, 0xe4, 0x37, 0x13, 0x58, 0x73, 0xe4, 0x3c, 0x70, 0x14, 0xef, 0x07, 0xae, 0x8b, 0xe2, 0x89, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8769 = { .name = "ecdsa_secp384r1_sha3_512_8769", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8769_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8769_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8769_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8770 for ECDSA, tcId is 264 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8770_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8770_msg[] = { 0x39, 0x37, 0x33, 0x33, 0x39, 0x35, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8770_sig[] = { 0xe3, 0x64, 0x86, 0x8b, 0xc6, 0x29, 0x94, 0x1f, 0x4a, 0xab, 0x4e, 0x8c, 0xb3, 0xbb, 0x87, 0x6f, 0x39, 0x62, 0x69, 0xd4, 0xf9, 0x9e, 0x16, 0xee, 0xbc, 0xc5, 0xa8, 0xfe, 0x8b, 0xa7, 0x87, 0xc2, 0xf2, 0x26, 0xda, 0xa2, 0x99, 0x0e, 0x1f, 0x6d, 0x52, 0x60, 0xbe, 0xa7, 0x10, 0x4f, 0xed, 0x06, 0x99, 0xad, 0x58, 0x4f, 0xe5, 0xe7, 0xad, 0x21, 0x05, 0x92, 0xd5, 0xeb, 0x15, 0x8a, 0x0c, 0xf2, 0x8b, 0x19, 0xd2, 0xd9, 0xc7, 0x4a, 0x68, 0x81, 0x11, 0x36, 0x7d, 0x25, 0x4b, 0x71, 0xe3, 0x91, 0x21, 0xf6, 0xbc, 0x1a, 0xa0, 0xd7, 0xf4, 0x86, 0x1f, 0xe9, 0xf4, 0xd1, 0xcc, 0x2d, 0x9c, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8770 = { .name = "ecdsa_secp384r1_sha3_512_8770", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8770_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8770_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8770_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8771 for ECDSA, tcId is 265 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8771_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8771_msg[] = { 0x31, 0x35, 0x30, 0x37, 0x30, 0x30, 0x32, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8771_sig[] = { 0x8e, 0x68, 0x6e, 0x88, 0x74, 0x63, 0x82, 0xc9, 0x37, 0x1c, 0x8e, 0x77, 0x9c, 0x27, 0x1f, 0xcb, 0x05, 0xd1, 0x0a, 0xfa, 0x4b, 0x80, 0x1b, 0xb4, 0x5f, 0x9b, 0x48, 0xd3, 0x5f, 0x2e, 0xf9, 0x4a, 0x08, 0x59, 0x78, 0x81, 0x04, 0xfc, 0x78, 0xb5, 0x11, 0xc5, 0x32, 0x4e, 0x20, 0x9f, 0x65, 0x8f, 0xbe, 0xee, 0xc6, 0x4a, 0xb1, 0x93, 0xb1, 0x95, 0xa2, 0x24, 0x53, 0x91, 0xd5, 0x1a, 0xfd, 0x58, 0xa1, 0x13, 0x9e, 0xc6, 0xed, 0xfe, 0xe5, 0xa6, 0xc1, 0x0a, 0x3e, 0xc9, 0xf7, 0x1e, 0xee, 0x4c, 0xaa, 0xf2, 0x2d, 0x3d, 0xf8, 0x93, 0x1c, 0xca, 0x15, 0x6f, 0xea, 0x6b, 0x3b, 0x79, 0xf6, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8771 = { .name = "ecdsa_secp384r1_sha3_512_8771", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8771_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8771_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8771_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8772 for ECDSA, tcId is 266 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8772_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8772_msg[] = { 0x33, 0x37, 0x34, 0x33, 0x35, 0x36, 0x38, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8772_sig[] = { 0x11, 0x92, 0x07, 0x56, 0x20, 0x37, 0x20, 0x44, 0x3a, 0xb0, 0xb6, 0xfd, 0x4f, 0x41, 0x78, 0x8f, 0x7e, 0xfe, 0x59, 0x3c, 0xeb, 0x02, 0xab, 0x61, 0xaa, 0x25, 0xca, 0xa1, 0xdb, 0x7b, 0xa4, 0x26, 0xe6, 0xc0, 0x71, 0x9b, 0x44, 0xc4, 0x4c, 0x58, 0x1f, 0x14, 0xae, 0x38, 0xbc, 0xa2, 0xdc, 0x22, 0xd6, 0xc6, 0xac, 0xae, 0xfa, 0xb2, 0x3f, 0xfe, 0x97, 0x1c, 0xad, 0xad, 0x83, 0x86, 0x39, 0x8b, 0xdd, 0x7b, 0xb9, 0x86, 0xf2, 0x25, 0xef, 0x5c, 0x2f, 0x9c, 0x08, 0xcc, 0x7b, 0x74, 0xfb, 0xd6, 0x79, 0x68, 0x6a, 0xc0, 0x2c, 0xa5, 0x5c, 0x2a, 0x00, 0x9f, 0x82, 0x9f, 0xaf, 0xe3, 0xc2, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8772 = { .name = "ecdsa_secp384r1_sha3_512_8772", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8772_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8772_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8772_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8773 for ECDSA, tcId is 267 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8773_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8773_msg[] = { 0x39, 0x34, 0x37, 0x36, 0x37, 0x31, 0x32, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8773_sig[] = { 0x81, 0x6f, 0x12, 0xf4, 0x83, 0x67, 0x5b, 0xdf, 0x87, 0xb8, 0x2d, 0xf2, 0x9b, 0x28, 0x7d, 0x2c, 0xe0, 0xbd, 0x28, 0x11, 0x48, 0xc1, 0x8c, 0xe3, 0xbd, 0x06, 0xb8, 0x60, 0x44, 0x74, 0x66, 0x16, 0x4a, 0x81, 0x48, 0xd4, 0xdb, 0x66, 0x5d, 0x05, 0xa6, 0xfb, 0x73, 0x3f, 0x7f, 0x7b, 0xa3, 0x0f, 0xda, 0x8e, 0x42, 0xca, 0x29, 0x99, 0xd2, 0x4b, 0x4a, 0xd0, 0x58, 0x6f, 0xe9, 0xb8, 0x5e, 0x0f, 0x78, 0xca, 0x61, 0x4a, 0x0a, 0xcb, 0xc3, 0xc3, 0x7a, 0x2e, 0xa7, 0x52, 0x89, 0xf8, 0x11, 0xae, 0xf8, 0x4c, 0x9d, 0x62, 0x99, 0x73, 0x7e, 0xa5, 0xe4, 0xcb, 0x1e, 0x74, 0x3a, 0x26, 0x00, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8773 = { .name = "ecdsa_secp384r1_sha3_512_8773", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8773_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8773_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8773_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8774 for ECDSA, tcId is 268 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8774_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8774_msg[] = { 0x37, 0x32, 0x35, 0x34, 0x34, 0x34, 0x33, 0x32, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8774_sig[] = { 0x1f, 0xd0, 0xfe, 0x36, 0x18, 0x8f, 0x09, 0x3b, 0xa2, 0xec, 0xb8, 0xdd, 0xce, 0x12, 0x58, 0x75, 0x83, 0xea, 0x36, 0x38, 0xa0, 0x77, 0x13, 0xa6, 0xf6, 0x57, 0x3a, 0x9f, 0xfb, 0x4e, 0x50, 0xa3, 0xf6, 0x36, 0x3f, 0xca, 0x96, 0x1b, 0x8a, 0x0a, 0xc6, 0xa7, 0xf1, 0x41, 0x43, 0x33, 0xf9, 0xe1, 0x2a, 0xc9, 0x4b, 0xe5, 0xc2, 0x24, 0xb1, 0x2f, 0xb7, 0x23, 0x75, 0xb2, 0x2d, 0x52, 0xe3, 0x18, 0x0b, 0x8a, 0x23, 0x6b, 0x49, 0x80, 0xa6, 0xba, 0xe5, 0xaa, 0x4c, 0xb8, 0x11, 0x9c, 0x54, 0xab, 0x4c, 0xd8, 0x9f, 0xc0, 0x68, 0x2f, 0x56, 0x41, 0x02, 0x51, 0x73, 0x10, 0xe4, 0xeb, 0x2e, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8774 = { .name = "ecdsa_secp384r1_sha3_512_8774", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8774_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8774_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8774_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8775 for ECDSA, tcId is 269 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8775_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8775_msg[] = { 0x35, 0x35, 0x33, 0x34, 0x30, 0x32, 0x31, 0x32, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8775_sig[] = { 0x1e, 0x54, 0x93, 0x78, 0x62, 0x17, 0x58, 0xd1, 0xdb, 0x17, 0xfd, 0x0c, 0xd8, 0x4e, 0xc1, 0x20, 0x31, 0x06, 0x8c, 0x83, 0x7a, 0xfd, 0x13, 0xcc, 0x46, 0xcd, 0x8d, 0x03, 0x04, 0x23, 0x0b, 0x45, 0xa5, 0x44, 0xc7, 0x70, 0x8b, 0x03, 0x25, 0x05, 0xa0, 0x48, 0xf6, 0x27, 0x08, 0x7e, 0x47, 0x03, 0x26, 0x1f, 0x10, 0x68, 0x01, 0x1d, 0xfe, 0x1a, 0x99, 0x32, 0x4e, 0x7d, 0x3f, 0xad, 0xa3, 0xaf, 0x75, 0xed, 0xdd, 0xf3, 0xa8, 0x4f, 0xf2, 0xd7, 0x08, 0x9d, 0x58, 0x7f, 0xdb, 0xf0, 0x1a, 0x0a, 0x4c, 0xb4, 0x9a, 0x6a, 0x1e, 0x81, 0x92, 0xcc, 0x16, 0xbb, 0x4c, 0xd3, 0x7b, 0x90, 0x9b, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8775 = { .name = "ecdsa_secp384r1_sha3_512_8775", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8775_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8775_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8775_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8776 for ECDSA, tcId is 270 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8776_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8776_msg[] = { 0x31, 0x32, 0x33, 0x30, 0x31, 0x38, 0x31, 0x33, 0x37, 0x39, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8776_sig[] = { 0x90, 0xdc, 0xc3, 0xdf, 0x56, 0x72, 0x25, 0xa8, 0xff, 0x08, 0xcd, 0x8f, 0x26, 0x92, 0x1e, 0xdb, 0xca, 0xb6, 0x5e, 0x49, 0x96, 0xa6, 0xf3, 0x24, 0x47, 0x5a, 0xd0, 0x4c, 0xe6, 0x14, 0xc5, 0x5a, 0xdf, 0x31, 0xf5, 0x68, 0x41, 0x5b, 0xe6, 0xf4, 0x11, 0xe8, 0xb6, 0xdd, 0xb3, 0x25, 0x23, 0x14, 0x19, 0x54, 0x2e, 0x3b, 0x7e, 0x26, 0x35, 0x4e, 0xd7, 0xfe, 0xa1, 0x07, 0xc6, 0x79, 0x32, 0x16, 0x9f, 0xdd, 0x4f, 0x1d, 0x02, 0xd1, 0x9f, 0xf7, 0x14, 0x63, 0x06, 0xe9, 0x36, 0x25, 0xea, 0x81, 0xde, 0x67, 0xda, 0xc1, 0x68, 0x6c, 0x77, 0x74, 0xa7, 0x0a, 0x86, 0x0f, 0xeb, 0x8b, 0x08, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8776 = { .name = "ecdsa_secp384r1_sha3_512_8776", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8776_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8776_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8776_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8777 for ECDSA, tcId is 271 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8777_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8777_msg[] = { 0x39, 0x31, 0x31, 0x35, 0x33, 0x31, 0x37, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8777_sig[] = { 0x7c, 0xef, 0x75, 0x81, 0x70, 0xe1, 0xaa, 0x6d, 0x55, 0x3f, 0x1c, 0xb9, 0x3f, 0x02, 0xe4, 0x57, 0x8d, 0xe1, 0x6d, 0xa8, 0x9b, 0xb7, 0x43, 0x41, 0x92, 0xed, 0xe2, 0x00, 0xbf, 0x7c, 0x5f, 0x1b, 0x0c, 0x4c, 0x25, 0xe5, 0xe0, 0x7f, 0xfe, 0x08, 0x89, 0x15, 0x2d, 0x88, 0xcc, 0x95, 0x1c, 0x79, 0x67, 0x3a, 0xf7, 0x9b, 0xe2, 0x86, 0xc8, 0xbc, 0x78, 0x7a, 0x97, 0xaf, 0x62, 0xdd, 0x06, 0xfc, 0x2e, 0x81, 0x74, 0x89, 0xc2, 0xbc, 0xfa, 0xa9, 0xef, 0x61, 0xb7, 0x7a, 0x2e, 0x7b, 0x95, 0xc4, 0x9a, 0xf9, 0x46, 0xcd, 0xc6, 0xfe, 0xd8, 0x98, 0x8c, 0xe4, 0xd5, 0x02, 0xa7, 0x10, 0x71, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8777 = { .name = "ecdsa_secp384r1_sha3_512_8777", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8777_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8777_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8777_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8778 for ECDSA, tcId is 272 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8778_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8778_msg[] = { 0x32, 0x38, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8778_sig[] = { 0x88, 0x5c, 0x48, 0x39, 0x33, 0xdc, 0x8b, 0x56, 0x09, 0xf0, 0xeb, 0xd2, 0xed, 0x91, 0x7b, 0x48, 0x20, 0x96, 0x2d, 0xb6, 0x11, 0x01, 0xc8, 0xec, 0x21, 0xe2, 0x48, 0x51, 0x22, 0x8f, 0x91, 0x7e, 0x3e, 0x0b, 0xf3, 0xae, 0xd9, 0xea, 0xc6, 0x28, 0x36, 0x2b, 0x01, 0xfa, 0xdc, 0xb8, 0x8e, 0x33, 0x47, 0x32, 0xac, 0xc7, 0xbf, 0x37, 0x5d, 0x26, 0x7f, 0x7f, 0x23, 0xfd, 0xdc, 0x81, 0xc8, 0x44, 0xfb, 0x23, 0xbc, 0x91, 0x3b, 0x82, 0x0e, 0xf0, 0x0b, 0x23, 0xd0, 0x33, 0x8a, 0x9b, 0x31, 0x42, 0xe2, 0x0d, 0x93, 0xc2, 0x5a, 0x22, 0x62, 0x7e, 0xf7, 0x8e, 0xcc, 0x22, 0xca, 0xa5, 0x13, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8778 = { .name = "ecdsa_secp384r1_sha3_512_8778", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8778_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8778_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8778_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8779 for ECDSA, tcId is 273 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8779_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8779_msg[] = { 0x31, 0x32, 0x33, 0x33, 0x35, 0x38, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8779_sig[] = { 0x7b, 0x99, 0x0d, 0xb1, 0x8a, 0x20, 0xa8, 0x2b, 0xe2, 0x34, 0x55, 0x11, 0xc7, 0x63, 0x8c, 0x7f, 0x84, 0xcc, 0x75, 0xd6, 0x79, 0x60, 0x0d, 0x0d, 0xe5, 0x78, 0x61, 0x02, 0x8e, 0xff, 0x93, 0xa4, 0x85, 0x3d, 0x53, 0xc9, 0xd9, 0x77, 0x9e, 0x73, 0x86, 0xff, 0xc9, 0xf0, 0x8c, 0x10, 0x4d, 0x1d, 0x17, 0xc3, 0x86, 0x89, 0xa0, 0xda, 0xfb, 0xd6, 0x58, 0x95, 0x58, 0xf8, 0x7d, 0x73, 0xf1, 0x40, 0x3d, 0x18, 0xeb, 0xc8, 0x5e, 0x6a, 0xd0, 0x71, 0x94, 0x6a, 0x5a, 0xba, 0x27, 0xc9, 0xd8, 0x33, 0xc1, 0x2a, 0x82, 0x5c, 0xf6, 0x33, 0x1e, 0x5e, 0x69, 0x85, 0x22, 0xa4, 0x0c, 0x54, 0xc8, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8779 = { .name = "ecdsa_secp384r1_sha3_512_8779", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8779_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8779_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8779_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8780 for ECDSA, tcId is 274 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8780_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8780_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x36, 0x39, 0x32, 0x35, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8780_sig[] = { 0x83, 0xf6, 0x4e, 0x21, 0x43, 0x81, 0x68, 0x6f, 0x57, 0x69, 0x3c, 0x04, 0xd6, 0x40, 0xbf, 0x27, 0x9a, 0x55, 0x44, 0x6d, 0x3e, 0x8a, 0x43, 0x17, 0x32, 0x63, 0xab, 0x34, 0x8b, 0x94, 0x6a, 0x3b, 0x14, 0xde, 0xe8, 0x92, 0xad, 0xd4, 0x9f, 0xa6, 0x05, 0x7e, 0x91, 0xdc, 0x03, 0x91, 0xd7, 0xfa, 0x84, 0xd4, 0x89, 0xc5, 0x07, 0xe3, 0x2f, 0x88, 0xfb, 0xf8, 0xb8, 0xac, 0xd6, 0xfb, 0xfd, 0x30, 0x39, 0xda, 0x7e, 0x76, 0x7a, 0x81, 0xd0, 0xb6, 0x4a, 0x83, 0x2f, 0x9d, 0x07, 0x9c, 0x34, 0x27, 0x5e, 0xe8, 0x4a, 0x5c, 0xce, 0x67, 0xc0, 0x60, 0x3d, 0xf8, 0x9b, 0xf3, 0x67, 0x07, 0xe6, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8780 = { .name = "ecdsa_secp384r1_sha3_512_8780", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8780_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8780_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8780_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8781 for ECDSA, tcId is 275 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8781_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8781_msg[] = { 0x33, 0x30, 0x30, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8781_sig[] = { 0x65, 0x85, 0x68, 0x1d, 0x74, 0x1e, 0xd1, 0x01, 0x9b, 0x40, 0x8c, 0xe9, 0x34, 0x08, 0xae, 0xff, 0xef, 0xfb, 0x18, 0x88, 0xb3, 0xb5, 0xe0, 0xda, 0x5f, 0x28, 0x21, 0xbf, 0x15, 0xb1, 0x68, 0xb2, 0xec, 0x06, 0xa4, 0xa4, 0x6e, 0xdd, 0x8f, 0x91, 0x37, 0xc4, 0x84, 0x80, 0xc0, 0x8f, 0x13, 0xd5, 0x87, 0x40, 0x3a, 0x6b, 0xf1, 0x74, 0x1a, 0xb3, 0x98, 0xd4, 0x94, 0x65, 0xca, 0x99, 0x12, 0x87, 0x40, 0xda, 0xe5, 0x0c, 0xae, 0x3c, 0xbc, 0x66, 0x74, 0x82, 0x68, 0x14, 0x3a, 0x2f, 0x8f, 0xd5, 0xaf, 0x0c, 0x6d, 0x72, 0x7f, 0x32, 0x0a, 0x81, 0x78, 0x36, 0x96, 0xbe, 0x6b, 0x64, 0x2d, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8781 = { .name = "ecdsa_secp384r1_sha3_512_8781", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8781_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8781_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8781_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8782 for ECDSA, tcId is 276 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8782_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8782_msg[] = { 0x38, 0x33, 0x35, 0x36, 0x37, 0x36, 0x32, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8782_sig[] = { 0xdf, 0x56, 0xc5, 0x9e, 0x4b, 0x82, 0xd6, 0x76, 0xc7, 0x67, 0xe1, 0x6c, 0x8c, 0x0a, 0xde, 0xe6, 0x69, 0x62, 0xea, 0x6a, 0x8c, 0xd7, 0x5f, 0x38, 0x5c, 0xf4, 0x49, 0x90, 0x25, 0x72, 0x65, 0xb2, 0x72, 0xe1, 0x8f, 0xe1, 0x9c, 0xa0, 0x57, 0x3d, 0x82, 0x98, 0x98, 0xbd, 0xe3, 0xa3, 0x33, 0x85, 0x6d, 0xdc, 0xfa, 0xed, 0x53, 0xfe, 0xdf, 0xc4, 0xd7, 0xca, 0x7a, 0x67, 0x85, 0xdc, 0xd3, 0x99, 0x2f, 0xa3, 0xad, 0x67, 0x52, 0xc5, 0x00, 0xff, 0xeb, 0x18, 0xeb, 0x20, 0xc4, 0xa7, 0x99, 0x47, 0x78, 0xf2, 0xdb, 0xe4, 0xec, 0x1c, 0x82, 0x75, 0x62, 0xe5, 0x10, 0x0a, 0x50, 0x85, 0xfc, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8782 = { .name = "ecdsa_secp384r1_sha3_512_8782", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8782_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8782_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8782_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8783 for ECDSA, tcId is 277 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8783_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8783_msg[] = { 0x38, 0x33, 0x32, 0x39, 0x35, 0x30, 0x30, 0x37, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8783_sig[] = { 0x40, 0xfd, 0x07, 0x3f, 0x87, 0x7e, 0xfa, 0x57, 0x2a, 0x7e, 0x51, 0x86, 0xd0, 0x2e, 0x16, 0x55, 0xe7, 0xe4, 0x8b, 0xe7, 0xf0, 0x46, 0x1d, 0x7f, 0x71, 0xf2, 0x18, 0xaa, 0x50, 0x2a, 0x7d, 0x2d, 0xd6, 0x18, 0x96, 0x37, 0x91, 0x48, 0xef, 0xcf, 0x7e, 0xc3, 0x0b, 0x3f, 0xb5, 0x94, 0x3b, 0x7d, 0x43, 0xcb, 0x9c, 0xf2, 0x73, 0xcc, 0xe2, 0xc3, 0x0b, 0xcd, 0xc6, 0xf7, 0x82, 0x5e, 0x45, 0x30, 0x68, 0x77, 0x36, 0x34, 0x0d, 0x01, 0x30, 0x10, 0x50, 0xc8, 0x58, 0xb4, 0x02, 0x9a, 0xa5, 0xbb, 0xd2, 0x4f, 0x08, 0xd5, 0x6b, 0x07, 0x12, 0x6a, 0xb4, 0x8f, 0x74, 0x08, 0x3e, 0x5d, 0x54, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8783 = { .name = "ecdsa_secp384r1_sha3_512_8783", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8783_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8783_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8783_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8784 for ECDSA, tcId is 278 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8784_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8784_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x38, 0x34, 0x31, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8784_sig[] = { 0x28, 0x9f, 0x27, 0x82, 0x53, 0x5c, 0xfb, 0xb9, 0x07, 0x98, 0xdb, 0xc3, 0xa9, 0x24, 0x34, 0xec, 0x21, 0xc7, 0xf4, 0x00, 0x22, 0xab, 0x59, 0xfd, 0xb8, 0x6f, 0x73, 0x9d, 0xff, 0x5b, 0xca, 0x37, 0xb7, 0xa1, 0x02, 0xdb, 0x0a, 0x4f, 0x92, 0x09, 0x58, 0x9e, 0x1d, 0xc8, 0x82, 0x72, 0x45, 0x8c, 0x83, 0x37, 0xcf, 0xe1, 0x1d, 0xc6, 0xb3, 0x8a, 0xc8, 0x22, 0x6b, 0x68, 0xbc, 0xe4, 0xfb, 0x19, 0xf0, 0x45, 0xf3, 0xb4, 0xc0, 0xda, 0x21, 0x85, 0xb4, 0x96, 0x00, 0x17, 0x61, 0x98, 0x50, 0x9d, 0xa0, 0x73, 0xd9, 0xaa, 0xf1, 0x99, 0x2e, 0x59, 0x64, 0x0c, 0xb0, 0x2f, 0xbd, 0x44, 0x53, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8784 = { .name = "ecdsa_secp384r1_sha3_512_8784", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8784_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8784_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8784_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8785 for ECDSA, tcId is 279 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8785_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8785_msg[] = { 0x37, 0x33, 0x30, 0x32, 0x33, 0x35, 0x38, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8785_sig[] = { 0x48, 0x7e, 0xe0, 0x97, 0x4d, 0x8a, 0xed, 0x3e, 0xa9, 0x65, 0x98, 0x22, 0xe1, 0x28, 0x17, 0x6f, 0xaa, 0x5c, 0x57, 0x6b, 0x4a, 0xcb, 0xdc, 0xd2, 0xf2, 0x1f, 0x23, 0xa6, 0xa1, 0x3a, 0x8e, 0xe2, 0x82, 0x9a, 0x88, 0xfb, 0x73, 0xad, 0x33, 0x2b, 0xe5, 0xbf, 0xa6, 0xc2, 0x45, 0x4a, 0x4f, 0xe1, 0xea, 0x3b, 0x02, 0xf6, 0x73, 0xa0, 0xc8, 0xf3, 0x14, 0x4c, 0x11, 0x24, 0xb7, 0x2e, 0xa9, 0xff, 0xd2, 0xdb, 0x4a, 0xdd, 0xa6, 0x21, 0x0d, 0xca, 0x14, 0x08, 0xfe, 0x39, 0x02, 0x8e, 0x36, 0x40, 0xa8, 0x39, 0x5f, 0x73, 0x62, 0x13, 0x15, 0xa4, 0x7f, 0x50, 0x5f, 0x78, 0x25, 0xe5, 0xde, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8785 = { .name = "ecdsa_secp384r1_sha3_512_8785", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8785_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8785_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8785_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8786 for ECDSA, tcId is 280 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8786_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8786_msg[] = { 0x31, 0x33, 0x34, 0x37, 0x33, 0x37, 0x33, 0x37, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8786_sig[] = { 0x33, 0x99, 0x11, 0xa1, 0xac, 0x00, 0xfd, 0x09, 0x98, 0x86, 0x42, 0x5c, 0xf7, 0x22, 0x63, 0x93, 0x7c, 0xef, 0x82, 0x14, 0x15, 0x58, 0x19, 0x3a, 0x58, 0xf4, 0x82, 0xb6, 0xe2, 0x4a, 0xbe, 0x1c, 0xfe, 0x55, 0x93, 0x77, 0x16, 0x91, 0xda, 0x6b, 0x30, 0x24, 0x6c, 0x70, 0x24, 0xc3, 0x93, 0xf8, 0x65, 0xa0, 0x2c, 0x5e, 0xc2, 0x2d, 0xb3, 0xf9, 0xb8, 0x76, 0x8d, 0xc7, 0xf5, 0xee, 0xfe, 0xdc, 0x7c, 0x55, 0xca, 0x68, 0x98, 0x1e, 0xaf, 0x2e, 0xe0, 0x86, 0x44, 0x77, 0xac, 0x32, 0x6d, 0x3e, 0x50, 0x38, 0xb9, 0x7f, 0x05, 0x9d, 0xe1, 0xac, 0xb2, 0xca, 0x3e, 0x0c, 0x36, 0x96, 0x63, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8786 = { .name = "ecdsa_secp384r1_sha3_512_8786", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8786_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8786_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8786_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8787 for ECDSA, tcId is 281 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8787_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8787_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x35, 0x33, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8787_sig[] = { 0xda, 0x68, 0x7f, 0x50, 0x87, 0xea, 0x08, 0x7b, 0x24, 0x1f, 0x4d, 0x62, 0x6f, 0x2d, 0x02, 0x30, 0xb7, 0xc0, 0x2e, 0x66, 0xc0, 0x59, 0x1f, 0xf6, 0x42, 0x66, 0x18, 0x56, 0x98, 0x2c, 0x69, 0x39, 0xa4, 0x7a, 0x50, 0x24, 0x70, 0xde, 0xae, 0x8c, 0x69, 0xde, 0x09, 0x1f, 0xe7, 0xeb, 0x9a, 0x68, 0xc3, 0x1d, 0x02, 0x83, 0xdf, 0x38, 0xc0, 0x98, 0x48, 0x6f, 0xf9, 0x0c, 0xa6, 0x97, 0x87, 0xf1, 0xff, 0x1e, 0xf5, 0x98, 0x75, 0xdb, 0x08, 0xd6, 0x47, 0xbc, 0x45, 0x46, 0x59, 0xfa, 0x84, 0xb9, 0xda, 0xc9, 0x83, 0x4d, 0xed, 0xd8, 0x1c, 0xd6, 0x0b, 0xce, 0xfb, 0xa2, 0xf9, 0x45, 0xd4, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8787 = { .name = "ecdsa_secp384r1_sha3_512_8787", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8787_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8787_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8787_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8788 for ECDSA, tcId is 282 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8788_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8788_msg[] = { 0x33, 0x35, 0x33, 0x35, 0x30, 0x34, 0x30, 0x30, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8788_sig[] = { 0xa6, 0xbf, 0x03, 0x84, 0x86, 0xee, 0x5f, 0x96, 0x0e, 0xb5, 0x29, 0xe6, 0xe0, 0xe1, 0x93, 0xa9, 0xbc, 0x26, 0x64, 0x01, 0x7d, 0x57, 0x7c, 0xf8, 0x16, 0x7a, 0xf1, 0xbc, 0x9a, 0xb0, 0x79, 0x91, 0x1a, 0xa9, 0x65, 0xd8, 0xde, 0x11, 0xe3, 0x52, 0xcb, 0xda, 0x6d, 0x7b, 0x4f, 0xc0, 0x52, 0xd8, 0x4d, 0x55, 0x28, 0x56, 0x91, 0x9b, 0xa4, 0xcf, 0x08, 0xee, 0x1a, 0xeb, 0x0a, 0x3b, 0x2a, 0x56, 0xdc, 0x14, 0x8a, 0x50, 0x30, 0x58, 0x2a, 0x74, 0x31, 0x7b, 0x39, 0xe1, 0xbb, 0x06, 0xe2, 0x53, 0x9f, 0x2c, 0x97, 0x8a, 0x5f, 0xc0, 0x8f, 0xa0, 0xb9, 0xb3, 0x62, 0x34, 0x15, 0x32, 0xc3, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8788 = { .name = "ecdsa_secp384r1_sha3_512_8788", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8788_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8788_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8788_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8789 for ECDSA, tcId is 283 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8789_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8789_msg[] = { 0x31, 0x34, 0x32, 0x30, 0x33, 0x35, 0x37, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8789_sig[] = { 0x64, 0xd4, 0x04, 0xbc, 0xc4, 0xd6, 0x13, 0x94, 0xa7, 0x33, 0x5d, 0x9a, 0x5f, 0xd9, 0xb3, 0x60, 0xb0, 0x7b, 0xea, 0x1f, 0x22, 0x90, 0x45, 0xb8, 0x03, 0xcf, 0xf6, 0x84, 0x75, 0x78, 0xda, 0xd2, 0x42, 0xd1, 0xcc, 0xfe, 0x47, 0x65, 0xba, 0x56, 0x90, 0x13, 0xed, 0x27, 0xda, 0x2f, 0x07, 0x15, 0x05, 0xd9, 0x70, 0xb9, 0xf3, 0x18, 0xb5, 0x6d, 0x86, 0xa2, 0x17, 0x3b, 0x2c, 0xcd, 0x0a, 0xab, 0x27, 0x63, 0xb7, 0x54, 0x09, 0x80, 0x37, 0x94, 0x3f, 0xb1, 0x8e, 0xe1, 0xc5, 0xda, 0x82, 0x08, 0xcb, 0x54, 0x5e, 0x81, 0x10, 0x6d, 0x23, 0x54, 0xf5, 0x63, 0xd8, 0xef, 0x0d, 0xa7, 0x05, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8789 = { .name = "ecdsa_secp384r1_sha3_512_8789", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8789_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8789_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8789_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8790 for ECDSA, tcId is 284 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8790_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8790_msg[] = { 0x39, 0x30, 0x35, 0x31, 0x37, 0x35, 0x30, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8790_sig[] = { 0xe9, 0x84, 0xaf, 0x14, 0xb4, 0x3e, 0x37, 0x2c, 0xf2, 0x58, 0x18, 0x9a, 0x5c, 0x99, 0xd1, 0xb5, 0x4e, 0x92, 0x9e, 0xb9, 0x29, 0xeb, 0x32, 0x3d, 0xa2, 0x34, 0x96, 0xc6, 0xcc, 0x17, 0xa0, 0xec, 0x77, 0x44, 0xec, 0x97, 0xa7, 0x12, 0xce, 0x37, 0x12, 0x85, 0xc2, 0x34, 0x21, 0x52, 0x8b, 0xe3, 0xcb, 0xdf, 0xe0, 0x95, 0xd1, 0x1e, 0x37, 0x3c, 0xdf, 0x6b, 0x9e, 0x8b, 0x07, 0x7b, 0xad, 0x25, 0xa5, 0x49, 0xed, 0xd3, 0x7c, 0x4e, 0x18, 0x2f, 0x0b, 0x6b, 0x9c, 0xeb, 0x44, 0x4c, 0x2e, 0x2b, 0x37, 0x9d, 0xbc, 0xe2, 0x46, 0x46, 0x6b, 0x6a, 0x0d, 0x76, 0x4e, 0x3c, 0x41, 0x55, 0xcb, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8790 = { .name = "ecdsa_secp384r1_sha3_512_8790", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8790_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8790_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8790_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8791 for ECDSA, tcId is 285 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8791_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8791_msg[] = { 0x31, 0x36, 0x31, 0x33, 0x37, 0x37, 0x34, 0x32, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8791_sig[] = { 0x7d, 0xdd, 0x66, 0x9f, 0xc0, 0x3d, 0x45, 0x7c, 0x2c, 0x99, 0xb6, 0x4a, 0x14, 0x79, 0x9f, 0xcd, 0xc0, 0x4e, 0x6e, 0xcb, 0xcb, 0x0c, 0x05, 0x8f, 0x3d, 0x97, 0x7e, 0x79, 0x9a, 0x13, 0x67, 0x7e, 0x64, 0x13, 0xe3, 0x27, 0x37, 0xb3, 0x9c, 0x34, 0x93, 0x97, 0x74, 0x57, 0x23, 0x62, 0x70, 0xbe, 0x38, 0x66, 0x06, 0xa4, 0x82, 0xa6, 0x82, 0xef, 0xb7, 0x40, 0xfd, 0x5d, 0xf6, 0xc8, 0x39, 0x03, 0x79, 0x4a, 0x67, 0x08, 0xa7, 0x93, 0xaf, 0x73, 0x50, 0x62, 0x3e, 0xdd, 0x18, 0x4e, 0xf6, 0x15, 0x45, 0x99, 0x1b, 0x5a, 0x06, 0xe1, 0x21, 0xa6, 0x6e, 0xeb, 0x93, 0x4e, 0x97, 0x20, 0x32, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8791 = { .name = "ecdsa_secp384r1_sha3_512_8791", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8791_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8791_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8791_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8792 for ECDSA, tcId is 286 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8792_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8792_msg[] = { 0x38, 0x37, 0x33, 0x36, 0x37, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8792_sig[] = { 0x68, 0xac, 0x4b, 0x7c, 0xa8, 0x9a, 0x38, 0xca, 0xe2, 0x99, 0x05, 0xc9, 0xa5, 0x35, 0xea, 0x33, 0x11, 0xe3, 0xbe, 0x2b, 0xab, 0x7a, 0xc1, 0xf6, 0x5f, 0x95, 0xcc, 0x31, 0x62, 0x7c, 0xeb, 0x42, 0x8e, 0xf4, 0x22, 0x87, 0x4f, 0x1f, 0xb7, 0x9a, 0xe4, 0x27, 0x75, 0xd6, 0x4c, 0x55, 0x33, 0xb6, 0x6d, 0xb4, 0xb6, 0xcf, 0xd5, 0x43, 0x9f, 0xae, 0x0d, 0xc8, 0x96, 0x33, 0x2e, 0xc8, 0xfb, 0xcf, 0xdd, 0xd5, 0x31, 0x6b, 0xba, 0x8b, 0x0e, 0xa9, 0xb2, 0x5a, 0x0b, 0xef, 0x8c, 0x38, 0x87, 0xf2, 0xf7, 0xbc, 0xd6, 0x2e, 0xa2, 0xf7, 0x5f, 0xc2, 0xee, 0x6c, 0x8d, 0x4c, 0x15, 0x16, 0x84, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8792 = { .name = "ecdsa_secp384r1_sha3_512_8792", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8792_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8792_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8792_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8793 for ECDSA, tcId is 287 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8793_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8793_msg[] = { 0x34, 0x33, 0x35, 0x35, 0x31, 0x30, 0x36, 0x34, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8793_sig[] = { 0x53, 0xcf, 0x03, 0x08, 0xea, 0x4b, 0x28, 0xe5, 0x2c, 0xe2, 0x71, 0x23, 0xd6, 0xcf, 0xac, 0xf6, 0xe8, 0xde, 0xb0, 0x1d, 0xde, 0x37, 0xb2, 0xe0, 0xf5, 0x64, 0xb5, 0x58, 0x7b, 0x30, 0x84, 0x3c, 0xd8, 0x78, 0x5f, 0x57, 0xcd, 0xe3, 0x22, 0xfd, 0xb9, 0x21, 0x3f, 0xaa, 0x07, 0xb5, 0xb4, 0x84, 0x8b, 0xcd, 0x5a, 0xd4, 0x07, 0xf0, 0x1b, 0x8c, 0xbd, 0xb1, 0x8e, 0x42, 0x19, 0x2f, 0xee, 0xe4, 0xab, 0xcb, 0x23, 0x18, 0x79, 0xcc, 0x18, 0x3b, 0x8f, 0x5e, 0x6c, 0x88, 0x8f, 0x57, 0xd4, 0x8c, 0x2b, 0x5f, 0xab, 0x1d, 0x3c, 0x43, 0x69, 0xdb, 0xf0, 0x38, 0x9f, 0xeb, 0xb6, 0xb3, 0xef, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8793 = { .name = "ecdsa_secp384r1_sha3_512_8793", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8793_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8793_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8793_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8794 for ECDSA, tcId is 288 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8794_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8794_msg[] = { 0x34, 0x35, 0x33, 0x39, 0x35, 0x37, 0x35, 0x38, 0x37, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8794_sig[] = { 0xe0, 0x0f, 0x0b, 0x21, 0xa6, 0x79, 0xd3, 0x71, 0x87, 0x8f, 0x3a, 0x4c, 0x92, 0x4c, 0x68, 0x36, 0x54, 0x26, 0xa9, 0x8f, 0xe3, 0xe8, 0x8c, 0x8d, 0x22, 0x1b, 0xe3, 0x7c, 0xe5, 0x15, 0x5b, 0x45, 0xa5, 0x61, 0x08, 0xfa, 0xcf, 0x0c, 0x86, 0x30, 0x66, 0x06, 0x6f, 0x88, 0x98, 0x70, 0x0c, 0x41, 0x1f, 0xbe, 0x0b, 0x40, 0x96, 0x69, 0x2f, 0xfa, 0x69, 0x85, 0x65, 0xf3, 0x99, 0x8b, 0x9b, 0xf8, 0x29, 0x9d, 0x56, 0x3a, 0xb5, 0x4f, 0x4d, 0x07, 0x37, 0xe6, 0x2a, 0x99, 0xd7, 0xcd, 0x4a, 0xf9, 0x70, 0xfa, 0x69, 0x18, 0x92, 0x5d, 0x93, 0xb7, 0x25, 0x18, 0xd5, 0xc6, 0xeb, 0x34, 0x2c, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8794 = { .name = "ecdsa_secp384r1_sha3_512_8794", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8794_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8794_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8794_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8795 for ECDSA, tcId is 289 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8795_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8795_msg[] = { 0x38, 0x39, 0x33, 0x36, 0x36, 0x33, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8795_sig[] = { 0x66, 0x97, 0xd0, 0x87, 0xb2, 0xf5, 0x35, 0xd8, 0x0d, 0x74, 0x4e, 0x3f, 0x36, 0xf1, 0xe6, 0x92, 0x5d, 0xbf, 0xdc, 0xc9, 0x13, 0x78, 0xa0, 0xda, 0x7c, 0x0a, 0x05, 0x6e, 0x11, 0x45, 0x8a, 0xdd, 0xc7, 0xcf, 0x82, 0x2b, 0x3a, 0x22, 0x47, 0x58, 0x9e, 0xdb, 0x01, 0x46, 0x15, 0xc9, 0x53, 0x8f, 0x71, 0x8e, 0xbe, 0x1e, 0x4b, 0x46, 0xac, 0xe8, 0xe5, 0x42, 0x09, 0xfa, 0xcf, 0x42, 0x9b, 0xd1, 0x86, 0x4e, 0x51, 0x9a, 0xf1, 0xcf, 0xed, 0xd5, 0x8d, 0x94, 0x21, 0xed, 0xa6, 0x97, 0xab, 0xc4, 0xe3, 0x18, 0x15, 0x29, 0x56, 0xa8, 0x28, 0x76, 0xb1, 0xea, 0xa4, 0x1c, 0x18, 0x6a, 0x72, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8795 = { .name = "ecdsa_secp384r1_sha3_512_8795", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8795_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8795_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8795_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8796 for ECDSA, tcId is 290 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8796_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8796_msg[] = { 0x33, 0x38, 0x30, 0x36, 0x30, 0x36, 0x38, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8796_sig[] = { 0xad, 0x49, 0xf1, 0xcd, 0xa7, 0x2a, 0x2d, 0x8b, 0x06, 0xa1, 0x52, 0x52, 0x61, 0x0a, 0x35, 0x82, 0xc9, 0x99, 0xa9, 0xe7, 0xdc, 0xb0, 0x25, 0x2a, 0x55, 0x7c, 0x49, 0xed, 0xf4, 0x21, 0x14, 0xd2, 0xfd, 0x81, 0xe6, 0x05, 0x3d, 0x70, 0x34, 0x15, 0xa2, 0x56, 0xc2, 0xab, 0x76, 0x86, 0x2f, 0x78, 0xba, 0x44, 0x94, 0x5e, 0x70, 0x72, 0x20, 0xde, 0x5c, 0xbd, 0xd4, 0xaf, 0xf4, 0x53, 0xee, 0x42, 0xe8, 0xc9, 0x8b, 0x17, 0x76, 0x0f, 0xbc, 0x21, 0xbf, 0x7d, 0xb7, 0xe8, 0x5b, 0xb2, 0x46, 0x1a, 0x69, 0x06, 0x4b, 0xcf, 0x46, 0x67, 0xf0, 0x0e, 0x38, 0x56, 0xd6, 0x02, 0x08, 0xe8, 0x3f, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8796 = { .name = "ecdsa_secp384r1_sha3_512_8796", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8796_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8796_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8796_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8797 for ECDSA, tcId is 291 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8797_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8797_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x38, 0x31, 0x37, 0x34, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8797_sig[] = { 0x77, 0xf0, 0x60, 0x38, 0x19, 0xb6, 0x96, 0x83, 0xa8, 0x71, 0x53, 0x8d, 0x86, 0x54, 0x47, 0x9e, 0x0f, 0x2e, 0x07, 0x4a, 0x39, 0x3c, 0xe1, 0x53, 0xb9, 0xe1, 0x92, 0xc9, 0x4b, 0x21, 0xaf, 0xd6, 0x0b, 0xc0, 0x93, 0xec, 0x88, 0x37, 0x39, 0x90, 0x88, 0x0d, 0x42, 0x2b, 0xf5, 0xd8, 0x27, 0x0b, 0xfb, 0x7e, 0x68, 0xad, 0x73, 0x89, 0x27, 0x60, 0x58, 0xda, 0x83, 0x96, 0x3b, 0x5e, 0x54, 0x4d, 0xcc, 0xc4, 0xa6, 0x1a, 0xd8, 0xb5, 0x37, 0x7c, 0x42, 0x35, 0x6e, 0xf6, 0xc8, 0x53, 0xb3, 0x63, 0xa3, 0xc4, 0xd8, 0xc5, 0xcb, 0xe9, 0x3e, 0xb5, 0x94, 0xa1, 0xee, 0x27, 0x62, 0xda, 0xc2, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8797 = { .name = "ecdsa_secp384r1_sha3_512_8797", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8797_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8797_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8797_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8798 for ECDSA, tcId is 292 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8798_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8798_msg[] = { 0x34, 0x30, 0x37, 0x34, 0x33, 0x32, 0x32, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8798_sig[] = { 0x77, 0xf6, 0x35, 0xab, 0xa2, 0x1e, 0x00, 0x10, 0x36, 0x7e, 0x07, 0x1e, 0xa7, 0xba, 0x27, 0x3f, 0xca, 0x77, 0x0d, 0xfc, 0xe1, 0x6d, 0xa8, 0xe2, 0x37, 0x0f, 0x67, 0xc4, 0x7e, 0x70, 0x96, 0xc3, 0x34, 0x55, 0xe3, 0xa4, 0x69, 0xdb, 0xe4, 0x0d, 0x4d, 0xdb, 0x6a, 0xa9, 0x8b, 0xfb, 0xdf, 0xe4, 0x51, 0x09, 0xe7, 0xeb, 0xe6, 0xd8, 0x9f, 0x80, 0xd5, 0x41, 0x2b, 0xcd, 0xde, 0xe5, 0x86, 0xff, 0xe6, 0x58, 0xd0, 0x8d, 0x18, 0xd3, 0x4c, 0x3b, 0xf1, 0x3a, 0xf9, 0x9e, 0x77, 0xd8, 0xb2, 0xae, 0x26, 0x5f, 0x32, 0xae, 0x05, 0x4d, 0x8e, 0x67, 0x05, 0x3b, 0xda, 0xe8, 0x0f, 0x1c, 0x83, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8798 = { .name = "ecdsa_secp384r1_sha3_512_8798", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8798_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8798_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8798_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8799 for ECDSA, tcId is 293 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8799_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8799_msg[] = { 0x36, 0x31, 0x30, 0x36, 0x37, 0x35, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8799_sig[] = { 0xd9, 0xa4, 0x17, 0xd5, 0x9b, 0x5c, 0xe3, 0x07, 0x9f, 0x36, 0x4a, 0x9a, 0x04, 0x67, 0x29, 0x89, 0xb7, 0xa2, 0x29, 0x02, 0xd6, 0x0c, 0xce, 0x65, 0xee, 0x2b, 0xa1, 0x5c, 0xd0, 0xec, 0x8f, 0xd5, 0x19, 0x1a, 0x16, 0xec, 0x05, 0x57, 0x4f, 0xb6, 0x11, 0x9d, 0xb4, 0xb6, 0x39, 0xb9, 0xbc, 0x1e, 0x85, 0xbe, 0x5a, 0xb4, 0x4b, 0x63, 0xd4, 0x7c, 0xb2, 0x15, 0xf2, 0xcc, 0xee, 0x27, 0x36, 0xaf, 0x31, 0xe4, 0xd6, 0x43, 0xa9, 0xec, 0x43, 0xba, 0x8d, 0x11, 0x1f, 0x11, 0x75, 0x8a, 0x6c, 0x7e, 0x73, 0x63, 0x10, 0x31, 0x60, 0x7d, 0xe8, 0xe9, 0x71, 0xa6, 0xc2, 0x91, 0xc2, 0xfa, 0x6d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8799 = { .name = "ecdsa_secp384r1_sha3_512_8799", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8799_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8799_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8799_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8800 for ECDSA, tcId is 294 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8800_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8800_msg[] = { 0x31, 0x37, 0x34, 0x31, 0x38, 0x37, 0x33, 0x39, 0x32, 0x31, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8800_sig[] = { 0xb2, 0xf6, 0x83, 0x24, 0x48, 0xf8, 0xed, 0x81, 0x07, 0xef, 0xd7, 0x7c, 0x39, 0x2d, 0x38, 0xf5, 0x99, 0x79, 0x46, 0xd8, 0xbb, 0x47, 0x32, 0x2d, 0x81, 0x27, 0x60, 0x59, 0xbf, 0x0a, 0xd4, 0x96, 0x32, 0xdb, 0xbe, 0xe8, 0x4e, 0xe0, 0xa5, 0xc3, 0xfd, 0x25, 0x98, 0xb4, 0xa2, 0x62, 0xd9, 0x06, 0xe2, 0x41, 0x1b, 0x8c, 0xa9, 0x95, 0xaa, 0x97, 0x11, 0xc2, 0xe2, 0x73, 0x17, 0x2c, 0x71, 0xd1, 0x66, 0xfd, 0xd3, 0x36, 0xba, 0xc3, 0x9a, 0x3b, 0x34, 0x44, 0xc9, 0xdb, 0xfe, 0x9e, 0x32, 0x72, 0x48, 0x6e, 0x4a, 0xbf, 0x32, 0x7e, 0xaf, 0x5b, 0x21, 0x6b, 0xcc, 0xc0, 0x90, 0x0b, 0x7a, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8800 = { .name = "ecdsa_secp384r1_sha3_512_8800", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8800_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8800_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8800_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8801 for ECDSA, tcId is 295 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8801_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8801_msg[] = { 0x35, 0x31, 0x32, 0x37, 0x38, 0x34, 0x32, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8801_sig[] = { 0xbc, 0xe8, 0x37, 0xf1, 0x42, 0x35, 0x07, 0x35, 0x3c, 0xdd, 0x93, 0xdb, 0x53, 0xe9, 0xd4, 0x68, 0xff, 0x9f, 0x1a, 0x5c, 0xa6, 0x80, 0x57, 0x74, 0x41, 0xf2, 0x22, 0xcf, 0x3c, 0x3b, 0x70, 0x93, 0x16, 0x41, 0xa8, 0x3b, 0x7e, 0xb1, 0x84, 0x45, 0xbb, 0x55, 0x46, 0x1c, 0xe8, 0x42, 0x27, 0x4e, 0x79, 0x74, 0x81, 0xa3, 0x38, 0x02, 0x02, 0xe4, 0x27, 0x65, 0x9b, 0xa7, 0x11, 0x3a, 0x5d, 0x02, 0xed, 0x2b, 0xfd, 0xbd, 0xf8, 0x81, 0x86, 0xc8, 0x43, 0xaa, 0x8e, 0xd9, 0x08, 0x95, 0x6e, 0xe6, 0xe8, 0x2e, 0xff, 0x7d, 0x7f, 0x1b, 0xb6, 0xdc, 0x2a, 0xfb, 0x63, 0x66, 0x58, 0x47, 0xd8, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8801 = { .name = "ecdsa_secp384r1_sha3_512_8801", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8801_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8801_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8801_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8802 for ECDSA, tcId is 296 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8802_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8802_msg[] = { 0x35, 0x30, 0x33, 0x38, 0x36, 0x39, 0x30, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8802_sig[] = { 0xa2, 0x18, 0x59, 0xc2, 0x9f, 0x1a, 0xf1, 0xdd, 0x52, 0xdf, 0xf9, 0xde, 0xe9, 0xea, 0x6b, 0xba, 0x3e, 0x93, 0x41, 0x1c, 0x22, 0x69, 0xa6, 0x94, 0xe2, 0x90, 0xfa, 0x6d, 0x47, 0xc1, 0x0e, 0x6b, 0xe3, 0x38, 0x98, 0xc3, 0x58, 0x80, 0xa9, 0xeb, 0xd8, 0x9f, 0xd2, 0x79, 0x53, 0x98, 0x59, 0x2e, 0x5f, 0xab, 0xca, 0x61, 0x88, 0x98, 0xcf, 0xa1, 0x05, 0xb6, 0x1a, 0xf5, 0x17, 0x3a, 0x1c, 0xd9, 0xe0, 0xd9, 0xbe, 0x0b, 0x15, 0xf8, 0x2d, 0x2a, 0x31, 0xbe, 0xff, 0x2b, 0x2d, 0xf1, 0x38, 0x72, 0x0b, 0x80, 0xb3, 0xbe, 0xef, 0x30, 0x9a, 0xe9, 0x80, 0xbd, 0x91, 0x51, 0x1d, 0x45, 0xb4, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8802 = { .name = "ecdsa_secp384r1_sha3_512_8802", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8802_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8802_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8802_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8803 for ECDSA, tcId is 297 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8803_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8803_msg[] = { 0x33, 0x38, 0x37, 0x37, 0x30, 0x34, 0x32, 0x33, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8803_sig[] = { 0xc3, 0x49, 0x03, 0x95, 0xcc, 0x64, 0xdf, 0xba, 0xea, 0x1a, 0x75, 0xf1, 0x47, 0xea, 0xfd, 0xe6, 0x02, 0x06, 0x6e, 0x84, 0x07, 0x22, 0xd1, 0xa5, 0xcf, 0x37, 0x76, 0x57, 0x98, 0xe1, 0x7a, 0xfd, 0x53, 0x12, 0x18, 0xc7, 0xdb, 0x1d, 0x06, 0xe6, 0xfa, 0x5b, 0x7c, 0x00, 0xd1, 0x14, 0x63, 0xc0, 0x04, 0x62, 0x6f, 0x80, 0x0f, 0xc0, 0x28, 0xec, 0x0b, 0xc5, 0x83, 0xc8, 0x73, 0xbc, 0xa0, 0xb4, 0x70, 0x04, 0xf7, 0x2d, 0x45, 0x70, 0x55, 0x06, 0xb0, 0x80, 0x74, 0x76, 0x93, 0xe1, 0xf7, 0x71, 0x96, 0x63, 0x10, 0xd9, 0xc7, 0x03, 0x1b, 0x68, 0x53, 0x04, 0x7c, 0x93, 0x67, 0x88, 0xf7, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8803 = { .name = "ecdsa_secp384r1_sha3_512_8803", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8803_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8803_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8803_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8804 for ECDSA, tcId is 298 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8804_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8804_msg[] = { 0x33, 0x32, 0x31, 0x37, 0x30, 0x38, 0x31, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8804_sig[] = { 0x24, 0x27, 0x37, 0x77, 0x13, 0xb2, 0xff, 0xcd, 0xa1, 0x6e, 0x53, 0x9e, 0xb8, 0x5d, 0x0f, 0x1d, 0x71, 0x6a, 0xb5, 0x37, 0x3b, 0xbc, 0x22, 0xc6, 0x6d, 0x51, 0x78, 0x9d, 0xa2, 0xff, 0x88, 0xc5, 0x28, 0x24, 0xd4, 0x5b, 0x26, 0x0e, 0x0d, 0x1a, 0x15, 0x1f, 0x06, 0x33, 0xce, 0x62, 0xf4, 0x83, 0x0b, 0xee, 0x19, 0x61, 0x7c, 0xbd, 0xf9, 0x00, 0x1b, 0x57, 0x87, 0x1c, 0xd4, 0x86, 0xf9, 0xdd, 0xc0, 0xb0, 0x22, 0x72, 0x7d, 0x35, 0x08, 0xb5, 0x9f, 0x9b, 0x46, 0x5d, 0x6c, 0x43, 0xc1, 0x7f, 0x10, 0x1f, 0xea, 0xd5, 0x82, 0xfe, 0x99, 0x29, 0x7f, 0x91, 0xeb, 0x9d, 0x4b, 0x55, 0x2d, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8804 = { .name = "ecdsa_secp384r1_sha3_512_8804", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8804_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8804_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8804_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8805 for ECDSA, tcId is 299 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8805_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8805_msg[] = { 0x37, 0x36, 0x36, 0x37, 0x30, 0x34, 0x34, 0x32, 0x37, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8805_sig[] = { 0xf6, 0x00, 0x77, 0xa9, 0x4b, 0x71, 0xab, 0x1d, 0x6a, 0x05, 0x47, 0xaf, 0x84, 0xb5, 0x3c, 0xc9, 0xb9, 0x42, 0xa7, 0x45, 0x64, 0x4d, 0x14, 0xd1, 0x6b, 0x17, 0x47, 0x50, 0x30, 0x78, 0x1c, 0xee, 0x1b, 0xa3, 0x97, 0x6a, 0x55, 0xa2, 0x39, 0x6c, 0x05, 0xb2, 0xe0, 0xc6, 0xaf, 0xa1, 0x30, 0x63, 0x5f, 0xe9, 0xcf, 0x83, 0xab, 0x22, 0x73, 0xb4, 0x11, 0x5b, 0x5f, 0x55, 0xdb, 0x96, 0x22, 0xb2, 0x98, 0x42, 0x4e, 0xd4, 0xba, 0x84, 0xd6, 0xcd, 0xf8, 0x9c, 0x1e, 0xe4, 0xe7, 0x7d, 0x77, 0x99, 0xb8, 0x74, 0xb4, 0x7a, 0x53, 0xb5, 0x1a, 0x50, 0x99, 0xb7, 0x10, 0x93, 0x95, 0x64, 0xff, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8805 = { .name = "ecdsa_secp384r1_sha3_512_8805", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8805_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8805_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8805_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8806 for ECDSA, tcId is 300 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8806_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8806_msg[] = { 0x31, 0x31, 0x30, 0x34, 0x37, 0x34, 0x35, 0x30, 0x34, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8806_sig[] = { 0x3d, 0xd1, 0x86, 0xbd, 0x02, 0x27, 0xd6, 0x23, 0xf9, 0x77, 0xeb, 0x9c, 0xb6, 0x6e, 0xe7, 0x54, 0x2a, 0x55, 0x5a, 0xa6, 0x0c, 0x2d, 0x89, 0xd0, 0xd6, 0x5b, 0x41, 0xde, 0xf1, 0x20, 0x1c, 0xed, 0x71, 0x48, 0x90, 0xe3, 0xd8, 0xe9, 0xe5, 0xae, 0xc9, 0xa8, 0x97, 0xd6, 0x1b, 0x68, 0x03, 0xd7, 0xcc, 0xca, 0x9b, 0xc9, 0x1b, 0x35, 0xe0, 0xa6, 0xeb, 0x86, 0xa3, 0xf8, 0x9f, 0x0a, 0xcd, 0x90, 0xfb, 0xad, 0x7c, 0xbd, 0xaa, 0xab, 0xc9, 0x68, 0xa9, 0x7c, 0xb3, 0xbd, 0xe1, 0xf2, 0x1e, 0x5e, 0x15, 0x80, 0x95, 0x76, 0xaf, 0xba, 0x10, 0x70, 0x80, 0x24, 0x27, 0x5a, 0x50, 0x0f, 0xa9, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8806 = { .name = "ecdsa_secp384r1_sha3_512_8806", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8806_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8806_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8806_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8807 for ECDSA, tcId is 301 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8807_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8807_msg[] = { 0x31, 0x35, 0x33, 0x38, 0x37, 0x30, 0x31, 0x35, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8807_sig[] = { 0x57, 0x78, 0xc5, 0xf0, 0xcc, 0x38, 0xd1, 0xea, 0xf7, 0x4b, 0x18, 0x56, 0x76, 0xba, 0x2e, 0x7d, 0xbd, 0x1d, 0xdf, 0x21, 0x81, 0x40, 0x2f, 0xec, 0x68, 0x79, 0x5c, 0xdb, 0x66, 0x20, 0x6a, 0xea, 0x62, 0x60, 0x28, 0x9a, 0x77, 0xe1, 0xab, 0x90, 0xef, 0x29, 0xaf, 0x55, 0x37, 0x2e, 0xf2, 0xf1, 0x95, 0xf2, 0xed, 0x54, 0x0f, 0x3e, 0x4c, 0x64, 0xb3, 0xc7, 0xf2, 0x63, 0xfa, 0xa3, 0x6c, 0x55, 0x7e, 0x5f, 0xbc, 0xcf, 0xab, 0x96, 0xe8, 0xa0, 0x37, 0x94, 0x86, 0xe6, 0x42, 0xb5, 0x79, 0xa0, 0xbc, 0x51, 0x6a, 0xa8, 0xf5, 0x8b, 0x22, 0xd0, 0xca, 0x82, 0x9c, 0x6b, 0x97, 0x5d, 0x12, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8807 = { .name = "ecdsa_secp384r1_sha3_512_8807", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8807_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8807_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8807_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8808 for ECDSA, tcId is 302 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8808_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8808_msg[] = { 0x32, 0x32, 0x36, 0x31, 0x33, 0x38, 0x35, 0x30, 0x34, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8808_sig[] = { 0x26, 0x9b, 0xae, 0xe7, 0xc3, 0x33, 0xb2, 0x4e, 0xba, 0xfc, 0x68, 0xa6, 0xb7, 0x5c, 0xdc, 0x93, 0x7b, 0xe9, 0x23, 0x37, 0xab, 0x14, 0x98, 0x5b, 0xee, 0xd2, 0x02, 0x22, 0xb7, 0xab, 0x49, 0xb2, 0xdb, 0x11, 0x7d, 0x26, 0x22, 0x12, 0x12, 0x02, 0xb4, 0x28, 0x32, 0x45, 0x0e, 0x6b, 0xb7, 0x08, 0xb0, 0x30, 0xa6, 0xcf, 0xc4, 0x3b, 0x6f, 0x2c, 0x43, 0x1e, 0x93, 0x61, 0x3c, 0x81, 0x04, 0x23, 0x8b, 0xfa, 0x06, 0x6a, 0x51, 0xd2, 0xa4, 0x19, 0xb5, 0xad, 0x85, 0x2b, 0xe4, 0x0d, 0x69, 0xb6, 0x3c, 0xcb, 0x2d, 0xe9, 0xab, 0x2a, 0xb0, 0x69, 0x6d, 0x04, 0xf6, 0xa0, 0x05, 0x8a, 0x81, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8808 = { .name = "ecdsa_secp384r1_sha3_512_8808", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8808_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8808_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8808_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8809 for ECDSA, tcId is 303 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8809_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8809_msg[] = { 0x37, 0x35, 0x35, 0x38, 0x37, 0x34, 0x37, 0x36, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8809_sig[] = { 0xcb, 0xb1, 0x28, 0xf0, 0xb1, 0x7a, 0x20, 0xd4, 0x22, 0xc3, 0xfa, 0x16, 0xf8, 0x88, 0x9d, 0x1b, 0xeb, 0x0f, 0x2e, 0x9c, 0x24, 0xb6, 0x57, 0x19, 0xcc, 0x88, 0xa7, 0xa3, 0xac, 0x51, 0xc9, 0x42, 0x12, 0xda, 0xf1, 0x86, 0x38, 0x14, 0xed, 0xcf, 0xbf, 0xf1, 0x4c, 0x05, 0xcb, 0x8b, 0x29, 0x98, 0xe8, 0x26, 0xd9, 0xc3, 0x48, 0xf9, 0xf5, 0x21, 0x86, 0xe6, 0xff, 0x5f, 0xe7, 0xdd, 0xa8, 0xda, 0x26, 0xab, 0xc2, 0x7a, 0x92, 0x73, 0x45, 0x86, 0xa6, 0x91, 0xa0, 0x7f, 0x05, 0x95, 0x58, 0x15, 0x7d, 0x11, 0xaf, 0xb3, 0x16, 0x51, 0x5d, 0x7d, 0xd9, 0xf1, 0xc2, 0x3e, 0xef, 0xc1, 0x3f, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8809 = { .name = "ecdsa_secp384r1_sha3_512_8809", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8809_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8809_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8809_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8810 for ECDSA, tcId is 304 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8810_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8810_msg[] = { 0x33, 0x34, 0x39, 0x39, 0x33, 0x36, 0x34, 0x31, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8810_sig[] = { 0xe5, 0x1b, 0x03, 0xbf, 0x50, 0xa4, 0x3d, 0xdb, 0x7a, 0x14, 0x52, 0x4c, 0x33, 0x6f, 0x2f, 0x82, 0x57, 0xd1, 0x77, 0xb0, 0xa0, 0x15, 0x57, 0x65, 0x7a, 0x2e, 0x15, 0x6a, 0x25, 0x6e, 0xd8, 0xb0, 0xc7, 0x57, 0x20, 0xb9, 0xe7, 0xfc, 0x5a, 0xba, 0xca, 0x51, 0x2f, 0xfd, 0xf9, 0xa6, 0xd0, 0x49, 0xbe, 0xcc, 0x64, 0x33, 0x6b, 0x9a, 0xa3, 0x48, 0xa9, 0xb3, 0xed, 0x4f, 0xf0, 0x9c, 0xf4, 0xf5, 0xdf, 0xf2, 0x7b, 0x73, 0x06, 0x60, 0x03, 0x1a, 0xec, 0x08, 0x88, 0x58, 0x25, 0x8d, 0x7c, 0xac, 0xa3, 0x63, 0x9e, 0x3d, 0x32, 0x53, 0x11, 0xa1, 0x39, 0xfc, 0xa4, 0xc9, 0x71, 0x38, 0xbc, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8810 = { .name = "ecdsa_secp384r1_sha3_512_8810", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8810_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8810_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8810_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8811 for ECDSA, tcId is 305 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8811_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8811_msg[] = { 0x32, 0x33, 0x36, 0x39, 0x32, 0x37, 0x33, 0x39, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8811_sig[] = { 0x17, 0x7a, 0x00, 0xdc, 0xe7, 0x1c, 0x68, 0x11, 0xa3, 0xe3, 0x03, 0xf4, 0x2f, 0xbd, 0x84, 0x11, 0x81, 0x06, 0xa2, 0x8c, 0x65, 0xf2, 0x70, 0xd5, 0x34, 0xfb, 0xf6, 0xca, 0xf7, 0xaf, 0x34, 0x1b, 0x13, 0x1c, 0x3d, 0xff, 0x2b, 0x9d, 0xab, 0x97, 0x32, 0xbf, 0xc1, 0x3b, 0x8b, 0xce, 0xde, 0x15, 0xb2, 0xb4, 0xfa, 0x6c, 0x51, 0x9d, 0xcc, 0x3a, 0x13, 0x17, 0xe9, 0xb9, 0xf5, 0x63, 0x5e, 0x9f, 0x8f, 0x35, 0x22, 0x15, 0xc7, 0x06, 0x6a, 0x8b, 0x2e, 0x5b, 0x95, 0x3b, 0x17, 0x68, 0xc0, 0x9f, 0x0e, 0x17, 0x98, 0x1c, 0xce, 0x27, 0xd0, 0x30, 0xb7, 0xf0, 0x82, 0x6d, 0xfe, 0x46, 0x81, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8811 = { .name = "ecdsa_secp384r1_sha3_512_8811", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8811_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8811_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8811_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8812 for ECDSA, tcId is 306 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8812_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8812_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8812_sig[] = { 0x9f, 0x18, 0x0d, 0x74, 0x1c, 0x93, 0x4c, 0x8b, 0x5f, 0xef, 0x54, 0x98, 0x6f, 0xe0, 0x4e, 0x59, 0xc1, 0x12, 0x17, 0x09, 0xff, 0xcc, 0xf9, 0x95, 0x5e, 0xb5, 0x29, 0xbb, 0x0d, 0x4f, 0x19, 0x4c, 0xff, 0xae, 0x89, 0x07, 0x9e, 0xc8, 0x37, 0xaa, 0x71, 0xb3, 0x6f, 0x62, 0x93, 0xb6, 0x57, 0x7c, 0x0e, 0x65, 0x9e, 0x41, 0x49, 0x12, 0x9c, 0x1f, 0xf5, 0x78, 0xef, 0x77, 0xfd, 0x64, 0x5a, 0xa2, 0x8b, 0xc7, 0x6e, 0xf1, 0x5e, 0x49, 0x3d, 0xfd, 0xa6, 0x4e, 0x1c, 0x21, 0x30, 0xfa, 0x59, 0x36, 0xb4, 0x50, 0x66, 0xe2, 0x67, 0x8d, 0x7a, 0x6c, 0xb2, 0x05, 0xc2, 0x59, 0x14, 0x0c, 0xea, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8812 = { .name = "ecdsa_secp384r1_sha3_512_8812", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8812_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8812_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8812_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8813 for ECDSA, tcId is 307 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8813_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8813_msg[] = { 0x32, 0x35, 0x33, 0x34, 0x33, 0x37, 0x39, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8813_sig[] = { 0xfd, 0x5d, 0x05, 0x2c, 0x21, 0x48, 0x15, 0xf4, 0x62, 0xbf, 0x97, 0xf2, 0x64, 0x8d, 0x91, 0x25, 0xd0, 0xb6, 0x99, 0xf2, 0x26, 0x87, 0x9b, 0xe2, 0x6b, 0x58, 0x1f, 0xe7, 0x7b, 0xb0, 0x60, 0xc2, 0x03, 0x5d, 0xaf, 0x87, 0x8b, 0x2c, 0x41, 0xfb, 0xb1, 0xa2, 0xb5, 0x9e, 0x91, 0xe9, 0x14, 0x58, 0x95, 0x3d, 0x63, 0x0e, 0x92, 0xa7, 0x2d, 0xc4, 0x54, 0x23, 0x89, 0xc3, 0x1c, 0x07, 0xbb, 0x1a, 0xcc, 0x48, 0x22, 0xa8, 0xd4, 0xd3, 0x49, 0x89, 0xf1, 0xe4, 0x12, 0xe2, 0x88, 0x91, 0x6a, 0xdb, 0x8a, 0xcd, 0xda, 0xda, 0xa9, 0x03, 0xd0, 0xcf, 0x25, 0x28, 0x12, 0x7b, 0x20, 0x71, 0xe2, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8813 = { .name = "ecdsa_secp384r1_sha3_512_8813", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8813_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8813_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8813_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8814 for ECDSA, tcId is 308 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8814_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8814_msg[] = { 0x38, 0x33, 0x34, 0x38, 0x30, 0x31, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8814_sig[] = { 0xec, 0xd4, 0x7c, 0x77, 0xcd, 0x0a, 0xd6, 0xd0, 0x7b, 0x86, 0xe3, 0x72, 0xae, 0x85, 0xfc, 0xb2, 0x6c, 0xbe, 0x86, 0xde, 0x5e, 0xa6, 0x2e, 0x21, 0x26, 0x5e, 0xc3, 0x5d, 0xf6, 0x91, 0x24, 0x40, 0xc8, 0x02, 0x52, 0xa0, 0xad, 0xb9, 0x35, 0xde, 0x46, 0x57, 0xce, 0x26, 0xd5, 0x8b, 0xaa, 0xc0, 0xcf, 0x1c, 0x88, 0xdf, 0xbe, 0x07, 0x82, 0x28, 0x2a, 0xd2, 0x6c, 0x38, 0x54, 0x1e, 0x69, 0x37, 0x60, 0x21, 0xec, 0xe2, 0x58, 0x9f, 0x1f, 0xa7, 0x32, 0x0c, 0x40, 0x6b, 0xc8, 0xe3, 0x2f, 0x65, 0x04, 0xe6, 0xa7, 0x80, 0x1b, 0xe5, 0xda, 0x4c, 0x56, 0x36, 0x88, 0x7a, 0xa6, 0xdf, 0xaf, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8814 = { .name = "ecdsa_secp384r1_sha3_512_8814", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8814_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8814_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8814_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8815 for ECDSA, tcId is 309 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8815_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8815_msg[] = { 0x32, 0x34, 0x31, 0x31, 0x30, 0x35, 0x37, 0x34, 0x38, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8815_sig[] = { 0x41, 0x5b, 0x96, 0xc1, 0x6c, 0x2a, 0x4f, 0x83, 0x7e, 0x42, 0x9e, 0x5d, 0xd4, 0x87, 0xdc, 0xe4, 0x04, 0x48, 0x1e, 0x09, 0x22, 0xe2, 0x14, 0xd4, 0xca, 0x09, 0x52, 0xdb, 0x08, 0x41, 0x4f, 0x27, 0x47, 0xb6, 0xf7, 0x5b, 0x8d, 0x80, 0x63, 0xf9, 0x88, 0x96, 0x1e, 0x34, 0xd3, 0x43, 0xe9, 0x20, 0xda, 0x97, 0x1c, 0xe9, 0x38, 0x5c, 0x3d, 0xce, 0x1a, 0x36, 0x85, 0x24, 0x82, 0x34, 0x1f, 0x64, 0xf0, 0x57, 0x80, 0x3b, 0xbb, 0xb2, 0x7e, 0x2f, 0x51, 0xf7, 0xca, 0x6d, 0xe1, 0x9f, 0x81, 0x85, 0x25, 0xa6, 0x20, 0x6d, 0x90, 0x05, 0xce, 0x09, 0xae, 0xa8, 0x16, 0x25, 0xc5, 0x38, 0x83, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8815 = { .name = "ecdsa_secp384r1_sha3_512_8815", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8815_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8815_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8815_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8816 for ECDSA, tcId is 310 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8816_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8816_msg[] = { 0x37, 0x38, 0x36, 0x34, 0x36, 0x38, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8816_sig[] = { 0x88, 0x74, 0x62, 0x98, 0x64, 0xee, 0x14, 0x13, 0x8b, 0x15, 0x4b, 0xe5, 0xbb, 0x49, 0x7a, 0x06, 0x35, 0x55, 0x4c, 0x7f, 0x21, 0x43, 0x12, 0x22, 0xb2, 0x9c, 0x16, 0x9d, 0x70, 0x2d, 0x27, 0xb3, 0x15, 0x3e, 0x55, 0x03, 0xa3, 0x2c, 0x68, 0x56, 0x30, 0x98, 0xb8, 0xc3, 0x36, 0xf5, 0xb3, 0x14, 0x46, 0xdb, 0x1a, 0x07, 0x19, 0x62, 0x3c, 0xd8, 0xbb, 0x38, 0xf1, 0x5e, 0x30, 0x93, 0xea, 0x82, 0x9b, 0x97, 0x17, 0xf3, 0x4a, 0x22, 0x19, 0xe0, 0x3e, 0x0d, 0xed, 0xd9, 0xae, 0x98, 0x7d, 0x43, 0x89, 0xc3, 0x70, 0xda, 0x97, 0xc7, 0x09, 0x67, 0x77, 0x87, 0x65, 0x9f, 0x89, 0x96, 0xf6, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8816 = { .name = "ecdsa_secp384r1_sha3_512_8816", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8816_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8816_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8816_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8817 for ECDSA, tcId is 311 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8817_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8817_msg[] = { 0x33, 0x30, 0x35, 0x34, 0x37, 0x37, 0x33, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8817_sig[] = { 0xb5, 0x54, 0x60, 0xc9, 0x17, 0x3b, 0x26, 0x2d, 0xb8, 0xe2, 0x81, 0xa0, 0x10, 0x6a, 0xa7, 0xee, 0x28, 0xc4, 0x1d, 0x6a, 0x3d, 0x1a, 0xb5, 0xee, 0xca, 0xd5, 0x70, 0xec, 0x32, 0xe9, 0xc4, 0x1e, 0x8f, 0x98, 0xff, 0x8f, 0x98, 0x18, 0x33, 0x9f, 0x12, 0x33, 0xbc, 0xa3, 0xe0, 0xf5, 0xcc, 0x2b, 0x0a, 0xb4, 0x7c, 0x58, 0xb0, 0x54, 0x9a, 0x20, 0xe2, 0x5e, 0x1e, 0x59, 0x9f, 0x0d, 0x7c, 0x29, 0xa5, 0x98, 0x69, 0xe6, 0x30, 0xcb, 0x6e, 0x0a, 0xc5, 0x59, 0xb8, 0xb7, 0xa3, 0x30, 0xb1, 0x97, 0xb3, 0x96, 0x31, 0x94, 0x39, 0x68, 0x81, 0x31, 0x58, 0x3f, 0x5d, 0x59, 0x92, 0x85, 0x2f, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8817 = { .name = "ecdsa_secp384r1_sha3_512_8817", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8817_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8817_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8817_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8818 for ECDSA, tcId is 312 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8818_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8818_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x31, 0x37, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8818_sig[] = { 0x92, 0x26, 0x62, 0xf6, 0x04, 0x54, 0x2f, 0xb0, 0x1c, 0x35, 0xdb, 0xc9, 0x04, 0x62, 0x6c, 0x0c, 0x83, 0x88, 0x3d, 0xf7, 0x2c, 0xc9, 0x55, 0x58, 0x9a, 0x82, 0xaa, 0xe2, 0x30, 0x5b, 0x50, 0xa5, 0x7c, 0xa5, 0xc5, 0x4b, 0x4a, 0xd3, 0xce, 0x40, 0xbf, 0x49, 0xa2, 0x97, 0xd3, 0x43, 0xc2, 0x2b, 0xfb, 0x56, 0x66, 0x79, 0xc4, 0x26, 0xa1, 0x25, 0x34, 0xfb, 0xe3, 0xfd, 0x28, 0xd6, 0x0e, 0xba, 0x7b, 0x35, 0xa1, 0x52, 0x56, 0xdb, 0xa8, 0x7e, 0x38, 0x74, 0xad, 0x98, 0x51, 0x90, 0x19, 0x63, 0xa3, 0x81, 0x11, 0x63, 0x94, 0xfc, 0xe4, 0x01, 0xff, 0x87, 0x35, 0x7f, 0xc1, 0x8d, 0x4b, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8818 = { .name = "ecdsa_secp384r1_sha3_512_8818", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8818_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8818_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8818_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8819 for ECDSA, tcId is 313 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8819_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8819_msg[] = { 0x31, 0x30, 0x35, 0x31, 0x33, 0x32, 0x35, 0x36, 0x33, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8819_sig[] = { 0x7b, 0x13, 0x53, 0xd1, 0x11, 0x29, 0x49, 0xc9, 0x99, 0x38, 0x60, 0x23, 0xa1, 0xf2, 0x5f, 0xb6, 0x3a, 0xa3, 0x02, 0xc9, 0x18, 0x46, 0xc9, 0x4d, 0xb0, 0x5f, 0x46, 0x2e, 0x37, 0x2f, 0xdf, 0xab, 0x9f, 0xbe, 0xf8, 0x17, 0xfc, 0xb7, 0x95, 0xe4, 0xff, 0xea, 0x69, 0x28, 0xb1, 0xdb, 0x9c, 0x31, 0x0c, 0x1f, 0x69, 0xb6, 0xc1, 0x5f, 0xef, 0x1e, 0x06, 0x0c, 0xcf, 0x7d, 0x12, 0xf0, 0xeb, 0xf0, 0x82, 0x02, 0xf4, 0xdc, 0x74, 0xca, 0x1f, 0x21, 0x55, 0xf7, 0x9b, 0xbf, 0x91, 0xbb, 0xff, 0x52, 0x98, 0x4b, 0xfa, 0x2f, 0x39, 0x6b, 0xb2, 0x57, 0xd0, 0xd6, 0x0f, 0x19, 0x63, 0xd7, 0xb5, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8819 = { .name = "ecdsa_secp384r1_sha3_512_8819", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8819_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8819_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8819_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8820 for ECDSA, tcId is 314 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8820_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8820_msg[] = { 0x34, 0x30, 0x31, 0x39, 0x38, 0x36, 0x36, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8820_sig[] = { 0x40, 0xeb, 0x56, 0x6e, 0x88, 0x73, 0x78, 0xbe, 0x48, 0xec, 0x55, 0x48, 0xa4, 0x97, 0x40, 0x46, 0xfe, 0xce, 0x28, 0x1b, 0xf8, 0x42, 0xc2, 0x80, 0x67, 0xc7, 0x81, 0xd1, 0x0b, 0x1a, 0x64, 0xe8, 0x3c, 0x8a, 0x1c, 0x02, 0x98, 0xd2, 0xab, 0xef, 0x72, 0x0f, 0x52, 0x3a, 0xb3, 0xb2, 0x94, 0xa3, 0x4f, 0x61, 0xd4, 0x53, 0x39, 0xda, 0xa2, 0x64, 0x84, 0x8e, 0xf3, 0x7f, 0x1d, 0x05, 0xf3, 0x5b, 0x21, 0x9d, 0xf2, 0xfa, 0xc7, 0xd0, 0xac, 0x94, 0x17, 0x90, 0xd4, 0xb7, 0x15, 0x8b, 0x2c, 0xee, 0x19, 0x63, 0x3d, 0x22, 0x11, 0x93, 0xb0, 0x5e, 0x1d, 0xa4, 0x73, 0xc3, 0x9f, 0xf8, 0xd7, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8820 = { .name = "ecdsa_secp384r1_sha3_512_8820", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8820_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8820_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8820_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8821 for ECDSA, tcId is 315 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8821_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8821_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x30, 0x32, 0x35, 0x37, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8821_sig[] = { 0x88, 0xf1, 0x2b, 0x55, 0x9a, 0x69, 0x75, 0xc0, 0x85, 0x11, 0x8d, 0x3e, 0x2c, 0x58, 0x7f, 0xc0, 0x70, 0x6a, 0x2b, 0x5b, 0xd8, 0xfa, 0xa3, 0x25, 0xfa, 0xc0, 0xe2, 0xad, 0x3a, 0x30, 0x5a, 0x1a, 0xe6, 0x24, 0xef, 0x3d, 0x0b, 0x59, 0x13, 0x6e, 0x1a, 0xb6, 0xab, 0x51, 0x37, 0xea, 0x80, 0xb6, 0x10, 0x49, 0xde, 0xeb, 0x0c, 0x9f, 0x6e, 0x6c, 0xe8, 0x9e, 0xfa, 0x74, 0x94, 0x77, 0xb8, 0xc8, 0xb9, 0x6e, 0x44, 0x1c, 0x9e, 0xd0, 0xa6, 0x50, 0xa8, 0xa2, 0xcd, 0x1f, 0x1e, 0xcf, 0xce, 0x9c, 0x90, 0x09, 0xb5, 0xdd, 0xff, 0xb1, 0x55, 0x9d, 0x1a, 0x2d, 0xc4, 0x0c, 0x71, 0x58, 0x31, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8821 = { .name = "ecdsa_secp384r1_sha3_512_8821", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8821_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8821_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8821_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8822 for ECDSA, tcId is 316 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8822_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8822_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x35, 0x38, 0x35, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8822_sig[] = { 0x21, 0xcb, 0xc3, 0xb4, 0x21, 0x83, 0xdb, 0xfb, 0xf1, 0x1b, 0x1b, 0xf4, 0x85, 0x2e, 0x35, 0x8d, 0x8f, 0x3b, 0x32, 0x49, 0xc3, 0x83, 0xd8, 0xf4, 0xd1, 0x09, 0x15, 0xc3, 0x7c, 0x70, 0xd8, 0xc7, 0x7b, 0xca, 0x88, 0xf2, 0x5c, 0xa1, 0x8b, 0x2b, 0x30, 0x74, 0x5d, 0x8b, 0x6e, 0x7b, 0x70, 0xf5, 0x3e, 0x81, 0xa2, 0x63, 0xca, 0x65, 0x4f, 0xcd, 0x92, 0x6d, 0x9d, 0x21, 0xb4, 0xd0, 0xd9, 0x5d, 0x0c, 0xb9, 0xc2, 0xa8, 0x10, 0xd8, 0xd9, 0xb5, 0x44, 0xc3, 0x58, 0x05, 0xb8, 0xae, 0x6a, 0xaf, 0xfa, 0x71, 0x12, 0x2a, 0xd2, 0x8c, 0x0a, 0x6d, 0x4a, 0x78, 0x92, 0xe8, 0x39, 0x2a, 0x50, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8822 = { .name = "ecdsa_secp384r1_sha3_512_8822", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8822_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8822_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8822_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8823 for ECDSA, tcId is 317 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8823_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8823_msg[] = { 0x33, 0x30, 0x37, 0x34, 0x36, 0x35, 0x33, 0x32, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8823_sig[] = { 0xb6, 0x51, 0xad, 0x55, 0x99, 0x34, 0x5c, 0x76, 0x3c, 0xda, 0xb2, 0x3f, 0xa4, 0x10, 0x3e, 0x52, 0x8b, 0x05, 0x60, 0x2c, 0x8a, 0xcf, 0x01, 0x21, 0xfc, 0x40, 0x70, 0x00, 0xb3, 0xfa, 0x0d, 0xc6, 0x13, 0x9f, 0x39, 0x64, 0x72, 0x86, 0x4b, 0xc2, 0x03, 0xe1, 0xb5, 0xfc, 0x79, 0x28, 0x1b, 0xa8, 0xd7, 0xf5, 0x73, 0xa9, 0x50, 0x2e, 0x0f, 0x8b, 0xd7, 0xc6, 0xce, 0x55, 0x11, 0xc2, 0x1f, 0x16, 0x64, 0x2f, 0xb8, 0x1a, 0xa3, 0x0f, 0xa4, 0x55, 0x7f, 0x59, 0xcc, 0xcf, 0x4a, 0x21, 0xb0, 0xc7, 0x0b, 0x00, 0xb2, 0x09, 0x41, 0x3b, 0x28, 0xa0, 0xf4, 0xc8, 0xbe, 0xd1, 0x3b, 0x2f, 0x4c, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8823 = { .name = "ecdsa_secp384r1_sha3_512_8823", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8823_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8823_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8823_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8824 for ECDSA, tcId is 318 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8824_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8824_msg[] = { 0x37, 0x37, 0x31, 0x34, 0x36, 0x38, 0x33, 0x34, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8824_sig[] = { 0x49, 0x5a, 0xd5, 0x5a, 0x38, 0xb1, 0x1f, 0x61, 0xd8, 0x91, 0xb4, 0xb7, 0x71, 0xd1, 0x80, 0xb8, 0x17, 0x13, 0xc5, 0x70, 0x87, 0x7f, 0x52, 0x90, 0xb4, 0x52, 0xd2, 0x16, 0xaa, 0x6c, 0xfc, 0xdd, 0xb5, 0xd2, 0xcb, 0xe6, 0x3b, 0x14, 0xaf, 0x2c, 0x83, 0x58, 0x7a, 0xa1, 0x28, 0x10, 0x15, 0x38, 0xa0, 0xc3, 0x58, 0x6c, 0xc1, 0x58, 0x5f, 0xc1, 0xa8, 0x15, 0xb8, 0xb6, 0xd4, 0xb7, 0x46, 0x8a, 0x0c, 0x3d, 0x49, 0x36, 0x43, 0x76, 0x8b, 0xd9, 0x49, 0xaf, 0x1e, 0x94, 0x64, 0x39, 0xb9, 0x62, 0x4c, 0x2a, 0x79, 0xa3, 0x07, 0x31, 0xad, 0x53, 0x7d, 0x4c, 0x7a, 0x66, 0x38, 0xfa, 0x82, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8824 = { .name = "ecdsa_secp384r1_sha3_512_8824", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8824_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8824_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8824_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8825 for ECDSA, tcId is 319 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8825_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8825_msg[] = { 0x31, 0x37, 0x39, 0x33, 0x33, 0x38, 0x31, 0x33, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8825_sig[] = { 0x35, 0x60, 0xc7, 0x61, 0x7e, 0x76, 0x3a, 0x84, 0xe7, 0x0e, 0x51, 0x79, 0x0e, 0xe2, 0xad, 0x76, 0x4b, 0xab, 0x9f, 0x1f, 0x97, 0x01, 0x83, 0x3c, 0xbe, 0x7d, 0xaa, 0xad, 0x47, 0x76, 0x37, 0x91, 0x40, 0xc7, 0x1c, 0x91, 0x37, 0xb2, 0xdf, 0x4d, 0xf2, 0x68, 0x34, 0x46, 0x4b, 0x08, 0x99, 0x2e, 0xda, 0xe6, 0xf4, 0x59, 0xe9, 0xdf, 0x5c, 0xd6, 0x41, 0x91, 0xa8, 0x0e, 0x15, 0xa1, 0x1b, 0x57, 0x1d, 0x79, 0xea, 0x08, 0xa0, 0xc0, 0x40, 0x73, 0x55, 0xdd, 0x85, 0x4b, 0x48, 0x0e, 0xcd, 0xf2, 0x24, 0x86, 0x88, 0x1e, 0x2b, 0x3c, 0x63, 0x27, 0x05, 0x82, 0x84, 0x32, 0x81, 0x7e, 0x4e, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8825 = { .name = "ecdsa_secp384r1_sha3_512_8825", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8825_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8825_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8825_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8826 for ECDSA, tcId is 320 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8826_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8826_msg[] = { 0x34, 0x38, 0x38, 0x30, 0x36, 0x32, 0x35, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8826_sig[] = { 0xad, 0xa0, 0xb1, 0x73, 0xb3, 0x6e, 0x55, 0x78, 0x7f, 0x74, 0xd3, 0xd9, 0xe2, 0x8c, 0x24, 0x64, 0xea, 0x96, 0x2f, 0x43, 0x20, 0xf7, 0x0b, 0x56, 0x8a, 0xa2, 0x41, 0x19, 0xbf, 0x53, 0x05, 0x6a, 0xa2, 0x57, 0x00, 0x6f, 0x1c, 0x37, 0x5a, 0x52, 0x89, 0xc9, 0x92, 0x93, 0xdb, 0xbc, 0x87, 0xd2, 0x8e, 0x5b, 0xb3, 0x7b, 0xb6, 0x20, 0x53, 0x9c, 0xf0, 0x10, 0x08, 0x2c, 0xa7, 0x3b, 0xfb, 0x9c, 0x22, 0x24, 0x46, 0x56, 0xeb, 0x2e, 0x1d, 0x84, 0x6c, 0x2a, 0xac, 0x9a, 0xd2, 0xef, 0x44, 0x73, 0xf7, 0xc7, 0x02, 0xd1, 0xee, 0x34, 0xd4, 0x75, 0xd8, 0xc8, 0x05, 0xa0, 0x36, 0xb2, 0xd9, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8826 = { .name = "ecdsa_secp384r1_sha3_512_8826", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8826_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8826_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8826_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8827 for ECDSA, tcId is 321 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8827_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8827_msg[] = { 0x34, 0x39, 0x34, 0x33, 0x37, 0x36, 0x34, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8827_sig[] = { 0x91, 0x8f, 0x44, 0xf0, 0xdf, 0xcb, 0xbe, 0x4f, 0x80, 0xab, 0xe5, 0xfd, 0x88, 0x7f, 0x15, 0xf8, 0xcd, 0x9f, 0x64, 0x77, 0xba, 0x38, 0xe5, 0xb6, 0xe3, 0x67, 0xab, 0x2b, 0x59, 0x99, 0x45, 0x0b, 0xd0, 0x6c, 0xa4, 0x65, 0x3a, 0x9d, 0xdc, 0xde, 0x73, 0x80, 0x44, 0x31, 0xdb, 0x45, 0x00, 0x2e, 0xff, 0xb6, 0xbe, 0x06, 0xf1, 0xf0, 0x47, 0xe1, 0x20, 0xaa, 0x34, 0x7b, 0xb7, 0x9e, 0xb4, 0x11, 0x01, 0x88, 0x13, 0x82, 0xdf, 0xdd, 0xa5, 0xb7, 0xb2, 0x5a, 0x87, 0x88, 0x3f, 0xae, 0xb4, 0xf4, 0xf3, 0x31, 0xe8, 0x71, 0xab, 0x07, 0x5b, 0x25, 0x9c, 0x1f, 0xd5, 0xc8, 0x10, 0xbc, 0x4e, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8827 = { .name = "ecdsa_secp384r1_sha3_512_8827", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8827_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8827_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8827_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8828 for ECDSA, tcId is 322 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8828_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8828_msg[] = { 0x34, 0x37, 0x30, 0x38, 0x36, 0x38, 0x39, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8828_sig[] = { 0x42, 0x72, 0xa7, 0x29, 0x47, 0x37, 0x98, 0xdc, 0xbb, 0x58, 0x24, 0x15, 0xbc, 0xac, 0x1d, 0x46, 0xb6, 0xb3, 0xb2, 0x65, 0x10, 0xca, 0xb2, 0x20, 0x40, 0x8c, 0x96, 0x4c, 0x9e, 0xd4, 0x49, 0x9e, 0x85, 0xd3, 0xd4, 0x52, 0x14, 0x83, 0x0a, 0x25, 0x6a, 0xd2, 0xc7, 0x64, 0x4c, 0xd5, 0x59, 0xa2, 0x0c, 0x18, 0x79, 0x5e, 0x6e, 0x2f, 0xef, 0xaf, 0x66, 0xe4, 0x36, 0xc4, 0xad, 0x48, 0x34, 0x87, 0x52, 0x63, 0x8c, 0xb7, 0x15, 0x6e, 0xb5, 0x1d, 0x08, 0x1c, 0xc6, 0x9c, 0xc1, 0x74, 0x8a, 0x0e, 0xa5, 0x55, 0xf9, 0x24, 0xb1, 0xaf, 0x8d, 0xdc, 0x89, 0xf2, 0xa0, 0x7a, 0x25, 0xeb, 0x00, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8828 = { .name = "ecdsa_secp384r1_sha3_512_8828", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8828_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8828_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8828_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8829 for ECDSA, tcId is 323 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8829_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8829_msg[] = { 0x33, 0x30, 0x32, 0x39, 0x38, 0x37, 0x32, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8829_sig[] = { 0xe7, 0xfc, 0xa6, 0xec, 0xb7, 0x33, 0xbc, 0x50, 0x4e, 0x3e, 0xa6, 0xcf, 0x0f, 0x0d, 0x18, 0x82, 0x33, 0xc4, 0x19, 0x2b, 0xfd, 0x47, 0x38, 0xa2, 0x54, 0xc1, 0x2b, 0x3f, 0xe6, 0x56, 0xb1, 0x8e, 0x7e, 0x44, 0x32, 0xa5, 0x89, 0x77, 0xde, 0xcf, 0xd3, 0xe8, 0xa7, 0xa6, 0x17, 0xfd, 0x48, 0xca, 0x40, 0x34, 0x83, 0x4e, 0xf3, 0x56, 0x6c, 0xb9, 0x88, 0xcf, 0x77, 0xe5, 0x44, 0xb4, 0x9f, 0xc1, 0x19, 0x43, 0x43, 0xbd, 0x1d, 0xbf, 0xc3, 0x3a, 0x54, 0x3b, 0x3e, 0x4e, 0xb1, 0x3a, 0x00, 0x4c, 0x4d, 0xe8, 0x00, 0x1d, 0x41, 0xd3, 0x88, 0xec, 0xdd, 0xa6, 0x94, 0x9d, 0xc7, 0x2a, 0xd1, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8829 = { .name = "ecdsa_secp384r1_sha3_512_8829", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8829_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8829_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8829_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8830 for ECDSA, tcId is 324 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8830_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8830_msg[] = { 0x33, 0x30, 0x31, 0x37, 0x31, 0x39, 0x30, 0x33, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8830_sig[] = { 0xf9, 0x12, 0x4d, 0xf5, 0x8b, 0x5f, 0x07, 0x68, 0xb6, 0x9a, 0x28, 0xae, 0x0b, 0xa3, 0xfe, 0x95, 0x3c, 0xe5, 0x95, 0xed, 0x66, 0x21, 0x77, 0x79, 0x5a, 0x7b, 0x82, 0x55, 0x00, 0x02, 0xdc, 0xb9, 0xad, 0x05, 0x45, 0x9b, 0xd1, 0xc6, 0x28, 0x32, 0xf6, 0x8f, 0x46, 0x4d, 0x5f, 0x67, 0x99, 0x6b, 0x68, 0x99, 0x1b, 0xa8, 0x49, 0x68, 0x92, 0x30, 0x46, 0x72, 0x6e, 0xdf, 0x23, 0x86, 0xc7, 0xb0, 0xb0, 0x95, 0x32, 0xe2, 0xba, 0x04, 0xa4, 0x24, 0x46, 0x01, 0x06, 0xd2, 0xf3, 0xf5, 0x58, 0x66, 0xbe, 0x04, 0xd8, 0x62, 0xee, 0xbf, 0xbf, 0xa1, 0x86, 0xb6, 0x13, 0x82, 0x45, 0x2d, 0x8b, 0x44, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8830 = { .name = "ecdsa_secp384r1_sha3_512_8830", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8830_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8830_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8830_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8831 for ECDSA, tcId is 325 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8831_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8831_msg[] = { 0x39, 0x35, 0x36, 0x33, 0x36, 0x33, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8831_sig[] = { 0x54, 0x5c, 0x41, 0x0f, 0x1c, 0xe8, 0x21, 0xa1, 0x48, 0x7a, 0x94, 0xf9, 0x22, 0x26, 0x31, 0x36, 0x93, 0xcb, 0xd1, 0xbe, 0xee, 0x16, 0xf7, 0x7c, 0x03, 0x24, 0x49, 0x53, 0x3b, 0x0b, 0x8d, 0x64, 0xce, 0xe9, 0x54, 0xc3, 0x1c, 0xfe, 0xcc, 0x5f, 0x1b, 0x30, 0xb1, 0x0f, 0x56, 0xc4, 0xbe, 0xcd, 0x42, 0x6b, 0x31, 0x26, 0xce, 0xd0, 0xb6, 0x11, 0xfa, 0x37, 0x37, 0x2f, 0x85, 0xfc, 0xfe, 0x36, 0x37, 0x47, 0x9a, 0x15, 0x17, 0x25, 0xc2, 0xd6, 0x65, 0x00, 0x65, 0x3a, 0x7a, 0xcb, 0xd2, 0xc2, 0xf4, 0x74, 0xc7, 0x59, 0xe9, 0x43, 0x41, 0x92, 0xc7, 0x7c, 0x81, 0x91, 0x35, 0x45, 0x2b, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8831 = { .name = "ecdsa_secp384r1_sha3_512_8831", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8831_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8831_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8831_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8832 for ECDSA, tcId is 326 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8832_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8832_msg[] = { 0x35, 0x33, 0x30, 0x30, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8832_sig[] = { 0x88, 0x38, 0xa9, 0x0a, 0x3b, 0x59, 0x1c, 0x45, 0x78, 0x0f, 0xb0, 0x5f, 0x05, 0x46, 0x25, 0x5e, 0xe9, 0xca, 0xc9, 0xa9, 0x09, 0xbe, 0x7b, 0xc3, 0x85, 0x93, 0x78, 0xf1, 0x1c, 0x0c, 0xe4, 0x83, 0xdb, 0x8a, 0x9e, 0x8c, 0xf3, 0xd1, 0x8a, 0xa6, 0xfe, 0xf9, 0x9a, 0xf0, 0x8a, 0x47, 0x76, 0x3f, 0x53, 0xd5, 0x54, 0x40, 0x57, 0x5b, 0xd7, 0x48, 0x05, 0xcb, 0x1a, 0xf9, 0x03, 0xe5, 0xeb, 0xe5, 0x6a, 0xec, 0xdb, 0x51, 0x78, 0x1f, 0x83, 0x86, 0xec, 0xd5, 0xbe, 0x52, 0x84, 0x72, 0xdc, 0xa4, 0x44, 0x5e, 0xe4, 0x76, 0x9f, 0xaa, 0x60, 0x97, 0xdd, 0xc3, 0x28, 0x57, 0x30, 0x5c, 0xe3, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8832 = { .name = "ecdsa_secp384r1_sha3_512_8832", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8832_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8832_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8832_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8833 for ECDSA, tcId is 327 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8833_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8833_msg[] = { 0x31, 0x39, 0x33, 0x34, 0x36, 0x36, 0x34, 0x38, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8833_sig[] = { 0xec, 0x5b, 0xed, 0xca, 0x84, 0xcd, 0x99, 0xed, 0xaf, 0xa9, 0x8a, 0x82, 0xfe, 0x44, 0x64, 0x11, 0x9e, 0x64, 0xd7, 0xc0, 0xef, 0x8a, 0xdb, 0xd3, 0x14, 0x92, 0x2c, 0xfb, 0x4f, 0x04, 0x5e, 0x80, 0x0e, 0x9e, 0x1b, 0x4c, 0x23, 0x3d, 0x75, 0xee, 0xc5, 0x8b, 0x09, 0x16, 0x96, 0x62, 0x46, 0xc0, 0xfe, 0x23, 0xad, 0x01, 0x7b, 0x4b, 0x52, 0x59, 0x54, 0xb8, 0x0b, 0x46, 0x85, 0x66, 0xba, 0x5f, 0x41, 0x8e, 0x5e, 0x05, 0x78, 0x2d, 0xf4, 0xc0, 0xc8, 0xd2, 0xca, 0x37, 0x7b, 0xc7, 0xd9, 0xa0, 0x76, 0x94, 0x2e, 0xb2, 0xa3, 0xf2, 0xcf, 0x25, 0x7b, 0xbb, 0x1e, 0x2a, 0x11, 0x64, 0x2d, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8833 = { .name = "ecdsa_secp384r1_sha3_512_8833", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8833_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8833_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8833_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8834 for ECDSA, tcId is 328 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8834_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8834_msg[] = { 0x33, 0x35, 0x35, 0x34, 0x35, 0x30, 0x35, 0x35, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8834_sig[] = { 0xa6, 0x86, 0xf0, 0x38, 0xf8, 0xab, 0xa1, 0xe9, 0x4c, 0xc2, 0x10, 0xf2, 0x63, 0x7a, 0xda, 0xbb, 0x4f, 0x62, 0x1a, 0x4d, 0xa3, 0x01, 0x5d, 0x42, 0x4d, 0xd0, 0xcc, 0x06, 0xfd, 0x40, 0x49, 0xdf, 0xf8, 0x5b, 0x74, 0xfd, 0xdf, 0xc6, 0xa8, 0x4b, 0x75, 0x20, 0xc7, 0x79, 0x6b, 0x7a, 0xe5, 0xfd, 0xcd, 0xbf, 0xc1, 0x25, 0xd7, 0xf0, 0x35, 0x11, 0xc3, 0x31, 0x6b, 0x5d, 0x30, 0x68, 0xa5, 0x06, 0xc6, 0x76, 0x45, 0x27, 0x26, 0x10, 0xff, 0x73, 0xb7, 0x87, 0x4d, 0x8f, 0x4e, 0x90, 0x45, 0xf1, 0xbc, 0x91, 0x65, 0xce, 0x99, 0x95, 0xf4, 0xe7, 0xd6, 0x8f, 0x27, 0x06, 0x59, 0xc5, 0x25, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8834 = { .name = "ecdsa_secp384r1_sha3_512_8834", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8834_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8834_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8834_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8835 for ECDSA, tcId is 329 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8835_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8835_msg[] = { 0x31, 0x33, 0x30, 0x31, 0x37, 0x32, 0x32, 0x31, 0x30, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8835_sig[] = { 0x88, 0xd5, 0x5a, 0xc6, 0x51, 0x33, 0xda, 0xb2, 0xea, 0x64, 0xe7, 0xa3, 0x0e, 0x35, 0xe8, 0xc8, 0xf8, 0xbd, 0x55, 0x63, 0x6e, 0x40, 0x61, 0xe8, 0xe0, 0xdb, 0xef, 0x0b, 0x60, 0x52, 0xc6, 0x71, 0x02, 0x2c, 0x8c, 0x23, 0xc9, 0x22, 0x58, 0x59, 0xca, 0x2e, 0x72, 0xc7, 0x50, 0x2f, 0x5e, 0x5f, 0x8b, 0x08, 0xb7, 0x60, 0x6d, 0x59, 0x4f, 0x81, 0xe4, 0x24, 0x56, 0xad, 0x80, 0x06, 0x2b, 0xa8, 0x1d, 0x98, 0x6e, 0x0e, 0xbb, 0xd3, 0xa0, 0xac, 0xb5, 0x36, 0x29, 0xcd, 0x16, 0x11, 0x2c, 0x84, 0xbc, 0x6b, 0x8e, 0x89, 0x49, 0x70, 0x82, 0x71, 0xaf, 0xd4, 0x40, 0x79, 0x02, 0x68, 0x4f, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8835 = { .name = "ecdsa_secp384r1_sha3_512_8835", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8835_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8835_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8835_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8836 for ECDSA, tcId is 330 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8836_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8836_msg[] = { 0x35, 0x36, 0x31, 0x37, 0x36, 0x39, 0x31, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8836_sig[] = { 0x1f, 0x47, 0x8f, 0x21, 0x50, 0x09, 0x25, 0x29, 0xb1, 0x6a, 0x20, 0x1f, 0xee, 0x97, 0x82, 0x00, 0xc8, 0xc1, 0x3c, 0x2b, 0x0f, 0x15, 0xe8, 0xe3, 0x01, 0xa9, 0xc7, 0x8d, 0x0a, 0xc8, 0x92, 0x9b, 0x67, 0xcf, 0x8a, 0x86, 0x64, 0xe9, 0x8e, 0x8c, 0xae, 0xd1, 0xa0, 0xc5, 0xa8, 0x56, 0xd8, 0xaf, 0xb1, 0xe5, 0x46, 0x55, 0x3d, 0x7e, 0xfb, 0x04, 0xd0, 0x3c, 0x76, 0x80, 0xe9, 0x6f, 0xde, 0x77, 0x3c, 0xb8, 0x02, 0x07, 0xc8, 0xec, 0x6b, 0x6d, 0x16, 0xdb, 0x2d, 0x8b, 0x1c, 0xa3, 0xbe, 0x22, 0x87, 0x21, 0x69, 0x46, 0x13, 0xd1, 0x78, 0x01, 0x23, 0x0e, 0x72, 0x8b, 0xfe, 0xa5, 0x37, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8836 = { .name = "ecdsa_secp384r1_sha3_512_8836", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8836_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8836_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8836_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8837 for ECDSA, tcId is 331 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8837_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8837_msg[] = { 0x33, 0x35, 0x38, 0x31, 0x39, 0x33, 0x32, 0x35, 0x33, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8837_sig[] = { 0x64, 0x74, 0x51, 0x7a, 0x0b, 0x92, 0xfd, 0xc5, 0xd6, 0x4e, 0x26, 0xe5, 0xd8, 0x86, 0x16, 0xde, 0x83, 0xfc, 0x1b, 0xe7, 0xe4, 0xeb, 0xb7, 0x45, 0x57, 0x5c, 0xd3, 0x1c, 0xf0, 0x48, 0x86, 0xfa, 0x07, 0xe0, 0x06, 0x76, 0xb7, 0x2e, 0x33, 0xff, 0x64, 0x22, 0xe0, 0x2a, 0x52, 0xb2, 0xd9, 0x43, 0x5a, 0x6c, 0x10, 0xb2, 0x76, 0xd1, 0xfc, 0x9c, 0xd8, 0x77, 0x97, 0xfd, 0x56, 0x5f, 0x4a, 0x7b, 0x37, 0x98, 0x35, 0xb1, 0x6f, 0x4d, 0xe0, 0x7e, 0x4b, 0xcd, 0x4d, 0xa5, 0xd5, 0x31, 0x59, 0x43, 0xe7, 0x4b, 0x55, 0x39, 0x68, 0x3d, 0xc8, 0xe0, 0x33, 0x24, 0x98, 0x17, 0xb8, 0x98, 0xae, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8837 = { .name = "ecdsa_secp384r1_sha3_512_8837", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8837_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8837_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8837_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8838 for ECDSA, tcId is 332 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8838_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8838_msg[] = { 0x31, 0x35, 0x37, 0x31, 0x36, 0x36, 0x37, 0x38, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8838_sig[] = { 0xbf, 0xbe, 0xa3, 0x78, 0x43, 0xa7, 0x00, 0x8a, 0x36, 0x88, 0x63, 0xf8, 0x3d, 0x3b, 0x09, 0x94, 0x22, 0x2d, 0x5a, 0x53, 0xcd, 0x7b, 0xe1, 0xc0, 0x81, 0x6e, 0x2b, 0x2e, 0x56, 0xfe, 0x50, 0x92, 0x1e, 0x01, 0x72, 0x9d, 0x93, 0x89, 0x76, 0x25, 0x02, 0x76, 0xb1, 0x8f, 0x4a, 0xfb, 0x18, 0xb5, 0x94, 0x0b, 0xbc, 0xdd, 0xa9, 0x7e, 0xb3, 0xe8, 0x07, 0x15, 0x42, 0x7a, 0x3b, 0x20, 0xdf, 0x34, 0xac, 0x1d, 0x29, 0x30, 0x15, 0xc2, 0xcb, 0x46, 0x75, 0x4a, 0x51, 0x9e, 0xa6, 0xf8, 0x11, 0x16, 0xf2, 0xc0, 0xec, 0x78, 0x0f, 0x81, 0xfa, 0xf8, 0xbd, 0x3b, 0x35, 0xcf, 0x85, 0x64, 0xcf, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8838 = { .name = "ecdsa_secp384r1_sha3_512_8838", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8838_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8838_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8838_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8839 for ECDSA, tcId is 333 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8839_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8839_msg[] = { 0x33, 0x31, 0x39, 0x39, 0x37, 0x38, 0x33, 0x33, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8839_sig[] = { 0x92, 0x5f, 0xbe, 0xa8, 0xfe, 0x31, 0x43, 0x8b, 0xc1, 0xc3, 0x20, 0x8d, 0x84, 0x8a, 0xcc, 0x94, 0x16, 0xb2, 0x03, 0x1e, 0x1a, 0x15, 0x3f, 0xc9, 0xa2, 0x5d, 0xf2, 0x62, 0x5d, 0x4a, 0x3e, 0x20, 0xc8, 0xca, 0x04, 0x55, 0x96, 0xd6, 0x7a, 0xb3, 0xaf, 0xf7, 0x4a, 0xdd, 0x59, 0x3e, 0x38, 0x97, 0x87, 0x8e, 0x30, 0x60, 0xa4, 0xb8, 0x3f, 0x2d, 0x0a, 0x2e, 0x3d, 0x43, 0x17, 0xf3, 0x5f, 0xb9, 0xfb, 0xa0, 0x21, 0x2e, 0x75, 0xe9, 0x91, 0x3a, 0x26, 0xf0, 0x2b, 0x35, 0xbd, 0x73, 0x22, 0x55, 0xcb, 0x25, 0xd1, 0xdb, 0x29, 0x10, 0xc1, 0xc1, 0x8b, 0x0e, 0xdc, 0x16, 0x96, 0xfb, 0x3c, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8839 = { .name = "ecdsa_secp384r1_sha3_512_8839", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8839_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8839_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8839_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8840 for ECDSA, tcId is 334 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8840_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8840_msg[] = { 0x37, 0x34, 0x30, 0x34, 0x37, 0x35, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8840_sig[] = { 0x06, 0x24, 0x23, 0x94, 0x16, 0xf6, 0xcf, 0x07, 0x55, 0x64, 0x2b, 0xa9, 0xae, 0x4a, 0xaf, 0x71, 0x84, 0x2e, 0xaa, 0x1e, 0xd6, 0xe0, 0x4c, 0x38, 0xc8, 0xe1, 0x99, 0x09, 0x74, 0x3b, 0x26, 0x60, 0xf0, 0xf1, 0x91, 0xdb, 0xee, 0xca, 0xd3, 0xf2, 0xf5, 0x3d, 0x8e, 0xf8, 0x6e, 0x9c, 0x86, 0x03, 0x87, 0x73, 0x43, 0x89, 0xd9, 0xa0, 0x63, 0xca, 0x71, 0x6f, 0x09, 0x15, 0xb5, 0x83, 0x6c, 0x9e, 0xd8, 0x40, 0x26, 0x9d, 0xad, 0x20, 0x08, 0x6e, 0xef, 0x59, 0xd2, 0x78, 0xd7, 0xf1, 0x3f, 0xd6, 0x74, 0x8c, 0x0d, 0xc1, 0x8d, 0xdd, 0x69, 0x53, 0xd6, 0xdc, 0xd9, 0x58, 0x4b, 0xe9, 0x11, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8840 = { .name = "ecdsa_secp384r1_sha3_512_8840", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8840_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8840_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8840_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8841 for ECDSA, tcId is 335 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8841_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8841_msg[] = { 0x34, 0x31, 0x37, 0x34, 0x33, 0x36, 0x35, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8841_sig[] = { 0x80, 0x37, 0xd7, 0xeb, 0x5c, 0x58, 0x31, 0x1c, 0xe8, 0x06, 0xa5, 0x80, 0xfb, 0xa2, 0xfb, 0xcd, 0x1d, 0xb9, 0x34, 0x66, 0x89, 0x9e, 0xa5, 0x27, 0x06, 0x98, 0x12, 0xd4, 0x1c, 0xfb, 0x29, 0xd0, 0xc0, 0x92, 0x10, 0x0e, 0xfd, 0xbf, 0xb6, 0x94, 0xee, 0x6d, 0x5d, 0xfa, 0x1f, 0xfe, 0xc2, 0x74, 0x45, 0x9f, 0xed, 0xed, 0x2c, 0x47, 0xbd, 0x44, 0xe0, 0x21, 0x15, 0x21, 0x60, 0xcd, 0x1e, 0x8b, 0xe4, 0xef, 0xe3, 0x7f, 0x6b, 0x96, 0xfb, 0xe7, 0x9b, 0x9f, 0xb0, 0x9d, 0x6a, 0x37, 0x60, 0x23, 0xfa, 0x5f, 0x96, 0x7a, 0x03, 0xbf, 0x9d, 0x3e, 0x82, 0xd3, 0xc3, 0x0e, 0x9d, 0xc3, 0xca, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8841 = { .name = "ecdsa_secp384r1_sha3_512_8841", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8841_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8841_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8841_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8842 for ECDSA, tcId is 336 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8842_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8842_msg[] = { 0x31, 0x32, 0x33, 0x35, 0x36, 0x35, 0x38, 0x38, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha3_512_8842_sig[] = { 0x8f, 0x2d, 0xfe, 0xf7, 0xd8, 0x26, 0x10, 0xab, 0x69, 0x7f, 0x04, 0xac, 0x61, 0x32, 0xdc, 0x2a, 0x5e, 0x5a, 0xc2, 0xb9, 0x0d, 0xb7, 0x62, 0x0d, 0x7a, 0xf3, 0xa5, 0x8d, 0x8f, 0x66, 0x66, 0x2c, 0x7d, 0x91, 0x78, 0xb3, 0x9d, 0x87, 0xd1, 0x87, 0x76, 0x6f, 0x71, 0xa9, 0x92, 0xc1, 0x00, 0x3c, 0xe4, 0xe0, 0x21, 0xd6, 0xd3, 0x95, 0x1c, 0x25, 0xe7, 0x86, 0x32, 0x61, 0x91, 0xb4, 0x7f, 0xb9, 0x4d, 0x94, 0xb1, 0x94, 0xf8, 0xc7, 0xea, 0xd9, 0x9e, 0xfe, 0x86, 0x2d, 0x9f, 0x7d, 0x12, 0x56, 0xb8, 0xcf, 0x98, 0xec, 0x67, 0x1f, 0xc8, 0xb7, 0xb1, 0x98, 0xaa, 0x91, 0xa1, 0x65, 0x54, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8842 = { .name = "ecdsa_secp384r1_sha3_512_8842", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8842_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8842_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8842_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8843 for ECDSA, tcId is 337 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8843_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8843_msg[] = { 0x32, 0x34, 0x32, 0x39, 0x32, 0x35, 0x35, 0x34, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8843_sig[] = { 0x6f, 0xa7, 0xa9, 0x7e, 0x0a, 0x70, 0xf6, 0x07, 0x03, 0xb6, 0x91, 0x13, 0x4e, 0x1d, 0x54, 0x70, 0x84, 0x06, 0xf5, 0xf9, 0x1c, 0x8d, 0xbc, 0x65, 0x3e, 0xe9, 0x53, 0xd1, 0x39, 0xaf, 0x4e, 0xcc, 0xc8, 0x3f, 0x56, 0x50, 0x22, 0xeb, 0x10, 0x9e, 0x20, 0xcb, 0x6a, 0xec, 0xec, 0x36, 0x97, 0x51, 0x54, 0x74, 0x7d, 0xdb, 0x0d, 0x1d, 0xda, 0xb1, 0xb7, 0x42, 0x59, 0x6f, 0xa9, 0x54, 0x68, 0x03, 0x8e, 0x2e, 0xc1, 0x02, 0xbc, 0xfa, 0x82, 0x0f, 0xdb, 0xd3, 0x24, 0xe4, 0xdc, 0x3c, 0x21, 0xe0, 0x81, 0x25, 0x9b, 0xf1, 0x24, 0x8e, 0x59, 0x1b, 0x38, 0xc5, 0x61, 0x0b, 0x2f, 0xb3, 0x14, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8843 = { .name = "ecdsa_secp384r1_sha3_512_8843", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8843_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8843_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8843_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8844 for ECDSA, tcId is 338 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8844_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8844_msg[] = { 0x35, 0x31, 0x38, 0x30, 0x33, 0x30, 0x32, 0x35, 0x34, 0x36, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8844_sig[] = { 0xfb, 0xf9, 0x53, 0x09, 0x86, 0x13, 0x15, 0x1d, 0x7d, 0xd1, 0xb4, 0xc9, 0x49, 0xc7, 0x11, 0x12, 0xf2, 0x57, 0x91, 0x47, 0xd9, 0xab, 0xf5, 0x0a, 0xbf, 0x2a, 0x8b, 0xac, 0x03, 0x81, 0xf2, 0x6d, 0x8b, 0xf5, 0x37, 0x6a, 0x65, 0x6b, 0x05, 0xa9, 0xd3, 0x9c, 0x3a, 0x02, 0x0d, 0xad, 0xe6, 0xca, 0x1a, 0x3a, 0xa4, 0xc1, 0x54, 0x79, 0x90, 0x30, 0x2b, 0xd3, 0x5a, 0x4b, 0xff, 0x0e, 0x5e, 0x85, 0x96, 0x9f, 0x9a, 0xe4, 0xfb, 0x1f, 0xaf, 0x0d, 0x70, 0x94, 0x14, 0x9a, 0x0f, 0x48, 0x90, 0xf6, 0x42, 0x0a, 0x6a, 0xa6, 0x4a, 0x99, 0x90, 0x6a, 0x6e, 0x48, 0x64, 0xa3, 0x80, 0x77, 0xb7, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8844 = { .name = "ecdsa_secp384r1_sha3_512_8844", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8844_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8844_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8844_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8845 for ECDSA, tcId is 339 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8845_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8845_msg[] = { 0x34, 0x34, 0x37, 0x36, 0x33, 0x39, 0x38, 0x32, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8845_sig[] = { 0xc9, 0x10, 0xfa, 0x2b, 0x3e, 0x62, 0xfa, 0x81, 0xed, 0x99, 0x43, 0x6a, 0x19, 0x54, 0xc6, 0xdc, 0xa5, 0x00, 0x19, 0xfe, 0x85, 0x3e, 0x36, 0x8a, 0xc4, 0xf2, 0xc8, 0x36, 0xc8, 0xea, 0xaa, 0x45, 0xd7, 0x4c, 0xb2, 0xf3, 0xde, 0x1c, 0x49, 0x2a, 0x50, 0x70, 0xcb, 0xb6, 0xfb, 0x00, 0xc9, 0x4d, 0xfe, 0xe9, 0x5b, 0x6e, 0x89, 0x8d, 0xc0, 0x53, 0xaa, 0x04, 0x26, 0xe2, 0xd0, 0x10, 0x2c, 0x68, 0x41, 0xcb, 0x66, 0xff, 0x0b, 0x43, 0xbc, 0x9a, 0xcb, 0x71, 0x95, 0x9d, 0x9e, 0x80, 0xee, 0x4a, 0xb8, 0x53, 0xa0, 0x89, 0x00, 0x03, 0x6d, 0xed, 0x7e, 0xbd, 0x9d, 0xf3, 0xca, 0x52, 0x5e, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8845 = { .name = "ecdsa_secp384r1_sha3_512_8845", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8845_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8845_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8845_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8846 for ECDSA, tcId is 340 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8846_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8846_msg[] = { 0x39, 0x30, 0x36, 0x30, 0x30, 0x33, 0x35, 0x32, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8846_sig[] = { 0x5c, 0x60, 0x92, 0x12, 0x39, 0x0b, 0x14, 0x49, 0x69, 0xce, 0x0c, 0xac, 0xd6, 0x80, 0xd1, 0x65, 0x42, 0x2b, 0xb1, 0xdc, 0x28, 0xb9, 0x8d, 0xb2, 0x96, 0xdc, 0x6e, 0xeb, 0xe4, 0xe5, 0xdd, 0x84, 0x47, 0x3e, 0x5c, 0xd9, 0x01, 0xe4, 0x16, 0xba, 0x7f, 0x83, 0x8b, 0x56, 0xb7, 0xaf, 0x36, 0x11, 0xcd, 0x1e, 0x77, 0xc2, 0x40, 0x31, 0x3a, 0x0c, 0xe8, 0xb4, 0x86, 0x1a, 0xd2, 0x83, 0x2f, 0xab, 0xf2, 0x58, 0x59, 0x17, 0xd9, 0x8a, 0xab, 0x7b, 0x2a, 0x52, 0x5a, 0xa2, 0xf3, 0x39, 0x4b, 0xd9, 0x21, 0x4b, 0x93, 0x0c, 0xe1, 0x39, 0x55, 0x5e, 0x04, 0xe5, 0x1f, 0xfb, 0xba, 0x01, 0x9d, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8846 = { .name = "ecdsa_secp384r1_sha3_512_8846", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8846_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8846_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8846_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8847 for ECDSA, tcId is 341 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8847_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8847_msg[] = { 0x31, 0x37, 0x35, 0x36, 0x30, 0x35, 0x33, 0x30, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8847_sig[] = { 0xb1, 0x26, 0xbf, 0x96, 0x83, 0x7a, 0x4b, 0xf7, 0xe0, 0x96, 0x80, 0xf4, 0xc8, 0x26, 0xe3, 0xad, 0x4c, 0xb9, 0xed, 0xce, 0x04, 0xd2, 0xa5, 0x47, 0x13, 0x4a, 0x91, 0x52, 0x37, 0x10, 0xab, 0x99, 0xd4, 0x5a, 0xd7, 0xde, 0x0c, 0x21, 0x3c, 0x58, 0x8a, 0x79, 0xdb, 0x4a, 0x95, 0x2f, 0xf5, 0xe1, 0xc1, 0xc6, 0xba, 0x25, 0xea, 0x63, 0x07, 0x72, 0xde, 0x40, 0x25, 0x68, 0x9c, 0x17, 0x8d, 0x78, 0x39, 0x0a, 0xa5, 0x08, 0x10, 0xc3, 0xed, 0x17, 0x83, 0x5d, 0x39, 0x4b, 0xc4, 0xb1, 0xa5, 0x68, 0xd1, 0x00, 0x8a, 0xbb, 0xfd, 0x1d, 0xa8, 0x7c, 0x0c, 0x4f, 0x7a, 0x28, 0x4c, 0x77, 0xc0, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8847 = { .name = "ecdsa_secp384r1_sha3_512_8847", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8847_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8847_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8847_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8848 for ECDSA, tcId is 342 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8848_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8848_msg[] = { 0x34, 0x39, 0x38, 0x30, 0x38, 0x36, 0x30, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha3_512_8848_sig[] = { 0x15, 0x54, 0xc3, 0xcd, 0xb6, 0xa3, 0x25, 0x68, 0x9d, 0x85, 0xe7, 0xf1, 0xa9, 0x7c, 0xaf, 0xdc, 0x5d, 0x9d, 0x15, 0x86, 0x95, 0x7c, 0x1b, 0xe8, 0xe0, 0x4b, 0x1c, 0xc3, 0xac, 0x28, 0xa2, 0x60, 0xf3, 0xc5, 0x8d, 0xba, 0xcc, 0xab, 0xc3, 0xfd, 0xfe, 0xf7, 0xcb, 0x34, 0x46, 0x07, 0xbe, 0x44, 0x12, 0x59, 0xd8, 0xeb, 0x8b, 0x44, 0xec, 0x78, 0x65, 0xd9, 0x3e, 0xdb, 0xdc, 0xcc, 0x62, 0xd5, 0xf2, 0xd3, 0x7e, 0x9f, 0x0b, 0xfe, 0x84, 0x21, 0x9c, 0x28, 0x61, 0xd9, 0xbe, 0xa7, 0xc7, 0xdd, 0x58, 0xe8, 0x8c, 0x2f, 0x2f, 0xc1, 0x4c, 0xc5, 0x86, 0x26, 0x9a, 0x28, 0x07, 0x00, 0x10, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8848 = { .name = "ecdsa_secp384r1_sha3_512_8848", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8848_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8848_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8848_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8849 for ECDSA, tcId is 343 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8849_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8849_msg[] = { 0x33, 0x36, 0x32, 0x31, 0x38, 0x37, 0x35, 0x33, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha3_512_8849_sig[] = { 0xed, 0x2d, 0xd0, 0x84, 0x5a, 0xb8, 0x62, 0x19, 0x92, 0xc4, 0x50, 0x74, 0x68, 0x58, 0x61, 0x73, 0xd0, 0x0c, 0xcc, 0xa7, 0xfa, 0xed, 0x06, 0x91, 0x3d, 0xb7, 0x0e, 0xca, 0x58, 0x26, 0x67, 0x43, 0x7c, 0x6f, 0x58, 0x9b, 0xe9, 0x7e, 0x5e, 0xa5, 0xc6, 0xa0, 0x06, 0x5d, 0x59, 0x3a, 0x3c, 0xee, 0x90, 0x16, 0xb1, 0x62, 0x6e, 0x66, 0xfe, 0x53, 0xb5, 0xa7, 0xdd, 0x66, 0x61, 0x66, 0x0b, 0x2f, 0xd7, 0x35, 0x99, 0x5b, 0x1d, 0x64, 0xd9, 0x14, 0xc5, 0xc5, 0xc6, 0xa9, 0x14, 0x52, 0xe0, 0x50, 0x61, 0x73, 0x14, 0xb1, 0x4d, 0x57, 0xe4, 0x64, 0x38, 0x1c, 0x27, 0x30, 0xb8, 0x79, 0x41, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8849 = { .name = "ecdsa_secp384r1_sha3_512_8849", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8849_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8849_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8849_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8850 for ECDSA, tcId is 344 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8850_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8850_msg[] = { 0x36, 0x36, 0x34, 0x33, 0x33, 0x33, 0x34, 0x37, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8850_sig[] = { 0x58, 0xa3, 0x6f, 0x6b, 0x0a, 0xd5, 0xa0, 0x21, 0x1d, 0x5f, 0x58, 0xe2, 0xf7, 0x4c, 0x7e, 0x79, 0x30, 0xcd, 0xb7, 0xef, 0xbb, 0xf4, 0x5d, 0x01, 0x11, 0xef, 0x60, 0x6c, 0x25, 0x3b, 0x4b, 0xd2, 0x27, 0xa7, 0xe5, 0x3c, 0x83, 0x46, 0x19, 0x50, 0x3d, 0x11, 0x11, 0x35, 0x82, 0xcc, 0xf0, 0x13, 0xce, 0xde, 0xcc, 0x59, 0xdd, 0x9f, 0x3e, 0xce, 0x32, 0x5f, 0xde, 0x05, 0xc0, 0x9f, 0x0e, 0x20, 0x61, 0x4c, 0x79, 0xfc, 0xe3, 0x99, 0x6c, 0x71, 0xb5, 0xab, 0x2b, 0x26, 0x45, 0x1e, 0x83, 0x2b, 0x47, 0x6b, 0x8d, 0xff, 0x9c, 0x8a, 0x67, 0xb6, 0x55, 0xd8, 0x49, 0x9a, 0x17, 0x1f, 0x5e, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8850 = { .name = "ecdsa_secp384r1_sha3_512_8850", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8850_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8850_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8850_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8851 for ECDSA, tcId is 345 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8851_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8851_msg[] = { 0x34, 0x34, 0x35, 0x34, 0x39, 0x34, 0x32, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8851_sig[] = { 0x21, 0x7e, 0x55, 0x87, 0x0c, 0xde, 0xb3, 0x94, 0xb9, 0x37, 0xe0, 0xeb, 0xca, 0x9c, 0xce, 0xff, 0x3d, 0x1d, 0x69, 0xef, 0x2c, 0x0f, 0x4c, 0xce, 0xc8, 0xcf, 0x95, 0xb9, 0x12, 0xd5, 0x44, 0xca, 0xa2, 0x44, 0xb1, 0x23, 0x3d, 0x5e, 0x67, 0x7d, 0xe9, 0x4c, 0x6a, 0x59, 0x04, 0x85, 0x62, 0xd9, 0xb7, 0x16, 0xdb, 0x65, 0xe6, 0x2f, 0xcc, 0x5f, 0x01, 0x42, 0x6e, 0xf3, 0x16, 0xba, 0x17, 0xc6, 0x12, 0xe0, 0xe5, 0xd3, 0x53, 0x9e, 0x06, 0xa9, 0x62, 0x21, 0x18, 0x31, 0xf1, 0x18, 0xcb, 0x0b, 0xeb, 0x10, 0xf2, 0x89, 0xf3, 0x2d, 0x7f, 0xf2, 0x76, 0xf1, 0x19, 0xc2, 0x34, 0x35, 0x98, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8851 = { .name = "ecdsa_secp384r1_sha3_512_8851", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8851_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8851_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8851_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8852 for ECDSA, tcId is 346 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8852_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8852_msg[] = { 0x32, 0x30, 0x31, 0x38, 0x34, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8852_sig[] = { 0xb2, 0xbc, 0x70, 0x8b, 0x7e, 0x06, 0x16, 0xf4, 0xb1, 0x12, 0x8c, 0xd3, 0x93, 0x97, 0x55, 0x4c, 0xd0, 0x46, 0x21, 0x8a, 0x73, 0x85, 0x19, 0x8f, 0x9f, 0x52, 0xc6, 0x2b, 0xa1, 0x04, 0x31, 0xeb, 0xa1, 0xcc, 0x81, 0x40, 0x9a, 0xe6, 0x69, 0x5f, 0x7e, 0x29, 0xd7, 0xa1, 0x97, 0x16, 0xaa, 0x87, 0x1f, 0x34, 0x49, 0x93, 0x51, 0xf6, 0xd2, 0x9d, 0x22, 0x2e, 0x08, 0xdc, 0x49, 0x89, 0x85, 0xcc, 0x72, 0x30, 0xd4, 0xe7, 0xf4, 0x9c, 0x20, 0x70, 0xb7, 0x87, 0xae, 0x20, 0x83, 0xe3, 0x28, 0xa8, 0x08, 0xff, 0xcb, 0x04, 0x7d, 0x89, 0xbc, 0x0e, 0x2b, 0xb2, 0x95, 0xa6, 0xf8, 0x41, 0x9f, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8852 = { .name = "ecdsa_secp384r1_sha3_512_8852", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8852_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8852_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha3_512_8852_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8853 for ECDSA, tcId is 347 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8853_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8853_msg[] = { 0x35, 0x38, 0x31, 0x33, 0x32, 0x31, 0x37, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8853_sig[] = { 0xe2, 0xd3, 0x6a, 0xce, 0x4a, 0x4a, 0x5a, 0xba, 0x6c, 0x06, 0xaf, 0xcb, 0x98, 0xfd, 0xe6, 0x1a, 0xb4, 0x64, 0xd3, 0x6c, 0x5f, 0x52, 0xfb, 0x51, 0xb9, 0x67, 0x8e, 0x76, 0xbf, 0xc6, 0xe8, 0xbb, 0x13, 0x1b, 0x8a, 0x11, 0x8f, 0xe5, 0xdd, 0xab, 0x58, 0x0a, 0x93, 0x00, 0xd8, 0x46, 0x02, 0xe8, 0x1c, 0xe4, 0x3e, 0x58, 0xf9, 0xf0, 0x3d, 0x52, 0xdf, 0x57, 0x20, 0xe3, 0xca, 0xcc, 0x7a, 0x46, 0xea, 0xea, 0xcd, 0xa5, 0x1d, 0x07, 0x01, 0x58, 0x16, 0x37, 0xda, 0x10, 0x23, 0x3a, 0x0b, 0xf2, 0x8f, 0xba, 0xcf, 0xb4, 0x11, 0xda, 0xcb, 0xda, 0x91, 0x72, 0xcb, 0xe4, 0xb1, 0xb0, 0x93, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8853 = { .name = "ecdsa_secp384r1_sha3_512_8853", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8853_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8853_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha3_512_8853_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8854 for ECDSA, tcId is 348 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8854_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8854_msg[] = { 0x31, 0x31, 0x38, 0x33, 0x38, 0x36, 0x31, 0x38, 0x31, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8854_sig[] = { 0x3f, 0x33, 0x57, 0xcc, 0x7d, 0xfe, 0x35, 0xa0, 0x26, 0x81, 0x95, 0xbf, 0xd1, 0x41, 0x87, 0xfd, 0xe8, 0x60, 0xa1, 0x2f, 0x77, 0x69, 0x78, 0xa1, 0x2a, 0x2c, 0xa4, 0x3d, 0xc0, 0x23, 0x7b, 0xc4, 0x8f, 0x47, 0x5b, 0xd4, 0x40, 0xfd, 0xcd, 0x43, 0xec, 0x10, 0x1f, 0x4d, 0x55, 0x2b, 0xfd, 0xd6, 0x68, 0x55, 0x5a, 0x3e, 0x46, 0xb3, 0x73, 0xad, 0xf3, 0x46, 0x43, 0x29, 0xd3, 0x92, 0xfb, 0xda, 0x0c, 0xb3, 0xf2, 0x49, 0x0c, 0x7e, 0x64, 0x82, 0xc8, 0x88, 0x75, 0x5f, 0x62, 0xac, 0xa7, 0x5e, 0xd4, 0x16, 0xcd, 0x59, 0xbc, 0x0f, 0x84, 0xfc, 0xbc, 0x74, 0x9a, 0xf7, 0x9e, 0x14, 0x5d, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8854 = { .name = "ecdsa_secp384r1_sha3_512_8854", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8854_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8854_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8854_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8855 for ECDSA, tcId is 349 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8855_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8855_msg[] = { 0x31, 0x39, 0x32, 0x32, 0x36, 0x30, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8855_sig[] = { 0x26, 0xbd, 0xc5, 0x39, 0xd0, 0x84, 0xe9, 0x73, 0x56, 0xbb, 0xca, 0x9a, 0xa2, 0x3b, 0x52, 0xeb, 0xfe, 0x99, 0xfe, 0x6d, 0x26, 0x02, 0x7b, 0x42, 0x52, 0xcf, 0xcc, 0xbc, 0x93, 0x59, 0xcd, 0xaa, 0x4a, 0x52, 0x6f, 0xaf, 0x9f, 0xfc, 0xdc, 0x0f, 0x83, 0x1e, 0x33, 0x8b, 0xaf, 0x9b, 0xda, 0xea, 0xbc, 0xe3, 0x90, 0x66, 0x65, 0x2e, 0x0e, 0x83, 0xc8, 0x5a, 0xff, 0xbb, 0xb5, 0x62, 0x34, 0x78, 0x8f, 0x14, 0x66, 0x77, 0x0d, 0x9d, 0x81, 0xf0, 0x14, 0xe7, 0xaa, 0xd4, 0x69, 0x4c, 0x16, 0x7f, 0x06, 0xee, 0x3b, 0xd0, 0x64, 0x4f, 0x98, 0x34, 0x15, 0x25, 0x6b, 0xea, 0x82, 0x74, 0x54, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8855 = { .name = "ecdsa_secp384r1_sha3_512_8855", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8855_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8855_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8855_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8856 for ECDSA, tcId is 350 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8856_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8856_msg[] = { 0x39, 0x37, 0x35, 0x31, 0x34, 0x33, 0x32, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha3_512_8856_sig[] = { 0xa9, 0x77, 0xc3, 0xfe, 0xf5, 0x4b, 0x99, 0x57, 0x45, 0xc8, 0xd3, 0x4b, 0x56, 0x42, 0x9b, 0x8d, 0xeb, 0x9e, 0xd2, 0x66, 0xa2, 0xa7, 0x82, 0xb8, 0x0f, 0x95, 0x4a, 0xfd, 0xca, 0xd3, 0x64, 0x2b, 0xd1, 0xac, 0x55, 0x4c, 0x17, 0xd4, 0x5e, 0xa5, 0xd3, 0x50, 0x38, 0x52, 0x4c, 0x96, 0x0f, 0x8d, 0x21, 0xe3, 0x18, 0xcd, 0xe9, 0x39, 0xf7, 0xcb, 0xb2, 0xfc, 0x84, 0x2b, 0x08, 0x85, 0xac, 0xb3, 0xaf, 0x49, 0x05, 0xbd, 0x07, 0xa8, 0x34, 0x67, 0x8f, 0x82, 0x29, 0xe7, 0x4f, 0x3d, 0x3d, 0x6b, 0x77, 0x9f, 0x72, 0x53, 0xcb, 0xf0, 0xb1, 0x29, 0x5d, 0xa1, 0x77, 0x5a, 0x43, 0xe9, 0x56, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8856 = { .name = "ecdsa_secp384r1_sha3_512_8856", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8856_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8856_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8856_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8857 for ECDSA, tcId is 351 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8857_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8857_msg[] = { 0x38, 0x33, 0x31, 0x35, 0x31, 0x31, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha3_512_8857_sig[] = { 0x80, 0xf7, 0xb2, 0x5a, 0xea, 0x62, 0xa1, 0xf2, 0x44, 0xdd, 0x0b, 0x49, 0x38, 0xe3, 0xbe, 0x40, 0xa5, 0x07, 0x7c, 0x27, 0x8e, 0x06, 0x24, 0x56, 0x1b, 0x9d, 0xc7, 0x1c, 0x6e, 0x53, 0x05, 0x57, 0xa8, 0xe3, 0x62, 0xeb, 0xb5, 0xe7, 0xea, 0x52, 0x44, 0xb0, 0x6d, 0x68, 0xd9, 0x86, 0x21, 0x18, 0x5a, 0x7f, 0x8b, 0x1d, 0xce, 0x45, 0x58, 0x3b, 0xd9, 0xb9, 0xdd, 0x6b, 0x44, 0x11, 0x26, 0xbc, 0x21, 0x52, 0x6c, 0xe8, 0x61, 0x18, 0x1d, 0x2e, 0xed, 0x7a, 0x4b, 0xf9, 0x99, 0x8a, 0xd4, 0xc6, 0x46, 0x1d, 0xa3, 0x10, 0x7b, 0x0e, 0xd0, 0x57, 0x11, 0xf7, 0x44, 0x23, 0x6f, 0x4d, 0x5d, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8857 = { .name = "ecdsa_secp384r1_sha3_512_8857", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8857_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8857_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8857_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8858 for ECDSA, tcId is 352 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8858_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8858_msg[] = { 0x33, 0x32, 0x36, 0x33, 0x31, 0x36, 0x38, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha3_512_8858_sig[] = { 0xcb, 0x33, 0xc1, 0x67, 0x45, 0xd0, 0x56, 0xd2, 0xf5, 0x45, 0x0f, 0x88, 0xf7, 0x7f, 0x10, 0xf2, 0x7a, 0x40, 0x5b, 0x4e, 0x2f, 0xa9, 0x4d, 0x9d, 0xd7, 0x1e, 0xfe, 0xfe, 0xda, 0xe5, 0x68, 0x72, 0x3c, 0x03, 0x60, 0x26, 0xd8, 0x91, 0x1d, 0x98, 0x7b, 0xf4, 0x3f, 0x96, 0xad, 0x72, 0x6a, 0x1b, 0xc0, 0x04, 0x33, 0xbc, 0xf5, 0xa4, 0xd8, 0x7f, 0x93, 0x7f, 0xb8, 0xb3, 0x23, 0x5e, 0xf8, 0x7e, 0x52, 0x53, 0x52, 0x16, 0x4d, 0xe2, 0xf2, 0x8f, 0x96, 0xd3, 0x32, 0x02, 0x2e, 0x84, 0x37, 0xb0, 0xb5, 0x6c, 0x7e, 0xb3, 0xa2, 0x8c, 0xda, 0x7f, 0x71, 0xc6, 0x66, 0x1f, 0xe8, 0x36, 0x8d, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8858 = { .name = "ecdsa_secp384r1_sha3_512_8858", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8858_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8858_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha3_512_8858_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8859 for ECDSA, tcId is 353 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8859_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8859_msg[] = { 0x34, 0x30, 0x32, 0x39, 0x36, 0x38, 0x37, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha3_512_8859_sig[] = { 0xcf, 0x6c, 0xf7, 0x60, 0xe8, 0x36, 0xa2, 0xbb, 0xd6, 0xd3, 0x55, 0x89, 0x0a, 0x6c, 0x2c, 0x34, 0x21, 0x96, 0xa3, 0x9d, 0x2b, 0x6e, 0x57, 0xfb, 0xb8, 0xd0, 0x1d, 0xed, 0x56, 0x39, 0xfe, 0x5d, 0x2c, 0x02, 0x91, 0x07, 0x4d, 0x44, 0x75, 0x8c, 0xce, 0xaf, 0xb8, 0x16, 0xc3, 0xa1, 0x68, 0x7d, 0xa1, 0xff, 0x94, 0x89, 0x64, 0x71, 0x7d, 0x56, 0x7b, 0x54, 0xd8, 0xc8, 0x66, 0xf7, 0x9e, 0xc0, 0xe6, 0xd1, 0x47, 0xf7, 0xe5, 0xdb, 0xd6, 0xe2, 0x66, 0xef, 0xc3, 0xc7, 0x1c, 0xf6, 0xb6, 0xc1, 0x16, 0xa6, 0xc2, 0xd6, 0x75, 0xf1, 0x66, 0x45, 0x20, 0xe8, 0x77, 0x55, 0x45, 0xf7, 0xa0, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8859 = { .name = "ecdsa_secp384r1_sha3_512_8859", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8859_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8859_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8859_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8860 for ECDSA, tcId is 354 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8860_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8860_msg[] = { 0x36, 0x33, 0x32, 0x30, 0x38, 0x38, 0x31, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8860_sig[] = { 0xff, 0x67, 0x9d, 0x07, 0x31, 0xed, 0x5a, 0xa6, 0x97, 0x3a, 0x29, 0xdc, 0x14, 0xe5, 0x6e, 0xc9, 0x83, 0x52, 0x1c, 0x00, 0x70, 0x60, 0x00, 0x34, 0xac, 0xb6, 0xb8, 0x45, 0xb9, 0xc0, 0x1b, 0xb3, 0xe0, 0x1b, 0xd8, 0x69, 0x74, 0x49, 0x5f, 0x70, 0xa9, 0x19, 0xbc, 0x89, 0x91, 0xb9, 0x60, 0x23, 0xd6, 0x87, 0x41, 0xcf, 0x87, 0x70, 0xab, 0xc4, 0xdd, 0xdf, 0x74, 0x08, 0x9c, 0xab, 0x86, 0x79, 0xcd, 0xc7, 0x7a, 0x80, 0x7f, 0x58, 0x7f, 0x6b, 0x11, 0x2d, 0xd8, 0xfb, 0x7d, 0xf4, 0x7c, 0x46, 0x9d, 0x44, 0x0b, 0xed, 0xad, 0x5f, 0x36, 0x15, 0xe6, 0x67, 0xc0, 0xe0, 0x68, 0x9e, 0x66, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8860 = { .name = "ecdsa_secp384r1_sha3_512_8860", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8860_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8860_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8860_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8861 for ECDSA, tcId is 355 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8861_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8861_msg[] = { 0x35, 0x32, 0x32, 0x35, 0x33, 0x39, 0x30, 0x37, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8861_sig[] = { 0x1f, 0x42, 0xb6, 0xc6, 0xef, 0x17, 0xec, 0x12, 0x4b, 0xfe, 0xab, 0xdb, 0xc7, 0x8f, 0xbc, 0x18, 0xb3, 0x77, 0x3d, 0x7f, 0x30, 0x01, 0x71, 0x9b, 0xf8, 0x35, 0x47, 0xae, 0xd7, 0xbd, 0x8b, 0x85, 0x59, 0x6d, 0x39, 0xc3, 0xd7, 0x4e, 0xd5, 0xe3, 0x9e, 0x55, 0x8f, 0x23, 0x67, 0xb8, 0xc5, 0xfb, 0x0e, 0x42, 0xb5, 0xd0, 0xad, 0xdf, 0x48, 0x8e, 0x15, 0x88, 0x1d, 0x80, 0xab, 0xcd, 0x47, 0x10, 0xcd, 0x1c, 0xef, 0x81, 0x38, 0xfd, 0x41, 0xe8, 0x68, 0xf6, 0xed, 0xba, 0xf3, 0x69, 0x80, 0x72, 0x46, 0xb4, 0x3e, 0x3d, 0x98, 0xe1, 0x41, 0xa7, 0xfb, 0x34, 0xf2, 0x5c, 0x8d, 0x8f, 0x52, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8861 = { .name = "ecdsa_secp384r1_sha3_512_8861", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8861_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8861_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8861_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 355 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8862 for ECDSA, tcId is 356 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8862_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8862_msg[] = { 0x31, 0x33, 0x34, 0x39, 0x33, 0x39, 0x33, 0x36, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha3_512_8862_sig[] = { 0x6a, 0xec, 0xc2, 0xac, 0x6b, 0xb4, 0x4f, 0x69, 0xf3, 0x28, 0xf2, 0xd2, 0x6c, 0xea, 0xaa, 0x8b, 0x92, 0xfb, 0xbf, 0xfc, 0xae, 0xf5, 0x25, 0x8b, 0x99, 0x15, 0x31, 0x1a, 0xfc, 0x47, 0x25, 0x9a, 0xc6, 0xcc, 0x03, 0xe1, 0xa8, 0x82, 0x11, 0xa6, 0x03, 0xc7, 0x34, 0x2f, 0x0f, 0xe2, 0x47, 0x06, 0xcd, 0xac, 0xb0, 0xfc, 0xb3, 0xc5, 0x4d, 0x33, 0x42, 0x0f, 0xd4, 0x83, 0x31, 0xc5, 0xdb, 0x26, 0xe4, 0xbf, 0xca, 0x9b, 0x74, 0x65, 0xc9, 0xb1, 0x61, 0x63, 0xd9, 0xec, 0x75, 0x17, 0x54, 0x42, 0xd8, 0xa3, 0x75, 0x64, 0xea, 0x37, 0x2d, 0x57, 0xa4, 0x7a, 0x58, 0x28, 0xd8, 0xcc, 0xbc, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8862 = { .name = "ecdsa_secp384r1_sha3_512_8862", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8862_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8862_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha3_512_8862_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 356 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8863 for ECDSA, tcId is 357 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8863_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8863_msg[] = { 0x31, 0x30, 0x33, 0x39, 0x37, 0x39, 0x36, 0x30, 0x37, 0x36, 0x31, }; static const unsigned char ecdsa_secp384r1_sha3_512_8863_sig[] = { 0x83, 0x4a, 0x37, 0x4b, 0x3e, 0xc9, 0xb7, 0x85, 0x9b, 0xb0, 0x84, 0x27, 0xe9, 0xd8, 0x80, 0x87, 0x5a, 0xf3, 0xc1, 0xa9, 0x8e, 0xad, 0x00, 0x9f, 0x24, 0xba, 0xb9, 0xeb, 0xe1, 0xd0, 0x67, 0xa1, 0x3f, 0x83, 0xfb, 0x78, 0x70, 0x5e, 0xe8, 0xac, 0x32, 0xe6, 0x95, 0x0f, 0xc7, 0xa2, 0xab, 0xa4, 0x43, 0x94, 0x9a, 0xdf, 0x58, 0x2e, 0x52, 0xce, 0xef, 0xe9, 0xe3, 0xed, 0x95, 0xa0, 0xc4, 0xa2, 0x28, 0xda, 0x95, 0x70, 0x5d, 0xa2, 0x41, 0x02, 0xb9, 0x3c, 0x45, 0xb0, 0x9f, 0xa0, 0x8f, 0xf9, 0xd3, 0x58, 0xd9, 0x8f, 0x8c, 0xb6, 0x81, 0xf6, 0x84, 0x34, 0x48, 0x56, 0x95, 0xc4, 0x39, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8863 = { .name = "ecdsa_secp384r1_sha3_512_8863", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8863_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8863_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha3_512_8863_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 357 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8864 for ECDSA, tcId is 358 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8864_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8864_sig[] = { 0x87, 0x65, 0x8b, 0x92, 0x15, 0xc9, 0x1a, 0x52, 0xe1, 0xb8, 0x2d, 0x92, 0xd9, 0xff, 0xd6, 0xcf, 0xeb, 0xef, 0xe6, 0x43, 0x3b, 0x5c, 0x46, 0xcf, 0xbd, 0xe7, 0x51, 0xda, 0x58, 0xb2, 0xd4, 0x4b, 0x22, 0xc2, 0xda, 0x1d, 0xcb, 0xbd, 0xc9, 0xd0, 0xd6, 0x06, 0xc5, 0x3c, 0xde, 0x2d, 0x2f, 0xfb, 0x89, 0xd6, 0xa0, 0x42, 0x10, 0xe5, 0x80, 0x32, 0xc0, 0x76, 0x8a, 0xdc, 0xd1, 0x31, 0x20, 0x83, 0x5c, 0xb0, 0xfa, 0xe9, 0x7d, 0x1f, 0x38, 0x7e, 0x40, 0x09, 0xdf, 0x91, 0x54, 0xe9, 0x36, 0x5f, 0x17, 0x88, 0xff, 0xdc, 0xf8, 0x54, 0xbf, 0x7b, 0x9e, 0xea, 0x89, 0x3b, 0x7f, 0x39, 0x7f, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8864 = { .name = "ecdsa_secp384r1_sha3_512_8864", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8864_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8864_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8864_sig, .siglen = 96, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 358 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8865 for ECDSA, tcId is 359 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8865_pubkey[] = { 0x0b, 0x47, 0x8a, 0x0c, 0xbf, 0x5e, 0xb4, 0x67, 0x1e, 0x50, 0x81, 0x2f, 0x19, 0x45, 0xe4, 0xf8, 0x52, 0xd8, 0x89, 0x0d, 0xac, 0xb4, 0x0e, 0x99, 0x47, 0xab, 0x23, 0x8e, 0x6d, 0xb8, 0xf1, 0xf9, 0x7f, 0x0e, 0xf7, 0x69, 0xe4, 0x4a, 0x1c, 0x94, 0x55, 0xca, 0x0f, 0x21, 0xf8, 0xcc, 0x24, 0xbe, 0x4b, 0x4b, 0x3e, 0x82, 0x50, 0x64, 0xd3, 0xea, 0x8b, 0xf8, 0x56, 0x2e, 0x7a, 0x23, 0xc9, 0xa6, 0x10, 0x26, 0xf7, 0x72, 0x51, 0xac, 0xb1, 0x24, 0x78, 0xd3, 0x39, 0x1e, 0x5b, 0x08, 0xf9, 0xed, 0x59, 0x79, 0xb2, 0xec, 0xb9, 0x74, 0xd5, 0x02, 0x5b, 0x68, 0x3f, 0x14, 0x6f, 0x30, 0xdc, 0x3c, }; static const unsigned char ecdsa_secp384r1_sha3_512_8865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8865_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8865 = { .name = "ecdsa_secp384r1_sha3_512_8865", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8865_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8865_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8865_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 359 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8866 for ECDSA, tcId is 360 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8866_pubkey[] = { 0x0b, 0x47, 0x8a, 0x0c, 0xbf, 0x5e, 0xb4, 0x67, 0x1e, 0x50, 0x81, 0x2f, 0x19, 0x45, 0xe4, 0xf8, 0x52, 0xd8, 0x89, 0x0d, 0xac, 0xb4, 0x0e, 0x99, 0x47, 0xab, 0x23, 0x8e, 0x6d, 0xb8, 0xf1, 0xf9, 0x7f, 0x0e, 0xf7, 0x69, 0xe4, 0x4a, 0x1c, 0x94, 0x55, 0xca, 0x0f, 0x21, 0xf8, 0xcc, 0x24, 0xbe, 0x4b, 0x4b, 0x3e, 0x82, 0x50, 0x64, 0xd3, 0xea, 0x8b, 0xf8, 0x56, 0x2e, 0x7a, 0x23, 0xc9, 0xa6, 0x10, 0x26, 0xf7, 0x72, 0x51, 0xac, 0xb1, 0x24, 0x78, 0xd3, 0x39, 0x1e, 0x5b, 0x08, 0xf9, 0xed, 0x59, 0x79, 0xb2, 0xec, 0xb9, 0x74, 0xd5, 0x02, 0x5b, 0x68, 0x3f, 0x14, 0x6f, 0x30, 0xdc, 0x3c, }; static const unsigned char ecdsa_secp384r1_sha3_512_8866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8866_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8866 = { .name = "ecdsa_secp384r1_sha3_512_8866", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8866_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8866_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8866_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 360 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8867 for ECDSA, tcId is 361 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8867_pubkey[] = { 0x84, 0x82, 0xba, 0xec, 0xb7, 0xce, 0x21, 0x70, 0x56, 0xf3, 0x4f, 0xc8, 0xa8, 0x58, 0x75, 0x87, 0x60, 0x02, 0xbb, 0xa5, 0xe1, 0x3f, 0xbe, 0x98, 0x57, 0xd3, 0x65, 0x3a, 0xa3, 0x0f, 0x68, 0x21, 0xd6, 0x87, 0xf5, 0xeb, 0x4a, 0x2b, 0xe7, 0xff, 0x2c, 0x0b, 0x29, 0xa2, 0xe0, 0x53, 0xab, 0xd9, 0x0d, 0x3f, 0x5d, 0x11, 0x6c, 0xe9, 0x30, 0x7f, 0x9f, 0x60, 0x16, 0xd4, 0x6e, 0xa7, 0x2b, 0xb2, 0x9e, 0xb4, 0x77, 0x8a, 0x04, 0x80, 0xb1, 0xdf, 0xf8, 0xf5, 0xdd, 0xaf, 0x45, 0x8c, 0x78, 0x8c, 0x16, 0xd3, 0xee, 0x41, 0x39, 0x8b, 0x72, 0xcc, 0x7b, 0x5c, 0x60, 0xd8, 0x11, 0x51, 0x7c, 0xae, }; static const unsigned char ecdsa_secp384r1_sha3_512_8867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8867_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8867 = { .name = "ecdsa_secp384r1_sha3_512_8867", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8867_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8867_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8867_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 361 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8868 for ECDSA, tcId is 362 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8868_pubkey[] = { 0xd7, 0x15, 0x39, 0xa7, 0x30, 0x4a, 0x82, 0xf9, 0x3a, 0xa6, 0x9f, 0x89, 0xf0, 0x66, 0x8f, 0xa2, 0x73, 0xdf, 0xee, 0xbd, 0x1e, 0xad, 0x07, 0x17, 0x1d, 0xe4, 0x9f, 0x3d, 0x07, 0x1d, 0x5d, 0xc5, 0x3a, 0x13, 0x0c, 0x14, 0xd2, 0x18, 0x9b, 0x8c, 0x03, 0x2c, 0xc9, 0x15, 0xa8, 0x34, 0x22, 0xe8, 0x80, 0x23, 0x06, 0x8f, 0x01, 0x54, 0x41, 0x9b, 0x43, 0x4a, 0x9c, 0xe0, 0xbf, 0x12, 0xc9, 0x92, 0x35, 0x59, 0x5f, 0x4b, 0x61, 0x6c, 0x2d, 0xb9, 0x7b, 0x28, 0xe5, 0x23, 0xf9, 0x47, 0x45, 0x11, 0x98, 0xfa, 0x63, 0xaa, 0x79, 0x01, 0xe7, 0x1f, 0x8d, 0x9b, 0x31, 0xbf, 0xd2, 0xcf, 0x7a, 0xd0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8868_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8868 = { .name = "ecdsa_secp384r1_sha3_512_8868", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8868_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8868_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8868_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 362 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8869 for ECDSA, tcId is 363 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8869_pubkey[] = { 0x0f, 0x2a, 0xe9, 0x1f, 0xdc, 0x85, 0xf7, 0x73, 0x9a, 0x40, 0x0b, 0xe4, 0xc1, 0x28, 0xdc, 0xfb, 0x37, 0x75, 0x59, 0xc9, 0x36, 0xbd, 0xee, 0xe6, 0x20, 0xcd, 0x08, 0x44, 0x9b, 0x7b, 0xcb, 0xef, 0x99, 0x2c, 0x25, 0x34, 0xdc, 0x55, 0x9c, 0xfe, 0x32, 0x80, 0x67, 0xfc, 0x3e, 0x87, 0xdf, 0x8c, 0xec, 0xa1, 0xb6, 0x1f, 0xd6, 0x31, 0xc9, 0x9b, 0xde, 0xed, 0xc2, 0x8c, 0x4a, 0x78, 0x0d, 0x10, 0xab, 0x38, 0xfc, 0xa2, 0xcc, 0x7e, 0xd5, 0x3e, 0xab, 0x34, 0x30, 0x96, 0x46, 0xd5, 0xc2, 0xc9, 0xdc, 0x70, 0x63, 0xfe, 0x5a, 0x7a, 0x58, 0x42, 0x6e, 0x66, 0xb0, 0xca, 0x3d, 0xb1, 0xc2, 0x2f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8869_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8869 = { .name = "ecdsa_secp384r1_sha3_512_8869", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8869_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8869_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8869_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 363 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8870 for ECDSA, tcId is 364 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8870_pubkey[] = { 0x17, 0x18, 0xde, 0x89, 0x7c, 0x6b, 0x65, 0x0a, 0x9c, 0x92, 0x12, 0xa0, 0xc0, 0xe6, 0x7a, 0x46, 0x98, 0xe6, 0x3c, 0x35, 0x67, 0xf0, 0x25, 0xe6, 0xe0, 0x2d, 0xda, 0x91, 0x61, 0xec, 0xe0, 0x1e, 0xa0, 0xa1, 0x8a, 0xfc, 0x29, 0x48, 0x7a, 0x5e, 0xd0, 0x1a, 0x48, 0x85, 0x6c, 0x9a, 0xab, 0x4b, 0x5e, 0x4b, 0xac, 0xf9, 0xf4, 0x5d, 0x46, 0x59, 0x43, 0x8d, 0xc2, 0x8c, 0xa2, 0x1a, 0x0c, 0x46, 0x1e, 0x38, 0xcb, 0xf9, 0x11, 0x47, 0x1e, 0x41, 0x41, 0x63, 0x0f, 0x0f, 0x7c, 0x32, 0xd4, 0xaa, 0x7a, 0x13, 0x10, 0xd4, 0x8e, 0xea, 0x3a, 0x41, 0x3b, 0xf6, 0x82, 0x20, 0x1f, 0xed, 0x3f, 0x27, }; static const unsigned char ecdsa_secp384r1_sha3_512_8870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8870_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8870 = { .name = "ecdsa_secp384r1_sha3_512_8870", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8870_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8870_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8870_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 364 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8871 for ECDSA, tcId is 365 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8871_pubkey[] = { 0x93, 0xf9, 0x2e, 0x69, 0x55, 0x89, 0x39, 0xa6, 0x43, 0x04, 0xde, 0x24, 0xea, 0xf2, 0x79, 0x9f, 0xfb, 0x29, 0xe3, 0xdf, 0xe0, 0x0a, 0x8a, 0xa3, 0x54, 0x31, 0x71, 0x38, 0xc2, 0x94, 0x2d, 0x44, 0x9f, 0xa7, 0x35, 0xeb, 0x5b, 0x5e, 0xc2, 0x44, 0x29, 0xb0, 0x31, 0x94, 0xfd, 0xe9, 0x92, 0x40, 0x19, 0x43, 0x7f, 0x88, 0x18, 0xdf, 0x2d, 0x55, 0x0f, 0x00, 0x79, 0xf9, 0x85, 0x71, 0xc8, 0x3b, 0x75, 0xac, 0x0c, 0xa2, 0x6e, 0xdd, 0x24, 0x79, 0x3d, 0x0a, 0x95, 0x06, 0x8d, 0x82, 0x58, 0xe1, 0x78, 0x30, 0x76, 0x3b, 0x03, 0x33, 0x4f, 0xfc, 0x8b, 0xf5, 0x47, 0x64, 0x88, 0xa7, 0xc1, 0xb0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8871_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8871 = { .name = "ecdsa_secp384r1_sha3_512_8871", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8871_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8871_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8871_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 365 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8872 for ECDSA, tcId is 366 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8872_pubkey[] = { 0x96, 0x9e, 0x39, 0xe9, 0xe2, 0xf3, 0xe4, 0x89, 0x96, 0xe7, 0xfa, 0xca, 0x4c, 0xc8, 0x42, 0x79, 0x0f, 0x8a, 0x14, 0x77, 0xd1, 0xc5, 0x69, 0x99, 0x33, 0x56, 0x3b, 0x47, 0x04, 0x95, 0xf4, 0xac, 0x68, 0xb7, 0x6d, 0x7e, 0x1d, 0x4c, 0x39, 0xa7, 0xb7, 0x0d, 0xf2, 0xdf, 0xec, 0x1a, 0x08, 0x16, 0xf0, 0x3e, 0x95, 0xc8, 0xb9, 0x8c, 0x47, 0x83, 0x30, 0xae, 0x3e, 0x15, 0xe1, 0xb8, 0x0e, 0x33, 0xca, 0xa3, 0x05, 0x7f, 0x43, 0x05, 0xe8, 0x48, 0x65, 0xd3, 0xa2, 0x70, 0xca, 0xb9, 0x75, 0x12, 0x14, 0x94, 0x7d, 0x0b, 0xee, 0x6a, 0x23, 0xd4, 0x12, 0xd1, 0x9e, 0x60, 0x6a, 0x98, 0x39, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8872_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8872 = { .name = "ecdsa_secp384r1_sha3_512_8872", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8872_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8872_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8872_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 366 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8873 for ECDSA, tcId is 367 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8873_pubkey[] = { 0x96, 0x9e, 0x39, 0xe9, 0xe2, 0xf3, 0xe4, 0x89, 0x96, 0xe7, 0xfa, 0xca, 0x4c, 0xc8, 0x42, 0x79, 0x0f, 0x8a, 0x14, 0x77, 0xd1, 0xc5, 0x69, 0x99, 0x33, 0x56, 0x3b, 0x47, 0x04, 0x95, 0xf4, 0xac, 0x68, 0xb7, 0x6d, 0x7e, 0x1d, 0x4c, 0x39, 0xa7, 0xb7, 0x0d, 0xf2, 0xdf, 0xec, 0x1a, 0x08, 0x16, 0xf0, 0x3e, 0x95, 0xc8, 0xb9, 0x8c, 0x47, 0x83, 0x30, 0xae, 0x3e, 0x15, 0xe1, 0xb8, 0x0e, 0x33, 0xca, 0xa3, 0x05, 0x7f, 0x43, 0x05, 0xe8, 0x48, 0x65, 0xd3, 0xa2, 0x70, 0xca, 0xb9, 0x75, 0x12, 0x14, 0x94, 0x7d, 0x0b, 0xee, 0x6a, 0x23, 0xd4, 0x12, 0xd1, 0x9e, 0x60, 0x6a, 0x98, 0x39, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8873_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8873 = { .name = "ecdsa_secp384r1_sha3_512_8873", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8873_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8873_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8873_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 367 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8874 for ECDSA, tcId is 368 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8874_pubkey[] = { 0xf9, 0xfe, 0xee, 0xf2, 0x09, 0xb3, 0x72, 0xbb, 0x67, 0x8d, 0x2d, 0x12, 0x75, 0xc6, 0x53, 0xd7, 0xbd, 0xb6, 0x90, 0x89, 0x82, 0x87, 0x93, 0x21, 0xe7, 0xf4, 0xec, 0x7a, 0x08, 0x3a, 0xd8, 0x57, 0x62, 0xee, 0x1b, 0x9d, 0x85, 0xc7, 0x22, 0x7b, 0xdf, 0xbc, 0x56, 0xe4, 0x47, 0x27, 0x03, 0x0f, 0x4c, 0x57, 0xfa, 0x58, 0xb6, 0x19, 0x38, 0x41, 0x65, 0xa3, 0xb5, 0x0a, 0x62, 0xc6, 0x3d, 0xd3, 0xa8, 0xca, 0xed, 0xc6, 0x20, 0x4c, 0xd3, 0x5c, 0x40, 0x4d, 0x1f, 0x16, 0xa6, 0xcb, 0xbe, 0x82, 0x83, 0x22, 0x84, 0x48, 0xb4, 0x68, 0xfd, 0xbb, 0x12, 0xd5, 0x4e, 0x5d, 0x2c, 0xd7, 0x0c, 0xea, }; static const unsigned char ecdsa_secp384r1_sha3_512_8874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8874_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8874 = { .name = "ecdsa_secp384r1_sha3_512_8874", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8874_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8874_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8874_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 368 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8875 for ECDSA, tcId is 369 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8875_pubkey[] = { 0x20, 0xd2, 0x3d, 0x3e, 0x5a, 0x68, 0xe7, 0x28, 0x96, 0xdb, 0x6b, 0x25, 0x00, 0xf0, 0x79, 0x7d, 0xe5, 0x58, 0x58, 0x6f, 0x31, 0xd7, 0x9b, 0x69, 0x6b, 0x19, 0xa1, 0x70, 0x29, 0x96, 0x74, 0x02, 0x4d, 0xc8, 0xac, 0xb4, 0xad, 0xbf, 0xa2, 0xea, 0x83, 0xb0, 0xe5, 0xde, 0xda, 0x5a, 0xdc, 0x8a, 0x20, 0x53, 0x49, 0x57, 0x09, 0x6a, 0x65, 0x1f, 0x2a, 0xd6, 0xec, 0xda, 0x41, 0x88, 0x49, 0x66, 0x39, 0xd0, 0x4d, 0xed, 0x50, 0x39, 0xdf, 0x67, 0xb3, 0xe7, 0xd2, 0x85, 0x86, 0x08, 0x20, 0x07, 0x02, 0x12, 0x84, 0xe8, 0xe1, 0x1f, 0x79, 0xbe, 0xdb, 0x42, 0xcb, 0x5a, 0x72, 0x67, 0xe5, 0x5a, }; static const unsigned char ecdsa_secp384r1_sha3_512_8875_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8875_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8875 = { .name = "ecdsa_secp384r1_sha3_512_8875", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8875_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8875_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8875_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 369 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8876 for ECDSA, tcId is 370 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8876_pubkey[] = { 0x5f, 0x66, 0x2a, 0x2d, 0xe9, 0x9b, 0xa5, 0xd6, 0xba, 0x9d, 0x44, 0x15, 0x81, 0xb1, 0xe0, 0x03, 0x60, 0x56, 0xdc, 0x2d, 0x8a, 0x14, 0x60, 0x80, 0xfe, 0x4c, 0xdb, 0xef, 0xa4, 0x7e, 0xfb, 0xcd, 0xa2, 0x87, 0x4e, 0xcf, 0xa4, 0x9f, 0x4f, 0x8f, 0xa9, 0x9a, 0xc3, 0x09, 0xd9, 0x17, 0xbf, 0x28, 0x3a, 0x41, 0x17, 0xe5, 0xbc, 0x50, 0x14, 0xc8, 0x32, 0xfa, 0x8e, 0x08, 0xee, 0xdc, 0xa6, 0xc6, 0x42, 0xd6, 0x18, 0x14, 0x75, 0x15, 0x1c, 0x18, 0x08, 0xb3, 0xe3, 0x3f, 0xcf, 0xd0, 0x10, 0x3a, 0x1e, 0x42, 0x10, 0xfb, 0xe8, 0xff, 0x58, 0x35, 0x5f, 0x8f, 0x67, 0x06, 0x74, 0x3e, 0x0c, 0xda, }; static const unsigned char ecdsa_secp384r1_sha3_512_8876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8876_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8876 = { .name = "ecdsa_secp384r1_sha3_512_8876", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8876_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8876_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8876_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 370 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8877 for ECDSA, tcId is 371 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8877_pubkey[] = { 0x22, 0xc4, 0x2f, 0xec, 0xcc, 0x69, 0xd4, 0xaa, 0xcb, 0x40, 0x8b, 0xa1, 0xd1, 0xf1, 0x14, 0xbf, 0x54, 0xc9, 0x04, 0x89, 0x79, 0x2d, 0x28, 0x14, 0xb2, 0x64, 0x24, 0x8d, 0xbe, 0xd9, 0xe1, 0x56, 0xa6, 0x48, 0x35, 0xc9, 0xea, 0x97, 0xb8, 0x37, 0x12, 0x0d, 0x2a, 0x71, 0x7f, 0x58, 0x48, 0x41, 0x2a, 0x50, 0xbb, 0x39, 0xdf, 0xef, 0x06, 0x0e, 0xfd, 0x1a, 0x6d, 0xfb, 0x23, 0x01, 0x8e, 0x76, 0x01, 0xd3, 0xb3, 0xba, 0x80, 0xf1, 0x9a, 0xab, 0x9e, 0x33, 0x4c, 0xd5, 0xe1, 0xa7, 0xdb, 0x14, 0x4e, 0xf2, 0x5d, 0x37, 0x45, 0xef, 0x40, 0x09, 0x9a, 0x51, 0x0f, 0xdf, 0xb8, 0x37, 0x07, 0x0a, }; static const unsigned char ecdsa_secp384r1_sha3_512_8877_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8877_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8877 = { .name = "ecdsa_secp384r1_sha3_512_8877", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8877_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8877_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8877_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 371 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8878 for ECDSA, tcId is 372 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8878_pubkey[] = { 0x9d, 0xac, 0x20, 0xd6, 0x45, 0xbb, 0x55, 0xd5, 0x7c, 0xab, 0x93, 0x2d, 0xa9, 0x00, 0x87, 0x11, 0x84, 0xbe, 0x9f, 0x92, 0x05, 0x7a, 0xab, 0xef, 0x5a, 0xf1, 0x1f, 0xa2, 0xdc, 0x0a, 0x79, 0x55, 0x66, 0xee, 0x35, 0xd9, 0x4b, 0x00, 0xdd, 0xb3, 0xa0, 0xc9, 0xd0, 0x9e, 0x52, 0x2a, 0x24, 0x40, 0x96, 0x81, 0xec, 0x7e, 0xc2, 0xa9, 0x06, 0x96, 0xe4, 0x9a, 0xab, 0xff, 0x89, 0xfd, 0x7b, 0xff, 0x27, 0xd7, 0xa7, 0x79, 0xb3, 0x16, 0x90, 0x00, 0x04, 0x6f, 0x05, 0x66, 0xbc, 0x14, 0x58, 0x0f, 0xeb, 0x9e, 0x3a, 0x13, 0xb0, 0xb0, 0x45, 0x97, 0x0e, 0x13, 0xe5, 0x82, 0x65, 0xa0, 0xbe, 0x87, }; static const unsigned char ecdsa_secp384r1_sha3_512_8878_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8878_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8878 = { .name = "ecdsa_secp384r1_sha3_512_8878", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8878_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8878_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8878_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 372 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8879 for ECDSA, tcId is 373 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8879_pubkey[] = { 0x71, 0x5a, 0x3d, 0xdb, 0x84, 0xb7, 0x1d, 0x59, 0x21, 0xe9, 0x6b, 0x13, 0x23, 0xd2, 0xd1, 0x29, 0xe7, 0xc1, 0xfa, 0x16, 0xe3, 0x1c, 0x0e, 0xbc, 0xea, 0x6b, 0x23, 0x3a, 0xc8, 0xcf, 0xb6, 0x12, 0x58, 0x87, 0x5a, 0x36, 0x4f, 0x1d, 0x3a, 0x54, 0x8f, 0x09, 0xfa, 0xcb, 0xd0, 0x01, 0x70, 0x9d, 0x8e, 0x03, 0xbc, 0x73, 0xa7, 0x62, 0xcf, 0x14, 0xf5, 0x47, 0x0c, 0x8f, 0xee, 0x9f, 0x96, 0x50, 0xe7, 0xf9, 0xd8, 0x08, 0xb1, 0xc8, 0x12, 0x64, 0xeb, 0x9f, 0x85, 0xc6, 0xe9, 0x4b, 0xff, 0x9e, 0xa3, 0x98, 0xa8, 0x8a, 0x0b, 0x17, 0x3d, 0xa4, 0xb5, 0x85, 0xe0, 0xee, 0xd4, 0x35, 0x2c, 0xb0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8879_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8879_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8879 = { .name = "ecdsa_secp384r1_sha3_512_8879", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8879_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8879_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8879_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 373 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8880 for ECDSA, tcId is 374 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8880_pubkey[] = { 0x36, 0xd3, 0xa9, 0xed, 0x20, 0x0d, 0xe6, 0xc6, 0xeb, 0xb1, 0xef, 0xee, 0x2d, 0x3c, 0x30, 0xe5, 0xf7, 0x2c, 0x52, 0x1c, 0x57, 0xa3, 0x87, 0x97, 0x9d, 0x1a, 0xa7, 0x72, 0xd5, 0x70, 0x88, 0x76, 0x40, 0x33, 0xbd, 0x9d, 0xa8, 0x1b, 0xb7, 0x3f, 0x8e, 0x83, 0x4e, 0xb3, 0x05, 0xb9, 0x44, 0x4c, 0xc8, 0xa0, 0xb7, 0x83, 0xcd, 0x19, 0x99, 0xba, 0x35, 0x09, 0x13, 0x72, 0xce, 0x47, 0xe0, 0x96, 0xb6, 0xe2, 0x9e, 0xa5, 0x43, 0x86, 0xf7, 0x50, 0x1d, 0x7a, 0x7c, 0xec, 0xa2, 0x97, 0x8f, 0xa0, 0xb3, 0xb3, 0xbe, 0x95, 0xe0, 0x3f, 0x88, 0x3c, 0x27, 0xb3, 0x8b, 0xdc, 0x25, 0x1a, 0xf8, 0x60, }; static const unsigned char ecdsa_secp384r1_sha3_512_8880_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8880_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8880 = { .name = "ecdsa_secp384r1_sha3_512_8880", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8880_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8880_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8880_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 374 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8881 for ECDSA, tcId is 375 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8881_pubkey[] = { 0x31, 0xa7, 0xe3, 0x88, 0xc2, 0x43, 0xa6, 0xdc, 0xc6, 0x50, 0x9d, 0xf7, 0xba, 0x5e, 0xcc, 0x25, 0x66, 0xdb, 0x33, 0xba, 0x6f, 0x71, 0xd4, 0x94, 0x14, 0x0d, 0xaf, 0x8f, 0xe0, 0xba, 0x49, 0x08, 0x59, 0xcf, 0x9d, 0x52, 0x4d, 0x83, 0xeb, 0x76, 0xa0, 0x6c, 0x02, 0xd6, 0x16, 0xf5, 0x08, 0xab, 0x27, 0xa2, 0x72, 0xac, 0x15, 0x7f, 0x66, 0x1e, 0x1c, 0x0e, 0x9b, 0xa5, 0x94, 0x49, 0x43, 0xd3, 0xe1, 0x02, 0xbe, 0xd4, 0xc5, 0x2f, 0xfc, 0xa7, 0x23, 0x2c, 0xd8, 0xb9, 0x55, 0xe0, 0xe7, 0x92, 0xd9, 0x82, 0xa7, 0xfa, 0x84, 0x9d, 0x9c, 0x06, 0xca, 0x14, 0x42, 0x35, 0x4e, 0x1b, 0x31, 0x71, }; static const unsigned char ecdsa_secp384r1_sha3_512_8881_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8881_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8881 = { .name = "ecdsa_secp384r1_sha3_512_8881", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8881_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8881_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8881_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 375 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8882 for ECDSA, tcId is 376 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8882_pubkey[] = { 0x31, 0xa7, 0xe3, 0x88, 0xc2, 0x43, 0xa6, 0xdc, 0xc6, 0x50, 0x9d, 0xf7, 0xba, 0x5e, 0xcc, 0x25, 0x66, 0xdb, 0x33, 0xba, 0x6f, 0x71, 0xd4, 0x94, 0x14, 0x0d, 0xaf, 0x8f, 0xe0, 0xba, 0x49, 0x08, 0x59, 0xcf, 0x9d, 0x52, 0x4d, 0x83, 0xeb, 0x76, 0xa0, 0x6c, 0x02, 0xd6, 0x16, 0xf5, 0x08, 0xab, 0x27, 0xa2, 0x72, 0xac, 0x15, 0x7f, 0x66, 0x1e, 0x1c, 0x0e, 0x9b, 0xa5, 0x94, 0x49, 0x43, 0xd3, 0xe1, 0x02, 0xbe, 0xd4, 0xc5, 0x2f, 0xfc, 0xa7, 0x23, 0x2c, 0xd8, 0xb9, 0x55, 0xe0, 0xe7, 0x92, 0xd9, 0x82, 0xa7, 0xfa, 0x84, 0x9d, 0x9c, 0x06, 0xca, 0x14, 0x42, 0x35, 0x4e, 0x1b, 0x31, 0x71, }; static const unsigned char ecdsa_secp384r1_sha3_512_8882_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8882_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8882 = { .name = "ecdsa_secp384r1_sha3_512_8882", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8882_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8882_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8882_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 376 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8883 for ECDSA, tcId is 377 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8883_pubkey[] = { 0x73, 0x81, 0xfb, 0xdb, 0x53, 0x66, 0x8e, 0xf6, 0x05, 0x81, 0x15, 0x20, 0x58, 0xfe, 0x6f, 0xc0, 0xfd, 0x38, 0x60, 0x52, 0x53, 0xfb, 0x9b, 0x9d, 0x58, 0xe2, 0x40, 0x89, 0x3e, 0x8d, 0xa5, 0xba, 0x44, 0x88, 0xe5, 0xaf, 0x09, 0x2f, 0x43, 0x1b, 0x5a, 0x35, 0x9c, 0x4a, 0xc6, 0x2a, 0x67, 0xd7, 0xe7, 0x5d, 0x55, 0x2e, 0xc9, 0x0e, 0x3b, 0x69, 0x21, 0xae, 0x13, 0x47, 0xf7, 0x60, 0x9e, 0xbf, 0xe1, 0x52, 0x4e, 0xae, 0x34, 0x67, 0x1f, 0x82, 0x42, 0x61, 0xba, 0x34, 0x55, 0x90, 0x81, 0x02, 0xbe, 0x99, 0xe0, 0x23, 0x1f, 0x92, 0x9c, 0x71, 0x8f, 0xa9, 0x70, 0x28, 0x61, 0x56, 0x76, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha3_512_8883_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8883_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8883 = { .name = "ecdsa_secp384r1_sha3_512_8883", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8883_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8883_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8883_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 377 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8884 for ECDSA, tcId is 378 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8884_pubkey[] = { 0x5b, 0x89, 0x6e, 0x18, 0xf0, 0x74, 0x77, 0x94, 0x79, 0x0c, 0xd9, 0x15, 0x5c, 0x74, 0xd6, 0x0b, 0xf5, 0xe9, 0xcf, 0x6b, 0x34, 0xb5, 0xc4, 0x3b, 0x07, 0x76, 0xde, 0x78, 0x74, 0x5c, 0x2a, 0x49, 0x41, 0x4b, 0x24, 0xfb, 0x03, 0x6e, 0x5e, 0xc6, 0x58, 0xd0, 0x0f, 0x0b, 0x5e, 0xe7, 0xaf, 0x8e, 0xaa, 0x75, 0x69, 0x74, 0x3b, 0x2c, 0x97, 0x13, 0x0e, 0x6a, 0x92, 0xcf, 0x9c, 0x74, 0xc0, 0x90, 0x27, 0x5f, 0x09, 0xc4, 0xb7, 0x29, 0x9f, 0x3e, 0x38, 0xc6, 0xa5, 0x59, 0xbd, 0xf7, 0xb7, 0x5c, 0xd7, 0x8b, 0x29, 0x1b, 0x71, 0x4b, 0x4f, 0x2a, 0xe1, 0xb2, 0x58, 0x78, 0xbc, 0x00, 0x56, 0x08, }; static const unsigned char ecdsa_secp384r1_sha3_512_8884_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8884_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8884 = { .name = "ecdsa_secp384r1_sha3_512_8884", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8884_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8884_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8884_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 378 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8885 for ECDSA, tcId is 379 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8885_pubkey[] = { 0x0d, 0xb3, 0x12, 0x61, 0x87, 0xc3, 0x53, 0xc0, 0x03, 0x4e, 0x61, 0x8b, 0xa3, 0xf4, 0x63, 0x0e, 0x0b, 0x70, 0x63, 0x12, 0xec, 0x52, 0x11, 0xb1, 0xac, 0x91, 0xf0, 0x1c, 0xaa, 0x23, 0xbe, 0xe1, 0x74, 0x56, 0xb5, 0x91, 0x4e, 0x10, 0xc5, 0xcc, 0x5b, 0x9d, 0xec, 0xbe, 0x07, 0x8f, 0xd3, 0xc7, 0xa3, 0x32, 0xaa, 0x70, 0xd7, 0x48, 0x6c, 0xc7, 0x92, 0x4e, 0xd6, 0x1e, 0xc8, 0xa1, 0xb0, 0x45, 0xce, 0xba, 0x0f, 0x0a, 0x55, 0xa4, 0xbd, 0x3e, 0x7a, 0x94, 0x97, 0xdf, 0xbb, 0x1a, 0xfc, 0x71, 0x93, 0xb6, 0xa3, 0x4a, 0x8c, 0x0f, 0x6b, 0xf4, 0xdc, 0x5c, 0x70, 0x7d, 0xf1, 0x47, 0x32, 0xeb, }; static const unsigned char ecdsa_secp384r1_sha3_512_8885_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8885_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8885 = { .name = "ecdsa_secp384r1_sha3_512_8885", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8885_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8885_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8885_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 379 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8886 for ECDSA, tcId is 380 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8886_pubkey[] = { 0x0d, 0x0c, 0x15, 0xcb, 0x6c, 0xd3, 0x8b, 0xea, 0x58, 0x8f, 0x92, 0xc6, 0x54, 0xf2, 0xc5, 0xb3, 0x6d, 0x3f, 0xe1, 0xdb, 0x8c, 0xae, 0x4f, 0x69, 0xdc, 0xdb, 0xeb, 0x51, 0x08, 0x4e, 0x0c, 0xca, 0xde, 0xb1, 0x79, 0x90, 0xc1, 0xbe, 0x62, 0xa5, 0x5a, 0x32, 0xff, 0x8d, 0xf7, 0x81, 0x57, 0xd0, 0x90, 0xba, 0x47, 0x70, 0xb1, 0xf1, 0xf2, 0x10, 0x5f, 0xe3, 0xed, 0x29, 0xfb, 0x79, 0x3a, 0xaf, 0x6f, 0xe2, 0x20, 0xc6, 0x30, 0xb4, 0xfe, 0xfa, 0x09, 0x64, 0x60, 0xec, 0xcb, 0x31, 0x15, 0x3f, 0x1d, 0xc6, 0x69, 0x6f, 0x65, 0x0d, 0x95, 0xe8, 0x56, 0x81, 0xf2, 0x29, 0xf3, 0x07, 0x27, 0xf7, }; static const unsigned char ecdsa_secp384r1_sha3_512_8886_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8886_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8886 = { .name = "ecdsa_secp384r1_sha3_512_8886", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8886_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8886_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8886_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 380 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8887 for ECDSA, tcId is 381 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8887_pubkey[] = { 0xe3, 0xd4, 0x87, 0x51, 0xeb, 0x34, 0xc9, 0x67, 0x00, 0x55, 0x70, 0x36, 0xcc, 0x7c, 0xbf, 0x49, 0xdb, 0xa0, 0xb6, 0x76, 0x1c, 0x5f, 0x82, 0xdf, 0xe1, 0x22, 0x95, 0x1a, 0xed, 0x52, 0x04, 0x56, 0x12, 0xec, 0x97, 0xf4, 0xa1, 0xfd, 0xef, 0x31, 0x05, 0xbf, 0x72, 0x00, 0x51, 0xbf, 0x0c, 0x78, 0x8f, 0xb4, 0x68, 0x40, 0x0d, 0x98, 0x2b, 0xd9, 0xdb, 0xdf, 0x9a, 0x44, 0xb1, 0xf3, 0x83, 0xea, 0xfc, 0x64, 0x20, 0xda, 0x72, 0x27, 0x88, 0x08, 0x5a, 0x57, 0x45, 0xba, 0xa7, 0x50, 0x16, 0x46, 0x28, 0xc1, 0xd7, 0xe7, 0xb7, 0x52, 0x5f, 0xbb, 0xdd, 0x93, 0xd9, 0x30, 0x8e, 0xf4, 0x9a, 0xe9, }; static const unsigned char ecdsa_secp384r1_sha3_512_8887_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8887_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x05, 0xa3, 0x78, 0x3e, 0x9f, 0xef, 0x3c, 0x1b, 0xb2, 0xaa, 0x85, 0xd6, 0xb0, 0xa8, 0x0a, 0x5a, 0x60, 0x62, 0x30, 0x68, 0x11, 0x74, 0x3c, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8887 = { .name = "ecdsa_secp384r1_sha3_512_8887", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8887_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8887_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8887_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 381 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8888 for ECDSA, tcId is 382 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8888_pubkey[] = { 0x8f, 0x32, 0x6a, 0x3e, 0x9e, 0xe7, 0xe1, 0xd0, 0x92, 0x74, 0x39, 0xd9, 0x25, 0xce, 0xfe, 0xb8, 0xe1, 0x16, 0x50, 0x29, 0x93, 0x0b, 0xa1, 0x25, 0xc3, 0x09, 0x78, 0x8a, 0xdf, 0xd1, 0xde, 0xc0, 0x78, 0x34, 0x39, 0x2e, 0xc8, 0xf8, 0xcb, 0xcb, 0xd8, 0xf2, 0x17, 0xe2, 0x03, 0x08, 0x2d, 0x0d, 0x5b, 0x6d, 0x71, 0x3a, 0x80, 0xd4, 0x96, 0x83, 0x2e, 0x65, 0xd7, 0x59, 0x36, 0xd4, 0x40, 0x75, 0x24, 0x47, 0x0b, 0x5f, 0x74, 0x30, 0x4b, 0x07, 0x5e, 0xa9, 0x48, 0x4d, 0x18, 0x53, 0x7a, 0xf6, 0x00, 0x54, 0xe6, 0x20, 0xbd, 0x44, 0xfe, 0x45, 0x70, 0xa7, 0xbf, 0xe4, 0x24, 0x2e, 0x92, 0x52, }; static const unsigned char ecdsa_secp384r1_sha3_512_8888_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8888_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8888 = { .name = "ecdsa_secp384r1_sha3_512_8888", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8888_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8888_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8888_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 382 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8889 for ECDSA, tcId is 383 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8889_pubkey[] = { 0x28, 0x9a, 0xd7, 0xcc, 0xd6, 0x9e, 0xac, 0x6b, 0xb4, 0xf5, 0xf1, 0x04, 0xfa, 0x88, 0x32, 0x15, 0x9c, 0x25, 0xfd, 0xbe, 0xdc, 0x2d, 0xc0, 0xe0, 0x10, 0xbf, 0xb4, 0x08, 0x92, 0x3f, 0x5e, 0x22, 0xcd, 0x7c, 0x78, 0x88, 0x6e, 0x1d, 0x19, 0x18, 0xa7, 0xfc, 0xdb, 0x04, 0xbc, 0xc1, 0xdc, 0xc5, 0xa0, 0xe1, 0x4f, 0x60, 0x65, 0x16, 0x35, 0x3e, 0xdc, 0xd0, 0xec, 0x7a, 0x0b, 0xe0, 0x0d, 0xa3, 0xbb, 0xeb, 0x46, 0x5f, 0xae, 0x7a, 0xf6, 0x39, 0xee, 0x01, 0x47, 0x29, 0x77, 0xb8, 0x98, 0xdb, 0x57, 0x54, 0x34, 0x60, 0xa4, 0x6b, 0x3f, 0x90, 0x44, 0xf8, 0x12, 0x19, 0x46, 0x22, 0xb5, 0x9e, }; static const unsigned char ecdsa_secp384r1_sha3_512_8889_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8889_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8889 = { .name = "ecdsa_secp384r1_sha3_512_8889", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8889_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8889_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8889_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 383 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8890 for ECDSA, tcId is 384 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8890_pubkey[] = { 0x93, 0xfd, 0xc3, 0x01, 0xfd, 0x54, 0x97, 0xc6, 0xbd, 0xf3, 0x40, 0x08, 0xe4, 0x4b, 0x54, 0x4a, 0x44, 0x91, 0xc5, 0x3f, 0xd0, 0x3e, 0x68, 0xf7, 0x30, 0xf2, 0xe0, 0xa8, 0xa6, 0x96, 0x66, 0x54, 0x25, 0xa6, 0xe1, 0x8e, 0xfa, 0xa7, 0x2a, 0xdd, 0x19, 0xd7, 0x04, 0x0f, 0x6d, 0xae, 0xa9, 0xfc, 0x02, 0x1e, 0xbf, 0x04, 0x3a, 0x0d, 0xbe, 0x24, 0xc7, 0x17, 0x41, 0x97, 0x5a, 0x45, 0xf1, 0x59, 0x91, 0xaa, 0x03, 0x76, 0xbf, 0xee, 0xf5, 0xc7, 0xde, 0xc3, 0xc5, 0x12, 0x1f, 0x98, 0xa4, 0x64, 0x09, 0x7e, 0xde, 0x93, 0xda, 0xb4, 0xe4, 0x62, 0x05, 0xa4, 0x93, 0x26, 0x77, 0xd5, 0x2d, 0x86, }; static const unsigned char ecdsa_secp384r1_sha3_512_8890_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8890_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0xb9, 0xe4, 0xd1, 0xb3, 0x76, 0x8b, 0xee, 0x2b, 0x2d, 0xef, 0xbc, 0x0e, 0x69, 0x11, 0xa3, 0x8e, 0x0c, 0x77, 0x4b, 0x97, 0xf6, 0x20, 0x60, 0x83, 0x0b, 0xb6, 0x41, 0xc2, 0xd5, 0x0a, 0x8b, 0xa9, 0xd8, 0x87, 0x2f, 0x4a, 0xe8, 0x6c, 0x33, 0xd3, 0x27, 0x56, 0x24, 0x82, 0xb2, 0x07, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8890 = { .name = "ecdsa_secp384r1_sha3_512_8890", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8890_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8890_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8890_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8891 for ECDSA, tcId is 385 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8891_pubkey[] = { 0x60, 0xcc, 0xa8, 0xbb, 0x9e, 0x1b, 0xfa, 0xa9, 0x7a, 0x3b, 0xe1, 0x88, 0x93, 0xc7, 0x04, 0x3a, 0x77, 0x71, 0x2d, 0xee, 0xe4, 0x4b, 0x91, 0x3c, 0x93, 0x9e, 0xe4, 0xb9, 0x60, 0x11, 0x57, 0xfe, 0xb5, 0x15, 0x20, 0x81, 0x25, 0xfc, 0x76, 0x55, 0xe0, 0xfb, 0x35, 0x93, 0x07, 0xe0, 0xcc, 0x3f, 0xa4, 0xe5, 0x3d, 0x3e, 0x06, 0xbd, 0x10, 0x02, 0xa2, 0x67, 0x81, 0x82, 0xa9, 0x51, 0x89, 0xc4, 0x89, 0x0f, 0xe6, 0xff, 0x1d, 0x4e, 0xd9, 0x75, 0x9f, 0x46, 0x90, 0xca, 0x37, 0x3a, 0x76, 0x6f, 0xbe, 0x4c, 0xaa, 0xf6, 0x9f, 0x85, 0xd6, 0x96, 0xac, 0x67, 0x45, 0xda, 0x02, 0x2f, 0xc5, 0xf7, }; static const unsigned char ecdsa_secp384r1_sha3_512_8891_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8891_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd3, 0xaa, 0xcc, 0x47, 0xd0, 0x28, 0xc8, 0x49, 0xc7, 0x63, 0x51, 0x56, 0xb9, 0x4b, 0xc4, 0xae, 0xab, 0x9e, 0xb2, 0x9c, 0xca, 0xf7, 0x94, 0xfc, 0x02, 0x61, 0x56, 0x9f, 0x9c, 0x89, 0x12, 0xef, 0x62, 0x66, 0xed, 0x43, 0x95, 0x68, 0x49, 0xa2, 0xe4, 0xc0, 0xba, 0xda, 0xf2, 0xed, 0xc3, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8891 = { .name = "ecdsa_secp384r1_sha3_512_8891", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8891_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8891_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8891_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8892 for ECDSA, tcId is 386 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8892_pubkey[] = { 0xf5, 0xf7, 0xda, 0xfb, 0x7c, 0xb7, 0x62, 0xf4, 0xa8, 0x6d, 0x03, 0x88, 0x28, 0xad, 0xd9, 0xf5, 0xa1, 0xbc, 0xb5, 0x94, 0x21, 0xaa, 0xff, 0xe0, 0x1f, 0x5b, 0x2b, 0x70, 0x09, 0xac, 0xc3, 0xa0, 0x97, 0xac, 0x12, 0xb7, 0x92, 0xb1, 0x49, 0xc3, 0x68, 0x78, 0xf8, 0xe0, 0xfd, 0x9f, 0xf4, 0x41, 0xdb, 0x91, 0xe4, 0xfe, 0xe1, 0x36, 0xdb, 0xd5, 0xd7, 0xf2, 0x40, 0x4a, 0x42, 0xd9, 0x54, 0x8c, 0x2e, 0xdf, 0xee, 0xfd, 0xe4, 0x0a, 0xf2, 0x26, 0x2f, 0xa1, 0xe5, 0x25, 0x53, 0x48, 0x5c, 0x9f, 0xf6, 0x89, 0xf3, 0x82, 0x0d, 0x8f, 0x07, 0x53, 0x87, 0x22, 0x5e, 0x78, 0x20, 0x77, 0xd4, 0x85, }; static const unsigned char ecdsa_secp384r1_sha3_512_8892_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8892_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf2, 0x65, 0xd8, 0x14, 0x89, 0x4a, 0xce, 0x80, 0xd5, 0x70, 0x6d, 0x12, 0xda, 0xf3, 0x16, 0xf3, 0x45, 0x07, 0x58, 0xb9, 0xc5, 0x81, 0x28, 0x6b, 0x80, 0x7c, 0x89, 0xfd, 0x36, 0x44, 0x9c, 0x04, 0xba, 0xef, 0x8e, 0xbe, 0x2b, 0xc9, 0x88, 0x82, 0x56, 0x96, 0xa1, 0x47, 0x05, 0x89, 0xa5, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8892 = { .name = "ecdsa_secp384r1_sha3_512_8892", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8892_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8892_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8892_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8893 for ECDSA, tcId is 387 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8893_pubkey[] = { 0x84, 0x48, 0x1d, 0x7d, 0xba, 0x58, 0x30, 0x52, 0xbc, 0xd1, 0x58, 0x6c, 0x4a, 0x99, 0xf3, 0xe2, 0x1b, 0x4e, 0xb9, 0xdf, 0x66, 0x38, 0x19, 0x81, 0xc8, 0x34, 0x32, 0x89, 0xd2, 0x80, 0x52, 0xa2, 0xd5, 0x0b, 0x41, 0x93, 0x2d, 0x20, 0x9b, 0x93, 0xc7, 0xac, 0x35, 0x40, 0xb5, 0x95, 0xb0, 0x48, 0x1b, 0x6b, 0x05, 0x10, 0xae, 0x96, 0x66, 0x73, 0x28, 0x0f, 0x1f, 0x7d, 0x12, 0xd5, 0xa6, 0x6a, 0x2c, 0x69, 0x76, 0x2c, 0x50, 0x82, 0x1c, 0x19, 0x1e, 0x93, 0xe9, 0x06, 0xfa, 0x4e, 0xc4, 0x45, 0x88, 0xae, 0x8f, 0xe8, 0xf1, 0x76, 0x96, 0x60, 0x30, 0x82, 0x68, 0xf5, 0xdf, 0x01, 0x9f, 0x1f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8893_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8893_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0xef, 0xf5, 0xc1, 0x3e, 0x09, 0xb4, 0x37, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x28, 0xc1, 0x47, 0xef, 0xee, 0x6b, 0x14, 0xdc, 0xbc, 0x0f, 0xaf, 0xcf, 0x1c, 0x11, 0x6d, 0xfa, 0x4d, 0xdd, 0x7a, 0x04, 0x2a, 0x79, 0xda, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8893 = { .name = "ecdsa_secp384r1_sha3_512_8893", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8893_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8893_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8893_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8894 for ECDSA, tcId is 388 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8894_pubkey[] = { 0xbe, 0x35, 0x2e, 0x66, 0x21, 0x68, 0x55, 0x66, 0x52, 0xa4, 0xe2, 0x5a, 0xcb, 0xb5, 0x93, 0xc3, 0x89, 0x8d, 0x32, 0x3e, 0xd4, 0xc9, 0xdf, 0xb0, 0x0f, 0xbe, 0xed, 0x0f, 0xd5, 0x76, 0x01, 0xd9, 0x10, 0xd2, 0x26, 0xfa, 0xcf, 0x06, 0xc1, 0x3b, 0x64, 0x20, 0x3f, 0x21, 0xa6, 0xc1, 0xf8, 0xd0, 0xcb, 0xbd, 0xb2, 0x9f, 0xd0, 0x41, 0x3b, 0xd9, 0x2f, 0x93, 0x76, 0xee, 0x58, 0x48, 0xb9, 0x0b, 0xe8, 0x4f, 0xa9, 0xb1, 0xd5, 0xeb, 0x5e, 0x69, 0x91, 0x20, 0x03, 0x6f, 0xd5, 0xc6, 0xdf, 0x0d, 0x72, 0x1e, 0x39, 0x75, 0x2f, 0xb0, 0x18, 0x48, 0xa3, 0x72, 0x1c, 0x01, 0xc3, 0x63, 0x19, 0x81, }; static const unsigned char ecdsa_secp384r1_sha3_512_8894_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8894_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0x5c, 0x13, 0xe0, 0x9b, 0x43, 0x7c, 0xbd, 0x25, 0x18, 0xae, 0x59, 0xc5, 0xc3, 0x57, 0xe7, 0x63, 0x0c, 0xbd, 0x4c, 0x4c, 0xb1, 0x55, 0x5d, 0x71, 0x29, 0x61, 0x00, 0xda, 0x33, 0x47, 0xdc, 0x5f, 0x02, 0x6c, 0x06, 0xdb, 0xe9, 0x94, 0x86, 0xef, 0x34, 0x63, 0xca, 0x65, 0x5d, 0x88, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8894 = { .name = "ecdsa_secp384r1_sha3_512_8894", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8894_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8894_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8894_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8895 for ECDSA, tcId is 389 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8895_pubkey[] = { 0xe1, 0xeb, 0x96, 0xd5, 0x5f, 0xc3, 0x36, 0xb1, 0x96, 0xfe, 0xe5, 0x93, 0xd9, 0xd4, 0x2e, 0x0c, 0x52, 0xed, 0x45, 0xab, 0x2a, 0x90, 0xd9, 0xa0, 0x77, 0x24, 0xf6, 0xef, 0xbd, 0x4d, 0x51, 0x26, 0x3d, 0x2f, 0x6e, 0x1d, 0x84, 0x50, 0xed, 0xe4, 0xae, 0xe6, 0x1a, 0x86, 0xbb, 0x7c, 0x0a, 0xe8, 0x8c, 0x5b, 0x22, 0xc8, 0xc7, 0xbd, 0x73, 0x17, 0x79, 0x63, 0xdc, 0xac, 0x91, 0x0f, 0x2f, 0x18, 0x41, 0x31, 0xb7, 0x96, 0x89, 0x14, 0xbd, 0xdc, 0xae, 0x43, 0x81, 0x2b, 0xd3, 0xb6, 0x6a, 0x7a, 0xee, 0xed, 0xcf, 0xcc, 0xac, 0xf0, 0x2b, 0x98, 0x54, 0xb8, 0x1c, 0x1d, 0x54, 0xef, 0x98, 0xda, }; static const unsigned char ecdsa_secp384r1_sha3_512_8895_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8895_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xb8, 0x27, 0xc1, 0x36, 0x86, 0xf9, 0x7a, 0x4a, 0x31, 0x5c, 0xb3, 0x8b, 0x86, 0xaf, 0xce, 0xc6, 0x19, 0x7a, 0x98, 0x99, 0x62, 0xaa, 0xbb, 0x1a, 0xef, 0x74, 0x7f, 0xc0, 0x2f, 0x61, 0xd9, 0x65, 0xea, 0xca, 0x5b, 0x6f, 0x22, 0x81, 0x92, 0xf1, 0x7c, 0xae, 0x29, 0xfd, 0xf5, 0xe7, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8895 = { .name = "ecdsa_secp384r1_sha3_512_8895", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8895_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8895_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8895_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8896 for ECDSA, tcId is 390 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8896_pubkey[] = { 0xb5, 0xa2, 0xe0, 0xde, 0xd8, 0x57, 0xa3, 0x39, 0x98, 0x49, 0x38, 0xbb, 0x7e, 0xb3, 0x11, 0x93, 0x98, 0x14, 0xa1, 0x67, 0x1b, 0xb1, 0x61, 0xbd, 0x45, 0xfe, 0x14, 0xe4, 0x41, 0xff, 0x29, 0x53, 0x5e, 0x84, 0xb6, 0xe6, 0xa1, 0x35, 0x51, 0x76, 0xb2, 0xd4, 0xc9, 0x0c, 0xfa, 0x06, 0x3a, 0x57, 0xde, 0xbc, 0xd1, 0x5e, 0x16, 0xb3, 0x2a, 0x5a, 0xa8, 0x65, 0x97, 0x31, 0x0d, 0xa1, 0xb1, 0x06, 0xd8, 0x88, 0x2d, 0x99, 0x67, 0xff, 0x4d, 0x58, 0xf1, 0xdf, 0xb4, 0xd7, 0x7c, 0x58, 0xae, 0xc4, 0x58, 0x2c, 0xa9, 0x7f, 0x84, 0x5a, 0x2b, 0xdc, 0xbb, 0x20, 0x0c, 0x6f, 0x6c, 0xbb, 0x09, 0xc5, }; static const unsigned char ecdsa_secp384r1_sha3_512_8896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8896_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x09, 0xb4, 0x37, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x2a, 0x65, 0x86, 0x46, 0xe1, 0x2f, 0x71, 0xed, 0x98, 0x3b, 0x89, 0x45, 0x9a, 0xc4, 0x29, 0x06, 0x2d, 0x11, 0xf6, 0xce, 0x0b, 0x53, 0xb1, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8896 = { .name = "ecdsa_secp384r1_sha3_512_8896", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8896_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8896_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8896_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8897 for ECDSA, tcId is 391 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8897_pubkey[] = { 0x29, 0xe5, 0xa7, 0x00, 0xb5, 0x5e, 0xd1, 0x24, 0xce, 0x61, 0xdb, 0x14, 0xfe, 0xb8, 0x91, 0xc7, 0x5d, 0xf3, 0x77, 0x97, 0xb9, 0x6d, 0x74, 0x30, 0xb4, 0x2c, 0x0d, 0xbc, 0x03, 0x47, 0xac, 0xd6, 0xdf, 0xee, 0x87, 0x3d, 0x9e, 0xab, 0xce, 0x23, 0xa6, 0x4a, 0xb3, 0xbd, 0xf7, 0x29, 0x31, 0x03, 0x25, 0x4b, 0x4f, 0xe4, 0x50, 0x2d, 0xae, 0xb1, 0xd2, 0x61, 0xf3, 0x3e, 0xcf, 0x1a, 0x87, 0xe8, 0x1c, 0x19, 0xd1, 0xfc, 0xb3, 0xd6, 0xc4, 0x14, 0x7e, 0x2f, 0xbd, 0x2f, 0xad, 0x21, 0xef, 0x25, 0xa8, 0xcb, 0xc6, 0x41, 0x80, 0x9f, 0x35, 0x05, 0xf9, 0xa1, 0x48, 0xf6, 0x5a, 0xdf, 0x69, 0x4d, }; static const unsigned char ecdsa_secp384r1_sha3_512_8897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8897_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xea, 0x4d, 0x03, 0x22, 0xe1, 0x72, 0x52, 0x50, 0xd3, 0xa2, 0x15, 0x91, 0xaf, 0x91, 0x6a, 0x45, 0xbe, 0x61, 0x05, 0xed, 0x6e, 0x77, 0x4b, 0x08, 0x57, 0xfb, 0xab, 0xa6, 0x99, 0x43, 0xdc, 0x1f, 0x41, 0x1d, 0x9b, 0x1c, 0x1f, 0xb6, 0x6d, 0x2b, 0x4b, 0x72, 0x2c, 0x09, 0xdd, 0x32, 0xe2, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8897 = { .name = "ecdsa_secp384r1_sha3_512_8897", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8897_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8897_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8897_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8898 for ECDSA, tcId is 392 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8898_pubkey[] = { 0xf8, 0x8f, 0x95, 0xde, 0x42, 0x85, 0xd8, 0xe1, 0x22, 0x2b, 0xb9, 0x00, 0xae, 0xbe, 0xfc, 0x42, 0xd7, 0x63, 0x9a, 0x9c, 0x4a, 0xf0, 0xba, 0xed, 0x44, 0x62, 0xe0, 0x50, 0xd5, 0x39, 0x57, 0x73, 0xd8, 0x60, 0x5d, 0x3e, 0xb7, 0xee, 0x3d, 0x9a, 0xd9, 0xc2, 0x9b, 0xf9, 0xa5, 0x0e, 0x33, 0xe0, 0x43, 0xb6, 0x3c, 0x50, 0x9f, 0x02, 0x2c, 0x77, 0x52, 0xd1, 0x8b, 0x25, 0x58, 0x34, 0xed, 0x0b, 0x28, 0x2d, 0x2a, 0x06, 0xb7, 0x58, 0x7f, 0x78, 0x38, 0xfe, 0xc4, 0x33, 0x46, 0xd6, 0x86, 0xb2, 0x55, 0x74, 0x2f, 0x46, 0x0e, 0xef, 0x62, 0x3d, 0x48, 0xce, 0x2d, 0xa5, 0x12, 0x9f, 0x53, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8898_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfa, 0xc8, 0x3b, 0x5a, 0xb0, 0x8f, 0xa2, 0xd2, 0x26, 0x3f, 0x04, 0xe1, 0x2e, 0xe0, 0x7a, 0xb5, 0x55, 0x62, 0xa9, 0x02, 0xec, 0x02, 0xf6, 0x49, 0x34, 0x03, 0x51, 0xc8, 0x05, 0x63, 0x2f, 0x4b, 0xc7, 0x8e, 0xe6, 0x82, 0xb9, 0x7c, 0x97, 0xc4, 0x78, 0x77, 0xe8, 0x84, 0x20, 0x70, 0x44, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8898 = { .name = "ecdsa_secp384r1_sha3_512_8898", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8898_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8898_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8898_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8899 for ECDSA, tcId is 393 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8899_pubkey[] = { 0x58, 0xe9, 0xde, 0x62, 0x49, 0xa2, 0x8e, 0xe7, 0x44, 0x38, 0x06, 0x4f, 0x2c, 0x57, 0xa5, 0xb0, 0x41, 0x39, 0xd1, 0x3d, 0x1f, 0xe3, 0x10, 0x39, 0x9c, 0x64, 0xe8, 0x86, 0xd7, 0x81, 0x77, 0x98, 0xd8, 0x8a, 0xa6, 0xe8, 0x01, 0x77, 0x24, 0x45, 0x7f, 0xd6, 0x7b, 0x14, 0x44, 0x27, 0x1a, 0x39, 0xb7, 0x23, 0x3c, 0x88, 0x6c, 0x53, 0x75, 0x89, 0xa6, 0xec, 0x87, 0x7a, 0x61, 0x40, 0xa8, 0x59, 0x26, 0x16, 0x8b, 0x2b, 0xed, 0x50, 0x2c, 0x56, 0x88, 0x10, 0x83, 0x3d, 0x47, 0xe5, 0xa5, 0x5b, 0x64, 0x10, 0xbe, 0x70, 0xfe, 0xab, 0x39, 0x79, 0x1f, 0xb4, 0x27, 0x7f, 0x34, 0x7a, 0xdb, 0xc1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8899_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x99, 0x46, 0x1b, 0x2e, 0x4c, 0x89, 0x74, 0x11, 0xd4, 0xd2, 0x10, 0x43, 0xf1, 0x96, 0xee, 0x5c, 0x71, 0xf3, 0x88, 0xb4, 0x68, 0x09, 0xdf, 0x9f, 0x44, 0x57, 0x97, 0x40, 0x31, 0x62, 0x23, 0x53, 0xae, 0x41, 0x86, 0x82, 0xfd, 0xc8, 0x3b, 0x47, 0x19, 0xc4, 0xc3, 0x46, 0x4a, 0x13, 0x21, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8899 = { .name = "ecdsa_secp384r1_sha3_512_8899", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8899_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8899_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8899_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8900 for ECDSA, tcId is 394 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8900_pubkey[] = { 0xa6, 0x73, 0x4a, 0xc3, 0x0b, 0xdb, 0xa9, 0x49, 0x8d, 0xea, 0x41, 0x49, 0x20, 0x41, 0xfb, 0xfe, 0x95, 0xb3, 0x35, 0x9c, 0x2c, 0xad, 0x63, 0x0d, 0x4e, 0x31, 0xd1, 0xc0, 0xa1, 0x0c, 0xba, 0x66, 0x67, 0x38, 0xf3, 0x5d, 0xe5, 0xb7, 0xce, 0xb5, 0x6f, 0xd2, 0x9c, 0x08, 0xcb, 0x56, 0x11, 0xda, 0xae, 0xd6, 0xa6, 0x87, 0x6c, 0xa0, 0xe3, 0x3b, 0x78, 0x87, 0xea, 0x09, 0x64, 0x68, 0x1e, 0xf7, 0x03, 0xe8, 0x61, 0x33, 0x74, 0x93, 0xeb, 0xf6, 0xd5, 0x4c, 0xe8, 0xdb, 0x74, 0x0a, 0xd2, 0x07, 0xc7, 0x55, 0x66, 0x8f, 0x89, 0xda, 0xcc, 0x36, 0xed, 0xea, 0xe1, 0xa5, 0xc0, 0x03, 0x6a, 0x05, }; static const unsigned char ecdsa_secp384r1_sha3_512_8900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8900_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe5, 0xe9, 0x28, 0xc5, 0x72, 0xce, 0x2e, 0x1a, 0xbf, 0x3b, 0x18, 0x65, 0xea, 0x62, 0x65, 0x8a, 0xaa, 0xed, 0x4d, 0x0e, 0x9c, 0x0e, 0xcf, 0x6e, 0xe6, 0x83, 0x62, 0xe0, 0x4a, 0x13, 0x34, 0xfd, 0x85, 0x62, 0x49, 0xc4, 0x7c, 0xac, 0x58, 0xea, 0xa6, 0xa7, 0x24, 0xe9, 0x6f, 0x1c, 0xb2, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8900 = { .name = "ecdsa_secp384r1_sha3_512_8900", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8900_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8900_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8900_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8901 for ECDSA, tcId is 395 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8901_pubkey[] = { 0x45, 0xdb, 0x79, 0x27, 0x5e, 0xef, 0xb1, 0x1d, 0x4a, 0x0f, 0xeb, 0xe1, 0x4b, 0x31, 0xc1, 0xfb, 0x6c, 0xc4, 0xc6, 0xa0, 0xaa, 0xef, 0xab, 0xe6, 0x74, 0xac, 0x67, 0x3e, 0x09, 0xcc, 0x84, 0x44, 0x99, 0xd8, 0xfd, 0xa9, 0x6c, 0xe4, 0x6c, 0x59, 0xfa, 0x43, 0xec, 0xb8, 0xd3, 0xcd, 0x11, 0x5e, 0x91, 0x16, 0xdf, 0x7b, 0x21, 0xf6, 0xe2, 0x7e, 0x53, 0xe6, 0xfb, 0x2a, 0xbc, 0xb3, 0x75, 0x86, 0xf2, 0x2b, 0xdc, 0xf0, 0x2c, 0xd5, 0xc2, 0x35, 0xd7, 0x1e, 0x08, 0x32, 0x40, 0x53, 0x80, 0x79, 0xd3, 0x9a, 0xd7, 0x94, 0x6b, 0x48, 0xd8, 0x08, 0xe3, 0x22, 0x35, 0x53, 0x6a, 0x89, 0xf5, 0x8a, }; static const unsigned char ecdsa_secp384r1_sha3_512_8901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8901_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0x32, 0xec, 0x0a, 0x44, 0xa5, 0x67, 0x40, 0x6a, 0xb8, 0x36, 0x89, 0x6d, 0x79, 0x8b, 0x79, 0xa2, 0x83, 0xac, 0x5c, 0xe2, 0xc0, 0x94, 0x35, 0xc0, 0x3e, 0x44, 0xfe, 0x9b, 0x22, 0x4e, 0x02, 0x5d, 0x77, 0xc7, 0x5f, 0x15, 0xe4, 0xc4, 0x41, 0x2b, 0x4b, 0x50, 0xa3, 0x82, 0xc4, 0xd2, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8901 = { .name = "ecdsa_secp384r1_sha3_512_8901", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8901_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8901_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8901_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 395 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8902 for ECDSA, tcId is 396 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8902_pubkey[] = { 0x18, 0x5b, 0x65, 0x20, 0x3c, 0x07, 0x6b, 0x52, 0x4d, 0x88, 0x8a, 0x49, 0x1a, 0x6e, 0x93, 0x4a, 0x33, 0xb1, 0xfa, 0x51, 0xe6, 0xb7, 0xee, 0x5f, 0xa3, 0xa3, 0x04, 0xf9, 0xc1, 0xf0, 0x89, 0x91, 0xff, 0xb3, 0xd4, 0x48, 0x5e, 0xbd, 0xf0, 0xf9, 0x84, 0xb0, 0xf4, 0x5a, 0x6b, 0xa7, 0xe1, 0x49, 0x15, 0x99, 0x23, 0x93, 0x05, 0xc4, 0xd9, 0xf4, 0xce, 0xf2, 0x34, 0xec, 0xc6, 0x00, 0x0b, 0xfd, 0x3d, 0x77, 0x19, 0x69, 0xa7, 0x67, 0x1d, 0x43, 0x04, 0xb0, 0xec, 0x1a, 0x1a, 0x61, 0x54, 0xbb, 0xe2, 0x6d, 0x99, 0xa5, 0x7b, 0x1c, 0x5e, 0x75, 0xe1, 0xb5, 0xee, 0xf7, 0x44, 0x7a, 0x8f, 0xce, }; static const unsigned char ecdsa_secp384r1_sha3_512_8902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8902_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8902 = { .name = "ecdsa_secp384r1_sha3_512_8902", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8902_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8902_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8902_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8903 for ECDSA, tcId is 397 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8903_pubkey[] = { 0x58, 0x50, 0x21, 0x35, 0xc1, 0xce, 0xd8, 0x50, 0xe1, 0x29, 0x47, 0xe2, 0x70, 0x2f, 0x40, 0x48, 0xde, 0xde, 0x77, 0x54, 0xd6, 0xbe, 0xf8, 0x8c, 0xb5, 0x99, 0xeb, 0x65, 0xfb, 0x32, 0x6a, 0xf1, 0xa4, 0x00, 0x85, 0x40, 0xd6, 0x82, 0xc2, 0x1e, 0xc1, 0x46, 0x9c, 0x9f, 0xe4, 0x80, 0x1e, 0x42, 0x88, 0xdf, 0x38, 0x93, 0x08, 0x3b, 0xdc, 0x88, 0x24, 0xba, 0x70, 0x9d, 0x42, 0x47, 0xf8, 0xa2, 0x9d, 0x1b, 0x51, 0x35, 0xbc, 0x11, 0xbb, 0x42, 0x44, 0x5f, 0x4f, 0x6d, 0x22, 0x82, 0x10, 0x24, 0xa7, 0xcc, 0x79, 0x75, 0xf4, 0x75, 0xa0, 0xd5, 0x02, 0x26, 0x82, 0x85, 0x5d, 0x7c, 0x0a, 0xb8, }; static const unsigned char ecdsa_secp384r1_sha3_512_8903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8903_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8903 = { .name = "ecdsa_secp384r1_sha3_512_8903", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8903_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8903_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8903_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8904 for ECDSA, tcId is 398 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8904_pubkey[] = { 0xea, 0xe2, 0x9d, 0x82, 0x9a, 0xd0, 0x84, 0x55, 0x26, 0x75, 0x19, 0x6c, 0x6f, 0x39, 0x45, 0x56, 0xfb, 0xd7, 0x3c, 0x7e, 0x10, 0xa4, 0x8b, 0x86, 0x20, 0x28, 0x2d, 0x4d, 0x38, 0x96, 0xee, 0x0a, 0xb4, 0xd0, 0x99, 0x96, 0x91, 0x6c, 0x4d, 0xdc, 0x53, 0xa7, 0xcd, 0x3c, 0x36, 0x06, 0xd3, 0xe0, 0xba, 0x37, 0xa1, 0xbc, 0x6d, 0xb9, 0x22, 0xbd, 0xd1, 0x2c, 0x34, 0xc5, 0xd9, 0x47, 0x80, 0x16, 0xd4, 0xd6, 0x79, 0x3e, 0xde, 0x0a, 0xa1, 0x8b, 0xb4, 0x91, 0x56, 0x44, 0x60, 0xd2, 0xdb, 0x30, 0xc4, 0x01, 0x6e, 0x36, 0x83, 0x9b, 0xa6, 0x36, 0xfd, 0xb9, 0x08, 0xbc, 0x54, 0x46, 0x81, 0x56, }; static const unsigned char ecdsa_secp384r1_sha3_512_8904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8904_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8904 = { .name = "ecdsa_secp384r1_sha3_512_8904", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8904_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8904_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8904_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8905 for ECDSA, tcId is 399 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8905_pubkey[] = { 0xbc, 0x31, 0xa5, 0xf5, 0x79, 0x3a, 0x1a, 0x3d, 0x81, 0xbf, 0x6d, 0xd3, 0x7a, 0x55, 0xb1, 0x36, 0x24, 0x08, 0x16, 0x91, 0x99, 0x0a, 0x57, 0x37, 0x64, 0x5e, 0xbb, 0xe5, 0xa8, 0xf3, 0x92, 0x1c, 0x9e, 0xaa, 0xc0, 0xf2, 0x3b, 0x91, 0x74, 0xc8, 0x84, 0x51, 0xeb, 0x61, 0xc6, 0x9d, 0x0c, 0xb8, 0x83, 0xbb, 0xa1, 0x94, 0x8e, 0x81, 0x8d, 0xbb, 0xa9, 0x02, 0xf5, 0xe1, 0x84, 0xa5, 0x34, 0x85, 0x4c, 0x69, 0xc8, 0x81, 0xb8, 0x5f, 0x68, 0x2a, 0xc1, 0x2d, 0xc0, 0x19, 0xe1, 0xc6, 0xd2, 0xda, 0x74, 0x2b, 0xfc, 0xcb, 0xef, 0xc5, 0xed, 0x84, 0xe9, 0x5b, 0x42, 0x93, 0x0c, 0x09, 0xfc, 0x50, }; static const unsigned char ecdsa_secp384r1_sha3_512_8905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8905_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8905 = { .name = "ecdsa_secp384r1_sha3_512_8905", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8905_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8905_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8905_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8906 for ECDSA, tcId is 400 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8906_pubkey[] = { 0xc7, 0x6c, 0xbc, 0x99, 0x64, 0x21, 0xf5, 0xac, 0xc3, 0x6e, 0x66, 0x56, 0x35, 0x75, 0x9c, 0xdd, 0x2d, 0x61, 0x5b, 0x4a, 0x49, 0x7b, 0xea, 0x9c, 0x32, 0x1f, 0xde, 0xd0, 0xcb, 0xcd, 0x35, 0x46, 0xc8, 0xec, 0xb7, 0xab, 0x58, 0x7b, 0x9f, 0xa4, 0xfd, 0x5b, 0xde, 0x6a, 0xdd, 0x66, 0xef, 0x68, 0x7e, 0xca, 0xfe, 0x0f, 0x22, 0x7b, 0x59, 0xc4, 0x52, 0xee, 0x3c, 0x77, 0x67, 0x0a, 0xd9, 0xbf, 0xb8, 0xb0, 0x37, 0x38, 0x21, 0xd8, 0xc0, 0x88, 0x21, 0xcc, 0xfc, 0xdc, 0x6f, 0x19, 0x38, 0xef, 0xa6, 0x12, 0xe9, 0x84, 0x11, 0xf9, 0x9f, 0x50, 0x27, 0x9f, 0x79, 0x4b, 0x59, 0xe2, 0xb1, 0x0e, }; static const unsigned char ecdsa_secp384r1_sha3_512_8906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8906_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8906 = { .name = "ecdsa_secp384r1_sha3_512_8906", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8906_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8906_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8906_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8907 for ECDSA, tcId is 401 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8907_pubkey[] = { 0xef, 0x73, 0xaf, 0x07, 0x06, 0xca, 0x20, 0x30, 0xf3, 0xb6, 0x4d, 0x23, 0x17, 0x2f, 0x6f, 0x96, 0x1f, 0xda, 0xd2, 0x5e, 0x7b, 0x68, 0x15, 0x1b, 0x81, 0xe5, 0x9f, 0xcb, 0x0b, 0x46, 0xa2, 0x97, 0x78, 0x63, 0x60, 0xb8, 0x50, 0x42, 0xe6, 0x9b, 0xdb, 0x4c, 0x21, 0xc1, 0x89, 0xd3, 0xff, 0x35, 0x89, 0x2c, 0x29, 0x2d, 0xcb, 0xd5, 0x0e, 0x19, 0x90, 0x5a, 0x9b, 0x55, 0x8e, 0xe7, 0xf4, 0x41, 0xad, 0x00, 0x13, 0x0c, 0x75, 0x78, 0xe1, 0x3b, 0x07, 0x83, 0x1f, 0xa1, 0x38, 0x59, 0x61, 0x0c, 0x74, 0x08, 0x97, 0x4e, 0x3b, 0x2f, 0x42, 0xe3, 0x3c, 0x9d, 0xb2, 0x43, 0x6d, 0xf4, 0x0e, 0x89, }; static const unsigned char ecdsa_secp384r1_sha3_512_8907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8907_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8907 = { .name = "ecdsa_secp384r1_sha3_512_8907", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8907_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8907_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8907_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8908 for ECDSA, tcId is 402 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8908_pubkey[] = { 0xec, 0xbe, 0x4a, 0x55, 0x7d, 0x3a, 0xe0, 0xad, 0xaf, 0xf6, 0x7f, 0x90, 0xc5, 0xc3, 0xb4, 0x65, 0x41, 0xfc, 0x57, 0x09, 0x54, 0xe0, 0x04, 0x87, 0xaf, 0x5e, 0x13, 0xc9, 0xdf, 0x15, 0x08, 0x07, 0xfe, 0xb7, 0x6a, 0x38, 0xce, 0x9a, 0x4d, 0xd1, 0x1f, 0x84, 0x7f, 0x8d, 0xb7, 0x9e, 0xd9, 0x7e, 0xde, 0xad, 0xe0, 0xc3, 0x67, 0x05, 0xe4, 0xf1, 0x17, 0xd0, 0x2e, 0xa0, 0x96, 0x6e, 0x0f, 0xa0, 0x1d, 0x0a, 0x31, 0x16, 0x88, 0x99, 0xce, 0xbd, 0x32, 0xe5, 0x44, 0xda, 0xe1, 0x9b, 0xd5, 0x94, 0x86, 0xcb, 0x10, 0xba, 0xc7, 0x7a, 0xd9, 0x07, 0x39, 0xc1, 0xb3, 0xa8, 0x74, 0x40, 0x76, 0xf0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8908_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8908 = { .name = "ecdsa_secp384r1_sha3_512_8908", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8908_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8908_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8908_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8909 for ECDSA, tcId is 403 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8909_pubkey[] = { 0x3b, 0xe0, 0x24, 0x65, 0x0b, 0xa1, 0xe2, 0x8f, 0x3b, 0x6f, 0xfb, 0xbb, 0xb7, 0xb2, 0xfd, 0x93, 0x2d, 0x97, 0xd9, 0x66, 0xb5, 0x76, 0xc9, 0xfa, 0x28, 0x29, 0x14, 0x77, 0x87, 0x22, 0x5d, 0x3b, 0xeb, 0xcf, 0x6f, 0xdf, 0x52, 0xce, 0xce, 0xaa, 0x97, 0xf3, 0xe7, 0x13, 0x32, 0x1a, 0xe0, 0x5b, 0x52, 0x02, 0xae, 0x4f, 0x52, 0xa8, 0x0a, 0xe6, 0x9d, 0xbb, 0xa2, 0xa6, 0x47, 0xf0, 0xcd, 0xee, 0x63, 0xf1, 0x32, 0xca, 0x4d, 0x2a, 0x56, 0x18, 0x0e, 0x13, 0x04, 0xb6, 0xea, 0x49, 0xb8, 0x00, 0xe3, 0x68, 0x38, 0x06, 0x96, 0xfc, 0xa5, 0x0d, 0x25, 0x55, 0xbb, 0x84, 0x67, 0x01, 0x0a, 0x9a, }; static const unsigned char ecdsa_secp384r1_sha3_512_8909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8909_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8909 = { .name = "ecdsa_secp384r1_sha3_512_8909", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8909_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8909_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8909_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8910 for ECDSA, tcId is 404 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8910_pubkey[] = { 0xdf, 0x85, 0xa1, 0x1b, 0xb0, 0xc9, 0xc5, 0xf6, 0xa4, 0xe1, 0x8b, 0x3d, 0xdf, 0xfc, 0x6c, 0x59, 0x7f, 0xd6, 0x83, 0x19, 0x49, 0x48, 0x47, 0xfe, 0x00, 0x34, 0xff, 0x8a, 0xa1, 0xb9, 0xdf, 0x00, 0x93, 0x5d, 0x61, 0x7e, 0xbb, 0x69, 0xd2, 0xe6, 0x52, 0x4a, 0x85, 0x6d, 0xf4, 0x33, 0x3b, 0x62, 0x23, 0x1f, 0xa6, 0x39, 0x2e, 0xc1, 0x6a, 0xa1, 0xec, 0x13, 0xd1, 0x44, 0x77, 0x7c, 0x6a, 0xd0, 0x26, 0x4c, 0xbb, 0x50, 0x20, 0x74, 0x4d, 0x1b, 0xcf, 0x43, 0xf4, 0xd1, 0xc3, 0xad, 0x69, 0x62, 0xd0, 0xd4, 0x1c, 0x1f, 0x62, 0xdc, 0x0b, 0xa1, 0xf3, 0x6f, 0x3d, 0x8b, 0x5e, 0x72, 0xe6, 0x70, }; static const unsigned char ecdsa_secp384r1_sha3_512_8910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8910_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8910 = { .name = "ecdsa_secp384r1_sha3_512_8910", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8910_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8910_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8910_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8911 for ECDSA, tcId is 405 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8911_pubkey[] = { 0x6e, 0xfb, 0xa1, 0x05, 0xb9, 0xe2, 0x76, 0xb0, 0x4e, 0xcf, 0x89, 0x6e, 0x14, 0x1f, 0xf1, 0x72, 0x02, 0x7b, 0x1b, 0xbb, 0x18, 0xba, 0xb6, 0xc2, 0x9c, 0x1d, 0xb2, 0x9d, 0xcf, 0xe7, 0xa9, 0x12, 0xfb, 0xb2, 0x8f, 0xea, 0xc2, 0x34, 0x63, 0x71, 0x81, 0x1b, 0x79, 0xa0, 0x34, 0x59, 0xe1, 0x9d, 0xb0, 0x4f, 0x05, 0x15, 0x30, 0x92, 0x41, 0x0e, 0x09, 0xf8, 0xb5, 0x2d, 0xa4, 0x37, 0x05, 0x11, 0x12, 0xe9, 0x51, 0xd9, 0x82, 0x86, 0x2e, 0x0a, 0x5e, 0xa6, 0x1e, 0x8c, 0x41, 0xa4, 0x07, 0xdb, 0x2d, 0x00, 0xa7, 0x28, 0x9d, 0x35, 0x31, 0x19, 0x3a, 0xb3, 0x7f, 0x6f, 0x8e, 0xf4, 0xe7, 0xb5, }; static const unsigned char ecdsa_secp384r1_sha3_512_8911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8911_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8911 = { .name = "ecdsa_secp384r1_sha3_512_8911", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8911_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8911_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8911_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8912 for ECDSA, tcId is 406 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8912_pubkey[] = { 0xa8, 0x2b, 0xe5, 0xec, 0x5f, 0x9d, 0xee, 0xd5, 0xca, 0x6d, 0x10, 0x44, 0x80, 0xab, 0xb9, 0x03, 0xca, 0x31, 0x76, 0x71, 0xe7, 0x6e, 0x23, 0x2a, 0x90, 0x0e, 0xe2, 0xbf, 0x24, 0x74, 0xb0, 0x97, 0xad, 0xe5, 0x20, 0x83, 0x71, 0x68, 0xa4, 0xed, 0x5c, 0xec, 0x6d, 0xbf, 0xcc, 0x0e, 0xa0, 0xff, 0xbb, 0xf3, 0x49, 0x8d, 0x2b, 0x5f, 0xe4, 0x38, 0xb2, 0xff, 0x9f, 0x45, 0x0c, 0x0f, 0x6d, 0xb2, 0xc2, 0x0c, 0x63, 0xca, 0x12, 0x02, 0x78, 0xf9, 0x7c, 0xc8, 0xc1, 0x88, 0xaf, 0xa6, 0x53, 0x91, 0x4a, 0x6e, 0x40, 0xfc, 0x92, 0x99, 0xc5, 0x78, 0xe1, 0xd2, 0x74, 0x53, 0xea, 0xf7, 0x7e, 0x0c, }; static const unsigned char ecdsa_secp384r1_sha3_512_8912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8912_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8912 = { .name = "ecdsa_secp384r1_sha3_512_8912", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8912_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8912_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8912_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8913 for ECDSA, tcId is 407 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8913_pubkey[] = { 0x45, 0xa9, 0x9a, 0xb8, 0x0d, 0x97, 0x21, 0x65, 0x6e, 0x00, 0x97, 0xec, 0x29, 0x29, 0xfb, 0x96, 0x31, 0x8e, 0x99, 0x75, 0x9e, 0x15, 0x59, 0xfc, 0x75, 0x4e, 0x74, 0xc6, 0xd2, 0x40, 0xff, 0x14, 0x95, 0xac, 0x89, 0x9e, 0xf6, 0xf6, 0xc1, 0xf4, 0x34, 0xe3, 0x9e, 0xff, 0x0c, 0xba, 0xbf, 0xa0, 0x05, 0xc6, 0xb0, 0xf3, 0x1d, 0xe5, 0xb9, 0xbf, 0xa2, 0x0e, 0xa2, 0x8a, 0x90, 0x70, 0xa6, 0xf3, 0x32, 0x29, 0x08, 0xd5, 0xb0, 0xbf, 0xc0, 0xd7, 0xd3, 0xa8, 0xcd, 0xfa, 0x9e, 0x93, 0xb6, 0x53, 0xb4, 0x76, 0x8b, 0x45, 0x40, 0x11, 0xbe, 0xff, 0x9b, 0xb9, 0xbb, 0xb8, 0x38, 0x16, 0x2b, 0xc9, }; static const unsigned char ecdsa_secp384r1_sha3_512_8913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8913_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8913 = { .name = "ecdsa_secp384r1_sha3_512_8913", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8913_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8913_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8913_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8914 for ECDSA, tcId is 408 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8914_pubkey[] = { 0xbd, 0x44, 0x17, 0x12, 0x38, 0xbd, 0x66, 0xdf, 0x3d, 0x41, 0x06, 0x69, 0xd9, 0x61, 0xfd, 0xcd, 0x4c, 0xf0, 0xd6, 0x35, 0xf3, 0x0c, 0xa6, 0xa3, 0xe4, 0x22, 0x80, 0x53, 0xef, 0x0a, 0xac, 0xaa, 0x24, 0xcb, 0x55, 0x89, 0x09, 0x45, 0xec, 0x5a, 0x57, 0xf3, 0xe8, 0xff, 0x21, 0xcf, 0xb5, 0x42, 0x76, 0x6f, 0xa8, 0xa3, 0x82, 0xf2, 0x1d, 0xff, 0x2c, 0x38, 0x03, 0x01, 0x8c, 0x94, 0xb5, 0x2e, 0xcd, 0x28, 0xb7, 0xee, 0x04, 0xf7, 0x62, 0x97, 0x02, 0x6a, 0xb1, 0x37, 0x07, 0xff, 0x68, 0xaf, 0xd9, 0x8b, 0x39, 0xd4, 0x31, 0xc4, 0x6b, 0x13, 0xef, 0x3c, 0xea, 0x81, 0xb4, 0x15, 0x87, 0x70, }; static const unsigned char ecdsa_secp384r1_sha3_512_8914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8914_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x21, 0x39, 0x63, 0xaf, 0x02, 0xbb, 0x08, 0x0b, 0xaa, 0xa1, 0x93, 0x82, 0xbc, 0x09, 0xcc, 0x2e, 0xc5, 0xd8, 0x69, 0x2e, 0xae, 0xcd, 0x7a, 0x5b, 0x0f, 0xe4, 0x92, 0x50, 0xea, 0x46, 0xeb, 0xe8, 0x97, 0xff, 0x62, 0x81, 0x1d, 0xe1, 0x98, 0x0e, 0xe7, 0x3b, 0x0e, 0x43, 0x54, 0xa1, 0x5e, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8914 = { .name = "ecdsa_secp384r1_sha3_512_8914", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8914_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8914_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8914_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 408 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8915 for ECDSA, tcId is 409 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8915_pubkey[] = { 0xbd, 0x44, 0x17, 0x12, 0x38, 0xbd, 0x66, 0xdf, 0x3d, 0x41, 0x06, 0x69, 0xd9, 0x61, 0xfd, 0xcd, 0x4c, 0xf0, 0xd6, 0x35, 0xf3, 0x0c, 0xa6, 0xa3, 0xe4, 0x22, 0x80, 0x53, 0xef, 0x0a, 0xac, 0xaa, 0x24, 0xcb, 0x55, 0x89, 0x09, 0x45, 0xec, 0x5a, 0x57, 0xf3, 0xe8, 0xff, 0x21, 0xcf, 0xb5, 0x42, 0x89, 0x90, 0x57, 0x5c, 0x7d, 0x0d, 0xe2, 0x00, 0xd3, 0xc7, 0xfc, 0xfe, 0x73, 0x6b, 0x4a, 0xd1, 0x32, 0xd7, 0x48, 0x11, 0xfb, 0x08, 0x9d, 0x68, 0xfd, 0x95, 0x4e, 0xc8, 0xf8, 0x00, 0x97, 0x4f, 0x26, 0x74, 0xc6, 0x2a, 0xce, 0x3b, 0x94, 0xec, 0x10, 0xc3, 0x15, 0x7f, 0x4b, 0xea, 0x78, 0x8f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8915_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x21, 0x39, 0x63, 0xaf, 0x02, 0xbb, 0x08, 0x0b, 0xaa, 0xa1, 0x93, 0x82, 0xbc, 0x09, 0xcc, 0x2e, 0xc5, 0xd8, 0x69, 0x2e, 0xae, 0xcd, 0x7a, 0x5b, 0x0f, 0xe4, 0x92, 0x50, 0xea, 0x46, 0xeb, 0xe8, 0x97, 0xff, 0x62, 0x81, 0x1d, 0xe1, 0x98, 0x0e, 0xe7, 0x3b, 0x0e, 0x43, 0x54, 0xa1, 0x5e, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8915 = { .name = "ecdsa_secp384r1_sha3_512_8915", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8915_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8915_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8915_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 409 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8916 for ECDSA, tcId is 410 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8916_pubkey[] = { 0xe3, 0xbe, 0x38, 0xa2, 0x43, 0x80, 0x36, 0xa7, 0x37, 0x38, 0xeb, 0xc1, 0xba, 0xbd, 0x70, 0x3a, 0x9d, 0x00, 0x1b, 0x68, 0x1f, 0x06, 0x9b, 0xa1, 0x01, 0x03, 0x7e, 0x58, 0x74, 0xcb, 0xf4, 0x9b, 0x9a, 0xa5, 0xa0, 0xe1, 0x14, 0xe8, 0x9a, 0xd7, 0x13, 0x5b, 0xc0, 0x97, 0x5d, 0x47, 0xc8, 0x91, 0xc2, 0x06, 0xde, 0x03, 0x58, 0xa7, 0x7e, 0xda, 0x6b, 0x6c, 0x8e, 0xbd, 0x0b, 0xa5, 0xaf, 0x1d, 0x3f, 0xe8, 0xff, 0x1d, 0x8e, 0x18, 0x84, 0x1a, 0x9e, 0xd9, 0xad, 0xaa, 0x7c, 0x13, 0xd4, 0x30, 0x53, 0x1e, 0x36, 0x31, 0x1a, 0x55, 0x9a, 0x68, 0x0f, 0x0f, 0xe7, 0xaf, 0xaa, 0x7f, 0xa2, 0xfe, }; static const unsigned char ecdsa_secp384r1_sha3_512_8916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8916_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8916 = { .name = "ecdsa_secp384r1_sha3_512_8916", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8916_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8916_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8916_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 410 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8917 for ECDSA, tcId is 411 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8917_pubkey[] = { 0x33, 0xa2, 0x4f, 0x43, 0x37, 0xd8, 0xa0, 0x2e, 0x4a, 0x1a, 0xc3, 0x7b, 0xef, 0xe6, 0xec, 0x55, 0x16, 0x9b, 0xae, 0xcd, 0x40, 0x9c, 0xb7, 0x5e, 0x29, 0x80, 0x28, 0x1d, 0x07, 0xcc, 0x12, 0x08, 0x1d, 0xe5, 0xd8, 0x60, 0x2b, 0xe3, 0x9d, 0xdd, 0xd1, 0xa2, 0x28, 0x17, 0x85, 0xb1, 0x5c, 0x32, 0x9e, 0x9d, 0xc7, 0x94, 0x17, 0xc0, 0xea, 0x19, 0x58, 0xb9, 0xec, 0x80, 0x73, 0xce, 0x60, 0xeb, 0x15, 0x9f, 0x6a, 0xec, 0x97, 0x62, 0x49, 0x6f, 0xf0, 0x41, 0x60, 0x13, 0xd1, 0x4d, 0x77, 0xde, 0x9c, 0x9b, 0xd2, 0x15, 0xb3, 0x96, 0x25, 0x37, 0x04, 0x19, 0x5a, 0xaa, 0x2e, 0x5a, 0xd1, 0x74, }; static const unsigned char ecdsa_secp384r1_sha3_512_8917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8917_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8917 = { .name = "ecdsa_secp384r1_sha3_512_8917", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8917_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8917_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8917_sig, .siglen = 97, .result = -1, .comment = "point with x-coordinate 0, tcId is 411 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8918 for ECDSA, tcId is 412 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8918_pubkey[] = { 0xbc, 0xc1, 0x8c, 0xbc, 0x9d, 0xad, 0xb3, 0x19, 0xcb, 0xb4, 0x64, 0xa6, 0xbf, 0x13, 0xc3, 0xfc, 0x23, 0xff, 0xe3, 0x96, 0x29, 0x5e, 0x0c, 0x66, 0x29, 0xd6, 0xd4, 0x23, 0xa9, 0x5a, 0x55, 0xe9, 0x96, 0x2d, 0x95, 0xba, 0xc7, 0x6e, 0x5c, 0xec, 0x92, 0xbe, 0x75, 0xf7, 0x40, 0x0b, 0xec, 0xd7, 0x01, 0xd4, 0x03, 0x2a, 0x39, 0x6a, 0xcd, 0x89, 0xfd, 0x62, 0xdf, 0x36, 0xca, 0x52, 0x2b, 0xbf, 0x58, 0x0a, 0x87, 0x0f, 0x65, 0xd4, 0x0e, 0xac, 0x8b, 0x73, 0x4a, 0x1e, 0x64, 0x58, 0x73, 0xf5, 0x54, 0x88, 0x8a, 0xe1, 0x7e, 0x69, 0xc6, 0x1b, 0xb0, 0xe0, 0xc8, 0x5d, 0x38, 0xfb, 0xb7, 0x8f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8918_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8918 = { .name = "ecdsa_secp384r1_sha3_512_8918", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8918_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8918_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8918_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 412 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8919 for ECDSA, tcId is 413 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8919_pubkey[] = { 0x36, 0x74, 0x23, 0x00, 0x33, 0xc5, 0xda, 0x4b, 0xba, 0x11, 0x5c, 0x35, 0x1c, 0xf4, 0x54, 0x4b, 0x97, 0xc7, 0x68, 0x00, 0x93, 0x8a, 0xf5, 0xd7, 0x6d, 0x13, 0x93, 0xee, 0x25, 0x41, 0xb5, 0xd3, 0x18, 0xc3, 0x05, 0xd6, 0xf3, 0xf6, 0x0f, 0xbd, 0x48, 0x40, 0xcd, 0x3e, 0x35, 0x7b, 0x43, 0xb6, 0x9f, 0x79, 0xb7, 0x8b, 0xce, 0x24, 0x7f, 0x58, 0x00, 0xaf, 0x35, 0x04, 0x79, 0x7c, 0xc1, 0x4b, 0x15, 0xd5, 0xd4, 0x21, 0x31, 0x06, 0xb5, 0xc7, 0xab, 0x83, 0xe4, 0xa7, 0xd5, 0xf6, 0xdf, 0xf3, 0x1e, 0xcc, 0x12, 0xab, 0x18, 0xca, 0xaa, 0xd8, 0xc0, 0x2e, 0xbb, 0x23, 0x42, 0x15, 0xbd, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8919_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8919 = { .name = "ecdsa_secp384r1_sha3_512_8919", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8919_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8919_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8919_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 413 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8920 for ECDSA, tcId is 414 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8920_pubkey[] = { 0xac, 0x7d, 0x89, 0x72, 0x88, 0xe8, 0x53, 0x20, 0xe9, 0x44, 0x87, 0xec, 0x77, 0x3f, 0x2e, 0x9c, 0x42, 0x16, 0x57, 0x22, 0x7e, 0x74, 0x2d, 0xfc, 0x90, 0x68, 0x27, 0x38, 0x26, 0xbc, 0xad, 0x1a, 0x9a, 0xef, 0x4b, 0xc6, 0x3e, 0xa7, 0x4d, 0x11, 0x2e, 0xca, 0xb0, 0x91, 0xe5, 0x13, 0x92, 0x09, 0x7e, 0x79, 0x7b, 0x58, 0x40, 0x8d, 0xe6, 0xb5, 0xf9, 0xad, 0xb4, 0x6e, 0xc3, 0x02, 0xe9, 0xe3, 0x73, 0x88, 0x79, 0x34, 0xe5, 0xa7, 0x9f, 0xf5, 0xdb, 0x51, 0x18, 0x8b, 0x99, 0x7c, 0xd2, 0x50, 0x93, 0x5b, 0x50, 0x56, 0x62, 0xb6, 0x6a, 0xbc, 0xc7, 0x26, 0xbe, 0x81, 0x44, 0x6b, 0xcc, 0xea, }; static const unsigned char ecdsa_secp384r1_sha3_512_8920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8920_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8920 = { .name = "ecdsa_secp384r1_sha3_512_8920", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8920_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8920_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8920_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 414 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8921 for ECDSA, tcId is 415 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8921_pubkey[] = { 0x6c, 0xcf, 0x7c, 0x5d, 0x5a, 0x5c, 0xa8, 0x22, 0x35, 0x35, 0xdc, 0xb0, 0x38, 0x23, 0x67, 0x30, 0x58, 0xc6, 0x86, 0xcd, 0x95, 0x60, 0xed, 0x2c, 0x09, 0x4f, 0x3e, 0xde, 0x52, 0xdd, 0x0d, 0xe5, 0x9e, 0x5e, 0xdf, 0xcf, 0xb8, 0x29, 0xb0, 0xa9, 0x5f, 0x93, 0x92, 0x34, 0xc9, 0x31, 0xc3, 0x61, 0xb0, 0x6d, 0x1b, 0x75, 0xf6, 0x0f, 0x6c, 0x9d, 0xe6, 0x75, 0x48, 0xdc, 0xf1, 0x00, 0xb7, 0x7e, 0x6a, 0x66, 0x7d, 0x7b, 0x6b, 0xec, 0x10, 0x4a, 0x1c, 0xb8, 0x6b, 0xfd, 0x43, 0x98, 0x12, 0x7c, 0xe9, 0xed, 0x50, 0xa3, 0x75, 0x6e, 0xf7, 0xcb, 0xaf, 0xb6, 0x8c, 0x01, 0xe3, 0x73, 0x49, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8921_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8921 = { .name = "ecdsa_secp384r1_sha3_512_8921", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8921_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8921_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8921_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8922 for ECDSA, tcId is 416 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8922_pubkey[] = { 0x5a, 0xea, 0x5b, 0x66, 0xa2, 0x2e, 0x9a, 0xd0, 0x5e, 0xd9, 0x48, 0x05, 0x0b, 0x74, 0x78, 0xd6, 0x6d, 0x52, 0xbf, 0x5c, 0x8a, 0xe1, 0xb0, 0x37, 0xbd, 0x35, 0xdb, 0xe3, 0x6f, 0x90, 0x65, 0x10, 0x68, 0xb9, 0x29, 0xe2, 0x94, 0xba, 0xd3, 0x85, 0x28, 0x77, 0xf9, 0xed, 0x8b, 0x56, 0x08, 0x4c, 0x88, 0xc0, 0xff, 0x92, 0xb7, 0xbb, 0xe5, 0xa3, 0x6c, 0xad, 0x9a, 0x31, 0xba, 0xf4, 0xa8, 0xda, 0x75, 0x6e, 0x7b, 0x13, 0x16, 0x9d, 0x1b, 0x2c, 0x21, 0x77, 0xe0, 0xc1, 0x19, 0xc9, 0x1c, 0xed, 0xdd, 0x84, 0x14, 0xa5, 0xd2, 0x9d, 0x86, 0x2f, 0x12, 0xbf, 0x18, 0x16, 0x63, 0x65, 0x14, 0xd4, }; static const unsigned char ecdsa_secp384r1_sha3_512_8922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8922_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8922 = { .name = "ecdsa_secp384r1_sha3_512_8922", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8922_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8922_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8922_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8923 for ECDSA, tcId is 417 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8923_pubkey[] = { 0x4d, 0xfc, 0xa7, 0x08, 0xa0, 0x87, 0xc8, 0x16, 0x5e, 0xdc, 0xc2, 0x10, 0x10, 0xdb, 0xc8, 0x38, 0x90, 0xe8, 0x95, 0xa6, 0x1b, 0xca, 0x93, 0xeb, 0xb3, 0x29, 0x13, 0xb7, 0xc1, 0xba, 0xb5, 0xf1, 0x37, 0x94, 0x97, 0x8c, 0x0a, 0x8f, 0x43, 0x7f, 0x9a, 0x19, 0x3f, 0x3d, 0x49, 0xe8, 0x7c, 0x99, 0x96, 0x8d, 0x67, 0x35, 0x58, 0xb5, 0x12, 0xe8, 0x6a, 0x3c, 0x04, 0x55, 0x7c, 0xda, 0x68, 0xde, 0xff, 0x64, 0x71, 0x65, 0x22, 0x6e, 0xcd, 0xe4, 0xa5, 0x3e, 0xff, 0x3b, 0x30, 0x36, 0xe8, 0x82, 0x59, 0x98, 0x2c, 0xda, 0x28, 0x36, 0x56, 0x08, 0x06, 0x4d, 0x14, 0xe7, 0xd0, 0x67, 0x74, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha3_512_8923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8923_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8923 = { .name = "ecdsa_secp384r1_sha3_512_8923", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8923_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8923_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8923_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8924 for ECDSA, tcId is 418 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8924_pubkey[] = { 0x07, 0xdc, 0x12, 0x76, 0x08, 0x2e, 0xab, 0xff, 0x63, 0xa3, 0xb9, 0x67, 0xd6, 0x41, 0x57, 0xe6, 0x8d, 0x8a, 0xe7, 0x94, 0x91, 0xae, 0x90, 0xd4, 0x3a, 0x79, 0xc1, 0x54, 0x8c, 0xe1, 0xcb, 0xfb, 0x48, 0x08, 0x8e, 0x2b, 0x25, 0x6e, 0xe8, 0xa4, 0xd6, 0x46, 0x6d, 0x67, 0x6e, 0xb8, 0x2a, 0x3d, 0x14, 0x56, 0x68, 0x77, 0xff, 0xa5, 0x34, 0x18, 0x27, 0x60, 0x36, 0x3c, 0x94, 0xca, 0xb0, 0xd4, 0xad, 0x8d, 0x3a, 0x3f, 0xac, 0x2d, 0x78, 0xb9, 0x8d, 0xc6, 0x5f, 0x8a, 0x78, 0xb5, 0x48, 0x46, 0x96, 0xa5, 0x34, 0xd0, 0x89, 0x4a, 0x02, 0x9e, 0x70, 0xcd, 0xcb, 0xc1, 0xc6, 0xce, 0x2e, 0x54, }; static const unsigned char ecdsa_secp384r1_sha3_512_8924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8924_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8924 = { .name = "ecdsa_secp384r1_sha3_512_8924", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8924_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8924_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8924_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 418 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8925 for ECDSA, tcId is 419 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8925_pubkey[] = { 0xa8, 0x23, 0x06, 0xa0, 0x28, 0xe2, 0xfb, 0x16, 0xf5, 0xb6, 0xea, 0xf6, 0xfc, 0x96, 0xd3, 0x43, 0x01, 0x04, 0x48, 0x6a, 0x35, 0xd2, 0x5a, 0x35, 0xe6, 0x65, 0x22, 0xa5, 0xf6, 0x8f, 0x53, 0xe4, 0xc6, 0xde, 0xf3, 0x89, 0x30, 0x09, 0xac, 0xd8, 0xc7, 0x5a, 0xbb, 0xdc, 0xdd, 0x93, 0xac, 0xf5, 0xb6, 0xea, 0xda, 0x81, 0x52, 0x52, 0xa4, 0x6f, 0xd9, 0x96, 0xd0, 0xfe, 0x4a, 0x73, 0x54, 0x93, 0xcd, 0xea, 0x3a, 0x0a, 0x9f, 0x61, 0x7f, 0xf9, 0x46, 0x9d, 0xf8, 0xc1, 0xb6, 0x4c, 0xe2, 0xd9, 0x5f, 0xd1, 0x32, 0xef, 0x39, 0x8d, 0xe3, 0x01, 0x42, 0x63, 0xe9, 0x5f, 0xed, 0x4f, 0xb2, 0x13, }; static const unsigned char ecdsa_secp384r1_sha3_512_8925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8925_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8925 = { .name = "ecdsa_secp384r1_sha3_512_8925", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8925_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8925_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8925_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 419 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8926 for ECDSA, tcId is 420 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8926_pubkey[] = { 0xb4, 0x25, 0x81, 0x1b, 0x3b, 0xc7, 0x2b, 0xac, 0x8b, 0xb8, 0xb0, 0x31, 0xe9, 0xd9, 0xc3, 0x6c, 0x55, 0x0a, 0x70, 0xda, 0xd6, 0xe5, 0x24, 0x5e, 0x22, 0xf0, 0xb8, 0xc4, 0x2c, 0x56, 0xf0, 0xa6, 0x28, 0x41, 0x9d, 0x04, 0xf3, 0xe8, 0x98, 0x79, 0xf2, 0x61, 0xcc, 0xf1, 0x00, 0x6a, 0xf5, 0x69, 0xec, 0x26, 0xb6, 0xd4, 0xee, 0xe7, 0x8d, 0x11, 0x14, 0x0e, 0x5b, 0xf3, 0x11, 0xe7, 0xdc, 0x4d, 0xef, 0x75, 0xf1, 0xcb, 0xde, 0x62, 0x3b, 0xc2, 0xa5, 0x46, 0x2d, 0x50, 0xcb, 0x47, 0x8b, 0x61, 0xe9, 0xdc, 0xca, 0x74, 0x77, 0x7c, 0xf2, 0x60, 0xbc, 0x8e, 0xf8, 0xb7, 0xcd, 0xad, 0x5e, 0x08, }; static const unsigned char ecdsa_secp384r1_sha3_512_8926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8926_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8926 = { .name = "ecdsa_secp384r1_sha3_512_8926", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8926_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8926_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8926_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 420 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8927 for ECDSA, tcId is 421 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8927_pubkey[] = { 0x5b, 0x03, 0x1a, 0x80, 0x20, 0xdd, 0xb6, 0x6a, 0x43, 0xf0, 0x5f, 0x30, 0x85, 0xe3, 0x33, 0x10, 0x1f, 0x5f, 0xba, 0xc8, 0x73, 0x7a, 0x86, 0x7f, 0x6e, 0x83, 0xef, 0xd1, 0x08, 0xcb, 0x2c, 0xae, 0xef, 0xd1, 0x21, 0x04, 0x94, 0xbd, 0xf7, 0x74, 0xc7, 0x88, 0xee, 0xc1, 0xbe, 0x43, 0xd6, 0x06, 0x19, 0xa6, 0x29, 0x0c, 0x3c, 0xce, 0xf1, 0xdc, 0xb3, 0xba, 0xc4, 0x65, 0x56, 0x46, 0x02, 0x54, 0xf5, 0x07, 0x9f, 0x43, 0xbd, 0x54, 0x70, 0xd3, 0x66, 0x77, 0x0b, 0xdd, 0x90, 0x48, 0xc3, 0xc3, 0x10, 0x9b, 0x67, 0x43, 0x8a, 0xdc, 0xb9, 0x65, 0xd6, 0xa6, 0x95, 0xd2, 0xa1, 0x63, 0x35, 0xd2, }; static const unsigned char ecdsa_secp384r1_sha3_512_8927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8927_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8927 = { .name = "ecdsa_secp384r1_sha3_512_8927", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8927_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8927_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8927_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8928 for ECDSA, tcId is 422 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8928_pubkey[] = { 0xe1, 0x7b, 0xc4, 0xa1, 0xca, 0xa8, 0x70, 0x98, 0x8f, 0x63, 0xda, 0x22, 0x63, 0x53, 0x37, 0x51, 0x3f, 0x59, 0xc0, 0x55, 0xfb, 0x7d, 0xc8, 0x73, 0xeb, 0xa0, 0xdf, 0x12, 0x5d, 0xff, 0x66, 0x48, 0x5d, 0x87, 0xbe, 0xf5, 0x20, 0xeb, 0xd4, 0xc5, 0x76, 0xc0, 0xad, 0xf3, 0x7d, 0xb8, 0x0d, 0x5b, 0xa6, 0xf7, 0x02, 0xb4, 0x47, 0xa5, 0x0c, 0x9f, 0xc3, 0xcc, 0x87, 0xdd, 0x0f, 0x6d, 0x9a, 0x17, 0x07, 0xb5, 0xeb, 0xcb, 0x80, 0xdd, 0x3c, 0x0b, 0xf8, 0x91, 0xbd, 0xed, 0xb1, 0xf2, 0x35, 0xab, 0x33, 0xc3, 0xf3, 0xe4, 0xef, 0x73, 0x34, 0xe3, 0x84, 0xa2, 0x4e, 0xfd, 0x50, 0x3a, 0x09, 0x24, }; static const unsigned char ecdsa_secp384r1_sha3_512_8928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8928_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8928 = { .name = "ecdsa_secp384r1_sha3_512_8928", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8928_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8928_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8928_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8929 for ECDSA, tcId is 423 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8929_pubkey[] = { 0x05, 0x15, 0x90, 0xa4, 0xcb, 0xe9, 0x3a, 0xe2, 0x1d, 0xc6, 0xf2, 0x72, 0xd5, 0x37, 0x6b, 0x24, 0x0e, 0x22, 0x91, 0x17, 0xb3, 0x5f, 0x9c, 0xb8, 0x92, 0xfb, 0x6a, 0x7e, 0xe0, 0x0c, 0x56, 0x7e, 0xb5, 0xb7, 0xe9, 0x51, 0xaf, 0x15, 0x25, 0x17, 0x33, 0xfb, 0xf8, 0x3e, 0x3b, 0x4a, 0x2c, 0xa0, 0xaf, 0x4e, 0x51, 0x97, 0xd2, 0x71, 0xad, 0x16, 0xeb, 0x65, 0x61, 0xc1, 0x86, 0x01, 0x3a, 0x57, 0x7b, 0xd1, 0x7f, 0x39, 0x9b, 0xfa, 0x20, 0xc9, 0x08, 0x23, 0x7c, 0x7a, 0x78, 0x4d, 0x5f, 0xc3, 0xdd, 0x98, 0x66, 0x5f, 0x20, 0xf8, 0x5f, 0xec, 0xaf, 0x53, 0xac, 0x79, 0xec, 0x7f, 0x00, 0x17, }; static const unsigned char ecdsa_secp384r1_sha3_512_8929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8929_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8929 = { .name = "ecdsa_secp384r1_sha3_512_8929", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8929_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8929_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8929_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 423 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8930 for ECDSA, tcId is 424 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8930_pubkey[] = { 0xc1, 0xd9, 0x58, 0x13, 0xb5, 0x06, 0x99, 0x45, 0x3f, 0x6b, 0x48, 0x59, 0xf2, 0xea, 0x93, 0xc6, 0xe4, 0x8d, 0xd4, 0x6e, 0xa1, 0x54, 0x78, 0x6a, 0xfa, 0x5f, 0x01, 0xa9, 0xea, 0x70, 0x93, 0x76, 0x11, 0x14, 0x88, 0x57, 0x11, 0x28, 0x5e, 0xd7, 0xbf, 0x78, 0xa6, 0x6a, 0xd0, 0xf5, 0xfc, 0xec, 0x09, 0x34, 0x2a, 0x94, 0x6e, 0xf3, 0x5f, 0xd9, 0xea, 0xda, 0x44, 0x46, 0x87, 0x90, 0x3f, 0x43, 0x64, 0x00, 0x25, 0xcd, 0x2a, 0x1c, 0x2c, 0xa4, 0xda, 0xc5, 0x80, 0xed, 0x93, 0x3d, 0x9f, 0xa9, 0x44, 0x1a, 0xd8, 0x0f, 0x3a, 0xe7, 0x6b, 0x53, 0x1a, 0xcd, 0x8a, 0xbb, 0xd4, 0xd6, 0x72, 0xaa, }; static const unsigned char ecdsa_secp384r1_sha3_512_8930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8930_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8930 = { .name = "ecdsa_secp384r1_sha3_512_8930", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8930_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8930_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8930_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 424 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8931 for ECDSA, tcId is 425 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8931_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8931_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8931 = { .name = "ecdsa_secp384r1_sha3_512_8931", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8931_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8931_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8931_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 425 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8932 for ECDSA, tcId is 426 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8932_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha3_512_8932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8932_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x05, 0xa3, 0x78, 0x3e, 0x9f, 0xef, 0x3c, 0x1b, 0xb2, 0xaa, 0x85, 0xd6, 0xb0, 0xa8, 0x0a, 0x5a, 0x60, 0x62, 0x30, 0x68, 0x11, 0x74, 0x3c, 0x4b, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8932 = { .name = "ecdsa_secp384r1_sha3_512_8932", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8932_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8932_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8932_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 426 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8933 for ECDSA, tcId is 427 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8933_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8933_sig[] = { 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8933 = { .name = "ecdsa_secp384r1_sha3_512_8933", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8933_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8933_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8933_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 427 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8934 for ECDSA, tcId is 428 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8934_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha3_512_8934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8934_sig[] = { 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x05, 0xa3, 0x78, 0x3e, 0x9f, 0xef, 0x3c, 0x1b, 0xb2, 0xaa, 0x85, 0xd6, 0xb0, 0xa8, 0x0a, 0x5a, 0x60, 0x62, 0x30, 0x68, 0x11, 0x74, 0x3c, 0x4b, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8934 = { .name = "ecdsa_secp384r1_sha3_512_8934", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8934_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8934_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8934_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 428 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8935 for ECDSA, tcId is 429 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8935_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8935_sig[] = { 0x94, 0x04, 0xb3, 0xea, 0x09, 0xd8, 0xe0, 0x77, 0x7f, 0x2f, 0x49, 0x2c, 0x3f, 0x15, 0x73, 0x6f, 0xf0, 0xe6, 0x3e, 0x22, 0x38, 0x9c, 0x67, 0x6f, 0x9a, 0x14, 0x63, 0xb8, 0xd8, 0x15, 0x3b, 0xbc, 0xe5, 0xe5, 0x22, 0xee, 0x99, 0x2c, 0xbd, 0x8d, 0x5e, 0x3f, 0x93, 0x78, 0xd3, 0x39, 0x69, 0xfa, 0x41, 0x59, 0x3e, 0x5e, 0xb1, 0xee, 0xf5, 0x1f, 0x03, 0x4e, 0xe2, 0xe6, 0x38, 0x4d, 0x17, 0xf5, 0xf4, 0x66, 0x08, 0x9b, 0xf0, 0x64, 0x56, 0x75, 0x71, 0x83, 0x9b, 0xab, 0x3e, 0xc4, 0xcf, 0xb1, 0xa1, 0xb8, 0x53, 0x30, 0x11, 0xe7, 0xcc, 0x3f, 0x9e, 0x33, 0x78, 0x65, 0x38, 0x5f, 0x86, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8935 = { .name = "ecdsa_secp384r1_sha3_512_8935", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8935_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha3_512_8935_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 429 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8936 for ECDSA, tcId is 430 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8936_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8936_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha3_512_8936_sig[] = { 0x56, 0x62, 0xc8, 0x15, 0xb9, 0xd1, 0x68, 0x0c, 0xb0, 0x27, 0xcb, 0xed, 0xe7, 0x3c, 0xbe, 0x02, 0x81, 0xb0, 0x2f, 0xa9, 0x7f, 0x99, 0xe6, 0x07, 0x0e, 0xbc, 0x44, 0x2d, 0x90, 0xda, 0xce, 0x4a, 0x8e, 0x2d, 0xc0, 0xf3, 0x65, 0xc1, 0x49, 0xbd, 0xa3, 0x5c, 0xa4, 0x73, 0xe9, 0x20, 0xcf, 0xcc, 0x36, 0x7c, 0xf3, 0x19, 0x80, 0xd9, 0xdb, 0xc7, 0xff, 0x6a, 0x0a, 0x72, 0xc1, 0xfe, 0xdf, 0x52, 0x5a, 0x29, 0xfa, 0x3e, 0x83, 0x02, 0x1f, 0x38, 0x70, 0x30, 0xbc, 0x46, 0x56, 0x07, 0xd5, 0xe6, 0x5a, 0xa3, 0x13, 0x85, 0xbe, 0x28, 0xc2, 0x00, 0x0b, 0x6a, 0x01, 0xdd, 0x83, 0xc8, 0xc0, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8936 = { .name = "ecdsa_secp384r1_sha3_512_8936", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8936_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8936_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha3_512_8936_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 430 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8937 for ECDSA, tcId is 431 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8937_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha3_512_8937_sig[] = { 0x4a, 0x88, 0x6d, 0x73, 0x6f, 0x5b, 0x9c, 0xad, 0x60, 0x44, 0xbc, 0x73, 0xf6, 0xa7, 0x53, 0xaf, 0x24, 0xc6, 0x8e, 0xc3, 0x66, 0x45, 0x9f, 0x4d, 0x6b, 0xf9, 0xbd, 0xde, 0xc9, 0x36, 0xc8, 0xee, 0x91, 0x3e, 0x4c, 0x88, 0x49, 0x0d, 0xee, 0x78, 0xeb, 0xb7, 0x23, 0x4e, 0xa4, 0x4b, 0x22, 0x1d, 0x67, 0xe5, 0x3c, 0x5c, 0x9a, 0x53, 0xac, 0x28, 0x79, 0x50, 0x2e, 0x4c, 0xc6, 0xbb, 0x16, 0xe8, 0x96, 0xca, 0x89, 0xb9, 0x31, 0xf4, 0x39, 0xaa, 0xf9, 0x1e, 0x3b, 0xd9, 0x68, 0x6b, 0xc0, 0x1d, 0x17, 0x1e, 0xae, 0x95, 0x29, 0x75, 0xed, 0x2e, 0x8e, 0x9c, 0xcc, 0x94, 0x92, 0xfe, 0xa5, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8937 = { .name = "ecdsa_secp384r1_sha3_512_8937", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8937_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8937_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha3_512_8937_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 431 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8938 for ECDSA, tcId is 432 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8938_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha3_512_8938_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_512_8938_sig[] = { 0x45, 0x87, 0x66, 0x81, 0x2c, 0x6e, 0x68, 0x18, 0xd9, 0xc2, 0x66, 0x59, 0x70, 0x0f, 0xf3, 0xd5, 0xf9, 0xde, 0x57, 0x02, 0x75, 0xd0, 0xbb, 0x8f, 0xaf, 0x16, 0xe2, 0xe2, 0x89, 0x90, 0x48, 0x62, 0x88, 0xd0, 0x9b, 0x82, 0x54, 0x24, 0xe6, 0x7a, 0x73, 0x8a, 0x49, 0x17, 0xdf, 0xb1, 0xaf, 0xdd, 0x93, 0x83, 0xea, 0x7a, 0x3b, 0x61, 0x80, 0x18, 0xc1, 0xdd, 0x12, 0xc5, 0xdf, 0x50, 0x5e, 0xa4, 0x19, 0x16, 0x38, 0x74, 0x65, 0x78, 0xdc, 0xd7, 0x00, 0xc0, 0x86, 0xc6, 0xbc, 0x13, 0x2e, 0xa0, 0x28, 0x09, 0x0e, 0xed, 0x26, 0xa7, 0xd4, 0xb0, 0xff, 0xa7, 0x79, 0x08, 0x1f, 0xe3, 0xbe, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8938 = { .name = "ecdsa_secp384r1_sha3_512_8938", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8938_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8938_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha3_512_8938_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 432 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8939 for ECDSA, tcId is 433 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8939_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8939_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8939_sig[] = { 0xa4, 0xd7, 0xca, 0x04, 0x31, 0x22, 0xdc, 0x46, 0xbd, 0xa7, 0x96, 0x50, 0xf5, 0xe1, 0x87, 0x2e, 0x27, 0xcd, 0x9a, 0xa8, 0x97, 0x44, 0xdc, 0x89, 0x7a, 0xf2, 0x49, 0x52, 0x1d, 0xb2, 0x29, 0x26, 0x50, 0xfd, 0x1c, 0xd6, 0x6c, 0xeb, 0xff, 0x3a, 0x36, 0x50, 0x41, 0x4b, 0x5e, 0x1a, 0x70, 0xe1, 0x7a, 0xd0, 0x31, 0xbc, 0x87, 0x66, 0x82, 0x10, 0x5c, 0xda, 0xeb, 0xa7, 0x40, 0x5d, 0xf3, 0x68, 0x4a, 0xec, 0xf8, 0x95, 0x86, 0xb6, 0x35, 0x78, 0xac, 0xd0, 0x05, 0xb5, 0xb6, 0x13, 0x60, 0xc9, 0xe8, 0xcb, 0xa3, 0xa8, 0x28, 0x7a, 0x39, 0xfc, 0x63, 0x22, 0x13, 0x8f, 0x96, 0x2f, 0xda, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8939 = { .name = "ecdsa_secp384r1_sha3_512_8939", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8939_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8939_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8939_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 433 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8940 for ECDSA, tcId is 434 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8940_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8940_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8940_sig[] = { 0x9a, 0x8e, 0x7c, 0x52, 0x6a, 0xcb, 0x3d, 0x0b, 0xe8, 0x7c, 0xf3, 0x59, 0xfa, 0x1c, 0x7f, 0xde, 0x02, 0xba, 0xf4, 0x7d, 0xfb, 0xdb, 0x4b, 0x48, 0xa2, 0xb6, 0x81, 0x43, 0x46, 0xf3, 0xdc, 0xdb, 0xb9, 0x53, 0x0a, 0x65, 0x28, 0x73, 0x73, 0x9d, 0x94, 0x93, 0xb8, 0x07, 0x04, 0x6f, 0x8d, 0x62, 0x1c, 0x57, 0x81, 0xb7, 0x42, 0x21, 0x7b, 0x94, 0x65, 0xce, 0x9d, 0xaa, 0xab, 0xf6, 0xf9, 0x4d, 0x47, 0x63, 0xbf, 0x36, 0x26, 0x54, 0x09, 0x2f, 0x9f, 0x23, 0xa8, 0x11, 0x4b, 0x84, 0x02, 0x29, 0x20, 0x1e, 0x97, 0x83, 0x53, 0xce, 0x9f, 0x70, 0xa0, 0x3a, 0x78, 0xf5, 0x37, 0x96, 0x7a, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8940 = { .name = "ecdsa_secp384r1_sha3_512_8940", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8940_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8940_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8940_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 434 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8941 for ECDSA, tcId is 435 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8941_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha3_512_8941_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8941_sig[] = { 0x6b, 0xbb, 0x20, 0x40, 0x7a, 0x28, 0x22, 0x69, 0xdf, 0x53, 0xe1, 0x4e, 0x38, 0xf4, 0xec, 0x80, 0x75, 0x72, 0x6a, 0x93, 0xdd, 0x26, 0x23, 0xf3, 0xb9, 0x47, 0x59, 0x2e, 0x57, 0xcb, 0x26, 0xf1, 0xd3, 0x06, 0xed, 0x79, 0xf0, 0x25, 0x12, 0xd2, 0xb9, 0x26, 0xab, 0x0d, 0x1e, 0x89, 0x12, 0xff, 0x67, 0x89, 0xdf, 0x1a, 0x3e, 0x41, 0xa6, 0xab, 0xbd, 0xdc, 0x31, 0x9e, 0x86, 0x4a, 0xa5, 0x36, 0xdf, 0x09, 0xa0, 0xd4, 0x96, 0x51, 0xb6, 0x5b, 0x7b, 0x1a, 0x43, 0x74, 0xde, 0xc5, 0x1c, 0xee, 0x61, 0x91, 0x03, 0xed, 0x20, 0x2b, 0x22, 0xda, 0x0e, 0x22, 0x30, 0x34, 0x29, 0x9f, 0x0c, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8941 = { .name = "ecdsa_secp384r1_sha3_512_8941", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8941_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8941_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8941_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 435 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8942 for ECDSA, tcId is 436 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8942_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_512_8942_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8942_sig[] = { 0x5b, 0x87, 0xf6, 0x17, 0x4f, 0xe9, 0x31, 0x2c, 0x2c, 0x91, 0x00, 0xeb, 0xde, 0xe5, 0xb3, 0xc8, 0xef, 0x5c, 0x33, 0xc0, 0x3b, 0x2a, 0x20, 0x56, 0xea, 0xad, 0x4e, 0xed, 0x7e, 0x06, 0x34, 0xe7, 0x3e, 0x62, 0xb2, 0xff, 0x56, 0x53, 0xe8, 0x80, 0xd1, 0xbf, 0x2a, 0x5e, 0xcb, 0x16, 0x5a, 0x95, 0xba, 0x21, 0xde, 0x53, 0xb2, 0xc2, 0xc9, 0x25, 0x68, 0x80, 0x88, 0x35, 0x8a, 0x49, 0x97, 0xf4, 0xa2, 0xd9, 0xab, 0xc9, 0x8a, 0x46, 0xdb, 0xf1, 0x27, 0x7f, 0xc3, 0x22, 0x11, 0x07, 0x51, 0x9c, 0x2f, 0x7a, 0xcb, 0xd1, 0x3d, 0xdb, 0x13, 0xbc, 0x9b, 0xf9, 0x13, 0x0e, 0x68, 0x03, 0x78, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8942 = { .name = "ecdsa_secp384r1_sha3_512_8942", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8942_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8942_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8942_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 436 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8943 for ECDSA, tcId is 437 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8943_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_512_8943_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8943_sig[] = { 0x2f, 0xba, 0x05, 0xc6, 0xa9, 0x94, 0x85, 0x98, 0x07, 0x66, 0x2d, 0xbb, 0xb5, 0xb7, 0xd0, 0x9b, 0x1c, 0xf7, 0x0b, 0xdf, 0x05, 0x57, 0x86, 0x36, 0xfc, 0x8a, 0x19, 0xd3, 0xf8, 0x87, 0xc5, 0x72, 0xa2, 0x60, 0x27, 0xfa, 0x21, 0xe9, 0xf7, 0x83, 0x18, 0x67, 0xf4, 0x14, 0xec, 0xdd, 0x27, 0xf4, 0x73, 0xcc, 0xa8, 0x52, 0x19, 0x06, 0xf6, 0xaa, 0xd6, 0x63, 0xb7, 0xde, 0xf7, 0x9e, 0x8a, 0xc0, 0x06, 0x5f, 0x1c, 0x74, 0xc2, 0xbe, 0x11, 0x7b, 0x43, 0x30, 0x29, 0x81, 0xab, 0xd4, 0x70, 0x83, 0x22, 0x6f, 0x29, 0x7c, 0x7b, 0xa5, 0xc7, 0xb9, 0x3e, 0xf3, 0x59, 0x67, 0x0c, 0xac, 0xff, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8943 = { .name = "ecdsa_secp384r1_sha3_512_8943", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8943_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8943_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8943_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 437 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8944 for ECDSA, tcId is 438 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8944_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha3_512_8944_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8944_sig[] = { 0x41, 0x11, 0x9a, 0xed, 0xab, 0x87, 0x1d, 0xc7, 0xa6, 0xd2, 0xdd, 0x8b, 0xcf, 0x56, 0xe7, 0xd5, 0x29, 0x7d, 0x61, 0xfd, 0x42, 0x20, 0x96, 0xd5, 0x50, 0x81, 0x2a, 0x0d, 0x49, 0x5a, 0x20, 0xd7, 0xf6, 0x76, 0x5b, 0x73, 0x3c, 0xf2, 0xe6, 0xc7, 0xc7, 0x4a, 0x38, 0x05, 0x1c, 0x71, 0xff, 0xbb, 0x11, 0xb3, 0x7e, 0x5c, 0x0f, 0xbe, 0xec, 0xbb, 0x4a, 0xe1, 0xf3, 0x90, 0xf8, 0x0c, 0x3d, 0xad, 0xea, 0x07, 0x9e, 0x7a, 0x1b, 0xc0, 0xca, 0x3e, 0xb7, 0xb5, 0xb0, 0x9f, 0xe9, 0xd7, 0x4e, 0x1a, 0xa0, 0x55, 0x7b, 0x0d, 0xdc, 0xe2, 0x9f, 0x0a, 0x15, 0xf6, 0x77, 0x81, 0xad, 0x2a, 0x67, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8944 = { .name = "ecdsa_secp384r1_sha3_512_8944", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8944_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8944_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8944_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 438 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8945 for ECDSA, tcId is 439 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8945_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_512_8945_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8945_sig[] = { 0x2c, 0xcc, 0xd7, 0x6c, 0x89, 0x9e, 0x52, 0x8e, 0x85, 0xd6, 0xa3, 0x10, 0xb9, 0x3e, 0xa3, 0x51, 0x13, 0xd3, 0xfe, 0xb5, 0x69, 0x24, 0x68, 0x18, 0xf3, 0xb5, 0x6b, 0xd3, 0xb7, 0x5d, 0xc7, 0x24, 0x6f, 0xa9, 0x5c, 0xd0, 0x51, 0x41, 0x65, 0x93, 0xa0, 0x90, 0x94, 0xc6, 0x2a, 0x94, 0x6e, 0x48, 0x6d, 0x30, 0x5b, 0x01, 0xbd, 0x4b, 0xe2, 0xc7, 0xf8, 0x55, 0xee, 0x71, 0xc2, 0xda, 0x5c, 0xbf, 0x97, 0xdb, 0xb8, 0xfc, 0x23, 0xf6, 0xa8, 0x87, 0xb8, 0xa3, 0x65, 0xaa, 0xf1, 0x91, 0x32, 0x13, 0x94, 0x7e, 0xd4, 0xa0, 0x7e, 0x1e, 0xad, 0x57, 0x41, 0x51, 0x6e, 0x13, 0xeb, 0x70, 0xb6, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8945 = { .name = "ecdsa_secp384r1_sha3_512_8945", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8945_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8945_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8945_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 439 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8946 for ECDSA, tcId is 440 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8946_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_512_8946_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8946_sig[] = { 0xfd, 0xb9, 0x04, 0x42, 0xfe, 0xea, 0x49, 0xf2, 0x80, 0x0a, 0x28, 0xd9, 0x0f, 0x18, 0x42, 0x10, 0x68, 0xb8, 0x06, 0xca, 0x6d, 0x08, 0x8b, 0xec, 0x08, 0xbf, 0xa3, 0xdf, 0x4f, 0xb7, 0xe8, 0x66, 0x10, 0x1d, 0x92, 0xe2, 0x94, 0xd6, 0xe8, 0xb9, 0x8f, 0x2e, 0xfb, 0x52, 0xe5, 0x7c, 0x8f, 0xe5, 0x35, 0x1f, 0x50, 0x65, 0xb6, 0x9f, 0x2a, 0xa5, 0x40, 0xd5, 0x0e, 0x55, 0x19, 0x65, 0xfb, 0x8a, 0x05, 0xbf, 0xab, 0xe9, 0xa4, 0x67, 0x06, 0x82, 0xae, 0xf6, 0x1a, 0x5a, 0xce, 0x5d, 0x5f, 0xd9, 0x31, 0x0a, 0xb4, 0xa5, 0xb0, 0x5f, 0x9c, 0x02, 0xf3, 0x75, 0xce, 0x0b, 0x5b, 0x6b, 0xd8, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8946 = { .name = "ecdsa_secp384r1_sha3_512_8946", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8946_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8946_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8946_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 440 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8947 for ECDSA, tcId is 441 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8947_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha3_512_8947_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8947_sig[] = { 0xc1, 0x83, 0xe7, 0xb5, 0x48, 0xdc, 0xf2, 0x66, 0x8e, 0x74, 0x14, 0xcf, 0x5f, 0xbb, 0x82, 0xc0, 0x15, 0x8d, 0x3a, 0xc4, 0xe7, 0x6a, 0x78, 0x62, 0x80, 0x76, 0x82, 0xd9, 0x54, 0xa0, 0x81, 0x64, 0x82, 0xa6, 0x01, 0xe6, 0xb6, 0xdd, 0xf7, 0x28, 0x89, 0x9b, 0xc6, 0x18, 0x77, 0x74, 0xbc, 0x09, 0x52, 0x9f, 0x8b, 0x1e, 0x60, 0xc9, 0xf6, 0x41, 0xf3, 0x80, 0xa3, 0xf0, 0xaa, 0x39, 0xed, 0x7e, 0xef, 0x78, 0x28, 0xa9, 0x43, 0xc9, 0x77, 0xa2, 0x56, 0x2a, 0x41, 0xee, 0xff, 0x04, 0x0b, 0x87, 0x1d, 0x42, 0x2b, 0x9b, 0x56, 0x61, 0xd1, 0x2d, 0x60, 0x5f, 0x96, 0x3e, 0xb0, 0x57, 0x4f, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8947 = { .name = "ecdsa_secp384r1_sha3_512_8947", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8947_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8947_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8947_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 441 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8948 for ECDSA, tcId is 442 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8948_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_512_8948_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8948_sig[] = { 0x7a, 0x29, 0xd1, 0x80, 0xb7, 0x5d, 0x66, 0x17, 0x76, 0xed, 0x0e, 0x5d, 0x0a, 0x72, 0x07, 0x92, 0xa8, 0x8b, 0x54, 0x29, 0xe8, 0xd6, 0x96, 0x14, 0x65, 0xd5, 0xbc, 0xc8, 0x71, 0x09, 0x41, 0x41, 0x44, 0x1c, 0x37, 0xb9, 0x96, 0xcd, 0x0f, 0x9f, 0xd0, 0x5a, 0x1b, 0x42, 0x21, 0x06, 0x48, 0xfe, 0xe4, 0xa5, 0x59, 0x27, 0x23, 0x07, 0xa3, 0x7b, 0xca, 0x80, 0x3b, 0xa8, 0x30, 0x6b, 0xdd, 0x42, 0xbc, 0x8f, 0xd1, 0xe6, 0x2e, 0x21, 0xdf, 0x17, 0x8c, 0x7f, 0x9a, 0xc3, 0x50, 0x03, 0xd0, 0x5c, 0xcf, 0x30, 0x38, 0x85, 0xa4, 0x8c, 0x3f, 0xc8, 0xc8, 0xd2, 0xbc, 0x16, 0x77, 0xc8, 0xf0, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8948 = { .name = "ecdsa_secp384r1_sha3_512_8948", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8948_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8948_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8948_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 442 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8949 for ECDSA, tcId is 443 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8949_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_512_8949_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8949_sig[] = { 0xad, 0x44, 0xba, 0xfd, 0x37, 0xa9, 0xf2, 0x0b, 0x1c, 0x27, 0x3f, 0xc6, 0x04, 0xf6, 0x1e, 0xc6, 0x87, 0x59, 0xd9, 0x56, 0xc4, 0x7d, 0x25, 0x78, 0x7d, 0x74, 0x92, 0x5b, 0x54, 0xad, 0x8d, 0x32, 0xf9, 0x5a, 0xd4, 0x9d, 0x1f, 0x6e, 0xaa, 0x84, 0x7c, 0xc1, 0xfb, 0xb4, 0x05, 0x00, 0x8d, 0xf7, 0x3b, 0x90, 0x3e, 0x99, 0x8f, 0x4d, 0x28, 0x15, 0x6d, 0xd6, 0x6e, 0x79, 0x54, 0xfb, 0x10, 0xd2, 0xa5, 0xa7, 0xf1, 0xf7, 0x0e, 0x84, 0x02, 0x17, 0x7c, 0xdd, 0xf5, 0x57, 0x77, 0x37, 0xbf, 0x63, 0x39, 0x09, 0xb3, 0x03, 0x70, 0x80, 0xac, 0xc4, 0x69, 0xfb, 0x6a, 0xe5, 0xf0, 0xb3, 0x3e, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8949 = { .name = "ecdsa_secp384r1_sha3_512_8949", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8949_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8949_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8949_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 443 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8950 for ECDSA, tcId is 444 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8950_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha3_512_8950_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8950_sig[] = { 0x7a, 0x2f, 0xa7, 0x50, 0x71, 0x9b, 0x0b, 0x3a, 0x34, 0x2a, 0x72, 0x56, 0xfb, 0x4e, 0x27, 0x4a, 0x37, 0x83, 0xda, 0x35, 0x69, 0xfc, 0xd6, 0x44, 0x2e, 0x34, 0x52, 0xf3, 0x5b, 0xd5, 0x7c, 0xb6, 0x69, 0xfc, 0x9f, 0x93, 0x50, 0x08, 0x39, 0xa2, 0xb7, 0x6c, 0x37, 0xa9, 0x86, 0xef, 0x6c, 0xb8, 0x34, 0xd8, 0xea, 0x62, 0x22, 0x2b, 0x7c, 0x3b, 0x71, 0xb7, 0x76, 0xc3, 0x22, 0xd2, 0xbe, 0x02, 0x16, 0x21, 0xfa, 0xd3, 0xac, 0xa0, 0xa1, 0xcc, 0xcf, 0xbb, 0x1f, 0x39, 0x0e, 0xd1, 0x71, 0x15, 0x8a, 0x09, 0x19, 0xe5, 0x45, 0x4c, 0xad, 0x6c, 0xed, 0xf8, 0x1a, 0xd8, 0x22, 0x8c, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8950 = { .name = "ecdsa_secp384r1_sha3_512_8950", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8950_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8950_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8950_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 444 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8951 for ECDSA, tcId is 445 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8951_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_512_8951_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8951_sig[] = { 0x6b, 0xf1, 0x05, 0x61, 0x1b, 0xed, 0x56, 0x1b, 0xd2, 0xf7, 0x1d, 0x1e, 0xf2, 0xd6, 0x16, 0x3a, 0x1a, 0x61, 0x96, 0x5a, 0xaf, 0x7f, 0xe0, 0x22, 0x00, 0x77, 0xba, 0x91, 0xac, 0x41, 0xc4, 0xf4, 0x37, 0xbb, 0xf3, 0x41, 0x35, 0xf7, 0x8f, 0x0d, 0x6c, 0x97, 0x48, 0xc8, 0x85, 0x2c, 0xde, 0xbe, 0xed, 0x57, 0x43, 0x98, 0x67, 0x5a, 0xca, 0x01, 0x48, 0x63, 0xca, 0xcf, 0xc6, 0xd4, 0x82, 0x9a, 0x0f, 0x3a, 0xdf, 0x8e, 0xd0, 0xa0, 0x7b, 0xa7, 0x83, 0x0e, 0x5b, 0x74, 0xc3, 0xef, 0xeb, 0xb5, 0x95, 0xd5, 0xf3, 0x41, 0xa9, 0x17, 0x56, 0x2a, 0xaa, 0x6f, 0x76, 0xba, 0xa2, 0x32, 0x01, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8951 = { .name = "ecdsa_secp384r1_sha3_512_8951", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8951_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8951_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8951_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 445 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8952 for ECDSA, tcId is 446 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8952_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_512_8952_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8952_sig[] = { 0x5c, 0x79, 0x37, 0x8a, 0xc4, 0x1d, 0x75, 0xa8, 0x79, 0x9f, 0x8e, 0x2f, 0x41, 0xd9, 0x73, 0x4f, 0xf5, 0xa3, 0xd4, 0xc2, 0xcb, 0xe0, 0x53, 0x1d, 0x1e, 0x4d, 0xa8, 0x6b, 0x23, 0xd2, 0x8a, 0xdd, 0x9e, 0xdd, 0x67, 0x54, 0xb9, 0x20, 0x51, 0x4e, 0x10, 0xc1, 0xd3, 0xe0, 0x91, 0xa8, 0x76, 0xe2, 0x57, 0x25, 0xb3, 0xc6, 0xae, 0x8a, 0x00, 0x1f, 0xe2, 0x3f, 0x6f, 0x90, 0x2d, 0xf8, 0xff, 0x5a, 0xe3, 0x72, 0x1c, 0x5b, 0x79, 0x0d, 0x7a, 0x61, 0xec, 0x89, 0x3d, 0xf7, 0xdd, 0xde, 0xe3, 0x6f, 0xcc, 0x09, 0xeb, 0x01, 0xb1, 0x9b, 0x62, 0xbd, 0x2d, 0xd8, 0xe1, 0xe9, 0x9f, 0x09, 0x02, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8952 = { .name = "ecdsa_secp384r1_sha3_512_8952", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8952_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8952_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8952_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 446 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8953 for ECDSA, tcId is 447 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8953_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha3_512_8953_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8953_sig[] = { 0xea, 0x45, 0xd1, 0x8c, 0x2d, 0x84, 0x64, 0x6a, 0xd4, 0xbf, 0x83, 0x4b, 0xa4, 0x84, 0x90, 0x9e, 0x79, 0xd1, 0x2a, 0x8a, 0xca, 0xa2, 0xe2, 0x18, 0xfb, 0xf8, 0x1e, 0xf6, 0x62, 0xad, 0x3f, 0x3e, 0xe5, 0xf0, 0x44, 0xde, 0xa8, 0x0f, 0x06, 0xf0, 0xfc, 0xa3, 0x84, 0xfc, 0xbf, 0x42, 0xf2, 0x08, 0x69, 0x9a, 0xd3, 0x7f, 0x22, 0x3a, 0xba, 0x03, 0xda, 0xf8, 0x8e, 0x1a, 0x8b, 0xde, 0x46, 0xa8, 0x71, 0x23, 0x1c, 0xf5, 0x69, 0x59, 0xd2, 0x37, 0x60, 0xba, 0xf0, 0xf3, 0x63, 0xfc, 0x8d, 0xe7, 0x7c, 0xee, 0x69, 0x09, 0x09, 0x1c, 0x58, 0xa7, 0xcb, 0xa9, 0x41, 0x9d, 0x50, 0x92, 0x8f, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8953 = { .name = "ecdsa_secp384r1_sha3_512_8953", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8953_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8953_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8953_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 447 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8954 for ECDSA, tcId is 448 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8954_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_512_8954_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8954_sig[] = { 0x82, 0x52, 0x6f, 0xe3, 0x46, 0x5a, 0x1a, 0x35, 0x14, 0xc0, 0xdc, 0x39, 0xfc, 0xa2, 0x7e, 0xb0, 0xfc, 0x2c, 0x7a, 0x86, 0x66, 0xf8, 0xdf, 0xff, 0xcf, 0xd1, 0xf8, 0x09, 0xd6, 0x21, 0xf3, 0xbb, 0x77, 0x5f, 0x2d, 0xf3, 0xfb, 0xd9, 0x43, 0x4b, 0xb6, 0xb9, 0x9e, 0x16, 0x93, 0xf5, 0x03, 0x7c, 0xee, 0xc5, 0x3f, 0xc8, 0xb5, 0x29, 0xa4, 0xb2, 0x83, 0x13, 0x7e, 0x71, 0x36, 0x31, 0x7d, 0x77, 0x57, 0x7e, 0x94, 0x2f, 0x32, 0x5f, 0xe1, 0x84, 0x87, 0x56, 0x81, 0x86, 0x37, 0x28, 0x9b, 0xce, 0xef, 0x76, 0xb6, 0x99, 0xb7, 0xee, 0xe6, 0x18, 0x1b, 0x25, 0x88, 0x10, 0xf9, 0x10, 0xab, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8954 = { .name = "ecdsa_secp384r1_sha3_512_8954", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8954_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8954_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8954_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 448 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8955 for ECDSA, tcId is 449 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8955_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_512_8955_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8955_sig[] = { 0x33, 0xf8, 0xce, 0x53, 0xcb, 0x49, 0x4e, 0x37, 0x7f, 0xb3, 0x51, 0xed, 0xd3, 0xa9, 0x0e, 0x6d, 0x8a, 0x82, 0x00, 0x7a, 0x39, 0x68, 0x60, 0x42, 0xc3, 0x51, 0x37, 0xe5, 0xf6, 0xc6, 0xb5, 0x0e, 0x92, 0xea, 0x64, 0x26, 0xdc, 0x07, 0x25, 0x7f, 0x4e, 0x28, 0x33, 0x66, 0x9c, 0x98, 0xaf, 0x50, 0x9d, 0x3c, 0x8a, 0xea, 0x4d, 0x60, 0x17, 0x02, 0x79, 0x14, 0x80, 0xfc, 0xf0, 0xc9, 0xe2, 0x8e, 0x75, 0x7b, 0x04, 0x57, 0xbf, 0x64, 0xe9, 0x52, 0x9c, 0xef, 0x0a, 0x29, 0xf2, 0xc4, 0x07, 0x4d, 0x3e, 0x7b, 0x2d, 0x83, 0x8e, 0xcd, 0x31, 0x13, 0x34, 0xca, 0x67, 0x1e, 0x54, 0x2c, 0x84, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8955 = { .name = "ecdsa_secp384r1_sha3_512_8955", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8955_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8955_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8955_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 449 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8956 for ECDSA, tcId is 450 in file ecdsa_secp384r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp384r1_sha3_512_8956_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha3_512_8956_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha3_512_8956_sig[] = { 0x38, 0x89, 0x7b, 0xbc, 0xf7, 0xf8, 0x06, 0xe2, 0xc7, 0xd3, 0x2d, 0x93, 0x76, 0x46, 0x2b, 0x0a, 0xc0, 0x97, 0x71, 0x7b, 0x98, 0x4b, 0x3a, 0xcf, 0xdb, 0x66, 0xcb, 0xa4, 0xd2, 0x0f, 0x2e, 0xa3, 0x6f, 0x72, 0x83, 0x42, 0xc2, 0x1e, 0x6e, 0x9a, 0xaa, 0x51, 0x74, 0x16, 0xc2, 0xde, 0xd8, 0x60, 0x07, 0x90, 0xf3, 0xb0, 0xf4, 0xa0, 0xc5, 0x67, 0xac, 0x9f, 0x58, 0xfd, 0xb4, 0x2d, 0x1f, 0xc7, 0x7e, 0xc0, 0x8f, 0xc3, 0x47, 0x73, 0x66, 0x61, 0xcd, 0x73, 0xdd, 0x37, 0x99, 0x3b, 0xaa, 0xd4, 0x5a, 0xf8, 0x9a, 0x26, 0xd4, 0x15, 0x4a, 0x6f, 0xaf, 0xd8, 0x1b, 0x4b, 0xae, 0x06, 0x0e, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha3_512_8956 = { .name = "ecdsa_secp384r1_sha3_512_8956", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha3_512_8956_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha3_512_8956_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha3_512_8956_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 450 in file ecdsa_secp384r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) */ /* Test 8957 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8957_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8957_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x39, 0x95, 0xca, 0x30, 0x24, 0x0e, 0x09, 0x51, 0x38, 0x05, 0xbf, 0x62, 0x09, 0xb5, 0x8a, 0xc7, 0xaa, 0x9c, 0xff, 0x54, 0xee, 0xcd, 0x82, 0xb9, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8957 = { .name = "ecdsa_secp384r1_sha384_8957", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8957_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8957_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8957_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8958 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8958_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8958_sig[] = { 0x01, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xa2, 0x56, 0x17, 0xaa, 0xd7, 0x48, 0x5e, 0x63, 0x12, 0xa8, 0x58, 0x97, 0x14, 0xf6, 0x47, 0xac, 0xf7, 0xa9, 0x4c, 0xff, 0xbe, 0x8a, 0x72, 0x4a, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8958 = { .name = "ecdsa_secp384r1_sha384_8958", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8958_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8958_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8958_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8959 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8959_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8959_sig[] = { 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe5, 0xec, 0x70, 0x83, 0x59, 0x11, 0x25, 0xfd, 0x5b, 0x9d, 0x8b, 0xc2, 0xcd, 0x7c, 0x6b, 0x07, 0x48, 0xe2, 0x2e, 0xe5, 0xd5, 0xda, 0xff, 0xe0, 0x9c, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8959 = { .name = "ecdsa_secp384r1_sha384_8959", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8959_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8959_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8959_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8960 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8960_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8960_sig[] = { 0x01, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8960 = { .name = "ecdsa_secp384r1_sha384_8960", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8960_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8960_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8960_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8961 for ECDSA, tcId is 5 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8961_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8961_sig[] = { 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe6, 0x25, 0x0d, 0x35, 0xd7, 0x1c, 0xee, 0xcf, 0x7c, 0x45, 0x71, 0xb5, 0x1b, 0x33, 0xba, 0x5f, 0xcd, 0xf5, 0x42, 0xcc, 0x6b, 0x0e, 0x3a, 0xb7, 0x29, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8961 = { .name = "ecdsa_secp384r1_sha384_8961", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8961_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8961_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8961_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8962 for ECDSA, tcId is 6 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8962_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8962_sig[] = { 0x00, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x01, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc5, 0xf8, 0xfc, 0x6a, 0xdf, 0xda, 0x65, 0x0a, 0x86, 0xaa, 0x74, 0xb9, 0x5a, 0xdb, 0xd6, 0x87, 0x4b, 0x3c, 0xd8, 0xdd, 0xe6, 0xcc, 0x07, 0x98, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8962 = { .name = "ecdsa_secp384r1_sha384_8962", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8962_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8962_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8962_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8963 for ECDSA, tcId is 7 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8963_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8963_sig[] = { 0x00, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x01, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8963 = { .name = "ecdsa_secp384r1_sha384_8963", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8963_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8963_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8963_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8964 for ECDSA, tcId is 8 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8964_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8964_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x39, 0xce, 0x66, 0xe2, 0xa2, 0x19, 0xd2, 0x23, 0x58, 0xad, 0xa5, 0x54, 0x57, 0x6c, 0xda, 0x20, 0x2f, 0xb0, 0x13, 0x3b, 0x84, 0x00, 0xbd, 0x90, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8964 = { .name = "ecdsa_secp384r1_sha384_8964", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8964_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8964_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8964_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8965 for ECDSA, tcId is 9 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8965_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8965_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8965 = { .name = "ecdsa_secp384r1_sha384_8965", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8965_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8965_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8965_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8966 for ECDSA, tcId is 10 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8966_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8966_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8966 = { .name = "ecdsa_secp384r1_sha384_8966", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8966_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8966_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8966_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8967 for ECDSA, tcId is 11 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8967_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8967_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8967 = { .name = "ecdsa_secp384r1_sha384_8967", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8967_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8967_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8967_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8968 for ECDSA, tcId is 12 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8968_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8968_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8968 = { .name = "ecdsa_secp384r1_sha384_8968", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8968_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8968_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8968_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8969 for ECDSA, tcId is 13 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8969_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8969_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8969 = { .name = "ecdsa_secp384r1_sha384_8969", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8969_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8969_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8969_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8970 for ECDSA, tcId is 14 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8970_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8970_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8970 = { .name = "ecdsa_secp384r1_sha384_8970", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8970_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8970_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8970_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8971 for ECDSA, tcId is 15 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8971_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8971_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8971 = { .name = "ecdsa_secp384r1_sha384_8971", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8971_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8971_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8971_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8972 for ECDSA, tcId is 16 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8972_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8972_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8972 = { .name = "ecdsa_secp384r1_sha384_8972", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8972_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8972_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8972_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8973 for ECDSA, tcId is 17 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8973_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8973_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8973 = { .name = "ecdsa_secp384r1_sha384_8973", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8973_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8973_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8973_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8974 for ECDSA, tcId is 18 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8974_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8974_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8974 = { .name = "ecdsa_secp384r1_sha384_8974", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8974_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8974_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8974_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8975 for ECDSA, tcId is 19 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8975_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8975_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8975 = { .name = "ecdsa_secp384r1_sha384_8975", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8975_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8975_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8975_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8976 for ECDSA, tcId is 20 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8976_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8976_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8976 = { .name = "ecdsa_secp384r1_sha384_8976", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8976_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8976_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8976_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8977 for ECDSA, tcId is 21 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8977_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8977_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8977 = { .name = "ecdsa_secp384r1_sha384_8977", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8977_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8977_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8977_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8978 for ECDSA, tcId is 22 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8978_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8978_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8978 = { .name = "ecdsa_secp384r1_sha384_8978", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8978_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8978_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8978_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8979 for ECDSA, tcId is 23 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8979_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8979_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8979_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8979 = { .name = "ecdsa_secp384r1_sha384_8979", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8979_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8979_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8979_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8980 for ECDSA, tcId is 24 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8980_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8980_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8980_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8980 = { .name = "ecdsa_secp384r1_sha384_8980", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8980_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8980_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8980_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8981 for ECDSA, tcId is 25 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8981_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8981_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8981 = { .name = "ecdsa_secp384r1_sha384_8981", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8981_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8981_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8981_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8982 for ECDSA, tcId is 26 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8982_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8982_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8982_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8982 = { .name = "ecdsa_secp384r1_sha384_8982", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8982_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8982_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8982_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8983 for ECDSA, tcId is 27 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8983_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8983_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8983_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8983 = { .name = "ecdsa_secp384r1_sha384_8983", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8983_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8983_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8983_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8984 for ECDSA, tcId is 28 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8984_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8984_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8984_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8984 = { .name = "ecdsa_secp384r1_sha384_8984", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8984_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8984_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8984_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8985 for ECDSA, tcId is 29 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8985_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8985_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8985_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8985 = { .name = "ecdsa_secp384r1_sha384_8985", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8985_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8985_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8985_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8986 for ECDSA, tcId is 30 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8986_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8986_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8986_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8986 = { .name = "ecdsa_secp384r1_sha384_8986", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8986_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8986_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8986_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8987 for ECDSA, tcId is 31 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8987_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8987_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8987 = { .name = "ecdsa_secp384r1_sha384_8987", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8987_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8987_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8987_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8988 for ECDSA, tcId is 32 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8988_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8988_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8988_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8988 = { .name = "ecdsa_secp384r1_sha384_8988", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8988_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8988_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8988_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8989 for ECDSA, tcId is 33 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8989_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8989_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8989 = { .name = "ecdsa_secp384r1_sha384_8989", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8989_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8989_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8989_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8990 for ECDSA, tcId is 34 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8990_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8990_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8990_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8990 = { .name = "ecdsa_secp384r1_sha384_8990", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8990_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8990_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8990_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8991 for ECDSA, tcId is 35 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8991_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8991_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8991_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8991 = { .name = "ecdsa_secp384r1_sha384_8991", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8991_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8991_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8991_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8992 for ECDSA, tcId is 36 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8992_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8992_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8992_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8992 = { .name = "ecdsa_secp384r1_sha384_8992", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8992_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8992_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8992_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8993 for ECDSA, tcId is 37 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8993_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8993_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8993 = { .name = "ecdsa_secp384r1_sha384_8993", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8993_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8993_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8993_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8994 for ECDSA, tcId is 38 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8994_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8994_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8994_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8994 = { .name = "ecdsa_secp384r1_sha384_8994", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8994_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8994_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8994_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8995 for ECDSA, tcId is 39 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8995_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8995_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8995_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8995 = { .name = "ecdsa_secp384r1_sha384_8995", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8995_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8995_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8995_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8996 for ECDSA, tcId is 40 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8996_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8996_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8996_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8996 = { .name = "ecdsa_secp384r1_sha384_8996", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8996_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8996_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8996_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8997 for ECDSA, tcId is 41 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8997_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8997_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8997_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8997 = { .name = "ecdsa_secp384r1_sha384_8997", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8997_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8997_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8997_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8998 for ECDSA, tcId is 42 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8998_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8998_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8998_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8998 = { .name = "ecdsa_secp384r1_sha384_8998", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8998_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8998_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8998_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 8999 for ECDSA, tcId is 43 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_8999_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_8999_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_8999_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_8999 = { .name = "ecdsa_secp384r1_sha384_8999", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_8999_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_8999_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_8999_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9000 for ECDSA, tcId is 44 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9000_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9000_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9000_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9000 = { .name = "ecdsa_secp384r1_sha384_9000", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9000_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9000_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9000_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9001 for ECDSA, tcId is 45 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9001_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9001_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9001_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9001 = { .name = "ecdsa_secp384r1_sha384_9001", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9001_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9001_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9001_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9002 for ECDSA, tcId is 46 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9002_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9002_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9002_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9002 = { .name = "ecdsa_secp384r1_sha384_9002", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9002_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9002_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9002_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9003 for ECDSA, tcId is 47 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9003_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9003_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9003_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9003 = { .name = "ecdsa_secp384r1_sha384_9003", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9003_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9003_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9003_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9004 for ECDSA, tcId is 48 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9004_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9004_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9004 = { .name = "ecdsa_secp384r1_sha384_9004", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9004_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9004_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9004_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9005 for ECDSA, tcId is 49 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9005_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9005_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9005 = { .name = "ecdsa_secp384r1_sha384_9005", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9005_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9005_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9005_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9006 for ECDSA, tcId is 50 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9006_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9006_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9006 = { .name = "ecdsa_secp384r1_sha384_9006", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9006_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9006_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9006_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9007 for ECDSA, tcId is 51 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9007_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9007_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9007 = { .name = "ecdsa_secp384r1_sha384_9007", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9007_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9007_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9007_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9008 for ECDSA, tcId is 52 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9008_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9008_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9008 = { .name = "ecdsa_secp384r1_sha384_9008", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9008_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9008_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9008_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9009 for ECDSA, tcId is 53 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9009_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9009_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9009 = { .name = "ecdsa_secp384r1_sha384_9009", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9009_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9009_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9009_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9010 for ECDSA, tcId is 54 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9010_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9010_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9010 = { .name = "ecdsa_secp384r1_sha384_9010", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9010_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9010_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9010_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9011 for ECDSA, tcId is 55 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9011_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9011_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9011 = { .name = "ecdsa_secp384r1_sha384_9011", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9011_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9011_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9011_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9012 for ECDSA, tcId is 56 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9012_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9012_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9012 = { .name = "ecdsa_secp384r1_sha384_9012", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9012_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9012_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9012_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9013 for ECDSA, tcId is 57 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9013_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9013_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9013 = { .name = "ecdsa_secp384r1_sha384_9013", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9013_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9013_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9013_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9014 for ECDSA, tcId is 58 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9014_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9014_msg[] = { 0x31, 0x33, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9014_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0xbd, 0x77, 0x0d, 0x3e, 0xe4, 0xbe, 0xad, 0xba, 0xbe, 0x7c, 0xa4, 0x6e, 0x8c, 0x47, 0x02, 0x78, 0x34, 0x35, 0x22, 0x8d, 0x46, 0xe2, 0xdd, 0x36, 0x0e, 0x32, 0x2f, 0xe6, 0x1c, 0x86, 0x92, 0x6f, 0xa4, 0x9c, 0x81, 0x16, 0xec, 0x94, 0x0f, 0x72, 0xac, 0x8c, 0x30, 0xd9, 0xbe, 0xb3, 0xe1, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9014 = { .name = "ecdsa_secp384r1_sha384_9014", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9014_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9014_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha384_9014_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9015 for ECDSA, tcId is 59 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9015_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9015_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9015_sig[] = { 0xd3, 0x29, 0x8a, 0x01, 0x93, 0xc4, 0x31, 0x6b, 0x34, 0xe3, 0x83, 0x3f, 0xf7, 0x64, 0xa8, 0x2c, 0xff, 0x4e, 0xf5, 0x7b, 0x5d, 0xd7, 0x9e, 0xd6, 0x23, 0x7b, 0x51, 0xff, 0x76, 0xce, 0xab, 0x13, 0xbf, 0x92, 0x13, 0x1f, 0x41, 0x03, 0x05, 0x15, 0xb7, 0xe0, 0x12, 0xd2, 0xba, 0x85, 0x78, 0x30, 0xbf, 0xc7, 0x51, 0x8d, 0x2a, 0xd2, 0x0e, 0xd5, 0xf5, 0x8f, 0x3b, 0xe7, 0x97, 0x20, 0xf1, 0x86, 0x6f, 0x7a, 0x23, 0xb3, 0xbd, 0x1b, 0xf9, 0x13, 0xd3, 0x91, 0x68, 0x19, 0xd0, 0x08, 0x49, 0x7a, 0x07, 0x10, 0x46, 0x31, 0x1d, 0x3c, 0x2f, 0xd0, 0x5f, 0xc2, 0x84, 0xc9, 0x64, 0xa3, 0x96, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9015 = { .name = "ecdsa_secp384r1_sha384_9015", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9015_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9015_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9015_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9016 for ECDSA, tcId is 60 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9016_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9016_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9016_sig[] = { 0xe1, 0x4f, 0x41, 0xa5, 0xfc, 0x83, 0xaa, 0x47, 0x25, 0xa9, 0xea, 0x60, 0xab, 0x5b, 0x0b, 0x9d, 0xe2, 0x7f, 0x51, 0x9a, 0xf4, 0xb5, 0x57, 0xa6, 0x01, 0xf1, 0xfe, 0xe0, 0x24, 0x3f, 0x8e, 0xee, 0x51, 0x80, 0xf8, 0xc5, 0x31, 0x41, 0x4f, 0x34, 0x73, 0xf4, 0x45, 0x74, 0x30, 0xcb, 0x7a, 0x26, 0x10, 0x47, 0xed, 0x2b, 0xf1, 0xf9, 0x8e, 0x3c, 0xe9, 0x3e, 0x8f, 0xdb, 0xdc, 0x63, 0xcc, 0x79, 0xf2, 0x38, 0x99, 0x8f, 0xee, 0x74, 0xe1, 0xbb, 0x6c, 0xd7, 0x08, 0x69, 0x49, 0x50, 0xbb, 0xff, 0xe3, 0x94, 0x50, 0x66, 0x06, 0x4d, 0xa0, 0x43, 0xf0, 0x4d, 0x70, 0x83, 0xd0, 0xa5, 0x96, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9016 = { .name = "ecdsa_secp384r1_sha384_9016", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9016_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9016_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha384_9016_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9017 for ECDSA, tcId is 61 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9017_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9017_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9017_sig[] = { 0xb7, 0xc8, 0xb5, 0xcf, 0x63, 0x1a, 0x96, 0xad, 0x90, 0x8d, 0x6a, 0x8c, 0x8d, 0x0e, 0x0a, 0x35, 0xfc, 0xc2, 0x2a, 0x5a, 0x36, 0x05, 0x02, 0x30, 0xb6, 0x65, 0x93, 0x27, 0x64, 0xae, 0x45, 0xbd, 0x84, 0xcb, 0x87, 0xeb, 0xba, 0x8e, 0x44, 0x4a, 0xbd, 0x89, 0xe4, 0x48, 0x3f, 0xc9, 0xc4, 0xa8, 0xa1, 0x16, 0x36, 0xc0, 0x95, 0xaa, 0x9b, 0xc6, 0x9c, 0xf2, 0x4b, 0x50, 0xa0, 0xa9, 0xe5, 0x37, 0x7d, 0x0f, 0xfb, 0xba, 0x4f, 0xab, 0x54, 0x33, 0x15, 0x9f, 0x00, 0x6a, 0xb4, 0x56, 0x3d, 0x55, 0xe9, 0x18, 0x49, 0x30, 0x20, 0xa1, 0x96, 0x91, 0x57, 0x4e, 0x4d, 0x1e, 0x66, 0xe3, 0x97, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9017 = { .name = "ecdsa_secp384r1_sha384_9017", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9017_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9017_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9017_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9018 for ECDSA, tcId is 62 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9018_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9018_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9018_sig[] = { 0x4a, 0x7d, 0xf2, 0xdf, 0x6a, 0x32, 0xd5, 0x9b, 0x6b, 0xfe, 0xd5, 0x4f, 0x03, 0x2c, 0x3d, 0x6f, 0x3a, 0xcd, 0x3a, 0xc4, 0x06, 0x37, 0x04, 0x09, 0x9c, 0xd1, 0x62, 0xab, 0x39, 0x08, 0xe8, 0xee, 0xba, 0x4e, 0x97, 0x3e, 0xe7, 0x5b, 0x5e, 0x28, 0x5d, 0xd5, 0x72, 0x06, 0x23, 0x38, 0xfe, 0x58, 0x35, 0x36, 0x5b, 0xe3, 0x27, 0xe2, 0x46, 0x3d, 0xc7, 0x59, 0x95, 0x1c, 0x5c, 0x0b, 0xe5, 0xe3, 0xd0, 0x94, 0xcb, 0x70, 0x69, 0x12, 0xfd, 0xf7, 0xd2, 0x6b, 0x15, 0xd4, 0xa5, 0xc4, 0x2f, 0xfe, 0xbe, 0xca, 0x5a, 0xe7, 0x3a, 0x18, 0x23, 0xf5, 0xe6, 0x5d, 0x57, 0x1b, 0x4c, 0xcf, 0x1a, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9018 = { .name = "ecdsa_secp384r1_sha384_9018", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9018_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9018_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9018_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9019 for ECDSA, tcId is 63 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9019_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9019_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9019_sig[] = { 0x9a, 0xd3, 0x63, 0xa1, 0xbb, 0xc6, 0x7c, 0x57, 0xc8, 0x2a, 0x37, 0x8e, 0x98, 0x8c, 0xc0, 0x83, 0xcc, 0x91, 0xf8, 0xb3, 0x27, 0x39, 0xec, 0x64, 0x7c, 0x0c, 0xb3, 0x48, 0xfb, 0x5c, 0x86, 0x47, 0x20, 0x15, 0x13, 0x1a, 0x7d, 0x90, 0x83, 0xbf, 0x47, 0x40, 0xaf, 0x33, 0x51, 0x75, 0x51, 0x95, 0xd3, 0x10, 0xdc, 0x15, 0x09, 0xf8, 0xc0, 0x02, 0x81, 0xef, 0xe5, 0x71, 0x76, 0x8d, 0x48, 0x80, 0x27, 0xea, 0x76, 0x0f, 0xe3, 0x29, 0x71, 0xf6, 0xcb, 0x7b, 0x57, 0xcd, 0xf9, 0x06, 0x21, 0xb7, 0xd0, 0x08, 0x6e, 0x26, 0x44, 0x3d, 0x37, 0x61, 0xdf, 0x7a, 0xa3, 0xa4, 0xec, 0xcc, 0x6c, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9019 = { .name = "ecdsa_secp384r1_sha384_9019", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9019_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9019_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9019_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9020 for ECDSA, tcId is 64 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9020_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9020_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9020_sig[] = { 0x95, 0x07, 0x8a, 0xf5, 0xc2, 0xac, 0x23, 0x02, 0x39, 0x55, 0x7f, 0x5f, 0xce, 0xe2, 0xe7, 0x12, 0xa7, 0x03, 0x4e, 0x95, 0x43, 0x7a, 0x9b, 0x34, 0xc1, 0x69, 0x2a, 0x81, 0x27, 0x0e, 0xdc, 0xf8, 0xdd, 0xd5, 0xab, 0xa1, 0x13, 0x8a, 0x42, 0x01, 0x26, 0x63, 0xe5, 0xf8, 0x1c, 0x9b, 0xea, 0xe2, 0x40, 0xee, 0x51, 0x0a, 0x0c, 0xce, 0xb8, 0x51, 0x8a, 0xd4, 0xf6, 0x18, 0x59, 0x91, 0x64, 0xda, 0x0f, 0x3b, 0xa7, 0x5e, 0xce, 0xea, 0xc2, 0x16, 0x21, 0x6e, 0xc6, 0x2b, 0xcc, 0xea, 0xe8, 0xdc, 0x98, 0xb5, 0xe3, 0x5b, 0x2e, 0x7e, 0xd4, 0x7c, 0x4b, 0x8e, 0xba, 0xcf, 0xe8, 0x4a, 0x74, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9020 = { .name = "ecdsa_secp384r1_sha384_9020", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9020_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9020_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9020_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9021 for ECDSA, tcId is 65 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9021_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9021_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9021_sig[] = { 0xa5, 0x38, 0x07, 0x63, 0x62, 0x04, 0x3d, 0xe5, 0x48, 0x64, 0x46, 0x4c, 0x14, 0xa6, 0xc1, 0xc3, 0xa4, 0x78, 0x44, 0x37, 0x26, 0xc1, 0x30, 0x9a, 0x36, 0xb9, 0xe9, 0xea, 0x15, 0x92, 0xb4, 0x0c, 0x3f, 0x3f, 0x90, 0xd1, 0x95, 0xbd, 0x29, 0x80, 0x04, 0xa7, 0x1e, 0x8f, 0x28, 0x5e, 0x09, 0x3a, 0xd7, 0x4f, 0x97, 0xef, 0x38, 0x46, 0x85, 0x15, 0xa8, 0xc9, 0x27, 0xa4, 0x50, 0x27, 0x5c, 0x14, 0xdc, 0x16, 0xdd, 0xbd, 0xd9, 0x2b, 0x3a, 0x5c, 0xae, 0x80, 0x4b, 0xe2, 0x0d, 0x29, 0xc6, 0x82, 0x12, 0x92, 0x47, 0xd2, 0xe0, 0x1d, 0x37, 0xda, 0xbe, 0x38, 0xff, 0xb7, 0x48, 0x08, 0xa8, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9021 = { .name = "ecdsa_secp384r1_sha384_9021", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9021_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9021_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9021_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9022 for ECDSA, tcId is 66 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9022_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9022_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9022_sig[] = { 0xbb, 0xe8, 0x35, 0x11, 0x3f, 0x8e, 0xa4, 0xdc, 0x46, 0x9f, 0x02, 0x83, 0xaf, 0x66, 0x03, 0xf3, 0xd7, 0xa3, 0xa2, 0x22, 0xb3, 0xab, 0x5a, 0x93, 0xdb, 0x56, 0x00, 0x7e, 0xf2, 0xdc, 0x07, 0xc9, 0x79, 0x88, 0xfc, 0x7b, 0x8b, 0x83, 0x30, 0x57, 0xfa, 0x3f, 0xbf, 0x97, 0x41, 0x3b, 0x6c, 0x15, 0x73, 0x7c, 0x31, 0x63, 0x20, 0xb6, 0x10, 0x02, 0xc2, 0xac, 0xb1, 0x84, 0xd8, 0x2e, 0x60, 0xe4, 0x6b, 0xd2, 0x12, 0x9a, 0x9b, 0xbf, 0x56, 0x3c, 0x80, 0xda, 0x42, 0x31, 0x21, 0xc1, 0x61, 0xde, 0xcd, 0x36, 0x35, 0x18, 0xb2, 0x60, 0xaa, 0xac, 0xf3, 0x73, 0x4c, 0x1e, 0xf9, 0xfa, 0xa9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9022 = { .name = "ecdsa_secp384r1_sha384_9022", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9022_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9022_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9022_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9023 for ECDSA, tcId is 67 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9023_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9023_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9023_sig[] = { 0x67, 0x9c, 0x36, 0x40, 0xad, 0x8f, 0xfe, 0x95, 0x77, 0xd9, 0xb5, 0x9b, 0x18, 0xff, 0x55, 0x98, 0xdb, 0xfe, 0x61, 0x12, 0x2b, 0xba, 0xb8, 0x23, 0x8d, 0x26, 0x89, 0x07, 0xc9, 0x89, 0xcd, 0x94, 0xdc, 0x7f, 0x60, 0x1d, 0x17, 0x48, 0x6a, 0xf9, 0x3f, 0x6d, 0x18, 0x62, 0x4a, 0xa5, 0x24, 0xa3, 0xe8, 0x4d, 0xd1, 0x95, 0x50, 0x2b, 0xdc, 0xdd, 0x77, 0xb7, 0xf5, 0x1d, 0x8c, 0x1e, 0xa7, 0x89, 0x00, 0x69, 0x05, 0x84, 0x4a, 0x0e, 0x18, 0x54, 0x74, 0xaf, 0x1a, 0x58, 0x3b, 0xab, 0x56, 0x4e, 0xe2, 0x3b, 0xe0, 0xbc, 0x49, 0x50, 0x03, 0x90, 0xdc, 0xeb, 0x3d, 0x39, 0x48, 0xf0, 0x67, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9023 = { .name = "ecdsa_secp384r1_sha384_9023", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9023_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9023_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9023_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9024 for ECDSA, tcId is 68 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9024_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9024_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9024_sig[] = { 0xf6, 0xf1, 0xaf, 0xe6, 0xfe, 0xbc, 0xe7, 0x99, 0xcc, 0x9b, 0x75, 0x42, 0x79, 0xf2, 0x49, 0x9f, 0x38, 0x25, 0xc3, 0xe7, 0x89, 0xac, 0xce, 0xf4, 0x6d, 0x3f, 0x06, 0x8e, 0x2b, 0x67, 0x81, 0xfd, 0x50, 0x66, 0x9e, 0x80, 0xc3, 0xc7, 0x29, 0x3a, 0x5c, 0x0c, 0x0a, 0xf4, 0x8e, 0x06, 0x8e, 0x35, 0xf5, 0x9c, 0xc8, 0xc2, 0x22, 0x2e, 0xd6, 0x3b, 0x45, 0x53, 0xf8, 0x14, 0x9e, 0xbe, 0xcc, 0x43, 0xb8, 0x66, 0x71, 0x9b, 0x29, 0x4e, 0xf0, 0x83, 0x2a, 0x12, 0xb3, 0xe3, 0xdb, 0xc8, 0x25, 0xee, 0xab, 0x68, 0xb5, 0x77, 0x96, 0x25, 0xb1, 0x0a, 0xe5, 0x54, 0x14, 0x12, 0xec, 0x29, 0x53, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9024 = { .name = "ecdsa_secp384r1_sha384_9024", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9024_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9024_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9024_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9025 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9025_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9025_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9025_sig[] = { 0xf4, 0x64, 0x96, 0xf6, 0xd4, 0x73, 0xf3, 0xc0, 0x91, 0xa6, 0x8a, 0xaa, 0x37, 0x49, 0x22, 0x0c, 0x84, 0x00, 0x61, 0xcd, 0x4f, 0x88, 0x86, 0x13, 0xcc, 0xfe, 0xac, 0x0a, 0xa0, 0x41, 0x1b, 0x45, 0x1e, 0xdb, 0xd4, 0xfa, 0xcb, 0xe3, 0x8d, 0x2d, 0xd9, 0xd6, 0xd0, 0xd0, 0xd2, 0x55, 0xed, 0x34, 0x00, 0xc3, 0xa7, 0x4f, 0xa6, 0x66, 0x6f, 0x58, 0xc4, 0x79, 0x8f, 0x30, 0xc3, 0x77, 0x98, 0x13, 0xe5, 0xc6, 0xd0, 0x8a, 0xc3, 0x1a, 0x79, 0x2c, 0x2d, 0x0f, 0x9c, 0xb7, 0x08, 0x73, 0x3f, 0x26, 0xad, 0x6b, 0xf3, 0xb1, 0xe4, 0x68, 0x15, 0xae, 0x53, 0x6a, 0xa1, 0x51, 0x68, 0x0b, 0xde, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9025 = { .name = "ecdsa_secp384r1_sha384_9025", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9025_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9025_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9025_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9026 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9026_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9026_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9026_sig[] = { 0xdf, 0x8b, 0x8e, 0x4c, 0xb1, 0xbc, 0x4e, 0xc6, 0x9c, 0xb1, 0x47, 0x2f, 0xa5, 0xa8, 0x1c, 0x36, 0x64, 0x2e, 0xd4, 0x7f, 0xc6, 0xce, 0x56, 0x00, 0x33, 0xc4, 0xf7, 0xcb, 0x0b, 0xc8, 0x45, 0x9b, 0x57, 0x88, 0xe3, 0x4c, 0xaa, 0x7d, 0x96, 0xe6, 0x07, 0x11, 0x88, 0xe4, 0x49, 0xf0, 0x20, 0x7a, 0x8b, 0x8e, 0xe0, 0x17, 0x79, 0x62, 0xa4, 0x89, 0x93, 0x8f, 0x3f, 0xef, 0xfa, 0xe5, 0x57, 0x29, 0xd9, 0xd4, 0x46, 0xfe, 0x43, 0x8c, 0x7c, 0xb9, 0x1e, 0xa5, 0xf6, 0x32, 0xc8, 0x0a, 0xa7, 0x2a, 0x43, 0xb9, 0xb0, 0x4e, 0x6d, 0xe7, 0xff, 0x34, 0xf7, 0x6f, 0x44, 0x25, 0x10, 0x7f, 0xd6, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9026 = { .name = "ecdsa_secp384r1_sha384_9026", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9026_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9026_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9026_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9027 for ECDSA, tcId is 71 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9027_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9027_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9027_sig[] = { 0x8b, 0xb6, 0xa8, 0xec, 0xdc, 0x8b, 0x48, 0x3a, 0xd7, 0xb9, 0xc9, 0x4b, 0xb3, 0x9f, 0x63, 0xb5, 0xfc, 0x13, 0x78, 0xef, 0xe8, 0xc0, 0x20, 0x4a, 0x74, 0x63, 0x1d, 0xde, 0xd7, 0x15, 0x96, 0x43, 0x82, 0x14, 0x19, 0xaf, 0x33, 0x86, 0x3b, 0x04, 0x14, 0xbd, 0x87, 0xec, 0xf7, 0x3b, 0xa3, 0xfb, 0x89, 0x28, 0x44, 0x9f, 0x2d, 0x6d, 0xb2, 0xb2, 0xc6, 0x5d, 0x44, 0xd9, 0x8b, 0xeb, 0x77, 0xee, 0xad, 0xcb, 0xda, 0x83, 0xff, 0x33, 0xe5, 0x7e, 0xb1, 0x83, 0xe1, 0xfc, 0x29, 0xad, 0x86, 0xf0, 0xba, 0x29, 0xee, 0x66, 0xe7, 0x50, 0xe8, 0x17, 0x0c, 0xcc, 0x43, 0x4c, 0xf7, 0x0a, 0xe1, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9027 = { .name = "ecdsa_secp384r1_sha384_9027", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9027_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9027_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha384_9027_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9028 for ECDSA, tcId is 72 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9028_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9028_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9028_sig[] = { 0xe3, 0x83, 0x28, 0x77, 0xc8, 0x0c, 0x4e, 0xd4, 0x39, 0xd8, 0xea, 0xdc, 0xf6, 0x15, 0xc0, 0x28, 0x6f, 0xf5, 0x49, 0x43, 0xe3, 0xae, 0x2f, 0x66, 0xa3, 0xb9, 0xf8, 0x86, 0x24, 0x5f, 0xea, 0x47, 0x0e, 0x6d, 0x58, 0x12, 0xce, 0xf8, 0x0c, 0x23, 0xe4, 0xf5, 0x68, 0xd0, 0x21, 0x5a, 0x3b, 0xfc, 0x31, 0x77, 0xa7, 0xdb, 0xf0, 0xab, 0x8f, 0x8f, 0x5f, 0xc1, 0xd0, 0x1b, 0x19, 0xd6, 0xa5, 0xe8, 0x96, 0x42, 0x89, 0x9f, 0x36, 0x9d, 0xfe, 0x21, 0x3b, 0x7c, 0xc5, 0x5d, 0x8e, 0xaf, 0x21, 0xdd, 0x28, 0x85, 0xef, 0xce, 0x52, 0xb5, 0x95, 0x9c, 0x1f, 0x06, 0xb7, 0xca, 0xc5, 0x77, 0x3e, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9028 = { .name = "ecdsa_secp384r1_sha384_9028", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9028_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9028_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9028_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9029 for ECDSA, tcId is 73 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9029_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9029_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9029_sig[] = { 0x62, 0x75, 0x73, 0x8f, 0x08, 0x80, 0x02, 0x32, 0x86, 0xa9, 0xb6, 0xf2, 0x8e, 0xa0, 0xa9, 0x77, 0x9e, 0x8d, 0x64, 0x4c, 0x3d, 0xec, 0x48, 0x29, 0x3c, 0x64, 0xf1, 0x56, 0x6b, 0x34, 0xe1, 0x5c, 0x71, 0x19, 0xbd, 0x9d, 0x02, 0xfa, 0x23, 0x57, 0x77, 0x4c, 0xab, 0xc9, 0xe5, 0x3e, 0xf7, 0xe6, 0xd2, 0xf0, 0xa5, 0x2b, 0x10, 0x16, 0x08, 0x2b, 0xd5, 0x51, 0x76, 0x09, 0xee, 0x81, 0xc0, 0x76, 0x4d, 0xc3, 0x8a, 0x8f, 0x32, 0xd9, 0xa5, 0x07, 0x4e, 0x71, 0x7e, 0xe1, 0xd8, 0x32, 0xf9, 0xea, 0x0e, 0x4c, 0x6b, 0x10, 0x0b, 0x1f, 0xd5, 0xe7, 0xf4, 0xbc, 0x74, 0x68, 0xc7, 0x9d, 0x39, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9029 = { .name = "ecdsa_secp384r1_sha384_9029", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9029_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9029_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9029_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9030 for ECDSA, tcId is 74 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9030_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9030_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9030_sig[] = { 0xd3, 0x16, 0xfe, 0x51, 0x68, 0xcf, 0x13, 0x75, 0x3c, 0x8c, 0x3b, 0xbe, 0xf8, 0x38, 0x69, 0xa6, 0x70, 0x3d, 0xc0, 0xd5, 0xaf, 0xa8, 0x2a, 0xf4, 0x9c, 0x88, 0xff, 0x35, 0x55, 0x66, 0x0f, 0x57, 0x91, 0x9a, 0x6f, 0x36, 0xe8, 0x44, 0x51, 0xc3, 0xe8, 0xe5, 0x78, 0x3e, 0x3b, 0x83, 0xfe, 0x3b, 0x99, 0x5f, 0x08, 0xc8, 0xfe, 0xc7, 0xcd, 0x82, 0xce, 0x27, 0xe7, 0x50, 0x93, 0x93, 0xf5, 0xa3, 0x80, 0x3a, 0x48, 0xfe, 0x25, 0x5f, 0xcb, 0x16, 0x03, 0x21, 0xc6, 0xe1, 0x89, 0x0e, 0xb3, 0x6e, 0x37, 0xbc, 0xda, 0x15, 0x8f, 0x0f, 0xa6, 0x89, 0x9e, 0x7d, 0x10, 0x7e, 0x52, 0xde, 0x8c, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9030 = { .name = "ecdsa_secp384r1_sha384_9030", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9030_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9030_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9030_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9031 for ECDSA, tcId is 75 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9031_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9031_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9031_sig[] = { 0x0b, 0x13, 0xb8, 0xfd, 0x10, 0xfa, 0x7b, 0x42, 0x16, 0x91, 0x37, 0x58, 0x8a, 0xd3, 0xf5, 0x57, 0x53, 0x9a, 0x4e, 0x92, 0x06, 0xf3, 0xa1, 0xf1, 0xfe, 0x92, 0x02, 0xb0, 0x69, 0x0d, 0xef, 0xde, 0xd2, 0xbe, 0x18, 0x14, 0x7f, 0x5b, 0x2d, 0xa9, 0x28, 0x5c, 0x0e, 0x73, 0x49, 0x73, 0x5e, 0xa3, 0x04, 0x78, 0xad, 0x31, 0x7b, 0x22, 0xa2, 0x47, 0xbf, 0x93, 0x34, 0x71, 0x9b, 0x4c, 0x8e, 0xe8, 0x4a, 0xcf, 0x13, 0x45, 0x15, 0xdb, 0x77, 0xe6, 0x14, 0x1c, 0x75, 0xd0, 0x89, 0x61, 0xe1, 0xe5, 0x1e, 0xac, 0xa2, 0x98, 0x36, 0x74, 0x41, 0x03, 0xde, 0x0f, 0x6a, 0x4c, 0x79, 0x8d, 0x3e, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9031 = { .name = "ecdsa_secp384r1_sha384_9031", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9031_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9031_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9031_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9032 for ECDSA, tcId is 76 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9032_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9032_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9032_sig[] = { 0x15, 0x80, 0x44, 0x29, 0xbc, 0xb5, 0x27, 0x7d, 0x4f, 0x0a, 0xf7, 0x3b, 0xd5, 0x4c, 0x8a, 0x17, 0x74, 0x99, 0xa7, 0xb6, 0x4f, 0x18, 0xaf, 0xc5, 0x66, 0xc3, 0xce, 0x70, 0x96, 0xbd, 0xc6, 0xc2, 0x75, 0xe3, 0x85, 0x48, 0xed, 0xcf, 0xa0, 0xb7, 0x8d, 0xd7, 0xf5, 0x7b, 0x6f, 0x39, 0x3e, 0x49, 0xd5, 0x95, 0x1f, 0x24, 0x3e, 0x65, 0xb8, 0x2b, 0xa5, 0xc0, 0xc7, 0x55, 0x2d, 0x33, 0xb1, 0x1f, 0x1e, 0x90, 0xfd, 0xe0, 0xc3, 0xfd, 0x01, 0x4a, 0xac, 0x1b, 0xb2, 0x7d, 0xb2, 0xaa, 0xf0, 0x9b, 0x66, 0x7c, 0x8b, 0x24, 0x7c, 0x4c, 0xdd, 0x5b, 0x07, 0x23, 0xfb, 0xa8, 0x3b, 0x4f, 0x99, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9032 = { .name = "ecdsa_secp384r1_sha384_9032", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9032_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9032_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha384_9032_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9033 for ECDSA, tcId is 77 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9033_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9033_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9033_sig[] = { 0x35, 0x92, 0x47, 0xc9, 0x57, 0x76, 0xbb, 0x17, 0x49, 0x2b, 0x7b, 0xf8, 0x27, 0xf5, 0xf3, 0x30, 0xfa, 0x9f, 0x9d, 0xe7, 0xcc, 0x10, 0x44, 0x1a, 0x14, 0x79, 0xc8, 0x17, 0x76, 0xce, 0x36, 0xcd, 0xc6, 0xa1, 0x3c, 0x5f, 0x51, 0x49, 0xc4, 0xe3, 0x91, 0x47, 0xa1, 0x96, 0xbb, 0x02, 0xed, 0x34, 0xf6, 0xed, 0x92, 0x52, 0xa7, 0x3d, 0xe4, 0x85, 0x16, 0xf4, 0xea, 0xba, 0xb6, 0x36, 0x8f, 0xbf, 0xf6, 0x87, 0x51, 0x28, 0xaf, 0x4e, 0x12, 0x26, 0xd5, 0x4d, 0xb5, 0x58, 0xbd, 0x76, 0xee, 0xc3, 0x69, 0xcc, 0x9b, 0x28, 0x5b, 0xc1, 0x96, 0xd5, 0x12, 0xe5, 0x31, 0xf8, 0x48, 0x64, 0xd3, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9033 = { .name = "ecdsa_secp384r1_sha384_9033", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9033_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9033_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9033_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9034 for ECDSA, tcId is 78 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9034_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9034_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9034_sig[] = { 0xa5, 0x57, 0xd1, 0xf6, 0x3a, 0x20, 0x94, 0xf6, 0x83, 0x42, 0x9e, 0xcb, 0x35, 0xa6, 0x53, 0x3b, 0xac, 0x89, 0x76, 0x82, 0x77, 0x5c, 0x00, 0x51, 0xe1, 0x11, 0xee, 0xd6, 0xe0, 0x76, 0xc4, 0x88, 0x67, 0xca, 0xe0, 0x05, 0xc5, 0xe0, 0x80, 0x38, 0x00, 0xb0, 0x50, 0x31, 0x1e, 0x38, 0x1c, 0xd6, 0x2a, 0x2f, 0x87, 0x1e, 0xfc, 0xf0, 0x3c, 0xf1, 0xc8, 0xf5, 0x09, 0xe0, 0x76, 0xaa, 0xa2, 0xa7, 0x6f, 0x1e, 0xa7, 0x8d, 0x1c, 0x64, 0x80, 0x4e, 0xa5, 0xb0, 0x63, 0xb0, 0x32, 0x4b, 0x8e, 0x98, 0xeb, 0x58, 0x25, 0xd0, 0x43, 0x70, 0x10, 0x60, 0x20, 0xee, 0x15, 0x80, 0x5d, 0xbe, 0xdf, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9034 = { .name = "ecdsa_secp384r1_sha384_9034", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9034_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9034_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9034_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9035 for ECDSA, tcId is 79 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9035_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9035_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9035_sig[] = { 0xf2, 0x2b, 0xf9, 0x11, 0x69, 0xb4, 0xae, 0xc8, 0x4c, 0xa8, 0x40, 0x41, 0xcb, 0x82, 0x6f, 0x7d, 0xfc, 0x6f, 0x33, 0xd9, 0x73, 0xf3, 0xc7, 0x24, 0x33, 0xb8, 0xa0, 0xca, 0x20, 0x3a, 0xac, 0x93, 0xf7, 0xee, 0xd6, 0x2b, 0xe9, 0xbe, 0xa0, 0x17, 0x06, 0x40, 0x2d, 0x5b, 0x5d, 0x3b, 0x0e, 0x65, 0x78, 0x41, 0xd3, 0xbc, 0x34, 0xaa, 0x47, 0xe8, 0x13, 0xa5, 0x5c, 0x25, 0x20, 0x3c, 0x5e, 0xc2, 0x34, 0x2d, 0x83, 0x8d, 0x5b, 0x46, 0x38, 0xc2, 0x70, 0x5d, 0xcf, 0x4b, 0xac, 0x9c, 0x24, 0xf7, 0x65, 0xb5, 0xd4, 0xc2, 0x8f, 0xa3, 0xc7, 0xfd, 0xa7, 0xa3, 0x8e, 0xd5, 0x04, 0x8c, 0x7d, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9035 = { .name = "ecdsa_secp384r1_sha384_9035", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9035_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9035_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9035_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9036 for ECDSA, tcId is 80 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9036_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9036_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9036_sig[] = { 0x9c, 0x19, 0x6e, 0x39, 0xa2, 0xd6, 0x1a, 0x3c, 0x25, 0x65, 0xf5, 0x93, 0x2f, 0x35, 0x7e, 0x24, 0x28, 0x92, 0x73, 0x7e, 0x9a, 0xdf, 0xc8, 0x6c, 0x66, 0x09, 0xf2, 0x91, 0xe5, 0xe6, 0xfd, 0xbb, 0x23, 0x02, 0x9f, 0xf9, 0x15, 0xa0, 0x32, 0xb0, 0xc5, 0x39, 0x0b, 0xa9, 0xd1, 0x5f, 0x20, 0x3e, 0xd7, 0x21, 0xe2, 0x8e, 0x52, 0x69, 0xd7, 0x81, 0x3e, 0x8a, 0x9a, 0xed, 0x53, 0xa3, 0x7e, 0x65, 0x2f, 0xec, 0x15, 0x60, 0xca, 0x61, 0xf2, 0x8f, 0x55, 0xab, 0x4c, 0x26, 0x2c, 0xc6, 0x21, 0x4e, 0xee, 0x8d, 0x3c, 0x4c, 0x2b, 0xa9, 0xd1, 0xba, 0x0b, 0xa1, 0x9e, 0x5e, 0x3c, 0x74, 0x84, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9036 = { .name = "ecdsa_secp384r1_sha384_9036", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9036_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9036_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9036_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9037 for ECDSA, tcId is 81 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9037_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9037_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9037_sig[] = { 0x8b, 0xa1, 0xe9, 0xde, 0xc1, 0x4d, 0x30, 0x0b, 0x0e, 0x25, 0x0e, 0xa0, 0xbc, 0xd4, 0x41, 0x9c, 0x3d, 0x95, 0x59, 0x62, 0x2c, 0xc7, 0xb8, 0x37, 0x5b, 0xd7, 0x3f, 0x7d, 0x70, 0x13, 0x32, 0x42, 0xe3, 0xd5, 0xbf, 0x70, 0xbc, 0x78, 0x28, 0x08, 0x73, 0x46, 0x54, 0xba, 0xcd, 0x12, 0xda, 0xea, 0xd8, 0x93, 0xd3, 0x97, 0x0f, 0x72, 0xcc, 0xab, 0x35, 0x55, 0x5a, 0xe9, 0x1e, 0xbc, 0xfe, 0xd3, 0xc5, 0xbf, 0xc5, 0xd3, 0x91, 0x81, 0x07, 0x1b, 0xc0, 0x6b, 0xa3, 0x82, 0x58, 0x7a, 0x69, 0x5e, 0x02, 0xed, 0x48, 0x2f, 0x1a, 0x74, 0xfe, 0x30, 0x9a, 0x39, 0x9e, 0xae, 0xe5, 0xf5, 0xbc, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9037 = { .name = "ecdsa_secp384r1_sha384_9037", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9037_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9037_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9037_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9038 for ECDSA, tcId is 82 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9038_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9038_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9038_sig[] = { 0x2f, 0x52, 0x1d, 0x9d, 0x83, 0xe1, 0xbf, 0xf8, 0xd2, 0x52, 0x55, 0xa9, 0xbd, 0xca, 0x90, 0xe1, 0x5d, 0x78, 0xa8, 0xc9, 0xea, 0x78, 0x85, 0xb8, 0x84, 0x02, 0x4a, 0x40, 0xde, 0x9a, 0x31, 0x5b, 0xed, 0x7f, 0x74, 0x6b, 0x5d, 0xa4, 0xce, 0x96, 0xb0, 0x70, 0x20, 0x8e, 0x9a, 0xe0, 0xcf, 0xa5, 0x41, 0x85, 0xc6, 0xf4, 0x22, 0x5b, 0x8c, 0x25, 0x5a, 0x4d, 0x31, 0xab, 0xb5, 0xc9, 0xb6, 0xc6, 0x86, 0xa6, 0xee, 0x50, 0xa8, 0xeb, 0x71, 0x03, 0xaa, 0xef, 0x90, 0x24, 0x5a, 0x47, 0x22, 0xfc, 0x89, 0x96, 0xf2, 0x66, 0xf2, 0x62, 0x10, 0x9c, 0x3b, 0x59, 0x57, 0xba, 0x73, 0x28, 0x9a, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9038 = { .name = "ecdsa_secp384r1_sha384_9038", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9038_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9038_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9038_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9039 for ECDSA, tcId is 83 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9039_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9039_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9039_sig[] = { 0xd4, 0x90, 0x0f, 0x54, 0xc1, 0xbc, 0x84, 0x1d, 0x38, 0xeb, 0x2f, 0x13, 0xe0, 0xba, 0xfb, 0xb1, 0x2b, 0x56, 0x67, 0x39, 0x3b, 0x07, 0x10, 0x2d, 0xb9, 0x06, 0x39, 0x74, 0x4f, 0x54, 0xd7, 0x89, 0x60, 0xb3, 0x44, 0xc8, 0xfb, 0xfb, 0xf3, 0x54, 0x0b, 0x38, 0xd0, 0x02, 0x78, 0xe1, 0x77, 0xaa, 0x3a, 0x16, 0xef, 0xf0, 0x39, 0x97, 0x00, 0x00, 0x9b, 0x69, 0x49, 0xf3, 0xf5, 0x06, 0xc5, 0x43, 0x49, 0x5b, 0xf8, 0xe0, 0xf3, 0xa3, 0x4f, 0xeb, 0x8e, 0xdd, 0x63, 0x64, 0x87, 0x47, 0xb5, 0x31, 0xad, 0xc4, 0xe7, 0x53, 0x98, 0xe4, 0xda, 0x80, 0x83, 0xb8, 0x8b, 0x34, 0xc2, 0xfb, 0x97, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9039 = { .name = "ecdsa_secp384r1_sha384_9039", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9039_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9039_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9039_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9040 for ECDSA, tcId is 84 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9040_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9040_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9040_sig[] = { 0xc0, 0x16, 0x9e, 0x2b, 0x8b, 0x97, 0xee, 0xb0, 0x65, 0x0e, 0x27, 0x65, 0x3f, 0x2e, 0x47, 0x3b, 0x97, 0xa0, 0x6e, 0x1e, 0x88, 0x8b, 0x07, 0xc1, 0x01, 0x8c, 0x73, 0x0c, 0xab, 0xfd, 0xee, 0xec, 0x4a, 0x62, 0x6c, 0x3e, 0xde, 0xe0, 0x76, 0x7d, 0x44, 0xe8, 0xed, 0x07, 0x08, 0x0c, 0x2a, 0xc4, 0x13, 0xf4, 0x64, 0x75, 0xf9, 0x55, 0xf9, 0x70, 0x19, 0x28, 0x06, 0x7e, 0x39, 0x82, 0xd4, 0xba, 0x5a, 0x58, 0xa3, 0x79, 0xa6, 0x6f, 0x91, 0xb7, 0x4f, 0xad, 0x9a, 0xc8, 0xae, 0xe3, 0x00, 0x86, 0xbe, 0x6f, 0x41, 0xc9, 0xc2, 0xd8, 0xfb, 0x80, 0xe0, 0x92, 0x4d, 0xed, 0xbe, 0x67, 0xe9, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9040 = { .name = "ecdsa_secp384r1_sha384_9040", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9040_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9040_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9040_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9041 for ECDSA, tcId is 85 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9041_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9041_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9041_sig[] = { 0x2e, 0x86, 0x88, 0x71, 0xea, 0x8b, 0x27, 0xa8, 0xa7, 0x46, 0x88, 0x21, 0x52, 0x05, 0x1f, 0x2b, 0x14, 0x6a, 0xf4, 0xac, 0x9d, 0x84, 0x73, 0xb4, 0xb6, 0x85, 0x2f, 0x80, 0xa1, 0xd0, 0xc7, 0xca, 0xb5, 0x74, 0x89, 0xaa, 0x43, 0xf8, 0x90, 0x24, 0x38, 0x8a, 0xec, 0x06, 0x05, 0xb0, 0x26, 0x37, 0x6d, 0x8c, 0x89, 0xee, 0xd8, 0xa5, 0xa6, 0x25, 0x2c, 0x5c, 0xea, 0xd1, 0xc5, 0x53, 0x91, 0xc6, 0x74, 0x3d, 0x88, 0x16, 0x09, 0xe3, 0xdb, 0x24, 0xd7, 0x0e, 0xad, 0x80, 0xa6, 0x63, 0x57, 0x00, 0x20, 0x79, 0x8f, 0xbf, 0x41, 0xd4, 0xc6, 0x24, 0xfc, 0xb1, 0xce, 0x36, 0xc5, 0x36, 0xfe, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9041 = { .name = "ecdsa_secp384r1_sha384_9041", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9041_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9041_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9041_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9042 for ECDSA, tcId is 86 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9042_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9042_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9042_sig[] = { 0xab, 0xe6, 0xa5, 0x11, 0x79, 0xee, 0x87, 0xc9, 0x57, 0x80, 0x5e, 0xca, 0xd5, 0xcc, 0xeb, 0xca, 0x30, 0xc6, 0xe3, 0xa3, 0xe6, 0xdb, 0xe4, 0xeb, 0x4d, 0x13, 0x0b, 0x71, 0xdf, 0x2b, 0xf5, 0x90, 0xb9, 0xd6, 0x7c, 0x8f, 0x49, 0xe8, 0x1b, 0xf9, 0x0c, 0xe0, 0x90, 0x9d, 0x3c, 0x2d, 0xab, 0x4c, 0x71, 0x10, 0x58, 0x2f, 0xab, 0x49, 0x5b, 0x21, 0xbd, 0x9d, 0xda, 0x06, 0x4f, 0xbd, 0x7a, 0xcc, 0x09, 0xd0, 0x54, 0x4d, 0xcf, 0x76, 0x99, 0xbe, 0x35, 0xad, 0x16, 0x20, 0x7f, 0xfa, 0x10, 0xe8, 0x90, 0x4f, 0x92, 0x41, 0xa7, 0x09, 0x48, 0x7b, 0xa2, 0xba, 0x7e, 0x34, 0x43, 0x0b, 0x81, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9042 = { .name = "ecdsa_secp384r1_sha384_9042", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9042_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9042_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9042_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9043 for ECDSA, tcId is 87 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9043_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9043_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9043_sig[] = { 0x50, 0x25, 0x2c, 0x19, 0xe6, 0x0e, 0x41, 0x20, 0xb7, 0xc2, 0x8b, 0x2c, 0x2e, 0x0a, 0x58, 0x8e, 0x5d, 0x10, 0x75, 0x18, 0xcd, 0x61, 0xe5, 0xc7, 0x99, 0x9c, 0x6d, 0x46, 0x5e, 0xa1, 0x34, 0xf7, 0x52, 0x32, 0x2d, 0x8b, 0x83, 0xf5, 0x98, 0x8f, 0xcd, 0xc6, 0x2b, 0xd9, 0xad, 0xb3, 0x6c, 0xcd, 0x19, 0x38, 0x99, 0x35, 0x24, 0x91, 0xda, 0xbf, 0xe4, 0xfc, 0x94, 0x2e, 0x14, 0xdd, 0xac, 0xb2, 0x00, 0x67, 0x37, 0x29, 0xd6, 0x16, 0x02, 0xcc, 0x0b, 0xaf, 0x57, 0x32, 0xd2, 0x62, 0xf3, 0x6e, 0x52, 0x79, 0x86, 0x5a, 0x81, 0x0c, 0xe2, 0xf9, 0x77, 0xf5, 0x76, 0x86, 0xa0, 0xd0, 0x13, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9043 = { .name = "ecdsa_secp384r1_sha384_9043", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9043_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9043_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9043_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9044 for ECDSA, tcId is 88 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9044_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9044_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9044_sig[] = { 0xeb, 0x72, 0x5f, 0xdd, 0x53, 0x9d, 0x7d, 0xe8, 0xea, 0x02, 0xfa, 0xc8, 0xdb, 0x6e, 0xc4, 0x64, 0xf4, 0x0c, 0x27, 0x2a, 0x63, 0xe6, 0xb2, 0x71, 0x8c, 0x4e, 0x02, 0x66, 0xbf, 0x12, 0x35, 0xda, 0xe3, 0x30, 0xf7, 0x47, 0xa6, 0x05, 0x2f, 0x43, 0x19, 0xec, 0xbe, 0x7b, 0xda, 0xde, 0x9b, 0xd0, 0xae, 0x84, 0x50, 0x76, 0x48, 0xba, 0x2d, 0x19, 0x44, 0xbb, 0x67, 0x72, 0x2c, 0xcd, 0x2c, 0xb9, 0x4b, 0x92, 0xb5, 0x9e, 0x89, 0xa1, 0xae, 0x69, 0x8c, 0x66, 0x8b, 0xb5, 0x7f, 0x48, 0x1c, 0x42, 0xb2, 0x16, 0xc2, 0x3d, 0xa4, 0xb1, 0xd8, 0xc0, 0xe5, 0x02, 0xef, 0x97, 0xfd, 0xa0, 0x5a, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9044 = { .name = "ecdsa_secp384r1_sha384_9044", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9044_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9044_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9044_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9045 for ECDSA, tcId is 89 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9045_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9045_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9045_sig[] = { 0x25, 0xaa, 0x56, 0xfc, 0xbd, 0x92, 0xf2, 0xcf, 0x53, 0xbd, 0xdb, 0xaa, 0x0d, 0xb5, 0x37, 0xde, 0x58, 0x43, 0x29, 0x07, 0x31, 0xc1, 0xdd, 0x78, 0x03, 0x6f, 0xcb, 0xde, 0xd4, 0xa8, 0xf7, 0x18, 0x7d, 0xdf, 0xed, 0x9f, 0x5c, 0xa9, 0xd9, 0x8e, 0xa7, 0xb1, 0x2d, 0x24, 0xb8, 0xd2, 0x9d, 0x57, 0x02, 0x8f, 0x68, 0x37, 0x2d, 0x66, 0x16, 0x48, 0x10, 0xbf, 0x79, 0xc3, 0x0a, 0x19, 0x11, 0x16, 0xd4, 0x96, 0xfe, 0x32, 0x31, 0x46, 0x05, 0xdc, 0x16, 0x68, 0x28, 0x94, 0x25, 0xfb, 0x3a, 0x15, 0xd7, 0x53, 0x2d, 0xde, 0x10, 0x52, 0xa4, 0x9a, 0x35, 0x86, 0x6c, 0x14, 0x7a, 0xbd, 0xe1, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9045 = { .name = "ecdsa_secp384r1_sha384_9045", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9045_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9045_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9045_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9046 for ECDSA, tcId is 90 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9046_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9046_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9046_sig[] = { 0x54, 0xbf, 0x7a, 0xdc, 0x85, 0x48, 0xe7, 0xca, 0xe2, 0x70, 0xe7, 0xb0, 0x97, 0xf1, 0x6b, 0x5e, 0x31, 0x51, 0x58, 0xd2, 0x1b, 0x0e, 0x65, 0x2c, 0xe1, 0xcf, 0xe4, 0xb3, 0x31, 0x26, 0xba, 0x4a, 0x65, 0xbf, 0x22, 0x7b, 0x4c, 0xdd, 0xca, 0xf2, 0x2d, 0x33, 0xd8, 0x24, 0x78, 0x93, 0x7b, 0x20, 0xbf, 0xc1, 0xb8, 0xf1, 0xd0, 0x28, 0x46, 0xa4, 0x2f, 0x31, 0xe1, 0xbd, 0x10, 0xba, 0x33, 0x40, 0x65, 0x45, 0x9f, 0x71, 0x2a, 0x3b, 0xbc, 0x76, 0x00, 0x5d, 0x6c, 0x64, 0x88, 0x88, 0x9f, 0x88, 0xc0, 0x98, 0x3f, 0x48, 0x34, 0xd0, 0xbf, 0x22, 0x49, 0xdb, 0xf0, 0xa6, 0xdb, 0x76, 0x07, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9046 = { .name = "ecdsa_secp384r1_sha384_9046", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9046_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9046_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9046_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9047 for ECDSA, tcId is 91 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9047_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9047_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9047_sig[] = { 0xd3, 0xbb, 0x29, 0xac, 0x0b, 0xd1, 0xf6, 0x05, 0x8a, 0x51, 0x97, 0xf7, 0x66, 0xd6, 0xea, 0x32, 0x16, 0xc5, 0x72, 0xde, 0xd6, 0x2a, 0xf4, 0x63, 0x18, 0xc8, 0xc7, 0xf9, 0x54, 0x7b, 0xb2, 0x46, 0x55, 0x36, 0x54, 0x27, 0x9d, 0x69, 0x98, 0x9d, 0x9a, 0xf5, 0xef, 0x4c, 0xca, 0xcf, 0x64, 0xda, 0xe1, 0x02, 0x81, 0x12, 0x2c, 0x21, 0x12, 0xa2, 0xa5, 0xa9, 0xd8, 0x7a, 0xc5, 0x8f, 0x64, 0xfb, 0x07, 0xc9, 0x96, 0xa2, 0xd0, 0x92, 0x92, 0x11, 0x9e, 0x8f, 0x24, 0xd5, 0x49, 0x9b, 0x2e, 0x85, 0x24, 0xeb, 0xd0, 0x57, 0x00, 0x97, 0xf6, 0xcc, 0x7f, 0x9c, 0x26, 0x09, 0x4a, 0x35, 0xc8, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9047 = { .name = "ecdsa_secp384r1_sha384_9047", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9047_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9047_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9047_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9048 for ECDSA, tcId is 92 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9048_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9048_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9048_sig[] = { 0xbc, 0x32, 0xe8, 0x5e, 0x31, 0x12, 0x47, 0x24, 0x08, 0xf9, 0x32, 0x45, 0x86, 0xe5, 0x25, 0x32, 0x51, 0x28, 0xa3, 0x83, 0x13, 0xc3, 0x4b, 0x79, 0x70, 0x0c, 0xb0, 0xa3, 0xf7, 0x26, 0x2a, 0x90, 0xa1, 0xfc, 0xc4, 0x0e, 0xef, 0x1f, 0x1a, 0x38, 0x84, 0x03, 0x2a, 0x7a, 0x21, 0x81, 0x0e, 0x0a, 0xc0, 0x2f, 0x52, 0x54, 0x13, 0x60, 0x35, 0x81, 0x07, 0xa1, 0x3d, 0xbe, 0xa3, 0x1f, 0x83, 0xd8, 0x03, 0x97, 0x71, 0x09, 0x01, 0x73, 0x4b, 0x7a, 0xdb, 0x78, 0xb1, 0xfc, 0x90, 0x44, 0x54, 0xa2, 0x8a, 0x37, 0x85, 0x14, 0xcc, 0xef, 0x80, 0xec, 0xc7, 0x0c, 0x1d, 0x8e, 0x55, 0xf1, 0x13, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9048 = { .name = "ecdsa_secp384r1_sha384_9048", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9048_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9048_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9048_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9049 for ECDSA, tcId is 93 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9049_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9049_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9049_sig[] = { 0xf0, 0x4b, 0x9e, 0x17, 0xc7, 0x1d, 0x2d, 0x21, 0x33, 0xea, 0x38, 0x0d, 0x71, 0xb6, 0xb8, 0x2c, 0x8a, 0x8e, 0x33, 0x32, 0x70, 0x3e, 0x9d, 0x53, 0x5b, 0x2c, 0x2b, 0xca, 0x9b, 0x0a, 0xd5, 0x86, 0xd1, 0x76, 0xa6, 0x04, 0x9a, 0xfa, 0x35, 0xed, 0xd9, 0x72, 0x2e, 0xdb, 0x5c, 0x33, 0xda, 0xa3, 0xbd, 0x44, 0xd4, 0xa6, 0x26, 0x33, 0x80, 0xca, 0x6f, 0x22, 0xe7, 0x6c, 0x26, 0xd5, 0xf7, 0x0f, 0x41, 0xf4, 0xd7, 0xca, 0xe7, 0xd4, 0xb9, 0xc1, 0xb8, 0xdc, 0x2b, 0xa5, 0x29, 0x8d, 0x9d, 0x12, 0x40, 0x8b, 0x04, 0x61, 0x4e, 0x2f, 0x37, 0x96, 0xcc, 0x19, 0xc9, 0x50, 0xc8, 0xc8, 0x8a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9049 = { .name = "ecdsa_secp384r1_sha384_9049", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9049_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9049_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9049_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9050 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9050_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9050_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9050_sig[] = { 0xc8, 0x80, 0x73, 0x51, 0xd8, 0xe2, 0x61, 0x33, 0x8e, 0x75, 0x0c, 0xb9, 0xa5, 0x2f, 0x4b, 0xe4, 0x47, 0x0b, 0x63, 0xf6, 0xf1, 0x81, 0xcb, 0xe0, 0xe8, 0x1d, 0x43, 0xb6, 0x08, 0x24, 0xba, 0x4b, 0xe1, 0xbb, 0xa4, 0x2b, 0x17, 0x83, 0x89, 0x7a, 0x0d, 0x72, 0xb0, 0x61, 0x40, 0x18, 0xb0, 0x2f, 0x52, 0xe3, 0xa5, 0x98, 0xc8, 0xbe, 0x98, 0x21, 0x27, 0xe9, 0x61, 0xee, 0xd2, 0xb0, 0x4f, 0x21, 0xc8, 0x6d, 0xf4, 0xeb, 0xca, 0xb0, 0xd9, 0x55, 0xa7, 0xc6, 0x6e, 0xc7, 0xf8, 0x18, 0x89, 0x87, 0x98, 0xee, 0x75, 0x36, 0x7a, 0x85, 0x02, 0x22, 0x76, 0xb9, 0x12, 0xc0, 0xa0, 0x72, 0xbf, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9050 = { .name = "ecdsa_secp384r1_sha384_9050", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9050_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9050_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9050_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9051 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9051_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9051_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9051_sig[] = { 0x61, 0x52, 0x84, 0x1b, 0x6f, 0xb4, 0x60, 0x54, 0x6e, 0xeb, 0x41, 0x58, 0xa3, 0xe5, 0xff, 0xa5, 0x4f, 0x51, 0xaa, 0x6a, 0x20, 0x89, 0x87, 0xbe, 0x89, 0x9b, 0x70, 0x60, 0x55, 0xcd, 0x59, 0xd8, 0xec, 0x7c, 0x01, 0xf4, 0x63, 0x42, 0x54, 0xfe, 0x05, 0x0e, 0x1d, 0x4e, 0xc5, 0x25, 0xa1, 0x73, 0x73, 0xf0, 0xc5, 0xf1, 0x36, 0x40, 0xd8, 0x92, 0xc2, 0x8f, 0x70, 0x14, 0x28, 0xe8, 0xfb, 0xfb, 0x73, 0x6b, 0x64, 0x78, 0xbb, 0xd9, 0x72, 0xc8, 0xc6, 0x84, 0x97, 0x75, 0x56, 0xed, 0x59, 0x9a, 0x70, 0xd3, 0x13, 0xe0, 0x6b, 0x12, 0x60, 0x80, 0xe1, 0x30, 0x68, 0xd5, 0x6e, 0x1c, 0x10, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9051 = { .name = "ecdsa_secp384r1_sha384_9051", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9051_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9051_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9051_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9052 for ECDSA, tcId is 96 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9052_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9052_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9052_sig[] = { 0x84, 0x2f, 0x8d, 0x28, 0x14, 0xf5, 0xb7, 0x16, 0x3f, 0x4b, 0x21, 0xbd, 0x97, 0x27, 0x24, 0x6e, 0x07, 0x8a, 0xd1, 0xe7, 0x43, 0x5d, 0xfe, 0x1b, 0xc5, 0xf9, 0xe0, 0xe7, 0x37, 0x42, 0x32, 0xe6, 0x86, 0xb9, 0xb9, 0x8b, 0x73, 0xde, 0xab, 0x9e, 0x43, 0xb3, 0xb7, 0xf2, 0x54, 0x16, 0xc2, 0xbe, 0x85, 0x2c, 0x10, 0x6c, 0x41, 0x23, 0x00, 0xba, 0xc3, 0xba, 0x26, 0x59, 0x90, 0xb4, 0x28, 0xa2, 0x60, 0x76, 0xab, 0x3f, 0x00, 0xfd, 0x76, 0x57, 0xbb, 0xd9, 0x31, 0x5f, 0xa1, 0xcd, 0x2a, 0x12, 0x30, 0xa9, 0xa6, 0x0d, 0x06, 0xb7, 0xaf, 0x87, 0xaa, 0x0a, 0x6c, 0xf3, 0xf4, 0x8b, 0x34, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9052 = { .name = "ecdsa_secp384r1_sha384_9052", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9052_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9052_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9052_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9053 for ECDSA, tcId is 97 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9053_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9053_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9053_sig[] = { 0xe1, 0x3f, 0x6d, 0x63, 0x8b, 0x9d, 0x4f, 0xba, 0x54, 0xaa, 0x43, 0x6a, 0x94, 0x5c, 0xfe, 0xa6, 0x6d, 0xec, 0x05, 0x8f, 0xab, 0x6f, 0x02, 0x62, 0x93, 0x26, 0x58, 0x84, 0x45, 0x7b, 0x5a, 0x86, 0xe8, 0xe9, 0x27, 0xd6, 0x99, 0xbc, 0x64, 0x43, 0x1b, 0x71, 0xe3, 0xd4, 0x1d, 0xf2, 0x00, 0x44, 0x98, 0x32, 0xcd, 0x1b, 0x41, 0x77, 0x11, 0x8e, 0xd2, 0x47, 0xb4, 0xf3, 0x12, 0x77, 0xda, 0x15, 0xf4, 0x20, 0x17, 0x9f, 0x45, 0xc7, 0x1a, 0x23, 0x7d, 0x77, 0xf5, 0x99, 0xa4, 0x5d, 0xf6, 0x82, 0x47, 0xba, 0xc3, 0xdc, 0xef, 0x08, 0x68, 0xec, 0xd1, 0x66, 0x50, 0x05, 0xc2, 0x5b, 0x7c, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9053 = { .name = "ecdsa_secp384r1_sha384_9053", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9053_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9053_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9053_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9054 for ECDSA, tcId is 98 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9054_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9054_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9054_sig[] = { 0x09, 0xff, 0xf1, 0xc2, 0xe4, 0xff, 0x86, 0x43, 0xcb, 0xfa, 0xd5, 0x88, 0x62, 0x0c, 0x2b, 0xf7, 0xaa, 0xca, 0x5c, 0xf4, 0x24, 0x29, 0x69, 0x14, 0x2c, 0x71, 0x45, 0xb9, 0x27, 0xbd, 0x82, 0xed, 0x14, 0xf3, 0xae, 0x8c, 0x6e, 0x2c, 0xe2, 0xda, 0x63, 0xb9, 0x90, 0xb9, 0xf1, 0xbe, 0x6d, 0x64, 0x78, 0x0c, 0x81, 0x6f, 0x6c, 0x86, 0x34, 0x3b, 0x00, 0x82, 0x35, 0xee, 0x98, 0x6a, 0xbf, 0x21, 0x36, 0x12, 0x3e, 0xd2, 0x47, 0xe4, 0x75, 0x1e, 0x4d, 0x54, 0x67, 0x33, 0x4f, 0x08, 0xe5, 0xe2, 0xca, 0x11, 0x61, 0x25, 0x4f, 0x68, 0xc3, 0xe6, 0x67, 0x8e, 0x2d, 0x0b, 0x87, 0xd1, 0xcc, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9054 = { .name = "ecdsa_secp384r1_sha384_9054", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9054_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9054_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9054_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9055 for ECDSA, tcId is 99 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9055_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9055_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9055_sig[] = { 0xff, 0xae, 0x6e, 0x7d, 0x2c, 0xea, 0x71, 0xb5, 0xa9, 0xc7, 0x3c, 0xbc, 0x12, 0x85, 0xa8, 0xd2, 0x52, 0x94, 0x97, 0x72, 0xaf, 0xe1, 0xaa, 0x27, 0xfb, 0x13, 0x77, 0x40, 0xfc, 0x42, 0x9c, 0x2a, 0x8c, 0x86, 0x48, 0xc9, 0xa5, 0xba, 0x67, 0x8a, 0x32, 0xf7, 0xae, 0x76, 0x89, 0xb3, 0x95, 0xca, 0x89, 0xd5, 0x4c, 0xd1, 0x3a, 0x16, 0x2c, 0x34, 0x18, 0x9f, 0xf5, 0x24, 0x81, 0x36, 0x90, 0xe7, 0x97, 0x68, 0xaf, 0x8e, 0xbe, 0x79, 0x4c, 0xc9, 0x41, 0xdf, 0xe7, 0xfd, 0xf2, 0xcb, 0x8d, 0xd0, 0xb4, 0x25, 0x19, 0xf0, 0x34, 0xea, 0x4d, 0x4f, 0x1c, 0x87, 0x00, 0x46, 0xd1, 0x32, 0x10, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9055 = { .name = "ecdsa_secp384r1_sha384_9055", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9055_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9055_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9055_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9056 for ECDSA, tcId is 100 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9056_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9056_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9056_sig[] = { 0xef, 0xa3, 0xc5, 0xfc, 0x3c, 0x8b, 0xe1, 0x00, 0x74, 0x75, 0xa2, 0xdb, 0xd4, 0x6e, 0x35, 0x78, 0xbb, 0x30, 0x57, 0x94, 0x45, 0x90, 0x9c, 0x24, 0x45, 0xf8, 0x50, 0xfb, 0x8a, 0xa6, 0x0a, 0xa5, 0xb1, 0x74, 0x9c, 0xc3, 0x40, 0x0d, 0x8f, 0xfd, 0x81, 0xcb, 0x88, 0x32, 0xb5, 0x0d, 0x27, 0xb4, 0xb3, 0x6a, 0x08, 0xdb, 0x38, 0x45, 0xb3, 0xd2, 0xeb, 0xd2, 0xc3, 0x35, 0x48, 0x0f, 0x12, 0xfb, 0x83, 0xf2, 0xa7, 0x35, 0x18, 0x41, 0xea, 0x38, 0x42, 0xec, 0x62, 0xad, 0x90, 0x4b, 0x09, 0x8e, 0xfb, 0xf9, 0xfa, 0xa7, 0x82, 0x8b, 0x9c, 0x18, 0x57, 0x46, 0xd9, 0xc8, 0xbd, 0x04, 0x7d, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9056 = { .name = "ecdsa_secp384r1_sha384_9056", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9056_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9056_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9056_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9057 for ECDSA, tcId is 101 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9057_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9057_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9057_sig[] = { 0xf5, 0x77, 0x09, 0x5f, 0x7c, 0x74, 0x59, 0x4a, 0xa1, 0xc6, 0x9a, 0xca, 0x9b, 0xb2, 0x6e, 0x0c, 0x74, 0x75, 0xae, 0x51, 0x63, 0x05, 0x8e, 0xcc, 0x07, 0x4b, 0x03, 0xaf, 0x89, 0xe5, 0x6b, 0x12, 0xb6, 0xa7, 0x24, 0x50, 0x58, 0x9d, 0xac, 0xf0, 0xd7, 0xe6, 0xb1, 0x72, 0xd0, 0x01, 0x7a, 0x0e, 0xbe, 0xe7, 0x56, 0xa0, 0xb5, 0xd0, 0xa6, 0x77, 0xbf, 0x95, 0xf9, 0x8d, 0xa5, 0x12, 0x85, 0x4f, 0x3e, 0xcb, 0x71, 0x2f, 0x94, 0x57, 0x0e, 0x1a, 0xd2, 0x30, 0xea, 0xb1, 0x7c, 0x52, 0x7b, 0x6a, 0x8b, 0xcc, 0x9a, 0xe2, 0x02, 0xb6, 0x57, 0xa3, 0x61, 0x1e, 0xcf, 0xfa, 0x94, 0xba, 0x0d, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9057 = { .name = "ecdsa_secp384r1_sha384_9057", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9057_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9057_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9057_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9058 for ECDSA, tcId is 102 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9058_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9058_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9058_sig[] = { 0x0a, 0xe7, 0x68, 0x8c, 0x7d, 0xe5, 0x88, 0x2e, 0xb9, 0xc3, 0x17, 0x2f, 0x55, 0x00, 0x01, 0x55, 0x52, 0xf9, 0x98, 0xfb, 0x53, 0x70, 0x2c, 0x6c, 0xd4, 0xb0, 0x34, 0x04, 0xd5, 0xa0, 0x51, 0x0a, 0x80, 0x73, 0xdb, 0x95, 0xdb, 0x54, 0x48, 0x08, 0xdb, 0xd7, 0x66, 0x59, 0xfd, 0x20, 0xcf, 0x12, 0xbc, 0x61, 0x0f, 0xe5, 0xf0, 0x4d, 0x89, 0x09, 0xcc, 0x43, 0x96, 0x15, 0xfb, 0x7e, 0x30, 0x2d, 0x3d, 0x82, 0x99, 0x28, 0x17, 0x64, 0x7c, 0x50, 0xc1, 0xf4, 0x67, 0x09, 0x0a, 0x52, 0xb3, 0x28, 0xcb, 0xbc, 0x02, 0x62, 0xf1, 0x8f, 0xfb, 0x6f, 0xd9, 0xf3, 0xbd, 0x60, 0x01, 0x3c, 0xea, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9058 = { .name = "ecdsa_secp384r1_sha384_9058", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9058_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9058_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9058_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9059 for ECDSA, tcId is 103 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9059_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9059_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9059_sig[] = { 0x5d, 0xc8, 0xa6, 0xd8, 0x4a, 0xfa, 0xaf, 0x90, 0x0d, 0x78, 0xc6, 0xa9, 0x1d, 0xc5, 0xe1, 0x2e, 0x7d, 0x17, 0x89, 0x1a, 0x52, 0xc1, 0x46, 0x82, 0x53, 0x06, 0x1d, 0x70, 0x4b, 0x89, 0x40, 0xbe, 0xf8, 0x5b, 0x9f, 0xe8, 0x07, 0xa0, 0xe0, 0x2b, 0x56, 0xe8, 0xdd, 0x37, 0xc2, 0x2f, 0xbb, 0x82, 0x91, 0x42, 0x58, 0xde, 0x52, 0x93, 0x2c, 0x46, 0x04, 0xdc, 0xeb, 0x5c, 0xe7, 0xcc, 0x0a, 0x92, 0xe0, 0x21, 0xed, 0xca, 0x9b, 0x81, 0x9b, 0x84, 0xa9, 0xf2, 0x56, 0x52, 0xf9, 0xaf, 0x13, 0xf9, 0x56, 0xa1, 0x13, 0x9e, 0xe9, 0x5c, 0x7a, 0xa7, 0xa0, 0x79, 0xe3, 0xad, 0x83, 0x17, 0xfb, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9059 = { .name = "ecdsa_secp384r1_sha384_9059", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9059_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9059_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9059_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9060 for ECDSA, tcId is 104 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9060_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9060_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9060_sig[] = { 0xda, 0x55, 0xa6, 0xdb, 0xb8, 0x45, 0x20, 0x5c, 0x87, 0xc9, 0x95, 0xb0, 0xbb, 0xc8, 0x44, 0x4f, 0xfc, 0xba, 0x6e, 0xb1, 0xf4, 0xeb, 0x9d, 0x30, 0xf7, 0x21, 0xd2, 0xda, 0xcc, 0x19, 0x8f, 0xb1, 0xa8, 0x29, 0x60, 0x75, 0xe6, 0x8e, 0xb3, 0xd2, 0x5e, 0xf5, 0x96, 0xa9, 0x52, 0xb8, 0xea, 0x19, 0x82, 0x9f, 0x67, 0x1d, 0xcc, 0xad, 0x6d, 0x7b, 0x0b, 0x8c, 0x4b, 0x39, 0xff, 0x3f, 0x42, 0x59, 0x79, 0x65, 0xd5, 0x5c, 0x64, 0x5f, 0xb8, 0x80, 0xa6, 0x6f, 0xe1, 0x98, 0xd9, 0x34, 0x4c, 0x93, 0x11, 0xf1, 0x59, 0x89, 0x30, 0x39, 0x24, 0x70, 0x37, 0x9f, 0xa5, 0xff, 0x43, 0xc7, 0x5d, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9060 = { .name = "ecdsa_secp384r1_sha384_9060", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9060_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9060_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9060_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9061 for ECDSA, tcId is 105 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9061_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9061_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9061_sig[] = { 0x37, 0x30, 0xdf, 0xd0, 0x98, 0x5d, 0xe7, 0x7d, 0xec, 0xdd, 0x35, 0x8a, 0x54, 0x4b, 0x47, 0xf4, 0x18, 0xd3, 0xfa, 0xb4, 0x24, 0x81, 0x53, 0x0d, 0x5d, 0x51, 0x48, 0x59, 0x89, 0x4c, 0x6f, 0x23, 0xb7, 0x29, 0xaf, 0x72, 0xb4, 0x46, 0x86, 0x05, 0x8d, 0xe2, 0x96, 0x87, 0xb3, 0x4b, 0x3b, 0x0c, 0x65, 0xbd, 0xfa, 0xf0, 0xac, 0x21, 0x7a, 0x80, 0xb8, 0x2e, 0xb0, 0x9c, 0x9f, 0x59, 0xc5, 0xc8, 0xcf, 0xbf, 0x50, 0xa6, 0xeb, 0x97, 0x9a, 0x8f, 0x5f, 0x63, 0xea, 0xb9, 0xbd, 0x38, 0xee, 0x09, 0x38, 0xe4, 0xb2, 0x31, 0x02, 0x11, 0x20, 0x33, 0xb2, 0x30, 0xa1, 0x4a, 0xd2, 0x79, 0x0e, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9061 = { .name = "ecdsa_secp384r1_sha384_9061", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9061_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9061_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9061_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9062 for ECDSA, tcId is 106 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9062_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9062_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9062_sig[] = { 0x55, 0x21, 0x0d, 0xf2, 0x12, 0x4c, 0x17, 0x0e, 0x25, 0x9a, 0xf1, 0xda, 0xfa, 0x73, 0xe6, 0x66, 0x13, 0xaa, 0x18, 0xce, 0xd8, 0xeb, 0x40, 0xa7, 0xf6, 0x61, 0x55, 0xd5, 0x0d, 0x5f, 0x31, 0x24, 0xed, 0xfa, 0x55, 0x27, 0x6d, 0xe4, 0x79, 0x70, 0x13, 0x17, 0x72, 0x91, 0xe8, 0xaf, 0xef, 0xf6, 0xc3, 0x14, 0xd3, 0xa3, 0x10, 0xa6, 0x06, 0x47, 0xda, 0xd3, 0x31, 0x8e, 0xd7, 0xf0, 0x40, 0x5a, 0x64, 0xc3, 0xf9, 0x4b, 0x5a, 0xc9, 0x8e, 0x6b, 0xe1, 0x22, 0x08, 0xc8, 0xad, 0x98, 0x35, 0xfa, 0x6b, 0x81, 0xa0, 0xea, 0x59, 0xf4, 0x76, 0x60, 0x86, 0x34, 0x65, 0x7b, 0x66, 0xe0, 0x0f, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9062 = { .name = "ecdsa_secp384r1_sha384_9062", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9062_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9062_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9062_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9063 for ECDSA, tcId is 107 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9063_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9063_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9063_sig[] = { 0xf6, 0xc9, 0x89, 0x71, 0x44, 0xb5, 0xd8, 0x49, 0x64, 0x51, 0x5e, 0xb0, 0xc8, 0xc3, 0xd0, 0xd9, 0xc6, 0x68, 0x7c, 0x95, 0x78, 0x87, 0xe9, 0x3c, 0x29, 0xb2, 0xa2, 0x18, 0x04, 0xb4, 0x03, 0x07, 0xfb, 0x88, 0xbf, 0xd5, 0xcc, 0xa1, 0x1c, 0x95, 0x88, 0x5d, 0x28, 0x86, 0x7c, 0xb3, 0x3a, 0x74, 0x65, 0x6b, 0xaf, 0xca, 0x24, 0x22, 0x90, 0xf7, 0xd7, 0xe9, 0x80, 0x1b, 0x6c, 0xfd, 0x4b, 0xd1, 0xb0, 0x7e, 0x8d, 0x7c, 0x6c, 0x1c, 0x59, 0xfd, 0x3d, 0x8e, 0x82, 0xe9, 0x84, 0x6a, 0x1b, 0x28, 0x55, 0xc8, 0x54, 0x20, 0xe4, 0xee, 0x6e, 0xc2, 0xd9, 0x7f, 0xec, 0x21, 0x61, 0xee, 0xb2, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9063 = { .name = "ecdsa_secp384r1_sha384_9063", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9063_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9063_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9063_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9064 for ECDSA, tcId is 108 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9064_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9064_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9064_sig[] = { 0xbf, 0xbc, 0xc5, 0xf3, 0x43, 0xe2, 0xab, 0x39, 0x2c, 0xe6, 0xc1, 0xc0, 0x2d, 0x91, 0xc0, 0x06, 0x50, 0xc4, 0x71, 0x36, 0x83, 0x6a, 0x5d, 0x06, 0x22, 0xd4, 0x76, 0xac, 0x2b, 0x32, 0x74, 0x39, 0x57, 0x21, 0xb1, 0xab, 0x21, 0x88, 0x2e, 0xd5, 0xca, 0xbe, 0xd0, 0x93, 0xb4, 0x3b, 0x13, 0x3f, 0x04, 0x3e, 0x9f, 0xc6, 0x4c, 0x61, 0x08, 0xdf, 0x73, 0xf9, 0xec, 0xed, 0x90, 0xf9, 0x11, 0x85, 0xf8, 0x3d, 0x89, 0x66, 0x2f, 0x5a, 0x9d, 0x81, 0x0c, 0x18, 0x24, 0xfb, 0xfd, 0x97, 0xb8, 0x42, 0xf7, 0x84, 0x30, 0x5f, 0xd6, 0xb9, 0xc2, 0x8c, 0x80, 0xd3, 0x2d, 0x52, 0xb1, 0x53, 0x8d, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9064 = { .name = "ecdsa_secp384r1_sha384_9064", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9064_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9064_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha384_9064_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9065 for ECDSA, tcId is 109 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9065_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9065_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9065_sig[] = { 0xb8, 0xf7, 0x93, 0xdd, 0xd4, 0x7e, 0x65, 0x7a, 0x90, 0x81, 0xcb, 0xed, 0x16, 0x00, 0xfb, 0x22, 0xb3, 0x8a, 0xd6, 0xa1, 0x55, 0xf9, 0xc0, 0x06, 0xba, 0x98, 0xde, 0x1f, 0x38, 0x3b, 0x4c, 0x09, 0x18, 0xce, 0xea, 0x72, 0x25, 0x3e, 0x0f, 0x86, 0x95, 0x24, 0xb2, 0x36, 0x9c, 0xd9, 0xbd, 0x8c, 0x96, 0xc4, 0x52, 0xff, 0x58, 0xf4, 0x2e, 0x08, 0x53, 0x04, 0x0a, 0x6d, 0x5c, 0x7e, 0x75, 0x0b, 0x57, 0xdd, 0x4a, 0xf0, 0x6e, 0x2d, 0xf8, 0x19, 0x4e, 0x8d, 0x52, 0x4e, 0x81, 0xac, 0x00, 0x0e, 0xe3, 0x31, 0x5b, 0xbe, 0xab, 0xbf, 0x6a, 0x21, 0xf6, 0x1b, 0x89, 0x04, 0xc5, 0x53, 0x78, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9065 = { .name = "ecdsa_secp384r1_sha384_9065", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9065_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9065_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9065_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9066 for ECDSA, tcId is 110 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9066_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9066_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9066_sig[] = { 0x26, 0x3a, 0xb1, 0xc9, 0x35, 0x67, 0xe9, 0x3b, 0x5e, 0xc4, 0xe3, 0x80, 0xb0, 0xd3, 0xbb, 0x5e, 0xa1, 0xce, 0x69, 0x3c, 0x14, 0xa4, 0x7a, 0xfc, 0xcc, 0x53, 0x9a, 0xaf, 0x19, 0x7f, 0x09, 0x9d, 0x33, 0x1e, 0xa9, 0xe2, 0x6f, 0x1a, 0x00, 0x57, 0x14, 0x8d, 0x46, 0x72, 0x7a, 0xcb, 0x61, 0x88, 0x62, 0x1d, 0xb0, 0x7c, 0xe9, 0x41, 0x10, 0xe2, 0xbe, 0x74, 0xfa, 0x95, 0x3a, 0x00, 0xa8, 0xa5, 0x54, 0x22, 0x5b, 0x3f, 0x2c, 0x0f, 0x6c, 0x56, 0xb4, 0xeb, 0xd4, 0xdb, 0x2f, 0x57, 0xca, 0x25, 0x65, 0xed, 0x33, 0x23, 0xfd, 0x70, 0x8b, 0xb5, 0x6a, 0xc6, 0xe2, 0x8b, 0xfb, 0x40, 0xf2, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9066 = { .name = "ecdsa_secp384r1_sha384_9066", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9066_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9066_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9066_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9067 for ECDSA, tcId is 111 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9067_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9067_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9067_sig[] = { 0x96, 0xf4, 0xa2, 0xb3, 0x52, 0x9c, 0x65, 0xe4, 0x5a, 0x0b, 0x4c, 0x19, 0xc5, 0x82, 0xdc, 0x8d, 0xb6, 0x35, 0xd4, 0xe7, 0x4f, 0x0b, 0x81, 0x30, 0x96, 0x96, 0xb2, 0x3b, 0xe9, 0x20, 0xba, 0x8e, 0xc5, 0x53, 0xd4, 0xb3, 0x70, 0xdf, 0x4c, 0x59, 0xd7, 0x4d, 0xd6, 0x54, 0xba, 0xc6, 0xdf, 0x58, 0x15, 0x73, 0xba, 0x1b, 0x28, 0x0c, 0x73, 0x5a, 0x34, 0x01, 0xd9, 0x57, 0xec, 0xd3, 0xb8, 0x90, 0x8e, 0x4e, 0x0b, 0x7d, 0x80, 0x23, 0x9c, 0xe0, 0x42, 0x59, 0x4d, 0x18, 0x2f, 0xaf, 0x2d, 0xdf, 0x81, 0x1c, 0x90, 0x56, 0xaa, 0xc4, 0xc8, 0x7f, 0x4f, 0x85, 0x04, 0x37, 0x66, 0xa2, 0x66, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9067 = { .name = "ecdsa_secp384r1_sha384_9067", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9067_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9067_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9067_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9068 for ECDSA, tcId is 112 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9068_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9068_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9068_sig[] = { 0x96, 0xa6, 0x91, 0xb1, 0x9a, 0x62, 0x94, 0xb3, 0x11, 0xa4, 0x38, 0xf8, 0xda, 0x34, 0x5e, 0x48, 0x0b, 0x1d, 0xea, 0xa1, 0xe9, 0x40, 0xcf, 0xbf, 0x02, 0x17, 0x7d, 0x5f, 0x08, 0x47, 0x99, 0x76, 0xea, 0x58, 0xae, 0xe3, 0x10, 0x11, 0xd5, 0x0b, 0x55, 0x42, 0xbe, 0x18, 0x8c, 0x9d, 0x63, 0xdf, 0x8f, 0x67, 0xdc, 0x9e, 0x15, 0x88, 0xae, 0xb8, 0xbe, 0x18, 0x00, 0x13, 0xd4, 0x1a, 0x03, 0x6f, 0x9b, 0xad, 0xfa, 0xd9, 0xfe, 0x93, 0x40, 0x91, 0x0c, 0xbf, 0x87, 0x24, 0x37, 0x76, 0xf5, 0x4b, 0xef, 0x7d, 0xa2, 0xeb, 0xf3, 0xa7, 0x64, 0x38, 0x66, 0xeb, 0x9a, 0x3b, 0x23, 0xfe, 0x59, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9068 = { .name = "ecdsa_secp384r1_sha384_9068", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9068_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9068_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9068_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9069 for ECDSA, tcId is 113 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9069_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9069_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9069_sig[] = { 0xcf, 0xf2, 0x79, 0x48, 0xc6, 0xd9, 0x02, 0xc7, 0x3d, 0x10, 0x3d, 0x08, 0x02, 0xeb, 0x14, 0x4d, 0xd8, 0x9c, 0x1b, 0x0e, 0x3b, 0x9f, 0x9a, 0x5e, 0x49, 0x8b, 0x03, 0x61, 0xdc, 0x12, 0x2a, 0x0d, 0x55, 0x51, 0x60, 0xd8, 0xc6, 0x4d, 0x61, 0x53, 0x9c, 0x1d, 0xbb, 0xd4, 0xbc, 0x18, 0x97, 0x1f, 0xb6, 0x08, 0x27, 0x48, 0x8c, 0x9f, 0x16, 0xba, 0x28, 0x37, 0x8f, 0xd5, 0x9b, 0x1a, 0x29, 0xc6, 0x50, 0x73, 0x33, 0x5a, 0x7f, 0x23, 0x61, 0x31, 0x13, 0x46, 0x74, 0xc6, 0x2c, 0x83, 0x96, 0xf1, 0x93, 0xc7, 0x6f, 0x23, 0x95, 0xdd, 0xaa, 0xa4, 0xf2, 0x4b, 0x69, 0x16, 0x1e, 0xb6, 0x9b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9069 = { .name = "ecdsa_secp384r1_sha384_9069", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9069_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9069_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9069_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9070 for ECDSA, tcId is 114 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9070_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9070_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9070_sig[] = { 0xe9, 0x0e, 0x22, 0xd9, 0xe5, 0x35, 0xdf, 0xdf, 0xd8, 0x6e, 0x09, 0x8d, 0x5d, 0x6a, 0x0a, 0xe0, 0x8f, 0x69, 0xd4, 0xa3, 0xff, 0xaa, 0x39, 0xf6, 0x93, 0x0b, 0xcf, 0x5f, 0x5a, 0xd0, 0x2e, 0xe0, 0xd0, 0x47, 0x2a, 0xe9, 0x84, 0xed, 0xd9, 0xf0, 0xbb, 0xe5, 0xe7, 0xd6, 0x3f, 0xd4, 0xf6, 0xac, 0xe3, 0xf5, 0x7b, 0x0a, 0x46, 0x29, 0xec, 0xaa, 0x21, 0xf2, 0xd3, 0x4a, 0x7a, 0x08, 0x34, 0xd5, 0x7b, 0xa2, 0x0f, 0x99, 0xc6, 0xe3, 0x1b, 0x43, 0xc3, 0x78, 0x11, 0xcc, 0x23, 0xb9, 0x95, 0x7c, 0x8f, 0x33, 0x56, 0xf4, 0x46, 0x22, 0x14, 0xd3, 0xc8, 0xe5, 0x87, 0x45, 0xe5, 0x0f, 0x23, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9070 = { .name = "ecdsa_secp384r1_sha384_9070", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9070_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9070_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9070_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9071 for ECDSA, tcId is 115 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9071_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9071_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9071_sig[] = { 0x18, 0xb7, 0x0e, 0x27, 0x2a, 0x98, 0xcc, 0x48, 0xe1, 0xe0, 0xaf, 0x73, 0x14, 0x6f, 0x0f, 0x97, 0x2b, 0xbf, 0xbe, 0xb6, 0xb9, 0x85, 0xfe, 0xb2, 0xc4, 0xac, 0xd6, 0x95, 0xa7, 0xa4, 0x1b, 0x99, 0xc4, 0x15, 0xbe, 0x9c, 0x46, 0xae, 0xda, 0xf3, 0xdd, 0xff, 0x67, 0xa6, 0x5a, 0x89, 0xe3, 0x87, 0x47, 0xd6, 0xbc, 0xea, 0x08, 0x8f, 0x62, 0x2a, 0xd3, 0x5d, 0x88, 0xbc, 0xf4, 0x6d, 0x71, 0x82, 0x7b, 0xcb, 0xa2, 0xf5, 0x7c, 0x36, 0xd6, 0xfb, 0x8a, 0x4b, 0xf2, 0xbe, 0xfd, 0xc0, 0xd4, 0xe3, 0xef, 0x36, 0x6d, 0x59, 0x66, 0xc4, 0xd0, 0x76, 0xd3, 0xcf, 0xa4, 0x3d, 0x66, 0x26, 0x71, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9071 = { .name = "ecdsa_secp384r1_sha384_9071", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9071_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9071_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9071_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9072 for ECDSA, tcId is 116 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9072_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9072_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9072_sig[] = { 0xac, 0xfd, 0x98, 0x1c, 0x55, 0xfd, 0x52, 0x86, 0xcf, 0xce, 0x17, 0x37, 0x26, 0xd5, 0x1c, 0x3d, 0x25, 0xf6, 0x5b, 0x11, 0xb7, 0x67, 0x37, 0x29, 0xa6, 0x21, 0x67, 0x25, 0x67, 0x74, 0xf7, 0xc8, 0x94, 0xb7, 0x46, 0x62, 0xa2, 0x12, 0xc7, 0x06, 0xe0, 0x0c, 0xef, 0x09, 0x60, 0x74, 0x16, 0x2f, 0xf4, 0xd4, 0x71, 0xc9, 0x77, 0x97, 0xc2, 0x4d, 0x96, 0xae, 0xc1, 0xde, 0x85, 0xa2, 0x49, 0xef, 0x46, 0x8d, 0x60, 0x36, 0xcd, 0x71, 0x25, 0x63, 0xae, 0xb6, 0x5c, 0xea, 0x49, 0x95, 0xf3, 0xee, 0x85, 0xe7, 0x69, 0xb8, 0x74, 0xf0, 0x9a, 0x08, 0x63, 0x7a, 0x44, 0xa9, 0x60, 0x84, 0xbe, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9072 = { .name = "ecdsa_secp384r1_sha384_9072", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9072_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9072_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9072_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9073 for ECDSA, tcId is 117 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9073_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9073_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9073_sig[] = { 0xf1, 0x5f, 0xcb, 0xee, 0xa8, 0xb6, 0x4d, 0xad, 0x5e, 0x85, 0x66, 0xa2, 0xc3, 0x79, 0x13, 0xc8, 0x2d, 0x6b, 0xe9, 0xd9, 0x66, 0x8d, 0xf4, 0x69, 0xbd, 0x0b, 0x59, 0x1c, 0x39, 0x23, 0xa6, 0xe1, 0x26, 0x44, 0xea, 0xf6, 0x97, 0xd4, 0x66, 0xfa, 0x7c, 0xd5, 0x13, 0x98, 0x3d, 0x94, 0x6a, 0x40, 0x70, 0x06, 0x39, 0x66, 0x80, 0x10, 0x79, 0x35, 0x15, 0x26, 0x99, 0x9e, 0x5c, 0x5c, 0x2c, 0x5f, 0x62, 0x7e, 0x4c, 0x8b, 0xc9, 0x67, 0x84, 0xbc, 0xbe, 0x71, 0x5f, 0xe7, 0xc7, 0xaf, 0xcf, 0x69, 0x78, 0x5d, 0x1c, 0x8c, 0x7c, 0xcd, 0x37, 0x25, 0xe3, 0x64, 0x10, 0x16, 0x38, 0x39, 0x65, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9073 = { .name = "ecdsa_secp384r1_sha384_9073", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9073_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9073_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9073_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9074 for ECDSA, tcId is 118 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9074_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9074_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9074_sig[] = { 0xd9, 0x95, 0x14, 0x79, 0x39, 0xae, 0x6d, 0x8f, 0x62, 0xbb, 0x57, 0x37, 0x22, 0x27, 0x39, 0x58, 0x39, 0xe2, 0x5a, 0x0d, 0x43, 0x08, 0xb8, 0x99, 0xd5, 0xf5, 0x06, 0xcf, 0x9e, 0x0a, 0x01, 0xe8, 0x11, 0x5b, 0x7e, 0x4b, 0x82, 0x2f, 0x03, 0x7e, 0xc9, 0x57, 0x52, 0xbd, 0x9e, 0x89, 0x2f, 0x5e, 0x9b, 0xb4, 0xd0, 0x73, 0x33, 0xe4, 0x68, 0xf8, 0x48, 0x2a, 0x79, 0x0a, 0x2a, 0x2e, 0x65, 0x0e, 0x2c, 0x42, 0xda, 0x82, 0x40, 0xec, 0x5e, 0x40, 0x25, 0x06, 0xb3, 0x68, 0x12, 0x2f, 0x04, 0x66, 0x80, 0xcd, 0x71, 0xe0, 0x11, 0x78, 0x97, 0xcc, 0xe3, 0xdf, 0x4a, 0x15, 0x55, 0xfc, 0x88, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9074 = { .name = "ecdsa_secp384r1_sha384_9074", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9074_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9074_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9074_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9075 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9075_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9075_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9075_sig[] = { 0x43, 0xc6, 0xce, 0x51, 0x84, 0x47, 0x6f, 0x3f, 0x49, 0x6a, 0xfe, 0xae, 0x3c, 0xb9, 0x6a, 0x3f, 0x9f, 0x03, 0x89, 0x57, 0x68, 0x6c, 0x93, 0x43, 0x7b, 0x82, 0x66, 0xa2, 0x33, 0x02, 0x23, 0x71, 0xd2, 0x66, 0xe9, 0x04, 0xaa, 0x09, 0x6c, 0x35, 0x66, 0xcb, 0x33, 0x82, 0x4b, 0x88, 0x07, 0x5e, 0x68, 0x0c, 0x13, 0x24, 0x5a, 0x8b, 0xc5, 0x60, 0xb6, 0x38, 0xd2, 0x6f, 0x0c, 0x5f, 0x26, 0x19, 0x64, 0x13, 0x02, 0x56, 0x93, 0x95, 0x52, 0xd3, 0xff, 0xfb, 0x07, 0xb6, 0x58, 0x35, 0x56, 0x11, 0x61, 0x2c, 0x26, 0x8a, 0x89, 0x54, 0x10, 0x55, 0xd3, 0xc2, 0xbf, 0x9e, 0x82, 0xcf, 0x4d, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9075 = { .name = "ecdsa_secp384r1_sha384_9075", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9075_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9075_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9075_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9076 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9076_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9076_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9076_sig[] = { 0x44, 0x75, 0x39, 0x94, 0x1d, 0xc3, 0x50, 0x76, 0x7f, 0xc8, 0x41, 0x08, 0x3d, 0x25, 0xd9, 0x24, 0x7a, 0x08, 0x07, 0xe1, 0xe2, 0x2e, 0x0b, 0xb9, 0xd9, 0x4f, 0x50, 0x4f, 0x72, 0x19, 0x81, 0xb4, 0x13, 0xd5, 0x21, 0xef, 0xbd, 0x75, 0xe4, 0xfe, 0x83, 0x1e, 0xe2, 0x63, 0x38, 0xcf, 0x3d, 0xe3, 0x00, 0x39, 0x5a, 0xb2, 0x7e, 0xa7, 0x82, 0xce, 0xe4, 0xbe, 0x53, 0xe0, 0x6c, 0x76, 0x16, 0xbb, 0xd4, 0x1d, 0x69, 0x26, 0xb1, 0x8d, 0x21, 0x9d, 0x75, 0xd5, 0x97, 0x9f, 0x13, 0xcb, 0xa2, 0xf5, 0x21, 0x01, 0x01, 0x9b, 0x0e, 0xc0, 0xa4, 0x1f, 0xfd, 0xbf, 0x29, 0xef, 0x73, 0xdd, 0xba, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9076 = { .name = "ecdsa_secp384r1_sha384_9076", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9076_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9076_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9076_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9077 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9077_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9077_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9077_sig[] = { 0xa0, 0xba, 0x8e, 0x8b, 0x97, 0x9c, 0x20, 0x34, 0x5e, 0x34, 0xfc, 0xa9, 0x85, 0x31, 0x90, 0x01, 0x64, 0xa8, 0x59, 0x92, 0x3b, 0xd6, 0x98, 0x6a, 0x9c, 0x39, 0x23, 0x6a, 0x2f, 0x5d, 0xe0, 0x53, 0xa2, 0x52, 0x99, 0x7f, 0x35, 0xe5, 0xb8, 0x4b, 0x0d, 0x48, 0xba, 0x0f, 0x8d, 0x09, 0xae, 0xdd, 0xfa, 0xcd, 0x6d, 0xf0, 0x43, 0x58, 0xfc, 0xd9, 0x5f, 0xa9, 0x01, 0x8a, 0x6f, 0xc0, 0x82, 0x8d, 0xfe, 0x31, 0x98, 0x12, 0xff, 0x65, 0x92, 0x9c, 0x06, 0x0b, 0x18, 0xad, 0x4b, 0x9f, 0x06, 0xe7, 0xfc, 0x0a, 0xdd, 0xd1, 0xb6, 0x95, 0x31, 0x5d, 0x71, 0xc1, 0x5e, 0x51, 0xdc, 0x51, 0xd7, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9077 = { .name = "ecdsa_secp384r1_sha384_9077", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9077_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9077_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9077_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9078 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9078_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9078_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9078_sig[] = { 0xb8, 0x37, 0x83, 0x90, 0xf7, 0x1f, 0x0b, 0xb6, 0x66, 0x3f, 0x18, 0x46, 0xda, 0xf6, 0x90, 0x8f, 0x8c, 0x84, 0xf7, 0x70, 0xae, 0x74, 0x0c, 0xc8, 0x05, 0x41, 0x22, 0x49, 0x4c, 0xf0, 0xff, 0xa9, 0x43, 0x7a, 0xb2, 0x60, 0x40, 0xca, 0x22, 0x80, 0x8f, 0xb2, 0x9a, 0x81, 0x0b, 0x70, 0x12, 0x6e, 0x42, 0x76, 0x36, 0xb9, 0x29, 0xa5, 0x00, 0xab, 0xc3, 0x4d, 0x9f, 0x22, 0x97, 0x7b, 0x81, 0xe7, 0x34, 0x91, 0x9a, 0xfa, 0xf3, 0xed, 0x2c, 0x91, 0xee, 0xad, 0xa7, 0x07, 0x4e, 0x0c, 0x16, 0xbd, 0xc5, 0x2f, 0x96, 0x0e, 0xae, 0xc9, 0xdb, 0x5a, 0x87, 0x9c, 0x1e, 0x64, 0x14, 0x03, 0x51, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9078 = { .name = "ecdsa_secp384r1_sha384_9078", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9078_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9078_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9078_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9079 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9079_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9079_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9079_sig[] = { 0xf3, 0x6a, 0x90, 0x48, 0xfd, 0x94, 0x80, 0x3d, 0x3d, 0x6d, 0x1b, 0x11, 0x43, 0x0b, 0x90, 0xb9, 0x4e, 0xf8, 0xd5, 0xd2, 0xad, 0x89, 0x01, 0x8c, 0x69, 0x47, 0x3c, 0xe9, 0xcf, 0xe0, 0xd6, 0x10, 0x5b, 0x3c, 0x2f, 0xb2, 0xe7, 0x55, 0x5c, 0xcd, 0x25, 0xf6, 0x5a, 0xf8, 0xc8, 0x72, 0xbd, 0xc6, 0x81, 0x25, 0x48, 0x41, 0xe7, 0xec, 0xbf, 0xd0, 0xd8, 0x10, 0xaf, 0xaa, 0xf5, 0xaf, 0xd6, 0xd6, 0xc5, 0xd0, 0x54, 0x2b, 0xb0, 0x0c, 0xc1, 0x83, 0xb1, 0xdb, 0x01, 0x76, 0x71, 0x20, 0xaf, 0xbc, 0xc0, 0x00, 0x6d, 0xdc, 0xba, 0x8d, 0xb7, 0xba, 0xf6, 0x5f, 0x30, 0x27, 0x23, 0xda, 0xbc, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9079 = { .name = "ecdsa_secp384r1_sha384_9079", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9079_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9079_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9079_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9080 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9080_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9080_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9080_sig[] = { 0xd8, 0xa4, 0xd9, 0x64, 0x09, 0xc1, 0x91, 0xba, 0xa9, 0x54, 0x0b, 0xf3, 0x5f, 0x1d, 0x51, 0x92, 0xf9, 0x35, 0x2d, 0x7f, 0x0e, 0x14, 0xf9, 0x2c, 0x0e, 0x8e, 0x1f, 0x19, 0xf5, 0x59, 0xb4, 0x2e, 0xd3, 0xc6, 0xb7, 0xbd, 0xb6, 0xbe, 0xcc, 0x56, 0x58, 0x4f, 0xb5, 0xc0, 0x94, 0x21, 0xe2, 0xe4, 0xd9, 0x66, 0xba, 0x13, 0xd4, 0x24, 0x5e, 0x24, 0x8e, 0xaf, 0xb4, 0x6f, 0x2a, 0x3d, 0xf9, 0x2c, 0x20, 0x37, 0xd5, 0x96, 0x9c, 0x7d, 0xb6, 0xdb, 0xcb, 0x0f, 0xf4, 0xb2, 0x18, 0x50, 0xe1, 0x6a, 0x18, 0xa2, 0x97, 0x85, 0x26, 0x72, 0x39, 0x88, 0x63, 0x65, 0xcf, 0x72, 0x1a, 0x21, 0x25, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9080 = { .name = "ecdsa_secp384r1_sha384_9080", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9080_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9080_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9080_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9081 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9081_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9081_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9081_sig[] = { 0x1d, 0x5d, 0x86, 0xfd, 0x48, 0xe6, 0x5b, 0x0c, 0xf0, 0xb0, 0xb4, 0x60, 0x62, 0x24, 0x1f, 0x89, 0xcf, 0x65, 0x78, 0x5d, 0xd8, 0x18, 0xf9, 0x3f, 0x11, 0x62, 0x77, 0x1a, 0x38, 0xa1, 0x5f, 0x20, 0xfe, 0xbc, 0x26, 0x18, 0x12, 0xec, 0xaa, 0xf6, 0xf4, 0xf2, 0xb8, 0x6b, 0x33, 0x62, 0xd7, 0xeb, 0x0c, 0x76, 0xe3, 0x63, 0xde, 0x14, 0x32, 0x51, 0x3c, 0xb9, 0xda, 0xd6, 0x49, 0x39, 0x31, 0x38, 0x1e, 0xcd, 0x25, 0xf1, 0x42, 0xe6, 0x19, 0x68, 0xb6, 0xf2, 0x0d, 0x7b, 0x12, 0x70, 0xcb, 0x9e, 0x38, 0xa7, 0xae, 0x54, 0xe4, 0x77, 0x8a, 0xff, 0x40, 0x25, 0xeb, 0x00, 0xc6, 0xa6, 0x7a, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9081 = { .name = "ecdsa_secp384r1_sha384_9081", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9081_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9081_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9081_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9082 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9082_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9082_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9082_sig[] = { 0x05, 0x08, 0xee, 0xd1, 0x48, 0xf0, 0x61, 0x11, 0x4b, 0xe1, 0x8e, 0x8a, 0x86, 0x18, 0x8f, 0xea, 0xbf, 0x76, 0xb8, 0x73, 0xb3, 0x6e, 0xad, 0xcc, 0xa9, 0xc2, 0xc6, 0x0e, 0x24, 0xa2, 0x00, 0x2f, 0xe4, 0x56, 0x23, 0x1d, 0xec, 0xf7, 0xa8, 0xf6, 0xf0, 0x32, 0xc0, 0x8d, 0xbe, 0x0a, 0xb5, 0xa9, 0x69, 0x4c, 0x0a, 0xd7, 0x81, 0xb2, 0x34, 0x1e, 0x30, 0xe1, 0xd0, 0x73, 0x9a, 0xc9, 0x96, 0x72, 0x06, 0x4f, 0x48, 0x82, 0x1a, 0x69, 0x85, 0x2c, 0x79, 0x40, 0xcf, 0x1d, 0x62, 0x17, 0x38, 0x19, 0x9c, 0x98, 0x0d, 0x56, 0xd2, 0xa0, 0xb7, 0x1b, 0x3f, 0xc6, 0x01, 0x1c, 0x6b, 0x24, 0x44, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9082 = { .name = "ecdsa_secp384r1_sha384_9082", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9082_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9082_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9082_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9083 for ECDSA, tcId is 127 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9083_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9083_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9083_sig[] = { 0x72, 0x6e, 0xf8, 0x8b, 0xb7, 0x94, 0x7a, 0x04, 0x31, 0x16, 0xc1, 0x11, 0xcb, 0x51, 0x9d, 0xde, 0xda, 0x3e, 0x6f, 0xfb, 0xf7, 0x24, 0x88, 0x4a, 0x1b, 0x22, 0xc2, 0x44, 0x09, 0xcd, 0xf2, 0x77, 0x9d, 0x93, 0xce, 0x61, 0x0c, 0x8c, 0x07, 0x41, 0x1c, 0x2b, 0x00, 0x13, 0x99, 0x10, 0x3d, 0x6d, 0x95, 0xdc, 0x1d, 0x65, 0x04, 0x6c, 0xaf, 0x0e, 0x8d, 0xad, 0x07, 0xb2, 0x24, 0x79, 0x8d, 0x6f, 0x78, 0x07, 0x27, 0x8e, 0x73, 0x78, 0x83, 0xe7, 0xc7, 0xbf, 0x0b, 0x44, 0x67, 0x91, 0xd4, 0xee, 0x14, 0x4c, 0x26, 0xf7, 0x10, 0x13, 0x48, 0x61, 0xaf, 0x4e, 0x67, 0x71, 0xd4, 0x08, 0x28, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9083 = { .name = "ecdsa_secp384r1_sha384_9083", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9083_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9083_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9083_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9084 for ECDSA, tcId is 128 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9084_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9084_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9084_sig[] = { 0xeb, 0x0e, 0x8e, 0x3c, 0x63, 0x9f, 0x5e, 0xba, 0x8e, 0xcc, 0xd9, 0x02, 0x0d, 0x0e, 0xc6, 0x2d, 0x8a, 0xc7, 0x3f, 0x3f, 0xdd, 0xbd, 0xfa, 0x08, 0xfd, 0xb2, 0x15, 0x5d, 0xeb, 0x0a, 0x53, 0x69, 0x23, 0xeb, 0xd5, 0x5e, 0x20, 0x02, 0x0c, 0xab, 0x9f, 0x8e, 0x39, 0xa4, 0x3a, 0x88, 0xbe, 0x11, 0xc7, 0x96, 0xdf, 0x39, 0x9f, 0xc3, 0x58, 0x83, 0xdd, 0x5d, 0xae, 0x68, 0x17, 0xd0, 0x2d, 0x3d, 0x67, 0xa8, 0xee, 0xc6, 0x60, 0x15, 0x85, 0xe5, 0xe3, 0x6f, 0xd2, 0xc1, 0x34, 0xed, 0xdb, 0x14, 0x47, 0xec, 0x12, 0xb1, 0x44, 0xdd, 0xdc, 0x9a, 0xae, 0x28, 0xa8, 0x4f, 0x22, 0x60, 0x26, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9084 = { .name = "ecdsa_secp384r1_sha384_9084", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9084_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9084_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9084_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9085 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9085_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9085_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9085_sig[] = { 0xe8, 0xf8, 0xc6, 0x9d, 0x03, 0x96, 0xea, 0x90, 0x0f, 0x97, 0x57, 0x73, 0x6d, 0x2b, 0x19, 0xdb, 0xc2, 0xd2, 0xa8, 0xc0, 0x1d, 0xcc, 0xf4, 0x90, 0xc8, 0xb9, 0x45, 0x5b, 0xd6, 0x3b, 0x34, 0xc0, 0x95, 0x86, 0x7e, 0x7c, 0xf3, 0xb8, 0x4d, 0xc7, 0xc3, 0xc3, 0xd6, 0xb5, 0x1b, 0xeb, 0xf4, 0x05, 0x58, 0x15, 0x2a, 0x75, 0x64, 0xee, 0xb2, 0x2a, 0x3e, 0x26, 0x59, 0x70, 0x26, 0xd0, 0xcd, 0x78, 0x35, 0x72, 0x5b, 0xd5, 0x12, 0x24, 0x54, 0x48, 0xcb, 0x50, 0x16, 0xeb, 0x48, 0xea, 0x75, 0x98, 0x09, 0xfd, 0x69, 0x49, 0xd0, 0xee, 0x5d, 0x57, 0x96, 0x43, 0xf7, 0x2f, 0x90, 0x8c, 0x16, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9085 = { .name = "ecdsa_secp384r1_sha384_9085", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9085_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9085_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9085_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9086 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9086_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9086_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9086_sig[] = { 0x38, 0x0b, 0x4e, 0x48, 0xb3, 0xff, 0x01, 0x2a, 0xf7, 0xc0, 0x8b, 0xf8, 0x71, 0xd9, 0xf4, 0xda, 0x0c, 0x70, 0x8b, 0x54, 0x94, 0xa9, 0x86, 0xd3, 0xd8, 0x0b, 0x19, 0x79, 0xe5, 0x79, 0xd0, 0xdb, 0xee, 0x61, 0xdb, 0x9b, 0xc3, 0xc0, 0x4c, 0x39, 0x61, 0x76, 0x41, 0x07, 0x88, 0xe1, 0x5a, 0x0f, 0xe6, 0x97, 0x1c, 0x01, 0x3c, 0x96, 0x5a, 0x7e, 0x4d, 0xf1, 0x0f, 0x95, 0x62, 0x0a, 0x50, 0x92, 0xfa, 0xb0, 0x96, 0xbd, 0x5b, 0x50, 0x82, 0x8f, 0x4b, 0xc9, 0x1c, 0x5e, 0x47, 0x9b, 0xcc, 0xf6, 0xe0, 0xda, 0xf2, 0x87, 0xe7, 0xef, 0x58, 0x0f, 0xa9, 0xea, 0x15, 0x3f, 0xa1, 0xa5, 0x07, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9086 = { .name = "ecdsa_secp384r1_sha384_9086", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9086_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9086_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9086_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9087 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9087_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9087_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9087_sig[] = { 0x80, 0x61, 0xde, 0x12, 0x02, 0x9e, 0x2b, 0x00, 0x0d, 0x15, 0x7a, 0x45, 0x5e, 0xcf, 0x23, 0x01, 0x22, 0x2f, 0x09, 0x2d, 0xf9, 0x5b, 0x95, 0x51, 0xb7, 0x8c, 0xf0, 0xef, 0x3a, 0x64, 0xf1, 0x22, 0x12, 0xb5, 0x7e, 0xc7, 0xb1, 0x6d, 0x2c, 0x0f, 0x25, 0x89, 0x46, 0xf5, 0x1c, 0xb1, 0x63, 0x3a, 0x0a, 0xc2, 0xca, 0x6a, 0xd9, 0x9b, 0x29, 0xca, 0x29, 0xa0, 0xdc, 0x38, 0xb3, 0x44, 0x43, 0xee, 0x41, 0x02, 0x0f, 0x81, 0xed, 0x90, 0x87, 0xce, 0xf7, 0x68, 0x1a, 0x00, 0xc4, 0xfe, 0x60, 0x65, 0x3a, 0x57, 0x29, 0x44, 0xba, 0x37, 0xf1, 0xfe, 0x51, 0xd1, 0x12, 0xbf, 0xff, 0xbd, 0xd7, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9087 = { .name = "ecdsa_secp384r1_sha384_9087", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9087_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9087_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9087_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9088 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9088_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9088_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9088_sig[] = { 0xe7, 0x4f, 0x2a, 0x79, 0x1e, 0xeb, 0x73, 0x41, 0xcf, 0xf6, 0xcc, 0x1c, 0x24, 0xf4, 0x59, 0xe6, 0xc0, 0x10, 0x99, 0x24, 0xf7, 0x98, 0x46, 0x39, 0xae, 0x38, 0x7e, 0x3c, 0xeb, 0x58, 0x75, 0x8a, 0x1b, 0xc3, 0x83, 0x9d, 0xea, 0x1f, 0xc3, 0xa3, 0x79, 0x95, 0x62, 0x22, 0x5e, 0x70, 0xa7, 0x33, 0xd9, 0x0e, 0x4d, 0x0f, 0x47, 0x34, 0x32, 0x68, 0xe5, 0x6b, 0xbc, 0xb0, 0x11, 0xbd, 0x47, 0x34, 0x39, 0x0a, 0xbc, 0x9a, 0xa1, 0x30, 0x4b, 0x62, 0x53, 0xe7, 0x8f, 0x5a, 0x78, 0xb6, 0x90, 0x5a, 0xa6, 0xbf, 0x6a, 0x38, 0x92, 0xa4, 0xae, 0x1a, 0x87, 0x5c, 0x82, 0x3a, 0xe5, 0xa8, 0x3e, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9088 = { .name = "ecdsa_secp384r1_sha384_9088", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9088_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9088_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9088_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9089 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9089_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9089_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9089_sig[] = { 0x6a, 0x1c, 0xd0, 0xff, 0x79, 0x06, 0xbe, 0x20, 0x7b, 0x56, 0x86, 0x2e, 0xdc, 0xbc, 0x0d, 0x0b, 0xbf, 0xb2, 0x6d, 0x43, 0x25, 0x5c, 0x99, 0xf6, 0xab, 0x77, 0x63, 0x9f, 0x5e, 0x61, 0x03, 0xa0, 0x7a, 0xa3, 0x22, 0xb2, 0x2e, 0xd4, 0x38, 0x70, 0xd1, 0xce, 0x6d, 0xf6, 0x8a, 0xa0, 0xa8, 0xc1, 0x65, 0x55, 0x58, 0xb1, 0x29, 0xaa, 0x23, 0x18, 0x45, 0x00, 0xbd, 0x4a, 0xab, 0x4f, 0x03, 0x55, 0xd3, 0x19, 0x2e, 0x9b, 0x88, 0x60, 0xf6, 0x0b, 0x05, 0xa1, 0xc2, 0x92, 0x61, 0xf4, 0x48, 0x6a, 0x6a, 0xe2, 0x35, 0xa5, 0x26, 0x33, 0x9b, 0x86, 0xc0, 0x5f, 0x5f, 0xac, 0x47, 0x7b, 0x67, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9089 = { .name = "ecdsa_secp384r1_sha384_9089", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9089_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9089_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9089_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9090 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9090_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9090_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9090_sig[] = { 0x81, 0x11, 0x1f, 0xdc, 0x5f, 0x0d, 0xe6, 0x55, 0x83, 0xc7, 0xa5, 0x66, 0x8d, 0x26, 0xc0, 0x4e, 0xe5, 0x2e, 0x08, 0xda, 0xc2, 0x27, 0x75, 0x31, 0x32, 0xcf, 0xf1, 0x74, 0x1c, 0xb7, 0x21, 0xe1, 0x12, 0xaa, 0x79, 0x3c, 0x0d, 0x5f, 0xa0, 0x47, 0xfa, 0xf1, 0x4c, 0xb4, 0x5d, 0xd1, 0x3e, 0x1f, 0x9a, 0x25, 0xcf, 0x1e, 0x6c, 0x15, 0x2b, 0xc3, 0xe2, 0x16, 0xe0, 0x21, 0x56, 0x1d, 0x19, 0x49, 0x79, 0xf1, 0xc1, 0x1f, 0xe1, 0x70, 0x19, 0xed, 0x7b, 0xac, 0x2c, 0x13, 0xc4, 0x01, 0x0f, 0x20, 0x96, 0x65, 0xe3, 0xb6, 0xf3, 0x3b, 0x86, 0x64, 0x17, 0x04, 0xd9, 0x22, 0xb4, 0x07, 0x81, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9090 = { .name = "ecdsa_secp384r1_sha384_9090", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9090_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9090_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9090_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9091 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9091_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9091_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9091_sig[] = { 0x9b, 0x66, 0xd1, 0x22, 0xa3, 0x15, 0x09, 0x5b, 0x2b, 0x66, 0xcc, 0xb9, 0x72, 0x72, 0xc4, 0x76, 0xa2, 0xd7, 0x60, 0xe8, 0x27, 0xfd, 0xea, 0x05, 0x73, 0x2d, 0x63, 0x4d, 0xf3, 0xd0, 0x66, 0x56, 0x9c, 0x98, 0x4d, 0xd9, 0x41, 0xaa, 0xd5, 0xf5, 0xde, 0xc4, 0xc2, 0xe1, 0xb7, 0xb9, 0x4a, 0x00, 0x96, 0xc3, 0x24, 0x03, 0xc8, 0x5b, 0xc3, 0xd0, 0xee, 0x87, 0xf9, 0x6a, 0x60, 0x01, 0x82, 0x79, 0x6d, 0xce, 0x53, 0xd5, 0x4d, 0x74, 0x67, 0xae, 0x66, 0x0a, 0x42, 0xb8, 0x7b, 0xb7, 0x07, 0x92, 0xf1, 0x46, 0x50, 0xac, 0x28, 0xa5, 0xfa, 0x47, 0xce, 0x9c, 0xa4, 0xd3, 0xb2, 0xc2, 0x58, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9091 = { .name = "ecdsa_secp384r1_sha384_9091", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9091_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9091_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9091_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9092 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9092_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9092_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9092_sig[] = { 0x2b, 0xb0, 0x62, 0xa0, 0x02, 0x08, 0x8d, 0x62, 0xa0, 0xb7, 0x33, 0x8d, 0x04, 0x84, 0xfe, 0xdf, 0xe2, 0xaf, 0x7e, 0x20, 0xce, 0xbf, 0x6a, 0x47, 0x88, 0x26, 0x4e, 0xb2, 0x7c, 0xb4, 0xeb, 0xc3, 0xcc, 0x81, 0xc8, 0x16, 0xe6, 0xa3, 0x57, 0x22, 0xcf, 0x9b, 0x46, 0x47, 0x83, 0x09, 0x4c, 0xb8, 0x46, 0xcc, 0x21, 0xb7, 0x0f, 0x21, 0x33, 0xf8, 0x5a, 0xb0, 0x44, 0x3b, 0xeb, 0xe9, 0xc6, 0xfc, 0x62, 0xc6, 0xe2, 0xec, 0x1f, 0xd9, 0xc4, 0xdd, 0xf4, 0xa6, 0xd5, 0xf3, 0xf4, 0x8e, 0xb7, 0xab, 0xf1, 0xee, 0x7b, 0xdf, 0x67, 0x25, 0x87, 0x9f, 0xd1, 0xb7, 0xda, 0xaf, 0xb4, 0x4f, 0x6e, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9092 = { .name = "ecdsa_secp384r1_sha384_9092", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9092_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9092_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9092_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9093 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9093_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9093_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9093_sig[] = { 0x33, 0xe8, 0x70, 0x61, 0xee, 0x9a, 0x82, 0xeb, 0x74, 0xd8, 0xbb, 0x4a, 0xe9, 0x16, 0x06, 0x56, 0x3c, 0x2e, 0x4d, 0xb8, 0xb0, 0x91, 0x83, 0xcc, 0x00, 0xd1, 0x11, 0x9a, 0xb4, 0xf5, 0x03, 0x3d, 0x28, 0x7a, 0x1f, 0xc9, 0x0a, 0x23, 0x48, 0x16, 0x3f, 0xdf, 0x68, 0xd3, 0x50, 0x06, 0xfd, 0x7f, 0x96, 0xdb, 0x97, 0xc9, 0x47, 0xee, 0x2e, 0x96, 0xe6, 0x13, 0x9d, 0x3b, 0xcb, 0xf5, 0xa4, 0x36, 0x06, 0xba, 0xe1, 0xad, 0x3c, 0xa2, 0x82, 0x90, 0xfb, 0xad, 0x43, 0xb2, 0x81, 0xef, 0x11, 0x5e, 0xc1, 0xb9, 0x8b, 0xc5, 0x81, 0xef, 0x48, 0x09, 0x4f, 0x8c, 0x1a, 0xa8, 0xe3, 0x6c, 0x28, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9093 = { .name = "ecdsa_secp384r1_sha384_9093", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9093_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9093_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9093_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9094 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9094_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9094_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9094_sig[] = { 0x70, 0xf8, 0x0b, 0x43, 0x84, 0x24, 0xba, 0x22, 0x8a, 0x7d, 0x80, 0xf2, 0x6e, 0x22, 0xff, 0x6a, 0x89, 0x62, 0x43, 0xc9, 0xd4, 0x9c, 0x75, 0x57, 0x34, 0x89, 0xee, 0x0d, 0xe5, 0x8e, 0xc6, 0x0e, 0xfd, 0x10, 0x38, 0x38, 0x14, 0x34, 0x65, 0xbd, 0x8f, 0xe3, 0x46, 0x72, 0xba, 0x94, 0x96, 0x17, 0x11, 0x54, 0x92, 0xbd, 0x93, 0x65, 0xb9, 0x6f, 0x38, 0x74, 0x75, 0x36, 0x31, 0x8b, 0xff, 0xb8, 0x19, 0xe7, 0xc1, 0x46, 0xdf, 0x3a, 0x5a, 0x7a, 0x46, 0xd6, 0x28, 0x8c, 0x7f, 0xdf, 0x31, 0xcf, 0xf5, 0x70, 0xb2, 0x21, 0x76, 0xaa, 0x39, 0x8d, 0xab, 0xa9, 0x07, 0x3a, 0xb1, 0xe7, 0xb9, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9094 = { .name = "ecdsa_secp384r1_sha384_9094", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9094_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9094_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9094_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9095 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9095_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9095_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9095_sig[] = { 0xff, 0x16, 0xca, 0x03, 0x89, 0xea, 0x69, 0x48, 0xf4, 0x30, 0x5b, 0x43, 0x4f, 0xe0, 0xaa, 0x58, 0x9f, 0x88, 0x0f, 0x5a, 0xa9, 0x37, 0x76, 0x7c, 0x31, 0x17, 0x0e, 0xe8, 0xda, 0x6c, 0x1a, 0xd6, 0x20, 0xc9, 0x93, 0xd4, 0x0d, 0xdf, 0x14, 0x1b, 0x7f, 0xda, 0x37, 0x42, 0x4d, 0x51, 0xb5, 0xcd, 0xba, 0x0f, 0x86, 0x98, 0x5d, 0xff, 0xc6, 0x1d, 0x6e, 0x35, 0xa3, 0x7d, 0xe0, 0x69, 0x18, 0xb1, 0x1e, 0x43, 0x1b, 0x72, 0x40, 0x31, 0x61, 0xac, 0xfb, 0x8f, 0x05, 0xc4, 0x69, 0xf1, 0xfc, 0xfa, 0x6e, 0x21, 0x5c, 0x6f, 0x7e, 0xb5, 0xa0, 0xa5, 0xe0, 0xcc, 0x9e, 0x7b, 0xe7, 0x9c, 0xe1, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9095 = { .name = "ecdsa_secp384r1_sha384_9095", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9095_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9095_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9095_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9096 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9096_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9096_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9096_sig[] = { 0xd6, 0x0c, 0x24, 0xbe, 0xe0, 0x5f, 0x51, 0x98, 0xcd, 0x15, 0x5a, 0xd0, 0x95, 0xff, 0xb9, 0x56, 0xbb, 0xcf, 0xb6, 0x6b, 0x82, 0xfc, 0x0d, 0x37, 0x55, 0x11, 0x99, 0x15, 0xa6, 0x2f, 0x2f, 0x92, 0x35, 0x57, 0xb8, 0x5d, 0xdc, 0x1d, 0x12, 0xe6, 0xa7, 0x57, 0xf2, 0x30, 0x42, 0xcb, 0x60, 0x1b, 0x2c, 0x4d, 0x96, 0x8b, 0x5e, 0xac, 0x93, 0x0b, 0x51, 0xd2, 0x83, 0xb4, 0x18, 0xfc, 0xff, 0x6d, 0xf3, 0xa9, 0xd6, 0xd6, 0x6e, 0x38, 0x12, 0xcd, 0x1b, 0xf5, 0xfd, 0xe7, 0x97, 0xfd, 0x20, 0x3a, 0x7c, 0x43, 0x9b, 0x1b, 0x38, 0x1e, 0x4f, 0xe8, 0xb4, 0x4e, 0x6f, 0x10, 0x87, 0x64, 0xa7, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9096 = { .name = "ecdsa_secp384r1_sha384_9096", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9096_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9096_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9096_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9097 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9097_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9097_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9097_sig[] = { 0xbd, 0xf6, 0x34, 0xd9, 0x15, 0xa4, 0xfa, 0xe7, 0xa1, 0x55, 0x53, 0x2c, 0xa2, 0x84, 0x7c, 0x33, 0xa6, 0xba, 0xbe, 0x7e, 0xf8, 0xdb, 0x0a, 0xf5, 0x0f, 0x48, 0x5d, 0xb3, 0xdd, 0x2c, 0x8b, 0xff, 0xe7, 0x22, 0x39, 0x45, 0x83, 0x93, 0x2f, 0x6e, 0xb5, 0xcd, 0x97, 0xf6, 0xdb, 0x75, 0x61, 0xd9, 0xbb, 0x42, 0x5c, 0xae, 0x2e, 0x54, 0x83, 0x17, 0x4b, 0x5e, 0xd8, 0x73, 0xaf, 0x43, 0x29, 0xda, 0x46, 0x18, 0xc1, 0x44, 0x58, 0x14, 0x18, 0x50, 0xbe, 0xe3, 0xc7, 0xbf, 0x1f, 0xfb, 0x3f, 0x20, 0x30, 0x15, 0x90, 0x43, 0x27, 0x7d, 0xac, 0xc7, 0x08, 0xe9, 0xd3, 0x2f, 0x63, 0x40, 0x00, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9097 = { .name = "ecdsa_secp384r1_sha384_9097", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9097_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9097_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9097_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9098 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9098_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9098_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9098_sig[] = { 0x06, 0x13, 0x20, 0xa3, 0xbc, 0xeb, 0xac, 0x33, 0xcf, 0x39, 0x9d, 0x45, 0xd1, 0xe1, 0xe1, 0xb3, 0x4f, 0x37, 0x28, 0x8f, 0xe4, 0x75, 0x3f, 0x4f, 0xdd, 0xfd, 0x49, 0x6e, 0xff, 0x42, 0x7e, 0x1d, 0x26, 0xb1, 0xb9, 0x1d, 0x74, 0x9c, 0xc3, 0x4c, 0x12, 0xf4, 0xec, 0xef, 0x83, 0x7c, 0x0e, 0x8f, 0xfd, 0x5c, 0xf4, 0x68, 0xcd, 0xa3, 0x19, 0xfe, 0x06, 0xe7, 0x73, 0xa1, 0x90, 0xc3, 0x8d, 0xe6, 0xe1, 0x50, 0xa3, 0x21, 0xac, 0x1c, 0x41, 0x6a, 0xd8, 0x75, 0x43, 0x2c, 0xdb, 0x7a, 0x07, 0x13, 0x4c, 0x44, 0x6f, 0x13, 0x06, 0x8e, 0x71, 0xa1, 0xa9, 0x6e, 0x35, 0xda, 0x92, 0x39, 0x74, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9098 = { .name = "ecdsa_secp384r1_sha384_9098", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9098_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9098_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9098_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9099 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9099_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9099_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9099_sig[] = { 0xd6, 0x20, 0xf0, 0x63, 0xd3, 0x3e, 0xfa, 0x85, 0x9b, 0x62, 0x3f, 0x6c, 0x9a, 0x92, 0x34, 0x0e, 0x4c, 0xdd, 0x85, 0x4f, 0xfb, 0xe3, 0xe5, 0xe0, 0x13, 0x79, 0x17, 0x7a, 0xee, 0x31, 0x71, 0x5c, 0xe5, 0x87, 0xb0, 0x0b, 0xd0, 0xae, 0xa9, 0x8f, 0xdd, 0xf2, 0x36, 0xd2, 0xfc, 0x8a, 0x7a, 0x74, 0x67, 0x1f, 0x4b, 0x7c, 0x18, 0x72, 0x97, 0xdc, 0x23, 0x6c, 0x61, 0x88, 0x8b, 0x6d, 0x93, 0x97, 0xe9, 0x77, 0x83, 0x07, 0x7c, 0xc4, 0x10, 0x18, 0x07, 0xd7, 0x9e, 0xe6, 0x2e, 0x4a, 0x53, 0xa7, 0x8c, 0x4b, 0x6a, 0x3a, 0x31, 0xb0, 0x31, 0x78, 0x66, 0x8a, 0xf8, 0x94, 0xa3, 0xd8, 0x90, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9099 = { .name = "ecdsa_secp384r1_sha384_9099", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9099_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9099_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9099_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9100 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9100_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9100_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9100_sig[] = { 0x91, 0xc5, 0x56, 0xc5, 0xbd, 0xdd, 0x52, 0x9f, 0xe9, 0x03, 0xb8, 0x6a, 0xfc, 0x0e, 0xb8, 0xfa, 0x1f, 0x49, 0x42, 0x5b, 0x77, 0x9a, 0x39, 0x11, 0x4a, 0xe5, 0x63, 0xbe, 0xbc, 0x94, 0x7e, 0x63, 0x3b, 0xa4, 0xee, 0x98, 0x94, 0x8f, 0xaa, 0x89, 0x40, 0xdf, 0xe2, 0x56, 0x2c, 0x63, 0xe1, 0xc5, 0x19, 0x8b, 0x00, 0x07, 0x9d, 0x8d, 0xb0, 0x72, 0xd2, 0x5b, 0x0a, 0x49, 0xbc, 0x8b, 0xc3, 0x64, 0x57, 0x92, 0x6f, 0x3c, 0x10, 0x15, 0x27, 0x52, 0x8d, 0xf6, 0x67, 0x9f, 0x92, 0xc7, 0x6f, 0x1b, 0x48, 0x7e, 0x66, 0x95, 0xd4, 0xb9, 0x2f, 0xe3, 0x3b, 0x4e, 0xe7, 0x04, 0x6a, 0x6a, 0x5d, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9100 = { .name = "ecdsa_secp384r1_sha384_9100", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9100_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9100_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9100_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9101 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9101_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_9101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9101_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9101 = { .name = "ecdsa_secp384r1_sha384_9101", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9101_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9101_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9101_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 145 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9102 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9102_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_9102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9102_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9102 = { .name = "ecdsa_secp384r1_sha384_9102", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9102_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9102_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9102_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 146 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9103 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9103_pubkey[] = { 0x36, 0x23, 0xbb, 0x29, 0x6b, 0x88, 0xf6, 0x26, 0xd0, 0xf9, 0x26, 0x56, 0xbf, 0x01, 0x6f, 0x11, 0x5b, 0x72, 0x12, 0x77, 0xcc, 0xb4, 0x93, 0x07, 0x39, 0xbf, 0xbd, 0x81, 0xf9, 0xc1, 0xe7, 0x34, 0x63, 0x0e, 0x06, 0x85, 0xd3, 0x2e, 0x15, 0x4e, 0x0b, 0x4a, 0x5c, 0x62, 0xe4, 0x38, 0x51, 0xf6, 0x76, 0x83, 0x56, 0xb4, 0xa5, 0x76, 0x4c, 0x12, 0x8c, 0x7b, 0x11, 0x05, 0xe3, 0xd7, 0x78, 0xa8, 0x9d, 0x1e, 0x01, 0xda, 0x29, 0x7e, 0xde, 0x1b, 0xc4, 0x31, 0x2c, 0x25, 0x83, 0xe0, 0xbb, 0xdd, 0xd2, 0x16, 0x13, 0x58, 0x3d, 0xd0, 0x9a, 0xb8, 0x95, 0xc6, 0x3b, 0xe4, 0x79, 0xf9, 0x45, 0x76, }; static const unsigned char ecdsa_secp384r1_sha384_9103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9103_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9103 = { .name = "ecdsa_secp384r1_sha384_9103", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9103_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9103_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9103_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 147 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9104 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9104_pubkey[] = { 0xd5, 0x16, 0xcb, 0x8a, 0xc8, 0xe4, 0x45, 0x7b, 0x69, 0x3d, 0x51, 0x92, 0xbe, 0xeb, 0x6c, 0xe7, 0xd9, 0xa4, 0x6b, 0xef, 0x48, 0xee, 0xcf, 0x3e, 0xa8, 0x23, 0x28, 0x6f, 0x10, 0x1f, 0x98, 0xd1, 0x30, 0xf5, 0xa2, 0x6d, 0xc6, 0xfe, 0xc2, 0x36, 0x62, 0xef, 0xf0, 0x7f, 0x14, 0x48, 0x6f, 0xd5, 0x84, 0x56, 0x93, 0x2e, 0x74, 0x89, 0x4b, 0x7f, 0x0e, 0x3b, 0xb0, 0xdf, 0xd3, 0x62, 0x50, 0x2b, 0x37, 0x65, 0xdd, 0x80, 0xa3, 0x17, 0x72, 0x09, 0xfb, 0x22, 0x1d, 0xc9, 0xb5, 0x1a, 0xaf, 0x44, 0x70, 0xb2, 0x45, 0x39, 0x14, 0x05, 0xbe, 0xf5, 0x14, 0x17, 0x6b, 0x13, 0xa2, 0x67, 0xa7, 0x20, }; static const unsigned char ecdsa_secp384r1_sha384_9104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9104_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9104 = { .name = "ecdsa_secp384r1_sha384_9104", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9104_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9104_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9104_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 148 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9105 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9105_pubkey[] = { 0xa8, 0x38, 0x0c, 0xd3, 0x50, 0x26, 0xe1, 0x3b, 0xf8, 0x7b, 0xe6, 0x93, 0xcd, 0xb6, 0xe7, 0x5a, 0x82, 0xd7, 0x65, 0xb4, 0x01, 0x9b, 0x52, 0x9e, 0x8d, 0x27, 0x7c, 0x4a, 0xf6, 0xc9, 0xdb, 0x27, 0xeb, 0xb5, 0xd3, 0xf8, 0x6e, 0x88, 0xad, 0xd9, 0xd5, 0xb6, 0x11, 0x86, 0xf0, 0x4c, 0x83, 0xa9, 0x92, 0xa1, 0x87, 0x50, 0x7c, 0x73, 0x73, 0x25, 0xd2, 0xcc, 0x62, 0x4a, 0xce, 0xf3, 0xcd, 0x03, 0x6b, 0xfa, 0x99, 0xe0, 0xc1, 0x51, 0x8b, 0xe6, 0x5c, 0x88, 0xbb, 0x51, 0xf9, 0x00, 0xf9, 0x41, 0x23, 0xac, 0xab, 0xad, 0x81, 0xd1, 0x51, 0x30, 0xd3, 0xad, 0xe7, 0xff, 0x7e, 0x43, 0x64, 0xe1, }; static const unsigned char ecdsa_secp384r1_sha384_9105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9105_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9105 = { .name = "ecdsa_secp384r1_sha384_9105", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9105_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9105_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9105_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 149 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9106 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9106_pubkey[] = { 0x55, 0x4f, 0x2f, 0xd0, 0xb7, 0x00, 0xa9, 0xf4, 0x56, 0x87, 0x52, 0xb6, 0x73, 0xd9, 0xc0, 0xd2, 0x9d, 0xc9, 0x6c, 0x10, 0xfe, 0x67, 0xe3, 0x8c, 0x6d, 0x6d, 0x33, 0x9b, 0xfa, 0xfe, 0x05, 0xf9, 0x70, 0xda, 0x8c, 0x3d, 0x21, 0x64, 0xe8, 0x20, 0x31, 0x30, 0x7a, 0x44, 0xbd, 0x32, 0x25, 0x11, 0x71, 0x31, 0x2b, 0x61, 0xb5, 0x91, 0x13, 0xff, 0x0b, 0xd3, 0xb8, 0xa9, 0xa4, 0x93, 0x4d, 0xf2, 0x62, 0xaa, 0x80, 0x96, 0xf8, 0x40, 0xe9, 0xd8, 0xbf, 0xfa, 0x5d, 0x74, 0x91, 0xde, 0xd8, 0x7b, 0x38, 0xc4, 0x96, 0xf9, 0xb9, 0xe4, 0xf0, 0xba, 0x10, 0x89, 0xf8, 0xd3, 0xff, 0xc8, 0x8a, 0x9f, }; static const unsigned char ecdsa_secp384r1_sha384_9106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9106_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9106 = { .name = "ecdsa_secp384r1_sha384_9106", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9106_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9106_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9106_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 150 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9107 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9107_pubkey[] = { 0x55, 0x4f, 0x2f, 0xd0, 0xb7, 0x00, 0xa9, 0xf4, 0x56, 0x87, 0x52, 0xb6, 0x73, 0xd9, 0xc0, 0xd2, 0x9d, 0xc9, 0x6c, 0x10, 0xfe, 0x67, 0xe3, 0x8c, 0x6d, 0x6d, 0x33, 0x9b, 0xfa, 0xfe, 0x05, 0xf9, 0x70, 0xda, 0x8c, 0x3d, 0x21, 0x64, 0xe8, 0x20, 0x31, 0x30, 0x7a, 0x44, 0xbd, 0x32, 0x25, 0x11, 0x71, 0x31, 0x2b, 0x61, 0xb5, 0x91, 0x13, 0xff, 0x0b, 0xd3, 0xb8, 0xa9, 0xa4, 0x93, 0x4d, 0xf2, 0x62, 0xaa, 0x80, 0x96, 0xf8, 0x40, 0xe9, 0xd8, 0xbf, 0xfa, 0x5d, 0x74, 0x91, 0xde, 0xd8, 0x7b, 0x38, 0xc4, 0x96, 0xf9, 0xb9, 0xe4, 0xf0, 0xba, 0x10, 0x89, 0xf8, 0xd3, 0xff, 0xc8, 0x8a, 0x9f, }; static const unsigned char ecdsa_secp384r1_sha384_9107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9107_sig[] = { 0x02, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9107 = { .name = "ecdsa_secp384r1_sha384_9107", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9107_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9107_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9107_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 151 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9108 for ECDSA, tcId is 152 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9108_pubkey[] = { 0x44, 0xee, 0x33, 0x35, 0xfa, 0x77, 0xd2, 0xfb, 0x02, 0xe4, 0xbd, 0x70, 0x74, 0xf4, 0x5e, 0x59, 0x8a, 0x87, 0x9c, 0x0f, 0xa8, 0x22, 0xec, 0x71, 0x8c, 0x21, 0xdc, 0x13, 0xb8, 0x34, 0x40, 0xed, 0xc4, 0xe3, 0xc1, 0x0a, 0x18, 0x58, 0x42, 0x3e, 0x03, 0x04, 0x4c, 0x9e, 0xff, 0x22, 0x59, 0x1c, 0xd0, 0x27, 0xc4, 0x99, 0x33, 0xe5, 0x51, 0x05, 0x57, 0xd6, 0xb4, 0xb2, 0xc6, 0xf6, 0x6f, 0xe5, 0xdc, 0xb9, 0x30, 0x2a, 0x3b, 0x13, 0xfd, 0xc6, 0x80, 0x48, 0xc3, 0xfc, 0xac, 0x88, 0xba, 0x15, 0x2b, 0x6a, 0x98, 0x33, 0xc8, 0x7f, 0xdc, 0x62, 0x80, 0xaf, 0xc5, 0xd1, 0x1a, 0xb7, 0xc1, 0x07, }; static const unsigned char ecdsa_secp384r1_sha384_9108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9108_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9108 = { .name = "ecdsa_secp384r1_sha384_9108", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9108_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9108_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9108_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 152 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9109 for ECDSA, tcId is 153 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9109_pubkey[] = { 0x44, 0xee, 0x33, 0x35, 0xfa, 0x77, 0xd2, 0xfb, 0x02, 0xe4, 0xbd, 0x70, 0x74, 0xf4, 0x5e, 0x59, 0x8a, 0x87, 0x9c, 0x0f, 0xa8, 0x22, 0xec, 0x71, 0x8c, 0x21, 0xdc, 0x13, 0xb8, 0x34, 0x40, 0xed, 0xc4, 0xe3, 0xc1, 0x0a, 0x18, 0x58, 0x42, 0x3e, 0x03, 0x04, 0x4c, 0x9e, 0xff, 0x22, 0x59, 0x1c, 0xd0, 0x27, 0xc4, 0x99, 0x33, 0xe5, 0x51, 0x05, 0x57, 0xd6, 0xb4, 0xb2, 0xc6, 0xf6, 0x6f, 0xe5, 0xdc, 0xb9, 0x30, 0x2a, 0x3b, 0x13, 0xfd, 0xc6, 0x80, 0x48, 0xc3, 0xfc, 0xac, 0x88, 0xba, 0x15, 0x2b, 0x6a, 0x98, 0x33, 0xc8, 0x7f, 0xdc, 0x62, 0x80, 0xaf, 0xc5, 0xd1, 0x1a, 0xb7, 0xc1, 0x07, }; static const unsigned char ecdsa_secp384r1_sha384_9109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9109_sig[] = { 0x02, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9109 = { .name = "ecdsa_secp384r1_sha384_9109", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9109_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9109_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9109_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 153 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9110 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9110_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_9110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9110_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9110 = { .name = "ecdsa_secp384r1_sha384_9110", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9110_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9110_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9110_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 154 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9111 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9111_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_9111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9111_sig[] = { 0x02, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9111 = { .name = "ecdsa_secp384r1_sha384_9111", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9111_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9111_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9111_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 155 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9112 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9112_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_9112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9112_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9112 = { .name = "ecdsa_secp384r1_sha384_9112", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9112_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9112_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9112_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 156 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9113 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9113_pubkey[] = { 0x05, 0xe6, 0x7c, 0x44, 0xfc, 0x0c, 0xbc, 0x9a, 0x8e, 0xb3, 0x43, 0xb4, 0xd6, 0xf5, 0x96, 0xc7, 0xd0, 0x0c, 0xac, 0x5d, 0xa8, 0x59, 0x4c, 0xaf, 0x45, 0xb7, 0x20, 0x93, 0x97, 0x49, 0x62, 0x14, 0xc4, 0x2d, 0x85, 0x6a, 0x01, 0x5c, 0xe5, 0x89, 0xbc, 0x9b, 0xa8, 0x65, 0xa4, 0xfa, 0xb5, 0xab, 0x88, 0xa0, 0x1c, 0x7b, 0x5d, 0x09, 0xef, 0xaf, 0x87, 0x8f, 0xcb, 0x91, 0x02, 0xfb, 0x38, 0x75, 0xa8, 0x38, 0x1a, 0xf2, 0x34, 0xd1, 0xc5, 0x93, 0x07, 0x6e, 0x45, 0x22, 0x25, 0xa5, 0x6f, 0x51, 0x67, 0x4f, 0x34, 0x71, 0x26, 0xd3, 0x00, 0x9b, 0x44, 0xdc, 0xbb, 0x00, 0x3a, 0x64, 0xd9, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9113_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9113 = { .name = "ecdsa_secp384r1_sha384_9113", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9113_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9113_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9113_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 157 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9114 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9114_pubkey[] = { 0x0b, 0xb0, 0x3f, 0xce, 0x3c, 0x01, 0xeb, 0xcf, 0x08, 0x73, 0xab, 0xd1, 0x34, 0xa8, 0x68, 0x2f, 0x5f, 0xb8, 0xdb, 0xff, 0xa2, 0x2d, 0xa6, 0x74, 0x04, 0x7e, 0x5c, 0x3e, 0x71, 0xe4, 0x3d, 0xe5, 0x82, 0xed, 0x6a, 0xbb, 0x90, 0x8c, 0x2e, 0x4f, 0xaa, 0x5d, 0x96, 0x18, 0x62, 0x78, 0xb6, 0xc1, 0xba, 0x3b, 0x22, 0x12, 0x3e, 0x68, 0xcc, 0xc5, 0x6f, 0x17, 0xdd, 0x79, 0xff, 0x15, 0x56, 0x57, 0x06, 0xf7, 0x1a, 0x0b, 0x61, 0x23, 0xc7, 0x7a, 0xf3, 0xcd, 0x88, 0xf0, 0xaf, 0x02, 0x4c, 0xc5, 0x25, 0x97, 0x81, 0x51, 0x6e, 0xdc, 0xaf, 0x5f, 0xe9, 0x90, 0x64, 0x6e, 0x7b, 0x66, 0x99, 0x9d, }; static const unsigned char ecdsa_secp384r1_sha384_9114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9114_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9114 = { .name = "ecdsa_secp384r1_sha384_9114", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9114_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9114_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9114_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 158 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9115 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9115_pubkey[] = { 0x58, 0xf2, 0x46, 0x09, 0x0d, 0x5e, 0x49, 0x86, 0x3b, 0xc0, 0xbf, 0x2d, 0x50, 0x1f, 0xf7, 0x2f, 0x55, 0x1c, 0x5f, 0x1c, 0x5e, 0x67, 0x9e, 0xb4, 0x90, 0x64, 0xfd, 0x02, 0xe2, 0x21, 0xa2, 0x70, 0x73, 0x26, 0xec, 0x2d, 0x14, 0x0b, 0xcc, 0x81, 0x7a, 0xfa, 0xad, 0x50, 0x65, 0x76, 0x15, 0x66, 0x49, 0x7c, 0x82, 0x3f, 0xd7, 0x36, 0x88, 0x2c, 0xbf, 0x78, 0xfb, 0x92, 0xb1, 0xa5, 0x58, 0x9b, 0x67, 0xe8, 0x06, 0x74, 0x97, 0xc7, 0x10, 0xa4, 0xcb, 0xb3, 0x9d, 0xee, 0x2c, 0x54, 0x31, 0xbc, 0x45, 0xcf, 0xb9, 0x6c, 0x9f, 0x84, 0x54, 0x38, 0x5c, 0x9f, 0x2b, 0x3e, 0xf2, 0xd3, 0xd3, 0x1a, }; static const unsigned char ecdsa_secp384r1_sha384_9115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9115_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9115 = { .name = "ecdsa_secp384r1_sha384_9115", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9115_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9115_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9115_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 159 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9116 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9116_pubkey[] = { 0xfc, 0x69, 0x84, 0xdd, 0x68, 0x30, 0xd1, 0x48, 0x5f, 0xb2, 0x58, 0x1a, 0x45, 0xa7, 0x91, 0xd8, 0xdc, 0xa2, 0xc7, 0x27, 0xc7, 0x3d, 0x3d, 0x44, 0xc8, 0x9f, 0x00, 0x82, 0xc1, 0x86, 0x8a, 0xf5, 0xca, 0x74, 0xb4, 0xca, 0x4a, 0xe2, 0x28, 0x02, 0x64, 0x0a, 0x9e, 0xbf, 0xe8, 0xc7, 0xae, 0x12, 0x99, 0x8d, 0x63, 0xa5, 0xb5, 0xad, 0x1b, 0x72, 0xb8, 0x99, 0xf0, 0xb1, 0x32, 0xe4, 0x95, 0x2a, 0xaa, 0x19, 0xd4, 0x1f, 0xde, 0xea, 0x48, 0xb1, 0xed, 0x6b, 0x83, 0x58, 0xdd, 0x1d, 0xb2, 0x07, 0xfd, 0x66, 0xe0, 0x14, 0x53, 0xad, 0x40, 0xf6, 0x7b, 0x83, 0x6a, 0xdc, 0x80, 0x2d, 0x5f, 0xe8, }; static const unsigned char ecdsa_secp384r1_sha384_9116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9116_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9116 = { .name = "ecdsa_secp384r1_sha384_9116", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9116_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9116_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9116_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 160 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9117 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9117_pubkey[] = { 0x1b, 0x8d, 0xef, 0x59, 0x22, 0x30, 0x3d, 0x64, 0x7e, 0x8e, 0xb0, 0x7e, 0x3b, 0xad, 0x92, 0xf9, 0x24, 0xb7, 0x9b, 0x76, 0x9e, 0xef, 0x16, 0x8e, 0x75, 0x41, 0xde, 0x1f, 0x4e, 0x0d, 0x28, 0xae, 0x97, 0x33, 0xeb, 0x98, 0xcf, 0x8a, 0x1f, 0xb6, 0xdd, 0x52, 0xca, 0x02, 0xc8, 0xc7, 0x5b, 0x51, 0xc7, 0xaa, 0x4b, 0xf6, 0x79, 0xd4, 0x9d, 0x81, 0x14, 0x12, 0x20, 0x74, 0xda, 0x8f, 0x60, 0x44, 0xa4, 0x27, 0x37, 0x17, 0x96, 0xa5, 0x65, 0x4a, 0x61, 0x06, 0x16, 0x2d, 0x5f, 0x68, 0x6a, 0xbb, 0x73, 0xeb, 0xd8, 0x96, 0xab, 0x08, 0xc7, 0x06, 0x26, 0x87, 0xf1, 0x21, 0x71, 0xfb, 0xe4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9117_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9117 = { .name = "ecdsa_secp384r1_sha384_9117", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9117_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9117_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9117_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 161 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9118 for ECDSA, tcId is 162 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9118_pubkey[] = { 0x17, 0x34, 0xa0, 0x39, 0xa8, 0x8a, 0x16, 0xc2, 0xff, 0x4a, 0xa9, 0x7d, 0x23, 0x99, 0x12, 0x1f, 0x56, 0xf5, 0x2e, 0xf0, 0x1e, 0xd5, 0xe5, 0x08, 0x87, 0xf7, 0x36, 0xf6, 0x5b, 0x6e, 0x51, 0xd6, 0xe8, 0x78, 0x6a, 0xbb, 0x4e, 0x06, 0x3d, 0xa5, 0xd1, 0xba, 0x81, 0x2d, 0xff, 0x99, 0x84, 0x03, 0xcc, 0xd6, 0x98, 0xe6, 0xc2, 0x96, 0xd5, 0xcd, 0x69, 0x17, 0x8f, 0x8a, 0x82, 0x48, 0x1a, 0x86, 0x5d, 0xa3, 0x31, 0x62, 0x7f, 0x1c, 0x4b, 0x32, 0x4f, 0xbc, 0x02, 0xb3, 0x6e, 0x8b, 0x5e, 0xd5, 0x8a, 0x31, 0xf7, 0x28, 0xe9, 0x04, 0xd2, 0x03, 0xa3, 0x88, 0x75, 0x53, 0x02, 0x19, 0x57, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9118_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9118 = { .name = "ecdsa_secp384r1_sha384_9118", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9118_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9118_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9118_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 162 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9119 for ECDSA, tcId is 163 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9119_pubkey[] = { 0x52, 0xca, 0x47, 0xdd, 0xa9, 0x91, 0x72, 0xcb, 0x83, 0x21, 0x49, 0x5a, 0xcf, 0x98, 0x85, 0x48, 0x29, 0x59, 0x88, 0xec, 0x97, 0x3c, 0x1b, 0x4e, 0xa9, 0x46, 0x2c, 0x53, 0xe5, 0x76, 0x8a, 0x70, 0x4a, 0x93, 0x64, 0x10, 0xee, 0x84, 0x7b, 0x5d, 0xbf, 0x1e, 0x9d, 0x0c, 0x13, 0x1d, 0xa6, 0xc7, 0x87, 0xa4, 0x70, 0x27, 0xe6, 0x65, 0x57, 0x92, 0xeb, 0x00, 0x2d, 0x42, 0x28, 0xee, 0x72, 0xf7, 0xc8, 0x14, 0xc9, 0xa0, 0xce, 0xcb, 0xff, 0x26, 0x79, 0x48, 0xf8, 0x1c, 0x99, 0x03, 0xac, 0x10, 0xeb, 0x35, 0xf6, 0xcb, 0x86, 0x36, 0x92, 0x24, 0xed, 0x60, 0x98, 0x11, 0xcd, 0xf3, 0x90, 0xf4, }; static const unsigned char ecdsa_secp384r1_sha384_9119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9119_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9119 = { .name = "ecdsa_secp384r1_sha384_9119", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9119_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9119_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9119_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 163 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9120 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9120_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_9120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9120_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9120 = { .name = "ecdsa_secp384r1_sha384_9120", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9120_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9120_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9120_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 164 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9121 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9121_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_9121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9121_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9121 = { .name = "ecdsa_secp384r1_sha384_9121", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9121_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9121_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9121_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 165 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9122 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9122_pubkey[] = { 0xf8, 0x96, 0x35, 0x3c, 0xc3, 0xa8, 0xaf, 0xdd, 0x54, 0x3e, 0xc3, 0xae, 0xf0, 0x62, 0xca, 0x97, 0xbc, 0x32, 0xed, 0x17, 0x24, 0xea, 0x38, 0xb9, 0x40, 0xb8, 0xc0, 0xea, 0x0e, 0x23, 0xb3, 0x41, 0x87, 0xaf, 0xbe, 0x70, 0xda, 0xf8, 0xdb, 0xaa, 0x5b, 0x51, 0x15, 0x57, 0xe5, 0xd2, 0xbd, 0xda, 0xc4, 0xbd, 0x26, 0x5d, 0xa6, 0x7c, 0xee, 0xaf, 0xca, 0x63, 0x6f, 0x6f, 0x4c, 0x04, 0x72, 0xf2, 0x2a, 0x9d, 0x02, 0xe2, 0x28, 0x91, 0x84, 0xf7, 0x3b, 0xbb, 0x70, 0x0a, 0xe8, 0xfc, 0x92, 0x1e, 0xff, 0x49, 0x20, 0xf2, 0x90, 0xbf, 0xcb, 0x49, 0xfb, 0xb2, 0x32, 0xcc, 0x13, 0xa2, 0x10, 0x28, }; static const unsigned char ecdsa_secp384r1_sha384_9122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9122_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9122 = { .name = "ecdsa_secp384r1_sha384_9122", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9122_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9122_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9122_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 166 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9123 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9123_pubkey[] = { 0x37, 0x0d, 0x9e, 0x2e, 0x31, 0xc7, 0x12, 0xc8, 0x02, 0x80, 0x92, 0xf8, 0x02, 0x31, 0x9d, 0x7f, 0xdf, 0x5b, 0x33, 0x19, 0xa8, 0x51, 0x8d, 0x08, 0xbe, 0xd3, 0x89, 0x15, 0x08, 0xc7, 0x06, 0x0c, 0xfe, 0x22, 0x36, 0xe1, 0x8f, 0xa1, 0x4f, 0xe0, 0x77, 0x09, 0x3c, 0xea, 0xe6, 0x33, 0xe5, 0x43, 0x0f, 0xd7, 0x9a, 0xac, 0xf9, 0xd1, 0x6e, 0xcc, 0x19, 0xb1, 0x2d, 0x60, 0xfb, 0xa4, 0x99, 0x8d, 0xfc, 0x68, 0x27, 0x02, 0xec, 0x7c, 0x8b, 0xdd, 0x4a, 0x59, 0x00, 0x35, 0x77, 0x3b, 0x8c, 0x9c, 0x57, 0x0a, 0xc7, 0xdc, 0xd4, 0x14, 0xe0, 0x32, 0x52, 0xf7, 0xa0, 0xe6, 0xf5, 0x3b, 0x58, 0x63, }; static const unsigned char ecdsa_secp384r1_sha384_9123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9123_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9123 = { .name = "ecdsa_secp384r1_sha384_9123", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9123_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9123_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9123_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 167 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9124 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9124_pubkey[] = { 0x94, 0x1e, 0x6c, 0xfa, 0x35, 0x6e, 0x57, 0x2d, 0xcc, 0xca, 0xeb, 0x59, 0x4b, 0x06, 0x95, 0x5d, 0x99, 0xdc, 0x4b, 0xf0, 0x79, 0x58, 0xfc, 0x98, 0xff, 0xa1, 0x7d, 0xe1, 0x1c, 0x75, 0x21, 0xbf, 0x2c, 0x7a, 0xa8, 0xff, 0x26, 0x09, 0x52, 0xfc, 0xb7, 0xaa, 0xc0, 0x78, 0xed, 0xe6, 0x7b, 0x47, 0x90, 0xa7, 0x8a, 0x02, 0x96, 0xb0, 0x41, 0xa1, 0x0f, 0x00, 0x3d, 0xf1, 0x99, 0x8d, 0xa4, 0xcc, 0x4a, 0x16, 0x14, 0xeb, 0xcb, 0xf5, 0xd2, 0x39, 0x43, 0x1f, 0x33, 0xd9, 0x0d, 0x30, 0x23, 0xed, 0xc1, 0x80, 0x2e, 0x8d, 0xb6, 0xda, 0xbc, 0xba, 0xe6, 0x7c, 0xc3, 0x14, 0xda, 0x2a, 0xab, 0xab, }; static const unsigned char ecdsa_secp384r1_sha384_9124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9124_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9124 = { .name = "ecdsa_secp384r1_sha384_9124", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9124_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9124_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9124_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 168 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9125 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9125_pubkey[] = { 0x3e, 0xcf, 0xd5, 0x8a, 0x3c, 0xe5, 0x83, 0x86, 0x6e, 0x04, 0x71, 0xd1, 0x6e, 0xb3, 0xc1, 0x0a, 0x41, 0x1e, 0xc3, 0xb8, 0x67, 0x1f, 0x3a, 0x04, 0x76, 0x9b, 0x1e, 0xd8, 0x46, 0x4a, 0x71, 0xcf, 0x1c, 0x76, 0xd8, 0xd9, 0xb7, 0xe3, 0x67, 0x0b, 0xbe, 0x71, 0x2d, 0x6f, 0x55, 0x4a, 0x93, 0x83, 0xd9, 0x80, 0xd8, 0xbe, 0xdf, 0x57, 0x47, 0x0d, 0x6b, 0x45, 0xcc, 0x1a, 0xd0, 0xc6, 0x42, 0x6d, 0xc7, 0x0a, 0x0e, 0x4b, 0xe9, 0x01, 0x10, 0x6a, 0x36, 0x66, 0x3b, 0xfc, 0xab, 0x04, 0xfc, 0xb8, 0x60, 0x08, 0x77, 0x7b, 0x92, 0x44, 0x51, 0x20, 0xd5, 0xe3, 0x64, 0x1d, 0x97, 0x39, 0x63, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_9125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9125_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9125 = { .name = "ecdsa_secp384r1_sha384_9125", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9125_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9125_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9125_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 169 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9126 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9126_pubkey[] = { 0x41, 0x50, 0xcc, 0xd0, 0xfa, 0x45, 0xaa, 0x2e, 0xf6, 0xb5, 0x04, 0x2d, 0xdb, 0xb1, 0xb8, 0x7c, 0x5f, 0xfd, 0x11, 0x15, 0xa8, 0xfe, 0x59, 0x95, 0x64, 0x19, 0x48, 0xac, 0xda, 0x82, 0xa7, 0xb1, 0x90, 0x76, 0x2d, 0x84, 0x35, 0x2c, 0xd7, 0x4d, 0x1c, 0xa0, 0x1e, 0x79, 0xf6, 0x8f, 0x9c, 0xb4, 0xeb, 0x11, 0xbe, 0x9d, 0x49, 0x4c, 0x18, 0x1c, 0x15, 0x6e, 0x23, 0xe7, 0x7e, 0x53, 0x2b, 0xdf, 0x0a, 0x20, 0xc3, 0xcc, 0x74, 0xba, 0x8c, 0x29, 0xb1, 0xf3, 0xeb, 0x2b, 0xd9, 0x91, 0x29, 0xee, 0x0d, 0x70, 0xff, 0x0d, 0x59, 0x3f, 0x0d, 0x7a, 0x6d, 0x68, 0x87, 0xe7, 0xc5, 0x59, 0x30, 0xd2, }; static const unsigned char ecdsa_secp384r1_sha384_9126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9126_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9126 = { .name = "ecdsa_secp384r1_sha384_9126", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9126_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9126_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9126_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 170 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9127 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9127_pubkey[] = { 0xe7, 0x8f, 0xe2, 0xc1, 0x1b, 0xea, 0xc7, 0x09, 0x0e, 0xe0, 0xaf, 0x7f, 0xed, 0x46, 0x9a, 0x8c, 0xce, 0xbd, 0x3c, 0xcc, 0xc4, 0xee, 0x9f, 0xcc, 0xc8, 0xef, 0x3f, 0xc0, 0x45, 0x5b, 0x69, 0xaa, 0xa0, 0x82, 0xdc, 0x13, 0xe1, 0xd8, 0x4f, 0x34, 0x02, 0x6c, 0xb6, 0xf0, 0xaf, 0x9e, 0x99, 0x2f, 0xf3, 0x4e, 0xbb, 0xa7, 0x1b, 0xf3, 0xa4, 0x05, 0x0b, 0xf2, 0x8e, 0x40, 0x84, 0xb5, 0xc5, 0xf5, 0xd4, 0x09, 0x8e, 0xc4, 0x6f, 0x10, 0xa3, 0x1b, 0x02, 0xfb, 0x4b, 0xf2, 0x0c, 0xc9, 0x36, 0x2f, 0x6f, 0x02, 0xa6, 0x6e, 0x80, 0x2f, 0x81, 0x75, 0x07, 0x53, 0x5f, 0xac, 0x3e, 0xc0, 0xb0, 0x99, }; static const unsigned char ecdsa_secp384r1_sha384_9127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9127_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9127 = { .name = "ecdsa_secp384r1_sha384_9127", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9127_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9127_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9127_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 171 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9128 for ECDSA, tcId is 172 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9128_pubkey[] = { 0xee, 0x24, 0xab, 0x8a, 0x34, 0xd0, 0x5a, 0xf6, 0x84, 0x93, 0x93, 0x57, 0xf3, 0x27, 0x59, 0xcc, 0x5a, 0x14, 0xf3, 0xc7, 0x17, 0x52, 0x9a, 0x20, 0xae, 0xa8, 0xe0, 0xc5, 0x96, 0x5d, 0x8a, 0x41, 0xe6, 0x89, 0x25, 0xf6, 0x88, 0x47, 0x19, 0x94, 0xb7, 0x20, 0x21, 0xba, 0x51, 0xb2, 0x8c, 0x09, 0x0a, 0x55, 0x69, 0x3c, 0x92, 0xad, 0x0c, 0xba, 0xe9, 0xed, 0xcf, 0x51, 0x5e, 0x2b, 0x4c, 0x06, 0x0b, 0x88, 0x8d, 0x82, 0xc8, 0x1e, 0x4a, 0x3b, 0x6a, 0x17, 0x3b, 0x62, 0xed, 0x04, 0xa4, 0x6f, 0xa9, 0x5d, 0xb1, 0xa2, 0xf3, 0x94, 0x99, 0x80, 0xfb, 0xa2, 0xe3, 0x71, 0x26, 0x3c, 0x4f, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_9128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9128_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9128 = { .name = "ecdsa_secp384r1_sha384_9128", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9128_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9128_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9128_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 172 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9129 for ECDSA, tcId is 173 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9129_pubkey[] = { 0x3d, 0x2e, 0x91, 0x60, 0x55, 0xc9, 0x2e, 0x1b, 0x36, 0x13, 0x3f, 0x59, 0x37, 0xb3, 0x7c, 0x1b, 0x01, 0x02, 0x83, 0x4e, 0xb7, 0x70, 0x08, 0xa3, 0xba, 0x9c, 0x3d, 0xa4, 0x46, 0xe9, 0x06, 0x59, 0x71, 0xd6, 0x8b, 0xa9, 0x13, 0x09, 0x18, 0x51, 0xe1, 0x0c, 0xff, 0x5b, 0x4c, 0xd8, 0x75, 0xc1, 0x39, 0xaa, 0x7a, 0xad, 0xfc, 0x2c, 0xaf, 0x71, 0x07, 0xb1, 0x7a, 0xe1, 0xae, 0xa8, 0xb2, 0x99, 0xd6, 0x1b, 0xf1, 0x5a, 0xca, 0x0c, 0xb3, 0xfd, 0x6f, 0x1f, 0xfd, 0xe8, 0x19, 0x2b, 0xfe, 0x58, 0xf0, 0x82, 0x2b, 0xbb, 0xc1, 0xf5, 0x5b, 0xdd, 0xf6, 0xb4, 0xfe, 0x9c, 0x8f, 0x2b, 0x0e, 0xac, }; static const unsigned char ecdsa_secp384r1_sha384_9129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9129_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9129 = { .name = "ecdsa_secp384r1_sha384_9129", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9129_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9129_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9129_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 173 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9130 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9130_pubkey[] = { 0xae, 0x59, 0x66, 0x97, 0x42, 0x7a, 0xa2, 0x50, 0x15, 0x6c, 0x05, 0xac, 0x43, 0x38, 0xe4, 0x89, 0x80, 0xa7, 0xf0, 0x93, 0xea, 0x1f, 0x1f, 0xe6, 0x70, 0x98, 0xb4, 0x3f, 0x65, 0x39, 0xc1, 0xb2, 0x0a, 0xe7, 0x43, 0x38, 0xf9, 0xbf, 0x27, 0x0d, 0x33, 0x66, 0x3c, 0x50, 0xab, 0xe8, 0xfd, 0x00, 0x1c, 0xa6, 0xa5, 0x27, 0x32, 0xdb, 0x74, 0xab, 0x15, 0xd2, 0xf2, 0x49, 0xa3, 0xd8, 0x39, 0x08, 0x0f, 0x89, 0x83, 0x67, 0xdf, 0xd6, 0x49, 0x92, 0xcd, 0xce, 0x27, 0x08, 0xde, 0xaa, 0xd5, 0x23, 0xa2, 0xa2, 0x36, 0xb4, 0x34, 0x00, 0x42, 0x42, 0x41, 0xc9, 0x1a, 0x35, 0xb5, 0x30, 0xfa, 0x50, }; static const unsigned char ecdsa_secp384r1_sha384_9130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9130_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd4, 0x9a, 0x25, 0x39, 0x86, 0xbb, 0xaa, 0x8c, 0xe9, 0xc3, 0xd3, 0x80, 0x83, 0x13, 0xd3, 0x9c, 0x3b, 0x95, 0x0a, 0x47, 0x83, 0x72, 0xed, 0xc0, 0x09, 0xbc, 0x05, 0x66, 0xb7, 0x3b, 0xe7, 0xb0, 0x5d, 0xad, 0x07, 0x37, 0xe1, 0x69, 0x60, 0x25, 0x7c, 0xc1, 0x6d, 0xb6, 0xec, 0x6c, 0x62, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9130 = { .name = "ecdsa_secp384r1_sha384_9130", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9130_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9130_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9130_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 174 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9131 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9131_pubkey[] = { 0x88, 0x73, 0x8f, 0x99, 0x81, 0xdd, 0x4d, 0x1f, 0xab, 0xb6, 0x0a, 0xd8, 0x3c, 0x2d, 0xd6, 0xdf, 0xc9, 0xda, 0x30, 0x22, 0x09, 0xae, 0x3e, 0x53, 0x49, 0x8a, 0x88, 0x3b, 0x6e, 0x39, 0xa3, 0x8b, 0xea, 0xd9, 0xb0, 0x27, 0x09, 0xf3, 0x52, 0xd3, 0xe6, 0xb6, 0x57, 0x81, 0x54, 0xea, 0xb2, 0x52, 0x93, 0x88, 0xa0, 0x5c, 0x6b, 0x9f, 0x3a, 0x40, 0x28, 0xab, 0xb9, 0x95, 0x0a, 0x51, 0xf5, 0x26, 0x4e, 0xcd, 0x75, 0x80, 0xa4, 0x23, 0xfd, 0xec, 0x94, 0x72, 0xfa, 0xee, 0xb5, 0x7f, 0x92, 0xe3, 0x1c, 0x46, 0xbe, 0xf2, 0xa7, 0x81, 0xfe, 0x5e, 0xda, 0xd0, 0x26, 0x00, 0x9f, 0x19, 0x82, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_9131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9131_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x50, 0x90, 0xb0, 0xd6, 0xa6, 0x82, 0x0b, 0xbb, 0xa3, 0x94, 0xef, 0xbe, 0xe5, 0xc2, 0x4a, 0x22, 0x81, 0xe8, 0x25, 0xd2, 0xf6, 0xc5, 0x5f, 0xb7, 0xa8, 0x5b, 0x82, 0x51, 0xdb, 0x00, 0xf7, 0x5a, 0xb0, 0x7c, 0xc9, 0x93, 0xce, 0xaf, 0x66, 0x4f, 0x3c, 0x11, 0x6b, 0xaf, 0x34, 0xb0, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9131 = { .name = "ecdsa_secp384r1_sha384_9131", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9131_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9131_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9131_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 175 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9132 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9132_pubkey[] = { 0xf4, 0x21, 0x54, 0x13, 0x11, 0xc9, 0x4f, 0xdd, 0x79, 0xfc, 0x29, 0x8f, 0x8a, 0xb1, 0xa3, 0xad, 0xfd, 0x08, 0x02, 0x9f, 0xda, 0xd4, 0x39, 0xa9, 0x4d, 0x4c, 0xea, 0x11, 0xf7, 0xe7, 0x99, 0xbc, 0x43, 0x96, 0x09, 0xf2, 0xfb, 0x7b, 0xe3, 0xf3, 0x49, 0xd5, 0x5e, 0x48, 0x4d, 0x0a, 0x0d, 0x36, 0xb3, 0x53, 0x30, 0xbb, 0xdb, 0xec, 0x1e, 0x75, 0xf2, 0x98, 0x44, 0x83, 0xd9, 0x6b, 0xf2, 0x10, 0xd7, 0x22, 0xc1, 0x83, 0x02, 0x92, 0xff, 0xc3, 0x5a, 0x2f, 0x6a, 0x21, 0xa4, 0xb5, 0x05, 0x19, 0xf5, 0x65, 0xf0, 0x24, 0xbb, 0xcc, 0xc9, 0x72, 0x28, 0xa2, 0xf8, 0xad, 0x8f, 0xad, 0xc0, 0xd5, }; static const unsigned char ecdsa_secp384r1_sha384_9132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9132_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb3, 0x9a, 0xf4, 0xa8, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xa4, 0x3d, 0x25, 0x05, 0xa0, 0xa8, 0xc7, 0x2c, 0x57, 0x31, 0xf4, 0xfd, 0x96, 0x74, 0x20, 0xb1, 0x00, 0x0e, 0x3f, 0x75, 0x50, 0x2e, 0xd7, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9132 = { .name = "ecdsa_secp384r1_sha384_9132", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9132_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9132_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9132_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 176 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9133 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9133_pubkey[] = { 0x39, 0x9b, 0xe4, 0xcf, 0xc4, 0x39, 0xf9, 0x4f, 0x24, 0x21, 0xcb, 0xd3, 0x4c, 0x2c, 0xd9, 0x0b, 0xae, 0x53, 0xeb, 0x60, 0xdd, 0xfa, 0xfc, 0xa5, 0x2f, 0x72, 0x75, 0xd1, 0x65, 0xd1, 0x4f, 0xa6, 0x59, 0xb6, 0x36, 0x71, 0x3b, 0x5d, 0x4b, 0x39, 0xe6, 0x2f, 0xd4, 0x8b, 0xae, 0x14, 0x1d, 0x0e, 0x1b, 0x23, 0xe3, 0xb4, 0xf0, 0xc2, 0x02, 0xed, 0x7b, 0x59, 0xdb, 0x78, 0xa3, 0x5c, 0x12, 0xac, 0x69, 0x8c, 0x60, 0x3e, 0xab, 0x14, 0x4f, 0xd0, 0x9a, 0xc2, 0xed, 0x8f, 0x44, 0x95, 0xf6, 0x07, 0xe4, 0xd2, 0xc8, 0x7a, 0x23, 0xce, 0x2e, 0xc3, 0x3e, 0x41, 0x0c, 0xa4, 0x7e, 0xcc, 0x25, 0x55, }; static const unsigned char ecdsa_secp384r1_sha384_9133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9133_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaf, 0x4a, 0x81, 0xee, 0x4a, 0xe7, 0x90, 0x64, 0xed, 0x80, 0xf2, 0x7e, 0x14, 0x32, 0xe8, 0x48, 0x45, 0xf1, 0x5e, 0xce, 0x39, 0x9f, 0x2c, 0xbf, 0x28, 0xdf, 0x82, 0x9c, 0xcd, 0x30, 0xf5, 0xef, 0x62, 0xec, 0x23, 0x95, 0x7b, 0x83, 0x7d, 0x73, 0xfe, 0x4e, 0x15, 0x6e, 0xdc, 0xcd, 0x44, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9133 = { .name = "ecdsa_secp384r1_sha384_9133", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9133_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9133_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9133_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 177 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9134 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9134_pubkey[] = { 0x15, 0x78, 0xbb, 0xff, 0x72, 0x13, 0x7c, 0x4b, 0xca, 0x33, 0xd7, 0x38, 0x5a, 0x89, 0x2b, 0xe9, 0x4c, 0xb0, 0x59, 0xf9, 0x09, 0x1d, 0xdf, 0xe8, 0x90, 0x34, 0x5f, 0x71, 0x2a, 0x9f, 0xba, 0x5f, 0xc7, 0x70, 0x84, 0xce, 0xc1, 0x10, 0x84, 0xed, 0x04, 0x84, 0x91, 0x60, 0x4a, 0x07, 0xf6, 0x6c, 0x76, 0xbb, 0xaa, 0x87, 0x2f, 0x07, 0x10, 0xd8, 0x2a, 0x08, 0xd9, 0xdd, 0xdd, 0x83, 0x3c, 0x7b, 0xe7, 0xc7, 0xe8, 0xe2, 0x65, 0xf4, 0x91, 0x45, 0x15, 0x7e, 0xb4, 0xe8, 0xe8, 0x28, 0x00, 0x76, 0xa3, 0x7e, 0xe5, 0x87, 0x32, 0x71, 0xdb, 0x51, 0x00, 0x34, 0xda, 0x19, 0xda, 0x24, 0x41, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_9134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9134_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x95, 0x03, 0xdc, 0x95, 0xcf, 0x20, 0xc9, 0xdb, 0x01, 0xe4, 0xfc, 0x28, 0x65, 0xd0, 0x90, 0x8b, 0xe2, 0xbd, 0x9c, 0x73, 0x3e, 0x59, 0x7e, 0x8a, 0x5b, 0xb7, 0xb7, 0xa6, 0x2a, 0xbd, 0xff, 0x6d, 0xbe, 0x39, 0x78, 0xae, 0x56, 0x53, 0x6d, 0x0f, 0xb0, 0x11, 0x72, 0xec, 0xd5, 0x5f, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9134 = { .name = "ecdsa_secp384r1_sha384_9134", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9134_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9134_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9134_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 178 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9135 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9135_pubkey[] = { 0x33, 0xba, 0x45, 0x1c, 0x85, 0xe7, 0x29, 0x05, 0x8f, 0x83, 0x04, 0x10, 0x77, 0xa4, 0x69, 0x5e, 0xb4, 0x7d, 0xf9, 0x3e, 0x71, 0x8b, 0x09, 0xa4, 0x61, 0x8c, 0x75, 0x3a, 0xc8, 0x03, 0xcd, 0x75, 0xc1, 0xa9, 0x12, 0x90, 0xc2, 0xff, 0x5a, 0x63, 0x53, 0x89, 0xd0, 0x71, 0x49, 0x57, 0x1d, 0xab, 0x1f, 0xc7, 0xd8, 0xa7, 0x17, 0x76, 0x85, 0x1f, 0xf2, 0x44, 0xff, 0x63, 0x2f, 0xe6, 0xf9, 0x2e, 0x16, 0x52, 0xe5, 0x28, 0x48, 0x93, 0xc4, 0x24, 0x4f, 0xe7, 0x75, 0xd8, 0xef, 0xc5, 0x89, 0xd8, 0x23, 0xdd, 0x03, 0xf3, 0x91, 0x90, 0x27, 0xf0, 0x04, 0x53, 0x7b, 0xd8, 0xee, 0x09, 0xf3, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9135_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xa3, 0xae, 0x8e, 0xda, 0xb8, 0x4d, 0xc3, 0x33, 0x0a, 0x39, 0xf7, 0x09, 0x38, 0xe3, 0x91, 0x2b, 0xd5, 0x97, 0x53, 0xde, 0x5a, 0xed, 0x30, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9135 = { .name = "ecdsa_secp384r1_sha384_9135", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9135_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9135_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9135_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 179 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9136 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9136_pubkey[] = { 0x04, 0x07, 0x71, 0xe3, 0x39, 0x02, 0x16, 0xfe, 0xd2, 0xc6, 0x20, 0x8b, 0xdf, 0x5b, 0xfe, 0xa8, 0x3a, 0xb1, 0x91, 0x5b, 0x16, 0x6e, 0x62, 0x65, 0x69, 0xf1, 0x2e, 0xfd, 0x41, 0x0a, 0x39, 0xb7, 0xe7, 0xc7, 0x6f, 0x70, 0xf0, 0x01, 0x28, 0x43, 0xa2, 0x6d, 0xeb, 0xf4, 0xcc, 0xc3, 0x3d, 0xda, 0xe5, 0xbc, 0x5f, 0x7e, 0x62, 0xd0, 0x54, 0xea, 0xc3, 0x1c, 0xd0, 0x22, 0xaf, 0xdb, 0x71, 0xb7, 0xc6, 0x38, 0xf2, 0x4c, 0x30, 0xcb, 0xad, 0x0e, 0xf3, 0x5e, 0xd2, 0xfc, 0x99, 0x17, 0xf3, 0x56, 0xe9, 0xc3, 0xf0, 0x43, 0x91, 0xb2, 0x1d, 0x10, 0x35, 0x27, 0x4b, 0x81, 0x53, 0x7f, 0xcb, 0xf3, }; static const unsigned char ecdsa_secp384r1_sha384_9136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9136_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x51, 0xcd, 0x3b, 0xa8, 0xeb, 0x20, 0x1f, 0x53, 0xdd, 0xb4, 0xe3, 0x4e, 0x08, 0xc0, 0xff, 0x7d, 0xff, 0x93, 0x78, 0x10, 0x67, 0x84, 0xd7, 0x98, 0xd5, 0xa3, 0x44, 0x0b, 0xd6, 0xdc, 0x34, 0xbe, 0x3a, 0x0e, 0xae, 0xf8, 0x77, 0x66, 0x19, 0xa0, 0xc9, 0x7f, 0xef, 0xb1, 0x57, 0x20, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9136 = { .name = "ecdsa_secp384r1_sha384_9136", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9136_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9136_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9136_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 180 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9137 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9137_pubkey[] = { 0x98, 0xd3, 0xf1, 0x6e, 0x1c, 0x51, 0x0a, 0x93, 0x3e, 0x64, 0x8e, 0x78, 0xd0, 0x15, 0x88, 0x31, 0x9f, 0x00, 0x2e, 0x94, 0x75, 0xdf, 0x89, 0x42, 0xa2, 0xa8, 0x9d, 0xb0, 0x66, 0x6b, 0xb7, 0xc8, 0x8b, 0x32, 0xbb, 0x24, 0x81, 0x40, 0xe4, 0x4a, 0xc4, 0xab, 0x28, 0x11, 0x1b, 0x2b, 0x79, 0x23, 0x99, 0xa9, 0x26, 0xf4, 0xa6, 0x6f, 0xbe, 0x28, 0xff, 0x65, 0xc0, 0x9f, 0x83, 0x06, 0x89, 0x3a, 0xec, 0x09, 0x4b, 0x89, 0xd0, 0xfe, 0x52, 0x9e, 0x35, 0x77, 0xc5, 0xec, 0xf3, 0x0a, 0x79, 0x44, 0xca, 0xaf, 0x53, 0x0f, 0x45, 0x75, 0xeb, 0x11, 0x3f, 0xcf, 0x4c, 0x20, 0x0d, 0x2d, 0xd4, 0xbd, }; static const unsigned char ecdsa_secp384r1_sha384_9137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9137_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0x07, 0xe2, 0x67, 0xea, 0x63, 0x53, 0x84, 0xa6, 0xda, 0x09, 0x82, 0x31, 0x49, 0xf5, 0xcb, 0x7a, 0xcb, 0xb2, 0x9e, 0x91, 0x0d, 0x26, 0x30, 0xc5, 0xfb, 0x5a, 0xfb, 0xc4, 0x2a, 0xa8, 0x43, 0x63, 0x49, 0xb2, 0x14, 0xa3, 0xb8, 0xfb, 0x94, 0x81, 0xec, 0x99, 0x9e, 0x00, 0x50, 0x91, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9137 = { .name = "ecdsa_secp384r1_sha384_9137", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9137_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9137_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9137_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 181 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9138 for ECDSA, tcId is 182 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9138_pubkey[] = { 0xd1, 0xfd, 0x60, 0x2f, 0xee, 0xf8, 0x0b, 0xe9, 0xe5, 0x5a, 0x19, 0xd1, 0xa9, 0x79, 0x9c, 0x72, 0xa8, 0x99, 0x11, 0x0c, 0x6a, 0xc2, 0x1f, 0xb3, 0xc2, 0x13, 0x57, 0x06, 0x98, 0x09, 0xd5, 0x91, 0xa8, 0x77, 0x5b, 0x64, 0xd1, 0x86, 0x7a, 0x8c, 0xff, 0xf1, 0x24, 0xf6, 0xa5, 0xe3, 0xa4, 0xf5, 0xf9, 0x54, 0x80, 0x64, 0xf0, 0x1b, 0x9a, 0xf8, 0x86, 0x87, 0x05, 0x49, 0x3a, 0x37, 0xa0, 0x37, 0x19, 0x3b, 0x48, 0xf5, 0x3b, 0x7c, 0x79, 0x73, 0x02, 0x3f, 0x53, 0xe6, 0xce, 0xff, 0x68, 0x30, 0xca, 0x2f, 0x7a, 0x14, 0xef, 0x51, 0x53, 0x6d, 0x45, 0x3a, 0xf4, 0x3b, 0x30, 0x58, 0xd8, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_9138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9138_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xac, 0xc4, 0xf2, 0xaf, 0xb7, 0xf5, 0xc1, 0x0f, 0x81, 0x81, 0x75, 0x07, 0x4e, 0xf6, 0x88, 0xa6, 0x43, 0xfc, 0x53, 0x65, 0xe3, 0x81, 0x29, 0xf8, 0x6d, 0x5e, 0x25, 0x17, 0xfe, 0xb8, 0x1b, 0x2c, 0xd2, 0xb8, 0xdc, 0x4f, 0x78, 0x21, 0xbf, 0xd0, 0x32, 0xed, 0xc4, 0xc0, 0x23, 0x40, 0x85, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9138 = { .name = "ecdsa_secp384r1_sha384_9138", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9138_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9138_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9138_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 182 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9139 for ECDSA, tcId is 183 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9139_pubkey[] = { 0x82, 0xf3, 0x76, 0x04, 0xf6, 0x66, 0x64, 0xc2, 0x88, 0x3d, 0xba, 0x6d, 0x98, 0x39, 0x7c, 0x28, 0x10, 0x45, 0xcb, 0xf5, 0x9f, 0x1d, 0x16, 0xdd, 0xdb, 0x13, 0x81, 0x12, 0x6a, 0x24, 0x65, 0x53, 0xa8, 0xb4, 0xd2, 0xaa, 0xea, 0x48, 0xad, 0x91, 0x85, 0xa1, 0x64, 0x5f, 0x65, 0x56, 0x7d, 0x31, 0x8a, 0x4d, 0x7b, 0x19, 0xf1, 0xd2, 0xe4, 0x43, 0x4c, 0x9a, 0x8e, 0xca, 0xd3, 0x96, 0x30, 0x4a, 0xbc, 0x82, 0x22, 0x1b, 0xba, 0xb0, 0x67, 0x99, 0x35, 0x07, 0x1c, 0x72, 0xfd, 0x97, 0x5e, 0x7b, 0x02, 0x1c, 0x04, 0xb1, 0xd1, 0x6e, 0xa3, 0x6f, 0xc2, 0xd0, 0x51, 0xef, 0x5a, 0x8e, 0x11, 0x7c, }; static const unsigned char ecdsa_secp384r1_sha384_9139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9139_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x27, 0x6c, 0x07, 0x93, 0xf0, 0xa1, 0x97, 0x42, 0x42, 0x2f, 0x8a, 0xf6, 0x71, 0xcc, 0xf9, 0x65, 0xfa, 0x7d, 0x18, 0xd5, 0x41, 0xbe, 0xf4, 0xc0, 0x5b, 0x90, 0xe3, 0x03, 0xf8, 0x91, 0xd3, 0x90, 0x08, 0x43, 0x9e, 0x0f, 0xda, 0x4b, 0xfa, 0xd5, 0xee, 0x9a, 0x6a, 0xce, 0x7e, 0x34, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9139 = { .name = "ecdsa_secp384r1_sha384_9139", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9139_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9139_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9139_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 183 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9140 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9140_pubkey[] = { 0xf0, 0x52, 0xdf, 0xc2, 0x7b, 0xf8, 0xa6, 0xd3, 0x6f, 0x37, 0x39, 0xf2, 0x39, 0xb9, 0x81, 0xf5, 0xb5, 0x3f, 0xe0, 0x8d, 0x99, 0x9e, 0xc6, 0x83, 0xb0, 0x1e, 0x43, 0xe7, 0x59, 0x61, 0x56, 0x20, 0x6b, 0xa0, 0x8b, 0x8b, 0x9f, 0x59, 0x22, 0x9e, 0x2f, 0xbd, 0xce, 0x05, 0xf1, 0xe4, 0x0f, 0x99, 0x90, 0xf0, 0xfd, 0xfb, 0x70, 0x29, 0xf9, 0xb3, 0xe8, 0xc6, 0x14, 0x4d, 0xad, 0x03, 0x39, 0x20, 0x8b, 0x7c, 0xdc, 0xb3, 0x82, 0x0a, 0x55, 0x42, 0x59, 0xdb, 0x9d, 0x27, 0xaf, 0xdd, 0x18, 0xf4, 0xa7, 0x50, 0x29, 0x6c, 0x59, 0xba, 0xd6, 0xb6, 0x2d, 0xf0, 0x76, 0xf9, 0x0d, 0x53, 0xbe, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha384_9140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9140_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x94, 0x28, 0x48, 0x58, 0x6b, 0x53, 0x41, 0x05, 0xdd, 0xd1, 0xca, 0x77, 0xdf, 0x72, 0xe1, 0x25, 0x11, 0x40, 0xf4, 0x12, 0xe9, 0x7b, 0x62, 0xaf, 0xbf, 0x85, 0xd4, 0x82, 0x23, 0x09, 0x17, 0x6b, 0x59, 0x65, 0x45, 0x3d, 0xee, 0x3f, 0xab, 0x70, 0x9e, 0x14, 0x15, 0x6b, 0x3d, 0xfc, 0xec, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9140 = { .name = "ecdsa_secp384r1_sha384_9140", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9140_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9140_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9140_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 184 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9141 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9141_pubkey[] = { 0xf8, 0x77, 0xbd, 0x6e, 0x2a, 0x92, 0x73, 0xe3, 0x22, 0xa3, 0x29, 0x8e, 0xa3, 0xad, 0xd1, 0x3d, 0x11, 0x04, 0xb3, 0x21, 0x72, 0x28, 0x36, 0x69, 0xca, 0x66, 0x88, 0xf0, 0xcb, 0x59, 0x15, 0x24, 0xa7, 0xf1, 0x5d, 0xd4, 0x14, 0x96, 0x68, 0x1e, 0xda, 0x98, 0x93, 0x9a, 0xae, 0x72, 0x9f, 0xed, 0xe8, 0x5c, 0xa3, 0x7c, 0x81, 0xef, 0x19, 0xe3, 0xdc, 0x9a, 0xb1, 0x69, 0x08, 0xa3, 0x72, 0x0d, 0x86, 0x87, 0x5a, 0x51, 0xa6, 0xa6, 0xd9, 0x32, 0xe3, 0x74, 0x92, 0xa6, 0xec, 0x7a, 0x34, 0x4e, 0xab, 0xc4, 0x82, 0x37, 0x7f, 0x14, 0x89, 0x1f, 0xbd, 0x1d, 0xa7, 0xfa, 0xef, 0xfa, 0x11, 0x78, }; static const unsigned char ecdsa_secp384r1_sha384_9141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9141_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9141 = { .name = "ecdsa_secp384r1_sha384_9141", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9141_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9141_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9141_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 185 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9142 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9142_pubkey[] = { 0x14, 0x24, 0x9b, 0xbc, 0xfe, 0xec, 0xea, 0xb0, 0x6c, 0x75, 0x65, 0x4d, 0x36, 0x1c, 0x0d, 0xf8, 0xd5, 0x6b, 0x32, 0x0e, 0xa3, 0xbc, 0x1d, 0x46, 0x27, 0xec, 0x0a, 0x2f, 0x4b, 0x8f, 0xa3, 0x57, 0x74, 0x45, 0x69, 0x46, 0x64, 0xf5, 0x69, 0xa9, 0x1f, 0x48, 0x07, 0x41, 0x38, 0x1e, 0x49, 0x4a, 0x28, 0x47, 0x9f, 0x21, 0x86, 0xd7, 0x15, 0xa5, 0x67, 0x88, 0xf6, 0x70, 0x73, 0x05, 0x6a, 0xa0, 0xcb, 0x0b, 0x6a, 0x7f, 0x78, 0x93, 0xe7, 0x7b, 0x9a, 0x69, 0x76, 0xef, 0x66, 0x63, 0xd8, 0x02, 0x26, 0x89, 0x6d, 0x7f, 0x43, 0xbb, 0x50, 0x2e, 0x1b, 0x4d, 0x49, 0x55, 0x8a, 0x27, 0xdd, 0x8b, }; static const unsigned char ecdsa_secp384r1_sha384_9142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9142_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9142 = { .name = "ecdsa_secp384r1_sha384_9142", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9142_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9142_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9142_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 186 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9143 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9143_pubkey[] = { 0x50, 0xa4, 0x38, 0xc9, 0x8e, 0xe9, 0x40, 0x25, 0xce, 0x13, 0xe2, 0x7d, 0x36, 0xb8, 0x28, 0x0d, 0x48, 0x43, 0x58, 0x58, 0x36, 0xeb, 0x47, 0x01, 0x1a, 0x07, 0x0c, 0xd7, 0x77, 0x29, 0x24, 0x56, 0x84, 0xa0, 0xdb, 0x31, 0xfd, 0xe9, 0x80, 0x62, 0x03, 0x49, 0xc7, 0x96, 0x83, 0x2b, 0x2c, 0x6c, 0xbd, 0xb7, 0x2d, 0xba, 0x9f, 0x3f, 0x9c, 0xc8, 0x78, 0x55, 0x9f, 0x50, 0xb6, 0xbd, 0x12, 0x90, 0xf1, 0x0a, 0x6b, 0xcc, 0xbc, 0x1e, 0xee, 0xf7, 0x70, 0x8b, 0x1b, 0x72, 0x05, 0x90, 0x22, 0x98, 0x79, 0x79, 0xe3, 0x52, 0x21, 0xc5, 0x12, 0x59, 0xf3, 0x37, 0xc7, 0x28, 0x8a, 0x2f, 0x86, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_9143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9143_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9143 = { .name = "ecdsa_secp384r1_sha384_9143", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9143_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9143_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9143_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 187 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9144 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9144_pubkey[] = { 0x4d, 0x3f, 0xc5, 0xdc, 0xfa, 0xf7, 0x41, 0x11, 0x3c, 0xda, 0x3c, 0xe2, 0xf8, 0xdf, 0xf4, 0xc9, 0x12, 0x14, 0x3e, 0x4d, 0x36, 0x31, 0x4c, 0x36, 0x1d, 0x7e, 0xd5, 0x65, 0x6b, 0x68, 0x44, 0x8b, 0xcc, 0xa1, 0x14, 0xba, 0x9e, 0x81, 0x24, 0x28, 0x12, 0x34, 0x66, 0x0b, 0x77, 0x26, 0xdd, 0xcd, 0x68, 0x0d, 0xdf, 0xef, 0x7e, 0xa0, 0x7b, 0xfb, 0xce, 0xde, 0x10, 0x80, 0x3d, 0x38, 0xd7, 0x21, 0x16, 0x31, 0xca, 0x11, 0x46, 0x60, 0x78, 0x81, 0x9e, 0xb6, 0x6e, 0x11, 0x92, 0x1a, 0xb7, 0xff, 0xa3, 0xc4, 0x56, 0x0c, 0x73, 0x2e, 0x77, 0x59, 0x5f, 0xd4, 0x08, 0xe9, 0x17, 0xdd, 0x9a, 0xfc, }; static const unsigned char ecdsa_secp384r1_sha384_9144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9144_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9144 = { .name = "ecdsa_secp384r1_sha384_9144", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9144_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9144_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9144_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 188 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9145 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9145_pubkey[] = { 0x63, 0xd6, 0x5c, 0xdf, 0xeb, 0x1f, 0x1a, 0x42, 0x00, 0x0f, 0x43, 0xbd, 0x1d, 0xdd, 0x13, 0x05, 0x37, 0xa7, 0xb6, 0xf6, 0x35, 0xe8, 0xd2, 0xbd, 0x81, 0xa9, 0x7d, 0xa1, 0x68, 0x22, 0x11, 0x83, 0xda, 0x43, 0x3c, 0xa7, 0x84, 0x29, 0xfd, 0x2b, 0x33, 0xc5, 0xf9, 0x48, 0x95, 0xa9, 0xc1, 0x3a, 0xa9, 0xd1, 0xd5, 0xea, 0x32, 0x87, 0x25, 0x65, 0x3a, 0x5a, 0x9d, 0x00, 0xf8, 0x5a, 0x55, 0x16, 0x23, 0x6f, 0x3b, 0x14, 0x28, 0xa8, 0x62, 0x92, 0x87, 0xd3, 0xb0, 0x48, 0x7a, 0x2e, 0x82, 0xdd, 0x57, 0xf9, 0x3b, 0xb2, 0xaa, 0x3d, 0x97, 0x83, 0xdc, 0x74, 0x13, 0x1e, 0x13, 0x75, 0x60, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9145_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9145 = { .name = "ecdsa_secp384r1_sha384_9145", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9145_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9145_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9145_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 189 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9146 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9146_pubkey[] = { 0xd2, 0x2c, 0x9c, 0x34, 0x8b, 0x97, 0x45, 0x71, 0x1f, 0x57, 0xde, 0xba, 0xc3, 0xa0, 0x7d, 0xf9, 0x0a, 0x52, 0x7c, 0x06, 0xbd, 0x02, 0xa8, 0x45, 0x4f, 0x41, 0x43, 0x7d, 0x54, 0x22, 0x4e, 0x07, 0x16, 0x98, 0xf0, 0x3f, 0xdc, 0x64, 0xb1, 0xd6, 0x52, 0x41, 0x4e, 0xdc, 0x3f, 0x22, 0x39, 0xc4, 0x9a, 0xe9, 0x81, 0x2a, 0x4b, 0x92, 0xf0, 0x99, 0xd6, 0x65, 0x9a, 0x65, 0x96, 0x91, 0x76, 0x8d, 0x57, 0xe5, 0x30, 0xed, 0x3c, 0x91, 0xd5, 0x45, 0x57, 0x81, 0x60, 0x58, 0x50, 0x99, 0x7a, 0x58, 0x22, 0x1f, 0x22, 0xa2, 0x45, 0x1c, 0x39, 0x32, 0x47, 0x06, 0x06, 0xc2, 0x3f, 0x3a, 0xb1, 0xb8, }; static const unsigned char ecdsa_secp384r1_sha384_9146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9146_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9146 = { .name = "ecdsa_secp384r1_sha384_9146", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9146_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9146_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9146_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 190 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9147 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9147_pubkey[] = { 0x31, 0xf0, 0x5c, 0x0c, 0x29, 0xe9, 0xda, 0x49, 0xaa, 0x2f, 0xbb, 0xed, 0xee, 0x77, 0x0c, 0x68, 0xd1, 0x0f, 0x85, 0xe7, 0xf7, 0x7e, 0x72, 0xac, 0x3c, 0xfa, 0x9c, 0x86, 0x23, 0xa2, 0xbb, 0x42, 0xee, 0xb2, 0xf2, 0x4a, 0xc8, 0xf2, 0xae, 0xf7, 0xab, 0x0c, 0x4b, 0x47, 0x82, 0x31, 0x40, 0x03, 0x5b, 0xb3, 0x2f, 0xc1, 0xec, 0x04, 0xbb, 0xff, 0x5e, 0xab, 0x96, 0xe0, 0x70, 0xc9, 0x38, 0xba, 0x1b, 0x53, 0xfe, 0x63, 0x97, 0x0f, 0x64, 0x9a, 0xe0, 0x2e, 0x2a, 0x4a, 0xda, 0x42, 0x0a, 0x24, 0x9b, 0x6f, 0x7c, 0x52, 0x5e, 0x2c, 0x4b, 0x9b, 0x0d, 0x55, 0x62, 0xae, 0x26, 0xf2, 0x27, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9147_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9147 = { .name = "ecdsa_secp384r1_sha384_9147", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9147_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9147_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9147_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 191 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9148 for ECDSA, tcId is 192 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9148_pubkey[] = { 0xbc, 0x26, 0xee, 0xc9, 0x5e, 0x26, 0xc9, 0x80, 0xbc, 0x03, 0x34, 0x26, 0x4c, 0xbc, 0xfc, 0x26, 0xb8, 0x97, 0xc3, 0x57, 0x1c, 0x96, 0xce, 0x9a, 0xb2, 0xa6, 0x7b, 0x49, 0xbb, 0x0f, 0x26, 0xa6, 0x27, 0x2f, 0xdc, 0x27, 0x80, 0x6d, 0x7a, 0x4c, 0x57, 0x2a, 0xe0, 0xf7, 0x81, 0x49, 0xf1, 0xf3, 0xc8, 0xaf, 0x5f, 0x41, 0xb9, 0x9d, 0x20, 0x66, 0x01, 0x81, 0x65, 0x51, 0x3f, 0xb3, 0xb5, 0x5e, 0x42, 0x55, 0xdc, 0xd0, 0x65, 0x96, 0x47, 0xed, 0x55, 0xe1, 0xe2, 0x60, 0x2c, 0xae, 0x4e, 0xfb, 0xd6, 0xea, 0xe1, 0xdf, 0xe2, 0xff, 0x63, 0xe2, 0xc7, 0x48, 0xd4, 0xac, 0xc7, 0x43, 0x01, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9148_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9148 = { .name = "ecdsa_secp384r1_sha384_9148", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9148_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9148_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9148_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 192 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9149 for ECDSA, tcId is 193 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9149_pubkey[] = { 0x6f, 0xa0, 0x96, 0x4d, 0xd0, 0x54, 0x25, 0x0a, 0xf1, 0x76, 0x89, 0x1c, 0x0c, 0x82, 0x2b, 0x01, 0x3b, 0x70, 0xf0, 0x59, 0xc3, 0x47, 0x17, 0x2c, 0xaf, 0xc6, 0xb3, 0x6c, 0xd1, 0x6c, 0xf3, 0xb0, 0xf9, 0xd1, 0x9f, 0x25, 0x98, 0xbd, 0x0d, 0x58, 0x0a, 0xc1, 0x6c, 0x46, 0xac, 0xb1, 0x67, 0xd4, 0x37, 0x5b, 0xef, 0x70, 0x1c, 0x00, 0x2d, 0xcc, 0x04, 0x0f, 0xd5, 0x48, 0x24, 0xb1, 0x4c, 0xc2, 0xdf, 0x01, 0x54, 0xeb, 0x20, 0xe7, 0x44, 0x64, 0xe1, 0xfe, 0x7b, 0x83, 0x34, 0x26, 0xdd, 0x7d, 0x63, 0x6b, 0xf2, 0xd7, 0x96, 0x03, 0xfd, 0xde, 0x5d, 0xda, 0xab, 0x23, 0xab, 0x0c, 0xf4, 0x26, }; static const unsigned char ecdsa_secp384r1_sha384_9149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9149_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9149 = { .name = "ecdsa_secp384r1_sha384_9149", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9149_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9149_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9149_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 193 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9150 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9150_pubkey[] = { 0xba, 0xa4, 0xe7, 0x12, 0xee, 0x07, 0x86, 0xa5, 0xab, 0x0e, 0x5a, 0x5d, 0xaf, 0xdc, 0xdc, 0xf8, 0x7b, 0x38, 0x83, 0x0a, 0xb2, 0xec, 0x86, 0xfa, 0xed, 0xda, 0x9f, 0xdf, 0x65, 0x33, 0x2f, 0x6a, 0x96, 0x88, 0x26, 0x94, 0x12, 0xf0, 0x50, 0x35, 0x65, 0x30, 0xd4, 0x66, 0x4a, 0x7f, 0xb8, 0xcd, 0xec, 0xc4, 0x6a, 0x90, 0x1b, 0x01, 0x6e, 0x6b, 0xb8, 0xa3, 0x36, 0xad, 0x9a, 0xa6, 0xf1, 0x9a, 0xbf, 0x9a, 0xda, 0x69, 0x70, 0x5d, 0x1c, 0x90, 0x5b, 0xea, 0xfb, 0x95, 0xa4, 0x4f, 0x52, 0xaf, 0x43, 0xde, 0x4b, 0xf8, 0x0c, 0x05, 0x0c, 0xf9, 0x96, 0xb7, 0x79, 0x6d, 0xfc, 0xee, 0x8e, 0x1b, }; static const unsigned char ecdsa_secp384r1_sha384_9150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9150_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9150 = { .name = "ecdsa_secp384r1_sha384_9150", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9150_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9150_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9150_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 194 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9151 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9151_pubkey[] = { 0x81, 0xe7, 0x8a, 0x52, 0xae, 0x06, 0x95, 0x58, 0x3f, 0x7a, 0x60, 0x1a, 0xb9, 0xb6, 0xfb, 0xfa, 0xf4, 0x34, 0xf2, 0xbe, 0xfa, 0x1f, 0x8c, 0x83, 0x3d, 0x59, 0xde, 0xb6, 0x27, 0xa9, 0x27, 0xc2, 0xf4, 0x2d, 0x48, 0xeb, 0x61, 0x7f, 0xe0, 0x42, 0xf5, 0x84, 0xe1, 0x05, 0xc2, 0x3c, 0x23, 0x17, 0xcf, 0x22, 0xd5, 0x65, 0xf5, 0xf3, 0xb4, 0x25, 0xef, 0x79, 0x37, 0xdf, 0x62, 0x9b, 0x68, 0x64, 0xda, 0xc7, 0x12, 0x64, 0xb2, 0x88, 0xc1, 0xa9, 0x87, 0x21, 0x0f, 0x52, 0x30, 0x71, 0x31, 0x9c, 0xe3, 0xf6, 0x44, 0x11, 0x91, 0x0a, 0xc2, 0x37, 0x65, 0xc4, 0x26, 0x6e, 0x61, 0x51, 0x12, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_9151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9151_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9151 = { .name = "ecdsa_secp384r1_sha384_9151", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9151_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9151_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9151_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 195 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9152 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9152_pubkey[] = { 0x41, 0xfa, 0x87, 0x65, 0xb1, 0x9d, 0x31, 0x08, 0x03, 0x1e, 0x28, 0xc9, 0xa7, 0x81, 0xa3, 0x85, 0xc9, 0xc1, 0x0b, 0x2b, 0xfd, 0x42, 0xe6, 0x43, 0x7e, 0x5c, 0x4b, 0xd7, 0x11, 0xcf, 0x2a, 0x03, 0x17, 0x50, 0x84, 0x7d, 0x17, 0xa8, 0x2f, 0x93, 0x76, 0xa3, 0x0a, 0xe1, 0x82, 0xa6, 0xd6, 0xe7, 0x1c, 0x20, 0xaf, 0x96, 0x32, 0x41, 0x47, 0xd4, 0x15, 0x5a, 0x4d, 0x0c, 0x86, 0x7c, 0xa8, 0xe3, 0x6e, 0xba, 0x20, 0x4f, 0xbe, 0xd2, 0x08, 0x7e, 0x0f, 0xcb, 0xdc, 0x8b, 0xaa, 0xbe, 0x07, 0xbb, 0x31, 0x23, 0xf9, 0xf7, 0x25, 0x9e, 0x77, 0x1c, 0xd9, 0xf1, 0xad, 0x17, 0xd1, 0xa2, 0x37, 0x87, }; static const unsigned char ecdsa_secp384r1_sha384_9152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9152_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9152 = { .name = "ecdsa_secp384r1_sha384_9152", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9152_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9152_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9152_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 196 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9153 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9153_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0x57, 0x2c, 0x1e, 0x06, 0xdd, 0x2c, 0x7b, 0x94, 0xb8, 0x73, 0xf0, 0x57, 0x8f, 0xcb, 0x2b, 0x99, 0xd6, 0x0e, 0x24, 0x6e, 0x51, 0x24, 0x5d, 0x08, 0x04, 0xed, 0xd4, 0x4b, 0x32, 0xf0, 0xf0, 0x00, 0xc8, 0xf8, 0xf8, 0x8f, 0x1d, 0x4a, 0x65, 0xfe, 0xa5, 0x1d, 0xbb, 0xb4, 0xab, 0x1e, 0x28, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_9153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9153_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9153 = { .name = "ecdsa_secp384r1_sha384_9153", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9153_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9153_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9153_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 197 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9154 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9154_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0xa8, 0xd3, 0xe1, 0xf9, 0x22, 0xd3, 0x84, 0x6b, 0x47, 0x8c, 0x0f, 0xa8, 0x70, 0x34, 0xd4, 0x66, 0x29, 0xf1, 0xdb, 0x91, 0xae, 0xdb, 0xa2, 0xf7, 0xfb, 0x12, 0x2b, 0xb4, 0xcd, 0x0f, 0x0f, 0xfe, 0x37, 0x07, 0x07, 0x6f, 0xe2, 0xb5, 0x9a, 0x01, 0x5a, 0xe2, 0x44, 0x4c, 0x54, 0xe1, 0xd7, 0xdc, }; static const unsigned char ecdsa_secp384r1_sha384_9154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9154_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9154 = { .name = "ecdsa_secp384r1_sha384_9154", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9154_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9154_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9154_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 198 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9155 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9155_pubkey[] = { 0xb4, 0xd7, 0x8c, 0xcc, 0xbc, 0xed, 0x80, 0x65, 0xc0, 0xeb, 0xdc, 0x33, 0x0b, 0x46, 0x70, 0xec, 0x99, 0x30, 0x92, 0x73, 0xe4, 0x42, 0xb9, 0xbe, 0x34, 0x11, 0x96, 0xc1, 0x04, 0x3e, 0x44, 0x41, 0xfc, 0x57, 0xb9, 0x14, 0x08, 0x55, 0x95, 0xbf, 0xc7, 0x55, 0xc6, 0x4f, 0xc4, 0x09, 0xf0, 0xba, 0x01, 0xfe, 0xe3, 0x1c, 0xbb, 0xba, 0xed, 0x5c, 0x13, 0x23, 0xf0, 0x9c, 0x87, 0xdf, 0x9b, 0x07, 0x12, 0xc1, 0x2e, 0x99, 0x73, 0x3f, 0xa2, 0x3e, 0xf9, 0x1b, 0x4e, 0x6c, 0xa6, 0x66, 0xb0, 0x9d, 0xd7, 0x54, 0x0e, 0xbf, 0x10, 0x68, 0xa1, 0x51, 0x55, 0xbc, 0x06, 0x9e, 0x3d, 0x59, 0x5c, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9155_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9155 = { .name = "ecdsa_secp384r1_sha384_9155", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9155_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9155_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9155_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 199 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9156 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9156_pubkey[] = { 0x6e, 0x3c, 0x68, 0xbe, 0x53, 0xaa, 0xde, 0x81, 0xef, 0x89, 0xe0, 0x96, 0xd8, 0x41, 0xe2, 0x84, 0x5a, 0x23, 0x33, 0x1e, 0x7e, 0xc8, 0xa6, 0xa8, 0x39, 0xd5, 0x8d, 0x07, 0xfa, 0x01, 0x6c, 0x09, 0x73, 0xed, 0x75, 0xde, 0x4f, 0x99, 0x17, 0x7b, 0xfd, 0xc7, 0x4d, 0xb5, 0x66, 0xe9, 0xd1, 0x5a, 0x49, 0x72, 0xea, 0x08, 0xe5, 0x77, 0xce, 0x1f, 0x61, 0xc1, 0x3a, 0x6c, 0xa1, 0xba, 0xd1, 0xde, 0xef, 0x29, 0x82, 0xee, 0x01, 0xa2, 0x82, 0x6f, 0x00, 0x2b, 0x76, 0x9f, 0x2c, 0x46, 0x09, 0x8d, 0x3b, 0xaf, 0xf0, 0x68, 0xa4, 0x05, 0xd0, 0x9c, 0xa3, 0x84, 0x0d, 0x2f, 0xaf, 0xe4, 0xe4, 0x6e, }; static const unsigned char ecdsa_secp384r1_sha384_9156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9156_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9156 = { .name = "ecdsa_secp384r1_sha384_9156", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9156_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9156_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9156_sig, .siglen = 98, .result = -1, .comment = "point with x-coordinate 0, tcId is 200 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9157 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9157_pubkey[] = { 0xb1, 0x01, 0xcd, 0xb3, 0xeb, 0xa2, 0x0e, 0x11, 0x2a, 0xdb, 0xb4, 0xbb, 0xd2, 0xcb, 0x47, 0x9a, 0x69, 0xe5, 0x90, 0xa4, 0x4e, 0xa9, 0x02, 0x63, 0x18, 0x32, 0xab, 0xfa, 0xb8, 0xaf, 0x2c, 0x30, 0x41, 0xb3, 0xdf, 0x7f, 0x16, 0x65, 0xb2, 0xc6, 0xeb, 0x53, 0x3f, 0x54, 0x62, 0x17, 0x10, 0x0a, 0x1a, 0x61, 0xaa, 0x99, 0x51, 0x57, 0x8a, 0xd4, 0xf0, 0x0a, 0xe1, 0x73, 0x39, 0xa8, 0xa6, 0xf1, 0x35, 0x9b, 0xbd, 0x0a, 0xc3, 0x55, 0x67, 0x8e, 0xd4, 0xdf, 0x21, 0x33, 0x8f, 0x08, 0x76, 0x3c, 0x1d, 0x37, 0x02, 0xec, 0x13, 0x2b, 0x63, 0x4c, 0x7b, 0xcc, 0x01, 0x18, 0xef, 0xb1, 0xd0, 0xdd, }; static const unsigned char ecdsa_secp384r1_sha384_9157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9157_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9157 = { .name = "ecdsa_secp384r1_sha384_9157", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9157_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9157_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9157_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 201 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9158 for ECDSA, tcId is 202 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9158_pubkey[] = { 0x67, 0x61, 0x04, 0x4a, 0x04, 0x0a, 0x49, 0x79, 0xdb, 0x26, 0x9b, 0x4a, 0x37, 0x7e, 0x42, 0xf1, 0x1b, 0x4b, 0xe0, 0xce, 0x24, 0x61, 0x1f, 0x67, 0x76, 0x74, 0xdc, 0xf7, 0x70, 0xf5, 0x88, 0x7c, 0xa4, 0xdb, 0x56, 0x53, 0x03, 0x28, 0x38, 0x09, 0xe6, 0xd6, 0x5f, 0x7f, 0xc6, 0xbc, 0x27, 0x36, 0x05, 0xc7, 0xda, 0xa4, 0x03, 0xfc, 0xa5, 0x35, 0x49, 0xf7, 0x5f, 0xf3, 0x37, 0x29, 0x09, 0x64, 0x2d, 0x02, 0xb7, 0xfd, 0xca, 0xc1, 0xe6, 0x82, 0x42, 0x81, 0x4d, 0x6e, 0x92, 0x5a, 0xb0, 0x1a, 0x80, 0x83, 0x6c, 0xfb, 0xb3, 0x55, 0x81, 0x96, 0x00, 0x79, 0xe2, 0xfb, 0x44, 0xc0, 0xd1, 0x86, }; static const unsigned char ecdsa_secp384r1_sha384_9158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9158_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9158 = { .name = "ecdsa_secp384r1_sha384_9158", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9158_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9158_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9158_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 202 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9159 for ECDSA, tcId is 203 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9159_pubkey[] = { 0x69, 0x22, 0xc5, 0x91, 0x50, 0x2f, 0x01, 0x04, 0x6f, 0xee, 0x56, 0x17, 0xbf, 0x16, 0x49, 0x6f, 0x58, 0x39, 0x88, 0x22, 0xe6, 0x9a, 0xfa, 0x83, 0x35, 0x30, 0x8f, 0x36, 0xc0, 0x9a, 0x8e, 0xd4, 0x37, 0x20, 0x9f, 0xef, 0xcf, 0xfb, 0xbd, 0xf0, 0xa4, 0x87, 0x6b, 0x35, 0xa3, 0xc7, 0xab, 0x26, 0x55, 0x85, 0x4d, 0xb8, 0x25, 0xb9, 0x4b, 0x3f, 0x27, 0xe5, 0xf8, 0x92, 0xd3, 0xbb, 0xb6, 0xc7, 0x24, 0x0e, 0xc9, 0x22, 0x89, 0x4d, 0xd3, 0x59, 0x8e, 0x91, 0xfc, 0xc6, 0x13, 0x4a, 0x2b, 0x8f, 0xd1, 0x54, 0xe1, 0x79, 0x04, 0x66, 0x90, 0x62, 0x06, 0xf0, 0xf6, 0x23, 0x41, 0x6e, 0x63, 0xa1, }; static const unsigned char ecdsa_secp384r1_sha384_9159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9159_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9159 = { .name = "ecdsa_secp384r1_sha384_9159", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9159_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9159_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9159_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 203 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9160 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9160_pubkey[] = { 0x89, 0x2d, 0xac, 0x0e, 0x70, 0x0f, 0xc2, 0x9d, 0x18, 0x02, 0xd9, 0xa4, 0x49, 0xa6, 0xf5, 0x6b, 0x21, 0x72, 0xcb, 0x1b, 0x7d, 0x88, 0x10, 0x13, 0xcd, 0x3b, 0x31, 0xc0, 0xed, 0xb0, 0x52, 0xf2, 0xd3, 0x40, 0xc8, 0x99, 0x5a, 0x44, 0x77, 0xbc, 0xb9, 0x22, 0x5f, 0xec, 0x15, 0x66, 0x72, 0x33, 0xcc, 0x6c, 0x34, 0xae, 0x17, 0x44, 0x54, 0x44, 0x51, 0x6f, 0xd8, 0xfd, 0x22, 0xee, 0x83, 0xf7, 0x9e, 0xb0, 0x77, 0x1e, 0xbf, 0xf6, 0x67, 0x7a, 0xc5, 0xd4, 0xe0, 0x89, 0xf8, 0x7a, 0x1c, 0x72, 0xdf, 0x95, 0x7a, 0xcb, 0x24, 0x49, 0x2a, 0xdc, 0xd7, 0xc3, 0x81, 0x6b, 0x8e, 0x0c, 0x75, 0xb1, }; static const unsigned char ecdsa_secp384r1_sha384_9160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9160_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9160 = { .name = "ecdsa_secp384r1_sha384_9160", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9160_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9160_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9160_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 204 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9161 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9161_pubkey[] = { 0x01, 0x63, 0x41, 0x17, 0xe6, 0x47, 0x8c, 0xe0, 0x56, 0x8b, 0x0a, 0x24, 0x69, 0x23, 0x7b, 0xba, 0xc6, 0xff, 0x09, 0x6a, 0xcb, 0x7e, 0x51, 0x40, 0x72, 0xbf, 0x77, 0x12, 0x3c, 0xb5, 0x1b, 0xa0, 0xcc, 0x3e, 0x8d, 0x69, 0x28, 0x4d, 0x53, 0x4d, 0x8e, 0x6d, 0x1e, 0x87, 0x6c, 0xec, 0xf2, 0x22, 0x31, 0xe5, 0xef, 0x04, 0xdc, 0x96, 0x76, 0x2c, 0xe7, 0xd5, 0xef, 0x33, 0x48, 0xad, 0x1e, 0x24, 0x1a, 0xc7, 0x97, 0xae, 0x3b, 0x63, 0x0e, 0xa2, 0x49, 0xaf, 0xc5, 0x13, 0x9a, 0xf4, 0x9b, 0x8e, 0xf6, 0x8b, 0x32, 0xf8, 0x12, 0xd6, 0xb5, 0x14, 0x21, 0x03, 0x63, 0xd4, 0x98, 0xef, 0xc2, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9161_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9161 = { .name = "ecdsa_secp384r1_sha384_9161", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9161_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9161_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9161_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 205 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9162 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9162_pubkey[] = { 0x67, 0x5b, 0xdc, 0x79, 0xd8, 0x24, 0x38, 0x87, 0xfe, 0x1b, 0x30, 0x5d, 0x12, 0xac, 0x10, 0xd2, 0xe9, 0xc0, 0xbd, 0xe0, 0x70, 0xa6, 0xe3, 0x39, 0x4c, 0xd5, 0xf6, 0xad, 0xfb, 0xce, 0xda, 0x75, 0x49, 0x8b, 0x0e, 0x7a, 0x79, 0x4c, 0x72, 0x12, 0xf4, 0x2b, 0xe9, 0x3f, 0x61, 0x67, 0x44, 0x56, 0x3e, 0x96, 0xd1, 0xbf, 0x6f, 0x95, 0xcd, 0xbe, 0xfa, 0x77, 0x49, 0x11, 0xba, 0x06, 0x46, 0x3d, 0x8a, 0x90, 0xa0, 0xc9, 0xd7, 0x3c, 0x96, 0x99, 0xb0, 0x61, 0xd7, 0x79, 0xdc, 0x52, 0x49, 0x6e, 0x8e, 0xe9, 0xb9, 0xae, 0x9c, 0x5d, 0x4d, 0x90, 0xe8, 0x9c, 0xd1, 0x15, 0x7d, 0x81, 0x18, 0x95, }; static const unsigned char ecdsa_secp384r1_sha384_9162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9162_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9162 = { .name = "ecdsa_secp384r1_sha384_9162", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9162_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9162_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9162_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 206 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9163 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9163_pubkey[] = { 0x0f, 0xd1, 0xaa, 0xb8, 0x9f, 0x47, 0xb5, 0x65, 0xb8, 0x16, 0x0d, 0xfc, 0xc4, 0x33, 0xb6, 0x40, 0x8a, 0xde, 0xb1, 0x47, 0x3c, 0x03, 0x6b, 0x26, 0xb7, 0xdd, 0xec, 0x71, 0x4f, 0xb4, 0xd0, 0xe7, 0xdd, 0x75, 0x6c, 0x88, 0x46, 0x9e, 0x86, 0xe2, 0x18, 0x81, 0x3e, 0xad, 0x8e, 0x8e, 0x76, 0x76, 0xf1, 0xcc, 0x95, 0x5c, 0x41, 0x39, 0xe0, 0x07, 0x1c, 0x00, 0x79, 0xec, 0x1d, 0x77, 0x16, 0x4e, 0x05, 0x69, 0xbd, 0xf4, 0x53, 0x83, 0x7e, 0x8b, 0x33, 0xc9, 0x85, 0x35, 0xa0, 0xe7, 0xc9, 0xc6, 0x1e, 0xf2, 0x47, 0x62, 0x06, 0x7b, 0xb4, 0x6b, 0x61, 0x16, 0xea, 0x79, 0x09, 0xa6, 0x9b, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_9163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9163_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9163 = { .name = "ecdsa_secp384r1_sha384_9163", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9163_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9163_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9163_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 207 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9164 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9164_pubkey[] = { 0x34, 0xd7, 0x4e, 0xc0, 0x88, 0xba, 0xb6, 0xc6, 0x32, 0x39, 0x68, 0xd1, 0xf4, 0x68, 0x99, 0x38, 0x12, 0xf6, 0x90, 0xd6, 0xed, 0xca, 0x5b, 0x97, 0x60, 0x4d, 0x71, 0x8e, 0x12, 0xb8, 0xcd, 0xfd, 0xd9, 0x6d, 0x42, 0xe5, 0x7d, 0x33, 0xaf, 0xe3, 0x12, 0xf0, 0xee, 0x3c, 0x3d, 0x0a, 0x13, 0xf7, 0x86, 0xf4, 0x92, 0x2b, 0xb2, 0xc1, 0x3b, 0xdf, 0x77, 0x52, 0xa3, 0xec, 0xb6, 0x93, 0x93, 0xe9, 0x97, 0xbd, 0x65, 0x46, 0x1c, 0x46, 0x86, 0x7e, 0xbe, 0xef, 0x62, 0x96, 0xb2, 0x3f, 0x2c, 0x56, 0xdf, 0x63, 0xac, 0xfd, 0xe6, 0x48, 0xf3, 0xf5, 0x00, 0x2d, 0xbc, 0x23, 0x9f, 0xfd, 0x15, 0x82, }; static const unsigned char ecdsa_secp384r1_sha384_9164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9164_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9164 = { .name = "ecdsa_secp384r1_sha384_9164", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9164_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9164_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9164_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 208 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9165 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9165_pubkey[] = { 0x43, 0x76, 0xc9, 0x89, 0x3e, 0x92, 0x77, 0x29, 0x6c, 0x76, 0x6a, 0x83, 0xab, 0xbe, 0x36, 0xb3, 0x4d, 0xa7, 0xa6, 0x31, 0xf8, 0xcb, 0xfd, 0x32, 0xa1, 0x88, 0x8d, 0xe0, 0xdd, 0x14, 0x55, 0xa2, 0x1a, 0x15, 0x3e, 0xa2, 0xd6, 0x1c, 0xfa, 0x50, 0x71, 0xfc, 0x6b, 0xe1, 0x2a, 0x65, 0x8f, 0x6b, 0x29, 0x0b, 0xa1, 0xa8, 0xee, 0x8c, 0x78, 0xb5, 0xdd, 0x58, 0xf9, 0xff, 0xca, 0xcb, 0x22, 0x95, 0x56, 0x82, 0xee, 0xa0, 0x24, 0x29, 0xc3, 0xfa, 0x8c, 0xdc, 0xb6, 0x49, 0xfa, 0x4d, 0x00, 0x7c, 0x86, 0x93, 0xe3, 0xf8, 0xf3, 0xc0, 0xa5, 0xf3, 0xc4, 0xde, 0x7a, 0x51, 0xbe, 0xaa, 0x98, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_9165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9165_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9165 = { .name = "ecdsa_secp384r1_sha384_9165", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9165_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9165_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9165_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 209 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9166 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9166_pubkey[] = { 0x10, 0x87, 0x8f, 0xc4, 0x80, 0x7f, 0x67, 0x32, 0xa2, 0x3c, 0x88, 0x3e, 0x83, 0x8e, 0x38, 0xc7, 0x87, 0xf7, 0x08, 0x8f, 0x94, 0xc1, 0x82, 0x4b, 0x84, 0x67, 0x3e, 0x8b, 0x9e, 0xab, 0x16, 0xde, 0x15, 0x44, 0xae, 0x4b, 0xf2, 0xc6, 0xfe, 0x3f, 0xe4, 0xfb, 0x34, 0x3b, 0x74, 0x87, 0xe2, 0xb4, 0x30, 0x36, 0xff, 0x43, 0x95, 0x33, 0xd2, 0x2f, 0x95, 0x1d, 0xae, 0x96, 0x65, 0x84, 0xba, 0xfb, 0x23, 0xb2, 0x17, 0xdc, 0xad, 0x2f, 0x8f, 0x4e, 0x0e, 0x69, 0x99, 0xc0, 0xc4, 0xd0, 0xf0, 0x76, 0x63, 0x4b, 0xe8, 0x05, 0xf6, 0x76, 0xfd, 0x2a, 0x59, 0xc2, 0x7f, 0x9f, 0xe7, 0xc5, 0xd9, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_9166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9166_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9166 = { .name = "ecdsa_secp384r1_sha384_9166", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9166_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9166_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9166_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 210 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9167 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9167_pubkey[] = { 0x03, 0x6b, 0x25, 0x3e, 0x3b, 0x4a, 0xc8, 0x8b, 0xb8, 0x58, 0x5a, 0x2b, 0x32, 0xb9, 0x78, 0x76, 0x6a, 0x93, 0x1e, 0x5a, 0xd0, 0xd0, 0xe6, 0x53, 0xa2, 0xe3, 0x4b, 0x44, 0xd6, 0xdd, 0xcc, 0x0d, 0x38, 0x6e, 0x20, 0xc4, 0xde, 0xf2, 0xd8, 0xbb, 0x3f, 0x8d, 0xa1, 0x28, 0xc1, 0xea, 0xc6, 0x9f, 0x9c, 0x8e, 0x3b, 0x5f, 0xf5, 0xdd, 0xe2, 0x20, 0x5a, 0xf3, 0x59, 0xb3, 0x97, 0x4d, 0x52, 0x75, 0x8d, 0x7a, 0xba, 0xe8, 0x12, 0xb8, 0xb2, 0x75, 0xe1, 0x45, 0x2c, 0x4e, 0x59, 0xcb, 0x62, 0xe9, 0xb6, 0x77, 0x1d, 0x34, 0x7d, 0xbd, 0x1d, 0xea, 0x76, 0x1c, 0x70, 0x29, 0x1c, 0xc5, 0xe0, 0xa6, }; static const unsigned char ecdsa_secp384r1_sha384_9167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9167_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9167 = { .name = "ecdsa_secp384r1_sha384_9167", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9167_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9167_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9167_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 211 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9168 for ECDSA, tcId is 212 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9168_pubkey[] = { 0x27, 0x83, 0xc1, 0xbe, 0x92, 0x2f, 0xce, 0x15, 0x58, 0x64, 0xec, 0xb4, 0x1d, 0x0a, 0x31, 0x6e, 0x19, 0x3a, 0x55, 0x84, 0x3e, 0x80, 0x19, 0x2f, 0x1f, 0xe5, 0x56, 0x77, 0x2f, 0x3d, 0xeb, 0xd0, 0x4b, 0x9f, 0xc9, 0x3c, 0x27, 0xbc, 0x6f, 0x35, 0x39, 0x38, 0x88, 0x6a, 0x40, 0x44, 0x19, 0x94, 0x1a, 0x35, 0x2c, 0xec, 0x33, 0x69, 0x46, 0x42, 0x4f, 0xa3, 0xc2, 0x08, 0xea, 0x71, 0x05, 0xf5, 0x54, 0x9e, 0xdd, 0xe8, 0x68, 0x8a, 0xbd, 0x30, 0x53, 0x44, 0xbf, 0x4f, 0x66, 0xdd, 0xa7, 0xea, 0xbc, 0xda, 0x6f, 0x85, 0x57, 0xc9, 0xaf, 0x88, 0x10, 0x98, 0x04, 0xd7, 0x02, 0xe9, 0x67, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha384_9168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9168_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9168 = { .name = "ecdsa_secp384r1_sha384_9168", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9168_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9168_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9168_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 212 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9169 for ECDSA, tcId is 213 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9169_pubkey[] = { 0xfa, 0x92, 0x53, 0x8c, 0xdc, 0x74, 0x03, 0x68, 0xca, 0xf1, 0x64, 0x80, 0xff, 0x13, 0x04, 0xce, 0xbb, 0xbe, 0x59, 0xa4, 0x6a, 0x7a, 0x84, 0x60, 0x37, 0x26, 0xb9, 0x59, 0x2d, 0x10, 0x5b, 0xe0, 0x69, 0xdf, 0x1c, 0x61, 0xb5, 0x97, 0x4f, 0x27, 0xe7, 0x55, 0x2f, 0x79, 0x7d, 0xe9, 0x7c, 0xdb, 0x62, 0x0e, 0x03, 0xa4, 0x6d, 0xa8, 0x62, 0xe4, 0xb0, 0x89, 0xba, 0xfb, 0xb8, 0x0d, 0xf8, 0xf0, 0x55, 0xc8, 0xf4, 0x79, 0x91, 0xb3, 0xa3, 0xdd, 0xb2, 0xb0, 0x89, 0xae, 0xdb, 0x2f, 0x15, 0x84, 0x1a, 0x6a, 0x5b, 0x5e, 0x14, 0xc1, 0xdc, 0x36, 0xb3, 0xc1, 0x55, 0xc4, 0xf7, 0x4d, 0x34, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_9169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9169_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9169 = { .name = "ecdsa_secp384r1_sha384_9169", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9169_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9169_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9169_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 213 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9170 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9170_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9170_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9170 = { .name = "ecdsa_secp384r1_sha384_9170", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9170_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9170_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9170_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 214 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9171 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9171_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9171_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9171 = { .name = "ecdsa_secp384r1_sha384_9171", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9171_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9171_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9171_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 215 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9172 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9172_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_9172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9172_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9172 = { .name = "ecdsa_secp384r1_sha384_9172", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9172_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9172_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9172_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 216 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9173 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9173_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_9173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9173_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9173 = { .name = "ecdsa_secp384r1_sha384_9173", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9173_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9173_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9173_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 217 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9174 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9174_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9174_sig[] = { 0x32, 0x40, 0x12, 0x49, 0x71, 0x4e, 0x90, 0x91, 0xf0, 0x5a, 0x5e, 0x10, 0x9d, 0x5c, 0x12, 0x16, 0xfd, 0xc0, 0x5e, 0x98, 0x61, 0x42, 0x61, 0xaa, 0x0d, 0xbd, 0x9e, 0x9c, 0xd4, 0x41, 0x5d, 0xee, 0x29, 0x23, 0x8a, 0xfb, 0xd3, 0xb1, 0x03, 0xc1, 0xe4, 0x0e, 0xe5, 0xc9, 0x14, 0x4a, 0xee, 0x0f, 0x43, 0x26, 0x75, 0x6f, 0xb2, 0xc4, 0xfd, 0x72, 0x63, 0x60, 0xdd, 0x64, 0x79, 0xb5, 0x84, 0x94, 0x78, 0xc7, 0xa9, 0xd0, 0x54, 0xa8, 0x33, 0xa5, 0x8c, 0x16, 0x31, 0xc3, 0x3b, 0x63, 0xc3, 0x44, 0x13, 0x36, 0xdd, 0xf2, 0xc7, 0xfe, 0x0e, 0xd1, 0x29, 0xaa, 0xe6, 0xd4, 0xdd, 0xfe, 0xb7, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9174 = { .name = "ecdsa_secp384r1_sha384_9174", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9174_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha384_9174_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 218 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9175 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9175_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9175_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha384_9175_sig[] = { 0xd7, 0x14, 0x3a, 0x83, 0x66, 0x08, 0xb2, 0x55, 0x99, 0xa7, 0xf2, 0x8d, 0xec, 0x66, 0x35, 0x49, 0x4c, 0x29, 0x92, 0xad, 0x1e, 0x2b, 0xbe, 0xec, 0xb7, 0xef, 0x60, 0x1a, 0x9c, 0x01, 0x74, 0x6e, 0x71, 0x0c, 0xe0, 0xd9, 0xc4, 0x8a, 0xcc, 0xb3, 0x8a, 0x79, 0xed, 0xe5, 0xb9, 0x63, 0x8f, 0x34, 0x80, 0xf9, 0xe1, 0x65, 0xe8, 0xc6, 0x10, 0x35, 0xbf, 0x8a, 0xa7, 0xb5, 0x53, 0x39, 0x60, 0xe4, 0x6d, 0xd0, 0xe2, 0x11, 0xc9, 0x04, 0xa0, 0x64, 0xed, 0xb6, 0xde, 0x41, 0xf7, 0x97, 0xc0, 0xea, 0xe4, 0xe3, 0x27, 0x61, 0x2e, 0xe3, 0xf8, 0x16, 0xf4, 0x15, 0x72, 0x72, 0xbb, 0x4f, 0xab, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9175 = { .name = "ecdsa_secp384r1_sha384_9175", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9175_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9175_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha384_9175_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 219 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9176 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9176_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9176_sig[] = { 0x23, 0x45, 0x03, 0xfc, 0xca, 0x57, 0x81, 0x21, 0x98, 0x6d, 0x96, 0xbe, 0x07, 0xfb, 0xc8, 0xda, 0x5d, 0x89, 0x4e, 0xd8, 0x58, 0x8c, 0x6d, 0xbc, 0xdb, 0xe9, 0x74, 0xb4, 0xb8, 0x13, 0xb2, 0x1c, 0x52, 0xd2, 0x0a, 0x89, 0x28, 0xf2, 0xe2, 0xfd, 0xac, 0x14, 0x70, 0x5b, 0x07, 0x05, 0x49, 0x8c, 0xcd, 0x7b, 0x9b, 0x76, 0x6b, 0x97, 0xb5, 0x3d, 0x1a, 0x80, 0xfc, 0x0b, 0x76, 0x0a, 0xf1, 0x6a, 0x11, 0xbf, 0x4a, 0x59, 0xc7, 0xc3, 0x67, 0xc6, 0xc7, 0x27, 0x5d, 0xfb, 0x6e, 0x18, 0xa8, 0x80, 0x91, 0xee, 0xd3, 0x73, 0x4b, 0xf5, 0xcf, 0x41, 0xb3, 0xdc, 0x6f, 0xec, 0xd6, 0xd3, 0xba, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9176 = { .name = "ecdsa_secp384r1_sha384_9176", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9176_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9176_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9176_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 220 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9177 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9177_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9177_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9177_sig[] = { 0x5c, 0xad, 0x9a, 0xe1, 0x56, 0x5f, 0x25, 0x88, 0xf8, 0x6d, 0x82, 0x1c, 0x2c, 0xc1, 0xb4, 0xd0, 0xfd, 0xf8, 0x74, 0x33, 0x13, 0x26, 0x56, 0x8f, 0x5b, 0x0e, 0x13, 0x0e, 0x4e, 0x0c, 0x0e, 0xc4, 0x97, 0xf8, 0xf5, 0xf5, 0x64, 0x21, 0x2b, 0xd2, 0xa2, 0x6e, 0xcb, 0x78, 0x2c, 0xf0, 0xa1, 0x8d, 0xbf, 0x2e, 0x9d, 0x09, 0x80, 0xfb, 0xb0, 0x06, 0x96, 0x67, 0x3e, 0x7f, 0xbb, 0x03, 0xe1, 0xf8, 0x54, 0xb9, 0xd7, 0x59, 0x6b, 0x75, 0x9a, 0x17, 0xbf, 0x6e, 0x6e, 0x67, 0xa9, 0x5e, 0xa6, 0xc1, 0x66, 0x4f, 0x82, 0xdc, 0x44, 0x9a, 0xe5, 0xea, 0x77, 0x9a, 0xbd, 0x99, 0xc7, 0x8e, 0x68, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9177 = { .name = "ecdsa_secp384r1_sha384_9177", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9177_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9177_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha384_9177_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 221 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9178 for ECDSA, tcId is 222 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9178_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9178_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9178_sig[] = { 0x07, 0x64, 0x8b, 0x66, 0x60, 0xd0, 0x1b, 0xa2, 0x52, 0x0a, 0x09, 0xd2, 0x98, 0xad, 0xf3, 0xb1, 0xa0, 0x2c, 0x32, 0x74, 0x4b, 0xd2, 0x87, 0x72, 0x08, 0xf5, 0xa4, 0x16, 0x2f, 0x6c, 0x98, 0x43, 0x73, 0x13, 0x9d, 0x80, 0x0a, 0x4c, 0xdc, 0x1f, 0xfe, 0xa1, 0x5b, 0xce, 0x48, 0x71, 0xa0, 0xed, 0x99, 0xfd, 0x36, 0x70, 0x12, 0xcb, 0x9e, 0x02, 0xcd, 0xe2, 0x74, 0x94, 0x55, 0xe0, 0xd4, 0x95, 0xc5, 0x28, 0x18, 0xf3, 0xc1, 0x4f, 0x6e, 0x6a, 0xad, 0x10, 0x5b, 0x09, 0x25, 0xe2, 0xa7, 0x29, 0x0a, 0xc4, 0xa0, 0x6d, 0x9f, 0xad, 0xf4, 0xb1, 0x5b, 0x57, 0x85, 0x56, 0xfe, 0x33, 0x2a, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9178 = { .name = "ecdsa_secp384r1_sha384_9178", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9178_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9178_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9178_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 222 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9179 for ECDSA, tcId is 223 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9179_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9179_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9179_sig[] = { 0xa0, 0x49, 0xdc, 0xd9, 0x6c, 0x72, 0xe4, 0xf3, 0x61, 0x44, 0xa5, 0x1b, 0xba, 0x30, 0x41, 0x7b, 0x45, 0x1a, 0x30, 0x5d, 0xd0, 0x1c, 0x9e, 0x30, 0xa5, 0xe0, 0x4d, 0xf9, 0x43, 0x42, 0x61, 0x7d, 0xc3, 0x83, 0xf1, 0x77, 0x27, 0x70, 0x8e, 0x32, 0x77, 0xcd, 0x72, 0x46, 0xca, 0x44, 0x07, 0x41, 0x39, 0x70, 0xe2, 0x64, 0xd8, 0x5b, 0x22, 0x8b, 0xf9, 0xe9, 0xb9, 0xc4, 0x94, 0x7c, 0x5d, 0xd0, 0x41, 0xea, 0x8b, 0x5b, 0xde, 0x30, 0xb9, 0x3a, 0xa5, 0x9f, 0xed, 0xf2, 0xc4, 0x28, 0xd3, 0xe2, 0x54, 0x0a, 0x54, 0xe0, 0x53, 0x06, 0x88, 0xac, 0xcc, 0xb8, 0x3a, 0xc7, 0xb2, 0x9b, 0x79, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9179 = { .name = "ecdsa_secp384r1_sha384_9179", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9179_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9179_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9179_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 223 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9180 for ECDSA, tcId is 224 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9180_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9180_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9180_sig[] = { 0x44, 0x18, 0x00, 0xea, 0x93, 0x77, 0xc2, 0x78, 0x65, 0xbe, 0x00, 0x0a, 0xd0, 0x08, 0xeb, 0x3d, 0x75, 0x02, 0xbd, 0xd1, 0x05, 0x82, 0x4b, 0x26, 0xd1, 0x5c, 0xf3, 0xd0, 0x64, 0x52, 0x96, 0x9a, 0x9d, 0x06, 0x07, 0xa9, 0x15, 0xa8, 0xfe, 0x98, 0x92, 0x15, 0xfc, 0x4d, 0x61, 0xaf, 0x6e, 0x05, 0xdc, 0xe2, 0x9f, 0xaa, 0x51, 0x37, 0xf7, 0x5a, 0xd7, 0x7e, 0x03, 0x91, 0x8c, 0x8e, 0xe6, 0x74, 0x7c, 0xc7, 0xa3, 0x9b, 0x0a, 0x69, 0xf8, 0xb9, 0x15, 0x65, 0x4c, 0xac, 0x4c, 0xf4, 0xbf, 0xd9, 0xc8, 0x7c, 0xc4, 0x6a, 0xe1, 0x63, 0x1b, 0x5c, 0x6b, 0xae, 0xbd, 0x4f, 0xc0, 0x8f, 0xf8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9180 = { .name = "ecdsa_secp384r1_sha384_9180", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9180_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9180_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9180_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 224 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9181 for ECDSA, tcId is 225 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9181_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9181_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9181_sig[] = { 0x32, 0x44, 0x76, 0x80, 0x16, 0x45, 0x7c, 0x46, 0x3b, 0x74, 0xf2, 0x09, 0x7f, 0x21, 0x6d, 0x96, 0x70, 0xb1, 0x91, 0xf7, 0x62, 0x81, 0xc7, 0x4b, 0xc6, 0xa1, 0xa1, 0x97, 0x1d, 0x19, 0xf2, 0x09, 0xbf, 0x46, 0x96, 0x46, 0x8f, 0x5e, 0xb7, 0x5d, 0x63, 0x26, 0xa0, 0xa4, 0x3c, 0x0a, 0x65, 0x29, 0x50, 0x1e, 0x0a, 0xd9, 0x85, 0xed, 0x9f, 0x95, 0x69, 0x7b, 0xd1, 0x7f, 0xdb, 0xe3, 0xf9, 0xca, 0x92, 0xe0, 0xf7, 0x64, 0x26, 0xd3, 0x66, 0x4e, 0x68, 0x96, 0x64, 0x8d, 0x9c, 0x75, 0x0b, 0xf5, 0x88, 0xd0, 0xce, 0x7d, 0x01, 0x1c, 0x1a, 0x1e, 0x8d, 0x6c, 0x2e, 0x08, 0x24, 0x22, 0xdc, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9181 = { .name = "ecdsa_secp384r1_sha384_9181", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9181_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9181_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9181_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 225 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9182 for ECDSA, tcId is 226 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9182_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9182_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9182_sig[] = { 0x5e, 0x1a, 0xf4, 0x0f, 0x24, 0x80, 0xe3, 0xd9, 0x7c, 0x4a, 0xe4, 0xbf, 0xd3, 0x4a, 0x9f, 0x45, 0x26, 0x92, 0x41, 0x35, 0x6f, 0x3a, 0x46, 0xbe, 0xcd, 0x86, 0xa4, 0xa7, 0xc9, 0x71, 0x6d, 0x73, 0xca, 0x5a, 0xeb, 0xdb, 0x3d, 0xb1, 0xa7, 0x76, 0x56, 0x50, 0x66, 0x66, 0x83, 0xbc, 0x85, 0x6b, 0x7e, 0x7c, 0x4b, 0x47, 0x3a, 0x2b, 0xaa, 0xa4, 0x95, 0x37, 0x85, 0xbe, 0x8a, 0xa2, 0xa1, 0x00, 0x06, 0xf6, 0xd3, 0x6b, 0x40, 0x0a, 0xb9, 0x81, 0x86, 0x4d, 0x69, 0xce, 0xce, 0xc0, 0x46, 0x71, 0x8d, 0x04, 0x04, 0xb9, 0x64, 0x74, 0x54, 0xb1, 0x59, 0xaa, 0x5a, 0x92, 0xd7, 0x6d, 0x79, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9182 = { .name = "ecdsa_secp384r1_sha384_9182", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9182_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9182_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9182_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 226 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9183 for ECDSA, tcId is 227 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9183_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9183_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9183_sig[] = { 0x66, 0x88, 0xe3, 0x6a, 0x26, 0xf1, 0x5b, 0xdc, 0x1c, 0x3f, 0x91, 0x36, 0x7f, 0x8a, 0x76, 0x67, 0xf7, 0xbb, 0x3e, 0x30, 0xa3, 0x35, 0xd6, 0xf0, 0x90, 0x0e, 0x95, 0x34, 0xeb, 0x88, 0xb2, 0x60, 0xcb, 0x29, 0x34, 0x4c, 0x72, 0x3f, 0xed, 0xfb, 0xe7, 0xac, 0x9c, 0x5a, 0x33, 0xf4, 0xbf, 0x0d, 0xaa, 0x35, 0xfd, 0xdf, 0x0f, 0xdc, 0x90, 0x17, 0x86, 0x0b, 0x37, 0x8f, 0x80, 0x1c, 0xd8, 0x06, 0xf3, 0xe2, 0xd7, 0x54, 0xcd, 0x2f, 0xd9, 0x4e, 0xb7, 0xbb, 0x36, 0xa4, 0x6c, 0xe8, 0x28, 0xce, 0xf8, 0x7e, 0x9e, 0xbb, 0xf4, 0x47, 0x06, 0x8e, 0x63, 0x0b, 0x87, 0xfe, 0xe3, 0x85, 0xad, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9183 = { .name = "ecdsa_secp384r1_sha384_9183", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9183_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9183_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9183_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 227 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9184 for ECDSA, tcId is 228 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9184_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9184_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9184_sig[] = { 0xd4, 0xa8, 0xf3, 0xb0, 0xb4, 0xd3, 0xa5, 0x76, 0x9e, 0x3a, 0x0b, 0xbc, 0x64, 0x4b, 0x35, 0xf1, 0xd5, 0x09, 0x35, 0x5e, 0xd1, 0xfe, 0x40, 0x1e, 0x17, 0x0f, 0x66, 0x7b, 0x66, 0x1f, 0x69, 0x3b, 0x32, 0x59, 0x8e, 0x8c, 0x14, 0x3a, 0x81, 0x7a, 0x95, 0x89, 0x82, 0x84, 0x50, 0x42, 0xbb, 0x48, 0x04, 0xcc, 0x07, 0x57, 0x8b, 0xbd, 0x19, 0x81, 0xdb, 0xf6, 0xe8, 0xa9, 0x7a, 0x35, 0x4c, 0x98, 0xd4, 0x1b, 0x8b, 0x6f, 0x6e, 0x8a, 0x2c, 0x2b, 0x17, 0x63, 0xc7, 0xc2, 0xa2, 0x9d, 0x79, 0xe2, 0x4f, 0x84, 0x76, 0x07, 0x5c, 0x9a, 0xed, 0x9a, 0xec, 0x6c, 0x64, 0xdf, 0xf5, 0x04, 0x61, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9184 = { .name = "ecdsa_secp384r1_sha384_9184", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9184_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9184_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9184_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 228 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9185 for ECDSA, tcId is 229 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9185_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9185_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9185_sig[] = { 0xc2, 0x86, 0xd1, 0x92, 0x8e, 0x9c, 0x79, 0xfd, 0xd3, 0xbe, 0xbd, 0xf2, 0x2a, 0x1d, 0xbd, 0x37, 0xc8, 0x10, 0x5e, 0x8e, 0xcf, 0x41, 0xe9, 0xe3, 0x77, 0x7f, 0xe3, 0x41, 0xb6, 0xb8, 0xd5, 0xa8, 0x9b, 0x9d, 0x98, 0x68, 0x27, 0xd6, 0xd1, 0xdb, 0xb3, 0x81, 0xcd, 0x82, 0x39, 0x48, 0x4a, 0x22, 0x20, 0x11, 0x19, 0xae, 0x30, 0x5b, 0x93, 0x60, 0xaa, 0x9b, 0x5e, 0x5d, 0x15, 0x67, 0xe0, 0x67, 0x4c, 0x09, 0xe4, 0xf0, 0x25, 0x55, 0x6e, 0xbf, 0x81, 0xb9, 0x87, 0x46, 0x6b, 0x0f, 0x42, 0x1b, 0x8d, 0x31, 0xf7, 0x2b, 0xbe, 0x95, 0xf3, 0xce, 0x2a, 0xa9, 0x87, 0x4a, 0x84, 0xed, 0xfd, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9185 = { .name = "ecdsa_secp384r1_sha384_9185", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9185_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9185_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9185_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 229 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9186 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9186_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9186_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9186_sig[] = { 0xd9, 0xc6, 0x78, 0x55, 0x01, 0x67, 0xf1, 0x0c, 0x51, 0x1e, 0x62, 0xac, 0xb4, 0xbd, 0x0a, 0x3f, 0x7f, 0x33, 0x6b, 0xc0, 0x90, 0xc9, 0x4e, 0x6c, 0x6b, 0x02, 0x62, 0x24, 0x39, 0xc3, 0x48, 0xa2, 0x15, 0x9c, 0x5f, 0x41, 0xf9, 0xb5, 0xaa, 0x4b, 0x47, 0x05, 0x90, 0xd4, 0x0d, 0xcd, 0x7c, 0xc2, 0x1f, 0xd5, 0xea, 0xee, 0x29, 0x5a, 0xbb, 0x40, 0x81, 0xcb, 0x62, 0x67, 0x45, 0xf4, 0xad, 0x27, 0x9c, 0xeb, 0x44, 0x60, 0x40, 0x62, 0x83, 0x0b, 0x58, 0xe6, 0xc0, 0x46, 0x5c, 0x56, 0x2d, 0x41, 0xf0, 0x2b, 0xa5, 0x88, 0xfc, 0x0d, 0xb1, 0xeb, 0xbe, 0x33, 0x9c, 0xdc, 0x00, 0x8d, 0x7a, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9186 = { .name = "ecdsa_secp384r1_sha384_9186", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9186_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9186_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9186_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 230 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9187 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9187_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9187_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9187_sig[] = { 0x20, 0xfe, 0xe7, 0xc7, 0x1b, 0x6c, 0xb0, 0xd1, 0xda, 0x36, 0x41, 0xec, 0x66, 0x22, 0xc0, 0x55, 0xa3, 0xb1, 0x6a, 0x1f, 0x59, 0x6c, 0x64, 0xb3, 0x4d, 0xa1, 0xb2, 0xd0, 0xb8, 0x68, 0xb6, 0x6a, 0x8f, 0x0a, 0x0d, 0x0d, 0xb9, 0x83, 0xb3, 0xdc, 0x7e, 0x53, 0xbb, 0x72, 0x95, 0xda, 0x81, 0x97, 0x81, 0x41, 0xa9, 0x31, 0xd3, 0x57, 0x9a, 0xec, 0x1c, 0xac, 0x98, 0x87, 0xd2, 0xff, 0xf9, 0xc6, 0xf1, 0x2d, 0x47, 0xa2, 0x7e, 0x4a, 0xab, 0x8c, 0xf2, 0x62, 0xa9, 0xd1, 0x4a, 0x71, 0x5b, 0xca, 0x0b, 0x20, 0x57, 0xcb, 0xc3, 0xf1, 0x8b, 0x6f, 0xd3, 0xd1, 0xdf, 0x76, 0xf7, 0x41, 0x0f, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9187 = { .name = "ecdsa_secp384r1_sha384_9187", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9187_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9187_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9187_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 231 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9188 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9188_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9188_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9188_sig[] = { 0x91, 0x3e, 0xec, 0xc5, 0x59, 0xb3, 0xcf, 0x71, 0x08, 0xa6, 0x5d, 0x6c, 0xc3, 0x07, 0x6b, 0xfd, 0xf3, 0x6c, 0x6f, 0x94, 0xdc, 0xc6, 0x69, 0x3d, 0x06, 0x69, 0x04, 0x70, 0xf3, 0x4a, 0x2e, 0x81, 0x56, 0x42, 0x41, 0xe1, 0xde, 0x5f, 0x5f, 0x51, 0x42, 0x1d, 0xe3, 0x0a, 0xf4, 0x67, 0xf1, 0x0f, 0x64, 0x9b, 0xd3, 0x71, 0x72, 0x44, 0xe8, 0xef, 0x3c, 0x6b, 0x0e, 0xda, 0x98, 0x3f, 0x84, 0xdc, 0xa5, 0xea, 0x86, 0xd1, 0xbe, 0xc1, 0x53, 0x86, 0xb9, 0xc4, 0x73, 0xec, 0x43, 0xa8, 0xcd, 0x0b, 0xa5, 0x58, 0xee, 0xe8, 0x19, 0xf7, 0x91, 0xd9, 0xff, 0x92, 0x72, 0xb9, 0xaf, 0xd5, 0x95, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9188 = { .name = "ecdsa_secp384r1_sha384_9188", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9188_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9188_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9188_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 232 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9189 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9189_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9189_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9189_sig[] = { 0x23, 0x85, 0x5c, 0x46, 0x40, 0x3a, 0x97, 0xb7, 0x6c, 0xbb, 0x31, 0x6e, 0xc3, 0xfe, 0x7e, 0x2c, 0x42, 0x2b, 0x81, 0x83, 0x87, 0x60, 0x4b, 0xda, 0x8c, 0x3d, 0x91, 0x12, 0x1b, 0x4f, 0x20, 0x17, 0x9d, 0x91, 0x07, 0xc5, 0xf9, 0x2d, 0xed, 0xc8, 0xb6, 0x20, 0xd7, 0xdb, 0x87, 0xfc, 0xcc, 0xcd, 0x50, 0xf5, 0x73, 0x43, 0xab, 0x14, 0x8e, 0x50, 0x66, 0x23, 0x20, 0xc4, 0x16, 0x1e, 0x44, 0x54, 0x3c, 0x35, 0xbc, 0x99, 0x20, 0x11, 0xea, 0x5b, 0x16, 0x80, 0xb9, 0x43, 0x82, 0xcf, 0x22, 0x4e, 0xa0, 0xec, 0x5d, 0xa5, 0x11, 0xe1, 0x02, 0xf5, 0x66, 0xcb, 0x67, 0x20, 0x1f, 0x30, 0xa2, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9189 = { .name = "ecdsa_secp384r1_sha384_9189", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9189_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9189_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9189_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 233 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9190 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9190_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9190_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9190_sig[] = { 0xd2, 0x00, 0x95, 0x8d, 0x49, 0x1f, 0xce, 0xbd, 0xe6, 0x67, 0xcd, 0x73, 0x6c, 0x9d, 0xba, 0x09, 0x61, 0xc7, 0x0d, 0xb2, 0xec, 0xaf, 0x57, 0x3c, 0x31, 0xdd, 0x7f, 0xa4, 0x1e, 0xcc, 0xa3, 0x2b, 0x40, 0xb5, 0x89, 0x6f, 0x9a, 0x0d, 0xdf, 0x27, 0x21, 0x10, 0xe3, 0xd2, 0x1e, 0x84, 0x59, 0x3a, 0xc2, 0xec, 0xf7, 0x39, 0x43, 0xb9, 0xad, 0xce, 0x59, 0x6b, 0xac, 0x14, 0xfc, 0xe6, 0x24, 0x95, 0xae, 0x93, 0x82, 0x5c, 0x5f, 0xf6, 0xf6, 0x1c, 0x24, 0x7d, 0x1d, 0x8a, 0xfc, 0xba, 0x52, 0x08, 0x2f, 0xc9, 0x6f, 0x63, 0xa2, 0x6e, 0x55, 0xbc, 0xcf, 0xc3, 0x77, 0x9f, 0x88, 0xcf, 0xd7, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9190 = { .name = "ecdsa_secp384r1_sha384_9190", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9190_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9190_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9190_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 234 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9191 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9191_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9191_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9191_sig[] = { 0x6a, 0xc1, 0x7d, 0x71, 0x26, 0x0c, 0x79, 0xf8, 0x1a, 0x75, 0x66, 0x12, 0x47, 0x38, 0xcb, 0x3e, 0xe5, 0xd0, 0xaa, 0x69, 0x0e, 0x73, 0xa9, 0x8a, 0xe9, 0xe7, 0x66, 0xf1, 0x33, 0x66, 0x91, 0xe5, 0x00, 0xca, 0xd5, 0x1b, 0xa1, 0x30, 0x23, 0x66, 0xc0, 0x9c, 0xc0, 0x6b, 0x8f, 0x70, 0x49, 0xe0, 0x32, 0xca, 0x96, 0x5d, 0x6d, 0x70, 0x12, 0xec, 0x18, 0x7c, 0x7c, 0xab, 0x95, 0x44, 0x33, 0x4d, 0x66, 0xc2, 0xa7, 0x65, 0x8d, 0xde, 0xfa, 0x67, 0xe4, 0xad, 0x40, 0x42, 0x98, 0x15, 0x51, 0x8e, 0xcc, 0x87, 0xb1, 0x49, 0x2d, 0xdd, 0x57, 0x33, 0x3b, 0xd2, 0x30, 0x0b, 0x46, 0x60, 0xa8, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9191 = { .name = "ecdsa_secp384r1_sha384_9191", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9191_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9191_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9191_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 235 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9192 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9192_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9192_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9192_sig[] = { 0xe1, 0x9a, 0x46, 0x46, 0xf0, 0xed, 0x8a, 0x27, 0x1f, 0xe8, 0x6b, 0xa5, 0x33, 0xf8, 0xbe, 0x4f, 0xd8, 0x1b, 0xbf, 0x46, 0x74, 0x71, 0x6f, 0x66, 0x8e, 0xfa, 0x89, 0xa4, 0x0c, 0xac, 0x51, 0xee, 0xc2, 0xa6, 0xcf, 0xbd, 0x92, 0x32, 0x7d, 0x25, 0xef, 0xe9, 0x1c, 0xa4, 0xff, 0x71, 0x2b, 0xc5, 0x4a, 0x86, 0xb2, 0xe8, 0xe1, 0x23, 0x78, 0xe6, 0x33, 0xde, 0xc2, 0x69, 0x1e, 0x3b, 0x1e, 0xed, 0x4e, 0x93, 0x2c, 0xc4, 0x8b, 0x28, 0xe4, 0x5f, 0xa3, 0xd4, 0x64, 0xcc, 0x0e, 0x94, 0x8c, 0x02, 0xcc, 0x9d, 0xec, 0xf2, 0xbb, 0x43, 0xb2, 0x59, 0x37, 0xfc, 0xf3, 0x7e, 0x9a, 0xd8, 0x6e, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9192 = { .name = "ecdsa_secp384r1_sha384_9192", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9192_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9192_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9192_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 236 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9193 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9193_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9193_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9193_sig[] = { 0x15, 0xaa, 0xc6, 0xc0, 0xf4, 0x35, 0xcb, 0x66, 0x2d, 0x11, 0x0d, 0xb5, 0xcf, 0x68, 0x6c, 0xae, 0xe5, 0x3c, 0x64, 0xfe, 0x2d, 0x6d, 0x60, 0x0a, 0x83, 0xeb, 0xe5, 0x05, 0xa0, 0xe6, 0xfc, 0x62, 0xdc, 0x57, 0x05, 0x16, 0x04, 0x77, 0xc4, 0x75, 0x28, 0xc8, 0xc9, 0x03, 0xfa, 0x86, 0x5b, 0x5d, 0x7f, 0x94, 0xdd, 0xc0, 0x1a, 0x60, 0x3f, 0x9b, 0xec, 0x5d, 0x10, 0xc9, 0xf2, 0xc8, 0x9f, 0xb2, 0x3b, 0x3f, 0xfa, 0xb6, 0xb2, 0xb6, 0x8d, 0x0f, 0x04, 0x33, 0x6d, 0x49, 0x90, 0x85, 0xe3, 0x2d, 0x22, 0xbf, 0x3a, 0xb6, 0x7a, 0x49, 0xa7, 0x4c, 0x74, 0x3f, 0x72, 0x47, 0x31, 0x72, 0xb5, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9193 = { .name = "ecdsa_secp384r1_sha384_9193", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9193_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9193_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9193_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 237 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9194 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9194_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9194_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9194_sig[] = { 0x90, 0xb9, 0x5a, 0x7d, 0x19, 0x4b, 0x73, 0x49, 0x8f, 0xba, 0x5a, 0xfc, 0x95, 0xc1, 0xae, 0xa9, 0xbe, 0x07, 0x31, 0x62, 0xa9, 0xed, 0xc5, 0x7c, 0x4d, 0x12, 0xf4, 0x59, 0xf0, 0xa1, 0x73, 0x0b, 0xaf, 0x2f, 0x87, 0xd7, 0xd6, 0x62, 0x4a, 0xea, 0x7b, 0x93, 0x1e, 0xc5, 0x33, 0x70, 0xfe, 0x47, 0xcb, 0xc1, 0xef, 0x47, 0x0e, 0x66, 0x60, 0x10, 0x60, 0x4c, 0x60, 0x93, 0x84, 0xb8, 0x72, 0xdb, 0x7f, 0xa7, 0xb8, 0xa5, 0xa9, 0xf2, 0x0f, 0xde, 0xfd, 0x65, 0x6b, 0xe2, 0xfc, 0xc7, 0x5d, 0xb5, 0x39, 0x48, 0x10, 0x2f, 0x7a, 0xb2, 0x03, 0xea, 0x18, 0x60, 0xa6, 0xa3, 0x2a, 0xf2, 0x46, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9194 = { .name = "ecdsa_secp384r1_sha384_9194", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9194_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9194_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9194_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 238 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9195 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha384_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9195_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9195_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9195_sig[] = { 0xdd, 0x43, 0x91, 0xce, 0x75, 0x57, 0xcb, 0xd0, 0x05, 0xe3, 0xd5, 0xd7, 0x27, 0xcd, 0x26, 0x43, 0x99, 0xdc, 0xc3, 0xc6, 0x50, 0x1e, 0x45, 0x47, 0x50, 0x5b, 0x6d, 0x57, 0xb4, 0x0b, 0xbf, 0x0a, 0x7f, 0xac, 0x79, 0x4d, 0xcc, 0x8d, 0x42, 0x33, 0x15, 0x9d, 0xd0, 0xaa, 0x40, 0xd4, 0xe0, 0xb9, 0xa7, 0x7f, 0xa1, 0x37, 0x4f, 0xd6, 0x0a, 0xa9, 0x16, 0x00, 0x91, 0x22, 0x00, 0xfc, 0x83, 0xc6, 0xaa, 0x44, 0x7f, 0x81, 0x71, 0xec, 0xea, 0x72, 0xae, 0x32, 0x2d, 0xf3, 0x2d, 0xcc, 0xd6, 0x89, 0x51, 0xdc, 0x5c, 0xaf, 0x6c, 0x50, 0x38, 0x0e, 0x40, 0x0e, 0x45, 0xbf, 0x5c, 0x0e, 0x62, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9195 = { .name = "ecdsa_secp384r1_sha384_9195", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9195_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9195_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9195_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 239 in file ecdsa_secp384r1_sha384_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9196 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9196_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9196_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x39, 0x95, 0xca, 0x30, 0x24, 0x0e, 0x09, 0x51, 0x38, 0x05, 0xbf, 0x62, 0x09, 0xb5, 0x8a, 0xc7, 0xaa, 0x9c, 0xff, 0x54, 0xee, 0xcd, 0x82, 0xb9, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9196 = { .name = "ecdsa_secp384r1_sha384_9196", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9196_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9196_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9196_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9197 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9197_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9197_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9197 = { .name = "ecdsa_secp384r1_sha384_9197", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9197_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9197_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9197_sig, .siglen = 96, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9198 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9198_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9198_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9198 = { .name = "ecdsa_secp384r1_sha384_9198", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9198_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9198_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9198_sig, .siglen = 96, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9199 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9199_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9199_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9199 = { .name = "ecdsa_secp384r1_sha384_9199", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9199_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9199_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9199_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9200 for ECDSA, tcId is 5 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9200_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9200_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9200 = { .name = "ecdsa_secp384r1_sha384_9200", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9200_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9200_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9200_sig, .siglen = 96, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9201 for ECDSA, tcId is 68 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9201_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9201_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9201 = { .name = "ecdsa_secp384r1_sha384_9201", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9201_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9201_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9201_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9202 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9202_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9202_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9202 = { .name = "ecdsa_secp384r1_sha384_9202", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9202_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9202_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9202_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9203 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9203_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9203_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9203 = { .name = "ecdsa_secp384r1_sha384_9203", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9203_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9203_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9203_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9204 for ECDSA, tcId is 71 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9204_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9204_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9204 = { .name = "ecdsa_secp384r1_sha384_9204", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9204_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9204_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9204_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9205 for ECDSA, tcId is 93 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9205_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9205_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9205 = { .name = "ecdsa_secp384r1_sha384_9205", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9205_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9205_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9205_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9206 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9206_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9206_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9206 = { .name = "ecdsa_secp384r1_sha384_9206", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9206_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9206_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9206_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9207 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9207_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9207_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9207 = { .name = "ecdsa_secp384r1_sha384_9207", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9207_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9207_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9207_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9208 for ECDSA, tcId is 96 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9208_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9208_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9208 = { .name = "ecdsa_secp384r1_sha384_9208", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9208_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9208_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9208_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9209 for ECDSA, tcId is 98 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9209_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9209_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x05, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9209 = { .name = "ecdsa_secp384r1_sha384_9209", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9209_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9209_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9209_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9210 for ECDSA, tcId is 99 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9210_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9210_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9210 = { .name = "ecdsa_secp384r1_sha384_9210", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9210_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9210_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9210_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9211 for ECDSA, tcId is 114 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9211_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9211_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9211 = { .name = "ecdsa_secp384r1_sha384_9211", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9211_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9211_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9211_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9212 for ECDSA, tcId is 115 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9212_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9212_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9212 = { .name = "ecdsa_secp384r1_sha384_9212", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9212_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9212_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9212_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9213 for ECDSA, tcId is 118 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9213_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9213_sig[] = { 0x10, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9213 = { .name = "ecdsa_secp384r1_sha384_9213", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9213_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9213_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9213_sig, .siglen = 96, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9214 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9214_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9214_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x02, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9214 = { .name = "ecdsa_secp384r1_sha384_9214", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9214_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9214_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9214_sig, .siglen = 97, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9215 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9215_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9215_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0x57, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9215 = { .name = "ecdsa_secp384r1_sha384_9215", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9215_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9215_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9215_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9216 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9216_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9216_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9216 = { .name = "ecdsa_secp384r1_sha384_9216", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9216_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9216_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9216_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9217 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9217_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9217_sig[] = { 0x00, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9217 = { .name = "ecdsa_secp384r1_sha384_9217", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9217_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9217_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9217_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9218 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9218_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9218_sig[] = { 0x00, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9218 = { .name = "ecdsa_secp384r1_sha384_9218", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9218_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9218_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9218_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9219 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9219_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9219_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9219 = { .name = "ecdsa_secp384r1_sha384_9219", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9219_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9219_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9219_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9220 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9220_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9220_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9220 = { .name = "ecdsa_secp384r1_sha384_9220", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9220_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9220_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9220_sig, .siglen = 96, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9221 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9221_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9221_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9221 = { .name = "ecdsa_secp384r1_sha384_9221", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9221_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9221_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9221_sig, .siglen = 97, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp384r1_sha384_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9222 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9222_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9222_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9222 = { .name = "ecdsa_secp384r1_sha384_9222", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9222_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9222_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9222_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9223 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9223_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9223_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9223 = { .name = "ecdsa_secp384r1_sha384_9223", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9223_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9223_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9223_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9224 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9224_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9224_sig[] = { 0x01, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xa2, 0x56, 0x17, 0xaa, 0xd7, 0x48, 0x5e, 0x63, 0x12, 0xa8, 0x58, 0x97, 0x14, 0xf6, 0x47, 0xac, 0xf7, 0xa9, 0x4c, 0xff, 0xbe, 0x8a, 0x72, 0x4a, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9224 = { .name = "ecdsa_secp384r1_sha384_9224", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9224_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9224_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9224_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9225 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9225_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9225_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x1a, 0x13, 0x8f, 0x7c, 0xa6, 0xee, 0xda, 0x02, 0xa4, 0x62, 0x74, 0x3d, 0x32, 0x83, 0x94, 0xf8, 0xb7, 0x1d, 0xd1, 0x1a, 0x2a, 0x25, 0x00, 0x1f, 0x64, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9225 = { .name = "ecdsa_secp384r1_sha384_9225", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9225_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9225_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9225_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9226 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9226_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9226_sig[] = { 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe6, 0x25, 0x0d, 0x35, 0xd7, 0x1c, 0xee, 0xcf, 0x7c, 0x45, 0x71, 0xb5, 0x1b, 0x33, 0xba, 0x5f, 0xcd, 0xf5, 0x42, 0xcc, 0x6b, 0x0e, 0x3a, 0xb7, 0x29, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9226 = { .name = "ecdsa_secp384r1_sha384_9226", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9226_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9226_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9226_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9227 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9227_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9227_sig[] = { 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe5, 0xec, 0x70, 0x83, 0x59, 0x11, 0x25, 0xfd, 0x5b, 0x9d, 0x8b, 0xc2, 0xcd, 0x7c, 0x6b, 0x07, 0x48, 0xe2, 0x2e, 0xe5, 0xd5, 0xda, 0xff, 0xe0, 0x9c, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9227 = { .name = "ecdsa_secp384r1_sha384_9227", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9227_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9227_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9227_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9228 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9228_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9228_sig[] = { 0xfe, 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe6, 0x5d, 0xa9, 0xe8, 0x55, 0x28, 0xb7, 0xa1, 0x9c, 0xed, 0x57, 0xa7, 0x68, 0xeb, 0x09, 0xb8, 0x53, 0x08, 0x56, 0xb3, 0x00, 0x41, 0x75, 0x8d, 0xb6, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9228 = { .name = "ecdsa_secp384r1_sha384_9228", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9228_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9228_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9228_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9229 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9229_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9229_sig[] = { 0x01, 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9229 = { .name = "ecdsa_secp384r1_sha384_9229", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9229_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9229_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9229_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9230 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9230_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9230_sig[] = { 0xed, 0x4c, 0xf5, 0x41, 0x09, 0x4a, 0xb8, 0x90, 0x19, 0x49, 0xed, 0x51, 0xaa, 0x83, 0xfb, 0xda, 0x99, 0xe1, 0xd9, 0x4b, 0xb4, 0xe4, 0x01, 0xe6, 0x25, 0x0d, 0x35, 0xd7, 0x1c, 0xee, 0xcf, 0x7c, 0x45, 0x71, 0xb5, 0x1b, 0x33, 0xba, 0x5f, 0xcd, 0xf5, 0x42, 0xcc, 0x6b, 0x0e, 0x3a, 0xb7, 0x29, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9230 = { .name = "ecdsa_secp384r1_sha384_9230", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9230_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9230_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9230_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9231 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9231_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9231_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x01, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc5, 0xf8, 0xfc, 0x6a, 0xdf, 0xda, 0x65, 0x0a, 0x86, 0xaa, 0x74, 0xb9, 0x5a, 0xdb, 0xd6, 0x87, 0x4b, 0x3c, 0xd8, 0xdd, 0xe6, 0xcc, 0x07, 0x98, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9231 = { .name = "ecdsa_secp384r1_sha384_9231", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9231_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9231_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9231_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9232 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9232_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9232_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x6a, 0x35, 0xcf, 0xdb, 0xf1, 0xf6, 0xae, 0xc7, 0xfa, 0x40, 0x9d, 0xf6, 0x4a, 0x75, 0x38, 0x55, 0x63, 0x00, 0xab, 0x11, 0x32, 0x7d, 0x46, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9232 = { .name = "ecdsa_secp384r1_sha384_9232", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9232_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9232_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9232_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9233 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9233_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9233_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x39, 0xce, 0x66, 0xe2, 0xa2, 0x19, 0xd2, 0x23, 0x58, 0xad, 0xa5, 0x54, 0x57, 0x6c, 0xda, 0x20, 0x2f, 0xb0, 0x13, 0x3b, 0x84, 0x00, 0xbd, 0x90, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9233 = { .name = "ecdsa_secp384r1_sha384_9233", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9233_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9233_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9233_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9234 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9234_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9234_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0xfe, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x3a, 0x07, 0x03, 0x95, 0x20, 0x25, 0x9a, 0xf5, 0x79, 0x55, 0x8b, 0x46, 0xa5, 0x24, 0x29, 0x78, 0xb4, 0xc3, 0x27, 0x22, 0x19, 0x33, 0xf8, 0x67, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9234 = { .name = "ecdsa_secp384r1_sha384_9234", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9234_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9234_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9234_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9235 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9235_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9235_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x01, 0xe7, 0xbf, 0x25, 0x60, 0x3e, 0x2d, 0x07, 0x07, 0x6f, 0xf3, 0x0b, 0x7a, 0x2a, 0xbe, 0xc4, 0x73, 0xda, 0x8b, 0x11, 0xc5, 0x72, 0xb3, 0x5f, 0xc6, 0x31, 0x99, 0x1d, 0x5d, 0xe6, 0x2d, 0xdc, 0xa7, 0x52, 0x5a, 0xab, 0xa8, 0x93, 0x25, 0xdf, 0xd0, 0x4f, 0xec, 0xc4, 0x7b, 0xff, 0x42, 0x6f, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9235 = { .name = "ecdsa_secp384r1_sha384_9235", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9235_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9235_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9235_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9236 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9236_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9236_sig[] = { 0x12, 0xb3, 0x0a, 0xbe, 0xf6, 0xb5, 0x47, 0x6f, 0xe6, 0xb6, 0x12, 0xae, 0x55, 0x7c, 0x04, 0x25, 0x66, 0x1e, 0x26, 0xb4, 0x4b, 0x1b, 0xfe, 0x19, 0xda, 0xf2, 0xca, 0x28, 0xe3, 0x11, 0x30, 0x83, 0xba, 0x8e, 0x4a, 0xe4, 0xcc, 0x45, 0xa0, 0x32, 0x0a, 0xbd, 0x33, 0x94, 0xf1, 0xc5, 0x48, 0xd7, 0x18, 0x40, 0xda, 0x9f, 0xc1, 0xd2, 0xf8, 0xf8, 0x90, 0x0c, 0xf4, 0x85, 0xd5, 0x41, 0x3b, 0x8c, 0x25, 0x74, 0xee, 0x3a, 0x8d, 0x4c, 0xa0, 0x39, 0xce, 0x66, 0xe2, 0xa2, 0x19, 0xd2, 0x23, 0x58, 0xad, 0xa5, 0x54, 0x57, 0x6c, 0xda, 0x20, 0x2f, 0xb0, 0x13, 0x3b, 0x84, 0x00, 0xbd, 0x90, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9236 = { .name = "ecdsa_secp384r1_sha384_9236", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9236_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9236_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9236_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9237 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9237_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9237_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9237 = { .name = "ecdsa_secp384r1_sha384_9237", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9237_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9237_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9237_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9238 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9238_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9238_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9238 = { .name = "ecdsa_secp384r1_sha384_9238", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9238_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9238_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9238_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9239 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9239_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9239_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9239 = { .name = "ecdsa_secp384r1_sha384_9239", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9239_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9239_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9239_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9240 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9240_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9240_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9240 = { .name = "ecdsa_secp384r1_sha384_9240", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9240_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9240_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9240_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9241 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9241_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9241_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9241 = { .name = "ecdsa_secp384r1_sha384_9241", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9241_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9241_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9241_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9242 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9242_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9242_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9242 = { .name = "ecdsa_secp384r1_sha384_9242", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9242_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9242_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9242_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9243 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9243_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9243_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9243 = { .name = "ecdsa_secp384r1_sha384_9243", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9243_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9243_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9243_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9244 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9244_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9244_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9244 = { .name = "ecdsa_secp384r1_sha384_9244", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9244_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9244_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9244_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9245 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9245_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9245_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9245 = { .name = "ecdsa_secp384r1_sha384_9245", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9245_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9245_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9245_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9246 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9246_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9246_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9246 = { .name = "ecdsa_secp384r1_sha384_9246", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9246_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9246_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9246_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9247 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9247_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9247_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9247 = { .name = "ecdsa_secp384r1_sha384_9247", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9247_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9247_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9247_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9248 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9248_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9248_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9248 = { .name = "ecdsa_secp384r1_sha384_9248", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9248_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9248_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9248_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9249 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9249_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9249_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9249 = { .name = "ecdsa_secp384r1_sha384_9249", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9249_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9249_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9249_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9250 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9250_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9250_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9250 = { .name = "ecdsa_secp384r1_sha384_9250", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9250_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9250_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9250_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9251 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9251_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9251_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9251 = { .name = "ecdsa_secp384r1_sha384_9251", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9251_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9251_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9251_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9252 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9252_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9252_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9252 = { .name = "ecdsa_secp384r1_sha384_9252", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9252_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9252_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9252_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9253 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9253_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9253_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9253 = { .name = "ecdsa_secp384r1_sha384_9253", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9253_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9253_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9253_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9254 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9254_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9254_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9254 = { .name = "ecdsa_secp384r1_sha384_9254", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9254_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9254_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9254_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9255 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9255_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9255_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9255 = { .name = "ecdsa_secp384r1_sha384_9255", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9255_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9255_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9255_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9256 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9256_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9256_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9256 = { .name = "ecdsa_secp384r1_sha384_9256", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9256_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9256_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9256_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9257 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9257_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9257_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9257 = { .name = "ecdsa_secp384r1_sha384_9257", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9257_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9257_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9257_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9258 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9258_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9258_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9258 = { .name = "ecdsa_secp384r1_sha384_9258", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9258_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9258_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9258_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9259 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9259_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9259_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9259 = { .name = "ecdsa_secp384r1_sha384_9259", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9259_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9259_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9259_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9260 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9260_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9260_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9260 = { .name = "ecdsa_secp384r1_sha384_9260", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9260_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9260_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9260_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9261 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9261_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9261_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9261 = { .name = "ecdsa_secp384r1_sha384_9261", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9261_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9261_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9261_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9262 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9262_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9262_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9262 = { .name = "ecdsa_secp384r1_sha384_9262", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9262_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9262_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9262_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9263 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9263_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9263_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9263 = { .name = "ecdsa_secp384r1_sha384_9263", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9263_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9263_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9263_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9264 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9264_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9264_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9264 = { .name = "ecdsa_secp384r1_sha384_9264", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9264_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9264_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9264_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9265 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9265_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9265_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9265 = { .name = "ecdsa_secp384r1_sha384_9265", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9265_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9265_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9265_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9266 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9266_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9266_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9266 = { .name = "ecdsa_secp384r1_sha384_9266", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9266_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9266_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9266_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9267 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9267_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9267_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9267 = { .name = "ecdsa_secp384r1_sha384_9267", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9267_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9267_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9267_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9268 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9268_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9268_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9268 = { .name = "ecdsa_secp384r1_sha384_9268", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9268_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9268_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9268_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9269 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9269_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9269_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9269_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9269 = { .name = "ecdsa_secp384r1_sha384_9269", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9269_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9269_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9269_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9270 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9270_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9270_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9270_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9270 = { .name = "ecdsa_secp384r1_sha384_9270", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9270_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9270_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9270_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9271 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9271_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9271_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9271_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9271 = { .name = "ecdsa_secp384r1_sha384_9271", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9271_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9271_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9271_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9272 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9272_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9272_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9272_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9272 = { .name = "ecdsa_secp384r1_sha384_9272", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9272_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9272_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9272_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9273 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9273_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9273_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9273_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9273 = { .name = "ecdsa_secp384r1_sha384_9273", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9273_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9273_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9273_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9274 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9274_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9274_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9274_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9274 = { .name = "ecdsa_secp384r1_sha384_9274", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9274_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9274_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9274_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9275 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9275_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9275_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9275_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9275 = { .name = "ecdsa_secp384r1_sha384_9275", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9275_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9275_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9275_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9276 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9276_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9276_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9276_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9276 = { .name = "ecdsa_secp384r1_sha384_9276", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9276_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9276_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9276_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9277 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9277_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9277_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9277_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9277 = { .name = "ecdsa_secp384r1_sha384_9277", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9277_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9277_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9277_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9278 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9278_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9278_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9278_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9278 = { .name = "ecdsa_secp384r1_sha384_9278", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9278_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9278_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9278_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9279 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9279_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9279_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9279_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9279 = { .name = "ecdsa_secp384r1_sha384_9279", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9279_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9279_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9279_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9280 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9280_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9280_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9280_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9280 = { .name = "ecdsa_secp384r1_sha384_9280", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9280_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9280_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9280_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9281 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9281_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9281_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9281_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9281 = { .name = "ecdsa_secp384r1_sha384_9281", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9281_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9281_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9281_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9282 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9282_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9282_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9282_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9282 = { .name = "ecdsa_secp384r1_sha384_9282", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9282_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9282_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9282_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9283 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9283_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9283_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9283_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9283 = { .name = "ecdsa_secp384r1_sha384_9283", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9283_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9283_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9283_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9284 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9284_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9284_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9284_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9284 = { .name = "ecdsa_secp384r1_sha384_9284", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9284_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9284_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9284_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9285 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9285_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9285_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9285_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9285 = { .name = "ecdsa_secp384r1_sha384_9285", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9285_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9285_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9285_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9286 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9286_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9286_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9286_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9286 = { .name = "ecdsa_secp384r1_sha384_9286", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9286_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9286_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9286_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9287 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9287_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9287_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9287_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9287 = { .name = "ecdsa_secp384r1_sha384_9287", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9287_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9287_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9287_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9288 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9288_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9288_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9288_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9288 = { .name = "ecdsa_secp384r1_sha384_9288", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9288_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9288_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9288_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9289 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9289_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9289_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9289_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9289 = { .name = "ecdsa_secp384r1_sha384_9289", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9289_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9289_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9289_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9290 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9290_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9290_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9290_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9290 = { .name = "ecdsa_secp384r1_sha384_9290", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9290_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9290_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9290_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9291 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9291_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9291_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9291_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9291 = { .name = "ecdsa_secp384r1_sha384_9291", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9291_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9291_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9291_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9292 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9292_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9292_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9292_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9292 = { .name = "ecdsa_secp384r1_sha384_9292", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9292_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9292_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9292_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9293 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9293_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9293_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9293_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9293 = { .name = "ecdsa_secp384r1_sha384_9293", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9293_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9293_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9293_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9294 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9294_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9294_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9294_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9294 = { .name = "ecdsa_secp384r1_sha384_9294", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9294_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9294_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9294_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9295 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9295_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9295_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9295_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9295 = { .name = "ecdsa_secp384r1_sha384_9295", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9295_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9295_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9295_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9296 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9296_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9296_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9296_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9296 = { .name = "ecdsa_secp384r1_sha384_9296", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9296_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9296_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9296_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9297 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9297_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9297_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9297_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9297 = { .name = "ecdsa_secp384r1_sha384_9297", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9297_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9297_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9297_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9298 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9298_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9298_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9298_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9298 = { .name = "ecdsa_secp384r1_sha384_9298", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9298_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9298_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9298_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9299 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9299_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9299_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9299_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9299 = { .name = "ecdsa_secp384r1_sha384_9299", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9299_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9299_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9299_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9300 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9300_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9300_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9300_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9300 = { .name = "ecdsa_secp384r1_sha384_9300", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9300_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9300_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9300_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9301 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9301_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9301_msg[] = { 0x31, 0x33, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9301_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0xbd, 0x77, 0x0d, 0x3e, 0xe4, 0xbe, 0xad, 0xba, 0xbe, 0x7c, 0xa4, 0x6e, 0x8c, 0x47, 0x02, 0x78, 0x34, 0x35, 0x22, 0x8d, 0x46, 0xe2, 0xdd, 0x36, 0x0e, 0x32, 0x2f, 0xe6, 0x1c, 0x86, 0x92, 0x6f, 0xa4, 0x9c, 0x81, 0x16, 0xec, 0x94, 0x0f, 0x72, 0xac, 0x8c, 0x30, 0xd9, 0xbe, 0xb3, 0xe1, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9301 = { .name = "ecdsa_secp384r1_sha384_9301", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9301_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9301_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha384_9301_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9302 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9302_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9302_msg[] = { 0x31, 0x37, 0x35, 0x30, 0x35, 0x35, 0x31, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9302_sig[] = { 0xd3, 0x29, 0x8a, 0x01, 0x93, 0xc4, 0x31, 0x6b, 0x34, 0xe3, 0x83, 0x3f, 0xf7, 0x64, 0xa8, 0x2c, 0xff, 0x4e, 0xf5, 0x7b, 0x5d, 0xd7, 0x9e, 0xd6, 0x23, 0x7b, 0x51, 0xff, 0x76, 0xce, 0xab, 0x13, 0xbf, 0x92, 0x13, 0x1f, 0x41, 0x03, 0x05, 0x15, 0xb7, 0xe0, 0x12, 0xd2, 0xba, 0x85, 0x78, 0x30, 0xbf, 0xc7, 0x51, 0x8d, 0x2a, 0xd2, 0x0e, 0xd5, 0xf5, 0x8f, 0x3b, 0xe7, 0x97, 0x20, 0xf1, 0x86, 0x6f, 0x7a, 0x23, 0xb3, 0xbd, 0x1b, 0xf9, 0x13, 0xd3, 0x91, 0x68, 0x19, 0xd0, 0x08, 0x49, 0x7a, 0x07, 0x10, 0x46, 0x31, 0x1d, 0x3c, 0x2f, 0xd0, 0x5f, 0xc2, 0x84, 0xc9, 0x64, 0xa3, 0x96, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9302 = { .name = "ecdsa_secp384r1_sha384_9302", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9302_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9302_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9302_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9303 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9303_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9303_msg[] = { 0x31, 0x30, 0x33, 0x36, 0x33, 0x30, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9303_sig[] = { 0xe1, 0x4f, 0x41, 0xa5, 0xfc, 0x83, 0xaa, 0x47, 0x25, 0xa9, 0xea, 0x60, 0xab, 0x5b, 0x0b, 0x9d, 0xe2, 0x7f, 0x51, 0x9a, 0xf4, 0xb5, 0x57, 0xa6, 0x01, 0xf1, 0xfe, 0xe0, 0x24, 0x3f, 0x8e, 0xee, 0x51, 0x80, 0xf8, 0xc5, 0x31, 0x41, 0x4f, 0x34, 0x73, 0xf4, 0x45, 0x74, 0x30, 0xcb, 0x7a, 0x26, 0x10, 0x47, 0xed, 0x2b, 0xf1, 0xf9, 0x8e, 0x3c, 0xe9, 0x3e, 0x8f, 0xdb, 0xdc, 0x63, 0xcc, 0x79, 0xf2, 0x38, 0x99, 0x8f, 0xee, 0x74, 0xe1, 0xbb, 0x6c, 0xd7, 0x08, 0x69, 0x49, 0x50, 0xbb, 0xff, 0xe3, 0x94, 0x50, 0x66, 0x06, 0x4d, 0xa0, 0x43, 0xf0, 0x4d, 0x70, 0x83, 0xd0, 0xa5, 0x96, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9303 = { .name = "ecdsa_secp384r1_sha384_9303", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9303_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9303_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha384_9303_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9304 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9304_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9304_msg[] = { 0x32, 0x33, 0x36, 0x32, 0x34, 0x32, 0x31, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9304_sig[] = { 0xb7, 0xc8, 0xb5, 0xcf, 0x63, 0x1a, 0x96, 0xad, 0x90, 0x8d, 0x6a, 0x8c, 0x8d, 0x0e, 0x0a, 0x35, 0xfc, 0xc2, 0x2a, 0x5a, 0x36, 0x05, 0x02, 0x30, 0xb6, 0x65, 0x93, 0x27, 0x64, 0xae, 0x45, 0xbd, 0x84, 0xcb, 0x87, 0xeb, 0xba, 0x8e, 0x44, 0x4a, 0xbd, 0x89, 0xe4, 0x48, 0x3f, 0xc9, 0xc4, 0xa8, 0xa1, 0x16, 0x36, 0xc0, 0x95, 0xaa, 0x9b, 0xc6, 0x9c, 0xf2, 0x4b, 0x50, 0xa0, 0xa9, 0xe5, 0x37, 0x7d, 0x0f, 0xfb, 0xba, 0x4f, 0xab, 0x54, 0x33, 0x15, 0x9f, 0x00, 0x6a, 0xb4, 0x56, 0x3d, 0x55, 0xe9, 0x18, 0x49, 0x30, 0x20, 0xa1, 0x96, 0x91, 0x57, 0x4e, 0x4d, 0x1e, 0x66, 0xe3, 0x97, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9304 = { .name = "ecdsa_secp384r1_sha384_9304", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9304_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9304_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9304_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9305 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9305_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9305_msg[] = { 0x34, 0x35, 0x38, 0x38, 0x30, 0x31, 0x34, 0x36, 0x35, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9305_sig[] = { 0x4a, 0x7d, 0xf2, 0xdf, 0x6a, 0x32, 0xd5, 0x9b, 0x6b, 0xfe, 0xd5, 0x4f, 0x03, 0x2c, 0x3d, 0x6f, 0x3a, 0xcd, 0x3a, 0xc4, 0x06, 0x37, 0x04, 0x09, 0x9c, 0xd1, 0x62, 0xab, 0x39, 0x08, 0xe8, 0xee, 0xba, 0x4e, 0x97, 0x3e, 0xe7, 0x5b, 0x5e, 0x28, 0x5d, 0xd5, 0x72, 0x06, 0x23, 0x38, 0xfe, 0x58, 0x35, 0x36, 0x5b, 0xe3, 0x27, 0xe2, 0x46, 0x3d, 0xc7, 0x59, 0x95, 0x1c, 0x5c, 0x0b, 0xe5, 0xe3, 0xd0, 0x94, 0xcb, 0x70, 0x69, 0x12, 0xfd, 0xf7, 0xd2, 0x6b, 0x15, 0xd4, 0xa5, 0xc4, 0x2f, 0xfe, 0xbe, 0xca, 0x5a, 0xe7, 0x3a, 0x18, 0x23, 0xf5, 0xe6, 0x5d, 0x57, 0x1b, 0x4c, 0xcf, 0x1a, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9305 = { .name = "ecdsa_secp384r1_sha384_9305", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9305_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9305_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9305_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9306 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9306_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9306_msg[] = { 0x32, 0x31, 0x34, 0x36, 0x36, 0x30, 0x35, 0x36, 0x34, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9306_sig[] = { 0x9a, 0xd3, 0x63, 0xa1, 0xbb, 0xc6, 0x7c, 0x57, 0xc8, 0x2a, 0x37, 0x8e, 0x98, 0x8c, 0xc0, 0x83, 0xcc, 0x91, 0xf8, 0xb3, 0x27, 0x39, 0xec, 0x64, 0x7c, 0x0c, 0xb3, 0x48, 0xfb, 0x5c, 0x86, 0x47, 0x20, 0x15, 0x13, 0x1a, 0x7d, 0x90, 0x83, 0xbf, 0x47, 0x40, 0xaf, 0x33, 0x51, 0x75, 0x51, 0x95, 0xd3, 0x10, 0xdc, 0x15, 0x09, 0xf8, 0xc0, 0x02, 0x81, 0xef, 0xe5, 0x71, 0x76, 0x8d, 0x48, 0x80, 0x27, 0xea, 0x76, 0x0f, 0xe3, 0x29, 0x71, 0xf6, 0xcb, 0x7b, 0x57, 0xcd, 0xf9, 0x06, 0x21, 0xb7, 0xd0, 0x08, 0x6e, 0x26, 0x44, 0x3d, 0x37, 0x61, 0xdf, 0x7a, 0xa3, 0xa4, 0xec, 0xcc, 0x6c, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9306 = { .name = "ecdsa_secp384r1_sha384_9306", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9306_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9306_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9306_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9307 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9307_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9307_msg[] = { 0x33, 0x33, 0x35, 0x33, 0x30, 0x30, 0x38, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9307_sig[] = { 0x95, 0x07, 0x8a, 0xf5, 0xc2, 0xac, 0x23, 0x02, 0x39, 0x55, 0x7f, 0x5f, 0xce, 0xe2, 0xe7, 0x12, 0xa7, 0x03, 0x4e, 0x95, 0x43, 0x7a, 0x9b, 0x34, 0xc1, 0x69, 0x2a, 0x81, 0x27, 0x0e, 0xdc, 0xf8, 0xdd, 0xd5, 0xab, 0xa1, 0x13, 0x8a, 0x42, 0x01, 0x26, 0x63, 0xe5, 0xf8, 0x1c, 0x9b, 0xea, 0xe2, 0x40, 0xee, 0x51, 0x0a, 0x0c, 0xce, 0xb8, 0x51, 0x8a, 0xd4, 0xf6, 0x18, 0x59, 0x91, 0x64, 0xda, 0x0f, 0x3b, 0xa7, 0x5e, 0xce, 0xea, 0xc2, 0x16, 0x21, 0x6e, 0xc6, 0x2b, 0xcc, 0xea, 0xe8, 0xdc, 0x98, 0xb5, 0xe3, 0x5b, 0x2e, 0x7e, 0xd4, 0x7c, 0x4b, 0x8e, 0xba, 0xcf, 0xe8, 0x4a, 0x74, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9307 = { .name = "ecdsa_secp384r1_sha384_9307", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9307_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9307_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9307_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9308 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9308_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9308_msg[] = { 0x36, 0x33, 0x39, 0x36, 0x36, 0x30, 0x33, 0x36, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9308_sig[] = { 0xa5, 0x38, 0x07, 0x63, 0x62, 0x04, 0x3d, 0xe5, 0x48, 0x64, 0x46, 0x4c, 0x14, 0xa6, 0xc1, 0xc3, 0xa4, 0x78, 0x44, 0x37, 0x26, 0xc1, 0x30, 0x9a, 0x36, 0xb9, 0xe9, 0xea, 0x15, 0x92, 0xb4, 0x0c, 0x3f, 0x3f, 0x90, 0xd1, 0x95, 0xbd, 0x29, 0x80, 0x04, 0xa7, 0x1e, 0x8f, 0x28, 0x5e, 0x09, 0x3a, 0xd7, 0x4f, 0x97, 0xef, 0x38, 0x46, 0x85, 0x15, 0xa8, 0xc9, 0x27, 0xa4, 0x50, 0x27, 0x5c, 0x14, 0xdc, 0x16, 0xdd, 0xbd, 0xd9, 0x2b, 0x3a, 0x5c, 0xae, 0x80, 0x4b, 0xe2, 0x0d, 0x29, 0xc6, 0x82, 0x12, 0x92, 0x47, 0xd2, 0xe0, 0x1d, 0x37, 0xda, 0xbe, 0x38, 0xff, 0xb7, 0x48, 0x08, 0xa8, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9308 = { .name = "ecdsa_secp384r1_sha384_9308", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9308_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9308_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9308_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9309 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9309_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9309_msg[] = { 0x33, 0x33, 0x39, 0x31, 0x36, 0x36, 0x30, 0x37, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9309_sig[] = { 0xbb, 0xe8, 0x35, 0x11, 0x3f, 0x8e, 0xa4, 0xdc, 0x46, 0x9f, 0x02, 0x83, 0xaf, 0x66, 0x03, 0xf3, 0xd7, 0xa3, 0xa2, 0x22, 0xb3, 0xab, 0x5a, 0x93, 0xdb, 0x56, 0x00, 0x7e, 0xf2, 0xdc, 0x07, 0xc9, 0x79, 0x88, 0xfc, 0x7b, 0x8b, 0x83, 0x30, 0x57, 0xfa, 0x3f, 0xbf, 0x97, 0x41, 0x3b, 0x6c, 0x15, 0x73, 0x7c, 0x31, 0x63, 0x20, 0xb6, 0x10, 0x02, 0xc2, 0xac, 0xb1, 0x84, 0xd8, 0x2e, 0x60, 0xe4, 0x6b, 0xd2, 0x12, 0x9a, 0x9b, 0xbf, 0x56, 0x3c, 0x80, 0xda, 0x42, 0x31, 0x21, 0xc1, 0x61, 0xde, 0xcd, 0x36, 0x35, 0x18, 0xb2, 0x60, 0xaa, 0xac, 0xf3, 0x73, 0x4c, 0x1e, 0xf9, 0xfa, 0xa9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9309 = { .name = "ecdsa_secp384r1_sha384_9309", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9309_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9309_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9309_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9310 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9310_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9310_msg[] = { 0x31, 0x34, 0x34, 0x36, 0x39, 0x37, 0x35, 0x39, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9310_sig[] = { 0x67, 0x9c, 0x36, 0x40, 0xad, 0x8f, 0xfe, 0x95, 0x77, 0xd9, 0xb5, 0x9b, 0x18, 0xff, 0x55, 0x98, 0xdb, 0xfe, 0x61, 0x12, 0x2b, 0xba, 0xb8, 0x23, 0x8d, 0x26, 0x89, 0x07, 0xc9, 0x89, 0xcd, 0x94, 0xdc, 0x7f, 0x60, 0x1d, 0x17, 0x48, 0x6a, 0xf9, 0x3f, 0x6d, 0x18, 0x62, 0x4a, 0xa5, 0x24, 0xa3, 0xe8, 0x4d, 0xd1, 0x95, 0x50, 0x2b, 0xdc, 0xdd, 0x77, 0xb7, 0xf5, 0x1d, 0x8c, 0x1e, 0xa7, 0x89, 0x00, 0x69, 0x05, 0x84, 0x4a, 0x0e, 0x18, 0x54, 0x74, 0xaf, 0x1a, 0x58, 0x3b, 0xab, 0x56, 0x4e, 0xe2, 0x3b, 0xe0, 0xbc, 0x49, 0x50, 0x03, 0x90, 0xdc, 0xeb, 0x3d, 0x39, 0x48, 0xf0, 0x67, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9310 = { .name = "ecdsa_secp384r1_sha384_9310", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9310_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9310_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9310_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9311 for ECDSA, tcId is 240 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9311_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9311_msg[] = { 0x35, 0x31, 0x35, 0x39, 0x34, 0x37, 0x38, 0x36, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9311_sig[] = { 0xf6, 0xf1, 0xaf, 0xe6, 0xfe, 0xbc, 0xe7, 0x99, 0xcc, 0x9b, 0x75, 0x42, 0x79, 0xf2, 0x49, 0x9f, 0x38, 0x25, 0xc3, 0xe7, 0x89, 0xac, 0xce, 0xf4, 0x6d, 0x3f, 0x06, 0x8e, 0x2b, 0x67, 0x81, 0xfd, 0x50, 0x66, 0x9e, 0x80, 0xc3, 0xc7, 0x29, 0x3a, 0x5c, 0x0c, 0x0a, 0xf4, 0x8e, 0x06, 0x8e, 0x35, 0xf5, 0x9c, 0xc8, 0xc2, 0x22, 0x2e, 0xd6, 0x3b, 0x45, 0x53, 0xf8, 0x14, 0x9e, 0xbe, 0xcc, 0x43, 0xb8, 0x66, 0x71, 0x9b, 0x29, 0x4e, 0xf0, 0x83, 0x2a, 0x12, 0xb3, 0xe3, 0xdb, 0xc8, 0x25, 0xee, 0xab, 0x68, 0xb5, 0x77, 0x96, 0x25, 0xb1, 0x0a, 0xe5, 0x54, 0x14, 0x12, 0xec, 0x29, 0x53, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9311 = { .name = "ecdsa_secp384r1_sha384_9311", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9311_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9311_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9311_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9312 for ECDSA, tcId is 241 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9312_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9312_msg[] = { 0x35, 0x32, 0x34, 0x31, 0x37, 0x39, 0x32, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9312_sig[] = { 0xf4, 0x64, 0x96, 0xf6, 0xd4, 0x73, 0xf3, 0xc0, 0x91, 0xa6, 0x8a, 0xaa, 0x37, 0x49, 0x22, 0x0c, 0x84, 0x00, 0x61, 0xcd, 0x4f, 0x88, 0x86, 0x13, 0xcc, 0xfe, 0xac, 0x0a, 0xa0, 0x41, 0x1b, 0x45, 0x1e, 0xdb, 0xd4, 0xfa, 0xcb, 0xe3, 0x8d, 0x2d, 0xd9, 0xd6, 0xd0, 0xd0, 0xd2, 0x55, 0xed, 0x34, 0x00, 0xc3, 0xa7, 0x4f, 0xa6, 0x66, 0x6f, 0x58, 0xc4, 0x79, 0x8f, 0x30, 0xc3, 0x77, 0x98, 0x13, 0xe5, 0xc6, 0xd0, 0x8a, 0xc3, 0x1a, 0x79, 0x2c, 0x2d, 0x0f, 0x9c, 0xb7, 0x08, 0x73, 0x3f, 0x26, 0xad, 0x6b, 0xf3, 0xb1, 0xe4, 0x68, 0x15, 0xae, 0x53, 0x6a, 0xa1, 0x51, 0x68, 0x0b, 0xde, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9312 = { .name = "ecdsa_secp384r1_sha384_9312", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9312_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9312_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9312_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9313 for ECDSA, tcId is 242 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9313_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9313_msg[] = { 0x31, 0x31, 0x34, 0x37, 0x32, 0x39, 0x30, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9313_sig[] = { 0xdf, 0x8b, 0x8e, 0x4c, 0xb1, 0xbc, 0x4e, 0xc6, 0x9c, 0xb1, 0x47, 0x2f, 0xa5, 0xa8, 0x1c, 0x36, 0x64, 0x2e, 0xd4, 0x7f, 0xc6, 0xce, 0x56, 0x00, 0x33, 0xc4, 0xf7, 0xcb, 0x0b, 0xc8, 0x45, 0x9b, 0x57, 0x88, 0xe3, 0x4c, 0xaa, 0x7d, 0x96, 0xe6, 0x07, 0x11, 0x88, 0xe4, 0x49, 0xf0, 0x20, 0x7a, 0x8b, 0x8e, 0xe0, 0x17, 0x79, 0x62, 0xa4, 0x89, 0x93, 0x8f, 0x3f, 0xef, 0xfa, 0xe5, 0x57, 0x29, 0xd9, 0xd4, 0x46, 0xfe, 0x43, 0x8c, 0x7c, 0xb9, 0x1e, 0xa5, 0xf6, 0x32, 0xc8, 0x0a, 0xa7, 0x2a, 0x43, 0xb9, 0xb0, 0x4e, 0x6d, 0xe7, 0xff, 0x34, 0xf7, 0x6f, 0x44, 0x25, 0x10, 0x7f, 0xd6, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9313 = { .name = "ecdsa_secp384r1_sha384_9313", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9313_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9313_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9313_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9314 for ECDSA, tcId is 243 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9314_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9314_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x32, 0x35, 0x36, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9314_sig[] = { 0x8b, 0xb6, 0xa8, 0xec, 0xdc, 0x8b, 0x48, 0x3a, 0xd7, 0xb9, 0xc9, 0x4b, 0xb3, 0x9f, 0x63, 0xb5, 0xfc, 0x13, 0x78, 0xef, 0xe8, 0xc0, 0x20, 0x4a, 0x74, 0x63, 0x1d, 0xde, 0xd7, 0x15, 0x96, 0x43, 0x82, 0x14, 0x19, 0xaf, 0x33, 0x86, 0x3b, 0x04, 0x14, 0xbd, 0x87, 0xec, 0xf7, 0x3b, 0xa3, 0xfb, 0x89, 0x28, 0x44, 0x9f, 0x2d, 0x6d, 0xb2, 0xb2, 0xc6, 0x5d, 0x44, 0xd9, 0x8b, 0xeb, 0x77, 0xee, 0xad, 0xcb, 0xda, 0x83, 0xff, 0x33, 0xe5, 0x7e, 0xb1, 0x83, 0xe1, 0xfc, 0x29, 0xad, 0x86, 0xf0, 0xba, 0x29, 0xee, 0x66, 0xe7, 0x50, 0xe8, 0x17, 0x0c, 0xcc, 0x43, 0x4c, 0xf7, 0x0a, 0xe1, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9314 = { .name = "ecdsa_secp384r1_sha384_9314", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9314_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9314_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha384_9314_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9315 for ECDSA, tcId is 244 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9315_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9315_msg[] = { 0x37, 0x33, 0x34, 0x33, 0x33, 0x30, 0x36, 0x35, 0x36, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9315_sig[] = { 0xe3, 0x83, 0x28, 0x77, 0xc8, 0x0c, 0x4e, 0xd4, 0x39, 0xd8, 0xea, 0xdc, 0xf6, 0x15, 0xc0, 0x28, 0x6f, 0xf5, 0x49, 0x43, 0xe3, 0xae, 0x2f, 0x66, 0xa3, 0xb9, 0xf8, 0x86, 0x24, 0x5f, 0xea, 0x47, 0x0e, 0x6d, 0x58, 0x12, 0xce, 0xf8, 0x0c, 0x23, 0xe4, 0xf5, 0x68, 0xd0, 0x21, 0x5a, 0x3b, 0xfc, 0x31, 0x77, 0xa7, 0xdb, 0xf0, 0xab, 0x8f, 0x8f, 0x5f, 0xc1, 0xd0, 0x1b, 0x19, 0xd6, 0xa5, 0xe8, 0x96, 0x42, 0x89, 0x9f, 0x36, 0x9d, 0xfe, 0x21, 0x3b, 0x7c, 0xc5, 0x5d, 0x8e, 0xaf, 0x21, 0xdd, 0x28, 0x85, 0xef, 0xce, 0x52, 0xb5, 0x95, 0x9c, 0x1f, 0x06, 0xb7, 0xca, 0xc5, 0x77, 0x3e, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9315 = { .name = "ecdsa_secp384r1_sha384_9315", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9315_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9315_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9315_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9316 for ECDSA, tcId is 245 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9316_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9316_msg[] = { 0x39, 0x37, 0x34, 0x34, 0x36, 0x30, 0x39, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9316_sig[] = { 0x62, 0x75, 0x73, 0x8f, 0x08, 0x80, 0x02, 0x32, 0x86, 0xa9, 0xb6, 0xf2, 0x8e, 0xa0, 0xa9, 0x77, 0x9e, 0x8d, 0x64, 0x4c, 0x3d, 0xec, 0x48, 0x29, 0x3c, 0x64, 0xf1, 0x56, 0x6b, 0x34, 0xe1, 0x5c, 0x71, 0x19, 0xbd, 0x9d, 0x02, 0xfa, 0x23, 0x57, 0x77, 0x4c, 0xab, 0xc9, 0xe5, 0x3e, 0xf7, 0xe6, 0xd2, 0xf0, 0xa5, 0x2b, 0x10, 0x16, 0x08, 0x2b, 0xd5, 0x51, 0x76, 0x09, 0xee, 0x81, 0xc0, 0x76, 0x4d, 0xc3, 0x8a, 0x8f, 0x32, 0xd9, 0xa5, 0x07, 0x4e, 0x71, 0x7e, 0xe1, 0xd8, 0x32, 0xf9, 0xea, 0x0e, 0x4c, 0x6b, 0x10, 0x0b, 0x1f, 0xd5, 0xe7, 0xf4, 0xbc, 0x74, 0x68, 0xc7, 0x9d, 0x39, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9316 = { .name = "ecdsa_secp384r1_sha384_9316", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9316_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9316_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9316_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9317 for ECDSA, tcId is 246 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9317_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9317_msg[] = { 0x33, 0x32, 0x32, 0x37, 0x30, 0x38, 0x36, 0x38, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9317_sig[] = { 0xd3, 0x16, 0xfe, 0x51, 0x68, 0xcf, 0x13, 0x75, 0x3c, 0x8c, 0x3b, 0xbe, 0xf8, 0x38, 0x69, 0xa6, 0x70, 0x3d, 0xc0, 0xd5, 0xaf, 0xa8, 0x2a, 0xf4, 0x9c, 0x88, 0xff, 0x35, 0x55, 0x66, 0x0f, 0x57, 0x91, 0x9a, 0x6f, 0x36, 0xe8, 0x44, 0x51, 0xc3, 0xe8, 0xe5, 0x78, 0x3e, 0x3b, 0x83, 0xfe, 0x3b, 0x99, 0x5f, 0x08, 0xc8, 0xfe, 0xc7, 0xcd, 0x82, 0xce, 0x27, 0xe7, 0x50, 0x93, 0x93, 0xf5, 0xa3, 0x80, 0x3a, 0x48, 0xfe, 0x25, 0x5f, 0xcb, 0x16, 0x03, 0x21, 0xc6, 0xe1, 0x89, 0x0e, 0xb3, 0x6e, 0x37, 0xbc, 0xda, 0x15, 0x8f, 0x0f, 0xa6, 0x89, 0x9e, 0x7d, 0x10, 0x7e, 0x52, 0xde, 0x8c, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9317 = { .name = "ecdsa_secp384r1_sha384_9317", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9317_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9317_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9317_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9318 for ECDSA, tcId is 247 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9318_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9318_msg[] = { 0x32, 0x33, 0x32, 0x39, 0x37, 0x36, 0x34, 0x31, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9318_sig[] = { 0x0b, 0x13, 0xb8, 0xfd, 0x10, 0xfa, 0x7b, 0x42, 0x16, 0x91, 0x37, 0x58, 0x8a, 0xd3, 0xf5, 0x57, 0x53, 0x9a, 0x4e, 0x92, 0x06, 0xf3, 0xa1, 0xf1, 0xfe, 0x92, 0x02, 0xb0, 0x69, 0x0d, 0xef, 0xde, 0xd2, 0xbe, 0x18, 0x14, 0x7f, 0x5b, 0x2d, 0xa9, 0x28, 0x5c, 0x0e, 0x73, 0x49, 0x73, 0x5e, 0xa3, 0x04, 0x78, 0xad, 0x31, 0x7b, 0x22, 0xa2, 0x47, 0xbf, 0x93, 0x34, 0x71, 0x9b, 0x4c, 0x8e, 0xe8, 0x4a, 0xcf, 0x13, 0x45, 0x15, 0xdb, 0x77, 0xe6, 0x14, 0x1c, 0x75, 0xd0, 0x89, 0x61, 0xe1, 0xe5, 0x1e, 0xac, 0xa2, 0x98, 0x36, 0x74, 0x41, 0x03, 0xde, 0x0f, 0x6a, 0x4c, 0x79, 0x8d, 0x3e, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9318 = { .name = "ecdsa_secp384r1_sha384_9318", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9318_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9318_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9318_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9319 for ECDSA, tcId is 248 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9319_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9319_msg[] = { 0x39, 0x34, 0x30, 0x34, 0x37, 0x33, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9319_sig[] = { 0x15, 0x80, 0x44, 0x29, 0xbc, 0xb5, 0x27, 0x7d, 0x4f, 0x0a, 0xf7, 0x3b, 0xd5, 0x4c, 0x8a, 0x17, 0x74, 0x99, 0xa7, 0xb6, 0x4f, 0x18, 0xaf, 0xc5, 0x66, 0xc3, 0xce, 0x70, 0x96, 0xbd, 0xc6, 0xc2, 0x75, 0xe3, 0x85, 0x48, 0xed, 0xcf, 0xa0, 0xb7, 0x8d, 0xd7, 0xf5, 0x7b, 0x6f, 0x39, 0x3e, 0x49, 0xd5, 0x95, 0x1f, 0x24, 0x3e, 0x65, 0xb8, 0x2b, 0xa5, 0xc0, 0xc7, 0x55, 0x2d, 0x33, 0xb1, 0x1f, 0x1e, 0x90, 0xfd, 0xe0, 0xc3, 0xfd, 0x01, 0x4a, 0xac, 0x1b, 0xb2, 0x7d, 0xb2, 0xaa, 0xf0, 0x9b, 0x66, 0x7c, 0x8b, 0x24, 0x7c, 0x4c, 0xdd, 0x5b, 0x07, 0x23, 0xfb, 0xa8, 0x3b, 0x4f, 0x99, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9319 = { .name = "ecdsa_secp384r1_sha384_9319", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9319_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9319_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha384_9319_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9320 for ECDSA, tcId is 249 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9320_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9320_msg[] = { 0x33, 0x32, 0x32, 0x30, 0x35, 0x36, 0x39, 0x31, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9320_sig[] = { 0x35, 0x92, 0x47, 0xc9, 0x57, 0x76, 0xbb, 0x17, 0x49, 0x2b, 0x7b, 0xf8, 0x27, 0xf5, 0xf3, 0x30, 0xfa, 0x9f, 0x9d, 0xe7, 0xcc, 0x10, 0x44, 0x1a, 0x14, 0x79, 0xc8, 0x17, 0x76, 0xce, 0x36, 0xcd, 0xc6, 0xa1, 0x3c, 0x5f, 0x51, 0x49, 0xc4, 0xe3, 0x91, 0x47, 0xa1, 0x96, 0xbb, 0x02, 0xed, 0x34, 0xf6, 0xed, 0x92, 0x52, 0xa7, 0x3d, 0xe4, 0x85, 0x16, 0xf4, 0xea, 0xba, 0xb6, 0x36, 0x8f, 0xbf, 0xf6, 0x87, 0x51, 0x28, 0xaf, 0x4e, 0x12, 0x26, 0xd5, 0x4d, 0xb5, 0x58, 0xbd, 0x76, 0xee, 0xc3, 0x69, 0xcc, 0x9b, 0x28, 0x5b, 0xc1, 0x96, 0xd5, 0x12, 0xe5, 0x31, 0xf8, 0x48, 0x64, 0xd3, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9320 = { .name = "ecdsa_secp384r1_sha384_9320", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9320_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9320_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9320_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9321 for ECDSA, tcId is 250 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9321_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9321_msg[] = { 0x34, 0x31, 0x34, 0x30, 0x35, 0x33, 0x39, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9321_sig[] = { 0xa5, 0x57, 0xd1, 0xf6, 0x3a, 0x20, 0x94, 0xf6, 0x83, 0x42, 0x9e, 0xcb, 0x35, 0xa6, 0x53, 0x3b, 0xac, 0x89, 0x76, 0x82, 0x77, 0x5c, 0x00, 0x51, 0xe1, 0x11, 0xee, 0xd6, 0xe0, 0x76, 0xc4, 0x88, 0x67, 0xca, 0xe0, 0x05, 0xc5, 0xe0, 0x80, 0x38, 0x00, 0xb0, 0x50, 0x31, 0x1e, 0x38, 0x1c, 0xd6, 0x2a, 0x2f, 0x87, 0x1e, 0xfc, 0xf0, 0x3c, 0xf1, 0xc8, 0xf5, 0x09, 0xe0, 0x76, 0xaa, 0xa2, 0xa7, 0x6f, 0x1e, 0xa7, 0x8d, 0x1c, 0x64, 0x80, 0x4e, 0xa5, 0xb0, 0x63, 0xb0, 0x32, 0x4b, 0x8e, 0x98, 0xeb, 0x58, 0x25, 0xd0, 0x43, 0x70, 0x10, 0x60, 0x20, 0xee, 0x15, 0x80, 0x5d, 0xbe, 0xdf, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9321 = { .name = "ecdsa_secp384r1_sha384_9321", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9321_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9321_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9321_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9322 for ECDSA, tcId is 251 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9322_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9322_msg[] = { 0x31, 0x39, 0x35, 0x31, 0x35, 0x36, 0x38, 0x36, 0x34, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9322_sig[] = { 0xf2, 0x2b, 0xf9, 0x11, 0x69, 0xb4, 0xae, 0xc8, 0x4c, 0xa8, 0x40, 0x41, 0xcb, 0x82, 0x6f, 0x7d, 0xfc, 0x6f, 0x33, 0xd9, 0x73, 0xf3, 0xc7, 0x24, 0x33, 0xb8, 0xa0, 0xca, 0x20, 0x3a, 0xac, 0x93, 0xf7, 0xee, 0xd6, 0x2b, 0xe9, 0xbe, 0xa0, 0x17, 0x06, 0x40, 0x2d, 0x5b, 0x5d, 0x3b, 0x0e, 0x65, 0x78, 0x41, 0xd3, 0xbc, 0x34, 0xaa, 0x47, 0xe8, 0x13, 0xa5, 0x5c, 0x25, 0x20, 0x3c, 0x5e, 0xc2, 0x34, 0x2d, 0x83, 0x8d, 0x5b, 0x46, 0x38, 0xc2, 0x70, 0x5d, 0xcf, 0x4b, 0xac, 0x9c, 0x24, 0xf7, 0x65, 0xb5, 0xd4, 0xc2, 0x8f, 0xa3, 0xc7, 0xfd, 0xa7, 0xa3, 0x8e, 0xd5, 0x04, 0x8c, 0x7d, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9322 = { .name = "ecdsa_secp384r1_sha384_9322", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9322_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9322_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9322_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9323 for ECDSA, tcId is 252 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9323_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9323_msg[] = { 0x35, 0x39, 0x35, 0x39, 0x30, 0x37, 0x31, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9323_sig[] = { 0x9c, 0x19, 0x6e, 0x39, 0xa2, 0xd6, 0x1a, 0x3c, 0x25, 0x65, 0xf5, 0x93, 0x2f, 0x35, 0x7e, 0x24, 0x28, 0x92, 0x73, 0x7e, 0x9a, 0xdf, 0xc8, 0x6c, 0x66, 0x09, 0xf2, 0x91, 0xe5, 0xe6, 0xfd, 0xbb, 0x23, 0x02, 0x9f, 0xf9, 0x15, 0xa0, 0x32, 0xb0, 0xc5, 0x39, 0x0b, 0xa9, 0xd1, 0x5f, 0x20, 0x3e, 0xd7, 0x21, 0xe2, 0x8e, 0x52, 0x69, 0xd7, 0x81, 0x3e, 0x8a, 0x9a, 0xed, 0x53, 0xa3, 0x7e, 0x65, 0x2f, 0xec, 0x15, 0x60, 0xca, 0x61, 0xf2, 0x8f, 0x55, 0xab, 0x4c, 0x26, 0x2c, 0xc6, 0x21, 0x4e, 0xee, 0x8d, 0x3c, 0x4c, 0x2b, 0xa9, 0xd1, 0xba, 0x0b, 0xa1, 0x9e, 0x5e, 0x3c, 0x74, 0x84, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9323 = { .name = "ecdsa_secp384r1_sha384_9323", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9323_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9323_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9323_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9324 for ECDSA, tcId is 253 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9324_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9324_msg[] = { 0x32, 0x31, 0x35, 0x33, 0x34, 0x36, 0x39, 0x35, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9324_sig[] = { 0x8b, 0xa1, 0xe9, 0xde, 0xc1, 0x4d, 0x30, 0x0b, 0x0e, 0x25, 0x0e, 0xa0, 0xbc, 0xd4, 0x41, 0x9c, 0x3d, 0x95, 0x59, 0x62, 0x2c, 0xc7, 0xb8, 0x37, 0x5b, 0xd7, 0x3f, 0x7d, 0x70, 0x13, 0x32, 0x42, 0xe3, 0xd5, 0xbf, 0x70, 0xbc, 0x78, 0x28, 0x08, 0x73, 0x46, 0x54, 0xba, 0xcd, 0x12, 0xda, 0xea, 0xd8, 0x93, 0xd3, 0x97, 0x0f, 0x72, 0xcc, 0xab, 0x35, 0x55, 0x5a, 0xe9, 0x1e, 0xbc, 0xfe, 0xd3, 0xc5, 0xbf, 0xc5, 0xd3, 0x91, 0x81, 0x07, 0x1b, 0xc0, 0x6b, 0xa3, 0x82, 0x58, 0x7a, 0x69, 0x5e, 0x02, 0xed, 0x48, 0x2f, 0x1a, 0x74, 0xfe, 0x30, 0x9a, 0x39, 0x9e, 0xae, 0xe5, 0xf5, 0xbc, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9324 = { .name = "ecdsa_secp384r1_sha384_9324", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9324_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9324_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9324_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9325 for ECDSA, tcId is 254 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9325_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9325_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x31, 0x30, 0x39, 0x38, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9325_sig[] = { 0x2f, 0x52, 0x1d, 0x9d, 0x83, 0xe1, 0xbf, 0xf8, 0xd2, 0x52, 0x55, 0xa9, 0xbd, 0xca, 0x90, 0xe1, 0x5d, 0x78, 0xa8, 0xc9, 0xea, 0x78, 0x85, 0xb8, 0x84, 0x02, 0x4a, 0x40, 0xde, 0x9a, 0x31, 0x5b, 0xed, 0x7f, 0x74, 0x6b, 0x5d, 0xa4, 0xce, 0x96, 0xb0, 0x70, 0x20, 0x8e, 0x9a, 0xe0, 0xcf, 0xa5, 0x41, 0x85, 0xc6, 0xf4, 0x22, 0x5b, 0x8c, 0x25, 0x5a, 0x4d, 0x31, 0xab, 0xb5, 0xc9, 0xb6, 0xc6, 0x86, 0xa6, 0xee, 0x50, 0xa8, 0xeb, 0x71, 0x03, 0xaa, 0xef, 0x90, 0x24, 0x5a, 0x47, 0x22, 0xfc, 0x89, 0x96, 0xf2, 0x66, 0xf2, 0x62, 0x10, 0x9c, 0x3b, 0x59, 0x57, 0xba, 0x73, 0x28, 0x9a, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9325 = { .name = "ecdsa_secp384r1_sha384_9325", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9325_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9325_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9325_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9326 for ECDSA, tcId is 255 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9326_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9326_msg[] = { 0x34, 0x39, 0x32, 0x39, 0x33, 0x39, 0x36, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9326_sig[] = { 0xd4, 0x90, 0x0f, 0x54, 0xc1, 0xbc, 0x84, 0x1d, 0x38, 0xeb, 0x2f, 0x13, 0xe0, 0xba, 0xfb, 0xb1, 0x2b, 0x56, 0x67, 0x39, 0x3b, 0x07, 0x10, 0x2d, 0xb9, 0x06, 0x39, 0x74, 0x4f, 0x54, 0xd7, 0x89, 0x60, 0xb3, 0x44, 0xc8, 0xfb, 0xfb, 0xf3, 0x54, 0x0b, 0x38, 0xd0, 0x02, 0x78, 0xe1, 0x77, 0xaa, 0x3a, 0x16, 0xef, 0xf0, 0x39, 0x97, 0x00, 0x00, 0x9b, 0x69, 0x49, 0xf3, 0xf5, 0x06, 0xc5, 0x43, 0x49, 0x5b, 0xf8, 0xe0, 0xf3, 0xa3, 0x4f, 0xeb, 0x8e, 0xdd, 0x63, 0x64, 0x87, 0x47, 0xb5, 0x31, 0xad, 0xc4, 0xe7, 0x53, 0x98, 0xe4, 0xda, 0x80, 0x83, 0xb8, 0x8b, 0x34, 0xc2, 0xfb, 0x97, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9326 = { .name = "ecdsa_secp384r1_sha384_9326", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9326_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9326_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9326_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9327 for ECDSA, tcId is 256 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9327_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9327_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x33, 0x35, 0x35, 0x39, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9327_sig[] = { 0xc0, 0x16, 0x9e, 0x2b, 0x8b, 0x97, 0xee, 0xb0, 0x65, 0x0e, 0x27, 0x65, 0x3f, 0x2e, 0x47, 0x3b, 0x97, 0xa0, 0x6e, 0x1e, 0x88, 0x8b, 0x07, 0xc1, 0x01, 0x8c, 0x73, 0x0c, 0xab, 0xfd, 0xee, 0xec, 0x4a, 0x62, 0x6c, 0x3e, 0xde, 0xe0, 0x76, 0x7d, 0x44, 0xe8, 0xed, 0x07, 0x08, 0x0c, 0x2a, 0xc4, 0x13, 0xf4, 0x64, 0x75, 0xf9, 0x55, 0xf9, 0x70, 0x19, 0x28, 0x06, 0x7e, 0x39, 0x82, 0xd4, 0xba, 0x5a, 0x58, 0xa3, 0x79, 0xa6, 0x6f, 0x91, 0xb7, 0x4f, 0xad, 0x9a, 0xc8, 0xae, 0xe3, 0x00, 0x86, 0xbe, 0x6f, 0x41, 0xc9, 0xc2, 0xd8, 0xfb, 0x80, 0xe0, 0x92, 0x4d, 0xed, 0xbe, 0x67, 0xe9, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9327 = { .name = "ecdsa_secp384r1_sha384_9327", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9327_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9327_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9327_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9328 for ECDSA, tcId is 257 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9328_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9328_msg[] = { 0x31, 0x32, 0x33, 0x39, 0x32, 0x37, 0x35, 0x37, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9328_sig[] = { 0x2e, 0x86, 0x88, 0x71, 0xea, 0x8b, 0x27, 0xa8, 0xa7, 0x46, 0x88, 0x21, 0x52, 0x05, 0x1f, 0x2b, 0x14, 0x6a, 0xf4, 0xac, 0x9d, 0x84, 0x73, 0xb4, 0xb6, 0x85, 0x2f, 0x80, 0xa1, 0xd0, 0xc7, 0xca, 0xb5, 0x74, 0x89, 0xaa, 0x43, 0xf8, 0x90, 0x24, 0x38, 0x8a, 0xec, 0x06, 0x05, 0xb0, 0x26, 0x37, 0x6d, 0x8c, 0x89, 0xee, 0xd8, 0xa5, 0xa6, 0x25, 0x2c, 0x5c, 0xea, 0xd1, 0xc5, 0x53, 0x91, 0xc6, 0x74, 0x3d, 0x88, 0x16, 0x09, 0xe3, 0xdb, 0x24, 0xd7, 0x0e, 0xad, 0x80, 0xa6, 0x63, 0x57, 0x00, 0x20, 0x79, 0x8f, 0xbf, 0x41, 0xd4, 0xc6, 0x24, 0xfc, 0xb1, 0xce, 0x36, 0xc5, 0x36, 0xfe, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9328 = { .name = "ecdsa_secp384r1_sha384_9328", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9328_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9328_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9328_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9329 for ECDSA, tcId is 258 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9329_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9329_msg[] = { 0x32, 0x30, 0x38, 0x31, 0x31, 0x38, 0x38, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9329_sig[] = { 0xab, 0xe6, 0xa5, 0x11, 0x79, 0xee, 0x87, 0xc9, 0x57, 0x80, 0x5e, 0xca, 0xd5, 0xcc, 0xeb, 0xca, 0x30, 0xc6, 0xe3, 0xa3, 0xe6, 0xdb, 0xe4, 0xeb, 0x4d, 0x13, 0x0b, 0x71, 0xdf, 0x2b, 0xf5, 0x90, 0xb9, 0xd6, 0x7c, 0x8f, 0x49, 0xe8, 0x1b, 0xf9, 0x0c, 0xe0, 0x90, 0x9d, 0x3c, 0x2d, 0xab, 0x4c, 0x71, 0x10, 0x58, 0x2f, 0xab, 0x49, 0x5b, 0x21, 0xbd, 0x9d, 0xda, 0x06, 0x4f, 0xbd, 0x7a, 0xcc, 0x09, 0xd0, 0x54, 0x4d, 0xcf, 0x76, 0x99, 0xbe, 0x35, 0xad, 0x16, 0x20, 0x7f, 0xfa, 0x10, 0xe8, 0x90, 0x4f, 0x92, 0x41, 0xa7, 0x09, 0x48, 0x7b, 0xa2, 0xba, 0x7e, 0x34, 0x43, 0x0b, 0x81, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9329 = { .name = "ecdsa_secp384r1_sha384_9329", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9329_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9329_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9329_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9330 for ECDSA, tcId is 259 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9330_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9330_msg[] = { 0x34, 0x35, 0x34, 0x36, 0x30, 0x38, 0x39, 0x36, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9330_sig[] = { 0x50, 0x25, 0x2c, 0x19, 0xe6, 0x0e, 0x41, 0x20, 0xb7, 0xc2, 0x8b, 0x2c, 0x2e, 0x0a, 0x58, 0x8e, 0x5d, 0x10, 0x75, 0x18, 0xcd, 0x61, 0xe5, 0xc7, 0x99, 0x9c, 0x6d, 0x46, 0x5e, 0xa1, 0x34, 0xf7, 0x52, 0x32, 0x2d, 0x8b, 0x83, 0xf5, 0x98, 0x8f, 0xcd, 0xc6, 0x2b, 0xd9, 0xad, 0xb3, 0x6c, 0xcd, 0x19, 0x38, 0x99, 0x35, 0x24, 0x91, 0xda, 0xbf, 0xe4, 0xfc, 0x94, 0x2e, 0x14, 0xdd, 0xac, 0xb2, 0x00, 0x67, 0x37, 0x29, 0xd6, 0x16, 0x02, 0xcc, 0x0b, 0xaf, 0x57, 0x32, 0xd2, 0x62, 0xf3, 0x6e, 0x52, 0x79, 0x86, 0x5a, 0x81, 0x0c, 0xe2, 0xf9, 0x77, 0xf5, 0x76, 0x86, 0xa0, 0xd0, 0x13, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9330 = { .name = "ecdsa_secp384r1_sha384_9330", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9330_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9330_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9330_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9331 for ECDSA, tcId is 260 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9331_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9331_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x36, 0x38, 0x37, 0x31, 0x31, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9331_sig[] = { 0xeb, 0x72, 0x5f, 0xdd, 0x53, 0x9d, 0x7d, 0xe8, 0xea, 0x02, 0xfa, 0xc8, 0xdb, 0x6e, 0xc4, 0x64, 0xf4, 0x0c, 0x27, 0x2a, 0x63, 0xe6, 0xb2, 0x71, 0x8c, 0x4e, 0x02, 0x66, 0xbf, 0x12, 0x35, 0xda, 0xe3, 0x30, 0xf7, 0x47, 0xa6, 0x05, 0x2f, 0x43, 0x19, 0xec, 0xbe, 0x7b, 0xda, 0xde, 0x9b, 0xd0, 0xae, 0x84, 0x50, 0x76, 0x48, 0xba, 0x2d, 0x19, 0x44, 0xbb, 0x67, 0x72, 0x2c, 0xcd, 0x2c, 0xb9, 0x4b, 0x92, 0xb5, 0x9e, 0x89, 0xa1, 0xae, 0x69, 0x8c, 0x66, 0x8b, 0xb5, 0x7f, 0x48, 0x1c, 0x42, 0xb2, 0x16, 0xc2, 0x3d, 0xa4, 0xb1, 0xd8, 0xc0, 0xe5, 0x02, 0xef, 0x97, 0xfd, 0xa0, 0x5a, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9331 = { .name = "ecdsa_secp384r1_sha384_9331", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9331_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9331_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9331_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9332 for ECDSA, tcId is 261 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9332_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9332_msg[] = { 0x32, 0x30, 0x33, 0x31, 0x33, 0x38, 0x31, 0x38, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9332_sig[] = { 0x25, 0xaa, 0x56, 0xfc, 0xbd, 0x92, 0xf2, 0xcf, 0x53, 0xbd, 0xdb, 0xaa, 0x0d, 0xb5, 0x37, 0xde, 0x58, 0x43, 0x29, 0x07, 0x31, 0xc1, 0xdd, 0x78, 0x03, 0x6f, 0xcb, 0xde, 0xd4, 0xa8, 0xf7, 0x18, 0x7d, 0xdf, 0xed, 0x9f, 0x5c, 0xa9, 0xd9, 0x8e, 0xa7, 0xb1, 0x2d, 0x24, 0xb8, 0xd2, 0x9d, 0x57, 0x02, 0x8f, 0x68, 0x37, 0x2d, 0x66, 0x16, 0x48, 0x10, 0xbf, 0x79, 0xc3, 0x0a, 0x19, 0x11, 0x16, 0xd4, 0x96, 0xfe, 0x32, 0x31, 0x46, 0x05, 0xdc, 0x16, 0x68, 0x28, 0x94, 0x25, 0xfb, 0x3a, 0x15, 0xd7, 0x53, 0x2d, 0xde, 0x10, 0x52, 0xa4, 0x9a, 0x35, 0x86, 0x6c, 0x14, 0x7a, 0xbd, 0xe1, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9332 = { .name = "ecdsa_secp384r1_sha384_9332", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9332_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9332_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9332_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9333 for ECDSA, tcId is 262 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9333_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9333_msg[] = { 0x32, 0x35, 0x35, 0x33, 0x35, 0x38, 0x33, 0x33, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9333_sig[] = { 0x54, 0xbf, 0x7a, 0xdc, 0x85, 0x48, 0xe7, 0xca, 0xe2, 0x70, 0xe7, 0xb0, 0x97, 0xf1, 0x6b, 0x5e, 0x31, 0x51, 0x58, 0xd2, 0x1b, 0x0e, 0x65, 0x2c, 0xe1, 0xcf, 0xe4, 0xb3, 0x31, 0x26, 0xba, 0x4a, 0x65, 0xbf, 0x22, 0x7b, 0x4c, 0xdd, 0xca, 0xf2, 0x2d, 0x33, 0xd8, 0x24, 0x78, 0x93, 0x7b, 0x20, 0xbf, 0xc1, 0xb8, 0xf1, 0xd0, 0x28, 0x46, 0xa4, 0x2f, 0x31, 0xe1, 0xbd, 0x10, 0xba, 0x33, 0x40, 0x65, 0x45, 0x9f, 0x71, 0x2a, 0x3b, 0xbc, 0x76, 0x00, 0x5d, 0x6c, 0x64, 0x88, 0x88, 0x9f, 0x88, 0xc0, 0x98, 0x3f, 0x48, 0x34, 0xd0, 0xbf, 0x22, 0x49, 0xdb, 0xf0, 0xa6, 0xdb, 0x76, 0x07, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9333 = { .name = "ecdsa_secp384r1_sha384_9333", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9333_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9333_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9333_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9334 for ECDSA, tcId is 263 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9334_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9334_msg[] = { 0x34, 0x36, 0x31, 0x38, 0x38, 0x34, 0x31, 0x34, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9334_sig[] = { 0xd3, 0xbb, 0x29, 0xac, 0x0b, 0xd1, 0xf6, 0x05, 0x8a, 0x51, 0x97, 0xf7, 0x66, 0xd6, 0xea, 0x32, 0x16, 0xc5, 0x72, 0xde, 0xd6, 0x2a, 0xf4, 0x63, 0x18, 0xc8, 0xc7, 0xf9, 0x54, 0x7b, 0xb2, 0x46, 0x55, 0x36, 0x54, 0x27, 0x9d, 0x69, 0x98, 0x9d, 0x9a, 0xf5, 0xef, 0x4c, 0xca, 0xcf, 0x64, 0xda, 0xe1, 0x02, 0x81, 0x12, 0x2c, 0x21, 0x12, 0xa2, 0xa5, 0xa9, 0xd8, 0x7a, 0xc5, 0x8f, 0x64, 0xfb, 0x07, 0xc9, 0x96, 0xa2, 0xd0, 0x92, 0x92, 0x11, 0x9e, 0x8f, 0x24, 0xd5, 0x49, 0x9b, 0x2e, 0x85, 0x24, 0xeb, 0xd0, 0x57, 0x00, 0x97, 0xf6, 0xcc, 0x7f, 0x9c, 0x26, 0x09, 0x4a, 0x35, 0xc8, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9334 = { .name = "ecdsa_secp384r1_sha384_9334", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9334_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9334_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9334_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9335 for ECDSA, tcId is 264 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9335_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9335_msg[] = { 0x31, 0x30, 0x30, 0x39, 0x32, 0x34, 0x35, 0x38, 0x35, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9335_sig[] = { 0xbc, 0x32, 0xe8, 0x5e, 0x31, 0x12, 0x47, 0x24, 0x08, 0xf9, 0x32, 0x45, 0x86, 0xe5, 0x25, 0x32, 0x51, 0x28, 0xa3, 0x83, 0x13, 0xc3, 0x4b, 0x79, 0x70, 0x0c, 0xb0, 0xa3, 0xf7, 0x26, 0x2a, 0x90, 0xa1, 0xfc, 0xc4, 0x0e, 0xef, 0x1f, 0x1a, 0x38, 0x84, 0x03, 0x2a, 0x7a, 0x21, 0x81, 0x0e, 0x0a, 0xc0, 0x2f, 0x52, 0x54, 0x13, 0x60, 0x35, 0x81, 0x07, 0xa1, 0x3d, 0xbe, 0xa3, 0x1f, 0x83, 0xd8, 0x03, 0x97, 0x71, 0x09, 0x01, 0x73, 0x4b, 0x7a, 0xdb, 0x78, 0xb1, 0xfc, 0x90, 0x44, 0x54, 0xa2, 0x8a, 0x37, 0x85, 0x14, 0xcc, 0xef, 0x80, 0xec, 0xc7, 0x0c, 0x1d, 0x8e, 0x55, 0xf1, 0x13, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9335 = { .name = "ecdsa_secp384r1_sha384_9335", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9335_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9335_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9335_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9336 for ECDSA, tcId is 265 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9336_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9336_msg[] = { 0x32, 0x37, 0x35, 0x36, 0x34, 0x36, 0x36, 0x35, 0x32, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9336_sig[] = { 0xf0, 0x4b, 0x9e, 0x17, 0xc7, 0x1d, 0x2d, 0x21, 0x33, 0xea, 0x38, 0x0d, 0x71, 0xb6, 0xb8, 0x2c, 0x8a, 0x8e, 0x33, 0x32, 0x70, 0x3e, 0x9d, 0x53, 0x5b, 0x2c, 0x2b, 0xca, 0x9b, 0x0a, 0xd5, 0x86, 0xd1, 0x76, 0xa6, 0x04, 0x9a, 0xfa, 0x35, 0xed, 0xd9, 0x72, 0x2e, 0xdb, 0x5c, 0x33, 0xda, 0xa3, 0xbd, 0x44, 0xd4, 0xa6, 0x26, 0x33, 0x80, 0xca, 0x6f, 0x22, 0xe7, 0x6c, 0x26, 0xd5, 0xf7, 0x0f, 0x41, 0xf4, 0xd7, 0xca, 0xe7, 0xd4, 0xb9, 0xc1, 0xb8, 0xdc, 0x2b, 0xa5, 0x29, 0x8d, 0x9d, 0x12, 0x40, 0x8b, 0x04, 0x61, 0x4e, 0x2f, 0x37, 0x96, 0xcc, 0x19, 0xc9, 0x50, 0xc8, 0xc8, 0x8a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9336 = { .name = "ecdsa_secp384r1_sha384_9336", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9336_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9336_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9336_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9337 for ECDSA, tcId is 266 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9337_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9337_msg[] = { 0x31, 0x31, 0x39, 0x36, 0x39, 0x37, 0x31, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9337_sig[] = { 0xc8, 0x80, 0x73, 0x51, 0xd8, 0xe2, 0x61, 0x33, 0x8e, 0x75, 0x0c, 0xb9, 0xa5, 0x2f, 0x4b, 0xe4, 0x47, 0x0b, 0x63, 0xf6, 0xf1, 0x81, 0xcb, 0xe0, 0xe8, 0x1d, 0x43, 0xb6, 0x08, 0x24, 0xba, 0x4b, 0xe1, 0xbb, 0xa4, 0x2b, 0x17, 0x83, 0x89, 0x7a, 0x0d, 0x72, 0xb0, 0x61, 0x40, 0x18, 0xb0, 0x2f, 0x52, 0xe3, 0xa5, 0x98, 0xc8, 0xbe, 0x98, 0x21, 0x27, 0xe9, 0x61, 0xee, 0xd2, 0xb0, 0x4f, 0x21, 0xc8, 0x6d, 0xf4, 0xeb, 0xca, 0xb0, 0xd9, 0x55, 0xa7, 0xc6, 0x6e, 0xc7, 0xf8, 0x18, 0x89, 0x87, 0x98, 0xee, 0x75, 0x36, 0x7a, 0x85, 0x02, 0x22, 0x76, 0xb9, 0x12, 0xc0, 0xa0, 0x72, 0xbf, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9337 = { .name = "ecdsa_secp384r1_sha384_9337", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9337_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9337_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9337_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9338 for ECDSA, tcId is 267 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9338_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9338_msg[] = { 0x32, 0x33, 0x33, 0x31, 0x34, 0x32, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9338_sig[] = { 0x61, 0x52, 0x84, 0x1b, 0x6f, 0xb4, 0x60, 0x54, 0x6e, 0xeb, 0x41, 0x58, 0xa3, 0xe5, 0xff, 0xa5, 0x4f, 0x51, 0xaa, 0x6a, 0x20, 0x89, 0x87, 0xbe, 0x89, 0x9b, 0x70, 0x60, 0x55, 0xcd, 0x59, 0xd8, 0xec, 0x7c, 0x01, 0xf4, 0x63, 0x42, 0x54, 0xfe, 0x05, 0x0e, 0x1d, 0x4e, 0xc5, 0x25, 0xa1, 0x73, 0x73, 0xf0, 0xc5, 0xf1, 0x36, 0x40, 0xd8, 0x92, 0xc2, 0x8f, 0x70, 0x14, 0x28, 0xe8, 0xfb, 0xfb, 0x73, 0x6b, 0x64, 0x78, 0xbb, 0xd9, 0x72, 0xc8, 0xc6, 0x84, 0x97, 0x75, 0x56, 0xed, 0x59, 0x9a, 0x70, 0xd3, 0x13, 0xe0, 0x6b, 0x12, 0x60, 0x80, 0xe1, 0x30, 0x68, 0xd5, 0x6e, 0x1c, 0x10, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9338 = { .name = "ecdsa_secp384r1_sha384_9338", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9338_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9338_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9338_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9339 for ECDSA, tcId is 268 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9339_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9339_msg[] = { 0x31, 0x36, 0x37, 0x33, 0x34, 0x38, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9339_sig[] = { 0x84, 0x2f, 0x8d, 0x28, 0x14, 0xf5, 0xb7, 0x16, 0x3f, 0x4b, 0x21, 0xbd, 0x97, 0x27, 0x24, 0x6e, 0x07, 0x8a, 0xd1, 0xe7, 0x43, 0x5d, 0xfe, 0x1b, 0xc5, 0xf9, 0xe0, 0xe7, 0x37, 0x42, 0x32, 0xe6, 0x86, 0xb9, 0xb9, 0x8b, 0x73, 0xde, 0xab, 0x9e, 0x43, 0xb3, 0xb7, 0xf2, 0x54, 0x16, 0xc2, 0xbe, 0x85, 0x2c, 0x10, 0x6c, 0x41, 0x23, 0x00, 0xba, 0xc3, 0xba, 0x26, 0x59, 0x90, 0xb4, 0x28, 0xa2, 0x60, 0x76, 0xab, 0x3f, 0x00, 0xfd, 0x76, 0x57, 0xbb, 0xd9, 0x31, 0x5f, 0xa1, 0xcd, 0x2a, 0x12, 0x30, 0xa9, 0xa6, 0x0d, 0x06, 0xb7, 0xaf, 0x87, 0xaa, 0x0a, 0x6c, 0xf3, 0xf4, 0x8b, 0x34, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9339 = { .name = "ecdsa_secp384r1_sha384_9339", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9339_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9339_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9339_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9340 for ECDSA, tcId is 269 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9340_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9340_msg[] = { 0x31, 0x34, 0x36, 0x30, 0x31, 0x35, 0x39, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9340_sig[] = { 0xe1, 0x3f, 0x6d, 0x63, 0x8b, 0x9d, 0x4f, 0xba, 0x54, 0xaa, 0x43, 0x6a, 0x94, 0x5c, 0xfe, 0xa6, 0x6d, 0xec, 0x05, 0x8f, 0xab, 0x6f, 0x02, 0x62, 0x93, 0x26, 0x58, 0x84, 0x45, 0x7b, 0x5a, 0x86, 0xe8, 0xe9, 0x27, 0xd6, 0x99, 0xbc, 0x64, 0x43, 0x1b, 0x71, 0xe3, 0xd4, 0x1d, 0xf2, 0x00, 0x44, 0x98, 0x32, 0xcd, 0x1b, 0x41, 0x77, 0x11, 0x8e, 0xd2, 0x47, 0xb4, 0xf3, 0x12, 0x77, 0xda, 0x15, 0xf4, 0x20, 0x17, 0x9f, 0x45, 0xc7, 0x1a, 0x23, 0x7d, 0x77, 0xf5, 0x99, 0xa4, 0x5d, 0xf6, 0x82, 0x47, 0xba, 0xc3, 0xdc, 0xef, 0x08, 0x68, 0xec, 0xd1, 0x66, 0x50, 0x05, 0xc2, 0x5b, 0x7c, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9340 = { .name = "ecdsa_secp384r1_sha384_9340", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9340_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9340_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9340_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9341 for ECDSA, tcId is 270 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9341_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9341_msg[] = { 0x38, 0x39, 0x39, 0x30, 0x38, 0x35, 0x39, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9341_sig[] = { 0x09, 0xff, 0xf1, 0xc2, 0xe4, 0xff, 0x86, 0x43, 0xcb, 0xfa, 0xd5, 0x88, 0x62, 0x0c, 0x2b, 0xf7, 0xaa, 0xca, 0x5c, 0xf4, 0x24, 0x29, 0x69, 0x14, 0x2c, 0x71, 0x45, 0xb9, 0x27, 0xbd, 0x82, 0xed, 0x14, 0xf3, 0xae, 0x8c, 0x6e, 0x2c, 0xe2, 0xda, 0x63, 0xb9, 0x90, 0xb9, 0xf1, 0xbe, 0x6d, 0x64, 0x78, 0x0c, 0x81, 0x6f, 0x6c, 0x86, 0x34, 0x3b, 0x00, 0x82, 0x35, 0xee, 0x98, 0x6a, 0xbf, 0x21, 0x36, 0x12, 0x3e, 0xd2, 0x47, 0xe4, 0x75, 0x1e, 0x4d, 0x54, 0x67, 0x33, 0x4f, 0x08, 0xe5, 0xe2, 0xca, 0x11, 0x61, 0x25, 0x4f, 0x68, 0xc3, 0xe6, 0x67, 0x8e, 0x2d, 0x0b, 0x87, 0xd1, 0xcc, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9341 = { .name = "ecdsa_secp384r1_sha384_9341", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9341_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9341_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9341_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9342 for ECDSA, tcId is 271 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9342_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9342_msg[] = { 0x34, 0x33, 0x32, 0x36, 0x34, 0x34, 0x30, 0x39, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9342_sig[] = { 0xff, 0xae, 0x6e, 0x7d, 0x2c, 0xea, 0x71, 0xb5, 0xa9, 0xc7, 0x3c, 0xbc, 0x12, 0x85, 0xa8, 0xd2, 0x52, 0x94, 0x97, 0x72, 0xaf, 0xe1, 0xaa, 0x27, 0xfb, 0x13, 0x77, 0x40, 0xfc, 0x42, 0x9c, 0x2a, 0x8c, 0x86, 0x48, 0xc9, 0xa5, 0xba, 0x67, 0x8a, 0x32, 0xf7, 0xae, 0x76, 0x89, 0xb3, 0x95, 0xca, 0x89, 0xd5, 0x4c, 0xd1, 0x3a, 0x16, 0x2c, 0x34, 0x18, 0x9f, 0xf5, 0x24, 0x81, 0x36, 0x90, 0xe7, 0x97, 0x68, 0xaf, 0x8e, 0xbe, 0x79, 0x4c, 0xc9, 0x41, 0xdf, 0xe7, 0xfd, 0xf2, 0xcb, 0x8d, 0xd0, 0xb4, 0x25, 0x19, 0xf0, 0x34, 0xea, 0x4d, 0x4f, 0x1c, 0x87, 0x00, 0x46, 0xd1, 0x32, 0x10, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9342 = { .name = "ecdsa_secp384r1_sha384_9342", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9342_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9342_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9342_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9343 for ECDSA, tcId is 272 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9343_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9343_msg[] = { 0x32, 0x33, 0x37, 0x36, 0x34, 0x33, 0x37, 0x35, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9343_sig[] = { 0xef, 0xa3, 0xc5, 0xfc, 0x3c, 0x8b, 0xe1, 0x00, 0x74, 0x75, 0xa2, 0xdb, 0xd4, 0x6e, 0x35, 0x78, 0xbb, 0x30, 0x57, 0x94, 0x45, 0x90, 0x9c, 0x24, 0x45, 0xf8, 0x50, 0xfb, 0x8a, 0xa6, 0x0a, 0xa5, 0xb1, 0x74, 0x9c, 0xc3, 0x40, 0x0d, 0x8f, 0xfd, 0x81, 0xcb, 0x88, 0x32, 0xb5, 0x0d, 0x27, 0xb4, 0xb3, 0x6a, 0x08, 0xdb, 0x38, 0x45, 0xb3, 0xd2, 0xeb, 0xd2, 0xc3, 0x35, 0x48, 0x0f, 0x12, 0xfb, 0x83, 0xf2, 0xa7, 0x35, 0x18, 0x41, 0xea, 0x38, 0x42, 0xec, 0x62, 0xad, 0x90, 0x4b, 0x09, 0x8e, 0xfb, 0xf9, 0xfa, 0xa7, 0x82, 0x8b, 0x9c, 0x18, 0x57, 0x46, 0xd9, 0xc8, 0xbd, 0x04, 0x7d, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9343 = { .name = "ecdsa_secp384r1_sha384_9343", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9343_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9343_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9343_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9344 for ECDSA, tcId is 273 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9344_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9344_msg[] = { 0x38, 0x36, 0x30, 0x33, 0x39, 0x37, 0x37, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9344_sig[] = { 0xf5, 0x77, 0x09, 0x5f, 0x7c, 0x74, 0x59, 0x4a, 0xa1, 0xc6, 0x9a, 0xca, 0x9b, 0xb2, 0x6e, 0x0c, 0x74, 0x75, 0xae, 0x51, 0x63, 0x05, 0x8e, 0xcc, 0x07, 0x4b, 0x03, 0xaf, 0x89, 0xe5, 0x6b, 0x12, 0xb6, 0xa7, 0x24, 0x50, 0x58, 0x9d, 0xac, 0xf0, 0xd7, 0xe6, 0xb1, 0x72, 0xd0, 0x01, 0x7a, 0x0e, 0xbe, 0xe7, 0x56, 0xa0, 0xb5, 0xd0, 0xa6, 0x77, 0xbf, 0x95, 0xf9, 0x8d, 0xa5, 0x12, 0x85, 0x4f, 0x3e, 0xcb, 0x71, 0x2f, 0x94, 0x57, 0x0e, 0x1a, 0xd2, 0x30, 0xea, 0xb1, 0x7c, 0x52, 0x7b, 0x6a, 0x8b, 0xcc, 0x9a, 0xe2, 0x02, 0xb6, 0x57, 0xa3, 0x61, 0x1e, 0xcf, 0xfa, 0x94, 0xba, 0x0d, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9344 = { .name = "ecdsa_secp384r1_sha384_9344", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9344_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9344_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9344_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9345 for ECDSA, tcId is 274 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9345_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9345_msg[] = { 0x35, 0x38, 0x30, 0x37, 0x37, 0x37, 0x33, 0x39, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9345_sig[] = { 0x0a, 0xe7, 0x68, 0x8c, 0x7d, 0xe5, 0x88, 0x2e, 0xb9, 0xc3, 0x17, 0x2f, 0x55, 0x00, 0x01, 0x55, 0x52, 0xf9, 0x98, 0xfb, 0x53, 0x70, 0x2c, 0x6c, 0xd4, 0xb0, 0x34, 0x04, 0xd5, 0xa0, 0x51, 0x0a, 0x80, 0x73, 0xdb, 0x95, 0xdb, 0x54, 0x48, 0x08, 0xdb, 0xd7, 0x66, 0x59, 0xfd, 0x20, 0xcf, 0x12, 0xbc, 0x61, 0x0f, 0xe5, 0xf0, 0x4d, 0x89, 0x09, 0xcc, 0x43, 0x96, 0x15, 0xfb, 0x7e, 0x30, 0x2d, 0x3d, 0x82, 0x99, 0x28, 0x17, 0x64, 0x7c, 0x50, 0xc1, 0xf4, 0x67, 0x09, 0x0a, 0x52, 0xb3, 0x28, 0xcb, 0xbc, 0x02, 0x62, 0xf1, 0x8f, 0xfb, 0x6f, 0xd9, 0xf3, 0xbd, 0x60, 0x01, 0x3c, 0xea, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9345 = { .name = "ecdsa_secp384r1_sha384_9345", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9345_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9345_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9345_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9346 for ECDSA, tcId is 275 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9346_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9346_msg[] = { 0x35, 0x37, 0x31, 0x38, 0x36, 0x36, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9346_sig[] = { 0x5d, 0xc8, 0xa6, 0xd8, 0x4a, 0xfa, 0xaf, 0x90, 0x0d, 0x78, 0xc6, 0xa9, 0x1d, 0xc5, 0xe1, 0x2e, 0x7d, 0x17, 0x89, 0x1a, 0x52, 0xc1, 0x46, 0x82, 0x53, 0x06, 0x1d, 0x70, 0x4b, 0x89, 0x40, 0xbe, 0xf8, 0x5b, 0x9f, 0xe8, 0x07, 0xa0, 0xe0, 0x2b, 0x56, 0xe8, 0xdd, 0x37, 0xc2, 0x2f, 0xbb, 0x82, 0x91, 0x42, 0x58, 0xde, 0x52, 0x93, 0x2c, 0x46, 0x04, 0xdc, 0xeb, 0x5c, 0xe7, 0xcc, 0x0a, 0x92, 0xe0, 0x21, 0xed, 0xca, 0x9b, 0x81, 0x9b, 0x84, 0xa9, 0xf2, 0x56, 0x52, 0xf9, 0xaf, 0x13, 0xf9, 0x56, 0xa1, 0x13, 0x9e, 0xe9, 0x5c, 0x7a, 0xa7, 0xa0, 0x79, 0xe3, 0xad, 0x83, 0x17, 0xfb, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9346 = { .name = "ecdsa_secp384r1_sha384_9346", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9346_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9346_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9346_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9347 for ECDSA, tcId is 276 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9347_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9347_msg[] = { 0x38, 0x36, 0x37, 0x37, 0x33, 0x30, 0x39, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9347_sig[] = { 0xda, 0x55, 0xa6, 0xdb, 0xb8, 0x45, 0x20, 0x5c, 0x87, 0xc9, 0x95, 0xb0, 0xbb, 0xc8, 0x44, 0x4f, 0xfc, 0xba, 0x6e, 0xb1, 0xf4, 0xeb, 0x9d, 0x30, 0xf7, 0x21, 0xd2, 0xda, 0xcc, 0x19, 0x8f, 0xb1, 0xa8, 0x29, 0x60, 0x75, 0xe6, 0x8e, 0xb3, 0xd2, 0x5e, 0xf5, 0x96, 0xa9, 0x52, 0xb8, 0xea, 0x19, 0x82, 0x9f, 0x67, 0x1d, 0xcc, 0xad, 0x6d, 0x7b, 0x0b, 0x8c, 0x4b, 0x39, 0xff, 0x3f, 0x42, 0x59, 0x79, 0x65, 0xd5, 0x5c, 0x64, 0x5f, 0xb8, 0x80, 0xa6, 0x6f, 0xe1, 0x98, 0xd9, 0x34, 0x4c, 0x93, 0x11, 0xf1, 0x59, 0x89, 0x30, 0x39, 0x24, 0x70, 0x37, 0x9f, 0xa5, 0xff, 0x43, 0xc7, 0x5d, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9347 = { .name = "ecdsa_secp384r1_sha384_9347", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9347_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9347_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9347_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9348 for ECDSA, tcId is 277 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9348_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9348_msg[] = { 0x32, 0x34, 0x37, 0x35, 0x35, 0x31, 0x35, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9348_sig[] = { 0x37, 0x30, 0xdf, 0xd0, 0x98, 0x5d, 0xe7, 0x7d, 0xec, 0xdd, 0x35, 0x8a, 0x54, 0x4b, 0x47, 0xf4, 0x18, 0xd3, 0xfa, 0xb4, 0x24, 0x81, 0x53, 0x0d, 0x5d, 0x51, 0x48, 0x59, 0x89, 0x4c, 0x6f, 0x23, 0xb7, 0x29, 0xaf, 0x72, 0xb4, 0x46, 0x86, 0x05, 0x8d, 0xe2, 0x96, 0x87, 0xb3, 0x4b, 0x3b, 0x0c, 0x65, 0xbd, 0xfa, 0xf0, 0xac, 0x21, 0x7a, 0x80, 0xb8, 0x2e, 0xb0, 0x9c, 0x9f, 0x59, 0xc5, 0xc8, 0xcf, 0xbf, 0x50, 0xa6, 0xeb, 0x97, 0x9a, 0x8f, 0x5f, 0x63, 0xea, 0xb9, 0xbd, 0x38, 0xee, 0x09, 0x38, 0xe4, 0xb2, 0x31, 0x02, 0x11, 0x20, 0x33, 0xb2, 0x30, 0xa1, 0x4a, 0xd2, 0x79, 0x0e, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9348 = { .name = "ecdsa_secp384r1_sha384_9348", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9348_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9348_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9348_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9349 for ECDSA, tcId is 278 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9349_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9349_msg[] = { 0x39, 0x37, 0x33, 0x31, 0x37, 0x36, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9349_sig[] = { 0x55, 0x21, 0x0d, 0xf2, 0x12, 0x4c, 0x17, 0x0e, 0x25, 0x9a, 0xf1, 0xda, 0xfa, 0x73, 0xe6, 0x66, 0x13, 0xaa, 0x18, 0xce, 0xd8, 0xeb, 0x40, 0xa7, 0xf6, 0x61, 0x55, 0xd5, 0x0d, 0x5f, 0x31, 0x24, 0xed, 0xfa, 0x55, 0x27, 0x6d, 0xe4, 0x79, 0x70, 0x13, 0x17, 0x72, 0x91, 0xe8, 0xaf, 0xef, 0xf6, 0xc3, 0x14, 0xd3, 0xa3, 0x10, 0xa6, 0x06, 0x47, 0xda, 0xd3, 0x31, 0x8e, 0xd7, 0xf0, 0x40, 0x5a, 0x64, 0xc3, 0xf9, 0x4b, 0x5a, 0xc9, 0x8e, 0x6b, 0xe1, 0x22, 0x08, 0xc8, 0xad, 0x98, 0x35, 0xfa, 0x6b, 0x81, 0xa0, 0xea, 0x59, 0xf4, 0x76, 0x60, 0x86, 0x34, 0x65, 0x7b, 0x66, 0xe0, 0x0f, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9349 = { .name = "ecdsa_secp384r1_sha384_9349", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9349_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9349_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9349_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9350 for ECDSA, tcId is 279 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9350_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9350_msg[] = { 0x33, 0x36, 0x39, 0x38, 0x30, 0x39, 0x35, 0x31, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9350_sig[] = { 0xf6, 0xc9, 0x89, 0x71, 0x44, 0xb5, 0xd8, 0x49, 0x64, 0x51, 0x5e, 0xb0, 0xc8, 0xc3, 0xd0, 0xd9, 0xc6, 0x68, 0x7c, 0x95, 0x78, 0x87, 0xe9, 0x3c, 0x29, 0xb2, 0xa2, 0x18, 0x04, 0xb4, 0x03, 0x07, 0xfb, 0x88, 0xbf, 0xd5, 0xcc, 0xa1, 0x1c, 0x95, 0x88, 0x5d, 0x28, 0x86, 0x7c, 0xb3, 0x3a, 0x74, 0x65, 0x6b, 0xaf, 0xca, 0x24, 0x22, 0x90, 0xf7, 0xd7, 0xe9, 0x80, 0x1b, 0x6c, 0xfd, 0x4b, 0xd1, 0xb0, 0x7e, 0x8d, 0x7c, 0x6c, 0x1c, 0x59, 0xfd, 0x3d, 0x8e, 0x82, 0xe9, 0x84, 0x6a, 0x1b, 0x28, 0x55, 0xc8, 0x54, 0x20, 0xe4, 0xee, 0x6e, 0xc2, 0xd9, 0x7f, 0xec, 0x21, 0x61, 0xee, 0xb2, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9350 = { .name = "ecdsa_secp384r1_sha384_9350", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9350_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9350_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9350_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9351 for ECDSA, tcId is 280 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9351_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9351_msg[] = { 0x31, 0x30, 0x37, 0x35, 0x30, 0x32, 0x36, 0x38, 0x35, 0x37, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9351_sig[] = { 0xbf, 0xbc, 0xc5, 0xf3, 0x43, 0xe2, 0xab, 0x39, 0x2c, 0xe6, 0xc1, 0xc0, 0x2d, 0x91, 0xc0, 0x06, 0x50, 0xc4, 0x71, 0x36, 0x83, 0x6a, 0x5d, 0x06, 0x22, 0xd4, 0x76, 0xac, 0x2b, 0x32, 0x74, 0x39, 0x57, 0x21, 0xb1, 0xab, 0x21, 0x88, 0x2e, 0xd5, 0xca, 0xbe, 0xd0, 0x93, 0xb4, 0x3b, 0x13, 0x3f, 0x04, 0x3e, 0x9f, 0xc6, 0x4c, 0x61, 0x08, 0xdf, 0x73, 0xf9, 0xec, 0xed, 0x90, 0xf9, 0x11, 0x85, 0xf8, 0x3d, 0x89, 0x66, 0x2f, 0x5a, 0x9d, 0x81, 0x0c, 0x18, 0x24, 0xfb, 0xfd, 0x97, 0xb8, 0x42, 0xf7, 0x84, 0x30, 0x5f, 0xd6, 0xb9, 0xc2, 0x8c, 0x80, 0xd3, 0x2d, 0x52, 0xb1, 0x53, 0x8d, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9351 = { .name = "ecdsa_secp384r1_sha384_9351", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9351_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9351_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha384_9351_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9352 for ECDSA, tcId is 281 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9352_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9352_msg[] = { 0x38, 0x36, 0x39, 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9352_sig[] = { 0xb8, 0xf7, 0x93, 0xdd, 0xd4, 0x7e, 0x65, 0x7a, 0x90, 0x81, 0xcb, 0xed, 0x16, 0x00, 0xfb, 0x22, 0xb3, 0x8a, 0xd6, 0xa1, 0x55, 0xf9, 0xc0, 0x06, 0xba, 0x98, 0xde, 0x1f, 0x38, 0x3b, 0x4c, 0x09, 0x18, 0xce, 0xea, 0x72, 0x25, 0x3e, 0x0f, 0x86, 0x95, 0x24, 0xb2, 0x36, 0x9c, 0xd9, 0xbd, 0x8c, 0x96, 0xc4, 0x52, 0xff, 0x58, 0xf4, 0x2e, 0x08, 0x53, 0x04, 0x0a, 0x6d, 0x5c, 0x7e, 0x75, 0x0b, 0x57, 0xdd, 0x4a, 0xf0, 0x6e, 0x2d, 0xf8, 0x19, 0x4e, 0x8d, 0x52, 0x4e, 0x81, 0xac, 0x00, 0x0e, 0xe3, 0x31, 0x5b, 0xbe, 0xab, 0xbf, 0x6a, 0x21, 0xf6, 0x1b, 0x89, 0x04, 0xc5, 0x53, 0x78, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9352 = { .name = "ecdsa_secp384r1_sha384_9352", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9352_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9352_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9352_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9353 for ECDSA, tcId is 282 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9353_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9353_msg[] = { 0x32, 0x31, 0x37, 0x34, 0x36, 0x35, 0x35, 0x34, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9353_sig[] = { 0x26, 0x3a, 0xb1, 0xc9, 0x35, 0x67, 0xe9, 0x3b, 0x5e, 0xc4, 0xe3, 0x80, 0xb0, 0xd3, 0xbb, 0x5e, 0xa1, 0xce, 0x69, 0x3c, 0x14, 0xa4, 0x7a, 0xfc, 0xcc, 0x53, 0x9a, 0xaf, 0x19, 0x7f, 0x09, 0x9d, 0x33, 0x1e, 0xa9, 0xe2, 0x6f, 0x1a, 0x00, 0x57, 0x14, 0x8d, 0x46, 0x72, 0x7a, 0xcb, 0x61, 0x88, 0x62, 0x1d, 0xb0, 0x7c, 0xe9, 0x41, 0x10, 0xe2, 0xbe, 0x74, 0xfa, 0x95, 0x3a, 0x00, 0xa8, 0xa5, 0x54, 0x22, 0x5b, 0x3f, 0x2c, 0x0f, 0x6c, 0x56, 0xb4, 0xeb, 0xd4, 0xdb, 0x2f, 0x57, 0xca, 0x25, 0x65, 0xed, 0x33, 0x23, 0xfd, 0x70, 0x8b, 0xb5, 0x6a, 0xc6, 0xe2, 0x8b, 0xfb, 0x40, 0xf2, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9353 = { .name = "ecdsa_secp384r1_sha384_9353", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9353_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9353_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9353_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9354 for ECDSA, tcId is 283 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9354_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9354_msg[] = { 0x36, 0x34, 0x34, 0x35, 0x35, 0x30, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9354_sig[] = { 0x96, 0xf4, 0xa2, 0xb3, 0x52, 0x9c, 0x65, 0xe4, 0x5a, 0x0b, 0x4c, 0x19, 0xc5, 0x82, 0xdc, 0x8d, 0xb6, 0x35, 0xd4, 0xe7, 0x4f, 0x0b, 0x81, 0x30, 0x96, 0x96, 0xb2, 0x3b, 0xe9, 0x20, 0xba, 0x8e, 0xc5, 0x53, 0xd4, 0xb3, 0x70, 0xdf, 0x4c, 0x59, 0xd7, 0x4d, 0xd6, 0x54, 0xba, 0xc6, 0xdf, 0x58, 0x15, 0x73, 0xba, 0x1b, 0x28, 0x0c, 0x73, 0x5a, 0x34, 0x01, 0xd9, 0x57, 0xec, 0xd3, 0xb8, 0x90, 0x8e, 0x4e, 0x0b, 0x7d, 0x80, 0x23, 0x9c, 0xe0, 0x42, 0x59, 0x4d, 0x18, 0x2f, 0xaf, 0x2d, 0xdf, 0x81, 0x1c, 0x90, 0x56, 0xaa, 0xc4, 0xc8, 0x7f, 0x4f, 0x85, 0x04, 0x37, 0x66, 0xa2, 0x66, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9354 = { .name = "ecdsa_secp384r1_sha384_9354", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9354_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9354_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9354_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9355 for ECDSA, tcId is 284 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9355_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9355_msg[] = { 0x35, 0x33, 0x32, 0x38, 0x31, 0x38, 0x33, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9355_sig[] = { 0x96, 0xa6, 0x91, 0xb1, 0x9a, 0x62, 0x94, 0xb3, 0x11, 0xa4, 0x38, 0xf8, 0xda, 0x34, 0x5e, 0x48, 0x0b, 0x1d, 0xea, 0xa1, 0xe9, 0x40, 0xcf, 0xbf, 0x02, 0x17, 0x7d, 0x5f, 0x08, 0x47, 0x99, 0x76, 0xea, 0x58, 0xae, 0xe3, 0x10, 0x11, 0xd5, 0x0b, 0x55, 0x42, 0xbe, 0x18, 0x8c, 0x9d, 0x63, 0xdf, 0x8f, 0x67, 0xdc, 0x9e, 0x15, 0x88, 0xae, 0xb8, 0xbe, 0x18, 0x00, 0x13, 0xd4, 0x1a, 0x03, 0x6f, 0x9b, 0xad, 0xfa, 0xd9, 0xfe, 0x93, 0x40, 0x91, 0x0c, 0xbf, 0x87, 0x24, 0x37, 0x76, 0xf5, 0x4b, 0xef, 0x7d, 0xa2, 0xeb, 0xf3, 0xa7, 0x64, 0x38, 0x66, 0xeb, 0x9a, 0x3b, 0x23, 0xfe, 0x59, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9355 = { .name = "ecdsa_secp384r1_sha384_9355", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9355_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9355_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9355_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9356 for ECDSA, tcId is 285 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9356_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9356_msg[] = { 0x31, 0x31, 0x39, 0x32, 0x30, 0x37, 0x36, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9356_sig[] = { 0xcf, 0xf2, 0x79, 0x48, 0xc6, 0xd9, 0x02, 0xc7, 0x3d, 0x10, 0x3d, 0x08, 0x02, 0xeb, 0x14, 0x4d, 0xd8, 0x9c, 0x1b, 0x0e, 0x3b, 0x9f, 0x9a, 0x5e, 0x49, 0x8b, 0x03, 0x61, 0xdc, 0x12, 0x2a, 0x0d, 0x55, 0x51, 0x60, 0xd8, 0xc6, 0x4d, 0x61, 0x53, 0x9c, 0x1d, 0xbb, 0xd4, 0xbc, 0x18, 0x97, 0x1f, 0xb6, 0x08, 0x27, 0x48, 0x8c, 0x9f, 0x16, 0xba, 0x28, 0x37, 0x8f, 0xd5, 0x9b, 0x1a, 0x29, 0xc6, 0x50, 0x73, 0x33, 0x5a, 0x7f, 0x23, 0x61, 0x31, 0x13, 0x46, 0x74, 0xc6, 0x2c, 0x83, 0x96, 0xf1, 0x93, 0xc7, 0x6f, 0x23, 0x95, 0xdd, 0xaa, 0xa4, 0xf2, 0x4b, 0x69, 0x16, 0x1e, 0xb6, 0x9b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9356 = { .name = "ecdsa_secp384r1_sha384_9356", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9356_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9356_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9356_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9357 for ECDSA, tcId is 286 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9357_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9357_msg[] = { 0x31, 0x35, 0x33, 0x32, 0x38, 0x34, 0x32, 0x32, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9357_sig[] = { 0xe9, 0x0e, 0x22, 0xd9, 0xe5, 0x35, 0xdf, 0xdf, 0xd8, 0x6e, 0x09, 0x8d, 0x5d, 0x6a, 0x0a, 0xe0, 0x8f, 0x69, 0xd4, 0xa3, 0xff, 0xaa, 0x39, 0xf6, 0x93, 0x0b, 0xcf, 0x5f, 0x5a, 0xd0, 0x2e, 0xe0, 0xd0, 0x47, 0x2a, 0xe9, 0x84, 0xed, 0xd9, 0xf0, 0xbb, 0xe5, 0xe7, 0xd6, 0x3f, 0xd4, 0xf6, 0xac, 0xe3, 0xf5, 0x7b, 0x0a, 0x46, 0x29, 0xec, 0xaa, 0x21, 0xf2, 0xd3, 0x4a, 0x7a, 0x08, 0x34, 0xd5, 0x7b, 0xa2, 0x0f, 0x99, 0xc6, 0xe3, 0x1b, 0x43, 0xc3, 0x78, 0x11, 0xcc, 0x23, 0xb9, 0x95, 0x7c, 0x8f, 0x33, 0x56, 0xf4, 0x46, 0x22, 0x14, 0xd3, 0xc8, 0xe5, 0x87, 0x45, 0xe5, 0x0f, 0x23, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9357 = { .name = "ecdsa_secp384r1_sha384_9357", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9357_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9357_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9357_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9358 for ECDSA, tcId is 287 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9358_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9358_msg[] = { 0x31, 0x35, 0x36, 0x37, 0x31, 0x37, 0x37, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9358_sig[] = { 0x18, 0xb7, 0x0e, 0x27, 0x2a, 0x98, 0xcc, 0x48, 0xe1, 0xe0, 0xaf, 0x73, 0x14, 0x6f, 0x0f, 0x97, 0x2b, 0xbf, 0xbe, 0xb6, 0xb9, 0x85, 0xfe, 0xb2, 0xc4, 0xac, 0xd6, 0x95, 0xa7, 0xa4, 0x1b, 0x99, 0xc4, 0x15, 0xbe, 0x9c, 0x46, 0xae, 0xda, 0xf3, 0xdd, 0xff, 0x67, 0xa6, 0x5a, 0x89, 0xe3, 0x87, 0x47, 0xd6, 0xbc, 0xea, 0x08, 0x8f, 0x62, 0x2a, 0xd3, 0x5d, 0x88, 0xbc, 0xf4, 0x6d, 0x71, 0x82, 0x7b, 0xcb, 0xa2, 0xf5, 0x7c, 0x36, 0xd6, 0xfb, 0x8a, 0x4b, 0xf2, 0xbe, 0xfd, 0xc0, 0xd4, 0xe3, 0xef, 0x36, 0x6d, 0x59, 0x66, 0xc4, 0xd0, 0x76, 0xd3, 0xcf, 0xa4, 0x3d, 0x66, 0x26, 0x71, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9358 = { .name = "ecdsa_secp384r1_sha384_9358", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9358_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9358_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9358_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9359 for ECDSA, tcId is 288 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9359_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9359_msg[] = { 0x34, 0x33, 0x30, 0x33, 0x30, 0x39, 0x31, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9359_sig[] = { 0xac, 0xfd, 0x98, 0x1c, 0x55, 0xfd, 0x52, 0x86, 0xcf, 0xce, 0x17, 0x37, 0x26, 0xd5, 0x1c, 0x3d, 0x25, 0xf6, 0x5b, 0x11, 0xb7, 0x67, 0x37, 0x29, 0xa6, 0x21, 0x67, 0x25, 0x67, 0x74, 0xf7, 0xc8, 0x94, 0xb7, 0x46, 0x62, 0xa2, 0x12, 0xc7, 0x06, 0xe0, 0x0c, 0xef, 0x09, 0x60, 0x74, 0x16, 0x2f, 0xf4, 0xd4, 0x71, 0xc9, 0x77, 0x97, 0xc2, 0x4d, 0x96, 0xae, 0xc1, 0xde, 0x85, 0xa2, 0x49, 0xef, 0x46, 0x8d, 0x60, 0x36, 0xcd, 0x71, 0x25, 0x63, 0xae, 0xb6, 0x5c, 0xea, 0x49, 0x95, 0xf3, 0xee, 0x85, 0xe7, 0x69, 0xb8, 0x74, 0xf0, 0x9a, 0x08, 0x63, 0x7a, 0x44, 0xa9, 0x60, 0x84, 0xbe, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9359 = { .name = "ecdsa_secp384r1_sha384_9359", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9359_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9359_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9359_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9360 for ECDSA, tcId is 289 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9360_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9360_msg[] = { 0x37, 0x37, 0x33, 0x35, 0x39, 0x31, 0x35, 0x35, 0x38, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9360_sig[] = { 0xf1, 0x5f, 0xcb, 0xee, 0xa8, 0xb6, 0x4d, 0xad, 0x5e, 0x85, 0x66, 0xa2, 0xc3, 0x79, 0x13, 0xc8, 0x2d, 0x6b, 0xe9, 0xd9, 0x66, 0x8d, 0xf4, 0x69, 0xbd, 0x0b, 0x59, 0x1c, 0x39, 0x23, 0xa6, 0xe1, 0x26, 0x44, 0xea, 0xf6, 0x97, 0xd4, 0x66, 0xfa, 0x7c, 0xd5, 0x13, 0x98, 0x3d, 0x94, 0x6a, 0x40, 0x70, 0x06, 0x39, 0x66, 0x80, 0x10, 0x79, 0x35, 0x15, 0x26, 0x99, 0x9e, 0x5c, 0x5c, 0x2c, 0x5f, 0x62, 0x7e, 0x4c, 0x8b, 0xc9, 0x67, 0x84, 0xbc, 0xbe, 0x71, 0x5f, 0xe7, 0xc7, 0xaf, 0xcf, 0x69, 0x78, 0x5d, 0x1c, 0x8c, 0x7c, 0xcd, 0x37, 0x25, 0xe3, 0x64, 0x10, 0x16, 0x38, 0x39, 0x65, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9360 = { .name = "ecdsa_secp384r1_sha384_9360", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9360_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9360_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9360_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9361 for ECDSA, tcId is 290 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9361_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9361_msg[] = { 0x32, 0x34, 0x33, 0x39, 0x36, 0x36, 0x37, 0x34, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9361_sig[] = { 0xd9, 0x95, 0x14, 0x79, 0x39, 0xae, 0x6d, 0x8f, 0x62, 0xbb, 0x57, 0x37, 0x22, 0x27, 0x39, 0x58, 0x39, 0xe2, 0x5a, 0x0d, 0x43, 0x08, 0xb8, 0x99, 0xd5, 0xf5, 0x06, 0xcf, 0x9e, 0x0a, 0x01, 0xe8, 0x11, 0x5b, 0x7e, 0x4b, 0x82, 0x2f, 0x03, 0x7e, 0xc9, 0x57, 0x52, 0xbd, 0x9e, 0x89, 0x2f, 0x5e, 0x9b, 0xb4, 0xd0, 0x73, 0x33, 0xe4, 0x68, 0xf8, 0x48, 0x2a, 0x79, 0x0a, 0x2a, 0x2e, 0x65, 0x0e, 0x2c, 0x42, 0xda, 0x82, 0x40, 0xec, 0x5e, 0x40, 0x25, 0x06, 0xb3, 0x68, 0x12, 0x2f, 0x04, 0x66, 0x80, 0xcd, 0x71, 0xe0, 0x11, 0x78, 0x97, 0xcc, 0xe3, 0xdf, 0x4a, 0x15, 0x55, 0xfc, 0x88, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9361 = { .name = "ecdsa_secp384r1_sha384_9361", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9361_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9361_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9361_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9362 for ECDSA, tcId is 291 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9362_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9362_msg[] = { 0x34, 0x33, 0x32, 0x37, 0x36, 0x30, 0x32, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9362_sig[] = { 0x43, 0xc6, 0xce, 0x51, 0x84, 0x47, 0x6f, 0x3f, 0x49, 0x6a, 0xfe, 0xae, 0x3c, 0xb9, 0x6a, 0x3f, 0x9f, 0x03, 0x89, 0x57, 0x68, 0x6c, 0x93, 0x43, 0x7b, 0x82, 0x66, 0xa2, 0x33, 0x02, 0x23, 0x71, 0xd2, 0x66, 0xe9, 0x04, 0xaa, 0x09, 0x6c, 0x35, 0x66, 0xcb, 0x33, 0x82, 0x4b, 0x88, 0x07, 0x5e, 0x68, 0x0c, 0x13, 0x24, 0x5a, 0x8b, 0xc5, 0x60, 0xb6, 0x38, 0xd2, 0x6f, 0x0c, 0x5f, 0x26, 0x19, 0x64, 0x13, 0x02, 0x56, 0x93, 0x95, 0x52, 0xd3, 0xff, 0xfb, 0x07, 0xb6, 0x58, 0x35, 0x56, 0x11, 0x61, 0x2c, 0x26, 0x8a, 0x89, 0x54, 0x10, 0x55, 0xd3, 0xc2, 0xbf, 0x9e, 0x82, 0xcf, 0x4d, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9362 = { .name = "ecdsa_secp384r1_sha384_9362", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9362_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9362_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9362_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9363 for ECDSA, tcId is 292 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9363_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9363_msg[] = { 0x32, 0x39, 0x33, 0x32, 0x30, 0x30, 0x32, 0x35, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9363_sig[] = { 0x44, 0x75, 0x39, 0x94, 0x1d, 0xc3, 0x50, 0x76, 0x7f, 0xc8, 0x41, 0x08, 0x3d, 0x25, 0xd9, 0x24, 0x7a, 0x08, 0x07, 0xe1, 0xe2, 0x2e, 0x0b, 0xb9, 0xd9, 0x4f, 0x50, 0x4f, 0x72, 0x19, 0x81, 0xb4, 0x13, 0xd5, 0x21, 0xef, 0xbd, 0x75, 0xe4, 0xfe, 0x83, 0x1e, 0xe2, 0x63, 0x38, 0xcf, 0x3d, 0xe3, 0x00, 0x39, 0x5a, 0xb2, 0x7e, 0xa7, 0x82, 0xce, 0xe4, 0xbe, 0x53, 0xe0, 0x6c, 0x76, 0x16, 0xbb, 0xd4, 0x1d, 0x69, 0x26, 0xb1, 0x8d, 0x21, 0x9d, 0x75, 0xd5, 0x97, 0x9f, 0x13, 0xcb, 0xa2, 0xf5, 0x21, 0x01, 0x01, 0x9b, 0x0e, 0xc0, 0xa4, 0x1f, 0xfd, 0xbf, 0x29, 0xef, 0x73, 0xdd, 0xba, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9363 = { .name = "ecdsa_secp384r1_sha384_9363", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9363_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9363_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9363_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9364 for ECDSA, tcId is 293 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9364_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9364_msg[] = { 0x36, 0x34, 0x30, 0x39, 0x38, 0x37, 0x37, 0x32, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9364_sig[] = { 0xa0, 0xba, 0x8e, 0x8b, 0x97, 0x9c, 0x20, 0x34, 0x5e, 0x34, 0xfc, 0xa9, 0x85, 0x31, 0x90, 0x01, 0x64, 0xa8, 0x59, 0x92, 0x3b, 0xd6, 0x98, 0x6a, 0x9c, 0x39, 0x23, 0x6a, 0x2f, 0x5d, 0xe0, 0x53, 0xa2, 0x52, 0x99, 0x7f, 0x35, 0xe5, 0xb8, 0x4b, 0x0d, 0x48, 0xba, 0x0f, 0x8d, 0x09, 0xae, 0xdd, 0xfa, 0xcd, 0x6d, 0xf0, 0x43, 0x58, 0xfc, 0xd9, 0x5f, 0xa9, 0x01, 0x8a, 0x6f, 0xc0, 0x82, 0x8d, 0xfe, 0x31, 0x98, 0x12, 0xff, 0x65, 0x92, 0x9c, 0x06, 0x0b, 0x18, 0xad, 0x4b, 0x9f, 0x06, 0xe7, 0xfc, 0x0a, 0xdd, 0xd1, 0xb6, 0x95, 0x31, 0x5d, 0x71, 0xc1, 0x5e, 0x51, 0xdc, 0x51, 0xd7, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9364 = { .name = "ecdsa_secp384r1_sha384_9364", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9364_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9364_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9364_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9365 for ECDSA, tcId is 294 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9365_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9365_msg[] = { 0x36, 0x30, 0x37, 0x35, 0x36, 0x39, 0x30, 0x34, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9365_sig[] = { 0xb8, 0x37, 0x83, 0x90, 0xf7, 0x1f, 0x0b, 0xb6, 0x66, 0x3f, 0x18, 0x46, 0xda, 0xf6, 0x90, 0x8f, 0x8c, 0x84, 0xf7, 0x70, 0xae, 0x74, 0x0c, 0xc8, 0x05, 0x41, 0x22, 0x49, 0x4c, 0xf0, 0xff, 0xa9, 0x43, 0x7a, 0xb2, 0x60, 0x40, 0xca, 0x22, 0x80, 0x8f, 0xb2, 0x9a, 0x81, 0x0b, 0x70, 0x12, 0x6e, 0x42, 0x76, 0x36, 0xb9, 0x29, 0xa5, 0x00, 0xab, 0xc3, 0x4d, 0x9f, 0x22, 0x97, 0x7b, 0x81, 0xe7, 0x34, 0x91, 0x9a, 0xfa, 0xf3, 0xed, 0x2c, 0x91, 0xee, 0xad, 0xa7, 0x07, 0x4e, 0x0c, 0x16, 0xbd, 0xc5, 0x2f, 0x96, 0x0e, 0xae, 0xc9, 0xdb, 0x5a, 0x87, 0x9c, 0x1e, 0x64, 0x14, 0x03, 0x51, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9365 = { .name = "ecdsa_secp384r1_sha384_9365", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9365_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9365_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9365_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9366 for ECDSA, tcId is 295 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9366_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9366_msg[] = { 0x32, 0x33, 0x32, 0x31, 0x36, 0x32, 0x33, 0x31, 0x33, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9366_sig[] = { 0xf3, 0x6a, 0x90, 0x48, 0xfd, 0x94, 0x80, 0x3d, 0x3d, 0x6d, 0x1b, 0x11, 0x43, 0x0b, 0x90, 0xb9, 0x4e, 0xf8, 0xd5, 0xd2, 0xad, 0x89, 0x01, 0x8c, 0x69, 0x47, 0x3c, 0xe9, 0xcf, 0xe0, 0xd6, 0x10, 0x5b, 0x3c, 0x2f, 0xb2, 0xe7, 0x55, 0x5c, 0xcd, 0x25, 0xf6, 0x5a, 0xf8, 0xc8, 0x72, 0xbd, 0xc6, 0x81, 0x25, 0x48, 0x41, 0xe7, 0xec, 0xbf, 0xd0, 0xd8, 0x10, 0xaf, 0xaa, 0xf5, 0xaf, 0xd6, 0xd6, 0xc5, 0xd0, 0x54, 0x2b, 0xb0, 0x0c, 0xc1, 0x83, 0xb1, 0xdb, 0x01, 0x76, 0x71, 0x20, 0xaf, 0xbc, 0xc0, 0x00, 0x6d, 0xdc, 0xba, 0x8d, 0xb7, 0xba, 0xf6, 0x5f, 0x30, 0x27, 0x23, 0xda, 0xbc, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9366 = { .name = "ecdsa_secp384r1_sha384_9366", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9366_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9366_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9366_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9367 for ECDSA, tcId is 296 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9367_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9367_msg[] = { 0x36, 0x34, 0x31, 0x30, 0x31, 0x35, 0x32, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9367_sig[] = { 0xd8, 0xa4, 0xd9, 0x64, 0x09, 0xc1, 0x91, 0xba, 0xa9, 0x54, 0x0b, 0xf3, 0x5f, 0x1d, 0x51, 0x92, 0xf9, 0x35, 0x2d, 0x7f, 0x0e, 0x14, 0xf9, 0x2c, 0x0e, 0x8e, 0x1f, 0x19, 0xf5, 0x59, 0xb4, 0x2e, 0xd3, 0xc6, 0xb7, 0xbd, 0xb6, 0xbe, 0xcc, 0x56, 0x58, 0x4f, 0xb5, 0xc0, 0x94, 0x21, 0xe2, 0xe4, 0xd9, 0x66, 0xba, 0x13, 0xd4, 0x24, 0x5e, 0x24, 0x8e, 0xaf, 0xb4, 0x6f, 0x2a, 0x3d, 0xf9, 0x2c, 0x20, 0x37, 0xd5, 0x96, 0x9c, 0x7d, 0xb6, 0xdb, 0xcb, 0x0f, 0xf4, 0xb2, 0x18, 0x50, 0xe1, 0x6a, 0x18, 0xa2, 0x97, 0x85, 0x26, 0x72, 0x39, 0x88, 0x63, 0x65, 0xcf, 0x72, 0x1a, 0x21, 0x25, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9367 = { .name = "ecdsa_secp384r1_sha384_9367", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9367_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9367_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9367_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9368 for ECDSA, tcId is 297 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9368_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9368_msg[] = { 0x38, 0x33, 0x37, 0x32, 0x38, 0x35, 0x37, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9368_sig[] = { 0x1d, 0x5d, 0x86, 0xfd, 0x48, 0xe6, 0x5b, 0x0c, 0xf0, 0xb0, 0xb4, 0x60, 0x62, 0x24, 0x1f, 0x89, 0xcf, 0x65, 0x78, 0x5d, 0xd8, 0x18, 0xf9, 0x3f, 0x11, 0x62, 0x77, 0x1a, 0x38, 0xa1, 0x5f, 0x20, 0xfe, 0xbc, 0x26, 0x18, 0x12, 0xec, 0xaa, 0xf6, 0xf4, 0xf2, 0xb8, 0x6b, 0x33, 0x62, 0xd7, 0xeb, 0x0c, 0x76, 0xe3, 0x63, 0xde, 0x14, 0x32, 0x51, 0x3c, 0xb9, 0xda, 0xd6, 0x49, 0x39, 0x31, 0x38, 0x1e, 0xcd, 0x25, 0xf1, 0x42, 0xe6, 0x19, 0x68, 0xb6, 0xf2, 0x0d, 0x7b, 0x12, 0x70, 0xcb, 0x9e, 0x38, 0xa7, 0xae, 0x54, 0xe4, 0x77, 0x8a, 0xff, 0x40, 0x25, 0xeb, 0x00, 0xc6, 0xa6, 0x7a, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9368 = { .name = "ecdsa_secp384r1_sha384_9368", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9368_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9368_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9368_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9369 for ECDSA, tcId is 298 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9369_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9369_msg[] = { 0x33, 0x33, 0x32, 0x34, 0x37, 0x30, 0x34, 0x35, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9369_sig[] = { 0x05, 0x08, 0xee, 0xd1, 0x48, 0xf0, 0x61, 0x11, 0x4b, 0xe1, 0x8e, 0x8a, 0x86, 0x18, 0x8f, 0xea, 0xbf, 0x76, 0xb8, 0x73, 0xb3, 0x6e, 0xad, 0xcc, 0xa9, 0xc2, 0xc6, 0x0e, 0x24, 0xa2, 0x00, 0x2f, 0xe4, 0x56, 0x23, 0x1d, 0xec, 0xf7, 0xa8, 0xf6, 0xf0, 0x32, 0xc0, 0x8d, 0xbe, 0x0a, 0xb5, 0xa9, 0x69, 0x4c, 0x0a, 0xd7, 0x81, 0xb2, 0x34, 0x1e, 0x30, 0xe1, 0xd0, 0x73, 0x9a, 0xc9, 0x96, 0x72, 0x06, 0x4f, 0x48, 0x82, 0x1a, 0x69, 0x85, 0x2c, 0x79, 0x40, 0xcf, 0x1d, 0x62, 0x17, 0x38, 0x19, 0x9c, 0x98, 0x0d, 0x56, 0xd2, 0xa0, 0xb7, 0x1b, 0x3f, 0xc6, 0x01, 0x1c, 0x6b, 0x24, 0x44, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9369 = { .name = "ecdsa_secp384r1_sha384_9369", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9369_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9369_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9369_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9370 for ECDSA, tcId is 299 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9370_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9370_msg[] = { 0x31, 0x34, 0x30, 0x33, 0x39, 0x36, 0x36, 0x38, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9370_sig[] = { 0x72, 0x6e, 0xf8, 0x8b, 0xb7, 0x94, 0x7a, 0x04, 0x31, 0x16, 0xc1, 0x11, 0xcb, 0x51, 0x9d, 0xde, 0xda, 0x3e, 0x6f, 0xfb, 0xf7, 0x24, 0x88, 0x4a, 0x1b, 0x22, 0xc2, 0x44, 0x09, 0xcd, 0xf2, 0x77, 0x9d, 0x93, 0xce, 0x61, 0x0c, 0x8c, 0x07, 0x41, 0x1c, 0x2b, 0x00, 0x13, 0x99, 0x10, 0x3d, 0x6d, 0x95, 0xdc, 0x1d, 0x65, 0x04, 0x6c, 0xaf, 0x0e, 0x8d, 0xad, 0x07, 0xb2, 0x24, 0x79, 0x8d, 0x6f, 0x78, 0x07, 0x27, 0x8e, 0x73, 0x78, 0x83, 0xe7, 0xc7, 0xbf, 0x0b, 0x44, 0x67, 0x91, 0xd4, 0xee, 0x14, 0x4c, 0x26, 0xf7, 0x10, 0x13, 0x48, 0x61, 0xaf, 0x4e, 0x67, 0x71, 0xd4, 0x08, 0x28, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9370 = { .name = "ecdsa_secp384r1_sha384_9370", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9370_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9370_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9370_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9371 for ECDSA, tcId is 300 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9371_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9371_msg[] = { 0x31, 0x32, 0x32, 0x37, 0x36, 0x30, 0x35, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9371_sig[] = { 0xeb, 0x0e, 0x8e, 0x3c, 0x63, 0x9f, 0x5e, 0xba, 0x8e, 0xcc, 0xd9, 0x02, 0x0d, 0x0e, 0xc6, 0x2d, 0x8a, 0xc7, 0x3f, 0x3f, 0xdd, 0xbd, 0xfa, 0x08, 0xfd, 0xb2, 0x15, 0x5d, 0xeb, 0x0a, 0x53, 0x69, 0x23, 0xeb, 0xd5, 0x5e, 0x20, 0x02, 0x0c, 0xab, 0x9f, 0x8e, 0x39, 0xa4, 0x3a, 0x88, 0xbe, 0x11, 0xc7, 0x96, 0xdf, 0x39, 0x9f, 0xc3, 0x58, 0x83, 0xdd, 0x5d, 0xae, 0x68, 0x17, 0xd0, 0x2d, 0x3d, 0x67, 0xa8, 0xee, 0xc6, 0x60, 0x15, 0x85, 0xe5, 0xe3, 0x6f, 0xd2, 0xc1, 0x34, 0xed, 0xdb, 0x14, 0x47, 0xec, 0x12, 0xb1, 0x44, 0xdd, 0xdc, 0x9a, 0xae, 0x28, 0xa8, 0x4f, 0x22, 0x60, 0x26, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9371 = { .name = "ecdsa_secp384r1_sha384_9371", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9371_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9371_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9371_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9372 for ECDSA, tcId is 301 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9372_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9372_msg[] = { 0x34, 0x39, 0x35, 0x31, 0x34, 0x38, 0x38, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9372_sig[] = { 0xe8, 0xf8, 0xc6, 0x9d, 0x03, 0x96, 0xea, 0x90, 0x0f, 0x97, 0x57, 0x73, 0x6d, 0x2b, 0x19, 0xdb, 0xc2, 0xd2, 0xa8, 0xc0, 0x1d, 0xcc, 0xf4, 0x90, 0xc8, 0xb9, 0x45, 0x5b, 0xd6, 0x3b, 0x34, 0xc0, 0x95, 0x86, 0x7e, 0x7c, 0xf3, 0xb8, 0x4d, 0xc7, 0xc3, 0xc3, 0xd6, 0xb5, 0x1b, 0xeb, 0xf4, 0x05, 0x58, 0x15, 0x2a, 0x75, 0x64, 0xee, 0xb2, 0x2a, 0x3e, 0x26, 0x59, 0x70, 0x26, 0xd0, 0xcd, 0x78, 0x35, 0x72, 0x5b, 0xd5, 0x12, 0x24, 0x54, 0x48, 0xcb, 0x50, 0x16, 0xeb, 0x48, 0xea, 0x75, 0x98, 0x09, 0xfd, 0x69, 0x49, 0xd0, 0xee, 0x5d, 0x57, 0x96, 0x43, 0xf7, 0x2f, 0x90, 0x8c, 0x16, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9372 = { .name = "ecdsa_secp384r1_sha384_9372", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9372_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9372_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9372_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9373 for ECDSA, tcId is 302 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9373_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9373_msg[] = { 0x32, 0x34, 0x35, 0x32, 0x31, 0x32, 0x37, 0x30, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9373_sig[] = { 0x38, 0x0b, 0x4e, 0x48, 0xb3, 0xff, 0x01, 0x2a, 0xf7, 0xc0, 0x8b, 0xf8, 0x71, 0xd9, 0xf4, 0xda, 0x0c, 0x70, 0x8b, 0x54, 0x94, 0xa9, 0x86, 0xd3, 0xd8, 0x0b, 0x19, 0x79, 0xe5, 0x79, 0xd0, 0xdb, 0xee, 0x61, 0xdb, 0x9b, 0xc3, 0xc0, 0x4c, 0x39, 0x61, 0x76, 0x41, 0x07, 0x88, 0xe1, 0x5a, 0x0f, 0xe6, 0x97, 0x1c, 0x01, 0x3c, 0x96, 0x5a, 0x7e, 0x4d, 0xf1, 0x0f, 0x95, 0x62, 0x0a, 0x50, 0x92, 0xfa, 0xb0, 0x96, 0xbd, 0x5b, 0x50, 0x82, 0x8f, 0x4b, 0xc9, 0x1c, 0x5e, 0x47, 0x9b, 0xcc, 0xf6, 0xe0, 0xda, 0xf2, 0x87, 0xe7, 0xef, 0x58, 0x0f, 0xa9, 0xea, 0x15, 0x3f, 0xa1, 0xa5, 0x07, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9373 = { .name = "ecdsa_secp384r1_sha384_9373", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9373_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9373_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9373_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9374 for ECDSA, tcId is 303 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9374_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9374_msg[] = { 0x31, 0x37, 0x33, 0x31, 0x35, 0x35, 0x30, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp384r1_sha384_9374_sig[] = { 0x80, 0x61, 0xde, 0x12, 0x02, 0x9e, 0x2b, 0x00, 0x0d, 0x15, 0x7a, 0x45, 0x5e, 0xcf, 0x23, 0x01, 0x22, 0x2f, 0x09, 0x2d, 0xf9, 0x5b, 0x95, 0x51, 0xb7, 0x8c, 0xf0, 0xef, 0x3a, 0x64, 0xf1, 0x22, 0x12, 0xb5, 0x7e, 0xc7, 0xb1, 0x6d, 0x2c, 0x0f, 0x25, 0x89, 0x46, 0xf5, 0x1c, 0xb1, 0x63, 0x3a, 0x0a, 0xc2, 0xca, 0x6a, 0xd9, 0x9b, 0x29, 0xca, 0x29, 0xa0, 0xdc, 0x38, 0xb3, 0x44, 0x43, 0xee, 0x41, 0x02, 0x0f, 0x81, 0xed, 0x90, 0x87, 0xce, 0xf7, 0x68, 0x1a, 0x00, 0xc4, 0xfe, 0x60, 0x65, 0x3a, 0x57, 0x29, 0x44, 0xba, 0x37, 0xf1, 0xfe, 0x51, 0xd1, 0x12, 0xbf, 0xff, 0xbd, 0xd7, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9374 = { .name = "ecdsa_secp384r1_sha384_9374", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9374_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9374_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9374_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9375 for ECDSA, tcId is 304 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9375_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9375_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x30, 0x36, 0x39, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9375_sig[] = { 0xe7, 0x4f, 0x2a, 0x79, 0x1e, 0xeb, 0x73, 0x41, 0xcf, 0xf6, 0xcc, 0x1c, 0x24, 0xf4, 0x59, 0xe6, 0xc0, 0x10, 0x99, 0x24, 0xf7, 0x98, 0x46, 0x39, 0xae, 0x38, 0x7e, 0x3c, 0xeb, 0x58, 0x75, 0x8a, 0x1b, 0xc3, 0x83, 0x9d, 0xea, 0x1f, 0xc3, 0xa3, 0x79, 0x95, 0x62, 0x22, 0x5e, 0x70, 0xa7, 0x33, 0xd9, 0x0e, 0x4d, 0x0f, 0x47, 0x34, 0x32, 0x68, 0xe5, 0x6b, 0xbc, 0xb0, 0x11, 0xbd, 0x47, 0x34, 0x39, 0x0a, 0xbc, 0x9a, 0xa1, 0x30, 0x4b, 0x62, 0x53, 0xe7, 0x8f, 0x5a, 0x78, 0xb6, 0x90, 0x5a, 0xa6, 0xbf, 0x6a, 0x38, 0x92, 0xa4, 0xae, 0x1a, 0x87, 0x5c, 0x82, 0x3a, 0xe5, 0xa8, 0x3e, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9375 = { .name = "ecdsa_secp384r1_sha384_9375", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9375_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9375_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9375_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9376 for ECDSA, tcId is 305 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9376_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9376_msg[] = { 0x34, 0x34, 0x31, 0x35, 0x34, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha384_9376_sig[] = { 0x6a, 0x1c, 0xd0, 0xff, 0x79, 0x06, 0xbe, 0x20, 0x7b, 0x56, 0x86, 0x2e, 0xdc, 0xbc, 0x0d, 0x0b, 0xbf, 0xb2, 0x6d, 0x43, 0x25, 0x5c, 0x99, 0xf6, 0xab, 0x77, 0x63, 0x9f, 0x5e, 0x61, 0x03, 0xa0, 0x7a, 0xa3, 0x22, 0xb2, 0x2e, 0xd4, 0x38, 0x70, 0xd1, 0xce, 0x6d, 0xf6, 0x8a, 0xa0, 0xa8, 0xc1, 0x65, 0x55, 0x58, 0xb1, 0x29, 0xaa, 0x23, 0x18, 0x45, 0x00, 0xbd, 0x4a, 0xab, 0x4f, 0x03, 0x55, 0xd3, 0x19, 0x2e, 0x9b, 0x88, 0x60, 0xf6, 0x0b, 0x05, 0xa1, 0xc2, 0x92, 0x61, 0xf4, 0x48, 0x6a, 0x6a, 0xe2, 0x35, 0xa5, 0x26, 0x33, 0x9b, 0x86, 0xc0, 0x5f, 0x5f, 0xac, 0x47, 0x7b, 0x67, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9376 = { .name = "ecdsa_secp384r1_sha384_9376", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9376_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9376_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9376_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9377 for ECDSA, tcId is 306 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9377_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9377_msg[] = { 0x34, 0x32, 0x33, 0x39, 0x34, 0x34, 0x39, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9377_sig[] = { 0x81, 0x11, 0x1f, 0xdc, 0x5f, 0x0d, 0xe6, 0x55, 0x83, 0xc7, 0xa5, 0x66, 0x8d, 0x26, 0xc0, 0x4e, 0xe5, 0x2e, 0x08, 0xda, 0xc2, 0x27, 0x75, 0x31, 0x32, 0xcf, 0xf1, 0x74, 0x1c, 0xb7, 0x21, 0xe1, 0x12, 0xaa, 0x79, 0x3c, 0x0d, 0x5f, 0xa0, 0x47, 0xfa, 0xf1, 0x4c, 0xb4, 0x5d, 0xd1, 0x3e, 0x1f, 0x9a, 0x25, 0xcf, 0x1e, 0x6c, 0x15, 0x2b, 0xc3, 0xe2, 0x16, 0xe0, 0x21, 0x56, 0x1d, 0x19, 0x49, 0x79, 0xf1, 0xc1, 0x1f, 0xe1, 0x70, 0x19, 0xed, 0x7b, 0xac, 0x2c, 0x13, 0xc4, 0x01, 0x0f, 0x20, 0x96, 0x65, 0xe3, 0xb6, 0xf3, 0x3b, 0x86, 0x64, 0x17, 0x04, 0xd9, 0x22, 0xb4, 0x07, 0x81, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9377 = { .name = "ecdsa_secp384r1_sha384_9377", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9377_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9377_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9377_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9378 for ECDSA, tcId is 307 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9378_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9378_msg[] = { 0x34, 0x38, 0x30, 0x37, 0x36, 0x32, 0x30, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha384_9378_sig[] = { 0x9b, 0x66, 0xd1, 0x22, 0xa3, 0x15, 0x09, 0x5b, 0x2b, 0x66, 0xcc, 0xb9, 0x72, 0x72, 0xc4, 0x76, 0xa2, 0xd7, 0x60, 0xe8, 0x27, 0xfd, 0xea, 0x05, 0x73, 0x2d, 0x63, 0x4d, 0xf3, 0xd0, 0x66, 0x56, 0x9c, 0x98, 0x4d, 0xd9, 0x41, 0xaa, 0xd5, 0xf5, 0xde, 0xc4, 0xc2, 0xe1, 0xb7, 0xb9, 0x4a, 0x00, 0x96, 0xc3, 0x24, 0x03, 0xc8, 0x5b, 0xc3, 0xd0, 0xee, 0x87, 0xf9, 0x6a, 0x60, 0x01, 0x82, 0x79, 0x6d, 0xce, 0x53, 0xd5, 0x4d, 0x74, 0x67, 0xae, 0x66, 0x0a, 0x42, 0xb8, 0x7b, 0xb7, 0x07, 0x92, 0xf1, 0x46, 0x50, 0xac, 0x28, 0xa5, 0xfa, 0x47, 0xce, 0x9c, 0xa4, 0xd3, 0xb2, 0xc2, 0x58, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9378 = { .name = "ecdsa_secp384r1_sha384_9378", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9378_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9378_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9378_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9379 for ECDSA, tcId is 308 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9379_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9379_msg[] = { 0x32, 0x31, 0x36, 0x34, 0x36, 0x36, 0x36, 0x32, 0x38, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9379_sig[] = { 0x2b, 0xb0, 0x62, 0xa0, 0x02, 0x08, 0x8d, 0x62, 0xa0, 0xb7, 0x33, 0x8d, 0x04, 0x84, 0xfe, 0xdf, 0xe2, 0xaf, 0x7e, 0x20, 0xce, 0xbf, 0x6a, 0x47, 0x88, 0x26, 0x4e, 0xb2, 0x7c, 0xb4, 0xeb, 0xc3, 0xcc, 0x81, 0xc8, 0x16, 0xe6, 0xa3, 0x57, 0x22, 0xcf, 0x9b, 0x46, 0x47, 0x83, 0x09, 0x4c, 0xb8, 0x46, 0xcc, 0x21, 0xb7, 0x0f, 0x21, 0x33, 0xf8, 0x5a, 0xb0, 0x44, 0x3b, 0xeb, 0xe9, 0xc6, 0xfc, 0x62, 0xc6, 0xe2, 0xec, 0x1f, 0xd9, 0xc4, 0xdd, 0xf4, 0xa6, 0xd5, 0xf3, 0xf4, 0x8e, 0xb7, 0xab, 0xf1, 0xee, 0x7b, 0xdf, 0x67, 0x25, 0x87, 0x9f, 0xd1, 0xb7, 0xda, 0xaf, 0xb4, 0x4f, 0x6e, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9379 = { .name = "ecdsa_secp384r1_sha384_9379", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9379_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9379_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9379_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9380 for ECDSA, tcId is 309 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9380_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9380_msg[] = { 0x31, 0x39, 0x34, 0x32, 0x38, 0x35, 0x33, 0x38, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9380_sig[] = { 0x33, 0xe8, 0x70, 0x61, 0xee, 0x9a, 0x82, 0xeb, 0x74, 0xd8, 0xbb, 0x4a, 0xe9, 0x16, 0x06, 0x56, 0x3c, 0x2e, 0x4d, 0xb8, 0xb0, 0x91, 0x83, 0xcc, 0x00, 0xd1, 0x11, 0x9a, 0xb4, 0xf5, 0x03, 0x3d, 0x28, 0x7a, 0x1f, 0xc9, 0x0a, 0x23, 0x48, 0x16, 0x3f, 0xdf, 0x68, 0xd3, 0x50, 0x06, 0xfd, 0x7f, 0x96, 0xdb, 0x97, 0xc9, 0x47, 0xee, 0x2e, 0x96, 0xe6, 0x13, 0x9d, 0x3b, 0xcb, 0xf5, 0xa4, 0x36, 0x06, 0xba, 0xe1, 0xad, 0x3c, 0xa2, 0x82, 0x90, 0xfb, 0xad, 0x43, 0xb2, 0x81, 0xef, 0x11, 0x5e, 0xc1, 0xb9, 0x8b, 0xc5, 0x81, 0xef, 0x48, 0x09, 0x4f, 0x8c, 0x1a, 0xa8, 0xe3, 0x6c, 0x28, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9380 = { .name = "ecdsa_secp384r1_sha384_9380", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9380_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9380_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9380_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9381 for ECDSA, tcId is 310 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9381_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9381_msg[] = { 0x32, 0x32, 0x31, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha384_9381_sig[] = { 0x70, 0xf8, 0x0b, 0x43, 0x84, 0x24, 0xba, 0x22, 0x8a, 0x7d, 0x80, 0xf2, 0x6e, 0x22, 0xff, 0x6a, 0x89, 0x62, 0x43, 0xc9, 0xd4, 0x9c, 0x75, 0x57, 0x34, 0x89, 0xee, 0x0d, 0xe5, 0x8e, 0xc6, 0x0e, 0xfd, 0x10, 0x38, 0x38, 0x14, 0x34, 0x65, 0xbd, 0x8f, 0xe3, 0x46, 0x72, 0xba, 0x94, 0x96, 0x17, 0x11, 0x54, 0x92, 0xbd, 0x93, 0x65, 0xb9, 0x6f, 0x38, 0x74, 0x75, 0x36, 0x31, 0x8b, 0xff, 0xb8, 0x19, 0xe7, 0xc1, 0x46, 0xdf, 0x3a, 0x5a, 0x7a, 0x46, 0xd6, 0x28, 0x8c, 0x7f, 0xdf, 0x31, 0xcf, 0xf5, 0x70, 0xb2, 0x21, 0x76, 0xaa, 0x39, 0x8d, 0xab, 0xa9, 0x07, 0x3a, 0xb1, 0xe7, 0xb9, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9381 = { .name = "ecdsa_secp384r1_sha384_9381", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9381_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9381_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9381_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9382 for ECDSA, tcId is 311 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9382_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9382_msg[] = { 0x39, 0x32, 0x36, 0x39, 0x33, 0x33, 0x34, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9382_sig[] = { 0xff, 0x16, 0xca, 0x03, 0x89, 0xea, 0x69, 0x48, 0xf4, 0x30, 0x5b, 0x43, 0x4f, 0xe0, 0xaa, 0x58, 0x9f, 0x88, 0x0f, 0x5a, 0xa9, 0x37, 0x76, 0x7c, 0x31, 0x17, 0x0e, 0xe8, 0xda, 0x6c, 0x1a, 0xd6, 0x20, 0xc9, 0x93, 0xd4, 0x0d, 0xdf, 0x14, 0x1b, 0x7f, 0xda, 0x37, 0x42, 0x4d, 0x51, 0xb5, 0xcd, 0xba, 0x0f, 0x86, 0x98, 0x5d, 0xff, 0xc6, 0x1d, 0x6e, 0x35, 0xa3, 0x7d, 0xe0, 0x69, 0x18, 0xb1, 0x1e, 0x43, 0x1b, 0x72, 0x40, 0x31, 0x61, 0xac, 0xfb, 0x8f, 0x05, 0xc4, 0x69, 0xf1, 0xfc, 0xfa, 0x6e, 0x21, 0x5c, 0x6f, 0x7e, 0xb5, 0xa0, 0xa5, 0xe0, 0xcc, 0x9e, 0x7b, 0xe7, 0x9c, 0xe1, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9382 = { .name = "ecdsa_secp384r1_sha384_9382", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9382_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9382_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9382_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9383 for ECDSA, tcId is 312 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9383_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9383_msg[] = { 0x37, 0x36, 0x39, 0x33, 0x38, 0x36, 0x33, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9383_sig[] = { 0xd6, 0x0c, 0x24, 0xbe, 0xe0, 0x5f, 0x51, 0x98, 0xcd, 0x15, 0x5a, 0xd0, 0x95, 0xff, 0xb9, 0x56, 0xbb, 0xcf, 0xb6, 0x6b, 0x82, 0xfc, 0x0d, 0x37, 0x55, 0x11, 0x99, 0x15, 0xa6, 0x2f, 0x2f, 0x92, 0x35, 0x57, 0xb8, 0x5d, 0xdc, 0x1d, 0x12, 0xe6, 0xa7, 0x57, 0xf2, 0x30, 0x42, 0xcb, 0x60, 0x1b, 0x2c, 0x4d, 0x96, 0x8b, 0x5e, 0xac, 0x93, 0x0b, 0x51, 0xd2, 0x83, 0xb4, 0x18, 0xfc, 0xff, 0x6d, 0xf3, 0xa9, 0xd6, 0xd6, 0x6e, 0x38, 0x12, 0xcd, 0x1b, 0xf5, 0xfd, 0xe7, 0x97, 0xfd, 0x20, 0x3a, 0x7c, 0x43, 0x9b, 0x1b, 0x38, 0x1e, 0x4f, 0xe8, 0xb4, 0x4e, 0x6f, 0x10, 0x87, 0x64, 0xa7, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9383 = { .name = "ecdsa_secp384r1_sha384_9383", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9383_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9383_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha384_9383_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9384 for ECDSA, tcId is 313 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9384_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9384_msg[] = { 0x32, 0x37, 0x33, 0x35, 0x39, 0x33, 0x30, 0x35, 0x37, 0x33, }; static const unsigned char ecdsa_secp384r1_sha384_9384_sig[] = { 0xbd, 0xf6, 0x34, 0xd9, 0x15, 0xa4, 0xfa, 0xe7, 0xa1, 0x55, 0x53, 0x2c, 0xa2, 0x84, 0x7c, 0x33, 0xa6, 0xba, 0xbe, 0x7e, 0xf8, 0xdb, 0x0a, 0xf5, 0x0f, 0x48, 0x5d, 0xb3, 0xdd, 0x2c, 0x8b, 0xff, 0xe7, 0x22, 0x39, 0x45, 0x83, 0x93, 0x2f, 0x6e, 0xb5, 0xcd, 0x97, 0xf6, 0xdb, 0x75, 0x61, 0xd9, 0xbb, 0x42, 0x5c, 0xae, 0x2e, 0x54, 0x83, 0x17, 0x4b, 0x5e, 0xd8, 0x73, 0xaf, 0x43, 0x29, 0xda, 0x46, 0x18, 0xc1, 0x44, 0x58, 0x14, 0x18, 0x50, 0xbe, 0xe3, 0xc7, 0xbf, 0x1f, 0xfb, 0x3f, 0x20, 0x30, 0x15, 0x90, 0x43, 0x27, 0x7d, 0xac, 0xc7, 0x08, 0xe9, 0xd3, 0x2f, 0x63, 0x40, 0x00, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9384 = { .name = "ecdsa_secp384r1_sha384_9384", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9384_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9384_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9384_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9385 for ECDSA, tcId is 314 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9385_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9385_msg[] = { 0x38, 0x33, 0x30, 0x30, 0x35, 0x36, 0x34, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9385_sig[] = { 0x06, 0x13, 0x20, 0xa3, 0xbc, 0xeb, 0xac, 0x33, 0xcf, 0x39, 0x9d, 0x45, 0xd1, 0xe1, 0xe1, 0xb3, 0x4f, 0x37, 0x28, 0x8f, 0xe4, 0x75, 0x3f, 0x4f, 0xdd, 0xfd, 0x49, 0x6e, 0xff, 0x42, 0x7e, 0x1d, 0x26, 0xb1, 0xb9, 0x1d, 0x74, 0x9c, 0xc3, 0x4c, 0x12, 0xf4, 0xec, 0xef, 0x83, 0x7c, 0x0e, 0x8f, 0xfd, 0x5c, 0xf4, 0x68, 0xcd, 0xa3, 0x19, 0xfe, 0x06, 0xe7, 0x73, 0xa1, 0x90, 0xc3, 0x8d, 0xe6, 0xe1, 0x50, 0xa3, 0x21, 0xac, 0x1c, 0x41, 0x6a, 0xd8, 0x75, 0x43, 0x2c, 0xdb, 0x7a, 0x07, 0x13, 0x4c, 0x44, 0x6f, 0x13, 0x06, 0x8e, 0x71, 0xa1, 0xa9, 0x6e, 0x35, 0xda, 0x92, 0x39, 0x74, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9385 = { .name = "ecdsa_secp384r1_sha384_9385", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9385_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9385_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9385_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9386 for ECDSA, tcId is 315 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9386_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9386_msg[] = { 0x34, 0x33, 0x30, 0x37, 0x36, 0x35, 0x35, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha384_9386_sig[] = { 0xd6, 0x20, 0xf0, 0x63, 0xd3, 0x3e, 0xfa, 0x85, 0x9b, 0x62, 0x3f, 0x6c, 0x9a, 0x92, 0x34, 0x0e, 0x4c, 0xdd, 0x85, 0x4f, 0xfb, 0xe3, 0xe5, 0xe0, 0x13, 0x79, 0x17, 0x7a, 0xee, 0x31, 0x71, 0x5c, 0xe5, 0x87, 0xb0, 0x0b, 0xd0, 0xae, 0xa9, 0x8f, 0xdd, 0xf2, 0x36, 0xd2, 0xfc, 0x8a, 0x7a, 0x74, 0x67, 0x1f, 0x4b, 0x7c, 0x18, 0x72, 0x97, 0xdc, 0x23, 0x6c, 0x61, 0x88, 0x8b, 0x6d, 0x93, 0x97, 0xe9, 0x77, 0x83, 0x07, 0x7c, 0xc4, 0x10, 0x18, 0x07, 0xd7, 0x9e, 0xe6, 0x2e, 0x4a, 0x53, 0xa7, 0x8c, 0x4b, 0x6a, 0x3a, 0x31, 0xb0, 0x31, 0x78, 0x66, 0x8a, 0xf8, 0x94, 0xa3, 0xd8, 0x90, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9386 = { .name = "ecdsa_secp384r1_sha384_9386", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9386_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9386_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9386_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9387 for ECDSA, tcId is 316 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9387_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha384_9387_msg[] = { 0x39, 0x36, 0x35, 0x37, 0x30, 0x31, 0x38, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp384r1_sha384_9387_sig[] = { 0x91, 0xc5, 0x56, 0xc5, 0xbd, 0xdd, 0x52, 0x9f, 0xe9, 0x03, 0xb8, 0x6a, 0xfc, 0x0e, 0xb8, 0xfa, 0x1f, 0x49, 0x42, 0x5b, 0x77, 0x9a, 0x39, 0x11, 0x4a, 0xe5, 0x63, 0xbe, 0xbc, 0x94, 0x7e, 0x63, 0x3b, 0xa4, 0xee, 0x98, 0x94, 0x8f, 0xaa, 0x89, 0x40, 0xdf, 0xe2, 0x56, 0x2c, 0x63, 0xe1, 0xc5, 0x19, 0x8b, 0x00, 0x07, 0x9d, 0x8d, 0xb0, 0x72, 0xd2, 0x5b, 0x0a, 0x49, 0xbc, 0x8b, 0xc3, 0x64, 0x57, 0x92, 0x6f, 0x3c, 0x10, 0x15, 0x27, 0x52, 0x8d, 0xf6, 0x67, 0x9f, 0x92, 0xc7, 0x6f, 0x1b, 0x48, 0x7e, 0x66, 0x95, 0xd4, 0xb9, 0x2f, 0xe3, 0x3b, 0x4e, 0xe7, 0x04, 0x6a, 0x6a, 0x5d, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9387 = { .name = "ecdsa_secp384r1_sha384_9387", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9387_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9387_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha384_9387_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9388 for ECDSA, tcId is 317 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9388_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_9388_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9388_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9388 = { .name = "ecdsa_secp384r1_sha384_9388", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9388_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9388_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9388_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 317 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9389 for ECDSA, tcId is 318 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9389_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_9389_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9389_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9389 = { .name = "ecdsa_secp384r1_sha384_9389", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9389_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9389_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9389_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 318 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9390 for ECDSA, tcId is 319 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9390_pubkey[] = { 0x36, 0x23, 0xbb, 0x29, 0x6b, 0x88, 0xf6, 0x26, 0xd0, 0xf9, 0x26, 0x56, 0xbf, 0x01, 0x6f, 0x11, 0x5b, 0x72, 0x12, 0x77, 0xcc, 0xb4, 0x93, 0x07, 0x39, 0xbf, 0xbd, 0x81, 0xf9, 0xc1, 0xe7, 0x34, 0x63, 0x0e, 0x06, 0x85, 0xd3, 0x2e, 0x15, 0x4e, 0x0b, 0x4a, 0x5c, 0x62, 0xe4, 0x38, 0x51, 0xf6, 0x76, 0x83, 0x56, 0xb4, 0xa5, 0x76, 0x4c, 0x12, 0x8c, 0x7b, 0x11, 0x05, 0xe3, 0xd7, 0x78, 0xa8, 0x9d, 0x1e, 0x01, 0xda, 0x29, 0x7e, 0xde, 0x1b, 0xc4, 0x31, 0x2c, 0x25, 0x83, 0xe0, 0xbb, 0xdd, 0xd2, 0x16, 0x13, 0x58, 0x3d, 0xd0, 0x9a, 0xb8, 0x95, 0xc6, 0x3b, 0xe4, 0x79, 0xf9, 0x45, 0x76, }; static const unsigned char ecdsa_secp384r1_sha384_9390_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9390_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9390 = { .name = "ecdsa_secp384r1_sha384_9390", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9390_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9390_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9390_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 319 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9391 for ECDSA, tcId is 320 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9391_pubkey[] = { 0xd5, 0x16, 0xcb, 0x8a, 0xc8, 0xe4, 0x45, 0x7b, 0x69, 0x3d, 0x51, 0x92, 0xbe, 0xeb, 0x6c, 0xe7, 0xd9, 0xa4, 0x6b, 0xef, 0x48, 0xee, 0xcf, 0x3e, 0xa8, 0x23, 0x28, 0x6f, 0x10, 0x1f, 0x98, 0xd1, 0x30, 0xf5, 0xa2, 0x6d, 0xc6, 0xfe, 0xc2, 0x36, 0x62, 0xef, 0xf0, 0x7f, 0x14, 0x48, 0x6f, 0xd5, 0x84, 0x56, 0x93, 0x2e, 0x74, 0x89, 0x4b, 0x7f, 0x0e, 0x3b, 0xb0, 0xdf, 0xd3, 0x62, 0x50, 0x2b, 0x37, 0x65, 0xdd, 0x80, 0xa3, 0x17, 0x72, 0x09, 0xfb, 0x22, 0x1d, 0xc9, 0xb5, 0x1a, 0xaf, 0x44, 0x70, 0xb2, 0x45, 0x39, 0x14, 0x05, 0xbe, 0xf5, 0x14, 0x17, 0x6b, 0x13, 0xa2, 0x67, 0xa7, 0x20, }; static const unsigned char ecdsa_secp384r1_sha384_9391_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9391_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9391 = { .name = "ecdsa_secp384r1_sha384_9391", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9391_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9391_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9391_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 320 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9392 for ECDSA, tcId is 321 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9392_pubkey[] = { 0xa8, 0x38, 0x0c, 0xd3, 0x50, 0x26, 0xe1, 0x3b, 0xf8, 0x7b, 0xe6, 0x93, 0xcd, 0xb6, 0xe7, 0x5a, 0x82, 0xd7, 0x65, 0xb4, 0x01, 0x9b, 0x52, 0x9e, 0x8d, 0x27, 0x7c, 0x4a, 0xf6, 0xc9, 0xdb, 0x27, 0xeb, 0xb5, 0xd3, 0xf8, 0x6e, 0x88, 0xad, 0xd9, 0xd5, 0xb6, 0x11, 0x86, 0xf0, 0x4c, 0x83, 0xa9, 0x92, 0xa1, 0x87, 0x50, 0x7c, 0x73, 0x73, 0x25, 0xd2, 0xcc, 0x62, 0x4a, 0xce, 0xf3, 0xcd, 0x03, 0x6b, 0xfa, 0x99, 0xe0, 0xc1, 0x51, 0x8b, 0xe6, 0x5c, 0x88, 0xbb, 0x51, 0xf9, 0x00, 0xf9, 0x41, 0x23, 0xac, 0xab, 0xad, 0x81, 0xd1, 0x51, 0x30, 0xd3, 0xad, 0xe7, 0xff, 0x7e, 0x43, 0x64, 0xe1, }; static const unsigned char ecdsa_secp384r1_sha384_9392_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9392_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9392 = { .name = "ecdsa_secp384r1_sha384_9392", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9392_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9392_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9392_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 321 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9393 for ECDSA, tcId is 322 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9393_pubkey[] = { 0x55, 0x4f, 0x2f, 0xd0, 0xb7, 0x00, 0xa9, 0xf4, 0x56, 0x87, 0x52, 0xb6, 0x73, 0xd9, 0xc0, 0xd2, 0x9d, 0xc9, 0x6c, 0x10, 0xfe, 0x67, 0xe3, 0x8c, 0x6d, 0x6d, 0x33, 0x9b, 0xfa, 0xfe, 0x05, 0xf9, 0x70, 0xda, 0x8c, 0x3d, 0x21, 0x64, 0xe8, 0x20, 0x31, 0x30, 0x7a, 0x44, 0xbd, 0x32, 0x25, 0x11, 0x71, 0x31, 0x2b, 0x61, 0xb5, 0x91, 0x13, 0xff, 0x0b, 0xd3, 0xb8, 0xa9, 0xa4, 0x93, 0x4d, 0xf2, 0x62, 0xaa, 0x80, 0x96, 0xf8, 0x40, 0xe9, 0xd8, 0xbf, 0xfa, 0x5d, 0x74, 0x91, 0xde, 0xd8, 0x7b, 0x38, 0xc4, 0x96, 0xf9, 0xb9, 0xe4, 0xf0, 0xba, 0x10, 0x89, 0xf8, 0xd3, 0xff, 0xc8, 0x8a, 0x9f, }; static const unsigned char ecdsa_secp384r1_sha384_9393_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9393_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9393 = { .name = "ecdsa_secp384r1_sha384_9393", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9393_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9393_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9393_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 322 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9394 for ECDSA, tcId is 323 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9394_pubkey[] = { 0x44, 0xee, 0x33, 0x35, 0xfa, 0x77, 0xd2, 0xfb, 0x02, 0xe4, 0xbd, 0x70, 0x74, 0xf4, 0x5e, 0x59, 0x8a, 0x87, 0x9c, 0x0f, 0xa8, 0x22, 0xec, 0x71, 0x8c, 0x21, 0xdc, 0x13, 0xb8, 0x34, 0x40, 0xed, 0xc4, 0xe3, 0xc1, 0x0a, 0x18, 0x58, 0x42, 0x3e, 0x03, 0x04, 0x4c, 0x9e, 0xff, 0x22, 0x59, 0x1c, 0xd0, 0x27, 0xc4, 0x99, 0x33, 0xe5, 0x51, 0x05, 0x57, 0xd6, 0xb4, 0xb2, 0xc6, 0xf6, 0x6f, 0xe5, 0xdc, 0xb9, 0x30, 0x2a, 0x3b, 0x13, 0xfd, 0xc6, 0x80, 0x48, 0xc3, 0xfc, 0xac, 0x88, 0xba, 0x15, 0x2b, 0x6a, 0x98, 0x33, 0xc8, 0x7f, 0xdc, 0x62, 0x80, 0xaf, 0xc5, 0xd1, 0x1a, 0xb7, 0xc1, 0x07, }; static const unsigned char ecdsa_secp384r1_sha384_9394_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9394_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9394 = { .name = "ecdsa_secp384r1_sha384_9394", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9394_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9394_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9394_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 323 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9395 for ECDSA, tcId is 324 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9395_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_9395_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9395_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9395 = { .name = "ecdsa_secp384r1_sha384_9395", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9395_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9395_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9395_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 324 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9396 for ECDSA, tcId is 325 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9396_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_9396_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9396_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9396 = { .name = "ecdsa_secp384r1_sha384_9396", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9396_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9396_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9396_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 325 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9397 for ECDSA, tcId is 326 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9397_pubkey[] = { 0x05, 0xe6, 0x7c, 0x44, 0xfc, 0x0c, 0xbc, 0x9a, 0x8e, 0xb3, 0x43, 0xb4, 0xd6, 0xf5, 0x96, 0xc7, 0xd0, 0x0c, 0xac, 0x5d, 0xa8, 0x59, 0x4c, 0xaf, 0x45, 0xb7, 0x20, 0x93, 0x97, 0x49, 0x62, 0x14, 0xc4, 0x2d, 0x85, 0x6a, 0x01, 0x5c, 0xe5, 0x89, 0xbc, 0x9b, 0xa8, 0x65, 0xa4, 0xfa, 0xb5, 0xab, 0x88, 0xa0, 0x1c, 0x7b, 0x5d, 0x09, 0xef, 0xaf, 0x87, 0x8f, 0xcb, 0x91, 0x02, 0xfb, 0x38, 0x75, 0xa8, 0x38, 0x1a, 0xf2, 0x34, 0xd1, 0xc5, 0x93, 0x07, 0x6e, 0x45, 0x22, 0x25, 0xa5, 0x6f, 0x51, 0x67, 0x4f, 0x34, 0x71, 0x26, 0xd3, 0x00, 0x9b, 0x44, 0xdc, 0xbb, 0x00, 0x3a, 0x64, 0xd9, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9397_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9397_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9397 = { .name = "ecdsa_secp384r1_sha384_9397", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9397_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9397_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9397_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 326 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9398 for ECDSA, tcId is 327 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9398_pubkey[] = { 0x0b, 0xb0, 0x3f, 0xce, 0x3c, 0x01, 0xeb, 0xcf, 0x08, 0x73, 0xab, 0xd1, 0x34, 0xa8, 0x68, 0x2f, 0x5f, 0xb8, 0xdb, 0xff, 0xa2, 0x2d, 0xa6, 0x74, 0x04, 0x7e, 0x5c, 0x3e, 0x71, 0xe4, 0x3d, 0xe5, 0x82, 0xed, 0x6a, 0xbb, 0x90, 0x8c, 0x2e, 0x4f, 0xaa, 0x5d, 0x96, 0x18, 0x62, 0x78, 0xb6, 0xc1, 0xba, 0x3b, 0x22, 0x12, 0x3e, 0x68, 0xcc, 0xc5, 0x6f, 0x17, 0xdd, 0x79, 0xff, 0x15, 0x56, 0x57, 0x06, 0xf7, 0x1a, 0x0b, 0x61, 0x23, 0xc7, 0x7a, 0xf3, 0xcd, 0x88, 0xf0, 0xaf, 0x02, 0x4c, 0xc5, 0x25, 0x97, 0x81, 0x51, 0x6e, 0xdc, 0xaf, 0x5f, 0xe9, 0x90, 0x64, 0x6e, 0x7b, 0x66, 0x99, 0x9d, }; static const unsigned char ecdsa_secp384r1_sha384_9398_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9398_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9398 = { .name = "ecdsa_secp384r1_sha384_9398", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9398_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9398_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9398_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 327 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9399 for ECDSA, tcId is 328 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9399_pubkey[] = { 0x58, 0xf2, 0x46, 0x09, 0x0d, 0x5e, 0x49, 0x86, 0x3b, 0xc0, 0xbf, 0x2d, 0x50, 0x1f, 0xf7, 0x2f, 0x55, 0x1c, 0x5f, 0x1c, 0x5e, 0x67, 0x9e, 0xb4, 0x90, 0x64, 0xfd, 0x02, 0xe2, 0x21, 0xa2, 0x70, 0x73, 0x26, 0xec, 0x2d, 0x14, 0x0b, 0xcc, 0x81, 0x7a, 0xfa, 0xad, 0x50, 0x65, 0x76, 0x15, 0x66, 0x49, 0x7c, 0x82, 0x3f, 0xd7, 0x36, 0x88, 0x2c, 0xbf, 0x78, 0xfb, 0x92, 0xb1, 0xa5, 0x58, 0x9b, 0x67, 0xe8, 0x06, 0x74, 0x97, 0xc7, 0x10, 0xa4, 0xcb, 0xb3, 0x9d, 0xee, 0x2c, 0x54, 0x31, 0xbc, 0x45, 0xcf, 0xb9, 0x6c, 0x9f, 0x84, 0x54, 0x38, 0x5c, 0x9f, 0x2b, 0x3e, 0xf2, 0xd3, 0xd3, 0x1a, }; static const unsigned char ecdsa_secp384r1_sha384_9399_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9399_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9399 = { .name = "ecdsa_secp384r1_sha384_9399", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9399_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9399_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9399_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 328 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9400 for ECDSA, tcId is 329 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9400_pubkey[] = { 0xfc, 0x69, 0x84, 0xdd, 0x68, 0x30, 0xd1, 0x48, 0x5f, 0xb2, 0x58, 0x1a, 0x45, 0xa7, 0x91, 0xd8, 0xdc, 0xa2, 0xc7, 0x27, 0xc7, 0x3d, 0x3d, 0x44, 0xc8, 0x9f, 0x00, 0x82, 0xc1, 0x86, 0x8a, 0xf5, 0xca, 0x74, 0xb4, 0xca, 0x4a, 0xe2, 0x28, 0x02, 0x64, 0x0a, 0x9e, 0xbf, 0xe8, 0xc7, 0xae, 0x12, 0x99, 0x8d, 0x63, 0xa5, 0xb5, 0xad, 0x1b, 0x72, 0xb8, 0x99, 0xf0, 0xb1, 0x32, 0xe4, 0x95, 0x2a, 0xaa, 0x19, 0xd4, 0x1f, 0xde, 0xea, 0x48, 0xb1, 0xed, 0x6b, 0x83, 0x58, 0xdd, 0x1d, 0xb2, 0x07, 0xfd, 0x66, 0xe0, 0x14, 0x53, 0xad, 0x40, 0xf6, 0x7b, 0x83, 0x6a, 0xdc, 0x80, 0x2d, 0x5f, 0xe8, }; static const unsigned char ecdsa_secp384r1_sha384_9400_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9400_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9400 = { .name = "ecdsa_secp384r1_sha384_9400", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9400_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9400_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9400_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 329 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9401 for ECDSA, tcId is 330 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9401_pubkey[] = { 0x1b, 0x8d, 0xef, 0x59, 0x22, 0x30, 0x3d, 0x64, 0x7e, 0x8e, 0xb0, 0x7e, 0x3b, 0xad, 0x92, 0xf9, 0x24, 0xb7, 0x9b, 0x76, 0x9e, 0xef, 0x16, 0x8e, 0x75, 0x41, 0xde, 0x1f, 0x4e, 0x0d, 0x28, 0xae, 0x97, 0x33, 0xeb, 0x98, 0xcf, 0x8a, 0x1f, 0xb6, 0xdd, 0x52, 0xca, 0x02, 0xc8, 0xc7, 0x5b, 0x51, 0xc7, 0xaa, 0x4b, 0xf6, 0x79, 0xd4, 0x9d, 0x81, 0x14, 0x12, 0x20, 0x74, 0xda, 0x8f, 0x60, 0x44, 0xa4, 0x27, 0x37, 0x17, 0x96, 0xa5, 0x65, 0x4a, 0x61, 0x06, 0x16, 0x2d, 0x5f, 0x68, 0x6a, 0xbb, 0x73, 0xeb, 0xd8, 0x96, 0xab, 0x08, 0xc7, 0x06, 0x26, 0x87, 0xf1, 0x21, 0x71, 0xfb, 0xe4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9401_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9401_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9401 = { .name = "ecdsa_secp384r1_sha384_9401", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9401_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9401_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9401_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 330 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9402 for ECDSA, tcId is 331 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9402_pubkey[] = { 0x17, 0x34, 0xa0, 0x39, 0xa8, 0x8a, 0x16, 0xc2, 0xff, 0x4a, 0xa9, 0x7d, 0x23, 0x99, 0x12, 0x1f, 0x56, 0xf5, 0x2e, 0xf0, 0x1e, 0xd5, 0xe5, 0x08, 0x87, 0xf7, 0x36, 0xf6, 0x5b, 0x6e, 0x51, 0xd6, 0xe8, 0x78, 0x6a, 0xbb, 0x4e, 0x06, 0x3d, 0xa5, 0xd1, 0xba, 0x81, 0x2d, 0xff, 0x99, 0x84, 0x03, 0xcc, 0xd6, 0x98, 0xe6, 0xc2, 0x96, 0xd5, 0xcd, 0x69, 0x17, 0x8f, 0x8a, 0x82, 0x48, 0x1a, 0x86, 0x5d, 0xa3, 0x31, 0x62, 0x7f, 0x1c, 0x4b, 0x32, 0x4f, 0xbc, 0x02, 0xb3, 0x6e, 0x8b, 0x5e, 0xd5, 0x8a, 0x31, 0xf7, 0x28, 0xe9, 0x04, 0xd2, 0x03, 0xa3, 0x88, 0x75, 0x53, 0x02, 0x19, 0x57, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9402_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9402_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9402 = { .name = "ecdsa_secp384r1_sha384_9402", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9402_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9402_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9402_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 331 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9403 for ECDSA, tcId is 332 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9403_pubkey[] = { 0x52, 0xca, 0x47, 0xdd, 0xa9, 0x91, 0x72, 0xcb, 0x83, 0x21, 0x49, 0x5a, 0xcf, 0x98, 0x85, 0x48, 0x29, 0x59, 0x88, 0xec, 0x97, 0x3c, 0x1b, 0x4e, 0xa9, 0x46, 0x2c, 0x53, 0xe5, 0x76, 0x8a, 0x70, 0x4a, 0x93, 0x64, 0x10, 0xee, 0x84, 0x7b, 0x5d, 0xbf, 0x1e, 0x9d, 0x0c, 0x13, 0x1d, 0xa6, 0xc7, 0x87, 0xa4, 0x70, 0x27, 0xe6, 0x65, 0x57, 0x92, 0xeb, 0x00, 0x2d, 0x42, 0x28, 0xee, 0x72, 0xf7, 0xc8, 0x14, 0xc9, 0xa0, 0xce, 0xcb, 0xff, 0x26, 0x79, 0x48, 0xf8, 0x1c, 0x99, 0x03, 0xac, 0x10, 0xeb, 0x35, 0xf6, 0xcb, 0x86, 0x36, 0x92, 0x24, 0xed, 0x60, 0x98, 0x11, 0xcd, 0xf3, 0x90, 0xf4, }; static const unsigned char ecdsa_secp384r1_sha384_9403_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9403_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9403 = { .name = "ecdsa_secp384r1_sha384_9403", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9403_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9403_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9403_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 332 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9404 for ECDSA, tcId is 333 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9404_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_9404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9404_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9404 = { .name = "ecdsa_secp384r1_sha384_9404", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9404_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9404_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9404_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 333 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9405 for ECDSA, tcId is 334 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9405_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_9405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9405_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9405 = { .name = "ecdsa_secp384r1_sha384_9405", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9405_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9405_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9405_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 334 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9406 for ECDSA, tcId is 335 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9406_pubkey[] = { 0xf8, 0x96, 0x35, 0x3c, 0xc3, 0xa8, 0xaf, 0xdd, 0x54, 0x3e, 0xc3, 0xae, 0xf0, 0x62, 0xca, 0x97, 0xbc, 0x32, 0xed, 0x17, 0x24, 0xea, 0x38, 0xb9, 0x40, 0xb8, 0xc0, 0xea, 0x0e, 0x23, 0xb3, 0x41, 0x87, 0xaf, 0xbe, 0x70, 0xda, 0xf8, 0xdb, 0xaa, 0x5b, 0x51, 0x15, 0x57, 0xe5, 0xd2, 0xbd, 0xda, 0xc4, 0xbd, 0x26, 0x5d, 0xa6, 0x7c, 0xee, 0xaf, 0xca, 0x63, 0x6f, 0x6f, 0x4c, 0x04, 0x72, 0xf2, 0x2a, 0x9d, 0x02, 0xe2, 0x28, 0x91, 0x84, 0xf7, 0x3b, 0xbb, 0x70, 0x0a, 0xe8, 0xfc, 0x92, 0x1e, 0xff, 0x49, 0x20, 0xf2, 0x90, 0xbf, 0xcb, 0x49, 0xfb, 0xb2, 0x32, 0xcc, 0x13, 0xa2, 0x10, 0x28, }; static const unsigned char ecdsa_secp384r1_sha384_9406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9406_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9406 = { .name = "ecdsa_secp384r1_sha384_9406", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9406_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9406_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9406_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 335 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9407 for ECDSA, tcId is 336 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9407_pubkey[] = { 0x37, 0x0d, 0x9e, 0x2e, 0x31, 0xc7, 0x12, 0xc8, 0x02, 0x80, 0x92, 0xf8, 0x02, 0x31, 0x9d, 0x7f, 0xdf, 0x5b, 0x33, 0x19, 0xa8, 0x51, 0x8d, 0x08, 0xbe, 0xd3, 0x89, 0x15, 0x08, 0xc7, 0x06, 0x0c, 0xfe, 0x22, 0x36, 0xe1, 0x8f, 0xa1, 0x4f, 0xe0, 0x77, 0x09, 0x3c, 0xea, 0xe6, 0x33, 0xe5, 0x43, 0x0f, 0xd7, 0x9a, 0xac, 0xf9, 0xd1, 0x6e, 0xcc, 0x19, 0xb1, 0x2d, 0x60, 0xfb, 0xa4, 0x99, 0x8d, 0xfc, 0x68, 0x27, 0x02, 0xec, 0x7c, 0x8b, 0xdd, 0x4a, 0x59, 0x00, 0x35, 0x77, 0x3b, 0x8c, 0x9c, 0x57, 0x0a, 0xc7, 0xdc, 0xd4, 0x14, 0xe0, 0x32, 0x52, 0xf7, 0xa0, 0xe6, 0xf5, 0x3b, 0x58, 0x63, }; static const unsigned char ecdsa_secp384r1_sha384_9407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9407_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9407 = { .name = "ecdsa_secp384r1_sha384_9407", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9407_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9407_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9407_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 336 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9408 for ECDSA, tcId is 337 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9408_pubkey[] = { 0x94, 0x1e, 0x6c, 0xfa, 0x35, 0x6e, 0x57, 0x2d, 0xcc, 0xca, 0xeb, 0x59, 0x4b, 0x06, 0x95, 0x5d, 0x99, 0xdc, 0x4b, 0xf0, 0x79, 0x58, 0xfc, 0x98, 0xff, 0xa1, 0x7d, 0xe1, 0x1c, 0x75, 0x21, 0xbf, 0x2c, 0x7a, 0xa8, 0xff, 0x26, 0x09, 0x52, 0xfc, 0xb7, 0xaa, 0xc0, 0x78, 0xed, 0xe6, 0x7b, 0x47, 0x90, 0xa7, 0x8a, 0x02, 0x96, 0xb0, 0x41, 0xa1, 0x0f, 0x00, 0x3d, 0xf1, 0x99, 0x8d, 0xa4, 0xcc, 0x4a, 0x16, 0x14, 0xeb, 0xcb, 0xf5, 0xd2, 0x39, 0x43, 0x1f, 0x33, 0xd9, 0x0d, 0x30, 0x23, 0xed, 0xc1, 0x80, 0x2e, 0x8d, 0xb6, 0xda, 0xbc, 0xba, 0xe6, 0x7c, 0xc3, 0x14, 0xda, 0x2a, 0xab, 0xab, }; static const unsigned char ecdsa_secp384r1_sha384_9408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9408_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9408 = { .name = "ecdsa_secp384r1_sha384_9408", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9408_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9408_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9408_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 337 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9409 for ECDSA, tcId is 338 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9409_pubkey[] = { 0x3e, 0xcf, 0xd5, 0x8a, 0x3c, 0xe5, 0x83, 0x86, 0x6e, 0x04, 0x71, 0xd1, 0x6e, 0xb3, 0xc1, 0x0a, 0x41, 0x1e, 0xc3, 0xb8, 0x67, 0x1f, 0x3a, 0x04, 0x76, 0x9b, 0x1e, 0xd8, 0x46, 0x4a, 0x71, 0xcf, 0x1c, 0x76, 0xd8, 0xd9, 0xb7, 0xe3, 0x67, 0x0b, 0xbe, 0x71, 0x2d, 0x6f, 0x55, 0x4a, 0x93, 0x83, 0xd9, 0x80, 0xd8, 0xbe, 0xdf, 0x57, 0x47, 0x0d, 0x6b, 0x45, 0xcc, 0x1a, 0xd0, 0xc6, 0x42, 0x6d, 0xc7, 0x0a, 0x0e, 0x4b, 0xe9, 0x01, 0x10, 0x6a, 0x36, 0x66, 0x3b, 0xfc, 0xab, 0x04, 0xfc, 0xb8, 0x60, 0x08, 0x77, 0x7b, 0x92, 0x44, 0x51, 0x20, 0xd5, 0xe3, 0x64, 0x1d, 0x97, 0x39, 0x63, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_9409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9409_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9409 = { .name = "ecdsa_secp384r1_sha384_9409", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9409_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9409_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9409_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 338 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9410 for ECDSA, tcId is 339 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9410_pubkey[] = { 0x41, 0x50, 0xcc, 0xd0, 0xfa, 0x45, 0xaa, 0x2e, 0xf6, 0xb5, 0x04, 0x2d, 0xdb, 0xb1, 0xb8, 0x7c, 0x5f, 0xfd, 0x11, 0x15, 0xa8, 0xfe, 0x59, 0x95, 0x64, 0x19, 0x48, 0xac, 0xda, 0x82, 0xa7, 0xb1, 0x90, 0x76, 0x2d, 0x84, 0x35, 0x2c, 0xd7, 0x4d, 0x1c, 0xa0, 0x1e, 0x79, 0xf6, 0x8f, 0x9c, 0xb4, 0xeb, 0x11, 0xbe, 0x9d, 0x49, 0x4c, 0x18, 0x1c, 0x15, 0x6e, 0x23, 0xe7, 0x7e, 0x53, 0x2b, 0xdf, 0x0a, 0x20, 0xc3, 0xcc, 0x74, 0xba, 0x8c, 0x29, 0xb1, 0xf3, 0xeb, 0x2b, 0xd9, 0x91, 0x29, 0xee, 0x0d, 0x70, 0xff, 0x0d, 0x59, 0x3f, 0x0d, 0x7a, 0x6d, 0x68, 0x87, 0xe7, 0xc5, 0x59, 0x30, 0xd2, }; static const unsigned char ecdsa_secp384r1_sha384_9410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9410_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9410 = { .name = "ecdsa_secp384r1_sha384_9410", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9410_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9410_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9410_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 339 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9411 for ECDSA, tcId is 340 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9411_pubkey[] = { 0xe7, 0x8f, 0xe2, 0xc1, 0x1b, 0xea, 0xc7, 0x09, 0x0e, 0xe0, 0xaf, 0x7f, 0xed, 0x46, 0x9a, 0x8c, 0xce, 0xbd, 0x3c, 0xcc, 0xc4, 0xee, 0x9f, 0xcc, 0xc8, 0xef, 0x3f, 0xc0, 0x45, 0x5b, 0x69, 0xaa, 0xa0, 0x82, 0xdc, 0x13, 0xe1, 0xd8, 0x4f, 0x34, 0x02, 0x6c, 0xb6, 0xf0, 0xaf, 0x9e, 0x99, 0x2f, 0xf3, 0x4e, 0xbb, 0xa7, 0x1b, 0xf3, 0xa4, 0x05, 0x0b, 0xf2, 0x8e, 0x40, 0x84, 0xb5, 0xc5, 0xf5, 0xd4, 0x09, 0x8e, 0xc4, 0x6f, 0x10, 0xa3, 0x1b, 0x02, 0xfb, 0x4b, 0xf2, 0x0c, 0xc9, 0x36, 0x2f, 0x6f, 0x02, 0xa6, 0x6e, 0x80, 0x2f, 0x81, 0x75, 0x07, 0x53, 0x5f, 0xac, 0x3e, 0xc0, 0xb0, 0x99, }; static const unsigned char ecdsa_secp384r1_sha384_9411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9411_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9411 = { .name = "ecdsa_secp384r1_sha384_9411", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9411_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9411_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9411_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 340 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9412 for ECDSA, tcId is 341 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9412_pubkey[] = { 0xee, 0x24, 0xab, 0x8a, 0x34, 0xd0, 0x5a, 0xf6, 0x84, 0x93, 0x93, 0x57, 0xf3, 0x27, 0x59, 0xcc, 0x5a, 0x14, 0xf3, 0xc7, 0x17, 0x52, 0x9a, 0x20, 0xae, 0xa8, 0xe0, 0xc5, 0x96, 0x5d, 0x8a, 0x41, 0xe6, 0x89, 0x25, 0xf6, 0x88, 0x47, 0x19, 0x94, 0xb7, 0x20, 0x21, 0xba, 0x51, 0xb2, 0x8c, 0x09, 0x0a, 0x55, 0x69, 0x3c, 0x92, 0xad, 0x0c, 0xba, 0xe9, 0xed, 0xcf, 0x51, 0x5e, 0x2b, 0x4c, 0x06, 0x0b, 0x88, 0x8d, 0x82, 0xc8, 0x1e, 0x4a, 0x3b, 0x6a, 0x17, 0x3b, 0x62, 0xed, 0x04, 0xa4, 0x6f, 0xa9, 0x5d, 0xb1, 0xa2, 0xf3, 0x94, 0x99, 0x80, 0xfb, 0xa2, 0xe3, 0x71, 0x26, 0x3c, 0x4f, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_9412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9412_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9412 = { .name = "ecdsa_secp384r1_sha384_9412", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9412_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9412_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9412_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 341 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9413 for ECDSA, tcId is 342 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9413_pubkey[] = { 0x3d, 0x2e, 0x91, 0x60, 0x55, 0xc9, 0x2e, 0x1b, 0x36, 0x13, 0x3f, 0x59, 0x37, 0xb3, 0x7c, 0x1b, 0x01, 0x02, 0x83, 0x4e, 0xb7, 0x70, 0x08, 0xa3, 0xba, 0x9c, 0x3d, 0xa4, 0x46, 0xe9, 0x06, 0x59, 0x71, 0xd6, 0x8b, 0xa9, 0x13, 0x09, 0x18, 0x51, 0xe1, 0x0c, 0xff, 0x5b, 0x4c, 0xd8, 0x75, 0xc1, 0x39, 0xaa, 0x7a, 0xad, 0xfc, 0x2c, 0xaf, 0x71, 0x07, 0xb1, 0x7a, 0xe1, 0xae, 0xa8, 0xb2, 0x99, 0xd6, 0x1b, 0xf1, 0x5a, 0xca, 0x0c, 0xb3, 0xfd, 0x6f, 0x1f, 0xfd, 0xe8, 0x19, 0x2b, 0xfe, 0x58, 0xf0, 0x82, 0x2b, 0xbb, 0xc1, 0xf5, 0x5b, 0xdd, 0xf6, 0xb4, 0xfe, 0x9c, 0x8f, 0x2b, 0x0e, 0xac, }; static const unsigned char ecdsa_secp384r1_sha384_9413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9413_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9413 = { .name = "ecdsa_secp384r1_sha384_9413", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9413_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9413_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9413_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 342 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9414 for ECDSA, tcId is 343 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9414_pubkey[] = { 0xae, 0x59, 0x66, 0x97, 0x42, 0x7a, 0xa2, 0x50, 0x15, 0x6c, 0x05, 0xac, 0x43, 0x38, 0xe4, 0x89, 0x80, 0xa7, 0xf0, 0x93, 0xea, 0x1f, 0x1f, 0xe6, 0x70, 0x98, 0xb4, 0x3f, 0x65, 0x39, 0xc1, 0xb2, 0x0a, 0xe7, 0x43, 0x38, 0xf9, 0xbf, 0x27, 0x0d, 0x33, 0x66, 0x3c, 0x50, 0xab, 0xe8, 0xfd, 0x00, 0x1c, 0xa6, 0xa5, 0x27, 0x32, 0xdb, 0x74, 0xab, 0x15, 0xd2, 0xf2, 0x49, 0xa3, 0xd8, 0x39, 0x08, 0x0f, 0x89, 0x83, 0x67, 0xdf, 0xd6, 0x49, 0x92, 0xcd, 0xce, 0x27, 0x08, 0xde, 0xaa, 0xd5, 0x23, 0xa2, 0xa2, 0x36, 0xb4, 0x34, 0x00, 0x42, 0x42, 0x41, 0xc9, 0x1a, 0x35, 0xb5, 0x30, 0xfa, 0x50, }; static const unsigned char ecdsa_secp384r1_sha384_9414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9414_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd4, 0x9a, 0x25, 0x39, 0x86, 0xbb, 0xaa, 0x8c, 0xe9, 0xc3, 0xd3, 0x80, 0x83, 0x13, 0xd3, 0x9c, 0x3b, 0x95, 0x0a, 0x47, 0x83, 0x72, 0xed, 0xc0, 0x09, 0xbc, 0x05, 0x66, 0xb7, 0x3b, 0xe7, 0xb0, 0x5d, 0xad, 0x07, 0x37, 0xe1, 0x69, 0x60, 0x25, 0x7c, 0xc1, 0x6d, 0xb6, 0xec, 0x6c, 0x62, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9414 = { .name = "ecdsa_secp384r1_sha384_9414", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9414_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9414_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9414_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 343 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9415 for ECDSA, tcId is 344 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9415_pubkey[] = { 0x88, 0x73, 0x8f, 0x99, 0x81, 0xdd, 0x4d, 0x1f, 0xab, 0xb6, 0x0a, 0xd8, 0x3c, 0x2d, 0xd6, 0xdf, 0xc9, 0xda, 0x30, 0x22, 0x09, 0xae, 0x3e, 0x53, 0x49, 0x8a, 0x88, 0x3b, 0x6e, 0x39, 0xa3, 0x8b, 0xea, 0xd9, 0xb0, 0x27, 0x09, 0xf3, 0x52, 0xd3, 0xe6, 0xb6, 0x57, 0x81, 0x54, 0xea, 0xb2, 0x52, 0x93, 0x88, 0xa0, 0x5c, 0x6b, 0x9f, 0x3a, 0x40, 0x28, 0xab, 0xb9, 0x95, 0x0a, 0x51, 0xf5, 0x26, 0x4e, 0xcd, 0x75, 0x80, 0xa4, 0x23, 0xfd, 0xec, 0x94, 0x72, 0xfa, 0xee, 0xb5, 0x7f, 0x92, 0xe3, 0x1c, 0x46, 0xbe, 0xf2, 0xa7, 0x81, 0xfe, 0x5e, 0xda, 0xd0, 0x26, 0x00, 0x9f, 0x19, 0x82, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_9415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9415_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x50, 0x90, 0xb0, 0xd6, 0xa6, 0x82, 0x0b, 0xbb, 0xa3, 0x94, 0xef, 0xbe, 0xe5, 0xc2, 0x4a, 0x22, 0x81, 0xe8, 0x25, 0xd2, 0xf6, 0xc5, 0x5f, 0xb7, 0xa8, 0x5b, 0x82, 0x51, 0xdb, 0x00, 0xf7, 0x5a, 0xb0, 0x7c, 0xc9, 0x93, 0xce, 0xaf, 0x66, 0x4f, 0x3c, 0x11, 0x6b, 0xaf, 0x34, 0xb0, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9415 = { .name = "ecdsa_secp384r1_sha384_9415", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9415_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9415_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9415_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 344 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9416 for ECDSA, tcId is 345 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9416_pubkey[] = { 0xf4, 0x21, 0x54, 0x13, 0x11, 0xc9, 0x4f, 0xdd, 0x79, 0xfc, 0x29, 0x8f, 0x8a, 0xb1, 0xa3, 0xad, 0xfd, 0x08, 0x02, 0x9f, 0xda, 0xd4, 0x39, 0xa9, 0x4d, 0x4c, 0xea, 0x11, 0xf7, 0xe7, 0x99, 0xbc, 0x43, 0x96, 0x09, 0xf2, 0xfb, 0x7b, 0xe3, 0xf3, 0x49, 0xd5, 0x5e, 0x48, 0x4d, 0x0a, 0x0d, 0x36, 0xb3, 0x53, 0x30, 0xbb, 0xdb, 0xec, 0x1e, 0x75, 0xf2, 0x98, 0x44, 0x83, 0xd9, 0x6b, 0xf2, 0x10, 0xd7, 0x22, 0xc1, 0x83, 0x02, 0x92, 0xff, 0xc3, 0x5a, 0x2f, 0x6a, 0x21, 0xa4, 0xb5, 0x05, 0x19, 0xf5, 0x65, 0xf0, 0x24, 0xbb, 0xcc, 0xc9, 0x72, 0x28, 0xa2, 0xf8, 0xad, 0x8f, 0xad, 0xc0, 0xd5, }; static const unsigned char ecdsa_secp384r1_sha384_9416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9416_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb3, 0x9a, 0xf4, 0xa8, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xa4, 0x3d, 0x25, 0x05, 0xa0, 0xa8, 0xc7, 0x2c, 0x57, 0x31, 0xf4, 0xfd, 0x96, 0x74, 0x20, 0xb1, 0x00, 0x0e, 0x3f, 0x75, 0x50, 0x2e, 0xd7, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9416 = { .name = "ecdsa_secp384r1_sha384_9416", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9416_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9416_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9416_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 345 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9417 for ECDSA, tcId is 346 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9417_pubkey[] = { 0x39, 0x9b, 0xe4, 0xcf, 0xc4, 0x39, 0xf9, 0x4f, 0x24, 0x21, 0xcb, 0xd3, 0x4c, 0x2c, 0xd9, 0x0b, 0xae, 0x53, 0xeb, 0x60, 0xdd, 0xfa, 0xfc, 0xa5, 0x2f, 0x72, 0x75, 0xd1, 0x65, 0xd1, 0x4f, 0xa6, 0x59, 0xb6, 0x36, 0x71, 0x3b, 0x5d, 0x4b, 0x39, 0xe6, 0x2f, 0xd4, 0x8b, 0xae, 0x14, 0x1d, 0x0e, 0x1b, 0x23, 0xe3, 0xb4, 0xf0, 0xc2, 0x02, 0xed, 0x7b, 0x59, 0xdb, 0x78, 0xa3, 0x5c, 0x12, 0xac, 0x69, 0x8c, 0x60, 0x3e, 0xab, 0x14, 0x4f, 0xd0, 0x9a, 0xc2, 0xed, 0x8f, 0x44, 0x95, 0xf6, 0x07, 0xe4, 0xd2, 0xc8, 0x7a, 0x23, 0xce, 0x2e, 0xc3, 0x3e, 0x41, 0x0c, 0xa4, 0x7e, 0xcc, 0x25, 0x55, }; static const unsigned char ecdsa_secp384r1_sha384_9417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9417_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaf, 0x4a, 0x81, 0xee, 0x4a, 0xe7, 0x90, 0x64, 0xed, 0x80, 0xf2, 0x7e, 0x14, 0x32, 0xe8, 0x48, 0x45, 0xf1, 0x5e, 0xce, 0x39, 0x9f, 0x2c, 0xbf, 0x28, 0xdf, 0x82, 0x9c, 0xcd, 0x30, 0xf5, 0xef, 0x62, 0xec, 0x23, 0x95, 0x7b, 0x83, 0x7d, 0x73, 0xfe, 0x4e, 0x15, 0x6e, 0xdc, 0xcd, 0x44, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9417 = { .name = "ecdsa_secp384r1_sha384_9417", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9417_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9417_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9417_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 346 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9418 for ECDSA, tcId is 347 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9418_pubkey[] = { 0x15, 0x78, 0xbb, 0xff, 0x72, 0x13, 0x7c, 0x4b, 0xca, 0x33, 0xd7, 0x38, 0x5a, 0x89, 0x2b, 0xe9, 0x4c, 0xb0, 0x59, 0xf9, 0x09, 0x1d, 0xdf, 0xe8, 0x90, 0x34, 0x5f, 0x71, 0x2a, 0x9f, 0xba, 0x5f, 0xc7, 0x70, 0x84, 0xce, 0xc1, 0x10, 0x84, 0xed, 0x04, 0x84, 0x91, 0x60, 0x4a, 0x07, 0xf6, 0x6c, 0x76, 0xbb, 0xaa, 0x87, 0x2f, 0x07, 0x10, 0xd8, 0x2a, 0x08, 0xd9, 0xdd, 0xdd, 0x83, 0x3c, 0x7b, 0xe7, 0xc7, 0xe8, 0xe2, 0x65, 0xf4, 0x91, 0x45, 0x15, 0x7e, 0xb4, 0xe8, 0xe8, 0x28, 0x00, 0x76, 0xa3, 0x7e, 0xe5, 0x87, 0x32, 0x71, 0xdb, 0x51, 0x00, 0x34, 0xda, 0x19, 0xda, 0x24, 0x41, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_9418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9418_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x95, 0x03, 0xdc, 0x95, 0xcf, 0x20, 0xc9, 0xdb, 0x01, 0xe4, 0xfc, 0x28, 0x65, 0xd0, 0x90, 0x8b, 0xe2, 0xbd, 0x9c, 0x73, 0x3e, 0x59, 0x7e, 0x8a, 0x5b, 0xb7, 0xb7, 0xa6, 0x2a, 0xbd, 0xff, 0x6d, 0xbe, 0x39, 0x78, 0xae, 0x56, 0x53, 0x6d, 0x0f, 0xb0, 0x11, 0x72, 0xec, 0xd5, 0x5f, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9418 = { .name = "ecdsa_secp384r1_sha384_9418", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9418_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9418_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9418_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 347 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9419 for ECDSA, tcId is 348 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9419_pubkey[] = { 0x33, 0xba, 0x45, 0x1c, 0x85, 0xe7, 0x29, 0x05, 0x8f, 0x83, 0x04, 0x10, 0x77, 0xa4, 0x69, 0x5e, 0xb4, 0x7d, 0xf9, 0x3e, 0x71, 0x8b, 0x09, 0xa4, 0x61, 0x8c, 0x75, 0x3a, 0xc8, 0x03, 0xcd, 0x75, 0xc1, 0xa9, 0x12, 0x90, 0xc2, 0xff, 0x5a, 0x63, 0x53, 0x89, 0xd0, 0x71, 0x49, 0x57, 0x1d, 0xab, 0x1f, 0xc7, 0xd8, 0xa7, 0x17, 0x76, 0x85, 0x1f, 0xf2, 0x44, 0xff, 0x63, 0x2f, 0xe6, 0xf9, 0x2e, 0x16, 0x52, 0xe5, 0x28, 0x48, 0x93, 0xc4, 0x24, 0x4f, 0xe7, 0x75, 0xd8, 0xef, 0xc5, 0x89, 0xd8, 0x23, 0xdd, 0x03, 0xf3, 0x91, 0x90, 0x27, 0xf0, 0x04, 0x53, 0x7b, 0xd8, 0xee, 0x09, 0xf3, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9419_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xa3, 0xae, 0x8e, 0xda, 0xb8, 0x4d, 0xc3, 0x33, 0x0a, 0x39, 0xf7, 0x09, 0x38, 0xe3, 0x91, 0x2b, 0xd5, 0x97, 0x53, 0xde, 0x5a, 0xed, 0x30, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9419 = { .name = "ecdsa_secp384r1_sha384_9419", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9419_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9419_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9419_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 348 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9420 for ECDSA, tcId is 349 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9420_pubkey[] = { 0x04, 0x07, 0x71, 0xe3, 0x39, 0x02, 0x16, 0xfe, 0xd2, 0xc6, 0x20, 0x8b, 0xdf, 0x5b, 0xfe, 0xa8, 0x3a, 0xb1, 0x91, 0x5b, 0x16, 0x6e, 0x62, 0x65, 0x69, 0xf1, 0x2e, 0xfd, 0x41, 0x0a, 0x39, 0xb7, 0xe7, 0xc7, 0x6f, 0x70, 0xf0, 0x01, 0x28, 0x43, 0xa2, 0x6d, 0xeb, 0xf4, 0xcc, 0xc3, 0x3d, 0xda, 0xe5, 0xbc, 0x5f, 0x7e, 0x62, 0xd0, 0x54, 0xea, 0xc3, 0x1c, 0xd0, 0x22, 0xaf, 0xdb, 0x71, 0xb7, 0xc6, 0x38, 0xf2, 0x4c, 0x30, 0xcb, 0xad, 0x0e, 0xf3, 0x5e, 0xd2, 0xfc, 0x99, 0x17, 0xf3, 0x56, 0xe9, 0xc3, 0xf0, 0x43, 0x91, 0xb2, 0x1d, 0x10, 0x35, 0x27, 0x4b, 0x81, 0x53, 0x7f, 0xcb, 0xf3, }; static const unsigned char ecdsa_secp384r1_sha384_9420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9420_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x51, 0xcd, 0x3b, 0xa8, 0xeb, 0x20, 0x1f, 0x53, 0xdd, 0xb4, 0xe3, 0x4e, 0x08, 0xc0, 0xff, 0x7d, 0xff, 0x93, 0x78, 0x10, 0x67, 0x84, 0xd7, 0x98, 0xd5, 0xa3, 0x44, 0x0b, 0xd6, 0xdc, 0x34, 0xbe, 0x3a, 0x0e, 0xae, 0xf8, 0x77, 0x66, 0x19, 0xa0, 0xc9, 0x7f, 0xef, 0xb1, 0x57, 0x20, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9420 = { .name = "ecdsa_secp384r1_sha384_9420", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9420_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9420_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9420_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 349 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9421 for ECDSA, tcId is 350 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9421_pubkey[] = { 0x98, 0xd3, 0xf1, 0x6e, 0x1c, 0x51, 0x0a, 0x93, 0x3e, 0x64, 0x8e, 0x78, 0xd0, 0x15, 0x88, 0x31, 0x9f, 0x00, 0x2e, 0x94, 0x75, 0xdf, 0x89, 0x42, 0xa2, 0xa8, 0x9d, 0xb0, 0x66, 0x6b, 0xb7, 0xc8, 0x8b, 0x32, 0xbb, 0x24, 0x81, 0x40, 0xe4, 0x4a, 0xc4, 0xab, 0x28, 0x11, 0x1b, 0x2b, 0x79, 0x23, 0x99, 0xa9, 0x26, 0xf4, 0xa6, 0x6f, 0xbe, 0x28, 0xff, 0x65, 0xc0, 0x9f, 0x83, 0x06, 0x89, 0x3a, 0xec, 0x09, 0x4b, 0x89, 0xd0, 0xfe, 0x52, 0x9e, 0x35, 0x77, 0xc5, 0xec, 0xf3, 0x0a, 0x79, 0x44, 0xca, 0xaf, 0x53, 0x0f, 0x45, 0x75, 0xeb, 0x11, 0x3f, 0xcf, 0x4c, 0x20, 0x0d, 0x2d, 0xd4, 0xbd, }; static const unsigned char ecdsa_secp384r1_sha384_9421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9421_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0x07, 0xe2, 0x67, 0xea, 0x63, 0x53, 0x84, 0xa6, 0xda, 0x09, 0x82, 0x31, 0x49, 0xf5, 0xcb, 0x7a, 0xcb, 0xb2, 0x9e, 0x91, 0x0d, 0x26, 0x30, 0xc5, 0xfb, 0x5a, 0xfb, 0xc4, 0x2a, 0xa8, 0x43, 0x63, 0x49, 0xb2, 0x14, 0xa3, 0xb8, 0xfb, 0x94, 0x81, 0xec, 0x99, 0x9e, 0x00, 0x50, 0x91, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9421 = { .name = "ecdsa_secp384r1_sha384_9421", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9421_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9421_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9421_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 350 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9422 for ECDSA, tcId is 351 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9422_pubkey[] = { 0xd1, 0xfd, 0x60, 0x2f, 0xee, 0xf8, 0x0b, 0xe9, 0xe5, 0x5a, 0x19, 0xd1, 0xa9, 0x79, 0x9c, 0x72, 0xa8, 0x99, 0x11, 0x0c, 0x6a, 0xc2, 0x1f, 0xb3, 0xc2, 0x13, 0x57, 0x06, 0x98, 0x09, 0xd5, 0x91, 0xa8, 0x77, 0x5b, 0x64, 0xd1, 0x86, 0x7a, 0x8c, 0xff, 0xf1, 0x24, 0xf6, 0xa5, 0xe3, 0xa4, 0xf5, 0xf9, 0x54, 0x80, 0x64, 0xf0, 0x1b, 0x9a, 0xf8, 0x86, 0x87, 0x05, 0x49, 0x3a, 0x37, 0xa0, 0x37, 0x19, 0x3b, 0x48, 0xf5, 0x3b, 0x7c, 0x79, 0x73, 0x02, 0x3f, 0x53, 0xe6, 0xce, 0xff, 0x68, 0x30, 0xca, 0x2f, 0x7a, 0x14, 0xef, 0x51, 0x53, 0x6d, 0x45, 0x3a, 0xf4, 0x3b, 0x30, 0x58, 0xd8, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_9422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9422_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xac, 0xc4, 0xf2, 0xaf, 0xb7, 0xf5, 0xc1, 0x0f, 0x81, 0x81, 0x75, 0x07, 0x4e, 0xf6, 0x88, 0xa6, 0x43, 0xfc, 0x53, 0x65, 0xe3, 0x81, 0x29, 0xf8, 0x6d, 0x5e, 0x25, 0x17, 0xfe, 0xb8, 0x1b, 0x2c, 0xd2, 0xb8, 0xdc, 0x4f, 0x78, 0x21, 0xbf, 0xd0, 0x32, 0xed, 0xc4, 0xc0, 0x23, 0x40, 0x85, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9422 = { .name = "ecdsa_secp384r1_sha384_9422", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9422_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9422_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9422_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 351 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9423 for ECDSA, tcId is 352 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9423_pubkey[] = { 0x82, 0xf3, 0x76, 0x04, 0xf6, 0x66, 0x64, 0xc2, 0x88, 0x3d, 0xba, 0x6d, 0x98, 0x39, 0x7c, 0x28, 0x10, 0x45, 0xcb, 0xf5, 0x9f, 0x1d, 0x16, 0xdd, 0xdb, 0x13, 0x81, 0x12, 0x6a, 0x24, 0x65, 0x53, 0xa8, 0xb4, 0xd2, 0xaa, 0xea, 0x48, 0xad, 0x91, 0x85, 0xa1, 0x64, 0x5f, 0x65, 0x56, 0x7d, 0x31, 0x8a, 0x4d, 0x7b, 0x19, 0xf1, 0xd2, 0xe4, 0x43, 0x4c, 0x9a, 0x8e, 0xca, 0xd3, 0x96, 0x30, 0x4a, 0xbc, 0x82, 0x22, 0x1b, 0xba, 0xb0, 0x67, 0x99, 0x35, 0x07, 0x1c, 0x72, 0xfd, 0x97, 0x5e, 0x7b, 0x02, 0x1c, 0x04, 0xb1, 0xd1, 0x6e, 0xa3, 0x6f, 0xc2, 0xd0, 0x51, 0xef, 0x5a, 0x8e, 0x11, 0x7c, }; static const unsigned char ecdsa_secp384r1_sha384_9423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9423_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x27, 0x6c, 0x07, 0x93, 0xf0, 0xa1, 0x97, 0x42, 0x42, 0x2f, 0x8a, 0xf6, 0x71, 0xcc, 0xf9, 0x65, 0xfa, 0x7d, 0x18, 0xd5, 0x41, 0xbe, 0xf4, 0xc0, 0x5b, 0x90, 0xe3, 0x03, 0xf8, 0x91, 0xd3, 0x90, 0x08, 0x43, 0x9e, 0x0f, 0xda, 0x4b, 0xfa, 0xd5, 0xee, 0x9a, 0x6a, 0xce, 0x7e, 0x34, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9423 = { .name = "ecdsa_secp384r1_sha384_9423", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9423_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9423_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9423_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 352 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9424 for ECDSA, tcId is 353 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9424_pubkey[] = { 0xf0, 0x52, 0xdf, 0xc2, 0x7b, 0xf8, 0xa6, 0xd3, 0x6f, 0x37, 0x39, 0xf2, 0x39, 0xb9, 0x81, 0xf5, 0xb5, 0x3f, 0xe0, 0x8d, 0x99, 0x9e, 0xc6, 0x83, 0xb0, 0x1e, 0x43, 0xe7, 0x59, 0x61, 0x56, 0x20, 0x6b, 0xa0, 0x8b, 0x8b, 0x9f, 0x59, 0x22, 0x9e, 0x2f, 0xbd, 0xce, 0x05, 0xf1, 0xe4, 0x0f, 0x99, 0x90, 0xf0, 0xfd, 0xfb, 0x70, 0x29, 0xf9, 0xb3, 0xe8, 0xc6, 0x14, 0x4d, 0xad, 0x03, 0x39, 0x20, 0x8b, 0x7c, 0xdc, 0xb3, 0x82, 0x0a, 0x55, 0x42, 0x59, 0xdb, 0x9d, 0x27, 0xaf, 0xdd, 0x18, 0xf4, 0xa7, 0x50, 0x29, 0x6c, 0x59, 0xba, 0xd6, 0xb6, 0x2d, 0xf0, 0x76, 0xf9, 0x0d, 0x53, 0xbe, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha384_9424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9424_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x94, 0x28, 0x48, 0x58, 0x6b, 0x53, 0x41, 0x05, 0xdd, 0xd1, 0xca, 0x77, 0xdf, 0x72, 0xe1, 0x25, 0x11, 0x40, 0xf4, 0x12, 0xe9, 0x7b, 0x62, 0xaf, 0xbf, 0x85, 0xd4, 0x82, 0x23, 0x09, 0x17, 0x6b, 0x59, 0x65, 0x45, 0x3d, 0xee, 0x3f, 0xab, 0x70, 0x9e, 0x14, 0x15, 0x6b, 0x3d, 0xfc, 0xec, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9424 = { .name = "ecdsa_secp384r1_sha384_9424", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9424_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9424_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9424_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 353 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9425 for ECDSA, tcId is 354 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9425_pubkey[] = { 0xf8, 0x77, 0xbd, 0x6e, 0x2a, 0x92, 0x73, 0xe3, 0x22, 0xa3, 0x29, 0x8e, 0xa3, 0xad, 0xd1, 0x3d, 0x11, 0x04, 0xb3, 0x21, 0x72, 0x28, 0x36, 0x69, 0xca, 0x66, 0x88, 0xf0, 0xcb, 0x59, 0x15, 0x24, 0xa7, 0xf1, 0x5d, 0xd4, 0x14, 0x96, 0x68, 0x1e, 0xda, 0x98, 0x93, 0x9a, 0xae, 0x72, 0x9f, 0xed, 0xe8, 0x5c, 0xa3, 0x7c, 0x81, 0xef, 0x19, 0xe3, 0xdc, 0x9a, 0xb1, 0x69, 0x08, 0xa3, 0x72, 0x0d, 0x86, 0x87, 0x5a, 0x51, 0xa6, 0xa6, 0xd9, 0x32, 0xe3, 0x74, 0x92, 0xa6, 0xec, 0x7a, 0x34, 0x4e, 0xab, 0xc4, 0x82, 0x37, 0x7f, 0x14, 0x89, 0x1f, 0xbd, 0x1d, 0xa7, 0xfa, 0xef, 0xfa, 0x11, 0x78, }; static const unsigned char ecdsa_secp384r1_sha384_9425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9425_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9425 = { .name = "ecdsa_secp384r1_sha384_9425", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9425_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9425_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9425_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 354 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9426 for ECDSA, tcId is 355 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9426_pubkey[] = { 0x14, 0x24, 0x9b, 0xbc, 0xfe, 0xec, 0xea, 0xb0, 0x6c, 0x75, 0x65, 0x4d, 0x36, 0x1c, 0x0d, 0xf8, 0xd5, 0x6b, 0x32, 0x0e, 0xa3, 0xbc, 0x1d, 0x46, 0x27, 0xec, 0x0a, 0x2f, 0x4b, 0x8f, 0xa3, 0x57, 0x74, 0x45, 0x69, 0x46, 0x64, 0xf5, 0x69, 0xa9, 0x1f, 0x48, 0x07, 0x41, 0x38, 0x1e, 0x49, 0x4a, 0x28, 0x47, 0x9f, 0x21, 0x86, 0xd7, 0x15, 0xa5, 0x67, 0x88, 0xf6, 0x70, 0x73, 0x05, 0x6a, 0xa0, 0xcb, 0x0b, 0x6a, 0x7f, 0x78, 0x93, 0xe7, 0x7b, 0x9a, 0x69, 0x76, 0xef, 0x66, 0x63, 0xd8, 0x02, 0x26, 0x89, 0x6d, 0x7f, 0x43, 0xbb, 0x50, 0x2e, 0x1b, 0x4d, 0x49, 0x55, 0x8a, 0x27, 0xdd, 0x8b, }; static const unsigned char ecdsa_secp384r1_sha384_9426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9426_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9426 = { .name = "ecdsa_secp384r1_sha384_9426", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9426_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9426_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9426_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 355 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9427 for ECDSA, tcId is 356 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9427_pubkey[] = { 0x50, 0xa4, 0x38, 0xc9, 0x8e, 0xe9, 0x40, 0x25, 0xce, 0x13, 0xe2, 0x7d, 0x36, 0xb8, 0x28, 0x0d, 0x48, 0x43, 0x58, 0x58, 0x36, 0xeb, 0x47, 0x01, 0x1a, 0x07, 0x0c, 0xd7, 0x77, 0x29, 0x24, 0x56, 0x84, 0xa0, 0xdb, 0x31, 0xfd, 0xe9, 0x80, 0x62, 0x03, 0x49, 0xc7, 0x96, 0x83, 0x2b, 0x2c, 0x6c, 0xbd, 0xb7, 0x2d, 0xba, 0x9f, 0x3f, 0x9c, 0xc8, 0x78, 0x55, 0x9f, 0x50, 0xb6, 0xbd, 0x12, 0x90, 0xf1, 0x0a, 0x6b, 0xcc, 0xbc, 0x1e, 0xee, 0xf7, 0x70, 0x8b, 0x1b, 0x72, 0x05, 0x90, 0x22, 0x98, 0x79, 0x79, 0xe3, 0x52, 0x21, 0xc5, 0x12, 0x59, 0xf3, 0x37, 0xc7, 0x28, 0x8a, 0x2f, 0x86, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_9427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9427_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9427 = { .name = "ecdsa_secp384r1_sha384_9427", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9427_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9427_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9427_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 356 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9428 for ECDSA, tcId is 357 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9428_pubkey[] = { 0x4d, 0x3f, 0xc5, 0xdc, 0xfa, 0xf7, 0x41, 0x11, 0x3c, 0xda, 0x3c, 0xe2, 0xf8, 0xdf, 0xf4, 0xc9, 0x12, 0x14, 0x3e, 0x4d, 0x36, 0x31, 0x4c, 0x36, 0x1d, 0x7e, 0xd5, 0x65, 0x6b, 0x68, 0x44, 0x8b, 0xcc, 0xa1, 0x14, 0xba, 0x9e, 0x81, 0x24, 0x28, 0x12, 0x34, 0x66, 0x0b, 0x77, 0x26, 0xdd, 0xcd, 0x68, 0x0d, 0xdf, 0xef, 0x7e, 0xa0, 0x7b, 0xfb, 0xce, 0xde, 0x10, 0x80, 0x3d, 0x38, 0xd7, 0x21, 0x16, 0x31, 0xca, 0x11, 0x46, 0x60, 0x78, 0x81, 0x9e, 0xb6, 0x6e, 0x11, 0x92, 0x1a, 0xb7, 0xff, 0xa3, 0xc4, 0x56, 0x0c, 0x73, 0x2e, 0x77, 0x59, 0x5f, 0xd4, 0x08, 0xe9, 0x17, 0xdd, 0x9a, 0xfc, }; static const unsigned char ecdsa_secp384r1_sha384_9428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9428_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9428 = { .name = "ecdsa_secp384r1_sha384_9428", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9428_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9428_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9428_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 357 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9429 for ECDSA, tcId is 358 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9429_pubkey[] = { 0x63, 0xd6, 0x5c, 0xdf, 0xeb, 0x1f, 0x1a, 0x42, 0x00, 0x0f, 0x43, 0xbd, 0x1d, 0xdd, 0x13, 0x05, 0x37, 0xa7, 0xb6, 0xf6, 0x35, 0xe8, 0xd2, 0xbd, 0x81, 0xa9, 0x7d, 0xa1, 0x68, 0x22, 0x11, 0x83, 0xda, 0x43, 0x3c, 0xa7, 0x84, 0x29, 0xfd, 0x2b, 0x33, 0xc5, 0xf9, 0x48, 0x95, 0xa9, 0xc1, 0x3a, 0xa9, 0xd1, 0xd5, 0xea, 0x32, 0x87, 0x25, 0x65, 0x3a, 0x5a, 0x9d, 0x00, 0xf8, 0x5a, 0x55, 0x16, 0x23, 0x6f, 0x3b, 0x14, 0x28, 0xa8, 0x62, 0x92, 0x87, 0xd3, 0xb0, 0x48, 0x7a, 0x2e, 0x82, 0xdd, 0x57, 0xf9, 0x3b, 0xb2, 0xaa, 0x3d, 0x97, 0x83, 0xdc, 0x74, 0x13, 0x1e, 0x13, 0x75, 0x60, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_9429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9429_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9429 = { .name = "ecdsa_secp384r1_sha384_9429", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9429_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9429_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9429_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 358 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9430 for ECDSA, tcId is 359 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9430_pubkey[] = { 0xd2, 0x2c, 0x9c, 0x34, 0x8b, 0x97, 0x45, 0x71, 0x1f, 0x57, 0xde, 0xba, 0xc3, 0xa0, 0x7d, 0xf9, 0x0a, 0x52, 0x7c, 0x06, 0xbd, 0x02, 0xa8, 0x45, 0x4f, 0x41, 0x43, 0x7d, 0x54, 0x22, 0x4e, 0x07, 0x16, 0x98, 0xf0, 0x3f, 0xdc, 0x64, 0xb1, 0xd6, 0x52, 0x41, 0x4e, 0xdc, 0x3f, 0x22, 0x39, 0xc4, 0x9a, 0xe9, 0x81, 0x2a, 0x4b, 0x92, 0xf0, 0x99, 0xd6, 0x65, 0x9a, 0x65, 0x96, 0x91, 0x76, 0x8d, 0x57, 0xe5, 0x30, 0xed, 0x3c, 0x91, 0xd5, 0x45, 0x57, 0x81, 0x60, 0x58, 0x50, 0x99, 0x7a, 0x58, 0x22, 0x1f, 0x22, 0xa2, 0x45, 0x1c, 0x39, 0x32, 0x47, 0x06, 0x06, 0xc2, 0x3f, 0x3a, 0xb1, 0xb8, }; static const unsigned char ecdsa_secp384r1_sha384_9430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9430_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9430 = { .name = "ecdsa_secp384r1_sha384_9430", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9430_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9430_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9430_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 359 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9431 for ECDSA, tcId is 360 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9431_pubkey[] = { 0x31, 0xf0, 0x5c, 0x0c, 0x29, 0xe9, 0xda, 0x49, 0xaa, 0x2f, 0xbb, 0xed, 0xee, 0x77, 0x0c, 0x68, 0xd1, 0x0f, 0x85, 0xe7, 0xf7, 0x7e, 0x72, 0xac, 0x3c, 0xfa, 0x9c, 0x86, 0x23, 0xa2, 0xbb, 0x42, 0xee, 0xb2, 0xf2, 0x4a, 0xc8, 0xf2, 0xae, 0xf7, 0xab, 0x0c, 0x4b, 0x47, 0x82, 0x31, 0x40, 0x03, 0x5b, 0xb3, 0x2f, 0xc1, 0xec, 0x04, 0xbb, 0xff, 0x5e, 0xab, 0x96, 0xe0, 0x70, 0xc9, 0x38, 0xba, 0x1b, 0x53, 0xfe, 0x63, 0x97, 0x0f, 0x64, 0x9a, 0xe0, 0x2e, 0x2a, 0x4a, 0xda, 0x42, 0x0a, 0x24, 0x9b, 0x6f, 0x7c, 0x52, 0x5e, 0x2c, 0x4b, 0x9b, 0x0d, 0x55, 0x62, 0xae, 0x26, 0xf2, 0x27, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9431_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9431 = { .name = "ecdsa_secp384r1_sha384_9431", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9431_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9431_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9431_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 360 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9432 for ECDSA, tcId is 361 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9432_pubkey[] = { 0xbc, 0x26, 0xee, 0xc9, 0x5e, 0x26, 0xc9, 0x80, 0xbc, 0x03, 0x34, 0x26, 0x4c, 0xbc, 0xfc, 0x26, 0xb8, 0x97, 0xc3, 0x57, 0x1c, 0x96, 0xce, 0x9a, 0xb2, 0xa6, 0x7b, 0x49, 0xbb, 0x0f, 0x26, 0xa6, 0x27, 0x2f, 0xdc, 0x27, 0x80, 0x6d, 0x7a, 0x4c, 0x57, 0x2a, 0xe0, 0xf7, 0x81, 0x49, 0xf1, 0xf3, 0xc8, 0xaf, 0x5f, 0x41, 0xb9, 0x9d, 0x20, 0x66, 0x01, 0x81, 0x65, 0x51, 0x3f, 0xb3, 0xb5, 0x5e, 0x42, 0x55, 0xdc, 0xd0, 0x65, 0x96, 0x47, 0xed, 0x55, 0xe1, 0xe2, 0x60, 0x2c, 0xae, 0x4e, 0xfb, 0xd6, 0xea, 0xe1, 0xdf, 0xe2, 0xff, 0x63, 0xe2, 0xc7, 0x48, 0xd4, 0xac, 0xc7, 0x43, 0x01, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_9432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9432_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9432 = { .name = "ecdsa_secp384r1_sha384_9432", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9432_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9432_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9432_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 361 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9433 for ECDSA, tcId is 362 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9433_pubkey[] = { 0x6f, 0xa0, 0x96, 0x4d, 0xd0, 0x54, 0x25, 0x0a, 0xf1, 0x76, 0x89, 0x1c, 0x0c, 0x82, 0x2b, 0x01, 0x3b, 0x70, 0xf0, 0x59, 0xc3, 0x47, 0x17, 0x2c, 0xaf, 0xc6, 0xb3, 0x6c, 0xd1, 0x6c, 0xf3, 0xb0, 0xf9, 0xd1, 0x9f, 0x25, 0x98, 0xbd, 0x0d, 0x58, 0x0a, 0xc1, 0x6c, 0x46, 0xac, 0xb1, 0x67, 0xd4, 0x37, 0x5b, 0xef, 0x70, 0x1c, 0x00, 0x2d, 0xcc, 0x04, 0x0f, 0xd5, 0x48, 0x24, 0xb1, 0x4c, 0xc2, 0xdf, 0x01, 0x54, 0xeb, 0x20, 0xe7, 0x44, 0x64, 0xe1, 0xfe, 0x7b, 0x83, 0x34, 0x26, 0xdd, 0x7d, 0x63, 0x6b, 0xf2, 0xd7, 0x96, 0x03, 0xfd, 0xde, 0x5d, 0xda, 0xab, 0x23, 0xab, 0x0c, 0xf4, 0x26, }; static const unsigned char ecdsa_secp384r1_sha384_9433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9433_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9433 = { .name = "ecdsa_secp384r1_sha384_9433", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9433_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9433_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9433_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 362 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9434 for ECDSA, tcId is 363 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9434_pubkey[] = { 0xba, 0xa4, 0xe7, 0x12, 0xee, 0x07, 0x86, 0xa5, 0xab, 0x0e, 0x5a, 0x5d, 0xaf, 0xdc, 0xdc, 0xf8, 0x7b, 0x38, 0x83, 0x0a, 0xb2, 0xec, 0x86, 0xfa, 0xed, 0xda, 0x9f, 0xdf, 0x65, 0x33, 0x2f, 0x6a, 0x96, 0x88, 0x26, 0x94, 0x12, 0xf0, 0x50, 0x35, 0x65, 0x30, 0xd4, 0x66, 0x4a, 0x7f, 0xb8, 0xcd, 0xec, 0xc4, 0x6a, 0x90, 0x1b, 0x01, 0x6e, 0x6b, 0xb8, 0xa3, 0x36, 0xad, 0x9a, 0xa6, 0xf1, 0x9a, 0xbf, 0x9a, 0xda, 0x69, 0x70, 0x5d, 0x1c, 0x90, 0x5b, 0xea, 0xfb, 0x95, 0xa4, 0x4f, 0x52, 0xaf, 0x43, 0xde, 0x4b, 0xf8, 0x0c, 0x05, 0x0c, 0xf9, 0x96, 0xb7, 0x79, 0x6d, 0xfc, 0xee, 0x8e, 0x1b, }; static const unsigned char ecdsa_secp384r1_sha384_9434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9434_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9434 = { .name = "ecdsa_secp384r1_sha384_9434", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9434_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9434_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9434_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 363 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9435 for ECDSA, tcId is 364 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9435_pubkey[] = { 0x81, 0xe7, 0x8a, 0x52, 0xae, 0x06, 0x95, 0x58, 0x3f, 0x7a, 0x60, 0x1a, 0xb9, 0xb6, 0xfb, 0xfa, 0xf4, 0x34, 0xf2, 0xbe, 0xfa, 0x1f, 0x8c, 0x83, 0x3d, 0x59, 0xde, 0xb6, 0x27, 0xa9, 0x27, 0xc2, 0xf4, 0x2d, 0x48, 0xeb, 0x61, 0x7f, 0xe0, 0x42, 0xf5, 0x84, 0xe1, 0x05, 0xc2, 0x3c, 0x23, 0x17, 0xcf, 0x22, 0xd5, 0x65, 0xf5, 0xf3, 0xb4, 0x25, 0xef, 0x79, 0x37, 0xdf, 0x62, 0x9b, 0x68, 0x64, 0xda, 0xc7, 0x12, 0x64, 0xb2, 0x88, 0xc1, 0xa9, 0x87, 0x21, 0x0f, 0x52, 0x30, 0x71, 0x31, 0x9c, 0xe3, 0xf6, 0x44, 0x11, 0x91, 0x0a, 0xc2, 0x37, 0x65, 0xc4, 0x26, 0x6e, 0x61, 0x51, 0x12, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_9435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9435_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9435 = { .name = "ecdsa_secp384r1_sha384_9435", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9435_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9435_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9435_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 364 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9436 for ECDSA, tcId is 365 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9436_pubkey[] = { 0x41, 0xfa, 0x87, 0x65, 0xb1, 0x9d, 0x31, 0x08, 0x03, 0x1e, 0x28, 0xc9, 0xa7, 0x81, 0xa3, 0x85, 0xc9, 0xc1, 0x0b, 0x2b, 0xfd, 0x42, 0xe6, 0x43, 0x7e, 0x5c, 0x4b, 0xd7, 0x11, 0xcf, 0x2a, 0x03, 0x17, 0x50, 0x84, 0x7d, 0x17, 0xa8, 0x2f, 0x93, 0x76, 0xa3, 0x0a, 0xe1, 0x82, 0xa6, 0xd6, 0xe7, 0x1c, 0x20, 0xaf, 0x96, 0x32, 0x41, 0x47, 0xd4, 0x15, 0x5a, 0x4d, 0x0c, 0x86, 0x7c, 0xa8, 0xe3, 0x6e, 0xba, 0x20, 0x4f, 0xbe, 0xd2, 0x08, 0x7e, 0x0f, 0xcb, 0xdc, 0x8b, 0xaa, 0xbe, 0x07, 0xbb, 0x31, 0x23, 0xf9, 0xf7, 0x25, 0x9e, 0x77, 0x1c, 0xd9, 0xf1, 0xad, 0x17, 0xd1, 0xa2, 0x37, 0x87, }; static const unsigned char ecdsa_secp384r1_sha384_9436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9436_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9436 = { .name = "ecdsa_secp384r1_sha384_9436", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9436_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9436_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9436_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 365 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9437 for ECDSA, tcId is 366 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9437_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0x57, 0x2c, 0x1e, 0x06, 0xdd, 0x2c, 0x7b, 0x94, 0xb8, 0x73, 0xf0, 0x57, 0x8f, 0xcb, 0x2b, 0x99, 0xd6, 0x0e, 0x24, 0x6e, 0x51, 0x24, 0x5d, 0x08, 0x04, 0xed, 0xd4, 0x4b, 0x32, 0xf0, 0xf0, 0x00, 0xc8, 0xf8, 0xf8, 0x8f, 0x1d, 0x4a, 0x65, 0xfe, 0xa5, 0x1d, 0xbb, 0xb4, 0xab, 0x1e, 0x28, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_9437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9437_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9437 = { .name = "ecdsa_secp384r1_sha384_9437", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9437_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9437_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9437_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 366 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9438 for ECDSA, tcId is 367 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9438_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0xa8, 0xd3, 0xe1, 0xf9, 0x22, 0xd3, 0x84, 0x6b, 0x47, 0x8c, 0x0f, 0xa8, 0x70, 0x34, 0xd4, 0x66, 0x29, 0xf1, 0xdb, 0x91, 0xae, 0xdb, 0xa2, 0xf7, 0xfb, 0x12, 0x2b, 0xb4, 0xcd, 0x0f, 0x0f, 0xfe, 0x37, 0x07, 0x07, 0x6f, 0xe2, 0xb5, 0x9a, 0x01, 0x5a, 0xe2, 0x44, 0x4c, 0x54, 0xe1, 0xd7, 0xdc, }; static const unsigned char ecdsa_secp384r1_sha384_9438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9438_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9438 = { .name = "ecdsa_secp384r1_sha384_9438", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9438_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9438_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9438_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 367 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9439 for ECDSA, tcId is 368 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9439_pubkey[] = { 0xb4, 0xd7, 0x8c, 0xcc, 0xbc, 0xed, 0x80, 0x65, 0xc0, 0xeb, 0xdc, 0x33, 0x0b, 0x46, 0x70, 0xec, 0x99, 0x30, 0x92, 0x73, 0xe4, 0x42, 0xb9, 0xbe, 0x34, 0x11, 0x96, 0xc1, 0x04, 0x3e, 0x44, 0x41, 0xfc, 0x57, 0xb9, 0x14, 0x08, 0x55, 0x95, 0xbf, 0xc7, 0x55, 0xc6, 0x4f, 0xc4, 0x09, 0xf0, 0xba, 0x01, 0xfe, 0xe3, 0x1c, 0xbb, 0xba, 0xed, 0x5c, 0x13, 0x23, 0xf0, 0x9c, 0x87, 0xdf, 0x9b, 0x07, 0x12, 0xc1, 0x2e, 0x99, 0x73, 0x3f, 0xa2, 0x3e, 0xf9, 0x1b, 0x4e, 0x6c, 0xa6, 0x66, 0xb0, 0x9d, 0xd7, 0x54, 0x0e, 0xbf, 0x10, 0x68, 0xa1, 0x51, 0x55, 0xbc, 0x06, 0x9e, 0x3d, 0x59, 0x5c, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9439_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9439 = { .name = "ecdsa_secp384r1_sha384_9439", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9439_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9439_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9439_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 368 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9440 for ECDSA, tcId is 369 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9440_pubkey[] = { 0x6e, 0x3c, 0x68, 0xbe, 0x53, 0xaa, 0xde, 0x81, 0xef, 0x89, 0xe0, 0x96, 0xd8, 0x41, 0xe2, 0x84, 0x5a, 0x23, 0x33, 0x1e, 0x7e, 0xc8, 0xa6, 0xa8, 0x39, 0xd5, 0x8d, 0x07, 0xfa, 0x01, 0x6c, 0x09, 0x73, 0xed, 0x75, 0xde, 0x4f, 0x99, 0x17, 0x7b, 0xfd, 0xc7, 0x4d, 0xb5, 0x66, 0xe9, 0xd1, 0x5a, 0x49, 0x72, 0xea, 0x08, 0xe5, 0x77, 0xce, 0x1f, 0x61, 0xc1, 0x3a, 0x6c, 0xa1, 0xba, 0xd1, 0xde, 0xef, 0x29, 0x82, 0xee, 0x01, 0xa2, 0x82, 0x6f, 0x00, 0x2b, 0x76, 0x9f, 0x2c, 0x46, 0x09, 0x8d, 0x3b, 0xaf, 0xf0, 0x68, 0xa4, 0x05, 0xd0, 0x9c, 0xa3, 0x84, 0x0d, 0x2f, 0xaf, 0xe4, 0xe4, 0x6e, }; static const unsigned char ecdsa_secp384r1_sha384_9440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9440_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9440 = { .name = "ecdsa_secp384r1_sha384_9440", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9440_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9440_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9440_sig, .siglen = 97, .result = -1, .comment = "point with x-coordinate 0, tcId is 369 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9441 for ECDSA, tcId is 370 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9441_pubkey[] = { 0xb1, 0x01, 0xcd, 0xb3, 0xeb, 0xa2, 0x0e, 0x11, 0x2a, 0xdb, 0xb4, 0xbb, 0xd2, 0xcb, 0x47, 0x9a, 0x69, 0xe5, 0x90, 0xa4, 0x4e, 0xa9, 0x02, 0x63, 0x18, 0x32, 0xab, 0xfa, 0xb8, 0xaf, 0x2c, 0x30, 0x41, 0xb3, 0xdf, 0x7f, 0x16, 0x65, 0xb2, 0xc6, 0xeb, 0x53, 0x3f, 0x54, 0x62, 0x17, 0x10, 0x0a, 0x1a, 0x61, 0xaa, 0x99, 0x51, 0x57, 0x8a, 0xd4, 0xf0, 0x0a, 0xe1, 0x73, 0x39, 0xa8, 0xa6, 0xf1, 0x35, 0x9b, 0xbd, 0x0a, 0xc3, 0x55, 0x67, 0x8e, 0xd4, 0xdf, 0x21, 0x33, 0x8f, 0x08, 0x76, 0x3c, 0x1d, 0x37, 0x02, 0xec, 0x13, 0x2b, 0x63, 0x4c, 0x7b, 0xcc, 0x01, 0x18, 0xef, 0xb1, 0xd0, 0xdd, }; static const unsigned char ecdsa_secp384r1_sha384_9441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9441_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9441 = { .name = "ecdsa_secp384r1_sha384_9441", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9441_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9441_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9441_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 370 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9442 for ECDSA, tcId is 371 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9442_pubkey[] = { 0x67, 0x61, 0x04, 0x4a, 0x04, 0x0a, 0x49, 0x79, 0xdb, 0x26, 0x9b, 0x4a, 0x37, 0x7e, 0x42, 0xf1, 0x1b, 0x4b, 0xe0, 0xce, 0x24, 0x61, 0x1f, 0x67, 0x76, 0x74, 0xdc, 0xf7, 0x70, 0xf5, 0x88, 0x7c, 0xa4, 0xdb, 0x56, 0x53, 0x03, 0x28, 0x38, 0x09, 0xe6, 0xd6, 0x5f, 0x7f, 0xc6, 0xbc, 0x27, 0x36, 0x05, 0xc7, 0xda, 0xa4, 0x03, 0xfc, 0xa5, 0x35, 0x49, 0xf7, 0x5f, 0xf3, 0x37, 0x29, 0x09, 0x64, 0x2d, 0x02, 0xb7, 0xfd, 0xca, 0xc1, 0xe6, 0x82, 0x42, 0x81, 0x4d, 0x6e, 0x92, 0x5a, 0xb0, 0x1a, 0x80, 0x83, 0x6c, 0xfb, 0xb3, 0x55, 0x81, 0x96, 0x00, 0x79, 0xe2, 0xfb, 0x44, 0xc0, 0xd1, 0x86, }; static const unsigned char ecdsa_secp384r1_sha384_9442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9442_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9442 = { .name = "ecdsa_secp384r1_sha384_9442", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9442_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9442_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9442_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 371 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9443 for ECDSA, tcId is 372 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9443_pubkey[] = { 0x69, 0x22, 0xc5, 0x91, 0x50, 0x2f, 0x01, 0x04, 0x6f, 0xee, 0x56, 0x17, 0xbf, 0x16, 0x49, 0x6f, 0x58, 0x39, 0x88, 0x22, 0xe6, 0x9a, 0xfa, 0x83, 0x35, 0x30, 0x8f, 0x36, 0xc0, 0x9a, 0x8e, 0xd4, 0x37, 0x20, 0x9f, 0xef, 0xcf, 0xfb, 0xbd, 0xf0, 0xa4, 0x87, 0x6b, 0x35, 0xa3, 0xc7, 0xab, 0x26, 0x55, 0x85, 0x4d, 0xb8, 0x25, 0xb9, 0x4b, 0x3f, 0x27, 0xe5, 0xf8, 0x92, 0xd3, 0xbb, 0xb6, 0xc7, 0x24, 0x0e, 0xc9, 0x22, 0x89, 0x4d, 0xd3, 0x59, 0x8e, 0x91, 0xfc, 0xc6, 0x13, 0x4a, 0x2b, 0x8f, 0xd1, 0x54, 0xe1, 0x79, 0x04, 0x66, 0x90, 0x62, 0x06, 0xf0, 0xf6, 0x23, 0x41, 0x6e, 0x63, 0xa1, }; static const unsigned char ecdsa_secp384r1_sha384_9443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9443_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9443 = { .name = "ecdsa_secp384r1_sha384_9443", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9443_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9443_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9443_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 372 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9444 for ECDSA, tcId is 373 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9444_pubkey[] = { 0x89, 0x2d, 0xac, 0x0e, 0x70, 0x0f, 0xc2, 0x9d, 0x18, 0x02, 0xd9, 0xa4, 0x49, 0xa6, 0xf5, 0x6b, 0x21, 0x72, 0xcb, 0x1b, 0x7d, 0x88, 0x10, 0x13, 0xcd, 0x3b, 0x31, 0xc0, 0xed, 0xb0, 0x52, 0xf2, 0xd3, 0x40, 0xc8, 0x99, 0x5a, 0x44, 0x77, 0xbc, 0xb9, 0x22, 0x5f, 0xec, 0x15, 0x66, 0x72, 0x33, 0xcc, 0x6c, 0x34, 0xae, 0x17, 0x44, 0x54, 0x44, 0x51, 0x6f, 0xd8, 0xfd, 0x22, 0xee, 0x83, 0xf7, 0x9e, 0xb0, 0x77, 0x1e, 0xbf, 0xf6, 0x67, 0x7a, 0xc5, 0xd4, 0xe0, 0x89, 0xf8, 0x7a, 0x1c, 0x72, 0xdf, 0x95, 0x7a, 0xcb, 0x24, 0x49, 0x2a, 0xdc, 0xd7, 0xc3, 0x81, 0x6b, 0x8e, 0x0c, 0x75, 0xb1, }; static const unsigned char ecdsa_secp384r1_sha384_9444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9444_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9444 = { .name = "ecdsa_secp384r1_sha384_9444", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9444_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9444_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9444_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 373 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9445 for ECDSA, tcId is 374 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9445_pubkey[] = { 0x01, 0x63, 0x41, 0x17, 0xe6, 0x47, 0x8c, 0xe0, 0x56, 0x8b, 0x0a, 0x24, 0x69, 0x23, 0x7b, 0xba, 0xc6, 0xff, 0x09, 0x6a, 0xcb, 0x7e, 0x51, 0x40, 0x72, 0xbf, 0x77, 0x12, 0x3c, 0xb5, 0x1b, 0xa0, 0xcc, 0x3e, 0x8d, 0x69, 0x28, 0x4d, 0x53, 0x4d, 0x8e, 0x6d, 0x1e, 0x87, 0x6c, 0xec, 0xf2, 0x22, 0x31, 0xe5, 0xef, 0x04, 0xdc, 0x96, 0x76, 0x2c, 0xe7, 0xd5, 0xef, 0x33, 0x48, 0xad, 0x1e, 0x24, 0x1a, 0xc7, 0x97, 0xae, 0x3b, 0x63, 0x0e, 0xa2, 0x49, 0xaf, 0xc5, 0x13, 0x9a, 0xf4, 0x9b, 0x8e, 0xf6, 0x8b, 0x32, 0xf8, 0x12, 0xd6, 0xb5, 0x14, 0x21, 0x03, 0x63, 0xd4, 0x98, 0xef, 0xc2, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_9445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9445_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9445 = { .name = "ecdsa_secp384r1_sha384_9445", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9445_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9445_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9445_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 374 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9446 for ECDSA, tcId is 375 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9446_pubkey[] = { 0x67, 0x5b, 0xdc, 0x79, 0xd8, 0x24, 0x38, 0x87, 0xfe, 0x1b, 0x30, 0x5d, 0x12, 0xac, 0x10, 0xd2, 0xe9, 0xc0, 0xbd, 0xe0, 0x70, 0xa6, 0xe3, 0x39, 0x4c, 0xd5, 0xf6, 0xad, 0xfb, 0xce, 0xda, 0x75, 0x49, 0x8b, 0x0e, 0x7a, 0x79, 0x4c, 0x72, 0x12, 0xf4, 0x2b, 0xe9, 0x3f, 0x61, 0x67, 0x44, 0x56, 0x3e, 0x96, 0xd1, 0xbf, 0x6f, 0x95, 0xcd, 0xbe, 0xfa, 0x77, 0x49, 0x11, 0xba, 0x06, 0x46, 0x3d, 0x8a, 0x90, 0xa0, 0xc9, 0xd7, 0x3c, 0x96, 0x99, 0xb0, 0x61, 0xd7, 0x79, 0xdc, 0x52, 0x49, 0x6e, 0x8e, 0xe9, 0xb9, 0xae, 0x9c, 0x5d, 0x4d, 0x90, 0xe8, 0x9c, 0xd1, 0x15, 0x7d, 0x81, 0x18, 0x95, }; static const unsigned char ecdsa_secp384r1_sha384_9446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9446_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9446 = { .name = "ecdsa_secp384r1_sha384_9446", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9446_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9446_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9446_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 375 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9447 for ECDSA, tcId is 376 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9447_pubkey[] = { 0x0f, 0xd1, 0xaa, 0xb8, 0x9f, 0x47, 0xb5, 0x65, 0xb8, 0x16, 0x0d, 0xfc, 0xc4, 0x33, 0xb6, 0x40, 0x8a, 0xde, 0xb1, 0x47, 0x3c, 0x03, 0x6b, 0x26, 0xb7, 0xdd, 0xec, 0x71, 0x4f, 0xb4, 0xd0, 0xe7, 0xdd, 0x75, 0x6c, 0x88, 0x46, 0x9e, 0x86, 0xe2, 0x18, 0x81, 0x3e, 0xad, 0x8e, 0x8e, 0x76, 0x76, 0xf1, 0xcc, 0x95, 0x5c, 0x41, 0x39, 0xe0, 0x07, 0x1c, 0x00, 0x79, 0xec, 0x1d, 0x77, 0x16, 0x4e, 0x05, 0x69, 0xbd, 0xf4, 0x53, 0x83, 0x7e, 0x8b, 0x33, 0xc9, 0x85, 0x35, 0xa0, 0xe7, 0xc9, 0xc6, 0x1e, 0xf2, 0x47, 0x62, 0x06, 0x7b, 0xb4, 0x6b, 0x61, 0x16, 0xea, 0x79, 0x09, 0xa6, 0x9b, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_9447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9447_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9447 = { .name = "ecdsa_secp384r1_sha384_9447", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9447_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9447_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9447_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 376 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9448 for ECDSA, tcId is 377 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9448_pubkey[] = { 0x34, 0xd7, 0x4e, 0xc0, 0x88, 0xba, 0xb6, 0xc6, 0x32, 0x39, 0x68, 0xd1, 0xf4, 0x68, 0x99, 0x38, 0x12, 0xf6, 0x90, 0xd6, 0xed, 0xca, 0x5b, 0x97, 0x60, 0x4d, 0x71, 0x8e, 0x12, 0xb8, 0xcd, 0xfd, 0xd9, 0x6d, 0x42, 0xe5, 0x7d, 0x33, 0xaf, 0xe3, 0x12, 0xf0, 0xee, 0x3c, 0x3d, 0x0a, 0x13, 0xf7, 0x86, 0xf4, 0x92, 0x2b, 0xb2, 0xc1, 0x3b, 0xdf, 0x77, 0x52, 0xa3, 0xec, 0xb6, 0x93, 0x93, 0xe9, 0x97, 0xbd, 0x65, 0x46, 0x1c, 0x46, 0x86, 0x7e, 0xbe, 0xef, 0x62, 0x96, 0xb2, 0x3f, 0x2c, 0x56, 0xdf, 0x63, 0xac, 0xfd, 0xe6, 0x48, 0xf3, 0xf5, 0x00, 0x2d, 0xbc, 0x23, 0x9f, 0xfd, 0x15, 0x82, }; static const unsigned char ecdsa_secp384r1_sha384_9448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9448_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9448 = { .name = "ecdsa_secp384r1_sha384_9448", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9448_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9448_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9448_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 377 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9449 for ECDSA, tcId is 378 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9449_pubkey[] = { 0x43, 0x76, 0xc9, 0x89, 0x3e, 0x92, 0x77, 0x29, 0x6c, 0x76, 0x6a, 0x83, 0xab, 0xbe, 0x36, 0xb3, 0x4d, 0xa7, 0xa6, 0x31, 0xf8, 0xcb, 0xfd, 0x32, 0xa1, 0x88, 0x8d, 0xe0, 0xdd, 0x14, 0x55, 0xa2, 0x1a, 0x15, 0x3e, 0xa2, 0xd6, 0x1c, 0xfa, 0x50, 0x71, 0xfc, 0x6b, 0xe1, 0x2a, 0x65, 0x8f, 0x6b, 0x29, 0x0b, 0xa1, 0xa8, 0xee, 0x8c, 0x78, 0xb5, 0xdd, 0x58, 0xf9, 0xff, 0xca, 0xcb, 0x22, 0x95, 0x56, 0x82, 0xee, 0xa0, 0x24, 0x29, 0xc3, 0xfa, 0x8c, 0xdc, 0xb6, 0x49, 0xfa, 0x4d, 0x00, 0x7c, 0x86, 0x93, 0xe3, 0xf8, 0xf3, 0xc0, 0xa5, 0xf3, 0xc4, 0xde, 0x7a, 0x51, 0xbe, 0xaa, 0x98, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_9449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9449_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9449 = { .name = "ecdsa_secp384r1_sha384_9449", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9449_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9449_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9449_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 378 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9450 for ECDSA, tcId is 379 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9450_pubkey[] = { 0x10, 0x87, 0x8f, 0xc4, 0x80, 0x7f, 0x67, 0x32, 0xa2, 0x3c, 0x88, 0x3e, 0x83, 0x8e, 0x38, 0xc7, 0x87, 0xf7, 0x08, 0x8f, 0x94, 0xc1, 0x82, 0x4b, 0x84, 0x67, 0x3e, 0x8b, 0x9e, 0xab, 0x16, 0xde, 0x15, 0x44, 0xae, 0x4b, 0xf2, 0xc6, 0xfe, 0x3f, 0xe4, 0xfb, 0x34, 0x3b, 0x74, 0x87, 0xe2, 0xb4, 0x30, 0x36, 0xff, 0x43, 0x95, 0x33, 0xd2, 0x2f, 0x95, 0x1d, 0xae, 0x96, 0x65, 0x84, 0xba, 0xfb, 0x23, 0xb2, 0x17, 0xdc, 0xad, 0x2f, 0x8f, 0x4e, 0x0e, 0x69, 0x99, 0xc0, 0xc4, 0xd0, 0xf0, 0x76, 0x63, 0x4b, 0xe8, 0x05, 0xf6, 0x76, 0xfd, 0x2a, 0x59, 0xc2, 0x7f, 0x9f, 0xe7, 0xc5, 0xd9, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_9450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9450_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9450 = { .name = "ecdsa_secp384r1_sha384_9450", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9450_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9450_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9450_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 379 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9451 for ECDSA, tcId is 380 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9451_pubkey[] = { 0x03, 0x6b, 0x25, 0x3e, 0x3b, 0x4a, 0xc8, 0x8b, 0xb8, 0x58, 0x5a, 0x2b, 0x32, 0xb9, 0x78, 0x76, 0x6a, 0x93, 0x1e, 0x5a, 0xd0, 0xd0, 0xe6, 0x53, 0xa2, 0xe3, 0x4b, 0x44, 0xd6, 0xdd, 0xcc, 0x0d, 0x38, 0x6e, 0x20, 0xc4, 0xde, 0xf2, 0xd8, 0xbb, 0x3f, 0x8d, 0xa1, 0x28, 0xc1, 0xea, 0xc6, 0x9f, 0x9c, 0x8e, 0x3b, 0x5f, 0xf5, 0xdd, 0xe2, 0x20, 0x5a, 0xf3, 0x59, 0xb3, 0x97, 0x4d, 0x52, 0x75, 0x8d, 0x7a, 0xba, 0xe8, 0x12, 0xb8, 0xb2, 0x75, 0xe1, 0x45, 0x2c, 0x4e, 0x59, 0xcb, 0x62, 0xe9, 0xb6, 0x77, 0x1d, 0x34, 0x7d, 0xbd, 0x1d, 0xea, 0x76, 0x1c, 0x70, 0x29, 0x1c, 0xc5, 0xe0, 0xa6, }; static const unsigned char ecdsa_secp384r1_sha384_9451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9451_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9451 = { .name = "ecdsa_secp384r1_sha384_9451", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9451_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9451_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9451_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 380 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9452 for ECDSA, tcId is 381 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9452_pubkey[] = { 0x27, 0x83, 0xc1, 0xbe, 0x92, 0x2f, 0xce, 0x15, 0x58, 0x64, 0xec, 0xb4, 0x1d, 0x0a, 0x31, 0x6e, 0x19, 0x3a, 0x55, 0x84, 0x3e, 0x80, 0x19, 0x2f, 0x1f, 0xe5, 0x56, 0x77, 0x2f, 0x3d, 0xeb, 0xd0, 0x4b, 0x9f, 0xc9, 0x3c, 0x27, 0xbc, 0x6f, 0x35, 0x39, 0x38, 0x88, 0x6a, 0x40, 0x44, 0x19, 0x94, 0x1a, 0x35, 0x2c, 0xec, 0x33, 0x69, 0x46, 0x42, 0x4f, 0xa3, 0xc2, 0x08, 0xea, 0x71, 0x05, 0xf5, 0x54, 0x9e, 0xdd, 0xe8, 0x68, 0x8a, 0xbd, 0x30, 0x53, 0x44, 0xbf, 0x4f, 0x66, 0xdd, 0xa7, 0xea, 0xbc, 0xda, 0x6f, 0x85, 0x57, 0xc9, 0xaf, 0x88, 0x10, 0x98, 0x04, 0xd7, 0x02, 0xe9, 0x67, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha384_9452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9452_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9452 = { .name = "ecdsa_secp384r1_sha384_9452", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9452_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9452_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9452_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 381 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9453 for ECDSA, tcId is 382 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9453_pubkey[] = { 0xfa, 0x92, 0x53, 0x8c, 0xdc, 0x74, 0x03, 0x68, 0xca, 0xf1, 0x64, 0x80, 0xff, 0x13, 0x04, 0xce, 0xbb, 0xbe, 0x59, 0xa4, 0x6a, 0x7a, 0x84, 0x60, 0x37, 0x26, 0xb9, 0x59, 0x2d, 0x10, 0x5b, 0xe0, 0x69, 0xdf, 0x1c, 0x61, 0xb5, 0x97, 0x4f, 0x27, 0xe7, 0x55, 0x2f, 0x79, 0x7d, 0xe9, 0x7c, 0xdb, 0x62, 0x0e, 0x03, 0xa4, 0x6d, 0xa8, 0x62, 0xe4, 0xb0, 0x89, 0xba, 0xfb, 0xb8, 0x0d, 0xf8, 0xf0, 0x55, 0xc8, 0xf4, 0x79, 0x91, 0xb3, 0xa3, 0xdd, 0xb2, 0xb0, 0x89, 0xae, 0xdb, 0x2f, 0x15, 0x84, 0x1a, 0x6a, 0x5b, 0x5e, 0x14, 0xc1, 0xdc, 0x36, 0xb3, 0xc1, 0x55, 0xc4, 0xf7, 0x4d, 0x34, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_9453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9453_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9453 = { .name = "ecdsa_secp384r1_sha384_9453", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9453_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9453_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9453_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 382 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9454 for ECDSA, tcId is 383 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9454_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9454_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9454 = { .name = "ecdsa_secp384r1_sha384_9454", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9454_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9454_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9454_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 383 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9455 for ECDSA, tcId is 384 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9455_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_9455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9455_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9455 = { .name = "ecdsa_secp384r1_sha384_9455", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9455_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9455_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9455_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 384 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9456 for ECDSA, tcId is 385 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9456_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_9456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9456_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9456 = { .name = "ecdsa_secp384r1_sha384_9456", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9456_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9456_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9456_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 385 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9457 for ECDSA, tcId is 386 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9457_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_9457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9457_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9457 = { .name = "ecdsa_secp384r1_sha384_9457", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9457_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9457_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9457_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 386 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9458 for ECDSA, tcId is 387 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9458_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9458_sig[] = { 0x32, 0x40, 0x12, 0x49, 0x71, 0x4e, 0x90, 0x91, 0xf0, 0x5a, 0x5e, 0x10, 0x9d, 0x5c, 0x12, 0x16, 0xfd, 0xc0, 0x5e, 0x98, 0x61, 0x42, 0x61, 0xaa, 0x0d, 0xbd, 0x9e, 0x9c, 0xd4, 0x41, 0x5d, 0xee, 0x29, 0x23, 0x8a, 0xfb, 0xd3, 0xb1, 0x03, 0xc1, 0xe4, 0x0e, 0xe5, 0xc9, 0x14, 0x4a, 0xee, 0x0f, 0x43, 0x26, 0x75, 0x6f, 0xb2, 0xc4, 0xfd, 0x72, 0x63, 0x60, 0xdd, 0x64, 0x79, 0xb5, 0x84, 0x94, 0x78, 0xc7, 0xa9, 0xd0, 0x54, 0xa8, 0x33, 0xa5, 0x8c, 0x16, 0x31, 0xc3, 0x3b, 0x63, 0xc3, 0x44, 0x13, 0x36, 0xdd, 0xf2, 0xc7, 0xfe, 0x0e, 0xd1, 0x29, 0xaa, 0xe6, 0xd4, 0xdd, 0xfe, 0xb7, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9458 = { .name = "ecdsa_secp384r1_sha384_9458", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9458_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha384_9458_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 387 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9459 for ECDSA, tcId is 388 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9459_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9459_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha384_9459_sig[] = { 0xd7, 0x14, 0x3a, 0x83, 0x66, 0x08, 0xb2, 0x55, 0x99, 0xa7, 0xf2, 0x8d, 0xec, 0x66, 0x35, 0x49, 0x4c, 0x29, 0x92, 0xad, 0x1e, 0x2b, 0xbe, 0xec, 0xb7, 0xef, 0x60, 0x1a, 0x9c, 0x01, 0x74, 0x6e, 0x71, 0x0c, 0xe0, 0xd9, 0xc4, 0x8a, 0xcc, 0xb3, 0x8a, 0x79, 0xed, 0xe5, 0xb9, 0x63, 0x8f, 0x34, 0x80, 0xf9, 0xe1, 0x65, 0xe8, 0xc6, 0x10, 0x35, 0xbf, 0x8a, 0xa7, 0xb5, 0x53, 0x39, 0x60, 0xe4, 0x6d, 0xd0, 0xe2, 0x11, 0xc9, 0x04, 0xa0, 0x64, 0xed, 0xb6, 0xde, 0x41, 0xf7, 0x97, 0xc0, 0xea, 0xe4, 0xe3, 0x27, 0x61, 0x2e, 0xe3, 0xf8, 0x16, 0xf4, 0x15, 0x72, 0x72, 0xbb, 0x4f, 0xab, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9459 = { .name = "ecdsa_secp384r1_sha384_9459", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9459_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9459_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha384_9459_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 388 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9460 for ECDSA, tcId is 389 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9460_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_9460_sig[] = { 0x23, 0x45, 0x03, 0xfc, 0xca, 0x57, 0x81, 0x21, 0x98, 0x6d, 0x96, 0xbe, 0x07, 0xfb, 0xc8, 0xda, 0x5d, 0x89, 0x4e, 0xd8, 0x58, 0x8c, 0x6d, 0xbc, 0xdb, 0xe9, 0x74, 0xb4, 0xb8, 0x13, 0xb2, 0x1c, 0x52, 0xd2, 0x0a, 0x89, 0x28, 0xf2, 0xe2, 0xfd, 0xac, 0x14, 0x70, 0x5b, 0x07, 0x05, 0x49, 0x8c, 0xcd, 0x7b, 0x9b, 0x76, 0x6b, 0x97, 0xb5, 0x3d, 0x1a, 0x80, 0xfc, 0x0b, 0x76, 0x0a, 0xf1, 0x6a, 0x11, 0xbf, 0x4a, 0x59, 0xc7, 0xc3, 0x67, 0xc6, 0xc7, 0x27, 0x5d, 0xfb, 0x6e, 0x18, 0xa8, 0x80, 0x91, 0xee, 0xd3, 0x73, 0x4b, 0xf5, 0xcf, 0x41, 0xb3, 0xdc, 0x6f, 0xec, 0xd6, 0xd3, 0xba, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9460 = { .name = "ecdsa_secp384r1_sha384_9460", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9460_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9460_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_9460_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 389 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9461 for ECDSA, tcId is 390 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9461_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_9461_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9461_sig[] = { 0x5c, 0xad, 0x9a, 0xe1, 0x56, 0x5f, 0x25, 0x88, 0xf8, 0x6d, 0x82, 0x1c, 0x2c, 0xc1, 0xb4, 0xd0, 0xfd, 0xf8, 0x74, 0x33, 0x13, 0x26, 0x56, 0x8f, 0x5b, 0x0e, 0x13, 0x0e, 0x4e, 0x0c, 0x0e, 0xc4, 0x97, 0xf8, 0xf5, 0xf5, 0x64, 0x21, 0x2b, 0xd2, 0xa2, 0x6e, 0xcb, 0x78, 0x2c, 0xf0, 0xa1, 0x8d, 0xbf, 0x2e, 0x9d, 0x09, 0x80, 0xfb, 0xb0, 0x06, 0x96, 0x67, 0x3e, 0x7f, 0xbb, 0x03, 0xe1, 0xf8, 0x54, 0xb9, 0xd7, 0x59, 0x6b, 0x75, 0x9a, 0x17, 0xbf, 0x6e, 0x6e, 0x67, 0xa9, 0x5e, 0xa6, 0xc1, 0x66, 0x4f, 0x82, 0xdc, 0x44, 0x9a, 0xe5, 0xea, 0x77, 0x9a, 0xbd, 0x99, 0xc7, 0x8e, 0x68, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9461 = { .name = "ecdsa_secp384r1_sha384_9461", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9461_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9461_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha384_9461_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 390 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9462 for ECDSA, tcId is 391 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9462_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9462_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9462_sig[] = { 0x07, 0x64, 0x8b, 0x66, 0x60, 0xd0, 0x1b, 0xa2, 0x52, 0x0a, 0x09, 0xd2, 0x98, 0xad, 0xf3, 0xb1, 0xa0, 0x2c, 0x32, 0x74, 0x4b, 0xd2, 0x87, 0x72, 0x08, 0xf5, 0xa4, 0x16, 0x2f, 0x6c, 0x98, 0x43, 0x73, 0x13, 0x9d, 0x80, 0x0a, 0x4c, 0xdc, 0x1f, 0xfe, 0xa1, 0x5b, 0xce, 0x48, 0x71, 0xa0, 0xed, 0x99, 0xfd, 0x36, 0x70, 0x12, 0xcb, 0x9e, 0x02, 0xcd, 0xe2, 0x74, 0x94, 0x55, 0xe0, 0xd4, 0x95, 0xc5, 0x28, 0x18, 0xf3, 0xc1, 0x4f, 0x6e, 0x6a, 0xad, 0x10, 0x5b, 0x09, 0x25, 0xe2, 0xa7, 0x29, 0x0a, 0xc4, 0xa0, 0x6d, 0x9f, 0xad, 0xf4, 0xb1, 0x5b, 0x57, 0x85, 0x56, 0xfe, 0x33, 0x2a, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9462 = { .name = "ecdsa_secp384r1_sha384_9462", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9462_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9462_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9462_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 391 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9463 for ECDSA, tcId is 392 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9463_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9463_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9463_sig[] = { 0xa0, 0x49, 0xdc, 0xd9, 0x6c, 0x72, 0xe4, 0xf3, 0x61, 0x44, 0xa5, 0x1b, 0xba, 0x30, 0x41, 0x7b, 0x45, 0x1a, 0x30, 0x5d, 0xd0, 0x1c, 0x9e, 0x30, 0xa5, 0xe0, 0x4d, 0xf9, 0x43, 0x42, 0x61, 0x7d, 0xc3, 0x83, 0xf1, 0x77, 0x27, 0x70, 0x8e, 0x32, 0x77, 0xcd, 0x72, 0x46, 0xca, 0x44, 0x07, 0x41, 0x39, 0x70, 0xe2, 0x64, 0xd8, 0x5b, 0x22, 0x8b, 0xf9, 0xe9, 0xb9, 0xc4, 0x94, 0x7c, 0x5d, 0xd0, 0x41, 0xea, 0x8b, 0x5b, 0xde, 0x30, 0xb9, 0x3a, 0xa5, 0x9f, 0xed, 0xf2, 0xc4, 0x28, 0xd3, 0xe2, 0x54, 0x0a, 0x54, 0xe0, 0x53, 0x06, 0x88, 0xac, 0xcc, 0xb8, 0x3a, 0xc7, 0xb2, 0x9b, 0x79, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9463 = { .name = "ecdsa_secp384r1_sha384_9463", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9463_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9463_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9463_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 392 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9464 for ECDSA, tcId is 393 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9464_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_9464_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9464_sig[] = { 0x44, 0x18, 0x00, 0xea, 0x93, 0x77, 0xc2, 0x78, 0x65, 0xbe, 0x00, 0x0a, 0xd0, 0x08, 0xeb, 0x3d, 0x75, 0x02, 0xbd, 0xd1, 0x05, 0x82, 0x4b, 0x26, 0xd1, 0x5c, 0xf3, 0xd0, 0x64, 0x52, 0x96, 0x9a, 0x9d, 0x06, 0x07, 0xa9, 0x15, 0xa8, 0xfe, 0x98, 0x92, 0x15, 0xfc, 0x4d, 0x61, 0xaf, 0x6e, 0x05, 0xdc, 0xe2, 0x9f, 0xaa, 0x51, 0x37, 0xf7, 0x5a, 0xd7, 0x7e, 0x03, 0x91, 0x8c, 0x8e, 0xe6, 0x74, 0x7c, 0xc7, 0xa3, 0x9b, 0x0a, 0x69, 0xf8, 0xb9, 0x15, 0x65, 0x4c, 0xac, 0x4c, 0xf4, 0xbf, 0xd9, 0xc8, 0x7c, 0xc4, 0x6a, 0xe1, 0x63, 0x1b, 0x5c, 0x6b, 0xae, 0xbd, 0x4f, 0xc0, 0x8f, 0xf8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9464 = { .name = "ecdsa_secp384r1_sha384_9464", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9464_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9464_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9464_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 393 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9465 for ECDSA, tcId is 394 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9465_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9465_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9465_sig[] = { 0x32, 0x44, 0x76, 0x80, 0x16, 0x45, 0x7c, 0x46, 0x3b, 0x74, 0xf2, 0x09, 0x7f, 0x21, 0x6d, 0x96, 0x70, 0xb1, 0x91, 0xf7, 0x62, 0x81, 0xc7, 0x4b, 0xc6, 0xa1, 0xa1, 0x97, 0x1d, 0x19, 0xf2, 0x09, 0xbf, 0x46, 0x96, 0x46, 0x8f, 0x5e, 0xb7, 0x5d, 0x63, 0x26, 0xa0, 0xa4, 0x3c, 0x0a, 0x65, 0x29, 0x50, 0x1e, 0x0a, 0xd9, 0x85, 0xed, 0x9f, 0x95, 0x69, 0x7b, 0xd1, 0x7f, 0xdb, 0xe3, 0xf9, 0xca, 0x92, 0xe0, 0xf7, 0x64, 0x26, 0xd3, 0x66, 0x4e, 0x68, 0x96, 0x64, 0x8d, 0x9c, 0x75, 0x0b, 0xf5, 0x88, 0xd0, 0xce, 0x7d, 0x01, 0x1c, 0x1a, 0x1e, 0x8d, 0x6c, 0x2e, 0x08, 0x24, 0x22, 0xdc, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9465 = { .name = "ecdsa_secp384r1_sha384_9465", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9465_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9465_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9465_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 394 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9466 for ECDSA, tcId is 395 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9466_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9466_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9466_sig[] = { 0x5e, 0x1a, 0xf4, 0x0f, 0x24, 0x80, 0xe3, 0xd9, 0x7c, 0x4a, 0xe4, 0xbf, 0xd3, 0x4a, 0x9f, 0x45, 0x26, 0x92, 0x41, 0x35, 0x6f, 0x3a, 0x46, 0xbe, 0xcd, 0x86, 0xa4, 0xa7, 0xc9, 0x71, 0x6d, 0x73, 0xca, 0x5a, 0xeb, 0xdb, 0x3d, 0xb1, 0xa7, 0x76, 0x56, 0x50, 0x66, 0x66, 0x83, 0xbc, 0x85, 0x6b, 0x7e, 0x7c, 0x4b, 0x47, 0x3a, 0x2b, 0xaa, 0xa4, 0x95, 0x37, 0x85, 0xbe, 0x8a, 0xa2, 0xa1, 0x00, 0x06, 0xf6, 0xd3, 0x6b, 0x40, 0x0a, 0xb9, 0x81, 0x86, 0x4d, 0x69, 0xce, 0xce, 0xc0, 0x46, 0x71, 0x8d, 0x04, 0x04, 0xb9, 0x64, 0x74, 0x54, 0xb1, 0x59, 0xaa, 0x5a, 0x92, 0xd7, 0x6d, 0x79, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9466 = { .name = "ecdsa_secp384r1_sha384_9466", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9466_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9466_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9466_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 395 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9467 for ECDSA, tcId is 396 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9467_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_9467_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9467_sig[] = { 0x66, 0x88, 0xe3, 0x6a, 0x26, 0xf1, 0x5b, 0xdc, 0x1c, 0x3f, 0x91, 0x36, 0x7f, 0x8a, 0x76, 0x67, 0xf7, 0xbb, 0x3e, 0x30, 0xa3, 0x35, 0xd6, 0xf0, 0x90, 0x0e, 0x95, 0x34, 0xeb, 0x88, 0xb2, 0x60, 0xcb, 0x29, 0x34, 0x4c, 0x72, 0x3f, 0xed, 0xfb, 0xe7, 0xac, 0x9c, 0x5a, 0x33, 0xf4, 0xbf, 0x0d, 0xaa, 0x35, 0xfd, 0xdf, 0x0f, 0xdc, 0x90, 0x17, 0x86, 0x0b, 0x37, 0x8f, 0x80, 0x1c, 0xd8, 0x06, 0xf3, 0xe2, 0xd7, 0x54, 0xcd, 0x2f, 0xd9, 0x4e, 0xb7, 0xbb, 0x36, 0xa4, 0x6c, 0xe8, 0x28, 0xce, 0xf8, 0x7e, 0x9e, 0xbb, 0xf4, 0x47, 0x06, 0x8e, 0x63, 0x0b, 0x87, 0xfe, 0xe3, 0x85, 0xad, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9467 = { .name = "ecdsa_secp384r1_sha384_9467", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9467_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9467_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9467_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 396 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9468 for ECDSA, tcId is 397 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9468_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9468_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9468_sig[] = { 0xd4, 0xa8, 0xf3, 0xb0, 0xb4, 0xd3, 0xa5, 0x76, 0x9e, 0x3a, 0x0b, 0xbc, 0x64, 0x4b, 0x35, 0xf1, 0xd5, 0x09, 0x35, 0x5e, 0xd1, 0xfe, 0x40, 0x1e, 0x17, 0x0f, 0x66, 0x7b, 0x66, 0x1f, 0x69, 0x3b, 0x32, 0x59, 0x8e, 0x8c, 0x14, 0x3a, 0x81, 0x7a, 0x95, 0x89, 0x82, 0x84, 0x50, 0x42, 0xbb, 0x48, 0x04, 0xcc, 0x07, 0x57, 0x8b, 0xbd, 0x19, 0x81, 0xdb, 0xf6, 0xe8, 0xa9, 0x7a, 0x35, 0x4c, 0x98, 0xd4, 0x1b, 0x8b, 0x6f, 0x6e, 0x8a, 0x2c, 0x2b, 0x17, 0x63, 0xc7, 0xc2, 0xa2, 0x9d, 0x79, 0xe2, 0x4f, 0x84, 0x76, 0x07, 0x5c, 0x9a, 0xed, 0x9a, 0xec, 0x6c, 0x64, 0xdf, 0xf5, 0x04, 0x61, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9468 = { .name = "ecdsa_secp384r1_sha384_9468", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9468_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9468_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9468_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 397 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9469 for ECDSA, tcId is 398 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9469_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9469_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9469_sig[] = { 0xc2, 0x86, 0xd1, 0x92, 0x8e, 0x9c, 0x79, 0xfd, 0xd3, 0xbe, 0xbd, 0xf2, 0x2a, 0x1d, 0xbd, 0x37, 0xc8, 0x10, 0x5e, 0x8e, 0xcf, 0x41, 0xe9, 0xe3, 0x77, 0x7f, 0xe3, 0x41, 0xb6, 0xb8, 0xd5, 0xa8, 0x9b, 0x9d, 0x98, 0x68, 0x27, 0xd6, 0xd1, 0xdb, 0xb3, 0x81, 0xcd, 0x82, 0x39, 0x48, 0x4a, 0x22, 0x20, 0x11, 0x19, 0xae, 0x30, 0x5b, 0x93, 0x60, 0xaa, 0x9b, 0x5e, 0x5d, 0x15, 0x67, 0xe0, 0x67, 0x4c, 0x09, 0xe4, 0xf0, 0x25, 0x55, 0x6e, 0xbf, 0x81, 0xb9, 0x87, 0x46, 0x6b, 0x0f, 0x42, 0x1b, 0x8d, 0x31, 0xf7, 0x2b, 0xbe, 0x95, 0xf3, 0xce, 0x2a, 0xa9, 0x87, 0x4a, 0x84, 0xed, 0xfd, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9469 = { .name = "ecdsa_secp384r1_sha384_9469", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9469_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9469_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9469_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 398 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9470 for ECDSA, tcId is 399 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9470_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_9470_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9470_sig[] = { 0xd9, 0xc6, 0x78, 0x55, 0x01, 0x67, 0xf1, 0x0c, 0x51, 0x1e, 0x62, 0xac, 0xb4, 0xbd, 0x0a, 0x3f, 0x7f, 0x33, 0x6b, 0xc0, 0x90, 0xc9, 0x4e, 0x6c, 0x6b, 0x02, 0x62, 0x24, 0x39, 0xc3, 0x48, 0xa2, 0x15, 0x9c, 0x5f, 0x41, 0xf9, 0xb5, 0xaa, 0x4b, 0x47, 0x05, 0x90, 0xd4, 0x0d, 0xcd, 0x7c, 0xc2, 0x1f, 0xd5, 0xea, 0xee, 0x29, 0x5a, 0xbb, 0x40, 0x81, 0xcb, 0x62, 0x67, 0x45, 0xf4, 0xad, 0x27, 0x9c, 0xeb, 0x44, 0x60, 0x40, 0x62, 0x83, 0x0b, 0x58, 0xe6, 0xc0, 0x46, 0x5c, 0x56, 0x2d, 0x41, 0xf0, 0x2b, 0xa5, 0x88, 0xfc, 0x0d, 0xb1, 0xeb, 0xbe, 0x33, 0x9c, 0xdc, 0x00, 0x8d, 0x7a, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9470 = { .name = "ecdsa_secp384r1_sha384_9470", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9470_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9470_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9470_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 399 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9471 for ECDSA, tcId is 400 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9471_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9471_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9471_sig[] = { 0x20, 0xfe, 0xe7, 0xc7, 0x1b, 0x6c, 0xb0, 0xd1, 0xda, 0x36, 0x41, 0xec, 0x66, 0x22, 0xc0, 0x55, 0xa3, 0xb1, 0x6a, 0x1f, 0x59, 0x6c, 0x64, 0xb3, 0x4d, 0xa1, 0xb2, 0xd0, 0xb8, 0x68, 0xb6, 0x6a, 0x8f, 0x0a, 0x0d, 0x0d, 0xb9, 0x83, 0xb3, 0xdc, 0x7e, 0x53, 0xbb, 0x72, 0x95, 0xda, 0x81, 0x97, 0x81, 0x41, 0xa9, 0x31, 0xd3, 0x57, 0x9a, 0xec, 0x1c, 0xac, 0x98, 0x87, 0xd2, 0xff, 0xf9, 0xc6, 0xf1, 0x2d, 0x47, 0xa2, 0x7e, 0x4a, 0xab, 0x8c, 0xf2, 0x62, 0xa9, 0xd1, 0x4a, 0x71, 0x5b, 0xca, 0x0b, 0x20, 0x57, 0xcb, 0xc3, 0xf1, 0x8b, 0x6f, 0xd3, 0xd1, 0xdf, 0x76, 0xf7, 0x41, 0x0f, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9471 = { .name = "ecdsa_secp384r1_sha384_9471", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9471_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9471_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9471_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 400 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9472 for ECDSA, tcId is 401 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9472_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9472_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9472_sig[] = { 0x91, 0x3e, 0xec, 0xc5, 0x59, 0xb3, 0xcf, 0x71, 0x08, 0xa6, 0x5d, 0x6c, 0xc3, 0x07, 0x6b, 0xfd, 0xf3, 0x6c, 0x6f, 0x94, 0xdc, 0xc6, 0x69, 0x3d, 0x06, 0x69, 0x04, 0x70, 0xf3, 0x4a, 0x2e, 0x81, 0x56, 0x42, 0x41, 0xe1, 0xde, 0x5f, 0x5f, 0x51, 0x42, 0x1d, 0xe3, 0x0a, 0xf4, 0x67, 0xf1, 0x0f, 0x64, 0x9b, 0xd3, 0x71, 0x72, 0x44, 0xe8, 0xef, 0x3c, 0x6b, 0x0e, 0xda, 0x98, 0x3f, 0x84, 0xdc, 0xa5, 0xea, 0x86, 0xd1, 0xbe, 0xc1, 0x53, 0x86, 0xb9, 0xc4, 0x73, 0xec, 0x43, 0xa8, 0xcd, 0x0b, 0xa5, 0x58, 0xee, 0xe8, 0x19, 0xf7, 0x91, 0xd9, 0xff, 0x92, 0x72, 0xb9, 0xaf, 0xd5, 0x95, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9472 = { .name = "ecdsa_secp384r1_sha384_9472", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9472_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9472_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9472_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 401 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9473 for ECDSA, tcId is 402 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9473_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_9473_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9473_sig[] = { 0x23, 0x85, 0x5c, 0x46, 0x40, 0x3a, 0x97, 0xb7, 0x6c, 0xbb, 0x31, 0x6e, 0xc3, 0xfe, 0x7e, 0x2c, 0x42, 0x2b, 0x81, 0x83, 0x87, 0x60, 0x4b, 0xda, 0x8c, 0x3d, 0x91, 0x12, 0x1b, 0x4f, 0x20, 0x17, 0x9d, 0x91, 0x07, 0xc5, 0xf9, 0x2d, 0xed, 0xc8, 0xb6, 0x20, 0xd7, 0xdb, 0x87, 0xfc, 0xcc, 0xcd, 0x50, 0xf5, 0x73, 0x43, 0xab, 0x14, 0x8e, 0x50, 0x66, 0x23, 0x20, 0xc4, 0x16, 0x1e, 0x44, 0x54, 0x3c, 0x35, 0xbc, 0x99, 0x20, 0x11, 0xea, 0x5b, 0x16, 0x80, 0xb9, 0x43, 0x82, 0xcf, 0x22, 0x4e, 0xa0, 0xec, 0x5d, 0xa5, 0x11, 0xe1, 0x02, 0xf5, 0x66, 0xcb, 0x67, 0x20, 0x1f, 0x30, 0xa2, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9473 = { .name = "ecdsa_secp384r1_sha384_9473", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9473_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9473_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9473_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 402 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9474 for ECDSA, tcId is 403 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9474_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9474_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9474_sig[] = { 0xd2, 0x00, 0x95, 0x8d, 0x49, 0x1f, 0xce, 0xbd, 0xe6, 0x67, 0xcd, 0x73, 0x6c, 0x9d, 0xba, 0x09, 0x61, 0xc7, 0x0d, 0xb2, 0xec, 0xaf, 0x57, 0x3c, 0x31, 0xdd, 0x7f, 0xa4, 0x1e, 0xcc, 0xa3, 0x2b, 0x40, 0xb5, 0x89, 0x6f, 0x9a, 0x0d, 0xdf, 0x27, 0x21, 0x10, 0xe3, 0xd2, 0x1e, 0x84, 0x59, 0x3a, 0xc2, 0xec, 0xf7, 0x39, 0x43, 0xb9, 0xad, 0xce, 0x59, 0x6b, 0xac, 0x14, 0xfc, 0xe6, 0x24, 0x95, 0xae, 0x93, 0x82, 0x5c, 0x5f, 0xf6, 0xf6, 0x1c, 0x24, 0x7d, 0x1d, 0x8a, 0xfc, 0xba, 0x52, 0x08, 0x2f, 0xc9, 0x6f, 0x63, 0xa2, 0x6e, 0x55, 0xbc, 0xcf, 0xc3, 0x77, 0x9f, 0x88, 0xcf, 0xd7, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9474 = { .name = "ecdsa_secp384r1_sha384_9474", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9474_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9474_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9474_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 403 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9475 for ECDSA, tcId is 404 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9475_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9475_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9475_sig[] = { 0x6a, 0xc1, 0x7d, 0x71, 0x26, 0x0c, 0x79, 0xf8, 0x1a, 0x75, 0x66, 0x12, 0x47, 0x38, 0xcb, 0x3e, 0xe5, 0xd0, 0xaa, 0x69, 0x0e, 0x73, 0xa9, 0x8a, 0xe9, 0xe7, 0x66, 0xf1, 0x33, 0x66, 0x91, 0xe5, 0x00, 0xca, 0xd5, 0x1b, 0xa1, 0x30, 0x23, 0x66, 0xc0, 0x9c, 0xc0, 0x6b, 0x8f, 0x70, 0x49, 0xe0, 0x32, 0xca, 0x96, 0x5d, 0x6d, 0x70, 0x12, 0xec, 0x18, 0x7c, 0x7c, 0xab, 0x95, 0x44, 0x33, 0x4d, 0x66, 0xc2, 0xa7, 0x65, 0x8d, 0xde, 0xfa, 0x67, 0xe4, 0xad, 0x40, 0x42, 0x98, 0x15, 0x51, 0x8e, 0xcc, 0x87, 0xb1, 0x49, 0x2d, 0xdd, 0x57, 0x33, 0x3b, 0xd2, 0x30, 0x0b, 0x46, 0x60, 0xa8, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9475 = { .name = "ecdsa_secp384r1_sha384_9475", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9475_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9475_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9475_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 404 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9476 for ECDSA, tcId is 405 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9476_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_9476_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9476_sig[] = { 0xe1, 0x9a, 0x46, 0x46, 0xf0, 0xed, 0x8a, 0x27, 0x1f, 0xe8, 0x6b, 0xa5, 0x33, 0xf8, 0xbe, 0x4f, 0xd8, 0x1b, 0xbf, 0x46, 0x74, 0x71, 0x6f, 0x66, 0x8e, 0xfa, 0x89, 0xa4, 0x0c, 0xac, 0x51, 0xee, 0xc2, 0xa6, 0xcf, 0xbd, 0x92, 0x32, 0x7d, 0x25, 0xef, 0xe9, 0x1c, 0xa4, 0xff, 0x71, 0x2b, 0xc5, 0x4a, 0x86, 0xb2, 0xe8, 0xe1, 0x23, 0x78, 0xe6, 0x33, 0xde, 0xc2, 0x69, 0x1e, 0x3b, 0x1e, 0xed, 0x4e, 0x93, 0x2c, 0xc4, 0x8b, 0x28, 0xe4, 0x5f, 0xa3, 0xd4, 0x64, 0xcc, 0x0e, 0x94, 0x8c, 0x02, 0xcc, 0x9d, 0xec, 0xf2, 0xbb, 0x43, 0xb2, 0x59, 0x37, 0xfc, 0xf3, 0x7e, 0x9a, 0xd8, 0x6e, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9476 = { .name = "ecdsa_secp384r1_sha384_9476", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9476_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9476_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9476_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 405 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9477 for ECDSA, tcId is 406 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9477_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9477_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9477_sig[] = { 0x15, 0xaa, 0xc6, 0xc0, 0xf4, 0x35, 0xcb, 0x66, 0x2d, 0x11, 0x0d, 0xb5, 0xcf, 0x68, 0x6c, 0xae, 0xe5, 0x3c, 0x64, 0xfe, 0x2d, 0x6d, 0x60, 0x0a, 0x83, 0xeb, 0xe5, 0x05, 0xa0, 0xe6, 0xfc, 0x62, 0xdc, 0x57, 0x05, 0x16, 0x04, 0x77, 0xc4, 0x75, 0x28, 0xc8, 0xc9, 0x03, 0xfa, 0x86, 0x5b, 0x5d, 0x7f, 0x94, 0xdd, 0xc0, 0x1a, 0x60, 0x3f, 0x9b, 0xec, 0x5d, 0x10, 0xc9, 0xf2, 0xc8, 0x9f, 0xb2, 0x3b, 0x3f, 0xfa, 0xb6, 0xb2, 0xb6, 0x8d, 0x0f, 0x04, 0x33, 0x6d, 0x49, 0x90, 0x85, 0xe3, 0x2d, 0x22, 0xbf, 0x3a, 0xb6, 0x7a, 0x49, 0xa7, 0x4c, 0x74, 0x3f, 0x72, 0x47, 0x31, 0x72, 0xb5, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9477 = { .name = "ecdsa_secp384r1_sha384_9477", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9477_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9477_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9477_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 406 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9478 for ECDSA, tcId is 407 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9478_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9478_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9478_sig[] = { 0x90, 0xb9, 0x5a, 0x7d, 0x19, 0x4b, 0x73, 0x49, 0x8f, 0xba, 0x5a, 0xfc, 0x95, 0xc1, 0xae, 0xa9, 0xbe, 0x07, 0x31, 0x62, 0xa9, 0xed, 0xc5, 0x7c, 0x4d, 0x12, 0xf4, 0x59, 0xf0, 0xa1, 0x73, 0x0b, 0xaf, 0x2f, 0x87, 0xd7, 0xd6, 0x62, 0x4a, 0xea, 0x7b, 0x93, 0x1e, 0xc5, 0x33, 0x70, 0xfe, 0x47, 0xcb, 0xc1, 0xef, 0x47, 0x0e, 0x66, 0x60, 0x10, 0x60, 0x4c, 0x60, 0x93, 0x84, 0xb8, 0x72, 0xdb, 0x7f, 0xa7, 0xb8, 0xa5, 0xa9, 0xf2, 0x0f, 0xde, 0xfd, 0x65, 0x6b, 0xe2, 0xfc, 0xc7, 0x5d, 0xb5, 0x39, 0x48, 0x10, 0x2f, 0x7a, 0xb2, 0x03, 0xea, 0x18, 0x60, 0xa6, 0xa3, 0x2a, 0xf2, 0x46, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9478 = { .name = "ecdsa_secp384r1_sha384_9478", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9478_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9478_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9478_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 407 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9479 for ECDSA, tcId is 408 in file ecdsa_secp384r1_sha384_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_9479_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_9479_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_9479_sig[] = { 0xdd, 0x43, 0x91, 0xce, 0x75, 0x57, 0xcb, 0xd0, 0x05, 0xe3, 0xd5, 0xd7, 0x27, 0xcd, 0x26, 0x43, 0x99, 0xdc, 0xc3, 0xc6, 0x50, 0x1e, 0x45, 0x47, 0x50, 0x5b, 0x6d, 0x57, 0xb4, 0x0b, 0xbf, 0x0a, 0x7f, 0xac, 0x79, 0x4d, 0xcc, 0x8d, 0x42, 0x33, 0x15, 0x9d, 0xd0, 0xaa, 0x40, 0xd4, 0xe0, 0xb9, 0xa7, 0x7f, 0xa1, 0x37, 0x4f, 0xd6, 0x0a, 0xa9, 0x16, 0x00, 0x91, 0x22, 0x00, 0xfc, 0x83, 0xc6, 0xaa, 0x44, 0x7f, 0x81, 0x71, 0xec, 0xea, 0x72, 0xae, 0x32, 0x2d, 0xf3, 0x2d, 0xcc, 0xd6, 0x89, 0x51, 0xdc, 0x5c, 0xaf, 0x6c, 0x50, 0x38, 0x0e, 0x40, 0x0e, 0x45, 0xbf, 0x5c, 0x0e, 0x62, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_9479 = { .name = "ecdsa_secp384r1_sha384_9479", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_9479_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_9479_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_9479_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 408 in file ecdsa_secp384r1_sha384_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 9480 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9480_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9480_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0x9f, 0xbb, 0x19, 0x7e, 0x4c, 0x42, 0x50, 0x92, 0x6e, 0x30, 0xc5, 0x30, 0x3a, 0x2c, 0x2d, 0x34, 0x25, 0x0f, 0x17, 0xfc, 0xf5, 0xab, 0x31, 0x81, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9480 = { .name = "ecdsa_secp384r1_sha512_9480", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9480_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9480_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9480_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9481 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9481_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9481_sig[] = { 0x01, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x45, 0xd3, 0x82, 0x17, 0xe2, 0xbc, 0xce, 0xed, 0xb5, 0xca, 0xa7, 0xae, 0xf8, 0xbc, 0x35, 0xed, 0xee, 0xc4, 0xbe, 0xb1, 0x55, 0x61, 0x0f, 0x3f, 0x55, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9481 = { .name = "ecdsa_secp384r1_sha512_9481", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9481_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9481_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9481_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9482 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9482_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9482_sig[] = { 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xb9, 0xbb, 0x44, 0x83, 0x21, 0x2b, 0x9f, 0x6e, 0x08, 0xe5, 0x8c, 0x6c, 0x6b, 0xd5, 0x2b, 0x61, 0x07, 0x15, 0x19, 0x81, 0x80, 0x38, 0x7b, 0x13, 0x91, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9482 = { .name = "ecdsa_secp384r1_sha512_9482", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9482_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9482_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9482_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9483 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9483_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9483_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9483_sig[] = { 0x01, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9483 = { .name = "ecdsa_secp384r1_sha512_9483", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9483_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9483_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9483_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9484 for ECDSA, tcId is 5 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9484_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9484_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9484_sig[] = { 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xb9, 0xf3, 0xe1, 0x35, 0x9f, 0x37, 0x68, 0x40, 0x29, 0x8d, 0x72, 0x5e, 0xb9, 0x8c, 0x7a, 0xb9, 0x8c, 0x28, 0x2d, 0x68, 0x15, 0x6b, 0xb5, 0xea, 0x1e, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9484 = { .name = "ecdsa_secp384r1_sha512_9484", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9484_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9484_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9484_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9485 for ECDSA, tcId is 6 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9485_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9485_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9485_sig[] = { 0x00, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x01, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x5f, 0xd3, 0xad, 0x1c, 0xb7, 0xa6, 0x1d, 0xc9, 0x50, 0x7f, 0x6e, 0xeb, 0x2a, 0x65, 0x34, 0x1a, 0xd0, 0xca, 0xc0, 0x35, 0xdf, 0xee, 0x58, 0xd1, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9485 = { .name = "ecdsa_secp384r1_sha512_9485", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9485_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9485_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9485_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9486 for ECDSA, tcId is 7 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9486_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9486_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9486_sig[] = { 0x00, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x01, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9486 = { .name = "ecdsa_secp384r1_sha512_9486", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9486_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9486_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9486_sig, .siglen = 98, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9487 for ECDSA, tcId is 8 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9487_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9487_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9487_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0x9f, 0xf3, 0xb6, 0x30, 0xca, 0x4e, 0x19, 0x64, 0x8e, 0xd8, 0xab, 0x22, 0x87, 0xe3, 0x7c, 0x8c, 0xaa, 0x22, 0x2b, 0xe3, 0x8a, 0xde, 0x6c, 0x58, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9487 = { .name = "ecdsa_secp384r1_sha512_9487", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9487_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9487_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9487_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9488 for ECDSA, tcId is 9 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9488_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9488_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9488_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9488 = { .name = "ecdsa_secp384r1_sha512_9488", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9488_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9488_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9488_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9489 for ECDSA, tcId is 10 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9489_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9489_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9489_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9489 = { .name = "ecdsa_secp384r1_sha512_9489", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9489_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9489_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9489_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9490 for ECDSA, tcId is 11 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9490_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9490_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9490_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9490 = { .name = "ecdsa_secp384r1_sha512_9490", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9490_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9490_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9490_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9491 for ECDSA, tcId is 12 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9491_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9491_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9491_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9491 = { .name = "ecdsa_secp384r1_sha512_9491", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9491_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9491_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9491_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9492 for ECDSA, tcId is 13 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9492_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9492_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9492_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9492 = { .name = "ecdsa_secp384r1_sha512_9492", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9492_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9492_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9492_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9493 for ECDSA, tcId is 14 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9493_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9493_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9493_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9493 = { .name = "ecdsa_secp384r1_sha512_9493", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9493_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9493_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9493_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9494 for ECDSA, tcId is 15 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9494_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9494_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9494_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9494 = { .name = "ecdsa_secp384r1_sha512_9494", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9494_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9494_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9494_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9495 for ECDSA, tcId is 16 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9495_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9495_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9495_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9495 = { .name = "ecdsa_secp384r1_sha512_9495", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9495_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9495_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9495_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9496 for ECDSA, tcId is 17 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9496_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9496_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9496_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9496 = { .name = "ecdsa_secp384r1_sha512_9496", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9496_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9496_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9496_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9497 for ECDSA, tcId is 18 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9497_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9497_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9497_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9497 = { .name = "ecdsa_secp384r1_sha512_9497", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9497_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9497_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9497_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9498 for ECDSA, tcId is 19 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9498_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9498_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9498_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9498 = { .name = "ecdsa_secp384r1_sha512_9498", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9498_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9498_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9498_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9499 for ECDSA, tcId is 20 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9499_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9499_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9499_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9499 = { .name = "ecdsa_secp384r1_sha512_9499", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9499_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9499_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9499_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9500 for ECDSA, tcId is 21 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9500_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9500_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9500_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9500 = { .name = "ecdsa_secp384r1_sha512_9500", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9500_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9500_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9500_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9501 for ECDSA, tcId is 22 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9501_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9501_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9501_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9501 = { .name = "ecdsa_secp384r1_sha512_9501", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9501_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9501_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9501_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9502 for ECDSA, tcId is 23 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9502_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9502_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9502_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9502 = { .name = "ecdsa_secp384r1_sha512_9502", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9502_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9502_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9502_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9503 for ECDSA, tcId is 24 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9503_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9503_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9503_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9503 = { .name = "ecdsa_secp384r1_sha512_9503", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9503_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9503_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9503_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9504 for ECDSA, tcId is 25 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9504_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9504_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9504_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9504 = { .name = "ecdsa_secp384r1_sha512_9504", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9504_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9504_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9504_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9505 for ECDSA, tcId is 26 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9505_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9505_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9505_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9505 = { .name = "ecdsa_secp384r1_sha512_9505", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9505_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9505_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9505_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9506 for ECDSA, tcId is 27 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9506_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9506_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9506_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9506 = { .name = "ecdsa_secp384r1_sha512_9506", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9506_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9506_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9506_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9507 for ECDSA, tcId is 28 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9507_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9507_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9507_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9507 = { .name = "ecdsa_secp384r1_sha512_9507", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9507_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9507_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9507_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9508 for ECDSA, tcId is 29 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9508_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9508_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9508_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9508 = { .name = "ecdsa_secp384r1_sha512_9508", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9508_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9508_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9508_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9509 for ECDSA, tcId is 30 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9509_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9509_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9509_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9509 = { .name = "ecdsa_secp384r1_sha512_9509", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9509_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9509_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9509_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9510 for ECDSA, tcId is 31 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9510_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9510_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9510_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9510 = { .name = "ecdsa_secp384r1_sha512_9510", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9510_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9510_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9510_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9511 for ECDSA, tcId is 32 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9511_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9511_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9511_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9511 = { .name = "ecdsa_secp384r1_sha512_9511", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9511_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9511_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9511_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9512 for ECDSA, tcId is 33 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9512_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9512_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9512 = { .name = "ecdsa_secp384r1_sha512_9512", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9512_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9512_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9512_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9513 for ECDSA, tcId is 34 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9513_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9513_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9513_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9513 = { .name = "ecdsa_secp384r1_sha512_9513", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9513_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9513_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9513_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9514 for ECDSA, tcId is 35 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9514_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9514_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9514_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9514 = { .name = "ecdsa_secp384r1_sha512_9514", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9514_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9514_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9514_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9515 for ECDSA, tcId is 36 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9515_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9515_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9515_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9515 = { .name = "ecdsa_secp384r1_sha512_9515", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9515_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9515_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9515_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9516 for ECDSA, tcId is 37 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9516_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9516_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9516_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9516 = { .name = "ecdsa_secp384r1_sha512_9516", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9516_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9516_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9516_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9517 for ECDSA, tcId is 38 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9517_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9517_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9517_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9517 = { .name = "ecdsa_secp384r1_sha512_9517", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9517_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9517_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9517_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9518 for ECDSA, tcId is 39 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9518_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9518_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9518_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9518 = { .name = "ecdsa_secp384r1_sha512_9518", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9518_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9518_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9518_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9519 for ECDSA, tcId is 40 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9519_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9519_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9519_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9519 = { .name = "ecdsa_secp384r1_sha512_9519", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9519_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9519_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9519_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9520 for ECDSA, tcId is 41 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9520_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9520_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9520_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9520 = { .name = "ecdsa_secp384r1_sha512_9520", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9520_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9520_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9520_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9521 for ECDSA, tcId is 42 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9521_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9521_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9521_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9521 = { .name = "ecdsa_secp384r1_sha512_9521", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9521_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9521_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9521_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9522 for ECDSA, tcId is 43 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9522_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9522_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9522_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9522 = { .name = "ecdsa_secp384r1_sha512_9522", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9522_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9522_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9522_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9523 for ECDSA, tcId is 44 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9523_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9523_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9523 = { .name = "ecdsa_secp384r1_sha512_9523", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9523_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9523_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9523_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9524 for ECDSA, tcId is 45 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9524_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9524_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9524 = { .name = "ecdsa_secp384r1_sha512_9524", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9524_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9524_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9524_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9525 for ECDSA, tcId is 46 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9525_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9525_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9525 = { .name = "ecdsa_secp384r1_sha512_9525", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9525_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9525_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9525_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9526 for ECDSA, tcId is 47 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9526_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9526_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9526 = { .name = "ecdsa_secp384r1_sha512_9526", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9526_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9526_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9526_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9527 for ECDSA, tcId is 48 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9527_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9527_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9527 = { .name = "ecdsa_secp384r1_sha512_9527", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9527_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9527_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9527_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9528 for ECDSA, tcId is 49 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9528_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9528_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9528 = { .name = "ecdsa_secp384r1_sha512_9528", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9528_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9528_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9528_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9529 for ECDSA, tcId is 50 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9529_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9529_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9529 = { .name = "ecdsa_secp384r1_sha512_9529", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9529_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9529_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9529_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9530 for ECDSA, tcId is 51 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9530_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9530_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9530 = { .name = "ecdsa_secp384r1_sha512_9530", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9530_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9530_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9530_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9531 for ECDSA, tcId is 52 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9531_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9531_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9531 = { .name = "ecdsa_secp384r1_sha512_9531", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9531_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9531_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9531_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9532 for ECDSA, tcId is 53 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9532_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9532_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9532 = { .name = "ecdsa_secp384r1_sha512_9532", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9532_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9532_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9532_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9533 for ECDSA, tcId is 54 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9533_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9533_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9533 = { .name = "ecdsa_secp384r1_sha512_9533", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9533_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9533_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9533_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9534 for ECDSA, tcId is 55 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9534_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9534_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9534 = { .name = "ecdsa_secp384r1_sha512_9534", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9534_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9534_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9534_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9535 for ECDSA, tcId is 56 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9535_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9535_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9535_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9535 = { .name = "ecdsa_secp384r1_sha512_9535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9535_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9535_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9535_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9536 for ECDSA, tcId is 57 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9536_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9536_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9536_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9536 = { .name = "ecdsa_secp384r1_sha512_9536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9536_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9536_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9536_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9537 for ECDSA, tcId is 58 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9537_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9537_msg[] = { 0x36, 0x37, 0x32, 0x36, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9537_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0x8f, 0x8a, 0x27, 0x7d, 0xde, 0x52, 0x82, 0x67, 0x1a, 0xf9, 0x58, 0xe3, 0x31, 0x5e, 0x79, 0x5a, 0x20, 0xe2, 0x88, 0x51, 0x57, 0xb7, 0x76, 0x63, 0xa6, 0x7a, 0x77, 0xef, 0x23, 0x79, 0x02, 0x0c, 0x5d, 0x12, 0xbe, 0x6c, 0x73, 0x2f, 0xd7, 0x25, 0x40, 0x2c, 0xb9, 0xee, 0x8c, 0x34, 0x52, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9537 = { .name = "ecdsa_secp384r1_sha512_9537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9537_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9537_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha512_9537_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9538 for ECDSA, tcId is 59 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9538_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9538_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9538_sig[] = { 0xd5, 0x1c, 0x53, 0xfa, 0x3e, 0x20, 0x1c, 0x44, 0x0a, 0x4e, 0x33, 0xea, 0x0b, 0xbc, 0x1d, 0x3f, 0x3f, 0xe1, 0x8b, 0x0c, 0xc2, 0xa4, 0xd6, 0x81, 0x2d, 0xd2, 0x17, 0xa9, 0xb4, 0x26, 0xe5, 0x4e, 0xb4, 0x02, 0x41, 0x13, 0xb3, 0x54, 0x44, 0x12, 0x72, 0x17, 0x45, 0x49, 0xc9, 0x79, 0x85, 0x7c, 0x09, 0x92, 0xc5, 0x44, 0x2d, 0xc6, 0xd5, 0xd6, 0x09, 0x5a, 0x45, 0x72, 0x0f, 0x5c, 0x53, 0x44, 0xac, 0xb7, 0x8b, 0xc1, 0x88, 0x17, 0xef, 0x32, 0xc1, 0x33, 0x4e, 0x6e, 0xba, 0x77, 0x26, 0x24, 0x65, 0x77, 0xd4, 0x25, 0x79, 0x42, 0xbd, 0xef, 0xe9, 0x94, 0xc1, 0x57, 0x5e, 0xd1, 0x5a, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9538 = { .name = "ecdsa_secp384r1_sha512_9538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9538_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9538_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9538_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9539 for ECDSA, tcId is 60 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9539_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9539_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9539_sig[] = { 0xc8, 0xd4, 0x4c, 0x8b, 0x70, 0xab, 0xed, 0x9e, 0x6a, 0xe6, 0xbb, 0xb9, 0xf4, 0xb7, 0x2e, 0xd6, 0xe8, 0xb5, 0x0a, 0x52, 0xa8, 0xe6, 0xe1, 0xbd, 0x34, 0x47, 0xc0, 0x82, 0x8d, 0xad, 0x26, 0xfc, 0x6f, 0x39, 0x5b, 0xa0, 0x90, 0x69, 0xb3, 0x07, 0xf0, 0x40, 0xd1, 0xe8, 0x6a, 0x42, 0xc0, 0x22, 0x01, 0xe0, 0xaf, 0x50, 0x05, 0x05, 0xbb, 0x88, 0xb3, 0xa2, 0xb0, 0xf1, 0x32, 0xac, 0xb4, 0xda, 0x64, 0xad, 0xdd, 0xc0, 0x59, 0x83, 0x18, 0xcb, 0x76, 0x12, 0xb5, 0x81, 0x2d, 0x29, 0xc2, 0xd0, 0xdd, 0xe1, 0x41, 0x3d, 0x0c, 0xe4, 0x00, 0x44, 0xb4, 0x45, 0x90, 0xe9, 0x1b, 0x97, 0xba, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9539 = { .name = "ecdsa_secp384r1_sha512_9539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9539_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9539_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9539_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9540 for ECDSA, tcId is 61 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9540_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9540_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9540_sig[] = { 0xd3, 0x51, 0x3b, 0xd0, 0x64, 0x96, 0xd8, 0x57, 0x6e, 0x01, 0xe8, 0xc4, 0xb2, 0x84, 0x58, 0x7a, 0xca, 0xfd, 0x23, 0x9a, 0xcf, 0xd7, 0x39, 0xa1, 0x9a, 0x58, 0x99, 0xf0, 0xa0, 0x0d, 0x26, 0x9f, 0x99, 0x06, 0x59, 0xa6, 0x71, 0xb2, 0xe0, 0xe2, 0x5f, 0x93, 0x5b, 0x3a, 0x28, 0xa1, 0xf5, 0xfd, 0x36, 0x6b, 0x35, 0x31, 0x5c, 0xe1, 0x14, 0xbf, 0xfb, 0xb7, 0x5a, 0x96, 0x95, 0x43, 0x64, 0x6e, 0xe2, 0x53, 0xf0, 0x46, 0xa8, 0x63, 0x0f, 0xbb, 0xb1, 0x21, 0xec, 0xc5, 0xd6, 0x2d, 0xf4, 0xa7, 0xeb, 0x09, 0xd2, 0x87, 0x88, 0x05, 0xd5, 0xda, 0xb9, 0xc9, 0xb3, 0x88, 0x0b, 0x74, 0x7b, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9540 = { .name = "ecdsa_secp384r1_sha512_9540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9540_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9540_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9540_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9541 for ECDSA, tcId is 62 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9541_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9541_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9541_sig[] = { 0xb0, 0x8c, 0x40, 0x18, 0x55, 0x6c, 0xa8, 0x83, 0x3b, 0x52, 0x45, 0x04, 0xe3, 0x0c, 0x58, 0x34, 0x6e, 0x1c, 0x03, 0x45, 0xb6, 0x78, 0xfd, 0xf9, 0x18, 0x91, 0xc4, 0x64, 0xa3, 0x31, 0x80, 0xed, 0x85, 0xa9, 0x9b, 0xc8, 0x91, 0x1a, 0xcf, 0x4f, 0x22, 0xac, 0xeb, 0x40, 0x44, 0x0a, 0xfc, 0x94, 0x4a, 0x59, 0x5f, 0x7e, 0xed, 0x2d, 0xb9, 0xf6, 0xbd, 0x3e, 0x90, 0x35, 0x5d, 0x5c, 0x0e, 0x96, 0x48, 0x6d, 0xc6, 0x42, 0x42, 0x31, 0x9e, 0x41, 0xfc, 0x07, 0xbe, 0x00, 0xa7, 0x32, 0x35, 0x4b, 0x62, 0xec, 0x9c, 0x34, 0x31, 0x97, 0x20, 0xb9, 0xff, 0xb2, 0x4c, 0x99, 0x4b, 0x1c, 0xf8, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9541 = { .name = "ecdsa_secp384r1_sha512_9541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9541_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9541_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9541_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9542 for ECDSA, tcId is 63 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9542_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9542_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9542_sig[] = { 0x2b, 0x08, 0xf7, 0x84, 0x61, 0x7f, 0xd0, 0x70, 0x7a, 0x83, 0xd3, 0xc2, 0x61, 0x5e, 0xfa, 0x0c, 0x45, 0xf2, 0x8d, 0x7d, 0x92, 0x8f, 0xc4, 0x5c, 0xd8, 0xa8, 0x86, 0xe1, 0x16, 0xb4, 0x5f, 0x46, 0x86, 0xae, 0xe9, 0x74, 0x74, 0xd0, 0x91, 0x01, 0x2e, 0x27, 0x05, 0x7b, 0x6b, 0xa8, 0xf7, 0xe6, 0xc4, 0x40, 0xaa, 0x6e, 0xcb, 0x63, 0xe0, 0xd4, 0x3c, 0x63, 0x9b, 0x37, 0xe5, 0x81, 0x0a, 0x96, 0xde, 0xf7, 0xee, 0xc8, 0xe9, 0x0a, 0x4c, 0x55, 0xe5, 0xb5, 0x79, 0x71, 0xc4, 0x8d, 0xfb, 0x4e, 0x85, 0x02, 0x32, 0xfb, 0xb3, 0x7b, 0xd3, 0x2b, 0xb3, 0xb0, 0x52, 0x3b, 0x81, 0x5f, 0xf9, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9542 = { .name = "ecdsa_secp384r1_sha512_9542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9542_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9542_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9542_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9543 for ECDSA, tcId is 64 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9543_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9543_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9543_sig[] = { 0x06, 0x09, 0xf4, 0xec, 0x12, 0x0c, 0x88, 0x38, 0xbd, 0xa9, 0x16, 0xf6, 0x68, 0xe9, 0x60, 0x0a, 0xf7, 0x65, 0x2e, 0x1d, 0x3f, 0x71, 0x82, 0x73, 0x4f, 0x97, 0xf5, 0x4d, 0xa5, 0xd1, 0x06, 0xbb, 0xfd, 0x21, 0x6c, 0x32, 0xf2, 0x27, 0xb7, 0x6d, 0x58, 0x3d, 0xe1, 0xc5, 0x39, 0x49, 0xb2, 0xee, 0x46, 0x92, 0x6d, 0xff, 0xc7, 0x66, 0xff, 0x90, 0xc3, 0xb9, 0x21, 0xb3, 0xe5, 0x1a, 0x29, 0x82, 0xa1, 0x07, 0x23, 0x14, 0xc1, 0xfd, 0xfb, 0x41, 0x75, 0xde, 0x7a, 0xde, 0xa5, 0xa6, 0xf9, 0x7b, 0xdf, 0xf5, 0x87, 0xa4, 0x73, 0x50, 0x4a, 0x9c, 0x40, 0x2a, 0xac, 0x7c, 0x05, 0xbd, 0x47, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9543 = { .name = "ecdsa_secp384r1_sha512_9543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9543_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9543_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9543_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9544 for ECDSA, tcId is 65 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9544_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9544_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9544_sig[] = { 0x5a, 0xe2, 0x22, 0x0e, 0x47, 0x16, 0xe1, 0xef, 0x03, 0x82, 0xaf, 0xcc, 0x39, 0xdb, 0x33, 0x9e, 0x5b, 0xd5, 0xf0, 0x5e, 0x8a, 0x18, 0x8d, 0x4a, 0x5d, 0xaa, 0xab, 0x71, 0xc6, 0xc3, 0x52, 0x63, 0xee, 0x88, 0x20, 0xa3, 0x45, 0x58, 0x09, 0x28, 0x77, 0x44, 0x9e, 0xbb, 0x15, 0x89, 0x8c, 0x5c, 0xc4, 0xd3, 0x8e, 0x2e, 0x85, 0x45, 0x1c, 0x43, 0xee, 0x35, 0xb0, 0xc5, 0x61, 0x96, 0xcb, 0xf3, 0x05, 0x9a, 0xcf, 0x2b, 0x8b, 0x52, 0x9f, 0x06, 0xdc, 0x1d, 0xe9, 0xb2, 0x81, 0xd9, 0xb0, 0xf3, 0xf3, 0x98, 0x3d, 0xf8, 0x93, 0x6e, 0x94, 0x4a, 0xb0, 0xb1, 0x83, 0x30, 0xa3, 0x42, 0xee, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9544 = { .name = "ecdsa_secp384r1_sha512_9544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9544_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9544_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9544_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9545 for ECDSA, tcId is 66 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9545_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9545_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9545_sig[] = { 0x51, 0xfb, 0x84, 0xed, 0x71, 0xd4, 0x36, 0xc7, 0x37, 0xab, 0x24, 0xe2, 0xa4, 0x5c, 0x68, 0xf8, 0xf6, 0x23, 0x74, 0x8b, 0xe2, 0xca, 0xeb, 0xd8, 0x9e, 0x02, 0xbf, 0xc8, 0x93, 0x09, 0xb8, 0x35, 0x00, 0x42, 0xab, 0x1b, 0x97, 0x84, 0x9b, 0x9f, 0x68, 0x0f, 0x04, 0x4a, 0x58, 0x76, 0x51, 0x75, 0xd4, 0xa8, 0xf6, 0x07, 0x91, 0x65, 0x7a, 0x8c, 0x12, 0x98, 0x5f, 0xd8, 0x96, 0xac, 0x77, 0xe7, 0xd9, 0x5c, 0xb0, 0x50, 0x58, 0x2f, 0x24, 0x66, 0x47, 0x1d, 0xc2, 0xc6, 0xdc, 0xf9, 0x0d, 0xb0, 0x5c, 0xe3, 0x4b, 0xea, 0xdb, 0xfc, 0xfe, 0x69, 0x0d, 0xc5, 0x6c, 0x0c, 0xc9, 0x94, 0x40, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9545 = { .name = "ecdsa_secp384r1_sha512_9545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9545_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9545_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9545_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9546 for ECDSA, tcId is 67 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9546_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9546_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9546_sig[] = { 0x40, 0x15, 0x92, 0x90, 0xd1, 0x61, 0xdf, 0x6b, 0x3f, 0x81, 0xa9, 0x2c, 0xef, 0xb6, 0xdf, 0x56, 0x14, 0x9d, 0x58, 0x8e, 0x7b, 0x88, 0x6b, 0xf2, 0x49, 0x39, 0xf5, 0xc8, 0xb6, 0xbb, 0x51, 0x5d, 0x32, 0x5b, 0x37, 0x64, 0xf0, 0xed, 0x28, 0x4a, 0x77, 0xfa, 0x90, 0x81, 0xcc, 0xfa, 0x52, 0x37, 0xbd, 0x55, 0xdf, 0xb4, 0x77, 0x09, 0x28, 0x7c, 0xe7, 0xb8, 0x8d, 0xfd, 0x96, 0xac, 0x75, 0x43, 0xee, 0xba, 0x9b, 0xd3, 0x1b, 0x8c, 0x91, 0xf2, 0x03, 0xd2, 0xb9, 0x04, 0x18, 0x12, 0x24, 0x06, 0x39, 0x9c, 0x80, 0xa5, 0x35, 0x39, 0xb8, 0x1f, 0x1c, 0xb6, 0x0f, 0xa3, 0xb2, 0x3a, 0x25, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9546 = { .name = "ecdsa_secp384r1_sha512_9546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9546_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9546_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9546_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9547 for ECDSA, tcId is 68 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9547_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9547_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9547_sig[] = { 0xd7, 0xfb, 0x9f, 0x53, 0x86, 0x5c, 0xdf, 0x9d, 0x4c, 0xad, 0x6f, 0x66, 0x98, 0x1a, 0xea, 0x35, 0xa1, 0x45, 0x48, 0x58, 0xce, 0xb6, 0x78, 0xd7, 0xb8, 0x51, 0xc1, 0x2a, 0x4c, 0x66, 0x44, 0xfe, 0x19, 0x15, 0xa4, 0xb2, 0x19, 0xb5, 0x13, 0x89, 0xa5, 0xae, 0x2c, 0x98, 0xa4, 0x33, 0xcc, 0x3a, 0x94, 0xad, 0x75, 0xc3, 0xde, 0xa8, 0x87, 0x40, 0x20, 0x5c, 0xab, 0x41, 0x03, 0x2d, 0xfe, 0x14, 0x93, 0x41, 0xcf, 0x4e, 0xe9, 0x4d, 0xcd, 0x2f, 0x0c, 0x8b, 0xbe, 0x5a, 0xf5, 0x86, 0x0b, 0x30, 0xb5, 0xe1, 0xf7, 0x64, 0xb2, 0xc7, 0x67, 0xb0, 0x9f, 0xd1, 0x07, 0x61, 0x05, 0x0c, 0x98, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9547 = { .name = "ecdsa_secp384r1_sha512_9547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9547_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9547_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9547_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9548 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9548_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9548_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9548_sig[] = { 0x15, 0x7e, 0xf8, 0xf8, 0x5c, 0xdb, 0x92, 0x57, 0x98, 0x3d, 0x06, 0xa7, 0xf2, 0x96, 0x74, 0x75, 0x26, 0x59, 0x09, 0x73, 0x64, 0xb4, 0x01, 0xe7, 0x01, 0x70, 0x5b, 0x3b, 0xd9, 0xea, 0xd8, 0x84, 0xfd, 0x32, 0x14, 0x13, 0x20, 0xae, 0x76, 0xae, 0x05, 0xf6, 0xfc, 0x7e, 0xc1, 0x55, 0xd6, 0xc2, 0xcc, 0xad, 0xc3, 0x85, 0x10, 0x20, 0xe4, 0x1d, 0xd9, 0x1b, 0xc2, 0x8a, 0x6c, 0x07, 0x34, 0x09, 0x13, 0x6a, 0x47, 0xf2, 0x0b, 0x8d, 0xbf, 0x25, 0x53, 0xfd, 0x45, 0x6a, 0x8e, 0xd5, 0xfa, 0x7e, 0x73, 0xe4, 0xec, 0x59, 0xdc, 0xa4, 0x99, 0xe0, 0xd0, 0x82, 0xef, 0xbb, 0x9a, 0xd3, 0x4d, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9548 = { .name = "ecdsa_secp384r1_sha512_9548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9548_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9548_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9548_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9549 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9549_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9549_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9549_sig[] = { 0xe7, 0x63, 0x00, 0x17, 0x69, 0xc7, 0x6f, 0x6a, 0x6d, 0x06, 0xfa, 0xd3, 0x7b, 0x58, 0x4d, 0x7f, 0x25, 0x83, 0x25, 0x01, 0x49, 0x1b, 0xec, 0x28, 0x3b, 0x3b, 0x68, 0x36, 0xf9, 0x47, 0xdc, 0x4e, 0x2c, 0xef, 0x02, 0x1c, 0x6c, 0x6e, 0x52, 0x5b, 0x0a, 0x6a, 0x38, 0x90, 0xd1, 0xda, 0x12, 0x2a, 0xac, 0xbd, 0x88, 0x72, 0x9c, 0xce, 0x39, 0x92, 0xd1, 0x4e, 0xc9, 0x9e, 0x69, 0xff, 0x07, 0x12, 0xb8, 0x2a, 0x33, 0xa1, 0xc1, 0xe8, 0xb9, 0x0e, 0x13, 0x99, 0xc6, 0x6f, 0xe1, 0x96, 0xf7, 0xc9, 0x9b, 0xdb, 0x3f, 0xf8, 0x1d, 0xb7, 0x7d, 0xc2, 0x5a, 0xe6, 0xf0, 0xc1, 0xa0, 0x25, 0x11, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9549 = { .name = "ecdsa_secp384r1_sha512_9549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9549_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9549_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9549_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9550 for ECDSA, tcId is 71 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9550_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9550_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9550_sig[] = { 0xc6, 0x42, 0x5b, 0x6b, 0x04, 0x6e, 0xc9, 0x1e, 0xbc, 0x32, 0xb9, 0xe6, 0xde, 0x75, 0x0e, 0x5d, 0x3d, 0x36, 0xd4, 0xdd, 0xc6, 0xdf, 0xfd, 0x25, 0xba, 0x47, 0x81, 0x73, 0x85, 0xa9, 0x46, 0x6f, 0x6f, 0xc5, 0x22, 0x59, 0xc7, 0xd0, 0x2c, 0x66, 0xaf, 0x5b, 0xf1, 0x20, 0x45, 0xb5, 0x65, 0x9d, 0x84, 0xcd, 0xc0, 0x6e, 0x35, 0xfe, 0xcc, 0x85, 0xa3, 0xe0, 0x0b, 0x16, 0x48, 0x8e, 0xac, 0x35, 0x84, 0x94, 0x2f, 0x66, 0x3d, 0x8b, 0x59, 0xdf, 0x11, 0x1c, 0x06, 0x50, 0x13, 0x9d, 0x7c, 0xda, 0x20, 0xd6, 0x8d, 0xcc, 0xae, 0x56, 0x9d, 0x43, 0x31, 0x70, 0xd8, 0x32, 0x14, 0x7b, 0xc9, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9550 = { .name = "ecdsa_secp384r1_sha512_9550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9550_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9550_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9550_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9551 for ECDSA, tcId is 72 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9551_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9551_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9551_sig[] = { 0x30, 0x61, 0xf0, 0x90, 0xe4, 0x93, 0x21, 0x33, 0xa0, 0xe0, 0x8a, 0xc9, 0x84, 0xd1, 0xc8, 0xd8, 0xd4, 0xf5, 0x65, 0xe2, 0x1c, 0xf1, 0x54, 0x27, 0x67, 0x15, 0x03, 0x88, 0x03, 0x41, 0x26, 0x5c, 0xd4, 0x4f, 0x35, 0xa4, 0x37, 0xee, 0x3c, 0x3a, 0x88, 0x57, 0x57, 0x9d, 0xd7, 0xaf, 0x0c, 0x35, 0x93, 0xae, 0x37, 0x4a, 0x0f, 0x63, 0xdc, 0xbe, 0x41, 0xa1, 0xb7, 0xb0, 0x7a, 0x50, 0xfa, 0xf2, 0xb3, 0x3f, 0x35, 0xe0, 0xb6, 0x60, 0x0b, 0xb3, 0x6a, 0xa5, 0xcd, 0xa0, 0x52, 0x38, 0x64, 0x0f, 0xa3, 0x5c, 0x63, 0x5c, 0x0f, 0xa7, 0x8e, 0x14, 0x10, 0xf3, 0xa8, 0x79, 0xbb, 0xb8, 0xa5, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9551 = { .name = "ecdsa_secp384r1_sha512_9551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9551_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9551_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9551_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9552 for ECDSA, tcId is 73 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9552_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9552_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9552_sig[] = { 0x0c, 0xcc, 0x62, 0x7f, 0x35, 0x45, 0x4c, 0xc8, 0x4e, 0x08, 0xa8, 0x28, 0xf5, 0xbd, 0x5f, 0x5e, 0x41, 0xee, 0xea, 0xa4, 0x04, 0x75, 0xbc, 0xc2, 0xe7, 0x1f, 0xf3, 0x72, 0xe8, 0xc7, 0x18, 0xa5, 0xe1, 0x79, 0xd3, 0xb7, 0xf2, 0xd7, 0x05, 0x1d, 0xb9, 0x06, 0x0c, 0x4c, 0x97, 0x8e, 0xb6, 0x38, 0xb1, 0x2d, 0x02, 0x40, 0xaf, 0xbd, 0xfc, 0x64, 0xc6, 0x08, 0x61, 0x54, 0x8c, 0x33, 0x66, 0x3b, 0x89, 0x60, 0x31, 0x6a, 0x55, 0xf8, 0x60, 0xcc, 0x33, 0xd1, 0x90, 0x8e, 0x89, 0xaa, 0x6f, 0xc9, 0x51, 0x9f, 0x23, 0xa9, 0x00, 0xe0, 0x48, 0x8f, 0xa6, 0xa3, 0x7c, 0xfb, 0x37, 0x85, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9552 = { .name = "ecdsa_secp384r1_sha512_9552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9552_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9552_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9552_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9553 for ECDSA, tcId is 74 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9553_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9553_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9553_sig[] = { 0xe7, 0x24, 0x19, 0xfb, 0x67, 0xeb, 0xbc, 0xc0, 0xde, 0x9c, 0x46, 0xce, 0x54, 0x75, 0xc6, 0x08, 0xf9, 0xde, 0x7e, 0x83, 0xfc, 0x5e, 0x58, 0x29, 0x20, 0xb8, 0xe9, 0x84, 0x80, 0x00, 0xd8, 0x20, 0xd3, 0x93, 0xfd, 0xac, 0x6c, 0x96, 0xea, 0x35, 0xce, 0x94, 0x1c, 0xb1, 0x49, 0x51, 0x64, 0x00, 0x6a, 0xa1, 0x99, 0x34, 0xef, 0x60, 0xf4, 0xa2, 0x47, 0xbc, 0x26, 0x1b, 0xa2, 0x56, 0x28, 0x3a, 0x94, 0x85, 0x7a, 0x26, 0x8f, 0x42, 0xa0, 0x93, 0x9c, 0x95, 0xa5, 0x36, 0xfb, 0xd4, 0xf8, 0xe1, 0xf1, 0xc2, 0x85, 0xa7, 0xb1, 0x64, 0xc1, 0x22, 0x13, 0xab, 0xb9, 0xe3, 0x39, 0x3c, 0xbe, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9553 = { .name = "ecdsa_secp384r1_sha512_9553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9553_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9553_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9553_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9554 for ECDSA, tcId is 75 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9554_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9554_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9554_sig[] = { 0x8b, 0x74, 0x09, 0x31, 0xf9, 0xaf, 0xa8, 0xa0, 0x4c, 0x08, 0xcd, 0xe8, 0x96, 0xb7, 0xfd, 0xd9, 0xac, 0xa3, 0x17, 0x7d, 0x5e, 0x4a, 0x3e, 0x5a, 0x51, 0xe5, 0x4b, 0xfa, 0x82, 0x4b, 0x66, 0xab, 0x11, 0xdf, 0x4e, 0x90, 0xf4, 0x97, 0x98, 0xd6, 0x44, 0xba, 0xbf, 0xed, 0xe7, 0x83, 0x02, 0x24, 0xaf, 0xd9, 0x1e, 0x7c, 0xe1, 0x50, 0x59, 0xa5, 0xb5, 0x49, 0x9e, 0x5a, 0xef, 0x4a, 0xfa, 0x91, 0xfd, 0x09, 0x0e, 0x4e, 0x50, 0x29, 0xb3, 0xf4, 0x34, 0x8f, 0x0d, 0x43, 0x49, 0xdf, 0x11, 0x74, 0x58, 0x69, 0xf9, 0x25, 0x51, 0x17, 0xee, 0xa4, 0x05, 0xa7, 0x8a, 0xf5, 0xdd, 0x6a, 0x64, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9554 = { .name = "ecdsa_secp384r1_sha512_9554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9554_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9554_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9554_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9555 for ECDSA, tcId is 76 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9555_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9555_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9555_sig[] = { 0x98, 0x90, 0x24, 0xbc, 0xe2, 0x04, 0xa7, 0x53, 0x9f, 0xbd, 0x2b, 0x18, 0x5e, 0xcf, 0x37, 0x55, 0x90, 0xd8, 0x73, 0x17, 0x7c, 0x1f, 0xf2, 0x6b, 0xbf, 0x75, 0x58, 0x38, 0xae, 0x5b, 0xcd, 0xe1, 0x80, 0x05, 0x46, 0x63, 0x70, 0x2a, 0xc3, 0xa4, 0xe6, 0x8f, 0xe8, 0xb5, 0x8f, 0xd8, 0x8c, 0x70, 0xbd, 0xbe, 0xdf, 0x64, 0xe4, 0x24, 0xdb, 0xd7, 0xf9, 0x79, 0xf8, 0x3a, 0xde, 0xf3, 0xfc, 0x85, 0x07, 0x7f, 0xa7, 0x6f, 0x8b, 0x17, 0x24, 0x81, 0x5b, 0x5b, 0x8c, 0x24, 0xfd, 0xe7, 0xfb, 0xd7, 0x2f, 0x4b, 0x36, 0x9a, 0x41, 0x5d, 0x9b, 0xbf, 0x56, 0x5c, 0xdc, 0x45, 0x9b, 0xdc, 0xe5, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9555 = { .name = "ecdsa_secp384r1_sha512_9555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9555_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9555_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9555_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9556 for ECDSA, tcId is 77 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9556_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9556_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9556_sig[] = { 0x22, 0x62, 0x4f, 0xc2, 0x34, 0x03, 0x95, 0x5c, 0x0c, 0x9f, 0x5b, 0x89, 0x87, 0x11, 0x77, 0xfa, 0x53, 0x87, 0x9c, 0x84, 0x24, 0xde, 0x3b, 0x4a, 0xb1, 0xbc, 0xbc, 0xdd, 0xc6, 0xe5, 0x7b, 0x87, 0x0b, 0x04, 0x91, 0xb8, 0x48, 0xe1, 0x9f, 0x72, 0x87, 0x22, 0xb3, 0x16, 0x3f, 0x4a, 0xa3, 0x28, 0x5b, 0xb8, 0x26, 0x42, 0xcd, 0xaa, 0x84, 0xd6, 0x97, 0x7f, 0xb9, 0x5b, 0x3e, 0xde, 0x4e, 0xc7, 0xf2, 0xd5, 0x48, 0x81, 0xcf, 0x43, 0x56, 0x36, 0xd3, 0x50, 0x98, 0x16, 0xf1, 0x3e, 0xbb, 0x7b, 0xe2, 0x4f, 0xd7, 0xd4, 0xe1, 0xe8, 0x1f, 0xdd, 0xf0, 0x7b, 0xde, 0x68, 0x5e, 0x8d, 0x63, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9556 = { .name = "ecdsa_secp384r1_sha512_9556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9556_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9556_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9556_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9557 for ECDSA, tcId is 78 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9557_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9557_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9557_sig[] = { 0xda, 0x5a, 0x2d, 0xaa, 0x74, 0x37, 0xdf, 0x45, 0x66, 0xeb, 0xba, 0x6a, 0xc5, 0xed, 0x42, 0x46, 0x55, 0x63, 0x3e, 0x35, 0x4e, 0xf4, 0xd9, 0x43, 0xdc, 0x95, 0xdd, 0xef, 0xb0, 0xda, 0xe6, 0x9f, 0x36, 0x16, 0xe5, 0x06, 0xcc, 0x8c, 0xb5, 0xbc, 0x43, 0x3a, 0x82, 0xba, 0x71, 0xf6, 0xfe, 0xb4, 0x51, 0x07, 0xb2, 0x40, 0x41, 0xbb, 0xa4, 0x50, 0x73, 0xce, 0x54, 0x48, 0x8a, 0x5a, 0xef, 0x86, 0x1e, 0x78, 0x05, 0xbb, 0xb8, 0xf9, 0x70, 0xae, 0xdc, 0x1c, 0x59, 0x14, 0x9c, 0xfe, 0x72, 0xc7, 0x02, 0x5e, 0x2d, 0x11, 0x73, 0x37, 0xe8, 0x67, 0x7c, 0x88, 0xef, 0x43, 0x37, 0x4e, 0x69, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9557 = { .name = "ecdsa_secp384r1_sha512_9557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9557_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9557_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9557_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9558 for ECDSA, tcId is 79 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9558_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9558_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9558_sig[] = { 0x2b, 0x06, 0x59, 0xfb, 0x7f, 0xa5, 0xfc, 0x1f, 0xce, 0x76, 0x74, 0x18, 0xc2, 0x09, 0x78, 0xde, 0x9a, 0x6a, 0x59, 0x94, 0x1f, 0xc5, 0x4f, 0x83, 0x80, 0x61, 0x9b, 0x2a, 0xb2, 0xa7, 0xd6, 0x03, 0x9d, 0xe5, 0x37, 0x3f, 0xbb, 0x50, 0x3c, 0x24, 0xf2, 0xce, 0x38, 0xe9, 0xc5, 0x79, 0x95, 0xde, 0x0d, 0x94, 0xdb, 0xa9, 0x8d, 0xd8, 0x74, 0xbf, 0xff, 0xea, 0xc9, 0x6a, 0x92, 0x95, 0xb6, 0xab, 0x66, 0x77, 0x08, 0xb8, 0xe3, 0x32, 0x52, 0xed, 0xc0, 0x29, 0x57, 0x4c, 0x48, 0x4a, 0x13, 0x21, 0x35, 0xb1, 0x3e, 0x52, 0xdb, 0x6f, 0x87, 0x79, 0x87, 0xc1, 0xbe, 0x4f, 0x51, 0xfc, 0xa1, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9558 = { .name = "ecdsa_secp384r1_sha512_9558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9558_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9558_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9558_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9559 for ECDSA, tcId is 80 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9559_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9559_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9559_sig[] = { 0x4a, 0x5a, 0x14, 0xf1, 0xec, 0xf0, 0x53, 0xbf, 0x3e, 0xc1, 0x48, 0x43, 0xdb, 0x8c, 0x7d, 0xd1, 0x53, 0xe9, 0x54, 0x5d, 0x20, 0xd7, 0x63, 0x45, 0xa9, 0xe1, 0xd1, 0xa8, 0xfc, 0xb4, 0x95, 0x58, 0xca, 0x1e, 0xe5, 0xa9, 0x40, 0x23, 0x11, 0xc2, 0xea, 0xa1, 0x02, 0xe6, 0x46, 0xe5, 0x7c, 0x2c, 0x15, 0x73, 0xb8, 0xb4, 0xb6, 0x33, 0x49, 0x6d, 0xa3, 0x20, 0xe9, 0x9a, 0x85, 0xc6, 0xf5, 0x7b, 0x7e, 0xe5, 0x43, 0x54, 0x81, 0x80, 0xa7, 0x7f, 0x7f, 0xce, 0xd2, 0xd0, 0x66, 0x59, 0x11, 0xcb, 0x4c, 0xde, 0x9d, 0xe2, 0x1b, 0xc1, 0xa9, 0x81, 0xb9, 0x77, 0x42, 0xc9, 0x04, 0x0a, 0x63, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9559 = { .name = "ecdsa_secp384r1_sha512_9559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9559_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9559_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9559_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9560 for ECDSA, tcId is 81 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9560_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9560_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9560_sig[] = { 0x10, 0x4e, 0x66, 0xe6, 0xe2, 0x6c, 0x36, 0x63, 0x3c, 0x0a, 0xf0, 0x01, 0xf0, 0xd9, 0xa2, 0x16, 0x23, 0x68, 0x16, 0x92, 0x3e, 0xc9, 0x3b, 0x70, 0xbe, 0xa0, 0xa8, 0xff, 0x05, 0x3a, 0x15, 0xaa, 0xae, 0xf5, 0xfe, 0x34, 0x83, 0xe5, 0xcc, 0x73, 0x56, 0x4e, 0x60, 0xfe, 0x83, 0x64, 0xce, 0x0e, 0xec, 0x2d, 0xf9, 0x10, 0x0e, 0x34, 0x87, 0x5a, 0x5d, 0xc4, 0x36, 0xda, 0x82, 0x49, 0x16, 0x48, 0x7b, 0x38, 0xe7, 0xae, 0xb0, 0x29, 0x44, 0x86, 0x0e, 0x25, 0x7f, 0xd9, 0x82, 0xb0, 0x17, 0x82, 0xb3, 0xbd, 0x6b, 0x13, 0xb3, 0x76, 0xe8, 0xa6, 0xdb, 0xd7, 0x83, 0xdf, 0xa0, 0xd7, 0x71, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9560 = { .name = "ecdsa_secp384r1_sha512_9560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9560_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9560_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9560_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9561 for ECDSA, tcId is 82 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9561_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9561_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9561_sig[] = { 0x4b, 0x06, 0x79, 0x5d, 0xa8, 0x2b, 0xda, 0x35, 0x4e, 0x8d, 0x94, 0x22, 0xa7, 0x6c, 0x7b, 0xc0, 0x64, 0x02, 0x7f, 0xcd, 0xd6, 0x8f, 0x95, 0xb7, 0xbc, 0x61, 0x77, 0xa8, 0x5b, 0x2d, 0x82, 0x2c, 0x84, 0xdc, 0x31, 0xcb, 0x91, 0xfc, 0x01, 0x6a, 0xfa, 0x48, 0x81, 0x6a, 0x3a, 0x01, 0x92, 0x67, 0x18, 0xe3, 0x10, 0x18, 0xe3, 0x12, 0xd3, 0xdd, 0x3d, 0xd4, 0x9e, 0xc3, 0x55, 0xfd, 0xb0, 0xde, 0xf3, 0xbb, 0x3e, 0x44, 0x39, 0x3c, 0x26, 0xcf, 0x1b, 0xc1, 0x10, 0xb2, 0x3a, 0x3a, 0xac, 0xf6, 0xc4, 0x42, 0xbf, 0xce, 0xc5, 0x53, 0x5c, 0xe3, 0x75, 0x27, 0xd0, 0xe0, 0x68, 0xf7, 0x5c, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9561 = { .name = "ecdsa_secp384r1_sha512_9561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9561_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9561_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9561_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9562 for ECDSA, tcId is 83 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9562_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9562_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9562_sig[] = { 0xad, 0x75, 0xca, 0x5a, 0x3d, 0xf3, 0x4e, 0x5a, 0x6d, 0x3e, 0xa4, 0xc9, 0xdf, 0x53, 0x4e, 0x89, 0x10, 0xcf, 0xb1, 0xd8, 0xc6, 0x05, 0xfc, 0x39, 0x8f, 0xbe, 0xe4, 0xc0, 0x5f, 0x2b, 0x71, 0x5b, 0xd2, 0x14, 0x62, 0x21, 0x92, 0x0d, 0xe8, 0xba, 0xc8, 0x6c, 0x2b, 0x21, 0x02, 0x21, 0xbc, 0xff, 0xa3, 0x22, 0xd3, 0xdf, 0x3b, 0xb2, 0xcf, 0x9e, 0x42, 0x15, 0xad, 0xf1, 0xff, 0x45, 0x9e, 0x70, 0xf2, 0xf8, 0x6b, 0xec, 0x6d, 0xd6, 0xaf, 0x5d, 0x04, 0xae, 0x30, 0x7d, 0x21, 0xed, 0x59, 0x55, 0x13, 0x6c, 0x8e, 0x25, 0x8f, 0xdc, 0x0f, 0x9c, 0xbd, 0x6c, 0xf8, 0x9c, 0x31, 0xaa, 0x69, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9562 = { .name = "ecdsa_secp384r1_sha512_9562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9562_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9562_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9562_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9563 for ECDSA, tcId is 84 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9563_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9563_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9563_sig[] = { 0xb0, 0xfa, 0x62, 0x89, 0xcc, 0x61, 0xba, 0xb3, 0x35, 0x93, 0x2e, 0xa1, 0xac, 0x65, 0x40, 0x46, 0x26, 0x53, 0xcc, 0x74, 0x7e, 0xf6, 0x78, 0x27, 0x82, 0x5f, 0x77, 0x68, 0x9a, 0x43, 0x98, 0x60, 0x22, 0x97, 0x83, 0x5d, 0x08, 0xaa, 0x16, 0xe2, 0x3a, 0x76, 0xde, 0xa9, 0xf7, 0x54, 0x04, 0xef, 0x27, 0x8d, 0x65, 0x4a, 0x0b, 0x50, 0xc5, 0x7d, 0x13, 0xf9, 0xc9, 0xc8, 0xc7, 0xc6, 0x94, 0x00, 0x11, 0x67, 0xf8, 0xe3, 0xb7, 0x14, 0x91, 0x77, 0x2a, 0x74, 0x27, 0xf1, 0x41, 0x0f, 0xb6, 0xde, 0x51, 0x87, 0x40, 0xc2, 0x2e, 0x45, 0x5e, 0x58, 0xde, 0x48, 0x84, 0x64, 0x79, 0xb3, 0x00, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9563 = { .name = "ecdsa_secp384r1_sha512_9563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9563_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9563_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9563_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9564 for ECDSA, tcId is 85 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9564_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9564_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9564_sig[] = { 0xc2, 0x16, 0xcb, 0x4f, 0xe9, 0x7f, 0xac, 0xb7, 0xcd, 0x66, 0xf0, 0x2c, 0xd7, 0x51, 0x15, 0x5b, 0x94, 0xfa, 0x2f, 0x35, 0xf8, 0xa6, 0x2b, 0xa5, 0x65, 0xac, 0xa5, 0x75, 0x72, 0x8a, 0xf5, 0x33, 0x54, 0x0f, 0xf5, 0xd7, 0x69, 0xb7, 0xc1, 0x5c, 0x13, 0x45, 0xab, 0x64, 0x14, 0xe1, 0x50, 0x68, 0x27, 0x8a, 0x8a, 0x37, 0x2b, 0x75, 0xd6, 0xeb, 0x17, 0xa4, 0xf7, 0xc7, 0xf6, 0x2d, 0x55, 0x55, 0xc7, 0x35, 0x7a, 0x1a, 0x04, 0x70, 0x26, 0xbe, 0xad, 0x52, 0x18, 0x5c, 0xbc, 0xc0, 0x1d, 0x73, 0xb8, 0x0a, 0x15, 0x77, 0xe8, 0x62, 0x20, 0xb2, 0x27, 0x8d, 0xa2, 0xb1, 0xee, 0x8c, 0x98, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9564 = { .name = "ecdsa_secp384r1_sha512_9564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9564_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9564_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9564_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9565 for ECDSA, tcId is 86 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9565_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9565_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9565_sig[] = { 0x95, 0x91, 0xc8, 0x04, 0x53, 0xcf, 0xfb, 0xcd, 0x0b, 0x8d, 0x6d, 0x20, 0xfc, 0xe0, 0xcb, 0xb2, 0xa4, 0x58, 0xe5, 0x4a, 0xed, 0x7b, 0xa1, 0xc7, 0x67, 0xe6, 0xc0, 0x17, 0xaf, 0x4c, 0x4a, 0xa0, 0x7a, 0x76, 0x85, 0x9c, 0x0b, 0x24, 0x9f, 0x66, 0x92, 0xa3, 0xc9, 0xac, 0xe8, 0x93, 0xf1, 0x4e, 0x89, 0x3b, 0x56, 0x7c, 0xd2, 0x95, 0x9c, 0xd6, 0x05, 0x57, 0xd3, 0xd6, 0x01, 0x3d, 0x6e, 0x17, 0x41, 0x42, 0x1a, 0x6e, 0xdc, 0x5b, 0xc1, 0x82, 0x44, 0xb3, 0xe8, 0xd7, 0x74, 0x4e, 0x57, 0x92, 0x8c, 0xe0, 0x06, 0xa3, 0xfb, 0xd6, 0xe6, 0x32, 0x4c, 0xb8, 0xea, 0x3e, 0x51, 0x77, 0xe7, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9565 = { .name = "ecdsa_secp384r1_sha512_9565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9565_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9565_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9565_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9566 for ECDSA, tcId is 87 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9566_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9566_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9566_sig[] = { 0x35, 0x0b, 0x55, 0x15, 0xba, 0x97, 0x85, 0xf1, 0x49, 0xe2, 0xa5, 0x66, 0xc1, 0x4f, 0x41, 0x78, 0x75, 0x7b, 0xb3, 0x25, 0x17, 0x98, 0x88, 0xf5, 0x26, 0xf7, 0xdb, 0x11, 0x16, 0x1a, 0xed, 0xcd, 0x75, 0x25, 0x51, 0x38, 0x13, 0x16, 0xc2, 0x71, 0x3f, 0x5d, 0xe2, 0x1d, 0x3d, 0x51, 0x7a, 0xf0, 0x97, 0xd4, 0x8a, 0x90, 0xc3, 0xbb, 0x34, 0x44, 0x73, 0x6b, 0xec, 0x69, 0xdb, 0x06, 0x49, 0xf8, 0x24, 0x28, 0xb3, 0x92, 0x38, 0xad, 0xa6, 0x04, 0x8a, 0x0b, 0xea, 0xd8, 0x4f, 0x2f, 0x3b, 0x73, 0x81, 0x6b, 0x48, 0xfe, 0xd4, 0xd5, 0x7b, 0x5f, 0x87, 0xa1, 0x94, 0xce, 0x40, 0x04, 0xed, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9566 = { .name = "ecdsa_secp384r1_sha512_9566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9566_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9566_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9566_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9567 for ECDSA, tcId is 88 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9567_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9567_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9567_sig[] = { 0x83, 0x32, 0x10, 0xc4, 0x5d, 0x24, 0x48, 0xd9, 0xa4, 0xd6, 0x96, 0x22, 0xd6, 0xf2, 0x19, 0x3e, 0x64, 0xc6, 0x5c, 0x79, 0xd4, 0x5d, 0x62, 0xe2, 0x8f, 0x51, 0x7c, 0xa5, 0xc6, 0x8e, 0xef, 0x05, 0xa2, 0xe9, 0x8b, 0x1f, 0xae, 0xd4, 0xcc, 0x87, 0xcb, 0xdb, 0xec, 0x6f, 0xe6, 0xbb, 0x89, 0x87, 0xb7, 0x77, 0xb4, 0x4c, 0xd3, 0x0e, 0x6a, 0x04, 0x9d, 0xc5, 0x6a, 0xf1, 0x9a, 0x25, 0x1d, 0x95, 0x5c, 0x1b, 0xba, 0xb0, 0xc3, 0x07, 0xfe, 0x12, 0xe9, 0xe5, 0x38, 0x2f, 0xd4, 0x8c, 0x17, 0x3d, 0xb0, 0x29, 0x2f, 0x0b, 0x10, 0x47, 0xda, 0x28, 0xee, 0x18, 0x51, 0x8e, 0x11, 0x68, 0x8e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9567 = { .name = "ecdsa_secp384r1_sha512_9567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9567_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9567_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9567_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9568 for ECDSA, tcId is 89 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9568_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9568_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9568_sig[] = { 0x77, 0x28, 0xef, 0x10, 0xd9, 0xd5, 0xf3, 0xf3, 0x21, 0x32, 0x71, 0x6e, 0x6b, 0x40, 0x39, 0x26, 0x92, 0x9b, 0x05, 0x20, 0x17, 0x00, 0x65, 0x8d, 0x4b, 0x7f, 0x25, 0xa0, 0x69, 0x2f, 0x15, 0x3b, 0x8d, 0x66, 0x6f, 0xd0, 0xda, 0x39, 0x88, 0x8a, 0xb6, 0x23, 0x42, 0x12, 0x65, 0x92, 0x68, 0xd0, 0x55, 0xdf, 0x94, 0x66, 0xee, 0x2c, 0x98, 0x22, 0x5a, 0x2b, 0x0c, 0x4f, 0xf7, 0x76, 0x22, 0xf9, 0xd1, 0x1b, 0x4e, 0x48, 0xaa, 0x7f, 0x92, 0x79, 0xcd, 0xc2, 0xe2, 0x45, 0xfd, 0xd9, 0xb9, 0xf4, 0x28, 0x21, 0x06, 0xe2, 0x5a, 0x45, 0x8f, 0xf6, 0x18, 0xbc, 0x3c, 0xa9, 0x42, 0x2b, 0xea, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9568 = { .name = "ecdsa_secp384r1_sha512_9568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9568_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9568_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9568_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9569 for ECDSA, tcId is 90 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9569_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9569_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9569_sig[] = { 0x55, 0x20, 0x40, 0x70, 0x1d, 0xba, 0x17, 0xbe, 0x3b, 0x4d, 0x5d, 0x6e, 0x13, 0x6c, 0xe4, 0x12, 0xb6, 0xa4, 0xc5, 0x0c, 0xe1, 0xee, 0x53, 0x41, 0x5d, 0x81, 0x00, 0xc6, 0x9a, 0x8e, 0xe4, 0x72, 0x66, 0x52, 0x64, 0x8f, 0x50, 0xe6, 0x95, 0xf8, 0xbb, 0x55, 0x2d, 0x0d, 0xf3, 0xe8, 0xd1, 0xc4, 0x13, 0x74, 0x97, 0x2b, 0x2f, 0x35, 0xb2, 0xfd, 0x86, 0xd4, 0x5e, 0xd0, 0xc9, 0x35, 0x8b, 0x39, 0x4e, 0x27, 0x15, 0x75, 0xe4, 0x29, 0xac, 0x8a, 0xa6, 0x0e, 0xb9, 0x4b, 0x9d, 0xf7, 0xe7, 0x55, 0xd9, 0x31, 0x7f, 0xb2, 0x59, 0x26, 0x9e, 0x9d, 0x3b, 0x1d, 0xb8, 0xd4, 0x8d, 0x91, 0xdc, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9569 = { .name = "ecdsa_secp384r1_sha512_9569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9569_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9569_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9569_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9570 for ECDSA, tcId is 91 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9570_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9570_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9570_sig[] = { 0xfe, 0x6e, 0xf0, 0x70, 0x56, 0xce, 0x64, 0x71, 0x28, 0x58, 0x4b, 0xec, 0x15, 0x6b, 0x68, 0xb8, 0x00, 0x5f, 0x42, 0xd8, 0xc8, 0x5d, 0xfb, 0x12, 0x21, 0x34, 0xc4, 0x88, 0xcc, 0x0e, 0x72, 0xcf, 0x8f, 0x06, 0x70, 0x04, 0x17, 0xd7, 0xff, 0x69, 0x4b, 0x45, 0xe8, 0x94, 0xec, 0x23, 0xcb, 0xbd, 0x7f, 0x5e, 0x33, 0xc5, 0xbf, 0xa6, 0x97, 0xc1, 0x44, 0xd4, 0x40, 0xb3, 0x2d, 0x06, 0x22, 0x1f, 0x63, 0x0a, 0x9c, 0xca, 0xa8, 0xe9, 0xa0, 0x48, 0x94, 0x90, 0xc0, 0x4b, 0x86, 0xe8, 0xda, 0xae, 0x0e, 0x41, 0xd2, 0x46, 0x64, 0x29, 0xb4, 0xb3, 0xcc, 0x1d, 0x37, 0x34, 0x8e, 0x36, 0xcc, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9570 = { .name = "ecdsa_secp384r1_sha512_9570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9570_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9570_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9570_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9571 for ECDSA, tcId is 92 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9571_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9571_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9571_sig[] = { 0xe0, 0x09, 0xfc, 0x1a, 0x13, 0xd2, 0x82, 0xbd, 0x37, 0xf1, 0x06, 0x93, 0x35, 0x0a, 0x5b, 0x42, 0x1a, 0x00, 0x39, 0x71, 0x3d, 0x29, 0xcb, 0x9e, 0x81, 0x6e, 0x01, 0x3c, 0x17, 0x3b, 0xd1, 0xec, 0x2b, 0xd6, 0xeb, 0x6b, 0xd8, 0x84, 0x29, 0x02, 0x3e, 0xe3, 0xd7, 0x5d, 0x9a, 0x5e, 0xc0, 0x6f, 0x0b, 0x8b, 0xd4, 0x81, 0x98, 0x2a, 0x6e, 0x52, 0x35, 0x5b, 0xcd, 0xe5, 0xfe, 0x00, 0x92, 0xab, 0xac, 0x41, 0xf0, 0x54, 0x3c, 0x31, 0xd1, 0x92, 0x8b, 0x9a, 0x58, 0x5e, 0x63, 0xe9, 0x52, 0x0e, 0x24, 0xa6, 0x5f, 0x46, 0xdb, 0x26, 0x96, 0xe1, 0xb8, 0x5a, 0x65, 0xc4, 0xe5, 0x24, 0x08, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9571 = { .name = "ecdsa_secp384r1_sha512_9571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9571_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9571_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9571_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9572 for ECDSA, tcId is 93 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9572_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9572_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9572_sig[] = { 0xac, 0xee, 0x00, 0xdf, 0xdf, 0xce, 0xe7, 0x34, 0x3a, 0xef, 0xfa, 0x85, 0x14, 0xb1, 0x10, 0x20, 0xc5, 0x43, 0x50, 0x27, 0x88, 0x75, 0x29, 0xd2, 0x55, 0xbd, 0xbd, 0x45, 0xa9, 0x0f, 0x16, 0x0c, 0x68, 0xf0, 0x5b, 0xd4, 0xb5, 0x67, 0xda, 0xa8, 0xfa, 0x14, 0xe5, 0x80, 0x7f, 0x51, 0x67, 0xa4, 0x1c, 0x9f, 0xdf, 0x54, 0x61, 0x90, 0x97, 0x0a, 0xa3, 0x31, 0x21, 0xa3, 0x04, 0x32, 0x80, 0x66, 0x9b, 0xe6, 0x94, 0xe5, 0xf7, 0x00, 0xb5, 0x2a, 0x80, 0x5a, 0xa6, 0x10, 0x1b, 0x4c, 0x58, 0xf0, 0x46, 0x7e, 0x7b, 0x69, 0x96, 0x41, 0xd1, 0xd0, 0x3f, 0x62, 0x29, 0xb2, 0xfa, 0xf4, 0x25, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9572 = { .name = "ecdsa_secp384r1_sha512_9572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9572_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9572_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9572_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9573 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9573_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9573_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9573_sig[] = { 0x8a, 0x4e, 0xe1, 0xe3, 0xbb, 0x25, 0x19, 0x82, 0x47, 0x58, 0x77, 0xd1, 0x87, 0x63, 0xfa, 0xfc, 0xf4, 0x9c, 0xcc, 0x8b, 0x0f, 0xec, 0x1d, 0xa6, 0x3b, 0x0e, 0xdc, 0xcb, 0xb8, 0xd3, 0xe3, 0x86, 0x08, 0xa2, 0xe0, 0x2d, 0x0d, 0x95, 0x10, 0x31, 0x17, 0x9e, 0x12, 0xac, 0x89, 0x9d, 0x30, 0xc3, 0x73, 0xcb, 0x62, 0xad, 0x76, 0x32, 0xcd, 0x42, 0xdf, 0xf8, 0x29, 0xab, 0xfb, 0xfc, 0xb6, 0x16, 0x52, 0x07, 0xe3, 0x70, 0x8e, 0xd1, 0x00, 0x43, 0xc0, 0xcd, 0xee, 0x95, 0x1c, 0x7f, 0x80, 0x12, 0x43, 0x26, 0x96, 0xe9, 0xcf, 0x73, 0x2d, 0xcb, 0xad, 0xb5, 0x04, 0x63, 0x06, 0x48, 0x41, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9573 = { .name = "ecdsa_secp384r1_sha512_9573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9573_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9573_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9573_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9574 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9574_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9574_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9574_sig[] = { 0x39, 0x03, 0xb5, 0x9f, 0x83, 0x7f, 0xf5, 0xf4, 0x1f, 0x42, 0xcb, 0xe3, 0xe2, 0xfc, 0x8e, 0x17, 0xd8, 0x59, 0xcb, 0xb3, 0x53, 0x86, 0xc4, 0x32, 0x7d, 0x39, 0x47, 0xfb, 0x01, 0x2b, 0x36, 0x29, 0xfe, 0xa9, 0x11, 0xc8, 0x3c, 0xef, 0xdb, 0xd5, 0x03, 0xae, 0xbb, 0xcc, 0x11, 0x14, 0xaf, 0xd1, 0x0e, 0x5b, 0xe9, 0x09, 0x4b, 0x5a, 0x22, 0xad, 0xe0, 0x0c, 0x24, 0x64, 0x4f, 0x47, 0x6b, 0xaa, 0xd0, 0xf7, 0x74, 0x1d, 0xfb, 0x2c, 0xe9, 0x64, 0x4a, 0x1c, 0x45, 0x76, 0x94, 0x04, 0xf8, 0xdc, 0xcc, 0x52, 0x20, 0x17, 0xc2, 0xb8, 0xcc, 0x63, 0x0f, 0x1a, 0x0e, 0xf5, 0xfe, 0xe9, 0x9f, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9574 = { .name = "ecdsa_secp384r1_sha512_9574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9574_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9574_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9574_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9575 for ECDSA, tcId is 96 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9575_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9575_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9575_sig[] = { 0x77, 0x17, 0xff, 0xc8, 0xd0, 0x81, 0x1f, 0x35, 0x72, 0x99, 0x42, 0x3c, 0x56, 0xec, 0x18, 0x1c, 0x58, 0xf1, 0x98, 0x1f, 0x5c, 0x1d, 0xd4, 0xf3, 0x46, 0xf6, 0xa2, 0xad, 0x71, 0xd3, 0x58, 0x2e, 0x20, 0x3a, 0x11, 0xe8, 0x60, 0x9c, 0x11, 0x46, 0xff, 0x32, 0x47, 0xa1, 0x82, 0x0f, 0x83, 0x2c, 0x96, 0xc8, 0x9e, 0xc7, 0x07, 0xda, 0x3c, 0xd8, 0xb0, 0x90, 0x84, 0xb0, 0x65, 0xe3, 0x26, 0x53, 0x27, 0xa5, 0x36, 0xa9, 0x74, 0xc4, 0x28, 0x51, 0x55, 0x38, 0x80, 0x11, 0xe3, 0x48, 0xf2, 0xe7, 0xf0, 0x05, 0xae, 0x7e, 0x3e, 0x50, 0x27, 0x32, 0xfc, 0x29, 0x71, 0xac, 0x13, 0xfd, 0x72, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9575 = { .name = "ecdsa_secp384r1_sha512_9575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9575_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9575_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9575_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9576 for ECDSA, tcId is 97 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9576_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9576_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9576_sig[] = { 0xa2, 0x15, 0x19, 0xce, 0x35, 0x33, 0xc8, 0x08, 0x26, 0xf1, 0xe4, 0x7f, 0xa9, 0xaf, 0xde, 0x70, 0x96, 0x15, 0x11, 0x44, 0x29, 0x11, 0x34, 0x42, 0x19, 0x90, 0x28, 0x5a, 0x8d, 0x89, 0xa8, 0xc2, 0xd4, 0xaf, 0xda, 0xdd, 0x54, 0x7a, 0x92, 0x3d, 0xcc, 0x17, 0xbf, 0xcd, 0xd0, 0xe9, 0xff, 0xb9, 0x40, 0x57, 0x72, 0x45, 0xdd, 0x2e, 0x02, 0x2c, 0x8e, 0xd8, 0xb5, 0xde, 0x7b, 0x8c, 0x26, 0xf3, 0x13, 0x07, 0x42, 0x9a, 0x7a, 0x64, 0xe5, 0x72, 0x93, 0x11, 0xcc, 0x41, 0x28, 0xe3, 0xb4, 0x86, 0x86, 0x7e, 0x61, 0xb4, 0xa8, 0xa1, 0xcd, 0x07, 0x31, 0x79, 0x2e, 0xb1, 0x46, 0x6d, 0x08, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9576 = { .name = "ecdsa_secp384r1_sha512_9576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9576_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9576_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9576_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9577 for ECDSA, tcId is 98 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9577_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9577_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9577_sig[] = { 0xa7, 0x27, 0xad, 0xda, 0xd0, 0xb2, 0xac, 0xd2, 0x94, 0x2c, 0xb1, 0xe3, 0xf7, 0xb2, 0x91, 0x7c, 0xa6, 0x54, 0x53, 0x27, 0x51, 0x98, 0xb0, 0x64, 0x36, 0xa9, 0x93, 0xbf, 0xc9, 0x82, 0xd3, 0xf5, 0x46, 0x20, 0xc3, 0x95, 0xe2, 0x53, 0xd5, 0x7b, 0x8f, 0xe0, 0x26, 0xef, 0xcf, 0x72, 0x52, 0xf9, 0x7a, 0x19, 0x81, 0x1a, 0xa4, 0xc1, 0x2c, 0x45, 0xc3, 0xc0, 0x41, 0xe7, 0xc6, 0x14, 0xd0, 0xd9, 0x80, 0x51, 0xca, 0x7a, 0x0c, 0x57, 0xa9, 0xa1, 0x07, 0xd5, 0x52, 0x79, 0x3b, 0xa1, 0xd0, 0xde, 0xbb, 0x37, 0x35, 0x25, 0xaa, 0xfc, 0xc1, 0x3a, 0xe1, 0xac, 0xd5, 0x0a, 0x42, 0xa8, 0x9a, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9577 = { .name = "ecdsa_secp384r1_sha512_9577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9577_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9577_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9577_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9578 for ECDSA, tcId is 99 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9578_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9578_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9578_sig[] = { 0x22, 0x28, 0x72, 0x77, 0x87, 0x2d, 0x17, 0x5d, 0x8a, 0x3f, 0xf5, 0xbe, 0x98, 0x18, 0x65, 0x8f, 0x84, 0x5e, 0xb9, 0xc1, 0xb2, 0xed, 0xc0, 0x93, 0xae, 0x82, 0xa7, 0x5a, 0xa3, 0x1c, 0xc2, 0x6f, 0xe1, 0x77, 0x1b, 0x4b, 0xfb, 0xd4, 0xc3, 0x20, 0x25, 0x13, 0x88, 0xd7, 0x27, 0x9b, 0x52, 0x45, 0xb4, 0x7d, 0x18, 0x33, 0x86, 0x7e, 0x88, 0x9f, 0xcf, 0xd7, 0xac, 0x17, 0x18, 0x55, 0x29, 0x3a, 0x50, 0xaa, 0x6d, 0xb2, 0x4c, 0x65, 0x22, 0xe3, 0x74, 0xfe, 0x87, 0xbe, 0x12, 0xbf, 0x49, 0xb1, 0x3c, 0x8b, 0x5e, 0x14, 0x55, 0xa2, 0xf2, 0x5a, 0xa7, 0x91, 0x2f, 0x79, 0x9e, 0xeb, 0xe5, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9578 = { .name = "ecdsa_secp384r1_sha512_9578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9578_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9578_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9578_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9579 for ECDSA, tcId is 100 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9579_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9579_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9579_sig[] = { 0xa0, 0xf4, 0x13, 0x62, 0x00, 0x9b, 0x8e, 0x7e, 0x75, 0x45, 0xd0, 0xf7, 0xc4, 0x12, 0x7e, 0x22, 0xd8, 0x2a, 0xc1, 0x92, 0x1e, 0xb6, 0x1b, 0xf5, 0x1e, 0x9e, 0xa7, 0x11, 0xe4, 0x15, 0x57, 0xa8, 0x4f, 0x7b, 0xb6, 0xac, 0xe4, 0x99, 0xa3, 0xbc, 0x9e, 0xbc, 0xa8, 0xe8, 0x37, 0x28, 0x78, 0x7b, 0x1f, 0x6e, 0x0c, 0x15, 0xa3, 0xe4, 0x02, 0x37, 0x08, 0x85, 0xe2, 0xac, 0xeb, 0x71, 0x22, 0x80, 0xeb, 0xc4, 0x5b, 0x63, 0x98, 0x63, 0x57, 0x76, 0x5b, 0x7e, 0x54, 0xb0, 0x6c, 0xd0, 0x0d, 0xb8, 0x30, 0x8e, 0x47, 0x15, 0xc3, 0x9d, 0x48, 0xd2, 0x46, 0x03, 0x0b, 0xf9, 0x60, 0xe6, 0xa2, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9579 = { .name = "ecdsa_secp384r1_sha512_9579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9579_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9579_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9579_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9580 for ECDSA, tcId is 101 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9580_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9580_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9580_sig[] = { 0x41, 0x44, 0xe1, 0xc6, 0xad, 0x29, 0xad, 0x88, 0xaa, 0x54, 0x72, 0xd6, 0xd1, 0xa8, 0xd1, 0xf1, 0x5d, 0xe3, 0x15, 0xf5, 0xb2, 0x81, 0xf8, 0x7c, 0xc3, 0x92, 0xd6, 0x6d, 0x70, 0x42, 0x54, 0x7e, 0x6a, 0xf7, 0xc7, 0x33, 0xb3, 0x18, 0x28, 0xf8, 0x9c, 0x8a, 0x5d, 0xaf, 0xce, 0x5b, 0xb9, 0xaf, 0xf5, 0xd0, 0xd8, 0x1f, 0x92, 0x42, 0x8d, 0xf2, 0x97, 0x77, 0x57, 0xc8, 0x8b, 0xa6, 0x7f, 0x9e, 0x03, 0xab, 0xd4, 0xc1, 0x5b, 0x1e, 0x87, 0xfa, 0x1d, 0xd4, 0x9e, 0x60, 0x1a, 0x9d, 0xd4, 0x79, 0xe7, 0xc3, 0xdc, 0x03, 0xa8, 0xbf, 0xea, 0x60, 0xfc, 0xfc, 0x1c, 0x54, 0x39, 0x31, 0xa7, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9580 = { .name = "ecdsa_secp384r1_sha512_9580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9580_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9580_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9580_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9581 for ECDSA, tcId is 102 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9581_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9581_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9581_sig[] = { 0x5f, 0x17, 0x7f, 0xc0, 0x55, 0x42, 0xbe, 0x6e, 0x09, 0x02, 0x7b, 0x7e, 0xac, 0x5e, 0xb3, 0x4f, 0x34, 0xfc, 0x10, 0xad, 0x14, 0x29, 0xe4, 0xda, 0xae, 0xa7, 0x58, 0x34, 0xde, 0x48, 0xdd, 0x22, 0x62, 0x6f, 0x2b, 0xf6, 0x53, 0xdf, 0xcc, 0x46, 0x23, 0x49, 0x21, 0xd1, 0x9b, 0x97, 0x40, 0x6b, 0x7d, 0xef, 0x6c, 0x99, 0x3a, 0x87, 0x56, 0x04, 0x25, 0xf2, 0xc9, 0x11, 0x04, 0x63, 0x57, 0xc4, 0xb1, 0xc4, 0xc3, 0x76, 0xbf, 0xa2, 0x2b, 0xb4, 0x5d, 0x53, 0x36, 0x54, 0xfe, 0xa6, 0xf5, 0x65, 0xba, 0x72, 0x21, 0x47, 0xb2, 0x26, 0x9e, 0xa7, 0x65, 0x2f, 0x9c, 0x4a, 0xf6, 0x2e, 0xd1, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9581 = { .name = "ecdsa_secp384r1_sha512_9581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9581_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9581_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9581_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9582 for ECDSA, tcId is 103 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9582_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9582_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9582_sig[] = { 0xbd, 0x77, 0xa8, 0xff, 0x0c, 0xd7, 0x98, 0xd8, 0xf6, 0xe7, 0x5d, 0xfb, 0xbb, 0x16, 0xc3, 0xee, 0x5b, 0xf3, 0xf6, 0x26, 0xdc, 0xb5, 0xab, 0xdf, 0xd4, 0x53, 0xb3, 0x01, 0xcb, 0x4f, 0xd4, 0xca, 0xee, 0x8e, 0x84, 0xdd, 0x65, 0x0a, 0x8b, 0x4c, 0xf6, 0x65, 0x5d, 0xea, 0x16, 0x37, 0x88, 0xc7, 0xef, 0x8f, 0x42, 0x39, 0x44, 0x69, 0xeb, 0x8c, 0xd7, 0xb2, 0xac, 0x69, 0x42, 0xcd, 0xb5, 0xe7, 0x0d, 0xd5, 0x49, 0x80, 0xad, 0x8c, 0x0c, 0x48, 0x30, 0x99, 0x57, 0x3d, 0x75, 0xb9, 0x36, 0x88, 0x04, 0x59, 0xc9, 0xd1, 0x4f, 0x9e, 0x73, 0x64, 0x58, 0x65, 0xa4, 0xf2, 0x4e, 0xe2, 0xc4, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9582 = { .name = "ecdsa_secp384r1_sha512_9582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9582_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9582_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9582_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9583 for ECDSA, tcId is 104 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9583_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9583_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9583_sig[] = { 0xa0, 0x2e, 0x21, 0x96, 0x25, 0x84, 0x36, 0xda, 0x6a, 0x35, 0xa2, 0xf7, 0x3c, 0xf6, 0xb0, 0x88, 0x80, 0xf2, 0x77, 0x57, 0x56, 0x6c, 0xe8, 0x0c, 0x7f, 0xc4, 0x5f, 0x5d, 0xcb, 0xae, 0xc6, 0x2d, 0x3f, 0xce, 0xbb, 0x78, 0x4b, 0x4a, 0x65, 0x0e, 0x24, 0xc1, 0xa9, 0x97, 0xe4, 0xb9, 0x71, 0xf7, 0xf1, 0x19, 0x5d, 0x2b, 0xa3, 0x32, 0x1b, 0x69, 0x38, 0xe0, 0x41, 0x69, 0xd7, 0xba, 0xf6, 0x05, 0x00, 0x1b, 0x63, 0x11, 0xf0, 0x8a, 0x5e, 0x82, 0x15, 0x7a, 0x76, 0x75, 0xd5, 0x49, 0x93, 0xf2, 0xfd, 0x1e, 0x41, 0xf8, 0xc8, 0x4f, 0xc4, 0x37, 0xa1, 0xa1, 0x39, 0xd2, 0xe7, 0x3e, 0x8d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9583 = { .name = "ecdsa_secp384r1_sha512_9583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9583_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9583_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9583_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9584 for ECDSA, tcId is 105 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9584_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9584_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9584_sig[] = { 0x68, 0x6c, 0x5d, 0xfe, 0x85, 0x86, 0x29, 0x12, 0x5f, 0xde, 0xe5, 0x22, 0xb7, 0x7a, 0x9b, 0x9b, 0xe5, 0xe0, 0x3a, 0x34, 0x7d, 0x79, 0xcb, 0x4c, 0x40, 0x7f, 0x17, 0xfd, 0x25, 0xc9, 0x72, 0x93, 0xcd, 0x99, 0x71, 0x1f, 0x33, 0xe7, 0x78, 0x14, 0xbd, 0x30, 0xd2, 0x45, 0x3d, 0x3a, 0x86, 0xc1, 0x50, 0x9a, 0xc9, 0xb1, 0x8c, 0x1b, 0x2b, 0x5a, 0x2b, 0x1b, 0x88, 0x9d, 0x99, 0x4b, 0x95, 0x07, 0x43, 0xa9, 0x88, 0xc2, 0xfc, 0xfb, 0x68, 0x3e, 0x89, 0x21, 0x1a, 0x43, 0xda, 0x6e, 0xe3, 0x62, 0xc2, 0xe4, 0x14, 0xd8, 0x4f, 0xe8, 0x2d, 0xb1, 0x90, 0x4b, 0x81, 0x70, 0x1c, 0x25, 0x78, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9584 = { .name = "ecdsa_secp384r1_sha512_9584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9584_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9584_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9584_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9585 for ECDSA, tcId is 106 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9585_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9585_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9585_sig[] = { 0x83, 0xce, 0x81, 0x8e, 0xcd, 0x27, 0x64, 0x32, 0xa8, 0xdd, 0xfe, 0x75, 0x40, 0x6d, 0x01, 0x32, 0x9e, 0x76, 0xd7, 0x58, 0x6c, 0xd6, 0xf6, 0x11, 0xc1, 0xfe, 0x1a, 0x09, 0x13, 0xad, 0x80, 0x01, 0x4c, 0x21, 0x56, 0x38, 0x19, 0x42, 0xd5, 0x8d, 0xd6, 0x35, 0x6e, 0x44, 0xcc, 0xdc, 0x52, 0xa8, 0x36, 0xa3, 0x59, 0x83, 0xb9, 0x7a, 0x9a, 0xe2, 0xa1, 0x9c, 0xf0, 0x5b, 0xa9, 0x47, 0xdd, 0x88, 0x0c, 0x97, 0x3d, 0x5c, 0x78, 0xf9, 0x67, 0x6e, 0xbb, 0xcb, 0x0b, 0x40, 0xd6, 0x39, 0x12, 0x40, 0x30, 0xc1, 0x37, 0x23, 0x62, 0x32, 0xf1, 0xfa, 0xd1, 0x5a, 0xfd, 0x71, 0xc5, 0x2a, 0xd8, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9585 = { .name = "ecdsa_secp384r1_sha512_9585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9585_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9585_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9585_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9586 for ECDSA, tcId is 107 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9586_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9586_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9586_sig[] = { 0x7c, 0xb7, 0x8e, 0xbb, 0x71, 0x2b, 0x5a, 0x2e, 0x0b, 0x05, 0x73, 0xd2, 0x84, 0x40, 0xa5, 0xda, 0x36, 0xbd, 0x23, 0x38, 0x80, 0x5d, 0x90, 0xef, 0x3b, 0x0c, 0x11, 0x78, 0xae, 0x61, 0x3b, 0xe8, 0xae, 0x8b, 0xf5, 0x48, 0xaf, 0x4e, 0x74, 0x03, 0xe5, 0xa5, 0x41, 0x04, 0x62, 0xaf, 0xc2, 0xe3, 0x86, 0x31, 0xa8, 0x2c, 0xbd, 0xb8, 0xc2, 0xc7, 0xdf, 0x70, 0xf0, 0x12, 0x40, 0x5f, 0x06, 0xad, 0x0a, 0xb2, 0x0d, 0x6c, 0x4f, 0xbc, 0xeb, 0x3e, 0x73, 0x6f, 0x40, 0xfd, 0xff, 0x1a, 0x8e, 0x5f, 0x6e, 0x66, 0x7a, 0x0e, 0x77, 0x25, 0x9f, 0x27, 0x74, 0x94, 0xde, 0x84, 0xec, 0x0d, 0xe5, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9586 = { .name = "ecdsa_secp384r1_sha512_9586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9586_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9586_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9586_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9587 for ECDSA, tcId is 108 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9587_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9587_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9587_sig[] = { 0x85, 0x11, 0x0f, 0xe2, 0x11, 0x56, 0xb7, 0x76, 0x4b, 0x91, 0xbc, 0xb6, 0xcf, 0x44, 0xda, 0x3e, 0xb2, 0x1d, 0x16, 0x23, 0x95, 0x07, 0x1c, 0x21, 0x6a, 0x13, 0xb5, 0x92, 0x0d, 0x67, 0xa3, 0x1a, 0xaa, 0x20, 0xdf, 0xc4, 0x66, 0x9c, 0xf3, 0x2c, 0x04, 0x96, 0x4d, 0x08, 0x31, 0xbc, 0xdc, 0x29, 0xe1, 0x91, 0x87, 0x03, 0x3d, 0x8b, 0x4e, 0x1e, 0xdf, 0x7a, 0xb8, 0xea, 0xaa, 0xe1, 0xe1, 0x3c, 0x80, 0xc0, 0xc4, 0xdb, 0x51, 0xd9, 0x21, 0xcc, 0xf6, 0x2f, 0x42, 0x45, 0x24, 0xcb, 0xd5, 0x30, 0xd0, 0x7d, 0xe2, 0xcf, 0x90, 0x2a, 0x0e, 0xcd, 0xa5, 0xe0, 0x12, 0x06, 0xae, 0x61, 0xe2, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9587 = { .name = "ecdsa_secp384r1_sha512_9587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9587_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9587_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9587_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9588 for ECDSA, tcId is 109 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9588_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9588_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9588_sig[] = { 0x0f, 0xd6, 0x21, 0xa8, 0x92, 0xee, 0x5a, 0x3e, 0xb0, 0xbc, 0xb8, 0x0f, 0x31, 0x84, 0x71, 0x4a, 0x66, 0x35, 0xf5, 0x68, 0xd9, 0x2f, 0x41, 0xad, 0x8d, 0x52, 0x38, 0x87, 0xd5, 0xb8, 0x2d, 0x2b, 0x93, 0x0e, 0xb5, 0xff, 0x29, 0x22, 0xfd, 0xa1, 0xa3, 0xd2, 0x99, 0xf5, 0xa0, 0x45, 0x83, 0x7f, 0x12, 0x78, 0x72, 0x5a, 0x60, 0x7f, 0xa6, 0xf2, 0xfc, 0x75, 0x49, 0xb0, 0xde, 0x81, 0x6f, 0xe2, 0xf8, 0x8e, 0x3a, 0x1e, 0xc1, 0xcc, 0xaf, 0x9f, 0xb5, 0x8e, 0x70, 0xa0, 0xf6, 0x64, 0x6c, 0x2d, 0x7a, 0xad, 0x6e, 0x4f, 0x73, 0xd1, 0x16, 0xe7, 0x30, 0x96, 0xbd, 0xef, 0x23, 0x1d, 0x0c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9588 = { .name = "ecdsa_secp384r1_sha512_9588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9588_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9588_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9588_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9589 for ECDSA, tcId is 110 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9589_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9589_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9589_sig[] = { 0x80, 0x2c, 0xbe, 0x40, 0x5d, 0x3c, 0xe9, 0x66, 0x3b, 0x0b, 0x13, 0xc6, 0x39, 0xaa, 0x27, 0x73, 0x0b, 0x33, 0x77, 0xce, 0x42, 0x52, 0x10, 0x98, 0xae, 0x09, 0x09, 0x6b, 0x7f, 0xc5, 0xe7, 0xac, 0x99, 0x8b, 0x69, 0x94, 0x34, 0x4e, 0x89, 0xab, 0xfb, 0x50, 0xc0, 0x54, 0x76, 0xf9, 0xca, 0xe8, 0x9a, 0xa7, 0x25, 0x8c, 0x0d, 0xc4, 0xef, 0xf4, 0xb2, 0xd5, 0x83, 0x57, 0x53, 0x68, 0x30, 0x1e, 0x2a, 0x78, 0x65, 0xcf, 0xaa, 0x37, 0x53, 0x05, 0x5a, 0x79, 0xc8, 0xb8, 0xe9, 0x1e, 0x94, 0x49, 0x6a, 0x5d, 0x53, 0x91, 0x81, 0xc2, 0xfd, 0x77, 0x94, 0x1d, 0xf5, 0x0f, 0xe8, 0x74, 0x53, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9589 = { .name = "ecdsa_secp384r1_sha512_9589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9589_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9589_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9589_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9590 for ECDSA, tcId is 111 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9590_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9590_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9590_sig[] = { 0x85, 0x9b, 0x04, 0x46, 0x94, 0x9d, 0x7f, 0x78, 0xa0, 0x30, 0x1a, 0xc4, 0xcc, 0x02, 0xb5, 0x99, 0xa7, 0x58, 0xfd, 0x1b, 0xe0, 0x06, 0xbf, 0x1a, 0x12, 0x57, 0x00, 0x15, 0x86, 0x9e, 0x59, 0xb9, 0xa4, 0x29, 0xce, 0x1c, 0x77, 0xa7, 0x50, 0x96, 0x9f, 0x49, 0xe2, 0x91, 0xf6, 0xab, 0x89, 0x94, 0x99, 0xa8, 0x12, 0xa1, 0xac, 0xc2, 0xc6, 0x46, 0x81, 0x43, 0x15, 0xcf, 0x9b, 0x62, 0x90, 0xd2, 0x23, 0x22, 0x36, 0xcd, 0xf1, 0x31, 0xf9, 0x59, 0x00, 0x88, 0xe7, 0x5a, 0x55, 0x78, 0x6c, 0xdf, 0xc9, 0xd9, 0x02, 0x7e, 0xc7, 0x00, 0x56, 0x40, 0x8a, 0xb5, 0x54, 0x45, 0xfd, 0x79, 0xfe, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9590 = { .name = "ecdsa_secp384r1_sha512_9590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9590_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9590_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9590_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9591 for ECDSA, tcId is 112 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9591_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9591_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9591_sig[] = { 0xdb, 0xcc, 0x7e, 0xe9, 0xfa, 0x62, 0x0e, 0x94, 0x31, 0x93, 0xde, 0xae, 0x3f, 0x46, 0xb3, 0x14, 0x27, 0x79, 0xca, 0xa2, 0xbc, 0xe2, 0xdf, 0x79, 0xa2, 0x06, 0x39, 0xc8, 0xd0, 0x1b, 0xce, 0x41, 0x4a, 0x61, 0xf7, 0x27, 0x64, 0xc1, 0xec, 0x94, 0x9c, 0x94, 0x53, 0x20, 0xf5, 0xee, 0x2a, 0x1d, 0x1d, 0x98, 0x79, 0x78, 0x7b, 0x88, 0x0b, 0xd0, 0x5d, 0xb3, 0x9b, 0xac, 0x07, 0xbf, 0xe3, 0xe7, 0xd0, 0x79, 0x29, 0x32, 0x14, 0x4e, 0x21, 0x1e, 0x81, 0xf2, 0x1d, 0xa9, 0x62, 0x1b, 0x83, 0xbf, 0xf1, 0x1b, 0xc5, 0x2b, 0xcc, 0x7c, 0xb4, 0x0c, 0xf5, 0x09, 0x3f, 0x9b, 0xad, 0x86, 0x50, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9591 = { .name = "ecdsa_secp384r1_sha512_9591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9591_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9591_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9591_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9592 for ECDSA, tcId is 113 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9592_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9592_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9592_sig[] = { 0x7a, 0x1f, 0x9f, 0xbd, 0x0f, 0x6e, 0x77, 0x6c, 0x3e, 0x3a, 0x3c, 0x79, 0x8f, 0x5c, 0x0d, 0x9e, 0x20, 0xf0, 0xe2, 0xf3, 0xf4, 0xd2, 0x2e, 0x58, 0x93, 0xdd, 0x09, 0xe5, 0xaf, 0x69, 0xa4, 0x6a, 0xbc, 0x2f, 0x88, 0x8d, 0x3c, 0x76, 0x83, 0x44, 0x62, 0x00, 0x80, 0x69, 0x27, 0x5d, 0xfe, 0xb9, 0x45, 0xe6, 0xd6, 0x2a, 0x74, 0xd3, 0xeb, 0x81, 0xf0, 0xa3, 0xa6, 0x29, 0x02, 0xb8, 0x94, 0x91, 0x32, 0x82, 0x1b, 0x45, 0xd8, 0xe6, 0xca, 0xd9, 0xbb, 0x3d, 0x86, 0x60, 0x45, 0x17, 0x27, 0xcd, 0xf7, 0xb3, 0x32, 0xa9, 0xac, 0x7b, 0xb0, 0x46, 0x04, 0x99, 0x13, 0x12, 0x14, 0x3f, 0x8a, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9592 = { .name = "ecdsa_secp384r1_sha512_9592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9592_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9592_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9592_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9593 for ECDSA, tcId is 114 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9593_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9593_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9593_sig[] = { 0x04, 0x79, 0x62, 0xe0, 0x9e, 0x1b, 0x61, 0x82, 0x3d, 0x23, 0x72, 0x6b, 0xf7, 0x2b, 0x4d, 0xde, 0x38, 0x0e, 0x03, 0x2b, 0x53, 0x4e, 0x32, 0x73, 0xdb, 0x15, 0x7f, 0xa6, 0x09, 0x08, 0x15, 0x9a, 0xb7, 0xee, 0x4c, 0xad, 0xce, 0x14, 0xfd, 0x06, 0xeb, 0xe8, 0xe0, 0x8e, 0x8d, 0x8d, 0x5a, 0x07, 0x18, 0x92, 0xf6, 0x5e, 0xe0, 0x9e, 0x34, 0xce, 0x45, 0xdd, 0x44, 0xb5, 0xa1, 0x72, 0xb2, 0x00, 0xce, 0x66, 0xb6, 0x78, 0xb0, 0xe2, 0x00, 0xc1, 0x7e, 0x42, 0x4e, 0x31, 0x9f, 0x41, 0x4f, 0x8d, 0xfb, 0xb2, 0x76, 0x9a, 0x02, 0x59, 0xc9, 0xcc, 0x10, 0x51, 0x91, 0xaa, 0x92, 0x4e, 0x48, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9593 = { .name = "ecdsa_secp384r1_sha512_9593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9593_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9593_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9593_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9594 for ECDSA, tcId is 115 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9594_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9594_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9594_sig[] = { 0x8f, 0x02, 0x79, 0x93, 0x90, 0xab, 0x86, 0x14, 0x52, 0xcd, 0x49, 0x49, 0x94, 0x2c, 0xbb, 0xcc, 0x25, 0xca, 0xd7, 0xc4, 0x33, 0x4c, 0x4b, 0xc6, 0x14, 0x6f, 0xbe, 0xf8, 0xad, 0x96, 0xc8, 0x6f, 0x92, 0x3f, 0xbf, 0x37, 0x6d, 0x9a, 0xb7, 0x90, 0x73, 0xe5, 0xfc, 0xb6, 0x63, 0xf1, 0xea, 0x91, 0xce, 0x15, 0xd9, 0x86, 0x2d, 0x10, 0x0f, 0xf9, 0x5a, 0xd7, 0x36, 0x89, 0x22, 0xee, 0xc3, 0xf6, 0xd7, 0x06, 0x0c, 0xe4, 0x12, 0xc0, 0x1f, 0xf1, 0x38, 0x70, 0xaa, 0x61, 0x62, 0x6e, 0xe4, 0x9e, 0xdf, 0x39, 0xbb, 0x27, 0x00, 0x5e, 0xcb, 0xe4, 0x06, 0xbb, 0x68, 0x25, 0xf7, 0x4c, 0x04, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9594 = { .name = "ecdsa_secp384r1_sha512_9594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9594_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9594_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9594_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9595 for ECDSA, tcId is 116 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9595_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9595_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9595_sig[] = { 0x18, 0x79, 0xc4, 0xd6, 0xcf, 0x7c, 0x54, 0x25, 0x51, 0x55, 0x47, 0x57, 0x50, 0x49, 0xbe, 0x2a, 0x40, 0xc6, 0x24, 0xa9, 0x28, 0xcf, 0x28, 0x12, 0x50, 0xf8, 0xbd, 0xcb, 0xf4, 0x7e, 0x9f, 0x95, 0x31, 0x0d, 0x09, 0x92, 0xc9, 0x88, 0x7d, 0xc6, 0x31, 0x8b, 0x31, 0x97, 0x11, 0x4f, 0x35, 0x8e, 0xe1, 0x11, 0x6b, 0xf6, 0x83, 0x20, 0xba, 0xde, 0x7d, 0x07, 0xa1, 0xa9, 0x65, 0x15, 0x12, 0xd6, 0x0b, 0x55, 0x1a, 0xf8, 0x62, 0x5b, 0x98, 0xb5, 0xeb, 0x8c, 0xa2, 0x22, 0xd4, 0x07, 0x3a, 0xe5, 0xc1, 0x40, 0xa8, 0x0e, 0x5d, 0xbe, 0x59, 0xf0, 0x73, 0x64, 0x7d, 0xaa, 0x00, 0x83, 0x7a, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9595 = { .name = "ecdsa_secp384r1_sha512_9595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9595_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9595_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9595_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9596 for ECDSA, tcId is 117 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9596_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9596_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9596_sig[] = { 0x31, 0xdc, 0xed, 0x9a, 0x67, 0x67, 0xf3, 0x90, 0x45, 0x47, 0x27, 0x49, 0xba, 0xec, 0x16, 0x44, 0xae, 0x7d, 0x93, 0xa8, 0x10, 0xa4, 0xb6, 0x0e, 0xb2, 0x13, 0xc0, 0x2c, 0x42, 0xde, 0x65, 0x15, 0x2f, 0xfc, 0x66, 0x9a, 0xf9, 0x60, 0x89, 0x55, 0x45, 0x70, 0x80, 0x1a, 0x70, 0x4e, 0x2a, 0x2d, 0x30, 0x22, 0xec, 0xfb, 0xc8, 0x8a, 0x72, 0xb9, 0xc5, 0x0e, 0xf6, 0x53, 0x44, 0x76, 0x5b, 0x61, 0x57, 0x38, 0xf2, 0xb3, 0xd4, 0x20, 0xad, 0xe6, 0x8c, 0xbf, 0x3e, 0xc4, 0x0b, 0xef, 0x0e, 0x10, 0xc5, 0xcc, 0x43, 0xbc, 0xfe, 0x00, 0x3b, 0xb6, 0xf1, 0x7e, 0xc2, 0x38, 0x02, 0xc4, 0x05, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9596 = { .name = "ecdsa_secp384r1_sha512_9596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9596_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9596_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9596_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9597 for ECDSA, tcId is 118 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9597_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9597_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9597_sig[] = { 0xf4, 0xbd, 0xf7, 0x86, 0xc6, 0x1c, 0x5f, 0x1c, 0xe7, 0x56, 0x86, 0x38, 0xba, 0x9d, 0xbc, 0x9a, 0x13, 0x4e, 0x27, 0xfc, 0x14, 0x20, 0x03, 0xbf, 0x98, 0x70, 0x35, 0x39, 0x80, 0xa8, 0xf4, 0xc2, 0xfb, 0xd0, 0x3c, 0x8d, 0x01, 0x71, 0xe4, 0x04, 0x8e, 0xf3, 0x0d, 0xb6, 0xfe, 0x15, 0x38, 0x8a, 0xd0, 0xe9, 0x67, 0x68, 0xbc, 0x6a, 0xdc, 0x91, 0xf9, 0x3a, 0xe5, 0x70, 0x4e, 0x86, 0x88, 0x88, 0x53, 0xf4, 0x79, 0xf3, 0x2a, 0x45, 0xbf, 0xd4, 0x36, 0xdc, 0x8a, 0x03, 0x06, 0x03, 0xd2, 0x33, 0xc5, 0x68, 0x80, 0x12, 0x4b, 0x79, 0x71, 0x36, 0x2a, 0xa1, 0x1b, 0x71, 0x31, 0x5a, 0xe3, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9597 = { .name = "ecdsa_secp384r1_sha512_9597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9597_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9597_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9597_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9598 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9598_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9598_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9598_sig[] = { 0xec, 0x0f, 0x63, 0x5b, 0x7c, 0xe3, 0x19, 0x88, 0xa0, 0x7f, 0x41, 0xb3, 0xdf, 0x35, 0xca, 0x03, 0xc7, 0x0e, 0x37, 0x6b, 0xfb, 0x3b, 0x6a, 0xb2, 0x48, 0x31, 0xa8, 0x3b, 0xe2, 0x12, 0x1b, 0x9f, 0x9e, 0x93, 0x92, 0x8b, 0x10, 0xa8, 0xf5, 0xfc, 0x03, 0x22, 0xbd, 0xb9, 0xed, 0xd4, 0x06, 0xfe, 0x66, 0x61, 0x8c, 0xcb, 0x47, 0x3c, 0x6d, 0xac, 0x3b, 0x14, 0xcf, 0xab, 0x6d, 0xfb, 0x24, 0xd2, 0x19, 0xb3, 0x7a, 0xec, 0x63, 0x42, 0x50, 0x67, 0xc2, 0xc1, 0xc6, 0x31, 0xd6, 0x4a, 0x80, 0xb9, 0xca, 0xb6, 0x44, 0x5f, 0x5a, 0x54, 0x39, 0xad, 0xb2, 0x8b, 0xb9, 0x9d, 0xaa, 0x92, 0x34, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9598 = { .name = "ecdsa_secp384r1_sha512_9598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9598_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9598_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9598_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9599 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9599_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9599_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9599_sig[] = { 0x4f, 0x2b, 0xea, 0x24, 0xf7, 0xde, 0x57, 0x90, 0x1e, 0x36, 0x5d, 0x4c, 0x33, 0x2d, 0xdb, 0x62, 0xd2, 0x94, 0xd0, 0xc5, 0xfd, 0x58, 0x34, 0x2a, 0x43, 0xbd, 0xd3, 0xba, 0x5c, 0xba, 0xf2, 0x5a, 0xda, 0xdd, 0xb5, 0x94, 0x4b, 0xfe, 0xf9, 0xdc, 0xc8, 0x8f, 0x94, 0xd9, 0x36, 0x50, 0xbb, 0xbb, 0x08, 0x51, 0xb9, 0x7d, 0xdc, 0x43, 0x3e, 0x45, 0x21, 0xc6, 0x00, 0x90, 0x49, 0x70, 0xe2, 0xbf, 0x55, 0xaa, 0x90, 0x1e, 0x1a, 0xaa, 0xaf, 0x06, 0x81, 0x83, 0x77, 0xf8, 0x4a, 0x28, 0xe0, 0x33, 0xa4, 0x9e, 0xeb, 0xc2, 0x1f, 0xfe, 0x9c, 0xff, 0x3c, 0xbe, 0xfd, 0x09, 0x63, 0xfb, 0xed, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9599 = { .name = "ecdsa_secp384r1_sha512_9599", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9599_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9599_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9599_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9600 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9600_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9600_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9600_sig[] = { 0x72, 0xa9, 0xba, 0xb3, 0x0f, 0x8d, 0xa1, 0x43, 0x7f, 0x17, 0x11, 0x5c, 0xc3, 0x7b, 0x6e, 0xf8, 0xcf, 0x65, 0x91, 0xed, 0x93, 0x4d, 0x59, 0x66, 0x75, 0xad, 0x7b, 0x00, 0x0c, 0x6a, 0x74, 0xcc, 0xa5, 0xf3, 0x72, 0x10, 0xa6, 0x82, 0x28, 0xa5, 0x80, 0x23, 0x79, 0x0e, 0x37, 0x26, 0xc3, 0x57, 0x12, 0xd6, 0x97, 0xc4, 0xe2, 0x0b, 0x18, 0xf6, 0x3a, 0x3e, 0x01, 0x64, 0xdc, 0xa8, 0xca, 0x4a, 0x5f, 0xa0, 0x05, 0x8a, 0xd7, 0xcd, 0x1c, 0x57, 0x1c, 0xef, 0x35, 0x6e, 0x85, 0xfd, 0x8f, 0x56, 0xab, 0x79, 0x63, 0xd8, 0xab, 0xa8, 0x24, 0xe8, 0xd3, 0x1e, 0xfb, 0x3e, 0x69, 0x0c, 0x27, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9600 = { .name = "ecdsa_secp384r1_sha512_9600", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9600_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9600_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9600_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9601 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9601_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9601_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9601_sig[] = { 0x33, 0xb7, 0x10, 0x5f, 0x4c, 0xc9, 0x8a, 0x1e, 0xa2, 0xab, 0xad, 0x45, 0xdb, 0xbe, 0x37, 0x61, 0xb4, 0x61, 0x3d, 0xdd, 0x35, 0x0e, 0x62, 0xda, 0x91, 0x56, 0x0d, 0xa6, 0x94, 0xbe, 0x3e, 0x84, 0xb1, 0x68, 0x4f, 0x9a, 0x8e, 0xe4, 0xb3, 0xf5, 0x56, 0xc6, 0x1d, 0x02, 0xaf, 0x54, 0x44, 0x62, 0x2c, 0x86, 0xe3, 0xa2, 0x16, 0xdc, 0x7d, 0xd7, 0x84, 0xcd, 0xcb, 0xf5, 0x08, 0x4b, 0xdf, 0x6c, 0xdc, 0x1c, 0x7e, 0x67, 0xdb, 0xd6, 0x1f, 0x9f, 0x6e, 0xd1, 0x61, 0xfd, 0xa4, 0xd4, 0xc2, 0x61, 0x67, 0xe5, 0xb1, 0x27, 0x31, 0xcf, 0x2b, 0x0c, 0xf5, 0xd9, 0xa5, 0xf0, 0xb6, 0x12, 0x49, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9601 = { .name = "ecdsa_secp384r1_sha512_9601", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9601_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9601_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9601_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9602 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9602_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9602_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9602_sig[] = { 0x25, 0x2e, 0x3b, 0x5b, 0x60, 0xb8, 0xf8, 0x07, 0x48, 0xb8, 0x36, 0x23, 0xe3, 0x00, 0x13, 0x72, 0x31, 0x15, 0xca, 0xbc, 0xc4, 0x87, 0x70, 0xc0, 0xab, 0x6e, 0x7e, 0xe2, 0x9c, 0x42, 0x9e, 0xf1, 0xd9, 0xda, 0x78, 0xdb, 0x3a, 0x9a, 0x85, 0x04, 0x13, 0x3b, 0x9b, 0xd6, 0xfe, 0xce, 0xb8, 0x25, 0x1b, 0xa7, 0x40, 0xf8, 0x79, 0x07, 0xcf, 0x6d, 0x45, 0x00, 0x80, 0xf7, 0x80, 0x7a, 0x50, 0xf2, 0x1c, 0x31, 0xcd, 0x24, 0x5d, 0xd3, 0x0f, 0x95, 0x84, 0x9a, 0x16, 0x8d, 0x63, 0xb3, 0x76, 0x28, 0xe8, 0x04, 0x3c, 0x29, 0x2a, 0xb7, 0xf1, 0x30, 0xa4, 0x46, 0x8e, 0xaf, 0x8b, 0x47, 0xe5, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9602 = { .name = "ecdsa_secp384r1_sha512_9602", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9602_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9602_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9602_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9603 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9603_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9603_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9603_sig[] = { 0xb8, 0x69, 0x4d, 0xbf, 0x83, 0x10, 0xcc, 0xd7, 0x83, 0x98, 0xa1, 0xcf, 0xfa, 0x51, 0x49, 0x3f, 0x95, 0xe3, 0x31, 0x7f, 0x23, 0x82, 0x91, 0x77, 0x1c, 0xb3, 0x31, 0xf8, 0xe3, 0xa9, 0x75, 0x37, 0x74, 0xae, 0x3b, 0xe7, 0x8d, 0xf1, 0x6d, 0x22, 0xb3, 0xfb, 0xe9, 0xad, 0x45, 0xbe, 0xd7, 0x93, 0xda, 0xae, 0xad, 0x43, 0x1b, 0xbd, 0xbf, 0x8d, 0x82, 0x36, 0x8f, 0xbb, 0xd2, 0x47, 0x36, 0x95, 0x68, 0x32, 0x06, 0xee, 0x67, 0x09, 0x2c, 0x14, 0x6b, 0x26, 0x6e, 0xd3, 0x2f, 0x56, 0xb3, 0x1c, 0xb0, 0xf0, 0x33, 0xee, 0xbf, 0x6c, 0x75, 0x11, 0x87, 0x30, 0xee, 0xf7, 0xb7, 0xf9, 0x6b, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9603 = { .name = "ecdsa_secp384r1_sha512_9603", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9603_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9603_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9603_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9604 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9604_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9604_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9604_sig[] = { 0xd3, 0x7b, 0xa3, 0x9c, 0xd1, 0xb5, 0x28, 0x9e, 0x7a, 0xa3, 0xf3, 0x3a, 0xfe, 0xfa, 0x4d, 0xf6, 0x82, 0x1a, 0x07, 0xd3, 0xe8, 0xee, 0x1c, 0x11, 0xe7, 0xdf, 0x03, 0x6c, 0x37, 0xe3, 0x62, 0x14, 0xbb, 0x90, 0x26, 0x46, 0x33, 0xd4, 0xc3, 0x95, 0x64, 0x4c, 0xd2, 0xcc, 0x25, 0x23, 0x83, 0x3f, 0x8b, 0x0d, 0x58, 0xed, 0x75, 0xaf, 0x59, 0xe2, 0xab, 0xbc, 0xec, 0x92, 0x26, 0x83, 0x6f, 0x17, 0x6b, 0x27, 0xda, 0x2d, 0x9f, 0x30, 0x94, 0xf2, 0xd4, 0xa0, 0x98, 0x98, 0x13, 0x64, 0x36, 0x23, 0x50, 0x25, 0x20, 0x8c, 0xf5, 0x44, 0x42, 0x65, 0xaf, 0x66, 0xfe, 0xd0, 0x5b, 0x3d, 0xc2, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9604 = { .name = "ecdsa_secp384r1_sha512_9604", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9604_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9604_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9604_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9605 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9605_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9605_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9605_sig[] = { 0xb4, 0xef, 0x41, 0x90, 0x20, 0xc0, 0xdc, 0xbd, 0xee, 0xee, 0xd7, 0x6c, 0x25, 0x55, 0x60, 0xf1, 0xed, 0x78, 0x3c, 0x0f, 0x9e, 0x7f, 0xce, 0xa4, 0xc0, 0x8a, 0x07, 0x14, 0xb9, 0xd1, 0xf4, 0x91, 0xfd, 0xa9, 0xae, 0x7b, 0xb1, 0xeb, 0x96, 0xd2, 0x94, 0xb0, 0x27, 0x99, 0xf8, 0x28, 0x61, 0x29, 0x8d, 0x98, 0x76, 0x11, 0x06, 0x3d, 0x2f, 0x28, 0xcb, 0x30, 0x9a, 0x56, 0xea, 0xf1, 0xea, 0x65, 0xf2, 0x7d, 0x95, 0xc9, 0x7b, 0x77, 0xa5, 0xf0, 0x37, 0xf2, 0xf9, 0x14, 0xfe, 0xd7, 0x28, 0x26, 0x7a, 0xaf, 0x62, 0xa3, 0x7f, 0x3c, 0x7b, 0x44, 0xfc, 0x4b, 0x15, 0x12, 0x5b, 0x34, 0x98, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9605 = { .name = "ecdsa_secp384r1_sha512_9605", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9605_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9605_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9605_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9606 for ECDSA, tcId is 127 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9606_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9606_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9606_sig[] = { 0xb2, 0xdf, 0x7b, 0x11, 0xcf, 0x60, 0xac, 0x93, 0xc0, 0x78, 0xd1, 0x9f, 0x37, 0xf8, 0x89, 0x71, 0x7a, 0xa5, 0xd9, 0xaf, 0x1d, 0x00, 0xd0, 0x96, 0x4f, 0x9e, 0x9f, 0x52, 0x57, 0xc3, 0xb5, 0x1b, 0x3d, 0x3e, 0x47, 0xca, 0x5b, 0x5a, 0xa7, 0x20, 0x58, 0xed, 0x63, 0xb5, 0x24, 0x64, 0xe5, 0x82, 0xb5, 0x24, 0x96, 0x8e, 0xa8, 0xc5, 0x8d, 0x37, 0x9e, 0x38, 0xf4, 0xcf, 0xa9, 0xda, 0x15, 0x27, 0xa2, 0xac, 0xb2, 0x6d, 0x60, 0x5d, 0x22, 0xf1, 0x73, 0xfc, 0xf1, 0xe8, 0x34, 0xdb, 0x0d, 0x7f, 0x03, 0x1c, 0xb9, 0x24, 0x5c, 0xb6, 0x2b, 0x84, 0x58, 0xff, 0x49, 0x9b, 0x8d, 0x3d, 0xec, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9606 = { .name = "ecdsa_secp384r1_sha512_9606", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9606_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9606_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9606_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9607 for ECDSA, tcId is 128 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9607_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9607_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9607_sig[] = { 0xe0, 0xed, 0xc0, 0x8b, 0x41, 0x22, 0xb7, 0x5e, 0xbb, 0xd1, 0x63, 0x5d, 0x07, 0xf0, 0xbb, 0x55, 0x77, 0x1b, 0xda, 0x15, 0x57, 0x3a, 0x50, 0x81, 0xda, 0x97, 0x19, 0x55, 0xf9, 0xa6, 0x3f, 0x6d, 0xec, 0xdd, 0x49, 0x19, 0x91, 0x1d, 0xbf, 0xea, 0x50, 0x3e, 0xa8, 0xed, 0x1f, 0xaa, 0xd9, 0x3d, 0xca, 0x78, 0x50, 0xc7, 0x4c, 0xe8, 0x78, 0x58, 0x70, 0x56, 0x20, 0x6c, 0x59, 0x0a, 0x10, 0x97, 0xd1, 0x97, 0xa2, 0x09, 0x0c, 0xfe, 0x3e, 0x05, 0x7b, 0xec, 0xfa, 0x27, 0x00, 0xc7, 0xa5, 0x31, 0x62, 0x3a, 0xe7, 0x33, 0x1e, 0x16, 0x3d, 0xef, 0x69, 0x3e, 0x26, 0xa9, 0x7f, 0xeb, 0x54, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9607 = { .name = "ecdsa_secp384r1_sha512_9607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9607_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9607_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9607_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9608 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9608_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9608_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9608_sig[] = { 0x68, 0xf5, 0x55, 0xee, 0xf5, 0xa3, 0x23, 0xa9, 0x29, 0x71, 0x9b, 0xfd, 0x8c, 0xf8, 0x1d, 0x6d, 0x8a, 0x97, 0x7e, 0xcb, 0x35, 0xde, 0xfd, 0x86, 0xfa, 0x54, 0xd8, 0xe5, 0x74, 0x9c, 0x7b, 0x5f, 0x3e, 0x80, 0x08, 0x7f, 0xbd, 0x39, 0xf8, 0xaa, 0x0c, 0xd2, 0x9d, 0x83, 0x10, 0xbd, 0x65, 0x78, 0xe2, 0xc2, 0x31, 0x4a, 0x50, 0xfc, 0x0a, 0xd7, 0x8c, 0x1e, 0xc0, 0x2e, 0xa7, 0x7e, 0xe2, 0xe1, 0x3d, 0xce, 0xf1, 0x46, 0x09, 0x57, 0xc6, 0xb5, 0x73, 0xf7, 0x21, 0xd7, 0x2c, 0x20, 0x9a, 0xc5, 0xfb, 0x52, 0x9a, 0xb2, 0x03, 0x97, 0x23, 0x4c, 0x59, 0xed, 0x44, 0xf6, 0x04, 0x00, 0x97, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9608 = { .name = "ecdsa_secp384r1_sha512_9608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9608_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9608_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9608_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9609 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9609_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9609_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9609_sig[] = { 0x9e, 0x33, 0x0e, 0x29, 0xf1, 0x81, 0x23, 0x81, 0x3e, 0x83, 0xb9, 0xc6, 0xab, 0xd6, 0x8d, 0xe9, 0x6a, 0x57, 0xf9, 0x7a, 0x40, 0x05, 0xb8, 0x8d, 0x5b, 0x47, 0x0a, 0x67, 0xa5, 0x41, 0xb6, 0xd3, 0xaf, 0x12, 0x12, 0x4c, 0xf8, 0x65, 0x8b, 0x75, 0x16, 0x71, 0xc6, 0x69, 0x8f, 0xb8, 0xb0, 0x21, 0xd2, 0x10, 0xfb, 0xa9, 0xbd, 0xe6, 0xef, 0x07, 0x7c, 0xa0, 0x6b, 0x75, 0xe1, 0xcf, 0x7c, 0xe8, 0xdd, 0x70, 0xb0, 0x8e, 0x9d, 0xd4, 0x2d, 0x81, 0xa2, 0x15, 0xef, 0x92, 0x72, 0xf1, 0x77, 0x9a, 0xe3, 0xe9, 0xf0, 0xde, 0xc5, 0x10, 0x57, 0x1d, 0x87, 0x23, 0x7c, 0xc6, 0xbf, 0x32, 0x03, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9609 = { .name = "ecdsa_secp384r1_sha512_9609", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9609_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9609_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9609_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9610 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9610_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9610_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9610_sig[] = { 0x48, 0x31, 0x92, 0x05, 0x6f, 0x75, 0x3f, 0x64, 0xdd, 0xf0, 0xf2, 0x10, 0x72, 0xb7, 0x3d, 0x68, 0x89, 0x3e, 0x6f, 0xa5, 0x43, 0x2c, 0x98, 0x1c, 0x7a, 0x19, 0x55, 0xb6, 0x59, 0x2a, 0x60, 0x45, 0xa5, 0xc1, 0xc5, 0x8c, 0x38, 0x3e, 0x70, 0x02, 0x3c, 0x34, 0xe0, 0x9b, 0x79, 0x64, 0xec, 0x8d, 0x94, 0xb0, 0x05, 0xd5, 0xf9, 0x8c, 0x4f, 0xd2, 0xad, 0x40, 0xff, 0x8e, 0x03, 0xa8, 0x59, 0x9f, 0x45, 0xe2, 0x06, 0x08, 0x21, 0x12, 0xf8, 0x34, 0xdf, 0x1d, 0x48, 0x50, 0x2d, 0x2a, 0xc6, 0x90, 0xcd, 0x32, 0x04, 0xf0, 0x07, 0x89, 0x13, 0x79, 0x4c, 0x9c, 0x39, 0x07, 0x7a, 0xd6, 0xc5, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9610 = { .name = "ecdsa_secp384r1_sha512_9610", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9610_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9610_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9610_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9611 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9611_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9611_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9611_sig[] = { 0x2b, 0x7e, 0xc1, 0x4f, 0xd7, 0x7c, 0x4b, 0x33, 0x23, 0x0d, 0xd0, 0xa4, 0xe2, 0x71, 0x0f, 0xbd, 0x30, 0x7e, 0x46, 0x9b, 0xae, 0xc5, 0x4b, 0x6f, 0x25, 0xda, 0xac, 0x7e, 0x19, 0x6b, 0x7b, 0x4b, 0x5d, 0xf2, 0x51, 0xcd, 0xdd, 0xba, 0x7b, 0xdc, 0x98, 0x36, 0xca, 0x13, 0x19, 0xbb, 0x90, 0x0b, 0x59, 0x00, 0x36, 0x19, 0x25, 0x86, 0xff, 0x66, 0xae, 0x9a, 0x28, 0x81, 0x99, 0xdb, 0x9d, 0x02, 0xbb, 0xd5, 0xb7, 0x03, 0xf8, 0xc3, 0x29, 0xa9, 0xa1, 0xf9, 0x86, 0x00, 0x1b, 0x19, 0x0f, 0x20, 0xae, 0x96, 0xfe, 0x8b, 0x63, 0x68, 0x1e, 0xda, 0x17, 0xba, 0xc2, 0xa5, 0x7f, 0xd4, 0x0f, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9611 = { .name = "ecdsa_secp384r1_sha512_9611", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9611_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9611_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9611_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9612 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9612_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9612_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9612_sig[] = { 0x26, 0x11, 0x48, 0x4e, 0x7f, 0xf4, 0x7d, 0xfa, 0xec, 0xe4, 0xaa, 0x88, 0x3d, 0xd7, 0x3f, 0x89, 0x18, 0x69, 0xe2, 0x78, 0x6f, 0x20, 0xc8, 0x7b, 0x98, 0x00, 0x55, 0xdd, 0xd7, 0x92, 0x07, 0x0c, 0x0d, 0x0d, 0x9a, 0x37, 0x08, 0x78, 0x12, 0x6b, 0xab, 0x89, 0xa4, 0x02, 0xb9, 0xea, 0x17, 0x3c, 0x4e, 0x00, 0x06, 0xb8, 0xaa, 0xbe, 0x9d, 0x6a, 0x3c, 0x30, 0x18, 0xd9, 0xc8, 0x7e, 0xae, 0x7f, 0x46, 0x46, 0x11, 0x87, 0xd3, 0xc2, 0x0b, 0x33, 0xe9, 0x75, 0xc8, 0x50, 0x59, 0x9e, 0xc1, 0xcb, 0x52, 0xc7, 0x6e, 0x1f, 0x50, 0x7e, 0x43, 0x9a, 0xfc, 0x43, 0xf9, 0xf6, 0x82, 0xe7, 0xa8, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9612 = { .name = "ecdsa_secp384r1_sha512_9612", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9612_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9612_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9612_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9613 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9613_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9613_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9613_sig[] = { 0x2d, 0x50, 0x4e, 0x38, 0xcd, 0xb1, 0xbb, 0x80, 0xbf, 0x29, 0xe0, 0x7a, 0xfb, 0xc6, 0x6a, 0xea, 0x73, 0x2a, 0xcc, 0xc8, 0x5a, 0x72, 0x20, 0x11, 0x06, 0x99, 0x88, 0xf2, 0x1e, 0xef, 0x68, 0x50, 0x84, 0xf5, 0x5e, 0xfa, 0x30, 0xbf, 0xe3, 0x24, 0x27, 0xeb, 0x86, 0x36, 0xdb, 0x91, 0x71, 0xb4, 0x88, 0x3e, 0x3d, 0x80, 0xd7, 0x66, 0xcc, 0xb2, 0x9e, 0x73, 0xa9, 0xe9, 0x29, 0x11, 0x19, 0x30, 0xda, 0x83, 0x53, 0xec, 0x69, 0x76, 0x97, 0x85, 0x63, 0x3f, 0xe1, 0xb4, 0x50, 0x5f, 0x90, 0x51, 0xe7, 0x8d, 0x50, 0xc7, 0x9a, 0x6b, 0x7c, 0x88, 0x5c, 0x10, 0xb1, 0x60, 0xbb, 0xb5, 0x7f, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9613 = { .name = "ecdsa_secp384r1_sha512_9613", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9613_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9613_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9613_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9614 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9614_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9614_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9614_sig[] = { 0x28, 0xdc, 0x1b, 0x63, 0xdc, 0x61, 0xec, 0xde, 0x75, 0x4f, 0xf4, 0x91, 0x37, 0x80, 0xe4, 0x86, 0x33, 0x91, 0x03, 0x17, 0x8e, 0x27, 0xd7, 0x61, 0x98, 0x7d, 0xac, 0x0b, 0x03, 0xc9, 0xbd, 0xf4, 0xa4, 0xa9, 0x6b, 0x86, 0x80, 0xfa, 0x07, 0xfc, 0x47, 0xae, 0x17, 0x5b, 0x78, 0x0e, 0x89, 0x6e, 0x5a, 0x98, 0x98, 0xee, 0xdf, 0x87, 0x81, 0xb9, 0xaf, 0xeb, 0x50, 0x6e, 0x02, 0x72, 0xa1, 0x2c, 0x0c, 0x79, 0xbb, 0x89, 0x3b, 0x8a, 0x58, 0x93, 0xc5, 0xa0, 0xa1, 0xbf, 0x43, 0x24, 0xd4, 0x6d, 0xde, 0x71, 0xa2, 0x45, 0xbe, 0x2f, 0xd8, 0xaa, 0x29, 0x75, 0xfd, 0xeb, 0x40, 0xad, 0xf8, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9614 = { .name = "ecdsa_secp384r1_sha512_9614", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9614_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9614_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9614_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9615 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9615_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9615_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9615_sig[] = { 0x4c, 0x97, 0x8a, 0x47, 0xb9, 0xe9, 0x44, 0x93, 0x37, 0x17, 0x8a, 0xa6, 0x41, 0x3a, 0x79, 0x4c, 0x4c, 0x9b, 0xf1, 0x82, 0xa4, 0x20, 0x62, 0x64, 0x6a, 0x46, 0x9b, 0x1d, 0x2c, 0x2c, 0x95, 0x62, 0x1e, 0x81, 0x8e, 0x66, 0x13, 0x52, 0xb0, 0x7e, 0x63, 0x25, 0x4b, 0x69, 0x54, 0xe1, 0x45, 0x98, 0x69, 0x97, 0x34, 0x5f, 0x05, 0xcf, 0xc0, 0x5c, 0x0f, 0xd4, 0xd1, 0xdd, 0x13, 0x3e, 0x55, 0x5e, 0x5e, 0x50, 0x02, 0xe0, 0x92, 0x9a, 0x59, 0xf6, 0x0b, 0xbf, 0xfc, 0x35, 0x42, 0x34, 0x78, 0x3e, 0xbf, 0x4f, 0xe5, 0xdb, 0x10, 0xa8, 0x70, 0x95, 0x2c, 0xab, 0xd4, 0x53, 0x63, 0x5c, 0x10, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9615 = { .name = "ecdsa_secp384r1_sha512_9615", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9615_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9615_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9615_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9616 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9616_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9616_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9616_sig[] = { 0x36, 0xd8, 0xe2, 0xcf, 0xc8, 0x0d, 0x04, 0x36, 0xe1, 0xfa, 0xd3, 0x70, 0x2e, 0xc0, 0x5a, 0xa1, 0x38, 0x61, 0x8c, 0xdb, 0x74, 0x56, 0x52, 0xcb, 0x85, 0xb0, 0xb1, 0x21, 0xee, 0x10, 0x7b, 0xdf, 0x1a, 0xde, 0x04, 0x64, 0xdc, 0x0c, 0x6b, 0xd1, 0x68, 0x75, 0xbc, 0xc3, 0x64, 0x04, 0x4d, 0x8c, 0x89, 0x8b, 0x87, 0x75, 0xc9, 0xb3, 0x9a, 0xa9, 0xfd, 0x13, 0x0b, 0x5a, 0xb7, 0x7e, 0x6c, 0x46, 0x2c, 0xed, 0x61, 0x14, 0x89, 0x80, 0x45, 0xb7, 0xf6, 0x06, 0x14, 0x22, 0x77, 0xd9, 0xeb, 0x2a, 0xa8, 0x97, 0xf2, 0x4c, 0x9b, 0xa4, 0xc8, 0xd1, 0x12, 0x11, 0x1d, 0xe0, 0x4d, 0xc5, 0x7c, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9616 = { .name = "ecdsa_secp384r1_sha512_9616", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9616_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9616_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9616_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9617 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9617_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9617_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9617_sig[] = { 0xce, 0x2b, 0xdc, 0xf9, 0x24, 0xca, 0xaa, 0x81, 0xe7, 0x9b, 0xd7, 0xdd, 0x98, 0x3d, 0xfe, 0xee, 0xe9, 0x16, 0x52, 0xe4, 0xea, 0x6e, 0xdd, 0x07, 0x7f, 0x8b, 0x56, 0xad, 0xa4, 0x95, 0x37, 0x33, 0xa2, 0x2d, 0xd3, 0xa6, 0x33, 0x64, 0x46, 0xa6, 0x48, 0xae, 0xc4, 0xff, 0xc3, 0x67, 0xcb, 0x3e, 0x08, 0xeb, 0x09, 0xfa, 0xee, 0xf4, 0xb0, 0xe5, 0xc1, 0x26, 0x2e, 0xda, 0x21, 0x27, 0x46, 0x4f, 0x7e, 0x29, 0x81, 0xea, 0x17, 0x36, 0xe8, 0x0a, 0xfc, 0x7c, 0x62, 0x24, 0x61, 0xc3, 0xd2, 0x6f, 0xe0, 0x86, 0x94, 0xfb, 0x49, 0x14, 0xce, 0x9d, 0xbb, 0xa8, 0x37, 0x04, 0xe3, 0x07, 0x7b, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9617 = { .name = "ecdsa_secp384r1_sha512_9617", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9617_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9617_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9617_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9618 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9618_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9618_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9618_sig[] = { 0xe3, 0xa1, 0xb4, 0xb0, 0x56, 0x7d, 0x6c, 0x66, 0x4d, 0xec, 0x02, 0xf3, 0xee, 0x9c, 0xd8, 0x58, 0x11, 0x29, 0x04, 0x69, 0x44, 0xb0, 0xe6, 0x65, 0x0f, 0x6e, 0x6a, 0x41, 0xb5, 0xd9, 0xd4, 0xbf, 0x79, 0xd7, 0xa6, 0xfd, 0x54, 0xea, 0x5a, 0x21, 0x84, 0x92, 0xcf, 0xa1, 0xbb, 0x03, 0xca, 0x07, 0x98, 0x62, 0x06, 0x92, 0x5c, 0xbf, 0xa1, 0x86, 0xc7, 0xd8, 0x8f, 0x71, 0x00, 0xd8, 0x7d, 0xd3, 0xb2, 0xd0, 0x3b, 0x87, 0x89, 0x30, 0x9a, 0x72, 0x2d, 0x58, 0x2f, 0x11, 0x9e, 0xef, 0x48, 0xcd, 0x0e, 0xa5, 0x46, 0x09, 0x17, 0xcf, 0x27, 0x24, 0x6c, 0x31, 0xf9, 0x0e, 0x28, 0x54, 0x04, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9618 = { .name = "ecdsa_secp384r1_sha512_9618", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9618_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9618_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9618_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9619 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9619_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9619_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9619_sig[] = { 0x95, 0xa5, 0xe2, 0x99, 0x40, 0xe4, 0x20, 0x99, 0xc4, 0x63, 0x7f, 0x4a, 0xe5, 0x1e, 0x7d, 0x1e, 0xc0, 0x2b, 0xe0, 0xdc, 0xfb, 0x0b, 0x62, 0x70, 0x30, 0x98, 0x4c, 0x35, 0xe4, 0x77, 0xe8, 0x0c, 0xc5, 0x7e, 0x7e, 0xef, 0x97, 0x0e, 0x38, 0x4d, 0xee, 0x16, 0xa9, 0xb9, 0xfc, 0x8f, 0x2b, 0xf2, 0x0c, 0xa1, 0x66, 0xc3, 0x90, 0x33, 0x96, 0x53, 0xcd, 0xe8, 0x4e, 0x79, 0xa8, 0x7e, 0x5c, 0xeb, 0x4f, 0x52, 0xc1, 0xa5, 0x15, 0xa5, 0x87, 0x85, 0x42, 0xfd, 0x82, 0x70, 0x5b, 0x99, 0x83, 0x97, 0x6f, 0xd3, 0x1a, 0x41, 0x23, 0xb5, 0xd0, 0xbd, 0xe9, 0x5a, 0x08, 0x18, 0x11, 0x4c, 0xf4, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9619 = { .name = "ecdsa_secp384r1_sha512_9619", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9619_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9619_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9619_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9620 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9620_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9620_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9620_sig[] = { 0xc3, 0x0c, 0x49, 0xd0, 0xba, 0x13, 0x19, 0x44, 0xe2, 0x07, 0x5d, 0xaa, 0xcb, 0x12, 0x59, 0xd5, 0x58, 0x0a, 0x71, 0x2a, 0x08, 0xf7, 0x3d, 0x88, 0x9c, 0x4d, 0x3d, 0x48, 0x4d, 0x73, 0xdd, 0x97, 0x19, 0xa4, 0x39, 0xa9, 0x86, 0xf4, 0x8b, 0x07, 0x2c, 0x45, 0x95, 0xc5, 0x07, 0xa0, 0x10, 0x83, 0xa5, 0x59, 0x5c, 0x06, 0x91, 0xbc, 0x2d, 0x21, 0x5f, 0x98, 0x1f, 0xab, 0x51, 0x3e, 0x3a, 0x88, 0xa4, 0x52, 0xf2, 0xa1, 0x43, 0x33, 0x67, 0xb9, 0x9b, 0x02, 0xb6, 0xef, 0xe5, 0x07, 0x51, 0x9a, 0xfe, 0xdb, 0xe1, 0xad, 0x03, 0x37, 0x89, 0x99, 0x44, 0xe2, 0x9c, 0x9c, 0xcc, 0xcb, 0x24, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9620 = { .name = "ecdsa_secp384r1_sha512_9620", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9620_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9620_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9620_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9621 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9621_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9621_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9621_sig[] = { 0x9f, 0xd0, 0x58, 0x5f, 0x87, 0x40, 0x66, 0x98, 0x85, 0xc1, 0x62, 0x84, 0x2b, 0xba, 0x25, 0x32, 0x3e, 0xa1, 0x2b, 0x1d, 0x05, 0xe5, 0x24, 0xbb, 0x94, 0x5c, 0xad, 0x4e, 0x31, 0x53, 0x87, 0x42, 0xed, 0xa5, 0x12, 0x8f, 0x46, 0x7b, 0x3c, 0x56, 0x2c, 0x5f, 0x0a, 0x99, 0x01, 0x9d, 0x34, 0x06, 0x43, 0xac, 0xfa, 0xdd, 0x03, 0x91, 0x5c, 0x23, 0x50, 0xe1, 0xd8, 0xe5, 0x14, 0xc4, 0x7e, 0xb3, 0x6f, 0x3c, 0x34, 0x56, 0x16, 0x9c, 0x9a, 0x56, 0x2a, 0x62, 0x62, 0xc1, 0xc2, 0xd7, 0xd3, 0x33, 0x78, 0xbf, 0x9f, 0xec, 0x7f, 0x22, 0x02, 0x39, 0xd5, 0xc6, 0x1e, 0x06, 0x41, 0x44, 0x14, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9621 = { .name = "ecdsa_secp384r1_sha512_9621", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9621_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9621_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9621_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9622 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9622_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9622_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9622_sig[] = { 0x4e, 0xca, 0xc0, 0xcd, 0xbf, 0x66, 0x5c, 0x58, 0x4f, 0x8a, 0x40, 0x61, 0x4c, 0xd5, 0x5d, 0x04, 0x27, 0x06, 0xc5, 0x48, 0x95, 0xb1, 0xde, 0x02, 0x98, 0x4f, 0xe3, 0x09, 0x12, 0x25, 0x66, 0xc9, 0x59, 0xa4, 0xdd, 0x33, 0x15, 0xe7, 0xd3, 0xf0, 0x89, 0x87, 0x9f, 0x8f, 0x45, 0x82, 0x13, 0x36, 0x09, 0x18, 0x7d, 0xa6, 0x58, 0x7a, 0x3d, 0xe9, 0x0e, 0xba, 0x41, 0xf4, 0xe6, 0x51, 0x0e, 0x71, 0x1f, 0x44, 0x67, 0xf3, 0x12, 0x29, 0x71, 0x56, 0x6e, 0xcc, 0x39, 0xa4, 0xbd, 0x53, 0xe9, 0x5b, 0x8a, 0x19, 0x38, 0x0e, 0x20, 0xec, 0x2a, 0x7c, 0x75, 0x2d, 0x29, 0xde, 0x54, 0xfd, 0x2e, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9622 = { .name = "ecdsa_secp384r1_sha512_9622", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9622_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9622_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9622_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9623 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9623_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9623_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9623_sig[] = { 0x37, 0xa1, 0xba, 0x49, 0xf1, 0x1e, 0x97, 0xad, 0x0e, 0xc4, 0x7e, 0x68, 0x7c, 0x6c, 0x6e, 0x94, 0xf7, 0x94, 0xf8, 0x74, 0x72, 0x0c, 0x0d, 0xd2, 0xda, 0x50, 0x14, 0x37, 0xb5, 0x0e, 0x5b, 0x00, 0xfb, 0x6e, 0xd3, 0x3a, 0xdf, 0x7c, 0xf1, 0xf9, 0xc8, 0x70, 0xfd, 0x3d, 0x37, 0x16, 0x5b, 0xf7, 0xb3, 0xad, 0x08, 0xc9, 0x88, 0x6b, 0x4c, 0xa1, 0x59, 0x3a, 0x68, 0x93, 0x8b, 0x67, 0x14, 0x2c, 0x65, 0xed, 0x4d, 0xa1, 0x71, 0x4c, 0x22, 0x20, 0x4c, 0xba, 0x71, 0x30, 0x0c, 0x09, 0x4c, 0xcd, 0xbd, 0xf8, 0x4c, 0x38, 0xa3, 0xf6, 0xd8, 0x96, 0xdb, 0x72, 0xed, 0x50, 0x51, 0xa1, 0x92, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9623 = { .name = "ecdsa_secp384r1_sha512_9623", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9623_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9623_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9623_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9624 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9624_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9624_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9624_sig[] = { 0xa0, 0xab, 0xe8, 0x96, 0xd2, 0xf3, 0x02, 0x07, 0xbc, 0x9b, 0x21, 0xe7, 0x54, 0x00, 0xee, 0xdb, 0x88, 0xd3, 0x49, 0x8d, 0x49, 0x80, 0x6f, 0x41, 0xaa, 0x8e, 0x7f, 0x9b, 0xd8, 0x15, 0xa3, 0x33, 0x82, 0xf2, 0x78, 0xdb, 0x39, 0x71, 0x0c, 0x2c, 0xb0, 0x97, 0x93, 0x77, 0x90, 0xd0, 0x23, 0x6c, 0x9a, 0x29, 0xad, 0xed, 0x30, 0xe8, 0xce, 0x47, 0x90, 0x75, 0x62, 0x08, 0xd1, 0x20, 0x44, 0xe1, 0x8c, 0x34, 0x16, 0x86, 0x08, 0x02, 0x60, 0x00, 0xa8, 0x83, 0x04, 0x4d, 0xd0, 0xd9, 0x11, 0x09, 0xd8, 0x66, 0xb4, 0x22, 0xa0, 0x54, 0xc2, 0x32, 0x81, 0x0d, 0xdf, 0xbb, 0x2a, 0xe4, 0x40, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9624 = { .name = "ecdsa_secp384r1_sha512_9624", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9624_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9624_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9624_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9625 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9625_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9625_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9625_sig[] = { 0xb0, 0x24, 0xfc, 0x34, 0x79, 0xd0, 0xdd, 0xde, 0x1c, 0x9e, 0x06, 0xb6, 0x3c, 0x9b, 0xfb, 0x76, 0xa0, 0x0d, 0x0f, 0x2f, 0x55, 0x52, 0x20, 0xcb, 0x9a, 0x13, 0x11, 0xc2, 0xde, 0xec, 0x32, 0xeb, 0x3d, 0x6d, 0x2b, 0x64, 0x8f, 0x5e, 0x8c, 0x10, 0x4d, 0x5f, 0x88, 0x93, 0x17, 0x54, 0xc0, 0xc2, 0x76, 0x79, 0x50, 0xcc, 0x14, 0x96, 0x97, 0xed, 0xba, 0xe8, 0x36, 0xf9, 0x77, 0xbd, 0x38, 0xd8, 0x9d, 0x14, 0x1f, 0xf9, 0x77, 0x41, 0x47, 0xb1, 0x3d, 0xdd, 0x52, 0x5b, 0x7a, 0x3f, 0x3a, 0x14, 0xa8, 0x0d, 0x99, 0x79, 0x85, 0x6f, 0x65, 0xb9, 0x9a, 0x6f, 0xaf, 0xf1, 0x73, 0xb5, 0xd6, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9625 = { .name = "ecdsa_secp384r1_sha512_9625", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9625_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9625_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9625_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9626 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9626_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9626_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9626_sig[] = { 0x2a, 0x0a, 0xe7, 0xb5, 0xd4, 0x26, 0x45, 0x05, 0x12, 0x12, 0xca, 0xfb, 0x73, 0x39, 0xb9, 0xc5, 0x28, 0x3d, 0x1f, 0xd9, 0x88, 0x1d, 0x77, 0xad, 0x5c, 0x18, 0xd2, 0x5e, 0xe1, 0x09, 0x07, 0xb7, 0x80, 0x97, 0x40, 0xa5, 0x10, 0xe6, 0x5a, 0xec, 0xd6, 0x1b, 0x53, 0xba, 0x3a, 0x0f, 0x66, 0x0a, 0x4c, 0x04, 0x57, 0xdd, 0x19, 0xef, 0x6e, 0x4d, 0x6a, 0xe6, 0x5f, 0x45, 0x41, 0x7d, 0xdf, 0x1a, 0x58, 0xc0, 0x76, 0x63, 0xa8, 0x67, 0x37, 0xd2, 0x71, 0xbe, 0xcf, 0xa3, 0xea, 0x57, 0x24, 0xb6, 0x01, 0x8f, 0x1f, 0xa9, 0xe6, 0x4f, 0xd0, 0x86, 0x01, 0xa7, 0xdb, 0xd3, 0x95, 0x77, 0x61, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9626 = { .name = "ecdsa_secp384r1_sha512_9626", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9626_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9626_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9626_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9627 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9627_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9627_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9627_sig[] = { 0x0c, 0x16, 0x57, 0x32, 0x0f, 0xac, 0xa6, 0x66, 0x8c, 0x6e, 0x9f, 0x06, 0xf6, 0x57, 0xa3, 0x10, 0xb0, 0x19, 0x39, 0xa7, 0xd9, 0x64, 0x0f, 0xa0, 0x42, 0x98, 0x72, 0xfe, 0x28, 0xbd, 0x16, 0x67, 0x68, 0x8b, 0xc1, 0x62, 0x22, 0x12, 0x85, 0xec, 0xfb, 0x14, 0xe8, 0xd8, 0x06, 0x27, 0x45, 0x0a, 0xf5, 0x27, 0x2a, 0xa0, 0x8c, 0x32, 0x1a, 0xa4, 0xf7, 0xe5, 0x20, 0x82, 0x5c, 0xc7, 0x20, 0xf6, 0x51, 0x1d, 0x63, 0x55, 0x98, 0xc6, 0x48, 0xd4, 0xd5, 0x14, 0x66, 0x9b, 0x3a, 0xd8, 0x03, 0xad, 0x25, 0x9c, 0x79, 0x9e, 0x19, 0x5a, 0x09, 0x59, 0x82, 0xf6, 0x6c, 0x17, 0x64, 0x35, 0xbe, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9627 = { .name = "ecdsa_secp384r1_sha512_9627", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9627_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9627_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9627_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9628 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9628_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9628_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9628_sig[] = { 0xd8, 0x21, 0x79, 0x8a, 0x7a, 0x72, 0xbf, 0xb4, 0x83, 0xe6, 0xe9, 0x84, 0x0e, 0x8d, 0x92, 0x12, 0x00, 0xef, 0x19, 0x76, 0xb7, 0xe5, 0x14, 0x03, 0x6b, 0xf9, 0x13, 0x3a, 0x01, 0x74, 0x0c, 0xe3, 0x97, 0xc7, 0x3f, 0xa0, 0x46, 0x05, 0x44, 0x38, 0xc5, 0x80, 0x6c, 0x29, 0x4a, 0x02, 0xc6, 0x80, 0x8c, 0x5d, 0x12, 0x88, 0x7f, 0xcd, 0x94, 0x5b, 0xa1, 0x23, 0xfc, 0x5a, 0x56, 0x05, 0xd1, 0x3a, 0x5a, 0x3e, 0x7e, 0x78, 0x1a, 0xd6, 0x9c, 0x61, 0x03, 0x57, 0x7e, 0xe9, 0xdc, 0x47, 0xad, 0xc3, 0xe3, 0x9a, 0x21, 0x08, 0x0d, 0xd5, 0x03, 0x04, 0xb5, 0x9e, 0x5f, 0x5c, 0xf3, 0xf5, 0xa3, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9628 = { .name = "ecdsa_secp384r1_sha512_9628", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9628_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9628_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9628_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9629 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9629_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9629_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9629_sig[] = { 0xc9, 0x96, 0xbd, 0x6f, 0xa6, 0x3c, 0x95, 0x86, 0x77, 0x9f, 0x27, 0x52, 0x3d, 0x55, 0x83, 0x13, 0x5a, 0x59, 0x48, 0x08, 0x51, 0x4f, 0x98, 0xcc, 0x44, 0xca, 0xc1, 0xfa, 0x5c, 0xfa, 0x03, 0xc7, 0x8c, 0x7f, 0x12, 0xf7, 0x46, 0xc6, 0xbd, 0x20, 0x60, 0x8e, 0xcb, 0xe3, 0x06, 0x0e, 0xb0, 0x68, 0x27, 0xd4, 0x0a, 0x11, 0xd5, 0x23, 0x73, 0xdf, 0x30, 0x54, 0xa2, 0x8b, 0x0a, 0xb9, 0x8a, 0x91, 0xad, 0x68, 0x9d, 0x12, 0x11, 0xd6, 0x99, 0x19, 0xfc, 0x04, 0xca, 0xdc, 0x22, 0xff, 0x03, 0x67, 0xd3, 0xef, 0x94, 0x33, 0x01, 0x2a, 0x76, 0x0c, 0x1d, 0x1d, 0xf3, 0x71, 0x5c, 0x8d, 0x5c, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9629 = { .name = "ecdsa_secp384r1_sha512_9629", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9629_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9629_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9629_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9630 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9630_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9630_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9630_sig[] = { 0x42, 0xdd, 0x6c, 0x8d, 0x99, 0x59, 0x38, 0x70, 0x1a, 0x53, 0x89, 0x09, 0xed, 0x6a, 0xea, 0xe0, 0xba, 0x50, 0xc9, 0x95, 0x13, 0x8d, 0xe8, 0x4e, 0x19, 0x5b, 0xbb, 0x9c, 0x56, 0x18, 0x0e, 0x10, 0x8d, 0x4a, 0x62, 0x74, 0x54, 0x8c, 0x7b, 0xe6, 0xe1, 0x21, 0xc4, 0xd2, 0x18, 0xd2, 0xd4, 0xa0, 0xfa, 0xe8, 0x66, 0x8b, 0xb2, 0x00, 0x3f, 0x0d, 0xa1, 0xdc, 0x90, 0xbe, 0xc6, 0x7d, 0x35, 0x4c, 0xcb, 0xb8, 0x99, 0x43, 0x25, 0x99, 0xc3, 0x19, 0x8b, 0x96, 0xc5, 0xca, 0x4b, 0xd2, 0x32, 0x4c, 0x46, 0x99, 0x8f, 0x4f, 0xb7, 0x6a, 0x12, 0x34, 0x67, 0xcf, 0x24, 0x57, 0x0b, 0x1b, 0x69, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9630 = { .name = "ecdsa_secp384r1_sha512_9630", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9630_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9630_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9630_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9631 for ECDSA, tcId is 152 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9631_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9631_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9631_sig[] = { 0x06, 0x1f, 0x18, 0x56, 0x33, 0x29, 0x1b, 0x9a, 0x76, 0x8e, 0x15, 0xec, 0x03, 0xa2, 0xb7, 0xc3, 0x56, 0xc7, 0x57, 0xb0, 0x23, 0xb6, 0x1e, 0x31, 0x3f, 0xdf, 0x0c, 0x53, 0x49, 0xd1, 0x28, 0xa7, 0x86, 0x68, 0xd2, 0x0b, 0x25, 0x61, 0x70, 0x9b, 0x3b, 0xd8, 0x45, 0x1b, 0x92, 0x0f, 0x12, 0xab, 0x8f, 0xc5, 0xed, 0xc6, 0x64, 0x10, 0xdb, 0xf2, 0x0a, 0x7c, 0xbc, 0x34, 0x98, 0xe4, 0x05, 0x76, 0x17, 0x56, 0xed, 0x39, 0x86, 0x68, 0x56, 0xe7, 0x42, 0x56, 0xac, 0x1f, 0x25, 0x5f, 0x62, 0xb0, 0xed, 0xff, 0x51, 0x97, 0x62, 0xec, 0xdb, 0xbc, 0x83, 0x95, 0xd1, 0x47, 0x15, 0xc4, 0x38, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9631 = { .name = "ecdsa_secp384r1_sha512_9631", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9631_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9631_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9631_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9632 for ECDSA, tcId is 153 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9632_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9632_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9632_sig[] = { 0x69, 0x32, 0x6e, 0x04, 0x7c, 0x62, 0xe8, 0xba, 0xc5, 0xc0, 0x90, 0xb7, 0x6b, 0xf7, 0x3a, 0xe6, 0x52, 0xfa, 0x9a, 0x6a, 0xec, 0xfa, 0x1c, 0xcb, 0x87, 0x02, 0xf4, 0x19, 0x09, 0x4c, 0x97, 0x27, 0x51, 0x12, 0x64, 0xfb, 0x1a, 0xee, 0xc0, 0x0e, 0x42, 0x5c, 0x7a, 0x0d, 0x74, 0x67, 0x93, 0xd3, 0x9d, 0xbd, 0xdd, 0x22, 0xdb, 0x4a, 0x77, 0xdb, 0xe1, 0x61, 0x14, 0xbc, 0x6f, 0xbb, 0x98, 0x1a, 0xec, 0xba, 0x7e, 0x82, 0xa9, 0xcb, 0xc1, 0xed, 0x38, 0x5e, 0x28, 0xa5, 0x17, 0x93, 0x56, 0x17, 0x70, 0xfb, 0x3f, 0x96, 0x96, 0x09, 0x0e, 0xfc, 0xa2, 0x4f, 0x26, 0x8d, 0x87, 0x88, 0xf2, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9632 = { .name = "ecdsa_secp384r1_sha512_9632", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9632_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9632_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9632_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9633 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9633_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9633_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9633_sig[] = { 0x4c, 0xa1, 0xdf, 0x89, 0xb2, 0x3e, 0xd5, 0xef, 0xcd, 0xf6, 0x01, 0xd2, 0x95, 0xc4, 0x5e, 0x40, 0x2d, 0x78, 0x6a, 0x14, 0xd6, 0x2f, 0x72, 0x61, 0x10, 0x4e, 0x4c, 0xb0, 0x5b, 0x8c, 0xae, 0x17, 0xab, 0xb0, 0x95, 0x79, 0x9e, 0x71, 0x17, 0x38, 0x41, 0x74, 0x96, 0x15, 0xc8, 0x29, 0x41, 0x1b, 0x1b, 0xb7, 0x77, 0xe0, 0xa6, 0xfe, 0xe8, 0xa2, 0x33, 0x7a, 0x43, 0x6a, 0x6f, 0xa2, 0x6a, 0x48, 0x7d, 0xe4, 0x64, 0x0f, 0xf9, 0x7d, 0x57, 0xb4, 0x4b, 0x55, 0x30, 0x59, 0x89, 0x80, 0x38, 0x63, 0xd7, 0x48, 0xc7, 0x30, 0x2f, 0x2d, 0xfd, 0xe8, 0xb8, 0xce, 0xdd, 0x69, 0xbb, 0x60, 0x2e, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9633 = { .name = "ecdsa_secp384r1_sha512_9633", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9633_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9633_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha512_9633_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9634 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9634_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9634_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9634_sig[] = { 0x67, 0xbe, 0x1b, 0x06, 0xf6, 0x71, 0x72, 0xc5, 0x03, 0xa5, 0xac, 0x50, 0x58, 0x22, 0x35, 0xd3, 0x0b, 0xc9, 0x07, 0x9e, 0xaa, 0x4c, 0xde, 0xc6, 0x9a, 0x39, 0xc0, 0x96, 0x31, 0x0f, 0x8d, 0x99, 0x18, 0x6c, 0xc9, 0xaf, 0x7c, 0x8b, 0x43, 0x69, 0xa2, 0x91, 0xd3, 0xe9, 0x21, 0xd6, 0x07, 0x05, 0xab, 0x64, 0x5f, 0xc9, 0x1f, 0x06, 0xb1, 0xff, 0x7c, 0xc5, 0x8f, 0xcc, 0xf6, 0xf7, 0xcf, 0xac, 0x74, 0xdb, 0x30, 0xd8, 0x39, 0x74, 0x8a, 0x78, 0xcb, 0x5f, 0x3b, 0x8f, 0xef, 0xc7, 0xa0, 0x6f, 0x3b, 0x5f, 0xf0, 0x31, 0x0a, 0x85, 0x80, 0xc6, 0x05, 0x0b, 0xeb, 0xb7, 0x5e, 0xda, 0x97, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9634 = { .name = "ecdsa_secp384r1_sha512_9634", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9634_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9634_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9634_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9635 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9635_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9635_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9635_sig[] = { 0xd9, 0x66, 0x44, 0x2d, 0x6c, 0x29, 0xe5, 0xa4, 0xcc, 0x60, 0xe2, 0x37, 0x4e, 0xcc, 0xd3, 0x73, 0xdb, 0x3e, 0xbe, 0x40, 0x5e, 0xe7, 0xc9, 0x66, 0x4c, 0x42, 0x73, 0x10, 0x0c, 0xd1, 0x89, 0x9a, 0x1c, 0x58, 0x11, 0x04, 0x87, 0x52, 0x86, 0x16, 0xd8, 0xc5, 0x32, 0x1d, 0xbf, 0x52, 0x27, 0x64, 0x9b, 0xb0, 0xe4, 0xa2, 0xc0, 0x41, 0xa3, 0xb7, 0xb6, 0x72, 0x02, 0x9f, 0xe4, 0x80, 0xd1, 0x55, 0xf5, 0x76, 0x71, 0xec, 0xd6, 0xeb, 0x59, 0x86, 0x60, 0xd0, 0x25, 0xac, 0xce, 0x1f, 0x61, 0x3d, 0x03, 0xcd, 0x6c, 0xff, 0x4a, 0x21, 0x41, 0x31, 0xc8, 0xc7, 0xa8, 0xad, 0x22, 0xdf, 0x13, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9635 = { .name = "ecdsa_secp384r1_sha512_9635", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9635_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9635_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9635_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9636 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9636_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9636_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9636_sig[] = { 0x08, 0xa8, 0x4a, 0x2b, 0xc3, 0x9b, 0x08, 0x2a, 0xb8, 0x2e, 0x6e, 0x45, 0xf0, 0x88, 0xa3, 0x6f, 0x1c, 0xb2, 0x55, 0xf9, 0x7e, 0xc8, 0x12, 0x4e, 0xca, 0x92, 0x9d, 0x45, 0x06, 0xd7, 0xda, 0xb6, 0x39, 0x57, 0xc6, 0x47, 0x99, 0x4b, 0xe2, 0xc2, 0xc7, 0x34, 0x4f, 0x90, 0x2d, 0xe5, 0xb3, 0x8f, 0x0c, 0x96, 0x45, 0xe8, 0x4a, 0x30, 0x4b, 0xa0, 0x97, 0x0c, 0xa5, 0xce, 0x00, 0xb8, 0xc8, 0xa9, 0x71, 0xfa, 0x0d, 0x0b, 0xcb, 0xec, 0x6a, 0x70, 0x13, 0x48, 0x94, 0xc4, 0x4d, 0x30, 0x75, 0x03, 0x0f, 0xf0, 0x43, 0x33, 0xea, 0x38, 0x89, 0xf8, 0x47, 0xa1, 0xed, 0x76, 0x9e, 0xe6, 0x18, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9636 = { .name = "ecdsa_secp384r1_sha512_9636", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9636_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9636_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9636_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9637 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9637_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9637_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9637_sig[] = { 0x83, 0x00, 0x4b, 0x03, 0x42, 0x02, 0xbb, 0xf5, 0x1a, 0x32, 0x7d, 0x32, 0xed, 0x3d, 0xdf, 0x67, 0xb4, 0x6e, 0xda, 0x9b, 0xac, 0x69, 0x5a, 0x44, 0x22, 0x74, 0x4a, 0x4b, 0xd9, 0x9a, 0xaa, 0xc3, 0xb3, 0xe8, 0xed, 0x80, 0xdd, 0xac, 0x65, 0x38, 0x93, 0x9c, 0x93, 0x85, 0xd6, 0xc8, 0xf6, 0x16, 0x7b, 0x4e, 0x61, 0x92, 0x6c, 0xb9, 0xaf, 0xa8, 0xcd, 0xaa, 0xf4, 0x49, 0x09, 0xdf, 0x6d, 0xc6, 0x44, 0x98, 0x87, 0xd5, 0x9f, 0xe2, 0xac, 0xac, 0x05, 0xf7, 0x68, 0x4a, 0x23, 0x5f, 0xa7, 0x71, 0x79, 0xbd, 0xbc, 0xc6, 0x9f, 0xd8, 0xf3, 0x59, 0xe8, 0xed, 0xa1, 0x9e, 0x5a, 0x5d, 0x48, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9637 = { .name = "ecdsa_secp384r1_sha512_9637", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9637_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9637_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9637_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9638 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9638_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9638_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9638_sig[] = { 0xad, 0x93, 0x37, 0x5a, 0x1d, 0x37, 0x4c, 0x41, 0xe5, 0xde, 0x26, 0x8a, 0x8c, 0x08, 0xc2, 0x05, 0xff, 0x56, 0x52, 0x44, 0x5b, 0xfe, 0x3d, 0xdf, 0x4c, 0xa7, 0x7a, 0x70, 0xf5, 0x81, 0x9f, 0x9f, 0x06, 0xdb, 0x86, 0x1d, 0x82, 0xfc, 0x96, 0x37, 0x94, 0x6f, 0x0f, 0xe3, 0x84, 0x57, 0xf2, 0xbd, 0x4b, 0xc0, 0x43, 0xac, 0xbc, 0x6a, 0x68, 0xd4, 0x82, 0x4e, 0xd7, 0x68, 0xaf, 0x94, 0x76, 0xad, 0x5b, 0x93, 0xe4, 0xcb, 0x3b, 0xba, 0xc2, 0x84, 0xfb, 0x5f, 0xbd, 0x54, 0x8a, 0xe3, 0xb9, 0x6c, 0x26, 0x5c, 0x6d, 0x1e, 0xf4, 0x58, 0x8a, 0x3e, 0x2d, 0xa2, 0x1b, 0x12, 0x4c, 0x0d, 0x6b, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9638 = { .name = "ecdsa_secp384r1_sha512_9638", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9638_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9638_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9638_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9639 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9639_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9639_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9639_sig[] = { 0x9e, 0x0d, 0x45, 0xd2, 0xdc, 0x93, 0xfd, 0x36, 0x3d, 0xc9, 0x19, 0x40, 0x58, 0x18, 0xe3, 0x99, 0x22, 0xf3, 0xf9, 0xdd, 0x08, 0x27, 0xbc, 0xad, 0x86, 0xd4, 0xba, 0x80, 0xa4, 0x4b, 0x45, 0xa6, 0xf6, 0x0b, 0x8e, 0x59, 0x3b, 0x58, 0x0c, 0x91, 0x26, 0x2b, 0x32, 0x85, 0x9d, 0xbb, 0x1e, 0x53, 0xeb, 0x9b, 0x8d, 0xfe, 0x5b, 0xa4, 0xa0, 0x55, 0xa9, 0x74, 0xf1, 0x9b, 0x48, 0x8f, 0x3a, 0x6f, 0xa0, 0x71, 0x61, 0x00, 0x6a, 0xc9, 0x4e, 0xb1, 0xfe, 0x1c, 0x12, 0xdd, 0x0e, 0x20, 0xf3, 0xa7, 0xbe, 0x38, 0xa3, 0x7c, 0xe9, 0x6d, 0x67, 0x11, 0x83, 0xc5, 0x87, 0x12, 0x49, 0xb2, 0xa3, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9639 = { .name = "ecdsa_secp384r1_sha512_9639", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9639_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9639_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9639_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9640 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9640_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9640_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9640_sig[] = { 0x7a, 0x5d, 0x04, 0xcd, 0x2f, 0xda, 0x59, 0xd8, 0x56, 0x5c, 0x79, 0xea, 0x2a, 0x7f, 0x12, 0x89, 0xab, 0x79, 0xca, 0xe9, 0xfd, 0xe0, 0x60, 0x09, 0x4c, 0x80, 0x5c, 0x59, 0x1a, 0x25, 0x34, 0xe4, 0x39, 0x3e, 0x28, 0xc3, 0xfd, 0x85, 0x85, 0x29, 0xbf, 0x17, 0x64, 0x38, 0x46, 0xac, 0xeb, 0x83, 0x8d, 0xe0, 0xd8, 0xc0, 0x09, 0x2f, 0xd0, 0x2d, 0x55, 0x4a, 0xfe, 0x25, 0xf8, 0x14, 0x74, 0x4b, 0xea, 0xaa, 0x17, 0xc6, 0x94, 0x6a, 0x63, 0x87, 0xec, 0x70, 0x46, 0xb6, 0x02, 0xdb, 0x8a, 0x6c, 0x90, 0x02, 0x46, 0xc2, 0xfb, 0x63, 0xfc, 0xef, 0x2a, 0xc8, 0xd9, 0x39, 0x44, 0x44, 0xa0, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9640 = { .name = "ecdsa_secp384r1_sha512_9640", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9640_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9640_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9640_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9641 for ECDSA, tcId is 162 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9641_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9641_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9641_sig[] = { 0xa5, 0x64, 0xee, 0xa0, 0xcd, 0xac, 0x05, 0x1a, 0x76, 0x9f, 0x8f, 0xf1, 0xe0, 0xc8, 0x34, 0xa2, 0x88, 0xce, 0x51, 0x4f, 0x67, 0xd1, 0x38, 0x11, 0x37, 0x27, 0xb5, 0x3a, 0x1a, 0x6f, 0xc9, 0x5c, 0xe2, 0x37, 0x36, 0x7b, 0x91, 0xf1, 0xb9, 0x1b, 0x2f, 0x65, 0xd5, 0x89, 0xad, 0xc8, 0x28, 0x8e, 0x18, 0x2e, 0x5b, 0x47, 0xb6, 0xfb, 0xd8, 0xe7, 0x41, 0xa0, 0x4e, 0x80, 0x94, 0x87, 0xba, 0x5f, 0xcb, 0x8a, 0x5f, 0x2f, 0x1b, 0x9a, 0xf6, 0xce, 0x21, 0x41, 0x28, 0x62, 0x3a, 0x47, 0x68, 0xe3, 0x8e, 0x6d, 0xdc, 0x95, 0x8f, 0xf3, 0x90, 0x78, 0xc3, 0x6c, 0x04, 0xa3, 0x14, 0x70, 0x84, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9641 = { .name = "ecdsa_secp384r1_sha512_9641", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9641_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9641_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9641_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9642 for ECDSA, tcId is 163 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9642_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9642_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9642_sig[] = { 0x67, 0x58, 0x86, 0x7c, 0xd1, 0xca, 0x14, 0x46, 0xcc, 0x41, 0x04, 0x3d, 0x16, 0x25, 0xc9, 0x67, 0xa0, 0xae, 0x04, 0xd9, 0xdb, 0x17, 0xbb, 0xb4, 0x2f, 0xa9, 0xc0, 0x76, 0xb3, 0x59, 0x31, 0x25, 0xd6, 0x3c, 0xd3, 0xe7, 0x47, 0x1e, 0xe6, 0xcd, 0xba, 0x52, 0x35, 0xa2, 0x1c, 0xec, 0x2f, 0x22, 0x56, 0x3d, 0xb3, 0x87, 0xad, 0xb5, 0x37, 0xe1, 0xd8, 0x92, 0x31, 0xd9, 0x35, 0xac, 0x79, 0x03, 0x16, 0x92, 0x5a, 0xeb, 0x29, 0x13, 0x2b, 0x9f, 0x87, 0xbe, 0xe9, 0x11, 0x16, 0xc3, 0x3b, 0xf5, 0x09, 0x43, 0xfe, 0x39, 0xb6, 0x71, 0xce, 0x95, 0x35, 0xdc, 0xa0, 0xa5, 0xd2, 0x2b, 0xbf, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9642 = { .name = "ecdsa_secp384r1_sha512_9642", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9642_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9642_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9642_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9643 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9643_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9643_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9643_sig[] = { 0xcd, 0xe0, 0x33, 0xe3, 0x8d, 0x3f, 0x79, 0x1d, 0xb8, 0x7d, 0x8a, 0x69, 0x07, 0x51, 0x6b, 0xd8, 0x02, 0x1a, 0xcd, 0x47, 0xe8, 0x97, 0xdf, 0x68, 0x3f, 0xda, 0x52, 0x9d, 0x48, 0x05, 0x0f, 0x8b, 0x56, 0x88, 0xf6, 0x36, 0x1d, 0xaf, 0x1b, 0x14, 0xbc, 0x3f, 0x45, 0xfc, 0x7f, 0x76, 0x15, 0x0f, 0xe1, 0x4f, 0x48, 0x11, 0xa6, 0x67, 0xc8, 0x53, 0x35, 0xa4, 0x70, 0x9a, 0x58, 0x9e, 0xa4, 0x6b, 0xac, 0x72, 0x05, 0x5b, 0x79, 0x4e, 0xae, 0xa9, 0x2d, 0x28, 0xe8, 0x34, 0xd5, 0xbc, 0x45, 0x9c, 0x60, 0x5f, 0xe4, 0xf2, 0x7c, 0x1a, 0xb1, 0x8d, 0x18, 0x6d, 0x59, 0xe7, 0xd2, 0x05, 0xcb, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9643 = { .name = "ecdsa_secp384r1_sha512_9643", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9643_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9643_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9643_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9644 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9644_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9644_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9644_sig[] = { 0xf2, 0x38, 0x44, 0x68, 0xb5, 0x55, 0x53, 0xc6, 0x8f, 0x97, 0x64, 0xd8, 0x24, 0x8c, 0xfd, 0x73, 0x58, 0xd6, 0x04, 0xfa, 0x37, 0x7e, 0xbb, 0x13, 0x82, 0x8c, 0x43, 0xa8, 0xeb, 0xdf, 0x30, 0x8f, 0xbb, 0xbe, 0xbf, 0xa4, 0x9a, 0x94, 0x58, 0xbf, 0xda, 0x95, 0x7d, 0x20, 0x68, 0xd2, 0x4e, 0x3f, 0x1f, 0xdf, 0x48, 0x91, 0xd5, 0x6e, 0x3e, 0x90, 0xc0, 0x2b, 0x05, 0xc1, 0x4c, 0x27, 0xc1, 0x7f, 0x56, 0xf8, 0xe6, 0xaa, 0x14, 0x4f, 0x02, 0x32, 0x8c, 0x90, 0x10, 0x9e, 0x1f, 0x70, 0xc9, 0xe3, 0xf5, 0x82, 0xf0, 0xd2, 0x99, 0xc4, 0x4d, 0xa5, 0x05, 0xc5, 0x43, 0xcc, 0x89, 0xc6, 0xa9, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9644 = { .name = "ecdsa_secp384r1_sha512_9644", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9644_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9644_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9644_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9645 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9645_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9645_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9645_sig[] = { 0xb1, 0xcc, 0xaf, 0xed, 0xcc, 0x21, 0xba, 0x90, 0xb3, 0x42, 0xfa, 0x23, 0xc0, 0x14, 0x9f, 0x3d, 0x12, 0xa9, 0x39, 0xab, 0x6c, 0x33, 0x42, 0xb3, 0x6a, 0xe6, 0x1f, 0xdd, 0xbd, 0xc7, 0x53, 0x92, 0x7a, 0x7c, 0x3e, 0x97, 0x8b, 0xd7, 0x80, 0xcf, 0x25, 0xcd, 0x78, 0xc8, 0xc5, 0xef, 0xe2, 0x80, 0x4c, 0x32, 0xa7, 0x3f, 0x31, 0x57, 0xbb, 0xe2, 0x38, 0x40, 0x95, 0xeb, 0x67, 0x72, 0x6b, 0x9c, 0xd3, 0xc2, 0x62, 0x3b, 0x98, 0xa1, 0x82, 0xa3, 0xb4, 0xf0, 0x0e, 0x8d, 0xb9, 0x33, 0xe1, 0x11, 0x3b, 0x7a, 0xda, 0x26, 0x95, 0xa7, 0xd7, 0x9b, 0x47, 0x10, 0x26, 0x46, 0x2b, 0x20, 0xe2, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9645 = { .name = "ecdsa_secp384r1_sha512_9645", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9645_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9645_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9645_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9646 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9646_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9646_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9646_sig[] = { 0xf3, 0xed, 0x17, 0x0e, 0x44, 0x97, 0x58, 0x29, 0x9a, 0xe5, 0x5e, 0xb8, 0x52, 0x44, 0x74, 0x5e, 0x18, 0x76, 0x62, 0x1c, 0x1f, 0x70, 0x8e, 0x07, 0xe5, 0x5c, 0x0d, 0x2d, 0x9a, 0xb5, 0xf9, 0xaf, 0x9e, 0x0a, 0x8b, 0x3c, 0x7b, 0xdf, 0x89, 0x36, 0xab, 0x3c, 0x9e, 0xbd, 0x19, 0x08, 0xe9, 0xdc, 0xda, 0x62, 0xcc, 0xdb, 0x65, 0x88, 0x68, 0x14, 0x72, 0x86, 0xd7, 0x26, 0x9b, 0xcb, 0xd4, 0xad, 0xdb, 0x4d, 0xec, 0x9e, 0xa3, 0xd5, 0xd7, 0x9f, 0xdb, 0xe0, 0xcc, 0xff, 0xa4, 0x0d, 0x05, 0x51, 0x70, 0xbd, 0xde, 0xb4, 0xef, 0x4c, 0x5e, 0x0b, 0xc9, 0x9f, 0xae, 0x5d, 0xb6, 0x2b, 0x44, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9646 = { .name = "ecdsa_secp384r1_sha512_9646", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9646_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9646_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9646_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9647 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9647_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9647_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9647_sig[] = { 0x83, 0x45, 0x5f, 0xc4, 0x62, 0x9e, 0x76, 0x93, 0xc8, 0xe4, 0x95, 0xfe, 0xc2, 0xd2, 0x9b, 0xb2, 0x3b, 0xb6, 0xdb, 0x79, 0x18, 0x0f, 0xcf, 0xa8, 0x3a, 0x4f, 0x93, 0x10, 0xd9, 0xdb, 0x27, 0xe2, 0x92, 0x97, 0xde, 0xe2, 0x7e, 0xe8, 0x0a, 0x71, 0xab, 0x2f, 0x7a, 0x2d, 0x59, 0xf4, 0x8b, 0x88, 0x77, 0x36, 0xc0, 0x56, 0xc8, 0xf2, 0xbb, 0x57, 0xe9, 0xfb, 0x6b, 0x8d, 0xe0, 0xab, 0x6d, 0x09, 0x87, 0x9f, 0x66, 0x11, 0xe7, 0x37, 0x63, 0x4e, 0x7b, 0x63, 0x37, 0xaa, 0x5c, 0x5a, 0x01, 0xf5, 0x15, 0xd5, 0xe3, 0x70, 0x2d, 0xec, 0x9a, 0x70, 0x21, 0x77, 0xc8, 0x16, 0xe3, 0x2b, 0xac, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9647 = { .name = "ecdsa_secp384r1_sha512_9647", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9647_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9647_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9647_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9648 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9648_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9648_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9648_sig[] = { 0x74, 0x96, 0x15, 0x87, 0xcb, 0xe4, 0x9b, 0xbf, 0x0a, 0x73, 0xfe, 0xa8, 0x2b, 0x8b, 0x22, 0x42, 0xf6, 0x7b, 0x0e, 0xa0, 0x92, 0x24, 0x77, 0x46, 0x39, 0xf4, 0x37, 0xc6, 0x03, 0x78, 0xa3, 0x6b, 0x2d, 0x51, 0x1a, 0x91, 0x45, 0xd5, 0x76, 0xb4, 0x40, 0xdf, 0xfd, 0x1f, 0x02, 0x28, 0x6a, 0x8b, 0x8f, 0xb9, 0x5d, 0x46, 0xc2, 0x28, 0x89, 0x08, 0x5c, 0xc1, 0xd3, 0xe2, 0x0b, 0xcf, 0xbc, 0xbc, 0x52, 0xf4, 0x53, 0x24, 0x45, 0xf7, 0x6f, 0x08, 0xef, 0xae, 0x2d, 0xe8, 0xb5, 0x6f, 0xe8, 0x52, 0x52, 0x04, 0x64, 0x33, 0x30, 0xdf, 0xd2, 0x3c, 0xce, 0x94, 0x66, 0x87, 0xa0, 0xae, 0xf0, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9648 = { .name = "ecdsa_secp384r1_sha512_9648", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9648_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9648_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9648_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9649 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9649_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9649_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9649_sig[] = { 0xa3, 0xfd, 0x32, 0x23, 0x30, 0xd0, 0xf0, 0xef, 0xcc, 0xc5, 0x4b, 0xd7, 0xd7, 0x3c, 0x31, 0x59, 0xeb, 0x1b, 0xcc, 0xa0, 0x8c, 0xec, 0x36, 0x9a, 0x4a, 0x08, 0xfd, 0x00, 0xf9, 0xec, 0x6d, 0x48, 0x2c, 0xed, 0x58, 0xeb, 0x08, 0xa0, 0xd7, 0xc2, 0x11, 0x3b, 0xd5, 0x57, 0x5d, 0xe4, 0x91, 0x7d, 0x16, 0x4e, 0x32, 0x32, 0xa6, 0x28, 0xc4, 0x0f, 0xbb, 0xa1, 0xde, 0x82, 0xbf, 0xb9, 0x62, 0x7c, 0xec, 0x78, 0xa8, 0x04, 0x0c, 0xf3, 0x25, 0xa5, 0xa8, 0xbb, 0x8f, 0x86, 0x4c, 0x2a, 0xc1, 0x9e, 0x35, 0x24, 0xac, 0x93, 0xf4, 0xdb, 0x57, 0x13, 0xce, 0x62, 0xba, 0x25, 0x61, 0x76, 0xe0, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9649 = { .name = "ecdsa_secp384r1_sha512_9649", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9649_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9649_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9649_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9650 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9650_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9650_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9650_sig[] = { 0x4c, 0x86, 0x2f, 0xf9, 0xe4, 0xff, 0x88, 0xf9, 0xa5, 0x8e, 0x9f, 0xce, 0xaa, 0xf9, 0xbb, 0xb3, 0x07, 0x40, 0xd3, 0xf6, 0xc8, 0xc6, 0xa6, 0x9b, 0x56, 0x27, 0xfe, 0x23, 0x4b, 0x14, 0x4f, 0x8c, 0xdf, 0x09, 0x52, 0x07, 0x35, 0xcf, 0xd7, 0x08, 0xf5, 0xe3, 0x41, 0xa7, 0x8c, 0xc4, 0x87, 0x3d, 0xa8, 0x61, 0x97, 0x25, 0x14, 0xa0, 0xe9, 0x75, 0xcf, 0x2d, 0xa2, 0x14, 0x12, 0x5e, 0xc9, 0x32, 0x88, 0x52, 0x4c, 0xc7, 0x74, 0x92, 0xed, 0x63, 0xc5, 0x16, 0x42, 0x42, 0x78, 0xe5, 0xec, 0x8d, 0x41, 0x72, 0x44, 0x67, 0xcb, 0x7c, 0x31, 0x11, 0xfa, 0x34, 0xc6, 0x91, 0x93, 0xab, 0xb4, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9650 = { .name = "ecdsa_secp384r1_sha512_9650", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9650_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9650_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9650_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9651 for ECDSA, tcId is 172 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9651_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9651_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9651_sig[] = { 0x62, 0x22, 0x5e, 0x4e, 0x49, 0x2a, 0x97, 0x73, 0x39, 0x78, 0x70, 0x33, 0x61, 0x68, 0x96, 0x0a, 0x66, 0xb9, 0xe5, 0x03, 0x91, 0xef, 0x72, 0x89, 0xcb, 0x2d, 0x38, 0x78, 0xf3, 0x22, 0x52, 0xdc, 0x1b, 0x90, 0x4f, 0x66, 0x82, 0x54, 0x5e, 0x14, 0x56, 0x4e, 0x41, 0x5b, 0xd9, 0x3e, 0x01, 0x17, 0x9f, 0x4d, 0x03, 0x27, 0xf7, 0x9e, 0x04, 0x35, 0x05, 0xc6, 0x91, 0xe3, 0x61, 0xfa, 0x2e, 0x00, 0xf8, 0x7f, 0x41, 0x32, 0x47, 0x77, 0xec, 0xa6, 0x96, 0x6f, 0x4b, 0xea, 0x2f, 0xa0, 0x85, 0x88, 0x76, 0xaa, 0x01, 0x98, 0x0b, 0x2c, 0xad, 0x7f, 0x66, 0x03, 0x75, 0x24, 0xde, 0x49, 0xbf, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9651 = { .name = "ecdsa_secp384r1_sha512_9651", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9651_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9651_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9651_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9652 for ECDSA, tcId is 173 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9652_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9652_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9652_sig[] = { 0x45, 0x0c, 0x65, 0xd2, 0xd8, 0x8b, 0xa4, 0x64, 0xee, 0xe3, 0xa5, 0xce, 0x93, 0x10, 0xb5, 0x19, 0xd5, 0xdc, 0xf6, 0x08, 0x79, 0x9f, 0xb2, 0x27, 0x5e, 0xee, 0x98, 0x7a, 0x67, 0xc2, 0xc4, 0xd7, 0xac, 0x53, 0x71, 0x69, 0x87, 0xcc, 0x51, 0x39, 0xc1, 0x8c, 0x67, 0xef, 0x07, 0xb1, 0xe2, 0x07, 0x1e, 0xe0, 0x43, 0x93, 0x11, 0xa7, 0xbc, 0xe1, 0xc4, 0xfe, 0xd0, 0xa3, 0x15, 0x2d, 0x1b, 0x35, 0x4d, 0x96, 0x53, 0x6c, 0x6c, 0xa0, 0xc9, 0x18, 0x8a, 0xc1, 0xf1, 0xaf, 0xcc, 0x5c, 0xd7, 0x30, 0x5b, 0x56, 0x11, 0xef, 0x0d, 0x19, 0xd8, 0xbd, 0x57, 0xc5, 0x05, 0x99, 0x76, 0xdc, 0x5e, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9652 = { .name = "ecdsa_secp384r1_sha512_9652", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9652_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9652_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9652_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9653 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9653_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9653_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9653_sig[] = { 0xaa, 0x25, 0x75, 0xfb, 0x5b, 0xea, 0x0e, 0xff, 0xb5, 0x24, 0x7d, 0x20, 0xc3, 0xd0, 0x16, 0x5d, 0x57, 0x58, 0x31, 0x84, 0x0b, 0x5c, 0x18, 0xb0, 0x24, 0x5a, 0x99, 0xa6, 0x1b, 0x7a, 0xd5, 0xd7, 0xbf, 0x8a, 0x8c, 0xfc, 0xc3, 0x75, 0xe0, 0x95, 0xa8, 0x4e, 0x78, 0x10, 0x25, 0xbe, 0xe3, 0xee, 0x9c, 0x8b, 0x77, 0x97, 0xad, 0x33, 0x0a, 0xbc, 0x20, 0x60, 0x60, 0xb2, 0x8b, 0x6c, 0xa1, 0xc6, 0x39, 0xd8, 0x9f, 0x59, 0x58, 0x25, 0x28, 0xbd, 0xa1, 0x52, 0x7e, 0x3a, 0xb0, 0x81, 0x69, 0x7a, 0x2a, 0xb5, 0x76, 0xf9, 0xd0, 0x9c, 0x2e, 0xe3, 0x29, 0xdd, 0x73, 0x23, 0x16, 0x67, 0x30, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9653 = { .name = "ecdsa_secp384r1_sha512_9653", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9653_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9653_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9653_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9654 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9654_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9654_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9654_sig[] = { 0x01, 0xfc, 0x45, 0x28, 0x5a, 0xa2, 0xc2, 0xe5, 0x04, 0x58, 0x19, 0x9a, 0xde, 0x2d, 0xed, 0x0d, 0xd3, 0x6b, 0x1d, 0xe0, 0x3e, 0x89, 0x69, 0x17, 0x5b, 0xe4, 0xa6, 0xf0, 0x9f, 0x97, 0x19, 0xb1, 0x95, 0xde, 0xd8, 0xd9, 0xeb, 0x4e, 0xa1, 0x32, 0xd9, 0x5d, 0x19, 0xa3, 0x52, 0x8f, 0xd6, 0xc9, 0x59, 0x60, 0x9a, 0x35, 0x8c, 0x59, 0x19, 0xfe, 0xf4, 0x78, 0x10, 0x61, 0x80, 0x4d, 0x4d, 0x64, 0xa0, 0x67, 0xed, 0xec, 0xdc, 0xfd, 0x14, 0x62, 0x01, 0x61, 0xaa, 0xe3, 0xef, 0x27, 0x35, 0x09, 0x5a, 0x55, 0x8e, 0x4f, 0x8a, 0xe3, 0x45, 0x04, 0x01, 0x23, 0xf0, 0x93, 0xe5, 0xf7, 0x0a, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9654 = { .name = "ecdsa_secp384r1_sha512_9654", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9654_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9654_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9654_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9655 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9655_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9655_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9655_sig[] = { 0xd8, 0xe1, 0xf6, 0xb1, 0x9e, 0x5b, 0x92, 0xe3, 0x60, 0x60, 0xe5, 0x9e, 0x53, 0xee, 0xb7, 0x88, 0xa4, 0x75, 0x8c, 0x2c, 0x8e, 0xe9, 0x51, 0x9f, 0x39, 0x49, 0xd5, 0xf3, 0x31, 0x5a, 0xba, 0xfb, 0xe9, 0x37, 0xb8, 0xed, 0x44, 0xd4, 0x7e, 0x88, 0x6a, 0x07, 0xc1, 0x07, 0xaa, 0x8a, 0xc9, 0xf4, 0x12, 0x55, 0x05, 0x74, 0x31, 0x83, 0x71, 0xe5, 0x16, 0x8d, 0x0a, 0x33, 0x9f, 0x20, 0xfc, 0xac, 0xae, 0xc8, 0x7d, 0xb2, 0x11, 0xbb, 0xa4, 0xd4, 0xe7, 0xc7, 0xe0, 0x55, 0xb6, 0x3b, 0x75, 0xfd, 0x31, 0x79, 0x0a, 0xd2, 0x85, 0xf4, 0xcc, 0x06, 0x13, 0x78, 0x69, 0x2b, 0x0a, 0x24, 0x8e, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9655 = { .name = "ecdsa_secp384r1_sha512_9655", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9655_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9655_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9655_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9656 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9656_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9656_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9656_sig[] = { 0x48, 0x15, 0xae, 0xc4, 0x4a, 0x7a, 0x6b, 0x86, 0xae, 0x87, 0xfc, 0x25, 0x56, 0xac, 0xcd, 0x77, 0x83, 0x2f, 0xa3, 0x3a, 0x47, 0x10, 0xe0, 0x2e, 0xc5, 0xef, 0x6f, 0x41, 0xf6, 0x8a, 0x91, 0x0e, 0x6a, 0xf4, 0xd1, 0x73, 0xae, 0x46, 0x2a, 0x75, 0x9b, 0xd9, 0x80, 0x79, 0xb3, 0x71, 0xbf, 0x5d, 0x6e, 0x78, 0xd5, 0x62, 0xf9, 0xe8, 0xbe, 0x65, 0xe8, 0xd7, 0xa7, 0x4a, 0x73, 0x05, 0xe5, 0xd6, 0xcf, 0x2f, 0x3c, 0x4c, 0x98, 0x0f, 0x2b, 0x18, 0xdf, 0xb8, 0xe9, 0xc8, 0xb0, 0x13, 0x4e, 0xc8, 0x65, 0x48, 0x05, 0x3b, 0x3d, 0x12, 0x5e, 0x56, 0xd5, 0x87, 0x22, 0x94, 0xd2, 0xd1, 0x4e, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9656 = { .name = "ecdsa_secp384r1_sha512_9656", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9656_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9656_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9656_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9657 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9657_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9657_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9657_sig[] = { 0xd3, 0x02, 0xf9, 0xdb, 0x6b, 0x2d, 0x94, 0xe1, 0x94, 0x41, 0x2f, 0x0d, 0x40, 0xa1, 0x35, 0xa5, 0x54, 0xae, 0xe0, 0x14, 0xbd, 0x93, 0x9b, 0x3d, 0x7e, 0x45, 0xc1, 0x22, 0x1e, 0xf7, 0xce, 0x45, 0xc2, 0xae, 0xd8, 0x75, 0xf9, 0xa2, 0xbc, 0x43, 0xdb, 0xc8, 0x26, 0x4d, 0x92, 0xe4, 0x44, 0xa5, 0x04, 0xe7, 0x24, 0x7b, 0x25, 0x8c, 0x6e, 0x77, 0x39, 0x97, 0x9c, 0x0a, 0x07, 0x28, 0x2f, 0x62, 0x95, 0x8a, 0xc4, 0x5e, 0x52, 0xdd, 0x76, 0xa4, 0x1d, 0x5e, 0x1a, 0xca, 0x31, 0xa5, 0xcd, 0xa7, 0x3d, 0x7b, 0x02, 0x6d, 0x67, 0xb4, 0xd6, 0x09, 0x80, 0x30, 0x01, 0xcb, 0x66, 0x1d, 0x74, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9657 = { .name = "ecdsa_secp384r1_sha512_9657", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9657_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9657_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9657_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9658 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9658_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9658_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9658_sig[] = { 0x88, 0x9f, 0x0e, 0x2a, 0x6a, 0xe2, 0xdd, 0xca, 0xd1, 0xcd, 0xe3, 0xf6, 0x5b, 0x61, 0xd4, 0xdd, 0x40, 0x98, 0x59, 0x17, 0xba, 0x84, 0x1b, 0x47, 0xa1, 0xf8, 0x02, 0x49, 0x1f, 0x5a, 0xf5, 0x06, 0x77, 0x22, 0xb7, 0x68, 0x3d, 0xf0, 0xfc, 0xa7, 0xee, 0x19, 0xd2, 0xb7, 0x37, 0x24, 0xc8, 0xfd, 0x1f, 0x98, 0x9b, 0xac, 0x23, 0xb5, 0x1c, 0x49, 0xe5, 0xd7, 0xdc, 0xc3, 0x19, 0xee, 0xd2, 0xfc, 0x76, 0x7e, 0x9b, 0x43, 0x2b, 0xf7, 0x5a, 0xf9, 0x28, 0x14, 0xd9, 0xe6, 0x7a, 0x5d, 0x4b, 0x33, 0x98, 0xeb, 0x15, 0xe9, 0x8b, 0x70, 0x52, 0x7a, 0xbb, 0xc0, 0x29, 0xab, 0xc1, 0xbe, 0xa5, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9658 = { .name = "ecdsa_secp384r1_sha512_9658", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9658_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9658_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9658_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9659 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9659_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9659_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9659_sig[] = { 0xe6, 0x9c, 0x70, 0xc6, 0x79, 0x79, 0x5c, 0xa7, 0xd2, 0xb6, 0x6e, 0x26, 0x32, 0x52, 0x96, 0x51, 0xc1, 0x20, 0x05, 0x5f, 0xa3, 0xcf, 0x25, 0x43, 0x5f, 0xe8, 0xbb, 0x28, 0x98, 0x7c, 0x02, 0x41, 0x2c, 0xe7, 0x3e, 0x6c, 0xa5, 0xca, 0x7e, 0x0b, 0x42, 0xe9, 0x67, 0x0c, 0x0a, 0x58, 0x81, 0x75, 0xed, 0xd8, 0x51, 0x3b, 0xff, 0x40, 0xcd, 0xca, 0x9e, 0x22, 0x65, 0x92, 0x38, 0xfb, 0xce, 0xa2, 0xde, 0x2c, 0xae, 0xef, 0x53, 0xc5, 0x28, 0x7a, 0x51, 0x5d, 0xb9, 0x16, 0x8b, 0x30, 0x08, 0xec, 0x44, 0x6c, 0x9b, 0x94, 0xf2, 0x8a, 0x6e, 0x02, 0x1c, 0x69, 0xbc, 0x66, 0x37, 0xfc, 0x46, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9659 = { .name = "ecdsa_secp384r1_sha512_9659", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9659_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9659_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9659_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9660 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9660_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9660_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9660_sig[] = { 0x06, 0x8c, 0xbe, 0xcf, 0xd4, 0x7b, 0xfd, 0x68, 0x8f, 0x49, 0x5d, 0xf0, 0x5e, 0x45, 0xfd, 0x5f, 0xce, 0xd6, 0xd8, 0xe2, 0x40, 0x60, 0x5c, 0x5b, 0x2b, 0xe5, 0xe6, 0x93, 0x68, 0x74, 0x0b, 0x69, 0x4b, 0x9b, 0x1e, 0xa0, 0x34, 0xaf, 0x31, 0x80, 0xe5, 0x71, 0xdd, 0x38, 0xa8, 0x63, 0x69, 0xef, 0x1a, 0x1d, 0x29, 0x76, 0xf7, 0x48, 0xd1, 0x62, 0x11, 0x28, 0x01, 0x3c, 0x61, 0xab, 0xda, 0x53, 0x98, 0xa3, 0xe2, 0x4f, 0x00, 0x73, 0xd1, 0xa6, 0xe0, 0x7a, 0x1e, 0x96, 0xc1, 0x2b, 0xe4, 0xf1, 0xe2, 0xe7, 0xb1, 0x44, 0xf9, 0xb5, 0xa3, 0x50, 0x50, 0x0a, 0xcf, 0xc5, 0xcb, 0x06, 0x98, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9660 = { .name = "ecdsa_secp384r1_sha512_9660", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9660_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9660_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9660_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9661 for ECDSA, tcId is 182 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9661_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9661_sig[] = { 0x0e, 0x2c, 0x56, 0xeb, 0x5f, 0x66, 0x12, 0xf0, 0xc2, 0xb2, 0x2a, 0xb0, 0x3d, 0x57, 0xd9, 0xa4, 0x43, 0x07, 0x5a, 0x2b, 0x7a, 0x0b, 0x46, 0x08, 0x83, 0xe4, 0xf4, 0x87, 0x61, 0x21, 0xe9, 0xb6, 0xf1, 0xed, 0x67, 0xde, 0x20, 0xb7, 0x9f, 0x02, 0x8f, 0x7f, 0x66, 0xed, 0x02, 0x81, 0xdb, 0x71, 0x39, 0x16, 0xb7, 0x2b, 0x12, 0xd0, 0x35, 0xa3, 0x07, 0xb7, 0xc4, 0x5a, 0x98, 0x78, 0x33, 0x3a, 0x8c, 0x61, 0x44, 0x5a, 0xad, 0x23, 0x30, 0xdc, 0x49, 0xa1, 0x2b, 0x92, 0xe2, 0xe5, 0xda, 0xb7, 0x2e, 0x53, 0xe5, 0x78, 0x9f, 0x40, 0xaf, 0xb9, 0x0a, 0xea, 0x0e, 0xa4, 0x43, 0x1f, 0x2d, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9661 = { .name = "ecdsa_secp384r1_sha512_9661", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9661_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9661_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9661_sig, .siglen = 96, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 182 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9662 for ECDSA, tcId is 183 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9662_pubkey[] = { 0xca, 0x5e, 0xe4, 0x79, 0xad, 0x66, 0x24, 0xab, 0x58, 0x70, 0x53, 0x9a, 0x56, 0xa2, 0x3b, 0x38, 0x16, 0xee, 0xf7, 0xbb, 0xc6, 0x71, 0x56, 0x83, 0x6d, 0xfb, 0x58, 0xc4, 0x25, 0xfd, 0xb7, 0x21, 0x3e, 0x31, 0x77, 0x0f, 0x12, 0xb4, 0x31, 0x52, 0xe8, 0x87, 0xd8, 0x8a, 0x3a, 0xfb, 0x4b, 0x18, 0x2a, 0xce, 0xec, 0x92, 0xb3, 0x13, 0x9a, 0xca, 0x83, 0x96, 0x40, 0x2a, 0x8f, 0x81, 0xbb, 0x50, 0x14, 0xe7, 0x48, 0xea, 0xb2, 0xe2, 0x05, 0x9f, 0x86, 0x56, 0xa8, 0x83, 0xe6, 0x2d, 0x78, 0xb9, 0xdc, 0x98, 0x8b, 0x98, 0x33, 0x26, 0x27, 0xf9, 0x52, 0x32, 0xd3, 0x7d, 0xf2, 0x65, 0x85, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha512_9662_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9662_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9662 = { .name = "ecdsa_secp384r1_sha512_9662", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9662_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9662_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9662_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 183 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9663 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9663_pubkey[] = { 0xca, 0x5e, 0xe4, 0x79, 0xad, 0x66, 0x24, 0xab, 0x58, 0x70, 0x53, 0x9a, 0x56, 0xa2, 0x3b, 0x38, 0x16, 0xee, 0xf7, 0xbb, 0xc6, 0x71, 0x56, 0x83, 0x6d, 0xfb, 0x58, 0xc4, 0x25, 0xfd, 0xb7, 0x21, 0x3e, 0x31, 0x77, 0x0f, 0x12, 0xb4, 0x31, 0x52, 0xe8, 0x87, 0xd8, 0x8a, 0x3a, 0xfb, 0x4b, 0x18, 0x2a, 0xce, 0xec, 0x92, 0xb3, 0x13, 0x9a, 0xca, 0x83, 0x96, 0x40, 0x2a, 0x8f, 0x81, 0xbb, 0x50, 0x14, 0xe7, 0x48, 0xea, 0xb2, 0xe2, 0x05, 0x9f, 0x86, 0x56, 0xa8, 0x83, 0xe6, 0x2d, 0x78, 0xb9, 0xdc, 0x98, 0x8b, 0x98, 0x33, 0x26, 0x27, 0xf9, 0x52, 0x32, 0xd3, 0x7d, 0xf2, 0x65, 0x85, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha512_9663_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9663_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9663 = { .name = "ecdsa_secp384r1_sha512_9663", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9663_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9663_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9663_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 184 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9664 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9664_pubkey[] = { 0x70, 0xe6, 0xa9, 0x0b, 0x4e, 0x07, 0x6b, 0xf5, 0x1d, 0xfa, 0x01, 0xfa, 0x44, 0xde, 0x49, 0xb4, 0x48, 0xf7, 0xaf, 0xa0, 0xf3, 0xd0, 0x76, 0x77, 0xf1, 0x68, 0x2c, 0xa7, 0x76, 0xd4, 0x04, 0xb2, 0xa0, 0xfe, 0xef, 0x66, 0xb0, 0x05, 0xea, 0x28, 0xba, 0x99, 0xb6, 0xce, 0x21, 0xd0, 0xca, 0x12, 0x42, 0x4f, 0x7d, 0x17, 0x99, 0x51, 0xfb, 0x89, 0x15, 0x6c, 0xdf, 0x04, 0xae, 0xd6, 0xdb, 0x05, 0x6c, 0x98, 0x59, 0x2c, 0x65, 0x1b, 0x5a, 0x88, 0x1a, 0xbc, 0x34, 0xe2, 0x40, 0x11, 0x27, 0xfb, 0x81, 0xc6, 0x4e, 0x90, 0xce, 0xe8, 0x32, 0x69, 0xc5, 0x14, 0x1f, 0x9a, 0x3c, 0x7b, 0xce, 0x78, }; static const unsigned char ecdsa_secp384r1_sha512_9664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9664_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9664 = { .name = "ecdsa_secp384r1_sha512_9664", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9664_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9664_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9664_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 185 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9665 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9665_pubkey[] = { 0x5a, 0x56, 0x84, 0x74, 0x80, 0x5f, 0xbf, 0x9a, 0xcc, 0x1e, 0x57, 0x56, 0xd2, 0x96, 0x69, 0x62, 0x90, 0xb7, 0x3d, 0x4d, 0x1c, 0x3b, 0x19, 0x7f, 0x48, 0xaf, 0xf0, 0x3b, 0x91, 0x9f, 0x01, 0x11, 0x82, 0x3f, 0x90, 0xea, 0x02, 0x4a, 0xf1, 0xc7, 0x8e, 0x7c, 0x80, 0x3e, 0x22, 0x97, 0x66, 0x2d, 0x4c, 0x1c, 0x79, 0xed, 0xc9, 0xc6, 0x94, 0x62, 0x0c, 0x1f, 0x5b, 0x5c, 0xc7, 0xdd, 0x9f, 0xf8, 0x9a, 0x42, 0x44, 0x27, 0x47, 0x85, 0x7c, 0xac, 0xe2, 0x6b, 0x6e, 0xbc, 0x99, 0x96, 0x2e, 0xc3, 0xa6, 0x8a, 0x8e, 0x40, 0x72, 0x22, 0x6d, 0x6d, 0x98, 0xa2, 0xa8, 0x66, 0xdd, 0x97, 0xc2, 0x03, }; static const unsigned char ecdsa_secp384r1_sha512_9665_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9665_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9665 = { .name = "ecdsa_secp384r1_sha512_9665", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9665_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9665_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9665_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9666 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9666_pubkey[] = { 0x88, 0x53, 0x13, 0x82, 0x96, 0x3b, 0xfe, 0x4e, 0x17, 0x9f, 0x0b, 0x45, 0x7e, 0xcd, 0x44, 0x65, 0x28, 0xb9, 0x8d, 0x34, 0x9e, 0xdb, 0xd8, 0xe7, 0xd0, 0xf6, 0xc1, 0x67, 0x3b, 0x4a, 0xe2, 0xa7, 0x62, 0x9b, 0x33, 0x45, 0xa7, 0xea, 0xe2, 0xe7, 0xc4, 0x83, 0x58, 0xc1, 0x3b, 0xdb, 0xe0, 0x38, 0x93, 0x75, 0xc8, 0x49, 0xdd, 0x57, 0x1d, 0x91, 0xf2, 0xa3, 0xbf, 0x89, 0x94, 0xf5, 0x3f, 0x82, 0x26, 0x1f, 0x38, 0x17, 0x28, 0x06, 0xc4, 0xd7, 0x25, 0xde, 0x20, 0x29, 0xe8, 0x87, 0xbf, 0xe0, 0x36, 0xf3, 0x8d, 0x69, 0x85, 0xea, 0x5a, 0x22, 0xc5, 0x21, 0x69, 0xdb, 0x6e, 0x42, 0x13, 0xda, }; static const unsigned char ecdsa_secp384r1_sha512_9666_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9666_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9666 = { .name = "ecdsa_secp384r1_sha512_9666", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9666_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9666_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9666_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 187 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9667 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9667_pubkey[] = { 0x08, 0x0d, 0xa5, 0x7d, 0x67, 0xdb, 0xa4, 0x8e, 0xb5, 0x0e, 0xef, 0x48, 0x4c, 0xf6, 0x68, 0xd9, 0x81, 0xe1, 0xbf, 0x30, 0xc3, 0x57, 0xc3, 0xfd, 0x21, 0xa4, 0x3c, 0xdc, 0x41, 0xf2, 0x67, 0xc3, 0xf1, 0x86, 0xbf, 0x87, 0xe3, 0x68, 0x02, 0x39, 0xba, 0xc0, 0x99, 0x30, 0xf1, 0x44, 0x26, 0x3c, 0x5f, 0x28, 0x77, 0x7a, 0xd8, 0xbc, 0xbf, 0xc3, 0xeb, 0x03, 0x69, 0xe0, 0xf7, 0xb1, 0x83, 0x92, 0xa1, 0x23, 0x97, 0xa4, 0xfb, 0xe1, 0x5a, 0x2a, 0x1f, 0x6e, 0x2e, 0x5b, 0x40, 0x67, 0xc8, 0x26, 0x81, 0xc8, 0x9c, 0x73, 0xdb, 0x25, 0xec, 0xa1, 0x8c, 0x6b, 0x25, 0x76, 0x84, 0x29, 0xce, 0xf0, }; static const unsigned char ecdsa_secp384r1_sha512_9667_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9667_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9667 = { .name = "ecdsa_secp384r1_sha512_9667", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9667_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9667_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9667_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 188 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9668 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9668_pubkey[] = { 0x08, 0x0d, 0xa5, 0x7d, 0x67, 0xdb, 0xa4, 0x8e, 0xb5, 0x0e, 0xef, 0x48, 0x4c, 0xf6, 0x68, 0xd9, 0x81, 0xe1, 0xbf, 0x30, 0xc3, 0x57, 0xc3, 0xfd, 0x21, 0xa4, 0x3c, 0xdc, 0x41, 0xf2, 0x67, 0xc3, 0xf1, 0x86, 0xbf, 0x87, 0xe3, 0x68, 0x02, 0x39, 0xba, 0xc0, 0x99, 0x30, 0xf1, 0x44, 0x26, 0x3c, 0x5f, 0x28, 0x77, 0x7a, 0xd8, 0xbc, 0xbf, 0xc3, 0xeb, 0x03, 0x69, 0xe0, 0xf7, 0xb1, 0x83, 0x92, 0xa1, 0x23, 0x97, 0xa4, 0xfb, 0xe1, 0x5a, 0x2a, 0x1f, 0x6e, 0x2e, 0x5b, 0x40, 0x67, 0xc8, 0x26, 0x81, 0xc8, 0x9c, 0x73, 0xdb, 0x25, 0xec, 0xa1, 0x8c, 0x6b, 0x25, 0x76, 0x84, 0x29, 0xce, 0xf0, }; static const unsigned char ecdsa_secp384r1_sha512_9668_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9668_sig[] = { 0x02, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9668 = { .name = "ecdsa_secp384r1_sha512_9668", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9668_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9668_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9668_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 189 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9669 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9669_pubkey[] = { 0x0e, 0x74, 0xa0, 0x96, 0xd7, 0xf6, 0xee, 0x1b, 0xe9, 0xb4, 0x16, 0x0d, 0x6b, 0x79, 0xba, 0xba, 0x4d, 0x25, 0xb4, 0xfb, 0x6f, 0xbd, 0xd3, 0x8f, 0x5a, 0x9e, 0xd5, 0xcc, 0x1a, 0xc7, 0x99, 0x43, 0xbe, 0x71, 0xed, 0xe0, 0x93, 0xe5, 0x04, 0xc7, 0xdc, 0x08, 0x32, 0xda, 0xeb, 0x89, 0x8a, 0x05, 0xa8, 0xd0, 0x05, 0xb3, 0x0c, 0x89, 0x46, 0x86, 0xf6, 0xec, 0xb2, 0xbc, 0x69, 0x6e, 0x25, 0xef, 0xfa, 0xcc, 0xd3, 0xc9, 0xe4, 0xb4, 0x81, 0x22, 0xdb, 0x56, 0x7c, 0x01, 0x18, 0xa0, 0xb9, 0x83, 0xb7, 0x57, 0xc2, 0xf4, 0x00, 0x82, 0xdc, 0x37, 0x4f, 0x8f, 0x61, 0x17, 0xa8, 0xe7, 0x6f, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha512_9669_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9669_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9669 = { .name = "ecdsa_secp384r1_sha512_9669", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9669_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9669_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9669_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 190 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9670 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9670_pubkey[] = { 0x0e, 0x74, 0xa0, 0x96, 0xd7, 0xf6, 0xee, 0x1b, 0xe9, 0xb4, 0x16, 0x0d, 0x6b, 0x79, 0xba, 0xba, 0x4d, 0x25, 0xb4, 0xfb, 0x6f, 0xbd, 0xd3, 0x8f, 0x5a, 0x9e, 0xd5, 0xcc, 0x1a, 0xc7, 0x99, 0x43, 0xbe, 0x71, 0xed, 0xe0, 0x93, 0xe5, 0x04, 0xc7, 0xdc, 0x08, 0x32, 0xda, 0xeb, 0x89, 0x8a, 0x05, 0xa8, 0xd0, 0x05, 0xb3, 0x0c, 0x89, 0x46, 0x86, 0xf6, 0xec, 0xb2, 0xbc, 0x69, 0x6e, 0x25, 0xef, 0xfa, 0xcc, 0xd3, 0xc9, 0xe4, 0xb4, 0x81, 0x22, 0xdb, 0x56, 0x7c, 0x01, 0x18, 0xa0, 0xb9, 0x83, 0xb7, 0x57, 0xc2, 0xf4, 0x00, 0x82, 0xdc, 0x37, 0x4f, 0x8f, 0x61, 0x17, 0xa8, 0xe7, 0x6f, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha512_9670_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9670_sig[] = { 0x02, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9670 = { .name = "ecdsa_secp384r1_sha512_9670", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9670_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9670_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9670_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 191 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9671 for ECDSA, tcId is 192 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9671_pubkey[] = { 0xa2, 0xad, 0x0e, 0x27, 0xb4, 0x04, 0x10, 0xd1, 0x60, 0x77, 0xdd, 0xc5, 0xe4, 0x15, 0xf1, 0x09, 0xd3, 0x28, 0xbf, 0x75, 0xe7, 0x3a, 0x0f, 0x56, 0x87, 0x6f, 0xef, 0x73, 0x12, 0x85, 0xf8, 0x31, 0x88, 0xb2, 0x07, 0xa6, 0x86, 0x90, 0xa4, 0x0e, 0x76, 0xed, 0x23, 0xe2, 0xc5, 0xe4, 0x9f, 0xcf, 0x60, 0x4f, 0x1c, 0x5d, 0x7d, 0x7d, 0xf3, 0x65, 0x00, 0x5d, 0x40, 0xe2, 0x09, 0xf4, 0xda, 0x7b, 0xb0, 0x6f, 0x31, 0x0d, 0x5a, 0x16, 0x60, 0xad, 0x62, 0x36, 0x57, 0x7f, 0xbb, 0x47, 0x95, 0x52, 0x61, 0xf5, 0x07, 0xd2, 0x3b, 0x83, 0x01, 0x3f, 0xfb, 0x95, 0x1b, 0xd7, 0x69, 0x08, 0xe7, 0x6c, }; static const unsigned char ecdsa_secp384r1_sha512_9671_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9671_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9671 = { .name = "ecdsa_secp384r1_sha512_9671", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9671_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9671_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9671_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 192 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9672 for ECDSA, tcId is 193 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9672_pubkey[] = { 0xa2, 0xad, 0x0e, 0x27, 0xb4, 0x04, 0x10, 0xd1, 0x60, 0x77, 0xdd, 0xc5, 0xe4, 0x15, 0xf1, 0x09, 0xd3, 0x28, 0xbf, 0x75, 0xe7, 0x3a, 0x0f, 0x56, 0x87, 0x6f, 0xef, 0x73, 0x12, 0x85, 0xf8, 0x31, 0x88, 0xb2, 0x07, 0xa6, 0x86, 0x90, 0xa4, 0x0e, 0x76, 0xed, 0x23, 0xe2, 0xc5, 0xe4, 0x9f, 0xcf, 0x60, 0x4f, 0x1c, 0x5d, 0x7d, 0x7d, 0xf3, 0x65, 0x00, 0x5d, 0x40, 0xe2, 0x09, 0xf4, 0xda, 0x7b, 0xb0, 0x6f, 0x31, 0x0d, 0x5a, 0x16, 0x60, 0xad, 0x62, 0x36, 0x57, 0x7f, 0xbb, 0x47, 0x95, 0x52, 0x61, 0xf5, 0x07, 0xd2, 0x3b, 0x83, 0x01, 0x3f, 0xfb, 0x95, 0x1b, 0xd7, 0x69, 0x08, 0xe7, 0x6c, }; static const unsigned char ecdsa_secp384r1_sha512_9672_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9672_sig[] = { 0x02, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9672 = { .name = "ecdsa_secp384r1_sha512_9672", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9672_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9672_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9672_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 193 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9673 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9673_pubkey[] = { 0xa2, 0xad, 0x0e, 0x27, 0xb4, 0x04, 0x10, 0xd1, 0x60, 0x77, 0xdd, 0xc5, 0xe4, 0x15, 0xf1, 0x09, 0xd3, 0x28, 0xbf, 0x75, 0xe7, 0x3a, 0x0f, 0x56, 0x87, 0x6f, 0xef, 0x73, 0x12, 0x85, 0xf8, 0x31, 0x88, 0xb2, 0x07, 0xa6, 0x86, 0x90, 0xa4, 0x0e, 0x76, 0xed, 0x23, 0xe2, 0xc5, 0xe4, 0x9f, 0xcf, 0x60, 0x4f, 0x1c, 0x5d, 0x7d, 0x7d, 0xf3, 0x65, 0x00, 0x5d, 0x40, 0xe2, 0x09, 0xf4, 0xda, 0x7b, 0xb0, 0x6f, 0x31, 0x0d, 0x5a, 0x16, 0x60, 0xad, 0x62, 0x36, 0x57, 0x7f, 0xbb, 0x47, 0x95, 0x52, 0x61, 0xf5, 0x07, 0xd2, 0x3b, 0x83, 0x01, 0x3f, 0xfb, 0x95, 0x1b, 0xd7, 0x69, 0x08, 0xe7, 0x6c, }; static const unsigned char ecdsa_secp384r1_sha512_9673_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9673_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9673 = { .name = "ecdsa_secp384r1_sha512_9673", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9673_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9673_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9673_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 194 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9674 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9674_pubkey[] = { 0xa2, 0x33, 0x02, 0x5c, 0x12, 0xd2, 0x0f, 0x49, 0xdc, 0x50, 0xdc, 0x80, 0x2e, 0x79, 0xf0, 0x3c, 0x7c, 0xe1, 0x75, 0x0b, 0x92, 0x04, 0xb5, 0x13, 0x25, 0xd9, 0x0b, 0x5a, 0xde, 0x08, 0xf4, 0xa7, 0x4e, 0xf6, 0xef, 0xb0, 0x81, 0xed, 0x31, 0x56, 0xd6, 0x4a, 0x01, 0x10, 0xd6, 0x0f, 0xff, 0xab, 0xb9, 0x24, 0x88, 0x18, 0x91, 0xee, 0x98, 0x4c, 0xf5, 0x19, 0x49, 0xde, 0xe9, 0x6c, 0xfd, 0x7c, 0x97, 0x59, 0xb1, 0xff, 0x00, 0xf0, 0xdb, 0xdc, 0x71, 0x8d, 0x52, 0x11, 0x70, 0x79, 0xd5, 0xd8, 0xbd, 0x6c, 0x86, 0xc6, 0xf5, 0x32, 0x27, 0x6a, 0xf3, 0x8b, 0x77, 0x9b, 0xf2, 0x35, 0x0d, 0x7f, }; static const unsigned char ecdsa_secp384r1_sha512_9674_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9674_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9674 = { .name = "ecdsa_secp384r1_sha512_9674", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9674_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9674_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9674_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 195 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9675 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9675_pubkey[] = { 0x3c, 0x9b, 0xb6, 0x36, 0x07, 0xcd, 0xea, 0x05, 0x85, 0xf3, 0x8d, 0x97, 0x80, 0xc9, 0xac, 0x3e, 0x9a, 0x5a, 0x58, 0x15, 0x3e, 0x2a, 0xac, 0xc4, 0xbc, 0x7a, 0x1d, 0x63, 0x8d, 0x12, 0xe3, 0x2c, 0x4d, 0x3a, 0x90, 0xc0, 0xc1, 0x14, 0xb2, 0x32, 0xc6, 0xf1, 0x6e, 0x23, 0xe4, 0xbe, 0xbb, 0x24, 0xda, 0x2a, 0xc2, 0xcc, 0xed, 0xc5, 0x49, 0x4f, 0xe5, 0x34, 0xa9, 0xab, 0xae, 0xa3, 0x01, 0x3d, 0xe0, 0x17, 0x6f, 0x1b, 0x0e, 0x91, 0xbc, 0xd6, 0x21, 0x54, 0xbd, 0xf3, 0xf6, 0x04, 0x09, 0x1a, 0x50, 0x08, 0xb2, 0x46, 0x67, 0x02, 0xd0, 0xe2, 0xf9, 0x3e, 0x4a, 0x4b, 0x6c, 0x60, 0x1a, 0x54, }; static const unsigned char ecdsa_secp384r1_sha512_9675_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9675_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9675 = { .name = "ecdsa_secp384r1_sha512_9675", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9675_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9675_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9675_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 196 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9676 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9676_pubkey[] = { 0x55, 0x9a, 0x66, 0xef, 0x77, 0x75, 0x2f, 0xd8, 0x56, 0x97, 0x6f, 0x36, 0xed, 0x31, 0x56, 0x19, 0x93, 0x22, 0x04, 0x59, 0x9b, 0xd7, 0xef, 0x91, 0xd1, 0xa5, 0x3a, 0xc1, 0xe7, 0xc9, 0x0b, 0x39, 0x69, 0xca, 0xb8, 0x14, 0x3b, 0x7a, 0x53, 0xc4, 0xbf, 0x5a, 0x3f, 0xe3, 0x9f, 0x64, 0x9e, 0xb6, 0x1f, 0x00, 0xf8, 0x6d, 0xd8, 0xb8, 0x55, 0x6c, 0x48, 0x15, 0xb2, 0xa0, 0x1c, 0x59, 0xeb, 0x6c, 0xc0, 0x3c, 0x97, 0xb9, 0x4b, 0x6d, 0xb4, 0x31, 0x82, 0x49, 0xfe, 0x48, 0x9e, 0x36, 0xac, 0x96, 0x35, 0x87, 0x6b, 0x1c, 0xa2, 0xec, 0x09, 0x99, 0xca, 0xef, 0x5e, 0x1a, 0x6a, 0x58, 0xa7, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_9676_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9676_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9676 = { .name = "ecdsa_secp384r1_sha512_9676", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9676_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9676_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9676_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 197 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9677 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9677_pubkey[] = { 0x05, 0x48, 0xe7, 0x9a, 0x17, 0xfd, 0x3a, 0x11, 0x4d, 0x83, 0x0e, 0xa8, 0x8f, 0x21, 0x8e, 0xe1, 0xef, 0x7a, 0xa3, 0xf8, 0xdc, 0x13, 0x9e, 0x0a, 0x8b, 0x9b, 0x60, 0xe2, 0x50, 0x49, 0xa8, 0x16, 0xef, 0x44, 0x9e, 0x8b, 0xd5, 0xda, 0xe8, 0x67, 0x44, 0x64, 0x95, 0xfd, 0xf2, 0x0f, 0x47, 0x70, 0x03, 0x63, 0xa1, 0xe8, 0xaf, 0xef, 0xb0, 0x2e, 0xbf, 0xd5, 0x9d, 0xf9, 0x0b, 0x6d, 0x23, 0xff, 0x7d, 0x5f, 0x70, 0x6f, 0x9b, 0x26, 0xda, 0xeb, 0xae, 0x1d, 0x46, 0x57, 0xac, 0x34, 0x28, 0x44, 0xee, 0x9c, 0x2e, 0x0e, 0x92, 0x69, 0xf7, 0xef, 0xe7, 0xab, 0x91, 0xe0, 0x30, 0x3c, 0x11, 0x5d, }; static const unsigned char ecdsa_secp384r1_sha512_9677_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9677_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9677 = { .name = "ecdsa_secp384r1_sha512_9677", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9677_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9677_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9677_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 198 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9678 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9678_pubkey[] = { 0xa0, 0xeb, 0x67, 0x06, 0x30, 0xf9, 0xbb, 0xbd, 0x96, 0x3c, 0x57, 0x50, 0xde, 0x7b, 0xcb, 0xae, 0x4d, 0xdf, 0xd3, 0x7b, 0x13, 0xfe, 0x76, 0x90, 0xee, 0xc6, 0x86, 0x1a, 0x3c, 0x56, 0xc8, 0xef, 0xb8, 0x7d, 0xbb, 0xf8, 0x5c, 0xcd, 0x95, 0x3c, 0x65, 0x9d, 0x38, 0x2c, 0x3d, 0x7d, 0xf7, 0x6a, 0xfb, 0x08, 0x84, 0x06, 0x35, 0xa1, 0x6a, 0xc7, 0xec, 0xf3, 0xde, 0x2d, 0xc2, 0x8a, 0x77, 0xc8, 0xaf, 0x9d, 0x49, 0xe5, 0xa8, 0x32, 0x55, 0x1e, 0x33, 0x54, 0xa2, 0xb3, 0x11, 0xe5, 0x2b, 0xe8, 0x67, 0x20, 0xd9, 0xb2, 0xfb, 0xb7, 0x8d, 0x11, 0xa8, 0xae, 0xc6, 0x16, 0x06, 0xa2, 0x9f, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_9678_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9678_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9678 = { .name = "ecdsa_secp384r1_sha512_9678", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9678_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9678_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9678_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 199 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9679 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9679_pubkey[] = { 0x25, 0x4b, 0xce, 0x30, 0x41, 0xb0, 0x04, 0x68, 0x44, 0x5c, 0xb9, 0xae, 0x59, 0x7b, 0xc7, 0x6c, 0x12, 0x79, 0xa8, 0x50, 0x61, 0x42, 0xce, 0x24, 0x27, 0x18, 0x5b, 0x1d, 0x7f, 0x75, 0x3d, 0x1c, 0x0a, 0xad, 0x94, 0x15, 0x6b, 0x53, 0x1a, 0x20, 0x71, 0xaa, 0x61, 0xc8, 0x3e, 0xc8, 0x42, 0xa3, 0x71, 0x0d, 0x6c, 0x8c, 0x96, 0x76, 0x6a, 0xe8, 0xb6, 0x33, 0x96, 0x13, 0x3e, 0x58, 0x72, 0x80, 0x5e, 0x47, 0xd9, 0xba, 0x39, 0x11, 0x3e, 0x12, 0x2d, 0x67, 0x6d, 0x54, 0xdb, 0xb2, 0x46, 0x0b, 0x59, 0xd9, 0x86, 0xbd, 0xd3, 0x3b, 0xe3, 0x46, 0xc0, 0x21, 0xe8, 0xa7, 0x1b, 0xb4, 0x1b, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha512_9679_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9679_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9679 = { .name = "ecdsa_secp384r1_sha512_9679", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9679_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9679_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9679_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 200 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9680 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9680_pubkey[] = { 0x91, 0x29, 0xdb, 0x44, 0x46, 0xc2, 0xc5, 0x98, 0xc4, 0xf8, 0x10, 0x70, 0xf7, 0x0f, 0x66, 0xc3, 0x7c, 0x39, 0x32, 0x3e, 0x01, 0x41, 0x8c, 0x09, 0x5d, 0xe9, 0x90, 0x2e, 0x0e, 0x1b, 0x20, 0xf2, 0x6b, 0xc3, 0xe0, 0x11, 0xba, 0x84, 0xc1, 0x06, 0x26, 0xff, 0xdc, 0xe8, 0x36, 0x69, 0x0c, 0x9f, 0x8e, 0x4a, 0x10, 0x4f, 0xec, 0x4a, 0xaa, 0x43, 0x50, 0xc2, 0x38, 0x61, 0x7e, 0xe5, 0x04, 0x56, 0xac, 0xcc, 0x49, 0xef, 0xc3, 0xb7, 0x3e, 0xb9, 0x54, 0x8e, 0x16, 0x00, 0xc2, 0x48, 0x3f, 0x1c, 0x4b, 0xae, 0x9d, 0xdf, 0x3f, 0xf9, 0x2a, 0xf1, 0x7a, 0xfd, 0x19, 0xf8, 0x62, 0x74, 0x58, 0x9c, }; static const unsigned char ecdsa_secp384r1_sha512_9680_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9680_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9680 = { .name = "ecdsa_secp384r1_sha512_9680", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9680_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9680_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9680_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 201 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9681 for ECDSA, tcId is 202 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9681_pubkey[] = { 0xa7, 0x01, 0xa8, 0x11, 0x1c, 0xdf, 0x97, 0xce, 0xd7, 0x4a, 0x00, 0xa4, 0x51, 0x4b, 0x2b, 0x52, 0x6b, 0xe8, 0x11, 0x3e, 0x7d, 0xf6, 0xcf, 0x71, 0x63, 0xaa, 0xee, 0x46, 0x58, 0x80, 0xd2, 0x62, 0x75, 0xb8, 0x33, 0xb1, 0x86, 0xd8, 0x0f, 0x18, 0x62, 0xdc, 0x67, 0xff, 0x76, 0x8d, 0xde, 0x43, 0xe5, 0xa9, 0x91, 0xf1, 0x6f, 0x8f, 0x77, 0x73, 0x11, 0xb1, 0x7e, 0xab, 0xdc, 0x90, 0xb6, 0xec, 0xe3, 0xb5, 0xda, 0x77, 0x6c, 0xfb, 0xeb, 0xbc, 0x50, 0x43, 0x82, 0xca, 0x1a, 0xba, 0xe1, 0xc6, 0xaa, 0x6a, 0x64, 0xd9, 0xc4, 0x11, 0x10, 0xd9, 0x79, 0x50, 0x51, 0x4e, 0x99, 0x57, 0x8e, 0xd8, }; static const unsigned char ecdsa_secp384r1_sha512_9681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9681_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9681 = { .name = "ecdsa_secp384r1_sha512_9681", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9681_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9681_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9681_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 202 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9682 for ECDSA, tcId is 203 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9682_pubkey[] = { 0xa7, 0x01, 0xa8, 0x11, 0x1c, 0xdf, 0x97, 0xce, 0xd7, 0x4a, 0x00, 0xa4, 0x51, 0x4b, 0x2b, 0x52, 0x6b, 0xe8, 0x11, 0x3e, 0x7d, 0xf6, 0xcf, 0x71, 0x63, 0xaa, 0xee, 0x46, 0x58, 0x80, 0xd2, 0x62, 0x75, 0xb8, 0x33, 0xb1, 0x86, 0xd8, 0x0f, 0x18, 0x62, 0xdc, 0x67, 0xff, 0x76, 0x8d, 0xde, 0x43, 0xe5, 0xa9, 0x91, 0xf1, 0x6f, 0x8f, 0x77, 0x73, 0x11, 0xb1, 0x7e, 0xab, 0xdc, 0x90, 0xb6, 0xec, 0xe3, 0xb5, 0xda, 0x77, 0x6c, 0xfb, 0xeb, 0xbc, 0x50, 0x43, 0x82, 0xca, 0x1a, 0xba, 0xe1, 0xc6, 0xaa, 0x6a, 0x64, 0xd9, 0xc4, 0x11, 0x10, 0xd9, 0x79, 0x50, 0x51, 0x4e, 0x99, 0x57, 0x8e, 0xd8, }; static const unsigned char ecdsa_secp384r1_sha512_9682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9682_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9682 = { .name = "ecdsa_secp384r1_sha512_9682", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9682_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9682_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9682_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 203 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9683 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9683_pubkey[] = { 0xb6, 0x81, 0x5b, 0xa0, 0x54, 0x13, 0xbc, 0xf3, 0x4f, 0x4c, 0x07, 0x04, 0xaf, 0x59, 0x0c, 0x19, 0x98, 0xd7, 0xfc, 0xd1, 0x69, 0x54, 0x1e, 0x1e, 0xfe, 0x15, 0x67, 0xca, 0x1d, 0xd7, 0x1a, 0x22, 0xe3, 0x5a, 0xc8, 0x38, 0xb2, 0x0c, 0x75, 0x28, 0x15, 0x82, 0x04, 0x4a, 0x57, 0xb5, 0x8f, 0x45, 0x6c, 0xdc, 0xeb, 0x10, 0x61, 0x20, 0x62, 0x77, 0x9a, 0xba, 0xdd, 0x87, 0x42, 0xc6, 0xe9, 0x3e, 0xd7, 0x4a, 0xdf, 0x30, 0x6f, 0x3b, 0x3a, 0x0f, 0x96, 0xb7, 0x0d, 0xd1, 0x13, 0x4b, 0x75, 0x58, 0xb6, 0x4b, 0x55, 0xb2, 0x00, 0xc5, 0x73, 0x2c, 0x50, 0xf0, 0x5a, 0xa0, 0x32, 0xae, 0x7c, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_9683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9683_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9683 = { .name = "ecdsa_secp384r1_sha512_9683", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9683_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9683_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9683_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 204 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9684 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9684_pubkey[] = { 0x1a, 0xf1, 0x98, 0x41, 0xff, 0x3d, 0xf8, 0xbd, 0xc4, 0xf8, 0xcc, 0xe9, 0x57, 0xe0, 0xda, 0xb7, 0x63, 0xef, 0xe4, 0x13, 0x92, 0x9b, 0x27, 0x9f, 0x1d, 0x46, 0xdd, 0xe1, 0xc6, 0xf2, 0xbb, 0xc5, 0x5a, 0xf1, 0xbb, 0x1d, 0x80, 0x11, 0xfc, 0x58, 0x7a, 0x4d, 0x59, 0x9a, 0x4a, 0xe7, 0xcd, 0x8d, 0x5f, 0x66, 0x38, 0x60, 0xc4, 0x3c, 0x88, 0xe0, 0x83, 0x99, 0xf0, 0x0e, 0xf6, 0x64, 0x11, 0x23, 0x78, 0x79, 0x56, 0xa2, 0xb7, 0x01, 0x28, 0x83, 0xb5, 0xff, 0x7c, 0x46, 0xbd, 0x15, 0x6d, 0x96, 0xd3, 0xc0, 0x2a, 0x63, 0xef, 0x86, 0xe0, 0x60, 0xa2, 0xa0, 0xfa, 0x5b, 0x80, 0xd0, 0xc0, 0xe5, }; static const unsigned char ecdsa_secp384r1_sha512_9684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9684_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9684 = { .name = "ecdsa_secp384r1_sha512_9684", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9684_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9684_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9684_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 205 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9685 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9685_pubkey[] = { 0x68, 0x36, 0x08, 0x4f, 0xdd, 0xfc, 0xfd, 0x52, 0x7c, 0xb3, 0x84, 0x7f, 0xb8, 0xb9, 0x11, 0xc0, 0xfa, 0x00, 0x25, 0x37, 0xfa, 0x46, 0x0c, 0xa8, 0xf5, 0xd4, 0x0f, 0x02, 0x56, 0x03, 0xa4, 0xd8, 0x9a, 0xa6, 0xec, 0x64, 0x0f, 0xde, 0x0c, 0xc4, 0xb3, 0x1c, 0x46, 0x23, 0x9a, 0x1d, 0x0b, 0xb7, 0x6b, 0xee, 0xd7, 0x01, 0x98, 0x92, 0xe8, 0x72, 0x87, 0xe2, 0x3f, 0x0d, 0x35, 0x09, 0x3a, 0xb1, 0x4c, 0x4d, 0x41, 0xc0, 0xef, 0xe8, 0x46, 0x3e, 0xde, 0x34, 0x94, 0x23, 0x0a, 0x38, 0x4e, 0xb1, 0xbc, 0x41, 0x0d, 0xe9, 0x18, 0xc5, 0x48, 0x4a, 0x25, 0x64, 0x07, 0x41, 0xac, 0xb8, 0xcc, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_9685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9685_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9685 = { .name = "ecdsa_secp384r1_sha512_9685", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9685_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9685_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9685_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 206 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9686 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9686_pubkey[] = { 0xb4, 0xb2, 0xd5, 0xa8, 0xb5, 0x0f, 0xfa, 0xbd, 0x34, 0x74, 0x8e, 0x94, 0x49, 0x8c, 0x1d, 0x47, 0x28, 0xd0, 0x84, 0xf9, 0x43, 0xfb, 0xdd, 0xd4, 0xb3, 0xb6, 0xee, 0x16, 0xea, 0xa4, 0xda, 0x91, 0x61, 0x3a, 0x82, 0xc9, 0x80, 0x17, 0x13, 0x2c, 0x94, 0xcd, 0x6f, 0xe4, 0xb8, 0x72, 0x32, 0xf1, 0x6d, 0x61, 0x22, 0x28, 0xed, 0x5d, 0x7d, 0x08, 0xbf, 0x0c, 0x86, 0x99, 0x67, 0x7e, 0x3b, 0x8f, 0x3e, 0x71, 0x80, 0x73, 0xb9, 0x45, 0xa6, 0xc1, 0x08, 0xd9, 0x7a, 0x3b, 0x14, 0x33, 0xc7, 0x90, 0x52, 0xb2, 0x65, 0x5a, 0x18, 0xa3, 0xb2, 0xe6, 0x21, 0xba, 0xa8, 0x81, 0x98, 0xcb, 0x5f, 0x3c, }; static const unsigned char ecdsa_secp384r1_sha512_9686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9686_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9686 = { .name = "ecdsa_secp384r1_sha512_9686", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9686_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9686_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9686_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 207 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9687 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9687_pubkey[] = { 0x84, 0x2b, 0x3d, 0x89, 0xe5, 0x4d, 0x9a, 0x4b, 0x56, 0x94, 0xd9, 0x25, 0x1b, 0xba, 0x20, 0xae, 0x48, 0x54, 0xc5, 0x10, 0xdc, 0x0b, 0x6e, 0xf7, 0x03, 0x3e, 0x40, 0x45, 0xba, 0x4e, 0x64, 0xb6, 0xdd, 0xcd, 0x36, 0x29, 0x9a, 0xac, 0x55, 0x4d, 0xba, 0xc6, 0xdb, 0x3e, 0x27, 0xc9, 0x81, 0x23, 0x86, 0x82, 0x58, 0x19, 0x02, 0x97, 0xe1, 0xd6, 0xba, 0xe6, 0x48, 0xa6, 0xde, 0xe2, 0x28, 0x58, 0x86, 0x23, 0x3a, 0xfd, 0x1c, 0x3d, 0x6f, 0x19, 0x6a, 0xd1, 0xdb, 0x14, 0x26, 0x2a, 0x57, 0x9d, 0x74, 0xcf, 0x78, 0x55, 0xff, 0xfc, 0x65, 0xf5, 0xab, 0xd2, 0x42, 0xb1, 0x35, 0xae, 0x87, 0xdf, }; static const unsigned char ecdsa_secp384r1_sha512_9687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9687_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9687 = { .name = "ecdsa_secp384r1_sha512_9687", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9687_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9687_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9687_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 208 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9688 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9688_pubkey[] = { 0x9a, 0xb7, 0x3d, 0xcf, 0xff, 0xc8, 0x20, 0xe7, 0x39, 0xa3, 0xed, 0x9c, 0x31, 0x6c, 0x6f, 0x15, 0xd2, 0x7a, 0x03, 0x2f, 0x8a, 0xa5, 0x93, 0x25, 0xf7, 0x84, 0x2c, 0xf4, 0xa3, 0x41, 0x98, 0xac, 0x6f, 0xf0, 0x9e, 0xb1, 0xa3, 0x11, 0xce, 0x22, 0x6b, 0xf1, 0xab, 0xb4, 0x9d, 0x80, 0x85, 0x11, 0x01, 0x35, 0xf4, 0xb0, 0xc2, 0xb6, 0xb1, 0x95, 0xda, 0x9b, 0xbe, 0x19, 0x93, 0xe9, 0x85, 0xb8, 0x60, 0x76, 0x64, 0xf1, 0xa4, 0xb3, 0xd4, 0x99, 0xea, 0x1a, 0x11, 0x2b, 0x6a, 0xfc, 0x7e, 0x6b, 0x88, 0x35, 0x7c, 0x93, 0x48, 0xb6, 0x14, 0xdd, 0xfd, 0xc8, 0x46, 0xa3, 0xf3, 0x8b, 0xbd, 0xca, }; static const unsigned char ecdsa_secp384r1_sha512_9688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9688_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9688 = { .name = "ecdsa_secp384r1_sha512_9688", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9688_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9688_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9688_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 209 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9689 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9689_pubkey[] = { 0x28, 0x77, 0x1b, 0x13, 0x7f, 0xb7, 0xd7, 0x4c, 0x0e, 0xd0, 0x29, 0x04, 0x16, 0xf4, 0x7c, 0x81, 0x18, 0x99, 0x79, 0x23, 0xc7, 0xb3, 0xb7, 0x17, 0xfb, 0xbd, 0x53, 0x08, 0xa4, 0xbb, 0x0e, 0x49, 0x47, 0x14, 0xbd, 0x3f, 0x1f, 0xf5, 0xe9, 0xe3, 0x68, 0x88, 0x73, 0x77, 0x28, 0x42, 0x72, 0xeb, 0xf9, 0x2e, 0x5d, 0xf4, 0x76, 0xa2, 0xfa, 0x09, 0x06, 0xce, 0x4f, 0xad, 0x12, 0x1c, 0x64, 0x1a, 0xbb, 0x53, 0x9a, 0xb4, 0xef, 0x27, 0x0c, 0xd8, 0xf0, 0x49, 0x7c, 0xc3, 0xe6, 0xe0, 0x5b, 0x18, 0x56, 0x1b, 0x73, 0x06, 0x70, 0xf0, 0x10, 0x74, 0x12, 0x38, 0xa5, 0xd0, 0x7b, 0x07, 0x70, 0x45, }; static const unsigned char ecdsa_secp384r1_sha512_9689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9689_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9689 = { .name = "ecdsa_secp384r1_sha512_9689", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9689_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9689_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9689_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 210 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9690 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9690_pubkey[] = { 0x9d, 0x1b, 0xaa, 0xd2, 0x17, 0x82, 0x9d, 0x5f, 0x2d, 0x7d, 0xb5, 0xbd, 0x08, 0x5e, 0x91, 0x26, 0x23, 0x2e, 0x8c, 0x49, 0xc5, 0x87, 0x07, 0xcb, 0x15, 0x3d, 0xb1, 0xd1, 0xe2, 0x0a, 0x10, 0x9c, 0x90, 0xf7, 0xbc, 0xba, 0xe4, 0xf2, 0xc7, 0x4d, 0x65, 0x95, 0x20, 0x7c, 0xb0, 0xe5, 0xdd, 0x27, 0x1e, 0xea, 0x30, 0x75, 0x2a, 0x14, 0x25, 0x90, 0x5d, 0x08, 0x11, 0xd0, 0xf4, 0x20, 0x19, 0xe5, 0x08, 0x81, 0x42, 0xb4, 0x19, 0x45, 0xbe, 0xe0, 0x39, 0x48, 0xf2, 0x06, 0xf2, 0xe7, 0xc3, 0xc1, 0x08, 0x1b, 0xa9, 0xa2, 0x97, 0x18, 0x0e, 0x36, 0xb2, 0x47, 0xee, 0x9e, 0x70, 0x83, 0x20, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9690_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc1, 0x52, 0xaa, 0xfe, 0xa3, 0xa8, 0x61, 0x2e, 0xc8, 0x3a, 0x7d, 0xc9, 0x44, 0x8f, 0x01, 0x94, 0x18, 0x99, 0xd7, 0x04, 0x13, 0x19, 0xbb, 0xd6, 0x0b, 0xfd, 0xfb, 0x3c, 0x03, 0xda, 0x74, 0xc0, 0x0c, 0x8f, 0xc4, 0x17, 0x61, 0x28, 0xa6, 0x26, 0x32, 0x68, 0x71, 0x1e, 0xdc, 0x6e, 0x8e, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9690 = { .name = "ecdsa_secp384r1_sha512_9690", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9690_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9690_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9690_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 211 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9691 for ECDSA, tcId is 212 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9691_pubkey[] = { 0x8e, 0x39, 0xe1, 0xe4, 0x4f, 0x78, 0x2b, 0x81, 0x0e, 0xa9, 0x30, 0x37, 0xc3, 0x44, 0x37, 0x1c, 0x4f, 0xb1, 0x41, 0xc8, 0xbf, 0x19, 0x6e, 0xa6, 0x18, 0xf3, 0xa1, 0x76, 0x54, 0x71, 0x39, 0xa6, 0xd0, 0x21, 0x21, 0xd2, 0x79, 0x4c, 0xbe, 0x64, 0x81, 0x06, 0x16, 0x94, 0xdb, 0x57, 0x93, 0x15, 0xc3, 0x18, 0x4e, 0x8c, 0xd9, 0xb6, 0xc1, 0x6b, 0x37, 0x69, 0x96, 0x33, 0xd8, 0x7f, 0x56, 0x00, 0x65, 0x4b, 0x44, 0xcb, 0xcb, 0x5a, 0xb5, 0x0b, 0xa8, 0x72, 0xdf, 0xa0, 0x01, 0x76, 0x9e, 0xb7, 0x65, 0xb2, 0xd1, 0x90, 0x2e, 0x01, 0xd2, 0xe8, 0xaf, 0x4e, 0x1f, 0xd6, 0xe9, 0xc0, 0xf3, 0x0f, }; static const unsigned char ecdsa_secp384r1_sha512_9691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9691_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x47, 0x64, 0xee, 0xac, 0x3e, 0x7a, 0x08, 0xda, 0xac, 0xfa, 0xd7, 0xd1, 0xe1, 0xe3, 0x69, 0x60, 0x42, 0x16, 0x4b, 0x06, 0xf7, 0x7b, 0xd7, 0x8c, 0x32, 0x13, 0xdd, 0xea, 0x6f, 0x9f, 0xd4, 0x49, 0xa3, 0x4c, 0x97, 0xb9, 0xe5, 0x60, 0xa6, 0xbf, 0x71, 0x95, 0xda, 0x41, 0x33, 0x3c, 0x75, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9691 = { .name = "ecdsa_secp384r1_sha512_9691", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9691_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9691_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9691_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 212 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9692 for ECDSA, tcId is 213 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9692_pubkey[] = { 0xb9, 0x6f, 0xca, 0x0e, 0x3f, 0x6e, 0xbf, 0x73, 0x26, 0xf0, 0xa8, 0xce, 0x8b, 0xdf, 0x22, 0x6a, 0x25, 0x60, 0xc2, 0x25, 0x26, 0xbf, 0x15, 0x4f, 0x7b, 0x46, 0x70, 0x10, 0xf3, 0xa4, 0x6b, 0xac, 0xa7, 0x34, 0x14, 0x07, 0x0d, 0xb0, 0xf7, 0xab, 0x03, 0x9f, 0x34, 0x55, 0x48, 0x45, 0x2a, 0xe2, 0x6f, 0x7b, 0x74, 0x42, 0x74, 0xe9, 0xbd, 0x6c, 0x79, 0x1f, 0x47, 0x51, 0x3e, 0x6b, 0x51, 0xeb, 0x42, 0xfe, 0xa3, 0x81, 0x6b, 0x30, 0x32, 0xb3, 0x3a, 0x81, 0x69, 0x5f, 0x04, 0xd4, 0xe7, 0x75, 0xbe, 0x06, 0x48, 0x4c, 0xf7, 0xe6, 0xa6, 0x9c, 0xba, 0x8b, 0xac, 0xbc, 0xb5, 0x97, 0xb3, 0xe3, }; static const unsigned char ecdsa_secp384r1_sha512_9692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9692_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0x4d, 0x5c, 0x0f, 0xf0, 0xab, 0xe2, 0x9b, 0x27, 0x71, 0xfe, 0x9f, 0x17, 0x9a, 0x56, 0x14, 0xe2, 0xe4, 0xc3, 0xcc, 0x11, 0x34, 0xa7, 0xaa, 0xd0, 0x8d, 0x8e, 0xc3, 0xfd, 0x8f, 0xcd, 0x07, 0xfd, 0x34, 0xb3, 0x47, 0x3c, 0xa6, 0x5e, 0xad, 0x1c, 0x7b, 0xb2, 0x0b, 0xcf, 0x3e, 0xa5, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9692 = { .name = "ecdsa_secp384r1_sha512_9692", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9692_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9692_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9692_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9693 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9693_pubkey[] = { 0x4f, 0xd5, 0x2b, 0x11, 0xff, 0x74, 0x7b, 0x59, 0xef, 0x60, 0x9e, 0x06, 0x5a, 0x46, 0x2c, 0xd8, 0x5b, 0x73, 0x17, 0x2d, 0x20, 0xf4, 0x06, 0xfd, 0xd8, 0x45, 0xd4, 0xea, 0xa3, 0xec, 0x17, 0x3e, 0x06, 0xee, 0x58, 0xa5, 0x8e, 0x18, 0x10, 0xf0, 0x51, 0xb2, 0x75, 0xbb, 0xaa, 0x47, 0xcc, 0xb4, 0x84, 0xd2, 0x38, 0x2b, 0x9e, 0x72, 0xc5, 0x26, 0xdc, 0x37, 0x64, 0xa1, 0x1a, 0x4a, 0x96, 0x2a, 0x7a, 0x4c, 0x73, 0x55, 0xe6, 0xf0, 0x57, 0xfc, 0x97, 0x6a, 0xb7, 0x3c, 0xc3, 0x84, 0xf9, 0xa2, 0x9d, 0xa5, 0x07, 0x69, 0x80, 0x9e, 0xcb, 0xf3, 0x73, 0x58, 0xdd, 0x83, 0xc7, 0x4f, 0xc2, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_9693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9693_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6e, 0x44, 0x1d, 0xb2, 0x53, 0xbf, 0x79, 0x8d, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x9d, 0xd0, 0x16, 0x11, 0x04, 0x75, 0xd8, 0x38, 0x1f, 0x65, 0xf7, 0xf2, 0x7f, 0x9e, 0x1c, 0xfc, 0x9b, 0x48, 0xf0, 0x6a, 0x2d, 0xfa, 0x8e, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9693 = { .name = "ecdsa_secp384r1_sha512_9693", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9693_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9693_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9693_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9694 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9694_pubkey[] = { 0x7d, 0x12, 0x3e, 0x3d, 0xba, 0xb9, 0x91, 0x3d, 0x69, 0x88, 0x91, 0x02, 0x3e, 0x28, 0x65, 0x4c, 0xba, 0x2a, 0x94, 0xdc, 0x40, 0x8a, 0x0d, 0xc3, 0x86, 0xe6, 0x3d, 0x8d, 0x22, 0xff, 0x0f, 0x33, 0x35, 0x8a, 0x23, 0x18, 0x60, 0xb7, 0xc2, 0xe4, 0xf8, 0x42, 0x9e, 0x9e, 0x8c, 0x9a, 0x1c, 0x5b, 0xe7, 0xc9, 0x5d, 0x18, 0x75, 0xf2, 0x4e, 0xcd, 0xfe, 0xff, 0xc6, 0x13, 0x6c, 0xf5, 0x6f, 0x80, 0x0f, 0x54, 0x34, 0x49, 0x0f, 0x23, 0x4f, 0x14, 0xd7, 0x85, 0x05, 0xc2, 0xd4, 0xae, 0xa5, 0x1e, 0x2a, 0x3a, 0x6a, 0x5d, 0x16, 0x93, 0xe7, 0x2c, 0x4b, 0x1d, 0xd2, 0xa8, 0x74, 0x6b, 0x87, 0x5a, }; static const unsigned char ecdsa_secp384r1_sha512_9694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9694_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x41, 0xdb, 0x25, 0x3b, 0xf7, 0x98, 0xdb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x75, 0x08, 0x6a, 0x43, 0x25, 0x2f, 0xb4, 0x3b, 0x63, 0x19, 0x1e, 0xfc, 0xd0, 0x91, 0x4b, 0x6a, 0xfb, 0x4b, 0xf8, 0xc7, 0x7d, 0x00, 0x8d, 0xbe, 0xac, 0x04, 0x27, 0x7e, 0xf4, 0xaa, 0x59, 0xc3, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9694 = { .name = "ecdsa_secp384r1_sha512_9694", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9694_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9694_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9694_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9695 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9695_pubkey[] = { 0x60, 0x8c, 0xe2, 0x3a, 0x38, 0x34, 0x52, 0xf8, 0xf4, 0xdc, 0xc5, 0xc0, 0x08, 0x5d, 0x67, 0x93, 0xec, 0x51, 0x89, 0x85, 0xf0, 0x27, 0x6a, 0x34, 0x09, 0xa2, 0x3d, 0x7b, 0x7c, 0xa7, 0xe7, 0xdc, 0xb1, 0x63, 0x60, 0x1a, 0xca, 0x73, 0x84, 0x0c, 0x3b, 0xd4, 0x70, 0xaf, 0xf7, 0x02, 0x50, 0xbf, 0x67, 0x40, 0x05, 0xa0, 0xbe, 0x08, 0x93, 0x93, 0x39, 0x36, 0x3e, 0x31, 0x4d, 0xca, 0x7e, 0xa6, 0x7a, 0xdf, 0xb6, 0x0c, 0xd5, 0x30, 0x62, 0x8f, 0xe3, 0x5f, 0x05, 0x41, 0x6d, 0xa8, 0xf2, 0x0d, 0x5f, 0xb3, 0xb0, 0xcc, 0xd1, 0x83, 0xa2, 0x1d, 0xbb, 0x41, 0xc4, 0xe1, 0x95, 0xd6, 0x30, 0x3d, }; static const unsigned char ecdsa_secp384r1_sha512_9695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9695_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0xb6, 0x4a, 0x77, 0xef, 0x31, 0xb7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xea, 0x10, 0xd4, 0x86, 0x4a, 0x5f, 0x68, 0x76, 0xc6, 0x32, 0x3d, 0xf9, 0xa1, 0x22, 0x96, 0xd5, 0xf6, 0x97, 0xf1, 0x8e, 0xfa, 0x01, 0x1b, 0x7d, 0x58, 0x08, 0x4e, 0xfd, 0xe9, 0x54, 0xb3, 0x87, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9695 = { .name = "ecdsa_secp384r1_sha512_9695", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9695_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9695_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9695_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9696 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9696_pubkey[] = { 0x48, 0xd2, 0x3d, 0xe1, 0x86, 0x94, 0x75, 0xa1, 0xde, 0x53, 0x23, 0x99, 0xda, 0x12, 0x40, 0xba, 0xb5, 0x60, 0xeb, 0x74, 0xa6, 0xc7, 0xb0, 0x87, 0x1b, 0xf8, 0xac, 0x8f, 0xb6, 0xcc, 0x17, 0xcf, 0x7b, 0x34, 0xfc, 0xd7, 0xc7, 0x9f, 0xd9, 0x9c, 0x76, 0xc6, 0x05, 0xbd, 0xf3, 0xfc, 0xbe, 0x18, 0xe1, 0x5b, 0x66, 0xab, 0x91, 0xd0, 0xa0, 0x3e, 0x20, 0x3c, 0x2f, 0xf9, 0x14, 0xd4, 0xbe, 0xdc, 0x38, 0xc1, 0xec, 0x5d, 0xcd, 0x1d, 0x12, 0xdb, 0x9b, 0x43, 0xef, 0x6f, 0x44, 0x58, 0x16, 0x32, 0x68, 0x3b, 0xf7, 0x85, 0xaa, 0x43, 0x26, 0x56, 0x62, 0x27, 0xec, 0xe3, 0xc1, 0x6b, 0xe7, 0x96, }; static const unsigned char ecdsa_secp384r1_sha512_9696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9696_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x53, 0xbf, 0x79, 0x8d, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xb4, 0x2d, 0xa6, 0xd3, 0xe9, 0xa7, 0x2c, 0xde, 0x0b, 0x5c, 0x2d, 0xe6, 0xbf, 0x07, 0x2e, 0x78, 0x0e, 0x94, 0xad, 0x12, 0xdc, 0xab, 0x27, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9696 = { .name = "ecdsa_secp384r1_sha512_9696", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9696_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9696_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9696_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9697 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9697_pubkey[] = { 0x5d, 0x5e, 0xb4, 0x70, 0xf9, 0xc6, 0xa0, 0xbb, 0x18, 0xe8, 0x96, 0x0b, 0x67, 0x01, 0x1a, 0xcf, 0x9f, 0x01, 0xdf, 0x40, 0x5a, 0xc5, 0xb4, 0xbf, 0x9f, 0x46, 0x11, 0xd6, 0xa8, 0xaf, 0x1a, 0x26, 0xb1, 0x1b, 0x07, 0x90, 0xe9, 0x3a, 0xe2, 0x36, 0x15, 0x25, 0xdd, 0xe5, 0x1b, 0xac, 0xac, 0x94, 0xd4, 0x2c, 0xe1, 0x51, 0x79, 0x3b, 0x80, 0xce, 0xe6, 0x79, 0xc8, 0x48, 0x36, 0x2e, 0xc2, 0x72, 0x00, 0x03, 0x16, 0x59, 0x0e, 0xbc, 0x91, 0x54, 0x7b, 0x3b, 0x66, 0x08, 0xdf, 0xba, 0xde, 0x21, 0xe0, 0x4d, 0xe1, 0x54, 0x8e, 0xbb, 0x45, 0xcc, 0x47, 0x21, 0xeb, 0x64, 0xa1, 0x6b, 0x83, 0x18, }; static const unsigned char ecdsa_secp384r1_sha512_9697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9697_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x24, 0xc5, 0x3b, 0x0a, 0x00, 0xcf, 0x08, 0x7a, 0x9a, 0x20, 0xa2, 0xb7, 0x8b, 0xc8, 0x1d, 0x5b, 0x38, 0x3d, 0x04, 0xba, 0x9b, 0x55, 0xa5, 0x67, 0x40, 0x52, 0x39, 0xd2, 0x24, 0x38, 0x73, 0x44, 0xc4, 0x1c, 0xce, 0xff, 0x0f, 0x68, 0xff, 0xc9, 0x30, 0xdb, 0xaa, 0x0b, 0x3d, 0x34, 0x6f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9697 = { .name = "ecdsa_secp384r1_sha512_9697", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9697_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9697_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9697_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9698 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9698_pubkey[] = { 0x1d, 0xa3, 0x4a, 0x14, 0x9e, 0xd5, 0x62, 0xc8, 0xec, 0x13, 0xe8, 0x4c, 0xb0, 0x67, 0x10, 0x7b, 0xc2, 0x8b, 0x50, 0xbf, 0xa4, 0x75, 0x75, 0xd5, 0xa9, 0x94, 0x8c, 0xde, 0x5a, 0x3d, 0x73, 0x57, 0xc3, 0x8e, 0xa4, 0x1f, 0xcf, 0xcd, 0xd1, 0xab, 0x1a, 0x1b, 0xd9, 0xb6, 0x59, 0x2b, 0x33, 0xd9, 0xe1, 0x4a, 0xed, 0xfd, 0x0c, 0xff, 0xfc, 0xfe, 0xcb, 0xdc, 0x21, 0x27, 0x6e, 0x6a, 0x2c, 0x78, 0xb8, 0x72, 0x94, 0x12, 0xc4, 0x83, 0x39, 0xae, 0x53, 0x8b, 0x79, 0x9b, 0x7d, 0x8e, 0x61, 0x16, 0x30, 0x47, 0xa6, 0x4c, 0xfc, 0xec, 0x90, 0x18, 0xaa, 0x00, 0xf9, 0x9a, 0xe7, 0x40, 0xe3, 0xf3, }; static const unsigned char ecdsa_secp384r1_sha512_9698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9698_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc6, 0x00, 0xcc, 0xb3, 0x9b, 0xb3, 0xe2, 0xd8, 0x5d, 0x88, 0x0d, 0x76, 0xd1, 0xd5, 0x19, 0x20, 0x5f, 0x05, 0x0c, 0x4b, 0x93, 0xde, 0xae, 0x0c, 0x5d, 0x63, 0xe8, 0x89, 0x8c, 0xa8, 0xd7, 0xa5, 0xba, 0xbb, 0xb9, 0x44, 0xde, 0xbe, 0x0f, 0x3c, 0x44, 0x33, 0x2a, 0xae, 0x57, 0x70, 0xcb, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9698 = { .name = "ecdsa_secp384r1_sha512_9698", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9698_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9698_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9698_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9699 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9699_pubkey[] = { 0x8b, 0x86, 0x75, 0x21, 0x1b, 0x32, 0x1f, 0x8b, 0x31, 0x8b, 0xa6, 0x03, 0x37, 0xcd, 0xe3, 0x2a, 0x6b, 0x04, 0x24, 0x39, 0x79, 0x54, 0x63, 0x83, 0x12, 0x7a, 0x06, 0x8a, 0x87, 0x49, 0xcb, 0x5e, 0x98, 0xc4, 0x23, 0x1b, 0x19, 0x8d, 0xe6, 0x2a, 0x2b, 0x06, 0x9d, 0x3a, 0x94, 0xd1, 0xc7, 0xb1, 0x9d, 0x33, 0x46, 0x8a, 0x13, 0x0b, 0x4f, 0xef, 0x66, 0xa5, 0x9d, 0x4a, 0xee, 0x00, 0xca, 0x40, 0xbd, 0xbe, 0xaf, 0x04, 0x4b, 0x8b, 0x22, 0x84, 0x1b, 0xb4, 0xc8, 0xba, 0x41, 0x9f, 0x89, 0x1b, 0x38, 0x55, 0xf4, 0xbd, 0xdf, 0x8d, 0xae, 0x35, 0x77, 0xd9, 0x71, 0x20, 0xb9, 0xd3, 0xfa, 0x44, }; static const unsigned char ecdsa_secp384r1_sha512_9699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9699_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0xad, 0x55, 0x01, 0x5c, 0x57, 0x9e, 0xd1, 0x37, 0xc5, 0x82, 0x36, 0xbb, 0x70, 0xfe, 0x6b, 0xe7, 0x66, 0x28, 0xfb, 0xec, 0xe6, 0x44, 0x29, 0xbb, 0x65, 0x52, 0x45, 0xf0, 0x5c, 0xb9, 0x1f, 0x4b, 0x8a, 0x49, 0x9a, 0xe7, 0x88, 0x01, 0x54, 0xba, 0x83, 0xa8, 0x4b, 0xf0, 0x56, 0x9a, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9699 = { .name = "ecdsa_secp384r1_sha512_9699", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9699_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9699_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9699_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9700 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9700_pubkey[] = { 0x44, 0x27, 0x66, 0xbd, 0xb8, 0xb2, 0xcf, 0x4f, 0xef, 0x5f, 0x65, 0xd5, 0xd8, 0x6b, 0x61, 0x68, 0x1e, 0xc8, 0x92, 0x20, 0xc9, 0x83, 0xb5, 0x1f, 0x15, 0xbf, 0xe1, 0x2f, 0xb0, 0xbf, 0x97, 0x80, 0xe0, 0xc3, 0x8b, 0xbc, 0xc8, 0x88, 0xaf, 0xb3, 0xc5, 0x5e, 0xe8, 0x28, 0x77, 0x4b, 0x86, 0xf7, 0x56, 0xb7, 0xf3, 0x99, 0xc5, 0x34, 0xc7, 0xac, 0xd4, 0x6b, 0xe4, 0xbc, 0x8b, 0xb3, 0x8f, 0x08, 0x7b, 0x00, 0x23, 0xb8, 0xf5, 0x16, 0x6a, 0xb3, 0x41, 0x92, 0xca, 0x0b, 0x1c, 0xad, 0x62, 0xd6, 0x63, 0xaa, 0x47, 0x4c, 0x6f, 0x92, 0x86, 0xc8, 0xa0, 0x54, 0xef, 0x94, 0xea, 0x42, 0xe3, 0xc7, }; static const unsigned char ecdsa_secp384r1_sha512_9700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9700_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xdb, 0x19, 0x3d, 0x79, 0xe3, 0x59, 0x66, 0x3e, 0x7c, 0xc9, 0xa2, 0x29, 0xe2, 0xa6, 0xac, 0x9e, 0x9d, 0x5c, 0x75, 0x41, 0x7f, 0xa4, 0x55, 0xbc, 0x8e, 0x3b, 0x89, 0x27, 0x4e, 0xe4, 0x7d, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9700 = { .name = "ecdsa_secp384r1_sha512_9700", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9700_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9700_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9700_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9701 for ECDSA, tcId is 222 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9701_pubkey[] = { 0x11, 0x34, 0x2b, 0x31, 0x4f, 0x31, 0x64, 0x89, 0x31, 0xab, 0xb8, 0x97, 0xc1, 0x37, 0x1d, 0xd3, 0xa2, 0x3e, 0x91, 0xf2, 0x40, 0x5c, 0x4a, 0x81, 0x74, 0x4b, 0xe1, 0x8e, 0x75, 0x39, 0x19, 0x75, 0x22, 0x08, 0x77, 0x9d, 0xe2, 0xd5, 0x4e, 0x86, 0x5e, 0xee, 0xfb, 0xb0, 0xbf, 0xb4, 0x99, 0x8a, 0xf5, 0x33, 0xd7, 0xa4, 0xd6, 0xfc, 0x6c, 0xb5, 0xcb, 0x98, 0x91, 0x5c, 0xe0, 0x8d, 0x0f, 0x65, 0x6e, 0x37, 0xa5, 0x02, 0xe7, 0x8f, 0x8c, 0x1b, 0x8b, 0xac, 0xa7, 0x28, 0xc2, 0xec, 0xb0, 0x5a, 0x21, 0x56, 0xf0, 0x1c, 0xff, 0x16, 0x59, 0x5b, 0x36, 0x3c, 0xdb, 0x49, 0xc0, 0x0c, 0x1a, 0xa2, }; static const unsigned char ecdsa_secp384r1_sha512_9701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9701_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe5, 0xa6, 0xae, 0x07, 0xf8, 0x55, 0xf1, 0x4d, 0x93, 0xb8, 0xff, 0x4f, 0x8b, 0xcd, 0x2b, 0x0a, 0x71, 0x72, 0x61, 0xe6, 0x08, 0x9a, 0x53, 0xd5, 0x4b, 0xf8, 0x6e, 0x22, 0xf8, 0xe3, 0x7d, 0x73, 0xaa, 0xa7, 0x60, 0x7c, 0xc2, 0xab, 0x83, 0x14, 0x04, 0xb3, 0xe5, 0xbb, 0x4e, 0x01, 0xe7, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9701 = { .name = "ecdsa_secp384r1_sha512_9701", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9701_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9701_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9701_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9702 for ECDSA, tcId is 223 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9702_pubkey[] = { 0x3c, 0x96, 0xb4, 0x9f, 0xf6, 0x0f, 0xf0, 0x59, 0x51, 0xb7, 0xb1, 0xac, 0xa6, 0x56, 0x64, 0xf1, 0x31, 0x28, 0xb7, 0x14, 0xda, 0x62, 0x06, 0x97, 0xef, 0x0d, 0x90, 0xbf, 0xc0, 0x1e, 0xf6, 0x43, 0xba, 0xa5, 0xc6, 0x08, 0xf1, 0x6c, 0xa8, 0x85, 0x03, 0x83, 0x22, 0xa4, 0x43, 0xae, 0xd3, 0xe6, 0x16, 0x9a, 0x27, 0xf2, 0xea, 0x7a, 0x36, 0x37, 0x6e, 0xf9, 0x2a, 0x90, 0x0e, 0x53, 0x89, 0xa7, 0xb4, 0x41, 0xfd, 0x05, 0x1d, 0x69, 0x3c, 0xe6, 0x52, 0x50, 0xb8, 0x81, 0xcf, 0xdd, 0x64, 0x87, 0x37, 0x03, 0x72, 0x29, 0x2c, 0x84, 0x36, 0x97, 0x42, 0xb1, 0x81, 0x06, 0x18, 0x8b, 0x05, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha512_9702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9702_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9702 = { .name = "ecdsa_secp384r1_sha512_9702", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9702_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9702_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9702_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 223 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9703 for ECDSA, tcId is 224 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9703_pubkey[] = { 0x38, 0x8d, 0xae, 0x49, 0xea, 0x48, 0xaf, 0xb5, 0x58, 0x45, 0x6f, 0xdb, 0x1d, 0x0b, 0x04, 0xd4, 0xf8, 0xf1, 0xc4, 0x6f, 0x14, 0xd2, 0x2d, 0xe2, 0x58, 0x62, 0xd3, 0x50, 0x69, 0xa2, 0x8a, 0xe9, 0x28, 0x4d, 0x7a, 0x80, 0x74, 0x54, 0x6e, 0x77, 0x9a, 0xd2, 0xc5, 0xf1, 0x7c, 0xe9, 0xb8, 0x9b, 0xb3, 0x53, 0x29, 0x8f, 0x3c, 0x52, 0x6a, 0xa0, 0xa1, 0x0e, 0xd2, 0x3b, 0xcb, 0x1e, 0xd9, 0x78, 0x88, 0x12, 0xc8, 0xa3, 0xa6, 0xcb, 0xea, 0x82, 0xa3, 0xd9, 0xd8, 0xd4, 0x65, 0xa4, 0xcc, 0xa5, 0x9d, 0xbd, 0x3d, 0x3d, 0x8a, 0x36, 0x09, 0x8d, 0x64, 0x4f, 0x1b, 0x45, 0xd3, 0x6d, 0xf5, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9703_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9703 = { .name = "ecdsa_secp384r1_sha512_9703", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9703_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9703_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9703_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 224 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9704 for ECDSA, tcId is 225 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9704_pubkey[] = { 0xc8, 0x52, 0x00, 0xac, 0x64, 0x11, 0x42, 0x35, 0x73, 0xe3, 0xeb, 0xc1, 0xb7, 0xae, 0xa9, 0x5e, 0x74, 0xad, 0xd5, 0xce, 0x3b, 0x41, 0x28, 0x2b, 0xaa, 0x88, 0x59, 0x72, 0xac, 0xc0, 0x85, 0xc8, 0x36, 0x5c, 0x05, 0xc5, 0x39, 0xce, 0x47, 0xe7, 0x99, 0xaf, 0xc3, 0x53, 0xd6, 0x78, 0x8c, 0xe8, 0x68, 0xcf, 0xce, 0x1e, 0xb2, 0xbf, 0xe0, 0x09, 0x99, 0x00, 0x84, 0xfb, 0x03, 0xc0, 0x91, 0x9a, 0xb8, 0x92, 0x31, 0x3d, 0x7a, 0x12, 0xef, 0xc3, 0x51, 0x4e, 0x82, 0x73, 0x68, 0x5b, 0x90, 0x71, 0x89, 0x2f, 0xae, 0xfc, 0xa4, 0x30, 0x6a, 0xdf, 0x78, 0x54, 0xaf, 0xce, 0xba, 0xff, 0xfb, 0xf4, }; static const unsigned char ecdsa_secp384r1_sha512_9704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9704_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9704 = { .name = "ecdsa_secp384r1_sha512_9704", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9704_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9704_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9704_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 225 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9705 for ECDSA, tcId is 226 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9705_pubkey[] = { 0xe6, 0x3a, 0xe2, 0x88, 0x1e, 0xd6, 0x08, 0x84, 0xef, 0x1a, 0xef, 0x52, 0x17, 0x8a, 0x29, 0x7b, 0xdf, 0xed, 0xf6, 0x7f, 0x4e, 0x3c, 0x1d, 0x87, 0x6a, 0xd1, 0x0b, 0x42, 0xc0, 0x3b, 0x5e, 0x67, 0xf7, 0xf8, 0xcf, 0xaf, 0x4d, 0xfe, 0xa4, 0xde, 0xf7, 0xab, 0x82, 0xfd, 0xe3, 0xed, 0x9b, 0x91, 0x0e, 0x2b, 0xe2, 0x2b, 0xc3, 0xfa, 0x46, 0xa2, 0xed, 0x09, 0x4e, 0xbd, 0x7c, 0x86, 0xa9, 0x51, 0x2c, 0x8c, 0x40, 0xcd, 0x54, 0x2f, 0xb5, 0x39, 0xc3, 0x43, 0x47, 0xef, 0x2b, 0xe4, 0xe7, 0xf1, 0x54, 0x3a, 0xf9, 0x60, 0xfd, 0x23, 0x47, 0x35, 0x4a, 0x7a, 0x1d, 0xf7, 0x1a, 0x23, 0x7d, 0x51, }; static const unsigned char ecdsa_secp384r1_sha512_9705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9705_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9705 = { .name = "ecdsa_secp384r1_sha512_9705", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9705_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9705_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9705_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 226 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9706 for ECDSA, tcId is 227 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9706_pubkey[] = { 0xe9, 0xc4, 0x15, 0xf8, 0xa7, 0x20, 0x55, 0x23, 0x95, 0x70, 0xc3, 0xc3, 0x70, 0xcf, 0x93, 0x80, 0xcd, 0xfa, 0xbb, 0x6e, 0xbd, 0xbd, 0x80, 0x58, 0xe2, 0xfc, 0x65, 0x19, 0x30, 0x80, 0x70, 0x78, 0x95, 0xea, 0x15, 0x66, 0xee, 0xb2, 0x61, 0x49, 0x60, 0x3f, 0x4b, 0x4d, 0x4c, 0x1e, 0x79, 0xd4, 0x96, 0xae, 0x17, 0xa0, 0x01, 0x42, 0x4d, 0x21, 0xea, 0xe4, 0xea, 0xa0, 0x10, 0x67, 0x04, 0x8b, 0xcd, 0x91, 0x96, 0x25, 0xfd, 0xd7, 0xef, 0xd8, 0x96, 0xd9, 0x80, 0x63, 0x3a, 0x0e, 0x2c, 0xa1, 0xf8, 0xc9, 0xb0, 0x2c, 0x99, 0xb6, 0x9a, 0x1e, 0x4f, 0xa5, 0x34, 0x68, 0xa2, 0xfe, 0x24, 0x4d, }; static const unsigned char ecdsa_secp384r1_sha512_9706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9706_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9706 = { .name = "ecdsa_secp384r1_sha512_9706", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9706_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9706_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9706_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9707 for ECDSA, tcId is 228 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9707_pubkey[] = { 0x63, 0x72, 0x23, 0xa9, 0x3d, 0xd6, 0x3a, 0xf6, 0xb3, 0x48, 0xf2, 0x46, 0xe7, 0xb3, 0xbc, 0xb3, 0x0b, 0xea, 0xa1, 0xdc, 0xc8, 0x88, 0xaf, 0x8e, 0x12, 0xe5, 0x08, 0x6a, 0xa0, 0x0f, 0x77, 0x92, 0xfb, 0xe4, 0x57, 0x46, 0x3c, 0x52, 0x42, 0x2d, 0x43, 0x5f, 0x43, 0x0a, 0xd1, 0xbb, 0x4b, 0x21, 0xf9, 0xa1, 0xe0, 0x17, 0x58, 0xd1, 0xe0, 0x25, 0xb1, 0x62, 0xd0, 0x9d, 0x3d, 0xf8, 0xb4, 0x03, 0x22, 0x6e, 0xd3, 0xb3, 0x5e, 0x41, 0x4c, 0x41, 0x65, 0x17, 0x40, 0xd5, 0x09, 0xd8, 0xcf, 0x6b, 0x5e, 0x55, 0x81, 0x18, 0x60, 0x7d, 0x10, 0x66, 0x99, 0x02, 0xab, 0xeb, 0xda, 0x3c, 0xa2, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha512_9707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9707_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9707 = { .name = "ecdsa_secp384r1_sha512_9707", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9707_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9707_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9707_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9708 for ECDSA, tcId is 229 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9708_pubkey[] = { 0x7f, 0x4d, 0xc2, 0x39, 0x82, 0xec, 0xc8, 0xb8, 0x4f, 0x54, 0x24, 0x17, 0x15, 0xc7, 0xe9, 0x4e, 0x95, 0x0f, 0x59, 0x6c, 0xe0, 0x33, 0x23, 0x76, 0x39, 0xa1, 0x5f, 0xef, 0xa5, 0xeb, 0x5c, 0x37, 0xcb, 0x2e, 0x56, 0x2d, 0x6d, 0x5b, 0x30, 0x51, 0xea, 0x15, 0x60, 0x0e, 0x33, 0x41, 0xa5, 0x65, 0xfe, 0xd2, 0xb5, 0x5b, 0x89, 0xd2, 0x79, 0x33, 0x21, 0x37, 0x48, 0x87, 0xb7, 0x88, 0x27, 0xee, 0x4c, 0xa2, 0x21, 0x6e, 0xac, 0x29, 0x93, 0xb1, 0xb0, 0x95, 0x84, 0x4d, 0xb7, 0x6a, 0xdc, 0x56, 0x04, 0x50, 0x13, 0x5c, 0x07, 0x2a, 0xc1, 0xa2, 0xc4, 0x16, 0x75, 0x20, 0x23, 0x7f, 0xbc, 0x9d, }; static const unsigned char ecdsa_secp384r1_sha512_9708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9708_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9708 = { .name = "ecdsa_secp384r1_sha512_9708", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9708_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9708_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9708_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9709 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9709_pubkey[] = { 0xa0, 0xae, 0x8c, 0x94, 0x9f, 0x63, 0xf1, 0xb6, 0xa5, 0xd0, 0x24, 0xc9, 0x9e, 0x0a, 0x29, 0x6e, 0xcd, 0x12, 0xd1, 0x96, 0xd3, 0xb1, 0x62, 0x5d, 0x4a, 0x76, 0x60, 0x00, 0x82, 0xa1, 0x4d, 0x45, 0x5a, 0xab, 0x26, 0x7c, 0x68, 0xf5, 0x71, 0xd8, 0x9a, 0xd0, 0x61, 0x9c, 0xb8, 0xe4, 0x76, 0xa1, 0x34, 0x63, 0x43, 0x36, 0x61, 0x1e, 0x1f, 0xd1, 0xd7, 0x28, 0xbc, 0xea, 0x58, 0x8d, 0x0e, 0x1b, 0x65, 0x2b, 0xbc, 0xa0, 0xe5, 0x2c, 0x1b, 0xfb, 0xd4, 0x38, 0x7a, 0x63, 0x37, 0xff, 0x41, 0xce, 0x13, 0xa6, 0x5c, 0x83, 0x06, 0x91, 0x5d, 0x2a, 0x39, 0x89, 0x7b, 0x98, 0x5d, 0x90, 0x9b, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9709_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9709 = { .name = "ecdsa_secp384r1_sha512_9709", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9709_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9709_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9709_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9710 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9710_pubkey[] = { 0x7c, 0xad, 0x16, 0x37, 0x72, 0x1f, 0x59, 0x88, 0xcb, 0x79, 0x67, 0x23, 0x8b, 0x1f, 0x47, 0xfd, 0x0b, 0x63, 0xf3, 0x0f, 0x20, 0x7a, 0x16, 0x59, 0x51, 0xfc, 0x6f, 0xb7, 0x4b, 0xa8, 0x68, 0xe5, 0xb4, 0x62, 0x62, 0x85, 0x95, 0xed, 0xc8, 0x0f, 0x75, 0x18, 0x2e, 0x56, 0x4a, 0x89, 0xc7, 0xa0, 0xfc, 0x04, 0xc4, 0x05, 0x93, 0x8a, 0xab, 0x3d, 0x68, 0x28, 0xe7, 0x2e, 0x86, 0xbc, 0x59, 0xa4, 0x00, 0x71, 0x92, 0x70, 0xf8, 0xee, 0x3c, 0xb5, 0xef, 0x92, 0x9a, 0xb5, 0x32, 0x87, 0xbb, 0x30, 0x8b, 0x51, 0xab, 0xd2, 0xe3, 0xff, 0xbc, 0x3d, 0x93, 0xb8, 0x74, 0x71, 0xbc, 0x2e, 0x37, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9710_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9710 = { .name = "ecdsa_secp384r1_sha512_9710", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9710_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9710_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9710_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9711 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9711_pubkey[] = { 0x20, 0x24, 0xec, 0xde, 0x0e, 0x61, 0x26, 0x29, 0x55, 0xb0, 0x30, 0x1a, 0xe6, 0xb0, 0xa4, 0xfb, 0xd7, 0x77, 0x17, 0x62, 0xfe, 0xb2, 0xde, 0x35, 0xee, 0xd1, 0x82, 0x3d, 0x26, 0x36, 0xc6, 0xe0, 0x01, 0xf7, 0xbf, 0xcd, 0xbc, 0x4e, 0x65, 0xb1, 0xea, 0x40, 0x22, 0x40, 0x90, 0x41, 0x19, 0x06, 0xd5, 0x53, 0x62, 0xa5, 0x70, 0xe8, 0x0a, 0x21, 0x26, 0xf0, 0x1d, 0x91, 0x9b, 0x60, 0x84, 0x40, 0x29, 0x40, 0x39, 0xbe, 0x03, 0x41, 0x9d, 0x51, 0x8b, 0x13, 0xcc, 0xa6, 0xa1, 0x59, 0x54, 0x14, 0x71, 0x7f, 0x1b, 0x4d, 0xdb, 0x84, 0x2b, 0x2c, 0x9d, 0x4f, 0x54, 0x3e, 0x68, 0x3b, 0x86, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_9711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9711_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9711 = { .name = "ecdsa_secp384r1_sha512_9711", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9711_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9711_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9711_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9712 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9712_pubkey[] = { 0x40, 0xc5, 0xf2, 0x60, 0x89, 0x56, 0x38, 0x0c, 0x39, 0x69, 0x5c, 0x74, 0x57, 0xdd, 0xce, 0x08, 0x80, 0xb5, 0xe8, 0xfa, 0xb0, 0xa9, 0xa3, 0x72, 0x6d, 0x0c, 0x85, 0x35, 0xb2, 0xff, 0x6c, 0xa1, 0x58, 0x14, 0xd8, 0x3e, 0xd8, 0x2c, 0x0a, 0xb3, 0x3a, 0xba, 0x76, 0xe0, 0x5e, 0x5c, 0x04, 0x76, 0xc9, 0xd1, 0x5a, 0x2a, 0x0b, 0x20, 0x41, 0x23, 0x7f, 0xf6, 0x1c, 0x26, 0x51, 0x9d, 0x1d, 0x74, 0xb1, 0x41, 0xd7, 0xa4, 0x49, 0x9f, 0xbd, 0xef, 0xc4, 0x14, 0xa9, 0x00, 0x93, 0x7a, 0x8f, 0xaf, 0x6e, 0xf5, 0x60, 0x55, 0x0c, 0x73, 0xcd, 0xb7, 0xed, 0xfe, 0x93, 0x14, 0xc4, 0x80, 0xbb, 0x2b, }; static const unsigned char ecdsa_secp384r1_sha512_9712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9712_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9712 = { .name = "ecdsa_secp384r1_sha512_9712", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9712_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9712_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9712_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 233 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9713 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9713_pubkey[] = { 0x74, 0xac, 0xdf, 0xd2, 0xab, 0x76, 0x3c, 0x59, 0x3b, 0xca, 0x30, 0xd2, 0x48, 0xf2, 0xbf, 0x26, 0xf1, 0x84, 0x3a, 0xcf, 0x9e, 0xb8, 0x9b, 0x4d, 0xfc, 0xb8, 0x45, 0x1d, 0x59, 0x68, 0x38, 0x12, 0xcf, 0x3c, 0xbe, 0x9a, 0x26, 0x4e, 0xa4, 0x35, 0x91, 0x2a, 0x89, 0x69, 0xc5, 0x3d, 0x7c, 0xb8, 0x49, 0x6d, 0xcb, 0x0a, 0x4e, 0xfe, 0xd6, 0x9b, 0x87, 0x11, 0x0f, 0xda, 0x20, 0xe6, 0x8e, 0xb6, 0xfe, 0xed, 0x2d, 0x51, 0x01, 0xa4, 0x95, 0x5d, 0x43, 0x75, 0x9f, 0x10, 0xb7, 0x3e, 0x8f, 0xfc, 0x31, 0x31, 0xe0, 0xc1, 0x2a, 0x76, 0x5b, 0x68, 0xbd, 0x21, 0x6e, 0xd1, 0xec, 0x4f, 0x5d, 0x2f, }; static const unsigned char ecdsa_secp384r1_sha512_9713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9713_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9713 = { .name = "ecdsa_secp384r1_sha512_9713", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9713_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9713_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9713_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9714 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9714_pubkey[] = { 0xda, 0x35, 0xd6, 0xa8, 0x28, 0x18, 0xae, 0x52, 0x54, 0xcb, 0x65, 0xfc, 0x86, 0xac, 0x42, 0xa4, 0x78, 0x73, 0xab, 0x24, 0x7a, 0x5c, 0xa6, 0x64, 0xe9, 0xf0, 0x95, 0xe8, 0xde, 0x9a, 0x57, 0xfe, 0x72, 0x18, 0x60, 0xe6, 0x6c, 0xbc, 0x6b, 0xd4, 0x99, 0x43, 0x1a, 0x48, 0xa3, 0x99, 0x17, 0x34, 0x94, 0x5b, 0xaa, 0xb2, 0x7c, 0xa6, 0x38, 0x37, 0x37, 0xb7, 0xdd, 0x45, 0x02, 0x3f, 0x99, 0x7a, 0xff, 0x5e, 0x16, 0x5f, 0x0f, 0xd7, 0xd8, 0xe5, 0xc0, 0xb5, 0xf9, 0xc5, 0xe7, 0x31, 0x58, 0x8a, 0xf2, 0xfe, 0x5b, 0xd8, 0x97, 0x6a, 0x0b, 0x87, 0x1c, 0x13, 0x2e, 0xdf, 0x21, 0xf3, 0x63, 0xaf, }; static const unsigned char ecdsa_secp384r1_sha512_9714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9714_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0xe1, 0x60, 0x43, 0xc2, 0xfa, 0xce, 0x20, 0x22, 0x8d, 0xba, 0x63, 0x66, 0xe1, 0x9e, 0xcc, 0x6d, 0xb7, 0x1b, 0x91, 0x8b, 0xbe, 0x8a, 0x89, 0x0b, 0x9d, 0xad, 0x2f, 0xce, 0xad, 0x18, 0x4e, 0x07, 0x1c, 0x9a, 0xc4, 0xac, 0xae, 0xe2, 0xf8, 0x31, 0xa1, 0xe4, 0xcc, 0x33, 0x79, 0x94, 0xf5, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9714 = { .name = "ecdsa_secp384r1_sha512_9714", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9714_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9714_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9714_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 235 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9715 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9715_pubkey[] = { 0xda, 0x35, 0xd6, 0xa8, 0x28, 0x18, 0xae, 0x52, 0x54, 0xcb, 0x65, 0xfc, 0x86, 0xac, 0x42, 0xa4, 0x78, 0x73, 0xab, 0x24, 0x7a, 0x5c, 0xa6, 0x64, 0xe9, 0xf0, 0x95, 0xe8, 0xde, 0x9a, 0x57, 0xfe, 0x72, 0x18, 0x60, 0xe6, 0x6c, 0xbc, 0x6b, 0xd4, 0x99, 0x43, 0x1a, 0x48, 0xa3, 0x99, 0x17, 0x34, 0x6b, 0xa4, 0x55, 0x4d, 0x83, 0x59, 0xc7, 0xc8, 0xc8, 0x48, 0x22, 0xba, 0xfd, 0xc0, 0x66, 0x85, 0x00, 0xa1, 0xe9, 0xa0, 0xf0, 0x28, 0x27, 0x1a, 0x3f, 0x4a, 0x06, 0x3a, 0x18, 0xce, 0xa7, 0x74, 0x0d, 0x01, 0xa4, 0x26, 0x68, 0x95, 0xf4, 0x78, 0xe3, 0xec, 0xd1, 0x21, 0xde, 0x0c, 0x9c, 0x50, }; static const unsigned char ecdsa_secp384r1_sha512_9715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9715_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0xe1, 0x60, 0x43, 0xc2, 0xfa, 0xce, 0x20, 0x22, 0x8d, 0xba, 0x63, 0x66, 0xe1, 0x9e, 0xcc, 0x6d, 0xb7, 0x1b, 0x91, 0x8b, 0xbe, 0x8a, 0x89, 0x0b, 0x9d, 0xad, 0x2f, 0xce, 0xad, 0x18, 0x4e, 0x07, 0x1c, 0x9a, 0xc4, 0xac, 0xae, 0xe2, 0xf8, 0x31, 0xa1, 0xe4, 0xcc, 0x33, 0x79, 0x94, 0xf5, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9715 = { .name = "ecdsa_secp384r1_sha512_9715", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9715_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9715_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9715_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 236 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9716 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9716_pubkey[] = { 0x82, 0x00, 0x64, 0x19, 0x3c, 0x71, 0xc7, 0x14, 0x1f, 0xe4, 0x1e, 0x71, 0x1f, 0xe8, 0x43, 0xa7, 0x47, 0x4b, 0xe6, 0xb0, 0x5f, 0x50, 0xcb, 0x0b, 0xe4, 0x11, 0xcd, 0xf7, 0xfc, 0x78, 0xea, 0x7e, 0xc9, 0x6a, 0xeb, 0x39, 0x91, 0xef, 0x76, 0x46, 0xbb, 0xde, 0x59, 0x15, 0x2d, 0x38, 0x1a, 0x32, 0x63, 0x1c, 0x5a, 0xdf, 0x93, 0xd4, 0x88, 0xb4, 0x5e, 0x67, 0xcc, 0x98, 0x90, 0xd8, 0xe7, 0x79, 0xf6, 0x39, 0x60, 0x19, 0x3d, 0xc1, 0x6b, 0xd1, 0xcc, 0x13, 0x6b, 0x3e, 0x28, 0xcf, 0x49, 0x9d, 0xfa, 0x8e, 0x7b, 0xff, 0x48, 0x2a, 0x01, 0x15, 0xe6, 0x08, 0x39, 0x87, 0xf7, 0xc0, 0x42, 0xfc, }; static const unsigned char ecdsa_secp384r1_sha512_9716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9716_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9716 = { .name = "ecdsa_secp384r1_sha512_9716", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9716_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9716_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9716_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 237 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9717 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9717_pubkey[] = { 0x52, 0xfa, 0xbc, 0x58, 0xea, 0xcf, 0xd3, 0xa4, 0x82, 0x8f, 0x51, 0xc4, 0x13, 0x20, 0x5c, 0x20, 0x88, 0x89, 0x41, 0xee, 0x45, 0xec, 0xac, 0x07, 0x6f, 0xfc, 0x23, 0x14, 0x5d, 0x83, 0x54, 0x20, 0x34, 0xaa, 0x01, 0x25, 0x3d, 0x6e, 0xbf, 0x34, 0xee, 0xef, 0xaa, 0x37, 0x1d, 0x6c, 0xee, 0x11, 0x9f, 0x34, 0x07, 0x12, 0xcd, 0x78, 0x15, 0x57, 0x12, 0x74, 0x65, 0x78, 0xf5, 0x63, 0x2d, 0xed, 0x2b, 0x2e, 0x5a, 0xfb, 0x43, 0xb0, 0x85, 0xf8, 0x17, 0x32, 0x79, 0x21, 0x08, 0xe3, 0x31, 0xa4, 0xb5, 0x0d, 0x27, 0xf3, 0x57, 0x82, 0x52, 0xff, 0xb0, 0xda, 0xa9, 0xd7, 0x86, 0x55, 0xa0, 0xab, }; static const unsigned char ecdsa_secp384r1_sha512_9717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9717_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9717 = { .name = "ecdsa_secp384r1_sha512_9717", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9717_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9717_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9717_sig, .siglen = 98, .result = -1, .comment = "point with x-coordinate 0, tcId is 238 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9718 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9718_pubkey[] = { 0xa8, 0xfd, 0xb1, 0xa0, 0x22, 0xd4, 0xe3, 0xa7, 0xee, 0x29, 0x61, 0x2b, 0xb1, 0x10, 0xac, 0xbe, 0xa2, 0x7d, 0xae, 0xcb, 0x82, 0x7d, 0x34, 0x4c, 0xb6, 0xc6, 0xa7, 0xac, 0xad, 0x61, 0xd3, 0x71, 0xdd, 0xc7, 0x84, 0x21, 0x47, 0xb7, 0x4a, 0x18, 0x76, 0x7e, 0x61, 0x87, 0x12, 0xf0, 0x4c, 0x1c, 0x64, 0xac, 0x6d, 0xaf, 0x8e, 0x08, 0xcd, 0x7b, 0x90, 0xa0, 0xc9, 0xd9, 0x12, 0x38, 0x84, 0xc7, 0xa7, 0xab, 0xb4, 0x66, 0x4a, 0x75, 0xb0, 0x89, 0x70, 0x64, 0xc3, 0xc8, 0x95, 0x6b, 0x0c, 0xa9, 0xc4, 0x17, 0x23, 0x7f, 0x8d, 0x5a, 0x7d, 0xd8, 0x42, 0x1b, 0x0d, 0x48, 0xc9, 0xd5, 0x2c, 0x7c, }; static const unsigned char ecdsa_secp384r1_sha512_9718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9718_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9718 = { .name = "ecdsa_secp384r1_sha512_9718", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9718_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9718_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9718_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 239 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9719 for ECDSA, tcId is 240 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9719_pubkey[] = { 0x87, 0x8e, 0x41, 0x4a, 0x5d, 0x6a, 0x0e, 0x0d, 0x1a, 0xb3, 0xc5, 0x56, 0x3c, 0x44, 0xe8, 0x0c, 0x3b, 0x2e, 0xf2, 0x65, 0xf2, 0x7a, 0x33, 0xed, 0x5c, 0xac, 0x10, 0x9a, 0xd6, 0x64, 0xc1, 0x26, 0x9b, 0xea, 0xe9, 0x03, 0x1d, 0x8d, 0x17, 0x8c, 0xbf, 0xdb, 0x1b, 0xfa, 0x7c, 0xc3, 0xcc, 0x79, 0xfa, 0xbb, 0xb2, 0xb6, 0xf7, 0xce, 0x54, 0x02, 0x68, 0x63, 0xb0, 0xf2, 0x97, 0xa4, 0xfe, 0x3d, 0xe8, 0x2d, 0x50, 0x44, 0xda, 0xca, 0xfe, 0xde, 0x49, 0xd5, 0xaf, 0xc6, 0x0b, 0xc8, 0x75, 0xf4, 0xb6, 0x59, 0xc0, 0x6c, 0x19, 0xbb, 0x74, 0xc7, 0xc2, 0x73, 0x51, 0x68, 0x7f, 0x52, 0xb4, 0x11, }; static const unsigned char ecdsa_secp384r1_sha512_9719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9719_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9719 = { .name = "ecdsa_secp384r1_sha512_9719", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9719_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9719_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9719_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 240 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9720 for ECDSA, tcId is 241 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9720_pubkey[] = { 0x8f, 0xaa, 0x84, 0x97, 0xae, 0x30, 0x06, 0xb6, 0x12, 0x99, 0x9b, 0x03, 0xf9, 0x1f, 0x78, 0x84, 0xd9, 0x55, 0x43, 0xa2, 0x66, 0x59, 0x8e, 0x89, 0x7b, 0x71, 0xe4, 0x4e, 0xcf, 0xd9, 0xab, 0xd7, 0x90, 0x8b, 0xfd, 0x12, 0x2b, 0xb3, 0x66, 0xc0, 0x16, 0xa5, 0x77, 0xcb, 0x1b, 0x2e, 0x2e, 0x41, 0x2b, 0xb1, 0xa7, 0x19, 0x28, 0x9c, 0x74, 0x98, 0x04, 0xca, 0x67, 0x7d, 0x14, 0xc0, 0x90, 0x0f, 0xab, 0x03, 0x1d, 0xa8, 0xc7, 0x07, 0x24, 0x72, 0x3a, 0x0d, 0x54, 0xe3, 0xa0, 0x03, 0x5d, 0xa7, 0xdc, 0xdd, 0xee, 0xf6, 0xfc, 0xe8, 0x0d, 0xf2, 0xf8, 0x19, 0x40, 0x81, 0x7d, 0x27, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp384r1_sha512_9720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9720_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9720 = { .name = "ecdsa_secp384r1_sha512_9720", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9720_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9720_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9720_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 241 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9721 for ECDSA, tcId is 242 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9721_pubkey[] = { 0xc5, 0x9c, 0xc6, 0x48, 0x62, 0x9e, 0x62, 0xdc, 0x18, 0x55, 0xf6, 0x53, 0x58, 0x3d, 0xa0, 0xac, 0xe6, 0x31, 0xe0, 0xf4, 0xb4, 0x58, 0x9b, 0x7f, 0xe5, 0xcc, 0x44, 0x9e, 0x12, 0xdf, 0x2d, 0xce, 0xeb, 0x86, 0x2c, 0xae, 0x00, 0xcd, 0x10, 0x02, 0x33, 0xb9, 0x99, 0xaf, 0x65, 0x7a, 0xe1, 0x6c, 0xb1, 0x38, 0xf6, 0x59, 0xdc, 0xc8, 0xd3, 0x42, 0xfd, 0x17, 0x66, 0x4d, 0x86, 0xc5, 0xbd, 0xda, 0xa8, 0x66, 0xc2, 0x0b, 0x00, 0x31, 0xf6, 0x5c, 0x84, 0x42, 0xa0, 0xed, 0x62, 0xb3, 0x37, 0xd0, 0x9a, 0xdb, 0x63, 0xa4, 0x43, 0xab, 0x14, 0xe3, 0x58, 0x7b, 0x92, 0x99, 0x05, 0x37, 0x17, 0xf9, }; static const unsigned char ecdsa_secp384r1_sha512_9721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9721_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9721 = { .name = "ecdsa_secp384r1_sha512_9721", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9721_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9721_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9721_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 242 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9722 for ECDSA, tcId is 243 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9722_pubkey[] = { 0x38, 0x6b, 0xdc, 0x98, 0xfe, 0x3c, 0x15, 0x6a, 0x79, 0x0e, 0xee, 0x6d, 0x55, 0x6e, 0x00, 0x36, 0xa4, 0xb8, 0x48, 0x53, 0x35, 0x8b, 0xd5, 0xab, 0x68, 0x56, 0xdb, 0x59, 0x85, 0xb9, 0xe8, 0xea, 0x92, 0xe8, 0xd4, 0xc1, 0xf8, 0xd0, 0x4e, 0xcd, 0x1e, 0x6d, 0xe4, 0x54, 0x8b, 0xf2, 0x88, 0x21, 0x55, 0x03, 0x29, 0x2c, 0x2c, 0x57, 0x0f, 0x57, 0xb4, 0x2f, 0x2c, 0xaf, 0x5e, 0x7a, 0xb9, 0x4d, 0x87, 0x81, 0x7a, 0x80, 0x0b, 0x2a, 0xf6, 0xff, 0xcd, 0x4f, 0x13, 0xe3, 0x0e, 0xdb, 0x8c, 0xaa, 0xf2, 0x3c, 0x6d, 0x5b, 0xe2, 0x2a, 0xbe, 0xa1, 0x8c, 0x2f, 0x94, 0x50, 0xad, 0x1a, 0x47, 0x15, }; static const unsigned char ecdsa_secp384r1_sha512_9722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9722_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9722 = { .name = "ecdsa_secp384r1_sha512_9722", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9722_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9722_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9722_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 243 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9723 for ECDSA, tcId is 244 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9723_pubkey[] = { 0x29, 0x4c, 0x37, 0xb3, 0xec, 0x91, 0xa1, 0xb0, 0x50, 0x00, 0x42, 0xd8, 0xb9, 0x7b, 0xc9, 0x61, 0x9d, 0x17, 0xf7, 0x84, 0xa9, 0xea, 0x52, 0x8c, 0x06, 0x02, 0xd7, 0x00, 0x78, 0x3b, 0xfb, 0xac, 0x9a, 0xc4, 0x9b, 0xff, 0x1e, 0x52, 0x7b, 0x39, 0xbb, 0x2a, 0x49, 0xd1, 0xdc, 0x3a, 0xbd, 0x47, 0x1e, 0x79, 0x86, 0x79, 0xb7, 0xc5, 0x8f, 0x4d, 0xfa, 0x33, 0xcf, 0xe4, 0x0b, 0xb6, 0x2e, 0x7d, 0xf6, 0xd2, 0xf1, 0x90, 0xb0, 0xf3, 0x80, 0x4c, 0x70, 0x0f, 0xa1, 0x9e, 0xba, 0x28, 0xad, 0x7f, 0xd6, 0xed, 0xd7, 0xe3, 0xa7, 0x54, 0xaf, 0x85, 0x29, 0x21, 0xc2, 0x70, 0x5f, 0x44, 0x4f, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha512_9723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9723_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9723 = { .name = "ecdsa_secp384r1_sha512_9723", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9723_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9723_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9723_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 244 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9724 for ECDSA, tcId is 245 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9724_pubkey[] = { 0xba, 0xc7, 0xcd, 0x8a, 0x77, 0x55, 0xa1, 0x74, 0xfa, 0xb5, 0x8e, 0x53, 0x74, 0xec, 0x55, 0xa5, 0xce, 0x53, 0x13, 0x23, 0x5e, 0xc5, 0x1c, 0x91, 0x9c, 0x66, 0x84, 0xbd, 0x49, 0x30, 0x5b, 0x70, 0x05, 0x39, 0x3f, 0x72, 0xbc, 0x4d, 0x81, 0x0c, 0xa8, 0x64, 0xfb, 0x04, 0x6d, 0x2c, 0x83, 0x41, 0x5a, 0x33, 0xb7, 0x7f, 0x41, 0x45, 0x68, 0x0b, 0xde, 0x63, 0xb6, 0x69, 0xea, 0x1f, 0x10, 0xf3, 0xee, 0x18, 0x36, 0x01, 0x8c, 0x11, 0xa6, 0xf9, 0x71, 0x55, 0xd9, 0x08, 0x27, 0xc8, 0x3d, 0xba, 0xc3, 0x88, 0x40, 0x2a, 0xc8, 0xf5, 0x93, 0x68, 0xdd, 0xaf, 0x2c, 0x33, 0x54, 0x86, 0x11, 0xaf, }; static const unsigned char ecdsa_secp384r1_sha512_9724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9724_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9724 = { .name = "ecdsa_secp384r1_sha512_9724", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9724_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9724_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9724_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 245 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9725 for ECDSA, tcId is 246 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9725_pubkey[] = { 0x98, 0x4a, 0x1c, 0x04, 0x44, 0x6a, 0x52, 0xad, 0x6a, 0x54, 0xd6, 0x4f, 0x2c, 0x6c, 0x49, 0xb6, 0x1f, 0x23, 0xab, 0xe7, 0xdc, 0x6f, 0x33, 0x71, 0x48, 0x96, 0xae, 0xfb, 0x0b, 0xef, 0xb9, 0xa5, 0x2b, 0x95, 0xb0, 0x48, 0x56, 0x11, 0x32, 0xc2, 0x8c, 0x98, 0x50, 0xe8, 0x51, 0xa6, 0xd0, 0x0e, 0xb4, 0xe1, 0x9f, 0x9d, 0xe5, 0x9d, 0x30, 0xca, 0x26, 0x80, 0x1f, 0x27, 0x89, 0xa3, 0x33, 0x0b, 0x08, 0x1e, 0x6b, 0xf5, 0x7f, 0x84, 0xf3, 0xc6, 0x10, 0x7d, 0xef, 0xd0, 0x5a, 0x95, 0x9c, 0xef, 0x5f, 0x29, 0x8a, 0xce, 0xa5, 0xa6, 0xb8, 0x7b, 0x38, 0xe2, 0x2c, 0x54, 0x09, 0xec, 0x9f, 0x71, }; static const unsigned char ecdsa_secp384r1_sha512_9725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9725_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9725 = { .name = "ecdsa_secp384r1_sha512_9725", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9725_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9725_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9725_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 246 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9726 for ECDSA, tcId is 247 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9726_pubkey[] = { 0xf0, 0x0d, 0x63, 0x27, 0xb1, 0x22, 0x6e, 0xaa, 0x1b, 0x08, 0x97, 0x29, 0x5e, 0xed, 0xda, 0xdf, 0x75, 0x10, 0x24, 0x9e, 0x6f, 0x0f, 0x81, 0x1b, 0x57, 0xd7, 0x19, 0x7e, 0xb6, 0xe6, 0x11, 0x99, 0xa8, 0xf1, 0xc6, 0x66, 0x5e, 0xc4, 0x82, 0x1d, 0x3e, 0x18, 0x67, 0x5d, 0x53, 0x99, 0xfd, 0xf7, 0x87, 0xbf, 0x1e, 0x3f, 0xb7, 0xfe, 0xe5, 0xcb, 0x35, 0x82, 0xa4, 0x15, 0x98, 0x08, 0xb7, 0x5e, 0x8b, 0x1d, 0xe0, 0x7e, 0xaf, 0xfd, 0x49, 0xd3, 0x88, 0x2d, 0x15, 0xc7, 0x74, 0x43, 0xad, 0x83, 0x21, 0x3d, 0x21, 0xa4, 0xbe, 0x92, 0x85, 0x22, 0x3a, 0xa4, 0x4a, 0x84, 0x0e, 0x47, 0xeb, 0x56, }; static const unsigned char ecdsa_secp384r1_sha512_9726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9726_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9726 = { .name = "ecdsa_secp384r1_sha512_9726", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9726_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9726_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9726_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 247 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9727 for ECDSA, tcId is 248 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9727_pubkey[] = { 0x45, 0x2b, 0x04, 0x77, 0x43, 0x34, 0x68, 0x98, 0xb0, 0x87, 0xda, 0xaa, 0xc5, 0xd9, 0x82, 0xd3, 0x78, 0x75, 0x2b, 0xa5, 0x34, 0xe5, 0x69, 0xf2, 0x1a, 0xc5, 0x92, 0xc0, 0x96, 0x54, 0xd0, 0x80, 0x9b, 0x94, 0xcc, 0xf8, 0x22, 0x04, 0x5f, 0x28, 0x85, 0xcb, 0xd3, 0xb2, 0x21, 0x45, 0x3c, 0xd6, 0x68, 0xa0, 0x1f, 0x50, 0x2f, 0x55, 0x1a, 0xf1, 0x4a, 0xab, 0x35, 0xc2, 0xc3, 0x0e, 0xc7, 0xba, 0xc0, 0x70, 0x9f, 0x52, 0x5f, 0xe7, 0x96, 0x04, 0x39, 0xb1, 0xe9, 0xde, 0x53, 0xcd, 0xad, 0x24, 0x5e, 0xfd, 0x89, 0x30, 0x96, 0x7c, 0xde, 0x6c, 0xaf, 0x8d, 0x22, 0x2c, 0x82, 0x00, 0xcd, 0x69, }; static const unsigned char ecdsa_secp384r1_sha512_9727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9727_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9727 = { .name = "ecdsa_secp384r1_sha512_9727", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9727_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9727_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9727_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 248 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9728 for ECDSA, tcId is 249 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9728_pubkey[] = { 0x44, 0xa8, 0xf5, 0x47, 0x95, 0xbd, 0xb8, 0x1e, 0x00, 0xfc, 0x84, 0xfa, 0x83, 0x73, 0xd1, 0x25, 0xb1, 0x6d, 0xa6, 0xe2, 0xbf, 0x4c, 0xfa, 0x9e, 0xe1, 0xdc, 0x13, 0xd7, 0xf1, 0x57, 0x39, 0x46, 0x83, 0x96, 0x3c, 0x17, 0x0f, 0x4c, 0x15, 0xe8, 0xcf, 0x21, 0xb5, 0x46, 0x6b, 0x49, 0xfa, 0x72, 0xbb, 0x56, 0x93, 0x65, 0x5b, 0x3e, 0x0a, 0x85, 0xe2, 0x7e, 0x3e, 0x6d, 0x26, 0x5f, 0xba, 0x01, 0x31, 0xf3, 0x08, 0x3b, 0xf4, 0x47, 0xf6, 0x2b, 0x6e, 0x3e, 0x52, 0x75, 0x49, 0x6f, 0x34, 0xda, 0xa5, 0x22, 0xe1, 0x61, 0x95, 0xd8, 0x14, 0x88, 0xa3, 0x1f, 0xe9, 0x82, 0xc2, 0xb7, 0x5f, 0x16, }; static const unsigned char ecdsa_secp384r1_sha512_9728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9728_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9728 = { .name = "ecdsa_secp384r1_sha512_9728", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9728_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9728_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9728_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 249 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9729 for ECDSA, tcId is 250 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9729_pubkey[] = { 0x10, 0xb3, 0x36, 0xb3, 0xaf, 0xb8, 0x0c, 0x80, 0xff, 0x50, 0x71, 0x6e, 0x73, 0x41, 0x10, 0xfe, 0x83, 0xcd, 0x5b, 0x8d, 0x41, 0xd7, 0xf2, 0xf9, 0x4f, 0x0d, 0xec, 0x7e, 0xcf, 0x1f, 0xac, 0xc6, 0x63, 0xba, 0xbb, 0x8e, 0xd9, 0x4e, 0x4b, 0xdf, 0x35, 0x92, 0xe3, 0x74, 0x64, 0x97, 0x0a, 0xfa, 0x9b, 0xe1, 0x44, 0xd3, 0x54, 0xe9, 0xb4, 0x56, 0x87, 0x3c, 0x63, 0x87, 0xa1, 0x2a, 0x3e, 0xef, 0xd3, 0xe2, 0xfe, 0xb6, 0x6f, 0x75, 0x19, 0xac, 0x72, 0xac, 0x50, 0x2c, 0x09, 0xd2, 0x0d, 0x72, 0xca, 0xe9, 0xd0, 0x4c, 0x88, 0x54, 0x9a, 0x28, 0x5c, 0x08, 0x10, 0x23, 0xe1, 0xc1, 0xda, 0x08, }; static const unsigned char ecdsa_secp384r1_sha512_9729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9729_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9729 = { .name = "ecdsa_secp384r1_sha512_9729", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9729_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9729_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9729_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 250 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9730 for ECDSA, tcId is 251 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9730_pubkey[] = { 0x81, 0xf9, 0x26, 0x30, 0x77, 0x87, 0x77, 0xa0, 0x17, 0x81, 0xe7, 0x92, 0x4f, 0xce, 0xd3, 0x5f, 0xc0, 0x90, 0x18, 0xd9, 0xb0, 0x08, 0x20, 0x88, 0x1b, 0x14, 0xa8, 0x14, 0xc1, 0x83, 0x6a, 0x1f, 0x73, 0xc3, 0x64, 0x1f, 0x7a, 0x17, 0xc8, 0x21, 0xff, 0xd9, 0x5d, 0xa9, 0x02, 0xef, 0xe1, 0x32, 0x22, 0x1d, 0x81, 0x32, 0x35, 0x09, 0x39, 0x1f, 0x7b, 0x61, 0xbd, 0x79, 0x60, 0x11, 0x33, 0x7e, 0x6a, 0xf3, 0x6a, 0xe0, 0x79, 0x8c, 0x17, 0x04, 0x3d, 0x79, 0xe8, 0xef, 0xcd, 0xae, 0x8e, 0x72, 0x4a, 0xdf, 0x96, 0xa2, 0x30, 0x92, 0x07, 0xc2, 0xd2, 0xcf, 0xd8, 0x8e, 0x8c, 0x48, 0x3a, 0xcb, }; static const unsigned char ecdsa_secp384r1_sha512_9730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9730_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9730 = { .name = "ecdsa_secp384r1_sha512_9730", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9730_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9730_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9730_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 251 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9731 for ECDSA, tcId is 252 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9731_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_9731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9731_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9731 = { .name = "ecdsa_secp384r1_sha512_9731", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9731_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9731_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9731_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 252 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9732 for ECDSA, tcId is 253 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9732_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_9732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9732_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9732 = { .name = "ecdsa_secp384r1_sha512_9732", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9732_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9732_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9732_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 253 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9733 for ECDSA, tcId is 254 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9733_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_9733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9733_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9733 = { .name = "ecdsa_secp384r1_sha512_9733", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9733_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9733_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9733_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 254 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9734 for ECDSA, tcId is 255 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9734_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_9734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9734_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9734 = { .name = "ecdsa_secp384r1_sha512_9734", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9734_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9734_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9734_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 255 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9735 for ECDSA, tcId is 256 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9735_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_9735_sig[] = { 0x22, 0x90, 0xc8, 0x86, 0xbb, 0xad, 0x8f, 0x53, 0x08, 0x95, 0x83, 0xd5, 0x43, 0xa2, 0x69, 0xa7, 0x27, 0x66, 0x56, 0x26, 0xd6, 0xb9, 0x4a, 0x37, 0x96, 0x32, 0x4c, 0x62, 0xd0, 0x89, 0x88, 0xf6, 0x6f, 0x60, 0x11, 0xe8, 0x45, 0x81, 0x1a, 0x03, 0x58, 0x9e, 0x92, 0xab, 0xe1, 0xf1, 0x7f, 0xaf, 0x66, 0xe2, 0xcb, 0x43, 0x80, 0x99, 0x7f, 0x4e, 0x7f, 0x85, 0x02, 0x25, 0x41, 0xad, 0xb2, 0x2d, 0x24, 0xd1, 0x19, 0x6b, 0xe6, 0x8a, 0x3d, 0xb8, 0x88, 0xb0, 0x3e, 0xb3, 0xd2, 0xd4, 0x0b, 0x0d, 0x9a, 0x3a, 0x6a, 0x00, 0xa1, 0xa4, 0x78, 0x2e, 0xe0, 0xa0, 0x0e, 0x84, 0x10, 0xba, 0x2d, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9735 = { .name = "ecdsa_secp384r1_sha512_9735", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9735_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha512_9735_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 256 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9736 for ECDSA, tcId is 257 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9736_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_9736_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha512_9736_sig[] = { 0x80, 0x71, 0xd8, 0xcf, 0x9d, 0xf9, 0xef, 0xef, 0x69, 0x6e, 0xba, 0xfc, 0x59, 0xf7, 0x4d, 0xb9, 0x0c, 0x1f, 0x1e, 0xcf, 0x5c, 0xcd, 0xe1, 0x88, 0x58, 0xde, 0x22, 0xfe, 0x4d, 0x7d, 0xf2, 0xa2, 0x5c, 0xb3, 0x00, 0x16, 0x95, 0xd7, 0x06, 0xdf, 0xd7, 0x98, 0x4b, 0x39, 0xdf, 0x65, 0xa0, 0xf4, 0x27, 0x29, 0x1e, 0x63, 0x39, 0xc2, 0xa7, 0xfe, 0xd7, 0xa1, 0x74, 0xbb, 0x97, 0xff, 0xe4, 0x1d, 0x8c, 0xfd, 0xc2, 0x0c, 0x12, 0x60, 0xc6, 0xec, 0x85, 0xd7, 0x25, 0x9f, 0x0c, 0xc7, 0x78, 0x1b, 0xf2, 0xae, 0x7a, 0x6e, 0x6f, 0xb4, 0xc0, 0x8e, 0x0d, 0x75, 0xb7, 0x38, 0x1b, 0xb7, 0xd9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9736 = { .name = "ecdsa_secp384r1_sha512_9736", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9736_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9736_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha512_9736_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 257 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9737 for ECDSA, tcId is 258 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9737_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_9737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9737_sig[] = { 0x47, 0x00, 0x14, 0xcc, 0xd7, 0xa1, 0xa5, 0xe5, 0x33, 0x3d, 0x30, 0x1c, 0x8e, 0xa5, 0x28, 0xac, 0x3b, 0x07, 0xb0, 0x19, 0x44, 0xaf, 0x30, 0xce, 0xc6, 0x0f, 0x4b, 0xad, 0x94, 0xdb, 0x10, 0x85, 0x09, 0xe4, 0x5b, 0xa3, 0x81, 0x81, 0x8b, 0x5b, 0xdf, 0xaf, 0x9d, 0xaf, 0x0d, 0x37, 0x23, 0x01, 0xe3, 0xd4, 0x9d, 0x6a, 0x05, 0xa7, 0x55, 0xaa, 0x87, 0x1d, 0x7c, 0xb9, 0x6f, 0xff, 0xb7, 0x9f, 0xed, 0x76, 0x25, 0xf8, 0x3f, 0x69, 0x49, 0x8b, 0xa0, 0x7c, 0x0d, 0x65, 0x16, 0x6a, 0x67, 0x10, 0x7c, 0x9a, 0x17, 0xae, 0x6e, 0x10, 0x28, 0xe2, 0x44, 0x37, 0x7a, 0x44, 0x09, 0x62, 0x17, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9737 = { .name = "ecdsa_secp384r1_sha512_9737", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9737_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9737_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9737_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 258 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9738 for ECDSA, tcId is 259 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9738_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_9738_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_9738_sig[] = { 0x37, 0x70, 0x44, 0xd3, 0x43, 0xf9, 0x00, 0x17, 0x5a, 0xc6, 0x83, 0x30, 0x71, 0xbe, 0x74, 0x96, 0x4c, 0xd6, 0x36, 0x41, 0x70, 0x39, 0xe1, 0x0e, 0x83, 0x7d, 0xa9, 0x4b, 0x69, 0x19, 0xbf, 0xfc, 0x3f, 0x5a, 0x51, 0x7b, 0x94, 0x5a, 0x45, 0x08, 0x52, 0xaf, 0x32, 0x59, 0xf5, 0xcb, 0xf1, 0x08, 0x32, 0xea, 0x25, 0x00, 0x63, 0x75, 0xc1, 0x53, 0x58, 0x1e, 0x80, 0xc0, 0x9f, 0x53, 0xad, 0x58, 0x5c, 0x73, 0x6f, 0x82, 0x3c, 0x70, 0x14, 0x7a, 0xba, 0x4f, 0xb4, 0x7b, 0xb0, 0xa2, 0x24, 0xfa, 0xe4, 0xd8, 0x81, 0x9a, 0xda, 0xd8, 0x0d, 0x4c, 0x14, 0x4e, 0xcc, 0x23, 0x80, 0x95, 0x4a, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9738 = { .name = "ecdsa_secp384r1_sha512_9738", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9738_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9738_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha512_9738_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 259 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9739 for ECDSA, tcId is 260 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9739_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_9739_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9739_sig[] = { 0xcc, 0xb1, 0x3c, 0x4d, 0xc9, 0x80, 0x5a, 0x9b, 0x4e, 0x06, 0xee, 0x25, 0xef, 0x8c, 0x75, 0x93, 0xea, 0xff, 0x73, 0x26, 0xc4, 0x32, 0xd4, 0xb1, 0x2b, 0x92, 0x31, 0x63, 0xcf, 0x1c, 0xbe, 0x5f, 0xe1, 0xcf, 0xd3, 0x54, 0x6c, 0x1d, 0x07, 0x61, 0xd8, 0x87, 0x4e, 0x83, 0xff, 0xd2, 0xe1, 0x5d, 0xdb, 0x1b, 0x0c, 0x08, 0x2a, 0xe3, 0x14, 0xb5, 0x39, 0xf0, 0x5e, 0x8a, 0x14, 0xad, 0x51, 0xe5, 0xdb, 0x37, 0xf2, 0x9c, 0xac, 0xea, 0x9b, 0x2a, 0xab, 0x63, 0xa0, 0x49, 0x17, 0xd5, 0x8d, 0x00, 0x8c, 0xf3, 0xf7, 0xba, 0x41, 0xd5, 0xea, 0x28, 0x0f, 0x3b, 0x6a, 0x67, 0xbe, 0x3a, 0xe8, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9739 = { .name = "ecdsa_secp384r1_sha512_9739", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9739_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9739_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9739_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 260 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9740 for ECDSA, tcId is 261 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9740_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_9740_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9740_sig[] = { 0xc7, 0x9a, 0x30, 0xe3, 0x6d, 0x21, 0x26, 0xb3, 0x48, 0xdd, 0x9e, 0xb2, 0xf5, 0xdb, 0x6a, 0xa9, 0x8f, 0x79, 0xd8, 0x02, 0x14, 0x02, 0x7e, 0x51, 0xbc, 0xf3, 0xca, 0xbe, 0xc1, 0x88, 0xa7, 0xeb, 0xaf, 0x25, 0xcb, 0x7b, 0xbe, 0x9e, 0xc6, 0xbf, 0xed, 0x13, 0x5e, 0x2a, 0x3b, 0x70, 0xe9, 0x16, 0x24, 0x13, 0x38, 0xee, 0x2a, 0xc9, 0x31, 0xad, 0xea, 0x9a, 0x56, 0xe7, 0xbf, 0xe9, 0x09, 0x94, 0x71, 0x28, 0xd5, 0x4d, 0x51, 0x22, 0xa4, 0x7b, 0x00, 0xc2, 0x78, 0xe6, 0x84, 0xe1, 0x01, 0x02, 0x74, 0x0d, 0x26, 0xe8, 0x9e, 0x34, 0x32, 0x90, 0xa5, 0xb2, 0xfa, 0x8b, 0x40, 0x1f, 0xae, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9740 = { .name = "ecdsa_secp384r1_sha512_9740", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9740_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9740_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9740_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 261 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9741 for ECDSA, tcId is 262 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9741_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_9741_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9741_sig[] = { 0x0d, 0xf8, 0x2e, 0x4e, 0xc2, 0x96, 0x0e, 0x3d, 0xf6, 0x14, 0xf8, 0xb4, 0x9c, 0xec, 0x9a, 0x4e, 0xe1, 0x05, 0x43, 0x65, 0x41, 0x42, 0x41, 0x36, 0x1f, 0xee, 0xc9, 0xd9, 0xd9, 0xb6, 0x90, 0x9d, 0x87, 0x75, 0xf2, 0x22, 0xec, 0x38, 0x5a, 0x14, 0xaf, 0xab, 0x46, 0x26, 0x6d, 0xb3, 0x90, 0xc3, 0x09, 0x68, 0x48, 0x5e, 0x85, 0x4a, 0xdd, 0xba, 0x0f, 0x83, 0x54, 0xe6, 0x77, 0xe9, 0x55, 0xe1, 0xef, 0x2d, 0xf9, 0x73, 0xd5, 0x64, 0xc4, 0x9f, 0x65, 0xf2, 0x56, 0x2c, 0xb2, 0xa2, 0xb8, 0x0d, 0x75, 0xe9, 0x2f, 0x87, 0x84, 0x04, 0x29, 0x55, 0xf7, 0xb8, 0x76, 0x5f, 0x60, 0x9c, 0xe2, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9741 = { .name = "ecdsa_secp384r1_sha512_9741", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9741_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9741_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9741_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 262 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9742 for ECDSA, tcId is 263 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9742_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_9742_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9742_sig[] = { 0x1f, 0xaf, 0xd8, 0x3d, 0x72, 0x84, 0x22, 0xe1, 0x48, 0x5f, 0x1e, 0x52, 0xe5, 0xb6, 0x31, 0x54, 0x86, 0x47, 0xcc, 0x3c, 0x76, 0xc1, 0x09, 0xc3, 0x17, 0x7a, 0x73, 0x75, 0x1d, 0x91, 0xa1, 0x90, 0x12, 0xfa, 0x46, 0x28, 0xb2, 0x18, 0xf2, 0x22, 0x9f, 0xc4, 0xd5, 0x5f, 0x10, 0x5f, 0xe0, 0x01, 0x44, 0x74, 0xf9, 0xaf, 0x7b, 0x4b, 0x0b, 0xb9, 0x6f, 0xdb, 0x05, 0xae, 0x91, 0x8f, 0x79, 0x90, 0x24, 0xe8, 0xd5, 0xb8, 0x64, 0xe4, 0x9c, 0xcd, 0x04, 0x7c, 0xf9, 0x7e, 0x7b, 0x9f, 0x87, 0x63, 0xcc, 0xe0, 0x15, 0xc1, 0x1c, 0xf1, 0xf4, 0x61, 0xc9, 0x02, 0x7c, 0xb9, 0x01, 0x05, 0x51, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9742 = { .name = "ecdsa_secp384r1_sha512_9742", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9742_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9742_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9742_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 263 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9743 for ECDSA, tcId is 264 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9743_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_9743_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9743_sig[] = { 0xe6, 0x02, 0x5b, 0xb9, 0x57, 0xab, 0x19, 0x7f, 0xb4, 0xc0, 0x80, 0xd0, 0xa5, 0xc6, 0x47, 0xe4, 0x28, 0xaf, 0xb0, 0xd7, 0xcc, 0x23, 0x5c, 0x60, 0x5a, 0xe9, 0x75, 0x45, 0x49, 0x4f, 0xd3, 0x1a, 0x99, 0x79, 0x79, 0x0b, 0xb2, 0xda, 0x6e, 0x1c, 0xf1, 0x86, 0x78, 0x94, 0x22, 0xb1, 0x5c, 0x97, 0x8a, 0xe9, 0x87, 0x22, 0x91, 0x43, 0x0d, 0x1b, 0xb3, 0x71, 0xef, 0x72, 0x36, 0x0d, 0xad, 0x5a, 0xfb, 0xb6, 0xfb, 0x00, 0x1f, 0x40, 0x3d, 0x9a, 0xaa, 0x14, 0x45, 0xf0, 0x32, 0x6e, 0xb1, 0xee, 0xf7, 0x75, 0xc9, 0xdf, 0xe1, 0xd7, 0xef, 0x8b, 0xf4, 0xe7, 0x44, 0x82, 0x21, 0x08, 0xd2, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9743 = { .name = "ecdsa_secp384r1_sha512_9743", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9743_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9743_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9743_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 264 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9744 for ECDSA, tcId is 265 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9744_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_9744_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9744_sig[] = { 0x87, 0x7d, 0x55, 0x67, 0xc1, 0x8f, 0xa5, 0x68, 0x25, 0x90, 0x05, 0xa8, 0x9c, 0x23, 0x00, 0xd1, 0xb3, 0x82, 0x5b, 0x73, 0x2f, 0xa1, 0x49, 0x64, 0xc1, 0x47, 0x7d, 0x4b, 0x30, 0x98, 0xaf, 0xd0, 0x93, 0x84, 0xb9, 0x7d, 0x49, 0x74, 0x64, 0xad, 0xba, 0x41, 0xe9, 0xdf, 0x8a, 0x74, 0xd3, 0x39, 0xc4, 0x0f, 0x07, 0x60, 0x71, 0x7b, 0x4b, 0x3b, 0xae, 0x75, 0x74, 0x2b, 0x6d, 0xc3, 0xdc, 0xf0, 0x4c, 0xc2, 0x2a, 0x44, 0x9c, 0xfe, 0xa1, 0x9d, 0x30, 0x5e, 0x06, 0x58, 0xcb, 0x70, 0x5f, 0xda, 0x75, 0x16, 0x3e, 0x73, 0x99, 0xe0, 0xb3, 0x12, 0x5c, 0xa7, 0xd1, 0x91, 0x9c, 0x13, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9744 = { .name = "ecdsa_secp384r1_sha512_9744", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9744_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9744_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9744_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 265 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9745 for ECDSA, tcId is 266 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9745_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_9745_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9745_sig[] = { 0xe7, 0x06, 0xb0, 0x04, 0x5a, 0x6f, 0x54, 0xbd, 0x17, 0x5e, 0x24, 0x37, 0xb4, 0x87, 0x67, 0xb0, 0x20, 0x4f, 0x93, 0xd8, 0xa4, 0xd9, 0xd3, 0xd0, 0x08, 0x38, 0x27, 0x81, 0x37, 0xe5, 0xb6, 0x70, 0xde, 0x43, 0x05, 0xc5, 0xc5, 0x5e, 0x49, 0x05, 0x9b, 0x8b, 0x5f, 0x6e, 0x26, 0x46, 0x54, 0xc9, 0x40, 0x57, 0x41, 0xad, 0xff, 0x94, 0xaf, 0xd9, 0xa8, 0x8e, 0x08, 0xd0, 0xb1, 0x02, 0x19, 0x11, 0xfa, 0x4c, 0xed, 0xb2, 0x46, 0x6b, 0x1a, 0x8f, 0xd3, 0x02, 0xa5, 0xb5, 0xd9, 0x65, 0x66, 0xad, 0xa6, 0x3c, 0xcb, 0x82, 0xb6, 0xc5, 0xe8, 0x45, 0x2f, 0xde, 0x86, 0x0c, 0x54, 0x5e, 0x0a, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9745 = { .name = "ecdsa_secp384r1_sha512_9745", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9745_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9745_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9745_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 266 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9746 for ECDSA, tcId is 267 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9746_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_9746_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9746_sig[] = { 0x0c, 0x57, 0xce, 0x2b, 0xc5, 0x79, 0xfb, 0xd3, 0xa7, 0x59, 0xdf, 0xbf, 0x5e, 0x84, 0xc3, 0xce, 0xf2, 0x41, 0x48, 0x46, 0xa2, 0xe3, 0x00, 0x45, 0x3e, 0x1e, 0x4c, 0x51, 0x88, 0xf2, 0x44, 0x32, 0xb1, 0x4c, 0xa6, 0x47, 0xa7, 0x33, 0xb6, 0xad, 0x35, 0xc9, 0x80, 0xa8, 0x80, 0xd3, 0x61, 0x45, 0xf1, 0x2a, 0x11, 0x9e, 0x22, 0xd4, 0x8b, 0x82, 0x04, 0x9d, 0xf6, 0x11, 0xf1, 0xc8, 0x51, 0xfb, 0x22, 0x79, 0x50, 0x56, 0x49, 0x8a, 0x87, 0x3c, 0x73, 0x0f, 0xcb, 0x9f, 0xd8, 0xf3, 0x14, 0x72, 0x8d, 0xe0, 0x29, 0x8b, 0x9b, 0x22, 0xc3, 0x48, 0xab, 0xc6, 0xde, 0x2a, 0xba, 0x97, 0xe9, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9746 = { .name = "ecdsa_secp384r1_sha512_9746", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9746_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9746_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9746_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 267 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9747 for ECDSA, tcId is 268 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9747_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_9747_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9747_sig[] = { 0x9a, 0x8f, 0x80, 0x69, 0x7c, 0xcf, 0x2e, 0x06, 0x17, 0x61, 0x20, 0x27, 0xd8, 0x61, 0xa3, 0xa3, 0xa6, 0x57, 0xfb, 0x75, 0xcc, 0x82, 0x81, 0x0b, 0x40, 0xdd, 0x50, 0x72, 0xd3, 0x9f, 0xf3, 0x7e, 0xca, 0x29, 0x00, 0x83, 0x90, 0xda, 0x35, 0x61, 0x37, 0xe2, 0xc9, 0xba, 0xbd, 0x81, 0x41, 0x98, 0xa8, 0x65, 0x37, 0xa8, 0x3c, 0x3d, 0x57, 0xda, 0x50, 0xe4, 0xb2, 0x9b, 0x47, 0xdc, 0xc3, 0x71, 0x7c, 0x5a, 0x1e, 0xd0, 0xff, 0xf1, 0x8a, 0xde, 0x8d, 0xcc, 0xe4, 0x22, 0x0e, 0xac, 0x63, 0xaa, 0xb6, 0x0b, 0x9b, 0xfe, 0xd5, 0xf1, 0xbd, 0xd2, 0x41, 0xda, 0xb6, 0x55, 0xa9, 0xbd, 0xd7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9747 = { .name = "ecdsa_secp384r1_sha512_9747", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9747_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9747_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9747_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 268 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9748 for ECDSA, tcId is 269 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9748_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_9748_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9748_sig[] = { 0x93, 0x71, 0x8f, 0x6f, 0x85, 0x42, 0x72, 0x5f, 0x62, 0xde, 0x70, 0x39, 0xfc, 0x19, 0x3d, 0x3f, 0xcc, 0x81, 0xd6, 0x22, 0x23, 0x0c, 0xcc, 0x94, 0xe9, 0xe2, 0x65, 0x39, 0x0b, 0x38, 0x5a, 0xf3, 0xa3, 0xba, 0x50, 0xc9, 0x1a, 0x9d, 0x6a, 0x5b, 0x1e, 0x07, 0xd7, 0x9a, 0xf2, 0xbd, 0x80, 0xb2, 0xd0, 0x84, 0x99, 0xf3, 0xd2, 0x98, 0xe8, 0xaf, 0xec, 0xea, 0x12, 0x22, 0x65, 0xa3, 0x6d, 0xbf, 0x33, 0x72, 0x59, 0x02, 0x06, 0x54, 0x73, 0x97, 0x83, 0xc8, 0xec, 0x8e, 0xf7, 0x83, 0xd0, 0x72, 0x55, 0x5b, 0x59, 0x07, 0x28, 0x5c, 0xe8, 0x3f, 0xc8, 0xce, 0xd9, 0xc8, 0x39, 0x8c, 0x62, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9748 = { .name = "ecdsa_secp384r1_sha512_9748", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9748_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9748_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9748_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 269 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9749 for ECDSA, tcId is 270 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9749_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_9749_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9749_sig[] = { 0xce, 0x26, 0xe4, 0x2c, 0x49, 0x0d, 0xec, 0x92, 0xcf, 0x59, 0xd6, 0xb1, 0xba, 0x75, 0xc9, 0xa1, 0x40, 0x0d, 0x6e, 0x5c, 0x3f, 0xd7, 0xc4, 0x7e, 0x1e, 0xeb, 0x1c, 0xde, 0xd3, 0x0a, 0x3a, 0x3d, 0x18, 0xc8, 0x1c, 0xdf, 0xdc, 0xba, 0xd2, 0x74, 0x2a, 0x97, 0x29, 0x33, 0x69, 0xce, 0x21, 0xc2, 0x94, 0x67, 0x10, 0x85, 0xd9, 0x41, 0xfd, 0x27, 0xd4, 0x95, 0x45, 0x2a, 0x4c, 0x85, 0x59, 0xa1, 0xfe, 0x24, 0xf3, 0x22, 0x5f, 0x5b, 0x8e, 0xf7, 0x5f, 0xaf, 0x9d, 0x3f, 0xb0, 0x13, 0x72, 0xc5, 0x86, 0xe2, 0x3b, 0x82, 0x71, 0x43, 0x59, 0xd0, 0xe4, 0x71, 0x44, 0xff, 0x5d, 0x94, 0x61, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9749 = { .name = "ecdsa_secp384r1_sha512_9749", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9749_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9749_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9749_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 270 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9750 for ECDSA, tcId is 271 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9750_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_9750_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9750_sig[] = { 0xff, 0xc4, 0x73, 0x8a, 0xcf, 0x71, 0xf0, 0x4a, 0x13, 0x10, 0x4c, 0x32, 0x8c, 0x13, 0x8b, 0x33, 0x1f, 0xb7, 0x20, 0x2a, 0xef, 0x66, 0xf5, 0x83, 0xba, 0x54, 0x3e, 0xd4, 0x90, 0xd1, 0x29, 0x93, 0xc1, 0x8f, 0x72, 0x4c, 0x81, 0xad, 0x0f, 0x7e, 0xa1, 0x8d, 0xae, 0x35, 0x2e, 0x5c, 0x64, 0x80, 0xe6, 0x7d, 0x4c, 0xcd, 0xeb, 0x68, 0xa9, 0xa7, 0x31, 0xf0, 0x6f, 0x77, 0xea, 0xe0, 0x01, 0x75, 0xbe, 0x07, 0x6d, 0x92, 0x52, 0x9b, 0x10, 0x9a, 0x62, 0x54, 0x26, 0x92, 0xc8, 0x74, 0x9d, 0xdf, 0xde, 0x03, 0xbe, 0xd1, 0xc1, 0x19, 0xa5, 0x90, 0x1a, 0x4e, 0x85, 0x2f, 0x21, 0x15, 0x57, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9750 = { .name = "ecdsa_secp384r1_sha512_9750", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9750_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9750_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9750_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 271 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9751 for ECDSA, tcId is 272 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9751_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_9751_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9751_sig[] = { 0xe6, 0xfa, 0x84, 0x55, 0xbc, 0x14, 0xe7, 0x30, 0xe4, 0xca, 0x1e, 0xb5, 0xfa, 0xf6, 0xc8, 0x18, 0x0f, 0x2f, 0x23, 0x10, 0x69, 0xb9, 0x3a, 0x0b, 0xb1, 0x7d, 0x33, 0xad, 0x55, 0x13, 0xd9, 0x3a, 0x36, 0x21, 0x4f, 0x5c, 0xe8, 0x2c, 0xa6, 0xbd, 0x78, 0x5c, 0xcb, 0xac, 0xf7, 0x24, 0x9a, 0x4c, 0x39, 0x79, 0xb4, 0xb4, 0x80, 0xf4, 0x96, 0x35, 0x7c, 0x25, 0xaa, 0x3f, 0xc8, 0x50, 0xc6, 0x7f, 0xf1, 0xc5, 0xa2, 0xaa, 0xbd, 0x80, 0xb6, 0x02, 0x0d, 0x2e, 0xac, 0x3d, 0xd7, 0x83, 0x3c, 0xf2, 0x38, 0x7d, 0x0b, 0xe6, 0x4d, 0xf5, 0x4a, 0x0e, 0x9b, 0x59, 0xf1, 0x2c, 0x3b, 0xeb, 0xf8, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9751 = { .name = "ecdsa_secp384r1_sha512_9751", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9751_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9751_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9751_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 272 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9752 for ECDSA, tcId is 273 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9752_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_9752_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9752_sig[] = { 0x1b, 0x49, 0xb0, 0x37, 0x78, 0x38, 0x38, 0x86, 0x7f, 0xba, 0xa5, 0x73, 0x05, 0xb2, 0xaa, 0x28, 0xdf, 0x1b, 0x0e, 0xc4, 0x0f, 0x43, 0x14, 0x00, 0x67, 0xfa, 0xfd, 0xea, 0x63, 0xf8, 0x7c, 0x02, 0xdf, 0xb0, 0xe6, 0xf4, 0x1b, 0x76, 0x0f, 0xbd, 0xf5, 0x10, 0x05, 0xe9, 0x0c, 0x0c, 0x37, 0x15, 0xe7, 0xd4, 0xeb, 0x6e, 0xe6, 0x16, 0x11, 0x26, 0x4e, 0xa8, 0xa6, 0x68, 0xa7, 0x02, 0x87, 0xe3, 0xd6, 0x34, 0x89, 0x27, 0x3d, 0xa2, 0xb3, 0x0a, 0xd0, 0xc2, 0x21, 0xf1, 0x89, 0x3f, 0xea, 0xea, 0x3e, 0x87, 0x8c, 0x9a, 0x81, 0xc6, 0xce, 0xc8, 0x65, 0x89, 0x9d, 0xbd, 0xa4, 0xfa, 0x79, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9752 = { .name = "ecdsa_secp384r1_sha512_9752", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9752_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9752_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9752_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 273 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9753 for ECDSA, tcId is 274 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9753_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_9753_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9753_sig[] = { 0x91, 0xd9, 0xda, 0x3d, 0x57, 0x74, 0x08, 0x18, 0x9d, 0xca, 0xae, 0x33, 0xd9, 0x5e, 0xd0, 0xa0, 0x11, 0x8a, 0xfd, 0x46, 0x0d, 0x52, 0x28, 0xfa, 0x35, 0x2b, 0x6e, 0xa6, 0x71, 0xb1, 0x72, 0xeb, 0x41, 0x38, 0x16, 0xa7, 0x06, 0x21, 0xdd, 0xaf, 0x23, 0xc5, 0xe2, 0xef, 0x79, 0xdf, 0x0c, 0x11, 0x05, 0x3d, 0xad, 0xbf, 0xcd, 0x56, 0x4b, 0xdd, 0xbe, 0x44, 0xe0, 0xec, 0xb4, 0xd1, 0xe6, 0x08, 0xdb, 0xd3, 0x5d, 0x4e, 0x83, 0xb6, 0x63, 0x4c, 0xc7, 0x2a, 0xfb, 0x87, 0xa2, 0xd6, 0x16, 0x75, 0xee, 0x13, 0x96, 0x0c, 0x24, 0x3f, 0x6b, 0xe7, 0x05, 0x19, 0xe1, 0x67, 0xb1, 0xd3, 0xce, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9753 = { .name = "ecdsa_secp384r1_sha512_9753", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9753_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9753_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9753_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 274 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9754 for ECDSA, tcId is 275 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9754_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_9754_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9754_sig[] = { 0xaf, 0x0e, 0xd6, 0xce, 0x64, 0x19, 0x66, 0x2d, 0xb8, 0x0f, 0x02, 0xa2, 0xb6, 0x32, 0x67, 0x54, 0x45, 0xc7, 0xbf, 0x8a, 0x34, 0xbb, 0xac, 0xdc, 0x81, 0xcc, 0x5d, 0xd3, 0x06, 0xc6, 0x57, 0xca, 0x4c, 0x5a, 0x3f, 0xb1, 0xb0, 0x5f, 0x35, 0x8d, 0x8f, 0x36, 0xfd, 0xa8, 0xae, 0x23, 0x88, 0x06, 0x46, 0xb4, 0x72, 0xc0, 0xba, 0xdb, 0x17, 0xe0, 0x89, 0xc8, 0xf9, 0x69, 0x7f, 0xd0, 0xb4, 0xce, 0x71, 0xf0, 0xf4, 0x47, 0x1b, 0x23, 0x54, 0x83, 0xd4, 0xc8, 0xdd, 0x3d, 0x00, 0xaa, 0x28, 0x2c, 0xde, 0x99, 0x02, 0x53, 0xdf, 0x38, 0xba, 0x73, 0x3b, 0x2a, 0xd8, 0x2a, 0x60, 0x1c, 0x75, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9754 = { .name = "ecdsa_secp384r1_sha512_9754", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9754_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9754_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9754_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 275 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9755 for ECDSA, tcId is 276 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9755_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_9755_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9755_sig[] = { 0xe2, 0xaa, 0x94, 0x68, 0xcc, 0xaa, 0xad, 0xad, 0x8b, 0x9f, 0x43, 0xa4, 0x29, 0xc9, 0x7f, 0x0c, 0x6a, 0x7e, 0xed, 0xcb, 0x4d, 0x4a, 0xf7, 0x2d, 0x63, 0x9d, 0xf0, 0xfe, 0x53, 0xf6, 0x10, 0xb9, 0x53, 0x40, 0x8a, 0x8e, 0x24, 0xe8, 0xdb, 0x13, 0x85, 0x51, 0x77, 0x07, 0x50, 0x68, 0x0f, 0x7a, 0xd8, 0x10, 0x20, 0x84, 0x6d, 0x1c, 0x50, 0xee, 0x9a, 0xe2, 0x36, 0x01, 0xdd, 0x63, 0x8c, 0xb7, 0x1b, 0x38, 0xd3, 0x7f, 0xb5, 0x55, 0x26, 0x8c, 0x2f, 0xa1, 0xad, 0x8a, 0x76, 0x1f, 0xa7, 0xb2, 0x7a, 0xfc, 0xab, 0x2f, 0xa6, 0x92, 0x24, 0xd1, 0xf9, 0x76, 0x69, 0x99, 0x14, 0xe0, 0x9d, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9755 = { .name = "ecdsa_secp384r1_sha512_9755", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9755_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9755_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9755_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 276 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9756 for ECDSA, tcId is 277 in file ecdsa_secp384r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9756_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_9756_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_9756_sig[] = { 0x6b, 0xf6, 0xfa, 0x7a, 0x66, 0x38, 0x02, 0xc3, 0x38, 0x2c, 0xc5, 0xfd, 0x02, 0x00, 0x4e, 0xc7, 0x1e, 0x5a, 0x03, 0x1e, 0x3d, 0x9b, 0xfc, 0x08, 0x58, 0xfa, 0x99, 0x4e, 0x88, 0x49, 0x7a, 0x77, 0x82, 0x30, 0x8b, 0xc2, 0x65, 0xb8, 0x23, 0x7a, 0x6b, 0xbb, 0xdd, 0x38, 0x65, 0x8b, 0x36, 0xfc, 0x3a, 0x9d, 0x59, 0x41, 0xa0, 0x13, 0xbf, 0x70, 0xd9, 0x9c, 0xc3, 0xff, 0x25, 0x5c, 0xe8, 0x55, 0x73, 0x68, 0x8d, 0xac, 0x40, 0x34, 0x4b, 0x5d, 0xb7, 0x14, 0x4b, 0x19, 0xbf, 0x57, 0xbb, 0x27, 0x01, 0xe6, 0x85, 0x0a, 0x8f, 0x81, 0x97, 0x96, 0xb6, 0x7f, 0x7d, 0x0b, 0x6a, 0xea, 0x7e, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9756 = { .name = "ecdsa_secp384r1_sha512_9756", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9756_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9756_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_9756_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 277 in file ecdsa_secp384r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9757 for ECDSA, tcId is 1 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9757_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9757_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0x9f, 0xbb, 0x19, 0x7e, 0x4c, 0x42, 0x50, 0x92, 0x6e, 0x30, 0xc5, 0x30, 0x3a, 0x2c, 0x2d, 0x34, 0x25, 0x0f, 0x17, 0xfc, 0xf5, 0xab, 0x31, 0x81, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9757 = { .name = "ecdsa_secp384r1_sha512_9757", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9757_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9757_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9757_sig, .siglen = 96, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9758 for ECDSA, tcId is 2 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9758_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9758_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9758 = { .name = "ecdsa_secp384r1_sha512_9758", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9758_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9758_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9758_sig, .siglen = 96, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 2 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9759 for ECDSA, tcId is 3 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9759_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9759_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9759 = { .name = "ecdsa_secp384r1_sha512_9759", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9759_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9759_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9759_sig, .siglen = 96, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 3 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9760 for ECDSA, tcId is 4 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9760_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9760_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9760 = { .name = "ecdsa_secp384r1_sha512_9760", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9760_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9760_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9760_sig, .siglen = 96, .result = 1, .comment = "valid, tcId is 4 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9761 for ECDSA, tcId is 5 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9761_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9761_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9761 = { .name = "ecdsa_secp384r1_sha512_9761", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9761_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9761_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9761_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of sequence, tcId is 5 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9762 for ECDSA, tcId is 6 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9762_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9762_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9762 = { .name = "ecdsa_secp384r1_sha512_9762", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9762_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9762_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9762_sig, .siglen = 96, .result = 0, .comment = "length of sequence contains leading 0, tcId is 6 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9763 for ECDSA, tcId is 69 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9763_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9763_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9763 = { .name = "ecdsa_secp384r1_sha512_9763", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9763_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9763_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9763_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9764 for ECDSA, tcId is 70 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9764_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9764_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9764 = { .name = "ecdsa_secp384r1_sha512_9764", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9764_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9764_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9764_sig, .siglen = 96, .result = 0, .comment = "long form encoding of length of integer, tcId is 70 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9765 for ECDSA, tcId is 71 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9765_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9765_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9765 = { .name = "ecdsa_secp384r1_sha512_9765", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9765_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9765_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9765_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9766 for ECDSA, tcId is 72 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9766_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9766_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9766 = { .name = "ecdsa_secp384r1_sha512_9766", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9766_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9766_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9766_sig, .siglen = 96, .result = 0, .comment = "length of integer contains leading 0, tcId is 72 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9767 for ECDSA, tcId is 94 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9767_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9767_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9767 = { .name = "ecdsa_secp384r1_sha512_9767", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9767_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9767_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9767_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9768 for ECDSA, tcId is 95 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9768_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9768_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9768 = { .name = "ecdsa_secp384r1_sha512_9768", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9768_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9768_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9768_sig, .siglen = 98, .result = -1, .comment = "appending 0's to integer, tcId is 95 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9769 for ECDSA, tcId is 96 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9769_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9769_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9769 = { .name = "ecdsa_secp384r1_sha512_9769", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9769_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9769_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9769_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9770 for ECDSA, tcId is 97 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9770_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9770_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9770 = { .name = "ecdsa_secp384r1_sha512_9770", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9770_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9770_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9770_sig, .siglen = 96, .result = 0, .comment = "prepending 0's to integer, tcId is 97 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9771 for ECDSA, tcId is 99 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9771_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9771_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x05, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9771 = { .name = "ecdsa_secp384r1_sha512_9771", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9771_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9771_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9771_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9772 for ECDSA, tcId is 100 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9772_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9772_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9772 = { .name = "ecdsa_secp384r1_sha512_9772", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9772_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9772_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9772_sig, .siglen = 98, .result = -1, .comment = "appending null value to integer, tcId is 100 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9773 for ECDSA, tcId is 115 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9773_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9773_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9773 = { .name = "ecdsa_secp384r1_sha512_9773", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9773_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9773_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9773_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9774 for ECDSA, tcId is 116 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9774_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9774_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9774 = { .name = "ecdsa_secp384r1_sha512_9774", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9774_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9774_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9774_sig, .siglen = 96, .result = -1, .comment = "dropping value of integer, tcId is 116 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9775 for ECDSA, tcId is 119 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9775_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9775_sig[] = { 0x02, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9775 = { .name = "ecdsa_secp384r1_sha512_9775", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9775_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9775_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9775_sig, .siglen = 97, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9776 for ECDSA, tcId is 120 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9776_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9776_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x02, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9776 = { .name = "ecdsa_secp384r1_sha512_9776", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9776_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9776_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9776_sig, .siglen = 97, .result = -1, .comment = "modify first byte of integer, tcId is 120 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9777 for ECDSA, tcId is 121 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9777_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9777_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0x62, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9777 = { .name = "ecdsa_secp384r1_sha512_9777", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9777_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9777_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9777_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9778 for ECDSA, tcId is 122 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9778_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9778_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9778 = { .name = "ecdsa_secp384r1_sha512_9778", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9778_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9778_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9778_sig, .siglen = 96, .result = -1, .comment = "modify last byte of integer, tcId is 122 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9779 for ECDSA, tcId is 123 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9779_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9779_sig[] = { 0x00, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9779 = { .name = "ecdsa_secp384r1_sha512_9779", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9779_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9779_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9779_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9780 for ECDSA, tcId is 124 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9780_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9780_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9780 = { .name = "ecdsa_secp384r1_sha512_9780", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9780_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9780_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9780_sig, .siglen = 96, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9781 for ECDSA, tcId is 125 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9781_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9781_sig[] = { 0x00, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9781 = { .name = "ecdsa_secp384r1_sha512_9781", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9781_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9781_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9781_sig, .siglen = 97, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9782 for ECDSA, tcId is 126 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9782_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9782_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9782 = { .name = "ecdsa_secp384r1_sha512_9782", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9782_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9782_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9782_sig, .siglen = 97, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_secp384r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9783 for ECDSA, tcId is 129 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9783_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9783_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9783 = { .name = "ecdsa_secp384r1_sha512_9783", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9783_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9783_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9783_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9784 for ECDSA, tcId is 130 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9784_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9784_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9784 = { .name = "ecdsa_secp384r1_sha512_9784", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9784_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9784_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9784_sig, .siglen = 96, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9785 for ECDSA, tcId is 131 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9785_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9785_sig[] = { 0x01, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x45, 0xd3, 0x82, 0x17, 0xe2, 0xbc, 0xce, 0xed, 0xb5, 0xca, 0xa7, 0xae, 0xf8, 0xbc, 0x35, 0xed, 0xee, 0xc4, 0xbe, 0xb1, 0x55, 0x61, 0x0f, 0x3f, 0x55, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9785 = { .name = "ecdsa_secp384r1_sha512_9785", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9785_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9785_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9785_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9786 for ECDSA, tcId is 132 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9786_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9786_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x44, 0xbb, 0x7c, 0xde, 0xd4, 0x60, 0x91, 0xf7, 0x1a, 0x73, 0x93, 0x94, 0x2a, 0xd4, 0x9e, 0xf8, 0xea, 0xe6, 0x7e, 0x7f, 0xc7, 0x84, 0xec, 0x6f, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9786 = { .name = "ecdsa_secp384r1_sha512_9786", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9786_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9786_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9786_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9787 for ECDSA, tcId is 133 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9787_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9787_sig[] = { 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xb9, 0xf3, 0xe1, 0x35, 0x9f, 0x37, 0x68, 0x40, 0x29, 0x8d, 0x72, 0x5e, 0xb9, 0x8c, 0x7a, 0xb9, 0x8c, 0x28, 0x2d, 0x68, 0x15, 0x6b, 0xb5, 0xea, 0x1e, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9787 = { .name = "ecdsa_secp384r1_sha512_9787", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9787_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9787_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9787_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9788 for ECDSA, tcId is 134 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9788_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9788_sig[] = { 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xb9, 0xbb, 0x44, 0x83, 0x21, 0x2b, 0x9f, 0x6e, 0x08, 0xe5, 0x8c, 0x6c, 0x6b, 0xd5, 0x2b, 0x61, 0x07, 0x15, 0x19, 0x81, 0x80, 0x38, 0x7b, 0x13, 0x91, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9788 = { .name = "ecdsa_secp384r1_sha512_9788", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9788_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9788_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9788_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9789 for ECDSA, tcId is 135 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9789_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9789_sig[] = { 0xfe, 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xba, 0x2c, 0x7d, 0xe8, 0x1d, 0x43, 0x31, 0x12, 0x4a, 0x35, 0x58, 0x51, 0x07, 0x43, 0xca, 0x12, 0x11, 0x3b, 0x41, 0x4e, 0xaa, 0x9e, 0xf0, 0xc0, 0xab, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9789 = { .name = "ecdsa_secp384r1_sha512_9789", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9789_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9789_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9789_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9790 for ECDSA, tcId is 136 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9790_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9790_sig[] = { 0x01, 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9790 = { .name = "ecdsa_secp384r1_sha512_9790", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9790_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9790_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9790_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9791 for ECDSA, tcId is 137 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9791_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9791_sig[] = { 0x7e, 0xb3, 0x36, 0x58, 0xf0, 0x14, 0x25, 0xcb, 0xd2, 0xb5, 0x25, 0x78, 0x03, 0xc6, 0xbd, 0x90, 0xbf, 0xc2, 0xa1, 0x76, 0x7f, 0x7b, 0xd7, 0xb9, 0xf3, 0xe1, 0x35, 0x9f, 0x37, 0x68, 0x40, 0x29, 0x8d, 0x72, 0x5e, 0xb9, 0x8c, 0x7a, 0xb9, 0x8c, 0x28, 0x2d, 0x68, 0x15, 0x6b, 0xb5, 0xea, 0x1e, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9791 = { .name = "ecdsa_secp384r1_sha512_9791", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9791_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9791_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9791_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9792 for ECDSA, tcId is 138 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9792_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9792_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x01, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x5f, 0xd3, 0xad, 0x1c, 0xb7, 0xa6, 0x1d, 0xc9, 0x50, 0x7f, 0x6e, 0xeb, 0x2a, 0x65, 0x34, 0x1a, 0xd0, 0xca, 0xc0, 0x35, 0xdf, 0xee, 0x58, 0xd1, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9792 = { .name = "ecdsa_secp384r1_sha512_9792", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9792_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9792_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9792_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9793 for ECDSA, tcId is 139 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9793_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9793_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9793_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x44, 0xe6, 0x81, 0xb3, 0xbd, 0xaf, 0x6d, 0x91, 0xcf, 0x3a, 0xcf, 0xc5, 0xd3, 0xd2, 0xcb, 0xda, 0xf0, 0xe8, 0x03, 0x0a, 0x54, 0xce, 0x7e, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9793 = { .name = "ecdsa_secp384r1_sha512_9793", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9793_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9793_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9793_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9794 for ECDSA, tcId is 140 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9794_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9794_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9794_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0x9f, 0xf3, 0xb6, 0x30, 0xca, 0x4e, 0x19, 0x64, 0x8e, 0xd8, 0xab, 0x22, 0x87, 0xe3, 0x7c, 0x8c, 0xaa, 0x22, 0x2b, 0xe3, 0x8a, 0xde, 0x6c, 0x58, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9794 = { .name = "ecdsa_secp384r1_sha512_9794", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9794_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9794_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9794_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9795 for ECDSA, tcId is 141 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9795_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9795_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9795_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0xfe, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0xa0, 0x2c, 0x52, 0xe3, 0x48, 0x59, 0xe2, 0x36, 0xaf, 0x80, 0x91, 0x14, 0xd5, 0x9a, 0xcb, 0xe5, 0x2f, 0x35, 0x3f, 0xca, 0x20, 0x11, 0xa7, 0x2e, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9795 = { .name = "ecdsa_secp384r1_sha512_9795", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9795_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9795_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9795_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9796 for ECDSA, tcId is 142 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9796_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9796_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9796_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x01, 0x84, 0xf5, 0xef, 0x11, 0xd2, 0x2f, 0x22, 0xd0, 0x54, 0x8a, 0xf6, 0xa5, 0x0d, 0xbf, 0x2f, 0x6a, 0x1b, 0xb9, 0x05, 0x45, 0x85, 0xaf, 0x5e, 0x60, 0x0c, 0x49, 0xcf, 0x35, 0xb1, 0xe6, 0x9b, 0x71, 0x27, 0x54, 0xdd, 0x78, 0x1c, 0x83, 0x73, 0x55, 0xdd, 0xd4, 0x1c, 0x75, 0x21, 0x93, 0xa7, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9796 = { .name = "ecdsa_secp384r1_sha512_9796", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9796_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9796_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9796_sig, .siglen = 97, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9797 for ECDSA, tcId is 143 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9797_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9797_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9797_sig[] = { 0x81, 0x4c, 0xc9, 0xa7, 0x0f, 0xeb, 0xda, 0x34, 0x2d, 0x4a, 0xda, 0x87, 0xfc, 0x39, 0x42, 0x6f, 0x40, 0x3d, 0x5e, 0x89, 0x80, 0x84, 0x28, 0x46, 0x0c, 0x1e, 0xca, 0x60, 0xc8, 0x97, 0xbf, 0xd6, 0x72, 0x8d, 0xa1, 0x46, 0x73, 0x85, 0x46, 0x73, 0xd7, 0xd2, 0x97, 0xea, 0x94, 0x4a, 0x15, 0xe2, 0x7b, 0x0a, 0x10, 0xee, 0x2d, 0xd0, 0xdd, 0x2f, 0xab, 0x75, 0x09, 0x5a, 0xf2, 0x40, 0xd0, 0x95, 0xe4, 0x46, 0xfa, 0xba, 0x7a, 0x50, 0xa1, 0x9f, 0xf3, 0xb6, 0x30, 0xca, 0x4e, 0x19, 0x64, 0x8e, 0xd8, 0xab, 0x22, 0x87, 0xe3, 0x7c, 0x8c, 0xaa, 0x22, 0x2b, 0xe3, 0x8a, 0xde, 0x6c, 0x58, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9797 = { .name = "ecdsa_secp384r1_sha512_9797", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9797_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9797_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9797_sig, .siglen = 96, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9798 for ECDSA, tcId is 144 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9798_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9798_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9798_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9798 = { .name = "ecdsa_secp384r1_sha512_9798", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9798_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9798_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9798_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9799 for ECDSA, tcId is 145 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9799_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9799_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9799_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9799 = { .name = "ecdsa_secp384r1_sha512_9799", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9799_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9799_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9799_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9800 for ECDSA, tcId is 146 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9800_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9800_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9800_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9800 = { .name = "ecdsa_secp384r1_sha512_9800", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9800_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9800_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9800_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9801 for ECDSA, tcId is 147 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9801_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9801_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9801_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9801 = { .name = "ecdsa_secp384r1_sha512_9801", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9801_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9801_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9801_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9802 for ECDSA, tcId is 148 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9802_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9802_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9802_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9802 = { .name = "ecdsa_secp384r1_sha512_9802", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9802_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9802_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9802_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9803 for ECDSA, tcId is 149 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9803_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9803_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9803_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9803 = { .name = "ecdsa_secp384r1_sha512_9803", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9803_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9803_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9803_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9804 for ECDSA, tcId is 150 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9804_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9804_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9804_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9804 = { .name = "ecdsa_secp384r1_sha512_9804", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9804_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9804_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9804_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9805 for ECDSA, tcId is 151 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9805_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9805_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9805_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9805 = { .name = "ecdsa_secp384r1_sha512_9805", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9805_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9805_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9805_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9806 for ECDSA, tcId is 154 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9806_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9806_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9806 = { .name = "ecdsa_secp384r1_sha512_9806", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9806_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9806_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9806_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9807 for ECDSA, tcId is 155 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9807_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9807_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9807 = { .name = "ecdsa_secp384r1_sha512_9807", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9807_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9807_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9807_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9808 for ECDSA, tcId is 156 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9808_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9808_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9808 = { .name = "ecdsa_secp384r1_sha512_9808", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9808_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9808_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9808_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9809 for ECDSA, tcId is 157 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9809_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9809_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9809 = { .name = "ecdsa_secp384r1_sha512_9809", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9809_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9809_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9809_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9810 for ECDSA, tcId is 158 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9810_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9810_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9810 = { .name = "ecdsa_secp384r1_sha512_9810", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9810_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9810_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9810_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9811 for ECDSA, tcId is 159 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9811_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9811_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9811 = { .name = "ecdsa_secp384r1_sha512_9811", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9811_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9811_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9811_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9812 for ECDSA, tcId is 160 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9812_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9812_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9812 = { .name = "ecdsa_secp384r1_sha512_9812", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9812_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9812_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9812_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9813 for ECDSA, tcId is 161 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9813_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9813_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9813 = { .name = "ecdsa_secp384r1_sha512_9813", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9813_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9813_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9813_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9814 for ECDSA, tcId is 164 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9814_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9814_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9814 = { .name = "ecdsa_secp384r1_sha512_9814", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9814_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9814_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9814_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9815 for ECDSA, tcId is 165 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9815_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9815_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9815 = { .name = "ecdsa_secp384r1_sha512_9815", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9815_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9815_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9815_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9816 for ECDSA, tcId is 166 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9816_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9816_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9816_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9816 = { .name = "ecdsa_secp384r1_sha512_9816", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9816_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9816_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9816_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9817 for ECDSA, tcId is 167 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9817_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9817_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9817_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9817 = { .name = "ecdsa_secp384r1_sha512_9817", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9817_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9817_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9817_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9818 for ECDSA, tcId is 168 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9818_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9818_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9818 = { .name = "ecdsa_secp384r1_sha512_9818", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9818_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9818_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9818_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9819 for ECDSA, tcId is 169 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9819_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9819_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9819_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9819 = { .name = "ecdsa_secp384r1_sha512_9819", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9819_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9819_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9819_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9820 for ECDSA, tcId is 170 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9820_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9820_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9820_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9820 = { .name = "ecdsa_secp384r1_sha512_9820", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9820_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9820_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9820_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9821 for ECDSA, tcId is 171 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9821_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9821_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9821_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9821 = { .name = "ecdsa_secp384r1_sha512_9821", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9821_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9821_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9821_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9822 for ECDSA, tcId is 174 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9822_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9822_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9822 = { .name = "ecdsa_secp384r1_sha512_9822", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9822_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9822_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9822_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9823 for ECDSA, tcId is 175 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9823_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9823_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9823_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9823 = { .name = "ecdsa_secp384r1_sha512_9823", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9823_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9823_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9823_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9824 for ECDSA, tcId is 176 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9824_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9824_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9824_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9824 = { .name = "ecdsa_secp384r1_sha512_9824", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9824_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9824_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9824_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9825 for ECDSA, tcId is 177 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9825_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9825_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9825_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9825 = { .name = "ecdsa_secp384r1_sha512_9825", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9825_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9825_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9825_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9826 for ECDSA, tcId is 178 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9826_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9826_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9826_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9826 = { .name = "ecdsa_secp384r1_sha512_9826", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9826_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9826_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9826_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9827 for ECDSA, tcId is 179 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9827_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9827_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9827_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9827 = { .name = "ecdsa_secp384r1_sha512_9827", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9827_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9827_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9827_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9828 for ECDSA, tcId is 180 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9828_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9828_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9828_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9828 = { .name = "ecdsa_secp384r1_sha512_9828", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9828_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9828_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9828_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9829 for ECDSA, tcId is 181 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9829_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9829_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9829_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9829 = { .name = "ecdsa_secp384r1_sha512_9829", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9829_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9829_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9829_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9830 for ECDSA, tcId is 184 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9830_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9830_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9830_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9830 = { .name = "ecdsa_secp384r1_sha512_9830", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9830_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9830_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9830_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9831 for ECDSA, tcId is 185 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9831_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9831_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9831_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9831 = { .name = "ecdsa_secp384r1_sha512_9831", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9831_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9831_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9831_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9832 for ECDSA, tcId is 186 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9832_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9832_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9832_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9832 = { .name = "ecdsa_secp384r1_sha512_9832", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9832_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9832_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9832_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9833 for ECDSA, tcId is 187 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9833_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9833_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9833_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9833 = { .name = "ecdsa_secp384r1_sha512_9833", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9833_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9833_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9833_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9834 for ECDSA, tcId is 188 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9834_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9834_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9834_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9834 = { .name = "ecdsa_secp384r1_sha512_9834", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9834_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9834_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9834_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9835 for ECDSA, tcId is 189 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9835_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9835_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9835_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9835 = { .name = "ecdsa_secp384r1_sha512_9835", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9835_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9835_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9835_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9836 for ECDSA, tcId is 190 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9836_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9836_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9836_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9836 = { .name = "ecdsa_secp384r1_sha512_9836", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9836_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9836_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9836_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9837 for ECDSA, tcId is 191 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9837_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9837_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9837_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9837 = { .name = "ecdsa_secp384r1_sha512_9837", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9837_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9837_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9837_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9838 for ECDSA, tcId is 194 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9838_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9838_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9838_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9838 = { .name = "ecdsa_secp384r1_sha512_9838", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9838_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9838_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9838_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9839 for ECDSA, tcId is 195 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9839_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9839_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9839_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9839 = { .name = "ecdsa_secp384r1_sha512_9839", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9839_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9839_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9839_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9840 for ECDSA, tcId is 196 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9840_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9840_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9840_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9840 = { .name = "ecdsa_secp384r1_sha512_9840", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9840_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9840_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9840_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9841 for ECDSA, tcId is 197 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9841_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9841_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9841_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9841 = { .name = "ecdsa_secp384r1_sha512_9841", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9841_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9841_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9841_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9842 for ECDSA, tcId is 198 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9842_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9842_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9842_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9842 = { .name = "ecdsa_secp384r1_sha512_9842", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9842_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9842_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9842_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9843 for ECDSA, tcId is 199 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9843_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9843_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9843_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9843 = { .name = "ecdsa_secp384r1_sha512_9843", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9843_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9843_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9843_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9844 for ECDSA, tcId is 200 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9844_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9844_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9844_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9844 = { .name = "ecdsa_secp384r1_sha512_9844", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9844_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9844_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9844_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9845 for ECDSA, tcId is 201 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9845_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9845_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9845_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9845 = { .name = "ecdsa_secp384r1_sha512_9845", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9845_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9845_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9845_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9846 for ECDSA, tcId is 204 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9846_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9846_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9846_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9846 = { .name = "ecdsa_secp384r1_sha512_9846", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9846_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9846_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9846_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9847 for ECDSA, tcId is 205 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9847_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9847_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9847 = { .name = "ecdsa_secp384r1_sha512_9847", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9847_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9847_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9847_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9848 for ECDSA, tcId is 206 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9848_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9848_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9848 = { .name = "ecdsa_secp384r1_sha512_9848", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9848_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9848_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9848_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9849 for ECDSA, tcId is 207 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9849_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9849_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9849 = { .name = "ecdsa_secp384r1_sha512_9849", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9849_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9849_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9849_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9850 for ECDSA, tcId is 208 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9850_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9850_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9850 = { .name = "ecdsa_secp384r1_sha512_9850", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9850_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9850_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9850_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9851 for ECDSA, tcId is 209 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9851_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9851_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9851 = { .name = "ecdsa_secp384r1_sha512_9851", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9851_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9851_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9851_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9852 for ECDSA, tcId is 210 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9852_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9852_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9852 = { .name = "ecdsa_secp384r1_sha512_9852", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9852_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9852_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9852_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9853 for ECDSA, tcId is 211 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9853_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9853_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9853 = { .name = "ecdsa_secp384r1_sha512_9853", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9853_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9853_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9853_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9854 for ECDSA, tcId is 214 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9854_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9854_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9854 = { .name = "ecdsa_secp384r1_sha512_9854", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9854_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9854_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9854_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9855 for ECDSA, tcId is 215 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9855_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9855_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9855 = { .name = "ecdsa_secp384r1_sha512_9855", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9855_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9855_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9855_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9856 for ECDSA, tcId is 216 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9856_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9856_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9856 = { .name = "ecdsa_secp384r1_sha512_9856", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9856_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9856_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9856_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9857 for ECDSA, tcId is 217 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9857_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9857_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9857 = { .name = "ecdsa_secp384r1_sha512_9857", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9857_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9857_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9857_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9858 for ECDSA, tcId is 218 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9858_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9858_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9858 = { .name = "ecdsa_secp384r1_sha512_9858", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9858_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9858_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9858_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9859 for ECDSA, tcId is 219 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9859_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9859_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9859 = { .name = "ecdsa_secp384r1_sha512_9859", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9859_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9859_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9859_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9860 for ECDSA, tcId is 220 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9860_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9860_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9860 = { .name = "ecdsa_secp384r1_sha512_9860", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9860_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9860_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9860_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9861 for ECDSA, tcId is 221 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9861_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9861_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9861 = { .name = "ecdsa_secp384r1_sha512_9861", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9861_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9861_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9861_sig, .siglen = 96, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9862 for ECDSA, tcId is 230 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9862_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9862_msg[] = { 0x36, 0x37, 0x32, 0x36, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9862_sig[] = { 0xac, 0x04, 0x2e, 0x13, 0xab, 0x83, 0x39, 0x46, 0x92, 0x01, 0x91, 0x70, 0x70, 0x7b, 0xc2, 0x1d, 0xd3, 0xd7, 0xb8, 0xd2, 0x33, 0xd1, 0x1b, 0x65, 0x17, 0x57, 0x08, 0x5b, 0xdd, 0x57, 0x67, 0xea, 0xbb, 0xb8, 0x53, 0x22, 0x98, 0x4f, 0x14, 0x43, 0x73, 0x35, 0xde, 0x0c, 0xdf, 0x56, 0x56, 0x84, 0x8f, 0x8a, 0x27, 0x7d, 0xde, 0x52, 0x82, 0x67, 0x1a, 0xf9, 0x58, 0xe3, 0x31, 0x5e, 0x79, 0x5a, 0x20, 0xe2, 0x88, 0x51, 0x57, 0xb7, 0x76, 0x63, 0xa6, 0x7a, 0x77, 0xef, 0x23, 0x79, 0x02, 0x0c, 0x5d, 0x12, 0xbe, 0x6c, 0x73, 0x2f, 0xd7, 0x25, 0x40, 0x2c, 0xb9, 0xee, 0x8c, 0x34, 0x52, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9862 = { .name = "ecdsa_secp384r1_sha512_9862", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9862_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9862_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha512_9862_sig, .siglen = 96, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9863 for ECDSA, tcId is 231 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9863_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9863_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9863_sig[] = { 0xd5, 0x1c, 0x53, 0xfa, 0x3e, 0x20, 0x1c, 0x44, 0x0a, 0x4e, 0x33, 0xea, 0x0b, 0xbc, 0x1d, 0x3f, 0x3f, 0xe1, 0x8b, 0x0c, 0xc2, 0xa4, 0xd6, 0x81, 0x2d, 0xd2, 0x17, 0xa9, 0xb4, 0x26, 0xe5, 0x4e, 0xb4, 0x02, 0x41, 0x13, 0xb3, 0x54, 0x44, 0x12, 0x72, 0x17, 0x45, 0x49, 0xc9, 0x79, 0x85, 0x7c, 0x09, 0x92, 0xc5, 0x44, 0x2d, 0xc6, 0xd5, 0xd6, 0x09, 0x5a, 0x45, 0x72, 0x0f, 0x5c, 0x53, 0x44, 0xac, 0xb7, 0x8b, 0xc1, 0x88, 0x17, 0xef, 0x32, 0xc1, 0x33, 0x4e, 0x6e, 0xba, 0x77, 0x26, 0x24, 0x65, 0x77, 0xd4, 0x25, 0x79, 0x42, 0xbd, 0xef, 0xe9, 0x94, 0xc1, 0x57, 0x5e, 0xd1, 0x5a, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9863 = { .name = "ecdsa_secp384r1_sha512_9863", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9863_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9863_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9863_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9864 for ECDSA, tcId is 232 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9864_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9864_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9864_sig[] = { 0xc8, 0xd4, 0x4c, 0x8b, 0x70, 0xab, 0xed, 0x9e, 0x6a, 0xe6, 0xbb, 0xb9, 0xf4, 0xb7, 0x2e, 0xd6, 0xe8, 0xb5, 0x0a, 0x52, 0xa8, 0xe6, 0xe1, 0xbd, 0x34, 0x47, 0xc0, 0x82, 0x8d, 0xad, 0x26, 0xfc, 0x6f, 0x39, 0x5b, 0xa0, 0x90, 0x69, 0xb3, 0x07, 0xf0, 0x40, 0xd1, 0xe8, 0x6a, 0x42, 0xc0, 0x22, 0x01, 0xe0, 0xaf, 0x50, 0x05, 0x05, 0xbb, 0x88, 0xb3, 0xa2, 0xb0, 0xf1, 0x32, 0xac, 0xb4, 0xda, 0x64, 0xad, 0xdd, 0xc0, 0x59, 0x83, 0x18, 0xcb, 0x76, 0x12, 0xb5, 0x81, 0x2d, 0x29, 0xc2, 0xd0, 0xdd, 0xe1, 0x41, 0x3d, 0x0c, 0xe4, 0x00, 0x44, 0xb4, 0x45, 0x90, 0xe9, 0x1b, 0x97, 0xba, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9864 = { .name = "ecdsa_secp384r1_sha512_9864", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9864_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9864_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9864_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9865 for ECDSA, tcId is 233 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9865_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9865_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9865_sig[] = { 0xd3, 0x51, 0x3b, 0xd0, 0x64, 0x96, 0xd8, 0x57, 0x6e, 0x01, 0xe8, 0xc4, 0xb2, 0x84, 0x58, 0x7a, 0xca, 0xfd, 0x23, 0x9a, 0xcf, 0xd7, 0x39, 0xa1, 0x9a, 0x58, 0x99, 0xf0, 0xa0, 0x0d, 0x26, 0x9f, 0x99, 0x06, 0x59, 0xa6, 0x71, 0xb2, 0xe0, 0xe2, 0x5f, 0x93, 0x5b, 0x3a, 0x28, 0xa1, 0xf5, 0xfd, 0x36, 0x6b, 0x35, 0x31, 0x5c, 0xe1, 0x14, 0xbf, 0xfb, 0xb7, 0x5a, 0x96, 0x95, 0x43, 0x64, 0x6e, 0xe2, 0x53, 0xf0, 0x46, 0xa8, 0x63, 0x0f, 0xbb, 0xb1, 0x21, 0xec, 0xc5, 0xd6, 0x2d, 0xf4, 0xa7, 0xeb, 0x09, 0xd2, 0x87, 0x88, 0x05, 0xd5, 0xda, 0xb9, 0xc9, 0xb3, 0x88, 0x0b, 0x74, 0x7b, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9865 = { .name = "ecdsa_secp384r1_sha512_9865", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9865_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9865_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9865_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9866 for ECDSA, tcId is 234 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9866_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9866_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9866_sig[] = { 0xb0, 0x8c, 0x40, 0x18, 0x55, 0x6c, 0xa8, 0x83, 0x3b, 0x52, 0x45, 0x04, 0xe3, 0x0c, 0x58, 0x34, 0x6e, 0x1c, 0x03, 0x45, 0xb6, 0x78, 0xfd, 0xf9, 0x18, 0x91, 0xc4, 0x64, 0xa3, 0x31, 0x80, 0xed, 0x85, 0xa9, 0x9b, 0xc8, 0x91, 0x1a, 0xcf, 0x4f, 0x22, 0xac, 0xeb, 0x40, 0x44, 0x0a, 0xfc, 0x94, 0x4a, 0x59, 0x5f, 0x7e, 0xed, 0x2d, 0xb9, 0xf6, 0xbd, 0x3e, 0x90, 0x35, 0x5d, 0x5c, 0x0e, 0x96, 0x48, 0x6d, 0xc6, 0x42, 0x42, 0x31, 0x9e, 0x41, 0xfc, 0x07, 0xbe, 0x00, 0xa7, 0x32, 0x35, 0x4b, 0x62, 0xec, 0x9c, 0x34, 0x31, 0x97, 0x20, 0xb9, 0xff, 0xb2, 0x4c, 0x99, 0x4b, 0x1c, 0xf8, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9866 = { .name = "ecdsa_secp384r1_sha512_9866", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9866_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9866_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9866_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9867 for ECDSA, tcId is 235 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9867_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9867_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9867_sig[] = { 0x2b, 0x08, 0xf7, 0x84, 0x61, 0x7f, 0xd0, 0x70, 0x7a, 0x83, 0xd3, 0xc2, 0x61, 0x5e, 0xfa, 0x0c, 0x45, 0xf2, 0x8d, 0x7d, 0x92, 0x8f, 0xc4, 0x5c, 0xd8, 0xa8, 0x86, 0xe1, 0x16, 0xb4, 0x5f, 0x46, 0x86, 0xae, 0xe9, 0x74, 0x74, 0xd0, 0x91, 0x01, 0x2e, 0x27, 0x05, 0x7b, 0x6b, 0xa8, 0xf7, 0xe6, 0xc4, 0x40, 0xaa, 0x6e, 0xcb, 0x63, 0xe0, 0xd4, 0x3c, 0x63, 0x9b, 0x37, 0xe5, 0x81, 0x0a, 0x96, 0xde, 0xf7, 0xee, 0xc8, 0xe9, 0x0a, 0x4c, 0x55, 0xe5, 0xb5, 0x79, 0x71, 0xc4, 0x8d, 0xfb, 0x4e, 0x85, 0x02, 0x32, 0xfb, 0xb3, 0x7b, 0xd3, 0x2b, 0xb3, 0xb0, 0x52, 0x3b, 0x81, 0x5f, 0xf9, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9867 = { .name = "ecdsa_secp384r1_sha512_9867", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9867_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9867_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9867_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9868 for ECDSA, tcId is 236 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9868_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9868_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9868_sig[] = { 0x06, 0x09, 0xf4, 0xec, 0x12, 0x0c, 0x88, 0x38, 0xbd, 0xa9, 0x16, 0xf6, 0x68, 0xe9, 0x60, 0x0a, 0xf7, 0x65, 0x2e, 0x1d, 0x3f, 0x71, 0x82, 0x73, 0x4f, 0x97, 0xf5, 0x4d, 0xa5, 0xd1, 0x06, 0xbb, 0xfd, 0x21, 0x6c, 0x32, 0xf2, 0x27, 0xb7, 0x6d, 0x58, 0x3d, 0xe1, 0xc5, 0x39, 0x49, 0xb2, 0xee, 0x46, 0x92, 0x6d, 0xff, 0xc7, 0x66, 0xff, 0x90, 0xc3, 0xb9, 0x21, 0xb3, 0xe5, 0x1a, 0x29, 0x82, 0xa1, 0x07, 0x23, 0x14, 0xc1, 0xfd, 0xfb, 0x41, 0x75, 0xde, 0x7a, 0xde, 0xa5, 0xa6, 0xf9, 0x7b, 0xdf, 0xf5, 0x87, 0xa4, 0x73, 0x50, 0x4a, 0x9c, 0x40, 0x2a, 0xac, 0x7c, 0x05, 0xbd, 0x47, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9868 = { .name = "ecdsa_secp384r1_sha512_9868", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9868_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9868_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9868_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9869 for ECDSA, tcId is 237 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9869_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9869_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9869_sig[] = { 0x5a, 0xe2, 0x22, 0x0e, 0x47, 0x16, 0xe1, 0xef, 0x03, 0x82, 0xaf, 0xcc, 0x39, 0xdb, 0x33, 0x9e, 0x5b, 0xd5, 0xf0, 0x5e, 0x8a, 0x18, 0x8d, 0x4a, 0x5d, 0xaa, 0xab, 0x71, 0xc6, 0xc3, 0x52, 0x63, 0xee, 0x88, 0x20, 0xa3, 0x45, 0x58, 0x09, 0x28, 0x77, 0x44, 0x9e, 0xbb, 0x15, 0x89, 0x8c, 0x5c, 0xc4, 0xd3, 0x8e, 0x2e, 0x85, 0x45, 0x1c, 0x43, 0xee, 0x35, 0xb0, 0xc5, 0x61, 0x96, 0xcb, 0xf3, 0x05, 0x9a, 0xcf, 0x2b, 0x8b, 0x52, 0x9f, 0x06, 0xdc, 0x1d, 0xe9, 0xb2, 0x81, 0xd9, 0xb0, 0xf3, 0xf3, 0x98, 0x3d, 0xf8, 0x93, 0x6e, 0x94, 0x4a, 0xb0, 0xb1, 0x83, 0x30, 0xa3, 0x42, 0xee, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9869 = { .name = "ecdsa_secp384r1_sha512_9869", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9869_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9869_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9869_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9870 for ECDSA, tcId is 238 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9870_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9870_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9870_sig[] = { 0x51, 0xfb, 0x84, 0xed, 0x71, 0xd4, 0x36, 0xc7, 0x37, 0xab, 0x24, 0xe2, 0xa4, 0x5c, 0x68, 0xf8, 0xf6, 0x23, 0x74, 0x8b, 0xe2, 0xca, 0xeb, 0xd8, 0x9e, 0x02, 0xbf, 0xc8, 0x93, 0x09, 0xb8, 0x35, 0x00, 0x42, 0xab, 0x1b, 0x97, 0x84, 0x9b, 0x9f, 0x68, 0x0f, 0x04, 0x4a, 0x58, 0x76, 0x51, 0x75, 0xd4, 0xa8, 0xf6, 0x07, 0x91, 0x65, 0x7a, 0x8c, 0x12, 0x98, 0x5f, 0xd8, 0x96, 0xac, 0x77, 0xe7, 0xd9, 0x5c, 0xb0, 0x50, 0x58, 0x2f, 0x24, 0x66, 0x47, 0x1d, 0xc2, 0xc6, 0xdc, 0xf9, 0x0d, 0xb0, 0x5c, 0xe3, 0x4b, 0xea, 0xdb, 0xfc, 0xfe, 0x69, 0x0d, 0xc5, 0x6c, 0x0c, 0xc9, 0x94, 0x40, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9870 = { .name = "ecdsa_secp384r1_sha512_9870", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9870_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9870_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9870_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9871 for ECDSA, tcId is 239 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9871_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9871_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9871_sig[] = { 0x40, 0x15, 0x92, 0x90, 0xd1, 0x61, 0xdf, 0x6b, 0x3f, 0x81, 0xa9, 0x2c, 0xef, 0xb6, 0xdf, 0x56, 0x14, 0x9d, 0x58, 0x8e, 0x7b, 0x88, 0x6b, 0xf2, 0x49, 0x39, 0xf5, 0xc8, 0xb6, 0xbb, 0x51, 0x5d, 0x32, 0x5b, 0x37, 0x64, 0xf0, 0xed, 0x28, 0x4a, 0x77, 0xfa, 0x90, 0x81, 0xcc, 0xfa, 0x52, 0x37, 0xbd, 0x55, 0xdf, 0xb4, 0x77, 0x09, 0x28, 0x7c, 0xe7, 0xb8, 0x8d, 0xfd, 0x96, 0xac, 0x75, 0x43, 0xee, 0xba, 0x9b, 0xd3, 0x1b, 0x8c, 0x91, 0xf2, 0x03, 0xd2, 0xb9, 0x04, 0x18, 0x12, 0x24, 0x06, 0x39, 0x9c, 0x80, 0xa5, 0x35, 0x39, 0xb8, 0x1f, 0x1c, 0xb6, 0x0f, 0xa3, 0xb2, 0x3a, 0x25, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9871 = { .name = "ecdsa_secp384r1_sha512_9871", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9871_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9871_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9871_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9872 for ECDSA, tcId is 240 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9872_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9872_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9872_sig[] = { 0xd7, 0xfb, 0x9f, 0x53, 0x86, 0x5c, 0xdf, 0x9d, 0x4c, 0xad, 0x6f, 0x66, 0x98, 0x1a, 0xea, 0x35, 0xa1, 0x45, 0x48, 0x58, 0xce, 0xb6, 0x78, 0xd7, 0xb8, 0x51, 0xc1, 0x2a, 0x4c, 0x66, 0x44, 0xfe, 0x19, 0x15, 0xa4, 0xb2, 0x19, 0xb5, 0x13, 0x89, 0xa5, 0xae, 0x2c, 0x98, 0xa4, 0x33, 0xcc, 0x3a, 0x94, 0xad, 0x75, 0xc3, 0xde, 0xa8, 0x87, 0x40, 0x20, 0x5c, 0xab, 0x41, 0x03, 0x2d, 0xfe, 0x14, 0x93, 0x41, 0xcf, 0x4e, 0xe9, 0x4d, 0xcd, 0x2f, 0x0c, 0x8b, 0xbe, 0x5a, 0xf5, 0x86, 0x0b, 0x30, 0xb5, 0xe1, 0xf7, 0x64, 0xb2, 0xc7, 0x67, 0xb0, 0x9f, 0xd1, 0x07, 0x61, 0x05, 0x0c, 0x98, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9872 = { .name = "ecdsa_secp384r1_sha512_9872", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9872_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9872_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9872_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9873 for ECDSA, tcId is 241 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9873_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9873_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9873_sig[] = { 0x15, 0x7e, 0xf8, 0xf8, 0x5c, 0xdb, 0x92, 0x57, 0x98, 0x3d, 0x06, 0xa7, 0xf2, 0x96, 0x74, 0x75, 0x26, 0x59, 0x09, 0x73, 0x64, 0xb4, 0x01, 0xe7, 0x01, 0x70, 0x5b, 0x3b, 0xd9, 0xea, 0xd8, 0x84, 0xfd, 0x32, 0x14, 0x13, 0x20, 0xae, 0x76, 0xae, 0x05, 0xf6, 0xfc, 0x7e, 0xc1, 0x55, 0xd6, 0xc2, 0xcc, 0xad, 0xc3, 0x85, 0x10, 0x20, 0xe4, 0x1d, 0xd9, 0x1b, 0xc2, 0x8a, 0x6c, 0x07, 0x34, 0x09, 0x13, 0x6a, 0x47, 0xf2, 0x0b, 0x8d, 0xbf, 0x25, 0x53, 0xfd, 0x45, 0x6a, 0x8e, 0xd5, 0xfa, 0x7e, 0x73, 0xe4, 0xec, 0x59, 0xdc, 0xa4, 0x99, 0xe0, 0xd0, 0x82, 0xef, 0xbb, 0x9a, 0xd3, 0x4d, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9873 = { .name = "ecdsa_secp384r1_sha512_9873", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9873_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9873_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9873_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9874 for ECDSA, tcId is 242 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9874_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9874_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9874_sig[] = { 0xe7, 0x63, 0x00, 0x17, 0x69, 0xc7, 0x6f, 0x6a, 0x6d, 0x06, 0xfa, 0xd3, 0x7b, 0x58, 0x4d, 0x7f, 0x25, 0x83, 0x25, 0x01, 0x49, 0x1b, 0xec, 0x28, 0x3b, 0x3b, 0x68, 0x36, 0xf9, 0x47, 0xdc, 0x4e, 0x2c, 0xef, 0x02, 0x1c, 0x6c, 0x6e, 0x52, 0x5b, 0x0a, 0x6a, 0x38, 0x90, 0xd1, 0xda, 0x12, 0x2a, 0xac, 0xbd, 0x88, 0x72, 0x9c, 0xce, 0x39, 0x92, 0xd1, 0x4e, 0xc9, 0x9e, 0x69, 0xff, 0x07, 0x12, 0xb8, 0x2a, 0x33, 0xa1, 0xc1, 0xe8, 0xb9, 0x0e, 0x13, 0x99, 0xc6, 0x6f, 0xe1, 0x96, 0xf7, 0xc9, 0x9b, 0xdb, 0x3f, 0xf8, 0x1d, 0xb7, 0x7d, 0xc2, 0x5a, 0xe6, 0xf0, 0xc1, 0xa0, 0x25, 0x11, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9874 = { .name = "ecdsa_secp384r1_sha512_9874", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9874_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9874_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9874_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9875 for ECDSA, tcId is 243 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9875_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9875_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9875_sig[] = { 0xc6, 0x42, 0x5b, 0x6b, 0x04, 0x6e, 0xc9, 0x1e, 0xbc, 0x32, 0xb9, 0xe6, 0xde, 0x75, 0x0e, 0x5d, 0x3d, 0x36, 0xd4, 0xdd, 0xc6, 0xdf, 0xfd, 0x25, 0xba, 0x47, 0x81, 0x73, 0x85, 0xa9, 0x46, 0x6f, 0x6f, 0xc5, 0x22, 0x59, 0xc7, 0xd0, 0x2c, 0x66, 0xaf, 0x5b, 0xf1, 0x20, 0x45, 0xb5, 0x65, 0x9d, 0x84, 0xcd, 0xc0, 0x6e, 0x35, 0xfe, 0xcc, 0x85, 0xa3, 0xe0, 0x0b, 0x16, 0x48, 0x8e, 0xac, 0x35, 0x84, 0x94, 0x2f, 0x66, 0x3d, 0x8b, 0x59, 0xdf, 0x11, 0x1c, 0x06, 0x50, 0x13, 0x9d, 0x7c, 0xda, 0x20, 0xd6, 0x8d, 0xcc, 0xae, 0x56, 0x9d, 0x43, 0x31, 0x70, 0xd8, 0x32, 0x14, 0x7b, 0xc9, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9875 = { .name = "ecdsa_secp384r1_sha512_9875", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9875_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9875_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9875_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9876 for ECDSA, tcId is 244 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9876_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9876_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9876_sig[] = { 0x30, 0x61, 0xf0, 0x90, 0xe4, 0x93, 0x21, 0x33, 0xa0, 0xe0, 0x8a, 0xc9, 0x84, 0xd1, 0xc8, 0xd8, 0xd4, 0xf5, 0x65, 0xe2, 0x1c, 0xf1, 0x54, 0x27, 0x67, 0x15, 0x03, 0x88, 0x03, 0x41, 0x26, 0x5c, 0xd4, 0x4f, 0x35, 0xa4, 0x37, 0xee, 0x3c, 0x3a, 0x88, 0x57, 0x57, 0x9d, 0xd7, 0xaf, 0x0c, 0x35, 0x93, 0xae, 0x37, 0x4a, 0x0f, 0x63, 0xdc, 0xbe, 0x41, 0xa1, 0xb7, 0xb0, 0x7a, 0x50, 0xfa, 0xf2, 0xb3, 0x3f, 0x35, 0xe0, 0xb6, 0x60, 0x0b, 0xb3, 0x6a, 0xa5, 0xcd, 0xa0, 0x52, 0x38, 0x64, 0x0f, 0xa3, 0x5c, 0x63, 0x5c, 0x0f, 0xa7, 0x8e, 0x14, 0x10, 0xf3, 0xa8, 0x79, 0xbb, 0xb8, 0xa5, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9876 = { .name = "ecdsa_secp384r1_sha512_9876", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9876_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9876_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9876_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9877 for ECDSA, tcId is 245 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9877_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9877_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9877_sig[] = { 0x0c, 0xcc, 0x62, 0x7f, 0x35, 0x45, 0x4c, 0xc8, 0x4e, 0x08, 0xa8, 0x28, 0xf5, 0xbd, 0x5f, 0x5e, 0x41, 0xee, 0xea, 0xa4, 0x04, 0x75, 0xbc, 0xc2, 0xe7, 0x1f, 0xf3, 0x72, 0xe8, 0xc7, 0x18, 0xa5, 0xe1, 0x79, 0xd3, 0xb7, 0xf2, 0xd7, 0x05, 0x1d, 0xb9, 0x06, 0x0c, 0x4c, 0x97, 0x8e, 0xb6, 0x38, 0xb1, 0x2d, 0x02, 0x40, 0xaf, 0xbd, 0xfc, 0x64, 0xc6, 0x08, 0x61, 0x54, 0x8c, 0x33, 0x66, 0x3b, 0x89, 0x60, 0x31, 0x6a, 0x55, 0xf8, 0x60, 0xcc, 0x33, 0xd1, 0x90, 0x8e, 0x89, 0xaa, 0x6f, 0xc9, 0x51, 0x9f, 0x23, 0xa9, 0x00, 0xe0, 0x48, 0x8f, 0xa6, 0xa3, 0x7c, 0xfb, 0x37, 0x85, 0x65, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9877 = { .name = "ecdsa_secp384r1_sha512_9877", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9877_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9877_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9877_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9878 for ECDSA, tcId is 246 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9878_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9878_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9878_sig[] = { 0xe7, 0x24, 0x19, 0xfb, 0x67, 0xeb, 0xbc, 0xc0, 0xde, 0x9c, 0x46, 0xce, 0x54, 0x75, 0xc6, 0x08, 0xf9, 0xde, 0x7e, 0x83, 0xfc, 0x5e, 0x58, 0x29, 0x20, 0xb8, 0xe9, 0x84, 0x80, 0x00, 0xd8, 0x20, 0xd3, 0x93, 0xfd, 0xac, 0x6c, 0x96, 0xea, 0x35, 0xce, 0x94, 0x1c, 0xb1, 0x49, 0x51, 0x64, 0x00, 0x6a, 0xa1, 0x99, 0x34, 0xef, 0x60, 0xf4, 0xa2, 0x47, 0xbc, 0x26, 0x1b, 0xa2, 0x56, 0x28, 0x3a, 0x94, 0x85, 0x7a, 0x26, 0x8f, 0x42, 0xa0, 0x93, 0x9c, 0x95, 0xa5, 0x36, 0xfb, 0xd4, 0xf8, 0xe1, 0xf1, 0xc2, 0x85, 0xa7, 0xb1, 0x64, 0xc1, 0x22, 0x13, 0xab, 0xb9, 0xe3, 0x39, 0x3c, 0xbe, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9878 = { .name = "ecdsa_secp384r1_sha512_9878", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9878_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9878_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9878_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9879 for ECDSA, tcId is 247 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9879_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9879_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9879_sig[] = { 0x8b, 0x74, 0x09, 0x31, 0xf9, 0xaf, 0xa8, 0xa0, 0x4c, 0x08, 0xcd, 0xe8, 0x96, 0xb7, 0xfd, 0xd9, 0xac, 0xa3, 0x17, 0x7d, 0x5e, 0x4a, 0x3e, 0x5a, 0x51, 0xe5, 0x4b, 0xfa, 0x82, 0x4b, 0x66, 0xab, 0x11, 0xdf, 0x4e, 0x90, 0xf4, 0x97, 0x98, 0xd6, 0x44, 0xba, 0xbf, 0xed, 0xe7, 0x83, 0x02, 0x24, 0xaf, 0xd9, 0x1e, 0x7c, 0xe1, 0x50, 0x59, 0xa5, 0xb5, 0x49, 0x9e, 0x5a, 0xef, 0x4a, 0xfa, 0x91, 0xfd, 0x09, 0x0e, 0x4e, 0x50, 0x29, 0xb3, 0xf4, 0x34, 0x8f, 0x0d, 0x43, 0x49, 0xdf, 0x11, 0x74, 0x58, 0x69, 0xf9, 0x25, 0x51, 0x17, 0xee, 0xa4, 0x05, 0xa7, 0x8a, 0xf5, 0xdd, 0x6a, 0x64, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9879 = { .name = "ecdsa_secp384r1_sha512_9879", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9879_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9879_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9879_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9880 for ECDSA, tcId is 248 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9880_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9880_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9880_sig[] = { 0x98, 0x90, 0x24, 0xbc, 0xe2, 0x04, 0xa7, 0x53, 0x9f, 0xbd, 0x2b, 0x18, 0x5e, 0xcf, 0x37, 0x55, 0x90, 0xd8, 0x73, 0x17, 0x7c, 0x1f, 0xf2, 0x6b, 0xbf, 0x75, 0x58, 0x38, 0xae, 0x5b, 0xcd, 0xe1, 0x80, 0x05, 0x46, 0x63, 0x70, 0x2a, 0xc3, 0xa4, 0xe6, 0x8f, 0xe8, 0xb5, 0x8f, 0xd8, 0x8c, 0x70, 0xbd, 0xbe, 0xdf, 0x64, 0xe4, 0x24, 0xdb, 0xd7, 0xf9, 0x79, 0xf8, 0x3a, 0xde, 0xf3, 0xfc, 0x85, 0x07, 0x7f, 0xa7, 0x6f, 0x8b, 0x17, 0x24, 0x81, 0x5b, 0x5b, 0x8c, 0x24, 0xfd, 0xe7, 0xfb, 0xd7, 0x2f, 0x4b, 0x36, 0x9a, 0x41, 0x5d, 0x9b, 0xbf, 0x56, 0x5c, 0xdc, 0x45, 0x9b, 0xdc, 0xe5, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9880 = { .name = "ecdsa_secp384r1_sha512_9880", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9880_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9880_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9880_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9881 for ECDSA, tcId is 249 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9881_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9881_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9881_sig[] = { 0x22, 0x62, 0x4f, 0xc2, 0x34, 0x03, 0x95, 0x5c, 0x0c, 0x9f, 0x5b, 0x89, 0x87, 0x11, 0x77, 0xfa, 0x53, 0x87, 0x9c, 0x84, 0x24, 0xde, 0x3b, 0x4a, 0xb1, 0xbc, 0xbc, 0xdd, 0xc6, 0xe5, 0x7b, 0x87, 0x0b, 0x04, 0x91, 0xb8, 0x48, 0xe1, 0x9f, 0x72, 0x87, 0x22, 0xb3, 0x16, 0x3f, 0x4a, 0xa3, 0x28, 0x5b, 0xb8, 0x26, 0x42, 0xcd, 0xaa, 0x84, 0xd6, 0x97, 0x7f, 0xb9, 0x5b, 0x3e, 0xde, 0x4e, 0xc7, 0xf2, 0xd5, 0x48, 0x81, 0xcf, 0x43, 0x56, 0x36, 0xd3, 0x50, 0x98, 0x16, 0xf1, 0x3e, 0xbb, 0x7b, 0xe2, 0x4f, 0xd7, 0xd4, 0xe1, 0xe8, 0x1f, 0xdd, 0xf0, 0x7b, 0xde, 0x68, 0x5e, 0x8d, 0x63, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9881 = { .name = "ecdsa_secp384r1_sha512_9881", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9881_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9881_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9881_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9882 for ECDSA, tcId is 250 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9882_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9882_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9882_sig[] = { 0xda, 0x5a, 0x2d, 0xaa, 0x74, 0x37, 0xdf, 0x45, 0x66, 0xeb, 0xba, 0x6a, 0xc5, 0xed, 0x42, 0x46, 0x55, 0x63, 0x3e, 0x35, 0x4e, 0xf4, 0xd9, 0x43, 0xdc, 0x95, 0xdd, 0xef, 0xb0, 0xda, 0xe6, 0x9f, 0x36, 0x16, 0xe5, 0x06, 0xcc, 0x8c, 0xb5, 0xbc, 0x43, 0x3a, 0x82, 0xba, 0x71, 0xf6, 0xfe, 0xb4, 0x51, 0x07, 0xb2, 0x40, 0x41, 0xbb, 0xa4, 0x50, 0x73, 0xce, 0x54, 0x48, 0x8a, 0x5a, 0xef, 0x86, 0x1e, 0x78, 0x05, 0xbb, 0xb8, 0xf9, 0x70, 0xae, 0xdc, 0x1c, 0x59, 0x14, 0x9c, 0xfe, 0x72, 0xc7, 0x02, 0x5e, 0x2d, 0x11, 0x73, 0x37, 0xe8, 0x67, 0x7c, 0x88, 0xef, 0x43, 0x37, 0x4e, 0x69, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9882 = { .name = "ecdsa_secp384r1_sha512_9882", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9882_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9882_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9882_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9883 for ECDSA, tcId is 251 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9883_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9883_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9883_sig[] = { 0x2b, 0x06, 0x59, 0xfb, 0x7f, 0xa5, 0xfc, 0x1f, 0xce, 0x76, 0x74, 0x18, 0xc2, 0x09, 0x78, 0xde, 0x9a, 0x6a, 0x59, 0x94, 0x1f, 0xc5, 0x4f, 0x83, 0x80, 0x61, 0x9b, 0x2a, 0xb2, 0xa7, 0xd6, 0x03, 0x9d, 0xe5, 0x37, 0x3f, 0xbb, 0x50, 0x3c, 0x24, 0xf2, 0xce, 0x38, 0xe9, 0xc5, 0x79, 0x95, 0xde, 0x0d, 0x94, 0xdb, 0xa9, 0x8d, 0xd8, 0x74, 0xbf, 0xff, 0xea, 0xc9, 0x6a, 0x92, 0x95, 0xb6, 0xab, 0x66, 0x77, 0x08, 0xb8, 0xe3, 0x32, 0x52, 0xed, 0xc0, 0x29, 0x57, 0x4c, 0x48, 0x4a, 0x13, 0x21, 0x35, 0xb1, 0x3e, 0x52, 0xdb, 0x6f, 0x87, 0x79, 0x87, 0xc1, 0xbe, 0x4f, 0x51, 0xfc, 0xa1, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9883 = { .name = "ecdsa_secp384r1_sha512_9883", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9883_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9883_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9883_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9884 for ECDSA, tcId is 252 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9884_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9884_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9884_sig[] = { 0x4a, 0x5a, 0x14, 0xf1, 0xec, 0xf0, 0x53, 0xbf, 0x3e, 0xc1, 0x48, 0x43, 0xdb, 0x8c, 0x7d, 0xd1, 0x53, 0xe9, 0x54, 0x5d, 0x20, 0xd7, 0x63, 0x45, 0xa9, 0xe1, 0xd1, 0xa8, 0xfc, 0xb4, 0x95, 0x58, 0xca, 0x1e, 0xe5, 0xa9, 0x40, 0x23, 0x11, 0xc2, 0xea, 0xa1, 0x02, 0xe6, 0x46, 0xe5, 0x7c, 0x2c, 0x15, 0x73, 0xb8, 0xb4, 0xb6, 0x33, 0x49, 0x6d, 0xa3, 0x20, 0xe9, 0x9a, 0x85, 0xc6, 0xf5, 0x7b, 0x7e, 0xe5, 0x43, 0x54, 0x81, 0x80, 0xa7, 0x7f, 0x7f, 0xce, 0xd2, 0xd0, 0x66, 0x59, 0x11, 0xcb, 0x4c, 0xde, 0x9d, 0xe2, 0x1b, 0xc1, 0xa9, 0x81, 0xb9, 0x77, 0x42, 0xc9, 0x04, 0x0a, 0x63, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9884 = { .name = "ecdsa_secp384r1_sha512_9884", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9884_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9884_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9884_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9885 for ECDSA, tcId is 253 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9885_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9885_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9885_sig[] = { 0x10, 0x4e, 0x66, 0xe6, 0xe2, 0x6c, 0x36, 0x63, 0x3c, 0x0a, 0xf0, 0x01, 0xf0, 0xd9, 0xa2, 0x16, 0x23, 0x68, 0x16, 0x92, 0x3e, 0xc9, 0x3b, 0x70, 0xbe, 0xa0, 0xa8, 0xff, 0x05, 0x3a, 0x15, 0xaa, 0xae, 0xf5, 0xfe, 0x34, 0x83, 0xe5, 0xcc, 0x73, 0x56, 0x4e, 0x60, 0xfe, 0x83, 0x64, 0xce, 0x0e, 0xec, 0x2d, 0xf9, 0x10, 0x0e, 0x34, 0x87, 0x5a, 0x5d, 0xc4, 0x36, 0xda, 0x82, 0x49, 0x16, 0x48, 0x7b, 0x38, 0xe7, 0xae, 0xb0, 0x29, 0x44, 0x86, 0x0e, 0x25, 0x7f, 0xd9, 0x82, 0xb0, 0x17, 0x82, 0xb3, 0xbd, 0x6b, 0x13, 0xb3, 0x76, 0xe8, 0xa6, 0xdb, 0xd7, 0x83, 0xdf, 0xa0, 0xd7, 0x71, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9885 = { .name = "ecdsa_secp384r1_sha512_9885", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9885_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9885_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9885_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9886 for ECDSA, tcId is 254 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9886_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9886_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9886_sig[] = { 0x4b, 0x06, 0x79, 0x5d, 0xa8, 0x2b, 0xda, 0x35, 0x4e, 0x8d, 0x94, 0x22, 0xa7, 0x6c, 0x7b, 0xc0, 0x64, 0x02, 0x7f, 0xcd, 0xd6, 0x8f, 0x95, 0xb7, 0xbc, 0x61, 0x77, 0xa8, 0x5b, 0x2d, 0x82, 0x2c, 0x84, 0xdc, 0x31, 0xcb, 0x91, 0xfc, 0x01, 0x6a, 0xfa, 0x48, 0x81, 0x6a, 0x3a, 0x01, 0x92, 0x67, 0x18, 0xe3, 0x10, 0x18, 0xe3, 0x12, 0xd3, 0xdd, 0x3d, 0xd4, 0x9e, 0xc3, 0x55, 0xfd, 0xb0, 0xde, 0xf3, 0xbb, 0x3e, 0x44, 0x39, 0x3c, 0x26, 0xcf, 0x1b, 0xc1, 0x10, 0xb2, 0x3a, 0x3a, 0xac, 0xf6, 0xc4, 0x42, 0xbf, 0xce, 0xc5, 0x53, 0x5c, 0xe3, 0x75, 0x27, 0xd0, 0xe0, 0x68, 0xf7, 0x5c, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9886 = { .name = "ecdsa_secp384r1_sha512_9886", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9886_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9886_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9886_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9887 for ECDSA, tcId is 255 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9887_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9887_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9887_sig[] = { 0xad, 0x75, 0xca, 0x5a, 0x3d, 0xf3, 0x4e, 0x5a, 0x6d, 0x3e, 0xa4, 0xc9, 0xdf, 0x53, 0x4e, 0x89, 0x10, 0xcf, 0xb1, 0xd8, 0xc6, 0x05, 0xfc, 0x39, 0x8f, 0xbe, 0xe4, 0xc0, 0x5f, 0x2b, 0x71, 0x5b, 0xd2, 0x14, 0x62, 0x21, 0x92, 0x0d, 0xe8, 0xba, 0xc8, 0x6c, 0x2b, 0x21, 0x02, 0x21, 0xbc, 0xff, 0xa3, 0x22, 0xd3, 0xdf, 0x3b, 0xb2, 0xcf, 0x9e, 0x42, 0x15, 0xad, 0xf1, 0xff, 0x45, 0x9e, 0x70, 0xf2, 0xf8, 0x6b, 0xec, 0x6d, 0xd6, 0xaf, 0x5d, 0x04, 0xae, 0x30, 0x7d, 0x21, 0xed, 0x59, 0x55, 0x13, 0x6c, 0x8e, 0x25, 0x8f, 0xdc, 0x0f, 0x9c, 0xbd, 0x6c, 0xf8, 0x9c, 0x31, 0xaa, 0x69, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9887 = { .name = "ecdsa_secp384r1_sha512_9887", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9887_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9887_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9887_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9888 for ECDSA, tcId is 256 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9888_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9888_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9888_sig[] = { 0xb0, 0xfa, 0x62, 0x89, 0xcc, 0x61, 0xba, 0xb3, 0x35, 0x93, 0x2e, 0xa1, 0xac, 0x65, 0x40, 0x46, 0x26, 0x53, 0xcc, 0x74, 0x7e, 0xf6, 0x78, 0x27, 0x82, 0x5f, 0x77, 0x68, 0x9a, 0x43, 0x98, 0x60, 0x22, 0x97, 0x83, 0x5d, 0x08, 0xaa, 0x16, 0xe2, 0x3a, 0x76, 0xde, 0xa9, 0xf7, 0x54, 0x04, 0xef, 0x27, 0x8d, 0x65, 0x4a, 0x0b, 0x50, 0xc5, 0x7d, 0x13, 0xf9, 0xc9, 0xc8, 0xc7, 0xc6, 0x94, 0x00, 0x11, 0x67, 0xf8, 0xe3, 0xb7, 0x14, 0x91, 0x77, 0x2a, 0x74, 0x27, 0xf1, 0x41, 0x0f, 0xb6, 0xde, 0x51, 0x87, 0x40, 0xc2, 0x2e, 0x45, 0x5e, 0x58, 0xde, 0x48, 0x84, 0x64, 0x79, 0xb3, 0x00, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9888 = { .name = "ecdsa_secp384r1_sha512_9888", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9888_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9888_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9888_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9889 for ECDSA, tcId is 257 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9889_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9889_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9889_sig[] = { 0xc2, 0x16, 0xcb, 0x4f, 0xe9, 0x7f, 0xac, 0xb7, 0xcd, 0x66, 0xf0, 0x2c, 0xd7, 0x51, 0x15, 0x5b, 0x94, 0xfa, 0x2f, 0x35, 0xf8, 0xa6, 0x2b, 0xa5, 0x65, 0xac, 0xa5, 0x75, 0x72, 0x8a, 0xf5, 0x33, 0x54, 0x0f, 0xf5, 0xd7, 0x69, 0xb7, 0xc1, 0x5c, 0x13, 0x45, 0xab, 0x64, 0x14, 0xe1, 0x50, 0x68, 0x27, 0x8a, 0x8a, 0x37, 0x2b, 0x75, 0xd6, 0xeb, 0x17, 0xa4, 0xf7, 0xc7, 0xf6, 0x2d, 0x55, 0x55, 0xc7, 0x35, 0x7a, 0x1a, 0x04, 0x70, 0x26, 0xbe, 0xad, 0x52, 0x18, 0x5c, 0xbc, 0xc0, 0x1d, 0x73, 0xb8, 0x0a, 0x15, 0x77, 0xe8, 0x62, 0x20, 0xb2, 0x27, 0x8d, 0xa2, 0xb1, 0xee, 0x8c, 0x98, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9889 = { .name = "ecdsa_secp384r1_sha512_9889", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9889_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9889_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9889_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9890 for ECDSA, tcId is 258 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9890_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9890_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9890_sig[] = { 0x95, 0x91, 0xc8, 0x04, 0x53, 0xcf, 0xfb, 0xcd, 0x0b, 0x8d, 0x6d, 0x20, 0xfc, 0xe0, 0xcb, 0xb2, 0xa4, 0x58, 0xe5, 0x4a, 0xed, 0x7b, 0xa1, 0xc7, 0x67, 0xe6, 0xc0, 0x17, 0xaf, 0x4c, 0x4a, 0xa0, 0x7a, 0x76, 0x85, 0x9c, 0x0b, 0x24, 0x9f, 0x66, 0x92, 0xa3, 0xc9, 0xac, 0xe8, 0x93, 0xf1, 0x4e, 0x89, 0x3b, 0x56, 0x7c, 0xd2, 0x95, 0x9c, 0xd6, 0x05, 0x57, 0xd3, 0xd6, 0x01, 0x3d, 0x6e, 0x17, 0x41, 0x42, 0x1a, 0x6e, 0xdc, 0x5b, 0xc1, 0x82, 0x44, 0xb3, 0xe8, 0xd7, 0x74, 0x4e, 0x57, 0x92, 0x8c, 0xe0, 0x06, 0xa3, 0xfb, 0xd6, 0xe6, 0x32, 0x4c, 0xb8, 0xea, 0x3e, 0x51, 0x77, 0xe7, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9890 = { .name = "ecdsa_secp384r1_sha512_9890", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9890_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9890_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9890_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9891 for ECDSA, tcId is 259 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9891_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9891_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9891_sig[] = { 0x35, 0x0b, 0x55, 0x15, 0xba, 0x97, 0x85, 0xf1, 0x49, 0xe2, 0xa5, 0x66, 0xc1, 0x4f, 0x41, 0x78, 0x75, 0x7b, 0xb3, 0x25, 0x17, 0x98, 0x88, 0xf5, 0x26, 0xf7, 0xdb, 0x11, 0x16, 0x1a, 0xed, 0xcd, 0x75, 0x25, 0x51, 0x38, 0x13, 0x16, 0xc2, 0x71, 0x3f, 0x5d, 0xe2, 0x1d, 0x3d, 0x51, 0x7a, 0xf0, 0x97, 0xd4, 0x8a, 0x90, 0xc3, 0xbb, 0x34, 0x44, 0x73, 0x6b, 0xec, 0x69, 0xdb, 0x06, 0x49, 0xf8, 0x24, 0x28, 0xb3, 0x92, 0x38, 0xad, 0xa6, 0x04, 0x8a, 0x0b, 0xea, 0xd8, 0x4f, 0x2f, 0x3b, 0x73, 0x81, 0x6b, 0x48, 0xfe, 0xd4, 0xd5, 0x7b, 0x5f, 0x87, 0xa1, 0x94, 0xce, 0x40, 0x04, 0xed, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9891 = { .name = "ecdsa_secp384r1_sha512_9891", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9891_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9891_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9891_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9892 for ECDSA, tcId is 260 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9892_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9892_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9892_sig[] = { 0x83, 0x32, 0x10, 0xc4, 0x5d, 0x24, 0x48, 0xd9, 0xa4, 0xd6, 0x96, 0x22, 0xd6, 0xf2, 0x19, 0x3e, 0x64, 0xc6, 0x5c, 0x79, 0xd4, 0x5d, 0x62, 0xe2, 0x8f, 0x51, 0x7c, 0xa5, 0xc6, 0x8e, 0xef, 0x05, 0xa2, 0xe9, 0x8b, 0x1f, 0xae, 0xd4, 0xcc, 0x87, 0xcb, 0xdb, 0xec, 0x6f, 0xe6, 0xbb, 0x89, 0x87, 0xb7, 0x77, 0xb4, 0x4c, 0xd3, 0x0e, 0x6a, 0x04, 0x9d, 0xc5, 0x6a, 0xf1, 0x9a, 0x25, 0x1d, 0x95, 0x5c, 0x1b, 0xba, 0xb0, 0xc3, 0x07, 0xfe, 0x12, 0xe9, 0xe5, 0x38, 0x2f, 0xd4, 0x8c, 0x17, 0x3d, 0xb0, 0x29, 0x2f, 0x0b, 0x10, 0x47, 0xda, 0x28, 0xee, 0x18, 0x51, 0x8e, 0x11, 0x68, 0x8e, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9892 = { .name = "ecdsa_secp384r1_sha512_9892", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9892_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9892_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9892_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9893 for ECDSA, tcId is 261 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9893_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9893_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9893_sig[] = { 0x77, 0x28, 0xef, 0x10, 0xd9, 0xd5, 0xf3, 0xf3, 0x21, 0x32, 0x71, 0x6e, 0x6b, 0x40, 0x39, 0x26, 0x92, 0x9b, 0x05, 0x20, 0x17, 0x00, 0x65, 0x8d, 0x4b, 0x7f, 0x25, 0xa0, 0x69, 0x2f, 0x15, 0x3b, 0x8d, 0x66, 0x6f, 0xd0, 0xda, 0x39, 0x88, 0x8a, 0xb6, 0x23, 0x42, 0x12, 0x65, 0x92, 0x68, 0xd0, 0x55, 0xdf, 0x94, 0x66, 0xee, 0x2c, 0x98, 0x22, 0x5a, 0x2b, 0x0c, 0x4f, 0xf7, 0x76, 0x22, 0xf9, 0xd1, 0x1b, 0x4e, 0x48, 0xaa, 0x7f, 0x92, 0x79, 0xcd, 0xc2, 0xe2, 0x45, 0xfd, 0xd9, 0xb9, 0xf4, 0x28, 0x21, 0x06, 0xe2, 0x5a, 0x45, 0x8f, 0xf6, 0x18, 0xbc, 0x3c, 0xa9, 0x42, 0x2b, 0xea, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9893 = { .name = "ecdsa_secp384r1_sha512_9893", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9893_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9893_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9893_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9894 for ECDSA, tcId is 262 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9894_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9894_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9894_sig[] = { 0x55, 0x20, 0x40, 0x70, 0x1d, 0xba, 0x17, 0xbe, 0x3b, 0x4d, 0x5d, 0x6e, 0x13, 0x6c, 0xe4, 0x12, 0xb6, 0xa4, 0xc5, 0x0c, 0xe1, 0xee, 0x53, 0x41, 0x5d, 0x81, 0x00, 0xc6, 0x9a, 0x8e, 0xe4, 0x72, 0x66, 0x52, 0x64, 0x8f, 0x50, 0xe6, 0x95, 0xf8, 0xbb, 0x55, 0x2d, 0x0d, 0xf3, 0xe8, 0xd1, 0xc4, 0x13, 0x74, 0x97, 0x2b, 0x2f, 0x35, 0xb2, 0xfd, 0x86, 0xd4, 0x5e, 0xd0, 0xc9, 0x35, 0x8b, 0x39, 0x4e, 0x27, 0x15, 0x75, 0xe4, 0x29, 0xac, 0x8a, 0xa6, 0x0e, 0xb9, 0x4b, 0x9d, 0xf7, 0xe7, 0x55, 0xd9, 0x31, 0x7f, 0xb2, 0x59, 0x26, 0x9e, 0x9d, 0x3b, 0x1d, 0xb8, 0xd4, 0x8d, 0x91, 0xdc, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9894 = { .name = "ecdsa_secp384r1_sha512_9894", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9894_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9894_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9894_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9895 for ECDSA, tcId is 263 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9895_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9895_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9895_sig[] = { 0xfe, 0x6e, 0xf0, 0x70, 0x56, 0xce, 0x64, 0x71, 0x28, 0x58, 0x4b, 0xec, 0x15, 0x6b, 0x68, 0xb8, 0x00, 0x5f, 0x42, 0xd8, 0xc8, 0x5d, 0xfb, 0x12, 0x21, 0x34, 0xc4, 0x88, 0xcc, 0x0e, 0x72, 0xcf, 0x8f, 0x06, 0x70, 0x04, 0x17, 0xd7, 0xff, 0x69, 0x4b, 0x45, 0xe8, 0x94, 0xec, 0x23, 0xcb, 0xbd, 0x7f, 0x5e, 0x33, 0xc5, 0xbf, 0xa6, 0x97, 0xc1, 0x44, 0xd4, 0x40, 0xb3, 0x2d, 0x06, 0x22, 0x1f, 0x63, 0x0a, 0x9c, 0xca, 0xa8, 0xe9, 0xa0, 0x48, 0x94, 0x90, 0xc0, 0x4b, 0x86, 0xe8, 0xda, 0xae, 0x0e, 0x41, 0xd2, 0x46, 0x64, 0x29, 0xb4, 0xb3, 0xcc, 0x1d, 0x37, 0x34, 0x8e, 0x36, 0xcc, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9895 = { .name = "ecdsa_secp384r1_sha512_9895", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9895_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9895_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9895_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9896 for ECDSA, tcId is 264 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9896_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9896_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9896_sig[] = { 0xe0, 0x09, 0xfc, 0x1a, 0x13, 0xd2, 0x82, 0xbd, 0x37, 0xf1, 0x06, 0x93, 0x35, 0x0a, 0x5b, 0x42, 0x1a, 0x00, 0x39, 0x71, 0x3d, 0x29, 0xcb, 0x9e, 0x81, 0x6e, 0x01, 0x3c, 0x17, 0x3b, 0xd1, 0xec, 0x2b, 0xd6, 0xeb, 0x6b, 0xd8, 0x84, 0x29, 0x02, 0x3e, 0xe3, 0xd7, 0x5d, 0x9a, 0x5e, 0xc0, 0x6f, 0x0b, 0x8b, 0xd4, 0x81, 0x98, 0x2a, 0x6e, 0x52, 0x35, 0x5b, 0xcd, 0xe5, 0xfe, 0x00, 0x92, 0xab, 0xac, 0x41, 0xf0, 0x54, 0x3c, 0x31, 0xd1, 0x92, 0x8b, 0x9a, 0x58, 0x5e, 0x63, 0xe9, 0x52, 0x0e, 0x24, 0xa6, 0x5f, 0x46, 0xdb, 0x26, 0x96, 0xe1, 0xb8, 0x5a, 0x65, 0xc4, 0xe5, 0x24, 0x08, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9896 = { .name = "ecdsa_secp384r1_sha512_9896", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9896_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9896_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9896_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9897 for ECDSA, tcId is 265 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9897_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9897_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9897_sig[] = { 0xac, 0xee, 0x00, 0xdf, 0xdf, 0xce, 0xe7, 0x34, 0x3a, 0xef, 0xfa, 0x85, 0x14, 0xb1, 0x10, 0x20, 0xc5, 0x43, 0x50, 0x27, 0x88, 0x75, 0x29, 0xd2, 0x55, 0xbd, 0xbd, 0x45, 0xa9, 0x0f, 0x16, 0x0c, 0x68, 0xf0, 0x5b, 0xd4, 0xb5, 0x67, 0xda, 0xa8, 0xfa, 0x14, 0xe5, 0x80, 0x7f, 0x51, 0x67, 0xa4, 0x1c, 0x9f, 0xdf, 0x54, 0x61, 0x90, 0x97, 0x0a, 0xa3, 0x31, 0x21, 0xa3, 0x04, 0x32, 0x80, 0x66, 0x9b, 0xe6, 0x94, 0xe5, 0xf7, 0x00, 0xb5, 0x2a, 0x80, 0x5a, 0xa6, 0x10, 0x1b, 0x4c, 0x58, 0xf0, 0x46, 0x7e, 0x7b, 0x69, 0x96, 0x41, 0xd1, 0xd0, 0x3f, 0x62, 0x29, 0xb2, 0xfa, 0xf4, 0x25, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9897 = { .name = "ecdsa_secp384r1_sha512_9897", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9897_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9897_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9897_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9898 for ECDSA, tcId is 266 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9898_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9898_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9898_sig[] = { 0x8a, 0x4e, 0xe1, 0xe3, 0xbb, 0x25, 0x19, 0x82, 0x47, 0x58, 0x77, 0xd1, 0x87, 0x63, 0xfa, 0xfc, 0xf4, 0x9c, 0xcc, 0x8b, 0x0f, 0xec, 0x1d, 0xa6, 0x3b, 0x0e, 0xdc, 0xcb, 0xb8, 0xd3, 0xe3, 0x86, 0x08, 0xa2, 0xe0, 0x2d, 0x0d, 0x95, 0x10, 0x31, 0x17, 0x9e, 0x12, 0xac, 0x89, 0x9d, 0x30, 0xc3, 0x73, 0xcb, 0x62, 0xad, 0x76, 0x32, 0xcd, 0x42, 0xdf, 0xf8, 0x29, 0xab, 0xfb, 0xfc, 0xb6, 0x16, 0x52, 0x07, 0xe3, 0x70, 0x8e, 0xd1, 0x00, 0x43, 0xc0, 0xcd, 0xee, 0x95, 0x1c, 0x7f, 0x80, 0x12, 0x43, 0x26, 0x96, 0xe9, 0xcf, 0x73, 0x2d, 0xcb, 0xad, 0xb5, 0x04, 0x63, 0x06, 0x48, 0x41, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9898 = { .name = "ecdsa_secp384r1_sha512_9898", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9898_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9898_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9898_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9899 for ECDSA, tcId is 267 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9899_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9899_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9899_sig[] = { 0x39, 0x03, 0xb5, 0x9f, 0x83, 0x7f, 0xf5, 0xf4, 0x1f, 0x42, 0xcb, 0xe3, 0xe2, 0xfc, 0x8e, 0x17, 0xd8, 0x59, 0xcb, 0xb3, 0x53, 0x86, 0xc4, 0x32, 0x7d, 0x39, 0x47, 0xfb, 0x01, 0x2b, 0x36, 0x29, 0xfe, 0xa9, 0x11, 0xc8, 0x3c, 0xef, 0xdb, 0xd5, 0x03, 0xae, 0xbb, 0xcc, 0x11, 0x14, 0xaf, 0xd1, 0x0e, 0x5b, 0xe9, 0x09, 0x4b, 0x5a, 0x22, 0xad, 0xe0, 0x0c, 0x24, 0x64, 0x4f, 0x47, 0x6b, 0xaa, 0xd0, 0xf7, 0x74, 0x1d, 0xfb, 0x2c, 0xe9, 0x64, 0x4a, 0x1c, 0x45, 0x76, 0x94, 0x04, 0xf8, 0xdc, 0xcc, 0x52, 0x20, 0x17, 0xc2, 0xb8, 0xcc, 0x63, 0x0f, 0x1a, 0x0e, 0xf5, 0xfe, 0xe9, 0x9f, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9899 = { .name = "ecdsa_secp384r1_sha512_9899", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9899_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9899_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9899_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9900 for ECDSA, tcId is 268 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9900_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9900_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9900_sig[] = { 0x77, 0x17, 0xff, 0xc8, 0xd0, 0x81, 0x1f, 0x35, 0x72, 0x99, 0x42, 0x3c, 0x56, 0xec, 0x18, 0x1c, 0x58, 0xf1, 0x98, 0x1f, 0x5c, 0x1d, 0xd4, 0xf3, 0x46, 0xf6, 0xa2, 0xad, 0x71, 0xd3, 0x58, 0x2e, 0x20, 0x3a, 0x11, 0xe8, 0x60, 0x9c, 0x11, 0x46, 0xff, 0x32, 0x47, 0xa1, 0x82, 0x0f, 0x83, 0x2c, 0x96, 0xc8, 0x9e, 0xc7, 0x07, 0xda, 0x3c, 0xd8, 0xb0, 0x90, 0x84, 0xb0, 0x65, 0xe3, 0x26, 0x53, 0x27, 0xa5, 0x36, 0xa9, 0x74, 0xc4, 0x28, 0x51, 0x55, 0x38, 0x80, 0x11, 0xe3, 0x48, 0xf2, 0xe7, 0xf0, 0x05, 0xae, 0x7e, 0x3e, 0x50, 0x27, 0x32, 0xfc, 0x29, 0x71, 0xac, 0x13, 0xfd, 0x72, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9900 = { .name = "ecdsa_secp384r1_sha512_9900", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9900_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9900_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9900_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9901 for ECDSA, tcId is 269 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9901_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9901_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9901_sig[] = { 0xa2, 0x15, 0x19, 0xce, 0x35, 0x33, 0xc8, 0x08, 0x26, 0xf1, 0xe4, 0x7f, 0xa9, 0xaf, 0xde, 0x70, 0x96, 0x15, 0x11, 0x44, 0x29, 0x11, 0x34, 0x42, 0x19, 0x90, 0x28, 0x5a, 0x8d, 0x89, 0xa8, 0xc2, 0xd4, 0xaf, 0xda, 0xdd, 0x54, 0x7a, 0x92, 0x3d, 0xcc, 0x17, 0xbf, 0xcd, 0xd0, 0xe9, 0xff, 0xb9, 0x40, 0x57, 0x72, 0x45, 0xdd, 0x2e, 0x02, 0x2c, 0x8e, 0xd8, 0xb5, 0xde, 0x7b, 0x8c, 0x26, 0xf3, 0x13, 0x07, 0x42, 0x9a, 0x7a, 0x64, 0xe5, 0x72, 0x93, 0x11, 0xcc, 0x41, 0x28, 0xe3, 0xb4, 0x86, 0x86, 0x7e, 0x61, 0xb4, 0xa8, 0xa1, 0xcd, 0x07, 0x31, 0x79, 0x2e, 0xb1, 0x46, 0x6d, 0x08, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9901 = { .name = "ecdsa_secp384r1_sha512_9901", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9901_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9901_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9901_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9902 for ECDSA, tcId is 270 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9902_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9902_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9902_sig[] = { 0xa7, 0x27, 0xad, 0xda, 0xd0, 0xb2, 0xac, 0xd2, 0x94, 0x2c, 0xb1, 0xe3, 0xf7, 0xb2, 0x91, 0x7c, 0xa6, 0x54, 0x53, 0x27, 0x51, 0x98, 0xb0, 0x64, 0x36, 0xa9, 0x93, 0xbf, 0xc9, 0x82, 0xd3, 0xf5, 0x46, 0x20, 0xc3, 0x95, 0xe2, 0x53, 0xd5, 0x7b, 0x8f, 0xe0, 0x26, 0xef, 0xcf, 0x72, 0x52, 0xf9, 0x7a, 0x19, 0x81, 0x1a, 0xa4, 0xc1, 0x2c, 0x45, 0xc3, 0xc0, 0x41, 0xe7, 0xc6, 0x14, 0xd0, 0xd9, 0x80, 0x51, 0xca, 0x7a, 0x0c, 0x57, 0xa9, 0xa1, 0x07, 0xd5, 0x52, 0x79, 0x3b, 0xa1, 0xd0, 0xde, 0xbb, 0x37, 0x35, 0x25, 0xaa, 0xfc, 0xc1, 0x3a, 0xe1, 0xac, 0xd5, 0x0a, 0x42, 0xa8, 0x9a, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9902 = { .name = "ecdsa_secp384r1_sha512_9902", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9902_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9902_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9902_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9903 for ECDSA, tcId is 271 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9903_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9903_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9903_sig[] = { 0x22, 0x28, 0x72, 0x77, 0x87, 0x2d, 0x17, 0x5d, 0x8a, 0x3f, 0xf5, 0xbe, 0x98, 0x18, 0x65, 0x8f, 0x84, 0x5e, 0xb9, 0xc1, 0xb2, 0xed, 0xc0, 0x93, 0xae, 0x82, 0xa7, 0x5a, 0xa3, 0x1c, 0xc2, 0x6f, 0xe1, 0x77, 0x1b, 0x4b, 0xfb, 0xd4, 0xc3, 0x20, 0x25, 0x13, 0x88, 0xd7, 0x27, 0x9b, 0x52, 0x45, 0xb4, 0x7d, 0x18, 0x33, 0x86, 0x7e, 0x88, 0x9f, 0xcf, 0xd7, 0xac, 0x17, 0x18, 0x55, 0x29, 0x3a, 0x50, 0xaa, 0x6d, 0xb2, 0x4c, 0x65, 0x22, 0xe3, 0x74, 0xfe, 0x87, 0xbe, 0x12, 0xbf, 0x49, 0xb1, 0x3c, 0x8b, 0x5e, 0x14, 0x55, 0xa2, 0xf2, 0x5a, 0xa7, 0x91, 0x2f, 0x79, 0x9e, 0xeb, 0xe5, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9903 = { .name = "ecdsa_secp384r1_sha512_9903", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9903_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9903_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9903_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9904 for ECDSA, tcId is 272 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9904_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9904_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9904_sig[] = { 0xa0, 0xf4, 0x13, 0x62, 0x00, 0x9b, 0x8e, 0x7e, 0x75, 0x45, 0xd0, 0xf7, 0xc4, 0x12, 0x7e, 0x22, 0xd8, 0x2a, 0xc1, 0x92, 0x1e, 0xb6, 0x1b, 0xf5, 0x1e, 0x9e, 0xa7, 0x11, 0xe4, 0x15, 0x57, 0xa8, 0x4f, 0x7b, 0xb6, 0xac, 0xe4, 0x99, 0xa3, 0xbc, 0x9e, 0xbc, 0xa8, 0xe8, 0x37, 0x28, 0x78, 0x7b, 0x1f, 0x6e, 0x0c, 0x15, 0xa3, 0xe4, 0x02, 0x37, 0x08, 0x85, 0xe2, 0xac, 0xeb, 0x71, 0x22, 0x80, 0xeb, 0xc4, 0x5b, 0x63, 0x98, 0x63, 0x57, 0x76, 0x5b, 0x7e, 0x54, 0xb0, 0x6c, 0xd0, 0x0d, 0xb8, 0x30, 0x8e, 0x47, 0x15, 0xc3, 0x9d, 0x48, 0xd2, 0x46, 0x03, 0x0b, 0xf9, 0x60, 0xe6, 0xa2, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9904 = { .name = "ecdsa_secp384r1_sha512_9904", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9904_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9904_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9904_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9905 for ECDSA, tcId is 273 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9905_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9905_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9905_sig[] = { 0x41, 0x44, 0xe1, 0xc6, 0xad, 0x29, 0xad, 0x88, 0xaa, 0x54, 0x72, 0xd6, 0xd1, 0xa8, 0xd1, 0xf1, 0x5d, 0xe3, 0x15, 0xf5, 0xb2, 0x81, 0xf8, 0x7c, 0xc3, 0x92, 0xd6, 0x6d, 0x70, 0x42, 0x54, 0x7e, 0x6a, 0xf7, 0xc7, 0x33, 0xb3, 0x18, 0x28, 0xf8, 0x9c, 0x8a, 0x5d, 0xaf, 0xce, 0x5b, 0xb9, 0xaf, 0xf5, 0xd0, 0xd8, 0x1f, 0x92, 0x42, 0x8d, 0xf2, 0x97, 0x77, 0x57, 0xc8, 0x8b, 0xa6, 0x7f, 0x9e, 0x03, 0xab, 0xd4, 0xc1, 0x5b, 0x1e, 0x87, 0xfa, 0x1d, 0xd4, 0x9e, 0x60, 0x1a, 0x9d, 0xd4, 0x79, 0xe7, 0xc3, 0xdc, 0x03, 0xa8, 0xbf, 0xea, 0x60, 0xfc, 0xfc, 0x1c, 0x54, 0x39, 0x31, 0xa7, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9905 = { .name = "ecdsa_secp384r1_sha512_9905", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9905_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9905_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9905_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9906 for ECDSA, tcId is 274 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9906_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9906_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9906_sig[] = { 0x5f, 0x17, 0x7f, 0xc0, 0x55, 0x42, 0xbe, 0x6e, 0x09, 0x02, 0x7b, 0x7e, 0xac, 0x5e, 0xb3, 0x4f, 0x34, 0xfc, 0x10, 0xad, 0x14, 0x29, 0xe4, 0xda, 0xae, 0xa7, 0x58, 0x34, 0xde, 0x48, 0xdd, 0x22, 0x62, 0x6f, 0x2b, 0xf6, 0x53, 0xdf, 0xcc, 0x46, 0x23, 0x49, 0x21, 0xd1, 0x9b, 0x97, 0x40, 0x6b, 0x7d, 0xef, 0x6c, 0x99, 0x3a, 0x87, 0x56, 0x04, 0x25, 0xf2, 0xc9, 0x11, 0x04, 0x63, 0x57, 0xc4, 0xb1, 0xc4, 0xc3, 0x76, 0xbf, 0xa2, 0x2b, 0xb4, 0x5d, 0x53, 0x36, 0x54, 0xfe, 0xa6, 0xf5, 0x65, 0xba, 0x72, 0x21, 0x47, 0xb2, 0x26, 0x9e, 0xa7, 0x65, 0x2f, 0x9c, 0x4a, 0xf6, 0x2e, 0xd1, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9906 = { .name = "ecdsa_secp384r1_sha512_9906", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9906_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9906_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9906_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9907 for ECDSA, tcId is 275 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9907_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9907_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9907_sig[] = { 0xbd, 0x77, 0xa8, 0xff, 0x0c, 0xd7, 0x98, 0xd8, 0xf6, 0xe7, 0x5d, 0xfb, 0xbb, 0x16, 0xc3, 0xee, 0x5b, 0xf3, 0xf6, 0x26, 0xdc, 0xb5, 0xab, 0xdf, 0xd4, 0x53, 0xb3, 0x01, 0xcb, 0x4f, 0xd4, 0xca, 0xee, 0x8e, 0x84, 0xdd, 0x65, 0x0a, 0x8b, 0x4c, 0xf6, 0x65, 0x5d, 0xea, 0x16, 0x37, 0x88, 0xc7, 0xef, 0x8f, 0x42, 0x39, 0x44, 0x69, 0xeb, 0x8c, 0xd7, 0xb2, 0xac, 0x69, 0x42, 0xcd, 0xb5, 0xe7, 0x0d, 0xd5, 0x49, 0x80, 0xad, 0x8c, 0x0c, 0x48, 0x30, 0x99, 0x57, 0x3d, 0x75, 0xb9, 0x36, 0x88, 0x04, 0x59, 0xc9, 0xd1, 0x4f, 0x9e, 0x73, 0x64, 0x58, 0x65, 0xa4, 0xf2, 0x4e, 0xe2, 0xc4, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9907 = { .name = "ecdsa_secp384r1_sha512_9907", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9907_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9907_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9907_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9908 for ECDSA, tcId is 276 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9908_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9908_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9908_sig[] = { 0xa0, 0x2e, 0x21, 0x96, 0x25, 0x84, 0x36, 0xda, 0x6a, 0x35, 0xa2, 0xf7, 0x3c, 0xf6, 0xb0, 0x88, 0x80, 0xf2, 0x77, 0x57, 0x56, 0x6c, 0xe8, 0x0c, 0x7f, 0xc4, 0x5f, 0x5d, 0xcb, 0xae, 0xc6, 0x2d, 0x3f, 0xce, 0xbb, 0x78, 0x4b, 0x4a, 0x65, 0x0e, 0x24, 0xc1, 0xa9, 0x97, 0xe4, 0xb9, 0x71, 0xf7, 0xf1, 0x19, 0x5d, 0x2b, 0xa3, 0x32, 0x1b, 0x69, 0x38, 0xe0, 0x41, 0x69, 0xd7, 0xba, 0xf6, 0x05, 0x00, 0x1b, 0x63, 0x11, 0xf0, 0x8a, 0x5e, 0x82, 0x15, 0x7a, 0x76, 0x75, 0xd5, 0x49, 0x93, 0xf2, 0xfd, 0x1e, 0x41, 0xf8, 0xc8, 0x4f, 0xc4, 0x37, 0xa1, 0xa1, 0x39, 0xd2, 0xe7, 0x3e, 0x8d, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9908 = { .name = "ecdsa_secp384r1_sha512_9908", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9908_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9908_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9908_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9909 for ECDSA, tcId is 277 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9909_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9909_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9909_sig[] = { 0x68, 0x6c, 0x5d, 0xfe, 0x85, 0x86, 0x29, 0x12, 0x5f, 0xde, 0xe5, 0x22, 0xb7, 0x7a, 0x9b, 0x9b, 0xe5, 0xe0, 0x3a, 0x34, 0x7d, 0x79, 0xcb, 0x4c, 0x40, 0x7f, 0x17, 0xfd, 0x25, 0xc9, 0x72, 0x93, 0xcd, 0x99, 0x71, 0x1f, 0x33, 0xe7, 0x78, 0x14, 0xbd, 0x30, 0xd2, 0x45, 0x3d, 0x3a, 0x86, 0xc1, 0x50, 0x9a, 0xc9, 0xb1, 0x8c, 0x1b, 0x2b, 0x5a, 0x2b, 0x1b, 0x88, 0x9d, 0x99, 0x4b, 0x95, 0x07, 0x43, 0xa9, 0x88, 0xc2, 0xfc, 0xfb, 0x68, 0x3e, 0x89, 0x21, 0x1a, 0x43, 0xda, 0x6e, 0xe3, 0x62, 0xc2, 0xe4, 0x14, 0xd8, 0x4f, 0xe8, 0x2d, 0xb1, 0x90, 0x4b, 0x81, 0x70, 0x1c, 0x25, 0x78, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9909 = { .name = "ecdsa_secp384r1_sha512_9909", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9909_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9909_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9909_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9910 for ECDSA, tcId is 278 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9910_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9910_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9910_sig[] = { 0x83, 0xce, 0x81, 0x8e, 0xcd, 0x27, 0x64, 0x32, 0xa8, 0xdd, 0xfe, 0x75, 0x40, 0x6d, 0x01, 0x32, 0x9e, 0x76, 0xd7, 0x58, 0x6c, 0xd6, 0xf6, 0x11, 0xc1, 0xfe, 0x1a, 0x09, 0x13, 0xad, 0x80, 0x01, 0x4c, 0x21, 0x56, 0x38, 0x19, 0x42, 0xd5, 0x8d, 0xd6, 0x35, 0x6e, 0x44, 0xcc, 0xdc, 0x52, 0xa8, 0x36, 0xa3, 0x59, 0x83, 0xb9, 0x7a, 0x9a, 0xe2, 0xa1, 0x9c, 0xf0, 0x5b, 0xa9, 0x47, 0xdd, 0x88, 0x0c, 0x97, 0x3d, 0x5c, 0x78, 0xf9, 0x67, 0x6e, 0xbb, 0xcb, 0x0b, 0x40, 0xd6, 0x39, 0x12, 0x40, 0x30, 0xc1, 0x37, 0x23, 0x62, 0x32, 0xf1, 0xfa, 0xd1, 0x5a, 0xfd, 0x71, 0xc5, 0x2a, 0xd8, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9910 = { .name = "ecdsa_secp384r1_sha512_9910", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9910_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9910_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9910_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9911 for ECDSA, tcId is 279 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9911_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9911_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9911_sig[] = { 0x7c, 0xb7, 0x8e, 0xbb, 0x71, 0x2b, 0x5a, 0x2e, 0x0b, 0x05, 0x73, 0xd2, 0x84, 0x40, 0xa5, 0xda, 0x36, 0xbd, 0x23, 0x38, 0x80, 0x5d, 0x90, 0xef, 0x3b, 0x0c, 0x11, 0x78, 0xae, 0x61, 0x3b, 0xe8, 0xae, 0x8b, 0xf5, 0x48, 0xaf, 0x4e, 0x74, 0x03, 0xe5, 0xa5, 0x41, 0x04, 0x62, 0xaf, 0xc2, 0xe3, 0x86, 0x31, 0xa8, 0x2c, 0xbd, 0xb8, 0xc2, 0xc7, 0xdf, 0x70, 0xf0, 0x12, 0x40, 0x5f, 0x06, 0xad, 0x0a, 0xb2, 0x0d, 0x6c, 0x4f, 0xbc, 0xeb, 0x3e, 0x73, 0x6f, 0x40, 0xfd, 0xff, 0x1a, 0x8e, 0x5f, 0x6e, 0x66, 0x7a, 0x0e, 0x77, 0x25, 0x9f, 0x27, 0x74, 0x94, 0xde, 0x84, 0xec, 0x0d, 0xe5, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9911 = { .name = "ecdsa_secp384r1_sha512_9911", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9911_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9911_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9911_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9912 for ECDSA, tcId is 280 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9912_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9912_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9912_sig[] = { 0x85, 0x11, 0x0f, 0xe2, 0x11, 0x56, 0xb7, 0x76, 0x4b, 0x91, 0xbc, 0xb6, 0xcf, 0x44, 0xda, 0x3e, 0xb2, 0x1d, 0x16, 0x23, 0x95, 0x07, 0x1c, 0x21, 0x6a, 0x13, 0xb5, 0x92, 0x0d, 0x67, 0xa3, 0x1a, 0xaa, 0x20, 0xdf, 0xc4, 0x66, 0x9c, 0xf3, 0x2c, 0x04, 0x96, 0x4d, 0x08, 0x31, 0xbc, 0xdc, 0x29, 0xe1, 0x91, 0x87, 0x03, 0x3d, 0x8b, 0x4e, 0x1e, 0xdf, 0x7a, 0xb8, 0xea, 0xaa, 0xe1, 0xe1, 0x3c, 0x80, 0xc0, 0xc4, 0xdb, 0x51, 0xd9, 0x21, 0xcc, 0xf6, 0x2f, 0x42, 0x45, 0x24, 0xcb, 0xd5, 0x30, 0xd0, 0x7d, 0xe2, 0xcf, 0x90, 0x2a, 0x0e, 0xcd, 0xa5, 0xe0, 0x12, 0x06, 0xae, 0x61, 0xe2, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9912 = { .name = "ecdsa_secp384r1_sha512_9912", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9912_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9912_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9912_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9913 for ECDSA, tcId is 281 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9913_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9913_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9913_sig[] = { 0x0f, 0xd6, 0x21, 0xa8, 0x92, 0xee, 0x5a, 0x3e, 0xb0, 0xbc, 0xb8, 0x0f, 0x31, 0x84, 0x71, 0x4a, 0x66, 0x35, 0xf5, 0x68, 0xd9, 0x2f, 0x41, 0xad, 0x8d, 0x52, 0x38, 0x87, 0xd5, 0xb8, 0x2d, 0x2b, 0x93, 0x0e, 0xb5, 0xff, 0x29, 0x22, 0xfd, 0xa1, 0xa3, 0xd2, 0x99, 0xf5, 0xa0, 0x45, 0x83, 0x7f, 0x12, 0x78, 0x72, 0x5a, 0x60, 0x7f, 0xa6, 0xf2, 0xfc, 0x75, 0x49, 0xb0, 0xde, 0x81, 0x6f, 0xe2, 0xf8, 0x8e, 0x3a, 0x1e, 0xc1, 0xcc, 0xaf, 0x9f, 0xb5, 0x8e, 0x70, 0xa0, 0xf6, 0x64, 0x6c, 0x2d, 0x7a, 0xad, 0x6e, 0x4f, 0x73, 0xd1, 0x16, 0xe7, 0x30, 0x96, 0xbd, 0xef, 0x23, 0x1d, 0x0c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9913 = { .name = "ecdsa_secp384r1_sha512_9913", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9913_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9913_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9913_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9914 for ECDSA, tcId is 282 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9914_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9914_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9914_sig[] = { 0x80, 0x2c, 0xbe, 0x40, 0x5d, 0x3c, 0xe9, 0x66, 0x3b, 0x0b, 0x13, 0xc6, 0x39, 0xaa, 0x27, 0x73, 0x0b, 0x33, 0x77, 0xce, 0x42, 0x52, 0x10, 0x98, 0xae, 0x09, 0x09, 0x6b, 0x7f, 0xc5, 0xe7, 0xac, 0x99, 0x8b, 0x69, 0x94, 0x34, 0x4e, 0x89, 0xab, 0xfb, 0x50, 0xc0, 0x54, 0x76, 0xf9, 0xca, 0xe8, 0x9a, 0xa7, 0x25, 0x8c, 0x0d, 0xc4, 0xef, 0xf4, 0xb2, 0xd5, 0x83, 0x57, 0x53, 0x68, 0x30, 0x1e, 0x2a, 0x78, 0x65, 0xcf, 0xaa, 0x37, 0x53, 0x05, 0x5a, 0x79, 0xc8, 0xb8, 0xe9, 0x1e, 0x94, 0x49, 0x6a, 0x5d, 0x53, 0x91, 0x81, 0xc2, 0xfd, 0x77, 0x94, 0x1d, 0xf5, 0x0f, 0xe8, 0x74, 0x53, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9914 = { .name = "ecdsa_secp384r1_sha512_9914", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9914_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9914_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9914_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9915 for ECDSA, tcId is 283 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9915_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9915_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9915_sig[] = { 0x85, 0x9b, 0x04, 0x46, 0x94, 0x9d, 0x7f, 0x78, 0xa0, 0x30, 0x1a, 0xc4, 0xcc, 0x02, 0xb5, 0x99, 0xa7, 0x58, 0xfd, 0x1b, 0xe0, 0x06, 0xbf, 0x1a, 0x12, 0x57, 0x00, 0x15, 0x86, 0x9e, 0x59, 0xb9, 0xa4, 0x29, 0xce, 0x1c, 0x77, 0xa7, 0x50, 0x96, 0x9f, 0x49, 0xe2, 0x91, 0xf6, 0xab, 0x89, 0x94, 0x99, 0xa8, 0x12, 0xa1, 0xac, 0xc2, 0xc6, 0x46, 0x81, 0x43, 0x15, 0xcf, 0x9b, 0x62, 0x90, 0xd2, 0x23, 0x22, 0x36, 0xcd, 0xf1, 0x31, 0xf9, 0x59, 0x00, 0x88, 0xe7, 0x5a, 0x55, 0x78, 0x6c, 0xdf, 0xc9, 0xd9, 0x02, 0x7e, 0xc7, 0x00, 0x56, 0x40, 0x8a, 0xb5, 0x54, 0x45, 0xfd, 0x79, 0xfe, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9915 = { .name = "ecdsa_secp384r1_sha512_9915", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9915_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9915_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9915_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9916 for ECDSA, tcId is 284 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9916_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9916_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9916_sig[] = { 0xdb, 0xcc, 0x7e, 0xe9, 0xfa, 0x62, 0x0e, 0x94, 0x31, 0x93, 0xde, 0xae, 0x3f, 0x46, 0xb3, 0x14, 0x27, 0x79, 0xca, 0xa2, 0xbc, 0xe2, 0xdf, 0x79, 0xa2, 0x06, 0x39, 0xc8, 0xd0, 0x1b, 0xce, 0x41, 0x4a, 0x61, 0xf7, 0x27, 0x64, 0xc1, 0xec, 0x94, 0x9c, 0x94, 0x53, 0x20, 0xf5, 0xee, 0x2a, 0x1d, 0x1d, 0x98, 0x79, 0x78, 0x7b, 0x88, 0x0b, 0xd0, 0x5d, 0xb3, 0x9b, 0xac, 0x07, 0xbf, 0xe3, 0xe7, 0xd0, 0x79, 0x29, 0x32, 0x14, 0x4e, 0x21, 0x1e, 0x81, 0xf2, 0x1d, 0xa9, 0x62, 0x1b, 0x83, 0xbf, 0xf1, 0x1b, 0xc5, 0x2b, 0xcc, 0x7c, 0xb4, 0x0c, 0xf5, 0x09, 0x3f, 0x9b, 0xad, 0x86, 0x50, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9916 = { .name = "ecdsa_secp384r1_sha512_9916", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9916_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9916_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9916_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9917 for ECDSA, tcId is 285 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9917_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9917_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9917_sig[] = { 0x7a, 0x1f, 0x9f, 0xbd, 0x0f, 0x6e, 0x77, 0x6c, 0x3e, 0x3a, 0x3c, 0x79, 0x8f, 0x5c, 0x0d, 0x9e, 0x20, 0xf0, 0xe2, 0xf3, 0xf4, 0xd2, 0x2e, 0x58, 0x93, 0xdd, 0x09, 0xe5, 0xaf, 0x69, 0xa4, 0x6a, 0xbc, 0x2f, 0x88, 0x8d, 0x3c, 0x76, 0x83, 0x44, 0x62, 0x00, 0x80, 0x69, 0x27, 0x5d, 0xfe, 0xb9, 0x45, 0xe6, 0xd6, 0x2a, 0x74, 0xd3, 0xeb, 0x81, 0xf0, 0xa3, 0xa6, 0x29, 0x02, 0xb8, 0x94, 0x91, 0x32, 0x82, 0x1b, 0x45, 0xd8, 0xe6, 0xca, 0xd9, 0xbb, 0x3d, 0x86, 0x60, 0x45, 0x17, 0x27, 0xcd, 0xf7, 0xb3, 0x32, 0xa9, 0xac, 0x7b, 0xb0, 0x46, 0x04, 0x99, 0x13, 0x12, 0x14, 0x3f, 0x8a, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9917 = { .name = "ecdsa_secp384r1_sha512_9917", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9917_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9917_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9917_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9918 for ECDSA, tcId is 286 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9918_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9918_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9918_sig[] = { 0x04, 0x79, 0x62, 0xe0, 0x9e, 0x1b, 0x61, 0x82, 0x3d, 0x23, 0x72, 0x6b, 0xf7, 0x2b, 0x4d, 0xde, 0x38, 0x0e, 0x03, 0x2b, 0x53, 0x4e, 0x32, 0x73, 0xdb, 0x15, 0x7f, 0xa6, 0x09, 0x08, 0x15, 0x9a, 0xb7, 0xee, 0x4c, 0xad, 0xce, 0x14, 0xfd, 0x06, 0xeb, 0xe8, 0xe0, 0x8e, 0x8d, 0x8d, 0x5a, 0x07, 0x18, 0x92, 0xf6, 0x5e, 0xe0, 0x9e, 0x34, 0xce, 0x45, 0xdd, 0x44, 0xb5, 0xa1, 0x72, 0xb2, 0x00, 0xce, 0x66, 0xb6, 0x78, 0xb0, 0xe2, 0x00, 0xc1, 0x7e, 0x42, 0x4e, 0x31, 0x9f, 0x41, 0x4f, 0x8d, 0xfb, 0xb2, 0x76, 0x9a, 0x02, 0x59, 0xc9, 0xcc, 0x10, 0x51, 0x91, 0xaa, 0x92, 0x4e, 0x48, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9918 = { .name = "ecdsa_secp384r1_sha512_9918", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9918_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9918_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9918_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9919 for ECDSA, tcId is 287 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9919_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9919_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9919_sig[] = { 0x8f, 0x02, 0x79, 0x93, 0x90, 0xab, 0x86, 0x14, 0x52, 0xcd, 0x49, 0x49, 0x94, 0x2c, 0xbb, 0xcc, 0x25, 0xca, 0xd7, 0xc4, 0x33, 0x4c, 0x4b, 0xc6, 0x14, 0x6f, 0xbe, 0xf8, 0xad, 0x96, 0xc8, 0x6f, 0x92, 0x3f, 0xbf, 0x37, 0x6d, 0x9a, 0xb7, 0x90, 0x73, 0xe5, 0xfc, 0xb6, 0x63, 0xf1, 0xea, 0x91, 0xce, 0x15, 0xd9, 0x86, 0x2d, 0x10, 0x0f, 0xf9, 0x5a, 0xd7, 0x36, 0x89, 0x22, 0xee, 0xc3, 0xf6, 0xd7, 0x06, 0x0c, 0xe4, 0x12, 0xc0, 0x1f, 0xf1, 0x38, 0x70, 0xaa, 0x61, 0x62, 0x6e, 0xe4, 0x9e, 0xdf, 0x39, 0xbb, 0x27, 0x00, 0x5e, 0xcb, 0xe4, 0x06, 0xbb, 0x68, 0x25, 0xf7, 0x4c, 0x04, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9919 = { .name = "ecdsa_secp384r1_sha512_9919", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9919_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9919_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9919_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9920 for ECDSA, tcId is 288 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9920_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9920_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9920_sig[] = { 0x18, 0x79, 0xc4, 0xd6, 0xcf, 0x7c, 0x54, 0x25, 0x51, 0x55, 0x47, 0x57, 0x50, 0x49, 0xbe, 0x2a, 0x40, 0xc6, 0x24, 0xa9, 0x28, 0xcf, 0x28, 0x12, 0x50, 0xf8, 0xbd, 0xcb, 0xf4, 0x7e, 0x9f, 0x95, 0x31, 0x0d, 0x09, 0x92, 0xc9, 0x88, 0x7d, 0xc6, 0x31, 0x8b, 0x31, 0x97, 0x11, 0x4f, 0x35, 0x8e, 0xe1, 0x11, 0x6b, 0xf6, 0x83, 0x20, 0xba, 0xde, 0x7d, 0x07, 0xa1, 0xa9, 0x65, 0x15, 0x12, 0xd6, 0x0b, 0x55, 0x1a, 0xf8, 0x62, 0x5b, 0x98, 0xb5, 0xeb, 0x8c, 0xa2, 0x22, 0xd4, 0x07, 0x3a, 0xe5, 0xc1, 0x40, 0xa8, 0x0e, 0x5d, 0xbe, 0x59, 0xf0, 0x73, 0x64, 0x7d, 0xaa, 0x00, 0x83, 0x7a, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9920 = { .name = "ecdsa_secp384r1_sha512_9920", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9920_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9920_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9920_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9921 for ECDSA, tcId is 289 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9921_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9921_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9921_sig[] = { 0x31, 0xdc, 0xed, 0x9a, 0x67, 0x67, 0xf3, 0x90, 0x45, 0x47, 0x27, 0x49, 0xba, 0xec, 0x16, 0x44, 0xae, 0x7d, 0x93, 0xa8, 0x10, 0xa4, 0xb6, 0x0e, 0xb2, 0x13, 0xc0, 0x2c, 0x42, 0xde, 0x65, 0x15, 0x2f, 0xfc, 0x66, 0x9a, 0xf9, 0x60, 0x89, 0x55, 0x45, 0x70, 0x80, 0x1a, 0x70, 0x4e, 0x2a, 0x2d, 0x30, 0x22, 0xec, 0xfb, 0xc8, 0x8a, 0x72, 0xb9, 0xc5, 0x0e, 0xf6, 0x53, 0x44, 0x76, 0x5b, 0x61, 0x57, 0x38, 0xf2, 0xb3, 0xd4, 0x20, 0xad, 0xe6, 0x8c, 0xbf, 0x3e, 0xc4, 0x0b, 0xef, 0x0e, 0x10, 0xc5, 0xcc, 0x43, 0xbc, 0xfe, 0x00, 0x3b, 0xb6, 0xf1, 0x7e, 0xc2, 0x38, 0x02, 0xc4, 0x05, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9921 = { .name = "ecdsa_secp384r1_sha512_9921", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9921_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9921_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9921_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9922 for ECDSA, tcId is 290 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9922_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9922_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9922_sig[] = { 0xf4, 0xbd, 0xf7, 0x86, 0xc6, 0x1c, 0x5f, 0x1c, 0xe7, 0x56, 0x86, 0x38, 0xba, 0x9d, 0xbc, 0x9a, 0x13, 0x4e, 0x27, 0xfc, 0x14, 0x20, 0x03, 0xbf, 0x98, 0x70, 0x35, 0x39, 0x80, 0xa8, 0xf4, 0xc2, 0xfb, 0xd0, 0x3c, 0x8d, 0x01, 0x71, 0xe4, 0x04, 0x8e, 0xf3, 0x0d, 0xb6, 0xfe, 0x15, 0x38, 0x8a, 0xd0, 0xe9, 0x67, 0x68, 0xbc, 0x6a, 0xdc, 0x91, 0xf9, 0x3a, 0xe5, 0x70, 0x4e, 0x86, 0x88, 0x88, 0x53, 0xf4, 0x79, 0xf3, 0x2a, 0x45, 0xbf, 0xd4, 0x36, 0xdc, 0x8a, 0x03, 0x06, 0x03, 0xd2, 0x33, 0xc5, 0x68, 0x80, 0x12, 0x4b, 0x79, 0x71, 0x36, 0x2a, 0xa1, 0x1b, 0x71, 0x31, 0x5a, 0xe3, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9922 = { .name = "ecdsa_secp384r1_sha512_9922", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9922_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9922_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9922_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9923 for ECDSA, tcId is 291 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9923_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9923_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9923_sig[] = { 0xec, 0x0f, 0x63, 0x5b, 0x7c, 0xe3, 0x19, 0x88, 0xa0, 0x7f, 0x41, 0xb3, 0xdf, 0x35, 0xca, 0x03, 0xc7, 0x0e, 0x37, 0x6b, 0xfb, 0x3b, 0x6a, 0xb2, 0x48, 0x31, 0xa8, 0x3b, 0xe2, 0x12, 0x1b, 0x9f, 0x9e, 0x93, 0x92, 0x8b, 0x10, 0xa8, 0xf5, 0xfc, 0x03, 0x22, 0xbd, 0xb9, 0xed, 0xd4, 0x06, 0xfe, 0x66, 0x61, 0x8c, 0xcb, 0x47, 0x3c, 0x6d, 0xac, 0x3b, 0x14, 0xcf, 0xab, 0x6d, 0xfb, 0x24, 0xd2, 0x19, 0xb3, 0x7a, 0xec, 0x63, 0x42, 0x50, 0x67, 0xc2, 0xc1, 0xc6, 0x31, 0xd6, 0x4a, 0x80, 0xb9, 0xca, 0xb6, 0x44, 0x5f, 0x5a, 0x54, 0x39, 0xad, 0xb2, 0x8b, 0xb9, 0x9d, 0xaa, 0x92, 0x34, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9923 = { .name = "ecdsa_secp384r1_sha512_9923", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9923_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9923_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9923_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9924 for ECDSA, tcId is 292 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9924_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9924_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9924_sig[] = { 0x4f, 0x2b, 0xea, 0x24, 0xf7, 0xde, 0x57, 0x90, 0x1e, 0x36, 0x5d, 0x4c, 0x33, 0x2d, 0xdb, 0x62, 0xd2, 0x94, 0xd0, 0xc5, 0xfd, 0x58, 0x34, 0x2a, 0x43, 0xbd, 0xd3, 0xba, 0x5c, 0xba, 0xf2, 0x5a, 0xda, 0xdd, 0xb5, 0x94, 0x4b, 0xfe, 0xf9, 0xdc, 0xc8, 0x8f, 0x94, 0xd9, 0x36, 0x50, 0xbb, 0xbb, 0x08, 0x51, 0xb9, 0x7d, 0xdc, 0x43, 0x3e, 0x45, 0x21, 0xc6, 0x00, 0x90, 0x49, 0x70, 0xe2, 0xbf, 0x55, 0xaa, 0x90, 0x1e, 0x1a, 0xaa, 0xaf, 0x06, 0x81, 0x83, 0x77, 0xf8, 0x4a, 0x28, 0xe0, 0x33, 0xa4, 0x9e, 0xeb, 0xc2, 0x1f, 0xfe, 0x9c, 0xff, 0x3c, 0xbe, 0xfd, 0x09, 0x63, 0xfb, 0xed, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9924 = { .name = "ecdsa_secp384r1_sha512_9924", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9924_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9924_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9924_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9925 for ECDSA, tcId is 293 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9925_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9925_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9925_sig[] = { 0x72, 0xa9, 0xba, 0xb3, 0x0f, 0x8d, 0xa1, 0x43, 0x7f, 0x17, 0x11, 0x5c, 0xc3, 0x7b, 0x6e, 0xf8, 0xcf, 0x65, 0x91, 0xed, 0x93, 0x4d, 0x59, 0x66, 0x75, 0xad, 0x7b, 0x00, 0x0c, 0x6a, 0x74, 0xcc, 0xa5, 0xf3, 0x72, 0x10, 0xa6, 0x82, 0x28, 0xa5, 0x80, 0x23, 0x79, 0x0e, 0x37, 0x26, 0xc3, 0x57, 0x12, 0xd6, 0x97, 0xc4, 0xe2, 0x0b, 0x18, 0xf6, 0x3a, 0x3e, 0x01, 0x64, 0xdc, 0xa8, 0xca, 0x4a, 0x5f, 0xa0, 0x05, 0x8a, 0xd7, 0xcd, 0x1c, 0x57, 0x1c, 0xef, 0x35, 0x6e, 0x85, 0xfd, 0x8f, 0x56, 0xab, 0x79, 0x63, 0xd8, 0xab, 0xa8, 0x24, 0xe8, 0xd3, 0x1e, 0xfb, 0x3e, 0x69, 0x0c, 0x27, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9925 = { .name = "ecdsa_secp384r1_sha512_9925", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9925_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9925_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9925_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9926 for ECDSA, tcId is 294 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9926_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9926_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9926_sig[] = { 0x33, 0xb7, 0x10, 0x5f, 0x4c, 0xc9, 0x8a, 0x1e, 0xa2, 0xab, 0xad, 0x45, 0xdb, 0xbe, 0x37, 0x61, 0xb4, 0x61, 0x3d, 0xdd, 0x35, 0x0e, 0x62, 0xda, 0x91, 0x56, 0x0d, 0xa6, 0x94, 0xbe, 0x3e, 0x84, 0xb1, 0x68, 0x4f, 0x9a, 0x8e, 0xe4, 0xb3, 0xf5, 0x56, 0xc6, 0x1d, 0x02, 0xaf, 0x54, 0x44, 0x62, 0x2c, 0x86, 0xe3, 0xa2, 0x16, 0xdc, 0x7d, 0xd7, 0x84, 0xcd, 0xcb, 0xf5, 0x08, 0x4b, 0xdf, 0x6c, 0xdc, 0x1c, 0x7e, 0x67, 0xdb, 0xd6, 0x1f, 0x9f, 0x6e, 0xd1, 0x61, 0xfd, 0xa4, 0xd4, 0xc2, 0x61, 0x67, 0xe5, 0xb1, 0x27, 0x31, 0xcf, 0x2b, 0x0c, 0xf5, 0xd9, 0xa5, 0xf0, 0xb6, 0x12, 0x49, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9926 = { .name = "ecdsa_secp384r1_sha512_9926", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9926_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9926_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9926_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9927 for ECDSA, tcId is 295 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9927_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9927_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9927_sig[] = { 0x25, 0x2e, 0x3b, 0x5b, 0x60, 0xb8, 0xf8, 0x07, 0x48, 0xb8, 0x36, 0x23, 0xe3, 0x00, 0x13, 0x72, 0x31, 0x15, 0xca, 0xbc, 0xc4, 0x87, 0x70, 0xc0, 0xab, 0x6e, 0x7e, 0xe2, 0x9c, 0x42, 0x9e, 0xf1, 0xd9, 0xda, 0x78, 0xdb, 0x3a, 0x9a, 0x85, 0x04, 0x13, 0x3b, 0x9b, 0xd6, 0xfe, 0xce, 0xb8, 0x25, 0x1b, 0xa7, 0x40, 0xf8, 0x79, 0x07, 0xcf, 0x6d, 0x45, 0x00, 0x80, 0xf7, 0x80, 0x7a, 0x50, 0xf2, 0x1c, 0x31, 0xcd, 0x24, 0x5d, 0xd3, 0x0f, 0x95, 0x84, 0x9a, 0x16, 0x8d, 0x63, 0xb3, 0x76, 0x28, 0xe8, 0x04, 0x3c, 0x29, 0x2a, 0xb7, 0xf1, 0x30, 0xa4, 0x46, 0x8e, 0xaf, 0x8b, 0x47, 0xe5, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9927 = { .name = "ecdsa_secp384r1_sha512_9927", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9927_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9927_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9927_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9928 for ECDSA, tcId is 296 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9928_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9928_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9928_sig[] = { 0xb8, 0x69, 0x4d, 0xbf, 0x83, 0x10, 0xcc, 0xd7, 0x83, 0x98, 0xa1, 0xcf, 0xfa, 0x51, 0x49, 0x3f, 0x95, 0xe3, 0x31, 0x7f, 0x23, 0x82, 0x91, 0x77, 0x1c, 0xb3, 0x31, 0xf8, 0xe3, 0xa9, 0x75, 0x37, 0x74, 0xae, 0x3b, 0xe7, 0x8d, 0xf1, 0x6d, 0x22, 0xb3, 0xfb, 0xe9, 0xad, 0x45, 0xbe, 0xd7, 0x93, 0xda, 0xae, 0xad, 0x43, 0x1b, 0xbd, 0xbf, 0x8d, 0x82, 0x36, 0x8f, 0xbb, 0xd2, 0x47, 0x36, 0x95, 0x68, 0x32, 0x06, 0xee, 0x67, 0x09, 0x2c, 0x14, 0x6b, 0x26, 0x6e, 0xd3, 0x2f, 0x56, 0xb3, 0x1c, 0xb0, 0xf0, 0x33, 0xee, 0xbf, 0x6c, 0x75, 0x11, 0x87, 0x30, 0xee, 0xf7, 0xb7, 0xf9, 0x6b, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9928 = { .name = "ecdsa_secp384r1_sha512_9928", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9928_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9928_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9928_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9929 for ECDSA, tcId is 297 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9929_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9929_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9929_sig[] = { 0xd3, 0x7b, 0xa3, 0x9c, 0xd1, 0xb5, 0x28, 0x9e, 0x7a, 0xa3, 0xf3, 0x3a, 0xfe, 0xfa, 0x4d, 0xf6, 0x82, 0x1a, 0x07, 0xd3, 0xe8, 0xee, 0x1c, 0x11, 0xe7, 0xdf, 0x03, 0x6c, 0x37, 0xe3, 0x62, 0x14, 0xbb, 0x90, 0x26, 0x46, 0x33, 0xd4, 0xc3, 0x95, 0x64, 0x4c, 0xd2, 0xcc, 0x25, 0x23, 0x83, 0x3f, 0x8b, 0x0d, 0x58, 0xed, 0x75, 0xaf, 0x59, 0xe2, 0xab, 0xbc, 0xec, 0x92, 0x26, 0x83, 0x6f, 0x17, 0x6b, 0x27, 0xda, 0x2d, 0x9f, 0x30, 0x94, 0xf2, 0xd4, 0xa0, 0x98, 0x98, 0x13, 0x64, 0x36, 0x23, 0x50, 0x25, 0x20, 0x8c, 0xf5, 0x44, 0x42, 0x65, 0xaf, 0x66, 0xfe, 0xd0, 0x5b, 0x3d, 0xc2, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9929 = { .name = "ecdsa_secp384r1_sha512_9929", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9929_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9929_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9929_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9930 for ECDSA, tcId is 298 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9930_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9930_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9930_sig[] = { 0xb4, 0xef, 0x41, 0x90, 0x20, 0xc0, 0xdc, 0xbd, 0xee, 0xee, 0xd7, 0x6c, 0x25, 0x55, 0x60, 0xf1, 0xed, 0x78, 0x3c, 0x0f, 0x9e, 0x7f, 0xce, 0xa4, 0xc0, 0x8a, 0x07, 0x14, 0xb9, 0xd1, 0xf4, 0x91, 0xfd, 0xa9, 0xae, 0x7b, 0xb1, 0xeb, 0x96, 0xd2, 0x94, 0xb0, 0x27, 0x99, 0xf8, 0x28, 0x61, 0x29, 0x8d, 0x98, 0x76, 0x11, 0x06, 0x3d, 0x2f, 0x28, 0xcb, 0x30, 0x9a, 0x56, 0xea, 0xf1, 0xea, 0x65, 0xf2, 0x7d, 0x95, 0xc9, 0x7b, 0x77, 0xa5, 0xf0, 0x37, 0xf2, 0xf9, 0x14, 0xfe, 0xd7, 0x28, 0x26, 0x7a, 0xaf, 0x62, 0xa3, 0x7f, 0x3c, 0x7b, 0x44, 0xfc, 0x4b, 0x15, 0x12, 0x5b, 0x34, 0x98, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9930 = { .name = "ecdsa_secp384r1_sha512_9930", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9930_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9930_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9930_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9931 for ECDSA, tcId is 299 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9931_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9931_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9931_sig[] = { 0xb2, 0xdf, 0x7b, 0x11, 0xcf, 0x60, 0xac, 0x93, 0xc0, 0x78, 0xd1, 0x9f, 0x37, 0xf8, 0x89, 0x71, 0x7a, 0xa5, 0xd9, 0xaf, 0x1d, 0x00, 0xd0, 0x96, 0x4f, 0x9e, 0x9f, 0x52, 0x57, 0xc3, 0xb5, 0x1b, 0x3d, 0x3e, 0x47, 0xca, 0x5b, 0x5a, 0xa7, 0x20, 0x58, 0xed, 0x63, 0xb5, 0x24, 0x64, 0xe5, 0x82, 0xb5, 0x24, 0x96, 0x8e, 0xa8, 0xc5, 0x8d, 0x37, 0x9e, 0x38, 0xf4, 0xcf, 0xa9, 0xda, 0x15, 0x27, 0xa2, 0xac, 0xb2, 0x6d, 0x60, 0x5d, 0x22, 0xf1, 0x73, 0xfc, 0xf1, 0xe8, 0x34, 0xdb, 0x0d, 0x7f, 0x03, 0x1c, 0xb9, 0x24, 0x5c, 0xb6, 0x2b, 0x84, 0x58, 0xff, 0x49, 0x9b, 0x8d, 0x3d, 0xec, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9931 = { .name = "ecdsa_secp384r1_sha512_9931", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9931_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9931_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9931_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9932 for ECDSA, tcId is 300 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9932_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9932_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9932_sig[] = { 0xe0, 0xed, 0xc0, 0x8b, 0x41, 0x22, 0xb7, 0x5e, 0xbb, 0xd1, 0x63, 0x5d, 0x07, 0xf0, 0xbb, 0x55, 0x77, 0x1b, 0xda, 0x15, 0x57, 0x3a, 0x50, 0x81, 0xda, 0x97, 0x19, 0x55, 0xf9, 0xa6, 0x3f, 0x6d, 0xec, 0xdd, 0x49, 0x19, 0x91, 0x1d, 0xbf, 0xea, 0x50, 0x3e, 0xa8, 0xed, 0x1f, 0xaa, 0xd9, 0x3d, 0xca, 0x78, 0x50, 0xc7, 0x4c, 0xe8, 0x78, 0x58, 0x70, 0x56, 0x20, 0x6c, 0x59, 0x0a, 0x10, 0x97, 0xd1, 0x97, 0xa2, 0x09, 0x0c, 0xfe, 0x3e, 0x05, 0x7b, 0xec, 0xfa, 0x27, 0x00, 0xc7, 0xa5, 0x31, 0x62, 0x3a, 0xe7, 0x33, 0x1e, 0x16, 0x3d, 0xef, 0x69, 0x3e, 0x26, 0xa9, 0x7f, 0xeb, 0x54, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9932 = { .name = "ecdsa_secp384r1_sha512_9932", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9932_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9932_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9932_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9933 for ECDSA, tcId is 301 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9933_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9933_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9933_sig[] = { 0x68, 0xf5, 0x55, 0xee, 0xf5, 0xa3, 0x23, 0xa9, 0x29, 0x71, 0x9b, 0xfd, 0x8c, 0xf8, 0x1d, 0x6d, 0x8a, 0x97, 0x7e, 0xcb, 0x35, 0xde, 0xfd, 0x86, 0xfa, 0x54, 0xd8, 0xe5, 0x74, 0x9c, 0x7b, 0x5f, 0x3e, 0x80, 0x08, 0x7f, 0xbd, 0x39, 0xf8, 0xaa, 0x0c, 0xd2, 0x9d, 0x83, 0x10, 0xbd, 0x65, 0x78, 0xe2, 0xc2, 0x31, 0x4a, 0x50, 0xfc, 0x0a, 0xd7, 0x8c, 0x1e, 0xc0, 0x2e, 0xa7, 0x7e, 0xe2, 0xe1, 0x3d, 0xce, 0xf1, 0x46, 0x09, 0x57, 0xc6, 0xb5, 0x73, 0xf7, 0x21, 0xd7, 0x2c, 0x20, 0x9a, 0xc5, 0xfb, 0x52, 0x9a, 0xb2, 0x03, 0x97, 0x23, 0x4c, 0x59, 0xed, 0x44, 0xf6, 0x04, 0x00, 0x97, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9933 = { .name = "ecdsa_secp384r1_sha512_9933", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9933_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9933_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9933_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9934 for ECDSA, tcId is 302 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9934_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9934_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9934_sig[] = { 0x9e, 0x33, 0x0e, 0x29, 0xf1, 0x81, 0x23, 0x81, 0x3e, 0x83, 0xb9, 0xc6, 0xab, 0xd6, 0x8d, 0xe9, 0x6a, 0x57, 0xf9, 0x7a, 0x40, 0x05, 0xb8, 0x8d, 0x5b, 0x47, 0x0a, 0x67, 0xa5, 0x41, 0xb6, 0xd3, 0xaf, 0x12, 0x12, 0x4c, 0xf8, 0x65, 0x8b, 0x75, 0x16, 0x71, 0xc6, 0x69, 0x8f, 0xb8, 0xb0, 0x21, 0xd2, 0x10, 0xfb, 0xa9, 0xbd, 0xe6, 0xef, 0x07, 0x7c, 0xa0, 0x6b, 0x75, 0xe1, 0xcf, 0x7c, 0xe8, 0xdd, 0x70, 0xb0, 0x8e, 0x9d, 0xd4, 0x2d, 0x81, 0xa2, 0x15, 0xef, 0x92, 0x72, 0xf1, 0x77, 0x9a, 0xe3, 0xe9, 0xf0, 0xde, 0xc5, 0x10, 0x57, 0x1d, 0x87, 0x23, 0x7c, 0xc6, 0xbf, 0x32, 0x03, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9934 = { .name = "ecdsa_secp384r1_sha512_9934", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9934_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9934_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9934_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9935 for ECDSA, tcId is 303 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9935_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9935_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9935_sig[] = { 0x48, 0x31, 0x92, 0x05, 0x6f, 0x75, 0x3f, 0x64, 0xdd, 0xf0, 0xf2, 0x10, 0x72, 0xb7, 0x3d, 0x68, 0x89, 0x3e, 0x6f, 0xa5, 0x43, 0x2c, 0x98, 0x1c, 0x7a, 0x19, 0x55, 0xb6, 0x59, 0x2a, 0x60, 0x45, 0xa5, 0xc1, 0xc5, 0x8c, 0x38, 0x3e, 0x70, 0x02, 0x3c, 0x34, 0xe0, 0x9b, 0x79, 0x64, 0xec, 0x8d, 0x94, 0xb0, 0x05, 0xd5, 0xf9, 0x8c, 0x4f, 0xd2, 0xad, 0x40, 0xff, 0x8e, 0x03, 0xa8, 0x59, 0x9f, 0x45, 0xe2, 0x06, 0x08, 0x21, 0x12, 0xf8, 0x34, 0xdf, 0x1d, 0x48, 0x50, 0x2d, 0x2a, 0xc6, 0x90, 0xcd, 0x32, 0x04, 0xf0, 0x07, 0x89, 0x13, 0x79, 0x4c, 0x9c, 0x39, 0x07, 0x7a, 0xd6, 0xc5, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9935 = { .name = "ecdsa_secp384r1_sha512_9935", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9935_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9935_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9935_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9936 for ECDSA, tcId is 304 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9936_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9936_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9936_sig[] = { 0x2b, 0x7e, 0xc1, 0x4f, 0xd7, 0x7c, 0x4b, 0x33, 0x23, 0x0d, 0xd0, 0xa4, 0xe2, 0x71, 0x0f, 0xbd, 0x30, 0x7e, 0x46, 0x9b, 0xae, 0xc5, 0x4b, 0x6f, 0x25, 0xda, 0xac, 0x7e, 0x19, 0x6b, 0x7b, 0x4b, 0x5d, 0xf2, 0x51, 0xcd, 0xdd, 0xba, 0x7b, 0xdc, 0x98, 0x36, 0xca, 0x13, 0x19, 0xbb, 0x90, 0x0b, 0x59, 0x00, 0x36, 0x19, 0x25, 0x86, 0xff, 0x66, 0xae, 0x9a, 0x28, 0x81, 0x99, 0xdb, 0x9d, 0x02, 0xbb, 0xd5, 0xb7, 0x03, 0xf8, 0xc3, 0x29, 0xa9, 0xa1, 0xf9, 0x86, 0x00, 0x1b, 0x19, 0x0f, 0x20, 0xae, 0x96, 0xfe, 0x8b, 0x63, 0x68, 0x1e, 0xda, 0x17, 0xba, 0xc2, 0xa5, 0x7f, 0xd4, 0x0f, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9936 = { .name = "ecdsa_secp384r1_sha512_9936", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9936_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9936_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9936_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9937 for ECDSA, tcId is 305 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9937_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9937_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9937_sig[] = { 0x26, 0x11, 0x48, 0x4e, 0x7f, 0xf4, 0x7d, 0xfa, 0xec, 0xe4, 0xaa, 0x88, 0x3d, 0xd7, 0x3f, 0x89, 0x18, 0x69, 0xe2, 0x78, 0x6f, 0x20, 0xc8, 0x7b, 0x98, 0x00, 0x55, 0xdd, 0xd7, 0x92, 0x07, 0x0c, 0x0d, 0x0d, 0x9a, 0x37, 0x08, 0x78, 0x12, 0x6b, 0xab, 0x89, 0xa4, 0x02, 0xb9, 0xea, 0x17, 0x3c, 0x4e, 0x00, 0x06, 0xb8, 0xaa, 0xbe, 0x9d, 0x6a, 0x3c, 0x30, 0x18, 0xd9, 0xc8, 0x7e, 0xae, 0x7f, 0x46, 0x46, 0x11, 0x87, 0xd3, 0xc2, 0x0b, 0x33, 0xe9, 0x75, 0xc8, 0x50, 0x59, 0x9e, 0xc1, 0xcb, 0x52, 0xc7, 0x6e, 0x1f, 0x50, 0x7e, 0x43, 0x9a, 0xfc, 0x43, 0xf9, 0xf6, 0x82, 0xe7, 0xa8, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9937 = { .name = "ecdsa_secp384r1_sha512_9937", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9937_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9937_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9937_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9938 for ECDSA, tcId is 306 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9938_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9938_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9938_sig[] = { 0x2d, 0x50, 0x4e, 0x38, 0xcd, 0xb1, 0xbb, 0x80, 0xbf, 0x29, 0xe0, 0x7a, 0xfb, 0xc6, 0x6a, 0xea, 0x73, 0x2a, 0xcc, 0xc8, 0x5a, 0x72, 0x20, 0x11, 0x06, 0x99, 0x88, 0xf2, 0x1e, 0xef, 0x68, 0x50, 0x84, 0xf5, 0x5e, 0xfa, 0x30, 0xbf, 0xe3, 0x24, 0x27, 0xeb, 0x86, 0x36, 0xdb, 0x91, 0x71, 0xb4, 0x88, 0x3e, 0x3d, 0x80, 0xd7, 0x66, 0xcc, 0xb2, 0x9e, 0x73, 0xa9, 0xe9, 0x29, 0x11, 0x19, 0x30, 0xda, 0x83, 0x53, 0xec, 0x69, 0x76, 0x97, 0x85, 0x63, 0x3f, 0xe1, 0xb4, 0x50, 0x5f, 0x90, 0x51, 0xe7, 0x8d, 0x50, 0xc7, 0x9a, 0x6b, 0x7c, 0x88, 0x5c, 0x10, 0xb1, 0x60, 0xbb, 0xb5, 0x7f, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9938 = { .name = "ecdsa_secp384r1_sha512_9938", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9938_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9938_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9938_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9939 for ECDSA, tcId is 307 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9939_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9939_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9939_sig[] = { 0x28, 0xdc, 0x1b, 0x63, 0xdc, 0x61, 0xec, 0xde, 0x75, 0x4f, 0xf4, 0x91, 0x37, 0x80, 0xe4, 0x86, 0x33, 0x91, 0x03, 0x17, 0x8e, 0x27, 0xd7, 0x61, 0x98, 0x7d, 0xac, 0x0b, 0x03, 0xc9, 0xbd, 0xf4, 0xa4, 0xa9, 0x6b, 0x86, 0x80, 0xfa, 0x07, 0xfc, 0x47, 0xae, 0x17, 0x5b, 0x78, 0x0e, 0x89, 0x6e, 0x5a, 0x98, 0x98, 0xee, 0xdf, 0x87, 0x81, 0xb9, 0xaf, 0xeb, 0x50, 0x6e, 0x02, 0x72, 0xa1, 0x2c, 0x0c, 0x79, 0xbb, 0x89, 0x3b, 0x8a, 0x58, 0x93, 0xc5, 0xa0, 0xa1, 0xbf, 0x43, 0x24, 0xd4, 0x6d, 0xde, 0x71, 0xa2, 0x45, 0xbe, 0x2f, 0xd8, 0xaa, 0x29, 0x75, 0xfd, 0xeb, 0x40, 0xad, 0xf8, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9939 = { .name = "ecdsa_secp384r1_sha512_9939", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9939_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9939_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9939_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9940 for ECDSA, tcId is 308 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9940_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9940_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9940_sig[] = { 0x4c, 0x97, 0x8a, 0x47, 0xb9, 0xe9, 0x44, 0x93, 0x37, 0x17, 0x8a, 0xa6, 0x41, 0x3a, 0x79, 0x4c, 0x4c, 0x9b, 0xf1, 0x82, 0xa4, 0x20, 0x62, 0x64, 0x6a, 0x46, 0x9b, 0x1d, 0x2c, 0x2c, 0x95, 0x62, 0x1e, 0x81, 0x8e, 0x66, 0x13, 0x52, 0xb0, 0x7e, 0x63, 0x25, 0x4b, 0x69, 0x54, 0xe1, 0x45, 0x98, 0x69, 0x97, 0x34, 0x5f, 0x05, 0xcf, 0xc0, 0x5c, 0x0f, 0xd4, 0xd1, 0xdd, 0x13, 0x3e, 0x55, 0x5e, 0x5e, 0x50, 0x02, 0xe0, 0x92, 0x9a, 0x59, 0xf6, 0x0b, 0xbf, 0xfc, 0x35, 0x42, 0x34, 0x78, 0x3e, 0xbf, 0x4f, 0xe5, 0xdb, 0x10, 0xa8, 0x70, 0x95, 0x2c, 0xab, 0xd4, 0x53, 0x63, 0x5c, 0x10, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9940 = { .name = "ecdsa_secp384r1_sha512_9940", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9940_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9940_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9940_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9941 for ECDSA, tcId is 309 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9941_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9941_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9941_sig[] = { 0x36, 0xd8, 0xe2, 0xcf, 0xc8, 0x0d, 0x04, 0x36, 0xe1, 0xfa, 0xd3, 0x70, 0x2e, 0xc0, 0x5a, 0xa1, 0x38, 0x61, 0x8c, 0xdb, 0x74, 0x56, 0x52, 0xcb, 0x85, 0xb0, 0xb1, 0x21, 0xee, 0x10, 0x7b, 0xdf, 0x1a, 0xde, 0x04, 0x64, 0xdc, 0x0c, 0x6b, 0xd1, 0x68, 0x75, 0xbc, 0xc3, 0x64, 0x04, 0x4d, 0x8c, 0x89, 0x8b, 0x87, 0x75, 0xc9, 0xb3, 0x9a, 0xa9, 0xfd, 0x13, 0x0b, 0x5a, 0xb7, 0x7e, 0x6c, 0x46, 0x2c, 0xed, 0x61, 0x14, 0x89, 0x80, 0x45, 0xb7, 0xf6, 0x06, 0x14, 0x22, 0x77, 0xd9, 0xeb, 0x2a, 0xa8, 0x97, 0xf2, 0x4c, 0x9b, 0xa4, 0xc8, 0xd1, 0x12, 0x11, 0x1d, 0xe0, 0x4d, 0xc5, 0x7c, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9941 = { .name = "ecdsa_secp384r1_sha512_9941", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9941_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9941_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9941_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9942 for ECDSA, tcId is 310 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9942_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9942_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9942_sig[] = { 0xce, 0x2b, 0xdc, 0xf9, 0x24, 0xca, 0xaa, 0x81, 0xe7, 0x9b, 0xd7, 0xdd, 0x98, 0x3d, 0xfe, 0xee, 0xe9, 0x16, 0x52, 0xe4, 0xea, 0x6e, 0xdd, 0x07, 0x7f, 0x8b, 0x56, 0xad, 0xa4, 0x95, 0x37, 0x33, 0xa2, 0x2d, 0xd3, 0xa6, 0x33, 0x64, 0x46, 0xa6, 0x48, 0xae, 0xc4, 0xff, 0xc3, 0x67, 0xcb, 0x3e, 0x08, 0xeb, 0x09, 0xfa, 0xee, 0xf4, 0xb0, 0xe5, 0xc1, 0x26, 0x2e, 0xda, 0x21, 0x27, 0x46, 0x4f, 0x7e, 0x29, 0x81, 0xea, 0x17, 0x36, 0xe8, 0x0a, 0xfc, 0x7c, 0x62, 0x24, 0x61, 0xc3, 0xd2, 0x6f, 0xe0, 0x86, 0x94, 0xfb, 0x49, 0x14, 0xce, 0x9d, 0xbb, 0xa8, 0x37, 0x04, 0xe3, 0x07, 0x7b, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9942 = { .name = "ecdsa_secp384r1_sha512_9942", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9942_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9942_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9942_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9943 for ECDSA, tcId is 311 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9943_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9943_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9943_sig[] = { 0xe3, 0xa1, 0xb4, 0xb0, 0x56, 0x7d, 0x6c, 0x66, 0x4d, 0xec, 0x02, 0xf3, 0xee, 0x9c, 0xd8, 0x58, 0x11, 0x29, 0x04, 0x69, 0x44, 0xb0, 0xe6, 0x65, 0x0f, 0x6e, 0x6a, 0x41, 0xb5, 0xd9, 0xd4, 0xbf, 0x79, 0xd7, 0xa6, 0xfd, 0x54, 0xea, 0x5a, 0x21, 0x84, 0x92, 0xcf, 0xa1, 0xbb, 0x03, 0xca, 0x07, 0x98, 0x62, 0x06, 0x92, 0x5c, 0xbf, 0xa1, 0x86, 0xc7, 0xd8, 0x8f, 0x71, 0x00, 0xd8, 0x7d, 0xd3, 0xb2, 0xd0, 0x3b, 0x87, 0x89, 0x30, 0x9a, 0x72, 0x2d, 0x58, 0x2f, 0x11, 0x9e, 0xef, 0x48, 0xcd, 0x0e, 0xa5, 0x46, 0x09, 0x17, 0xcf, 0x27, 0x24, 0x6c, 0x31, 0xf9, 0x0e, 0x28, 0x54, 0x04, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9943 = { .name = "ecdsa_secp384r1_sha512_9943", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9943_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9943_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9943_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9944 for ECDSA, tcId is 312 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9944_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9944_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9944_sig[] = { 0x95, 0xa5, 0xe2, 0x99, 0x40, 0xe4, 0x20, 0x99, 0xc4, 0x63, 0x7f, 0x4a, 0xe5, 0x1e, 0x7d, 0x1e, 0xc0, 0x2b, 0xe0, 0xdc, 0xfb, 0x0b, 0x62, 0x70, 0x30, 0x98, 0x4c, 0x35, 0xe4, 0x77, 0xe8, 0x0c, 0xc5, 0x7e, 0x7e, 0xef, 0x97, 0x0e, 0x38, 0x4d, 0xee, 0x16, 0xa9, 0xb9, 0xfc, 0x8f, 0x2b, 0xf2, 0x0c, 0xa1, 0x66, 0xc3, 0x90, 0x33, 0x96, 0x53, 0xcd, 0xe8, 0x4e, 0x79, 0xa8, 0x7e, 0x5c, 0xeb, 0x4f, 0x52, 0xc1, 0xa5, 0x15, 0xa5, 0x87, 0x85, 0x42, 0xfd, 0x82, 0x70, 0x5b, 0x99, 0x83, 0x97, 0x6f, 0xd3, 0x1a, 0x41, 0x23, 0xb5, 0xd0, 0xbd, 0xe9, 0x5a, 0x08, 0x18, 0x11, 0x4c, 0xf4, 0x62, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9944 = { .name = "ecdsa_secp384r1_sha512_9944", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9944_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9944_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9944_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9945 for ECDSA, tcId is 313 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9945_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9945_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9945_sig[] = { 0xc3, 0x0c, 0x49, 0xd0, 0xba, 0x13, 0x19, 0x44, 0xe2, 0x07, 0x5d, 0xaa, 0xcb, 0x12, 0x59, 0xd5, 0x58, 0x0a, 0x71, 0x2a, 0x08, 0xf7, 0x3d, 0x88, 0x9c, 0x4d, 0x3d, 0x48, 0x4d, 0x73, 0xdd, 0x97, 0x19, 0xa4, 0x39, 0xa9, 0x86, 0xf4, 0x8b, 0x07, 0x2c, 0x45, 0x95, 0xc5, 0x07, 0xa0, 0x10, 0x83, 0xa5, 0x59, 0x5c, 0x06, 0x91, 0xbc, 0x2d, 0x21, 0x5f, 0x98, 0x1f, 0xab, 0x51, 0x3e, 0x3a, 0x88, 0xa4, 0x52, 0xf2, 0xa1, 0x43, 0x33, 0x67, 0xb9, 0x9b, 0x02, 0xb6, 0xef, 0xe5, 0x07, 0x51, 0x9a, 0xfe, 0xdb, 0xe1, 0xad, 0x03, 0x37, 0x89, 0x99, 0x44, 0xe2, 0x9c, 0x9c, 0xcc, 0xcb, 0x24, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9945 = { .name = "ecdsa_secp384r1_sha512_9945", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9945_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9945_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9945_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9946 for ECDSA, tcId is 314 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9946_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9946_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9946_sig[] = { 0x9f, 0xd0, 0x58, 0x5f, 0x87, 0x40, 0x66, 0x98, 0x85, 0xc1, 0x62, 0x84, 0x2b, 0xba, 0x25, 0x32, 0x3e, 0xa1, 0x2b, 0x1d, 0x05, 0xe5, 0x24, 0xbb, 0x94, 0x5c, 0xad, 0x4e, 0x31, 0x53, 0x87, 0x42, 0xed, 0xa5, 0x12, 0x8f, 0x46, 0x7b, 0x3c, 0x56, 0x2c, 0x5f, 0x0a, 0x99, 0x01, 0x9d, 0x34, 0x06, 0x43, 0xac, 0xfa, 0xdd, 0x03, 0x91, 0x5c, 0x23, 0x50, 0xe1, 0xd8, 0xe5, 0x14, 0xc4, 0x7e, 0xb3, 0x6f, 0x3c, 0x34, 0x56, 0x16, 0x9c, 0x9a, 0x56, 0x2a, 0x62, 0x62, 0xc1, 0xc2, 0xd7, 0xd3, 0x33, 0x78, 0xbf, 0x9f, 0xec, 0x7f, 0x22, 0x02, 0x39, 0xd5, 0xc6, 0x1e, 0x06, 0x41, 0x44, 0x14, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9946 = { .name = "ecdsa_secp384r1_sha512_9946", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9946_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9946_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9946_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9947 for ECDSA, tcId is 315 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9947_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9947_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9947_sig[] = { 0x4e, 0xca, 0xc0, 0xcd, 0xbf, 0x66, 0x5c, 0x58, 0x4f, 0x8a, 0x40, 0x61, 0x4c, 0xd5, 0x5d, 0x04, 0x27, 0x06, 0xc5, 0x48, 0x95, 0xb1, 0xde, 0x02, 0x98, 0x4f, 0xe3, 0x09, 0x12, 0x25, 0x66, 0xc9, 0x59, 0xa4, 0xdd, 0x33, 0x15, 0xe7, 0xd3, 0xf0, 0x89, 0x87, 0x9f, 0x8f, 0x45, 0x82, 0x13, 0x36, 0x09, 0x18, 0x7d, 0xa6, 0x58, 0x7a, 0x3d, 0xe9, 0x0e, 0xba, 0x41, 0xf4, 0xe6, 0x51, 0x0e, 0x71, 0x1f, 0x44, 0x67, 0xf3, 0x12, 0x29, 0x71, 0x56, 0x6e, 0xcc, 0x39, 0xa4, 0xbd, 0x53, 0xe9, 0x5b, 0x8a, 0x19, 0x38, 0x0e, 0x20, 0xec, 0x2a, 0x7c, 0x75, 0x2d, 0x29, 0xde, 0x54, 0xfd, 0x2e, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9947 = { .name = "ecdsa_secp384r1_sha512_9947", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9947_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9947_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9947_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9948 for ECDSA, tcId is 316 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9948_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9948_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9948_sig[] = { 0x37, 0xa1, 0xba, 0x49, 0xf1, 0x1e, 0x97, 0xad, 0x0e, 0xc4, 0x7e, 0x68, 0x7c, 0x6c, 0x6e, 0x94, 0xf7, 0x94, 0xf8, 0x74, 0x72, 0x0c, 0x0d, 0xd2, 0xda, 0x50, 0x14, 0x37, 0xb5, 0x0e, 0x5b, 0x00, 0xfb, 0x6e, 0xd3, 0x3a, 0xdf, 0x7c, 0xf1, 0xf9, 0xc8, 0x70, 0xfd, 0x3d, 0x37, 0x16, 0x5b, 0xf7, 0xb3, 0xad, 0x08, 0xc9, 0x88, 0x6b, 0x4c, 0xa1, 0x59, 0x3a, 0x68, 0x93, 0x8b, 0x67, 0x14, 0x2c, 0x65, 0xed, 0x4d, 0xa1, 0x71, 0x4c, 0x22, 0x20, 0x4c, 0xba, 0x71, 0x30, 0x0c, 0x09, 0x4c, 0xcd, 0xbd, 0xf8, 0x4c, 0x38, 0xa3, 0xf6, 0xd8, 0x96, 0xdb, 0x72, 0xed, 0x50, 0x51, 0xa1, 0x92, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9948 = { .name = "ecdsa_secp384r1_sha512_9948", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9948_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9948_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9948_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9949 for ECDSA, tcId is 317 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9949_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9949_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9949_sig[] = { 0xa0, 0xab, 0xe8, 0x96, 0xd2, 0xf3, 0x02, 0x07, 0xbc, 0x9b, 0x21, 0xe7, 0x54, 0x00, 0xee, 0xdb, 0x88, 0xd3, 0x49, 0x8d, 0x49, 0x80, 0x6f, 0x41, 0xaa, 0x8e, 0x7f, 0x9b, 0xd8, 0x15, 0xa3, 0x33, 0x82, 0xf2, 0x78, 0xdb, 0x39, 0x71, 0x0c, 0x2c, 0xb0, 0x97, 0x93, 0x77, 0x90, 0xd0, 0x23, 0x6c, 0x9a, 0x29, 0xad, 0xed, 0x30, 0xe8, 0xce, 0x47, 0x90, 0x75, 0x62, 0x08, 0xd1, 0x20, 0x44, 0xe1, 0x8c, 0x34, 0x16, 0x86, 0x08, 0x02, 0x60, 0x00, 0xa8, 0x83, 0x04, 0x4d, 0xd0, 0xd9, 0x11, 0x09, 0xd8, 0x66, 0xb4, 0x22, 0xa0, 0x54, 0xc2, 0x32, 0x81, 0x0d, 0xdf, 0xbb, 0x2a, 0xe4, 0x40, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9949 = { .name = "ecdsa_secp384r1_sha512_9949", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9949_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9949_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9949_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9950 for ECDSA, tcId is 318 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9950_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9950_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9950_sig[] = { 0xb0, 0x24, 0xfc, 0x34, 0x79, 0xd0, 0xdd, 0xde, 0x1c, 0x9e, 0x06, 0xb6, 0x3c, 0x9b, 0xfb, 0x76, 0xa0, 0x0d, 0x0f, 0x2f, 0x55, 0x52, 0x20, 0xcb, 0x9a, 0x13, 0x11, 0xc2, 0xde, 0xec, 0x32, 0xeb, 0x3d, 0x6d, 0x2b, 0x64, 0x8f, 0x5e, 0x8c, 0x10, 0x4d, 0x5f, 0x88, 0x93, 0x17, 0x54, 0xc0, 0xc2, 0x76, 0x79, 0x50, 0xcc, 0x14, 0x96, 0x97, 0xed, 0xba, 0xe8, 0x36, 0xf9, 0x77, 0xbd, 0x38, 0xd8, 0x9d, 0x14, 0x1f, 0xf9, 0x77, 0x41, 0x47, 0xb1, 0x3d, 0xdd, 0x52, 0x5b, 0x7a, 0x3f, 0x3a, 0x14, 0xa8, 0x0d, 0x99, 0x79, 0x85, 0x6f, 0x65, 0xb9, 0x9a, 0x6f, 0xaf, 0xf1, 0x73, 0xb5, 0xd6, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9950 = { .name = "ecdsa_secp384r1_sha512_9950", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9950_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9950_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9950_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9951 for ECDSA, tcId is 319 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9951_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9951_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9951_sig[] = { 0x2a, 0x0a, 0xe7, 0xb5, 0xd4, 0x26, 0x45, 0x05, 0x12, 0x12, 0xca, 0xfb, 0x73, 0x39, 0xb9, 0xc5, 0x28, 0x3d, 0x1f, 0xd9, 0x88, 0x1d, 0x77, 0xad, 0x5c, 0x18, 0xd2, 0x5e, 0xe1, 0x09, 0x07, 0xb7, 0x80, 0x97, 0x40, 0xa5, 0x10, 0xe6, 0x5a, 0xec, 0xd6, 0x1b, 0x53, 0xba, 0x3a, 0x0f, 0x66, 0x0a, 0x4c, 0x04, 0x57, 0xdd, 0x19, 0xef, 0x6e, 0x4d, 0x6a, 0xe6, 0x5f, 0x45, 0x41, 0x7d, 0xdf, 0x1a, 0x58, 0xc0, 0x76, 0x63, 0xa8, 0x67, 0x37, 0xd2, 0x71, 0xbe, 0xcf, 0xa3, 0xea, 0x57, 0x24, 0xb6, 0x01, 0x8f, 0x1f, 0xa9, 0xe6, 0x4f, 0xd0, 0x86, 0x01, 0xa7, 0xdb, 0xd3, 0x95, 0x77, 0x61, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9951 = { .name = "ecdsa_secp384r1_sha512_9951", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9951_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9951_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9951_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9952 for ECDSA, tcId is 320 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9952_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9952_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp384r1_sha512_9952_sig[] = { 0x0c, 0x16, 0x57, 0x32, 0x0f, 0xac, 0xa6, 0x66, 0x8c, 0x6e, 0x9f, 0x06, 0xf6, 0x57, 0xa3, 0x10, 0xb0, 0x19, 0x39, 0xa7, 0xd9, 0x64, 0x0f, 0xa0, 0x42, 0x98, 0x72, 0xfe, 0x28, 0xbd, 0x16, 0x67, 0x68, 0x8b, 0xc1, 0x62, 0x22, 0x12, 0x85, 0xec, 0xfb, 0x14, 0xe8, 0xd8, 0x06, 0x27, 0x45, 0x0a, 0xf5, 0x27, 0x2a, 0xa0, 0x8c, 0x32, 0x1a, 0xa4, 0xf7, 0xe5, 0x20, 0x82, 0x5c, 0xc7, 0x20, 0xf6, 0x51, 0x1d, 0x63, 0x55, 0x98, 0xc6, 0x48, 0xd4, 0xd5, 0x14, 0x66, 0x9b, 0x3a, 0xd8, 0x03, 0xad, 0x25, 0x9c, 0x79, 0x9e, 0x19, 0x5a, 0x09, 0x59, 0x82, 0xf6, 0x6c, 0x17, 0x64, 0x35, 0xbe, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9952 = { .name = "ecdsa_secp384r1_sha512_9952", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9952_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9952_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9952_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9953 for ECDSA, tcId is 321 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9953_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9953_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9953_sig[] = { 0xd8, 0x21, 0x79, 0x8a, 0x7a, 0x72, 0xbf, 0xb4, 0x83, 0xe6, 0xe9, 0x84, 0x0e, 0x8d, 0x92, 0x12, 0x00, 0xef, 0x19, 0x76, 0xb7, 0xe5, 0x14, 0x03, 0x6b, 0xf9, 0x13, 0x3a, 0x01, 0x74, 0x0c, 0xe3, 0x97, 0xc7, 0x3f, 0xa0, 0x46, 0x05, 0x44, 0x38, 0xc5, 0x80, 0x6c, 0x29, 0x4a, 0x02, 0xc6, 0x80, 0x8c, 0x5d, 0x12, 0x88, 0x7f, 0xcd, 0x94, 0x5b, 0xa1, 0x23, 0xfc, 0x5a, 0x56, 0x05, 0xd1, 0x3a, 0x5a, 0x3e, 0x7e, 0x78, 0x1a, 0xd6, 0x9c, 0x61, 0x03, 0x57, 0x7e, 0xe9, 0xdc, 0x47, 0xad, 0xc3, 0xe3, 0x9a, 0x21, 0x08, 0x0d, 0xd5, 0x03, 0x04, 0xb5, 0x9e, 0x5f, 0x5c, 0xf3, 0xf5, 0xa3, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9953 = { .name = "ecdsa_secp384r1_sha512_9953", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9953_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9953_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9953_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9954 for ECDSA, tcId is 322 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9954_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9954_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9954_sig[] = { 0xc9, 0x96, 0xbd, 0x6f, 0xa6, 0x3c, 0x95, 0x86, 0x77, 0x9f, 0x27, 0x52, 0x3d, 0x55, 0x83, 0x13, 0x5a, 0x59, 0x48, 0x08, 0x51, 0x4f, 0x98, 0xcc, 0x44, 0xca, 0xc1, 0xfa, 0x5c, 0xfa, 0x03, 0xc7, 0x8c, 0x7f, 0x12, 0xf7, 0x46, 0xc6, 0xbd, 0x20, 0x60, 0x8e, 0xcb, 0xe3, 0x06, 0x0e, 0xb0, 0x68, 0x27, 0xd4, 0x0a, 0x11, 0xd5, 0x23, 0x73, 0xdf, 0x30, 0x54, 0xa2, 0x8b, 0x0a, 0xb9, 0x8a, 0x91, 0xad, 0x68, 0x9d, 0x12, 0x11, 0xd6, 0x99, 0x19, 0xfc, 0x04, 0xca, 0xdc, 0x22, 0xff, 0x03, 0x67, 0xd3, 0xef, 0x94, 0x33, 0x01, 0x2a, 0x76, 0x0c, 0x1d, 0x1d, 0xf3, 0x71, 0x5c, 0x8d, 0x5c, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9954 = { .name = "ecdsa_secp384r1_sha512_9954", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9954_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9954_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9954_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9955 for ECDSA, tcId is 323 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9955_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9955_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9955_sig[] = { 0x42, 0xdd, 0x6c, 0x8d, 0x99, 0x59, 0x38, 0x70, 0x1a, 0x53, 0x89, 0x09, 0xed, 0x6a, 0xea, 0xe0, 0xba, 0x50, 0xc9, 0x95, 0x13, 0x8d, 0xe8, 0x4e, 0x19, 0x5b, 0xbb, 0x9c, 0x56, 0x18, 0x0e, 0x10, 0x8d, 0x4a, 0x62, 0x74, 0x54, 0x8c, 0x7b, 0xe6, 0xe1, 0x21, 0xc4, 0xd2, 0x18, 0xd2, 0xd4, 0xa0, 0xfa, 0xe8, 0x66, 0x8b, 0xb2, 0x00, 0x3f, 0x0d, 0xa1, 0xdc, 0x90, 0xbe, 0xc6, 0x7d, 0x35, 0x4c, 0xcb, 0xb8, 0x99, 0x43, 0x25, 0x99, 0xc3, 0x19, 0x8b, 0x96, 0xc5, 0xca, 0x4b, 0xd2, 0x32, 0x4c, 0x46, 0x99, 0x8f, 0x4f, 0xb7, 0x6a, 0x12, 0x34, 0x67, 0xcf, 0x24, 0x57, 0x0b, 0x1b, 0x69, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9955 = { .name = "ecdsa_secp384r1_sha512_9955", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9955_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9955_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9955_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9956 for ECDSA, tcId is 324 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9956_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9956_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9956_sig[] = { 0x06, 0x1f, 0x18, 0x56, 0x33, 0x29, 0x1b, 0x9a, 0x76, 0x8e, 0x15, 0xec, 0x03, 0xa2, 0xb7, 0xc3, 0x56, 0xc7, 0x57, 0xb0, 0x23, 0xb6, 0x1e, 0x31, 0x3f, 0xdf, 0x0c, 0x53, 0x49, 0xd1, 0x28, 0xa7, 0x86, 0x68, 0xd2, 0x0b, 0x25, 0x61, 0x70, 0x9b, 0x3b, 0xd8, 0x45, 0x1b, 0x92, 0x0f, 0x12, 0xab, 0x8f, 0xc5, 0xed, 0xc6, 0x64, 0x10, 0xdb, 0xf2, 0x0a, 0x7c, 0xbc, 0x34, 0x98, 0xe4, 0x05, 0x76, 0x17, 0x56, 0xed, 0x39, 0x86, 0x68, 0x56, 0xe7, 0x42, 0x56, 0xac, 0x1f, 0x25, 0x5f, 0x62, 0xb0, 0xed, 0xff, 0x51, 0x97, 0x62, 0xec, 0xdb, 0xbc, 0x83, 0x95, 0xd1, 0x47, 0x15, 0xc4, 0x38, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9956 = { .name = "ecdsa_secp384r1_sha512_9956", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9956_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9956_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9956_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9957 for ECDSA, tcId is 325 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9957_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9957_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9957_sig[] = { 0x69, 0x32, 0x6e, 0x04, 0x7c, 0x62, 0xe8, 0xba, 0xc5, 0xc0, 0x90, 0xb7, 0x6b, 0xf7, 0x3a, 0xe6, 0x52, 0xfa, 0x9a, 0x6a, 0xec, 0xfa, 0x1c, 0xcb, 0x87, 0x02, 0xf4, 0x19, 0x09, 0x4c, 0x97, 0x27, 0x51, 0x12, 0x64, 0xfb, 0x1a, 0xee, 0xc0, 0x0e, 0x42, 0x5c, 0x7a, 0x0d, 0x74, 0x67, 0x93, 0xd3, 0x9d, 0xbd, 0xdd, 0x22, 0xdb, 0x4a, 0x77, 0xdb, 0xe1, 0x61, 0x14, 0xbc, 0x6f, 0xbb, 0x98, 0x1a, 0xec, 0xba, 0x7e, 0x82, 0xa9, 0xcb, 0xc1, 0xed, 0x38, 0x5e, 0x28, 0xa5, 0x17, 0x93, 0x56, 0x17, 0x70, 0xfb, 0x3f, 0x96, 0x96, 0x09, 0x0e, 0xfc, 0xa2, 0x4f, 0x26, 0x8d, 0x87, 0x88, 0xf2, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9957 = { .name = "ecdsa_secp384r1_sha512_9957", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9957_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9957_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9957_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9958 for ECDSA, tcId is 326 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9958_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9958_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9958_sig[] = { 0x4c, 0xa1, 0xdf, 0x89, 0xb2, 0x3e, 0xd5, 0xef, 0xcd, 0xf6, 0x01, 0xd2, 0x95, 0xc4, 0x5e, 0x40, 0x2d, 0x78, 0x6a, 0x14, 0xd6, 0x2f, 0x72, 0x61, 0x10, 0x4e, 0x4c, 0xb0, 0x5b, 0x8c, 0xae, 0x17, 0xab, 0xb0, 0x95, 0x79, 0x9e, 0x71, 0x17, 0x38, 0x41, 0x74, 0x96, 0x15, 0xc8, 0x29, 0x41, 0x1b, 0x1b, 0xb7, 0x77, 0xe0, 0xa6, 0xfe, 0xe8, 0xa2, 0x33, 0x7a, 0x43, 0x6a, 0x6f, 0xa2, 0x6a, 0x48, 0x7d, 0xe4, 0x64, 0x0f, 0xf9, 0x7d, 0x57, 0xb4, 0x4b, 0x55, 0x30, 0x59, 0x89, 0x80, 0x38, 0x63, 0xd7, 0x48, 0xc7, 0x30, 0x2f, 0x2d, 0xfd, 0xe8, 0xb8, 0xce, 0xdd, 0x69, 0xbb, 0x60, 0x2e, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9958 = { .name = "ecdsa_secp384r1_sha512_9958", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9958_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9958_msg, .msglen = 8, .sig = ecdsa_secp384r1_sha512_9958_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9959 for ECDSA, tcId is 327 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9959_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9959_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9959_sig[] = { 0x67, 0xbe, 0x1b, 0x06, 0xf6, 0x71, 0x72, 0xc5, 0x03, 0xa5, 0xac, 0x50, 0x58, 0x22, 0x35, 0xd3, 0x0b, 0xc9, 0x07, 0x9e, 0xaa, 0x4c, 0xde, 0xc6, 0x9a, 0x39, 0xc0, 0x96, 0x31, 0x0f, 0x8d, 0x99, 0x18, 0x6c, 0xc9, 0xaf, 0x7c, 0x8b, 0x43, 0x69, 0xa2, 0x91, 0xd3, 0xe9, 0x21, 0xd6, 0x07, 0x05, 0xab, 0x64, 0x5f, 0xc9, 0x1f, 0x06, 0xb1, 0xff, 0x7c, 0xc5, 0x8f, 0xcc, 0xf6, 0xf7, 0xcf, 0xac, 0x74, 0xdb, 0x30, 0xd8, 0x39, 0x74, 0x8a, 0x78, 0xcb, 0x5f, 0x3b, 0x8f, 0xef, 0xc7, 0xa0, 0x6f, 0x3b, 0x5f, 0xf0, 0x31, 0x0a, 0x85, 0x80, 0xc6, 0x05, 0x0b, 0xeb, 0xb7, 0x5e, 0xda, 0x97, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9959 = { .name = "ecdsa_secp384r1_sha512_9959", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9959_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9959_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9959_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9960 for ECDSA, tcId is 328 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9960_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9960_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9960_sig[] = { 0xd9, 0x66, 0x44, 0x2d, 0x6c, 0x29, 0xe5, 0xa4, 0xcc, 0x60, 0xe2, 0x37, 0x4e, 0xcc, 0xd3, 0x73, 0xdb, 0x3e, 0xbe, 0x40, 0x5e, 0xe7, 0xc9, 0x66, 0x4c, 0x42, 0x73, 0x10, 0x0c, 0xd1, 0x89, 0x9a, 0x1c, 0x58, 0x11, 0x04, 0x87, 0x52, 0x86, 0x16, 0xd8, 0xc5, 0x32, 0x1d, 0xbf, 0x52, 0x27, 0x64, 0x9b, 0xb0, 0xe4, 0xa2, 0xc0, 0x41, 0xa3, 0xb7, 0xb6, 0x72, 0x02, 0x9f, 0xe4, 0x80, 0xd1, 0x55, 0xf5, 0x76, 0x71, 0xec, 0xd6, 0xeb, 0x59, 0x86, 0x60, 0xd0, 0x25, 0xac, 0xce, 0x1f, 0x61, 0x3d, 0x03, 0xcd, 0x6c, 0xff, 0x4a, 0x21, 0x41, 0x31, 0xc8, 0xc7, 0xa8, 0xad, 0x22, 0xdf, 0x13, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9960 = { .name = "ecdsa_secp384r1_sha512_9960", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9960_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9960_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9960_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9961 for ECDSA, tcId is 329 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9961_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9961_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9961_sig[] = { 0x08, 0xa8, 0x4a, 0x2b, 0xc3, 0x9b, 0x08, 0x2a, 0xb8, 0x2e, 0x6e, 0x45, 0xf0, 0x88, 0xa3, 0x6f, 0x1c, 0xb2, 0x55, 0xf9, 0x7e, 0xc8, 0x12, 0x4e, 0xca, 0x92, 0x9d, 0x45, 0x06, 0xd7, 0xda, 0xb6, 0x39, 0x57, 0xc6, 0x47, 0x99, 0x4b, 0xe2, 0xc2, 0xc7, 0x34, 0x4f, 0x90, 0x2d, 0xe5, 0xb3, 0x8f, 0x0c, 0x96, 0x45, 0xe8, 0x4a, 0x30, 0x4b, 0xa0, 0x97, 0x0c, 0xa5, 0xce, 0x00, 0xb8, 0xc8, 0xa9, 0x71, 0xfa, 0x0d, 0x0b, 0xcb, 0xec, 0x6a, 0x70, 0x13, 0x48, 0x94, 0xc4, 0x4d, 0x30, 0x75, 0x03, 0x0f, 0xf0, 0x43, 0x33, 0xea, 0x38, 0x89, 0xf8, 0x47, 0xa1, 0xed, 0x76, 0x9e, 0xe6, 0x18, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9961 = { .name = "ecdsa_secp384r1_sha512_9961", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9961_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9961_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9961_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9962 for ECDSA, tcId is 330 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9962_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9962_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9962_sig[] = { 0x83, 0x00, 0x4b, 0x03, 0x42, 0x02, 0xbb, 0xf5, 0x1a, 0x32, 0x7d, 0x32, 0xed, 0x3d, 0xdf, 0x67, 0xb4, 0x6e, 0xda, 0x9b, 0xac, 0x69, 0x5a, 0x44, 0x22, 0x74, 0x4a, 0x4b, 0xd9, 0x9a, 0xaa, 0xc3, 0xb3, 0xe8, 0xed, 0x80, 0xdd, 0xac, 0x65, 0x38, 0x93, 0x9c, 0x93, 0x85, 0xd6, 0xc8, 0xf6, 0x16, 0x7b, 0x4e, 0x61, 0x92, 0x6c, 0xb9, 0xaf, 0xa8, 0xcd, 0xaa, 0xf4, 0x49, 0x09, 0xdf, 0x6d, 0xc6, 0x44, 0x98, 0x87, 0xd5, 0x9f, 0xe2, 0xac, 0xac, 0x05, 0xf7, 0x68, 0x4a, 0x23, 0x5f, 0xa7, 0x71, 0x79, 0xbd, 0xbc, 0xc6, 0x9f, 0xd8, 0xf3, 0x59, 0xe8, 0xed, 0xa1, 0x9e, 0x5a, 0x5d, 0x48, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9962 = { .name = "ecdsa_secp384r1_sha512_9962", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9962_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9962_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9962_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9963 for ECDSA, tcId is 331 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9963_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9963_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9963_sig[] = { 0xad, 0x93, 0x37, 0x5a, 0x1d, 0x37, 0x4c, 0x41, 0xe5, 0xde, 0x26, 0x8a, 0x8c, 0x08, 0xc2, 0x05, 0xff, 0x56, 0x52, 0x44, 0x5b, 0xfe, 0x3d, 0xdf, 0x4c, 0xa7, 0x7a, 0x70, 0xf5, 0x81, 0x9f, 0x9f, 0x06, 0xdb, 0x86, 0x1d, 0x82, 0xfc, 0x96, 0x37, 0x94, 0x6f, 0x0f, 0xe3, 0x84, 0x57, 0xf2, 0xbd, 0x4b, 0xc0, 0x43, 0xac, 0xbc, 0x6a, 0x68, 0xd4, 0x82, 0x4e, 0xd7, 0x68, 0xaf, 0x94, 0x76, 0xad, 0x5b, 0x93, 0xe4, 0xcb, 0x3b, 0xba, 0xc2, 0x84, 0xfb, 0x5f, 0xbd, 0x54, 0x8a, 0xe3, 0xb9, 0x6c, 0x26, 0x5c, 0x6d, 0x1e, 0xf4, 0x58, 0x8a, 0x3e, 0x2d, 0xa2, 0x1b, 0x12, 0x4c, 0x0d, 0x6b, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9963 = { .name = "ecdsa_secp384r1_sha512_9963", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9963_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9963_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9963_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9964 for ECDSA, tcId is 332 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9964_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9964_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp384r1_sha512_9964_sig[] = { 0x9e, 0x0d, 0x45, 0xd2, 0xdc, 0x93, 0xfd, 0x36, 0x3d, 0xc9, 0x19, 0x40, 0x58, 0x18, 0xe3, 0x99, 0x22, 0xf3, 0xf9, 0xdd, 0x08, 0x27, 0xbc, 0xad, 0x86, 0xd4, 0xba, 0x80, 0xa4, 0x4b, 0x45, 0xa6, 0xf6, 0x0b, 0x8e, 0x59, 0x3b, 0x58, 0x0c, 0x91, 0x26, 0x2b, 0x32, 0x85, 0x9d, 0xbb, 0x1e, 0x53, 0xeb, 0x9b, 0x8d, 0xfe, 0x5b, 0xa4, 0xa0, 0x55, 0xa9, 0x74, 0xf1, 0x9b, 0x48, 0x8f, 0x3a, 0x6f, 0xa0, 0x71, 0x61, 0x00, 0x6a, 0xc9, 0x4e, 0xb1, 0xfe, 0x1c, 0x12, 0xdd, 0x0e, 0x20, 0xf3, 0xa7, 0xbe, 0x38, 0xa3, 0x7c, 0xe9, 0x6d, 0x67, 0x11, 0x83, 0xc5, 0x87, 0x12, 0x49, 0xb2, 0xa3, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9964 = { .name = "ecdsa_secp384r1_sha512_9964", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9964_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9964_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9964_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9965 for ECDSA, tcId is 333 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9965_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9965_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9965_sig[] = { 0x7a, 0x5d, 0x04, 0xcd, 0x2f, 0xda, 0x59, 0xd8, 0x56, 0x5c, 0x79, 0xea, 0x2a, 0x7f, 0x12, 0x89, 0xab, 0x79, 0xca, 0xe9, 0xfd, 0xe0, 0x60, 0x09, 0x4c, 0x80, 0x5c, 0x59, 0x1a, 0x25, 0x34, 0xe4, 0x39, 0x3e, 0x28, 0xc3, 0xfd, 0x85, 0x85, 0x29, 0xbf, 0x17, 0x64, 0x38, 0x46, 0xac, 0xeb, 0x83, 0x8d, 0xe0, 0xd8, 0xc0, 0x09, 0x2f, 0xd0, 0x2d, 0x55, 0x4a, 0xfe, 0x25, 0xf8, 0x14, 0x74, 0x4b, 0xea, 0xaa, 0x17, 0xc6, 0x94, 0x6a, 0x63, 0x87, 0xec, 0x70, 0x46, 0xb6, 0x02, 0xdb, 0x8a, 0x6c, 0x90, 0x02, 0x46, 0xc2, 0xfb, 0x63, 0xfc, 0xef, 0x2a, 0xc8, 0xd9, 0x39, 0x44, 0x44, 0xa0, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9965 = { .name = "ecdsa_secp384r1_sha512_9965", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9965_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9965_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9965_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9966 for ECDSA, tcId is 334 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9966_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9966_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9966_sig[] = { 0xa5, 0x64, 0xee, 0xa0, 0xcd, 0xac, 0x05, 0x1a, 0x76, 0x9f, 0x8f, 0xf1, 0xe0, 0xc8, 0x34, 0xa2, 0x88, 0xce, 0x51, 0x4f, 0x67, 0xd1, 0x38, 0x11, 0x37, 0x27, 0xb5, 0x3a, 0x1a, 0x6f, 0xc9, 0x5c, 0xe2, 0x37, 0x36, 0x7b, 0x91, 0xf1, 0xb9, 0x1b, 0x2f, 0x65, 0xd5, 0x89, 0xad, 0xc8, 0x28, 0x8e, 0x18, 0x2e, 0x5b, 0x47, 0xb6, 0xfb, 0xd8, 0xe7, 0x41, 0xa0, 0x4e, 0x80, 0x94, 0x87, 0xba, 0x5f, 0xcb, 0x8a, 0x5f, 0x2f, 0x1b, 0x9a, 0xf6, 0xce, 0x21, 0x41, 0x28, 0x62, 0x3a, 0x47, 0x68, 0xe3, 0x8e, 0x6d, 0xdc, 0x95, 0x8f, 0xf3, 0x90, 0x78, 0xc3, 0x6c, 0x04, 0xa3, 0x14, 0x70, 0x84, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9966 = { .name = "ecdsa_secp384r1_sha512_9966", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9966_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9966_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9966_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9967 for ECDSA, tcId is 335 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9967_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9967_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9967_sig[] = { 0x67, 0x58, 0x86, 0x7c, 0xd1, 0xca, 0x14, 0x46, 0xcc, 0x41, 0x04, 0x3d, 0x16, 0x25, 0xc9, 0x67, 0xa0, 0xae, 0x04, 0xd9, 0xdb, 0x17, 0xbb, 0xb4, 0x2f, 0xa9, 0xc0, 0x76, 0xb3, 0x59, 0x31, 0x25, 0xd6, 0x3c, 0xd3, 0xe7, 0x47, 0x1e, 0xe6, 0xcd, 0xba, 0x52, 0x35, 0xa2, 0x1c, 0xec, 0x2f, 0x22, 0x56, 0x3d, 0xb3, 0x87, 0xad, 0xb5, 0x37, 0xe1, 0xd8, 0x92, 0x31, 0xd9, 0x35, 0xac, 0x79, 0x03, 0x16, 0x92, 0x5a, 0xeb, 0x29, 0x13, 0x2b, 0x9f, 0x87, 0xbe, 0xe9, 0x11, 0x16, 0xc3, 0x3b, 0xf5, 0x09, 0x43, 0xfe, 0x39, 0xb6, 0x71, 0xce, 0x95, 0x35, 0xdc, 0xa0, 0xa5, 0xd2, 0x2b, 0xbf, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9967 = { .name = "ecdsa_secp384r1_sha512_9967", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9967_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9967_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9967_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9968 for ECDSA, tcId is 336 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9968_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9968_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9968_sig[] = { 0xcd, 0xe0, 0x33, 0xe3, 0x8d, 0x3f, 0x79, 0x1d, 0xb8, 0x7d, 0x8a, 0x69, 0x07, 0x51, 0x6b, 0xd8, 0x02, 0x1a, 0xcd, 0x47, 0xe8, 0x97, 0xdf, 0x68, 0x3f, 0xda, 0x52, 0x9d, 0x48, 0x05, 0x0f, 0x8b, 0x56, 0x88, 0xf6, 0x36, 0x1d, 0xaf, 0x1b, 0x14, 0xbc, 0x3f, 0x45, 0xfc, 0x7f, 0x76, 0x15, 0x0f, 0xe1, 0x4f, 0x48, 0x11, 0xa6, 0x67, 0xc8, 0x53, 0x35, 0xa4, 0x70, 0x9a, 0x58, 0x9e, 0xa4, 0x6b, 0xac, 0x72, 0x05, 0x5b, 0x79, 0x4e, 0xae, 0xa9, 0x2d, 0x28, 0xe8, 0x34, 0xd5, 0xbc, 0x45, 0x9c, 0x60, 0x5f, 0xe4, 0xf2, 0x7c, 0x1a, 0xb1, 0x8d, 0x18, 0x6d, 0x59, 0xe7, 0xd2, 0x05, 0xcb, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9968 = { .name = "ecdsa_secp384r1_sha512_9968", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9968_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9968_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9968_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9969 for ECDSA, tcId is 337 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9969_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9969_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9969_sig[] = { 0xf2, 0x38, 0x44, 0x68, 0xb5, 0x55, 0x53, 0xc6, 0x8f, 0x97, 0x64, 0xd8, 0x24, 0x8c, 0xfd, 0x73, 0x58, 0xd6, 0x04, 0xfa, 0x37, 0x7e, 0xbb, 0x13, 0x82, 0x8c, 0x43, 0xa8, 0xeb, 0xdf, 0x30, 0x8f, 0xbb, 0xbe, 0xbf, 0xa4, 0x9a, 0x94, 0x58, 0xbf, 0xda, 0x95, 0x7d, 0x20, 0x68, 0xd2, 0x4e, 0x3f, 0x1f, 0xdf, 0x48, 0x91, 0xd5, 0x6e, 0x3e, 0x90, 0xc0, 0x2b, 0x05, 0xc1, 0x4c, 0x27, 0xc1, 0x7f, 0x56, 0xf8, 0xe6, 0xaa, 0x14, 0x4f, 0x02, 0x32, 0x8c, 0x90, 0x10, 0x9e, 0x1f, 0x70, 0xc9, 0xe3, 0xf5, 0x82, 0xf0, 0xd2, 0x99, 0xc4, 0x4d, 0xa5, 0x05, 0xc5, 0x43, 0xcc, 0x89, 0xc6, 0xa9, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9969 = { .name = "ecdsa_secp384r1_sha512_9969", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9969_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9969_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9969_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9970 for ECDSA, tcId is 338 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9970_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9970_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_9970_sig[] = { 0xb1, 0xcc, 0xaf, 0xed, 0xcc, 0x21, 0xba, 0x90, 0xb3, 0x42, 0xfa, 0x23, 0xc0, 0x14, 0x9f, 0x3d, 0x12, 0xa9, 0x39, 0xab, 0x6c, 0x33, 0x42, 0xb3, 0x6a, 0xe6, 0x1f, 0xdd, 0xbd, 0xc7, 0x53, 0x92, 0x7a, 0x7c, 0x3e, 0x97, 0x8b, 0xd7, 0x80, 0xcf, 0x25, 0xcd, 0x78, 0xc8, 0xc5, 0xef, 0xe2, 0x80, 0x4c, 0x32, 0xa7, 0x3f, 0x31, 0x57, 0xbb, 0xe2, 0x38, 0x40, 0x95, 0xeb, 0x67, 0x72, 0x6b, 0x9c, 0xd3, 0xc2, 0x62, 0x3b, 0x98, 0xa1, 0x82, 0xa3, 0xb4, 0xf0, 0x0e, 0x8d, 0xb9, 0x33, 0xe1, 0x11, 0x3b, 0x7a, 0xda, 0x26, 0x95, 0xa7, 0xd7, 0x9b, 0x47, 0x10, 0x26, 0x46, 0x2b, 0x20, 0xe2, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9970 = { .name = "ecdsa_secp384r1_sha512_9970", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9970_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9970_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9970_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9971 for ECDSA, tcId is 339 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9971_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9971_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9971_sig[] = { 0xf3, 0xed, 0x17, 0x0e, 0x44, 0x97, 0x58, 0x29, 0x9a, 0xe5, 0x5e, 0xb8, 0x52, 0x44, 0x74, 0x5e, 0x18, 0x76, 0x62, 0x1c, 0x1f, 0x70, 0x8e, 0x07, 0xe5, 0x5c, 0x0d, 0x2d, 0x9a, 0xb5, 0xf9, 0xaf, 0x9e, 0x0a, 0x8b, 0x3c, 0x7b, 0xdf, 0x89, 0x36, 0xab, 0x3c, 0x9e, 0xbd, 0x19, 0x08, 0xe9, 0xdc, 0xda, 0x62, 0xcc, 0xdb, 0x65, 0x88, 0x68, 0x14, 0x72, 0x86, 0xd7, 0x26, 0x9b, 0xcb, 0xd4, 0xad, 0xdb, 0x4d, 0xec, 0x9e, 0xa3, 0xd5, 0xd7, 0x9f, 0xdb, 0xe0, 0xcc, 0xff, 0xa4, 0x0d, 0x05, 0x51, 0x70, 0xbd, 0xde, 0xb4, 0xef, 0x4c, 0x5e, 0x0b, 0xc9, 0x9f, 0xae, 0x5d, 0xb6, 0x2b, 0x44, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9971 = { .name = "ecdsa_secp384r1_sha512_9971", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9971_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9971_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9971_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9972 for ECDSA, tcId is 340 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9972_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9972_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9972_sig[] = { 0x83, 0x45, 0x5f, 0xc4, 0x62, 0x9e, 0x76, 0x93, 0xc8, 0xe4, 0x95, 0xfe, 0xc2, 0xd2, 0x9b, 0xb2, 0x3b, 0xb6, 0xdb, 0x79, 0x18, 0x0f, 0xcf, 0xa8, 0x3a, 0x4f, 0x93, 0x10, 0xd9, 0xdb, 0x27, 0xe2, 0x92, 0x97, 0xde, 0xe2, 0x7e, 0xe8, 0x0a, 0x71, 0xab, 0x2f, 0x7a, 0x2d, 0x59, 0xf4, 0x8b, 0x88, 0x77, 0x36, 0xc0, 0x56, 0xc8, 0xf2, 0xbb, 0x57, 0xe9, 0xfb, 0x6b, 0x8d, 0xe0, 0xab, 0x6d, 0x09, 0x87, 0x9f, 0x66, 0x11, 0xe7, 0x37, 0x63, 0x4e, 0x7b, 0x63, 0x37, 0xaa, 0x5c, 0x5a, 0x01, 0xf5, 0x15, 0xd5, 0xe3, 0x70, 0x2d, 0xec, 0x9a, 0x70, 0x21, 0x77, 0xc8, 0x16, 0xe3, 0x2b, 0xac, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9972 = { .name = "ecdsa_secp384r1_sha512_9972", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9972_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9972_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9972_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9973 for ECDSA, tcId is 341 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9973_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9973_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9973_sig[] = { 0x74, 0x96, 0x15, 0x87, 0xcb, 0xe4, 0x9b, 0xbf, 0x0a, 0x73, 0xfe, 0xa8, 0x2b, 0x8b, 0x22, 0x42, 0xf6, 0x7b, 0x0e, 0xa0, 0x92, 0x24, 0x77, 0x46, 0x39, 0xf4, 0x37, 0xc6, 0x03, 0x78, 0xa3, 0x6b, 0x2d, 0x51, 0x1a, 0x91, 0x45, 0xd5, 0x76, 0xb4, 0x40, 0xdf, 0xfd, 0x1f, 0x02, 0x28, 0x6a, 0x8b, 0x8f, 0xb9, 0x5d, 0x46, 0xc2, 0x28, 0x89, 0x08, 0x5c, 0xc1, 0xd3, 0xe2, 0x0b, 0xcf, 0xbc, 0xbc, 0x52, 0xf4, 0x53, 0x24, 0x45, 0xf7, 0x6f, 0x08, 0xef, 0xae, 0x2d, 0xe8, 0xb5, 0x6f, 0xe8, 0x52, 0x52, 0x04, 0x64, 0x33, 0x30, 0xdf, 0xd2, 0x3c, 0xce, 0x94, 0x66, 0x87, 0xa0, 0xae, 0xf0, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9973 = { .name = "ecdsa_secp384r1_sha512_9973", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9973_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9973_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9973_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9974 for ECDSA, tcId is 342 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9974_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9974_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9974_sig[] = { 0xa3, 0xfd, 0x32, 0x23, 0x30, 0xd0, 0xf0, 0xef, 0xcc, 0xc5, 0x4b, 0xd7, 0xd7, 0x3c, 0x31, 0x59, 0xeb, 0x1b, 0xcc, 0xa0, 0x8c, 0xec, 0x36, 0x9a, 0x4a, 0x08, 0xfd, 0x00, 0xf9, 0xec, 0x6d, 0x48, 0x2c, 0xed, 0x58, 0xeb, 0x08, 0xa0, 0xd7, 0xc2, 0x11, 0x3b, 0xd5, 0x57, 0x5d, 0xe4, 0x91, 0x7d, 0x16, 0x4e, 0x32, 0x32, 0xa6, 0x28, 0xc4, 0x0f, 0xbb, 0xa1, 0xde, 0x82, 0xbf, 0xb9, 0x62, 0x7c, 0xec, 0x78, 0xa8, 0x04, 0x0c, 0xf3, 0x25, 0xa5, 0xa8, 0xbb, 0x8f, 0x86, 0x4c, 0x2a, 0xc1, 0x9e, 0x35, 0x24, 0xac, 0x93, 0xf4, 0xdb, 0x57, 0x13, 0xce, 0x62, 0xba, 0x25, 0x61, 0x76, 0xe0, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9974 = { .name = "ecdsa_secp384r1_sha512_9974", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9974_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9974_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9974_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9975 for ECDSA, tcId is 343 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9975_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9975_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9975_sig[] = { 0x4c, 0x86, 0x2f, 0xf9, 0xe4, 0xff, 0x88, 0xf9, 0xa5, 0x8e, 0x9f, 0xce, 0xaa, 0xf9, 0xbb, 0xb3, 0x07, 0x40, 0xd3, 0xf6, 0xc8, 0xc6, 0xa6, 0x9b, 0x56, 0x27, 0xfe, 0x23, 0x4b, 0x14, 0x4f, 0x8c, 0xdf, 0x09, 0x52, 0x07, 0x35, 0xcf, 0xd7, 0x08, 0xf5, 0xe3, 0x41, 0xa7, 0x8c, 0xc4, 0x87, 0x3d, 0xa8, 0x61, 0x97, 0x25, 0x14, 0xa0, 0xe9, 0x75, 0xcf, 0x2d, 0xa2, 0x14, 0x12, 0x5e, 0xc9, 0x32, 0x88, 0x52, 0x4c, 0xc7, 0x74, 0x92, 0xed, 0x63, 0xc5, 0x16, 0x42, 0x42, 0x78, 0xe5, 0xec, 0x8d, 0x41, 0x72, 0x44, 0x67, 0xcb, 0x7c, 0x31, 0x11, 0xfa, 0x34, 0xc6, 0x91, 0x93, 0xab, 0xb4, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9975 = { .name = "ecdsa_secp384r1_sha512_9975", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9975_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9975_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9975_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9976 for ECDSA, tcId is 344 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9976_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9976_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9976_sig[] = { 0x62, 0x22, 0x5e, 0x4e, 0x49, 0x2a, 0x97, 0x73, 0x39, 0x78, 0x70, 0x33, 0x61, 0x68, 0x96, 0x0a, 0x66, 0xb9, 0xe5, 0x03, 0x91, 0xef, 0x72, 0x89, 0xcb, 0x2d, 0x38, 0x78, 0xf3, 0x22, 0x52, 0xdc, 0x1b, 0x90, 0x4f, 0x66, 0x82, 0x54, 0x5e, 0x14, 0x56, 0x4e, 0x41, 0x5b, 0xd9, 0x3e, 0x01, 0x17, 0x9f, 0x4d, 0x03, 0x27, 0xf7, 0x9e, 0x04, 0x35, 0x05, 0xc6, 0x91, 0xe3, 0x61, 0xfa, 0x2e, 0x00, 0xf8, 0x7f, 0x41, 0x32, 0x47, 0x77, 0xec, 0xa6, 0x96, 0x6f, 0x4b, 0xea, 0x2f, 0xa0, 0x85, 0x88, 0x76, 0xaa, 0x01, 0x98, 0x0b, 0x2c, 0xad, 0x7f, 0x66, 0x03, 0x75, 0x24, 0xde, 0x49, 0xbf, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9976 = { .name = "ecdsa_secp384r1_sha512_9976", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9976_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9976_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9976_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9977 for ECDSA, tcId is 345 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9977_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9977_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9977_sig[] = { 0x45, 0x0c, 0x65, 0xd2, 0xd8, 0x8b, 0xa4, 0x64, 0xee, 0xe3, 0xa5, 0xce, 0x93, 0x10, 0xb5, 0x19, 0xd5, 0xdc, 0xf6, 0x08, 0x79, 0x9f, 0xb2, 0x27, 0x5e, 0xee, 0x98, 0x7a, 0x67, 0xc2, 0xc4, 0xd7, 0xac, 0x53, 0x71, 0x69, 0x87, 0xcc, 0x51, 0x39, 0xc1, 0x8c, 0x67, 0xef, 0x07, 0xb1, 0xe2, 0x07, 0x1e, 0xe0, 0x43, 0x93, 0x11, 0xa7, 0xbc, 0xe1, 0xc4, 0xfe, 0xd0, 0xa3, 0x15, 0x2d, 0x1b, 0x35, 0x4d, 0x96, 0x53, 0x6c, 0x6c, 0xa0, 0xc9, 0x18, 0x8a, 0xc1, 0xf1, 0xaf, 0xcc, 0x5c, 0xd7, 0x30, 0x5b, 0x56, 0x11, 0xef, 0x0d, 0x19, 0xd8, 0xbd, 0x57, 0xc5, 0x05, 0x99, 0x76, 0xdc, 0x5e, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9977 = { .name = "ecdsa_secp384r1_sha512_9977", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9977_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9977_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9977_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9978 for ECDSA, tcId is 346 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9978_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9978_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp384r1_sha512_9978_sig[] = { 0xaa, 0x25, 0x75, 0xfb, 0x5b, 0xea, 0x0e, 0xff, 0xb5, 0x24, 0x7d, 0x20, 0xc3, 0xd0, 0x16, 0x5d, 0x57, 0x58, 0x31, 0x84, 0x0b, 0x5c, 0x18, 0xb0, 0x24, 0x5a, 0x99, 0xa6, 0x1b, 0x7a, 0xd5, 0xd7, 0xbf, 0x8a, 0x8c, 0xfc, 0xc3, 0x75, 0xe0, 0x95, 0xa8, 0x4e, 0x78, 0x10, 0x25, 0xbe, 0xe3, 0xee, 0x9c, 0x8b, 0x77, 0x97, 0xad, 0x33, 0x0a, 0xbc, 0x20, 0x60, 0x60, 0xb2, 0x8b, 0x6c, 0xa1, 0xc6, 0x39, 0xd8, 0x9f, 0x59, 0x58, 0x25, 0x28, 0xbd, 0xa1, 0x52, 0x7e, 0x3a, 0xb0, 0x81, 0x69, 0x7a, 0x2a, 0xb5, 0x76, 0xf9, 0xd0, 0x9c, 0x2e, 0xe3, 0x29, 0xdd, 0x73, 0x23, 0x16, 0x67, 0x30, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9978 = { .name = "ecdsa_secp384r1_sha512_9978", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9978_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9978_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9978_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9979 for ECDSA, tcId is 347 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9979_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9979_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_9979_sig[] = { 0x01, 0xfc, 0x45, 0x28, 0x5a, 0xa2, 0xc2, 0xe5, 0x04, 0x58, 0x19, 0x9a, 0xde, 0x2d, 0xed, 0x0d, 0xd3, 0x6b, 0x1d, 0xe0, 0x3e, 0x89, 0x69, 0x17, 0x5b, 0xe4, 0xa6, 0xf0, 0x9f, 0x97, 0x19, 0xb1, 0x95, 0xde, 0xd8, 0xd9, 0xeb, 0x4e, 0xa1, 0x32, 0xd9, 0x5d, 0x19, 0xa3, 0x52, 0x8f, 0xd6, 0xc9, 0x59, 0x60, 0x9a, 0x35, 0x8c, 0x59, 0x19, 0xfe, 0xf4, 0x78, 0x10, 0x61, 0x80, 0x4d, 0x4d, 0x64, 0xa0, 0x67, 0xed, 0xec, 0xdc, 0xfd, 0x14, 0x62, 0x01, 0x61, 0xaa, 0xe3, 0xef, 0x27, 0x35, 0x09, 0x5a, 0x55, 0x8e, 0x4f, 0x8a, 0xe3, 0x45, 0x04, 0x01, 0x23, 0xf0, 0x93, 0xe5, 0xf7, 0x0a, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9979 = { .name = "ecdsa_secp384r1_sha512_9979", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9979_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9979_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9979_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9980 for ECDSA, tcId is 348 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9980_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9980_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp384r1_sha512_9980_sig[] = { 0xd8, 0xe1, 0xf6, 0xb1, 0x9e, 0x5b, 0x92, 0xe3, 0x60, 0x60, 0xe5, 0x9e, 0x53, 0xee, 0xb7, 0x88, 0xa4, 0x75, 0x8c, 0x2c, 0x8e, 0xe9, 0x51, 0x9f, 0x39, 0x49, 0xd5, 0xf3, 0x31, 0x5a, 0xba, 0xfb, 0xe9, 0x37, 0xb8, 0xed, 0x44, 0xd4, 0x7e, 0x88, 0x6a, 0x07, 0xc1, 0x07, 0xaa, 0x8a, 0xc9, 0xf4, 0x12, 0x55, 0x05, 0x74, 0x31, 0x83, 0x71, 0xe5, 0x16, 0x8d, 0x0a, 0x33, 0x9f, 0x20, 0xfc, 0xac, 0xae, 0xc8, 0x7d, 0xb2, 0x11, 0xbb, 0xa4, 0xd4, 0xe7, 0xc7, 0xe0, 0x55, 0xb6, 0x3b, 0x75, 0xfd, 0x31, 0x79, 0x0a, 0xd2, 0x85, 0xf4, 0xcc, 0x06, 0x13, 0x78, 0x69, 0x2b, 0x0a, 0x24, 0x8e, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9980 = { .name = "ecdsa_secp384r1_sha512_9980", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9980_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9980_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9980_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9981 for ECDSA, tcId is 349 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9981_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9981_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_9981_sig[] = { 0x48, 0x15, 0xae, 0xc4, 0x4a, 0x7a, 0x6b, 0x86, 0xae, 0x87, 0xfc, 0x25, 0x56, 0xac, 0xcd, 0x77, 0x83, 0x2f, 0xa3, 0x3a, 0x47, 0x10, 0xe0, 0x2e, 0xc5, 0xef, 0x6f, 0x41, 0xf6, 0x8a, 0x91, 0x0e, 0x6a, 0xf4, 0xd1, 0x73, 0xae, 0x46, 0x2a, 0x75, 0x9b, 0xd9, 0x80, 0x79, 0xb3, 0x71, 0xbf, 0x5d, 0x6e, 0x78, 0xd5, 0x62, 0xf9, 0xe8, 0xbe, 0x65, 0xe8, 0xd7, 0xa7, 0x4a, 0x73, 0x05, 0xe5, 0xd6, 0xcf, 0x2f, 0x3c, 0x4c, 0x98, 0x0f, 0x2b, 0x18, 0xdf, 0xb8, 0xe9, 0xc8, 0xb0, 0x13, 0x4e, 0xc8, 0x65, 0x48, 0x05, 0x3b, 0x3d, 0x12, 0x5e, 0x56, 0xd5, 0x87, 0x22, 0x94, 0xd2, 0xd1, 0x4e, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9981 = { .name = "ecdsa_secp384r1_sha512_9981", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9981_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9981_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9981_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9982 for ECDSA, tcId is 350 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9982_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9982_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9982_sig[] = { 0xd3, 0x02, 0xf9, 0xdb, 0x6b, 0x2d, 0x94, 0xe1, 0x94, 0x41, 0x2f, 0x0d, 0x40, 0xa1, 0x35, 0xa5, 0x54, 0xae, 0xe0, 0x14, 0xbd, 0x93, 0x9b, 0x3d, 0x7e, 0x45, 0xc1, 0x22, 0x1e, 0xf7, 0xce, 0x45, 0xc2, 0xae, 0xd8, 0x75, 0xf9, 0xa2, 0xbc, 0x43, 0xdb, 0xc8, 0x26, 0x4d, 0x92, 0xe4, 0x44, 0xa5, 0x04, 0xe7, 0x24, 0x7b, 0x25, 0x8c, 0x6e, 0x77, 0x39, 0x97, 0x9c, 0x0a, 0x07, 0x28, 0x2f, 0x62, 0x95, 0x8a, 0xc4, 0x5e, 0x52, 0xdd, 0x76, 0xa4, 0x1d, 0x5e, 0x1a, 0xca, 0x31, 0xa5, 0xcd, 0xa7, 0x3d, 0x7b, 0x02, 0x6d, 0x67, 0xb4, 0xd6, 0x09, 0x80, 0x30, 0x01, 0xcb, 0x66, 0x1d, 0x74, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9982 = { .name = "ecdsa_secp384r1_sha512_9982", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9982_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9982_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9982_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9983 for ECDSA, tcId is 351 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9983_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9983_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9983_sig[] = { 0x88, 0x9f, 0x0e, 0x2a, 0x6a, 0xe2, 0xdd, 0xca, 0xd1, 0xcd, 0xe3, 0xf6, 0x5b, 0x61, 0xd4, 0xdd, 0x40, 0x98, 0x59, 0x17, 0xba, 0x84, 0x1b, 0x47, 0xa1, 0xf8, 0x02, 0x49, 0x1f, 0x5a, 0xf5, 0x06, 0x77, 0x22, 0xb7, 0x68, 0x3d, 0xf0, 0xfc, 0xa7, 0xee, 0x19, 0xd2, 0xb7, 0x37, 0x24, 0xc8, 0xfd, 0x1f, 0x98, 0x9b, 0xac, 0x23, 0xb5, 0x1c, 0x49, 0xe5, 0xd7, 0xdc, 0xc3, 0x19, 0xee, 0xd2, 0xfc, 0x76, 0x7e, 0x9b, 0x43, 0x2b, 0xf7, 0x5a, 0xf9, 0x28, 0x14, 0xd9, 0xe6, 0x7a, 0x5d, 0x4b, 0x33, 0x98, 0xeb, 0x15, 0xe9, 0x8b, 0x70, 0x52, 0x7a, 0xbb, 0xc0, 0x29, 0xab, 0xc1, 0xbe, 0xa5, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9983 = { .name = "ecdsa_secp384r1_sha512_9983", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9983_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9983_msg, .msglen = 9, .sig = ecdsa_secp384r1_sha512_9983_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9984 for ECDSA, tcId is 352 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9984_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9984_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp384r1_sha512_9984_sig[] = { 0xe6, 0x9c, 0x70, 0xc6, 0x79, 0x79, 0x5c, 0xa7, 0xd2, 0xb6, 0x6e, 0x26, 0x32, 0x52, 0x96, 0x51, 0xc1, 0x20, 0x05, 0x5f, 0xa3, 0xcf, 0x25, 0x43, 0x5f, 0xe8, 0xbb, 0x28, 0x98, 0x7c, 0x02, 0x41, 0x2c, 0xe7, 0x3e, 0x6c, 0xa5, 0xca, 0x7e, 0x0b, 0x42, 0xe9, 0x67, 0x0c, 0x0a, 0x58, 0x81, 0x75, 0xed, 0xd8, 0x51, 0x3b, 0xff, 0x40, 0xcd, 0xca, 0x9e, 0x22, 0x65, 0x92, 0x38, 0xfb, 0xce, 0xa2, 0xde, 0x2c, 0xae, 0xef, 0x53, 0xc5, 0x28, 0x7a, 0x51, 0x5d, 0xb9, 0x16, 0x8b, 0x30, 0x08, 0xec, 0x44, 0x6c, 0x9b, 0x94, 0xf2, 0x8a, 0x6e, 0x02, 0x1c, 0x69, 0xbc, 0x66, 0x37, 0xfc, 0x46, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9984 = { .name = "ecdsa_secp384r1_sha512_9984", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9984_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9984_msg, .msglen = 11, .sig = ecdsa_secp384r1_sha512_9984_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9985 for ECDSA, tcId is 353 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9985_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9985_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp384r1_sha512_9985_sig[] = { 0x06, 0x8c, 0xbe, 0xcf, 0xd4, 0x7b, 0xfd, 0x68, 0x8f, 0x49, 0x5d, 0xf0, 0x5e, 0x45, 0xfd, 0x5f, 0xce, 0xd6, 0xd8, 0xe2, 0x40, 0x60, 0x5c, 0x5b, 0x2b, 0xe5, 0xe6, 0x93, 0x68, 0x74, 0x0b, 0x69, 0x4b, 0x9b, 0x1e, 0xa0, 0x34, 0xaf, 0x31, 0x80, 0xe5, 0x71, 0xdd, 0x38, 0xa8, 0x63, 0x69, 0xef, 0x1a, 0x1d, 0x29, 0x76, 0xf7, 0x48, 0xd1, 0x62, 0x11, 0x28, 0x01, 0x3c, 0x61, 0xab, 0xda, 0x53, 0x98, 0xa3, 0xe2, 0x4f, 0x00, 0x73, 0xd1, 0xa6, 0xe0, 0x7a, 0x1e, 0x96, 0xc1, 0x2b, 0xe4, 0xf1, 0xe2, 0xe7, 0xb1, 0x44, 0xf9, 0xb5, 0xa3, 0x50, 0x50, 0x0a, 0xcf, 0xc5, 0xcb, 0x06, 0x98, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9985 = { .name = "ecdsa_secp384r1_sha512_9985", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9985_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9985_msg, .msglen = 10, .sig = ecdsa_secp384r1_sha512_9985_sig, .siglen = 96, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9986 for ECDSA, tcId is 354 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9986_pubkey[] = { 0x2d, 0xa5, 0x7d, 0xda, 0x10, 0x89, 0x27, 0x6a, 0x54, 0x3f, 0x9f, 0xfd, 0xac, 0x0b, 0xff, 0x0d, 0x97, 0x6c, 0xad, 0x71, 0xeb, 0x72, 0x80, 0xe7, 0xd9, 0xbf, 0xd9, 0xfe, 0xe4, 0xbd, 0xb2, 0xf2, 0x0f, 0x47, 0xff, 0x88, 0x82, 0x74, 0x38, 0x97, 0x72, 0xd9, 0x8c, 0xc5, 0x75, 0x21, 0x38, 0xaa, 0x4b, 0x6d, 0x05, 0x4d, 0x69, 0xdc, 0xf3, 0xe2, 0x5e, 0xc4, 0x9d, 0xf8, 0x70, 0x71, 0x5e, 0x34, 0x88, 0x3b, 0x18, 0x36, 0x19, 0x7d, 0x76, 0xf8, 0xad, 0x96, 0x2e, 0x78, 0xf6, 0x57, 0x1b, 0xbc, 0x74, 0x07, 0xb0, 0xd6, 0x09, 0x1f, 0x9e, 0x4d, 0x88, 0xf0, 0x14, 0x27, 0x44, 0x06, 0x17, 0x4f, }; static const unsigned char ecdsa_secp384r1_sha512_9986_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9986_sig[] = { 0x0e, 0x2c, 0x56, 0xeb, 0x5f, 0x66, 0x12, 0xf0, 0xc2, 0xb2, 0x2a, 0xb0, 0x3d, 0x57, 0xd9, 0xa4, 0x43, 0x07, 0x5a, 0x2b, 0x7a, 0x0b, 0x46, 0x08, 0x83, 0xe4, 0xf4, 0x87, 0x61, 0x21, 0xe9, 0xb6, 0xf1, 0xed, 0x67, 0xde, 0x20, 0xb7, 0x9f, 0x02, 0x8f, 0x7f, 0x66, 0xed, 0x02, 0x81, 0xdb, 0x71, 0x39, 0x16, 0xb7, 0x2b, 0x12, 0xd0, 0x35, 0xa3, 0x07, 0xb7, 0xc4, 0x5a, 0x98, 0x78, 0x33, 0x3a, 0x8c, 0x61, 0x44, 0x5a, 0xad, 0x23, 0x30, 0xdc, 0x49, 0xa1, 0x2b, 0x92, 0xe2, 0xe5, 0xda, 0xb7, 0x2e, 0x53, 0xe5, 0x78, 0x9f, 0x40, 0xaf, 0xb9, 0x0a, 0xea, 0x0e, 0xa4, 0x43, 0x1f, 0x2d, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9986 = { .name = "ecdsa_secp384r1_sha512_9986", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9986_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9986_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9986_sig, .siglen = 96, .result = -1, .comment = "Signature generated without truncating the hash, tcId is 354 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9987 for ECDSA, tcId is 355 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9987_pubkey[] = { 0xca, 0x5e, 0xe4, 0x79, 0xad, 0x66, 0x24, 0xab, 0x58, 0x70, 0x53, 0x9a, 0x56, 0xa2, 0x3b, 0x38, 0x16, 0xee, 0xf7, 0xbb, 0xc6, 0x71, 0x56, 0x83, 0x6d, 0xfb, 0x58, 0xc4, 0x25, 0xfd, 0xb7, 0x21, 0x3e, 0x31, 0x77, 0x0f, 0x12, 0xb4, 0x31, 0x52, 0xe8, 0x87, 0xd8, 0x8a, 0x3a, 0xfb, 0x4b, 0x18, 0x2a, 0xce, 0xec, 0x92, 0xb3, 0x13, 0x9a, 0xca, 0x83, 0x96, 0x40, 0x2a, 0x8f, 0x81, 0xbb, 0x50, 0x14, 0xe7, 0x48, 0xea, 0xb2, 0xe2, 0x05, 0x9f, 0x86, 0x56, 0xa8, 0x83, 0xe6, 0x2d, 0x78, 0xb9, 0xdc, 0x98, 0x8b, 0x98, 0x33, 0x26, 0x27, 0xf9, 0x52, 0x32, 0xd3, 0x7d, 0xf2, 0x65, 0x85, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha512_9987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9987_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9987 = { .name = "ecdsa_secp384r1_sha512_9987", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9987_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9987_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9987_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 355 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9988 for ECDSA, tcId is 356 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9988_pubkey[] = { 0xca, 0x5e, 0xe4, 0x79, 0xad, 0x66, 0x24, 0xab, 0x58, 0x70, 0x53, 0x9a, 0x56, 0xa2, 0x3b, 0x38, 0x16, 0xee, 0xf7, 0xbb, 0xc6, 0x71, 0x56, 0x83, 0x6d, 0xfb, 0x58, 0xc4, 0x25, 0xfd, 0xb7, 0x21, 0x3e, 0x31, 0x77, 0x0f, 0x12, 0xb4, 0x31, 0x52, 0xe8, 0x87, 0xd8, 0x8a, 0x3a, 0xfb, 0x4b, 0x18, 0x2a, 0xce, 0xec, 0x92, 0xb3, 0x13, 0x9a, 0xca, 0x83, 0x96, 0x40, 0x2a, 0x8f, 0x81, 0xbb, 0x50, 0x14, 0xe7, 0x48, 0xea, 0xb2, 0xe2, 0x05, 0x9f, 0x86, 0x56, 0xa8, 0x83, 0xe6, 0x2d, 0x78, 0xb9, 0xdc, 0x98, 0x8b, 0x98, 0x33, 0x26, 0x27, 0xf9, 0x52, 0x32, 0xd3, 0x7d, 0xf2, 0x65, 0x85, 0xd3, }; static const unsigned char ecdsa_secp384r1_sha512_9988_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9988_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9988 = { .name = "ecdsa_secp384r1_sha512_9988", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9988_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9988_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9988_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 356 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9989 for ECDSA, tcId is 357 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9989_pubkey[] = { 0x70, 0xe6, 0xa9, 0x0b, 0x4e, 0x07, 0x6b, 0xf5, 0x1d, 0xfa, 0x01, 0xfa, 0x44, 0xde, 0x49, 0xb4, 0x48, 0xf7, 0xaf, 0xa0, 0xf3, 0xd0, 0x76, 0x77, 0xf1, 0x68, 0x2c, 0xa7, 0x76, 0xd4, 0x04, 0xb2, 0xa0, 0xfe, 0xef, 0x66, 0xb0, 0x05, 0xea, 0x28, 0xba, 0x99, 0xb6, 0xce, 0x21, 0xd0, 0xca, 0x12, 0x42, 0x4f, 0x7d, 0x17, 0x99, 0x51, 0xfb, 0x89, 0x15, 0x6c, 0xdf, 0x04, 0xae, 0xd6, 0xdb, 0x05, 0x6c, 0x98, 0x59, 0x2c, 0x65, 0x1b, 0x5a, 0x88, 0x1a, 0xbc, 0x34, 0xe2, 0x40, 0x11, 0x27, 0xfb, 0x81, 0xc6, 0x4e, 0x90, 0xce, 0xe8, 0x32, 0x69, 0xc5, 0x14, 0x1f, 0x9a, 0x3c, 0x7b, 0xce, 0x78, }; static const unsigned char ecdsa_secp384r1_sha512_9989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9989_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9989 = { .name = "ecdsa_secp384r1_sha512_9989", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9989_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9989_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9989_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 357 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9990 for ECDSA, tcId is 358 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9990_pubkey[] = { 0x5a, 0x56, 0x84, 0x74, 0x80, 0x5f, 0xbf, 0x9a, 0xcc, 0x1e, 0x57, 0x56, 0xd2, 0x96, 0x69, 0x62, 0x90, 0xb7, 0x3d, 0x4d, 0x1c, 0x3b, 0x19, 0x7f, 0x48, 0xaf, 0xf0, 0x3b, 0x91, 0x9f, 0x01, 0x11, 0x82, 0x3f, 0x90, 0xea, 0x02, 0x4a, 0xf1, 0xc7, 0x8e, 0x7c, 0x80, 0x3e, 0x22, 0x97, 0x66, 0x2d, 0x4c, 0x1c, 0x79, 0xed, 0xc9, 0xc6, 0x94, 0x62, 0x0c, 0x1f, 0x5b, 0x5c, 0xc7, 0xdd, 0x9f, 0xf8, 0x9a, 0x42, 0x44, 0x27, 0x47, 0x85, 0x7c, 0xac, 0xe2, 0x6b, 0x6e, 0xbc, 0x99, 0x96, 0x2e, 0xc3, 0xa6, 0x8a, 0x8e, 0x40, 0x72, 0x22, 0x6d, 0x6d, 0x98, 0xa2, 0xa8, 0x66, 0xdd, 0x97, 0xc2, 0x03, }; static const unsigned char ecdsa_secp384r1_sha512_9990_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9990_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9990 = { .name = "ecdsa_secp384r1_sha512_9990", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9990_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9990_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9990_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 358 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9991 for ECDSA, tcId is 359 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9991_pubkey[] = { 0x88, 0x53, 0x13, 0x82, 0x96, 0x3b, 0xfe, 0x4e, 0x17, 0x9f, 0x0b, 0x45, 0x7e, 0xcd, 0x44, 0x65, 0x28, 0xb9, 0x8d, 0x34, 0x9e, 0xdb, 0xd8, 0xe7, 0xd0, 0xf6, 0xc1, 0x67, 0x3b, 0x4a, 0xe2, 0xa7, 0x62, 0x9b, 0x33, 0x45, 0xa7, 0xea, 0xe2, 0xe7, 0xc4, 0x83, 0x58, 0xc1, 0x3b, 0xdb, 0xe0, 0x38, 0x93, 0x75, 0xc8, 0x49, 0xdd, 0x57, 0x1d, 0x91, 0xf2, 0xa3, 0xbf, 0x89, 0x94, 0xf5, 0x3f, 0x82, 0x26, 0x1f, 0x38, 0x17, 0x28, 0x06, 0xc4, 0xd7, 0x25, 0xde, 0x20, 0x29, 0xe8, 0x87, 0xbf, 0xe0, 0x36, 0xf3, 0x8d, 0x69, 0x85, 0xea, 0x5a, 0x22, 0xc5, 0x21, 0x69, 0xdb, 0x6e, 0x42, 0x13, 0xda, }; static const unsigned char ecdsa_secp384r1_sha512_9991_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9991_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9991 = { .name = "ecdsa_secp384r1_sha512_9991", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9991_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9991_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9991_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 359 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9992 for ECDSA, tcId is 360 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9992_pubkey[] = { 0x08, 0x0d, 0xa5, 0x7d, 0x67, 0xdb, 0xa4, 0x8e, 0xb5, 0x0e, 0xef, 0x48, 0x4c, 0xf6, 0x68, 0xd9, 0x81, 0xe1, 0xbf, 0x30, 0xc3, 0x57, 0xc3, 0xfd, 0x21, 0xa4, 0x3c, 0xdc, 0x41, 0xf2, 0x67, 0xc3, 0xf1, 0x86, 0xbf, 0x87, 0xe3, 0x68, 0x02, 0x39, 0xba, 0xc0, 0x99, 0x30, 0xf1, 0x44, 0x26, 0x3c, 0x5f, 0x28, 0x77, 0x7a, 0xd8, 0xbc, 0xbf, 0xc3, 0xeb, 0x03, 0x69, 0xe0, 0xf7, 0xb1, 0x83, 0x92, 0xa1, 0x23, 0x97, 0xa4, 0xfb, 0xe1, 0x5a, 0x2a, 0x1f, 0x6e, 0x2e, 0x5b, 0x40, 0x67, 0xc8, 0x26, 0x81, 0xc8, 0x9c, 0x73, 0xdb, 0x25, 0xec, 0xa1, 0x8c, 0x6b, 0x25, 0x76, 0x84, 0x29, 0xce, 0xf0, }; static const unsigned char ecdsa_secp384r1_sha512_9992_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9992_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9992 = { .name = "ecdsa_secp384r1_sha512_9992", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9992_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9992_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9992_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9993 for ECDSA, tcId is 361 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9993_pubkey[] = { 0x0e, 0x74, 0xa0, 0x96, 0xd7, 0xf6, 0xee, 0x1b, 0xe9, 0xb4, 0x16, 0x0d, 0x6b, 0x79, 0xba, 0xba, 0x4d, 0x25, 0xb4, 0xfb, 0x6f, 0xbd, 0xd3, 0x8f, 0x5a, 0x9e, 0xd5, 0xcc, 0x1a, 0xc7, 0x99, 0x43, 0xbe, 0x71, 0xed, 0xe0, 0x93, 0xe5, 0x04, 0xc7, 0xdc, 0x08, 0x32, 0xda, 0xeb, 0x89, 0x8a, 0x05, 0xa8, 0xd0, 0x05, 0xb3, 0x0c, 0x89, 0x46, 0x86, 0xf6, 0xec, 0xb2, 0xbc, 0x69, 0x6e, 0x25, 0xef, 0xfa, 0xcc, 0xd3, 0xc9, 0xe4, 0xb4, 0x81, 0x22, 0xdb, 0x56, 0x7c, 0x01, 0x18, 0xa0, 0xb9, 0x83, 0xb7, 0x57, 0xc2, 0xf4, 0x00, 0x82, 0xdc, 0x37, 0x4f, 0x8f, 0x61, 0x17, 0xa8, 0xe7, 0x6f, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha512_9993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9993_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9993 = { .name = "ecdsa_secp384r1_sha512_9993", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9993_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9993_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9993_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 361 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9994 for ECDSA, tcId is 362 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9994_pubkey[] = { 0xa2, 0xad, 0x0e, 0x27, 0xb4, 0x04, 0x10, 0xd1, 0x60, 0x77, 0xdd, 0xc5, 0xe4, 0x15, 0xf1, 0x09, 0xd3, 0x28, 0xbf, 0x75, 0xe7, 0x3a, 0x0f, 0x56, 0x87, 0x6f, 0xef, 0x73, 0x12, 0x85, 0xf8, 0x31, 0x88, 0xb2, 0x07, 0xa6, 0x86, 0x90, 0xa4, 0x0e, 0x76, 0xed, 0x23, 0xe2, 0xc5, 0xe4, 0x9f, 0xcf, 0x60, 0x4f, 0x1c, 0x5d, 0x7d, 0x7d, 0xf3, 0x65, 0x00, 0x5d, 0x40, 0xe2, 0x09, 0xf4, 0xda, 0x7b, 0xb0, 0x6f, 0x31, 0x0d, 0x5a, 0x16, 0x60, 0xad, 0x62, 0x36, 0x57, 0x7f, 0xbb, 0x47, 0x95, 0x52, 0x61, 0xf5, 0x07, 0xd2, 0x3b, 0x83, 0x01, 0x3f, 0xfb, 0x95, 0x1b, 0xd7, 0x69, 0x08, 0xe7, 0x6c, }; static const unsigned char ecdsa_secp384r1_sha512_9994_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9994_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9994 = { .name = "ecdsa_secp384r1_sha512_9994", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9994_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9994_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9994_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9995 for ECDSA, tcId is 363 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9995_pubkey[] = { 0xa2, 0xad, 0x0e, 0x27, 0xb4, 0x04, 0x10, 0xd1, 0x60, 0x77, 0xdd, 0xc5, 0xe4, 0x15, 0xf1, 0x09, 0xd3, 0x28, 0xbf, 0x75, 0xe7, 0x3a, 0x0f, 0x56, 0x87, 0x6f, 0xef, 0x73, 0x12, 0x85, 0xf8, 0x31, 0x88, 0xb2, 0x07, 0xa6, 0x86, 0x90, 0xa4, 0x0e, 0x76, 0xed, 0x23, 0xe2, 0xc5, 0xe4, 0x9f, 0xcf, 0x60, 0x4f, 0x1c, 0x5d, 0x7d, 0x7d, 0xf3, 0x65, 0x00, 0x5d, 0x40, 0xe2, 0x09, 0xf4, 0xda, 0x7b, 0xb0, 0x6f, 0x31, 0x0d, 0x5a, 0x16, 0x60, 0xad, 0x62, 0x36, 0x57, 0x7f, 0xbb, 0x47, 0x95, 0x52, 0x61, 0xf5, 0x07, 0xd2, 0x3b, 0x83, 0x01, 0x3f, 0xfb, 0x95, 0x1b, 0xd7, 0x69, 0x08, 0xe7, 0x6c, }; static const unsigned char ecdsa_secp384r1_sha512_9995_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9995_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9995 = { .name = "ecdsa_secp384r1_sha512_9995", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9995_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9995_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9995_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 363 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9996 for ECDSA, tcId is 364 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9996_pubkey[] = { 0xa2, 0x33, 0x02, 0x5c, 0x12, 0xd2, 0x0f, 0x49, 0xdc, 0x50, 0xdc, 0x80, 0x2e, 0x79, 0xf0, 0x3c, 0x7c, 0xe1, 0x75, 0x0b, 0x92, 0x04, 0xb5, 0x13, 0x25, 0xd9, 0x0b, 0x5a, 0xde, 0x08, 0xf4, 0xa7, 0x4e, 0xf6, 0xef, 0xb0, 0x81, 0xed, 0x31, 0x56, 0xd6, 0x4a, 0x01, 0x10, 0xd6, 0x0f, 0xff, 0xab, 0xb9, 0x24, 0x88, 0x18, 0x91, 0xee, 0x98, 0x4c, 0xf5, 0x19, 0x49, 0xde, 0xe9, 0x6c, 0xfd, 0x7c, 0x97, 0x59, 0xb1, 0xff, 0x00, 0xf0, 0xdb, 0xdc, 0x71, 0x8d, 0x52, 0x11, 0x70, 0x79, 0xd5, 0xd8, 0xbd, 0x6c, 0x86, 0xc6, 0xf5, 0x32, 0x27, 0x6a, 0xf3, 0x8b, 0x77, 0x9b, 0xf2, 0x35, 0x0d, 0x7f, }; static const unsigned char ecdsa_secp384r1_sha512_9996_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9996_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9996 = { .name = "ecdsa_secp384r1_sha512_9996", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9996_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9996_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9996_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 364 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9997 for ECDSA, tcId is 365 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9997_pubkey[] = { 0x3c, 0x9b, 0xb6, 0x36, 0x07, 0xcd, 0xea, 0x05, 0x85, 0xf3, 0x8d, 0x97, 0x80, 0xc9, 0xac, 0x3e, 0x9a, 0x5a, 0x58, 0x15, 0x3e, 0x2a, 0xac, 0xc4, 0xbc, 0x7a, 0x1d, 0x63, 0x8d, 0x12, 0xe3, 0x2c, 0x4d, 0x3a, 0x90, 0xc0, 0xc1, 0x14, 0xb2, 0x32, 0xc6, 0xf1, 0x6e, 0x23, 0xe4, 0xbe, 0xbb, 0x24, 0xda, 0x2a, 0xc2, 0xcc, 0xed, 0xc5, 0x49, 0x4f, 0xe5, 0x34, 0xa9, 0xab, 0xae, 0xa3, 0x01, 0x3d, 0xe0, 0x17, 0x6f, 0x1b, 0x0e, 0x91, 0xbc, 0xd6, 0x21, 0x54, 0xbd, 0xf3, 0xf6, 0x04, 0x09, 0x1a, 0x50, 0x08, 0xb2, 0x46, 0x67, 0x02, 0xd0, 0xe2, 0xf9, 0x3e, 0x4a, 0x4b, 0x6c, 0x60, 0x1a, 0x54, }; static const unsigned char ecdsa_secp384r1_sha512_9997_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9997_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9997 = { .name = "ecdsa_secp384r1_sha512_9997", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9997_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9997_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9997_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 365 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9998 for ECDSA, tcId is 366 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9998_pubkey[] = { 0x55, 0x9a, 0x66, 0xef, 0x77, 0x75, 0x2f, 0xd8, 0x56, 0x97, 0x6f, 0x36, 0xed, 0x31, 0x56, 0x19, 0x93, 0x22, 0x04, 0x59, 0x9b, 0xd7, 0xef, 0x91, 0xd1, 0xa5, 0x3a, 0xc1, 0xe7, 0xc9, 0x0b, 0x39, 0x69, 0xca, 0xb8, 0x14, 0x3b, 0x7a, 0x53, 0xc4, 0xbf, 0x5a, 0x3f, 0xe3, 0x9f, 0x64, 0x9e, 0xb6, 0x1f, 0x00, 0xf8, 0x6d, 0xd8, 0xb8, 0x55, 0x6c, 0x48, 0x15, 0xb2, 0xa0, 0x1c, 0x59, 0xeb, 0x6c, 0xc0, 0x3c, 0x97, 0xb9, 0x4b, 0x6d, 0xb4, 0x31, 0x82, 0x49, 0xfe, 0x48, 0x9e, 0x36, 0xac, 0x96, 0x35, 0x87, 0x6b, 0x1c, 0xa2, 0xec, 0x09, 0x99, 0xca, 0xef, 0x5e, 0x1a, 0x6a, 0x58, 0xa7, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_9998_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9998_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9998 = { .name = "ecdsa_secp384r1_sha512_9998", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9998_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9998_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9998_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 366 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 9999 for ECDSA, tcId is 367 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_9999_pubkey[] = { 0x05, 0x48, 0xe7, 0x9a, 0x17, 0xfd, 0x3a, 0x11, 0x4d, 0x83, 0x0e, 0xa8, 0x8f, 0x21, 0x8e, 0xe1, 0xef, 0x7a, 0xa3, 0xf8, 0xdc, 0x13, 0x9e, 0x0a, 0x8b, 0x9b, 0x60, 0xe2, 0x50, 0x49, 0xa8, 0x16, 0xef, 0x44, 0x9e, 0x8b, 0xd5, 0xda, 0xe8, 0x67, 0x44, 0x64, 0x95, 0xfd, 0xf2, 0x0f, 0x47, 0x70, 0x03, 0x63, 0xa1, 0xe8, 0xaf, 0xef, 0xb0, 0x2e, 0xbf, 0xd5, 0x9d, 0xf9, 0x0b, 0x6d, 0x23, 0xff, 0x7d, 0x5f, 0x70, 0x6f, 0x9b, 0x26, 0xda, 0xeb, 0xae, 0x1d, 0x46, 0x57, 0xac, 0x34, 0x28, 0x44, 0xee, 0x9c, 0x2e, 0x0e, 0x92, 0x69, 0xf7, 0xef, 0xe7, 0xab, 0x91, 0xe0, 0x30, 0x3c, 0x11, 0x5d, }; static const unsigned char ecdsa_secp384r1_sha512_9999_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_9999_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_9999 = { .name = "ecdsa_secp384r1_sha512_9999", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_9999_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_9999_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_9999_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 367 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10000 for ECDSA, tcId is 368 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10000_pubkey[] = { 0xa0, 0xeb, 0x67, 0x06, 0x30, 0xf9, 0xbb, 0xbd, 0x96, 0x3c, 0x57, 0x50, 0xde, 0x7b, 0xcb, 0xae, 0x4d, 0xdf, 0xd3, 0x7b, 0x13, 0xfe, 0x76, 0x90, 0xee, 0xc6, 0x86, 0x1a, 0x3c, 0x56, 0xc8, 0xef, 0xb8, 0x7d, 0xbb, 0xf8, 0x5c, 0xcd, 0x95, 0x3c, 0x65, 0x9d, 0x38, 0x2c, 0x3d, 0x7d, 0xf7, 0x6a, 0xfb, 0x08, 0x84, 0x06, 0x35, 0xa1, 0x6a, 0xc7, 0xec, 0xf3, 0xde, 0x2d, 0xc2, 0x8a, 0x77, 0xc8, 0xaf, 0x9d, 0x49, 0xe5, 0xa8, 0x32, 0x55, 0x1e, 0x33, 0x54, 0xa2, 0xb3, 0x11, 0xe5, 0x2b, 0xe8, 0x67, 0x20, 0xd9, 0xb2, 0xfb, 0xb7, 0x8d, 0x11, 0xa8, 0xae, 0xc6, 0x16, 0x06, 0xa2, 0x9f, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_10000_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10000_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10000 = { .name = "ecdsa_secp384r1_sha512_10000", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10000_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10000_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10000_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 368 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10001 for ECDSA, tcId is 369 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10001_pubkey[] = { 0x25, 0x4b, 0xce, 0x30, 0x41, 0xb0, 0x04, 0x68, 0x44, 0x5c, 0xb9, 0xae, 0x59, 0x7b, 0xc7, 0x6c, 0x12, 0x79, 0xa8, 0x50, 0x61, 0x42, 0xce, 0x24, 0x27, 0x18, 0x5b, 0x1d, 0x7f, 0x75, 0x3d, 0x1c, 0x0a, 0xad, 0x94, 0x15, 0x6b, 0x53, 0x1a, 0x20, 0x71, 0xaa, 0x61, 0xc8, 0x3e, 0xc8, 0x42, 0xa3, 0x71, 0x0d, 0x6c, 0x8c, 0x96, 0x76, 0x6a, 0xe8, 0xb6, 0x33, 0x96, 0x13, 0x3e, 0x58, 0x72, 0x80, 0x5e, 0x47, 0xd9, 0xba, 0x39, 0x11, 0x3e, 0x12, 0x2d, 0x67, 0x6d, 0x54, 0xdb, 0xb2, 0x46, 0x0b, 0x59, 0xd9, 0x86, 0xbd, 0xd3, 0x3b, 0xe3, 0x46, 0xc0, 0x21, 0xe8, 0xa7, 0x1b, 0xb4, 0x1b, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha512_10001_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10001_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10001 = { .name = "ecdsa_secp384r1_sha512_10001", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10001_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10001_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10001_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 369 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10002 for ECDSA, tcId is 370 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10002_pubkey[] = { 0x91, 0x29, 0xdb, 0x44, 0x46, 0xc2, 0xc5, 0x98, 0xc4, 0xf8, 0x10, 0x70, 0xf7, 0x0f, 0x66, 0xc3, 0x7c, 0x39, 0x32, 0x3e, 0x01, 0x41, 0x8c, 0x09, 0x5d, 0xe9, 0x90, 0x2e, 0x0e, 0x1b, 0x20, 0xf2, 0x6b, 0xc3, 0xe0, 0x11, 0xba, 0x84, 0xc1, 0x06, 0x26, 0xff, 0xdc, 0xe8, 0x36, 0x69, 0x0c, 0x9f, 0x8e, 0x4a, 0x10, 0x4f, 0xec, 0x4a, 0xaa, 0x43, 0x50, 0xc2, 0x38, 0x61, 0x7e, 0xe5, 0x04, 0x56, 0xac, 0xcc, 0x49, 0xef, 0xc3, 0xb7, 0x3e, 0xb9, 0x54, 0x8e, 0x16, 0x00, 0xc2, 0x48, 0x3f, 0x1c, 0x4b, 0xae, 0x9d, 0xdf, 0x3f, 0xf9, 0x2a, 0xf1, 0x7a, 0xfd, 0x19, 0xf8, 0x62, 0x74, 0x58, 0x9c, }; static const unsigned char ecdsa_secp384r1_sha512_10002_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10002_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10002 = { .name = "ecdsa_secp384r1_sha512_10002", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10002_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10002_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10002_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 370 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10003 for ECDSA, tcId is 371 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10003_pubkey[] = { 0xa7, 0x01, 0xa8, 0x11, 0x1c, 0xdf, 0x97, 0xce, 0xd7, 0x4a, 0x00, 0xa4, 0x51, 0x4b, 0x2b, 0x52, 0x6b, 0xe8, 0x11, 0x3e, 0x7d, 0xf6, 0xcf, 0x71, 0x63, 0xaa, 0xee, 0x46, 0x58, 0x80, 0xd2, 0x62, 0x75, 0xb8, 0x33, 0xb1, 0x86, 0xd8, 0x0f, 0x18, 0x62, 0xdc, 0x67, 0xff, 0x76, 0x8d, 0xde, 0x43, 0xe5, 0xa9, 0x91, 0xf1, 0x6f, 0x8f, 0x77, 0x73, 0x11, 0xb1, 0x7e, 0xab, 0xdc, 0x90, 0xb6, 0xec, 0xe3, 0xb5, 0xda, 0x77, 0x6c, 0xfb, 0xeb, 0xbc, 0x50, 0x43, 0x82, 0xca, 0x1a, 0xba, 0xe1, 0xc6, 0xaa, 0x6a, 0x64, 0xd9, 0xc4, 0x11, 0x10, 0xd9, 0x79, 0x50, 0x51, 0x4e, 0x99, 0x57, 0x8e, 0xd8, }; static const unsigned char ecdsa_secp384r1_sha512_10003_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10003_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10003 = { .name = "ecdsa_secp384r1_sha512_10003", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10003_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10003_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10003_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 371 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10004 for ECDSA, tcId is 372 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10004_pubkey[] = { 0xa7, 0x01, 0xa8, 0x11, 0x1c, 0xdf, 0x97, 0xce, 0xd7, 0x4a, 0x00, 0xa4, 0x51, 0x4b, 0x2b, 0x52, 0x6b, 0xe8, 0x11, 0x3e, 0x7d, 0xf6, 0xcf, 0x71, 0x63, 0xaa, 0xee, 0x46, 0x58, 0x80, 0xd2, 0x62, 0x75, 0xb8, 0x33, 0xb1, 0x86, 0xd8, 0x0f, 0x18, 0x62, 0xdc, 0x67, 0xff, 0x76, 0x8d, 0xde, 0x43, 0xe5, 0xa9, 0x91, 0xf1, 0x6f, 0x8f, 0x77, 0x73, 0x11, 0xb1, 0x7e, 0xab, 0xdc, 0x90, 0xb6, 0xec, 0xe3, 0xb5, 0xda, 0x77, 0x6c, 0xfb, 0xeb, 0xbc, 0x50, 0x43, 0x82, 0xca, 0x1a, 0xba, 0xe1, 0xc6, 0xaa, 0x6a, 0x64, 0xd9, 0xc4, 0x11, 0x10, 0xd9, 0x79, 0x50, 0x51, 0x4e, 0x99, 0x57, 0x8e, 0xd8, }; static const unsigned char ecdsa_secp384r1_sha512_10004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10004_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10004 = { .name = "ecdsa_secp384r1_sha512_10004", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10004_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10004_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10004_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 372 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10005 for ECDSA, tcId is 373 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10005_pubkey[] = { 0xb6, 0x81, 0x5b, 0xa0, 0x54, 0x13, 0xbc, 0xf3, 0x4f, 0x4c, 0x07, 0x04, 0xaf, 0x59, 0x0c, 0x19, 0x98, 0xd7, 0xfc, 0xd1, 0x69, 0x54, 0x1e, 0x1e, 0xfe, 0x15, 0x67, 0xca, 0x1d, 0xd7, 0x1a, 0x22, 0xe3, 0x5a, 0xc8, 0x38, 0xb2, 0x0c, 0x75, 0x28, 0x15, 0x82, 0x04, 0x4a, 0x57, 0xb5, 0x8f, 0x45, 0x6c, 0xdc, 0xeb, 0x10, 0x61, 0x20, 0x62, 0x77, 0x9a, 0xba, 0xdd, 0x87, 0x42, 0xc6, 0xe9, 0x3e, 0xd7, 0x4a, 0xdf, 0x30, 0x6f, 0x3b, 0x3a, 0x0f, 0x96, 0xb7, 0x0d, 0xd1, 0x13, 0x4b, 0x75, 0x58, 0xb6, 0x4b, 0x55, 0xb2, 0x00, 0xc5, 0x73, 0x2c, 0x50, 0xf0, 0x5a, 0xa0, 0x32, 0xae, 0x7c, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_10005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10005_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10005 = { .name = "ecdsa_secp384r1_sha512_10005", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10005_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10005_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10005_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 373 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10006 for ECDSA, tcId is 374 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10006_pubkey[] = { 0x1a, 0xf1, 0x98, 0x41, 0xff, 0x3d, 0xf8, 0xbd, 0xc4, 0xf8, 0xcc, 0xe9, 0x57, 0xe0, 0xda, 0xb7, 0x63, 0xef, 0xe4, 0x13, 0x92, 0x9b, 0x27, 0x9f, 0x1d, 0x46, 0xdd, 0xe1, 0xc6, 0xf2, 0xbb, 0xc5, 0x5a, 0xf1, 0xbb, 0x1d, 0x80, 0x11, 0xfc, 0x58, 0x7a, 0x4d, 0x59, 0x9a, 0x4a, 0xe7, 0xcd, 0x8d, 0x5f, 0x66, 0x38, 0x60, 0xc4, 0x3c, 0x88, 0xe0, 0x83, 0x99, 0xf0, 0x0e, 0xf6, 0x64, 0x11, 0x23, 0x78, 0x79, 0x56, 0xa2, 0xb7, 0x01, 0x28, 0x83, 0xb5, 0xff, 0x7c, 0x46, 0xbd, 0x15, 0x6d, 0x96, 0xd3, 0xc0, 0x2a, 0x63, 0xef, 0x86, 0xe0, 0x60, 0xa2, 0xa0, 0xfa, 0x5b, 0x80, 0xd0, 0xc0, 0xe5, }; static const unsigned char ecdsa_secp384r1_sha512_10006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10006_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10006 = { .name = "ecdsa_secp384r1_sha512_10006", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10006_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10006_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10006_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 374 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10007 for ECDSA, tcId is 375 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10007_pubkey[] = { 0x68, 0x36, 0x08, 0x4f, 0xdd, 0xfc, 0xfd, 0x52, 0x7c, 0xb3, 0x84, 0x7f, 0xb8, 0xb9, 0x11, 0xc0, 0xfa, 0x00, 0x25, 0x37, 0xfa, 0x46, 0x0c, 0xa8, 0xf5, 0xd4, 0x0f, 0x02, 0x56, 0x03, 0xa4, 0xd8, 0x9a, 0xa6, 0xec, 0x64, 0x0f, 0xde, 0x0c, 0xc4, 0xb3, 0x1c, 0x46, 0x23, 0x9a, 0x1d, 0x0b, 0xb7, 0x6b, 0xee, 0xd7, 0x01, 0x98, 0x92, 0xe8, 0x72, 0x87, 0xe2, 0x3f, 0x0d, 0x35, 0x09, 0x3a, 0xb1, 0x4c, 0x4d, 0x41, 0xc0, 0xef, 0xe8, 0x46, 0x3e, 0xde, 0x34, 0x94, 0x23, 0x0a, 0x38, 0x4e, 0xb1, 0xbc, 0x41, 0x0d, 0xe9, 0x18, 0xc5, 0x48, 0x4a, 0x25, 0x64, 0x07, 0x41, 0xac, 0xb8, 0xcc, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha512_10007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10007_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10007 = { .name = "ecdsa_secp384r1_sha512_10007", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10007_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10007_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10007_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 375 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10008 for ECDSA, tcId is 376 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10008_pubkey[] = { 0xb4, 0xb2, 0xd5, 0xa8, 0xb5, 0x0f, 0xfa, 0xbd, 0x34, 0x74, 0x8e, 0x94, 0x49, 0x8c, 0x1d, 0x47, 0x28, 0xd0, 0x84, 0xf9, 0x43, 0xfb, 0xdd, 0xd4, 0xb3, 0xb6, 0xee, 0x16, 0xea, 0xa4, 0xda, 0x91, 0x61, 0x3a, 0x82, 0xc9, 0x80, 0x17, 0x13, 0x2c, 0x94, 0xcd, 0x6f, 0xe4, 0xb8, 0x72, 0x32, 0xf1, 0x6d, 0x61, 0x22, 0x28, 0xed, 0x5d, 0x7d, 0x08, 0xbf, 0x0c, 0x86, 0x99, 0x67, 0x7e, 0x3b, 0x8f, 0x3e, 0x71, 0x80, 0x73, 0xb9, 0x45, 0xa6, 0xc1, 0x08, 0xd9, 0x7a, 0x3b, 0x14, 0x33, 0xc7, 0x90, 0x52, 0xb2, 0x65, 0x5a, 0x18, 0xa3, 0xb2, 0xe6, 0x21, 0xba, 0xa8, 0x81, 0x98, 0xcb, 0x5f, 0x3c, }; static const unsigned char ecdsa_secp384r1_sha512_10008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10008_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10008 = { .name = "ecdsa_secp384r1_sha512_10008", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10008_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10008_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10008_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 376 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10009 for ECDSA, tcId is 377 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10009_pubkey[] = { 0x84, 0x2b, 0x3d, 0x89, 0xe5, 0x4d, 0x9a, 0x4b, 0x56, 0x94, 0xd9, 0x25, 0x1b, 0xba, 0x20, 0xae, 0x48, 0x54, 0xc5, 0x10, 0xdc, 0x0b, 0x6e, 0xf7, 0x03, 0x3e, 0x40, 0x45, 0xba, 0x4e, 0x64, 0xb6, 0xdd, 0xcd, 0x36, 0x29, 0x9a, 0xac, 0x55, 0x4d, 0xba, 0xc6, 0xdb, 0x3e, 0x27, 0xc9, 0x81, 0x23, 0x86, 0x82, 0x58, 0x19, 0x02, 0x97, 0xe1, 0xd6, 0xba, 0xe6, 0x48, 0xa6, 0xde, 0xe2, 0x28, 0x58, 0x86, 0x23, 0x3a, 0xfd, 0x1c, 0x3d, 0x6f, 0x19, 0x6a, 0xd1, 0xdb, 0x14, 0x26, 0x2a, 0x57, 0x9d, 0x74, 0xcf, 0x78, 0x55, 0xff, 0xfc, 0x65, 0xf5, 0xab, 0xd2, 0x42, 0xb1, 0x35, 0xae, 0x87, 0xdf, }; static const unsigned char ecdsa_secp384r1_sha512_10009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10009_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10009 = { .name = "ecdsa_secp384r1_sha512_10009", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10009_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10009_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10009_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 377 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10010 for ECDSA, tcId is 378 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10010_pubkey[] = { 0x9a, 0xb7, 0x3d, 0xcf, 0xff, 0xc8, 0x20, 0xe7, 0x39, 0xa3, 0xed, 0x9c, 0x31, 0x6c, 0x6f, 0x15, 0xd2, 0x7a, 0x03, 0x2f, 0x8a, 0xa5, 0x93, 0x25, 0xf7, 0x84, 0x2c, 0xf4, 0xa3, 0x41, 0x98, 0xac, 0x6f, 0xf0, 0x9e, 0xb1, 0xa3, 0x11, 0xce, 0x22, 0x6b, 0xf1, 0xab, 0xb4, 0x9d, 0x80, 0x85, 0x11, 0x01, 0x35, 0xf4, 0xb0, 0xc2, 0xb6, 0xb1, 0x95, 0xda, 0x9b, 0xbe, 0x19, 0x93, 0xe9, 0x85, 0xb8, 0x60, 0x76, 0x64, 0xf1, 0xa4, 0xb3, 0xd4, 0x99, 0xea, 0x1a, 0x11, 0x2b, 0x6a, 0xfc, 0x7e, 0x6b, 0x88, 0x35, 0x7c, 0x93, 0x48, 0xb6, 0x14, 0xdd, 0xfd, 0xc8, 0x46, 0xa3, 0xf3, 0x8b, 0xbd, 0xca, }; static const unsigned char ecdsa_secp384r1_sha512_10010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10010_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10010 = { .name = "ecdsa_secp384r1_sha512_10010", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10010_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10010_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10010_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 378 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10011 for ECDSA, tcId is 379 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10011_pubkey[] = { 0x28, 0x77, 0x1b, 0x13, 0x7f, 0xb7, 0xd7, 0x4c, 0x0e, 0xd0, 0x29, 0x04, 0x16, 0xf4, 0x7c, 0x81, 0x18, 0x99, 0x79, 0x23, 0xc7, 0xb3, 0xb7, 0x17, 0xfb, 0xbd, 0x53, 0x08, 0xa4, 0xbb, 0x0e, 0x49, 0x47, 0x14, 0xbd, 0x3f, 0x1f, 0xf5, 0xe9, 0xe3, 0x68, 0x88, 0x73, 0x77, 0x28, 0x42, 0x72, 0xeb, 0xf9, 0x2e, 0x5d, 0xf4, 0x76, 0xa2, 0xfa, 0x09, 0x06, 0xce, 0x4f, 0xad, 0x12, 0x1c, 0x64, 0x1a, 0xbb, 0x53, 0x9a, 0xb4, 0xef, 0x27, 0x0c, 0xd8, 0xf0, 0x49, 0x7c, 0xc3, 0xe6, 0xe0, 0x5b, 0x18, 0x56, 0x1b, 0x73, 0x06, 0x70, 0xf0, 0x10, 0x74, 0x12, 0x38, 0xa5, 0xd0, 0x7b, 0x07, 0x70, 0x45, }; static const unsigned char ecdsa_secp384r1_sha512_10011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10011_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10011 = { .name = "ecdsa_secp384r1_sha512_10011", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10011_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10011_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10011_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 379 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10012 for ECDSA, tcId is 380 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10012_pubkey[] = { 0x9d, 0x1b, 0xaa, 0xd2, 0x17, 0x82, 0x9d, 0x5f, 0x2d, 0x7d, 0xb5, 0xbd, 0x08, 0x5e, 0x91, 0x26, 0x23, 0x2e, 0x8c, 0x49, 0xc5, 0x87, 0x07, 0xcb, 0x15, 0x3d, 0xb1, 0xd1, 0xe2, 0x0a, 0x10, 0x9c, 0x90, 0xf7, 0xbc, 0xba, 0xe4, 0xf2, 0xc7, 0x4d, 0x65, 0x95, 0x20, 0x7c, 0xb0, 0xe5, 0xdd, 0x27, 0x1e, 0xea, 0x30, 0x75, 0x2a, 0x14, 0x25, 0x90, 0x5d, 0x08, 0x11, 0xd0, 0xf4, 0x20, 0x19, 0xe5, 0x08, 0x81, 0x42, 0xb4, 0x19, 0x45, 0xbe, 0xe0, 0x39, 0x48, 0xf2, 0x06, 0xf2, 0xe7, 0xc3, 0xc1, 0x08, 0x1b, 0xa9, 0xa2, 0x97, 0x18, 0x0e, 0x36, 0xb2, 0x47, 0xee, 0x9e, 0x70, 0x83, 0x20, 0x35, }; static const unsigned char ecdsa_secp384r1_sha512_10012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10012_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc1, 0x52, 0xaa, 0xfe, 0xa3, 0xa8, 0x61, 0x2e, 0xc8, 0x3a, 0x7d, 0xc9, 0x44, 0x8f, 0x01, 0x94, 0x18, 0x99, 0xd7, 0x04, 0x13, 0x19, 0xbb, 0xd6, 0x0b, 0xfd, 0xfb, 0x3c, 0x03, 0xda, 0x74, 0xc0, 0x0c, 0x8f, 0xc4, 0x17, 0x61, 0x28, 0xa6, 0x26, 0x32, 0x68, 0x71, 0x1e, 0xdc, 0x6e, 0x8e, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10012 = { .name = "ecdsa_secp384r1_sha512_10012", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10012_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10012_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10012_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 380 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10013 for ECDSA, tcId is 381 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10013_pubkey[] = { 0x8e, 0x39, 0xe1, 0xe4, 0x4f, 0x78, 0x2b, 0x81, 0x0e, 0xa9, 0x30, 0x37, 0xc3, 0x44, 0x37, 0x1c, 0x4f, 0xb1, 0x41, 0xc8, 0xbf, 0x19, 0x6e, 0xa6, 0x18, 0xf3, 0xa1, 0x76, 0x54, 0x71, 0x39, 0xa6, 0xd0, 0x21, 0x21, 0xd2, 0x79, 0x4c, 0xbe, 0x64, 0x81, 0x06, 0x16, 0x94, 0xdb, 0x57, 0x93, 0x15, 0xc3, 0x18, 0x4e, 0x8c, 0xd9, 0xb6, 0xc1, 0x6b, 0x37, 0x69, 0x96, 0x33, 0xd8, 0x7f, 0x56, 0x00, 0x65, 0x4b, 0x44, 0xcb, 0xcb, 0x5a, 0xb5, 0x0b, 0xa8, 0x72, 0xdf, 0xa0, 0x01, 0x76, 0x9e, 0xb7, 0x65, 0xb2, 0xd1, 0x90, 0x2e, 0x01, 0xd2, 0xe8, 0xaf, 0x4e, 0x1f, 0xd6, 0xe9, 0xc0, 0xf3, 0x0f, }; static const unsigned char ecdsa_secp384r1_sha512_10013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10013_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x47, 0x64, 0xee, 0xac, 0x3e, 0x7a, 0x08, 0xda, 0xac, 0xfa, 0xd7, 0xd1, 0xe1, 0xe3, 0x69, 0x60, 0x42, 0x16, 0x4b, 0x06, 0xf7, 0x7b, 0xd7, 0x8c, 0x32, 0x13, 0xdd, 0xea, 0x6f, 0x9f, 0xd4, 0x49, 0xa3, 0x4c, 0x97, 0xb9, 0xe5, 0x60, 0xa6, 0xbf, 0x71, 0x95, 0xda, 0x41, 0x33, 0x3c, 0x75, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10013 = { .name = "ecdsa_secp384r1_sha512_10013", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10013_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10013_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10013_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10014 for ECDSA, tcId is 382 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10014_pubkey[] = { 0xb9, 0x6f, 0xca, 0x0e, 0x3f, 0x6e, 0xbf, 0x73, 0x26, 0xf0, 0xa8, 0xce, 0x8b, 0xdf, 0x22, 0x6a, 0x25, 0x60, 0xc2, 0x25, 0x26, 0xbf, 0x15, 0x4f, 0x7b, 0x46, 0x70, 0x10, 0xf3, 0xa4, 0x6b, 0xac, 0xa7, 0x34, 0x14, 0x07, 0x0d, 0xb0, 0xf7, 0xab, 0x03, 0x9f, 0x34, 0x55, 0x48, 0x45, 0x2a, 0xe2, 0x6f, 0x7b, 0x74, 0x42, 0x74, 0xe9, 0xbd, 0x6c, 0x79, 0x1f, 0x47, 0x51, 0x3e, 0x6b, 0x51, 0xeb, 0x42, 0xfe, 0xa3, 0x81, 0x6b, 0x30, 0x32, 0xb3, 0x3a, 0x81, 0x69, 0x5f, 0x04, 0xd4, 0xe7, 0x75, 0xbe, 0x06, 0x48, 0x4c, 0xf7, 0xe6, 0xa6, 0x9c, 0xba, 0x8b, 0xac, 0xbc, 0xb5, 0x97, 0xb3, 0xe3, }; static const unsigned char ecdsa_secp384r1_sha512_10014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10014_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xcb, 0x4d, 0x5c, 0x0f, 0xf0, 0xab, 0xe2, 0x9b, 0x27, 0x71, 0xfe, 0x9f, 0x17, 0x9a, 0x56, 0x14, 0xe2, 0xe4, 0xc3, 0xcc, 0x11, 0x34, 0xa7, 0xaa, 0xd0, 0x8d, 0x8e, 0xc3, 0xfd, 0x8f, 0xcd, 0x07, 0xfd, 0x34, 0xb3, 0x47, 0x3c, 0xa6, 0x5e, 0xad, 0x1c, 0x7b, 0xb2, 0x0b, 0xcf, 0x3e, 0xa5, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10014 = { .name = "ecdsa_secp384r1_sha512_10014", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10014_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10014_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10014_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10015 for ECDSA, tcId is 383 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10015_pubkey[] = { 0x4f, 0xd5, 0x2b, 0x11, 0xff, 0x74, 0x7b, 0x59, 0xef, 0x60, 0x9e, 0x06, 0x5a, 0x46, 0x2c, 0xd8, 0x5b, 0x73, 0x17, 0x2d, 0x20, 0xf4, 0x06, 0xfd, 0xd8, 0x45, 0xd4, 0xea, 0xa3, 0xec, 0x17, 0x3e, 0x06, 0xee, 0x58, 0xa5, 0x8e, 0x18, 0x10, 0xf0, 0x51, 0xb2, 0x75, 0xbb, 0xaa, 0x47, 0xcc, 0xb4, 0x84, 0xd2, 0x38, 0x2b, 0x9e, 0x72, 0xc5, 0x26, 0xdc, 0x37, 0x64, 0xa1, 0x1a, 0x4a, 0x96, 0x2a, 0x7a, 0x4c, 0x73, 0x55, 0xe6, 0xf0, 0x57, 0xfc, 0x97, 0x6a, 0xb7, 0x3c, 0xc3, 0x84, 0xf9, 0xa2, 0x9d, 0xa5, 0x07, 0x69, 0x80, 0x9e, 0xcb, 0xf3, 0x73, 0x58, 0xdd, 0x83, 0xc7, 0x4f, 0xc2, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_10015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10015_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6e, 0x44, 0x1d, 0xb2, 0x53, 0xbf, 0x79, 0x8d, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0x9d, 0xd0, 0x16, 0x11, 0x04, 0x75, 0xd8, 0x38, 0x1f, 0x65, 0xf7, 0xf2, 0x7f, 0x9e, 0x1c, 0xfc, 0x9b, 0x48, 0xf0, 0x6a, 0x2d, 0xfa, 0x8e, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10015 = { .name = "ecdsa_secp384r1_sha512_10015", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10015_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10015_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10015_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10016 for ECDSA, tcId is 384 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10016_pubkey[] = { 0x7d, 0x12, 0x3e, 0x3d, 0xba, 0xb9, 0x91, 0x3d, 0x69, 0x88, 0x91, 0x02, 0x3e, 0x28, 0x65, 0x4c, 0xba, 0x2a, 0x94, 0xdc, 0x40, 0x8a, 0x0d, 0xc3, 0x86, 0xe6, 0x3d, 0x8d, 0x22, 0xff, 0x0f, 0x33, 0x35, 0x8a, 0x23, 0x18, 0x60, 0xb7, 0xc2, 0xe4, 0xf8, 0x42, 0x9e, 0x9e, 0x8c, 0x9a, 0x1c, 0x5b, 0xe7, 0xc9, 0x5d, 0x18, 0x75, 0xf2, 0x4e, 0xcd, 0xfe, 0xff, 0xc6, 0x13, 0x6c, 0xf5, 0x6f, 0x80, 0x0f, 0x54, 0x34, 0x49, 0x0f, 0x23, 0x4f, 0x14, 0xd7, 0x85, 0x05, 0xc2, 0xd4, 0xae, 0xa5, 0x1e, 0x2a, 0x3a, 0x6a, 0x5d, 0x16, 0x93, 0xe7, 0x2c, 0x4b, 0x1d, 0xd2, 0xa8, 0x74, 0x6b, 0x87, 0x5a, }; static const unsigned char ecdsa_secp384r1_sha512_10016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10016_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x41, 0xdb, 0x25, 0x3b, 0xf7, 0x98, 0xdb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x75, 0x08, 0x6a, 0x43, 0x25, 0x2f, 0xb4, 0x3b, 0x63, 0x19, 0x1e, 0xfc, 0xd0, 0x91, 0x4b, 0x6a, 0xfb, 0x4b, 0xf8, 0xc7, 0x7d, 0x00, 0x8d, 0xbe, 0xac, 0x04, 0x27, 0x7e, 0xf4, 0xaa, 0x59, 0xc3, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10016 = { .name = "ecdsa_secp384r1_sha512_10016", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10016_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10016_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10016_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10017 for ECDSA, tcId is 385 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10017_pubkey[] = { 0x60, 0x8c, 0xe2, 0x3a, 0x38, 0x34, 0x52, 0xf8, 0xf4, 0xdc, 0xc5, 0xc0, 0x08, 0x5d, 0x67, 0x93, 0xec, 0x51, 0x89, 0x85, 0xf0, 0x27, 0x6a, 0x34, 0x09, 0xa2, 0x3d, 0x7b, 0x7c, 0xa7, 0xe7, 0xdc, 0xb1, 0x63, 0x60, 0x1a, 0xca, 0x73, 0x84, 0x0c, 0x3b, 0xd4, 0x70, 0xaf, 0xf7, 0x02, 0x50, 0xbf, 0x67, 0x40, 0x05, 0xa0, 0xbe, 0x08, 0x93, 0x93, 0x39, 0x36, 0x3e, 0x31, 0x4d, 0xca, 0x7e, 0xa6, 0x7a, 0xdf, 0xb6, 0x0c, 0xd5, 0x30, 0x62, 0x8f, 0xe3, 0x5f, 0x05, 0x41, 0x6d, 0xa8, 0xf2, 0x0d, 0x5f, 0xb3, 0xb0, 0xcc, 0xd1, 0x83, 0xa2, 0x1d, 0xbb, 0x41, 0xc4, 0xe1, 0x95, 0xd6, 0x30, 0x3d, }; static const unsigned char ecdsa_secp384r1_sha512_10017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10017_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0xb6, 0x4a, 0x77, 0xef, 0x31, 0xb7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xea, 0x10, 0xd4, 0x86, 0x4a, 0x5f, 0x68, 0x76, 0xc6, 0x32, 0x3d, 0xf9, 0xa1, 0x22, 0x96, 0xd5, 0xf6, 0x97, 0xf1, 0x8e, 0xfa, 0x01, 0x1b, 0x7d, 0x58, 0x08, 0x4e, 0xfd, 0xe9, 0x54, 0xb3, 0x87, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10017 = { .name = "ecdsa_secp384r1_sha512_10017", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10017_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10017_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10017_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10018 for ECDSA, tcId is 386 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10018_pubkey[] = { 0x48, 0xd2, 0x3d, 0xe1, 0x86, 0x94, 0x75, 0xa1, 0xde, 0x53, 0x23, 0x99, 0xda, 0x12, 0x40, 0xba, 0xb5, 0x60, 0xeb, 0x74, 0xa6, 0xc7, 0xb0, 0x87, 0x1b, 0xf8, 0xac, 0x8f, 0xb6, 0xcc, 0x17, 0xcf, 0x7b, 0x34, 0xfc, 0xd7, 0xc7, 0x9f, 0xd9, 0x9c, 0x76, 0xc6, 0x05, 0xbd, 0xf3, 0xfc, 0xbe, 0x18, 0xe1, 0x5b, 0x66, 0xab, 0x91, 0xd0, 0xa0, 0x3e, 0x20, 0x3c, 0x2f, 0xf9, 0x14, 0xd4, 0xbe, 0xdc, 0x38, 0xc1, 0xec, 0x5d, 0xcd, 0x1d, 0x12, 0xdb, 0x9b, 0x43, 0xef, 0x6f, 0x44, 0x58, 0x16, 0x32, 0x68, 0x3b, 0xf7, 0x85, 0xaa, 0x43, 0x26, 0x56, 0x62, 0x27, 0xec, 0xe3, 0xc1, 0x6b, 0xe7, 0x96, }; static const unsigned char ecdsa_secp384r1_sha512_10018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10018_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x53, 0xbf, 0x79, 0x8d, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xb4, 0x2d, 0xa6, 0xd3, 0xe9, 0xa7, 0x2c, 0xde, 0x0b, 0x5c, 0x2d, 0xe6, 0xbf, 0x07, 0x2e, 0x78, 0x0e, 0x94, 0xad, 0x12, 0xdc, 0xab, 0x27, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10018 = { .name = "ecdsa_secp384r1_sha512_10018", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10018_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10018_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10018_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10019 for ECDSA, tcId is 387 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10019_pubkey[] = { 0x5d, 0x5e, 0xb4, 0x70, 0xf9, 0xc6, 0xa0, 0xbb, 0x18, 0xe8, 0x96, 0x0b, 0x67, 0x01, 0x1a, 0xcf, 0x9f, 0x01, 0xdf, 0x40, 0x5a, 0xc5, 0xb4, 0xbf, 0x9f, 0x46, 0x11, 0xd6, 0xa8, 0xaf, 0x1a, 0x26, 0xb1, 0x1b, 0x07, 0x90, 0xe9, 0x3a, 0xe2, 0x36, 0x15, 0x25, 0xdd, 0xe5, 0x1b, 0xac, 0xac, 0x94, 0xd4, 0x2c, 0xe1, 0x51, 0x79, 0x3b, 0x80, 0xce, 0xe6, 0x79, 0xc8, 0x48, 0x36, 0x2e, 0xc2, 0x72, 0x00, 0x03, 0x16, 0x59, 0x0e, 0xbc, 0x91, 0x54, 0x7b, 0x3b, 0x66, 0x08, 0xdf, 0xba, 0xde, 0x21, 0xe0, 0x4d, 0xe1, 0x54, 0x8e, 0xbb, 0x45, 0xcc, 0x47, 0x21, 0xeb, 0x64, 0xa1, 0x6b, 0x83, 0x18, }; static const unsigned char ecdsa_secp384r1_sha512_10019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10019_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x24, 0xc5, 0x3b, 0x0a, 0x00, 0xcf, 0x08, 0x7a, 0x9a, 0x20, 0xa2, 0xb7, 0x8b, 0xc8, 0x1d, 0x5b, 0x38, 0x3d, 0x04, 0xba, 0x9b, 0x55, 0xa5, 0x67, 0x40, 0x52, 0x39, 0xd2, 0x24, 0x38, 0x73, 0x44, 0xc4, 0x1c, 0xce, 0xff, 0x0f, 0x68, 0xff, 0xc9, 0x30, 0xdb, 0xaa, 0x0b, 0x3d, 0x34, 0x6f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10019 = { .name = "ecdsa_secp384r1_sha512_10019", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10019_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10019_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10019_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10020 for ECDSA, tcId is 388 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10020_pubkey[] = { 0x1d, 0xa3, 0x4a, 0x14, 0x9e, 0xd5, 0x62, 0xc8, 0xec, 0x13, 0xe8, 0x4c, 0xb0, 0x67, 0x10, 0x7b, 0xc2, 0x8b, 0x50, 0xbf, 0xa4, 0x75, 0x75, 0xd5, 0xa9, 0x94, 0x8c, 0xde, 0x5a, 0x3d, 0x73, 0x57, 0xc3, 0x8e, 0xa4, 0x1f, 0xcf, 0xcd, 0xd1, 0xab, 0x1a, 0x1b, 0xd9, 0xb6, 0x59, 0x2b, 0x33, 0xd9, 0xe1, 0x4a, 0xed, 0xfd, 0x0c, 0xff, 0xfc, 0xfe, 0xcb, 0xdc, 0x21, 0x27, 0x6e, 0x6a, 0x2c, 0x78, 0xb8, 0x72, 0x94, 0x12, 0xc4, 0x83, 0x39, 0xae, 0x53, 0x8b, 0x79, 0x9b, 0x7d, 0x8e, 0x61, 0x16, 0x30, 0x47, 0xa6, 0x4c, 0xfc, 0xec, 0x90, 0x18, 0xaa, 0x00, 0xf9, 0x9a, 0xe7, 0x40, 0xe3, 0xf3, }; static const unsigned char ecdsa_secp384r1_sha512_10020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10020_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc6, 0x00, 0xcc, 0xb3, 0x9b, 0xb3, 0xe2, 0xd8, 0x5d, 0x88, 0x0d, 0x76, 0xd1, 0xd5, 0x19, 0x20, 0x5f, 0x05, 0x0c, 0x4b, 0x93, 0xde, 0xae, 0x0c, 0x5d, 0x63, 0xe8, 0x89, 0x8c, 0xa8, 0xd7, 0xa5, 0xba, 0xbb, 0xb9, 0x44, 0xde, 0xbe, 0x0f, 0x3c, 0x44, 0x33, 0x2a, 0xae, 0x57, 0x70, 0xcb, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10020 = { .name = "ecdsa_secp384r1_sha512_10020", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10020_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10020_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10020_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10021 for ECDSA, tcId is 389 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10021_pubkey[] = { 0x8b, 0x86, 0x75, 0x21, 0x1b, 0x32, 0x1f, 0x8b, 0x31, 0x8b, 0xa6, 0x03, 0x37, 0xcd, 0xe3, 0x2a, 0x6b, 0x04, 0x24, 0x39, 0x79, 0x54, 0x63, 0x83, 0x12, 0x7a, 0x06, 0x8a, 0x87, 0x49, 0xcb, 0x5e, 0x98, 0xc4, 0x23, 0x1b, 0x19, 0x8d, 0xe6, 0x2a, 0x2b, 0x06, 0x9d, 0x3a, 0x94, 0xd1, 0xc7, 0xb1, 0x9d, 0x33, 0x46, 0x8a, 0x13, 0x0b, 0x4f, 0xef, 0x66, 0xa5, 0x9d, 0x4a, 0xee, 0x00, 0xca, 0x40, 0xbd, 0xbe, 0xaf, 0x04, 0x4b, 0x8b, 0x22, 0x84, 0x1b, 0xb4, 0xc8, 0xba, 0x41, 0x9f, 0x89, 0x1b, 0x38, 0x55, 0xf4, 0xbd, 0xdf, 0x8d, 0xae, 0x35, 0x77, 0xd9, 0x71, 0x20, 0xb9, 0xd3, 0xfa, 0x44, }; static const unsigned char ecdsa_secp384r1_sha512_10021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10021_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0xad, 0x55, 0x01, 0x5c, 0x57, 0x9e, 0xd1, 0x37, 0xc5, 0x82, 0x36, 0xbb, 0x70, 0xfe, 0x6b, 0xe7, 0x66, 0x28, 0xfb, 0xec, 0xe6, 0x44, 0x29, 0xbb, 0x65, 0x52, 0x45, 0xf0, 0x5c, 0xb9, 0x1f, 0x4b, 0x8a, 0x49, 0x9a, 0xe7, 0x88, 0x01, 0x54, 0xba, 0x83, 0xa8, 0x4b, 0xf0, 0x56, 0x9a, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10021 = { .name = "ecdsa_secp384r1_sha512_10021", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10021_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10021_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10021_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10022 for ECDSA, tcId is 390 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10022_pubkey[] = { 0x44, 0x27, 0x66, 0xbd, 0xb8, 0xb2, 0xcf, 0x4f, 0xef, 0x5f, 0x65, 0xd5, 0xd8, 0x6b, 0x61, 0x68, 0x1e, 0xc8, 0x92, 0x20, 0xc9, 0x83, 0xb5, 0x1f, 0x15, 0xbf, 0xe1, 0x2f, 0xb0, 0xbf, 0x97, 0x80, 0xe0, 0xc3, 0x8b, 0xbc, 0xc8, 0x88, 0xaf, 0xb3, 0xc5, 0x5e, 0xe8, 0x28, 0x77, 0x4b, 0x86, 0xf7, 0x56, 0xb7, 0xf3, 0x99, 0xc5, 0x34, 0xc7, 0xac, 0xd4, 0x6b, 0xe4, 0xbc, 0x8b, 0xb3, 0x8f, 0x08, 0x7b, 0x00, 0x23, 0xb8, 0xf5, 0x16, 0x6a, 0xb3, 0x41, 0x92, 0xca, 0x0b, 0x1c, 0xad, 0x62, 0xd6, 0x63, 0xaa, 0x47, 0x4c, 0x6f, 0x92, 0x86, 0xc8, 0xa0, 0x54, 0xef, 0x94, 0xea, 0x42, 0xe3, 0xc7, }; static const unsigned char ecdsa_secp384r1_sha512_10022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10022_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xdb, 0x19, 0x3d, 0x79, 0xe3, 0x59, 0x66, 0x3e, 0x7c, 0xc9, 0xa2, 0x29, 0xe2, 0xa6, 0xac, 0x9e, 0x9d, 0x5c, 0x75, 0x41, 0x7f, 0xa4, 0x55, 0xbc, 0x8e, 0x3b, 0x89, 0x27, 0x4e, 0xe4, 0x7d, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10022 = { .name = "ecdsa_secp384r1_sha512_10022", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10022_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10022_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10022_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10023 for ECDSA, tcId is 391 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10023_pubkey[] = { 0x11, 0x34, 0x2b, 0x31, 0x4f, 0x31, 0x64, 0x89, 0x31, 0xab, 0xb8, 0x97, 0xc1, 0x37, 0x1d, 0xd3, 0xa2, 0x3e, 0x91, 0xf2, 0x40, 0x5c, 0x4a, 0x81, 0x74, 0x4b, 0xe1, 0x8e, 0x75, 0x39, 0x19, 0x75, 0x22, 0x08, 0x77, 0x9d, 0xe2, 0xd5, 0x4e, 0x86, 0x5e, 0xee, 0xfb, 0xb0, 0xbf, 0xb4, 0x99, 0x8a, 0xf5, 0x33, 0xd7, 0xa4, 0xd6, 0xfc, 0x6c, 0xb5, 0xcb, 0x98, 0x91, 0x5c, 0xe0, 0x8d, 0x0f, 0x65, 0x6e, 0x37, 0xa5, 0x02, 0xe7, 0x8f, 0x8c, 0x1b, 0x8b, 0xac, 0xa7, 0x28, 0xc2, 0xec, 0xb0, 0x5a, 0x21, 0x56, 0xf0, 0x1c, 0xff, 0x16, 0x59, 0x5b, 0x36, 0x3c, 0xdb, 0x49, 0xc0, 0x0c, 0x1a, 0xa2, }; static const unsigned char ecdsa_secp384r1_sha512_10023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10023_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe5, 0xa6, 0xae, 0x07, 0xf8, 0x55, 0xf1, 0x4d, 0x93, 0xb8, 0xff, 0x4f, 0x8b, 0xcd, 0x2b, 0x0a, 0x71, 0x72, 0x61, 0xe6, 0x08, 0x9a, 0x53, 0xd5, 0x4b, 0xf8, 0x6e, 0x22, 0xf8, 0xe3, 0x7d, 0x73, 0xaa, 0xa7, 0x60, 0x7c, 0xc2, 0xab, 0x83, 0x14, 0x04, 0xb3, 0xe5, 0xbb, 0x4e, 0x01, 0xe7, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10023 = { .name = "ecdsa_secp384r1_sha512_10023", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10023_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10023_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10023_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10024 for ECDSA, tcId is 392 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10024_pubkey[] = { 0x3c, 0x96, 0xb4, 0x9f, 0xf6, 0x0f, 0xf0, 0x59, 0x51, 0xb7, 0xb1, 0xac, 0xa6, 0x56, 0x64, 0xf1, 0x31, 0x28, 0xb7, 0x14, 0xda, 0x62, 0x06, 0x97, 0xef, 0x0d, 0x90, 0xbf, 0xc0, 0x1e, 0xf6, 0x43, 0xba, 0xa5, 0xc6, 0x08, 0xf1, 0x6c, 0xa8, 0x85, 0x03, 0x83, 0x22, 0xa4, 0x43, 0xae, 0xd3, 0xe6, 0x16, 0x9a, 0x27, 0xf2, 0xea, 0x7a, 0x36, 0x37, 0x6e, 0xf9, 0x2a, 0x90, 0x0e, 0x53, 0x89, 0xa7, 0xb4, 0x41, 0xfd, 0x05, 0x1d, 0x69, 0x3c, 0xe6, 0x52, 0x50, 0xb8, 0x81, 0xcf, 0xdd, 0x64, 0x87, 0x37, 0x03, 0x72, 0x29, 0x2c, 0x84, 0x36, 0x97, 0x42, 0xb1, 0x81, 0x06, 0x18, 0x8b, 0x05, 0xc0, }; static const unsigned char ecdsa_secp384r1_sha512_10024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10024_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10024 = { .name = "ecdsa_secp384r1_sha512_10024", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10024_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10024_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10024_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 392 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10025 for ECDSA, tcId is 393 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10025_pubkey[] = { 0x38, 0x8d, 0xae, 0x49, 0xea, 0x48, 0xaf, 0xb5, 0x58, 0x45, 0x6f, 0xdb, 0x1d, 0x0b, 0x04, 0xd4, 0xf8, 0xf1, 0xc4, 0x6f, 0x14, 0xd2, 0x2d, 0xe2, 0x58, 0x62, 0xd3, 0x50, 0x69, 0xa2, 0x8a, 0xe9, 0x28, 0x4d, 0x7a, 0x80, 0x74, 0x54, 0x6e, 0x77, 0x9a, 0xd2, 0xc5, 0xf1, 0x7c, 0xe9, 0xb8, 0x9b, 0xb3, 0x53, 0x29, 0x8f, 0x3c, 0x52, 0x6a, 0xa0, 0xa1, 0x0e, 0xd2, 0x3b, 0xcb, 0x1e, 0xd9, 0x78, 0x88, 0x12, 0xc8, 0xa3, 0xa6, 0xcb, 0xea, 0x82, 0xa3, 0xd9, 0xd8, 0xd4, 0x65, 0xa4, 0xcc, 0xa5, 0x9d, 0xbd, 0x3d, 0x3d, 0x8a, 0x36, 0x09, 0x8d, 0x64, 0x4f, 0x1b, 0x45, 0xd3, 0x6d, 0xf5, 0x37, }; static const unsigned char ecdsa_secp384r1_sha512_10025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10025_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10025 = { .name = "ecdsa_secp384r1_sha512_10025", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10025_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10025_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10025_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 393 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10026 for ECDSA, tcId is 394 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10026_pubkey[] = { 0xc8, 0x52, 0x00, 0xac, 0x64, 0x11, 0x42, 0x35, 0x73, 0xe3, 0xeb, 0xc1, 0xb7, 0xae, 0xa9, 0x5e, 0x74, 0xad, 0xd5, 0xce, 0x3b, 0x41, 0x28, 0x2b, 0xaa, 0x88, 0x59, 0x72, 0xac, 0xc0, 0x85, 0xc8, 0x36, 0x5c, 0x05, 0xc5, 0x39, 0xce, 0x47, 0xe7, 0x99, 0xaf, 0xc3, 0x53, 0xd6, 0x78, 0x8c, 0xe8, 0x68, 0xcf, 0xce, 0x1e, 0xb2, 0xbf, 0xe0, 0x09, 0x99, 0x00, 0x84, 0xfb, 0x03, 0xc0, 0x91, 0x9a, 0xb8, 0x92, 0x31, 0x3d, 0x7a, 0x12, 0xef, 0xc3, 0x51, 0x4e, 0x82, 0x73, 0x68, 0x5b, 0x90, 0x71, 0x89, 0x2f, 0xae, 0xfc, 0xa4, 0x30, 0x6a, 0xdf, 0x78, 0x54, 0xaf, 0xce, 0xba, 0xff, 0xfb, 0xf4, }; static const unsigned char ecdsa_secp384r1_sha512_10026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10026_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10026 = { .name = "ecdsa_secp384r1_sha512_10026", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10026_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10026_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10026_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 394 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10027 for ECDSA, tcId is 395 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10027_pubkey[] = { 0xe6, 0x3a, 0xe2, 0x88, 0x1e, 0xd6, 0x08, 0x84, 0xef, 0x1a, 0xef, 0x52, 0x17, 0x8a, 0x29, 0x7b, 0xdf, 0xed, 0xf6, 0x7f, 0x4e, 0x3c, 0x1d, 0x87, 0x6a, 0xd1, 0x0b, 0x42, 0xc0, 0x3b, 0x5e, 0x67, 0xf7, 0xf8, 0xcf, 0xaf, 0x4d, 0xfe, 0xa4, 0xde, 0xf7, 0xab, 0x82, 0xfd, 0xe3, 0xed, 0x9b, 0x91, 0x0e, 0x2b, 0xe2, 0x2b, 0xc3, 0xfa, 0x46, 0xa2, 0xed, 0x09, 0x4e, 0xbd, 0x7c, 0x86, 0xa9, 0x51, 0x2c, 0x8c, 0x40, 0xcd, 0x54, 0x2f, 0xb5, 0x39, 0xc3, 0x43, 0x47, 0xef, 0x2b, 0xe4, 0xe7, 0xf1, 0x54, 0x3a, 0xf9, 0x60, 0xfd, 0x23, 0x47, 0x35, 0x4a, 0x7a, 0x1d, 0xf7, 0x1a, 0x23, 0x7d, 0x51, }; static const unsigned char ecdsa_secp384r1_sha512_10027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10027_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10027 = { .name = "ecdsa_secp384r1_sha512_10027", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10027_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10027_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10027_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10028 for ECDSA, tcId is 396 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10028_pubkey[] = { 0xe9, 0xc4, 0x15, 0xf8, 0xa7, 0x20, 0x55, 0x23, 0x95, 0x70, 0xc3, 0xc3, 0x70, 0xcf, 0x93, 0x80, 0xcd, 0xfa, 0xbb, 0x6e, 0xbd, 0xbd, 0x80, 0x58, 0xe2, 0xfc, 0x65, 0x19, 0x30, 0x80, 0x70, 0x78, 0x95, 0xea, 0x15, 0x66, 0xee, 0xb2, 0x61, 0x49, 0x60, 0x3f, 0x4b, 0x4d, 0x4c, 0x1e, 0x79, 0xd4, 0x96, 0xae, 0x17, 0xa0, 0x01, 0x42, 0x4d, 0x21, 0xea, 0xe4, 0xea, 0xa0, 0x10, 0x67, 0x04, 0x8b, 0xcd, 0x91, 0x96, 0x25, 0xfd, 0xd7, 0xef, 0xd8, 0x96, 0xd9, 0x80, 0x63, 0x3a, 0x0e, 0x2c, 0xa1, 0xf8, 0xc9, 0xb0, 0x2c, 0x99, 0xb6, 0x9a, 0x1e, 0x4f, 0xa5, 0x34, 0x68, 0xa2, 0xfe, 0x24, 0x4d, }; static const unsigned char ecdsa_secp384r1_sha512_10028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10028_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10028 = { .name = "ecdsa_secp384r1_sha512_10028", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10028_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10028_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10028_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10029 for ECDSA, tcId is 397 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10029_pubkey[] = { 0x63, 0x72, 0x23, 0xa9, 0x3d, 0xd6, 0x3a, 0xf6, 0xb3, 0x48, 0xf2, 0x46, 0xe7, 0xb3, 0xbc, 0xb3, 0x0b, 0xea, 0xa1, 0xdc, 0xc8, 0x88, 0xaf, 0x8e, 0x12, 0xe5, 0x08, 0x6a, 0xa0, 0x0f, 0x77, 0x92, 0xfb, 0xe4, 0x57, 0x46, 0x3c, 0x52, 0x42, 0x2d, 0x43, 0x5f, 0x43, 0x0a, 0xd1, 0xbb, 0x4b, 0x21, 0xf9, 0xa1, 0xe0, 0x17, 0x58, 0xd1, 0xe0, 0x25, 0xb1, 0x62, 0xd0, 0x9d, 0x3d, 0xf8, 0xb4, 0x03, 0x22, 0x6e, 0xd3, 0xb3, 0x5e, 0x41, 0x4c, 0x41, 0x65, 0x17, 0x40, 0xd5, 0x09, 0xd8, 0xcf, 0x6b, 0x5e, 0x55, 0x81, 0x18, 0x60, 0x7d, 0x10, 0x66, 0x99, 0x02, 0xab, 0xeb, 0xda, 0x3c, 0xa2, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha512_10029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10029_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10029 = { .name = "ecdsa_secp384r1_sha512_10029", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10029_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10029_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10029_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10030 for ECDSA, tcId is 398 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10030_pubkey[] = { 0x7f, 0x4d, 0xc2, 0x39, 0x82, 0xec, 0xc8, 0xb8, 0x4f, 0x54, 0x24, 0x17, 0x15, 0xc7, 0xe9, 0x4e, 0x95, 0x0f, 0x59, 0x6c, 0xe0, 0x33, 0x23, 0x76, 0x39, 0xa1, 0x5f, 0xef, 0xa5, 0xeb, 0x5c, 0x37, 0xcb, 0x2e, 0x56, 0x2d, 0x6d, 0x5b, 0x30, 0x51, 0xea, 0x15, 0x60, 0x0e, 0x33, 0x41, 0xa5, 0x65, 0xfe, 0xd2, 0xb5, 0x5b, 0x89, 0xd2, 0x79, 0x33, 0x21, 0x37, 0x48, 0x87, 0xb7, 0x88, 0x27, 0xee, 0x4c, 0xa2, 0x21, 0x6e, 0xac, 0x29, 0x93, 0xb1, 0xb0, 0x95, 0x84, 0x4d, 0xb7, 0x6a, 0xdc, 0x56, 0x04, 0x50, 0x13, 0x5c, 0x07, 0x2a, 0xc1, 0xa2, 0xc4, 0x16, 0x75, 0x20, 0x23, 0x7f, 0xbc, 0x9d, }; static const unsigned char ecdsa_secp384r1_sha512_10030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10030_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10030 = { .name = "ecdsa_secp384r1_sha512_10030", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10030_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10030_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10030_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10031 for ECDSA, tcId is 399 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10031_pubkey[] = { 0xa0, 0xae, 0x8c, 0x94, 0x9f, 0x63, 0xf1, 0xb6, 0xa5, 0xd0, 0x24, 0xc9, 0x9e, 0x0a, 0x29, 0x6e, 0xcd, 0x12, 0xd1, 0x96, 0xd3, 0xb1, 0x62, 0x5d, 0x4a, 0x76, 0x60, 0x00, 0x82, 0xa1, 0x4d, 0x45, 0x5a, 0xab, 0x26, 0x7c, 0x68, 0xf5, 0x71, 0xd8, 0x9a, 0xd0, 0x61, 0x9c, 0xb8, 0xe4, 0x76, 0xa1, 0x34, 0x63, 0x43, 0x36, 0x61, 0x1e, 0x1f, 0xd1, 0xd7, 0x28, 0xbc, 0xea, 0x58, 0x8d, 0x0e, 0x1b, 0x65, 0x2b, 0xbc, 0xa0, 0xe5, 0x2c, 0x1b, 0xfb, 0xd4, 0x38, 0x7a, 0x63, 0x37, 0xff, 0x41, 0xce, 0x13, 0xa6, 0x5c, 0x83, 0x06, 0x91, 0x5d, 0x2a, 0x39, 0x89, 0x7b, 0x98, 0x5d, 0x90, 0x9b, 0x36, }; static const unsigned char ecdsa_secp384r1_sha512_10031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10031_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10031 = { .name = "ecdsa_secp384r1_sha512_10031", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10031_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10031_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10031_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10032 for ECDSA, tcId is 400 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10032_pubkey[] = { 0x7c, 0xad, 0x16, 0x37, 0x72, 0x1f, 0x59, 0x88, 0xcb, 0x79, 0x67, 0x23, 0x8b, 0x1f, 0x47, 0xfd, 0x0b, 0x63, 0xf3, 0x0f, 0x20, 0x7a, 0x16, 0x59, 0x51, 0xfc, 0x6f, 0xb7, 0x4b, 0xa8, 0x68, 0xe5, 0xb4, 0x62, 0x62, 0x85, 0x95, 0xed, 0xc8, 0x0f, 0x75, 0x18, 0x2e, 0x56, 0x4a, 0x89, 0xc7, 0xa0, 0xfc, 0x04, 0xc4, 0x05, 0x93, 0x8a, 0xab, 0x3d, 0x68, 0x28, 0xe7, 0x2e, 0x86, 0xbc, 0x59, 0xa4, 0x00, 0x71, 0x92, 0x70, 0xf8, 0xee, 0x3c, 0xb5, 0xef, 0x92, 0x9a, 0xb5, 0x32, 0x87, 0xbb, 0x30, 0x8b, 0x51, 0xab, 0xd2, 0xe3, 0xff, 0xbc, 0x3d, 0x93, 0xb8, 0x74, 0x71, 0xbc, 0x2e, 0x37, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10032_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10032 = { .name = "ecdsa_secp384r1_sha512_10032", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10032_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10032_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10032_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10033 for ECDSA, tcId is 401 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10033_pubkey[] = { 0x20, 0x24, 0xec, 0xde, 0x0e, 0x61, 0x26, 0x29, 0x55, 0xb0, 0x30, 0x1a, 0xe6, 0xb0, 0xa4, 0xfb, 0xd7, 0x77, 0x17, 0x62, 0xfe, 0xb2, 0xde, 0x35, 0xee, 0xd1, 0x82, 0x3d, 0x26, 0x36, 0xc6, 0xe0, 0x01, 0xf7, 0xbf, 0xcd, 0xbc, 0x4e, 0x65, 0xb1, 0xea, 0x40, 0x22, 0x40, 0x90, 0x41, 0x19, 0x06, 0xd5, 0x53, 0x62, 0xa5, 0x70, 0xe8, 0x0a, 0x21, 0x26, 0xf0, 0x1d, 0x91, 0x9b, 0x60, 0x84, 0x40, 0x29, 0x40, 0x39, 0xbe, 0x03, 0x41, 0x9d, 0x51, 0x8b, 0x13, 0xcc, 0xa6, 0xa1, 0x59, 0x54, 0x14, 0x71, 0x7f, 0x1b, 0x4d, 0xdb, 0x84, 0x2b, 0x2c, 0x9d, 0x4f, 0x54, 0x3e, 0x68, 0x3b, 0x86, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_10033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10033_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10033 = { .name = "ecdsa_secp384r1_sha512_10033", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10033_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10033_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10033_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10034 for ECDSA, tcId is 402 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10034_pubkey[] = { 0x40, 0xc5, 0xf2, 0x60, 0x89, 0x56, 0x38, 0x0c, 0x39, 0x69, 0x5c, 0x74, 0x57, 0xdd, 0xce, 0x08, 0x80, 0xb5, 0xe8, 0xfa, 0xb0, 0xa9, 0xa3, 0x72, 0x6d, 0x0c, 0x85, 0x35, 0xb2, 0xff, 0x6c, 0xa1, 0x58, 0x14, 0xd8, 0x3e, 0xd8, 0x2c, 0x0a, 0xb3, 0x3a, 0xba, 0x76, 0xe0, 0x5e, 0x5c, 0x04, 0x76, 0xc9, 0xd1, 0x5a, 0x2a, 0x0b, 0x20, 0x41, 0x23, 0x7f, 0xf6, 0x1c, 0x26, 0x51, 0x9d, 0x1d, 0x74, 0xb1, 0x41, 0xd7, 0xa4, 0x49, 0x9f, 0xbd, 0xef, 0xc4, 0x14, 0xa9, 0x00, 0x93, 0x7a, 0x8f, 0xaf, 0x6e, 0xf5, 0x60, 0x55, 0x0c, 0x73, 0xcd, 0xb7, 0xed, 0xfe, 0x93, 0x14, 0xc4, 0x80, 0xbb, 0x2b, }; static const unsigned char ecdsa_secp384r1_sha512_10034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10034_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10034 = { .name = "ecdsa_secp384r1_sha512_10034", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10034_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10034_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10034_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10035 for ECDSA, tcId is 403 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10035_pubkey[] = { 0x74, 0xac, 0xdf, 0xd2, 0xab, 0x76, 0x3c, 0x59, 0x3b, 0xca, 0x30, 0xd2, 0x48, 0xf2, 0xbf, 0x26, 0xf1, 0x84, 0x3a, 0xcf, 0x9e, 0xb8, 0x9b, 0x4d, 0xfc, 0xb8, 0x45, 0x1d, 0x59, 0x68, 0x38, 0x12, 0xcf, 0x3c, 0xbe, 0x9a, 0x26, 0x4e, 0xa4, 0x35, 0x91, 0x2a, 0x89, 0x69, 0xc5, 0x3d, 0x7c, 0xb8, 0x49, 0x6d, 0xcb, 0x0a, 0x4e, 0xfe, 0xd6, 0x9b, 0x87, 0x11, 0x0f, 0xda, 0x20, 0xe6, 0x8e, 0xb6, 0xfe, 0xed, 0x2d, 0x51, 0x01, 0xa4, 0x95, 0x5d, 0x43, 0x75, 0x9f, 0x10, 0xb7, 0x3e, 0x8f, 0xfc, 0x31, 0x31, 0xe0, 0xc1, 0x2a, 0x76, 0x5b, 0x68, 0xbd, 0x21, 0x6e, 0xd1, 0xec, 0x4f, 0x5d, 0x2f, }; static const unsigned char ecdsa_secp384r1_sha512_10035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10035_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10035 = { .name = "ecdsa_secp384r1_sha512_10035", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10035_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10035_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10035_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10036 for ECDSA, tcId is 404 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10036_pubkey[] = { 0xda, 0x35, 0xd6, 0xa8, 0x28, 0x18, 0xae, 0x52, 0x54, 0xcb, 0x65, 0xfc, 0x86, 0xac, 0x42, 0xa4, 0x78, 0x73, 0xab, 0x24, 0x7a, 0x5c, 0xa6, 0x64, 0xe9, 0xf0, 0x95, 0xe8, 0xde, 0x9a, 0x57, 0xfe, 0x72, 0x18, 0x60, 0xe6, 0x6c, 0xbc, 0x6b, 0xd4, 0x99, 0x43, 0x1a, 0x48, 0xa3, 0x99, 0x17, 0x34, 0x94, 0x5b, 0xaa, 0xb2, 0x7c, 0xa6, 0x38, 0x37, 0x37, 0xb7, 0xdd, 0x45, 0x02, 0x3f, 0x99, 0x7a, 0xff, 0x5e, 0x16, 0x5f, 0x0f, 0xd7, 0xd8, 0xe5, 0xc0, 0xb5, 0xf9, 0xc5, 0xe7, 0x31, 0x58, 0x8a, 0xf2, 0xfe, 0x5b, 0xd8, 0x97, 0x6a, 0x0b, 0x87, 0x1c, 0x13, 0x2e, 0xdf, 0x21, 0xf3, 0x63, 0xaf, }; static const unsigned char ecdsa_secp384r1_sha512_10036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10036_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0xe1, 0x60, 0x43, 0xc2, 0xfa, 0xce, 0x20, 0x22, 0x8d, 0xba, 0x63, 0x66, 0xe1, 0x9e, 0xcc, 0x6d, 0xb7, 0x1b, 0x91, 0x8b, 0xbe, 0x8a, 0x89, 0x0b, 0x9d, 0xad, 0x2f, 0xce, 0xad, 0x18, 0x4e, 0x07, 0x1c, 0x9a, 0xc4, 0xac, 0xae, 0xe2, 0xf8, 0x31, 0xa1, 0xe4, 0xcc, 0x33, 0x79, 0x94, 0xf5, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10036 = { .name = "ecdsa_secp384r1_sha512_10036", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10036_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10036_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10036_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 404 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10037 for ECDSA, tcId is 405 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10037_pubkey[] = { 0xda, 0x35, 0xd6, 0xa8, 0x28, 0x18, 0xae, 0x52, 0x54, 0xcb, 0x65, 0xfc, 0x86, 0xac, 0x42, 0xa4, 0x78, 0x73, 0xab, 0x24, 0x7a, 0x5c, 0xa6, 0x64, 0xe9, 0xf0, 0x95, 0xe8, 0xde, 0x9a, 0x57, 0xfe, 0x72, 0x18, 0x60, 0xe6, 0x6c, 0xbc, 0x6b, 0xd4, 0x99, 0x43, 0x1a, 0x48, 0xa3, 0x99, 0x17, 0x34, 0x6b, 0xa4, 0x55, 0x4d, 0x83, 0x59, 0xc7, 0xc8, 0xc8, 0x48, 0x22, 0xba, 0xfd, 0xc0, 0x66, 0x85, 0x00, 0xa1, 0xe9, 0xa0, 0xf0, 0x28, 0x27, 0x1a, 0x3f, 0x4a, 0x06, 0x3a, 0x18, 0xce, 0xa7, 0x74, 0x0d, 0x01, 0xa4, 0x26, 0x68, 0x95, 0xf4, 0x78, 0xe3, 0xec, 0xd1, 0x21, 0xde, 0x0c, 0x9c, 0x50, }; static const unsigned char ecdsa_secp384r1_sha512_10037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10037_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0xe1, 0x60, 0x43, 0xc2, 0xfa, 0xce, 0x20, 0x22, 0x8d, 0xba, 0x63, 0x66, 0xe1, 0x9e, 0xcc, 0x6d, 0xb7, 0x1b, 0x91, 0x8b, 0xbe, 0x8a, 0x89, 0x0b, 0x9d, 0xad, 0x2f, 0xce, 0xad, 0x18, 0x4e, 0x07, 0x1c, 0x9a, 0xc4, 0xac, 0xae, 0xe2, 0xf8, 0x31, 0xa1, 0xe4, 0xcc, 0x33, 0x79, 0x94, 0xf5, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10037 = { .name = "ecdsa_secp384r1_sha512_10037", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10037_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10037_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10037_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 405 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10038 for ECDSA, tcId is 406 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10038_pubkey[] = { 0x82, 0x00, 0x64, 0x19, 0x3c, 0x71, 0xc7, 0x14, 0x1f, 0xe4, 0x1e, 0x71, 0x1f, 0xe8, 0x43, 0xa7, 0x47, 0x4b, 0xe6, 0xb0, 0x5f, 0x50, 0xcb, 0x0b, 0xe4, 0x11, 0xcd, 0xf7, 0xfc, 0x78, 0xea, 0x7e, 0xc9, 0x6a, 0xeb, 0x39, 0x91, 0xef, 0x76, 0x46, 0xbb, 0xde, 0x59, 0x15, 0x2d, 0x38, 0x1a, 0x32, 0x63, 0x1c, 0x5a, 0xdf, 0x93, 0xd4, 0x88, 0xb4, 0x5e, 0x67, 0xcc, 0x98, 0x90, 0xd8, 0xe7, 0x79, 0xf6, 0x39, 0x60, 0x19, 0x3d, 0xc1, 0x6b, 0xd1, 0xcc, 0x13, 0x6b, 0x3e, 0x28, 0xcf, 0x49, 0x9d, 0xfa, 0x8e, 0x7b, 0xff, 0x48, 0x2a, 0x01, 0x15, 0xe6, 0x08, 0x39, 0x87, 0xf7, 0xc0, 0x42, 0xfc, }; static const unsigned char ecdsa_secp384r1_sha512_10038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10038_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10038 = { .name = "ecdsa_secp384r1_sha512_10038", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10038_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10038_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10038_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 406 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10039 for ECDSA, tcId is 407 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10039_pubkey[] = { 0x52, 0xfa, 0xbc, 0x58, 0xea, 0xcf, 0xd3, 0xa4, 0x82, 0x8f, 0x51, 0xc4, 0x13, 0x20, 0x5c, 0x20, 0x88, 0x89, 0x41, 0xee, 0x45, 0xec, 0xac, 0x07, 0x6f, 0xfc, 0x23, 0x14, 0x5d, 0x83, 0x54, 0x20, 0x34, 0xaa, 0x01, 0x25, 0x3d, 0x6e, 0xbf, 0x34, 0xee, 0xef, 0xaa, 0x37, 0x1d, 0x6c, 0xee, 0x11, 0x9f, 0x34, 0x07, 0x12, 0xcd, 0x78, 0x15, 0x57, 0x12, 0x74, 0x65, 0x78, 0xf5, 0x63, 0x2d, 0xed, 0x2b, 0x2e, 0x5a, 0xfb, 0x43, 0xb0, 0x85, 0xf8, 0x17, 0x32, 0x79, 0x21, 0x08, 0xe3, 0x31, 0xa4, 0xb5, 0x0d, 0x27, 0xf3, 0x57, 0x82, 0x52, 0xff, 0xb0, 0xda, 0xa9, 0xd7, 0x86, 0x55, 0xa0, 0xab, }; static const unsigned char ecdsa_secp384r1_sha512_10039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10039_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10039 = { .name = "ecdsa_secp384r1_sha512_10039", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10039_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10039_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10039_sig, .siglen = 97, .result = -1, .comment = "point with x-coordinate 0, tcId is 407 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10040 for ECDSA, tcId is 408 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10040_pubkey[] = { 0xa8, 0xfd, 0xb1, 0xa0, 0x22, 0xd4, 0xe3, 0xa7, 0xee, 0x29, 0x61, 0x2b, 0xb1, 0x10, 0xac, 0xbe, 0xa2, 0x7d, 0xae, 0xcb, 0x82, 0x7d, 0x34, 0x4c, 0xb6, 0xc6, 0xa7, 0xac, 0xad, 0x61, 0xd3, 0x71, 0xdd, 0xc7, 0x84, 0x21, 0x47, 0xb7, 0x4a, 0x18, 0x76, 0x7e, 0x61, 0x87, 0x12, 0xf0, 0x4c, 0x1c, 0x64, 0xac, 0x6d, 0xaf, 0x8e, 0x08, 0xcd, 0x7b, 0x90, 0xa0, 0xc9, 0xd9, 0x12, 0x38, 0x84, 0xc7, 0xa7, 0xab, 0xb4, 0x66, 0x4a, 0x75, 0xb0, 0x89, 0x70, 0x64, 0xc3, 0xc8, 0x95, 0x6b, 0x0c, 0xa9, 0xc4, 0x17, 0x23, 0x7f, 0x8d, 0x5a, 0x7d, 0xd8, 0x42, 0x1b, 0x0d, 0x48, 0xc9, 0xd5, 0x2c, 0x7c, }; static const unsigned char ecdsa_secp384r1_sha512_10040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10040_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10040 = { .name = "ecdsa_secp384r1_sha512_10040", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10040_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10040_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10040_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 408 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10041 for ECDSA, tcId is 409 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10041_pubkey[] = { 0x87, 0x8e, 0x41, 0x4a, 0x5d, 0x6a, 0x0e, 0x0d, 0x1a, 0xb3, 0xc5, 0x56, 0x3c, 0x44, 0xe8, 0x0c, 0x3b, 0x2e, 0xf2, 0x65, 0xf2, 0x7a, 0x33, 0xed, 0x5c, 0xac, 0x10, 0x9a, 0xd6, 0x64, 0xc1, 0x26, 0x9b, 0xea, 0xe9, 0x03, 0x1d, 0x8d, 0x17, 0x8c, 0xbf, 0xdb, 0x1b, 0xfa, 0x7c, 0xc3, 0xcc, 0x79, 0xfa, 0xbb, 0xb2, 0xb6, 0xf7, 0xce, 0x54, 0x02, 0x68, 0x63, 0xb0, 0xf2, 0x97, 0xa4, 0xfe, 0x3d, 0xe8, 0x2d, 0x50, 0x44, 0xda, 0xca, 0xfe, 0xde, 0x49, 0xd5, 0xaf, 0xc6, 0x0b, 0xc8, 0x75, 0xf4, 0xb6, 0x59, 0xc0, 0x6c, 0x19, 0xbb, 0x74, 0xc7, 0xc2, 0x73, 0x51, 0x68, 0x7f, 0x52, 0xb4, 0x11, }; static const unsigned char ecdsa_secp384r1_sha512_10041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10041_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10041 = { .name = "ecdsa_secp384r1_sha512_10041", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10041_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10041_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10041_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 409 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10042 for ECDSA, tcId is 410 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10042_pubkey[] = { 0x8f, 0xaa, 0x84, 0x97, 0xae, 0x30, 0x06, 0xb6, 0x12, 0x99, 0x9b, 0x03, 0xf9, 0x1f, 0x78, 0x84, 0xd9, 0x55, 0x43, 0xa2, 0x66, 0x59, 0x8e, 0x89, 0x7b, 0x71, 0xe4, 0x4e, 0xcf, 0xd9, 0xab, 0xd7, 0x90, 0x8b, 0xfd, 0x12, 0x2b, 0xb3, 0x66, 0xc0, 0x16, 0xa5, 0x77, 0xcb, 0x1b, 0x2e, 0x2e, 0x41, 0x2b, 0xb1, 0xa7, 0x19, 0x28, 0x9c, 0x74, 0x98, 0x04, 0xca, 0x67, 0x7d, 0x14, 0xc0, 0x90, 0x0f, 0xab, 0x03, 0x1d, 0xa8, 0xc7, 0x07, 0x24, 0x72, 0x3a, 0x0d, 0x54, 0xe3, 0xa0, 0x03, 0x5d, 0xa7, 0xdc, 0xdd, 0xee, 0xf6, 0xfc, 0xe8, 0x0d, 0xf2, 0xf8, 0x19, 0x40, 0x81, 0x7d, 0x27, 0xb2, 0xb5, }; static const unsigned char ecdsa_secp384r1_sha512_10042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10042_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10042 = { .name = "ecdsa_secp384r1_sha512_10042", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10042_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10042_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10042_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 410 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10043 for ECDSA, tcId is 411 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10043_pubkey[] = { 0xc5, 0x9c, 0xc6, 0x48, 0x62, 0x9e, 0x62, 0xdc, 0x18, 0x55, 0xf6, 0x53, 0x58, 0x3d, 0xa0, 0xac, 0xe6, 0x31, 0xe0, 0xf4, 0xb4, 0x58, 0x9b, 0x7f, 0xe5, 0xcc, 0x44, 0x9e, 0x12, 0xdf, 0x2d, 0xce, 0xeb, 0x86, 0x2c, 0xae, 0x00, 0xcd, 0x10, 0x02, 0x33, 0xb9, 0x99, 0xaf, 0x65, 0x7a, 0xe1, 0x6c, 0xb1, 0x38, 0xf6, 0x59, 0xdc, 0xc8, 0xd3, 0x42, 0xfd, 0x17, 0x66, 0x4d, 0x86, 0xc5, 0xbd, 0xda, 0xa8, 0x66, 0xc2, 0x0b, 0x00, 0x31, 0xf6, 0x5c, 0x84, 0x42, 0xa0, 0xed, 0x62, 0xb3, 0x37, 0xd0, 0x9a, 0xdb, 0x63, 0xa4, 0x43, 0xab, 0x14, 0xe3, 0x58, 0x7b, 0x92, 0x99, 0x05, 0x37, 0x17, 0xf9, }; static const unsigned char ecdsa_secp384r1_sha512_10043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10043_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10043 = { .name = "ecdsa_secp384r1_sha512_10043", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10043_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10043_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10043_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 411 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10044 for ECDSA, tcId is 412 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10044_pubkey[] = { 0x38, 0x6b, 0xdc, 0x98, 0xfe, 0x3c, 0x15, 0x6a, 0x79, 0x0e, 0xee, 0x6d, 0x55, 0x6e, 0x00, 0x36, 0xa4, 0xb8, 0x48, 0x53, 0x35, 0x8b, 0xd5, 0xab, 0x68, 0x56, 0xdb, 0x59, 0x85, 0xb9, 0xe8, 0xea, 0x92, 0xe8, 0xd4, 0xc1, 0xf8, 0xd0, 0x4e, 0xcd, 0x1e, 0x6d, 0xe4, 0x54, 0x8b, 0xf2, 0x88, 0x21, 0x55, 0x03, 0x29, 0x2c, 0x2c, 0x57, 0x0f, 0x57, 0xb4, 0x2f, 0x2c, 0xaf, 0x5e, 0x7a, 0xb9, 0x4d, 0x87, 0x81, 0x7a, 0x80, 0x0b, 0x2a, 0xf6, 0xff, 0xcd, 0x4f, 0x13, 0xe3, 0x0e, 0xdb, 0x8c, 0xaa, 0xf2, 0x3c, 0x6d, 0x5b, 0xe2, 0x2a, 0xbe, 0xa1, 0x8c, 0x2f, 0x94, 0x50, 0xad, 0x1a, 0x47, 0x15, }; static const unsigned char ecdsa_secp384r1_sha512_10044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10044_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10044 = { .name = "ecdsa_secp384r1_sha512_10044", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10044_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10044_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10044_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 412 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10045 for ECDSA, tcId is 413 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10045_pubkey[] = { 0x29, 0x4c, 0x37, 0xb3, 0xec, 0x91, 0xa1, 0xb0, 0x50, 0x00, 0x42, 0xd8, 0xb9, 0x7b, 0xc9, 0x61, 0x9d, 0x17, 0xf7, 0x84, 0xa9, 0xea, 0x52, 0x8c, 0x06, 0x02, 0xd7, 0x00, 0x78, 0x3b, 0xfb, 0xac, 0x9a, 0xc4, 0x9b, 0xff, 0x1e, 0x52, 0x7b, 0x39, 0xbb, 0x2a, 0x49, 0xd1, 0xdc, 0x3a, 0xbd, 0x47, 0x1e, 0x79, 0x86, 0x79, 0xb7, 0xc5, 0x8f, 0x4d, 0xfa, 0x33, 0xcf, 0xe4, 0x0b, 0xb6, 0x2e, 0x7d, 0xf6, 0xd2, 0xf1, 0x90, 0xb0, 0xf3, 0x80, 0x4c, 0x70, 0x0f, 0xa1, 0x9e, 0xba, 0x28, 0xad, 0x7f, 0xd6, 0xed, 0xd7, 0xe3, 0xa7, 0x54, 0xaf, 0x85, 0x29, 0x21, 0xc2, 0x70, 0x5f, 0x44, 0x4f, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha512_10045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10045_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10045 = { .name = "ecdsa_secp384r1_sha512_10045", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10045_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10045_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10045_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 413 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10046 for ECDSA, tcId is 414 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10046_pubkey[] = { 0xba, 0xc7, 0xcd, 0x8a, 0x77, 0x55, 0xa1, 0x74, 0xfa, 0xb5, 0x8e, 0x53, 0x74, 0xec, 0x55, 0xa5, 0xce, 0x53, 0x13, 0x23, 0x5e, 0xc5, 0x1c, 0x91, 0x9c, 0x66, 0x84, 0xbd, 0x49, 0x30, 0x5b, 0x70, 0x05, 0x39, 0x3f, 0x72, 0xbc, 0x4d, 0x81, 0x0c, 0xa8, 0x64, 0xfb, 0x04, 0x6d, 0x2c, 0x83, 0x41, 0x5a, 0x33, 0xb7, 0x7f, 0x41, 0x45, 0x68, 0x0b, 0xde, 0x63, 0xb6, 0x69, 0xea, 0x1f, 0x10, 0xf3, 0xee, 0x18, 0x36, 0x01, 0x8c, 0x11, 0xa6, 0xf9, 0x71, 0x55, 0xd9, 0x08, 0x27, 0xc8, 0x3d, 0xba, 0xc3, 0x88, 0x40, 0x2a, 0xc8, 0xf5, 0x93, 0x68, 0xdd, 0xaf, 0x2c, 0x33, 0x54, 0x86, 0x11, 0xaf, }; static const unsigned char ecdsa_secp384r1_sha512_10046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10046_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10046 = { .name = "ecdsa_secp384r1_sha512_10046", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10046_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10046_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10046_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 414 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10047 for ECDSA, tcId is 415 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10047_pubkey[] = { 0x98, 0x4a, 0x1c, 0x04, 0x44, 0x6a, 0x52, 0xad, 0x6a, 0x54, 0xd6, 0x4f, 0x2c, 0x6c, 0x49, 0xb6, 0x1f, 0x23, 0xab, 0xe7, 0xdc, 0x6f, 0x33, 0x71, 0x48, 0x96, 0xae, 0xfb, 0x0b, 0xef, 0xb9, 0xa5, 0x2b, 0x95, 0xb0, 0x48, 0x56, 0x11, 0x32, 0xc2, 0x8c, 0x98, 0x50, 0xe8, 0x51, 0xa6, 0xd0, 0x0e, 0xb4, 0xe1, 0x9f, 0x9d, 0xe5, 0x9d, 0x30, 0xca, 0x26, 0x80, 0x1f, 0x27, 0x89, 0xa3, 0x33, 0x0b, 0x08, 0x1e, 0x6b, 0xf5, 0x7f, 0x84, 0xf3, 0xc6, 0x10, 0x7d, 0xef, 0xd0, 0x5a, 0x95, 0x9c, 0xef, 0x5f, 0x29, 0x8a, 0xce, 0xa5, 0xa6, 0xb8, 0x7b, 0x38, 0xe2, 0x2c, 0x54, 0x09, 0xec, 0x9f, 0x71, }; static const unsigned char ecdsa_secp384r1_sha512_10047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10047_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10047 = { .name = "ecdsa_secp384r1_sha512_10047", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10047_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10047_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10047_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 415 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10048 for ECDSA, tcId is 416 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10048_pubkey[] = { 0xf0, 0x0d, 0x63, 0x27, 0xb1, 0x22, 0x6e, 0xaa, 0x1b, 0x08, 0x97, 0x29, 0x5e, 0xed, 0xda, 0xdf, 0x75, 0x10, 0x24, 0x9e, 0x6f, 0x0f, 0x81, 0x1b, 0x57, 0xd7, 0x19, 0x7e, 0xb6, 0xe6, 0x11, 0x99, 0xa8, 0xf1, 0xc6, 0x66, 0x5e, 0xc4, 0x82, 0x1d, 0x3e, 0x18, 0x67, 0x5d, 0x53, 0x99, 0xfd, 0xf7, 0x87, 0xbf, 0x1e, 0x3f, 0xb7, 0xfe, 0xe5, 0xcb, 0x35, 0x82, 0xa4, 0x15, 0x98, 0x08, 0xb7, 0x5e, 0x8b, 0x1d, 0xe0, 0x7e, 0xaf, 0xfd, 0x49, 0xd3, 0x88, 0x2d, 0x15, 0xc7, 0x74, 0x43, 0xad, 0x83, 0x21, 0x3d, 0x21, 0xa4, 0xbe, 0x92, 0x85, 0x22, 0x3a, 0xa4, 0x4a, 0x84, 0x0e, 0x47, 0xeb, 0x56, }; static const unsigned char ecdsa_secp384r1_sha512_10048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10048_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10048 = { .name = "ecdsa_secp384r1_sha512_10048", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10048_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10048_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10048_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10049 for ECDSA, tcId is 417 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10049_pubkey[] = { 0x45, 0x2b, 0x04, 0x77, 0x43, 0x34, 0x68, 0x98, 0xb0, 0x87, 0xda, 0xaa, 0xc5, 0xd9, 0x82, 0xd3, 0x78, 0x75, 0x2b, 0xa5, 0x34, 0xe5, 0x69, 0xf2, 0x1a, 0xc5, 0x92, 0xc0, 0x96, 0x54, 0xd0, 0x80, 0x9b, 0x94, 0xcc, 0xf8, 0x22, 0x04, 0x5f, 0x28, 0x85, 0xcb, 0xd3, 0xb2, 0x21, 0x45, 0x3c, 0xd6, 0x68, 0xa0, 0x1f, 0x50, 0x2f, 0x55, 0x1a, 0xf1, 0x4a, 0xab, 0x35, 0xc2, 0xc3, 0x0e, 0xc7, 0xba, 0xc0, 0x70, 0x9f, 0x52, 0x5f, 0xe7, 0x96, 0x04, 0x39, 0xb1, 0xe9, 0xde, 0x53, 0xcd, 0xad, 0x24, 0x5e, 0xfd, 0x89, 0x30, 0x96, 0x7c, 0xde, 0x6c, 0xaf, 0x8d, 0x22, 0x2c, 0x82, 0x00, 0xcd, 0x69, }; static const unsigned char ecdsa_secp384r1_sha512_10049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10049_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10049 = { .name = "ecdsa_secp384r1_sha512_10049", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10049_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10049_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10049_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10050 for ECDSA, tcId is 418 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10050_pubkey[] = { 0x44, 0xa8, 0xf5, 0x47, 0x95, 0xbd, 0xb8, 0x1e, 0x00, 0xfc, 0x84, 0xfa, 0x83, 0x73, 0xd1, 0x25, 0xb1, 0x6d, 0xa6, 0xe2, 0xbf, 0x4c, 0xfa, 0x9e, 0xe1, 0xdc, 0x13, 0xd7, 0xf1, 0x57, 0x39, 0x46, 0x83, 0x96, 0x3c, 0x17, 0x0f, 0x4c, 0x15, 0xe8, 0xcf, 0x21, 0xb5, 0x46, 0x6b, 0x49, 0xfa, 0x72, 0xbb, 0x56, 0x93, 0x65, 0x5b, 0x3e, 0x0a, 0x85, 0xe2, 0x7e, 0x3e, 0x6d, 0x26, 0x5f, 0xba, 0x01, 0x31, 0xf3, 0x08, 0x3b, 0xf4, 0x47, 0xf6, 0x2b, 0x6e, 0x3e, 0x52, 0x75, 0x49, 0x6f, 0x34, 0xda, 0xa5, 0x22, 0xe1, 0x61, 0x95, 0xd8, 0x14, 0x88, 0xa3, 0x1f, 0xe9, 0x82, 0xc2, 0xb7, 0x5f, 0x16, }; static const unsigned char ecdsa_secp384r1_sha512_10050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10050_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10050 = { .name = "ecdsa_secp384r1_sha512_10050", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10050_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10050_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10050_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 418 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10051 for ECDSA, tcId is 419 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10051_pubkey[] = { 0x10, 0xb3, 0x36, 0xb3, 0xaf, 0xb8, 0x0c, 0x80, 0xff, 0x50, 0x71, 0x6e, 0x73, 0x41, 0x10, 0xfe, 0x83, 0xcd, 0x5b, 0x8d, 0x41, 0xd7, 0xf2, 0xf9, 0x4f, 0x0d, 0xec, 0x7e, 0xcf, 0x1f, 0xac, 0xc6, 0x63, 0xba, 0xbb, 0x8e, 0xd9, 0x4e, 0x4b, 0xdf, 0x35, 0x92, 0xe3, 0x74, 0x64, 0x97, 0x0a, 0xfa, 0x9b, 0xe1, 0x44, 0xd3, 0x54, 0xe9, 0xb4, 0x56, 0x87, 0x3c, 0x63, 0x87, 0xa1, 0x2a, 0x3e, 0xef, 0xd3, 0xe2, 0xfe, 0xb6, 0x6f, 0x75, 0x19, 0xac, 0x72, 0xac, 0x50, 0x2c, 0x09, 0xd2, 0x0d, 0x72, 0xca, 0xe9, 0xd0, 0x4c, 0x88, 0x54, 0x9a, 0x28, 0x5c, 0x08, 0x10, 0x23, 0xe1, 0xc1, 0xda, 0x08, }; static const unsigned char ecdsa_secp384r1_sha512_10051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10051_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10051 = { .name = "ecdsa_secp384r1_sha512_10051", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10051_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10051_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10051_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 419 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10052 for ECDSA, tcId is 420 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10052_pubkey[] = { 0x81, 0xf9, 0x26, 0x30, 0x77, 0x87, 0x77, 0xa0, 0x17, 0x81, 0xe7, 0x92, 0x4f, 0xce, 0xd3, 0x5f, 0xc0, 0x90, 0x18, 0xd9, 0xb0, 0x08, 0x20, 0x88, 0x1b, 0x14, 0xa8, 0x14, 0xc1, 0x83, 0x6a, 0x1f, 0x73, 0xc3, 0x64, 0x1f, 0x7a, 0x17, 0xc8, 0x21, 0xff, 0xd9, 0x5d, 0xa9, 0x02, 0xef, 0xe1, 0x32, 0x22, 0x1d, 0x81, 0x32, 0x35, 0x09, 0x39, 0x1f, 0x7b, 0x61, 0xbd, 0x79, 0x60, 0x11, 0x33, 0x7e, 0x6a, 0xf3, 0x6a, 0xe0, 0x79, 0x8c, 0x17, 0x04, 0x3d, 0x79, 0xe8, 0xef, 0xcd, 0xae, 0x8e, 0x72, 0x4a, 0xdf, 0x96, 0xa2, 0x30, 0x92, 0x07, 0xc2, 0xd2, 0xcf, 0xd8, 0x8e, 0x8c, 0x48, 0x3a, 0xcb, }; static const unsigned char ecdsa_secp384r1_sha512_10052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10052_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10052 = { .name = "ecdsa_secp384r1_sha512_10052", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10052_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10052_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10052_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 420 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10053 for ECDSA, tcId is 421 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10053_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_10053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10053_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10053 = { .name = "ecdsa_secp384r1_sha512_10053", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10053_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10053_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10053_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 421 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10054 for ECDSA, tcId is 422 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10054_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha512_10054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10054_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10054 = { .name = "ecdsa_secp384r1_sha512_10054", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10054_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10054_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10054_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 422 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10055 for ECDSA, tcId is 423 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10055_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_10055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10055_sig[] = { 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10055 = { .name = "ecdsa_secp384r1_sha512_10055", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10055_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10055_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10055_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 423 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10056 for ECDSA, tcId is 424 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10056_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha512_10056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10056_sig[] = { 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x32, 0x2f, 0xf6, 0xd1, 0xd1, 0x16, 0x2b, 0x5d, 0xe2, 0x9e, 0xdc, 0xd0, 0xb6, 0x98, 0x03, 0xfe, 0x2f, 0x8a, 0xf8, 0xe3, 0xd1, 0x03, 0xd0, 0xa9, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10056 = { .name = "ecdsa_secp384r1_sha512_10056", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10056_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10056_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10056_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 424 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10057 for ECDSA, tcId is 425 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10057_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_10057_sig[] = { 0x22, 0x90, 0xc8, 0x86, 0xbb, 0xad, 0x8f, 0x53, 0x08, 0x95, 0x83, 0xd5, 0x43, 0xa2, 0x69, 0xa7, 0x27, 0x66, 0x56, 0x26, 0xd6, 0xb9, 0x4a, 0x37, 0x96, 0x32, 0x4c, 0x62, 0xd0, 0x89, 0x88, 0xf6, 0x6f, 0x60, 0x11, 0xe8, 0x45, 0x81, 0x1a, 0x03, 0x58, 0x9e, 0x92, 0xab, 0xe1, 0xf1, 0x7f, 0xaf, 0x66, 0xe2, 0xcb, 0x43, 0x80, 0x99, 0x7f, 0x4e, 0x7f, 0x85, 0x02, 0x25, 0x41, 0xad, 0xb2, 0x2d, 0x24, 0xd1, 0x19, 0x6b, 0xe6, 0x8a, 0x3d, 0xb8, 0x88, 0xb0, 0x3e, 0xb3, 0xd2, 0xd4, 0x0b, 0x0d, 0x9a, 0x3a, 0x6a, 0x00, 0xa1, 0xa4, 0x78, 0x2e, 0xe0, 0xa0, 0x0e, 0x84, 0x10, 0xba, 0x2d, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10057 = { .name = "ecdsa_secp384r1_sha512_10057", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10057_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha512_10057_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 425 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10058 for ECDSA, tcId is 426 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10058_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_10058_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp384r1_sha512_10058_sig[] = { 0x80, 0x71, 0xd8, 0xcf, 0x9d, 0xf9, 0xef, 0xef, 0x69, 0x6e, 0xba, 0xfc, 0x59, 0xf7, 0x4d, 0xb9, 0x0c, 0x1f, 0x1e, 0xcf, 0x5c, 0xcd, 0xe1, 0x88, 0x58, 0xde, 0x22, 0xfe, 0x4d, 0x7d, 0xf2, 0xa2, 0x5c, 0xb3, 0x00, 0x16, 0x95, 0xd7, 0x06, 0xdf, 0xd7, 0x98, 0x4b, 0x39, 0xdf, 0x65, 0xa0, 0xf4, 0x27, 0x29, 0x1e, 0x63, 0x39, 0xc2, 0xa7, 0xfe, 0xd7, 0xa1, 0x74, 0xbb, 0x97, 0xff, 0xe4, 0x1d, 0x8c, 0xfd, 0xc2, 0x0c, 0x12, 0x60, 0xc6, 0xec, 0x85, 0xd7, 0x25, 0x9f, 0x0c, 0xc7, 0x78, 0x1b, 0xf2, 0xae, 0x7a, 0x6e, 0x6f, 0xb4, 0xc0, 0x8e, 0x0d, 0x75, 0xb7, 0x38, 0x1b, 0xb7, 0xd9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10058 = { .name = "ecdsa_secp384r1_sha512_10058", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10058_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10058_msg, .msglen = 3, .sig = ecdsa_secp384r1_sha512_10058_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 426 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10059 for ECDSA, tcId is 427 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10059_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_10059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha512_10059_sig[] = { 0x47, 0x00, 0x14, 0xcc, 0xd7, 0xa1, 0xa5, 0xe5, 0x33, 0x3d, 0x30, 0x1c, 0x8e, 0xa5, 0x28, 0xac, 0x3b, 0x07, 0xb0, 0x19, 0x44, 0xaf, 0x30, 0xce, 0xc6, 0x0f, 0x4b, 0xad, 0x94, 0xdb, 0x10, 0x85, 0x09, 0xe4, 0x5b, 0xa3, 0x81, 0x81, 0x8b, 0x5b, 0xdf, 0xaf, 0x9d, 0xaf, 0x0d, 0x37, 0x23, 0x01, 0xe3, 0xd4, 0x9d, 0x6a, 0x05, 0xa7, 0x55, 0xaa, 0x87, 0x1d, 0x7c, 0xb9, 0x6f, 0xff, 0xb7, 0x9f, 0xed, 0x76, 0x25, 0xf8, 0x3f, 0x69, 0x49, 0x8b, 0xa0, 0x7c, 0x0d, 0x65, 0x16, 0x6a, 0x67, 0x10, 0x7c, 0x9a, 0x17, 0xae, 0x6e, 0x10, 0x28, 0xe2, 0x44, 0x37, 0x7a, 0x44, 0x09, 0x62, 0x17, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10059 = { .name = "ecdsa_secp384r1_sha512_10059", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10059_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10059_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha512_10059_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 427 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10060 for ECDSA, tcId is 428 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10060_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha512_10060_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_10060_sig[] = { 0x37, 0x70, 0x44, 0xd3, 0x43, 0xf9, 0x00, 0x17, 0x5a, 0xc6, 0x83, 0x30, 0x71, 0xbe, 0x74, 0x96, 0x4c, 0xd6, 0x36, 0x41, 0x70, 0x39, 0xe1, 0x0e, 0x83, 0x7d, 0xa9, 0x4b, 0x69, 0x19, 0xbf, 0xfc, 0x3f, 0x5a, 0x51, 0x7b, 0x94, 0x5a, 0x45, 0x08, 0x52, 0xaf, 0x32, 0x59, 0xf5, 0xcb, 0xf1, 0x08, 0x32, 0xea, 0x25, 0x00, 0x63, 0x75, 0xc1, 0x53, 0x58, 0x1e, 0x80, 0xc0, 0x9f, 0x53, 0xad, 0x58, 0x5c, 0x73, 0x6f, 0x82, 0x3c, 0x70, 0x14, 0x7a, 0xba, 0x4f, 0xb4, 0x7b, 0xb0, 0xa2, 0x24, 0xfa, 0xe4, 0xd8, 0x81, 0x9a, 0xda, 0xd8, 0x0d, 0x4c, 0x14, 0x4e, 0xcc, 0x23, 0x80, 0x95, 0x4a, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10060 = { .name = "ecdsa_secp384r1_sha512_10060", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10060_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10060_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha512_10060_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 428 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10061 for ECDSA, tcId is 429 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10061_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_10061_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10061_sig[] = { 0xcc, 0xb1, 0x3c, 0x4d, 0xc9, 0x80, 0x5a, 0x9b, 0x4e, 0x06, 0xee, 0x25, 0xef, 0x8c, 0x75, 0x93, 0xea, 0xff, 0x73, 0x26, 0xc4, 0x32, 0xd4, 0xb1, 0x2b, 0x92, 0x31, 0x63, 0xcf, 0x1c, 0xbe, 0x5f, 0xe1, 0xcf, 0xd3, 0x54, 0x6c, 0x1d, 0x07, 0x61, 0xd8, 0x87, 0x4e, 0x83, 0xff, 0xd2, 0xe1, 0x5d, 0xdb, 0x1b, 0x0c, 0x08, 0x2a, 0xe3, 0x14, 0xb5, 0x39, 0xf0, 0x5e, 0x8a, 0x14, 0xad, 0x51, 0xe5, 0xdb, 0x37, 0xf2, 0x9c, 0xac, 0xea, 0x9b, 0x2a, 0xab, 0x63, 0xa0, 0x49, 0x17, 0xd5, 0x8d, 0x00, 0x8c, 0xf3, 0xf7, 0xba, 0x41, 0xd5, 0xea, 0x28, 0x0f, 0x3b, 0x6a, 0x67, 0xbe, 0x3a, 0xe8, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10061 = { .name = "ecdsa_secp384r1_sha512_10061", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10061_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10061_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10061_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 429 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10062 for ECDSA, tcId is 430 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10062_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_10062_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10062_sig[] = { 0xc7, 0x9a, 0x30, 0xe3, 0x6d, 0x21, 0x26, 0xb3, 0x48, 0xdd, 0x9e, 0xb2, 0xf5, 0xdb, 0x6a, 0xa9, 0x8f, 0x79, 0xd8, 0x02, 0x14, 0x02, 0x7e, 0x51, 0xbc, 0xf3, 0xca, 0xbe, 0xc1, 0x88, 0xa7, 0xeb, 0xaf, 0x25, 0xcb, 0x7b, 0xbe, 0x9e, 0xc6, 0xbf, 0xed, 0x13, 0x5e, 0x2a, 0x3b, 0x70, 0xe9, 0x16, 0x24, 0x13, 0x38, 0xee, 0x2a, 0xc9, 0x31, 0xad, 0xea, 0x9a, 0x56, 0xe7, 0xbf, 0xe9, 0x09, 0x94, 0x71, 0x28, 0xd5, 0x4d, 0x51, 0x22, 0xa4, 0x7b, 0x00, 0xc2, 0x78, 0xe6, 0x84, 0xe1, 0x01, 0x02, 0x74, 0x0d, 0x26, 0xe8, 0x9e, 0x34, 0x32, 0x90, 0xa5, 0xb2, 0xfa, 0x8b, 0x40, 0x1f, 0xae, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10062 = { .name = "ecdsa_secp384r1_sha512_10062", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10062_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10062_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10062_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 430 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10063 for ECDSA, tcId is 431 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10063_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha512_10063_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10063_sig[] = { 0x0d, 0xf8, 0x2e, 0x4e, 0xc2, 0x96, 0x0e, 0x3d, 0xf6, 0x14, 0xf8, 0xb4, 0x9c, 0xec, 0x9a, 0x4e, 0xe1, 0x05, 0x43, 0x65, 0x41, 0x42, 0x41, 0x36, 0x1f, 0xee, 0xc9, 0xd9, 0xd9, 0xb6, 0x90, 0x9d, 0x87, 0x75, 0xf2, 0x22, 0xec, 0x38, 0x5a, 0x14, 0xaf, 0xab, 0x46, 0x26, 0x6d, 0xb3, 0x90, 0xc3, 0x09, 0x68, 0x48, 0x5e, 0x85, 0x4a, 0xdd, 0xba, 0x0f, 0x83, 0x54, 0xe6, 0x77, 0xe9, 0x55, 0xe1, 0xef, 0x2d, 0xf9, 0x73, 0xd5, 0x64, 0xc4, 0x9f, 0x65, 0xf2, 0x56, 0x2c, 0xb2, 0xa2, 0xb8, 0x0d, 0x75, 0xe9, 0x2f, 0x87, 0x84, 0x04, 0x29, 0x55, 0xf7, 0xb8, 0x76, 0x5f, 0x60, 0x9c, 0xe2, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10063 = { .name = "ecdsa_secp384r1_sha512_10063", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10063_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10063_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10063_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 431 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10064 for ECDSA, tcId is 432 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10064_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_10064_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10064_sig[] = { 0x1f, 0xaf, 0xd8, 0x3d, 0x72, 0x84, 0x22, 0xe1, 0x48, 0x5f, 0x1e, 0x52, 0xe5, 0xb6, 0x31, 0x54, 0x86, 0x47, 0xcc, 0x3c, 0x76, 0xc1, 0x09, 0xc3, 0x17, 0x7a, 0x73, 0x75, 0x1d, 0x91, 0xa1, 0x90, 0x12, 0xfa, 0x46, 0x28, 0xb2, 0x18, 0xf2, 0x22, 0x9f, 0xc4, 0xd5, 0x5f, 0x10, 0x5f, 0xe0, 0x01, 0x44, 0x74, 0xf9, 0xaf, 0x7b, 0x4b, 0x0b, 0xb9, 0x6f, 0xdb, 0x05, 0xae, 0x91, 0x8f, 0x79, 0x90, 0x24, 0xe8, 0xd5, 0xb8, 0x64, 0xe4, 0x9c, 0xcd, 0x04, 0x7c, 0xf9, 0x7e, 0x7b, 0x9f, 0x87, 0x63, 0xcc, 0xe0, 0x15, 0xc1, 0x1c, 0xf1, 0xf4, 0x61, 0xc9, 0x02, 0x7c, 0xb9, 0x01, 0x05, 0x51, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10064 = { .name = "ecdsa_secp384r1_sha512_10064", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10064_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10064_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10064_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 432 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10065 for ECDSA, tcId is 433 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10065_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_10065_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10065_sig[] = { 0xe6, 0x02, 0x5b, 0xb9, 0x57, 0xab, 0x19, 0x7f, 0xb4, 0xc0, 0x80, 0xd0, 0xa5, 0xc6, 0x47, 0xe4, 0x28, 0xaf, 0xb0, 0xd7, 0xcc, 0x23, 0x5c, 0x60, 0x5a, 0xe9, 0x75, 0x45, 0x49, 0x4f, 0xd3, 0x1a, 0x99, 0x79, 0x79, 0x0b, 0xb2, 0xda, 0x6e, 0x1c, 0xf1, 0x86, 0x78, 0x94, 0x22, 0xb1, 0x5c, 0x97, 0x8a, 0xe9, 0x87, 0x22, 0x91, 0x43, 0x0d, 0x1b, 0xb3, 0x71, 0xef, 0x72, 0x36, 0x0d, 0xad, 0x5a, 0xfb, 0xb6, 0xfb, 0x00, 0x1f, 0x40, 0x3d, 0x9a, 0xaa, 0x14, 0x45, 0xf0, 0x32, 0x6e, 0xb1, 0xee, 0xf7, 0x75, 0xc9, 0xdf, 0xe1, 0xd7, 0xef, 0x8b, 0xf4, 0xe7, 0x44, 0x82, 0x21, 0x08, 0xd2, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10065 = { .name = "ecdsa_secp384r1_sha512_10065", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10065_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10065_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10065_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 433 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10066 for ECDSA, tcId is 434 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10066_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha512_10066_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10066_sig[] = { 0x87, 0x7d, 0x55, 0x67, 0xc1, 0x8f, 0xa5, 0x68, 0x25, 0x90, 0x05, 0xa8, 0x9c, 0x23, 0x00, 0xd1, 0xb3, 0x82, 0x5b, 0x73, 0x2f, 0xa1, 0x49, 0x64, 0xc1, 0x47, 0x7d, 0x4b, 0x30, 0x98, 0xaf, 0xd0, 0x93, 0x84, 0xb9, 0x7d, 0x49, 0x74, 0x64, 0xad, 0xba, 0x41, 0xe9, 0xdf, 0x8a, 0x74, 0xd3, 0x39, 0xc4, 0x0f, 0x07, 0x60, 0x71, 0x7b, 0x4b, 0x3b, 0xae, 0x75, 0x74, 0x2b, 0x6d, 0xc3, 0xdc, 0xf0, 0x4c, 0xc2, 0x2a, 0x44, 0x9c, 0xfe, 0xa1, 0x9d, 0x30, 0x5e, 0x06, 0x58, 0xcb, 0x70, 0x5f, 0xda, 0x75, 0x16, 0x3e, 0x73, 0x99, 0xe0, 0xb3, 0x12, 0x5c, 0xa7, 0xd1, 0x91, 0x9c, 0x13, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10066 = { .name = "ecdsa_secp384r1_sha512_10066", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10066_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10066_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10066_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 434 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10067 for ECDSA, tcId is 435 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10067_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_10067_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10067_sig[] = { 0xe7, 0x06, 0xb0, 0x04, 0x5a, 0x6f, 0x54, 0xbd, 0x17, 0x5e, 0x24, 0x37, 0xb4, 0x87, 0x67, 0xb0, 0x20, 0x4f, 0x93, 0xd8, 0xa4, 0xd9, 0xd3, 0xd0, 0x08, 0x38, 0x27, 0x81, 0x37, 0xe5, 0xb6, 0x70, 0xde, 0x43, 0x05, 0xc5, 0xc5, 0x5e, 0x49, 0x05, 0x9b, 0x8b, 0x5f, 0x6e, 0x26, 0x46, 0x54, 0xc9, 0x40, 0x57, 0x41, 0xad, 0xff, 0x94, 0xaf, 0xd9, 0xa8, 0x8e, 0x08, 0xd0, 0xb1, 0x02, 0x19, 0x11, 0xfa, 0x4c, 0xed, 0xb2, 0x46, 0x6b, 0x1a, 0x8f, 0xd3, 0x02, 0xa5, 0xb5, 0xd9, 0x65, 0x66, 0xad, 0xa6, 0x3c, 0xcb, 0x82, 0xb6, 0xc5, 0xe8, 0x45, 0x2f, 0xde, 0x86, 0x0c, 0x54, 0x5e, 0x0a, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10067 = { .name = "ecdsa_secp384r1_sha512_10067", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10067_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10067_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10067_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 435 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10068 for ECDSA, tcId is 436 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10068_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_10068_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10068_sig[] = { 0x0c, 0x57, 0xce, 0x2b, 0xc5, 0x79, 0xfb, 0xd3, 0xa7, 0x59, 0xdf, 0xbf, 0x5e, 0x84, 0xc3, 0xce, 0xf2, 0x41, 0x48, 0x46, 0xa2, 0xe3, 0x00, 0x45, 0x3e, 0x1e, 0x4c, 0x51, 0x88, 0xf2, 0x44, 0x32, 0xb1, 0x4c, 0xa6, 0x47, 0xa7, 0x33, 0xb6, 0xad, 0x35, 0xc9, 0x80, 0xa8, 0x80, 0xd3, 0x61, 0x45, 0xf1, 0x2a, 0x11, 0x9e, 0x22, 0xd4, 0x8b, 0x82, 0x04, 0x9d, 0xf6, 0x11, 0xf1, 0xc8, 0x51, 0xfb, 0x22, 0x79, 0x50, 0x56, 0x49, 0x8a, 0x87, 0x3c, 0x73, 0x0f, 0xcb, 0x9f, 0xd8, 0xf3, 0x14, 0x72, 0x8d, 0xe0, 0x29, 0x8b, 0x9b, 0x22, 0xc3, 0x48, 0xab, 0xc6, 0xde, 0x2a, 0xba, 0x97, 0xe9, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10068 = { .name = "ecdsa_secp384r1_sha512_10068", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10068_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10068_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10068_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 436 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10069 for ECDSA, tcId is 437 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10069_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha512_10069_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10069_sig[] = { 0x9a, 0x8f, 0x80, 0x69, 0x7c, 0xcf, 0x2e, 0x06, 0x17, 0x61, 0x20, 0x27, 0xd8, 0x61, 0xa3, 0xa3, 0xa6, 0x57, 0xfb, 0x75, 0xcc, 0x82, 0x81, 0x0b, 0x40, 0xdd, 0x50, 0x72, 0xd3, 0x9f, 0xf3, 0x7e, 0xca, 0x29, 0x00, 0x83, 0x90, 0xda, 0x35, 0x61, 0x37, 0xe2, 0xc9, 0xba, 0xbd, 0x81, 0x41, 0x98, 0xa8, 0x65, 0x37, 0xa8, 0x3c, 0x3d, 0x57, 0xda, 0x50, 0xe4, 0xb2, 0x9b, 0x47, 0xdc, 0xc3, 0x71, 0x7c, 0x5a, 0x1e, 0xd0, 0xff, 0xf1, 0x8a, 0xde, 0x8d, 0xcc, 0xe4, 0x22, 0x0e, 0xac, 0x63, 0xaa, 0xb6, 0x0b, 0x9b, 0xfe, 0xd5, 0xf1, 0xbd, 0xd2, 0x41, 0xda, 0xb6, 0x55, 0xa9, 0xbd, 0xd7, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10069 = { .name = "ecdsa_secp384r1_sha512_10069", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10069_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10069_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10069_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 437 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10070 for ECDSA, tcId is 438 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10070_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_10070_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10070_sig[] = { 0x93, 0x71, 0x8f, 0x6f, 0x85, 0x42, 0x72, 0x5f, 0x62, 0xde, 0x70, 0x39, 0xfc, 0x19, 0x3d, 0x3f, 0xcc, 0x81, 0xd6, 0x22, 0x23, 0x0c, 0xcc, 0x94, 0xe9, 0xe2, 0x65, 0x39, 0x0b, 0x38, 0x5a, 0xf3, 0xa3, 0xba, 0x50, 0xc9, 0x1a, 0x9d, 0x6a, 0x5b, 0x1e, 0x07, 0xd7, 0x9a, 0xf2, 0xbd, 0x80, 0xb2, 0xd0, 0x84, 0x99, 0xf3, 0xd2, 0x98, 0xe8, 0xaf, 0xec, 0xea, 0x12, 0x22, 0x65, 0xa3, 0x6d, 0xbf, 0x33, 0x72, 0x59, 0x02, 0x06, 0x54, 0x73, 0x97, 0x83, 0xc8, 0xec, 0x8e, 0xf7, 0x83, 0xd0, 0x72, 0x55, 0x5b, 0x59, 0x07, 0x28, 0x5c, 0xe8, 0x3f, 0xc8, 0xce, 0xd9, 0xc8, 0x39, 0x8c, 0x62, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10070 = { .name = "ecdsa_secp384r1_sha512_10070", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10070_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10070_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10070_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 438 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10071 for ECDSA, tcId is 439 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10071_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_10071_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10071_sig[] = { 0xce, 0x26, 0xe4, 0x2c, 0x49, 0x0d, 0xec, 0x92, 0xcf, 0x59, 0xd6, 0xb1, 0xba, 0x75, 0xc9, 0xa1, 0x40, 0x0d, 0x6e, 0x5c, 0x3f, 0xd7, 0xc4, 0x7e, 0x1e, 0xeb, 0x1c, 0xde, 0xd3, 0x0a, 0x3a, 0x3d, 0x18, 0xc8, 0x1c, 0xdf, 0xdc, 0xba, 0xd2, 0x74, 0x2a, 0x97, 0x29, 0x33, 0x69, 0xce, 0x21, 0xc2, 0x94, 0x67, 0x10, 0x85, 0xd9, 0x41, 0xfd, 0x27, 0xd4, 0x95, 0x45, 0x2a, 0x4c, 0x85, 0x59, 0xa1, 0xfe, 0x24, 0xf3, 0x22, 0x5f, 0x5b, 0x8e, 0xf7, 0x5f, 0xaf, 0x9d, 0x3f, 0xb0, 0x13, 0x72, 0xc5, 0x86, 0xe2, 0x3b, 0x82, 0x71, 0x43, 0x59, 0xd0, 0xe4, 0x71, 0x44, 0xff, 0x5d, 0x94, 0x61, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10071 = { .name = "ecdsa_secp384r1_sha512_10071", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10071_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10071_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10071_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 439 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10072 for ECDSA, tcId is 440 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10072_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha512_10072_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10072_sig[] = { 0xff, 0xc4, 0x73, 0x8a, 0xcf, 0x71, 0xf0, 0x4a, 0x13, 0x10, 0x4c, 0x32, 0x8c, 0x13, 0x8b, 0x33, 0x1f, 0xb7, 0x20, 0x2a, 0xef, 0x66, 0xf5, 0x83, 0xba, 0x54, 0x3e, 0xd4, 0x90, 0xd1, 0x29, 0x93, 0xc1, 0x8f, 0x72, 0x4c, 0x81, 0xad, 0x0f, 0x7e, 0xa1, 0x8d, 0xae, 0x35, 0x2e, 0x5c, 0x64, 0x80, 0xe6, 0x7d, 0x4c, 0xcd, 0xeb, 0x68, 0xa9, 0xa7, 0x31, 0xf0, 0x6f, 0x77, 0xea, 0xe0, 0x01, 0x75, 0xbe, 0x07, 0x6d, 0x92, 0x52, 0x9b, 0x10, 0x9a, 0x62, 0x54, 0x26, 0x92, 0xc8, 0x74, 0x9d, 0xdf, 0xde, 0x03, 0xbe, 0xd1, 0xc1, 0x19, 0xa5, 0x90, 0x1a, 0x4e, 0x85, 0x2f, 0x21, 0x15, 0x57, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10072 = { .name = "ecdsa_secp384r1_sha512_10072", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10072_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10072_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10072_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 440 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10073 for ECDSA, tcId is 441 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10073_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_10073_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10073_sig[] = { 0xe6, 0xfa, 0x84, 0x55, 0xbc, 0x14, 0xe7, 0x30, 0xe4, 0xca, 0x1e, 0xb5, 0xfa, 0xf6, 0xc8, 0x18, 0x0f, 0x2f, 0x23, 0x10, 0x69, 0xb9, 0x3a, 0x0b, 0xb1, 0x7d, 0x33, 0xad, 0x55, 0x13, 0xd9, 0x3a, 0x36, 0x21, 0x4f, 0x5c, 0xe8, 0x2c, 0xa6, 0xbd, 0x78, 0x5c, 0xcb, 0xac, 0xf7, 0x24, 0x9a, 0x4c, 0x39, 0x79, 0xb4, 0xb4, 0x80, 0xf4, 0x96, 0x35, 0x7c, 0x25, 0xaa, 0x3f, 0xc8, 0x50, 0xc6, 0x7f, 0xf1, 0xc5, 0xa2, 0xaa, 0xbd, 0x80, 0xb6, 0x02, 0x0d, 0x2e, 0xac, 0x3d, 0xd7, 0x83, 0x3c, 0xf2, 0x38, 0x7d, 0x0b, 0xe6, 0x4d, 0xf5, 0x4a, 0x0e, 0x9b, 0x59, 0xf1, 0x2c, 0x3b, 0xeb, 0xf8, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10073 = { .name = "ecdsa_secp384r1_sha512_10073", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10073_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10073_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10073_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 441 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10074 for ECDSA, tcId is 442 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10074_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_10074_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10074_sig[] = { 0x1b, 0x49, 0xb0, 0x37, 0x78, 0x38, 0x38, 0x86, 0x7f, 0xba, 0xa5, 0x73, 0x05, 0xb2, 0xaa, 0x28, 0xdf, 0x1b, 0x0e, 0xc4, 0x0f, 0x43, 0x14, 0x00, 0x67, 0xfa, 0xfd, 0xea, 0x63, 0xf8, 0x7c, 0x02, 0xdf, 0xb0, 0xe6, 0xf4, 0x1b, 0x76, 0x0f, 0xbd, 0xf5, 0x10, 0x05, 0xe9, 0x0c, 0x0c, 0x37, 0x15, 0xe7, 0xd4, 0xeb, 0x6e, 0xe6, 0x16, 0x11, 0x26, 0x4e, 0xa8, 0xa6, 0x68, 0xa7, 0x02, 0x87, 0xe3, 0xd6, 0x34, 0x89, 0x27, 0x3d, 0xa2, 0xb3, 0x0a, 0xd0, 0xc2, 0x21, 0xf1, 0x89, 0x3f, 0xea, 0xea, 0x3e, 0x87, 0x8c, 0x9a, 0x81, 0xc6, 0xce, 0xc8, 0x65, 0x89, 0x9d, 0xbd, 0xa4, 0xfa, 0x79, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10074 = { .name = "ecdsa_secp384r1_sha512_10074", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10074_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10074_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10074_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 442 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10075 for ECDSA, tcId is 443 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10075_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha512_10075_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10075_sig[] = { 0x91, 0xd9, 0xda, 0x3d, 0x57, 0x74, 0x08, 0x18, 0x9d, 0xca, 0xae, 0x33, 0xd9, 0x5e, 0xd0, 0xa0, 0x11, 0x8a, 0xfd, 0x46, 0x0d, 0x52, 0x28, 0xfa, 0x35, 0x2b, 0x6e, 0xa6, 0x71, 0xb1, 0x72, 0xeb, 0x41, 0x38, 0x16, 0xa7, 0x06, 0x21, 0xdd, 0xaf, 0x23, 0xc5, 0xe2, 0xef, 0x79, 0xdf, 0x0c, 0x11, 0x05, 0x3d, 0xad, 0xbf, 0xcd, 0x56, 0x4b, 0xdd, 0xbe, 0x44, 0xe0, 0xec, 0xb4, 0xd1, 0xe6, 0x08, 0xdb, 0xd3, 0x5d, 0x4e, 0x83, 0xb6, 0x63, 0x4c, 0xc7, 0x2a, 0xfb, 0x87, 0xa2, 0xd6, 0x16, 0x75, 0xee, 0x13, 0x96, 0x0c, 0x24, 0x3f, 0x6b, 0xe7, 0x05, 0x19, 0xe1, 0x67, 0xb1, 0xd3, 0xce, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10075 = { .name = "ecdsa_secp384r1_sha512_10075", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10075_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10075_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10075_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 443 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10076 for ECDSA, tcId is 444 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10076_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_10076_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10076_sig[] = { 0xaf, 0x0e, 0xd6, 0xce, 0x64, 0x19, 0x66, 0x2d, 0xb8, 0x0f, 0x02, 0xa2, 0xb6, 0x32, 0x67, 0x54, 0x45, 0xc7, 0xbf, 0x8a, 0x34, 0xbb, 0xac, 0xdc, 0x81, 0xcc, 0x5d, 0xd3, 0x06, 0xc6, 0x57, 0xca, 0x4c, 0x5a, 0x3f, 0xb1, 0xb0, 0x5f, 0x35, 0x8d, 0x8f, 0x36, 0xfd, 0xa8, 0xae, 0x23, 0x88, 0x06, 0x46, 0xb4, 0x72, 0xc0, 0xba, 0xdb, 0x17, 0xe0, 0x89, 0xc8, 0xf9, 0x69, 0x7f, 0xd0, 0xb4, 0xce, 0x71, 0xf0, 0xf4, 0x47, 0x1b, 0x23, 0x54, 0x83, 0xd4, 0xc8, 0xdd, 0x3d, 0x00, 0xaa, 0x28, 0x2c, 0xde, 0x99, 0x02, 0x53, 0xdf, 0x38, 0xba, 0x73, 0x3b, 0x2a, 0xd8, 0x2a, 0x60, 0x1c, 0x75, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10076 = { .name = "ecdsa_secp384r1_sha512_10076", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10076_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10076_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10076_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 444 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10077 for ECDSA, tcId is 445 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10077_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_10077_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10077_sig[] = { 0xe2, 0xaa, 0x94, 0x68, 0xcc, 0xaa, 0xad, 0xad, 0x8b, 0x9f, 0x43, 0xa4, 0x29, 0xc9, 0x7f, 0x0c, 0x6a, 0x7e, 0xed, 0xcb, 0x4d, 0x4a, 0xf7, 0x2d, 0x63, 0x9d, 0xf0, 0xfe, 0x53, 0xf6, 0x10, 0xb9, 0x53, 0x40, 0x8a, 0x8e, 0x24, 0xe8, 0xdb, 0x13, 0x85, 0x51, 0x77, 0x07, 0x50, 0x68, 0x0f, 0x7a, 0xd8, 0x10, 0x20, 0x84, 0x6d, 0x1c, 0x50, 0xee, 0x9a, 0xe2, 0x36, 0x01, 0xdd, 0x63, 0x8c, 0xb7, 0x1b, 0x38, 0xd3, 0x7f, 0xb5, 0x55, 0x26, 0x8c, 0x2f, 0xa1, 0xad, 0x8a, 0x76, 0x1f, 0xa7, 0xb2, 0x7a, 0xfc, 0xab, 0x2f, 0xa6, 0x92, 0x24, 0xd1, 0xf9, 0x76, 0x69, 0x99, 0x14, 0xe0, 0x9d, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10077 = { .name = "ecdsa_secp384r1_sha512_10077", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10077_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10077_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10077_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 445 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10078 for ECDSA, tcId is 446 in file ecdsa_secp384r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp384r1_sha512_10078_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha512_10078_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha512_10078_sig[] = { 0x6b, 0xf6, 0xfa, 0x7a, 0x66, 0x38, 0x02, 0xc3, 0x38, 0x2c, 0xc5, 0xfd, 0x02, 0x00, 0x4e, 0xc7, 0x1e, 0x5a, 0x03, 0x1e, 0x3d, 0x9b, 0xfc, 0x08, 0x58, 0xfa, 0x99, 0x4e, 0x88, 0x49, 0x7a, 0x77, 0x82, 0x30, 0x8b, 0xc2, 0x65, 0xb8, 0x23, 0x7a, 0x6b, 0xbb, 0xdd, 0x38, 0x65, 0x8b, 0x36, 0xfc, 0x3a, 0x9d, 0x59, 0x41, 0xa0, 0x13, 0xbf, 0x70, 0xd9, 0x9c, 0xc3, 0xff, 0x25, 0x5c, 0xe8, 0x55, 0x73, 0x68, 0x8d, 0xac, 0x40, 0x34, 0x4b, 0x5d, 0xb7, 0x14, 0x4b, 0x19, 0xbf, 0x57, 0xbb, 0x27, 0x01, 0xe6, 0x85, 0x0a, 0x8f, 0x81, 0x97, 0x96, 0xb6, 0x7f, 0x7d, 0x0b, 0x6a, 0xea, 0x7e, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha512_10078 = { .name = "ecdsa_secp384r1_sha512_10078", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha512_10078_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha512_10078_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha512_10078_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 446 in file ecdsa_secp384r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) */ /* Test 10079 for ECDSA, tcId is 1 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10079_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10079_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x01, 0xab, 0xcd, 0x9b, 0xbc, 0x11, 0xd7, 0x7a, 0xe8, 0xaa, 0xcb, 0x4d, 0xc1, 0x13, 0xaa, 0x0d, 0x5a, 0x53, 0xee, 0x51, 0xb5, 0xe4, 0xb1, 0x89, 0xbe, 0xfe, 0xed, 0x46, 0x49, 0xf3, 0x5c, 0x97, 0xfe, 0x59, 0x5e, 0x3e, 0xe8, 0x6b, 0xa4, 0xc3, 0x35, 0x8e, 0x80, 0xdd, 0x91, 0xc4, 0xe7, 0xdb, 0x45, 0xcf, 0xd0, 0xfa, 0x02, 0x7f, 0x18, 0x45, 0x8c, 0x30, 0x60, 0x2d, 0x70, 0x38, 0x51, 0x55, 0x58, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10079 = { .name = "ecdsa_secp521r1_sha3_512_10079", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10079_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10079_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10079_sig, .siglen = 132, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10080 for ECDSA, tcId is 2 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10080_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10080_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10080 = { .name = "ecdsa_secp521r1_sha3_512_10080", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10080_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10080_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10080_sig, .siglen = 132, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10081 for ECDSA, tcId is 3 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10081_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10081_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10081 = { .name = "ecdsa_secp521r1_sha3_512_10081", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10081_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10081_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10081_sig, .siglen = 132, .result = 0, .comment = "length of sequence contains leading 0, tcId is 3 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10082 for ECDSA, tcId is 66 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10082_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10082_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10082 = { .name = "ecdsa_secp521r1_sha3_512_10082", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10082_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10082_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10082_sig, .siglen = 132, .result = 0, .comment = "long form encoding of length of integer, tcId is 66 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10083 for ECDSA, tcId is 67 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10083_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10083_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10083 = { .name = "ecdsa_secp521r1_sha3_512_10083", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10083_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10083_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10083_sig, .siglen = 132, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10084 for ECDSA, tcId is 68 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10084_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10084_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10084 = { .name = "ecdsa_secp521r1_sha3_512_10084", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10084_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10084_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10084_sig, .siglen = 132, .result = 0, .comment = "length of integer contains leading 0, tcId is 68 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10085 for ECDSA, tcId is 69 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10085_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10085_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10085 = { .name = "ecdsa_secp521r1_sha3_512_10085", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10085_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10085_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10085_sig, .siglen = 132, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10086 for ECDSA, tcId is 91 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10086_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10086_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x00, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10086 = { .name = "ecdsa_secp521r1_sha3_512_10086", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10086_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10086_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10086_sig, .siglen = 134, .result = -1, .comment = "appending 0's to integer, tcId is 91 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10087 for ECDSA, tcId is 92 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10087_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10087_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10087 = { .name = "ecdsa_secp521r1_sha3_512_10087", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10087_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10087_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10087_sig, .siglen = 133, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10088 for ECDSA, tcId is 93 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10088_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10088_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10088 = { .name = "ecdsa_secp521r1_sha3_512_10088", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10088_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10088_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10088_sig, .siglen = 132, .result = 0, .comment = "prepending 0's to integer, tcId is 93 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10089 for ECDSA, tcId is 94 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10089_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10089_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10089 = { .name = "ecdsa_secp521r1_sha3_512_10089", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10089_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10089_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10089_sig, .siglen = 132, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10090 for ECDSA, tcId is 96 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10090_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10090_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x05, 0x00, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10090 = { .name = "ecdsa_secp521r1_sha3_512_10090", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10090_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10090_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10090_sig, .siglen = 134, .result = -1, .comment = "appending null value to integer, tcId is 96 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10091 for ECDSA, tcId is 97 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10091_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10091_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10091 = { .name = "ecdsa_secp521r1_sha3_512_10091", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10091_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10091_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10091_sig, .siglen = 133, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10092 for ECDSA, tcId is 112 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10092_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10092_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10092 = { .name = "ecdsa_secp521r1_sha3_512_10092", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10092_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10092_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10092_sig, .siglen = 132, .result = -1, .comment = "dropping value of integer, tcId is 112 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10093 for ECDSA, tcId is 113 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10093_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10093_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10093 = { .name = "ecdsa_secp521r1_sha3_512_10093", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10093_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10093_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10093_sig, .siglen = 132, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10094 for ECDSA, tcId is 116 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10094_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10094_sig[] = { 0x03, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10094 = { .name = "ecdsa_secp521r1_sha3_512_10094", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10094_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10094_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10094_sig, .siglen = 132, .result = -1, .comment = "modify first byte of integer, tcId is 116 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10095 for ECDSA, tcId is 117 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10095_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10095_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x56, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10095 = { .name = "ecdsa_secp521r1_sha3_512_10095", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10095_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10095_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10095_sig, .siglen = 132, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10096 for ECDSA, tcId is 118 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10096_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10096_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0x32, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10096 = { .name = "ecdsa_secp521r1_sha3_512_10096", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10096_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10096_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10096_sig, .siglen = 132, .result = -1, .comment = "modify last byte of integer, tcId is 118 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10097 for ECDSA, tcId is 119 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10097_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10097_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10097 = { .name = "ecdsa_secp521r1_sha3_512_10097", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10097_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10097_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10097_sig, .siglen = 132, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10098 for ECDSA, tcId is 120 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10098_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10098_sig[] = { 0x00, 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10098 = { .name = "ecdsa_secp521r1_sha3_512_10098", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10098_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10098_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10098_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 120 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10099 for ECDSA, tcId is 121 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10099_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10099_sig[] = { 0x00, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10099 = { .name = "ecdsa_secp521r1_sha3_512_10099", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10099_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10099_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10099_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10100 for ECDSA, tcId is 122 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10100_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10100_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10100 = { .name = "ecdsa_secp521r1_sha3_512_10100", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10100_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10100_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10100_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10101 for ECDSA, tcId is 123 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10101_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10101_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x00, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10101 = { .name = "ecdsa_secp521r1_sha3_512_10101", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10101_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10101_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10101_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10102 for ECDSA, tcId is 124 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10102_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10102_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10102 = { .name = "ecdsa_secp521r1_sha3_512_10102", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10102_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10102_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10102_sig, .siglen = 132, .result = 0, .comment = "leading ff in integer, tcId is 124 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10103 for ECDSA, tcId is 125 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10103_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10103_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10103 = { .name = "ecdsa_secp521r1_sha3_512_10103", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10103_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10103_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10103_sig, .siglen = 132, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp521r1_sha3_512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10104 for ECDSA, tcId is 128 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10104_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10104_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10104 = { .name = "ecdsa_secp521r1_sha3_512_10104", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10104_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10104_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10104_sig, .siglen = 132, .result = -1, .comment = "replacing integer with zero, tcId is 128 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10105 for ECDSA, tcId is 129 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10105_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10105_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10105 = { .name = "ecdsa_secp521r1_sha3_512_10105", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10105_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10105_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10105_sig, .siglen = 132, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10106 for ECDSA, tcId is 130 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10106_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10106_sig[] = { 0x03, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xcd, 0xf7, 0x78, 0xea, 0x1d, 0xa4, 0x00, 0x17, 0x29, 0xf3, 0x0b, 0xea, 0x5e, 0x3c, 0xf6, 0x4b, 0x9f, 0x44, 0x21, 0x88, 0x7e, 0x4a, 0xa3, 0xc3, 0xb8, 0xae, 0x86, 0x12, 0x9c, 0x45, 0xcf, 0x0a, 0xbb, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10106 = { .name = "ecdsa_secp521r1_sha3_512_10106", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10106_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10106_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10106_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 130 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10107 for ECDSA, tcId is 131 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10107_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10107_sig[] = { 0x00, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd9, 0x54, 0x6b, 0xdb, 0x16, 0x25, 0xa0, 0xea, 0x52, 0xf3, 0x73, 0xe7, 0xcc, 0x4e, 0xe2, 0xff, 0xfe, 0xcc, 0xb5, 0xf5, 0x0d, 0x37, 0x6b, 0x34, 0x5b, 0x37, 0xa6, 0xa4, 0x5f, 0x23, 0x5e, 0x42, 0xa9, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10107 = { .name = "ecdsa_secp521r1_sha3_512_10107", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10107_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10107_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10107_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10108 for ECDSA, tcId is 132 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10108_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10108_sig[] = { 0xfe, 0x31, 0xe7, 0xe8, 0xfe, 0xe8, 0xbe, 0x05, 0xde, 0xd4, 0x2c, 0x3f, 0x10, 0xff, 0x14, 0xcf, 0xc8, 0x3f, 0xc7, 0x76, 0xdc, 0xa7, 0xbf, 0x80, 0x32, 0xc1, 0xdd, 0x98, 0x40, 0x3f, 0xd5, 0xc8, 0x91, 0x2c, 0x5a, 0x0d, 0x9d, 0x66, 0x1b, 0x2f, 0x7f, 0x41, 0x8c, 0xc0, 0x16, 0xea, 0xba, 0x13, 0x5a, 0x30, 0xf7, 0x94, 0x41, 0x3a, 0x3e, 0xf8, 0x83, 0xf6, 0x0c, 0xe9, 0xa4, 0x82, 0x4b, 0x69, 0x59, 0x4e, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10108 = { .name = "ecdsa_secp521r1_sha3_512_10108", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10108_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10108_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10108_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10109 for ECDSA, tcId is 133 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10109_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10109_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10109_sig[] = { 0x00, 0x31, 0xe7, 0xe8, 0xfe, 0xe8, 0xbe, 0x05, 0xde, 0xd4, 0x2c, 0x3f, 0x10, 0xff, 0x14, 0xcf, 0xc8, 0x3f, 0xc7, 0x76, 0xdc, 0xa7, 0xbf, 0x80, 0x32, 0xc1, 0xdd, 0x98, 0x40, 0x3f, 0xd5, 0xc8, 0x91, 0x26, 0xab, 0x94, 0x24, 0xe9, 0xda, 0x5f, 0x15, 0xad, 0x0c, 0x8c, 0x18, 0x33, 0xb1, 0x1d, 0x00, 0x01, 0x33, 0x4a, 0x0a, 0xf2, 0xc8, 0x94, 0xcb, 0xa4, 0xc8, 0x59, 0x5b, 0xa0, 0xdc, 0xa1, 0xbd, 0x57, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10109 = { .name = "ecdsa_secp521r1_sha3_512_10109", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10109_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10109_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10109_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10110 for ECDSA, tcId is 134 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10110_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10110_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10110_sig[] = { 0xfc, 0x31, 0xe7, 0xe8, 0xfe, 0xe8, 0xbe, 0x05, 0xde, 0xd4, 0x2c, 0x3f, 0x10, 0xff, 0x14, 0xcf, 0xc8, 0x3f, 0xc7, 0x76, 0xdc, 0xa7, 0xbf, 0x80, 0x32, 0xc1, 0xdd, 0x98, 0x40, 0x3f, 0xd5, 0xc8, 0x91, 0x32, 0x08, 0x87, 0x15, 0xe2, 0x5b, 0xff, 0xe8, 0xd6, 0x0c, 0xf4, 0x15, 0xa1, 0xc3, 0x09, 0xb4, 0x60, 0xbb, 0xde, 0x77, 0x81, 0xb5, 0x5c, 0x3c, 0x47, 0x51, 0x79, 0xed, 0x63, 0xba, 0x30, 0xf5, 0x45, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10110 = { .name = "ecdsa_secp521r1_sha3_512_10110", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10110_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10110_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10110_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10111 for ECDSA, tcId is 135 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10111_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10111_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10111_sig[] = { 0x00, 0x31, 0xe7, 0xe8, 0xfe, 0xe8, 0xbe, 0x05, 0xde, 0xd4, 0x2c, 0x3f, 0x10, 0xff, 0x14, 0xcf, 0xc8, 0x3f, 0xc7, 0x76, 0xdc, 0xa7, 0xbf, 0x80, 0x32, 0xc1, 0xdd, 0x98, 0x40, 0x3f, 0xd5, 0xc8, 0x91, 0x2c, 0x5a, 0x0d, 0x9d, 0x66, 0x1b, 0x2f, 0x7f, 0x41, 0x8c, 0xc0, 0x16, 0xea, 0xba, 0x13, 0x5a, 0x30, 0xf7, 0x94, 0x41, 0x3a, 0x3e, 0xf8, 0x83, 0xf6, 0x0c, 0xe9, 0xa4, 0x82, 0x4b, 0x69, 0x59, 0x4e, 0x00, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10111 = { .name = "ecdsa_secp521r1_sha3_512_10111", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10111_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10111_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10111_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10112 for ECDSA, tcId is 136 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10112_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10112_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10112_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x02, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0x9b, 0x44, 0xce, 0x26, 0x9b, 0xd9, 0x9b, 0xf7, 0x48, 0x7e, 0xba, 0x70, 0xcd, 0x06, 0x38, 0x05, 0xd0, 0xa6, 0x71, 0x90, 0xf1, 0xfa, 0xf3, 0x03, 0x2d, 0x16, 0xb1, 0xfe, 0x04, 0xd1, 0x1b, 0x6f, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10112 = { .name = "ecdsa_secp521r1_sha3_512_10112", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10112_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10112_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10112_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10113 for ECDSA, tcId is 137 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10113_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10113_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10113_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0xfe, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa6, 0xa1, 0xc1, 0x17, 0x94, 0x5b, 0x3c, 0xca, 0x71, 0x7f, 0x22, 0x6e, 0x3b, 0x18, 0x24, 0xba, 0x30, 0x2f, 0x05, 0xfd, 0x80, 0xe7, 0xba, 0x73, 0xcf, 0x9f, 0xd2, 0x8f, 0xc7, 0xae, 0xaa, 0xa7, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10113 = { .name = "ecdsa_secp521r1_sha3_512_10113", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10113_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10113_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10113_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10114 for ECDSA, tcId is 138 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10114_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10114_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10114_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x00, 0xab, 0xcd, 0x9b, 0xbc, 0x11, 0xd7, 0x7a, 0xe8, 0xaa, 0xcb, 0x4d, 0xc1, 0x13, 0xaa, 0x0d, 0x5a, 0x53, 0xee, 0x51, 0xb5, 0xe4, 0xb1, 0x89, 0xbe, 0xfe, 0xed, 0x46, 0x49, 0xf3, 0x5c, 0x97, 0xfe, 0x5f, 0x0c, 0xb8, 0x60, 0xe7, 0xe5, 0x93, 0x9f, 0x23, 0x01, 0x11, 0x90, 0x7b, 0xf0, 0xd1, 0x9f, 0xff, 0x95, 0x44, 0x38, 0xc6, 0x8e, 0xa9, 0x44, 0x81, 0xa4, 0xbd, 0xb9, 0x19, 0xc0, 0x1c, 0xf4, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10114 = { .name = "ecdsa_secp521r1_sha3_512_10114", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10114_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10114_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10114_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10115 for ECDSA, tcId is 139 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10115_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10115_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10115_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0xfd, 0xab, 0xcd, 0x9b, 0xbc, 0x11, 0xd7, 0x7a, 0xe8, 0xaa, 0xcb, 0x4d, 0xc1, 0x13, 0xaa, 0x0d, 0x5a, 0x53, 0xee, 0x51, 0xb5, 0xe4, 0xb1, 0x89, 0xbe, 0xfe, 0xed, 0x46, 0x49, 0xf3, 0x5c, 0x97, 0xfe, 0x64, 0xbb, 0x31, 0xd9, 0x64, 0x26, 0x64, 0x08, 0xb7, 0x81, 0x45, 0x8f, 0x32, 0xf9, 0xc7, 0xfa, 0x2f, 0x59, 0x8e, 0x6f, 0x0e, 0x05, 0x0c, 0xfc, 0xd2, 0xe9, 0x4e, 0x01, 0xfb, 0x2e, 0xe4, 0x90, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10115 = { .name = "ecdsa_secp521r1_sha3_512_10115", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10115_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10115_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10115_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10116 for ECDSA, tcId is 140 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10116_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10116_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10116_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x02, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10116 = { .name = "ecdsa_secp521r1_sha3_512_10116", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10116_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10116_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10116_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10117 for ECDSA, tcId is 141 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10117_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10117_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10117_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0xfe, 0x54, 0x32, 0x64, 0x43, 0xee, 0x28, 0x85, 0x17, 0x55, 0x34, 0xb2, 0x3e, 0xec, 0x55, 0xf2, 0xa5, 0xac, 0x11, 0xae, 0x4a, 0x1b, 0x4e, 0x76, 0x41, 0x01, 0x12, 0xb9, 0xb6, 0x0c, 0xa3, 0x68, 0x01, 0xa0, 0xf3, 0x47, 0x9f, 0x18, 0x1a, 0x6c, 0x60, 0xdc, 0xfe, 0xee, 0x6f, 0x84, 0x0f, 0x2e, 0x60, 0x00, 0x6a, 0xbb, 0xc7, 0x39, 0x71, 0x56, 0xbb, 0x7e, 0x5b, 0x42, 0x46, 0xe6, 0x3f, 0xe3, 0x0b, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10117 = { .name = "ecdsa_secp521r1_sha3_512_10117", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10117_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10117_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10117_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10118 for ECDSA, tcId is 142 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10118_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10118_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10118_sig[] = { 0x01, 0xce, 0x18, 0x17, 0x01, 0x17, 0x41, 0xfa, 0x21, 0x2b, 0xd3, 0xc0, 0xef, 0x00, 0xeb, 0x30, 0x37, 0xc0, 0x38, 0x89, 0x23, 0x58, 0x40, 0x7f, 0xcd, 0x3e, 0x22, 0x67, 0xbf, 0xc0, 0x2a, 0x37, 0x6e, 0xd3, 0xa5, 0xf2, 0x62, 0x99, 0xe4, 0xd0, 0x80, 0xbe, 0x73, 0x3f, 0xe9, 0x15, 0x45, 0xec, 0xa5, 0xcf, 0x08, 0x6b, 0xbe, 0xc5, 0xc1, 0x07, 0x7c, 0x09, 0xf3, 0x16, 0x5b, 0x7d, 0xb4, 0x96, 0xa6, 0xb2, 0x01, 0xab, 0xcd, 0x9b, 0xbc, 0x11, 0xd7, 0x7a, 0xe8, 0xaa, 0xcb, 0x4d, 0xc1, 0x13, 0xaa, 0x0d, 0x5a, 0x53, 0xee, 0x51, 0xb5, 0xe4, 0xb1, 0x89, 0xbe, 0xfe, 0xed, 0x46, 0x49, 0xf3, 0x5c, 0x97, 0xfe, 0x5f, 0x0c, 0xb8, 0x60, 0xe7, 0xe5, 0x93, 0x9f, 0x23, 0x01, 0x11, 0x90, 0x7b, 0xf0, 0xd1, 0x9f, 0xff, 0x95, 0x44, 0x38, 0xc6, 0x8e, 0xa9, 0x44, 0x81, 0xa4, 0xbd, 0xb9, 0x19, 0xc0, 0x1c, 0xf4, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10118 = { .name = "ecdsa_secp521r1_sha3_512_10118", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10118_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10118_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10118_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10119 for ECDSA, tcId is 143 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10119_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10119_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10119_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10119 = { .name = "ecdsa_secp521r1_sha3_512_10119", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10119_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10119_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10119_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 143 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10120 for ECDSA, tcId is 144 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10120_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10120_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10120_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10120 = { .name = "ecdsa_secp521r1_sha3_512_10120", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10120_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10120_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10120_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10121 for ECDSA, tcId is 145 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10121_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10121_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10121_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10121 = { .name = "ecdsa_secp521r1_sha3_512_10121", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10121_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10121_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10121_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10122 for ECDSA, tcId is 146 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10122_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10122_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10122_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10122 = { .name = "ecdsa_secp521r1_sha3_512_10122", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10122_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10122_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10122_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10123 for ECDSA, tcId is 147 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10123_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10123_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10123_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10123 = { .name = "ecdsa_secp521r1_sha3_512_10123", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10123_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10123_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10123_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10124 for ECDSA, tcId is 148 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10124_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10124_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10124_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10124 = { .name = "ecdsa_secp521r1_sha3_512_10124", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10124_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10124_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10124_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10125 for ECDSA, tcId is 149 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10125_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10125_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10125_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10125 = { .name = "ecdsa_secp521r1_sha3_512_10125", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10125_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10125_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10125_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10126 for ECDSA, tcId is 150 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10126_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10126_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10126_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10126 = { .name = "ecdsa_secp521r1_sha3_512_10126", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10126_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10126_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10126_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10127 for ECDSA, tcId is 153 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10127_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10127_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10127 = { .name = "ecdsa_secp521r1_sha3_512_10127", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10127_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10127_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10127_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 153 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10128 for ECDSA, tcId is 154 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10128_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10128_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10128 = { .name = "ecdsa_secp521r1_sha3_512_10128", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10128_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10128_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10128_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10129 for ECDSA, tcId is 155 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10129_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10129_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10129 = { .name = "ecdsa_secp521r1_sha3_512_10129", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10129_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10129_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10129_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10130 for ECDSA, tcId is 156 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10130_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10130_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10130 = { .name = "ecdsa_secp521r1_sha3_512_10130", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10130_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10130_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10130_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10131 for ECDSA, tcId is 157 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10131_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10131_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10131 = { .name = "ecdsa_secp521r1_sha3_512_10131", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10131_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10131_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10131_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10132 for ECDSA, tcId is 158 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10132_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10132_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10132 = { .name = "ecdsa_secp521r1_sha3_512_10132", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10132_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10132_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10132_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10133 for ECDSA, tcId is 159 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10133_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10133_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10133 = { .name = "ecdsa_secp521r1_sha3_512_10133", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10133_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10133_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10133_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10134 for ECDSA, tcId is 160 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10134_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10134_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10134 = { .name = "ecdsa_secp521r1_sha3_512_10134", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10134_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10134_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10134_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10135 for ECDSA, tcId is 163 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10135_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10135_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10135 = { .name = "ecdsa_secp521r1_sha3_512_10135", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10135_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10135_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10135_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 163 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10136 for ECDSA, tcId is 164 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10136_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10136_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10136 = { .name = "ecdsa_secp521r1_sha3_512_10136", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10136_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10136_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10136_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10137 for ECDSA, tcId is 165 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10137_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10137_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10137 = { .name = "ecdsa_secp521r1_sha3_512_10137", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10137_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10137_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10137_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10138 for ECDSA, tcId is 166 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10138_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10138_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10138 = { .name = "ecdsa_secp521r1_sha3_512_10138", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10138_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10138_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10138_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10139 for ECDSA, tcId is 167 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10139_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10139_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10139 = { .name = "ecdsa_secp521r1_sha3_512_10139", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10139_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10139_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10139_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10140 for ECDSA, tcId is 168 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10140_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10140_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10140 = { .name = "ecdsa_secp521r1_sha3_512_10140", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10140_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10140_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10140_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10141 for ECDSA, tcId is 169 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10141_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10141_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10141 = { .name = "ecdsa_secp521r1_sha3_512_10141", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10141_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10141_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10141_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10142 for ECDSA, tcId is 170 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10142_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10142_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10142 = { .name = "ecdsa_secp521r1_sha3_512_10142", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10142_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10142_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10142_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10143 for ECDSA, tcId is 173 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10143_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10143_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10143 = { .name = "ecdsa_secp521r1_sha3_512_10143", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10143_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10143_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10143_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 173 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10144 for ECDSA, tcId is 174 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10144_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10144_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10144 = { .name = "ecdsa_secp521r1_sha3_512_10144", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10144_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10144_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10144_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10145 for ECDSA, tcId is 175 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10145_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10145_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10145 = { .name = "ecdsa_secp521r1_sha3_512_10145", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10145_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10145_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10145_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10146 for ECDSA, tcId is 176 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10146_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10146_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10146 = { .name = "ecdsa_secp521r1_sha3_512_10146", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10146_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10146_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10146_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10147 for ECDSA, tcId is 177 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10147_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10147_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10147 = { .name = "ecdsa_secp521r1_sha3_512_10147", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10147_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10147_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10147_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10148 for ECDSA, tcId is 178 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10148_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10148_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10148_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10148 = { .name = "ecdsa_secp521r1_sha3_512_10148", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10148_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10148_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10148_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10149 for ECDSA, tcId is 179 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10149_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10149_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10149_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10149 = { .name = "ecdsa_secp521r1_sha3_512_10149", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10149_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10149_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10149_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10150 for ECDSA, tcId is 180 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10150_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10150_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10150_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10150 = { .name = "ecdsa_secp521r1_sha3_512_10150", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10150_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10150_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10150_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10151 for ECDSA, tcId is 183 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10151_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10151_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10151_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10151 = { .name = "ecdsa_secp521r1_sha3_512_10151", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10151_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10151_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10151_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 183 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10152 for ECDSA, tcId is 184 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10152_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10152_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10152_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10152 = { .name = "ecdsa_secp521r1_sha3_512_10152", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10152_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10152_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10152_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10153 for ECDSA, tcId is 185 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10153_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10153_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10153_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10153 = { .name = "ecdsa_secp521r1_sha3_512_10153", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10153_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10153_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10153_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10154 for ECDSA, tcId is 186 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10154_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10154_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10154_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10154 = { .name = "ecdsa_secp521r1_sha3_512_10154", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10154_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10154_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10154_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10155 for ECDSA, tcId is 187 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10155_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10155_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10155_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10155 = { .name = "ecdsa_secp521r1_sha3_512_10155", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10155_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10155_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10155_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10156 for ECDSA, tcId is 188 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10156_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10156_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10156_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10156 = { .name = "ecdsa_secp521r1_sha3_512_10156", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10156_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10156_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10156_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10157 for ECDSA, tcId is 189 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10157_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10157_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10157_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10157 = { .name = "ecdsa_secp521r1_sha3_512_10157", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10157_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10157_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10157_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10158 for ECDSA, tcId is 190 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10158_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10158_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10158_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10158 = { .name = "ecdsa_secp521r1_sha3_512_10158", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10158_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10158_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10158_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10159 for ECDSA, tcId is 193 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10159_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10159_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10159_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10159 = { .name = "ecdsa_secp521r1_sha3_512_10159", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10159_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10159_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10159_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 193 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10160 for ECDSA, tcId is 194 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10160_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10160_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10160 = { .name = "ecdsa_secp521r1_sha3_512_10160", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10160_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10160_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10160_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10161 for ECDSA, tcId is 195 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10161_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10161_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10161_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10161 = { .name = "ecdsa_secp521r1_sha3_512_10161", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10161_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10161_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10161_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10162 for ECDSA, tcId is 196 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10162_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10162_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10162_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10162 = { .name = "ecdsa_secp521r1_sha3_512_10162", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10162_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10162_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10162_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10163 for ECDSA, tcId is 197 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10163_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10163_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10163_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10163 = { .name = "ecdsa_secp521r1_sha3_512_10163", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10163_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10163_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10163_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10164 for ECDSA, tcId is 198 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10164_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10164_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10164 = { .name = "ecdsa_secp521r1_sha3_512_10164", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10164_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10164_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10164_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10165 for ECDSA, tcId is 199 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10165_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10165_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10165 = { .name = "ecdsa_secp521r1_sha3_512_10165", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10165_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10165_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10165_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10166 for ECDSA, tcId is 200 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10166_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10166_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10166 = { .name = "ecdsa_secp521r1_sha3_512_10166", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10166_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10166_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10166_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10167 for ECDSA, tcId is 203 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10167_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10167_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10167 = { .name = "ecdsa_secp521r1_sha3_512_10167", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10167_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10167_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10167_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 203 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10168 for ECDSA, tcId is 204 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10168_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10168_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10168 = { .name = "ecdsa_secp521r1_sha3_512_10168", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10168_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10168_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10168_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10169 for ECDSA, tcId is 205 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10169_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10169_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10169 = { .name = "ecdsa_secp521r1_sha3_512_10169", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10169_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10169_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10169_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10170 for ECDSA, tcId is 206 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10170_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10170_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10170 = { .name = "ecdsa_secp521r1_sha3_512_10170", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10170_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10170_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10170_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10171 for ECDSA, tcId is 207 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10171_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10171_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10171 = { .name = "ecdsa_secp521r1_sha3_512_10171", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10171_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10171_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10171_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10172 for ECDSA, tcId is 208 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10172_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10172_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10172 = { .name = "ecdsa_secp521r1_sha3_512_10172", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10172_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10172_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10172_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10173 for ECDSA, tcId is 209 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10173_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10173_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10173 = { .name = "ecdsa_secp521r1_sha3_512_10173", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10173_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10173_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10173_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10174 for ECDSA, tcId is 210 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10174_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10174_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10174 = { .name = "ecdsa_secp521r1_sha3_512_10174", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10174_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10174_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10174_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10175 for ECDSA, tcId is 213 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10175_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10175_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10175 = { .name = "ecdsa_secp521r1_sha3_512_10175", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10175_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10175_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10175_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 213 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10176 for ECDSA, tcId is 214 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10176_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10176_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10176 = { .name = "ecdsa_secp521r1_sha3_512_10176", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10176_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10176_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10176_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10177 for ECDSA, tcId is 215 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10177_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10177_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10177 = { .name = "ecdsa_secp521r1_sha3_512_10177", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10177_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10177_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10177_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10178 for ECDSA, tcId is 216 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10178_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10178_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10178 = { .name = "ecdsa_secp521r1_sha3_512_10178", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10178_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10178_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10178_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10179 for ECDSA, tcId is 217 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10179_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10179_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10179 = { .name = "ecdsa_secp521r1_sha3_512_10179", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10179_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10179_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10179_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10180 for ECDSA, tcId is 218 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10180_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10180_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10180 = { .name = "ecdsa_secp521r1_sha3_512_10180", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10180_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10180_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10180_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10181 for ECDSA, tcId is 219 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10181_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10181_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10181 = { .name = "ecdsa_secp521r1_sha3_512_10181", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10181_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10181_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10181_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10182 for ECDSA, tcId is 220 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10182_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10182_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10182 = { .name = "ecdsa_secp521r1_sha3_512_10182", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10182_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10182_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10182_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10183 for ECDSA, tcId is 229 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10183_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10183_msg[] = { 0x31, 0x32, 0x31, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10183_sig[] = { 0x00, 0xb4, 0xb1, 0x06, 0x46, 0xa6, 0x68, 0xc3, 0x85, 0xe1, 0xc4, 0xda, 0x61, 0x3e, 0xb6, 0x59, 0x2c, 0x09, 0x76, 0xfc, 0x4d, 0xf8, 0x43, 0xfc, 0x44, 0x6f, 0x20, 0x67, 0x3b, 0xe5, 0xac, 0x18, 0xc7, 0xd8, 0x60, 0x8a, 0x94, 0x3f, 0x01, 0x9d, 0x96, 0x21, 0x62, 0x54, 0xb0, 0x9d, 0xe5, 0xf2, 0x0f, 0x31, 0x59, 0x40, 0x2c, 0xed, 0x88, 0xef, 0x80, 0x5a, 0x41, 0x54, 0xf7, 0x80, 0xe0, 0x93, 0xe0, 0x44, 0x01, 0x3a, 0xed, 0x2b, 0xb1, 0xd9, 0x2e, 0xf1, 0x6a, 0x82, 0x1b, 0xf4, 0x72, 0x03, 0xa3, 0xa7, 0xdf, 0x2e, 0x9d, 0x3e, 0xfd, 0xb0, 0x40, 0xf7, 0xd6, 0xc7, 0xb3, 0x6b, 0xac, 0x07, 0xbf, 0x2c, 0x1f, 0xa1, 0xc4, 0x4c, 0xe6, 0x30, 0xe4, 0x0f, 0x38, 0xef, 0x1b, 0x83, 0x8b, 0x52, 0x52, 0xcd, 0x41, 0xd0, 0x3f, 0x97, 0x4f, 0xf2, 0xeb, 0x6e, 0x73, 0x1c, 0xc5, 0x2a, 0x96, 0xd7, 0x89, 0xee, 0x1d, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10183 = { .name = "ecdsa_secp521r1_sha3_512_10183", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10183_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10183_msg, .msglen = 5, .sig = ecdsa_secp521r1_sha3_512_10183_sig, .siglen = 132, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 229 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10184 for ECDSA, tcId is 230 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10184_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10184_msg[] = { 0x32, 0x37, 0x32, 0x39, 0x37, 0x32, 0x36, 0x34, 0x31, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10184_sig[] = { 0x00, 0x61, 0xa4, 0x21, 0x2b, 0x4a, 0x97, 0xc7, 0x1f, 0xe1, 0x3d, 0x44, 0xd8, 0x58, 0x81, 0xcd, 0xb9, 0x99, 0x56, 0x6c, 0xb3, 0xe0, 0xab, 0x3b, 0x8d, 0xbe, 0x19, 0xeb, 0x49, 0x3e, 0x3d, 0xdc, 0x93, 0xca, 0x48, 0x2d, 0xbf, 0x2a, 0x2b, 0xe8, 0xb2, 0x59, 0x34, 0x05, 0x84, 0x0e, 0x8d, 0x18, 0xb3, 0x2b, 0xd2, 0x9e, 0x6c, 0x32, 0x27, 0x75, 0x86, 0x32, 0xab, 0xad, 0x76, 0x8f, 0x08, 0xce, 0xce, 0x00, 0x01, 0x4e, 0x85, 0x3c, 0xf7, 0x25, 0xc5, 0x36, 0x76, 0xc4, 0xa8, 0x07, 0xe3, 0x89, 0x03, 0x63, 0x02, 0xab, 0x4d, 0x9a, 0x37, 0xa3, 0xa5, 0x65, 0xd6, 0x5c, 0xc4, 0x4e, 0x51, 0xfc, 0x10, 0xef, 0x8a, 0x93, 0x58, 0xfd, 0xcd, 0x02, 0xf1, 0x93, 0xdd, 0x8b, 0x60, 0x53, 0xd1, 0xe5, 0xa4, 0x36, 0xd7, 0x9e, 0xf8, 0x9a, 0xd7, 0x76, 0x42, 0x70, 0xda, 0x13, 0x32, 0x22, 0xf0, 0xcc, 0xdd, 0xec, 0x0a, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10184 = { .name = "ecdsa_secp521r1_sha3_512_10184", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10184_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10184_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10184_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 230 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10185 for ECDSA, tcId is 231 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10185_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10185_msg[] = { 0x34, 0x33, 0x31, 0x34, 0x37, 0x37, 0x36, 0x31, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10185_sig[] = { 0x01, 0x08, 0xa2, 0xd1, 0x8a, 0x90, 0x52, 0xbf, 0x94, 0xb3, 0xad, 0x92, 0xc0, 0xd1, 0xdd, 0x4e, 0x04, 0x47, 0x93, 0xd1, 0x54, 0x56, 0x23, 0x94, 0xde, 0x5d, 0x2b, 0x87, 0xab, 0xb9, 0x65, 0x53, 0xe2, 0x7c, 0x13, 0x55, 0x1c, 0x1c, 0x02, 0xc9, 0x6b, 0x55, 0x65, 0x4c, 0x61, 0x06, 0x7d, 0xd3, 0x8c, 0x64, 0x6a, 0x5a, 0x22, 0xed, 0xb7, 0x4a, 0x8b, 0x2a, 0x99, 0x18, 0x06, 0x1f, 0x50, 0xd0, 0x46, 0xd5, 0x01, 0x0d, 0x71, 0xd4, 0x94, 0x62, 0x72, 0x19, 0x96, 0x78, 0xf3, 0x31, 0xad, 0x5a, 0x1d, 0x6b, 0xe4, 0x22, 0xb5, 0x28, 0x9e, 0x05, 0xb3, 0x13, 0xa1, 0x31, 0x23, 0x80, 0xf2, 0xb6, 0x33, 0xd0, 0x3f, 0x2f, 0x87, 0x1e, 0xc3, 0x80, 0x0c, 0x53, 0x1a, 0x95, 0xb2, 0xc8, 0xae, 0xd5, 0x5a, 0x18, 0x03, 0x1d, 0x22, 0x9c, 0x74, 0xa4, 0xbf, 0x67, 0x3b, 0xe4, 0x6d, 0xab, 0x46, 0xf7, 0xdb, 0x6e, 0xa3, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10185 = { .name = "ecdsa_secp521r1_sha3_512_10185", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10185_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10185_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10185_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10186 for ECDSA, tcId is 232 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10186_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10186_msg[] = { 0x36, 0x36, 0x30, 0x33, 0x34, 0x33, 0x38, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10186_sig[] = { 0x01, 0xd1, 0x85, 0x0d, 0x56, 0x1d, 0x65, 0x70, 0x84, 0x44, 0xe3, 0xec, 0xd4, 0x68, 0xd8, 0x85, 0x7c, 0xbe, 0xba, 0xc7, 0x09, 0xb1, 0x28, 0xf3, 0x58, 0x25, 0x79, 0x59, 0xea, 0x1d, 0xf8, 0x3c, 0xf0, 0xb6, 0x51, 0x15, 0x32, 0x24, 0x7c, 0xcf, 0x43, 0x42, 0xdd, 0x0e, 0x45, 0xc0, 0xe9, 0xc4, 0x1a, 0xb0, 0xff, 0x00, 0xac, 0xe0, 0x07, 0x72, 0x2c, 0x22, 0x3e, 0xe9, 0x73, 0xcc, 0x60, 0xe2, 0xd5, 0x4d, 0x01, 0x80, 0xe7, 0x67, 0x4a, 0x0f, 0x01, 0x20, 0xd9, 0x92, 0x2a, 0xc3, 0xdf, 0xe2, 0x36, 0x61, 0xfb, 0x69, 0xeb, 0x0b, 0x32, 0x8b, 0x30, 0x7a, 0x0b, 0x62, 0x45, 0xac, 0x88, 0x1c, 0x8a, 0x19, 0x8d, 0xb5, 0x6f, 0x8f, 0x6a, 0xd0, 0xd6, 0x3c, 0x0f, 0xa4, 0x68, 0x1c, 0xce, 0x10, 0xad, 0x44, 0x21, 0x67, 0x5a, 0xfe, 0xd9, 0x7e, 0xa5, 0x7b, 0xb7, 0x83, 0x7f, 0x71, 0x6d, 0x9a, 0xf9, 0x39, 0x90, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10186 = { .name = "ecdsa_secp521r1_sha3_512_10186", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10186_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10186_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10186_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10187 for ECDSA, tcId is 233 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10187_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10187_msg[] = { 0x32, 0x38, 0x32, 0x39, 0x36, 0x32, 0x31, 0x34, 0x35, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10187_sig[] = { 0x01, 0xb4, 0x67, 0x17, 0xf9, 0xa7, 0x9c, 0xfc, 0xa7, 0x96, 0x6a, 0x09, 0xa0, 0x27, 0x28, 0x8e, 0xfc, 0x06, 0x57, 0x09, 0xd7, 0xff, 0x2e, 0x3e, 0x33, 0x0e, 0xa7, 0x99, 0x88, 0xce, 0xb7, 0x66, 0x64, 0x8c, 0xdb, 0xc8, 0x24, 0x64, 0x2d, 0x95, 0xa4, 0xbd, 0xe0, 0x4d, 0x85, 0xcd, 0x7f, 0xbf, 0xf7, 0x15, 0x0a, 0x60, 0x36, 0x9a, 0x66, 0xe8, 0xca, 0x38, 0x05, 0x6d, 0xd0, 0xa3, 0x1d, 0x7a, 0x30, 0x74, 0x01, 0x80, 0x35, 0xd8, 0x94, 0xc0, 0xa0, 0xf9, 0xfe, 0x1d, 0xb8, 0xaf, 0xcd, 0xcc, 0xa4, 0xf0, 0xb3, 0xfc, 0x8f, 0x36, 0x11, 0x77, 0x08, 0xf0, 0x17, 0x6b, 0x80, 0x5d, 0x27, 0x68, 0x67, 0xe3, 0x39, 0x80, 0x7e, 0x40, 0x88, 0x08, 0x81, 0x7d, 0x91, 0xf9, 0x9d, 0x9c, 0x29, 0x88, 0x0c, 0x4c, 0x16, 0x2a, 0xe8, 0xb6, 0x7d, 0x8b, 0xdc, 0x24, 0xd2, 0xc5, 0xac, 0xc3, 0xd2, 0x9e, 0x4e, 0xd0, 0x96, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10187 = { .name = "ecdsa_secp521r1_sha3_512_10187", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10187_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10187_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10187_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10188 for ECDSA, tcId is 234 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10188_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10188_msg[] = { 0x34, 0x33, 0x31, 0x31, 0x38, 0x32, 0x31, 0x37, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10188_sig[] = { 0x01, 0x61, 0x21, 0xc9, 0xe9, 0xc7, 0x9f, 0x6b, 0xff, 0x0c, 0xfc, 0xd8, 0xdc, 0xd2, 0x2f, 0x9b, 0xe3, 0xd8, 0x77, 0x29, 0xd9, 0x01, 0x51, 0x23, 0xb0, 0xf4, 0x97, 0xcd, 0xdb, 0x98, 0x77, 0x27, 0x90, 0x74, 0x40, 0x81, 0xbc, 0x69, 0x2f, 0x2e, 0x99, 0xf2, 0x7e, 0xe1, 0x0b, 0xc5, 0x62, 0x39, 0xb2, 0x78, 0x3d, 0x75, 0x4b, 0x50, 0x20, 0x99, 0x9f, 0x31, 0xa7, 0x0c, 0x76, 0x12, 0x9f, 0x73, 0x09, 0x24, 0x01, 0x43, 0xff, 0x0f, 0xa6, 0x41, 0x1e, 0xd4, 0x47, 0x15, 0x6c, 0xd4, 0x4e, 0x17, 0x46, 0xd3, 0x90, 0xa5, 0x93, 0x73, 0x94, 0x3c, 0x01, 0xfb, 0xd9, 0x45, 0x7c, 0x23, 0xdf, 0x77, 0x01, 0x02, 0x2e, 0x69, 0xb0, 0x68, 0x04, 0x16, 0x5c, 0x16, 0xeb, 0xb9, 0xa5, 0x36, 0xd5, 0xc2, 0x8c, 0x00, 0xe9, 0x8f, 0x7b, 0x1c, 0xd4, 0xff, 0x29, 0x4f, 0x87, 0x8b, 0xc0, 0x0c, 0x03, 0x4d, 0x9f, 0x38, 0x25, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10188 = { .name = "ecdsa_secp521r1_sha3_512_10188", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10188_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10188_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10188_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10189 for ECDSA, tcId is 235 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10189_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10189_msg[] = { 0x31, 0x31, 0x37, 0x37, 0x30, 0x37, 0x37, 0x34, 0x31, 0x37, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10189_sig[] = { 0x00, 0xe2, 0xd1, 0xf7, 0x0f, 0x08, 0x77, 0x0c, 0x22, 0x0f, 0xdc, 0xa2, 0x3d, 0x23, 0x01, 0x85, 0x0a, 0x33, 0x2c, 0xa3, 0x1d, 0x57, 0xed, 0xbc, 0x65, 0x23, 0x1f, 0x49, 0x20, 0xe9, 0xb6, 0xe6, 0xfb, 0xad, 0x37, 0xa3, 0x26, 0x6e, 0x0a, 0x01, 0x03, 0x29, 0x06, 0xd0, 0x64, 0x16, 0x3e, 0x8c, 0x54, 0x90, 0x38, 0xe9, 0xd5, 0xe5, 0x2d, 0x32, 0xce, 0xa3, 0x0f, 0x3e, 0x22, 0xe4, 0xf1, 0xc4, 0x9a, 0xe1, 0x00, 0x45, 0x21, 0x6e, 0xd9, 0x05, 0x46, 0xb8, 0xa9, 0x9a, 0xb9, 0x8b, 0xe9, 0x80, 0xbf, 0x9a, 0x1f, 0x7f, 0x7f, 0xd7, 0xbd, 0x41, 0x12, 0xf0, 0x56, 0x1a, 0x85, 0xcf, 0x0c, 0x13, 0x93, 0x3e, 0xfb, 0xdc, 0xcb, 0x75, 0x28, 0xf2, 0x17, 0xba, 0xbe, 0xc7, 0xeb, 0x70, 0x2b, 0xb2, 0x65, 0x70, 0xfe, 0xee, 0x08, 0x85, 0x30, 0x6b, 0x3f, 0x8c, 0x3f, 0x86, 0xc9, 0x66, 0x5a, 0x90, 0xa4, 0xda, 0xbd, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10189 = { .name = "ecdsa_secp521r1_sha3_512_10189", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10189_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10189_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10189_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10190 for ECDSA, tcId is 236 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10190_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10190_msg[] = { 0x31, 0x35, 0x39, 0x38, 0x35, 0x31, 0x35, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10190_sig[] = { 0x00, 0xdb, 0xc9, 0xfc, 0x7d, 0x1b, 0x18, 0xae, 0x9d, 0x5c, 0x42, 0xc4, 0x04, 0x3f, 0xb4, 0x68, 0x66, 0x0a, 0x0b, 0xb7, 0x4e, 0x0f, 0xd4, 0x0a, 0x82, 0x79, 0xd0, 0xf5, 0xb4, 0xa3, 0x73, 0x77, 0xee, 0xd8, 0x4b, 0x07, 0xfc, 0x1e, 0x9b, 0x6d, 0x5d, 0xb1, 0xac, 0x1c, 0x88, 0xcb, 0x25, 0xeb, 0x23, 0xe3, 0x18, 0x87, 0x54, 0xe4, 0xc7, 0xe3, 0x8a, 0xa5, 0xf1, 0x53, 0x07, 0x6e, 0x6b, 0x1b, 0x8e, 0x10, 0x00, 0x34, 0x24, 0xf4, 0xb7, 0x4d, 0x7b, 0x19, 0xe9, 0x10, 0xfd, 0x9e, 0x66, 0x41, 0xe8, 0x17, 0x2c, 0x03, 0xf7, 0x59, 0xac, 0xeb, 0xa3, 0x00, 0xaf, 0x49, 0xf9, 0xf7, 0xff, 0xa9, 0x8a, 0xbd, 0x65, 0x8d, 0x51, 0x2d, 0x79, 0xf8, 0x43, 0xd1, 0xf4, 0x42, 0x1e, 0x46, 0x53, 0x2d, 0xe9, 0x94, 0x96, 0xd1, 0x16, 0x40, 0xad, 0x1c, 0xe3, 0x76, 0xef, 0x31, 0x45, 0x5c, 0x8b, 0xf4, 0x41, 0x7f, 0xe8, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10190 = { .name = "ecdsa_secp521r1_sha3_512_10190", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10190_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10190_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10190_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10191 for ECDSA, tcId is 237 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10191_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10191_msg[] = { 0x32, 0x38, 0x38, 0x31, 0x31, 0x30, 0x31, 0x36, 0x31, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10191_sig[] = { 0x01, 0x34, 0xfe, 0x8e, 0x5e, 0x36, 0x25, 0xaa, 0xfc, 0x2d, 0xb7, 0x89, 0xee, 0xc8, 0xeb, 0x15, 0x91, 0xac, 0x7f, 0x5e, 0x40, 0x06, 0x64, 0xa0, 0x4a, 0xa5, 0xe9, 0xbb, 0x64, 0x3c, 0x79, 0x5c, 0x15, 0x06, 0x93, 0x1a, 0x8b, 0x97, 0x6d, 0xd0, 0x0c, 0x4e, 0xc8, 0x68, 0x55, 0xdb, 0x40, 0xe2, 0x4c, 0x45, 0xc7, 0x24, 0xc5, 0x7b, 0x54, 0x49, 0x4e, 0x4f, 0xa4, 0x26, 0x1f, 0xf7, 0x7e, 0x16, 0xe2, 0x11, 0x00, 0xff, 0x32, 0x80, 0xb9, 0x40, 0x9c, 0x4c, 0xbe, 0x6e, 0xd2, 0x9e, 0xd9, 0xbd, 0x12, 0x21, 0xff, 0xf6, 0x9d, 0xa3, 0x88, 0x53, 0x1f, 0x62, 0x95, 0x2a, 0xb0, 0x5e, 0x97, 0xcb, 0x7b, 0x8a, 0xf6, 0x9a, 0x32, 0xbd, 0x31, 0x04, 0x3e, 0xfa, 0xe7, 0x43, 0xcd, 0x00, 0x38, 0x2d, 0xcd, 0xc1, 0x36, 0x26, 0xf0, 0xb2, 0xc6, 0xce, 0xf1, 0x04, 0x1a, 0xc5, 0x50, 0xa6, 0xc1, 0xf8, 0xd9, 0x3c, 0x27, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10191 = { .name = "ecdsa_secp521r1_sha3_512_10191", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10191_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10191_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10191_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10192 for ECDSA, tcId is 238 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10192_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10192_msg[] = { 0x32, 0x30, 0x30, 0x34, 0x37, 0x38, 0x33, 0x33, 0x33, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10192_sig[] = { 0x01, 0x7c, 0x71, 0x1b, 0x84, 0x4e, 0x59, 0xb2, 0x69, 0x9d, 0x69, 0xc1, 0xdc, 0x27, 0xa3, 0xed, 0x50, 0x5f, 0xe6, 0x86, 0xa0, 0xe6, 0xff, 0x5c, 0x1e, 0xe6, 0x74, 0xe3, 0x69, 0x64, 0x90, 0x2d, 0xef, 0x9f, 0x92, 0xf4, 0x53, 0xd1, 0x0c, 0x5b, 0x18, 0x52, 0x42, 0xac, 0x98, 0xc1, 0xf6, 0x5c, 0x04, 0x33, 0xfd, 0xc9, 0x6d, 0xe3, 0x99, 0x43, 0xb3, 0x1b, 0xe1, 0x63, 0x14, 0xfc, 0x9c, 0x73, 0xdb, 0x92, 0x01, 0x70, 0x76, 0x7f, 0xd3, 0xb8, 0xa2, 0xbd, 0x2d, 0x8c, 0xb9, 0xc8, 0xc1, 0xa6, 0x90, 0x73, 0xa4, 0x37, 0xe3, 0xbd, 0x07, 0x06, 0x1e, 0xf9, 0x30, 0xe4, 0x7b, 0xef, 0x09, 0xe4, 0x03, 0x3f, 0x46, 0x7e, 0x22, 0x0c, 0xed, 0xbc, 0x7f, 0xbf, 0xe1, 0x93, 0xc4, 0x8d, 0xee, 0x3f, 0xd1, 0x5f, 0x51, 0x68, 0x6f, 0xb2, 0x37, 0xd8, 0xb0, 0x08, 0x74, 0xcb, 0xeb, 0x05, 0xc2, 0x37, 0xc5, 0x88, 0x0b, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10192 = { .name = "ecdsa_secp521r1_sha3_512_10192", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10192_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10192_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10192_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10193 for ECDSA, tcId is 239 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10193_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10193_msg[] = { 0x39, 0x35, 0x30, 0x30, 0x32, 0x34, 0x37, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10193_sig[] = { 0x00, 0xbf, 0x98, 0x6f, 0x02, 0xe0, 0x77, 0xa6, 0x0e, 0x9b, 0xe0, 0x4a, 0x9d, 0x77, 0x00, 0xe3, 0xd4, 0xed, 0x4b, 0x04, 0xa9, 0xa9, 0xd1, 0xbe, 0xf5, 0xf0, 0x4c, 0x7e, 0xee, 0x01, 0xc3, 0x20, 0xcc, 0xd2, 0xfa, 0xbe, 0xe3, 0x8d, 0x44, 0xd7, 0x1f, 0xa6, 0x5b, 0x4a, 0xe1, 0x53, 0x30, 0xf9, 0x89, 0xad, 0xca, 0xb2, 0x37, 0x57, 0xa7, 0x06, 0x32, 0xf5, 0x4c, 0xe1, 0x2c, 0x37, 0xcc, 0xb1, 0x95, 0xcf, 0x00, 0x86, 0x9f, 0x9e, 0x34, 0x30, 0x33, 0xff, 0xbc, 0x0f, 0x1f, 0x05, 0xf9, 0x0f, 0xbd, 0xf1, 0x4b, 0x7b, 0xa5, 0x25, 0xff, 0xaa, 0xb1, 0xd6, 0x9c, 0xf4, 0xca, 0x21, 0x9f, 0x6f, 0x19, 0x1d, 0xb2, 0x30, 0xb1, 0xc2, 0x23, 0x12, 0x58, 0x32, 0x89, 0x4b, 0x54, 0x62, 0x22, 0xcd, 0x22, 0xea, 0x7b, 0x4b, 0xf7, 0xec, 0x0f, 0xa3, 0x6f, 0x1d, 0xc2, 0xce, 0x51, 0x20, 0x7f, 0x1b, 0xf3, 0x8b, 0xe5, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10193 = { .name = "ecdsa_secp521r1_sha3_512_10193", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10193_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10193_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10193_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10194 for ECDSA, tcId is 240 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10194_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10194_msg[] = { 0x32, 0x32, 0x30, 0x39, 0x35, 0x30, 0x30, 0x30, 0x36, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10194_sig[] = { 0x01, 0x4c, 0x2f, 0x8a, 0x18, 0x65, 0x5c, 0x6d, 0x4e, 0x6a, 0x54, 0xe1, 0xc5, 0x1c, 0x9d, 0x61, 0xed, 0xce, 0x24, 0xca, 0x37, 0xe3, 0x84, 0x59, 0x62, 0x15, 0x49, 0xe6, 0x53, 0xc3, 0xfa, 0x9b, 0x9a, 0x01, 0x20, 0xca, 0xd5, 0x02, 0x95, 0xd6, 0xf8, 0x85, 0x42, 0x7c, 0x2a, 0x18, 0xb6, 0x04, 0xe6, 0xf6, 0xc5, 0x7f, 0x7a, 0x9c, 0xec, 0xab, 0xea, 0x68, 0xb9, 0xee, 0xbc, 0x49, 0xaa, 0xeb, 0x62, 0x3a, 0x00, 0x00, 0x43, 0x6e, 0x05, 0xba, 0xb5, 0x31, 0x35, 0x0a, 0xa4, 0x41, 0xe6, 0xe7, 0xa1, 0x04, 0x2e, 0xa4, 0x21, 0x9d, 0xe3, 0xdb, 0x75, 0x75, 0x2d, 0xc2, 0x63, 0xbb, 0x14, 0x59, 0x2b, 0x5f, 0xdb, 0x15, 0x82, 0x7b, 0x2a, 0x4c, 0x2f, 0x6a, 0xe9, 0x4a, 0xed, 0xc8, 0x9e, 0xb0, 0xe6, 0x64, 0x98, 0x9f, 0xcd, 0x57, 0x3b, 0xcc, 0x30, 0x14, 0x27, 0x4c, 0xbe, 0xc6, 0x79, 0x19, 0x82, 0xb8, 0xf5, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10194 = { .name = "ecdsa_secp521r1_sha3_512_10194", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10194_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10194_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10194_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10195 for ECDSA, tcId is 241 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10195_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10195_msg[] = { 0x38, 0x31, 0x39, 0x33, 0x37, 0x38, 0x39, 0x32, 0x32, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10195_sig[] = { 0x00, 0x0c, 0x59, 0x12, 0x6e, 0x6e, 0xb5, 0x93, 0x2c, 0x6a, 0x05, 0xee, 0x36, 0x73, 0x81, 0x00, 0xc2, 0x41, 0x41, 0xbd, 0xe7, 0x4e, 0x36, 0x75, 0xe1, 0x12, 0xd1, 0xa9, 0xc0, 0x13, 0x4a, 0xdd, 0x3e, 0x78, 0xb3, 0x69, 0x7e, 0xa4, 0x8f, 0xc2, 0x63, 0x94, 0x76, 0x15, 0x03, 0xdf, 0xc1, 0xcb, 0xd4, 0x44, 0xda, 0xfd, 0x8d, 0x08, 0x31, 0xb4, 0xf5, 0x17, 0xb3, 0x29, 0xe3, 0x76, 0x00, 0x89, 0x8c, 0x80, 0x01, 0x7c, 0x61, 0x1d, 0x7b, 0xce, 0x81, 0x15, 0x24, 0x91, 0x1c, 0x27, 0x41, 0xf2, 0xea, 0xd6, 0x75, 0xb9, 0xcb, 0x7c, 0xcc, 0x77, 0x38, 0xfd, 0xb7, 0xaa, 0x47, 0xab, 0x01, 0xd4, 0xfb, 0x66, 0x90, 0xe9, 0x38, 0xa1, 0x79, 0x15, 0x9b, 0x3a, 0x2f, 0x83, 0x39, 0x3d, 0x00, 0x6c, 0x04, 0xf0, 0x94, 0x8c, 0xea, 0xef, 0x97, 0x97, 0xf6, 0x63, 0x0e, 0xe0, 0xdf, 0x7a, 0x35, 0x55, 0x9a, 0x34, 0xb1, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10195 = { .name = "ecdsa_secp521r1_sha3_512_10195", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10195_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10195_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10195_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10196 for ECDSA, tcId is 242 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10196_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10196_msg[] = { 0x33, 0x36, 0x35, 0x30, 0x36, 0x30, 0x33, 0x32, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10196_sig[] = { 0x00, 0x7c, 0xc7, 0xfe, 0x18, 0xcc, 0xa2, 0x8a, 0x8c, 0x23, 0x1b, 0xd3, 0xc7, 0xaa, 0x29, 0x36, 0xd0, 0x2e, 0x39, 0x06, 0xa4, 0x9d, 0xcd, 0xc2, 0xa3, 0x0a, 0xac, 0x99, 0x26, 0xd8, 0xc8, 0x9c, 0xf2, 0x5b, 0xc6, 0x44, 0xf5, 0x84, 0xab, 0x6e, 0xf0, 0x26, 0xdc, 0x55, 0x1a, 0xf6, 0xba, 0x32, 0xce, 0xb8, 0xe3, 0xce, 0x2a, 0xf4, 0x61, 0x78, 0xc4, 0xde, 0x8c, 0x7a, 0xdd, 0x70, 0x13, 0x14, 0xe7, 0x74, 0x00, 0x34, 0xed, 0xe1, 0x64, 0xd5, 0xd6, 0x0a, 0x69, 0xca, 0x90, 0x5f, 0x0c, 0x83, 0x31, 0x4a, 0x63, 0x70, 0x00, 0x24, 0xdb, 0xef, 0xc5, 0x1c, 0xe1, 0xcf, 0x2b, 0xc6, 0x94, 0x47, 0xca, 0xd7, 0x69, 0x18, 0x58, 0x0d, 0x45, 0xb9, 0x34, 0x47, 0x09, 0x3f, 0x54, 0x29, 0x17, 0x0c, 0x99, 0x6f, 0x2f, 0x78, 0x18, 0xba, 0x0c, 0x51, 0xce, 0x96, 0xb7, 0x52, 0x6e, 0xa9, 0x69, 0xd7, 0xc0, 0x60, 0xd2, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10196 = { .name = "ecdsa_secp521r1_sha3_512_10196", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10196_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10196_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10196_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10197 for ECDSA, tcId is 243 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10197_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10197_msg[] = { 0x31, 0x36, 0x33, 0x38, 0x33, 0x39, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10197_sig[] = { 0x01, 0x54, 0xa6, 0x80, 0x57, 0x00, 0x56, 0xcf, 0xca, 0xe6, 0x72, 0xd5, 0xaf, 0x7e, 0x19, 0x55, 0x62, 0x98, 0xb9, 0xdd, 0xd3, 0xfa, 0x16, 0x2d, 0xc2, 0x06, 0x6c, 0xeb, 0x89, 0x10, 0x00, 0x8f, 0x30, 0x4b, 0xcf, 0xec, 0x4f, 0xaa, 0x91, 0x7c, 0x7c, 0x80, 0x60, 0xf2, 0xf5, 0xc4, 0x6f, 0xcf, 0x9b, 0x13, 0x6e, 0xe1, 0xea, 0x84, 0x5b, 0x93, 0xf1, 0xe7, 0x16, 0x13, 0xc4, 0x5f, 0x22, 0xf9, 0xd0, 0xb3, 0x00, 0xec, 0xdd, 0x62, 0x93, 0x48, 0x00, 0x07, 0xe5, 0x1b, 0xb4, 0xab, 0x2e, 0xb8, 0x63, 0xee, 0xd6, 0x74, 0x2e, 0x69, 0x3d, 0x16, 0x04, 0x18, 0x52, 0x2c, 0x18, 0x2a, 0xa0, 0x28, 0x51, 0x59, 0x3b, 0x02, 0xa8, 0x18, 0xeb, 0x75, 0x72, 0x00, 0xf0, 0xcf, 0xcc, 0x10, 0x45, 0xfd, 0x12, 0x39, 0xc6, 0x48, 0xb9, 0x96, 0x8f, 0x2d, 0x38, 0xc3, 0xb9, 0x8f, 0x42, 0xf9, 0xd2, 0x1f, 0xe8, 0x94, 0x3a, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10197 = { .name = "ecdsa_secp521r1_sha3_512_10197", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10197_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10197_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10197_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10198 for ECDSA, tcId is 244 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10198_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10198_msg[] = { 0x32, 0x30, 0x39, 0x31, 0x37, 0x36, 0x38, 0x32, 0x30, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10198_sig[] = { 0x00, 0x59, 0x3c, 0x83, 0x92, 0xac, 0x4e, 0x7e, 0x1b, 0x96, 0x6a, 0xe8, 0x51, 0xcc, 0xc0, 0x79, 0x40, 0xa0, 0x4c, 0x5c, 0xd0, 0x9d, 0xcc, 0x97, 0x7b, 0x62, 0x23, 0xa9, 0x36, 0xe8, 0x49, 0x29, 0x7d, 0xcf, 0xb0, 0x1e, 0x65, 0xb2, 0xee, 0x85, 0x0b, 0x8f, 0xba, 0xf9, 0xe6, 0x2f, 0xd9, 0x58, 0xc6, 0xa7, 0x3a, 0x76, 0x70, 0x20, 0xd2, 0x20, 0x7c, 0xc4, 0x05, 0xf7, 0x95, 0xe7, 0x7c, 0x80, 0x80, 0x78, 0x00, 0xce, 0x63, 0x58, 0x77, 0x30, 0x88, 0xe0, 0x69, 0x64, 0x8e, 0x44, 0x97, 0x6b, 0x0f, 0x96, 0x33, 0xe0, 0xd7, 0xa3, 0xfc, 0x4f, 0x21, 0xf5, 0x68, 0xf1, 0x96, 0xa5, 0xf4, 0xd0, 0xae, 0x19, 0x3b, 0x2a, 0xce, 0x16, 0xd7, 0x65, 0xac, 0x83, 0x96, 0xec, 0x63, 0x1a, 0xcb, 0x5b, 0xdd, 0xa0, 0xca, 0x5f, 0xe1, 0x0d, 0xcc, 0x6c, 0x2e, 0x68, 0x50, 0x21, 0xe7, 0x44, 0x2b, 0x45, 0xba, 0xa6, 0xd3, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10198 = { .name = "ecdsa_secp521r1_sha3_512_10198", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10198_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10198_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10198_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10199 for ECDSA, tcId is 245 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10199_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10199_msg[] = { 0x39, 0x33, 0x36, 0x34, 0x37, 0x30, 0x32, 0x38, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10199_sig[] = { 0x00, 0x62, 0x26, 0xa7, 0x10, 0x1e, 0x0f, 0xd9, 0x46, 0x77, 0x8d, 0x45, 0xda, 0xda, 0xc7, 0x93, 0xc0, 0x4d, 0xbb, 0x4e, 0x0a, 0xca, 0x01, 0x1e, 0xaa, 0xd7, 0x18, 0xf5, 0x05, 0xed, 0xe0, 0x77, 0x11, 0x5c, 0x5f, 0x0e, 0x80, 0x74, 0xf3, 0x0d, 0x3f, 0xcd, 0x04, 0xbf, 0xa3, 0xff, 0xd6, 0x96, 0x07, 0xe1, 0x7d, 0xc1, 0xdd, 0xe1, 0x04, 0x7e, 0x1a, 0xda, 0x38, 0xd6, 0xda, 0xae, 0x8b, 0x45, 0x71, 0x6c, 0x00, 0xbf, 0x2a, 0x2a, 0x24, 0x9e, 0x08, 0x73, 0xb6, 0x89, 0x4d, 0x6f, 0x8b, 0xd2, 0xf4, 0xac, 0x64, 0x67, 0x15, 0x25, 0x76, 0x2e, 0x46, 0x3a, 0x29, 0xc0, 0xaf, 0xc8, 0x6b, 0xdb, 0xc7, 0x32, 0x23, 0x98, 0x5f, 0xee, 0xce, 0x21, 0x0d, 0x36, 0x0c, 0x76, 0x31, 0x13, 0x4a, 0xcc, 0x31, 0x9d, 0xe6, 0x97, 0x5b, 0x3b, 0xa9, 0x8a, 0x1c, 0xbe, 0xb8, 0xe3, 0x78, 0x00, 0x06, 0x4b, 0x47, 0x92, 0xc1, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10199 = { .name = "ecdsa_secp521r1_sha3_512_10199", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10199_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10199_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10199_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10200 for ECDSA, tcId is 246 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10200_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10200_msg[] = { 0x39, 0x32, 0x36, 0x38, 0x36, 0x38, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10200_sig[] = { 0x00, 0xd7, 0x02, 0x38, 0xba, 0x91, 0xfb, 0x32, 0x61, 0xa3, 0xba, 0xae, 0x40, 0x85, 0x21, 0x90, 0x51, 0x7d, 0x4d, 0x75, 0xe2, 0xe5, 0xee, 0x52, 0x86, 0x51, 0x39, 0x9d, 0x61, 0x59, 0x90, 0xb0, 0xd0, 0x8d, 0xc6, 0x87, 0xd7, 0xd0, 0x60, 0xff, 0xc9, 0x12, 0x71, 0xa3, 0x7f, 0x66, 0xa2, 0xd8, 0x9d, 0x9d, 0x22, 0xa8, 0x0c, 0xe4, 0xcd, 0x1f, 0x8c, 0x4a, 0x4e, 0x02, 0xde, 0xf1, 0xa0, 0x70, 0x68, 0x1e, 0x01, 0xe8, 0x2c, 0x77, 0x9a, 0x91, 0x5d, 0x49, 0x6a, 0x10, 0x18, 0x29, 0x01, 0x2e, 0xe2, 0xb2, 0xcd, 0x6b, 0x58, 0xb9, 0xad, 0x90, 0x2c, 0xbc, 0xbd, 0xba, 0x49, 0x87, 0x6b, 0x67, 0x1f, 0x9b, 0xb9, 0xbd, 0xd2, 0x23, 0xca, 0x04, 0x99, 0x7b, 0x9f, 0x94, 0x6d, 0xc4, 0x41, 0xf9, 0x80, 0x68, 0xc6, 0xa8, 0xdc, 0x57, 0x3c, 0x69, 0xa3, 0xdb, 0x9b, 0x6a, 0x56, 0x3a, 0x4b, 0x7f, 0x5a, 0x71, 0x21, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10200 = { .name = "ecdsa_secp521r1_sha3_512_10200", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10200_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10200_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10200_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10201 for ECDSA, tcId is 247 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10201_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10201_msg[] = { 0x35, 0x31, 0x37, 0x38, 0x31, 0x33, 0x34, 0x38, 0x32, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10201_sig[] = { 0x01, 0x90, 0x4b, 0x72, 0x70, 0x5d, 0xbc, 0x8c, 0x01, 0xa4, 0x22, 0xa3, 0x4c, 0x3b, 0x72, 0x21, 0x3f, 0xf9, 0x38, 0x5e, 0xb5, 0x6a, 0x6c, 0xb2, 0x71, 0xc5, 0x7a, 0xe5, 0xee, 0x33, 0x38, 0xa7, 0x35, 0x97, 0x7d, 0x92, 0x66, 0x6f, 0x47, 0x4b, 0x67, 0x01, 0x23, 0xf5, 0x89, 0xa8, 0xb5, 0xd2, 0x68, 0x2a, 0x68, 0x5e, 0xbc, 0x24, 0xaf, 0xce, 0x49, 0x03, 0x9f, 0xc5, 0x7b, 0x23, 0x48, 0x0b, 0x72, 0x3c, 0x01, 0x61, 0x18, 0x5a, 0x8e, 0x41, 0xa0, 0x8b, 0x44, 0x66, 0x3d, 0x00, 0x18, 0x24, 0xc2, 0x48, 0x3a, 0x50, 0x86, 0xe6, 0xda, 0x36, 0xd7, 0x14, 0x0a, 0xa1, 0x61, 0x27, 0x24, 0xde, 0x55, 0x38, 0x94, 0x66, 0x2f, 0x9e, 0xee, 0x58, 0x73, 0x5a, 0xf4, 0x6c, 0x1a, 0x80, 0x14, 0x76, 0x65, 0xa4, 0x60, 0x48, 0x39, 0x3e, 0xad, 0x5a, 0x54, 0x78, 0xf0, 0xac, 0x05, 0xa6, 0x2a, 0x02, 0xa6, 0x97, 0xfd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10201 = { .name = "ecdsa_secp521r1_sha3_512_10201", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10201_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10201_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10201_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10202 for ECDSA, tcId is 248 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10202_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10202_msg[] = { 0x34, 0x37, 0x33, 0x35, 0x30, 0x31, 0x30, 0x37, 0x35, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10202_sig[] = { 0x00, 0xef, 0xe4, 0xe8, 0x21, 0xd4, 0xb2, 0x6d, 0x71, 0x14, 0x50, 0x2a, 0x72, 0x38, 0x4a, 0x16, 0xd0, 0x70, 0xe1, 0xa8, 0x7f, 0x16, 0x6b, 0xbc, 0x4c, 0xae, 0xc1, 0x02, 0x29, 0xee, 0x42, 0x3a, 0x0a, 0x6e, 0xdb, 0x4d, 0x73, 0x4a, 0x64, 0x1f, 0x54, 0x11, 0xdb, 0x4c, 0x0d, 0x21, 0x8f, 0x97, 0x9b, 0xde, 0x59, 0xb4, 0x0b, 0x51, 0x68, 0x35, 0xcb, 0x42, 0x29, 0x81, 0xaf, 0x6f, 0xe4, 0x68, 0x56, 0x74, 0x01, 0xaf, 0xdb, 0xf5, 0xe5, 0x49, 0x25, 0x59, 0x48, 0xa5, 0xc8, 0x18, 0x8d, 0x26, 0xaf, 0x9b, 0x6c, 0xef, 0xad, 0x74, 0xd5, 0xd4, 0x31, 0xd7, 0xf7, 0xc4, 0x9f, 0x7c, 0x2f, 0xb2, 0x73, 0x29, 0xcd, 0x35, 0x95, 0x20, 0xe1, 0x4a, 0x9c, 0x3d, 0x3c, 0x6e, 0x93, 0x5d, 0x95, 0xf1, 0x2c, 0x48, 0xd0, 0x34, 0xe3, 0x87, 0xda, 0xbd, 0x7c, 0xec, 0x0b, 0x7c, 0xaa, 0xc6, 0x4b, 0x05, 0x51, 0x81, 0x7d, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10202 = { .name = "ecdsa_secp521r1_sha3_512_10202", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10202_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10202_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10202_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10203 for ECDSA, tcId is 249 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10203_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10203_msg[] = { 0x31, 0x34, 0x33, 0x35, 0x33, 0x39, 0x31, 0x31, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10203_sig[] = { 0x00, 0xc6, 0x9f, 0xf8, 0x34, 0xfd, 0x8c, 0x2b, 0xfd, 0x56, 0x23, 0x22, 0xfe, 0x6c, 0x65, 0xc2, 0x5d, 0xac, 0x7c, 0xc0, 0x8c, 0xce, 0x12, 0xd2, 0xa8, 0x41, 0xaf, 0xe6, 0x01, 0x57, 0x5b, 0x54, 0x61, 0x0c, 0xd1, 0x0c, 0x68, 0x2a, 0xfc, 0x20, 0xb7, 0x82, 0x61, 0x6b, 0x38, 0xd1, 0xe6, 0x3a, 0x24, 0xcc, 0x9a, 0x3a, 0x0f, 0xf7, 0xa8, 0x61, 0xf9, 0x3c, 0xff, 0x1d, 0x9d, 0x97, 0x01, 0xf9, 0x8e, 0x44, 0x00, 0xac, 0xb4, 0x71, 0x79, 0x3c, 0x03, 0x67, 0xa7, 0x86, 0x36, 0x6c, 0xf6, 0xff, 0x44, 0x36, 0xbc, 0x14, 0x0f, 0xa8, 0x35, 0x72, 0xb3, 0xad, 0x30, 0x4d, 0x0a, 0x10, 0x73, 0xe7, 0xd3, 0xaa, 0x93, 0xda, 0x8a, 0x49, 0x52, 0xb6, 0xb5, 0x98, 0x5e, 0x9e, 0x6b, 0x33, 0x1d, 0xca, 0x2b, 0x68, 0x7b, 0xf2, 0xfd, 0xb2, 0xe4, 0xbf, 0xb7, 0x81, 0xcb, 0x0f, 0xcb, 0x44, 0xda, 0x56, 0xf3, 0xb5, 0x91, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10203 = { .name = "ecdsa_secp521r1_sha3_512_10203", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10203_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10203_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10203_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10204 for ECDSA, tcId is 250 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10204_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10204_msg[] = { 0x31, 0x33, 0x38, 0x34, 0x35, 0x34, 0x39, 0x32, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10204_sig[] = { 0x01, 0xf6, 0xc0, 0x6a, 0x2f, 0x7a, 0x6e, 0x10, 0x33, 0x80, 0x18, 0xfc, 0x69, 0x60, 0xf7, 0x61, 0x7f, 0xfd, 0x3d, 0x64, 0x30, 0x2e, 0x1f, 0x26, 0xbf, 0xbf, 0xa6, 0xcc, 0x70, 0xf4, 0x72, 0x61, 0x4d, 0xda, 0x2e, 0xa5, 0xdb, 0xe4, 0xdd, 0x69, 0x3b, 0xa4, 0x67, 0x9f, 0xb2, 0x3c, 0x92, 0x60, 0x50, 0xd2, 0xb9, 0x27, 0x61, 0xc1, 0xe8, 0x4c, 0x5f, 0x2c, 0x22, 0x2a, 0x21, 0xb3, 0x74, 0x5e, 0xec, 0x7f, 0x01, 0xed, 0x0a, 0xa6, 0x8a, 0xf7, 0xc5, 0x51, 0xca, 0x17, 0xd9, 0xb0, 0xbb, 0x99, 0x12, 0x4f, 0x99, 0x6b, 0xc6, 0x63, 0xc5, 0x2f, 0x8e, 0x5d, 0x90, 0x47, 0x17, 0xf1, 0x4a, 0x7e, 0x72, 0x29, 0xdc, 0x31, 0x11, 0x67, 0x69, 0xa9, 0x18, 0x5a, 0xce, 0x5b, 0x35, 0x63, 0xd4, 0x6e, 0xdc, 0x24, 0xe4, 0xdc, 0xca, 0xfb, 0xee, 0xfa, 0x7a, 0x8e, 0x06, 0xa0, 0x8d, 0xf6, 0x3c, 0xd8, 0x08, 0xda, 0x91, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10204 = { .name = "ecdsa_secp521r1_sha3_512_10204", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10204_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10204_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10204_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10205 for ECDSA, tcId is 251 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10205_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10205_msg[] = { 0x32, 0x37, 0x36, 0x32, 0x31, 0x39, 0x32, 0x37, 0x38, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10205_sig[] = { 0x01, 0x8b, 0x88, 0x50, 0x98, 0x39, 0xc9, 0x02, 0x59, 0x91, 0xbf, 0xd1, 0x54, 0xd5, 0x29, 0x86, 0x01, 0x31, 0xb6, 0x67, 0x55, 0x27, 0x3f, 0x09, 0x86, 0xae, 0xdb, 0xd4, 0xa9, 0x24, 0x6e, 0x91, 0xe7, 0x25, 0xd2, 0x90, 0xc3, 0x19, 0x35, 0x52, 0xab, 0x45, 0x44, 0xec, 0x8e, 0x57, 0x52, 0x0a, 0x7c, 0x4f, 0x23, 0xe5, 0x5d, 0x8d, 0x52, 0x29, 0x1a, 0x8b, 0x40, 0xa5, 0x15, 0x99, 0xa0, 0x2b, 0x4f, 0x0b, 0x00, 0x47, 0x7c, 0x1e, 0x75, 0xae, 0xa8, 0xbe, 0x30, 0xf2, 0xbd, 0x7e, 0x95, 0x51, 0xfc, 0x5b, 0x41, 0x05, 0x37, 0x8d, 0x52, 0x20, 0xd0, 0x94, 0xac, 0x09, 0xf1, 0xab, 0x20, 0xa3, 0x6b, 0xbc, 0xd3, 0xca, 0x7e, 0xd2, 0x7e, 0x10, 0x35, 0x27, 0xd4, 0xf6, 0xc5, 0x64, 0xc7, 0x60, 0x44, 0x65, 0x09, 0x2c, 0x16, 0x75, 0x8f, 0xaa, 0x52, 0x4d, 0x37, 0xa0, 0x48, 0x88, 0xb9, 0x0b, 0x8a, 0xe9, 0xb6, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10205 = { .name = "ecdsa_secp521r1_sha3_512_10205", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10205_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10205_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10205_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10206 for ECDSA, tcId is 252 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10206_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10206_msg[] = { 0x31, 0x38, 0x33, 0x31, 0x36, 0x35, 0x34, 0x33, 0x33, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10206_sig[] = { 0x01, 0x91, 0xa6, 0x69, 0xdf, 0xe8, 0xd3, 0x05, 0xed, 0xf8, 0xe4, 0xb8, 0x1d, 0xc7, 0x2b, 0xae, 0x04, 0x03, 0x2b, 0x0d, 0x93, 0x07, 0x6f, 0x7e, 0xd5, 0x4d, 0x46, 0xd2, 0x49, 0x70, 0x4c, 0xae, 0x99, 0xea, 0x33, 0xcb, 0xd9, 0x60, 0xee, 0x22, 0x01, 0x52, 0x45, 0xf3, 0x10, 0xa5, 0x6b, 0x0c, 0x45, 0x0c, 0x8f, 0xbe, 0xb7, 0x85, 0xe3, 0xaa, 0x87, 0xb9, 0x68, 0x27, 0x0d, 0x21, 0xe8, 0xde, 0x26, 0x58, 0x01, 0xe5, 0x45, 0x5c, 0x1b, 0xd5, 0x3a, 0xcb, 0x7d, 0x5f, 0x4e, 0x9c, 0x63, 0x9e, 0xeb, 0x92, 0xce, 0x66, 0x15, 0x76, 0x21, 0x81, 0xd8, 0x6c, 0xf3, 0x35, 0xaf, 0x8a, 0x64, 0xa8, 0x58, 0x10, 0x2c, 0xa8, 0xde, 0x95, 0x80, 0x8f, 0x20, 0xa4, 0x08, 0xa6, 0xcb, 0xb7, 0xf8, 0x78, 0xb2, 0x61, 0xba, 0xe4, 0x48, 0xe0, 0xac, 0x4c, 0xc1, 0x78, 0x34, 0x69, 0x7d, 0x50, 0xae, 0xda, 0xe3, 0xb4, 0x47, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10206 = { .name = "ecdsa_secp521r1_sha3_512_10206", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10206_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10206_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10206_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10207 for ECDSA, tcId is 253 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10207_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10207_msg[] = { 0x32, 0x34, 0x33, 0x36, 0x38, 0x39, 0x39, 0x30, 0x33, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10207_sig[] = { 0x01, 0xf1, 0x90, 0x27, 0xcb, 0x43, 0x4d, 0xbc, 0xd1, 0xb3, 0xa9, 0x22, 0x08, 0x54, 0xca, 0x1c, 0x20, 0x0b, 0x1e, 0xd3, 0x9e, 0xda, 0x51, 0xd2, 0xd6, 0x64, 0x3e, 0xdf, 0xb9, 0x3f, 0x74, 0x65, 0x67, 0x46, 0x44, 0xae, 0xe2, 0xc1, 0xc6, 0x6c, 0xbd, 0x5c, 0xd5, 0x87, 0x84, 0x1a, 0x1c, 0x2e, 0xae, 0xe1, 0x17, 0x80, 0x29, 0x82, 0x2c, 0x94, 0xac, 0xab, 0x6e, 0xe6, 0x34, 0xc0, 0xb6, 0x33, 0xdd, 0x3a, 0x00, 0x08, 0xf6, 0xec, 0xc3, 0x0b, 0xab, 0x74, 0xb5, 0x1a, 0x26, 0xd7, 0x1b, 0xac, 0xaa, 0xe1, 0x8e, 0x59, 0xa6, 0x59, 0xf9, 0x87, 0x8a, 0x58, 0xaf, 0x16, 0xbb, 0x35, 0xcf, 0x0f, 0xb5, 0x85, 0x5d, 0x49, 0xf8, 0x58, 0x2c, 0xd1, 0xbe, 0x0a, 0x3d, 0x7d, 0xcf, 0xba, 0x99, 0xed, 0xae, 0xa1, 0x8c, 0xc2, 0xbe, 0x37, 0xb1, 0x09, 0xf7, 0xc2, 0xeb, 0x10, 0xec, 0x45, 0x56, 0xf7, 0x5b, 0xa6, 0x6a, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10207 = { .name = "ecdsa_secp521r1_sha3_512_10207", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10207_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10207_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10207_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10208 for ECDSA, tcId is 254 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10208_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10208_msg[] = { 0x32, 0x30, 0x34, 0x30, 0x34, 0x31, 0x32, 0x32, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10208_sig[] = { 0x00, 0x4d, 0x31, 0x03, 0xf0, 0xc7, 0x74, 0x7f, 0x5f, 0x71, 0x55, 0xf5, 0xc2, 0x8b, 0x5a, 0x77, 0x57, 0xb1, 0x0f, 0xc6, 0x48, 0x78, 0x41, 0x16, 0x43, 0x88, 0x88, 0xd6, 0x40, 0x2e, 0xb7, 0xd3, 0x50, 0x49, 0xb2, 0x40, 0x84, 0x0c, 0x15, 0x44, 0x54, 0x16, 0xd5, 0x2d, 0xa0, 0xc7, 0xbb, 0x59, 0xf0, 0x17, 0x4d, 0x47, 0xd6, 0x66, 0xd5, 0xab, 0x21, 0x9d, 0x4d, 0x82, 0x11, 0x92, 0x61, 0x8f, 0x40, 0xf4, 0x00, 0xc2, 0x24, 0x13, 0xa3, 0x36, 0x04, 0xe0, 0xba, 0xd3, 0x45, 0x9b, 0x89, 0xcb, 0x7a, 0x2a, 0xd0, 0xc0, 0x23, 0xfe, 0xec, 0x18, 0xbf, 0xf9, 0xcd, 0x69, 0x42, 0xfa, 0x91, 0xc7, 0x8a, 0x92, 0x61, 0x0b, 0x90, 0xd9, 0xf4, 0x94, 0x50, 0x0a, 0x3b, 0x65, 0x52, 0x96, 0x3b, 0x07, 0xce, 0x6a, 0x64, 0x0b, 0x44, 0xeb, 0xc1, 0xdc, 0xbe, 0xc3, 0x65, 0xd7, 0x15, 0x12, 0x0a, 0xdd, 0xc1, 0xb4, 0x68, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10208 = { .name = "ecdsa_secp521r1_sha3_512_10208", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10208_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10208_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10208_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10209 for ECDSA, tcId is 255 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10209_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10209_msg[] = { 0x33, 0x33, 0x33, 0x37, 0x31, 0x31, 0x39, 0x39, 0x37, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10209_sig[] = { 0x00, 0xb2, 0x08, 0x1e, 0x68, 0x30, 0xeb, 0xcc, 0x22, 0xd9, 0x81, 0xfe, 0x9c, 0xbe, 0xc8, 0x1b, 0xfe, 0x9a, 0x4d, 0xab, 0x9c, 0x1a, 0xc1, 0xbf, 0xbd, 0x19, 0x92, 0x26, 0xe0, 0xff, 0xe0, 0xc5, 0xb9, 0xb0, 0x2a, 0x9c, 0x71, 0x0f, 0xb2, 0x19, 0x61, 0x6d, 0x74, 0x12, 0x00, 0x55, 0x1c, 0x20, 0x2f, 0x53, 0x8e, 0x8f, 0xf2, 0x0b, 0x6a, 0xfe, 0xf7, 0xac, 0xca, 0x30, 0x53, 0x08, 0xa1, 0x24, 0x45, 0xc6, 0x00, 0x0a, 0xee, 0xbc, 0x66, 0x03, 0xa5, 0x67, 0x27, 0x1e, 0xe3, 0x3c, 0x40, 0x52, 0x19, 0xcd, 0xaf, 0x33, 0xc6, 0xb8, 0x09, 0xd8, 0x88, 0xa0, 0xf0, 0xc1, 0xc2, 0x2c, 0xfb, 0xfb, 0x6c, 0xde, 0x33, 0xbc, 0x6f, 0xc5, 0xb5, 0xaf, 0x12, 0xc9, 0x52, 0xbe, 0x0b, 0x4c, 0xa5, 0x76, 0x6a, 0x0f, 0x9f, 0xe7, 0xaf, 0xf6, 0x9c, 0x97, 0x50, 0x70, 0x10, 0xe2, 0xb2, 0x9c, 0xad, 0x41, 0xf2, 0x75, 0x19, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10209 = { .name = "ecdsa_secp521r1_sha3_512_10209", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10209_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10209_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10209_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10210 for ECDSA, tcId is 256 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10210_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10210_msg[] = { 0x36, 0x36, 0x39, 0x35, 0x36, 0x32, 0x30, 0x36, 0x37, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10210_sig[] = { 0x01, 0x05, 0xa9, 0xc7, 0x24, 0x63, 0xf7, 0x03, 0x1c, 0x73, 0x03, 0xeb, 0xda, 0xfa, 0xae, 0x23, 0x3e, 0x8a, 0x00, 0x92, 0xcf, 0x48, 0x85, 0x95, 0x12, 0x4c, 0x00, 0xd8, 0xbd, 0x19, 0xe6, 0xb8, 0x51, 0xc6, 0x04, 0x01, 0x86, 0xff, 0xd0, 0xf3, 0xa8, 0x03, 0xb6, 0x16, 0xc9, 0xd8, 0xfd, 0x46, 0x00, 0x0b, 0xfb, 0x6f, 0x62, 0xea, 0x86, 0xd5, 0x66, 0xcc, 0x75, 0x72, 0x5d, 0xb6, 0x79, 0x0f, 0x43, 0xad, 0x00, 0x04, 0xa0, 0x6c, 0xa5, 0x03, 0x3d, 0xde, 0x4b, 0x77, 0x1f, 0x78, 0xca, 0x3b, 0xd7, 0x44, 0x69, 0x66, 0x91, 0x24, 0xb9, 0x9b, 0xed, 0x53, 0x35, 0x9b, 0x1b, 0xa3, 0x94, 0x64, 0x0b, 0x44, 0x59, 0x00, 0x8b, 0xfe, 0x36, 0x8e, 0xa2, 0xea, 0x5c, 0x45, 0xb7, 0xcb, 0xfb, 0xb6, 0xa1, 0x4d, 0x9d, 0xc0, 0x2b, 0xf8, 0x55, 0x15, 0xca, 0x11, 0x8c, 0xa8, 0x30, 0x2a, 0x3b, 0x6f, 0xaa, 0x33, 0xf5, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10210 = { .name = "ecdsa_secp521r1_sha3_512_10210", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10210_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10210_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10210_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10211 for ECDSA, tcId is 257 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10211_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10211_msg[] = { 0x32, 0x30, 0x39, 0x33, 0x30, 0x31, 0x37, 0x37, 0x34, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10211_sig[] = { 0x00, 0x66, 0x35, 0x7c, 0x26, 0x98, 0xc5, 0x1b, 0x89, 0x82, 0x4f, 0xaf, 0xdd, 0x9c, 0x7d, 0xf6, 0xf7, 0x51, 0x91, 0x10, 0x2e, 0x4b, 0x59, 0xa9, 0x2f, 0x3a, 0x91, 0x93, 0x9a, 0x23, 0x6a, 0xe1, 0xf6, 0x56, 0xc5, 0x23, 0xc2, 0xf4, 0xc5, 0xd2, 0x5f, 0x4d, 0x26, 0xfe, 0xf3, 0x4b, 0x73, 0xe4, 0x35, 0x05, 0xf7, 0x77, 0xbf, 0x80, 0x8e, 0x86, 0xd2, 0x9d, 0x45, 0xb5, 0xdc, 0x65, 0xb2, 0xbe, 0xba, 0xc1, 0x00, 0x15, 0x34, 0x98, 0xff, 0xdb, 0xbf, 0x43, 0x35, 0xcf, 0xf8, 0x91, 0xec, 0xe1, 0xca, 0xc1, 0x9d, 0x11, 0xb5, 0xb5, 0xb8, 0x37, 0x75, 0x97, 0x61, 0x67, 0xae, 0x43, 0xd5, 0x2a, 0xd9, 0x05, 0xf8, 0xdb, 0xea, 0x93, 0x69, 0xe8, 0xf3, 0x0b, 0x97, 0x64, 0xca, 0x4b, 0xf8, 0x8e, 0x0a, 0x67, 0xaa, 0xb9, 0x7d, 0x2d, 0xb6, 0x87, 0xb2, 0x2c, 0x2c, 0x7b, 0x31, 0x3d, 0x90, 0xc7, 0x7d, 0x64, 0x1f, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10211 = { .name = "ecdsa_secp521r1_sha3_512_10211", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10211_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10211_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10211_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10212 for ECDSA, tcId is 258 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10212_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x31, 0x37, 0x39, 0x31, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10212_sig[] = { 0x00, 0x80, 0xfe, 0xdb, 0x21, 0x9a, 0x91, 0x23, 0x09, 0x8d, 0xb3, 0xe4, 0x8f, 0x31, 0xb8, 0xc8, 0x50, 0xb0, 0xac, 0x0c, 0x88, 0xe4, 0x7c, 0x32, 0x8e, 0x08, 0x18, 0x57, 0xf1, 0xfa, 0x8d, 0xc5, 0x58, 0xa3, 0x0a, 0xaa, 0x04, 0xcc, 0xaa, 0x2f, 0x78, 0x8c, 0xd0, 0xb3, 0xa5, 0xec, 0x6c, 0x44, 0x1a, 0xe9, 0xe8, 0x16, 0xc7, 0x20, 0x70, 0x11, 0xd7, 0x89, 0xc3, 0x34, 0xba, 0x91, 0x6e, 0xd8, 0x14, 0x53, 0x01, 0xc2, 0x9e, 0x1f, 0x56, 0xae, 0xbc, 0x70, 0x5b, 0x61, 0x1a, 0x64, 0x3b, 0x83, 0x96, 0x88, 0xbd, 0xbf, 0x6f, 0x68, 0x4f, 0xaa, 0x7e, 0xfd, 0xd2, 0xf8, 0x6c, 0xf5, 0xa2, 0xaf, 0xca, 0xdf, 0xfc, 0x62, 0xa3, 0x55, 0x05, 0xb4, 0x21, 0xbb, 0x5f, 0x55, 0xf6, 0x88, 0xee, 0xbe, 0x49, 0xb7, 0x0e, 0xb0, 0xbf, 0x4f, 0x40, 0xe3, 0x66, 0xa1, 0x03, 0x9c, 0xde, 0xcf, 0xdd, 0xc5, 0x89, 0x34, 0xe5, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10212 = { .name = "ecdsa_secp521r1_sha3_512_10212", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10212_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10212_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10212_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10213 for ECDSA, tcId is 259 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10213_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10213_msg[] = { 0x31, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, 0x36, 0x38, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10213_sig[] = { 0x00, 0xdb, 0x5b, 0x25, 0x2f, 0x41, 0xb8, 0x13, 0x9d, 0xa5, 0x72, 0xde, 0x93, 0x1d, 0xc1, 0xef, 0x56, 0x9e, 0x49, 0xfa, 0x90, 0x21, 0xf6, 0x62, 0x34, 0x69, 0x3d, 0x08, 0x29, 0x29, 0x22, 0xde, 0xf3, 0x84, 0xac, 0xf8, 0xa0, 0x4d, 0x04, 0x4d, 0x07, 0xfe, 0x7c, 0x54, 0x8f, 0x1f, 0x0b, 0xf6, 0x38, 0x89, 0x06, 0xbf, 0xa8, 0x3b, 0x15, 0x40, 0x14, 0xf7, 0xdb, 0x2b, 0xae, 0x29, 0x44, 0x4d, 0xf3, 0x7d, 0x01, 0x7e, 0x9b, 0x0e, 0x27, 0xec, 0x4c, 0x00, 0xa7, 0xe6, 0x44, 0x67, 0xa2, 0x03, 0xe2, 0x12, 0x54, 0xda, 0xdc, 0x0a, 0x3d, 0xc3, 0x81, 0xbe, 0x92, 0x42, 0x15, 0xaf, 0x50, 0xc8, 0x0c, 0xed, 0x93, 0x62, 0x96, 0xc0, 0xaa, 0xe5, 0x7e, 0x8a, 0xce, 0x74, 0xc5, 0x34, 0xea, 0x74, 0x9d, 0x06, 0x1a, 0x8b, 0x7e, 0x1b, 0x5c, 0x85, 0xaa, 0x71, 0xc6, 0xcd, 0x36, 0xb3, 0x0e, 0x2a, 0xaa, 0x44, 0xa5, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10213 = { .name = "ecdsa_secp521r1_sha3_512_10213", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10213_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10213_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10213_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10214 for ECDSA, tcId is 260 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10214_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10214_msg[] = { 0x31, 0x31, 0x34, 0x31, 0x37, 0x32, 0x34, 0x31, 0x34, 0x34, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10214_sig[] = { 0x00, 0xde, 0x0b, 0x76, 0x36, 0x0a, 0x26, 0xb3, 0x66, 0x28, 0x6d, 0x0a, 0x95, 0xfd, 0xe0, 0xff, 0x2f, 0xf2, 0x4a, 0xdc, 0xc6, 0x3a, 0x2d, 0x2d, 0x45, 0xef, 0x8c, 0x1b, 0xc8, 0x03, 0x0d, 0x67, 0x3c, 0xdb, 0xc2, 0xe2, 0x74, 0xe3, 0x43, 0xf2, 0xd6, 0xbe, 0xfb, 0x60, 0x3c, 0xb8, 0xd6, 0xa7, 0xc7, 0x39, 0xa7, 0x85, 0xdb, 0xe4, 0xd9, 0x74, 0xc4, 0xfd, 0x25, 0xa2, 0x26, 0xe8, 0x9b, 0xb0, 0x8a, 0xbe, 0x01, 0x1a, 0x24, 0x89, 0x75, 0xf2, 0x86, 0xd1, 0x28, 0xf1, 0xbc, 0x91, 0x68, 0x29, 0xc7, 0xc5, 0x93, 0x78, 0x45, 0x9f, 0x61, 0xeb, 0xe7, 0xa4, 0x6a, 0xcb, 0xe3, 0x39, 0x4c, 0x71, 0xb0, 0x0e, 0x60, 0x77, 0x9a, 0x87, 0xee, 0x21, 0x0c, 0xa0, 0x42, 0x69, 0x6b, 0x2c, 0x64, 0x76, 0xd1, 0xed, 0x83, 0x00, 0x2b, 0xc8, 0xcb, 0x4a, 0x72, 0xa7, 0xc0, 0x6e, 0x62, 0xda, 0xe1, 0x67, 0xdc, 0x8b, 0x16, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10214 = { .name = "ecdsa_secp521r1_sha3_512_10214", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10214_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10214_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10214_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10215 for ECDSA, tcId is 261 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10215_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10215_msg[] = { 0x32, 0x32, 0x36, 0x38, 0x32, 0x34, 0x36, 0x34, 0x39, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10215_sig[] = { 0x01, 0x25, 0x0f, 0x78, 0x14, 0x0f, 0xaa, 0xc9, 0xb1, 0x31, 0xe0, 0xa8, 0x5e, 0xab, 0xdb, 0xac, 0xf6, 0xb9, 0x99, 0x46, 0x0c, 0x91, 0x8f, 0x1e, 0xb8, 0xed, 0x01, 0x54, 0xbd, 0x64, 0xdc, 0xd4, 0x60, 0x9d, 0x58, 0x56, 0xf4, 0x49, 0x5b, 0x4f, 0x42, 0x8b, 0x93, 0xc2, 0xd5, 0x8c, 0x16, 0x2c, 0x3e, 0xd7, 0x82, 0x63, 0xd8, 0x34, 0x40, 0xb9, 0x44, 0x41, 0x97, 0xda, 0xee, 0x10, 0x3e, 0x2e, 0x35, 0x65, 0x00, 0xbe, 0x45, 0x36, 0x43, 0x3e, 0xf0, 0x08, 0x01, 0x5d, 0xdf, 0x0b, 0xad, 0xd9, 0x46, 0x4e, 0xe8, 0x73, 0xf9, 0x0a, 0x81, 0x32, 0xea, 0x90, 0x6e, 0x95, 0xa5, 0xe8, 0xd0, 0xc0, 0xed, 0x95, 0x40, 0xf6, 0xe2, 0x74, 0x90, 0xad, 0xaa, 0xb4, 0x51, 0x21, 0x8d, 0x17, 0x71, 0xdc, 0x27, 0x45, 0xa9, 0xba, 0x01, 0xce, 0x8d, 0x9b, 0x00, 0x87, 0x37, 0xcd, 0xa0, 0xe4, 0xa0, 0x8c, 0x1e, 0x69, 0x29, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10215 = { .name = "ecdsa_secp521r1_sha3_512_10215", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10215_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10215_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10215_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10216 for ECDSA, tcId is 262 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10216_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10216_msg[] = { 0x32, 0x37, 0x32, 0x34, 0x37, 0x39, 0x36, 0x37, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10216_sig[] = { 0x01, 0xe6, 0x67, 0x88, 0x0a, 0xba, 0x13, 0xb0, 0xdf, 0xa4, 0x5e, 0x81, 0xa8, 0xf5, 0x34, 0xc6, 0x91, 0x89, 0x31, 0x50, 0xce, 0x1d, 0x6f, 0xa5, 0x43, 0xf2, 0xfb, 0x2a, 0x14, 0xa9, 0xdc, 0x50, 0xee, 0xad, 0x2f, 0x8f, 0x45, 0x33, 0x62, 0x08, 0x63, 0x77, 0x65, 0xc6, 0x1e, 0x22, 0x73, 0x2b, 0x83, 0x75, 0x61, 0x9f, 0xaa, 0xc8, 0xec, 0xcd, 0xea, 0x37, 0xfd, 0xf0, 0xef, 0xa9, 0x49, 0x71, 0x62, 0xf4, 0x01, 0x20, 0xed, 0x36, 0xa0, 0x02, 0x99, 0xf6, 0x83, 0x18, 0xfa, 0x56, 0x07, 0x2c, 0xb3, 0x9a, 0x1e, 0x9a, 0x6f, 0xbf, 0xfe, 0xea, 0xb0, 0x47, 0xbc, 0x31, 0x5a, 0xd6, 0xff, 0x5f, 0x82, 0xdc, 0x43, 0x31, 0x26, 0xfa, 0xeb, 0xef, 0x1a, 0xdc, 0x6d, 0x2f, 0x64, 0x33, 0x92, 0x39, 0xb2, 0x48, 0x89, 0x8c, 0x96, 0x3e, 0xe4, 0x2f, 0x35, 0x6f, 0xb2, 0x5b, 0xf1, 0x1f, 0xea, 0xd7, 0x90, 0xd2, 0x8f, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10216 = { .name = "ecdsa_secp521r1_sha3_512_10216", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10216_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10216_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10216_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10217 for ECDSA, tcId is 263 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10217_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10217_msg[] = { 0x39, 0x37, 0x33, 0x33, 0x39, 0x35, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10217_sig[] = { 0x01, 0xd7, 0x11, 0x3e, 0x16, 0x91, 0xc4, 0x15, 0xb3, 0xc8, 0xaa, 0x1d, 0x66, 0x2c, 0xe7, 0x5a, 0xc9, 0xe5, 0x4c, 0x4d, 0x5a, 0x9a, 0xf6, 0x98, 0xb3, 0x38, 0xa2, 0xf5, 0xcd, 0xc7, 0x7a, 0x88, 0x73, 0x5d, 0xdb, 0xdc, 0x15, 0x51, 0x92, 0xad, 0x0a, 0xc8, 0xa8, 0xf4, 0xb4, 0x6a, 0x86, 0x1d, 0x0f, 0xd9, 0x52, 0x6f, 0x69, 0x6b, 0xfc, 0x5c, 0x27, 0x82, 0x3a, 0xed, 0x61, 0x2d, 0x6c, 0x80, 0x79, 0x9d, 0x01, 0xf4, 0xa0, 0x9f, 0x3a, 0x97, 0x5c, 0xe4, 0xd2, 0x37, 0xc0, 0xe0, 0x0f, 0xa6, 0x0c, 0xa3, 0x4e, 0x9b, 0xe2, 0xab, 0x2f, 0xc7, 0xfc, 0xde, 0x81, 0x1e, 0x49, 0xbc, 0xbe, 0xf0, 0x86, 0x65, 0x4f, 0x97, 0xa6, 0x7d, 0xdd, 0x07, 0x5f, 0x68, 0x13, 0x7b, 0xa4, 0x67, 0x56, 0x0e, 0x5f, 0x72, 0xa4, 0xdf, 0xd2, 0x3d, 0x12, 0x3e, 0x08, 0x00, 0x4f, 0xba, 0xfa, 0x9d, 0xfc, 0xb5, 0x31, 0x9f, 0x09, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10217 = { .name = "ecdsa_secp521r1_sha3_512_10217", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10217_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10217_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10217_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10218 for ECDSA, tcId is 264 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10218_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10218_msg[] = { 0x31, 0x35, 0x30, 0x37, 0x30, 0x30, 0x32, 0x37, 0x30, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10218_sig[] = { 0x01, 0xe9, 0x48, 0xd7, 0x6c, 0xa9, 0xfc, 0xa0, 0xa7, 0xa9, 0x9c, 0xb5, 0x6c, 0x8c, 0x24, 0x06, 0x6d, 0xfd, 0x05, 0x77, 0xd8, 0xcf, 0x0f, 0x15, 0x4b, 0x75, 0x20, 0xea, 0x2f, 0x97, 0xfa, 0x94, 0xfc, 0x79, 0x1d, 0x21, 0xf5, 0xad, 0x0f, 0x56, 0xd9, 0xad, 0xce, 0x2b, 0xf4, 0xc2, 0x59, 0x69, 0x8a, 0x64, 0x2b, 0x03, 0xd1, 0x11, 0x5b, 0x7f, 0x1e, 0xcd, 0x98, 0x04, 0xd3, 0x01, 0x24, 0xe8, 0xc2, 0x52, 0x00, 0x6d, 0x4e, 0xd5, 0xc2, 0x7e, 0x6d, 0xdc, 0x80, 0xb6, 0x98, 0x02, 0xe8, 0x1f, 0x4d, 0xa4, 0x10, 0x8b, 0xf9, 0x3c, 0xa0, 0x82, 0xa6, 0x1d, 0xf2, 0x96, 0xf1, 0x55, 0x57, 0xdc, 0xf1, 0x2b, 0x5d, 0x94, 0x66, 0xfb, 0xda, 0x02, 0xbf, 0x53, 0x99, 0xb1, 0x75, 0x46, 0x4a, 0x7b, 0x23, 0x86, 0x6b, 0xfb, 0xa0, 0x79, 0xb1, 0xb1, 0x12, 0xbf, 0x06, 0xb3, 0x67, 0x23, 0xfd, 0x61, 0x11, 0x35, 0xc4, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10218 = { .name = "ecdsa_secp521r1_sha3_512_10218", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10218_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10218_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10218_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10219 for ECDSA, tcId is 265 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10219_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10219_msg[] = { 0x33, 0x37, 0x34, 0x33, 0x35, 0x36, 0x38, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10219_sig[] = { 0x00, 0x5e, 0xf3, 0x61, 0x04, 0x2a, 0x5d, 0xfb, 0x80, 0x57, 0xe9, 0x99, 0x68, 0xfa, 0x8d, 0xc5, 0xc3, 0x2e, 0x1e, 0x6f, 0xee, 0x6a, 0x92, 0x3e, 0x8c, 0xa7, 0x11, 0xc4, 0x85, 0x1b, 0x1b, 0xab, 0x8c, 0x6d, 0xce, 0x47, 0x63, 0x1c, 0x69, 0xa2, 0x2b, 0x6d, 0x57, 0x44, 0x38, 0x0f, 0x92, 0x31, 0x8a, 0x38, 0x73, 0x8d, 0xf7, 0xf7, 0x4d, 0x3b, 0xa0, 0x6b, 0xe2, 0xdf, 0x0f, 0xae, 0x32, 0xd3, 0xb9, 0xe4, 0x01, 0x99, 0x88, 0xd9, 0x98, 0xbf, 0xc2, 0x70, 0xb6, 0x8e, 0x7b, 0xad, 0x76, 0x1e, 0x99, 0xf9, 0xaf, 0xfd, 0xd9, 0x64, 0x78, 0xfa, 0x9d, 0x02, 0xcf, 0x04, 0x26, 0x9e, 0xde, 0x6d, 0x60, 0x4b, 0x76, 0x80, 0xa9, 0xdc, 0xd8, 0xa3, 0xf5, 0x89, 0xb9, 0x89, 0xc0, 0x6f, 0xbe, 0x25, 0x1c, 0x49, 0x0b, 0x19, 0xf3, 0xc2, 0x97, 0xa4, 0x13, 0x67, 0xf1, 0xf6, 0xe2, 0xe3, 0x9e, 0x2c, 0x4c, 0xa1, 0x92, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10219 = { .name = "ecdsa_secp521r1_sha3_512_10219", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10219_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10219_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10219_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10220 for ECDSA, tcId is 266 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10220_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10220_msg[] = { 0x39, 0x34, 0x37, 0x36, 0x37, 0x31, 0x32, 0x34, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10220_sig[] = { 0x01, 0xb8, 0x0a, 0x65, 0x92, 0xfa, 0x73, 0x3c, 0xe7, 0x7b, 0x3f, 0x48, 0xfe, 0xbe, 0x5b, 0x17, 0x8c, 0x28, 0x72, 0x88, 0xa9, 0x76, 0xb8, 0x57, 0xa4, 0xa0, 0x20, 0xf0, 0x75, 0x16, 0x57, 0x71, 0x84, 0xa2, 0x96, 0xfe, 0x37, 0xc3, 0xb8, 0x8d, 0x3c, 0xf2, 0x0e, 0x00, 0xb5, 0xc5, 0x3d, 0x58, 0x81, 0xf2, 0xa2, 0x19, 0x80, 0xe3, 0xad, 0x3e, 0x8c, 0x0e, 0x35, 0x8e, 0x36, 0x3c, 0x49, 0x27, 0xe3, 0x23, 0x00, 0x80, 0x09, 0xc2, 0x40, 0x1d, 0xb7, 0x11, 0x67, 0x78, 0x67, 0xb8, 0x98, 0x22, 0x52, 0x17, 0x99, 0x70, 0x05, 0xbb, 0x45, 0x8d, 0x6c, 0x51, 0x09, 0xc5, 0x6f, 0xd2, 0xae, 0x72, 0xd3, 0xdf, 0x8b, 0x8e, 0x4c, 0x4d, 0x5f, 0x50, 0x38, 0x96, 0x92, 0x30, 0xce, 0xf0, 0x13, 0x4c, 0xe1, 0x7b, 0xa1, 0x9a, 0xaa, 0xea, 0xad, 0xbb, 0x3d, 0xa7, 0xf1, 0x6c, 0xe4, 0x70, 0x01, 0x19, 0xc8, 0xd9, 0x1c, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10220 = { .name = "ecdsa_secp521r1_sha3_512_10220", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10220_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10220_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10220_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10221 for ECDSA, tcId is 267 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10221_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10221_msg[] = { 0x37, 0x32, 0x35, 0x34, 0x34, 0x34, 0x33, 0x32, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10221_sig[] = { 0x00, 0xbc, 0x37, 0x85, 0xbf, 0xf1, 0xe5, 0xc9, 0xbc, 0xa6, 0xd1, 0x2d, 0x30, 0x38, 0x49, 0x48, 0x7f, 0x2d, 0x81, 0x59, 0xff, 0x5d, 0xf7, 0x82, 0x43, 0x3f, 0x3a, 0x61, 0x6b, 0x9f, 0xb4, 0x92, 0x80, 0x97, 0x8a, 0xa8, 0x8d, 0x94, 0x0d, 0x04, 0x28, 0x09, 0x7f, 0x82, 0xa2, 0x6e, 0xc2, 0x22, 0x46, 0xe6, 0x4f, 0x67, 0x5a, 0x51, 0x18, 0xc7, 0xba, 0x67, 0xbd, 0x69, 0xf4, 0x6f, 0xa6, 0x85, 0x2c, 0x59, 0x00, 0x52, 0x46, 0x98, 0x00, 0xe0, 0xc5, 0x0d, 0x7a, 0x58, 0x0a, 0x67, 0x00, 0x8f, 0x07, 0x89, 0x43, 0x76, 0xc3, 0x78, 0x33, 0x95, 0xb7, 0xf4, 0x1e, 0xf4, 0x68, 0xa2, 0x9f, 0xaf, 0xcf, 0xc4, 0xa6, 0x8b, 0x28, 0x99, 0x66, 0x96, 0x03, 0xad, 0x85, 0x8f, 0xed, 0x05, 0xf2, 0x32, 0xcf, 0x39, 0x84, 0x4f, 0x2d, 0x86, 0x06, 0x35, 0x59, 0x93, 0xdd, 0xe9, 0xa6, 0xda, 0xc1, 0x4a, 0x6e, 0xb7, 0x0b, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10221 = { .name = "ecdsa_secp521r1_sha3_512_10221", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10221_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10221_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10221_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10222 for ECDSA, tcId is 268 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10222_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10222_msg[] = { 0x35, 0x35, 0x33, 0x34, 0x30, 0x32, 0x31, 0x32, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10222_sig[] = { 0x01, 0x28, 0x9d, 0x4e, 0x5d, 0xb3, 0x32, 0xd1, 0x3b, 0xe1, 0xf4, 0x44, 0x62, 0x02, 0x0f, 0x38, 0x82, 0xe0, 0xa6, 0x26, 0x81, 0x4e, 0x5a, 0x7c, 0xf3, 0x88, 0xec, 0x84, 0x53, 0xed, 0x1f, 0x92, 0x1b, 0xdc, 0x3d, 0xd2, 0xbb, 0xc6, 0x14, 0xe4, 0xf1, 0xbe, 0x52, 0xbc, 0x0b, 0xae, 0xdc, 0x8f, 0x66, 0x2f, 0x77, 0x69, 0xa4, 0x1a, 0xac, 0x95, 0xd7, 0xa1, 0x59, 0x93, 0x90, 0xfd, 0x90, 0x0d, 0x7e, 0xf9, 0x00, 0x32, 0xd8, 0x76, 0xea, 0xe3, 0x7c, 0x73, 0xd7, 0x90, 0x73, 0xc9, 0xab, 0x8e, 0x75, 0x6d, 0x2b, 0xff, 0x61, 0x64, 0x64, 0xa7, 0x33, 0xac, 0xbc, 0x26, 0xd4, 0x74, 0xd0, 0x0c, 0xae, 0xdf, 0x09, 0x1d, 0xd4, 0xb2, 0xe9, 0x9c, 0x0b, 0xc0, 0x60, 0xf0, 0xd3, 0xd3, 0x93, 0xa3, 0x27, 0x2d, 0x76, 0x94, 0x9f, 0x09, 0x1e, 0x27, 0x8b, 0xf3, 0x71, 0x23, 0x48, 0x32, 0xe2, 0x3d, 0xf8, 0xb1, 0x5c, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10222 = { .name = "ecdsa_secp521r1_sha3_512_10222", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10222_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10222_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10222_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10223 for ECDSA, tcId is 269 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10223_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10223_msg[] = { 0x31, 0x32, 0x33, 0x30, 0x31, 0x38, 0x31, 0x33, 0x37, 0x39, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10223_sig[] = { 0x01, 0x30, 0x08, 0x17, 0xe6, 0x78, 0x3f, 0x70, 0x4b, 0x2e, 0xdd, 0xdb, 0xd4, 0xd0, 0x16, 0xbf, 0x45, 0xa8, 0x0f, 0xf0, 0x68, 0x45, 0x05, 0x8d, 0x3f, 0xd9, 0xa1, 0xdc, 0x13, 0x49, 0xef, 0x90, 0x2b, 0xbf, 0xb6, 0x9f, 0x55, 0xb0, 0x14, 0x1c, 0x1f, 0x92, 0x5f, 0xea, 0x8b, 0xc9, 0xe3, 0x5f, 0x44, 0xd7, 0x2b, 0x69, 0x35, 0xcc, 0x7d, 0x49, 0xeb, 0x2d, 0xa1, 0xf1, 0xb3, 0x09, 0x74, 0x83, 0xa9, 0xca, 0x00, 0xe5, 0x35, 0x73, 0x70, 0x7d, 0x45, 0x33, 0xf6, 0x52, 0x31, 0xa6, 0xd0, 0x53, 0x9d, 0xfe, 0x5b, 0x88, 0x5c, 0x01, 0x26, 0x02, 0x10, 0x22, 0xde, 0x32, 0xf3, 0xa4, 0x19, 0x9b, 0xb1, 0xd4, 0x70, 0xcf, 0xf7, 0xfe, 0xfa, 0xfa, 0x95, 0xcf, 0x9b, 0x31, 0xfc, 0x43, 0xf3, 0x32, 0x6f, 0x3e, 0x6e, 0x64, 0xc3, 0x14, 0x98, 0xbd, 0x71, 0xdd, 0x83, 0x06, 0x59, 0x2c, 0xc1, 0xd9, 0x87, 0xcc, 0x0a, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10223 = { .name = "ecdsa_secp521r1_sha3_512_10223", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10223_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10223_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10223_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10224 for ECDSA, tcId is 270 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10224_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10224_msg[] = { 0x39, 0x31, 0x31, 0x35, 0x33, 0x31, 0x37, 0x36, 0x31, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10224_sig[] = { 0x01, 0x85, 0x71, 0xd2, 0xe7, 0x8c, 0x0f, 0xd3, 0x52, 0x6c, 0x44, 0xcc, 0xf5, 0xd1, 0x3b, 0xff, 0x20, 0x3d, 0x1d, 0x60, 0xf8, 0x98, 0x5e, 0x97, 0x73, 0x95, 0xbd, 0xf8, 0xa8, 0x42, 0x69, 0x1b, 0x82, 0xd0, 0x35, 0x80, 0x9a, 0x07, 0x1e, 0xa8, 0x55, 0x6a, 0xe1, 0xb7, 0x1a, 0xcc, 0x41, 0x5f, 0x20, 0x8f, 0x45, 0x55, 0x16, 0x58, 0x06, 0xb1, 0x37, 0x58, 0xd8, 0xc0, 0x3a, 0x69, 0x20, 0x84, 0xc7, 0xda, 0x01, 0x5a, 0xc3, 0xa6, 0x4b, 0x46, 0xdf, 0x04, 0x36, 0x58, 0xdc, 0xe2, 0x1c, 0x33, 0x3d, 0xf7, 0xac, 0xca, 0x6d, 0x9c, 0xe3, 0x16, 0x14, 0x69, 0xd0, 0x05, 0xb3, 0x01, 0x7c, 0x3e, 0xb4, 0x21, 0x59, 0x33, 0x3c, 0x71, 0x16, 0x1e, 0x85, 0x76, 0xcb, 0x0c, 0x83, 0x18, 0x4e, 0x5c, 0x51, 0x3b, 0x13, 0xf4, 0x3e, 0xe6, 0x65, 0xd7, 0xfa, 0x83, 0x63, 0xd8, 0x09, 0x06, 0x02, 0x46, 0x52, 0x6e, 0xea, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10224 = { .name = "ecdsa_secp521r1_sha3_512_10224", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10224_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10224_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10224_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10225 for ECDSA, tcId is 271 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10225_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10225_msg[] = { 0x32, 0x38, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10225_sig[] = { 0x00, 0x4c, 0x18, 0x6d, 0x72, 0x3b, 0x97, 0x36, 0x0a, 0xd1, 0x83, 0x29, 0xe4, 0xef, 0xfe, 0x6a, 0x4c, 0xa8, 0x0c, 0x17, 0xed, 0x4f, 0xa8, 0xbc, 0x11, 0x37, 0xca, 0x0d, 0x26, 0x1b, 0xdb, 0x84, 0x5c, 0x24, 0xa0, 0x18, 0xa9, 0x60, 0xc1, 0x3d, 0xcf, 0xdf, 0xa9, 0x4c, 0x73, 0x9f, 0xa5, 0x39, 0x0b, 0x09, 0x43, 0x33, 0x57, 0x03, 0xb7, 0xad, 0xc0, 0xe5, 0xc6, 0xd9, 0x7f, 0xe0, 0xf3, 0x23, 0x13, 0x34, 0x01, 0x7a, 0x44, 0x6f, 0x9f, 0x54, 0xff, 0x41, 0xcb, 0x9b, 0xdb, 0xd0, 0x2d, 0x23, 0x6b, 0x4d, 0x25, 0x97, 0x68, 0x9f, 0x99, 0x52, 0x8a, 0x3a, 0x57, 0xcd, 0x10, 0xe5, 0xee, 0x38, 0xfc, 0x95, 0x84, 0xef, 0xa5, 0xd8, 0x09, 0x98, 0xc2, 0x9d, 0x47, 0x79, 0x6f, 0x02, 0xd2, 0x0a, 0x9e, 0x7b, 0x49, 0x3c, 0xe8, 0x7a, 0x60, 0x44, 0x89, 0x43, 0xbc, 0x55, 0x13, 0x4a, 0xf1, 0x71, 0xc9, 0x16, 0x2a, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10225 = { .name = "ecdsa_secp521r1_sha3_512_10225", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10225_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10225_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10225_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10226 for ECDSA, tcId is 272 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10226_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10226_msg[] = { 0x31, 0x32, 0x33, 0x33, 0x35, 0x38, 0x33, 0x30, 0x33, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10226_sig[] = { 0x01, 0x6d, 0x8f, 0x25, 0x6b, 0x29, 0xc5, 0x01, 0xaa, 0xb1, 0xf2, 0x44, 0x2c, 0x36, 0x7e, 0xe5, 0xf6, 0x4f, 0x7e, 0x9d, 0x83, 0x91, 0xad, 0x39, 0x9c, 0xe7, 0xad, 0x3a, 0x84, 0xf0, 0x65, 0x66, 0x98, 0x47, 0x4e, 0x3c, 0x72, 0x19, 0xe3, 0x56, 0x41, 0xa9, 0xf6, 0x7e, 0xfe, 0x6d, 0x85, 0xa7, 0xd5, 0xe4, 0x50, 0x20, 0x11, 0xcd, 0x61, 0xeb, 0x6b, 0x50, 0x10, 0x07, 0x20, 0x4a, 0xa1, 0xaa, 0xf0, 0xeb, 0x00, 0x3a, 0xe0, 0x17, 0x95, 0xce, 0xad, 0x8f, 0x70, 0xaf, 0x2b, 0x22, 0x5b, 0x8b, 0x34, 0x6c, 0x6a, 0xe0, 0xa9, 0xae, 0x04, 0x8b, 0x77, 0x68, 0xdc, 0x86, 0xc9, 0xce, 0xc3, 0xcf, 0x07, 0x09, 0xf5, 0x4b, 0x29, 0xf9, 0x9f, 0xd2, 0xea, 0xe8, 0x7f, 0x01, 0x78, 0xdc, 0x26, 0x6b, 0x55, 0x4c, 0x77, 0x9b, 0x0e, 0x27, 0x26, 0x75, 0x32, 0x32, 0xb1, 0x85, 0xa1, 0xef, 0xdd, 0x9b, 0x24, 0xdd, 0x23, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10226 = { .name = "ecdsa_secp521r1_sha3_512_10226", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10226_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10226_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10226_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10227 for ECDSA, tcId is 273 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10227_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10227_msg[] = { 0x32, 0x31, 0x31, 0x32, 0x36, 0x39, 0x32, 0x35, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10227_sig[] = { 0x01, 0xfd, 0x7c, 0x97, 0x37, 0xab, 0x2c, 0xfb, 0x80, 0x44, 0xec, 0xf5, 0x12, 0x61, 0x7f, 0xa1, 0x99, 0xa0, 0x4f, 0x49, 0x00, 0xa0, 0xed, 0x8e, 0x61, 0x13, 0xc5, 0xd2, 0xfd, 0x19, 0xc7, 0x54, 0x42, 0x79, 0xa2, 0x9a, 0x1e, 0xdb, 0xa9, 0xee, 0x6c, 0x0a, 0xab, 0xa2, 0x25, 0x7f, 0xe1, 0x9d, 0xeb, 0x40, 0x42, 0x93, 0x57, 0x54, 0xc7, 0x8e, 0xe1, 0x7a, 0xca, 0x93, 0x00, 0x56, 0xc1, 0x84, 0x58, 0xdb, 0x00, 0x40, 0x06, 0x58, 0xf9, 0xd1, 0x36, 0xe0, 0xa9, 0x94, 0xa4, 0x21, 0x94, 0x85, 0xe2, 0xb6, 0xa3, 0xbf, 0x36, 0xaa, 0xdf, 0xd6, 0x92, 0x7c, 0x14, 0xae, 0xad, 0xa8, 0xec, 0x88, 0xca, 0x0c, 0xe7, 0xa1, 0x69, 0xb7, 0x98, 0x60, 0xf7, 0xdc, 0x49, 0xb5, 0x9d, 0x9c, 0xf6, 0x29, 0xf5, 0xfe, 0x1d, 0x07, 0xa4, 0xee, 0xa0, 0xea, 0x61, 0xbe, 0xeb, 0xb6, 0x56, 0x15, 0x73, 0x6f, 0xa3, 0xf1, 0xba, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10227 = { .name = "ecdsa_secp521r1_sha3_512_10227", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10227_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10227_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10227_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10228 for ECDSA, tcId is 274 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10228_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10228_msg[] = { 0x33, 0x30, 0x30, 0x35, 0x34, 0x38, 0x33, 0x38, 0x36, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10228_sig[] = { 0x01, 0x10, 0x9c, 0xe5, 0xf9, 0x45, 0x41, 0xc6, 0x0c, 0x97, 0x48, 0xfc, 0xb5, 0x5f, 0x83, 0xac, 0x9b, 0x35, 0x15, 0x76, 0xbc, 0x92, 0xbf, 0x21, 0xe6, 0xa9, 0x89, 0x30, 0x2b, 0x07, 0x6c, 0x86, 0x9b, 0x23, 0x00, 0xfb, 0xd7, 0x17, 0xd6, 0xc0, 0x8b, 0x1e, 0xd6, 0x19, 0xbe, 0x25, 0x61, 0x56, 0x24, 0x8d, 0xdc, 0x33, 0x25, 0x8a, 0x7e, 0xa5, 0x8c, 0xcd, 0xcb, 0x22, 0x30, 0x72, 0x27, 0x8a, 0xe5, 0x8d, 0x01, 0x6f, 0x9e, 0xff, 0x4d, 0x78, 0xad, 0x49, 0x62, 0x90, 0xe3, 0x57, 0x10, 0x75, 0x44, 0x37, 0xec, 0x0a, 0x9b, 0x30, 0xa3, 0xbe, 0x09, 0x17, 0x27, 0xdd, 0x25, 0x68, 0x02, 0xfc, 0xcf, 0xaa, 0xc8, 0xc6, 0xf5, 0x3a, 0xab, 0x0c, 0x39, 0xad, 0xbb, 0x4b, 0x34, 0x43, 0x3f, 0xcc, 0x1f, 0x22, 0x1e, 0x82, 0x22, 0xf3, 0x38, 0x9c, 0x0d, 0x64, 0x6e, 0xdd, 0xbc, 0x07, 0xdd, 0xf0, 0x45, 0x06, 0x31, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10228 = { .name = "ecdsa_secp521r1_sha3_512_10228", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10228_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10228_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10228_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10229 for ECDSA, tcId is 275 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10229_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10229_msg[] = { 0x38, 0x33, 0x35, 0x36, 0x37, 0x36, 0x32, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10229_sig[] = { 0x01, 0x54, 0xa4, 0x04, 0xa6, 0xcc, 0x2a, 0x53, 0xac, 0xa7, 0x03, 0x81, 0xb3, 0x22, 0x33, 0x96, 0x94, 0x7d, 0xd1, 0x7e, 0xed, 0x27, 0xd6, 0xf3, 0xc0, 0xb9, 0xb6, 0xda, 0x00, 0xd8, 0x2f, 0x6e, 0xa4, 0xf5, 0x84, 0xa5, 0x22, 0xf8, 0xae, 0x4c, 0x11, 0xcd, 0xf8, 0x6f, 0x61, 0xad, 0x12, 0xa4, 0x31, 0xc6, 0xc3, 0x88, 0x55, 0x40, 0x2f, 0x87, 0xb6, 0xc3, 0x7c, 0xa2, 0x78, 0xe6, 0xcb, 0xbc, 0x2f, 0x83, 0x00, 0xcb, 0x11, 0xbf, 0xef, 0xff, 0xe6, 0x55, 0x9f, 0x08, 0x4f, 0x3a, 0xd3, 0xfc, 0xc9, 0xc1, 0x51, 0x3c, 0x26, 0x57, 0xf2, 0x31, 0x84, 0x7d, 0xa4, 0x0d, 0x2e, 0x5f, 0x8b, 0x25, 0x96, 0xa5, 0x79, 0x55, 0x36, 0x00, 0x75, 0xbc, 0x9b, 0xb8, 0x2e, 0xff, 0xa7, 0x1a, 0xa1, 0xaf, 0x94, 0x85, 0xbe, 0x66, 0x9a, 0xc4, 0xb3, 0xfd, 0x10, 0x7c, 0x4f, 0x81, 0x07, 0x1a, 0xd1, 0x06, 0xd8, 0xb0, 0x68, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10229 = { .name = "ecdsa_secp521r1_sha3_512_10229", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10229_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10229_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10229_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10230 for ECDSA, tcId is 276 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10230_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10230_msg[] = { 0x38, 0x33, 0x32, 0x39, 0x35, 0x30, 0x30, 0x37, 0x36, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10230_sig[] = { 0x00, 0x93, 0xcb, 0xe3, 0xfb, 0x6d, 0x4d, 0x3d, 0x42, 0x42, 0x89, 0x97, 0xab, 0x1e, 0xe2, 0x36, 0x22, 0x88, 0x78, 0xbd, 0x91, 0xf8, 0x09, 0xb1, 0xa0, 0x06, 0x26, 0xce, 0x38, 0x06, 0x48, 0x0c, 0x29, 0x8e, 0xf4, 0xd4, 0x3d, 0x26, 0x23, 0xc2, 0xa5, 0x8d, 0x3d, 0xae, 0xed, 0x0a, 0x40, 0x90, 0xd0, 0x51, 0x3e, 0xba, 0xee, 0x41, 0x2e, 0x85, 0x2b, 0x24, 0x79, 0xf6, 0x93, 0xda, 0x45, 0x8a, 0x94, 0xe3, 0x01, 0x20, 0xc5, 0x82, 0x2a, 0xbe, 0x92, 0xfc, 0xd3, 0x4c, 0x66, 0x24, 0xd7, 0x1e, 0x98, 0xb8, 0x71, 0x21, 0x73, 0xac, 0x17, 0xf3, 0xd6, 0x63, 0xee, 0xdd, 0x1c, 0x1e, 0x90, 0x5c, 0x30, 0x06, 0x10, 0x77, 0x8a, 0xbc, 0x54, 0xac, 0x6f, 0x79, 0x06, 0x02, 0xdf, 0x4e, 0x2f, 0x4b, 0x84, 0xca, 0x35, 0xcf, 0x1b, 0x5c, 0xce, 0x08, 0xde, 0x34, 0x1b, 0x08, 0xdb, 0x82, 0xdf, 0xdf, 0x87, 0xae, 0x66, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10230 = { .name = "ecdsa_secp521r1_sha3_512_10230", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10230_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10230_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10230_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10231 for ECDSA, tcId is 277 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10231_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10231_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x38, 0x34, 0x31, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10231_sig[] = { 0x00, 0x2b, 0xff, 0x1e, 0xb4, 0xd4, 0xa3, 0xad, 0x96, 0x76, 0xea, 0x4e, 0x17, 0x1a, 0xc8, 0x32, 0xb4, 0xd1, 0x17, 0x4b, 0x46, 0xcb, 0x4b, 0x9c, 0x7e, 0xb3, 0xcc, 0x4f, 0x88, 0x60, 0x79, 0x5d, 0x49, 0xa1, 0xfe, 0x36, 0x76, 0xf0, 0x85, 0xa4, 0x42, 0x32, 0xf4, 0xf2, 0x4c, 0x13, 0x68, 0xfa, 0x05, 0x38, 0xd0, 0xef, 0x8e, 0x64, 0xbe, 0x8c, 0xdc, 0xb8, 0x35, 0xe2, 0xc2, 0x3d, 0x00, 0x64, 0xa1, 0x62, 0x00, 0x4b, 0x73, 0xfd, 0x94, 0xb4, 0x1b, 0xec, 0xa2, 0x14, 0x16, 0xce, 0x3e, 0x45, 0x15, 0x85, 0x51, 0x67, 0x13, 0x75, 0x12, 0x35, 0xe2, 0x0c, 0x04, 0xf9, 0x0e, 0x5d, 0x64, 0x58, 0xae, 0x38, 0x2c, 0xd5, 0x0c, 0xcf, 0x95, 0x23, 0xdb, 0x05, 0xc7, 0x17, 0x9d, 0x9a, 0xea, 0x6b, 0x74, 0x00, 0xae, 0x83, 0xd2, 0x8a, 0xe9, 0x20, 0xf6, 0x70, 0x1e, 0xa0, 0xda, 0xd7, 0xbc, 0x36, 0x4e, 0xd5, 0x9d, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10231 = { .name = "ecdsa_secp521r1_sha3_512_10231", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10231_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10231_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10231_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10232 for ECDSA, tcId is 278 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10232_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10232_msg[] = { 0x37, 0x33, 0x30, 0x32, 0x33, 0x35, 0x38, 0x32, 0x38, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10232_sig[] = { 0x01, 0x6d, 0xbb, 0xab, 0x10, 0x52, 0x66, 0xa7, 0x8d, 0x1d, 0xf8, 0xe1, 0x95, 0xd8, 0x54, 0xa4, 0xff, 0xfd, 0x3d, 0x66, 0xbf, 0x17, 0xec, 0x3f, 0x96, 0xe3, 0xc2, 0xc5, 0xfd, 0x26, 0xb2, 0xc5, 0x9a, 0x15, 0x60, 0x78, 0xae, 0xac, 0xc5, 0x83, 0x2d, 0x81, 0xcc, 0x6c, 0x86, 0x39, 0x6f, 0x47, 0x1c, 0xf8, 0xd4, 0xdc, 0x4f, 0x28, 0x91, 0xb4, 0x3b, 0x0b, 0x49, 0x80, 0x46, 0x97, 0x82, 0xa4, 0xf0, 0x9a, 0x01, 0xa9, 0xd5, 0xd0, 0x4b, 0x82, 0x0d, 0x5b, 0xe9, 0x31, 0xfd, 0xe0, 0x88, 0x01, 0xd4, 0x6a, 0x27, 0xd3, 0xe7, 0xfe, 0x99, 0x95, 0xaa, 0x09, 0x70, 0xb7, 0xac, 0xc7, 0x39, 0xc5, 0x6e, 0x94, 0xc5, 0x24, 0xe5, 0x7e, 0x5d, 0xe3, 0x86, 0xfb, 0x10, 0x02, 0xe7, 0x6d, 0x17, 0xcc, 0x84, 0x58, 0x4e, 0x67, 0x7f, 0x92, 0x65, 0x5a, 0x0f, 0xce, 0x71, 0xb0, 0x37, 0x03, 0xd4, 0x47, 0x4e, 0xd4, 0x77, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10232 = { .name = "ecdsa_secp521r1_sha3_512_10232", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10232_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10232_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10232_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10233 for ECDSA, tcId is 279 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10233_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10233_msg[] = { 0x31, 0x33, 0x34, 0x37, 0x33, 0x37, 0x33, 0x37, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10233_sig[] = { 0x01, 0x2b, 0x83, 0x53, 0x1b, 0x8b, 0x74, 0xc6, 0x99, 0xa3, 0xa3, 0x40, 0xcc, 0x13, 0x3b, 0x55, 0x9b, 0x0b, 0xc4, 0xab, 0xc0, 0xed, 0xa7, 0x17, 0x96, 0x2b, 0x7f, 0x68, 0xeb, 0x05, 0xf3, 0x82, 0x30, 0x72, 0x79, 0xa5, 0x71, 0x76, 0x0a, 0x88, 0xb6, 0xc1, 0x1c, 0xd0, 0xc0, 0x60, 0xa8, 0x60, 0x3e, 0xda, 0x02, 0x10, 0x38, 0x78, 0x4f, 0xe1, 0xfb, 0xfc, 0x19, 0x9e, 0x03, 0x8a, 0x3d, 0x8e, 0xb2, 0x6f, 0x00, 0x13, 0x22, 0x8a, 0xe6, 0xc8, 0xe5, 0x68, 0x2c, 0xd4, 0xeb, 0xd1, 0x12, 0x58, 0x92, 0xdd, 0x95, 0xbd, 0x31, 0xbb, 0xf5, 0x0a, 0xae, 0xf0, 0x61, 0x61, 0x4c, 0x47, 0x15, 0xa9, 0x0f, 0x1d, 0xb8, 0x9d, 0x38, 0xbc, 0x35, 0xe4, 0xe2, 0x52, 0x9c, 0x71, 0xac, 0xaa, 0x26, 0xed, 0x5a, 0xb1, 0xf4, 0x9c, 0x89, 0x2c, 0x6f, 0x98, 0x70, 0x15, 0x32, 0x0d, 0x29, 0x35, 0x9d, 0x27, 0x94, 0xb8, 0x6f, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10233 = { .name = "ecdsa_secp521r1_sha3_512_10233", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10233_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10233_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10233_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10234 for ECDSA, tcId is 280 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10234_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10234_msg[] = { 0x32, 0x35, 0x30, 0x31, 0x35, 0x35, 0x33, 0x36, 0x38, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10234_sig[] = { 0x01, 0xbc, 0x7c, 0xe2, 0x50, 0xd5, 0xa0, 0x75, 0x17, 0x7b, 0x74, 0x9d, 0x91, 0x9c, 0xa1, 0xb0, 0x8d, 0x27, 0xd0, 0xc3, 0x4d, 0x90, 0x0f, 0x36, 0xc7, 0xf2, 0xed, 0x0b, 0xd2, 0x1a, 0xdf, 0xd0, 0xbe, 0x63, 0xc8, 0x74, 0x63, 0xd5, 0x47, 0xed, 0x63, 0x0a, 0x35, 0x1d, 0x46, 0x61, 0x59, 0x40, 0xb3, 0xf2, 0xac, 0xbd, 0x4c, 0xb8, 0xc3, 0xfc, 0x3a, 0x53, 0x3a, 0xe2, 0xd0, 0xd5, 0xbc, 0xbe, 0x94, 0xaf, 0x00, 0xb6, 0x30, 0x6e, 0x0c, 0x0a, 0x3b, 0xcd, 0x7f, 0x96, 0xc0, 0x0e, 0xed, 0x9e, 0xb0, 0x57, 0x6b, 0xd9, 0xc6, 0x49, 0xca, 0xf9, 0x05, 0x56, 0x07, 0xcc, 0xc0, 0xfe, 0xbd, 0xfc, 0xea, 0xbb, 0x6a, 0x33, 0xfe, 0x80, 0x5c, 0xb0, 0x19, 0x3f, 0xbf, 0x8a, 0x36, 0xdc, 0xfd, 0x76, 0xb4, 0x26, 0x0b, 0x28, 0x0d, 0xba, 0xc8, 0x21, 0xcb, 0xeb, 0xa5, 0xcf, 0x59, 0x4e, 0x56, 0x5f, 0x5f, 0xdd, 0xb8, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10234 = { .name = "ecdsa_secp521r1_sha3_512_10234", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10234_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10234_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10234_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10235 for ECDSA, tcId is 281 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10235_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10235_msg[] = { 0x33, 0x35, 0x33, 0x35, 0x30, 0x34, 0x30, 0x30, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10235_sig[] = { 0x00, 0x3f, 0x3a, 0x8f, 0x12, 0x8b, 0x0c, 0x66, 0x45, 0x4b, 0xad, 0xb4, 0x11, 0x15, 0x19, 0x9c, 0x6f, 0x2a, 0x89, 0x9d, 0x51, 0xfc, 0x87, 0x06, 0xc5, 0x7d, 0xcb, 0x6a, 0x09, 0x37, 0x01, 0x5e, 0x7e, 0x2c, 0x40, 0x45, 0x34, 0xc0, 0xab, 0x9a, 0xd4, 0xd5, 0xba, 0x13, 0x5f, 0x55, 0x9d, 0xbe, 0x8b, 0xa2, 0xb9, 0x5f, 0xa6, 0x15, 0x9c, 0xa8, 0xe6, 0xa1, 0x1f, 0x44, 0x70, 0xb9, 0x2d, 0x3c, 0x7e, 0xad, 0x01, 0xee, 0x11, 0x6f, 0x82, 0xc6, 0x12, 0xb2, 0xbe, 0xf7, 0xb8, 0x88, 0x24, 0x92, 0xa8, 0xb0, 0x77, 0x9d, 0xa0, 0x77, 0x68, 0xf7, 0x2b, 0x37, 0x26, 0x35, 0xaf, 0x93, 0x0c, 0x18, 0x36, 0x2a, 0x2a, 0x4a, 0xad, 0xb1, 0x9d, 0x12, 0x97, 0xcc, 0x80, 0x51, 0x96, 0x85, 0x88, 0xe1, 0xfe, 0x27, 0x39, 0x70, 0xc2, 0x98, 0xab, 0x63, 0xff, 0x1a, 0x51, 0xf4, 0xef, 0x45, 0x8c, 0x66, 0x42, 0xeb, 0x5f, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10235 = { .name = "ecdsa_secp521r1_sha3_512_10235", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10235_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10235_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10235_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10236 for ECDSA, tcId is 282 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10236_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10236_msg[] = { 0x31, 0x34, 0x32, 0x30, 0x33, 0x35, 0x37, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10236_sig[] = { 0x00, 0xbb, 0x6f, 0xb4, 0xf8, 0x1f, 0xe5, 0x71, 0x5b, 0xf8, 0x21, 0x9a, 0x48, 0x6d, 0xc9, 0x4f, 0x89, 0xf6, 0x85, 0xf8, 0x9b, 0x69, 0xc0, 0x26, 0xec, 0xa7, 0x3a, 0x65, 0x39, 0x10, 0xa3, 0xac, 0x24, 0x01, 0xef, 0xbb, 0xd4, 0xc5, 0xe5, 0x93, 0x1e, 0x03, 0xbc, 0x5c, 0xa3, 0xe3, 0x4c, 0xb6, 0xb1, 0xf9, 0xf7, 0xe9, 0x3f, 0xce, 0xf6, 0x88, 0xc6, 0xff, 0xed, 0xd0, 0xae, 0x8a, 0x53, 0x72, 0xdc, 0x04, 0x00, 0xd8, 0xbd, 0xba, 0x99, 0x09, 0xf7, 0xf8, 0x19, 0x9c, 0x85, 0xe6, 0x56, 0x92, 0xfa, 0xfd, 0x9e, 0x52, 0x09, 0x1b, 0xe6, 0xdc, 0xb9, 0x8a, 0xff, 0xd4, 0x2b, 0x17, 0xc6, 0xec, 0xa1, 0xf6, 0x0f, 0x9f, 0xe6, 0x8c, 0xe5, 0xe5, 0xa3, 0x69, 0x9c, 0xf9, 0x68, 0xa1, 0xb1, 0xc0, 0x94, 0xd7, 0xe8, 0x3b, 0x0f, 0x92, 0x66, 0xa0, 0x4a, 0xa3, 0x31, 0x9b, 0x45, 0x9c, 0x25, 0x9e, 0xe3, 0xbd, 0xa1, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10236 = { .name = "ecdsa_secp521r1_sha3_512_10236", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10236_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10236_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10236_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10237 for ECDSA, tcId is 283 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10237_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10237_msg[] = { 0x39, 0x30, 0x35, 0x31, 0x37, 0x35, 0x30, 0x36, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10237_sig[] = { 0x01, 0x72, 0xff, 0x9d, 0x99, 0xd1, 0x66, 0x99, 0x8b, 0x9d, 0x3c, 0x75, 0x2c, 0x72, 0x43, 0x5a, 0x3c, 0x88, 0xa6, 0xec, 0x6c, 0xcb, 0x88, 0xcf, 0x3c, 0xc0, 0xb6, 0x7b, 0x2c, 0x90, 0xa6, 0x35, 0xa8, 0x1e, 0xc0, 0x8b, 0xfb, 0x9e, 0x52, 0x13, 0x82, 0x2b, 0x23, 0xf2, 0xa9, 0x33, 0xce, 0x1d, 0xcd, 0x10, 0xb7, 0x4f, 0x96, 0x24, 0x92, 0x77, 0x30, 0x46, 0xc9, 0xa2, 0xca, 0xa0, 0x39, 0x8a, 0x10, 0xe3, 0x00, 0xe0, 0x14, 0xf3, 0xfd, 0x3b, 0x08, 0x02, 0x90, 0x2c, 0x85, 0xf5, 0xb3, 0xba, 0x39, 0x45, 0x3d, 0x44, 0xb1, 0x23, 0xc4, 0xef, 0xc3, 0xfd, 0x32, 0x44, 0xbd, 0xc5, 0xa1, 0x35, 0xae, 0xda, 0xa7, 0x58, 0xe6, 0x61, 0xd0, 0x9e, 0xbe, 0x7a, 0xf1, 0xb7, 0x25, 0xcf, 0x3b, 0xc6, 0x56, 0xf9, 0xa8, 0x66, 0x46, 0x51, 0x2f, 0xa6, 0xbd, 0x5f, 0x23, 0x95, 0x74, 0x03, 0x6d, 0x28, 0x5a, 0xff, 0xec, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10237 = { .name = "ecdsa_secp521r1_sha3_512_10237", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10237_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10237_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10237_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10238 for ECDSA, tcId is 284 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10238_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10238_msg[] = { 0x31, 0x36, 0x31, 0x33, 0x37, 0x37, 0x34, 0x32, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10238_sig[] = { 0x00, 0x6f, 0x96, 0xa2, 0xea, 0xbd, 0x62, 0x03, 0x28, 0x64, 0x75, 0x8c, 0x28, 0x4f, 0x5e, 0x69, 0x1a, 0x27, 0x4a, 0xeb, 0x54, 0x74, 0xa9, 0x6a, 0xa1, 0x83, 0xc4, 0x1d, 0x43, 0xb6, 0x32, 0x1c, 0x98, 0x52, 0x07, 0xfb, 0x54, 0x80, 0xc7, 0xa6, 0xde, 0x8d, 0x31, 0x6f, 0xf8, 0x2f, 0xd9, 0x7c, 0x9f, 0xd7, 0x10, 0xe0, 0x14, 0xc9, 0x4d, 0x65, 0x86, 0x12, 0x5e, 0x24, 0x16, 0xa6, 0x0e, 0x71, 0x0f, 0x85, 0x01, 0xfa, 0xce, 0xe5, 0xbf, 0x81, 0xd6, 0x62, 0x06, 0xd0, 0x83, 0x49, 0x64, 0x60, 0x20, 0xac, 0x23, 0x79, 0x70, 0xf7, 0xf6, 0x95, 0x30, 0x9c, 0xb6, 0xb2, 0xa1, 0x6d, 0xdb, 0x46, 0x4c, 0x21, 0xda, 0x01, 0x31, 0x7c, 0x90, 0x74, 0xce, 0xbf, 0xed, 0x53, 0x02, 0x50, 0xf8, 0x18, 0xe3, 0x61, 0x97, 0x40, 0x78, 0x3d, 0x00, 0x79, 0x81, 0x32, 0x4d, 0x4f, 0x37, 0x61, 0xc7, 0x2e, 0x2c, 0xcc, 0x2a, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10238 = { .name = "ecdsa_secp521r1_sha3_512_10238", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10238_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10238_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10238_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10239 for ECDSA, tcId is 285 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10239_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10239_msg[] = { 0x38, 0x37, 0x33, 0x36, 0x37, 0x33, 0x34, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10239_sig[] = { 0x01, 0x8c, 0xe4, 0xb4, 0x73, 0x8d, 0xc0, 0xd0, 0x20, 0x6e, 0xbf, 0x7e, 0x80, 0x4e, 0xe8, 0x00, 0x46, 0x7c, 0xd2, 0xd1, 0x74, 0xae, 0xd6, 0xdc, 0xf5, 0x56, 0xbc, 0xdb, 0x2c, 0x13, 0x8c, 0xef, 0x9b, 0xcd, 0xd3, 0x21, 0xa9, 0x49, 0x79, 0xea, 0xad, 0x8b, 0x7f, 0xf3, 0x59, 0xc8, 0x91, 0x0e, 0x7a, 0xdd, 0xf0, 0x66, 0x71, 0x77, 0x9a, 0xec, 0xca, 0x0f, 0x77, 0x9f, 0x0d, 0xe1, 0x48, 0xfe, 0x48, 0x17, 0x01, 0xb4, 0x95, 0x41, 0x23, 0x95, 0xcb, 0x65, 0x91, 0x12, 0xef, 0xc8, 0xac, 0xd9, 0xfd, 0x94, 0xfb, 0x5a, 0xe2, 0x73, 0x2a, 0x4d, 0xc9, 0x23, 0xd6, 0x41, 0xff, 0x96, 0xd6, 0x7d, 0x72, 0x48, 0x6e, 0x9f, 0x96, 0x3a, 0x9c, 0xfa, 0x68, 0x0f, 0xb5, 0x57, 0x91, 0xb7, 0x00, 0x5b, 0x7d, 0xfc, 0x8d, 0x7a, 0x30, 0x07, 0x2c, 0xe5, 0xaf, 0xcb, 0xd4, 0x21, 0x3b, 0x0a, 0x18, 0x4e, 0x8e, 0xb0, 0x5e, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10239 = { .name = "ecdsa_secp521r1_sha3_512_10239", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10239_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10239_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10239_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10240 for ECDSA, tcId is 286 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10240_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10240_msg[] = { 0x34, 0x33, 0x35, 0x35, 0x31, 0x30, 0x36, 0x34, 0x30, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10240_sig[] = { 0x00, 0x60, 0x5e, 0x9f, 0xe2, 0x65, 0x1f, 0xab, 0x3b, 0xc3, 0xcd, 0x35, 0x6a, 0xa1, 0xbd, 0x6c, 0x86, 0x61, 0x14, 0xeb, 0x14, 0xfd, 0x0b, 0xfe, 0x40, 0xfb, 0x75, 0x07, 0x12, 0x47, 0xa8, 0xe7, 0xe5, 0xcc, 0x8c, 0x37, 0x5a, 0x1b, 0x32, 0xab, 0x99, 0x75, 0x4b, 0x20, 0x00, 0x18, 0xf9, 0x64, 0xed, 0x34, 0xf5, 0x09, 0x61, 0x27, 0x77, 0xcc, 0x90, 0x12, 0x9a, 0x03, 0x0c, 0x67, 0x01, 0x68, 0xcc, 0x29, 0x00, 0x3c, 0x54, 0x6c, 0xc8, 0x75, 0x0c, 0x56, 0x75, 0xb1, 0x50, 0xf4, 0xf4, 0x93, 0x03, 0xee, 0x22, 0xac, 0xf3, 0x85, 0x39, 0xd6, 0xd3, 0xec, 0x4a, 0xcd, 0xd3, 0x0f, 0xe5, 0x7a, 0x1f, 0x9b, 0xae, 0xb6, 0x2a, 0x8d, 0x8a, 0x42, 0xf5, 0x6e, 0x5b, 0x95, 0xea, 0x49, 0x08, 0x06, 0x9a, 0xa5, 0xbb, 0x35, 0xda, 0x7a, 0xf0, 0x74, 0xc3, 0x1c, 0x45, 0x00, 0x47, 0xf8, 0x18, 0x1c, 0x18, 0x1c, 0x14, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10240 = { .name = "ecdsa_secp521r1_sha3_512_10240", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10240_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10240_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10240_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10241 for ECDSA, tcId is 287 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10241_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10241_msg[] = { 0x34, 0x35, 0x33, 0x39, 0x35, 0x37, 0x35, 0x38, 0x37, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10241_sig[] = { 0x01, 0x10, 0x23, 0xb8, 0x0c, 0x9c, 0xe3, 0x48, 0x88, 0xac, 0xd9, 0xf5, 0x26, 0x5b, 0x9f, 0xbd, 0xd1, 0x8a, 0x7c, 0x87, 0x30, 0x2d, 0x22, 0xb6, 0x42, 0x31, 0xcb, 0xba, 0x16, 0x57, 0x8e, 0xdf, 0x53, 0xef, 0x4c, 0xd7, 0xb4, 0xac, 0x29, 0xf4, 0x7e, 0x13, 0xc3, 0x14, 0x44, 0xee, 0xff, 0x40, 0x5c, 0x89, 0x89, 0x1b, 0x46, 0x2c, 0x9a, 0xe3, 0xde, 0x7d, 0x10, 0x76, 0xe1, 0x13, 0x7c, 0x61, 0x3e, 0x21, 0x01, 0x00, 0x97, 0xad, 0xf0, 0xb6, 0xdb, 0x68, 0xa9, 0x03, 0x90, 0x24, 0x7e, 0x0b, 0x76, 0x10, 0x44, 0xd2, 0x71, 0xf9, 0xa1, 0x0f, 0xa1, 0x7b, 0x7d, 0x1f, 0xfb, 0x43, 0x3b, 0xda, 0x77, 0xb0, 0xca, 0x4e, 0x1f, 0xb7, 0xcd, 0x5b, 0x2b, 0xbd, 0x9a, 0x78, 0x6a, 0x82, 0xb4, 0xb5, 0xd2, 0x04, 0x9b, 0x52, 0x0f, 0x8b, 0x8f, 0xc1, 0xc5, 0xad, 0x6c, 0x9b, 0xc9, 0x9a, 0xaa, 0x4b, 0x4f, 0xfc, 0x37, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10241 = { .name = "ecdsa_secp521r1_sha3_512_10241", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10241_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10241_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10241_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10242 for ECDSA, tcId is 288 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10242_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10242_msg[] = { 0x38, 0x39, 0x33, 0x36, 0x36, 0x33, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10242_sig[] = { 0x00, 0xb6, 0xae, 0x70, 0x7a, 0x76, 0x4b, 0x79, 0xc5, 0xe5, 0x32, 0xa1, 0x38, 0xc7, 0x2d, 0x2b, 0xf6, 0xdc, 0xad, 0xf1, 0x7d, 0x04, 0x5f, 0x72, 0x2a, 0x2b, 0x54, 0x01, 0xe0, 0x99, 0xad, 0x67, 0x24, 0x9c, 0xbb, 0xd0, 0xb2, 0xc7, 0x10, 0x30, 0x80, 0xb0, 0xa3, 0xc1, 0xcc, 0xff, 0x47, 0xb5, 0x8b, 0x52, 0x6b, 0x1c, 0xda, 0x1a, 0x12, 0x5a, 0x62, 0x65, 0x06, 0x38, 0xcc, 0x71, 0xad, 0x54, 0x24, 0xc5, 0x01, 0x93, 0xfb, 0xbf, 0x26, 0xa4, 0xd3, 0xa3, 0x75, 0x65, 0xcb, 0xea, 0x70, 0x96, 0xcc, 0x57, 0xd6, 0xc9, 0x36, 0x70, 0xea, 0xdd, 0xbd, 0x06, 0x95, 0x6d, 0xda, 0x8f, 0xf8, 0xec, 0x5f, 0xba, 0x33, 0x8c, 0x44, 0x91, 0x76, 0xe4, 0x5b, 0xae, 0xae, 0x51, 0x5e, 0x9b, 0xfc, 0xe4, 0xb7, 0x32, 0x3b, 0x4e, 0x31, 0x62, 0xa0, 0x08, 0x81, 0x9c, 0x23, 0x31, 0x4a, 0x15, 0x75, 0x78, 0x31, 0x53, 0x3c, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10242 = { .name = "ecdsa_secp521r1_sha3_512_10242", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10242_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10242_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10242_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10243 for ECDSA, tcId is 289 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10243_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10243_msg[] = { 0x33, 0x38, 0x30, 0x36, 0x30, 0x36, 0x38, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10243_sig[] = { 0x01, 0x6c, 0x01, 0x13, 0x46, 0x39, 0x59, 0xf1, 0xae, 0xc9, 0x14, 0xb7, 0x69, 0x4d, 0x62, 0x28, 0xce, 0x5c, 0x82, 0x08, 0x51, 0x52, 0x53, 0xf5, 0x22, 0x32, 0xb4, 0x16, 0x10, 0x8b, 0xda, 0x0b, 0x3d, 0xe7, 0xd6, 0x78, 0x17, 0x5d, 0x45, 0x56, 0x94, 0xfd, 0x66, 0xf4, 0x9b, 0xa9, 0xcc, 0xc9, 0xf9, 0xa3, 0x2c, 0xc3, 0x68, 0xd3, 0x8b, 0x60, 0x6d, 0xc4, 0x54, 0xda, 0xb9, 0xfc, 0x41, 0x1e, 0xcf, 0x20, 0x00, 0x27, 0x00, 0x9c, 0x48, 0xd3, 0x40, 0x20, 0x75, 0xe8, 0xbb, 0x28, 0x69, 0x06, 0x5a, 0xd8, 0x3d, 0x66, 0x25, 0x94, 0xcc, 0x9c, 0xe4, 0xfd, 0xee, 0x42, 0xab, 0xa7, 0x63, 0x90, 0x80, 0xd7, 0xe7, 0xfc, 0x50, 0x7c, 0x04, 0xc6, 0xdc, 0x45, 0xe3, 0x98, 0x40, 0xa3, 0x21, 0xb7, 0x4d, 0x69, 0x5b, 0x1e, 0x6d, 0x95, 0x41, 0x1f, 0x49, 0x09, 0xaa, 0x98, 0x38, 0x3d, 0x5b, 0x10, 0x28, 0x31, 0x24, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10243 = { .name = "ecdsa_secp521r1_sha3_512_10243", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10243_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10243_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10243_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10244 for ECDSA, tcId is 290 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10244_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10244_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x38, 0x31, 0x37, 0x34, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10244_sig[] = { 0x00, 0xb6, 0xca, 0x0c, 0x0e, 0x3a, 0xa9, 0x51, 0xfe, 0x44, 0x31, 0x80, 0x12, 0x0e, 0x5e, 0x86, 0xe9, 0x58, 0xd1, 0x2d, 0x2d, 0x0b, 0xa4, 0x0d, 0x04, 0x7b, 0x16, 0xea, 0xa9, 0xcb, 0x2c, 0x16, 0x4a, 0xce, 0xcd, 0x0c, 0xc2, 0x0e, 0x7a, 0x61, 0x96, 0xbc, 0x68, 0x77, 0x1b, 0x3a, 0xc5, 0xf8, 0x29, 0x09, 0xbf, 0xf2, 0x9d, 0xe5, 0x60, 0xeb, 0x9f, 0x39, 0xe8, 0xfa, 0xf6, 0xd7, 0x04, 0x7f, 0x81, 0x73, 0x01, 0xc5, 0x01, 0x02, 0xf6, 0x6d, 0x6b, 0x02, 0x55, 0xab, 0xa2, 0xef, 0x75, 0x8e, 0x5d, 0x1f, 0x14, 0x8a, 0x9a, 0x57, 0x9b, 0x2f, 0x2b, 0xca, 0x3b, 0xa3, 0xd5, 0x63, 0x9f, 0x64, 0x41, 0x2c, 0x2c, 0xc4, 0x44, 0x93, 0x7c, 0x84, 0xc6, 0x9b, 0x8d, 0xc4, 0x78, 0x85, 0xe9, 0x96, 0x7f, 0x02, 0x4e, 0x8c, 0xbf, 0xa7, 0x56, 0x0c, 0x73, 0x0c, 0xda, 0xab, 0x72, 0xec, 0xcf, 0x93, 0xc3, 0x03, 0x52, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10244 = { .name = "ecdsa_secp521r1_sha3_512_10244", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10244_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10244_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10244_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10245 for ECDSA, tcId is 291 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10245_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10245_msg[] = { 0x34, 0x30, 0x37, 0x34, 0x33, 0x32, 0x32, 0x35, 0x35, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10245_sig[] = { 0x00, 0x1a, 0xdc, 0x59, 0x09, 0xcc, 0xb7, 0x3c, 0xed, 0x38, 0x8d, 0x8c, 0xbe, 0xd6, 0xaa, 0x75, 0x35, 0xcc, 0xa6, 0x08, 0x6f, 0x52, 0xb0, 0xda, 0xc5, 0x52, 0xe6, 0x19, 0x1e, 0xed, 0x51, 0x3a, 0x19, 0xb0, 0xff, 0x5d, 0x57, 0xd3, 0x06, 0xd0, 0xc8, 0xb7, 0x56, 0xd7, 0x00, 0xdc, 0x96, 0xf1, 0x89, 0xcb, 0x55, 0x2d, 0x70, 0x77, 0x66, 0xed, 0xa4, 0xcb, 0xb8, 0x55, 0xe5, 0x42, 0xa9, 0x1e, 0xb1, 0x47, 0x01, 0xa6, 0x82, 0x1d, 0x57, 0x71, 0x4b, 0xf3, 0x80, 0x5e, 0x8a, 0x28, 0xa6, 0x51, 0x97, 0x46, 0x3c, 0x09, 0x59, 0x7b, 0x6c, 0x2f, 0xde, 0x00, 0xb6, 0x45, 0x21, 0xf7, 0xcb, 0x6c, 0xd5, 0x67, 0xb3, 0x3e, 0xe3, 0x44, 0xe9, 0x67, 0x7b, 0xa4, 0x23, 0x04, 0x5a, 0xe5, 0xf5, 0xb4, 0x7a, 0x39, 0x26, 0x05, 0x48, 0xda, 0xbd, 0x6f, 0x96, 0x14, 0x82, 0xdd, 0x4f, 0xe4, 0x5f, 0xbf, 0xdf, 0xcb, 0x12, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10245 = { .name = "ecdsa_secp521r1_sha3_512_10245", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10245_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10245_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10245_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10246 for ECDSA, tcId is 292 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10246_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10246_msg[] = { 0x36, 0x31, 0x30, 0x36, 0x37, 0x35, 0x38, 0x32, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10246_sig[] = { 0x00, 0xf6, 0xcc, 0x5a, 0x98, 0xe8, 0x4f, 0xaa, 0x07, 0xfd, 0x46, 0xdc, 0xb0, 0xd0, 0x57, 0x38, 0x3d, 0x01, 0xea, 0x7e, 0xac, 0x9e, 0x3f, 0xbd, 0x9f, 0x7d, 0x46, 0x2b, 0xee, 0x76, 0xda, 0x98, 0x8a, 0x0e, 0xed, 0x44, 0xfd, 0x59, 0xda, 0x6c, 0xf9, 0x92, 0xc0, 0x86, 0xbc, 0xf1, 0x09, 0x2a, 0x3f, 0x3d, 0x0c, 0x9d, 0x37, 0x32, 0x97, 0xbc, 0xcb, 0xc0, 0xa1, 0xa2, 0x5d, 0x1e, 0xf1, 0x73, 0x6f, 0xb1, 0x00, 0x68, 0x47, 0x33, 0x92, 0x6f, 0xf3, 0x9e, 0x17, 0x7a, 0xf5, 0x7a, 0x0a, 0x3b, 0x45, 0x31, 0xcd, 0xd1, 0x9b, 0x0c, 0x5f, 0x71, 0x7f, 0x74, 0x1d, 0x82, 0xea, 0x49, 0x3a, 0x09, 0xc3, 0x10, 0x02, 0x6a, 0x19, 0x38, 0x6c, 0xb9, 0x5c, 0x06, 0xea, 0x7b, 0x34, 0x6a, 0x2d, 0x90, 0xc0, 0x1d, 0xf0, 0x2c, 0x69, 0x97, 0xc2, 0x5d, 0xc0, 0xb8, 0x9c, 0xc5, 0x78, 0xed, 0x4b, 0x0b, 0xc7, 0xcf, 0x3d, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10246 = { .name = "ecdsa_secp521r1_sha3_512_10246", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10246_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10246_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10246_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10247 for ECDSA, tcId is 293 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10247_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10247_msg[] = { 0x31, 0x37, 0x34, 0x31, 0x38, 0x37, 0x33, 0x39, 0x32, 0x31, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10247_sig[] = { 0x01, 0xea, 0x2f, 0xdd, 0x9e, 0x04, 0x54, 0x83, 0x94, 0x2a, 0x46, 0x01, 0x7a, 0x75, 0xcf, 0xbc, 0xf3, 0xe2, 0x29, 0x05, 0xb5, 0x6d, 0xe3, 0x35, 0x37, 0x5b, 0x6a, 0x72, 0x44, 0x39, 0x49, 0xc3, 0xd8, 0xa0, 0xaf, 0x58, 0x7b, 0x7d, 0xec, 0x02, 0xf1, 0xc6, 0x1f, 0x67, 0x92, 0x05, 0xd5, 0xc1, 0xf7, 0x6a, 0xdb, 0x3a, 0xaf, 0xfb, 0x93, 0xa2, 0x05, 0x33, 0xca, 0xea, 0x83, 0x28, 0x4f, 0x30, 0x32, 0xc7, 0x01, 0x7e, 0x31, 0x47, 0x12, 0x62, 0x76, 0x61, 0x42, 0xff, 0xaa, 0xf2, 0xcd, 0x99, 0x39, 0xd9, 0x6f, 0xdb, 0x81, 0xfa, 0xb2, 0x62, 0x9b, 0x24, 0xf3, 0x94, 0xc5, 0x89, 0x66, 0xb9, 0xdf, 0x0d, 0x46, 0x49, 0x67, 0xe8, 0xb7, 0x3c, 0xf2, 0x03, 0x0d, 0xe6, 0x2d, 0x44, 0x15, 0xad, 0x4c, 0x3c, 0xb5, 0x56, 0x8d, 0x8c, 0x4d, 0x80, 0xea, 0x8f, 0xda, 0x6a, 0x31, 0x96, 0xd6, 0x78, 0x23, 0x38, 0x00, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10247 = { .name = "ecdsa_secp521r1_sha3_512_10247", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10247_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10247_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10247_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10248 for ECDSA, tcId is 294 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10248_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10248_msg[] = { 0x35, 0x31, 0x32, 0x37, 0x38, 0x34, 0x32, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10248_sig[] = { 0x01, 0x55, 0x65, 0x47, 0x66, 0x7d, 0x7b, 0xb0, 0x76, 0x54, 0x1f, 0x9c, 0xcc, 0x96, 0xf5, 0xd4, 0x94, 0x8b, 0xf1, 0xa4, 0x94, 0x72, 0xe7, 0x8c, 0x94, 0x9b, 0x3c, 0xc1, 0x02, 0x45, 0x15, 0xc2, 0xf4, 0xe8, 0xfb, 0x93, 0x41, 0x0d, 0xc7, 0x5f, 0x96, 0x1f, 0xc8, 0x9d, 0xf8, 0x2c, 0xf7, 0x78, 0x1b, 0x58, 0xf7, 0x80, 0x3c, 0xf8, 0xcc, 0xd0, 0x1d, 0x37, 0x33, 0x05, 0x0c, 0x0f, 0xd5, 0x7d, 0xe1, 0xf1, 0x01, 0xc3, 0x95, 0xc7, 0x74, 0xaf, 0xcf, 0x7c, 0xd9, 0x13, 0x8c, 0x2f, 0x97, 0xbc, 0x81, 0x57, 0xad, 0x5e, 0xea, 0x93, 0x4e, 0xe3, 0xe9, 0x76, 0xfc, 0x0a, 0xe4, 0x97, 0x09, 0x6c, 0x6f, 0x74, 0x24, 0x90, 0x3a, 0x64, 0xca, 0xe5, 0xba, 0xbb, 0x13, 0xf2, 0x5d, 0x53, 0xdd, 0xaf, 0x76, 0x2f, 0xa3, 0xbf, 0x35, 0x64, 0x9b, 0x74, 0x8f, 0x86, 0xa1, 0x29, 0x92, 0x38, 0x3d, 0x9d, 0xed, 0x2e, 0x21, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10248 = { .name = "ecdsa_secp521r1_sha3_512_10248", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10248_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10248_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10248_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10249 for ECDSA, tcId is 295 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10249_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10249_msg[] = { 0x35, 0x30, 0x33, 0x38, 0x36, 0x39, 0x30, 0x38, 0x37, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10249_sig[] = { 0x01, 0xdb, 0x22, 0x9a, 0x7e, 0x00, 0xab, 0xa5, 0x78, 0x00, 0x17, 0xa0, 0xee, 0x2e, 0x57, 0x9f, 0xfd, 0x06, 0x9b, 0xe3, 0x1d, 0x83, 0x58, 0x73, 0x6d, 0xb3, 0x1d, 0x28, 0x81, 0xda, 0xe9, 0x42, 0xe1, 0x2d, 0x3f, 0xa0, 0xd2, 0x76, 0x8d, 0x5b, 0xab, 0x09, 0x5c, 0xdc, 0x03, 0x82, 0x62, 0x11, 0xb4, 0x8b, 0xbc, 0x2a, 0xca, 0xda, 0x67, 0xe4, 0x63, 0xda, 0x26, 0xb6, 0x85, 0xa5, 0xe6, 0xd8, 0xa7, 0x1c, 0x00, 0x33, 0x67, 0x99, 0x83, 0xc9, 0xb1, 0x3c, 0x32, 0x35, 0xec, 0xa9, 0x32, 0x44, 0x8d, 0x95, 0x94, 0x5b, 0x3a, 0x16, 0x04, 0x8c, 0x1f, 0x75, 0x70, 0x8c, 0x05, 0x4c, 0x3f, 0x36, 0xc8, 0x7b, 0xab, 0xce, 0x0e, 0x5d, 0xb8, 0x64, 0xac, 0x5b, 0x63, 0x06, 0x10, 0x11, 0xd2, 0xdb, 0xd8, 0x4b, 0x2f, 0x23, 0x9e, 0x9b, 0x38, 0x10, 0xec, 0x86, 0x9d, 0xe2, 0xc6, 0x63, 0x16, 0x46, 0x88, 0xb0, 0xa7, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10249 = { .name = "ecdsa_secp521r1_sha3_512_10249", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10249_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10249_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10249_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10250 for ECDSA, tcId is 296 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10250_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10250_msg[] = { 0x33, 0x38, 0x37, 0x37, 0x30, 0x34, 0x32, 0x33, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10250_sig[] = { 0x01, 0x1c, 0xc7, 0xf1, 0x0b, 0xa1, 0xf5, 0x2a, 0x7d, 0x74, 0xa2, 0x09, 0x55, 0xc7, 0xf3, 0x27, 0xb3, 0x95, 0x1a, 0xcd, 0xc4, 0xaf, 0x20, 0x5d, 0x0a, 0xe6, 0x6e, 0xae, 0xb1, 0xb9, 0xf2, 0xbc, 0x86, 0xf9, 0x8a, 0xf2, 0x6c, 0x5e, 0xfc, 0x22, 0x40, 0x95, 0x11, 0x94, 0xd4, 0xea, 0x77, 0xa5, 0xd6, 0x05, 0xaf, 0xed, 0x96, 0x71, 0x25, 0x56, 0x00, 0x59, 0x48, 0xb4, 0x66, 0x6d, 0x57, 0x46, 0xc4, 0xa3, 0x00, 0x86, 0xc3, 0xbf, 0xd2, 0xec, 0x11, 0x0d, 0x4a, 0xa0, 0xf8, 0x9f, 0x78, 0xb9, 0xcf, 0x93, 0x16, 0x1d, 0xb8, 0x8e, 0x37, 0x77, 0xae, 0x0e, 0x98, 0x6f, 0xf0, 0x24, 0x8f, 0x7e, 0xff, 0x48, 0x3b, 0xdf, 0x4c, 0x58, 0xdd, 0xb5, 0xa7, 0x08, 0x63, 0xbb, 0x03, 0x55, 0xc3, 0xde, 0xd6, 0x38, 0x56, 0x55, 0x9c, 0xeb, 0xe8, 0x7e, 0xe7, 0x11, 0x12, 0x01, 0x4b, 0xb4, 0x4f, 0x90, 0x5c, 0x69, 0x9e, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10250 = { .name = "ecdsa_secp521r1_sha3_512_10250", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10250_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10250_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10250_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10251 for ECDSA, tcId is 297 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10251_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10251_msg[] = { 0x33, 0x32, 0x31, 0x37, 0x30, 0x38, 0x31, 0x37, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10251_sig[] = { 0x00, 0x5c, 0xb5, 0xe2, 0xb9, 0x5f, 0xa6, 0x44, 0x7a, 0x73, 0xe5, 0x74, 0x55, 0x32, 0x65, 0x71, 0xcb, 0xc6, 0x04, 0xe9, 0xe5, 0x4b, 0x59, 0x3a, 0xf7, 0x92, 0xac, 0x4f, 0x3a, 0xdd, 0x9c, 0xab, 0x62, 0x8d, 0x80, 0x87, 0xd2, 0xda, 0x79, 0xc2, 0x17, 0xc8, 0x08, 0xce, 0x00, 0x0c, 0x45, 0xb8, 0x65, 0x55, 0xbe, 0xb6, 0xf2, 0xca, 0xa3, 0xee, 0x7c, 0x86, 0xd7, 0xbf, 0x3c, 0x5a, 0x4f, 0x8f, 0x99, 0xa2, 0x01, 0x3c, 0x05, 0x7b, 0x5a, 0x8e, 0x2d, 0x5c, 0x66, 0xed, 0x0f, 0xe4, 0xb0, 0x59, 0xfc, 0x9a, 0x2c, 0x21, 0x83, 0x33, 0x83, 0x51, 0x88, 0xde, 0xc2, 0x4c, 0xd5, 0x2c, 0x1e, 0x69, 0x1a, 0x74, 0x5c, 0x08, 0x7d, 0x19, 0x9f, 0x5e, 0x08, 0x91, 0x1d, 0x79, 0x87, 0x41, 0xaa, 0x0d, 0x71, 0x6c, 0x20, 0xed, 0x24, 0xba, 0xab, 0x3c, 0xdf, 0xe1, 0xf5, 0xa6, 0x64, 0x03, 0x15, 0x2b, 0x0f, 0xf3, 0x17, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10251 = { .name = "ecdsa_secp521r1_sha3_512_10251", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10251_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10251_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10251_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10252 for ECDSA, tcId is 298 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10252_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10252_msg[] = { 0x37, 0x36, 0x36, 0x37, 0x30, 0x34, 0x34, 0x32, 0x37, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10252_sig[] = { 0x00, 0xa4, 0xd6, 0xb8, 0x3c, 0xd0, 0xb2, 0xec, 0x18, 0x7c, 0x75, 0x43, 0xb5, 0x49, 0x37, 0x31, 0xa9, 0x9f, 0x5a, 0xe8, 0x33, 0x03, 0x19, 0x0f, 0x12, 0x2f, 0x89, 0x3a, 0xb7, 0xc6, 0xd8, 0xc6, 0xa2, 0x5b, 0x46, 0xaa, 0xe1, 0xcc, 0x1b, 0x4e, 0x84, 0xa1, 0x3b, 0xf5, 0x2f, 0x3b, 0x3a, 0x88, 0xa6, 0xb0, 0xd1, 0x7d, 0xf6, 0xf1, 0xe2, 0xa8, 0x3e, 0xf6, 0x84, 0x56, 0x55, 0x6a, 0x80, 0xb4, 0x69, 0x95, 0x00, 0x3e, 0xd1, 0x15, 0x06, 0xc4, 0x63, 0x86, 0x77, 0xd4, 0x8b, 0x4a, 0xc9, 0x40, 0x50, 0x40, 0x83, 0xb4, 0xca, 0xc1, 0x3b, 0xf5, 0x33, 0x19, 0xbb, 0x31, 0x2c, 0x24, 0xcc, 0x9d, 0xd8, 0x5d, 0x3d, 0x13, 0xee, 0x63, 0x02, 0x2c, 0xbb, 0x8d, 0xc1, 0x23, 0xda, 0x8f, 0xd9, 0x26, 0xe6, 0xf0, 0xe2, 0x31, 0x81, 0x30, 0x8d, 0x00, 0xf8, 0x1e, 0xb1, 0x0c, 0x58, 0x4e, 0x9b, 0x3f, 0x4e, 0xab, 0x9b, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10252 = { .name = "ecdsa_secp521r1_sha3_512_10252", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10252_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10252_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10252_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10253 for ECDSA, tcId is 299 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10253_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10253_msg[] = { 0x31, 0x31, 0x30, 0x34, 0x37, 0x34, 0x35, 0x30, 0x34, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10253_sig[] = { 0x01, 0xa0, 0x9b, 0x6c, 0xfb, 0x57, 0x00, 0x8a, 0x00, 0x4d, 0x71, 0x9e, 0xd6, 0x3c, 0x45, 0xe4, 0xb0, 0xe9, 0x76, 0x22, 0xa3, 0x6e, 0xd2, 0xd2, 0xb2, 0x2d, 0xde, 0x5c, 0x63, 0x3f, 0xb7, 0x14, 0xf0, 0x27, 0x91, 0x08, 0xbc, 0x44, 0xe9, 0x46, 0x14, 0xc9, 0x95, 0x6a, 0xe9, 0xff, 0x22, 0xc5, 0x1c, 0xd8, 0x47, 0xe8, 0xce, 0x43, 0x14, 0xe7, 0x67, 0xd3, 0x3a, 0x01, 0xfe, 0x62, 0xe5, 0xb1, 0xfa, 0x1c, 0x00, 0x0a, 0xcd, 0xba, 0x06, 0xf7, 0x22, 0x7c, 0xa1, 0xed, 0x8d, 0x03, 0x65, 0xa9, 0xac, 0x68, 0x96, 0x20, 0x26, 0xe3, 0x3a, 0x59, 0x3a, 0xc0, 0x8d, 0xf7, 0xbc, 0xa7, 0xe5, 0x96, 0xa5, 0xd6, 0x71, 0x76, 0x67, 0x17, 0x2c, 0xe4, 0x94, 0xfc, 0xfe, 0x3a, 0x9d, 0xde, 0x26, 0xf5, 0x45, 0xc8, 0x6b, 0xf1, 0x1f, 0x8d, 0x91, 0xca, 0x8a, 0x41, 0x0e, 0xfa, 0x34, 0x2d, 0x79, 0x21, 0x7e, 0xc7, 0xf0, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10253 = { .name = "ecdsa_secp521r1_sha3_512_10253", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10253_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10253_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10253_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10254 for ECDSA, tcId is 300 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10254_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10254_msg[] = { 0x31, 0x35, 0x33, 0x38, 0x37, 0x30, 0x31, 0x35, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10254_sig[] = { 0x00, 0x9a, 0x54, 0x45, 0x48, 0xcc, 0x69, 0x69, 0x21, 0xa3, 0xb0, 0xe9, 0x82, 0x01, 0x40, 0x0b, 0xbe, 0xaf, 0x37, 0x87, 0x6f, 0x45, 0x24, 0x0b, 0x50, 0x8b, 0xd1, 0x93, 0x21, 0x18, 0x26, 0xa9, 0x97, 0xfc, 0x66, 0xdc, 0xa3, 0x69, 0xde, 0x89, 0xff, 0xc7, 0x2a, 0xd9, 0xc1, 0xa6, 0x7c, 0xd9, 0xb1, 0x56, 0x51, 0xfc, 0x34, 0x80, 0x7e, 0x7d, 0xec, 0x30, 0x43, 0x23, 0x0e, 0x65, 0xb7, 0xcc, 0x98, 0x82, 0x01, 0x5b, 0xf3, 0x5d, 0x1a, 0xb0, 0x35, 0xa1, 0xfc, 0xae, 0x2e, 0x05, 0xb1, 0x36, 0x77, 0xca, 0x2d, 0xdd, 0xd9, 0x5a, 0x55, 0x3d, 0x31, 0x9e, 0x71, 0xc5, 0x9a, 0x82, 0x34, 0x21, 0xec, 0x6b, 0x05, 0xf6, 0x59, 0x44, 0x6a, 0x02, 0x60, 0x72, 0xf2, 0xdc, 0xb9, 0xc3, 0xcb, 0x62, 0xb1, 0xfa, 0x30, 0x2d, 0x43, 0x75, 0x4a, 0xf3, 0x8d, 0xc6, 0x81, 0xa6, 0x80, 0x9d, 0xb1, 0x6e, 0x4c, 0x32, 0x86, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10254 = { .name = "ecdsa_secp521r1_sha3_512_10254", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10254_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10254_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10254_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10255 for ECDSA, tcId is 301 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10255_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10255_msg[] = { 0x32, 0x32, 0x36, 0x31, 0x33, 0x38, 0x35, 0x30, 0x34, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10255_sig[] = { 0x00, 0xdb, 0x87, 0x57, 0x3f, 0x7c, 0xbf, 0xa3, 0x41, 0xb9, 0x6c, 0xeb, 0x4b, 0xbc, 0x79, 0xb9, 0x59, 0x59, 0x3b, 0x55, 0xcd, 0x8f, 0x63, 0x8e, 0xf4, 0xb5, 0xe5, 0x89, 0xbc, 0x16, 0x64, 0xea, 0x91, 0xf7, 0x47, 0x3c, 0x9d, 0x91, 0x3a, 0x09, 0x01, 0x33, 0x07, 0x84, 0x34, 0x1a, 0x36, 0x63, 0x14, 0xb3, 0x04, 0x95, 0xa4, 0x5a, 0x88, 0xc8, 0x77, 0x4d, 0x98, 0x5b, 0x4e, 0x5f, 0xfa, 0x91, 0x51, 0x08, 0x00, 0xc0, 0x39, 0xfa, 0xbd, 0x66, 0x7c, 0x40, 0x28, 0x9f, 0x8a, 0x06, 0x5b, 0x0b, 0x43, 0xe8, 0x07, 0xa0, 0xf7, 0xf5, 0x1f, 0x77, 0x67, 0x50, 0x15, 0x88, 0x03, 0x15, 0x88, 0xfc, 0x57, 0x31, 0x7a, 0x71, 0x2c, 0xb4, 0x21, 0x7d, 0xfb, 0x45, 0xfa, 0x90, 0x5c, 0x8c, 0x7b, 0x5d, 0xc9, 0xa8, 0x38, 0xeb, 0xb9, 0x74, 0xb5, 0xa5, 0xb4, 0x56, 0xd0, 0x8a, 0xd6, 0xb1, 0xd7, 0x97, 0x07, 0xc5, 0x42, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10255 = { .name = "ecdsa_secp521r1_sha3_512_10255", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10255_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10255_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10255_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10256 for ECDSA, tcId is 302 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10256_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10256_msg[] = { 0x37, 0x35, 0x35, 0x38, 0x37, 0x34, 0x37, 0x36, 0x36, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10256_sig[] = { 0x00, 0x29, 0xcc, 0x57, 0xf4, 0x1e, 0xe4, 0x8f, 0x6d, 0x22, 0x2c, 0xba, 0x40, 0x27, 0x27, 0xe0, 0xee, 0xe2, 0x62, 0xd6, 0x7f, 0x92, 0x2e, 0x4c, 0x04, 0x88, 0xc2, 0x76, 0x96, 0x04, 0x09, 0xda, 0xd4, 0x0d, 0x7f, 0x71, 0x91, 0x75, 0xeb, 0x00, 0x9c, 0xc7, 0x08, 0x8c, 0xb3, 0x5f, 0x3a, 0xca, 0x91, 0x14, 0xc7, 0x19, 0x15, 0xb1, 0x15, 0x8c, 0x78, 0xfb, 0x51, 0x01, 0x64, 0x94, 0x97, 0x12, 0x1e, 0x5f, 0x00, 0xb1, 0xc2, 0x2f, 0x95, 0x6b, 0x33, 0xfb, 0x22, 0x8f, 0x7d, 0xc1, 0x2e, 0x48, 0xba, 0xa5, 0x27, 0x76, 0x2a, 0xe6, 0xf4, 0xc2, 0x29, 0xa4, 0x16, 0x2c, 0x47, 0x53, 0xca, 0xc3, 0x98, 0x27, 0xb9, 0x59, 0xc4, 0xb0, 0xb7, 0x99, 0x4b, 0x87, 0x7b, 0xf0, 0x90, 0x1d, 0xff, 0x5a, 0x6d, 0x4e, 0x97, 0x57, 0xcf, 0xad, 0x14, 0xb0, 0xe5, 0xb7, 0x71, 0x7e, 0x1d, 0x0f, 0x54, 0xc3, 0x35, 0xd0, 0x8a, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10256 = { .name = "ecdsa_secp521r1_sha3_512_10256", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10256_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10256_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10256_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10257 for ECDSA, tcId is 303 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10257_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10257_msg[] = { 0x33, 0x34, 0x39, 0x39, 0x33, 0x36, 0x34, 0x31, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10257_sig[] = { 0x00, 0x59, 0x8f, 0x00, 0x72, 0xda, 0x61, 0x64, 0x19, 0x22, 0x0a, 0xc9, 0x40, 0x8d, 0xaf, 0x79, 0xcf, 0x4f, 0xeb, 0x4d, 0x0d, 0x09, 0xfc, 0x48, 0xb3, 0xde, 0xfa, 0xe2, 0xe3, 0x4c, 0x66, 0xb8, 0x8a, 0xec, 0xff, 0x56, 0xf9, 0x5b, 0x42, 0x21, 0x31, 0xc1, 0xde, 0x20, 0x20, 0x5d, 0xf2, 0xa8, 0xd5, 0xba, 0x55, 0x4d, 0xb7, 0x8e, 0xac, 0x38, 0x8a, 0x26, 0x7a, 0x36, 0x33, 0x59, 0x64, 0xc7, 0x77, 0x6f, 0x01, 0x6f, 0x27, 0x35, 0xe1, 0x42, 0xd4, 0x28, 0x0c, 0xe3, 0x92, 0x54, 0xa4, 0xd0, 0xf8, 0xfa, 0x8f, 0x4f, 0x75, 0x42, 0xf8, 0x8f, 0xdb, 0x1a, 0x08, 0xbd, 0x79, 0x75, 0x01, 0x19, 0x50, 0xa9, 0x16, 0x6b, 0x29, 0x1d, 0xe6, 0x02, 0x19, 0x3f, 0xfb, 0xc5, 0x6a, 0xdf, 0xa4, 0xe5, 0x21, 0x2e, 0x8e, 0x8b, 0xb2, 0x4d, 0xdf, 0x80, 0xa9, 0x4d, 0x76, 0x2d, 0x8a, 0x67, 0x18, 0x51, 0xdc, 0x66, 0x21, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10257 = { .name = "ecdsa_secp521r1_sha3_512_10257", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10257_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10257_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10257_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10258 for ECDSA, tcId is 304 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10258_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10258_msg[] = { 0x32, 0x33, 0x36, 0x39, 0x32, 0x37, 0x33, 0x39, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10258_sig[] = { 0x01, 0x02, 0x5c, 0x23, 0x17, 0xf1, 0xe4, 0x14, 0xe1, 0x4a, 0x5b, 0x41, 0xc7, 0x64, 0x5b, 0xc1, 0xc2, 0xd0, 0x57, 0xdc, 0xb2, 0x3b, 0x3b, 0x6e, 0xc5, 0xbb, 0xa8, 0x4a, 0xdb, 0x50, 0x17, 0x1c, 0xca, 0x89, 0xf8, 0x06, 0x09, 0x1d, 0x14, 0x02, 0xb6, 0x1e, 0xad, 0x88, 0xbf, 0x1d, 0xf5, 0x0a, 0xf1, 0xb9, 0x79, 0x53, 0x24, 0x4e, 0x2c, 0xb4, 0x27, 0x86, 0x39, 0xe4, 0xbb, 0xb7, 0x4a, 0x04, 0x0d, 0x7a, 0x00, 0xd3, 0xec, 0x9a, 0x1e, 0x19, 0xce, 0x0f, 0xcf, 0xd0, 0x9c, 0x65, 0x01, 0x6e, 0x96, 0x50, 0x0f, 0x95, 0xa8, 0xa7, 0x25, 0x51, 0x91, 0xb9, 0x5e, 0x11, 0xe2, 0x64, 0x9e, 0x2e, 0xfe, 0xec, 0xd9, 0x28, 0xd2, 0x9a, 0x1f, 0x54, 0x09, 0x35, 0xe0, 0x52, 0x88, 0x28, 0xa4, 0x98, 0x67, 0xaf, 0x99, 0x0f, 0xf9, 0x41, 0xd1, 0x76, 0x5c, 0xf8, 0x68, 0xf0, 0x85, 0x04, 0xac, 0x12, 0xe3, 0xb4, 0xf6, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10258 = { .name = "ecdsa_secp521r1_sha3_512_10258", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10258_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10258_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10258_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10259 for ECDSA, tcId is 305 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10259_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10259_msg[] = { 0x34, 0x39, 0x33, 0x38, 0x33, 0x39, 0x35, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10259_sig[] = { 0x01, 0x0d, 0x14, 0xed, 0x8d, 0xea, 0x72, 0x92, 0xf1, 0x1c, 0x33, 0x75, 0x51, 0x45, 0xfb, 0xcc, 0xaa, 0x0d, 0x99, 0xc7, 0x98, 0x13, 0xca, 0x03, 0x73, 0xe1, 0x8d, 0x4f, 0xd1, 0x1f, 0xb6, 0x53, 0xb4, 0x56, 0x39, 0x2a, 0xb0, 0x9d, 0xb6, 0x08, 0x70, 0x35, 0xdc, 0x39, 0x07, 0x61, 0x7f, 0xcc, 0xc5, 0xb0, 0x40, 0xd2, 0x1a, 0x67, 0x5d, 0x0f, 0x63, 0xf4, 0xaf, 0x74, 0xaf, 0x8c, 0x72, 0x11, 0x65, 0x5b, 0x00, 0xc7, 0x62, 0x42, 0xec, 0xe3, 0x9d, 0xd3, 0xae, 0xe0, 0x7c, 0xf6, 0x02, 0x10, 0xa6, 0x57, 0x5a, 0x06, 0x70, 0xb2, 0x82, 0x1a, 0x08, 0x56, 0xae, 0x2d, 0x85, 0x05, 0xb5, 0x8e, 0xa6, 0x57, 0x0a, 0x69, 0xec, 0x5e, 0xe3, 0xef, 0xcb, 0xd3, 0x85, 0x73, 0xac, 0xae, 0xed, 0x2c, 0x6c, 0xa3, 0xd9, 0xe6, 0x9c, 0x08, 0xe2, 0x04, 0x09, 0x3c, 0xf8, 0xf6, 0x47, 0x08, 0x96, 0x32, 0xec, 0xae, 0xf7, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10259 = { .name = "ecdsa_secp521r1_sha3_512_10259", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10259_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10259_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10259_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10260 for ECDSA, tcId is 306 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10260_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10260_msg[] = { 0x32, 0x35, 0x33, 0x34, 0x33, 0x37, 0x39, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10260_sig[] = { 0x00, 0x61, 0x96, 0xbb, 0xfa, 0x16, 0xcf, 0x1d, 0x5a, 0xc3, 0xae, 0xc1, 0x98, 0xd0, 0x97, 0xd1, 0x13, 0x45, 0x3d, 0x7d, 0xf5, 0xea, 0x53, 0x5b, 0x6e, 0xb6, 0x1a, 0xc3, 0x87, 0x85, 0x8d, 0x17, 0x9f, 0x69, 0x81, 0xf6, 0x4d, 0x9b, 0xcb, 0x60, 0xa9, 0x21, 0xd6, 0x76, 0x4d, 0x33, 0x24, 0xeb, 0x96, 0x92, 0x54, 0x2b, 0xb1, 0x8b, 0x0b, 0x54, 0x00, 0xd9, 0x85, 0xbd, 0xcd, 0x94, 0x04, 0x26, 0xb4, 0xc6, 0x01, 0xff, 0xb4, 0xa3, 0x63, 0xff, 0x95, 0x1f, 0xea, 0x35, 0x48, 0x7f, 0x32, 0xdc, 0xbe, 0xfa, 0xf0, 0x4e, 0x89, 0xb7, 0x3f, 0x58, 0x55, 0x98, 0xde, 0x4a, 0x41, 0x01, 0xc7, 0xc3, 0x98, 0x04, 0xbc, 0x78, 0x7d, 0x92, 0xd7, 0x42, 0x10, 0xac, 0xf8, 0x6f, 0x5a, 0x6d, 0x03, 0xe8, 0x78, 0xba, 0x5f, 0x5f, 0x5d, 0x27, 0x24, 0xab, 0xca, 0x0c, 0x65, 0x9f, 0x34, 0x3c, 0x3d, 0x3e, 0xa5, 0x76, 0x45, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10260 = { .name = "ecdsa_secp521r1_sha3_512_10260", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10260_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10260_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10260_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10261 for ECDSA, tcId is 307 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10261_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10261_msg[] = { 0x38, 0x33, 0x34, 0x38, 0x30, 0x31, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10261_sig[] = { 0x00, 0xab, 0x2c, 0xae, 0x0e, 0xb0, 0xf8, 0x47, 0xe8, 0xb1, 0x7e, 0x98, 0x6f, 0x21, 0xbe, 0x75, 0x72, 0x98, 0x5e, 0x9f, 0x03, 0x7a, 0x27, 0xf8, 0x2b, 0x73, 0x61, 0xa7, 0x77, 0x1a, 0xf6, 0x8a, 0xd2, 0xc9, 0x4e, 0x70, 0xbc, 0x70, 0xc0, 0x51, 0x20, 0x2b, 0x00, 0x46, 0x5f, 0x8b, 0xe7, 0x07, 0x95, 0x79, 0x14, 0x56, 0x2c, 0x0a, 0x35, 0x0d, 0x7b, 0x84, 0x48, 0x86, 0x7f, 0x39, 0xb8, 0xb7, 0xf2, 0xc4, 0x01, 0xd5, 0xab, 0x66, 0x4b, 0x4f, 0x3b, 0x05, 0x52, 0xbb, 0x84, 0xa5, 0x20, 0xc9, 0xec, 0x94, 0xee, 0x8d, 0x6b, 0xe4, 0xb8, 0xb3, 0x36, 0x9e, 0x10, 0xba, 0xc7, 0xcd, 0xf4, 0xea, 0x7c, 0x96, 0x93, 0x10, 0xfc, 0xe1, 0x83, 0xee, 0x85, 0x5e, 0x46, 0x00, 0x53, 0xd3, 0x0c, 0x5e, 0x2d, 0xa8, 0x2d, 0x13, 0xa0, 0x6e, 0x03, 0xc2, 0xf9, 0x61, 0xb7, 0x9d, 0x6e, 0xc7, 0x77, 0x44, 0x4b, 0x56, 0x47, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10261 = { .name = "ecdsa_secp521r1_sha3_512_10261", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10261_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10261_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10261_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10262 for ECDSA, tcId is 308 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10262_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10262_msg[] = { 0x32, 0x34, 0x31, 0x31, 0x30, 0x35, 0x37, 0x34, 0x38, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10262_sig[] = { 0x01, 0xff, 0xa0, 0x79, 0xd2, 0x5b, 0xbd, 0xfc, 0x6e, 0xa7, 0x3a, 0x36, 0x01, 0xd8, 0x34, 0xde, 0x5c, 0x58, 0x54, 0xf9, 0x7c, 0x35, 0x71, 0xf1, 0x0c, 0x77, 0x27, 0xf3, 0x14, 0x26, 0x81, 0xaa, 0xcb, 0xf1, 0x4c, 0x86, 0x22, 0x06, 0xcc, 0x02, 0x36, 0x2a, 0xb6, 0x29, 0xe3, 0xb3, 0xe3, 0x49, 0x94, 0xa6, 0x83, 0x33, 0xd8, 0xf6, 0x38, 0x29, 0x85, 0xb8, 0x4b, 0x5d, 0xa5, 0x98, 0x4f, 0xc9, 0xf4, 0x6d, 0x00, 0xc4, 0xb5, 0xa3, 0xb0, 0x9d, 0x99, 0x0f, 0x51, 0xcd, 0x33, 0xe1, 0x03, 0xe7, 0xf7, 0x7b, 0x52, 0x43, 0x19, 0x00, 0x0d, 0x2e, 0xf0, 0x8e, 0x9a, 0x10, 0xe5, 0x32, 0xeb, 0xaa, 0x36, 0xd9, 0x56, 0x2b, 0x36, 0xaf, 0xff, 0xe3, 0x5c, 0x3b, 0xab, 0xa4, 0x96, 0x43, 0xf0, 0x49, 0x66, 0xd3, 0x1a, 0x99, 0x89, 0xb2, 0x5e, 0x2c, 0xdd, 0xa6, 0x5c, 0x89, 0xc2, 0x38, 0xf0, 0x83, 0xea, 0x4f, 0x8c, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10262 = { .name = "ecdsa_secp521r1_sha3_512_10262", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10262_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10262_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10262_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10263 for ECDSA, tcId is 309 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10263_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10263_msg[] = { 0x37, 0x38, 0x36, 0x34, 0x36, 0x38, 0x36, 0x33, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10263_sig[] = { 0x01, 0x87, 0x06, 0xd8, 0x1d, 0x28, 0xee, 0x89, 0xff, 0x9b, 0xee, 0x8a, 0xe0, 0xa1, 0x3a, 0xac, 0x7d, 0x39, 0x22, 0x94, 0x3f, 0xab, 0x2a, 0x8f, 0xf8, 0xd3, 0xdf, 0x91, 0xc3, 0x96, 0xf0, 0x31, 0x97, 0xa0, 0xdd, 0xc0, 0x02, 0xe8, 0x25, 0xb2, 0x29, 0xe3, 0x9a, 0x2f, 0xf1, 0x05, 0x29, 0xf9, 0x35, 0xd8, 0x50, 0x85, 0xfb, 0x0a, 0x6a, 0x8a, 0xf6, 0xeb, 0x6f, 0x9e, 0x10, 0xc9, 0xd2, 0x60, 0x68, 0x7e, 0x00, 0xbb, 0x9a, 0xad, 0x24, 0xe5, 0xa9, 0x2d, 0x7d, 0xc3, 0xee, 0x6e, 0x29, 0xab, 0x44, 0x1e, 0xfa, 0xaa, 0x4a, 0x6d, 0xb4, 0xe3, 0x15, 0x02, 0xba, 0x8e, 0x9c, 0x91, 0x90, 0xea, 0xe1, 0xee, 0x80, 0x40, 0x19, 0x8f, 0xe8, 0xdb, 0x5f, 0xe8, 0xb5, 0xa0, 0x22, 0x89, 0x33, 0xfc, 0xb3, 0x09, 0xd7, 0xdf, 0xf4, 0xac, 0x00, 0xdd, 0xa2, 0x15, 0x2b, 0xf3, 0xb1, 0xf8, 0xe3, 0x87, 0x4c, 0x9b, 0xdc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10263 = { .name = "ecdsa_secp521r1_sha3_512_10263", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10263_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10263_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10263_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10264 for ECDSA, tcId is 310 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10264_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10264_msg[] = { 0x33, 0x30, 0x35, 0x34, 0x37, 0x37, 0x33, 0x37, 0x36, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10264_sig[] = { 0x00, 0x77, 0xb0, 0x4b, 0xdb, 0x6f, 0x83, 0x9f, 0x14, 0xde, 0x5c, 0xe4, 0x76, 0xaf, 0x1f, 0x26, 0xe1, 0xe3, 0x9c, 0x86, 0x53, 0x14, 0x1e, 0x44, 0x99, 0x14, 0x9a, 0x8b, 0x26, 0x77, 0x86, 0x91, 0x70, 0x96, 0xcb, 0xcb, 0x7a, 0x72, 0xb0, 0xd2, 0x1a, 0x38, 0x94, 0xab, 0xf1, 0x65, 0xb6, 0x53, 0xbc, 0xaf, 0x60, 0x75, 0x97, 0x4e, 0x07, 0x32, 0x14, 0x67, 0x8f, 0xea, 0xcc, 0x10, 0x55, 0x7e, 0x0f, 0x05, 0x00, 0xed, 0xa5, 0x9d, 0x6d, 0x49, 0xbf, 0x29, 0x9d, 0x3e, 0xea, 0xf5, 0xa2, 0xb9, 0xa2, 0x32, 0xf7, 0xde, 0x5b, 0x08, 0xe1, 0x44, 0xbd, 0x35, 0x9d, 0x66, 0x3d, 0x49, 0x73, 0x09, 0x85, 0x58, 0x4d, 0xcc, 0x09, 0x1e, 0x86, 0x97, 0x7b, 0x77, 0x84, 0x5f, 0x4a, 0x3e, 0x02, 0xa0, 0x1f, 0x48, 0x5f, 0x7c, 0xdb, 0x89, 0x19, 0x68, 0x01, 0x2d, 0xbd, 0xf4, 0x35, 0x23, 0x39, 0xab, 0xca, 0x49, 0x66, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10264 = { .name = "ecdsa_secp521r1_sha3_512_10264", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10264_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10264_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10264_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10265 for ECDSA, tcId is 311 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10265_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10265_msg[] = { 0x31, 0x39, 0x32, 0x37, 0x30, 0x31, 0x37, 0x37, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10265_sig[] = { 0x01, 0x5d, 0xe0, 0x7d, 0x01, 0xe2, 0x5e, 0x26, 0xed, 0x30, 0x69, 0x80, 0x90, 0x31, 0xe9, 0x6c, 0xf3, 0x18, 0x86, 0x04, 0x95, 0xc1, 0x5a, 0x24, 0x4c, 0x42, 0xbc, 0x0c, 0x11, 0x51, 0xc0, 0xa2, 0xef, 0x7c, 0xb2, 0xa2, 0x84, 0x1f, 0x08, 0x41, 0xa8, 0x90, 0xc5, 0xc7, 0x21, 0x15, 0x85, 0xfb, 0xb6, 0x38, 0x50, 0xc0, 0x9f, 0x5b, 0x4a, 0x8c, 0x28, 0xf6, 0x0e, 0x76, 0x42, 0x07, 0xa0, 0x0a, 0xb0, 0xbb, 0x00, 0xac, 0x1a, 0xbf, 0xb9, 0xf8, 0xf9, 0x82, 0x4a, 0x1e, 0xf7, 0x44, 0xba, 0x12, 0x99, 0xd2, 0x95, 0x84, 0x8c, 0xbd, 0xc9, 0x86, 0x91, 0x98, 0x4e, 0xcc, 0xe0, 0x47, 0x38, 0x99, 0xef, 0x39, 0x51, 0xa9, 0x1d, 0xae, 0x6a, 0xec, 0xca, 0x52, 0xa8, 0xab, 0x9e, 0x04, 0xd5, 0x7f, 0x77, 0xbb, 0xc1, 0x78, 0xe2, 0x6a, 0x31, 0xab, 0xbd, 0x8d, 0xc3, 0x10, 0x37, 0x42, 0xac, 0x04, 0x14, 0xa9, 0xdb, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10265 = { .name = "ecdsa_secp521r1_sha3_512_10265", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10265_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10265_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10265_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10266 for ECDSA, tcId is 312 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10266_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10266_msg[] = { 0x31, 0x30, 0x35, 0x31, 0x33, 0x32, 0x35, 0x36, 0x33, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10266_sig[] = { 0x00, 0xdf, 0xb9, 0x09, 0x8e, 0x38, 0x6d, 0xbe, 0x6c, 0x49, 0xb4, 0x5d, 0x83, 0x4c, 0x06, 0xbb, 0x33, 0x19, 0x12, 0xa4, 0x01, 0x5d, 0xd2, 0xac, 0x81, 0x03, 0x6d, 0x85, 0x47, 0xfb, 0xd6, 0x9a, 0x98, 0xd5, 0x56, 0x01, 0xc9, 0x79, 0x01, 0xc4, 0x17, 0xe3, 0x3b, 0x6e, 0xed, 0x5e, 0x49, 0x91, 0x68, 0xcc, 0x14, 0xb3, 0x4f, 0xb1, 0x20, 0x18, 0x0c, 0xb0, 0xb6, 0xe1, 0x1f, 0x63, 0x81, 0x82, 0xce, 0x93, 0x00, 0x50, 0x21, 0x48, 0x12, 0x72, 0x1b, 0x28, 0x8d, 0x27, 0x0b, 0xdb, 0xce, 0x36, 0x1d, 0x4c, 0x5a, 0xcb, 0xad, 0x45, 0x45, 0x21, 0x11, 0x1d, 0x2a, 0xdb, 0x1e, 0xa4, 0xb3, 0x71, 0xdf, 0x5c, 0x38, 0x0e, 0x4c, 0xbe, 0x19, 0xd0, 0xe7, 0x80, 0xbb, 0x2e, 0x26, 0x8a, 0x46, 0x95, 0x7f, 0xb4, 0x96, 0xd2, 0x71, 0x9a, 0xe9, 0x51, 0x6d, 0x41, 0xe7, 0x0d, 0xed, 0xd8, 0xf9, 0xa1, 0xf7, 0xe7, 0x47, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10266 = { .name = "ecdsa_secp521r1_sha3_512_10266", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10266_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10266_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10266_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10267 for ECDSA, tcId is 313 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10267_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10267_msg[] = { 0x34, 0x30, 0x31, 0x39, 0x38, 0x36, 0x36, 0x36, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10267_sig[] = { 0x00, 0x3a, 0x71, 0x79, 0x96, 0xfb, 0x34, 0x06, 0x3e, 0x77, 0xe0, 0x5a, 0x87, 0x55, 0xeb, 0x90, 0xdc, 0x39, 0xf6, 0x37, 0xba, 0x6f, 0x18, 0xe7, 0x02, 0xe8, 0xd0, 0x49, 0xe1, 0x87, 0x90, 0x33, 0x84, 0x69, 0xcb, 0x91, 0x69, 0x07, 0xcd, 0xdc, 0x40, 0x4f, 0x73, 0xab, 0xf0, 0x47, 0x17, 0x50, 0x86, 0xde, 0x9c, 0xc5, 0x12, 0xcd, 0x46, 0xb9, 0x51, 0x00, 0x77, 0xdd, 0xef, 0x8e, 0xd6, 0x04, 0x56, 0xf9, 0x00, 0x3d, 0x40, 0x67, 0xf4, 0xdd, 0x39, 0x41, 0xfb, 0x46, 0xc2, 0xe3, 0xd1, 0xe1, 0x39, 0x98, 0xee, 0x7e, 0x42, 0xd3, 0x26, 0x52, 0x55, 0xf4, 0xa6, 0x80, 0xfe, 0xc3, 0x72, 0xe5, 0x7f, 0xd2, 0x69, 0xeb, 0x84, 0x3e, 0x64, 0x41, 0xc7, 0x4e, 0x55, 0x2c, 0xa9, 0x69, 0x0b, 0x10, 0x07, 0xc1, 0x6f, 0x33, 0x91, 0x37, 0xc4, 0x8d, 0x8e, 0x4b, 0x32, 0x18, 0x08, 0x55, 0x89, 0x07, 0x73, 0x6a, 0x58, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10267 = { .name = "ecdsa_secp521r1_sha3_512_10267", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10267_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10267_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10267_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10268 for ECDSA, tcId is 314 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10268_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10268_msg[] = { 0x31, 0x30, 0x34, 0x35, 0x30, 0x32, 0x35, 0x37, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10268_sig[] = { 0x00, 0xb9, 0x15, 0xa0, 0x33, 0x31, 0xa4, 0xef, 0x1b, 0xc8, 0x12, 0x9d, 0x56, 0x86, 0x5b, 0xb5, 0x15, 0x81, 0x67, 0x66, 0x6c, 0x55, 0x39, 0x44, 0x2d, 0x96, 0xe4, 0x17, 0x88, 0x4d, 0x2a, 0x41, 0xb3, 0x30, 0xef, 0x63, 0xfb, 0x13, 0xf6, 0x6f, 0xa7, 0x7c, 0xc6, 0xa3, 0x00, 0xe2, 0x9e, 0x85, 0x35, 0xcb, 0x09, 0x30, 0x5a, 0xb3, 0xf4, 0x9d, 0x7c, 0x46, 0x4d, 0x74, 0x03, 0xc5, 0x4a, 0x42, 0x8f, 0xfe, 0x01, 0xa3, 0xb5, 0xff, 0x1b, 0xf1, 0xc0, 0xa1, 0x9f, 0xb2, 0x68, 0xa0, 0x16, 0xbc, 0x19, 0xf8, 0x74, 0x7d, 0x2a, 0x0e, 0xc0, 0x6a, 0xcf, 0xcb, 0x75, 0x64, 0xe8, 0xb6, 0x73, 0x55, 0x13, 0x00, 0xdc, 0x0c, 0x69, 0x88, 0xa8, 0xd5, 0x7d, 0x2e, 0x69, 0xb9, 0x0f, 0x45, 0xca, 0xf4, 0x2f, 0x27, 0x69, 0xce, 0x54, 0x69, 0x1c, 0x24, 0xf7, 0xd4, 0xcc, 0xb3, 0x22, 0xdc, 0xb0, 0x15, 0x25, 0x60, 0x60, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10268 = { .name = "ecdsa_secp521r1_sha3_512_10268", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10268_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10268_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10268_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10269 for ECDSA, tcId is 315 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10269_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10269_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x35, 0x38, 0x35, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10269_sig[] = { 0x00, 0x77, 0x57, 0x28, 0x50, 0xef, 0x3a, 0x79, 0xcd, 0x9d, 0xf6, 0x94, 0x6e, 0x1f, 0xfd, 0x37, 0x22, 0x69, 0xf3, 0xa5, 0x05, 0x15, 0xb9, 0xf8, 0xf6, 0x1b, 0x82, 0xee, 0x6d, 0x29, 0xaf, 0x25, 0xc5, 0xab, 0x17, 0xe0, 0x53, 0x94, 0xc1, 0x46, 0x20, 0xf1, 0x5c, 0x7d, 0x04, 0x78, 0x70, 0x10, 0x2a, 0x99, 0x13, 0x22, 0xba, 0xad, 0x29, 0xb3, 0x04, 0x65, 0xd6, 0xd1, 0x27, 0x1b, 0x3e, 0x85, 0xef, 0xed, 0x00, 0x4e, 0x07, 0x0c, 0x59, 0x4f, 0xdb, 0x84, 0xf6, 0x78, 0xbe, 0xb2, 0xbe, 0x1d, 0xe5, 0xaa, 0x45, 0xec, 0x36, 0xea, 0x3c, 0x9e, 0xbb, 0x37, 0xa2, 0x57, 0x69, 0xce, 0x01, 0xbf, 0x90, 0xdb, 0x3f, 0x24, 0x58, 0x73, 0x71, 0x38, 0xaf, 0xed, 0xc2, 0x1d, 0xd5, 0x15, 0x15, 0x24, 0x1e, 0x87, 0x24, 0xe9, 0xa4, 0x9a, 0xf1, 0x21, 0x54, 0xa2, 0x78, 0xd8, 0x9d, 0xb8, 0x98, 0xf6, 0x6a, 0xa1, 0x0c, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10269 = { .name = "ecdsa_secp521r1_sha3_512_10269", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10269_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10269_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10269_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10270 for ECDSA, tcId is 316 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10270_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10270_msg[] = { 0x33, 0x30, 0x37, 0x34, 0x36, 0x35, 0x33, 0x32, 0x34, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10270_sig[] = { 0x00, 0xc7, 0x16, 0x90, 0xb8, 0x45, 0xe4, 0xee, 0x1e, 0x91, 0xa8, 0x45, 0x2c, 0x65, 0xa2, 0x45, 0x86, 0x0d, 0x5c, 0x13, 0xc1, 0x3f, 0x35, 0x98, 0x96, 0xaf, 0x8b, 0x22, 0x46, 0x69, 0x01, 0xa9, 0x99, 0xb0, 0x33, 0xba, 0x49, 0xc4, 0xf3, 0xd9, 0xb2, 0xb4, 0x96, 0xbb, 0x03, 0xd1, 0xf4, 0x4a, 0x52, 0x3d, 0x64, 0x81, 0x5f, 0x3d, 0xb2, 0x9b, 0x26, 0x2c, 0xb3, 0x18, 0x89, 0xdf, 0x56, 0x80, 0x61, 0x3d, 0x00, 0x56, 0x1b, 0x59, 0x57, 0x00, 0x8a, 0x46, 0x9c, 0x99, 0x81, 0x97, 0x95, 0x6a, 0xe8, 0x55, 0xd7, 0x7c, 0x2c, 0x3b, 0xeb, 0xac, 0x91, 0xd3, 0x07, 0xe9, 0xa9, 0xd9, 0x8b, 0xcb, 0xb2, 0x5a, 0x97, 0xbd, 0x91, 0x41, 0x65, 0xe0, 0x8b, 0x96, 0x51, 0xfd, 0x70, 0xe0, 0xa8, 0x21, 0x5c, 0x50, 0xce, 0x94, 0x10, 0x59, 0xdd, 0x39, 0xcd, 0xea, 0x01, 0xb3, 0x52, 0x03, 0x37, 0xb4, 0x3e, 0x5c, 0x8f, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10270 = { .name = "ecdsa_secp521r1_sha3_512_10270", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10270_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10270_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10270_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10271 for ECDSA, tcId is 317 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10271_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10271_msg[] = { 0x37, 0x37, 0x31, 0x34, 0x36, 0x38, 0x33, 0x34, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10271_sig[] = { 0x01, 0xb8, 0xc5, 0x10, 0x0a, 0x60, 0x21, 0x11, 0x6c, 0x8e, 0x98, 0x8c, 0x66, 0x61, 0x1a, 0xcc, 0x9d, 0xa7, 0xcc, 0x5e, 0xc6, 0x21, 0xf9, 0x5d, 0xf5, 0x37, 0xd8, 0x08, 0x2e, 0xe3, 0xf5, 0xc0, 0x7f, 0x71, 0x71, 0xa8, 0x15, 0x0e, 0xf4, 0x5c, 0xe3, 0xf3, 0xdc, 0x80, 0x2a, 0x89, 0x11, 0x20, 0x5a, 0x51, 0x06, 0xb9, 0x63, 0xa5, 0x2e, 0xa6, 0x28, 0x75, 0x88, 0xcb, 0x0d, 0xc1, 0xd9, 0x98, 0xea, 0xd8, 0x01, 0xcc, 0xb6, 0xdf, 0x75, 0x46, 0xf4, 0x06, 0x1f, 0x14, 0xc6, 0xa0, 0x95, 0x0e, 0x0f, 0xd3, 0x83, 0x72, 0xe0, 0xc4, 0x25, 0x88, 0xc6, 0xfc, 0xb3, 0x35, 0x42, 0x47, 0x39, 0x8d, 0x19, 0xa5, 0xc9, 0x1d, 0x86, 0x61, 0x75, 0x95, 0xc3, 0x85, 0xe9, 0x3a, 0x08, 0x7b, 0x84, 0xc7, 0xff, 0x1f, 0xd6, 0xc4, 0xee, 0x4f, 0xca, 0x2f, 0xb1, 0x11, 0x66, 0x27, 0x88, 0xdb, 0xdc, 0x1b, 0xc5, 0x21, 0x7b, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10271 = { .name = "ecdsa_secp521r1_sha3_512_10271", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10271_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10271_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10271_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10272 for ECDSA, tcId is 318 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10272_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10272_msg[] = { 0x31, 0x37, 0x39, 0x33, 0x33, 0x38, 0x31, 0x33, 0x32, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10272_sig[] = { 0x01, 0xde, 0x9e, 0xdf, 0x9e, 0x10, 0xb8, 0xc6, 0x54, 0x52, 0xf8, 0xea, 0x07, 0xc5, 0x7f, 0x01, 0xc2, 0xf2, 0xee, 0x68, 0x28, 0xd8, 0x9b, 0xd4, 0xbc, 0xea, 0xec, 0x40, 0x46, 0x64, 0x5a, 0x97, 0x0e, 0x85, 0xb4, 0x1c, 0xf7, 0xf0, 0x4f, 0x3f, 0xcb, 0x35, 0x7e, 0x53, 0x2e, 0x08, 0x14, 0xd0, 0xb7, 0xc8, 0xfb, 0xe1, 0xe0, 0x73, 0xd5, 0x55, 0xe3, 0xfc, 0x13, 0xa1, 0x8b, 0xde, 0xb8, 0x08, 0x88, 0x58, 0x01, 0xb0, 0x91, 0xf6, 0xbf, 0x09, 0x38, 0x5d, 0xd2, 0xd7, 0xa2, 0x20, 0x96, 0x37, 0x33, 0x2b, 0xe3, 0x5e, 0x1c, 0x7e, 0xfb, 0xa0, 0xb8, 0x0a, 0x97, 0xb2, 0x68, 0xb5, 0xe6, 0xd5, 0x0a, 0xd2, 0xbf, 0xf6, 0x62, 0xec, 0x74, 0xfa, 0xb0, 0x43, 0x48, 0x90, 0xa4, 0x8e, 0x39, 0x34, 0x0a, 0x49, 0x4f, 0x45, 0xa7, 0xde, 0x4b, 0x88, 0x65, 0x13, 0x82, 0x98, 0x54, 0xde, 0x83, 0xad, 0x9a, 0xbb, 0xdc, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10272 = { .name = "ecdsa_secp521r1_sha3_512_10272", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10272_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10272_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10272_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10273 for ECDSA, tcId is 319 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10273_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10273_msg[] = { 0x34, 0x38, 0x38, 0x30, 0x36, 0x32, 0x35, 0x35, 0x36, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10273_sig[] = { 0x01, 0x0e, 0xa1, 0xfa, 0xe5, 0x66, 0xab, 0xa5, 0x75, 0xe0, 0x6f, 0x2e, 0x67, 0x67, 0x77, 0xf0, 0xf4, 0xb8, 0x32, 0xac, 0x65, 0x47, 0x4c, 0x00, 0xcb, 0x43, 0x63, 0xa7, 0xe9, 0x67, 0x62, 0xac, 0x55, 0x79, 0x12, 0xcf, 0x22, 0xf7, 0x37, 0x41, 0x4f, 0xc3, 0x86, 0x41, 0x0d, 0x21, 0x40, 0xa0, 0x7f, 0x2c, 0xc6, 0x04, 0x75, 0x9a, 0x4e, 0x50, 0xca, 0x6d, 0x34, 0xef, 0xf5, 0xa9, 0xba, 0xbd, 0x18, 0x68, 0x00, 0x87, 0x11, 0xb3, 0x5d, 0x2a, 0x5a, 0x6d, 0xd3, 0x66, 0x30, 0xd0, 0xbd, 0x0b, 0x0c, 0x1e, 0x85, 0xa1, 0x10, 0x57, 0x58, 0x3c, 0xc8, 0x7f, 0x59, 0xbd, 0xea, 0xb7, 0x4f, 0xcd, 0xaf, 0x40, 0x72, 0x35, 0xd6, 0x8d, 0x24, 0xbd, 0xa2, 0x6e, 0x6b, 0x86, 0x64, 0x5b, 0xa3, 0x13, 0x01, 0x53, 0x9e, 0xff, 0xe8, 0xe5, 0x18, 0x18, 0xe6, 0xc9, 0x15, 0xb3, 0x33, 0xcb, 0x86, 0x8e, 0xc3, 0x5a, 0x62, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10273 = { .name = "ecdsa_secp521r1_sha3_512_10273", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10273_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10273_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10273_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10274 for ECDSA, tcId is 320 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10274_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10274_msg[] = { 0x34, 0x39, 0x34, 0x33, 0x37, 0x36, 0x34, 0x38, 0x38, 0x35, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10274_sig[] = { 0x00, 0x22, 0x4f, 0x2a, 0x67, 0x97, 0xd3, 0x1f, 0x66, 0x9a, 0x72, 0x5a, 0x0b, 0xe5, 0xc4, 0x8e, 0x56, 0x9f, 0x31, 0x3b, 0xf0, 0x97, 0x80, 0xaa, 0x49, 0xc8, 0x43, 0x0b, 0x2e, 0xd3, 0xe2, 0x8b, 0xd8, 0x2a, 0xea, 0x9a, 0x46, 0xfd, 0xdf, 0xdf, 0x9f, 0xf6, 0xd8, 0xbe, 0x9d, 0x50, 0xdc, 0x6e, 0xdd, 0x90, 0x21, 0xa1, 0xaa, 0x8a, 0x87, 0x07, 0xd1, 0x9f, 0xbb, 0xb1, 0x64, 0xd3, 0xf2, 0xf2, 0xc9, 0x67, 0x00, 0xae, 0xcd, 0xd0, 0x48, 0x85, 0xde, 0x9b, 0xdd, 0xc6, 0x0d, 0x84, 0xeb, 0xbf, 0x9e, 0x86, 0x8d, 0x28, 0x54, 0x2c, 0xdf, 0xcc, 0xf7, 0xb1, 0xa3, 0x06, 0xcb, 0x18, 0x8e, 0x18, 0x98, 0x68, 0x91, 0xcb, 0x25, 0x37, 0xa8, 0x04, 0xca, 0x99, 0xb8, 0xda, 0x8b, 0x4a, 0x88, 0x62, 0xbc, 0xb8, 0x42, 0x16, 0x1b, 0x33, 0x47, 0x7a, 0xfe, 0xa8, 0xf2, 0x24, 0xf4, 0x27, 0x7d, 0xb9, 0x3a, 0x4f, 0x66, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10274 = { .name = "ecdsa_secp521r1_sha3_512_10274", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10274_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10274_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10274_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10275 for ECDSA, tcId is 321 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10275_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10275_msg[] = { 0x34, 0x37, 0x30, 0x38, 0x36, 0x38, 0x39, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10275_sig[] = { 0x01, 0x1e, 0x71, 0xfb, 0xb3, 0xbb, 0x89, 0x4f, 0x71, 0x42, 0x54, 0x75, 0x86, 0x20, 0x00, 0x56, 0x7c, 0x6f, 0x58, 0x17, 0x0f, 0xc2, 0xb1, 0x21, 0xe1, 0x78, 0x3d, 0xa5, 0x63, 0x46, 0xa4, 0x61, 0x13, 0xe1, 0x77, 0x92, 0x03, 0xfd, 0x55, 0xf5, 0xbe, 0x57, 0xfd, 0xa0, 0xe7, 0xa4, 0x8d, 0x46, 0xd1, 0x90, 0x8b, 0x80, 0x33, 0xf8, 0x7b, 0x57, 0x7e, 0xba, 0x64, 0xe6, 0x04, 0xe2, 0x9e, 0xf8, 0x69, 0x3a, 0x01, 0xef, 0x2a, 0x00, 0xcc, 0x4f, 0x97, 0x8b, 0xcf, 0x8a, 0x0c, 0xca, 0x6b, 0xaf, 0xa9, 0x3a, 0x32, 0x04, 0xca, 0x0c, 0x9b, 0xb4, 0xed, 0x68, 0x4e, 0xe8, 0x9a, 0x56, 0x96, 0x38, 0xe9, 0x9d, 0x84, 0xcb, 0x47, 0x0f, 0x51, 0xfd, 0xc3, 0x78, 0x6e, 0x1a, 0xd3, 0x83, 0xc5, 0xa9, 0x0a, 0xe4, 0x9b, 0xc1, 0xe7, 0xe7, 0xc1, 0x4f, 0x6b, 0xed, 0xba, 0xbf, 0x1f, 0x09, 0xa4, 0x25, 0x67, 0xe3, 0x02, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10275 = { .name = "ecdsa_secp521r1_sha3_512_10275", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10275_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10275_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10275_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10276 for ECDSA, tcId is 322 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10276_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10276_msg[] = { 0x33, 0x30, 0x32, 0x39, 0x38, 0x37, 0x32, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10276_sig[] = { 0x01, 0x48, 0x67, 0xd5, 0x47, 0xdf, 0xcc, 0xe3, 0x33, 0x3d, 0x41, 0x2a, 0x7e, 0x17, 0x74, 0x51, 0xc8, 0xfc, 0x67, 0x29, 0x5e, 0xa0, 0xa3, 0xfe, 0x1b, 0xb9, 0x9c, 0x1f, 0x51, 0x7e, 0x95, 0x0c, 0x46, 0x37, 0x46, 0x4a, 0x8d, 0x74, 0x6f, 0x21, 0x7e, 0x5e, 0xa2, 0xd2, 0xe8, 0x76, 0x76, 0xa7, 0x6b, 0x8d, 0xf8, 0x89, 0x36, 0x4a, 0x99, 0x3a, 0xf9, 0x71, 0x41, 0x0b, 0x2a, 0x65, 0x2b, 0xbb, 0xb1, 0x8d, 0x00, 0x04, 0x29, 0x19, 0x45, 0x61, 0xd5, 0x47, 0x94, 0xf4, 0x9d, 0x75, 0x2b, 0xd4, 0x26, 0x60, 0x85, 0x6d, 0xe5, 0x1f, 0x47, 0x30, 0x86, 0x38, 0x0f, 0xfd, 0x33, 0xa8, 0x56, 0xcb, 0x8c, 0xed, 0xf6, 0xd2, 0xaf, 0x61, 0xe9, 0x08, 0x4e, 0x1f, 0xc7, 0xf6, 0xb0, 0x23, 0x2c, 0xa5, 0xb8, 0x34, 0x3d, 0x2a, 0xeb, 0x82, 0xba, 0x32, 0xc7, 0x81, 0x0a, 0xf1, 0xf1, 0x33, 0x2d, 0x06, 0xaa, 0xda, 0xe8, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10276 = { .name = "ecdsa_secp521r1_sha3_512_10276", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10276_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10276_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10276_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10277 for ECDSA, tcId is 323 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10277_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10277_msg[] = { 0x33, 0x30, 0x31, 0x37, 0x31, 0x39, 0x30, 0x33, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10277_sig[] = { 0x01, 0xdf, 0x9b, 0x38, 0x81, 0x75, 0x67, 0x75, 0xec, 0x1f, 0x0a, 0xe5, 0xde, 0x26, 0xf7, 0xd6, 0xf8, 0xd5, 0x63, 0xc1, 0xaf, 0xaf, 0x79, 0x42, 0xf3, 0x05, 0x9c, 0xe7, 0x5c, 0xcf, 0x75, 0xa3, 0x4a, 0x01, 0x20, 0x95, 0x5a, 0x1e, 0x0e, 0xbd, 0xd8, 0x9d, 0xe9, 0xb0, 0x8b, 0x14, 0x3d, 0xcb, 0x62, 0xe4, 0x0a, 0x71, 0x1a, 0x37, 0xe6, 0x40, 0x87, 0x21, 0xf8, 0x0e, 0x56, 0x0a, 0x17, 0xf2, 0xcb, 0xc5, 0x01, 0x2d, 0x7e, 0xab, 0xe9, 0x56, 0x0b, 0xc2, 0x3b, 0xd6, 0x22, 0x66, 0xce, 0x1b, 0xee, 0x7f, 0xfe, 0xcd, 0xa8, 0xc3, 0x9e, 0xdf, 0x7e, 0xaf, 0x56, 0x08, 0x33, 0x8e, 0x2b, 0x54, 0x6b, 0x68, 0x9d, 0x21, 0x02, 0xe2, 0x9b, 0xd3, 0x06, 0x4e, 0xf6, 0x70, 0x48, 0x9c, 0x85, 0x99, 0xff, 0x90, 0x2b, 0x09, 0x82, 0x11, 0x10, 0x7e, 0xdf, 0xda, 0x59, 0x20, 0xee, 0xd9, 0xde, 0xee, 0xac, 0xb8, 0x02, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10277 = { .name = "ecdsa_secp521r1_sha3_512_10277", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10277_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10277_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10277_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10278 for ECDSA, tcId is 324 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10278_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10278_msg[] = { 0x39, 0x35, 0x36, 0x33, 0x36, 0x33, 0x39, 0x33, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10278_sig[] = { 0x01, 0x9f, 0xa4, 0x89, 0x8a, 0xc9, 0x32, 0x31, 0x3e, 0xfd, 0xfc, 0xa7, 0xe7, 0x20, 0xa5, 0x27, 0x48, 0xd1, 0x1d, 0xf0, 0xd0, 0x0a, 0x2a, 0x36, 0xbd, 0x6c, 0x12, 0xae, 0x03, 0x7c, 0x89, 0x21, 0x59, 0x83, 0x68, 0x14, 0x1d, 0xfc, 0x14, 0xd9, 0xb4, 0xd5, 0x73, 0x6b, 0x08, 0x99, 0x77, 0x4f, 0x51, 0x14, 0x2e, 0x10, 0x9c, 0x94, 0xbf, 0xab, 0x19, 0x6e, 0xb7, 0xb9, 0x6c, 0x2d, 0xcb, 0x62, 0x1c, 0x98, 0x00, 0x95, 0x9f, 0xf6, 0xea, 0x86, 0x73, 0xda, 0xeb, 0x53, 0x83, 0x35, 0x7d, 0x0b, 0xe5, 0x42, 0xf6, 0x4a, 0x03, 0x85, 0xbd, 0x7a, 0xc3, 0xa1, 0x3c, 0xb3, 0xab, 0x5c, 0x30, 0xf0, 0x8f, 0x58, 0xc1, 0x6c, 0x8b, 0x17, 0xd2, 0x5f, 0x73, 0x29, 0x82, 0x45, 0xae, 0x2a, 0x6e, 0x06, 0x0a, 0xf5, 0x90, 0xb4, 0xe2, 0xad, 0x87, 0x0d, 0x13, 0xa3, 0xed, 0x14, 0xd6, 0x13, 0x76, 0xe3, 0xc3, 0x78, 0xa3, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10278 = { .name = "ecdsa_secp521r1_sha3_512_10278", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10278_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10278_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10278_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10279 for ECDSA, tcId is 325 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10279_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10279_msg[] = { 0x35, 0x33, 0x30, 0x30, 0x37, 0x36, 0x34, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10279_sig[] = { 0x00, 0x49, 0x53, 0xae, 0xcc, 0xd2, 0xb3, 0x5b, 0xcd, 0xf7, 0x99, 0x0c, 0xa3, 0x91, 0xd3, 0x94, 0xd1, 0x98, 0xed, 0x62, 0x7d, 0xe0, 0xb4, 0xb5, 0x78, 0x3f, 0xc1, 0x2e, 0x20, 0x96, 0x7e, 0xcc, 0x97, 0x29, 0xfe, 0x6c, 0x9a, 0xe5, 0x1c, 0x54, 0xc5, 0x66, 0xd5, 0x23, 0x56, 0xef, 0x4f, 0xea, 0x2d, 0x8d, 0xa4, 0x42, 0x3c, 0xbe, 0x5f, 0xb8, 0x2d, 0x1d, 0x29, 0x84, 0xa2, 0xb6, 0xf2, 0x0e, 0xf4, 0x2e, 0x01, 0x09, 0x2d, 0xfa, 0x2b, 0x04, 0xa5, 0xe1, 0xb5, 0x74, 0xc1, 0xd9, 0x07, 0xf6, 0x6e, 0x24, 0x84, 0xaa, 0x77, 0x2c, 0x93, 0x6f, 0x2a, 0xd3, 0xc0, 0x3b, 0x61, 0xf7, 0xd0, 0x12, 0x90, 0xee, 0x84, 0x9d, 0x3e, 0x3d, 0x52, 0x85, 0x93, 0xa3, 0x04, 0xbc, 0x2f, 0x64, 0x5d, 0xbc, 0x3c, 0xa8, 0x3c, 0xf2, 0x11, 0x95, 0x88, 0xad, 0xc2, 0x98, 0x60, 0xe7, 0x2a, 0x30, 0xb1, 0xec, 0xcf, 0x89, 0x5d, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10279 = { .name = "ecdsa_secp521r1_sha3_512_10279", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10279_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10279_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10279_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10280 for ECDSA, tcId is 326 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10280_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10280_msg[] = { 0x31, 0x39, 0x33, 0x34, 0x36, 0x36, 0x34, 0x38, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10280_sig[] = { 0x01, 0xd9, 0xa1, 0x62, 0x89, 0xb1, 0x54, 0xbc, 0x7b, 0x34, 0x1a, 0xb5, 0xf3, 0x76, 0xdf, 0x9d, 0x09, 0xac, 0xd1, 0x06, 0x8b, 0x67, 0xba, 0xb0, 0x90, 0x30, 0x70, 0x42, 0x96, 0x2b, 0xce, 0xae, 0x01, 0x99, 0x69, 0x6a, 0xf3, 0x6b, 0xab, 0x0f, 0x64, 0x79, 0x06, 0xed, 0x7e, 0x0a, 0x56, 0x27, 0xc9, 0x61, 0x21, 0x7e, 0x53, 0x31, 0x7c, 0xa0, 0x89, 0x6b, 0xc6, 0x50, 0xdf, 0x96, 0xe9, 0x46, 0x1f, 0x5d, 0x01, 0xce, 0x2b, 0x97, 0x5e, 0xcb, 0xd5, 0xea, 0xa2, 0x88, 0x83, 0xce, 0x90, 0x56, 0x0b, 0x27, 0xb4, 0xc6, 0x6a, 0x28, 0x4c, 0x50, 0x1e, 0x57, 0xed, 0x4c, 0xe5, 0x89, 0xec, 0xda, 0x80, 0x1d, 0xef, 0x1d, 0x15, 0x10, 0x6c, 0xd8, 0xc8, 0x30, 0xac, 0x1c, 0x00, 0xb5, 0x29, 0xe4, 0xf4, 0x6e, 0x18, 0x8e, 0xc5, 0xf9, 0x0e, 0xf6, 0x50, 0xf5, 0x20, 0xb1, 0xcf, 0xdc, 0x33, 0xc6, 0xea, 0x17, 0x10, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10280 = { .name = "ecdsa_secp521r1_sha3_512_10280", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10280_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10280_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10280_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10281 for ECDSA, tcId is 327 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10281_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10281_msg[] = { 0x33, 0x35, 0x35, 0x34, 0x35, 0x30, 0x35, 0x35, 0x39, 0x36, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10281_sig[] = { 0x01, 0x36, 0xf5, 0x62, 0xaa, 0x08, 0x2b, 0x53, 0x5f, 0xd5, 0x65, 0x70, 0x52, 0xa6, 0x2e, 0x79, 0x4e, 0xb6, 0xe1, 0xb8, 0x18, 0x81, 0xee, 0x2b, 0xfc, 0x41, 0x83, 0x2d, 0xd7, 0x28, 0x4b, 0xe0, 0x75, 0xf5, 0xe7, 0xe3, 0x69, 0xde, 0x8f, 0x7b, 0xf2, 0x66, 0x0c, 0x81, 0xe6, 0x90, 0xab, 0x9c, 0xef, 0xf8, 0x97, 0x50, 0x03, 0x25, 0x79, 0xf2, 0xf1, 0x97, 0x15, 0xf6, 0xfa, 0xae, 0x78, 0xb5, 0x95, 0x09, 0x00, 0x78, 0x4a, 0xa1, 0x62, 0xe2, 0xea, 0x1e, 0xc6, 0x08, 0x11, 0xb5, 0xe4, 0xfa, 0x29, 0x90, 0x72, 0x10, 0xf3, 0xaf, 0x51, 0x48, 0xf1, 0x4b, 0x35, 0xe6, 0x41, 0xe9, 0x1d, 0x09, 0xcf, 0x58, 0x0c, 0xf0, 0x43, 0x66, 0x62, 0x11, 0x8c, 0x9e, 0xde, 0xa8, 0x8a, 0x08, 0xb7, 0xd8, 0x8d, 0x35, 0x62, 0x29, 0x4a, 0x0c, 0x32, 0x6a, 0x44, 0x63, 0x1b, 0x42, 0x10, 0xe6, 0x42, 0x2d, 0x01, 0xa0, 0xff, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10281 = { .name = "ecdsa_secp521r1_sha3_512_10281", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10281_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10281_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10281_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10282 for ECDSA, tcId is 328 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10282_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10282_msg[] = { 0x31, 0x33, 0x30, 0x31, 0x37, 0x32, 0x32, 0x31, 0x30, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10282_sig[] = { 0x00, 0xe0, 0x76, 0xbb, 0x44, 0x55, 0x46, 0x38, 0x45, 0xb3, 0x7d, 0x0e, 0xa6, 0x65, 0x60, 0x17, 0x18, 0x47, 0xd6, 0x60, 0x1d, 0xf0, 0x5b, 0x00, 0xd3, 0xac, 0x29, 0x2d, 0xf7, 0xe3, 0xf3, 0x48, 0xb6, 0xfe, 0xd8, 0x92, 0xca, 0x07, 0xcb, 0x9c, 0x9a, 0x8a, 0x66, 0xfb, 0x1e, 0x33, 0x00, 0x19, 0x06, 0xe6, 0x8e, 0x73, 0xfb, 0x4e, 0xd2, 0x23, 0xf1, 0x69, 0x44, 0x7e, 0x76, 0x31, 0x83, 0xe8, 0xe8, 0xb9, 0x01, 0x8e, 0x69, 0xc3, 0x37, 0xdb, 0x6f, 0x33, 0x01, 0x28, 0xdf, 0xa2, 0x7e, 0x41, 0x3f, 0xa4, 0x66, 0x81, 0x74, 0x15, 0x81, 0x45, 0x29, 0x89, 0xe5, 0x30, 0xb6, 0x86, 0x40, 0x65, 0x81, 0x85, 0x2a, 0x62, 0xf0, 0x28, 0x1a, 0x10, 0xcf, 0xdc, 0xf1, 0x02, 0x87, 0xa5, 0x86, 0x17, 0x55, 0x5e, 0x54, 0x21, 0x6b, 0xe5, 0x91, 0x1f, 0x2e, 0xca, 0x50, 0x85, 0x6b, 0x41, 0x69, 0x87, 0xc1, 0x12, 0xd8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10282 = { .name = "ecdsa_secp521r1_sha3_512_10282", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10282_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10282_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10282_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10283 for ECDSA, tcId is 329 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10283_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10283_msg[] = { 0x35, 0x36, 0x31, 0x37, 0x36, 0x39, 0x31, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10283_sig[] = { 0x01, 0xb5, 0xf5, 0x4a, 0x66, 0x81, 0x22, 0xd7, 0x2e, 0x4c, 0xa9, 0xdb, 0x26, 0xc4, 0x24, 0x6d, 0xfe, 0x4b, 0xd9, 0x92, 0x9f, 0x19, 0x6d, 0x76, 0xda, 0xac, 0xcf, 0x06, 0x58, 0xe7, 0x5c, 0xf3, 0x60, 0xff, 0xba, 0x84, 0xbe, 0x8e, 0xc6, 0xa8, 0xb4, 0x45, 0x49, 0x17, 0xc9, 0x21, 0xb6, 0x8f, 0x1d, 0xb2, 0x02, 0xda, 0x91, 0x52, 0xfa, 0xe1, 0x52, 0xfe, 0xed, 0x4c, 0x79, 0x51, 0x72, 0xf6, 0xe3, 0xdc, 0x01, 0x44, 0xc3, 0x58, 0x0c, 0x1a, 0xc9, 0xa8, 0x02, 0x23, 0xb2, 0xb3, 0xf4, 0xb6, 0x7b, 0xf2, 0x24, 0xee, 0x7c, 0xd2, 0xe2, 0xf9, 0xcc, 0x89, 0x85, 0x7b, 0xcd, 0xfb, 0xaf, 0xd0, 0x56, 0x94, 0x20, 0x8b, 0x87, 0xa1, 0xfa, 0x04, 0x0e, 0x33, 0x21, 0x1e, 0xc9, 0xb8, 0xf5, 0x9d, 0xd6, 0xe8, 0x31, 0x3d, 0x8d, 0x9c, 0x67, 0x29, 0x2f, 0x3f, 0x84, 0x5c, 0xfe, 0xfb, 0x19, 0x79, 0x73, 0xb1, 0xf5, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10283 = { .name = "ecdsa_secp521r1_sha3_512_10283", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10283_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10283_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10283_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10284 for ECDSA, tcId is 330 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10284_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10284_msg[] = { 0x33, 0x35, 0x38, 0x31, 0x39, 0x33, 0x32, 0x35, 0x33, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10284_sig[] = { 0x01, 0x15, 0x23, 0x9e, 0x7d, 0x4e, 0xfe, 0x19, 0x6c, 0x90, 0x16, 0x5c, 0xd1, 0x2f, 0x49, 0x92, 0xc0, 0x3a, 0xc4, 0x79, 0x6a, 0xda, 0xa6, 0xef, 0xe2, 0x82, 0xb9, 0xdc, 0x26, 0x9a, 0x80, 0xa2, 0x7d, 0xfc, 0x09, 0xef, 0xa3, 0xf3, 0x24, 0x7d, 0xd8, 0x23, 0x9d, 0xe2, 0x44, 0x4c, 0x76, 0x78, 0x6b, 0xb3, 0x69, 0x67, 0xbc, 0x6c, 0x86, 0x27, 0x78, 0xe0, 0x08, 0x86, 0x85, 0xc6, 0xcc, 0xdd, 0x05, 0xf9, 0x01, 0xc5, 0x60, 0xb0, 0x7e, 0xe4, 0x5e, 0x91, 0x6d, 0xd9, 0xd0, 0xd7, 0xcd, 0x03, 0xbe, 0x4a, 0xc1, 0x41, 0x83, 0xf1, 0x72, 0x5a, 0x47, 0x57, 0x29, 0x1a, 0xf1, 0x93, 0xa9, 0xcf, 0xa4, 0x4f, 0x0b, 0x97, 0x9e, 0xf2, 0x70, 0x47, 0x91, 0x5a, 0x3c, 0x2d, 0xa5, 0x05, 0xc4, 0x11, 0x49, 0x1d, 0x24, 0x3d, 0xe1, 0x9b, 0x60, 0x4b, 0x1d, 0x7f, 0x61, 0x0d, 0xbf, 0xcf, 0x50, 0xea, 0x79, 0x09, 0x90, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10284 = { .name = "ecdsa_secp521r1_sha3_512_10284", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10284_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10284_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10284_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10285 for ECDSA, tcId is 331 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10285_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10285_msg[] = { 0x31, 0x35, 0x37, 0x31, 0x36, 0x36, 0x37, 0x38, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10285_sig[] = { 0x01, 0x8e, 0xf0, 0x19, 0xe7, 0xf5, 0x4e, 0x64, 0x75, 0x23, 0x2d, 0x25, 0x3a, 0x6a, 0xf6, 0x2a, 0x0a, 0x10, 0x79, 0xfd, 0x74, 0xfa, 0x0f, 0x1c, 0x0c, 0xab, 0x92, 0x1f, 0x09, 0xce, 0x07, 0xd2, 0x2a, 0x80, 0xef, 0x72, 0x35, 0x25, 0x5b, 0xc8, 0xaf, 0x01, 0xd6, 0xf4, 0x87, 0xc2, 0xf4, 0x8a, 0xaa, 0x59, 0x05, 0x25, 0x55, 0xc6, 0x6f, 0xca, 0x89, 0xa3, 0xd3, 0xfd, 0x65, 0xa5, 0xc2, 0x15, 0xd9, 0x53, 0x01, 0xfe, 0x46, 0x7d, 0x44, 0xa3, 0xb5, 0x51, 0x33, 0x28, 0x66, 0x73, 0x41, 0x7d, 0x4d, 0x4f, 0x9f, 0x42, 0xb6, 0xe5, 0xe4, 0x9f, 0xea, 0x25, 0x50, 0xce, 0x98, 0xd1, 0xb4, 0x41, 0xf5, 0x77, 0x11, 0xd8, 0xfe, 0x4e, 0xbe, 0x1f, 0x66, 0x64, 0xa0, 0x23, 0xbd, 0xff, 0x61, 0xf8, 0xab, 0xd7, 0xb2, 0xea, 0xc1, 0x63, 0xdd, 0x1e, 0x66, 0x88, 0x75, 0x05, 0x5b, 0x9a, 0x8d, 0xcc, 0xb8, 0x53, 0x76, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10285 = { .name = "ecdsa_secp521r1_sha3_512_10285", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10285_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10285_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10285_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10286 for ECDSA, tcId is 332 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10286_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10286_msg[] = { 0x33, 0x31, 0x39, 0x39, 0x37, 0x38, 0x33, 0x33, 0x36, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10286_sig[] = { 0x00, 0xaa, 0x9c, 0x6b, 0x87, 0xc3, 0xde, 0x04, 0x1d, 0xeb, 0x72, 0x24, 0x4f, 0xd3, 0xb2, 0x62, 0x8f, 0x31, 0x0d, 0xa4, 0x14, 0x93, 0x09, 0x0a, 0x7c, 0x1b, 0xd9, 0xaf, 0x65, 0x4b, 0x0c, 0xa7, 0x93, 0x17, 0x5e, 0x2e, 0x32, 0xce, 0x62, 0x3d, 0xd7, 0xf8, 0x67, 0x10, 0x85, 0x06, 0x6c, 0xd1, 0xcf, 0x4e, 0x7f, 0xb6, 0x0a, 0x57, 0x37, 0x79, 0xb1, 0x42, 0xa2, 0x07, 0x04, 0xd3, 0x38, 0x31, 0xac, 0x52, 0x01, 0x6b, 0x84, 0xd9, 0xf2, 0x11, 0x50, 0xdc, 0xd4, 0x39, 0x85, 0x9e, 0x71, 0x4f, 0xb2, 0x31, 0x42, 0xef, 0x8a, 0x16, 0x25, 0x9b, 0x52, 0x06, 0x21, 0x15, 0x6f, 0xd0, 0x40, 0x52, 0xcf, 0xd5, 0x02, 0x2b, 0xd3, 0x1f, 0xd0, 0xdc, 0xb4, 0xa1, 0xb0, 0xb7, 0x90, 0xce, 0xe7, 0x45, 0xde, 0x38, 0xf7, 0x4f, 0x3d, 0xab, 0xf4, 0xd6, 0x3c, 0x71, 0xed, 0x21, 0x47, 0xf4, 0x38, 0x51, 0xfa, 0x74, 0x72, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10286 = { .name = "ecdsa_secp521r1_sha3_512_10286", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10286_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10286_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10286_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10287 for ECDSA, tcId is 333 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10287_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10287_msg[] = { 0x37, 0x34, 0x30, 0x34, 0x37, 0x35, 0x30, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10287_sig[] = { 0x01, 0xbf, 0x9a, 0x7c, 0x27, 0xc5, 0x8f, 0x16, 0x3d, 0x27, 0xff, 0x91, 0xa1, 0x00, 0x93, 0xac, 0x5d, 0xaf, 0xa5, 0x25, 0xc3, 0x9a, 0xed, 0x53, 0x0e, 0xec, 0xa9, 0x81, 0xc5, 0x78, 0xdc, 0xc1, 0xee, 0x96, 0x27, 0x32, 0xe7, 0x70, 0x93, 0xae, 0xce, 0xbd, 0xdf, 0x8d, 0x81, 0xda, 0xa9, 0x23, 0x47, 0x79, 0x41, 0x39, 0x69, 0x38, 0xf2, 0x11, 0x81, 0x1d, 0xfc, 0x34, 0xe4, 0xa6, 0xef, 0xf2, 0xed, 0x6c, 0x00, 0xeb, 0x3f, 0x6b, 0x2f, 0x40, 0xf9, 0xce, 0x33, 0xdc, 0x67, 0x9f, 0x17, 0x87, 0xff, 0x6c, 0x00, 0x14, 0x3f, 0x94, 0x6b, 0xfd, 0x2b, 0x6e, 0x10, 0xf3, 0x58, 0xb8, 0x8c, 0xa9, 0x14, 0x6a, 0x41, 0x33, 0xad, 0x43, 0x56, 0xef, 0xe0, 0xbc, 0x18, 0x63, 0xf9, 0xf9, 0x47, 0x5d, 0x58, 0xf9, 0x9f, 0x6a, 0xa8, 0x7f, 0x88, 0xd0, 0xad, 0x23, 0x95, 0x69, 0x9c, 0x09, 0x61, 0x5c, 0x11, 0x2c, 0x12, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10287 = { .name = "ecdsa_secp521r1_sha3_512_10287", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10287_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10287_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10287_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10288 for ECDSA, tcId is 334 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10288_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10288_msg[] = { 0x34, 0x31, 0x37, 0x34, 0x33, 0x36, 0x35, 0x33, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10288_sig[] = { 0x00, 0x37, 0x02, 0xd9, 0xeb, 0x11, 0x4d, 0x84, 0xce, 0x30, 0xb0, 0x36, 0xb0, 0x68, 0xa8, 0x29, 0xe1, 0x68, 0x82, 0xe4, 0xe7, 0x34, 0x60, 0xb1, 0x88, 0x4f, 0xd7, 0x34, 0xc0, 0xa2, 0x38, 0x23, 0x9f, 0xe2, 0xda, 0xbf, 0x1f, 0x62, 0x3e, 0x42, 0x0c, 0x94, 0x97, 0x3d, 0x49, 0x99, 0x87, 0xd4, 0x97, 0xd3, 0x8f, 0x11, 0x57, 0x67, 0xa5, 0x20, 0x51, 0x19, 0x73, 0x5c, 0x71, 0x98, 0xf5, 0xcd, 0x0a, 0xa9, 0x00, 0x4e, 0x72, 0xa8, 0x0c, 0xe8, 0xa9, 0xfc, 0xf3, 0x12, 0xf1, 0xa5, 0x8c, 0x6d, 0x4b, 0xc4, 0x3a, 0x32, 0xd3, 0x08, 0x69, 0xc5, 0xe4, 0xc5, 0xd8, 0x63, 0x0d, 0x54, 0x7c, 0xc2, 0x2c, 0x02, 0xeb, 0x90, 0xef, 0x17, 0xd8, 0xe9, 0xa5, 0x88, 0x35, 0x5b, 0x66, 0x66, 0x34, 0x1f, 0xf7, 0x0a, 0x24, 0x18, 0x9f, 0x9b, 0x6d, 0x04, 0x2f, 0xf4, 0x46, 0x99, 0xf1, 0x8e, 0x77, 0x94, 0xf6, 0x1a, 0xe5, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10288 = { .name = "ecdsa_secp521r1_sha3_512_10288", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10288_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10288_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10288_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10289 for ECDSA, tcId is 335 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10289_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10289_msg[] = { 0x31, 0x32, 0x33, 0x35, 0x36, 0x35, 0x38, 0x38, 0x38, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10289_sig[] = { 0x00, 0xb9, 0x81, 0xf4, 0xcf, 0xbc, 0x9f, 0x8f, 0x71, 0x23, 0xc5, 0xa8, 0x10, 0x98, 0xb1, 0xa2, 0xb2, 0xb5, 0xeb, 0xf4, 0xcb, 0x3e, 0xc3, 0x32, 0xa7, 0x82, 0x17, 0xd0, 0x49, 0x66, 0x9f, 0x51, 0x53, 0x80, 0x26, 0x47, 0xe3, 0xb8, 0x88, 0x19, 0x94, 0x05, 0xe8, 0x4c, 0x57, 0x1c, 0x14, 0x9e, 0x5c, 0x88, 0xeb, 0x20, 0xe8, 0x55, 0xd2, 0xd4, 0x51, 0x1a, 0x73, 0x7b, 0xaf, 0x96, 0x8d, 0x49, 0x8a, 0x60, 0x01, 0xc7, 0x5e, 0x5d, 0xa7, 0xad, 0xc4, 0x73, 0x63, 0xe0, 0xc1, 0x0d, 0x00, 0x97, 0x67, 0x9a, 0xc8, 0x13, 0x56, 0x24, 0x84, 0x4a, 0x54, 0xbf, 0x83, 0x83, 0x48, 0xda, 0x35, 0x06, 0x88, 0xd7, 0x75, 0xa1, 0x71, 0xc4, 0xdf, 0xd7, 0x60, 0xc1, 0x3d, 0xd6, 0x06, 0xfc, 0x98, 0xfc, 0x71, 0xc9, 0x72, 0x1a, 0xe2, 0xba, 0x76, 0x65, 0x8f, 0x9d, 0xae, 0x84, 0xee, 0x32, 0x51, 0x2d, 0x47, 0x4d, 0x4a, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10289 = { .name = "ecdsa_secp521r1_sha3_512_10289", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10289_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10289_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10289_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10290 for ECDSA, tcId is 336 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10290_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10290_msg[] = { 0x32, 0x34, 0x32, 0x39, 0x32, 0x35, 0x35, 0x34, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10290_sig[] = { 0x01, 0x5b, 0xa3, 0xc5, 0xc8, 0xa7, 0xd8, 0x67, 0x75, 0xf6, 0x44, 0x5b, 0xfd, 0x6a, 0xc0, 0x6e, 0x4c, 0x40, 0x32, 0x38, 0x62, 0xa8, 0x75, 0x4b, 0x1b, 0xa0, 0x92, 0xbf, 0x3c, 0xec, 0x10, 0xd2, 0x47, 0xb6, 0xa2, 0xed, 0xc5, 0x99, 0xd9, 0x14, 0xbd, 0x2a, 0x5a, 0xa0, 0x0a, 0xb5, 0xa1, 0x02, 0x0d, 0x48, 0x97, 0xc0, 0x68, 0xe5, 0x69, 0xdc, 0x9f, 0x41, 0x2d, 0xcc, 0xe1, 0xa7, 0x58, 0xca, 0xb2, 0x08, 0x00, 0xba, 0xba, 0x7f, 0x93, 0xce, 0x5c, 0xfb, 0xa1, 0xa2, 0x8e, 0x5e, 0x05, 0x50, 0x9d, 0x95, 0x37, 0x1c, 0xf1, 0x46, 0x6e, 0x34, 0xe8, 0xb8, 0xc6, 0xbe, 0xfa, 0x4b, 0xce, 0x7e, 0x59, 0xe6, 0xa2, 0x25, 0x3b, 0x63, 0xc0, 0xa7, 0xb4, 0x72, 0xa6, 0x1b, 0xd3, 0x76, 0xfd, 0xb0, 0x97, 0x00, 0xed, 0x0f, 0x73, 0x48, 0xe2, 0x18, 0x7c, 0x8f, 0xe4, 0xca, 0x87, 0x64, 0x4f, 0xec, 0xc6, 0xe3, 0xdd, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10290 = { .name = "ecdsa_secp521r1_sha3_512_10290", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10290_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10290_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10290_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10291 for ECDSA, tcId is 337 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10291_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10291_msg[] = { 0x35, 0x31, 0x38, 0x30, 0x33, 0x30, 0x32, 0x35, 0x34, 0x36, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10291_sig[] = { 0x00, 0x4a, 0xd0, 0xd6, 0x74, 0xb3, 0xa9, 0x1a, 0xdc, 0x83, 0x24, 0x99, 0x4b, 0x3b, 0xcf, 0x10, 0x71, 0xa9, 0xb3, 0x9f, 0xf1, 0xf4, 0x93, 0xf2, 0x72, 0x51, 0x86, 0x23, 0xcd, 0x09, 0x02, 0x5b, 0xe1, 0xdc, 0x0d, 0x6c, 0x98, 0x74, 0x12, 0xe3, 0x79, 0x42, 0xc0, 0xad, 0x2d, 0x00, 0x12, 0xc5, 0x1b, 0x8d, 0xec, 0x7b, 0x70, 0x01, 0x68, 0x17, 0x23, 0xb8, 0xa9, 0x2d, 0xaf, 0x91, 0x9f, 0x3a, 0xfb, 0x2a, 0x01, 0x03, 0x9f, 0xe9, 0x51, 0x95, 0x8b, 0x04, 0x4b, 0x84, 0xdb, 0x98, 0x08, 0x53, 0x06, 0x8f, 0x64, 0x5e, 0xe6, 0x88, 0x34, 0xfd, 0xd1, 0xca, 0x90, 0x4b, 0x51, 0x81, 0xbe, 0xa1, 0x5e, 0x57, 0xc1, 0x8a, 0x68, 0x59, 0xd5, 0x6a, 0x4d, 0x12, 0xd8, 0x9a, 0x44, 0x1b, 0x47, 0xa8, 0x39, 0xb6, 0x80, 0xa0, 0xe4, 0xa0, 0x89, 0xfb, 0xac, 0xd1, 0xce, 0x6d, 0x7d, 0x0b, 0x3c, 0xa7, 0xed, 0xfd, 0x05, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10291 = { .name = "ecdsa_secp521r1_sha3_512_10291", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10291_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10291_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10291_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10292 for ECDSA, tcId is 338 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10292_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10292_msg[] = { 0x34, 0x34, 0x37, 0x36, 0x33, 0x39, 0x38, 0x32, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10292_sig[] = { 0x01, 0x11, 0x5c, 0x5b, 0xd7, 0x1b, 0xd8, 0xa1, 0x5c, 0xda, 0xe5, 0x2b, 0x23, 0xda, 0x52, 0x08, 0x01, 0x75, 0x27, 0x9e, 0x49, 0x19, 0x3c, 0x62, 0x98, 0x0e, 0x2d, 0x25, 0x59, 0x84, 0x7a, 0x17, 0x3f, 0xc3, 0x82, 0xe5, 0x0f, 0xc6, 0x3e, 0x1f, 0xd8, 0x0a, 0x8f, 0xc9, 0x27, 0x23, 0x19, 0xbe, 0x5f, 0x97, 0xa2, 0xf8, 0x56, 0x7b, 0xeb, 0xb6, 0x5a, 0xe5, 0xf5, 0xfd, 0xbc, 0x53, 0x90, 0x71, 0xa6, 0x53, 0x00, 0x57, 0xba, 0x29, 0xf8, 0x10, 0x7a, 0x3e, 0x6f, 0x73, 0x7e, 0x98, 0x3a, 0xbb, 0xde, 0xae, 0x23, 0x03, 0x41, 0xb0, 0x6d, 0x6d, 0x86, 0x5d, 0x1c, 0x06, 0x03, 0xc2, 0x3f, 0x31, 0x9e, 0x3f, 0x1c, 0x6b, 0x02, 0xb5, 0x9c, 0xa1, 0xe2, 0x63, 0xfb, 0x31, 0x58, 0xda, 0x29, 0xe7, 0x62, 0x84, 0x6a, 0x02, 0xcd, 0xa6, 0x28, 0xe5, 0x3d, 0x41, 0x25, 0x8f, 0xae, 0x40, 0x36, 0x83, 0x86, 0x3b, 0x06, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10292 = { .name = "ecdsa_secp521r1_sha3_512_10292", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10292_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10292_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10292_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10293 for ECDSA, tcId is 339 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10293_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10293_msg[] = { 0x39, 0x30, 0x36, 0x30, 0x30, 0x33, 0x35, 0x32, 0x31, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10293_sig[] = { 0x01, 0xdd, 0x88, 0x01, 0xb1, 0xed, 0x5f, 0x09, 0x60, 0xec, 0xc3, 0x99, 0xbc, 0x9e, 0x30, 0xd0, 0xfd, 0x83, 0x03, 0x3d, 0x71, 0x28, 0xff, 0xa3, 0x82, 0x66, 0x75, 0x62, 0x5d, 0xba, 0xf3, 0x27, 0xe2, 0x94, 0xea, 0xeb, 0x70, 0x89, 0xb5, 0xe8, 0xa8, 0xc3, 0x07, 0xe6, 0x37, 0xc7, 0x9f, 0x74, 0x9d, 0x93, 0xf9, 0xd8, 0xf8, 0x34, 0xd4, 0x91, 0x3e, 0x31, 0xf2, 0x7d, 0x62, 0x57, 0x11, 0x28, 0x3f, 0x5d, 0x01, 0x1e, 0x63, 0x77, 0xd6, 0xb6, 0x8e, 0x84, 0x8f, 0xf2, 0xa7, 0x15, 0x52, 0xd8, 0x34, 0x78, 0x59, 0x46, 0x85, 0x66, 0xcb, 0x48, 0x96, 0xcf, 0x79, 0xee, 0x5b, 0xcf, 0x91, 0xf7, 0x5e, 0x93, 0x63, 0x7d, 0xee, 0x31, 0x3b, 0x47, 0xe4, 0xf9, 0xe7, 0xc9, 0x4f, 0x88, 0x69, 0xa8, 0x12, 0x38, 0x44, 0x1b, 0x57, 0x39, 0xf0, 0x31, 0xc9, 0xc4, 0xd4, 0xde, 0x5c, 0x79, 0x34, 0x07, 0x17, 0xe3, 0x69, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10293 = { .name = "ecdsa_secp521r1_sha3_512_10293", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10293_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10293_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10293_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10294 for ECDSA, tcId is 340 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10294_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10294_msg[] = { 0x31, 0x37, 0x35, 0x36, 0x30, 0x35, 0x33, 0x30, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10294_sig[] = { 0x01, 0x97, 0xed, 0xd5, 0x50, 0xc5, 0x8d, 0x5b, 0x33, 0x31, 0xfe, 0xbe, 0x15, 0xb9, 0xec, 0x78, 0xf4, 0xf4, 0xd2, 0xcc, 0xf9, 0xcb, 0xa4, 0x62, 0xf3, 0x41, 0xf0, 0xf8, 0xe7, 0x3e, 0x83, 0x72, 0xaa, 0x6a, 0x3d, 0x8d, 0x2d, 0xb1, 0x7f, 0x2f, 0xf3, 0x31, 0x15, 0x75, 0x41, 0x60, 0x27, 0x77, 0x01, 0x29, 0x8d, 0xb5, 0x43, 0x57, 0x55, 0x60, 0xd8, 0xb1, 0x1d, 0xe1, 0x48, 0x36, 0xab, 0x04, 0x3f, 0x6a, 0x00, 0x7a, 0x5e, 0x17, 0x49, 0xaa, 0x35, 0xb0, 0x7a, 0xb0, 0xce, 0x97, 0xd9, 0x09, 0x8f, 0x3c, 0x89, 0xb1, 0xa6, 0x99, 0x19, 0xf8, 0xac, 0x75, 0x13, 0x99, 0x11, 0x69, 0xc0, 0x7e, 0xce, 0x47, 0xb7, 0xe3, 0x83, 0xcd, 0xa5, 0x03, 0xa5, 0xb0, 0x04, 0xf1, 0xc6, 0xca, 0x85, 0xb0, 0xa2, 0xc1, 0x34, 0xd5, 0x2c, 0x96, 0x49, 0x88, 0xcd, 0x6b, 0x19, 0x82, 0x1f, 0xae, 0xfa, 0x35, 0xf1, 0xfc, 0xc3, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10294 = { .name = "ecdsa_secp521r1_sha3_512_10294", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10294_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10294_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10294_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10295 for ECDSA, tcId is 341 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10295_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10295_msg[] = { 0x34, 0x39, 0x38, 0x30, 0x38, 0x36, 0x30, 0x30, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha3_512_10295_sig[] = { 0x01, 0xad, 0xa2, 0x46, 0x26, 0x70, 0x6c, 0x0d, 0xd8, 0x96, 0x2d, 0xb4, 0xd7, 0x45, 0x49, 0x40, 0x68, 0x50, 0x6d, 0x39, 0xa4, 0xae, 0x64, 0x13, 0xe9, 0x80, 0xf0, 0x2d, 0x3c, 0x0a, 0xa1, 0xd6, 0x6d, 0xc8, 0x34, 0x5a, 0x76, 0x7a, 0xfa, 0x1b, 0x9c, 0xbc, 0x0b, 0xc6, 0xd9, 0xf6, 0xef, 0xa2, 0x15, 0xd4, 0xa2, 0x2f, 0x7b, 0x1b, 0x80, 0x94, 0xbf, 0x83, 0x52, 0x62, 0x82, 0x8a, 0x39, 0xc2, 0x26, 0xd2, 0x01, 0xbc, 0xb2, 0xcc, 0x55, 0x47, 0x65, 0xdf, 0x59, 0x06, 0x7a, 0x24, 0x08, 0x1f, 0x6a, 0x29, 0x82, 0xc3, 0x7b, 0x89, 0x02, 0x5b, 0x80, 0xf2, 0x02, 0x55, 0x42, 0x1b, 0x5b, 0xd6, 0x8b, 0x0e, 0x1d, 0xa5, 0xb6, 0x04, 0x46, 0x64, 0x0a, 0x58, 0xe2, 0x70, 0xf7, 0x34, 0x9a, 0x9a, 0x48, 0x68, 0x1d, 0x49, 0x03, 0x07, 0xce, 0xdf, 0x65, 0x9d, 0xcb, 0x09, 0xcb, 0x89, 0x62, 0x83, 0x01, 0x87, 0xfd, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10295 = { .name = "ecdsa_secp521r1_sha3_512_10295", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10295_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10295_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10295_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10296 for ECDSA, tcId is 342 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10296_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10296_msg[] = { 0x33, 0x36, 0x32, 0x31, 0x38, 0x37, 0x35, 0x33, 0x33, 0x35, }; static const unsigned char ecdsa_secp521r1_sha3_512_10296_sig[] = { 0x00, 0xa5, 0xb4, 0xff, 0xa6, 0x1d, 0x97, 0x71, 0x3f, 0x95, 0x12, 0x81, 0x3f, 0xfb, 0x68, 0x90, 0x1d, 0x21, 0x6e, 0xb6, 0x49, 0x16, 0x77, 0x80, 0xef, 0x6f, 0xc7, 0xb0, 0xda, 0xb6, 0x26, 0xb8, 0xa6, 0xbe, 0xda, 0x7b, 0x0a, 0xf3, 0xac, 0xe0, 0x7c, 0x42, 0x81, 0xeb, 0xc6, 0xdc, 0x9d, 0xb4, 0xe1, 0x4a, 0x1c, 0xe2, 0xef, 0x06, 0x16, 0xd5, 0x99, 0xf8, 0xa3, 0xe2, 0x26, 0xba, 0x81, 0xb7, 0xad, 0xee, 0x00, 0xb2, 0xd7, 0xce, 0xb2, 0x1c, 0xe8, 0xc7, 0x2b, 0x4a, 0x49, 0x51, 0x10, 0x4c, 0x93, 0xdf, 0x65, 0xea, 0x8f, 0xe5, 0x17, 0x6f, 0x8b, 0x3e, 0x6d, 0xc6, 0x06, 0x3b, 0xe1, 0xfc, 0x00, 0x5f, 0x59, 0x09, 0x8b, 0x0f, 0xbc, 0x79, 0x0e, 0x34, 0x39, 0x8b, 0x2a, 0x52, 0x89, 0xa5, 0xc5, 0xe1, 0x48, 0x7d, 0x84, 0x34, 0xe8, 0xaf, 0x0a, 0xc9, 0xbe, 0x54, 0x77, 0xd7, 0xf5, 0x71, 0xf5, 0xb0, 0xaf, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10296 = { .name = "ecdsa_secp521r1_sha3_512_10296", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10296_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10296_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10296_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10297 for ECDSA, tcId is 343 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10297_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10297_msg[] = { 0x36, 0x36, 0x34, 0x33, 0x33, 0x33, 0x34, 0x37, 0x32, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10297_sig[] = { 0x01, 0x07, 0xd3, 0x19, 0x83, 0x1d, 0xa7, 0xf2, 0x53, 0xb0, 0x44, 0xe2, 0x29, 0xa5, 0x8e, 0xf5, 0xeb, 0x2d, 0x70, 0x29, 0x38, 0x2b, 0xea, 0x1a, 0x4d, 0xb8, 0x09, 0x56, 0x73, 0xe0, 0x72, 0x46, 0x6e, 0x4d, 0x69, 0x69, 0x31, 0x23, 0xff, 0xc0, 0x6b, 0xac, 0x6f, 0x62, 0x66, 0x12, 0xcf, 0xe7, 0x60, 0xe5, 0x3d, 0xff, 0xce, 0x3f, 0x64, 0x3f, 0xff, 0x7c, 0xd8, 0x5e, 0xb3, 0xaa, 0x2d, 0x6d, 0x17, 0x05, 0x01, 0x2b, 0x0a, 0xcd, 0xc6, 0xb8, 0x44, 0x89, 0xe6, 0x83, 0x2f, 0xfb, 0x25, 0xd3, 0xc9, 0x80, 0xb4, 0x09, 0x22, 0x95, 0x9e, 0x83, 0xe8, 0x1b, 0x7f, 0x39, 0x98, 0x01, 0x5a, 0x68, 0x84, 0xa7, 0xd2, 0x6f, 0xe2, 0x11, 0x10, 0x8a, 0xb0, 0x50, 0xaf, 0xfd, 0xfc, 0x68, 0x9f, 0x4e, 0x82, 0xbf, 0x98, 0xae, 0x77, 0x7d, 0x24, 0x20, 0x30, 0x61, 0x9f, 0xbb, 0xc3, 0x83, 0x44, 0x33, 0x6c, 0xef, 0xf3, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10297 = { .name = "ecdsa_secp521r1_sha3_512_10297", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10297_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10297_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10297_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10298 for ECDSA, tcId is 344 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10298_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10298_msg[] = { 0x34, 0x34, 0x35, 0x34, 0x39, 0x34, 0x32, 0x37, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10298_sig[] = { 0x00, 0xd2, 0x96, 0x05, 0x6a, 0x99, 0x2d, 0xa1, 0xd9, 0x12, 0xdf, 0xaf, 0x56, 0x4e, 0x49, 0xa4, 0xff, 0x33, 0x94, 0x6a, 0xde, 0xe3, 0x20, 0x92, 0x6f, 0x60, 0x67, 0x30, 0xdd, 0x42, 0x55, 0xdf, 0xa9, 0x41, 0xc1, 0xbc, 0x38, 0x05, 0x90, 0x99, 0x32, 0x05, 0x25, 0xa8, 0x7e, 0x28, 0x38, 0x59, 0xd0, 0xba, 0x99, 0x47, 0x2a, 0x8f, 0x59, 0xdc, 0x4f, 0x3d, 0x8d, 0x43, 0x07, 0xe5, 0x67, 0xc3, 0xe9, 0x14, 0x00, 0xcf, 0x38, 0xb5, 0xc7, 0x6a, 0xa9, 0x9b, 0x88, 0x18, 0xf7, 0x72, 0x8b, 0xe5, 0x18, 0xb5, 0x15, 0x9b, 0xa1, 0xb8, 0xe1, 0x03, 0x7b, 0x35, 0x9f, 0xbf, 0xd3, 0x3b, 0x2a, 0x2d, 0xa3, 0xfc, 0x86, 0xe4, 0xb9, 0x60, 0x04, 0x27, 0xf1, 0xa6, 0x22, 0xbc, 0xd8, 0xef, 0x9d, 0xc3, 0xfc, 0x91, 0x6a, 0xaa, 0x8d, 0x81, 0xb2, 0x88, 0xae, 0x42, 0x49, 0x6e, 0x01, 0x55, 0xd5, 0x23, 0x47, 0xd8, 0xad, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10298 = { .name = "ecdsa_secp521r1_sha3_512_10298", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10298_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10298_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10298_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10299 for ECDSA, tcId is 345 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10299_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10299_msg[] = { 0x32, 0x30, 0x31, 0x38, 0x34, 0x34, 0x30, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10299_sig[] = { 0x00, 0xce, 0x54, 0x6b, 0x84, 0xfd, 0x4e, 0xd2, 0xca, 0x5c, 0xc4, 0x12, 0xda, 0x1b, 0x22, 0xab, 0x12, 0xa9, 0xa6, 0xf0, 0xcd, 0x26, 0x11, 0x9e, 0x94, 0x00, 0xa7, 0x14, 0x37, 0xa2, 0x55, 0x1d, 0x94, 0x86, 0x27, 0xf2, 0x53, 0xe8, 0xd8, 0x05, 0xa4, 0x3c, 0x1b, 0x53, 0xf4, 0xe4, 0x9d, 0x4a, 0xc8, 0x87, 0x67, 0xaa, 0x20, 0xca, 0xe1, 0x6e, 0x48, 0x24, 0x23, 0x3f, 0xf8, 0xf8, 0xdf, 0xbf, 0xb5, 0xa7, 0x01, 0x5f, 0xc6, 0x80, 0x20, 0xd9, 0xc7, 0x1f, 0x96, 0x0d, 0x62, 0x53, 0xef, 0xf0, 0xa1, 0x88, 0xb4, 0xf0, 0x1c, 0xc0, 0x75, 0x88, 0x3e, 0x8a, 0x52, 0x98, 0x39, 0xb7, 0x7a, 0xc8, 0x9a, 0x66, 0x98, 0x14, 0x05, 0x37, 0x27, 0x8b, 0x03, 0x73, 0x29, 0x2c, 0x30, 0x0e, 0xbd, 0x48, 0xa2, 0x76, 0xd5, 0xd4, 0x0a, 0x7e, 0xc5, 0x72, 0xa3, 0x97, 0xe8, 0x56, 0xba, 0xd0, 0xb8, 0xb6, 0xbc, 0x3f, 0xc4, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10299 = { .name = "ecdsa_secp521r1_sha3_512_10299", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10299_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10299_msg, .msglen = 8, .sig = ecdsa_secp521r1_sha3_512_10299_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10300 for ECDSA, tcId is 346 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10300_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10300_msg[] = { 0x35, 0x38, 0x31, 0x33, 0x32, 0x31, 0x37, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10300_sig[] = { 0x00, 0x79, 0xc8, 0x51, 0x4c, 0x8c, 0xdb, 0xd8, 0xad, 0x3a, 0xf8, 0xd8, 0x9b, 0x46, 0x69, 0x47, 0x45, 0x28, 0x2b, 0x8d, 0x7b, 0x26, 0xea, 0x4d, 0xed, 0xdd, 0x77, 0x8e, 0xa9, 0xce, 0x80, 0x79, 0xe0, 0xcb, 0xbe, 0x2c, 0xe6, 0x89, 0x1a, 0x13, 0x8f, 0x02, 0x30, 0x53, 0xca, 0xd1, 0xf2, 0xd5, 0x9a, 0x8f, 0xe5, 0xdc, 0x01, 0x11, 0xc0, 0xa5, 0x09, 0x1b, 0x23, 0x9d, 0x00, 0xf0, 0x2b, 0xb9, 0x7f, 0xd6, 0x00, 0xdf, 0x02, 0x70, 0x0e, 0xdc, 0xa6, 0x8b, 0xb6, 0x91, 0x7e, 0xc7, 0x5b, 0x0e, 0xc1, 0x06, 0xff, 0x89, 0xa4, 0xc0, 0xc7, 0x49, 0x89, 0xb0, 0x58, 0xe1, 0x47, 0xcd, 0x23, 0xae, 0xf9, 0xe5, 0x41, 0xb9, 0x51, 0xcf, 0x4f, 0xcc, 0xf7, 0x0c, 0x11, 0x04, 0x58, 0xe7, 0xc1, 0xc0, 0x4a, 0xdb, 0x7f, 0x08, 0x2d, 0x31, 0x70, 0x69, 0x8f, 0xc1, 0x96, 0x26, 0x68, 0xff, 0x6e, 0x27, 0x7f, 0x3f, 0x36, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10300 = { .name = "ecdsa_secp521r1_sha3_512_10300", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10300_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10300_msg, .msglen = 8, .sig = ecdsa_secp521r1_sha3_512_10300_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10301 for ECDSA, tcId is 347 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10301_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10301_msg[] = { 0x31, 0x31, 0x38, 0x33, 0x38, 0x36, 0x31, 0x38, 0x31, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10301_sig[] = { 0x01, 0x9e, 0x55, 0x2f, 0xc9, 0xbd, 0xc4, 0xdd, 0x34, 0xf3, 0xa8, 0xc9, 0x02, 0xf8, 0x46, 0x68, 0xbe, 0x06, 0x71, 0x37, 0xfb, 0x01, 0x3a, 0x49, 0x11, 0xa4, 0xee, 0x72, 0xdd, 0xe4, 0x29, 0x18, 0x50, 0xfa, 0x3d, 0x82, 0xcd, 0x84, 0x1e, 0x3c, 0xab, 0xdd, 0xcf, 0x9a, 0x11, 0x4f, 0xcf, 0x3e, 0xac, 0x5b, 0x3d, 0xbc, 0xe7, 0x4a, 0x1a, 0x23, 0x47, 0x4b, 0x36, 0x0f, 0xd0, 0xf6, 0x5e, 0x7c, 0x28, 0xff, 0x00, 0xf8, 0xfb, 0x22, 0x89, 0xcc, 0x3b, 0x66, 0x12, 0x9a, 0xb6, 0xce, 0xc2, 0xde, 0xcf, 0x94, 0x31, 0xee, 0x78, 0x1b, 0x92, 0x0e, 0x2c, 0x3c, 0x58, 0x89, 0x7e, 0xa1, 0x79, 0x78, 0x27, 0xb1, 0xdc, 0x4e, 0x01, 0x41, 0xbd, 0xb2, 0x23, 0xeb, 0xd5, 0xdb, 0xa0, 0x0b, 0xf6, 0x03, 0xaa, 0xf6, 0xfb, 0x5b, 0x7e, 0xa8, 0xcb, 0x36, 0x79, 0x8e, 0x97, 0xc4, 0xbf, 0x74, 0x8c, 0xde, 0x9e, 0xc7, 0x09, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10301 = { .name = "ecdsa_secp521r1_sha3_512_10301", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10301_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10301_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10301_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10302 for ECDSA, tcId is 348 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10302_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10302_msg[] = { 0x31, 0x39, 0x32, 0x32, 0x36, 0x30, 0x32, 0x39, 0x30, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10302_sig[] = { 0x01, 0x1e, 0x97, 0xa7, 0x58, 0xb8, 0x09, 0x59, 0x7a, 0xab, 0xa4, 0x32, 0x32, 0x4a, 0x36, 0x1d, 0x82, 0x3c, 0x6e, 0x07, 0x69, 0x90, 0x3d, 0xb9, 0x02, 0x9c, 0x99, 0x61, 0x04, 0xec, 0xbc, 0x56, 0xdc, 0x59, 0x44, 0xd6, 0x04, 0xdc, 0xb9, 0xf9, 0x9c, 0x24, 0xed, 0xfa, 0x04, 0x2a, 0x49, 0xce, 0x8f, 0x5c, 0xfb, 0x16, 0x3e, 0xd1, 0x77, 0xc5, 0x74, 0xa6, 0xca, 0x28, 0x98, 0x80, 0x17, 0x4f, 0xa9, 0xb6, 0x01, 0x3e, 0xa7, 0xdb, 0xb8, 0x04, 0x0c, 0x05, 0xf7, 0x61, 0xe0, 0x0a, 0xba, 0xef, 0xd2, 0xea, 0x10, 0xae, 0x0e, 0x99, 0x86, 0x53, 0xf7, 0x77, 0x79, 0x41, 0x8c, 0x41, 0xb3, 0xbf, 0x58, 0xd6, 0xd3, 0x32, 0x6d, 0x96, 0x3e, 0x14, 0x79, 0x7c, 0x00, 0x2a, 0x26, 0x51, 0xc4, 0x4c, 0x8e, 0x57, 0x8a, 0xba, 0x9b, 0x22, 0x0a, 0xf4, 0x27, 0xa0, 0x33, 0xa3, 0xb4, 0x72, 0x81, 0x65, 0x3f, 0xa9, 0x53, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10302 = { .name = "ecdsa_secp521r1_sha3_512_10302", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10302_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10302_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10302_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10303 for ECDSA, tcId is 349 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10303_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10303_msg[] = { 0x39, 0x37, 0x35, 0x31, 0x34, 0x33, 0x32, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha3_512_10303_sig[] = { 0x01, 0x67, 0xbe, 0x32, 0x9c, 0x69, 0x77, 0x5e, 0x5b, 0x99, 0x53, 0xeb, 0x6b, 0x1f, 0xcf, 0xb5, 0xc7, 0xfe, 0x26, 0x67, 0x18, 0x69, 0x2e, 0x23, 0x19, 0xc8, 0x1b, 0xdc, 0x03, 0x69, 0x9d, 0x49, 0x77, 0x1d, 0x44, 0x07, 0x02, 0x34, 0x96, 0x07, 0x0d, 0xfc, 0x19, 0xd9, 0xb7, 0x66, 0x97, 0x24, 0x29, 0xbe, 0x14, 0x21, 0xb7, 0x01, 0xb2, 0x57, 0x9a, 0x77, 0x3e, 0x0f, 0xbf, 0xac, 0xa5, 0x95, 0x88, 0x65, 0x01, 0x22, 0xb7, 0x28, 0x30, 0x99, 0x96, 0xf3, 0x6b, 0x23, 0x00, 0xd9, 0x7e, 0xe1, 0x21, 0x4b, 0xfa, 0xee, 0xeb, 0xd9, 0x54, 0xe2, 0x5a, 0xca, 0x3a, 0xca, 0x2b, 0x98, 0x5f, 0xaa, 0xe6, 0xa7, 0x9f, 0x0b, 0x5d, 0xed, 0x50, 0x86, 0x64, 0x68, 0x16, 0x09, 0x54, 0x66, 0x3c, 0x9a, 0x7a, 0xfb, 0x4a, 0x8a, 0x8c, 0x32, 0x74, 0x58, 0x49, 0x15, 0x54, 0xd5, 0x11, 0xb8, 0x1b, 0x8c, 0x9e, 0x11, 0x3d, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10303 = { .name = "ecdsa_secp521r1_sha3_512_10303", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10303_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10303_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10303_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10304 for ECDSA, tcId is 350 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10304_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10304_msg[] = { 0x38, 0x33, 0x31, 0x35, 0x31, 0x31, 0x36, 0x33, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha3_512_10304_sig[] = { 0x01, 0xba, 0x35, 0x1c, 0x69, 0xea, 0xd8, 0x37, 0xff, 0xb4, 0x8d, 0x95, 0x8d, 0x5f, 0x44, 0xc4, 0xc0, 0x54, 0xf6, 0x7c, 0xf7, 0x9a, 0x4d, 0xd5, 0x5d, 0xe3, 0x3f, 0xcf, 0x81, 0xc6, 0x1b, 0x4a, 0xeb, 0xf2, 0xf9, 0xa0, 0xaa, 0x3e, 0xf3, 0xc5, 0x1b, 0x5d, 0xb4, 0x2b, 0x25, 0xea, 0x22, 0x13, 0x72, 0xcb, 0xd2, 0xa9, 0x56, 0x38, 0x27, 0x4f, 0xa3, 0x77, 0xde, 0x06, 0xcd, 0xaf, 0xd7, 0xba, 0x86, 0xc1, 0x01, 0x3b, 0xa8, 0x5a, 0x13, 0x43, 0xe4, 0x16, 0x77, 0xf9, 0x7b, 0x20, 0x20, 0x23, 0x3c, 0xa4, 0x19, 0x66, 0x01, 0x63, 0x18, 0x83, 0x45, 0xcd, 0x8b, 0xaf, 0xfb, 0xb3, 0x96, 0x29, 0x86, 0x82, 0x37, 0xb7, 0xc7, 0xcb, 0x29, 0x7d, 0x4c, 0xa6, 0x15, 0x0f, 0xe6, 0x52, 0x13, 0x9a, 0xf3, 0x4d, 0xd7, 0x33, 0xca, 0x20, 0x27, 0x6d, 0x26, 0x89, 0x5a, 0xf1, 0xf1, 0x47, 0x6d, 0xe2, 0xe5, 0x04, 0xc6, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10304 = { .name = "ecdsa_secp521r1_sha3_512_10304", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10304_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10304_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10304_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10305 for ECDSA, tcId is 351 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10305_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10305_msg[] = { 0x33, 0x32, 0x36, 0x33, 0x31, 0x36, 0x38, 0x31, 0x32, }; static const unsigned char ecdsa_secp521r1_sha3_512_10305_sig[] = { 0x00, 0xd4, 0x44, 0x15, 0x0b, 0x1b, 0xdb, 0x12, 0xf9, 0xb4, 0x0a, 0x9b, 0x4b, 0x73, 0x68, 0xd3, 0xf0, 0x83, 0xbb, 0xa9, 0x8d, 0xd5, 0xd5, 0x80, 0xe4, 0xdf, 0x87, 0x67, 0x15, 0x9b, 0x14, 0x4f, 0x1e, 0x3b, 0x08, 0x25, 0xe8, 0x0b, 0x8c, 0x2b, 0xca, 0xc4, 0xcd, 0x35, 0xb8, 0x69, 0x2c, 0x31, 0xdc, 0x00, 0x1f, 0x1b, 0xd6, 0x3c, 0x76, 0x3e, 0x47, 0x91, 0xd9, 0x5d, 0x8b, 0xb6, 0x41, 0x00, 0x3b, 0x5d, 0x00, 0xfc, 0x06, 0xf2, 0x6a, 0x73, 0x57, 0xb6, 0x75, 0xb3, 0x9c, 0x56, 0x6a, 0x9c, 0xb3, 0x0a, 0x99, 0x05, 0x37, 0x21, 0xfb, 0xbd, 0x48, 0xbc, 0xbc, 0xeb, 0xd4, 0x63, 0xe8, 0x57, 0x32, 0x7b, 0x81, 0x32, 0x84, 0x2b, 0xf5, 0x5a, 0x22, 0xb7, 0x6d, 0x48, 0x48, 0xaf, 0xc2, 0x53, 0x5d, 0x47, 0x3c, 0x89, 0x93, 0xe4, 0x9a, 0xa2, 0xbf, 0xda, 0xc2, 0x34, 0x45, 0x54, 0xc4, 0xeb, 0x0d, 0xf0, 0xc9, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10305 = { .name = "ecdsa_secp521r1_sha3_512_10305", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10305_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10305_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha3_512_10305_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10306 for ECDSA, tcId is 352 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10306_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10306_msg[] = { 0x34, 0x30, 0x32, 0x39, 0x36, 0x38, 0x37, 0x31, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha3_512_10306_sig[] = { 0x00, 0xe0, 0x6e, 0x11, 0x0f, 0x7d, 0xb2, 0x36, 0x7e, 0x99, 0x27, 0x56, 0x88, 0x38, 0xeb, 0xc5, 0x98, 0x2e, 0x90, 0xd5, 0xaa, 0x09, 0xc4, 0x42, 0xe2, 0xc1, 0x07, 0x30, 0x27, 0xfe, 0x62, 0x37, 0x23, 0x06, 0x25, 0xbb, 0xca, 0x24, 0x95, 0xa7, 0x65, 0xfa, 0xc5, 0xb3, 0x5e, 0xd0, 0xf1, 0xda, 0x59, 0xb7, 0x0a, 0xb9, 0xaf, 0x36, 0x66, 0x97, 0x61, 0x8c, 0x11, 0x2e, 0xc3, 0x8c, 0xd8, 0x54, 0x61, 0x30, 0x00, 0xb1, 0xaf, 0xea, 0x64, 0xf3, 0x61, 0x29, 0x03, 0xbc, 0x3d, 0xcd, 0xcb, 0xa4, 0xa2, 0x13, 0x77, 0x45, 0xb1, 0x68, 0xe8, 0xdb, 0x23, 0x0f, 0xb4, 0xa5, 0x02, 0x7c, 0x99, 0xda, 0xca, 0x6d, 0xfb, 0x8b, 0x6e, 0x40, 0x10, 0x4f, 0x82, 0xbf, 0xad, 0x53, 0x6a, 0x5f, 0x85, 0xc9, 0xb4, 0x3f, 0x6b, 0x9f, 0xc8, 0xf4, 0xdd, 0x7f, 0x11, 0x19, 0xa5, 0xeb, 0x7b, 0x28, 0x34, 0xbb, 0x24, 0xcf, 0xd8, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10306 = { .name = "ecdsa_secp521r1_sha3_512_10306", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10306_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10306_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10306_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10307 for ECDSA, tcId is 353 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10307_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10307_msg[] = { 0x36, 0x33, 0x32, 0x30, 0x38, 0x38, 0x31, 0x31, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10307_sig[] = { 0x00, 0x77, 0xbe, 0xd8, 0x6b, 0xa5, 0x72, 0x9d, 0x86, 0x78, 0x76, 0xdd, 0x8f, 0x2d, 0xe6, 0xe6, 0xc9, 0xbe, 0xe5, 0x84, 0x50, 0x5b, 0x5d, 0x47, 0x1c, 0xcd, 0x0a, 0x9a, 0x54, 0x65, 0x8a, 0x7d, 0xbd, 0x88, 0xe6, 0xaf, 0xa9, 0x38, 0xda, 0x50, 0xcf, 0x7e, 0x7a, 0xfa, 0xc1, 0xe0, 0x67, 0x58, 0xeb, 0x0f, 0x99, 0x9e, 0xfa, 0x46, 0xd4, 0x39, 0xbe, 0xa7, 0x6d, 0xab, 0xe0, 0xb0, 0x8f, 0xd0, 0x4a, 0x5b, 0x00, 0xd6, 0x7c, 0x25, 0xf1, 0xec, 0xe4, 0x20, 0xb6, 0x0e, 0xb9, 0xa6, 0x0f, 0xd9, 0x59, 0x0f, 0x84, 0xd8, 0x7a, 0xf3, 0x7d, 0xb4, 0xa3, 0x9a, 0x20, 0xa6, 0xdc, 0xc9, 0x6a, 0xab, 0xc9, 0x2a, 0xa8, 0x19, 0x7d, 0x83, 0x6e, 0x2c, 0xcd, 0x20, 0xe2, 0x73, 0x96, 0x74, 0xf5, 0xf7, 0x92, 0x25, 0x85, 0x93, 0xc6, 0x00, 0x9f, 0xb0, 0x2d, 0x3e, 0x5e, 0x34, 0x8b, 0xa2, 0x73, 0x00, 0xb5, 0xd3, 0x72, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10307 = { .name = "ecdsa_secp521r1_sha3_512_10307", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10307_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10307_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10307_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10308 for ECDSA, tcId is 354 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10308_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10308_msg[] = { 0x35, 0x32, 0x32, 0x35, 0x33, 0x39, 0x30, 0x37, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10308_sig[] = { 0x01, 0xa7, 0x79, 0x6c, 0x91, 0x3a, 0xe8, 0xf4, 0x3b, 0xa7, 0x0a, 0x5a, 0x40, 0x5d, 0x3e, 0xd8, 0x7a, 0xae, 0x14, 0x4b, 0x62, 0xad, 0x26, 0x1f, 0x70, 0x74, 0xa2, 0x28, 0xb4, 0x40, 0xb0, 0x73, 0x75, 0xce, 0x41, 0xd5, 0xa7, 0x46, 0xcd, 0x29, 0x6e, 0x12, 0x32, 0xf1, 0x85, 0xc3, 0xbe, 0x9d, 0xc8, 0xf2, 0x75, 0xcc, 0x38, 0x67, 0xea, 0xe1, 0xe8, 0x00, 0x08, 0xa8, 0x80, 0xe5, 0x58, 0x1b, 0x8b, 0x3b, 0x00, 0x4c, 0x6d, 0x7b, 0xb9, 0x4e, 0xdf, 0xf7, 0x6c, 0xfa, 0x8a, 0x11, 0x59, 0x9a, 0x86, 0x78, 0x3a, 0xb6, 0x33, 0x04, 0x15, 0x1f, 0xfe, 0x49, 0x98, 0x5b, 0x1c, 0x3c, 0x39, 0xb3, 0x6d, 0x03, 0x45, 0x1d, 0xa0, 0x72, 0x6f, 0xf2, 0x8b, 0xe2, 0x56, 0x7e, 0xd4, 0xcb, 0xdc, 0xab, 0x9b, 0x56, 0x97, 0xd4, 0xe6, 0x85, 0x1a, 0x62, 0x47, 0x90, 0xb3, 0xac, 0x64, 0x10, 0xb0, 0xf8, 0x95, 0x33, 0x9c, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10308 = { .name = "ecdsa_secp521r1_sha3_512_10308", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10308_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10308_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10308_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10309 for ECDSA, tcId is 355 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10309_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10309_msg[] = { 0x31, 0x33, 0x34, 0x39, 0x33, 0x39, 0x33, 0x36, 0x39, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10309_sig[] = { 0x00, 0xad, 0xbb, 0x39, 0x74, 0xf6, 0x57, 0xca, 0x2e, 0x8e, 0x09, 0x9d, 0x89, 0x88, 0x17, 0xc6, 0x29, 0x59, 0x73, 0x3b, 0x88, 0x08, 0xb7, 0x12, 0x5f, 0x87, 0x2d, 0xc1, 0x94, 0x2b, 0xf6, 0x3e, 0x50, 0xcf, 0xfe, 0xd2, 0xd5, 0x98, 0xd7, 0x0a, 0x9b, 0x59, 0x13, 0x1d, 0xa7, 0x9c, 0x55, 0xb0, 0x73, 0xd4, 0x97, 0x86, 0x72, 0x47, 0x01, 0xe6, 0x81, 0x0d, 0xc5, 0x40, 0xe2, 0xf6, 0x76, 0x06, 0x10, 0xc0, 0x00, 0x4e, 0xd5, 0x13, 0x99, 0x09, 0x98, 0x9c, 0x18, 0x60, 0x8a, 0x2d, 0xc0, 0x5a, 0x98, 0x4b, 0x32, 0x8a, 0xe8, 0xf9, 0x2d, 0x0b, 0xae, 0xf2, 0x70, 0xae, 0x15, 0xb7, 0xf9, 0x7e, 0x9e, 0x2d, 0xf7, 0x80, 0x58, 0x4d, 0x08, 0xca, 0x28, 0x5d, 0xf3, 0x93, 0x52, 0xb9, 0x63, 0x1c, 0xf8, 0xe1, 0x86, 0x6c, 0x42, 0xf1, 0xb4, 0xc4, 0xc0, 0xa6, 0x7c, 0xf4, 0xce, 0x7d, 0x10, 0x1a, 0x42, 0x3a, 0x21, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10309 = { .name = "ecdsa_secp521r1_sha3_512_10309", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10309_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10309_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha3_512_10309_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 355 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10310 for ECDSA, tcId is 356 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10310_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10310_msg[] = { 0x31, 0x30, 0x33, 0x39, 0x37, 0x39, 0x36, 0x30, 0x37, 0x36, 0x31, }; static const unsigned char ecdsa_secp521r1_sha3_512_10310_sig[] = { 0x00, 0x2e, 0x53, 0x7b, 0x14, 0xae, 0x1f, 0x1d, 0xbe, 0xec, 0xb0, 0xca, 0xe0, 0x36, 0xb2, 0xcf, 0xd9, 0x21, 0xd7, 0x81, 0x74, 0xa0, 0x20, 0xbe, 0x40, 0xd0, 0x7f, 0x29, 0x47, 0x81, 0x94, 0xf8, 0x32, 0xb8, 0xaf, 0x39, 0x15, 0xa5, 0xbe, 0x2e, 0x67, 0xfe, 0x54, 0x40, 0x40, 0x66, 0xbc, 0x43, 0x4e, 0x0b, 0x46, 0x36, 0xbe, 0x86, 0xce, 0xd8, 0x6d, 0xb2, 0x31, 0x5f, 0x2e, 0xa5, 0xf6, 0x4f, 0x15, 0xb5, 0x00, 0x42, 0xbd, 0xe3, 0x4b, 0x1f, 0x60, 0x8f, 0x3f, 0xcd, 0x9d, 0xa3, 0x04, 0x81, 0xf8, 0xed, 0xc8, 0x63, 0xfd, 0xe2, 0x4f, 0xa1, 0xf6, 0x79, 0x83, 0x3e, 0x9f, 0xd3, 0x52, 0x81, 0xcf, 0x78, 0xac, 0x42, 0xc7, 0xf1, 0x33, 0x39, 0xa9, 0xb7, 0x98, 0xec, 0xe9, 0x54, 0xa3, 0x49, 0xb8, 0x42, 0x06, 0xfd, 0xf8, 0x11, 0x09, 0x82, 0x90, 0xde, 0xe9, 0x04, 0xc1, 0xbd, 0x70, 0x42, 0x15, 0xc0, 0xb1, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10310 = { .name = "ecdsa_secp521r1_sha3_512_10310", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10310_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10310_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha3_512_10310_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 356 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10311 for ECDSA, tcId is 357 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10311_pubkey[] = { 0x01, 0xc2, 0x2f, 0x5c, 0xf1, 0x06, 0x5e, 0x95, 0x01, 0xaa, 0x40, 0xc8, 0x02, 0xa5, 0x8b, 0x94, 0x4e, 0x87, 0x47, 0xd0, 0xdc, 0x33, 0x2c, 0xd0, 0x40, 0xfc, 0x27, 0xf1, 0xef, 0x18, 0xa1, 0xaf, 0x20, 0xca, 0xef, 0x9d, 0x53, 0xd6, 0x77, 0x1a, 0xc8, 0xab, 0x9b, 0x9d, 0x46, 0x79, 0x94, 0x71, 0xfe, 0xec, 0x8d, 0x65, 0x1f, 0x1b, 0xcd, 0x12, 0x07, 0x40, 0xe7, 0xa6, 0x21, 0x8b, 0xa2, 0x63, 0x4a, 0x72, 0x01, 0x82, 0x81, 0x45, 0x2c, 0x5b, 0x0f, 0x2a, 0xec, 0x6e, 0xb1, 0x43, 0x89, 0x1e, 0xf7, 0x77, 0x57, 0x48, 0xc8, 0x89, 0xc0, 0x3e, 0x77, 0x12, 0xab, 0x2d, 0x2c, 0x5c, 0x61, 0x42, 0x34, 0x12, 0x2e, 0xcd, 0xf2, 0xed, 0x25, 0x52, 0x6e, 0x51, 0x89, 0xfd, 0x3a, 0x90, 0xeb, 0xd1, 0x78, 0x25, 0xb9, 0xea, 0x5e, 0xdf, 0xd7, 0x21, 0x43, 0x58, 0xe6, 0xcd, 0x99, 0x81, 0x4a, 0x40, 0x50, 0x4e, 0x44, 0x72, }; static const unsigned char ecdsa_secp521r1_sha3_512_10311_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10311_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xae, 0x79, 0x78, 0x7c, 0x40, 0xd0, 0x69, 0x94, 0x80, 0x33, 0xfe, 0xb7, 0x08, 0xf6, 0x5a, 0x2f, 0xc4, 0x4a, 0x36, 0x47, 0x76, 0x63, 0xb8, 0x51, 0x44, 0x90, 0x48, 0xe1, 0x6e, 0xc7, 0x9b, 0xf5, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10311 = { .name = "ecdsa_secp521r1_sha3_512_10311", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10311_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10311_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10311_sig, .siglen = 132, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 357 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10312 for ECDSA, tcId is 358 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10312_pubkey[] = { 0x01, 0xc2, 0x2f, 0x5c, 0xf1, 0x06, 0x5e, 0x95, 0x01, 0xaa, 0x40, 0xc8, 0x02, 0xa5, 0x8b, 0x94, 0x4e, 0x87, 0x47, 0xd0, 0xdc, 0x33, 0x2c, 0xd0, 0x40, 0xfc, 0x27, 0xf1, 0xef, 0x18, 0xa1, 0xaf, 0x20, 0xca, 0xef, 0x9d, 0x53, 0xd6, 0x77, 0x1a, 0xc8, 0xab, 0x9b, 0x9d, 0x46, 0x79, 0x94, 0x71, 0xfe, 0xec, 0x8d, 0x65, 0x1f, 0x1b, 0xcd, 0x12, 0x07, 0x40, 0xe7, 0xa6, 0x21, 0x8b, 0xa2, 0x63, 0x4a, 0x72, 0x01, 0x82, 0x81, 0x45, 0x2c, 0x5b, 0x0f, 0x2a, 0xec, 0x6e, 0xb1, 0x43, 0x89, 0x1e, 0xf7, 0x77, 0x57, 0x48, 0xc8, 0x89, 0xc0, 0x3e, 0x77, 0x12, 0xab, 0x2d, 0x2c, 0x5c, 0x61, 0x42, 0x34, 0x12, 0x2e, 0xcd, 0xf2, 0xed, 0x25, 0x52, 0x6e, 0x51, 0x89, 0xfd, 0x3a, 0x90, 0xeb, 0xd1, 0x78, 0x25, 0xb9, 0xea, 0x5e, 0xdf, 0xd7, 0x21, 0x43, 0x58, 0xe6, 0xcd, 0x99, 0x81, 0x4a, 0x40, 0x50, 0x4e, 0x44, 0x72, }; static const unsigned char ecdsa_secp521r1_sha3_512_10312_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10312_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10312 = { .name = "ecdsa_secp521r1_sha3_512_10312", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10312_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10312_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10312_sig, .siglen = 132, .result = -1, .comment = "r too large, tcId is 358 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10313 for ECDSA, tcId is 359 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10313_pubkey[] = { 0x01, 0xf9, 0x74, 0xfb, 0xc9, 0x8b, 0x55, 0xc4, 0xd3, 0x97, 0x97, 0xfe, 0x6f, 0xf8, 0x89, 0x1e, 0xab, 0x2a, 0xa5, 0x41, 0xe8, 0x76, 0x7a, 0x1b, 0x9e, 0x9e, 0xae, 0xf1, 0xf9, 0x48, 0x95, 0xcd, 0xf6, 0x37, 0x3c, 0x90, 0xcc, 0xb3, 0x64, 0x3d, 0x1b, 0x2e, 0xf3, 0x15, 0x4b, 0x12, 0x6d, 0xe9, 0x37, 0xe4, 0x34, 0x3f, 0x24, 0x09, 0xb1, 0x91, 0xc2, 0x62, 0xe3, 0xac, 0x1e, 0x25, 0x77, 0x60, 0x6e, 0x58, 0x00, 0x6e, 0xd8, 0x80, 0xd9, 0x25, 0xe8, 0x76, 0xbe, 0xba, 0x31, 0x02, 0x43, 0x27, 0x52, 0xce, 0x23, 0x7b, 0x86, 0x82, 0xc6, 0x5c, 0xeb, 0x59, 0x90, 0x2f, 0xd6, 0xdc, 0x7b, 0x6f, 0x8c, 0x72, 0x8e, 0x50, 0x78, 0xe8, 0x67, 0x69, 0x12, 0xae, 0x82, 0x2f, 0xda, 0x39, 0xcb, 0x62, 0x02, 0x3f, 0xa4, 0xfd, 0x85, 0xba, 0xb6, 0xd3, 0x2f, 0x38, 0x57, 0x91, 0x4a, 0xae, 0x2d, 0x0b, 0x7e, 0x04, 0xe9, 0x58, }; static const unsigned char ecdsa_secp521r1_sha3_512_10313_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10313_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10313 = { .name = "ecdsa_secp521r1_sha3_512_10313", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10313_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10313_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10313_sig, .siglen = 132, .result = 1, .comment = "r,s are large, tcId is 359 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10314 for ECDSA, tcId is 360 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10314_pubkey[] = { 0x00, 0x29, 0xde, 0x1b, 0xa4, 0x95, 0x03, 0x2f, 0xe2, 0xf4, 0xb0, 0x31, 0x73, 0xaa, 0x8e, 0xde, 0xde, 0x27, 0x7d, 0x06, 0x43, 0x24, 0xff, 0x41, 0x6b, 0xd6, 0x52, 0xa1, 0x23, 0xac, 0x40, 0xa6, 0xab, 0x91, 0xe1, 0x89, 0xfb, 0x42, 0xc5, 0xc6, 0x7d, 0xde, 0xba, 0x35, 0x98, 0x73, 0xed, 0x55, 0x96, 0x52, 0xba, 0x2b, 0x83, 0x78, 0x50, 0x8c, 0x69, 0xb3, 0xeb, 0x13, 0xd3, 0x95, 0xf1, 0x1a, 0xdd, 0x84, 0x00, 0x2a, 0xb8, 0xb1, 0xc4, 0x9b, 0xc1, 0xc0, 0x79, 0xd1, 0x9f, 0xab, 0x2d, 0xcf, 0x30, 0xf7, 0x7e, 0x1d, 0x8e, 0x7e, 0xd7, 0x86, 0x66, 0x91, 0x49, 0xb2, 0x54, 0xd7, 0xfe, 0xb8, 0x9f, 0xad, 0x74, 0x8c, 0xe8, 0xc9, 0x93, 0x79, 0x92, 0xfa, 0x64, 0xee, 0x02, 0x5f, 0x7a, 0xeb, 0x6a, 0xae, 0x8c, 0x86, 0xca, 0x92, 0x21, 0xa5, 0x53, 0x1c, 0x23, 0x2a, 0x70, 0xe6, 0xbd, 0x0c, 0x11, 0x64, 0x4e, 0x6a, }; static const unsigned char ecdsa_secp521r1_sha3_512_10314_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10314_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x95, 0xe1, 0x9f, 0xd2, 0xb7, 0x55, 0xd6, 0x03, 0xbf, 0x99, 0x45, 0x62, 0xd9, 0xa1, 0x1f, 0x63, 0xcf, 0x4e, 0xad, 0xec, 0xbd, 0xc0, 0xec, 0xb5, 0xa3, 0x94, 0xe5, 0x45, 0x29, 0xe8, 0xda, 0x58, 0xa5, 0x27, 0xbc, 0x6d, 0x85, 0x72, 0x50, 0x43, 0x78, 0x63, 0x62, 0xab, 0x4d, 0xe6, 0xcb, 0xc7, 0xd8, 0x0e, 0x62, 0x5a, 0xe0, 0xa9, 0x88, 0x61, 0xae, 0xa1, 0xc7, 0xbf, 0x71, 0x09, 0xc9, 0x1f, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10314 = { .name = "ecdsa_secp521r1_sha3_512_10314", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10314_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10314_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10314_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 360 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10315 for ECDSA, tcId is 361 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10315_pubkey[] = { 0x01, 0x6f, 0x83, 0x1f, 0xbe, 0x72, 0x2a, 0x5b, 0x11, 0xea, 0x60, 0xd4, 0xb6, 0x3c, 0x1b, 0xb8, 0x86, 0x16, 0xbb, 0xb2, 0x24, 0x9f, 0x3c, 0xff, 0xac, 0xca, 0xf8, 0x49, 0x79, 0x1e, 0x47, 0x04, 0x47, 0xa5, 0x82, 0x09, 0x0e, 0x7a, 0xdd, 0x34, 0xb5, 0x03, 0x1a, 0x7d, 0x9a, 0xaa, 0xf6, 0x4b, 0x96, 0xe1, 0xda, 0x83, 0xae, 0xc7, 0x98, 0x0b, 0x2a, 0xcb, 0xba, 0xda, 0xf9, 0xa1, 0x45, 0xa8, 0xf4, 0xd1, 0x01, 0x01, 0x26, 0xcc, 0xe7, 0x0b, 0xe1, 0xa8, 0x20, 0x4e, 0x41, 0x87, 0x88, 0x99, 0x3c, 0xfd, 0x9d, 0xa4, 0xbd, 0x26, 0xa7, 0x99, 0xd4, 0x21, 0x84, 0x38, 0x6c, 0xdb, 0x0b, 0xfe, 0xcc, 0xcb, 0xdb, 0xd3, 0x0f, 0x93, 0xa1, 0xe2, 0xac, 0x19, 0xc9, 0x5b, 0xbd, 0x34, 0x34, 0x7e, 0x0d, 0x2e, 0x2b, 0x95, 0xc3, 0x0f, 0x31, 0xad, 0x59, 0x58, 0xa3, 0x92, 0x64, 0x85, 0xf6, 0x1d, 0x6b, 0xff, 0x29, 0x03, }; static const unsigned char ecdsa_secp521r1_sha3_512_10315_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10315_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x15, 0x83, 0x76, 0x45, 0x58, 0x3a, 0x37, 0xa7, 0xa6, 0x65, 0xf9, 0x83, 0xc5, 0xe3, 0x47, 0xf6, 0x5d, 0xca, 0x47, 0x64, 0x7a, 0xa8, 0x0f, 0xd2, 0x49, 0x8a, 0x79, 0x1d, 0x44, 0xd9, 0xb2, 0x85, 0x0a, 0x15, 0x1a, 0x6e, 0x86, 0xfc, 0xe7, 0xd7, 0xbb, 0x81, 0x4e, 0x72, 0x4f, 0xf1, 0x1b, 0x9e, 0xf7, 0x26, 0xbf, 0x36, 0xc6, 0xe7, 0x54, 0x8c, 0x37, 0xf8, 0x2a, 0x24, 0x90, 0x28, 0x76, 0xee, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10315 = { .name = "ecdsa_secp521r1_sha3_512_10315", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10315_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10315_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10315_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 361 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10316 for ECDSA, tcId is 362 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10316_pubkey[] = { 0x01, 0xd8, 0xc2, 0x0c, 0x12, 0x48, 0xac, 0x77, 0x87, 0x8a, 0x32, 0x81, 0x90, 0xf9, 0x52, 0x4a, 0x77, 0x0f, 0x0c, 0x99, 0xf0, 0xd6, 0x89, 0xad, 0xac, 0x92, 0xda, 0x66, 0xe0, 0x97, 0xfc, 0xe8, 0xf5, 0x5d, 0x23, 0x11, 0xc9, 0xec, 0xa1, 0x7a, 0x01, 0xa1, 0x14, 0x0a, 0xc4, 0x23, 0x7c, 0xaa, 0x7e, 0x99, 0xc4, 0xef, 0x12, 0xb1, 0x6e, 0xd3, 0x94, 0x5d, 0x40, 0x47, 0x9a, 0x2d, 0x74, 0xaf, 0xc5, 0xd8, 0x00, 0x15, 0xd0, 0x59, 0x0a, 0xc9, 0xc1, 0x9d, 0x4a, 0x1e, 0xbd, 0x45, 0x89, 0x90, 0xce, 0x76, 0x01, 0xb6, 0xfe, 0xd2, 0x6c, 0xc0, 0x31, 0xea, 0x5b, 0x39, 0xf7, 0x70, 0xa7, 0x11, 0x10, 0x44, 0xdb, 0x2e, 0xbc, 0x3d, 0x6f, 0xa9, 0x0a, 0xa1, 0x71, 0x15, 0x5c, 0xe9, 0x37, 0x6e, 0x21, 0x5a, 0x93, 0x2b, 0xe0, 0x89, 0x7e, 0x09, 0x87, 0x6a, 0xf5, 0x44, 0x46, 0x7d, 0xe7, 0xd5, 0xf0, 0x31, 0x24, 0xc6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10316_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10316_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10316 = { .name = "ecdsa_secp521r1_sha3_512_10316", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10316_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10316_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10316_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10317 for ECDSA, tcId is 363 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10317_pubkey[] = { 0x01, 0x1f, 0x14, 0x81, 0xb5, 0x4f, 0xd8, 0x59, 0xc3, 0xd4, 0xba, 0x50, 0x0d, 0x2d, 0x5d, 0x22, 0x23, 0x01, 0xc4, 0x90, 0x74, 0x79, 0xd1, 0x2b, 0xcd, 0xf1, 0x36, 0x30, 0x07, 0xc5, 0x63, 0x2e, 0xc5, 0x1f, 0xdd, 0x65, 0x69, 0xad, 0x17, 0x4f, 0x4f, 0x96, 0x48, 0x55, 0x5e, 0x24, 0xcc, 0x2a, 0x47, 0xc0, 0x75, 0x32, 0x14, 0xff, 0xe4, 0x1f, 0xdd, 0xf8, 0x74, 0xa9, 0xa2, 0x14, 0x1c, 0x41, 0x34, 0xb3, 0x01, 0x2d, 0x28, 0x3c, 0x35, 0xb7, 0x12, 0x7f, 0xd1, 0xd5, 0xc5, 0xd0, 0xa7, 0x31, 0x27, 0xf2, 0xc1, 0xab, 0x90, 0x56, 0x20, 0x5c, 0xca, 0x57, 0x4b, 0xa0, 0x75, 0x18, 0x9a, 0x2d, 0xa2, 0xeb, 0x47, 0x50, 0xf1, 0x9a, 0x97, 0xb9, 0x6f, 0x87, 0xa5, 0x8a, 0xef, 0x96, 0xc3, 0x8f, 0x8d, 0xd5, 0x41, 0x04, 0xa3, 0x39, 0x88, 0xb5, 0xb9, 0x88, 0x74, 0x71, 0x12, 0x59, 0x62, 0x79, 0xfc, 0x7a, 0x61, 0x2c, }; static const unsigned char ecdsa_secp521r1_sha3_512_10317_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10317_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10317 = { .name = "ecdsa_secp521r1_sha3_512_10317", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10317_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10317_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10317_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 363 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10318 for ECDSA, tcId is 364 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10318_pubkey[] = { 0x00, 0x71, 0x30, 0x34, 0x6b, 0x01, 0xcc, 0x82, 0x56, 0xb0, 0x6c, 0x46, 0x9e, 0x97, 0x4c, 0x5d, 0x1a, 0x73, 0x21, 0x8c, 0x7f, 0xc7, 0x6a, 0xbc, 0x73, 0xfe, 0x49, 0xf3, 0xc7, 0x14, 0x1d, 0x9b, 0x35, 0x28, 0xc8, 0x56, 0x97, 0x54, 0x68, 0xcb, 0x43, 0xee, 0x45, 0x46, 0x1a, 0x2a, 0xce, 0x7f, 0xfe, 0xec, 0x29, 0x62, 0x4d, 0x15, 0x80, 0xbe, 0x7e, 0x75, 0xa1, 0x0d, 0xc8, 0xfb, 0xbd, 0xed, 0x6e, 0x98, 0x01, 0x61, 0x9f, 0xf4, 0x33, 0xbc, 0xc4, 0xc6, 0x37, 0x93, 0x06, 0x59, 0x1c, 0x3f, 0x8f, 0xed, 0xe3, 0x65, 0xe7, 0xad, 0x9d, 0x4c, 0x0c, 0xb5, 0x66, 0xaa, 0xcd, 0xf8, 0x2c, 0x92, 0xa5, 0x04, 0xf7, 0xfb, 0xf7, 0x7a, 0x54, 0xce, 0x4e, 0x7b, 0xa6, 0x80, 0x3b, 0x9d, 0x42, 0x12, 0x30, 0xd4, 0xf3, 0xae, 0x4f, 0x25, 0x08, 0x50, 0x8e, 0x86, 0xb1, 0x82, 0xa0, 0x09, 0xcd, 0x4d, 0x4b, 0x86, 0x13, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10318_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10318_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10318 = { .name = "ecdsa_secp521r1_sha3_512_10318", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10318_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10318_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10318_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 364 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10319 for ECDSA, tcId is 365 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10319_pubkey[] = { 0x00, 0x71, 0x30, 0x34, 0x6b, 0x01, 0xcc, 0x82, 0x56, 0xb0, 0x6c, 0x46, 0x9e, 0x97, 0x4c, 0x5d, 0x1a, 0x73, 0x21, 0x8c, 0x7f, 0xc7, 0x6a, 0xbc, 0x73, 0xfe, 0x49, 0xf3, 0xc7, 0x14, 0x1d, 0x9b, 0x35, 0x28, 0xc8, 0x56, 0x97, 0x54, 0x68, 0xcb, 0x43, 0xee, 0x45, 0x46, 0x1a, 0x2a, 0xce, 0x7f, 0xfe, 0xec, 0x29, 0x62, 0x4d, 0x15, 0x80, 0xbe, 0x7e, 0x75, 0xa1, 0x0d, 0xc8, 0xfb, 0xbd, 0xed, 0x6e, 0x98, 0x01, 0x61, 0x9f, 0xf4, 0x33, 0xbc, 0xc4, 0xc6, 0x37, 0x93, 0x06, 0x59, 0x1c, 0x3f, 0x8f, 0xed, 0xe3, 0x65, 0xe7, 0xad, 0x9d, 0x4c, 0x0c, 0xb5, 0x66, 0xaa, 0xcd, 0xf8, 0x2c, 0x92, 0xa5, 0x04, 0xf7, 0xfb, 0xf7, 0x7a, 0x54, 0xce, 0x4e, 0x7b, 0xa6, 0x80, 0x3b, 0x9d, 0x42, 0x12, 0x30, 0xd4, 0xf3, 0xae, 0x4f, 0x25, 0x08, 0x50, 0x8e, 0x86, 0xb1, 0x82, 0xa0, 0x09, 0xcd, 0x4d, 0x4b, 0x86, 0x13, 0x39, }; static const unsigned char ecdsa_secp521r1_sha3_512_10319_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10319_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10319 = { .name = "ecdsa_secp521r1_sha3_512_10319", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10319_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10319_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10319_sig, .siglen = 132, .result = -1, .comment = "r is larger than n, tcId is 365 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10320 for ECDSA, tcId is 366 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10320_pubkey[] = { 0x01, 0x8f, 0x8b, 0x62, 0x3f, 0x8d, 0xbe, 0x41, 0xe9, 0xe9, 0x3e, 0x2c, 0x1a, 0xe7, 0xb0, 0xca, 0x2c, 0x3c, 0xae, 0x69, 0x95, 0xa9, 0x5f, 0x8f, 0xab, 0xe2, 0xf3, 0xd7, 0xb7, 0x32, 0x4e, 0x75, 0x4d, 0x5b, 0xe9, 0xcd, 0xa9, 0x85, 0xa1, 0x7a, 0x41, 0xb7, 0xb2, 0x6b, 0x75, 0x7d, 0x56, 0x94, 0xaf, 0xeb, 0x46, 0xe6, 0x08, 0x63, 0x36, 0x5c, 0xa8, 0xd8, 0x1f, 0xe0, 0x07, 0xdc, 0x40, 0x58, 0x98, 0xe9, 0x00, 0x3c, 0x32, 0x37, 0x00, 0x45, 0x41, 0xdd, 0xaa, 0xaa, 0xef, 0xad, 0x0a, 0xdb, 0xf3, 0x51, 0x7e, 0x7b, 0xa8, 0xa9, 0x75, 0xfc, 0x9b, 0x6f, 0x12, 0x4f, 0x07, 0x55, 0x9d, 0x36, 0xb0, 0x42, 0xc8, 0x44, 0x54, 0x08, 0x84, 0x48, 0x50, 0x52, 0xfe, 0xa3, 0x49, 0xa6, 0x9c, 0xde, 0xdb, 0xd9, 0x3c, 0x99, 0xc7, 0x2f, 0x4d, 0x6c, 0xb0, 0x3b, 0x59, 0xcb, 0x59, 0x4a, 0xdd, 0x19, 0xdc, 0xa4, 0xb2, 0x63, }; static const unsigned char ecdsa_secp521r1_sha3_512_10320_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10320_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x4b, 0x3a, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10320 = { .name = "ecdsa_secp521r1_sha3_512_10320", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10320_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10320_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10320_sig, .siglen = 132, .result = -1, .comment = "s is larger than n, tcId is 366 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10321 for ECDSA, tcId is 367 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10321_pubkey[] = { 0x00, 0xa7, 0x24, 0x60, 0xb4, 0x76, 0x47, 0xcf, 0x18, 0x21, 0x50, 0x20, 0xa0, 0x5d, 0xdd, 0x57, 0xb6, 0xb7, 0xa1, 0xfd, 0xb5, 0x95, 0x89, 0xba, 0x54, 0x57, 0x25, 0x96, 0xab, 0xaf, 0xd9, 0x41, 0x3a, 0x36, 0x45, 0x62, 0x2b, 0x78, 0xde, 0x90, 0xf0, 0x2e, 0xd2, 0x7e, 0x6e, 0xaa, 0x66, 0xb8, 0x8e, 0x22, 0xd1, 0xed, 0xf8, 0x6d, 0xff, 0xc0, 0x09, 0x45, 0xc4, 0x53, 0xbf, 0x55, 0xd9, 0x56, 0x1b, 0xe8, 0x00, 0x56, 0x55, 0xd4, 0x3e, 0x58, 0xd4, 0xdd, 0xdb, 0x71, 0x17, 0x67, 0x16, 0x49, 0x21, 0x77, 0xbb, 0x31, 0xc6, 0x73, 0xe9, 0xad, 0x1d, 0x6a, 0x68, 0xc0, 0x0f, 0x7d, 0x72, 0x67, 0x00, 0x2d, 0x00, 0xe3, 0xf2, 0x03, 0xcd, 0x4e, 0x5d, 0x88, 0x2f, 0xb4, 0xf6, 0xa4, 0xda, 0x4c, 0xf1, 0x65, 0x39, 0x34, 0x94, 0x0d, 0x8a, 0xdb, 0x16, 0x2f, 0xdc, 0x6d, 0x38, 0x63, 0xcf, 0xbd, 0x7d, 0xa1, 0xbe, 0xa1, }; static const unsigned char ecdsa_secp521r1_sha3_512_10321_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10321_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xf8, 0x7b, 0x4d, 0xe1, 0xfc, 0x92, 0xdd, 0x75, 0x76, 0x39, 0x40, 0x8a, 0x50, 0xbe, 0xe1, 0x07, 0x64, 0xe3, 0x26, 0xfd, 0xd2, 0xfa, 0x30, 0x8d, 0xfd, 0xe3, 0xe5, 0x24, 0x3f, 0xdf, 0x4a, 0xc5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10321 = { .name = "ecdsa_secp521r1_sha3_512_10321", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10321_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10321_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10321_sig, .siglen = 132, .result = 1, .comment = "small r and s^-1, tcId is 367 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10322 for ECDSA, tcId is 368 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10322_pubkey[] = { 0x01, 0x58, 0x94, 0xe0, 0x01, 0x91, 0x24, 0x87, 0xce, 0x16, 0x09, 0x12, 0xd6, 0xe8, 0xac, 0x66, 0xa8, 0xa7, 0x44, 0x9f, 0xe5, 0x6d, 0x06, 0xc0, 0x2e, 0x1e, 0x52, 0xa0, 0x40, 0x29, 0xe7, 0x4c, 0xec, 0xf0, 0x65, 0x5d, 0x72, 0x57, 0xcc, 0x73, 0xf6, 0x8f, 0x59, 0x29, 0xef, 0x5a, 0x6c, 0xb3, 0xb0, 0xe6, 0x89, 0xcb, 0xb1, 0x2d, 0xf4, 0x39, 0xd0, 0x93, 0x2d, 0xc9, 0x90, 0x69, 0x69, 0x57, 0xa0, 0xcd, 0x00, 0x7f, 0x2b, 0xe8, 0xac, 0x81, 0x68, 0xdd, 0x28, 0xc4, 0x29, 0xe4, 0x5f, 0x4f, 0x31, 0x27, 0xf1, 0x7e, 0x1b, 0x1f, 0x08, 0x1b, 0xe9, 0x00, 0xe1, 0xca, 0x8c, 0x72, 0xe3, 0x54, 0xd7, 0xe1, 0x11, 0x98, 0xcc, 0x73, 0xd6, 0xd6, 0xf9, 0x54, 0x21, 0x70, 0x44, 0x1b, 0xe5, 0x8e, 0x4e, 0xb0, 0xff, 0x34, 0x35, 0x68, 0x96, 0xd8, 0xde, 0xdd, 0xa4, 0xbd, 0x75, 0x96, 0xb6, 0xb2, 0xaf, 0x20, 0x40, 0xa3, }; static const unsigned char ecdsa_secp521r1_sha3_512_10322_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10322_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0x01, 0x00, 0x50, 0x8d, 0x07, 0x34, 0x13, 0xde, 0x82, 0x92, 0x75, 0xe7, 0x65, 0x09, 0xfd, 0x81, 0xcf, 0xf4, 0x9a, 0xdf, 0x4c, 0x80, 0xed, 0x2d, 0xdd, 0x4a, 0x79, 0x37, 0xd1, 0xd9, 0x18, 0x79, 0x68, 0x78, 0xfe, 0xc2, 0x4c, 0xc4, 0x65, 0x70, 0x98, 0x2c, 0x3f, 0xb8, 0xf5, 0xe9, 0x2c, 0xcd, 0xcb, 0x3e, 0x67, 0x7f, 0x07, 0xe9, 0xbd, 0x0d, 0xb0, 0xb8, 0x48, 0x14, 0xbe, 0x1c, 0x79, 0x49, 0xb0, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10322 = { .name = "ecdsa_secp521r1_sha3_512_10322", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10322_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10322_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10322_sig, .siglen = 132, .result = 1, .comment = "smallish r and s^-1, tcId is 368 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10323 for ECDSA, tcId is 369 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10323_pubkey[] = { 0x01, 0xa6, 0x51, 0x8e, 0xb0, 0xc8, 0xbc, 0x48, 0xd8, 0xc6, 0xdd, 0x8d, 0xea, 0xfc, 0xa4, 0x16, 0x4a, 0x6c, 0x45, 0xcf, 0xf2, 0x82, 0xfb, 0x32, 0x13, 0x65, 0xe3, 0x08, 0x2e, 0xb4, 0x92, 0x75, 0x44, 0x7f, 0x0e, 0xfd, 0xe8, 0x2c, 0xd0, 0x51, 0x25, 0x52, 0x4f, 0x31, 0xa3, 0xa3, 0xe0, 0xb8, 0x44, 0xa4, 0x89, 0x36, 0x5f, 0x33, 0xc4, 0x6b, 0x3f, 0x86, 0x83, 0x3f, 0x4e, 0x61, 0xae, 0x15, 0xfb, 0x6c, 0x00, 0x24, 0x86, 0xc0, 0x1f, 0x53, 0x0c, 0x53, 0xfb, 0xa8, 0x3b, 0x76, 0xf0, 0xd7, 0x4c, 0x6a, 0xfe, 0x83, 0xac, 0xfd, 0x56, 0x7b, 0x17, 0xfb, 0x13, 0xe1, 0x3d, 0x20, 0x5b, 0x28, 0xf2, 0xa5, 0x62, 0x30, 0x0e, 0x03, 0xcc, 0x17, 0x05, 0x25, 0xeb, 0x05, 0xb3, 0xd9, 0xd0, 0x2f, 0x0f, 0x69, 0xeb, 0x9b, 0x85, 0x51, 0x09, 0x6b, 0x67, 0xbc, 0x2b, 0x0a, 0x20, 0x2e, 0xf1, 0x36, 0x6d, 0x31, 0xbb, 0x28, }; static const unsigned char ecdsa_secp521r1_sha3_512_10323_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10323_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x01, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x39, 0x3f, 0x63, 0x2a, 0xff, 0xd3, 0xea, 0xa3, 0xc8, 0xfb, 0x64, 0x50, 0x7b, 0xd5, 0x99, 0x64, 0x97, 0xbd, 0x58, 0x8f, 0xb9, 0xe3, 0x94, 0x7c, 0x09, 0x7c, 0xed, 0x75, 0x46, 0xb5, 0x7c, 0x89, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10323 = { .name = "ecdsa_secp521r1_sha3_512_10323", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10323_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10323_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10323_sig, .siglen = 132, .result = 1, .comment = "100-bit r and small s^-1, tcId is 369 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10324 for ECDSA, tcId is 370 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10324_pubkey[] = { 0x00, 0xe7, 0x5c, 0x5d, 0xc6, 0xfb, 0x8f, 0x88, 0xc1, 0x09, 0x0a, 0x0c, 0x62, 0x6a, 0xd8, 0xcd, 0x38, 0x00, 0xeb, 0xbf, 0x84, 0xa3, 0xa7, 0xa9, 0xca, 0x11, 0xf3, 0x32, 0x9b, 0xb4, 0xba, 0x34, 0x18, 0x90, 0x31, 0x0f, 0x2c, 0x05, 0xc2, 0x5a, 0x60, 0x4a, 0x95, 0x6a, 0xbb, 0x32, 0x5a, 0xa5, 0x05, 0x3e, 0xb3, 0xaf, 0x78, 0x86, 0xe8, 0x3c, 0x68, 0x36, 0xe9, 0x6a, 0x02, 0x66, 0x08, 0x10, 0xb6, 0xa4, 0x00, 0x50, 0xc4, 0x9b, 0xb8, 0xc8, 0x4b, 0x74, 0x8f, 0x6a, 0xa8, 0x0d, 0x7f, 0x69, 0xc1, 0x23, 0x15, 0xbd, 0x77, 0xac, 0x4b, 0x2b, 0x99, 0x8a, 0x5d, 0x63, 0xaf, 0x5a, 0xc1, 0xb1, 0xa6, 0xb6, 0x24, 0x00, 0x01, 0x7c, 0xe6, 0xc0, 0x2c, 0xb8, 0xe6, 0x67, 0x04, 0xd8, 0x67, 0x39, 0xbe, 0xc5, 0xc6, 0x4b, 0xbb, 0x5e, 0x5d, 0xf7, 0x82, 0xdf, 0x6c, 0xa1, 0xed, 0x3c, 0x53, 0xf1, 0x3c, 0x5b, 0x70, 0x96, }; static const unsigned char ecdsa_secp521r1_sha3_512_10324_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10324_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10324 = { .name = "ecdsa_secp521r1_sha3_512_10324", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10324_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10324_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10324_sig, .siglen = 132, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 370 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10325 for ECDSA, tcId is 371 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10325_pubkey[] = { 0x00, 0xfe, 0x43, 0x60, 0x33, 0x50, 0x72, 0x64, 0xc0, 0xf6, 0xa8, 0xe0, 0xbd, 0x76, 0x03, 0x5c, 0x56, 0xdf, 0xcb, 0xea, 0x46, 0x60, 0xae, 0xb8, 0x86, 0x5e, 0x08, 0x45, 0xa4, 0xe9, 0x89, 0x5e, 0x83, 0x94, 0xb3, 0xff, 0xf5, 0x34, 0x28, 0xbb, 0x6e, 0x04, 0x7a, 0xd4, 0xd5, 0x3e, 0xdd, 0x47, 0xfb, 0x10, 0xa0, 0xd5, 0xff, 0xa1, 0x0a, 0x09, 0xb3, 0x1e, 0xe4, 0x5f, 0x2e, 0x5f, 0x37, 0x0b, 0x0d, 0xa9, 0x00, 0x72, 0xfd, 0xb3, 0x00, 0x1e, 0xcc, 0xec, 0x7e, 0xd1, 0xd3, 0x2b, 0x56, 0x0f, 0x53, 0xf0, 0x0d, 0xc7, 0xd1, 0xd0, 0x61, 0x11, 0xe7, 0x9f, 0x98, 0x79, 0x38, 0x72, 0xe7, 0xb1, 0x5e, 0x5e, 0xd8, 0xba, 0x9e, 0x3c, 0xf3, 0x5e, 0x9a, 0x55, 0x21, 0xb8, 0x93, 0x48, 0x5f, 0x6b, 0x50, 0x8d, 0x6b, 0x35, 0x24, 0xb9, 0xf1, 0x15, 0x16, 0x24, 0x0b, 0xd2, 0xd2, 0x3e, 0xfd, 0x37, 0xde, 0x28, 0xd7, 0x20, }; static const unsigned char ecdsa_secp521r1_sha3_512_10325_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10325_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10325 = { .name = "ecdsa_secp521r1_sha3_512_10325", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10325_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10325_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10325_sig, .siglen = 132, .result = 1, .comment = "100-bit r and s^-1, tcId is 371 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10326 for ECDSA, tcId is 372 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10326_pubkey[] = { 0x00, 0x0e, 0x11, 0x7d, 0x46, 0xe9, 0x22, 0xfa, 0xec, 0x04, 0x82, 0xc8, 0x9f, 0x28, 0x9c, 0x8f, 0xca, 0x84, 0x45, 0xe7, 0x7f, 0x45, 0x62, 0x61, 0x70, 0x4c, 0x56, 0x7a, 0xa0, 0x12, 0xd6, 0x55, 0x30, 0x1e, 0x4a, 0xd9, 0x97, 0x5d, 0xea, 0x55, 0x49, 0xcf, 0xcc, 0xc6, 0x9d, 0xbf, 0x16, 0x2a, 0x56, 0xba, 0xd4, 0x51, 0x9c, 0xd2, 0xc3, 0x2c, 0x16, 0x9a, 0xa4, 0x1b, 0x8d, 0xf3, 0x66, 0xf3, 0xfa, 0xe8, 0x00, 0xe2, 0xd8, 0xa2, 0x1f, 0xbb, 0x54, 0xf8, 0x4f, 0xd5, 0x39, 0x5b, 0x64, 0x89, 0x96, 0x30, 0x6c, 0x8b, 0xa7, 0xc2, 0xd4, 0x34, 0x17, 0x9a, 0xc9, 0x99, 0xf1, 0xd4, 0x60, 0x98, 0x86, 0x79, 0x75, 0xca, 0x2e, 0xd8, 0x30, 0x26, 0xb9, 0x6a, 0x7a, 0x56, 0xca, 0xaa, 0x0d, 0xae, 0x8e, 0x81, 0x90, 0x1e, 0xb0, 0xdb, 0x35, 0x2a, 0xbc, 0x4a, 0x34, 0xc4, 0xee, 0x6a, 0x41, 0xb2, 0x6f, 0x33, 0xfe, 0x3f, }; static const unsigned char ecdsa_secp521r1_sha3_512_10326_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10326_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x8a, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10326 = { .name = "ecdsa_secp521r1_sha3_512_10326", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10326_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10326_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10326_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 are close to n, tcId is 372 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10327 for ECDSA, tcId is 373 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10327_pubkey[] = { 0x01, 0x28, 0xbd, 0xac, 0x64, 0x0b, 0x4f, 0x6f, 0xee, 0x28, 0x96, 0x91, 0xb4, 0x94, 0x7a, 0x59, 0x86, 0x90, 0xbb, 0x9e, 0x6c, 0xcf, 0x3b, 0xfd, 0x07, 0x82, 0xf6, 0x1d, 0xef, 0x53, 0x2e, 0x29, 0x0a, 0x45, 0xd7, 0x20, 0x2b, 0xd8, 0x42, 0x41, 0x19, 0xb5, 0x77, 0x4c, 0x4e, 0xbc, 0xeb, 0x7a, 0x74, 0x6f, 0x88, 0x4a, 0x88, 0xf0, 0x96, 0xbb, 0x32, 0x27, 0x43, 0xe9, 0x4b, 0x28, 0xe8, 0xaa, 0x5b, 0x10, 0x01, 0x87, 0x16, 0x99, 0x69, 0x03, 0x04, 0x8a, 0xf1, 0x7d, 0x15, 0x2b, 0xcd, 0xb9, 0xa1, 0xff, 0x67, 0xaa, 0x8b, 0x14, 0x8e, 0x02, 0x5b, 0x5d, 0x4e, 0xdb, 0xd7, 0x5f, 0xaf, 0x95, 0x95, 0x71, 0x2f, 0xdc, 0xc7, 0xcf, 0xa4, 0x83, 0xe0, 0x1f, 0x3a, 0x65, 0x76, 0x72, 0x7b, 0xcb, 0x35, 0x64, 0x9d, 0x48, 0x2e, 0x18, 0xb7, 0xe4, 0xc4, 0xb4, 0xe4, 0x1d, 0xff, 0x4b, 0xe3, 0xde, 0x92, 0x48, 0x8f, 0x94, }; static const unsigned char ecdsa_secp521r1_sha3_512_10327_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10327_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10327 = { .name = "ecdsa_secp521r1_sha3_512_10327", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10327_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10327_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10327_sig, .siglen = 132, .result = 1, .comment = "s == 1, tcId is 373 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10328 for ECDSA, tcId is 374 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10328_pubkey[] = { 0x01, 0x28, 0xbd, 0xac, 0x64, 0x0b, 0x4f, 0x6f, 0xee, 0x28, 0x96, 0x91, 0xb4, 0x94, 0x7a, 0x59, 0x86, 0x90, 0xbb, 0x9e, 0x6c, 0xcf, 0x3b, 0xfd, 0x07, 0x82, 0xf6, 0x1d, 0xef, 0x53, 0x2e, 0x29, 0x0a, 0x45, 0xd7, 0x20, 0x2b, 0xd8, 0x42, 0x41, 0x19, 0xb5, 0x77, 0x4c, 0x4e, 0xbc, 0xeb, 0x7a, 0x74, 0x6f, 0x88, 0x4a, 0x88, 0xf0, 0x96, 0xbb, 0x32, 0x27, 0x43, 0xe9, 0x4b, 0x28, 0xe8, 0xaa, 0x5b, 0x10, 0x01, 0x87, 0x16, 0x99, 0x69, 0x03, 0x04, 0x8a, 0xf1, 0x7d, 0x15, 0x2b, 0xcd, 0xb9, 0xa1, 0xff, 0x67, 0xaa, 0x8b, 0x14, 0x8e, 0x02, 0x5b, 0x5d, 0x4e, 0xdb, 0xd7, 0x5f, 0xaf, 0x95, 0x95, 0x71, 0x2f, 0xdc, 0xc7, 0xcf, 0xa4, 0x83, 0xe0, 0x1f, 0x3a, 0x65, 0x76, 0x72, 0x7b, 0xcb, 0x35, 0x64, 0x9d, 0x48, 0x2e, 0x18, 0xb7, 0xe4, 0xc4, 0xb4, 0xe4, 0x1d, 0xff, 0x4b, 0xe3, 0xde, 0x92, 0x48, 0x8f, 0x94, }; static const unsigned char ecdsa_secp521r1_sha3_512_10328_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10328_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10328 = { .name = "ecdsa_secp521r1_sha3_512_10328", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10328_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10328_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10328_sig, .siglen = 132, .result = -1, .comment = "s == 0, tcId is 374 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10329 for ECDSA, tcId is 375 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10329_pubkey[] = { 0x00, 0x43, 0x8f, 0x4f, 0x62, 0x29, 0x7e, 0x21, 0x52, 0x4d, 0x23, 0x7d, 0xa2, 0x0c, 0x89, 0x84, 0x2c, 0x60, 0x8e, 0x31, 0x9f, 0x1e, 0xc5, 0x26, 0x0a, 0x79, 0xf5, 0xce, 0xd1, 0x85, 0x19, 0xbb, 0xfa, 0xc4, 0x25, 0xa4, 0xe7, 0x2f, 0xc1, 0x9f, 0xcd, 0xb8, 0x22, 0x5a, 0xc8, 0x6f, 0x81, 0xe2, 0x9f, 0x30, 0xd6, 0xf5, 0xf3, 0xff, 0x32, 0xaf, 0xbf, 0x0d, 0x44, 0x19, 0x17, 0x31, 0x17, 0x90, 0x95, 0xed, 0x01, 0xe9, 0x58, 0x1d, 0x30, 0x5a, 0x50, 0x5f, 0xe6, 0xb6, 0x14, 0x2b, 0x38, 0x6a, 0xa8, 0xfa, 0x0e, 0xb1, 0x3f, 0x87, 0xed, 0xed, 0x89, 0x8a, 0x17, 0x3f, 0x1a, 0x09, 0x33, 0x74, 0x87, 0xf8, 0x43, 0xe7, 0xda, 0xa7, 0xdc, 0x24, 0x13, 0x2e, 0xe3, 0x59, 0x42, 0x64, 0x52, 0x84, 0x23, 0x9b, 0xdf, 0xc7, 0xfe, 0xca, 0x91, 0x1e, 0x76, 0xd1, 0x0e, 0xbc, 0x50, 0xfc, 0x71, 0xf4, 0xc5, 0xcc, 0x23, 0xe6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10329_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10329_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10329 = { .name = "ecdsa_secp521r1_sha3_512_10329", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10329_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10329_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10329_sig, .siglen = 132, .result = -1, .comment = "point at infinity during verify, tcId is 375 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10330 for ECDSA, tcId is 376 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10330_pubkey[] = { 0x00, 0xee, 0xf2, 0xfd, 0x1d, 0xf1, 0x8d, 0xe7, 0xe9, 0x8b, 0x0c, 0x5b, 0x8a, 0xd2, 0x44, 0x70, 0x4c, 0x1c, 0xc4, 0xab, 0x7c, 0xb8, 0xfa, 0x91, 0x61, 0x7d, 0xc5, 0x64, 0xe9, 0x6f, 0xff, 0xdd, 0x91, 0xac, 0x15, 0xcf, 0x0d, 0x3b, 0x1e, 0xe3, 0xaa, 0x97, 0xef, 0x4e, 0x1b, 0x34, 0xf9, 0xe3, 0x3d, 0x12, 0xeb, 0xd9, 0x6a, 0x3b, 0x98, 0x82, 0x52, 0x44, 0x49, 0x4d, 0x5b, 0x2d, 0x5a, 0xaa, 0xb2, 0x41, 0x01, 0xe0, 0x64, 0x09, 0x64, 0x39, 0xd4, 0xe0, 0x90, 0xdb, 0x8a, 0x9f, 0xac, 0xf5, 0xc1, 0x7e, 0xb2, 0xec, 0x88, 0x8a, 0x8d, 0xdc, 0x89, 0xb7, 0x2e, 0xb1, 0x6f, 0x05, 0x9c, 0x6e, 0x2f, 0xb0, 0x5c, 0x1d, 0x3c, 0xdb, 0xa1, 0xbc, 0x0d, 0xd0, 0x6a, 0xd3, 0x22, 0xc2, 0x59, 0x7f, 0xdc, 0xd6, 0x96, 0xac, 0xd7, 0xf0, 0x94, 0x17, 0xd7, 0x60, 0x88, 0xd8, 0x2a, 0x43, 0x9b, 0xab, 0xff, 0xb9, 0xc7, 0xd2, }; static const unsigned char ecdsa_secp521r1_sha3_512_10330_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10330_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10330 = { .name = "ecdsa_secp521r1_sha3_512_10330", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10330_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10330_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10330_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 376 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10331 for ECDSA, tcId is 377 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10331_pubkey[] = { 0x00, 0x72, 0xaa, 0x33, 0xa0, 0xc1, 0x80, 0xe1, 0x8b, 0x1b, 0x0f, 0x86, 0x57, 0x9b, 0x01, 0x09, 0xd6, 0x29, 0xa8, 0x65, 0xff, 0x67, 0xc6, 0x8e, 0x37, 0xc8, 0x1b, 0xcf, 0xe3, 0xd1, 0x44, 0x01, 0xc5, 0x8b, 0x99, 0x5a, 0x90, 0xad, 0xec, 0x31, 0x33, 0xde, 0x53, 0xec, 0xa4, 0x9f, 0xfc, 0xa3, 0x23, 0xf1, 0xe0, 0x67, 0x54, 0x6c, 0x27, 0xb9, 0xd7, 0xe5, 0x59, 0xfa, 0x4c, 0x60, 0x5f, 0x20, 0xb2, 0xb9, 0x01, 0xc2, 0xa2, 0x1f, 0x93, 0xa8, 0x2d, 0x61, 0xc2, 0x79, 0xa0, 0xf2, 0x78, 0x75, 0xb7, 0x35, 0xa7, 0xb7, 0x02, 0x15, 0x04, 0x78, 0xc0, 0x44, 0xd4, 0xb4, 0xc1, 0xf6, 0x12, 0x1a, 0x4c, 0x0b, 0x37, 0xdd, 0x9c, 0x75, 0x03, 0x10, 0x80, 0x79, 0x86, 0x53, 0xc1, 0xdf, 0xc9, 0xa6, 0x6a, 0xae, 0xb9, 0x4b, 0x4f, 0xca, 0xb2, 0x21, 0x13, 0x22, 0x20, 0x50, 0xa6, 0xfe, 0x61, 0x21, 0xbf, 0xdf, 0x14, 0x20, }; static const unsigned char ecdsa_secp521r1_sha3_512_10331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10331_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10331 = { .name = "ecdsa_secp521r1_sha3_512_10331", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10331_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10331_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10331_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 377 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10332 for ECDSA, tcId is 378 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10332_pubkey[] = { 0x00, 0xcf, 0x1d, 0xff, 0x74, 0x30, 0x71, 0x92, 0xb7, 0x73, 0xd1, 0x2b, 0x27, 0x50, 0x76, 0xef, 0x04, 0xb1, 0x80, 0x7e, 0x3b, 0x77, 0x4b, 0xf2, 0xe2, 0x8d, 0xff, 0xc1, 0xaa, 0x5e, 0xca, 0x39, 0x5c, 0xa5, 0x25, 0xa9, 0xdc, 0x6c, 0xd2, 0xd4, 0xae, 0x7e, 0x93, 0xcb, 0xf9, 0x81, 0xe0, 0x74, 0x04, 0x0f, 0xfd, 0x2d, 0x86, 0xfc, 0x6b, 0x82, 0x03, 0x8b, 0x85, 0x05, 0x37, 0x14, 0x38, 0x47, 0xe4, 0xce, 0x01, 0x5a, 0x9a, 0xf9, 0xc2, 0xf6, 0x05, 0x52, 0xad, 0x14, 0x1a, 0xcc, 0x2e, 0xa2, 0x7a, 0xb7, 0x3a, 0x17, 0x72, 0x07, 0x86, 0x16, 0xc3, 0x01, 0x7a, 0x44, 0x1f, 0x16, 0xe4, 0x17, 0xd9, 0x3d, 0x88, 0x03, 0x0d, 0x53, 0x51, 0xfb, 0xf1, 0xe6, 0xae, 0x9b, 0x0c, 0x24, 0x36, 0x36, 0xd3, 0xfb, 0x74, 0xde, 0x92, 0x0b, 0x29, 0x2e, 0xc5, 0x50, 0xf2, 0x32, 0xeb, 0x90, 0xcd, 0xbc, 0xca, 0x17, 0x4d, 0x20, }; static const unsigned char ecdsa_secp521r1_sha3_512_10332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10332_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, 0x99, 0x95, 0xee, 0x7c, 0xcf, 0x6d, 0x6e, 0x6b, 0x1c, 0xec, 0x4a, 0xaf, 0x83, 0x2d, 0x37, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10332 = { .name = "ecdsa_secp521r1_sha3_512_10332", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10332_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10332_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10332_sig, .siglen = 132, .result = 1, .comment = "u1 == 1, tcId is 378 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10333 for ECDSA, tcId is 379 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10333_pubkey[] = { 0x01, 0xd0, 0x43, 0x59, 0x63, 0xaf, 0xc9, 0x6e, 0xac, 0x09, 0x96, 0x39, 0xa3, 0xe2, 0x33, 0x83, 0x46, 0x2e, 0x50, 0x5c, 0x83, 0x95, 0x5f, 0x29, 0x74, 0x3e, 0xd2, 0x44, 0xe6, 0xb7, 0x6b, 0xb6, 0xfb, 0x08, 0x01, 0x18, 0x55, 0x8e, 0x63, 0xa6, 0xc6, 0x32, 0xd3, 0xbe, 0x9b, 0xa1, 0x73, 0xdf, 0xe4, 0x6f, 0xa7, 0xd9, 0xc7, 0x61, 0xce, 0x61, 0x90, 0x55, 0xad, 0x1c, 0x43, 0x21, 0xe1, 0x42, 0xe8, 0xa6, 0x01, 0x80, 0x65, 0x48, 0x2a, 0x1e, 0x84, 0x51, 0x83, 0x85, 0x41, 0x03, 0xd7, 0xc9, 0x7a, 0x37, 0xf3, 0x1a, 0xa7, 0x37, 0x03, 0xaa, 0x1e, 0xaf, 0xc5, 0xa7, 0x74, 0xd5, 0x29, 0x62, 0x04, 0x1c, 0x35, 0xb2, 0x5e, 0xf4, 0xe9, 0x8a, 0x9c, 0x5b, 0x48, 0xbf, 0x0c, 0x91, 0xbf, 0x16, 0xdf, 0x0c, 0x2f, 0x2d, 0x16, 0x85, 0xaa, 0x4b, 0x41, 0x43, 0x83, 0xe0, 0x65, 0x4a, 0x9e, 0x43, 0xc0, 0xc6, 0x04, 0x58, }; static const unsigned char ecdsa_secp521r1_sha3_512_10333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10333_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0xff, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x3e, 0x40, 0x2a, 0xbc, 0xab, 0xb8, 0x0e, 0x36, 0xac, 0x16, 0xff, 0xa8, 0x27, 0x26, 0xf9, 0x4a, 0xf3, 0x42, 0x18, 0x46, 0x3b, 0xb8, 0xb8, 0xa7, 0xa2, 0x1f, 0xdb, 0x3b, 0xba, 0x2e, 0xd9, 0x43, 0x9e, 0x83, 0x6c, 0x6f, 0x0e, 0x0b, 0x2c, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10333 = { .name = "ecdsa_secp521r1_sha3_512_10333", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10333_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10333_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10333_sig, .siglen = 132, .result = 1, .comment = "u1 == n - 1, tcId is 379 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10334 for ECDSA, tcId is 380 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10334_pubkey[] = { 0x00, 0x1a, 0xf6, 0xa3, 0x63, 0x18, 0xd0, 0x47, 0xa1, 0xed, 0x36, 0x84, 0x91, 0x09, 0xc3, 0xa3, 0x66, 0x12, 0x35, 0xe6, 0x93, 0xdc, 0x0a, 0x3b, 0xbd, 0x76, 0xdd, 0xfe, 0xb7, 0xcd, 0xb1, 0x3e, 0x79, 0xe7, 0xf3, 0x6e, 0xaf, 0x6e, 0x41, 0x2b, 0xdd, 0x44, 0xc4, 0xd0, 0xf9, 0x91, 0x4b, 0x46, 0x96, 0x13, 0x72, 0x12, 0x12, 0x79, 0x13, 0xb9, 0xc0, 0xb3, 0x55, 0x6f, 0x80, 0x8f, 0x54, 0x71, 0x08, 0x13, 0x00, 0x30, 0x24, 0x6a, 0x78, 0xfc, 0x9d, 0x73, 0x33, 0x5c, 0xe9, 0xbe, 0xfc, 0x2b, 0xe2, 0x36, 0xc3, 0x2e, 0x94, 0x7e, 0xfd, 0xe6, 0x54, 0x48, 0x1b, 0xcb, 0x77, 0x63, 0x65, 0x6b, 0xd9, 0xc2, 0x50, 0xc2, 0xe1, 0xf7, 0x35, 0x11, 0x81, 0x1e, 0xfd, 0xf2, 0xc0, 0x13, 0x32, 0xcf, 0xfe, 0x24, 0x98, 0xb8, 0xb7, 0x1c, 0xf5, 0x01, 0x26, 0xfa, 0x0f, 0x8b, 0x34, 0xc8, 0xed, 0x2d, 0x96, 0x31, 0x89, 0x4e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10334_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10334 = { .name = "ecdsa_secp521r1_sha3_512_10334", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10334_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10334_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10334_sig, .siglen = 132, .result = 1, .comment = "u2 == 1, tcId is 380 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10335 for ECDSA, tcId is 381 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10335_pubkey[] = { 0x01, 0xcf, 0xb1, 0x5a, 0x18, 0xfa, 0x02, 0x94, 0x08, 0xa4, 0xdc, 0x7e, 0x18, 0x94, 0xdf, 0x30, 0xe2, 0x63, 0xfc, 0x42, 0x8a, 0x87, 0x2d, 0x8b, 0x1c, 0xdc, 0x22, 0x2c, 0x4b, 0xbb, 0x31, 0xeb, 0xfe, 0x7a, 0x24, 0x89, 0x7e, 0x51, 0x4c, 0x1c, 0x51, 0xef, 0x4d, 0x7a, 0x33, 0x9f, 0x76, 0x38, 0xc2, 0x85, 0x9a, 0x00, 0xd7, 0xd0, 0x39, 0x0c, 0xa0, 0x02, 0xa6, 0xed, 0x0b, 0xa7, 0x42, 0x4f, 0xb6, 0xbb, 0x01, 0xed, 0x01, 0x0d, 0x62, 0xdf, 0x40, 0x69, 0xc1, 0x02, 0x0e, 0x0b, 0xe4, 0x88, 0x76, 0x88, 0x79, 0xf1, 0xe6, 0xc6, 0x7a, 0x01, 0x36, 0x88, 0x90, 0x80, 0xc1, 0x90, 0xd0, 0xd6, 0x93, 0x0f, 0x2c, 0x40, 0x97, 0xd7, 0x5f, 0x89, 0xde, 0xa3, 0x65, 0x97, 0x85, 0xc3, 0x74, 0xa9, 0x15, 0x88, 0xdd, 0x6c, 0xfa, 0x2f, 0x9e, 0x29, 0x6e, 0x70, 0x84, 0xad, 0x60, 0xc0, 0xb4, 0x04, 0x1a, 0x54, 0x76, 0xb4, }; static const unsigned char ecdsa_secp521r1_sha3_512_10335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10335_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10335 = { .name = "ecdsa_secp521r1_sha3_512_10335", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10335_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10335_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10335_sig, .siglen = 132, .result = 1, .comment = "u2 == n - 1, tcId is 381 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10336 for ECDSA, tcId is 382 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10336_pubkey[] = { 0x00, 0x49, 0x62, 0x60, 0xa4, 0x8f, 0xd6, 0x56, 0xa3, 0xac, 0xbd, 0x4a, 0xf6, 0x87, 0x6d, 0x58, 0x64, 0xea, 0x2c, 0x8b, 0x31, 0x7f, 0x04, 0x48, 0xc5, 0xae, 0x7c, 0x74, 0x16, 0x0d, 0x64, 0xf3, 0x03, 0xab, 0xa8, 0x3c, 0xca, 0x11, 0x60, 0x86, 0x00, 0x28, 0xc2, 0xbf, 0x15, 0x08, 0xb5, 0xaf, 0x11, 0x09, 0xde, 0x5f, 0x74, 0x0d, 0xd9, 0xe2, 0x87, 0xaf, 0x8b, 0x7b, 0x32, 0xac, 0x1f, 0x2e, 0xa9, 0x05, 0x00, 0xb0, 0x84, 0x09, 0x96, 0x9c, 0x1e, 0x06, 0x6f, 0x88, 0x07, 0x42, 0xb0, 0x60, 0x64, 0x69, 0xdc, 0xe2, 0x9c, 0x07, 0xab, 0x5c, 0x84, 0xbd, 0x48, 0x0f, 0x57, 0xfa, 0x70, 0x1d, 0x86, 0x8f, 0xa3, 0x99, 0xa4, 0x9a, 0x4b, 0xa1, 0xfe, 0x4e, 0xce, 0xe1, 0x98, 0xa6, 0x48, 0x74, 0x62, 0x73, 0x12, 0x9f, 0xf7, 0xd0, 0x2c, 0xff, 0x2a, 0xbe, 0xe6, 0x72, 0xf1, 0x77, 0x5d, 0x3a, 0xe0, 0xec, 0x75, 0xba, }; static const unsigned char ecdsa_secp521r1_sha3_512_10336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10336_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x11, 0x64, 0x8f, 0x7c, 0x5e, 0x21, 0x36, 0x98, 0xd5, 0xd8, 0x9a, 0x66, 0xb9, 0x13, 0xbc, 0x4e, 0x38, 0xb7, 0x21, 0xf6, 0x42, 0xa0, 0xcb, 0x0b, 0x40, 0x95, 0x47, 0x16, 0x71, 0x6d, 0x50, 0x96, 0x8c, 0x7a, 0x82, 0x9e, 0x88, 0x02, 0xdf, 0x0a, 0xd9, 0x83, 0x4d, 0xab, 0x93, 0xc5, 0xa4, 0x62, 0xdd, 0xdc, 0xa4, 0xd4, 0x45, 0x24, 0x7a, 0x23, 0xb4, 0x4e, 0xc3, 0x8f, 0xd6, 0x64, 0x67, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10336 = { .name = "ecdsa_secp521r1_sha3_512_10336", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10336_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10336_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10336_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10337 for ECDSA, tcId is 383 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10337_pubkey[] = { 0x00, 0xd5, 0x22, 0x11, 0x7f, 0xe9, 0x55, 0x68, 0xbf, 0x98, 0x8a, 0xe0, 0xfb, 0xaf, 0x5b, 0xe3, 0xd4, 0x6e, 0xf7, 0x50, 0x36, 0x1f, 0x16, 0x18, 0x9b, 0xec, 0xc6, 0x32, 0x83, 0xe6, 0x93, 0x9b, 0x36, 0x86, 0x95, 0x56, 0xc7, 0xeb, 0xd9, 0x02, 0x72, 0xdc, 0x4f, 0x0b, 0xd0, 0x54, 0xf8, 0x50, 0x5c, 0x3d, 0x01, 0xdc, 0xdc, 0xcc, 0x3f, 0x65, 0x38, 0x83, 0x0d, 0x9c, 0x5f, 0xca, 0x9f, 0xc2, 0x3b, 0x07, 0x01, 0xc7, 0xa8, 0xc0, 0xbe, 0xba, 0x04, 0xb4, 0xd6, 0x2b, 0x01, 0x09, 0x5a, 0x22, 0x0f, 0xbb, 0x68, 0x78, 0xc9, 0x1c, 0xd2, 0xa5, 0x6e, 0xb7, 0xbb, 0xa5, 0x69, 0xa5, 0xfc, 0x0b, 0x42, 0x96, 0x41, 0x17, 0xeb, 0xd4, 0xfa, 0xad, 0x3e, 0x52, 0x08, 0x6d, 0x50, 0x5a, 0xad, 0x8b, 0x9f, 0x00, 0x96, 0xe9, 0xd6, 0x7f, 0x51, 0xd5, 0x05, 0xae, 0xa8, 0x7c, 0xf6, 0x1e, 0xd3, 0x3a, 0x5e, 0xfa, 0xb4, 0xef, }; static const unsigned char ecdsa_secp521r1_sha3_512_10337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10337_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x42, 0x6f, 0xb6, 0xfd, 0x3c, 0x67, 0x1a, 0x0f, 0x7c, 0x7d, 0x2c, 0x3c, 0xac, 0x25, 0xb9, 0x66, 0xe6, 0xac, 0x0e, 0xa9, 0xea, 0xb9, 0x9d, 0x07, 0x70, 0x62, 0x45, 0xe9, 0x99, 0x2d, 0x1d, 0x12, 0x69, 0x8f, 0xe2, 0x66, 0xc5, 0x9c, 0xeb, 0xc2, 0x14, 0xd5, 0x45, 0xcf, 0x57, 0xac, 0xa1, 0xd3, 0xbb, 0x80, 0xcf, 0x39, 0x46, 0x60, 0x27, 0x12, 0x41, 0x19, 0x41, 0x19, 0x11, 0x34, 0x20, 0x1a, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10337 = { .name = "ecdsa_secp521r1_sha3_512_10337", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10337_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10337_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10337_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10338 for ECDSA, tcId is 384 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10338_pubkey[] = { 0x00, 0x32, 0x93, 0xdb, 0x60, 0xa2, 0xa4, 0xb2, 0x19, 0xa5, 0x31, 0xca, 0xaf, 0x86, 0x01, 0x69, 0xf5, 0x2d, 0x5e, 0xf0, 0x6d, 0x2f, 0x3c, 0x18, 0x5f, 0xa4, 0xd2, 0xf6, 0xe3, 0xe3, 0x4b, 0xd6, 0x79, 0x26, 0x94, 0x8f, 0x83, 0x97, 0xd2, 0xb4, 0xa9, 0x8c, 0x06, 0xef, 0x90, 0x4f, 0x18, 0x45, 0x99, 0xde, 0xa8, 0x2d, 0xa1, 0xbb, 0x38, 0x3b, 0x95, 0x36, 0xba, 0x47, 0x17, 0x84, 0x96, 0x96, 0xa3, 0xfc, 0x00, 0x11, 0x6b, 0xbc, 0x57, 0xae, 0x85, 0xd5, 0x7a, 0x06, 0x75, 0xeb, 0x7f, 0xae, 0x13, 0x1a, 0xfa, 0xbb, 0xca, 0x5f, 0xd0, 0xab, 0xfc, 0x24, 0x6b, 0xb0, 0x37, 0x3d, 0x00, 0x6c, 0x79, 0x7e, 0xd4, 0xfc, 0xb2, 0x7e, 0xad, 0x00, 0x57, 0x46, 0x19, 0xc3, 0xc5, 0x62, 0x2c, 0xe1, 0x23, 0xd4, 0xcf, 0x67, 0x0f, 0xbd, 0xe3, 0x80, 0x9b, 0x8f, 0xb2, 0x03, 0x92, 0xa0, 0x3a, 0x20, 0xc6, 0x14, 0x89, 0x4f, }; static const unsigned char ecdsa_secp521r1_sha3_512_10338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10338_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x2f, 0x3b, 0xe6, 0x55, 0x5b, 0x95, 0xd6, 0xa3, 0x78, 0x7d, 0xca, 0x53, 0xf1, 0x68, 0x7f, 0x9f, 0x23, 0xcb, 0x12, 0x1b, 0x23, 0x5c, 0xf6, 0x54, 0xc7, 0xe1, 0x63, 0x1f, 0x52, 0xdc, 0xe0, 0x4e, 0xb8, 0xe1, 0x34, 0xc8, 0x75, 0xb7, 0xbc, 0xd8, 0x17, 0x30, 0x9b, 0xbb, 0x45, 0x54, 0x57, 0xb9, 0xa8, 0xc9, 0x6a, 0xc3, 0x95, 0xf3, 0x82, 0x8c, 0xce, 0x52, 0xa0, 0xd7, 0x3b, 0xaa, 0x29, 0x2d, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10338 = { .name = "ecdsa_secp521r1_sha3_512_10338", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10338_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10338_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10338_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10339 for ECDSA, tcId is 385 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10339_pubkey[] = { 0x00, 0x14, 0x0c, 0xf3, 0x42, 0xe8, 0x95, 0x75, 0x93, 0xfa, 0x7e, 0xcf, 0xd1, 0xcf, 0x95, 0x30, 0x57, 0x43, 0x61, 0x36, 0x4e, 0x2b, 0xd3, 0x9d, 0xf5, 0xfa, 0xc1, 0x07, 0x3e, 0x93, 0x8f, 0xcd, 0x8b, 0x87, 0x53, 0x5f, 0x42, 0xb2, 0x30, 0x51, 0x51, 0x89, 0x20, 0x4f, 0x80, 0xfc, 0x2c, 0x16, 0xb4, 0x0c, 0x9b, 0xbf, 0x25, 0x2d, 0xcb, 0x8d, 0x77, 0xfa, 0xfa, 0x81, 0x24, 0x2e, 0x92, 0x90, 0x15, 0xc3, 0x01, 0xcc, 0x5e, 0x15, 0xc3, 0x29, 0xae, 0xde, 0xfb, 0xd8, 0xac, 0xcb, 0x68, 0x0d, 0x12, 0xd7, 0x6c, 0xeb, 0x74, 0xfd, 0xaa, 0x70, 0xa6, 0x1a, 0xeb, 0x79, 0xcd, 0x22, 0x11, 0xf2, 0xba, 0xaf, 0x85, 0xae, 0xf7, 0xf4, 0x09, 0x9a, 0xf0, 0x81, 0xac, 0xa2, 0xa1, 0x8b, 0x51, 0x26, 0xdf, 0x36, 0xa0, 0x27, 0x28, 0xa5, 0x0d, 0x6b, 0xb6, 0x90, 0x4e, 0xbd, 0x3a, 0x05, 0x91, 0xb5, 0x62, 0x06, 0xce, 0x9c, }; static const unsigned char ecdsa_secp521r1_sha3_512_10339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10339_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xd0, 0xc7, 0xdb, 0x45, 0x62, 0xc9, 0xa5, 0x27, 0xff, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xdb, 0xed, 0x27, 0x12, 0xad, 0xcc, 0x0e, 0x3b, 0xf3, 0xc0, 0x03, 0x7a, 0x7b, 0xee, 0x15, 0x51, 0x66, 0x9c, 0x28, 0x81, 0x88, 0xcd, 0xf5, 0xf6, 0x6b, 0xe6, 0x30, 0xde, 0x62, 0x06, 0x9d, 0x0c, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10339 = { .name = "ecdsa_secp521r1_sha3_512_10339", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10339_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10339_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10339_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10340 for ECDSA, tcId is 386 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10340_pubkey[] = { 0x00, 0xf3, 0x32, 0xfb, 0x45, 0x73, 0x4a, 0xdc, 0xe5, 0x0c, 0x95, 0x52, 0x7c, 0x0a, 0xd8, 0x3f, 0xe0, 0x96, 0x5a, 0xdd, 0xb1, 0xa1, 0x88, 0xa4, 0x57, 0x87, 0x37, 0x03, 0x79, 0x82, 0xb4, 0x35, 0xd1, 0x75, 0xc9, 0xe5, 0x20, 0x79, 0x3e, 0x7e, 0x8d, 0x83, 0x2b, 0x1a, 0x2e, 0xb3, 0xae, 0xa2, 0x71, 0x11, 0x1a, 0x4b, 0x2b, 0x87, 0xce, 0x9d, 0x1d, 0x0c, 0xf0, 0xee, 0xb7, 0xe4, 0x5a, 0x51, 0x24, 0x1b, 0x01, 0xaa, 0xbd, 0xa8, 0x2f, 0x88, 0x07, 0x82, 0xf9, 0xd7, 0x64, 0x80, 0x83, 0x4b, 0x12, 0xd6, 0x0c, 0x8e, 0x5e, 0x1c, 0x90, 0xef, 0x75, 0x24, 0x2d, 0x81, 0x5e, 0xac, 0x13, 0x42, 0x5c, 0xf0, 0x7e, 0xe7, 0x73, 0x54, 0xff, 0x70, 0x70, 0x98, 0xbb, 0x78, 0x30, 0x44, 0x4b, 0xef, 0xf8, 0xed, 0xfb, 0x48, 0x12, 0xc2, 0x96, 0x12, 0x79, 0xb4, 0x12, 0xe5, 0x07, 0x8e, 0xf1, 0x47, 0xdb, 0x4d, 0x49, 0x0d, }; static const unsigned char ecdsa_secp521r1_sha3_512_10340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10340_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x7d, 0xb4, 0x56, 0x2c, 0x9a, 0x52, 0x7f, 0xfc, 0xbd, 0x25, 0x18, 0xae, 0x59, 0xc5, 0xc3, 0x57, 0xe7, 0x63, 0x0c, 0xbd, 0x4c, 0x4c, 0xb1, 0x55, 0x5d, 0xa9, 0xa1, 0xd3, 0x81, 0xd9, 0xed, 0xe3, 0xe2, 0x9d, 0x92, 0xd7, 0x4f, 0xb3, 0x4f, 0xfa, 0xbc, 0x8a, 0xd7, 0x5c, 0xe5, 0xcc, 0x26, 0xbd, 0x5d, 0x04, 0x36, 0xa3, 0x0d, 0xad, 0xeb, 0x20, 0x88, 0x53, 0x21, 0x8f, 0x02, 0x7a, 0xf0, 0xcd, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10340 = { .name = "ecdsa_secp521r1_sha3_512_10340", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10340_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10340_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10340_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10341 for ECDSA, tcId is 387 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10341_pubkey[] = { 0x01, 0xdf, 0xe3, 0x15, 0x38, 0xbf, 0xde, 0xb1, 0x90, 0xab, 0x46, 0xfc, 0x88, 0x36, 0xc0, 0x87, 0x68, 0x97, 0xe9, 0x56, 0xd4, 0x0e, 0x6b, 0xc3, 0xb2, 0xc8, 0xaf, 0xaf, 0x97, 0x9f, 0x52, 0xb5, 0xc5, 0xd5, 0xbe, 0xe0, 0xd2, 0xef, 0x38, 0x6a, 0xb0, 0xe5, 0x9c, 0x82, 0x78, 0xb9, 0x1b, 0xe1, 0x2c, 0xe4, 0x37, 0xdd, 0x0a, 0x9d, 0xc1, 0xf9, 0xac, 0x08, 0x07, 0xca, 0xe5, 0x2f, 0xda, 0x50, 0x26, 0x69, 0x01, 0x6a, 0xd4, 0x2d, 0xc4, 0x51, 0xc2, 0xca, 0xd7, 0xd5, 0xb8, 0x40, 0xd1, 0x51, 0xde, 0x6c, 0xce, 0xb1, 0x58, 0xf3, 0x75, 0x5f, 0x76, 0xd4, 0x96, 0xb9, 0x59, 0x40, 0x0f, 0x7b, 0x7b, 0x47, 0x79, 0xc1, 0x67, 0xc4, 0xc7, 0xad, 0xf9, 0x6c, 0xf5, 0x3a, 0xfc, 0x4d, 0xcc, 0x6f, 0x0e, 0x9f, 0x60, 0x12, 0xdc, 0x48, 0x4c, 0x20, 0x14, 0xd1, 0xe8, 0x2f, 0x09, 0xdc, 0x2b, 0xe9, 0x6a, 0xb1, 0xda, 0xc7, }; static const unsigned char ecdsa_secp521r1_sha3_512_10341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10341_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xfb, 0x68, 0xac, 0x59, 0x34, 0xa4, 0xff, 0xf9, 0x7a, 0x4a, 0x31, 0x5c, 0xb3, 0x8b, 0x86, 0xaf, 0xce, 0xc6, 0x19, 0x7a, 0x98, 0x99, 0x62, 0xaa, 0xbb, 0x53, 0x43, 0xa7, 0x03, 0xb3, 0xdb, 0xc7, 0xc5, 0x3b, 0x25, 0xae, 0x9f, 0x66, 0x9f, 0xf5, 0x79, 0x15, 0xae, 0xb9, 0xcb, 0x98, 0x4d, 0x7a, 0xba, 0x08, 0x6d, 0x46, 0x1b, 0x5b, 0xd6, 0x41, 0x10, 0xa6, 0x43, 0x1e, 0x04, 0xf5, 0xe1, 0x9a, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10341 = { .name = "ecdsa_secp521r1_sha3_512_10341", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10341_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10341_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10341_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10342 for ECDSA, tcId is 388 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10342_pubkey[] = { 0x00, 0xe0, 0xe7, 0x55, 0x3d, 0xe3, 0x4d, 0x89, 0xd3, 0x7d, 0xa9, 0xae, 0x8e, 0xea, 0x57, 0x2b, 0xeb, 0x2a, 0x20, 0x44, 0x5b, 0xfe, 0xe8, 0x2d, 0x14, 0x5f, 0xae, 0x50, 0xd5, 0xd6, 0xfa, 0xbc, 0x37, 0x89, 0x5c, 0x47, 0xba, 0x09, 0xbf, 0xb4, 0x02, 0x5a, 0xe9, 0x61, 0xe5, 0x81, 0x55, 0xea, 0x86, 0x8c, 0x34, 0x34, 0x31, 0xfc, 0x93, 0x91, 0x61, 0xa1, 0x01, 0x92, 0xf9, 0x10, 0x38, 0x50, 0x82, 0xa5, 0x01, 0xc8, 0xc3, 0x8c, 0x30, 0xdc, 0xe7, 0x1d, 0x50, 0x84, 0x46, 0x17, 0xc4, 0x22, 0x63, 0xdf, 0x60, 0xe2, 0x96, 0x94, 0xa7, 0x02, 0xb3, 0x15, 0xbe, 0x20, 0x2c, 0xf5, 0x28, 0x2a, 0xdf, 0x81, 0x70, 0xb8, 0xa9, 0x4e, 0xa7, 0x8a, 0xa9, 0x24, 0x1d, 0xb1, 0x7e, 0xfd, 0xb8, 0xa2, 0x53, 0x9c, 0x2b, 0x71, 0xda, 0x88, 0x42, 0x11, 0xb2, 0xb4, 0xe4, 0x5b, 0x49, 0xab, 0x91, 0x92, 0xa7, 0x20, 0xc7, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10342_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x62, 0xc9, 0xa5, 0x27, 0xff, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x3e, 0x40, 0x2a, 0xb8, 0xbb, 0xd9, 0x3e, 0x12, 0xde, 0x27, 0x78, 0xbb, 0x0e, 0x38, 0x80, 0x6e, 0xa1, 0xc2, 0xdb, 0x3b, 0xbe, 0xe7, 0xc3, 0xb0, 0x6e, 0x36, 0xdf, 0xb0, 0xc1, 0x92, 0xcd, 0x9a, 0x8e, 0x39, 0x5d, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10342 = { .name = "ecdsa_secp521r1_sha3_512_10342", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10342_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10342_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10342_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10343 for ECDSA, tcId is 389 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10343_pubkey[] = { 0x01, 0x96, 0x8e, 0xc9, 0x4f, 0x16, 0xec, 0xd9, 0xd5, 0xda, 0x1e, 0xda, 0x6d, 0xb0, 0x99, 0xb3, 0xb7, 0x9e, 0xa1, 0xe0, 0x8d, 0x39, 0xe7, 0x74, 0x86, 0x37, 0xcb, 0x13, 0xc9, 0x68, 0x36, 0xf6, 0x4e, 0x0f, 0x32, 0x27, 0xa2, 0xec, 0x75, 0x63, 0xef, 0x58, 0xb2, 0x7b, 0xbf, 0x18, 0x80, 0x7a, 0x6e, 0x39, 0xcb, 0xb8, 0x09, 0x22, 0x44, 0xff, 0x3f, 0x4a, 0x3e, 0xe9, 0x29, 0x79, 0x35, 0xa2, 0xfa, 0x1c, 0x01, 0x16, 0x40, 0xf8, 0x19, 0xfe, 0x9f, 0x69, 0x11, 0xf0, 0xc8, 0xa5, 0x4f, 0x97, 0x2e, 0x94, 0x44, 0xf8, 0xdf, 0x51, 0x8f, 0xa7, 0x78, 0xa0, 0x97, 0x8b, 0xc6, 0xe6, 0x4e, 0x1d, 0x43, 0xb2, 0x4e, 0xbb, 0x03, 0xb4, 0xec, 0xe0, 0x09, 0x9a, 0x12, 0x51, 0x15, 0xec, 0xff, 0x32, 0x79, 0xb2, 0xcd, 0xca, 0x15, 0xd6, 0xe4, 0xe7, 0xd0, 0x0f, 0x5b, 0x1c, 0x9d, 0xb6, 0x26, 0xa0, 0x19, 0x66, 0x34, 0xde, }; static const unsigned char ecdsa_secp521r1_sha3_512_10343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10343_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xf2, 0x08, 0xd5, 0xb1, 0x9d, 0x30, 0xa2, 0x00, 0xd6, 0x98, 0x6c, 0x21, 0x06, 0x81, 0xef, 0x2b, 0xbc, 0xb3, 0xfb, 0x01, 0x66, 0xaa, 0x66, 0xab, 0x55, 0xcd, 0x5d, 0xac, 0x9b, 0x50, 0xb0, 0x37, 0xf9, 0x35, 0x53, 0x86, 0xf8, 0xcb, 0x08, 0x74, 0x39, 0x80, 0xf4, 0x21, 0x65, 0xf5, 0x67, 0xe5, 0xd4, 0x1a, 0xd4, 0x92, 0xb7, 0xd8, 0xc4, 0x3a, 0x7b, 0x84, 0x8f, 0xc0, 0xf0, 0xed, 0x59, 0x15, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10343 = { .name = "ecdsa_secp521r1_sha3_512_10343", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10343_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10343_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10343_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10344 for ECDSA, tcId is 390 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10344_pubkey[] = { 0x00, 0x6c, 0x75, 0x18, 0x06, 0x1f, 0x07, 0x6c, 0x33, 0xc6, 0x2f, 0x0a, 0x74, 0x94, 0xb6, 0x19, 0xc0, 0x8b, 0xcc, 0x27, 0x82, 0xcd, 0x99, 0xef, 0x6a, 0xb6, 0xf0, 0x45, 0x45, 0xfa, 0x17, 0xd8, 0xc5, 0x45, 0xba, 0xc6, 0x00, 0xc1, 0xf9, 0x18, 0x30, 0x22, 0x5d, 0xda, 0xd1, 0xa7, 0x1c, 0xab, 0xbb, 0x8a, 0xfe, 0xee, 0x7d, 0x80, 0xcf, 0x53, 0x7f, 0x6e, 0x39, 0x10, 0x49, 0xdd, 0x70, 0xc3, 0x26, 0x43, 0x01, 0xf6, 0xbf, 0xba, 0xa4, 0x24, 0x4b, 0x80, 0xf0, 0x62, 0xab, 0x7a, 0x66, 0xa1, 0xb6, 0xa7, 0x07, 0xde, 0x56, 0x7c, 0xf1, 0x19, 0xb4, 0x6a, 0xa5, 0x36, 0x4c, 0xbe, 0x39, 0x6d, 0xd4, 0xb7, 0x49, 0xda, 0xf1, 0x56, 0xa8, 0x4c, 0x02, 0xb2, 0xc2, 0x5a, 0x20, 0x4d, 0xd4, 0x7d, 0x7c, 0xfb, 0xae, 0x5b, 0xa3, 0x94, 0xa6, 0x2a, 0x82, 0xf9, 0x39, 0x01, 0x45, 0xb8, 0x98, 0xcc, 0xa1, 0x4b, 0xc0, 0xe1, }; static const unsigned char ecdsa_secp521r1_sha3_512_10344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10344_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x42, 0xc7, 0x36, 0xa8, 0xba, 0xab, 0xf2, 0xb4, 0x17, 0x6c, 0x7d, 0x01, 0x0f, 0x8f, 0xc1, 0x7e, 0xd9, 0x81, 0xdd, 0xcb, 0xb2, 0xb8, 0xdf, 0x40, 0xab, 0xc9, 0xb3, 0x7b, 0x5d, 0x25, 0x1f, 0xd3, 0xc8, 0xeb, 0x36, 0x14, 0x49, 0xa0, 0xc3, 0x3c, 0xb9, 0xd5, 0xf6, 0x38, 0x51, 0xce, 0x3c, 0xb7, 0x6d, 0xc1, 0xaa, 0xb6, 0x84, 0xa9, 0x44, 0x17, 0xa5, 0x28, 0x83, 0xde, 0x9b, 0xff, 0x64, 0xfb, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10344 = { .name = "ecdsa_secp521r1_sha3_512_10344", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10344_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10344_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10344_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10345 for ECDSA, tcId is 391 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10345_pubkey[] = { 0x01, 0x3d, 0x7a, 0xe4, 0x67, 0x6d, 0xb1, 0x61, 0xdb, 0x18, 0xcf, 0x23, 0x1e, 0xde, 0xd0, 0xe3, 0xdb, 0xc1, 0xb2, 0x3b, 0xfa, 0x35, 0x3f, 0x1c, 0xd6, 0xed, 0x8c, 0x47, 0x2d, 0x1e, 0x6f, 0xca, 0x9c, 0x96, 0x3d, 0x0f, 0xe9, 0x52, 0x43, 0xce, 0x65, 0x32, 0x3a, 0x06, 0x33, 0x86, 0xcb, 0x17, 0x3a, 0x02, 0xc6, 0x5a, 0xcf, 0x07, 0xb3, 0xbe, 0xaf, 0x34, 0x9e, 0x89, 0xa6, 0x12, 0xa0, 0x70, 0x65, 0xc0, 0x01, 0x29, 0x90, 0x48, 0x5c, 0x90, 0x33, 0xce, 0xc7, 0x89, 0xec, 0x67, 0x98, 0x95, 0x16, 0xb4, 0x88, 0xe5, 0x24, 0x6f, 0x27, 0x49, 0x9a, 0x26, 0xc4, 0xf3, 0x04, 0x89, 0xf4, 0xa2, 0x87, 0x43, 0x5f, 0xf5, 0x5c, 0x63, 0x8d, 0x1d, 0x2c, 0x7e, 0x28, 0xae, 0xec, 0x1b, 0x08, 0x23, 0x3d, 0x1a, 0x8c, 0xbf, 0xea, 0x9b, 0x67, 0x62, 0xef, 0xd3, 0x4e, 0x0d, 0x38, 0x7c, 0x51, 0x2b, 0x12, 0x96, 0x6e, 0x6d, }; static const unsigned char ecdsa_secp521r1_sha3_512_10345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10345_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x6d, 0xb3, 0x21, 0x4e, 0xf7, 0xa2, 0xaf, 0xbd, 0x71, 0x89, 0x08, 0x71, 0x33, 0x21, 0x7b, 0xc5, 0x5c, 0xf3, 0xd8, 0xc1, 0xdd, 0x84, 0x02, 0x1d, 0xa2, 0x29, 0x04, 0x95, 0x56, 0x9e, 0x8d, 0x25, 0x92, 0x89, 0xd8, 0x20, 0x3c, 0x22, 0x45, 0xf2, 0x81, 0x51, 0x3e, 0xb9, 0x6a, 0xc7, 0xa5, 0xae, 0xa4, 0x1f, 0xad, 0xff, 0x0d, 0x2e, 0xe7, 0xcf, 0xe2, 0xdf, 0x3e, 0xeb, 0x2d, 0xde, 0x5b, 0xe8, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10345 = { .name = "ecdsa_secp521r1_sha3_512_10345", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10345_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10345_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10345_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10346 for ECDSA, tcId is 392 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10346_pubkey[] = { 0x00, 0xa0, 0xc7, 0x55, 0x47, 0x63, 0x0e, 0x9e, 0xd6, 0x4c, 0xc1, 0xe5, 0x97, 0x25, 0xa3, 0x07, 0x2b, 0x23, 0x1b, 0x28, 0xc5, 0x86, 0x08, 0x09, 0x66, 0xdb, 0x67, 0x80, 0x06, 0x36, 0xe4, 0xb4, 0xc2, 0x17, 0x16, 0x2c, 0x8d, 0x03, 0xa7, 0xba, 0x0e, 0xdf, 0x49, 0x66, 0x9f, 0xdc, 0x68, 0x2a, 0x35, 0x5e, 0xf9, 0x09, 0x47, 0xd7, 0xe3, 0x94, 0x40, 0x62, 0x96, 0xb3, 0x54, 0x72, 0x26, 0x36, 0xe0, 0x05, 0x01, 0xdf, 0x34, 0x1f, 0x46, 0x9c, 0x7e, 0x46, 0x0e, 0x87, 0xaa, 0x96, 0xdf, 0x2c, 0x90, 0xa7, 0x77, 0x4e, 0x75, 0x32, 0xfa, 0xe1, 0x04, 0x10, 0xe9, 0x32, 0x26, 0x29, 0x37, 0x24, 0x7a, 0x2a, 0xce, 0x65, 0x12, 0xe0, 0xf9, 0xa3, 0x7f, 0x95, 0x47, 0xf4, 0xa8, 0xfe, 0x32, 0x47, 0xf0, 0x93, 0x01, 0x8d, 0x00, 0x00, 0x03, 0x91, 0x7c, 0x19, 0x5c, 0x1d, 0x0c, 0xe5, 0xb3, 0x6a, 0xb6, 0x13, 0xb9, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha3_512_10346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10346_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xf7, 0x4d, 0xb8, 0x41, 0xd0, 0xef, 0x64, 0xb3, 0x95, 0x13, 0xb2, 0xcc, 0xa3, 0x76, 0x21, 0xd8, 0xe3, 0xa4, 0x6f, 0x04, 0xde, 0xaf, 0x9a, 0x7a, 0x5f, 0xb5, 0x5c, 0x74, 0xc7, 0x49, 0x57, 0xaf, 0x0b, 0x49, 0x46, 0x34, 0x7b, 0x2e, 0x26, 0xe6, 0x13, 0x0a, 0x5a, 0x73, 0x2d, 0x26, 0xd3, 0x9e, 0xcc, 0xc7, 0x77, 0x4e, 0x67, 0x0a, 0x0a, 0x9c, 0xe1, 0x48, 0x55, 0x56, 0xa6, 0x06, 0x30, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10346 = { .name = "ecdsa_secp521r1_sha3_512_10346", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10346_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10346_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10346_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10347 for ECDSA, tcId is 393 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10347_pubkey[] = { 0x01, 0xa7, 0x14, 0x66, 0x1c, 0x4d, 0x29, 0x9f, 0x54, 0x0f, 0x29, 0x1a, 0x07, 0xf2, 0xde, 0xef, 0xe6, 0x14, 0x5d, 0x9f, 0x7a, 0x9e, 0xd4, 0x92, 0xf8, 0x53, 0x9b, 0x9e, 0x0b, 0x29, 0xa0, 0xd2, 0x4b, 0xdf, 0xb7, 0x1a, 0x89, 0xf5, 0x3c, 0x16, 0x20, 0xc8, 0xad, 0xa2, 0xe0, 0x6f, 0xe9, 0x8c, 0xcf, 0xe1, 0x1b, 0x98, 0x80, 0x77, 0x81, 0x6f, 0x0a, 0x04, 0xcc, 0x33, 0x8d, 0x52, 0x26, 0x66, 0x32, 0xdc, 0x01, 0x93, 0xc3, 0xb9, 0xc6, 0x65, 0x83, 0x81, 0xeb, 0x61, 0xe0, 0x22, 0x1e, 0x00, 0x2b, 0x15, 0xcc, 0x62, 0x29, 0x84, 0x55, 0x0c, 0xb0, 0x28, 0x9f, 0xb9, 0x96, 0x36, 0xd9, 0x26, 0xcc, 0xba, 0x6d, 0x64, 0x24, 0xdc, 0x0d, 0x39, 0x57, 0x9f, 0x39, 0x74, 0x3c, 0x82, 0x12, 0x84, 0x84, 0x95, 0x27, 0xb5, 0x24, 0xa8, 0x65, 0x0a, 0x29, 0x14, 0xcf, 0xdf, 0x3b, 0x11, 0xde, 0xae, 0xe4, 0x53, 0xc8, 0xa9, }; static const unsigned char ecdsa_secp521r1_sha3_512_10347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10347_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xee, 0x9b, 0x70, 0x83, 0xa1, 0xde, 0xc9, 0x67, 0x2a, 0x27, 0x65, 0x99, 0x46, 0xec, 0x43, 0xb1, 0xc7, 0x48, 0xde, 0x09, 0xbd, 0x5f, 0x34, 0xf4, 0xbf, 0x6a, 0xb8, 0xe9, 0x8e, 0x92, 0xaf, 0x63, 0xc5, 0x0c, 0x04, 0xe5, 0x37, 0x2c, 0xb7, 0x60, 0xa6, 0x48, 0xb3, 0x9d, 0x63, 0x44, 0x01, 0x6d, 0x5d, 0xd9, 0x24, 0xe4, 0x44, 0x77, 0xcd, 0x8b, 0x07, 0x20, 0xf3, 0x8e, 0xba, 0xd3, 0xfc, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10347 = { .name = "ecdsa_secp521r1_sha3_512_10347", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10347_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10347_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10347_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10348 for ECDSA, tcId is 394 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10348_pubkey[] = { 0x01, 0x28, 0xf5, 0x8e, 0xdf, 0x56, 0x5a, 0x7a, 0x48, 0xe7, 0xe4, 0x0a, 0x66, 0xdc, 0xd1, 0x74, 0x76, 0xa6, 0x09, 0xea, 0x0a, 0x27, 0x68, 0xfd, 0x3f, 0xe6, 0x4c, 0x8d, 0x1a, 0xe8, 0x2d, 0x23, 0x6f, 0x67, 0x04, 0xeb, 0xe5, 0xb6, 0x4d, 0xd0, 0x3e, 0x59, 0xd5, 0x2c, 0x4a, 0x87, 0xae, 0xcd, 0x34, 0x20, 0x19, 0x89, 0x9e, 0x2f, 0x06, 0xf3, 0x0b, 0x09, 0x0c, 0x86, 0x2b, 0x32, 0x52, 0x73, 0xdd, 0x12, 0x00, 0xcc, 0x34, 0xbb, 0x77, 0x53, 0xbc, 0x1e, 0xd8, 0x44, 0x5b, 0x94, 0x50, 0x26, 0x25, 0x49, 0xba, 0xb0, 0x49, 0x16, 0x1d, 0x78, 0x12, 0x9b, 0xb2, 0x73, 0xba, 0x52, 0x8e, 0xee, 0x2c, 0x40, 0x50, 0x04, 0x0b, 0xe5, 0xd3, 0x0e, 0xcd, 0xd6, 0x5d, 0x5f, 0xc0, 0x18, 0x66, 0xa5, 0x12, 0xde, 0x15, 0x19, 0xa2, 0xf6, 0x0d, 0x80, 0xff, 0x52, 0x27, 0x60, 0xa1, 0x6b, 0xd3, 0xf6, 0x7c, 0x03, 0x72, 0x8c, }; static const unsigned char ecdsa_secp521r1_sha3_512_10348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10348_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xe5, 0xe9, 0x28, 0xc5, 0x72, 0xce, 0x2e, 0x1a, 0xbf, 0x3b, 0x18, 0x65, 0xea, 0x62, 0x65, 0x8a, 0xaa, 0xed, 0x4d, 0x0e, 0x9c, 0x0e, 0xcf, 0x6f, 0x1f, 0x20, 0x15, 0x5e, 0x55, 0xdc, 0x07, 0x18, 0x7e, 0xce, 0xc3, 0x95, 0xf3, 0x2b, 0x47, 0xdb, 0x39, 0x87, 0x0c, 0xc7, 0x99, 0x61, 0x2f, 0x3b, 0xee, 0xea, 0xd2, 0x7a, 0x21, 0xe5, 0x90, 0x79, 0x2c, 0xf9, 0x91, 0xc6, 0xcf, 0xa1, 0xc8, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10348 = { .name = "ecdsa_secp521r1_sha3_512_10348", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10348_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10348_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10348_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 394 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10349 for ECDSA, tcId is 395 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10349_pubkey[] = { 0x00, 0xe0, 0xa4, 0x99, 0x11, 0x79, 0x91, 0xef, 0xa7, 0x1c, 0x57, 0xc1, 0x2c, 0xfb, 0x2c, 0xd2, 0x53, 0xfc, 0x5a, 0x2f, 0x04, 0xc3, 0x0f, 0xe2, 0x47, 0xcf, 0x34, 0x96, 0xf4, 0x1c, 0x54, 0x6b, 0x5c, 0x36, 0xd9, 0x62, 0xa1, 0x86, 0xe4, 0xf0, 0x11, 0x35, 0x75, 0x6e, 0x4e, 0xb0, 0xd8, 0x02, 0x1d, 0xd0, 0x6e, 0x0e, 0x72, 0x84, 0x98, 0xe7, 0x73, 0x92, 0x29, 0x00, 0x02, 0x0e, 0x8c, 0xa1, 0x91, 0xb6, 0x00, 0x8e, 0xd0, 0xc9, 0xef, 0x71, 0xc8, 0x5b, 0x0d, 0x2a, 0x2b, 0x18, 0xd6, 0x51, 0x7b, 0xa9, 0xfd, 0xd4, 0xca, 0x52, 0x47, 0xdd, 0x2c, 0xdf, 0x03, 0x37, 0x20, 0xb4, 0xc4, 0x5b, 0x65, 0x12, 0xa3, 0xe8, 0x3d, 0x1b, 0xb0, 0xcc, 0xd7, 0x16, 0x7b, 0x40, 0x5b, 0x48, 0xf5, 0x48, 0xed, 0xd6, 0x7e, 0xa1, 0xab, 0xdf, 0xab, 0x29, 0x69, 0xf7, 0x58, 0xf3, 0xcd, 0xb3, 0xf1, 0x74, 0xed, 0xcc, 0x45, 0x52, }; static const unsigned char ecdsa_secp521r1_sha3_512_10349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10349_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x97, 0x9d, 0xf3, 0x2a, 0xad, 0xca, 0xeb, 0x51, 0xbc, 0x3e, 0xe5, 0x29, 0xf8, 0xb4, 0x3f, 0xcf, 0x91, 0xe5, 0x89, 0x0d, 0x91, 0xae, 0x7b, 0x2a, 0x63, 0xf0, 0xb1, 0x8f, 0xa9, 0x6e, 0x70, 0x27, 0x59, 0x99, 0x5d, 0xa7, 0xfc, 0xbb, 0x76, 0x37, 0x41, 0x58, 0x33, 0xde, 0x47, 0x25, 0xb0, 0xaf, 0xbc, 0x82, 0x90, 0x46, 0xa7, 0x3e, 0x8f, 0x6a, 0x3e, 0x87, 0x08, 0x47, 0x2d, 0x1d, 0xb0, 0xc8, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10349 = { .name = "ecdsa_secp521r1_sha3_512_10349", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10349_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10349_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10349_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 395 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10350 for ECDSA, tcId is 396 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10350_pubkey[] = { 0x01, 0x96, 0x9b, 0x92, 0xc8, 0x18, 0xd0, 0x9e, 0x66, 0xfc, 0x0d, 0x1d, 0xba, 0xff, 0x40, 0x93, 0xb9, 0x34, 0xf7, 0x2f, 0xcb, 0x6a, 0x45, 0xb1, 0x3a, 0x2c, 0xca, 0x89, 0xd6, 0xab, 0x4e, 0xa9, 0x29, 0x49, 0x87, 0xad, 0xa9, 0xdf, 0xb8, 0xab, 0xdb, 0xba, 0xdb, 0xb8, 0x79, 0xb6, 0xda, 0x74, 0xbe, 0xbd, 0x10, 0x8b, 0x9d, 0xfb, 0xca, 0x74, 0xec, 0x56, 0xcb, 0x8b, 0xa9, 0xd0, 0x5c, 0xfb, 0xcc, 0xfc, 0x00, 0x73, 0x21, 0xb6, 0xea, 0x2f, 0x16, 0x40, 0x67, 0x5e, 0x33, 0x9f, 0xee, 0xc4, 0xd9, 0x3b, 0x0b, 0xd7, 0xf3, 0xdf, 0xa9, 0xc6, 0x33, 0xc7, 0xda, 0x4e, 0xc0, 0x52, 0x95, 0xb7, 0xb5, 0xfb, 0xd3, 0x8d, 0x6a, 0xe3, 0x48, 0xaf, 0x87, 0xba, 0x99, 0xfc, 0x7a, 0x29, 0xe2, 0x04, 0xfe, 0x86, 0x41, 0x37, 0xf9, 0x94, 0x6e, 0xfb, 0x77, 0x02, 0xed, 0x34, 0xd1, 0xbc, 0x5e, 0x34, 0x58, 0xa3, 0x18, 0x07, }; static const unsigned char ecdsa_secp521r1_sha3_512_10350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10350_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10350 = { .name = "ecdsa_secp521r1_sha3_512_10350", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10350_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10350_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10350_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10351 for ECDSA, tcId is 397 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10351_pubkey[] = { 0x00, 0x6b, 0x6e, 0x33, 0xab, 0x1f, 0xc7, 0x4e, 0x11, 0x2d, 0x5d, 0x7d, 0x27, 0x9a, 0xc5, 0x1b, 0x67, 0x42, 0x71, 0x81, 0x45, 0x48, 0x06, 0xff, 0x33, 0xbd, 0xbd, 0xc6, 0x7a, 0xf3, 0x7a, 0xd7, 0x04, 0xb5, 0x21, 0xc7, 0x4d, 0xce, 0x1f, 0x9f, 0xfe, 0x38, 0xe2, 0x53, 0xdd, 0x15, 0x2b, 0x1c, 0x10, 0x8a, 0x37, 0xdb, 0x3b, 0x3f, 0xbc, 0x40, 0xa2, 0xe7, 0x61, 0x31, 0xd0, 0x39, 0x9b, 0xc0, 0x01, 0x1e, 0x00, 0xc2, 0xd3, 0x6d, 0xb9, 0x64, 0x7c, 0x3d, 0x71, 0xd9, 0x86, 0x06, 0x69, 0x8d, 0xae, 0x0a, 0xfb, 0xc8, 0xdb, 0xb6, 0x48, 0xc9, 0xdf, 0xd4, 0xe2, 0xca, 0x52, 0x3d, 0xdc, 0x72, 0xa0, 0xbd, 0x95, 0xe7, 0xf6, 0xab, 0xc7, 0xe6, 0xce, 0x11, 0xa2, 0xc4, 0x01, 0x23, 0xdc, 0x1c, 0xc9, 0x85, 0xe1, 0x55, 0x88, 0x75, 0x35, 0xe2, 0x90, 0x7a, 0x90, 0x5d, 0x8d, 0x51, 0xe9, 0xd3, 0xed, 0x01, 0x33, 0x0e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10351_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x9f, 0x57, 0x70, 0x8f, 0xa9, 0x7e, 0xba, 0x94, 0xc6, 0xd4, 0x78, 0x2c, 0xdd, 0x4e, 0x33, 0xbb, 0x95, 0xc1, 0x35, 0x3b, 0xde, 0x09, 0x52, 0x32, 0xe3, 0xe2, 0xba, 0xb2, 0x77, 0xbb, 0x5d, 0x2b, 0x48, 0xf5, 0x5a, 0x53, 0xff, 0xe9, 0x28, 0xd0, 0x34, 0xc2, 0x99, 0x70, 0xa9, 0xe5, 0xf3, 0x84, 0xa0, 0x03, 0x90, 0x7d, 0x3d, 0x9b, 0x82, 0xa8, 0x68, 0x17, 0xcc, 0x61, 0xfb, 0x17, 0xf4, 0xc5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10351 = { .name = "ecdsa_secp521r1_sha3_512_10351", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10351_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10351_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10351_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10352 for ECDSA, tcId is 398 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10352_pubkey[] = { 0x01, 0xc0, 0xa0, 0x97, 0x93, 0xe6, 0x5c, 0xa3, 0x1b, 0x10, 0x37, 0xcd, 0xcb, 0x9d, 0xa8, 0xf8, 0xe0, 0xa8, 0xdd, 0x64, 0x8a, 0x6a, 0x4f, 0x3d, 0x8c, 0xb9, 0x83, 0x98, 0xdc, 0xe8, 0x56, 0xcd, 0x7a, 0x12, 0x3d, 0xa2, 0x90, 0xe6, 0x65, 0xa8, 0xa1, 0x28, 0x19, 0x84, 0x6e, 0x8f, 0x34, 0x62, 0xee, 0xf8, 0x75, 0xab, 0xc5, 0xfa, 0xdf, 0x8a, 0xf9, 0x46, 0x6a, 0xb7, 0xcc, 0xa0, 0x3e, 0xbe, 0xb4, 0xeb, 0x01, 0xc3, 0x73, 0x31, 0xf2, 0x29, 0x0f, 0x75, 0xcc, 0xd6, 0x8b, 0x81, 0xf1, 0xe3, 0x0d, 0xaf, 0xfb, 0x63, 0xd2, 0x31, 0x9d, 0x84, 0x81, 0x27, 0x2a, 0x7d, 0x65, 0xf9, 0xe4, 0xe3, 0xac, 0x8f, 0xf3, 0x4d, 0xb0, 0xc4, 0x03, 0xf8, 0x6a, 0x6e, 0xa9, 0x90, 0x43, 0x6c, 0x66, 0xf2, 0x44, 0x89, 0xf5, 0xf3, 0x96, 0x43, 0xac, 0x10, 0x46, 0xe9, 0x9e, 0x11, 0xdb, 0x92, 0x49, 0x78, 0xd0, 0xe3, 0x81, 0x2f, }; static const unsigned char ecdsa_secp521r1_sha3_512_10352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10352_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x68, 0xd9, 0x8f, 0xa9, 0x07, 0x36, 0xef, 0xf3, 0xe9, 0x0f, 0x8f, 0xcf, 0xe5, 0x08, 0x38, 0xb6, 0xfa, 0x0b, 0xf2, 0xcd, 0xe7, 0x7b, 0xc5, 0x1e, 0x3f, 0x41, 0x01, 0x9c, 0x80, 0x06, 0xf4, 0xe9, 0xcb, 0xae, 0xad, 0xce, 0x7d, 0xbb, 0x44, 0x46, 0x2d, 0xa6, 0x42, 0x5b, 0xe9, 0xcf, 0xda, 0xec, 0xb2, 0x34, 0xc4, 0x17, 0x49, 0xce, 0x69, 0x5b, 0xe1, 0xb5, 0xea, 0xd2, 0xe6, 0xb1, 0x20, 0x5f, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10352 = { .name = "ecdsa_secp521r1_sha3_512_10352", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10352_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10352_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10352_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10353 for ECDSA, tcId is 399 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10353_pubkey[] = { 0x00, 0x62, 0xd0, 0x09, 0xd1, 0xee, 0xad, 0xe4, 0x56, 0x16, 0x86, 0x27, 0x5a, 0x42, 0xe6, 0x4e, 0x26, 0xcc, 0xcd, 0x4b, 0xb6, 0xaa, 0x73, 0x85, 0xa6, 0x1f, 0xa3, 0x66, 0xad, 0x56, 0x35, 0x9a, 0x20, 0x9f, 0xb3, 0x15, 0xe7, 0x38, 0xd6, 0x4a, 0x9a, 0x88, 0xae, 0x81, 0xc7, 0x7b, 0xcf, 0x58, 0x5d, 0xe4, 0xab, 0x41, 0xf2, 0x58, 0x24, 0x4e, 0x37, 0x49, 0xb5, 0x6e, 0x6b, 0x28, 0x40, 0x47, 0xfb, 0xd4, 0x00, 0x8e, 0x58, 0xc4, 0x0b, 0xca, 0x68, 0x2b, 0xd1, 0x32, 0x21, 0xdd, 0x61, 0xcd, 0x18, 0x48, 0x5c, 0x1f, 0x83, 0x1c, 0x2d, 0xd9, 0xe2, 0x25, 0x25, 0xc1, 0x27, 0xba, 0xb5, 0x6f, 0x49, 0x74, 0x1f, 0x30, 0xf3, 0x9b, 0xae, 0x9f, 0xd7, 0x45, 0x33, 0x66, 0x2b, 0x88, 0x3d, 0xf0, 0x6c, 0x15, 0xbc, 0x67, 0x39, 0x19, 0xb3, 0x6a, 0xbf, 0xcd, 0x48, 0xf0, 0x8c, 0x90, 0xf1, 0xb4, 0x04, 0x29, 0x08, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha3_512_10353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10353_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xe9, 0x7a, 0xe6, 0x6b, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x68, 0xbc, 0x97, 0x26, 0xf0, 0x2d, 0xbf, 0x85, 0x98, 0xa9, 0x8b, 0x3e, 0x50, 0x77, 0xef, 0xf6, 0xf2, 0x49, 0x1e, 0xb6, 0x78, 0xed, 0x04, 0x0f, 0xb3, 0x38, 0xc0, 0x84, 0xa9, 0xea, 0x8a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10353 = { .name = "ecdsa_secp521r1_sha3_512_10353", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10353_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10353_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10353_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10354 for ECDSA, tcId is 400 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10354_pubkey[] = { 0x00, 0xba, 0xe9, 0x18, 0x02, 0xd5, 0x93, 0xac, 0xc9, 0x47, 0x27, 0xe4, 0x6d, 0x1b, 0x77, 0x78, 0x87, 0xbe, 0x8a, 0x82, 0x91, 0xc9, 0x96, 0x89, 0xde, 0x4b, 0xd4, 0xb7, 0x90, 0xb5, 0xd4, 0xf7, 0xab, 0x75, 0x69, 0xf1, 0x67, 0xd6, 0xf5, 0xd2, 0x36, 0xf1, 0x3e, 0xc0, 0x4f, 0xfa, 0x25, 0xe8, 0xa7, 0x67, 0x23, 0xd0, 0x2a, 0x44, 0xab, 0x58, 0x6c, 0xb2, 0xf4, 0xc7, 0x43, 0x3a, 0x27, 0x26, 0x92, 0x81, 0x00, 0x92, 0xd7, 0x56, 0x9c, 0x82, 0x97, 0x89, 0xac, 0x45, 0xf6, 0x25, 0xc7, 0x2d, 0x50, 0xec, 0xaf, 0x38, 0xfc, 0x8f, 0x7e, 0x82, 0xe5, 0xb8, 0x9a, 0x98, 0x6d, 0xcf, 0xc9, 0x12, 0x22, 0x56, 0x09, 0x01, 0x8a, 0x6d, 0x61, 0x8d, 0xf0, 0x87, 0x09, 0x6b, 0x21, 0xc6, 0x7c, 0x00, 0xdb, 0x98, 0x3b, 0xed, 0x0b, 0x0f, 0xbe, 0xba, 0x7a, 0x93, 0x4a, 0xd2, 0x14, 0x9c, 0xfb, 0x27, 0x5c, 0x4d, 0x58, 0x2d, }; static const unsigned char ecdsa_secp521r1_sha3_512_10354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10354_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xae, 0x66, 0xbc, 0xd4, 0xca, 0xe3, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x39, 0x54, 0x21, 0x2f, 0x8b, 0xea, 0x57, 0x8d, 0x93, 0xe6, 0x85, 0xe5, 0xdb, 0xa3, 0x29, 0x81, 0x1b, 0x25, 0x42, 0xbb, 0x39, 0x82, 0x33, 0xe2, 0x94, 0x4b, 0xce, 0xb1, 0x92, 0x63, 0x32, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10354 = { .name = "ecdsa_secp521r1_sha3_512_10354", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10354_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10354_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10354_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10355 for ECDSA, tcId is 401 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10355_pubkey[] = { 0x00, 0xbb, 0x39, 0x4e, 0x65, 0xfc, 0x89, 0xfa, 0xbb, 0x9b, 0x54, 0xd9, 0x7e, 0x4f, 0x61, 0x33, 0xa9, 0x09, 0x1a, 0x74, 0xf0, 0xbd, 0x66, 0xb1, 0xfe, 0x77, 0xb0, 0xd7, 0xca, 0xe1, 0x6e, 0x98, 0xbe, 0xda, 0x19, 0x07, 0xf7, 0x0c, 0x37, 0xab, 0x30, 0x0a, 0xf9, 0xdf, 0xcb, 0xfe, 0x01, 0xd9, 0xaa, 0x43, 0x3e, 0x18, 0x55, 0x15, 0x9b, 0x66, 0x3a, 0x65, 0x3d, 0x97, 0x3c, 0x92, 0xa0, 0xa6, 0xa0, 0x1c, 0x01, 0x59, 0x49, 0x4a, 0xa3, 0xb0, 0x6f, 0x75, 0x8c, 0x0d, 0xf7, 0x0d, 0x62, 0x44, 0xe6, 0x00, 0x15, 0x43, 0xe0, 0x09, 0x2f, 0xe2, 0xe4, 0xd6, 0x92, 0x29, 0x9f, 0xc4, 0x42, 0xa3, 0x0d, 0x37, 0xf8, 0x34, 0xc4, 0x78, 0xb8, 0x4b, 0x58, 0xdd, 0x35, 0x78, 0x30, 0x78, 0x54, 0x04, 0xa3, 0xe0, 0x17, 0x5c, 0xcc, 0x65, 0xe2, 0xe7, 0x7b, 0xcd, 0x37, 0x51, 0xd5, 0x9d, 0x78, 0x81, 0xea, 0x88, 0xc0, 0x77, }; static const unsigned char ecdsa_secp521r1_sha3_512_10355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10355_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x5c, 0xcd, 0x79, 0xa9, 0x95, 0xc6, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0x21, 0xba, 0xdb, 0x58, 0xa5, 0x18, 0xaf, 0xa8, 0x01, 0x0a, 0x82, 0xc0, 0x3c, 0xad, 0x31, 0xfa, 0x94, 0xbb, 0xbd, 0xe9, 0x68, 0x20, 0x16, 0x6d, 0x27, 0xe6, 0x44, 0x93, 0x8e, 0x00, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10355 = { .name = "ecdsa_secp521r1_sha3_512_10355", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10355_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10355_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10355_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10356 for ECDSA, tcId is 402 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10356_pubkey[] = { 0x01, 0x4e, 0x96, 0xe6, 0x22, 0xab, 0x11, 0xd8, 0x43, 0xed, 0x0d, 0xf2, 0x86, 0xc2, 0xa9, 0xfe, 0x40, 0xf2, 0x00, 0x27, 0xba, 0x9a, 0xb3, 0x4c, 0x64, 0x5d, 0xe8, 0x27, 0xd1, 0x86, 0x7f, 0x3e, 0xd4, 0x04, 0x5c, 0x78, 0x1a, 0xe9, 0xd0, 0x94, 0x24, 0xe8, 0xf7, 0x7e, 0xf5, 0x74, 0x22, 0xf5, 0x2b, 0x38, 0xca, 0xa2, 0xb9, 0x99, 0xe6, 0xcf, 0x1e, 0xad, 0x15, 0x7a, 0x88, 0x34, 0xa5, 0x65, 0x56, 0x79, 0x01, 0x1d, 0xb6, 0xf3, 0xc8, 0x19, 0xfe, 0xd7, 0xb7, 0x1d, 0x76, 0x6b, 0x41, 0x90, 0x53, 0x04, 0xe6, 0x1d, 0x9f, 0x19, 0xfc, 0x9a, 0x6c, 0x49, 0x26, 0x7b, 0xf2, 0x18, 0x10, 0x23, 0xe6, 0x67, 0xeb, 0xe3, 0x46, 0x5f, 0x55, 0x21, 0xcb, 0x1a, 0x1d, 0x55, 0xa5, 0xe2, 0x72, 0x2e, 0x70, 0x0c, 0x16, 0x24, 0xdc, 0x2d, 0x4c, 0x96, 0x53, 0xbc, 0xdc, 0xe8, 0xb6, 0xfe, 0x79, 0x3c, 0x56, 0x8b, 0x35, 0xb7, }; static const unsigned char ecdsa_secp521r1_sha3_512_10356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10356_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe1, 0x8d, 0xcc, 0x11, 0xdf, 0xf7, 0x52, 0x62, 0x33, 0xd9, 0x23, 0xa0, 0xb2, 0x02, 0xcb, 0x29, 0xe7, 0x13, 0xf2, 0x2d, 0xe8, 0xbb, 0x6a, 0xb0, 0xa1, 0x28, 0x21, 0xc5, 0xab, 0xbe, 0x3f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10356 = { .name = "ecdsa_secp521r1_sha3_512_10356", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10356_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10356_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10356_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10357 for ECDSA, tcId is 403 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10357_pubkey[] = { 0x00, 0xb7, 0x95, 0x0e, 0xa9, 0xeb, 0xf9, 0xd0, 0x5d, 0x46, 0x0d, 0x45, 0x1d, 0xd2, 0x0d, 0x2b, 0x70, 0x91, 0x6e, 0x25, 0x8f, 0x58, 0xd0, 0xb5, 0x50, 0xe2, 0x15, 0xd1, 0x60, 0xfb, 0x23, 0xbb, 0x56, 0x96, 0xef, 0xc9, 0x45, 0x7c, 0xce, 0xde, 0xdd, 0x93, 0xcf, 0xf5, 0xf4, 0x9e, 0xb2, 0xae, 0x1e, 0x27, 0xe9, 0x3f, 0xe9, 0xf4, 0x63, 0xcd, 0xc7, 0x5f, 0x12, 0xe3, 0x17, 0xbf, 0x69, 0x93, 0x5b, 0x7b, 0x00, 0x25, 0x2c, 0x57, 0xf7, 0x43, 0x8c, 0x12, 0x48, 0x4f, 0xea, 0xb9, 0xe7, 0x81, 0x80, 0x58, 0x82, 0x59, 0xb1, 0x7c, 0xff, 0xe1, 0xf6, 0x13, 0xbd, 0xef, 0x0b, 0xfb, 0x4d, 0xc3, 0x35, 0x84, 0xab, 0x35, 0x66, 0xee, 0xcb, 0xbb, 0x96, 0x26, 0xd6, 0x75, 0x46, 0xb1, 0xb2, 0x46, 0x32, 0x3d, 0x33, 0x17, 0xb7, 0xe6, 0x82, 0x73, 0xfc, 0xc6, 0x05, 0x3e, 0xb1, 0x6f, 0xdd, 0xc0, 0xc5, 0xde, 0x82, 0x95, }; static const unsigned char ecdsa_secp521r1_sha3_512_10357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10357_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x22, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xb9, 0xc4, 0xc3, 0xf7, 0x3c, 0xc8, 0x16, 0x14, 0x3f, 0xac, 0x34, 0x12, 0xb6, 0x2d, 0xe4, 0xc6, 0x3d, 0xb0, 0x8f, 0x8c, 0x57, 0xe4, 0xc5, 0x8c, 0x31, 0xf1, 0xb4, 0x57, 0xca, 0x5e, 0x57, 0xe2, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10357 = { .name = "ecdsa_secp521r1_sha3_512_10357", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10357_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10357_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10357_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10358 for ECDSA, tcId is 404 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10358_pubkey[] = { 0x01, 0xab, 0xab, 0xd5, 0xab, 0xee, 0x5c, 0xc0, 0x82, 0xc9, 0xa4, 0xcd, 0x04, 0x72, 0x18, 0x20, 0x99, 0x8f, 0x21, 0x30, 0x3f, 0x6f, 0xe4, 0x35, 0x66, 0xa8, 0x58, 0x56, 0x3a, 0x23, 0xd8, 0x43, 0x1b, 0xb9, 0xcb, 0xf5, 0xdb, 0x84, 0xb0, 0xbe, 0x4c, 0xe9, 0x5c, 0xc9, 0x62, 0xb7, 0x8c, 0x77, 0x13, 0x37, 0x4a, 0x34, 0x43, 0x5f, 0x84, 0xfb, 0x06, 0x59, 0x84, 0xb9, 0x8f, 0xb2, 0xb4, 0x86, 0xd7, 0x8e, 0x00, 0x0e, 0xb4, 0x91, 0x41, 0x93, 0x02, 0x9b, 0xe3, 0x20, 0x44, 0xed, 0x04, 0x9f, 0x06, 0xd0, 0xfe, 0x4d, 0x7d, 0xb7, 0xc9, 0x93, 0x86, 0x00, 0x23, 0x7d, 0xfa, 0xee, 0x86, 0x43, 0xea, 0x0f, 0x2a, 0x15, 0x7e, 0x57, 0x19, 0x8d, 0x5c, 0xd9, 0x02, 0x0e, 0xd7, 0xc2, 0xac, 0x95, 0x2a, 0x07, 0x2b, 0xd4, 0xe8, 0x2a, 0x21, 0x1e, 0xc1, 0xe2, 0x0f, 0x22, 0xe8, 0x71, 0xb8, 0x15, 0x56, 0xdb, 0x36, 0x1a, }; static const unsigned char ecdsa_secp521r1_sha3_512_10358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10358_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x05, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x29, 0x8e, 0xb5, 0x7e, 0x5a, 0xff, 0x93, 0x43, 0x59, 0x7a, 0x54, 0x2d, 0x31, 0x32, 0xf9, 0xe7, 0x34, 0xfd, 0xc3, 0x05, 0x12, 0x5e, 0x0e, 0xc1, 0x39, 0xc5, 0xf7, 0x80, 0xee, 0x8e, 0x8c, 0xb9, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10358 = { .name = "ecdsa_secp521r1_sha3_512_10358", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10358_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10358_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10358_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10359 for ECDSA, tcId is 405 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10359_pubkey[] = { 0x00, 0x03, 0xb4, 0x06, 0xbd, 0x79, 0x05, 0xcf, 0x18, 0x8d, 0x2e, 0x6e, 0x30, 0x79, 0xdc, 0x66, 0xea, 0xc8, 0x41, 0x1f, 0xbc, 0x6d, 0x10, 0x92, 0xa0, 0x2c, 0xdc, 0x5e, 0x9b, 0x4d, 0x3e, 0xb5, 0x05, 0x4a, 0x10, 0x32, 0xff, 0x2f, 0xff, 0xd1, 0x94, 0x41, 0x3b, 0x2d, 0xbb, 0x95, 0xef, 0x78, 0x26, 0x2c, 0xad, 0x74, 0x91, 0x95, 0x46, 0x5e, 0x1a, 0x52, 0xf1, 0xdc, 0xfa, 0x85, 0x8d, 0xf3, 0xf9, 0x0d, 0x01, 0xca, 0x7a, 0x0d, 0xbf, 0xfb, 0xcf, 0x6d, 0x74, 0x20, 0x9a, 0x0a, 0x33, 0x4d, 0x60, 0x7c, 0x39, 0xc7, 0x9a, 0xba, 0x96, 0x15, 0x2d, 0x32, 0xac, 0x36, 0x93, 0xc4, 0x90, 0xb2, 0xa8, 0x3d, 0x87, 0xb3, 0x04, 0x28, 0xf4, 0x18, 0x79, 0x4b, 0x80, 0xcd, 0xe9, 0x6f, 0xb5, 0x9b, 0x5e, 0x90, 0x30, 0x55, 0x7d, 0x24, 0x11, 0x44, 0x5c, 0x33, 0x74, 0x11, 0x04, 0x7f, 0x1d, 0x62, 0x8a, 0xc2, 0x3e, 0x2b, }; static const unsigned char ecdsa_secp521r1_sha3_512_10359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10359_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x44, 0x45, 0xe1, 0x06, 0x70, 0xed, 0x04, 0x37, 0xc9, 0xdb, 0x41, 0x25, 0xac, 0x41, 0x75, 0xfb, 0xd7, 0x0e, 0x9b, 0xd1, 0x79, 0x9a, 0x85, 0xf4, 0x4c, 0xa0, 0xa8, 0xe6, 0x1a, 0x33, 0x54, 0xe8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10359 = { .name = "ecdsa_secp521r1_sha3_512_10359", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10359_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10359_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10359_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10360 for ECDSA, tcId is 406 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10360_pubkey[] = { 0x00, 0x9f, 0xaf, 0x51, 0xf3, 0x70, 0x94, 0x50, 0x40, 0xe6, 0x60, 0x97, 0x34, 0x44, 0x58, 0x07, 0xa4, 0x2b, 0xfb, 0xd1, 0x1e, 0x24, 0x45, 0x5e, 0x9c, 0x8d, 0xa4, 0x4d, 0xf7, 0xe9, 0x63, 0x7c, 0x76, 0xb3, 0x9b, 0xd8, 0x4d, 0xde, 0x33, 0xbf, 0x2c, 0x66, 0xe3, 0x15, 0x12, 0x4f, 0x64, 0x12, 0xfc, 0x33, 0x90, 0xaa, 0x21, 0x27, 0xd1, 0xd7, 0xc1, 0x80, 0x3e, 0x32, 0xe1, 0x0e, 0x8f, 0x9b, 0xd0, 0xdd, 0x01, 0x89, 0xb5, 0xec, 0xb6, 0x18, 0xbf, 0xd1, 0x6c, 0xc6, 0x7c, 0x67, 0x1c, 0xc6, 0xda, 0x97, 0x24, 0x79, 0x6e, 0x10, 0x35, 0x0f, 0x8a, 0x15, 0xf9, 0xe2, 0x19, 0x2d, 0x8d, 0x32, 0xd2, 0x7e, 0x2b, 0x69, 0x89, 0x7b, 0x5c, 0x61, 0xd3, 0xfb, 0x71, 0xb1, 0xc7, 0x21, 0x46, 0xd3, 0x1d, 0xce, 0xca, 0x0e, 0x42, 0x04, 0xab, 0xb2, 0x40, 0x4e, 0x81, 0xac, 0x66, 0x4c, 0xa7, 0x31, 0xfe, 0xc6, 0xfe, 0x80, }; static const unsigned char ecdsa_secp521r1_sha3_512_10360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10360_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4f, 0xa6, 0xdb, 0xdc, 0xd9, 0x14, 0x84, 0xeb, 0xc0, 0xd5, 0x21, 0x56, 0x9e, 0x4c, 0x5e, 0xfb, 0x25, 0x91, 0x0b, 0x1f, 0x0d, 0xde, 0xf1, 0x9d, 0x04, 0x10, 0xc5, 0x0c, 0x73, 0xe6, 0x8d, 0xb9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10360 = { .name = "ecdsa_secp521r1_sha3_512_10360", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10360_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10360_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10360_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10361 for ECDSA, tcId is 407 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10361_pubkey[] = { 0x00, 0xb9, 0x9e, 0xf2, 0x2b, 0xb5, 0x8c, 0xc2, 0x5e, 0xdf, 0xf6, 0xc1, 0x97, 0x31, 0x5f, 0x41, 0x8d, 0xd6, 0x6e, 0xfe, 0x28, 0xbd, 0xe5, 0xe2, 0x5b, 0x3b, 0x69, 0x6d, 0x6f, 0x9d, 0xb1, 0xb1, 0xa0, 0x17, 0xb4, 0xf2, 0x69, 0xaf, 0x40, 0x7b, 0x8b, 0x60, 0x95, 0x06, 0x08, 0x0f, 0x29, 0xea, 0xed, 0xd4, 0xcf, 0x70, 0x87, 0xe0, 0x0b, 0x59, 0x9d, 0xc5, 0xe4, 0xd2, 0xa8, 0x38, 0x88, 0x67, 0x20, 0x4a, 0x01, 0xb9, 0x99, 0xff, 0xdc, 0x2b, 0x3c, 0x58, 0x19, 0x36, 0x6c, 0x92, 0x95, 0xe1, 0xdf, 0x5c, 0x64, 0x68, 0xe7, 0x03, 0x96, 0xc7, 0xfa, 0x8c, 0x9a, 0x92, 0x6c, 0xae, 0xbe, 0x6a, 0x11, 0x45, 0xb1, 0x15, 0xc1, 0x07, 0xc8, 0x7d, 0x10, 0x6f, 0x38, 0x4f, 0x28, 0x3f, 0xe2, 0xd2, 0xae, 0xc6, 0x5b, 0x20, 0x27, 0x45, 0x11, 0x5a, 0x14, 0xee, 0x50, 0x69, 0x20, 0xd0, 0x2a, 0x64, 0x5e, 0xba, 0xa7, 0xc5, }; static const unsigned char ecdsa_secp521r1_sha3_512_10361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10361_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa4, 0xfc, 0x31, 0x32, 0x2e, 0x69, 0xda, 0x41, 0x16, 0x2a, 0x76, 0xab, 0xf3, 0xa1, 0xb4, 0x50, 0x7a, 0xe6, 0x60, 0x74, 0x63, 0x34, 0x46, 0xf2, 0x59, 0x66, 0x1a, 0x61, 0xc9, 0x3b, 0xe3, 0x0e, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10361 = { .name = "ecdsa_secp521r1_sha3_512_10361", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10361_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10361_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10361_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10362 for ECDSA, tcId is 408 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10362_pubkey[] = { 0x01, 0xb2, 0x61, 0xcd, 0x6f, 0x28, 0x71, 0x05, 0x80, 0x4b, 0xc2, 0x88, 0x5d, 0x5a, 0x59, 0xe7, 0x91, 0x71, 0x2a, 0xb6, 0xb9, 0xf1, 0x4f, 0xe6, 0xff, 0x71, 0x2f, 0x5f, 0x4d, 0xd6, 0x93, 0xc7, 0xb0, 0x1c, 0x27, 0x21, 0x56, 0xf8, 0x95, 0xb8, 0x4f, 0x74, 0xc6, 0x71, 0x89, 0x26, 0xba, 0xa5, 0xf5, 0x5a, 0x73, 0xc2, 0x35, 0x35, 0x17, 0x46, 0xec, 0x99, 0xf0, 0x89, 0x8b, 0xfa, 0xa2, 0x4b, 0xb4, 0xd0, 0x01, 0x4b, 0x85, 0x53, 0x67, 0xab, 0xf6, 0xf7, 0x42, 0x97, 0x6f, 0xf4, 0x9e, 0x83, 0x46, 0x12, 0x54, 0x4b, 0xc9, 0x83, 0xa8, 0x42, 0xe5, 0x6e, 0x0d, 0xc9, 0xcf, 0xf9, 0x28, 0x9c, 0x64, 0xf4, 0x0e, 0xfe, 0x35, 0x0d, 0xc6, 0x30, 0x1f, 0x84, 0x8e, 0xd7, 0xc7, 0x41, 0xd3, 0xb9, 0xce, 0x82, 0x4e, 0xbc, 0x77, 0x9f, 0xd1, 0xe6, 0xc0, 0x68, 0xcc, 0x77, 0xed, 0xc0, 0x09, 0xae, 0xa1, 0x66, 0x65, 0x92, }; static const unsigned char ecdsa_secp521r1_sha3_512_10362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10362_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10362 = { .name = "ecdsa_secp521r1_sha3_512_10362", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10362_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10362_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10362_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 408 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10363 for ECDSA, tcId is 409 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10363_pubkey[] = { 0x00, 0x3f, 0x64, 0x75, 0x30, 0x37, 0x19, 0xae, 0x52, 0xbb, 0xd2, 0xbb, 0x46, 0x06, 0xf8, 0xdc, 0xb8, 0x62, 0xcb, 0xf3, 0x8b, 0xb8, 0x54, 0x5b, 0x7c, 0x07, 0x59, 0xd6, 0xbd, 0x83, 0x55, 0xf2, 0x60, 0xe1, 0x04, 0x59, 0xf7, 0x88, 0xb3, 0x19, 0xdf, 0x20, 0x3c, 0x3d, 0x41, 0x55, 0x8f, 0xd6, 0x1a, 0x17, 0x70, 0xbc, 0xcd, 0xaf, 0xb3, 0x55, 0x86, 0x10, 0x64, 0xac, 0xb5, 0xc1, 0x9e, 0x02, 0x21, 0x65, 0x01, 0x14, 0x23, 0xd9, 0xb4, 0x72, 0xd3, 0x1f, 0xaa, 0xff, 0xdf, 0xbd, 0x6a, 0x3e, 0x83, 0xf7, 0xc8, 0xe7, 0x9e, 0xf1, 0xbe, 0xd3, 0x5a, 0x61, 0x35, 0xab, 0xe9, 0x3e, 0x39, 0x94, 0xe1, 0x73, 0x21, 0xc2, 0xe8, 0xee, 0x62, 0x68, 0xb1, 0x76, 0x7c, 0x29, 0x67, 0x1a, 0x43, 0xe5, 0xbb, 0x0d, 0x99, 0x75, 0x1e, 0x13, 0x79, 0x37, 0xa1, 0xdb, 0x49, 0x58, 0xa3, 0xb2, 0x9c, 0x3a, 0xd7, 0x6c, 0xac, 0x59, }; static const unsigned char ecdsa_secp521r1_sha3_512_10363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10363_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x34, 0x6c, 0xc7, 0xd4, 0x83, 0x9b, 0x77, 0xf9, 0xf4, 0x87, 0xc7, 0xe7, 0xf2, 0x84, 0x1c, 0x5b, 0x7d, 0x05, 0xf9, 0x66, 0xf3, 0xbd, 0xe2, 0x8f, 0x1f, 0xa0, 0x80, 0xce, 0x40, 0x03, 0x7a, 0x74, 0xe3, 0x00, 0x1a, 0x2b, 0x00, 0xbd, 0x39, 0xee, 0x4c, 0x93, 0x07, 0x2e, 0x99, 0x63, 0x72, 0x49, 0x41, 0x38, 0x3c, 0xf0, 0x81, 0x2c, 0x02, 0xd1, 0xc8, 0x38, 0xad, 0x45, 0x02, 0xa1, 0x2c, 0x61, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10363 = { .name = "ecdsa_secp521r1_sha3_512_10363", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10363_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10363_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10363_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 409 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10364 for ECDSA, tcId is 410 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10364_pubkey[] = { 0x00, 0xee, 0x03, 0x0c, 0xdb, 0x40, 0xab, 0xf7, 0x07, 0x26, 0x86, 0x66, 0x81, 0xf7, 0xb7, 0xfe, 0xdc, 0x53, 0x41, 0x90, 0x92, 0x9c, 0x05, 0xa6, 0x50, 0xbb, 0x92, 0x8b, 0x89, 0x4a, 0x5b, 0xbf, 0xe9, 0x57, 0x7e, 0xea, 0x83, 0xc6, 0x33, 0x1a, 0x79, 0x6f, 0xa2, 0x7e, 0xd9, 0xfa, 0xc9, 0x5d, 0x9e, 0xca, 0xcd, 0xfe, 0xf6, 0xd6, 0x1c, 0x92, 0x55, 0x02, 0xb0, 0xaf, 0xdd, 0xc6, 0x71, 0x46, 0x35, 0x49, 0x01, 0x55, 0x60, 0x6d, 0xd4, 0xca, 0xb1, 0x93, 0x30, 0xc5, 0x7c, 0x2e, 0xe7, 0x40, 0xcd, 0x9c, 0x7c, 0x88, 0xbd, 0x88, 0xd9, 0x5f, 0x84, 0x0f, 0x31, 0x5d, 0x52, 0x53, 0x79, 0xdf, 0xeb, 0x7e, 0xa9, 0xbd, 0x36, 0x77, 0xb2, 0x18, 0x5b, 0x92, 0x95, 0x7f, 0x37, 0x43, 0x17, 0xcc, 0x61, 0x24, 0xaa, 0xcc, 0x87, 0x08, 0x07, 0x5c, 0x4c, 0x05, 0xc9, 0x5c, 0xbb, 0xc3, 0x55, 0xbd, 0x69, 0x2c, 0x37, 0x08, }; static const unsigned char ecdsa_secp521r1_sha3_512_10364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10364_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0x3e, 0xe5, 0xa0, 0xa5, 0x44, 0xb0, 0x84, 0x21, 0x34, 0x62, 0x96, 0x40, 0xad, 0xf5, 0xf0, 0x63, 0x70, 0x87, 0xb0, 0x4a, 0x44, 0x2b, 0x1e, 0x6a, 0x22, 0x55, 0x5d, 0xc1, 0xd8, 0xb9, 0x3f, 0x87, 0x84, 0xf1, 0xdd, 0xd0, 0xcf, 0x90, 0xf7, 0x59, 0x44, 0xcc, 0x2c, 0xd7, 0xae, 0x37, 0x3e, 0x5c, 0x2b, 0xac, 0x35, 0x6a, 0x60, 0xff, 0x9d, 0x08, 0xad, 0xfc, 0xdb, 0xa3, 0xfa, 0x1b, 0x7a, 0x9d, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10364 = { .name = "ecdsa_secp521r1_sha3_512_10364", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10364_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10364_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10364_sig, .siglen = 132, .result = 1, .comment = "point duplication during verification, tcId is 410 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10365 for ECDSA, tcId is 411 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10365_pubkey[] = { 0x00, 0xee, 0x03, 0x0c, 0xdb, 0x40, 0xab, 0xf7, 0x07, 0x26, 0x86, 0x66, 0x81, 0xf7, 0xb7, 0xfe, 0xdc, 0x53, 0x41, 0x90, 0x92, 0x9c, 0x05, 0xa6, 0x50, 0xbb, 0x92, 0x8b, 0x89, 0x4a, 0x5b, 0xbf, 0xe9, 0x57, 0x7e, 0xea, 0x83, 0xc6, 0x33, 0x1a, 0x79, 0x6f, 0xa2, 0x7e, 0xd9, 0xfa, 0xc9, 0x5d, 0x9e, 0xca, 0xcd, 0xfe, 0xf6, 0xd6, 0x1c, 0x92, 0x55, 0x02, 0xb0, 0xaf, 0xdd, 0xc6, 0x71, 0x46, 0x35, 0x49, 0x00, 0xaa, 0x9f, 0x92, 0x2b, 0x35, 0x4e, 0x6c, 0xcf, 0x3a, 0x83, 0xd1, 0x18, 0xbf, 0x32, 0x63, 0x83, 0x77, 0x42, 0x77, 0x26, 0xa0, 0x7b, 0xf0, 0xce, 0xa2, 0xad, 0xac, 0x86, 0x20, 0x14, 0x81, 0x56, 0x42, 0xc9, 0x88, 0x4d, 0xe7, 0xa4, 0x6d, 0x6a, 0x80, 0xc8, 0xbc, 0xe8, 0x33, 0x9e, 0xdb, 0x55, 0x33, 0x78, 0xf7, 0xf8, 0xa3, 0xb3, 0xfa, 0x36, 0xa3, 0x44, 0x3c, 0xaa, 0x42, 0x96, 0xd3, 0xc8, 0xf7, }; static const unsigned char ecdsa_secp521r1_sha3_512_10365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10365_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0x3e, 0xe5, 0xa0, 0xa5, 0x44, 0xb0, 0x84, 0x21, 0x34, 0x62, 0x96, 0x40, 0xad, 0xf5, 0xf0, 0x63, 0x70, 0x87, 0xb0, 0x4a, 0x44, 0x2b, 0x1e, 0x6a, 0x22, 0x55, 0x5d, 0xc1, 0xd8, 0xb9, 0x3f, 0x87, 0x84, 0xf1, 0xdd, 0xd0, 0xcf, 0x90, 0xf7, 0x59, 0x44, 0xcc, 0x2c, 0xd7, 0xae, 0x37, 0x3e, 0x5c, 0x2b, 0xac, 0x35, 0x6a, 0x60, 0xff, 0x9d, 0x08, 0xad, 0xfc, 0xdb, 0xa3, 0xfa, 0x1b, 0x7a, 0x9d, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10365 = { .name = "ecdsa_secp521r1_sha3_512_10365", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10365_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10365_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10365_sig, .siglen = 132, .result = -1, .comment = "duplication bug, tcId is 411 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10366 for ECDSA, tcId is 412 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10366_pubkey[] = { 0x00, 0xff, 0x92, 0x8f, 0x93, 0xa6, 0x54, 0xfc, 0xa5, 0xdb, 0x79, 0x15, 0x8b, 0xf8, 0xa1, 0x69, 0x60, 0xb7, 0x77, 0x29, 0xb0, 0x66, 0x3e, 0xb7, 0x2f, 0x31, 0x90, 0x54, 0xd4, 0x53, 0xc1, 0x71, 0x79, 0x4e, 0x66, 0xfa, 0x10, 0x43, 0x8b, 0xeb, 0x55, 0x41, 0x6b, 0xc8, 0x96, 0x63, 0xc8, 0xa4, 0xd2, 0x3c, 0x64, 0x54, 0x17, 0xf7, 0xa3, 0xd2, 0x3e, 0xc8, 0x83, 0x58, 0xd6, 0x74, 0xee, 0x7c, 0x50, 0xa7, 0x01, 0xea, 0x26, 0xdd, 0x23, 0xb0, 0xb8, 0x78, 0x12, 0x5c, 0x75, 0xe3, 0xa5, 0x24, 0x80, 0x1b, 0x4b, 0x58, 0xd0, 0xeb, 0x75, 0x13, 0xb3, 0xae, 0x7b, 0x8b, 0x60, 0x80, 0xa2, 0xf2, 0xb9, 0x28, 0x6b, 0xfa, 0xe2, 0x56, 0xb5, 0xb6, 0x57, 0x1e, 0xc3, 0xd7, 0x2f, 0xa8, 0x14, 0xaa, 0x1d, 0x02, 0xf1, 0x61, 0x05, 0x29, 0xc4, 0x1a, 0x68, 0xcb, 0xaf, 0x78, 0x78, 0x37, 0x38, 0xbf, 0x96, 0x1e, 0x36, 0x81, }; static const unsigned char ecdsa_secp521r1_sha3_512_10366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10366_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10366 = { .name = "ecdsa_secp521r1_sha3_512_10366", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10366_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10366_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10366_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 412 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10367 for ECDSA, tcId is 413 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10367_pubkey[] = { 0x00, 0x19, 0xeb, 0x6b, 0x28, 0xff, 0x90, 0xf9, 0xd4, 0x98, 0x76, 0x69, 0x18, 0x6e, 0xcf, 0xd8, 0x4e, 0xe2, 0x83, 0x25, 0x83, 0x14, 0x04, 0xd2, 0xbf, 0x61, 0xd3, 0x1a, 0x8f, 0xce, 0x2f, 0x79, 0x43, 0x5e, 0x67, 0x6d, 0x2a, 0xd0, 0x94, 0x98, 0xf8, 0x13, 0xbc, 0xf3, 0x43, 0xe9, 0x29, 0x20, 0x5b, 0x4c, 0x39, 0x41, 0xe5, 0xd9, 0xd1, 0xcd, 0x18, 0xc0, 0xf3, 0x98, 0xb1, 0xe6, 0xdd, 0xa0, 0x88, 0x91, 0x01, 0x53, 0xf6, 0xa8, 0xb6, 0x06, 0xb9, 0x6f, 0xa0, 0x17, 0x8a, 0xf7, 0x0d, 0x8d, 0x59, 0x1a, 0x28, 0x25, 0xfe, 0xd4, 0xb6, 0xfb, 0xd2, 0x3e, 0x37, 0x66, 0x6f, 0x8a, 0x25, 0xdf, 0x1d, 0x37, 0xb7, 0xd0, 0x8c, 0xd0, 0xed, 0x36, 0x7e, 0x23, 0xe9, 0x71, 0x12, 0x37, 0x1c, 0x8e, 0xa0, 0xd7, 0x37, 0xb6, 0xf2, 0xb1, 0x3a, 0x19, 0xab, 0xf6, 0xa2, 0x35, 0x9f, 0xd0, 0x55, 0xd1, 0x0c, 0x4e, 0x0d, 0x89, }; static const unsigned char ecdsa_secp521r1_sha3_512_10367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10367_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10367 = { .name = "ecdsa_secp521r1_sha3_512_10367", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10367_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10367_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10367_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 413 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10368 for ECDSA, tcId is 414 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10368_pubkey[] = { 0x00, 0xc2, 0x75, 0x85, 0xd9, 0xee, 0xbf, 0x4e, 0x89, 0x07, 0xb7, 0x99, 0xc9, 0x6e, 0xf0, 0x91, 0x59, 0x53, 0xb2, 0xad, 0x36, 0xbf, 0x45, 0x0e, 0x01, 0x88, 0x62, 0x06, 0x2c, 0x17, 0x0e, 0x2f, 0xa5, 0x11, 0x0f, 0x4b, 0x04, 0xf1, 0x72, 0xc3, 0xdf, 0xf5, 0xf6, 0xbc, 0x5d, 0x75, 0x6c, 0xa3, 0xe9, 0x1f, 0xdc, 0x40, 0x8b, 0x57, 0x9c, 0x87, 0x0d, 0xf2, 0xb0, 0x2a, 0x09, 0xf4, 0x3d, 0xb7, 0xca, 0x16, 0x00, 0x8d, 0x71, 0x3c, 0x42, 0xd9, 0xf1, 0xd9, 0xb7, 0xb0, 0x9e, 0x02, 0x53, 0xbf, 0xbc, 0x1c, 0xe8, 0x8f, 0x75, 0x79, 0x98, 0x62, 0x10, 0xf7, 0xa8, 0x28, 0x10, 0x09, 0x81, 0x7c, 0x16, 0x3c, 0xb3, 0x6b, 0x6e, 0x94, 0x0a, 0xcc, 0x38, 0xe5, 0x3a, 0x88, 0xef, 0xdc, 0x34, 0x98, 0x2f, 0x39, 0xd7, 0x85, 0x05, 0x4a, 0x48, 0xd0, 0x6f, 0xac, 0xf3, 0xeb, 0xe4, 0x55, 0xda, 0xc6, 0x83, 0x3b, 0x52, 0x7c, }; static const unsigned char ecdsa_secp521r1_sha3_512_10368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10368_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10368 = { .name = "ecdsa_secp521r1_sha3_512_10368", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10368_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10368_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10368_sig, .siglen = 132, .result = -1, .comment = "comparison with point at infinity , tcId is 414 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10369 for ECDSA, tcId is 415 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10369_pubkey[] = { 0x00, 0x7d, 0xa8, 0xb5, 0x70, 0xba, 0xca, 0xad, 0x47, 0xb6, 0xc1, 0xc8, 0x79, 0x34, 0xab, 0x45, 0x42, 0xed, 0x86, 0x29, 0x30, 0x3b, 0x2f, 0xe2, 0x16, 0x7f, 0x45, 0x2f, 0xcd, 0x04, 0x51, 0x99, 0x56, 0x19, 0xfd, 0x17, 0x5b, 0x4b, 0x4d, 0x03, 0x76, 0x69, 0x01, 0xbe, 0x3b, 0xaa, 0xd5, 0xaf, 0xb8, 0x7b, 0xa3, 0x10, 0x45, 0x84, 0xcd, 0xeb, 0xaa, 0xe6, 0xdf, 0x65, 0x03, 0xc1, 0x8a, 0xf7, 0x07, 0x93, 0x00, 0x6b, 0x2f, 0x42, 0xd5, 0xf7, 0xb3, 0xa6, 0x26, 0xd2, 0x74, 0x5c, 0xb5, 0x97, 0xea, 0x86, 0xc9, 0x5b, 0xf3, 0x7c, 0x06, 0x09, 0x71, 0x6e, 0x18, 0x6d, 0x3b, 0x88, 0x82, 0x54, 0x9d, 0xb5, 0xc8, 0x47, 0x6b, 0x73, 0x74, 0x21, 0x15, 0x57, 0x06, 0xd6, 0xf8, 0xb7, 0x53, 0x32, 0x37, 0x00, 0x49, 0x2c, 0xec, 0x0c, 0x8e, 0xb0, 0x7d, 0x1f, 0x0e, 0xdd, 0x34, 0x1a, 0xa0, 0xa5, 0x0a, 0x5f, 0x29, 0xd6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10369_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10369 = { .name = "ecdsa_secp521r1_sha3_512_10369", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10369_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10369_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10369_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 415 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10370 for ECDSA, tcId is 416 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10370_pubkey[] = { 0x00, 0x21, 0x66, 0x4b, 0x32, 0xe1, 0x3f, 0x60, 0x54, 0x95, 0xab, 0xdc, 0x32, 0x09, 0x4c, 0x61, 0xe7, 0x83, 0x70, 0x64, 0x2b, 0x4a, 0x8e, 0x66, 0xe3, 0x16, 0xae, 0x85, 0x0d, 0x32, 0x10, 0x79, 0x52, 0x19, 0x8f, 0xf9, 0xe0, 0x29, 0x77, 0x70, 0x66, 0xb6, 0x0b, 0x61, 0xb8, 0x73, 0x3e, 0xa8, 0x74, 0x95, 0x64, 0x4c, 0xc7, 0x90, 0xdd, 0x7b, 0x15, 0xed, 0x9e, 0x95, 0x2a, 0xa7, 0x09, 0xd4, 0x99, 0x23, 0x00, 0x52, 0xca, 0x4e, 0xea, 0x9d, 0x84, 0xe0, 0x7a, 0xde, 0x2b, 0xa1, 0x1b, 0x1f, 0x7c, 0xeb, 0x47, 0xd6, 0xb5, 0xbd, 0xc6, 0xdd, 0xa6, 0xc1, 0xa9, 0x03, 0xcc, 0x2c, 0xca, 0xb5, 0x2c, 0x4b, 0x2d, 0x43, 0x11, 0xf2, 0x87, 0x44, 0xcf, 0x6e, 0x66, 0x0e, 0xf8, 0x67, 0x75, 0xf7, 0x6f, 0xc0, 0x47, 0xad, 0x1c, 0x08, 0xc1, 0x0f, 0xab, 0x72, 0xd7, 0xab, 0x61, 0xf5, 0xd8, 0x3d, 0x01, 0xea, 0xe7, 0x95, }; static const unsigned char ecdsa_secp521r1_sha3_512_10370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10370_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10370 = { .name = "ecdsa_secp521r1_sha3_512_10370", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10370_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10370_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10370_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10371 for ECDSA, tcId is 417 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10371_pubkey[] = { 0x01, 0x97, 0x98, 0x8b, 0x90, 0xbc, 0x98, 0xd0, 0x4b, 0xfd, 0xd1, 0xaf, 0xf2, 0x4c, 0xf2, 0x05, 0x28, 0xe2, 0x2f, 0xee, 0x17, 0x2b, 0xa9, 0x43, 0xd8, 0x8b, 0x8e, 0x1b, 0x1c, 0xd5, 0x9e, 0x32, 0xec, 0x51, 0x83, 0x8f, 0xdd, 0x22, 0xe6, 0xca, 0xbb, 0xa0, 0xb2, 0xe8, 0x7f, 0x11, 0x53, 0xb9, 0xba, 0x52, 0x1d, 0x86, 0x30, 0x50, 0xd1, 0x4d, 0x83, 0x8e, 0x3f, 0x77, 0x56, 0x8d, 0xaf, 0x73, 0x50, 0x9a, 0x00, 0x46, 0xa0, 0x63, 0x53, 0x8f, 0xa6, 0xec, 0xee, 0xa0, 0x45, 0xd0, 0xf6, 0xf2, 0xf9, 0xeb, 0xeb, 0xd5, 0x18, 0x7e, 0x1e, 0xbc, 0xbb, 0x2d, 0x76, 0x2d, 0x89, 0x76, 0x4f, 0xa1, 0x7e, 0x15, 0x99, 0x19, 0x35, 0xb5, 0x7c, 0x60, 0x6d, 0x6e, 0x0e, 0x14, 0x73, 0x83, 0x02, 0x07, 0xcc, 0xdc, 0xe9, 0xfc, 0x7a, 0x56, 0x44, 0xb9, 0xc5, 0x59, 0xec, 0x54, 0xf0, 0x78, 0xf4, 0xef, 0x53, 0x04, 0x9c, 0x3a, }; static const unsigned char ecdsa_secp521r1_sha3_512_10371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10371_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10371 = { .name = "ecdsa_secp521r1_sha3_512_10371", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10371_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10371_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10371_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10372 for ECDSA, tcId is 418 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10372_pubkey[] = { 0x01, 0x6a, 0xc1, 0xf5, 0xd9, 0x68, 0xbe, 0x27, 0x9c, 0x2f, 0xe8, 0x92, 0xca, 0xc7, 0x05, 0x74, 0x29, 0x77, 0x58, 0xdf, 0xe1, 0x4e, 0x17, 0x7f, 0xc5, 0x15, 0x6c, 0x72, 0x6c, 0x27, 0xa3, 0x29, 0x22, 0x7a, 0xdf, 0x29, 0xec, 0x4d, 0xf4, 0x35, 0xf6, 0x8d, 0xf6, 0x68, 0x0f, 0xad, 0x99, 0x3c, 0xb8, 0x41, 0x78, 0x16, 0x40, 0x66, 0x44, 0xed, 0xa7, 0x5c, 0x0d, 0x87, 0x1d, 0x24, 0xbc, 0x98, 0x2f, 0xee, 0x01, 0xc4, 0x57, 0xad, 0x39, 0xb1, 0x1f, 0xd7, 0xba, 0xb5, 0x3b, 0xfa, 0x64, 0x01, 0x9e, 0x04, 0x64, 0xb8, 0x43, 0x00, 0xa2, 0x7e, 0x5a, 0xd8, 0xad, 0x67, 0x6e, 0x0d, 0x57, 0xf6, 0xf4, 0xc1, 0x98, 0xc6, 0x4f, 0x9c, 0xad, 0x7d, 0xc9, 0xad, 0x64, 0xa7, 0xe7, 0xd3, 0x4c, 0x1f, 0x81, 0xcb, 0x9e, 0x11, 0x23, 0x24, 0x43, 0x56, 0x1a, 0xcf, 0xe4, 0x4c, 0x76, 0x76, 0xf8, 0x34, 0x7a, 0x43, 0x8e, 0x06, }; static const unsigned char ecdsa_secp521r1_sha3_512_10372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10372_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10372 = { .name = "ecdsa_secp521r1_sha3_512_10372", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10372_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10372_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10372_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 418 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10373 for ECDSA, tcId is 419 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10373_pubkey[] = { 0x00, 0x6e, 0x11, 0xf2, 0xd1, 0xf8, 0x55, 0xbb, 0x6e, 0x5c, 0x8d, 0xac, 0xc1, 0x02, 0x56, 0x78, 0x8e, 0xea, 0x73, 0x66, 0x73, 0x62, 0xa4, 0xce, 0x77, 0xa9, 0x56, 0x30, 0xa7, 0xad, 0xeb, 0xcd, 0xfe, 0x57, 0x0c, 0x9e, 0xeb, 0x3d, 0x2c, 0x48, 0x37, 0xec, 0x63, 0xbd, 0x60, 0x20, 0x42, 0x66, 0x00, 0x39, 0x69, 0x22, 0xeb, 0x21, 0x08, 0x19, 0xac, 0xdf, 0x89, 0xc6, 0x9d, 0x37, 0x92, 0xfe, 0x23, 0x2d, 0x00, 0x96, 0xef, 0xfa, 0x4c, 0x75, 0x5e, 0xf7, 0x51, 0x47, 0x84, 0x1a, 0x90, 0x28, 0x9b, 0x63, 0x93, 0x0e, 0xa6, 0x96, 0xe2, 0x8a, 0x39, 0x27, 0x83, 0x74, 0x94, 0x9e, 0x76, 0x56, 0xf2, 0xf7, 0x6f, 0xbb, 0x66, 0x85, 0x71, 0xe0, 0x0f, 0x81, 0x88, 0x53, 0x31, 0xb5, 0xc9, 0xf8, 0xad, 0x4e, 0x61, 0x44, 0x6d, 0x14, 0xe2, 0xd0, 0xcf, 0xd5, 0x84, 0xc9, 0x2e, 0x2f, 0x9f, 0x75, 0x57, 0x5a, 0xce, 0xf2, }; static const unsigned char ecdsa_secp521r1_sha3_512_10373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10373_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10373 = { .name = "ecdsa_secp521r1_sha3_512_10373", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10373_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10373_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10373_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 419 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10374 for ECDSA, tcId is 420 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10374_pubkey[] = { 0x00, 0x91, 0x45, 0x4e, 0xa0, 0x0d, 0xf3, 0x32, 0xbf, 0x33, 0xfe, 0x18, 0xde, 0xda, 0xa2, 0x0a, 0xba, 0xa3, 0x30, 0xd9, 0x5c, 0x47, 0x58, 0xc7, 0x85, 0x18, 0x62, 0x37, 0xf8, 0xe6, 0x9d, 0x71, 0x35, 0x63, 0xa4, 0x57, 0xb4, 0xfa, 0x28, 0x86, 0x3c, 0x0e, 0xa1, 0xf8, 0x22, 0xf9, 0xad, 0x6f, 0x3b, 0x67, 0x8a, 0x85, 0x44, 0xa3, 0xc6, 0x33, 0x79, 0x97, 0xc9, 0x62, 0xf6, 0x39, 0x43, 0xc1, 0xe1, 0xb3, 0x01, 0xe1, 0x20, 0xa9, 0xb5, 0xaa, 0x72, 0xa9, 0x99, 0x89, 0x01, 0xe8, 0xdb, 0x2c, 0xed, 0xff, 0x45, 0x60, 0x71, 0xce, 0x17, 0x02, 0x40, 0x2d, 0x92, 0x92, 0x04, 0x1b, 0x9b, 0xa4, 0xce, 0x3b, 0xeb, 0xd4, 0x49, 0x8b, 0xaa, 0x97, 0x08, 0xb7, 0x33, 0x05, 0xee, 0xec, 0x47, 0x22, 0xc9, 0x78, 0x2d, 0x5b, 0x63, 0x25, 0x9f, 0x9a, 0x30, 0xc8, 0x21, 0xd1, 0xeb, 0x03, 0x51, 0x36, 0x00, 0xa4, 0x5f, 0x8f, }; static const unsigned char ecdsa_secp521r1_sha3_512_10374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10374_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10374 = { .name = "ecdsa_secp521r1_sha3_512_10374", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10374_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10374_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10374_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 420 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10375 for ECDSA, tcId is 421 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10375_pubkey[] = { 0x00, 0xd8, 0x92, 0x6b, 0x40, 0x5b, 0xe4, 0x62, 0x26, 0xd5, 0x5f, 0x0c, 0x50, 0xc9, 0xfe, 0x79, 0x82, 0xea, 0x9a, 0x4c, 0xe6, 0xdf, 0xed, 0xb7, 0x45, 0xcd, 0x71, 0x69, 0x12, 0xc6, 0x00, 0x8b, 0xf0, 0xff, 0x37, 0x05, 0xd5, 0x64, 0x0e, 0xdf, 0x04, 0xdc, 0x71, 0x34, 0x6b, 0x60, 0x86, 0xb7, 0xba, 0xe4, 0x76, 0xee, 0x70, 0x29, 0x08, 0xbb, 0x3f, 0x9a, 0x58, 0x15, 0x93, 0x1e, 0x3d, 0x68, 0x01, 0x89, 0x01, 0x16, 0xb4, 0x5c, 0xf3, 0x73, 0x9e, 0x7f, 0x3d, 0x69, 0x62, 0x9e, 0x10, 0xf1, 0x9f, 0x9f, 0x53, 0xc2, 0xd0, 0x1f, 0x22, 0x84, 0xb6, 0xe9, 0x8d, 0xb0, 0xcd, 0x49, 0xf4, 0x58, 0x87, 0x17, 0x0c, 0xa0, 0x65, 0x6d, 0x1c, 0x75, 0xd4, 0x50, 0x58, 0x36, 0xae, 0x30, 0x87, 0xe3, 0xc1, 0x18, 0x71, 0x58, 0xa2, 0x77, 0x4c, 0x46, 0x91, 0x13, 0x61, 0xa3, 0x4e, 0x5c, 0xd1, 0xe7, 0xdd, 0x9e, 0x47, 0x34, }; static const unsigned char ecdsa_secp521r1_sha3_512_10375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10375_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10375 = { .name = "ecdsa_secp521r1_sha3_512_10375", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10375_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10375_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10375_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 421 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10376 for ECDSA, tcId is 422 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10376_pubkey[] = { 0x01, 0x65, 0x59, 0xfc, 0x45, 0x80, 0x18, 0x6d, 0x7c, 0x1e, 0x3e, 0x05, 0xe7, 0x53, 0x05, 0xc6, 0xda, 0x33, 0x6b, 0xc3, 0xc9, 0xaa, 0x8f, 0x99, 0x9c, 0xba, 0xfc, 0x71, 0x9d, 0x6f, 0x4d, 0xbf, 0x62, 0xef, 0x91, 0xf1, 0x85, 0x9b, 0x2f, 0x61, 0x46, 0x3a, 0x77, 0xe4, 0x37, 0x05, 0x20, 0x8e, 0x34, 0xd6, 0x48, 0x41, 0x63, 0x49, 0xe4, 0x74, 0x1e, 0xa8, 0xe5, 0xe7, 0x79, 0xa3, 0x7b, 0xd4, 0xa5, 0xbe, 0x00, 0xa8, 0x08, 0xce, 0x49, 0x8a, 0xfd, 0xe5, 0x8c, 0xfb, 0xbf, 0x5d, 0xfb, 0x77, 0xe6, 0x07, 0xce, 0x29, 0x4c, 0xe0, 0xd0, 0x36, 0x87, 0x3e, 0xad, 0x04, 0xc0, 0x8d, 0x5f, 0xd1, 0xfd, 0x5d, 0x44, 0xfc, 0xf6, 0x7e, 0x68, 0x0d, 0x77, 0x72, 0x7a, 0xad, 0x68, 0x2a, 0x7a, 0x41, 0x80, 0x65, 0xe2, 0x6b, 0x2a, 0xea, 0xe1, 0x75, 0x23, 0xcf, 0xbf, 0x50, 0xb0, 0xc1, 0x78, 0x69, 0x3e, 0xb3, 0x53, 0x73, }; static const unsigned char ecdsa_secp521r1_sha3_512_10376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10376_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10376 = { .name = "ecdsa_secp521r1_sha3_512_10376", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10376_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10376_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10376_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10377 for ECDSA, tcId is 423 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10377_pubkey[] = { 0x00, 0x1c, 0x31, 0xa4, 0x32, 0x19, 0xd7, 0x95, 0x9d, 0xb2, 0xd4, 0x8b, 0xfc, 0x30, 0x14, 0x2d, 0x98, 0x43, 0x03, 0xac, 0x33, 0xb5, 0x53, 0xb6, 0x19, 0x06, 0x60, 0x39, 0x16, 0xb9, 0xe0, 0x90, 0x16, 0xce, 0x67, 0x64, 0xc1, 0x81, 0x6a, 0xc3, 0xa0, 0xde, 0xd1, 0xc5, 0xf1, 0x60, 0xf6, 0x6c, 0x9f, 0xe3, 0xbf, 0xe5, 0xfb, 0x52, 0x20, 0xbc, 0x44, 0x55, 0xc4, 0xbb, 0x2b, 0x56, 0x86, 0x08, 0xbf, 0xbe, 0x01, 0x06, 0x87, 0x31, 0xc6, 0x75, 0xaa, 0xb1, 0x44, 0x3f, 0xc9, 0x37, 0x44, 0x0b, 0x6e, 0x2d, 0xb5, 0xcc, 0xa4, 0x69, 0x5d, 0xb6, 0xda, 0x63, 0xec, 0x2f, 0xb9, 0x4a, 0x0a, 0xca, 0x56, 0x7b, 0x38, 0xe5, 0x55, 0x38, 0x3a, 0x02, 0x46, 0xbd, 0x39, 0x74, 0x51, 0xb0, 0xa9, 0x02, 0xcc, 0x14, 0x7a, 0xad, 0x14, 0x34, 0x54, 0xa1, 0xf0, 0xc1, 0x16, 0x62, 0x86, 0xfe, 0xca, 0x2b, 0xfc, 0x12, 0xfb, 0x7c, }; static const unsigned char ecdsa_secp521r1_sha3_512_10377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10377_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10377 = { .name = "ecdsa_secp521r1_sha3_512_10377", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10377_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10377_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10377_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 423 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10378 for ECDSA, tcId is 424 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10378_pubkey[] = { 0x01, 0x4a, 0xc0, 0x27, 0x0f, 0xb2, 0x77, 0xeb, 0x45, 0xc8, 0xd3, 0xd7, 0xe4, 0x91, 0x49, 0xed, 0x14, 0x08, 0x7c, 0x80, 0xc9, 0x1b, 0x14, 0x0e, 0x4f, 0xb1, 0x82, 0x0c, 0xa4, 0xef, 0x48, 0xb2, 0x7e, 0x42, 0x66, 0xfd, 0xc1, 0xac, 0x80, 0x3c, 0x76, 0xe5, 0xf6, 0x36, 0xfa, 0x4d, 0x46, 0x25, 0xbb, 0xbd, 0xbc, 0xf0, 0x57, 0x29, 0xfc, 0xff, 0x60, 0x0a, 0xba, 0xb2, 0x0b, 0x8d, 0x1d, 0xbc, 0x16, 0xb9, 0x01, 0xa2, 0x9a, 0xad, 0x56, 0x86, 0x28, 0x35, 0xb6, 0xff, 0xf2, 0x58, 0xa2, 0x28, 0xf6, 0x12, 0xa4, 0x92, 0x6f, 0xa6, 0x67, 0x58, 0x7a, 0xd2, 0xf2, 0xff, 0x3f, 0x5d, 0x63, 0x62, 0x38, 0x70, 0x12, 0x11, 0x95, 0xda, 0x66, 0xbe, 0x32, 0x42, 0x7f, 0x28, 0xa6, 0x49, 0x33, 0x55, 0x59, 0x0d, 0x7a, 0xbf, 0x03, 0x35, 0x94, 0xb2, 0xa1, 0xdc, 0x81, 0x2a, 0x45, 0xe6, 0xc8, 0x3c, 0x4c, 0x45, 0xe7, 0x1b, }; static const unsigned char ecdsa_secp521r1_sha3_512_10378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10378_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10378 = { .name = "ecdsa_secp521r1_sha3_512_10378", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10378_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10378_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10378_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 424 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10379 for ECDSA, tcId is 425 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10379_pubkey[] = { 0x01, 0xc4, 0x98, 0x44, 0x62, 0xae, 0x09, 0x1f, 0x6a, 0x3f, 0x81, 0x77, 0x69, 0x97, 0x03, 0x8f, 0xc4, 0x7d, 0xec, 0xe0, 0xdf, 0xc9, 0xab, 0xda, 0xc8, 0x9b, 0xed, 0x4f, 0x6d, 0xdd, 0xce, 0x8a, 0x67, 0x6e, 0x82, 0x46, 0xcc, 0x3d, 0x92, 0xd8, 0x52, 0x82, 0x81, 0xab, 0x0c, 0x4a, 0x7b, 0x4f, 0x2a, 0x4d, 0x02, 0x32, 0x7c, 0xc5, 0x97, 0x39, 0xbb, 0x8e, 0x80, 0x88, 0xf2, 0xcc, 0xbe, 0x15, 0x03, 0x4a, 0x01, 0x32, 0xba, 0xfd, 0xdb, 0xb8, 0x4a, 0xa5, 0xb8, 0xfb, 0x02, 0x47, 0x8a, 0xd4, 0xc1, 0xb4, 0xd8, 0x93, 0x22, 0x4f, 0x03, 0x57, 0xd7, 0xdc, 0xd4, 0x71, 0x32, 0x30, 0xba, 0xa6, 0x35, 0x63, 0x7e, 0x6b, 0x90, 0xe5, 0x91, 0x0c, 0x12, 0x8e, 0x40, 0xa3, 0x2e, 0x88, 0xf1, 0x70, 0x73, 0x19, 0x33, 0x9d, 0xb2, 0xa1, 0xf9, 0x77, 0x4e, 0xef, 0x4c, 0x3d, 0xe9, 0x55, 0x83, 0xb1, 0x4f, 0xda, 0xaf, 0x9f, }; static const unsigned char ecdsa_secp521r1_sha3_512_10379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10379_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10379 = { .name = "ecdsa_secp521r1_sha3_512_10379", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10379_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10379_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10379_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 425 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10380 for ECDSA, tcId is 426 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10380_pubkey[] = { 0x00, 0xfa, 0x43, 0x64, 0x25, 0x08, 0xb0, 0x54, 0x7a, 0xe7, 0x94, 0x05, 0x82, 0xbc, 0x4b, 0xaf, 0xf4, 0xa8, 0x8e, 0x26, 0x78, 0x5c, 0xe9, 0x04, 0x93, 0x4b, 0x82, 0x46, 0x56, 0x9f, 0xea, 0x47, 0x4f, 0x1c, 0x5f, 0x91, 0xc2, 0xfa, 0x27, 0xa7, 0xa4, 0xe8, 0x58, 0x08, 0x94, 0x57, 0x39, 0x9a, 0x41, 0x24, 0x5e, 0xd6, 0x1c, 0xa4, 0xc0, 0xa4, 0x02, 0xc7, 0xca, 0x89, 0xd9, 0xdc, 0x21, 0xe2, 0xf3, 0x11, 0x01, 0x54, 0xf0, 0xd1, 0x9a, 0xa4, 0x99, 0x7c, 0xcc, 0xb2, 0x11, 0xa8, 0x5f, 0x67, 0x17, 0xb5, 0x44, 0x12, 0x17, 0x9c, 0x23, 0x31, 0xe1, 0xf3, 0x99, 0x8d, 0xa5, 0x5f, 0xb0, 0xbb, 0x6e, 0x2e, 0x53, 0x47, 0x03, 0x32, 0xf6, 0x79, 0x0f, 0x2a, 0xc0, 0x36, 0xde, 0xd0, 0x35, 0x2b, 0x2a, 0x33, 0xf1, 0x4e, 0xa3, 0x68, 0x56, 0x82, 0xae, 0xd6, 0x46, 0x48, 0x01, 0x29, 0x40, 0x75, 0x9c, 0xcc, 0xe2, 0xe7, }; static const unsigned char ecdsa_secp521r1_sha3_512_10380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10380_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10380 = { .name = "ecdsa_secp521r1_sha3_512_10380", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10380_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10380_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10380_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 426 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10381 for ECDSA, tcId is 427 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10381_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha3_512_10381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10381_sig[] = { 0x00, 0x00, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, 0x99, 0x95, 0xee, 0x7c, 0xcf, 0x6d, 0x6e, 0x6b, 0x1c, 0xec, 0x4a, 0xaf, 0x83, 0x2d, 0x37, 0x34, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10381 = { .name = "ecdsa_secp521r1_sha3_512_10381", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10381_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10381_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10381_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 427 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10382 for ECDSA, tcId is 428 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10382_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha3_512_10382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10382_sig[] = { 0x01, 0xff, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x3e, 0x40, 0x2a, 0xbc, 0xab, 0xb8, 0x0e, 0x36, 0xac, 0x16, 0xff, 0xa8, 0x27, 0x26, 0xf9, 0x4a, 0xf3, 0x42, 0x18, 0x46, 0x3b, 0xb8, 0xb8, 0xa7, 0xa2, 0x1f, 0xdb, 0x3b, 0xba, 0x2e, 0xd9, 0x43, 0x9e, 0x83, 0x6c, 0x6f, 0x0e, 0x0b, 0x2c, 0xd5, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10382 = { .name = "ecdsa_secp521r1_sha3_512_10382", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10382_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10382_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10382_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 428 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10383 for ECDSA, tcId is 429 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10383_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha3_512_10383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10383_sig[] = { 0x00, 0x00, 0x34, 0x2d, 0xae, 0x75, 0x1a, 0x63, 0xa3, 0xca, 0x81, 0x89, 0xcf, 0x34, 0x2b, 0x3b, 0x34, 0xea, 0xaa, 0x25, 0x65, 0xe2, 0xc7, 0xe2, 0x61, 0x21, 0xc1, 0xbf, 0xd5, 0x43, 0x54, 0x47, 0xf1, 0xc3, 0xa5, 0x6f, 0x87, 0xdb, 0x98, 0x08, 0x9d, 0x20, 0x8c, 0x89, 0xe9, 0x02, 0xbb, 0x50, 0xed, 0x28, 0x99, 0x95, 0xee, 0x7c, 0xcf, 0x6d, 0x6e, 0x6b, 0x1c, 0xec, 0x4a, 0xaf, 0x83, 0x2d, 0x37, 0x34, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10383 = { .name = "ecdsa_secp521r1_sha3_512_10383", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10383_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10383_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10383_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 429 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10384 for ECDSA, tcId is 430 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10384_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha3_512_10384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10384_sig[] = { 0x01, 0xff, 0xcb, 0xd2, 0x51, 0x8a, 0xe5, 0x9c, 0x5c, 0x35, 0x7e, 0x76, 0x30, 0xcb, 0xd4, 0xc4, 0xcb, 0x15, 0x55, 0xda, 0x9a, 0x1d, 0x38, 0x1d, 0x9e, 0xde, 0x3e, 0x40, 0x2a, 0xbc, 0xab, 0xb8, 0x0e, 0x36, 0xac, 0x16, 0xff, 0xa8, 0x27, 0x26, 0xf9, 0x4a, 0xf3, 0x42, 0x18, 0x46, 0x3b, 0xb8, 0xb8, 0xa7, 0xa2, 0x1f, 0xdb, 0x3b, 0xba, 0x2e, 0xd9, 0x43, 0x9e, 0x83, 0x6c, 0x6f, 0x0e, 0x0b, 0x2c, 0xd5, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10384 = { .name = "ecdsa_secp521r1_sha3_512_10384", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10384_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10384_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10384_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 430 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10385 for ECDSA, tcId is 431 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10385_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10385_sig[] = { 0x01, 0xee, 0xe9, 0x0a, 0xe4, 0x62, 0x76, 0xf5, 0xa4, 0xd0, 0x85, 0xd9, 0x7d, 0xa8, 0xd3, 0xd7, 0x3e, 0x3a, 0xa4, 0x1e, 0x80, 0x9a, 0xee, 0xf2, 0x25, 0xfa, 0x7e, 0x17, 0x80, 0x12, 0x8f, 0x43, 0xdd, 0xb9, 0x9a, 0xfd, 0x82, 0xaf, 0xf7, 0x27, 0xe7, 0xda, 0xcf, 0xa0, 0xf5, 0x9b, 0x10, 0x23, 0x35, 0x07, 0x41, 0xfe, 0xad, 0x9d, 0xe5, 0x33, 0x52, 0x7a, 0xa6, 0xef, 0x6a, 0x3a, 0x3a, 0x28, 0x5a, 0x6a, 0x00, 0xb2, 0x7e, 0x5a, 0xb4, 0x84, 0x5f, 0x86, 0xed, 0x52, 0x5f, 0xac, 0x4e, 0x9e, 0x85, 0x00, 0xe5, 0x6d, 0xd5, 0xa5, 0x16, 0x1c, 0x02, 0xf0, 0x51, 0x33, 0x93, 0xf4, 0x38, 0x1a, 0x67, 0xee, 0x30, 0x7e, 0xf6, 0x51, 0x64, 0x05, 0x44, 0x5e, 0x93, 0x1e, 0x6a, 0xaa, 0x3d, 0x7d, 0x3f, 0x96, 0x9c, 0x6d, 0xd5, 0xf2, 0x04, 0x43, 0x62, 0x30, 0x4d, 0x11, 0x2f, 0xa7, 0x8c, 0x19, 0x56, 0xfe, 0x84, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10385 = { .name = "ecdsa_secp521r1_sha3_512_10385", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10385_pubkey, .pubkeylen = 132, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp521r1_sha3_512_10385_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 431 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10386 for ECDSA, tcId is 432 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10386_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10386_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp521r1_sha3_512_10386_sig[] = { 0x00, 0x87, 0xb4, 0x1a, 0xba, 0x38, 0xfb, 0xc1, 0xd3, 0xbe, 0xd4, 0x42, 0x30, 0x2c, 0x6c, 0x35, 0x08, 0x08, 0x08, 0xa7, 0x72, 0x89, 0x2d, 0x8d, 0x7c, 0xff, 0x93, 0x73, 0x16, 0xae, 0xe2, 0x6a, 0x78, 0x58, 0x95, 0x62, 0xd6, 0xdf, 0x69, 0x45, 0x94, 0x26, 0xdd, 0xcc, 0x22, 0xeb, 0xa2, 0xad, 0x7b, 0x46, 0xf5, 0xd8, 0x37, 0x36, 0x44, 0x87, 0xd2, 0x50, 0x64, 0x57, 0x7c, 0x23, 0x50, 0x24, 0x8f, 0x06, 0x01, 0xe2, 0x2b, 0xd1, 0x98, 0x3a, 0x6d, 0xa4, 0xb2, 0xff, 0xc3, 0x00, 0x2a, 0xaf, 0xe4, 0x84, 0xae, 0xf5, 0x2a, 0x2e, 0xd9, 0x22, 0x6e, 0x27, 0xc1, 0x1a, 0x3e, 0x31, 0xa0, 0xf0, 0x47, 0xa8, 0x48, 0xa9, 0x3e, 0x73, 0x83, 0x48, 0x9c, 0xf3, 0x05, 0xeb, 0xa2, 0x32, 0xb1, 0xf4, 0xda, 0xed, 0xc1, 0xdb, 0x06, 0x06, 0xc1, 0x98, 0xb9, 0x55, 0x14, 0xcb, 0x0d, 0xd8, 0x25, 0x96, 0xd0, 0x55, 0x22, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10386 = { .name = "ecdsa_secp521r1_sha3_512_10386", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10386_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10386_msg, .msglen = 3, .sig = ecdsa_secp521r1_sha3_512_10386_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 432 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10387 for ECDSA, tcId is 433 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10387_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha3_512_10387_sig[] = { 0x00, 0x40, 0xc2, 0x37, 0x8f, 0xb6, 0x45, 0xcb, 0x68, 0x92, 0xd3, 0xd7, 0x8f, 0x11, 0xeb, 0xa2, 0x0a, 0x97, 0xba, 0xf8, 0xa7, 0x8b, 0xe3, 0xad, 0xad, 0xee, 0x1a, 0xbb, 0x5d, 0x74, 0x7d, 0xbf, 0xae, 0xa9, 0x1d, 0x83, 0x27, 0x6c, 0xd1, 0x43, 0x02, 0x78, 0xc3, 0x9b, 0xed, 0x88, 0xd7, 0x20, 0xd6, 0x14, 0x99, 0x32, 0xb2, 0x97, 0x48, 0xa1, 0xb0, 0xa7, 0x91, 0x04, 0x8c, 0x8a, 0xb4, 0x77, 0x60, 0x1e, 0x01, 0x86, 0x65, 0x51, 0xc4, 0x2b, 0xc5, 0x08, 0xca, 0x0b, 0xe8, 0x0c, 0xb4, 0x59, 0xe5, 0xfc, 0x36, 0x4c, 0x77, 0xb7, 0xcb, 0xe3, 0xa6, 0xcc, 0x95, 0xaf, 0x31, 0xa1, 0x07, 0x51, 0x24, 0x0f, 0xa6, 0x34, 0xca, 0x15, 0x07, 0x88, 0x4f, 0x9f, 0x88, 0x39, 0x30, 0x00, 0xfa, 0xbc, 0x89, 0x83, 0xc4, 0x87, 0xe5, 0x02, 0xa7, 0x83, 0x7c, 0xb8, 0xf8, 0xa9, 0x14, 0x0a, 0x13, 0x70, 0x77, 0x4f, 0x8f, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10387 = { .name = "ecdsa_secp521r1_sha3_512_10387", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10387_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10387_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha3_512_10387_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 433 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10388 for ECDSA, tcId is 434 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10388_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha3_512_10388_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp521r1_sha3_512_10388_sig[] = { 0x01, 0xb4, 0xa3, 0x84, 0x2c, 0x80, 0xa3, 0x9f, 0x50, 0xa7, 0xde, 0x3c, 0xbd, 0x56, 0x76, 0xf7, 0x89, 0x5a, 0x30, 0x47, 0xc8, 0x33, 0xdf, 0x0f, 0xf9, 0x65, 0x82, 0x03, 0x61, 0xec, 0x0c, 0x42, 0xc3, 0xa3, 0xd1, 0xcc, 0x68, 0xb4, 0x69, 0xee, 0x43, 0x08, 0x33, 0x71, 0xd8, 0x3b, 0x49, 0xd7, 0x2a, 0x94, 0xe5, 0x25, 0xc1, 0x22, 0x36, 0x90, 0xce, 0xf9, 0xeb, 0x1c, 0x5b, 0x49, 0xa5, 0x46, 0xf9, 0x2c, 0x01, 0xa1, 0xb6, 0xd3, 0x98, 0xff, 0x65, 0x6a, 0x71, 0x59, 0xb8, 0xd3, 0x39, 0x3e, 0x14, 0xa1, 0x7e, 0x03, 0x41, 0x1d, 0x3e, 0xc7, 0xb4, 0x09, 0xf6, 0x8c, 0x88, 0x82, 0x7b, 0x5e, 0x19, 0xf3, 0x83, 0x84, 0x3c, 0x19, 0x85, 0x99, 0xca, 0x4d, 0x22, 0xd6, 0xf8, 0x1f, 0x77, 0x74, 0xb3, 0x1b, 0xaa, 0x6e, 0x95, 0xd5, 0xde, 0x02, 0xa3, 0x1c, 0x7b, 0x56, 0xdc, 0xe5, 0x17, 0x46, 0x0f, 0x60, 0x32, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10388 = { .name = "ecdsa_secp521r1_sha3_512_10388", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10388_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10388_msg, .msglen = 20, .sig = ecdsa_secp521r1_sha3_512_10388_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 434 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10389 for ECDSA, tcId is 435 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10389_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha3_512_10389_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10389_sig[] = { 0x00, 0xec, 0x15, 0x52, 0x21, 0x52, 0xbd, 0x08, 0x2e, 0x85, 0x11, 0xa3, 0x59, 0xe9, 0xc4, 0xfe, 0x2e, 0xc0, 0xe2, 0xe9, 0x97, 0x1a, 0xd9, 0x36, 0x8a, 0x35, 0xc3, 0xe9, 0xa6, 0x47, 0x3c, 0x21, 0xd9, 0x59, 0x7e, 0xf8, 0x4d, 0x72, 0x17, 0xd3, 0x8f, 0xfb, 0x09, 0x0e, 0xbe, 0x30, 0x8b, 0x62, 0x74, 0xde, 0xab, 0xc7, 0x60, 0xff, 0xd0, 0x60, 0xd1, 0x9d, 0x17, 0xe5, 0x2c, 0xce, 0xae, 0xfd, 0x8a, 0x6a, 0x01, 0x34, 0xcf, 0x6e, 0xd4, 0x8b, 0x98, 0x73, 0xbf, 0x81, 0xca, 0x96, 0x73, 0xaa, 0x8b, 0x0c, 0x06, 0x53, 0x8f, 0xa9, 0x99, 0xb5, 0x9b, 0x73, 0xf7, 0x17, 0x63, 0x39, 0x66, 0x2f, 0x39, 0x92, 0x78, 0xf3, 0xe9, 0xc7, 0x08, 0x48, 0xc6, 0xe8, 0xf3, 0xec, 0x63, 0x9c, 0x28, 0x7d, 0x21, 0x03, 0x2a, 0x28, 0x53, 0x10, 0xdf, 0xc5, 0xe5, 0x70, 0xe8, 0x61, 0xd7, 0x98, 0x6b, 0x48, 0x13, 0x9d, 0x9c, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10389 = { .name = "ecdsa_secp521r1_sha3_512_10389", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10389_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10389_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10389_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 435 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10390 for ECDSA, tcId is 436 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10390_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha3_512_10390_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10390_sig[] = { 0x00, 0x44, 0xa4, 0x5d, 0xbf, 0x0c, 0x4d, 0x34, 0xcd, 0x9b, 0x7a, 0x61, 0x2e, 0x8a, 0xfc, 0xf3, 0x6c, 0xf3, 0xca, 0x26, 0x9d, 0x64, 0xdc, 0x0d, 0x84, 0xb6, 0xf4, 0x06, 0xb7, 0xc6, 0x78, 0x1a, 0x02, 0xe2, 0x4d, 0x5e, 0xbc, 0xb7, 0xd3, 0x59, 0x5a, 0xe5, 0xa3, 0xc9, 0xf3, 0xa3, 0xfe, 0x18, 0xfb, 0xa6, 0x52, 0x65, 0x81, 0xde, 0xed, 0x81, 0xe4, 0xd7, 0x4a, 0x1c, 0x77, 0xa8, 0x56, 0x35, 0xa3, 0x94, 0x01, 0xe1, 0x5d, 0x5a, 0x81, 0xaa, 0x0f, 0xbb, 0xb8, 0x86, 0x83, 0x09, 0x39, 0xe4, 0x3f, 0xde, 0xc6, 0x2c, 0xc3, 0xb6, 0x48, 0x19, 0xe3, 0x84, 0x66, 0x3a, 0x51, 0xa1, 0xf1, 0x93, 0xf0, 0xe1, 0x6a, 0xfd, 0xba, 0x98, 0xe1, 0x69, 0x0f, 0x8e, 0xbb, 0x97, 0x8a, 0x56, 0x84, 0xbd, 0x41, 0xe4, 0xdb, 0xa7, 0xa7, 0x4f, 0x21, 0xf7, 0x1c, 0xaa, 0xb5, 0x9d, 0x88, 0xaf, 0xd0, 0xef, 0x20, 0x94, 0x69, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10390 = { .name = "ecdsa_secp521r1_sha3_512_10390", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10390_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10390_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10390_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 436 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10391 for ECDSA, tcId is 437 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10391_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha3_512_10391_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10391_sig[] = { 0x01, 0xac, 0xf1, 0x33, 0x3a, 0x1d, 0x88, 0x60, 0x84, 0x7e, 0x0b, 0x0f, 0x93, 0xb7, 0x82, 0x2a, 0xd6, 0xc3, 0x80, 0xd2, 0xae, 0xf1, 0x0d, 0x20, 0x36, 0x29, 0x46, 0x31, 0xa3, 0xce, 0xa1, 0x54, 0xc9, 0xd0, 0x6e, 0x98, 0x0d, 0x05, 0x86, 0xae, 0xb9, 0xf7, 0x27, 0x66, 0xf5, 0x0c, 0x35, 0xf7, 0x07, 0xde, 0xda, 0xc8, 0x87, 0xc8, 0x8c, 0xe7, 0x6e, 0xaf, 0x6b, 0x57, 0xa6, 0x28, 0xaf, 0x4e, 0x26, 0x48, 0x01, 0x68, 0xd6, 0x86, 0xe9, 0x58, 0xd3, 0x13, 0x15, 0x31, 0x35, 0x48, 0x73, 0x4d, 0xe9, 0x4e, 0x45, 0xe4, 0x7e, 0x83, 0x6a, 0xc9, 0x25, 0xb8, 0x3a, 0xd0, 0xbf, 0xd9, 0x19, 0xa8, 0x7b, 0xcc, 0x09, 0xb3, 0xde, 0xfc, 0xef, 0xd0, 0xc2, 0xf1, 0x0b, 0x8c, 0xa4, 0xd7, 0x05, 0x25, 0x8f, 0x34, 0xee, 0xd5, 0x00, 0x7e, 0xd7, 0x2f, 0xac, 0x4c, 0x2c, 0xcc, 0xf3, 0x22, 0xd7, 0xf6, 0xf3, 0x9f, 0xdb, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10391 = { .name = "ecdsa_secp521r1_sha3_512_10391", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10391_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10391_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10391_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 437 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10392 for ECDSA, tcId is 438 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10392_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha3_512_10392_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10392_sig[] = { 0x00, 0xa8, 0x05, 0x53, 0xa0, 0x81, 0x45, 0x6c, 0x72, 0xe4, 0x32, 0xaa, 0x6c, 0xf4, 0x6a, 0x24, 0x57, 0x1d, 0x99, 0x78, 0xe3, 0xaf, 0x4f, 0x88, 0xec, 0x8f, 0xfb, 0x2d, 0x5e, 0xe8, 0x04, 0xb4, 0x12, 0x8b, 0xc1, 0x24, 0xec, 0x11, 0x54, 0xe1, 0xf6, 0x28, 0xf2, 0x7f, 0x0f, 0xc3, 0xcd, 0xbe, 0xec, 0x39, 0xcc, 0x5b, 0xaf, 0xfb, 0x04, 0xab, 0x11, 0x2a, 0xf1, 0x28, 0x38, 0x65, 0xec, 0x57, 0x79, 0x08, 0x00, 0x7d, 0x31, 0xa1, 0x99, 0x09, 0xb1, 0xb7, 0xa2, 0x31, 0x4d, 0xcc, 0x5e, 0xb8, 0x23, 0x88, 0xef, 0x2e, 0x4e, 0x8a, 0xcf, 0x0d, 0xc6, 0xde, 0x6d, 0x40, 0xcc, 0x33, 0x82, 0xc7, 0xd8, 0xb0, 0x02, 0x27, 0xeb, 0x92, 0x9b, 0x3b, 0x7d, 0x52, 0x24, 0x38, 0xb0, 0xc4, 0xa6, 0x52, 0xd1, 0xef, 0x8e, 0xba, 0x9e, 0x4d, 0x4e, 0x91, 0xe5, 0xc7, 0xb3, 0xd7, 0x94, 0x7f, 0xbc, 0x96, 0x40, 0xaf, 0x10, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10392 = { .name = "ecdsa_secp521r1_sha3_512_10392", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10392_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10392_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10392_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 438 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10393 for ECDSA, tcId is 439 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10393_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha3_512_10393_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10393_sig[] = { 0x01, 0x6e, 0xd8, 0x3a, 0x23, 0xe3, 0xb3, 0x1e, 0xe7, 0x59, 0x1a, 0xd1, 0x01, 0x16, 0x76, 0x99, 0xe7, 0xf8, 0xd1, 0xc4, 0x48, 0xac, 0x24, 0x53, 0xef, 0x29, 0xac, 0x02, 0x92, 0x80, 0x28, 0xb2, 0xd9, 0x11, 0x9f, 0xa1, 0x2f, 0xf5, 0xce, 0x27, 0xf5, 0x82, 0x64, 0x2e, 0x7e, 0xa8, 0xfd, 0x4e, 0x99, 0x1b, 0x52, 0x66, 0xca, 0xa9, 0xfd, 0x70, 0x07, 0x9f, 0x5a, 0x23, 0xc0, 0x6b, 0xe1, 0x15, 0x3f, 0x97, 0x00, 0xbc, 0xa1, 0x63, 0x25, 0x42, 0xb3, 0xef, 0x53, 0x95, 0x1d, 0xc4, 0x5e, 0x49, 0xc2, 0x63, 0xed, 0x3d, 0x09, 0xe2, 0xaf, 0xa2, 0x7a, 0x3b, 0xdc, 0x9f, 0x42, 0x08, 0x30, 0x56, 0xbb, 0x3d, 0x65, 0xb8, 0xd4, 0xe9, 0x55, 0x07, 0xa4, 0xf0, 0x54, 0xa3, 0xab, 0xac, 0xf6, 0xf6, 0xf9, 0x92, 0x34, 0xd8, 0x6b, 0x69, 0x8d, 0xd1, 0x8c, 0x5d, 0x5b, 0xd3, 0xe9, 0xf8, 0x6a, 0xc1, 0xb0, 0x18, 0xa4, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10393 = { .name = "ecdsa_secp521r1_sha3_512_10393", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10393_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10393_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10393_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 439 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10394 for ECDSA, tcId is 440 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10394_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha3_512_10394_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10394_sig[] = { 0x01, 0xee, 0xdb, 0x8d, 0xee, 0xb8, 0x93, 0x66, 0xc6, 0x6f, 0x53, 0x73, 0x0a, 0xfb, 0xce, 0x11, 0x3a, 0xd3, 0x71, 0x52, 0x69, 0x17, 0x66, 0xd3, 0xe2, 0x67, 0xc4, 0x5d, 0x7c, 0xcd, 0x74, 0x30, 0xdd, 0xaa, 0x7e, 0xe5, 0xc8, 0x70, 0x15, 0x37, 0x76, 0xfc, 0xe1, 0xde, 0xed, 0x2b, 0x7c, 0xb1, 0x1f, 0xb0, 0x6a, 0xbf, 0x02, 0xd6, 0xf1, 0x8c, 0x01, 0xe0, 0xb8, 0x32, 0xbb, 0x97, 0xd7, 0xbb, 0x15, 0x7d, 0x00, 0xd9, 0x25, 0x62, 0x66, 0xe9, 0x52, 0x98, 0x9d, 0xd5, 0x15, 0xa8, 0xc7, 0x54, 0x00, 0x49, 0xf9, 0xf8, 0xd6, 0x64, 0x51, 0xb4, 0x58, 0x0d, 0xed, 0xc7, 0x36, 0xf6, 0x77, 0x7e, 0x83, 0x02, 0x16, 0xcb, 0x4c, 0x7b, 0xd9, 0xaf, 0x02, 0x9d, 0x40, 0x46, 0xf3, 0xea, 0x74, 0x7d, 0x5d, 0x10, 0x4c, 0xad, 0x16, 0xf2, 0x0e, 0x2e, 0x65, 0xfa, 0x15, 0xc7, 0xfe, 0xea, 0x9c, 0x35, 0xb9, 0xa3, 0x80, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10394 = { .name = "ecdsa_secp521r1_sha3_512_10394", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10394_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10394_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10394_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 440 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10395 for ECDSA, tcId is 441 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10395_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha3_512_10395_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10395_sig[] = { 0x01, 0x4d, 0xda, 0x0d, 0xca, 0xc3, 0xd0, 0x18, 0xa2, 0x98, 0xb7, 0xd6, 0xd7, 0x6e, 0x3c, 0x16, 0xa0, 0xce, 0x01, 0x08, 0x8f, 0x12, 0x6f, 0x41, 0x3c, 0x11, 0x3e, 0xe2, 0xea, 0xfd, 0x69, 0xba, 0xa0, 0xc4, 0x76, 0xc8, 0x4c, 0xa0, 0xff, 0xa9, 0xcb, 0x7b, 0x28, 0x00, 0x8b, 0x5e, 0xa1, 0x17, 0xaa, 0xbf, 0x71, 0xe5, 0xc1, 0x47, 0xae, 0x46, 0xa4, 0x74, 0x30, 0x3a, 0x6c, 0x5e, 0x96, 0x7c, 0x7f, 0x01, 0x01, 0x69, 0x6a, 0x02, 0x51, 0xcc, 0x9c, 0x50, 0xb9, 0xca, 0x9a, 0xed, 0x67, 0x86, 0xca, 0x4f, 0x55, 0xd5, 0xcf, 0x86, 0x6b, 0x03, 0x00, 0xee, 0xf8, 0x4b, 0x3e, 0xde, 0xc1, 0xc2, 0x36, 0x89, 0x0e, 0x48, 0x2b, 0x94, 0x2d, 0xc0, 0xe8, 0x17, 0xfa, 0x23, 0x25, 0x8d, 0xa1, 0x7e, 0x1d, 0x5f, 0x77, 0xd3, 0x67, 0xf0, 0xed, 0x1d, 0x5b, 0x25, 0xcd, 0xc4, 0x83, 0xfa, 0xe5, 0x86, 0x37, 0x90, 0xe6, 0xe8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10395 = { .name = "ecdsa_secp521r1_sha3_512_10395", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10395_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10395_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10395_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 441 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10396 for ECDSA, tcId is 442 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10396_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha3_512_10396_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10396_sig[] = { 0x00, 0x4c, 0x5b, 0x2e, 0x59, 0x35, 0xdc, 0x93, 0x03, 0xc7, 0x6b, 0x6b, 0x4c, 0xb8, 0xf3, 0x07, 0x39, 0xb5, 0x6f, 0xa4, 0x88, 0x0f, 0x8f, 0xa5, 0x8b, 0x5d, 0x45, 0x73, 0xcb, 0xd2, 0x9d, 0x4c, 0xfa, 0x76, 0x23, 0x9e, 0xfd, 0x7d, 0x45, 0xff, 0xf8, 0x04, 0x0b, 0x48, 0xd9, 0x38, 0x67, 0xb8, 0xc8, 0x18, 0x62, 0xf0, 0x29, 0xc9, 0x67, 0xf4, 0x66, 0x67, 0x45, 0x5b, 0xa7, 0x15, 0xf1, 0xa5, 0xd1, 0x5a, 0x01, 0x68, 0x67, 0x2a, 0x6f, 0xd6, 0x02, 0x14, 0x64, 0x78, 0x64, 0xa7, 0xd2, 0x71, 0x5c, 0xe4, 0x89, 0x0a, 0x19, 0x73, 0xc2, 0xfb, 0xa1, 0xc0, 0x2c, 0x3c, 0x4f, 0x3f, 0xb8, 0x6e, 0x4e, 0xea, 0x94, 0x6c, 0x46, 0xc0, 0x90, 0x05, 0xaa, 0x52, 0x80, 0xf0, 0x1c, 0x9b, 0xe7, 0x20, 0xba, 0x37, 0xab, 0xd5, 0x5c, 0x44, 0x5c, 0xc1, 0xd9, 0xf5, 0xc3, 0x79, 0x7f, 0xa2, 0x72, 0x46, 0xd7, 0x7e, 0x1c, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10396 = { .name = "ecdsa_secp521r1_sha3_512_10396", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10396_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10396_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10396_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 442 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10397 for ECDSA, tcId is 443 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10397_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha3_512_10397_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10397_sig[] = { 0x01, 0x6f, 0x26, 0x81, 0xa0, 0x3e, 0x8d, 0x6c, 0xde, 0xfe, 0x9e, 0x36, 0x19, 0x39, 0x7c, 0x6c, 0x95, 0x1d, 0xfb, 0x42, 0xb0, 0x42, 0x58, 0xf0, 0x22, 0x2c, 0x36, 0xf8, 0x10, 0x93, 0x3f, 0xe0, 0x41, 0x63, 0xa2, 0xc4, 0xcd, 0xe8, 0x8c, 0xe9, 0xc7, 0x16, 0xb1, 0x05, 0xe4, 0xd7, 0x6a, 0x4c, 0xf8, 0xe8, 0x4a, 0x1b, 0x0a, 0xde, 0x01, 0x0b, 0x99, 0x43, 0x38, 0x3b, 0x58, 0xca, 0x4b, 0x03, 0xbe, 0x98, 0x00, 0x50, 0xfa, 0x6b, 0x6b, 0xe2, 0xfe, 0x3e, 0x66, 0x62, 0x7a, 0x50, 0x91, 0x83, 0x97, 0x53, 0x56, 0x6e, 0xe4, 0x08, 0x92, 0xaf, 0x04, 0x0d, 0x38, 0x40, 0x61, 0x2b, 0x83, 0x32, 0x3a, 0x0f, 0x03, 0x50, 0xad, 0x22, 0xbc, 0x96, 0x11, 0xd4, 0x1f, 0x8d, 0x43, 0xed, 0x7d, 0x26, 0xbe, 0x53, 0x22, 0x04, 0x74, 0xfe, 0xb8, 0xd3, 0x4d, 0x01, 0xc7, 0xa5, 0x1b, 0x17, 0xf4, 0x1e, 0xdb, 0xef, 0x56, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10397 = { .name = "ecdsa_secp521r1_sha3_512_10397", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10397_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10397_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10397_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 443 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10398 for ECDSA, tcId is 444 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10398_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10398_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10398_sig[] = { 0x00, 0x0f, 0x90, 0x34, 0x1f, 0x53, 0x5c, 0x12, 0xfc, 0x02, 0x02, 0x1c, 0x81, 0xeb, 0xe2, 0xf9, 0xde, 0x8c, 0xa3, 0x3b, 0xfe, 0x26, 0x4c, 0x73, 0x4b, 0xc9, 0x46, 0xcf, 0xd8, 0x2b, 0xcc, 0xc7, 0x20, 0x0a, 0x8b, 0x85, 0xcc, 0x0e, 0x3d, 0x31, 0xd8, 0x4a, 0x00, 0x2a, 0x96, 0x2b, 0xee, 0x60, 0x98, 0x13, 0xb4, 0x86, 0xbf, 0xad, 0xa6, 0x92, 0xfd, 0x93, 0x85, 0xda, 0xa0, 0xaf, 0x9a, 0x6d, 0x72, 0xd5, 0x01, 0xb4, 0x68, 0x89, 0xa2, 0x7e, 0x65, 0x38, 0xca, 0x39, 0xd5, 0x8d, 0x1e, 0x1a, 0x09, 0x7c, 0x8f, 0x1b, 0x96, 0xa3, 0xb9, 0x47, 0xdf, 0xe2, 0x8a, 0xfe, 0xb9, 0xdf, 0xe7, 0x07, 0x37, 0x04, 0x78, 0xfa, 0x0b, 0xea, 0x12, 0x17, 0xe1, 0x03, 0x0a, 0x50, 0x75, 0x58, 0x2d, 0x90, 0xe7, 0x09, 0xd7, 0x52, 0xd8, 0xa3, 0x0b, 0xe0, 0xc2, 0x6a, 0xc2, 0xb5, 0xf4, 0x29, 0x36, 0x0f, 0x50, 0x62, 0xe8, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10398 = { .name = "ecdsa_secp521r1_sha3_512_10398", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10398_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10398_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10398_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 444 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10399 for ECDSA, tcId is 445 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10399_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10399_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10399_sig[] = { 0x00, 0x8a, 0x51, 0x92, 0x93, 0x49, 0xb7, 0xd9, 0x84, 0x8d, 0xf1, 0x49, 0xe2, 0x03, 0xa5, 0x0d, 0x2c, 0x35, 0xa8, 0xa3, 0xab, 0x12, 0xbf, 0xde, 0xbd, 0xf6, 0xfa, 0x6c, 0x45, 0xa0, 0x5d, 0x75, 0x11, 0x2c, 0x5d, 0x8f, 0x7c, 0xb6, 0x0d, 0x61, 0x5e, 0xe3, 0x8e, 0xb4, 0xb9, 0x8d, 0xe1, 0xb8, 0xbe, 0xcf, 0x7e, 0x37, 0x26, 0x53, 0x33, 0x8e, 0x5d, 0xb3, 0xc2, 0x27, 0xdb, 0x9e, 0xdf, 0xf3, 0x6d, 0x79, 0x01, 0xde, 0x6b, 0x67, 0x5b, 0x62, 0x6f, 0x70, 0x08, 0xbc, 0x03, 0x34, 0xa5, 0x9b, 0xc1, 0x63, 0xe6, 0x4e, 0xaa, 0xb2, 0x3d, 0x75, 0xdc, 0x9a, 0xdc, 0xa3, 0x25, 0x8b, 0xba, 0x2d, 0xea, 0x3c, 0xb4, 0xe2, 0x1d, 0x06, 0x2b, 0xc8, 0x35, 0xa6, 0x5f, 0x31, 0x82, 0xd8, 0x6f, 0x1e, 0x0b, 0x5d, 0x38, 0x53, 0x44, 0x3e, 0x36, 0x20, 0x63, 0xd3, 0x13, 0xaf, 0xb3, 0xca, 0xbf, 0xe0, 0x03, 0x5d, 0xd1, 0x8d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10399 = { .name = "ecdsa_secp521r1_sha3_512_10399", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10399_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10399_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10399_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 445 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10400 for ECDSA, tcId is 446 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10400_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha3_512_10400_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10400_sig[] = { 0x01, 0x96, 0x77, 0xf0, 0x0b, 0x7d, 0x31, 0x82, 0xb2, 0xcd, 0x2e, 0xa6, 0x15, 0xc6, 0x81, 0x98, 0x64, 0xe9, 0xa3, 0x74, 0x51, 0x56, 0x41, 0x90, 0xa8, 0x1d, 0x63, 0x94, 0x7a, 0x63, 0x35, 0x05, 0x91, 0x88, 0xd4, 0xb9, 0xa8, 0xcf, 0x98, 0x41, 0x50, 0x0b, 0xf3, 0xeb, 0x49, 0xc0, 0x9c, 0x4c, 0x4d, 0x33, 0x0a, 0x4f, 0x32, 0x93, 0x8e, 0xf7, 0xc7, 0xdd, 0x1c, 0xd4, 0xb8, 0x0b, 0x76, 0xdc, 0xf5, 0x0d, 0x01, 0x82, 0x37, 0x77, 0x1c, 0x8f, 0x4c, 0x00, 0xd4, 0x20, 0xbc, 0x26, 0x40, 0x78, 0x82, 0x2e, 0xf2, 0xfb, 0xa8, 0x9f, 0x8d, 0xd6, 0x5e, 0x0f, 0x88, 0x24, 0xcd, 0x89, 0x31, 0x8a, 0x16, 0xc3, 0x06, 0x11, 0xce, 0xcb, 0x0f, 0x24, 0xf1, 0x42, 0xaa, 0x4c, 0x51, 0xc0, 0x74, 0xda, 0xc7, 0x42, 0x2d, 0x8c, 0xd7, 0x8d, 0xd0, 0xac, 0x40, 0x85, 0x69, 0x40, 0xf8, 0x1d, 0x91, 0x6a, 0x55, 0x88, 0x37, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10400 = { .name = "ecdsa_secp521r1_sha3_512_10400", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10400_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10400_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10400_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 446 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10401 for ECDSA, tcId is 447 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10401_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha3_512_10401_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10401_sig[] = { 0x00, 0xeb, 0xad, 0x62, 0x3d, 0x0a, 0xee, 0x1d, 0x3f, 0x17, 0xa7, 0x82, 0x29, 0x71, 0x55, 0x01, 0x8f, 0x84, 0x8c, 0x38, 0x39, 0x82, 0x11, 0xb0, 0x96, 0x9c, 0xa0, 0xcc, 0x96, 0x77, 0x14, 0x17, 0xd4, 0x4e, 0x28, 0x94, 0xe9, 0xaa, 0xcd, 0x44, 0x51, 0x6c, 0x31, 0x88, 0xf7, 0x27, 0x8c, 0xa6, 0xe5, 0xa1, 0x39, 0x80, 0xca, 0x94, 0x3b, 0x8c, 0xbc, 0x8b, 0x75, 0xa5, 0x76, 0x0b, 0x1b, 0x40, 0xde, 0x9a, 0x00, 0xa4, 0xdf, 0xa4, 0x38, 0xc8, 0xb5, 0x3c, 0x33, 0xd5, 0x60, 0x0a, 0xae, 0x16, 0x46, 0x81, 0xb7, 0x91, 0xf4, 0xe3, 0xa4, 0x9c, 0xf8, 0x2e, 0xf2, 0x53, 0xef, 0x2b, 0x40, 0xf2, 0xc3, 0x61, 0xfb, 0xb4, 0x22, 0x11, 0xcd, 0xaf, 0xc5, 0x31, 0x5f, 0x93, 0x93, 0x7b, 0x70, 0x61, 0x5e, 0x17, 0xa0, 0xb8, 0x19, 0x60, 0xa8, 0x94, 0xe4, 0x66, 0xa1, 0x7c, 0x93, 0x22, 0xfe, 0xd5, 0x5c, 0x7d, 0x55, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10401 = { .name = "ecdsa_secp521r1_sha3_512_10401", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10401_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10401_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10401_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10402 for ECDSA, tcId is 448 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10402_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha3_512_10402_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10402_sig[] = { 0x00, 0x13, 0xc3, 0x3a, 0xd4, 0x25, 0x1e, 0x52, 0xd9, 0xe6, 0xb1, 0x23, 0x22, 0xa1, 0x79, 0x4f, 0x43, 0x51, 0xb1, 0x35, 0xc7, 0x22, 0xb0, 0x93, 0xdd, 0xa2, 0x2a, 0x1d, 0xcc, 0x88, 0x5e, 0xaf, 0x34, 0x73, 0xe0, 0x9a, 0xf4, 0x30, 0x7f, 0xc2, 0x94, 0xdb, 0x2d, 0x3f, 0x02, 0x64, 0x9a, 0xd3, 0x25, 0x89, 0x82, 0x23, 0xbe, 0x20, 0x0c, 0x65, 0xa0, 0x76, 0xd6, 0xfe, 0xc1, 0xc4, 0xd0, 0x54, 0xb0, 0xc8, 0x00, 0x9d, 0x78, 0xbe, 0x21, 0x2b, 0xd1, 0x1c, 0xb5, 0xd3, 0x63, 0x74, 0xa9, 0x74, 0x3c, 0x67, 0x72, 0x19, 0x6f, 0xb7, 0xd0, 0x29, 0x46, 0x2c, 0xda, 0xe5, 0x51, 0x7a, 0x8a, 0xc5, 0x2b, 0x42, 0xca, 0xab, 0xc5, 0x45, 0x2d, 0xe0, 0xa4, 0x90, 0x4f, 0x05, 0xd5, 0xdb, 0x20, 0x27, 0x9e, 0x56, 0x63, 0xad, 0x7c, 0xfe, 0x8f, 0x04, 0xef, 0xe6, 0x48, 0x5a, 0x63, 0x24, 0x58, 0xdd, 0x4a, 0xe1, 0xcb, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10402 = { .name = "ecdsa_secp521r1_sha3_512_10402", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10402_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10402_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10402_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 448 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10403 for ECDSA, tcId is 449 in file ecdsa_secp521r1_sha3_512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) static const unsigned char ecdsa_secp521r1_sha3_512_10403_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha3_512_10403_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha3_512_10403_sig[] = { 0x01, 0x9c, 0x5d, 0x65, 0xec, 0x22, 0x57, 0xec, 0xe6, 0x2f, 0x14, 0x6d, 0x9c, 0x61, 0x66, 0x17, 0x89, 0x15, 0x1c, 0xcc, 0xe3, 0xa0, 0x45, 0xc6, 0x0a, 0x03, 0xf2, 0x03, 0x4e, 0xec, 0x2e, 0x84, 0xeb, 0x54, 0x41, 0x48, 0x25, 0x52, 0x9b, 0x9e, 0x1b, 0xc6, 0xc1, 0x95, 0x81, 0xe3, 0xab, 0x82, 0x71, 0x66, 0xff, 0x4e, 0x47, 0x22, 0xbc, 0x10, 0x44, 0x7b, 0xbf, 0xf9, 0xa5, 0x75, 0x88, 0x39, 0xb8, 0x26, 0x01, 0x91, 0xe1, 0xbb, 0x04, 0xa7, 0x2e, 0xac, 0x5d, 0xec, 0x7c, 0x02, 0x1b, 0xae, 0x1f, 0xc3, 0x7d, 0x9b, 0xc8, 0x1e, 0x0a, 0xcd, 0xd0, 0x9a, 0xe6, 0x34, 0x64, 0x00, 0x9a, 0x01, 0x75, 0x13, 0x94, 0xa8, 0x59, 0x30, 0x84, 0xf6, 0x34, 0xc1, 0x91, 0x04, 0x5a, 0x63, 0x20, 0x73, 0xaa, 0xe5, 0x6e, 0xb6, 0x5d, 0x88, 0xac, 0x1a, 0xc6, 0xfb, 0x30, 0x9d, 0xcb, 0xcf, 0x76, 0xf2, 0x2a, 0xe6, 0x52, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha3_512_10403 = { .name = "ecdsa_secp521r1_sha3_512_10403", .sig_alg = ECDSA, .hash = SHA3_512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha3_512_10403_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha3_512_10403_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha3_512_10403_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 449 in file ecdsa_secp521r1_sha3_512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) */ /* Test 10404 for ECDSA, tcId is 1 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10404_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10404_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10404_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x01, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x5a, 0x27, 0xa2, 0x4a, 0x1a, 0xae, 0x1e, 0x21, 0x8f, 0xdc, 0xcd, 0x8c, 0xd7, 0xd4, 0x99, 0x0b, 0x66, 0x6d, 0x4b, 0xf4, 0x90, 0x2b, 0x84, 0xfd, 0xad, 0x12, 0x3f, 0x94, 0x1f, 0xe9, 0x06, 0xd9, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10404 = { .name = "ecdsa_secp521r1_sha512_10404", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10404_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10404_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10404_sig, .siglen = 132, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10405 for ECDSA, tcId is 2 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10405_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10405_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10405_sig[] = { 0x02, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xe9, 0x7b, 0x33, 0x67, 0x12, 0x2f, 0xa4, 0xa2, 0x05, 0x84, 0xc2, 0x71, 0x23, 0x3f, 0x3e, 0xc3, 0xb7, 0xf7, 0xb3, 0x1b, 0x0f, 0xaa, 0x4d, 0x34, 0x0b, 0x92, 0xa6, 0xb0, 0xd5, 0xcd, 0x17, 0xea, 0x4e, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10405 = { .name = "ecdsa_secp521r1_sha512_10405", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10405_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10405_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10405_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10406 for ECDSA, tcId is 3 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10406_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10406_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10406_sig[] = { 0x01, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x0b, 0x27, 0xd9, 0xa7, 0xf5, 0x4e, 0xba, 0x8a, 0xd1, 0x7a, 0xd5, 0x91, 0x6e, 0xae, 0xd4, 0x87, 0xe8, 0x7f, 0xb8, 0x78, 0x61, 0x68, 0xeb, 0x5b, 0x51, 0xe4, 0x38, 0xbd, 0x67, 0x55, 0x58, 0xdd, 0xc4, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10406 = { .name = "ecdsa_secp521r1_sha512_10406", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10406_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10406_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10406_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10407 for ECDSA, tcId is 4 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10407_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10407_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10407_sig[] = { 0x02, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10407 = { .name = "ecdsa_secp521r1_sha512_10407", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10407_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10407_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10407_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10408 for ECDSA, tcId is 5 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10408_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10408_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10408_sig[] = { 0x01, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x10, 0xd6, 0x53, 0x20, 0x71, 0x8f, 0x8a, 0xf4, 0x65, 0xfb, 0x09, 0x90, 0x25, 0xb7, 0xca, 0xe2, 0x18, 0x44, 0x02, 0xae, 0xa8, 0xdf, 0x4f, 0x13, 0xa3, 0x28, 0xc9, 0x06, 0x48, 0xc4, 0x20, 0x79, 0xbb, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10408 = { .name = "ecdsa_secp521r1_sha512_10408", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10408_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10408_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10408_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10409 for ECDSA, tcId is 6 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10409_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10409_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10409_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x02, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0x9a, 0x7b, 0x6a, 0xc4, 0xec, 0xd0, 0x41, 0x0b, 0x47, 0x22, 0xca, 0x75, 0xba, 0x19, 0x7a, 0x40, 0x3a, 0x0a, 0x1f, 0x9e, 0xe0, 0xe7, 0xb3, 0x91, 0xb0, 0x64, 0x9f, 0xda, 0x1d, 0x39, 0x69, 0xee, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10409 = { .name = "ecdsa_secp521r1_sha512_10409", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10409_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10409_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10409_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10410 for ECDSA, tcId is 7 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10410_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10410_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10410_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x02, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10410 = { .name = "ecdsa_secp521r1_sha512_10410", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10410_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10410_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10410_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10411 for ECDSA, tcId is 8 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10411_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10411_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10411_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x01, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x5f, 0xd6, 0x1b, 0xc2, 0x96, 0xee, 0xee, 0x8b, 0x24, 0x5d, 0x01, 0x8b, 0x8e, 0xdd, 0x8f, 0x65, 0x96, 0x31, 0x96, 0x2a, 0xd7, 0xa1, 0xe8, 0xb5, 0xfe, 0x56, 0xcf, 0xdd, 0x01, 0x57, 0xce, 0x75, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10411 = { .name = "ecdsa_secp521r1_sha512_10411", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10411_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10411_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10411_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10412 for ECDSA, tcId is 9 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10412_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10412_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10412_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10412 = { .name = "ecdsa_secp521r1_sha512_10412", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10412_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10412_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10412_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10413 for ECDSA, tcId is 10 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10413_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10413_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10413_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10413 = { .name = "ecdsa_secp521r1_sha512_10413", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10413_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10413_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10413_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10414 for ECDSA, tcId is 11 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10414_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10414_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10414_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10414 = { .name = "ecdsa_secp521r1_sha512_10414", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10414_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10414_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10414_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10415 for ECDSA, tcId is 12 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10415_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10415_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10415_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10415 = { .name = "ecdsa_secp521r1_sha512_10415", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10415_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10415_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10415_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10416 for ECDSA, tcId is 13 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10416_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10416_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10416_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10416 = { .name = "ecdsa_secp521r1_sha512_10416", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10416_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10416_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10416_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10417 for ECDSA, tcId is 14 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10417_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10417_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10417_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10417 = { .name = "ecdsa_secp521r1_sha512_10417", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10417_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10417_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10417_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10418 for ECDSA, tcId is 15 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10418_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10418_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10418_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10418 = { .name = "ecdsa_secp521r1_sha512_10418", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10418_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10418_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10418_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10419 for ECDSA, tcId is 16 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10419_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10419_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10419_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10419 = { .name = "ecdsa_secp521r1_sha512_10419", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10419_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10419_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10419_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10420 for ECDSA, tcId is 17 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10420_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10420_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10420_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10420 = { .name = "ecdsa_secp521r1_sha512_10420", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10420_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10420_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10420_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10421 for ECDSA, tcId is 18 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10421_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10421_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10421_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10421 = { .name = "ecdsa_secp521r1_sha512_10421", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10421_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10421_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10421_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10422 for ECDSA, tcId is 19 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10422_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10422_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10422_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10422 = { .name = "ecdsa_secp521r1_sha512_10422", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10422_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10422_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10422_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10423 for ECDSA, tcId is 20 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10423_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10423_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10423_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10423 = { .name = "ecdsa_secp521r1_sha512_10423", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10423_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10423_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10423_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10424 for ECDSA, tcId is 21 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10424_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10424_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10424_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10424 = { .name = "ecdsa_secp521r1_sha512_10424", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10424_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10424_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10424_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10425 for ECDSA, tcId is 22 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10425_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10425_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10425_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10425 = { .name = "ecdsa_secp521r1_sha512_10425", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10425_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10425_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10425_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10426 for ECDSA, tcId is 23 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10426_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10426_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10426_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10426 = { .name = "ecdsa_secp521r1_sha512_10426", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10426_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10426_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10426_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10427 for ECDSA, tcId is 24 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10427_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10427_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10427_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10427 = { .name = "ecdsa_secp521r1_sha512_10427", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10427_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10427_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10427_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10428 for ECDSA, tcId is 25 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10428_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10428_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10428_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10428 = { .name = "ecdsa_secp521r1_sha512_10428", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10428_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10428_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10428_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10429 for ECDSA, tcId is 26 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10429_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10429_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10429_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10429 = { .name = "ecdsa_secp521r1_sha512_10429", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10429_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10429_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10429_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10430 for ECDSA, tcId is 27 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10430_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10430_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10430_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10430 = { .name = "ecdsa_secp521r1_sha512_10430", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10430_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10430_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10430_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10431 for ECDSA, tcId is 28 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10431_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10431_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10431_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10431 = { .name = "ecdsa_secp521r1_sha512_10431", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10431_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10431_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10431_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10432 for ECDSA, tcId is 29 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10432_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10432_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10432_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10432 = { .name = "ecdsa_secp521r1_sha512_10432", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10432_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10432_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10432_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10433 for ECDSA, tcId is 30 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10433_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10433_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10433_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10433 = { .name = "ecdsa_secp521r1_sha512_10433", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10433_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10433_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10433_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10434 for ECDSA, tcId is 31 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10434_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10434_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10434_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10434 = { .name = "ecdsa_secp521r1_sha512_10434", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10434_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10434_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10434_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10435 for ECDSA, tcId is 32 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10435_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10435_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10435_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10435 = { .name = "ecdsa_secp521r1_sha512_10435", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10435_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10435_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10435_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10436 for ECDSA, tcId is 33 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10436_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10436_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10436_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10436 = { .name = "ecdsa_secp521r1_sha512_10436", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10436_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10436_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10436_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10437 for ECDSA, tcId is 34 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10437_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10437_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10437_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10437 = { .name = "ecdsa_secp521r1_sha512_10437", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10437_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10437_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10437_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10438 for ECDSA, tcId is 35 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10438_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10438_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10438_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10438 = { .name = "ecdsa_secp521r1_sha512_10438", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10438_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10438_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10438_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10439 for ECDSA, tcId is 36 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10439_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10439_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10439_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10439 = { .name = "ecdsa_secp521r1_sha512_10439", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10439_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10439_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10439_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10440 for ECDSA, tcId is 37 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10440_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10440_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10440_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10440 = { .name = "ecdsa_secp521r1_sha512_10440", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10440_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10440_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10440_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10441 for ECDSA, tcId is 38 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10441_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10441_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10441_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10441 = { .name = "ecdsa_secp521r1_sha512_10441", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10441_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10441_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10441_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10442 for ECDSA, tcId is 39 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10442_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10442_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10442_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10442 = { .name = "ecdsa_secp521r1_sha512_10442", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10442_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10442_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10442_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10443 for ECDSA, tcId is 40 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10443_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10443_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10443_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10443 = { .name = "ecdsa_secp521r1_sha512_10443", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10443_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10443_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10443_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10444 for ECDSA, tcId is 41 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10444_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10444_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10444_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10444 = { .name = "ecdsa_secp521r1_sha512_10444", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10444_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10444_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10444_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10445 for ECDSA, tcId is 42 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10445_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10445_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10445_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10445 = { .name = "ecdsa_secp521r1_sha512_10445", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10445_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10445_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10445_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10446 for ECDSA, tcId is 43 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10446_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10446_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10446_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10446 = { .name = "ecdsa_secp521r1_sha512_10446", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10446_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10446_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10446_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10447 for ECDSA, tcId is 44 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10447_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10447_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10447_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10447 = { .name = "ecdsa_secp521r1_sha512_10447", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10447_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10447_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10447_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10448 for ECDSA, tcId is 45 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10448_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10448_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10448_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10448 = { .name = "ecdsa_secp521r1_sha512_10448", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10448_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10448_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10448_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10449 for ECDSA, tcId is 46 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10449_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10449_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10449_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10449 = { .name = "ecdsa_secp521r1_sha512_10449", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10449_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10449_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10449_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10450 for ECDSA, tcId is 47 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10450_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10450_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10450_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10450 = { .name = "ecdsa_secp521r1_sha512_10450", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10450_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10450_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10450_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10451 for ECDSA, tcId is 48 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10451_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10451_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10451_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10451 = { .name = "ecdsa_secp521r1_sha512_10451", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10451_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10451_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10451_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10452 for ECDSA, tcId is 49 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10452_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10452_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10452_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10452 = { .name = "ecdsa_secp521r1_sha512_10452", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10452_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10452_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10452_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10453 for ECDSA, tcId is 50 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10453_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10453_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10453_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10453 = { .name = "ecdsa_secp521r1_sha512_10453", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10453_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10453_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10453_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10454 for ECDSA, tcId is 51 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10454_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10454_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10454_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10454 = { .name = "ecdsa_secp521r1_sha512_10454", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10454_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10454_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10454_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10455 for ECDSA, tcId is 52 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10455_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10455_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10455_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10455 = { .name = "ecdsa_secp521r1_sha512_10455", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10455_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10455_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10455_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10456 for ECDSA, tcId is 53 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10456_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10456_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10456_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10456 = { .name = "ecdsa_secp521r1_sha512_10456", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10456_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10456_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10456_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10457 for ECDSA, tcId is 54 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10457_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10457_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10457_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10457 = { .name = "ecdsa_secp521r1_sha512_10457", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10457_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10457_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10457_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10458 for ECDSA, tcId is 55 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10458_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10458_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10458_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10458 = { .name = "ecdsa_secp521r1_sha512_10458", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10458_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10458_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10458_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10459 for ECDSA, tcId is 56 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10459_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10459_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10459_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10459 = { .name = "ecdsa_secp521r1_sha512_10459", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10459_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10459_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10459_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10460 for ECDSA, tcId is 57 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10460_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10460_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10460_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10460 = { .name = "ecdsa_secp521r1_sha512_10460", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10460_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10460_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10460_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10461 for ECDSA, tcId is 58 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10461_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10461_msg[] = { 0x39, 0x35, 0x30, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10461_sig[] = { 0x00, 0xb4, 0xb1, 0x06, 0x46, 0xa6, 0x68, 0xc3, 0x85, 0xe1, 0xc4, 0xda, 0x61, 0x3e, 0xb6, 0x59, 0x2c, 0x09, 0x76, 0xfc, 0x4d, 0xf8, 0x43, 0xfc, 0x44, 0x6f, 0x20, 0x67, 0x3b, 0xe5, 0xac, 0x18, 0xc7, 0xd8, 0x60, 0x8a, 0x94, 0x3f, 0x01, 0x9d, 0x96, 0x21, 0x62, 0x54, 0xb0, 0x9d, 0xe5, 0xf2, 0x0f, 0x31, 0x59, 0x40, 0x2c, 0xed, 0x88, 0xef, 0x80, 0x5a, 0x41, 0x54, 0xf7, 0x80, 0xe0, 0x93, 0xe0, 0x44, 0x00, 0x65, 0xcd, 0x4e, 0x7f, 0x2d, 0x8b, 0x75, 0x2c, 0x35, 0xa6, 0x2f, 0xc1, 0x1a, 0x4a, 0xb7, 0x45, 0xa9, 0x1c, 0xa8, 0x06, 0x98, 0xa2, 0x26, 0xb4, 0x1f, 0x15, 0x6f, 0xb7, 0x64, 0xb7, 0x9f, 0x4d, 0x76, 0x54, 0x81, 0x40, 0xeb, 0x94, 0xd2, 0xc4, 0x77, 0xc0, 0xa9, 0xbe, 0x3e, 0x1d, 0x4d, 0x1a, 0xcb, 0xf9, 0xcf, 0x44, 0x97, 0x01, 0xc1, 0x0b, 0xd4, 0x7c, 0x2e, 0x36, 0x98, 0xb3, 0x28, 0x79, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10461 = { .name = "ecdsa_secp521r1_sha512_10461", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10461_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10461_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_10461_sig, .siglen = 132, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10462 for ECDSA, tcId is 59 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10462_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10462_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10462_sig[] = { 0x01, 0x20, 0x9e, 0x6f, 0x7b, 0x6f, 0x2f, 0x76, 0x42, 0x61, 0x76, 0x6d, 0x41, 0x06, 0xc3, 0xe4, 0xa4, 0x3a, 0xc6, 0x15, 0xf6, 0x45, 0xf3, 0xef, 0x5c, 0x71, 0x39, 0x65, 0x1e, 0x86, 0xe4, 0xa1, 0x77, 0xf9, 0xc2, 0xab, 0x68, 0x02, 0x7a, 0xfb, 0xc6, 0x78, 0x4c, 0xcb, 0x78, 0xd0, 0x5c, 0x25, 0x8a, 0x8b, 0x9b, 0x18, 0xfb, 0x1c, 0x0f, 0x28, 0xbe, 0x4d, 0x02, 0x4d, 0xa9, 0x07, 0x38, 0xfb, 0xd3, 0x74, 0x01, 0xad, 0xe5, 0xd2, 0xcb, 0x6b, 0xf7, 0x9d, 0x80, 0x58, 0x3a, 0xeb, 0x11, 0xac, 0x32, 0x54, 0xfc, 0x15, 0x1f, 0xa3, 0x63, 0x30, 0x55, 0x08, 0xa0, 0xf1, 0x21, 0x45, 0x7d, 0x00, 0x91, 0x1f, 0x8f, 0x5e, 0xf6, 0xd4, 0xec, 0x27, 0x46, 0x0d, 0x26, 0xf3, 0xb5, 0x6f, 0x44, 0x47, 0xf4, 0x34, 0xff, 0x9a, 0xbe, 0x6a, 0x91, 0xe5, 0x05, 0x5e, 0x7f, 0xe7, 0x70, 0x73, 0x45, 0xe5, 0x62, 0x98, 0x3d, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10462 = { .name = "ecdsa_secp521r1_sha512_10462", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10462_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10462_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10462_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10463 for ECDSA, tcId is 60 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10463_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10463_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10463_sig[] = { 0x01, 0xc0, 0x83, 0x2c, 0x97, 0x3a, 0x45, 0x5c, 0xac, 0x48, 0xa4, 0x43, 0x96, 0x59, 0xaa, 0x21, 0x14, 0x60, 0x36, 0xc5, 0x2e, 0xc1, 0x51, 0x41, 0x21, 0xc6, 0x67, 0x14, 0x34, 0x8a, 0x1c, 0x0e, 0x2c, 0x70, 0x99, 0xa2, 0x46, 0x6d, 0x9a, 0xcb, 0x49, 0x32, 0x5a, 0x0c, 0xb5, 0x09, 0xe5, 0xdf, 0xf2, 0xef, 0xbc, 0xd9, 0x03, 0x69, 0xd3, 0x02, 0x7c, 0xbb, 0x7d, 0xca, 0x58, 0xa1, 0x34, 0x27, 0x8d, 0x05, 0x00, 0xa4, 0x26, 0xc0, 0x63, 0xab, 0x5c, 0xc6, 0xaf, 0x20, 0xdd, 0x1b, 0xa8, 0xa5, 0x19, 0xfa, 0xc9, 0x10, 0x18, 0x35, 0x61, 0x59, 0x8e, 0x67, 0xc0, 0x92, 0x9e, 0x25, 0xf9, 0xc3, 0xaa, 0xeb, 0x24, 0x5c, 0x56, 0x47, 0xfb, 0xa2, 0x1e, 0x30, 0xc1, 0x03, 0x30, 0x4d, 0xc6, 0xf4, 0x9e, 0x6d, 0xec, 0x68, 0xa7, 0x83, 0x35, 0x33, 0xe4, 0xe5, 0x44, 0x82, 0x40, 0xbd, 0xe0, 0x23, 0xfe, 0x20, 0x1e, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10463 = { .name = "ecdsa_secp521r1_sha512_10463", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10463_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10463_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10463_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10464 for ECDSA, tcId is 61 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10464_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10464_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10464_sig[] = { 0x00, 0x0d, 0x01, 0xcd, 0xe6, 0x4d, 0xda, 0x4d, 0xbc, 0xef, 0x1a, 0x9b, 0x92, 0x47, 0x79, 0x59, 0x82, 0x17, 0xb9, 0x7e, 0xb6, 0x88, 0xd9, 0xb4, 0xa4, 0xfd, 0x20, 0xd1, 0xb8, 0x1f, 0xf0, 0xbb, 0x87, 0x0a, 0xbf, 0xf1, 0xb0, 0xdb, 0x6d, 0xfc, 0x37, 0x62, 0xf2, 0x7c, 0x39, 0x54, 0xf2, 0x30, 0xa7, 0x93, 0x3d, 0x9e, 0xa3, 0x97, 0xa9, 0x72, 0xca, 0xac, 0x5e, 0xd2, 0x18, 0x3e, 0xc7, 0x27, 0x16, 0xc7, 0x01, 0xc6, 0x53, 0x0f, 0xb6, 0xb9, 0x13, 0x00, 0x5f, 0x81, 0xe1, 0x56, 0xbe, 0x89, 0xb3, 0x84, 0x77, 0x01, 0x82, 0x9f, 0xbb, 0x31, 0x0d, 0x8a, 0x4c, 0x76, 0x12, 0x12, 0xc6, 0xd2, 0xf8, 0x75, 0x01, 0x74, 0xf2, 0xbf, 0x81, 0xc2, 0x38, 0xfd, 0xde, 0x43, 0x70, 0xfa, 0x87, 0xde, 0x32, 0x0f, 0x57, 0xdb, 0xed, 0x96, 0x69, 0x1a, 0xf4, 0x5c, 0xb9, 0x9f, 0x3d, 0xaa, 0x86, 0x5e, 0xdc, 0xdd, 0xa5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10464 = { .name = "ecdsa_secp521r1_sha512_10464", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10464_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10464_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10464_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10465 for ECDSA, tcId is 62 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10465_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10465_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10465_sig[] = { 0x00, 0xc0, 0x09, 0xc7, 0x4e, 0xc7, 0x07, 0x25, 0x23, 0x25, 0xd7, 0x8f, 0x4e, 0x7f, 0x14, 0xbe, 0x28, 0xf5, 0x62, 0x72, 0xbe, 0x17, 0xc0, 0xc1, 0x8c, 0x90, 0xad, 0x4c, 0x07, 0x32, 0x2c, 0xef, 0x4e, 0xea, 0x44, 0x4c, 0x8f, 0xea, 0xbf, 0x41, 0xa2, 0x13, 0xe3, 0xe8, 0x46, 0xf8, 0xac, 0x8b, 0xb7, 0x75, 0x0d, 0x49, 0x14, 0x30, 0x69, 0xcd, 0x01, 0x87, 0x7d, 0x53, 0x0b, 0xb9, 0x81, 0xf1, 0xa8, 0x5b, 0x00, 0x1f, 0x1c, 0x27, 0xef, 0x97, 0xf4, 0x34, 0xa8, 0xc2, 0xff, 0x31, 0x5d, 0xd3, 0x9d, 0x90, 0x97, 0x09, 0x77, 0x5b, 0xb3, 0xc7, 0x58, 0x82, 0x43, 0xbd, 0xfd, 0x8f, 0x7c, 0x86, 0x6c, 0x49, 0xb3, 0x36, 0x97, 0x19, 0xd5, 0xb7, 0x4a, 0x47, 0x92, 0x4b, 0xbc, 0xe5, 0x73, 0x01, 0x67, 0x5e, 0x2b, 0xaa, 0xdc, 0xec, 0x43, 0x8e, 0x07, 0xe6, 0xd5, 0x32, 0xab, 0xa6, 0x64, 0x25, 0x3a, 0xb0, 0x95, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10465 = { .name = "ecdsa_secp521r1_sha512_10465", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10465_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10465_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10465_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10466 for ECDSA, tcId is 63 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10466_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10466_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10466_sig[] = { 0x01, 0xd3, 0xb1, 0x7a, 0x34, 0xb1, 0x9d, 0x13, 0x47, 0x73, 0x98, 0x8c, 0x43, 0x4a, 0x9f, 0xb7, 0xf2, 0x2a, 0x57, 0xdf, 0xb4, 0xc4, 0xbc, 0xca, 0x03, 0x1e, 0x21, 0x3e, 0x1b, 0x9a, 0x56, 0xdb, 0x0e, 0xcb, 0x2f, 0x3c, 0x54, 0xcf, 0x9b, 0x1b, 0x6e, 0x59, 0x81, 0x36, 0x96, 0x52, 0xde, 0x37, 0x33, 0x7a, 0x7a, 0x7d, 0x7d, 0xdb, 0x54, 0xd6, 0x7b, 0x06, 0x7b, 0xbc, 0xe0, 0x1f, 0xd7, 0xfd, 0x28, 0x08, 0x00, 0xc9, 0x03, 0x17, 0xdf, 0xa0, 0x61, 0x12, 0x25, 0x57, 0xeb, 0x38, 0x99, 0x93, 0x99, 0x24, 0xa8, 0xea, 0x3c, 0xdd, 0x88, 0x6e, 0x0f, 0x2e, 0x5f, 0x2c, 0x38, 0x4b, 0x65, 0xb1, 0xa4, 0x0d, 0xe5, 0xf0, 0x0f, 0xd9, 0xfc, 0xe8, 0x89, 0xfc, 0x31, 0x3a, 0x6a, 0x9d, 0x5f, 0x0a, 0x9c, 0xd3, 0xa7, 0xb8, 0x9b, 0x7b, 0xa8, 0xe9, 0x78, 0x07, 0x03, 0x1f, 0x3d, 0x1e, 0x3f, 0x9c, 0x10, 0x3f, 0x0a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10466 = { .name = "ecdsa_secp521r1_sha512_10466", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10466_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10466_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10466_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10467 for ECDSA, tcId is 64 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10467_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10467_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10467_sig[] = { 0x00, 0xcd, 0xca, 0x52, 0x99, 0xe7, 0x88, 0x60, 0x0a, 0x3c, 0xa5, 0x93, 0x8d, 0x4a, 0x4c, 0x5f, 0x42, 0xb5, 0xee, 0xa3, 0xce, 0xfc, 0x99, 0x0e, 0x67, 0xaf, 0x95, 0xa4, 0x44, 0x9a, 0xac, 0x0a, 0xb5, 0x0e, 0x8f, 0xc4, 0x77, 0x8e, 0xfa, 0x49, 0x72, 0x23, 0xcd, 0xca, 0x07, 0xc0, 0xe5, 0xa5, 0x92, 0x01, 0x10, 0xf3, 0xa8, 0x7a, 0xfa, 0xaf, 0x26, 0x5b, 0xea, 0xdb, 0xb9, 0x1c, 0x00, 0xd1, 0x34, 0x64, 0x01, 0xa9, 0x2b, 0x9a, 0x55, 0x70, 0xb4, 0x2f, 0x91, 0xeb, 0xc3, 0xd8, 0xba, 0x27, 0x2d, 0xb9, 0x24, 0x14, 0x68, 0x15, 0x47, 0x83, 0x54, 0x8d, 0x3f, 0xcf, 0xb6, 0xef, 0x46, 0xc9, 0xe0, 0x37, 0xbb, 0x62, 0x17, 0xaf, 0x0a, 0x31, 0xef, 0x95, 0x2c, 0x27, 0x60, 0x46, 0x29, 0xad, 0x57, 0x75, 0xe7, 0x69, 0x5c, 0x63, 0xef, 0xa1, 0x38, 0xce, 0xe8, 0x32, 0x6a, 0x51, 0xc1, 0xb0, 0x4d, 0x0c, 0x65, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10467 = { .name = "ecdsa_secp521r1_sha512_10467", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10467_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10467_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10467_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10468 for ECDSA, tcId is 65 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10468_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10468_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10468_sig[] = { 0x01, 0x66, 0x0b, 0x0e, 0xd1, 0x5d, 0x5f, 0x63, 0x04, 0x4c, 0xb1, 0x89, 0xe1, 0xa4, 0x05, 0xbc, 0xb5, 0x91, 0xc3, 0x72, 0x17, 0xd0, 0xe0, 0x00, 0x00, 0x86, 0x14, 0xb1, 0x52, 0x66, 0x5d, 0x5b, 0xb9, 0x35, 0x3a, 0x38, 0x26, 0x85, 0x4a, 0x8b, 0xc6, 0xeb, 0xed, 0x42, 0x3b, 0x15, 0x68, 0x0e, 0x43, 0x40, 0xa0, 0x07, 0x01, 0xb1, 0x7b, 0xae, 0x24, 0xbd, 0x39, 0x9b, 0xcf, 0xf7, 0xe0, 0x43, 0x8b, 0xfb, 0x01, 0xc4, 0x7f, 0x2f, 0x5c, 0x61, 0x43, 0xd2, 0xee, 0xf0, 0x63, 0x75, 0x71, 0x14, 0xaa, 0xeb, 0x27, 0x82, 0x7b, 0x6a, 0x8f, 0x67, 0x5d, 0x18, 0x25, 0xda, 0xc7, 0xf4, 0x54, 0x8c, 0xbf, 0x78, 0xa3, 0x7e, 0xb9, 0x62, 0x1a, 0x29, 0xe9, 0xb1, 0x4c, 0xf6, 0x1f, 0xc6, 0xae, 0x49, 0xe7, 0xe6, 0xe1, 0x53, 0x50, 0xa4, 0xb9, 0x0a, 0x4a, 0x89, 0x7f, 0xf6, 0x9b, 0x0c, 0x59, 0xb6, 0x95, 0x08, 0xeb, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10468 = { .name = "ecdsa_secp521r1_sha512_10468", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10468_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10468_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10468_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10469 for ECDSA, tcId is 66 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10469_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10469_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10469_sig[] = { 0x00, 0x36, 0x46, 0x84, 0x85, 0x6c, 0x7c, 0x02, 0xbf, 0xb2, 0xad, 0x2d, 0xe6, 0x03, 0xd1, 0x08, 0x83, 0xca, 0x93, 0xc1, 0x22, 0xd4, 0xce, 0xbe, 0xf2, 0x76, 0x46, 0x7a, 0x9b, 0x76, 0x20, 0xfb, 0x53, 0x0e, 0x4d, 0x05, 0xd0, 0x7c, 0x15, 0xab, 0x94, 0x8b, 0x9c, 0xe7, 0x68, 0x25, 0x61, 0x30, 0x79, 0x13, 0xb6, 0x4e, 0xa6, 0x89, 0x6e, 0xce, 0x10, 0x95, 0xdc, 0x64, 0x36, 0x9f, 0x1a, 0x9d, 0x5c, 0x0d, 0x00, 0x9e, 0x6d, 0xb2, 0xff, 0x96, 0xd9, 0xd7, 0x11, 0x50, 0x44, 0x0f, 0xd4, 0x49, 0x92, 0x65, 0x6c, 0xa1, 0x18, 0xfc, 0xaf, 0x6b, 0xd0, 0x44, 0x99, 0x31, 0x4e, 0x8b, 0xa6, 0x1a, 0x55, 0xa8, 0x79, 0x0a, 0xac, 0x02, 0x3d, 0xdb, 0x68, 0x60, 0x0f, 0xbd, 0x7e, 0xd4, 0xcd, 0x4d, 0xec, 0xb1, 0x76, 0xe8, 0xbd, 0x78, 0x22, 0xea, 0x31, 0xd7, 0x5a, 0xdc, 0xbd, 0xac, 0xca, 0xfc, 0xf5, 0x10, 0xc2, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10469 = { .name = "ecdsa_secp521r1_sha512_10469", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10469_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10469_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10469_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10470 for ECDSA, tcId is 67 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10470_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10470_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10470_sig[] = { 0x01, 0xa3, 0x17, 0xe4, 0x90, 0x14, 0xf1, 0xbf, 0x3a, 0xfc, 0x09, 0xcc, 0x04, 0x85, 0x31, 0x01, 0x0e, 0x21, 0x44, 0xb6, 0x62, 0xca, 0xc6, 0x57, 0xe5, 0x1b, 0x32, 0xbb, 0x43, 0x2d, 0x27, 0x4a, 0x73, 0x0b, 0x53, 0x5f, 0xb2, 0xde, 0x66, 0xfa, 0x8d, 0xdd, 0x26, 0xfa, 0xa3, 0xf4, 0x6e, 0x00, 0x43, 0x89, 0xd2, 0x55, 0x17, 0xc5, 0x6e, 0x7d, 0x8a, 0x1d, 0x39, 0x56, 0x3b, 0x0e, 0x8c, 0x9c, 0x21, 0x5b, 0x01, 0xad, 0x2e, 0x12, 0x12, 0xe1, 0x68, 0x0b, 0x66, 0x0a, 0x1c, 0x07, 0xf5, 0x4a, 0xdd, 0xff, 0x57, 0x5c, 0x8c, 0x82, 0x98, 0xe2, 0x6a, 0x14, 0xc5, 0x16, 0xf5, 0x17, 0xfb, 0x5f, 0x96, 0x6a, 0x2b, 0x38, 0x3a, 0xa4, 0x6a, 0x48, 0x3f, 0xdb, 0xfa, 0x72, 0x71, 0x1d, 0x60, 0xc0, 0xf6, 0x7a, 0x2c, 0x03, 0xd6, 0x3d, 0x26, 0x26, 0xff, 0xe2, 0x71, 0xe0, 0xce, 0x35, 0x3a, 0x4d, 0x4b, 0x09, 0xbd, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10470 = { .name = "ecdsa_secp521r1_sha512_10470", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10470_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10470_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10470_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10471 for ECDSA, tcId is 68 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10471_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10471_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10471_sig[] = { 0x01, 0xc0, 0x9b, 0x29, 0xfc, 0x4d, 0xa0, 0x4e, 0x9b, 0x86, 0x09, 0x7b, 0xd6, 0xd6, 0x80, 0x6a, 0xa9, 0x69, 0xce, 0xb3, 0x7c, 0xe5, 0x2e, 0xea, 0xc5, 0xe9, 0x51, 0x8d, 0x27, 0x54, 0x1c, 0x3f, 0x30, 0xc0, 0x0f, 0x11, 0x3d, 0x9d, 0xd3, 0xb0, 0x07, 0xda, 0xe6, 0xf3, 0x81, 0x89, 0x6d, 0x43, 0xfc, 0x6d, 0xdf, 0xb3, 0xfa, 0x25, 0x6a, 0x36, 0x52, 0x9b, 0x05, 0x4e, 0x41, 0x6e, 0xd6, 0x38, 0x05, 0x99, 0x01, 0x13, 0xe5, 0x62, 0x2c, 0xb1, 0xe4, 0xc4, 0xbb, 0x08, 0x42, 0xf3, 0xd3, 0x96, 0xd7, 0xe6, 0x60, 0x24, 0x11, 0x16, 0xe9, 0x4e, 0x81, 0x20, 0xa6, 0x02, 0xe3, 0xd2, 0x95, 0x27, 0x01, 0xb1, 0xa1, 0x14, 0x15, 0xa3, 0xd8, 0xc5, 0x03, 0xad, 0xce, 0xd1, 0x60, 0x45, 0x0f, 0xd1, 0x31, 0x57, 0xad, 0x14, 0x7d, 0x2d, 0x65, 0xd7, 0x74, 0x49, 0x45, 0x86, 0x59, 0x35, 0x0e, 0x20, 0xa5, 0x45, 0x60, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10471 = { .name = "ecdsa_secp521r1_sha512_10471", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10471_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10471_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10471_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10472 for ECDSA, tcId is 69 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10472_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10472_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10472_sig[] = { 0x00, 0x78, 0xf4, 0xa2, 0x96, 0x84, 0x60, 0xea, 0x8f, 0x64, 0xa9, 0x38, 0xb3, 0xa9, 0x7c, 0x91, 0x4e, 0xb0, 0xcc, 0xfa, 0x94, 0xeb, 0x08, 0x63, 0x6e, 0xfe, 0xe9, 0xd5, 0xad, 0x86, 0x68, 0xce, 0x1c, 0x90, 0x99, 0x57, 0x3a, 0xbd, 0x14, 0x6d, 0xf9, 0xe7, 0xb2, 0xcc, 0xaa, 0xa1, 0xa2, 0x5d, 0xe9, 0x03, 0xf8, 0x59, 0x62, 0x84, 0x93, 0x56, 0xa8, 0x72, 0xe8, 0x8e, 0x54, 0x5b, 0xab, 0xc2, 0x89, 0x74, 0x00, 0xf2, 0x72, 0x9e, 0x95, 0x93, 0xc9, 0xfc, 0xdf, 0x59, 0x71, 0xb2, 0x1e, 0x36, 0x7f, 0xfd, 0xc8, 0x7a, 0xa7, 0x52, 0x03, 0x93, 0x52, 0x7c, 0x6f, 0x68, 0xab, 0x51, 0x2b, 0x88, 0xb8, 0x39, 0x00, 0x3c, 0x1c, 0x99, 0x52, 0xb0, 0x4f, 0x2d, 0xc7, 0x40, 0x10, 0xa3, 0x10, 0x71, 0xee, 0x20, 0xa9, 0xfb, 0x1c, 0x7e, 0x11, 0x87, 0xd0, 0x4d, 0xe7, 0x1b, 0x3f, 0x43, 0x27, 0xdf, 0x12, 0x8c, 0xcd, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10472 = { .name = "ecdsa_secp521r1_sha512_10472", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10472_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10472_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10472_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10473 for ECDSA, tcId is 70 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10473_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10473_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10473_sig[] = { 0x01, 0x9f, 0xae, 0xd1, 0x47, 0xa7, 0x6b, 0x65, 0x77, 0x9d, 0x09, 0x89, 0xe1, 0x30, 0x08, 0x02, 0x84, 0x4c, 0x9b, 0xa0, 0x9f, 0x33, 0x8c, 0x5e, 0x31, 0xa2, 0x4d, 0x9e, 0xbf, 0x8f, 0x0b, 0x0b, 0x4c, 0x21, 0xf5, 0x9d, 0x36, 0x9a, 0xc1, 0x0e, 0x31, 0x5f, 0xa2, 0xb7, 0x60, 0x5b, 0x0f, 0x17, 0xa9, 0xc0, 0x7c, 0xf6, 0xce, 0x4c, 0x83, 0x83, 0x8e, 0x58, 0x33, 0x3a, 0x33, 0x90, 0x14, 0x2d, 0x79, 0xd0, 0x00, 0x5f, 0x4d, 0xe7, 0x1f, 0xda, 0xce, 0xd1, 0xe8, 0xda, 0x86, 0xef, 0xd4, 0x7e, 0xcb, 0xda, 0xc6, 0xa6, 0xff, 0xc6, 0xd6, 0x9d, 0xf7, 0x1d, 0xa7, 0xce, 0xb5, 0x59, 0x64, 0x75, 0xcd, 0xfe, 0xce, 0xa3, 0xd0, 0x0f, 0x07, 0x4d, 0x2d, 0xe8, 0x9e, 0x0f, 0xcc, 0x05, 0xe3, 0x23, 0x1d, 0x53, 0x1f, 0x0d, 0x38, 0xf2, 0xb7, 0xc6, 0xfe, 0x4e, 0xcf, 0x67, 0xa0, 0xcd, 0xdd, 0xc2, 0x1d, 0x08, 0x67, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10473 = { .name = "ecdsa_secp521r1_sha512_10473", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10473_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10473_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10473_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10474 for ECDSA, tcId is 71 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10474_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10474_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10474_sig[] = { 0x00, 0xd0, 0xb1, 0x44, 0x35, 0x0a, 0x21, 0x28, 0xf0, 0x42, 0xbc, 0x1a, 0x27, 0xf6, 0xc0, 0x21, 0xda, 0xd1, 0xec, 0x03, 0x1b, 0xe8, 0xf1, 0xd8, 0x30, 0x47, 0x97, 0xf9, 0xdd, 0xcb, 0x74, 0x29, 0x74, 0xaa, 0xe2, 0x09, 0xf0, 0x14, 0x98, 0x01, 0x74, 0xb9, 0xd4, 0xe4, 0x34, 0xe3, 0xf5, 0x32, 0x47, 0x88, 0x9d, 0x2d, 0xa4, 0xb7, 0x67, 0x59, 0x31, 0x79, 0xcb, 0x4e, 0xda, 0x47, 0xe7, 0x99, 0x64, 0x30, 0x01, 0x84, 0xd3, 0x41, 0x6d, 0xee, 0x35, 0xba, 0x88, 0x07, 0x70, 0x3a, 0x91, 0xac, 0x92, 0x70, 0x96, 0xc1, 0x09, 0x59, 0xa0, 0x5c, 0xbf, 0xfd, 0x81, 0x03, 0xa9, 0x3a, 0x9f, 0x20, 0xa1, 0x15, 0x37, 0xbe, 0xd7, 0xa6, 0x45, 0xf3, 0x22, 0x95, 0xe4, 0xab, 0xce, 0x49, 0x35, 0x79, 0xca, 0xa4, 0xe2, 0x24, 0x20, 0x60, 0xcc, 0x4d, 0x58, 0xb2, 0x41, 0x48, 0x70, 0xe9, 0x8b, 0x93, 0x36, 0x79, 0x57, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10474 = { .name = "ecdsa_secp521r1_sha512_10474", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10474_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10474_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10474_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10475 for ECDSA, tcId is 72 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10475_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10475_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10475_sig[] = { 0x00, 0x05, 0x25, 0x7a, 0x0f, 0x45, 0xee, 0x2a, 0xe5, 0xcc, 0x30, 0x28, 0x3d, 0x23, 0xc4, 0x7c, 0x96, 0xf6, 0xde, 0xaa, 0x3a, 0xc1, 0x47, 0x3e, 0x8e, 0x8a, 0x40, 0xea, 0xf6, 0x1b, 0xc4, 0xb0, 0xef, 0x8b, 0xd1, 0x8d, 0x11, 0x98, 0x3f, 0x25, 0x7e, 0xc4, 0xb1, 0xd8, 0xd0, 0x4e, 0x76, 0xa1, 0x22, 0xb5, 0xbb, 0xe1, 0xd3, 0x10, 0x65, 0x15, 0x90, 0x72, 0xc5, 0x8f, 0xd9, 0xbc, 0x3e, 0x98, 0x37, 0x68, 0x01, 0x22, 0xdb, 0xa5, 0x0d, 0x0e, 0xb7, 0x1b, 0xdb, 0xf0, 0x92, 0xa9, 0x4a, 0x7e, 0xa2, 0x80, 0x41, 0x29, 0x06, 0xe1, 0xf8, 0x49, 0xe9, 0x1d, 0xbd, 0x5d, 0x81, 0x58, 0xe3, 0xfc, 0x6c, 0xd1, 0x2e, 0x20, 0x46, 0x1b, 0x77, 0x65, 0x3e, 0x3d, 0xf2, 0xe4, 0x5b, 0x86, 0x88, 0x3f, 0x81, 0x07, 0x1b, 0x33, 0x65, 0x1a, 0xe1, 0xb8, 0x4c, 0xc8, 0xe7, 0xc3, 0x65, 0xab, 0x8d, 0x6a, 0x36, 0xd1, 0xcf, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10475 = { .name = "ecdsa_secp521r1_sha512_10475", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10475_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10475_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10475_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10476 for ECDSA, tcId is 73 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10476_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10476_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10476_sig[] = { 0x01, 0x4f, 0x62, 0x4a, 0xf9, 0xd8, 0x09, 0x6f, 0xe7, 0xa2, 0x90, 0x65, 0x1d, 0x23, 0xab, 0x26, 0x0d, 0xa6, 0x4e, 0x44, 0xb8, 0x86, 0xfe, 0xf4, 0xf3, 0x88, 0x1d, 0x0d, 0x98, 0x4d, 0x3b, 0x38, 0x7f, 0xdd, 0xcf, 0x65, 0xb1, 0xfa, 0x1d, 0xbb, 0x23, 0x90, 0x28, 0xfb, 0xab, 0x4a, 0x1d, 0xe6, 0xad, 0x15, 0x0c, 0xc8, 0xa4, 0xe4, 0xdb, 0x0a, 0x97, 0x1b, 0xb8, 0xbc, 0xf0, 0x1c, 0x47, 0x28, 0xff, 0x98, 0x01, 0x05, 0xe3, 0xb5, 0x5d, 0xb0, 0x14, 0x1c, 0x06, 0xd9, 0x85, 0x40, 0x96, 0xcc, 0x0f, 0x73, 0x41, 0x5d, 0xd2, 0xb8, 0x5a, 0x33, 0x1d, 0xa5, 0x0c, 0xfe, 0xa3, 0xbb, 0xf6, 0x48, 0xbb, 0xf8, 0x65, 0x1f, 0x61, 0xf2, 0xcd, 0x09, 0x38, 0x6b, 0x62, 0xfb, 0xb8, 0xce, 0x67, 0x24, 0x86, 0x83, 0xc2, 0x60, 0x89, 0x4d, 0x9e, 0xd5, 0x4d, 0x66, 0x67, 0xae, 0x02, 0x97, 0x8e, 0x38, 0xab, 0x99, 0x32, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10476 = { .name = "ecdsa_secp521r1_sha512_10476", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10476_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10476_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10476_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10477 for ECDSA, tcId is 74 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10477_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10477_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10477_sig[] = { 0x00, 0x2c, 0x95, 0x2d, 0x7e, 0x61, 0xe1, 0x09, 0x7c, 0xd7, 0xf7, 0x09, 0xe6, 0x2e, 0xc4, 0x86, 0x87, 0x9b, 0x38, 0x0b, 0x63, 0x79, 0x1c, 0x14, 0x6b, 0x54, 0x5c, 0x06, 0x4e, 0x65, 0xb3, 0x06, 0x02, 0x50, 0xd0, 0x0a, 0xf2, 0x79, 0xcf, 0x15, 0xea, 0xde, 0x67, 0x38, 0x4b, 0x28, 0x59, 0x4d, 0xb5, 0x42, 0x84, 0x5f, 0xcc, 0x65, 0x74, 0xef, 0x5d, 0x8d, 0x5b, 0xb8, 0xa1, 0x62, 0xe0, 0x35, 0x0a, 0x00, 0x01, 0x35, 0xac, 0x6d, 0x1c, 0xc0, 0x5b, 0x09, 0x5f, 0xba, 0xe2, 0x8b, 0x65, 0x2f, 0xe5, 0x38, 0x6b, 0x86, 0x89, 0xe2, 0x1a, 0x14, 0x99, 0x02, 0x36, 0xd3, 0xad, 0xa7, 0xce, 0xeb, 0x0c, 0x12, 0xa4, 0xf7, 0x74, 0xbf, 0xf7, 0xb8, 0x1c, 0x8d, 0x07, 0x57, 0x2b, 0x0c, 0x79, 0x85, 0x36, 0x4c, 0x5d, 0x31, 0xf3, 0x32, 0x71, 0xf0, 0xac, 0x3a, 0x2a, 0xfb, 0x88, 0xb4, 0x6b, 0xfe, 0xef, 0xba, 0xea, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10477 = { .name = "ecdsa_secp521r1_sha512_10477", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10477_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10477_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10477_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10478 for ECDSA, tcId is 75 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10478_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10478_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10478_sig[] = { 0x01, 0x79, 0x19, 0xef, 0xf7, 0x82, 0x25, 0xe1, 0x93, 0x7a, 0x92, 0x1f, 0x98, 0xf5, 0xd1, 0x53, 0xcb, 0xff, 0xa0, 0x39, 0x29, 0x81, 0x9f, 0x22, 0x8e, 0xe0, 0x13, 0xf8, 0xe5, 0x95, 0x49, 0xb0, 0x4b, 0x98, 0x67, 0x00, 0x6a, 0x8d, 0xf2, 0x5a, 0x93, 0xa6, 0xa2, 0x5d, 0xd1, 0xd3, 0xf5, 0x40, 0x23, 0x9a, 0x8e, 0xd1, 0x40, 0x47, 0xea, 0x00, 0x81, 0x1d, 0xa9, 0x30, 0x5e, 0xc5, 0x15, 0xad, 0x00, 0x0d, 0x01, 0x1f, 0xb8, 0x73, 0xbd, 0xae, 0x17, 0x57, 0x80, 0x1e, 0x57, 0x5c, 0x5d, 0xf6, 0x2c, 0xf8, 0x2a, 0x18, 0x81, 0xaf, 0x3c, 0xd6, 0xed, 0x17, 0xdc, 0x50, 0xed, 0xbe, 0x6c, 0x5f, 0xd0, 0xf4, 0xd3, 0x17, 0x66, 0x67, 0x0b, 0x2a, 0xa5, 0x72, 0xa9, 0xe6, 0x54, 0x7b, 0x36, 0x14, 0x2a, 0xfa, 0x84, 0x64, 0xd0, 0xbe, 0x4b, 0xf4, 0x19, 0x30, 0x62, 0x9d, 0xc0, 0x4c, 0x85, 0xe0, 0x1b, 0x2e, 0xe8, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10478 = { .name = "ecdsa_secp521r1_sha512_10478", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10478_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10478_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10478_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10479 for ECDSA, tcId is 76 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10479_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10479_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10479_sig[] = { 0x00, 0x6a, 0xc9, 0xb3, 0x70, 0x06, 0x7b, 0x13, 0xac, 0x2b, 0x57, 0xf3, 0x5d, 0x6d, 0x9b, 0x1f, 0xaa, 0x93, 0xb9, 0xb0, 0x68, 0xef, 0x5d, 0xdf, 0x8b, 0xde, 0x3a, 0x54, 0x02, 0x48, 0x10, 0xaa, 0x22, 0x26, 0x56, 0x00, 0x65, 0xb0, 0xcb, 0x75, 0x01, 0xdf, 0x96, 0xb4, 0x75, 0x6c, 0xe1, 0xe1, 0xfa, 0x60, 0x7f, 0x86, 0xa9, 0x42, 0x36, 0x78, 0x94, 0xa1, 0xf7, 0x72, 0x8b, 0xd5, 0xf2, 0x2c, 0xf1, 0x77, 0x00, 0x8b, 0x47, 0xa9, 0xe1, 0x37, 0x0c, 0x9f, 0x5b, 0xf4, 0x67, 0x7d, 0x55, 0x4c, 0x00, 0xe9, 0xac, 0x3e, 0xa7, 0xcd, 0xfc, 0x78, 0x83, 0x6a, 0xc5, 0x3a, 0xc7, 0x10, 0xb7, 0xf3, 0xbf, 0xf8, 0xc2, 0x29, 0x77, 0x80, 0xc6, 0x9a, 0x9f, 0xdd, 0xb8, 0x0e, 0x03, 0xa6, 0x05, 0xe5, 0xe4, 0x8a, 0x52, 0xe5, 0x2f, 0xd3, 0x5f, 0x41, 0x66, 0x8c, 0xd9, 0x06, 0x48, 0x86, 0x36, 0x6f, 0xda, 0x20, 0x60, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10479 = { .name = "ecdsa_secp521r1_sha512_10479", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10479_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10479_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10479_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10480 for ECDSA, tcId is 77 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10480_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10480_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10480_sig[] = { 0x00, 0xc4, 0xbc, 0xff, 0xf2, 0x65, 0xcd, 0x32, 0x44, 0x22, 0x20, 0x97, 0x6f, 0xfc, 0x7e, 0x4e, 0xc0, 0x91, 0x81, 0xd6, 0x94, 0x69, 0x6e, 0xb8, 0x9a, 0xf0, 0xcb, 0x2d, 0x5a, 0x2d, 0xfc, 0x38, 0x76, 0xde, 0xb3, 0xc6, 0xad, 0xea, 0x16, 0x89, 0x65, 0x20, 0x0c, 0x35, 0x5c, 0x3b, 0xff, 0x5e, 0x47, 0xab, 0x17, 0xec, 0xc4, 0x4c, 0x84, 0x34, 0x33, 0x32, 0x80, 0x79, 0x6d, 0x3a, 0x18, 0x34, 0x49, 0xea, 0x00, 0x62, 0xde, 0xbe, 0x91, 0x55, 0x0f, 0x8a, 0x76, 0x0e, 0xae, 0xa3, 0x09, 0xf4, 0x84, 0x83, 0xc6, 0x5a, 0x52, 0xc7, 0xe8, 0x8a, 0x83, 0x86, 0x7c, 0x31, 0x73, 0x0c, 0xbc, 0x6b, 0x0a, 0x64, 0xd4, 0xc5, 0x64, 0xbd, 0xe6, 0x7e, 0x65, 0x39, 0xaf, 0x78, 0x7e, 0xcf, 0xd1, 0x80, 0x16, 0xcd, 0xe4, 0x6d, 0xdf, 0x91, 0x74, 0x0f, 0x58, 0xf6, 0xea, 0x6e, 0xc8, 0x0b, 0x17, 0x3f, 0xd1, 0xc4, 0x7a, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10480 = { .name = "ecdsa_secp521r1_sha512_10480", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10480_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10480_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10480_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10481 for ECDSA, tcId is 78 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10481_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10481_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10481_sig[] = { 0x01, 0x74, 0xd7, 0x44, 0xdd, 0xc6, 0x31, 0xfc, 0xf8, 0x20, 0x2f, 0xca, 0x0a, 0xb1, 0x0f, 0x6d, 0x96, 0xd3, 0xf7, 0x55, 0x2b, 0xb2, 0xa9, 0xae, 0x5a, 0xc5, 0x73, 0x63, 0x41, 0x33, 0xf6, 0x1c, 0x59, 0xa1, 0x20, 0xfe, 0xdb, 0xc3, 0x9c, 0xfb, 0x52, 0x1a, 0xb0, 0xcd, 0x57, 0x2a, 0xfb, 0xd5, 0x14, 0x79, 0x81, 0x09, 0x0d, 0x1d, 0xcb, 0xfe, 0x90, 0x2e, 0x03, 0xf0, 0xc0, 0x57, 0x99, 0x67, 0xb5, 0x81, 0x01, 0x2f, 0x59, 0xca, 0x92, 0x7c, 0x4a, 0xe3, 0x31, 0xd2, 0xf6, 0x67, 0xfc, 0xd9, 0xec, 0x01, 0xb0, 0xb5, 0x51, 0x4e, 0x2a, 0xb5, 0xda, 0x05, 0x61, 0xea, 0x61, 0x44, 0x31, 0xdc, 0x1f, 0xcb, 0x76, 0x1c, 0x35, 0x1c, 0xd1, 0x21, 0x10, 0x92, 0x72, 0x0e, 0xbb, 0x70, 0x74, 0xa5, 0x12, 0x8f, 0x80, 0x19, 0xb7, 0xc1, 0x8e, 0x04, 0x8d, 0x5e, 0xd3, 0x57, 0x3e, 0xd6, 0x16, 0x86, 0xe9, 0x71, 0x3f, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10481 = { .name = "ecdsa_secp521r1_sha512_10481", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10481_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10481_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10481_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10482 for ECDSA, tcId is 79 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10482_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10482_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10482_sig[] = { 0x01, 0x9a, 0x51, 0x3c, 0xfa, 0xf8, 0x71, 0x28, 0x73, 0x40, 0xd8, 0xa5, 0x1d, 0x2f, 0x43, 0x48, 0xab, 0x40, 0x96, 0xc5, 0xfe, 0x24, 0x4b, 0x22, 0xad, 0xd3, 0x8c, 0xe4, 0x33, 0xe3, 0x17, 0x8e, 0x8f, 0xf5, 0xb2, 0xdf, 0x0f, 0xe7, 0x4a, 0x1b, 0xa4, 0x0f, 0xe8, 0x34, 0x1f, 0x73, 0x4c, 0x71, 0xf9, 0xa1, 0x17, 0x7b, 0x41, 0x03, 0x57, 0x77, 0xe2, 0xda, 0x6b, 0x08, 0x2e, 0x0b, 0x56, 0x66, 0x90, 0xde, 0x00, 0xd0, 0xc4, 0x3e, 0xb3, 0x3a, 0x81, 0x7c, 0x3a, 0xab, 0x30, 0x28, 0x1c, 0x59, 0x3c, 0x74, 0x51, 0x7e, 0xe8, 0x4e, 0x95, 0x8b, 0x11, 0x43, 0x95, 0xce, 0x0b, 0x31, 0xfc, 0xf3, 0x0b, 0xb8, 0xf5, 0xdf, 0xe6, 0x0d, 0xbc, 0x7f, 0x6f, 0x14, 0x69, 0x89, 0x77, 0xd8, 0xe0, 0x51, 0x6a, 0x92, 0x74, 0xa5, 0xbd, 0x71, 0x84, 0x70, 0x57, 0xe0, 0x06, 0xfa, 0x31, 0x5f, 0xae, 0x69, 0x22, 0xea, 0xaa, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10482 = { .name = "ecdsa_secp521r1_sha512_10482", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10482_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10482_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10482_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10483 for ECDSA, tcId is 80 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10483_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10483_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10483_sig[] = { 0x01, 0x32, 0x04, 0x80, 0x0e, 0xfc, 0xb4, 0x0a, 0xb0, 0x9a, 0xe4, 0x13, 0x73, 0x25, 0xa3, 0xe8, 0xc4, 0x68, 0xed, 0xae, 0x91, 0x88, 0x0a, 0x51, 0x61, 0x6b, 0xa6, 0x1f, 0x3e, 0xf1, 0xf7, 0x2f, 0xd8, 0x9f, 0xeb, 0x95, 0x6b, 0xfb, 0x39, 0x81, 0x8d, 0x82, 0x74, 0x68, 0xbb, 0x44, 0x75, 0x11, 0x0a, 0x04, 0x77, 0x9f, 0xd6, 0xbb, 0x3d, 0xef, 0x25, 0xc6, 0x1c, 0x4b, 0xa6, 0x08, 0x89, 0xed, 0x0f, 0xf7, 0x00, 0x70, 0x4b, 0x73, 0x94, 0x68, 0x76, 0x98, 0xc8, 0x84, 0x1f, 0x48, 0x75, 0xd4, 0x0e, 0x5b, 0x3c, 0x91, 0x4f, 0x15, 0x4c, 0xcb, 0x2b, 0x54, 0x46, 0x6a, 0xe1, 0x63, 0xed, 0x34, 0x10, 0xf2, 0x0d, 0x0a, 0x07, 0xac, 0x5f, 0x90, 0xc0, 0xc3, 0x12, 0x71, 0xec, 0x8a, 0x52, 0x4c, 0xa2, 0xda, 0xe4, 0xb8, 0xbc, 0x4f, 0x6e, 0x1e, 0xce, 0x17, 0x3e, 0xa9, 0x07, 0x89, 0x06, 0x93, 0xc5, 0xf2, 0x19, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10483 = { .name = "ecdsa_secp521r1_sha512_10483", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10483_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10483_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10483_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10484 for ECDSA, tcId is 81 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10484_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10484_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10484_sig[] = { 0x01, 0x80, 0x24, 0x1c, 0xd2, 0xe6, 0x16, 0x31, 0x58, 0xa3, 0x95, 0x99, 0x89, 0x0d, 0xab, 0xee, 0x99, 0xc2, 0xc8, 0x6b, 0x88, 0xac, 0xcd, 0x2b, 0x04, 0xb5, 0xa7, 0x28, 0x74, 0xfb, 0xdf, 0xbd, 0xe0, 0xd1, 0x81, 0x43, 0xc4, 0xd7, 0x8e, 0x0d, 0xa1, 0xab, 0xf3, 0x79, 0x6b, 0x23, 0x87, 0x38, 0x84, 0x0d, 0x60, 0xe3, 0x47, 0x75, 0xa8, 0xff, 0x81, 0x0d, 0x58, 0xa9, 0xbb, 0x35, 0x59, 0xa3, 0x99, 0x7c, 0x00, 0xbc, 0x39, 0x6c, 0x2e, 0xf2, 0x8b, 0x24, 0x4f, 0xb8, 0xe0, 0x04, 0xbf, 0x53, 0x61, 0x57, 0x2b, 0xa1, 0xfe, 0xf6, 0xfb, 0xe0, 0x81, 0xed, 0x1d, 0xed, 0xba, 0x4d, 0x9a, 0xf7, 0x8d, 0xee, 0xe1, 0x26, 0x59, 0x9f, 0x75, 0xa0, 0xa9, 0xd0, 0xf1, 0xb1, 0x61, 0x8d, 0xed, 0x7a, 0x0c, 0x5e, 0x67, 0x2e, 0x40, 0x91, 0x7f, 0xdd, 0x30, 0x58, 0x24, 0x60, 0xda, 0x3a, 0xeb, 0x1e, 0x9c, 0x44, 0x77, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10484 = { .name = "ecdsa_secp521r1_sha512_10484", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10484_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10484_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10484_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10485 for ECDSA, tcId is 82 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10485_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10485_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10485_sig[] = { 0x01, 0x48, 0x5f, 0xc0, 0x3f, 0xcd, 0x62, 0x9f, 0xd4, 0xc5, 0x64, 0x77, 0x5a, 0xb6, 0x96, 0x9b, 0xbc, 0x69, 0x6b, 0x5b, 0x0f, 0x38, 0x14, 0x1b, 0x69, 0xf8, 0x6e, 0x05, 0x2e, 0x7f, 0xe8, 0x84, 0x9a, 0x64, 0xaf, 0x2d, 0xd3, 0x7a, 0x2a, 0xdf, 0x64, 0x67, 0x2f, 0x20, 0xbd, 0x6f, 0x97, 0xcd, 0x32, 0xf0, 0xef, 0xea, 0x51, 0xaa, 0x22, 0x06, 0x4c, 0x5f, 0x10, 0xa3, 0x91, 0x11, 0x77, 0xe1, 0x97, 0x9d, 0x01, 0x80, 0xfa, 0xb4, 0x73, 0xff, 0x9d, 0x72, 0x6d, 0xb6, 0xd2, 0x66, 0x54, 0x1a, 0x0b, 0xdd, 0xff, 0x86, 0x10, 0xe4, 0x02, 0x6d, 0x26, 0xb6, 0xc9, 0xab, 0xf9, 0x72, 0xea, 0xef, 0x47, 0x7d, 0x50, 0x67, 0x0b, 0xdd, 0x30, 0x67, 0xc9, 0xd7, 0x11, 0xa8, 0x34, 0x6e, 0x16, 0x86, 0x91, 0x47, 0x75, 0x1e, 0x89, 0xb4, 0xea, 0x75, 0xbb, 0x00, 0xec, 0xe7, 0x13, 0x00, 0xcc, 0x3b, 0x80, 0xcf, 0x88, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10485 = { .name = "ecdsa_secp521r1_sha512_10485", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10485_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10485_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10485_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10486 for ECDSA, tcId is 83 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10486_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10486_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10486_sig[] = { 0x01, 0xbe, 0xa4, 0x9b, 0x15, 0x0a, 0x27, 0x02, 0x6f, 0xdf, 0x84, 0x82, 0x97, 0xb0, 0x49, 0x10, 0x19, 0xf7, 0x6a, 0xbf, 0x90, 0xf3, 0xe6, 0xd7, 0x82, 0xe3, 0xd3, 0xfa, 0x6c, 0xad, 0xdb, 0x81, 0xb7, 0xef, 0x58, 0xb2, 0x7f, 0x1b, 0x2b, 0x3f, 0x78, 0x98, 0x88, 0x9b, 0x4e, 0x2b, 0x6c, 0xdd, 0xa7, 0xb5, 0x63, 0x61, 0x77, 0xa2, 0x7e, 0xb9, 0xa6, 0x7b, 0x20, 0x55, 0xb6, 0xf2, 0x1d, 0x26, 0x2c, 0x26, 0x00, 0xdf, 0xfb, 0x13, 0xc2, 0xd5, 0xf7, 0x46, 0xc8, 0x57, 0x3a, 0xa4, 0x44, 0xaf, 0xc8, 0xba, 0xf8, 0xbf, 0x88, 0x1c, 0xc4, 0xd0, 0xfc, 0xa8, 0x16, 0x9f, 0x6c, 0xb3, 0x04, 0xf4, 0x00, 0xeb, 0x39, 0x32, 0x66, 0x6c, 0xd3, 0x75, 0x8c, 0x43, 0x7c, 0x9c, 0xad, 0x79, 0xab, 0xfd, 0x89, 0xc7, 0x2a, 0x78, 0x85, 0x05, 0x76, 0x3a, 0xab, 0xdf, 0xab, 0xf8, 0x90, 0x3a, 0xd4, 0xa7, 0x0d, 0x9e, 0xc9, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10486 = { .name = "ecdsa_secp521r1_sha512_10486", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10486_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10486_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10486_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10487 for ECDSA, tcId is 84 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10487_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10487_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10487_sig[] = { 0x01, 0xd5, 0x6b, 0xf6, 0xf3, 0x75, 0x8f, 0x62, 0x7f, 0x47, 0x07, 0x06, 0xd1, 0xd2, 0x8c, 0x28, 0xfb, 0xfc, 0xad, 0x6d, 0xc3, 0x04, 0x65, 0xcb, 0x28, 0x5a, 0x27, 0x4f, 0xc0, 0x57, 0xf7, 0x91, 0xde, 0x73, 0xac, 0x30, 0xba, 0xcc, 0xde, 0x04, 0x44, 0x73, 0xfa, 0x9e, 0x3d, 0xce, 0x6d, 0x39, 0x5e, 0xad, 0xf9, 0x8d, 0x1f, 0x97, 0x25, 0x9b, 0xd8, 0x51, 0xa1, 0xeb, 0x6f, 0x3d, 0x31, 0xd2, 0xd7, 0x56, 0x00, 0x33, 0x70, 0x4b, 0x4a, 0xd3, 0x73, 0x00, 0xa9, 0x66, 0x82, 0x56, 0x9f, 0x4f, 0x7f, 0xea, 0x3e, 0x14, 0xd6, 0xe1, 0xf6, 0x58, 0x64, 0x66, 0x3f, 0x39, 0xaa, 0x67, 0xf4, 0x0b, 0x5c, 0x94, 0x9f, 0x19, 0x8d, 0x5d, 0xe9, 0xf2, 0xac, 0x23, 0x69, 0xbb, 0xb9, 0x11, 0x1c, 0x89, 0xb3, 0x93, 0x19, 0x95, 0x37, 0xc6, 0xc0, 0x8e, 0xd7, 0xc0, 0x27, 0x09, 0xc7, 0x33, 0xef, 0x76, 0x60, 0x11, 0x3d, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10487 = { .name = "ecdsa_secp521r1_sha512_10487", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10487_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10487_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10487_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10488 for ECDSA, tcId is 85 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10488_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10488_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10488_sig[] = { 0x01, 0x55, 0x40, 0x35, 0xba, 0x84, 0xb0, 0x51, 0xd5, 0x09, 0x01, 0xc6, 0x22, 0xb9, 0x8b, 0xe4, 0xde, 0x01, 0x23, 0xa0, 0x29, 0x28, 0xdf, 0xfa, 0x7e, 0xb1, 0x3b, 0x04, 0x03, 0xfd, 0x5e, 0x25, 0x5f, 0x22, 0x65, 0x05, 0xe1, 0x56, 0x94, 0x95, 0x6a, 0x66, 0xa8, 0x78, 0xff, 0x58, 0x11, 0x73, 0xd1, 0x23, 0xd1, 0xb2, 0x4e, 0xaa, 0x85, 0xc5, 0xfe, 0x46, 0xd8, 0x97, 0x3a, 0x55, 0x04, 0x0f, 0xf4, 0x05, 0x01, 0xb0, 0x16, 0xdd, 0x6b, 0x51, 0x76, 0xad, 0x83, 0x47, 0xeb, 0x98, 0x02, 0xdd, 0x77, 0x27, 0xe0, 0x6a, 0x29, 0xdb, 0x33, 0xcc, 0x94, 0x6f, 0x80, 0x9a, 0x42, 0xf9, 0x19, 0x30, 0x40, 0x69, 0x2b, 0x0f, 0x82, 0xeb, 0xbd, 0x04, 0xef, 0xf9, 0xf0, 0x99, 0xb7, 0xf7, 0x5f, 0x8e, 0x45, 0xe7, 0x4a, 0xc0, 0x0a, 0x51, 0xa9, 0xcd, 0x4f, 0x2c, 0xbf, 0x5f, 0x03, 0xf4, 0xd2, 0xbe, 0xe9, 0x9c, 0x24, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10488 = { .name = "ecdsa_secp521r1_sha512_10488", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10488_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10488_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10488_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10489 for ECDSA, tcId is 86 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10489_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10489_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10489_sig[] = { 0x00, 0x29, 0x3e, 0x8d, 0x67, 0x75, 0xf3, 0xc1, 0x41, 0x83, 0xae, 0xcc, 0x22, 0xf6, 0x08, 0xe9, 0x01, 0x3d, 0x7b, 0x15, 0xda, 0xd1, 0x67, 0xbb, 0x38, 0xa1, 0xdf, 0xef, 0x6b, 0x37, 0x36, 0x19, 0xf1, 0xba, 0x27, 0x51, 0xd7, 0x7b, 0x43, 0xf6, 0x43, 0xf6, 0x86, 0x43, 0xcf, 0xdb, 0x5c, 0x04, 0xa8, 0xed, 0x85, 0x8b, 0xfc, 0xf3, 0x85, 0x8a, 0x68, 0x1a, 0xe9, 0x3b, 0xfc, 0x7c, 0xd7, 0xe3, 0x14, 0x38, 0x00, 0x2c, 0x7d, 0x96, 0xdb, 0x7d, 0xbb, 0xe3, 0x47, 0xba, 0xb9, 0xf6, 0xf7, 0xb8, 0x8f, 0x48, 0xcb, 0x32, 0xab, 0x96, 0x32, 0x48, 0x73, 0x7d, 0x2c, 0x90, 0x1b, 0x90, 0xd6, 0x45, 0x91, 0xcb, 0xdb, 0x0f, 0x0c, 0xa7, 0xa1, 0x45, 0x57, 0xf8, 0xa5, 0x0f, 0xd8, 0x0d, 0x40, 0x2f, 0x92, 0x9d, 0xad, 0x14, 0x11, 0x41, 0xf1, 0xf0, 0xc8, 0x5d, 0x94, 0x14, 0xb3, 0x2d, 0x1f, 0xd4, 0xd7, 0x96, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10489 = { .name = "ecdsa_secp521r1_sha512_10489", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10489_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10489_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10489_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10490 for ECDSA, tcId is 87 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10490_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10490_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10490_sig[] = { 0x00, 0xb1, 0x6a, 0x9b, 0x3a, 0xce, 0xec, 0xe8, 0x59, 0x08, 0x12, 0x5f, 0x96, 0xf6, 0xcb, 0x6b, 0x1a, 0xfd, 0x0e, 0xf0, 0x41, 0x71, 0x93, 0x6b, 0x37, 0x66, 0xf8, 0xe4, 0x3b, 0xeb, 0x34, 0x0d, 0x38, 0x20, 0x84, 0xb3, 0x34, 0x39, 0xf7, 0x75, 0xa2, 0x9a, 0x83, 0x94, 0x5d, 0xa8, 0xef, 0xc4, 0x19, 0x0d, 0xb1, 0x34, 0x3e, 0x87, 0xd8, 0xc0, 0xff, 0xb9, 0x7a, 0xeb, 0x3b, 0xe1, 0x59, 0xd9, 0x0f, 0x59, 0x00, 0xe5, 0xc2, 0xbb, 0xd9, 0x8e, 0x44, 0x9b, 0xd0, 0xbb, 0x4f, 0x75, 0xa0, 0x7f, 0x1a, 0x88, 0xdd, 0x63, 0xc0, 0x60, 0x2a, 0x76, 0x60, 0xf4, 0xac, 0xd3, 0x39, 0x37, 0xc4, 0x91, 0x3a, 0x9c, 0x16, 0xba, 0x44, 0xdc, 0x58, 0x08, 0x89, 0x2e, 0xc8, 0x8a, 0x42, 0x55, 0x10, 0x9a, 0x7b, 0xc5, 0xb2, 0x21, 0xc0, 0x7e, 0x6a, 0x27, 0x88, 0x88, 0xa9, 0x71, 0x2f, 0xc2, 0xa2, 0x5b, 0x37, 0x44, 0x27, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10490 = { .name = "ecdsa_secp521r1_sha512_10490", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10490_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10490_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10490_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10491 for ECDSA, tcId is 88 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10491_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10491_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10491_sig[] = { 0x00, 0x3b, 0x47, 0xa8, 0xed, 0x52, 0xf5, 0xb0, 0x56, 0x63, 0x65, 0x31, 0x35, 0x20, 0xbc, 0x0b, 0x6e, 0x4e, 0x4e, 0xfb, 0x3e, 0xa4, 0x17, 0x6e, 0xd7, 0xa3, 0x52, 0xc4, 0xb2, 0xf8, 0xbf, 0xfb, 0xdb, 0x01, 0x48, 0xff, 0x44, 0xf3, 0xf1, 0x3d, 0x9e, 0x5e, 0x31, 0xb1, 0xcd, 0xea, 0xe0, 0x97, 0x57, 0x4a, 0xad, 0x8b, 0xf3, 0x93, 0xc5, 0x4a, 0x5c, 0x84, 0x2e, 0x74, 0x9e, 0xe8, 0x7a, 0x74, 0xc6, 0xb0, 0x01, 0xd3, 0xf4, 0x84, 0xe9, 0xe2, 0x24, 0xbd, 0xa9, 0xc8, 0xf1, 0x0f, 0xbb, 0x74, 0xbb, 0xb6, 0x2d, 0x7a, 0x18, 0x24, 0x57, 0x07, 0xf4, 0xeb, 0x52, 0xf1, 0x7d, 0xde, 0x79, 0x38, 0x92, 0xc1, 0x6e, 0x4b, 0xdf, 0x50, 0x49, 0x60, 0xfb, 0xa5, 0x5d, 0xa4, 0x87, 0xf5, 0x42, 0xd4, 0x12, 0xb1, 0xb8, 0x33, 0xf6, 0xf4, 0x63, 0x36, 0x11, 0x86, 0x18, 0xfc, 0xff, 0x69, 0x46, 0x9c, 0x83, 0x96, 0x37, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10491 = { .name = "ecdsa_secp521r1_sha512_10491", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10491_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10491_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10491_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10492 for ECDSA, tcId is 89 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10492_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10492_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10492_sig[] = { 0x01, 0x28, 0xb8, 0x98, 0x8b, 0xfe, 0x92, 0x87, 0xf8, 0x2a, 0xc9, 0x7b, 0xe5, 0x07, 0xa5, 0x44, 0xb8, 0x23, 0xe8, 0x5c, 0xc2, 0x81, 0x3b, 0x69, 0x29, 0xe6, 0x36, 0x99, 0xcf, 0xf8, 0x5a, 0x40, 0x28, 0x30, 0x76, 0x02, 0x8e, 0x7b, 0xf8, 0xd2, 0x43, 0x30, 0xf8, 0x9a, 0xdb, 0x96, 0xbf, 0x24, 0xa4, 0xe1, 0x83, 0xa8, 0x98, 0xe6, 0x79, 0xb3, 0x67, 0x68, 0x90, 0x95, 0x74, 0xe7, 0xd4, 0x73, 0x3d, 0x61, 0x00, 0xc1, 0x8a, 0xae, 0x44, 0xe6, 0x80, 0x1f, 0xc2, 0xe3, 0xd9, 0xc7, 0xa2, 0x0f, 0xf9, 0xd4, 0x2b, 0x46, 0xe4, 0xa3, 0x1c, 0xa3, 0x77, 0x72, 0xf8, 0xc4, 0x6c, 0xe6, 0x52, 0x19, 0xb1, 0x95, 0xca, 0x23, 0x71, 0x7f, 0x81, 0x6e, 0x1f, 0xed, 0x51, 0xe5, 0xb6, 0xf9, 0xa0, 0xca, 0x12, 0xc3, 0xcf, 0x81, 0xae, 0x7f, 0xc9, 0xcc, 0x69, 0x46, 0xa8, 0x83, 0x30, 0xb2, 0x01, 0x1d, 0xdd, 0x16, 0x09, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10492 = { .name = "ecdsa_secp521r1_sha512_10492", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10492_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10492_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10492_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10493 for ECDSA, tcId is 90 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10493_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10493_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10493_sig[] = { 0x01, 0x5e, 0xdf, 0x1f, 0xa9, 0x5b, 0x17, 0x15, 0x9f, 0x76, 0x2d, 0x68, 0xc1, 0x73, 0x61, 0x01, 0x30, 0x9e, 0x80, 0xfe, 0x5b, 0x2c, 0x44, 0x15, 0x60, 0x9a, 0x5a, 0xc0, 0x83, 0x7f, 0xe5, 0x90, 0x1f, 0x3c, 0x2d, 0x3d, 0x82, 0x6a, 0x43, 0xb1, 0xf8, 0xcd, 0x1b, 0xab, 0xf4, 0x94, 0xff, 0xd9, 0x6c, 0xca, 0x12, 0x67, 0x95, 0x01, 0x88, 0xa9, 0x24, 0xd4, 0xe1, 0xbf, 0x7f, 0x68, 0x18, 0x9f, 0x27, 0xd3, 0x00, 0x2e, 0x86, 0x97, 0xef, 0xbb, 0xf5, 0x3a, 0xdb, 0x7c, 0xb1, 0xb9, 0x04, 0x71, 0x8f, 0xc7, 0x1e, 0xb2, 0x56, 0x1f, 0x33, 0x1c, 0x20, 0x9c, 0x50, 0x84, 0x8b, 0x5b, 0xc5, 0x0b, 0xef, 0x77, 0xc5, 0xc3, 0x48, 0x7d, 0x28, 0x5b, 0xfa, 0xa3, 0xca, 0xa1, 0x40, 0x25, 0xcb, 0xb7, 0x1b, 0xdb, 0xae, 0xa6, 0x91, 0x1e, 0x36, 0x10, 0x33, 0x56, 0x41, 0xd2, 0x79, 0x9c, 0x3f, 0xd7, 0x50, 0x19, 0xf7, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10493 = { .name = "ecdsa_secp521r1_sha512_10493", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10493_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10493_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10493_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10494 for ECDSA, tcId is 91 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10494_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10494_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10494_sig[] = { 0x01, 0x61, 0xf6, 0x4b, 0xbe, 0x93, 0xfd, 0xc0, 0xe6, 0x11, 0x34, 0xcf, 0xd4, 0xc4, 0x53, 0xab, 0x74, 0x02, 0x33, 0xb4, 0x36, 0x17, 0x93, 0x51, 0xaa, 0x68, 0xa3, 0xe3, 0x8a, 0x83, 0x40, 0x0d, 0x86, 0xff, 0x46, 0x4d, 0x7c, 0xeb, 0x7a, 0x51, 0xf5, 0x41, 0xb8, 0x6e, 0xb2, 0xf1, 0x2e, 0x32, 0xa8, 0x79, 0xb3, 0xa2, 0x9b, 0xcb, 0x92, 0xe0, 0x8c, 0xd5, 0x0e, 0x74, 0xf8, 0x6a, 0x0e, 0xd5, 0x2a, 0xe9, 0x00, 0x8f, 0x6f, 0xef, 0x49, 0xba, 0x12, 0xce, 0xd6, 0x69, 0x6f, 0x4f, 0x6d, 0x24, 0xe6, 0xc6, 0x80, 0x57, 0xa8, 0x44, 0x96, 0xd4, 0x2e, 0xed, 0xe6, 0x30, 0x19, 0x9e, 0x9b, 0xd0, 0x6d, 0x91, 0x36, 0x35, 0x42, 0xa9, 0x77, 0x6b, 0xfc, 0xd6, 0xd7, 0x7f, 0xba, 0xe4, 0x22, 0xe8, 0x0f, 0xe4, 0x66, 0xed, 0xd2, 0xc2, 0xc5, 0xe1, 0xf5, 0xcc, 0x79, 0xbe, 0xdd, 0x1a, 0x7b, 0xec, 0xc1, 0xa1, 0x26, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10494 = { .name = "ecdsa_secp521r1_sha512_10494", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10494_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10494_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10494_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10495 for ECDSA, tcId is 92 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10495_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10495_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10495_sig[] = { 0x01, 0x3a, 0x6f, 0xac, 0xcc, 0x1c, 0x06, 0xcb, 0x5d, 0xad, 0xb2, 0xcf, 0x08, 0x3c, 0xb9, 0x4a, 0x71, 0x81, 0xfd, 0x5c, 0xbf, 0x39, 0x54, 0xfd, 0xc4, 0x30, 0xc2, 0x69, 0x12, 0x48, 0xfc, 0xfc, 0xd1, 0x37, 0x67, 0xe3, 0x24, 0x91, 0xf0, 0x02, 0x69, 0xb5, 0x49, 0xca, 0xe9, 0x37, 0x77, 0xce, 0xd0, 0xf7, 0xb0, 0x69, 0x44, 0x07, 0x26, 0xad, 0xde, 0x76, 0x05, 0xd4, 0x03, 0x8d, 0x7b, 0x5e, 0xa4, 0xcc, 0x00, 0x76, 0x22, 0xc9, 0x06, 0x5f, 0x4c, 0x49, 0xa6, 0xf8, 0x64, 0x90, 0x73, 0xdf, 0xc6, 0xa8, 0x27, 0xb8, 0x97, 0xb6, 0x98, 0x41, 0x76, 0xb1, 0xa0, 0x9d, 0x15, 0x1b, 0x97, 0x33, 0xa6, 0x8f, 0x6d, 0xa7, 0x46, 0xc4, 0x74, 0x27, 0xcd, 0xeb, 0x3b, 0xe0, 0x75, 0xda, 0x4a, 0x35, 0x1a, 0xb7, 0x8d, 0xd5, 0xe4, 0x72, 0xcd, 0x98, 0xd1, 0x58, 0x6e, 0xdd, 0x6f, 0xf2, 0xa1, 0x1c, 0x6c, 0x16, 0x9f, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10495 = { .name = "ecdsa_secp521r1_sha512_10495", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10495_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10495_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10495_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10496 for ECDSA, tcId is 93 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10496_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10496_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10496_sig[] = { 0x01, 0x89, 0x96, 0x09, 0xe7, 0xf7, 0xcd, 0x2e, 0xf1, 0x4b, 0xfb, 0xb1, 0xcb, 0x9b, 0xa9, 0x28, 0x3a, 0xe1, 0x1a, 0x93, 0x46, 0xa3, 0x4b, 0xef, 0x23, 0xb1, 0xc2, 0x49, 0xda, 0x2e, 0x76, 0xa7, 0x70, 0x8e, 0x0f, 0x2f, 0x97, 0xf8, 0x19, 0xe4, 0xe2, 0x5b, 0x0d, 0x52, 0x27, 0xee, 0xb8, 0x5a, 0xa5, 0x93, 0xc3, 0xfa, 0xe9, 0x39, 0x8a, 0x70, 0x20, 0xf6, 0x1a, 0xe1, 0x60, 0x69, 0x45, 0xd1, 0x38, 0x41, 0x01, 0xb8, 0xd5, 0xe9, 0xc4, 0xf0, 0x30, 0x29, 0x54, 0x47, 0x10, 0x6d, 0x2b, 0x5c, 0x80, 0xcc, 0x2e, 0x7d, 0x4e, 0x36, 0xb4, 0x58, 0xa9, 0x0a, 0x08, 0xf5, 0x05, 0xdf, 0x62, 0xd2, 0x23, 0x4e, 0x59, 0xd0, 0x81, 0x87, 0x38, 0x5b, 0xa5, 0x50, 0x10, 0x49, 0xb3, 0x4e, 0x12, 0xec, 0x92, 0xf7, 0x83, 0x9a, 0x18, 0x36, 0x1a, 0x52, 0xa9, 0xa0, 0xb6, 0xf6, 0xa6, 0x64, 0xb1, 0x18, 0x68, 0x0b, 0x53, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10496 = { .name = "ecdsa_secp521r1_sha512_10496", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10496_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10496_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10496_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10497 for ECDSA, tcId is 94 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10497_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10497_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10497_sig[] = { 0x01, 0xdd, 0xc6, 0x9d, 0x15, 0x08, 0x02, 0x1e, 0xb5, 0x60, 0xdb, 0x39, 0xf3, 0xad, 0xd8, 0xa2, 0x8d, 0xd7, 0xfb, 0xce, 0x41, 0x7e, 0x5f, 0xa1, 0xf4, 0xf6, 0x26, 0x70, 0x5c, 0xaa, 0xad, 0x72, 0xb6, 0x34, 0x86, 0x8d, 0x01, 0xdf, 0xc4, 0x74, 0xe9, 0x26, 0xc9, 0x79, 0x27, 0xc5, 0x6a, 0xc5, 0x1f, 0x9b, 0xdc, 0xfd, 0x0e, 0x76, 0x27, 0xbe, 0x35, 0xcc, 0x30, 0x0a, 0x0c, 0xdc, 0x08, 0x3b, 0x00, 0xd4, 0x00, 0x6e, 0x86, 0x2c, 0xaf, 0x9f, 0x2d, 0xf1, 0x1b, 0x0a, 0x46, 0x10, 0x4e, 0x78, 0x86, 0x5f, 0xbb, 0xab, 0xe3, 0x0b, 0xfa, 0xc0, 0xb1, 0xfe, 0x7f, 0x99, 0xba, 0xdc, 0x11, 0x74, 0x6a, 0x28, 0x8c, 0x1f, 0xf2, 0x7f, 0x6f, 0xa2, 0xaa, 0xba, 0x64, 0x41, 0xba, 0xb0, 0x37, 0x2a, 0xf9, 0x06, 0xee, 0xf0, 0x83, 0xff, 0x03, 0xba, 0x46, 0x6b, 0x89, 0x6c, 0x93, 0x44, 0xcd, 0x39, 0x6d, 0xd4, 0x6d, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10497 = { .name = "ecdsa_secp521r1_sha512_10497", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10497_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10497_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10497_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10498 for ECDSA, tcId is 95 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10498_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10498_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10498_sig[] = { 0x01, 0x17, 0xfe, 0x2c, 0x21, 0xf2, 0x82, 0xc7, 0xe4, 0xa8, 0x41, 0x5e, 0x9c, 0x53, 0xc2, 0x54, 0x51, 0x4e, 0xee, 0xb0, 0xad, 0xad, 0xc7, 0x71, 0xad, 0xbc, 0x6d, 0x21, 0xa0, 0x9a, 0xdd, 0x4f, 0x17, 0xea, 0x0c, 0x59, 0x74, 0x69, 0x48, 0x82, 0x38, 0xbe, 0x79, 0x5f, 0x2e, 0x18, 0x7f, 0xa0, 0x16, 0xd5, 0x90, 0x53, 0x5b, 0x4f, 0xf1, 0x0c, 0x62, 0xd2, 0x24, 0x6a, 0xa1, 0x7b, 0xb0, 0x13, 0xf9, 0xee, 0x00, 0x3c, 0x9f, 0x15, 0x90, 0xce, 0x7a, 0x68, 0xfc, 0x84, 0xc6, 0x17, 0xf4, 0x78, 0x18, 0x8e, 0x71, 0xae, 0xfe, 0x8c, 0x74, 0xc4, 0xb9, 0x97, 0x9b, 0x8c, 0x91, 0x96, 0xbc, 0xc2, 0x62, 0x20, 0x5a, 0xec, 0xce, 0x5f, 0xd2, 0xbb, 0x80, 0xc3, 0x60, 0xd3, 0xe2, 0x0d, 0xa2, 0x0e, 0x36, 0xc5, 0xab, 0x70, 0xd8, 0x10, 0xd4, 0xba, 0x97, 0xd1, 0x38, 0x58, 0x19, 0x9d, 0x3a, 0x1c, 0x9c, 0x14, 0x0c, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10498 = { .name = "ecdsa_secp521r1_sha512_10498", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10498_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10498_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10498_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10499 for ECDSA, tcId is 96 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10499_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10499_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10499_sig[] = { 0x00, 0xbe, 0x6b, 0x47, 0x25, 0x4a, 0x3c, 0xf9, 0x3e, 0x2e, 0x27, 0x6a, 0xdf, 0xb0, 0x72, 0x25, 0x64, 0x04, 0x74, 0x40, 0x70, 0xd6, 0xde, 0xc8, 0x3e, 0xf3, 0x4e, 0x3e, 0x6c, 0x11, 0x92, 0x06, 0x42, 0x2b, 0xb2, 0x75, 0xe6, 0x1f, 0xc4, 0x70, 0x53, 0xef, 0x7b, 0x2a, 0xf9, 0xe3, 0x3a, 0xca, 0x8f, 0x8b, 0x2e, 0x49, 0x38, 0x05, 0x70, 0x70, 0xeb, 0x6e, 0xbb, 0xcf, 0x82, 0xfa, 0xbb, 0x44, 0xa5, 0xfe, 0x01, 0x06, 0x1e, 0xf8, 0x09, 0x35, 0xff, 0x6d, 0x0e, 0x9f, 0x87, 0xf3, 0x53, 0x7b, 0x63, 0x99, 0x45, 0xac, 0xf5, 0x0c, 0x5d, 0x97, 0xd3, 0x0b, 0x4b, 0x9c, 0x34, 0x7e, 0x3f, 0x5f, 0x5e, 0xc0, 0x2b, 0x15, 0xa3, 0x76, 0xae, 0x75, 0x4d, 0x64, 0xb2, 0xef, 0xaa, 0x81, 0x1b, 0x3d, 0x12, 0xa0, 0xff, 0xf0, 0xbc, 0x68, 0x90, 0x22, 0x02, 0x5d, 0xd2, 0xf6, 0x9f, 0x2f, 0x4b, 0x40, 0xdd, 0xa8, 0x68, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10499 = { .name = "ecdsa_secp521r1_sha512_10499", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10499_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10499_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10499_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10500 for ECDSA, tcId is 97 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10500_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10500_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10500_sig[] = { 0x01, 0x30, 0xb6, 0xfd, 0x7d, 0xec, 0x5c, 0xb6, 0xf9, 0x0a, 0x8b, 0x54, 0xce, 0x7b, 0x58, 0xc6, 0x1b, 0x01, 0x3d, 0x0a, 0xed, 0x7c, 0x4a, 0x26, 0x63, 0x9d, 0xe8, 0x0a, 0xea, 0xc3, 0xd9, 0xe3, 0x38, 0x8e, 0x9f, 0x87, 0xe1, 0xe6, 0x41, 0x9d, 0x3f, 0x03, 0x39, 0xaf, 0x32, 0x4e, 0x14, 0x21, 0xb5, 0xd1, 0x30, 0x31, 0x7f, 0xfd, 0x9d, 0x8b, 0xe3, 0x65, 0x00, 0xa8, 0x4b, 0xb4, 0x1d, 0x02, 0x6c, 0xea, 0x01, 0x76, 0xb4, 0x60, 0xa3, 0xea, 0xe0, 0x1d, 0x8a, 0xa8, 0xcc, 0xff, 0xb0, 0xd6, 0xcf, 0x4d, 0x15, 0x95, 0xaa, 0x69, 0x7c, 0x65, 0x51, 0x0a, 0x11, 0x97, 0xb9, 0x73, 0x43, 0xc1, 0xa6, 0x23, 0x45, 0x52, 0xce, 0x9d, 0x6d, 0x31, 0x8c, 0x5f, 0x20, 0xf4, 0x8b, 0xec, 0x0d, 0xc3, 0x11, 0xdd, 0x62, 0xeb, 0x40, 0x05, 0x8f, 0x3c, 0xb2, 0x2f, 0xa9, 0x58, 0xed, 0xaf, 0x9d, 0xdd, 0xed, 0x19, 0x1a, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10500 = { .name = "ecdsa_secp521r1_sha512_10500", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10500_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10500_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10500_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10501 for ECDSA, tcId is 98 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10501_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10501_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10501_sig[] = { 0x00, 0xa8, 0x7d, 0xe4, 0x2d, 0x82, 0x7a, 0xe1, 0xf5, 0x5d, 0x6f, 0xab, 0x32, 0x77, 0xc7, 0xa9, 0xfd, 0xfa, 0xc3, 0xaf, 0x22, 0xfe, 0x47, 0xe5, 0x2b, 0xfe, 0xe3, 0x4f, 0xa1, 0xee, 0x3e, 0x76, 0x50, 0x95, 0xff, 0xf2, 0x01, 0x75, 0xbe, 0xcb, 0xdc, 0x94, 0xb4, 0xa5, 0xad, 0x3a, 0x14, 0x9e, 0xa7, 0xc1, 0xbe, 0xbf, 0x4d, 0x45, 0x37, 0x0e, 0x6b, 0x44, 0x04, 0xa0, 0x43, 0x7d, 0x8f, 0xae, 0x26, 0x4f, 0x01, 0xa3, 0xc1, 0xc5, 0x18, 0x6d, 0x8a, 0xa4, 0x91, 0xb4, 0x62, 0x3f, 0x57, 0x65, 0xa3, 0x88, 0x93, 0x0f, 0x37, 0xbb, 0x8f, 0x3e, 0x1c, 0x0d, 0xb5, 0x08, 0x98, 0x35, 0x85, 0xb9, 0x09, 0x0b, 0x3a, 0xaf, 0x22, 0xbb, 0x84, 0x6e, 0x0f, 0xb6, 0xd9, 0x15, 0xb5, 0x81, 0x1a, 0xc5, 0x5e, 0x4d, 0x6c, 0xb0, 0x8f, 0x60, 0x5c, 0xb8, 0x4d, 0xeb, 0x55, 0xab, 0x7f, 0xba, 0x2d, 0xde, 0x87, 0x36, 0xb1, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10501 = { .name = "ecdsa_secp521r1_sha512_10501", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10501_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10501_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10501_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10502 for ECDSA, tcId is 99 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10502_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10502_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10502_sig[] = { 0x01, 0x0e, 0x46, 0x05, 0x5d, 0x9a, 0xa0, 0x87, 0xf1, 0xc4, 0xb6, 0x05, 0x63, 0x19, 0xcb, 0xf1, 0x7a, 0x06, 0x94, 0xfe, 0x07, 0x32, 0x66, 0xa3, 0xf3, 0x03, 0x63, 0x03, 0x0e, 0x34, 0x5a, 0x4b, 0xd4, 0x61, 0xac, 0xbd, 0x99, 0xd1, 0x26, 0x1f, 0xc0, 0x5e, 0xf3, 0xc9, 0xa1, 0xc3, 0x7a, 0xfb, 0xa6, 0xe2, 0x1c, 0x2d, 0x51, 0x3e, 0xa3, 0xd4, 0x70, 0x9d, 0xe5, 0x58, 0x68, 0x10, 0xd7, 0xd2, 0x9e, 0xc6, 0x00, 0xd0, 0xc9, 0x5c, 0x7e, 0x97, 0xa9, 0x4e, 0xfb, 0x44, 0xaa, 0x71, 0x7c, 0xd6, 0xeb, 0xe8, 0x2d, 0xe0, 0x64, 0x4e, 0x32, 0x67, 0x6d, 0x19, 0x73, 0x51, 0xf1, 0x28, 0xee, 0x8d, 0x2b, 0x22, 0x3a, 0xb4, 0x76, 0xd3, 0xe6, 0x60, 0x14, 0xec, 0xc0, 0x03, 0x08, 0x1f, 0x70, 0x40, 0xc5, 0x78, 0xb8, 0x98, 0x46, 0x28, 0xd6, 0xec, 0x80, 0x73, 0x3f, 0x71, 0x3e, 0x26, 0xb2, 0xc9, 0x8c, 0xb4, 0xed, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10502 = { .name = "ecdsa_secp521r1_sha512_10502", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10502_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10502_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10502_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10503 for ECDSA, tcId is 100 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10503_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10503_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10503_sig[] = { 0x01, 0x2c, 0x04, 0xd0, 0x8a, 0x7a, 0x2d, 0x07, 0x40, 0x3a, 0xba, 0x60, 0x4e, 0xa8, 0x5e, 0xc2, 0x3a, 0x52, 0xb5, 0x27, 0x86, 0xe7, 0xfc, 0xe0, 0x41, 0x70, 0xe8, 0x67, 0xbe, 0x61, 0x46, 0xee, 0xa7, 0x5a, 0x71, 0x80, 0xf5, 0xd4, 0xf3, 0xb8, 0x2a, 0x20, 0x4a, 0x3c, 0x99, 0x68, 0x11, 0xa1, 0xe6, 0x1a, 0x3e, 0x76, 0xed, 0x20, 0x9c, 0x22, 0x42, 0x8b, 0x35, 0xc5, 0x1f, 0xe6, 0x0f, 0x3b, 0xee, 0x1e, 0x01, 0x6f, 0x2f, 0xea, 0xbc, 0x25, 0x73, 0x3b, 0x0a, 0x46, 0x04, 0x63, 0xb9, 0x93, 0x3e, 0x6e, 0x4a, 0xe9, 0xf4, 0x12, 0x4c, 0xd0, 0xad, 0x37, 0x85, 0xc7, 0x77, 0x55, 0xdb, 0xf0, 0x84, 0x8e, 0xc1, 0xcf, 0xd2, 0xab, 0x08, 0xb9, 0x60, 0xb5, 0x56, 0x87, 0x0f, 0xa0, 0x03, 0x88, 0xd2, 0x3d, 0x9a, 0x9f, 0xa3, 0x11, 0x2a, 0xc3, 0xe6, 0x2a, 0x0f, 0x34, 0x2d, 0x58, 0xfb, 0x1f, 0x0a, 0xa8, 0x17, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10503 = { .name = "ecdsa_secp521r1_sha512_10503", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10503_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10503_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10503_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10504 for ECDSA, tcId is 101 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10504_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10504_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10504_sig[] = { 0x01, 0xca, 0x95, 0x32, 0xc9, 0xda, 0xeb, 0x80, 0xd0, 0xdb, 0xc0, 0x7a, 0x41, 0x38, 0xba, 0x62, 0xa6, 0xba, 0xb8, 0xc8, 0x8b, 0x9e, 0x1e, 0x2e, 0xdf, 0x26, 0x75, 0x13, 0x2e, 0xb9, 0x7c, 0xfb, 0x26, 0xf4, 0xc3, 0x95, 0xf3, 0xb9, 0xd1, 0xd1, 0x27, 0x56, 0x94, 0x95, 0x6b, 0x34, 0xc3, 0xef, 0x72, 0xcd, 0x00, 0xba, 0xb8, 0x67, 0x77, 0x46, 0x5b, 0x9e, 0xdb, 0xa2, 0x9a, 0x41, 0xb0, 0x11, 0x4c, 0x62, 0x01, 0x40, 0xeb, 0x6d, 0xdd, 0xff, 0x25, 0x3a, 0x7f, 0xf5, 0xb0, 0x32, 0xd8, 0x2f, 0xbd, 0x18, 0xe4, 0x81, 0xa3, 0x76, 0xfe, 0x24, 0x2f, 0x64, 0x05, 0xb8, 0x1b, 0x57, 0x16, 0x56, 0x65, 0xc9, 0xbf, 0xe6, 0x1e, 0x25, 0xcd, 0x33, 0x58, 0x24, 0x5b, 0xdf, 0xb8, 0xde, 0x76, 0x32, 0xde, 0x72, 0xed, 0x20, 0xcd, 0xac, 0xf3, 0x84, 0x76, 0x40, 0x96, 0xc8, 0xfe, 0x3a, 0x37, 0x65, 0x63, 0xa3, 0x48, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10504 = { .name = "ecdsa_secp521r1_sha512_10504", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10504_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10504_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10504_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10505 for ECDSA, tcId is 102 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10505_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10505_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10505_sig[] = { 0x00, 0xd6, 0x09, 0xe1, 0xf1, 0xcc, 0x1a, 0xdf, 0x58, 0x89, 0xdc, 0x6d, 0xed, 0xa4, 0x41, 0x68, 0x2e, 0x76, 0x0b, 0xe0, 0x89, 0x32, 0xb3, 0x15, 0x92, 0xfe, 0xf3, 0xad, 0xa1, 0x43, 0xfb, 0x49, 0x40, 0xe4, 0xea, 0x75, 0xae, 0x51, 0x9e, 0x4f, 0xb0, 0x76, 0x9c, 0x4f, 0xbd, 0x33, 0xa5, 0x2b, 0x18, 0x3a, 0x21, 0xd0, 0xbb, 0xa1, 0xff, 0xa3, 0xfe, 0x50, 0xfd, 0x11, 0xf7, 0x5c, 0x6a, 0xc5, 0x8f, 0xf6, 0x01, 0x24, 0x00, 0xcc, 0x4d, 0xdc, 0x24, 0xdd, 0xcd, 0x47, 0xa6, 0xd6, 0x39, 0xa2, 0xab, 0xde, 0xf2, 0x9a, 0x65, 0xd4, 0xfe, 0x91, 0x75, 0xf5, 0x1b, 0x31, 0x6f, 0x4b, 0xf9, 0x18, 0xbc, 0x91, 0x88, 0x79, 0x49, 0x5c, 0x57, 0x2f, 0x8e, 0x98, 0x36, 0x4e, 0x2e, 0x1a, 0xa0, 0xd4, 0xd5, 0x3a, 0xd2, 0x9e, 0x80, 0x3a, 0x44, 0x70, 0xd9, 0x4d, 0xd0, 0x6a, 0x98, 0x2a, 0x1d, 0x04, 0x1b, 0xf2, 0xb5, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10505 = { .name = "ecdsa_secp521r1_sha512_10505", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10505_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10505_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10505_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10506 for ECDSA, tcId is 103 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10506_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10506_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10506_sig[] = { 0x00, 0x37, 0x75, 0xa7, 0xe6, 0x1b, 0xdd, 0xa9, 0xa3, 0xa9, 0x90, 0xba, 0x9f, 0xde, 0x98, 0xf9, 0xd8, 0x1d, 0x4b, 0x03, 0x19, 0x55, 0x47, 0xbb, 0xd0, 0x65, 0x8e, 0x10, 0x59, 0xda, 0xa0, 0x0d, 0xa9, 0x27, 0x06, 0x71, 0xb2, 0xfa, 0xda, 0x1b, 0xbb, 0xf1, 0x39, 0x82, 0xf8, 0x7c, 0x9f, 0x3f, 0x26, 0xdd, 0xa5, 0xcd, 0x4f, 0x24, 0xde, 0x63, 0xbc, 0xeb, 0x5f, 0xd9, 0x39, 0x01, 0x63, 0xc5, 0x8d, 0x26, 0x01, 0x0a, 0x03, 0xe4, 0xba, 0x08, 0xf9, 0xe2, 0xb6, 0x91, 0x5a, 0x6c, 0x0b, 0x83, 0x15, 0x6b, 0x00, 0xf5, 0x9e, 0xfc, 0x54, 0x17, 0x39, 0x4c, 0x51, 0xca, 0x76, 0x16, 0xb5, 0x8c, 0xf9, 0x1a, 0xb7, 0x16, 0x6d, 0x84, 0x59, 0xeb, 0x4e, 0xeb, 0x0d, 0x57, 0x14, 0x6e, 0xd6, 0x56, 0x0e, 0x17, 0x3f, 0xaf, 0x35, 0x4b, 0x43, 0x90, 0x81, 0x7e, 0x0a, 0xaf, 0xb3, 0x82, 0x94, 0xdf, 0x25, 0x99, 0x2c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10506 = { .name = "ecdsa_secp521r1_sha512_10506", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10506_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10506_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10506_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10507 for ECDSA, tcId is 104 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10507_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10507_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10507_sig[] = { 0x01, 0x7a, 0xb0, 0x0a, 0x30, 0xc8, 0x8f, 0xae, 0xce, 0xd3, 0xe4, 0xa1, 0x0f, 0x9c, 0x63, 0x78, 0x5b, 0xc2, 0x9e, 0x9a, 0xf4, 0x49, 0x94, 0x66, 0xbd, 0x88, 0x80, 0x82, 0x7c, 0xfa, 0x58, 0x0b, 0x61, 0x71, 0xf4, 0xa2, 0x0f, 0x36, 0x48, 0x7f, 0x7b, 0x94, 0x59, 0x29, 0x46, 0xbc, 0xa4, 0x16, 0x2f, 0xaf, 0x65, 0x87, 0x2a, 0xf6, 0xbf, 0xb1, 0x91, 0x9e, 0x6b, 0x02, 0x6c, 0x14, 0xe5, 0x1e, 0x27, 0x40, 0x01, 0x92, 0x75, 0x15, 0xf6, 0x48, 0x9e, 0x9b, 0x7d, 0x9c, 0xbf, 0x61, 0xe1, 0x03, 0x29, 0x58, 0x57, 0xc8, 0x13, 0x13, 0x20, 0x21, 0x7e, 0x7a, 0x86, 0xd3, 0xf2, 0xfd, 0xcb, 0x35, 0x0d, 0xa5, 0xb4, 0x2c, 0x2d, 0xbe, 0x17, 0x3f, 0xcb, 0x02, 0x5d, 0x14, 0xda, 0x23, 0x9d, 0x7d, 0x61, 0x0d, 0xe8, 0x47, 0x59, 0x14, 0x74, 0x85, 0x73, 0x42, 0x9c, 0x95, 0x90, 0xd3, 0x59, 0x4f, 0x4f, 0xa3, 0xaa, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10507 = { .name = "ecdsa_secp521r1_sha512_10507", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10507_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10507_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10507_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10508 for ECDSA, tcId is 105 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10508_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10508_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10508_sig[] = { 0x00, 0x3b, 0x2b, 0xa1, 0x50, 0x9a, 0xea, 0x9d, 0x42, 0xd4, 0x00, 0x40, 0x00, 0x33, 0x95, 0x2a, 0x02, 0x2f, 0xe7, 0xe0, 0x0c, 0x7a, 0xd6, 0x5c, 0x39, 0xa2, 0xf7, 0x6d, 0x41, 0x13, 0x0a, 0xad, 0xa9, 0x9c, 0x3c, 0xdf, 0xb9, 0xcf, 0x44, 0x57, 0x5a, 0x21, 0x63, 0xde, 0x29, 0xf0, 0x97, 0xbe, 0xb9, 0xbd, 0x3a, 0xef, 0x93, 0x34, 0xe6, 0xfd, 0x08, 0x13, 0xdd, 0xe2, 0xa0, 0x87, 0xf9, 0x38, 0xc5, 0xf6, 0x00, 0x1a, 0xfb, 0x56, 0x08, 0x7d, 0xfd, 0x5c, 0xb4, 0xff, 0xf6, 0x67, 0x9a, 0x11, 0x4c, 0x34, 0x0f, 0x3a, 0x59, 0xf6, 0xb3, 0xe1, 0x81, 0x33, 0x73, 0xbf, 0x3e, 0xbe, 0x30, 0xcb, 0x5e, 0x8b, 0x28, 0x5a, 0x58, 0x75, 0xd1, 0xb5, 0xa9, 0x12, 0x0d, 0xb8, 0x0f, 0x70, 0x31, 0x02, 0x01, 0x55, 0x9f, 0x89, 0xbb, 0x1d, 0xf1, 0x47, 0x96, 0x1d, 0x1c, 0xa4, 0xfc, 0xdb, 0x5e, 0x8e, 0x84, 0xca, 0xe0, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10508 = { .name = "ecdsa_secp521r1_sha512_10508", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10508_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10508_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10508_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10509 for ECDSA, tcId is 106 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10509_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10509_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10509_sig[] = { 0x01, 0x0e, 0xfb, 0x32, 0x1a, 0x34, 0x76, 0x25, 0x34, 0x3f, 0x51, 0x26, 0xed, 0x85, 0x45, 0x01, 0x7d, 0x79, 0x9e, 0xb1, 0x03, 0xc7, 0x55, 0x58, 0x92, 0x2e, 0xab, 0xe4, 0x42, 0x11, 0xe8, 0xfd, 0x83, 0x46, 0x55, 0xdc, 0x2e, 0xc5, 0xbe, 0xe9, 0xbb, 0x3e, 0x44, 0x35, 0x0e, 0xb6, 0x88, 0x5e, 0x0a, 0xb9, 0x74, 0x73, 0x02, 0x22, 0xe5, 0x5f, 0x13, 0xad, 0x27, 0xc0, 0x66, 0x72, 0x2f, 0xec, 0xaa, 0x25, 0x00, 0xd6, 0x2e, 0x3d, 0x7f, 0xf9, 0x21, 0x53, 0x69, 0xaa, 0x7d, 0xa8, 0x18, 0xdb, 0x30, 0x2e, 0x49, 0x03, 0x38, 0x75, 0x01, 0x0b, 0x2f, 0x9b, 0x73, 0xd2, 0x5c, 0xa5, 0xb9, 0xbf, 0x2c, 0x62, 0xed, 0x75, 0x66, 0x86, 0x23, 0x0c, 0xd5, 0xf4, 0xa3, 0x7c, 0x1f, 0xa8, 0x81, 0xc9, 0x7e, 0x62, 0x39, 0x19, 0xfa, 0xb8, 0x27, 0xde, 0x59, 0x95, 0xab, 0x45, 0x6a, 0x1f, 0xd7, 0xac, 0x7b, 0x85, 0xb1, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10509 = { .name = "ecdsa_secp521r1_sha512_10509", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10509_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10509_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10509_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10510 for ECDSA, tcId is 107 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10510_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10510_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10510_sig[] = { 0x00, 0x2f, 0x77, 0x8c, 0xd5, 0x52, 0xf5, 0x4d, 0xa5, 0xf5, 0x67, 0xf4, 0x7e, 0x69, 0x79, 0x87, 0x2b, 0xa1, 0x30, 0xdc, 0x08, 0x90, 0x17, 0x2b, 0xf3, 0xb3, 0xbb, 0x95, 0x2f, 0x03, 0xc6, 0x4b, 0xc8, 0x78, 0x3a, 0xbe, 0x9f, 0x05, 0x6d, 0x60, 0xe1, 0x66, 0x77, 0x80, 0xf5, 0xea, 0x88, 0xf5, 0x9e, 0xf3, 0x3c, 0x73, 0x5d, 0x54, 0x05, 0x61, 0xa1, 0x97, 0xd3, 0x1f, 0xe3, 0x48, 0x53, 0xa6, 0x0a, 0x52, 0x00, 0xbd, 0x28, 0x16, 0xf0, 0x63, 0x72, 0xf2, 0xe3, 0xf2, 0x58, 0x2d, 0x53, 0xe5, 0x83, 0xe1, 0x33, 0xa5, 0x51, 0xaa, 0xec, 0x04, 0xdd, 0xc2, 0xfd, 0xb7, 0xb8, 0x13, 0x17, 0x87, 0xe7, 0x3e, 0x42, 0x95, 0xac, 0x28, 0xa9, 0x60, 0x4a, 0x24, 0x02, 0xed, 0x5b, 0x27, 0x2c, 0xc0, 0x3b, 0xe5, 0x7d, 0xd4, 0xa7, 0xdf, 0x84, 0xd9, 0xee, 0x24, 0xcb, 0x0c, 0x2b, 0xf1, 0x24, 0xed, 0x92, 0x7d, 0xef, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10510 = { .name = "ecdsa_secp521r1_sha512_10510", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10510_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10510_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10510_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10511 for ECDSA, tcId is 108 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10511_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10511_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10511_sig[] = { 0x01, 0x2a, 0x45, 0x9f, 0xff, 0xea, 0x70, 0xd3, 0xbf, 0xc1, 0x3e, 0x9e, 0xa0, 0xab, 0xb1, 0x0a, 0xae, 0x39, 0x10, 0xdf, 0x60, 0x49, 0x97, 0xcb, 0x5e, 0x4b, 0xb0, 0x54, 0x8a, 0xbd, 0x85, 0x2a, 0xba, 0xc6, 0xb9, 0xa3, 0x24, 0x18, 0xc3, 0xb5, 0xed, 0x4e, 0x79, 0x51, 0xae, 0x88, 0xee, 0xcc, 0x0a, 0x2f, 0x10, 0x65, 0xca, 0xf2, 0x4c, 0x6a, 0x81, 0x46, 0x74, 0xe9, 0x56, 0x82, 0xd9, 0xb4, 0x93, 0xf2, 0x00, 0xe2, 0xab, 0xd0, 0x5c, 0x58, 0x5e, 0x0c, 0x21, 0x3a, 0x21, 0x9a, 0x7e, 0x7d, 0x38, 0xb8, 0x10, 0xd2, 0x52, 0xff, 0xea, 0x67, 0x65, 0x0d, 0x4d, 0x19, 0x94, 0xa4, 0x1c, 0x2c, 0xa3, 0x25, 0xbb, 0x96, 0x49, 0x20, 0xc6, 0xc2, 0x54, 0x53, 0x81, 0xc4, 0x5c, 0xa3, 0xe1, 0xec, 0xa0, 0x5e, 0x00, 0x51, 0x4b, 0x36, 0x6c, 0xb0, 0xe1, 0xe4, 0x9b, 0x8c, 0x23, 0x6d, 0x38, 0x3b, 0x26, 0x0b, 0x9c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10511 = { .name = "ecdsa_secp521r1_sha512_10511", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10511_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10511_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10511_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10512 for ECDSA, tcId is 109 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10512_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10512_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10512_sig[] = { 0x01, 0x0f, 0x26, 0x53, 0xd9, 0x4a, 0xa2, 0x8b, 0xcb, 0xd6, 0x67, 0xa5, 0x01, 0x3f, 0x9b, 0x28, 0x3d, 0x84, 0x87, 0xc4, 0x4d, 0x09, 0x3e, 0xe4, 0x76, 0x60, 0x32, 0x93, 0x98, 0xca, 0xa5, 0x50, 0xca, 0x9c, 0x93, 0x88, 0xc7, 0xaa, 0xde, 0xce, 0xac, 0xac, 0x15, 0x07, 0xe7, 0x65, 0x90, 0xaf, 0xb7, 0x36, 0xad, 0xb3, 0x58, 0x3f, 0x54, 0xf3, 0x1a, 0xe2, 0x5c, 0x9c, 0x71, 0x7e, 0xc9, 0xf8, 0x9b, 0x5e, 0x00, 0x49, 0x44, 0x48, 0xa7, 0xff, 0xe4, 0xa4, 0xee, 0xd8, 0x4b, 0x46, 0x02, 0x78, 0x1e, 0xce, 0xf7, 0x7a, 0x23, 0xfe, 0xd1, 0x16, 0xb1, 0xb7, 0x91, 0xb8, 0xd2, 0xe4, 0x23, 0x1b, 0x7c, 0xa2, 0xa7, 0xb6, 0xf0, 0x6d, 0x13, 0x27, 0x05, 0x93, 0x2d, 0x44, 0x6e, 0x61, 0xd3, 0x44, 0x71, 0x4e, 0xe2, 0x40, 0x14, 0xfa, 0x5b, 0xb1, 0x44, 0xa9, 0x65, 0x72, 0xb3, 0xd4, 0x8d, 0x03, 0x8a, 0x55, 0xad, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10512 = { .name = "ecdsa_secp521r1_sha512_10512", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10512_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10512_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10512_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10513 for ECDSA, tcId is 110 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10513_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10513_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10513_sig[] = { 0x00, 0xc2, 0xda, 0x48, 0x55, 0x2c, 0x39, 0xd9, 0x4f, 0x5a, 0x45, 0x42, 0x7a, 0xe9, 0xdc, 0xd8, 0x91, 0xb6, 0x5c, 0xca, 0x33, 0xe6, 0x24, 0xad, 0x25, 0x32, 0xff, 0xa3, 0x33, 0x66, 0x6b, 0x24, 0x1d, 0x87, 0x33, 0x36, 0xfa, 0xb7, 0xbb, 0xd7, 0xb4, 0xc1, 0x93, 0xdb, 0x4d, 0x86, 0x5c, 0xd5, 0x0f, 0x0c, 0x1d, 0x8c, 0xb5, 0xc1, 0x4c, 0xf3, 0xf0, 0x89, 0xad, 0x42, 0xdd, 0x43, 0xcf, 0xff, 0x63, 0x4e, 0x01, 0x4f, 0x20, 0x70, 0xdc, 0xf8, 0x60, 0xb9, 0x6a, 0x45, 0xf2, 0xa6, 0x06, 0x1e, 0x4e, 0xc2, 0xa6, 0xad, 0x64, 0xd7, 0xd0, 0xe9, 0xfb, 0xdb, 0x25, 0xaa, 0x93, 0xb9, 0x99, 0x41, 0xbe, 0x28, 0x0f, 0x5c, 0x70, 0xc0, 0xe3, 0x2b, 0x62, 0x34, 0xdf, 0x54, 0x5b, 0xac, 0xe7, 0x34, 0x1a, 0xf9, 0x4c, 0x14, 0x0c, 0x86, 0x5d, 0x44, 0xfa, 0x8e, 0xa7, 0xeb, 0xe0, 0xfe, 0x53, 0xbd, 0xa4, 0x46, 0x45, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10513 = { .name = "ecdsa_secp521r1_sha512_10513", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10513_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10513_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10513_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10514 for ECDSA, tcId is 111 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10514_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10514_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10514_sig[] = { 0x00, 0x9b, 0xc6, 0xe7, 0x45, 0x49, 0xb4, 0x8a, 0x1e, 0x7c, 0x18, 0x1b, 0x17, 0x96, 0x87, 0xfb, 0x27, 0xd6, 0xe9, 0xac, 0xac, 0x47, 0xec, 0x34, 0xb1, 0xb8, 0xbd, 0x04, 0x4d, 0x32, 0x93, 0x20, 0x54, 0x4e, 0x4e, 0x56, 0x8e, 0x67, 0xd1, 0x7f, 0x4c, 0xda, 0x2f, 0x0a, 0x3f, 0xe3, 0x03, 0xd5, 0x61, 0xa1, 0x1f, 0xc0, 0xc9, 0x81, 0xed, 0x9b, 0xe2, 0xfc, 0xc6, 0xd3, 0x97, 0xa4, 0x3a, 0xd4, 0x9e, 0x10, 0x00, 0xff, 0x29, 0x5e, 0x43, 0xfe, 0xc5, 0xb6, 0x8b, 0x00, 0xce, 0x80, 0x44, 0x43, 0x4b, 0xcd, 0x17, 0xaf, 0x1b, 0xa0, 0x4a, 0x74, 0x55, 0x63, 0x53, 0xe2, 0x58, 0xd0, 0x17, 0xba, 0x26, 0xbe, 0xd6, 0x7f, 0x45, 0x8f, 0xad, 0x5d, 0xd8, 0xe7, 0xd2, 0x73, 0x4d, 0x56, 0xf5, 0x99, 0x28, 0xc2, 0x41, 0x94, 0x41, 0xa9, 0xe8, 0xc0, 0x57, 0x3d, 0xb3, 0x58, 0x6c, 0xa0, 0x56, 0x95, 0x1c, 0xa9, 0x35, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10514 = { .name = "ecdsa_secp521r1_sha512_10514", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10514_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10514_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10514_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10515 for ECDSA, tcId is 112 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10515_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10515_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10515_sig[] = { 0x00, 0x20, 0x96, 0x36, 0x38, 0xd0, 0xb0, 0x58, 0x49, 0x42, 0x54, 0xef, 0xce, 0x57, 0x77, 0x8a, 0xc6, 0x5e, 0x5f, 0x23, 0x49, 0x1f, 0x7a, 0xdf, 0xa7, 0x2e, 0x47, 0x13, 0xb7, 0xc0, 0x39, 0x46, 0xb5, 0x43, 0xc0, 0x14, 0xd9, 0x66, 0x0d, 0x85, 0x52, 0x46, 0xf3, 0x08, 0x08, 0x5e, 0xee, 0xe4, 0x95, 0xcd, 0x83, 0x1b, 0x7d, 0xbe, 0xce, 0x47, 0xae, 0xa4, 0x8e, 0x90, 0x43, 0x3b, 0xd0, 0xfe, 0x81, 0x84, 0x01, 0x61, 0xa4, 0xf4, 0x97, 0x7f, 0xec, 0xae, 0x92, 0xd4, 0xf6, 0x7e, 0x56, 0xf3, 0x33, 0x8c, 0x7a, 0x9b, 0x82, 0x0b, 0x5e, 0x05, 0xdb, 0x1f, 0x28, 0xd0, 0x5d, 0x71, 0xf7, 0xe5, 0xf3, 0x6b, 0xc6, 0x3f, 0x6e, 0xdd, 0xa4, 0xd3, 0xc1, 0xb2, 0xd7, 0x3b, 0xb8, 0xa3, 0x0c, 0x4d, 0x74, 0x5b, 0x73, 0xe6, 0x34, 0xef, 0x57, 0x4c, 0xf4, 0x76, 0x56, 0xa3, 0x72, 0xe3, 0xeb, 0x42, 0xcc, 0x03, 0x88, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10515 = { .name = "ecdsa_secp521r1_sha512_10515", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10515_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10515_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10515_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10516 for ECDSA, tcId is 113 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10516_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10516_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10516_sig[] = { 0x01, 0xbc, 0xc5, 0x85, 0x85, 0x97, 0xce, 0x8d, 0x4d, 0xc5, 0xff, 0xa6, 0xbe, 0x33, 0xf7, 0xd8, 0x04, 0xf2, 0xf8, 0xef, 0x59, 0xc5, 0xdb, 0x93, 0x01, 0x78, 0x5e, 0x0c, 0xce, 0xb7, 0xed, 0x57, 0x46, 0x2f, 0x45, 0x5a, 0x46, 0x57, 0x10, 0xc7, 0x41, 0x45, 0x70, 0xc9, 0xa3, 0x5a, 0x31, 0x00, 0xbd, 0x15, 0xfa, 0x40, 0xe3, 0xec, 0x35, 0x0d, 0x1f, 0x75, 0x40, 0x6c, 0x2a, 0x25, 0x88, 0x5e, 0x9d, 0x76, 0x00, 0x43, 0x75, 0x7d, 0x28, 0x2f, 0xd1, 0xd4, 0x4c, 0x25, 0x3f, 0x9a, 0x05, 0xd8, 0x14, 0x2c, 0x29, 0xa6, 0xd6, 0x3c, 0x0a, 0x1f, 0x55, 0x08, 0x43, 0x1b, 0xc9, 0xfb, 0x9b, 0x60, 0xa3, 0x8b, 0x7f, 0x41, 0x4e, 0x73, 0x0e, 0x0d, 0x59, 0xb7, 0xb7, 0x09, 0x70, 0x6a, 0x67, 0x02, 0x2e, 0x19, 0x22, 0xfe, 0x88, 0xb1, 0x82, 0xa5, 0x74, 0x43, 0xc5, 0x8b, 0xd0, 0x6a, 0x69, 0xee, 0x78, 0x14, 0xbc, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10516 = { .name = "ecdsa_secp521r1_sha512_10516", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10516_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10516_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10516_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 113 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10517 for ECDSA, tcId is 114 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10517_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10517_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10517_sig[] = { 0x01, 0x24, 0x01, 0x20, 0xb9, 0x7e, 0xa6, 0x7b, 0xcb, 0xd0, 0xe4, 0x12, 0xd8, 0x71, 0x37, 0xa1, 0x3e, 0x34, 0x7a, 0x87, 0x0a, 0x22, 0x49, 0x37, 0x5f, 0xcc, 0xf8, 0xc0, 0x04, 0xda, 0x35, 0xe5, 0x92, 0x62, 0x07, 0x74, 0x16, 0x0e, 0x7b, 0x82, 0xae, 0xd1, 0xf5, 0x79, 0x97, 0xfb, 0x01, 0x5a, 0x76, 0x4d, 0x01, 0x4d, 0x4b, 0xe1, 0xf3, 0x89, 0xe5, 0x49, 0x97, 0x77, 0x05, 0x45, 0x76, 0xe7, 0xbf, 0x00, 0x01, 0x9f, 0x15, 0x7e, 0xc3, 0xa2, 0x41, 0x08, 0x53, 0x27, 0x4b, 0xc4, 0xd8, 0xe7, 0x56, 0x5e, 0x9e, 0xaa, 0x5d, 0xc4, 0x7d, 0x5e, 0x51, 0x5a, 0xbc, 0x86, 0xc2, 0x2f, 0xa6, 0xdc, 0x21, 0x54, 0x82, 0xdf, 0x5c, 0x0e, 0x2b, 0x88, 0x5f, 0x37, 0xba, 0xef, 0x3a, 0x6a, 0xe8, 0x3d, 0xaa, 0xc9, 0x30, 0x61, 0x7a, 0x5f, 0xb3, 0x7b, 0xb0, 0x3c, 0xe4, 0x0f, 0x06, 0xfa, 0x4e, 0xce, 0x26, 0xcb, 0xb1, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10517 = { .name = "ecdsa_secp521r1_sha512_10517", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10517_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10517_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10517_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 114 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10518 for ECDSA, tcId is 115 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10518_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10518_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10518_sig[] = { 0x01, 0xa7, 0x53, 0x6d, 0x55, 0x87, 0x6f, 0x83, 0x92, 0xa6, 0xeb, 0xa1, 0x8f, 0x07, 0x51, 0x18, 0xc2, 0x73, 0x01, 0x58, 0x44, 0xeb, 0x35, 0x36, 0xc7, 0x27, 0xc0, 0x04, 0xc1, 0xbf, 0x23, 0x06, 0x7d, 0x57, 0xe8, 0xfe, 0x31, 0x87, 0x2f, 0x8b, 0xf8, 0x39, 0x64, 0x0e, 0x80, 0xe0, 0x6a, 0xba, 0x3c, 0x0a, 0x36, 0x5a, 0x26, 0x8c, 0xab, 0xc2, 0xda, 0x96, 0xd8, 0x45, 0x50, 0xa5, 0x69, 0xf1, 0x7f, 0x9c, 0x00, 0xe8, 0x40, 0xb6, 0xa7, 0xcb, 0xa7, 0x18, 0xd9, 0x11, 0x03, 0xfa, 0xa1, 0x34, 0xc2, 0xf6, 0x37, 0x63, 0xf3, 0xb6, 0xb9, 0x1d, 0xb7, 0xec, 0xbd, 0x3b, 0x10, 0xf1, 0x01, 0x71, 0xa8, 0x75, 0x71, 0x2c, 0xb9, 0x38, 0x43, 0x25, 0x41, 0x1b, 0xec, 0xa9, 0xa3, 0xaa, 0x87, 0xaa, 0xae, 0x39, 0x02, 0xc2, 0x82, 0xd2, 0xde, 0xda, 0xa1, 0xcb, 0xdd, 0xd4, 0x0c, 0xcf, 0x0d, 0x29, 0x97, 0x5d, 0xf2, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10518 = { .name = "ecdsa_secp521r1_sha512_10518", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10518_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10518_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10518_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 115 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10519 for ECDSA, tcId is 116 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10519_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10519_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10519_sig[] = { 0x01, 0x3f, 0x72, 0xbe, 0x1c, 0x33, 0x12, 0x14, 0xf4, 0x50, 0x07, 0xff, 0x72, 0xce, 0x54, 0xaf, 0xce, 0x1c, 0x91, 0x0a, 0x90, 0xe4, 0xff, 0x3d, 0x17, 0x66, 0x20, 0xff, 0x3c, 0xa9, 0x76, 0xc2, 0xb6, 0x2d, 0x0c, 0xdf, 0x5d, 0x11, 0x34, 0x29, 0x0e, 0xe9, 0x74, 0x40, 0x71, 0x55, 0x31, 0x45, 0x5d, 0xc2, 0x98, 0x18, 0x82, 0x80, 0x94, 0xd3, 0x66, 0xf9, 0x59, 0xe1, 0xad, 0xc7, 0xd7, 0xe9, 0x8e, 0xa4, 0x01, 0xe8, 0x0a, 0xc3, 0x8b, 0xa6, 0x9f, 0x3e, 0x53, 0x11, 0x6e, 0x54, 0x32, 0xfb, 0xdb, 0x3b, 0x1e, 0x7e, 0xa1, 0xb4, 0x3e, 0x5f, 0x86, 0xd1, 0xc0, 0xe3, 0xd1, 0xc4, 0x69, 0x44, 0x2d, 0xbb, 0x40, 0x6f, 0xfe, 0x52, 0x4f, 0x06, 0x85, 0xf7, 0x1e, 0x81, 0x1d, 0x94, 0xa9, 0xef, 0xa9, 0xed, 0x38, 0xcc, 0xd9, 0x21, 0x3f, 0x98, 0x39, 0x83, 0x03, 0x5f, 0x2a, 0xdd, 0x0b, 0x8f, 0x2f, 0xa4, 0xae, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10519 = { .name = "ecdsa_secp521r1_sha512_10519", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10519_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10519_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10519_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 116 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10520 for ECDSA, tcId is 117 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10520_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10520_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10520_sig[] = { 0x01, 0xac, 0xea, 0xa6, 0xd5, 0x67, 0xdd, 0xb3, 0x9b, 0xa5, 0x2d, 0x29, 0x7e, 0x60, 0xe4, 0xa8, 0x14, 0xc9, 0xb4, 0x76, 0xca, 0xb5, 0x68, 0xc0, 0x9d, 0x8a, 0xce, 0x87, 0x8d, 0x84, 0x62, 0x18, 0xdd, 0x2b, 0x5d, 0x2a, 0x24, 0x61, 0xf0, 0xd5, 0xa5, 0x6c, 0x12, 0xf0, 0xbd, 0x80, 0x3e, 0x32, 0x53, 0xdc, 0x5b, 0x38, 0x7b, 0x94, 0xe8, 0x65, 0x89, 0xcb, 0x1d, 0x0c, 0xb8, 0x09, 0xc7, 0x07, 0x11, 0x25, 0x01, 0xb1, 0xfb, 0x02, 0x1b, 0x10, 0xb5, 0x93, 0xcf, 0x9e, 0x79, 0x3c, 0xf2, 0x2a, 0x88, 0xbd, 0xe9, 0xa4, 0xb9, 0x2f, 0x9e, 0x21, 0x80, 0x94, 0xf2, 0x70, 0xb0, 0x93, 0xe8, 0xc6, 0xc9, 0x5a, 0xce, 0xd4, 0x3d, 0x09, 0x7b, 0xfa, 0x33, 0x54, 0xe6, 0xb9, 0x8d, 0x19, 0x5c, 0x59, 0x9c, 0x2e, 0x6f, 0x13, 0x35, 0x1c, 0x63, 0xc2, 0x89, 0x67, 0xe0, 0x8b, 0x7e, 0x49, 0x7e, 0x12, 0x06, 0x65, 0xc6, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10520 = { .name = "ecdsa_secp521r1_sha512_10520", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10520_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10520_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10520_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 117 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10521 for ECDSA, tcId is 118 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10521_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10521_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10521_sig[] = { 0x00, 0xf6, 0xff, 0xb5, 0xdd, 0x78, 0x63, 0x26, 0x04, 0x1e, 0x74, 0x56, 0x4b, 0x71, 0x9d, 0x38, 0x92, 0x4a, 0x28, 0x32, 0x98, 0x68, 0x17, 0x7c, 0x13, 0x46, 0x3c, 0xff, 0x90, 0xc4, 0xb0, 0x9d, 0x3d, 0x2d, 0xbc, 0x01, 0x12, 0x81, 0xcc, 0x78, 0xaa, 0x0e, 0x5e, 0x86, 0x56, 0x12, 0x3b, 0xc5, 0x06, 0x05, 0x60, 0x1a, 0x54, 0x7b, 0xb4, 0xb1, 0x76, 0x1f, 0x85, 0x2a, 0x12, 0x0e, 0xa4, 0x6d, 0xf9, 0xdf, 0x01, 0xa4, 0x07, 0xfd, 0xd4, 0x45, 0x61, 0x4a, 0x16, 0xa5, 0xeb, 0xd4, 0xba, 0x07, 0x5c, 0x6c, 0x1d, 0x75, 0x64, 0xf3, 0xcf, 0xd4, 0x77, 0xd6, 0xb2, 0x62, 0x0a, 0xbf, 0x18, 0xa5, 0xbf, 0x78, 0x31, 0x12, 0x82, 0xea, 0x45, 0xb9, 0xbf, 0xf8, 0x13, 0xf2, 0x4c, 0x3c, 0x78, 0x54, 0xe6, 0x09, 0x1c, 0x80, 0x55, 0x14, 0x4f, 0x95, 0x92, 0xfb, 0xf2, 0xe4, 0x56, 0x42, 0x1a, 0x41, 0xc5, 0x55, 0xd7, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10521 = { .name = "ecdsa_secp521r1_sha512_10521", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10521_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10521_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10521_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 118 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10522 for ECDSA, tcId is 119 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10522_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10522_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10522_sig[] = { 0x01, 0xa1, 0x5a, 0xf4, 0xd5, 0xca, 0x3d, 0xea, 0xde, 0xcd, 0x75, 0xec, 0x1b, 0xae, 0xc3, 0x1c, 0x8d, 0x43, 0xfb, 0xc8, 0x89, 0x46, 0x64, 0x75, 0xe6, 0xc2, 0x31, 0x06, 0xdb, 0x4e, 0x63, 0xab, 0x69, 0x00, 0x3f, 0x56, 0xd8, 0x19, 0xdd, 0xfc, 0x5a, 0x67, 0x3c, 0x82, 0x89, 0xf9, 0xe6, 0xdf, 0x80, 0x6b, 0x07, 0xaf, 0x57, 0xa2, 0x54, 0x1a, 0xf6, 0x94, 0xe6, 0x48, 0x97, 0x34, 0xc8, 0xee, 0xc8, 0x37, 0x00, 0x69, 0xc3, 0x54, 0x33, 0xa3, 0x21, 0x7f, 0xcd, 0x73, 0x8a, 0x65, 0xb7, 0xda, 0x9e, 0x81, 0xcd, 0x81, 0xf0, 0x4f, 0x0e, 0xf0, 0x60, 0x05, 0x0b, 0x9c, 0x84, 0x3e, 0x9e, 0x80, 0x8d, 0x8b, 0x81, 0x75, 0xf3, 0xad, 0xae, 0xfa, 0x10, 0x5d, 0x21, 0x5e, 0xa9, 0xa4, 0x6b, 0xf4, 0x15, 0xfe, 0x2a, 0xc1, 0x80, 0x95, 0x8f, 0xcd, 0xd8, 0x78, 0xd5, 0x4f, 0x8d, 0x19, 0xd2, 0x3e, 0x11, 0xb7, 0x6d, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10522 = { .name = "ecdsa_secp521r1_sha512_10522", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10522_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10522_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10522_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 119 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10523 for ECDSA, tcId is 120 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10523_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10523_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10523_sig[] = { 0x00, 0xba, 0x89, 0x9f, 0x94, 0x84, 0x1d, 0xb6, 0xc3, 0x3b, 0x85, 0x08, 0x67, 0xc8, 0x90, 0x6b, 0x43, 0x6b, 0xe3, 0x85, 0x36, 0x40, 0xdb, 0xfc, 0x86, 0x31, 0x97, 0xfa, 0x1e, 0x5a, 0x55, 0xce, 0x25, 0x24, 0x0f, 0x2b, 0xe4, 0x98, 0xb9, 0xbd, 0xcf, 0xc0, 0xa8, 0x9d, 0xbd, 0xca, 0x19, 0x2d, 0x8f, 0x84, 0xca, 0x3c, 0x44, 0xe5, 0xe0, 0xee, 0x6f, 0x83, 0xe7, 0x90, 0x0e, 0x08, 0x5e, 0x1b, 0xd4, 0x81, 0x00, 0x86, 0xe6, 0xd5, 0x58, 0xde, 0x8d, 0x8f, 0x01, 0x4a, 0x85, 0xcb, 0x4a, 0x5f, 0x69, 0x08, 0x62, 0x7e, 0x7a, 0x1a, 0xcd, 0x70, 0x58, 0x1d, 0x9d, 0x9c, 0x7d, 0x14, 0xdf, 0x44, 0xd4, 0x37, 0xaa, 0x09, 0xe5, 0xa1, 0x0a, 0x0b, 0x76, 0x0e, 0x98, 0xd4, 0x67, 0x31, 0xf2, 0x51, 0x2c, 0xa1, 0xb0, 0x24, 0x0c, 0x60, 0x2b, 0x5f, 0x0a, 0x20, 0x30, 0x48, 0x5e, 0x34, 0xde, 0x9c, 0x6c, 0xd0, 0x8e, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10523 = { .name = "ecdsa_secp521r1_sha512_10523", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10523_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10523_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10523_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 120 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10524 for ECDSA, tcId is 121 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10524_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10524_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10524_sig[] = { 0x00, 0x8e, 0xb5, 0xc9, 0x2d, 0xbf, 0x5e, 0x00, 0x88, 0x8b, 0x85, 0xe6, 0xbf, 0x66, 0x17, 0x01, 0x7e, 0x97, 0xc0, 0x4a, 0xe9, 0x50, 0xdd, 0x73, 0x18, 0x56, 0xb9, 0xdf, 0xb2, 0x0e, 0x0c, 0x0e, 0x5c, 0x54, 0x28, 0x4f, 0x41, 0x12, 0x31, 0xfe, 0xd1, 0xd0, 0x71, 0xb3, 0x21, 0xf7, 0x86, 0x18, 0xd2, 0xa7, 0x5c, 0x13, 0x96, 0x63, 0xfb, 0x9d, 0xb3, 0x43, 0x52, 0x14, 0xcb, 0xac, 0x5a, 0x0d, 0xcb, 0x4f, 0x01, 0xda, 0x0d, 0xd2, 0x9d, 0x47, 0x28, 0xfe, 0x63, 0x31, 0xc8, 0xe2, 0xad, 0xe5, 0x04, 0x5b, 0x12, 0x37, 0x66, 0x4a, 0xed, 0x15, 0x7d, 0xb2, 0xa6, 0xcb, 0xde, 0xaf, 0x5a, 0xbe, 0xa8, 0x13, 0x24, 0xe2, 0x89, 0x20, 0xa1, 0xc4, 0x9c, 0x33, 0x4b, 0x12, 0x26, 0x44, 0x1f, 0x88, 0xe1, 0xa7, 0xf2, 0xc7, 0xe0, 0x1d, 0x63, 0xe9, 0x50, 0xd4, 0x37, 0x8f, 0x08, 0x97, 0x3d, 0xb1, 0x6b, 0x2e, 0x61, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10524 = { .name = "ecdsa_secp521r1_sha512_10524", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10524_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10524_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10524_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 121 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10525 for ECDSA, tcId is 122 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10525_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10525_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10525_sig[] = { 0x01, 0x30, 0x77, 0x9f, 0x94, 0x3d, 0xf0, 0x98, 0xdd, 0xb5, 0x31, 0x5c, 0xdc, 0xa4, 0xb7, 0x31, 0xc8, 0x34, 0x72, 0xd5, 0x89, 0xf4, 0xba, 0x4d, 0x32, 0xc1, 0x72, 0xfa, 0xf6, 0xb3, 0xa9, 0xe4, 0x15, 0x4c, 0x05, 0x17, 0xfc, 0xc5, 0xc4, 0x32, 0xeb, 0x26, 0x9b, 0x01, 0x52, 0x29, 0x7f, 0x6d, 0xf4, 0x90, 0xec, 0xe5, 0x94, 0x96, 0xbe, 0xa8, 0x04, 0x7e, 0x2f, 0x32, 0xd0, 0xb5, 0xf9, 0x1e, 0x85, 0xef, 0x00, 0xc9, 0xeb, 0x0b, 0x56, 0x27, 0x31, 0x14, 0xce, 0x2e, 0x55, 0x33, 0x41, 0x24, 0x7d, 0xa8, 0x6b, 0x81, 0x3b, 0xfd, 0x65, 0xf1, 0x43, 0xa5, 0x56, 0x2b, 0xb1, 0xc8, 0x74, 0xff, 0x97, 0x05, 0x23, 0x83, 0x6b, 0xcd, 0xf3, 0x90, 0xdc, 0x19, 0x6e, 0x67, 0xdd, 0x75, 0xcd, 0x28, 0x11, 0x2e, 0xf7, 0x4a, 0xfd, 0x51, 0xb1, 0xfb, 0x35, 0x33, 0x3b, 0xe0, 0x50, 0x5a, 0x01, 0x2e, 0xfe, 0xbd, 0x4e, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10525 = { .name = "ecdsa_secp521r1_sha512_10525", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10525_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10525_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10525_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 122 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10526 for ECDSA, tcId is 123 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10526_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10526_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10526_sig[] = { 0x00, 0x59, 0x3f, 0x01, 0x32, 0xf7, 0xb5, 0xc2, 0x82, 0x35, 0x59, 0x78, 0xa2, 0xcb, 0xa7, 0x3f, 0xd3, 0xbd, 0x5c, 0xe3, 0x27, 0x20, 0x66, 0xd4, 0xad, 0x9b, 0xd8, 0xbd, 0x8b, 0x3e, 0x2b, 0xe0, 0x99, 0x00, 0x71, 0xb3, 0x50, 0x9e, 0xa4, 0x45, 0xdd, 0x15, 0x5c, 0xf9, 0x7e, 0x29, 0x4e, 0x2b, 0x8d, 0x13, 0x55, 0x80, 0x9d, 0x88, 0x0e, 0x10, 0x70, 0x0e, 0xea, 0xb0, 0xeb, 0x8e, 0xbb, 0xaa, 0x4f, 0x09, 0x01, 0x07, 0xeb, 0x3d, 0x5e, 0xd7, 0x5c, 0xbb, 0x9b, 0xcb, 0x92, 0x78, 0xf2, 0x26, 0x6c, 0x14, 0xc5, 0x7c, 0xf7, 0x03, 0xcb, 0xd8, 0xf7, 0xc7, 0xde, 0x45, 0xc5, 0x1f, 0x0f, 0x3b, 0xaf, 0x1d, 0xff, 0x6b, 0xb9, 0x2f, 0x1c, 0xbf, 0x89, 0xba, 0x64, 0x96, 0x77, 0xbc, 0xdc, 0xa7, 0x76, 0xfc, 0x57, 0xf5, 0x87, 0xce, 0x71, 0x4e, 0x2e, 0x43, 0xe6, 0xcc, 0x52, 0x3f, 0x0d, 0x0a, 0x28, 0x6d, 0x38, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10526 = { .name = "ecdsa_secp521r1_sha512_10526", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10526_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10526_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10526_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 123 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10527 for ECDSA, tcId is 124 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10527_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10527_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10527_sig[] = { 0x01, 0x6d, 0xed, 0x17, 0xfa, 0xd1, 0x0f, 0x94, 0x5e, 0x3d, 0x95, 0x3b, 0x4f, 0xd3, 0xb7, 0x28, 0x98, 0xc3, 0x70, 0xf1, 0x51, 0x64, 0xbb, 0x77, 0x12, 0x67, 0x33, 0x85, 0xc1, 0x0b, 0xf3, 0x92, 0x9b, 0xea, 0x29, 0x3e, 0x08, 0xbf, 0xc3, 0x00, 0x29, 0xa4, 0x65, 0x13, 0x8a, 0xd4, 0x7a, 0xbe, 0x60, 0x4d, 0xf8, 0x07, 0xb3, 0x17, 0x07, 0xfe, 0xf5, 0x5a, 0xdf, 0x3e, 0x10, 0x49, 0x20, 0x03, 0x8e, 0x3b, 0x00, 0xb7, 0x6b, 0x21, 0x2d, 0x74, 0xe4, 0xb6, 0xeb, 0x99, 0x4d, 0x92, 0x6e, 0x9e, 0x79, 0x69, 0x75, 0x23, 0x5f, 0xad, 0x90, 0xe3, 0x39, 0xa2, 0x1a, 0x32, 0x9e, 0x6e, 0xed, 0x3f, 0xe9, 0x6b, 0x6d, 0x3c, 0x0d, 0x54, 0x26, 0xe8, 0x46, 0x4c, 0x4a, 0x9e, 0xd5, 0xcb, 0xe0, 0x8e, 0xeb, 0x5e, 0x49, 0x0f, 0x72, 0xe9, 0xe0, 0x40, 0x6c, 0x0d, 0x76, 0xad, 0x07, 0x6b, 0x47, 0x6d, 0x07, 0xc0, 0x14, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10527 = { .name = "ecdsa_secp521r1_sha512_10527", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10527_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10527_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10527_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 124 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10528 for ECDSA, tcId is 125 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10528_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10528_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10528_sig[] = { 0x01, 0xf8, 0x62, 0x4f, 0xfa, 0x5a, 0x6a, 0xa8, 0xd9, 0xd0, 0x4e, 0xd1, 0xc2, 0x27, 0x2e, 0xa5, 0x5f, 0x52, 0x71, 0xca, 0x2c, 0xfc, 0x9a, 0xa6, 0xa3, 0x77, 0x8a, 0x0b, 0x8a, 0x23, 0x0f, 0x61, 0x1e, 0x5d, 0x65, 0xaf, 0x18, 0xd8, 0x25, 0x1a, 0x0c, 0xc4, 0xac, 0xe6, 0x63, 0x87, 0x8c, 0x33, 0x20, 0x52, 0x39, 0xee, 0x7e, 0x83, 0x88, 0xcc, 0x0a, 0x04, 0x0e, 0xa5, 0x15, 0x15, 0x07, 0x2e, 0x3f, 0x61, 0x00, 0x2c, 0x1e, 0x61, 0x19, 0x72, 0x29, 0xf4, 0x0e, 0x84, 0x0e, 0xa3, 0x73, 0x25, 0xf3, 0xbd, 0x87, 0xa6, 0xcd, 0x32, 0xd0, 0x80, 0xbd, 0x61, 0xbb, 0xde, 0x4b, 0x07, 0x2c, 0xf7, 0xa0, 0xc8, 0xa8, 0x9d, 0x40, 0x2c, 0xd9, 0x23, 0x5c, 0x26, 0xf1, 0x9a, 0x08, 0x4d, 0xdc, 0xeb, 0x1c, 0xc0, 0xba, 0xe4, 0x00, 0x62, 0x51, 0xcc, 0xbe, 0x10, 0xde, 0x39, 0x54, 0xe8, 0x5a, 0x8c, 0x5e, 0xfa, 0xf6, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10528 = { .name = "ecdsa_secp521r1_sha512_10528", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10528_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10528_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10528_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 125 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10529 for ECDSA, tcId is 126 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10529_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10529_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10529_sig[] = { 0x01, 0x2b, 0x01, 0xc6, 0x60, 0x1c, 0xec, 0xa9, 0xe5, 0x8e, 0x8a, 0xbb, 0x85, 0xd1, 0xf6, 0x66, 0x3d, 0xf7, 0x0c, 0xee, 0x76, 0x1a, 0x75, 0x6b, 0x77, 0xe4, 0x52, 0x94, 0xf0, 0x9a, 0xe6, 0x09, 0xa6, 0xb7, 0x6c, 0xfc, 0xd6, 0x7f, 0x60, 0xe4, 0x7a, 0x34, 0x94, 0xcb, 0x85, 0x51, 0x1e, 0x33, 0xd9, 0x2a, 0x8d, 0x29, 0x7a, 0x1b, 0x89, 0xe9, 0xa9, 0x03, 0x8c, 0x0c, 0x5b, 0x78, 0xc3, 0xa3, 0xd4, 0xca, 0x01, 0x0e, 0xf5, 0xd2, 0xfa, 0xb5, 0x9b, 0xd4, 0x2e, 0x2e, 0x92, 0xa2, 0xfc, 0xa7, 0xa9, 0x75, 0xb9, 0x59, 0xdf, 0xb3, 0x72, 0x51, 0x93, 0x30, 0xde, 0xfc, 0x8f, 0xa8, 0x95, 0x4b, 0xfc, 0xfb, 0x39, 0x7b, 0xa9, 0x39, 0xed, 0xb6, 0xa9, 0x44, 0xa2, 0xce, 0x9f, 0x6f, 0xaf, 0xbf, 0xcd, 0xa6, 0x09, 0x2c, 0xdd, 0xf6, 0x28, 0x80, 0x1f, 0x6d, 0xd8, 0xcd, 0x40, 0xca, 0xd4, 0xd8, 0x09, 0xd5, 0xc1, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10529 = { .name = "ecdsa_secp521r1_sha512_10529", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10529_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10529_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10529_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 126 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10530 for ECDSA, tcId is 127 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10530_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10530_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10530_sig[] = { 0x01, 0xc5, 0x4a, 0x33, 0x0b, 0x9d, 0xc4, 0x7e, 0xb8, 0x8d, 0xbf, 0x60, 0xc9, 0xee, 0x49, 0xf2, 0xc7, 0x51, 0x8c, 0x0a, 0x78, 0xba, 0xf6, 0x42, 0xc7, 0x41, 0x05, 0xfe, 0x28, 0x3f, 0xa4, 0xc3, 0x57, 0xff, 0x22, 0x93, 0x1e, 0xf4, 0x2f, 0x92, 0xd1, 0x6d, 0x6a, 0x0b, 0x80, 0x6e, 0xf7, 0x18, 0x53, 0x9d, 0x21, 0xca, 0xd7, 0x19, 0x55, 0xa5, 0x30, 0xe2, 0x1c, 0xab, 0x49, 0xa5, 0x6f, 0x56, 0x16, 0x73, 0x01, 0xc2, 0xcc, 0x32, 0xc5, 0xa4, 0xd3, 0x35, 0xc4, 0x8d, 0x0c, 0xbb, 0x04, 0x07, 0xfb, 0x7e, 0x47, 0x29, 0xc5, 0x72, 0x51, 0xaf, 0xbf, 0x95, 0x34, 0xc5, 0x30, 0x9b, 0x94, 0xe6, 0xaa, 0xe1, 0x36, 0x14, 0xa1, 0xf2, 0x51, 0x42, 0x52, 0xf4, 0x8c, 0xc7, 0xf1, 0x43, 0xee, 0x76, 0x17, 0x82, 0xf8, 0xdc, 0xeb, 0xf2, 0xfb, 0x49, 0x0e, 0x08, 0xfd, 0xea, 0xf5, 0x70, 0xa7, 0xed, 0x9d, 0x28, 0x7d, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10530 = { .name = "ecdsa_secp521r1_sha512_10530", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10530_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10530_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10530_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 127 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10531 for ECDSA, tcId is 128 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10531_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10531_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10531_sig[] = { 0x01, 0x46, 0x7b, 0x45, 0x11, 0xb9, 0xd6, 0x60, 0x1d, 0xa3, 0x55, 0x7b, 0x8e, 0xd4, 0x32, 0xc1, 0x4a, 0x80, 0xe5, 0x99, 0x98, 0x47, 0xbe, 0x13, 0x6c, 0x75, 0x6a, 0x88, 0xdd, 0x51, 0x34, 0x68, 0x9b, 0x5a, 0xb7, 0x0d, 0x0a, 0x2e, 0x8f, 0xd8, 0xd6, 0x14, 0x1e, 0x2b, 0x14, 0x32, 0x82, 0xf9, 0x8a, 0xfb, 0x93, 0xb7, 0xe1, 0x76, 0x09, 0x52, 0x2d, 0xd9, 0xe6, 0x4c, 0x9e, 0x4a, 0x31, 0xc7, 0xc3, 0x4f, 0x00, 0xf5, 0x0e, 0xe6, 0x6a, 0x1d, 0xfb, 0xf8, 0x61, 0x67, 0xba, 0x59, 0x68, 0xd4, 0xee, 0x35, 0x06, 0xa7, 0xcf, 0xfe, 0x0f, 0x52, 0x1c, 0x1b, 0xf8, 0x30, 0xd0, 0x86, 0x72, 0x41, 0xe3, 0x45, 0xd3, 0x19, 0xe7, 0x7e, 0xec, 0xa4, 0x58, 0x58, 0xbb, 0x30, 0x62, 0xac, 0xbf, 0x8d, 0x10, 0x0b, 0xc6, 0xbf, 0xd3, 0x12, 0x7d, 0x57, 0xa7, 0xe9, 0x1a, 0x81, 0x99, 0xe0, 0x50, 0x52, 0xb8, 0xcc, 0xf3, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10531 = { .name = "ecdsa_secp521r1_sha512_10531", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10531_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10531_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10531_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 128 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10532 for ECDSA, tcId is 129 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10532_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10532_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10532_sig[] = { 0x00, 0x7a, 0xf9, 0x0f, 0x62, 0x27, 0x75, 0x0f, 0x91, 0x7d, 0x65, 0xb1, 0xc6, 0x02, 0x00, 0xc7, 0x55, 0x15, 0x8b, 0xb7, 0x83, 0xa4, 0x79, 0xbe, 0x68, 0x77, 0xc5, 0x9e, 0xd8, 0x9f, 0xf5, 0x95, 0xfe, 0xa3, 0xf3, 0xa4, 0x13, 0x75, 0x91, 0xaa, 0xb2, 0x38, 0x26, 0xed, 0x38, 0x5b, 0xd6, 0x15, 0x62, 0x77, 0x36, 0x4b, 0x5d, 0x60, 0x3c, 0xa2, 0x72, 0x25, 0x90, 0x83, 0xe6, 0xe9, 0xab, 0x5d, 0xb3, 0xf9, 0x00, 0x70, 0x84, 0x2e, 0xb6, 0x2c, 0x89, 0x49, 0x35, 0xb8, 0x2d, 0xa1, 0x5c, 0xa6, 0x11, 0xd9, 0xd7, 0x54, 0xef, 0x57, 0x85, 0x9e, 0x0c, 0x91, 0x2c, 0x03, 0x58, 0xd0, 0x82, 0x0f, 0x49, 0x40, 0xcd, 0xf5, 0x36, 0x0f, 0x11, 0x6a, 0x75, 0x47, 0xa8, 0x1b, 0xf6, 0x56, 0x17, 0xf1, 0x82, 0xe5, 0x97, 0xeb, 0x10, 0x07, 0xe2, 0x6c, 0x62, 0x83, 0x84, 0x87, 0xca, 0x02, 0x1c, 0x38, 0x29, 0xa5, 0x90, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10532 = { .name = "ecdsa_secp521r1_sha512_10532", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10532_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10532_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10532_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 129 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10533 for ECDSA, tcId is 130 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10533_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10533_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10533_sig[] = { 0x00, 0xb0, 0x16, 0x9e, 0x68, 0x06, 0x2c, 0xaa, 0x79, 0xf9, 0x9e, 0xc0, 0xc7, 0x2d, 0x83, 0xc4, 0xd0, 0xfc, 0x2a, 0x1c, 0x81, 0x86, 0x65, 0xcf, 0xed, 0x1a, 0xba, 0x3e, 0x68, 0x43, 0x92, 0xb9, 0xa9, 0x5a, 0xfb, 0x82, 0xdd, 0xd1, 0xde, 0x49, 0xe3, 0xfc, 0x3c, 0xb3, 0x88, 0x9b, 0x4f, 0x5a, 0x86, 0xa7, 0xbd, 0xf9, 0x44, 0x36, 0x1d, 0xb2, 0xcf, 0xa5, 0x70, 0x21, 0xa7, 0x64, 0x3f, 0xcf, 0xce, 0x95, 0x01, 0x15, 0xec, 0x78, 0x4e, 0x04, 0x24, 0x36, 0x89, 0x2c, 0x6c, 0xc1, 0xbe, 0xde, 0x0f, 0x4b, 0x7b, 0x6e, 0xb2, 0x4b, 0x30, 0x0b, 0x1f, 0x0c, 0x67, 0x49, 0x99, 0xa6, 0xda, 0x81, 0x6d, 0xbe, 0xfb, 0x2d, 0x53, 0xf9, 0x0b, 0x0d, 0xed, 0xb9, 0x62, 0xa0, 0x85, 0xe5, 0x20, 0x9f, 0xce, 0xa5, 0x03, 0x11, 0x13, 0x08, 0x00, 0xd2, 0xa9, 0x24, 0x9d, 0x27, 0x9c, 0x7b, 0xde, 0x2f, 0x88, 0x62, 0x25, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10533 = { .name = "ecdsa_secp521r1_sha512_10533", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10533_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10533_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10533_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 130 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10534 for ECDSA, tcId is 131 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10534_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10534_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10534_sig[] = { 0x01, 0xde, 0x4e, 0xd1, 0xee, 0x81, 0xd5, 0xcf, 0xfc, 0xf8, 0x25, 0x6a, 0x06, 0x85, 0x8c, 0xba, 0x5e, 0xb9, 0x25, 0xee, 0x68, 0xe3, 0xed, 0x84, 0x8a, 0xc9, 0x80, 0x71, 0xb6, 0xe3, 0x0c, 0x3b, 0x44, 0xb1, 0x02, 0xa2, 0xde, 0x81, 0x17, 0xcc, 0xe5, 0xb4, 0xf9, 0xe4, 0x26, 0x03, 0x22, 0x5e, 0x0d, 0xbc, 0xb3, 0xfc, 0xc1, 0x71, 0xd1, 0x49, 0x2e, 0x7e, 0xd8, 0xbc, 0xb6, 0xec, 0x28, 0x6c, 0x7d, 0xe0, 0x00, 0xfd, 0x1e, 0x93, 0xbb, 0xc8, 0xb8, 0xad, 0xeb, 0x78, 0x64, 0xa2, 0xbf, 0x8e, 0x29, 0xd6, 0xf9, 0xc0, 0x96, 0x6f, 0xe3, 0xd5, 0x43, 0x52, 0x5b, 0xf2, 0x68, 0xb5, 0x7c, 0xd6, 0xfa, 0x88, 0x52, 0xbf, 0xe0, 0xd2, 0x75, 0x07, 0x26, 0xd5, 0x44, 0x55, 0x60, 0xf2, 0xfc, 0x21, 0x1a, 0xa7, 0x85, 0x9d, 0xd3, 0xee, 0x10, 0x07, 0x8e, 0xf9, 0x07, 0xe4, 0x9c, 0xd6, 0x43, 0x26, 0xb3, 0x97, 0xe0, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10534 = { .name = "ecdsa_secp521r1_sha512_10534", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10534_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10534_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10534_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 131 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10535 for ECDSA, tcId is 132 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10535_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10535_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10535_sig[] = { 0x01, 0xfc, 0xaf, 0xa6, 0x2e, 0xe6, 0x27, 0x54, 0x43, 0xd7, 0x27, 0x7f, 0xc4, 0x6e, 0x4c, 0x30, 0xb4, 0xdb, 0x84, 0x5b, 0xa4, 0x5b, 0x5d, 0x6b, 0x54, 0xfa, 0xf4, 0x7b, 0xbf, 0x92, 0x1f, 0x82, 0x5f, 0x6f, 0xd0, 0xf2, 0x3a, 0x38, 0xc0, 0xc7, 0xf4, 0xde, 0xbc, 0x33, 0xad, 0xd2, 0x82, 0xaf, 0xad, 0x11, 0x54, 0xc8, 0x70, 0x7b, 0x6e, 0x18, 0xcd, 0x65, 0xad, 0xcb, 0x07, 0xd3, 0x29, 0x15, 0xb4, 0x62, 0x00, 0x87, 0xa2, 0x7b, 0x2b, 0xf3, 0xc3, 0x5d, 0x18, 0xfd, 0x39, 0x7e, 0x0c, 0xd7, 0x15, 0x95, 0x16, 0xcf, 0x56, 0x3b, 0x98, 0x44, 0x1e, 0x03, 0x0b, 0xfd, 0xe9, 0x3c, 0xea, 0xcd, 0x2c, 0x4e, 0x41, 0x22, 0x8b, 0x7b, 0x33, 0x44, 0x3e, 0xf0, 0xa3, 0x51, 0xce, 0x55, 0x3d, 0x6d, 0x1d, 0x71, 0xc1, 0x20, 0x92, 0xdf, 0x79, 0x62, 0x76, 0x17, 0x5c, 0xd7, 0x79, 0xb8, 0x09, 0x0c, 0x49, 0x58, 0xb3, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10535 = { .name = "ecdsa_secp521r1_sha512_10535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10535_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10535_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10535_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 132 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10536 for ECDSA, tcId is 133 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10536_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10536_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10536_sig[] = { 0x00, 0x78, 0x98, 0x96, 0x28, 0xac, 0xfb, 0xa8, 0x6d, 0x4b, 0xf2, 0x8b, 0xee, 0xb9, 0xf4, 0x40, 0x01, 0xfb, 0x8f, 0x2d, 0x8e, 0x24, 0x53, 0x20, 0xa1, 0x9e, 0xfd, 0xed, 0xe3, 0x1e, 0xae, 0x3e, 0xc8, 0xb4, 0x96, 0xfa, 0xec, 0x30, 0xc8, 0x5e, 0x8f, 0x63, 0xf8, 0xae, 0x06, 0x04, 0x6f, 0xe1, 0xd1, 0x57, 0x53, 0x21, 0xfa, 0x04, 0x95, 0x3e, 0x46, 0x0f, 0x6b, 0x13, 0x86, 0xdd, 0x5d, 0xf9, 0x4e, 0xdb, 0x01, 0x2a, 0xba, 0x33, 0x49, 0x73, 0x2e, 0x21, 0xa5, 0xbb, 0x27, 0xd7, 0xd6, 0xfa, 0xcd, 0x8c, 0x76, 0x88, 0xb9, 0xd0, 0xd0, 0x27, 0x1d, 0x6a, 0x07, 0x7f, 0x9d, 0x6d, 0x82, 0xdb, 0x45, 0xb5, 0x45, 0x6b, 0x76, 0x7f, 0x4b, 0x9f, 0x1a, 0x80, 0xf4, 0x87, 0x03, 0x1f, 0x9c, 0x0b, 0x3e, 0xa8, 0x33, 0xc6, 0x3f, 0xdf, 0x9c, 0x6a, 0x25, 0xe6, 0xb4, 0x24, 0xc1, 0x9c, 0x2e, 0x55, 0x30, 0x5d, 0x7a, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10536 = { .name = "ecdsa_secp521r1_sha512_10536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10536_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10536_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10536_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 133 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10537 for ECDSA, tcId is 134 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10537_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10537_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10537_sig[] = { 0x00, 0x14, 0xa5, 0xa4, 0x6a, 0x3b, 0xa4, 0x15, 0xf6, 0xe8, 0xc5, 0x66, 0xca, 0x1b, 0x15, 0xfa, 0x20, 0x55, 0x64, 0x96, 0x87, 0xb1, 0xa9, 0xfc, 0x84, 0xcc, 0x0f, 0xa8, 0x63, 0x12, 0x96, 0x89, 0x8f, 0xe0, 0x14, 0xe0, 0xd4, 0x59, 0x27, 0xe4, 0x27, 0x13, 0x96, 0xba, 0xa4, 0xcf, 0xb3, 0x67, 0x56, 0x69, 0xb1, 0x6e, 0x76, 0xc3, 0x39, 0xdb, 0x3c, 0x0e, 0xda, 0xf6, 0x13, 0x37, 0xe8, 0xbe, 0xbe, 0x91, 0x01, 0xfb, 0x31, 0x31, 0x29, 0x75, 0x7f, 0x76, 0x75, 0x4b, 0x60, 0xfd, 0xb1, 0xe4, 0x07, 0x7f, 0x9f, 0xe3, 0xdd, 0x62, 0xc8, 0xbc, 0xe5, 0x21, 0x90, 0xcf, 0xeb, 0x9c, 0x03, 0x02, 0x1c, 0xc9, 0x2f, 0x6d, 0x7d, 0x13, 0x02, 0xb8, 0xa8, 0x47, 0x33, 0x48, 0x6b, 0xf7, 0x69, 0xae, 0x94, 0xd3, 0xdb, 0x4b, 0x60, 0xb6, 0xdf, 0x28, 0xfe, 0xd4, 0x81, 0xd3, 0xd7, 0xc5, 0x10, 0x29, 0x9f, 0x0c, 0x31, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10537 = { .name = "ecdsa_secp521r1_sha512_10537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10537_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10537_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10537_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 134 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10538 for ECDSA, tcId is 135 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10538_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10538_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10538_sig[] = { 0x00, 0x8a, 0x32, 0x50, 0xeb, 0x5f, 0x28, 0xb5, 0x98, 0xc4, 0xa4, 0x28, 0x90, 0xd2, 0x5f, 0x6a, 0xf8, 0x40, 0x82, 0xd4, 0x37, 0x6f, 0x84, 0xf1, 0x71, 0x7e, 0x51, 0x12, 0xa7, 0x66, 0x23, 0xe6, 0xfe, 0x0d, 0x20, 0x7c, 0x39, 0x46, 0x3d, 0x20, 0xbb, 0x86, 0x34, 0x1b, 0xc2, 0x6c, 0x9f, 0x68, 0xbc, 0xdf, 0x79, 0x46, 0x71, 0xa0, 0x1f, 0x90, 0x46, 0x50, 0x25, 0xf8, 0x7a, 0x8c, 0x52, 0x13, 0x7e, 0xdf, 0x00, 0x1d, 0xdd, 0x31, 0x7f, 0x66, 0x22, 0xd9, 0xb0, 0x32, 0x22, 0x3f, 0x76, 0x76, 0x5b, 0xa6, 0xc9, 0x11, 0x6a, 0xe4, 0xb4, 0x3a, 0x1b, 0xd3, 0x57, 0xbc, 0x9d, 0xb6, 0xfa, 0x62, 0xf0, 0x86, 0x7d, 0xc5, 0xd8, 0xf7, 0x81, 0xf0, 0x8c, 0x1c, 0xbd, 0x49, 0xb4, 0x42, 0x4f, 0xe8, 0xc2, 0x2c, 0xfd, 0x1d, 0xcd, 0x07, 0xcf, 0xde, 0x7b, 0x35, 0x98, 0x34, 0x24, 0x42, 0x58, 0x98, 0x25, 0xaa, 0x67, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10538 = { .name = "ecdsa_secp521r1_sha512_10538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10538_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10538_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10538_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 135 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10539 for ECDSA, tcId is 136 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10539_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10539_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10539_sig[] = { 0x00, 0x60, 0xee, 0x16, 0x17, 0x41, 0xd5, 0xcb, 0x2d, 0xd0, 0xff, 0x2c, 0xf9, 0x92, 0x4a, 0xca, 0x03, 0x76, 0xb1, 0x54, 0x46, 0x81, 0x62, 0x7a, 0x31, 0x68, 0x8e, 0x4d, 0x8b, 0x3b, 0x63, 0xa0, 0x1a, 0xdb, 0xb4, 0x17, 0xee, 0x11, 0x3b, 0x9b, 0xa8, 0xd4, 0xd1, 0x3b, 0x7b, 0x4e, 0x1b, 0x14, 0xb5, 0x1a, 0x24, 0xdb, 0xc3, 0xf0, 0x99, 0xb0, 0x68, 0xd9, 0x16, 0xaa, 0x94, 0x86, 0x2e, 0xe0, 0x81, 0xb4, 0x01, 0x5c, 0xaf, 0xf8, 0xd3, 0x01, 0x41, 0xe1, 0xc1, 0x63, 0xe3, 0xec, 0x62, 0xb7, 0xe1, 0x48, 0x74, 0xda, 0x62, 0x4a, 0x6d, 0x8e, 0x02, 0x52, 0xd8, 0xe8, 0x29, 0x86, 0x0e, 0x5a, 0x49, 0xd3, 0x73, 0x23, 0x21, 0xb6, 0x25, 0x26, 0x2e, 0x5c, 0x9b, 0x1e, 0xf3, 0x48, 0xc3, 0xe7, 0xcb, 0xb1, 0xde, 0x82, 0x27, 0x51, 0x3f, 0x32, 0x06, 0x37, 0x86, 0x67, 0x85, 0xe9, 0x7e, 0x19, 0x31, 0xd3, 0x5c, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10539 = { .name = "ecdsa_secp521r1_sha512_10539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10539_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10539_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10539_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 136 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10540 for ECDSA, tcId is 137 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10540_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10540_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10540_sig[] = { 0x00, 0xa1, 0xef, 0x82, 0x29, 0xdb, 0x9f, 0x45, 0xda, 0x38, 0xae, 0x3b, 0x6d, 0x60, 0x11, 0x10, 0x61, 0x1e, 0x20, 0x98, 0x78, 0xbb, 0xd0, 0x3a, 0xc2, 0xa6, 0xde, 0x65, 0xe8, 0x40, 0x29, 0x57, 0xc6, 0x69, 0xa1, 0x15, 0xe3, 0xf0, 0x2d, 0x08, 0x5f, 0xe2, 0xd0, 0x31, 0xc6, 0x13, 0x24, 0xb7, 0x70, 0x52, 0xab, 0x34, 0x6b, 0x4b, 0x1a, 0x43, 0x7b, 0x58, 0x06, 0x2f, 0xb3, 0x6f, 0x9d, 0x56, 0xcf, 0x45, 0x00, 0xcc, 0x5c, 0x0a, 0x3b, 0x68, 0x97, 0x02, 0x79, 0xae, 0x16, 0x88, 0x0f, 0x6c, 0xa5, 0x79, 0xd0, 0x17, 0x1a, 0x82, 0x7e, 0x99, 0xa4, 0x6a, 0xa8, 0x2b, 0x92, 0x42, 0xdc, 0xc0, 0x9c, 0xb0, 0xb2, 0x2a, 0x44, 0xeb, 0xcf, 0xca, 0x84, 0x29, 0x3e, 0x6d, 0x21, 0xae, 0xea, 0x49, 0x2f, 0x00, 0xba, 0x31, 0x57, 0xc5, 0xb6, 0xe2, 0xe4, 0xca, 0xea, 0x6a, 0x1c, 0x09, 0xc8, 0x24, 0x72, 0x05, 0x52, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10540 = { .name = "ecdsa_secp521r1_sha512_10540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10540_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10540_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10540_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 137 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10541 for ECDSA, tcId is 138 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10541_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10541_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10541_sig[] = { 0x00, 0x5a, 0xa0, 0xc8, 0xa3, 0x78, 0xc4, 0xe0, 0x2b, 0xcc, 0x2f, 0x56, 0xc2, 0xc3, 0x65, 0xcc, 0xee, 0x42, 0x4e, 0x29, 0x73, 0xc2, 0x8f, 0x0d, 0xaa, 0xe8, 0xf4, 0xc3, 0xf0, 0xd9, 0x0b, 0x42, 0x1f, 0xef, 0xd4, 0x56, 0xe7, 0x49, 0x08, 0x7e, 0x0c, 0x66, 0x7c, 0x2a, 0x71, 0x47, 0xbc, 0x67, 0xb9, 0x0c, 0x69, 0x62, 0x44, 0xf2, 0x16, 0xb4, 0xd9, 0xd7, 0x41, 0x8e, 0xad, 0xc7, 0xd0, 0x6e, 0xf1, 0xd2, 0x01, 0xe2, 0x89, 0x14, 0xbd, 0x34, 0x1f, 0x52, 0x6b, 0x04, 0x11, 0x28, 0xf2, 0xd2, 0x51, 0x13, 0x1d, 0x8b, 0x2c, 0x65, 0x84, 0x7e, 0x54, 0x1d, 0x65, 0xad, 0xca, 0x34, 0x42, 0x96, 0x2c, 0xdd, 0xb2, 0xa7, 0x1c, 0x64, 0xfa, 0xe3, 0x9f, 0xdd, 0x56, 0xe4, 0x16, 0x86, 0xad, 0x63, 0x2f, 0x99, 0xc6, 0x03, 0x8d, 0x8d, 0xe0, 0xb3, 0xaa, 0xc4, 0x04, 0x5e, 0x0a, 0x96, 0x1e, 0xfd, 0xbf, 0x4c, 0x6a, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10541 = { .name = "ecdsa_secp521r1_sha512_10541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10541_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10541_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10541_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 138 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10542 for ECDSA, tcId is 139 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10542_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10542_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10542_sig[] = { 0x00, 0x5a, 0x05, 0xf5, 0x36, 0x6c, 0x8b, 0x8b, 0xe2, 0x86, 0x54, 0xbc, 0x39, 0xa6, 0x67, 0x1d, 0x1b, 0x15, 0x93, 0x49, 0x5e, 0x44, 0x5c, 0x07, 0xc9, 0x95, 0xc3, 0xbe, 0x3e, 0x16, 0x8f, 0xfd, 0xec, 0x92, 0xe4, 0x42, 0x88, 0x80, 0x2f, 0xd4, 0x55, 0x00, 0x7f, 0x87, 0x46, 0x57, 0x0d, 0x93, 0xb5, 0x68, 0x3e, 0x4d, 0x40, 0xe9, 0xd9, 0xe5, 0x9d, 0xe5, 0x39, 0xf0, 0xe6, 0x2b, 0xc4, 0x0d, 0x92, 0xbc, 0x01, 0x87, 0xa4, 0x7d, 0x8f, 0x70, 0xad, 0xcc, 0x5e, 0x10, 0x26, 0x7b, 0x8f, 0xec, 0x89, 0xd7, 0x01, 0x1d, 0x99, 0x85, 0x42, 0x76, 0x45, 0xae, 0xd1, 0x9a, 0x8e, 0xfa, 0x2d, 0x11, 0x89, 0xb4, 0x69, 0xcb, 0x7a, 0xab, 0x19, 0x98, 0xe0, 0xc1, 0xd2, 0xfc, 0xac, 0x5a, 0x50, 0x54, 0xd7, 0x9d, 0x2e, 0xc1, 0xc9, 0xa0, 0x0b, 0x18, 0x3d, 0xc9, 0xaf, 0x20, 0xf5, 0x55, 0xa1, 0x14, 0x0b, 0xe2, 0xdc, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10542 = { .name = "ecdsa_secp521r1_sha512_10542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10542_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10542_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10542_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 139 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10543 for ECDSA, tcId is 140 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10543_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10543_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10543_sig[] = { 0x01, 0xe2, 0x13, 0xbc, 0xb8, 0xb9, 0x60, 0xb1, 0x29, 0x6a, 0xe1, 0x76, 0x99, 0x3b, 0x24, 0x49, 0xba, 0xe5, 0x56, 0xb6, 0xd9, 0x0d, 0xf2, 0xf0, 0x7f, 0xb0, 0x8a, 0xd8, 0xfd, 0x60, 0xe3, 0xb7, 0xfe, 0x6c, 0x73, 0xf9, 0xc8, 0xa7, 0x36, 0x44, 0x17, 0x61, 0x1d, 0x60, 0x11, 0x9c, 0x55, 0x02, 0x61, 0xc5, 0x4b, 0xbc, 0xa8, 0xd6, 0x1e, 0x26, 0x41, 0x30, 0xab, 0x90, 0x18, 0x7e, 0x27, 0xd2, 0x2d, 0xbd, 0x00, 0x34, 0xf5, 0x19, 0x38, 0x2c, 0xfa, 0xcf, 0xd0, 0x7b, 0x0a, 0x6f, 0x3a, 0xca, 0x11, 0x7c, 0x13, 0xd2, 0xbe, 0x72, 0x5d, 0x2f, 0x9e, 0xe4, 0xe5, 0xf8, 0x87, 0x39, 0xc9, 0x91, 0x21, 0xe6, 0x3e, 0xd7, 0x35, 0x80, 0x46, 0xbf, 0xb1, 0x57, 0x5f, 0xc7, 0x3e, 0x1e, 0xde, 0x83, 0x39, 0xe4, 0x6c, 0x51, 0x39, 0x84, 0x3e, 0x52, 0xe9, 0x18, 0x4b, 0xb8, 0xc5, 0x79, 0x06, 0x1a, 0x15, 0x4a, 0x0b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10543 = { .name = "ecdsa_secp521r1_sha512_10543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10543_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10543_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10543_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 140 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10544 for ECDSA, tcId is 141 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10544_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10544_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10544_sig[] = { 0x00, 0xed, 0x11, 0xac, 0x7e, 0xfb, 0x1f, 0x29, 0xee, 0x64, 0x10, 0x8a, 0x5e, 0x26, 0x06, 0xfa, 0x9a, 0xf3, 0xbb, 0xc1, 0x2d, 0x1a, 0x95, 0x2e, 0x47, 0x24, 0x0d, 0x52, 0x36, 0xdf, 0x64, 0xf5, 0xb2, 0xb7, 0x7a, 0x0f, 0x7a, 0x0a, 0x73, 0xd3, 0x0d, 0x07, 0x08, 0xb5, 0xb2, 0x3a, 0xc6, 0xd5, 0x84, 0xbf, 0x69, 0x97, 0xd8, 0x85, 0x16, 0x23, 0x79, 0x36, 0x55, 0xde, 0xe8, 0x77, 0x45, 0x49, 0xb8, 0x29, 0x01, 0xe1, 0x60, 0x2a, 0x2c, 0xae, 0x7d, 0x32, 0x12, 0xdf, 0x47, 0xee, 0xbd, 0x12, 0xe2, 0xfe, 0x40, 0x48, 0x51, 0x20, 0x11, 0x01, 0xbb, 0xde, 0x70, 0x2b, 0xe9, 0xd7, 0x4d, 0x04, 0x0e, 0xd9, 0x98, 0xe7, 0x9a, 0x09, 0xeb, 0xf6, 0xd0, 0x55, 0xf9, 0x44, 0x73, 0xb1, 0xf8, 0xd8, 0x7c, 0x99, 0xaa, 0x16, 0x5b, 0xda, 0xf0, 0xa5, 0xf2, 0x70, 0xd4, 0x6c, 0xaa, 0xbb, 0x8e, 0x88, 0xbf, 0xa5, 0x41, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10544 = { .name = "ecdsa_secp521r1_sha512_10544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10544_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10544_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10544_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 141 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10545 for ECDSA, tcId is 142 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10545_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10545_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10545_sig[] = { 0x00, 0x07, 0x12, 0x3c, 0x45, 0xe6, 0xe9, 0x33, 0x8b, 0xc9, 0xfe, 0x22, 0x5c, 0xdd, 0x96, 0xc5, 0xab, 0x36, 0xca, 0xd5, 0xc0, 0x61, 0x63, 0xf4, 0x4f, 0x6b, 0xd9, 0x03, 0xc7, 0x59, 0x4e, 0x80, 0x68, 0xba, 0x9b, 0xc8, 0x9f, 0x65, 0x2e, 0xc3, 0x1b, 0x6e, 0x12, 0x98, 0x76, 0x6b, 0x24, 0x6c, 0x1f, 0x10, 0x87, 0x7f, 0x1e, 0x3e, 0xc9, 0x82, 0x9b, 0x09, 0x37, 0xb8, 0xd3, 0x6e, 0x3c, 0x1a, 0xb2, 0xb5, 0x01, 0x68, 0x8b, 0xba, 0xeb, 0x18, 0x8b, 0x50, 0x47, 0xbe, 0x6e, 0x80, 0x23, 0xb1, 0x4f, 0xb1, 0x21, 0xeb, 0x14, 0x51, 0xdc, 0xb1, 0x9f, 0x81, 0x4f, 0x5f, 0x4d, 0xca, 0x55, 0xff, 0x95, 0x12, 0x80, 0x11, 0xe3, 0xba, 0xe5, 0x05, 0xa4, 0xd2, 0x21, 0x66, 0xd0, 0x0c, 0xb7, 0xcf, 0x14, 0x13, 0x05, 0x90, 0x33, 0x5e, 0xe9, 0x23, 0xdc, 0x5d, 0xb3, 0xe7, 0x36, 0x83, 0x2a, 0x12, 0x8a, 0x06, 0x7a, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10545 = { .name = "ecdsa_secp521r1_sha512_10545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10545_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10545_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10545_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 142 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10546 for ECDSA, tcId is 143 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10546_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10546_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10546_sig[] = { 0x01, 0x26, 0x4e, 0x3c, 0xc4, 0xfb, 0x80, 0x2a, 0xa2, 0x21, 0xd0, 0x78, 0x7c, 0xd0, 0xcd, 0xf4, 0x4e, 0xb6, 0x56, 0x89, 0x82, 0xa0, 0x0a, 0x66, 0x39, 0xf1, 0x52, 0x38, 0xaf, 0x36, 0xe8, 0x94, 0xb1, 0x4f, 0x45, 0xf0, 0x6f, 0x8c, 0x21, 0x80, 0xfd, 0xea, 0xaa, 0xc7, 0x7f, 0x67, 0x4e, 0x05, 0x6d, 0x19, 0x28, 0xcb, 0xbd, 0xfc, 0x4b, 0x2c, 0xec, 0xa0, 0xb3, 0x53, 0x45, 0xca, 0x07, 0xbf, 0xff, 0x7f, 0x00, 0x5c, 0x2d, 0xed, 0xee, 0x6b, 0x3a, 0xa0, 0x96, 0xfc, 0x47, 0xba, 0x09, 0x91, 0xa0, 0x77, 0xef, 0x4d, 0x5d, 0xf2, 0x0d, 0x8e, 0xff, 0x1b, 0xf8, 0x35, 0x44, 0x12, 0xb1, 0x71, 0xf0, 0x8a, 0x98, 0xce, 0xa1, 0x70, 0x4c, 0x81, 0x89, 0xa7, 0x95, 0x1b, 0x0e, 0x7a, 0x82, 0x70, 0xcc, 0xb2, 0x85, 0xb8, 0xdb, 0x8e, 0x35, 0x28, 0x5e, 0xd9, 0x26, 0xb1, 0x9c, 0x1e, 0xef, 0x07, 0xfd, 0xc0, 0x5e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10546 = { .name = "ecdsa_secp521r1_sha512_10546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10546_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10546_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10546_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 143 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10547 for ECDSA, tcId is 144 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10547_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10547_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10547_sig[] = { 0x00, 0xca, 0x38, 0x14, 0x74, 0x78, 0x88, 0x75, 0x17, 0x94, 0xb0, 0x48, 0x89, 0x55, 0xe2, 0xae, 0xe0, 0x7e, 0x5f, 0xab, 0x4b, 0x98, 0x72, 0x07, 0x4a, 0xa7, 0x43, 0x26, 0x98, 0xe7, 0xc8, 0x3b, 0x80, 0x79, 0x77, 0x37, 0x34, 0xdf, 0x1b, 0xc7, 0x52, 0x54, 0x8a, 0x21, 0x8f, 0xa5, 0x9a, 0x36, 0x2e, 0x06, 0x57, 0xb7, 0x7a, 0xe7, 0x79, 0x8e, 0xf4, 0xa7, 0xa3, 0x87, 0x32, 0x56, 0xea, 0x59, 0xec, 0x67, 0x01, 0x5d, 0xf8, 0xf1, 0xf1, 0x66, 0x11, 0xc9, 0x60, 0xd5, 0x66, 0x47, 0x42, 0x4b, 0x97, 0x93, 0x6c, 0x8a, 0x06, 0xf6, 0x2d, 0xc3, 0xa9, 0x5d, 0x66, 0xbf, 0x4a, 0xa3, 0x78, 0xd7, 0xa9, 0xe1, 0x7d, 0x2a, 0xfb, 0x53, 0x56, 0x57, 0x80, 0x02, 0x59, 0x27, 0xe6, 0x92, 0x8f, 0x53, 0x13, 0x42, 0x8f, 0x1d, 0x67, 0x08, 0x33, 0x97, 0x87, 0xc8, 0xf4, 0x60, 0xba, 0x18, 0x45, 0x7d, 0x4c, 0x0f, 0x52, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10547 = { .name = "ecdsa_secp521r1_sha512_10547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10547_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10547_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10547_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 144 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10548 for ECDSA, tcId is 145 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10548_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10548_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10548_sig[] = { 0x01, 0x7b, 0xa8, 0x71, 0xae, 0xe3, 0x4a, 0x89, 0x3c, 0x4d, 0xed, 0x7a, 0x2a, 0x54, 0x6d, 0xa0, 0xd6, 0x86, 0x7d, 0x42, 0x84, 0x97, 0xb8, 0x0f, 0xca, 0x7e, 0xea, 0x6e, 0x51, 0xb7, 0x3d, 0x64, 0x11, 0xaf, 0xf7, 0x60, 0x97, 0x43, 0xe6, 0x24, 0x2b, 0x6d, 0x4d, 0x37, 0x36, 0xdd, 0xcc, 0x9e, 0xe1, 0xaa, 0x12, 0xc8, 0xb6, 0x2d, 0xe5, 0x38, 0x2e, 0x5c, 0x33, 0xd1, 0xfc, 0x48, 0x53, 0xe3, 0xe4, 0x7d, 0x00, 0x5f, 0xeb, 0x9d, 0x9f, 0x8f, 0xdd, 0x44, 0x62, 0x2e, 0x4f, 0x9e, 0xff, 0xe7, 0x3f, 0xd9, 0xb4, 0x67, 0xd3, 0x55, 0xfd, 0x6b, 0x8d, 0xe2, 0x05, 0x52, 0x7f, 0x72, 0x2e, 0xe2, 0xf5, 0xa1, 0x5e, 0xeb, 0xd5, 0x9c, 0xcd, 0xd7, 0xb5, 0x7d, 0xa2, 0x6c, 0xf9, 0x53, 0xf7, 0x88, 0x86, 0xdb, 0x5a, 0x6e, 0x5b, 0xdd, 0x0d, 0x56, 0xc9, 0xbd, 0x47, 0xba, 0x22, 0x71, 0xf7, 0x76, 0x87, 0xa6, 0x4b, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10548 = { .name = "ecdsa_secp521r1_sha512_10548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10548_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10548_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10548_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 145 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10549 for ECDSA, tcId is 146 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10549_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10549_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10549_sig[] = { 0x01, 0x84, 0x07, 0x93, 0x68, 0x47, 0x65, 0x41, 0x0b, 0xaf, 0x26, 0xb6, 0x6c, 0xbc, 0xf7, 0xc3, 0x66, 0x58, 0xd6, 0xc1, 0x8a, 0x2f, 0x75, 0x0c, 0x12, 0x25, 0x52, 0x0e, 0x9f, 0x3a, 0x7c, 0x1b, 0x89, 0x05, 0x83, 0xf3, 0x21, 0xd4, 0xe4, 0x87, 0x52, 0xc3, 0xb3, 0x11, 0x6d, 0xfe, 0xf7, 0x33, 0xee, 0x38, 0x6c, 0x52, 0xa5, 0x34, 0x02, 0xac, 0xea, 0x77, 0xcf, 0xad, 0x1d, 0xb9, 0x38, 0x01, 0x10, 0xe6, 0x01, 0xb5, 0x19, 0x85, 0xa3, 0x06, 0xfc, 0xdb, 0xe3, 0x69, 0x21, 0x81, 0x10, 0x6d, 0x7d, 0x63, 0x08, 0x87, 0x39, 0x12, 0xd0, 0x03, 0x94, 0x69, 0x92, 0x09, 0x8b, 0xc9, 0x8b, 0x42, 0x61, 0xfd, 0x78, 0x86, 0x9e, 0xd8, 0x21, 0x88, 0x49, 0x45, 0x97, 0x80, 0xb6, 0x07, 0x9f, 0x68, 0x99, 0xa4, 0x7f, 0xcb, 0x9e, 0xa4, 0x87, 0x4d, 0x1c, 0x08, 0xfa, 0xb8, 0x2c, 0x6f, 0x1e, 0x9c, 0x9a, 0xaa, 0xe2, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10549 = { .name = "ecdsa_secp521r1_sha512_10549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10549_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10549_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10549_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 146 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10550 for ECDSA, tcId is 147 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10550_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10550_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10550_sig[] = { 0x01, 0x22, 0x76, 0x72, 0x0b, 0x27, 0x25, 0xba, 0x55, 0x6d, 0x06, 0xbe, 0x39, 0xcd, 0x16, 0xca, 0x0a, 0x03, 0x51, 0xd8, 0xf5, 0x30, 0x91, 0x3c, 0x4f, 0x0c, 0xfb, 0x71, 0xfd, 0xda, 0x74, 0xb8, 0x3f, 0x02, 0xfe, 0xbd, 0xdc, 0x8d, 0xa0, 0xa1, 0xf0, 0xf9, 0x10, 0xd3, 0x7d, 0x3f, 0x53, 0x32, 0xc0, 0x27, 0xd7, 0xbd, 0x4c, 0x38, 0xfd, 0x08, 0xeb, 0xc7, 0x70, 0xbf, 0x12, 0x52, 0x07, 0x86, 0x49, 0x54, 0x00, 0x63, 0x7e, 0x70, 0xb0, 0x60, 0x45, 0xa8, 0x6e, 0x2f, 0x32, 0x9f, 0x90, 0x7e, 0x07, 0x9a, 0x78, 0x5d, 0x7f, 0x86, 0x49, 0x54, 0x18, 0x60, 0x32, 0x2f, 0xb8, 0xb6, 0x4b, 0x97, 0x36, 0x36, 0x3f, 0x90, 0x15, 0x6b, 0x9a, 0x55, 0x32, 0xd8, 0x08, 0xcf, 0x2a, 0xf3, 0x3b, 0x87, 0xff, 0x97, 0x0c, 0x02, 0xe6, 0x48, 0xdc, 0x4f, 0x1c, 0x90, 0xff, 0x07, 0x04, 0x02, 0x8e, 0xc2, 0xc2, 0xd9, 0xa8, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10550 = { .name = "ecdsa_secp521r1_sha512_10550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10550_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10550_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10550_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 147 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10551 for ECDSA, tcId is 148 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10551_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10551_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10551_sig[] = { 0x00, 0x7a, 0xad, 0xe6, 0x08, 0xb2, 0x2c, 0x77, 0x24, 0x57, 0x34, 0xfc, 0x5c, 0x4b, 0xe8, 0x73, 0x7b, 0xa2, 0x4d, 0xc2, 0xed, 0x43, 0x21, 0xb5, 0x81, 0x24, 0xae, 0x46, 0xa7, 0x7e, 0xa7, 0xbe, 0xfa, 0xa5, 0xbc, 0xf1, 0x66, 0xcb, 0x96, 0x6a, 0xad, 0x00, 0x79, 0x11, 0x62, 0x3a, 0xf1, 0x09, 0x25, 0xa3, 0x24, 0xbc, 0x3c, 0x6d, 0x06, 0xf2, 0x4d, 0x0e, 0x2e, 0x7b, 0x2c, 0x7b, 0x84, 0x68, 0xb8, 0xee, 0x01, 0xe9, 0x91, 0x3a, 0x41, 0x23, 0x00, 0xb3, 0x98, 0x07, 0x19, 0x14, 0x8d, 0xe0, 0xbb, 0x03, 0x82, 0x61, 0x84, 0xaa, 0xbd, 0x58, 0xf1, 0x96, 0x59, 0xaa, 0x8c, 0xa1, 0x80, 0x45, 0xf3, 0x6c, 0x73, 0xc9, 0x7d, 0xf3, 0xd1, 0x2b, 0x92, 0x1d, 0xe5, 0x10, 0xff, 0xa9, 0x6c, 0xea, 0xc5, 0x45, 0x4b, 0x80, 0x1c, 0x86, 0xc5, 0x5a, 0x06, 0xb2, 0xd7, 0x71, 0xfa, 0x77, 0xbc, 0xa7, 0x84, 0x33, 0x2c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10551 = { .name = "ecdsa_secp521r1_sha512_10551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10551_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10551_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10551_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 148 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10552 for ECDSA, tcId is 149 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10552_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10552_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10552_sig[] = { 0x01, 0xee, 0xfc, 0x7b, 0x6c, 0x14, 0x68, 0xff, 0xa7, 0xd6, 0x0b, 0x84, 0x08, 0xbd, 0x44, 0xc6, 0x4a, 0x3f, 0xfa, 0xff, 0x29, 0x81, 0x68, 0xc5, 0x01, 0x6c, 0x6f, 0x50, 0x40, 0x31, 0x86, 0x7e, 0xa1, 0x4a, 0xe4, 0x8c, 0x66, 0x1b, 0x81, 0x24, 0x41, 0x8b, 0x4e, 0xd6, 0xcc, 0xc3, 0x2d, 0xf6, 0xba, 0xc6, 0xd0, 0xa4, 0x85, 0xb1, 0x99, 0x02, 0x36, 0xe1, 0x56, 0x76, 0x26, 0x8b, 0x78, 0x68, 0xd2, 0x76, 0x00, 0x51, 0x5d, 0x48, 0x43, 0x6a, 0xff, 0xfd, 0xb6, 0x5c, 0xae, 0xd7, 0x37, 0x11, 0x6a, 0x86, 0x19, 0x74, 0xb7, 0x34, 0xbd, 0x19, 0x03, 0xe3, 0x7d, 0xbb, 0xc2, 0x31, 0xa9, 0xdb, 0x37, 0x46, 0x4e, 0xd7, 0x62, 0xe3, 0x64, 0xca, 0xc8, 0xb3, 0x2f, 0x15, 0x46, 0xd6, 0xde, 0x37, 0x97, 0x9f, 0xa0, 0x5f, 0x8b, 0x80, 0x15, 0x9a, 0x0f, 0x74, 0x7d, 0x94, 0x70, 0x29, 0x1a, 0xf6, 0x56, 0x9d, 0x6d, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10552 = { .name = "ecdsa_secp521r1_sha512_10552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10552_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10552_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10552_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 149 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10553 for ECDSA, tcId is 150 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10553_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10553_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10553_sig[] = { 0x01, 0x27, 0x1b, 0x91, 0x2c, 0xa0, 0x55, 0x04, 0x0c, 0x22, 0x79, 0x55, 0xdf, 0x72, 0x97, 0x57, 0x65, 0x4a, 0xa9, 0xbb, 0xdb, 0x73, 0xc6, 0x1b, 0xa1, 0x41, 0x55, 0x22, 0x0e, 0x4e, 0x71, 0x32, 0x31, 0x9f, 0x6f, 0xb0, 0xee, 0x94, 0xf2, 0xfb, 0xe1, 0x60, 0x73, 0x8f, 0x1d, 0xce, 0x2a, 0xd6, 0x90, 0x84, 0x5c, 0x38, 0xd9, 0x62, 0xdb, 0x4f, 0xda, 0x15, 0x98, 0xe9, 0x32, 0x70, 0xda, 0x84, 0xa2, 0xbb, 0x00, 0xb8, 0x90, 0x7f, 0x04, 0x1c, 0x3b, 0x19, 0xb9, 0x23, 0x4a, 0xb5, 0x55, 0xd0, 0xb4, 0x83, 0x25, 0xb0, 0xcd, 0x33, 0x08, 0x89, 0xa5, 0x32, 0x76, 0xa1, 0xe9, 0x13, 0xba, 0xb8, 0x92, 0xb9, 0xc0, 0x5c, 0xfa, 0x88, 0x90, 0x05, 0xb1, 0x4e, 0xe2, 0x73, 0x02, 0x20, 0x74, 0x6a, 0xec, 0xf1, 0x2a, 0xf9, 0x11, 0xc5, 0xba, 0xea, 0x4b, 0xe3, 0x77, 0xee, 0x76, 0xc0, 0xee, 0xaf, 0x47, 0xb7, 0xa7, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10553 = { .name = "ecdsa_secp521r1_sha512_10553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10553_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10553_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10553_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 150 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10554 for ECDSA, tcId is 151 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10554_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10554_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10554_sig[] = { 0x01, 0x6a, 0x81, 0x3d, 0xb0, 0xf7, 0x5f, 0x90, 0x47, 0xfb, 0x11, 0xf3, 0xe1, 0x9f, 0xc1, 0x68, 0x8c, 0x29, 0x32, 0x8a, 0x54, 0xf5, 0x6a, 0xe3, 0x0c, 0x1c, 0x9d, 0x93, 0x78, 0x53, 0x7b, 0xfc, 0x40, 0xc5, 0x71, 0x9d, 0x08, 0x4e, 0x49, 0xa3, 0xb4, 0xae, 0xa2, 0x55, 0xf5, 0xb7, 0xf6, 0xcc, 0x77, 0x54, 0x92, 0xb5, 0x37, 0x1e, 0x6b, 0x67, 0xb2, 0xd6, 0xab, 0xd5, 0x74, 0x3e, 0x10, 0xfa, 0xc7, 0x09, 0x01, 0xc2, 0x58, 0xff, 0xd8, 0x30, 0x15, 0x1b, 0xfd, 0x41, 0xcc, 0xda, 0xbb, 0x86, 0xb2, 0x4a, 0xf8, 0x46, 0x61, 0x27, 0x88, 0xb3, 0x61, 0xc1, 0x96, 0xd2, 0x4e, 0x99, 0x7c, 0xcf, 0x3f, 0x17, 0xd4, 0x45, 0x2f, 0x63, 0xd3, 0x28, 0x51, 0xa4, 0x83, 0x07, 0x2e, 0x69, 0x08, 0x09, 0x5e, 0x5c, 0x49, 0xbb, 0xc2, 0x41, 0xa0, 0x41, 0x77, 0x49, 0xb0, 0x97, 0xbc, 0x1c, 0xa0, 0xe4, 0xd1, 0x27, 0x77, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10554 = { .name = "ecdsa_secp521r1_sha512_10554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10554_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10554_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10554_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 151 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10555 for ECDSA, tcId is 152 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10555_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10555_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10555_sig[] = { 0x00, 0x15, 0x6a, 0x04, 0xc2, 0x2e, 0xa5, 0xbd, 0xb7, 0x87, 0x11, 0x24, 0xf1, 0x11, 0x73, 0x01, 0xd7, 0x81, 0x11, 0x3a, 0xc4, 0xc9, 0xd4, 0xda, 0x05, 0xfe, 0xa5, 0x36, 0xe9, 0x83, 0xd9, 0x26, 0x1d, 0x25, 0xdc, 0x97, 0x00, 0x6f, 0x8c, 0x78, 0xde, 0x23, 0xc7, 0x88, 0x71, 0x85, 0x57, 0xcf, 0x6f, 0x98, 0x86, 0x39, 0x94, 0xaf, 0x20, 0x86, 0xf0, 0xbe, 0x3e, 0x8a, 0xa8, 0x81, 0x2d, 0xc3, 0xa1, 0x1d, 0x00, 0xff, 0xca, 0x96, 0xb0, 0x4c, 0x56, 0xa4, 0xa6, 0xce, 0x5d, 0x22, 0xb3, 0x6e, 0x44, 0xd3, 0xb9, 0x74, 0xd5, 0x20, 0xe7, 0xf7, 0xc0, 0xf9, 0xd6, 0x90, 0x34, 0xf9, 0xe5, 0x9e, 0x0b, 0xbd, 0xc4, 0x32, 0x36, 0xb3, 0xe4, 0xbf, 0xb0, 0xf6, 0xbd, 0xe8, 0x80, 0x2c, 0xc5, 0xcd, 0x60, 0x22, 0xcf, 0xf1, 0x66, 0xf4, 0xc4, 0x88, 0xd6, 0x4f, 0x38, 0xd4, 0x4e, 0x3c, 0x56, 0x3d, 0xa3, 0x1c, 0xf6, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10555 = { .name = "ecdsa_secp521r1_sha512_10555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10555_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10555_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10555_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 152 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10556 for ECDSA, tcId is 153 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10556_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10556_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10556_sig[] = { 0x01, 0x09, 0x13, 0x54, 0x0a, 0xd7, 0x3c, 0xee, 0xf7, 0x31, 0x4d, 0x17, 0x58, 0x26, 0x4e, 0x1d, 0x15, 0x25, 0xa3, 0x71, 0xa7, 0xb9, 0xb3, 0x08, 0x69, 0x71, 0x59, 0x9a, 0x6b, 0x74, 0x9b, 0xe4, 0xd6, 0xba, 0x69, 0x26, 0x9b, 0x08, 0x95, 0x08, 0xf6, 0x50, 0x0d, 0xd9, 0x25, 0xaa, 0x89, 0xa7, 0xc7, 0xcb, 0x71, 0x85, 0xe0, 0xcc, 0xa7, 0xd2, 0xee, 0x56, 0x64, 0xf2, 0x28, 0x45, 0xd9, 0x61, 0xe3, 0x17, 0x01, 0x35, 0x25, 0x6c, 0x79, 0xea, 0x5e, 0x57, 0x68, 0xfb, 0x3a, 0x55, 0xe2, 0x89, 0x9b, 0x12, 0x21, 0x9b, 0x8f, 0x68, 0x95, 0x3c, 0xcd, 0x98, 0xc7, 0x10, 0xb6, 0xa1, 0x3d, 0xe0, 0xf5, 0x97, 0x86, 0xf4, 0x33, 0x18, 0x45, 0xe6, 0x5c, 0x7d, 0xd6, 0x34, 0x00, 0x23, 0xa5, 0xe2, 0x80, 0x20, 0x6c, 0xa3, 0x14, 0x16, 0x05, 0x8f, 0x39, 0x5f, 0xff, 0x4b, 0xb5, 0xde, 0x41, 0x1f, 0xf6, 0x6f, 0xc0, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10556 = { .name = "ecdsa_secp521r1_sha512_10556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10556_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10556_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10556_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 153 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10557 for ECDSA, tcId is 154 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10557_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10557_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10557_sig[] = { 0x01, 0xb5, 0x05, 0x1c, 0xa0, 0xdd, 0x3b, 0x20, 0xdf, 0x7d, 0x8c, 0x5b, 0x92, 0xcb, 0x42, 0xb8, 0xa2, 0x04, 0xf9, 0x2f, 0xb4, 0xe5, 0x8c, 0x61, 0x2f, 0x43, 0xd3, 0x80, 0x0d, 0xe8, 0xc0, 0x68, 0x3c, 0x42, 0x7e, 0x83, 0x2c, 0xe6, 0x22, 0x15, 0x67, 0x47, 0x05, 0x2b, 0x81, 0xbf, 0xbf, 0x6e, 0xd5, 0xfa, 0x17, 0x7b, 0x6d, 0x47, 0x85, 0x8e, 0xc8, 0x47, 0x8f, 0x6c, 0x9c, 0xa7, 0x94, 0x8f, 0xd5, 0x11, 0x01, 0xfe, 0x57, 0x10, 0xfa, 0xc0, 0xe9, 0xd3, 0xe2, 0xb3, 0xb8, 0x30, 0x81, 0xb2, 0x8b, 0x19, 0x4b, 0x82, 0x2d, 0x0c, 0x13, 0x39, 0x7b, 0xf1, 0x51, 0x61, 0x40, 0xcb, 0xe3, 0xfa, 0xa5, 0x2e, 0x90, 0x88, 0x48, 0xf6, 0x97, 0x89, 0xa7, 0x41, 0xb9, 0xcd, 0x54, 0xd7, 0x03, 0xa9, 0x45, 0x77, 0xfa, 0x81, 0x3e, 0x2f, 0x2c, 0x75, 0x83, 0x48, 0x07, 0x40, 0x1c, 0xa0, 0x10, 0xfd, 0xe5, 0x32, 0x83, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10557 = { .name = "ecdsa_secp521r1_sha512_10557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10557_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10557_msg, .msglen = 8, .sig = ecdsa_secp521r1_sha512_10557_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 154 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10558 for ECDSA, tcId is 155 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10558_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10558_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10558_sig[] = { 0x00, 0x8d, 0x3c, 0x8f, 0x8e, 0x7a, 0xb7, 0x4d, 0x49, 0xe1, 0x6a, 0x4c, 0x7d, 0xb3, 0xa3, 0x93, 0xfa, 0x95, 0x67, 0x77, 0x7e, 0x37, 0x33, 0x13, 0x66, 0x7f, 0x9c, 0xe3, 0x2b, 0x1b, 0x5e, 0x64, 0x8d, 0xeb, 0xff, 0xed, 0xfd, 0x2f, 0xf5, 0x34, 0x5c, 0xa1, 0xb8, 0x15, 0x4c, 0x18, 0xc8, 0xb8, 0x83, 0x95, 0x7d, 0x91, 0x1e, 0x41, 0x33, 0x62, 0x85, 0xf8, 0x62, 0x61, 0xc3, 0xee, 0x22, 0x5f, 0xde, 0xdd, 0x00, 0x3c, 0x51, 0xb8, 0x4c, 0x2c, 0x9a, 0x3f, 0xeb, 0x76, 0xa6, 0x51, 0x86, 0x34, 0xb6, 0xf0, 0x9c, 0x0d, 0xde, 0x8a, 0x9d, 0x08, 0xde, 0xc0, 0xb3, 0xd6, 0x61, 0x35, 0xcc, 0x1b, 0xdb, 0x0a, 0x80, 0xfd, 0x69, 0x63, 0x61, 0x04, 0xaf, 0x69, 0xde, 0x8f, 0x40, 0x62, 0x64, 0x6b, 0x29, 0xfa, 0x3a, 0xf6, 0x85, 0xec, 0x82, 0x70, 0x4c, 0xef, 0x70, 0x6a, 0x18, 0xc5, 0x9c, 0xa7, 0xec, 0xa0, 0xfb, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10558 = { .name = "ecdsa_secp521r1_sha512_10558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10558_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10558_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10558_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 155 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10559 for ECDSA, tcId is 156 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10559_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10559_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10559_sig[] = { 0x01, 0x19, 0x56, 0x25, 0xa6, 0x4a, 0xc1, 0x1c, 0x4f, 0xc1, 0xfc, 0x47, 0x9e, 0xf8, 0x04, 0x30, 0xeb, 0x85, 0xc1, 0xaf, 0x77, 0xf8, 0xa1, 0x97, 0xa1, 0x7e, 0x00, 0x95, 0x69, 0xef, 0x6c, 0x41, 0xac, 0x6f, 0x35, 0x85, 0x07, 0x55, 0x37, 0x9f, 0x47, 0x8d, 0x89, 0x28, 0xb1, 0x54, 0xe3, 0xba, 0xaa, 0x29, 0xe9, 0x2b, 0x48, 0x1a, 0xc0, 0x4d, 0xc7, 0x2f, 0x37, 0x28, 0xb4, 0xf0, 0x88, 0xff, 0x37, 0xdc, 0x00, 0x0d, 0x55, 0xc7, 0x06, 0x78, 0x77, 0xdd, 0x13, 0x02, 0xfd, 0xc6, 0xbb, 0x69, 0xb7, 0xb7, 0xc0, 0x24, 0xe4, 0xcf, 0x3a, 0x0e, 0x92, 0x41, 0x02, 0xd7, 0x44, 0xac, 0x52, 0x36, 0x6d, 0x9d, 0x76, 0xd5, 0x85, 0x5d, 0x3d, 0xa2, 0x28, 0xc4, 0xb6, 0x7b, 0xc7, 0xbc, 0x4b, 0x2a, 0x14, 0xe7, 0x99, 0x99, 0x62, 0xcc, 0x9b, 0xbd, 0xc5, 0x17, 0xfc, 0x24, 0xa8, 0x23, 0xab, 0xf5, 0x84, 0xb8, 0xf5, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10559 = { .name = "ecdsa_secp521r1_sha512_10559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10559_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10559_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10559_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 156 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10560 for ECDSA, tcId is 157 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10560_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10560_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10560_sig[] = { 0x00, 0x26, 0xeb, 0x68, 0xbc, 0x0f, 0xb7, 0x66, 0x4c, 0x35, 0xbf, 0x57, 0x62, 0xcd, 0x53, 0x2d, 0xce, 0x33, 0xb0, 0xe3, 0x96, 0xe9, 0x7d, 0x6f, 0x41, 0x43, 0xdc, 0x6e, 0x1e, 0x76, 0x6c, 0x83, 0x6e, 0x27, 0xc0, 0x69, 0xda, 0x9e, 0xa1, 0xe7, 0x4e, 0x0b, 0x03, 0xd0, 0x30, 0xcf, 0x8a, 0x81, 0x49, 0x05, 0x08, 0xc1, 0xc7, 0x28, 0xf8, 0x6e, 0x59, 0x28, 0x2d, 0xf9, 0x4d, 0xe8, 0xd8, 0xa0, 0xdc, 0xaf, 0x00, 0xa9, 0xfb, 0x58, 0x4b, 0x71, 0x29, 0x86, 0xf1, 0x9a, 0xb7, 0x56, 0x86, 0x93, 0xdf, 0x27, 0x8c, 0xaf, 0xa4, 0x32, 0x72, 0xdb, 0xa4, 0x00, 0xff, 0x33, 0x3c, 0xf4, 0x8b, 0x55, 0x56, 0xe6, 0xe7, 0x83, 0x53, 0xa6, 0x65, 0x60, 0x5c, 0x70, 0xb6, 0xfd, 0x0f, 0x18, 0xf3, 0x0b, 0x85, 0x0e, 0x1a, 0x47, 0xcd, 0xa4, 0x2c, 0x4c, 0x92, 0x4b, 0xca, 0x80, 0x10, 0x2e, 0x67, 0x93, 0xbe, 0x9a, 0x86, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10560 = { .name = "ecdsa_secp521r1_sha512_10560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10560_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10560_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10560_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 157 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10561 for ECDSA, tcId is 158 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10561_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10561_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10561_sig[] = { 0x00, 0xf3, 0xd3, 0x4e, 0x36, 0xf9, 0x75, 0x4d, 0xfa, 0x8e, 0xaf, 0xab, 0x16, 0x0c, 0xa9, 0x6d, 0x91, 0xc7, 0xf4, 0xf3, 0x88, 0xec, 0x82, 0xac, 0x33, 0x78, 0x40, 0x26, 0xbb, 0x6c, 0x6a, 0x03, 0x57, 0x19, 0xea, 0xee, 0xc3, 0xee, 0x51, 0x1f, 0xff, 0xb2, 0x2d, 0xd5, 0xd6, 0xab, 0x81, 0x9e, 0x6c, 0x63, 0x87, 0x19, 0x2d, 0x6c, 0x3a, 0x6e, 0x92, 0x49, 0xea, 0xd5, 0x65, 0x15, 0x7e, 0x32, 0x3f, 0x62, 0x01, 0xb5, 0x78, 0x6b, 0x1d, 0x66, 0x2d, 0x26, 0xfe, 0x9f, 0x69, 0xc3, 0x70, 0xd2, 0xbc, 0x18, 0x88, 0x2a, 0xbe, 0xf6, 0x93, 0xc8, 0xf1, 0x71, 0x00, 0xa0, 0x27, 0x25, 0xde, 0x7c, 0x9f, 0x03, 0x60, 0x2f, 0xd5, 0x3a, 0x92, 0x08, 0xb5, 0x73, 0xb3, 0xb7, 0xb0, 0xb6, 0x6d, 0xb9, 0x71, 0x76, 0x7b, 0xde, 0x83, 0x5f, 0x9e, 0x8f, 0x42, 0xad, 0xa2, 0x01, 0xe7, 0xb7, 0x39, 0x1b, 0x86, 0xfe, 0x02, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10561 = { .name = "ecdsa_secp521r1_sha512_10561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10561_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10561_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10561_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 158 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10562 for ECDSA, tcId is 159 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10562_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10562_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10562_sig[] = { 0x00, 0xe6, 0x9c, 0x83, 0x3b, 0x60, 0x40, 0x75, 0xe9, 0xb2, 0x8a, 0x2f, 0xf7, 0x3a, 0x56, 0xa3, 0x2e, 0x1a, 0x24, 0x7e, 0xf9, 0xae, 0x01, 0xe7, 0xa0, 0xe4, 0x71, 0xf6, 0x01, 0x5c, 0x2b, 0x86, 0xeb, 0x86, 0x4c, 0x28, 0x1c, 0x8c, 0x93, 0xd2, 0xac, 0xf5, 0x65, 0x3a, 0xd0, 0x5b, 0xaf, 0xab, 0x2f, 0x58, 0x02, 0x7f, 0x37, 0x51, 0x3e, 0xb8, 0x56, 0x9f, 0x50, 0xbd, 0x47, 0x5e, 0x77, 0x0e, 0x9a, 0x81, 0x00, 0xb9, 0xc9, 0xd6, 0xce, 0x09, 0xb5, 0x30, 0x25, 0xbf, 0xca, 0xa7, 0xd1, 0x72, 0xae, 0x41, 0xa9, 0xb6, 0x36, 0xaa, 0x4b, 0x80, 0xa9, 0x30, 0x93, 0x1f, 0xc9, 0x9e, 0x5e, 0x2a, 0xa2, 0x33, 0x06, 0xf1, 0x9d, 0xc5, 0x73, 0x99, 0xb0, 0x43, 0x1e, 0x72, 0x44, 0x0a, 0x1f, 0x4e, 0xc7, 0xd5, 0xca, 0x90, 0x2f, 0x0f, 0x7b, 0x81, 0xc9, 0x1d, 0xe8, 0x5e, 0x46, 0x9f, 0x99, 0x2f, 0xdf, 0xd4, 0xc5, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10562 = { .name = "ecdsa_secp521r1_sha512_10562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10562_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10562_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10562_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 159 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10563 for ECDSA, tcId is 160 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10563_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10563_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10563_sig[] = { 0x01, 0xc6, 0xb8, 0xb5, 0xcf, 0x3c, 0x4d, 0xd3, 0xd6, 0x23, 0x91, 0xf1, 0x8e, 0x97, 0xee, 0xf3, 0xaa, 0x6a, 0xce, 0x0a, 0xe2, 0xc6, 0xfc, 0x97, 0xa5, 0x61, 0xcb, 0x8e, 0x49, 0xc0, 0x87, 0xdb, 0xcf, 0x81, 0x35, 0xfa, 0x43, 0x3b, 0x56, 0x6b, 0x33, 0x85, 0xcb, 0x57, 0x20, 0x2f, 0x1b, 0x12, 0x16, 0x4f, 0xe6, 0x27, 0x65, 0xef, 0x73, 0xb7, 0x2a, 0x94, 0xe7, 0xa5, 0x78, 0x70, 0x98, 0x9a, 0x49, 0x81, 0x01, 0x85, 0x94, 0x44, 0x34, 0xb8, 0x3a, 0x0d, 0x0f, 0xb4, 0xbc, 0xdc, 0xe8, 0xdd, 0xaa, 0xdb, 0x30, 0xa1, 0xe4, 0x40, 0x81, 0x5e, 0x76, 0x74, 0x56, 0x2d, 0xf9, 0xc8, 0xbf, 0x71, 0x12, 0x22, 0x20, 0x8c, 0xc3, 0x46, 0xb9, 0x66, 0x5d, 0x90, 0xab, 0xed, 0xb4, 0x37, 0x91, 0x23, 0x91, 0x50, 0x5d, 0xd5, 0xd2, 0x6f, 0x01, 0x78, 0xe7, 0xc0, 0x63, 0x79, 0x0f, 0x55, 0x18, 0xf4, 0x7d, 0x1b, 0x05, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10563 = { .name = "ecdsa_secp521r1_sha512_10563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10563_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10563_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10563_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 160 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10564 for ECDSA, tcId is 161 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10564_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10564_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10564_sig[] = { 0x00, 0x9f, 0x35, 0x1a, 0x41, 0xd5, 0x37, 0x5b, 0x89, 0x93, 0xe9, 0x0b, 0x8d, 0x8a, 0x65, 0xbf, 0x01, 0xd5, 0x2d, 0x14, 0xab, 0xa1, 0xdb, 0xe4, 0x9c, 0xbb, 0x4e, 0xa8, 0x23, 0x80, 0x4f, 0x2b, 0x53, 0x3e, 0x0c, 0x16, 0x79, 0x03, 0xc8, 0xbb, 0xc5, 0x93, 0x29, 0x7c, 0x18, 0xf3, 0x09, 0x79, 0x8a, 0x54, 0x47, 0x87, 0xd5, 0x98, 0x07, 0x4c, 0xbf, 0x56, 0xef, 0x0e, 0x50, 0x22, 0x52, 0x09, 0x12, 0xad, 0x01, 0xb8, 0x92, 0x74, 0x0a, 0x57, 0x20, 0x41, 0x86, 0xbd, 0x5f, 0x43, 0x4f, 0x72, 0xd1, 0x53, 0x4b, 0x42, 0x89, 0xf8, 0xf7, 0x11, 0x4c, 0xb7, 0xb1, 0xc9, 0xcf, 0x45, 0x41, 0xd7, 0x54, 0xf3, 0x14, 0x44, 0x8c, 0xc3, 0x2d, 0xea, 0xf3, 0x56, 0x08, 0x26, 0x34, 0x88, 0xfd, 0xc7, 0x59, 0x6f, 0x74, 0x81, 0xec, 0x09, 0x8b, 0x36, 0xf8, 0xe4, 0x40, 0x82, 0x91, 0x94, 0xbe, 0xcc, 0x74, 0x6c, 0x77, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10564 = { .name = "ecdsa_secp521r1_sha512_10564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10564_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10564_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10564_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 161 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10565 for ECDSA, tcId is 162 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10565_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10565_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10565_sig[] = { 0x01, 0xfe, 0x24, 0xea, 0x83, 0x11, 0x99, 0xe3, 0x1c, 0xc6, 0x8e, 0xf2, 0x39, 0x80, 0xc4, 0xba, 0xbd, 0x37, 0x73, 0x04, 0x08, 0x70, 0xaf, 0x88, 0x23, 0xa1, 0x97, 0x08, 0xbd, 0x02, 0x29, 0xad, 0xc1, 0xce, 0x99, 0xd0, 0x2e, 0x4d, 0x95, 0x22, 0x41, 0x01, 0xe3, 0xe9, 0x74, 0x23, 0x6f, 0x54, 0xdf, 0x86, 0x05, 0x1f, 0xa1, 0xe9, 0xfd, 0x21, 0x38, 0x04, 0x32, 0x63, 0x3b, 0x24, 0x95, 0xab, 0x78, 0x2a, 0x00, 0x0e, 0xfd, 0x1f, 0x2a, 0x28, 0x1f, 0x96, 0x7e, 0x7b, 0x09, 0xd7, 0x21, 0x58, 0x13, 0x56, 0xa7, 0x14, 0xc4, 0x99, 0xf9, 0xb1, 0x4f, 0x78, 0x19, 0x92, 0xeb, 0x9a, 0xe7, 0xa1, 0x9f, 0x68, 0x25, 0x04, 0x5f, 0xdc, 0x6d, 0x9d, 0x76, 0x3f, 0x44, 0xe1, 0xe7, 0xc9, 0x14, 0x80, 0xa6, 0x78, 0xa1, 0xd8, 0xec, 0xf6, 0xd6, 0x6e, 0x76, 0xce, 0xa3, 0x50, 0x5f, 0x65, 0xff, 0x78, 0xcf, 0xf1, 0x5c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10565 = { .name = "ecdsa_secp521r1_sha512_10565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10565_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10565_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10565_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 162 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10566 for ECDSA, tcId is 163 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10566_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10566_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10566_sig[] = { 0x01, 0x4c, 0x6e, 0xe9, 0xde, 0x0a, 0x2a, 0x0b, 0x60, 0xc9, 0x81, 0x83, 0x1e, 0x0a, 0xcd, 0x66, 0x36, 0xb4, 0x6a, 0xe1, 0x34, 0xfe, 0xdc, 0xe6, 0x1b, 0x04, 0x88, 0x11, 0x26, 0x63, 0xb2, 0x4e, 0x1d, 0x7e, 0x74, 0xe2, 0x27, 0xfe, 0xa8, 0x83, 0xd2, 0x6b, 0x68, 0xf2, 0x1e, 0x41, 0x35, 0xba, 0x0e, 0x20, 0x69, 0xbb, 0xe0, 0xd9, 0xc6, 0x43, 0x3c, 0x39, 0x08, 0xfd, 0x5b, 0x00, 0x18, 0x28, 0x94, 0xb0, 0x00, 0x6a, 0x18, 0x0a, 0x49, 0x31, 0x82, 0xc6, 0xbc, 0x2a, 0x09, 0xd7, 0xe1, 0x7f, 0xf5, 0xd6, 0x20, 0x15, 0x29, 0x3f, 0x1e, 0x8a, 0xe2, 0x05, 0xa1, 0x6f, 0xa0, 0x90, 0x42, 0xb0, 0xa9, 0xaf, 0x67, 0x94, 0xcb, 0x37, 0x7f, 0x4b, 0x8b, 0x11, 0x75, 0xfc, 0xee, 0x51, 0x37, 0xc2, 0x34, 0x90, 0x0f, 0x73, 0x5c, 0x48, 0x4f, 0xeb, 0x7d, 0xa4, 0xcb, 0xb4, 0x05, 0xcf, 0x9e, 0x53, 0x70, 0xfe, 0x4f, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10566 = { .name = "ecdsa_secp521r1_sha512_10566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10566_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10566_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10566_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 163 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10567 for ECDSA, tcId is 164 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10567_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10567_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10567_sig[] = { 0x01, 0x04, 0x4a, 0x45, 0x85, 0x3a, 0xda, 0x17, 0xca, 0x76, 0x1a, 0xcc, 0x7d, 0xf6, 0xd1, 0xd3, 0x80, 0x25, 0x2c, 0xb0, 0xfa, 0x66, 0x12, 0x4d, 0x92, 0x78, 0xa5, 0xed, 0x8a, 0x4a, 0x60, 0x45, 0x3b, 0xc7, 0x1d, 0xe1, 0xdb, 0xe3, 0x2b, 0x02, 0x61, 0x16, 0x59, 0x48, 0x82, 0x3c, 0x46, 0x1c, 0x7c, 0x1e, 0xb1, 0x71, 0x4e, 0xc1, 0xdb, 0xf6, 0x6f, 0xd6, 0x02, 0xc7, 0xa4, 0x74, 0x46, 0xd1, 0xda, 0xe1, 0x00, 0xf8, 0xb2, 0x7f, 0x7c, 0x71, 0xe3, 0x7e, 0x4b, 0x44, 0x0d, 0x2c, 0x86, 0xf1, 0xc1, 0xd5, 0x0b, 0xf7, 0xc5, 0x3d, 0x38, 0x78, 0xed, 0x27, 0xe7, 0xbc, 0xfb, 0xeb, 0x90, 0x2f, 0x76, 0x9f, 0x86, 0xd6, 0xc3, 0xe8, 0x82, 0x0b, 0x99, 0xf8, 0x90, 0x05, 0x0f, 0x0d, 0xbe, 0xbd, 0x21, 0x32, 0xe8, 0x46, 0x26, 0xc5, 0xb1, 0x6a, 0x8c, 0x7f, 0xff, 0xfc, 0x3a, 0x30, 0xac, 0xe6, 0x9d, 0xd1, 0x5a, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10567 = { .name = "ecdsa_secp521r1_sha512_10567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10567_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10567_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10567_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 164 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10568 for ECDSA, tcId is 165 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10568_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10568_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10568_sig[] = { 0x00, 0x67, 0x6a, 0x38, 0x1b, 0x18, 0xd0, 0x52, 0x07, 0xcd, 0xdd, 0x73, 0xb4, 0x4e, 0x4d, 0xd7, 0x14, 0x49, 0x98, 0x5c, 0x0f, 0xa7, 0xde, 0x1f, 0xff, 0x43, 0xca, 0x51, 0x55, 0x13, 0x9a, 0x1a, 0x09, 0xe5, 0xe3, 0xfd, 0x75, 0x4d, 0x86, 0xeb, 0xbe, 0x32, 0xf6, 0x60, 0x9f, 0x6e, 0x90, 0x6d, 0x48, 0xd2, 0x47, 0x90, 0xe4, 0x94, 0x34, 0x3c, 0x61, 0xfa, 0xa9, 0x0b, 0xfd, 0xaa, 0x4f, 0x49, 0xfd, 0xc7, 0x00, 0xfb, 0xc1, 0xc8, 0x91, 0xbf, 0x6e, 0x36, 0x8f, 0xcc, 0xad, 0x51, 0xcc, 0x9b, 0x2c, 0x29, 0xe8, 0xe9, 0x2b, 0x65, 0x8e, 0x88, 0xc0, 0xd2, 0x32, 0x85, 0xaf, 0x26, 0x9a, 0xff, 0x67, 0x02, 0xa5, 0x5a, 0x0a, 0xb1, 0x68, 0x07, 0xe5, 0x52, 0x3b, 0x66, 0x37, 0xbb, 0xb0, 0x04, 0x72, 0x7f, 0x6f, 0x55, 0xc5, 0x1a, 0xd4, 0xce, 0xc8, 0xc9, 0x24, 0xf9, 0xc1, 0xfe, 0xb2, 0x46, 0x01, 0xae, 0xdd, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10568 = { .name = "ecdsa_secp521r1_sha512_10568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10568_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10568_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10568_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 165 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10569 for ECDSA, tcId is 166 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10569_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10569_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10569_sig[] = { 0x01, 0x3c, 0x9a, 0x57, 0x53, 0x82, 0xff, 0x68, 0x81, 0xc9, 0x08, 0xfb, 0x51, 0x84, 0xbe, 0x7b, 0xaf, 0x38, 0xed, 0xb0, 0xb0, 0x60, 0x08, 0x59, 0x25, 0x58, 0xef, 0xd5, 0x7d, 0xd8, 0xfb, 0x99, 0x93, 0xc8, 0x93, 0x80, 0x0a, 0x6a, 0xc8, 0xc6, 0xd2, 0xe3, 0x4e, 0xbf, 0xbe, 0xff, 0x43, 0xe6, 0x32, 0x63, 0xf1, 0x33, 0x86, 0x8d, 0x0a, 0xc7, 0xa8, 0x38, 0xf6, 0x9a, 0xff, 0x26, 0xd6, 0x0a, 0x38, 0x49, 0x00, 0x9d, 0x22, 0xae, 0x7b, 0xca, 0x8a, 0x75, 0xa5, 0x32, 0x14, 0xc3, 0xee, 0xce, 0x43, 0x7f, 0xb2, 0x8e, 0x05, 0xb0, 0x76, 0xec, 0x70, 0x4d, 0x75, 0x1a, 0x28, 0xa7, 0xed, 0x7e, 0x52, 0x9d, 0x5c, 0x53, 0x38, 0xbe, 0x8c, 0x72, 0x4a, 0xfa, 0x54, 0x75, 0x74, 0xa1, 0x7f, 0x70, 0x51, 0x0b, 0x24, 0x62, 0x74, 0x8a, 0x53, 0x67, 0x8e, 0x39, 0x75, 0x2a, 0x68, 0x8d, 0xc8, 0xcf, 0x39, 0xe8, 0x86, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10569 = { .name = "ecdsa_secp521r1_sha512_10569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10569_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10569_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10569_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 166 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10570 for ECDSA, tcId is 167 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10570_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10570_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10570_sig[] = { 0x01, 0x07, 0x1c, 0xe5, 0xa1, 0x9a, 0x09, 0xaa, 0xcd, 0x43, 0xc7, 0xca, 0xcd, 0x58, 0xa4, 0x39, 0xdc, 0xca, 0x4e, 0x85, 0xf9, 0x4e, 0xa1, 0xd4, 0x8a, 0x60, 0xf2, 0x98, 0xee, 0x01, 0xbb, 0x3e, 0xeb, 0x11, 0xd5, 0xda, 0xf5, 0x45, 0xe7, 0x08, 0x64, 0x86, 0xf8, 0xe4, 0xb5, 0x18, 0xa1, 0x5b, 0xe6, 0x96, 0x20, 0xab, 0x92, 0x0c, 0xf9, 0x5c, 0x5c, 0x15, 0xff, 0x17, 0x8c, 0x90, 0x31, 0x24, 0xfa, 0xc3, 0x01, 0xad, 0x6e, 0xae, 0xed, 0xec, 0xe9, 0xa7, 0x59, 0x2b, 0xd2, 0x15, 0x08, 0xb2, 0x72, 0x0f, 0x1b, 0x8c, 0x4b, 0xf5, 0x56, 0x37, 0xb1, 0xe8, 0xa5, 0xce, 0x53, 0x59, 0x77, 0x5b, 0x98, 0x0b, 0x21, 0xeb, 0x1d, 0x33, 0xe8, 0xeb, 0xf5, 0xc0, 0xb3, 0xd7, 0x82, 0x91, 0x52, 0xa2, 0x95, 0xb8, 0xa9, 0xa1, 0x34, 0x3c, 0x25, 0x35, 0x0e, 0x35, 0xf7, 0x09, 0x93, 0x6a, 0xcc, 0xc8, 0xce, 0x08, 0xb0, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10570 = { .name = "ecdsa_secp521r1_sha512_10570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10570_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10570_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10570_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 167 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10571 for ECDSA, tcId is 168 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10571_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10571_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10571_sig[] = { 0x01, 0xbd, 0xae, 0x49, 0x91, 0x60, 0xf4, 0xcc, 0x6c, 0xd1, 0x63, 0xcf, 0x11, 0x0b, 0xb1, 0xf9, 0xb4, 0x21, 0xe8, 0x78, 0x6a, 0x8e, 0xf9, 0x29, 0x7e, 0x4b, 0x98, 0xfd, 0x50, 0x8a, 0x1d, 0x14, 0xc5, 0x06, 0x17, 0xc8, 0xd1, 0xa3, 0xde, 0x94, 0xfc, 0x8b, 0xd6, 0xc3, 0x80, 0x55, 0xe4, 0x90, 0x6b, 0x20, 0xfd, 0xca, 0xb6, 0xef, 0x7b, 0xf9, 0xe7, 0xe5, 0xc9, 0x8e, 0xf3, 0xe8, 0x3e, 0x38, 0xec, 0x3b, 0x01, 0xba, 0x86, 0x7b, 0x8e, 0xe7, 0x2b, 0xb7, 0x30, 0x4f, 0xf8, 0x3f, 0xc2, 0xd7, 0x34, 0x74, 0x94, 0x47, 0x42, 0x07, 0x91, 0xd5, 0x60, 0x9e, 0x05, 0x15, 0xde, 0x4e, 0x05, 0xfa, 0x70, 0xa8, 0x33, 0x85, 0xa8, 0x53, 0xca, 0xc6, 0xc4, 0x7a, 0x07, 0x5c, 0x8c, 0x61, 0xe4, 0xb6, 0x5b, 0x97, 0x74, 0x57, 0x41, 0x01, 0xcf, 0x4e, 0x08, 0x17, 0x70, 0xf8, 0x3a, 0xe1, 0xb7, 0xe7, 0x27, 0x01, 0x0b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10571 = { .name = "ecdsa_secp521r1_sha512_10571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10571_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10571_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10571_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 168 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10572 for ECDSA, tcId is 169 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10572_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10572_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10572_sig[] = { 0x00, 0x00, 0x26, 0x9f, 0xc7, 0xed, 0x89, 0xe5, 0x54, 0xaa, 0x52, 0xb3, 0x87, 0x5d, 0xc0, 0x0b, 0xc1, 0x40, 0xc1, 0x93, 0x7d, 0x4f, 0x1b, 0x32, 0xe2, 0x9d, 0xa4, 0x1f, 0xf2, 0x41, 0xcd, 0xb9, 0xbd, 0x30, 0x58, 0xfc, 0x14, 0x8f, 0x90, 0x59, 0x82, 0xb8, 0x71, 0x7b, 0x03, 0x5e, 0x0d, 0xb0, 0x0d, 0xed, 0x7e, 0xbc, 0xb0, 0x85, 0x72, 0xec, 0x76, 0xbf, 0x01, 0x28, 0x41, 0x11, 0x45, 0xd7, 0x30, 0x91, 0x01, 0xb4, 0xbd, 0x6b, 0xc4, 0xba, 0x7b, 0xef, 0xd5, 0xc3, 0x05, 0xe0, 0x18, 0x44, 0x8a, 0x77, 0x1b, 0x71, 0xfa, 0x1a, 0x11, 0xb3, 0xa2, 0xc6, 0x18, 0x5d, 0xd6, 0xb8, 0x47, 0x7c, 0x35, 0xea, 0xeb, 0x47, 0x33, 0xfe, 0xcd, 0x90, 0xf3, 0x8e, 0xcb, 0xa6, 0x28, 0xf2, 0x7c, 0x02, 0xf8, 0x09, 0x19, 0x1e, 0x99, 0x3e, 0x1e, 0x7f, 0xf5, 0x90, 0x38, 0x3e, 0x2e, 0xc2, 0xaf, 0xd0, 0x80, 0x20, 0xb2, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10572 = { .name = "ecdsa_secp521r1_sha512_10572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10572_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10572_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10572_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 169 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10573 for ECDSA, tcId is 170 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10573_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10573_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10573_sig[] = { 0x01, 0xa5, 0xce, 0xcc, 0x0e, 0x57, 0x2f, 0x5e, 0xe4, 0xee, 0xd6, 0x75, 0x5d, 0x32, 0x30, 0xec, 0x5a, 0x93, 0x3c, 0x1f, 0xb0, 0xe3, 0x5a, 0xe7, 0x71, 0xa1, 0xfc, 0xf0, 0xdc, 0x88, 0x0e, 0x1c, 0x15, 0x9d, 0xd5, 0xb6, 0xd1, 0x92, 0xdc, 0x37, 0x75, 0x05, 0x04, 0x8b, 0x71, 0x88, 0xde, 0x3f, 0xeb, 0x81, 0x5a, 0x81, 0xa4, 0xf3, 0x0d, 0x92, 0x26, 0xcd, 0xc8, 0x5f, 0x75, 0x1d, 0xec, 0x1a, 0x04, 0x10, 0x01, 0xef, 0x4a, 0x74, 0x3e, 0x1e, 0x16, 0xf0, 0xa6, 0x02, 0x01, 0xcc, 0x10, 0x60, 0x62, 0x5e, 0xde, 0x6f, 0x09, 0x36, 0xe7, 0xaf, 0x90, 0xb4, 0x27, 0x36, 0x28, 0x1e, 0x89, 0xfe, 0x7f, 0x2d, 0xe6, 0xaa, 0x3f, 0x25, 0xc6, 0x85, 0x76, 0xda, 0x70, 0x5d, 0x8b, 0x3f, 0x6d, 0x5d, 0x8a, 0x34, 0xd3, 0x07, 0x33, 0x07, 0xea, 0x19, 0x8d, 0x1c, 0xc8, 0xd7, 0x2a, 0x18, 0xef, 0x25, 0xe9, 0x0f, 0x31, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10573 = { .name = "ecdsa_secp521r1_sha512_10573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10573_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10573_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10573_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 170 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10574 for ECDSA, tcId is 171 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10574_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10574_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10574_sig[] = { 0x01, 0xa9, 0x2b, 0x43, 0xf5, 0x74, 0x21, 0xe5, 0x4d, 0x25, 0x28, 0xd3, 0x05, 0xe7, 0xd5, 0xaa, 0xc9, 0xa7, 0x08, 0xe7, 0x5a, 0x7d, 0x6f, 0xed, 0xb4, 0x79, 0x08, 0xa4, 0xe3, 0xed, 0xca, 0xbd, 0xd8, 0x36, 0xa2, 0xc4, 0xe8, 0x43, 0x6f, 0x3b, 0x7b, 0x64, 0x89, 0x52, 0x54, 0x53, 0x61, 0x74, 0xd8, 0x8c, 0x6d, 0xca, 0x14, 0x36, 0x99, 0x52, 0x2b, 0xc2, 0xdf, 0xde, 0xeb, 0xcb, 0xf3, 0x8e, 0xb9, 0x05, 0x00, 0x93, 0xb0, 0xb9, 0x9a, 0x89, 0xde, 0x72, 0xac, 0xa0, 0xc0, 0x3e, 0x12, 0x72, 0x4c, 0x2b, 0xe3, 0x23, 0x57, 0x7a, 0x46, 0x29, 0xcb, 0x47, 0xfd, 0xda, 0x5b, 0x12, 0xb6, 0x1a, 0xce, 0x0b, 0x9f, 0xdb, 0x97, 0x54, 0x9d, 0x3d, 0x2a, 0x1d, 0xac, 0x15, 0xda, 0x66, 0xba, 0x63, 0x89, 0xee, 0x54, 0xcb, 0xc8, 0x2c, 0x99, 0x5b, 0x9f, 0x3a, 0xa3, 0xae, 0x84, 0x74, 0xf4, 0xbb, 0x4b, 0x52, 0xda, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10574 = { .name = "ecdsa_secp521r1_sha512_10574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10574_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10574_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10574_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 171 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10575 for ECDSA, tcId is 172 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10575_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10575_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10575_sig[] = { 0x00, 0xa0, 0x40, 0x0f, 0x25, 0x51, 0x74, 0xff, 0xb8, 0x54, 0x8c, 0x29, 0xf5, 0xfa, 0xa7, 0x0e, 0x80, 0x6b, 0xb6, 0xf6, 0xca, 0x08, 0xa0, 0x87, 0x53, 0xc8, 0x5c, 0x5d, 0x14, 0x5a, 0x55, 0x5c, 0xc8, 0xe2, 0xdf, 0x28, 0x5a, 0xf9, 0x98, 0x5f, 0x2e, 0x72, 0x9d, 0x4a, 0x99, 0xa7, 0x34, 0xb7, 0xe7, 0xfc, 0x95, 0x56, 0x0d, 0x54, 0x6a, 0x06, 0x7f, 0xda, 0x03, 0x52, 0x9f, 0x56, 0xb2, 0xfe, 0x66, 0xbc, 0x00, 0xd7, 0xfb, 0x60, 0x27, 0x1d, 0x22, 0xec, 0xb5, 0xd8, 0xec, 0x90, 0x4a, 0x9d, 0xf1, 0xa4, 0x16, 0xbe, 0x70, 0x6c, 0xe5, 0x39, 0xe3, 0x46, 0x50, 0xb8, 0xfc, 0x51, 0x4d, 0x1d, 0xd7, 0xaf, 0xeb, 0xc1, 0x34, 0x4c, 0x0c, 0x68, 0xc5, 0x33, 0xc5, 0xb2, 0x0e, 0xe2, 0x49, 0xa7, 0x7c, 0x07, 0x52, 0x93, 0xb2, 0xd7, 0xef, 0xc8, 0x73, 0x1c, 0x2e, 0x36, 0x19, 0xbe, 0x59, 0xda, 0x87, 0x1b, 0xb0, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10575 = { .name = "ecdsa_secp521r1_sha512_10575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10575_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10575_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10575_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 172 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10576 for ECDSA, tcId is 173 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10576_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10576_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10576_sig[] = { 0x01, 0x92, 0x07, 0xc7, 0xb6, 0x45, 0xaa, 0x45, 0xc2, 0x72, 0x23, 0x31, 0xf4, 0x6e, 0x09, 0x4f, 0x2e, 0xb0, 0x05, 0x20, 0x75, 0xb8, 0xac, 0x94, 0x14, 0xad, 0x77, 0xba, 0xaf, 0xd0, 0x1d, 0x4d, 0x1f, 0xdc, 0x68, 0x34, 0x41, 0x36, 0xfb, 0xce, 0x01, 0xed, 0xfa, 0x56, 0x27, 0xbf, 0xb8, 0xf3, 0xc1, 0x28, 0xab, 0xb6, 0x10, 0x72, 0xc7, 0x48, 0x02, 0x19, 0x2e, 0x89, 0x13, 0x7c, 0x68, 0xd0, 0xcc, 0x31, 0x00, 0xff, 0x15, 0xb0, 0x21, 0x8f, 0x81, 0xf0, 0xa8, 0x48, 0x74, 0x2f, 0x68, 0x3c, 0xb4, 0xd1, 0xb7, 0xc5, 0x17, 0xef, 0xdb, 0x8f, 0xcf, 0x8a, 0xc6, 0xa3, 0x5e, 0x49, 0x71, 0xb3, 0x55, 0x36, 0x85, 0x1e, 0xd6, 0x8d, 0xe4, 0x0a, 0x6e, 0x1a, 0x4a, 0x23, 0xbd, 0xdb, 0x5b, 0x42, 0xef, 0xca, 0x23, 0xb9, 0x1e, 0x91, 0x95, 0x9a, 0x4f, 0x7e, 0x2a, 0xfa, 0x19, 0x67, 0x79, 0xc9, 0x6c, 0x6c, 0x65, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10576 = { .name = "ecdsa_secp521r1_sha512_10576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10576_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10576_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10576_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 173 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10577 for ECDSA, tcId is 174 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10577_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10577_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10577_sig[] = { 0x00, 0xaa, 0xf1, 0x19, 0x70, 0x2b, 0x99, 0x85, 0x35, 0x4b, 0xbe, 0x3f, 0x6b, 0x6c, 0xda, 0x8c, 0x46, 0x15, 0x1a, 0xf4, 0x20, 0x25, 0x46, 0xdf, 0xbe, 0x04, 0xd5, 0xf0, 0xff, 0xd1, 0x8e, 0xbe, 0x7b, 0x29, 0xd6, 0x16, 0xf1, 0xc4, 0x03, 0x76, 0xa4, 0x12, 0xa5, 0x2f, 0x42, 0x04, 0xb5, 0xa1, 0x3e, 0x7f, 0x3e, 0x43, 0x04, 0xea, 0xd5, 0x66, 0xfc, 0x41, 0xbf, 0x4b, 0x5f, 0xc0, 0xb8, 0x4c, 0x8a, 0x2d, 0x00, 0xd5, 0x99, 0xde, 0xaf, 0xd4, 0xfa, 0x23, 0x68, 0xcd, 0x07, 0x2b, 0x85, 0x4a, 0x3d, 0x53, 0x42, 0x5d, 0x06, 0xad, 0xf3, 0x57, 0x3e, 0x88, 0x6b, 0x81, 0x24, 0x8a, 0x73, 0x28, 0xa5, 0x46, 0xdd, 0xc4, 0x1c, 0xae, 0xd3, 0x8c, 0x6b, 0x1f, 0xfe, 0xae, 0xc9, 0xa9, 0x8c, 0x94, 0x09, 0x05, 0xcb, 0xff, 0xa8, 0x7b, 0x93, 0x6d, 0xa9, 0x80, 0xd4, 0xa9, 0x00, 0x3d, 0xa4, 0x1e, 0x0c, 0x59, 0xc9, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10577 = { .name = "ecdsa_secp521r1_sha512_10577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10577_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10577_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10577_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 174 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10578 for ECDSA, tcId is 175 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10578_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10578_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10578_sig[] = { 0x00, 0x6c, 0x09, 0xa5, 0x9e, 0x71, 0xcf, 0x34, 0xf9, 0x83, 0xf7, 0x5d, 0xbb, 0x47, 0x24, 0xc4, 0x82, 0x8a, 0x93, 0x02, 0x1c, 0xee, 0x8f, 0xd7, 0xd9, 0x2a, 0xf6, 0x94, 0x1c, 0xa8, 0xef, 0xc9, 0xc5, 0xdd, 0xda, 0x7c, 0x49, 0xa0, 0xe1, 0x77, 0x72, 0x25, 0x78, 0x2e, 0x09, 0x31, 0x3e, 0x30, 0x91, 0xf0, 0x56, 0x12, 0x2e, 0x58, 0x5c, 0x4e, 0xaa, 0x68, 0x9f, 0xb2, 0xfd, 0xb1, 0xcb, 0x78, 0x48, 0xd8, 0x01, 0x9f, 0x0c, 0x5f, 0xf6, 0xb4, 0x63, 0x8f, 0x4c, 0x33, 0x91, 0x6d, 0xb7, 0x6f, 0x9d, 0x07, 0x8b, 0xfa, 0x8f, 0x9e, 0x25, 0xae, 0x00, 0x34, 0x8e, 0x46, 0xbb, 0x32, 0xd7, 0x77, 0xaa, 0x26, 0x15, 0x5b, 0x82, 0xea, 0x73, 0xa9, 0xe4, 0xe2, 0xf2, 0x1f, 0x6a, 0x65, 0xc7, 0x3e, 0xd6, 0xc6, 0xab, 0x21, 0x01, 0xce, 0xf3, 0x52, 0x4d, 0x45, 0xb9, 0xfc, 0x6e, 0xa1, 0x29, 0x2f, 0x19, 0x86, 0xac, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10578 = { .name = "ecdsa_secp521r1_sha512_10578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10578_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10578_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10578_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 175 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10579 for ECDSA, tcId is 176 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10579_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10579_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10579_sig[] = { 0x01, 0x4e, 0x79, 0x1c, 0x42, 0xf3, 0x99, 0x84, 0x58, 0xc5, 0xe1, 0x7f, 0x89, 0x5d, 0x25, 0xc8, 0x5c, 0xb4, 0x19, 0x19, 0x5d, 0x65, 0xe5, 0xa0, 0xb9, 0xa4, 0x2c, 0xf1, 0x3d, 0xdd, 0x36, 0x95, 0x9c, 0x73, 0x46, 0x0f, 0x54, 0xaa, 0x84, 0x0d, 0x22, 0x54, 0x35, 0x5c, 0x6a, 0xc6, 0x26, 0xf4, 0x40, 0xcb, 0x3a, 0x84, 0xfb, 0xa6, 0x32, 0x26, 0x2c, 0x9d, 0xc5, 0xca, 0xb3, 0x1b, 0xe7, 0xda, 0x10, 0x6b, 0x00, 0xab, 0xb9, 0x7b, 0x68, 0x2f, 0x01, 0xf4, 0x51, 0x68, 0x40, 0x36, 0x13, 0xa7, 0xe2, 0xff, 0x82, 0xbb, 0x4a, 0x9f, 0xc2, 0x09, 0x52, 0xa3, 0x5d, 0x93, 0x54, 0x28, 0xf7, 0x1d, 0xdc, 0xc7, 0x99, 0xc6, 0xd9, 0x08, 0x5f, 0xe3, 0x23, 0x0d, 0x72, 0x26, 0x1d, 0x73, 0xcd, 0x08, 0x2e, 0x81, 0x08, 0x52, 0x3d, 0xa7, 0xba, 0x0b, 0x16, 0x91, 0xad, 0x6e, 0xa6, 0x3f, 0x5f, 0x4e, 0x8e, 0x89, 0x09, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10579 = { .name = "ecdsa_secp521r1_sha512_10579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10579_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10579_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10579_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 176 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10580 for ECDSA, tcId is 177 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10580_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10580_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10580_sig[] = { 0x01, 0x3d, 0xed, 0x35, 0xdd, 0xff, 0x2f, 0x97, 0x78, 0x0b, 0xbc, 0x60, 0xb8, 0xce, 0xc8, 0x98, 0x55, 0xa3, 0x51, 0x83, 0xa4, 0x8f, 0x8f, 0xa6, 0xbb, 0xdc, 0x18, 0x39, 0x94, 0xbf, 0x89, 0x02, 0x11, 0x18, 0xcc, 0x01, 0x96, 0x29, 0xdf, 0x72, 0x11, 0x2b, 0x2c, 0x52, 0x9c, 0x02, 0x3e, 0x7a, 0x5c, 0xfc, 0xe2, 0x53, 0xf7, 0xfd, 0xb4, 0x91, 0x05, 0xd2, 0x38, 0x68, 0x0b, 0x64, 0x27, 0x5a, 0x21, 0x3c, 0x00, 0x9c, 0x92, 0xe7, 0xa0, 0xf7, 0x16, 0x08, 0xe8, 0xd8, 0xcf, 0xab, 0x3f, 0x85, 0x0f, 0x7f, 0xda, 0x1a, 0x1a, 0x1d, 0x05, 0x6e, 0x72, 0x25, 0x44, 0x69, 0xaf, 0xe5, 0xce, 0xec, 0x3c, 0x71, 0x8e, 0x6a, 0x46, 0x2e, 0x13, 0x46, 0x94, 0x1e, 0xb0, 0x8c, 0x10, 0x55, 0x01, 0x64, 0x75, 0x02, 0xc1, 0xa8, 0x10, 0xa2, 0x9d, 0xf8, 0xb2, 0x08, 0xda, 0x6a, 0x5b, 0x29, 0x6b, 0x2b, 0xd1, 0xe9, 0x81, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10580 = { .name = "ecdsa_secp521r1_sha512_10580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10580_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10580_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10580_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 177 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10581 for ECDSA, tcId is 178 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10581_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10581_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10581_sig[] = { 0x01, 0xd0, 0xd2, 0x97, 0x56, 0xeb, 0xff, 0x02, 0xb7, 0x16, 0x74, 0xfa, 0x4e, 0xae, 0x37, 0x55, 0x7c, 0xcd, 0x51, 0xa0, 0x36, 0xfb, 0x1e, 0xb0, 0xb7, 0x12, 0x1b, 0x40, 0x5e, 0x7f, 0xab, 0xd6, 0x05, 0x92, 0x92, 0x7d, 0x80, 0x5b, 0x75, 0x81, 0x5a, 0xf1, 0xbc, 0xa6, 0xe9, 0xd6, 0xc5, 0x48, 0x42, 0x25, 0xbd, 0xd0, 0xec, 0x7a, 0x40, 0x73, 0x5d, 0xa9, 0x72, 0xfd, 0x5f, 0xf6, 0x45, 0xd8, 0x6f, 0x1d, 0x00, 0x8b, 0x9f, 0xe5, 0x53, 0x57, 0xdc, 0x11, 0x80, 0x70, 0xcf, 0x89, 0x89, 0x73, 0xa6, 0x4e, 0x75, 0x54, 0xb7, 0x34, 0xe9, 0x00, 0xc6, 0x75, 0x54, 0x1e, 0x20, 0x33, 0x2a, 0x26, 0x0c, 0xa5, 0x1a, 0x23, 0x24, 0x8d, 0x9b, 0x8f, 0x47, 0xde, 0xd8, 0x11, 0xcf, 0xce, 0x55, 0x6a, 0x06, 0xa7, 0x1b, 0xa5, 0xdc, 0x5b, 0x87, 0x30, 0x75, 0xf2, 0x64, 0xa6, 0x84, 0x3e, 0x67, 0x5c, 0xaf, 0x06, 0xa5, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10581 = { .name = "ecdsa_secp521r1_sha512_10581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10581_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10581_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10581_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 178 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10582 for ECDSA, tcId is 179 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10582_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10582_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10582_sig[] = { 0x01, 0x65, 0xfb, 0x99, 0x3f, 0x39, 0xd3, 0x50, 0xed, 0x60, 0xc8, 0x48, 0x3d, 0xd6, 0xe4, 0xe6, 0x73, 0x65, 0x91, 0xde, 0xa9, 0x74, 0xec, 0xd8, 0xab, 0x02, 0x7d, 0x38, 0x39, 0xb7, 0x52, 0x32, 0x2e, 0xe2, 0x20, 0xd4, 0x0b, 0xb6, 0xfc, 0x0b, 0x0d, 0x5a, 0x8c, 0x42, 0x92, 0x8b, 0xde, 0x50, 0xf6, 0x59, 0xb1, 0x8f, 0x51, 0xf4, 0x2f, 0xb2, 0xb1, 0xaa, 0x45, 0x83, 0x89, 0x2a, 0x91, 0x14, 0xa0, 0xc3, 0x00, 0xa8, 0x81, 0x6c, 0x09, 0xd4, 0x71, 0x38, 0xbf, 0x66, 0x2d, 0xa4, 0xba, 0x25, 0xca, 0xf4, 0x4e, 0x24, 0x18, 0x56, 0x96, 0xd4, 0x91, 0x4a, 0x7d, 0xe2, 0xb2, 0x53, 0x5f, 0x73, 0xb9, 0xaf, 0xbd, 0x3f, 0xfa, 0x9c, 0xb0, 0xa8, 0x6a, 0x11, 0x5e, 0x4d, 0x9a, 0xc5, 0xbe, 0x48, 0xcf, 0x7e, 0x8f, 0xe2, 0x76, 0x46, 0x6a, 0xbd, 0xf1, 0x71, 0x27, 0xbc, 0xc7, 0xaa, 0xf4, 0xd0, 0x96, 0x00, 0x8c, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10582 = { .name = "ecdsa_secp521r1_sha512_10582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10582_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10582_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10582_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 179 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10583 for ECDSA, tcId is 180 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10583_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10583_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10583_sig[] = { 0x00, 0x0b, 0x90, 0x1c, 0x88, 0xea, 0x69, 0x9e, 0x71, 0x5f, 0x6d, 0xb8, 0x64, 0xe2, 0x3a, 0x67, 0x6e, 0x7f, 0x7f, 0x24, 0x15, 0xac, 0x1f, 0x85, 0x0f, 0x2d, 0xde, 0x1a, 0xd0, 0xd3, 0xf9, 0xc9, 0x2e, 0x8c, 0x5d, 0xe6, 0x6d, 0x45, 0x17, 0x4d, 0x61, 0x99, 0x55, 0xfa, 0xe4, 0xb0, 0xdf, 0xeb, 0xe4, 0x9c, 0x58, 0x35, 0x06, 0x48, 0x1d, 0x28, 0xd3, 0x0c, 0xbf, 0x58, 0xe2, 0xac, 0x49, 0xf3, 0x70, 0xc2, 0x01, 0x44, 0xc9, 0x7b, 0x68, 0x8b, 0x9e, 0xcc, 0x07, 0xb8, 0x4c, 0x68, 0x09, 0x52, 0x67, 0xe1, 0x7e, 0x48, 0x23, 0x29, 0x22, 0x75, 0x66, 0x09, 0xe9, 0x85, 0x9d, 0x18, 0xd2, 0xeb, 0x78, 0x44, 0xec, 0x92, 0x51, 0x50, 0xc3, 0x9f, 0x2b, 0x3a, 0x25, 0x5c, 0x88, 0x2b, 0xe7, 0x05, 0xe0, 0xa8, 0xe3, 0x0e, 0x68, 0xe4, 0x9f, 0xe7, 0x91, 0x4d, 0xbc, 0xc3, 0xcc, 0xfb, 0xc1, 0xd4, 0x67, 0x05, 0x0f, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10583 = { .name = "ecdsa_secp521r1_sha512_10583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10583_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10583_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10583_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 180 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10584 for ECDSA, tcId is 181 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10584_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10584_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10584_sig[] = { 0x00, 0xab, 0xbd, 0x9e, 0x77, 0xef, 0x1e, 0x2a, 0x36, 0xc6, 0xb0, 0x6f, 0x06, 0x3d, 0x93, 0xef, 0xfb, 0x8e, 0x85, 0x23, 0x87, 0xa9, 0x4b, 0xfd, 0xf8, 0x35, 0x9b, 0x5c, 0x18, 0x70, 0x8f, 0x90, 0xd9, 0xf4, 0xe9, 0x74, 0x9f, 0xd4, 0x53, 0x47, 0xf6, 0x37, 0x54, 0x6b, 0x08, 0x73, 0x37, 0x89, 0xc9, 0x88, 0xfd, 0xa4, 0xf0, 0x30, 0x95, 0x51, 0xbd, 0xe8, 0x13, 0xa0, 0xbb, 0x1a, 0x23, 0x2a, 0xde, 0xe1, 0x01, 0x91, 0x16, 0x5d, 0x58, 0xd1, 0x53, 0xfe, 0xc6, 0x8f, 0x5c, 0xc8, 0x3b, 0xcf, 0x58, 0x91, 0xe2, 0xe0, 0xca, 0x96, 0x81, 0x20, 0x48, 0x76, 0xe8, 0x72, 0x45, 0x3e, 0x9e, 0xbd, 0x45, 0x87, 0x0b, 0x68, 0x78, 0xee, 0x43, 0x7e, 0x4d, 0x83, 0x3c, 0x6e, 0xc5, 0x43, 0x37, 0xb7, 0x79, 0xac, 0xbf, 0x9f, 0x82, 0x02, 0xdf, 0x51, 0x0d, 0x26, 0x9a, 0x71, 0x0d, 0x0c, 0x43, 0xe4, 0xe0, 0x7b, 0x04, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10584 = { .name = "ecdsa_secp521r1_sha512_10584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10584_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10584_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10584_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 181 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10585 for ECDSA, tcId is 182 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10585_pubkey[] = { 0x00, 0x49, 0x1c, 0xd6, 0xc5, 0xf9, 0x3b, 0x74, 0x14, 0xd6, 0xd4, 0x5c, 0xfe, 0x3d, 0x26, 0x4b, 0xd0, 0x77, 0xfc, 0x44, 0x27, 0xa4, 0xb0, 0xaf, 0xed, 0xe7, 0x6c, 0xac, 0x53, 0x7a, 0x7c, 0xa5, 0xee, 0x2c, 0x44, 0x56, 0x42, 0x58, 0x26, 0x0f, 0x76, 0x91, 0xb8, 0x1f, 0xdf, 0xec, 0xeb, 0xfd, 0x03, 0xba, 0x67, 0x22, 0x77, 0x87, 0x5c, 0x5b, 0x31, 0x1e, 0xa9, 0x20, 0xe7, 0x4f, 0xb3, 0x97, 0x8a, 0xf5, 0x01, 0x44, 0xa3, 0x53, 0xa2, 0x51, 0xb4, 0x29, 0x78, 0x94, 0x16, 0x1b, 0xae, 0x12, 0xd1, 0x6a, 0x89, 0xc3, 0x3b, 0x71, 0x9f, 0x90, 0x4c, 0xfc, 0xcc, 0x27, 0x7d, 0xf7, 0x8c, 0xea, 0x53, 0x79, 0x19, 0x86, 0x42, 0xfd, 0x54, 0x9d, 0xf9, 0x19, 0x90, 0x4d, 0xc0, 0xcf, 0x36, 0x62, 0xee, 0xab, 0x01, 0xef, 0x11, 0xb8, 0xe3, 0xcb, 0x49, 0xb5, 0x1b, 0x85, 0x3d, 0x98, 0xf0, 0x42, 0x60, 0x0c, 0x09, 0x97, }; static const unsigned char ecdsa_secp521r1_sha512_10585_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10585_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xae, 0x79, 0x78, 0x7c, 0x40, 0xd0, 0x69, 0x94, 0x80, 0x33, 0xfe, 0xb7, 0x08, 0xf6, 0x5a, 0x2f, 0xc4, 0x4a, 0x36, 0x47, 0x76, 0x63, 0xb8, 0x51, 0x44, 0x90, 0x48, 0xe1, 0x6e, 0xc7, 0x9b, 0xf5, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10585 = { .name = "ecdsa_secp521r1_sha512_10585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10585_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10585_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10585_sig, .siglen = 132, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 182 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10586 for ECDSA, tcId is 183 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10586_pubkey[] = { 0x00, 0x49, 0x1c, 0xd6, 0xc5, 0xf9, 0x3b, 0x74, 0x14, 0xd6, 0xd4, 0x5c, 0xfe, 0x3d, 0x26, 0x4b, 0xd0, 0x77, 0xfc, 0x44, 0x27, 0xa4, 0xb0, 0xaf, 0xed, 0xe7, 0x6c, 0xac, 0x53, 0x7a, 0x7c, 0xa5, 0xee, 0x2c, 0x44, 0x56, 0x42, 0x58, 0x26, 0x0f, 0x76, 0x91, 0xb8, 0x1f, 0xdf, 0xec, 0xeb, 0xfd, 0x03, 0xba, 0x67, 0x22, 0x77, 0x87, 0x5c, 0x5b, 0x31, 0x1e, 0xa9, 0x20, 0xe7, 0x4f, 0xb3, 0x97, 0x8a, 0xf5, 0x01, 0x44, 0xa3, 0x53, 0xa2, 0x51, 0xb4, 0x29, 0x78, 0x94, 0x16, 0x1b, 0xae, 0x12, 0xd1, 0x6a, 0x89, 0xc3, 0x3b, 0x71, 0x9f, 0x90, 0x4c, 0xfc, 0xcc, 0x27, 0x7d, 0xf7, 0x8c, 0xea, 0x53, 0x79, 0x19, 0x86, 0x42, 0xfd, 0x54, 0x9d, 0xf9, 0x19, 0x90, 0x4d, 0xc0, 0xcf, 0x36, 0x62, 0xee, 0xab, 0x01, 0xef, 0x11, 0xb8, 0xe3, 0xcb, 0x49, 0xb5, 0x1b, 0x85, 0x3d, 0x98, 0xf0, 0x42, 0x60, 0x0c, 0x09, 0x97, }; static const unsigned char ecdsa_secp521r1_sha512_10586_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10586_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10586 = { .name = "ecdsa_secp521r1_sha512_10586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10586_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10586_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10586_sig, .siglen = 132, .result = -1, .comment = "r too large, tcId is 183 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10587 for ECDSA, tcId is 184 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10587_pubkey[] = { 0x01, 0x5f, 0x28, 0x1d, 0xcd, 0xc9, 0x76, 0x64, 0x1c, 0xe0, 0x24, 0xdc, 0xa1, 0xea, 0xc8, 0xdd, 0xd7, 0xf9, 0x49, 0xe3, 0x29, 0x0d, 0x3b, 0x2d, 0xe1, 0x1c, 0x48, 0x73, 0xf3, 0x67, 0x6a, 0x06, 0xff, 0x9f, 0x70, 0x4c, 0x24, 0x81, 0x3b, 0xd8, 0xd6, 0x35, 0x28, 0xb2, 0xe8, 0x13, 0xf7, 0x8b, 0x86, 0x9f, 0xf3, 0x81, 0x12, 0x52, 0x7e, 0x79, 0xb3, 0x83, 0xa3, 0xbd, 0x52, 0x7b, 0xad, 0xb9, 0x29, 0xff, 0x01, 0x50, 0x2e, 0x4c, 0xc7, 0x03, 0x2d, 0x3e, 0xc3, 0x5b, 0x0f, 0x8d, 0x05, 0x40, 0x94, 0x38, 0xa8, 0x69, 0x66, 0xd6, 0x23, 0xf7, 0xa2, 0xf4, 0x32, 0xbf, 0x71, 0x2f, 0x76, 0xdc, 0x63, 0x45, 0x40, 0x5d, 0xfc, 0xfc, 0xdc, 0x36, 0xd4, 0x77, 0x83, 0x1d, 0x38, 0xee, 0xc6, 0x4e, 0xde, 0x7f, 0x4d, 0x39, 0xaa, 0x91, 0xbf, 0xfc, 0xc5, 0x6e, 0xc4, 0x24, 0x1c, 0xb0, 0x67, 0x35, 0xb2, 0x80, 0x9f, 0xbe, }; static const unsigned char ecdsa_secp521r1_sha512_10587_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10587_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10587 = { .name = "ecdsa_secp521r1_sha512_10587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10587_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10587_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10587_sig, .siglen = 132, .result = 1, .comment = "r,s are large, tcId is 184 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10588 for ECDSA, tcId is 185 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10588_pubkey[] = { 0x00, 0x33, 0x6d, 0x5d, 0x08, 0xfe, 0x75, 0xc5, 0x09, 0x46, 0xe6, 0xdd, 0xdd, 0x36, 0xc5, 0x50, 0xbb, 0x05, 0x4d, 0x99, 0x25, 0xc8, 0xf2, 0x54, 0xcf, 0xe1, 0xc3, 0x38, 0x8f, 0x72, 0x0b, 0x1d, 0x65, 0x00, 0xa9, 0x04, 0x12, 0xb0, 0x20, 0xb3, 0xdb, 0x59, 0x2b, 0x92, 0xab, 0x9f, 0x68, 0xf1, 0xc6, 0x93, 0xb8, 0xd1, 0x36, 0x53, 0x71, 0x63, 0x5e, 0x21, 0xbc, 0x43, 0xea, 0xad, 0xf8, 0x9e, 0x4e, 0x74, 0x01, 0xd4, 0x8d, 0x60, 0x31, 0x9d, 0xfd, 0x06, 0xf9, 0x35, 0xfc, 0x46, 0x48, 0x8c, 0x22, 0x9b, 0x61, 0x1e, 0xec, 0xd0, 0x38, 0x80, 0x4a, 0xe9, 0xf6, 0x81, 0xa0, 0x78, 0xdd, 0xe8, 0xed, 0x8f, 0x8e, 0x20, 0xad, 0x95, 0x04, 0xbc, 0xf3, 0xc2, 0x4a, 0x0b, 0x56, 0x6b, 0x1e, 0x85, 0xb2, 0xd3, 0xed, 0x0a, 0x12, 0x73, 0x29, 0x2f, 0xf5, 0xf8, 0x7b, 0xae, 0x5b, 0x3c, 0x87, 0x85, 0x7e, 0x67, 0xed, 0x81, }; static const unsigned char ecdsa_secp521r1_sha512_10588_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10588_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x95, 0xe1, 0x9f, 0xd2, 0xb7, 0x55, 0xd6, 0x03, 0xbf, 0x99, 0x45, 0x62, 0xd9, 0xa1, 0x1f, 0x63, 0xcf, 0x4e, 0xad, 0xec, 0xbd, 0xc0, 0xec, 0xb5, 0xa3, 0x94, 0xe5, 0x45, 0x29, 0xe8, 0xda, 0x58, 0xa5, 0x27, 0xbc, 0x6d, 0x85, 0x72, 0x50, 0x43, 0x78, 0x63, 0x62, 0xab, 0x4d, 0xe6, 0xcb, 0xc7, 0xd8, 0x0e, 0x62, 0x5a, 0xe0, 0xa9, 0x88, 0x61, 0xae, 0xa1, 0xc7, 0xbf, 0x71, 0x09, 0xc9, 0x1f, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10588 = { .name = "ecdsa_secp521r1_sha512_10588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10588_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10588_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10588_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 185 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10589 for ECDSA, tcId is 186 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10589_pubkey[] = { 0x00, 0x6f, 0x8f, 0xad, 0xed, 0xba, 0xe6, 0x37, 0x01, 0x07, 0x2c, 0x28, 0x7c, 0x63, 0x3f, 0x9c, 0x00, 0x52, 0xea, 0x1e, 0x6c, 0xd0, 0x0a, 0x84, 0x34, 0x2c, 0xc0, 0xf6, 0x26, 0x21, 0x00, 0x71, 0x57, 0x6a, 0xbf, 0xd0, 0x87, 0x56, 0x64, 0xb0, 0x74, 0x6c, 0xda, 0xf2, 0x74, 0x5e, 0xff, 0xc1, 0x8d, 0x94, 0x90, 0x5b, 0x0f, 0xc9, 0xd2, 0xca, 0xd4, 0xba, 0x37, 0x5c, 0x0e, 0xa2, 0x29, 0x8c, 0x8d, 0x1c, 0x01, 0x50, 0xd1, 0x28, 0xcb, 0x62, 0xa5, 0x27, 0xae, 0x6d, 0xf3, 0xe9, 0x2f, 0x1f, 0x28, 0x0e, 0xa3, 0x32, 0x48, 0x71, 0x1f, 0xfe, 0x4b, 0x35, 0xc1, 0xb1, 0x62, 0xa9, 0x50, 0x85, 0x76, 0x86, 0x01, 0x65, 0xe0, 0xdd, 0xc3, 0x61, 0xd9, 0x6f, 0xaf, 0xcd, 0x2f, 0xf8, 0x27, 0x76, 0xc7, 0x43, 0xb9, 0xcd, 0x68, 0x45, 0xdb, 0x61, 0xeb, 0x56, 0x73, 0x9f, 0x5c, 0x4e, 0xf5, 0x61, 0xe6, 0xc2, 0x0d, 0x8c, }; static const unsigned char ecdsa_secp521r1_sha512_10589_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10589_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x15, 0x83, 0x76, 0x45, 0x58, 0x3a, 0x37, 0xa7, 0xa6, 0x65, 0xf9, 0x83, 0xc5, 0xe3, 0x47, 0xf6, 0x5d, 0xca, 0x47, 0x64, 0x7a, 0xa8, 0x0f, 0xd2, 0x49, 0x8a, 0x79, 0x1d, 0x44, 0xd9, 0xb2, 0x85, 0x0a, 0x15, 0x1a, 0x6e, 0x86, 0xfc, 0xe7, 0xd7, 0xbb, 0x81, 0x4e, 0x72, 0x4f, 0xf1, 0x1b, 0x9e, 0xf7, 0x26, 0xbf, 0x36, 0xc6, 0xe7, 0x54, 0x8c, 0x37, 0xf8, 0x2a, 0x24, 0x90, 0x28, 0x76, 0xee, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10589 = { .name = "ecdsa_secp521r1_sha512_10589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10589_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10589_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10589_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 186 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10590 for ECDSA, tcId is 187 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10590_pubkey[] = { 0x00, 0x5e, 0x7e, 0xb6, 0xc4, 0xf4, 0x81, 0x83, 0x0a, 0xba, 0xad, 0x8a, 0x60, 0xdd, 0xb0, 0x98, 0x91, 0x16, 0x4e, 0xe4, 0x18, 0xea, 0x4c, 0xd2, 0x99, 0x50, 0x62, 0xe2, 0x27, 0xd3, 0x3c, 0x22, 0x9f, 0xb7, 0x37, 0xbf, 0x33, 0x07, 0x03, 0x09, 0x7d, 0x6b, 0x3b, 0x69, 0xa3, 0xf0, 0x9e, 0x79, 0xc9, 0xde, 0x0b, 0x40, 0x2b, 0xf8, 0x46, 0xdd, 0x26, 0xb5, 0xbb, 0x11, 0x91, 0xcf, 0xf8, 0x01, 0x35, 0x5d, 0x01, 0x78, 0x9c, 0x9a, 0xfd, 0xa5, 0x67, 0xe6, 0x1d, 0xe4, 0x14, 0x43, 0x7b, 0x0e, 0x93, 0xa1, 0x76, 0x11, 0xe6, 0xe7, 0x68, 0x53, 0x76, 0x2b, 0xc0, 0xaf, 0xf1, 0xe2, 0xbc, 0x9e, 0x46, 0xce, 0x12, 0x85, 0xb9, 0x31, 0x65, 0x1d, 0x71, 0x29, 0xb8, 0x5a, 0xef, 0x2c, 0x1f, 0xab, 0x17, 0x28, 0xe7, 0xeb, 0x44, 0x49, 0xb2, 0x95, 0x6d, 0xec, 0x33, 0xe6, 0xcd, 0x7c, 0x9b, 0xa1, 0x25, 0xc5, 0xcd, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_10590_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10590_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10590 = { .name = "ecdsa_secp521r1_sha512_10590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10590_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10590_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10590_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 187 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10591 for ECDSA, tcId is 188 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10591_pubkey[] = { 0x00, 0x5e, 0x7e, 0xb6, 0xc4, 0xf4, 0x81, 0x83, 0x0a, 0xba, 0xad, 0x8a, 0x60, 0xdd, 0xb0, 0x98, 0x91, 0x16, 0x4e, 0xe4, 0x18, 0xea, 0x4c, 0xd2, 0x99, 0x50, 0x62, 0xe2, 0x27, 0xd3, 0x3c, 0x22, 0x9f, 0xb7, 0x37, 0xbf, 0x33, 0x07, 0x03, 0x09, 0x7d, 0x6b, 0x3b, 0x69, 0xa3, 0xf0, 0x9e, 0x79, 0xc9, 0xde, 0x0b, 0x40, 0x2b, 0xf8, 0x46, 0xdd, 0x26, 0xb5, 0xbb, 0x11, 0x91, 0xcf, 0xf8, 0x01, 0x35, 0x5d, 0x01, 0x78, 0x9c, 0x9a, 0xfd, 0xa5, 0x67, 0xe6, 0x1d, 0xe4, 0x14, 0x43, 0x7b, 0x0e, 0x93, 0xa1, 0x76, 0x11, 0xe6, 0xe7, 0x68, 0x53, 0x76, 0x2b, 0xc0, 0xaf, 0xf1, 0xe2, 0xbc, 0x9e, 0x46, 0xce, 0x12, 0x85, 0xb9, 0x31, 0x65, 0x1d, 0x71, 0x29, 0xb8, 0x5a, 0xef, 0x2c, 0x1f, 0xab, 0x17, 0x28, 0xe7, 0xeb, 0x44, 0x49, 0xb2, 0x95, 0x6d, 0xec, 0x33, 0xe6, 0xcd, 0x7c, 0x9b, 0xa1, 0x25, 0xc5, 0xcd, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_10591_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10591_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10591 = { .name = "ecdsa_secp521r1_sha512_10591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10591_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10591_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10591_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 188 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10592 for ECDSA, tcId is 189 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10592_pubkey[] = { 0x00, 0xb4, 0x20, 0xfb, 0x1f, 0xec, 0xdd, 0x9c, 0xc5, 0xea, 0x7d, 0x7c, 0x76, 0x17, 0xe7, 0x05, 0x38, 0xdb, 0x32, 0xe6, 0xd7, 0xa0, 0xad, 0x72, 0x2c, 0x63, 0x58, 0x0f, 0x1f, 0x6a, 0x1f, 0x55, 0x37, 0xeb, 0x50, 0x93, 0x0b, 0x90, 0xfd, 0x6f, 0xdd, 0x9a, 0xbd, 0x40, 0x01, 0x5f, 0x74, 0x6d, 0x2f, 0xd8, 0xad, 0xf9, 0x45, 0xa7, 0x56, 0x21, 0x40, 0x7e, 0xdb, 0x68, 0x63, 0x58, 0x8e, 0x41, 0x97, 0x9e, 0x00, 0x29, 0x51, 0x08, 0xa7, 0xe9, 0xd2, 0x19, 0x1a, 0x28, 0x7f, 0xd1, 0x60, 0xbd, 0x24, 0xf4, 0x98, 0x05, 0x5d, 0xc9, 0xba, 0xdb, 0xd6, 0x1c, 0x6a, 0x89, 0xfe, 0xde, 0x27, 0xb4, 0xf9, 0xd4, 0x79, 0xd8, 0x6a, 0x20, 0xb6, 0xdc, 0x07, 0xc9, 0x0f, 0x00, 0x8e, 0xbe, 0x68, 0xa0, 0xe0, 0xcc, 0x15, 0xa4, 0xa0, 0x3b, 0x8c, 0xf9, 0x90, 0xe4, 0xff, 0x7e, 0xd6, 0xe3, 0x89, 0x2b, 0x21, 0xc5, 0x21, 0x53, }; static const unsigned char ecdsa_secp521r1_sha512_10592_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10592_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10592 = { .name = "ecdsa_secp521r1_sha512_10592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10592_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10592_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10592_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 189 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10593 for ECDSA, tcId is 190 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10593_pubkey[] = { 0x00, 0xb4, 0x20, 0xfb, 0x1f, 0xec, 0xdd, 0x9c, 0xc5, 0xea, 0x7d, 0x7c, 0x76, 0x17, 0xe7, 0x05, 0x38, 0xdb, 0x32, 0xe6, 0xd7, 0xa0, 0xad, 0x72, 0x2c, 0x63, 0x58, 0x0f, 0x1f, 0x6a, 0x1f, 0x55, 0x37, 0xeb, 0x50, 0x93, 0x0b, 0x90, 0xfd, 0x6f, 0xdd, 0x9a, 0xbd, 0x40, 0x01, 0x5f, 0x74, 0x6d, 0x2f, 0xd8, 0xad, 0xf9, 0x45, 0xa7, 0x56, 0x21, 0x40, 0x7e, 0xdb, 0x68, 0x63, 0x58, 0x8e, 0x41, 0x97, 0x9e, 0x00, 0x29, 0x51, 0x08, 0xa7, 0xe9, 0xd2, 0x19, 0x1a, 0x28, 0x7f, 0xd1, 0x60, 0xbd, 0x24, 0xf4, 0x98, 0x05, 0x5d, 0xc9, 0xba, 0xdb, 0xd6, 0x1c, 0x6a, 0x89, 0xfe, 0xde, 0x27, 0xb4, 0xf9, 0xd4, 0x79, 0xd8, 0x6a, 0x20, 0xb6, 0xdc, 0x07, 0xc9, 0x0f, 0x00, 0x8e, 0xbe, 0x68, 0xa0, 0xe0, 0xcc, 0x15, 0xa4, 0xa0, 0x3b, 0x8c, 0xf9, 0x90, 0xe4, 0xff, 0x7e, 0xd6, 0xe3, 0x89, 0x2b, 0x21, 0xc5, 0x21, 0x53, }; static const unsigned char ecdsa_secp521r1_sha512_10593_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10593_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10593 = { .name = "ecdsa_secp521r1_sha512_10593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10593_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10593_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10593_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 190 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10594 for ECDSA, tcId is 191 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10594_pubkey[] = { 0x00, 0x32, 0xb9, 0xa1, 0x7c, 0x20, 0x1a, 0xec, 0x34, 0xd2, 0x9b, 0x8c, 0x27, 0x64, 0xe7, 0xc7, 0xf6, 0xae, 0xef, 0x10, 0xfb, 0x61, 0xbf, 0x98, 0x37, 0x11, 0x7f, 0xad, 0x87, 0x9f, 0x8c, 0x6a, 0x22, 0xa3, 0x00, 0x00, 0x6d, 0x20, 0x18, 0xcf, 0x42, 0xb2, 0x58, 0x98, 0xff, 0xc9, 0xa1, 0xbf, 0x50, 0x73, 0x52, 0xe5, 0x9e, 0x6a, 0x52, 0xe6, 0x27, 0xcd, 0xa1, 0x60, 0xe1, 0x7e, 0xa2, 0xf4, 0x60, 0x05, 0x00, 0x31, 0x7a, 0x89, 0x89, 0x9b, 0x7c, 0xb3, 0xa0, 0xd3, 0x3e, 0xaf, 0xa0, 0x2b, 0x01, 0x37, 0xa0, 0xfb, 0x1b, 0x05, 0x10, 0x2b, 0x22, 0xb6, 0x76, 0xf3, 0x5b, 0x9f, 0xf6, 0xc0, 0x50, 0xdd, 0xee, 0x9f, 0x18, 0x56, 0x09, 0xff, 0xb7, 0xf5, 0x16, 0x5a, 0x76, 0x9e, 0x44, 0x07, 0x92, 0xb7, 0x50, 0x44, 0xa4, 0x3e, 0x83, 0x86, 0x90, 0xd1, 0x3f, 0x88, 0x4a, 0xaa, 0xe8, 0x88, 0xbf, 0x5f, 0x86, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha512_10594_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10594_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10594 = { .name = "ecdsa_secp521r1_sha512_10594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10594_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10594_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10594_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 191 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10595 for ECDSA, tcId is 192 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10595_pubkey[] = { 0x00, 0x32, 0xb9, 0xa1, 0x7c, 0x20, 0x1a, 0xec, 0x34, 0xd2, 0x9b, 0x8c, 0x27, 0x64, 0xe7, 0xc7, 0xf6, 0xae, 0xef, 0x10, 0xfb, 0x61, 0xbf, 0x98, 0x37, 0x11, 0x7f, 0xad, 0x87, 0x9f, 0x8c, 0x6a, 0x22, 0xa3, 0x00, 0x00, 0x6d, 0x20, 0x18, 0xcf, 0x42, 0xb2, 0x58, 0x98, 0xff, 0xc9, 0xa1, 0xbf, 0x50, 0x73, 0x52, 0xe5, 0x9e, 0x6a, 0x52, 0xe6, 0x27, 0xcd, 0xa1, 0x60, 0xe1, 0x7e, 0xa2, 0xf4, 0x60, 0x05, 0x00, 0x31, 0x7a, 0x89, 0x89, 0x9b, 0x7c, 0xb3, 0xa0, 0xd3, 0x3e, 0xaf, 0xa0, 0x2b, 0x01, 0x37, 0xa0, 0xfb, 0x1b, 0x05, 0x10, 0x2b, 0x22, 0xb6, 0x76, 0xf3, 0x5b, 0x9f, 0xf6, 0xc0, 0x50, 0xdd, 0xee, 0x9f, 0x18, 0x56, 0x09, 0xff, 0xb7, 0xf5, 0x16, 0x5a, 0x76, 0x9e, 0x44, 0x07, 0x92, 0xb7, 0x50, 0x44, 0xa4, 0x3e, 0x83, 0x86, 0x90, 0xd1, 0x3f, 0x88, 0x4a, 0xaa, 0xe8, 0x88, 0xbf, 0x5f, 0x86, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha512_10595_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10595_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10595 = { .name = "ecdsa_secp521r1_sha512_10595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10595_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10595_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10595_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 192 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10596 for ECDSA, tcId is 193 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10596_pubkey[] = { 0x00, 0x32, 0xb9, 0xa1, 0x7c, 0x20, 0x1a, 0xec, 0x34, 0xd2, 0x9b, 0x8c, 0x27, 0x64, 0xe7, 0xc7, 0xf6, 0xae, 0xef, 0x10, 0xfb, 0x61, 0xbf, 0x98, 0x37, 0x11, 0x7f, 0xad, 0x87, 0x9f, 0x8c, 0x6a, 0x22, 0xa3, 0x00, 0x00, 0x6d, 0x20, 0x18, 0xcf, 0x42, 0xb2, 0x58, 0x98, 0xff, 0xc9, 0xa1, 0xbf, 0x50, 0x73, 0x52, 0xe5, 0x9e, 0x6a, 0x52, 0xe6, 0x27, 0xcd, 0xa1, 0x60, 0xe1, 0x7e, 0xa2, 0xf4, 0x60, 0x05, 0x00, 0x31, 0x7a, 0x89, 0x89, 0x9b, 0x7c, 0xb3, 0xa0, 0xd3, 0x3e, 0xaf, 0xa0, 0x2b, 0x01, 0x37, 0xa0, 0xfb, 0x1b, 0x05, 0x10, 0x2b, 0x22, 0xb6, 0x76, 0xf3, 0x5b, 0x9f, 0xf6, 0xc0, 0x50, 0xdd, 0xee, 0x9f, 0x18, 0x56, 0x09, 0xff, 0xb7, 0xf5, 0x16, 0x5a, 0x76, 0x9e, 0x44, 0x07, 0x92, 0xb7, 0x50, 0x44, 0xa4, 0x3e, 0x83, 0x86, 0x90, 0xd1, 0x3f, 0x88, 0x4a, 0xaa, 0xe8, 0x88, 0xbf, 0x5f, 0x86, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha512_10596_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10596_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10596 = { .name = "ecdsa_secp521r1_sha512_10596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10596_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10596_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10596_sig, .siglen = 132, .result = -1, .comment = "r is larger than n, tcId is 193 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10597 for ECDSA, tcId is 194 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10597_pubkey[] = { 0x00, 0x67, 0xdd, 0x45, 0x6b, 0x52, 0xf8, 0x2a, 0x5d, 0x4c, 0x4a, 0x71, 0xb3, 0xea, 0x93, 0x02, 0xf6, 0x2a, 0x85, 0x2d, 0xdc, 0x04, 0xad, 0x25, 0xb6, 0x2f, 0xef, 0x1d, 0xdf, 0x65, 0x73, 0x74, 0xfb, 0x4e, 0x80, 0x67, 0x9d, 0xdf, 0x42, 0xd2, 0x12, 0xf0, 0x71, 0x1d, 0xb3, 0x2b, 0x62, 0x6d, 0x85, 0x93, 0xbd, 0x70, 0x89, 0x2e, 0x93, 0xed, 0x0a, 0xdb, 0x27, 0x31, 0x57, 0xb6, 0xdf, 0x18, 0x79, 0x38, 0x01, 0x4d, 0x2c, 0x78, 0x50, 0x9f, 0x3b, 0xd6, 0xf7, 0xd0, 0xfb, 0xa4, 0xa9, 0x0c, 0xb4, 0x56, 0x28, 0x6e, 0x26, 0x7f, 0x5d, 0xd9, 0xd9, 0x67, 0x84, 0x2a, 0x60, 0x86, 0x88, 0x4d, 0x66, 0xc7, 0xb2, 0xa9, 0x32, 0x83, 0x34, 0x70, 0xc7, 0x21, 0xa4, 0xa7, 0x28, 0xcd, 0x84, 0x86, 0xd1, 0x53, 0x14, 0x23, 0x2d, 0x80, 0x1f, 0x17, 0xe3, 0xa6, 0xfd, 0x70, 0x68, 0xbd, 0xeb, 0xac, 0xdf, 0x82, 0xc0, 0xb4, }; static const unsigned char ecdsa_secp521r1_sha512_10597_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10597_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x4b, 0x3a, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10597 = { .name = "ecdsa_secp521r1_sha512_10597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10597_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10597_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10597_sig, .siglen = 132, .result = -1, .comment = "s is larger than n, tcId is 194 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10598 for ECDSA, tcId is 195 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10598_pubkey[] = { 0x00, 0x68, 0xd7, 0xb5, 0x18, 0x21, 0x47, 0x66, 0xac, 0x73, 0x4a, 0x74, 0x61, 0xd4, 0x99, 0x35, 0x24, 0x44, 0x37, 0x7d, 0x50, 0xaf, 0x42, 0xa1, 0xbb, 0xdb, 0x7f, 0x00, 0x32, 0x06, 0x5e, 0xe6, 0xdc, 0x34, 0x1c, 0xcf, 0x23, 0x1a, 0xf6, 0x52, 0x50, 0xe7, 0xd1, 0x3a, 0x80, 0x73, 0x3a, 0xbe, 0xbf, 0xf5, 0x59, 0x89, 0x1d, 0x42, 0x11, 0xd6, 0xc2, 0x8c, 0xf9, 0x52, 0xc9, 0x22, 0x23, 0x03, 0xb5, 0x3b, 0x00, 0xa2, 0xf3, 0xd7, 0xe1, 0x4d, 0x9d, 0x8f, 0xab, 0xe1, 0x93, 0x9d, 0x66, 0x4e, 0x46, 0x15, 0xc6, 0xe2, 0x4f, 0x54, 0x90, 0xc8, 0x15, 0xc7, 0x65, 0x1c, 0xcf, 0x6c, 0xc6, 0x52, 0x52, 0xf8, 0x8b, 0xcf, 0xd3, 0xb0, 0x7f, 0xbd, 0xba, 0xa0, 0xba, 0x00, 0x44, 0x1e, 0x59, 0x0c, 0xcb, 0xce, 0xa0, 0x06, 0x58, 0xf3, 0x88, 0xf2, 0x2c, 0x42, 0xd8, 0xa6, 0xd0, 0xf7, 0x81, 0xae, 0x5b, 0xb4, 0xd7, 0x8b, }; static const unsigned char ecdsa_secp521r1_sha512_10598_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10598_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xf8, 0x7b, 0x4d, 0xe1, 0xfc, 0x92, 0xdd, 0x75, 0x76, 0x39, 0x40, 0x8a, 0x50, 0xbe, 0xe1, 0x07, 0x64, 0xe3, 0x26, 0xfd, 0xd2, 0xfa, 0x30, 0x8d, 0xfd, 0xe3, 0xe5, 0x24, 0x3f, 0xdf, 0x4a, 0xc5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10598 = { .name = "ecdsa_secp521r1_sha512_10598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10598_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10598_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10598_sig, .siglen = 132, .result = 1, .comment = "small r and s^-1, tcId is 195 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10599 for ECDSA, tcId is 196 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10599_pubkey[] = { 0x01, 0x1e, 0xdc, 0x3b, 0x22, 0xb2, 0x0f, 0x9a, 0x18, 0x8b, 0x32, 0xb1, 0xe8, 0x27, 0xd6, 0xe4, 0x6b, 0x2e, 0xd6, 0x1b, 0x9b, 0xe6, 0xf4, 0xad, 0xa0, 0xb2, 0xc9, 0x58, 0x35, 0xbe, 0xe2, 0x73, 0x8e, 0xc4, 0xdc, 0x53, 0x13, 0x83, 0x1c, 0xce, 0x5f, 0x92, 0x72, 0x10, 0xa7, 0xbc, 0x2f, 0x13, 0xab, 0xc0, 0x2f, 0xa9, 0x0e, 0x71, 0x6f, 0xc1, 0xbd, 0x2f, 0x63, 0xc4, 0x29, 0xa7, 0x60, 0xed, 0x23, 0x63, 0x01, 0x18, 0xda, 0xad, 0x88, 0xfe, 0x9b, 0x9d, 0x66, 0xe6, 0x6e, 0x71, 0xce, 0x05, 0xd7, 0x41, 0x37, 0xd2, 0x77, 0xa9, 0xca, 0x81, 0xc7, 0xd7, 0xae, 0xf1, 0xe7, 0x45, 0x50, 0x89, 0x05, 0x64, 0x10, 0x3c, 0xc0, 0xd9, 0x5d, 0x30, 0xf6, 0x20, 0x5c, 0x91, 0x24, 0x82, 0x91, 0x92, 0xe1, 0x5d, 0x66, 0xfb, 0x1f, 0x40, 0x33, 0x03, 0x2a, 0x42, 0xba, 0x60, 0x6e, 0x3e, 0xdc, 0xa6, 0xec, 0x06, 0x5c, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10599_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0x01, 0x00, 0x50, 0x8d, 0x07, 0x34, 0x13, 0xde, 0x82, 0x92, 0x75, 0xe7, 0x65, 0x09, 0xfd, 0x81, 0xcf, 0xf4, 0x9a, 0xdf, 0x4c, 0x80, 0xed, 0x2d, 0xdd, 0x4a, 0x79, 0x37, 0xd1, 0xd9, 0x18, 0x79, 0x68, 0x78, 0xfe, 0xc2, 0x4c, 0xc4, 0x65, 0x70, 0x98, 0x2c, 0x3f, 0xb8, 0xf5, 0xe9, 0x2c, 0xcd, 0xcb, 0x3e, 0x67, 0x7f, 0x07, 0xe9, 0xbd, 0x0d, 0xb0, 0xb8, 0x48, 0x14, 0xbe, 0x1c, 0x79, 0x49, 0xb0, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10599 = { .name = "ecdsa_secp521r1_sha512_10599", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10599_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10599_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10599_sig, .siglen = 132, .result = 1, .comment = "smallish r and s^-1, tcId is 196 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10600 for ECDSA, tcId is 197 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10600_pubkey[] = { 0x01, 0x2f, 0x8b, 0x98, 0x63, 0xa1, 0x88, 0x7e, 0xca, 0x68, 0x27, 0xad, 0x4a, 0xcc, 0xc2, 0xba, 0x60, 0x7f, 0x85, 0x92, 0xe5, 0xbe, 0x15, 0xd9, 0x69, 0x2b, 0x69, 0x7a, 0x40, 0x61, 0xfc, 0xc8, 0x15, 0x60, 0xc8, 0xfe, 0xb2, 0xae, 0x38, 0x51, 0xd0, 0x0e, 0x06, 0xdf, 0x3e, 0x00, 0x91, 0xf1, 0xf1, 0xca, 0x5e, 0xc6, 0x47, 0x61, 0xf4, 0xf8, 0xbd, 0x6d, 0x0c, 0x2c, 0xab, 0x2a, 0x12, 0x10, 0x24, 0x44, 0x01, 0x74, 0xb4, 0xe3, 0x4a, 0xec, 0x51, 0x7a, 0x0d, 0x2c, 0xeb, 0x2f, 0xd1, 0x52, 0xed, 0x17, 0x36, 0xbc, 0x33, 0x0e, 0xfc, 0xa5, 0xe6, 0xd5, 0x30, 0xea, 0x17, 0x08, 0x02, 0xfb, 0x6a, 0xf0, 0x31, 0x42, 0x59, 0x03, 0xfa, 0x6a, 0x37, 0x84, 0x05, 0xbe, 0x5e, 0x47, 0xd1, 0xe5, 0x2f, 0x62, 0xf8, 0x59, 0xf5, 0x37, 0xdf, 0x9c, 0x0f, 0x6a, 0x4a, 0x64, 0x79, 0xa0, 0xaa, 0xda, 0xfe, 0x21, 0x98, 0x21, }; static const unsigned char ecdsa_secp521r1_sha512_10600_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10600_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x01, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x39, 0x3f, 0x63, 0x2a, 0xff, 0xd3, 0xea, 0xa3, 0xc8, 0xfb, 0x64, 0x50, 0x7b, 0xd5, 0x99, 0x64, 0x97, 0xbd, 0x58, 0x8f, 0xb9, 0xe3, 0x94, 0x7c, 0x09, 0x7c, 0xed, 0x75, 0x46, 0xb5, 0x7c, 0x89, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10600 = { .name = "ecdsa_secp521r1_sha512_10600", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10600_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10600_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10600_sig, .siglen = 132, .result = 1, .comment = "100-bit r and small s^-1, tcId is 197 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10601 for ECDSA, tcId is 198 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10601_pubkey[] = { 0x00, 0x8a, 0xed, 0x77, 0x9a, 0x32, 0xb9, 0xbf, 0x56, 0xea, 0x7a, 0xb4, 0x6e, 0x4b, 0x91, 0x4e, 0x55, 0xc6, 0x53, 0x01, 0xcd, 0xbe, 0x9e, 0xa6, 0xe7, 0xed, 0x44, 0xf7, 0xe9, 0x78, 0xc0, 0x36, 0x59, 0x89, 0xa1, 0x9a, 0x5e, 0x48, 0x28, 0x2f, 0xb1, 0x15, 0x8f, 0x48, 0x1c, 0x55, 0x65, 0x05, 0xd6, 0x6f, 0xf4, 0x14, 0xa0, 0x70, 0x03, 0xeb, 0xf8, 0x2f, 0xca, 0x16, 0x98, 0xc3, 0x3f, 0x28, 0x84, 0xc6, 0x00, 0xa6, 0x24, 0x26, 0x99, 0x3e, 0xd5, 0xb1, 0x77, 0xb6, 0x04, 0x5e, 0x60, 0xb5, 0xfa, 0x1a, 0x1f, 0x8c, 0xe1, 0xad, 0x5d, 0x70, 0xe7, 0xbc, 0x7b, 0x5a, 0xf8, 0x11, 0xdb, 0xf8, 0x6e, 0x65, 0x1f, 0x9e, 0xa0, 0x2e, 0xc7, 0x96, 0xab, 0x99, 0x1e, 0x14, 0x39, 0xbf, 0x07, 0xff, 0xe2, 0xac, 0x60, 0x52, 0xa8, 0xa0, 0xb0, 0x17, 0x4d, 0x78, 0xa9, 0x44, 0x1a, 0xaf, 0x4d, 0x8f, 0xc7, 0x57, 0xd8, 0x0f, }; static const unsigned char ecdsa_secp521r1_sha512_10601_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10601_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10601 = { .name = "ecdsa_secp521r1_sha512_10601", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10601_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10601_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10601_sig, .siglen = 132, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 198 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10602 for ECDSA, tcId is 199 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10602_pubkey[] = { 0x00, 0x93, 0x69, 0x7b, 0x03, 0x78, 0x31, 0x2b, 0x38, 0xc3, 0x1d, 0xea, 0xe0, 0x73, 0xf2, 0x4a, 0x81, 0x63, 0xf0, 0x86, 0xac, 0x21, 0x16, 0xb7, 0xc3, 0x7c, 0x99, 0x15, 0x7c, 0xfa, 0xe7, 0x97, 0x0a, 0xb4, 0x20, 0x1f, 0x5a, 0x7e, 0x06, 0xec, 0x39, 0xee, 0xdb, 0xf7, 0xd8, 0x7f, 0x30, 0x21, 0xca, 0x43, 0x9e, 0x3f, 0xf7, 0xc5, 0x98, 0x8b, 0x84, 0x67, 0x99, 0x37, 0xba, 0xb7, 0x86, 0xdb, 0xe1, 0x2e, 0x01, 0xc6, 0x98, 0x7c, 0x86, 0x07, 0x7c, 0x05, 0x42, 0x3a, 0xc2, 0x81, 0xde, 0x6d, 0x23, 0xf6, 0xa6, 0x85, 0x87, 0x0e, 0x12, 0x85, 0x54, 0x63, 0x77, 0x0e, 0xcc, 0xab, 0xc9, 0xf3, 0xa1, 0xd2, 0x3c, 0xb2, 0xa0, 0xc1, 0x54, 0x79, 0x42, 0x0b, 0x5d, 0xd4, 0x0f, 0xbd, 0xc9, 0x88, 0x6c, 0x46, 0x3b, 0x62, 0xee, 0x23, 0x23, 0x9d, 0xf3, 0xa8, 0xb8, 0x61, 0xc3, 0x29, 0x1d, 0x28, 0x22, 0x4f, 0x60, 0x57, }; static const unsigned char ecdsa_secp521r1_sha512_10602_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10602_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10602 = { .name = "ecdsa_secp521r1_sha512_10602", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10602_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10602_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10602_sig, .siglen = 132, .result = 1, .comment = "100-bit r and s^-1, tcId is 199 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10603 for ECDSA, tcId is 200 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10603_pubkey[] = { 0x01, 0x9a, 0x9f, 0x1b, 0x7b, 0x7f, 0x57, 0x4a, 0x02, 0x1f, 0xed, 0xd8, 0x67, 0x9a, 0x4e, 0x99, 0x8b, 0x48, 0x52, 0x48, 0x54, 0xee, 0xfb, 0xaa, 0xe4, 0x10, 0x4a, 0x39, 0x73, 0xd6, 0x93, 0xe0, 0x21, 0x04, 0xfa, 0x11, 0x92, 0x43, 0x25, 0x6e, 0x3d, 0x98, 0x6f, 0x8b, 0x49, 0x66, 0xc2, 0x86, 0xab, 0x8c, 0xb1, 0xf5, 0x26, 0x7c, 0x0b, 0xbd, 0x6b, 0xc1, 0x82, 0xae, 0xb5, 0x74, 0x93, 0xa5, 0xd5, 0xb6, 0x01, 0x58, 0xb9, 0x7e, 0xb7, 0x48, 0x62, 0xfb, 0xca, 0x41, 0x76, 0x3e, 0x8d, 0x3a, 0x7b, 0xeb, 0x5f, 0xcc, 0xd0, 0x55, 0x65, 0xb7, 0x5a, 0x3a, 0x43, 0xc2, 0xb3, 0x8b, 0x96, 0xeb, 0x2c, 0xcf, 0xf1, 0x49, 0xc2, 0x3e, 0xf1, 0xac, 0x09, 0xfc, 0x45, 0x5d, 0x80, 0x8f, 0xf2, 0x80, 0x81, 0xe9, 0x85, 0xf9, 0xe1, 0x72, 0xfc, 0x62, 0xd0, 0x90, 0x05, 0x85, 0x17, 0x2c, 0xfb, 0xff, 0x87, 0x38, 0x35, 0x95, }; static const unsigned char ecdsa_secp521r1_sha512_10603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10603_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x8a, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10603 = { .name = "ecdsa_secp521r1_sha512_10603", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10603_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10603_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10603_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 are close to n, tcId is 200 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10604 for ECDSA, tcId is 201 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10604_pubkey[] = { 0x01, 0xaa, 0x9f, 0x3a, 0x89, 0x4b, 0x72, 0x7d, 0x7a, 0x01, 0xb0, 0x9c, 0x4f, 0x05, 0x1b, 0x46, 0x9d, 0x66, 0x1d, 0xe1, 0xe0, 0x69, 0x15, 0xb5, 0x99, 0xe2, 0x11, 0x46, 0x33, 0x19, 0xac, 0x1b, 0x7c, 0xa8, 0xa6, 0x09, 0x7f, 0x1b, 0xe4, 0x01, 0xd7, 0x0a, 0x71, 0xd0, 0xb5, 0x36, 0x55, 0xcd, 0xf9, 0xbe, 0xf7, 0x48, 0xd8, 0x86, 0xe0, 0x8e, 0xe7, 0xde, 0x2f, 0xa7, 0x81, 0xe9, 0x3e, 0xc4, 0x1a, 0x26, 0x01, 0xba, 0x9e, 0xa6, 0x73, 0x85, 0xe1, 0x98, 0x94, 0xfc, 0x9c, 0xd4, 0xb0, 0x17, 0x3a, 0xb2, 0x15, 0xf7, 0xb9, 0x6f, 0x23, 0xbc, 0x42, 0x06, 0x65, 0xd4, 0x6c, 0x75, 0x44, 0x7b, 0xf2, 0x00, 0xae, 0x3a, 0xc7, 0xb4, 0x2b, 0xd9, 0xb8, 0x57, 0xfd, 0x1c, 0x85, 0xcc, 0xe8, 0xea, 0x9c, 0x8d, 0x23, 0x45, 0xe4, 0x68, 0x7d, 0xd7, 0x0d, 0xf5, 0x9f, 0x51, 0x49, 0x51, 0x07, 0x35, 0xbb, 0x9c, 0x7b, 0x64, }; static const unsigned char ecdsa_secp521r1_sha512_10604_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10604_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10604 = { .name = "ecdsa_secp521r1_sha512_10604", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10604_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10604_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10604_sig, .siglen = 132, .result = 1, .comment = "s == 1, tcId is 201 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10605 for ECDSA, tcId is 202 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10605_pubkey[] = { 0x01, 0xaa, 0x9f, 0x3a, 0x89, 0x4b, 0x72, 0x7d, 0x7a, 0x01, 0xb0, 0x9c, 0x4f, 0x05, 0x1b, 0x46, 0x9d, 0x66, 0x1d, 0xe1, 0xe0, 0x69, 0x15, 0xb5, 0x99, 0xe2, 0x11, 0x46, 0x33, 0x19, 0xac, 0x1b, 0x7c, 0xa8, 0xa6, 0x09, 0x7f, 0x1b, 0xe4, 0x01, 0xd7, 0x0a, 0x71, 0xd0, 0xb5, 0x36, 0x55, 0xcd, 0xf9, 0xbe, 0xf7, 0x48, 0xd8, 0x86, 0xe0, 0x8e, 0xe7, 0xde, 0x2f, 0xa7, 0x81, 0xe9, 0x3e, 0xc4, 0x1a, 0x26, 0x01, 0xba, 0x9e, 0xa6, 0x73, 0x85, 0xe1, 0x98, 0x94, 0xfc, 0x9c, 0xd4, 0xb0, 0x17, 0x3a, 0xb2, 0x15, 0xf7, 0xb9, 0x6f, 0x23, 0xbc, 0x42, 0x06, 0x65, 0xd4, 0x6c, 0x75, 0x44, 0x7b, 0xf2, 0x00, 0xae, 0x3a, 0xc7, 0xb4, 0x2b, 0xd9, 0xb8, 0x57, 0xfd, 0x1c, 0x85, 0xcc, 0xe8, 0xea, 0x9c, 0x8d, 0x23, 0x45, 0xe4, 0x68, 0x7d, 0xd7, 0x0d, 0xf5, 0x9f, 0x51, 0x49, 0x51, 0x07, 0x35, 0xbb, 0x9c, 0x7b, 0x64, }; static const unsigned char ecdsa_secp521r1_sha512_10605_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10605_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10605 = { .name = "ecdsa_secp521r1_sha512_10605", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10605_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10605_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10605_sig, .siglen = 132, .result = -1, .comment = "s == 0, tcId is 202 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10606 for ECDSA, tcId is 203 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10606_pubkey[] = { 0x00, 0x2a, 0x07, 0xf1, 0x3f, 0x3e, 0x8d, 0xf3, 0x82, 0x14, 0x5b, 0x79, 0x42, 0xfe, 0x6f, 0x91, 0xc1, 0x2f, 0xf3, 0x06, 0x4b, 0x31, 0x4b, 0x4e, 0x34, 0x76, 0xbf, 0x3a, 0xfb, 0xb9, 0x82, 0x07, 0x0f, 0x17, 0xf6, 0x3b, 0x2d, 0xe5, 0xfb, 0xe8, 0xc9, 0x1a, 0x87, 0xae, 0x63, 0x28, 0x69, 0xfa, 0xcf, 0x17, 0xd5, 0xce, 0x9d, 0x13, 0x9b, 0x37, 0xed, 0x55, 0x75, 0x81, 0xbb, 0x9a, 0x7e, 0x4b, 0x8f, 0xa3, 0x00, 0x24, 0xb9, 0x04, 0xc5, 0xfc, 0x53, 0x6a, 0xe5, 0x3b, 0x32, 0x3a, 0x7f, 0xd0, 0xb7, 0xb8, 0xe4, 0x20, 0x30, 0x24, 0x06, 0xad, 0xe8, 0x4e, 0xa8, 0xa1, 0x0c, 0xa7, 0xc5, 0xc9, 0x34, 0xba, 0xd5, 0x48, 0x9d, 0xb6, 0xe3, 0xa8, 0xcc, 0x30, 0x64, 0x60, 0x2c, 0xc8, 0x3f, 0x30, 0x9e, 0x9d, 0x24, 0x7a, 0xae, 0x72, 0xaf, 0xca, 0x08, 0x33, 0x6b, 0xc8, 0x91, 0x9e, 0x15, 0xf4, 0xbe, 0x5a, 0xd7, 0x7a, }; static const unsigned char ecdsa_secp521r1_sha512_10606_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10606_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10606 = { .name = "ecdsa_secp521r1_sha512_10606", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10606_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10606_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10606_sig, .siglen = 132, .result = -1, .comment = "point at infinity during verify, tcId is 203 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10607 for ECDSA, tcId is 204 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10607_pubkey[] = { 0x00, 0x4b, 0xb9, 0x04, 0x07, 0x3c, 0xb6, 0xda, 0x9e, 0x50, 0x28, 0xdf, 0x54, 0xfc, 0x22, 0xcf, 0x5a, 0x9d, 0x5c, 0xa7, 0x3a, 0x01, 0xfe, 0xed, 0xd2, 0xb4, 0xce, 0x43, 0xb8, 0x7b, 0xfd, 0x43, 0x00, 0xa7, 0x2b, 0xdf, 0x26, 0xb1, 0x46, 0xb2, 0xe7, 0xb5, 0x06, 0xc0, 0x3c, 0x7a, 0x0a, 0xd4, 0xa7, 0xe3, 0xe6, 0x72, 0x04, 0xdd, 0xdc, 0xa9, 0xb6, 0x5d, 0x43, 0x56, 0x0f, 0xfa, 0xf9, 0xbf, 0xd5, 0x40, 0x01, 0x2b, 0x88, 0x95, 0x63, 0x2e, 0x04, 0x06, 0xb7, 0x84, 0x63, 0xfe, 0x1b, 0xc5, 0x36, 0x0a, 0x3c, 0xf7, 0x96, 0xfd, 0xdd, 0xa9, 0xdb, 0x2b, 0x18, 0xca, 0x91, 0x71, 0x55, 0x8e, 0x61, 0x58, 0xfa, 0x4b, 0x0b, 0x1d, 0x04, 0x61, 0xd9, 0xa4, 0x6b, 0x9b, 0x95, 0x8d, 0x62, 0x9b, 0xd6, 0x2a, 0x29, 0xee, 0x39, 0x42, 0x23, 0x8e, 0x0f, 0xa8, 0x3e, 0x93, 0x2a, 0x66, 0xab, 0xb1, 0xb5, 0x0c, 0x5f, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10607_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10607 = { .name = "ecdsa_secp521r1_sha512_10607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10607_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10607_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10607_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 204 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10608 for ECDSA, tcId is 205 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10608_pubkey[] = { 0x01, 0x64, 0x54, 0xaf, 0xca, 0x38, 0x5e, 0xb5, 0x3e, 0xae, 0xaa, 0xb7, 0x11, 0x53, 0x7d, 0x95, 0xc5, 0x0e, 0x01, 0x26, 0x8b, 0x10, 0x0a, 0x22, 0x65, 0x6a, 0xdf, 0x5c, 0xed, 0xf6, 0x8b, 0x4a, 0x78, 0xa6, 0xc1, 0x4a, 0x70, 0x24, 0x5d, 0xf7, 0x07, 0xf6, 0x56, 0x5c, 0xe1, 0x59, 0x48, 0xc2, 0xe3, 0x8e, 0x3d, 0x90, 0xe0, 0x5d, 0xda, 0x31, 0x88, 0xab, 0x43, 0xa7, 0x3f, 0x30, 0xdb, 0xc6, 0xbd, 0xa8, 0x01, 0x51, 0xdc, 0xa6, 0xdc, 0x5a, 0xec, 0x84, 0xfa, 0x35, 0xc7, 0x9f, 0x21, 0x36, 0x59, 0x93, 0xf0, 0xb2, 0x67, 0xca, 0x48, 0x6e, 0xa6, 0x6c, 0x21, 0x86, 0xa5, 0x2a, 0x3f, 0xb6, 0x2b, 0x53, 0x50, 0x1c, 0xe2, 0x82, 0x2d, 0x46, 0x91, 0xfb, 0xc2, 0x5c, 0xf2, 0x7a, 0xdb, 0x70, 0x73, 0x40, 0x71, 0xbe, 0x52, 0x3b, 0x92, 0x31, 0xdd, 0x8d, 0x33, 0xa4, 0x01, 0xde, 0xa0, 0x0c, 0xf0, 0xae, 0x30, 0xa1, }; static const unsigned char ecdsa_secp521r1_sha512_10608_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10608_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10608 = { .name = "ecdsa_secp521r1_sha512_10608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10608_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10608_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10608_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 205 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10609 for ECDSA, tcId is 206 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10609_pubkey[] = { 0x00, 0x60, 0xda, 0xf5, 0x96, 0x38, 0x15, 0x8e, 0xd9, 0xd3, 0xd7, 0xe8, 0x42, 0x85, 0x01, 0x33, 0x47, 0x64, 0x16, 0x2f, 0x9b, 0xe2, 0x39, 0xe1, 0x68, 0xfa, 0xe9, 0xaf, 0x34, 0x8c, 0x30, 0xa7, 0xbe, 0x1c, 0xfa, 0x4d, 0x96, 0x36, 0xc3, 0xbb, 0x62, 0x1d, 0x7e, 0x0a, 0xa7, 0x14, 0x46, 0xf8, 0xd4, 0xa3, 0x7f, 0x2d, 0x43, 0x27, 0x4a, 0x42, 0x55, 0xb2, 0x26, 0xf6, 0x12, 0x38, 0x2f, 0x63, 0x15, 0x2e, 0x01, 0x6e, 0x48, 0x30, 0x01, 0x24, 0xa6, 0x36, 0xb2, 0x06, 0xfa, 0xd4, 0xd0, 0x35, 0x58, 0x62, 0xa8, 0x52, 0x62, 0x37, 0x99, 0xaf, 0xee, 0x94, 0x1e, 0x86, 0x4d, 0x96, 0xdc, 0xbf, 0x55, 0xb8, 0x01, 0xca, 0xbd, 0x62, 0x49, 0xb6, 0xf5, 0x67, 0x50, 0x6d, 0x5a, 0x50, 0x3e, 0x7d, 0x03, 0xb4, 0x76, 0x4c, 0x70, 0xfc, 0x44, 0xc5, 0x36, 0x5f, 0x32, 0xc3, 0x60, 0x36, 0x78, 0x47, 0x6d, 0x62, 0xb0, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_10609_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10609_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10609 = { .name = "ecdsa_secp521r1_sha512_10609", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10609_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10609_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10609_sig, .siglen = 132, .result = 1, .comment = "u1 == 1, tcId is 206 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10610 for ECDSA, tcId is 207 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10610_pubkey[] = { 0x00, 0x51, 0xfe, 0x6a, 0x35, 0xa8, 0x50, 0x70, 0xc7, 0xc2, 0x95, 0x02, 0xa8, 0x76, 0x72, 0xa3, 0x81, 0x53, 0xd7, 0x99, 0xae, 0xf7, 0x34, 0x22, 0x6b, 0x64, 0xd8, 0xfd, 0x33, 0x98, 0x62, 0x17, 0x01, 0x11, 0x7f, 0x0a, 0xf9, 0xd9, 0xaf, 0xaf, 0x6d, 0xbb, 0x8c, 0xa3, 0x00, 0x72, 0x55, 0xdc, 0x79, 0xb0, 0xf4, 0x1e, 0xd5, 0x52, 0x51, 0x2c, 0xb2, 0x92, 0x07, 0xb1, 0x5a, 0x01, 0xcd, 0xfd, 0xfa, 0xae, 0x01, 0xa1, 0x6c, 0x61, 0x27, 0x75, 0x86, 0x35, 0x6e, 0xfa, 0xdc, 0xb2, 0x47, 0x64, 0xf2, 0x1f, 0x57, 0x4e, 0xf9, 0x6f, 0x2c, 0xaa, 0xbc, 0x3f, 0x47, 0xfa, 0x66, 0xfb, 0x87, 0x19, 0xd7, 0x78, 0x58, 0x24, 0x06, 0x1c, 0x2d, 0x6d, 0x7a, 0x4b, 0xcb, 0x85, 0x15, 0x40, 0xe6, 0x2b, 0x2f, 0x00, 0x96, 0x0b, 0x28, 0x3e, 0xac, 0x78, 0x08, 0xd1, 0x81, 0x3e, 0xf5, 0x1b, 0x46, 0xe1, 0x14, 0x9d, 0x3e, 0x4d, }; static const unsigned char ecdsa_secp521r1_sha512_10610_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10610_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10610 = { .name = "ecdsa_secp521r1_sha512_10610", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10610_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10610_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10610_sig, .siglen = 132, .result = 1, .comment = "u1 == n - 1, tcId is 207 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10611 for ECDSA, tcId is 208 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10611_pubkey[] = { 0x00, 0xb4, 0xff, 0xc0, 0xff, 0xf0, 0x87, 0x60, 0x7a, 0xd2, 0x6c, 0x4b, 0x23, 0xd6, 0xd3, 0x1a, 0xe5, 0xf9, 0x04, 0xcc, 0x06, 0x4e, 0x35, 0x0f, 0x47, 0x13, 0x1c, 0xe2, 0x78, 0x4f, 0xbb, 0x35, 0x98, 0x67, 0x98, 0x8a, 0x55, 0x9d, 0x43, 0x86, 0x75, 0x2e, 0x56, 0x27, 0x7b, 0xef, 0x34, 0xe2, 0x65, 0x44, 0xde, 0xdd, 0xa8, 0x8c, 0xc2, 0x0a, 0x34, 0x11, 0xfa, 0x98, 0x83, 0x4e, 0xea, 0xe8, 0x69, 0xad, 0x00, 0x9d, 0x6e, 0x8c, 0xa9, 0x99, 0x49, 0xb7, 0xb3, 0x4f, 0xd0, 0x6a, 0x78, 0x97, 0x44, 0xec, 0xac, 0x33, 0x56, 0x24, 0x73, 0x17, 0xc4, 0xd7, 0xaa, 0x92, 0x96, 0x67, 0x6d, 0xd6, 0x23, 0x59, 0x4f, 0x36, 0x84, 0xbc, 0x13, 0x06, 0x4c, 0xab, 0x8d, 0x2d, 0xb7, 0xed, 0xbc, 0xa9, 0x1f, 0x1c, 0x8b, 0xeb, 0x54, 0x2b, 0xc9, 0x79, 0x78, 0xa3, 0xf3, 0x1f, 0x36, 0x10, 0xa0, 0x3f, 0x46, 0xa9, 0x82, 0xd2, }; static const unsigned char ecdsa_secp521r1_sha512_10611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10611_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10611 = { .name = "ecdsa_secp521r1_sha512_10611", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10611_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10611_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10611_sig, .siglen = 132, .result = 1, .comment = "u2 == 1, tcId is 208 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10612 for ECDSA, tcId is 209 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10612_pubkey[] = { 0x00, 0x80, 0x9f, 0xba, 0x32, 0x0f, 0xe9, 0x6d, 0xed, 0x24, 0x61, 0x1b, 0x72, 0xa2, 0xa5, 0x42, 0x8f, 0xe4, 0x60, 0x49, 0xff, 0x08, 0x0d, 0x6e, 0x08, 0x13, 0xab, 0x7a, 0x35, 0x89, 0x70, 0x18, 0xfe, 0x64, 0x18, 0x61, 0x3a, 0xbd, 0x86, 0x0d, 0x1e, 0xb4, 0x84, 0x95, 0x90, 0x59, 0xa0, 0x1a, 0xf7, 0xd6, 0x8c, 0xba, 0x69, 0xd1, 0xc5, 0x2e, 0xa6, 0x4a, 0xd0, 0xf2, 0x8a, 0x18, 0xa4, 0x1f, 0xc7, 0x8a, 0x01, 0x10, 0x8a, 0xcc, 0x55, 0x77, 0xe9, 0xe8, 0x96, 0x2e, 0x2a, 0x7c, 0xea, 0x0b, 0xb3, 0x7d, 0xf1, 0xd0, 0xca, 0x40, 0x50, 0xfb, 0x6c, 0xfe, 0xba, 0x41, 0xa7, 0xf8, 0x68, 0xd9, 0x88, 0xdb, 0xbc, 0xeb, 0xc9, 0x62, 0x98, 0x67, 0x48, 0xfa, 0x48, 0x51, 0x83, 0xf6, 0xb6, 0x0f, 0x45, 0x3e, 0xc8, 0x60, 0x6f, 0x8c, 0x33, 0xd4, 0x37, 0x67, 0xdd, 0xdb, 0xbe, 0xf8, 0xc4, 0x12, 0xb2, 0xc3, 0x79, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10612_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10612_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10612 = { .name = "ecdsa_secp521r1_sha512_10612", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10612_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10612_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10612_sig, .siglen = 132, .result = 1, .comment = "u2 == n - 1, tcId is 209 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10613 for ECDSA, tcId is 210 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10613_pubkey[] = { 0x01, 0x45, 0x13, 0x0d, 0xca, 0x77, 0xd9, 0x67, 0x4d, 0xfc, 0xef, 0xfa, 0x85, 0x1b, 0x4a, 0x26, 0x72, 0xe4, 0x90, 0xe8, 0xfb, 0xa8, 0x27, 0x76, 0x22, 0xb0, 0x02, 0x0e, 0x2f, 0xe9, 0x10, 0x1e, 0x76, 0x93, 0x3b, 0x0c, 0x01, 0xd2, 0x48, 0x07, 0x1f, 0x85, 0x4e, 0x9b, 0xc5, 0x23, 0x73, 0x39, 0x36, 0xdc, 0x0b, 0x99, 0x30, 0xcb, 0xe1, 0x54, 0xb9, 0xa4, 0x02, 0xf6, 0x81, 0xee, 0x3c, 0x6c, 0xef, 0x6b, 0x00, 0x0d, 0x0c, 0x94, 0xb2, 0xad, 0x28, 0x55, 0x66, 0x43, 0xaa, 0x3d, 0x27, 0x52, 0x30, 0x48, 0xd2, 0x27, 0xa1, 0xde, 0x82, 0xf8, 0xa6, 0x64, 0x70, 0x7e, 0x75, 0x39, 0x4d, 0x21, 0xda, 0x18, 0x1b, 0xec, 0x82, 0xe1, 0xaf, 0xb0, 0xe6, 0x27, 0x53, 0x95, 0x31, 0xaf, 0xfa, 0x84, 0x9a, 0x24, 0x09, 0xbc, 0xac, 0x83, 0xfb, 0x78, 0x6c, 0x35, 0x1c, 0x88, 0xba, 0xc2, 0xfb, 0x2e, 0x43, 0x22, 0xe5, 0x4a, }; static const unsigned char ecdsa_secp521r1_sha512_10613_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10613_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x55, 0x6b, 0xfd, 0x55, 0xa9, 0x4e, 0x53, 0x0b, 0xd9, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0xc3, 0x44, 0x81, 0xae, 0xbd, 0xc4, 0x66, 0x80, 0xdc, 0x66, 0x72, 0x3a, 0xb6, 0x60, 0x56, 0x27, 0x5d, 0x82, 0xbf, 0xf8, 0x5a, 0xd2, 0x9a, 0xc6, 0x94, 0x53, 0x0b, 0xb2, 0xf8, 0x9c, 0x36, 0xce, 0x60, 0x0a, 0xd1, 0xb4, 0x97, 0x61, 0x85, 0x4a, 0xfc, 0x69, 0xab, 0x74, 0x1c, 0xe0, 0x29, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10613 = { .name = "ecdsa_secp521r1_sha512_10613", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10613_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10613_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10613_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 210 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10614 for ECDSA, tcId is 211 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10614_pubkey[] = { 0x00, 0xed, 0x3e, 0x09, 0x80, 0x9f, 0xe5, 0x98, 0x58, 0x18, 0xf9, 0x05, 0x92, 0xfd, 0x06, 0xe7, 0x1d, 0x2c, 0x49, 0x3d, 0x9a, 0x78, 0x17, 0x14, 0xc9, 0x15, 0x7c, 0xba, 0xfa, 0x5b, 0xa1, 0x96, 0xb9, 0x87, 0xfd, 0x49, 0xae, 0x24, 0x27, 0x4c, 0x76, 0x25, 0x1c, 0x70, 0xb9, 0xf7, 0x97, 0x0f, 0x1f, 0x71, 0x3a, 0xd2, 0x74, 0x59, 0x0a, 0x70, 0x2f, 0x46, 0x3c, 0x73, 0xa0, 0x70, 0x48, 0x31, 0xce, 0x5d, 0x00, 0xca, 0xc2, 0x78, 0x29, 0x70, 0x93, 0xbd, 0x9f, 0x9a, 0xc2, 0xd0, 0x0b, 0xef, 0x3d, 0x67, 0xa0, 0x1b, 0x43, 0xb2, 0x8b, 0x9f, 0x82, 0x94, 0x07, 0x26, 0x4c, 0x73, 0x81, 0x17, 0x43, 0x83, 0x00, 0xc7, 0x70, 0x47, 0x72, 0x97, 0x69, 0x16, 0xea, 0x10, 0x2a, 0x77, 0x62, 0x62, 0xcc, 0xf4, 0x22, 0x2c, 0xc3, 0x48, 0xc3, 0x4a, 0xac, 0x68, 0x3d, 0x8f, 0x00, 0x17, 0x9a, 0x34, 0x83, 0x23, 0xba, 0xbd, }; static const unsigned char ecdsa_secp521r1_sha512_10614_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10614_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xdc, 0xf9, 0xe7, 0xf4, 0x41, 0x44, 0x8a, 0x12, 0x5b, 0x96, 0xd7, 0x2b, 0x98, 0x9d, 0x9f, 0x4d, 0xac, 0x75, 0x08, 0xc7, 0xe0, 0x36, 0xf6, 0x08, 0x0d, 0x47, 0x58, 0xe7, 0x36, 0xf5, 0xe0, 0x63, 0x6b, 0x0f, 0xf5, 0x03, 0xf1, 0x28, 0xa9, 0x8d, 0x08, 0xe0, 0xae, 0x18, 0x99, 0x21, 0x06, 0x52, 0x19, 0xd2, 0xcc, 0x3a, 0xa8, 0x3e, 0x3c, 0x66, 0x0c, 0xa0, 0xcb, 0x85, 0xe7, 0xc1, 0x1a, 0x24, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10614 = { .name = "ecdsa_secp521r1_sha512_10614", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10614_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10614_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10614_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 211 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10615 for ECDSA, tcId is 212 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10615_pubkey[] = { 0x00, 0x0a, 0xc2, 0xc5, 0xa4, 0xc7, 0x93, 0x09, 0xa5, 0x13, 0x2d, 0x5d, 0x74, 0x94, 0xbe, 0xfb, 0x39, 0x05, 0xd3, 0x3f, 0xda, 0x5f, 0x80, 0xee, 0xaf, 0x63, 0x77, 0x51, 0x83, 0xaa, 0xe7, 0xaf, 0x10, 0x8a, 0x3d, 0x97, 0xf3, 0xa4, 0x41, 0x53, 0x2c, 0xf6, 0xfa, 0xc4, 0x7f, 0x6c, 0x89, 0x83, 0x29, 0xd6, 0x91, 0x82, 0xe1, 0xfa, 0x07, 0xce, 0x45, 0x99, 0x7e, 0xbe, 0xc3, 0x78, 0x1c, 0x9a, 0xd7, 0x41, 0x01, 0x73, 0xa5, 0xb6, 0xb8, 0x0a, 0x8b, 0x73, 0xd3, 0x0a, 0xc9, 0x7e, 0x1a, 0x4a, 0xac, 0xb7, 0x73, 0xc1, 0xad, 0x69, 0x2c, 0x5e, 0xa6, 0x3f, 0x68, 0xe3, 0x73, 0x84, 0x27, 0x82, 0xbd, 0x67, 0x78, 0x64, 0xff, 0x65, 0x6c, 0xf8, 0xd1, 0xe6, 0xec, 0x1e, 0x58, 0xe9, 0xa8, 0x38, 0x56, 0xef, 0x92, 0x67, 0x75, 0x55, 0x91, 0x67, 0x49, 0xfb, 0x95, 0xe8, 0x00, 0xae, 0x2e, 0x01, 0x16, 0x18, 0xca, 0x3a, }; static const unsigned char ecdsa_secp521r1_sha512_10615_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10615_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x66, 0xeb, 0x57, 0x73, 0x3c, 0x19, 0xa7, 0x00, 0x3c, 0xf8, 0x25, 0x32, 0x79, 0xfc, 0xe4, 0x19, 0x07, 0xbc, 0x4f, 0x12, 0x71, 0x53, 0xc4, 0x57, 0x6d, 0xd4, 0x81, 0x4f, 0x8b, 0x33, 0x5a, 0x0b, 0x51, 0x56, 0x0b, 0x44, 0x47, 0xf0, 0x38, 0x2c, 0x69, 0xb3, 0xfe, 0x50, 0x95, 0x22, 0xc8, 0x91, 0xf0, 0xee, 0xc3, 0x99, 0x9a, 0xd2, 0x52, 0x68, 0x35, 0xf3, 0x3a, 0xe2, 0x2a, 0x64, 0x28, 0x43, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10615 = { .name = "ecdsa_secp521r1_sha512_10615", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10615_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10615_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10615_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 212 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10616 for ECDSA, tcId is 213 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10616_pubkey[] = { 0x01, 0xeb, 0x2a, 0x35, 0x3d, 0xec, 0x6b, 0x46, 0x0f, 0xbd, 0xa4, 0x9c, 0x67, 0xf4, 0x31, 0x19, 0x0f, 0xff, 0x6f, 0x19, 0x56, 0x39, 0xc2, 0x26, 0xef, 0x8f, 0xef, 0xcb, 0xf1, 0x91, 0xd7, 0x25, 0x29, 0xa1, 0x2c, 0xc5, 0x48, 0x5b, 0x28, 0x2a, 0x52, 0x70, 0x4c, 0x1f, 0xd8, 0x45, 0x29, 0xa1, 0xaa, 0x0a, 0xd7, 0x94, 0xf9, 0x64, 0x93, 0xe2, 0x99, 0x71, 0x8d, 0x26, 0x18, 0xa1, 0xb8, 0x3a, 0x52, 0x6c, 0x01, 0xf7, 0x04, 0x60, 0x4d, 0x5b, 0x2b, 0x94, 0xa4, 0x2b, 0xfc, 0x3a, 0xb9, 0x33, 0x17, 0xd6, 0x6a, 0x54, 0xde, 0x15, 0x25, 0x83, 0x37, 0x43, 0x3f, 0xc9, 0x6a, 0x96, 0x5d, 0x8e, 0x2d, 0x05, 0x6f, 0xd1, 0x13, 0x4b, 0x79, 0x89, 0xd7, 0xb3, 0xf7, 0x09, 0xad, 0xc2, 0x82, 0x27, 0xbd, 0xab, 0xc1, 0x1f, 0xe2, 0xf3, 0x59, 0xc6, 0xa6, 0xe5, 0x11, 0x1a, 0xb4, 0x33, 0x79, 0xca, 0x25, 0xb6, 0x6f, 0x2f, }; static const unsigned char ecdsa_secp521r1_sha512_10616_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10616_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x71, 0x06, 0xd1, 0x13, 0x1b, 0x33, 0x00, 0xd7, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x79, 0x52, 0x7a, 0xc0, 0x9f, 0x0a, 0x3f, 0x0a, 0x8a, 0xa3, 0x82, 0x85, 0x58, 0x5b, 0x6a, 0xfc, 0xea, 0xc5, 0xff, 0x66, 0x92, 0x84, 0x22, 0x32, 0xd1, 0x06, 0xd1, 0x5d, 0x4d, 0xf1, 0xb6, 0x6a, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10616 = { .name = "ecdsa_secp521r1_sha512_10616", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10616_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10616_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10616_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 213 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10617 for ECDSA, tcId is 214 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10617_pubkey[] = { 0x01, 0xe4, 0x3d, 0xfe, 0xcc, 0x7e, 0x6c, 0xaa, 0xd0, 0x3d, 0x17, 0xb4, 0x07, 0x32, 0x2c, 0x87, 0x8f, 0x70, 0x1c, 0x5a, 0xdd, 0x6e, 0xb2, 0xaf, 0xcd, 0x78, 0x6f, 0xf3, 0x80, 0x36, 0x22, 0xdf, 0xbb, 0x6b, 0xaa, 0x01, 0x24, 0x6e, 0x1e, 0xa0, 0x59, 0xf7, 0xb7, 0x88, 0x42, 0x91, 0x9b, 0x25, 0x07, 0xda, 0xa9, 0xe3, 0x43, 0x4e, 0xfa, 0x7e, 0x8d, 0x3a, 0xe6, 0xc3, 0x54, 0x99, 0xf8, 0x2d, 0x0a, 0xc8, 0x01, 0x8b, 0x0e, 0x4d, 0x63, 0x78, 0x22, 0x2a, 0x07, 0xcc, 0xdb, 0x42, 0x14, 0x00, 0x1f, 0x97, 0xb1, 0xa5, 0x03, 0xd1, 0xaa, 0xc3, 0xab, 0x92, 0x5e, 0xa6, 0x4f, 0xaa, 0x9c, 0x73, 0x9b, 0xa0, 0x4e, 0xe3, 0x48, 0x0b, 0x14, 0x7c, 0xb0, 0x7f, 0x93, 0xed, 0xf4, 0x0b, 0x68, 0x56, 0xa2, 0x2f, 0x41, 0x59, 0xc3, 0xf5, 0xcd, 0x6c, 0x9e, 0x71, 0x65, 0x45, 0x29, 0x07, 0xc8, 0xd0, 0x2f, 0xab, 0x20, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10617_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10617_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x6d, 0x11, 0x31, 0xb3, 0x30, 0x0d, 0x7f, 0xfb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x75, 0x08, 0x6a, 0x43, 0x25, 0x2f, 0xb4, 0x3b, 0x63, 0x27, 0xaf, 0x3c, 0x6b, 0x2c, 0xc7, 0xd6, 0xab, 0x94, 0xbf, 0x49, 0x6f, 0x53, 0xea, 0x22, 0x9e, 0x7f, 0xe6, 0xb4, 0x56, 0x08, 0x8e, 0xa3, 0x2f, 0x6e, 0x2b, 0x10, 0x4f, 0x51, 0x12, 0x79, 0x8b, 0xb5, 0x9d, 0x46, 0xa0, 0xd4, 0x68, 0xf8, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10617 = { .name = "ecdsa_secp521r1_sha512_10617", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10617_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10617_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10617_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 214 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10618 for ECDSA, tcId is 215 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10618_pubkey[] = { 0x01, 0x41, 0xa4, 0xd7, 0x14, 0x62, 0x8c, 0x19, 0x2b, 0x8a, 0xce, 0x1a, 0x42, 0x85, 0x4d, 0xa0, 0x6e, 0x0e, 0x1d, 0xdb, 0x82, 0xa0, 0x76, 0x18, 0xe4, 0xef, 0xb0, 0x5d, 0x70, 0x95, 0xcd, 0x1e, 0xb6, 0x54, 0x25, 0x07, 0x81, 0x60, 0x59, 0x47, 0x15, 0xea, 0xf5, 0x9f, 0xcb, 0x41, 0xc9, 0xe5, 0x73, 0xfe, 0x10, 0x29, 0x8c, 0x75, 0xc9, 0xe9, 0x13, 0x5c, 0x77, 0x5c, 0xa7, 0x3f, 0x63, 0xd1, 0x3a, 0xac, 0x00, 0x89, 0x52, 0x4b, 0x47, 0x51, 0x70, 0xd4, 0x39, 0x1c, 0xc0, 0x32, 0xa0, 0x54, 0x3e, 0xa2, 0x2d, 0xab, 0x60, 0xea, 0x07, 0x53, 0x8f, 0x3a, 0x37, 0x60, 0x7f, 0x0d, 0x4e, 0xd5, 0x16, 0x63, 0x4f, 0xde, 0x54, 0x5e, 0x2f, 0x0a, 0x6b, 0xa8, 0xd0, 0xd2, 0xfe, 0x6a, 0xde, 0xd0, 0xa7, 0x71, 0xb4, 0xb1, 0x34, 0xa5, 0xa2, 0x80, 0xe5, 0x47, 0x99, 0xfa, 0x47, 0x6e, 0xf0, 0xec, 0x87, 0xd4, 0x4e, 0x1c, }; static const unsigned char ecdsa_secp521r1_sha512_10618_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10618_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xda, 0x22, 0x63, 0x66, 0x60, 0x1a, 0xff, 0xf7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xea, 0x10, 0xd4, 0x86, 0x4a, 0x5f, 0x68, 0x76, 0xc6, 0x4f, 0x5e, 0x78, 0xd6, 0x59, 0x8f, 0xad, 0x57, 0x29, 0x7e, 0x92, 0xde, 0xa7, 0xd4, 0x45, 0x3c, 0xff, 0xcd, 0x68, 0xac, 0x11, 0x1d, 0x46, 0x5e, 0xdc, 0x56, 0x20, 0x9e, 0xa2, 0x24, 0xf3, 0x17, 0x6b, 0x3a, 0x8d, 0x41, 0xa8, 0xd1, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10618 = { .name = "ecdsa_secp521r1_sha512_10618", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10618_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10618_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10618_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 215 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10619 for ECDSA, tcId is 216 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10619_pubkey[] = { 0x01, 0x47, 0xfb, 0xcc, 0x65, 0xd4, 0x81, 0x8e, 0x02, 0x9e, 0x0a, 0x3a, 0xf1, 0x3a, 0x1f, 0x7c, 0x90, 0xf0, 0x60, 0x5a, 0x00, 0xcd, 0x07, 0x81, 0x20, 0x0e, 0xb6, 0x56, 0xa5, 0x91, 0xd6, 0x69, 0xa7, 0x87, 0x62, 0x0e, 0x6f, 0xc8, 0xcc, 0x59, 0x4a, 0xa2, 0x8a, 0x0b, 0x0f, 0x29, 0x39, 0xec, 0x73, 0x47, 0x2c, 0x49, 0x4e, 0x09, 0xce, 0xca, 0xf5, 0xf3, 0x31, 0xda, 0xfd, 0x32, 0xd5, 0xac, 0x31, 0xc3, 0x00, 0x75, 0x43, 0x2b, 0xda, 0xee, 0xca, 0xa0, 0xbe, 0xc7, 0xfe, 0xdd, 0xc2, 0x98, 0xc5, 0x65, 0x72, 0x3f, 0xb6, 0x69, 0xee, 0x76, 0xe3, 0x8a, 0x4c, 0x5f, 0xf1, 0x70, 0x1f, 0x1b, 0x38, 0xcd, 0xa9, 0xdc, 0x9a, 0xc4, 0x3b, 0xff, 0x18, 0xda, 0x20, 0x47, 0xe4, 0xdc, 0xd8, 0x0c, 0x05, 0xa7, 0xbb, 0x7e, 0x74, 0x64, 0x82, 0x9d, 0x60, 0x8b, 0x68, 0x17, 0x6b, 0x04, 0xc8, 0x7f, 0x40, 0x9f, 0x46, 0xd6, }; static const unsigned char ecdsa_secp521r1_sha512_10619_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10619_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x1b, 0x33, 0x00, 0xd7, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4c, 0xb8, 0x5d, 0xf5, 0xe6, 0xc1, 0x12, 0x53, 0x94, 0xfc, 0xd3, 0x4f, 0x65, 0x21, 0xff, 0xda, 0xdd, 0xd9, 0x8f, 0x88, 0xa9, 0x9f, 0xed, 0xce, 0xdd, 0x93, 0x84, 0x28, 0x8b, 0xb7, 0x93, 0xcf, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10619 = { .name = "ecdsa_secp521r1_sha512_10619", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10619_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10619_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10619_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 216 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10620 for ECDSA, tcId is 217 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10620_pubkey[] = { 0x00, 0xb5, 0xb1, 0xc3, 0x99, 0x85, 0x89, 0xb2, 0x5c, 0x96, 0xa7, 0x00, 0xbb, 0xd4, 0x50, 0xd0, 0x4d, 0xa1, 0xf2, 0x73, 0xdf, 0x80, 0x53, 0x76, 0x7a, 0x3b, 0x03, 0xed, 0x1a, 0x76, 0x3e, 0xd0, 0x89, 0xc0, 0xde, 0x99, 0xbc, 0xf5, 0x4d, 0x49, 0xc1, 0x52, 0x0d, 0x3a, 0x09, 0xb8, 0x45, 0x29, 0x6f, 0x04, 0x45, 0xb3, 0xbd, 0x5b, 0x87, 0x91, 0x8d, 0x37, 0x52, 0xcf, 0x65, 0x1e, 0x0f, 0xf3, 0x00, 0x7b, 0x00, 0xe8, 0x96, 0x38, 0x08, 0x76, 0xb9, 0x41, 0x9c, 0x56, 0x09, 0x69, 0x14, 0xff, 0x6e, 0xec, 0x01, 0xae, 0xe2, 0x47, 0xee, 0xfe, 0xf0, 0x74, 0x18, 0x95, 0xf1, 0x4e, 0xe2, 0x80, 0xf3, 0x60, 0xe1, 0x15, 0x08, 0xc3, 0x78, 0x26, 0xaf, 0x82, 0xcd, 0x91, 0x5b, 0x90, 0x02, 0xf0, 0x46, 0xcb, 0x51, 0x00, 0x8d, 0x9e, 0xad, 0x21, 0x12, 0x4c, 0x59, 0x1b, 0xd8, 0x26, 0x5d, 0x14, 0x92, 0xb3, 0x5f, 0xfb, }; static const unsigned char ecdsa_secp521r1_sha512_10620_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10620_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x61, 0xbe, 0x37, 0xed, 0x5f, 0x74, 0x8e, 0x06, 0xa8, 0x9d, 0x72, 0xc4, 0xb7, 0x05, 0x1c, 0xae, 0x80, 0x9d, 0x95, 0x67, 0x84, 0x8b, 0x1d, 0x8d, 0x7e, 0xd0, 0x19, 0x22, 0x1e, 0xfb, 0x06, 0xae, 0x81, 0xe1, 0x26, 0x4c, 0xe4, 0x9c, 0x5d, 0x29, 0xee, 0x5f, 0xe2, 0x2c, 0xcf, 0x70, 0x89, 0x90, 0x02, 0x64, 0x3a, 0xca, 0x7b, 0x99, 0xf5, 0x77, 0x56, 0xf2, 0x63, 0x9b, 0x6d, 0x45, 0x9a, 0xe4, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10620 = { .name = "ecdsa_secp521r1_sha512_10620", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10620_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10620_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10620_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 217 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10621 for ECDSA, tcId is 218 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10621_pubkey[] = { 0x01, 0xaa, 0xdb, 0x41, 0xfa, 0xdc, 0x35, 0xcf, 0x6d, 0x11, 0xa7, 0xc7, 0xd0, 0x1d, 0x04, 0x9b, 0x74, 0xb3, 0x76, 0x77, 0xf0, 0x4e, 0x1b, 0xd3, 0xdc, 0x08, 0x45, 0x0f, 0xab, 0xae, 0x28, 0xad, 0xcd, 0x2d, 0x13, 0x5f, 0x96, 0x66, 0x16, 0xd2, 0x83, 0xfb, 0x18, 0xa5, 0xe6, 0x9e, 0xab, 0xfe, 0x7e, 0xc4, 0x1e, 0x1a, 0x0e, 0xdb, 0x36, 0x82, 0xf1, 0xd3, 0x9f, 0x2a, 0xf6, 0x4a, 0x94, 0xd6, 0x02, 0xb9, 0x01, 0x4a, 0xe8, 0x1e, 0xbf, 0x5e, 0x3d, 0x2d, 0x05, 0x29, 0x47, 0x9d, 0x4a, 0xe8, 0xeb, 0x05, 0xf4, 0xb4, 0x2e, 0x51, 0x96, 0x08, 0x46, 0x6a, 0xd6, 0x9e, 0x76, 0x62, 0xd6, 0xe9, 0xb2, 0x36, 0x76, 0x5f, 0x9b, 0xe5, 0x35, 0xc0, 0x58, 0xf0, 0x0f, 0x08, 0x66, 0xbb, 0xb4, 0xb1, 0x72, 0xef, 0x47, 0xa0, 0x3c, 0xb9, 0x7c, 0x58, 0xdd, 0xe5, 0x75, 0x03, 0x44, 0xbb, 0x29, 0x30, 0x35, 0xf8, 0xe9, 0x7e, }; static const unsigned char ecdsa_secp521r1_sha512_10621_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10621_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xe9, 0xbb, 0xbd, 0x64, 0x27, 0x0b, 0x96, 0x68, 0xf7, 0x62, 0x3e, 0xf7, 0xcb, 0xea, 0xd5, 0x48, 0x3e, 0xb0, 0x7b, 0x88, 0x3c, 0xf3, 0x9f, 0xb6, 0x88, 0x4a, 0xab, 0x67, 0xda, 0xc7, 0x95, 0x8b, 0x0e, 0x03, 0x14, 0x43, 0x57, 0xb9, 0x43, 0x3e, 0x69, 0xad, 0xc6, 0x96, 0xc8, 0x6c, 0x63, 0xa2, 0x3d, 0x35, 0x72, 0x4c, 0xbd, 0x74, 0x9b, 0x7c, 0x34, 0xf8, 0xe3, 0x42, 0x32, 0xd2, 0x1e, 0xa4, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10621 = { .name = "ecdsa_secp521r1_sha512_10621", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10621_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10621_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10621_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 218 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10622 for ECDSA, tcId is 219 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10622_pubkey[] = { 0x01, 0xb7, 0x06, 0xfc, 0x3f, 0x4a, 0xae, 0x5b, 0x86, 0xda, 0x26, 0x1a, 0x66, 0xfb, 0xce, 0x47, 0xeb, 0x3b, 0x3e, 0x1e, 0x91, 0x54, 0x4a, 0x40, 0xa9, 0x98, 0x9f, 0xcc, 0xf7, 0x41, 0x54, 0xbb, 0xec, 0xac, 0x04, 0x2d, 0xbb, 0xbf, 0x41, 0x1a, 0x39, 0x09, 0x00, 0x58, 0xb6, 0x2c, 0x46, 0xfc, 0xcd, 0x1d, 0x5e, 0xab, 0xa0, 0xc4, 0x87, 0x9a, 0x68, 0x8e, 0xa5, 0xfd, 0x0a, 0x7b, 0x4f, 0x9a, 0x0b, 0x4f, 0x01, 0xed, 0xa0, 0x19, 0x30, 0xc6, 0xb2, 0x27, 0x45, 0xa9, 0x7f, 0x2d, 0x59, 0xe1, 0x82, 0x59, 0x8d, 0xfd, 0xfb, 0xfd, 0xb4, 0x63, 0x33, 0x52, 0x93, 0x90, 0x1d, 0xe7, 0xfc, 0x9d, 0x49, 0xcf, 0x55, 0xed, 0x7f, 0xcf, 0x5d, 0x76, 0x7d, 0x4c, 0x22, 0xf8, 0x9f, 0x17, 0x1b, 0x41, 0x37, 0xc8, 0x41, 0x5c, 0x3e, 0xd4, 0x38, 0x08, 0x92, 0x70, 0xc4, 0x1f, 0x88, 0xea, 0xde, 0xf3, 0x01, 0x81, 0x40, 0xe1, }; static const unsigned char ecdsa_secp521r1_sha512_10622_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10622_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x92, 0x44, 0x49, 0xb6, 0xc9, 0x6f, 0x37, 0x58, 0xe3, 0xb0, 0x85, 0xc0, 0x79, 0x71, 0x4f, 0x11, 0xf2, 0x8d, 0x03, 0x9b, 0x11, 0x69, 0x9f, 0x0e, 0x9b, 0x3e, 0x7c, 0x55, 0x3c, 0x8f, 0xc6, 0xc8, 0xf5, 0x21, 0x2f, 0xec, 0x5e, 0xac, 0x30, 0x68, 0x71, 0x3b, 0x8e, 0xc7, 0x2f, 0xc6, 0xe2, 0xa9, 0x08, 0x72, 0xb9, 0x4e, 0x16, 0x1a, 0x89, 0x82, 0x28, 0x87, 0xf4, 0xa9, 0xbd, 0x5c, 0x9e, 0xfd, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10622 = { .name = "ecdsa_secp521r1_sha512_10622", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10622_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10622_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10622_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 219 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10623 for ECDSA, tcId is 220 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10623_pubkey[] = { 0x00, 0x58, 0xa1, 0xfa, 0x96, 0x11, 0x1b, 0xf3, 0x0b, 0xe7, 0x6c, 0x3b, 0x8b, 0xa4, 0x43, 0x56, 0x66, 0x67, 0x7b, 0x6d, 0xd0, 0x50, 0x31, 0xb5, 0xc4, 0xa8, 0x40, 0xe1, 0xea, 0x81, 0xf6, 0x02, 0x5f, 0x70, 0xe1, 0xd3, 0x95, 0xef, 0x63, 0xcb, 0x59, 0xfa, 0x71, 0xe3, 0x67, 0x4c, 0xb6, 0x78, 0xf7, 0x25, 0x08, 0x87, 0xf5, 0xd7, 0x34, 0xe3, 0xec, 0x37, 0x7d, 0xbe, 0x3a, 0xe6, 0x37, 0xd2, 0x4f, 0x82, 0x00, 0x7a, 0x4e, 0xaf, 0x02, 0xcc, 0x57, 0xe6, 0x58, 0xb5, 0xb9, 0xfa, 0x08, 0xee, 0x30, 0xe0, 0xef, 0x5b, 0x34, 0x29, 0xbb, 0x5a, 0x10, 0x43, 0x8b, 0x0e, 0x05, 0xba, 0xca, 0xeb, 0xc6, 0x03, 0x17, 0x01, 0x0a, 0x33, 0x4d, 0x7f, 0x89, 0x60, 0x28, 0xae, 0xf6, 0x20, 0xf5, 0xd9, 0xc7, 0xca, 0xbc, 0x38, 0x30, 0x6e, 0x03, 0x2b, 0x1b, 0x91, 0xc2, 0x37, 0x6c, 0x3f, 0xef, 0x3e, 0x45, 0x5a, 0x10, 0xdf, }; static const unsigned char ecdsa_secp521r1_sha512_10623_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10623_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x55, 0x4a, 0x01, 0x55, 0x2b, 0x58, 0xd6, 0x7a, 0x13, 0x46, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xe0, 0x9e, 0x5d, 0xbf, 0x28, 0xa1, 0x1d, 0xcc, 0xbf, 0x91, 0xcc, 0xc6, 0xe2, 0xa4, 0xcf, 0xd4, 0xe6, 0xa2, 0xc5, 0x27, 0x87, 0x91, 0xc6, 0x49, 0x08, 0x35, 0xa2, 0x7b, 0x6f, 0x7a, 0xbb, 0x8a, 0x69, 0x0b, 0xb0, 0x60, 0xde, 0x3d, 0xeb, 0x85, 0x09, 0x3d, 0x3a, 0xe1, 0x64, 0x82, 0xc8, 0x4f, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10623 = { .name = "ecdsa_secp521r1_sha512_10623", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10623_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10623_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10623_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10624 for ECDSA, tcId is 221 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10624_pubkey[] = { 0x00, 0x30, 0x3b, 0xa5, 0xef, 0x90, 0xb0, 0x51, 0x10, 0x00, 0x2f, 0xdf, 0x74, 0xd2, 0xb8, 0xd4, 0xc7, 0xab, 0x18, 0x9c, 0x64, 0x00, 0x48, 0x59, 0xc6, 0x9d, 0x7c, 0x47, 0x30, 0xfc, 0xac, 0xb5, 0xf4, 0xd9, 0xb7, 0x61, 0xae, 0x98, 0x7d, 0x1f, 0x3b, 0x63, 0xbb, 0x3e, 0xcb, 0x78, 0xae, 0xec, 0xf4, 0xa0, 0x4f, 0xf6, 0x0f, 0x5f, 0x36, 0x7a, 0x96, 0xac, 0x2d, 0xa8, 0xda, 0x27, 0xa3, 0x68, 0x7a, 0x3e, 0x00, 0x66, 0x73, 0xd0, 0xd4, 0xcc, 0xd4, 0xc3, 0xce, 0x1a, 0xbc, 0x99, 0x80, 0xfd, 0x18, 0x85, 0x00, 0x2c, 0x3e, 0x7b, 0x86, 0x07, 0x82, 0x14, 0xca, 0xf7, 0xf0, 0x96, 0x2f, 0xa5, 0x1e, 0x11, 0x63, 0x63, 0x03, 0x2d, 0x7a, 0x1b, 0x93, 0xc9, 0x2a, 0x4d, 0x62, 0x82, 0x75, 0x49, 0xd5, 0xa3, 0x3e, 0x4e, 0x6b, 0x9b, 0x6c, 0x2a, 0xb6, 0xad, 0x9c, 0x2a, 0x15, 0xe4, 0x10, 0xc5, 0xb1, 0xa8, 0x46, 0xb2, }; static const unsigned char ecdsa_secp521r1_sha512_10624_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10624_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xaa, 0x94, 0x02, 0xaa, 0x56, 0xb1, 0xac, 0xf4, 0x26, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc1, 0x3c, 0xbb, 0x7e, 0x51, 0x42, 0x3b, 0x99, 0x7f, 0x23, 0x99, 0x8d, 0xc5, 0x49, 0x9f, 0xa9, 0xd2, 0xf4, 0x03, 0xc7, 0x8b, 0x64, 0x5c, 0xfb, 0xa4, 0xeb, 0x78, 0xf5, 0x95, 0xfe, 0x6d, 0x6f, 0x01, 0xdb, 0xaa, 0xf8, 0x03, 0xf2, 0x3a, 0xc2, 0x63, 0xbf, 0x06, 0x0b, 0xaa, 0x74, 0x58, 0x3a, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10624 = { .name = "ecdsa_secp521r1_sha512_10624", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10624_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10624_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10624_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10625 for ECDSA, tcId is 222 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10625_pubkey[] = { 0x00, 0xa9, 0x4e, 0xea, 0x84, 0x3a, 0x5c, 0x49, 0x63, 0x70, 0x41, 0x59, 0x8e, 0x30, 0xc3, 0x81, 0xf7, 0x17, 0x3b, 0xf8, 0xcd, 0x12, 0x7f, 0x3c, 0xaf, 0x5c, 0x16, 0xcb, 0xc7, 0x28, 0xaa, 0x4d, 0x99, 0x17, 0x3f, 0xb3, 0x8d, 0x6a, 0x1b, 0x1e, 0xc2, 0x1e, 0x40, 0x33, 0x6e, 0x8d, 0x80, 0x22, 0x49, 0x27, 0x2b, 0x0c, 0xcb, 0xf4, 0xf8, 0xc3, 0x63, 0x6e, 0xf6, 0x62, 0x90, 0xa8, 0x1b, 0x58, 0xfa, 0x5b, 0x01, 0x11, 0x6c, 0x23, 0x46, 0x4f, 0xad, 0x61, 0xdf, 0x8d, 0x2d, 0x5d, 0x12, 0x50, 0xa5, 0xa4, 0xc4, 0x27, 0xe9, 0xc5, 0x8e, 0x2c, 0xf1, 0xd0, 0x59, 0xcd, 0xd8, 0x8a, 0x7c, 0x34, 0x98, 0x4f, 0xdd, 0x22, 0xa4, 0xcf, 0x18, 0x41, 0x1e, 0x1b, 0x02, 0x24, 0xd4, 0x44, 0xa5, 0xbd, 0x39, 0xd5, 0xfc, 0x97, 0xfc, 0x0b, 0x36, 0x48, 0x60, 0x0f, 0x19, 0xd6, 0xab, 0x80, 0xaa, 0x6a, 0x7c, 0x08, 0x3a, 0x17, }; static const unsigned char ecdsa_secp521r1_sha512_10625_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10625_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xdb, 0x19, 0x3d, 0x79, 0xe3, 0x59, 0x66, 0x3e, 0xb5, 0x66, 0x54, 0xa7, 0xee, 0x6f, 0x7e, 0xb9, 0x96, 0xc8, 0xef, 0x12, 0xf6, 0x23, 0x44, 0xad, 0x21, 0x1b, 0x71, 0x05, 0x79, 0x28, 0xf9, 0x6a, 0xe7, 0x5b, 0x58, 0xe2, 0x30, 0x26, 0x47, 0x6c, 0xfc, 0x40, 0xed, 0x0e, 0xf7, 0x20, 0x8a, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10625 = { .name = "ecdsa_secp521r1_sha512_10625", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10625_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10625_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10625_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10626 for ECDSA, tcId is 223 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10626_pubkey[] = { 0x01, 0x4f, 0x71, 0xd2, 0xca, 0x5b, 0xd2, 0x05, 0x13, 0x36, 0x85, 0x46, 0x57, 0xf0, 0x9a, 0x1f, 0xab, 0x14, 0xc7, 0xf2, 0xf7, 0x86, 0x5d, 0x71, 0xbd, 0x3f, 0xa3, 0x54, 0xbf, 0x27, 0xb6, 0x9d, 0xc8, 0x73, 0x89, 0x72, 0x14, 0x05, 0x53, 0xb5, 0x25, 0x65, 0x8b, 0x6f, 0xd2, 0x03, 0xcc, 0x05, 0xca, 0x08, 0x22, 0xe0, 0x90, 0x4b, 0xad, 0x21, 0xb6, 0x32, 0xe0, 0xde, 0x74, 0xa2, 0xad, 0x3f, 0x0e, 0x72, 0x00, 0x45, 0x25, 0xf9, 0x05, 0x19, 0xf9, 0x49, 0x74, 0x25, 0x46, 0x0b, 0x31, 0xcb, 0xb6, 0x9a, 0xb3, 0x70, 0x1a, 0x9e, 0xa6, 0x8a, 0xaa, 0xb7, 0x2c, 0x6d, 0x65, 0xd3, 0x64, 0xd0, 0xf0, 0xed, 0x4d, 0x05, 0x24, 0x28, 0x0f, 0x11, 0x3b, 0xd6, 0x9e, 0xf1, 0xba, 0x98, 0x25, 0x20, 0x2b, 0x10, 0x28, 0x7a, 0x08, 0x8c, 0x4b, 0xf3, 0x0d, 0xeb, 0xec, 0xb7, 0x20, 0xac, 0x07, 0x39, 0xec, 0x67, 0x43, 0x4d, }; static const unsigned char ecdsa_secp521r1_sha512_10626_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10626_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x33, 0x75, 0xab, 0xb9, 0x9e, 0x0c, 0xd3, 0x80, 0x1e, 0x7c, 0x12, 0x99, 0x3c, 0xfe, 0x72, 0x0c, 0x83, 0xde, 0x27, 0x89, 0x38, 0xa9, 0xe2, 0x2b, 0xb6, 0xea, 0x40, 0xa7, 0xc5, 0x99, 0xad, 0x05, 0xa5, 0xd3, 0xc8, 0xe5, 0xe5, 0xd7, 0xb3, 0xe1, 0x6a, 0x99, 0xe5, 0x28, 0xef, 0x0c, 0xe9, 0x1b, 0xe0, 0x95, 0x3c, 0xb1, 0xa9, 0xad, 0xf7, 0x57, 0xf2, 0x57, 0x55, 0x4c, 0xa4, 0x7a, 0xb0, 0x53, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10626 = { .name = "ecdsa_secp521r1_sha512_10626", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10626_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10626_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10626_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 223 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10627 for ECDSA, tcId is 224 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10627_pubkey[] = { 0x01, 0xd2, 0xec, 0xad, 0x92, 0x1d, 0xd1, 0x00, 0xa8, 0xdc, 0x1a, 0x7b, 0x82, 0x4b, 0x0a, 0xc6, 0xc9, 0xb6, 0x54, 0xab, 0x17, 0x98, 0x33, 0xc2, 0x88, 0x1c, 0xe2, 0x37, 0xf1, 0xb8, 0x49, 0x7a, 0xde, 0x85, 0x13, 0x02, 0xcf, 0x50, 0xea, 0x5e, 0xa1, 0x69, 0xc2, 0xa5, 0x0c, 0x0c, 0x09, 0xcb, 0x6e, 0xa5, 0x39, 0xa7, 0x29, 0x0a, 0x0f, 0x34, 0x37, 0x04, 0x4b, 0x7a, 0x2e, 0x9c, 0xa8, 0xd4, 0x05, 0x00, 0x00, 0x3f, 0xd5, 0x65, 0x15, 0x35, 0xdc, 0xba, 0x1f, 0x33, 0x19, 0x81, 0xc2, 0x16, 0xa1, 0xc7, 0xd9, 0x84, 0x2f, 0x65, 0xc5, 0xf3, 0x8c, 0xa4, 0x3d, 0xd7, 0x1c, 0x41, 0xe1, 0x9e, 0xfc, 0xac, 0x38, 0x46, 0x17, 0x65, 0x6f, 0xd0, 0xaf, 0xdd, 0x83, 0xc5, 0x0c, 0x5e, 0x52, 0x4e, 0x9b, 0x67, 0x2b, 0x7a, 0xa8, 0xa6, 0x6b, 0x28, 0x9a, 0xfa, 0x68, 0x8e, 0x45, 0xca, 0x6e, 0xdb, 0x34, 0x77, 0xa8, 0xb0, }; static const unsigned char ecdsa_secp521r1_sha512_10627_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10627_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10627 = { .name = "ecdsa_secp521r1_sha512_10627", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10627_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10627_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10627_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 224 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10628 for ECDSA, tcId is 225 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10628_pubkey[] = { 0x01, 0x65, 0xd6, 0x79, 0x72, 0xa4, 0x8f, 0xdd, 0xc2, 0xf4, 0x1c, 0x03, 0xf7, 0x9a, 0xb5, 0xe0, 0xd4, 0x2f, 0xd0, 0x99, 0x2c, 0x01, 0x3e, 0xad, 0x13, 0x5c, 0x33, 0x94, 0x04, 0x96, 0x45, 0xe2, 0x6a, 0xd7, 0xc7, 0xbe, 0x96, 0x51, 0x0d, 0xf5, 0x9b, 0xa6, 0x77, 0xdc, 0x94, 0xf1, 0x14, 0x6e, 0x8e, 0x8e, 0x8f, 0xbe, 0x56, 0xde, 0xbc, 0xb6, 0x69, 0x20, 0x63, 0x95, 0x81, 0x95, 0x6b, 0x92, 0xb4, 0xd1, 0x00, 0x8a, 0xeb, 0x66, 0xee, 0x0b, 0xe1, 0x8a, 0xba, 0xa9, 0x09, 0xa9, 0x73, 0xc7, 0x0b, 0x57, 0x49, 0xd6, 0x88, 0xf8, 0xe2, 0xcd, 0x2e, 0x6e, 0x16, 0x13, 0xaf, 0x93, 0xd0, 0x03, 0x34, 0x92, 0xd2, 0x6a, 0x6e, 0x82, 0xcf, 0xb8, 0x0a, 0xc6, 0x92, 0x5a, 0xc6, 0xbc, 0x79, 0xb9, 0x84, 0xf7, 0x3e, 0x3e, 0xbb, 0xff, 0x2f, 0x22, 0x3a, 0x38, 0x67, 0x68, 0x91, 0xc1, 0xec, 0xd7, 0x84, 0xa8, 0xa7, 0x89, }; static const unsigned char ecdsa_secp521r1_sha512_10628_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10628_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x9f, 0x57, 0x70, 0x8f, 0xa9, 0x7e, 0xba, 0x94, 0xc6, 0xd4, 0x78, 0x2c, 0xdd, 0x4e, 0x33, 0xbb, 0x95, 0xc1, 0x35, 0x3b, 0xde, 0x09, 0x52, 0x32, 0xe3, 0xe2, 0xba, 0xb2, 0x77, 0xbb, 0x5d, 0x2b, 0x48, 0xf5, 0x5a, 0x53, 0xff, 0xe9, 0x28, 0xd0, 0x34, 0xc2, 0x99, 0x70, 0xa9, 0xe5, 0xf3, 0x84, 0xa0, 0x03, 0x90, 0x7d, 0x3d, 0x9b, 0x82, 0xa8, 0x68, 0x17, 0xcc, 0x61, 0xfb, 0x17, 0xf4, 0xc5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10628 = { .name = "ecdsa_secp521r1_sha512_10628", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10628_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10628_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10628_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 225 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10629 for ECDSA, tcId is 226 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10629_pubkey[] = { 0x01, 0x8c, 0xd1, 0x12, 0x52, 0xf0, 0xa4, 0x34, 0xf4, 0x46, 0xd3, 0xaf, 0x18, 0x51, 0x8c, 0x6b, 0x84, 0xcb, 0x0b, 0x7b, 0xf3, 0x37, 0x58, 0xb4, 0xd8, 0x3b, 0x97, 0xc2, 0xa5, 0x6e, 0x00, 0x37, 0xb5, 0x4d, 0x57, 0xd2, 0xb0, 0xb8, 0x42, 0xe9, 0xc1, 0x7d, 0x70, 0x50, 0x4e, 0x01, 0x89, 0x63, 0x89, 0xc0, 0x66, 0xdb, 0x8f, 0x2b, 0xfe, 0xc0, 0x25, 0x25, 0x9a, 0x51, 0xdf, 0xf5, 0x14, 0x66, 0x83, 0x08, 0x01, 0xcc, 0xa5, 0x43, 0x65, 0x15, 0x6c, 0x59, 0xe2, 0xc7, 0x3c, 0x17, 0x66, 0x4f, 0x09, 0xfc, 0xdc, 0xfd, 0x5b, 0x91, 0x0f, 0x9a, 0xb4, 0x8d, 0x08, 0x99, 0xb6, 0xa7, 0x06, 0x4d, 0xe8, 0xb8, 0x0f, 0xc7, 0xa9, 0x92, 0xe4, 0x7e, 0xe7, 0xf2, 0x3e, 0xc8, 0x2f, 0xd8, 0x01, 0x79, 0xa1, 0x9f, 0x4c, 0xf8, 0x9b, 0x4c, 0x02, 0xb7, 0x21, 0x8f, 0x43, 0x52, 0x98, 0xda, 0x5d, 0x32, 0x2a, 0x98, 0x2c, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10629_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10629_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x68, 0xd9, 0x8f, 0xa9, 0x07, 0x36, 0xef, 0xf3, 0xe9, 0x0f, 0x8f, 0xcf, 0xe5, 0x08, 0x38, 0xb6, 0xfa, 0x0b, 0xf2, 0xcd, 0xe7, 0x7b, 0xc5, 0x1e, 0x3f, 0x41, 0x01, 0x9c, 0x80, 0x06, 0xf4, 0xe9, 0xcb, 0xae, 0xad, 0xce, 0x7d, 0xbb, 0x44, 0x46, 0x2d, 0xa6, 0x42, 0x5b, 0xe9, 0xcf, 0xda, 0xec, 0xb2, 0x34, 0xc4, 0x17, 0x49, 0xce, 0x69, 0x5b, 0xe1, 0xb5, 0xea, 0xd2, 0xe6, 0xb1, 0x20, 0x5f, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10629 = { .name = "ecdsa_secp521r1_sha512_10629", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10629_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10629_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10629_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 226 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10630 for ECDSA, tcId is 227 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10630_pubkey[] = { 0x01, 0xd6, 0x32, 0x9a, 0x8a, 0xfd, 0xea, 0x27, 0xcf, 0x10, 0x28, 0xa4, 0x4d, 0x19, 0xc3, 0xc7, 0x29, 0x27, 0x59, 0x0d, 0x64, 0x62, 0x87, 0x75, 0xf3, 0x24, 0x51, 0x4c, 0x81, 0xde, 0x30, 0x1a, 0xa9, 0xbe, 0x9c, 0x77, 0x5c, 0x53, 0xa6, 0x34, 0x9d, 0x1c, 0xbd, 0x5e, 0xcf, 0xc7, 0xbd, 0x39, 0xb3, 0x73, 0xe6, 0x13, 0xa1, 0x0c, 0x14, 0x39, 0x44, 0x1b, 0x14, 0x14, 0x30, 0xfd, 0xad, 0xac, 0x16, 0x8c, 0x00, 0x07, 0x13, 0x42, 0xd6, 0x3d, 0xba, 0x90, 0x1b, 0x93, 0xbd, 0xc4, 0x44, 0xa1, 0xfe, 0x2e, 0xc6, 0xa1, 0x51, 0x08, 0xbd, 0xf4, 0x9e, 0xb1, 0xdf, 0xd2, 0x18, 0x37, 0x38, 0x84, 0x52, 0x0d, 0x84, 0xbc, 0xe0, 0x3c, 0x50, 0x12, 0xf5, 0x83, 0x70, 0x51, 0xcb, 0x8a, 0xbf, 0x6a, 0x0b, 0xe7, 0x8d, 0xfd, 0xfe, 0xeb, 0x3a, 0x58, 0x72, 0xdf, 0xf7, 0x5b, 0x3f, 0x87, 0x4f, 0xaa, 0x6d, 0x22, 0x43, 0xbf, }; static const unsigned char ecdsa_secp521r1_sha512_10630_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10630_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xe9, 0x7a, 0xe6, 0x6b, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x68, 0xbc, 0x97, 0x26, 0xf0, 0x2d, 0xbf, 0x85, 0x98, 0xa9, 0x8b, 0x3e, 0x50, 0x77, 0xef, 0xf6, 0xf2, 0x49, 0x1e, 0xb6, 0x78, 0xed, 0x04, 0x0f, 0xb3, 0x38, 0xc0, 0x84, 0xa9, 0xea, 0x8a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10630 = { .name = "ecdsa_secp521r1_sha512_10630", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10630_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10630_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10630_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 227 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10631 for ECDSA, tcId is 228 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10631_pubkey[] = { 0x01, 0xc9, 0x63, 0xb6, 0x4c, 0xdc, 0x3e, 0xcb, 0x1c, 0x35, 0xcd, 0xa5, 0xce, 0xd9, 0x41, 0x9a, 0xc1, 0x46, 0xb0, 0x60, 0xad, 0xb0, 0x4c, 0x63, 0x8c, 0xf6, 0xb6, 0x66, 0x58, 0x01, 0x3c, 0xb2, 0x5e, 0x91, 0x5a, 0x6a, 0xd0, 0x05, 0x56, 0x68, 0x34, 0x28, 0x81, 0xed, 0x27, 0xf4, 0x38, 0xb5, 0x0a, 0xe4, 0xbb, 0x86, 0xae, 0x3c, 0x7c, 0x02, 0xb7, 0x27, 0xa1, 0x30, 0xc7, 0x7b, 0xad, 0x69, 0x80, 0x08, 0x00, 0x48, 0x1b, 0xff, 0xfa, 0xea, 0xd8, 0x56, 0xb4, 0x13, 0x7f, 0xd4, 0x26, 0x8e, 0xcd, 0x74, 0xa6, 0xc2, 0xd4, 0xbd, 0x6c, 0xd1, 0x39, 0x98, 0xce, 0x7f, 0x0e, 0x82, 0x8b, 0x22, 0x01, 0x35, 0xd8, 0xdf, 0x23, 0x25, 0x3e, 0x68, 0x1d, 0xc9, 0x06, 0x73, 0xe0, 0x53, 0x7e, 0x75, 0x90, 0x76, 0x9a, 0x2a, 0x44, 0x1a, 0xaa, 0xaa, 0x3a, 0x99, 0x01, 0xc4, 0xfb, 0xe4, 0x4f, 0xa9, 0x51, 0x39, 0x51, 0xef, }; static const unsigned char ecdsa_secp521r1_sha512_10631_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10631_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xae, 0x66, 0xbc, 0xd4, 0xca, 0xe3, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x39, 0x54, 0x21, 0x2f, 0x8b, 0xea, 0x57, 0x8d, 0x93, 0xe6, 0x85, 0xe5, 0xdb, 0xa3, 0x29, 0x81, 0x1b, 0x25, 0x42, 0xbb, 0x39, 0x82, 0x33, 0xe2, 0x94, 0x4b, 0xce, 0xb1, 0x92, 0x63, 0x32, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10631 = { .name = "ecdsa_secp521r1_sha512_10631", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10631_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10631_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10631_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 228 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10632 for ECDSA, tcId is 229 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10632_pubkey[] = { 0x00, 0x5d, 0xfb, 0xc8, 0x67, 0xd5, 0x3c, 0x57, 0xb2, 0x94, 0x55, 0x02, 0xb8, 0xe5, 0x6d, 0x96, 0xca, 0x2d, 0x4d, 0x48, 0x5a, 0xa3, 0x34, 0x52, 0x20, 0x0a, 0x2f, 0x4b, 0xa1, 0x60, 0x42, 0x35, 0x79, 0x76, 0xaf, 0xee, 0xcf, 0x3e, 0x63, 0xb2, 0xfd, 0xcd, 0x5c, 0xdd, 0x76, 0x07, 0x6c, 0x1a, 0x73, 0xe4, 0x96, 0xca, 0xf9, 0xd6, 0xde, 0x3e, 0x88, 0x31, 0xd9, 0x55, 0xd1, 0x38, 0xe0, 0x58, 0x84, 0xae, 0x01, 0xe0, 0x4a, 0xa0, 0xb5, 0x36, 0x0a, 0x0d, 0x3b, 0xad, 0xd0, 0x12, 0x0f, 0xbb, 0x8c, 0xc4, 0x2a, 0x38, 0xbf, 0x1c, 0x61, 0x75, 0x5d, 0x00, 0x85, 0x8e, 0x40, 0xe4, 0xb1, 0x0d, 0xa4, 0xea, 0x25, 0x75, 0x83, 0x0d, 0xc9, 0x2e, 0x31, 0x2c, 0x20, 0xaf, 0x2b, 0x8b, 0x16, 0x7d, 0x7a, 0x58, 0xd1, 0x78, 0x66, 0x1d, 0x48, 0xcd, 0x93, 0x2f, 0xe4, 0x7a, 0x4b, 0xc7, 0x14, 0x5e, 0x62, 0x0a, 0xe2, 0x2c, }; static const unsigned char ecdsa_secp521r1_sha512_10632_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10632_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x5c, 0xcd, 0x79, 0xa9, 0x95, 0xc6, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0x21, 0xba, 0xdb, 0x58, 0xa5, 0x18, 0xaf, 0xa8, 0x01, 0x0a, 0x82, 0xc0, 0x3c, 0xad, 0x31, 0xfa, 0x94, 0xbb, 0xbd, 0xe9, 0x68, 0x20, 0x16, 0x6d, 0x27, 0xe6, 0x44, 0x93, 0x8e, 0x00, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10632 = { .name = "ecdsa_secp521r1_sha512_10632", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10632_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10632_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10632_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 229 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10633 for ECDSA, tcId is 230 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10633_pubkey[] = { 0x00, 0x78, 0xbe, 0x6c, 0x43, 0xe3, 0x66, 0xcf, 0x63, 0xdd, 0xc4, 0x23, 0x5e, 0x8b, 0x96, 0x93, 0x86, 0xe9, 0x50, 0x12, 0xfb, 0xca, 0x5c, 0xeb, 0xf1, 0xb0, 0xa6, 0xfe, 0x3c, 0x03, 0xc1, 0x25, 0x7d, 0xf7, 0xcf, 0x47, 0xb0, 0x02, 0xeb, 0x6c, 0x44, 0x97, 0xf3, 0x10, 0xbf, 0xf6, 0x13, 0x1b, 0x5c, 0xcb, 0x54, 0xfd, 0x0e, 0x8e, 0xe7, 0xfc, 0xf6, 0xb4, 0x9d, 0x48, 0x7e, 0x1b, 0x54, 0x50, 0x8f, 0x68, 0x00, 0x9b, 0x61, 0xa5, 0x47, 0x10, 0x4c, 0x85, 0x16, 0xe0, 0xdc, 0x35, 0xd3, 0xd1, 0x76, 0x59, 0xca, 0x09, 0x8d, 0x02, 0x3b, 0x05, 0x93, 0x90, 0x8f, 0xe9, 0x79, 0xc2, 0x9e, 0x62, 0x37, 0x37, 0x38, 0xa3, 0xc3, 0x00, 0x94, 0xba, 0x47, 0x10, 0x5a, 0x49, 0xed, 0xbc, 0x6e, 0x1d, 0x37, 0xcc, 0xe3, 0x17, 0xb4, 0x9d, 0x27, 0x01, 0x47, 0x0e, 0xeb, 0x53, 0xd9, 0xb2, 0x4d, 0xce, 0x9d, 0x80, 0x91, 0x66, }; static const unsigned char ecdsa_secp521r1_sha512_10633_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10633_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe1, 0x8d, 0xcc, 0x11, 0xdf, 0xf7, 0x52, 0x62, 0x33, 0xd9, 0x23, 0xa0, 0xb2, 0x02, 0xcb, 0x29, 0xe7, 0x13, 0xf2, 0x2d, 0xe8, 0xbb, 0x6a, 0xb0, 0xa1, 0x28, 0x21, 0xc5, 0xab, 0xbe, 0x3f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10633 = { .name = "ecdsa_secp521r1_sha512_10633", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10633_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10633_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10633_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 230 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10634 for ECDSA, tcId is 231 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10634_pubkey[] = { 0x00, 0x93, 0xf6, 0x89, 0x61, 0x00, 0x5f, 0x30, 0x40, 0xdc, 0x1a, 0x8f, 0xf1, 0x41, 0x6c, 0x91, 0x7b, 0xdc, 0xc7, 0x7f, 0x1d, 0xfa, 0x85, 0x50, 0x6c, 0x3b, 0xb6, 0x2d, 0xac, 0x47, 0xf7, 0xbe, 0x95, 0x29, 0xb4, 0xcb, 0xe5, 0x7d, 0xd2, 0xc1, 0x9e, 0x86, 0x0b, 0xd2, 0xa0, 0xdb, 0x71, 0xd4, 0x7e, 0xf1, 0xec, 0xa8, 0xa2, 0x0b, 0xfc, 0x3e, 0x0b, 0xc5, 0xe0, 0x5c, 0x83, 0x03, 0x00, 0x1c, 0x19, 0x60, 0x00, 0x2b, 0x9a, 0x3d, 0x45, 0xf2, 0xf5, 0x12, 0x0f, 0xee, 0x06, 0x44, 0x5f, 0x0d, 0x34, 0xe6, 0x13, 0x8e, 0x3a, 0xc5, 0xb1, 0x6d, 0x2a, 0x22, 0xf0, 0x46, 0x0c, 0xea, 0x25, 0x8c, 0x36, 0x8c, 0xa9, 0xe4, 0x78, 0xeb, 0x7b, 0x82, 0x53, 0xe7, 0xc6, 0xf2, 0xf7, 0x25, 0x0f, 0xdc, 0x7d, 0xcd, 0x72, 0x43, 0x76, 0x1f, 0x8d, 0x56, 0xf2, 0x35, 0x0a, 0xc5, 0x1e, 0x47, 0xee, 0x06, 0x3f, 0x41, 0xda, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10634_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10634_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x22, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xb9, 0xc4, 0xc3, 0xf7, 0x3c, 0xc8, 0x16, 0x14, 0x3f, 0xac, 0x34, 0x12, 0xb6, 0x2d, 0xe4, 0xc6, 0x3d, 0xb0, 0x8f, 0x8c, 0x57, 0xe4, 0xc5, 0x8c, 0x31, 0xf1, 0xb4, 0x57, 0xca, 0x5e, 0x57, 0xe2, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10634 = { .name = "ecdsa_secp521r1_sha512_10634", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10634_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10634_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10634_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 231 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10635 for ECDSA, tcId is 232 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10635_pubkey[] = { 0x00, 0x2d, 0x2d, 0x7d, 0x40, 0xbf, 0x17, 0xc4, 0xe8, 0xb1, 0x87, 0x57, 0xe4, 0x51, 0xdd, 0xde, 0xd9, 0x5e, 0x6b, 0x10, 0x07, 0xcd, 0x14, 0x48, 0x09, 0xd2, 0x1a, 0xf3, 0x13, 0x53, 0xb0, 0x30, 0x38, 0x37, 0x2c, 0x4a, 0xf2, 0x04, 0xd4, 0x41, 0x4b, 0x71, 0x06, 0x0b, 0x48, 0xb3, 0xa8, 0x43, 0x9c, 0x63, 0x28, 0x09, 0xbd, 0x33, 0xc4, 0x73, 0x62, 0x63, 0x04, 0x44, 0x05, 0xa1, 0xad, 0x76, 0x6e, 0x36, 0x00, 0xbb, 0x0c, 0x5a, 0x88, 0x48, 0xf9, 0x3f, 0xa3, 0xe8, 0x53, 0x76, 0xb0, 0x12, 0xbf, 0x06, 0x4e, 0x30, 0x37, 0x46, 0x52, 0x9a, 0x67, 0x3b, 0x85, 0x2b, 0xb5, 0xa9, 0x69, 0xc2, 0x4c, 0x01, 0x56, 0xa8, 0xdd, 0x26, 0x24, 0x2d, 0x0a, 0xad, 0x4b, 0xae, 0x43, 0xe2, 0x36, 0x31, 0xb0, 0x1f, 0xb9, 0xd0, 0x50, 0xf9, 0x74, 0x4b, 0x59, 0xf3, 0xb5, 0x2b, 0x1c, 0x57, 0x22, 0x17, 0xa1, 0xd7, 0x05, 0x88, }; static const unsigned char ecdsa_secp521r1_sha512_10635_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10635_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x05, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x29, 0x8e, 0xb5, 0x7e, 0x5a, 0xff, 0x93, 0x43, 0x59, 0x7a, 0x54, 0x2d, 0x31, 0x32, 0xf9, 0xe7, 0x34, 0xfd, 0xc3, 0x05, 0x12, 0x5e, 0x0e, 0xc1, 0x39, 0xc5, 0xf7, 0x80, 0xee, 0x8e, 0x8c, 0xb9, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10635 = { .name = "ecdsa_secp521r1_sha512_10635", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10635_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10635_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10635_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 232 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10636 for ECDSA, tcId is 233 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10636_pubkey[] = { 0x01, 0x8a, 0xc1, 0x1d, 0xfe, 0x62, 0xd1, 0xf2, 0xa8, 0x20, 0x27, 0x32, 0xc7, 0x9b, 0x42, 0x3d, 0x29, 0xf4, 0x3b, 0xec, 0x4d, 0xb6, 0x08, 0x0a, 0x22, 0x07, 0x96, 0xa1, 0x0f, 0x26, 0x85, 0xf9, 0x2c, 0x71, 0xc7, 0xf7, 0x2d, 0x9d, 0xa0, 0xa8, 0xac, 0xb2, 0x26, 0x80, 0xcc, 0xa0, 0x18, 0xeb, 0xa2, 0xe8, 0xba, 0x3b, 0xfd, 0xe1, 0xdb, 0x9a, 0x4e, 0xf3, 0xb9, 0x7d, 0xa1, 0x64, 0x74, 0x36, 0x4e, 0x96, 0x00, 0x5a, 0xad, 0x3b, 0x28, 0x67, 0x07, 0xbd, 0x3a, 0xd0, 0x7a, 0x06, 0x0c, 0xab, 0xca, 0x49, 0xc5, 0x3d, 0xe4, 0xf5, 0x6c, 0x05, 0xa0, 0xa8, 0xde, 0x40, 0xfd, 0x96, 0x9d, 0x7d, 0x4f, 0x99, 0x5f, 0x7c, 0x67, 0x01, 0xfe, 0x5c, 0x53, 0x21, 0xf8, 0x53, 0x18, 0xb9, 0x8b, 0xe6, 0x62, 0x51, 0xfa, 0x49, 0x00, 0x88, 0xfd, 0x72, 0x7d, 0xa2, 0x45, 0x4e, 0x00, 0xb3, 0xb9, 0x4d, 0xc6, 0xe1, 0x24, 0x1b, }; static const unsigned char ecdsa_secp521r1_sha512_10636_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10636_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x44, 0x45, 0xe1, 0x06, 0x70, 0xed, 0x04, 0x37, 0xc9, 0xdb, 0x41, 0x25, 0xac, 0x41, 0x75, 0xfb, 0xd7, 0x0e, 0x9b, 0xd1, 0x79, 0x9a, 0x85, 0xf4, 0x4c, 0xa0, 0xa8, 0xe6, 0x1a, 0x33, 0x54, 0xe8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10636 = { .name = "ecdsa_secp521r1_sha512_10636", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10636_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10636_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10636_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 233 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10637 for ECDSA, tcId is 234 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10637_pubkey[] = { 0x00, 0x51, 0xb2, 0xc3, 0xe0, 0x49, 0x45, 0x64, 0xed, 0x48, 0xed, 0x34, 0x79, 0xb5, 0x96, 0xea, 0x40, 0x78, 0x24, 0x05, 0x50, 0xa3, 0xc2, 0x8d, 0xa3, 0x3d, 0x71, 0xd2, 0x59, 0xe8, 0xe6, 0x23, 0xe3, 0x7a, 0xb4, 0x3f, 0x39, 0x6c, 0x49, 0x36, 0x3f, 0x31, 0xc8, 0xde, 0x8a, 0x46, 0x44, 0xd3, 0x7e, 0x94, 0xed, 0x80, 0xe0, 0xdd, 0x4f, 0x92, 0xc3, 0xdf, 0x21, 0x06, 0xe2, 0x79, 0x5c, 0x27, 0x98, 0xb8, 0x00, 0xa5, 0x30, 0xd5, 0xe9, 0x61, 0xf0, 0x69, 0x6b, 0xbe, 0xb9, 0x62, 0xac, 0xa8, 0xe7, 0x1f, 0x65, 0x95, 0x6a, 0xe0, 0x4c, 0xdc, 0x22, 0xa4, 0xac, 0x65, 0x14, 0x69, 0x43, 0xe9, 0x9a, 0x4a, 0x2f, 0xdb, 0x47, 0x7d, 0xf7, 0x5a, 0xa0, 0x69, 0xc8, 0xdd, 0x37, 0xa5, 0xda, 0xae, 0xa3, 0x84, 0x80, 0x79, 0xa6, 0xa7, 0xbc, 0x03, 0xe0, 0xfa, 0xa3, 0xd6, 0x5d, 0x42, 0xf8, 0x05, 0x3d, 0xb2, 0x07, 0x8b, }; static const unsigned char ecdsa_secp521r1_sha512_10637_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10637_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4f, 0xa6, 0xdb, 0xdc, 0xd9, 0x14, 0x84, 0xeb, 0xc0, 0xd5, 0x21, 0x56, 0x9e, 0x4c, 0x5e, 0xfb, 0x25, 0x91, 0x0b, 0x1f, 0x0d, 0xde, 0xf1, 0x9d, 0x04, 0x10, 0xc5, 0x0c, 0x73, 0xe6, 0x8d, 0xb9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10637 = { .name = "ecdsa_secp521r1_sha512_10637", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10637_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10637_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10637_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10638 for ECDSA, tcId is 235 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10638_pubkey[] = { 0x01, 0xba, 0x31, 0xa6, 0xf9, 0xc2, 0xd2, 0x27, 0xda, 0x57, 0xde, 0x00, 0x75, 0x9e, 0x2e, 0x84, 0x4d, 0x60, 0x7b, 0xc9, 0xbd, 0x92, 0xbc, 0xdf, 0x28, 0x20, 0x06, 0x88, 0x4d, 0xc3, 0x47, 0xc9, 0x28, 0x4f, 0x0d, 0xc0, 0x62, 0x3a, 0xf1, 0xe9, 0xdb, 0x22, 0x11, 0x73, 0x64, 0xa7, 0xa8, 0x0a, 0x5b, 0x06, 0x7e, 0xfa, 0x19, 0xb2, 0x04, 0xda, 0xc8, 0xfa, 0xf2, 0x23, 0x0d, 0x80, 0xb7, 0x04, 0xad, 0xdc, 0x00, 0xd8, 0x8b, 0x76, 0x1c, 0xd3, 0xa4, 0xb0, 0x94, 0x7b, 0xfc, 0x17, 0xe2, 0x04, 0xb4, 0xd7, 0x51, 0xf7, 0x68, 0x80, 0xa8, 0x2c, 0x9b, 0x7c, 0x6f, 0xd9, 0x3d, 0xed, 0x55, 0x88, 0x3c, 0x99, 0x50, 0x02, 0xd8, 0xb8, 0xbf, 0xff, 0x1e, 0x02, 0x11, 0x89, 0xc0, 0x8d, 0x82, 0x9d, 0x16, 0xb0, 0x88, 0xf4, 0xfb, 0x39, 0xad, 0x94, 0x56, 0xea, 0xfb, 0xc7, 0x7c, 0x20, 0x35, 0x3b, 0xc0, 0xf3, 0xc0, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10638_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10638_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa4, 0xfc, 0x31, 0x32, 0x2e, 0x69, 0xda, 0x41, 0x16, 0x2a, 0x76, 0xab, 0xf3, 0xa1, 0xb4, 0x50, 0x7a, 0xe6, 0x60, 0x74, 0x63, 0x34, 0x46, 0xf2, 0x59, 0x66, 0x1a, 0x61, 0xc9, 0x3b, 0xe3, 0x0e, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10638 = { .name = "ecdsa_secp521r1_sha512_10638", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10638_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10638_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10638_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 235 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10639 for ECDSA, tcId is 236 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10639_pubkey[] = { 0x01, 0x37, 0xbb, 0xb4, 0x8e, 0xf2, 0x81, 0x13, 0x38, 0x49, 0xed, 0x72, 0x3f, 0x56, 0x62, 0xa1, 0x9f, 0xff, 0x9c, 0xc7, 0x38, 0x9a, 0x01, 0x70, 0xd3, 0x11, 0xbd, 0x34, 0xf4, 0xdb, 0xdc, 0x65, 0x62, 0x46, 0xdb, 0x69, 0x5e, 0xa0, 0x71, 0x2d, 0x8a, 0xce, 0xff, 0x9d, 0x1d, 0x0e, 0xf7, 0x92, 0x1e, 0xc2, 0xe3, 0xf8, 0xb5, 0x33, 0xe4, 0xca, 0x12, 0x2f, 0x9f, 0x7f, 0x44, 0x60, 0x73, 0x88, 0x93, 0x34, 0x01, 0x63, 0xe4, 0x50, 0x0d, 0x99, 0x80, 0x95, 0xf6, 0x0f, 0xa3, 0xfe, 0xd4, 0x14, 0x9d, 0x2d, 0x9b, 0x5b, 0x01, 0x8e, 0x03, 0xeb, 0x53, 0x44, 0xef, 0xe8, 0xff, 0xcc, 0x1c, 0x7d, 0x27, 0x6e, 0x74, 0x01, 0xa4, 0xdf, 0x63, 0x9c, 0x4a, 0xb1, 0x08, 0x82, 0x00, 0x62, 0x49, 0x54, 0x71, 0xbe, 0x7b, 0x29, 0x39, 0x8a, 0xad, 0xba, 0xe4, 0x40, 0xa9, 0xbd, 0xcd, 0x55, 0xcf, 0x0b, 0xb5, 0xd9, 0x6f, 0x79, }; static const unsigned char ecdsa_secp521r1_sha512_10639_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10639_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10639 = { .name = "ecdsa_secp521r1_sha512_10639", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10639_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10639_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10639_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 236 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10640 for ECDSA, tcId is 237 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10640_pubkey[] = { 0x00, 0x72, 0x6d, 0xda, 0x8b, 0x7b, 0x6e, 0xd2, 0x5f, 0x97, 0xf1, 0xfc, 0x6c, 0x3c, 0xcf, 0x55, 0x4d, 0x60, 0xfc, 0x71, 0xe4, 0xfa, 0xb2, 0xa5, 0x78, 0x28, 0x6d, 0x32, 0x61, 0x2e, 0x7f, 0x3e, 0x66, 0x9f, 0xae, 0xd0, 0xb9, 0x76, 0x19, 0xae, 0xf2, 0xd5, 0xaf, 0xf9, 0xc8, 0xff, 0xd9, 0x87, 0xfe, 0xdd, 0xc0, 0xd6, 0xc3, 0x8b, 0x7e, 0xec, 0x02, 0x81, 0x91, 0x40, 0x08, 0x74, 0x80, 0x3f, 0x49, 0x8b, 0x00, 0xc0, 0xb8, 0x87, 0x0c, 0x61, 0x2e, 0x06, 0xc1, 0x3c, 0x57, 0xed, 0x6f, 0x7e, 0xf3, 0xd5, 0x3b, 0x5e, 0x5f, 0xa2, 0xdb, 0x62, 0x70, 0x7b, 0x03, 0x4b, 0x5e, 0xc1, 0x3f, 0xb4, 0x70, 0x18, 0xe3, 0x1d, 0xa7, 0xec, 0xc9, 0x91, 0xd5, 0x75, 0x94, 0x34, 0x68, 0xd7, 0x01, 0xe1, 0x18, 0xec, 0xa3, 0x31, 0x22, 0xcf, 0x6d, 0x39, 0x4b, 0x8a, 0x6e, 0xc0, 0xf4, 0x5b, 0xc0, 0x97, 0x01, 0x60, 0x3a, 0x26, }; static const unsigned char ecdsa_secp521r1_sha512_10640_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10640_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x34, 0x6c, 0xc7, 0xd4, 0x83, 0x9b, 0x77, 0xf9, 0xf4, 0x87, 0xc7, 0xe7, 0xf2, 0x84, 0x1c, 0x5b, 0x7d, 0x05, 0xf9, 0x66, 0xf3, 0xbd, 0xe2, 0x8f, 0x1f, 0xa0, 0x80, 0xce, 0x40, 0x03, 0x7a, 0x74, 0xe3, 0x00, 0x1a, 0x2b, 0x00, 0xbd, 0x39, 0xee, 0x4c, 0x93, 0x07, 0x2e, 0x99, 0x63, 0x72, 0x49, 0x41, 0x38, 0x3c, 0xf0, 0x81, 0x2c, 0x02, 0xd1, 0xc8, 0x38, 0xad, 0x45, 0x02, 0xa1, 0x2c, 0x61, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10640 = { .name = "ecdsa_secp521r1_sha512_10640", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10640_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10640_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10640_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 237 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10641 for ECDSA, tcId is 238 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10641_pubkey[] = { 0x01, 0x6f, 0xce, 0x9f, 0x37, 0x5b, 0xbd, 0x29, 0x68, 0xad, 0xaa, 0xf3, 0x57, 0x55, 0x95, 0x12, 0x9e, 0xf3, 0xe7, 0x21, 0xc3, 0xb7, 0xc8, 0x3d, 0x5a, 0x4a, 0x79, 0xf4, 0xb5, 0xdf, 0xbb, 0xdb, 0x1f, 0x66, 0xda, 0x72, 0x43, 0xe5, 0x12, 0x0c, 0x5d, 0xbd, 0x7b, 0xe1, 0xca, 0x07, 0x3e, 0x04, 0xb4, 0xcc, 0x58, 0xca, 0x8c, 0xe2, 0xf3, 0x4f, 0xf6, 0xa3, 0xd0, 0x2a, 0x92, 0x9b, 0xf2, 0xfc, 0x27, 0x97, 0x00, 0x83, 0xf1, 0x30, 0x79, 0x2d, 0x6c, 0x45, 0xc8, 0xf2, 0xa6, 0x74, 0x71, 0xe5, 0x12, 0x46, 0xe2, 0xb8, 0x78, 0x14, 0x65, 0xb8, 0x29, 0x1c, 0xbd, 0xa6, 0x6d, 0x22, 0x71, 0x9c, 0xd5, 0x36, 0xbf, 0x80, 0x1e, 0x00, 0x76, 0x03, 0x09, 0x19, 0xd5, 0x70, 0x17, 0x32, 0xce, 0x76, 0x78, 0xbf, 0x47, 0x28, 0x46, 0xed, 0x07, 0x77, 0x93, 0x7e, 0xd7, 0x7c, 0xaa, 0xd7, 0x4d, 0x05, 0x66, 0x46, 0x14, 0xa2, }; static const unsigned char ecdsa_secp521r1_sha512_10641_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10641_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x01, 0x15, 0x0b, 0x0f, 0xe9, 0xf0, 0xdf, 0xf2, 0x7f, 0xa1, 0x80, 0xcc, 0x94, 0x42, 0xc3, 0xbf, 0xc9, 0xe3, 0x95, 0x23, 0x28, 0x98, 0x60, 0x7b, 0x11, 0x0a, 0x51, 0xbc, 0xb1, 0x08, 0x6c, 0xb9, 0x72, 0x6e, 0x25, 0x1a, 0x07, 0xc9, 0x55, 0x78, 0x08, 0xdf, 0x32, 0x46, 0x07, 0x15, 0x95, 0x0a, 0x3d, 0xc4, 0x46, 0xae, 0x42, 0x29, 0xb9, 0xed, 0x59, 0xfe, 0x24, 0x1b, 0x38, 0x9a, 0xee, 0x3a, 0x69, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10641 = { .name = "ecdsa_secp521r1_sha512_10641", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10641_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10641_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10641_sig, .siglen = 132, .result = 1, .comment = "point duplication during verification, tcId is 238 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10642 for ECDSA, tcId is 239 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10642_pubkey[] = { 0x01, 0x6f, 0xce, 0x9f, 0x37, 0x5b, 0xbd, 0x29, 0x68, 0xad, 0xaa, 0xf3, 0x57, 0x55, 0x95, 0x12, 0x9e, 0xf3, 0xe7, 0x21, 0xc3, 0xb7, 0xc8, 0x3d, 0x5a, 0x4a, 0x79, 0xf4, 0xb5, 0xdf, 0xbb, 0xdb, 0x1f, 0x66, 0xda, 0x72, 0x43, 0xe5, 0x12, 0x0c, 0x5d, 0xbd, 0x7b, 0xe1, 0xca, 0x07, 0x3e, 0x04, 0xb4, 0xcc, 0x58, 0xca, 0x8c, 0xe2, 0xf3, 0x4f, 0xf6, 0xa3, 0xd0, 0x2a, 0x92, 0x9b, 0xf2, 0xfc, 0x27, 0x97, 0x01, 0x7c, 0x0e, 0xcf, 0x86, 0xd2, 0x93, 0xba, 0x37, 0x0d, 0x59, 0x8b, 0x8e, 0x1a, 0xed, 0xb9, 0x1d, 0x47, 0x87, 0xeb, 0x9a, 0x47, 0xd6, 0xe3, 0x42, 0x59, 0x92, 0xdd, 0x8e, 0x63, 0x2a, 0xc9, 0x40, 0x7f, 0xe1, 0xff, 0x89, 0xfc, 0xf6, 0xe6, 0x2a, 0x8f, 0xe8, 0xcd, 0x31, 0x89, 0x87, 0x40, 0xb8, 0xd7, 0xb9, 0x12, 0xf8, 0x88, 0x6c, 0x81, 0x28, 0x83, 0x55, 0x28, 0xb2, 0xfa, 0x99, 0xb9, 0xeb, 0x5d, }; static const unsigned char ecdsa_secp521r1_sha512_10642_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10642_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x01, 0x15, 0x0b, 0x0f, 0xe9, 0xf0, 0xdf, 0xf2, 0x7f, 0xa1, 0x80, 0xcc, 0x94, 0x42, 0xc3, 0xbf, 0xc9, 0xe3, 0x95, 0x23, 0x28, 0x98, 0x60, 0x7b, 0x11, 0x0a, 0x51, 0xbc, 0xb1, 0x08, 0x6c, 0xb9, 0x72, 0x6e, 0x25, 0x1a, 0x07, 0xc9, 0x55, 0x78, 0x08, 0xdf, 0x32, 0x46, 0x07, 0x15, 0x95, 0x0a, 0x3d, 0xc4, 0x46, 0xae, 0x42, 0x29, 0xb9, 0xed, 0x59, 0xfe, 0x24, 0x1b, 0x38, 0x9a, 0xee, 0x3a, 0x69, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10642 = { .name = "ecdsa_secp521r1_sha512_10642", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10642_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10642_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10642_sig, .siglen = 132, .result = -1, .comment = "duplication bug, tcId is 239 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10643 for ECDSA, tcId is 240 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10643_pubkey[] = { 0x01, 0x10, 0xfb, 0x89, 0xaf, 0xf1, 0x35, 0xed, 0xb8, 0x01, 0xa1, 0xcb, 0x5b, 0xc4, 0x95, 0x25, 0xb8, 0x1d, 0xc7, 0x4d, 0xa4, 0x50, 0x90, 0xd2, 0x28, 0x12, 0x28, 0x71, 0x81, 0x4f, 0x48, 0x9f, 0xdc, 0xb0, 0x2e, 0xbe, 0xe4, 0x6b, 0x70, 0x3e, 0x6b, 0x4e, 0x6a, 0xf5, 0x6c, 0x50, 0x24, 0x42, 0x2b, 0x31, 0xfd, 0x42, 0x52, 0xc4, 0x4d, 0x0b, 0xfd, 0x29, 0xd9, 0x45, 0xde, 0x78, 0x2d, 0x98, 0x54, 0x3f, 0x01, 0xec, 0x42, 0x5b, 0x4c, 0x49, 0x28, 0xe1, 0x2b, 0x61, 0x92, 0x27, 0xf1, 0xda, 0x6d, 0x0a, 0x96, 0x75, 0x07, 0x0d, 0x9c, 0x5b, 0x49, 0xca, 0x52, 0x30, 0x50, 0xac, 0xb7, 0x18, 0xe6, 0x26, 0x43, 0xb0, 0xe5, 0x80, 0x15, 0x43, 0xb7, 0x6d, 0xc1, 0x1f, 0x8d, 0x69, 0x4b, 0xa0, 0x94, 0x36, 0xd8, 0x39, 0x1b, 0x47, 0x7a, 0xd2, 0xc1, 0x43, 0xec, 0x50, 0xc2, 0x38, 0x4c, 0x4f, 0x68, 0x85, 0x12, 0xdc, }; static const unsigned char ecdsa_secp521r1_sha512_10643_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10643_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10643 = { .name = "ecdsa_secp521r1_sha512_10643", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10643_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10643_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10643_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 240 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10644 for ECDSA, tcId is 241 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10644_pubkey[] = { 0x01, 0xc6, 0x93, 0xa3, 0xfc, 0xcb, 0xc9, 0xf6, 0x25, 0x28, 0x42, 0x39, 0xc2, 0x72, 0x5f, 0x2a, 0x5c, 0x90, 0xb2, 0x9b, 0x7c, 0xe3, 0xd0, 0x77, 0x30, 0xf7, 0xde, 0x60, 0x31, 0xc9, 0xe7, 0x44, 0x46, 0xd2, 0x17, 0x88, 0x8a, 0xe0, 0x23, 0xaa, 0xe2, 0x3d, 0xf6, 0xa4, 0xaa, 0x15, 0x3f, 0x58, 0xc7, 0x95, 0x97, 0xd5, 0x7f, 0x42, 0xce, 0x5c, 0x13, 0x54, 0xe5, 0xdc, 0x43, 0xa5, 0xeb, 0x31, 0x1e, 0x13, 0x01, 0x5f, 0x99, 0x65, 0x84, 0x43, 0xb2, 0xe3, 0x9c, 0x3e, 0xdc, 0xbc, 0xda, 0x70, 0x70, 0x7f, 0xc5, 0xa4, 0xd3, 0x95, 0x45, 0xea, 0xbe, 0x35, 0x48, 0x16, 0xd0, 0x92, 0x84, 0xa6, 0x26, 0x5e, 0x47, 0xeb, 0xf0, 0xa4, 0x73, 0x55, 0x82, 0x8e, 0x81, 0x8a, 0x76, 0x7f, 0x84, 0x52, 0xa6, 0xd1, 0x84, 0x51, 0xe0, 0xe3, 0x81, 0x7a, 0x89, 0x6f, 0xf4, 0x04, 0xcb, 0x16, 0x11, 0xbf, 0xc4, 0xc4, 0xb4, 0xa3, }; static const unsigned char ecdsa_secp521r1_sha512_10644_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10644_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10644 = { .name = "ecdsa_secp521r1_sha512_10644", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10644_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10644_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10644_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 241 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10645 for ECDSA, tcId is 242 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10645_pubkey[] = { 0x01, 0x7d, 0x7b, 0xf7, 0x23, 0x67, 0x8d, 0xf5, 0x74, 0xce, 0x43, 0x66, 0x74, 0x1e, 0x1d, 0x37, 0x87, 0xf8, 0x34, 0xaf, 0x99, 0x97, 0xb4, 0x1c, 0x82, 0x60, 0xa0, 0x74, 0xcb, 0x1f, 0x32, 0x5d, 0x2b, 0xae, 0x9f, 0x85, 0x65, 0xdc, 0x6b, 0x51, 0xb6, 0xcb, 0x02, 0xdc, 0xee, 0xb5, 0xa1, 0xb7, 0x74, 0xee, 0x8d, 0xd7, 0x05, 0x7c, 0x99, 0xe2, 0xd9, 0x4c, 0x3c, 0x71, 0x29, 0x9a, 0x9c, 0xe0, 0xf1, 0xb0, 0x01, 0x62, 0xc6, 0x56, 0x32, 0xff, 0xf8, 0x8b, 0xdb, 0xb1, 0x7c, 0xe2, 0x52, 0x5c, 0xca, 0xc8, 0xdf, 0x37, 0xc5, 0x01, 0xab, 0x0e, 0x66, 0x26, 0xe2, 0x73, 0xfb, 0x6c, 0xf9, 0x90, 0x00, 0x42, 0x43, 0x44, 0xc0, 0xac, 0x53, 0x9c, 0x9f, 0xd6, 0xc4, 0xf3, 0xd2, 0x88, 0x76, 0xb2, 0x57, 0xc0, 0x10, 0xd3, 0x47, 0xa4, 0x5b, 0xb0, 0x10, 0xcc, 0x05, 0x84, 0x43, 0x84, 0x3a, 0x75, 0x83, 0x28, 0xd4, 0x91, }; static const unsigned char ecdsa_secp521r1_sha512_10645_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10645_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10645 = { .name = "ecdsa_secp521r1_sha512_10645", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10645_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10645_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10645_sig, .siglen = 132, .result = -1, .comment = "comparison with point at infinity , tcId is 242 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10646 for ECDSA, tcId is 243 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10646_pubkey[] = { 0x01, 0xe0, 0x6d, 0xb4, 0x23, 0xa9, 0x02, 0xe2, 0x39, 0xb9, 0x73, 0x40, 0xab, 0x05, 0x25, 0x34, 0xea, 0xd3, 0x7e, 0x79, 0x41, 0x2c, 0x67, 0x5b, 0xf0, 0xeb, 0x82, 0x39, 0x99, 0xe6, 0xb7, 0x31, 0x04, 0x0b, 0xff, 0x2b, 0x0e, 0x4f, 0xa6, 0x4e, 0xdf, 0x39, 0x62, 0xa3, 0x28, 0x92, 0x1e, 0xa5, 0xae, 0x4e, 0x8f, 0x40, 0x79, 0xea, 0xb4, 0x39, 0xe1, 0x2f, 0x92, 0x33, 0x5d, 0xfc, 0x48, 0x63, 0xc0, 0x7f, 0x00, 0x7e, 0xe9, 0xf0, 0xec, 0xb4, 0x09, 0xcb, 0x13, 0x3c, 0x0c, 0xd0, 0x8b, 0x85, 0xe8, 0x40, 0xb0, 0x76, 0xf3, 0xd6, 0x15, 0xe1, 0xef, 0x13, 0x93, 0xb5, 0x22, 0x23, 0x38, 0xb2, 0x27, 0xd7, 0x68, 0x00, 0x3d, 0xa5, 0xf3, 0xba, 0x1f, 0x72, 0xf6, 0x65, 0x4c, 0xa5, 0x4a, 0xc1, 0x1c, 0x2b, 0xa9, 0x1a, 0x6c, 0xb5, 0x88, 0x3d, 0x6d, 0x1a, 0x82, 0x30, 0x4a, 0xd2, 0xb7, 0x9d, 0xe0, 0x92, 0x15, 0xf3, }; static const unsigned char ecdsa_secp521r1_sha512_10646_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10646_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10646 = { .name = "ecdsa_secp521r1_sha512_10646", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10646_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10646_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10646_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 243 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10647 for ECDSA, tcId is 244 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10647_pubkey[] = { 0x01, 0x50, 0x53, 0x74, 0x4d, 0x53, 0x81, 0x1d, 0xbe, 0xd8, 0x88, 0x0f, 0x38, 0xd3, 0xa3, 0x45, 0x78, 0xa7, 0xf1, 0xc1, 0x72, 0xec, 0x65, 0xbd, 0x8a, 0xd8, 0x18, 0x3b, 0xa0, 0xae, 0x10, 0x09, 0x34, 0x16, 0x10, 0x7f, 0x3c, 0x94, 0x27, 0x42, 0xbd, 0xe6, 0x07, 0x19, 0x94, 0x9b, 0x2c, 0x4f, 0x02, 0x6f, 0x43, 0x58, 0x21, 0x25, 0xc9, 0x9e, 0xd4, 0x8c, 0xbc, 0x7c, 0x5a, 0x05, 0x1a, 0x5a, 0x74, 0x48, 0x00, 0xb3, 0x6d, 0x4c, 0x91, 0xa2, 0xb0, 0x36, 0x7c, 0x56, 0x6b, 0x2c, 0x12, 0x98, 0x1c, 0xe0, 0xfd, 0xbc, 0x3b, 0xeb, 0x98, 0x37, 0x17, 0x40, 0x3f, 0x69, 0xbf, 0x42, 0x64, 0xfc, 0x61, 0x82, 0x47, 0x8a, 0xf0, 0xb2, 0x36, 0xff, 0x12, 0x0b, 0xcf, 0xca, 0x11, 0x69, 0x24, 0xc5, 0x52, 0xab, 0xef, 0x66, 0x63, 0xb6, 0x02, 0x3b, 0xe1, 0x98, 0x6b, 0x70, 0x20, 0x6d, 0x9b, 0xb8, 0x9b, 0x5e, 0xd2, 0x98, }; static const unsigned char ecdsa_secp521r1_sha512_10647_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10647_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10647 = { .name = "ecdsa_secp521r1_sha512_10647", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10647_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10647_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10647_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 244 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10648 for ECDSA, tcId is 245 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10648_pubkey[] = { 0x01, 0xfb, 0x2e, 0x26, 0x59, 0x6c, 0xc8, 0x04, 0x73, 0x91, 0x7d, 0xd4, 0x6b, 0x4a, 0x1d, 0x14, 0xbd, 0x9a, 0x1c, 0xa9, 0x76, 0x9d, 0xd1, 0x2b, 0xfa, 0xc1, 0xbf, 0xf1, 0x7c, 0xdc, 0x28, 0x2e, 0x74, 0xc7, 0x3a, 0x80, 0x1e, 0xc1, 0xbe, 0x83, 0xed, 0xfe, 0x4b, 0xfe, 0x98, 0x13, 0xec, 0x94, 0x3a, 0xc1, 0x51, 0x67, 0x8f, 0x0a, 0x9a, 0x0b, 0xf2, 0x7d, 0x9e, 0xf3, 0x08, 0x17, 0x7e, 0xb0, 0x40, 0x0f, 0x01, 0x9e, 0x03, 0xa5, 0xda, 0x3d, 0xa6, 0x7e, 0x6b, 0x8d, 0x06, 0x8d, 0xbd, 0xac, 0xf0, 0x91, 0xb9, 0xd5, 0xef, 0xad, 0xaf, 0x63, 0xf4, 0xa7, 0xe9, 0xc6, 0xb6, 0xed, 0x0a, 0x1c, 0x9a, 0x5d, 0x3c, 0xbc, 0x3e, 0x02, 0x44, 0xd4, 0x81, 0x06, 0x60, 0x18, 0xfb, 0xa7, 0x67, 0x4a, 0x2b, 0x59, 0x13, 0x9a, 0x56, 0x56, 0x78, 0x05, 0x63, 0xbb, 0x46, 0x18, 0x01, 0x4f, 0x17, 0x67, 0x52, 0xe1, 0x77, 0xe0, }; static const unsigned char ecdsa_secp521r1_sha512_10648_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10648_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10648 = { .name = "ecdsa_secp521r1_sha512_10648", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10648_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10648_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10648_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 245 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10649 for ECDSA, tcId is 246 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10649_pubkey[] = { 0x00, 0x84, 0x22, 0xce, 0xa9, 0xdc, 0xf8, 0xae, 0x01, 0xf7, 0xa1, 0x57, 0x88, 0x8f, 0x01, 0x8a, 0x40, 0xa6, 0x64, 0x61, 0xd3, 0x56, 0x6e, 0xc4, 0xa4, 0xdf, 0xc8, 0x9e, 0xcb, 0x3c, 0x24, 0x04, 0xbe, 0x73, 0x4d, 0x32, 0x91, 0x37, 0xd6, 0x30, 0x38, 0x7b, 0x01, 0x2d, 0x03, 0x32, 0x21, 0x85, 0x7d, 0x5b, 0xfb, 0x29, 0x0f, 0xa8, 0x02, 0x76, 0x40, 0xb4, 0x06, 0x30, 0x72, 0xa3, 0xe5, 0xb1, 0x4c, 0x86, 0x00, 0x25, 0xa2, 0x19, 0xe7, 0x24, 0xb8, 0x18, 0x14, 0x90, 0x1a, 0x67, 0x7a, 0x8b, 0xee, 0x9b, 0x71, 0x6b, 0x33, 0xb1, 0x6a, 0x5b, 0x65, 0xf2, 0x27, 0x29, 0x56, 0xa4, 0x6b, 0x5e, 0x86, 0x83, 0xdc, 0x89, 0x69, 0x84, 0x30, 0x9a, 0xc7, 0x94, 0x49, 0x65, 0x7a, 0x18, 0x95, 0xc9, 0xf6, 0x2b, 0xde, 0x99, 0xc7, 0xf5, 0xe2, 0x4e, 0xd2, 0xde, 0xfb, 0xc9, 0xf8, 0xdd, 0xe3, 0x5e, 0xbd, 0x0b, 0xdd, 0xc1, }; static const unsigned char ecdsa_secp521r1_sha512_10649_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10649_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10649 = { .name = "ecdsa_secp521r1_sha512_10649", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10649_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10649_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10649_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 246 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10650 for ECDSA, tcId is 247 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10650_pubkey[] = { 0x01, 0xbc, 0x19, 0xcf, 0x4b, 0x94, 0xbc, 0xd3, 0x41, 0x14, 0xce, 0x83, 0xc5, 0xf1, 0xa7, 0xe0, 0x48, 0xe2, 0xfc, 0x4f, 0xd4, 0x57, 0xd5, 0x7e, 0x39, 0xb3, 0xda, 0x29, 0xf4, 0x76, 0x6a, 0xcb, 0xae, 0xf1, 0xc1, 0x0c, 0xb1, 0x3c, 0x79, 0x6a, 0x6f, 0xff, 0xb5, 0x6d, 0x6a, 0x39, 0x2e, 0x47, 0xb6, 0xc7, 0x45, 0x22, 0xdf, 0x7f, 0xa0, 0x27, 0x54, 0xc3, 0x3d, 0x95, 0xb1, 0xa9, 0xa3, 0xc9, 0x2a, 0x15, 0x00, 0xf5, 0x74, 0x4c, 0x2b, 0xed, 0x30, 0x8c, 0xb4, 0xf4, 0x1b, 0x51, 0x2e, 0x63, 0x2c, 0xd0, 0x1d, 0x27, 0x0e, 0xf1, 0xa0, 0xd3, 0xf4, 0x7e, 0xa7, 0x80, 0xe7, 0x3c, 0x6a, 0x6c, 0x9e, 0xa6, 0xa9, 0x96, 0xfa, 0xef, 0x4d, 0x28, 0x28, 0x96, 0xc6, 0x4f, 0xa5, 0x0f, 0x5b, 0x04, 0xe2, 0x04, 0xc5, 0x6b, 0x50, 0x4b, 0xc1, 0x22, 0xff, 0xba, 0x7a, 0xea, 0x45, 0x74, 0xd7, 0xd7, 0xab, 0x63, 0x03, 0xc0, }; static const unsigned char ecdsa_secp521r1_sha512_10650_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10650_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10650 = { .name = "ecdsa_secp521r1_sha512_10650", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10650_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10650_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10650_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 247 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10651 for ECDSA, tcId is 248 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10651_pubkey[] = { 0x01, 0x7b, 0x0e, 0xbc, 0xe0, 0x8b, 0x09, 0xf2, 0x1e, 0x30, 0xd1, 0x5e, 0x0e, 0xdd, 0x9f, 0xcd, 0xf2, 0x4a, 0xb4, 0x83, 0x1e, 0xc8, 0xa6, 0x5a, 0x3d, 0x1e, 0x38, 0xf7, 0x2b, 0x15, 0xf0, 0x11, 0x5d, 0xa6, 0xed, 0x18, 0x85, 0xe4, 0x2f, 0xcf, 0xae, 0x31, 0xc0, 0x91, 0x4b, 0x71, 0xe9, 0xdf, 0x2c, 0xd1, 0x06, 0xad, 0xc0, 0x39, 0xa8, 0x28, 0x10, 0xa9, 0x29, 0x24, 0xdd, 0x15, 0x4d, 0xc0, 0x5d, 0xa3, 0x00, 0xc6, 0x14, 0xd1, 0xaf, 0xc4, 0xf6, 0x3d, 0xe3, 0x80, 0x3b, 0xb5, 0x49, 0x0a, 0x34, 0xe1, 0xe2, 0xfa, 0xb9, 0xeb, 0x78, 0x42, 0x2b, 0x21, 0xd3, 0x77, 0xfc, 0x0d, 0x7f, 0x99, 0x1b, 0x93, 0x8c, 0x22, 0xf4, 0xd7, 0xdd, 0x66, 0x5f, 0x8d, 0xd2, 0x1f, 0xad, 0xde, 0x43, 0x17, 0x2a, 0x55, 0xf8, 0x0d, 0x05, 0xcc, 0x45, 0x57, 0xb6, 0x66, 0x3f, 0x9e, 0x7a, 0x3f, 0xe4, 0x90, 0xd2, 0x5c, 0x55, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10651_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10651_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10651 = { .name = "ecdsa_secp521r1_sha512_10651", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10651_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10651_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10651_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 248 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10652 for ECDSA, tcId is 249 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10652_pubkey[] = { 0x00, 0x04, 0xc3, 0xec, 0x8d, 0x7d, 0x23, 0xce, 0x74, 0xbe, 0x8b, 0x9c, 0x7c, 0x27, 0xbe, 0x86, 0x9c, 0x23, 0xba, 0xfc, 0x68, 0x74, 0xeb, 0xc4, 0x4f, 0x47, 0xe1, 0x07, 0x42, 0x2a, 0xb1, 0xe7, 0x5e, 0xd0, 0x9b, 0xeb, 0xd7, 0xcb, 0x1e, 0xc4, 0x62, 0x6e, 0x44, 0x2b, 0xcf, 0x51, 0x2a, 0x25, 0xc5, 0xdd, 0xde, 0x26, 0xeb, 0x08, 0xba, 0x37, 0x50, 0x64, 0x61, 0x83, 0x0c, 0xf9, 0x24, 0x1c, 0xbe, 0x9c, 0x00, 0x50, 0xa1, 0xbc, 0x08, 0xf4, 0xba, 0x8d, 0xa1, 0xd6, 0x41, 0xac, 0x38, 0x91, 0x82, 0x3a, 0xb5, 0x19, 0xfa, 0xcd, 0x41, 0x59, 0x76, 0x8b, 0x1c, 0x07, 0x38, 0xf0, 0xe2, 0x34, 0x50, 0xf3, 0x74, 0xe4, 0xd6, 0xde, 0x55, 0xcc, 0xee, 0xd9, 0x57, 0x22, 0xbe, 0x63, 0x5c, 0x5d, 0xc0, 0x02, 0x3a, 0x14, 0x98, 0x86, 0x2f, 0x87, 0xbf, 0xe6, 0x1d, 0x77, 0xe2, 0x0e, 0x59, 0x2c, 0xc2, 0x0b, 0xb2, 0xca, }; static const unsigned char ecdsa_secp521r1_sha512_10652_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10652_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10652 = { .name = "ecdsa_secp521r1_sha512_10652", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10652_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10652_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10652_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 249 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10653 for ECDSA, tcId is 250 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10653_pubkey[] = { 0x00, 0xa7, 0xc8, 0x20, 0x4f, 0x28, 0x64, 0xdc, 0xef, 0x08, 0x91, 0x65, 0xc3, 0x91, 0x4d, 0xcc, 0x2c, 0x08, 0x96, 0x07, 0x58, 0x70, 0xca, 0x0b, 0xc1, 0xce, 0x37, 0x85, 0x6f, 0x80, 0xf2, 0x38, 0x15, 0xb0, 0xc8, 0xf2, 0xec, 0x05, 0x14, 0x5c, 0x42, 0x10, 0x49, 0xe8, 0x0e, 0xc1, 0xe7, 0x69, 0x4f, 0x9f, 0x04, 0x17, 0x4b, 0xbe, 0xf2, 0x1b, 0xc0, 0x97, 0x2e, 0x55, 0x9c, 0xf2, 0x22, 0xde, 0x7e, 0x1a, 0x01, 0xff, 0x11, 0x08, 0xc2, 0x8f, 0x01, 0xb7, 0x03, 0x82, 0x0e, 0x1c, 0x01, 0x87, 0x91, 0x29, 0x62, 0xab, 0x23, 0x10, 0x96, 0x18, 0xdf, 0xcb, 0x0c, 0x06, 0x2c, 0xce, 0xe3, 0x39, 0x00, 0x22, 0x22, 0xa3, 0xf7, 0xdd, 0x8d, 0xd2, 0x16, 0x75, 0xb0, 0xe2, 0x09, 0x08, 0xfe, 0x58, 0x55, 0xea, 0x87, 0x6d, 0x6a, 0x9e, 0x02, 0xc5, 0xf5, 0xb7, 0x93, 0xd3, 0x8f, 0xdf, 0x79, 0xfb, 0x83, 0x60, 0x3e, 0xa9, }; static const unsigned char ecdsa_secp521r1_sha512_10653_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10653_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10653 = { .name = "ecdsa_secp521r1_sha512_10653", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10653_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10653_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10653_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 250 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10654 for ECDSA, tcId is 251 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10654_pubkey[] = { 0x01, 0x80, 0x2f, 0xc7, 0x9f, 0xc8, 0xe5, 0x5b, 0xce, 0x50, 0xa5, 0x81, 0x63, 0x2b, 0x51, 0xd6, 0xee, 0xc0, 0x4a, 0x3c, 0x74, 0xac, 0x2b, 0xf4, 0xfa, 0xe1, 0x6c, 0xe6, 0xc7, 0xef, 0xef, 0x17, 0x01, 0xd6, 0x9f, 0x9c, 0x00, 0xa9, 0x1a, 0xd5, 0x21, 0xd7, 0x5a, 0xc7, 0x53, 0x9d, 0x54, 0xbf, 0x46, 0x4c, 0xae, 0xec, 0x87, 0x14, 0x56, 0x10, 0x3d, 0xc9, 0x74, 0x35, 0x44, 0x60, 0x89, 0x8a, 0x19, 0xc6, 0x00, 0x72, 0x2f, 0xc1, 0xf5, 0x28, 0x50, 0x66, 0x18, 0xb1, 0xda, 0x9f, 0x8b, 0x2e, 0xdb, 0xdb, 0xda, 0xf7, 0xee, 0xc0, 0x2e, 0x8f, 0xb9, 0x20, 0x3d, 0x2b, 0x27, 0x77, 0x35, 0xa1, 0xd8, 0x67, 0x91, 0x1b, 0x13, 0x1f, 0x45, 0x3f, 0x52, 0xcc, 0xc4, 0xce, 0xd0, 0x5c, 0x3b, 0x1b, 0xc2, 0x9e, 0x4d, 0x20, 0xf1, 0xe6, 0xd3, 0x49, 0x79, 0xfa, 0xa6, 0x88, 0xce, 0x80, 0x03, 0xf7, 0x9d, 0x8e, 0x0c, 0x95, }; static const unsigned char ecdsa_secp521r1_sha512_10654_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10654_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10654 = { .name = "ecdsa_secp521r1_sha512_10654", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10654_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10654_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10654_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 251 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10655 for ECDSA, tcId is 252 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10655_pubkey[] = { 0x01, 0xbe, 0xb0, 0xb4, 0xc2, 0xe4, 0x94, 0x22, 0x64, 0x04, 0xfc, 0xa4, 0xad, 0x50, 0x5e, 0xbf, 0xed, 0x13, 0xd1, 0x84, 0xb1, 0x57, 0x26, 0x83, 0x21, 0x5b, 0x16, 0x17, 0x3c, 0x29, 0xa4, 0x47, 0x5a, 0xed, 0xe4, 0x7f, 0x26, 0x6e, 0x0c, 0x9c, 0x41, 0x43, 0x13, 0x7d, 0x3e, 0x00, 0x01, 0xf9, 0xf0, 0x14, 0x8b, 0x68, 0x92, 0x86, 0xa7, 0xc6, 0x4e, 0x22, 0x94, 0x58, 0xb8, 0x24, 0xed, 0x76, 0x58, 0x36, 0x01, 0x30, 0x20, 0x51, 0x69, 0x78, 0x3e, 0xd9, 0xad, 0xa9, 0xf3, 0xa1, 0x93, 0x02, 0x7a, 0xe4, 0xe2, 0x18, 0x29, 0xad, 0x4a, 0x71, 0xd0, 0x5d, 0x96, 0x96, 0x05, 0xc0, 0x4f, 0x32, 0x31, 0xda, 0xba, 0xb0, 0x3b, 0xeb, 0x2f, 0xab, 0x07, 0xdd, 0x83, 0x23, 0xd7, 0x13, 0x27, 0x55, 0x73, 0x4f, 0x4e, 0x6d, 0x1f, 0xb4, 0x3f, 0xc8, 0xa6, 0x3b, 0xfd, 0x24, 0x41, 0x60, 0xc2, 0x3e, 0xfb, 0x6c, 0x14, 0x29, }; static const unsigned char ecdsa_secp521r1_sha512_10655_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10655_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10655 = { .name = "ecdsa_secp521r1_sha512_10655", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10655_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10655_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10655_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 252 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10656 for ECDSA, tcId is 253 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10656_pubkey[] = { 0x01, 0x21, 0xe5, 0x9a, 0xaf, 0x26, 0xb8, 0x30, 0x1f, 0x4f, 0xcc, 0x3e, 0x0a, 0x56, 0x3c, 0x41, 0x04, 0xae, 0x00, 0xb4, 0x7c, 0x55, 0xb8, 0x94, 0x5c, 0xe7, 0x49, 0x11, 0x6f, 0xdf, 0x67, 0x61, 0xd7, 0x68, 0xbd, 0x50, 0xed, 0x43, 0x1e, 0x2b, 0x51, 0xe6, 0x46, 0xfe, 0x4f, 0xe7, 0xdc, 0x29, 0x85, 0xb6, 0xae, 0xfa, 0x7f, 0x94, 0x41, 0xea, 0x11, 0x84, 0x0d, 0x2a, 0xce, 0x2f, 0x34, 0x29, 0x3c, 0xb1, 0x00, 0x0c, 0xf1, 0xe1, 0xa4, 0x6d, 0x4d, 0x63, 0x72, 0x16, 0xe2, 0x8a, 0xbd, 0x12, 0x4c, 0xc6, 0x41, 0xae, 0x7a, 0x67, 0x34, 0x45, 0xd5, 0x73, 0x85, 0x6b, 0xc2, 0xfe, 0xc5, 0x8d, 0x86, 0xe5, 0xed, 0x63, 0xbc, 0x2a, 0x7f, 0x20, 0x49, 0x23, 0x4e, 0x33, 0x5a, 0x7b, 0xee, 0x95, 0xbb, 0x27, 0x24, 0xfb, 0x14, 0x80, 0xc9, 0x7c, 0x38, 0xcd, 0x0d, 0x29, 0x6c, 0xbc, 0xc1, 0x13, 0xde, 0x3f, 0x13, 0x5f, }; static const unsigned char ecdsa_secp521r1_sha512_10656_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10656_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10656 = { .name = "ecdsa_secp521r1_sha512_10656", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10656_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10656_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10656_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 253 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10657 for ECDSA, tcId is 254 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10657_pubkey[] = { 0x00, 0x8e, 0x85, 0x9e, 0x66, 0xd1, 0x23, 0x7f, 0xdc, 0x92, 0x8a, 0x4b, 0x95, 0x49, 0x54, 0xfe, 0xf5, 0x65, 0xd2, 0x03, 0xa0, 0x73, 0x1d, 0x06, 0x5d, 0x9d, 0xf4, 0x1a, 0x4f, 0xd3, 0x81, 0x2b, 0x1c, 0xc2, 0x48, 0x70, 0x53, 0xea, 0x19, 0xce, 0x83, 0x9d, 0x20, 0x08, 0x45, 0x95, 0x2f, 0x80, 0xd8, 0x06, 0x98, 0x77, 0x1d, 0x83, 0xcc, 0xc1, 0xfc, 0x7f, 0x23, 0x6d, 0xbe, 0xe4, 0xc7, 0x6b, 0x2b, 0xb4, 0x00, 0x5a, 0x04, 0xb2, 0x4c, 0x88, 0xcd, 0x40, 0x23, 0x3f, 0xb4, 0x3c, 0x59, 0xea, 0x5c, 0xf2, 0xcb, 0x95, 0x10, 0xd1, 0x6b, 0x11, 0x68, 0xbc, 0x12, 0x6d, 0xb6, 0x4a, 0xaf, 0x9a, 0xb0, 0x7a, 0x74, 0x53, 0x20, 0x8f, 0xde, 0x07, 0x90, 0x95, 0x96, 0x62, 0x72, 0xbf, 0x03, 0xbc, 0x33, 0x12, 0xc9, 0xb9, 0xba, 0xb8, 0xc7, 0x95, 0xae, 0x37, 0x5e, 0x8a, 0x0e, 0x8d, 0xd8, 0x1c, 0x92, 0x4e, 0x7c, 0x27, }; static const unsigned char ecdsa_secp521r1_sha512_10657_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10657_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10657 = { .name = "ecdsa_secp521r1_sha512_10657", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10657_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10657_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10657_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 254 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10658 for ECDSA, tcId is 255 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10658_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10658_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10658_sig[] = { 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10658 = { .name = "ecdsa_secp521r1_sha512_10658", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10658_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10658_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10658_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 255 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10659 for ECDSA, tcId is 256 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10659_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10659_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10659_sig[] = { 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10659 = { .name = "ecdsa_secp521r1_sha512_10659", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10659_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10659_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10659_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 256 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10660 for ECDSA, tcId is 257 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10660_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_10660_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10660_sig[] = { 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10660 = { .name = "ecdsa_secp521r1_sha512_10660", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10660_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10660_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10660_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 257 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10661 for ECDSA, tcId is 258 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10661_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_10661_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10661_sig[] = { 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10661 = { .name = "ecdsa_secp521r1_sha512_10661", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10661_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10661_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10661_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 258 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10662 for ECDSA, tcId is 259 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10662_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10662_sig[] = { 0x01, 0x62, 0x5d, 0x61, 0x15, 0x09, 0x2a, 0x8e, 0x2e, 0xe2, 0x1b, 0x9f, 0x8a, 0x42, 0x5a, 0xa7, 0x38, 0x14, 0xde, 0xc8, 0xb2, 0x33, 0x5e, 0x86, 0x15, 0x0a, 0xb4, 0x22, 0x9f, 0x5a, 0x34, 0x21, 0xd2, 0xe6, 0x25, 0x6d, 0x63, 0x2c, 0x7a, 0x43, 0x65, 0xa1, 0xee, 0x01, 0xdd, 0x2a, 0x93, 0x69, 0x21, 0xbb, 0xb4, 0x55, 0x1a, 0x51, 0x2d, 0x1d, 0x4b, 0x5a, 0x56, 0xc3, 0x14, 0xe4, 0xa0, 0x25, 0x34, 0xc5, 0x01, 0xb7, 0x92, 0xd2, 0x3f, 0x26, 0x49, 0x86, 0x25, 0x95, 0x45, 0x10, 0x55, 0x77, 0x7b, 0xda, 0x1b, 0x02, 0xdc, 0x6c, 0xc8, 0xfe, 0xf2, 0x32, 0x31, 0xe4, 0x4b, 0x92, 0x1b, 0x16, 0x15, 0x5c, 0xd4, 0x22, 0x57, 0x44, 0x1d, 0x75, 0xa7, 0x90, 0x37, 0x1e, 0x91, 0x81, 0x9f, 0x0a, 0x9b, 0x1f, 0xd0, 0xeb, 0xd0, 0x2c, 0x90, 0xb5, 0xb7, 0x74, 0x52, 0x77, 0x46, 0xed, 0x9b, 0xfe, 0x74, 0x3d, 0xbe, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10662 = { .name = "ecdsa_secp521r1_sha512_10662", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10662_pubkey, .pubkeylen = 132, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp521r1_sha512_10662_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 259 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10663 for ECDSA, tcId is 260 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10663_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10663_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp521r1_sha512_10663_sig[] = { 0x00, 0x5a, 0xdc, 0x83, 0x3c, 0xbc, 0x1d, 0x61, 0x41, 0xce, 0xd4, 0x57, 0xba, 0xb2, 0xb0, 0x1b, 0x08, 0x14, 0x05, 0x4d, 0x7a, 0x28, 0xfa, 0x8b, 0xb2, 0x92, 0x5d, 0x1e, 0x75, 0x25, 0xb7, 0xcf, 0x7d, 0x5c, 0x93, 0x8a, 0x17, 0xab, 0xfb, 0x33, 0x42, 0x6d, 0xcc, 0x05, 0xce, 0x8d, 0x44, 0xdb, 0x02, 0xf5, 0x3a, 0x75, 0xea, 0x04, 0x01, 0x7d, 0xca, 0x51, 0xe1, 0xfb, 0xb1, 0x4c, 0xe3, 0x31, 0x1b, 0x14, 0x00, 0x5f, 0x69, 0xb2, 0xa6, 0xde, 0x12, 0x91, 0x47, 0xa8, 0x43, 0x7b, 0x79, 0xc7, 0x23, 0x15, 0xd3, 0x51, 0x73, 0xd8, 0x8c, 0x2d, 0x61, 0x19, 0x08, 0x5c, 0x90, 0xda, 0xe8, 0xec, 0x05, 0xc5, 0x5e, 0x06, 0x7e, 0x7d, 0xfa, 0x4f, 0x68, 0x10, 0x35, 0xe3, 0xdc, 0xca, 0xb0, 0x99, 0x29, 0x1c, 0x0e, 0xcf, 0x44, 0x28, 0x33, 0x2a, 0x9c, 0xb0, 0x73, 0x6d, 0x16, 0xe7, 0x91, 0x11, 0xac, 0x76, 0xd7, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10663 = { .name = "ecdsa_secp521r1_sha512_10663", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10663_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10663_msg, .msglen = 3, .sig = ecdsa_secp521r1_sha512_10663_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 260 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10664 for ECDSA, tcId is 261 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10664_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10664_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10664_sig[] = { 0x01, 0x41, 0x41, 0xe4, 0xd9, 0x4a, 0x58, 0xc1, 0xe7, 0x47, 0xcb, 0xd9, 0xee, 0x66, 0x70, 0xa4, 0x1e, 0xac, 0x3c, 0x26, 0xfb, 0x4d, 0xb3, 0x24, 0x8e, 0x45, 0xd5, 0x83, 0x17, 0x90, 0x76, 0xe6, 0xb1, 0x9a, 0x8e, 0x20, 0x03, 0x65, 0x7a, 0x10, 0x8f, 0x91, 0xf9, 0xa1, 0x03, 0x15, 0x7e, 0xdf, 0xf9, 0xb3, 0x7d, 0xf2, 0xb4, 0x36, 0xa7, 0x7d, 0xc1, 0x12, 0x92, 0x7d, 0x90, 0x7a, 0xc9, 0xba, 0x25, 0x87, 0x01, 0x08, 0xaf, 0xa9, 0x1b, 0x34, 0xbd, 0x90, 0x4c, 0x68, 0x04, 0x71, 0xe9, 0x43, 0xaf, 0x33, 0x6f, 0xb9, 0x0c, 0x5f, 0xb2, 0xb9, 0x14, 0x01, 0xa5, 0x8c, 0x9b, 0x1f, 0x46, 0x7b, 0xf8, 0x1a, 0xf8, 0x04, 0x99, 0x65, 0xdd, 0x8b, 0x45, 0xf1, 0x2e, 0x15, 0x2f, 0x4f, 0x7f, 0xd3, 0x78, 0x0e, 0x34, 0x92, 0xf3, 0x1e, 0xd2, 0x68, 0x0d, 0x47, 0x77, 0xfb, 0xe6, 0x55, 0xfe, 0x77, 0x9a, 0xd8, 0x97, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10664 = { .name = "ecdsa_secp521r1_sha512_10664", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10664_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10664_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10664_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 261 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10665 for ECDSA, tcId is 262 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10665_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10665_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp521r1_sha512_10665_sig[] = { 0x00, 0x08, 0x13, 0x5d, 0x3f, 0x1a, 0xe9, 0xe2, 0x6f, 0xba, 0x82, 0x56, 0x43, 0xed, 0x8a, 0x29, 0xd6, 0x3d, 0x78, 0x43, 0x72, 0x0e, 0x93, 0x56, 0x6a, 0xa0, 0x9d, 0xb2, 0xbd, 0xf5, 0xaa, 0xa6, 0x9a, 0xfb, 0xcc, 0x0c, 0x51, 0xe5, 0x29, 0x5c, 0x29, 0x8f, 0x30, 0x5b, 0xa7, 0xb8, 0x70, 0xf0, 0xa8, 0x5b, 0xb5, 0x69, 0x9c, 0xdf, 0x40, 0x76, 0x4a, 0xab, 0x59, 0x41, 0x8f, 0x77, 0xc6, 0xff, 0xb4, 0x52, 0x01, 0x1d, 0x34, 0x52, 0x56, 0x88, 0x7f, 0xb3, 0x51, 0xf5, 0x70, 0x09, 0x61, 0xa7, 0xd4, 0x75, 0x72, 0xe0, 0xd6, 0x69, 0x05, 0x6c, 0xb1, 0xd5, 0x61, 0x93, 0x45, 0xc0, 0xc9, 0x87, 0xf3, 0x33, 0x1c, 0x2f, 0xe2, 0xc6, 0xdf, 0x84, 0x8a, 0x5c, 0x61, 0x04, 0x22, 0xde, 0xfd, 0x62, 0x12, 0xb6, 0x43, 0x46, 0x16, 0x1a, 0xa8, 0x71, 0xae, 0x55, 0xb1, 0xfe, 0x4a, 0xdd, 0x5f, 0x68, 0x83, 0x6e, 0xb1, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10665 = { .name = "ecdsa_secp521r1_sha512_10665", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10665_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10665_msg, .msglen = 20, .sig = ecdsa_secp521r1_sha512_10665_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 262 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10666 for ECDSA, tcId is 263 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10666_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10666_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10666_sig[] = { 0x01, 0x1c, 0x96, 0x84, 0xaf, 0x6d, 0xc5, 0x27, 0x28, 0x41, 0x04, 0x73, 0xc6, 0x30, 0x53, 0xb0, 0x1c, 0x35, 0x8d, 0x67, 0xe8, 0x1f, 0x8a, 0x13, 0x24, 0xad, 0x71, 0x1c, 0x60, 0x48, 0x1a, 0x4a, 0x86, 0xdd, 0x3e, 0x75, 0xde, 0x20, 0xca, 0x55, 0xce, 0x7a, 0x9a, 0x39, 0xb1, 0xf8, 0x2f, 0xd5, 0xda, 0x4f, 0xad, 0xf2, 0x6a, 0x5b, 0xb8, 0xed, 0xd4, 0x67, 0xaf, 0x88, 0x25, 0xef, 0xe4, 0x74, 0x62, 0x18, 0x00, 0x34, 0xc0, 0x58, 0xab, 0xa6, 0x48, 0x8d, 0x69, 0x43, 0xe1, 0x1e, 0x0d, 0x13, 0x48, 0x42, 0x94, 0x49, 0xea, 0x17, 0xac, 0x5e, 0xdf, 0x8b, 0xca, 0xf6, 0x54, 0x10, 0x6b, 0x98, 0xb2, 0xdd, 0xf3, 0x46, 0xc5, 0x37, 0xb8, 0xa9, 0xa3, 0xf9, 0xb3, 0x17, 0x4b, 0x77, 0x63, 0x7d, 0x22, 0x0e, 0xf5, 0x31, 0x8d, 0xbb, 0xc3, 0x3d, 0x0a, 0xac, 0x0f, 0xe2, 0xdd, 0xed, 0xa1, 0x7b, 0x23, 0xcb, 0x2d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10666 = { .name = "ecdsa_secp521r1_sha512_10666", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10666_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10666_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10666_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 263 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10667 for ECDSA, tcId is 264 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10667_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10667_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10667_sig[] = { 0x00, 0x7c, 0x47, 0xa6, 0x68, 0x62, 0x56, 0x48, 0xcd, 0x8a, 0x31, 0xac, 0x92, 0x17, 0x4c, 0xf3, 0xd6, 0x10, 0x41, 0xf7, 0xad, 0x29, 0x25, 0x88, 0xde, 0xf6, 0xed, 0x14, 0x3b, 0x1f, 0xf9, 0xa2, 0x88, 0xfd, 0x20, 0xcf, 0x36, 0xf5, 0x8d, 0x4b, 0xfe, 0x4b, 0x2c, 0xd4, 0xa3, 0x81, 0xd4, 0xda, 0x50, 0xc8, 0xed, 0xa5, 0x67, 0x4f, 0x02, 0x04, 0x49, 0xae, 0x1d, 0x3d, 0xd7, 0x7e, 0x44, 0xed, 0x48, 0x5e, 0x01, 0x05, 0x8e, 0x86, 0xb3, 0x27, 0xd2, 0x84, 0xe3, 0x5b, 0xab, 0x49, 0xfc, 0x7c, 0x33, 0x54, 0x17, 0x57, 0x3f, 0x31, 0x0a, 0xfa, 0x9e, 0x1a, 0x53, 0x56, 0x6e, 0x0f, 0xae, 0x51, 0x6e, 0x09, 0x90, 0x07, 0x96, 0x50, 0x30, 0xf6, 0xf4, 0x6b, 0x07, 0x71, 0x16, 0x35, 0x3f, 0x26, 0xcb, 0x46, 0x6d, 0x1c, 0xf3, 0xf3, 0x53, 0x00, 0xd7, 0x44, 0xd2, 0xd8, 0xf8, 0x83, 0xc8, 0xa3, 0x1b, 0x43, 0xc2, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10667 = { .name = "ecdsa_secp521r1_sha512_10667", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10667_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10667_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10667_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 264 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10668 for ECDSA, tcId is 265 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10668_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10668_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10668_sig[] = { 0x01, 0xe4, 0xe9, 0xf3, 0xa7, 0xb8, 0x00, 0xde, 0x63, 0x40, 0x7b, 0x87, 0x03, 0xac, 0x54, 0x52, 0x26, 0x54, 0x1c, 0x97, 0xa6, 0x73, 0x56, 0x67, 0x11, 0xf7, 0x0e, 0x2b, 0x9c, 0xcb, 0x21, 0xa1, 0x45, 0xad, 0x46, 0x37, 0x82, 0x5b, 0x02, 0x3d, 0x1e, 0xa9, 0xf1, 0x8e, 0x60, 0x89, 0x74, 0x13, 0x71, 0x16, 0x11, 0xa8, 0x5c, 0x11, 0x79, 0xbf, 0xf9, 0xc1, 0x07, 0x36, 0x8f, 0x1c, 0x1b, 0x61, 0xc2, 0x4c, 0x01, 0xde, 0x94, 0x8e, 0xe5, 0x77, 0xc3, 0xd4, 0xe4, 0x12, 0x2a, 0x52, 0xec, 0xcc, 0xac, 0x59, 0xab, 0xb6, 0xfa, 0x93, 0x7d, 0xfb, 0x3e, 0x4b, 0x98, 0x8c, 0xb2, 0x43, 0xef, 0xe9, 0x87, 0x40, 0x30, 0x94, 0x52, 0xba, 0x01, 0x31, 0x12, 0xb2, 0x25, 0xb3, 0xb1, 0xb1, 0x38, 0x4d, 0x5f, 0x68, 0x79, 0x68, 0x45, 0x19, 0x9a, 0x26, 0x02, 0xa8, 0xd4, 0x50, 0x5a, 0x33, 0x1b, 0x07, 0xd1, 0x01, 0x18, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10668 = { .name = "ecdsa_secp521r1_sha512_10668", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10668_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10668_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10668_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 265 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10669 for ECDSA, tcId is 266 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10669_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10669_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10669_sig[] = { 0x00, 0xb6, 0xcf, 0x64, 0x86, 0x1a, 0x2b, 0x16, 0xe3, 0x39, 0x76, 0x09, 0x5d, 0xbf, 0x45, 0xa5, 0x92, 0xc7, 0xc2, 0x42, 0x28, 0xc4, 0xa1, 0xdd, 0x72, 0x7f, 0x30, 0x3d, 0x5e, 0xeb, 0x87, 0xe5, 0x38, 0x8a, 0xd0, 0x5c, 0x32, 0x8f, 0x82, 0x4c, 0x40, 0xab, 0xd3, 0xe6, 0xce, 0x00, 0x3f, 0xef, 0x5c, 0xd5, 0x9d, 0xee, 0x00, 0x69, 0xad, 0x63, 0x48, 0xea, 0x6e, 0x57, 0xf9, 0x0f, 0x6b, 0xdc, 0x0a, 0x82, 0x00, 0x22, 0x81, 0x81, 0xc1, 0x80, 0x36, 0x6e, 0x54, 0x51, 0xdf, 0xef, 0x35, 0x93, 0xce, 0x66, 0x48, 0x04, 0xcb, 0x42, 0xd5, 0xa8, 0xd5, 0x04, 0x6b, 0x81, 0x6b, 0x3d, 0xaf, 0x66, 0x02, 0xfa, 0xfd, 0x9a, 0xc2, 0xdc, 0x24, 0xb8, 0xc9, 0x3a, 0x10, 0x02, 0x44, 0x80, 0x88, 0x25, 0x58, 0xb6, 0xad, 0x3d, 0x9e, 0x90, 0x59, 0x23, 0xdc, 0xd0, 0xfd, 0x2a, 0x11, 0x96, 0x47, 0x54, 0xa9, 0xb4, 0x6b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10669 = { .name = "ecdsa_secp521r1_sha512_10669", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10669_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10669_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10669_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 266 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10670 for ECDSA, tcId is 267 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10670_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10670_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10670_sig[] = { 0x00, 0x93, 0xc8, 0xf7, 0x66, 0x82, 0x7d, 0x6d, 0xc1, 0x5c, 0x81, 0x0f, 0xa3, 0x04, 0x33, 0x15, 0x3a, 0x5e, 0x74, 0x28, 0x59, 0x20, 0x5e, 0xe8, 0x38, 0x9f, 0xbf, 0x69, 0x5c, 0x88, 0x40, 0xdc, 0x91, 0x74, 0x40, 0x87, 0x0a, 0xcc, 0x5b, 0x16, 0x00, 0x87, 0xff, 0xd0, 0xcd, 0x9a, 0x60, 0x81, 0x02, 0x9c, 0x60, 0xa7, 0xc2, 0x6d, 0x5e, 0x8a, 0xa9, 0xa0, 0x57, 0x0f, 0x4e, 0xfd, 0xeb, 0x13, 0xde, 0xa2, 0x01, 0x2e, 0xc3, 0xbb, 0xf7, 0x5a, 0x0a, 0xd3, 0xdf, 0x40, 0x31, 0x02, 0x66, 0x64, 0x8a, 0x36, 0xdb, 0x82, 0x02, 0x17, 0xed, 0x7f, 0xa9, 0x4e, 0x9c, 0x83, 0x13, 0xe0, 0x32, 0x93, 0xef, 0x4f, 0x6a, 0x40, 0xe7, 0x36, 0xfb, 0x8f, 0x20, 0x8a, 0xd8, 0xfb, 0x88, 0x3c, 0xa5, 0x09, 0xd4, 0x80, 0x46, 0x91, 0x05, 0x23, 0x64, 0x54, 0x59, 0xc2, 0x78, 0x29, 0xd5, 0x44, 0x31, 0x46, 0x3b, 0x25, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10670 = { .name = "ecdsa_secp521r1_sha512_10670", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10670_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10670_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10670_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 267 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10671 for ECDSA, tcId is 268 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10671_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10671_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10671_sig[] = { 0x01, 0x52, 0x38, 0x8c, 0x6d, 0xa6, 0x61, 0x64, 0xb7, 0x06, 0xb4, 0x1d, 0xd4, 0xdd, 0x48, 0x17, 0x6d, 0x6e, 0xaf, 0x65, 0x25, 0xf8, 0x76, 0xef, 0x0f, 0xf2, 0xd1, 0x47, 0xf6, 0x96, 0x6e, 0xbf, 0xad, 0xf1, 0x76, 0x7f, 0xa6, 0x6d, 0x04, 0x20, 0x3d, 0x3e, 0xc9, 0xc9, 0x37, 0xa1, 0xf0, 0xc9, 0x45, 0xae, 0xd9, 0x53, 0xe3, 0x4b, 0xe4, 0x44, 0xc2, 0x19, 0xfd, 0x3b, 0x94, 0xd3, 0x27, 0x7a, 0xa6, 0x52, 0x01, 0x65, 0x8c, 0x1e, 0x5b, 0x2e, 0x56, 0x3a, 0x49, 0xd1, 0x1c, 0x88, 0x3d, 0x05, 0xc4, 0x91, 0xd6, 0x28, 0xf0, 0xa9, 0x2c, 0x3e, 0x3d, 0xc8, 0xdb, 0x9a, 0x4c, 0x8d, 0x5f, 0x0d, 0xc8, 0x46, 0xac, 0x22, 0xaf, 0x8b, 0x3c, 0x5f, 0xb5, 0xbb, 0xe2, 0xcf, 0xa9, 0x86, 0x14, 0xdc, 0xff, 0xd8, 0x7d, 0xe1, 0xce, 0xe2, 0xc5, 0x91, 0x2a, 0x58, 0x99, 0x50, 0x5a, 0x0c, 0x5b, 0xca, 0xa5, 0x13, 0xe2, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10671 = { .name = "ecdsa_secp521r1_sha512_10671", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10671_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10671_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10671_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 268 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10672 for ECDSA, tcId is 269 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10672_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10672_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10672_sig[] = { 0x01, 0x0e, 0x89, 0x47, 0x0f, 0x98, 0x1d, 0x2c, 0x7c, 0x5c, 0x96, 0x58, 0x71, 0x21, 0xa6, 0x73, 0x23, 0xbb, 0x96, 0xff, 0x24, 0x27, 0x73, 0x9d, 0x0d, 0x88, 0x5e, 0xa2, 0x77, 0x29, 0x3e, 0xfa, 0x3b, 0x25, 0xc0, 0xbd, 0xa0, 0x4d, 0x81, 0x46, 0x61, 0x98, 0xa3, 0xcb, 0xfc, 0x44, 0x1f, 0x1b, 0x1b, 0x98, 0xf6, 0xbc, 0xdc, 0x25, 0x89, 0xd9, 0xd9, 0x1a, 0x17, 0xa7, 0x89, 0x9f, 0x70, 0xd0, 0x46, 0x1e, 0x01, 0x73, 0x51, 0xb0, 0xda, 0x8c, 0x8d, 0x0e, 0x4a, 0xa0, 0x97, 0x46, 0x69, 0xd1, 0x90, 0xfa, 0x2f, 0x90, 0xaa, 0x50, 0x22, 0x71, 0x60, 0x59, 0x4d, 0xfb, 0x55, 0x75, 0x50, 0x02, 0x36, 0x54, 0x41, 0xde, 0x17, 0xea, 0x42, 0x90, 0x21, 0x28, 0xa6, 0xf8, 0x1e, 0x55, 0x41, 0x77, 0xed, 0x50, 0x9c, 0x0c, 0xec, 0x31, 0xfd, 0x50, 0x53, 0xfa, 0xe0, 0x3f, 0x62, 0xff, 0x76, 0x57, 0x9b, 0xa9, 0x2b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10672 = { .name = "ecdsa_secp521r1_sha512_10672", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10672_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10672_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10672_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 269 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10673 for ECDSA, tcId is 270 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10673_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10673_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10673_sig[] = { 0x01, 0x10, 0x94, 0xac, 0x23, 0xca, 0x46, 0xa3, 0xe2, 0xb4, 0xac, 0x3b, 0xaa, 0xe6, 0x50, 0x4f, 0x1b, 0xfb, 0x3d, 0xdf, 0x2d, 0xb9, 0xab, 0x40, 0xed, 0xa3, 0x2d, 0x8e, 0x0a, 0x05, 0x72, 0x79, 0x98, 0xf8, 0x55, 0x2a, 0x03, 0x3b, 0xb0, 0x52, 0x41, 0xe8, 0x26, 0xa8, 0x6a, 0x1d, 0x03, 0x01, 0x4e, 0xae, 0x3a, 0xa5, 0xfe, 0x1a, 0x45, 0xca, 0xac, 0x1d, 0xb3, 0xe8, 0x13, 0x8b, 0x9c, 0xf5, 0x90, 0x68, 0x01, 0x47, 0xed, 0xb1, 0x5a, 0x50, 0x80, 0xee, 0x2f, 0x92, 0x9f, 0x78, 0xb6, 0xac, 0x86, 0x60, 0x4a, 0xae, 0x51, 0xb6, 0x74, 0xfa, 0x46, 0xea, 0xae, 0x7f, 0xdf, 0xd9, 0x0b, 0xf6, 0x4d, 0x61, 0x89, 0x34, 0x11, 0x55, 0xf4, 0xeb, 0xa9, 0x37, 0xea, 0xe7, 0x4c, 0x9e, 0x48, 0x0e, 0xb4, 0xfb, 0x7e, 0x6a, 0xaf, 0xd4, 0x28, 0x5e, 0x7f, 0xc5, 0x03, 0xee, 0x6e, 0xc2, 0x0f, 0x0b, 0x14, 0x15, 0xbe, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10673 = { .name = "ecdsa_secp521r1_sha512_10673", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10673_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10673_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10673_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 270 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10674 for ECDSA, tcId is 271 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10674_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10674_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10674_sig[] = { 0x01, 0xd8, 0x76, 0xae, 0x17, 0x4d, 0xa3, 0x1e, 0x12, 0x8b, 0xab, 0xff, 0x9f, 0x1d, 0x15, 0x50, 0x76, 0x60, 0xbd, 0xc7, 0x95, 0x87, 0x50, 0x84, 0x4d, 0xc4, 0xf4, 0x29, 0x1f, 0x75, 0xa8, 0x82, 0xa2, 0x2f, 0x17, 0x7f, 0x70, 0x4b, 0xe6, 0x06, 0x7b, 0xf7, 0xce, 0x8f, 0x06, 0xb8, 0x62, 0x6d, 0x97, 0x1e, 0x6e, 0xf5, 0xdc, 0xb6, 0x66, 0xfa, 0x97, 0x5c, 0x1e, 0x11, 0x12, 0x6e, 0x04, 0xfc, 0xcc, 0xe2, 0x01, 0xab, 0xb1, 0x26, 0x30, 0xa6, 0x8b, 0x66, 0x9e, 0x6a, 0xd2, 0xd8, 0xd6, 0x26, 0x54, 0xd7, 0x5d, 0xfb, 0xc6, 0xb5, 0x4a, 0x8e, 0x3a, 0x9c, 0x91, 0x5b, 0xe6, 0x63, 0xe0, 0x80, 0xdd, 0xcc, 0x34, 0x8e, 0x57, 0xa1, 0x0e, 0x2b, 0x1d, 0xd9, 0xf0, 0x3e, 0x1b, 0x89, 0x77, 0x96, 0xad, 0x88, 0x9b, 0x07, 0x5e, 0x59, 0x19, 0xdc, 0x5b, 0xf3, 0x7a, 0x11, 0x2d, 0x92, 0xc6, 0x93, 0x45, 0x6e, 0x64, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10674 = { .name = "ecdsa_secp521r1_sha512_10674", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10674_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10674_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10674_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 271 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10675 for ECDSA, tcId is 272 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10675_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_10675_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10675_sig[] = { 0x00, 0x4e, 0xd6, 0x92, 0xaf, 0x1e, 0xd1, 0xb4, 0xbd, 0x5c, 0xea, 0x3a, 0xa8, 0xdd, 0xc6, 0xf3, 0xf1, 0x5d, 0x8a, 0x6e, 0xe0, 0x01, 0x6f, 0xa0, 0xe8, 0xeb, 0x95, 0x85, 0x80, 0xe7, 0x42, 0x18, 0x32, 0xec, 0xc0, 0xe3, 0x87, 0xc3, 0x4a, 0xaf, 0xac, 0x63, 0x80, 0xba, 0xc4, 0x19, 0xea, 0x45, 0xc4, 0x2a, 0xe6, 0x42, 0x6a, 0xf5, 0x03, 0x84, 0x7f, 0x22, 0xc4, 0x9c, 0x2f, 0x45, 0x63, 0x38, 0xc1, 0xa7, 0x00, 0x7a, 0xce, 0xad, 0xde, 0x02, 0xac, 0xe1, 0x66, 0x8b, 0xc1, 0xa3, 0x36, 0x0d, 0x34, 0xe1, 0x25, 0xaf, 0xde, 0x23, 0x0f, 0x53, 0x6c, 0x15, 0x4d, 0x91, 0xe6, 0xc8, 0x76, 0xbe, 0xe1, 0xd3, 0x4a, 0xe0, 0x6e, 0xdc, 0xbb, 0xca, 0x0c, 0x7c, 0xd1, 0x76, 0x46, 0x84, 0x09, 0x13, 0x16, 0x47, 0x40, 0xb1, 0x2e, 0x2e, 0x22, 0x4f, 0xe3, 0xef, 0x3d, 0xec, 0x6f, 0xd8, 0x4a, 0x81, 0xb5, 0x81, 0xc1, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10675 = { .name = "ecdsa_secp521r1_sha512_10675", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10675_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10675_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10675_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 272 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10676 for ECDSA, tcId is 273 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10676_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_10676_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10676_sig[] = { 0x00, 0xe0, 0x10, 0x94, 0x04, 0x8f, 0xcf, 0x7a, 0x1e, 0x2e, 0xc6, 0x6f, 0xae, 0xdf, 0xfc, 0x40, 0xf4, 0x8c, 0x9c, 0x93, 0x51, 0x43, 0x25, 0xbd, 0xe6, 0xb4, 0x95, 0x8d, 0x80, 0xf0, 0x41, 0x3e, 0xfd, 0xe7, 0xee, 0xc1, 0xdc, 0x6d, 0xe6, 0x5f, 0x96, 0x00, 0x9c, 0x06, 0x93, 0x97, 0xe5, 0x1d, 0xa2, 0xeb, 0x17, 0x29, 0xef, 0xa2, 0x87, 0xaf, 0xd5, 0x55, 0x2b, 0x25, 0xa9, 0xe4, 0x27, 0xa6, 0xd8, 0x36, 0x01, 0x48, 0x9e, 0x7e, 0x12, 0x4f, 0x66, 0x94, 0x2e, 0x64, 0x2d, 0xe9, 0x92, 0xe6, 0x0b, 0x3a, 0x86, 0xfc, 0xce, 0x57, 0x67, 0x67, 0x71, 0x93, 0x90, 0xc3, 0xa3, 0x12, 0xfc, 0xde, 0xaa, 0x56, 0x0a, 0x7f, 0xbb, 0x0c, 0xab, 0xb3, 0x5e, 0x05, 0xa6, 0xd6, 0xf3, 0x49, 0x91, 0x60, 0xfd, 0x2d, 0xba, 0x12, 0xd2, 0x9b, 0x61, 0x3b, 0x16, 0xde, 0xc7, 0x49, 0x4c, 0x95, 0x0d, 0x65, 0xfd, 0xf1, 0x1f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10676 = { .name = "ecdsa_secp521r1_sha512_10676", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10676_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10676_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10676_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 273 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10677 for ECDSA, tcId is 274 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10677_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_10677_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10677_sig[] = { 0x01, 0xd2, 0x96, 0x29, 0x22, 0x13, 0x38, 0x0d, 0xe1, 0x33, 0xdc, 0x66, 0xec, 0xeb, 0x8b, 0xd8, 0x57, 0xa5, 0xc4, 0x68, 0xaf, 0xe8, 0x55, 0xc0, 0x5d, 0xa9, 0xdb, 0x93, 0x73, 0x73, 0xb5, 0x1f, 0x90, 0x20, 0xca, 0x11, 0x35, 0x34, 0x15, 0xda, 0x76, 0xbb, 0x6a, 0xf9, 0x97, 0xa4, 0x86, 0xd2, 0x37, 0x0e, 0x31, 0xad, 0xcc, 0x0a, 0x45, 0x31, 0x95, 0x2a, 0x3b, 0x59, 0x42, 0x86, 0x78, 0xee, 0x59, 0x43, 0x01, 0x59, 0x79, 0xa3, 0xc6, 0x09, 0xc2, 0xc2, 0x09, 0x9a, 0xe1, 0xb2, 0x90, 0xda, 0x3d, 0x61, 0x3b, 0x24, 0x8e, 0x3a, 0x10, 0xde, 0x7a, 0xd7, 0x70, 0xdf, 0xfc, 0x82, 0xfb, 0x33, 0xe7, 0x4f, 0xc3, 0x20, 0x75, 0x33, 0xf9, 0x72, 0x85, 0xcf, 0x45, 0x57, 0xa6, 0x40, 0x7e, 0x9a, 0x77, 0x5e, 0x59, 0xef, 0xea, 0xee, 0x42, 0x64, 0xb2, 0x63, 0x49, 0x33, 0xa6, 0xba, 0xf8, 0xc4, 0x06, 0xf0, 0xc4, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10677 = { .name = "ecdsa_secp521r1_sha512_10677", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10677_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10677_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10677_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 274 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10678 for ECDSA, tcId is 275 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10678_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_10678_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10678_sig[] = { 0x01, 0xef, 0x8f, 0x78, 0x5c, 0x51, 0xa2, 0x5a, 0xe2, 0xcd, 0x93, 0x48, 0x7b, 0x5c, 0x84, 0x8d, 0x4a, 0xf1, 0x33, 0x21, 0x7a, 0x91, 0xf5, 0x13, 0x59, 0xc9, 0x66, 0xe7, 0x53, 0x8e, 0x68, 0x74, 0x35, 0x78, 0x12, 0x2d, 0xf5, 0x83, 0x00, 0x02, 0xf9, 0x6f, 0x6f, 0xad, 0xb5, 0xbc, 0x44, 0x48, 0x0e, 0x3b, 0x3b, 0x2c, 0x80, 0x4e, 0x4c, 0x51, 0xcf, 0x95, 0xd0, 0x59, 0xd5, 0x64, 0x6c, 0x5c, 0xef, 0x21, 0x01, 0xba, 0x22, 0x76, 0xcc, 0x00, 0x3e, 0x87, 0xbe, 0xa3, 0x7c, 0x37, 0x24, 0xe5, 0x8a, 0x0a, 0xb8, 0x85, 0xf5, 0x6d, 0x09, 0xb8, 0xb5, 0x71, 0x8f, 0x67, 0x4f, 0x9c, 0x70, 0xf3, 0xb5, 0xec, 0xfb, 0x4a, 0xd1, 0xf3, 0x41, 0x7b, 0x42, 0x0e, 0xc4, 0x08, 0x10, 0xe0, 0x88, 0x26, 0xef, 0xa7, 0xd8, 0xad, 0x6c, 0xa7, 0xc6, 0xa7, 0x84, 0x03, 0x48, 0x09, 0x7f, 0x92, 0xb2, 0xde, 0x8d, 0x6e, 0x08, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10678 = { .name = "ecdsa_secp521r1_sha512_10678", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10678_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10678_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10678_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 275 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10679 for ECDSA, tcId is 276 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10679_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_10679_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10679_sig[] = { 0x01, 0x55, 0x97, 0x8a, 0xdc, 0x4b, 0x57, 0x0d, 0x89, 0x75, 0x11, 0xf5, 0xec, 0xfb, 0x65, 0xa3, 0x19, 0x47, 0xe6, 0xe9, 0x89, 0xda, 0x17, 0xde, 0xa7, 0x16, 0x62, 0x5b, 0xb3, 0xfa, 0x7b, 0x92, 0xb8, 0x53, 0x62, 0x3e, 0xb0, 0xcd, 0x9c, 0xe2, 0xa5, 0xe2, 0xb4, 0xd8, 0xc1, 0xc2, 0xa9, 0x0e, 0xc0, 0x4f, 0xe7, 0x9d, 0x01, 0x25, 0x76, 0xec, 0x72, 0x8a, 0x45, 0xc5, 0xce, 0x47, 0xc6, 0xd5, 0x00, 0xc0, 0x00, 0xf7, 0x9f, 0xa8, 0xb9, 0x4e, 0xe2, 0x82, 0xa3, 0xd1, 0x81, 0x58, 0x92, 0xcb, 0xf1, 0x5d, 0x7e, 0xbd, 0xf6, 0x2c, 0xb0, 0x42, 0xc7, 0x6b, 0xb3, 0xc7, 0x10, 0xc2, 0x3e, 0x32, 0xb7, 0x59, 0x92, 0xcc, 0x24, 0x9d, 0x84, 0x07, 0x21, 0x98, 0xe4, 0xed, 0x63, 0xd7, 0x24, 0x35, 0xa0, 0x7d, 0x2e, 0xd7, 0x6f, 0x27, 0x8d, 0x73, 0x99, 0xf6, 0x1a, 0x5b, 0x5c, 0x99, 0x7f, 0x45, 0x69, 0x2f, 0xed, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10679 = { .name = "ecdsa_secp521r1_sha512_10679", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10679_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10679_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10679_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 276 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10680 for ECDSA, tcId is 277 in file ecdsa_secp521r1_sha512_p1363_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10680_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_10680_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10680_sig[] = { 0x01, 0xa2, 0xaf, 0x29, 0xc5, 0x81, 0x84, 0xca, 0x86, 0x1e, 0x7c, 0xd9, 0x31, 0xf3, 0x9c, 0xea, 0x06, 0x4b, 0x19, 0x9e, 0xee, 0x56, 0x3f, 0x24, 0x1c, 0xd5, 0xec, 0xf6, 0xeb, 0xb2, 0xad, 0xe7, 0x28, 0xf1, 0xbe, 0x23, 0xcf, 0x00, 0x7e, 0xbe, 0x8e, 0xf0, 0xc4, 0x2d, 0x99, 0xf9, 0xf5, 0x19, 0x0f, 0x68, 0x15, 0x44, 0x6a, 0xfc, 0x30, 0x43, 0xa8, 0x20, 0xd7, 0xda, 0xf2, 0x7e, 0x86, 0xb8, 0x3b, 0x8a, 0x01, 0xa2, 0xac, 0xd1, 0x82, 0x2e, 0xb5, 0x39, 0x38, 0x3d, 0xef, 0xff, 0x87, 0x69, 0xaa, 0xd8, 0xba, 0xcd, 0x50, 0xcd, 0x24, 0xca, 0x7a, 0xa6, 0x67, 0x06, 0x71, 0x41, 0x81, 0x10, 0x17, 0x78, 0x08, 0xc3, 0xf4, 0xfb, 0xe6, 0x04, 0x1b, 0x9c, 0xb8, 0x98, 0x35, 0x9e, 0xe6, 0x1e, 0x04, 0x82, 0x4a, 0xde, 0xdd, 0x62, 0xb3, 0x9f, 0xe5, 0x79, 0x19, 0x07, 0xa2, 0x05, 0x86, 0x33, 0x3b, 0xd3, 0xc7, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10680 = { .name = "ecdsa_secp521r1_sha512_10680", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10680_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10680_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10680_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 277 in file ecdsa_secp521r1_sha512_p1363_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10681 for ECDSA, tcId is 1 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10681_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10681_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10681_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x01, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x5a, 0x27, 0xa2, 0x4a, 0x1a, 0xae, 0x1e, 0x21, 0x8f, 0xdc, 0xcd, 0x8c, 0xd7, 0xd4, 0x99, 0x0b, 0x66, 0x6d, 0x4b, 0xf4, 0x90, 0x2b, 0x84, 0xfd, 0xad, 0x12, 0x3f, 0x94, 0x1f, 0xe9, 0x06, 0xd9, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10681 = { .name = "ecdsa_secp521r1_sha512_10681", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10681_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10681_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10681_sig, .siglen = 132, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10682 for ECDSA, tcId is 2 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10682_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10682_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10682_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10682 = { .name = "ecdsa_secp521r1_sha512_10682", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10682_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10682_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10682_sig, .siglen = 132, .result = 1, .comment = "valid, tcId is 2 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10683 for ECDSA, tcId is 3 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10683_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10683_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10683_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10683 = { .name = "ecdsa_secp521r1_sha512_10683", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10683_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10683_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10683_sig, .siglen = 132, .result = 0, .comment = "length of sequence contains leading 0, tcId is 3 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10684 for ECDSA, tcId is 66 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10684_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10684_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10684_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10684 = { .name = "ecdsa_secp521r1_sha512_10684", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10684_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10684_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10684_sig, .siglen = 132, .result = 0, .comment = "long form encoding of length of integer, tcId is 66 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10685 for ECDSA, tcId is 67 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10685_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10685_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10685_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10685 = { .name = "ecdsa_secp521r1_sha512_10685", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10685_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10685_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10685_sig, .siglen = 132, .result = 0, .comment = "long form encoding of length of integer, tcId is 67 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10686 for ECDSA, tcId is 68 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10686_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10686_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10686_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10686 = { .name = "ecdsa_secp521r1_sha512_10686", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10686_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10686_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10686_sig, .siglen = 132, .result = 0, .comment = "length of integer contains leading 0, tcId is 68 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10687 for ECDSA, tcId is 69 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10687_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10687_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10687_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10687 = { .name = "ecdsa_secp521r1_sha512_10687", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10687_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10687_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10687_sig, .siglen = 132, .result = 0, .comment = "length of integer contains leading 0, tcId is 69 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10688 for ECDSA, tcId is 91 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10688_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10688_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10688_sig[] = { 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x00, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10688 = { .name = "ecdsa_secp521r1_sha512_10688", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10688_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10688_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10688_sig, .siglen = 133, .result = -1, .comment = "appending 0's to integer, tcId is 91 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10689 for ECDSA, tcId is 92 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10689_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10689_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10689_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10689 = { .name = "ecdsa_secp521r1_sha512_10689", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10689_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10689_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10689_sig, .siglen = 133, .result = -1, .comment = "appending 0's to integer, tcId is 92 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10690 for ECDSA, tcId is 93 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10690_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10690_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10690_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10690 = { .name = "ecdsa_secp521r1_sha512_10690", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10690_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10690_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10690_sig, .siglen = 132, .result = 0, .comment = "prepending 0's to integer, tcId is 93 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10691 for ECDSA, tcId is 94 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10691_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10691_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10691_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10691 = { .name = "ecdsa_secp521r1_sha512_10691", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10691_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10691_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10691_sig, .siglen = 132, .result = 0, .comment = "prepending 0's to integer, tcId is 94 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10692 for ECDSA, tcId is 96 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10692_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10692_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10692_sig[] = { 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x05, 0x00, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10692 = { .name = "ecdsa_secp521r1_sha512_10692", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10692_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10692_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10692_sig, .siglen = 133, .result = -1, .comment = "appending null value to integer, tcId is 96 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10693 for ECDSA, tcId is 97 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10693_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10693_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10693_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10693 = { .name = "ecdsa_secp521r1_sha512_10693", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10693_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10693_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10693_sig, .siglen = 133, .result = -1, .comment = "appending null value to integer, tcId is 97 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10694 for ECDSA, tcId is 112 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10694_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10694_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10694_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10694 = { .name = "ecdsa_secp521r1_sha512_10694", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10694_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10694_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10694_sig, .siglen = 132, .result = -1, .comment = "dropping value of integer, tcId is 112 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10695 for ECDSA, tcId is 113 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10695_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10695_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10695_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10695 = { .name = "ecdsa_secp521r1_sha512_10695", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10695_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10695_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10695_sig, .siglen = 132, .result = -1, .comment = "dropping value of integer, tcId is 113 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10696 for ECDSA, tcId is 116 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10696_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10696_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10696_sig[] = { 0x00, 0x4c, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10696 = { .name = "ecdsa_secp521r1_sha512_10696", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10696_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10696_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10696_sig, .siglen = 132, .result = -1, .comment = "modify first byte of integer, tcId is 116 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10697 for ECDSA, tcId is 117 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10697_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10697_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10697_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x2a, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10697 = { .name = "ecdsa_secp521r1_sha512_10697", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10697_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10697_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10697_sig, .siglen = 132, .result = -1, .comment = "modify first byte of integer, tcId is 117 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10698 for ECDSA, tcId is 118 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10698_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10698_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10698_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0xc5, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10698 = { .name = "ecdsa_secp521r1_sha512_10698", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10698_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10698_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10698_sig, .siglen = 132, .result = -1, .comment = "modify last byte of integer, tcId is 118 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10699 for ECDSA, tcId is 119 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10699_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10699_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10699_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10699 = { .name = "ecdsa_secp521r1_sha512_10699", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10699_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10699_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10699_sig, .siglen = 132, .result = -1, .comment = "modify last byte of integer, tcId is 119 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10700 for ECDSA, tcId is 120 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10700_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10700_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10700_sig[] = { 0x00, 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10700 = { .name = "ecdsa_secp521r1_sha512_10700", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10700_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10700_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10700_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 120 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10701 for ECDSA, tcId is 121 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10701_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10701_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10701_sig[] = { 0x00, 0x00, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10701 = { .name = "ecdsa_secp521r1_sha512_10701", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10701_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10701_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10701_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 121 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10702 for ECDSA, tcId is 122 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10702_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10702_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10702_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10702 = { .name = "ecdsa_secp521r1_sha512_10702", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10702_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10702_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10702_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10703 for ECDSA, tcId is 123 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10703_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10703_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10703_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x00, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10703 = { .name = "ecdsa_secp521r1_sha512_10703", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10703_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10703_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10703_sig, .siglen = 132, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10704 for ECDSA, tcId is 124 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10704_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10704_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10704_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10704 = { .name = "ecdsa_secp521r1_sha512_10704", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10704_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10704_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10704_sig, .siglen = 132, .result = 0, .comment = "leading ff in integer, tcId is 124 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10705 for ECDSA, tcId is 125 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10705_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10705_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10705_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10705 = { .name = "ecdsa_secp521r1_sha512_10705", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10705_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10705_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10705_sig, .siglen = 132, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_secp521r1_sha512_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10706 for ECDSA, tcId is 128 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10706_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10706_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10706_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10706 = { .name = "ecdsa_secp521r1_sha512_10706", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10706_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10706_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10706_sig, .siglen = 132, .result = -1, .comment = "replacing integer with zero, tcId is 128 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10707 for ECDSA, tcId is 129 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10707_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10707_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10707_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10707 = { .name = "ecdsa_secp521r1_sha512_10707", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10707_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10707_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10707_sig, .siglen = 132, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10708 for ECDSA, tcId is 130 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10708_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10708_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10708_sig[] = { 0x02, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xe9, 0x7b, 0x33, 0x67, 0x12, 0x2f, 0xa4, 0xa2, 0x05, 0x84, 0xc2, 0x71, 0x23, 0x3f, 0x3e, 0xc3, 0xb7, 0xf7, 0xb3, 0x1b, 0x0f, 0xaa, 0x4d, 0x34, 0x0b, 0x92, 0xa6, 0xb0, 0xd5, 0xcd, 0x17, 0xea, 0x4e, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10708 = { .name = "ecdsa_secp521r1_sha512_10708", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10708_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10708_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10708_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 130 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10709 for ECDSA, tcId is 131 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10709_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10709_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10709_sig[] = { 0xfe, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xf4, 0xd8, 0x26, 0x58, 0x0a, 0xb1, 0x45, 0x75, 0x2e, 0x85, 0x2a, 0x6e, 0x91, 0x51, 0x2b, 0x78, 0x17, 0x80, 0x47, 0x87, 0x9e, 0x97, 0x14, 0xa4, 0xae, 0x1b, 0xc7, 0x42, 0x98, 0xaa, 0xa7, 0x22, 0x3c, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10709 = { .name = "ecdsa_secp521r1_sha512_10709", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10709_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10709_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10709_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10710 for ECDSA, tcId is 132 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10710_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10710_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10710_sig[] = { 0x00, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x10, 0xd6, 0x53, 0x20, 0x71, 0x8f, 0x8a, 0xf4, 0x65, 0xfb, 0x09, 0x90, 0x25, 0xb7, 0xca, 0xe2, 0x18, 0x44, 0x02, 0xae, 0xa8, 0xdf, 0x4f, 0x13, 0xa3, 0x28, 0xc9, 0x06, 0x48, 0xc4, 0x20, 0x79, 0xbb, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10710 = { .name = "ecdsa_secp521r1_sha512_10710", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10710_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10710_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10710_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10711 for ECDSA, tcId is 133 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10711_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10711_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10711_sig[] = { 0x01, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x0b, 0x27, 0xd9, 0xa7, 0xf5, 0x4e, 0xba, 0x8a, 0xd1, 0x7a, 0xd5, 0x91, 0x6e, 0xae, 0xd4, 0x87, 0xe8, 0x7f, 0xb8, 0x78, 0x61, 0x68, 0xeb, 0x5b, 0x51, 0xe4, 0x38, 0xbd, 0x67, 0x55, 0x58, 0xdd, 0xc4, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10711 = { .name = "ecdsa_secp521r1_sha512_10711", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10711_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10711_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10711_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10712 for ECDSA, tcId is 134 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10712_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10712_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10712_sig[] = { 0xfd, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x16, 0x84, 0xcc, 0x98, 0xed, 0xd0, 0x5b, 0x5d, 0xfa, 0x7b, 0x3d, 0x8e, 0xdc, 0xc0, 0xc1, 0x3c, 0x48, 0x08, 0x4c, 0xe4, 0xf0, 0x55, 0xb2, 0xcb, 0xf4, 0x6d, 0x59, 0x4f, 0x2a, 0x32, 0xe8, 0x15, 0xb2, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10712 = { .name = "ecdsa_secp521r1_sha512_10712", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10712_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10712_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10712_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10713 for ECDSA, tcId is 135 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10713_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10713_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10713_sig[] = { 0x02, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10713 = { .name = "ecdsa_secp521r1_sha512_10713", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10713_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10713_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10713_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10714 for ECDSA, tcId is 136 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10714_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10714_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10714_sig[] = { 0xfe, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10714 = { .name = "ecdsa_secp521r1_sha512_10714", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10714_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10714_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10714_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10715 for ECDSA, tcId is 137 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10715_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10715_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10715_sig[] = { 0x01, 0xb1, 0xbd, 0xdc, 0x11, 0xbc, 0x17, 0x34, 0x76, 0x21, 0xc4, 0xec, 0xc6, 0x00, 0x3d, 0x86, 0x1a, 0x7d, 0x07, 0xd3, 0x85, 0x4f, 0x08, 0xe4, 0x42, 0x1b, 0xc2, 0x41, 0xc8, 0xb5, 0x38, 0xa0, 0x04, 0x10, 0xd6, 0x53, 0x20, 0x71, 0x8f, 0x8a, 0xf4, 0x65, 0xfb, 0x09, 0x90, 0x25, 0xb7, 0xca, 0xe2, 0x18, 0x44, 0x02, 0xae, 0xa8, 0xdf, 0x4f, 0x13, 0xa3, 0x28, 0xc9, 0x06, 0x48, 0xc4, 0x20, 0x79, 0xbb, 0x00, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10715 = { .name = "ecdsa_secp521r1_sha512_10715", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10715_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10715_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10715_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10716 for ECDSA, tcId is 138 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10716_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10716_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10716_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x02, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0x9a, 0x7b, 0x6a, 0xc4, 0xec, 0xd0, 0x41, 0x0b, 0x47, 0x22, 0xca, 0x75, 0xba, 0x19, 0x7a, 0x40, 0x3a, 0x0a, 0x1f, 0x9e, 0xe0, 0xe7, 0xb3, 0x91, 0xb0, 0x64, 0x9f, 0xda, 0x1d, 0x39, 0x69, 0xee, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10716 = { .name = "ecdsa_secp521r1_sha512_10716", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10716_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10716_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10716_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10717 for ECDSA, tcId is 139 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10717_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10717_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10717_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0xfe, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa5, 0xd8, 0x5d, 0xb5, 0xe5, 0x51, 0xe1, 0xde, 0x70, 0x23, 0x32, 0x73, 0x28, 0x2b, 0x66, 0xf4, 0x99, 0x92, 0xb4, 0x0b, 0x6f, 0xd4, 0x7b, 0x02, 0x52, 0xed, 0xc0, 0x6b, 0xe0, 0x16, 0xf9, 0x26, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10717 = { .name = "ecdsa_secp521r1_sha512_10717", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10717_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10717_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10717_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10718 for ECDSA, tcId is 140 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10718_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10718_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10718_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x00, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x5f, 0xd6, 0x1b, 0xc2, 0x96, 0xee, 0xee, 0x8b, 0x24, 0x5d, 0x01, 0x8b, 0x8e, 0xdd, 0x8f, 0x65, 0x96, 0x31, 0x96, 0x2a, 0xd7, 0xa1, 0xe8, 0xb5, 0xfe, 0x56, 0xcf, 0xdd, 0x01, 0x57, 0xce, 0x75, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10718 = { .name = "ecdsa_secp521r1_sha512_10718", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10718_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10718_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10718_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10719 for ECDSA, tcId is 141 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10719_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10719_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10719_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0xfd, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x65, 0x84, 0x95, 0x3b, 0x13, 0x2f, 0xbe, 0xf4, 0xb8, 0xdd, 0x35, 0x8a, 0x45, 0xe6, 0x85, 0xbf, 0xc5, 0xf5, 0xe0, 0x61, 0x1f, 0x18, 0x4c, 0x6e, 0x4f, 0x9b, 0x60, 0x25, 0xe2, 0xc6, 0x96, 0x11, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10719 = { .name = "ecdsa_secp521r1_sha512_10719", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10719_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10719_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10719_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10720 for ECDSA, tcId is 142 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10720_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10720_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10720_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x02, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10720 = { .name = "ecdsa_secp521r1_sha512_10720", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10720_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10720_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10720_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10721 for ECDSA, tcId is 143 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10721_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10721_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10721_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0xfe, 0x28, 0xb5, 0xd0, 0x92, 0x6a, 0x41, 0x72, 0xb3, 0x49, 0xb0, 0xfd, 0x2e, 0x92, 0x94, 0x87, 0xa5, 0xed, 0xb9, 0x4b, 0x14, 0x2d, 0xf9, 0x23, 0xa6, 0x97, 0xe7, 0x44, 0x6a, 0xcd, 0xac, 0xdb, 0xa0, 0xa0, 0x29, 0xe4, 0x3d, 0x69, 0x11, 0x11, 0x74, 0xdb, 0xa2, 0xfe, 0x74, 0x71, 0x22, 0x70, 0x9a, 0x69, 0xce, 0x69, 0xd5, 0x28, 0x5e, 0x17, 0x4a, 0x01, 0xa9, 0x30, 0x22, 0xfe, 0xa8, 0x31, 0x8a, 0xc1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10721 = { .name = "ecdsa_secp521r1_sha512_10721", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10721_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10721_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10721_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10722 for ECDSA, tcId is 144 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10722_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10722_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10722_sig[] = { 0x00, 0x4e, 0x42, 0x23, 0xee, 0x43, 0xe8, 0xcb, 0x89, 0xde, 0x3b, 0x13, 0x39, 0xff, 0xc2, 0x79, 0xe5, 0x82, 0xf8, 0x2c, 0x7a, 0xb0, 0xf7, 0x1b, 0xbd, 0xe4, 0x3d, 0xbe, 0x37, 0x4a, 0xc7, 0x5f, 0xfb, 0xef, 0x29, 0xac, 0xdf, 0x8e, 0x70, 0x75, 0x0b, 0x9a, 0x04, 0xf6, 0x6f, 0xda, 0x48, 0x35, 0x1d, 0xe7, 0xbb, 0xfd, 0x51, 0x57, 0x20, 0xb0, 0xec, 0x5c, 0xd7, 0x36, 0xf9, 0xb7, 0x3b, 0xdf, 0x86, 0x45, 0x01, 0xd7, 0x4a, 0x2f, 0x6d, 0x95, 0xbe, 0x8d, 0x4c, 0xb6, 0x4f, 0x02, 0xd1, 0x6d, 0x6b, 0x78, 0x5a, 0x12, 0x46, 0xb4, 0xeb, 0xd2, 0x06, 0xdc, 0x59, 0x68, 0x18, 0xbb, 0x95, 0x32, 0x53, 0x24, 0x5f, 0x5f, 0xd6, 0x1b, 0xc2, 0x96, 0xee, 0xee, 0x8b, 0x24, 0x5d, 0x01, 0x8b, 0x8e, 0xdd, 0x8f, 0x65, 0x96, 0x31, 0x96, 0x2a, 0xd7, 0xa1, 0xe8, 0xb5, 0xfe, 0x56, 0xcf, 0xdd, 0x01, 0x57, 0xce, 0x75, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10722 = { .name = "ecdsa_secp521r1_sha512_10722", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10722_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10722_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10722_sig, .siglen = 132, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 144 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10723 for ECDSA, tcId is 145 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10723_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10723_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10723_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10723 = { .name = "ecdsa_secp521r1_sha512_10723", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10723_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10723_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10723_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10724 for ECDSA, tcId is 146 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10724_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10724_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10724_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10724 = { .name = "ecdsa_secp521r1_sha512_10724", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10724_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10724_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10724_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10725 for ECDSA, tcId is 147 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10725_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10725_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10725_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10725 = { .name = "ecdsa_secp521r1_sha512_10725", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10725_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10725_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10725_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10726 for ECDSA, tcId is 148 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10726_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10726_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10726_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10726 = { .name = "ecdsa_secp521r1_sha512_10726", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10726_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10726_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10726_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10727 for ECDSA, tcId is 149 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10727_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10727_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10727_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10727 = { .name = "ecdsa_secp521r1_sha512_10727", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10727_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10727_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10727_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10728 for ECDSA, tcId is 150 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10728_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10728_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10728_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10728 = { .name = "ecdsa_secp521r1_sha512_10728", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10728_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10728_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10728_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10729 for ECDSA, tcId is 151 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10729_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10729_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10729_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10729 = { .name = "ecdsa_secp521r1_sha512_10729", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10729_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10729_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10729_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10730 for ECDSA, tcId is 152 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10730_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10730_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10730_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10730 = { .name = "ecdsa_secp521r1_sha512_10730", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10730_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10730_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10730_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 152 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10731 for ECDSA, tcId is 155 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10731_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10731_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10731_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10731 = { .name = "ecdsa_secp521r1_sha512_10731", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10731_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10731_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10731_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10732 for ECDSA, tcId is 156 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10732_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10732_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10732_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10732 = { .name = "ecdsa_secp521r1_sha512_10732", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10732_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10732_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10732_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10733 for ECDSA, tcId is 157 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10733_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10733_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10733_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10733 = { .name = "ecdsa_secp521r1_sha512_10733", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10733_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10733_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10733_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10734 for ECDSA, tcId is 158 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10734_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10734_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10734_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10734 = { .name = "ecdsa_secp521r1_sha512_10734", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10734_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10734_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10734_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10735 for ECDSA, tcId is 159 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10735_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10735_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10735_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10735 = { .name = "ecdsa_secp521r1_sha512_10735", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10735_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10735_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10735_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10736 for ECDSA, tcId is 160 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10736_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10736_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10736_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10736 = { .name = "ecdsa_secp521r1_sha512_10736", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10736_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10736_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10736_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10737 for ECDSA, tcId is 161 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10737_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10737_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10737_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10737 = { .name = "ecdsa_secp521r1_sha512_10737", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10737_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10737_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10737_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10738 for ECDSA, tcId is 162 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10738_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10738_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10738_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10738 = { .name = "ecdsa_secp521r1_sha512_10738", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10738_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10738_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10738_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 162 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10739 for ECDSA, tcId is 165 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10739_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10739_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10739_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10739 = { .name = "ecdsa_secp521r1_sha512_10739", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10739_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10739_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10739_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10740 for ECDSA, tcId is 166 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10740_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10740_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10740_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10740 = { .name = "ecdsa_secp521r1_sha512_10740", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10740_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10740_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10740_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10741 for ECDSA, tcId is 167 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10741_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10741_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10741_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10741 = { .name = "ecdsa_secp521r1_sha512_10741", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10741_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10741_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10741_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10742 for ECDSA, tcId is 168 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10742_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10742_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10742_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10742 = { .name = "ecdsa_secp521r1_sha512_10742", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10742_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10742_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10742_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10743 for ECDSA, tcId is 169 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10743_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10743_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10743_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10743 = { .name = "ecdsa_secp521r1_sha512_10743", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10743_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10743_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10743_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10744 for ECDSA, tcId is 170 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10744_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10744_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10744_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10744 = { .name = "ecdsa_secp521r1_sha512_10744", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10744_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10744_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10744_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10745 for ECDSA, tcId is 171 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10745_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10745_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10745 = { .name = "ecdsa_secp521r1_sha512_10745", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10745_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10745_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10745_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10746 for ECDSA, tcId is 172 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10746_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10746_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10746 = { .name = "ecdsa_secp521r1_sha512_10746", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10746_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10746_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10746_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 172 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10747 for ECDSA, tcId is 175 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10747_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10747_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10747 = { .name = "ecdsa_secp521r1_sha512_10747", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10747_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10747_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10747_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10748 for ECDSA, tcId is 176 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10748_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10748_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10748 = { .name = "ecdsa_secp521r1_sha512_10748", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10748_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10748_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10748_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10749 for ECDSA, tcId is 177 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10749_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10749_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10749 = { .name = "ecdsa_secp521r1_sha512_10749", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10749_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10749_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10749_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10750 for ECDSA, tcId is 178 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10750_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10750_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10750 = { .name = "ecdsa_secp521r1_sha512_10750", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10750_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10750_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10750_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10751 for ECDSA, tcId is 179 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10751_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10751_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10751 = { .name = "ecdsa_secp521r1_sha512_10751", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10751_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10751_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10751_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10752 for ECDSA, tcId is 180 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10752_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10752_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10752 = { .name = "ecdsa_secp521r1_sha512_10752", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10752_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10752_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10752_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10753 for ECDSA, tcId is 181 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10753_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10753_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10753 = { .name = "ecdsa_secp521r1_sha512_10753", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10753_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10753_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10753_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10754 for ECDSA, tcId is 182 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10754_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10754_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10754 = { .name = "ecdsa_secp521r1_sha512_10754", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10754_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10754_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10754_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 182 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10755 for ECDSA, tcId is 185 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10755_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10755_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10755 = { .name = "ecdsa_secp521r1_sha512_10755", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10755_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10755_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10755_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10756 for ECDSA, tcId is 186 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10756_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10756_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10756 = { .name = "ecdsa_secp521r1_sha512_10756", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10756_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10756_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10756_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10757 for ECDSA, tcId is 187 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10757_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10757_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10757 = { .name = "ecdsa_secp521r1_sha512_10757", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10757_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10757_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10757_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10758 for ECDSA, tcId is 188 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10758_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10758_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10758 = { .name = "ecdsa_secp521r1_sha512_10758", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10758_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10758_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10758_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10759 for ECDSA, tcId is 189 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10759_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10759_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10759 = { .name = "ecdsa_secp521r1_sha512_10759", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10759_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10759_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10759_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10760 for ECDSA, tcId is 190 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10760_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10760_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10760 = { .name = "ecdsa_secp521r1_sha512_10760", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10760_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10760_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10760_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10761 for ECDSA, tcId is 191 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10761_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10761_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10761 = { .name = "ecdsa_secp521r1_sha512_10761", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10761_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10761_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10761_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10762 for ECDSA, tcId is 192 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10762_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10762_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10762 = { .name = "ecdsa_secp521r1_sha512_10762", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10762_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10762_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10762_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 192 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10763 for ECDSA, tcId is 195 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10763_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10763_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10763 = { .name = "ecdsa_secp521r1_sha512_10763", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10763_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10763_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10763_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10764 for ECDSA, tcId is 196 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10764_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10764_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10764 = { .name = "ecdsa_secp521r1_sha512_10764", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10764_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10764_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10764_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10765 for ECDSA, tcId is 197 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10765_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10765_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10765 = { .name = "ecdsa_secp521r1_sha512_10765", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10765_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10765_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10765_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10766 for ECDSA, tcId is 198 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10766_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10766_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10766 = { .name = "ecdsa_secp521r1_sha512_10766", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10766_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10766_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10766_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10767 for ECDSA, tcId is 199 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10767_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10767_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10767 = { .name = "ecdsa_secp521r1_sha512_10767", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10767_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10767_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10767_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10768 for ECDSA, tcId is 200 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10768_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10768_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10768 = { .name = "ecdsa_secp521r1_sha512_10768", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10768_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10768_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10768_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10769 for ECDSA, tcId is 201 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10769_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10769_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10769 = { .name = "ecdsa_secp521r1_sha512_10769", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10769_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10769_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10769_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10770 for ECDSA, tcId is 202 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10770_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10770_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10770 = { .name = "ecdsa_secp521r1_sha512_10770", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10770_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10770_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10770_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 202 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10771 for ECDSA, tcId is 205 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10771_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10771_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10771 = { .name = "ecdsa_secp521r1_sha512_10771", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10771_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10771_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10771_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10772 for ECDSA, tcId is 206 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10772_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10772_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10772 = { .name = "ecdsa_secp521r1_sha512_10772", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10772_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10772_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10772_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10773 for ECDSA, tcId is 207 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10773_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10773_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10773 = { .name = "ecdsa_secp521r1_sha512_10773", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10773_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10773_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10773_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10774 for ECDSA, tcId is 208 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10774_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10774_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10774 = { .name = "ecdsa_secp521r1_sha512_10774", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10774_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10774_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10774_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10775 for ECDSA, tcId is 209 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10775_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10775_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10775 = { .name = "ecdsa_secp521r1_sha512_10775", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10775_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10775_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10775_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10776 for ECDSA, tcId is 210 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10776_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10776_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10776 = { .name = "ecdsa_secp521r1_sha512_10776", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10776_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10776_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10776_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10777 for ECDSA, tcId is 211 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10777_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10777_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10777 = { .name = "ecdsa_secp521r1_sha512_10777", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10777_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10777_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10777_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10778 for ECDSA, tcId is 212 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10778_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10778_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10778 = { .name = "ecdsa_secp521r1_sha512_10778", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10778_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10778_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10778_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 212 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10779 for ECDSA, tcId is 215 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10779_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10779_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10779 = { .name = "ecdsa_secp521r1_sha512_10779", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10779_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10779_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10779_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10780 for ECDSA, tcId is 216 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10780_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10780_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10780 = { .name = "ecdsa_secp521r1_sha512_10780", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10780_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10780_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10780_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10781 for ECDSA, tcId is 217 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10781_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10781_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10781 = { .name = "ecdsa_secp521r1_sha512_10781", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10781_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10781_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10781_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10782 for ECDSA, tcId is 218 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10782_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10782_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10782 = { .name = "ecdsa_secp521r1_sha512_10782", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10782_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10782_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10782_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10783 for ECDSA, tcId is 219 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10783_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10783_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10783 = { .name = "ecdsa_secp521r1_sha512_10783", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10783_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10783_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10783_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10784 for ECDSA, tcId is 220 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10784_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10784_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10784 = { .name = "ecdsa_secp521r1_sha512_10784", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10784_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10784_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10784_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10785 for ECDSA, tcId is 221 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10785_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10785_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10785 = { .name = "ecdsa_secp521r1_sha512_10785", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10785_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10785_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10785_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10786 for ECDSA, tcId is 222 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10786_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10786_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10786 = { .name = "ecdsa_secp521r1_sha512_10786", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10786_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10786_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10786_sig, .siglen = 132, .result = -1, .comment = "Signature with special case values for r and s, tcId is 222 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10787 for ECDSA, tcId is 231 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10787_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10787_msg[] = { 0x39, 0x35, 0x30, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10787_sig[] = { 0x00, 0xb4, 0xb1, 0x06, 0x46, 0xa6, 0x68, 0xc3, 0x85, 0xe1, 0xc4, 0xda, 0x61, 0x3e, 0xb6, 0x59, 0x2c, 0x09, 0x76, 0xfc, 0x4d, 0xf8, 0x43, 0xfc, 0x44, 0x6f, 0x20, 0x67, 0x3b, 0xe5, 0xac, 0x18, 0xc7, 0xd8, 0x60, 0x8a, 0x94, 0x3f, 0x01, 0x9d, 0x96, 0x21, 0x62, 0x54, 0xb0, 0x9d, 0xe5, 0xf2, 0x0f, 0x31, 0x59, 0x40, 0x2c, 0xed, 0x88, 0xef, 0x80, 0x5a, 0x41, 0x54, 0xf7, 0x80, 0xe0, 0x93, 0xe0, 0x44, 0x00, 0x65, 0xcd, 0x4e, 0x7f, 0x2d, 0x8b, 0x75, 0x2c, 0x35, 0xa6, 0x2f, 0xc1, 0x1a, 0x4a, 0xb7, 0x45, 0xa9, 0x1c, 0xa8, 0x06, 0x98, 0xa2, 0x26, 0xb4, 0x1f, 0x15, 0x6f, 0xb7, 0x64, 0xb7, 0x9f, 0x4d, 0x76, 0x54, 0x81, 0x40, 0xeb, 0x94, 0xd2, 0xc4, 0x77, 0xc0, 0xa9, 0xbe, 0x3e, 0x1d, 0x4d, 0x1a, 0xcb, 0xf9, 0xcf, 0x44, 0x97, 0x01, 0xc1, 0x0b, 0xd4, 0x7c, 0x2e, 0x36, 0x98, 0xb3, 0x28, 0x79, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10787 = { .name = "ecdsa_secp521r1_sha512_10787", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10787_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10787_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_10787_sig, .siglen = 132, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 231 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10788 for ECDSA, tcId is 232 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10788_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10788_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x31, 0x39, 0x34, 0x31, 0x37, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10788_sig[] = { 0x01, 0x20, 0x9e, 0x6f, 0x7b, 0x6f, 0x2f, 0x76, 0x42, 0x61, 0x76, 0x6d, 0x41, 0x06, 0xc3, 0xe4, 0xa4, 0x3a, 0xc6, 0x15, 0xf6, 0x45, 0xf3, 0xef, 0x5c, 0x71, 0x39, 0x65, 0x1e, 0x86, 0xe4, 0xa1, 0x77, 0xf9, 0xc2, 0xab, 0x68, 0x02, 0x7a, 0xfb, 0xc6, 0x78, 0x4c, 0xcb, 0x78, 0xd0, 0x5c, 0x25, 0x8a, 0x8b, 0x9b, 0x18, 0xfb, 0x1c, 0x0f, 0x28, 0xbe, 0x4d, 0x02, 0x4d, 0xa9, 0x07, 0x38, 0xfb, 0xd3, 0x74, 0x01, 0xad, 0xe5, 0xd2, 0xcb, 0x6b, 0xf7, 0x9d, 0x80, 0x58, 0x3a, 0xeb, 0x11, 0xac, 0x32, 0x54, 0xfc, 0x15, 0x1f, 0xa3, 0x63, 0x30, 0x55, 0x08, 0xa0, 0xf1, 0x21, 0x45, 0x7d, 0x00, 0x91, 0x1f, 0x8f, 0x5e, 0xf6, 0xd4, 0xec, 0x27, 0x46, 0x0d, 0x26, 0xf3, 0xb5, 0x6f, 0x44, 0x47, 0xf4, 0x34, 0xff, 0x9a, 0xbe, 0x6a, 0x91, 0xe5, 0x05, 0x5e, 0x7f, 0xe7, 0x70, 0x73, 0x45, 0xe5, 0x62, 0x98, 0x3d, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10788 = { .name = "ecdsa_secp521r1_sha512_10788", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10788_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10788_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10788_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10789 for ECDSA, tcId is 233 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10789_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10789_msg[] = { 0x35, 0x33, 0x36, 0x37, 0x36, 0x34, 0x31, 0x38, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10789_sig[] = { 0x01, 0xc0, 0x83, 0x2c, 0x97, 0x3a, 0x45, 0x5c, 0xac, 0x48, 0xa4, 0x43, 0x96, 0x59, 0xaa, 0x21, 0x14, 0x60, 0x36, 0xc5, 0x2e, 0xc1, 0x51, 0x41, 0x21, 0xc6, 0x67, 0x14, 0x34, 0x8a, 0x1c, 0x0e, 0x2c, 0x70, 0x99, 0xa2, 0x46, 0x6d, 0x9a, 0xcb, 0x49, 0x32, 0x5a, 0x0c, 0xb5, 0x09, 0xe5, 0xdf, 0xf2, 0xef, 0xbc, 0xd9, 0x03, 0x69, 0xd3, 0x02, 0x7c, 0xbb, 0x7d, 0xca, 0x58, 0xa1, 0x34, 0x27, 0x8d, 0x05, 0x00, 0xa4, 0x26, 0xc0, 0x63, 0xab, 0x5c, 0xc6, 0xaf, 0x20, 0xdd, 0x1b, 0xa8, 0xa5, 0x19, 0xfa, 0xc9, 0x10, 0x18, 0x35, 0x61, 0x59, 0x8e, 0x67, 0xc0, 0x92, 0x9e, 0x25, 0xf9, 0xc3, 0xaa, 0xeb, 0x24, 0x5c, 0x56, 0x47, 0xfb, 0xa2, 0x1e, 0x30, 0xc1, 0x03, 0x30, 0x4d, 0xc6, 0xf4, 0x9e, 0x6d, 0xec, 0x68, 0xa7, 0x83, 0x35, 0x33, 0xe4, 0xe5, 0x44, 0x82, 0x40, 0xbd, 0xe0, 0x23, 0xfe, 0x20, 0x1e, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10789 = { .name = "ecdsa_secp521r1_sha512_10789", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10789_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10789_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10789_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10790 for ECDSA, tcId is 234 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10790_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10790_msg[] = { 0x35, 0x36, 0x37, 0x31, 0x34, 0x38, 0x31, 0x30, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10790_sig[] = { 0x00, 0x0d, 0x01, 0xcd, 0xe6, 0x4d, 0xda, 0x4d, 0xbc, 0xef, 0x1a, 0x9b, 0x92, 0x47, 0x79, 0x59, 0x82, 0x17, 0xb9, 0x7e, 0xb6, 0x88, 0xd9, 0xb4, 0xa4, 0xfd, 0x20, 0xd1, 0xb8, 0x1f, 0xf0, 0xbb, 0x87, 0x0a, 0xbf, 0xf1, 0xb0, 0xdb, 0x6d, 0xfc, 0x37, 0x62, 0xf2, 0x7c, 0x39, 0x54, 0xf2, 0x30, 0xa7, 0x93, 0x3d, 0x9e, 0xa3, 0x97, 0xa9, 0x72, 0xca, 0xac, 0x5e, 0xd2, 0x18, 0x3e, 0xc7, 0x27, 0x16, 0xc7, 0x01, 0xc6, 0x53, 0x0f, 0xb6, 0xb9, 0x13, 0x00, 0x5f, 0x81, 0xe1, 0x56, 0xbe, 0x89, 0xb3, 0x84, 0x77, 0x01, 0x82, 0x9f, 0xbb, 0x31, 0x0d, 0x8a, 0x4c, 0x76, 0x12, 0x12, 0xc6, 0xd2, 0xf8, 0x75, 0x01, 0x74, 0xf2, 0xbf, 0x81, 0xc2, 0x38, 0xfd, 0xde, 0x43, 0x70, 0xfa, 0x87, 0xde, 0x32, 0x0f, 0x57, 0xdb, 0xed, 0x96, 0x69, 0x1a, 0xf4, 0x5c, 0xb9, 0x9f, 0x3d, 0xaa, 0x86, 0x5e, 0xdc, 0xdd, 0xa5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10790 = { .name = "ecdsa_secp521r1_sha512_10790", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10790_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10790_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10790_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10791 for ECDSA, tcId is 235 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10791_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10791_msg[] = { 0x31, 0x31, 0x32, 0x30, 0x37, 0x31, 0x37, 0x32, 0x39, 0x30, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10791_sig[] = { 0x00, 0xc0, 0x09, 0xc7, 0x4e, 0xc7, 0x07, 0x25, 0x23, 0x25, 0xd7, 0x8f, 0x4e, 0x7f, 0x14, 0xbe, 0x28, 0xf5, 0x62, 0x72, 0xbe, 0x17, 0xc0, 0xc1, 0x8c, 0x90, 0xad, 0x4c, 0x07, 0x32, 0x2c, 0xef, 0x4e, 0xea, 0x44, 0x4c, 0x8f, 0xea, 0xbf, 0x41, 0xa2, 0x13, 0xe3, 0xe8, 0x46, 0xf8, 0xac, 0x8b, 0xb7, 0x75, 0x0d, 0x49, 0x14, 0x30, 0x69, 0xcd, 0x01, 0x87, 0x7d, 0x53, 0x0b, 0xb9, 0x81, 0xf1, 0xa8, 0x5b, 0x00, 0x1f, 0x1c, 0x27, 0xef, 0x97, 0xf4, 0x34, 0xa8, 0xc2, 0xff, 0x31, 0x5d, 0xd3, 0x9d, 0x90, 0x97, 0x09, 0x77, 0x5b, 0xb3, 0xc7, 0x58, 0x82, 0x43, 0xbd, 0xfd, 0x8f, 0x7c, 0x86, 0x6c, 0x49, 0xb3, 0x36, 0x97, 0x19, 0xd5, 0xb7, 0x4a, 0x47, 0x92, 0x4b, 0xbc, 0xe5, 0x73, 0x01, 0x67, 0x5e, 0x2b, 0xaa, 0xdc, 0xec, 0x43, 0x8e, 0x07, 0xe6, 0xd5, 0x32, 0xab, 0xa6, 0x64, 0x25, 0x3a, 0xb0, 0x95, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10791 = { .name = "ecdsa_secp521r1_sha512_10791", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10791_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10791_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10791_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10792 for ECDSA, tcId is 236 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10792_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10792_msg[] = { 0x31, 0x31, 0x32, 0x39, 0x38, 0x30, 0x33, 0x34, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10792_sig[] = { 0x01, 0xd3, 0xb1, 0x7a, 0x34, 0xb1, 0x9d, 0x13, 0x47, 0x73, 0x98, 0x8c, 0x43, 0x4a, 0x9f, 0xb7, 0xf2, 0x2a, 0x57, 0xdf, 0xb4, 0xc4, 0xbc, 0xca, 0x03, 0x1e, 0x21, 0x3e, 0x1b, 0x9a, 0x56, 0xdb, 0x0e, 0xcb, 0x2f, 0x3c, 0x54, 0xcf, 0x9b, 0x1b, 0x6e, 0x59, 0x81, 0x36, 0x96, 0x52, 0xde, 0x37, 0x33, 0x7a, 0x7a, 0x7d, 0x7d, 0xdb, 0x54, 0xd6, 0x7b, 0x06, 0x7b, 0xbc, 0xe0, 0x1f, 0xd7, 0xfd, 0x28, 0x08, 0x00, 0xc9, 0x03, 0x17, 0xdf, 0xa0, 0x61, 0x12, 0x25, 0x57, 0xeb, 0x38, 0x99, 0x93, 0x99, 0x24, 0xa8, 0xea, 0x3c, 0xdd, 0x88, 0x6e, 0x0f, 0x2e, 0x5f, 0x2c, 0x38, 0x4b, 0x65, 0xb1, 0xa4, 0x0d, 0xe5, 0xf0, 0x0f, 0xd9, 0xfc, 0xe8, 0x89, 0xfc, 0x31, 0x3a, 0x6a, 0x9d, 0x5f, 0x0a, 0x9c, 0xd3, 0xa7, 0xb8, 0x9b, 0x7b, 0xa8, 0xe9, 0x78, 0x07, 0x03, 0x1f, 0x3d, 0x1e, 0x3f, 0x9c, 0x10, 0x3f, 0x0a, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10792 = { .name = "ecdsa_secp521r1_sha512_10792", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10792_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10792_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10792_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10793 for ECDSA, tcId is 237 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10793_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10793_msg[] = { 0x39, 0x38, 0x37, 0x36, 0x30, 0x32, 0x39, 0x36, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10793_sig[] = { 0x00, 0xcd, 0xca, 0x52, 0x99, 0xe7, 0x88, 0x60, 0x0a, 0x3c, 0xa5, 0x93, 0x8d, 0x4a, 0x4c, 0x5f, 0x42, 0xb5, 0xee, 0xa3, 0xce, 0xfc, 0x99, 0x0e, 0x67, 0xaf, 0x95, 0xa4, 0x44, 0x9a, 0xac, 0x0a, 0xb5, 0x0e, 0x8f, 0xc4, 0x77, 0x8e, 0xfa, 0x49, 0x72, 0x23, 0xcd, 0xca, 0x07, 0xc0, 0xe5, 0xa5, 0x92, 0x01, 0x10, 0xf3, 0xa8, 0x7a, 0xfa, 0xaf, 0x26, 0x5b, 0xea, 0xdb, 0xb9, 0x1c, 0x00, 0xd1, 0x34, 0x64, 0x01, 0xa9, 0x2b, 0x9a, 0x55, 0x70, 0xb4, 0x2f, 0x91, 0xeb, 0xc3, 0xd8, 0xba, 0x27, 0x2d, 0xb9, 0x24, 0x14, 0x68, 0x15, 0x47, 0x83, 0x54, 0x8d, 0x3f, 0xcf, 0xb6, 0xef, 0x46, 0xc9, 0xe0, 0x37, 0xbb, 0x62, 0x17, 0xaf, 0x0a, 0x31, 0xef, 0x95, 0x2c, 0x27, 0x60, 0x46, 0x29, 0xad, 0x57, 0x75, 0xe7, 0x69, 0x5c, 0x63, 0xef, 0xa1, 0x38, 0xce, 0xe8, 0x32, 0x6a, 0x51, 0xc1, 0xb0, 0x4d, 0x0c, 0x65, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10793 = { .name = "ecdsa_secp521r1_sha512_10793", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10793_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10793_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10793_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10794 for ECDSA, tcId is 238 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10794_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10794_msg[] = { 0x32, 0x30, 0x32, 0x30, 0x34, 0x32, 0x39, 0x36, 0x35, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10794_sig[] = { 0x01, 0x66, 0x0b, 0x0e, 0xd1, 0x5d, 0x5f, 0x63, 0x04, 0x4c, 0xb1, 0x89, 0xe1, 0xa4, 0x05, 0xbc, 0xb5, 0x91, 0xc3, 0x72, 0x17, 0xd0, 0xe0, 0x00, 0x00, 0x86, 0x14, 0xb1, 0x52, 0x66, 0x5d, 0x5b, 0xb9, 0x35, 0x3a, 0x38, 0x26, 0x85, 0x4a, 0x8b, 0xc6, 0xeb, 0xed, 0x42, 0x3b, 0x15, 0x68, 0x0e, 0x43, 0x40, 0xa0, 0x07, 0x01, 0xb1, 0x7b, 0xae, 0x24, 0xbd, 0x39, 0x9b, 0xcf, 0xf7, 0xe0, 0x43, 0x8b, 0xfb, 0x01, 0xc4, 0x7f, 0x2f, 0x5c, 0x61, 0x43, 0xd2, 0xee, 0xf0, 0x63, 0x75, 0x71, 0x14, 0xaa, 0xeb, 0x27, 0x82, 0x7b, 0x6a, 0x8f, 0x67, 0x5d, 0x18, 0x25, 0xda, 0xc7, 0xf4, 0x54, 0x8c, 0xbf, 0x78, 0xa3, 0x7e, 0xb9, 0x62, 0x1a, 0x29, 0xe9, 0xb1, 0x4c, 0xf6, 0x1f, 0xc6, 0xae, 0x49, 0xe7, 0xe6, 0xe1, 0x53, 0x50, 0xa4, 0xb9, 0x0a, 0x4a, 0x89, 0x7f, 0xf6, 0x9b, 0x0c, 0x59, 0xb6, 0x95, 0x08, 0xeb, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10794 = { .name = "ecdsa_secp521r1_sha512_10794", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10794_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10794_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10794_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10795 for ECDSA, tcId is 239 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10795_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10795_msg[] = { 0x31, 0x34, 0x35, 0x31, 0x36, 0x36, 0x39, 0x31, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10795_sig[] = { 0x00, 0x36, 0x46, 0x84, 0x85, 0x6c, 0x7c, 0x02, 0xbf, 0xb2, 0xad, 0x2d, 0xe6, 0x03, 0xd1, 0x08, 0x83, 0xca, 0x93, 0xc1, 0x22, 0xd4, 0xce, 0xbe, 0xf2, 0x76, 0x46, 0x7a, 0x9b, 0x76, 0x20, 0xfb, 0x53, 0x0e, 0x4d, 0x05, 0xd0, 0x7c, 0x15, 0xab, 0x94, 0x8b, 0x9c, 0xe7, 0x68, 0x25, 0x61, 0x30, 0x79, 0x13, 0xb6, 0x4e, 0xa6, 0x89, 0x6e, 0xce, 0x10, 0x95, 0xdc, 0x64, 0x36, 0x9f, 0x1a, 0x9d, 0x5c, 0x0d, 0x00, 0x9e, 0x6d, 0xb2, 0xff, 0x96, 0xd9, 0xd7, 0x11, 0x50, 0x44, 0x0f, 0xd4, 0x49, 0x92, 0x65, 0x6c, 0xa1, 0x18, 0xfc, 0xaf, 0x6b, 0xd0, 0x44, 0x99, 0x31, 0x4e, 0x8b, 0xa6, 0x1a, 0x55, 0xa8, 0x79, 0x0a, 0xac, 0x02, 0x3d, 0xdb, 0x68, 0x60, 0x0f, 0xbd, 0x7e, 0xd4, 0xcd, 0x4d, 0xec, 0xb1, 0x76, 0xe8, 0xbd, 0x78, 0x22, 0xea, 0x31, 0xd7, 0x5a, 0xdc, 0xbd, 0xac, 0xca, 0xfc, 0xf5, 0x10, 0xc2, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10795 = { .name = "ecdsa_secp521r1_sha512_10795", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10795_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10795_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10795_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10796 for ECDSA, tcId is 240 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10796_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10796_msg[] = { 0x31, 0x30, 0x39, 0x33, 0x36, 0x38, 0x35, 0x39, 0x35, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10796_sig[] = { 0x01, 0xa3, 0x17, 0xe4, 0x90, 0x14, 0xf1, 0xbf, 0x3a, 0xfc, 0x09, 0xcc, 0x04, 0x85, 0x31, 0x01, 0x0e, 0x21, 0x44, 0xb6, 0x62, 0xca, 0xc6, 0x57, 0xe5, 0x1b, 0x32, 0xbb, 0x43, 0x2d, 0x27, 0x4a, 0x73, 0x0b, 0x53, 0x5f, 0xb2, 0xde, 0x66, 0xfa, 0x8d, 0xdd, 0x26, 0xfa, 0xa3, 0xf4, 0x6e, 0x00, 0x43, 0x89, 0xd2, 0x55, 0x17, 0xc5, 0x6e, 0x7d, 0x8a, 0x1d, 0x39, 0x56, 0x3b, 0x0e, 0x8c, 0x9c, 0x21, 0x5b, 0x01, 0xad, 0x2e, 0x12, 0x12, 0xe1, 0x68, 0x0b, 0x66, 0x0a, 0x1c, 0x07, 0xf5, 0x4a, 0xdd, 0xff, 0x57, 0x5c, 0x8c, 0x82, 0x98, 0xe2, 0x6a, 0x14, 0xc5, 0x16, 0xf5, 0x17, 0xfb, 0x5f, 0x96, 0x6a, 0x2b, 0x38, 0x3a, 0xa4, 0x6a, 0x48, 0x3f, 0xdb, 0xfa, 0x72, 0x71, 0x1d, 0x60, 0xc0, 0xf6, 0x7a, 0x2c, 0x03, 0xd6, 0x3d, 0x26, 0x26, 0xff, 0xe2, 0x71, 0xe0, 0xce, 0x35, 0x3a, 0x4d, 0x4b, 0x09, 0xbd, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10796 = { .name = "ecdsa_secp521r1_sha512_10796", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10796_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10796_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10796_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10797 for ECDSA, tcId is 241 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10797_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10797_msg[] = { 0x36, 0x32, 0x31, 0x39, 0x35, 0x36, 0x30, 0x32, 0x30, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10797_sig[] = { 0x01, 0xc0, 0x9b, 0x29, 0xfc, 0x4d, 0xa0, 0x4e, 0x9b, 0x86, 0x09, 0x7b, 0xd6, 0xd6, 0x80, 0x6a, 0xa9, 0x69, 0xce, 0xb3, 0x7c, 0xe5, 0x2e, 0xea, 0xc5, 0xe9, 0x51, 0x8d, 0x27, 0x54, 0x1c, 0x3f, 0x30, 0xc0, 0x0f, 0x11, 0x3d, 0x9d, 0xd3, 0xb0, 0x07, 0xda, 0xe6, 0xf3, 0x81, 0x89, 0x6d, 0x43, 0xfc, 0x6d, 0xdf, 0xb3, 0xfa, 0x25, 0x6a, 0x36, 0x52, 0x9b, 0x05, 0x4e, 0x41, 0x6e, 0xd6, 0x38, 0x05, 0x99, 0x01, 0x13, 0xe5, 0x62, 0x2c, 0xb1, 0xe4, 0xc4, 0xbb, 0x08, 0x42, 0xf3, 0xd3, 0x96, 0xd7, 0xe6, 0x60, 0x24, 0x11, 0x16, 0xe9, 0x4e, 0x81, 0x20, 0xa6, 0x02, 0xe3, 0xd2, 0x95, 0x27, 0x01, 0xb1, 0xa1, 0x14, 0x15, 0xa3, 0xd8, 0xc5, 0x03, 0xad, 0xce, 0xd1, 0x60, 0x45, 0x0f, 0xd1, 0x31, 0x57, 0xad, 0x14, 0x7d, 0x2d, 0x65, 0xd7, 0x74, 0x49, 0x45, 0x86, 0x59, 0x35, 0x0e, 0x20, 0xa5, 0x45, 0x60, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10797 = { .name = "ecdsa_secp521r1_sha512_10797", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10797_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10797_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10797_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10798 for ECDSA, tcId is 242 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10798_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10798_msg[] = { 0x35, 0x36, 0x38, 0x32, 0x34, 0x37, 0x34, 0x33, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10798_sig[] = { 0x00, 0x78, 0xf4, 0xa2, 0x96, 0x84, 0x60, 0xea, 0x8f, 0x64, 0xa9, 0x38, 0xb3, 0xa9, 0x7c, 0x91, 0x4e, 0xb0, 0xcc, 0xfa, 0x94, 0xeb, 0x08, 0x63, 0x6e, 0xfe, 0xe9, 0xd5, 0xad, 0x86, 0x68, 0xce, 0x1c, 0x90, 0x99, 0x57, 0x3a, 0xbd, 0x14, 0x6d, 0xf9, 0xe7, 0xb2, 0xcc, 0xaa, 0xa1, 0xa2, 0x5d, 0xe9, 0x03, 0xf8, 0x59, 0x62, 0x84, 0x93, 0x56, 0xa8, 0x72, 0xe8, 0x8e, 0x54, 0x5b, 0xab, 0xc2, 0x89, 0x74, 0x00, 0xf2, 0x72, 0x9e, 0x95, 0x93, 0xc9, 0xfc, 0xdf, 0x59, 0x71, 0xb2, 0x1e, 0x36, 0x7f, 0xfd, 0xc8, 0x7a, 0xa7, 0x52, 0x03, 0x93, 0x52, 0x7c, 0x6f, 0x68, 0xab, 0x51, 0x2b, 0x88, 0xb8, 0x39, 0x00, 0x3c, 0x1c, 0x99, 0x52, 0xb0, 0x4f, 0x2d, 0xc7, 0x40, 0x10, 0xa3, 0x10, 0x71, 0xee, 0x20, 0xa9, 0xfb, 0x1c, 0x7e, 0x11, 0x87, 0xd0, 0x4d, 0xe7, 0x1b, 0x3f, 0x43, 0x27, 0xdf, 0x12, 0x8c, 0xcd, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10798 = { .name = "ecdsa_secp521r1_sha512_10798", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10798_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10798_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10798_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10799 for ECDSA, tcId is 243 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10799_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10799_msg[] = { 0x33, 0x37, 0x33, 0x36, 0x35, 0x33, 0x31, 0x37, 0x38, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10799_sig[] = { 0x01, 0x9f, 0xae, 0xd1, 0x47, 0xa7, 0x6b, 0x65, 0x77, 0x9d, 0x09, 0x89, 0xe1, 0x30, 0x08, 0x02, 0x84, 0x4c, 0x9b, 0xa0, 0x9f, 0x33, 0x8c, 0x5e, 0x31, 0xa2, 0x4d, 0x9e, 0xbf, 0x8f, 0x0b, 0x0b, 0x4c, 0x21, 0xf5, 0x9d, 0x36, 0x9a, 0xc1, 0x0e, 0x31, 0x5f, 0xa2, 0xb7, 0x60, 0x5b, 0x0f, 0x17, 0xa9, 0xc0, 0x7c, 0xf6, 0xce, 0x4c, 0x83, 0x83, 0x8e, 0x58, 0x33, 0x3a, 0x33, 0x90, 0x14, 0x2d, 0x79, 0xd0, 0x00, 0x5f, 0x4d, 0xe7, 0x1f, 0xda, 0xce, 0xd1, 0xe8, 0xda, 0x86, 0xef, 0xd4, 0x7e, 0xcb, 0xda, 0xc6, 0xa6, 0xff, 0xc6, 0xd6, 0x9d, 0xf7, 0x1d, 0xa7, 0xce, 0xb5, 0x59, 0x64, 0x75, 0xcd, 0xfe, 0xce, 0xa3, 0xd0, 0x0f, 0x07, 0x4d, 0x2d, 0xe8, 0x9e, 0x0f, 0xcc, 0x05, 0xe3, 0x23, 0x1d, 0x53, 0x1f, 0x0d, 0x38, 0xf2, 0xb7, 0xc6, 0xfe, 0x4e, 0xcf, 0x67, 0xa0, 0xcd, 0xdd, 0xc2, 0x1d, 0x08, 0x67, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10799 = { .name = "ecdsa_secp521r1_sha512_10799", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10799_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10799_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10799_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10800 for ECDSA, tcId is 244 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10800_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10800_msg[] = { 0x34, 0x37, 0x39, 0x35, 0x39, 0x30, 0x33, 0x37, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10800_sig[] = { 0x00, 0xd0, 0xb1, 0x44, 0x35, 0x0a, 0x21, 0x28, 0xf0, 0x42, 0xbc, 0x1a, 0x27, 0xf6, 0xc0, 0x21, 0xda, 0xd1, 0xec, 0x03, 0x1b, 0xe8, 0xf1, 0xd8, 0x30, 0x47, 0x97, 0xf9, 0xdd, 0xcb, 0x74, 0x29, 0x74, 0xaa, 0xe2, 0x09, 0xf0, 0x14, 0x98, 0x01, 0x74, 0xb9, 0xd4, 0xe4, 0x34, 0xe3, 0xf5, 0x32, 0x47, 0x88, 0x9d, 0x2d, 0xa4, 0xb7, 0x67, 0x59, 0x31, 0x79, 0xcb, 0x4e, 0xda, 0x47, 0xe7, 0x99, 0x64, 0x30, 0x01, 0x84, 0xd3, 0x41, 0x6d, 0xee, 0x35, 0xba, 0x88, 0x07, 0x70, 0x3a, 0x91, 0xac, 0x92, 0x70, 0x96, 0xc1, 0x09, 0x59, 0xa0, 0x5c, 0xbf, 0xfd, 0x81, 0x03, 0xa9, 0x3a, 0x9f, 0x20, 0xa1, 0x15, 0x37, 0xbe, 0xd7, 0xa6, 0x45, 0xf3, 0x22, 0x95, 0xe4, 0xab, 0xce, 0x49, 0x35, 0x79, 0xca, 0xa4, 0xe2, 0x24, 0x20, 0x60, 0xcc, 0x4d, 0x58, 0xb2, 0x41, 0x48, 0x70, 0xe9, 0x8b, 0x93, 0x36, 0x79, 0x57, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10800 = { .name = "ecdsa_secp521r1_sha512_10800", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10800_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10800_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10800_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10801 for ECDSA, tcId is 245 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10801_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10801_msg[] = { 0x39, 0x33, 0x39, 0x39, 0x36, 0x31, 0x31, 0x30, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10801_sig[] = { 0x00, 0x05, 0x25, 0x7a, 0x0f, 0x45, 0xee, 0x2a, 0xe5, 0xcc, 0x30, 0x28, 0x3d, 0x23, 0xc4, 0x7c, 0x96, 0xf6, 0xde, 0xaa, 0x3a, 0xc1, 0x47, 0x3e, 0x8e, 0x8a, 0x40, 0xea, 0xf6, 0x1b, 0xc4, 0xb0, 0xef, 0x8b, 0xd1, 0x8d, 0x11, 0x98, 0x3f, 0x25, 0x7e, 0xc4, 0xb1, 0xd8, 0xd0, 0x4e, 0x76, 0xa1, 0x22, 0xb5, 0xbb, 0xe1, 0xd3, 0x10, 0x65, 0x15, 0x90, 0x72, 0xc5, 0x8f, 0xd9, 0xbc, 0x3e, 0x98, 0x37, 0x68, 0x01, 0x22, 0xdb, 0xa5, 0x0d, 0x0e, 0xb7, 0x1b, 0xdb, 0xf0, 0x92, 0xa9, 0x4a, 0x7e, 0xa2, 0x80, 0x41, 0x29, 0x06, 0xe1, 0xf8, 0x49, 0xe9, 0x1d, 0xbd, 0x5d, 0x81, 0x58, 0xe3, 0xfc, 0x6c, 0xd1, 0x2e, 0x20, 0x46, 0x1b, 0x77, 0x65, 0x3e, 0x3d, 0xf2, 0xe4, 0x5b, 0x86, 0x88, 0x3f, 0x81, 0x07, 0x1b, 0x33, 0x65, 0x1a, 0xe1, 0xb8, 0x4c, 0xc8, 0xe7, 0xc3, 0x65, 0xab, 0x8d, 0x6a, 0x36, 0xd1, 0xcf, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10801 = { .name = "ecdsa_secp521r1_sha512_10801", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10801_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10801_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10801_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10802 for ECDSA, tcId is 246 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10802_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10802_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x34, 0x39, 0x31, 0x31, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10802_sig[] = { 0x01, 0x4f, 0x62, 0x4a, 0xf9, 0xd8, 0x09, 0x6f, 0xe7, 0xa2, 0x90, 0x65, 0x1d, 0x23, 0xab, 0x26, 0x0d, 0xa6, 0x4e, 0x44, 0xb8, 0x86, 0xfe, 0xf4, 0xf3, 0x88, 0x1d, 0x0d, 0x98, 0x4d, 0x3b, 0x38, 0x7f, 0xdd, 0xcf, 0x65, 0xb1, 0xfa, 0x1d, 0xbb, 0x23, 0x90, 0x28, 0xfb, 0xab, 0x4a, 0x1d, 0xe6, 0xad, 0x15, 0x0c, 0xc8, 0xa4, 0xe4, 0xdb, 0x0a, 0x97, 0x1b, 0xb8, 0xbc, 0xf0, 0x1c, 0x47, 0x28, 0xff, 0x98, 0x01, 0x05, 0xe3, 0xb5, 0x5d, 0xb0, 0x14, 0x1c, 0x06, 0xd9, 0x85, 0x40, 0x96, 0xcc, 0x0f, 0x73, 0x41, 0x5d, 0xd2, 0xb8, 0x5a, 0x33, 0x1d, 0xa5, 0x0c, 0xfe, 0xa3, 0xbb, 0xf6, 0x48, 0xbb, 0xf8, 0x65, 0x1f, 0x61, 0xf2, 0xcd, 0x09, 0x38, 0x6b, 0x62, 0xfb, 0xb8, 0xce, 0x67, 0x24, 0x86, 0x83, 0xc2, 0x60, 0x89, 0x4d, 0x9e, 0xd5, 0x4d, 0x66, 0x67, 0xae, 0x02, 0x97, 0x8e, 0x38, 0xab, 0x99, 0x32, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10802 = { .name = "ecdsa_secp521r1_sha512_10802", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10802_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10802_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10802_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10803 for ECDSA, tcId is 247 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10803_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10803_msg[] = { 0x33, 0x32, 0x33, 0x36, 0x36, 0x37, 0x38, 0x35, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10803_sig[] = { 0x00, 0x2c, 0x95, 0x2d, 0x7e, 0x61, 0xe1, 0x09, 0x7c, 0xd7, 0xf7, 0x09, 0xe6, 0x2e, 0xc4, 0x86, 0x87, 0x9b, 0x38, 0x0b, 0x63, 0x79, 0x1c, 0x14, 0x6b, 0x54, 0x5c, 0x06, 0x4e, 0x65, 0xb3, 0x06, 0x02, 0x50, 0xd0, 0x0a, 0xf2, 0x79, 0xcf, 0x15, 0xea, 0xde, 0x67, 0x38, 0x4b, 0x28, 0x59, 0x4d, 0xb5, 0x42, 0x84, 0x5f, 0xcc, 0x65, 0x74, 0xef, 0x5d, 0x8d, 0x5b, 0xb8, 0xa1, 0x62, 0xe0, 0x35, 0x0a, 0x00, 0x01, 0x35, 0xac, 0x6d, 0x1c, 0xc0, 0x5b, 0x09, 0x5f, 0xba, 0xe2, 0x8b, 0x65, 0x2f, 0xe5, 0x38, 0x6b, 0x86, 0x89, 0xe2, 0x1a, 0x14, 0x99, 0x02, 0x36, 0xd3, 0xad, 0xa7, 0xce, 0xeb, 0x0c, 0x12, 0xa4, 0xf7, 0x74, 0xbf, 0xf7, 0xb8, 0x1c, 0x8d, 0x07, 0x57, 0x2b, 0x0c, 0x79, 0x85, 0x36, 0x4c, 0x5d, 0x31, 0xf3, 0x32, 0x71, 0xf0, 0xac, 0x3a, 0x2a, 0xfb, 0x88, 0xb4, 0x6b, 0xfe, 0xef, 0xba, 0xea, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10803 = { .name = "ecdsa_secp521r1_sha512_10803", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10803_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10803_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10803_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10804 for ECDSA, tcId is 248 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10804_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10804_msg[] = { 0x31, 0x34, 0x34, 0x38, 0x39, 0x39, 0x37, 0x37, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10804_sig[] = { 0x01, 0x79, 0x19, 0xef, 0xf7, 0x82, 0x25, 0xe1, 0x93, 0x7a, 0x92, 0x1f, 0x98, 0xf5, 0xd1, 0x53, 0xcb, 0xff, 0xa0, 0x39, 0x29, 0x81, 0x9f, 0x22, 0x8e, 0xe0, 0x13, 0xf8, 0xe5, 0x95, 0x49, 0xb0, 0x4b, 0x98, 0x67, 0x00, 0x6a, 0x8d, 0xf2, 0x5a, 0x93, 0xa6, 0xa2, 0x5d, 0xd1, 0xd3, 0xf5, 0x40, 0x23, 0x9a, 0x8e, 0xd1, 0x40, 0x47, 0xea, 0x00, 0x81, 0x1d, 0xa9, 0x30, 0x5e, 0xc5, 0x15, 0xad, 0x00, 0x0d, 0x01, 0x1f, 0xb8, 0x73, 0xbd, 0xae, 0x17, 0x57, 0x80, 0x1e, 0x57, 0x5c, 0x5d, 0xf6, 0x2c, 0xf8, 0x2a, 0x18, 0x81, 0xaf, 0x3c, 0xd6, 0xed, 0x17, 0xdc, 0x50, 0xed, 0xbe, 0x6c, 0x5f, 0xd0, 0xf4, 0xd3, 0x17, 0x66, 0x67, 0x0b, 0x2a, 0xa5, 0x72, 0xa9, 0xe6, 0x54, 0x7b, 0x36, 0x14, 0x2a, 0xfa, 0x84, 0x64, 0xd0, 0xbe, 0x4b, 0xf4, 0x19, 0x30, 0x62, 0x9d, 0xc0, 0x4c, 0x85, 0xe0, 0x1b, 0x2e, 0xe8, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10804 = { .name = "ecdsa_secp521r1_sha512_10804", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10804_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10804_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10804_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10805 for ECDSA, tcId is 249 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10805_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10805_msg[] = { 0x35, 0x37, 0x31, 0x34, 0x36, 0x33, 0x32, 0x38, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10805_sig[] = { 0x00, 0x6a, 0xc9, 0xb3, 0x70, 0x06, 0x7b, 0x13, 0xac, 0x2b, 0x57, 0xf3, 0x5d, 0x6d, 0x9b, 0x1f, 0xaa, 0x93, 0xb9, 0xb0, 0x68, 0xef, 0x5d, 0xdf, 0x8b, 0xde, 0x3a, 0x54, 0x02, 0x48, 0x10, 0xaa, 0x22, 0x26, 0x56, 0x00, 0x65, 0xb0, 0xcb, 0x75, 0x01, 0xdf, 0x96, 0xb4, 0x75, 0x6c, 0xe1, 0xe1, 0xfa, 0x60, 0x7f, 0x86, 0xa9, 0x42, 0x36, 0x78, 0x94, 0xa1, 0xf7, 0x72, 0x8b, 0xd5, 0xf2, 0x2c, 0xf1, 0x77, 0x00, 0x8b, 0x47, 0xa9, 0xe1, 0x37, 0x0c, 0x9f, 0x5b, 0xf4, 0x67, 0x7d, 0x55, 0x4c, 0x00, 0xe9, 0xac, 0x3e, 0xa7, 0xcd, 0xfc, 0x78, 0x83, 0x6a, 0xc5, 0x3a, 0xc7, 0x10, 0xb7, 0xf3, 0xbf, 0xf8, 0xc2, 0x29, 0x77, 0x80, 0xc6, 0x9a, 0x9f, 0xdd, 0xb8, 0x0e, 0x03, 0xa6, 0x05, 0xe5, 0xe4, 0x8a, 0x52, 0xe5, 0x2f, 0xd3, 0x5f, 0x41, 0x66, 0x8c, 0xd9, 0x06, 0x48, 0x86, 0x36, 0x6f, 0xda, 0x20, 0x60, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10805 = { .name = "ecdsa_secp521r1_sha512_10805", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10805_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10805_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10805_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10806 for ECDSA, tcId is 250 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10806_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10806_msg[] = { 0x32, 0x32, 0x36, 0x34, 0x38, 0x37, 0x34, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10806_sig[] = { 0x00, 0xc4, 0xbc, 0xff, 0xf2, 0x65, 0xcd, 0x32, 0x44, 0x22, 0x20, 0x97, 0x6f, 0xfc, 0x7e, 0x4e, 0xc0, 0x91, 0x81, 0xd6, 0x94, 0x69, 0x6e, 0xb8, 0x9a, 0xf0, 0xcb, 0x2d, 0x5a, 0x2d, 0xfc, 0x38, 0x76, 0xde, 0xb3, 0xc6, 0xad, 0xea, 0x16, 0x89, 0x65, 0x20, 0x0c, 0x35, 0x5c, 0x3b, 0xff, 0x5e, 0x47, 0xab, 0x17, 0xec, 0xc4, 0x4c, 0x84, 0x34, 0x33, 0x32, 0x80, 0x79, 0x6d, 0x3a, 0x18, 0x34, 0x49, 0xea, 0x00, 0x62, 0xde, 0xbe, 0x91, 0x55, 0x0f, 0x8a, 0x76, 0x0e, 0xae, 0xa3, 0x09, 0xf4, 0x84, 0x83, 0xc6, 0x5a, 0x52, 0xc7, 0xe8, 0x8a, 0x83, 0x86, 0x7c, 0x31, 0x73, 0x0c, 0xbc, 0x6b, 0x0a, 0x64, 0xd4, 0xc5, 0x64, 0xbd, 0xe6, 0x7e, 0x65, 0x39, 0xaf, 0x78, 0x7e, 0xcf, 0xd1, 0x80, 0x16, 0xcd, 0xe4, 0x6d, 0xdf, 0x91, 0x74, 0x0f, 0x58, 0xf6, 0xea, 0x6e, 0xc8, 0x0b, 0x17, 0x3f, 0xd1, 0xc4, 0x7a, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10806 = { .name = "ecdsa_secp521r1_sha512_10806", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10806_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10806_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10806_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10807 for ECDSA, tcId is 251 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10807_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10807_msg[] = { 0x35, 0x33, 0x35, 0x33, 0x34, 0x34, 0x39, 0x34, 0x37, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10807_sig[] = { 0x01, 0x74, 0xd7, 0x44, 0xdd, 0xc6, 0x31, 0xfc, 0xf8, 0x20, 0x2f, 0xca, 0x0a, 0xb1, 0x0f, 0x6d, 0x96, 0xd3, 0xf7, 0x55, 0x2b, 0xb2, 0xa9, 0xae, 0x5a, 0xc5, 0x73, 0x63, 0x41, 0x33, 0xf6, 0x1c, 0x59, 0xa1, 0x20, 0xfe, 0xdb, 0xc3, 0x9c, 0xfb, 0x52, 0x1a, 0xb0, 0xcd, 0x57, 0x2a, 0xfb, 0xd5, 0x14, 0x79, 0x81, 0x09, 0x0d, 0x1d, 0xcb, 0xfe, 0x90, 0x2e, 0x03, 0xf0, 0xc0, 0x57, 0x99, 0x67, 0xb5, 0x81, 0x01, 0x2f, 0x59, 0xca, 0x92, 0x7c, 0x4a, 0xe3, 0x31, 0xd2, 0xf6, 0x67, 0xfc, 0xd9, 0xec, 0x01, 0xb0, 0xb5, 0x51, 0x4e, 0x2a, 0xb5, 0xda, 0x05, 0x61, 0xea, 0x61, 0x44, 0x31, 0xdc, 0x1f, 0xcb, 0x76, 0x1c, 0x35, 0x1c, 0xd1, 0x21, 0x10, 0x92, 0x72, 0x0e, 0xbb, 0x70, 0x74, 0xa5, 0x12, 0x8f, 0x80, 0x19, 0xb7, 0xc1, 0x8e, 0x04, 0x8d, 0x5e, 0xd3, 0x57, 0x3e, 0xd6, 0x16, 0x86, 0xe9, 0x71, 0x3f, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10807 = { .name = "ecdsa_secp521r1_sha512_10807", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10807_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10807_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10807_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10808 for ECDSA, tcId is 252 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10808_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10808_msg[] = { 0x34, 0x37, 0x38, 0x37, 0x33, 0x30, 0x33, 0x38, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10808_sig[] = { 0x01, 0x9a, 0x51, 0x3c, 0xfa, 0xf8, 0x71, 0x28, 0x73, 0x40, 0xd8, 0xa5, 0x1d, 0x2f, 0x43, 0x48, 0xab, 0x40, 0x96, 0xc5, 0xfe, 0x24, 0x4b, 0x22, 0xad, 0xd3, 0x8c, 0xe4, 0x33, 0xe3, 0x17, 0x8e, 0x8f, 0xf5, 0xb2, 0xdf, 0x0f, 0xe7, 0x4a, 0x1b, 0xa4, 0x0f, 0xe8, 0x34, 0x1f, 0x73, 0x4c, 0x71, 0xf9, 0xa1, 0x17, 0x7b, 0x41, 0x03, 0x57, 0x77, 0xe2, 0xda, 0x6b, 0x08, 0x2e, 0x0b, 0x56, 0x66, 0x90, 0xde, 0x00, 0xd0, 0xc4, 0x3e, 0xb3, 0x3a, 0x81, 0x7c, 0x3a, 0xab, 0x30, 0x28, 0x1c, 0x59, 0x3c, 0x74, 0x51, 0x7e, 0xe8, 0x4e, 0x95, 0x8b, 0x11, 0x43, 0x95, 0xce, 0x0b, 0x31, 0xfc, 0xf3, 0x0b, 0xb8, 0xf5, 0xdf, 0xe6, 0x0d, 0xbc, 0x7f, 0x6f, 0x14, 0x69, 0x89, 0x77, 0xd8, 0xe0, 0x51, 0x6a, 0x92, 0x74, 0xa5, 0xbd, 0x71, 0x84, 0x70, 0x57, 0xe0, 0x06, 0xfa, 0x31, 0x5f, 0xae, 0x69, 0x22, 0xea, 0xaa, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10808 = { .name = "ecdsa_secp521r1_sha512_10808", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10808_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10808_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10808_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10809 for ECDSA, tcId is 253 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10809_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10809_msg[] = { 0x32, 0x32, 0x33, 0x32, 0x31, 0x39, 0x35, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10809_sig[] = { 0x01, 0x32, 0x04, 0x80, 0x0e, 0xfc, 0xb4, 0x0a, 0xb0, 0x9a, 0xe4, 0x13, 0x73, 0x25, 0xa3, 0xe8, 0xc4, 0x68, 0xed, 0xae, 0x91, 0x88, 0x0a, 0x51, 0x61, 0x6b, 0xa6, 0x1f, 0x3e, 0xf1, 0xf7, 0x2f, 0xd8, 0x9f, 0xeb, 0x95, 0x6b, 0xfb, 0x39, 0x81, 0x8d, 0x82, 0x74, 0x68, 0xbb, 0x44, 0x75, 0x11, 0x0a, 0x04, 0x77, 0x9f, 0xd6, 0xbb, 0x3d, 0xef, 0x25, 0xc6, 0x1c, 0x4b, 0xa6, 0x08, 0x89, 0xed, 0x0f, 0xf7, 0x00, 0x70, 0x4b, 0x73, 0x94, 0x68, 0x76, 0x98, 0xc8, 0x84, 0x1f, 0x48, 0x75, 0xd4, 0x0e, 0x5b, 0x3c, 0x91, 0x4f, 0x15, 0x4c, 0xcb, 0x2b, 0x54, 0x46, 0x6a, 0xe1, 0x63, 0xed, 0x34, 0x10, 0xf2, 0x0d, 0x0a, 0x07, 0xac, 0x5f, 0x90, 0xc0, 0xc3, 0x12, 0x71, 0xec, 0x8a, 0x52, 0x4c, 0xa2, 0xda, 0xe4, 0xb8, 0xbc, 0x4f, 0x6e, 0x1e, 0xce, 0x17, 0x3e, 0xa9, 0x07, 0x89, 0x06, 0x93, 0xc5, 0xf2, 0x19, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10809 = { .name = "ecdsa_secp521r1_sha512_10809", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10809_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10809_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10809_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10810 for ECDSA, tcId is 254 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10810_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10810_msg[] = { 0x31, 0x30, 0x37, 0x33, 0x39, 0x33, 0x39, 0x31, 0x39, 0x31, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10810_sig[] = { 0x01, 0x80, 0x24, 0x1c, 0xd2, 0xe6, 0x16, 0x31, 0x58, 0xa3, 0x95, 0x99, 0x89, 0x0d, 0xab, 0xee, 0x99, 0xc2, 0xc8, 0x6b, 0x88, 0xac, 0xcd, 0x2b, 0x04, 0xb5, 0xa7, 0x28, 0x74, 0xfb, 0xdf, 0xbd, 0xe0, 0xd1, 0x81, 0x43, 0xc4, 0xd7, 0x8e, 0x0d, 0xa1, 0xab, 0xf3, 0x79, 0x6b, 0x23, 0x87, 0x38, 0x84, 0x0d, 0x60, 0xe3, 0x47, 0x75, 0xa8, 0xff, 0x81, 0x0d, 0x58, 0xa9, 0xbb, 0x35, 0x59, 0xa3, 0x99, 0x7c, 0x00, 0xbc, 0x39, 0x6c, 0x2e, 0xf2, 0x8b, 0x24, 0x4f, 0xb8, 0xe0, 0x04, 0xbf, 0x53, 0x61, 0x57, 0x2b, 0xa1, 0xfe, 0xf6, 0xfb, 0xe0, 0x81, 0xed, 0x1d, 0xed, 0xba, 0x4d, 0x9a, 0xf7, 0x8d, 0xee, 0xe1, 0x26, 0x59, 0x9f, 0x75, 0xa0, 0xa9, 0xd0, 0xf1, 0xb1, 0x61, 0x8d, 0xed, 0x7a, 0x0c, 0x5e, 0x67, 0x2e, 0x40, 0x91, 0x7f, 0xdd, 0x30, 0x58, 0x24, 0x60, 0xda, 0x3a, 0xeb, 0x1e, 0x9c, 0x44, 0x77, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10810 = { .name = "ecdsa_secp521r1_sha512_10810", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10810_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10810_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10810_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10811 for ECDSA, tcId is 255 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10811_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10811_msg[] = { 0x31, 0x38, 0x38, 0x31, 0x30, 0x32, 0x37, 0x33, 0x31, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10811_sig[] = { 0x01, 0x48, 0x5f, 0xc0, 0x3f, 0xcd, 0x62, 0x9f, 0xd4, 0xc5, 0x64, 0x77, 0x5a, 0xb6, 0x96, 0x9b, 0xbc, 0x69, 0x6b, 0x5b, 0x0f, 0x38, 0x14, 0x1b, 0x69, 0xf8, 0x6e, 0x05, 0x2e, 0x7f, 0xe8, 0x84, 0x9a, 0x64, 0xaf, 0x2d, 0xd3, 0x7a, 0x2a, 0xdf, 0x64, 0x67, 0x2f, 0x20, 0xbd, 0x6f, 0x97, 0xcd, 0x32, 0xf0, 0xef, 0xea, 0x51, 0xaa, 0x22, 0x06, 0x4c, 0x5f, 0x10, 0xa3, 0x91, 0x11, 0x77, 0xe1, 0x97, 0x9d, 0x01, 0x80, 0xfa, 0xb4, 0x73, 0xff, 0x9d, 0x72, 0x6d, 0xb6, 0xd2, 0x66, 0x54, 0x1a, 0x0b, 0xdd, 0xff, 0x86, 0x10, 0xe4, 0x02, 0x6d, 0x26, 0xb6, 0xc9, 0xab, 0xf9, 0x72, 0xea, 0xef, 0x47, 0x7d, 0x50, 0x67, 0x0b, 0xdd, 0x30, 0x67, 0xc9, 0xd7, 0x11, 0xa8, 0x34, 0x6e, 0x16, 0x86, 0x91, 0x47, 0x75, 0x1e, 0x89, 0xb4, 0xea, 0x75, 0xbb, 0x00, 0xec, 0xe7, 0x13, 0x00, 0xcc, 0x3b, 0x80, 0xcf, 0x88, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10811 = { .name = "ecdsa_secp521r1_sha512_10811", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10811_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10811_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10811_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10812 for ECDSA, tcId is 256 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10812_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10812_msg[] = { 0x36, 0x30, 0x36, 0x31, 0x36, 0x39, 0x33, 0x39, 0x30, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10812_sig[] = { 0x01, 0xbe, 0xa4, 0x9b, 0x15, 0x0a, 0x27, 0x02, 0x6f, 0xdf, 0x84, 0x82, 0x97, 0xb0, 0x49, 0x10, 0x19, 0xf7, 0x6a, 0xbf, 0x90, 0xf3, 0xe6, 0xd7, 0x82, 0xe3, 0xd3, 0xfa, 0x6c, 0xad, 0xdb, 0x81, 0xb7, 0xef, 0x58, 0xb2, 0x7f, 0x1b, 0x2b, 0x3f, 0x78, 0x98, 0x88, 0x9b, 0x4e, 0x2b, 0x6c, 0xdd, 0xa7, 0xb5, 0x63, 0x61, 0x77, 0xa2, 0x7e, 0xb9, 0xa6, 0x7b, 0x20, 0x55, 0xb6, 0xf2, 0x1d, 0x26, 0x2c, 0x26, 0x00, 0xdf, 0xfb, 0x13, 0xc2, 0xd5, 0xf7, 0x46, 0xc8, 0x57, 0x3a, 0xa4, 0x44, 0xaf, 0xc8, 0xba, 0xf8, 0xbf, 0x88, 0x1c, 0xc4, 0xd0, 0xfc, 0xa8, 0x16, 0x9f, 0x6c, 0xb3, 0x04, 0xf4, 0x00, 0xeb, 0x39, 0x32, 0x66, 0x6c, 0xd3, 0x75, 0x8c, 0x43, 0x7c, 0x9c, 0xad, 0x79, 0xab, 0xfd, 0x89, 0xc7, 0x2a, 0x78, 0x85, 0x05, 0x76, 0x3a, 0xab, 0xdf, 0xab, 0xf8, 0x90, 0x3a, 0xd4, 0xa7, 0x0d, 0x9e, 0xc9, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10812 = { .name = "ecdsa_secp521r1_sha512_10812", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10812_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10812_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10812_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10813 for ECDSA, tcId is 257 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10813_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10813_msg[] = { 0x38, 0x38, 0x39, 0x35, 0x32, 0x32, 0x37, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10813_sig[] = { 0x01, 0xd5, 0x6b, 0xf6, 0xf3, 0x75, 0x8f, 0x62, 0x7f, 0x47, 0x07, 0x06, 0xd1, 0xd2, 0x8c, 0x28, 0xfb, 0xfc, 0xad, 0x6d, 0xc3, 0x04, 0x65, 0xcb, 0x28, 0x5a, 0x27, 0x4f, 0xc0, 0x57, 0xf7, 0x91, 0xde, 0x73, 0xac, 0x30, 0xba, 0xcc, 0xde, 0x04, 0x44, 0x73, 0xfa, 0x9e, 0x3d, 0xce, 0x6d, 0x39, 0x5e, 0xad, 0xf9, 0x8d, 0x1f, 0x97, 0x25, 0x9b, 0xd8, 0x51, 0xa1, 0xeb, 0x6f, 0x3d, 0x31, 0xd2, 0xd7, 0x56, 0x00, 0x33, 0x70, 0x4b, 0x4a, 0xd3, 0x73, 0x00, 0xa9, 0x66, 0x82, 0x56, 0x9f, 0x4f, 0x7f, 0xea, 0x3e, 0x14, 0xd6, 0xe1, 0xf6, 0x58, 0x64, 0x66, 0x3f, 0x39, 0xaa, 0x67, 0xf4, 0x0b, 0x5c, 0x94, 0x9f, 0x19, 0x8d, 0x5d, 0xe9, 0xf2, 0xac, 0x23, 0x69, 0xbb, 0xb9, 0x11, 0x1c, 0x89, 0xb3, 0x93, 0x19, 0x95, 0x37, 0xc6, 0xc0, 0x8e, 0xd7, 0xc0, 0x27, 0x09, 0xc7, 0x33, 0xef, 0x76, 0x60, 0x11, 0x3d, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10813 = { .name = "ecdsa_secp521r1_sha512_10813", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10813_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10813_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10813_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10814 for ECDSA, tcId is 258 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10814_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10814_msg[] = { 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, 0x34, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10814_sig[] = { 0x01, 0x55, 0x40, 0x35, 0xba, 0x84, 0xb0, 0x51, 0xd5, 0x09, 0x01, 0xc6, 0x22, 0xb9, 0x8b, 0xe4, 0xde, 0x01, 0x23, 0xa0, 0x29, 0x28, 0xdf, 0xfa, 0x7e, 0xb1, 0x3b, 0x04, 0x03, 0xfd, 0x5e, 0x25, 0x5f, 0x22, 0x65, 0x05, 0xe1, 0x56, 0x94, 0x95, 0x6a, 0x66, 0xa8, 0x78, 0xff, 0x58, 0x11, 0x73, 0xd1, 0x23, 0xd1, 0xb2, 0x4e, 0xaa, 0x85, 0xc5, 0xfe, 0x46, 0xd8, 0x97, 0x3a, 0x55, 0x04, 0x0f, 0xf4, 0x05, 0x01, 0xb0, 0x16, 0xdd, 0x6b, 0x51, 0x76, 0xad, 0x83, 0x47, 0xeb, 0x98, 0x02, 0xdd, 0x77, 0x27, 0xe0, 0x6a, 0x29, 0xdb, 0x33, 0xcc, 0x94, 0x6f, 0x80, 0x9a, 0x42, 0xf9, 0x19, 0x30, 0x40, 0x69, 0x2b, 0x0f, 0x82, 0xeb, 0xbd, 0x04, 0xef, 0xf9, 0xf0, 0x99, 0xb7, 0xf7, 0x5f, 0x8e, 0x45, 0xe7, 0x4a, 0xc0, 0x0a, 0x51, 0xa9, 0xcd, 0x4f, 0x2c, 0xbf, 0x5f, 0x03, 0xf4, 0xd2, 0xbe, 0xe9, 0x9c, 0x24, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10814 = { .name = "ecdsa_secp521r1_sha512_10814", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10814_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10814_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10814_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10815 for ECDSA, tcId is 259 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10815_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10815_msg[] = { 0x33, 0x39, 0x36, 0x35, 0x39, 0x39, 0x31, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10815_sig[] = { 0x00, 0x29, 0x3e, 0x8d, 0x67, 0x75, 0xf3, 0xc1, 0x41, 0x83, 0xae, 0xcc, 0x22, 0xf6, 0x08, 0xe9, 0x01, 0x3d, 0x7b, 0x15, 0xda, 0xd1, 0x67, 0xbb, 0x38, 0xa1, 0xdf, 0xef, 0x6b, 0x37, 0x36, 0x19, 0xf1, 0xba, 0x27, 0x51, 0xd7, 0x7b, 0x43, 0xf6, 0x43, 0xf6, 0x86, 0x43, 0xcf, 0xdb, 0x5c, 0x04, 0xa8, 0xed, 0x85, 0x8b, 0xfc, 0xf3, 0x85, 0x8a, 0x68, 0x1a, 0xe9, 0x3b, 0xfc, 0x7c, 0xd7, 0xe3, 0x14, 0x38, 0x00, 0x2c, 0x7d, 0x96, 0xdb, 0x7d, 0xbb, 0xe3, 0x47, 0xba, 0xb9, 0xf6, 0xf7, 0xb8, 0x8f, 0x48, 0xcb, 0x32, 0xab, 0x96, 0x32, 0x48, 0x73, 0x7d, 0x2c, 0x90, 0x1b, 0x90, 0xd6, 0x45, 0x91, 0xcb, 0xdb, 0x0f, 0x0c, 0xa7, 0xa1, 0x45, 0x57, 0xf8, 0xa5, 0x0f, 0xd8, 0x0d, 0x40, 0x2f, 0x92, 0x9d, 0xad, 0x14, 0x11, 0x41, 0xf1, 0xf0, 0xc8, 0x5d, 0x94, 0x14, 0xb3, 0x2d, 0x1f, 0xd4, 0xd7, 0x96, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10815 = { .name = "ecdsa_secp521r1_sha512_10815", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10815_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10815_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10815_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10816 for ECDSA, tcId is 260 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10816_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10816_msg[] = { 0x32, 0x32, 0x38, 0x38, 0x37, 0x33, 0x32, 0x31, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10816_sig[] = { 0x00, 0xb1, 0x6a, 0x9b, 0x3a, 0xce, 0xec, 0xe8, 0x59, 0x08, 0x12, 0x5f, 0x96, 0xf6, 0xcb, 0x6b, 0x1a, 0xfd, 0x0e, 0xf0, 0x41, 0x71, 0x93, 0x6b, 0x37, 0x66, 0xf8, 0xe4, 0x3b, 0xeb, 0x34, 0x0d, 0x38, 0x20, 0x84, 0xb3, 0x34, 0x39, 0xf7, 0x75, 0xa2, 0x9a, 0x83, 0x94, 0x5d, 0xa8, 0xef, 0xc4, 0x19, 0x0d, 0xb1, 0x34, 0x3e, 0x87, 0xd8, 0xc0, 0xff, 0xb9, 0x7a, 0xeb, 0x3b, 0xe1, 0x59, 0xd9, 0x0f, 0x59, 0x00, 0xe5, 0xc2, 0xbb, 0xd9, 0x8e, 0x44, 0x9b, 0xd0, 0xbb, 0x4f, 0x75, 0xa0, 0x7f, 0x1a, 0x88, 0xdd, 0x63, 0xc0, 0x60, 0x2a, 0x76, 0x60, 0xf4, 0xac, 0xd3, 0x39, 0x37, 0xc4, 0x91, 0x3a, 0x9c, 0x16, 0xba, 0x44, 0xdc, 0x58, 0x08, 0x89, 0x2e, 0xc8, 0x8a, 0x42, 0x55, 0x10, 0x9a, 0x7b, 0xc5, 0xb2, 0x21, 0xc0, 0x7e, 0x6a, 0x27, 0x88, 0x88, 0xa9, 0x71, 0x2f, 0xc2, 0xa2, 0x5b, 0x37, 0x44, 0x27, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10816 = { .name = "ecdsa_secp521r1_sha512_10816", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10816_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10816_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10816_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10817 for ECDSA, tcId is 261 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10817_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10817_msg[] = { 0x32, 0x32, 0x33, 0x30, 0x38, 0x38, 0x37, 0x33, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10817_sig[] = { 0x00, 0x3b, 0x47, 0xa8, 0xed, 0x52, 0xf5, 0xb0, 0x56, 0x63, 0x65, 0x31, 0x35, 0x20, 0xbc, 0x0b, 0x6e, 0x4e, 0x4e, 0xfb, 0x3e, 0xa4, 0x17, 0x6e, 0xd7, 0xa3, 0x52, 0xc4, 0xb2, 0xf8, 0xbf, 0xfb, 0xdb, 0x01, 0x48, 0xff, 0x44, 0xf3, 0xf1, 0x3d, 0x9e, 0x5e, 0x31, 0xb1, 0xcd, 0xea, 0xe0, 0x97, 0x57, 0x4a, 0xad, 0x8b, 0xf3, 0x93, 0xc5, 0x4a, 0x5c, 0x84, 0x2e, 0x74, 0x9e, 0xe8, 0x7a, 0x74, 0xc6, 0xb0, 0x01, 0xd3, 0xf4, 0x84, 0xe9, 0xe2, 0x24, 0xbd, 0xa9, 0xc8, 0xf1, 0x0f, 0xbb, 0x74, 0xbb, 0xb6, 0x2d, 0x7a, 0x18, 0x24, 0x57, 0x07, 0xf4, 0xeb, 0x52, 0xf1, 0x7d, 0xde, 0x79, 0x38, 0x92, 0xc1, 0x6e, 0x4b, 0xdf, 0x50, 0x49, 0x60, 0xfb, 0xa5, 0x5d, 0xa4, 0x87, 0xf5, 0x42, 0xd4, 0x12, 0xb1, 0xb8, 0x33, 0xf6, 0xf4, 0x63, 0x36, 0x11, 0x86, 0x18, 0xfc, 0xff, 0x69, 0x46, 0x9c, 0x83, 0x96, 0x37, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10817 = { .name = "ecdsa_secp521r1_sha512_10817", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10817_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10817_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10817_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10818 for ECDSA, tcId is 262 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10818_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10818_msg[] = { 0x31, 0x32, 0x39, 0x30, 0x35, 0x36, 0x39, 0x33, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10818_sig[] = { 0x01, 0x28, 0xb8, 0x98, 0x8b, 0xfe, 0x92, 0x87, 0xf8, 0x2a, 0xc9, 0x7b, 0xe5, 0x07, 0xa5, 0x44, 0xb8, 0x23, 0xe8, 0x5c, 0xc2, 0x81, 0x3b, 0x69, 0x29, 0xe6, 0x36, 0x99, 0xcf, 0xf8, 0x5a, 0x40, 0x28, 0x30, 0x76, 0x02, 0x8e, 0x7b, 0xf8, 0xd2, 0x43, 0x30, 0xf8, 0x9a, 0xdb, 0x96, 0xbf, 0x24, 0xa4, 0xe1, 0x83, 0xa8, 0x98, 0xe6, 0x79, 0xb3, 0x67, 0x68, 0x90, 0x95, 0x74, 0xe7, 0xd4, 0x73, 0x3d, 0x61, 0x00, 0xc1, 0x8a, 0xae, 0x44, 0xe6, 0x80, 0x1f, 0xc2, 0xe3, 0xd9, 0xc7, 0xa2, 0x0f, 0xf9, 0xd4, 0x2b, 0x46, 0xe4, 0xa3, 0x1c, 0xa3, 0x77, 0x72, 0xf8, 0xc4, 0x6c, 0xe6, 0x52, 0x19, 0xb1, 0x95, 0xca, 0x23, 0x71, 0x7f, 0x81, 0x6e, 0x1f, 0xed, 0x51, 0xe5, 0xb6, 0xf9, 0xa0, 0xca, 0x12, 0xc3, 0xcf, 0x81, 0xae, 0x7f, 0xc9, 0xcc, 0x69, 0x46, 0xa8, 0x83, 0x30, 0xb2, 0x01, 0x1d, 0xdd, 0x16, 0x09, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10818 = { .name = "ecdsa_secp521r1_sha512_10818", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10818_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10818_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10818_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10819 for ECDSA, tcId is 263 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10819_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10819_msg[] = { 0x32, 0x37, 0x34, 0x38, 0x36, 0x35, 0x36, 0x34, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10819_sig[] = { 0x01, 0x5e, 0xdf, 0x1f, 0xa9, 0x5b, 0x17, 0x15, 0x9f, 0x76, 0x2d, 0x68, 0xc1, 0x73, 0x61, 0x01, 0x30, 0x9e, 0x80, 0xfe, 0x5b, 0x2c, 0x44, 0x15, 0x60, 0x9a, 0x5a, 0xc0, 0x83, 0x7f, 0xe5, 0x90, 0x1f, 0x3c, 0x2d, 0x3d, 0x82, 0x6a, 0x43, 0xb1, 0xf8, 0xcd, 0x1b, 0xab, 0xf4, 0x94, 0xff, 0xd9, 0x6c, 0xca, 0x12, 0x67, 0x95, 0x01, 0x88, 0xa9, 0x24, 0xd4, 0xe1, 0xbf, 0x7f, 0x68, 0x18, 0x9f, 0x27, 0xd3, 0x00, 0x2e, 0x86, 0x97, 0xef, 0xbb, 0xf5, 0x3a, 0xdb, 0x7c, 0xb1, 0xb9, 0x04, 0x71, 0x8f, 0xc7, 0x1e, 0xb2, 0x56, 0x1f, 0x33, 0x1c, 0x20, 0x9c, 0x50, 0x84, 0x8b, 0x5b, 0xc5, 0x0b, 0xef, 0x77, 0xc5, 0xc3, 0x48, 0x7d, 0x28, 0x5b, 0xfa, 0xa3, 0xca, 0xa1, 0x40, 0x25, 0xcb, 0xb7, 0x1b, 0xdb, 0xae, 0xa6, 0x91, 0x1e, 0x36, 0x10, 0x33, 0x56, 0x41, 0xd2, 0x79, 0x9c, 0x3f, 0xd7, 0x50, 0x19, 0xf7, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10819 = { .name = "ecdsa_secp521r1_sha512_10819", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10819_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10819_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10819_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10820 for ECDSA, tcId is 264 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10820_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10820_msg[] = { 0x37, 0x35, 0x38, 0x33, 0x35, 0x30, 0x32, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10820_sig[] = { 0x01, 0x61, 0xf6, 0x4b, 0xbe, 0x93, 0xfd, 0xc0, 0xe6, 0x11, 0x34, 0xcf, 0xd4, 0xc4, 0x53, 0xab, 0x74, 0x02, 0x33, 0xb4, 0x36, 0x17, 0x93, 0x51, 0xaa, 0x68, 0xa3, 0xe3, 0x8a, 0x83, 0x40, 0x0d, 0x86, 0xff, 0x46, 0x4d, 0x7c, 0xeb, 0x7a, 0x51, 0xf5, 0x41, 0xb8, 0x6e, 0xb2, 0xf1, 0x2e, 0x32, 0xa8, 0x79, 0xb3, 0xa2, 0x9b, 0xcb, 0x92, 0xe0, 0x8c, 0xd5, 0x0e, 0x74, 0xf8, 0x6a, 0x0e, 0xd5, 0x2a, 0xe9, 0x00, 0x8f, 0x6f, 0xef, 0x49, 0xba, 0x12, 0xce, 0xd6, 0x69, 0x6f, 0x4f, 0x6d, 0x24, 0xe6, 0xc6, 0x80, 0x57, 0xa8, 0x44, 0x96, 0xd4, 0x2e, 0xed, 0xe6, 0x30, 0x19, 0x9e, 0x9b, 0xd0, 0x6d, 0x91, 0x36, 0x35, 0x42, 0xa9, 0x77, 0x6b, 0xfc, 0xd6, 0xd7, 0x7f, 0xba, 0xe4, 0x22, 0xe8, 0x0f, 0xe4, 0x66, 0xed, 0xd2, 0xc2, 0xc5, 0xe1, 0xf5, 0xcc, 0x79, 0xbe, 0xdd, 0x1a, 0x7b, 0xec, 0xc1, 0xa1, 0x26, 0x60, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10820 = { .name = "ecdsa_secp521r1_sha512_10820", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10820_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10820_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10820_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10821 for ECDSA, tcId is 265 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10821_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10821_msg[] = { 0x32, 0x33, 0x32, 0x37, 0x37, 0x35, 0x34, 0x32, 0x37, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10821_sig[] = { 0x01, 0x3a, 0x6f, 0xac, 0xcc, 0x1c, 0x06, 0xcb, 0x5d, 0xad, 0xb2, 0xcf, 0x08, 0x3c, 0xb9, 0x4a, 0x71, 0x81, 0xfd, 0x5c, 0xbf, 0x39, 0x54, 0xfd, 0xc4, 0x30, 0xc2, 0x69, 0x12, 0x48, 0xfc, 0xfc, 0xd1, 0x37, 0x67, 0xe3, 0x24, 0x91, 0xf0, 0x02, 0x69, 0xb5, 0x49, 0xca, 0xe9, 0x37, 0x77, 0xce, 0xd0, 0xf7, 0xb0, 0x69, 0x44, 0x07, 0x26, 0xad, 0xde, 0x76, 0x05, 0xd4, 0x03, 0x8d, 0x7b, 0x5e, 0xa4, 0xcc, 0x00, 0x76, 0x22, 0xc9, 0x06, 0x5f, 0x4c, 0x49, 0xa6, 0xf8, 0x64, 0x90, 0x73, 0xdf, 0xc6, 0xa8, 0x27, 0xb8, 0x97, 0xb6, 0x98, 0x41, 0x76, 0xb1, 0xa0, 0x9d, 0x15, 0x1b, 0x97, 0x33, 0xa6, 0x8f, 0x6d, 0xa7, 0x46, 0xc4, 0x74, 0x27, 0xcd, 0xeb, 0x3b, 0xe0, 0x75, 0xda, 0x4a, 0x35, 0x1a, 0xb7, 0x8d, 0xd5, 0xe4, 0x72, 0xcd, 0x98, 0xd1, 0x58, 0x6e, 0xdd, 0x6f, 0xf2, 0xa1, 0x1c, 0x6c, 0x16, 0x9f, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10821 = { .name = "ecdsa_secp521r1_sha512_10821", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10821_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10821_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10821_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10822 for ECDSA, tcId is 266 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10822_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10822_msg[] = { 0x37, 0x37, 0x35, 0x35, 0x30, 0x38, 0x35, 0x38, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10822_sig[] = { 0x01, 0x89, 0x96, 0x09, 0xe7, 0xf7, 0xcd, 0x2e, 0xf1, 0x4b, 0xfb, 0xb1, 0xcb, 0x9b, 0xa9, 0x28, 0x3a, 0xe1, 0x1a, 0x93, 0x46, 0xa3, 0x4b, 0xef, 0x23, 0xb1, 0xc2, 0x49, 0xda, 0x2e, 0x76, 0xa7, 0x70, 0x8e, 0x0f, 0x2f, 0x97, 0xf8, 0x19, 0xe4, 0xe2, 0x5b, 0x0d, 0x52, 0x27, 0xee, 0xb8, 0x5a, 0xa5, 0x93, 0xc3, 0xfa, 0xe9, 0x39, 0x8a, 0x70, 0x20, 0xf6, 0x1a, 0xe1, 0x60, 0x69, 0x45, 0xd1, 0x38, 0x41, 0x01, 0xb8, 0xd5, 0xe9, 0xc4, 0xf0, 0x30, 0x29, 0x54, 0x47, 0x10, 0x6d, 0x2b, 0x5c, 0x80, 0xcc, 0x2e, 0x7d, 0x4e, 0x36, 0xb4, 0x58, 0xa9, 0x0a, 0x08, 0xf5, 0x05, 0xdf, 0x62, 0xd2, 0x23, 0x4e, 0x59, 0xd0, 0x81, 0x87, 0x38, 0x5b, 0xa5, 0x50, 0x10, 0x49, 0xb3, 0x4e, 0x12, 0xec, 0x92, 0xf7, 0x83, 0x9a, 0x18, 0x36, 0x1a, 0x52, 0xa9, 0xa0, 0xb6, 0xf6, 0xa6, 0x64, 0xb1, 0x18, 0x68, 0x0b, 0x53, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10822 = { .name = "ecdsa_secp521r1_sha512_10822", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10822_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10822_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10822_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10823 for ECDSA, tcId is 267 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10823_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10823_msg[] = { 0x31, 0x37, 0x39, 0x38, 0x32, 0x36, 0x34, 0x38, 0x33, 0x38, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10823_sig[] = { 0x01, 0xdd, 0xc6, 0x9d, 0x15, 0x08, 0x02, 0x1e, 0xb5, 0x60, 0xdb, 0x39, 0xf3, 0xad, 0xd8, 0xa2, 0x8d, 0xd7, 0xfb, 0xce, 0x41, 0x7e, 0x5f, 0xa1, 0xf4, 0xf6, 0x26, 0x70, 0x5c, 0xaa, 0xad, 0x72, 0xb6, 0x34, 0x86, 0x8d, 0x01, 0xdf, 0xc4, 0x74, 0xe9, 0x26, 0xc9, 0x79, 0x27, 0xc5, 0x6a, 0xc5, 0x1f, 0x9b, 0xdc, 0xfd, 0x0e, 0x76, 0x27, 0xbe, 0x35, 0xcc, 0x30, 0x0a, 0x0c, 0xdc, 0x08, 0x3b, 0x00, 0xd4, 0x00, 0x6e, 0x86, 0x2c, 0xaf, 0x9f, 0x2d, 0xf1, 0x1b, 0x0a, 0x46, 0x10, 0x4e, 0x78, 0x86, 0x5f, 0xbb, 0xab, 0xe3, 0x0b, 0xfa, 0xc0, 0xb1, 0xfe, 0x7f, 0x99, 0xba, 0xdc, 0x11, 0x74, 0x6a, 0x28, 0x8c, 0x1f, 0xf2, 0x7f, 0x6f, 0xa2, 0xaa, 0xba, 0x64, 0x41, 0xba, 0xb0, 0x37, 0x2a, 0xf9, 0x06, 0xee, 0xf0, 0x83, 0xff, 0x03, 0xba, 0x46, 0x6b, 0x89, 0x6c, 0x93, 0x44, 0xcd, 0x39, 0x6d, 0xd4, 0x6d, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10823 = { .name = "ecdsa_secp521r1_sha512_10823", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10823_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10823_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10823_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10824 for ECDSA, tcId is 268 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10824_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10824_msg[] = { 0x32, 0x33, 0x39, 0x36, 0x37, 0x37, 0x37, 0x33, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10824_sig[] = { 0x01, 0x17, 0xfe, 0x2c, 0x21, 0xf2, 0x82, 0xc7, 0xe4, 0xa8, 0x41, 0x5e, 0x9c, 0x53, 0xc2, 0x54, 0x51, 0x4e, 0xee, 0xb0, 0xad, 0xad, 0xc7, 0x71, 0xad, 0xbc, 0x6d, 0x21, 0xa0, 0x9a, 0xdd, 0x4f, 0x17, 0xea, 0x0c, 0x59, 0x74, 0x69, 0x48, 0x82, 0x38, 0xbe, 0x79, 0x5f, 0x2e, 0x18, 0x7f, 0xa0, 0x16, 0xd5, 0x90, 0x53, 0x5b, 0x4f, 0xf1, 0x0c, 0x62, 0xd2, 0x24, 0x6a, 0xa1, 0x7b, 0xb0, 0x13, 0xf9, 0xee, 0x00, 0x3c, 0x9f, 0x15, 0x90, 0xce, 0x7a, 0x68, 0xfc, 0x84, 0xc6, 0x17, 0xf4, 0x78, 0x18, 0x8e, 0x71, 0xae, 0xfe, 0x8c, 0x74, 0xc4, 0xb9, 0x97, 0x9b, 0x8c, 0x91, 0x96, 0xbc, 0xc2, 0x62, 0x20, 0x5a, 0xec, 0xce, 0x5f, 0xd2, 0xbb, 0x80, 0xc3, 0x60, 0xd3, 0xe2, 0x0d, 0xa2, 0x0e, 0x36, 0xc5, 0xab, 0x70, 0xd8, 0x10, 0xd4, 0xba, 0x97, 0xd1, 0x38, 0x58, 0x19, 0x9d, 0x3a, 0x1c, 0x9c, 0x14, 0x0c, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10824 = { .name = "ecdsa_secp521r1_sha512_10824", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10824_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10824_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10824_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10825 for ECDSA, tcId is 269 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10825_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10825_msg[] = { 0x35, 0x39, 0x39, 0x38, 0x31, 0x30, 0x35, 0x38, 0x30, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10825_sig[] = { 0x00, 0xbe, 0x6b, 0x47, 0x25, 0x4a, 0x3c, 0xf9, 0x3e, 0x2e, 0x27, 0x6a, 0xdf, 0xb0, 0x72, 0x25, 0x64, 0x04, 0x74, 0x40, 0x70, 0xd6, 0xde, 0xc8, 0x3e, 0xf3, 0x4e, 0x3e, 0x6c, 0x11, 0x92, 0x06, 0x42, 0x2b, 0xb2, 0x75, 0xe6, 0x1f, 0xc4, 0x70, 0x53, 0xef, 0x7b, 0x2a, 0xf9, 0xe3, 0x3a, 0xca, 0x8f, 0x8b, 0x2e, 0x49, 0x38, 0x05, 0x70, 0x70, 0xeb, 0x6e, 0xbb, 0xcf, 0x82, 0xfa, 0xbb, 0x44, 0xa5, 0xfe, 0x01, 0x06, 0x1e, 0xf8, 0x09, 0x35, 0xff, 0x6d, 0x0e, 0x9f, 0x87, 0xf3, 0x53, 0x7b, 0x63, 0x99, 0x45, 0xac, 0xf5, 0x0c, 0x5d, 0x97, 0xd3, 0x0b, 0x4b, 0x9c, 0x34, 0x7e, 0x3f, 0x5f, 0x5e, 0xc0, 0x2b, 0x15, 0xa3, 0x76, 0xae, 0x75, 0x4d, 0x64, 0xb2, 0xef, 0xaa, 0x81, 0x1b, 0x3d, 0x12, 0xa0, 0xff, 0xf0, 0xbc, 0x68, 0x90, 0x22, 0x02, 0x5d, 0xd2, 0xf6, 0x9f, 0x2f, 0x4b, 0x40, 0xdd, 0xa8, 0x68, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10825 = { .name = "ecdsa_secp521r1_sha512_10825", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10825_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10825_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10825_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10826 for ECDSA, tcId is 270 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10826_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10826_msg[] = { 0x31, 0x36, 0x36, 0x37, 0x37, 0x38, 0x32, 0x37, 0x30, 0x35, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10826_sig[] = { 0x01, 0x30, 0xb6, 0xfd, 0x7d, 0xec, 0x5c, 0xb6, 0xf9, 0x0a, 0x8b, 0x54, 0xce, 0x7b, 0x58, 0xc6, 0x1b, 0x01, 0x3d, 0x0a, 0xed, 0x7c, 0x4a, 0x26, 0x63, 0x9d, 0xe8, 0x0a, 0xea, 0xc3, 0xd9, 0xe3, 0x38, 0x8e, 0x9f, 0x87, 0xe1, 0xe6, 0x41, 0x9d, 0x3f, 0x03, 0x39, 0xaf, 0x32, 0x4e, 0x14, 0x21, 0xb5, 0xd1, 0x30, 0x31, 0x7f, 0xfd, 0x9d, 0x8b, 0xe3, 0x65, 0x00, 0xa8, 0x4b, 0xb4, 0x1d, 0x02, 0x6c, 0xea, 0x01, 0x76, 0xb4, 0x60, 0xa3, 0xea, 0xe0, 0x1d, 0x8a, 0xa8, 0xcc, 0xff, 0xb0, 0xd6, 0xcf, 0x4d, 0x15, 0x95, 0xaa, 0x69, 0x7c, 0x65, 0x51, 0x0a, 0x11, 0x97, 0xb9, 0x73, 0x43, 0xc1, 0xa6, 0x23, 0x45, 0x52, 0xce, 0x9d, 0x6d, 0x31, 0x8c, 0x5f, 0x20, 0xf4, 0x8b, 0xec, 0x0d, 0xc3, 0x11, 0xdd, 0x62, 0xeb, 0x40, 0x05, 0x8f, 0x3c, 0xb2, 0x2f, 0xa9, 0x58, 0xed, 0xaf, 0x9d, 0xdd, 0xed, 0x19, 0x1a, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10826 = { .name = "ecdsa_secp521r1_sha512_10826", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10826_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10826_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10826_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10827 for ECDSA, tcId is 271 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10827_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10827_msg[] = { 0x32, 0x30, 0x36, 0x32, 0x31, 0x34, 0x33, 0x36, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10827_sig[] = { 0x00, 0xa8, 0x7d, 0xe4, 0x2d, 0x82, 0x7a, 0xe1, 0xf5, 0x5d, 0x6f, 0xab, 0x32, 0x77, 0xc7, 0xa9, 0xfd, 0xfa, 0xc3, 0xaf, 0x22, 0xfe, 0x47, 0xe5, 0x2b, 0xfe, 0xe3, 0x4f, 0xa1, 0xee, 0x3e, 0x76, 0x50, 0x95, 0xff, 0xf2, 0x01, 0x75, 0xbe, 0xcb, 0xdc, 0x94, 0xb4, 0xa5, 0xad, 0x3a, 0x14, 0x9e, 0xa7, 0xc1, 0xbe, 0xbf, 0x4d, 0x45, 0x37, 0x0e, 0x6b, 0x44, 0x04, 0xa0, 0x43, 0x7d, 0x8f, 0xae, 0x26, 0x4f, 0x01, 0xa3, 0xc1, 0xc5, 0x18, 0x6d, 0x8a, 0xa4, 0x91, 0xb4, 0x62, 0x3f, 0x57, 0x65, 0xa3, 0x88, 0x93, 0x0f, 0x37, 0xbb, 0x8f, 0x3e, 0x1c, 0x0d, 0xb5, 0x08, 0x98, 0x35, 0x85, 0xb9, 0x09, 0x0b, 0x3a, 0xaf, 0x22, 0xbb, 0x84, 0x6e, 0x0f, 0xb6, 0xd9, 0x15, 0xb5, 0x81, 0x1a, 0xc5, 0x5e, 0x4d, 0x6c, 0xb0, 0x8f, 0x60, 0x5c, 0xb8, 0x4d, 0xeb, 0x55, 0xab, 0x7f, 0xba, 0x2d, 0xde, 0x87, 0x36, 0xb1, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10827 = { .name = "ecdsa_secp521r1_sha512_10827", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10827_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10827_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10827_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10828 for ECDSA, tcId is 272 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10828_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10828_msg[] = { 0x36, 0x38, 0x34, 0x32, 0x34, 0x39, 0x36, 0x30, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10828_sig[] = { 0x01, 0x0e, 0x46, 0x05, 0x5d, 0x9a, 0xa0, 0x87, 0xf1, 0xc4, 0xb6, 0x05, 0x63, 0x19, 0xcb, 0xf1, 0x7a, 0x06, 0x94, 0xfe, 0x07, 0x32, 0x66, 0xa3, 0xf3, 0x03, 0x63, 0x03, 0x0e, 0x34, 0x5a, 0x4b, 0xd4, 0x61, 0xac, 0xbd, 0x99, 0xd1, 0x26, 0x1f, 0xc0, 0x5e, 0xf3, 0xc9, 0xa1, 0xc3, 0x7a, 0xfb, 0xa6, 0xe2, 0x1c, 0x2d, 0x51, 0x3e, 0xa3, 0xd4, 0x70, 0x9d, 0xe5, 0x58, 0x68, 0x10, 0xd7, 0xd2, 0x9e, 0xc6, 0x00, 0xd0, 0xc9, 0x5c, 0x7e, 0x97, 0xa9, 0x4e, 0xfb, 0x44, 0xaa, 0x71, 0x7c, 0xd6, 0xeb, 0xe8, 0x2d, 0xe0, 0x64, 0x4e, 0x32, 0x67, 0x6d, 0x19, 0x73, 0x51, 0xf1, 0x28, 0xee, 0x8d, 0x2b, 0x22, 0x3a, 0xb4, 0x76, 0xd3, 0xe6, 0x60, 0x14, 0xec, 0xc0, 0x03, 0x08, 0x1f, 0x70, 0x40, 0xc5, 0x78, 0xb8, 0x98, 0x46, 0x28, 0xd6, 0xec, 0x80, 0x73, 0x3f, 0x71, 0x3e, 0x26, 0xb2, 0xc9, 0x8c, 0xb4, 0xed, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10828 = { .name = "ecdsa_secp521r1_sha512_10828", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10828_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10828_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10828_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10829 for ECDSA, tcId is 273 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10829_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10829_msg[] = { 0x33, 0x32, 0x36, 0x39, 0x38, 0x39, 0x37, 0x33, 0x32, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10829_sig[] = { 0x01, 0x2c, 0x04, 0xd0, 0x8a, 0x7a, 0x2d, 0x07, 0x40, 0x3a, 0xba, 0x60, 0x4e, 0xa8, 0x5e, 0xc2, 0x3a, 0x52, 0xb5, 0x27, 0x86, 0xe7, 0xfc, 0xe0, 0x41, 0x70, 0xe8, 0x67, 0xbe, 0x61, 0x46, 0xee, 0xa7, 0x5a, 0x71, 0x80, 0xf5, 0xd4, 0xf3, 0xb8, 0x2a, 0x20, 0x4a, 0x3c, 0x99, 0x68, 0x11, 0xa1, 0xe6, 0x1a, 0x3e, 0x76, 0xed, 0x20, 0x9c, 0x22, 0x42, 0x8b, 0x35, 0xc5, 0x1f, 0xe6, 0x0f, 0x3b, 0xee, 0x1e, 0x01, 0x6f, 0x2f, 0xea, 0xbc, 0x25, 0x73, 0x3b, 0x0a, 0x46, 0x04, 0x63, 0xb9, 0x93, 0x3e, 0x6e, 0x4a, 0xe9, 0xf4, 0x12, 0x4c, 0xd0, 0xad, 0x37, 0x85, 0xc7, 0x77, 0x55, 0xdb, 0xf0, 0x84, 0x8e, 0xc1, 0xcf, 0xd2, 0xab, 0x08, 0xb9, 0x60, 0xb5, 0x56, 0x87, 0x0f, 0xa0, 0x03, 0x88, 0xd2, 0x3d, 0x9a, 0x9f, 0xa3, 0x11, 0x2a, 0xc3, 0xe6, 0x2a, 0x0f, 0x34, 0x2d, 0x58, 0xfb, 0x1f, 0x0a, 0xa8, 0x17, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10829 = { .name = "ecdsa_secp521r1_sha512_10829", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10829_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10829_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10829_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10830 for ECDSA, tcId is 274 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10830_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10830_msg[] = { 0x31, 0x33, 0x38, 0x37, 0x33, 0x32, 0x34, 0x36, 0x39, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10830_sig[] = { 0x01, 0xca, 0x95, 0x32, 0xc9, 0xda, 0xeb, 0x80, 0xd0, 0xdb, 0xc0, 0x7a, 0x41, 0x38, 0xba, 0x62, 0xa6, 0xba, 0xb8, 0xc8, 0x8b, 0x9e, 0x1e, 0x2e, 0xdf, 0x26, 0x75, 0x13, 0x2e, 0xb9, 0x7c, 0xfb, 0x26, 0xf4, 0xc3, 0x95, 0xf3, 0xb9, 0xd1, 0xd1, 0x27, 0x56, 0x94, 0x95, 0x6b, 0x34, 0xc3, 0xef, 0x72, 0xcd, 0x00, 0xba, 0xb8, 0x67, 0x77, 0x46, 0x5b, 0x9e, 0xdb, 0xa2, 0x9a, 0x41, 0xb0, 0x11, 0x4c, 0x62, 0x01, 0x40, 0xeb, 0x6d, 0xdd, 0xff, 0x25, 0x3a, 0x7f, 0xf5, 0xb0, 0x32, 0xd8, 0x2f, 0xbd, 0x18, 0xe4, 0x81, 0xa3, 0x76, 0xfe, 0x24, 0x2f, 0x64, 0x05, 0xb8, 0x1b, 0x57, 0x16, 0x56, 0x65, 0xc9, 0xbf, 0xe6, 0x1e, 0x25, 0xcd, 0x33, 0x58, 0x24, 0x5b, 0xdf, 0xb8, 0xde, 0x76, 0x32, 0xde, 0x72, 0xed, 0x20, 0xcd, 0xac, 0xf3, 0x84, 0x76, 0x40, 0x96, 0xc8, 0xfe, 0x3a, 0x37, 0x65, 0x63, 0xa3, 0x48, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10830 = { .name = "ecdsa_secp521r1_sha512_10830", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10830_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10830_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10830_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10831 for ECDSA, tcId is 275 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10831_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10831_msg[] = { 0x34, 0x31, 0x31, 0x38, 0x38, 0x38, 0x37, 0x35, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10831_sig[] = { 0x00, 0xd6, 0x09, 0xe1, 0xf1, 0xcc, 0x1a, 0xdf, 0x58, 0x89, 0xdc, 0x6d, 0xed, 0xa4, 0x41, 0x68, 0x2e, 0x76, 0x0b, 0xe0, 0x89, 0x32, 0xb3, 0x15, 0x92, 0xfe, 0xf3, 0xad, 0xa1, 0x43, 0xfb, 0x49, 0x40, 0xe4, 0xea, 0x75, 0xae, 0x51, 0x9e, 0x4f, 0xb0, 0x76, 0x9c, 0x4f, 0xbd, 0x33, 0xa5, 0x2b, 0x18, 0x3a, 0x21, 0xd0, 0xbb, 0xa1, 0xff, 0xa3, 0xfe, 0x50, 0xfd, 0x11, 0xf7, 0x5c, 0x6a, 0xc5, 0x8f, 0xf6, 0x01, 0x24, 0x00, 0xcc, 0x4d, 0xdc, 0x24, 0xdd, 0xcd, 0x47, 0xa6, 0xd6, 0x39, 0xa2, 0xab, 0xde, 0xf2, 0x9a, 0x65, 0xd4, 0xfe, 0x91, 0x75, 0xf5, 0x1b, 0x31, 0x6f, 0x4b, 0xf9, 0x18, 0xbc, 0x91, 0x88, 0x79, 0x49, 0x5c, 0x57, 0x2f, 0x8e, 0x98, 0x36, 0x4e, 0x2e, 0x1a, 0xa0, 0xd4, 0xd5, 0x3a, 0xd2, 0x9e, 0x80, 0x3a, 0x44, 0x70, 0xd9, 0x4d, 0xd0, 0x6a, 0x98, 0x2a, 0x1d, 0x04, 0x1b, 0xf2, 0xb5, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10831 = { .name = "ecdsa_secp521r1_sha512_10831", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10831_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10831_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10831_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10832 for ECDSA, tcId is 276 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10832_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10832_msg[] = { 0x39, 0x38, 0x38, 0x36, 0x30, 0x36, 0x35, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10832_sig[] = { 0x00, 0x37, 0x75, 0xa7, 0xe6, 0x1b, 0xdd, 0xa9, 0xa3, 0xa9, 0x90, 0xba, 0x9f, 0xde, 0x98, 0xf9, 0xd8, 0x1d, 0x4b, 0x03, 0x19, 0x55, 0x47, 0xbb, 0xd0, 0x65, 0x8e, 0x10, 0x59, 0xda, 0xa0, 0x0d, 0xa9, 0x27, 0x06, 0x71, 0xb2, 0xfa, 0xda, 0x1b, 0xbb, 0xf1, 0x39, 0x82, 0xf8, 0x7c, 0x9f, 0x3f, 0x26, 0xdd, 0xa5, 0xcd, 0x4f, 0x24, 0xde, 0x63, 0xbc, 0xeb, 0x5f, 0xd9, 0x39, 0x01, 0x63, 0xc5, 0x8d, 0x26, 0x01, 0x0a, 0x03, 0xe4, 0xba, 0x08, 0xf9, 0xe2, 0xb6, 0x91, 0x5a, 0x6c, 0x0b, 0x83, 0x15, 0x6b, 0x00, 0xf5, 0x9e, 0xfc, 0x54, 0x17, 0x39, 0x4c, 0x51, 0xca, 0x76, 0x16, 0xb5, 0x8c, 0xf9, 0x1a, 0xb7, 0x16, 0x6d, 0x84, 0x59, 0xeb, 0x4e, 0xeb, 0x0d, 0x57, 0x14, 0x6e, 0xd6, 0x56, 0x0e, 0x17, 0x3f, 0xaf, 0x35, 0x4b, 0x43, 0x90, 0x81, 0x7e, 0x0a, 0xaf, 0xb3, 0x82, 0x94, 0xdf, 0x25, 0x99, 0x2c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10832 = { .name = "ecdsa_secp521r1_sha512_10832", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10832_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10832_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10832_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10833 for ECDSA, tcId is 277 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10833_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10833_msg[] = { 0x32, 0x34, 0x37, 0x39, 0x31, 0x31, 0x35, 0x38, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10833_sig[] = { 0x01, 0x7a, 0xb0, 0x0a, 0x30, 0xc8, 0x8f, 0xae, 0xce, 0xd3, 0xe4, 0xa1, 0x0f, 0x9c, 0x63, 0x78, 0x5b, 0xc2, 0x9e, 0x9a, 0xf4, 0x49, 0x94, 0x66, 0xbd, 0x88, 0x80, 0x82, 0x7c, 0xfa, 0x58, 0x0b, 0x61, 0x71, 0xf4, 0xa2, 0x0f, 0x36, 0x48, 0x7f, 0x7b, 0x94, 0x59, 0x29, 0x46, 0xbc, 0xa4, 0x16, 0x2f, 0xaf, 0x65, 0x87, 0x2a, 0xf6, 0xbf, 0xb1, 0x91, 0x9e, 0x6b, 0x02, 0x6c, 0x14, 0xe5, 0x1e, 0x27, 0x40, 0x01, 0x92, 0x75, 0x15, 0xf6, 0x48, 0x9e, 0x9b, 0x7d, 0x9c, 0xbf, 0x61, 0xe1, 0x03, 0x29, 0x58, 0x57, 0xc8, 0x13, 0x13, 0x20, 0x21, 0x7e, 0x7a, 0x86, 0xd3, 0xf2, 0xfd, 0xcb, 0x35, 0x0d, 0xa5, 0xb4, 0x2c, 0x2d, 0xbe, 0x17, 0x3f, 0xcb, 0x02, 0x5d, 0x14, 0xda, 0x23, 0x9d, 0x7d, 0x61, 0x0d, 0xe8, 0x47, 0x59, 0x14, 0x74, 0x85, 0x73, 0x42, 0x9c, 0x95, 0x90, 0xd3, 0x59, 0x4f, 0x4f, 0xa3, 0xaa, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10833 = { .name = "ecdsa_secp521r1_sha512_10833", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10833_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10833_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10833_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10834 for ECDSA, tcId is 278 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10834_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10834_msg[] = { 0x35, 0x30, 0x37, 0x36, 0x38, 0x38, 0x37, 0x33, 0x36, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10834_sig[] = { 0x00, 0x3b, 0x2b, 0xa1, 0x50, 0x9a, 0xea, 0x9d, 0x42, 0xd4, 0x00, 0x40, 0x00, 0x33, 0x95, 0x2a, 0x02, 0x2f, 0xe7, 0xe0, 0x0c, 0x7a, 0xd6, 0x5c, 0x39, 0xa2, 0xf7, 0x6d, 0x41, 0x13, 0x0a, 0xad, 0xa9, 0x9c, 0x3c, 0xdf, 0xb9, 0xcf, 0x44, 0x57, 0x5a, 0x21, 0x63, 0xde, 0x29, 0xf0, 0x97, 0xbe, 0xb9, 0xbd, 0x3a, 0xef, 0x93, 0x34, 0xe6, 0xfd, 0x08, 0x13, 0xdd, 0xe2, 0xa0, 0x87, 0xf9, 0x38, 0xc5, 0xf6, 0x00, 0x1a, 0xfb, 0x56, 0x08, 0x7d, 0xfd, 0x5c, 0xb4, 0xff, 0xf6, 0x67, 0x9a, 0x11, 0x4c, 0x34, 0x0f, 0x3a, 0x59, 0xf6, 0xb3, 0xe1, 0x81, 0x33, 0x73, 0xbf, 0x3e, 0xbe, 0x30, 0xcb, 0x5e, 0x8b, 0x28, 0x5a, 0x58, 0x75, 0xd1, 0xb5, 0xa9, 0x12, 0x0d, 0xb8, 0x0f, 0x70, 0x31, 0x02, 0x01, 0x55, 0x9f, 0x89, 0xbb, 0x1d, 0xf1, 0x47, 0x96, 0x1d, 0x1c, 0xa4, 0xfc, 0xdb, 0x5e, 0x8e, 0x84, 0xca, 0xe0, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10834 = { .name = "ecdsa_secp521r1_sha512_10834", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10834_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10834_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10834_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10835 for ECDSA, tcId is 279 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10835_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10835_msg[] = { 0x39, 0x38, 0x38, 0x35, 0x30, 0x36, 0x39, 0x36, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10835_sig[] = { 0x01, 0x0e, 0xfb, 0x32, 0x1a, 0x34, 0x76, 0x25, 0x34, 0x3f, 0x51, 0x26, 0xed, 0x85, 0x45, 0x01, 0x7d, 0x79, 0x9e, 0xb1, 0x03, 0xc7, 0x55, 0x58, 0x92, 0x2e, 0xab, 0xe4, 0x42, 0x11, 0xe8, 0xfd, 0x83, 0x46, 0x55, 0xdc, 0x2e, 0xc5, 0xbe, 0xe9, 0xbb, 0x3e, 0x44, 0x35, 0x0e, 0xb6, 0x88, 0x5e, 0x0a, 0xb9, 0x74, 0x73, 0x02, 0x22, 0xe5, 0x5f, 0x13, 0xad, 0x27, 0xc0, 0x66, 0x72, 0x2f, 0xec, 0xaa, 0x25, 0x00, 0xd6, 0x2e, 0x3d, 0x7f, 0xf9, 0x21, 0x53, 0x69, 0xaa, 0x7d, 0xa8, 0x18, 0xdb, 0x30, 0x2e, 0x49, 0x03, 0x38, 0x75, 0x01, 0x0b, 0x2f, 0x9b, 0x73, 0xd2, 0x5c, 0xa5, 0xb9, 0xbf, 0x2c, 0x62, 0xed, 0x75, 0x66, 0x86, 0x23, 0x0c, 0xd5, 0xf4, 0xa3, 0x7c, 0x1f, 0xa8, 0x81, 0xc9, 0x7e, 0x62, 0x39, 0x19, 0xfa, 0xb8, 0x27, 0xde, 0x59, 0x95, 0xab, 0x45, 0x6a, 0x1f, 0xd7, 0xac, 0x7b, 0x85, 0xb1, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10835 = { .name = "ecdsa_secp521r1_sha512_10835", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10835_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10835_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10835_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10836 for ECDSA, tcId is 280 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10836_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10836_msg[] = { 0x32, 0x37, 0x32, 0x31, 0x33, 0x30, 0x36, 0x31, 0x33, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10836_sig[] = { 0x00, 0x2f, 0x77, 0x8c, 0xd5, 0x52, 0xf5, 0x4d, 0xa5, 0xf5, 0x67, 0xf4, 0x7e, 0x69, 0x79, 0x87, 0x2b, 0xa1, 0x30, 0xdc, 0x08, 0x90, 0x17, 0x2b, 0xf3, 0xb3, 0xbb, 0x95, 0x2f, 0x03, 0xc6, 0x4b, 0xc8, 0x78, 0x3a, 0xbe, 0x9f, 0x05, 0x6d, 0x60, 0xe1, 0x66, 0x77, 0x80, 0xf5, 0xea, 0x88, 0xf5, 0x9e, 0xf3, 0x3c, 0x73, 0x5d, 0x54, 0x05, 0x61, 0xa1, 0x97, 0xd3, 0x1f, 0xe3, 0x48, 0x53, 0xa6, 0x0a, 0x52, 0x00, 0xbd, 0x28, 0x16, 0xf0, 0x63, 0x72, 0xf2, 0xe3, 0xf2, 0x58, 0x2d, 0x53, 0xe5, 0x83, 0xe1, 0x33, 0xa5, 0x51, 0xaa, 0xec, 0x04, 0xdd, 0xc2, 0xfd, 0xb7, 0xb8, 0x13, 0x17, 0x87, 0xe7, 0x3e, 0x42, 0x95, 0xac, 0x28, 0xa9, 0x60, 0x4a, 0x24, 0x02, 0xed, 0x5b, 0x27, 0x2c, 0xc0, 0x3b, 0xe5, 0x7d, 0xd4, 0xa7, 0xdf, 0x84, 0xd9, 0xee, 0x24, 0xcb, 0x0c, 0x2b, 0xf1, 0x24, 0xed, 0x92, 0x7d, 0xef, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10836 = { .name = "ecdsa_secp521r1_sha512_10836", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10836_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10836_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10836_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10837 for ECDSA, tcId is 281 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10837_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10837_msg[] = { 0x33, 0x32, 0x30, 0x34, 0x31, 0x30, 0x31, 0x36, 0x35, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10837_sig[] = { 0x01, 0x2a, 0x45, 0x9f, 0xff, 0xea, 0x70, 0xd3, 0xbf, 0xc1, 0x3e, 0x9e, 0xa0, 0xab, 0xb1, 0x0a, 0xae, 0x39, 0x10, 0xdf, 0x60, 0x49, 0x97, 0xcb, 0x5e, 0x4b, 0xb0, 0x54, 0x8a, 0xbd, 0x85, 0x2a, 0xba, 0xc6, 0xb9, 0xa3, 0x24, 0x18, 0xc3, 0xb5, 0xed, 0x4e, 0x79, 0x51, 0xae, 0x88, 0xee, 0xcc, 0x0a, 0x2f, 0x10, 0x65, 0xca, 0xf2, 0x4c, 0x6a, 0x81, 0x46, 0x74, 0xe9, 0x56, 0x82, 0xd9, 0xb4, 0x93, 0xf2, 0x00, 0xe2, 0xab, 0xd0, 0x5c, 0x58, 0x5e, 0x0c, 0x21, 0x3a, 0x21, 0x9a, 0x7e, 0x7d, 0x38, 0xb8, 0x10, 0xd2, 0x52, 0xff, 0xea, 0x67, 0x65, 0x0d, 0x4d, 0x19, 0x94, 0xa4, 0x1c, 0x2c, 0xa3, 0x25, 0xbb, 0x96, 0x49, 0x20, 0xc6, 0xc2, 0x54, 0x53, 0x81, 0xc4, 0x5c, 0xa3, 0xe1, 0xec, 0xa0, 0x5e, 0x00, 0x51, 0x4b, 0x36, 0x6c, 0xb0, 0xe1, 0xe4, 0x9b, 0x8c, 0x23, 0x6d, 0x38, 0x3b, 0x26, 0x0b, 0x9c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10837 = { .name = "ecdsa_secp521r1_sha512_10837", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10837_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10837_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10837_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10838 for ECDSA, tcId is 282 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10838_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10838_msg[] = { 0x33, 0x31, 0x35, 0x30, 0x36, 0x38, 0x30, 0x39, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10838_sig[] = { 0x01, 0x0f, 0x26, 0x53, 0xd9, 0x4a, 0xa2, 0x8b, 0xcb, 0xd6, 0x67, 0xa5, 0x01, 0x3f, 0x9b, 0x28, 0x3d, 0x84, 0x87, 0xc4, 0x4d, 0x09, 0x3e, 0xe4, 0x76, 0x60, 0x32, 0x93, 0x98, 0xca, 0xa5, 0x50, 0xca, 0x9c, 0x93, 0x88, 0xc7, 0xaa, 0xde, 0xce, 0xac, 0xac, 0x15, 0x07, 0xe7, 0x65, 0x90, 0xaf, 0xb7, 0x36, 0xad, 0xb3, 0x58, 0x3f, 0x54, 0xf3, 0x1a, 0xe2, 0x5c, 0x9c, 0x71, 0x7e, 0xc9, 0xf8, 0x9b, 0x5e, 0x00, 0x49, 0x44, 0x48, 0xa7, 0xff, 0xe4, 0xa4, 0xee, 0xd8, 0x4b, 0x46, 0x02, 0x78, 0x1e, 0xce, 0xf7, 0x7a, 0x23, 0xfe, 0xd1, 0x16, 0xb1, 0xb7, 0x91, 0xb8, 0xd2, 0xe4, 0x23, 0x1b, 0x7c, 0xa2, 0xa7, 0xb6, 0xf0, 0x6d, 0x13, 0x27, 0x05, 0x93, 0x2d, 0x44, 0x6e, 0x61, 0xd3, 0x44, 0x71, 0x4e, 0xe2, 0x40, 0x14, 0xfa, 0x5b, 0xb1, 0x44, 0xa9, 0x65, 0x72, 0xb3, 0xd4, 0x8d, 0x03, 0x8a, 0x55, 0xad, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10838 = { .name = "ecdsa_secp521r1_sha512_10838", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10838_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10838_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10838_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10839 for ECDSA, tcId is 283 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10839_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10839_msg[] = { 0x31, 0x37, 0x32, 0x37, 0x34, 0x36, 0x30, 0x31, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10839_sig[] = { 0x00, 0xc2, 0xda, 0x48, 0x55, 0x2c, 0x39, 0xd9, 0x4f, 0x5a, 0x45, 0x42, 0x7a, 0xe9, 0xdc, 0xd8, 0x91, 0xb6, 0x5c, 0xca, 0x33, 0xe6, 0x24, 0xad, 0x25, 0x32, 0xff, 0xa3, 0x33, 0x66, 0x6b, 0x24, 0x1d, 0x87, 0x33, 0x36, 0xfa, 0xb7, 0xbb, 0xd7, 0xb4, 0xc1, 0x93, 0xdb, 0x4d, 0x86, 0x5c, 0xd5, 0x0f, 0x0c, 0x1d, 0x8c, 0xb5, 0xc1, 0x4c, 0xf3, 0xf0, 0x89, 0xad, 0x42, 0xdd, 0x43, 0xcf, 0xff, 0x63, 0x4e, 0x01, 0x4f, 0x20, 0x70, 0xdc, 0xf8, 0x60, 0xb9, 0x6a, 0x45, 0xf2, 0xa6, 0x06, 0x1e, 0x4e, 0xc2, 0xa6, 0xad, 0x64, 0xd7, 0xd0, 0xe9, 0xfb, 0xdb, 0x25, 0xaa, 0x93, 0xb9, 0x99, 0x41, 0xbe, 0x28, 0x0f, 0x5c, 0x70, 0xc0, 0xe3, 0x2b, 0x62, 0x34, 0xdf, 0x54, 0x5b, 0xac, 0xe7, 0x34, 0x1a, 0xf9, 0x4c, 0x14, 0x0c, 0x86, 0x5d, 0x44, 0xfa, 0x8e, 0xa7, 0xeb, 0xe0, 0xfe, 0x53, 0xbd, 0xa4, 0x46, 0x45, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10839 = { .name = "ecdsa_secp521r1_sha512_10839", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10839_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10839_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10839_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10840 for ECDSA, tcId is 284 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10840_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10840_msg[] = { 0x31, 0x34, 0x35, 0x37, 0x31, 0x34, 0x36, 0x31, 0x32, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10840_sig[] = { 0x00, 0x9b, 0xc6, 0xe7, 0x45, 0x49, 0xb4, 0x8a, 0x1e, 0x7c, 0x18, 0x1b, 0x17, 0x96, 0x87, 0xfb, 0x27, 0xd6, 0xe9, 0xac, 0xac, 0x47, 0xec, 0x34, 0xb1, 0xb8, 0xbd, 0x04, 0x4d, 0x32, 0x93, 0x20, 0x54, 0x4e, 0x4e, 0x56, 0x8e, 0x67, 0xd1, 0x7f, 0x4c, 0xda, 0x2f, 0x0a, 0x3f, 0xe3, 0x03, 0xd5, 0x61, 0xa1, 0x1f, 0xc0, 0xc9, 0x81, 0xed, 0x9b, 0xe2, 0xfc, 0xc6, 0xd3, 0x97, 0xa4, 0x3a, 0xd4, 0x9e, 0x10, 0x00, 0xff, 0x29, 0x5e, 0x43, 0xfe, 0xc5, 0xb6, 0x8b, 0x00, 0xce, 0x80, 0x44, 0x43, 0x4b, 0xcd, 0x17, 0xaf, 0x1b, 0xa0, 0x4a, 0x74, 0x55, 0x63, 0x53, 0xe2, 0x58, 0xd0, 0x17, 0xba, 0x26, 0xbe, 0xd6, 0x7f, 0x45, 0x8f, 0xad, 0x5d, 0xd8, 0xe7, 0xd2, 0x73, 0x4d, 0x56, 0xf5, 0x99, 0x28, 0xc2, 0x41, 0x94, 0x41, 0xa9, 0xe8, 0xc0, 0x57, 0x3d, 0xb3, 0x58, 0x6c, 0xa0, 0x56, 0x95, 0x1c, 0xa9, 0x35, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10840 = { .name = "ecdsa_secp521r1_sha512_10840", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10840_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10840_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10840_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10841 for ECDSA, tcId is 285 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10841_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10841_msg[] = { 0x34, 0x31, 0x37, 0x39, 0x35, 0x31, 0x36, 0x30, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10841_sig[] = { 0x00, 0x20, 0x96, 0x36, 0x38, 0xd0, 0xb0, 0x58, 0x49, 0x42, 0x54, 0xef, 0xce, 0x57, 0x77, 0x8a, 0xc6, 0x5e, 0x5f, 0x23, 0x49, 0x1f, 0x7a, 0xdf, 0xa7, 0x2e, 0x47, 0x13, 0xb7, 0xc0, 0x39, 0x46, 0xb5, 0x43, 0xc0, 0x14, 0xd9, 0x66, 0x0d, 0x85, 0x52, 0x46, 0xf3, 0x08, 0x08, 0x5e, 0xee, 0xe4, 0x95, 0xcd, 0x83, 0x1b, 0x7d, 0xbe, 0xce, 0x47, 0xae, 0xa4, 0x8e, 0x90, 0x43, 0x3b, 0xd0, 0xfe, 0x81, 0x84, 0x01, 0x61, 0xa4, 0xf4, 0x97, 0x7f, 0xec, 0xae, 0x92, 0xd4, 0xf6, 0x7e, 0x56, 0xf3, 0x33, 0x8c, 0x7a, 0x9b, 0x82, 0x0b, 0x5e, 0x05, 0xdb, 0x1f, 0x28, 0xd0, 0x5d, 0x71, 0xf7, 0xe5, 0xf3, 0x6b, 0xc6, 0x3f, 0x6e, 0xdd, 0xa4, 0xd3, 0xc1, 0xb2, 0xd7, 0x3b, 0xb8, 0xa3, 0x0c, 0x4d, 0x74, 0x5b, 0x73, 0xe6, 0x34, 0xef, 0x57, 0x4c, 0xf4, 0x76, 0x56, 0xa3, 0x72, 0xe3, 0xeb, 0x42, 0xcc, 0x03, 0x88, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10841 = { .name = "ecdsa_secp521r1_sha512_10841", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10841_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10841_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10841_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 285 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10842 for ECDSA, tcId is 286 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10842_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10842_msg[] = { 0x35, 0x38, 0x39, 0x32, 0x37, 0x31, 0x33, 0x30, 0x35, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10842_sig[] = { 0x01, 0xbc, 0xc5, 0x85, 0x85, 0x97, 0xce, 0x8d, 0x4d, 0xc5, 0xff, 0xa6, 0xbe, 0x33, 0xf7, 0xd8, 0x04, 0xf2, 0xf8, 0xef, 0x59, 0xc5, 0xdb, 0x93, 0x01, 0x78, 0x5e, 0x0c, 0xce, 0xb7, 0xed, 0x57, 0x46, 0x2f, 0x45, 0x5a, 0x46, 0x57, 0x10, 0xc7, 0x41, 0x45, 0x70, 0xc9, 0xa3, 0x5a, 0x31, 0x00, 0xbd, 0x15, 0xfa, 0x40, 0xe3, 0xec, 0x35, 0x0d, 0x1f, 0x75, 0x40, 0x6c, 0x2a, 0x25, 0x88, 0x5e, 0x9d, 0x76, 0x00, 0x43, 0x75, 0x7d, 0x28, 0x2f, 0xd1, 0xd4, 0x4c, 0x25, 0x3f, 0x9a, 0x05, 0xd8, 0x14, 0x2c, 0x29, 0xa6, 0xd6, 0x3c, 0x0a, 0x1f, 0x55, 0x08, 0x43, 0x1b, 0xc9, 0xfb, 0x9b, 0x60, 0xa3, 0x8b, 0x7f, 0x41, 0x4e, 0x73, 0x0e, 0x0d, 0x59, 0xb7, 0xb7, 0x09, 0x70, 0x6a, 0x67, 0x02, 0x2e, 0x19, 0x22, 0xfe, 0x88, 0xb1, 0x82, 0xa5, 0x74, 0x43, 0xc5, 0x8b, 0xd0, 0x6a, 0x69, 0xee, 0x78, 0x14, 0xbc, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10842 = { .name = "ecdsa_secp521r1_sha512_10842", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10842_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10842_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10842_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 286 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10843 for ECDSA, tcId is 287 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10843_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10843_msg[] = { 0x33, 0x38, 0x39, 0x36, 0x31, 0x38, 0x32, 0x32, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10843_sig[] = { 0x01, 0x24, 0x01, 0x20, 0xb9, 0x7e, 0xa6, 0x7b, 0xcb, 0xd0, 0xe4, 0x12, 0xd8, 0x71, 0x37, 0xa1, 0x3e, 0x34, 0x7a, 0x87, 0x0a, 0x22, 0x49, 0x37, 0x5f, 0xcc, 0xf8, 0xc0, 0x04, 0xda, 0x35, 0xe5, 0x92, 0x62, 0x07, 0x74, 0x16, 0x0e, 0x7b, 0x82, 0xae, 0xd1, 0xf5, 0x79, 0x97, 0xfb, 0x01, 0x5a, 0x76, 0x4d, 0x01, 0x4d, 0x4b, 0xe1, 0xf3, 0x89, 0xe5, 0x49, 0x97, 0x77, 0x05, 0x45, 0x76, 0xe7, 0xbf, 0x00, 0x01, 0x9f, 0x15, 0x7e, 0xc3, 0xa2, 0x41, 0x08, 0x53, 0x27, 0x4b, 0xc4, 0xd8, 0xe7, 0x56, 0x5e, 0x9e, 0xaa, 0x5d, 0xc4, 0x7d, 0x5e, 0x51, 0x5a, 0xbc, 0x86, 0xc2, 0x2f, 0xa6, 0xdc, 0x21, 0x54, 0x82, 0xdf, 0x5c, 0x0e, 0x2b, 0x88, 0x5f, 0x37, 0xba, 0xef, 0x3a, 0x6a, 0xe8, 0x3d, 0xaa, 0xc9, 0x30, 0x61, 0x7a, 0x5f, 0xb3, 0x7b, 0xb0, 0x3c, 0xe4, 0x0f, 0x06, 0xfa, 0x4e, 0xce, 0x26, 0xcb, 0xb1, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10843 = { .name = "ecdsa_secp521r1_sha512_10843", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10843_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10843_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10843_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 287 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10844 for ECDSA, tcId is 288 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10844_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10844_msg[] = { 0x38, 0x32, 0x38, 0x33, 0x33, 0x34, 0x36, 0x37, 0x33, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10844_sig[] = { 0x01, 0xa7, 0x53, 0x6d, 0x55, 0x87, 0x6f, 0x83, 0x92, 0xa6, 0xeb, 0xa1, 0x8f, 0x07, 0x51, 0x18, 0xc2, 0x73, 0x01, 0x58, 0x44, 0xeb, 0x35, 0x36, 0xc7, 0x27, 0xc0, 0x04, 0xc1, 0xbf, 0x23, 0x06, 0x7d, 0x57, 0xe8, 0xfe, 0x31, 0x87, 0x2f, 0x8b, 0xf8, 0x39, 0x64, 0x0e, 0x80, 0xe0, 0x6a, 0xba, 0x3c, 0x0a, 0x36, 0x5a, 0x26, 0x8c, 0xab, 0xc2, 0xda, 0x96, 0xd8, 0x45, 0x50, 0xa5, 0x69, 0xf1, 0x7f, 0x9c, 0x00, 0xe8, 0x40, 0xb6, 0xa7, 0xcb, 0xa7, 0x18, 0xd9, 0x11, 0x03, 0xfa, 0xa1, 0x34, 0xc2, 0xf6, 0x37, 0x63, 0xf3, 0xb6, 0xb9, 0x1d, 0xb7, 0xec, 0xbd, 0x3b, 0x10, 0xf1, 0x01, 0x71, 0xa8, 0x75, 0x71, 0x2c, 0xb9, 0x38, 0x43, 0x25, 0x41, 0x1b, 0xec, 0xa9, 0xa3, 0xaa, 0x87, 0xaa, 0xae, 0x39, 0x02, 0xc2, 0x82, 0xd2, 0xde, 0xda, 0xa1, 0xcb, 0xdd, 0xd4, 0x0c, 0xcf, 0x0d, 0x29, 0x97, 0x5d, 0xf2, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10844 = { .name = "ecdsa_secp521r1_sha512_10844", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10844_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10844_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10844_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 288 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10845 for ECDSA, tcId is 289 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10845_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10845_msg[] = { 0x33, 0x33, 0x36, 0x36, 0x39, 0x37, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10845_sig[] = { 0x01, 0x3f, 0x72, 0xbe, 0x1c, 0x33, 0x12, 0x14, 0xf4, 0x50, 0x07, 0xff, 0x72, 0xce, 0x54, 0xaf, 0xce, 0x1c, 0x91, 0x0a, 0x90, 0xe4, 0xff, 0x3d, 0x17, 0x66, 0x20, 0xff, 0x3c, 0xa9, 0x76, 0xc2, 0xb6, 0x2d, 0x0c, 0xdf, 0x5d, 0x11, 0x34, 0x29, 0x0e, 0xe9, 0x74, 0x40, 0x71, 0x55, 0x31, 0x45, 0x5d, 0xc2, 0x98, 0x18, 0x82, 0x80, 0x94, 0xd3, 0x66, 0xf9, 0x59, 0xe1, 0xad, 0xc7, 0xd7, 0xe9, 0x8e, 0xa4, 0x01, 0xe8, 0x0a, 0xc3, 0x8b, 0xa6, 0x9f, 0x3e, 0x53, 0x11, 0x6e, 0x54, 0x32, 0xfb, 0xdb, 0x3b, 0x1e, 0x7e, 0xa1, 0xb4, 0x3e, 0x5f, 0x86, 0xd1, 0xc0, 0xe3, 0xd1, 0xc4, 0x69, 0x44, 0x2d, 0xbb, 0x40, 0x6f, 0xfe, 0x52, 0x4f, 0x06, 0x85, 0xf7, 0x1e, 0x81, 0x1d, 0x94, 0xa9, 0xef, 0xa9, 0xed, 0x38, 0xcc, 0xd9, 0x21, 0x3f, 0x98, 0x39, 0x83, 0x03, 0x5f, 0x2a, 0xdd, 0x0b, 0x8f, 0x2f, 0xa4, 0xae, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10845 = { .name = "ecdsa_secp521r1_sha512_10845", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10845_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10845_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10845_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 289 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10846 for ECDSA, tcId is 290 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10846_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10846_msg[] = { 0x32, 0x31, 0x39, 0x39, 0x31, 0x35, 0x33, 0x32, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10846_sig[] = { 0x01, 0xac, 0xea, 0xa6, 0xd5, 0x67, 0xdd, 0xb3, 0x9b, 0xa5, 0x2d, 0x29, 0x7e, 0x60, 0xe4, 0xa8, 0x14, 0xc9, 0xb4, 0x76, 0xca, 0xb5, 0x68, 0xc0, 0x9d, 0x8a, 0xce, 0x87, 0x8d, 0x84, 0x62, 0x18, 0xdd, 0x2b, 0x5d, 0x2a, 0x24, 0x61, 0xf0, 0xd5, 0xa5, 0x6c, 0x12, 0xf0, 0xbd, 0x80, 0x3e, 0x32, 0x53, 0xdc, 0x5b, 0x38, 0x7b, 0x94, 0xe8, 0x65, 0x89, 0xcb, 0x1d, 0x0c, 0xb8, 0x09, 0xc7, 0x07, 0x11, 0x25, 0x01, 0xb1, 0xfb, 0x02, 0x1b, 0x10, 0xb5, 0x93, 0xcf, 0x9e, 0x79, 0x3c, 0xf2, 0x2a, 0x88, 0xbd, 0xe9, 0xa4, 0xb9, 0x2f, 0x9e, 0x21, 0x80, 0x94, 0xf2, 0x70, 0xb0, 0x93, 0xe8, 0xc6, 0xc9, 0x5a, 0xce, 0xd4, 0x3d, 0x09, 0x7b, 0xfa, 0x33, 0x54, 0xe6, 0xb9, 0x8d, 0x19, 0x5c, 0x59, 0x9c, 0x2e, 0x6f, 0x13, 0x35, 0x1c, 0x63, 0xc2, 0x89, 0x67, 0xe0, 0x8b, 0x7e, 0x49, 0x7e, 0x12, 0x06, 0x65, 0xc6, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10846 = { .name = "ecdsa_secp521r1_sha512_10846", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10846_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10846_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10846_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 290 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10847 for ECDSA, tcId is 291 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10847_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10847_msg[] = { 0x35, 0x36, 0x30, 0x30, 0x33, 0x31, 0x36, 0x38, 0x32, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10847_sig[] = { 0x00, 0xf6, 0xff, 0xb5, 0xdd, 0x78, 0x63, 0x26, 0x04, 0x1e, 0x74, 0x56, 0x4b, 0x71, 0x9d, 0x38, 0x92, 0x4a, 0x28, 0x32, 0x98, 0x68, 0x17, 0x7c, 0x13, 0x46, 0x3c, 0xff, 0x90, 0xc4, 0xb0, 0x9d, 0x3d, 0x2d, 0xbc, 0x01, 0x12, 0x81, 0xcc, 0x78, 0xaa, 0x0e, 0x5e, 0x86, 0x56, 0x12, 0x3b, 0xc5, 0x06, 0x05, 0x60, 0x1a, 0x54, 0x7b, 0xb4, 0xb1, 0x76, 0x1f, 0x85, 0x2a, 0x12, 0x0e, 0xa4, 0x6d, 0xf9, 0xdf, 0x01, 0xa4, 0x07, 0xfd, 0xd4, 0x45, 0x61, 0x4a, 0x16, 0xa5, 0xeb, 0xd4, 0xba, 0x07, 0x5c, 0x6c, 0x1d, 0x75, 0x64, 0xf3, 0xcf, 0xd4, 0x77, 0xd6, 0xb2, 0x62, 0x0a, 0xbf, 0x18, 0xa5, 0xbf, 0x78, 0x31, 0x12, 0x82, 0xea, 0x45, 0xb9, 0xbf, 0xf8, 0x13, 0xf2, 0x4c, 0x3c, 0x78, 0x54, 0xe6, 0x09, 0x1c, 0x80, 0x55, 0x14, 0x4f, 0x95, 0x92, 0xfb, 0xf2, 0xe4, 0x56, 0x42, 0x1a, 0x41, 0xc5, 0x55, 0xd7, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10847 = { .name = "ecdsa_secp521r1_sha512_10847", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10847_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10847_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10847_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 291 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10848 for ECDSA, tcId is 292 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10848_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10848_msg[] = { 0x38, 0x36, 0x39, 0x36, 0x35, 0x31, 0x36, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10848_sig[] = { 0x01, 0xa1, 0x5a, 0xf4, 0xd5, 0xca, 0x3d, 0xea, 0xde, 0xcd, 0x75, 0xec, 0x1b, 0xae, 0xc3, 0x1c, 0x8d, 0x43, 0xfb, 0xc8, 0x89, 0x46, 0x64, 0x75, 0xe6, 0xc2, 0x31, 0x06, 0xdb, 0x4e, 0x63, 0xab, 0x69, 0x00, 0x3f, 0x56, 0xd8, 0x19, 0xdd, 0xfc, 0x5a, 0x67, 0x3c, 0x82, 0x89, 0xf9, 0xe6, 0xdf, 0x80, 0x6b, 0x07, 0xaf, 0x57, 0xa2, 0x54, 0x1a, 0xf6, 0x94, 0xe6, 0x48, 0x97, 0x34, 0xc8, 0xee, 0xc8, 0x37, 0x00, 0x69, 0xc3, 0x54, 0x33, 0xa3, 0x21, 0x7f, 0xcd, 0x73, 0x8a, 0x65, 0xb7, 0xda, 0x9e, 0x81, 0xcd, 0x81, 0xf0, 0x4f, 0x0e, 0xf0, 0x60, 0x05, 0x0b, 0x9c, 0x84, 0x3e, 0x9e, 0x80, 0x8d, 0x8b, 0x81, 0x75, 0xf3, 0xad, 0xae, 0xfa, 0x10, 0x5d, 0x21, 0x5e, 0xa9, 0xa4, 0x6b, 0xf4, 0x15, 0xfe, 0x2a, 0xc1, 0x80, 0x95, 0x8f, 0xcd, 0xd8, 0x78, 0xd5, 0x4f, 0x8d, 0x19, 0xd2, 0x3e, 0x11, 0xb7, 0x6d, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10848 = { .name = "ecdsa_secp521r1_sha512_10848", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10848_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10848_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10848_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 292 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10849 for ECDSA, tcId is 293 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10849_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10849_msg[] = { 0x36, 0x35, 0x38, 0x33, 0x39, 0x32, 0x36, 0x33, 0x37, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10849_sig[] = { 0x00, 0xba, 0x89, 0x9f, 0x94, 0x84, 0x1d, 0xb6, 0xc3, 0x3b, 0x85, 0x08, 0x67, 0xc8, 0x90, 0x6b, 0x43, 0x6b, 0xe3, 0x85, 0x36, 0x40, 0xdb, 0xfc, 0x86, 0x31, 0x97, 0xfa, 0x1e, 0x5a, 0x55, 0xce, 0x25, 0x24, 0x0f, 0x2b, 0xe4, 0x98, 0xb9, 0xbd, 0xcf, 0xc0, 0xa8, 0x9d, 0xbd, 0xca, 0x19, 0x2d, 0x8f, 0x84, 0xca, 0x3c, 0x44, 0xe5, 0xe0, 0xee, 0x6f, 0x83, 0xe7, 0x90, 0x0e, 0x08, 0x5e, 0x1b, 0xd4, 0x81, 0x00, 0x86, 0xe6, 0xd5, 0x58, 0xde, 0x8d, 0x8f, 0x01, 0x4a, 0x85, 0xcb, 0x4a, 0x5f, 0x69, 0x08, 0x62, 0x7e, 0x7a, 0x1a, 0xcd, 0x70, 0x58, 0x1d, 0x9d, 0x9c, 0x7d, 0x14, 0xdf, 0x44, 0xd4, 0x37, 0xaa, 0x09, 0xe5, 0xa1, 0x0a, 0x0b, 0x76, 0x0e, 0x98, 0xd4, 0x67, 0x31, 0xf2, 0x51, 0x2c, 0xa1, 0xb0, 0x24, 0x0c, 0x60, 0x2b, 0x5f, 0x0a, 0x20, 0x30, 0x48, 0x5e, 0x34, 0xde, 0x9c, 0x6c, 0xd0, 0x8e, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10849 = { .name = "ecdsa_secp521r1_sha512_10849", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10849_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10849_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10849_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 293 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10850 for ECDSA, tcId is 294 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10850_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10850_msg[] = { 0x31, 0x33, 0x32, 0x30, 0x35, 0x30, 0x31, 0x35, 0x37, 0x32, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10850_sig[] = { 0x00, 0x8e, 0xb5, 0xc9, 0x2d, 0xbf, 0x5e, 0x00, 0x88, 0x8b, 0x85, 0xe6, 0xbf, 0x66, 0x17, 0x01, 0x7e, 0x97, 0xc0, 0x4a, 0xe9, 0x50, 0xdd, 0x73, 0x18, 0x56, 0xb9, 0xdf, 0xb2, 0x0e, 0x0c, 0x0e, 0x5c, 0x54, 0x28, 0x4f, 0x41, 0x12, 0x31, 0xfe, 0xd1, 0xd0, 0x71, 0xb3, 0x21, 0xf7, 0x86, 0x18, 0xd2, 0xa7, 0x5c, 0x13, 0x96, 0x63, 0xfb, 0x9d, 0xb3, 0x43, 0x52, 0x14, 0xcb, 0xac, 0x5a, 0x0d, 0xcb, 0x4f, 0x01, 0xda, 0x0d, 0xd2, 0x9d, 0x47, 0x28, 0xfe, 0x63, 0x31, 0xc8, 0xe2, 0xad, 0xe5, 0x04, 0x5b, 0x12, 0x37, 0x66, 0x4a, 0xed, 0x15, 0x7d, 0xb2, 0xa6, 0xcb, 0xde, 0xaf, 0x5a, 0xbe, 0xa8, 0x13, 0x24, 0xe2, 0x89, 0x20, 0xa1, 0xc4, 0x9c, 0x33, 0x4b, 0x12, 0x26, 0x44, 0x1f, 0x88, 0xe1, 0xa7, 0xf2, 0xc7, 0xe0, 0x1d, 0x63, 0xe9, 0x50, 0xd4, 0x37, 0x8f, 0x08, 0x97, 0x3d, 0xb1, 0x6b, 0x2e, 0x61, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10850 = { .name = "ecdsa_secp521r1_sha512_10850", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10850_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10850_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10850_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 294 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10851 for ECDSA, tcId is 295 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10851_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10851_msg[] = { 0x35, 0x30, 0x38, 0x35, 0x33, 0x33, 0x30, 0x37, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10851_sig[] = { 0x01, 0x30, 0x77, 0x9f, 0x94, 0x3d, 0xf0, 0x98, 0xdd, 0xb5, 0x31, 0x5c, 0xdc, 0xa4, 0xb7, 0x31, 0xc8, 0x34, 0x72, 0xd5, 0x89, 0xf4, 0xba, 0x4d, 0x32, 0xc1, 0x72, 0xfa, 0xf6, 0xb3, 0xa9, 0xe4, 0x15, 0x4c, 0x05, 0x17, 0xfc, 0xc5, 0xc4, 0x32, 0xeb, 0x26, 0x9b, 0x01, 0x52, 0x29, 0x7f, 0x6d, 0xf4, 0x90, 0xec, 0xe5, 0x94, 0x96, 0xbe, 0xa8, 0x04, 0x7e, 0x2f, 0x32, 0xd0, 0xb5, 0xf9, 0x1e, 0x85, 0xef, 0x00, 0xc9, 0xeb, 0x0b, 0x56, 0x27, 0x31, 0x14, 0xce, 0x2e, 0x55, 0x33, 0x41, 0x24, 0x7d, 0xa8, 0x6b, 0x81, 0x3b, 0xfd, 0x65, 0xf1, 0x43, 0xa5, 0x56, 0x2b, 0xb1, 0xc8, 0x74, 0xff, 0x97, 0x05, 0x23, 0x83, 0x6b, 0xcd, 0xf3, 0x90, 0xdc, 0x19, 0x6e, 0x67, 0xdd, 0x75, 0xcd, 0x28, 0x11, 0x2e, 0xf7, 0x4a, 0xfd, 0x51, 0xb1, 0xfb, 0x35, 0x33, 0x3b, 0xe0, 0x50, 0x5a, 0x01, 0x2e, 0xfe, 0xbd, 0x4e, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10851 = { .name = "ecdsa_secp521r1_sha512_10851", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10851_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10851_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10851_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 295 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10852 for ECDSA, tcId is 296 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10852_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10852_msg[] = { 0x37, 0x38, 0x36, 0x36, 0x38, 0x31, 0x33, 0x31, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10852_sig[] = { 0x00, 0x59, 0x3f, 0x01, 0x32, 0xf7, 0xb5, 0xc2, 0x82, 0x35, 0x59, 0x78, 0xa2, 0xcb, 0xa7, 0x3f, 0xd3, 0xbd, 0x5c, 0xe3, 0x27, 0x20, 0x66, 0xd4, 0xad, 0x9b, 0xd8, 0xbd, 0x8b, 0x3e, 0x2b, 0xe0, 0x99, 0x00, 0x71, 0xb3, 0x50, 0x9e, 0xa4, 0x45, 0xdd, 0x15, 0x5c, 0xf9, 0x7e, 0x29, 0x4e, 0x2b, 0x8d, 0x13, 0x55, 0x80, 0x9d, 0x88, 0x0e, 0x10, 0x70, 0x0e, 0xea, 0xb0, 0xeb, 0x8e, 0xbb, 0xaa, 0x4f, 0x09, 0x01, 0x07, 0xeb, 0x3d, 0x5e, 0xd7, 0x5c, 0xbb, 0x9b, 0xcb, 0x92, 0x78, 0xf2, 0x26, 0x6c, 0x14, 0xc5, 0x7c, 0xf7, 0x03, 0xcb, 0xd8, 0xf7, 0xc7, 0xde, 0x45, 0xc5, 0x1f, 0x0f, 0x3b, 0xaf, 0x1d, 0xff, 0x6b, 0xb9, 0x2f, 0x1c, 0xbf, 0x89, 0xba, 0x64, 0x96, 0x77, 0xbc, 0xdc, 0xa7, 0x76, 0xfc, 0x57, 0xf5, 0x87, 0xce, 0x71, 0x4e, 0x2e, 0x43, 0xe6, 0xcc, 0x52, 0x3f, 0x0d, 0x0a, 0x28, 0x6d, 0x38, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10852 = { .name = "ecdsa_secp521r1_sha512_10852", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10852_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10852_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10852_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 296 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10853 for ECDSA, tcId is 297 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10853_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10853_msg[] = { 0x32, 0x30, 0x38, 0x32, 0x35, 0x33, 0x39, 0x34, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10853_sig[] = { 0x01, 0x6d, 0xed, 0x17, 0xfa, 0xd1, 0x0f, 0x94, 0x5e, 0x3d, 0x95, 0x3b, 0x4f, 0xd3, 0xb7, 0x28, 0x98, 0xc3, 0x70, 0xf1, 0x51, 0x64, 0xbb, 0x77, 0x12, 0x67, 0x33, 0x85, 0xc1, 0x0b, 0xf3, 0x92, 0x9b, 0xea, 0x29, 0x3e, 0x08, 0xbf, 0xc3, 0x00, 0x29, 0xa4, 0x65, 0x13, 0x8a, 0xd4, 0x7a, 0xbe, 0x60, 0x4d, 0xf8, 0x07, 0xb3, 0x17, 0x07, 0xfe, 0xf5, 0x5a, 0xdf, 0x3e, 0x10, 0x49, 0x20, 0x03, 0x8e, 0x3b, 0x00, 0xb7, 0x6b, 0x21, 0x2d, 0x74, 0xe4, 0xb6, 0xeb, 0x99, 0x4d, 0x92, 0x6e, 0x9e, 0x79, 0x69, 0x75, 0x23, 0x5f, 0xad, 0x90, 0xe3, 0x39, 0xa2, 0x1a, 0x32, 0x9e, 0x6e, 0xed, 0x3f, 0xe9, 0x6b, 0x6d, 0x3c, 0x0d, 0x54, 0x26, 0xe8, 0x46, 0x4c, 0x4a, 0x9e, 0xd5, 0xcb, 0xe0, 0x8e, 0xeb, 0x5e, 0x49, 0x0f, 0x72, 0xe9, 0xe0, 0x40, 0x6c, 0x0d, 0x76, 0xad, 0x07, 0x6b, 0x47, 0x6d, 0x07, 0xc0, 0x14, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10853 = { .name = "ecdsa_secp521r1_sha512_10853", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10853_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10853_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10853_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 297 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10854 for ECDSA, tcId is 298 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10854_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10854_msg[] = { 0x31, 0x30, 0x30, 0x36, 0x35, 0x39, 0x35, 0x36, 0x36, 0x39, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10854_sig[] = { 0x01, 0xf8, 0x62, 0x4f, 0xfa, 0x5a, 0x6a, 0xa8, 0xd9, 0xd0, 0x4e, 0xd1, 0xc2, 0x27, 0x2e, 0xa5, 0x5f, 0x52, 0x71, 0xca, 0x2c, 0xfc, 0x9a, 0xa6, 0xa3, 0x77, 0x8a, 0x0b, 0x8a, 0x23, 0x0f, 0x61, 0x1e, 0x5d, 0x65, 0xaf, 0x18, 0xd8, 0x25, 0x1a, 0x0c, 0xc4, 0xac, 0xe6, 0x63, 0x87, 0x8c, 0x33, 0x20, 0x52, 0x39, 0xee, 0x7e, 0x83, 0x88, 0xcc, 0x0a, 0x04, 0x0e, 0xa5, 0x15, 0x15, 0x07, 0x2e, 0x3f, 0x61, 0x00, 0x2c, 0x1e, 0x61, 0x19, 0x72, 0x29, 0xf4, 0x0e, 0x84, 0x0e, 0xa3, 0x73, 0x25, 0xf3, 0xbd, 0x87, 0xa6, 0xcd, 0x32, 0xd0, 0x80, 0xbd, 0x61, 0xbb, 0xde, 0x4b, 0x07, 0x2c, 0xf7, 0xa0, 0xc8, 0xa8, 0x9d, 0x40, 0x2c, 0xd9, 0x23, 0x5c, 0x26, 0xf1, 0x9a, 0x08, 0x4d, 0xdc, 0xeb, 0x1c, 0xc0, 0xba, 0xe4, 0x00, 0x62, 0x51, 0xcc, 0xbe, 0x10, 0xde, 0x39, 0x54, 0xe8, 0x5a, 0x8c, 0x5e, 0xfa, 0xf6, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10854 = { .name = "ecdsa_secp521r1_sha512_10854", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10854_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10854_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10854_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 298 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10855 for ECDSA, tcId is 299 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10855_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10855_msg[] = { 0x33, 0x30, 0x32, 0x34, 0x31, 0x38, 0x31, 0x36, 0x30, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10855_sig[] = { 0x01, 0x2b, 0x01, 0xc6, 0x60, 0x1c, 0xec, 0xa9, 0xe5, 0x8e, 0x8a, 0xbb, 0x85, 0xd1, 0xf6, 0x66, 0x3d, 0xf7, 0x0c, 0xee, 0x76, 0x1a, 0x75, 0x6b, 0x77, 0xe4, 0x52, 0x94, 0xf0, 0x9a, 0xe6, 0x09, 0xa6, 0xb7, 0x6c, 0xfc, 0xd6, 0x7f, 0x60, 0xe4, 0x7a, 0x34, 0x94, 0xcb, 0x85, 0x51, 0x1e, 0x33, 0xd9, 0x2a, 0x8d, 0x29, 0x7a, 0x1b, 0x89, 0xe9, 0xa9, 0x03, 0x8c, 0x0c, 0x5b, 0x78, 0xc3, 0xa3, 0xd4, 0xca, 0x01, 0x0e, 0xf5, 0xd2, 0xfa, 0xb5, 0x9b, 0xd4, 0x2e, 0x2e, 0x92, 0xa2, 0xfc, 0xa7, 0xa9, 0x75, 0xb9, 0x59, 0xdf, 0xb3, 0x72, 0x51, 0x93, 0x30, 0xde, 0xfc, 0x8f, 0xa8, 0x95, 0x4b, 0xfc, 0xfb, 0x39, 0x7b, 0xa9, 0x39, 0xed, 0xb6, 0xa9, 0x44, 0xa2, 0xce, 0x9f, 0x6f, 0xaf, 0xbf, 0xcd, 0xa6, 0x09, 0x2c, 0xdd, 0xf6, 0x28, 0x80, 0x1f, 0x6d, 0xd8, 0xcd, 0x40, 0xca, 0xd4, 0xd8, 0x09, 0xd5, 0xc1, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10855 = { .name = "ecdsa_secp521r1_sha512_10855", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10855_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10855_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10855_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 299 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10856 for ECDSA, tcId is 300 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10856_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10856_msg[] = { 0x37, 0x37, 0x36, 0x37, 0x38, 0x35, 0x32, 0x38, 0x37, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10856_sig[] = { 0x01, 0xc5, 0x4a, 0x33, 0x0b, 0x9d, 0xc4, 0x7e, 0xb8, 0x8d, 0xbf, 0x60, 0xc9, 0xee, 0x49, 0xf2, 0xc7, 0x51, 0x8c, 0x0a, 0x78, 0xba, 0xf6, 0x42, 0xc7, 0x41, 0x05, 0xfe, 0x28, 0x3f, 0xa4, 0xc3, 0x57, 0xff, 0x22, 0x93, 0x1e, 0xf4, 0x2f, 0x92, 0xd1, 0x6d, 0x6a, 0x0b, 0x80, 0x6e, 0xf7, 0x18, 0x53, 0x9d, 0x21, 0xca, 0xd7, 0x19, 0x55, 0xa5, 0x30, 0xe2, 0x1c, 0xab, 0x49, 0xa5, 0x6f, 0x56, 0x16, 0x73, 0x01, 0xc2, 0xcc, 0x32, 0xc5, 0xa4, 0xd3, 0x35, 0xc4, 0x8d, 0x0c, 0xbb, 0x04, 0x07, 0xfb, 0x7e, 0x47, 0x29, 0xc5, 0x72, 0x51, 0xaf, 0xbf, 0x95, 0x34, 0xc5, 0x30, 0x9b, 0x94, 0xe6, 0xaa, 0xe1, 0x36, 0x14, 0xa1, 0xf2, 0x51, 0x42, 0x52, 0xf4, 0x8c, 0xc7, 0xf1, 0x43, 0xee, 0x76, 0x17, 0x82, 0xf8, 0xdc, 0xeb, 0xf2, 0xfb, 0x49, 0x0e, 0x08, 0xfd, 0xea, 0xf5, 0x70, 0xa7, 0xed, 0x9d, 0x28, 0x7d, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10856 = { .name = "ecdsa_secp521r1_sha512_10856", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10856_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10856_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10856_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 300 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10857 for ECDSA, tcId is 301 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10857_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10857_msg[] = { 0x35, 0x34, 0x34, 0x31, 0x39, 0x39, 0x39, 0x37, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10857_sig[] = { 0x01, 0x46, 0x7b, 0x45, 0x11, 0xb9, 0xd6, 0x60, 0x1d, 0xa3, 0x55, 0x7b, 0x8e, 0xd4, 0x32, 0xc1, 0x4a, 0x80, 0xe5, 0x99, 0x98, 0x47, 0xbe, 0x13, 0x6c, 0x75, 0x6a, 0x88, 0xdd, 0x51, 0x34, 0x68, 0x9b, 0x5a, 0xb7, 0x0d, 0x0a, 0x2e, 0x8f, 0xd8, 0xd6, 0x14, 0x1e, 0x2b, 0x14, 0x32, 0x82, 0xf9, 0x8a, 0xfb, 0x93, 0xb7, 0xe1, 0x76, 0x09, 0x52, 0x2d, 0xd9, 0xe6, 0x4c, 0x9e, 0x4a, 0x31, 0xc7, 0xc3, 0x4f, 0x00, 0xf5, 0x0e, 0xe6, 0x6a, 0x1d, 0xfb, 0xf8, 0x61, 0x67, 0xba, 0x59, 0x68, 0xd4, 0xee, 0x35, 0x06, 0xa7, 0xcf, 0xfe, 0x0f, 0x52, 0x1c, 0x1b, 0xf8, 0x30, 0xd0, 0x86, 0x72, 0x41, 0xe3, 0x45, 0xd3, 0x19, 0xe7, 0x7e, 0xec, 0xa4, 0x58, 0x58, 0xbb, 0x30, 0x62, 0xac, 0xbf, 0x8d, 0x10, 0x0b, 0xc6, 0xbf, 0xd3, 0x12, 0x7d, 0x57, 0xa7, 0xe9, 0x1a, 0x81, 0x99, 0xe0, 0x50, 0x52, 0xb8, 0xcc, 0xf3, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10857 = { .name = "ecdsa_secp521r1_sha512_10857", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10857_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10857_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10857_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 301 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10858 for ECDSA, tcId is 302 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10858_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10858_msg[] = { 0x35, 0x38, 0x34, 0x33, 0x34, 0x38, 0x30, 0x33, 0x39, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10858_sig[] = { 0x00, 0x7a, 0xf9, 0x0f, 0x62, 0x27, 0x75, 0x0f, 0x91, 0x7d, 0x65, 0xb1, 0xc6, 0x02, 0x00, 0xc7, 0x55, 0x15, 0x8b, 0xb7, 0x83, 0xa4, 0x79, 0xbe, 0x68, 0x77, 0xc5, 0x9e, 0xd8, 0x9f, 0xf5, 0x95, 0xfe, 0xa3, 0xf3, 0xa4, 0x13, 0x75, 0x91, 0xaa, 0xb2, 0x38, 0x26, 0xed, 0x38, 0x5b, 0xd6, 0x15, 0x62, 0x77, 0x36, 0x4b, 0x5d, 0x60, 0x3c, 0xa2, 0x72, 0x25, 0x90, 0x83, 0xe6, 0xe9, 0xab, 0x5d, 0xb3, 0xf9, 0x00, 0x70, 0x84, 0x2e, 0xb6, 0x2c, 0x89, 0x49, 0x35, 0xb8, 0x2d, 0xa1, 0x5c, 0xa6, 0x11, 0xd9, 0xd7, 0x54, 0xef, 0x57, 0x85, 0x9e, 0x0c, 0x91, 0x2c, 0x03, 0x58, 0xd0, 0x82, 0x0f, 0x49, 0x40, 0xcd, 0xf5, 0x36, 0x0f, 0x11, 0x6a, 0x75, 0x47, 0xa8, 0x1b, 0xf6, 0x56, 0x17, 0xf1, 0x82, 0xe5, 0x97, 0xeb, 0x10, 0x07, 0xe2, 0x6c, 0x62, 0x83, 0x84, 0x87, 0xca, 0x02, 0x1c, 0x38, 0x29, 0xa5, 0x90, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10858 = { .name = "ecdsa_secp521r1_sha512_10858", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10858_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10858_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10858_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 302 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10859 for ECDSA, tcId is 303 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10859_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10859_msg[] = { 0x37, 0x31, 0x38, 0x38, 0x39, 0x32, 0x36, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10859_sig[] = { 0x00, 0xb0, 0x16, 0x9e, 0x68, 0x06, 0x2c, 0xaa, 0x79, 0xf9, 0x9e, 0xc0, 0xc7, 0x2d, 0x83, 0xc4, 0xd0, 0xfc, 0x2a, 0x1c, 0x81, 0x86, 0x65, 0xcf, 0xed, 0x1a, 0xba, 0x3e, 0x68, 0x43, 0x92, 0xb9, 0xa9, 0x5a, 0xfb, 0x82, 0xdd, 0xd1, 0xde, 0x49, 0xe3, 0xfc, 0x3c, 0xb3, 0x88, 0x9b, 0x4f, 0x5a, 0x86, 0xa7, 0xbd, 0xf9, 0x44, 0x36, 0x1d, 0xb2, 0xcf, 0xa5, 0x70, 0x21, 0xa7, 0x64, 0x3f, 0xcf, 0xce, 0x95, 0x01, 0x15, 0xec, 0x78, 0x4e, 0x04, 0x24, 0x36, 0x89, 0x2c, 0x6c, 0xc1, 0xbe, 0xde, 0x0f, 0x4b, 0x7b, 0x6e, 0xb2, 0x4b, 0x30, 0x0b, 0x1f, 0x0c, 0x67, 0x49, 0x99, 0xa6, 0xda, 0x81, 0x6d, 0xbe, 0xfb, 0x2d, 0x53, 0xf9, 0x0b, 0x0d, 0xed, 0xb9, 0x62, 0xa0, 0x85, 0xe5, 0x20, 0x9f, 0xce, 0xa5, 0x03, 0x11, 0x13, 0x08, 0x00, 0xd2, 0xa9, 0x24, 0x9d, 0x27, 0x9c, 0x7b, 0xde, 0x2f, 0x88, 0x62, 0x25, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10859 = { .name = "ecdsa_secp521r1_sha512_10859", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10859_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10859_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10859_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 303 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10860 for ECDSA, tcId is 304 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10860_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10860_msg[] = { 0x31, 0x37, 0x34, 0x33, 0x32, 0x32, 0x33, 0x34, 0x34, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10860_sig[] = { 0x01, 0xde, 0x4e, 0xd1, 0xee, 0x81, 0xd5, 0xcf, 0xfc, 0xf8, 0x25, 0x6a, 0x06, 0x85, 0x8c, 0xba, 0x5e, 0xb9, 0x25, 0xee, 0x68, 0xe3, 0xed, 0x84, 0x8a, 0xc9, 0x80, 0x71, 0xb6, 0xe3, 0x0c, 0x3b, 0x44, 0xb1, 0x02, 0xa2, 0xde, 0x81, 0x17, 0xcc, 0xe5, 0xb4, 0xf9, 0xe4, 0x26, 0x03, 0x22, 0x5e, 0x0d, 0xbc, 0xb3, 0xfc, 0xc1, 0x71, 0xd1, 0x49, 0x2e, 0x7e, 0xd8, 0xbc, 0xb6, 0xec, 0x28, 0x6c, 0x7d, 0xe0, 0x00, 0xfd, 0x1e, 0x93, 0xbb, 0xc8, 0xb8, 0xad, 0xeb, 0x78, 0x64, 0xa2, 0xbf, 0x8e, 0x29, 0xd6, 0xf9, 0xc0, 0x96, 0x6f, 0xe3, 0xd5, 0x43, 0x52, 0x5b, 0xf2, 0x68, 0xb5, 0x7c, 0xd6, 0xfa, 0x88, 0x52, 0xbf, 0xe0, 0xd2, 0x75, 0x07, 0x26, 0xd5, 0x44, 0x55, 0x60, 0xf2, 0xfc, 0x21, 0x1a, 0xa7, 0x85, 0x9d, 0xd3, 0xee, 0x10, 0x07, 0x8e, 0xf9, 0x07, 0xe4, 0x9c, 0xd6, 0x43, 0x26, 0xb3, 0x97, 0xe0, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10860 = { .name = "ecdsa_secp521r1_sha512_10860", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10860_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10860_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10860_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 304 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10861 for ECDSA, tcId is 305 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10861_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10861_msg[] = { 0x32, 0x34, 0x30, 0x36, 0x30, 0x30, 0x35, 0x39, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10861_sig[] = { 0x01, 0xfc, 0xaf, 0xa6, 0x2e, 0xe6, 0x27, 0x54, 0x43, 0xd7, 0x27, 0x7f, 0xc4, 0x6e, 0x4c, 0x30, 0xb4, 0xdb, 0x84, 0x5b, 0xa4, 0x5b, 0x5d, 0x6b, 0x54, 0xfa, 0xf4, 0x7b, 0xbf, 0x92, 0x1f, 0x82, 0x5f, 0x6f, 0xd0, 0xf2, 0x3a, 0x38, 0xc0, 0xc7, 0xf4, 0xde, 0xbc, 0x33, 0xad, 0xd2, 0x82, 0xaf, 0xad, 0x11, 0x54, 0xc8, 0x70, 0x7b, 0x6e, 0x18, 0xcd, 0x65, 0xad, 0xcb, 0x07, 0xd3, 0x29, 0x15, 0xb4, 0x62, 0x00, 0x87, 0xa2, 0x7b, 0x2b, 0xf3, 0xc3, 0x5d, 0x18, 0xfd, 0x39, 0x7e, 0x0c, 0xd7, 0x15, 0x95, 0x16, 0xcf, 0x56, 0x3b, 0x98, 0x44, 0x1e, 0x03, 0x0b, 0xfd, 0xe9, 0x3c, 0xea, 0xcd, 0x2c, 0x4e, 0x41, 0x22, 0x8b, 0x7b, 0x33, 0x44, 0x3e, 0xf0, 0xa3, 0x51, 0xce, 0x55, 0x3d, 0x6d, 0x1d, 0x71, 0xc1, 0x20, 0x92, 0xdf, 0x79, 0x62, 0x76, 0x17, 0x5c, 0xd7, 0x79, 0xb8, 0x09, 0x0c, 0x49, 0x58, 0xb3, 0x91, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10861 = { .name = "ecdsa_secp521r1_sha512_10861", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10861_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10861_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10861_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 305 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10862 for ECDSA, tcId is 306 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10862_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10862_msg[] = { 0x31, 0x36, 0x31, 0x34, 0x30, 0x33, 0x36, 0x39, 0x38, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10862_sig[] = { 0x00, 0x78, 0x98, 0x96, 0x28, 0xac, 0xfb, 0xa8, 0x6d, 0x4b, 0xf2, 0x8b, 0xee, 0xb9, 0xf4, 0x40, 0x01, 0xfb, 0x8f, 0x2d, 0x8e, 0x24, 0x53, 0x20, 0xa1, 0x9e, 0xfd, 0xed, 0xe3, 0x1e, 0xae, 0x3e, 0xc8, 0xb4, 0x96, 0xfa, 0xec, 0x30, 0xc8, 0x5e, 0x8f, 0x63, 0xf8, 0xae, 0x06, 0x04, 0x6f, 0xe1, 0xd1, 0x57, 0x53, 0x21, 0xfa, 0x04, 0x95, 0x3e, 0x46, 0x0f, 0x6b, 0x13, 0x86, 0xdd, 0x5d, 0xf9, 0x4e, 0xdb, 0x01, 0x2a, 0xba, 0x33, 0x49, 0x73, 0x2e, 0x21, 0xa5, 0xbb, 0x27, 0xd7, 0xd6, 0xfa, 0xcd, 0x8c, 0x76, 0x88, 0xb9, 0xd0, 0xd0, 0x27, 0x1d, 0x6a, 0x07, 0x7f, 0x9d, 0x6d, 0x82, 0xdb, 0x45, 0xb5, 0x45, 0x6b, 0x76, 0x7f, 0x4b, 0x9f, 0x1a, 0x80, 0xf4, 0x87, 0x03, 0x1f, 0x9c, 0x0b, 0x3e, 0xa8, 0x33, 0xc6, 0x3f, 0xdf, 0x9c, 0x6a, 0x25, 0xe6, 0xb4, 0x24, 0xc1, 0x9c, 0x2e, 0x55, 0x30, 0x5d, 0x7a, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10862 = { .name = "ecdsa_secp521r1_sha512_10862", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10862_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10862_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10862_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 306 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10863 for ECDSA, tcId is 307 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10863_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10863_msg[] = { 0x32, 0x30, 0x39, 0x35, 0x34, 0x32, 0x35, 0x36, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10863_sig[] = { 0x00, 0x14, 0xa5, 0xa4, 0x6a, 0x3b, 0xa4, 0x15, 0xf6, 0xe8, 0xc5, 0x66, 0xca, 0x1b, 0x15, 0xfa, 0x20, 0x55, 0x64, 0x96, 0x87, 0xb1, 0xa9, 0xfc, 0x84, 0xcc, 0x0f, 0xa8, 0x63, 0x12, 0x96, 0x89, 0x8f, 0xe0, 0x14, 0xe0, 0xd4, 0x59, 0x27, 0xe4, 0x27, 0x13, 0x96, 0xba, 0xa4, 0xcf, 0xb3, 0x67, 0x56, 0x69, 0xb1, 0x6e, 0x76, 0xc3, 0x39, 0xdb, 0x3c, 0x0e, 0xda, 0xf6, 0x13, 0x37, 0xe8, 0xbe, 0xbe, 0x91, 0x01, 0xfb, 0x31, 0x31, 0x29, 0x75, 0x7f, 0x76, 0x75, 0x4b, 0x60, 0xfd, 0xb1, 0xe4, 0x07, 0x7f, 0x9f, 0xe3, 0xdd, 0x62, 0xc8, 0xbc, 0xe5, 0x21, 0x90, 0xcf, 0xeb, 0x9c, 0x03, 0x02, 0x1c, 0xc9, 0x2f, 0x6d, 0x7d, 0x13, 0x02, 0xb8, 0xa8, 0x47, 0x33, 0x48, 0x6b, 0xf7, 0x69, 0xae, 0x94, 0xd3, 0xdb, 0x4b, 0x60, 0xb6, 0xdf, 0x28, 0xfe, 0xd4, 0x81, 0xd3, 0xd7, 0xc5, 0x10, 0x29, 0x9f, 0x0c, 0x31, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10863 = { .name = "ecdsa_secp521r1_sha512_10863", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10863_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10863_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10863_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 307 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10864 for ECDSA, tcId is 308 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10864_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10864_msg[] = { 0x31, 0x30, 0x30, 0x38, 0x30, 0x39, 0x38, 0x39, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10864_sig[] = { 0x00, 0x8a, 0x32, 0x50, 0xeb, 0x5f, 0x28, 0xb5, 0x98, 0xc4, 0xa4, 0x28, 0x90, 0xd2, 0x5f, 0x6a, 0xf8, 0x40, 0x82, 0xd4, 0x37, 0x6f, 0x84, 0xf1, 0x71, 0x7e, 0x51, 0x12, 0xa7, 0x66, 0x23, 0xe6, 0xfe, 0x0d, 0x20, 0x7c, 0x39, 0x46, 0x3d, 0x20, 0xbb, 0x86, 0x34, 0x1b, 0xc2, 0x6c, 0x9f, 0x68, 0xbc, 0xdf, 0x79, 0x46, 0x71, 0xa0, 0x1f, 0x90, 0x46, 0x50, 0x25, 0xf8, 0x7a, 0x8c, 0x52, 0x13, 0x7e, 0xdf, 0x00, 0x1d, 0xdd, 0x31, 0x7f, 0x66, 0x22, 0xd9, 0xb0, 0x32, 0x22, 0x3f, 0x76, 0x76, 0x5b, 0xa6, 0xc9, 0x11, 0x6a, 0xe4, 0xb4, 0x3a, 0x1b, 0xd3, 0x57, 0xbc, 0x9d, 0xb6, 0xfa, 0x62, 0xf0, 0x86, 0x7d, 0xc5, 0xd8, 0xf7, 0x81, 0xf0, 0x8c, 0x1c, 0xbd, 0x49, 0xb4, 0x42, 0x4f, 0xe8, 0xc2, 0x2c, 0xfd, 0x1d, 0xcd, 0x07, 0xcf, 0xde, 0x7b, 0x35, 0x98, 0x34, 0x24, 0x42, 0x58, 0x98, 0x25, 0xaa, 0x67, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10864 = { .name = "ecdsa_secp521r1_sha512_10864", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10864_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10864_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10864_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 308 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10865 for ECDSA, tcId is 309 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10865_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10865_msg[] = { 0x31, 0x35, 0x37, 0x34, 0x31, 0x34, 0x37, 0x39, 0x32, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10865_sig[] = { 0x00, 0x60, 0xee, 0x16, 0x17, 0x41, 0xd5, 0xcb, 0x2d, 0xd0, 0xff, 0x2c, 0xf9, 0x92, 0x4a, 0xca, 0x03, 0x76, 0xb1, 0x54, 0x46, 0x81, 0x62, 0x7a, 0x31, 0x68, 0x8e, 0x4d, 0x8b, 0x3b, 0x63, 0xa0, 0x1a, 0xdb, 0xb4, 0x17, 0xee, 0x11, 0x3b, 0x9b, 0xa8, 0xd4, 0xd1, 0x3b, 0x7b, 0x4e, 0x1b, 0x14, 0xb5, 0x1a, 0x24, 0xdb, 0xc3, 0xf0, 0x99, 0xb0, 0x68, 0xd9, 0x16, 0xaa, 0x94, 0x86, 0x2e, 0xe0, 0x81, 0xb4, 0x01, 0x5c, 0xaf, 0xf8, 0xd3, 0x01, 0x41, 0xe1, 0xc1, 0x63, 0xe3, 0xec, 0x62, 0xb7, 0xe1, 0x48, 0x74, 0xda, 0x62, 0x4a, 0x6d, 0x8e, 0x02, 0x52, 0xd8, 0xe8, 0x29, 0x86, 0x0e, 0x5a, 0x49, 0xd3, 0x73, 0x23, 0x21, 0xb6, 0x25, 0x26, 0x2e, 0x5c, 0x9b, 0x1e, 0xf3, 0x48, 0xc3, 0xe7, 0xcb, 0xb1, 0xde, 0x82, 0x27, 0x51, 0x3f, 0x32, 0x06, 0x37, 0x86, 0x67, 0x85, 0xe9, 0x7e, 0x19, 0x31, 0xd3, 0x5c, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10865 = { .name = "ecdsa_secp521r1_sha512_10865", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10865_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10865_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10865_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 309 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10866 for ECDSA, tcId is 310 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10866_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10866_msg[] = { 0x32, 0x38, 0x36, 0x36, 0x37, 0x37, 0x31, 0x35, 0x32, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10866_sig[] = { 0x00, 0xa1, 0xef, 0x82, 0x29, 0xdb, 0x9f, 0x45, 0xda, 0x38, 0xae, 0x3b, 0x6d, 0x60, 0x11, 0x10, 0x61, 0x1e, 0x20, 0x98, 0x78, 0xbb, 0xd0, 0x3a, 0xc2, 0xa6, 0xde, 0x65, 0xe8, 0x40, 0x29, 0x57, 0xc6, 0x69, 0xa1, 0x15, 0xe3, 0xf0, 0x2d, 0x08, 0x5f, 0xe2, 0xd0, 0x31, 0xc6, 0x13, 0x24, 0xb7, 0x70, 0x52, 0xab, 0x34, 0x6b, 0x4b, 0x1a, 0x43, 0x7b, 0x58, 0x06, 0x2f, 0xb3, 0x6f, 0x9d, 0x56, 0xcf, 0x45, 0x00, 0xcc, 0x5c, 0x0a, 0x3b, 0x68, 0x97, 0x02, 0x79, 0xae, 0x16, 0x88, 0x0f, 0x6c, 0xa5, 0x79, 0xd0, 0x17, 0x1a, 0x82, 0x7e, 0x99, 0xa4, 0x6a, 0xa8, 0x2b, 0x92, 0x42, 0xdc, 0xc0, 0x9c, 0xb0, 0xb2, 0x2a, 0x44, 0xeb, 0xcf, 0xca, 0x84, 0x29, 0x3e, 0x6d, 0x21, 0xae, 0xea, 0x49, 0x2f, 0x00, 0xba, 0x31, 0x57, 0xc5, 0xb6, 0xe2, 0xe4, 0xca, 0xea, 0x6a, 0x1c, 0x09, 0xc8, 0x24, 0x72, 0x05, 0x52, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10866 = { .name = "ecdsa_secp521r1_sha512_10866", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10866_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10866_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10866_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 310 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10867 for ECDSA, tcId is 311 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10867_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10867_msg[] = { 0x31, 0x36, 0x39, 0x34, 0x32, 0x38, 0x30, 0x37, 0x38, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10867_sig[] = { 0x00, 0x5a, 0xa0, 0xc8, 0xa3, 0x78, 0xc4, 0xe0, 0x2b, 0xcc, 0x2f, 0x56, 0xc2, 0xc3, 0x65, 0xcc, 0xee, 0x42, 0x4e, 0x29, 0x73, 0xc2, 0x8f, 0x0d, 0xaa, 0xe8, 0xf4, 0xc3, 0xf0, 0xd9, 0x0b, 0x42, 0x1f, 0xef, 0xd4, 0x56, 0xe7, 0x49, 0x08, 0x7e, 0x0c, 0x66, 0x7c, 0x2a, 0x71, 0x47, 0xbc, 0x67, 0xb9, 0x0c, 0x69, 0x62, 0x44, 0xf2, 0x16, 0xb4, 0xd9, 0xd7, 0x41, 0x8e, 0xad, 0xc7, 0xd0, 0x6e, 0xf1, 0xd2, 0x01, 0xe2, 0x89, 0x14, 0xbd, 0x34, 0x1f, 0x52, 0x6b, 0x04, 0x11, 0x28, 0xf2, 0xd2, 0x51, 0x13, 0x1d, 0x8b, 0x2c, 0x65, 0x84, 0x7e, 0x54, 0x1d, 0x65, 0xad, 0xca, 0x34, 0x42, 0x96, 0x2c, 0xdd, 0xb2, 0xa7, 0x1c, 0x64, 0xfa, 0xe3, 0x9f, 0xdd, 0x56, 0xe4, 0x16, 0x86, 0xad, 0x63, 0x2f, 0x99, 0xc6, 0x03, 0x8d, 0x8d, 0xe0, 0xb3, 0xaa, 0xc4, 0x04, 0x5e, 0x0a, 0x96, 0x1e, 0xfd, 0xbf, 0x4c, 0x6a, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10867 = { .name = "ecdsa_secp521r1_sha512_10867", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10867_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10867_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10867_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 311 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10868 for ECDSA, tcId is 312 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10868_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10868_msg[] = { 0x39, 0x39, 0x32, 0x31, 0x36, 0x39, 0x32, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10868_sig[] = { 0x00, 0x5a, 0x05, 0xf5, 0x36, 0x6c, 0x8b, 0x8b, 0xe2, 0x86, 0x54, 0xbc, 0x39, 0xa6, 0x67, 0x1d, 0x1b, 0x15, 0x93, 0x49, 0x5e, 0x44, 0x5c, 0x07, 0xc9, 0x95, 0xc3, 0xbe, 0x3e, 0x16, 0x8f, 0xfd, 0xec, 0x92, 0xe4, 0x42, 0x88, 0x80, 0x2f, 0xd4, 0x55, 0x00, 0x7f, 0x87, 0x46, 0x57, 0x0d, 0x93, 0xb5, 0x68, 0x3e, 0x4d, 0x40, 0xe9, 0xd9, 0xe5, 0x9d, 0xe5, 0x39, 0xf0, 0xe6, 0x2b, 0xc4, 0x0d, 0x92, 0xbc, 0x01, 0x87, 0xa4, 0x7d, 0x8f, 0x70, 0xad, 0xcc, 0x5e, 0x10, 0x26, 0x7b, 0x8f, 0xec, 0x89, 0xd7, 0x01, 0x1d, 0x99, 0x85, 0x42, 0x76, 0x45, 0xae, 0xd1, 0x9a, 0x8e, 0xfa, 0x2d, 0x11, 0x89, 0xb4, 0x69, 0xcb, 0x7a, 0xab, 0x19, 0x98, 0xe0, 0xc1, 0xd2, 0xfc, 0xac, 0x5a, 0x50, 0x54, 0xd7, 0x9d, 0x2e, 0xc1, 0xc9, 0xa0, 0x0b, 0x18, 0x3d, 0xc9, 0xaf, 0x20, 0xf5, 0x55, 0xa1, 0x14, 0x0b, 0xe2, 0xdc, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10868 = { .name = "ecdsa_secp521r1_sha512_10868", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10868_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10868_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10868_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 312 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10869 for ECDSA, tcId is 313 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10869_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10869_msg[] = { 0x31, 0x31, 0x36, 0x30, 0x39, 0x34, 0x33, 0x39, 0x37, 0x39, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10869_sig[] = { 0x01, 0xe2, 0x13, 0xbc, 0xb8, 0xb9, 0x60, 0xb1, 0x29, 0x6a, 0xe1, 0x76, 0x99, 0x3b, 0x24, 0x49, 0xba, 0xe5, 0x56, 0xb6, 0xd9, 0x0d, 0xf2, 0xf0, 0x7f, 0xb0, 0x8a, 0xd8, 0xfd, 0x60, 0xe3, 0xb7, 0xfe, 0x6c, 0x73, 0xf9, 0xc8, 0xa7, 0x36, 0x44, 0x17, 0x61, 0x1d, 0x60, 0x11, 0x9c, 0x55, 0x02, 0x61, 0xc5, 0x4b, 0xbc, 0xa8, 0xd6, 0x1e, 0x26, 0x41, 0x30, 0xab, 0x90, 0x18, 0x7e, 0x27, 0xd2, 0x2d, 0xbd, 0x00, 0x34, 0xf5, 0x19, 0x38, 0x2c, 0xfa, 0xcf, 0xd0, 0x7b, 0x0a, 0x6f, 0x3a, 0xca, 0x11, 0x7c, 0x13, 0xd2, 0xbe, 0x72, 0x5d, 0x2f, 0x9e, 0xe4, 0xe5, 0xf8, 0x87, 0x39, 0xc9, 0x91, 0x21, 0xe6, 0x3e, 0xd7, 0x35, 0x80, 0x46, 0xbf, 0xb1, 0x57, 0x5f, 0xc7, 0x3e, 0x1e, 0xde, 0x83, 0x39, 0xe4, 0x6c, 0x51, 0x39, 0x84, 0x3e, 0x52, 0xe9, 0x18, 0x4b, 0xb8, 0xc5, 0x79, 0x06, 0x1a, 0x15, 0x4a, 0x0b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10869 = { .name = "ecdsa_secp521r1_sha512_10869", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10869_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10869_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10869_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 313 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10870 for ECDSA, tcId is 314 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10870_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10870_msg[] = { 0x37, 0x31, 0x38, 0x36, 0x31, 0x36, 0x32, 0x31, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10870_sig[] = { 0x00, 0xed, 0x11, 0xac, 0x7e, 0xfb, 0x1f, 0x29, 0xee, 0x64, 0x10, 0x8a, 0x5e, 0x26, 0x06, 0xfa, 0x9a, 0xf3, 0xbb, 0xc1, 0x2d, 0x1a, 0x95, 0x2e, 0x47, 0x24, 0x0d, 0x52, 0x36, 0xdf, 0x64, 0xf5, 0xb2, 0xb7, 0x7a, 0x0f, 0x7a, 0x0a, 0x73, 0xd3, 0x0d, 0x07, 0x08, 0xb5, 0xb2, 0x3a, 0xc6, 0xd5, 0x84, 0xbf, 0x69, 0x97, 0xd8, 0x85, 0x16, 0x23, 0x79, 0x36, 0x55, 0xde, 0xe8, 0x77, 0x45, 0x49, 0xb8, 0x29, 0x01, 0xe1, 0x60, 0x2a, 0x2c, 0xae, 0x7d, 0x32, 0x12, 0xdf, 0x47, 0xee, 0xbd, 0x12, 0xe2, 0xfe, 0x40, 0x48, 0x51, 0x20, 0x11, 0x01, 0xbb, 0xde, 0x70, 0x2b, 0xe9, 0xd7, 0x4d, 0x04, 0x0e, 0xd9, 0x98, 0xe7, 0x9a, 0x09, 0xeb, 0xf6, 0xd0, 0x55, 0xf9, 0x44, 0x73, 0xb1, 0xf8, 0xd8, 0x7c, 0x99, 0xaa, 0x16, 0x5b, 0xda, 0xf0, 0xa5, 0xf2, 0x70, 0xd4, 0x6c, 0xaa, 0xbb, 0x8e, 0x88, 0xbf, 0xa5, 0x41, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10870 = { .name = "ecdsa_secp521r1_sha512_10870", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10870_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10870_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10870_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 314 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10871 for ECDSA, tcId is 315 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10871_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10871_msg[] = { 0x33, 0x32, 0x39, 0x34, 0x33, 0x34, 0x37, 0x31, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10871_sig[] = { 0x00, 0x07, 0x12, 0x3c, 0x45, 0xe6, 0xe9, 0x33, 0x8b, 0xc9, 0xfe, 0x22, 0x5c, 0xdd, 0x96, 0xc5, 0xab, 0x36, 0xca, 0xd5, 0xc0, 0x61, 0x63, 0xf4, 0x4f, 0x6b, 0xd9, 0x03, 0xc7, 0x59, 0x4e, 0x80, 0x68, 0xba, 0x9b, 0xc8, 0x9f, 0x65, 0x2e, 0xc3, 0x1b, 0x6e, 0x12, 0x98, 0x76, 0x6b, 0x24, 0x6c, 0x1f, 0x10, 0x87, 0x7f, 0x1e, 0x3e, 0xc9, 0x82, 0x9b, 0x09, 0x37, 0xb8, 0xd3, 0x6e, 0x3c, 0x1a, 0xb2, 0xb5, 0x01, 0x68, 0x8b, 0xba, 0xeb, 0x18, 0x8b, 0x50, 0x47, 0xbe, 0x6e, 0x80, 0x23, 0xb1, 0x4f, 0xb1, 0x21, 0xeb, 0x14, 0x51, 0xdc, 0xb1, 0x9f, 0x81, 0x4f, 0x5f, 0x4d, 0xca, 0x55, 0xff, 0x95, 0x12, 0x80, 0x11, 0xe3, 0xba, 0xe5, 0x05, 0xa4, 0xd2, 0x21, 0x66, 0xd0, 0x0c, 0xb7, 0xcf, 0x14, 0x13, 0x05, 0x90, 0x33, 0x5e, 0xe9, 0x23, 0xdc, 0x5d, 0xb3, 0xe7, 0x36, 0x83, 0x2a, 0x12, 0x8a, 0x06, 0x7a, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10871 = { .name = "ecdsa_secp521r1_sha512_10871", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10871_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10871_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10871_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 315 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10872 for ECDSA, tcId is 316 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10872_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10872_msg[] = { 0x31, 0x38, 0x35, 0x31, 0x34, 0x34, 0x35, 0x35, 0x31, 0x32, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10872_sig[] = { 0x01, 0x26, 0x4e, 0x3c, 0xc4, 0xfb, 0x80, 0x2a, 0xa2, 0x21, 0xd0, 0x78, 0x7c, 0xd0, 0xcd, 0xf4, 0x4e, 0xb6, 0x56, 0x89, 0x82, 0xa0, 0x0a, 0x66, 0x39, 0xf1, 0x52, 0x38, 0xaf, 0x36, 0xe8, 0x94, 0xb1, 0x4f, 0x45, 0xf0, 0x6f, 0x8c, 0x21, 0x80, 0xfd, 0xea, 0xaa, 0xc7, 0x7f, 0x67, 0x4e, 0x05, 0x6d, 0x19, 0x28, 0xcb, 0xbd, 0xfc, 0x4b, 0x2c, 0xec, 0xa0, 0xb3, 0x53, 0x45, 0xca, 0x07, 0xbf, 0xff, 0x7f, 0x00, 0x5c, 0x2d, 0xed, 0xee, 0x6b, 0x3a, 0xa0, 0x96, 0xfc, 0x47, 0xba, 0x09, 0x91, 0xa0, 0x77, 0xef, 0x4d, 0x5d, 0xf2, 0x0d, 0x8e, 0xff, 0x1b, 0xf8, 0x35, 0x44, 0x12, 0xb1, 0x71, 0xf0, 0x8a, 0x98, 0xce, 0xa1, 0x70, 0x4c, 0x81, 0x89, 0xa7, 0x95, 0x1b, 0x0e, 0x7a, 0x82, 0x70, 0xcc, 0xb2, 0x85, 0xb8, 0xdb, 0x8e, 0x35, 0x28, 0x5e, 0xd9, 0x26, 0xb1, 0x9c, 0x1e, 0xef, 0x07, 0xfd, 0xc0, 0x5e, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10872 = { .name = "ecdsa_secp521r1_sha512_10872", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10872_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10872_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10872_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 316 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10873 for ECDSA, tcId is 317 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10873_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10873_msg[] = { 0x34, 0x37, 0x36, 0x30, 0x34, 0x33, 0x39, 0x33, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10873_sig[] = { 0x00, 0xca, 0x38, 0x14, 0x74, 0x78, 0x88, 0x75, 0x17, 0x94, 0xb0, 0x48, 0x89, 0x55, 0xe2, 0xae, 0xe0, 0x7e, 0x5f, 0xab, 0x4b, 0x98, 0x72, 0x07, 0x4a, 0xa7, 0x43, 0x26, 0x98, 0xe7, 0xc8, 0x3b, 0x80, 0x79, 0x77, 0x37, 0x34, 0xdf, 0x1b, 0xc7, 0x52, 0x54, 0x8a, 0x21, 0x8f, 0xa5, 0x9a, 0x36, 0x2e, 0x06, 0x57, 0xb7, 0x7a, 0xe7, 0x79, 0x8e, 0xf4, 0xa7, 0xa3, 0x87, 0x32, 0x56, 0xea, 0x59, 0xec, 0x67, 0x01, 0x5d, 0xf8, 0xf1, 0xf1, 0x66, 0x11, 0xc9, 0x60, 0xd5, 0x66, 0x47, 0x42, 0x4b, 0x97, 0x93, 0x6c, 0x8a, 0x06, 0xf6, 0x2d, 0xc3, 0xa9, 0x5d, 0x66, 0xbf, 0x4a, 0xa3, 0x78, 0xd7, 0xa9, 0xe1, 0x7d, 0x2a, 0xfb, 0x53, 0x56, 0x57, 0x80, 0x02, 0x59, 0x27, 0xe6, 0x92, 0x8f, 0x53, 0x13, 0x42, 0x8f, 0x1d, 0x67, 0x08, 0x33, 0x97, 0x87, 0xc8, 0xf4, 0x60, 0xba, 0x18, 0x45, 0x7d, 0x4c, 0x0f, 0x52, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10873 = { .name = "ecdsa_secp521r1_sha512_10873", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10873_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10873_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10873_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 317 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10874 for ECDSA, tcId is 318 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10874_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10874_msg[] = { 0x32, 0x35, 0x36, 0x37, 0x33, 0x37, 0x38, 0x37, 0x34, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10874_sig[] = { 0x01, 0x7b, 0xa8, 0x71, 0xae, 0xe3, 0x4a, 0x89, 0x3c, 0x4d, 0xed, 0x7a, 0x2a, 0x54, 0x6d, 0xa0, 0xd6, 0x86, 0x7d, 0x42, 0x84, 0x97, 0xb8, 0x0f, 0xca, 0x7e, 0xea, 0x6e, 0x51, 0xb7, 0x3d, 0x64, 0x11, 0xaf, 0xf7, 0x60, 0x97, 0x43, 0xe6, 0x24, 0x2b, 0x6d, 0x4d, 0x37, 0x36, 0xdd, 0xcc, 0x9e, 0xe1, 0xaa, 0x12, 0xc8, 0xb6, 0x2d, 0xe5, 0x38, 0x2e, 0x5c, 0x33, 0xd1, 0xfc, 0x48, 0x53, 0xe3, 0xe4, 0x7d, 0x00, 0x5f, 0xeb, 0x9d, 0x9f, 0x8f, 0xdd, 0x44, 0x62, 0x2e, 0x4f, 0x9e, 0xff, 0xe7, 0x3f, 0xd9, 0xb4, 0x67, 0xd3, 0x55, 0xfd, 0x6b, 0x8d, 0xe2, 0x05, 0x52, 0x7f, 0x72, 0x2e, 0xe2, 0xf5, 0xa1, 0x5e, 0xeb, 0xd5, 0x9c, 0xcd, 0xd7, 0xb5, 0x7d, 0xa2, 0x6c, 0xf9, 0x53, 0xf7, 0x88, 0x86, 0xdb, 0x5a, 0x6e, 0x5b, 0xdd, 0x0d, 0x56, 0xc9, 0xbd, 0x47, 0xba, 0x22, 0x71, 0xf7, 0x76, 0x87, 0xa6, 0x4b, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10874 = { .name = "ecdsa_secp521r1_sha512_10874", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10874_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10874_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10874_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 318 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10875 for ECDSA, tcId is 319 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10875_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10875_msg[] = { 0x35, 0x37, 0x33, 0x39, 0x39, 0x33, 0x34, 0x39, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10875_sig[] = { 0x01, 0x84, 0x07, 0x93, 0x68, 0x47, 0x65, 0x41, 0x0b, 0xaf, 0x26, 0xb6, 0x6c, 0xbc, 0xf7, 0xc3, 0x66, 0x58, 0xd6, 0xc1, 0x8a, 0x2f, 0x75, 0x0c, 0x12, 0x25, 0x52, 0x0e, 0x9f, 0x3a, 0x7c, 0x1b, 0x89, 0x05, 0x83, 0xf3, 0x21, 0xd4, 0xe4, 0x87, 0x52, 0xc3, 0xb3, 0x11, 0x6d, 0xfe, 0xf7, 0x33, 0xee, 0x38, 0x6c, 0x52, 0xa5, 0x34, 0x02, 0xac, 0xea, 0x77, 0xcf, 0xad, 0x1d, 0xb9, 0x38, 0x01, 0x10, 0xe6, 0x01, 0xb5, 0x19, 0x85, 0xa3, 0x06, 0xfc, 0xdb, 0xe3, 0x69, 0x21, 0x81, 0x10, 0x6d, 0x7d, 0x63, 0x08, 0x87, 0x39, 0x12, 0xd0, 0x03, 0x94, 0x69, 0x92, 0x09, 0x8b, 0xc9, 0x8b, 0x42, 0x61, 0xfd, 0x78, 0x86, 0x9e, 0xd8, 0x21, 0x88, 0x49, 0x45, 0x97, 0x80, 0xb6, 0x07, 0x9f, 0x68, 0x99, 0xa4, 0x7f, 0xcb, 0x9e, 0xa4, 0x87, 0x4d, 0x1c, 0x08, 0xfa, 0xb8, 0x2c, 0x6f, 0x1e, 0x9c, 0x9a, 0xaa, 0xe2, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10875 = { .name = "ecdsa_secp521r1_sha512_10875", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10875_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10875_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10875_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 319 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10876 for ECDSA, tcId is 320 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10876_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10876_msg[] = { 0x33, 0x34, 0x37, 0x38, 0x33, 0x36, 0x36, 0x31, 0x33, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10876_sig[] = { 0x01, 0x22, 0x76, 0x72, 0x0b, 0x27, 0x25, 0xba, 0x55, 0x6d, 0x06, 0xbe, 0x39, 0xcd, 0x16, 0xca, 0x0a, 0x03, 0x51, 0xd8, 0xf5, 0x30, 0x91, 0x3c, 0x4f, 0x0c, 0xfb, 0x71, 0xfd, 0xda, 0x74, 0xb8, 0x3f, 0x02, 0xfe, 0xbd, 0xdc, 0x8d, 0xa0, 0xa1, 0xf0, 0xf9, 0x10, 0xd3, 0x7d, 0x3f, 0x53, 0x32, 0xc0, 0x27, 0xd7, 0xbd, 0x4c, 0x38, 0xfd, 0x08, 0xeb, 0xc7, 0x70, 0xbf, 0x12, 0x52, 0x07, 0x86, 0x49, 0x54, 0x00, 0x63, 0x7e, 0x70, 0xb0, 0x60, 0x45, 0xa8, 0x6e, 0x2f, 0x32, 0x9f, 0x90, 0x7e, 0x07, 0x9a, 0x78, 0x5d, 0x7f, 0x86, 0x49, 0x54, 0x18, 0x60, 0x32, 0x2f, 0xb8, 0xb6, 0x4b, 0x97, 0x36, 0x36, 0x3f, 0x90, 0x15, 0x6b, 0x9a, 0x55, 0x32, 0xd8, 0x08, 0xcf, 0x2a, 0xf3, 0x3b, 0x87, 0xff, 0x97, 0x0c, 0x02, 0xe6, 0x48, 0xdc, 0x4f, 0x1c, 0x90, 0xff, 0x07, 0x04, 0x02, 0x8e, 0xc2, 0xc2, 0xd9, 0xa8, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10876 = { .name = "ecdsa_secp521r1_sha512_10876", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10876_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10876_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10876_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 320 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10877 for ECDSA, tcId is 321 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10877_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10877_msg[] = { 0x36, 0x34, 0x39, 0x30, 0x35, 0x32, 0x36, 0x30, 0x32, }; static const unsigned char ecdsa_secp521r1_sha512_10877_sig[] = { 0x00, 0x7a, 0xad, 0xe6, 0x08, 0xb2, 0x2c, 0x77, 0x24, 0x57, 0x34, 0xfc, 0x5c, 0x4b, 0xe8, 0x73, 0x7b, 0xa2, 0x4d, 0xc2, 0xed, 0x43, 0x21, 0xb5, 0x81, 0x24, 0xae, 0x46, 0xa7, 0x7e, 0xa7, 0xbe, 0xfa, 0xa5, 0xbc, 0xf1, 0x66, 0xcb, 0x96, 0x6a, 0xad, 0x00, 0x79, 0x11, 0x62, 0x3a, 0xf1, 0x09, 0x25, 0xa3, 0x24, 0xbc, 0x3c, 0x6d, 0x06, 0xf2, 0x4d, 0x0e, 0x2e, 0x7b, 0x2c, 0x7b, 0x84, 0x68, 0xb8, 0xee, 0x01, 0xe9, 0x91, 0x3a, 0x41, 0x23, 0x00, 0xb3, 0x98, 0x07, 0x19, 0x14, 0x8d, 0xe0, 0xbb, 0x03, 0x82, 0x61, 0x84, 0xaa, 0xbd, 0x58, 0xf1, 0x96, 0x59, 0xaa, 0x8c, 0xa1, 0x80, 0x45, 0xf3, 0x6c, 0x73, 0xc9, 0x7d, 0xf3, 0xd1, 0x2b, 0x92, 0x1d, 0xe5, 0x10, 0xff, 0xa9, 0x6c, 0xea, 0xc5, 0x45, 0x4b, 0x80, 0x1c, 0x86, 0xc5, 0x5a, 0x06, 0xb2, 0xd7, 0x71, 0xfa, 0x77, 0xbc, 0xa7, 0x84, 0x33, 0x2c, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10877 = { .name = "ecdsa_secp521r1_sha512_10877", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10877_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10877_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10877_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 321 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10878 for ECDSA, tcId is 322 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10878_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10878_msg[] = { 0x34, 0x37, 0x36, 0x33, 0x38, 0x38, 0x37, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10878_sig[] = { 0x01, 0xee, 0xfc, 0x7b, 0x6c, 0x14, 0x68, 0xff, 0xa7, 0xd6, 0x0b, 0x84, 0x08, 0xbd, 0x44, 0xc6, 0x4a, 0x3f, 0xfa, 0xff, 0x29, 0x81, 0x68, 0xc5, 0x01, 0x6c, 0x6f, 0x50, 0x40, 0x31, 0x86, 0x7e, 0xa1, 0x4a, 0xe4, 0x8c, 0x66, 0x1b, 0x81, 0x24, 0x41, 0x8b, 0x4e, 0xd6, 0xcc, 0xc3, 0x2d, 0xf6, 0xba, 0xc6, 0xd0, 0xa4, 0x85, 0xb1, 0x99, 0x02, 0x36, 0xe1, 0x56, 0x76, 0x26, 0x8b, 0x78, 0x68, 0xd2, 0x76, 0x00, 0x51, 0x5d, 0x48, 0x43, 0x6a, 0xff, 0xfd, 0xb6, 0x5c, 0xae, 0xd7, 0x37, 0x11, 0x6a, 0x86, 0x19, 0x74, 0xb7, 0x34, 0xbd, 0x19, 0x03, 0xe3, 0x7d, 0xbb, 0xc2, 0x31, 0xa9, 0xdb, 0x37, 0x46, 0x4e, 0xd7, 0x62, 0xe3, 0x64, 0xca, 0xc8, 0xb3, 0x2f, 0x15, 0x46, 0xd6, 0xde, 0x37, 0x97, 0x9f, 0xa0, 0x5f, 0x8b, 0x80, 0x15, 0x9a, 0x0f, 0x74, 0x7d, 0x94, 0x70, 0x29, 0x1a, 0xf6, 0x56, 0x9d, 0x6d, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10878 = { .name = "ecdsa_secp521r1_sha512_10878", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10878_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10878_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10878_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 322 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10879 for ECDSA, tcId is 323 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10879_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10879_msg[] = { 0x35, 0x37, 0x39, 0x30, 0x32, 0x30, 0x30, 0x38, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10879_sig[] = { 0x01, 0x27, 0x1b, 0x91, 0x2c, 0xa0, 0x55, 0x04, 0x0c, 0x22, 0x79, 0x55, 0xdf, 0x72, 0x97, 0x57, 0x65, 0x4a, 0xa9, 0xbb, 0xdb, 0x73, 0xc6, 0x1b, 0xa1, 0x41, 0x55, 0x22, 0x0e, 0x4e, 0x71, 0x32, 0x31, 0x9f, 0x6f, 0xb0, 0xee, 0x94, 0xf2, 0xfb, 0xe1, 0x60, 0x73, 0x8f, 0x1d, 0xce, 0x2a, 0xd6, 0x90, 0x84, 0x5c, 0x38, 0xd9, 0x62, 0xdb, 0x4f, 0xda, 0x15, 0x98, 0xe9, 0x32, 0x70, 0xda, 0x84, 0xa2, 0xbb, 0x00, 0xb8, 0x90, 0x7f, 0x04, 0x1c, 0x3b, 0x19, 0xb9, 0x23, 0x4a, 0xb5, 0x55, 0xd0, 0xb4, 0x83, 0x25, 0xb0, 0xcd, 0x33, 0x08, 0x89, 0xa5, 0x32, 0x76, 0xa1, 0xe9, 0x13, 0xba, 0xb8, 0x92, 0xb9, 0xc0, 0x5c, 0xfa, 0x88, 0x90, 0x05, 0xb1, 0x4e, 0xe2, 0x73, 0x02, 0x20, 0x74, 0x6a, 0xec, 0xf1, 0x2a, 0xf9, 0x11, 0xc5, 0xba, 0xea, 0x4b, 0xe3, 0x77, 0xee, 0x76, 0xc0, 0xee, 0xaf, 0x47, 0xb7, 0xa7, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10879 = { .name = "ecdsa_secp521r1_sha512_10879", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10879_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10879_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10879_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 323 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10880 for ECDSA, tcId is 324 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10880_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10880_msg[] = { 0x35, 0x33, 0x34, 0x34, 0x37, 0x38, 0x37, 0x38, 0x34, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10880_sig[] = { 0x01, 0x6a, 0x81, 0x3d, 0xb0, 0xf7, 0x5f, 0x90, 0x47, 0xfb, 0x11, 0xf3, 0xe1, 0x9f, 0xc1, 0x68, 0x8c, 0x29, 0x32, 0x8a, 0x54, 0xf5, 0x6a, 0xe3, 0x0c, 0x1c, 0x9d, 0x93, 0x78, 0x53, 0x7b, 0xfc, 0x40, 0xc5, 0x71, 0x9d, 0x08, 0x4e, 0x49, 0xa3, 0xb4, 0xae, 0xa2, 0x55, 0xf5, 0xb7, 0xf6, 0xcc, 0x77, 0x54, 0x92, 0xb5, 0x37, 0x1e, 0x6b, 0x67, 0xb2, 0xd6, 0xab, 0xd5, 0x74, 0x3e, 0x10, 0xfa, 0xc7, 0x09, 0x01, 0xc2, 0x58, 0xff, 0xd8, 0x30, 0x15, 0x1b, 0xfd, 0x41, 0xcc, 0xda, 0xbb, 0x86, 0xb2, 0x4a, 0xf8, 0x46, 0x61, 0x27, 0x88, 0xb3, 0x61, 0xc1, 0x96, 0xd2, 0x4e, 0x99, 0x7c, 0xcf, 0x3f, 0x17, 0xd4, 0x45, 0x2f, 0x63, 0xd3, 0x28, 0x51, 0xa4, 0x83, 0x07, 0x2e, 0x69, 0x08, 0x09, 0x5e, 0x5c, 0x49, 0xbb, 0xc2, 0x41, 0xa0, 0x41, 0x77, 0x49, 0xb0, 0x97, 0xbc, 0x1c, 0xa0, 0xe4, 0xd1, 0x27, 0x77, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10880 = { .name = "ecdsa_secp521r1_sha512_10880", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10880_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10880_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10880_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 324 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10881 for ECDSA, tcId is 325 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10881_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10881_msg[] = { 0x31, 0x39, 0x32, 0x36, 0x36, 0x34, 0x31, 0x30, 0x39, 0x32, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10881_sig[] = { 0x00, 0x15, 0x6a, 0x04, 0xc2, 0x2e, 0xa5, 0xbd, 0xb7, 0x87, 0x11, 0x24, 0xf1, 0x11, 0x73, 0x01, 0xd7, 0x81, 0x11, 0x3a, 0xc4, 0xc9, 0xd4, 0xda, 0x05, 0xfe, 0xa5, 0x36, 0xe9, 0x83, 0xd9, 0x26, 0x1d, 0x25, 0xdc, 0x97, 0x00, 0x6f, 0x8c, 0x78, 0xde, 0x23, 0xc7, 0x88, 0x71, 0x85, 0x57, 0xcf, 0x6f, 0x98, 0x86, 0x39, 0x94, 0xaf, 0x20, 0x86, 0xf0, 0xbe, 0x3e, 0x8a, 0xa8, 0x81, 0x2d, 0xc3, 0xa1, 0x1d, 0x00, 0xff, 0xca, 0x96, 0xb0, 0x4c, 0x56, 0xa4, 0xa6, 0xce, 0x5d, 0x22, 0xb3, 0x6e, 0x44, 0xd3, 0xb9, 0x74, 0xd5, 0x20, 0xe7, 0xf7, 0xc0, 0xf9, 0xd6, 0x90, 0x34, 0xf9, 0xe5, 0x9e, 0x0b, 0xbd, 0xc4, 0x32, 0x36, 0xb3, 0xe4, 0xbf, 0xb0, 0xf6, 0xbd, 0xe8, 0x80, 0x2c, 0xc5, 0xcd, 0x60, 0x22, 0xcf, 0xf1, 0x66, 0xf4, 0xc4, 0x88, 0xd6, 0x4f, 0x38, 0xd4, 0x4e, 0x3c, 0x56, 0x3d, 0xa3, 0x1c, 0xf6, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10881 = { .name = "ecdsa_secp521r1_sha512_10881", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10881_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10881_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10881_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 325 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10882 for ECDSA, tcId is 326 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10882_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10882_msg[] = { 0x33, 0x37, 0x30, 0x33, 0x39, 0x31, 0x35, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10882_sig[] = { 0x01, 0x09, 0x13, 0x54, 0x0a, 0xd7, 0x3c, 0xee, 0xf7, 0x31, 0x4d, 0x17, 0x58, 0x26, 0x4e, 0x1d, 0x15, 0x25, 0xa3, 0x71, 0xa7, 0xb9, 0xb3, 0x08, 0x69, 0x71, 0x59, 0x9a, 0x6b, 0x74, 0x9b, 0xe4, 0xd6, 0xba, 0x69, 0x26, 0x9b, 0x08, 0x95, 0x08, 0xf6, 0x50, 0x0d, 0xd9, 0x25, 0xaa, 0x89, 0xa7, 0xc7, 0xcb, 0x71, 0x85, 0xe0, 0xcc, 0xa7, 0xd2, 0xee, 0x56, 0x64, 0xf2, 0x28, 0x45, 0xd9, 0x61, 0xe3, 0x17, 0x01, 0x35, 0x25, 0x6c, 0x79, 0xea, 0x5e, 0x57, 0x68, 0xfb, 0x3a, 0x55, 0xe2, 0x89, 0x9b, 0x12, 0x21, 0x9b, 0x8f, 0x68, 0x95, 0x3c, 0xcd, 0x98, 0xc7, 0x10, 0xb6, 0xa1, 0x3d, 0xe0, 0xf5, 0x97, 0x86, 0xf4, 0x33, 0x18, 0x45, 0xe6, 0x5c, 0x7d, 0xd6, 0x34, 0x00, 0x23, 0xa5, 0xe2, 0x80, 0x20, 0x6c, 0xa3, 0x14, 0x16, 0x05, 0x8f, 0x39, 0x5f, 0xff, 0x4b, 0xb5, 0xde, 0x41, 0x1f, 0xf6, 0x6f, 0xc0, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10882 = { .name = "ecdsa_secp521r1_sha512_10882", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10882_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10882_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10882_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 326 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10883 for ECDSA, tcId is 327 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10883_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10883_msg[] = { 0x38, 0x31, 0x35, 0x34, 0x35, 0x37, 0x37, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10883_sig[] = { 0x01, 0xb5, 0x05, 0x1c, 0xa0, 0xdd, 0x3b, 0x20, 0xdf, 0x7d, 0x8c, 0x5b, 0x92, 0xcb, 0x42, 0xb8, 0xa2, 0x04, 0xf9, 0x2f, 0xb4, 0xe5, 0x8c, 0x61, 0x2f, 0x43, 0xd3, 0x80, 0x0d, 0xe8, 0xc0, 0x68, 0x3c, 0x42, 0x7e, 0x83, 0x2c, 0xe6, 0x22, 0x15, 0x67, 0x47, 0x05, 0x2b, 0x81, 0xbf, 0xbf, 0x6e, 0xd5, 0xfa, 0x17, 0x7b, 0x6d, 0x47, 0x85, 0x8e, 0xc8, 0x47, 0x8f, 0x6c, 0x9c, 0xa7, 0x94, 0x8f, 0xd5, 0x11, 0x01, 0xfe, 0x57, 0x10, 0xfa, 0xc0, 0xe9, 0xd3, 0xe2, 0xb3, 0xb8, 0x30, 0x81, 0xb2, 0x8b, 0x19, 0x4b, 0x82, 0x2d, 0x0c, 0x13, 0x39, 0x7b, 0xf1, 0x51, 0x61, 0x40, 0xcb, 0xe3, 0xfa, 0xa5, 0x2e, 0x90, 0x88, 0x48, 0xf6, 0x97, 0x89, 0xa7, 0x41, 0xb9, 0xcd, 0x54, 0xd7, 0x03, 0xa9, 0x45, 0x77, 0xfa, 0x81, 0x3e, 0x2f, 0x2c, 0x75, 0x83, 0x48, 0x07, 0x40, 0x1c, 0xa0, 0x10, 0xfd, 0xe5, 0x32, 0x83, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10883 = { .name = "ecdsa_secp521r1_sha512_10883", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10883_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10883_msg, .msglen = 8, .sig = ecdsa_secp521r1_sha512_10883_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 327 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10884 for ECDSA, tcId is 328 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10884_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10884_msg[] = { 0x31, 0x39, 0x35, 0x35, 0x33, 0x30, 0x33, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10884_sig[] = { 0x00, 0x8d, 0x3c, 0x8f, 0x8e, 0x7a, 0xb7, 0x4d, 0x49, 0xe1, 0x6a, 0x4c, 0x7d, 0xb3, 0xa3, 0x93, 0xfa, 0x95, 0x67, 0x77, 0x7e, 0x37, 0x33, 0x13, 0x66, 0x7f, 0x9c, 0xe3, 0x2b, 0x1b, 0x5e, 0x64, 0x8d, 0xeb, 0xff, 0xed, 0xfd, 0x2f, 0xf5, 0x34, 0x5c, 0xa1, 0xb8, 0x15, 0x4c, 0x18, 0xc8, 0xb8, 0x83, 0x95, 0x7d, 0x91, 0x1e, 0x41, 0x33, 0x62, 0x85, 0xf8, 0x62, 0x61, 0xc3, 0xee, 0x22, 0x5f, 0xde, 0xdd, 0x00, 0x3c, 0x51, 0xb8, 0x4c, 0x2c, 0x9a, 0x3f, 0xeb, 0x76, 0xa6, 0x51, 0x86, 0x34, 0xb6, 0xf0, 0x9c, 0x0d, 0xde, 0x8a, 0x9d, 0x08, 0xde, 0xc0, 0xb3, 0xd6, 0x61, 0x35, 0xcc, 0x1b, 0xdb, 0x0a, 0x80, 0xfd, 0x69, 0x63, 0x61, 0x04, 0xaf, 0x69, 0xde, 0x8f, 0x40, 0x62, 0x64, 0x6b, 0x29, 0xfa, 0x3a, 0xf6, 0x85, 0xec, 0x82, 0x70, 0x4c, 0xef, 0x70, 0x6a, 0x18, 0xc5, 0x9c, 0xa7, 0xec, 0xa0, 0xfb, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10884 = { .name = "ecdsa_secp521r1_sha512_10884", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10884_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10884_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10884_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 328 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10885 for ECDSA, tcId is 329 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10885_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10885_msg[] = { 0x31, 0x32, 0x36, 0x37, 0x38, 0x31, 0x30, 0x39, 0x30, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10885_sig[] = { 0x01, 0x19, 0x56, 0x25, 0xa6, 0x4a, 0xc1, 0x1c, 0x4f, 0xc1, 0xfc, 0x47, 0x9e, 0xf8, 0x04, 0x30, 0xeb, 0x85, 0xc1, 0xaf, 0x77, 0xf8, 0xa1, 0x97, 0xa1, 0x7e, 0x00, 0x95, 0x69, 0xef, 0x6c, 0x41, 0xac, 0x6f, 0x35, 0x85, 0x07, 0x55, 0x37, 0x9f, 0x47, 0x8d, 0x89, 0x28, 0xb1, 0x54, 0xe3, 0xba, 0xaa, 0x29, 0xe9, 0x2b, 0x48, 0x1a, 0xc0, 0x4d, 0xc7, 0x2f, 0x37, 0x28, 0xb4, 0xf0, 0x88, 0xff, 0x37, 0xdc, 0x00, 0x0d, 0x55, 0xc7, 0x06, 0x78, 0x77, 0xdd, 0x13, 0x02, 0xfd, 0xc6, 0xbb, 0x69, 0xb7, 0xb7, 0xc0, 0x24, 0xe4, 0xcf, 0x3a, 0x0e, 0x92, 0x41, 0x02, 0xd7, 0x44, 0xac, 0x52, 0x36, 0x6d, 0x9d, 0x76, 0xd5, 0x85, 0x5d, 0x3d, 0xa2, 0x28, 0xc4, 0xb6, 0x7b, 0xc7, 0xbc, 0x4b, 0x2a, 0x14, 0xe7, 0x99, 0x99, 0x62, 0xcc, 0x9b, 0xbd, 0xc5, 0x17, 0xfc, 0x24, 0xa8, 0x23, 0xab, 0xf5, 0x84, 0xb8, 0xf5, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10885 = { .name = "ecdsa_secp521r1_sha512_10885", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10885_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10885_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10885_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 329 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10886 for ECDSA, tcId is 330 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10886_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10886_msg[] = { 0x31, 0x31, 0x31, 0x38, 0x30, 0x37, 0x32, 0x30, 0x38, 0x31, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10886_sig[] = { 0x00, 0x26, 0xeb, 0x68, 0xbc, 0x0f, 0xb7, 0x66, 0x4c, 0x35, 0xbf, 0x57, 0x62, 0xcd, 0x53, 0x2d, 0xce, 0x33, 0xb0, 0xe3, 0x96, 0xe9, 0x7d, 0x6f, 0x41, 0x43, 0xdc, 0x6e, 0x1e, 0x76, 0x6c, 0x83, 0x6e, 0x27, 0xc0, 0x69, 0xda, 0x9e, 0xa1, 0xe7, 0x4e, 0x0b, 0x03, 0xd0, 0x30, 0xcf, 0x8a, 0x81, 0x49, 0x05, 0x08, 0xc1, 0xc7, 0x28, 0xf8, 0x6e, 0x59, 0x28, 0x2d, 0xf9, 0x4d, 0xe8, 0xd8, 0xa0, 0xdc, 0xaf, 0x00, 0xa9, 0xfb, 0x58, 0x4b, 0x71, 0x29, 0x86, 0xf1, 0x9a, 0xb7, 0x56, 0x86, 0x93, 0xdf, 0x27, 0x8c, 0xaf, 0xa4, 0x32, 0x72, 0xdb, 0xa4, 0x00, 0xff, 0x33, 0x3c, 0xf4, 0x8b, 0x55, 0x56, 0xe6, 0xe7, 0x83, 0x53, 0xa6, 0x65, 0x60, 0x5c, 0x70, 0xb6, 0xfd, 0x0f, 0x18, 0xf3, 0x0b, 0x85, 0x0e, 0x1a, 0x47, 0xcd, 0xa4, 0x2c, 0x4c, 0x92, 0x4b, 0xca, 0x80, 0x10, 0x2e, 0x67, 0x93, 0xbe, 0x9a, 0x86, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10886 = { .name = "ecdsa_secp521r1_sha512_10886", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10886_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10886_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10886_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 330 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10887 for ECDSA, tcId is 331 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10887_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10887_msg[] = { 0x38, 0x33, 0x38, 0x31, 0x38, 0x36, 0x39, 0x32, 0x39, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10887_sig[] = { 0x00, 0xf3, 0xd3, 0x4e, 0x36, 0xf9, 0x75, 0x4d, 0xfa, 0x8e, 0xaf, 0xab, 0x16, 0x0c, 0xa9, 0x6d, 0x91, 0xc7, 0xf4, 0xf3, 0x88, 0xec, 0x82, 0xac, 0x33, 0x78, 0x40, 0x26, 0xbb, 0x6c, 0x6a, 0x03, 0x57, 0x19, 0xea, 0xee, 0xc3, 0xee, 0x51, 0x1f, 0xff, 0xb2, 0x2d, 0xd5, 0xd6, 0xab, 0x81, 0x9e, 0x6c, 0x63, 0x87, 0x19, 0x2d, 0x6c, 0x3a, 0x6e, 0x92, 0x49, 0xea, 0xd5, 0x65, 0x15, 0x7e, 0x32, 0x3f, 0x62, 0x01, 0xb5, 0x78, 0x6b, 0x1d, 0x66, 0x2d, 0x26, 0xfe, 0x9f, 0x69, 0xc3, 0x70, 0xd2, 0xbc, 0x18, 0x88, 0x2a, 0xbe, 0xf6, 0x93, 0xc8, 0xf1, 0x71, 0x00, 0xa0, 0x27, 0x25, 0xde, 0x7c, 0x9f, 0x03, 0x60, 0x2f, 0xd5, 0x3a, 0x92, 0x08, 0xb5, 0x73, 0xb3, 0xb7, 0xb0, 0xb6, 0x6d, 0xb9, 0x71, 0x76, 0x7b, 0xde, 0x83, 0x5f, 0x9e, 0x8f, 0x42, 0xad, 0xa2, 0x01, 0xe7, 0xb7, 0x39, 0x1b, 0x86, 0xfe, 0x02, 0x94, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10887 = { .name = "ecdsa_secp521r1_sha512_10887", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10887_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10887_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10887_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 331 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10888 for ECDSA, tcId is 332 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10888_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10888_msg[] = { 0x33, 0x31, 0x33, 0x31, 0x32, 0x38, 0x37, 0x32, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10888_sig[] = { 0x00, 0xe6, 0x9c, 0x83, 0x3b, 0x60, 0x40, 0x75, 0xe9, 0xb2, 0x8a, 0x2f, 0xf7, 0x3a, 0x56, 0xa3, 0x2e, 0x1a, 0x24, 0x7e, 0xf9, 0xae, 0x01, 0xe7, 0xa0, 0xe4, 0x71, 0xf6, 0x01, 0x5c, 0x2b, 0x86, 0xeb, 0x86, 0x4c, 0x28, 0x1c, 0x8c, 0x93, 0xd2, 0xac, 0xf5, 0x65, 0x3a, 0xd0, 0x5b, 0xaf, 0xab, 0x2f, 0x58, 0x02, 0x7f, 0x37, 0x51, 0x3e, 0xb8, 0x56, 0x9f, 0x50, 0xbd, 0x47, 0x5e, 0x77, 0x0e, 0x9a, 0x81, 0x00, 0xb9, 0xc9, 0xd6, 0xce, 0x09, 0xb5, 0x30, 0x25, 0xbf, 0xca, 0xa7, 0xd1, 0x72, 0xae, 0x41, 0xa9, 0xb6, 0x36, 0xaa, 0x4b, 0x80, 0xa9, 0x30, 0x93, 0x1f, 0xc9, 0x9e, 0x5e, 0x2a, 0xa2, 0x33, 0x06, 0xf1, 0x9d, 0xc5, 0x73, 0x99, 0xb0, 0x43, 0x1e, 0x72, 0x44, 0x0a, 0x1f, 0x4e, 0xc7, 0xd5, 0xca, 0x90, 0x2f, 0x0f, 0x7b, 0x81, 0xc9, 0x1d, 0xe8, 0x5e, 0x46, 0x9f, 0x99, 0x2f, 0xdf, 0xd4, 0xc5, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10888 = { .name = "ecdsa_secp521r1_sha512_10888", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10888_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10888_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10888_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 332 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10889 for ECDSA, tcId is 333 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10889_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10889_msg[] = { 0x31, 0x34, 0x33, 0x33, 0x31, 0x39, 0x32, 0x36, 0x35, 0x33, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10889_sig[] = { 0x01, 0xc6, 0xb8, 0xb5, 0xcf, 0x3c, 0x4d, 0xd3, 0xd6, 0x23, 0x91, 0xf1, 0x8e, 0x97, 0xee, 0xf3, 0xaa, 0x6a, 0xce, 0x0a, 0xe2, 0xc6, 0xfc, 0x97, 0xa5, 0x61, 0xcb, 0x8e, 0x49, 0xc0, 0x87, 0xdb, 0xcf, 0x81, 0x35, 0xfa, 0x43, 0x3b, 0x56, 0x6b, 0x33, 0x85, 0xcb, 0x57, 0x20, 0x2f, 0x1b, 0x12, 0x16, 0x4f, 0xe6, 0x27, 0x65, 0xef, 0x73, 0xb7, 0x2a, 0x94, 0xe7, 0xa5, 0x78, 0x70, 0x98, 0x9a, 0x49, 0x81, 0x01, 0x85, 0x94, 0x44, 0x34, 0xb8, 0x3a, 0x0d, 0x0f, 0xb4, 0xbc, 0xdc, 0xe8, 0xdd, 0xaa, 0xdb, 0x30, 0xa1, 0xe4, 0x40, 0x81, 0x5e, 0x76, 0x74, 0x56, 0x2d, 0xf9, 0xc8, 0xbf, 0x71, 0x12, 0x22, 0x20, 0x8c, 0xc3, 0x46, 0xb9, 0x66, 0x5d, 0x90, 0xab, 0xed, 0xb4, 0x37, 0x91, 0x23, 0x91, 0x50, 0x5d, 0xd5, 0xd2, 0x6f, 0x01, 0x78, 0xe7, 0xc0, 0x63, 0x79, 0x0f, 0x55, 0x18, 0xf4, 0x7d, 0x1b, 0x05, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10889 = { .name = "ecdsa_secp521r1_sha512_10889", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10889_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10889_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10889_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 333 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10890 for ECDSA, tcId is 334 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10890_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10890_msg[] = { 0x33, 0x34, 0x34, 0x39, 0x30, 0x38, 0x32, 0x33, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10890_sig[] = { 0x00, 0x9f, 0x35, 0x1a, 0x41, 0xd5, 0x37, 0x5b, 0x89, 0x93, 0xe9, 0x0b, 0x8d, 0x8a, 0x65, 0xbf, 0x01, 0xd5, 0x2d, 0x14, 0xab, 0xa1, 0xdb, 0xe4, 0x9c, 0xbb, 0x4e, 0xa8, 0x23, 0x80, 0x4f, 0x2b, 0x53, 0x3e, 0x0c, 0x16, 0x79, 0x03, 0xc8, 0xbb, 0xc5, 0x93, 0x29, 0x7c, 0x18, 0xf3, 0x09, 0x79, 0x8a, 0x54, 0x47, 0x87, 0xd5, 0x98, 0x07, 0x4c, 0xbf, 0x56, 0xef, 0x0e, 0x50, 0x22, 0x52, 0x09, 0x12, 0xad, 0x01, 0xb8, 0x92, 0x74, 0x0a, 0x57, 0x20, 0x41, 0x86, 0xbd, 0x5f, 0x43, 0x4f, 0x72, 0xd1, 0x53, 0x4b, 0x42, 0x89, 0xf8, 0xf7, 0x11, 0x4c, 0xb7, 0xb1, 0xc9, 0xcf, 0x45, 0x41, 0xd7, 0x54, 0xf3, 0x14, 0x44, 0x8c, 0xc3, 0x2d, 0xea, 0xf3, 0x56, 0x08, 0x26, 0x34, 0x88, 0xfd, 0xc7, 0x59, 0x6f, 0x74, 0x81, 0xec, 0x09, 0x8b, 0x36, 0xf8, 0xe4, 0x40, 0x82, 0x91, 0x94, 0xbe, 0xcc, 0x74, 0x6c, 0x77, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10890 = { .name = "ecdsa_secp521r1_sha512_10890", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10890_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10890_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10890_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 334 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10891 for ECDSA, tcId is 335 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10891_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10891_msg[] = { 0x36, 0x38, 0x32, 0x39, 0x38, 0x33, 0x35, 0x39, 0x32, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10891_sig[] = { 0x01, 0xfe, 0x24, 0xea, 0x83, 0x11, 0x99, 0xe3, 0x1c, 0xc6, 0x8e, 0xf2, 0x39, 0x80, 0xc4, 0xba, 0xbd, 0x37, 0x73, 0x04, 0x08, 0x70, 0xaf, 0x88, 0x23, 0xa1, 0x97, 0x08, 0xbd, 0x02, 0x29, 0xad, 0xc1, 0xce, 0x99, 0xd0, 0x2e, 0x4d, 0x95, 0x22, 0x41, 0x01, 0xe3, 0xe9, 0x74, 0x23, 0x6f, 0x54, 0xdf, 0x86, 0x05, 0x1f, 0xa1, 0xe9, 0xfd, 0x21, 0x38, 0x04, 0x32, 0x63, 0x3b, 0x24, 0x95, 0xab, 0x78, 0x2a, 0x00, 0x0e, 0xfd, 0x1f, 0x2a, 0x28, 0x1f, 0x96, 0x7e, 0x7b, 0x09, 0xd7, 0x21, 0x58, 0x13, 0x56, 0xa7, 0x14, 0xc4, 0x99, 0xf9, 0xb1, 0x4f, 0x78, 0x19, 0x92, 0xeb, 0x9a, 0xe7, 0xa1, 0x9f, 0x68, 0x25, 0x04, 0x5f, 0xdc, 0x6d, 0x9d, 0x76, 0x3f, 0x44, 0xe1, 0xe7, 0xc9, 0x14, 0x80, 0xa6, 0x78, 0xa1, 0xd8, 0xec, 0xf6, 0xd6, 0x6e, 0x76, 0xce, 0xa3, 0x50, 0x5f, 0x65, 0xff, 0x78, 0xcf, 0xf1, 0x5c, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10891 = { .name = "ecdsa_secp521r1_sha512_10891", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10891_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10891_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10891_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 335 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10892 for ECDSA, tcId is 336 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10892_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10892_msg[] = { 0x33, 0x34, 0x34, 0x35, 0x31, 0x35, 0x38, 0x30, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10892_sig[] = { 0x01, 0x4c, 0x6e, 0xe9, 0xde, 0x0a, 0x2a, 0x0b, 0x60, 0xc9, 0x81, 0x83, 0x1e, 0x0a, 0xcd, 0x66, 0x36, 0xb4, 0x6a, 0xe1, 0x34, 0xfe, 0xdc, 0xe6, 0x1b, 0x04, 0x88, 0x11, 0x26, 0x63, 0xb2, 0x4e, 0x1d, 0x7e, 0x74, 0xe2, 0x27, 0xfe, 0xa8, 0x83, 0xd2, 0x6b, 0x68, 0xf2, 0x1e, 0x41, 0x35, 0xba, 0x0e, 0x20, 0x69, 0xbb, 0xe0, 0xd9, 0xc6, 0x43, 0x3c, 0x39, 0x08, 0xfd, 0x5b, 0x00, 0x18, 0x28, 0x94, 0xb0, 0x00, 0x6a, 0x18, 0x0a, 0x49, 0x31, 0x82, 0xc6, 0xbc, 0x2a, 0x09, 0xd7, 0xe1, 0x7f, 0xf5, 0xd6, 0x20, 0x15, 0x29, 0x3f, 0x1e, 0x8a, 0xe2, 0x05, 0xa1, 0x6f, 0xa0, 0x90, 0x42, 0xb0, 0xa9, 0xaf, 0x67, 0x94, 0xcb, 0x37, 0x7f, 0x4b, 0x8b, 0x11, 0x75, 0xfc, 0xee, 0x51, 0x37, 0xc2, 0x34, 0x90, 0x0f, 0x73, 0x5c, 0x48, 0x4f, 0xeb, 0x7d, 0xa4, 0xcb, 0xb4, 0x05, 0xcf, 0x9e, 0x53, 0x70, 0xfe, 0x4f, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10892 = { .name = "ecdsa_secp521r1_sha512_10892", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10892_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10892_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10892_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 336 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10893 for ECDSA, tcId is 337 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10893_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10893_msg[] = { 0x31, 0x32, 0x36, 0x39, 0x37, 0x39, 0x38, 0x37, 0x36, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10893_sig[] = { 0x01, 0x04, 0x4a, 0x45, 0x85, 0x3a, 0xda, 0x17, 0xca, 0x76, 0x1a, 0xcc, 0x7d, 0xf6, 0xd1, 0xd3, 0x80, 0x25, 0x2c, 0xb0, 0xfa, 0x66, 0x12, 0x4d, 0x92, 0x78, 0xa5, 0xed, 0x8a, 0x4a, 0x60, 0x45, 0x3b, 0xc7, 0x1d, 0xe1, 0xdb, 0xe3, 0x2b, 0x02, 0x61, 0x16, 0x59, 0x48, 0x82, 0x3c, 0x46, 0x1c, 0x7c, 0x1e, 0xb1, 0x71, 0x4e, 0xc1, 0xdb, 0xf6, 0x6f, 0xd6, 0x02, 0xc7, 0xa4, 0x74, 0x46, 0xd1, 0xda, 0xe1, 0x00, 0xf8, 0xb2, 0x7f, 0x7c, 0x71, 0xe3, 0x7e, 0x4b, 0x44, 0x0d, 0x2c, 0x86, 0xf1, 0xc1, 0xd5, 0x0b, 0xf7, 0xc5, 0x3d, 0x38, 0x78, 0xed, 0x27, 0xe7, 0xbc, 0xfb, 0xeb, 0x90, 0x2f, 0x76, 0x9f, 0x86, 0xd6, 0xc3, 0xe8, 0x82, 0x0b, 0x99, 0xf8, 0x90, 0x05, 0x0f, 0x0d, 0xbe, 0xbd, 0x21, 0x32, 0xe8, 0x46, 0x26, 0xc5, 0xb1, 0x6a, 0x8c, 0x7f, 0xff, 0xfc, 0x3a, 0x30, 0xac, 0xe6, 0x9d, 0xd1, 0x5a, 0x11, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10893 = { .name = "ecdsa_secp521r1_sha512_10893", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10893_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10893_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10893_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 337 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10894 for ECDSA, tcId is 338 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10894_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10894_msg[] = { 0x33, 0x39, 0x39, 0x32, 0x34, 0x32, 0x35, 0x35, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10894_sig[] = { 0x00, 0x67, 0x6a, 0x38, 0x1b, 0x18, 0xd0, 0x52, 0x07, 0xcd, 0xdd, 0x73, 0xb4, 0x4e, 0x4d, 0xd7, 0x14, 0x49, 0x98, 0x5c, 0x0f, 0xa7, 0xde, 0x1f, 0xff, 0x43, 0xca, 0x51, 0x55, 0x13, 0x9a, 0x1a, 0x09, 0xe5, 0xe3, 0xfd, 0x75, 0x4d, 0x86, 0xeb, 0xbe, 0x32, 0xf6, 0x60, 0x9f, 0x6e, 0x90, 0x6d, 0x48, 0xd2, 0x47, 0x90, 0xe4, 0x94, 0x34, 0x3c, 0x61, 0xfa, 0xa9, 0x0b, 0xfd, 0xaa, 0x4f, 0x49, 0xfd, 0xc7, 0x00, 0xfb, 0xc1, 0xc8, 0x91, 0xbf, 0x6e, 0x36, 0x8f, 0xcc, 0xad, 0x51, 0xcc, 0x9b, 0x2c, 0x29, 0xe8, 0xe9, 0x2b, 0x65, 0x8e, 0x88, 0xc0, 0xd2, 0x32, 0x85, 0xaf, 0x26, 0x9a, 0xff, 0x67, 0x02, 0xa5, 0x5a, 0x0a, 0xb1, 0x68, 0x07, 0xe5, 0x52, 0x3b, 0x66, 0x37, 0xbb, 0xb0, 0x04, 0x72, 0x7f, 0x6f, 0x55, 0xc5, 0x1a, 0xd4, 0xce, 0xc8, 0xc9, 0x24, 0xf9, 0xc1, 0xfe, 0xb2, 0x46, 0x01, 0xae, 0xdd, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10894 = { .name = "ecdsa_secp521r1_sha512_10894", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10894_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10894_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10894_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 338 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10895 for ECDSA, tcId is 339 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10895_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10895_msg[] = { 0x31, 0x36, 0x30, 0x31, 0x39, 0x37, 0x37, 0x39, 0x37, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10895_sig[] = { 0x01, 0x3c, 0x9a, 0x57, 0x53, 0x82, 0xff, 0x68, 0x81, 0xc9, 0x08, 0xfb, 0x51, 0x84, 0xbe, 0x7b, 0xaf, 0x38, 0xed, 0xb0, 0xb0, 0x60, 0x08, 0x59, 0x25, 0x58, 0xef, 0xd5, 0x7d, 0xd8, 0xfb, 0x99, 0x93, 0xc8, 0x93, 0x80, 0x0a, 0x6a, 0xc8, 0xc6, 0xd2, 0xe3, 0x4e, 0xbf, 0xbe, 0xff, 0x43, 0xe6, 0x32, 0x63, 0xf1, 0x33, 0x86, 0x8d, 0x0a, 0xc7, 0xa8, 0x38, 0xf6, 0x9a, 0xff, 0x26, 0xd6, 0x0a, 0x38, 0x49, 0x00, 0x9d, 0x22, 0xae, 0x7b, 0xca, 0x8a, 0x75, 0xa5, 0x32, 0x14, 0xc3, 0xee, 0xce, 0x43, 0x7f, 0xb2, 0x8e, 0x05, 0xb0, 0x76, 0xec, 0x70, 0x4d, 0x75, 0x1a, 0x28, 0xa7, 0xed, 0x7e, 0x52, 0x9d, 0x5c, 0x53, 0x38, 0xbe, 0x8c, 0x72, 0x4a, 0xfa, 0x54, 0x75, 0x74, 0xa1, 0x7f, 0x70, 0x51, 0x0b, 0x24, 0x62, 0x74, 0x8a, 0x53, 0x67, 0x8e, 0x39, 0x75, 0x2a, 0x68, 0x8d, 0xc8, 0xcf, 0x39, 0xe8, 0x86, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10895 = { .name = "ecdsa_secp521r1_sha512_10895", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10895_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10895_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10895_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 339 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10896 for ECDSA, tcId is 340 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10896_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10896_msg[] = { 0x31, 0x30, 0x38, 0x37, 0x38, 0x37, 0x35, 0x35, 0x31, 0x34, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10896_sig[] = { 0x01, 0x07, 0x1c, 0xe5, 0xa1, 0x9a, 0x09, 0xaa, 0xcd, 0x43, 0xc7, 0xca, 0xcd, 0x58, 0xa4, 0x39, 0xdc, 0xca, 0x4e, 0x85, 0xf9, 0x4e, 0xa1, 0xd4, 0x8a, 0x60, 0xf2, 0x98, 0xee, 0x01, 0xbb, 0x3e, 0xeb, 0x11, 0xd5, 0xda, 0xf5, 0x45, 0xe7, 0x08, 0x64, 0x86, 0xf8, 0xe4, 0xb5, 0x18, 0xa1, 0x5b, 0xe6, 0x96, 0x20, 0xab, 0x92, 0x0c, 0xf9, 0x5c, 0x5c, 0x15, 0xff, 0x17, 0x8c, 0x90, 0x31, 0x24, 0xfa, 0xc3, 0x01, 0xad, 0x6e, 0xae, 0xed, 0xec, 0xe9, 0xa7, 0x59, 0x2b, 0xd2, 0x15, 0x08, 0xb2, 0x72, 0x0f, 0x1b, 0x8c, 0x4b, 0xf5, 0x56, 0x37, 0xb1, 0xe8, 0xa5, 0xce, 0x53, 0x59, 0x77, 0x5b, 0x98, 0x0b, 0x21, 0xeb, 0x1d, 0x33, 0xe8, 0xeb, 0xf5, 0xc0, 0xb3, 0xd7, 0x82, 0x91, 0x52, 0xa2, 0x95, 0xb8, 0xa9, 0xa1, 0x34, 0x3c, 0x25, 0x35, 0x0e, 0x35, 0xf7, 0x09, 0x93, 0x6a, 0xcc, 0xc8, 0xce, 0x08, 0xb0, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10896 = { .name = "ecdsa_secp521r1_sha512_10896", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10896_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10896_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10896_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 340 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10897 for ECDSA, tcId is 341 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10897_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10897_msg[] = { 0x37, 0x30, 0x30, 0x34, 0x32, 0x35, 0x32, 0x39, 0x39, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10897_sig[] = { 0x01, 0xbd, 0xae, 0x49, 0x91, 0x60, 0xf4, 0xcc, 0x6c, 0xd1, 0x63, 0xcf, 0x11, 0x0b, 0xb1, 0xf9, 0xb4, 0x21, 0xe8, 0x78, 0x6a, 0x8e, 0xf9, 0x29, 0x7e, 0x4b, 0x98, 0xfd, 0x50, 0x8a, 0x1d, 0x14, 0xc5, 0x06, 0x17, 0xc8, 0xd1, 0xa3, 0xde, 0x94, 0xfc, 0x8b, 0xd6, 0xc3, 0x80, 0x55, 0xe4, 0x90, 0x6b, 0x20, 0xfd, 0xca, 0xb6, 0xef, 0x7b, 0xf9, 0xe7, 0xe5, 0xc9, 0x8e, 0xf3, 0xe8, 0x3e, 0x38, 0xec, 0x3b, 0x01, 0xba, 0x86, 0x7b, 0x8e, 0xe7, 0x2b, 0xb7, 0x30, 0x4f, 0xf8, 0x3f, 0xc2, 0xd7, 0x34, 0x74, 0x94, 0x47, 0x42, 0x07, 0x91, 0xd5, 0x60, 0x9e, 0x05, 0x15, 0xde, 0x4e, 0x05, 0xfa, 0x70, 0xa8, 0x33, 0x85, 0xa8, 0x53, 0xca, 0xc6, 0xc4, 0x7a, 0x07, 0x5c, 0x8c, 0x61, 0xe4, 0xb6, 0x5b, 0x97, 0x74, 0x57, 0x41, 0x01, 0xcf, 0x4e, 0x08, 0x17, 0x70, 0xf8, 0x3a, 0xe1, 0xb7, 0xe7, 0x27, 0x01, 0x0b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10897 = { .name = "ecdsa_secp521r1_sha512_10897", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10897_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10897_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10897_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 341 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10898 for ECDSA, tcId is 342 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10898_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10898_msg[] = { 0x31, 0x35, 0x36, 0x35, 0x33, 0x32, 0x35, 0x32, 0x38, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10898_sig[] = { 0x00, 0x00, 0x26, 0x9f, 0xc7, 0xed, 0x89, 0xe5, 0x54, 0xaa, 0x52, 0xb3, 0x87, 0x5d, 0xc0, 0x0b, 0xc1, 0x40, 0xc1, 0x93, 0x7d, 0x4f, 0x1b, 0x32, 0xe2, 0x9d, 0xa4, 0x1f, 0xf2, 0x41, 0xcd, 0xb9, 0xbd, 0x30, 0x58, 0xfc, 0x14, 0x8f, 0x90, 0x59, 0x82, 0xb8, 0x71, 0x7b, 0x03, 0x5e, 0x0d, 0xb0, 0x0d, 0xed, 0x7e, 0xbc, 0xb0, 0x85, 0x72, 0xec, 0x76, 0xbf, 0x01, 0x28, 0x41, 0x11, 0x45, 0xd7, 0x30, 0x91, 0x01, 0xb4, 0xbd, 0x6b, 0xc4, 0xba, 0x7b, 0xef, 0xd5, 0xc3, 0x05, 0xe0, 0x18, 0x44, 0x8a, 0x77, 0x1b, 0x71, 0xfa, 0x1a, 0x11, 0xb3, 0xa2, 0xc6, 0x18, 0x5d, 0xd6, 0xb8, 0x47, 0x7c, 0x35, 0xea, 0xeb, 0x47, 0x33, 0xfe, 0xcd, 0x90, 0xf3, 0x8e, 0xcb, 0xa6, 0x28, 0xf2, 0x7c, 0x02, 0xf8, 0x09, 0x19, 0x1e, 0x99, 0x3e, 0x1e, 0x7f, 0xf5, 0x90, 0x38, 0x3e, 0x2e, 0xc2, 0xaf, 0xd0, 0x80, 0x20, 0xb2, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10898 = { .name = "ecdsa_secp521r1_sha512_10898", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10898_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10898_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10898_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 342 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10899 for ECDSA, tcId is 343 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10899_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10899_msg[] = { 0x32, 0x33, 0x38, 0x32, 0x36, 0x33, 0x34, 0x32, 0x33, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10899_sig[] = { 0x01, 0xa5, 0xce, 0xcc, 0x0e, 0x57, 0x2f, 0x5e, 0xe4, 0xee, 0xd6, 0x75, 0x5d, 0x32, 0x30, 0xec, 0x5a, 0x93, 0x3c, 0x1f, 0xb0, 0xe3, 0x5a, 0xe7, 0x71, 0xa1, 0xfc, 0xf0, 0xdc, 0x88, 0x0e, 0x1c, 0x15, 0x9d, 0xd5, 0xb6, 0xd1, 0x92, 0xdc, 0x37, 0x75, 0x05, 0x04, 0x8b, 0x71, 0x88, 0xde, 0x3f, 0xeb, 0x81, 0x5a, 0x81, 0xa4, 0xf3, 0x0d, 0x92, 0x26, 0xcd, 0xc8, 0x5f, 0x75, 0x1d, 0xec, 0x1a, 0x04, 0x10, 0x01, 0xef, 0x4a, 0x74, 0x3e, 0x1e, 0x16, 0xf0, 0xa6, 0x02, 0x01, 0xcc, 0x10, 0x60, 0x62, 0x5e, 0xde, 0x6f, 0x09, 0x36, 0xe7, 0xaf, 0x90, 0xb4, 0x27, 0x36, 0x28, 0x1e, 0x89, 0xfe, 0x7f, 0x2d, 0xe6, 0xaa, 0x3f, 0x25, 0xc6, 0x85, 0x76, 0xda, 0x70, 0x5d, 0x8b, 0x3f, 0x6d, 0x5d, 0x8a, 0x34, 0xd3, 0x07, 0x33, 0x07, 0xea, 0x19, 0x8d, 0x1c, 0xc8, 0xd7, 0x2a, 0x18, 0xef, 0x25, 0xe9, 0x0f, 0x31, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10899 = { .name = "ecdsa_secp521r1_sha512_10899", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10899_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10899_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10899_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 343 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10900 for ECDSA, tcId is 344 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10900_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10900_msg[] = { 0x31, 0x34, 0x34, 0x37, 0x38, 0x34, 0x37, 0x30, 0x36, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10900_sig[] = { 0x01, 0xa9, 0x2b, 0x43, 0xf5, 0x74, 0x21, 0xe5, 0x4d, 0x25, 0x28, 0xd3, 0x05, 0xe7, 0xd5, 0xaa, 0xc9, 0xa7, 0x08, 0xe7, 0x5a, 0x7d, 0x6f, 0xed, 0xb4, 0x79, 0x08, 0xa4, 0xe3, 0xed, 0xca, 0xbd, 0xd8, 0x36, 0xa2, 0xc4, 0xe8, 0x43, 0x6f, 0x3b, 0x7b, 0x64, 0x89, 0x52, 0x54, 0x53, 0x61, 0x74, 0xd8, 0x8c, 0x6d, 0xca, 0x14, 0x36, 0x99, 0x52, 0x2b, 0xc2, 0xdf, 0xde, 0xeb, 0xcb, 0xf3, 0x8e, 0xb9, 0x05, 0x00, 0x93, 0xb0, 0xb9, 0x9a, 0x89, 0xde, 0x72, 0xac, 0xa0, 0xc0, 0x3e, 0x12, 0x72, 0x4c, 0x2b, 0xe3, 0x23, 0x57, 0x7a, 0x46, 0x29, 0xcb, 0x47, 0xfd, 0xda, 0x5b, 0x12, 0xb6, 0x1a, 0xce, 0x0b, 0x9f, 0xdb, 0x97, 0x54, 0x9d, 0x3d, 0x2a, 0x1d, 0xac, 0x15, 0xda, 0x66, 0xba, 0x63, 0x89, 0xee, 0x54, 0xcb, 0xc8, 0x2c, 0x99, 0x5b, 0x9f, 0x3a, 0xa3, 0xae, 0x84, 0x74, 0xf4, 0xbb, 0x4b, 0x52, 0xda, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10900 = { .name = "ecdsa_secp521r1_sha512_10900", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10900_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10900_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10900_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 344 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10901 for ECDSA, tcId is 345 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10901_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10901_msg[] = { 0x31, 0x34, 0x32, 0x36, 0x30, 0x32, 0x30, 0x35, 0x35, 0x34, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10901_sig[] = { 0x00, 0xa0, 0x40, 0x0f, 0x25, 0x51, 0x74, 0xff, 0xb8, 0x54, 0x8c, 0x29, 0xf5, 0xfa, 0xa7, 0x0e, 0x80, 0x6b, 0xb6, 0xf6, 0xca, 0x08, 0xa0, 0x87, 0x53, 0xc8, 0x5c, 0x5d, 0x14, 0x5a, 0x55, 0x5c, 0xc8, 0xe2, 0xdf, 0x28, 0x5a, 0xf9, 0x98, 0x5f, 0x2e, 0x72, 0x9d, 0x4a, 0x99, 0xa7, 0x34, 0xb7, 0xe7, 0xfc, 0x95, 0x56, 0x0d, 0x54, 0x6a, 0x06, 0x7f, 0xda, 0x03, 0x52, 0x9f, 0x56, 0xb2, 0xfe, 0x66, 0xbc, 0x00, 0xd7, 0xfb, 0x60, 0x27, 0x1d, 0x22, 0xec, 0xb5, 0xd8, 0xec, 0x90, 0x4a, 0x9d, 0xf1, 0xa4, 0x16, 0xbe, 0x70, 0x6c, 0xe5, 0x39, 0xe3, 0x46, 0x50, 0xb8, 0xfc, 0x51, 0x4d, 0x1d, 0xd7, 0xaf, 0xeb, 0xc1, 0x34, 0x4c, 0x0c, 0x68, 0xc5, 0x33, 0xc5, 0xb2, 0x0e, 0xe2, 0x49, 0xa7, 0x7c, 0x07, 0x52, 0x93, 0xb2, 0xd7, 0xef, 0xc8, 0x73, 0x1c, 0x2e, 0x36, 0x19, 0xbe, 0x59, 0xda, 0x87, 0x1b, 0xb0, 0x83, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10901 = { .name = "ecdsa_secp521r1_sha512_10901", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10901_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10901_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10901_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 345 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10902 for ECDSA, tcId is 346 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10902_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10902_msg[] = { 0x31, 0x39, 0x39, 0x33, 0x38, 0x33, 0x35, 0x32, 0x38, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10902_sig[] = { 0x01, 0x92, 0x07, 0xc7, 0xb6, 0x45, 0xaa, 0x45, 0xc2, 0x72, 0x23, 0x31, 0xf4, 0x6e, 0x09, 0x4f, 0x2e, 0xb0, 0x05, 0x20, 0x75, 0xb8, 0xac, 0x94, 0x14, 0xad, 0x77, 0xba, 0xaf, 0xd0, 0x1d, 0x4d, 0x1f, 0xdc, 0x68, 0x34, 0x41, 0x36, 0xfb, 0xce, 0x01, 0xed, 0xfa, 0x56, 0x27, 0xbf, 0xb8, 0xf3, 0xc1, 0x28, 0xab, 0xb6, 0x10, 0x72, 0xc7, 0x48, 0x02, 0x19, 0x2e, 0x89, 0x13, 0x7c, 0x68, 0xd0, 0xcc, 0x31, 0x00, 0xff, 0x15, 0xb0, 0x21, 0x8f, 0x81, 0xf0, 0xa8, 0x48, 0x74, 0x2f, 0x68, 0x3c, 0xb4, 0xd1, 0xb7, 0xc5, 0x17, 0xef, 0xdb, 0x8f, 0xcf, 0x8a, 0xc6, 0xa3, 0x5e, 0x49, 0x71, 0xb3, 0x55, 0x36, 0x85, 0x1e, 0xd6, 0x8d, 0xe4, 0x0a, 0x6e, 0x1a, 0x4a, 0x23, 0xbd, 0xdb, 0x5b, 0x42, 0xef, 0xca, 0x23, 0xb9, 0x1e, 0x91, 0x95, 0x9a, 0x4f, 0x7e, 0x2a, 0xfa, 0x19, 0x67, 0x79, 0xc9, 0x6c, 0x6c, 0x65, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10902 = { .name = "ecdsa_secp521r1_sha512_10902", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10902_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10902_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10902_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 346 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10903 for ECDSA, tcId is 347 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10903_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10903_msg[] = { 0x34, 0x32, 0x39, 0x32, 0x31, 0x35, 0x33, 0x35, 0x32, 0x33, }; static const unsigned char ecdsa_secp521r1_sha512_10903_sig[] = { 0x00, 0xaa, 0xf1, 0x19, 0x70, 0x2b, 0x99, 0x85, 0x35, 0x4b, 0xbe, 0x3f, 0x6b, 0x6c, 0xda, 0x8c, 0x46, 0x15, 0x1a, 0xf4, 0x20, 0x25, 0x46, 0xdf, 0xbe, 0x04, 0xd5, 0xf0, 0xff, 0xd1, 0x8e, 0xbe, 0x7b, 0x29, 0xd6, 0x16, 0xf1, 0xc4, 0x03, 0x76, 0xa4, 0x12, 0xa5, 0x2f, 0x42, 0x04, 0xb5, 0xa1, 0x3e, 0x7f, 0x3e, 0x43, 0x04, 0xea, 0xd5, 0x66, 0xfc, 0x41, 0xbf, 0x4b, 0x5f, 0xc0, 0xb8, 0x4c, 0x8a, 0x2d, 0x00, 0xd5, 0x99, 0xde, 0xaf, 0xd4, 0xfa, 0x23, 0x68, 0xcd, 0x07, 0x2b, 0x85, 0x4a, 0x3d, 0x53, 0x42, 0x5d, 0x06, 0xad, 0xf3, 0x57, 0x3e, 0x88, 0x6b, 0x81, 0x24, 0x8a, 0x73, 0x28, 0xa5, 0x46, 0xdd, 0xc4, 0x1c, 0xae, 0xd3, 0x8c, 0x6b, 0x1f, 0xfe, 0xae, 0xc9, 0xa9, 0x8c, 0x94, 0x09, 0x05, 0xcb, 0xff, 0xa8, 0x7b, 0x93, 0x6d, 0xa9, 0x80, 0xd4, 0xa9, 0x00, 0x3d, 0xa4, 0x1e, 0x0c, 0x59, 0xc9, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10903 = { .name = "ecdsa_secp521r1_sha512_10903", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10903_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10903_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10903_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 347 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10904 for ECDSA, tcId is 348 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10904_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10904_msg[] = { 0x34, 0x34, 0x35, 0x39, 0x39, 0x30, 0x31, 0x34, 0x39, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_10904_sig[] = { 0x00, 0x6c, 0x09, 0xa5, 0x9e, 0x71, 0xcf, 0x34, 0xf9, 0x83, 0xf7, 0x5d, 0xbb, 0x47, 0x24, 0xc4, 0x82, 0x8a, 0x93, 0x02, 0x1c, 0xee, 0x8f, 0xd7, 0xd9, 0x2a, 0xf6, 0x94, 0x1c, 0xa8, 0xef, 0xc9, 0xc5, 0xdd, 0xda, 0x7c, 0x49, 0xa0, 0xe1, 0x77, 0x72, 0x25, 0x78, 0x2e, 0x09, 0x31, 0x3e, 0x30, 0x91, 0xf0, 0x56, 0x12, 0x2e, 0x58, 0x5c, 0x4e, 0xaa, 0x68, 0x9f, 0xb2, 0xfd, 0xb1, 0xcb, 0x78, 0x48, 0xd8, 0x01, 0x9f, 0x0c, 0x5f, 0xf6, 0xb4, 0x63, 0x8f, 0x4c, 0x33, 0x91, 0x6d, 0xb7, 0x6f, 0x9d, 0x07, 0x8b, 0xfa, 0x8f, 0x9e, 0x25, 0xae, 0x00, 0x34, 0x8e, 0x46, 0xbb, 0x32, 0xd7, 0x77, 0xaa, 0x26, 0x15, 0x5b, 0x82, 0xea, 0x73, 0xa9, 0xe4, 0xe2, 0xf2, 0x1f, 0x6a, 0x65, 0xc7, 0x3e, 0xd6, 0xc6, 0xab, 0x21, 0x01, 0xce, 0xf3, 0x52, 0x4d, 0x45, 0xb9, 0xfc, 0x6e, 0xa1, 0x29, 0x2f, 0x19, 0x86, 0xac, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10904 = { .name = "ecdsa_secp521r1_sha512_10904", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10904_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10904_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10904_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 348 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10905 for ECDSA, tcId is 349 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10905_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10905_msg[] = { 0x31, 0x33, 0x39, 0x33, 0x39, 0x37, 0x31, 0x31, 0x37, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10905_sig[] = { 0x01, 0x4e, 0x79, 0x1c, 0x42, 0xf3, 0x99, 0x84, 0x58, 0xc5, 0xe1, 0x7f, 0x89, 0x5d, 0x25, 0xc8, 0x5c, 0xb4, 0x19, 0x19, 0x5d, 0x65, 0xe5, 0xa0, 0xb9, 0xa4, 0x2c, 0xf1, 0x3d, 0xdd, 0x36, 0x95, 0x9c, 0x73, 0x46, 0x0f, 0x54, 0xaa, 0x84, 0x0d, 0x22, 0x54, 0x35, 0x5c, 0x6a, 0xc6, 0x26, 0xf4, 0x40, 0xcb, 0x3a, 0x84, 0xfb, 0xa6, 0x32, 0x26, 0x2c, 0x9d, 0xc5, 0xca, 0xb3, 0x1b, 0xe7, 0xda, 0x10, 0x6b, 0x00, 0xab, 0xb9, 0x7b, 0x68, 0x2f, 0x01, 0xf4, 0x51, 0x68, 0x40, 0x36, 0x13, 0xa7, 0xe2, 0xff, 0x82, 0xbb, 0x4a, 0x9f, 0xc2, 0x09, 0x52, 0xa3, 0x5d, 0x93, 0x54, 0x28, 0xf7, 0x1d, 0xdc, 0xc7, 0x99, 0xc6, 0xd9, 0x08, 0x5f, 0xe3, 0x23, 0x0d, 0x72, 0x26, 0x1d, 0x73, 0xcd, 0x08, 0x2e, 0x81, 0x08, 0x52, 0x3d, 0xa7, 0xba, 0x0b, 0x16, 0x91, 0xad, 0x6e, 0xa6, 0x3f, 0x5f, 0x4e, 0x8e, 0x89, 0x09, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10905 = { .name = "ecdsa_secp521r1_sha512_10905", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10905_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10905_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10905_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 349 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10906 for ECDSA, tcId is 350 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10906_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10906_msg[] = { 0x32, 0x33, 0x39, 0x30, 0x36, 0x39, 0x36, 0x34, 0x39, 0x35, }; static const unsigned char ecdsa_secp521r1_sha512_10906_sig[] = { 0x01, 0x3d, 0xed, 0x35, 0xdd, 0xff, 0x2f, 0x97, 0x78, 0x0b, 0xbc, 0x60, 0xb8, 0xce, 0xc8, 0x98, 0x55, 0xa3, 0x51, 0x83, 0xa4, 0x8f, 0x8f, 0xa6, 0xbb, 0xdc, 0x18, 0x39, 0x94, 0xbf, 0x89, 0x02, 0x11, 0x18, 0xcc, 0x01, 0x96, 0x29, 0xdf, 0x72, 0x11, 0x2b, 0x2c, 0x52, 0x9c, 0x02, 0x3e, 0x7a, 0x5c, 0xfc, 0xe2, 0x53, 0xf7, 0xfd, 0xb4, 0x91, 0x05, 0xd2, 0x38, 0x68, 0x0b, 0x64, 0x27, 0x5a, 0x21, 0x3c, 0x00, 0x9c, 0x92, 0xe7, 0xa0, 0xf7, 0x16, 0x08, 0xe8, 0xd8, 0xcf, 0xab, 0x3f, 0x85, 0x0f, 0x7f, 0xda, 0x1a, 0x1a, 0x1d, 0x05, 0x6e, 0x72, 0x25, 0x44, 0x69, 0xaf, 0xe5, 0xce, 0xec, 0x3c, 0x71, 0x8e, 0x6a, 0x46, 0x2e, 0x13, 0x46, 0x94, 0x1e, 0xb0, 0x8c, 0x10, 0x55, 0x01, 0x64, 0x75, 0x02, 0xc1, 0xa8, 0x10, 0xa2, 0x9d, 0xf8, 0xb2, 0x08, 0xda, 0x6a, 0x5b, 0x29, 0x6b, 0x2b, 0xd1, 0xe9, 0x81, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10906 = { .name = "ecdsa_secp521r1_sha512_10906", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10906_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10906_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10906_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 350 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10907 for ECDSA, tcId is 351 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10907_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10907_msg[] = { 0x31, 0x31, 0x34, 0x34, 0x36, 0x30, 0x35, 0x36, 0x32, 0x36, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10907_sig[] = { 0x01, 0xd0, 0xd2, 0x97, 0x56, 0xeb, 0xff, 0x02, 0xb7, 0x16, 0x74, 0xfa, 0x4e, 0xae, 0x37, 0x55, 0x7c, 0xcd, 0x51, 0xa0, 0x36, 0xfb, 0x1e, 0xb0, 0xb7, 0x12, 0x1b, 0x40, 0x5e, 0x7f, 0xab, 0xd6, 0x05, 0x92, 0x92, 0x7d, 0x80, 0x5b, 0x75, 0x81, 0x5a, 0xf1, 0xbc, 0xa6, 0xe9, 0xd6, 0xc5, 0x48, 0x42, 0x25, 0xbd, 0xd0, 0xec, 0x7a, 0x40, 0x73, 0x5d, 0xa9, 0x72, 0xfd, 0x5f, 0xf6, 0x45, 0xd8, 0x6f, 0x1d, 0x00, 0x8b, 0x9f, 0xe5, 0x53, 0x57, 0xdc, 0x11, 0x80, 0x70, 0xcf, 0x89, 0x89, 0x73, 0xa6, 0x4e, 0x75, 0x54, 0xb7, 0x34, 0xe9, 0x00, 0xc6, 0x75, 0x54, 0x1e, 0x20, 0x33, 0x2a, 0x26, 0x0c, 0xa5, 0x1a, 0x23, 0x24, 0x8d, 0x9b, 0x8f, 0x47, 0xde, 0xd8, 0x11, 0xcf, 0xce, 0x55, 0x6a, 0x06, 0xa7, 0x1b, 0xa5, 0xdc, 0x5b, 0x87, 0x30, 0x75, 0xf2, 0x64, 0xa6, 0x84, 0x3e, 0x67, 0x5c, 0xaf, 0x06, 0xa5, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10907 = { .name = "ecdsa_secp521r1_sha512_10907", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10907_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10907_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10907_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 351 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10908 for ECDSA, tcId is 352 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10908_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10908_msg[] = { 0x36, 0x38, 0x35, 0x30, 0x30, 0x34, 0x37, 0x35, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10908_sig[] = { 0x01, 0x65, 0xfb, 0x99, 0x3f, 0x39, 0xd3, 0x50, 0xed, 0x60, 0xc8, 0x48, 0x3d, 0xd6, 0xe4, 0xe6, 0x73, 0x65, 0x91, 0xde, 0xa9, 0x74, 0xec, 0xd8, 0xab, 0x02, 0x7d, 0x38, 0x39, 0xb7, 0x52, 0x32, 0x2e, 0xe2, 0x20, 0xd4, 0x0b, 0xb6, 0xfc, 0x0b, 0x0d, 0x5a, 0x8c, 0x42, 0x92, 0x8b, 0xde, 0x50, 0xf6, 0x59, 0xb1, 0x8f, 0x51, 0xf4, 0x2f, 0xb2, 0xb1, 0xaa, 0x45, 0x83, 0x89, 0x2a, 0x91, 0x14, 0xa0, 0xc3, 0x00, 0xa8, 0x81, 0x6c, 0x09, 0xd4, 0x71, 0x38, 0xbf, 0x66, 0x2d, 0xa4, 0xba, 0x25, 0xca, 0xf4, 0x4e, 0x24, 0x18, 0x56, 0x96, 0xd4, 0x91, 0x4a, 0x7d, 0xe2, 0xb2, 0x53, 0x5f, 0x73, 0xb9, 0xaf, 0xbd, 0x3f, 0xfa, 0x9c, 0xb0, 0xa8, 0x6a, 0x11, 0x5e, 0x4d, 0x9a, 0xc5, 0xbe, 0x48, 0xcf, 0x7e, 0x8f, 0xe2, 0x76, 0x46, 0x6a, 0xbd, 0xf1, 0x71, 0x27, 0xbc, 0xc7, 0xaa, 0xf4, 0xd0, 0x96, 0x00, 0x8c, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10908 = { .name = "ecdsa_secp521r1_sha512_10908", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10908_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10908_msg, .msglen = 9, .sig = ecdsa_secp521r1_sha512_10908_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 352 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10909 for ECDSA, tcId is 353 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10909_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10909_msg[] = { 0x32, 0x32, 0x32, 0x30, 0x35, 0x33, 0x36, 0x30, 0x36, 0x31, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10909_sig[] = { 0x00, 0x0b, 0x90, 0x1c, 0x88, 0xea, 0x69, 0x9e, 0x71, 0x5f, 0x6d, 0xb8, 0x64, 0xe2, 0x3a, 0x67, 0x6e, 0x7f, 0x7f, 0x24, 0x15, 0xac, 0x1f, 0x85, 0x0f, 0x2d, 0xde, 0x1a, 0xd0, 0xd3, 0xf9, 0xc9, 0x2e, 0x8c, 0x5d, 0xe6, 0x6d, 0x45, 0x17, 0x4d, 0x61, 0x99, 0x55, 0xfa, 0xe4, 0xb0, 0xdf, 0xeb, 0xe4, 0x9c, 0x58, 0x35, 0x06, 0x48, 0x1d, 0x28, 0xd3, 0x0c, 0xbf, 0x58, 0xe2, 0xac, 0x49, 0xf3, 0x70, 0xc2, 0x01, 0x44, 0xc9, 0x7b, 0x68, 0x8b, 0x9e, 0xcc, 0x07, 0xb8, 0x4c, 0x68, 0x09, 0x52, 0x67, 0xe1, 0x7e, 0x48, 0x23, 0x29, 0x22, 0x75, 0x66, 0x09, 0xe9, 0x85, 0x9d, 0x18, 0xd2, 0xeb, 0x78, 0x44, 0xec, 0x92, 0x51, 0x50, 0xc3, 0x9f, 0x2b, 0x3a, 0x25, 0x5c, 0x88, 0x2b, 0xe7, 0x05, 0xe0, 0xa8, 0xe3, 0x0e, 0x68, 0xe4, 0x9f, 0xe7, 0x91, 0x4d, 0xbc, 0xc3, 0xcc, 0xfb, 0xc1, 0xd4, 0x67, 0x05, 0x0f, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10909 = { .name = "ecdsa_secp521r1_sha512_10909", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10909_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10909_msg, .msglen = 11, .sig = ecdsa_secp521r1_sha512_10909_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 353 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10910 for ECDSA, tcId is 354 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10910_pubkey[] = { 0x00, 0x5c, 0x64, 0x57, 0xec, 0x08, 0x8d, 0x53, 0x2f, 0x48, 0x20, 0x93, 0x96, 0x5a, 0xe5, 0x3c, 0xcd, 0x07, 0xe5, 0x56, 0xed, 0x59, 0xe2, 0xaf, 0x94, 0x5c, 0xd8, 0xc7, 0xa9, 0x5c, 0x1c, 0x64, 0x4f, 0x8a, 0x56, 0xa8, 0xa8, 0xa3, 0xcd, 0x77, 0x39, 0x2d, 0xdd, 0x86, 0x1e, 0x8a, 0x92, 0x4d, 0xac, 0x99, 0xc6, 0x90, 0x69, 0x09, 0x3b, 0xd5, 0x2a, 0x52, 0xfa, 0x6c, 0x56, 0x00, 0x4a, 0x07, 0x45, 0x08, 0x00, 0x78, 0x78, 0xd6, 0xd4, 0x2e, 0x4b, 0x4d, 0xd1, 0xe9, 0xc0, 0x69, 0x6c, 0xb3, 0xe1, 0x9f, 0x63, 0x03, 0x3c, 0x3d, 0xb4, 0xe6, 0x0d, 0x47, 0x32, 0x59, 0xb3, 0xeb, 0xe0, 0x79, 0xaa, 0xf0, 0xa9, 0x86, 0xee, 0x61, 0x77, 0xf8, 0x21, 0x7a, 0x78, 0xc6, 0x8b, 0x81, 0x3f, 0x7e, 0x14, 0x9a, 0x4e, 0x56, 0xfd, 0x95, 0x62, 0xc0, 0x7f, 0xed, 0x3d, 0x89, 0x59, 0x42, 0xd7, 0xd1, 0x01, 0xcb, 0x83, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_10910_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x36, 0x36, 0x35, 0x31, 0x32, 0x34, }; static const unsigned char ecdsa_secp521r1_sha512_10910_sig[] = { 0x00, 0xab, 0xbd, 0x9e, 0x77, 0xef, 0x1e, 0x2a, 0x36, 0xc6, 0xb0, 0x6f, 0x06, 0x3d, 0x93, 0xef, 0xfb, 0x8e, 0x85, 0x23, 0x87, 0xa9, 0x4b, 0xfd, 0xf8, 0x35, 0x9b, 0x5c, 0x18, 0x70, 0x8f, 0x90, 0xd9, 0xf4, 0xe9, 0x74, 0x9f, 0xd4, 0x53, 0x47, 0xf6, 0x37, 0x54, 0x6b, 0x08, 0x73, 0x37, 0x89, 0xc9, 0x88, 0xfd, 0xa4, 0xf0, 0x30, 0x95, 0x51, 0xbd, 0xe8, 0x13, 0xa0, 0xbb, 0x1a, 0x23, 0x2a, 0xde, 0xe1, 0x01, 0x91, 0x16, 0x5d, 0x58, 0xd1, 0x53, 0xfe, 0xc6, 0x8f, 0x5c, 0xc8, 0x3b, 0xcf, 0x58, 0x91, 0xe2, 0xe0, 0xca, 0x96, 0x81, 0x20, 0x48, 0x76, 0xe8, 0x72, 0x45, 0x3e, 0x9e, 0xbd, 0x45, 0x87, 0x0b, 0x68, 0x78, 0xee, 0x43, 0x7e, 0x4d, 0x83, 0x3c, 0x6e, 0xc5, 0x43, 0x37, 0xb7, 0x79, 0xac, 0xbf, 0x9f, 0x82, 0x02, 0xdf, 0x51, 0x0d, 0x26, 0x9a, 0x71, 0x0d, 0x0c, 0x43, 0xe4, 0xe0, 0x7b, 0x04, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10910 = { .name = "ecdsa_secp521r1_sha512_10910", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10910_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10910_msg, .msglen = 10, .sig = ecdsa_secp521r1_sha512_10910_sig, .siglen = 132, .result = 1, .comment = "special case hash, tcId is 354 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10911 for ECDSA, tcId is 355 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10911_pubkey[] = { 0x00, 0x49, 0x1c, 0xd6, 0xc5, 0xf9, 0x3b, 0x74, 0x14, 0xd6, 0xd4, 0x5c, 0xfe, 0x3d, 0x26, 0x4b, 0xd0, 0x77, 0xfc, 0x44, 0x27, 0xa4, 0xb0, 0xaf, 0xed, 0xe7, 0x6c, 0xac, 0x53, 0x7a, 0x7c, 0xa5, 0xee, 0x2c, 0x44, 0x56, 0x42, 0x58, 0x26, 0x0f, 0x76, 0x91, 0xb8, 0x1f, 0xdf, 0xec, 0xeb, 0xfd, 0x03, 0xba, 0x67, 0x22, 0x77, 0x87, 0x5c, 0x5b, 0x31, 0x1e, 0xa9, 0x20, 0xe7, 0x4f, 0xb3, 0x97, 0x8a, 0xf5, 0x01, 0x44, 0xa3, 0x53, 0xa2, 0x51, 0xb4, 0x29, 0x78, 0x94, 0x16, 0x1b, 0xae, 0x12, 0xd1, 0x6a, 0x89, 0xc3, 0x3b, 0x71, 0x9f, 0x90, 0x4c, 0xfc, 0xcc, 0x27, 0x7d, 0xf7, 0x8c, 0xea, 0x53, 0x79, 0x19, 0x86, 0x42, 0xfd, 0x54, 0x9d, 0xf9, 0x19, 0x90, 0x4d, 0xc0, 0xcf, 0x36, 0x62, 0xee, 0xab, 0x01, 0xef, 0x11, 0xb8, 0xe3, 0xcb, 0x49, 0xb5, 0x1b, 0x85, 0x3d, 0x98, 0xf0, 0x42, 0x60, 0x0c, 0x09, 0x97, }; static const unsigned char ecdsa_secp521r1_sha512_10911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10911_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xae, 0x79, 0x78, 0x7c, 0x40, 0xd0, 0x69, 0x94, 0x80, 0x33, 0xfe, 0xb7, 0x08, 0xf6, 0x5a, 0x2f, 0xc4, 0x4a, 0x36, 0x47, 0x76, 0x63, 0xb8, 0x51, 0x44, 0x90, 0x48, 0xe1, 0x6e, 0xc7, 0x9b, 0xf5, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10911 = { .name = "ecdsa_secp521r1_sha512_10911", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10911_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10911_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10911_sig, .siglen = 132, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 355 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10912 for ECDSA, tcId is 356 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10912_pubkey[] = { 0x00, 0x49, 0x1c, 0xd6, 0xc5, 0xf9, 0x3b, 0x74, 0x14, 0xd6, 0xd4, 0x5c, 0xfe, 0x3d, 0x26, 0x4b, 0xd0, 0x77, 0xfc, 0x44, 0x27, 0xa4, 0xb0, 0xaf, 0xed, 0xe7, 0x6c, 0xac, 0x53, 0x7a, 0x7c, 0xa5, 0xee, 0x2c, 0x44, 0x56, 0x42, 0x58, 0x26, 0x0f, 0x76, 0x91, 0xb8, 0x1f, 0xdf, 0xec, 0xeb, 0xfd, 0x03, 0xba, 0x67, 0x22, 0x77, 0x87, 0x5c, 0x5b, 0x31, 0x1e, 0xa9, 0x20, 0xe7, 0x4f, 0xb3, 0x97, 0x8a, 0xf5, 0x01, 0x44, 0xa3, 0x53, 0xa2, 0x51, 0xb4, 0x29, 0x78, 0x94, 0x16, 0x1b, 0xae, 0x12, 0xd1, 0x6a, 0x89, 0xc3, 0x3b, 0x71, 0x9f, 0x90, 0x4c, 0xfc, 0xcc, 0x27, 0x7d, 0xf7, 0x8c, 0xea, 0x53, 0x79, 0x19, 0x86, 0x42, 0xfd, 0x54, 0x9d, 0xf9, 0x19, 0x90, 0x4d, 0xc0, 0xcf, 0x36, 0x62, 0xee, 0xab, 0x01, 0xef, 0x11, 0xb8, 0xe3, 0xcb, 0x49, 0xb5, 0x1b, 0x85, 0x3d, 0x98, 0xf0, 0x42, 0x60, 0x0c, 0x09, 0x97, }; static const unsigned char ecdsa_secp521r1_sha512_10912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10912_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10912 = { .name = "ecdsa_secp521r1_sha512_10912", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10912_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10912_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10912_sig, .siglen = 132, .result = -1, .comment = "r too large, tcId is 356 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10913 for ECDSA, tcId is 357 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10913_pubkey[] = { 0x01, 0x5f, 0x28, 0x1d, 0xcd, 0xc9, 0x76, 0x64, 0x1c, 0xe0, 0x24, 0xdc, 0xa1, 0xea, 0xc8, 0xdd, 0xd7, 0xf9, 0x49, 0xe3, 0x29, 0x0d, 0x3b, 0x2d, 0xe1, 0x1c, 0x48, 0x73, 0xf3, 0x67, 0x6a, 0x06, 0xff, 0x9f, 0x70, 0x4c, 0x24, 0x81, 0x3b, 0xd8, 0xd6, 0x35, 0x28, 0xb2, 0xe8, 0x13, 0xf7, 0x8b, 0x86, 0x9f, 0xf3, 0x81, 0x12, 0x52, 0x7e, 0x79, 0xb3, 0x83, 0xa3, 0xbd, 0x52, 0x7b, 0xad, 0xb9, 0x29, 0xff, 0x01, 0x50, 0x2e, 0x4c, 0xc7, 0x03, 0x2d, 0x3e, 0xc3, 0x5b, 0x0f, 0x8d, 0x05, 0x40, 0x94, 0x38, 0xa8, 0x69, 0x66, 0xd6, 0x23, 0xf7, 0xa2, 0xf4, 0x32, 0xbf, 0x71, 0x2f, 0x76, 0xdc, 0x63, 0x45, 0x40, 0x5d, 0xfc, 0xfc, 0xdc, 0x36, 0xd4, 0x77, 0x83, 0x1d, 0x38, 0xee, 0xc6, 0x4e, 0xde, 0x7f, 0x4d, 0x39, 0xaa, 0x91, 0xbf, 0xfc, 0xc5, 0x6e, 0xc4, 0x24, 0x1c, 0xb0, 0x67, 0x35, 0xb2, 0x80, 0x9f, 0xbe, }; static const unsigned char ecdsa_secp521r1_sha512_10913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10913_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10913 = { .name = "ecdsa_secp521r1_sha512_10913", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10913_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10913_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10913_sig, .siglen = 132, .result = 1, .comment = "r,s are large, tcId is 357 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10914 for ECDSA, tcId is 358 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10914_pubkey[] = { 0x00, 0x33, 0x6d, 0x5d, 0x08, 0xfe, 0x75, 0xc5, 0x09, 0x46, 0xe6, 0xdd, 0xdd, 0x36, 0xc5, 0x50, 0xbb, 0x05, 0x4d, 0x99, 0x25, 0xc8, 0xf2, 0x54, 0xcf, 0xe1, 0xc3, 0x38, 0x8f, 0x72, 0x0b, 0x1d, 0x65, 0x00, 0xa9, 0x04, 0x12, 0xb0, 0x20, 0xb3, 0xdb, 0x59, 0x2b, 0x92, 0xab, 0x9f, 0x68, 0xf1, 0xc6, 0x93, 0xb8, 0xd1, 0x36, 0x53, 0x71, 0x63, 0x5e, 0x21, 0xbc, 0x43, 0xea, 0xad, 0xf8, 0x9e, 0x4e, 0x74, 0x01, 0xd4, 0x8d, 0x60, 0x31, 0x9d, 0xfd, 0x06, 0xf9, 0x35, 0xfc, 0x46, 0x48, 0x8c, 0x22, 0x9b, 0x61, 0x1e, 0xec, 0xd0, 0x38, 0x80, 0x4a, 0xe9, 0xf6, 0x81, 0xa0, 0x78, 0xdd, 0xe8, 0xed, 0x8f, 0x8e, 0x20, 0xad, 0x95, 0x04, 0xbc, 0xf3, 0xc2, 0x4a, 0x0b, 0x56, 0x6b, 0x1e, 0x85, 0xb2, 0xd3, 0xed, 0x0a, 0x12, 0x73, 0x29, 0x2f, 0xf5, 0xf8, 0x7b, 0xae, 0x5b, 0x3c, 0x87, 0x85, 0x7e, 0x67, 0xed, 0x81, }; static const unsigned char ecdsa_secp521r1_sha512_10914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10914_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x95, 0xe1, 0x9f, 0xd2, 0xb7, 0x55, 0xd6, 0x03, 0xbf, 0x99, 0x45, 0x62, 0xd9, 0xa1, 0x1f, 0x63, 0xcf, 0x4e, 0xad, 0xec, 0xbd, 0xc0, 0xec, 0xb5, 0xa3, 0x94, 0xe5, 0x45, 0x29, 0xe8, 0xda, 0x58, 0xa5, 0x27, 0xbc, 0x6d, 0x85, 0x72, 0x50, 0x43, 0x78, 0x63, 0x62, 0xab, 0x4d, 0xe6, 0xcb, 0xc7, 0xd8, 0x0e, 0x62, 0x5a, 0xe0, 0xa9, 0x88, 0x61, 0xae, 0xa1, 0xc7, 0xbf, 0x71, 0x09, 0xc9, 0x1f, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10914 = { .name = "ecdsa_secp521r1_sha512_10914", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10914_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10914_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10914_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 358 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10915 for ECDSA, tcId is 359 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10915_pubkey[] = { 0x00, 0x6f, 0x8f, 0xad, 0xed, 0xba, 0xe6, 0x37, 0x01, 0x07, 0x2c, 0x28, 0x7c, 0x63, 0x3f, 0x9c, 0x00, 0x52, 0xea, 0x1e, 0x6c, 0xd0, 0x0a, 0x84, 0x34, 0x2c, 0xc0, 0xf6, 0x26, 0x21, 0x00, 0x71, 0x57, 0x6a, 0xbf, 0xd0, 0x87, 0x56, 0x64, 0xb0, 0x74, 0x6c, 0xda, 0xf2, 0x74, 0x5e, 0xff, 0xc1, 0x8d, 0x94, 0x90, 0x5b, 0x0f, 0xc9, 0xd2, 0xca, 0xd4, 0xba, 0x37, 0x5c, 0x0e, 0xa2, 0x29, 0x8c, 0x8d, 0x1c, 0x01, 0x50, 0xd1, 0x28, 0xcb, 0x62, 0xa5, 0x27, 0xae, 0x6d, 0xf3, 0xe9, 0x2f, 0x1f, 0x28, 0x0e, 0xa3, 0x32, 0x48, 0x71, 0x1f, 0xfe, 0x4b, 0x35, 0xc1, 0xb1, 0x62, 0xa9, 0x50, 0x85, 0x76, 0x86, 0x01, 0x65, 0xe0, 0xdd, 0xc3, 0x61, 0xd9, 0x6f, 0xaf, 0xcd, 0x2f, 0xf8, 0x27, 0x76, 0xc7, 0x43, 0xb9, 0xcd, 0x68, 0x45, 0xdb, 0x61, 0xeb, 0x56, 0x73, 0x9f, 0x5c, 0x4e, 0xf5, 0x61, 0xe6, 0xc2, 0x0d, 0x8c, }; static const unsigned char ecdsa_secp521r1_sha512_10915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10915_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x15, 0x83, 0x76, 0x45, 0x58, 0x3a, 0x37, 0xa7, 0xa6, 0x65, 0xf9, 0x83, 0xc5, 0xe3, 0x47, 0xf6, 0x5d, 0xca, 0x47, 0x64, 0x7a, 0xa8, 0x0f, 0xd2, 0x49, 0x8a, 0x79, 0x1d, 0x44, 0xd9, 0xb2, 0x85, 0x0a, 0x15, 0x1a, 0x6e, 0x86, 0xfc, 0xe7, 0xd7, 0xbb, 0x81, 0x4e, 0x72, 0x4f, 0xf1, 0x1b, 0x9e, 0xf7, 0x26, 0xbf, 0x36, 0xc6, 0xe7, 0x54, 0x8c, 0x37, 0xf8, 0x2a, 0x24, 0x90, 0x28, 0x76, 0xee, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10915 = { .name = "ecdsa_secp521r1_sha512_10915", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10915_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10915_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10915_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 359 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10916 for ECDSA, tcId is 360 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10916_pubkey[] = { 0x00, 0x5e, 0x7e, 0xb6, 0xc4, 0xf4, 0x81, 0x83, 0x0a, 0xba, 0xad, 0x8a, 0x60, 0xdd, 0xb0, 0x98, 0x91, 0x16, 0x4e, 0xe4, 0x18, 0xea, 0x4c, 0xd2, 0x99, 0x50, 0x62, 0xe2, 0x27, 0xd3, 0x3c, 0x22, 0x9f, 0xb7, 0x37, 0xbf, 0x33, 0x07, 0x03, 0x09, 0x7d, 0x6b, 0x3b, 0x69, 0xa3, 0xf0, 0x9e, 0x79, 0xc9, 0xde, 0x0b, 0x40, 0x2b, 0xf8, 0x46, 0xdd, 0x26, 0xb5, 0xbb, 0x11, 0x91, 0xcf, 0xf8, 0x01, 0x35, 0x5d, 0x01, 0x78, 0x9c, 0x9a, 0xfd, 0xa5, 0x67, 0xe6, 0x1d, 0xe4, 0x14, 0x43, 0x7b, 0x0e, 0x93, 0xa1, 0x76, 0x11, 0xe6, 0xe7, 0x68, 0x53, 0x76, 0x2b, 0xc0, 0xaf, 0xf1, 0xe2, 0xbc, 0x9e, 0x46, 0xce, 0x12, 0x85, 0xb9, 0x31, 0x65, 0x1d, 0x71, 0x29, 0xb8, 0x5a, 0xef, 0x2c, 0x1f, 0xab, 0x17, 0x28, 0xe7, 0xeb, 0x44, 0x49, 0xb2, 0x95, 0x6d, 0xec, 0x33, 0xe6, 0xcd, 0x7c, 0x9b, 0xa1, 0x25, 0xc5, 0xcd, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_10916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10916_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10916 = { .name = "ecdsa_secp521r1_sha512_10916", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10916_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10916_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10916_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 360 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10917 for ECDSA, tcId is 361 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10917_pubkey[] = { 0x00, 0xb4, 0x20, 0xfb, 0x1f, 0xec, 0xdd, 0x9c, 0xc5, 0xea, 0x7d, 0x7c, 0x76, 0x17, 0xe7, 0x05, 0x38, 0xdb, 0x32, 0xe6, 0xd7, 0xa0, 0xad, 0x72, 0x2c, 0x63, 0x58, 0x0f, 0x1f, 0x6a, 0x1f, 0x55, 0x37, 0xeb, 0x50, 0x93, 0x0b, 0x90, 0xfd, 0x6f, 0xdd, 0x9a, 0xbd, 0x40, 0x01, 0x5f, 0x74, 0x6d, 0x2f, 0xd8, 0xad, 0xf9, 0x45, 0xa7, 0x56, 0x21, 0x40, 0x7e, 0xdb, 0x68, 0x63, 0x58, 0x8e, 0x41, 0x97, 0x9e, 0x00, 0x29, 0x51, 0x08, 0xa7, 0xe9, 0xd2, 0x19, 0x1a, 0x28, 0x7f, 0xd1, 0x60, 0xbd, 0x24, 0xf4, 0x98, 0x05, 0x5d, 0xc9, 0xba, 0xdb, 0xd6, 0x1c, 0x6a, 0x89, 0xfe, 0xde, 0x27, 0xb4, 0xf9, 0xd4, 0x79, 0xd8, 0x6a, 0x20, 0xb6, 0xdc, 0x07, 0xc9, 0x0f, 0x00, 0x8e, 0xbe, 0x68, 0xa0, 0xe0, 0xcc, 0x15, 0xa4, 0xa0, 0x3b, 0x8c, 0xf9, 0x90, 0xe4, 0xff, 0x7e, 0xd6, 0xe3, 0x89, 0x2b, 0x21, 0xc5, 0x21, 0x53, }; static const unsigned char ecdsa_secp521r1_sha512_10917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10917_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10917 = { .name = "ecdsa_secp521r1_sha512_10917", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10917_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10917_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10917_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 361 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10918 for ECDSA, tcId is 362 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10918_pubkey[] = { 0x00, 0x32, 0xb9, 0xa1, 0x7c, 0x20, 0x1a, 0xec, 0x34, 0xd2, 0x9b, 0x8c, 0x27, 0x64, 0xe7, 0xc7, 0xf6, 0xae, 0xef, 0x10, 0xfb, 0x61, 0xbf, 0x98, 0x37, 0x11, 0x7f, 0xad, 0x87, 0x9f, 0x8c, 0x6a, 0x22, 0xa3, 0x00, 0x00, 0x6d, 0x20, 0x18, 0xcf, 0x42, 0xb2, 0x58, 0x98, 0xff, 0xc9, 0xa1, 0xbf, 0x50, 0x73, 0x52, 0xe5, 0x9e, 0x6a, 0x52, 0xe6, 0x27, 0xcd, 0xa1, 0x60, 0xe1, 0x7e, 0xa2, 0xf4, 0x60, 0x05, 0x00, 0x31, 0x7a, 0x89, 0x89, 0x9b, 0x7c, 0xb3, 0xa0, 0xd3, 0x3e, 0xaf, 0xa0, 0x2b, 0x01, 0x37, 0xa0, 0xfb, 0x1b, 0x05, 0x10, 0x2b, 0x22, 0xb6, 0x76, 0xf3, 0x5b, 0x9f, 0xf6, 0xc0, 0x50, 0xdd, 0xee, 0x9f, 0x18, 0x56, 0x09, 0xff, 0xb7, 0xf5, 0x16, 0x5a, 0x76, 0x9e, 0x44, 0x07, 0x92, 0xb7, 0x50, 0x44, 0xa4, 0x3e, 0x83, 0x86, 0x90, 0xd1, 0x3f, 0x88, 0x4a, 0xaa, 0xe8, 0x88, 0xbf, 0x5f, 0x86, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha512_10918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10918_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10918 = { .name = "ecdsa_secp521r1_sha512_10918", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10918_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10918_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10918_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 362 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10919 for ECDSA, tcId is 363 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10919_pubkey[] = { 0x00, 0x32, 0xb9, 0xa1, 0x7c, 0x20, 0x1a, 0xec, 0x34, 0xd2, 0x9b, 0x8c, 0x27, 0x64, 0xe7, 0xc7, 0xf6, 0xae, 0xef, 0x10, 0xfb, 0x61, 0xbf, 0x98, 0x37, 0x11, 0x7f, 0xad, 0x87, 0x9f, 0x8c, 0x6a, 0x22, 0xa3, 0x00, 0x00, 0x6d, 0x20, 0x18, 0xcf, 0x42, 0xb2, 0x58, 0x98, 0xff, 0xc9, 0xa1, 0xbf, 0x50, 0x73, 0x52, 0xe5, 0x9e, 0x6a, 0x52, 0xe6, 0x27, 0xcd, 0xa1, 0x60, 0xe1, 0x7e, 0xa2, 0xf4, 0x60, 0x05, 0x00, 0x31, 0x7a, 0x89, 0x89, 0x9b, 0x7c, 0xb3, 0xa0, 0xd3, 0x3e, 0xaf, 0xa0, 0x2b, 0x01, 0x37, 0xa0, 0xfb, 0x1b, 0x05, 0x10, 0x2b, 0x22, 0xb6, 0x76, 0xf3, 0x5b, 0x9f, 0xf6, 0xc0, 0x50, 0xdd, 0xee, 0x9f, 0x18, 0x56, 0x09, 0xff, 0xb7, 0xf5, 0x16, 0x5a, 0x76, 0x9e, 0x44, 0x07, 0x92, 0xb7, 0x50, 0x44, 0xa4, 0x3e, 0x83, 0x86, 0x90, 0xd1, 0x3f, 0x88, 0x4a, 0xaa, 0xe8, 0x88, 0xbf, 0x5f, 0x86, 0xf0, }; static const unsigned char ecdsa_secp521r1_sha512_10919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10919_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10919 = { .name = "ecdsa_secp521r1_sha512_10919", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10919_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10919_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10919_sig, .siglen = 132, .result = -1, .comment = "r is larger than n, tcId is 363 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10920 for ECDSA, tcId is 364 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10920_pubkey[] = { 0x00, 0x67, 0xdd, 0x45, 0x6b, 0x52, 0xf8, 0x2a, 0x5d, 0x4c, 0x4a, 0x71, 0xb3, 0xea, 0x93, 0x02, 0xf6, 0x2a, 0x85, 0x2d, 0xdc, 0x04, 0xad, 0x25, 0xb6, 0x2f, 0xef, 0x1d, 0xdf, 0x65, 0x73, 0x74, 0xfb, 0x4e, 0x80, 0x67, 0x9d, 0xdf, 0x42, 0xd2, 0x12, 0xf0, 0x71, 0x1d, 0xb3, 0x2b, 0x62, 0x6d, 0x85, 0x93, 0xbd, 0x70, 0x89, 0x2e, 0x93, 0xed, 0x0a, 0xdb, 0x27, 0x31, 0x57, 0xb6, 0xdf, 0x18, 0x79, 0x38, 0x01, 0x4d, 0x2c, 0x78, 0x50, 0x9f, 0x3b, 0xd6, 0xf7, 0xd0, 0xfb, 0xa4, 0xa9, 0x0c, 0xb4, 0x56, 0x28, 0x6e, 0x26, 0x7f, 0x5d, 0xd9, 0xd9, 0x67, 0x84, 0x2a, 0x60, 0x86, 0x88, 0x4d, 0x66, 0xc7, 0xb2, 0xa9, 0x32, 0x83, 0x34, 0x70, 0xc7, 0x21, 0xa4, 0xa7, 0x28, 0xcd, 0x84, 0x86, 0xd1, 0x53, 0x14, 0x23, 0x2d, 0x80, 0x1f, 0x17, 0xe3, 0xa6, 0xfd, 0x70, 0x68, 0xbd, 0xeb, 0xac, 0xdf, 0x82, 0xc0, 0xb4, }; static const unsigned char ecdsa_secp521r1_sha512_10920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10920_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x4b, 0x3a, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10920 = { .name = "ecdsa_secp521r1_sha512_10920", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10920_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10920_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10920_sig, .siglen = 132, .result = -1, .comment = "s is larger than n, tcId is 364 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10921 for ECDSA, tcId is 365 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10921_pubkey[] = { 0x00, 0x68, 0xd7, 0xb5, 0x18, 0x21, 0x47, 0x66, 0xac, 0x73, 0x4a, 0x74, 0x61, 0xd4, 0x99, 0x35, 0x24, 0x44, 0x37, 0x7d, 0x50, 0xaf, 0x42, 0xa1, 0xbb, 0xdb, 0x7f, 0x00, 0x32, 0x06, 0x5e, 0xe6, 0xdc, 0x34, 0x1c, 0xcf, 0x23, 0x1a, 0xf6, 0x52, 0x50, 0xe7, 0xd1, 0x3a, 0x80, 0x73, 0x3a, 0xbe, 0xbf, 0xf5, 0x59, 0x89, 0x1d, 0x42, 0x11, 0xd6, 0xc2, 0x8c, 0xf9, 0x52, 0xc9, 0x22, 0x23, 0x03, 0xb5, 0x3b, 0x00, 0xa2, 0xf3, 0xd7, 0xe1, 0x4d, 0x9d, 0x8f, 0xab, 0xe1, 0x93, 0x9d, 0x66, 0x4e, 0x46, 0x15, 0xc6, 0xe2, 0x4f, 0x54, 0x90, 0xc8, 0x15, 0xc7, 0x65, 0x1c, 0xcf, 0x6c, 0xc6, 0x52, 0x52, 0xf8, 0x8b, 0xcf, 0xd3, 0xb0, 0x7f, 0xbd, 0xba, 0xa0, 0xba, 0x00, 0x44, 0x1e, 0x59, 0x0c, 0xcb, 0xce, 0xa0, 0x06, 0x58, 0xf3, 0x88, 0xf2, 0x2c, 0x42, 0xd8, 0xa6, 0xd0, 0xf7, 0x81, 0xae, 0x5b, 0xb4, 0xd7, 0x8b, }; static const unsigned char ecdsa_secp521r1_sha512_10921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10921_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xf8, 0x7b, 0x4d, 0xe1, 0xfc, 0x92, 0xdd, 0x75, 0x76, 0x39, 0x40, 0x8a, 0x50, 0xbe, 0xe1, 0x07, 0x64, 0xe3, 0x26, 0xfd, 0xd2, 0xfa, 0x30, 0x8d, 0xfd, 0xe3, 0xe5, 0x24, 0x3f, 0xdf, 0x4a, 0xc5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10921 = { .name = "ecdsa_secp521r1_sha512_10921", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10921_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10921_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10921_sig, .siglen = 132, .result = 1, .comment = "small r and s^-1, tcId is 365 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10922 for ECDSA, tcId is 366 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10922_pubkey[] = { 0x01, 0x1e, 0xdc, 0x3b, 0x22, 0xb2, 0x0f, 0x9a, 0x18, 0x8b, 0x32, 0xb1, 0xe8, 0x27, 0xd6, 0xe4, 0x6b, 0x2e, 0xd6, 0x1b, 0x9b, 0xe6, 0xf4, 0xad, 0xa0, 0xb2, 0xc9, 0x58, 0x35, 0xbe, 0xe2, 0x73, 0x8e, 0xc4, 0xdc, 0x53, 0x13, 0x83, 0x1c, 0xce, 0x5f, 0x92, 0x72, 0x10, 0xa7, 0xbc, 0x2f, 0x13, 0xab, 0xc0, 0x2f, 0xa9, 0x0e, 0x71, 0x6f, 0xc1, 0xbd, 0x2f, 0x63, 0xc4, 0x29, 0xa7, 0x60, 0xed, 0x23, 0x63, 0x01, 0x18, 0xda, 0xad, 0x88, 0xfe, 0x9b, 0x9d, 0x66, 0xe6, 0x6e, 0x71, 0xce, 0x05, 0xd7, 0x41, 0x37, 0xd2, 0x77, 0xa9, 0xca, 0x81, 0xc7, 0xd7, 0xae, 0xf1, 0xe7, 0x45, 0x50, 0x89, 0x05, 0x64, 0x10, 0x3c, 0xc0, 0xd9, 0x5d, 0x30, 0xf6, 0x20, 0x5c, 0x91, 0x24, 0x82, 0x91, 0x92, 0xe1, 0x5d, 0x66, 0xfb, 0x1f, 0x40, 0x33, 0x03, 0x2a, 0x42, 0xba, 0x60, 0x6e, 0x3e, 0xdc, 0xa6, 0xec, 0x06, 0x5c, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10922_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0x01, 0x00, 0x50, 0x8d, 0x07, 0x34, 0x13, 0xde, 0x82, 0x92, 0x75, 0xe7, 0x65, 0x09, 0xfd, 0x81, 0xcf, 0xf4, 0x9a, 0xdf, 0x4c, 0x80, 0xed, 0x2d, 0xdd, 0x4a, 0x79, 0x37, 0xd1, 0xd9, 0x18, 0x79, 0x68, 0x78, 0xfe, 0xc2, 0x4c, 0xc4, 0x65, 0x70, 0x98, 0x2c, 0x3f, 0xb8, 0xf5, 0xe9, 0x2c, 0xcd, 0xcb, 0x3e, 0x67, 0x7f, 0x07, 0xe9, 0xbd, 0x0d, 0xb0, 0xb8, 0x48, 0x14, 0xbe, 0x1c, 0x79, 0x49, 0xb0, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10922 = { .name = "ecdsa_secp521r1_sha512_10922", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10922_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10922_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10922_sig, .siglen = 132, .result = 1, .comment = "smallish r and s^-1, tcId is 366 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10923 for ECDSA, tcId is 367 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10923_pubkey[] = { 0x01, 0x2f, 0x8b, 0x98, 0x63, 0xa1, 0x88, 0x7e, 0xca, 0x68, 0x27, 0xad, 0x4a, 0xcc, 0xc2, 0xba, 0x60, 0x7f, 0x85, 0x92, 0xe5, 0xbe, 0x15, 0xd9, 0x69, 0x2b, 0x69, 0x7a, 0x40, 0x61, 0xfc, 0xc8, 0x15, 0x60, 0xc8, 0xfe, 0xb2, 0xae, 0x38, 0x51, 0xd0, 0x0e, 0x06, 0xdf, 0x3e, 0x00, 0x91, 0xf1, 0xf1, 0xca, 0x5e, 0xc6, 0x47, 0x61, 0xf4, 0xf8, 0xbd, 0x6d, 0x0c, 0x2c, 0xab, 0x2a, 0x12, 0x10, 0x24, 0x44, 0x01, 0x74, 0xb4, 0xe3, 0x4a, 0xec, 0x51, 0x7a, 0x0d, 0x2c, 0xeb, 0x2f, 0xd1, 0x52, 0xed, 0x17, 0x36, 0xbc, 0x33, 0x0e, 0xfc, 0xa5, 0xe6, 0xd5, 0x30, 0xea, 0x17, 0x08, 0x02, 0xfb, 0x6a, 0xf0, 0x31, 0x42, 0x59, 0x03, 0xfa, 0x6a, 0x37, 0x84, 0x05, 0xbe, 0x5e, 0x47, 0xd1, 0xe5, 0x2f, 0x62, 0xf8, 0x59, 0xf5, 0x37, 0xdf, 0x9c, 0x0f, 0x6a, 0x4a, 0x64, 0x79, 0xa0, 0xaa, 0xda, 0xfe, 0x21, 0x98, 0x21, }; static const unsigned char ecdsa_secp521r1_sha512_10923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10923_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x01, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x39, 0x3f, 0x63, 0x2a, 0xff, 0xd3, 0xea, 0xa3, 0xc8, 0xfb, 0x64, 0x50, 0x7b, 0xd5, 0x99, 0x64, 0x97, 0xbd, 0x58, 0x8f, 0xb9, 0xe3, 0x94, 0x7c, 0x09, 0x7c, 0xed, 0x75, 0x46, 0xb5, 0x7c, 0x89, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10923 = { .name = "ecdsa_secp521r1_sha512_10923", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10923_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10923_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10923_sig, .siglen = 132, .result = 1, .comment = "100-bit r and small s^-1, tcId is 367 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10924 for ECDSA, tcId is 368 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10924_pubkey[] = { 0x00, 0x8a, 0xed, 0x77, 0x9a, 0x32, 0xb9, 0xbf, 0x56, 0xea, 0x7a, 0xb4, 0x6e, 0x4b, 0x91, 0x4e, 0x55, 0xc6, 0x53, 0x01, 0xcd, 0xbe, 0x9e, 0xa6, 0xe7, 0xed, 0x44, 0xf7, 0xe9, 0x78, 0xc0, 0x36, 0x59, 0x89, 0xa1, 0x9a, 0x5e, 0x48, 0x28, 0x2f, 0xb1, 0x15, 0x8f, 0x48, 0x1c, 0x55, 0x65, 0x05, 0xd6, 0x6f, 0xf4, 0x14, 0xa0, 0x70, 0x03, 0xeb, 0xf8, 0x2f, 0xca, 0x16, 0x98, 0xc3, 0x3f, 0x28, 0x84, 0xc6, 0x00, 0xa6, 0x24, 0x26, 0x99, 0x3e, 0xd5, 0xb1, 0x77, 0xb6, 0x04, 0x5e, 0x60, 0xb5, 0xfa, 0x1a, 0x1f, 0x8c, 0xe1, 0xad, 0x5d, 0x70, 0xe7, 0xbc, 0x7b, 0x5a, 0xf8, 0x11, 0xdb, 0xf8, 0x6e, 0x65, 0x1f, 0x9e, 0xa0, 0x2e, 0xc7, 0x96, 0xab, 0x99, 0x1e, 0x14, 0x39, 0xbf, 0x07, 0xff, 0xe2, 0xac, 0x60, 0x52, 0xa8, 0xa0, 0xb0, 0x17, 0x4d, 0x78, 0xa9, 0x44, 0x1a, 0xaf, 0x4d, 0x8f, 0xc7, 0x57, 0xd8, 0x0f, }; static const unsigned char ecdsa_secp521r1_sha512_10924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10924_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10924 = { .name = "ecdsa_secp521r1_sha512_10924", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10924_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10924_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10924_sig, .siglen = 132, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 368 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10925 for ECDSA, tcId is 369 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10925_pubkey[] = { 0x00, 0x93, 0x69, 0x7b, 0x03, 0x78, 0x31, 0x2b, 0x38, 0xc3, 0x1d, 0xea, 0xe0, 0x73, 0xf2, 0x4a, 0x81, 0x63, 0xf0, 0x86, 0xac, 0x21, 0x16, 0xb7, 0xc3, 0x7c, 0x99, 0x15, 0x7c, 0xfa, 0xe7, 0x97, 0x0a, 0xb4, 0x20, 0x1f, 0x5a, 0x7e, 0x06, 0xec, 0x39, 0xee, 0xdb, 0xf7, 0xd8, 0x7f, 0x30, 0x21, 0xca, 0x43, 0x9e, 0x3f, 0xf7, 0xc5, 0x98, 0x8b, 0x84, 0x67, 0x99, 0x37, 0xba, 0xb7, 0x86, 0xdb, 0xe1, 0x2e, 0x01, 0xc6, 0x98, 0x7c, 0x86, 0x07, 0x7c, 0x05, 0x42, 0x3a, 0xc2, 0x81, 0xde, 0x6d, 0x23, 0xf6, 0xa6, 0x85, 0x87, 0x0e, 0x12, 0x85, 0x54, 0x63, 0x77, 0x0e, 0xcc, 0xab, 0xc9, 0xf3, 0xa1, 0xd2, 0x3c, 0xb2, 0xa0, 0xc1, 0x54, 0x79, 0x42, 0x0b, 0x5d, 0xd4, 0x0f, 0xbd, 0xc9, 0x88, 0x6c, 0x46, 0x3b, 0x62, 0xee, 0x23, 0x23, 0x9d, 0xf3, 0xa8, 0xb8, 0x61, 0xc3, 0x29, 0x1d, 0x28, 0x22, 0x4f, 0x60, 0x57, }; static const unsigned char ecdsa_secp521r1_sha512_10925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10925_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10925 = { .name = "ecdsa_secp521r1_sha512_10925", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10925_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10925_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10925_sig, .siglen = 132, .result = 1, .comment = "100-bit r and s^-1, tcId is 369 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10926 for ECDSA, tcId is 370 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10926_pubkey[] = { 0x01, 0x9a, 0x9f, 0x1b, 0x7b, 0x7f, 0x57, 0x4a, 0x02, 0x1f, 0xed, 0xd8, 0x67, 0x9a, 0x4e, 0x99, 0x8b, 0x48, 0x52, 0x48, 0x54, 0xee, 0xfb, 0xaa, 0xe4, 0x10, 0x4a, 0x39, 0x73, 0xd6, 0x93, 0xe0, 0x21, 0x04, 0xfa, 0x11, 0x92, 0x43, 0x25, 0x6e, 0x3d, 0x98, 0x6f, 0x8b, 0x49, 0x66, 0xc2, 0x86, 0xab, 0x8c, 0xb1, 0xf5, 0x26, 0x7c, 0x0b, 0xbd, 0x6b, 0xc1, 0x82, 0xae, 0xb5, 0x74, 0x93, 0xa5, 0xd5, 0xb6, 0x01, 0x58, 0xb9, 0x7e, 0xb7, 0x48, 0x62, 0xfb, 0xca, 0x41, 0x76, 0x3e, 0x8d, 0x3a, 0x7b, 0xeb, 0x5f, 0xcc, 0xd0, 0x55, 0x65, 0xb7, 0x5a, 0x3a, 0x43, 0xc2, 0xb3, 0x8b, 0x96, 0xeb, 0x2c, 0xcf, 0xf1, 0x49, 0xc2, 0x3e, 0xf1, 0xac, 0x09, 0xfc, 0x45, 0x5d, 0x80, 0x8f, 0xf2, 0x80, 0x81, 0xe9, 0x85, 0xf9, 0xe1, 0x72, 0xfc, 0x62, 0xd0, 0x90, 0x05, 0x85, 0x17, 0x2c, 0xfb, 0xff, 0x87, 0x38, 0x35, 0x95, }; static const unsigned char ecdsa_secp521r1_sha512_10926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10926_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x8a, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10926 = { .name = "ecdsa_secp521r1_sha512_10926", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10926_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10926_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10926_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 are close to n, tcId is 370 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10927 for ECDSA, tcId is 371 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10927_pubkey[] = { 0x01, 0xaa, 0x9f, 0x3a, 0x89, 0x4b, 0x72, 0x7d, 0x7a, 0x01, 0xb0, 0x9c, 0x4f, 0x05, 0x1b, 0x46, 0x9d, 0x66, 0x1d, 0xe1, 0xe0, 0x69, 0x15, 0xb5, 0x99, 0xe2, 0x11, 0x46, 0x33, 0x19, 0xac, 0x1b, 0x7c, 0xa8, 0xa6, 0x09, 0x7f, 0x1b, 0xe4, 0x01, 0xd7, 0x0a, 0x71, 0xd0, 0xb5, 0x36, 0x55, 0xcd, 0xf9, 0xbe, 0xf7, 0x48, 0xd8, 0x86, 0xe0, 0x8e, 0xe7, 0xde, 0x2f, 0xa7, 0x81, 0xe9, 0x3e, 0xc4, 0x1a, 0x26, 0x01, 0xba, 0x9e, 0xa6, 0x73, 0x85, 0xe1, 0x98, 0x94, 0xfc, 0x9c, 0xd4, 0xb0, 0x17, 0x3a, 0xb2, 0x15, 0xf7, 0xb9, 0x6f, 0x23, 0xbc, 0x42, 0x06, 0x65, 0xd4, 0x6c, 0x75, 0x44, 0x7b, 0xf2, 0x00, 0xae, 0x3a, 0xc7, 0xb4, 0x2b, 0xd9, 0xb8, 0x57, 0xfd, 0x1c, 0x85, 0xcc, 0xe8, 0xea, 0x9c, 0x8d, 0x23, 0x45, 0xe4, 0x68, 0x7d, 0xd7, 0x0d, 0xf5, 0x9f, 0x51, 0x49, 0x51, 0x07, 0x35, 0xbb, 0x9c, 0x7b, 0x64, }; static const unsigned char ecdsa_secp521r1_sha512_10927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10927_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10927 = { .name = "ecdsa_secp521r1_sha512_10927", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10927_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10927_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10927_sig, .siglen = 132, .result = 1, .comment = "s == 1, tcId is 371 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10928 for ECDSA, tcId is 372 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10928_pubkey[] = { 0x01, 0xaa, 0x9f, 0x3a, 0x89, 0x4b, 0x72, 0x7d, 0x7a, 0x01, 0xb0, 0x9c, 0x4f, 0x05, 0x1b, 0x46, 0x9d, 0x66, 0x1d, 0xe1, 0xe0, 0x69, 0x15, 0xb5, 0x99, 0xe2, 0x11, 0x46, 0x33, 0x19, 0xac, 0x1b, 0x7c, 0xa8, 0xa6, 0x09, 0x7f, 0x1b, 0xe4, 0x01, 0xd7, 0x0a, 0x71, 0xd0, 0xb5, 0x36, 0x55, 0xcd, 0xf9, 0xbe, 0xf7, 0x48, 0xd8, 0x86, 0xe0, 0x8e, 0xe7, 0xde, 0x2f, 0xa7, 0x81, 0xe9, 0x3e, 0xc4, 0x1a, 0x26, 0x01, 0xba, 0x9e, 0xa6, 0x73, 0x85, 0xe1, 0x98, 0x94, 0xfc, 0x9c, 0xd4, 0xb0, 0x17, 0x3a, 0xb2, 0x15, 0xf7, 0xb9, 0x6f, 0x23, 0xbc, 0x42, 0x06, 0x65, 0xd4, 0x6c, 0x75, 0x44, 0x7b, 0xf2, 0x00, 0xae, 0x3a, 0xc7, 0xb4, 0x2b, 0xd9, 0xb8, 0x57, 0xfd, 0x1c, 0x85, 0xcc, 0xe8, 0xea, 0x9c, 0x8d, 0x23, 0x45, 0xe4, 0x68, 0x7d, 0xd7, 0x0d, 0xf5, 0x9f, 0x51, 0x49, 0x51, 0x07, 0x35, 0xbb, 0x9c, 0x7b, 0x64, }; static const unsigned char ecdsa_secp521r1_sha512_10928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10928_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10928 = { .name = "ecdsa_secp521r1_sha512_10928", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10928_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10928_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10928_sig, .siglen = 132, .result = -1, .comment = "s == 0, tcId is 372 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10929 for ECDSA, tcId is 373 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10929_pubkey[] = { 0x00, 0x2a, 0x07, 0xf1, 0x3f, 0x3e, 0x8d, 0xf3, 0x82, 0x14, 0x5b, 0x79, 0x42, 0xfe, 0x6f, 0x91, 0xc1, 0x2f, 0xf3, 0x06, 0x4b, 0x31, 0x4b, 0x4e, 0x34, 0x76, 0xbf, 0x3a, 0xfb, 0xb9, 0x82, 0x07, 0x0f, 0x17, 0xf6, 0x3b, 0x2d, 0xe5, 0xfb, 0xe8, 0xc9, 0x1a, 0x87, 0xae, 0x63, 0x28, 0x69, 0xfa, 0xcf, 0x17, 0xd5, 0xce, 0x9d, 0x13, 0x9b, 0x37, 0xed, 0x55, 0x75, 0x81, 0xbb, 0x9a, 0x7e, 0x4b, 0x8f, 0xa3, 0x00, 0x24, 0xb9, 0x04, 0xc5, 0xfc, 0x53, 0x6a, 0xe5, 0x3b, 0x32, 0x3a, 0x7f, 0xd0, 0xb7, 0xb8, 0xe4, 0x20, 0x30, 0x24, 0x06, 0xad, 0xe8, 0x4e, 0xa8, 0xa1, 0x0c, 0xa7, 0xc5, 0xc9, 0x34, 0xba, 0xd5, 0x48, 0x9d, 0xb6, 0xe3, 0xa8, 0xcc, 0x30, 0x64, 0x60, 0x2c, 0xc8, 0x3f, 0x30, 0x9e, 0x9d, 0x24, 0x7a, 0xae, 0x72, 0xaf, 0xca, 0x08, 0x33, 0x6b, 0xc8, 0x91, 0x9e, 0x15, 0xf4, 0xbe, 0x5a, 0xd7, 0x7a, }; static const unsigned char ecdsa_secp521r1_sha512_10929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10929_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10929 = { .name = "ecdsa_secp521r1_sha512_10929", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10929_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10929_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10929_sig, .siglen = 132, .result = -1, .comment = "point at infinity during verify, tcId is 373 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10930 for ECDSA, tcId is 374 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10930_pubkey[] = { 0x00, 0x4b, 0xb9, 0x04, 0x07, 0x3c, 0xb6, 0xda, 0x9e, 0x50, 0x28, 0xdf, 0x54, 0xfc, 0x22, 0xcf, 0x5a, 0x9d, 0x5c, 0xa7, 0x3a, 0x01, 0xfe, 0xed, 0xd2, 0xb4, 0xce, 0x43, 0xb8, 0x7b, 0xfd, 0x43, 0x00, 0xa7, 0x2b, 0xdf, 0x26, 0xb1, 0x46, 0xb2, 0xe7, 0xb5, 0x06, 0xc0, 0x3c, 0x7a, 0x0a, 0xd4, 0xa7, 0xe3, 0xe6, 0x72, 0x04, 0xdd, 0xdc, 0xa9, 0xb6, 0x5d, 0x43, 0x56, 0x0f, 0xfa, 0xf9, 0xbf, 0xd5, 0x40, 0x01, 0x2b, 0x88, 0x95, 0x63, 0x2e, 0x04, 0x06, 0xb7, 0x84, 0x63, 0xfe, 0x1b, 0xc5, 0x36, 0x0a, 0x3c, 0xf7, 0x96, 0xfd, 0xdd, 0xa9, 0xdb, 0x2b, 0x18, 0xca, 0x91, 0x71, 0x55, 0x8e, 0x61, 0x58, 0xfa, 0x4b, 0x0b, 0x1d, 0x04, 0x61, 0xd9, 0xa4, 0x6b, 0x9b, 0x95, 0x8d, 0x62, 0x9b, 0xd6, 0x2a, 0x29, 0xee, 0x39, 0x42, 0x23, 0x8e, 0x0f, 0xa8, 0x3e, 0x93, 0x2a, 0x66, 0xab, 0xb1, 0xb5, 0x0c, 0x5f, 0x37, }; static const unsigned char ecdsa_secp521r1_sha512_10930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10930_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10930 = { .name = "ecdsa_secp521r1_sha512_10930", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10930_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10930_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10930_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 374 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10931 for ECDSA, tcId is 375 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10931_pubkey[] = { 0x01, 0x64, 0x54, 0xaf, 0xca, 0x38, 0x5e, 0xb5, 0x3e, 0xae, 0xaa, 0xb7, 0x11, 0x53, 0x7d, 0x95, 0xc5, 0x0e, 0x01, 0x26, 0x8b, 0x10, 0x0a, 0x22, 0x65, 0x6a, 0xdf, 0x5c, 0xed, 0xf6, 0x8b, 0x4a, 0x78, 0xa6, 0xc1, 0x4a, 0x70, 0x24, 0x5d, 0xf7, 0x07, 0xf6, 0x56, 0x5c, 0xe1, 0x59, 0x48, 0xc2, 0xe3, 0x8e, 0x3d, 0x90, 0xe0, 0x5d, 0xda, 0x31, 0x88, 0xab, 0x43, 0xa7, 0x3f, 0x30, 0xdb, 0xc6, 0xbd, 0xa8, 0x01, 0x51, 0xdc, 0xa6, 0xdc, 0x5a, 0xec, 0x84, 0xfa, 0x35, 0xc7, 0x9f, 0x21, 0x36, 0x59, 0x93, 0xf0, 0xb2, 0x67, 0xca, 0x48, 0x6e, 0xa6, 0x6c, 0x21, 0x86, 0xa5, 0x2a, 0x3f, 0xb6, 0x2b, 0x53, 0x50, 0x1c, 0xe2, 0x82, 0x2d, 0x46, 0x91, 0xfb, 0xc2, 0x5c, 0xf2, 0x7a, 0xdb, 0x70, 0x73, 0x40, 0x71, 0xbe, 0x52, 0x3b, 0x92, 0x31, 0xdd, 0x8d, 0x33, 0xa4, 0x01, 0xde, 0xa0, 0x0c, 0xf0, 0xae, 0x30, 0xa1, }; static const unsigned char ecdsa_secp521r1_sha512_10931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10931_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10931 = { .name = "ecdsa_secp521r1_sha512_10931", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10931_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10931_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10931_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 375 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10932 for ECDSA, tcId is 376 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10932_pubkey[] = { 0x00, 0x60, 0xda, 0xf5, 0x96, 0x38, 0x15, 0x8e, 0xd9, 0xd3, 0xd7, 0xe8, 0x42, 0x85, 0x01, 0x33, 0x47, 0x64, 0x16, 0x2f, 0x9b, 0xe2, 0x39, 0xe1, 0x68, 0xfa, 0xe9, 0xaf, 0x34, 0x8c, 0x30, 0xa7, 0xbe, 0x1c, 0xfa, 0x4d, 0x96, 0x36, 0xc3, 0xbb, 0x62, 0x1d, 0x7e, 0x0a, 0xa7, 0x14, 0x46, 0xf8, 0xd4, 0xa3, 0x7f, 0x2d, 0x43, 0x27, 0x4a, 0x42, 0x55, 0xb2, 0x26, 0xf6, 0x12, 0x38, 0x2f, 0x63, 0x15, 0x2e, 0x01, 0x6e, 0x48, 0x30, 0x01, 0x24, 0xa6, 0x36, 0xb2, 0x06, 0xfa, 0xd4, 0xd0, 0x35, 0x58, 0x62, 0xa8, 0x52, 0x62, 0x37, 0x99, 0xaf, 0xee, 0x94, 0x1e, 0x86, 0x4d, 0x96, 0xdc, 0xbf, 0x55, 0xb8, 0x01, 0xca, 0xbd, 0x62, 0x49, 0xb6, 0xf5, 0x67, 0x50, 0x6d, 0x5a, 0x50, 0x3e, 0x7d, 0x03, 0xb4, 0x76, 0x4c, 0x70, 0xfc, 0x44, 0xc5, 0x36, 0x5f, 0x32, 0xc3, 0x60, 0x36, 0x78, 0x47, 0x6d, 0x62, 0xb0, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_10932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10932_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10932 = { .name = "ecdsa_secp521r1_sha512_10932", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10932_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10932_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10932_sig, .siglen = 132, .result = 1, .comment = "u1 == 1, tcId is 376 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10933 for ECDSA, tcId is 377 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10933_pubkey[] = { 0x00, 0x51, 0xfe, 0x6a, 0x35, 0xa8, 0x50, 0x70, 0xc7, 0xc2, 0x95, 0x02, 0xa8, 0x76, 0x72, 0xa3, 0x81, 0x53, 0xd7, 0x99, 0xae, 0xf7, 0x34, 0x22, 0x6b, 0x64, 0xd8, 0xfd, 0x33, 0x98, 0x62, 0x17, 0x01, 0x11, 0x7f, 0x0a, 0xf9, 0xd9, 0xaf, 0xaf, 0x6d, 0xbb, 0x8c, 0xa3, 0x00, 0x72, 0x55, 0xdc, 0x79, 0xb0, 0xf4, 0x1e, 0xd5, 0x52, 0x51, 0x2c, 0xb2, 0x92, 0x07, 0xb1, 0x5a, 0x01, 0xcd, 0xfd, 0xfa, 0xae, 0x01, 0xa1, 0x6c, 0x61, 0x27, 0x75, 0x86, 0x35, 0x6e, 0xfa, 0xdc, 0xb2, 0x47, 0x64, 0xf2, 0x1f, 0x57, 0x4e, 0xf9, 0x6f, 0x2c, 0xaa, 0xbc, 0x3f, 0x47, 0xfa, 0x66, 0xfb, 0x87, 0x19, 0xd7, 0x78, 0x58, 0x24, 0x06, 0x1c, 0x2d, 0x6d, 0x7a, 0x4b, 0xcb, 0x85, 0x15, 0x40, 0xe6, 0x2b, 0x2f, 0x00, 0x96, 0x0b, 0x28, 0x3e, 0xac, 0x78, 0x08, 0xd1, 0x81, 0x3e, 0xf5, 0x1b, 0x46, 0xe1, 0x14, 0x9d, 0x3e, 0x4d, }; static const unsigned char ecdsa_secp521r1_sha512_10933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10933_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10933 = { .name = "ecdsa_secp521r1_sha512_10933", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10933_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10933_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10933_sig, .siglen = 132, .result = 1, .comment = "u1 == n - 1, tcId is 377 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10934 for ECDSA, tcId is 378 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10934_pubkey[] = { 0x00, 0xb4, 0xff, 0xc0, 0xff, 0xf0, 0x87, 0x60, 0x7a, 0xd2, 0x6c, 0x4b, 0x23, 0xd6, 0xd3, 0x1a, 0xe5, 0xf9, 0x04, 0xcc, 0x06, 0x4e, 0x35, 0x0f, 0x47, 0x13, 0x1c, 0xe2, 0x78, 0x4f, 0xbb, 0x35, 0x98, 0x67, 0x98, 0x8a, 0x55, 0x9d, 0x43, 0x86, 0x75, 0x2e, 0x56, 0x27, 0x7b, 0xef, 0x34, 0xe2, 0x65, 0x44, 0xde, 0xdd, 0xa8, 0x8c, 0xc2, 0x0a, 0x34, 0x11, 0xfa, 0x98, 0x83, 0x4e, 0xea, 0xe8, 0x69, 0xad, 0x00, 0x9d, 0x6e, 0x8c, 0xa9, 0x99, 0x49, 0xb7, 0xb3, 0x4f, 0xd0, 0x6a, 0x78, 0x97, 0x44, 0xec, 0xac, 0x33, 0x56, 0x24, 0x73, 0x17, 0xc4, 0xd7, 0xaa, 0x92, 0x96, 0x67, 0x6d, 0xd6, 0x23, 0x59, 0x4f, 0x36, 0x84, 0xbc, 0x13, 0x06, 0x4c, 0xab, 0x8d, 0x2d, 0xb7, 0xed, 0xbc, 0xa9, 0x1f, 0x1c, 0x8b, 0xeb, 0x54, 0x2b, 0xc9, 0x79, 0x78, 0xa3, 0xf3, 0x1f, 0x36, 0x10, 0xa0, 0x3f, 0x46, 0xa9, 0x82, 0xd2, }; static const unsigned char ecdsa_secp521r1_sha512_10934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10934_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10934 = { .name = "ecdsa_secp521r1_sha512_10934", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10934_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10934_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10934_sig, .siglen = 132, .result = 1, .comment = "u2 == 1, tcId is 378 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10935 for ECDSA, tcId is 379 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10935_pubkey[] = { 0x00, 0x80, 0x9f, 0xba, 0x32, 0x0f, 0xe9, 0x6d, 0xed, 0x24, 0x61, 0x1b, 0x72, 0xa2, 0xa5, 0x42, 0x8f, 0xe4, 0x60, 0x49, 0xff, 0x08, 0x0d, 0x6e, 0x08, 0x13, 0xab, 0x7a, 0x35, 0x89, 0x70, 0x18, 0xfe, 0x64, 0x18, 0x61, 0x3a, 0xbd, 0x86, 0x0d, 0x1e, 0xb4, 0x84, 0x95, 0x90, 0x59, 0xa0, 0x1a, 0xf7, 0xd6, 0x8c, 0xba, 0x69, 0xd1, 0xc5, 0x2e, 0xa6, 0x4a, 0xd0, 0xf2, 0x8a, 0x18, 0xa4, 0x1f, 0xc7, 0x8a, 0x01, 0x10, 0x8a, 0xcc, 0x55, 0x77, 0xe9, 0xe8, 0x96, 0x2e, 0x2a, 0x7c, 0xea, 0x0b, 0xb3, 0x7d, 0xf1, 0xd0, 0xca, 0x40, 0x50, 0xfb, 0x6c, 0xfe, 0xba, 0x41, 0xa7, 0xf8, 0x68, 0xd9, 0x88, 0xdb, 0xbc, 0xeb, 0xc9, 0x62, 0x98, 0x67, 0x48, 0xfa, 0x48, 0x51, 0x83, 0xf6, 0xb6, 0x0f, 0x45, 0x3e, 0xc8, 0x60, 0x6f, 0x8c, 0x33, 0xd4, 0x37, 0x67, 0xdd, 0xdb, 0xbe, 0xf8, 0xc4, 0x12, 0xb2, 0xc3, 0x79, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_10935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10935_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10935 = { .name = "ecdsa_secp521r1_sha512_10935", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10935_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10935_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10935_sig, .siglen = 132, .result = 1, .comment = "u2 == n - 1, tcId is 379 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10936 for ECDSA, tcId is 380 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10936_pubkey[] = { 0x01, 0x45, 0x13, 0x0d, 0xca, 0x77, 0xd9, 0x67, 0x4d, 0xfc, 0xef, 0xfa, 0x85, 0x1b, 0x4a, 0x26, 0x72, 0xe4, 0x90, 0xe8, 0xfb, 0xa8, 0x27, 0x76, 0x22, 0xb0, 0x02, 0x0e, 0x2f, 0xe9, 0x10, 0x1e, 0x76, 0x93, 0x3b, 0x0c, 0x01, 0xd2, 0x48, 0x07, 0x1f, 0x85, 0x4e, 0x9b, 0xc5, 0x23, 0x73, 0x39, 0x36, 0xdc, 0x0b, 0x99, 0x30, 0xcb, 0xe1, 0x54, 0xb9, 0xa4, 0x02, 0xf6, 0x81, 0xee, 0x3c, 0x6c, 0xef, 0x6b, 0x00, 0x0d, 0x0c, 0x94, 0xb2, 0xad, 0x28, 0x55, 0x66, 0x43, 0xaa, 0x3d, 0x27, 0x52, 0x30, 0x48, 0xd2, 0x27, 0xa1, 0xde, 0x82, 0xf8, 0xa6, 0x64, 0x70, 0x7e, 0x75, 0x39, 0x4d, 0x21, 0xda, 0x18, 0x1b, 0xec, 0x82, 0xe1, 0xaf, 0xb0, 0xe6, 0x27, 0x53, 0x95, 0x31, 0xaf, 0xfa, 0x84, 0x9a, 0x24, 0x09, 0xbc, 0xac, 0x83, 0xfb, 0x78, 0x6c, 0x35, 0x1c, 0x88, 0xba, 0xc2, 0xfb, 0x2e, 0x43, 0x22, 0xe5, 0x4a, }; static const unsigned char ecdsa_secp521r1_sha512_10936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10936_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x55, 0x6b, 0xfd, 0x55, 0xa9, 0x4e, 0x53, 0x0b, 0xd9, 0x72, 0xe5, 0x28, 0x73, 0xef, 0x39, 0xac, 0x3e, 0xc3, 0x44, 0x81, 0xae, 0xbd, 0xc4, 0x66, 0x80, 0xdc, 0x66, 0x72, 0x3a, 0xb6, 0x60, 0x56, 0x27, 0x5d, 0x82, 0xbf, 0xf8, 0x5a, 0xd2, 0x9a, 0xc6, 0x94, 0x53, 0x0b, 0xb2, 0xf8, 0x9c, 0x36, 0xce, 0x60, 0x0a, 0xd1, 0xb4, 0x97, 0x61, 0x85, 0x4a, 0xfc, 0x69, 0xab, 0x74, 0x1c, 0xe0, 0x29, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10936 = { .name = "ecdsa_secp521r1_sha512_10936", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10936_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10936_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10936_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 380 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10937 for ECDSA, tcId is 381 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10937_pubkey[] = { 0x00, 0xed, 0x3e, 0x09, 0x80, 0x9f, 0xe5, 0x98, 0x58, 0x18, 0xf9, 0x05, 0x92, 0xfd, 0x06, 0xe7, 0x1d, 0x2c, 0x49, 0x3d, 0x9a, 0x78, 0x17, 0x14, 0xc9, 0x15, 0x7c, 0xba, 0xfa, 0x5b, 0xa1, 0x96, 0xb9, 0x87, 0xfd, 0x49, 0xae, 0x24, 0x27, 0x4c, 0x76, 0x25, 0x1c, 0x70, 0xb9, 0xf7, 0x97, 0x0f, 0x1f, 0x71, 0x3a, 0xd2, 0x74, 0x59, 0x0a, 0x70, 0x2f, 0x46, 0x3c, 0x73, 0xa0, 0x70, 0x48, 0x31, 0xce, 0x5d, 0x00, 0xca, 0xc2, 0x78, 0x29, 0x70, 0x93, 0xbd, 0x9f, 0x9a, 0xc2, 0xd0, 0x0b, 0xef, 0x3d, 0x67, 0xa0, 0x1b, 0x43, 0xb2, 0x8b, 0x9f, 0x82, 0x94, 0x07, 0x26, 0x4c, 0x73, 0x81, 0x17, 0x43, 0x83, 0x00, 0xc7, 0x70, 0x47, 0x72, 0x97, 0x69, 0x16, 0xea, 0x10, 0x2a, 0x77, 0x62, 0x62, 0xcc, 0xf4, 0x22, 0x2c, 0xc3, 0x48, 0xc3, 0x4a, 0xac, 0x68, 0x3d, 0x8f, 0x00, 0x17, 0x9a, 0x34, 0x83, 0x23, 0xba, 0xbd, }; static const unsigned char ecdsa_secp521r1_sha512_10937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10937_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xdc, 0xf9, 0xe7, 0xf4, 0x41, 0x44, 0x8a, 0x12, 0x5b, 0x96, 0xd7, 0x2b, 0x98, 0x9d, 0x9f, 0x4d, 0xac, 0x75, 0x08, 0xc7, 0xe0, 0x36, 0xf6, 0x08, 0x0d, 0x47, 0x58, 0xe7, 0x36, 0xf5, 0xe0, 0x63, 0x6b, 0x0f, 0xf5, 0x03, 0xf1, 0x28, 0xa9, 0x8d, 0x08, 0xe0, 0xae, 0x18, 0x99, 0x21, 0x06, 0x52, 0x19, 0xd2, 0xcc, 0x3a, 0xa8, 0x3e, 0x3c, 0x66, 0x0c, 0xa0, 0xcb, 0x85, 0xe7, 0xc1, 0x1a, 0x24, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10937 = { .name = "ecdsa_secp521r1_sha512_10937", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10937_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10937_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10937_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 381 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10938 for ECDSA, tcId is 382 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10938_pubkey[] = { 0x00, 0x0a, 0xc2, 0xc5, 0xa4, 0xc7, 0x93, 0x09, 0xa5, 0x13, 0x2d, 0x5d, 0x74, 0x94, 0xbe, 0xfb, 0x39, 0x05, 0xd3, 0x3f, 0xda, 0x5f, 0x80, 0xee, 0xaf, 0x63, 0x77, 0x51, 0x83, 0xaa, 0xe7, 0xaf, 0x10, 0x8a, 0x3d, 0x97, 0xf3, 0xa4, 0x41, 0x53, 0x2c, 0xf6, 0xfa, 0xc4, 0x7f, 0x6c, 0x89, 0x83, 0x29, 0xd6, 0x91, 0x82, 0xe1, 0xfa, 0x07, 0xce, 0x45, 0x99, 0x7e, 0xbe, 0xc3, 0x78, 0x1c, 0x9a, 0xd7, 0x41, 0x01, 0x73, 0xa5, 0xb6, 0xb8, 0x0a, 0x8b, 0x73, 0xd3, 0x0a, 0xc9, 0x7e, 0x1a, 0x4a, 0xac, 0xb7, 0x73, 0xc1, 0xad, 0x69, 0x2c, 0x5e, 0xa6, 0x3f, 0x68, 0xe3, 0x73, 0x84, 0x27, 0x82, 0xbd, 0x67, 0x78, 0x64, 0xff, 0x65, 0x6c, 0xf8, 0xd1, 0xe6, 0xec, 0x1e, 0x58, 0xe9, 0xa8, 0x38, 0x56, 0xef, 0x92, 0x67, 0x75, 0x55, 0x91, 0x67, 0x49, 0xfb, 0x95, 0xe8, 0x00, 0xae, 0x2e, 0x01, 0x16, 0x18, 0xca, 0x3a, }; static const unsigned char ecdsa_secp521r1_sha512_10938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10938_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x66, 0xeb, 0x57, 0x73, 0x3c, 0x19, 0xa7, 0x00, 0x3c, 0xf8, 0x25, 0x32, 0x79, 0xfc, 0xe4, 0x19, 0x07, 0xbc, 0x4f, 0x12, 0x71, 0x53, 0xc4, 0x57, 0x6d, 0xd4, 0x81, 0x4f, 0x8b, 0x33, 0x5a, 0x0b, 0x51, 0x56, 0x0b, 0x44, 0x47, 0xf0, 0x38, 0x2c, 0x69, 0xb3, 0xfe, 0x50, 0x95, 0x22, 0xc8, 0x91, 0xf0, 0xee, 0xc3, 0x99, 0x9a, 0xd2, 0x52, 0x68, 0x35, 0xf3, 0x3a, 0xe2, 0x2a, 0x64, 0x28, 0x43, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10938 = { .name = "ecdsa_secp521r1_sha512_10938", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10938_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10938_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10938_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 382 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10939 for ECDSA, tcId is 383 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10939_pubkey[] = { 0x01, 0xeb, 0x2a, 0x35, 0x3d, 0xec, 0x6b, 0x46, 0x0f, 0xbd, 0xa4, 0x9c, 0x67, 0xf4, 0x31, 0x19, 0x0f, 0xff, 0x6f, 0x19, 0x56, 0x39, 0xc2, 0x26, 0xef, 0x8f, 0xef, 0xcb, 0xf1, 0x91, 0xd7, 0x25, 0x29, 0xa1, 0x2c, 0xc5, 0x48, 0x5b, 0x28, 0x2a, 0x52, 0x70, 0x4c, 0x1f, 0xd8, 0x45, 0x29, 0xa1, 0xaa, 0x0a, 0xd7, 0x94, 0xf9, 0x64, 0x93, 0xe2, 0x99, 0x71, 0x8d, 0x26, 0x18, 0xa1, 0xb8, 0x3a, 0x52, 0x6c, 0x01, 0xf7, 0x04, 0x60, 0x4d, 0x5b, 0x2b, 0x94, 0xa4, 0x2b, 0xfc, 0x3a, 0xb9, 0x33, 0x17, 0xd6, 0x6a, 0x54, 0xde, 0x15, 0x25, 0x83, 0x37, 0x43, 0x3f, 0xc9, 0x6a, 0x96, 0x5d, 0x8e, 0x2d, 0x05, 0x6f, 0xd1, 0x13, 0x4b, 0x79, 0x89, 0xd7, 0xb3, 0xf7, 0x09, 0xad, 0xc2, 0x82, 0x27, 0xbd, 0xab, 0xc1, 0x1f, 0xe2, 0xf3, 0x59, 0xc6, 0xa6, 0xe5, 0x11, 0x1a, 0xb4, 0x33, 0x79, 0xca, 0x25, 0xb6, 0x6f, 0x2f, }; static const unsigned char ecdsa_secp521r1_sha512_10939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10939_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x71, 0x06, 0xd1, 0x13, 0x1b, 0x33, 0x00, 0xd7, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x79, 0x52, 0x7a, 0xc0, 0x9f, 0x0a, 0x3f, 0x0a, 0x8a, 0xa3, 0x82, 0x85, 0x58, 0x5b, 0x6a, 0xfc, 0xea, 0xc5, 0xff, 0x66, 0x92, 0x84, 0x22, 0x32, 0xd1, 0x06, 0xd1, 0x5d, 0x4d, 0xf1, 0xb6, 0x6a, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10939 = { .name = "ecdsa_secp521r1_sha512_10939", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10939_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10939_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10939_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 383 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10940 for ECDSA, tcId is 384 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10940_pubkey[] = { 0x01, 0xe4, 0x3d, 0xfe, 0xcc, 0x7e, 0x6c, 0xaa, 0xd0, 0x3d, 0x17, 0xb4, 0x07, 0x32, 0x2c, 0x87, 0x8f, 0x70, 0x1c, 0x5a, 0xdd, 0x6e, 0xb2, 0xaf, 0xcd, 0x78, 0x6f, 0xf3, 0x80, 0x36, 0x22, 0xdf, 0xbb, 0x6b, 0xaa, 0x01, 0x24, 0x6e, 0x1e, 0xa0, 0x59, 0xf7, 0xb7, 0x88, 0x42, 0x91, 0x9b, 0x25, 0x07, 0xda, 0xa9, 0xe3, 0x43, 0x4e, 0xfa, 0x7e, 0x8d, 0x3a, 0xe6, 0xc3, 0x54, 0x99, 0xf8, 0x2d, 0x0a, 0xc8, 0x01, 0x8b, 0x0e, 0x4d, 0x63, 0x78, 0x22, 0x2a, 0x07, 0xcc, 0xdb, 0x42, 0x14, 0x00, 0x1f, 0x97, 0xb1, 0xa5, 0x03, 0xd1, 0xaa, 0xc3, 0xab, 0x92, 0x5e, 0xa6, 0x4f, 0xaa, 0x9c, 0x73, 0x9b, 0xa0, 0x4e, 0xe3, 0x48, 0x0b, 0x14, 0x7c, 0xb0, 0x7f, 0x93, 0xed, 0xf4, 0x0b, 0x68, 0x56, 0xa2, 0x2f, 0x41, 0x59, 0xc3, 0xf5, 0xcd, 0x6c, 0x9e, 0x71, 0x65, 0x45, 0x29, 0x07, 0xc8, 0xd0, 0x2f, 0xab, 0x20, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10940_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x6d, 0x11, 0x31, 0xb3, 0x30, 0x0d, 0x7f, 0xfb, 0xc0, 0x7f, 0xf0, 0x41, 0x50, 0x6d, 0xc7, 0x3a, 0x75, 0x08, 0x6a, 0x43, 0x25, 0x2f, 0xb4, 0x3b, 0x63, 0x27, 0xaf, 0x3c, 0x6b, 0x2c, 0xc7, 0xd6, 0xab, 0x94, 0xbf, 0x49, 0x6f, 0x53, 0xea, 0x22, 0x9e, 0x7f, 0xe6, 0xb4, 0x56, 0x08, 0x8e, 0xa3, 0x2f, 0x6e, 0x2b, 0x10, 0x4f, 0x51, 0x12, 0x79, 0x8b, 0xb5, 0x9d, 0x46, 0xa0, 0xd4, 0x68, 0xf8, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10940 = { .name = "ecdsa_secp521r1_sha512_10940", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10940_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10940_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10940_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 384 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10941 for ECDSA, tcId is 385 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10941_pubkey[] = { 0x01, 0x41, 0xa4, 0xd7, 0x14, 0x62, 0x8c, 0x19, 0x2b, 0x8a, 0xce, 0x1a, 0x42, 0x85, 0x4d, 0xa0, 0x6e, 0x0e, 0x1d, 0xdb, 0x82, 0xa0, 0x76, 0x18, 0xe4, 0xef, 0xb0, 0x5d, 0x70, 0x95, 0xcd, 0x1e, 0xb6, 0x54, 0x25, 0x07, 0x81, 0x60, 0x59, 0x47, 0x15, 0xea, 0xf5, 0x9f, 0xcb, 0x41, 0xc9, 0xe5, 0x73, 0xfe, 0x10, 0x29, 0x8c, 0x75, 0xc9, 0xe9, 0x13, 0x5c, 0x77, 0x5c, 0xa7, 0x3f, 0x63, 0xd1, 0x3a, 0xac, 0x00, 0x89, 0x52, 0x4b, 0x47, 0x51, 0x70, 0xd4, 0x39, 0x1c, 0xc0, 0x32, 0xa0, 0x54, 0x3e, 0xa2, 0x2d, 0xab, 0x60, 0xea, 0x07, 0x53, 0x8f, 0x3a, 0x37, 0x60, 0x7f, 0x0d, 0x4e, 0xd5, 0x16, 0x63, 0x4f, 0xde, 0x54, 0x5e, 0x2f, 0x0a, 0x6b, 0xa8, 0xd0, 0xd2, 0xfe, 0x6a, 0xde, 0xd0, 0xa7, 0x71, 0xb4, 0xb1, 0x34, 0xa5, 0xa2, 0x80, 0xe5, 0x47, 0x99, 0xfa, 0x47, 0x6e, 0xf0, 0xec, 0x87, 0xd4, 0x4e, 0x1c, }; static const unsigned char ecdsa_secp521r1_sha512_10941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10941_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xda, 0x22, 0x63, 0x66, 0x60, 0x1a, 0xff, 0xf7, 0x80, 0xff, 0xe0, 0x82, 0xa0, 0xdb, 0x8e, 0x74, 0xea, 0x10, 0xd4, 0x86, 0x4a, 0x5f, 0x68, 0x76, 0xc6, 0x4f, 0x5e, 0x78, 0xd6, 0x59, 0x8f, 0xad, 0x57, 0x29, 0x7e, 0x92, 0xde, 0xa7, 0xd4, 0x45, 0x3c, 0xff, 0xcd, 0x68, 0xac, 0x11, 0x1d, 0x46, 0x5e, 0xdc, 0x56, 0x20, 0x9e, 0xa2, 0x24, 0xf3, 0x17, 0x6b, 0x3a, 0x8d, 0x41, 0xa8, 0xd1, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10941 = { .name = "ecdsa_secp521r1_sha512_10941", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10941_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10941_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10941_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 385 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10942 for ECDSA, tcId is 386 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10942_pubkey[] = { 0x01, 0x47, 0xfb, 0xcc, 0x65, 0xd4, 0x81, 0x8e, 0x02, 0x9e, 0x0a, 0x3a, 0xf1, 0x3a, 0x1f, 0x7c, 0x90, 0xf0, 0x60, 0x5a, 0x00, 0xcd, 0x07, 0x81, 0x20, 0x0e, 0xb6, 0x56, 0xa5, 0x91, 0xd6, 0x69, 0xa7, 0x87, 0x62, 0x0e, 0x6f, 0xc8, 0xcc, 0x59, 0x4a, 0xa2, 0x8a, 0x0b, 0x0f, 0x29, 0x39, 0xec, 0x73, 0x47, 0x2c, 0x49, 0x4e, 0x09, 0xce, 0xca, 0xf5, 0xf3, 0x31, 0xda, 0xfd, 0x32, 0xd5, 0xac, 0x31, 0xc3, 0x00, 0x75, 0x43, 0x2b, 0xda, 0xee, 0xca, 0xa0, 0xbe, 0xc7, 0xfe, 0xdd, 0xc2, 0x98, 0xc5, 0x65, 0x72, 0x3f, 0xb6, 0x69, 0xee, 0x76, 0xe3, 0x8a, 0x4c, 0x5f, 0xf1, 0x70, 0x1f, 0x1b, 0x38, 0xcd, 0xa9, 0xdc, 0x9a, 0xc4, 0x3b, 0xff, 0x18, 0xda, 0x20, 0x47, 0xe4, 0xdc, 0xd8, 0x0c, 0x05, 0xa7, 0xbb, 0x7e, 0x74, 0x64, 0x82, 0x9d, 0x60, 0x8b, 0x68, 0x17, 0x6b, 0x04, 0xc8, 0x7f, 0x40, 0x9f, 0x46, 0xd6, }; static const unsigned char ecdsa_secp521r1_sha512_10942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10942_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x1b, 0x33, 0x00, 0xd7, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4c, 0xb8, 0x5d, 0xf5, 0xe6, 0xc1, 0x12, 0x53, 0x94, 0xfc, 0xd3, 0x4f, 0x65, 0x21, 0xff, 0xda, 0xdd, 0xd9, 0x8f, 0x88, 0xa9, 0x9f, 0xed, 0xce, 0xdd, 0x93, 0x84, 0x28, 0x8b, 0xb7, 0x93, 0xcf, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10942 = { .name = "ecdsa_secp521r1_sha512_10942", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10942_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10942_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10942_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 386 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10943 for ECDSA, tcId is 387 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10943_pubkey[] = { 0x00, 0xb5, 0xb1, 0xc3, 0x99, 0x85, 0x89, 0xb2, 0x5c, 0x96, 0xa7, 0x00, 0xbb, 0xd4, 0x50, 0xd0, 0x4d, 0xa1, 0xf2, 0x73, 0xdf, 0x80, 0x53, 0x76, 0x7a, 0x3b, 0x03, 0xed, 0x1a, 0x76, 0x3e, 0xd0, 0x89, 0xc0, 0xde, 0x99, 0xbc, 0xf5, 0x4d, 0x49, 0xc1, 0x52, 0x0d, 0x3a, 0x09, 0xb8, 0x45, 0x29, 0x6f, 0x04, 0x45, 0xb3, 0xbd, 0x5b, 0x87, 0x91, 0x8d, 0x37, 0x52, 0xcf, 0x65, 0x1e, 0x0f, 0xf3, 0x00, 0x7b, 0x00, 0xe8, 0x96, 0x38, 0x08, 0x76, 0xb9, 0x41, 0x9c, 0x56, 0x09, 0x69, 0x14, 0xff, 0x6e, 0xec, 0x01, 0xae, 0xe2, 0x47, 0xee, 0xfe, 0xf0, 0x74, 0x18, 0x95, 0xf1, 0x4e, 0xe2, 0x80, 0xf3, 0x60, 0xe1, 0x15, 0x08, 0xc3, 0x78, 0x26, 0xaf, 0x82, 0xcd, 0x91, 0x5b, 0x90, 0x02, 0xf0, 0x46, 0xcb, 0x51, 0x00, 0x8d, 0x9e, 0xad, 0x21, 0x12, 0x4c, 0x59, 0x1b, 0xd8, 0x26, 0x5d, 0x14, 0x92, 0xb3, 0x5f, 0xfb, }; static const unsigned char ecdsa_secp521r1_sha512_10943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10943_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x61, 0xbe, 0x37, 0xed, 0x5f, 0x74, 0x8e, 0x06, 0xa8, 0x9d, 0x72, 0xc4, 0xb7, 0x05, 0x1c, 0xae, 0x80, 0x9d, 0x95, 0x67, 0x84, 0x8b, 0x1d, 0x8d, 0x7e, 0xd0, 0x19, 0x22, 0x1e, 0xfb, 0x06, 0xae, 0x81, 0xe1, 0x26, 0x4c, 0xe4, 0x9c, 0x5d, 0x29, 0xee, 0x5f, 0xe2, 0x2c, 0xcf, 0x70, 0x89, 0x90, 0x02, 0x64, 0x3a, 0xca, 0x7b, 0x99, 0xf5, 0x77, 0x56, 0xf2, 0x63, 0x9b, 0x6d, 0x45, 0x9a, 0xe4, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10943 = { .name = "ecdsa_secp521r1_sha512_10943", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10943_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10943_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10943_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 387 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10944 for ECDSA, tcId is 388 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10944_pubkey[] = { 0x01, 0xaa, 0xdb, 0x41, 0xfa, 0xdc, 0x35, 0xcf, 0x6d, 0x11, 0xa7, 0xc7, 0xd0, 0x1d, 0x04, 0x9b, 0x74, 0xb3, 0x76, 0x77, 0xf0, 0x4e, 0x1b, 0xd3, 0xdc, 0x08, 0x45, 0x0f, 0xab, 0xae, 0x28, 0xad, 0xcd, 0x2d, 0x13, 0x5f, 0x96, 0x66, 0x16, 0xd2, 0x83, 0xfb, 0x18, 0xa5, 0xe6, 0x9e, 0xab, 0xfe, 0x7e, 0xc4, 0x1e, 0x1a, 0x0e, 0xdb, 0x36, 0x82, 0xf1, 0xd3, 0x9f, 0x2a, 0xf6, 0x4a, 0x94, 0xd6, 0x02, 0xb9, 0x01, 0x4a, 0xe8, 0x1e, 0xbf, 0x5e, 0x3d, 0x2d, 0x05, 0x29, 0x47, 0x9d, 0x4a, 0xe8, 0xeb, 0x05, 0xf4, 0xb4, 0x2e, 0x51, 0x96, 0x08, 0x46, 0x6a, 0xd6, 0x9e, 0x76, 0x62, 0xd6, 0xe9, 0xb2, 0x36, 0x76, 0x5f, 0x9b, 0xe5, 0x35, 0xc0, 0x58, 0xf0, 0x0f, 0x08, 0x66, 0xbb, 0xb4, 0xb1, 0x72, 0xef, 0x47, 0xa0, 0x3c, 0xb9, 0x7c, 0x58, 0xdd, 0xe5, 0x75, 0x03, 0x44, 0xbb, 0x29, 0x30, 0x35, 0xf8, 0xe9, 0x7e, }; static const unsigned char ecdsa_secp521r1_sha512_10944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10944_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xe9, 0xbb, 0xbd, 0x64, 0x27, 0x0b, 0x96, 0x68, 0xf7, 0x62, 0x3e, 0xf7, 0xcb, 0xea, 0xd5, 0x48, 0x3e, 0xb0, 0x7b, 0x88, 0x3c, 0xf3, 0x9f, 0xb6, 0x88, 0x4a, 0xab, 0x67, 0xda, 0xc7, 0x95, 0x8b, 0x0e, 0x03, 0x14, 0x43, 0x57, 0xb9, 0x43, 0x3e, 0x69, 0xad, 0xc6, 0x96, 0xc8, 0x6c, 0x63, 0xa2, 0x3d, 0x35, 0x72, 0x4c, 0xbd, 0x74, 0x9b, 0x7c, 0x34, 0xf8, 0xe3, 0x42, 0x32, 0xd2, 0x1e, 0xa4, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10944 = { .name = "ecdsa_secp521r1_sha512_10944", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10944_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10944_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10944_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 388 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10945 for ECDSA, tcId is 389 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10945_pubkey[] = { 0x01, 0xb7, 0x06, 0xfc, 0x3f, 0x4a, 0xae, 0x5b, 0x86, 0xda, 0x26, 0x1a, 0x66, 0xfb, 0xce, 0x47, 0xeb, 0x3b, 0x3e, 0x1e, 0x91, 0x54, 0x4a, 0x40, 0xa9, 0x98, 0x9f, 0xcc, 0xf7, 0x41, 0x54, 0xbb, 0xec, 0xac, 0x04, 0x2d, 0xbb, 0xbf, 0x41, 0x1a, 0x39, 0x09, 0x00, 0x58, 0xb6, 0x2c, 0x46, 0xfc, 0xcd, 0x1d, 0x5e, 0xab, 0xa0, 0xc4, 0x87, 0x9a, 0x68, 0x8e, 0xa5, 0xfd, 0x0a, 0x7b, 0x4f, 0x9a, 0x0b, 0x4f, 0x01, 0xed, 0xa0, 0x19, 0x30, 0xc6, 0xb2, 0x27, 0x45, 0xa9, 0x7f, 0x2d, 0x59, 0xe1, 0x82, 0x59, 0x8d, 0xfd, 0xfb, 0xfd, 0xb4, 0x63, 0x33, 0x52, 0x93, 0x90, 0x1d, 0xe7, 0xfc, 0x9d, 0x49, 0xcf, 0x55, 0xed, 0x7f, 0xcf, 0x5d, 0x76, 0x7d, 0x4c, 0x22, 0xf8, 0x9f, 0x17, 0x1b, 0x41, 0x37, 0xc8, 0x41, 0x5c, 0x3e, 0xd4, 0x38, 0x08, 0x92, 0x70, 0xc4, 0x1f, 0x88, 0xea, 0xde, 0xf3, 0x01, 0x81, 0x40, 0xe1, }; static const unsigned char ecdsa_secp521r1_sha512_10945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10945_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x92, 0x44, 0x49, 0xb6, 0xc9, 0x6f, 0x37, 0x58, 0xe3, 0xb0, 0x85, 0xc0, 0x79, 0x71, 0x4f, 0x11, 0xf2, 0x8d, 0x03, 0x9b, 0x11, 0x69, 0x9f, 0x0e, 0x9b, 0x3e, 0x7c, 0x55, 0x3c, 0x8f, 0xc6, 0xc8, 0xf5, 0x21, 0x2f, 0xec, 0x5e, 0xac, 0x30, 0x68, 0x71, 0x3b, 0x8e, 0xc7, 0x2f, 0xc6, 0xe2, 0xa9, 0x08, 0x72, 0xb9, 0x4e, 0x16, 0x1a, 0x89, 0x82, 0x28, 0x87, 0xf4, 0xa9, 0xbd, 0x5c, 0x9e, 0xfd, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10945 = { .name = "ecdsa_secp521r1_sha512_10945", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10945_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10945_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10945_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 389 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10946 for ECDSA, tcId is 390 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10946_pubkey[] = { 0x00, 0x58, 0xa1, 0xfa, 0x96, 0x11, 0x1b, 0xf3, 0x0b, 0xe7, 0x6c, 0x3b, 0x8b, 0xa4, 0x43, 0x56, 0x66, 0x67, 0x7b, 0x6d, 0xd0, 0x50, 0x31, 0xb5, 0xc4, 0xa8, 0x40, 0xe1, 0xea, 0x81, 0xf6, 0x02, 0x5f, 0x70, 0xe1, 0xd3, 0x95, 0xef, 0x63, 0xcb, 0x59, 0xfa, 0x71, 0xe3, 0x67, 0x4c, 0xb6, 0x78, 0xf7, 0x25, 0x08, 0x87, 0xf5, 0xd7, 0x34, 0xe3, 0xec, 0x37, 0x7d, 0xbe, 0x3a, 0xe6, 0x37, 0xd2, 0x4f, 0x82, 0x00, 0x7a, 0x4e, 0xaf, 0x02, 0xcc, 0x57, 0xe6, 0x58, 0xb5, 0xb9, 0xfa, 0x08, 0xee, 0x30, 0xe0, 0xef, 0x5b, 0x34, 0x29, 0xbb, 0x5a, 0x10, 0x43, 0x8b, 0x0e, 0x05, 0xba, 0xca, 0xeb, 0xc6, 0x03, 0x17, 0x01, 0x0a, 0x33, 0x4d, 0x7f, 0x89, 0x60, 0x28, 0xae, 0xf6, 0x20, 0xf5, 0xd9, 0xc7, 0xca, 0xbc, 0x38, 0x30, 0x6e, 0x03, 0x2b, 0x1b, 0x91, 0xc2, 0x37, 0x6c, 0x3f, 0xef, 0x3e, 0x45, 0x5a, 0x10, 0xdf, }; static const unsigned char ecdsa_secp521r1_sha512_10946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10946_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x55, 0x4a, 0x01, 0x55, 0x2b, 0x58, 0xd6, 0x7a, 0x13, 0x46, 0x8d, 0x6b, 0xc6, 0x08, 0x63, 0x29, 0xe0, 0x9e, 0x5d, 0xbf, 0x28, 0xa1, 0x1d, 0xcc, 0xbf, 0x91, 0xcc, 0xc6, 0xe2, 0xa4, 0xcf, 0xd4, 0xe6, 0xa2, 0xc5, 0x27, 0x87, 0x91, 0xc6, 0x49, 0x08, 0x35, 0xa2, 0x7b, 0x6f, 0x7a, 0xbb, 0x8a, 0x69, 0x0b, 0xb0, 0x60, 0xde, 0x3d, 0xeb, 0x85, 0x09, 0x3d, 0x3a, 0xe1, 0x64, 0x82, 0xc8, 0x4f, 0x64, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10946 = { .name = "ecdsa_secp521r1_sha512_10946", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10946_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10946_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10946_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 390 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10947 for ECDSA, tcId is 391 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10947_pubkey[] = { 0x00, 0x30, 0x3b, 0xa5, 0xef, 0x90, 0xb0, 0x51, 0x10, 0x00, 0x2f, 0xdf, 0x74, 0xd2, 0xb8, 0xd4, 0xc7, 0xab, 0x18, 0x9c, 0x64, 0x00, 0x48, 0x59, 0xc6, 0x9d, 0x7c, 0x47, 0x30, 0xfc, 0xac, 0xb5, 0xf4, 0xd9, 0xb7, 0x61, 0xae, 0x98, 0x7d, 0x1f, 0x3b, 0x63, 0xbb, 0x3e, 0xcb, 0x78, 0xae, 0xec, 0xf4, 0xa0, 0x4f, 0xf6, 0x0f, 0x5f, 0x36, 0x7a, 0x96, 0xac, 0x2d, 0xa8, 0xda, 0x27, 0xa3, 0x68, 0x7a, 0x3e, 0x00, 0x66, 0x73, 0xd0, 0xd4, 0xcc, 0xd4, 0xc3, 0xce, 0x1a, 0xbc, 0x99, 0x80, 0xfd, 0x18, 0x85, 0x00, 0x2c, 0x3e, 0x7b, 0x86, 0x07, 0x82, 0x14, 0xca, 0xf7, 0xf0, 0x96, 0x2f, 0xa5, 0x1e, 0x11, 0x63, 0x63, 0x03, 0x2d, 0x7a, 0x1b, 0x93, 0xc9, 0x2a, 0x4d, 0x62, 0x82, 0x75, 0x49, 0xd5, 0xa3, 0x3e, 0x4e, 0x6b, 0x9b, 0x6c, 0x2a, 0xb6, 0xad, 0x9c, 0x2a, 0x15, 0xe4, 0x10, 0xc5, 0xb1, 0xa8, 0x46, 0xb2, }; static const unsigned char ecdsa_secp521r1_sha512_10947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10947_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xaa, 0x94, 0x02, 0xaa, 0x56, 0xb1, 0xac, 0xf4, 0x26, 0x8d, 0x1a, 0xd7, 0x8c, 0x10, 0xc6, 0x53, 0xc1, 0x3c, 0xbb, 0x7e, 0x51, 0x42, 0x3b, 0x99, 0x7f, 0x23, 0x99, 0x8d, 0xc5, 0x49, 0x9f, 0xa9, 0xd2, 0xf4, 0x03, 0xc7, 0x8b, 0x64, 0x5c, 0xfb, 0xa4, 0xeb, 0x78, 0xf5, 0x95, 0xfe, 0x6d, 0x6f, 0x01, 0xdb, 0xaa, 0xf8, 0x03, 0xf2, 0x3a, 0xc2, 0x63, 0xbf, 0x06, 0x0b, 0xaa, 0x74, 0x58, 0x3a, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10947 = { .name = "ecdsa_secp521r1_sha512_10947", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10947_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10947_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10947_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 391 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10948 for ECDSA, tcId is 392 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10948_pubkey[] = { 0x00, 0xa9, 0x4e, 0xea, 0x84, 0x3a, 0x5c, 0x49, 0x63, 0x70, 0x41, 0x59, 0x8e, 0x30, 0xc3, 0x81, 0xf7, 0x17, 0x3b, 0xf8, 0xcd, 0x12, 0x7f, 0x3c, 0xaf, 0x5c, 0x16, 0xcb, 0xc7, 0x28, 0xaa, 0x4d, 0x99, 0x17, 0x3f, 0xb3, 0x8d, 0x6a, 0x1b, 0x1e, 0xc2, 0x1e, 0x40, 0x33, 0x6e, 0x8d, 0x80, 0x22, 0x49, 0x27, 0x2b, 0x0c, 0xcb, 0xf4, 0xf8, 0xc3, 0x63, 0x6e, 0xf6, 0x62, 0x90, 0xa8, 0x1b, 0x58, 0xfa, 0x5b, 0x01, 0x11, 0x6c, 0x23, 0x46, 0x4f, 0xad, 0x61, 0xdf, 0x8d, 0x2d, 0x5d, 0x12, 0x50, 0xa5, 0xa4, 0xc4, 0x27, 0xe9, 0xc5, 0x8e, 0x2c, 0xf1, 0xd0, 0x59, 0xcd, 0xd8, 0x8a, 0x7c, 0x34, 0x98, 0x4f, 0xdd, 0x22, 0xa4, 0xcf, 0x18, 0x41, 0x1e, 0x1b, 0x02, 0x24, 0xd4, 0x44, 0xa5, 0xbd, 0x39, 0xd5, 0xfc, 0x97, 0xfc, 0x0b, 0x36, 0x48, 0x60, 0x0f, 0x19, 0xd6, 0xab, 0x80, 0xaa, 0x6a, 0x7c, 0x08, 0x3a, 0x17, }; static const unsigned char ecdsa_secp521r1_sha512_10948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10948_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xde, 0x03, 0xff, 0x82, 0x0a, 0x83, 0x6e, 0x39, 0xd3, 0xa8, 0x43, 0x52, 0x19, 0x29, 0x7d, 0xa1, 0xdb, 0x19, 0x3d, 0x79, 0xe3, 0x59, 0x66, 0x3e, 0xb5, 0x66, 0x54, 0xa7, 0xee, 0x6f, 0x7e, 0xb9, 0x96, 0xc8, 0xef, 0x12, 0xf6, 0x23, 0x44, 0xad, 0x21, 0x1b, 0x71, 0x05, 0x79, 0x28, 0xf9, 0x6a, 0xe7, 0x5b, 0x58, 0xe2, 0x30, 0x26, 0x47, 0x6c, 0xfc, 0x40, 0xed, 0x0e, 0xf7, 0x20, 0x8a, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10948 = { .name = "ecdsa_secp521r1_sha512_10948", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10948_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10948_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10948_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 392 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10949 for ECDSA, tcId is 393 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10949_pubkey[] = { 0x01, 0x4f, 0x71, 0xd2, 0xca, 0x5b, 0xd2, 0x05, 0x13, 0x36, 0x85, 0x46, 0x57, 0xf0, 0x9a, 0x1f, 0xab, 0x14, 0xc7, 0xf2, 0xf7, 0x86, 0x5d, 0x71, 0xbd, 0x3f, 0xa3, 0x54, 0xbf, 0x27, 0xb6, 0x9d, 0xc8, 0x73, 0x89, 0x72, 0x14, 0x05, 0x53, 0xb5, 0x25, 0x65, 0x8b, 0x6f, 0xd2, 0x03, 0xcc, 0x05, 0xca, 0x08, 0x22, 0xe0, 0x90, 0x4b, 0xad, 0x21, 0xb6, 0x32, 0xe0, 0xde, 0x74, 0xa2, 0xad, 0x3f, 0x0e, 0x72, 0x00, 0x45, 0x25, 0xf9, 0x05, 0x19, 0xf9, 0x49, 0x74, 0x25, 0x46, 0x0b, 0x31, 0xcb, 0xb6, 0x9a, 0xb3, 0x70, 0x1a, 0x9e, 0xa6, 0x8a, 0xaa, 0xb7, 0x2c, 0x6d, 0x65, 0xd3, 0x64, 0xd0, 0xf0, 0xed, 0x4d, 0x05, 0x24, 0x28, 0x0f, 0x11, 0x3b, 0xd6, 0x9e, 0xf1, 0xba, 0x98, 0x25, 0x20, 0x2b, 0x10, 0x28, 0x7a, 0x08, 0x8c, 0x4b, 0xf3, 0x0d, 0xeb, 0xec, 0xb7, 0x20, 0xac, 0x07, 0x39, 0xec, 0x67, 0x43, 0x4d, }; static const unsigned char ecdsa_secp521r1_sha512_10949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10949_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x33, 0x75, 0xab, 0xb9, 0x9e, 0x0c, 0xd3, 0x80, 0x1e, 0x7c, 0x12, 0x99, 0x3c, 0xfe, 0x72, 0x0c, 0x83, 0xde, 0x27, 0x89, 0x38, 0xa9, 0xe2, 0x2b, 0xb6, 0xea, 0x40, 0xa7, 0xc5, 0x99, 0xad, 0x05, 0xa5, 0xd3, 0xc8, 0xe5, 0xe5, 0xd7, 0xb3, 0xe1, 0x6a, 0x99, 0xe5, 0x28, 0xef, 0x0c, 0xe9, 0x1b, 0xe0, 0x95, 0x3c, 0xb1, 0xa9, 0xad, 0xf7, 0x57, 0xf2, 0x57, 0x55, 0x4c, 0xa4, 0x7a, 0xb0, 0x53, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10949 = { .name = "ecdsa_secp521r1_sha512_10949", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10949_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10949_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10949_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 393 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10950 for ECDSA, tcId is 394 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10950_pubkey[] = { 0x01, 0xd2, 0xec, 0xad, 0x92, 0x1d, 0xd1, 0x00, 0xa8, 0xdc, 0x1a, 0x7b, 0x82, 0x4b, 0x0a, 0xc6, 0xc9, 0xb6, 0x54, 0xab, 0x17, 0x98, 0x33, 0xc2, 0x88, 0x1c, 0xe2, 0x37, 0xf1, 0xb8, 0x49, 0x7a, 0xde, 0x85, 0x13, 0x02, 0xcf, 0x50, 0xea, 0x5e, 0xa1, 0x69, 0xc2, 0xa5, 0x0c, 0x0c, 0x09, 0xcb, 0x6e, 0xa5, 0x39, 0xa7, 0x29, 0x0a, 0x0f, 0x34, 0x37, 0x04, 0x4b, 0x7a, 0x2e, 0x9c, 0xa8, 0xd4, 0x05, 0x00, 0x00, 0x3f, 0xd5, 0x65, 0x15, 0x35, 0xdc, 0xba, 0x1f, 0x33, 0x19, 0x81, 0xc2, 0x16, 0xa1, 0xc7, 0xd9, 0x84, 0x2f, 0x65, 0xc5, 0xf3, 0x8c, 0xa4, 0x3d, 0xd7, 0x1c, 0x41, 0xe1, 0x9e, 0xfc, 0xac, 0x38, 0x46, 0x17, 0x65, 0x6f, 0xd0, 0xaf, 0xdd, 0x83, 0xc5, 0x0c, 0x5e, 0x52, 0x4e, 0x9b, 0x67, 0x2b, 0x7a, 0xa8, 0xa6, 0x6b, 0x28, 0x9a, 0xfa, 0x68, 0x8e, 0x45, 0xca, 0x6e, 0xdb, 0x34, 0x77, 0xa8, 0xb0, }; static const unsigned char ecdsa_secp521r1_sha512_10950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10950_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10950 = { .name = "ecdsa_secp521r1_sha512_10950", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10950_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10950_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10950_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 394 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10951 for ECDSA, tcId is 395 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10951_pubkey[] = { 0x01, 0x65, 0xd6, 0x79, 0x72, 0xa4, 0x8f, 0xdd, 0xc2, 0xf4, 0x1c, 0x03, 0xf7, 0x9a, 0xb5, 0xe0, 0xd4, 0x2f, 0xd0, 0x99, 0x2c, 0x01, 0x3e, 0xad, 0x13, 0x5c, 0x33, 0x94, 0x04, 0x96, 0x45, 0xe2, 0x6a, 0xd7, 0xc7, 0xbe, 0x96, 0x51, 0x0d, 0xf5, 0x9b, 0xa6, 0x77, 0xdc, 0x94, 0xf1, 0x14, 0x6e, 0x8e, 0x8e, 0x8f, 0xbe, 0x56, 0xde, 0xbc, 0xb6, 0x69, 0x20, 0x63, 0x95, 0x81, 0x95, 0x6b, 0x92, 0xb4, 0xd1, 0x00, 0x8a, 0xeb, 0x66, 0xee, 0x0b, 0xe1, 0x8a, 0xba, 0xa9, 0x09, 0xa9, 0x73, 0xc7, 0x0b, 0x57, 0x49, 0xd6, 0x88, 0xf8, 0xe2, 0xcd, 0x2e, 0x6e, 0x16, 0x13, 0xaf, 0x93, 0xd0, 0x03, 0x34, 0x92, 0xd2, 0x6a, 0x6e, 0x82, 0xcf, 0xb8, 0x0a, 0xc6, 0x92, 0x5a, 0xc6, 0xbc, 0x79, 0xb9, 0x84, 0xf7, 0x3e, 0x3e, 0xbb, 0xff, 0x2f, 0x22, 0x3a, 0x38, 0x67, 0x68, 0x91, 0xc1, 0xec, 0xd7, 0x84, 0xa8, 0xa7, 0x89, }; static const unsigned char ecdsa_secp521r1_sha512_10951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10951_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x9f, 0x57, 0x70, 0x8f, 0xa9, 0x7e, 0xba, 0x94, 0xc6, 0xd4, 0x78, 0x2c, 0xdd, 0x4e, 0x33, 0xbb, 0x95, 0xc1, 0x35, 0x3b, 0xde, 0x09, 0x52, 0x32, 0xe3, 0xe2, 0xba, 0xb2, 0x77, 0xbb, 0x5d, 0x2b, 0x48, 0xf5, 0x5a, 0x53, 0xff, 0xe9, 0x28, 0xd0, 0x34, 0xc2, 0x99, 0x70, 0xa9, 0xe5, 0xf3, 0x84, 0xa0, 0x03, 0x90, 0x7d, 0x3d, 0x9b, 0x82, 0xa8, 0x68, 0x17, 0xcc, 0x61, 0xfb, 0x17, 0xf4, 0xc5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10951 = { .name = "ecdsa_secp521r1_sha512_10951", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10951_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10951_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10951_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 395 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10952 for ECDSA, tcId is 396 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10952_pubkey[] = { 0x01, 0x8c, 0xd1, 0x12, 0x52, 0xf0, 0xa4, 0x34, 0xf4, 0x46, 0xd3, 0xaf, 0x18, 0x51, 0x8c, 0x6b, 0x84, 0xcb, 0x0b, 0x7b, 0xf3, 0x37, 0x58, 0xb4, 0xd8, 0x3b, 0x97, 0xc2, 0xa5, 0x6e, 0x00, 0x37, 0xb5, 0x4d, 0x57, 0xd2, 0xb0, 0xb8, 0x42, 0xe9, 0xc1, 0x7d, 0x70, 0x50, 0x4e, 0x01, 0x89, 0x63, 0x89, 0xc0, 0x66, 0xdb, 0x8f, 0x2b, 0xfe, 0xc0, 0x25, 0x25, 0x9a, 0x51, 0xdf, 0xf5, 0x14, 0x66, 0x83, 0x08, 0x01, 0xcc, 0xa5, 0x43, 0x65, 0x15, 0x6c, 0x59, 0xe2, 0xc7, 0x3c, 0x17, 0x66, 0x4f, 0x09, 0xfc, 0xdc, 0xfd, 0x5b, 0x91, 0x0f, 0x9a, 0xb4, 0x8d, 0x08, 0x99, 0xb6, 0xa7, 0x06, 0x4d, 0xe8, 0xb8, 0x0f, 0xc7, 0xa9, 0x92, 0xe4, 0x7e, 0xe7, 0xf2, 0x3e, 0xc8, 0x2f, 0xd8, 0x01, 0x79, 0xa1, 0x9f, 0x4c, 0xf8, 0x9b, 0x4c, 0x02, 0xb7, 0x21, 0x8f, 0x43, 0x52, 0x98, 0xda, 0x5d, 0x32, 0x2a, 0x98, 0x2c, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10952_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x68, 0xd9, 0x8f, 0xa9, 0x07, 0x36, 0xef, 0xf3, 0xe9, 0x0f, 0x8f, 0xcf, 0xe5, 0x08, 0x38, 0xb6, 0xfa, 0x0b, 0xf2, 0xcd, 0xe7, 0x7b, 0xc5, 0x1e, 0x3f, 0x41, 0x01, 0x9c, 0x80, 0x06, 0xf4, 0xe9, 0xcb, 0xae, 0xad, 0xce, 0x7d, 0xbb, 0x44, 0x46, 0x2d, 0xa6, 0x42, 0x5b, 0xe9, 0xcf, 0xda, 0xec, 0xb2, 0x34, 0xc4, 0x17, 0x49, 0xce, 0x69, 0x5b, 0xe1, 0xb5, 0xea, 0xd2, 0xe6, 0xb1, 0x20, 0x5f, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10952 = { .name = "ecdsa_secp521r1_sha512_10952", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10952_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10952_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10952_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 396 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10953 for ECDSA, tcId is 397 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10953_pubkey[] = { 0x01, 0xd6, 0x32, 0x9a, 0x8a, 0xfd, 0xea, 0x27, 0xcf, 0x10, 0x28, 0xa4, 0x4d, 0x19, 0xc3, 0xc7, 0x29, 0x27, 0x59, 0x0d, 0x64, 0x62, 0x87, 0x75, 0xf3, 0x24, 0x51, 0x4c, 0x81, 0xde, 0x30, 0x1a, 0xa9, 0xbe, 0x9c, 0x77, 0x5c, 0x53, 0xa6, 0x34, 0x9d, 0x1c, 0xbd, 0x5e, 0xcf, 0xc7, 0xbd, 0x39, 0xb3, 0x73, 0xe6, 0x13, 0xa1, 0x0c, 0x14, 0x39, 0x44, 0x1b, 0x14, 0x14, 0x30, 0xfd, 0xad, 0xac, 0x16, 0x8c, 0x00, 0x07, 0x13, 0x42, 0xd6, 0x3d, 0xba, 0x90, 0x1b, 0x93, 0xbd, 0xc4, 0x44, 0xa1, 0xfe, 0x2e, 0xc6, 0xa1, 0x51, 0x08, 0xbd, 0xf4, 0x9e, 0xb1, 0xdf, 0xd2, 0x18, 0x37, 0x38, 0x84, 0x52, 0x0d, 0x84, 0xbc, 0xe0, 0x3c, 0x50, 0x12, 0xf5, 0x83, 0x70, 0x51, 0xcb, 0x8a, 0xbf, 0x6a, 0x0b, 0xe7, 0x8d, 0xfd, 0xfe, 0xeb, 0x3a, 0x58, 0x72, 0xdf, 0xf7, 0x5b, 0x3f, 0x87, 0x4f, 0xaa, 0x6d, 0x22, 0x43, 0xbf, }; static const unsigned char ecdsa_secp521r1_sha512_10953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10953_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xe9, 0x7a, 0xe6, 0x6b, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x68, 0xbc, 0x97, 0x26, 0xf0, 0x2d, 0xbf, 0x85, 0x98, 0xa9, 0x8b, 0x3e, 0x50, 0x77, 0xef, 0xf6, 0xf2, 0x49, 0x1e, 0xb6, 0x78, 0xed, 0x04, 0x0f, 0xb3, 0x38, 0xc0, 0x84, 0xa9, 0xea, 0x8a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10953 = { .name = "ecdsa_secp521r1_sha512_10953", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10953_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10953_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10953_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 397 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10954 for ECDSA, tcId is 398 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10954_pubkey[] = { 0x01, 0xc9, 0x63, 0xb6, 0x4c, 0xdc, 0x3e, 0xcb, 0x1c, 0x35, 0xcd, 0xa5, 0xce, 0xd9, 0x41, 0x9a, 0xc1, 0x46, 0xb0, 0x60, 0xad, 0xb0, 0x4c, 0x63, 0x8c, 0xf6, 0xb6, 0x66, 0x58, 0x01, 0x3c, 0xb2, 0x5e, 0x91, 0x5a, 0x6a, 0xd0, 0x05, 0x56, 0x68, 0x34, 0x28, 0x81, 0xed, 0x27, 0xf4, 0x38, 0xb5, 0x0a, 0xe4, 0xbb, 0x86, 0xae, 0x3c, 0x7c, 0x02, 0xb7, 0x27, 0xa1, 0x30, 0xc7, 0x7b, 0xad, 0x69, 0x80, 0x08, 0x00, 0x48, 0x1b, 0xff, 0xfa, 0xea, 0xd8, 0x56, 0xb4, 0x13, 0x7f, 0xd4, 0x26, 0x8e, 0xcd, 0x74, 0xa6, 0xc2, 0xd4, 0xbd, 0x6c, 0xd1, 0x39, 0x98, 0xce, 0x7f, 0x0e, 0x82, 0x8b, 0x22, 0x01, 0x35, 0xd8, 0xdf, 0x23, 0x25, 0x3e, 0x68, 0x1d, 0xc9, 0x06, 0x73, 0xe0, 0x53, 0x7e, 0x75, 0x90, 0x76, 0x9a, 0x2a, 0x44, 0x1a, 0xaa, 0xaa, 0x3a, 0x99, 0x01, 0xc4, 0xfb, 0xe4, 0x4f, 0xa9, 0x51, 0x39, 0x51, 0xef, }; static const unsigned char ecdsa_secp521r1_sha512_10954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10954_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xae, 0x66, 0xbc, 0xd4, 0xca, 0xe3, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x39, 0x54, 0x21, 0x2f, 0x8b, 0xea, 0x57, 0x8d, 0x93, 0xe6, 0x85, 0xe5, 0xdb, 0xa3, 0x29, 0x81, 0x1b, 0x25, 0x42, 0xbb, 0x39, 0x82, 0x33, 0xe2, 0x94, 0x4b, 0xce, 0xb1, 0x92, 0x63, 0x32, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10954 = { .name = "ecdsa_secp521r1_sha512_10954", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10954_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10954_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10954_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 398 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10955 for ECDSA, tcId is 399 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10955_pubkey[] = { 0x00, 0x5d, 0xfb, 0xc8, 0x67, 0xd5, 0x3c, 0x57, 0xb2, 0x94, 0x55, 0x02, 0xb8, 0xe5, 0x6d, 0x96, 0xca, 0x2d, 0x4d, 0x48, 0x5a, 0xa3, 0x34, 0x52, 0x20, 0x0a, 0x2f, 0x4b, 0xa1, 0x60, 0x42, 0x35, 0x79, 0x76, 0xaf, 0xee, 0xcf, 0x3e, 0x63, 0xb2, 0xfd, 0xcd, 0x5c, 0xdd, 0x76, 0x07, 0x6c, 0x1a, 0x73, 0xe4, 0x96, 0xca, 0xf9, 0xd6, 0xde, 0x3e, 0x88, 0x31, 0xd9, 0x55, 0xd1, 0x38, 0xe0, 0x58, 0x84, 0xae, 0x01, 0xe0, 0x4a, 0xa0, 0xb5, 0x36, 0x0a, 0x0d, 0x3b, 0xad, 0xd0, 0x12, 0x0f, 0xbb, 0x8c, 0xc4, 0x2a, 0x38, 0xbf, 0x1c, 0x61, 0x75, 0x5d, 0x00, 0x85, 0x8e, 0x40, 0xe4, 0xb1, 0x0d, 0xa4, 0xea, 0x25, 0x75, 0x83, 0x0d, 0xc9, 0x2e, 0x31, 0x2c, 0x20, 0xaf, 0x2b, 0x8b, 0x16, 0x7d, 0x7a, 0x58, 0xd1, 0x78, 0x66, 0x1d, 0x48, 0xcd, 0x93, 0x2f, 0xe4, 0x7a, 0x4b, 0xc7, 0x14, 0x5e, 0x62, 0x0a, 0xe2, 0x2c, }; static const unsigned char ecdsa_secp521r1_sha512_10955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10955_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x5c, 0xcd, 0x79, 0xa9, 0x95, 0xc6, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0x21, 0xba, 0xdb, 0x58, 0xa5, 0x18, 0xaf, 0xa8, 0x01, 0x0a, 0x82, 0xc0, 0x3c, 0xad, 0x31, 0xfa, 0x94, 0xbb, 0xbd, 0xe9, 0x68, 0x20, 0x16, 0x6d, 0x27, 0xe6, 0x44, 0x93, 0x8e, 0x00, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10955 = { .name = "ecdsa_secp521r1_sha512_10955", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10955_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10955_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10955_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 399 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10956 for ECDSA, tcId is 400 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10956_pubkey[] = { 0x00, 0x78, 0xbe, 0x6c, 0x43, 0xe3, 0x66, 0xcf, 0x63, 0xdd, 0xc4, 0x23, 0x5e, 0x8b, 0x96, 0x93, 0x86, 0xe9, 0x50, 0x12, 0xfb, 0xca, 0x5c, 0xeb, 0xf1, 0xb0, 0xa6, 0xfe, 0x3c, 0x03, 0xc1, 0x25, 0x7d, 0xf7, 0xcf, 0x47, 0xb0, 0x02, 0xeb, 0x6c, 0x44, 0x97, 0xf3, 0x10, 0xbf, 0xf6, 0x13, 0x1b, 0x5c, 0xcb, 0x54, 0xfd, 0x0e, 0x8e, 0xe7, 0xfc, 0xf6, 0xb4, 0x9d, 0x48, 0x7e, 0x1b, 0x54, 0x50, 0x8f, 0x68, 0x00, 0x9b, 0x61, 0xa5, 0x47, 0x10, 0x4c, 0x85, 0x16, 0xe0, 0xdc, 0x35, 0xd3, 0xd1, 0x76, 0x59, 0xca, 0x09, 0x8d, 0x02, 0x3b, 0x05, 0x93, 0x90, 0x8f, 0xe9, 0x79, 0xc2, 0x9e, 0x62, 0x37, 0x37, 0x38, 0xa3, 0xc3, 0x00, 0x94, 0xba, 0x47, 0x10, 0x5a, 0x49, 0xed, 0xbc, 0x6e, 0x1d, 0x37, 0xcc, 0xe3, 0x17, 0xb4, 0x9d, 0x27, 0x01, 0x47, 0x0e, 0xeb, 0x53, 0xd9, 0xb2, 0x4d, 0xce, 0x9d, 0x80, 0x91, 0x66, }; static const unsigned char ecdsa_secp521r1_sha512_10956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10956_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe1, 0x8d, 0xcc, 0x11, 0xdf, 0xf7, 0x52, 0x62, 0x33, 0xd9, 0x23, 0xa0, 0xb2, 0x02, 0xcb, 0x29, 0xe7, 0x13, 0xf2, 0x2d, 0xe8, 0xbb, 0x6a, 0xb0, 0xa1, 0x28, 0x21, 0xc5, 0xab, 0xbe, 0x3f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10956 = { .name = "ecdsa_secp521r1_sha512_10956", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10956_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10956_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10956_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 400 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10957 for ECDSA, tcId is 401 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10957_pubkey[] = { 0x00, 0x93, 0xf6, 0x89, 0x61, 0x00, 0x5f, 0x30, 0x40, 0xdc, 0x1a, 0x8f, 0xf1, 0x41, 0x6c, 0x91, 0x7b, 0xdc, 0xc7, 0x7f, 0x1d, 0xfa, 0x85, 0x50, 0x6c, 0x3b, 0xb6, 0x2d, 0xac, 0x47, 0xf7, 0xbe, 0x95, 0x29, 0xb4, 0xcb, 0xe5, 0x7d, 0xd2, 0xc1, 0x9e, 0x86, 0x0b, 0xd2, 0xa0, 0xdb, 0x71, 0xd4, 0x7e, 0xf1, 0xec, 0xa8, 0xa2, 0x0b, 0xfc, 0x3e, 0x0b, 0xc5, 0xe0, 0x5c, 0x83, 0x03, 0x00, 0x1c, 0x19, 0x60, 0x00, 0x2b, 0x9a, 0x3d, 0x45, 0xf2, 0xf5, 0x12, 0x0f, 0xee, 0x06, 0x44, 0x5f, 0x0d, 0x34, 0xe6, 0x13, 0x8e, 0x3a, 0xc5, 0xb1, 0x6d, 0x2a, 0x22, 0xf0, 0x46, 0x0c, 0xea, 0x25, 0x8c, 0x36, 0x8c, 0xa9, 0xe4, 0x78, 0xeb, 0x7b, 0x82, 0x53, 0xe7, 0xc6, 0xf2, 0xf7, 0x25, 0x0f, 0xdc, 0x7d, 0xcd, 0x72, 0x43, 0x76, 0x1f, 0x8d, 0x56, 0xf2, 0x35, 0x0a, 0xc5, 0x1e, 0x47, 0xee, 0x06, 0x3f, 0x41, 0xda, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10957_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x22, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xb9, 0xc4, 0xc3, 0xf7, 0x3c, 0xc8, 0x16, 0x14, 0x3f, 0xac, 0x34, 0x12, 0xb6, 0x2d, 0xe4, 0xc6, 0x3d, 0xb0, 0x8f, 0x8c, 0x57, 0xe4, 0xc5, 0x8c, 0x31, 0xf1, 0xb4, 0x57, 0xca, 0x5e, 0x57, 0xe2, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10957 = { .name = "ecdsa_secp521r1_sha512_10957", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10957_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10957_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10957_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 401 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10958 for ECDSA, tcId is 402 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10958_pubkey[] = { 0x00, 0x2d, 0x2d, 0x7d, 0x40, 0xbf, 0x17, 0xc4, 0xe8, 0xb1, 0x87, 0x57, 0xe4, 0x51, 0xdd, 0xde, 0xd9, 0x5e, 0x6b, 0x10, 0x07, 0xcd, 0x14, 0x48, 0x09, 0xd2, 0x1a, 0xf3, 0x13, 0x53, 0xb0, 0x30, 0x38, 0x37, 0x2c, 0x4a, 0xf2, 0x04, 0xd4, 0x41, 0x4b, 0x71, 0x06, 0x0b, 0x48, 0xb3, 0xa8, 0x43, 0x9c, 0x63, 0x28, 0x09, 0xbd, 0x33, 0xc4, 0x73, 0x62, 0x63, 0x04, 0x44, 0x05, 0xa1, 0xad, 0x76, 0x6e, 0x36, 0x00, 0xbb, 0x0c, 0x5a, 0x88, 0x48, 0xf9, 0x3f, 0xa3, 0xe8, 0x53, 0x76, 0xb0, 0x12, 0xbf, 0x06, 0x4e, 0x30, 0x37, 0x46, 0x52, 0x9a, 0x67, 0x3b, 0x85, 0x2b, 0xb5, 0xa9, 0x69, 0xc2, 0x4c, 0x01, 0x56, 0xa8, 0xdd, 0x26, 0x24, 0x2d, 0x0a, 0xad, 0x4b, 0xae, 0x43, 0xe2, 0x36, 0x31, 0xb0, 0x1f, 0xb9, 0xd0, 0x50, 0xf9, 0x74, 0x4b, 0x59, 0xf3, 0xb5, 0x2b, 0x1c, 0x57, 0x22, 0x17, 0xa1, 0xd7, 0x05, 0x88, }; static const unsigned char ecdsa_secp521r1_sha512_10958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10958_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x05, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x29, 0x8e, 0xb5, 0x7e, 0x5a, 0xff, 0x93, 0x43, 0x59, 0x7a, 0x54, 0x2d, 0x31, 0x32, 0xf9, 0xe7, 0x34, 0xfd, 0xc3, 0x05, 0x12, 0x5e, 0x0e, 0xc1, 0x39, 0xc5, 0xf7, 0x80, 0xee, 0x8e, 0x8c, 0xb9, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10958 = { .name = "ecdsa_secp521r1_sha512_10958", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10958_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10958_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10958_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 402 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10959 for ECDSA, tcId is 403 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10959_pubkey[] = { 0x01, 0x8a, 0xc1, 0x1d, 0xfe, 0x62, 0xd1, 0xf2, 0xa8, 0x20, 0x27, 0x32, 0xc7, 0x9b, 0x42, 0x3d, 0x29, 0xf4, 0x3b, 0xec, 0x4d, 0xb6, 0x08, 0x0a, 0x22, 0x07, 0x96, 0xa1, 0x0f, 0x26, 0x85, 0xf9, 0x2c, 0x71, 0xc7, 0xf7, 0x2d, 0x9d, 0xa0, 0xa8, 0xac, 0xb2, 0x26, 0x80, 0xcc, 0xa0, 0x18, 0xeb, 0xa2, 0xe8, 0xba, 0x3b, 0xfd, 0xe1, 0xdb, 0x9a, 0x4e, 0xf3, 0xb9, 0x7d, 0xa1, 0x64, 0x74, 0x36, 0x4e, 0x96, 0x00, 0x5a, 0xad, 0x3b, 0x28, 0x67, 0x07, 0xbd, 0x3a, 0xd0, 0x7a, 0x06, 0x0c, 0xab, 0xca, 0x49, 0xc5, 0x3d, 0xe4, 0xf5, 0x6c, 0x05, 0xa0, 0xa8, 0xde, 0x40, 0xfd, 0x96, 0x9d, 0x7d, 0x4f, 0x99, 0x5f, 0x7c, 0x67, 0x01, 0xfe, 0x5c, 0x53, 0x21, 0xf8, 0x53, 0x18, 0xb9, 0x8b, 0xe6, 0x62, 0x51, 0xfa, 0x49, 0x00, 0x88, 0xfd, 0x72, 0x7d, 0xa2, 0x45, 0x4e, 0x00, 0xb3, 0xb9, 0x4d, 0xc6, 0xe1, 0x24, 0x1b, }; static const unsigned char ecdsa_secp521r1_sha512_10959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10959_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x44, 0x45, 0xe1, 0x06, 0x70, 0xed, 0x04, 0x37, 0xc9, 0xdb, 0x41, 0x25, 0xac, 0x41, 0x75, 0xfb, 0xd7, 0x0e, 0x9b, 0xd1, 0x79, 0x9a, 0x85, 0xf4, 0x4c, 0xa0, 0xa8, 0xe6, 0x1a, 0x33, 0x54, 0xe8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10959 = { .name = "ecdsa_secp521r1_sha512_10959", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10959_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10959_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10959_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 403 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10960 for ECDSA, tcId is 404 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10960_pubkey[] = { 0x00, 0x51, 0xb2, 0xc3, 0xe0, 0x49, 0x45, 0x64, 0xed, 0x48, 0xed, 0x34, 0x79, 0xb5, 0x96, 0xea, 0x40, 0x78, 0x24, 0x05, 0x50, 0xa3, 0xc2, 0x8d, 0xa3, 0x3d, 0x71, 0xd2, 0x59, 0xe8, 0xe6, 0x23, 0xe3, 0x7a, 0xb4, 0x3f, 0x39, 0x6c, 0x49, 0x36, 0x3f, 0x31, 0xc8, 0xde, 0x8a, 0x46, 0x44, 0xd3, 0x7e, 0x94, 0xed, 0x80, 0xe0, 0xdd, 0x4f, 0x92, 0xc3, 0xdf, 0x21, 0x06, 0xe2, 0x79, 0x5c, 0x27, 0x98, 0xb8, 0x00, 0xa5, 0x30, 0xd5, 0xe9, 0x61, 0xf0, 0x69, 0x6b, 0xbe, 0xb9, 0x62, 0xac, 0xa8, 0xe7, 0x1f, 0x65, 0x95, 0x6a, 0xe0, 0x4c, 0xdc, 0x22, 0xa4, 0xac, 0x65, 0x14, 0x69, 0x43, 0xe9, 0x9a, 0x4a, 0x2f, 0xdb, 0x47, 0x7d, 0xf7, 0x5a, 0xa0, 0x69, 0xc8, 0xdd, 0x37, 0xa5, 0xda, 0xae, 0xa3, 0x84, 0x80, 0x79, 0xa6, 0xa7, 0xbc, 0x03, 0xe0, 0xfa, 0xa3, 0xd6, 0x5d, 0x42, 0xf8, 0x05, 0x3d, 0xb2, 0x07, 0x8b, }; static const unsigned char ecdsa_secp521r1_sha512_10960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10960_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4f, 0xa6, 0xdb, 0xdc, 0xd9, 0x14, 0x84, 0xeb, 0xc0, 0xd5, 0x21, 0x56, 0x9e, 0x4c, 0x5e, 0xfb, 0x25, 0x91, 0x0b, 0x1f, 0x0d, 0xde, 0xf1, 0x9d, 0x04, 0x10, 0xc5, 0x0c, 0x73, 0xe6, 0x8d, 0xb9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10960 = { .name = "ecdsa_secp521r1_sha512_10960", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10960_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10960_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10960_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 404 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10961 for ECDSA, tcId is 405 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10961_pubkey[] = { 0x01, 0xba, 0x31, 0xa6, 0xf9, 0xc2, 0xd2, 0x27, 0xda, 0x57, 0xde, 0x00, 0x75, 0x9e, 0x2e, 0x84, 0x4d, 0x60, 0x7b, 0xc9, 0xbd, 0x92, 0xbc, 0xdf, 0x28, 0x20, 0x06, 0x88, 0x4d, 0xc3, 0x47, 0xc9, 0x28, 0x4f, 0x0d, 0xc0, 0x62, 0x3a, 0xf1, 0xe9, 0xdb, 0x22, 0x11, 0x73, 0x64, 0xa7, 0xa8, 0x0a, 0x5b, 0x06, 0x7e, 0xfa, 0x19, 0xb2, 0x04, 0xda, 0xc8, 0xfa, 0xf2, 0x23, 0x0d, 0x80, 0xb7, 0x04, 0xad, 0xdc, 0x00, 0xd8, 0x8b, 0x76, 0x1c, 0xd3, 0xa4, 0xb0, 0x94, 0x7b, 0xfc, 0x17, 0xe2, 0x04, 0xb4, 0xd7, 0x51, 0xf7, 0x68, 0x80, 0xa8, 0x2c, 0x9b, 0x7c, 0x6f, 0xd9, 0x3d, 0xed, 0x55, 0x88, 0x3c, 0x99, 0x50, 0x02, 0xd8, 0xb8, 0xbf, 0xff, 0x1e, 0x02, 0x11, 0x89, 0xc0, 0x8d, 0x82, 0x9d, 0x16, 0xb0, 0x88, 0xf4, 0xfb, 0x39, 0xad, 0x94, 0x56, 0xea, 0xfb, 0xc7, 0x7c, 0x20, 0x35, 0x3b, 0xc0, 0xf3, 0xc0, 0x38, }; static const unsigned char ecdsa_secp521r1_sha512_10961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10961_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa4, 0xfc, 0x31, 0x32, 0x2e, 0x69, 0xda, 0x41, 0x16, 0x2a, 0x76, 0xab, 0xf3, 0xa1, 0xb4, 0x50, 0x7a, 0xe6, 0x60, 0x74, 0x63, 0x34, 0x46, 0xf2, 0x59, 0x66, 0x1a, 0x61, 0xc9, 0x3b, 0xe3, 0x0e, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10961 = { .name = "ecdsa_secp521r1_sha512_10961", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10961_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10961_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10961_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 405 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10962 for ECDSA, tcId is 406 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10962_pubkey[] = { 0x01, 0x37, 0xbb, 0xb4, 0x8e, 0xf2, 0x81, 0x13, 0x38, 0x49, 0xed, 0x72, 0x3f, 0x56, 0x62, 0xa1, 0x9f, 0xff, 0x9c, 0xc7, 0x38, 0x9a, 0x01, 0x70, 0xd3, 0x11, 0xbd, 0x34, 0xf4, 0xdb, 0xdc, 0x65, 0x62, 0x46, 0xdb, 0x69, 0x5e, 0xa0, 0x71, 0x2d, 0x8a, 0xce, 0xff, 0x9d, 0x1d, 0x0e, 0xf7, 0x92, 0x1e, 0xc2, 0xe3, 0xf8, 0xb5, 0x33, 0xe4, 0xca, 0x12, 0x2f, 0x9f, 0x7f, 0x44, 0x60, 0x73, 0x88, 0x93, 0x34, 0x01, 0x63, 0xe4, 0x50, 0x0d, 0x99, 0x80, 0x95, 0xf6, 0x0f, 0xa3, 0xfe, 0xd4, 0x14, 0x9d, 0x2d, 0x9b, 0x5b, 0x01, 0x8e, 0x03, 0xeb, 0x53, 0x44, 0xef, 0xe8, 0xff, 0xcc, 0x1c, 0x7d, 0x27, 0x6e, 0x74, 0x01, 0xa4, 0xdf, 0x63, 0x9c, 0x4a, 0xb1, 0x08, 0x82, 0x00, 0x62, 0x49, 0x54, 0x71, 0xbe, 0x7b, 0x29, 0x39, 0x8a, 0xad, 0xba, 0xe4, 0x40, 0xa9, 0xbd, 0xcd, 0x55, 0xcf, 0x0b, 0xb5, 0xd9, 0x6f, 0x79, }; static const unsigned char ecdsa_secp521r1_sha512_10962_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10962_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10962 = { .name = "ecdsa_secp521r1_sha512_10962", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10962_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10962_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10962_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 406 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10963 for ECDSA, tcId is 407 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10963_pubkey[] = { 0x00, 0x72, 0x6d, 0xda, 0x8b, 0x7b, 0x6e, 0xd2, 0x5f, 0x97, 0xf1, 0xfc, 0x6c, 0x3c, 0xcf, 0x55, 0x4d, 0x60, 0xfc, 0x71, 0xe4, 0xfa, 0xb2, 0xa5, 0x78, 0x28, 0x6d, 0x32, 0x61, 0x2e, 0x7f, 0x3e, 0x66, 0x9f, 0xae, 0xd0, 0xb9, 0x76, 0x19, 0xae, 0xf2, 0xd5, 0xaf, 0xf9, 0xc8, 0xff, 0xd9, 0x87, 0xfe, 0xdd, 0xc0, 0xd6, 0xc3, 0x8b, 0x7e, 0xec, 0x02, 0x81, 0x91, 0x40, 0x08, 0x74, 0x80, 0x3f, 0x49, 0x8b, 0x00, 0xc0, 0xb8, 0x87, 0x0c, 0x61, 0x2e, 0x06, 0xc1, 0x3c, 0x57, 0xed, 0x6f, 0x7e, 0xf3, 0xd5, 0x3b, 0x5e, 0x5f, 0xa2, 0xdb, 0x62, 0x70, 0x7b, 0x03, 0x4b, 0x5e, 0xc1, 0x3f, 0xb4, 0x70, 0x18, 0xe3, 0x1d, 0xa7, 0xec, 0xc9, 0x91, 0xd5, 0x75, 0x94, 0x34, 0x68, 0xd7, 0x01, 0xe1, 0x18, 0xec, 0xa3, 0x31, 0x22, 0xcf, 0x6d, 0x39, 0x4b, 0x8a, 0x6e, 0xc0, 0xf4, 0x5b, 0xc0, 0x97, 0x01, 0x60, 0x3a, 0x26, }; static const unsigned char ecdsa_secp521r1_sha512_10963_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10963_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x34, 0x6c, 0xc7, 0xd4, 0x83, 0x9b, 0x77, 0xf9, 0xf4, 0x87, 0xc7, 0xe7, 0xf2, 0x84, 0x1c, 0x5b, 0x7d, 0x05, 0xf9, 0x66, 0xf3, 0xbd, 0xe2, 0x8f, 0x1f, 0xa0, 0x80, 0xce, 0x40, 0x03, 0x7a, 0x74, 0xe3, 0x00, 0x1a, 0x2b, 0x00, 0xbd, 0x39, 0xee, 0x4c, 0x93, 0x07, 0x2e, 0x99, 0x63, 0x72, 0x49, 0x41, 0x38, 0x3c, 0xf0, 0x81, 0x2c, 0x02, 0xd1, 0xc8, 0x38, 0xad, 0x45, 0x02, 0xa1, 0x2c, 0x61, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10963 = { .name = "ecdsa_secp521r1_sha512_10963", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10963_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10963_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10963_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 407 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10964 for ECDSA, tcId is 408 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10964_pubkey[] = { 0x01, 0x6f, 0xce, 0x9f, 0x37, 0x5b, 0xbd, 0x29, 0x68, 0xad, 0xaa, 0xf3, 0x57, 0x55, 0x95, 0x12, 0x9e, 0xf3, 0xe7, 0x21, 0xc3, 0xb7, 0xc8, 0x3d, 0x5a, 0x4a, 0x79, 0xf4, 0xb5, 0xdf, 0xbb, 0xdb, 0x1f, 0x66, 0xda, 0x72, 0x43, 0xe5, 0x12, 0x0c, 0x5d, 0xbd, 0x7b, 0xe1, 0xca, 0x07, 0x3e, 0x04, 0xb4, 0xcc, 0x58, 0xca, 0x8c, 0xe2, 0xf3, 0x4f, 0xf6, 0xa3, 0xd0, 0x2a, 0x92, 0x9b, 0xf2, 0xfc, 0x27, 0x97, 0x00, 0x83, 0xf1, 0x30, 0x79, 0x2d, 0x6c, 0x45, 0xc8, 0xf2, 0xa6, 0x74, 0x71, 0xe5, 0x12, 0x46, 0xe2, 0xb8, 0x78, 0x14, 0x65, 0xb8, 0x29, 0x1c, 0xbd, 0xa6, 0x6d, 0x22, 0x71, 0x9c, 0xd5, 0x36, 0xbf, 0x80, 0x1e, 0x00, 0x76, 0x03, 0x09, 0x19, 0xd5, 0x70, 0x17, 0x32, 0xce, 0x76, 0x78, 0xbf, 0x47, 0x28, 0x46, 0xed, 0x07, 0x77, 0x93, 0x7e, 0xd7, 0x7c, 0xaa, 0xd7, 0x4d, 0x05, 0x66, 0x46, 0x14, 0xa2, }; static const unsigned char ecdsa_secp521r1_sha512_10964_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10964_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x01, 0x15, 0x0b, 0x0f, 0xe9, 0xf0, 0xdf, 0xf2, 0x7f, 0xa1, 0x80, 0xcc, 0x94, 0x42, 0xc3, 0xbf, 0xc9, 0xe3, 0x95, 0x23, 0x28, 0x98, 0x60, 0x7b, 0x11, 0x0a, 0x51, 0xbc, 0xb1, 0x08, 0x6c, 0xb9, 0x72, 0x6e, 0x25, 0x1a, 0x07, 0xc9, 0x55, 0x78, 0x08, 0xdf, 0x32, 0x46, 0x07, 0x15, 0x95, 0x0a, 0x3d, 0xc4, 0x46, 0xae, 0x42, 0x29, 0xb9, 0xed, 0x59, 0xfe, 0x24, 0x1b, 0x38, 0x9a, 0xee, 0x3a, 0x69, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10964 = { .name = "ecdsa_secp521r1_sha512_10964", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10964_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10964_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10964_sig, .siglen = 132, .result = 1, .comment = "point duplication during verification, tcId is 408 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10965 for ECDSA, tcId is 409 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10965_pubkey[] = { 0x01, 0x6f, 0xce, 0x9f, 0x37, 0x5b, 0xbd, 0x29, 0x68, 0xad, 0xaa, 0xf3, 0x57, 0x55, 0x95, 0x12, 0x9e, 0xf3, 0xe7, 0x21, 0xc3, 0xb7, 0xc8, 0x3d, 0x5a, 0x4a, 0x79, 0xf4, 0xb5, 0xdf, 0xbb, 0xdb, 0x1f, 0x66, 0xda, 0x72, 0x43, 0xe5, 0x12, 0x0c, 0x5d, 0xbd, 0x7b, 0xe1, 0xca, 0x07, 0x3e, 0x04, 0xb4, 0xcc, 0x58, 0xca, 0x8c, 0xe2, 0xf3, 0x4f, 0xf6, 0xa3, 0xd0, 0x2a, 0x92, 0x9b, 0xf2, 0xfc, 0x27, 0x97, 0x01, 0x7c, 0x0e, 0xcf, 0x86, 0xd2, 0x93, 0xba, 0x37, 0x0d, 0x59, 0x8b, 0x8e, 0x1a, 0xed, 0xb9, 0x1d, 0x47, 0x87, 0xeb, 0x9a, 0x47, 0xd6, 0xe3, 0x42, 0x59, 0x92, 0xdd, 0x8e, 0x63, 0x2a, 0xc9, 0x40, 0x7f, 0xe1, 0xff, 0x89, 0xfc, 0xf6, 0xe6, 0x2a, 0x8f, 0xe8, 0xcd, 0x31, 0x89, 0x87, 0x40, 0xb8, 0xd7, 0xb9, 0x12, 0xf8, 0x88, 0x6c, 0x81, 0x28, 0x83, 0x55, 0x28, 0xb2, 0xfa, 0x99, 0xb9, 0xeb, 0x5d, }; static const unsigned char ecdsa_secp521r1_sha512_10965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10965_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x01, 0x15, 0x0b, 0x0f, 0xe9, 0xf0, 0xdf, 0xf2, 0x7f, 0xa1, 0x80, 0xcc, 0x94, 0x42, 0xc3, 0xbf, 0xc9, 0xe3, 0x95, 0x23, 0x28, 0x98, 0x60, 0x7b, 0x11, 0x0a, 0x51, 0xbc, 0xb1, 0x08, 0x6c, 0xb9, 0x72, 0x6e, 0x25, 0x1a, 0x07, 0xc9, 0x55, 0x78, 0x08, 0xdf, 0x32, 0x46, 0x07, 0x15, 0x95, 0x0a, 0x3d, 0xc4, 0x46, 0xae, 0x42, 0x29, 0xb9, 0xed, 0x59, 0xfe, 0x24, 0x1b, 0x38, 0x9a, 0xee, 0x3a, 0x69, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10965 = { .name = "ecdsa_secp521r1_sha512_10965", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10965_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10965_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10965_sig, .siglen = 132, .result = -1, .comment = "duplication bug, tcId is 409 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10966 for ECDSA, tcId is 410 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10966_pubkey[] = { 0x01, 0x10, 0xfb, 0x89, 0xaf, 0xf1, 0x35, 0xed, 0xb8, 0x01, 0xa1, 0xcb, 0x5b, 0xc4, 0x95, 0x25, 0xb8, 0x1d, 0xc7, 0x4d, 0xa4, 0x50, 0x90, 0xd2, 0x28, 0x12, 0x28, 0x71, 0x81, 0x4f, 0x48, 0x9f, 0xdc, 0xb0, 0x2e, 0xbe, 0xe4, 0x6b, 0x70, 0x3e, 0x6b, 0x4e, 0x6a, 0xf5, 0x6c, 0x50, 0x24, 0x42, 0x2b, 0x31, 0xfd, 0x42, 0x52, 0xc4, 0x4d, 0x0b, 0xfd, 0x29, 0xd9, 0x45, 0xde, 0x78, 0x2d, 0x98, 0x54, 0x3f, 0x01, 0xec, 0x42, 0x5b, 0x4c, 0x49, 0x28, 0xe1, 0x2b, 0x61, 0x92, 0x27, 0xf1, 0xda, 0x6d, 0x0a, 0x96, 0x75, 0x07, 0x0d, 0x9c, 0x5b, 0x49, 0xca, 0x52, 0x30, 0x50, 0xac, 0xb7, 0x18, 0xe6, 0x26, 0x43, 0xb0, 0xe5, 0x80, 0x15, 0x43, 0xb7, 0x6d, 0xc1, 0x1f, 0x8d, 0x69, 0x4b, 0xa0, 0x94, 0x36, 0xd8, 0x39, 0x1b, 0x47, 0x7a, 0xd2, 0xc1, 0x43, 0xec, 0x50, 0xc2, 0x38, 0x4c, 0x4f, 0x68, 0x85, 0x12, 0xdc, }; static const unsigned char ecdsa_secp521r1_sha512_10966_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10966_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10966 = { .name = "ecdsa_secp521r1_sha512_10966", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10966_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10966_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10966_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 410 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10967 for ECDSA, tcId is 411 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10967_pubkey[] = { 0x01, 0xc6, 0x93, 0xa3, 0xfc, 0xcb, 0xc9, 0xf6, 0x25, 0x28, 0x42, 0x39, 0xc2, 0x72, 0x5f, 0x2a, 0x5c, 0x90, 0xb2, 0x9b, 0x7c, 0xe3, 0xd0, 0x77, 0x30, 0xf7, 0xde, 0x60, 0x31, 0xc9, 0xe7, 0x44, 0x46, 0xd2, 0x17, 0x88, 0x8a, 0xe0, 0x23, 0xaa, 0xe2, 0x3d, 0xf6, 0xa4, 0xaa, 0x15, 0x3f, 0x58, 0xc7, 0x95, 0x97, 0xd5, 0x7f, 0x42, 0xce, 0x5c, 0x13, 0x54, 0xe5, 0xdc, 0x43, 0xa5, 0xeb, 0x31, 0x1e, 0x13, 0x01, 0x5f, 0x99, 0x65, 0x84, 0x43, 0xb2, 0xe3, 0x9c, 0x3e, 0xdc, 0xbc, 0xda, 0x70, 0x70, 0x7f, 0xc5, 0xa4, 0xd3, 0x95, 0x45, 0xea, 0xbe, 0x35, 0x48, 0x16, 0xd0, 0x92, 0x84, 0xa6, 0x26, 0x5e, 0x47, 0xeb, 0xf0, 0xa4, 0x73, 0x55, 0x82, 0x8e, 0x81, 0x8a, 0x76, 0x7f, 0x84, 0x52, 0xa6, 0xd1, 0x84, 0x51, 0xe0, 0xe3, 0x81, 0x7a, 0x89, 0x6f, 0xf4, 0x04, 0xcb, 0x16, 0x11, 0xbf, 0xc4, 0xc4, 0xb4, 0xa3, }; static const unsigned char ecdsa_secp521r1_sha512_10967_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10967_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10967 = { .name = "ecdsa_secp521r1_sha512_10967", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10967_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10967_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10967_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 411 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10968 for ECDSA, tcId is 412 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10968_pubkey[] = { 0x01, 0x7d, 0x7b, 0xf7, 0x23, 0x67, 0x8d, 0xf5, 0x74, 0xce, 0x43, 0x66, 0x74, 0x1e, 0x1d, 0x37, 0x87, 0xf8, 0x34, 0xaf, 0x99, 0x97, 0xb4, 0x1c, 0x82, 0x60, 0xa0, 0x74, 0xcb, 0x1f, 0x32, 0x5d, 0x2b, 0xae, 0x9f, 0x85, 0x65, 0xdc, 0x6b, 0x51, 0xb6, 0xcb, 0x02, 0xdc, 0xee, 0xb5, 0xa1, 0xb7, 0x74, 0xee, 0x8d, 0xd7, 0x05, 0x7c, 0x99, 0xe2, 0xd9, 0x4c, 0x3c, 0x71, 0x29, 0x9a, 0x9c, 0xe0, 0xf1, 0xb0, 0x01, 0x62, 0xc6, 0x56, 0x32, 0xff, 0xf8, 0x8b, 0xdb, 0xb1, 0x7c, 0xe2, 0x52, 0x5c, 0xca, 0xc8, 0xdf, 0x37, 0xc5, 0x01, 0xab, 0x0e, 0x66, 0x26, 0xe2, 0x73, 0xfb, 0x6c, 0xf9, 0x90, 0x00, 0x42, 0x43, 0x44, 0xc0, 0xac, 0x53, 0x9c, 0x9f, 0xd6, 0xc4, 0xf3, 0xd2, 0x88, 0x76, 0xb2, 0x57, 0xc0, 0x10, 0xd3, 0x47, 0xa4, 0x5b, 0xb0, 0x10, 0xcc, 0x05, 0x84, 0x43, 0x84, 0x3a, 0x75, 0x83, 0x28, 0xd4, 0x91, }; static const unsigned char ecdsa_secp521r1_sha512_10968_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10968_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10968 = { .name = "ecdsa_secp521r1_sha512_10968", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10968_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10968_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10968_sig, .siglen = 132, .result = -1, .comment = "comparison with point at infinity , tcId is 412 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10969 for ECDSA, tcId is 413 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10969_pubkey[] = { 0x01, 0xe0, 0x6d, 0xb4, 0x23, 0xa9, 0x02, 0xe2, 0x39, 0xb9, 0x73, 0x40, 0xab, 0x05, 0x25, 0x34, 0xea, 0xd3, 0x7e, 0x79, 0x41, 0x2c, 0x67, 0x5b, 0xf0, 0xeb, 0x82, 0x39, 0x99, 0xe6, 0xb7, 0x31, 0x04, 0x0b, 0xff, 0x2b, 0x0e, 0x4f, 0xa6, 0x4e, 0xdf, 0x39, 0x62, 0xa3, 0x28, 0x92, 0x1e, 0xa5, 0xae, 0x4e, 0x8f, 0x40, 0x79, 0xea, 0xb4, 0x39, 0xe1, 0x2f, 0x92, 0x33, 0x5d, 0xfc, 0x48, 0x63, 0xc0, 0x7f, 0x00, 0x7e, 0xe9, 0xf0, 0xec, 0xb4, 0x09, 0xcb, 0x13, 0x3c, 0x0c, 0xd0, 0x8b, 0x85, 0xe8, 0x40, 0xb0, 0x76, 0xf3, 0xd6, 0x15, 0xe1, 0xef, 0x13, 0x93, 0xb5, 0x22, 0x23, 0x38, 0xb2, 0x27, 0xd7, 0x68, 0x00, 0x3d, 0xa5, 0xf3, 0xba, 0x1f, 0x72, 0xf6, 0x65, 0x4c, 0xa5, 0x4a, 0xc1, 0x1c, 0x2b, 0xa9, 0x1a, 0x6c, 0xb5, 0x88, 0x3d, 0x6d, 0x1a, 0x82, 0x30, 0x4a, 0xd2, 0xb7, 0x9d, 0xe0, 0x92, 0x15, 0xf3, }; static const unsigned char ecdsa_secp521r1_sha512_10969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10969_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10969 = { .name = "ecdsa_secp521r1_sha512_10969", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10969_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10969_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10969_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 413 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10970 for ECDSA, tcId is 414 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10970_pubkey[] = { 0x01, 0x50, 0x53, 0x74, 0x4d, 0x53, 0x81, 0x1d, 0xbe, 0xd8, 0x88, 0x0f, 0x38, 0xd3, 0xa3, 0x45, 0x78, 0xa7, 0xf1, 0xc1, 0x72, 0xec, 0x65, 0xbd, 0x8a, 0xd8, 0x18, 0x3b, 0xa0, 0xae, 0x10, 0x09, 0x34, 0x16, 0x10, 0x7f, 0x3c, 0x94, 0x27, 0x42, 0xbd, 0xe6, 0x07, 0x19, 0x94, 0x9b, 0x2c, 0x4f, 0x02, 0x6f, 0x43, 0x58, 0x21, 0x25, 0xc9, 0x9e, 0xd4, 0x8c, 0xbc, 0x7c, 0x5a, 0x05, 0x1a, 0x5a, 0x74, 0x48, 0x00, 0xb3, 0x6d, 0x4c, 0x91, 0xa2, 0xb0, 0x36, 0x7c, 0x56, 0x6b, 0x2c, 0x12, 0x98, 0x1c, 0xe0, 0xfd, 0xbc, 0x3b, 0xeb, 0x98, 0x37, 0x17, 0x40, 0x3f, 0x69, 0xbf, 0x42, 0x64, 0xfc, 0x61, 0x82, 0x47, 0x8a, 0xf0, 0xb2, 0x36, 0xff, 0x12, 0x0b, 0xcf, 0xca, 0x11, 0x69, 0x24, 0xc5, 0x52, 0xab, 0xef, 0x66, 0x63, 0xb6, 0x02, 0x3b, 0xe1, 0x98, 0x6b, 0x70, 0x20, 0x6d, 0x9b, 0xb8, 0x9b, 0x5e, 0xd2, 0x98, }; static const unsigned char ecdsa_secp521r1_sha512_10970_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10970_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10970 = { .name = "ecdsa_secp521r1_sha512_10970", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10970_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10970_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10970_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 414 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10971 for ECDSA, tcId is 415 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10971_pubkey[] = { 0x01, 0xfb, 0x2e, 0x26, 0x59, 0x6c, 0xc8, 0x04, 0x73, 0x91, 0x7d, 0xd4, 0x6b, 0x4a, 0x1d, 0x14, 0xbd, 0x9a, 0x1c, 0xa9, 0x76, 0x9d, 0xd1, 0x2b, 0xfa, 0xc1, 0xbf, 0xf1, 0x7c, 0xdc, 0x28, 0x2e, 0x74, 0xc7, 0x3a, 0x80, 0x1e, 0xc1, 0xbe, 0x83, 0xed, 0xfe, 0x4b, 0xfe, 0x98, 0x13, 0xec, 0x94, 0x3a, 0xc1, 0x51, 0x67, 0x8f, 0x0a, 0x9a, 0x0b, 0xf2, 0x7d, 0x9e, 0xf3, 0x08, 0x17, 0x7e, 0xb0, 0x40, 0x0f, 0x01, 0x9e, 0x03, 0xa5, 0xda, 0x3d, 0xa6, 0x7e, 0x6b, 0x8d, 0x06, 0x8d, 0xbd, 0xac, 0xf0, 0x91, 0xb9, 0xd5, 0xef, 0xad, 0xaf, 0x63, 0xf4, 0xa7, 0xe9, 0xc6, 0xb6, 0xed, 0x0a, 0x1c, 0x9a, 0x5d, 0x3c, 0xbc, 0x3e, 0x02, 0x44, 0xd4, 0x81, 0x06, 0x60, 0x18, 0xfb, 0xa7, 0x67, 0x4a, 0x2b, 0x59, 0x13, 0x9a, 0x56, 0x56, 0x78, 0x05, 0x63, 0xbb, 0x46, 0x18, 0x01, 0x4f, 0x17, 0x67, 0x52, 0xe1, 0x77, 0xe0, }; static const unsigned char ecdsa_secp521r1_sha512_10971_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10971_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10971 = { .name = "ecdsa_secp521r1_sha512_10971", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10971_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10971_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10971_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 415 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10972 for ECDSA, tcId is 416 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10972_pubkey[] = { 0x00, 0x84, 0x22, 0xce, 0xa9, 0xdc, 0xf8, 0xae, 0x01, 0xf7, 0xa1, 0x57, 0x88, 0x8f, 0x01, 0x8a, 0x40, 0xa6, 0x64, 0x61, 0xd3, 0x56, 0x6e, 0xc4, 0xa4, 0xdf, 0xc8, 0x9e, 0xcb, 0x3c, 0x24, 0x04, 0xbe, 0x73, 0x4d, 0x32, 0x91, 0x37, 0xd6, 0x30, 0x38, 0x7b, 0x01, 0x2d, 0x03, 0x32, 0x21, 0x85, 0x7d, 0x5b, 0xfb, 0x29, 0x0f, 0xa8, 0x02, 0x76, 0x40, 0xb4, 0x06, 0x30, 0x72, 0xa3, 0xe5, 0xb1, 0x4c, 0x86, 0x00, 0x25, 0xa2, 0x19, 0xe7, 0x24, 0xb8, 0x18, 0x14, 0x90, 0x1a, 0x67, 0x7a, 0x8b, 0xee, 0x9b, 0x71, 0x6b, 0x33, 0xb1, 0x6a, 0x5b, 0x65, 0xf2, 0x27, 0x29, 0x56, 0xa4, 0x6b, 0x5e, 0x86, 0x83, 0xdc, 0x89, 0x69, 0x84, 0x30, 0x9a, 0xc7, 0x94, 0x49, 0x65, 0x7a, 0x18, 0x95, 0xc9, 0xf6, 0x2b, 0xde, 0x99, 0xc7, 0xf5, 0xe2, 0x4e, 0xd2, 0xde, 0xfb, 0xc9, 0xf8, 0xdd, 0xe3, 0x5e, 0xbd, 0x0b, 0xdd, 0xc1, }; static const unsigned char ecdsa_secp521r1_sha512_10972_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10972_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10972 = { .name = "ecdsa_secp521r1_sha512_10972", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10972_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10972_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10972_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 416 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10973 for ECDSA, tcId is 417 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10973_pubkey[] = { 0x01, 0xbc, 0x19, 0xcf, 0x4b, 0x94, 0xbc, 0xd3, 0x41, 0x14, 0xce, 0x83, 0xc5, 0xf1, 0xa7, 0xe0, 0x48, 0xe2, 0xfc, 0x4f, 0xd4, 0x57, 0xd5, 0x7e, 0x39, 0xb3, 0xda, 0x29, 0xf4, 0x76, 0x6a, 0xcb, 0xae, 0xf1, 0xc1, 0x0c, 0xb1, 0x3c, 0x79, 0x6a, 0x6f, 0xff, 0xb5, 0x6d, 0x6a, 0x39, 0x2e, 0x47, 0xb6, 0xc7, 0x45, 0x22, 0xdf, 0x7f, 0xa0, 0x27, 0x54, 0xc3, 0x3d, 0x95, 0xb1, 0xa9, 0xa3, 0xc9, 0x2a, 0x15, 0x00, 0xf5, 0x74, 0x4c, 0x2b, 0xed, 0x30, 0x8c, 0xb4, 0xf4, 0x1b, 0x51, 0x2e, 0x63, 0x2c, 0xd0, 0x1d, 0x27, 0x0e, 0xf1, 0xa0, 0xd3, 0xf4, 0x7e, 0xa7, 0x80, 0xe7, 0x3c, 0x6a, 0x6c, 0x9e, 0xa6, 0xa9, 0x96, 0xfa, 0xef, 0x4d, 0x28, 0x28, 0x96, 0xc6, 0x4f, 0xa5, 0x0f, 0x5b, 0x04, 0xe2, 0x04, 0xc5, 0x6b, 0x50, 0x4b, 0xc1, 0x22, 0xff, 0xba, 0x7a, 0xea, 0x45, 0x74, 0xd7, 0xd7, 0xab, 0x63, 0x03, 0xc0, }; static const unsigned char ecdsa_secp521r1_sha512_10973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10973_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10973 = { .name = "ecdsa_secp521r1_sha512_10973", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10973_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10973_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10973_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 417 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10974 for ECDSA, tcId is 418 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10974_pubkey[] = { 0x01, 0x7b, 0x0e, 0xbc, 0xe0, 0x8b, 0x09, 0xf2, 0x1e, 0x30, 0xd1, 0x5e, 0x0e, 0xdd, 0x9f, 0xcd, 0xf2, 0x4a, 0xb4, 0x83, 0x1e, 0xc8, 0xa6, 0x5a, 0x3d, 0x1e, 0x38, 0xf7, 0x2b, 0x15, 0xf0, 0x11, 0x5d, 0xa6, 0xed, 0x18, 0x85, 0xe4, 0x2f, 0xcf, 0xae, 0x31, 0xc0, 0x91, 0x4b, 0x71, 0xe9, 0xdf, 0x2c, 0xd1, 0x06, 0xad, 0xc0, 0x39, 0xa8, 0x28, 0x10, 0xa9, 0x29, 0x24, 0xdd, 0x15, 0x4d, 0xc0, 0x5d, 0xa3, 0x00, 0xc6, 0x14, 0xd1, 0xaf, 0xc4, 0xf6, 0x3d, 0xe3, 0x80, 0x3b, 0xb5, 0x49, 0x0a, 0x34, 0xe1, 0xe2, 0xfa, 0xb9, 0xeb, 0x78, 0x42, 0x2b, 0x21, 0xd3, 0x77, 0xfc, 0x0d, 0x7f, 0x99, 0x1b, 0x93, 0x8c, 0x22, 0xf4, 0xd7, 0xdd, 0x66, 0x5f, 0x8d, 0xd2, 0x1f, 0xad, 0xde, 0x43, 0x17, 0x2a, 0x55, 0xf8, 0x0d, 0x05, 0xcc, 0x45, 0x57, 0xb6, 0x66, 0x3f, 0x9e, 0x7a, 0x3f, 0xe4, 0x90, 0xd2, 0x5c, 0x55, 0x31, }; static const unsigned char ecdsa_secp521r1_sha512_10974_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10974_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10974 = { .name = "ecdsa_secp521r1_sha512_10974", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10974_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10974_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10974_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 418 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10975 for ECDSA, tcId is 419 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10975_pubkey[] = { 0x00, 0x04, 0xc3, 0xec, 0x8d, 0x7d, 0x23, 0xce, 0x74, 0xbe, 0x8b, 0x9c, 0x7c, 0x27, 0xbe, 0x86, 0x9c, 0x23, 0xba, 0xfc, 0x68, 0x74, 0xeb, 0xc4, 0x4f, 0x47, 0xe1, 0x07, 0x42, 0x2a, 0xb1, 0xe7, 0x5e, 0xd0, 0x9b, 0xeb, 0xd7, 0xcb, 0x1e, 0xc4, 0x62, 0x6e, 0x44, 0x2b, 0xcf, 0x51, 0x2a, 0x25, 0xc5, 0xdd, 0xde, 0x26, 0xeb, 0x08, 0xba, 0x37, 0x50, 0x64, 0x61, 0x83, 0x0c, 0xf9, 0x24, 0x1c, 0xbe, 0x9c, 0x00, 0x50, 0xa1, 0xbc, 0x08, 0xf4, 0xba, 0x8d, 0xa1, 0xd6, 0x41, 0xac, 0x38, 0x91, 0x82, 0x3a, 0xb5, 0x19, 0xfa, 0xcd, 0x41, 0x59, 0x76, 0x8b, 0x1c, 0x07, 0x38, 0xf0, 0xe2, 0x34, 0x50, 0xf3, 0x74, 0xe4, 0xd6, 0xde, 0x55, 0xcc, 0xee, 0xd9, 0x57, 0x22, 0xbe, 0x63, 0x5c, 0x5d, 0xc0, 0x02, 0x3a, 0x14, 0x98, 0x86, 0x2f, 0x87, 0xbf, 0xe6, 0x1d, 0x77, 0xe2, 0x0e, 0x59, 0x2c, 0xc2, 0x0b, 0xb2, 0xca, }; static const unsigned char ecdsa_secp521r1_sha512_10975_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10975_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10975 = { .name = "ecdsa_secp521r1_sha512_10975", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10975_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10975_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10975_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 419 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10976 for ECDSA, tcId is 420 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10976_pubkey[] = { 0x00, 0xa7, 0xc8, 0x20, 0x4f, 0x28, 0x64, 0xdc, 0xef, 0x08, 0x91, 0x65, 0xc3, 0x91, 0x4d, 0xcc, 0x2c, 0x08, 0x96, 0x07, 0x58, 0x70, 0xca, 0x0b, 0xc1, 0xce, 0x37, 0x85, 0x6f, 0x80, 0xf2, 0x38, 0x15, 0xb0, 0xc8, 0xf2, 0xec, 0x05, 0x14, 0x5c, 0x42, 0x10, 0x49, 0xe8, 0x0e, 0xc1, 0xe7, 0x69, 0x4f, 0x9f, 0x04, 0x17, 0x4b, 0xbe, 0xf2, 0x1b, 0xc0, 0x97, 0x2e, 0x55, 0x9c, 0xf2, 0x22, 0xde, 0x7e, 0x1a, 0x01, 0xff, 0x11, 0x08, 0xc2, 0x8f, 0x01, 0xb7, 0x03, 0x82, 0x0e, 0x1c, 0x01, 0x87, 0x91, 0x29, 0x62, 0xab, 0x23, 0x10, 0x96, 0x18, 0xdf, 0xcb, 0x0c, 0x06, 0x2c, 0xce, 0xe3, 0x39, 0x00, 0x22, 0x22, 0xa3, 0xf7, 0xdd, 0x8d, 0xd2, 0x16, 0x75, 0xb0, 0xe2, 0x09, 0x08, 0xfe, 0x58, 0x55, 0xea, 0x87, 0x6d, 0x6a, 0x9e, 0x02, 0xc5, 0xf5, 0xb7, 0x93, 0xd3, 0x8f, 0xdf, 0x79, 0xfb, 0x83, 0x60, 0x3e, 0xa9, }; static const unsigned char ecdsa_secp521r1_sha512_10976_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10976_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10976 = { .name = "ecdsa_secp521r1_sha512_10976", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10976_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10976_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10976_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 420 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10977 for ECDSA, tcId is 421 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10977_pubkey[] = { 0x01, 0x80, 0x2f, 0xc7, 0x9f, 0xc8, 0xe5, 0x5b, 0xce, 0x50, 0xa5, 0x81, 0x63, 0x2b, 0x51, 0xd6, 0xee, 0xc0, 0x4a, 0x3c, 0x74, 0xac, 0x2b, 0xf4, 0xfa, 0xe1, 0x6c, 0xe6, 0xc7, 0xef, 0xef, 0x17, 0x01, 0xd6, 0x9f, 0x9c, 0x00, 0xa9, 0x1a, 0xd5, 0x21, 0xd7, 0x5a, 0xc7, 0x53, 0x9d, 0x54, 0xbf, 0x46, 0x4c, 0xae, 0xec, 0x87, 0x14, 0x56, 0x10, 0x3d, 0xc9, 0x74, 0x35, 0x44, 0x60, 0x89, 0x8a, 0x19, 0xc6, 0x00, 0x72, 0x2f, 0xc1, 0xf5, 0x28, 0x50, 0x66, 0x18, 0xb1, 0xda, 0x9f, 0x8b, 0x2e, 0xdb, 0xdb, 0xda, 0xf7, 0xee, 0xc0, 0x2e, 0x8f, 0xb9, 0x20, 0x3d, 0x2b, 0x27, 0x77, 0x35, 0xa1, 0xd8, 0x67, 0x91, 0x1b, 0x13, 0x1f, 0x45, 0x3f, 0x52, 0xcc, 0xc4, 0xce, 0xd0, 0x5c, 0x3b, 0x1b, 0xc2, 0x9e, 0x4d, 0x20, 0xf1, 0xe6, 0xd3, 0x49, 0x79, 0xfa, 0xa6, 0x88, 0xce, 0x80, 0x03, 0xf7, 0x9d, 0x8e, 0x0c, 0x95, }; static const unsigned char ecdsa_secp521r1_sha512_10977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10977_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10977 = { .name = "ecdsa_secp521r1_sha512_10977", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10977_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10977_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10977_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 421 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10978 for ECDSA, tcId is 422 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10978_pubkey[] = { 0x01, 0xbe, 0xb0, 0xb4, 0xc2, 0xe4, 0x94, 0x22, 0x64, 0x04, 0xfc, 0xa4, 0xad, 0x50, 0x5e, 0xbf, 0xed, 0x13, 0xd1, 0x84, 0xb1, 0x57, 0x26, 0x83, 0x21, 0x5b, 0x16, 0x17, 0x3c, 0x29, 0xa4, 0x47, 0x5a, 0xed, 0xe4, 0x7f, 0x26, 0x6e, 0x0c, 0x9c, 0x41, 0x43, 0x13, 0x7d, 0x3e, 0x00, 0x01, 0xf9, 0xf0, 0x14, 0x8b, 0x68, 0x92, 0x86, 0xa7, 0xc6, 0x4e, 0x22, 0x94, 0x58, 0xb8, 0x24, 0xed, 0x76, 0x58, 0x36, 0x01, 0x30, 0x20, 0x51, 0x69, 0x78, 0x3e, 0xd9, 0xad, 0xa9, 0xf3, 0xa1, 0x93, 0x02, 0x7a, 0xe4, 0xe2, 0x18, 0x29, 0xad, 0x4a, 0x71, 0xd0, 0x5d, 0x96, 0x96, 0x05, 0xc0, 0x4f, 0x32, 0x31, 0xda, 0xba, 0xb0, 0x3b, 0xeb, 0x2f, 0xab, 0x07, 0xdd, 0x83, 0x23, 0xd7, 0x13, 0x27, 0x55, 0x73, 0x4f, 0x4e, 0x6d, 0x1f, 0xb4, 0x3f, 0xc8, 0xa6, 0x3b, 0xfd, 0x24, 0x41, 0x60, 0xc2, 0x3e, 0xfb, 0x6c, 0x14, 0x29, }; static const unsigned char ecdsa_secp521r1_sha512_10978_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10978_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10978 = { .name = "ecdsa_secp521r1_sha512_10978", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10978_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10978_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10978_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 422 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10979 for ECDSA, tcId is 423 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10979_pubkey[] = { 0x01, 0x21, 0xe5, 0x9a, 0xaf, 0x26, 0xb8, 0x30, 0x1f, 0x4f, 0xcc, 0x3e, 0x0a, 0x56, 0x3c, 0x41, 0x04, 0xae, 0x00, 0xb4, 0x7c, 0x55, 0xb8, 0x94, 0x5c, 0xe7, 0x49, 0x11, 0x6f, 0xdf, 0x67, 0x61, 0xd7, 0x68, 0xbd, 0x50, 0xed, 0x43, 0x1e, 0x2b, 0x51, 0xe6, 0x46, 0xfe, 0x4f, 0xe7, 0xdc, 0x29, 0x85, 0xb6, 0xae, 0xfa, 0x7f, 0x94, 0x41, 0xea, 0x11, 0x84, 0x0d, 0x2a, 0xce, 0x2f, 0x34, 0x29, 0x3c, 0xb1, 0x00, 0x0c, 0xf1, 0xe1, 0xa4, 0x6d, 0x4d, 0x63, 0x72, 0x16, 0xe2, 0x8a, 0xbd, 0x12, 0x4c, 0xc6, 0x41, 0xae, 0x7a, 0x67, 0x34, 0x45, 0xd5, 0x73, 0x85, 0x6b, 0xc2, 0xfe, 0xc5, 0x8d, 0x86, 0xe5, 0xed, 0x63, 0xbc, 0x2a, 0x7f, 0x20, 0x49, 0x23, 0x4e, 0x33, 0x5a, 0x7b, 0xee, 0x95, 0xbb, 0x27, 0x24, 0xfb, 0x14, 0x80, 0xc9, 0x7c, 0x38, 0xcd, 0x0d, 0x29, 0x6c, 0xbc, 0xc1, 0x13, 0xde, 0x3f, 0x13, 0x5f, }; static const unsigned char ecdsa_secp521r1_sha512_10979_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10979_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10979 = { .name = "ecdsa_secp521r1_sha512_10979", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10979_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10979_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10979_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 423 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10980 for ECDSA, tcId is 424 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10980_pubkey[] = { 0x00, 0x8e, 0x85, 0x9e, 0x66, 0xd1, 0x23, 0x7f, 0xdc, 0x92, 0x8a, 0x4b, 0x95, 0x49, 0x54, 0xfe, 0xf5, 0x65, 0xd2, 0x03, 0xa0, 0x73, 0x1d, 0x06, 0x5d, 0x9d, 0xf4, 0x1a, 0x4f, 0xd3, 0x81, 0x2b, 0x1c, 0xc2, 0x48, 0x70, 0x53, 0xea, 0x19, 0xce, 0x83, 0x9d, 0x20, 0x08, 0x45, 0x95, 0x2f, 0x80, 0xd8, 0x06, 0x98, 0x77, 0x1d, 0x83, 0xcc, 0xc1, 0xfc, 0x7f, 0x23, 0x6d, 0xbe, 0xe4, 0xc7, 0x6b, 0x2b, 0xb4, 0x00, 0x5a, 0x04, 0xb2, 0x4c, 0x88, 0xcd, 0x40, 0x23, 0x3f, 0xb4, 0x3c, 0x59, 0xea, 0x5c, 0xf2, 0xcb, 0x95, 0x10, 0xd1, 0x6b, 0x11, 0x68, 0xbc, 0x12, 0x6d, 0xb6, 0x4a, 0xaf, 0x9a, 0xb0, 0x7a, 0x74, 0x53, 0x20, 0x8f, 0xde, 0x07, 0x90, 0x95, 0x96, 0x62, 0x72, 0xbf, 0x03, 0xbc, 0x33, 0x12, 0xc9, 0xb9, 0xba, 0xb8, 0xc7, 0x95, 0xae, 0x37, 0x5e, 0x8a, 0x0e, 0x8d, 0xd8, 0x1c, 0x92, 0x4e, 0x7c, 0x27, }; static const unsigned char ecdsa_secp521r1_sha512_10980_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10980_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10980 = { .name = "ecdsa_secp521r1_sha512_10980", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10980_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10980_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10980_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 424 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10981 for ECDSA, tcId is 425 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10981_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10981_sig[] = { 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10981 = { .name = "ecdsa_secp521r1_sha512_10981", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10981_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10981_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10981_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 425 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10982 for ECDSA, tcId is 426 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10982_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_10982_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10982_sig[] = { 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10982 = { .name = "ecdsa_secp521r1_sha512_10982", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10982_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10982_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10982_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 426 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10983 for ECDSA, tcId is 427 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10983_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_10983_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10983_sig[] = { 0x00, 0x00, 0x43, 0xf8, 0x00, 0xfb, 0xea, 0xf9, 0x23, 0x8c, 0x58, 0xaf, 0x79, 0x5b, 0xcd, 0xad, 0x04, 0xbc, 0x49, 0xcd, 0x85, 0x0c, 0x39, 0x4d, 0x33, 0x82, 0x95, 0x33, 0x56, 0xb0, 0x23, 0x21, 0x02, 0x81, 0x75, 0x7b, 0x30, 0xe1, 0x92, 0x18, 0xa3, 0x7c, 0xbd, 0x61, 0x20, 0x86, 0xfb, 0xc1, 0x58, 0xca, 0xa8, 0xb4, 0xe1, 0xac, 0xb2, 0xec, 0x00, 0x83, 0x7e, 0x5d, 0x94, 0x1f, 0x34, 0x2f, 0xb3, 0xcc, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10983 = { .name = "ecdsa_secp521r1_sha512_10983", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10983_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10983_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10983_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 427 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10984 for ECDSA, tcId is 428 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10984_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_10984_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10984_sig[] = { 0x01, 0xff, 0xbc, 0x07, 0xff, 0x04, 0x15, 0x06, 0xdc, 0x73, 0xa7, 0x50, 0x86, 0xa4, 0x32, 0x52, 0xfb, 0x43, 0xb6, 0x32, 0x7a, 0xf3, 0xc6, 0xb2, 0xcc, 0x7d, 0x6a, 0xcc, 0xa9, 0x4f, 0xdc, 0xde, 0xfd, 0x78, 0xdc, 0x0b, 0x56, 0xa2, 0x2d, 0x16, 0xf2, 0xee, 0xc2, 0x6a, 0xe0, 0xc1, 0xfb, 0x48, 0x4d, 0x05, 0x93, 0x00, 0xe8, 0x0b, 0xd6, 0xb0, 0x47, 0x2b, 0x3d, 0x12, 0x22, 0xff, 0x5d, 0x08, 0xb0, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10984 = { .name = "ecdsa_secp521r1_sha512_10984", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10984_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10984_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10984_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 428 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10985 for ECDSA, tcId is 429 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10985_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10985_sig[] = { 0x01, 0x62, 0x5d, 0x61, 0x15, 0x09, 0x2a, 0x8e, 0x2e, 0xe2, 0x1b, 0x9f, 0x8a, 0x42, 0x5a, 0xa7, 0x38, 0x14, 0xde, 0xc8, 0xb2, 0x33, 0x5e, 0x86, 0x15, 0x0a, 0xb4, 0x22, 0x9f, 0x5a, 0x34, 0x21, 0xd2, 0xe6, 0x25, 0x6d, 0x63, 0x2c, 0x7a, 0x43, 0x65, 0xa1, 0xee, 0x01, 0xdd, 0x2a, 0x93, 0x69, 0x21, 0xbb, 0xb4, 0x55, 0x1a, 0x51, 0x2d, 0x1d, 0x4b, 0x5a, 0x56, 0xc3, 0x14, 0xe4, 0xa0, 0x25, 0x34, 0xc5, 0x01, 0xb7, 0x92, 0xd2, 0x3f, 0x26, 0x49, 0x86, 0x25, 0x95, 0x45, 0x10, 0x55, 0x77, 0x7b, 0xda, 0x1b, 0x02, 0xdc, 0x6c, 0xc8, 0xfe, 0xf2, 0x32, 0x31, 0xe4, 0x4b, 0x92, 0x1b, 0x16, 0x15, 0x5c, 0xd4, 0x22, 0x57, 0x44, 0x1d, 0x75, 0xa7, 0x90, 0x37, 0x1e, 0x91, 0x81, 0x9f, 0x0a, 0x9b, 0x1f, 0xd0, 0xeb, 0xd0, 0x2c, 0x90, 0xb5, 0xb7, 0x74, 0x52, 0x77, 0x46, 0xed, 0x9b, 0xfe, 0x74, 0x3d, 0xbe, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10985 = { .name = "ecdsa_secp521r1_sha512_10985", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10985_pubkey, .pubkeylen = 132, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp521r1_sha512_10985_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 429 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10986 for ECDSA, tcId is 430 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10986_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10986_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp521r1_sha512_10986_sig[] = { 0x00, 0x5a, 0xdc, 0x83, 0x3c, 0xbc, 0x1d, 0x61, 0x41, 0xce, 0xd4, 0x57, 0xba, 0xb2, 0xb0, 0x1b, 0x08, 0x14, 0x05, 0x4d, 0x7a, 0x28, 0xfa, 0x8b, 0xb2, 0x92, 0x5d, 0x1e, 0x75, 0x25, 0xb7, 0xcf, 0x7d, 0x5c, 0x93, 0x8a, 0x17, 0xab, 0xfb, 0x33, 0x42, 0x6d, 0xcc, 0x05, 0xce, 0x8d, 0x44, 0xdb, 0x02, 0xf5, 0x3a, 0x75, 0xea, 0x04, 0x01, 0x7d, 0xca, 0x51, 0xe1, 0xfb, 0xb1, 0x4c, 0xe3, 0x31, 0x1b, 0x14, 0x00, 0x5f, 0x69, 0xb2, 0xa6, 0xde, 0x12, 0x91, 0x47, 0xa8, 0x43, 0x7b, 0x79, 0xc7, 0x23, 0x15, 0xd3, 0x51, 0x73, 0xd8, 0x8c, 0x2d, 0x61, 0x19, 0x08, 0x5c, 0x90, 0xda, 0xe8, 0xec, 0x05, 0xc5, 0x5e, 0x06, 0x7e, 0x7d, 0xfa, 0x4f, 0x68, 0x10, 0x35, 0xe3, 0xdc, 0xca, 0xb0, 0x99, 0x29, 0x1c, 0x0e, 0xcf, 0x44, 0x28, 0x33, 0x2a, 0x9c, 0xb0, 0x73, 0x6d, 0x16, 0xe7, 0x91, 0x11, 0xac, 0x76, 0xd7, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10986 = { .name = "ecdsa_secp521r1_sha512_10986", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10986_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10986_msg, .msglen = 3, .sig = ecdsa_secp521r1_sha512_10986_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 430 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10987 for ECDSA, tcId is 431 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10987_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10987_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_10987_sig[] = { 0x01, 0x41, 0x41, 0xe4, 0xd9, 0x4a, 0x58, 0xc1, 0xe7, 0x47, 0xcb, 0xd9, 0xee, 0x66, 0x70, 0xa4, 0x1e, 0xac, 0x3c, 0x26, 0xfb, 0x4d, 0xb3, 0x24, 0x8e, 0x45, 0xd5, 0x83, 0x17, 0x90, 0x76, 0xe6, 0xb1, 0x9a, 0x8e, 0x20, 0x03, 0x65, 0x7a, 0x10, 0x8f, 0x91, 0xf9, 0xa1, 0x03, 0x15, 0x7e, 0xdf, 0xf9, 0xb3, 0x7d, 0xf2, 0xb4, 0x36, 0xa7, 0x7d, 0xc1, 0x12, 0x92, 0x7d, 0x90, 0x7a, 0xc9, 0xba, 0x25, 0x87, 0x01, 0x08, 0xaf, 0xa9, 0x1b, 0x34, 0xbd, 0x90, 0x4c, 0x68, 0x04, 0x71, 0xe9, 0x43, 0xaf, 0x33, 0x6f, 0xb9, 0x0c, 0x5f, 0xb2, 0xb9, 0x14, 0x01, 0xa5, 0x8c, 0x9b, 0x1f, 0x46, 0x7b, 0xf8, 0x1a, 0xf8, 0x04, 0x99, 0x65, 0xdd, 0x8b, 0x45, 0xf1, 0x2e, 0x15, 0x2f, 0x4f, 0x7f, 0xd3, 0x78, 0x0e, 0x34, 0x92, 0xf3, 0x1e, 0xd2, 0x68, 0x0d, 0x47, 0x77, 0xfb, 0xe6, 0x55, 0xfe, 0x77, 0x9a, 0xd8, 0x97, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10987 = { .name = "ecdsa_secp521r1_sha512_10987", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10987_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10987_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_10987_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 431 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10988 for ECDSA, tcId is 432 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10988_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_10988_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp521r1_sha512_10988_sig[] = { 0x00, 0x08, 0x13, 0x5d, 0x3f, 0x1a, 0xe9, 0xe2, 0x6f, 0xba, 0x82, 0x56, 0x43, 0xed, 0x8a, 0x29, 0xd6, 0x3d, 0x78, 0x43, 0x72, 0x0e, 0x93, 0x56, 0x6a, 0xa0, 0x9d, 0xb2, 0xbd, 0xf5, 0xaa, 0xa6, 0x9a, 0xfb, 0xcc, 0x0c, 0x51, 0xe5, 0x29, 0x5c, 0x29, 0x8f, 0x30, 0x5b, 0xa7, 0xb8, 0x70, 0xf0, 0xa8, 0x5b, 0xb5, 0x69, 0x9c, 0xdf, 0x40, 0x76, 0x4a, 0xab, 0x59, 0x41, 0x8f, 0x77, 0xc6, 0xff, 0xb4, 0x52, 0x01, 0x1d, 0x34, 0x52, 0x56, 0x88, 0x7f, 0xb3, 0x51, 0xf5, 0x70, 0x09, 0x61, 0xa7, 0xd4, 0x75, 0x72, 0xe0, 0xd6, 0x69, 0x05, 0x6c, 0xb1, 0xd5, 0x61, 0x93, 0x45, 0xc0, 0xc9, 0x87, 0xf3, 0x33, 0x1c, 0x2f, 0xe2, 0xc6, 0xdf, 0x84, 0x8a, 0x5c, 0x61, 0x04, 0x22, 0xde, 0xfd, 0x62, 0x12, 0xb6, 0x43, 0x46, 0x16, 0x1a, 0xa8, 0x71, 0xae, 0x55, 0xb1, 0xfe, 0x4a, 0xdd, 0x5f, 0x68, 0x83, 0x6e, 0xb1, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10988 = { .name = "ecdsa_secp521r1_sha512_10988", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10988_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10988_msg, .msglen = 20, .sig = ecdsa_secp521r1_sha512_10988_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 432 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10989 for ECDSA, tcId is 433 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10989_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10989_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10989_sig[] = { 0x01, 0x1c, 0x96, 0x84, 0xaf, 0x6d, 0xc5, 0x27, 0x28, 0x41, 0x04, 0x73, 0xc6, 0x30, 0x53, 0xb0, 0x1c, 0x35, 0x8d, 0x67, 0xe8, 0x1f, 0x8a, 0x13, 0x24, 0xad, 0x71, 0x1c, 0x60, 0x48, 0x1a, 0x4a, 0x86, 0xdd, 0x3e, 0x75, 0xde, 0x20, 0xca, 0x55, 0xce, 0x7a, 0x9a, 0x39, 0xb1, 0xf8, 0x2f, 0xd5, 0xda, 0x4f, 0xad, 0xf2, 0x6a, 0x5b, 0xb8, 0xed, 0xd4, 0x67, 0xaf, 0x88, 0x25, 0xef, 0xe4, 0x74, 0x62, 0x18, 0x00, 0x34, 0xc0, 0x58, 0xab, 0xa6, 0x48, 0x8d, 0x69, 0x43, 0xe1, 0x1e, 0x0d, 0x13, 0x48, 0x42, 0x94, 0x49, 0xea, 0x17, 0xac, 0x5e, 0xdf, 0x8b, 0xca, 0xf6, 0x54, 0x10, 0x6b, 0x98, 0xb2, 0xdd, 0xf3, 0x46, 0xc5, 0x37, 0xb8, 0xa9, 0xa3, 0xf9, 0xb3, 0x17, 0x4b, 0x77, 0x63, 0x7d, 0x22, 0x0e, 0xf5, 0x31, 0x8d, 0xbb, 0xc3, 0x3d, 0x0a, 0xac, 0x0f, 0xe2, 0xdd, 0xed, 0xa1, 0x7b, 0x23, 0xcb, 0x2d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10989 = { .name = "ecdsa_secp521r1_sha512_10989", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10989_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10989_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10989_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 433 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10990 for ECDSA, tcId is 434 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10990_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10990_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10990_sig[] = { 0x00, 0x7c, 0x47, 0xa6, 0x68, 0x62, 0x56, 0x48, 0xcd, 0x8a, 0x31, 0xac, 0x92, 0x17, 0x4c, 0xf3, 0xd6, 0x10, 0x41, 0xf7, 0xad, 0x29, 0x25, 0x88, 0xde, 0xf6, 0xed, 0x14, 0x3b, 0x1f, 0xf9, 0xa2, 0x88, 0xfd, 0x20, 0xcf, 0x36, 0xf5, 0x8d, 0x4b, 0xfe, 0x4b, 0x2c, 0xd4, 0xa3, 0x81, 0xd4, 0xda, 0x50, 0xc8, 0xed, 0xa5, 0x67, 0x4f, 0x02, 0x04, 0x49, 0xae, 0x1d, 0x3d, 0xd7, 0x7e, 0x44, 0xed, 0x48, 0x5e, 0x01, 0x05, 0x8e, 0x86, 0xb3, 0x27, 0xd2, 0x84, 0xe3, 0x5b, 0xab, 0x49, 0xfc, 0x7c, 0x33, 0x54, 0x17, 0x57, 0x3f, 0x31, 0x0a, 0xfa, 0x9e, 0x1a, 0x53, 0x56, 0x6e, 0x0f, 0xae, 0x51, 0x6e, 0x09, 0x90, 0x07, 0x96, 0x50, 0x30, 0xf6, 0xf4, 0x6b, 0x07, 0x71, 0x16, 0x35, 0x3f, 0x26, 0xcb, 0x46, 0x6d, 0x1c, 0xf3, 0xf3, 0x53, 0x00, 0xd7, 0x44, 0xd2, 0xd8, 0xf8, 0x83, 0xc8, 0xa3, 0x1b, 0x43, 0xc2, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10990 = { .name = "ecdsa_secp521r1_sha512_10990", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10990_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10990_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10990_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 434 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10991 for ECDSA, tcId is 435 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10991_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_10991_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10991_sig[] = { 0x01, 0xe4, 0xe9, 0xf3, 0xa7, 0xb8, 0x00, 0xde, 0x63, 0x40, 0x7b, 0x87, 0x03, 0xac, 0x54, 0x52, 0x26, 0x54, 0x1c, 0x97, 0xa6, 0x73, 0x56, 0x67, 0x11, 0xf7, 0x0e, 0x2b, 0x9c, 0xcb, 0x21, 0xa1, 0x45, 0xad, 0x46, 0x37, 0x82, 0x5b, 0x02, 0x3d, 0x1e, 0xa9, 0xf1, 0x8e, 0x60, 0x89, 0x74, 0x13, 0x71, 0x16, 0x11, 0xa8, 0x5c, 0x11, 0x79, 0xbf, 0xf9, 0xc1, 0x07, 0x36, 0x8f, 0x1c, 0x1b, 0x61, 0xc2, 0x4c, 0x01, 0xde, 0x94, 0x8e, 0xe5, 0x77, 0xc3, 0xd4, 0xe4, 0x12, 0x2a, 0x52, 0xec, 0xcc, 0xac, 0x59, 0xab, 0xb6, 0xfa, 0x93, 0x7d, 0xfb, 0x3e, 0x4b, 0x98, 0x8c, 0xb2, 0x43, 0xef, 0xe9, 0x87, 0x40, 0x30, 0x94, 0x52, 0xba, 0x01, 0x31, 0x12, 0xb2, 0x25, 0xb3, 0xb1, 0xb1, 0x38, 0x4d, 0x5f, 0x68, 0x79, 0x68, 0x45, 0x19, 0x9a, 0x26, 0x02, 0xa8, 0xd4, 0x50, 0x5a, 0x33, 0x1b, 0x07, 0xd1, 0x01, 0x18, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10991 = { .name = "ecdsa_secp521r1_sha512_10991", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10991_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10991_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10991_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 435 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10992 for ECDSA, tcId is 436 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10992_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10992_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10992_sig[] = { 0x00, 0xb6, 0xcf, 0x64, 0x86, 0x1a, 0x2b, 0x16, 0xe3, 0x39, 0x76, 0x09, 0x5d, 0xbf, 0x45, 0xa5, 0x92, 0xc7, 0xc2, 0x42, 0x28, 0xc4, 0xa1, 0xdd, 0x72, 0x7f, 0x30, 0x3d, 0x5e, 0xeb, 0x87, 0xe5, 0x38, 0x8a, 0xd0, 0x5c, 0x32, 0x8f, 0x82, 0x4c, 0x40, 0xab, 0xd3, 0xe6, 0xce, 0x00, 0x3f, 0xef, 0x5c, 0xd5, 0x9d, 0xee, 0x00, 0x69, 0xad, 0x63, 0x48, 0xea, 0x6e, 0x57, 0xf9, 0x0f, 0x6b, 0xdc, 0x0a, 0x82, 0x00, 0x22, 0x81, 0x81, 0xc1, 0x80, 0x36, 0x6e, 0x54, 0x51, 0xdf, 0xef, 0x35, 0x93, 0xce, 0x66, 0x48, 0x04, 0xcb, 0x42, 0xd5, 0xa8, 0xd5, 0x04, 0x6b, 0x81, 0x6b, 0x3d, 0xaf, 0x66, 0x02, 0xfa, 0xfd, 0x9a, 0xc2, 0xdc, 0x24, 0xb8, 0xc9, 0x3a, 0x10, 0x02, 0x44, 0x80, 0x88, 0x25, 0x58, 0xb6, 0xad, 0x3d, 0x9e, 0x90, 0x59, 0x23, 0xdc, 0xd0, 0xfd, 0x2a, 0x11, 0x96, 0x47, 0x54, 0xa9, 0xb4, 0x6b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10992 = { .name = "ecdsa_secp521r1_sha512_10992", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10992_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10992_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10992_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 436 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10993 for ECDSA, tcId is 437 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10993_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10993_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10993_sig[] = { 0x00, 0x93, 0xc8, 0xf7, 0x66, 0x82, 0x7d, 0x6d, 0xc1, 0x5c, 0x81, 0x0f, 0xa3, 0x04, 0x33, 0x15, 0x3a, 0x5e, 0x74, 0x28, 0x59, 0x20, 0x5e, 0xe8, 0x38, 0x9f, 0xbf, 0x69, 0x5c, 0x88, 0x40, 0xdc, 0x91, 0x74, 0x40, 0x87, 0x0a, 0xcc, 0x5b, 0x16, 0x00, 0x87, 0xff, 0xd0, 0xcd, 0x9a, 0x60, 0x81, 0x02, 0x9c, 0x60, 0xa7, 0xc2, 0x6d, 0x5e, 0x8a, 0xa9, 0xa0, 0x57, 0x0f, 0x4e, 0xfd, 0xeb, 0x13, 0xde, 0xa2, 0x01, 0x2e, 0xc3, 0xbb, 0xf7, 0x5a, 0x0a, 0xd3, 0xdf, 0x40, 0x31, 0x02, 0x66, 0x64, 0x8a, 0x36, 0xdb, 0x82, 0x02, 0x17, 0xed, 0x7f, 0xa9, 0x4e, 0x9c, 0x83, 0x13, 0xe0, 0x32, 0x93, 0xef, 0x4f, 0x6a, 0x40, 0xe7, 0x36, 0xfb, 0x8f, 0x20, 0x8a, 0xd8, 0xfb, 0x88, 0x3c, 0xa5, 0x09, 0xd4, 0x80, 0x46, 0x91, 0x05, 0x23, 0x64, 0x54, 0x59, 0xc2, 0x78, 0x29, 0xd5, 0x44, 0x31, 0x46, 0x3b, 0x25, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10993 = { .name = "ecdsa_secp521r1_sha512_10993", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10993_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10993_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10993_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 437 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10994 for ECDSA, tcId is 438 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10994_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_10994_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10994_sig[] = { 0x01, 0x52, 0x38, 0x8c, 0x6d, 0xa6, 0x61, 0x64, 0xb7, 0x06, 0xb4, 0x1d, 0xd4, 0xdd, 0x48, 0x17, 0x6d, 0x6e, 0xaf, 0x65, 0x25, 0xf8, 0x76, 0xef, 0x0f, 0xf2, 0xd1, 0x47, 0xf6, 0x96, 0x6e, 0xbf, 0xad, 0xf1, 0x76, 0x7f, 0xa6, 0x6d, 0x04, 0x20, 0x3d, 0x3e, 0xc9, 0xc9, 0x37, 0xa1, 0xf0, 0xc9, 0x45, 0xae, 0xd9, 0x53, 0xe3, 0x4b, 0xe4, 0x44, 0xc2, 0x19, 0xfd, 0x3b, 0x94, 0xd3, 0x27, 0x7a, 0xa6, 0x52, 0x01, 0x65, 0x8c, 0x1e, 0x5b, 0x2e, 0x56, 0x3a, 0x49, 0xd1, 0x1c, 0x88, 0x3d, 0x05, 0xc4, 0x91, 0xd6, 0x28, 0xf0, 0xa9, 0x2c, 0x3e, 0x3d, 0xc8, 0xdb, 0x9a, 0x4c, 0x8d, 0x5f, 0x0d, 0xc8, 0x46, 0xac, 0x22, 0xaf, 0x8b, 0x3c, 0x5f, 0xb5, 0xbb, 0xe2, 0xcf, 0xa9, 0x86, 0x14, 0xdc, 0xff, 0xd8, 0x7d, 0xe1, 0xce, 0xe2, 0xc5, 0x91, 0x2a, 0x58, 0x99, 0x50, 0x5a, 0x0c, 0x5b, 0xca, 0xa5, 0x13, 0xe2, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10994 = { .name = "ecdsa_secp521r1_sha512_10994", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10994_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10994_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10994_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 438 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10995 for ECDSA, tcId is 439 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10995_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10995_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10995_sig[] = { 0x01, 0x0e, 0x89, 0x47, 0x0f, 0x98, 0x1d, 0x2c, 0x7c, 0x5c, 0x96, 0x58, 0x71, 0x21, 0xa6, 0x73, 0x23, 0xbb, 0x96, 0xff, 0x24, 0x27, 0x73, 0x9d, 0x0d, 0x88, 0x5e, 0xa2, 0x77, 0x29, 0x3e, 0xfa, 0x3b, 0x25, 0xc0, 0xbd, 0xa0, 0x4d, 0x81, 0x46, 0x61, 0x98, 0xa3, 0xcb, 0xfc, 0x44, 0x1f, 0x1b, 0x1b, 0x98, 0xf6, 0xbc, 0xdc, 0x25, 0x89, 0xd9, 0xd9, 0x1a, 0x17, 0xa7, 0x89, 0x9f, 0x70, 0xd0, 0x46, 0x1e, 0x01, 0x73, 0x51, 0xb0, 0xda, 0x8c, 0x8d, 0x0e, 0x4a, 0xa0, 0x97, 0x46, 0x69, 0xd1, 0x90, 0xfa, 0x2f, 0x90, 0xaa, 0x50, 0x22, 0x71, 0x60, 0x59, 0x4d, 0xfb, 0x55, 0x75, 0x50, 0x02, 0x36, 0x54, 0x41, 0xde, 0x17, 0xea, 0x42, 0x90, 0x21, 0x28, 0xa6, 0xf8, 0x1e, 0x55, 0x41, 0x77, 0xed, 0x50, 0x9c, 0x0c, 0xec, 0x31, 0xfd, 0x50, 0x53, 0xfa, 0xe0, 0x3f, 0x62, 0xff, 0x76, 0x57, 0x9b, 0xa9, 0x2b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10995 = { .name = "ecdsa_secp521r1_sha512_10995", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10995_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10995_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10995_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 439 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10996 for ECDSA, tcId is 440 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10996_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10996_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10996_sig[] = { 0x01, 0x10, 0x94, 0xac, 0x23, 0xca, 0x46, 0xa3, 0xe2, 0xb4, 0xac, 0x3b, 0xaa, 0xe6, 0x50, 0x4f, 0x1b, 0xfb, 0x3d, 0xdf, 0x2d, 0xb9, 0xab, 0x40, 0xed, 0xa3, 0x2d, 0x8e, 0x0a, 0x05, 0x72, 0x79, 0x98, 0xf8, 0x55, 0x2a, 0x03, 0x3b, 0xb0, 0x52, 0x41, 0xe8, 0x26, 0xa8, 0x6a, 0x1d, 0x03, 0x01, 0x4e, 0xae, 0x3a, 0xa5, 0xfe, 0x1a, 0x45, 0xca, 0xac, 0x1d, 0xb3, 0xe8, 0x13, 0x8b, 0x9c, 0xf5, 0x90, 0x68, 0x01, 0x47, 0xed, 0xb1, 0x5a, 0x50, 0x80, 0xee, 0x2f, 0x92, 0x9f, 0x78, 0xb6, 0xac, 0x86, 0x60, 0x4a, 0xae, 0x51, 0xb6, 0x74, 0xfa, 0x46, 0xea, 0xae, 0x7f, 0xdf, 0xd9, 0x0b, 0xf6, 0x4d, 0x61, 0x89, 0x34, 0x11, 0x55, 0xf4, 0xeb, 0xa9, 0x37, 0xea, 0xe7, 0x4c, 0x9e, 0x48, 0x0e, 0xb4, 0xfb, 0x7e, 0x6a, 0xaf, 0xd4, 0x28, 0x5e, 0x7f, 0xc5, 0x03, 0xee, 0x6e, 0xc2, 0x0f, 0x0b, 0x14, 0x15, 0xbe, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10996 = { .name = "ecdsa_secp521r1_sha512_10996", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10996_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10996_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10996_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 440 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10997 for ECDSA, tcId is 441 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10997_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_10997_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10997_sig[] = { 0x01, 0xd8, 0x76, 0xae, 0x17, 0x4d, 0xa3, 0x1e, 0x12, 0x8b, 0xab, 0xff, 0x9f, 0x1d, 0x15, 0x50, 0x76, 0x60, 0xbd, 0xc7, 0x95, 0x87, 0x50, 0x84, 0x4d, 0xc4, 0xf4, 0x29, 0x1f, 0x75, 0xa8, 0x82, 0xa2, 0x2f, 0x17, 0x7f, 0x70, 0x4b, 0xe6, 0x06, 0x7b, 0xf7, 0xce, 0x8f, 0x06, 0xb8, 0x62, 0x6d, 0x97, 0x1e, 0x6e, 0xf5, 0xdc, 0xb6, 0x66, 0xfa, 0x97, 0x5c, 0x1e, 0x11, 0x12, 0x6e, 0x04, 0xfc, 0xcc, 0xe2, 0x01, 0xab, 0xb1, 0x26, 0x30, 0xa6, 0x8b, 0x66, 0x9e, 0x6a, 0xd2, 0xd8, 0xd6, 0x26, 0x54, 0xd7, 0x5d, 0xfb, 0xc6, 0xb5, 0x4a, 0x8e, 0x3a, 0x9c, 0x91, 0x5b, 0xe6, 0x63, 0xe0, 0x80, 0xdd, 0xcc, 0x34, 0x8e, 0x57, 0xa1, 0x0e, 0x2b, 0x1d, 0xd9, 0xf0, 0x3e, 0x1b, 0x89, 0x77, 0x96, 0xad, 0x88, 0x9b, 0x07, 0x5e, 0x59, 0x19, 0xdc, 0x5b, 0xf3, 0x7a, 0x11, 0x2d, 0x92, 0xc6, 0x93, 0x45, 0x6e, 0x64, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10997 = { .name = "ecdsa_secp521r1_sha512_10997", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10997_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10997_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10997_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 441 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10998 for ECDSA, tcId is 442 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10998_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_10998_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10998_sig[] = { 0x00, 0x4e, 0xd6, 0x92, 0xaf, 0x1e, 0xd1, 0xb4, 0xbd, 0x5c, 0xea, 0x3a, 0xa8, 0xdd, 0xc6, 0xf3, 0xf1, 0x5d, 0x8a, 0x6e, 0xe0, 0x01, 0x6f, 0xa0, 0xe8, 0xeb, 0x95, 0x85, 0x80, 0xe7, 0x42, 0x18, 0x32, 0xec, 0xc0, 0xe3, 0x87, 0xc3, 0x4a, 0xaf, 0xac, 0x63, 0x80, 0xba, 0xc4, 0x19, 0xea, 0x45, 0xc4, 0x2a, 0xe6, 0x42, 0x6a, 0xf5, 0x03, 0x84, 0x7f, 0x22, 0xc4, 0x9c, 0x2f, 0x45, 0x63, 0x38, 0xc1, 0xa7, 0x00, 0x7a, 0xce, 0xad, 0xde, 0x02, 0xac, 0xe1, 0x66, 0x8b, 0xc1, 0xa3, 0x36, 0x0d, 0x34, 0xe1, 0x25, 0xaf, 0xde, 0x23, 0x0f, 0x53, 0x6c, 0x15, 0x4d, 0x91, 0xe6, 0xc8, 0x76, 0xbe, 0xe1, 0xd3, 0x4a, 0xe0, 0x6e, 0xdc, 0xbb, 0xca, 0x0c, 0x7c, 0xd1, 0x76, 0x46, 0x84, 0x09, 0x13, 0x16, 0x47, 0x40, 0xb1, 0x2e, 0x2e, 0x22, 0x4f, 0xe3, 0xef, 0x3d, 0xec, 0x6f, 0xd8, 0x4a, 0x81, 0xb5, 0x81, 0xc1, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10998 = { .name = "ecdsa_secp521r1_sha512_10998", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10998_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10998_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10998_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 442 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 10999 for ECDSA, tcId is 443 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_10999_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_10999_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_10999_sig[] = { 0x00, 0xe0, 0x10, 0x94, 0x04, 0x8f, 0xcf, 0x7a, 0x1e, 0x2e, 0xc6, 0x6f, 0xae, 0xdf, 0xfc, 0x40, 0xf4, 0x8c, 0x9c, 0x93, 0x51, 0x43, 0x25, 0xbd, 0xe6, 0xb4, 0x95, 0x8d, 0x80, 0xf0, 0x41, 0x3e, 0xfd, 0xe7, 0xee, 0xc1, 0xdc, 0x6d, 0xe6, 0x5f, 0x96, 0x00, 0x9c, 0x06, 0x93, 0x97, 0xe5, 0x1d, 0xa2, 0xeb, 0x17, 0x29, 0xef, 0xa2, 0x87, 0xaf, 0xd5, 0x55, 0x2b, 0x25, 0xa9, 0xe4, 0x27, 0xa6, 0xd8, 0x36, 0x01, 0x48, 0x9e, 0x7e, 0x12, 0x4f, 0x66, 0x94, 0x2e, 0x64, 0x2d, 0xe9, 0x92, 0xe6, 0x0b, 0x3a, 0x86, 0xfc, 0xce, 0x57, 0x67, 0x67, 0x71, 0x93, 0x90, 0xc3, 0xa3, 0x12, 0xfc, 0xde, 0xaa, 0x56, 0x0a, 0x7f, 0xbb, 0x0c, 0xab, 0xb3, 0x5e, 0x05, 0xa6, 0xd6, 0xf3, 0x49, 0x91, 0x60, 0xfd, 0x2d, 0xba, 0x12, 0xd2, 0x9b, 0x61, 0x3b, 0x16, 0xde, 0xc7, 0x49, 0x4c, 0x95, 0x0d, 0x65, 0xfd, 0xf1, 0x1f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_10999 = { .name = "ecdsa_secp521r1_sha512_10999", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_10999_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_10999_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_10999_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 443 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11000 for ECDSA, tcId is 444 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11000_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_11000_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_11000_sig[] = { 0x01, 0xd2, 0x96, 0x29, 0x22, 0x13, 0x38, 0x0d, 0xe1, 0x33, 0xdc, 0x66, 0xec, 0xeb, 0x8b, 0xd8, 0x57, 0xa5, 0xc4, 0x68, 0xaf, 0xe8, 0x55, 0xc0, 0x5d, 0xa9, 0xdb, 0x93, 0x73, 0x73, 0xb5, 0x1f, 0x90, 0x20, 0xca, 0x11, 0x35, 0x34, 0x15, 0xda, 0x76, 0xbb, 0x6a, 0xf9, 0x97, 0xa4, 0x86, 0xd2, 0x37, 0x0e, 0x31, 0xad, 0xcc, 0x0a, 0x45, 0x31, 0x95, 0x2a, 0x3b, 0x59, 0x42, 0x86, 0x78, 0xee, 0x59, 0x43, 0x01, 0x59, 0x79, 0xa3, 0xc6, 0x09, 0xc2, 0xc2, 0x09, 0x9a, 0xe1, 0xb2, 0x90, 0xda, 0x3d, 0x61, 0x3b, 0x24, 0x8e, 0x3a, 0x10, 0xde, 0x7a, 0xd7, 0x70, 0xdf, 0xfc, 0x82, 0xfb, 0x33, 0xe7, 0x4f, 0xc3, 0x20, 0x75, 0x33, 0xf9, 0x72, 0x85, 0xcf, 0x45, 0x57, 0xa6, 0x40, 0x7e, 0x9a, 0x77, 0x5e, 0x59, 0xef, 0xea, 0xee, 0x42, 0x64, 0xb2, 0x63, 0x49, 0x33, 0xa6, 0xba, 0xf8, 0xc4, 0x06, 0xf0, 0xc4, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11000 = { .name = "ecdsa_secp521r1_sha512_11000", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11000_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11000_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_11000_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 444 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11001 for ECDSA, tcId is 445 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11001_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_11001_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_11001_sig[] = { 0x01, 0xef, 0x8f, 0x78, 0x5c, 0x51, 0xa2, 0x5a, 0xe2, 0xcd, 0x93, 0x48, 0x7b, 0x5c, 0x84, 0x8d, 0x4a, 0xf1, 0x33, 0x21, 0x7a, 0x91, 0xf5, 0x13, 0x59, 0xc9, 0x66, 0xe7, 0x53, 0x8e, 0x68, 0x74, 0x35, 0x78, 0x12, 0x2d, 0xf5, 0x83, 0x00, 0x02, 0xf9, 0x6f, 0x6f, 0xad, 0xb5, 0xbc, 0x44, 0x48, 0x0e, 0x3b, 0x3b, 0x2c, 0x80, 0x4e, 0x4c, 0x51, 0xcf, 0x95, 0xd0, 0x59, 0xd5, 0x64, 0x6c, 0x5c, 0xef, 0x21, 0x01, 0xba, 0x22, 0x76, 0xcc, 0x00, 0x3e, 0x87, 0xbe, 0xa3, 0x7c, 0x37, 0x24, 0xe5, 0x8a, 0x0a, 0xb8, 0x85, 0xf5, 0x6d, 0x09, 0xb8, 0xb5, 0x71, 0x8f, 0x67, 0x4f, 0x9c, 0x70, 0xf3, 0xb5, 0xec, 0xfb, 0x4a, 0xd1, 0xf3, 0x41, 0x7b, 0x42, 0x0e, 0xc4, 0x08, 0x10, 0xe0, 0x88, 0x26, 0xef, 0xa7, 0xd8, 0xad, 0x6c, 0xa7, 0xc6, 0xa7, 0x84, 0x03, 0x48, 0x09, 0x7f, 0x92, 0xb2, 0xde, 0x8d, 0x6e, 0x08, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11001 = { .name = "ecdsa_secp521r1_sha512_11001", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11001_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11001_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_11001_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 445 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11002 for ECDSA, tcId is 446 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11002_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_11002_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_11002_sig[] = { 0x01, 0x55, 0x97, 0x8a, 0xdc, 0x4b, 0x57, 0x0d, 0x89, 0x75, 0x11, 0xf5, 0xec, 0xfb, 0x65, 0xa3, 0x19, 0x47, 0xe6, 0xe9, 0x89, 0xda, 0x17, 0xde, 0xa7, 0x16, 0x62, 0x5b, 0xb3, 0xfa, 0x7b, 0x92, 0xb8, 0x53, 0x62, 0x3e, 0xb0, 0xcd, 0x9c, 0xe2, 0xa5, 0xe2, 0xb4, 0xd8, 0xc1, 0xc2, 0xa9, 0x0e, 0xc0, 0x4f, 0xe7, 0x9d, 0x01, 0x25, 0x76, 0xec, 0x72, 0x8a, 0x45, 0xc5, 0xce, 0x47, 0xc6, 0xd5, 0x00, 0xc0, 0x00, 0xf7, 0x9f, 0xa8, 0xb9, 0x4e, 0xe2, 0x82, 0xa3, 0xd1, 0x81, 0x58, 0x92, 0xcb, 0xf1, 0x5d, 0x7e, 0xbd, 0xf6, 0x2c, 0xb0, 0x42, 0xc7, 0x6b, 0xb3, 0xc7, 0x10, 0xc2, 0x3e, 0x32, 0xb7, 0x59, 0x92, 0xcc, 0x24, 0x9d, 0x84, 0x07, 0x21, 0x98, 0xe4, 0xed, 0x63, 0xd7, 0x24, 0x35, 0xa0, 0x7d, 0x2e, 0xd7, 0x6f, 0x27, 0x8d, 0x73, 0x99, 0xf6, 0x1a, 0x5b, 0x5c, 0x99, 0x7f, 0x45, 0x69, 0x2f, 0xed, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11002 = { .name = "ecdsa_secp521r1_sha512_11002", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11002_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11002_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_11002_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 446 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11003 for ECDSA, tcId is 447 in file ecdsa_secp521r1_sha512_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11003_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_11003_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_11003_sig[] = { 0x01, 0xa2, 0xaf, 0x29, 0xc5, 0x81, 0x84, 0xca, 0x86, 0x1e, 0x7c, 0xd9, 0x31, 0xf3, 0x9c, 0xea, 0x06, 0x4b, 0x19, 0x9e, 0xee, 0x56, 0x3f, 0x24, 0x1c, 0xd5, 0xec, 0xf6, 0xeb, 0xb2, 0xad, 0xe7, 0x28, 0xf1, 0xbe, 0x23, 0xcf, 0x00, 0x7e, 0xbe, 0x8e, 0xf0, 0xc4, 0x2d, 0x99, 0xf9, 0xf5, 0x19, 0x0f, 0x68, 0x15, 0x44, 0x6a, 0xfc, 0x30, 0x43, 0xa8, 0x20, 0xd7, 0xda, 0xf2, 0x7e, 0x86, 0xb8, 0x3b, 0x8a, 0x01, 0xa2, 0xac, 0xd1, 0x82, 0x2e, 0xb5, 0x39, 0x38, 0x3d, 0xef, 0xff, 0x87, 0x69, 0xaa, 0xd8, 0xba, 0xcd, 0x50, 0xcd, 0x24, 0xca, 0x7a, 0xa6, 0x67, 0x06, 0x71, 0x41, 0x81, 0x10, 0x17, 0x78, 0x08, 0xc3, 0xf4, 0xfb, 0xe6, 0x04, 0x1b, 0x9c, 0xb8, 0x98, 0x35, 0x9e, 0xe6, 0x1e, 0x04, 0x82, 0x4a, 0xde, 0xdd, 0x62, 0xb3, 0x9f, 0xe5, 0x79, 0x19, 0x07, 0xa2, 0x05, 0x86, 0x33, 0x3b, 0xd3, 0xc7, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11003 = { .name = "ecdsa_secp521r1_sha512_11003", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11003_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11003_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_11003_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 447 in file ecdsa_secp521r1_sha512_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11004 for ECDSA, tcId is 1 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11004_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11004_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11004_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x85, 0x5d, 0x44, 0x2f, 0x5b, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x52, 0x5f, 0xe7, 0x10, 0xfa, 0xb9, 0xaa, 0x7c, 0x77, 0xa6, 0x7f, 0x79, 0xe6, 0xfa, 0xdd, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11004 = { .name = "ecdsa_secp256r1_sha256_11004", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11004_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11004_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11004_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11005 for ECDSA, tcId is 2 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11005_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11005_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11005 = { .name = "ecdsa_secp256r1_sha256_11005", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11005_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11005_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11005_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of s misses leading 0, tcId is 2 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11006 for ECDSA, tcId is 3 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11006_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11006_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11006_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11006 = { .name = "ecdsa_secp256r1_sha256_11006", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11006_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11006_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11006_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 3 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11007 for ECDSA, tcId is 4 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11007_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11007_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11007_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11007 = { .name = "ecdsa_secp256r1_sha256_11007", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11007_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11007_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11007_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 4 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11008 for ECDSA, tcId is 5 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11008_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11008_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11008_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11008 = { .name = "ecdsa_secp256r1_sha256_11008", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11008_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11008_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11008_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 5 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11009 for ECDSA, tcId is 68 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11009_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11009_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11009 = { .name = "ecdsa_secp256r1_sha256_11009", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11009_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11009_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11009_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 68 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11010 for ECDSA, tcId is 69 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11010_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11010_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11010_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11010 = { .name = "ecdsa_secp256r1_sha256_11010", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11010_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11010_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11010_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 69 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11011 for ECDSA, tcId is 70 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11011_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11011_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11011_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11011 = { .name = "ecdsa_secp256r1_sha256_11011", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11011_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11011_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11011_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 70 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11012 for ECDSA, tcId is 71 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11012_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11012_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11012_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11012 = { .name = "ecdsa_secp256r1_sha256_11012", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11012_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11012_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11012_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 71 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11013 for ECDSA, tcId is 93 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11013_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11013_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11013 = { .name = "ecdsa_secp256r1_sha256_11013", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11013_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11013_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11013_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 93 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11014 for ECDSA, tcId is 94 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11014_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11014_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11014_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11014 = { .name = "ecdsa_secp256r1_sha256_11014", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11014_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11014_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11014_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 94 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11015 for ECDSA, tcId is 95 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11015_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11015_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11015_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11015 = { .name = "ecdsa_secp256r1_sha256_11015", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11015_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11015_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11015_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 95 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11016 for ECDSA, tcId is 96 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11016_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11016_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11016_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11016 = { .name = "ecdsa_secp256r1_sha256_11016", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11016_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11016_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11016_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 96 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11017 for ECDSA, tcId is 98 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11017_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11017_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x05, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11017 = { .name = "ecdsa_secp256r1_sha256_11017", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11017_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11017_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11017_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 98 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11018 for ECDSA, tcId is 99 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11018_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11018_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11018_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11018 = { .name = "ecdsa_secp256r1_sha256_11018", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11018_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11018_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11018_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 99 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11019 for ECDSA, tcId is 114 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11019_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11019_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11019_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11019 = { .name = "ecdsa_secp256r1_sha256_11019", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11019_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11019_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11019_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 114 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11020 for ECDSA, tcId is 115 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11020_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11020_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11020_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11020 = { .name = "ecdsa_secp256r1_sha256_11020", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11020_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11020_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11020_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 115 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11021 for ECDSA, tcId is 118 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11021_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11021_sig[] = { 0x29, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11021 = { .name = "ecdsa_secp256r1_sha256_11021", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11021_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11021_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11021_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 118 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11022 for ECDSA, tcId is 119 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11022_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11022_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11022_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x02, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11022 = { .name = "ecdsa_secp256r1_sha256_11022", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11022_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11022_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11022_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 119 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11023 for ECDSA, tcId is 120 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11023_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11023_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11023_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x98, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11023 = { .name = "ecdsa_secp256r1_sha256_11023", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11023_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11023_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11023_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 120 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11024 for ECDSA, tcId is 121 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11024_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11024_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11024_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11024 = { .name = "ecdsa_secp256r1_sha256_11024", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11024_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11024_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11024_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 121 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11025 for ECDSA, tcId is 122 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11025_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11025_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11025_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11025 = { .name = "ecdsa_secp256r1_sha256_11025", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11025_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11025_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 122 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11026 for ECDSA, tcId is 123 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11026_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11026_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11026_sig[] = { 0x00, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11026 = { .name = "ecdsa_secp256r1_sha256_11026", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11026_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11026_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11026_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 123 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11027 for ECDSA, tcId is 124 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11027_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11027_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11027_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11027 = { .name = "ecdsa_secp256r1_sha256_11027", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11027_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11027_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11027_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 124 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11028 for ECDSA, tcId is 125 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11028_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11028_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11028_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11028 = { .name = "ecdsa_secp256r1_sha256_11028", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11028_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11028_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11028_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 125 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11029 for ECDSA, tcId is 126 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11029_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11029_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11029_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11029 = { .name = "ecdsa_secp256r1_sha256_11029", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11029_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11029_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11029_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 126 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11030 for ECDSA, tcId is 129 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11030_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11030_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11030_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11030 = { .name = "ecdsa_secp256r1_sha256_11030", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11030_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11030_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11030_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 129 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11031 for ECDSA, tcId is 130 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11031_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11031_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11031_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11031 = { .name = "ecdsa_secp256r1_sha256_11031", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11031_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11031_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11031_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 130 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11032 for ECDSA, tcId is 131 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11032_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11032_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11032_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbd, 0x6b, 0x94, 0xd5, 0xed, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xbc, 0xcc, 0x08, 0x33, 0x49, 0x06, 0x86, 0xde, 0xac, 0x86, 0x35, 0xbc, 0xb9, 0xbf, 0x53, 0x69, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11032 = { .name = "ecdsa_secp256r1_sha256_11032", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11032_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11032_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11032_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 131 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11033 for ECDSA, tcId is 132 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11033_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11033_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11033_sig[] = { 0x2b, 0xa3, 0xa8, 0xbf, 0x6b, 0x94, 0xd5, 0xeb, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6f, 0x42, 0xfe, 0x12, 0xd7, 0xfa, 0xd7, 0x49, 0xd4, 0xc5, 0x12, 0xa0, 0x36, 0xc0, 0xf9, 0x08, 0xc7, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11033 = { .name = "ecdsa_secp256r1_sha256_11033", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11033_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11033_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11033_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 132 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11034 for ECDSA, tcId is 133 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11034_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11034_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11034_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11034 = { .name = "ecdsa_secp256r1_sha256_11034", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11034_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11034_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11034_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 133 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11035 for ECDSA, tcId is 134 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11035_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11035_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11035_sig[] = { 0xd4, 0x5c, 0x57, 0x40, 0x94, 0x6b, 0x2a, 0x14, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x90, 0xbd, 0x01, 0xed, 0x28, 0x05, 0x28, 0xb6, 0x2b, 0x3a, 0xed, 0x5f, 0xc9, 0x3f, 0x06, 0xf7, 0x39, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11035 = { .name = "ecdsa_secp256r1_sha256_11035", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11035_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11035_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11035_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 134 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11036 for ECDSA, tcId is 135 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11036_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11036_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11036_sig[] = { 0xfe, 0xd4, 0x5c, 0x57, 0x42, 0x94, 0x6b, 0x2a, 0x12, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x43, 0x33, 0xf7, 0xcc, 0xb6, 0xf9, 0x79, 0x21, 0x53, 0x79, 0xca, 0x43, 0x46, 0x40, 0xac, 0x97, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11036 = { .name = "ecdsa_secp256r1_sha256_11036", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11036_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11036_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11036_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 135 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11037 for ECDSA, tcId is 136 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11037_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11037_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11037_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11037 = { .name = "ecdsa_secp256r1_sha256_11037", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11037_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11037_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11037_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 136 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11038 for ECDSA, tcId is 137 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11038_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11038_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11038_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11038 = { .name = "ecdsa_secp256r1_sha256_11038", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11038_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11038_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11038_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 137 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11039 for ECDSA, tcId is 138 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11039_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11039_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11039_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x78, 0xa2, 0xbb, 0xd0, 0xa6, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x27, 0x6e, 0x0e, 0x4a, 0x53, 0x75, 0x92, 0x8d, 0x6f, 0xcd, 0x16, 0x0c, 0x11, 0xcb, 0x6d, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11039 = { .name = "ecdsa_secp256r1_sha256_11039", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11039_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11039_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11039_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 138 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11040 for ECDSA, tcId is 139 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11040_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11040_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11040_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xb3, 0x29, 0xf4, 0x7a, 0xa2, 0xbb, 0xd0, 0xa4, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0xad, 0xa0, 0x18, 0xef, 0x05, 0x46, 0x55, 0x83, 0x88, 0x59, 0x80, 0x86, 0x19, 0x05, 0x22, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11040 = { .name = "ecdsa_secp256r1_sha256_11040", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11040_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11040_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11040_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 139 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11041 for ECDSA, tcId is 140 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11041_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11041_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11041_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11041 = { .name = "ecdsa_secp256r1_sha256_11041", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11041_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11041_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11041_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 140 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11042 for ECDSA, tcId is 141 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11042_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11042_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11042_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0xfe, 0x4c, 0xd6, 0x0b, 0x87, 0x5d, 0x44, 0x2f, 0x59, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0xd8, 0x91, 0xf1, 0xb5, 0xac, 0x8a, 0x6d, 0x72, 0x90, 0x32, 0xe9, 0xf3, 0xee, 0x34, 0x92, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11042 = { .name = "ecdsa_secp256r1_sha256_11042", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11042_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11042_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11042_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 141 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11043 for ECDSA, tcId is 142 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11043_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11043_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11043_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11043 = { .name = "ecdsa_secp256r1_sha256_11043", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11043_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11043_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11043_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 142 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11044 for ECDSA, tcId is 143 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11044_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11044_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11044_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11044 = { .name = "ecdsa_secp256r1_sha256_11044", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11044_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11044_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11044_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 143 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11045 for ECDSA, tcId is 144 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11045_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11045_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11045_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11045 = { .name = "ecdsa_secp256r1_sha256_11045", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11045_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11045_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11045_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 144 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11046 for ECDSA, tcId is 145 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11046_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11046_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11046_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11046 = { .name = "ecdsa_secp256r1_sha256_11046", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11046_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11046_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11046_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 145 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11047 for ECDSA, tcId is 146 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11047_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11047_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11047_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11047 = { .name = "ecdsa_secp256r1_sha256_11047", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11047_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11047_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11047_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 146 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11048 for ECDSA, tcId is 147 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11048_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11048_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11048_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11048 = { .name = "ecdsa_secp256r1_sha256_11048", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11048_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11048_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11048_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 147 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11049 for ECDSA, tcId is 148 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11049_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11049_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11049_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11049 = { .name = "ecdsa_secp256r1_sha256_11049", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11049_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11049_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11049_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 148 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11050 for ECDSA, tcId is 149 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11050_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11050_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11050_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11050 = { .name = "ecdsa_secp256r1_sha256_11050", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11050_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11050_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11050_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 149 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11051 for ECDSA, tcId is 150 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11051_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11051_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11051_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11051 = { .name = "ecdsa_secp256r1_sha256_11051", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11051_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11051_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11051_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 150 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11052 for ECDSA, tcId is 151 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11052_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11052_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11052_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11052 = { .name = "ecdsa_secp256r1_sha256_11052", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11052_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11052_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11052_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 151 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11053 for ECDSA, tcId is 154 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11053_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11053_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11053_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11053 = { .name = "ecdsa_secp256r1_sha256_11053", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11053_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11053_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11053_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 154 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11054 for ECDSA, tcId is 155 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11054_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11054_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11054_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11054 = { .name = "ecdsa_secp256r1_sha256_11054", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11054_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11054_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11054_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 155 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11055 for ECDSA, tcId is 156 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11055_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11055_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11055_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11055 = { .name = "ecdsa_secp256r1_sha256_11055", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11055_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11055_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11055_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 156 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11056 for ECDSA, tcId is 157 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11056_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11056_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11056_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11056 = { .name = "ecdsa_secp256r1_sha256_11056", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11056_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11056_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11056_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 157 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11057 for ECDSA, tcId is 158 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11057_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11057_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11057_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11057 = { .name = "ecdsa_secp256r1_sha256_11057", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11057_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11057_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11057_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 158 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11058 for ECDSA, tcId is 159 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11058_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11058_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11058_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11058 = { .name = "ecdsa_secp256r1_sha256_11058", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11058_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11058_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 159 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11059 for ECDSA, tcId is 160 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11059_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11059_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11059_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11059 = { .name = "ecdsa_secp256r1_sha256_11059", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11059_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11059_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 160 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11060 for ECDSA, tcId is 161 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11060_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11060_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11060_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11060 = { .name = "ecdsa_secp256r1_sha256_11060", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11060_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11060_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 161 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11061 for ECDSA, tcId is 164 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11061_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11061_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11061_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11061 = { .name = "ecdsa_secp256r1_sha256_11061", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11061_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11061_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 164 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11062 for ECDSA, tcId is 165 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11062_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11062_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11062_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11062 = { .name = "ecdsa_secp256r1_sha256_11062", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11062_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11062_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 165 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11063 for ECDSA, tcId is 166 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11063_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11063_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11063_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11063 = { .name = "ecdsa_secp256r1_sha256_11063", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11063_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11063_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 166 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11064 for ECDSA, tcId is 167 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11064_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11064_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11064_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11064 = { .name = "ecdsa_secp256r1_sha256_11064", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11064_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11064_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 167 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11065 for ECDSA, tcId is 168 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11065_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11065_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11065_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11065 = { .name = "ecdsa_secp256r1_sha256_11065", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11065_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11065_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 168 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11066 for ECDSA, tcId is 169 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11066_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11066_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11066_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11066 = { .name = "ecdsa_secp256r1_sha256_11066", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11066_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11066_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 169 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11067 for ECDSA, tcId is 170 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11067_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11067_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11067_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11067 = { .name = "ecdsa_secp256r1_sha256_11067", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11067_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11067_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 170 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11068 for ECDSA, tcId is 171 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11068_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11068_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11068_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11068 = { .name = "ecdsa_secp256r1_sha256_11068", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11068_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11068_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 171 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11069 for ECDSA, tcId is 174 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11069_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11069_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11069_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11069 = { .name = "ecdsa_secp256r1_sha256_11069", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11069_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11069_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 174 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11070 for ECDSA, tcId is 175 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11070_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11070_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11070_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11070 = { .name = "ecdsa_secp256r1_sha256_11070", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11070_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11070_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 175 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11071 for ECDSA, tcId is 176 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11071_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11071_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11071_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11071 = { .name = "ecdsa_secp256r1_sha256_11071", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11071_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11071_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 176 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11072 for ECDSA, tcId is 177 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11072_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11072_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11072_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11072 = { .name = "ecdsa_secp256r1_sha256_11072", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11072_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11072_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 177 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11073 for ECDSA, tcId is 178 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11073_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11073_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11073_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11073 = { .name = "ecdsa_secp256r1_sha256_11073", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11073_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11073_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 178 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11074 for ECDSA, tcId is 179 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11074_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11074_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11074_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11074 = { .name = "ecdsa_secp256r1_sha256_11074", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11074_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11074_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 179 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11075 for ECDSA, tcId is 180 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11075_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11075_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11075_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11075 = { .name = "ecdsa_secp256r1_sha256_11075", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11075_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11075_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 180 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11076 for ECDSA, tcId is 181 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11076_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11076_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11076_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11076 = { .name = "ecdsa_secp256r1_sha256_11076", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11076_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11076_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 181 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11077 for ECDSA, tcId is 184 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11077_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11077_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11077_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11077 = { .name = "ecdsa_secp256r1_sha256_11077", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11077_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11077_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 184 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11078 for ECDSA, tcId is 185 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11078_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11078_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11078_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11078 = { .name = "ecdsa_secp256r1_sha256_11078", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11078_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11078_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 185 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11079 for ECDSA, tcId is 186 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11079_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11079_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11079_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11079 = { .name = "ecdsa_secp256r1_sha256_11079", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11079_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11079_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11079_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 186 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11080 for ECDSA, tcId is 187 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11080_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11080_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11080_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11080 = { .name = "ecdsa_secp256r1_sha256_11080", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11080_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11080_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 187 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11081 for ECDSA, tcId is 188 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11081_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11081_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11081_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11081 = { .name = "ecdsa_secp256r1_sha256_11081", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11081_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11081_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 188 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11082 for ECDSA, tcId is 189 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11082_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11082_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11082_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11082 = { .name = "ecdsa_secp256r1_sha256_11082", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11082_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11082_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 189 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11083 for ECDSA, tcId is 190 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11083_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11083_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11083_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11083 = { .name = "ecdsa_secp256r1_sha256_11083", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11083_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11083_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 190 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11084 for ECDSA, tcId is 191 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11084_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11084_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11084_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11084 = { .name = "ecdsa_secp256r1_sha256_11084", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11084_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11084_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 191 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11085 for ECDSA, tcId is 194 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11085_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11085_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11085_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11085 = { .name = "ecdsa_secp256r1_sha256_11085", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11085_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11085_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 194 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11086 for ECDSA, tcId is 195 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11086_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11086_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11086_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11086 = { .name = "ecdsa_secp256r1_sha256_11086", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11086_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11086_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 195 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11087 for ECDSA, tcId is 196 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11087_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11087_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11087_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11087 = { .name = "ecdsa_secp256r1_sha256_11087", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11087_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11087_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 196 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11088 for ECDSA, tcId is 197 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11088_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11088_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11088_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11088 = { .name = "ecdsa_secp256r1_sha256_11088", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11088_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11088_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 197 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11089 for ECDSA, tcId is 198 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11089_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11089_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11089_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11089 = { .name = "ecdsa_secp256r1_sha256_11089", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11089_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11089_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 198 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11090 for ECDSA, tcId is 199 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11090_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11090_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11090_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11090 = { .name = "ecdsa_secp256r1_sha256_11090", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11090_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11090_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 199 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11091 for ECDSA, tcId is 200 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11091_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11091_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11091_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11091 = { .name = "ecdsa_secp256r1_sha256_11091", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11091_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11091_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 200 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11092 for ECDSA, tcId is 201 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11092_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11092_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11092_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11092 = { .name = "ecdsa_secp256r1_sha256_11092", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11092_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11092_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 201 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11093 for ECDSA, tcId is 204 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11093_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11093_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11093_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11093 = { .name = "ecdsa_secp256r1_sha256_11093", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11093_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11093_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 204 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11094 for ECDSA, tcId is 205 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11094_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11094_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11094_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11094 = { .name = "ecdsa_secp256r1_sha256_11094", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11094_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11094_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 205 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11095 for ECDSA, tcId is 206 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11095_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11095_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11095_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11095 = { .name = "ecdsa_secp256r1_sha256_11095", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11095_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11095_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 206 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11096 for ECDSA, tcId is 207 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11096_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11096_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11096_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11096 = { .name = "ecdsa_secp256r1_sha256_11096", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11096_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11096_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 207 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11097 for ECDSA, tcId is 208 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11097_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11097_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11097_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11097 = { .name = "ecdsa_secp256r1_sha256_11097", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11097_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11097_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 208 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11098 for ECDSA, tcId is 209 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11098_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11098_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11098_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11098 = { .name = "ecdsa_secp256r1_sha256_11098", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11098_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11098_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 209 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11099 for ECDSA, tcId is 210 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11099_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11099_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11099_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11099 = { .name = "ecdsa_secp256r1_sha256_11099", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11099_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11099_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 210 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11100 for ECDSA, tcId is 211 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11100_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11100_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11100_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11100 = { .name = "ecdsa_secp256r1_sha256_11100", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11100_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11100_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11100_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 211 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11101 for ECDSA, tcId is 214 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11101_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11101_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11101_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11101 = { .name = "ecdsa_secp256r1_sha256_11101", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11101_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11101_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11101_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 214 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11102 for ECDSA, tcId is 215 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11102_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11102_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11102_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11102 = { .name = "ecdsa_secp256r1_sha256_11102", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11102_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11102_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11102_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 215 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11103 for ECDSA, tcId is 216 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11103_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11103_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11103_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11103 = { .name = "ecdsa_secp256r1_sha256_11103", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11103_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11103_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11103_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 216 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11104 for ECDSA, tcId is 217 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11104_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11104_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11104_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11104 = { .name = "ecdsa_secp256r1_sha256_11104", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11104_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11104_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11104_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 217 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11105 for ECDSA, tcId is 218 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11105_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11105_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11105_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11105 = { .name = "ecdsa_secp256r1_sha256_11105", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11105_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11105_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11105_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 218 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11106 for ECDSA, tcId is 219 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11106_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11106_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11106_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11106 = { .name = "ecdsa_secp256r1_sha256_11106", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11106_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11106_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11106_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 219 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11107 for ECDSA, tcId is 220 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11107_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11107_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11107_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11107 = { .name = "ecdsa_secp256r1_sha256_11107", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11107_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11107_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11107_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 220 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11108 for ECDSA, tcId is 221 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11108_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11108_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11108_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11108 = { .name = "ecdsa_secp256r1_sha256_11108", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11108_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11108_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11108_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 221 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11109 for ECDSA, tcId is 230 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11109_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11109_msg[] = { 0x36, 0x39, 0x38, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_11109_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x6a, 0xf0, 0x15, 0x97, 0x1c, 0xc3, 0x0b, 0xe6, 0xd1, 0xa2, 0x06, 0xd4, 0xe0, 0x13, 0xe0, 0x99, 0x77, 0x72, 0xa2, 0xf9, 0x1d, 0x73, 0x28, 0x6f, 0xfd, 0x68, 0x3b, 0x9b, 0xb2, 0xcf, 0x4f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11109 = { .name = "ecdsa_secp256r1_sha256_11109", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11109_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11109_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha256_11109_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 230 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11110 for ECDSA, tcId is 231 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11110_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11110_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11110_sig[] = { 0x16, 0xae, 0xa9, 0x64, 0xa2, 0xf6, 0x50, 0x6d, 0x6f, 0x78, 0xc8, 0x1c, 0x91, 0xfc, 0x7e, 0x8b, 0xde, 0xd7, 0xd3, 0x97, 0x73, 0x84, 0x48, 0xde, 0x1e, 0x19, 0xa0, 0xec, 0x58, 0x0b, 0xf2, 0x66, 0x25, 0x2c, 0xd7, 0x62, 0x13, 0x0c, 0x66, 0x67, 0xcf, 0xe8, 0xb7, 0xbc, 0x47, 0xd2, 0x7d, 0x78, 0x39, 0x1e, 0x8e, 0x80, 0xc5, 0x78, 0xd1, 0xcd, 0x38, 0xc3, 0xff, 0x03, 0x3b, 0xe9, 0x28, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11110 = { .name = "ecdsa_secp256r1_sha256_11110", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11110_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11110_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11110_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 231 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11111 for ECDSA, tcId is 232 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11111_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11111_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_11111_sig[] = { 0x9c, 0xc9, 0x8b, 0xe2, 0x34, 0x7d, 0x46, 0x9b, 0xf4, 0x76, 0xdf, 0xc2, 0x6b, 0x9b, 0x73, 0x3d, 0xf2, 0xd2, 0x6d, 0x6e, 0xf5, 0x24, 0xaf, 0x91, 0x7c, 0x66, 0x5b, 0xac, 0xcb, 0x23, 0xc8, 0x82, 0x09, 0x34, 0x96, 0x45, 0x9e, 0xff, 0xe2, 0xd8, 0xd7, 0x07, 0x27, 0xb8, 0x24, 0x62, 0xf6, 0x1d, 0x0e, 0xc1, 0xb7, 0x84, 0x79, 0x29, 0xd1, 0x0e, 0xa6, 0x31, 0xda, 0xcb, 0x16, 0xb5, 0x6c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11111 = { .name = "ecdsa_secp256r1_sha256_11111", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11111_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11111_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11111_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 232 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11112 for ECDSA, tcId is 233 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11112_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11112_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11112_sig[] = { 0x73, 0xb3, 0xc9, 0x0e, 0xcd, 0x39, 0x00, 0x28, 0x05, 0x81, 0x64, 0x52, 0x4d, 0xde, 0x89, 0x27, 0x03, 0xdc, 0xe3, 0xde, 0xa0, 0xd5, 0x3f, 0xa8, 0x09, 0x39, 0x99, 0xf0, 0x7a, 0xb8, 0xaa, 0x43, 0x2f, 0x67, 0xb0, 0xb8, 0xe2, 0x06, 0x36, 0x69, 0x5b, 0xb7, 0xd8, 0xbf, 0x0a, 0x65, 0x1c, 0x80, 0x2e, 0xd2, 0x5a, 0x39, 0x53, 0x87, 0xb5, 0xf4, 0x18, 0x8c, 0x0c, 0x40, 0x75, 0xc8, 0x86, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11112 = { .name = "ecdsa_secp256r1_sha256_11112", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11112_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11112_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11112_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 233 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11113 for ECDSA, tcId is 234 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11113_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11113_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_11113_sig[] = { 0xbf, 0xab, 0x30, 0x98, 0x25, 0x28, 0x47, 0xb3, 0x28, 0xfa, 0xdf, 0x2f, 0x89, 0xb9, 0x5c, 0x85, 0x1a, 0x7f, 0x0e, 0xb3, 0x90, 0x76, 0x33, 0x78, 0xf3, 0x7e, 0x90, 0x11, 0x9d, 0x5b, 0xa3, 0xdd, 0xbd, 0xd6, 0x4e, 0x23, 0x4e, 0x83, 0x2b, 0x10, 0x67, 0xc2, 0xd0, 0x58, 0xcc, 0xb4, 0x4d, 0x97, 0x81, 0x95, 0xcc, 0xeb, 0xb6, 0x5c, 0x2a, 0xaf, 0x1e, 0x2d, 0xa9, 0xb8, 0xb4, 0x98, 0x7e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11113 = { .name = "ecdsa_secp256r1_sha256_11113", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11113_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11113_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11113_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 234 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11114 for ECDSA, tcId is 235 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11114_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11114_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_11114_sig[] = { 0x20, 0x4a, 0x97, 0x84, 0x07, 0x4b, 0x24, 0x6d, 0x8b, 0xf8, 0xbf, 0x04, 0xa4, 0xce, 0xb1, 0xc1, 0xf1, 0xc9, 0xaa, 0xab, 0x16, 0x8b, 0x15, 0x96, 0xd1, 0x70, 0x93, 0xc5, 0xcd, 0x21, 0xd2, 0xcd, 0x51, 0xcc, 0xe4, 0x16, 0x70, 0x63, 0x67, 0x83, 0xdc, 0x06, 0xa7, 0x59, 0xc8, 0x84, 0x78, 0x68, 0xa4, 0x06, 0xc2, 0x50, 0x6f, 0xe1, 0x79, 0x75, 0x58, 0x2f, 0xe6, 0x48, 0xd1, 0xd8, 0x8b, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11114 = { .name = "ecdsa_secp256r1_sha256_11114", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11114_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11114_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11114_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 235 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11115 for ECDSA, tcId is 236 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11115_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11115_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11115_sig[] = { 0xed, 0x66, 0xdc, 0x34, 0xf5, 0x51, 0xac, 0x82, 0xf6, 0x3d, 0x4a, 0xa4, 0xf8, 0x1f, 0xe2, 0xcb, 0x00, 0x31, 0xa9, 0x1d, 0x13, 0x14, 0xf8, 0x35, 0x02, 0x7b, 0xca, 0x0f, 0x1c, 0xee, 0xaa, 0x03, 0x99, 0xca, 0x12, 0x3a, 0xa0, 0x9b, 0x13, 0xcd, 0x19, 0x4a, 0x42, 0x2e, 0x18, 0xd5, 0xfd, 0xa1, 0x67, 0x62, 0x3c, 0x3f, 0x6e, 0x5d, 0x4d, 0x6a, 0xbb, 0x89, 0x53, 0xd6, 0x7c, 0x0c, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11115 = { .name = "ecdsa_secp256r1_sha256_11115", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11115_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11115_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11115_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 236 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11116 for ECDSA, tcId is 237 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11116_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11116_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11116_sig[] = { 0x06, 0x0b, 0x70, 0x0b, 0xef, 0x66, 0x5c, 0x68, 0x89, 0x9d, 0x44, 0xf2, 0x35, 0x6a, 0x57, 0x8d, 0x12, 0x6b, 0x06, 0x20, 0x23, 0xcc, 0xc3, 0xc0, 0x56, 0xbf, 0x0f, 0x60, 0xa2, 0x37, 0x01, 0x2b, 0x8d, 0x18, 0x6c, 0x02, 0x78, 0x32, 0x96, 0x5f, 0x4f, 0xcc, 0x78, 0xa3, 0x36, 0x6c, 0xa9, 0x5d, 0xed, 0xbb, 0x41, 0x0c, 0xbe, 0xf3, 0xf2, 0x6d, 0x6b, 0xe5, 0xd5, 0x81, 0xc1, 0x1d, 0x36, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11116 = { .name = "ecdsa_secp256r1_sha256_11116", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11116_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11116_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11116_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 237 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11117 for ECDSA, tcId is 238 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11117_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11117_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11117_sig[] = { 0x9f, 0x6a, 0xdf, 0xe8, 0xd5, 0xeb, 0x5b, 0x2c, 0x24, 0xd7, 0xaa, 0x79, 0x34, 0xb6, 0xcf, 0x29, 0xc9, 0x3e, 0xa7, 0x6c, 0xd3, 0x13, 0xc9, 0x13, 0x2b, 0xb0, 0xc8, 0xe3, 0x8c, 0x96, 0x83, 0x1d, 0xb2, 0x6a, 0x9c, 0x9e, 0x40, 0xe5, 0x5e, 0xe0, 0x89, 0x0c, 0x94, 0x4c, 0xf2, 0x71, 0x75, 0x6c, 0x90, 0x6a, 0x33, 0xe6, 0x6b, 0x5b, 0xd1, 0x5e, 0x05, 0x15, 0x93, 0x88, 0x3b, 0x5e, 0x99, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11117 = { .name = "ecdsa_secp256r1_sha256_11117", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11117_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11117_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11117_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 238 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11118 for ECDSA, tcId is 239 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11118_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11118_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11118_sig[] = { 0xa1, 0xaf, 0x03, 0xca, 0x91, 0x67, 0x7b, 0x67, 0x3a, 0xd2, 0xf3, 0x36, 0x15, 0xe5, 0x61, 0x74, 0xa1, 0xab, 0xf6, 0xda, 0x16, 0x8c, 0xeb, 0xfa, 0x88, 0x68, 0xf4, 0xba, 0x27, 0x3f, 0x16, 0xb7, 0x20, 0xaa, 0x73, 0xff, 0xe4, 0x8a, 0xfa, 0x64, 0x35, 0xcd, 0x25, 0x8b, 0x17, 0x3d, 0x0c, 0x23, 0x77, 0xd6, 0x90, 0x22, 0xe7, 0xd0, 0x98, 0xd7, 0x5c, 0xaf, 0x24, 0xc8, 0xc5, 0xe0, 0x6b, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11118 = { .name = "ecdsa_secp256r1_sha256_11118", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11118_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11118_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11118_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 239 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11119 for ECDSA, tcId is 240 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11119_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11119_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_11119_sig[] = { 0xfd, 0xc7, 0x06, 0x02, 0x76, 0x6f, 0x8e, 0xed, 0x11, 0xa6, 0xc9, 0x9a, 0x71, 0xc9, 0x73, 0xd5, 0x65, 0x93, 0x55, 0x50, 0x7b, 0x84, 0x3d, 0xa6, 0xe3, 0x27, 0xa2, 0x8c, 0x11, 0x89, 0x3d, 0xb9, 0x3d, 0xf5, 0x34, 0x96, 0x88, 0xa0, 0x85, 0xb1, 0x37, 0xb1, 0xea, 0xcf, 0x45, 0x6a, 0x9e, 0x9e, 0x0f, 0x6d, 0x15, 0xec, 0x00, 0x78, 0xca, 0x60, 0xa7, 0xf8, 0x3f, 0x2b, 0x10, 0xd2, 0x13, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11119 = { .name = "ecdsa_secp256r1_sha256_11119", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11119_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11119_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11119_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 240 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11120 for ECDSA, tcId is 241 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11120_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11120_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_11120_sig[] = { 0xb5, 0x16, 0xa3, 0x14, 0xf2, 0xfc, 0xe5, 0x30, 0xd6, 0x53, 0x7f, 0x6a, 0x6c, 0x49, 0x96, 0x6c, 0x23, 0x45, 0x6f, 0x63, 0xc6, 0x43, 0xcf, 0x8e, 0x0d, 0xc7, 0x38, 0xf7, 0xb8, 0x76, 0xe6, 0x75, 0xd3, 0x9f, 0xfd, 0x03, 0x3c, 0x92, 0xb6, 0xd7, 0x17, 0xdd, 0x53, 0x6f, 0xbc, 0x5e, 0xfd, 0xf1, 0x96, 0x7c, 0x4b, 0xd8, 0x09, 0x54, 0x47, 0x9b, 0xa6, 0x6b, 0x01, 0x20, 0xcd, 0x16, 0xff, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11120 = { .name = "ecdsa_secp256r1_sha256_11120", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11120_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11120_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11120_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 241 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11121 for ECDSA, tcId is 242 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11121_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11121_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_11121_sig[] = { 0x3b, 0x2c, 0xbf, 0x04, 0x6e, 0xac, 0x45, 0x84, 0x2e, 0xcb, 0x79, 0x84, 0xd4, 0x75, 0x83, 0x15, 0x82, 0x71, 0x7b, 0xeb, 0xb6, 0x49, 0x2f, 0xd0, 0xa4, 0x85, 0xc1, 0x01, 0xe2, 0x9f, 0xf0, 0xa8, 0x4c, 0x9b, 0x7b, 0x47, 0xa9, 0x8b, 0x0f, 0x82, 0xde, 0x51, 0x2b, 0xc9, 0x31, 0x3a, 0xaf, 0x51, 0x70, 0x10, 0x99, 0xca, 0xc5, 0xf7, 0x6e, 0x68, 0xc8, 0x59, 0x5f, 0xc1, 0xc1, 0xd9, 0x92, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11121 = { .name = "ecdsa_secp256r1_sha256_11121", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11121_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11121_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11121_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 242 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11122 for ECDSA, tcId is 243 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11122_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11122_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_11122_sig[] = { 0x30, 0xc8, 0x7d, 0x35, 0xe6, 0x36, 0xf5, 0x40, 0x84, 0x1f, 0x14, 0xaf, 0x54, 0xe2, 0xf9, 0xed, 0xd7, 0x9d, 0x03, 0x12, 0xcf, 0xa1, 0xab, 0x65, 0x6c, 0x3f, 0xb1, 0x5b, 0xfd, 0xe4, 0x8d, 0xcf, 0x47, 0xc1, 0x5a, 0x5a, 0x82, 0xd2, 0x4b, 0x75, 0xc8, 0x5a, 0x69, 0x2b, 0xd6, 0xec, 0xaf, 0xeb, 0x71, 0x40, 0x9e, 0xde, 0x23, 0xef, 0xd0, 0x8e, 0x0d, 0xb9, 0xab, 0xf6, 0x34, 0x06, 0x77, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11122 = { .name = "ecdsa_secp256r1_sha256_11122", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11122_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11122_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11122_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 243 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11123 for ECDSA, tcId is 244 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11123_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11123_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11123_sig[] = { 0x38, 0x68, 0x6f, 0xf0, 0xfd, 0xa2, 0xce, 0xf6, 0xbc, 0x43, 0xb5, 0x8c, 0xfe, 0x66, 0x47, 0xb9, 0xe2, 0xe8, 0x17, 0x6d, 0x16, 0x8d, 0xec, 0x3c, 0x68, 0xff, 0x26, 0x21, 0x13, 0x76, 0x0f, 0x52, 0x06, 0x7e, 0xc3, 0xb6, 0x51, 0xf4, 0x22, 0x66, 0x96, 0x01, 0x66, 0x21, 0x67, 0xfa, 0x87, 0x17, 0xe9, 0x76, 0xe2, 0xdb, 0x5e, 0x6a, 0x4c, 0xf7, 0xc2, 0xdd, 0xab, 0xb3, 0xfd, 0xe9, 0xd6, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11123 = { .name = "ecdsa_secp256r1_sha256_11123", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11123_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11123_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11123_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 244 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11124 for ECDSA, tcId is 245 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11124_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11124_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_11124_sig[] = { 0x44, 0xa3, 0xe2, 0x3b, 0xf3, 0x14, 0xf2, 0xb3, 0x44, 0xfc, 0x25, 0xc7, 0xf2, 0xde, 0x8b, 0x6a, 0xf3, 0xe1, 0x7d, 0x27, 0xf5, 0xee, 0x84, 0x4b, 0x22, 0x59, 0x85, 0xab, 0x6e, 0x27, 0x75, 0xcf, 0x2d, 0x48, 0xe2, 0x23, 0x20, 0x5e, 0x98, 0x04, 0x1d, 0xdc, 0x87, 0xbe, 0x53, 0x2a, 0xbe, 0xd5, 0x84, 0xf0, 0x41, 0x1f, 0x57, 0x29, 0x50, 0x04, 0x93, 0xc9, 0xcc, 0x3f, 0x4d, 0xd1, 0x5e, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11124 = { .name = "ecdsa_secp256r1_sha256_11124", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11124_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11124_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11124_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 245 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11125 for ECDSA, tcId is 246 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11125_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11125_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11125_sig[] = { 0x2d, 0xed, 0x5b, 0x7e, 0xc8, 0xe9, 0x0e, 0x7b, 0xf1, 0x1f, 0x96, 0x7a, 0x3d, 0x95, 0x11, 0x0c, 0x41, 0xb9, 0x9d, 0xb3, 0xb5, 0xaa, 0x8d, 0x33, 0x0e, 0xb9, 0xd6, 0x38, 0x78, 0x16, 0x88, 0xe9, 0x7d, 0x57, 0x92, 0xc5, 0x36, 0x28, 0x15, 0x5e, 0x1b, 0xfc, 0x46, 0xfb, 0x1a, 0x67, 0xe3, 0x08, 0x8d, 0xe0, 0x49, 0xc3, 0x28, 0xae, 0x1f, 0x44, 0xec, 0x69, 0x23, 0x8a, 0x00, 0x98, 0x08, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11125 = { .name = "ecdsa_secp256r1_sha256_11125", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11125_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11125_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11125_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 246 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11126 for ECDSA, tcId is 247 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11126_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11126_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11126_sig[] = { 0xbd, 0xae, 0x7b, 0xcb, 0x58, 0x0b, 0xf3, 0x35, 0xef, 0xd3, 0xbc, 0x3d, 0x31, 0x87, 0x0f, 0x92, 0x3e, 0xac, 0xca, 0xfc, 0xd4, 0x0e, 0xc2, 0xf6, 0x05, 0x97, 0x6f, 0x15, 0x13, 0x7d, 0x8b, 0x8f, 0xf6, 0xdf, 0xa1, 0x2f, 0x19, 0xe5, 0x25, 0x27, 0x0b, 0x01, 0x06, 0xee, 0xcf, 0xe2, 0x57, 0x49, 0x9f, 0x37, 0x3a, 0x4f, 0xb3, 0x18, 0x99, 0x4f, 0x24, 0x83, 0x81, 0x22, 0xce, 0x7e, 0xc3, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11126 = { .name = "ecdsa_secp256r1_sha256_11126", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11126_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11126_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11126_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 247 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11127 for ECDSA, tcId is 248 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11127_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11127_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11127_sig[] = { 0x50, 0xf9, 0xc4, 0xf0, 0xcd, 0x69, 0x40, 0xe1, 0x62, 0x72, 0x09, 0x57, 0xff, 0xff, 0x51, 0x37, 0x99, 0x20, 0x9b, 0x78, 0x59, 0x69, 0x56, 0xd2, 0x1e, 0xce, 0x25, 0x1c, 0x24, 0x01, 0xf1, 0xc6, 0xd7, 0x03, 0x3a, 0x0a, 0x78, 0x7d, 0x33, 0x8e, 0x88, 0x9d, 0xef, 0xaa, 0xab, 0xb1, 0x06, 0xb9, 0x5a, 0x43, 0x55, 0xe4, 0x11, 0xa5, 0x9c, 0x32, 0xaa, 0x51, 0x67, 0xdf, 0xab, 0x24, 0x47, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11127 = { .name = "ecdsa_secp256r1_sha256_11127", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11127_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11127_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11127_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 248 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11128 for ECDSA, tcId is 249 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11128_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11128_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_11128_sig[] = { 0xf6, 0x12, 0x82, 0x06, 0x87, 0x60, 0x4f, 0xa0, 0x19, 0x06, 0x06, 0x6a, 0x37, 0x8d, 0x67, 0x54, 0x09, 0x82, 0xe2, 0x95, 0x75, 0xd0, 0x19, 0xaa, 0xbe, 0x90, 0x92, 0x4e, 0xad, 0x5c, 0x86, 0x0d, 0x3f, 0x93, 0x67, 0x70, 0x2d, 0xd7, 0xdd, 0x4f, 0x75, 0xea, 0x98, 0xaf, 0xd2, 0x0e, 0x32, 0x8a, 0x1a, 0x99, 0xf4, 0x85, 0x7b, 0x31, 0x65, 0x25, 0x32, 0x82, 0x30, 0xce, 0x29, 0x4b, 0x0f, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11128 = { .name = "ecdsa_secp256r1_sha256_11128", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11128_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11128_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11128_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 249 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11129 for ECDSA, tcId is 250 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11129_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11129_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_11129_sig[] = { 0x95, 0x05, 0xe4, 0x07, 0x65, 0x7d, 0x6e, 0x8b, 0xc9, 0x3d, 0xb5, 0xda, 0x7a, 0xa6, 0xf5, 0x08, 0x1f, 0x61, 0x98, 0x0c, 0x19, 0x49, 0xf5, 0x6b, 0x0f, 0x2f, 0x50, 0x7d, 0xa5, 0x78, 0x2a, 0x7a, 0xc6, 0x0d, 0x31, 0x90, 0x4e, 0x36, 0x69, 0x73, 0x8f, 0xfb, 0xec, 0xca, 0xb6, 0xc3, 0x65, 0x6c, 0x08, 0xe0, 0xed, 0x5c, 0xb9, 0x2b, 0x3c, 0xfa, 0x5e, 0x7f, 0x71, 0x78, 0x4f, 0x9c, 0x50, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11129 = { .name = "ecdsa_secp256r1_sha256_11129", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11129_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11129_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11129_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 250 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11130 for ECDSA, tcId is 251 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11130_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11130_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11130_sig[] = { 0xbb, 0xd1, 0x6f, 0xbb, 0xb6, 0x56, 0xb6, 0xd0, 0xd8, 0x3e, 0x6a, 0x77, 0x87, 0xcd, 0x69, 0x1b, 0x08, 0x73, 0x5a, 0xed, 0x37, 0x17, 0x32, 0x72, 0x3e, 0x1c, 0x68, 0xa4, 0x04, 0x04, 0x51, 0x7d, 0x9d, 0x8e, 0x35, 0xdb, 0xa9, 0x60, 0x28, 0xb7, 0x78, 0x7d, 0x91, 0x31, 0x5b, 0xe6, 0x75, 0x87, 0x7d, 0x2d, 0x09, 0x7b, 0xe5, 0xe8, 0xee, 0x34, 0x56, 0x0e, 0x3e, 0x7f, 0xd2, 0x5c, 0x0f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11130 = { .name = "ecdsa_secp256r1_sha256_11130", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11130_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11130_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11130_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 251 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11131 for ECDSA, tcId is 252 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11131_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11131_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11131_sig[] = { 0x2e, 0xc9, 0x76, 0x01, 0x22, 0xdb, 0x98, 0xfd, 0x06, 0xea, 0x76, 0x84, 0x8d, 0x35, 0xa6, 0xda, 0x44, 0x2d, 0x2c, 0xee, 0xf7, 0x55, 0x9a, 0x30, 0xcf, 0x57, 0xc6, 0x1e, 0x92, 0xdf, 0x32, 0x7e, 0x7a, 0xb2, 0x71, 0xda, 0x90, 0x85, 0x94, 0x79, 0x70, 0x1f, 0xcc, 0xf8, 0x6e, 0x46, 0x2e, 0xe3, 0x39, 0x3f, 0xb6, 0x81, 0x4c, 0x27, 0xb7, 0x60, 0xc4, 0x96, 0x36, 0x25, 0xc0, 0xa1, 0x98, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11131 = { .name = "ecdsa_secp256r1_sha256_11131", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11131_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11131_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11131_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 252 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11132 for ECDSA, tcId is 253 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11132_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11132_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11132_sig[] = { 0x54, 0xe7, 0x6b, 0x76, 0x83, 0xb6, 0x65, 0x0b, 0xaa, 0x6a, 0x7f, 0xc4, 0x9b, 0x1c, 0x51, 0xee, 0xd9, 0xba, 0x9d, 0xd4, 0x63, 0x22, 0x1f, 0x7a, 0x4f, 0x10, 0x05, 0xa8, 0x9f, 0xe0, 0x0c, 0x59, 0x2e, 0xa0, 0x76, 0x88, 0x6c, 0x77, 0x3e, 0xb9, 0x37, 0xec, 0x1c, 0xc8, 0x37, 0x4b, 0x79, 0x15, 0xcf, 0xd1, 0x1b, 0x1c, 0x1a, 0xe1, 0x16, 0x61, 0x52, 0xf2, 0xf7, 0x80, 0x6a, 0x31, 0xc8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11132 = { .name = "ecdsa_secp256r1_sha256_11132", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11132_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11132_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11132_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 253 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11133 for ECDSA, tcId is 254 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11133_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11133_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11133_sig[] = { 0x52, 0x91, 0xde, 0xaf, 0x24, 0x65, 0x9f, 0xfb, 0xbc, 0xe6, 0xe3, 0xc2, 0x6f, 0x60, 0x21, 0x09, 0x7a, 0x74, 0xab, 0xdb, 0xb6, 0x9b, 0xe4, 0xfb, 0x10, 0x41, 0x9c, 0x0c, 0x49, 0x6c, 0x94, 0x66, 0x65, 0xd6, 0xfc, 0xf3, 0x36, 0xd2, 0x7c, 0xc7, 0xcd, 0xb9, 0x82, 0xbb, 0x4e, 0x4e, 0xce, 0xf5, 0x82, 0x7f, 0x84, 0x74, 0x2f, 0x29, 0xf1, 0x0a, 0xbf, 0x83, 0x46, 0x92, 0x70, 0xa0, 0x3d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11133 = { .name = "ecdsa_secp256r1_sha256_11133", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11133_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11133_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11133_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 254 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11134 for ECDSA, tcId is 255 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11134_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11134_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11134_sig[] = { 0x20, 0x7a, 0x32, 0x41, 0x81, 0x2d, 0x75, 0xd9, 0x47, 0x41, 0x9d, 0xc5, 0x8e, 0xfb, 0x05, 0xe8, 0x00, 0x3b, 0x33, 0xfc, 0x17, 0xeb, 0x50, 0xf9, 0xd1, 0x51, 0x66, 0xa8, 0x84, 0x79, 0xf1, 0x07, 0xcd, 0xee, 0x74, 0x9f, 0x2e, 0x49, 0x2b, 0x21, 0x3c, 0xe8, 0x0b, 0x32, 0xd0, 0x57, 0x4f, 0x62, 0xf1, 0xc5, 0xd7, 0x07, 0x93, 0xcf, 0x55, 0xe3, 0x82, 0xd5, 0xca, 0xad, 0xf7, 0x59, 0x27, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11134 = { .name = "ecdsa_secp256r1_sha256_11134", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11134_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11134_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11134_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 255 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11135 for ECDSA, tcId is 256 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11135_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11135_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11135_sig[] = { 0x65, 0x54, 0xe4, 0x9f, 0x82, 0xa8, 0x55, 0x20, 0x43, 0x28, 0xac, 0x94, 0x91, 0x3b, 0xf0, 0x1b, 0xbe, 0x84, 0x43, 0x7a, 0x35, 0x5a, 0x0a, 0x37, 0xc0, 0xde, 0xe3, 0xcf, 0x81, 0xaa, 0x77, 0x28, 0xae, 0xa0, 0x0d, 0xe2, 0x50, 0x7d, 0xda, 0xf5, 0xc9, 0x4e, 0x1e, 0x12, 0x69, 0x80, 0xd3, 0xdf, 0x16, 0x25, 0x0a, 0x2e, 0xae, 0xbc, 0x8b, 0xe4, 0x86, 0xef, 0xfe, 0x7f, 0x22, 0xb4, 0xf9, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11135 = { .name = "ecdsa_secp256r1_sha256_11135", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11135_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11135_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11135_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 256 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11136 for ECDSA, tcId is 257 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11136_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11136_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11136_sig[] = { 0xa5, 0x4c, 0x50, 0x62, 0x64, 0x83, 0x39, 0xd2, 0xbf, 0xf0, 0x6f, 0x71, 0xc8, 0x82, 0x16, 0xc2, 0x6c, 0x6e, 0x19, 0xb4, 0xd8, 0x0a, 0x8c, 0x60, 0x29, 0x90, 0xac, 0x82, 0x70, 0x7e, 0xfd, 0xfc, 0xe9, 0x9b, 0xbe, 0x7f, 0xcf, 0xaf, 0xae, 0x3e, 0x69, 0xfd, 0x01, 0x67, 0x77, 0x51, 0x7a, 0xa0, 0x10, 0x56, 0x31, 0x7f, 0x46, 0x7a, 0xd0, 0x9a, 0xff, 0x09, 0xbe, 0x73, 0xc9, 0x73, 0x1b, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11136 = { .name = "ecdsa_secp256r1_sha256_11136", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11136_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11136_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11136_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 257 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11137 for ECDSA, tcId is 258 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11137_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11137_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_11137_sig[] = { 0x97, 0x5b, 0xd7, 0x15, 0x7a, 0x8d, 0x36, 0x3b, 0x30, 0x9f, 0x1f, 0x44, 0x40, 0x12, 0xb1, 0xa1, 0xd2, 0x30, 0x96, 0x59, 0x31, 0x33, 0xe7, 0x1b, 0x4c, 0xa8, 0xb0, 0x59, 0xcf, 0xf3, 0x7e, 0xaf, 0x7f, 0xaa, 0x7a, 0x28, 0xb1, 0xc8, 0x22, 0xba, 0xa2, 0x41, 0x79, 0x3f, 0x2a, 0xbc, 0x93, 0x0b, 0xd4, 0xc6, 0x98, 0x40, 0xfe, 0x09, 0x0f, 0x2a, 0xac, 0xc4, 0x67, 0x86, 0xbf, 0x91, 0x96, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11137 = { .name = "ecdsa_secp256r1_sha256_11137", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11137_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11137_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11137_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 258 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11138 for ECDSA, tcId is 259 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11138_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11138_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_11138_sig[] = { 0x56, 0x94, 0xa6, 0xf8, 0x4b, 0x8f, 0x87, 0x5c, 0x27, 0x6a, 0xfd, 0x2e, 0xbc, 0xfe, 0x4d, 0x61, 0xde, 0x9e, 0xc9, 0x03, 0x05, 0xaf, 0xb1, 0x35, 0x7b, 0x95, 0xb3, 0xe0, 0xda, 0x43, 0x88, 0x5e, 0x0d, 0xff, 0xad, 0x9f, 0xfd, 0x0b, 0x75, 0x7d, 0x80, 0x51, 0xde, 0xc0, 0x2e, 0xbd, 0xf7, 0x0d, 0x8e, 0xe2, 0xdc, 0x5c, 0x78, 0x70, 0xc0, 0x82, 0x3b, 0x6c, 0xcc, 0x7c, 0x67, 0x9c, 0xba, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11138 = { .name = "ecdsa_secp256r1_sha256_11138", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11138_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11138_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11138_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 259 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11139 for ECDSA, tcId is 260 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11139_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11139_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11139_sig[] = { 0xa0, 0xc3, 0x0e, 0x80, 0x26, 0xfd, 0xb2, 0xb4, 0xb4, 0x96, 0x8a, 0x27, 0xd1, 0x6a, 0x6d, 0x08, 0xf7, 0x09, 0x8f, 0x1a, 0x98, 0xd2, 0x16, 0x20, 0xd7, 0x45, 0x4b, 0xa9, 0x79, 0x0f, 0x1b, 0xa6, 0x5e, 0x47, 0x04, 0x53, 0xa8, 0xa3, 0x99, 0xf1, 0x5b, 0xaf, 0x46, 0x3f, 0x9d, 0xec, 0xeb, 0x53, 0xac, 0xc5, 0xca, 0x64, 0x45, 0x91, 0x49, 0x68, 0x8b, 0xd2, 0x76, 0x0c, 0x65, 0x42, 0x43, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11139 = { .name = "ecdsa_secp256r1_sha256_11139", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11139_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11139_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11139_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 260 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11140 for ECDSA, tcId is 261 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11140_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11140_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_11140_sig[] = { 0x61, 0x4e, 0xa8, 0x4a, 0xcf, 0x73, 0x65, 0x27, 0xdd, 0x73, 0x60, 0x2c, 0xd4, 0xbb, 0x4e, 0xea, 0x1d, 0xfe, 0xbe, 0xbd, 0x5a, 0xd8, 0xac, 0xa5, 0x2a, 0xa0, 0x22, 0x8c, 0xf7, 0xb9, 0x9a, 0x88, 0x73, 0x7c, 0xc8, 0x5f, 0x5f, 0x2d, 0x2f, 0x60, 0xd1, 0xb8, 0x18, 0x3f, 0x3e, 0xd4, 0x90, 0xe4, 0xde, 0x14, 0x36, 0x8e, 0x96, 0xa9, 0x48, 0x2c, 0x2a, 0x4d, 0xd1, 0x93, 0x19, 0x5c, 0x90, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11140 = { .name = "ecdsa_secp256r1_sha256_11140", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11140_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11140_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11140_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 261 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11141 for ECDSA, tcId is 262 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11141_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11141_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_11141_sig[] = { 0xbe, 0xad, 0x67, 0x34, 0xeb, 0xe4, 0x4b, 0x81, 0x0d, 0x3f, 0xb2, 0xea, 0x00, 0xb1, 0x73, 0x29, 0x45, 0x37, 0x73, 0x38, 0xfe, 0xbf, 0xd4, 0x39, 0xa8, 0xd7, 0x4d, 0xfb, 0xd0, 0xf9, 0x42, 0xfa, 0x6b, 0xb1, 0x8e, 0xae, 0x36, 0x61, 0x6a, 0x7d, 0x3c, 0xad, 0x35, 0x91, 0x9f, 0xd2, 0x1a, 0x8a, 0xf4, 0xbb, 0xe7, 0xa1, 0x0f, 0x73, 0xb3, 0xe0, 0x36, 0xa4, 0x6b, 0x10, 0x3e, 0xf5, 0x6e, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11141 = { .name = "ecdsa_secp256r1_sha256_11141", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11141_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11141_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11141_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 262 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11142 for ECDSA, tcId is 263 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11142_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11142_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_11142_sig[] = { 0x49, 0x96, 0x25, 0x47, 0x9e, 0x16, 0x1d, 0xac, 0xd4, 0xdb, 0x9d, 0x9c, 0xe6, 0x48, 0x54, 0xc9, 0x8d, 0x92, 0x2c, 0xbf, 0x21, 0x27, 0x03, 0xe9, 0x65, 0x4f, 0xae, 0x18, 0x2d, 0xf9, 0xba, 0xd2, 0x42, 0xc1, 0x77, 0xcf, 0x37, 0xb8, 0x19, 0x3a, 0x01, 0x31, 0x10, 0x8d, 0x97, 0x81, 0x9e, 0xdd, 0x94, 0x39, 0x93, 0x60, 0x28, 0x86, 0x4a, 0xc1, 0x95, 0xb6, 0x4f, 0xca, 0x76, 0xd9, 0xd6, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11142 = { .name = "ecdsa_secp256r1_sha256_11142", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11142_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11142_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11142_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 263 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11143 for ECDSA, tcId is 264 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11143_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11143_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_11143_sig[] = { 0x08, 0xf1, 0x6b, 0x80, 0x93, 0xa8, 0xfb, 0x4d, 0x66, 0xa2, 0xc8, 0x06, 0x5b, 0x54, 0x1b, 0x3d, 0x31, 0xe3, 0xbf, 0xe6, 0x94, 0xf6, 0xb8, 0x9c, 0x50, 0xfb, 0x1a, 0xaa, 0x6f, 0xf6, 0xc9, 0xb2, 0x9d, 0x64, 0x55, 0xe2, 0xd5, 0xd1, 0x77, 0x97, 0x48, 0x57, 0x3b, 0x61, 0x1c, 0xb9, 0x5d, 0x4a, 0x21, 0xf9, 0x67, 0x41, 0x03, 0x99, 0xb3, 0x9b, 0x53, 0x5b, 0xa3, 0xe5, 0xaf, 0x81, 0xca, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11143 = { .name = "ecdsa_secp256r1_sha256_11143", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11143_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11143_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11143_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 264 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11144 for ECDSA, tcId is 265 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11144_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11144_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11144_sig[] = { 0xbe, 0x26, 0x23, 0x1b, 0x61, 0x91, 0x65, 0x8a, 0x19, 0xdd, 0x72, 0xdd, 0xb9, 0x9e, 0xd8, 0xf8, 0xc5, 0x79, 0xb6, 0x93, 0x8d, 0x19, 0xbc, 0xe8, 0xee, 0xd8, 0xdc, 0x2b, 0x33, 0x8c, 0xb5, 0xf8, 0xe1, 0xd9, 0xa3, 0x2e, 0xe5, 0x6c, 0xff, 0xed, 0x37, 0xf0, 0xf2, 0x2b, 0x2d, 0xcb, 0x57, 0xd5, 0xc9, 0x43, 0xc1, 0x4f, 0x79, 0x69, 0x4a, 0x03, 0xb9, 0xc5, 0xe9, 0x69, 0x52, 0x57, 0x5c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11144 = { .name = "ecdsa_secp256r1_sha256_11144", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11144_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11144_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11144_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 265 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11145 for ECDSA, tcId is 266 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11145_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11145_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11145_sig[] = { 0x15, 0xe7, 0x68, 0x80, 0x89, 0x83, 0x16, 0xb1, 0x62, 0x04, 0xac, 0x92, 0x0a, 0x02, 0xd5, 0x80, 0x45, 0xf3, 0x6a, 0x22, 0x9d, 0x4a, 0xa4, 0xf8, 0x12, 0x63, 0x8c, 0x45, 0x5a, 0xbe, 0x04, 0x43, 0xe7, 0x4d, 0x35, 0x7d, 0x3f, 0xcb, 0x5c, 0x8c, 0x53, 0x37, 0xbd, 0x6a, 0xba, 0x41, 0x78, 0xb4, 0x55, 0xca, 0x10, 0xe2, 0x26, 0xe1, 0x3f, 0x96, 0x38, 0x19, 0x65, 0x06, 0xa1, 0x93, 0x91, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11145 = { .name = "ecdsa_secp256r1_sha256_11145", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11145_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11145_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11145_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 266 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11146 for ECDSA, tcId is 267 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11146_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11146_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11146_sig[] = { 0x35, 0x2e, 0xcb, 0x53, 0xf8, 0xdf, 0x2c, 0x50, 0x3a, 0x45, 0xf9, 0x84, 0x6f, 0xc2, 0x8d, 0x1d, 0x31, 0xe6, 0x30, 0x7d, 0x3d, 0xdb, 0xff, 0xc1, 0x13, 0x23, 0x15, 0xcc, 0x07, 0xf1, 0x6d, 0xad, 0x13, 0x48, 0xdf, 0xa9, 0xc4, 0x82, 0xc5, 0x58, 0xe1, 0xd0, 0x5c, 0x52, 0x42, 0xca, 0x1c, 0x39, 0x43, 0x67, 0x26, 0xec, 0xd2, 0x82, 0x58, 0xb1, 0x89, 0x97, 0x92, 0x88, 0x7d, 0xd0, 0xa3, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11146 = { .name = "ecdsa_secp256r1_sha256_11146", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11146_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11146_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11146_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 267 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11147 for ECDSA, tcId is 268 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11147_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11147_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_11147_sig[] = { 0x4a, 0x40, 0x80, 0x1a, 0x7e, 0x60, 0x6b, 0xa7, 0x8a, 0x0d, 0xa9, 0x88, 0x2a, 0xb2, 0x3c, 0x76, 0x77, 0xb8, 0x64, 0x23, 0x49, 0xed, 0x3d, 0x65, 0x2c, 0x5b, 0xfa, 0x5f, 0x2a, 0x95, 0x58, 0xfb, 0x3a, 0x49, 0xb6, 0x48, 0x48, 0xd6, 0x82, 0xef, 0x7f, 0x60, 0x5f, 0x28, 0x32, 0xf7, 0x38, 0x4b, 0xdc, 0x24, 0xed, 0x29, 0x25, 0x82, 0x5b, 0xf8, 0xea, 0x77, 0xdc, 0x59, 0x81, 0x72, 0x57, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11147 = { .name = "ecdsa_secp256r1_sha256_11147", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11147_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11147_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11147_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 268 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11148 for ECDSA, tcId is 269 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11148_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11148_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_11148_sig[] = { 0xea, 0xcc, 0x5e, 0x1a, 0x83, 0x04, 0xa7, 0x4d, 0x2b, 0xe4, 0x12, 0xb0, 0x78, 0x92, 0x4b, 0x3b, 0xb3, 0x51, 0x1b, 0xac, 0x85, 0x5c, 0x05, 0xc9, 0xe5, 0xe9, 0xe4, 0x4d, 0xf3, 0xd6, 0x1e, 0x96, 0x74, 0x51, 0xcd, 0x8e, 0x18, 0xd6, 0xed, 0x18, 0x85, 0xdd, 0x82, 0x77, 0x14, 0x84, 0x7f, 0x96, 0xec, 0x4b, 0xb0, 0xed, 0x4c, 0x36, 0xce, 0x98, 0x08, 0xdb, 0x8f, 0x71, 0x42, 0x04, 0xf6, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11148 = { .name = "ecdsa_secp256r1_sha256_11148", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11148_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11148_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11148_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 269 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11149 for ECDSA, tcId is 270 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11149_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11149_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11149_sig[] = { 0x2f, 0x7a, 0x5e, 0x9e, 0x57, 0x71, 0xd4, 0x24, 0xf3, 0x0f, 0x67, 0xfd, 0xab, 0x61, 0xe8, 0xce, 0x4f, 0x8c, 0xd1, 0x21, 0x48, 0x82, 0xad, 0xb6, 0x5f, 0x7d, 0xe9, 0x4c, 0x31, 0x57, 0x70, 0x52, 0xac, 0x4e, 0x69, 0x80, 0x83, 0x45, 0x80, 0x9b, 0x44, 0xac, 0xb0, 0xb2, 0xbd, 0x88, 0x91, 0x75, 0xfb, 0x75, 0xdd, 0x05, 0x0c, 0x5a, 0x44, 0x9a, 0xb9, 0x52, 0x8f, 0x8f, 0x78, 0xda, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11149 = { .name = "ecdsa_secp256r1_sha256_11149", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11149_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11149_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11149_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 270 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11150 for ECDSA, tcId is 271 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11150_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11150_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11150_sig[] = { 0xff, 0xcd, 0xa4, 0x0f, 0x79, 0x2c, 0xe4, 0xd9, 0x3e, 0x7e, 0x0f, 0x0e, 0x95, 0xe1, 0xa2, 0x14, 0x7d, 0xdd, 0xd7, 0xf6, 0x48, 0x76, 0x21, 0xc3, 0x0a, 0x03, 0xd7, 0x10, 0xb3, 0x30, 0x02, 0x19, 0x79, 0x93, 0x8b, 0x55, 0xf8, 0xa1, 0x7f, 0x7e, 0xd7, 0xba, 0x9a, 0xde, 0x8f, 0x20, 0x65, 0xa1, 0xfa, 0x77, 0x61, 0x8f, 0x0b, 0x67, 0xad, 0xd8, 0xd5, 0x8c, 0x42, 0x2c, 0x24, 0x53, 0xa4, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11150 = { .name = "ecdsa_secp256r1_sha256_11150", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11150_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11150_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11150_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 271 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11151 for ECDSA, tcId is 272 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11151_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11151_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11151_sig[] = { 0x81, 0xf2, 0x35, 0x9c, 0x4f, 0xab, 0xa6, 0xb5, 0x3d, 0x3e, 0x8c, 0x8c, 0x3f, 0xcc, 0x16, 0xa9, 0x48, 0x35, 0x0f, 0x7a, 0xb3, 0xa5, 0x88, 0xb2, 0x8c, 0x17, 0x60, 0x3a, 0x43, 0x1e, 0x39, 0xa8, 0xcd, 0x6f, 0x6a, 0x5c, 0xc3, 0xb5, 0x5e, 0xad, 0x0f, 0xf6, 0x95, 0xd0, 0x6c, 0x68, 0x60, 0xb5, 0x09, 0xe4, 0x6d, 0x99, 0xfc, 0xce, 0xfb, 0x9f, 0x7f, 0x9e, 0x10, 0x18, 0x57, 0xf7, 0x43, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11151 = { .name = "ecdsa_secp256r1_sha256_11151", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11151_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11151_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11151_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 272 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11152 for ECDSA, tcId is 273 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11152_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11152_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11152_sig[] = { 0xdf, 0xc8, 0xbf, 0x52, 0x04, 0x45, 0xcb, 0xb8, 0xee, 0x15, 0x96, 0xfb, 0x07, 0x3e, 0xa2, 0x83, 0xea, 0x13, 0x02, 0x51, 0xa6, 0xfd, 0xff, 0xa5, 0xc3, 0xf5, 0xf2, 0xaa, 0xf7, 0x5c, 0xa8, 0x08, 0x04, 0x8e, 0x33, 0xef, 0xce, 0x14, 0x7c, 0x9d, 0xd9, 0x28, 0x23, 0x64, 0x0e, 0x33, 0x8e, 0x68, 0xbf, 0xd7, 0xd0, 0xdc, 0x7a, 0x49, 0x05, 0xb3, 0xa7, 0xac, 0x71, 0x1e, 0x57, 0x7e, 0x90, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11152 = { .name = "ecdsa_secp256r1_sha256_11152", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11152_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11152_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_11152_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 273 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11153 for ECDSA, tcId is 274 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11153_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11153_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11153_sig[] = { 0xad, 0x01, 0x9f, 0x74, 0xc6, 0x94, 0x1d, 0x20, 0xef, 0xda, 0x70, 0xb4, 0x6c, 0x53, 0xdb, 0x16, 0x65, 0x03, 0xa0, 0xe3, 0x93, 0xe9, 0x32, 0xf6, 0x88, 0x22, 0x76, 0x88, 0xba, 0x6a, 0x57, 0x62, 0x93, 0x32, 0x0e, 0xb7, 0xca, 0x07, 0x10, 0x25, 0x53, 0x46, 0xbd, 0xbb, 0x31, 0x02, 0xcd, 0xcf, 0x79, 0x64, 0xef, 0x2e, 0x09, 0x88, 0xe7, 0x12, 0xbc, 0x05, 0xef, 0xe1, 0x6c, 0x19, 0x93, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11153 = { .name = "ecdsa_secp256r1_sha256_11153", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11153_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11153_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha256_11153_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 274 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11154 for ECDSA, tcId is 275 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11154_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11154_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11154_sig[] = { 0xac, 0x80, 0x96, 0x84, 0x2e, 0x8a, 0xdd, 0x68, 0xc3, 0x4e, 0x78, 0xce, 0x11, 0xdd, 0x71, 0xe4, 0xb5, 0x43, 0x16, 0xbd, 0x3e, 0xbf, 0x7f, 0xff, 0xde, 0xb7, 0xbd, 0x5a, 0x3e, 0xbc, 0x18, 0x83, 0xf5, 0xca, 0x2f, 0x4f, 0x23, 0xd6, 0x74, 0x50, 0x2d, 0x4c, 0xaf, 0x85, 0xd1, 0x87, 0x21, 0x5d, 0x36, 0xe3, 0xce, 0x9f, 0x0c, 0xe2, 0x19, 0x70, 0x9f, 0x21, 0xa3, 0xaa, 0xc0, 0x03, 0xb7, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11154 = { .name = "ecdsa_secp256r1_sha256_11154", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11154_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11154_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11154_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 275 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11155 for ECDSA, tcId is 276 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11155_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11155_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11155_sig[] = { 0x67, 0x7b, 0x2d, 0x3a, 0x59, 0xb1, 0x8a, 0x5f, 0xf9, 0x39, 0xb7, 0x0e, 0xa0, 0x02, 0x25, 0x08, 0x89, 0xdd, 0xcd, 0x7b, 0x7b, 0x9d, 0x77, 0x68, 0x54, 0xb4, 0x94, 0x36, 0x93, 0xfb, 0x92, 0xf7, 0x6b, 0x4b, 0xa8, 0x56, 0xad, 0xe7, 0x67, 0x7b, 0xf3, 0x03, 0x07, 0xb2, 0x1f, 0x3c, 0xcd, 0xa3, 0x5d, 0x2f, 0x63, 0xae, 0xe8, 0x1e, 0xfd, 0x0b, 0xab, 0x69, 0x72, 0xcc, 0x07, 0x95, 0xdb, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11155 = { .name = "ecdsa_secp256r1_sha256_11155", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11155_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11155_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11155_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 276 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11156 for ECDSA, tcId is 277 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11156_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11156_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_11156_sig[] = { 0x47, 0x9e, 0x1d, 0xed, 0x14, 0xbc, 0xae, 0xd0, 0x37, 0x9b, 0xa8, 0xe1, 0xb7, 0x3d, 0x31, 0x15, 0xd8, 0x4d, 0x31, 0xd4, 0xb7, 0xc3, 0x0e, 0x1f, 0x05, 0xe1, 0xfc, 0x0d, 0x59, 0x57, 0xcf, 0xb0, 0x91, 0x8f, 0x79, 0xe3, 0x5b, 0x3d, 0x89, 0x48, 0x7c, 0xf6, 0x34, 0xa4, 0xf0, 0x5b, 0x2e, 0x0c, 0x30, 0x85, 0x7c, 0xa8, 0x79, 0xf9, 0x7c, 0x77, 0x1e, 0x87, 0x70, 0x27, 0x35, 0x5b, 0x24, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11156 = { .name = "ecdsa_secp256r1_sha256_11156", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11156_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11156_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11156_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 277 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11157 for ECDSA, tcId is 278 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11157_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11157_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11157_sig[] = { 0x43, 0xdf, 0xcc, 0xd0, 0xed, 0xb9, 0xe2, 0x80, 0xd9, 0xa5, 0x8f, 0x01, 0x16, 0x4d, 0x55, 0xc3, 0xd7, 0x11, 0xe1, 0x4b, 0x12, 0xac, 0x5c, 0xf3, 0xb6, 0x48, 0x40, 0xea, 0xd5, 0x12, 0xa0, 0xa3, 0x1d, 0xbe, 0x33, 0xfa, 0x8b, 0xa8, 0x45, 0x33, 0xcd, 0x5c, 0x49, 0x34, 0x36, 0x5b, 0x34, 0x42, 0xca, 0x11, 0x74, 0x89, 0x9b, 0x78, 0xef, 0x9a, 0x31, 0x99, 0xf4, 0x95, 0x84, 0x38, 0x97, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11157 = { .name = "ecdsa_secp256r1_sha256_11157", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11157_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11157_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11157_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 278 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11158 for ECDSA, tcId is 279 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11158_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11158_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11158_sig[] = { 0x5b, 0x09, 0xab, 0x63, 0x7b, 0xd4, 0xca, 0xf0, 0xf4, 0xc7, 0xc7, 0xe4, 0xbc, 0xa5, 0x92, 0xfe, 0xa2, 0x0e, 0x90, 0x87, 0xc2, 0x59, 0xd2, 0x6a, 0x38, 0xbb, 0x40, 0x85, 0xf0, 0xbb, 0xff, 0x11, 0x45, 0xb7, 0xeb, 0x46, 0x7b, 0x67, 0x48, 0xaf, 0x61, 0x8e, 0x9d, 0x80, 0xd6, 0xfd, 0xcd, 0x6a, 0xa2, 0x49, 0x64, 0xe5, 0xa1, 0x3f, 0x88, 0x5b, 0xca, 0x81, 0x01, 0xde, 0x08, 0xeb, 0x0d, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11158 = { .name = "ecdsa_secp256r1_sha256_11158", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11158_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11158_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11158_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 279 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11159 for ECDSA, tcId is 280 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11159_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11159_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11159_sig[] = { 0x5e, 0x9b, 0x1c, 0x5a, 0x02, 0x80, 0x70, 0xdf, 0x57, 0x28, 0xc5, 0xc8, 0xaf, 0x9b, 0x74, 0xe0, 0x66, 0x7a, 0xfa, 0x57, 0x0a, 0x6c, 0xfa, 0x01, 0x14, 0xa5, 0x03, 0x9e, 0xd1, 0x5e, 0xe0, 0x6f, 0xb1, 0x36, 0x09, 0x07, 0xe2, 0xd9, 0x78, 0x5e, 0xad, 0x36, 0x2b, 0xb8, 0xd7, 0xbd, 0x66, 0x1b, 0x6c, 0x29, 0xee, 0xff, 0xd3, 0xc5, 0x03, 0x77, 0x44, 0xed, 0xae, 0xb9, 0xad, 0x99, 0x0c, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11159 = { .name = "ecdsa_secp256r1_sha256_11159", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11159_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11159_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11159_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 280 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11160 for ECDSA, tcId is 281 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11160_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11160_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_11160_sig[] = { 0x06, 0x71, 0xa0, 0xa8, 0x5c, 0x2b, 0x72, 0xd5, 0x4a, 0x2f, 0xb0, 0x99, 0x0e, 0x34, 0x53, 0x8b, 0x48, 0x90, 0x05, 0x0f, 0x5a, 0x57, 0x12, 0xf6, 0xd1, 0xa7, 0xa5, 0xfb, 0x85, 0x78, 0xf3, 0x2e, 0xdb, 0x18, 0x46, 0xba, 0xb6, 0xb7, 0x36, 0x14, 0x79, 0xab, 0x9c, 0x32, 0x85, 0xca, 0x41, 0x29, 0x18, 0x08, 0xf2, 0x7f, 0xd5, 0xbd, 0x4f, 0xda, 0xc7, 0x20, 0xe5, 0x85, 0x47, 0x13, 0x69, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11160 = { .name = "ecdsa_secp256r1_sha256_11160", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11160_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11160_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11160_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 281 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11161 for ECDSA, tcId is 282 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11161_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11161_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11161_sig[] = { 0x76, 0x73, 0xf8, 0x52, 0x67, 0x48, 0x44, 0x64, 0x77, 0xdb, 0xbb, 0x05, 0x90, 0xa4, 0x54, 0x92, 0xc5, 0xd7, 0xd6, 0x98, 0x59, 0xd3, 0x01, 0xab, 0xba, 0xed, 0xb3, 0x5b, 0x20, 0x95, 0x10, 0x3a, 0x3d, 0xc7, 0x0d, 0xdf, 0x9c, 0x6b, 0x52, 0x4d, 0x88, 0x6b, 0xed, 0x9e, 0x6a, 0xf0, 0x2e, 0x0e, 0x4d, 0xec, 0x0d, 0x41, 0x7a, 0x41, 0x4f, 0xed, 0x38, 0x07, 0xef, 0x44, 0x22, 0x91, 0x3d, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11161 = { .name = "ecdsa_secp256r1_sha256_11161", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11161_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11161_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11161_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 282 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11162 for ECDSA, tcId is 283 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11162_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11162_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11162_sig[] = { 0x7f, 0x08, 0x54, 0x41, 0x07, 0x0e, 0xcd, 0x2b, 0xb2, 0x12, 0x85, 0x08, 0x9e, 0xbb, 0x1a, 0xa6, 0x45, 0x0d, 0x1a, 0x06, 0xc3, 0x6d, 0x3f, 0xf3, 0x9d, 0xfd, 0x65, 0x7a, 0x79, 0x6d, 0x12, 0xb5, 0x24, 0x97, 0x12, 0x01, 0x20, 0x29, 0x87, 0x0a, 0x24, 0x59, 0xd1, 0x8d, 0x47, 0xda, 0x9a, 0xa4, 0x92, 0xa5, 0xe6, 0xcb, 0x4b, 0x2d, 0x8d, 0xaf, 0xa9, 0xe4, 0xc5, 0xc5, 0x4a, 0x2b, 0x9a, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11162 = { .name = "ecdsa_secp256r1_sha256_11162", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11162_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11162_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_11162_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 283 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11163 for ECDSA, tcId is 284 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11163_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_11163_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_11163_sig[] = { 0x91, 0x4c, 0x67, 0xfb, 0x61, 0xdd, 0x1e, 0x27, 0xc8, 0x67, 0x39, 0x8e, 0xa7, 0x32, 0x2d, 0x5a, 0xb7, 0x6d, 0xf0, 0x4b, 0xc5, 0xaa, 0x66, 0x83, 0xa8, 0xe0, 0xf3, 0x0a, 0x5d, 0x28, 0x73, 0x48, 0xfa, 0x07, 0x47, 0x40, 0x31, 0x48, 0x1d, 0xda, 0x49, 0x53, 0xe3, 0xac, 0x19, 0x59, 0xee, 0x8c, 0xea, 0x7e, 0x66, 0xec, 0x41, 0x2b, 0x38, 0xd6, 0xc9, 0x6d, 0x28, 0xf6, 0xd3, 0x73, 0x04, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11163 = { .name = "ecdsa_secp256r1_sha256_11163", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11163_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11163_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_11163_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 284 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11164 for ECDSA, tcId is 285 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11164_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11164_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11164_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7d, 0xb3, 0x7c, 0x21, 0xf4, 0xaf, 0xd3, 0x20, 0x3a, 0xe8, 0xdc, 0x4a, 0xe7, 0x79, 0x4b, 0x0f, 0x87, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11164 = { .name = "ecdsa_secp256k1_sha256_11164", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11164_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11164_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11164_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 285 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11165 for ECDSA, tcId is 286 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11165_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11165_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11165_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11165 = { .name = "ecdsa_secp256k1_sha256_11165", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11165_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11165_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11165_sig, .siglen = 64, .result = 0, .comment = "Legacy:ASN encoding of r misses leading 0, tcId is 286 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11166 for ECDSA, tcId is 287 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11166_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11166_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11166_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11166 = { .name = "ecdsa_secp256k1_sha256_11166", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11166_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11166_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11166_sig, .siglen = 64, .result = 1, .comment = "valid, tcId is 287 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11167 for ECDSA, tcId is 288 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11167_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11167_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11167_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11167 = { .name = "ecdsa_secp256k1_sha256_11167", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11167_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11167_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11167_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 288 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11168 for ECDSA, tcId is 289 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11168_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11168_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11168_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11168 = { .name = "ecdsa_secp256k1_sha256_11168", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11168_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11168_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11168_sig, .siglen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 289 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11169 for ECDSA, tcId is 352 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11169_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11169_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11169_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11169 = { .name = "ecdsa_secp256k1_sha256_11169", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11169_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11169_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11169_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 352 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11170 for ECDSA, tcId is 353 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11170_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11170_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11170_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11170 = { .name = "ecdsa_secp256k1_sha256_11170", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11170_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11170_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11170_sig, .siglen = 64, .result = 0, .comment = "long form encoding of length of integer, tcId is 353 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11171 for ECDSA, tcId is 354 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11171_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11171_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11171_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11171 = { .name = "ecdsa_secp256k1_sha256_11171", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11171_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11171_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11171_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 354 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11172 for ECDSA, tcId is 355 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11172_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11172_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11172_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11172 = { .name = "ecdsa_secp256k1_sha256_11172", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11172_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11172_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11172_sig, .siglen = 64, .result = 0, .comment = "length of integer contains leading 0, tcId is 355 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11173 for ECDSA, tcId is 377 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11173_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11173_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11173_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11173 = { .name = "ecdsa_secp256k1_sha256_11173", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11173_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11173_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11173_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 377 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11174 for ECDSA, tcId is 378 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11174_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11174_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11174_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11174 = { .name = "ecdsa_secp256k1_sha256_11174", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11174_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11174_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11174_sig, .siglen = 66, .result = -1, .comment = "appending 0's to integer, tcId is 378 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11175 for ECDSA, tcId is 379 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11175_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11175_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11175_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11175 = { .name = "ecdsa_secp256k1_sha256_11175", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11175_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11175_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11175_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 379 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11176 for ECDSA, tcId is 380 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11176_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11176_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11176_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11176 = { .name = "ecdsa_secp256k1_sha256_11176", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11176_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11176_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11176_sig, .siglen = 64, .result = 0, .comment = "prepending 0's to integer, tcId is 380 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11177 for ECDSA, tcId is 382 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11177_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11177_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11177_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x05, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11177 = { .name = "ecdsa_secp256k1_sha256_11177", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11177_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11177_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11177_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 382 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11178 for ECDSA, tcId is 383 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11178_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11178_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11178_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, 0x05, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11178 = { .name = "ecdsa_secp256k1_sha256_11178", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11178_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11178_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11178_sig, .siglen = 66, .result = -1, .comment = "appending null value to integer, tcId is 383 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11179 for ECDSA, tcId is 398 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11179_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11179_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11179_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11179 = { .name = "ecdsa_secp256k1_sha256_11179", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11179_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11179_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11179_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 398 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11180 for ECDSA, tcId is 399 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11180_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11180_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11180_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11180 = { .name = "ecdsa_secp256k1_sha256_11180", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11180_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11180_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11180_sig, .siglen = 64, .result = -1, .comment = "dropping value of integer, tcId is 399 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11181 for ECDSA, tcId is 402 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11181_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11181_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11181_sig[] = { 0x02, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11181 = { .name = "ecdsa_secp256k1_sha256_11181", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11181_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11181_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11181_sig, .siglen = 65, .result = -1, .comment = "modify first byte of integer, tcId is 402 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11182 for ECDSA, tcId is 403 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11182_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11182_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11182_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6d, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11182 = { .name = "ecdsa_secp256k1_sha256_11182", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11182_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11182_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11182_sig, .siglen = 64, .result = -1, .comment = "modify first byte of integer, tcId is 403 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11183 for ECDSA, tcId is 404 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11183_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11183_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11183_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0xe5, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11183 = { .name = "ecdsa_secp256k1_sha256_11183", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11183_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11183_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11183_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 404 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11184 for ECDSA, tcId is 405 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11184_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11184_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11184_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11184 = { .name = "ecdsa_secp256k1_sha256_11184", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11184_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11184_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11184_sig, .siglen = 64, .result = -1, .comment = "modify last byte of integer, tcId is 405 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11185 for ECDSA, tcId is 406 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11185_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11185_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11185_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11185 = { .name = "ecdsa_secp256k1_sha256_11185", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11185_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11185_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11185_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 406 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11186 for ECDSA, tcId is 407 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11186_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11186_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11186_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11186 = { .name = "ecdsa_secp256k1_sha256_11186", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11186_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11186_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11186_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 407 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11187 for ECDSA, tcId is 408 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11187_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11187_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11187_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11187 = { .name = "ecdsa_secp256k1_sha256_11187", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11187_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11187_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11187_sig, .siglen = 64, .result = -1, .comment = "truncated integer, tcId is 408 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11188 for ECDSA, tcId is 409 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11188_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11188_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11188_sig[] = { 0x00, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11188 = { .name = "ecdsa_secp256k1_sha256_11188", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11188_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11188_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11188_sig, .siglen = 65, .result = 0, .comment = "leading ff in integer, tcId is 409 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11189 for ECDSA, tcId is 410 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser] */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11189_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11189_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11189_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11189 = { .name = "ecdsa_secp256k1_sha256_11189", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11189_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11189_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11189_sig, .siglen = 64, .result = 0, .comment = "leading ff in integer, tcId is 410 in file ecdsa_test.json [!!!WARNING: this test has been patched from 'invalid' to 'acceptable' due to lax DER parser]", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11190 for ECDSA, tcId is 413 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11190_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11190_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11190_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11190 = { .name = "ecdsa_secp256k1_sha256_11190", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11190_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11190_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11190_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 413 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11191 for ECDSA, tcId is 414 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11191_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11191_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11191_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11191 = { .name = "ecdsa_secp256k1_sha256_11191", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11191_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11191_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11191_sig, .siglen = 64, .result = -1, .comment = "replacing integer with zero, tcId is 414 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11192 for ECDSA, tcId is 415 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11192_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11192_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11192_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x83, 0xb9, 0x0d, 0xea, 0xbc, 0xa4, 0xb0, 0x5c, 0x45, 0x74, 0xe4, 0x9b, 0x58, 0x99, 0xb9, 0x64, 0xa6, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11192 = { .name = "ecdsa_secp256k1_sha256_11192", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11192_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11192_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11192_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 415 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11193 for ECDSA, tcId is 416 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11193_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11193_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11193_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x86, 0x43, 0xb0, 0x30, 0xef, 0x46, 0x1f, 0x1b, 0xcd, 0xf5, 0x3f, 0xde, 0x3e, 0xf9, 0x4c, 0xe2, 0x24, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11193 = { .name = "ecdsa_secp256k1_sha256_11193", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11193_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11193_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11193_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 416 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11194 for ECDSA, tcId is 417 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11194_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11194_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11194_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7b, 0x01, 0xa0, 0xf2, 0x2a, 0x0a, 0x98, 0x43, 0xf6, 0x4a, 0xed, 0xc3, 0x34, 0x36, 0x7c, 0xdc, 0x9b, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11194 = { .name = "ecdsa_secp256k1_sha256_11194", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11194_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11194_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11194_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 417 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11195 for ECDSA, tcId is 418 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11195_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11195_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11195_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x79, 0xbc, 0x4f, 0xcf, 0x10, 0xb9, 0xe0, 0xe4, 0x32, 0x0a, 0xc0, 0x21, 0xc1, 0x06, 0xb3, 0x1d, 0xdc, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11195 = { .name = "ecdsa_secp256k1_sha256_11195", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11195_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11195_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11195_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 418 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11196 for ECDSA, tcId is 419 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11196_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11196_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11196_sig[] = { 0xfe, 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7c, 0x46, 0xf2, 0x15, 0x43, 0x5b, 0x4f, 0xa3, 0xba, 0x8b, 0x1b, 0x64, 0xa7, 0x66, 0x46, 0x9b, 0x5a, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11196 = { .name = "ecdsa_secp256k1_sha256_11196", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11196_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11196_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11196_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 419 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11197 for ECDSA, tcId is 420 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11197_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11197_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11197_sig[] = { 0x01, 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11197 = { .name = "ecdsa_secp256k1_sha256_11197", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11197_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11197_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11197_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 420 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11198 for ECDSA, tcId is 421 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11198_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11198_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11198_sig[] = { 0x7e, 0xc1, 0x08, 0x63, 0x31, 0x05, 0x65, 0xa9, 0x08, 0x45, 0x7f, 0xa0, 0xf1, 0xb8, 0x7a, 0x7b, 0x01, 0xa0, 0xf2, 0x2a, 0x0a, 0x98, 0x43, 0xf6, 0x4a, 0xed, 0xc3, 0x34, 0x36, 0x7c, 0xdc, 0x9b, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11198 = { .name = "ecdsa_secp256k1_sha256_11198", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11198_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11198_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11198_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 421 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11199 for ECDSA, tcId is 422 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11199_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11199_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11199_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x7f, 0xc1, 0xe1, 0x97, 0xd8, 0xae, 0xbe, 0x20, 0x3c, 0x96, 0xc8, 0x72, 0x32, 0x27, 0x21, 0x72, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11199 = { .name = "ecdsa_secp256k1_sha256_11199", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11199_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11199_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11199_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 422 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11200 for ECDSA, tcId is 423 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11200_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11200_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11200_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x82, 0x4c, 0x83, 0xde, 0x0b, 0x50, 0x2c, 0xdf, 0xc5, 0x17, 0x23, 0xb5, 0x18, 0x86, 0xb4, 0xf0, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11200 = { .name = "ecdsa_secp256k1_sha256_11200", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11200_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11200_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11200_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 423 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11201 for ECDSA, tcId is 424 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11201_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11201_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11201_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7e, 0xf8, 0xcd, 0x45, 0x0e, 0x00, 0x8a, 0x7f, 0xff, 0x29, 0x09, 0xec, 0x5a, 0xa9, 0x14, 0xce, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11201 = { .name = "ecdsa_secp256k1_sha256_11201", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11201_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11201_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11201_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 424 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11202 for ECDSA, tcId is 425 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11202_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11202_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11202_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0xfe, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x80, 0x3e, 0x1e, 0x68, 0x27, 0x51, 0x41, 0xdf, 0xc3, 0x69, 0x37, 0x8d, 0xcd, 0xd8, 0xde, 0x8d, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11202 = { .name = "ecdsa_secp256k1_sha256_11202", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11202_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11202_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11202_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 425 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11203 for ECDSA, tcId is 426 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11203_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11203_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11203_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x01, 0x6f, 0xf1, 0x8a, 0x52, 0xdc, 0xc0, 0x33, 0x6f, 0x7a, 0xf6, 0x24, 0x00, 0xa6, 0xdd, 0x9b, 0x81, 0x07, 0x32, 0xba, 0xf1, 0xff, 0x75, 0x80, 0x00, 0xd6, 0xf6, 0x13, 0xa5, 0x56, 0xeb, 0x31, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11203 = { .name = "ecdsa_secp256k1_sha256_11203", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11203_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11203_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11203_sig, .siglen = 65, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 426 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11204 for ECDSA, tcId is 427 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11204_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11204_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11204_sig[] = { 0x81, 0x3e, 0xf7, 0x9c, 0xce, 0xfa, 0x9a, 0x56, 0xf7, 0xba, 0x80, 0x5f, 0x0e, 0x47, 0x85, 0x84, 0xfe, 0x5f, 0x0d, 0xd5, 0xf5, 0x67, 0xbc, 0x09, 0xb5, 0x12, 0x3c, 0xcb, 0xc9, 0x83, 0x23, 0x65, 0x90, 0x0e, 0x75, 0xad, 0x23, 0x3f, 0xcc, 0x90, 0x85, 0x09, 0xdb, 0xff, 0x59, 0x22, 0x64, 0x7e, 0xf8, 0xcd, 0x45, 0x0e, 0x00, 0x8a, 0x7f, 0xff, 0x29, 0x09, 0xec, 0x5a, 0xa9, 0x14, 0xce, 0x46, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11204 = { .name = "ecdsa_secp256k1_sha256_11204", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11204_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11204_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11204_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 427 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11205 for ECDSA, tcId is 428 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11205_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11205_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11205_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11205 = { .name = "ecdsa_secp256k1_sha256_11205", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11205_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11205_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11205_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 428 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11206 for ECDSA, tcId is 429 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11206_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11206_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11206_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11206 = { .name = "ecdsa_secp256k1_sha256_11206", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11206_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11206_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11206_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 429 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11207 for ECDSA, tcId is 430 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11207_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11207_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11207_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11207 = { .name = "ecdsa_secp256k1_sha256_11207", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11207_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11207_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11207_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 430 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11208 for ECDSA, tcId is 431 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11208_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11208_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11208_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11208 = { .name = "ecdsa_secp256k1_sha256_11208", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11208_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11208_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11208_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 431 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11209 for ECDSA, tcId is 432 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11209_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11209_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11209_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11209 = { .name = "ecdsa_secp256k1_sha256_11209", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11209_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11209_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11209_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 432 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11210 for ECDSA, tcId is 433 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11210_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11210_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11210_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11210 = { .name = "ecdsa_secp256k1_sha256_11210", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11210_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11210_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11210_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 433 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11211 for ECDSA, tcId is 434 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11211_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11211_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11211_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11211 = { .name = "ecdsa_secp256k1_sha256_11211", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11211_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11211_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11211_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 434 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11212 for ECDSA, tcId is 435 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11212_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11212_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11212_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11212 = { .name = "ecdsa_secp256k1_sha256_11212", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11212_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11212_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11212_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 435 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11213 for ECDSA, tcId is 438 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11213_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11213_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11213_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11213 = { .name = "ecdsa_secp256k1_sha256_11213", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11213_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11213_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11213_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 438 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11214 for ECDSA, tcId is 439 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11214_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11214_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11214_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11214 = { .name = "ecdsa_secp256k1_sha256_11214", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11214_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11214_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11214_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 439 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11215 for ECDSA, tcId is 440 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11215_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11215_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11215_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11215 = { .name = "ecdsa_secp256k1_sha256_11215", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11215_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11215_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11215_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 440 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11216 for ECDSA, tcId is 441 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11216_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11216_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11216_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11216 = { .name = "ecdsa_secp256k1_sha256_11216", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11216_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11216_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11216_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 441 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11217 for ECDSA, tcId is 442 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11217_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11217_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11217_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11217 = { .name = "ecdsa_secp256k1_sha256_11217", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11217_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11217_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11217_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 442 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11218 for ECDSA, tcId is 443 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11218_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11218_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11218_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11218 = { .name = "ecdsa_secp256k1_sha256_11218", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11218_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11218_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11218_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 443 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11219 for ECDSA, tcId is 444 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11219_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11219_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11219_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11219 = { .name = "ecdsa_secp256k1_sha256_11219", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11219_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11219_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11219_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 444 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11220 for ECDSA, tcId is 445 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11220_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11220_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11220_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11220 = { .name = "ecdsa_secp256k1_sha256_11220", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11220_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11220_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11220_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 445 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11221 for ECDSA, tcId is 448 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11221_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11221_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11221_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11221 = { .name = "ecdsa_secp256k1_sha256_11221", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11221_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11221_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11221_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 448 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11222 for ECDSA, tcId is 449 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11222_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11222_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11222_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11222 = { .name = "ecdsa_secp256k1_sha256_11222", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11222_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11222_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11222_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 449 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11223 for ECDSA, tcId is 450 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11223_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11223_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11223_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11223 = { .name = "ecdsa_secp256k1_sha256_11223", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11223_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11223_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11223_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 450 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11224 for ECDSA, tcId is 451 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11224_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11224_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11224_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11224 = { .name = "ecdsa_secp256k1_sha256_11224", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11224_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11224_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11224_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 451 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11225 for ECDSA, tcId is 452 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11225_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11225_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11225_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11225 = { .name = "ecdsa_secp256k1_sha256_11225", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11225_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11225_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11225_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 452 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11226 for ECDSA, tcId is 453 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11226_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11226_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11226_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11226 = { .name = "ecdsa_secp256k1_sha256_11226", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11226_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11226_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11226_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 453 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11227 for ECDSA, tcId is 454 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11227_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11227_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11227_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11227 = { .name = "ecdsa_secp256k1_sha256_11227", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11227_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11227_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11227_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 454 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11228 for ECDSA, tcId is 455 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11228_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11228_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11228_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11228 = { .name = "ecdsa_secp256k1_sha256_11228", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11228_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11228_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11228_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 455 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11229 for ECDSA, tcId is 458 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11229_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11229_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11229_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11229 = { .name = "ecdsa_secp256k1_sha256_11229", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11229_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11229_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11229_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 458 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11230 for ECDSA, tcId is 459 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11230_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11230_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11230_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11230 = { .name = "ecdsa_secp256k1_sha256_11230", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11230_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11230_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11230_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 459 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11231 for ECDSA, tcId is 460 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11231_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11231_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11231_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11231 = { .name = "ecdsa_secp256k1_sha256_11231", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11231_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11231_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11231_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 460 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11232 for ECDSA, tcId is 461 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11232_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11232_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11232_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11232 = { .name = "ecdsa_secp256k1_sha256_11232", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11232_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11232_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11232_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 461 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11233 for ECDSA, tcId is 462 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11233_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11233_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11233_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11233 = { .name = "ecdsa_secp256k1_sha256_11233", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11233_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11233_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11233_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 462 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11234 for ECDSA, tcId is 463 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11234_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11234_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11234_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11234 = { .name = "ecdsa_secp256k1_sha256_11234", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11234_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11234_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11234_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 463 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11235 for ECDSA, tcId is 464 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11235_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11235_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11235_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11235 = { .name = "ecdsa_secp256k1_sha256_11235", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11235_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11235_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11235_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 464 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11236 for ECDSA, tcId is 465 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11236_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11236_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11236_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11236 = { .name = "ecdsa_secp256k1_sha256_11236", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11236_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11236_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11236_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 465 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11237 for ECDSA, tcId is 468 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11237_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11237_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11237_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11237 = { .name = "ecdsa_secp256k1_sha256_11237", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11237_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11237_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11237_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 468 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11238 for ECDSA, tcId is 469 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11238_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11238_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11238_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11238 = { .name = "ecdsa_secp256k1_sha256_11238", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11238_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11238_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11238_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 469 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11239 for ECDSA, tcId is 470 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11239_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11239_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11239_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11239 = { .name = "ecdsa_secp256k1_sha256_11239", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11239_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11239_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11239_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 470 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11240 for ECDSA, tcId is 471 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11240_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11240_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11240_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11240 = { .name = "ecdsa_secp256k1_sha256_11240", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11240_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11240_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11240_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 471 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11241 for ECDSA, tcId is 472 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11241_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11241_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11241_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11241 = { .name = "ecdsa_secp256k1_sha256_11241", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11241_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11241_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11241_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 472 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11242 for ECDSA, tcId is 473 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11242_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11242_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11242_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11242 = { .name = "ecdsa_secp256k1_sha256_11242", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11242_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11242_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11242_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 473 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11243 for ECDSA, tcId is 474 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11243_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11243_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11243_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11243 = { .name = "ecdsa_secp256k1_sha256_11243", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11243_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11243_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11243_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 474 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11244 for ECDSA, tcId is 475 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11244_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11244_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11244_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11244 = { .name = "ecdsa_secp256k1_sha256_11244", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11244_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11244_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11244_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 475 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11245 for ECDSA, tcId is 478 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11245_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11245_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11245_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11245 = { .name = "ecdsa_secp256k1_sha256_11245", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11245_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11245_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11245_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 478 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11246 for ECDSA, tcId is 479 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11246_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11246_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11246_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11246 = { .name = "ecdsa_secp256k1_sha256_11246", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11246_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11246_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11246_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 479 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11247 for ECDSA, tcId is 480 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11247_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11247_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11247_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11247 = { .name = "ecdsa_secp256k1_sha256_11247", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11247_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11247_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11247_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 480 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11248 for ECDSA, tcId is 481 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11248_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11248_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11248_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11248 = { .name = "ecdsa_secp256k1_sha256_11248", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11248_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11248_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11248_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 481 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11249 for ECDSA, tcId is 482 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11249_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11249_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11249_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11249 = { .name = "ecdsa_secp256k1_sha256_11249", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11249_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11249_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11249_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 482 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11250 for ECDSA, tcId is 483 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11250_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11250_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11250_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11250 = { .name = "ecdsa_secp256k1_sha256_11250", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11250_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11250_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11250_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 483 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11251 for ECDSA, tcId is 484 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11251_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11251_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11251_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11251 = { .name = "ecdsa_secp256k1_sha256_11251", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11251_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11251_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11251_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 484 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11252 for ECDSA, tcId is 485 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11252_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11252_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11252_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11252 = { .name = "ecdsa_secp256k1_sha256_11252", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11252_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11252_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11252_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 485 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11253 for ECDSA, tcId is 488 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11253_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11253_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11253_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11253 = { .name = "ecdsa_secp256k1_sha256_11253", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11253_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11253_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11253_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 488 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11254 for ECDSA, tcId is 489 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11254_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11254_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11254_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11254 = { .name = "ecdsa_secp256k1_sha256_11254", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11254_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11254_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11254_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 489 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11255 for ECDSA, tcId is 490 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11255_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11255_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11255_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11255 = { .name = "ecdsa_secp256k1_sha256_11255", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11255_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11255_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11255_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 490 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11256 for ECDSA, tcId is 491 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11256_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11256_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11256_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11256 = { .name = "ecdsa_secp256k1_sha256_11256", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11256_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11256_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11256_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 491 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11257 for ECDSA, tcId is 492 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11257_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11257_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11257_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11257 = { .name = "ecdsa_secp256k1_sha256_11257", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11257_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11257_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11257_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 492 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11258 for ECDSA, tcId is 493 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11258_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11258_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11258_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11258 = { .name = "ecdsa_secp256k1_sha256_11258", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11258_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11258_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11258_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 493 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11259 for ECDSA, tcId is 494 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11259_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11259_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11259_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11259 = { .name = "ecdsa_secp256k1_sha256_11259", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11259_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11259_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11259_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 494 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11260 for ECDSA, tcId is 495 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11260_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11260_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11260_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11260 = { .name = "ecdsa_secp256k1_sha256_11260", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11260_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11260_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11260_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 495 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11261 for ECDSA, tcId is 498 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11261_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11261_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11261_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11261 = { .name = "ecdsa_secp256k1_sha256_11261", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11261_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11261_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11261_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 498 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11262 for ECDSA, tcId is 499 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11262_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11262_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11262_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11262 = { .name = "ecdsa_secp256k1_sha256_11262", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11262_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11262_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11262_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 499 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11263 for ECDSA, tcId is 500 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11263_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11263_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11263_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11263 = { .name = "ecdsa_secp256k1_sha256_11263", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11263_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11263_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11263_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 500 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11264 for ECDSA, tcId is 501 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11264_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11264_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11264_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11264 = { .name = "ecdsa_secp256k1_sha256_11264", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11264_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11264_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11264_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 501 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11265 for ECDSA, tcId is 502 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11265_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11265_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11265_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11265 = { .name = "ecdsa_secp256k1_sha256_11265", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11265_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11265_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11265_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 502 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11266 for ECDSA, tcId is 503 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11266_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11266_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11266_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11266 = { .name = "ecdsa_secp256k1_sha256_11266", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11266_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11266_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11266_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 503 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11267 for ECDSA, tcId is 504 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11267_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11267_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11267_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11267 = { .name = "ecdsa_secp256k1_sha256_11267", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11267_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11267_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11267_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 504 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11268 for ECDSA, tcId is 505 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11268_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11268_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11268_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x30, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11268 = { .name = "ecdsa_secp256k1_sha256_11268", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11268_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11268_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11268_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 505 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11269 for ECDSA, tcId is 514 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11269_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11269_msg[] = { 0x32, 0x35, 0x35, 0x38, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11269_sig[] = { 0xdd, 0x1b, 0x7d, 0x09, 0xa7, 0xbd, 0x82, 0x18, 0x96, 0x10, 0x34, 0xa3, 0x9a, 0x87, 0xfe, 0xcf, 0x53, 0x14, 0xf0, 0x0c, 0x4d, 0x25, 0xeb, 0x58, 0xa0, 0x7a, 0xc8, 0x5e, 0x85, 0xea, 0xb5, 0x16, 0x35, 0x13, 0x8c, 0x40, 0x1e, 0xf8, 0xd3, 0x49, 0x3d, 0x65, 0xc9, 0x00, 0x2f, 0xe6, 0x2b, 0x43, 0xae, 0xe5, 0x68, 0x73, 0x1b, 0x74, 0x45, 0x48, 0x35, 0x89, 0x96, 0xd9, 0xcc, 0x42, 0x7e, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11269 = { .name = "ecdsa_secp256k1_sha256_11269", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11269_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11269_msg, .msglen = 5, .sig = ecdsa_secp256k1_sha256_11269_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 514 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11270 for ECDSA, tcId is 515 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11270_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11270_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11270_sig[] = { 0x95, 0xc2, 0x92, 0x67, 0xd9, 0x72, 0xa0, 0x43, 0xd9, 0x55, 0x22, 0x45, 0x46, 0x22, 0x2b, 0xba, 0x34, 0x3f, 0xc1, 0xd4, 0xdb, 0x0f, 0xec, 0x26, 0x2a, 0x33, 0xac, 0x61, 0x30, 0x56, 0x96, 0xae, 0x6e, 0xdf, 0xe9, 0x67, 0x13, 0xae, 0xd5, 0x6f, 0x8a, 0x28, 0xa6, 0x65, 0x3f, 0x57, 0xe0, 0xb8, 0x29, 0x71, 0x2e, 0x5e, 0xdd, 0xc6, 0x7f, 0x34, 0x68, 0x2b, 0x24, 0xf0, 0x67, 0x6b, 0x26, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11270 = { .name = "ecdsa_secp256k1_sha256_11270", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11270_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11270_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11270_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 515 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11271 for ECDSA, tcId is 516 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11271_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11271_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_11271_sig[] = { 0x28, 0xf9, 0x4a, 0x89, 0x4e, 0x92, 0x02, 0x46, 0x99, 0xe3, 0x45, 0xfe, 0x66, 0x97, 0x1e, 0x3e, 0xdc, 0xd0, 0x50, 0x02, 0x33, 0x86, 0x13, 0x5a, 0xb3, 0x93, 0x9d, 0x55, 0x08, 0x98, 0xfb, 0x25, 0xcd, 0x69, 0xc1, 0xa4, 0x2b, 0xe0, 0x5a, 0x6e, 0xe1, 0x27, 0x0c, 0x82, 0x14, 0x79, 0x25, 0x1e, 0x13, 0x4c, 0x21, 0x85, 0x8d, 0x80, 0x0b, 0xda, 0x6f, 0x4e, 0x98, 0xb3, 0x71, 0x96, 0x23, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11271 = { .name = "ecdsa_secp256k1_sha256_11271", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11271_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11271_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11271_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 516 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11272 for ECDSA, tcId is 517 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11272_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11272_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11272_sig[] = { 0xbe, 0x26, 0xb1, 0x8f, 0x95, 0x49, 0xf8, 0x9f, 0x41, 0x1a, 0x9b, 0x52, 0x53, 0x6b, 0x15, 0xaa, 0x27, 0x0b, 0x84, 0x54, 0x8d, 0x0e, 0x85, 0x9a, 0x19, 0x52, 0xa2, 0x7a, 0xf1, 0xa7, 0x7a, 0xc6, 0x8f, 0x3e, 0x2b, 0x05, 0x63, 0x2f, 0xc3, 0x37, 0x15, 0x57, 0x2a, 0xf9, 0x12, 0x46, 0x81, 0x11, 0x3f, 0x2b, 0x84, 0x32, 0x5b, 0x80, 0x15, 0x4c, 0x04, 0x4a, 0x54, 0x4d, 0xc1, 0xa8, 0xfa, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11272 = { .name = "ecdsa_secp256k1_sha256_11272", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11272_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11272_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11272_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 517 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11273 for ECDSA, tcId is 518 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11273_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11273_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11273_sig[] = { 0xb1, 0xa4, 0xb1, 0x47, 0x8e, 0x65, 0xcc, 0x3e, 0xaf, 0xdf, 0x22, 0x5d, 0x12, 0x98, 0xb4, 0x3f, 0x2d, 0xa1, 0x9e, 0x4b, 0xcf, 0xf7, 0xea, 0xcc, 0x0a, 0x2e, 0x98, 0xcd, 0x4b, 0x74, 0xb1, 0x14, 0xe8, 0x65, 0x5c, 0xe1, 0xcf, 0xb3, 0x3e, 0xbd, 0x30, 0xaf, 0x8c, 0xe8, 0xe8, 0xae, 0x4d, 0x6f, 0x7b, 0x50, 0xcd, 0x3e, 0x22, 0xaf, 0x51, 0xbf, 0x69, 0xe0, 0xa2, 0x85, 0x17, 0x60, 0xd5, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11273 = { .name = "ecdsa_secp256k1_sha256_11273", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11273_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11273_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11273_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 518 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11274 for ECDSA, tcId is 519 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11274_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11274_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_11274_sig[] = { 0x32, 0x53, 0x32, 0x02, 0x12, 0x61, 0xf1, 0xbd, 0x18, 0xf2, 0x71, 0x2a, 0xa1, 0xe2, 0x25, 0x2d, 0xa2, 0x37, 0x96, 0xda, 0x8a, 0x4b, 0x1f, 0xf6, 0xea, 0x18, 0xca, 0xfe, 0xc7, 0xe1, 0x71, 0xf2, 0x40, 0xb4, 0xf5, 0xe2, 0x87, 0xee, 0x61, 0xfc, 0x3c, 0x80, 0x41, 0x86, 0x98, 0x23, 0x60, 0x89, 0x1e, 0xaa, 0x35, 0xc7, 0x5f, 0x05, 0xa4, 0x3e, 0xcd, 0x48, 0xb3, 0x5d, 0x98, 0x4a, 0x66, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11274 = { .name = "ecdsa_secp256k1_sha256_11274", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11274_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11274_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11274_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 519 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11275 for ECDSA, tcId is 520 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11275_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11275_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11275_sig[] = { 0xa2, 0x3a, 0xd1, 0x8d, 0x8f, 0xc6, 0x6d, 0x81, 0xaf, 0x09, 0x03, 0x89, 0x0c, 0xbd, 0x45, 0x3a, 0x55, 0x4c, 0xb0, 0x4c, 0xdc, 0x1a, 0x8c, 0xa7, 0xf7, 0xf7, 0x8e, 0x53, 0x67, 0xed, 0x88, 0xa0, 0xdc, 0x1c, 0x14, 0xd3, 0x1e, 0x3f, 0xb1, 0x58, 0xb7, 0x3c, 0x76, 0x42, 0x68, 0xc8, 0xb5, 0x55, 0x79, 0x73, 0x4a, 0x7e, 0x2a, 0x2c, 0x9b, 0x5e, 0xe5, 0xd9, 0xd0, 0x14, 0x4e, 0xf6, 0x52, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11275 = { .name = "ecdsa_secp256k1_sha256_11275", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11275_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11275_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11275_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 520 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11276 for ECDSA, tcId is 521 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11276_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11276_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11276_sig[] = { 0x2b, 0xde, 0xa4, 0x1c, 0xda, 0x63, 0xa2, 0xd1, 0x4b, 0xf4, 0x73, 0x53, 0xbd, 0x20, 0x88, 0x0a, 0x69, 0x09, 0x01, 0xde, 0x7c, 0xd6, 0xe3, 0xcc, 0x6d, 0x8e, 0xd5, 0xba, 0x0c, 0xdb, 0x10, 0x91, 0xc3, 0x15, 0x99, 0x43, 0x30, 0x36, 0x06, 0x40, 0x73, 0x83, 0x5b, 0x1e, 0x3e, 0xba, 0x83, 0x35, 0xa6, 0x50, 0xc8, 0xfd, 0x78, 0x6f, 0x94, 0xfe, 0x23, 0x5a, 0xd7, 0xd4, 0x1d, 0xc9, 0x4c, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11276 = { .name = "ecdsa_secp256k1_sha256_11276", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11276_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11276_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11276_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 521 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11277 for ECDSA, tcId is 522 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11277_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11277_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11277_sig[] = { 0xd7, 0xcd, 0x76, 0xec, 0x01, 0xc1, 0xb1, 0x07, 0x9e, 0xba, 0x9e, 0x2a, 0xa2, 0xa3, 0x97, 0x24, 0x3c, 0x47, 0x58, 0xc9, 0x8a, 0x1b, 0xa0, 0xb7, 0x40, 0x4a, 0x34, 0x0b, 0x9b, 0x00, 0xce, 0xd6, 0xca, 0x8a, 0xff, 0xe1, 0xe6, 0x26, 0xdd, 0x19, 0x21, 0x74, 0xc2, 0x93, 0x7b, 0x15, 0xbc, 0x48, 0xf7, 0x7b, 0x5b, 0xdf, 0xe0, 0x1f, 0x07, 0x3a, 0x8a, 0xea, 0xf7, 0xf2, 0x4d, 0xc6, 0xc8, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11277 = { .name = "ecdsa_secp256k1_sha256_11277", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11277_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11277_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11277_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 522 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11278 for ECDSA, tcId is 523 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11278_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11278_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11278_sig[] = { 0xa8, 0x72, 0xc7, 0x44, 0xd9, 0x36, 0xdb, 0x21, 0xa1, 0x0c, 0x36, 0x1d, 0xd5, 0xc9, 0x06, 0x33, 0x55, 0xf8, 0x49, 0x02, 0x21, 0x96, 0x52, 0xf6, 0xfc, 0x56, 0xdc, 0x95, 0xa7, 0x13, 0x9d, 0x96, 0x40, 0x0d, 0xf7, 0x57, 0x5d, 0x97, 0x56, 0x21, 0x0e, 0x9c, 0xcc, 0x77, 0x16, 0x2c, 0x6b, 0x59, 0x3c, 0x77, 0x46, 0xcf, 0xb4, 0x8a, 0xc2, 0x63, 0xc4, 0x27, 0x50, 0xb4, 0x21, 0xef, 0x4b, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11278 = { .name = "ecdsa_secp256k1_sha256_11278", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11278_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11278_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11278_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 523 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11279 for ECDSA, tcId is 524 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11279_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11279_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_11279_sig[] = { 0x9f, 0xa9, 0xaf, 0xe0, 0x77, 0x52, 0xda, 0x10, 0xb3, 0x6d, 0x3a, 0xfc, 0xd0, 0xfe, 0x44, 0xbf, 0xc4, 0x02, 0x44, 0xd7, 0x52, 0x03, 0x59, 0x9c, 0xf8, 0xf5, 0x04, 0x7f, 0xa3, 0x45, 0x38, 0x54, 0xaf, 0x1f, 0x58, 0x3f, 0xec, 0x40, 0x40, 0xae, 0x7e, 0x68, 0xc9, 0x68, 0xd2, 0xbb, 0x4b, 0x49, 0x4e, 0xec, 0x3a, 0x33, 0xed, 0xc7, 0xc0, 0xcc, 0xf9, 0x5f, 0x7f, 0x75, 0xbc, 0x25, 0x69, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11279 = { .name = "ecdsa_secp256k1_sha256_11279", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11279_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11279_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11279_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 524 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11280 for ECDSA, tcId is 525 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11280_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11280_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_11280_sig[] = { 0x88, 0x56, 0x40, 0x38, 0x4d, 0x0d, 0x91, 0x0e, 0xfb, 0x17, 0x7b, 0x46, 0xbe, 0x6c, 0x3d, 0xc5, 0xca, 0xc8, 0x1f, 0x0b, 0x88, 0xc3, 0x19, 0x0b, 0xb6, 0xb5, 0xf9, 0x9c, 0x26, 0x41, 0xf2, 0x05, 0x73, 0x8e, 0xd9, 0xbf, 0xf1, 0x16, 0x30, 0x6d, 0x9c, 0xaa, 0x0f, 0x8f, 0xc6, 0x08, 0xbe, 0x24, 0x3e, 0x0b, 0x56, 0x77, 0x79, 0xd8, 0xda, 0xb0, 0x3e, 0x8e, 0x19, 0xd5, 0x53, 0xf1, 0xdc, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11280 = { .name = "ecdsa_secp256k1_sha256_11280", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11280_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11280_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11280_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 525 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11281 for ECDSA, tcId is 526 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11281_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11281_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_11281_sig[] = { 0x2d, 0x05, 0x1f, 0x91, 0xc5, 0xa9, 0xd4, 0x40, 0xc5, 0x67, 0x69, 0x85, 0x71, 0x04, 0x83, 0xbc, 0x4f, 0x1a, 0x6c, 0x61, 0x1b, 0x10, 0xc9, 0x5a, 0x2f, 0xf0, 0x36, 0x3d, 0x90, 0xc2, 0xa4, 0x58, 0x92, 0x20, 0x6b, 0x19, 0x04, 0x5a, 0x41, 0xa7, 0x97, 0xcc, 0x2f, 0x3a, 0xc3, 0x0d, 0xe9, 0x51, 0x81, 0x65, 0xe9, 0x6d, 0x5b, 0x86, 0x34, 0x1e, 0xcb, 0x3b, 0xcf, 0xf2, 0x31, 0xb3, 0xfd, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11281 = { .name = "ecdsa_secp256k1_sha256_11281", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11281_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11281_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11281_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 526 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11282 for ECDSA, tcId is 527 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11282_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11282_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_11282_sig[] = { 0xf3, 0xac, 0x25, 0x23, 0x96, 0x74, 0x82, 0xf5, 0x3d, 0x50, 0x85, 0x22, 0x71, 0x2d, 0x58, 0x3f, 0x43, 0x79, 0xcd, 0x82, 0x41, 0x01, 0xff, 0x63, 0x5e, 0xa0, 0x93, 0x51, 0x17, 0xba, 0xa5, 0x4f, 0x27, 0xf1, 0x08, 0x12, 0x22, 0x73, 0x97, 0xe0, 0x2c, 0xea, 0x96, 0xfb, 0x0e, 0x68, 0x07, 0x61, 0x63, 0x6d, 0xab, 0x2b, 0x08, 0x0d, 0x1f, 0xc5, 0xd1, 0x16, 0x85, 0xcb, 0xe8, 0x50, 0x0c, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11282 = { .name = "ecdsa_secp256k1_sha256_11282", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11282_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11282_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11282_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 527 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11283 for ECDSA, tcId is 528 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11283_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11283_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11283_sig[] = { 0x96, 0x44, 0x7c, 0xf6, 0x8c, 0x3a, 0xb7, 0x26, 0x6e, 0xd7, 0x44, 0x7d, 0xe3, 0xac, 0x52, 0xfe, 0xd7, 0xcc, 0x08, 0xcb, 0xdf, 0xea, 0x39, 0x1c, 0x18, 0xa9, 0xb8, 0xab, 0x37, 0x0b, 0xc9, 0x13, 0xf0, 0xa1, 0x87, 0x8b, 0x2c, 0x53, 0xf1, 0x6e, 0x70, 0xfe, 0x37, 0x7a, 0x5e, 0x9c, 0x6e, 0x86, 0xf1, 0x8a, 0xe4, 0x80, 0xa2, 0x2b, 0xb4, 0x99, 0xf5, 0xb3, 0x2e, 0x71, 0x09, 0xc0, 0x73, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11283 = { .name = "ecdsa_secp256k1_sha256_11283", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11283_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11283_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11283_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 528 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11284 for ECDSA, tcId is 529 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11284_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11284_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_11284_sig[] = { 0x53, 0x0a, 0x08, 0x32, 0xb6, 0x91, 0xda, 0x0b, 0x56, 0x19, 0xa0, 0xb1, 0x1d, 0xe6, 0x87, 0x7f, 0x3c, 0x09, 0x71, 0xba, 0xaa, 0x68, 0xed, 0x12, 0x27, 0x58, 0xc2, 0x9c, 0xaa, 0xf4, 0x6b, 0x72, 0x93, 0x76, 0x1b, 0xb0, 0xa1, 0x4c, 0xcf, 0x9f, 0x15, 0xb4, 0xb9, 0xce, 0x73, 0xc6, 0xec, 0x70, 0x0b, 0xd0, 0x15, 0xb8, 0xcb, 0x1c, 0xfa, 0xc5, 0x68, 0x37, 0xf4, 0x46, 0x3f, 0x53, 0x07, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11284 = { .name = "ecdsa_secp256k1_sha256_11284", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11284_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11284_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11284_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 529 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11285 for ECDSA, tcId is 530 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11285_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11285_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11285_sig[] = { 0x9c, 0x54, 0xc2, 0x55, 0x00, 0xbd, 0xe0, 0xb9, 0x2d, 0x72, 0xd6, 0xec, 0x48, 0x3d, 0xc2, 0x48, 0x2f, 0x36, 0x54, 0x29, 0x4c, 0xa7, 0x4d, 0xe7, 0x96, 0xb6, 0x81, 0x25, 0x5e, 0xd5, 0x8a, 0x77, 0x98, 0x8b, 0xac, 0x39, 0x4a, 0x90, 0xad, 0x89, 0xce, 0x36, 0x09, 0x84, 0xc0, 0xc1, 0x49, 0xdc, 0xbd, 0x26, 0x84, 0xbb, 0x64, 0x49, 0x8a, 0xce, 0x90, 0xbc, 0xf6, 0xb6, 0xaf, 0x1c, 0x17, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11285 = { .name = "ecdsa_secp256k1_sha256_11285", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11285_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11285_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11285_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 530 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11286 for ECDSA, tcId is 531 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11286_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11286_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11286_sig[] = { 0xe7, 0x90, 0x9d, 0x41, 0x43, 0x9e, 0x2f, 0x6a, 0xf2, 0x91, 0x36, 0xc7, 0x34, 0x8c, 0xa2, 0x64, 0x1a, 0x2b, 0x07, 0x0d, 0x5b, 0x64, 0xf9, 0x1e, 0xa9, 0xda, 0x70, 0x70, 0xc7, 0xa2, 0x61, 0x8b, 0x42, 0xd7, 0x82, 0xf1, 0x32, 0xfa, 0x1d, 0x36, 0xc2, 0xc8, 0x8b, 0xa2, 0x7c, 0x3d, 0x67, 0x8d, 0x80, 0x18, 0x4a, 0x5d, 0x1e, 0xcc, 0xac, 0x75, 0x01, 0xf0, 0xb4, 0x7e, 0x3d, 0x20, 0x50, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11286 = { .name = "ecdsa_secp256k1_sha256_11286", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11286_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11286_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11286_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 531 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11287 for ECDSA, tcId is 532 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11287_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11287_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11287_sig[] = { 0x59, 0x24, 0x87, 0x32, 0x09, 0x59, 0x31, 0x35, 0xa4, 0xc3, 0xda, 0x7b, 0xb3, 0x81, 0x22, 0x7f, 0x8a, 0x4b, 0x6a, 0xa9, 0xf3, 0x4f, 0xe5, 0xbb, 0x7f, 0x8f, 0xbc, 0x13, 0x1a, 0x03, 0x9f, 0xfe, 0xe0, 0xe4, 0x4e, 0xe4, 0xbb, 0xe3, 0x70, 0x15, 0x5b, 0xf0, 0xbb, 0xde, 0xc2, 0x65, 0xbf, 0x9f, 0xe3, 0x1c, 0x07, 0x46, 0xfa, 0xab, 0x44, 0x6d, 0xe6, 0x2e, 0x36, 0x31, 0xea, 0xcd, 0x11, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11287 = { .name = "ecdsa_secp256k1_sha256_11287", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11287_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11287_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11287_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 532 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11288 for ECDSA, tcId is 533 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11288_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11288_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11288_sig[] = { 0xee, 0xb6, 0x92, 0xc9, 0xb2, 0x62, 0x96, 0x9b, 0x23, 0x1c, 0x38, 0xb5, 0xa7, 0xf6, 0x06, 0x49, 0xe0, 0xc8, 0x75, 0xcd, 0x64, 0xdf, 0x88, 0xf3, 0x3a, 0xa5, 0x71, 0xfa, 0x3d, 0x29, 0xab, 0x0e, 0x21, 0x8b, 0x3a, 0x1e, 0xb0, 0x63, 0x79, 0xc2, 0xc1, 0x8c, 0xf5, 0x1b, 0x06, 0x43, 0x07, 0x86, 0xd1, 0xc6, 0x4c, 0xd2, 0xd2, 0x4c, 0x9b, 0x23, 0x2b, 0x23, 0xe5, 0xba, 0xc7, 0x98, 0x9a, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11288 = { .name = "ecdsa_secp256k1_sha256_11288", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11288_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11288_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11288_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 533 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11289 for ECDSA, tcId is 534 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11289_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11289_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_11289_sig[] = { 0xa4, 0x00, 0x34, 0x17, 0x7f, 0x36, 0x09, 0x1c, 0x2b, 0x65, 0x36, 0x84, 0xa0, 0xe3, 0xeb, 0x5d, 0x4b, 0xff, 0x18, 0xe4, 0xd0, 0x9f, 0x66, 0x4c, 0x28, 0x00, 0xe7, 0xca, 0xfd, 0xa1, 0xda, 0xf8, 0x3a, 0x3e, 0xc2, 0x98, 0x53, 0x70, 0x4e, 0x52, 0x03, 0x1c, 0x58, 0x92, 0x7a, 0x80, 0x0a, 0x96, 0x83, 0x53, 0xad, 0xc3, 0xd9, 0x73, 0xbe, 0xba, 0x91, 0x72, 0xcb, 0xbe, 0xab, 0x4d, 0xd1, 0x49, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11289 = { .name = "ecdsa_secp256k1_sha256_11289", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11289_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11289_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11289_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 534 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11290 for ECDSA, tcId is 535 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11290_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11290_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11290_sig[] = { 0xb5, 0xd7, 0x95, 0xcc, 0x75, 0xce, 0xa5, 0xc4, 0x34, 0xfa, 0x41, 0x85, 0x18, 0x0c, 0xd6, 0xbd, 0x21, 0x22, 0x3f, 0x3d, 0x5a, 0x86, 0xda, 0x66, 0x70, 0xd7, 0x1d, 0x95, 0x68, 0x0d, 0xad, 0xbf, 0xab, 0x1b, 0x27, 0x7e, 0xf5, 0xff, 0xe1, 0x34, 0x46, 0x08, 0x35, 0xe3, 0xd1, 0x40, 0x24, 0x61, 0xba, 0x10, 0x4c, 0xb5, 0x0b, 0x16, 0xf3, 0x97, 0xfd, 0xc7, 0xa9, 0xab, 0xfe, 0xfe, 0xf2, 0x80, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11290 = { .name = "ecdsa_secp256k1_sha256_11290", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11290_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11290_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11290_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 535 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11291 for ECDSA, tcId is 536 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11291_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11291_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11291_sig[] = { 0x07, 0xdc, 0x24, 0x78, 0xd4, 0x3c, 0x12, 0x32, 0xa4, 0x59, 0x56, 0x08, 0xc6, 0x44, 0x26, 0xc3, 0x55, 0x10, 0x05, 0x1a, 0x63, 0x1a, 0xe6, 0xa5, 0xa6, 0xeb, 0x11, 0x61, 0xe5, 0x7e, 0x42, 0xe1, 0x4a, 0x59, 0xea, 0x0f, 0xdb, 0x72, 0xd1, 0x21, 0x65, 0xce, 0xa3, 0xbf, 0x1c, 0xa8, 0x6b, 0xa9, 0x75, 0x17, 0xbd, 0x18, 0x8d, 0xb3, 0xdb, 0xd2, 0x1a, 0x5a, 0x15, 0x78, 0x50, 0x02, 0x19, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11291 = { .name = "ecdsa_secp256k1_sha256_11291", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11291_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11291_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11291_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 536 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11292 for ECDSA, tcId is 537 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11292_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11292_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11292_sig[] = { 0xdd, 0xd2, 0x0c, 0x4a, 0x05, 0x59, 0x6c, 0xa8, 0x68, 0xb5, 0x58, 0x83, 0x9f, 0xce, 0x9f, 0x65, 0x11, 0xdd, 0xd8, 0x3d, 0x1c, 0xcb, 0x53, 0xf8, 0x2e, 0x52, 0x69, 0xd5, 0x59, 0xa0, 0x15, 0x52, 0xa4, 0x6e, 0x8c, 0xb8, 0xd6, 0x26, 0xcf, 0x6c, 0x00, 0xdd, 0xed, 0xc3, 0xb5, 0xda, 0x7e, 0x61, 0x3a, 0xc3, 0x76, 0x44, 0x5e, 0xe2, 0x60, 0x74, 0x3f, 0x06, 0xf7, 0x90, 0x54, 0xc7, 0xd4, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11292 = { .name = "ecdsa_secp256k1_sha256_11292", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11292_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11292_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11292_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 537 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11293 for ECDSA, tcId is 538 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11293_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11293_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11293_sig[] = { 0x9c, 0xde, 0x6e, 0x0e, 0xde, 0x0a, 0x00, 0x3f, 0x02, 0xfd, 0xa0, 0xa0, 0x1b, 0x59, 0xfa, 0xcf, 0xe5, 0xde, 0xc0, 0x63, 0x31, 0x8f, 0x27, 0x9c, 0xe2, 0xde, 0x7a, 0x9b, 0x10, 0x62, 0xf7, 0xb7, 0x28, 0x86, 0xa5, 0xb8, 0xc6, 0x79, 0xbd, 0xf8, 0x22, 0x4c, 0x66, 0xf9, 0x08, 0xfd, 0x62, 0x05, 0x49, 0x2c, 0xb7, 0x0b, 0x00, 0x68, 0xd4, 0x6a, 0xe4, 0xf3, 0x3a, 0x41, 0x49, 0xb1, 0x2a, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11293 = { .name = "ecdsa_secp256k1_sha256_11293", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11293_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11293_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11293_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 538 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11294 for ECDSA, tcId is 539 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11294_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11294_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11294_sig[] = { 0xc5, 0x77, 0x10, 0x16, 0xd0, 0xdd, 0x63, 0x57, 0x14, 0x3c, 0x89, 0xf6, 0x84, 0xcd, 0x74, 0x04, 0x23, 0x50, 0x25, 0x54, 0xc0, 0xc5, 0x9a, 0xa8, 0xc9, 0x95, 0x84, 0xf1, 0xff, 0x38, 0xf6, 0x09, 0xab, 0x4b, 0xfa, 0x0b, 0xb8, 0x8a, 0xb9, 0x97, 0x91, 0xb9, 0xb3, 0xab, 0x9c, 0x4b, 0x02, 0xbd, 0x2a, 0x57, 0xae, 0x8d, 0xde, 0x50, 0xb9, 0x06, 0x40, 0x63, 0xfc, 0xf8, 0x53, 0x15, 0xcf, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11294 = { .name = "ecdsa_secp256k1_sha256_11294", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11294_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11294_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11294_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 539 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11295 for ECDSA, tcId is 540 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11295_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11295_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11295_sig[] = { 0xa2, 0x4e, 0xbc, 0x0e, 0xc2, 0x24, 0xbd, 0x67, 0xae, 0x39, 0x7c, 0xbe, 0x6f, 0xa3, 0x7b, 0x31, 0x25, 0xad, 0xbd, 0x34, 0x89, 0x1a, 0xbe, 0x2d, 0x7c, 0x73, 0x56, 0x92, 0x19, 0x16, 0xdf, 0xe6, 0x34, 0xf6, 0xeb, 0x63, 0x74, 0x73, 0x1b, 0xbb, 0xaf, 0xc4, 0x92, 0x4f, 0xb8, 0xb0, 0xbd, 0xcd, 0xda, 0x49, 0x45, 0x6d, 0x72, 0x4c, 0xda, 0xe6, 0x17, 0x8d, 0x87, 0x01, 0x4c, 0xb5, 0x3d, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11295 = { .name = "ecdsa_secp256k1_sha256_11295", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11295_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11295_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11295_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 540 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11296 for ECDSA, tcId is 541 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11296_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11296_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11296_sig[] = { 0x25, 0x57, 0xd6, 0x4a, 0x7a, 0xee, 0x2e, 0x09, 0x31, 0xc0, 0x12, 0xe4, 0xfe, 0xa1, 0xcd, 0x3a, 0x2c, 0x33, 0x4e, 0xda, 0xe6, 0x8c, 0xde, 0xb7, 0x15, 0x8c, 0xaf, 0x21, 0xb6, 0x8e, 0x5a, 0x24, 0x80, 0xf9, 0x32, 0x44, 0x95, 0x6f, 0xfd, 0xc5, 0x68, 0xc7, 0x7d, 0x12, 0x68, 0x4f, 0x7f, 0x00, 0x4f, 0xa9, 0x2d, 0xa7, 0xe6, 0x0a, 0xe9, 0x4a, 0x1b, 0x98, 0xc4, 0x22, 0xe2, 0x3e, 0xda, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11296 = { .name = "ecdsa_secp256k1_sha256_11296", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11296_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11296_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11296_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 541 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11297 for ECDSA, tcId is 542 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11297_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11297_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11297_sig[] = { 0xc4, 0xf2, 0xec, 0xcb, 0xb6, 0xa2, 0x43, 0x50, 0xc8, 0x46, 0x64, 0x50, 0xb9, 0xd6, 0x1b, 0x20, 0x7e, 0xe3, 0x59, 0xe0, 0x37, 0xb3, 0xdc, 0xed, 0xb4, 0x2a, 0x3f, 0x2e, 0x6d, 0xd6, 0xae, 0xb5, 0xcd, 0x9c, 0x39, 0x4a, 0x65, 0xd0, 0xaa, 0x32, 0x2e, 0x39, 0x1e, 0xb7, 0x6b, 0x2a, 0x1a, 0x68, 0x7f, 0x86, 0x20, 0xa8, 0x8a, 0xde, 0xf3, 0xa0, 0x1e, 0xb8, 0xe4, 0xfb, 0x05, 0xb6, 0x47, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11297 = { .name = "ecdsa_secp256k1_sha256_11297", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11297_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11297_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11297_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 542 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11298 for ECDSA, tcId is 543 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11298_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11298_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256k1_sha256_11298_sig[] = { 0xef, 0xf0, 0x47, 0x81, 0xc9, 0xcb, 0xcd, 0x16, 0x2d, 0x0a, 0x25, 0xa6, 0xe2, 0xeb, 0xcc, 0xa4, 0x35, 0x06, 0xc5, 0x23, 0x38, 0x5c, 0xb5, 0x15, 0xd4, 0x9e, 0xa3, 0x8a, 0x1b, 0x12, 0xfc, 0xad, 0xea, 0x53, 0x28, 0xce, 0x6b, 0x36, 0xe5, 0x6a, 0xb8, 0x7a, 0xcb, 0x0d, 0xcf, 0xea, 0x49, 0x8b, 0xce, 0xc1, 0xbb, 0xa8, 0x6a, 0x06, 0x52, 0x68, 0xf6, 0xef, 0xf3, 0xc4, 0x1c, 0x4b, 0x0c, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11298 = { .name = "ecdsa_secp256k1_sha256_11298", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11298_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11298_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11298_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 543 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11299 for ECDSA, tcId is 544 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11299_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11299_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11299_sig[] = { 0xf5, 0x8b, 0x4e, 0x31, 0x10, 0xa6, 0x4b, 0xf1, 0xb5, 0xdb, 0x97, 0x63, 0x9e, 0xe0, 0xe5, 0xa9, 0xc8, 0xdf, 0xa4, 0x9d, 0xc5, 0x9b, 0x67, 0x98, 0x91, 0xf5, 0x20, 0xfd, 0xf0, 0x58, 0x4c, 0x87, 0xd3, 0x27, 0x01, 0xae, 0x77, 0x75, 0x11, 0x62, 0x4c, 0x1f, 0x8a, 0xbb, 0xf0, 0x2b, 0x24, 0x8b, 0x04, 0xe7, 0xa9, 0xeb, 0x27, 0x93, 0x8f, 0x52, 0x4f, 0x3e, 0x88, 0x28, 0xba, 0x40, 0x16, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11299 = { .name = "ecdsa_secp256k1_sha256_11299", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11299_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11299_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11299_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 544 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11300 for ECDSA, tcId is 545 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11300_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11300_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11300_sig[] = { 0xf8, 0xab, 0xec, 0xaa, 0x4f, 0x0c, 0x50, 0x2d, 0xe4, 0xbf, 0x59, 0x03, 0xd4, 0x84, 0x17, 0xf7, 0x86, 0xbf, 0x92, 0xe8, 0xad, 0x72, 0xfe, 0xc0, 0xbd, 0x7f, 0xcb, 0x78, 0x00, 0xc0, 0xbb, 0xe3, 0x4c, 0x7f, 0x9e, 0x23, 0x10, 0x76, 0xa3, 0x0b, 0x7a, 0xe3, 0x6b, 0x0c, 0xeb, 0xe6, 0x9c, 0xce, 0xf1, 0xcd, 0x19, 0x4f, 0x7c, 0xce, 0x93, 0xa5, 0x58, 0x8f, 0xd6, 0x81, 0x4f, 0x43, 0x7c, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11300 = { .name = "ecdsa_secp256k1_sha256_11300", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11300_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11300_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11300_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 545 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11301 for ECDSA, tcId is 546 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11301_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11301_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_11301_sig[] = { 0x5d, 0x5b, 0x38, 0xbd, 0x37, 0xad, 0x49, 0x8b, 0x22, 0x27, 0xa6, 0x33, 0x26, 0x8a, 0x8c, 0xca, 0x87, 0x9a, 0x5c, 0x7c, 0x94, 0xa4, 0xe4, 0x16, 0xbd, 0x0a, 0x61, 0x4d, 0x09, 0xe6, 0x06, 0xd2, 0x12, 0xb8, 0xd6, 0x64, 0xea, 0x99, 0x91, 0x06, 0x2e, 0xcb, 0xb8, 0x34, 0xe5, 0x84, 0x00, 0xe2, 0x5c, 0x46, 0x00, 0x7a, 0xf8, 0x4f, 0x60, 0x07, 0xd7, 0xf1, 0x68, 0x54, 0x43, 0x26, 0x9a, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11301 = { .name = "ecdsa_secp256k1_sha256_11301", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11301_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11301_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11301_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 546 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11302 for ECDSA, tcId is 547 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11302_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11302_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_11302_sig[] = { 0x0c, 0x1c, 0xd9, 0xfe, 0x40, 0x34, 0xf0, 0x86, 0xa2, 0xb5, 0x2d, 0x65, 0xb9, 0xd3, 0x83, 0x4d, 0x72, 0xae, 0xbe, 0x7f, 0x33, 0xdf, 0xe8, 0xf9, 0x76, 0xda, 0x82, 0x64, 0x81, 0x77, 0xd8, 0xe3, 0x13, 0x10, 0x57, 0x82, 0xe3, 0xd0, 0xcf, 0xe8, 0x5c, 0x27, 0x78, 0xde, 0xc1, 0xa8, 0x48, 0xb2, 0x7a, 0xc0, 0xae, 0x07, 0x1a, 0xa6, 0xda, 0x34, 0x1a, 0x95, 0x53, 0xa9, 0x46, 0xb4, 0x1e, 0x59, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11302 = { .name = "ecdsa_secp256k1_sha256_11302", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11302_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11302_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11302_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 547 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11303 for ECDSA, tcId is 548 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11303_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11303_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_11303_sig[] = { 0xae, 0x79, 0x35, 0xfb, 0x96, 0xff, 0x24, 0x6b, 0x7b, 0x5d, 0x56, 0x62, 0x87, 0x0d, 0x1b, 0xa5, 0x87, 0xb0, 0x3d, 0x6e, 0x13, 0x60, 0xba, 0xf4, 0x79, 0x88, 0xb5, 0xc0, 0x2c, 0xcc, 0x1a, 0x5b, 0x5f, 0x00, 0xc3, 0x23, 0x27, 0x20, 0x83, 0x78, 0x2d, 0x4a, 0x59, 0xf2, 0xdf, 0xd6, 0x5e, 0x49, 0xde, 0x06, 0x93, 0x62, 0x70, 0x16, 0x90, 0x0e, 0xf7, 0xe6, 0x14, 0x28, 0x05, 0x66, 0x64, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11303 = { .name = "ecdsa_secp256k1_sha256_11303", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11303_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11303_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11303_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 548 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11304 for ECDSA, tcId is 549 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11304_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11304_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11304_sig[] = { 0x00, 0xa1, 0x34, 0xb5, 0xc6, 0xcc, 0xbc, 0xef, 0xd4, 0xc8, 0x82, 0xb9, 0x45, 0xba, 0xeb, 0x49, 0x33, 0x44, 0x41, 0x72, 0x79, 0x5f, 0xa6, 0x79, 0x6a, 0xae, 0x14, 0x90, 0x67, 0x54, 0x70, 0x98, 0xa9, 0x91, 0xb9, 0xef, 0xa2, 0xdb, 0x27, 0x6f, 0xea, 0xe1, 0xc1, 0x15, 0xc1, 0x40, 0x77, 0x09, 0x01, 0x83, 0x9d, 0x87, 0xe6, 0x0e, 0x7e, 0xc4, 0x5a, 0x2b, 0x81, 0xcf, 0x3b, 0x43, 0x7b, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11304 = { .name = "ecdsa_secp256k1_sha256_11304", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11304_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11304_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11304_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 549 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11305 for ECDSA, tcId is 550 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11305_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11305_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11305_sig[] = { 0x2e, 0x47, 0x21, 0x36, 0x3a, 0xd3, 0x99, 0x2c, 0x13, 0x9e, 0x5a, 0x1c, 0x26, 0x39, 0x5d, 0x2c, 0x2d, 0x77, 0x78, 0x24, 0xaa, 0x24, 0xfd, 0xe0, 0x75, 0xe0, 0xd7, 0x38, 0x11, 0x71, 0x30, 0x9d, 0x8b, 0xf0, 0x83, 0xb6, 0xbb, 0xe7, 0x1e, 0xcf, 0xf2, 0x2b, 0xae, 0xd0, 0x87, 0xd5, 0xa7, 0x7e, 0xae, 0xaf, 0x72, 0x6b, 0xf1, 0x4a, 0xce, 0x2c, 0x03, 0xfd, 0x6e, 0x37, 0xba, 0x6c, 0x26, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11305 = { .name = "ecdsa_secp256k1_sha256_11305", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11305_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11305_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11305_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 550 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11306 for ECDSA, tcId is 551 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11306_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11306_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11306_sig[] = { 0x68, 0x52, 0xe9, 0xd3, 0xcd, 0x9f, 0xe3, 0x73, 0xc2, 0xd5, 0x04, 0x87, 0x79, 0x67, 0xd3, 0x65, 0xab, 0x14, 0x56, 0x70, 0x7b, 0x68, 0x17, 0xa0, 0x42, 0x86, 0x46, 0x94, 0xe1, 0x96, 0x0c, 0xcf, 0xf9, 0xb4, 0xd8, 0x15, 0xeb, 0xd4, 0xcf, 0x77, 0x84, 0x7b, 0x37, 0x95, 0x23, 0x34, 0xd0, 0x5b, 0x20, 0x45, 0xcb, 0x39, 0x8d, 0x4c, 0x21, 0xba, 0x20, 0x79, 0x22, 0xa7, 0xa4, 0x71, 0x4d, 0x84, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11306 = { .name = "ecdsa_secp256k1_sha256_11306", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11306_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11306_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11306_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 551 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11307 for ECDSA, tcId is 552 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11307_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11307_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256k1_sha256_11307_sig[] = { 0x18, 0x8a, 0x8c, 0x56, 0x48, 0xdc, 0x79, 0xea, 0xce, 0x15, 0x8c, 0xf8, 0x86, 0xc6, 0x2b, 0x54, 0x68, 0xf0, 0x5f, 0xd9, 0x5f, 0x03, 0xa7, 0x63, 0x5c, 0x5b, 0x4c, 0x31, 0xf0, 0x9a, 0xf4, 0xc5, 0x36, 0x36, 0x1a, 0x0b, 0x57, 0x1a, 0x00, 0xc6, 0xcd, 0x5e, 0x68, 0x6c, 0xcb, 0xfc, 0xfa, 0x70, 0x3c, 0x4f, 0x97, 0xe4, 0x89, 0x38, 0x34, 0x6d, 0x0c, 0x10, 0x3f, 0xdc, 0x76, 0xdc, 0x58, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11307 = { .name = "ecdsa_secp256k1_sha256_11307", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11307_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11307_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11307_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 552 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11308 for ECDSA, tcId is 553 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11308_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11308_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256k1_sha256_11308_sig[] = { 0xa7, 0x4f, 0x1f, 0xb9, 0xa8, 0x26, 0x3f, 0x62, 0xfc, 0x44, 0x16, 0xa5, 0xb7, 0xd5, 0x84, 0xf4, 0x20, 0x6f, 0x39, 0x96, 0xbb, 0x91, 0xf6, 0xfc, 0x8e, 0x73, 0xb9, 0xe9, 0x2b, 0xad, 0x0e, 0x13, 0x68, 0x15, 0x03, 0x2e, 0x8c, 0x7d, 0x76, 0xc3, 0xab, 0x06, 0xa8, 0x6f, 0x33, 0x24, 0x9c, 0xe9, 0x94, 0x01, 0x48, 0xcb, 0x36, 0xd1, 0xf4, 0x17, 0xc2, 0xe9, 0x92, 0xe8, 0x01, 0xaf, 0xa3, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11308 = { .name = "ecdsa_secp256k1_sha256_11308", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11308_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11308_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11308_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 553 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11309 for ECDSA, tcId is 554 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11309_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11309_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11309_sig[] = { 0x07, 0x24, 0x48, 0x65, 0xb7, 0x2f, 0xf3, 0x7e, 0x62, 0xe3, 0x14, 0x6f, 0x0d, 0xc1, 0x46, 0x82, 0xba, 0xdd, 0x71, 0x97, 0x79, 0x91, 0x35, 0xf0, 0xb0, 0x0a, 0xde, 0x76, 0x71, 0x74, 0x2b, 0xfe, 0xf2, 0x7f, 0x3d, 0xdc, 0x71, 0x24, 0xb1, 0xb5, 0x85, 0x79, 0x57, 0x3a, 0x83, 0x56, 0x50, 0xe7, 0xa8, 0xba, 0xd5, 0xee, 0xb9, 0x6e, 0x9d, 0xa2, 0x15, 0xcd, 0x7b, 0xf9, 0xa2, 0xa0, 0x39, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11309 = { .name = "ecdsa_secp256k1_sha256_11309", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11309_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11309_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11309_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 554 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11310 for ECDSA, tcId is 555 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11310_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11310_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11310_sig[] = { 0xda, 0x7f, 0xdd, 0x05, 0xb5, 0xba, 0xda, 0xbd, 0x61, 0x9d, 0x80, 0x5c, 0x4e, 0xe7, 0xd9, 0xa8, 0x4f, 0x84, 0xdd, 0xd5, 0xcf, 0x9c, 0x5b, 0xf4, 0xd4, 0x33, 0x81, 0x40, 0xd6, 0x89, 0xef, 0x08, 0x28, 0xf1, 0xcf, 0x4f, 0xa1, 0xc3, 0xc5, 0x86, 0x2c, 0xfa, 0x14, 0x9c, 0x00, 0x13, 0xcf, 0x5f, 0xe6, 0xcf, 0x50, 0x76, 0xca, 0xe0, 0x00, 0x51, 0x10, 0x63, 0xe7, 0xde, 0x25, 0xbb, 0x38, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11310 = { .name = "ecdsa_secp256k1_sha256_11310", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11310_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11310_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11310_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 555 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11311 for ECDSA, tcId is 556 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11311_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11311_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11311_sig[] = { 0xd3, 0x02, 0x7c, 0x65, 0x6f, 0x6d, 0x4f, 0xdf, 0xd8, 0xed, 0xe2, 0x20, 0x93, 0xe3, 0xc3, 0x03, 0xb0, 0x13, 0x3c, 0x34, 0x0d, 0x61, 0x5e, 0x77, 0x56, 0xf6, 0x25, 0x3a, 0xea, 0x92, 0x72, 0x38, 0xf6, 0x51, 0x0f, 0x9f, 0x37, 0x1b, 0x31, 0x06, 0x8d, 0x68, 0xbf, 0xee, 0xaa, 0x72, 0x0e, 0xb9, 0xbb, 0xdc, 0x80, 0x40, 0x14, 0x5f, 0xcf, 0x88, 0xd4, 0xe0, 0xb5, 0x8d, 0xe0, 0x77, 0x7d, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11311 = { .name = "ecdsa_secp256k1_sha256_11311", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11311_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11311_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11311_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 556 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11312 for ECDSA, tcId is 557 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11312_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11312_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11312_sig[] = { 0x0b, 0xf6, 0xc0, 0x18, 0x8d, 0xc9, 0x57, 0x1c, 0xd0, 0xe2, 0x1e, 0xec, 0xac, 0x5f, 0xbb, 0x19, 0xd2, 0x43, 0x49, 0x88, 0xe9, 0xcc, 0x10, 0x24, 0x45, 0x93, 0xef, 0x3a, 0x98, 0x09, 0x9f, 0x69, 0x48, 0x64, 0xa5, 0x62, 0x66, 0x1f, 0x92, 0x21, 0xec, 0x88, 0xe3, 0xdd, 0x0b, 0xc2, 0xf6, 0xe2, 0x7a, 0xc1, 0x28, 0xc3, 0x0c, 0xc1, 0xa8, 0x0f, 0x79, 0xec, 0x67, 0x0a, 0x22, 0xb0, 0x42, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11312 = { .name = "ecdsa_secp256k1_sha256_11312", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11312_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11312_msg, .msglen = 11, .sig = ecdsa_secp256k1_sha256_11312_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 557 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11313 for ECDSA, tcId is 558 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11313_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11313_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11313_sig[] = { 0xae, 0x45, 0x96, 0x40, 0xd5, 0xd1, 0x17, 0x9b, 0xe4, 0x7a, 0x47, 0xfa, 0x53, 0x8e, 0x16, 0xd9, 0x4d, 0xde, 0xa5, 0x58, 0x5e, 0x7a, 0x24, 0x48, 0x04, 0xa5, 0x17, 0x42, 0xc6, 0x86, 0x44, 0x3a, 0x6c, 0x8e, 0x30, 0xe5, 0x30, 0xa6, 0x34, 0xfa, 0xe8, 0x0b, 0x3c, 0xeb, 0x06, 0x29, 0x78, 0xb3, 0x9e, 0xdb, 0xe1, 0x97, 0x77, 0xe0, 0xa2, 0x45, 0x53, 0xb6, 0x88, 0x86, 0x18, 0x1f, 0xd8, 0x97, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11313 = { .name = "ecdsa_secp256k1_sha256_11313", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11313_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11313_msg, .msglen = 8, .sig = ecdsa_secp256k1_sha256_11313_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 558 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11314 for ECDSA, tcId is 559 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11314_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11314_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11314_sig[] = { 0x1c, 0xf3, 0x51, 0x7b, 0xa3, 0xbf, 0x2a, 0xb8, 0xb9, 0xea, 0xd4, 0xeb, 0xb6, 0xe8, 0x66, 0xcb, 0x88, 0xa1, 0xde, 0xac, 0xb6, 0xa7, 0x85, 0xd3, 0xb6, 0x3b, 0x48, 0x3c, 0xa0, 0x2a, 0xc4, 0x95, 0x24, 0x9a, 0x79, 0x8b, 0x73, 0x60, 0x6f, 0x55, 0xf5, 0xf1, 0xc7, 0x0d, 0xe6, 0x7c, 0xb1, 0xa0, 0xcf, 0xf9, 0x5d, 0x7d, 0xc5, 0x0b, 0x3a, 0x61, 0x7d, 0xf8, 0x61, 0xba, 0xd3, 0xc6, 0xb1, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11314 = { .name = "ecdsa_secp256k1_sha256_11314", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11314_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11314_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11314_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 559 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11315 for ECDSA, tcId is 560 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11315_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11315_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256k1_sha256_11315_sig[] = { 0xe6, 0x9b, 0x52, 0x38, 0x26, 0x5e, 0xa3, 0x5d, 0x77, 0xe4, 0xdd, 0x17, 0x22, 0x88, 0xd8, 0xce, 0xa1, 0x98, 0x10, 0xa1, 0x02, 0x92, 0x61, 0x7d, 0x59, 0x76, 0x51, 0x9d, 0xc5, 0x75, 0x7c, 0xb8, 0x4b, 0x03, 0xc5, 0xbc, 0x47, 0xe8, 0x26, 0xbd, 0xb2, 0x73, 0x28, 0xab, 0xd3, 0x8d, 0x30, 0x56, 0xd7, 0x74, 0x76, 0xb2, 0x13, 0x0f, 0x3d, 0xf6, 0xec, 0x48, 0x91, 0xaf, 0x08, 0xba, 0x1e, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11315 = { .name = "ecdsa_secp256k1_sha256_11315", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11315_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11315_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11315_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 560 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11316 for ECDSA, tcId is 561 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11316_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11316_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256k1_sha256_11316_sig[] = { 0x5f, 0x9d, 0x7d, 0x7c, 0x87, 0x0d, 0x08, 0x5f, 0xc1, 0xd4, 0x9f, 0xff, 0x69, 0xe4, 0xa2, 0x75, 0x81, 0x28, 0x00, 0xd2, 0xcf, 0x89, 0x73, 0xe7, 0x32, 0x58, 0x66, 0xcb, 0x40, 0xfa, 0x2b, 0x6f, 0x6d, 0x1f, 0x54, 0x91, 0xd9, 0xf7, 0x17, 0xa5, 0x97, 0xa1, 0x5f, 0xd5, 0x40, 0x40, 0x64, 0x86, 0xd7, 0x6a, 0x44, 0x69, 0x7b, 0x3f, 0x0d, 0x9d, 0x6d, 0xce, 0xf6, 0x66, 0x9f, 0x8a, 0x0a, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11316 = { .name = "ecdsa_secp256k1_sha256_11316", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11316_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11316_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11316_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 561 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11317 for ECDSA, tcId is 562 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11317_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11317_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11317_sig[] = { 0x0a, 0x7d, 0x5b, 0x19, 0x59, 0xf7, 0x1d, 0xf9, 0xf8, 0x17, 0x14, 0x6e, 0xe4, 0x9b, 0xd5, 0xc8, 0x9b, 0x43, 0x1e, 0x79, 0x93, 0xe2, 0xfd, 0xec, 0xab, 0x68, 0x58, 0x95, 0x7d, 0xa6, 0x85, 0xae, 0x0f, 0x8a, 0xad, 0x2d, 0x25, 0x46, 0x90, 0xbd, 0xc1, 0x3f, 0x34, 0xa4, 0xfe, 0xc4, 0x4a, 0x02, 0xfd, 0x74, 0x5a, 0x42, 0x2d, 0xf0, 0x5c, 0xcb, 0xb5, 0x46, 0x35, 0xa8, 0xb8, 0x6b, 0x96, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11317 = { .name = "ecdsa_secp256k1_sha256_11317", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11317_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11317_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11317_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 562 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11318 for ECDSA, tcId is 563 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11318_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11318_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11318_sig[] = { 0x79, 0xe8, 0x8b, 0xf5, 0x76, 0xb7, 0x4b, 0xc0, 0x7c, 0xa1, 0x42, 0x39, 0x5f, 0xda, 0x28, 0xf0, 0x3d, 0x3d, 0x5e, 0x64, 0x0b, 0x0b, 0x4f, 0xf0, 0x75, 0x2c, 0x6d, 0x94, 0xcd, 0x55, 0x34, 0x08, 0x32, 0xce, 0xa0, 0x5b, 0xd2, 0xd7, 0x06, 0xc8, 0xf6, 0x03, 0x6a, 0x50, 0x7e, 0x2a, 0xb7, 0x76, 0x60, 0x04, 0xf0, 0x90, 0x4e, 0x2e, 0x5c, 0x58, 0x62, 0x74, 0x9c, 0x00, 0x73, 0x24, 0x5d, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11318 = { .name = "ecdsa_secp256k1_sha256_11318", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11318_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11318_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11318_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 563 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11319 for ECDSA, tcId is 564 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11319_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11319_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11319_sig[] = { 0x9d, 0x54, 0xe0, 0x37, 0xa0, 0x02, 0x12, 0xb3, 0x77, 0xbc, 0x88, 0x74, 0x79, 0x8b, 0x8d, 0xa0, 0x80, 0x56, 0x4b, 0xbd, 0xf7, 0xe0, 0x75, 0x91, 0xb8, 0x61, 0x28, 0x58, 0x09, 0xd0, 0x14, 0x88, 0x18, 0xb4, 0xe5, 0x57, 0x66, 0x7a, 0x82, 0xbd, 0x95, 0x96, 0x5f, 0x07, 0x06, 0xf8, 0x1a, 0x29, 0x24, 0x3f, 0xbd, 0xd8, 0x69, 0x68, 0xa7, 0xeb, 0xeb, 0x43, 0x06, 0x9d, 0xb3, 0xb1, 0x8c, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11319 = { .name = "ecdsa_secp256k1_sha256_11319", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11319_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11319_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11319_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 564 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11320 for ECDSA, tcId is 565 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11320_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11320_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256k1_sha256_11320_sig[] = { 0x26, 0x64, 0xf1, 0xff, 0xa9, 0x82, 0xfe, 0xdb, 0xcc, 0x7c, 0xab, 0x1b, 0x8b, 0xc6, 0xe2, 0xcb, 0x42, 0x02, 0x18, 0xd2, 0xa6, 0x07, 0x7a, 0xd0, 0x8e, 0x59, 0x1b, 0xa9, 0xfe, 0xab, 0x33, 0xbd, 0x49, 0xf5, 0xc7, 0xcb, 0x51, 0x5e, 0x83, 0x87, 0x2a, 0x3d, 0x41, 0xb4, 0xcd, 0xb8, 0x5f, 0x24, 0x2a, 0xd9, 0xd6, 0x1a, 0x5b, 0xfc, 0x01, 0xde, 0xbf, 0xbb, 0x52, 0xc6, 0xc8, 0x4b, 0xa7, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11320 = { .name = "ecdsa_secp256k1_sha256_11320", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11320_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11320_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11320_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 565 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11321 for ECDSA, tcId is 566 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11321_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11321_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256k1_sha256_11321_sig[] = { 0x58, 0x27, 0x51, 0x83, 0x44, 0x84, 0x4f, 0xd6, 0xa7, 0xde, 0x73, 0xcb, 0xb0, 0xa6, 0xbe, 0xfd, 0xea, 0x7b, 0x13, 0xd2, 0xde, 0xe4, 0x47, 0x53, 0x17, 0xf0, 0xf1, 0x8f, 0xfc, 0x81, 0x52, 0x4b, 0xb0, 0xa3, 0x34, 0xb1, 0xf4, 0xb7, 0x74, 0xa5, 0xa2, 0x89, 0xf5, 0x53, 0x22, 0x4d, 0x28, 0x6d, 0x23, 0x9e, 0xf8, 0xa9, 0x09, 0x29, 0xed, 0x2d, 0x91, 0x42, 0x3e, 0x02, 0x4e, 0xb7, 0xfa, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11321 = { .name = "ecdsa_secp256k1_sha256_11321", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11321_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11321_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11321_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 566 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11322 for ECDSA, tcId is 567 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11322_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11322_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256k1_sha256_11322_sig[] = { 0x97, 0xab, 0x19, 0xbd, 0x13, 0x9c, 0xac, 0x31, 0x93, 0x25, 0x86, 0x92, 0x18, 0xb1, 0xbc, 0xe1, 0x11, 0x87, 0x5d, 0x63, 0xfb, 0x12, 0x09, 0x8a, 0x04, 0xb0, 0xcd, 0x59, 0xb6, 0xfd, 0xd3, 0xa3, 0xbc, 0xe2, 0x63, 0x15, 0xc5, 0xdb, 0xc7, 0xb8, 0xcf, 0xc3, 0x14, 0x25, 0xa9, 0xb8, 0x9b, 0xcc, 0xea, 0x7a, 0xa9, 0x47, 0x7d, 0x71, 0x1a, 0x4d, 0x37, 0x7f, 0x83, 0x3d, 0xcc, 0x28, 0xf8, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11322 = { .name = "ecdsa_secp256k1_sha256_11322", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11322_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11322_msg, .msglen = 10, .sig = ecdsa_secp256k1_sha256_11322_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 567 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11323 for ECDSA, tcId is 568 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11323_pubkey[] = { 0xb8, 0x38, 0xff, 0x44, 0xe5, 0xbc, 0x17, 0x7b, 0xf2, 0x11, 0x89, 0xd0, 0x76, 0x60, 0x82, 0xfc, 0x9d, 0x84, 0x32, 0x26, 0x88, 0x7f, 0xc9, 0x76, 0x03, 0x71, 0x10, 0x0b, 0x7e, 0xe2, 0x0a, 0x6f, 0xf0, 0xc9, 0xd7, 0x5b, 0xfb, 0xa7, 0xb3, 0x1a, 0x6b, 0xca, 0x19, 0x74, 0x49, 0x6e, 0xeb, 0x56, 0xde, 0x35, 0x70, 0x71, 0x95, 0x5d, 0x83, 0xc4, 0xb1, 0xba, 0xda, 0xa0, 0xb2, 0x18, 0x32, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11323_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_11323_sig[] = { 0x52, 0xc6, 0x83, 0x14, 0x4e, 0x44, 0x11, 0x9a, 0xe2, 0x01, 0x37, 0x49, 0xd4, 0x96, 0x4e, 0xf6, 0x75, 0x09, 0x27, 0x8f, 0x6d, 0x38, 0xba, 0x86, 0x9a, 0xdc, 0xfa, 0x69, 0x97, 0x0e, 0x12, 0x3d, 0x34, 0x79, 0x91, 0x01, 0x67, 0x40, 0x8f, 0x45, 0xbd, 0xa4, 0x20, 0xa6, 0x26, 0xec, 0x9c, 0x4e, 0xc7, 0x11, 0xc1, 0x27, 0x4b, 0xe0, 0x92, 0x19, 0x8b, 0x41, 0x87, 0xc0, 0x18, 0xb5, 0x62, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11323 = { .name = "ecdsa_secp256k1_sha256_11323", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11323_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11323_msg, .msglen = 9, .sig = ecdsa_secp256k1_sha256_11323_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 568 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11324 for ECDSA, tcId is 569 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11324_pubkey[] = { 0xbc, 0x75, 0xe8, 0x4b, 0xc8, 0x51, 0x76, 0xa3, 0x05, 0x59, 0xdb, 0x84, 0x3e, 0x5f, 0xbb, 0x36, 0x28, 0x52, 0x61, 0x20, 0xda, 0xe9, 0x22, 0x7d, 0xe0, 0x17, 0x93, 0x4a, 0xb1, 0x05, 0x26, 0xc0, 0xec, 0xcb, 0x6c, 0x30, 0xf0, 0x78, 0x1a, 0xcb, 0x6b, 0x70, 0x36, 0xee, 0x6d, 0xd2, 0xb9, 0xb7, 0xd7, 0x7c, 0x96, 0x32, 0x47, 0x26, 0x6e, 0x43, }; static const unsigned char ecdsa_secp224r1_sha224_11324_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11324_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe9, 0x5c, 0x1f, 0x47, 0x0f, 0xc1, 0xec, 0x22, 0xd6, 0xba, 0xa3, 0xa3, 0xd5, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11324 = { .name = "ecdsa_secp224r1_sha224_11324", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11324_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11324_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11324_sig, .siglen = 56, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 569 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11325 for ECDSA, tcId is 570 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11325_pubkey[] = { 0xbc, 0x75, 0xe8, 0x4b, 0xc8, 0x51, 0x76, 0xa3, 0x05, 0x59, 0xdb, 0x84, 0x3e, 0x5f, 0xbb, 0x36, 0x28, 0x52, 0x61, 0x20, 0xda, 0xe9, 0x22, 0x7d, 0xe0, 0x17, 0x93, 0x4a, 0xb1, 0x05, 0x26, 0xc0, 0xec, 0xcb, 0x6c, 0x30, 0xf0, 0x78, 0x1a, 0xcb, 0x6b, 0x70, 0x36, 0xee, 0x6d, 0xd2, 0xb9, 0xb7, 0xd7, 0x7c, 0x96, 0x32, 0x47, 0x26, 0x6e, 0x43, }; static const unsigned char ecdsa_secp224r1_sha224_11325_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11325_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11325 = { .name = "ecdsa_secp224r1_sha224_11325", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11325_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11325_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11325_sig, .siglen = 56, .result = -1, .comment = "r too large, tcId is 570 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11326 for ECDSA, tcId is 571 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11326_pubkey[] = { 0x0b, 0xfe, 0xfa, 0x69, 0xd4, 0x97, 0x0f, 0x77, 0xe2, 0x59, 0x09, 0x9b, 0x01, 0xbb, 0xb8, 0x69, 0x24, 0x8e, 0x48, 0x59, 0xed, 0x20, 0xc3, 0xd5, 0x0d, 0xd8, 0x30, 0x81, 0xe1, 0xf4, 0x7e, 0xb8, 0x2f, 0x10, 0xf7, 0x11, 0x66, 0x81, 0x6a, 0xd2, 0xa5, 0x33, 0xb3, 0x41, 0x88, 0x3f, 0x9c, 0xdd, 0x88, 0x56, 0x7c, 0x0f, 0xa9, 0xb2, 0x31, 0x2e, }; static const unsigned char ecdsa_secp224r1_sha224_11326_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11326_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11326 = { .name = "ecdsa_secp224r1_sha224_11326", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11326_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11326_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11326_sig, .siglen = 56, .result = 1, .comment = "r,s are large, tcId is 571 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11327 for ECDSA, tcId is 572 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11327_pubkey[] = { 0x69, 0x62, 0x7a, 0x4c, 0x09, 0x57, 0xfc, 0x76, 0xdf, 0x16, 0x98, 0xc3, 0x7b, 0x9c, 0x6e, 0xfe, 0xdf, 0x07, 0x68, 0xf9, 0x79, 0x7d, 0xa8, 0x47, 0x49, 0xa6, 0xb6, 0x07, 0x0b, 0xa9, 0x0d, 0xa7, 0x45, 0x15, 0xd0, 0x02, 0xf3, 0xec, 0xc6, 0xfb, 0xc7, 0x61, 0x9c, 0x66, 0xb9, 0x62, 0xdb, 0x97, 0xf3, 0x61, 0x93, 0x3f, 0xb2, 0xf9, 0xb9, 0x43, }; static const unsigned char ecdsa_secp224r1_sha224_11327_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11327_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x50, 0x52, 0x69, 0x1b, 0x8d, 0xc8, 0x9d, 0xeb, 0xad, 0x36, 0x04, 0x66, 0xf2, 0xa3, 0x9e, 0x82, 0xe8, 0xae, 0x2a, 0xef, 0xb7, 0x7c, 0x3c, 0x92, 0xad, 0x7c, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11327 = { .name = "ecdsa_secp224r1_sha224_11327", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11327_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11327_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11327_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 572 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11328 for ECDSA, tcId is 573 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11328_pubkey[] = { 0x65, 0x14, 0xa1, 0xd0, 0xaa, 0x8f, 0x7f, 0x51, 0x6e, 0xfe, 0xe5, 0x52, 0xd0, 0x94, 0x8f, 0x6c, 0x44, 0xca, 0xa2, 0xf5, 0xb8, 0x48, 0x99, 0x10, 0x75, 0x3c, 0x74, 0x18, 0xe1, 0x26, 0xa8, 0xaa, 0xdd, 0x21, 0x3f, 0x6f, 0x38, 0xe2, 0x7b, 0x16, 0xb9, 0x2f, 0xd6, 0xa9, 0xd0, 0x1b, 0x10, 0xec, 0x6d, 0xb1, 0x0f, 0x2a, 0xe7, 0xe2, 0x4c, 0x31, }; static const unsigned char ecdsa_secp224r1_sha224_11328_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11328_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x19, 0xab, 0x4d, 0x3e, 0xbf, 0x5a, 0x1a, 0x49, 0xd7, 0x65, 0x90, 0x93, 0x08, 0xda, 0xa8, 0x8c, 0x2b, 0x7b, 0xe3, 0x96, 0x9d, 0xb5, 0x52, 0xea, 0x30, 0x56, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11328 = { .name = "ecdsa_secp224r1_sha224_11328", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11328_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11328_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11328_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 573 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11329 for ECDSA, tcId is 574 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11329_pubkey[] = { 0x5a, 0x1f, 0xd0, 0x6d, 0x0c, 0x6a, 0xe7, 0x4c, 0xd0, 0x8b, 0x8a, 0x94, 0xb0, 0x13, 0x57, 0xc1, 0x10, 0xeb, 0x93, 0x04, 0xce, 0x58, 0xb9, 0x3d, 0xe7, 0xb0, 0x2e, 0x00, 0x2c, 0x82, 0x4e, 0xca, 0x43, 0x86, 0xc5, 0xfc, 0xfb, 0xa6, 0x82, 0xf9, 0xdc, 0xd8, 0x8b, 0x99, 0xf5, 0xfe, 0x90, 0xf6, 0xc6, 0x20, 0xc5, 0x0d, 0x42, 0x05, 0x09, 0xe4, }; static const unsigned char ecdsa_secp224r1_sha224_11329_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11329_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11329 = { .name = "ecdsa_secp224r1_sha224_11329", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11329_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11329_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11329_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 574 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11330 for ECDSA, tcId is 575 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11330_pubkey[] = { 0x99, 0xc2, 0x73, 0x37, 0x04, 0x04, 0x65, 0x3c, 0x76, 0x8c, 0x5d, 0x63, 0x8e, 0x92, 0x09, 0xe8, 0x1e, 0xbb, 0x03, 0xe1, 0x32, 0xa3, 0x66, 0x9a, 0x3c, 0x23, 0xc8, 0xc7, 0xc0, 0x68, 0xe0, 0x57, 0x2c, 0x09, 0xa9, 0x68, 0xea, 0xa4, 0xb9, 0x27, 0x81, 0xfe, 0x0a, 0xa7, 0x30, 0x30, 0x99, 0xb3, 0x74, 0xb9, 0xc2, 0xfa, 0x5d, 0xa0, 0x58, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_11330_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11330_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11330 = { .name = "ecdsa_secp224r1_sha224_11330", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11330_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11330_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11330_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 575 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11331 for ECDSA, tcId is 576 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11331_pubkey[] = { 0xbe, 0xd2, 0x14, 0x6c, 0x8c, 0x62, 0xdd, 0xc3, 0x13, 0x27, 0xc7, 0xf3, 0x3d, 0x3a, 0x8f, 0xeb, 0x2c, 0x3e, 0xf8, 0xe4, 0x41, 0x4f, 0xe5, 0x5f, 0x35, 0x45, 0x14, 0x45, 0x36, 0xe2, 0x88, 0xf6, 0x97, 0x84, 0xe2, 0xa2, 0xd1, 0xba, 0x74, 0x8b, 0x0b, 0x3e, 0x07, 0xff, 0xc3, 0x1a, 0xf0, 0x7f, 0xd4, 0x2c, 0x51, 0x9a, 0x5c, 0x48, 0x5d, 0x63, }; static const unsigned char ecdsa_secp224r1_sha224_11331_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11331_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11331 = { .name = "ecdsa_secp224r1_sha224_11331", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11331_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11331_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11331_sig, .siglen = 56, .result = 1, .comment = "small r and s, tcId is 576 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11332 for ECDSA, tcId is 577 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11332_pubkey[] = { 0xbe, 0xd2, 0x14, 0x6c, 0x8c, 0x62, 0xdd, 0xc3, 0x13, 0x27, 0xc7, 0xf3, 0x3d, 0x3a, 0x8f, 0xeb, 0x2c, 0x3e, 0xf8, 0xe4, 0x41, 0x4f, 0xe5, 0x5f, 0x35, 0x45, 0x14, 0x45, 0x36, 0xe2, 0x88, 0xf6, 0x97, 0x84, 0xe2, 0xa2, 0xd1, 0xba, 0x74, 0x8b, 0x0b, 0x3e, 0x07, 0xff, 0xc3, 0x1a, 0xf0, 0x7f, 0xd4, 0x2c, 0x51, 0x9a, 0x5c, 0x48, 0x5d, 0x63, }; static const unsigned char ecdsa_secp224r1_sha224_11332_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11332_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11332 = { .name = "ecdsa_secp224r1_sha224_11332", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11332_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11332_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11332_sig, .siglen = 56, .result = -1, .comment = "r is larger than n, tcId is 577 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11333 for ECDSA, tcId is 578 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11333_pubkey[] = { 0xa8, 0x33, 0x21, 0xae, 0xce, 0xa4, 0xa1, 0xfc, 0xa6, 0xbe, 0x1a, 0xdd, 0x7a, 0x93, 0xab, 0x67, 0x9e, 0xf1, 0x65, 0xee, 0x24, 0x99, 0x9e, 0xed, 0xf5, 0x0a, 0x2d, 0xca, 0x00, 0xd1, 0xbb, 0x51, 0x22, 0xc5, 0x39, 0xd1, 0x76, 0x69, 0xe7, 0xb8, 0x05, 0xd1, 0xef, 0x3c, 0x83, 0xf8, 0x1b, 0x99, 0x1a, 0xf0, 0xc3, 0x80, 0x42, 0x9f, 0xad, 0x85, }; static const unsigned char ecdsa_secp224r1_sha224_11333_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11333_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x6f, 0x00, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11333 = { .name = "ecdsa_secp224r1_sha224_11333", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11333_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11333_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11333_sig, .siglen = 56, .result = -1, .comment = "s is larger than n, tcId is 578 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11334 for ECDSA, tcId is 579 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11334_pubkey[] = { 0x48, 0xae, 0xa0, 0xb4, 0xcb, 0xcb, 0xeb, 0xa3, 0x11, 0xd7, 0xd9, 0x0a, 0x3a, 0x68, 0xc3, 0xaf, 0x32, 0xd9, 0xaa, 0xd3, 0xea, 0x9e, 0xcc, 0xb7, 0x57, 0x35, 0x99, 0xa6, 0xdd, 0x5e, 0x20, 0x21, 0xbd, 0x90, 0x32, 0x28, 0xe2, 0xd4, 0x6f, 0xaa, 0x9d, 0xd2, 0x94, 0xa0, 0x79, 0x3f, 0x81, 0xad, 0x35, 0x2f, 0x44, 0x8e, 0x3e, 0x3b, 0x5d, 0xdc, }; static const unsigned char ecdsa_secp224r1_sha224_11334_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11334_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0xc9, 0x93, 0x26, 0x4c, 0x99, 0x32, 0x64, 0x11, 0xd2, 0xe5, 0x5b, 0x32, 0x14, 0xa8, 0xd6, 0x75, 0x28, 0x81, 0x2a, 0x55, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11334 = { .name = "ecdsa_secp224r1_sha224_11334", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11334_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11334_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11334_sig, .siglen = 56, .result = 1, .comment = "small r and s^-1, tcId is 579 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11335 for ECDSA, tcId is 580 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11335_pubkey[] = { 0x3b, 0x11, 0x71, 0x3a, 0x7f, 0xd7, 0xaa, 0x51, 0x6b, 0xa2, 0x52, 0x9a, 0xd2, 0x8a, 0xc4, 0xce, 0x9b, 0x6d, 0xdc, 0x0d, 0x9b, 0xf4, 0xbe, 0x5f, 0xd2, 0x35, 0xb8, 0x1c, 0x13, 0x92, 0x77, 0xb7, 0x72, 0x52, 0x7c, 0xd2, 0xe8, 0x57, 0xd2, 0x12, 0x40, 0x2f, 0x80, 0xd7, 0xf3, 0xc2, 0x37, 0xe4, 0x73, 0x05, 0x09, 0x01, 0x2f, 0xab, 0x97, 0xc6, }; static const unsigned char ecdsa_secp224r1_sha224_11335_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11335_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x3e, 0x85, 0xd5, 0x64, 0x74, 0xb5, 0xc5, 0x5f, 0xbe, 0x86, 0x60, 0x84, 0x42, 0xa8, 0x4b, 0x2b, 0xf0, 0x93, 0xb7, 0xd7, 0x5f, 0x53, 0xa4, 0x72, 0x50, 0xe1, 0xc7, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11335 = { .name = "ecdsa_secp224r1_sha224_11335", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11335_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11335_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11335_sig, .siglen = 56, .result = 1, .comment = "smallish r and s^-1, tcId is 580 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11336 for ECDSA, tcId is 581 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11336_pubkey[] = { 0x7b, 0x1b, 0xf2, 0xb1, 0x1f, 0x43, 0xf7, 0x6f, 0x62, 0x32, 0x70, 0x49, 0x9a, 0x32, 0x54, 0x50, 0xa8, 0x93, 0x35, 0x90, 0xc0, 0x9e, 0x13, 0x2b, 0x83, 0x14, 0x70, 0x33, 0x10, 0x94, 0x85, 0xd2, 0xa2, 0x85, 0x0a, 0xa0, 0xed, 0x45, 0x7e, 0x8d, 0xe7, 0x03, 0x98, 0x26, 0x5e, 0xa2, 0x7c, 0xbe, 0xa2, 0xa5, 0x3c, 0xc3, 0xa9, 0x5d, 0xb9, 0x98, }; static const unsigned char ecdsa_secp224r1_sha224_11336_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11336_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x02, 0xfd, 0x00, 0x43, 0xa4, 0xfd, 0x2d, 0xa3, 0x17, 0x24, 0x73, 0x08, 0xc7, 0x4d, 0xc6, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11336 = { .name = "ecdsa_secp224r1_sha224_11336", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11336_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11336_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11336_sig, .siglen = 56, .result = 1, .comment = "100-bit r and small s^-1, tcId is 581 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11337 for ECDSA, tcId is 582 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11337_pubkey[] = { 0x38, 0x24, 0x3c, 0xf4, 0xe5, 0x48, 0x46, 0x60, 0x56, 0x44, 0x84, 0xd4, 0x97, 0xef, 0x2a, 0xfe, 0x52, 0x8f, 0x28, 0xfd, 0xa8, 0xc3, 0x69, 0x7d, 0x10, 0x75, 0x0a, 0x77, 0xb5, 0xc8, 0x7a, 0x1b, 0x30, 0x90, 0xe5, 0x92, 0xf0, 0x47, 0xd1, 0xba, 0x44, 0xb8, 0xf3, 0xba, 0x1e, 0xc0, 0x76, 0xfd, 0x8e, 0x81, 0x15, 0xc6, 0xfd, 0x67, 0x1f, 0x22, }; static const unsigned char ecdsa_secp224r1_sha224_11337_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11337_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11337 = { .name = "ecdsa_secp224r1_sha224_11337", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11337_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11337_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11337_sig, .siglen = 56, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 582 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11338 for ECDSA, tcId is 583 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11338_pubkey[] = { 0x31, 0x47, 0x17, 0x31, 0x05, 0x15, 0x9d, 0x5a, 0x66, 0x54, 0x2e, 0x89, 0x1d, 0xc5, 0xc1, 0xe8, 0x31, 0xc3, 0x90, 0xd7, 0x65, 0x56, 0xa2, 0x1f, 0x46, 0xb3, 0xf1, 0x5e, 0xd9, 0x68, 0x0c, 0x6e, 0xaa, 0x41, 0x36, 0x10, 0x0e, 0x87, 0xbf, 0xa6, 0x59, 0x2b, 0x8f, 0x05, 0x9a, 0xe1, 0x45, 0x0c, 0xf1, 0x09, 0x80, 0x69, 0x10, 0x49, 0xa5, 0xe5, }; static const unsigned char ecdsa_secp224r1_sha224_11338_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11338_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0xd0, 0x54, 0x34, 0xab, 0xac, 0xd8, 0x59, 0xed, 0x74, 0x18, 0x5e, 0x75, 0xb7, 0x51, 0xc6, 0xd9, 0xf6, 0x0c, 0x79, 0x21, 0xda, 0xcf, 0xbb, 0x8e, 0x19, 0xcd, 0xba, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11338 = { .name = "ecdsa_secp224r1_sha224_11338", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11338_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11338_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11338_sig, .siglen = 56, .result = 1, .comment = "100-bit r and s^-1, tcId is 583 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11339 for ECDSA, tcId is 584 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11339_pubkey[] = { 0x76, 0x15, 0x2d, 0x39, 0xdf, 0x62, 0xcb, 0xd7, 0x63, 0x19, 0xde, 0x7d, 0x35, 0xbd, 0xb1, 0xa3, 0x99, 0x4b, 0xaf, 0x4f, 0x5c, 0xa5, 0xfc, 0x98, 0x4e, 0x95, 0x02, 0x1c, 0xb1, 0xb3, 0xa3, 0x80, 0x62, 0x2e, 0xbb, 0xd2, 0x66, 0x41, 0x3e, 0xf0, 0xba, 0x15, 0xd1, 0x21, 0xaf, 0xc5, 0xd2, 0xd5, 0x1b, 0xa7, 0x97, 0x9d, 0xa2, 0x9c, 0x40, 0x07, }; static const unsigned char ecdsa_secp224r1_sha224_11339_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11339_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xbd, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11339 = { .name = "ecdsa_secp224r1_sha224_11339", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11339_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11339_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11339_sig, .siglen = 56, .result = 1, .comment = "r and s^-1 are close to n, tcId is 584 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11340 for ECDSA, tcId is 585 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11340_pubkey[] = { 0x8e, 0x7d, 0x40, 0x44, 0xd0, 0xae, 0xce, 0x8c, 0x81, 0x4f, 0xd2, 0xe4, 0xa5, 0x40, 0xd6, 0xce, 0x14, 0xe3, 0xe9, 0x24, 0x98, 0xa4, 0xf6, 0xd2, 0x76, 0x01, 0x70, 0xe0, 0xe7, 0xed, 0xb0, 0xb8, 0xe7, 0x21, 0x57, 0xb4, 0x26, 0x82, 0x78, 0x7a, 0x43, 0xf7, 0x86, 0x32, 0xb5, 0xbc, 0x8d, 0x5c, 0xa0, 0x84, 0xb0, 0x8d, 0xdd, 0x74, 0x29, 0x02, }; static const unsigned char ecdsa_secp224r1_sha224_11340_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11340_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11340 = { .name = "ecdsa_secp224r1_sha224_11340", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11340_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11340_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11340_sig, .siglen = 56, .result = 1, .comment = "s == 1, tcId is 585 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11341 for ECDSA, tcId is 586 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11341_pubkey[] = { 0x8e, 0x7d, 0x40, 0x44, 0xd0, 0xae, 0xce, 0x8c, 0x81, 0x4f, 0xd2, 0xe4, 0xa5, 0x40, 0xd6, 0xce, 0x14, 0xe3, 0xe9, 0x24, 0x98, 0xa4, 0xf6, 0xd2, 0x76, 0x01, 0x70, 0xe0, 0xe7, 0xed, 0xb0, 0xb8, 0xe7, 0x21, 0x57, 0xb4, 0x26, 0x82, 0x78, 0x7a, 0x43, 0xf7, 0x86, 0x32, 0xb5, 0xbc, 0x8d, 0x5c, 0xa0, 0x84, 0xb0, 0x8d, 0xdd, 0x74, 0x29, 0x02, }; static const unsigned char ecdsa_secp224r1_sha224_11341_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11341_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11341 = { .name = "ecdsa_secp224r1_sha224_11341", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11341_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11341_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11341_sig, .siglen = 56, .result = -1, .comment = "s == 0, tcId is 586 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11342 for ECDSA, tcId is 587 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11342_pubkey[] = { 0x86, 0xee, 0xf5, 0x98, 0x04, 0x0b, 0xc7, 0xce, 0xb7, 0xcf, 0x07, 0xf0, 0xee, 0x72, 0xe4, 0xe9, 0x47, 0xdc, 0x12, 0x00, 0x23, 0xbf, 0x55, 0x2c, 0x0b, 0x48, 0x41, 0x70, 0xbf, 0xfa, 0x63, 0x38, 0x52, 0xe6, 0xc6, 0xe2, 0xa4, 0x1d, 0x61, 0xcf, 0x22, 0x3a, 0x86, 0xb6, 0xec, 0xfc, 0xf6, 0x82, 0xcc, 0xa8, 0xc3, 0x87, 0x94, 0x92, 0x5f, 0x4d, }; static const unsigned char ecdsa_secp224r1_sha224_11342_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11342_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11342 = { .name = "ecdsa_secp224r1_sha224_11342", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11342_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11342_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11342_sig, .siglen = 56, .result = -1, .comment = "point at infinity during verify, tcId is 587 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11343 for ECDSA, tcId is 588 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11343_pubkey[] = { 0xa5, 0x12, 0x91, 0xff, 0xa4, 0xa1, 0x64, 0xd5, 0x00, 0xc4, 0x92, 0x8a, 0x2a, 0xae, 0xd2, 0x02, 0xc6, 0xaa, 0x99, 0x7d, 0x64, 0x7d, 0x45, 0xda, 0xca, 0x6e, 0x93, 0xd1, 0x5f, 0x3f, 0x17, 0xca, 0x4d, 0x88, 0xa2, 0x8f, 0xc1, 0x4e, 0xd2, 0xdd, 0x19, 0x28, 0x07, 0x44, 0xdf, 0x9e, 0x11, 0xde, 0xb1, 0x5a, 0x77, 0x80, 0x9f, 0xa8, 0xdd, 0xec, }; static const unsigned char ecdsa_secp224r1_sha224_11343_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11343_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11343 = { .name = "ecdsa_secp224r1_sha224_11343", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11343_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11343_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11343_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 588 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11344 for ECDSA, tcId is 589 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11344_pubkey[] = { 0x4d, 0x3b, 0xd1, 0xf9, 0x14, 0x36, 0xea, 0xec, 0xc9, 0x6e, 0x75, 0x50, 0x0c, 0x0a, 0x2b, 0x3d, 0x9d, 0xbc, 0x1e, 0x1e, 0xd5, 0x96, 0x5b, 0x65, 0x7b, 0x26, 0x8d, 0x8f, 0x12, 0x4e, 0x1a, 0xb8, 0xf1, 0x63, 0x3a, 0x0a, 0xdf, 0xe6, 0xd7, 0x68, 0xa4, 0x20, 0xca, 0x67, 0x73, 0x57, 0xcc, 0xac, 0x97, 0x4b, 0xc7, 0xc4, 0x5b, 0x9f, 0x26, 0xff, }; static const unsigned char ecdsa_secp224r1_sha224_11344_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11344_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11344 = { .name = "ecdsa_secp224r1_sha224_11344", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11344_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11344_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11344_sig, .siglen = 56, .result = 1, .comment = "edge case for signature malleability, tcId is 589 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11345 for ECDSA, tcId is 590 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11345_pubkey[] = { 0xb7, 0xfd, 0x6e, 0x16, 0x89, 0x61, 0x27, 0xb2, 0xd4, 0x34, 0x1f, 0xb4, 0x1c, 0x42, 0x74, 0x79, 0x7b, 0x73, 0x9b, 0xd5, 0xb7, 0x56, 0xc4, 0x73, 0x7f, 0x8f, 0xee, 0x55, 0xeb, 0x01, 0xd9, 0x14, 0xe4, 0xdf, 0xdf, 0x60, 0x6e, 0x91, 0x98, 0xbf, 0x03, 0xdf, 0xc7, 0x73, 0x4a, 0xbd, 0x0f, 0xad, 0xd4, 0x19, 0x3e, 0xd0, 0x51, 0x5f, 0x3c, 0xd7, }; static const unsigned char ecdsa_secp224r1_sha224_11345_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11345_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x0b, 0x04, 0x1f, 0x88, 0x4d, 0x64, 0x8c, 0xc3, 0x45, 0xe4, 0x60, 0x00, 0x78, 0xeb, 0x79, 0x07, 0x08, 0xcc, 0xad, 0x57, 0x6d, 0x4a, 0xbe, 0x3c, 0x94, 0x3a, 0xa3, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11345 = { .name = "ecdsa_secp224r1_sha224_11345", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11345_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11345_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11345_sig, .siglen = 56, .result = 1, .comment = "u1 == 1, tcId is 590 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11346 for ECDSA, tcId is 591 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11346_pubkey[] = { 0x16, 0x1f, 0xe9, 0x6b, 0xac, 0x1f, 0x15, 0x1e, 0x05, 0x65, 0xa7, 0xb2, 0xc3, 0xc0, 0x89, 0xd7, 0x9d, 0xf5, 0xd2, 0x98, 0xe7, 0xca, 0x48, 0x96, 0x4f, 0xdd, 0x86, 0x57, 0x4c, 0x62, 0x47, 0xdb, 0xd4, 0x1f, 0x23, 0x5a, 0x14, 0x97, 0x36, 0x12, 0x2e, 0x96, 0xe6, 0x73, 0x50, 0x54, 0xda, 0xc5, 0x8c, 0x23, 0x40, 0x31, 0x15, 0x3f, 0xb8, 0x2f, }; static const unsigned char ecdsa_secp224r1_sha224_11346_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11346_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xf4, 0xfb, 0xe0, 0x77, 0xb2, 0x9b, 0x73, 0x3c, 0xba, 0x1b, 0x9f, 0xff, 0x87, 0x13, 0x9d, 0x9b, 0xd7, 0xec, 0x42, 0xe6, 0xa6, 0x92, 0x6b, 0x08, 0xc8, 0x21, 0x87, 0x15, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11346 = { .name = "ecdsa_secp224r1_sha224_11346", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11346_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11346_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11346_sig, .siglen = 56, .result = 1, .comment = "u1 == n - 1, tcId is 591 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11347 for ECDSA, tcId is 592 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11347_pubkey[] = { 0x88, 0x2d, 0xff, 0x23, 0x9c, 0xdf, 0x9a, 0x08, 0x12, 0xca, 0xaf, 0x38, 0x4a, 0xde, 0x87, 0x49, 0x71, 0x31, 0xe6, 0xfb, 0x8c, 0xa1, 0x84, 0xc2, 0x7f, 0x9f, 0xb4, 0xd6, 0x00, 0x32, 0xfb, 0xe6, 0x49, 0x75, 0x1a, 0xb5, 0xbc, 0x38, 0x6f, 0x09, 0xdc, 0xab, 0x56, 0xa6, 0xdf, 0x65, 0x63, 0x48, 0x0a, 0x4b, 0xec, 0x5e, 0xd7, 0x22, 0x98, 0xb1, }; static const unsigned char ecdsa_secp224r1_sha224_11347_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11347_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11347 = { .name = "ecdsa_secp224r1_sha224_11347", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11347_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11347_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11347_sig, .siglen = 56, .result = 1, .comment = "u2 == 1, tcId is 592 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11348 for ECDSA, tcId is 593 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11348_pubkey[] = { 0xcd, 0x8f, 0x96, 0x3a, 0x16, 0x94, 0xe8, 0x32, 0x41, 0xa7, 0x17, 0x2f, 0x78, 0x2b, 0x21, 0x17, 0x86, 0xbc, 0x47, 0xb3, 0x1c, 0xe5, 0xca, 0xd6, 0xab, 0xc8, 0x65, 0xc1, 0x93, 0x10, 0xd5, 0x90, 0xa0, 0x9e, 0x14, 0x6c, 0x08, 0xfe, 0x44, 0x3d, 0xf7, 0x6e, 0xc2, 0x2e, 0xa9, 0x5a, 0x62, 0xa9, 0x0c, 0x7a, 0xce, 0xf1, 0x12, 0x7e, 0x4d, 0x71, }; static const unsigned char ecdsa_secp224r1_sha224_11348_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11348_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x0f, 0x17, 0x40, 0x7b, 0x4a, 0xd4, 0x0d, 0x3e, 0x1b, 0x83, 0x92, 0xe8, 0x1c, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11348 = { .name = "ecdsa_secp224r1_sha224_11348", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11348_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11348_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11348_sig, .siglen = 56, .result = 1, .comment = "u2 == n - 1, tcId is 593 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11349 for ECDSA, tcId is 594 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11349_pubkey[] = { 0xb5, 0x64, 0x85, 0x2e, 0xcb, 0x06, 0x5e, 0x52, 0xdb, 0x2b, 0x0c, 0xf9, 0xac, 0xdd, 0x34, 0x99, 0xb9, 0xb0, 0x04, 0x53, 0x31, 0xa7, 0x8e, 0x27, 0xaa, 0xb1, 0x2d, 0x17, 0x3b, 0xcc, 0xbf, 0x53, 0x75, 0xfc, 0x99, 0x60, 0x48, 0x83, 0xf2, 0x3b, 0x83, 0xf4, 0x6f, 0x3e, 0x3c, 0x36, 0xc4, 0x6d, 0xda, 0x56, 0x22, 0x7b, 0x77, 0x14, 0x97, 0xed, }; static const unsigned char ecdsa_secp224r1_sha224_11349_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11349_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xae, 0x56, 0xb5, 0x2d, 0x6f, 0x21, 0x84, 0x41, 0x17, 0x4c, 0x20, 0x00, 0x28, 0x4d, 0xe2, 0x19, 0x98, 0xbf, 0x84, 0x9b, 0xdc, 0x57, 0x05, 0x97, 0xc4, 0x50, 0xfd, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11349 = { .name = "ecdsa_secp224r1_sha224_11349", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11349_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11349_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11349_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 594 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11350 for ECDSA, tcId is 595 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11350_pubkey[] = { 0xc6, 0x78, 0x0f, 0xe5, 0x2e, 0x48, 0xd8, 0x90, 0xa9, 0xec, 0xe0, 0xd4, 0xed, 0xa2, 0xab, 0x9a, 0xd7, 0xc1, 0x8c, 0xbf, 0xa9, 0xfd, 0x74, 0x72, 0x15, 0xfc, 0x2c, 0xd1, 0x44, 0x63, 0xd4, 0x17, 0xb8, 0xb1, 0x53, 0x83, 0x29, 0x0a, 0x12, 0xcc, 0x3d, 0x5f, 0x1a, 0x5d, 0x24, 0xdf, 0x26, 0x07, 0xbf, 0x73, 0xdb, 0xc6, 0xe6, 0x1d, 0x0d, 0xc8, }; static const unsigned char ecdsa_secp224r1_sha224_11350_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11350_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0xad, 0xcc, 0xc5, 0xca, 0xfa, 0x7d, 0x90, 0xd9, 0xf2, 0x0d, 0x1f, 0x3f, 0xbe, 0x18, 0x24, 0x1e, 0x38, 0xcd, 0x6e, 0x99, 0x82, 0x11, 0x35, 0xa8, 0x08, 0xfe, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11350 = { .name = "ecdsa_secp224r1_sha224_11350", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11350_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11350_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11350_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 595 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11351 for ECDSA, tcId is 596 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11351_pubkey[] = { 0x11, 0x12, 0x85, 0xcc, 0x94, 0x38, 0x90, 0xd0, 0x1f, 0x0e, 0xf4, 0x96, 0xa0, 0xab, 0x99, 0xc5, 0xf8, 0x79, 0x12, 0x79, 0x41, 0x19, 0x37, 0x17, 0xec, 0xfe, 0xc0, 0xad, 0x35, 0xce, 0xa3, 0x28, 0x62, 0xb4, 0x98, 0x55, 0x80, 0xa4, 0x27, 0x7d, 0x60, 0x62, 0x21, 0x0f, 0xf4, 0x2a, 0x52, 0x9e, 0xb8, 0x78, 0xb9, 0x01, 0x18, 0x37, 0x43, 0xde, }; static const unsigned char ecdsa_secp224r1_sha224_11351_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11351_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x70, 0x51, 0xd7, 0xe4, 0x8b, 0x9f, 0x85, 0x2e, 0x25, 0x8c, 0xbe, 0xde, 0x1f, 0x26, 0xae, 0xdc, 0x2e, 0x86, 0x2c, 0xa9, 0xf6, 0x3c, 0x73, 0x14, 0xc6, 0xab, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11351 = { .name = "ecdsa_secp224r1_sha224_11351", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11351_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11351_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11351_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 596 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11352 for ECDSA, tcId is 597 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11352_pubkey[] = { 0xa7, 0x0c, 0xf7, 0x75, 0xed, 0x0c, 0x3c, 0x6b, 0xc9, 0x7e, 0x7c, 0x43, 0xe8, 0x55, 0xc6, 0x35, 0xd0, 0xb5, 0x94, 0x01, 0x1e, 0x59, 0xdf, 0x12, 0xa8, 0xe2, 0x8e, 0xe1, 0x48, 0xda, 0x11, 0x3b, 0x01, 0x45, 0x46, 0x96, 0xdb, 0xe0, 0x66, 0xc0, 0x36, 0x80, 0x55, 0x00, 0x0a, 0x92, 0xad, 0x10, 0x18, 0xf1, 0xf6, 0xf2, 0xcc, 0xf8, 0xa2, 0x6b, }; static const unsigned char ecdsa_secp224r1_sha224_11352_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11352_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x78, 0x7b, 0x89, 0xe7, 0x2c, 0xaf, 0xea, 0x47, 0xf4, 0xfb, 0xe0, 0x77, 0xb2, 0x9b, 0x05, 0x68, 0x75, 0xfe, 0xb7, 0xf7, 0x70, 0x10, 0x65, 0x28, 0xbb, 0xee, 0x29, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11352 = { .name = "ecdsa_secp224r1_sha224_11352", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11352_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11352_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11352_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 597 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11353 for ECDSA, tcId is 598 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11353_pubkey[] = { 0xa2, 0xe4, 0x20, 0x35, 0xb4, 0xfe, 0x09, 0x6e, 0xca, 0xcb, 0x4b, 0x1a, 0x06, 0x56, 0x5a, 0xf6, 0x4c, 0xfc, 0xc2, 0xb0, 0x4f, 0x01, 0x78, 0xbc, 0x10, 0x07, 0x32, 0xda, 0x00, 0xf2, 0xf5, 0x0e, 0xa5, 0x9d, 0x2a, 0x39, 0xcc, 0xee, 0x2e, 0xb5, 0xec, 0xa2, 0x16, 0xc4, 0x74, 0x8d, 0xa1, 0x8d, 0x78, 0x39, 0x07, 0x96, 0x3f, 0x5c, 0xb3, 0xe4, }; static const unsigned char ecdsa_secp224r1_sha224_11353_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11353_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb8, 0x9e, 0x72, 0xca, 0xfe, 0xa4, 0x7f, 0x4f, 0xbe, 0x07, 0x7b, 0x29, 0xb7, 0x33, 0x23, 0x56, 0x5b, 0x67, 0x13, 0xb9, 0x80, 0x90, 0xe2, 0xa4, 0xa8, 0xd8, 0x6e, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11353 = { .name = "ecdsa_secp224r1_sha224_11353", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11353_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11353_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11353_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 598 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11354 for ECDSA, tcId is 599 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11354_pubkey[] = { 0xf3, 0x78, 0x96, 0x3f, 0x5e, 0xf0, 0x89, 0x3b, 0x5f, 0x89, 0xd5, 0x8f, 0x73, 0xe9, 0xf5, 0xde, 0x69, 0x28, 0x43, 0x63, 0x7b, 0x8d, 0x9f, 0x30, 0x1a, 0x77, 0x53, 0x74, 0xf5, 0x3e, 0x86, 0x27, 0xb4, 0x2d, 0x2d, 0x6d, 0x54, 0x0c, 0x0e, 0x23, 0x8d, 0x4a, 0xbc, 0x95, 0x76, 0xb7, 0xf2, 0x02, 0xa9, 0x77, 0x74, 0xe2, 0xee, 0x9e, 0x58, 0xa6, }; static const unsigned char ecdsa_secp224r1_sha224_11354_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11354_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x71, 0x3c, 0xe5, 0x95, 0xfd, 0x48, 0xfe, 0x9f, 0x7c, 0x0e, 0xf6, 0x53, 0x6e, 0x67, 0x30, 0x09, 0xd6, 0x15, 0x37, 0x34, 0xed, 0x44, 0x9c, 0x03, 0xf5, 0x54, 0xb3, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11354 = { .name = "ecdsa_secp224r1_sha224_11354", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11354_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11354_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11354_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 599 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11355 for ECDSA, tcId is 600 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11355_pubkey[] = { 0x4b, 0xe8, 0x78, 0x6c, 0xf0, 0xe1, 0x2e, 0x30, 0x0b, 0x61, 0x80, 0xbc, 0xfb, 0x83, 0x9a, 0x85, 0x7f, 0x8a, 0xa9, 0x9d, 0xc7, 0x7e, 0x54, 0x96, 0xd2, 0x8f, 0xcd, 0x12, 0x2b, 0x5b, 0x9a, 0x27, 0x49, 0x64, 0x44, 0x96, 0x62, 0xfa, 0x65, 0xf8, 0xaf, 0x0c, 0xa1, 0xf5, 0xd2, 0x8c, 0x70, 0xa5, 0xc0, 0xa8, 0x5d, 0x63, 0x8c, 0xb8, 0xaf, 0xfe, }; static const unsigned char ecdsa_secp224r1_sha224_11355_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11355_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2c, 0xaf, 0xea, 0x47, 0xf4, 0xfb, 0xe0, 0x77, 0xb2, 0x9b, 0x73, 0x3c, 0xba, 0x1b, 0x77, 0x43, 0x29, 0x7b, 0x2d, 0xe8, 0x1c, 0xa9, 0x39, 0x8d, 0x72, 0xec, 0x3d, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11355 = { .name = "ecdsa_secp224r1_sha224_11355", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11355_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11355_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11355_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 600 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11356 for ECDSA, tcId is 601 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11356_pubkey[] = { 0x9e, 0x5d, 0xaf, 0x1b, 0xfe, 0xa2, 0x8c, 0xe0, 0x39, 0xa8, 0xb9, 0x5a, 0x08, 0xa1, 0x33, 0x50, 0x34, 0xdd, 0x4c, 0xb8, 0xfe, 0x62, 0xab, 0x5c, 0x80, 0x83, 0xad, 0x27, 0xfe, 0xa5, 0x4b, 0xd6, 0x2f, 0x2c, 0xf6, 0xba, 0x7b, 0xe2, 0xbb, 0x28, 0x23, 0xf7, 0x3e, 0xbb, 0x3b, 0xb3, 0x1f, 0xa3, 0xcf, 0x66, 0x38, 0xc1, 0x1e, 0xce, 0xe8, 0xbb, }; static const unsigned char ecdsa_secp224r1_sha224_11356_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11356_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa8, 0xd4, 0xa5, 0x69, 0x48, 0x6f, 0x3d, 0xdf, 0x74, 0x59, 0xef, 0xff, 0xeb, 0xd8, 0x25, 0x96, 0x14, 0x59, 0x2d, 0xf0, 0x25, 0xb1, 0xa6, 0x79, 0x7a, 0x33, 0xab, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11356 = { .name = "ecdsa_secp224r1_sha224_11356", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11356_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11356_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11356_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 601 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11357 for ECDSA, tcId is 602 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11357_pubkey[] = { 0x84, 0x62, 0x85, 0xe0, 0xd1, 0xd1, 0x5f, 0x80, 0xa2, 0x37, 0x7a, 0x48, 0xd5, 0x23, 0x3c, 0x61, 0xf8, 0xcf, 0xf7, 0x4c, 0xd6, 0x23, 0x6f, 0xff, 0x29, 0x36, 0xc0, 0x06, 0x64, 0x7b, 0x6c, 0x0e, 0x9b, 0xc8, 0xa2, 0x50, 0xf8, 0xb3, 0xb3, 0xb2, 0x56, 0x5d, 0xd0, 0xb6, 0x5f, 0x39, 0x4d, 0xb2, 0xa5, 0xc5, 0x8b, 0xf2, 0x71, 0xca, 0x4a, 0x22, }; static const unsigned char ecdsa_secp224r1_sha224_11357_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11357_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x51, 0xa9, 0x4a, 0xd2, 0x90, 0xde, 0x7b, 0xbe, 0xe8, 0xb3, 0xdf, 0xff, 0xd7, 0xb1, 0x34, 0x89, 0x47, 0xf9, 0x6b, 0xa2, 0x37, 0x86, 0x23, 0xad, 0x98, 0x0b, 0x2d, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11357 = { .name = "ecdsa_secp224r1_sha224_11357", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11357_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11357_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11357_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 602 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11358 for ECDSA, tcId is 603 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11358_pubkey[] = { 0xec, 0xc1, 0xba, 0x5b, 0xa1, 0xd6, 0x85, 0xc1, 0xc4, 0xa1, 0x51, 0x46, 0x14, 0x5b, 0x37, 0x6f, 0x2e, 0x42, 0x95, 0x0c, 0x38, 0x76, 0xf2, 0x16, 0x09, 0x88, 0xa6, 0x8a, 0xb5, 0x85, 0x42, 0xba, 0xf7, 0xfa, 0x54, 0x2f, 0xba, 0xb7, 0x7c, 0xc7, 0xc9, 0x3f, 0xf2, 0x89, 0x69, 0xe3, 0x7c, 0xf0, 0xf3, 0xff, 0xbf, 0xe7, 0xfe, 0x02, 0xdc, 0x51, }; static const unsigned char ecdsa_secp224r1_sha224_11358_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11358_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfa, 0x7d, 0xf0, 0x3b, 0xd9, 0x4d, 0xb9, 0x9e, 0x5d, 0x0d, 0xcf, 0xff, 0xc3, 0x89, 0x5a, 0x1f, 0x5c, 0x52, 0x99, 0x92, 0x5d, 0x37, 0xca, 0x27, 0x12, 0x3e, 0xd8, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11358 = { .name = "ecdsa_secp224r1_sha224_11358", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11358_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11358_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11358_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 603 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11359 for ECDSA, tcId is 604 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11359_pubkey[] = { 0x2c, 0xbb, 0x21, 0x0b, 0x5f, 0x6d, 0x09, 0xad, 0xe8, 0xb6, 0x56, 0x6e, 0x9e, 0x4f, 0x12, 0x2c, 0xaa, 0x00, 0x32, 0x79, 0x8c, 0xff, 0x8f, 0xa3, 0xcb, 0x36, 0xa1, 0x0c, 0x79, 0x78, 0x04, 0x4c, 0xe0, 0x7d, 0x95, 0x86, 0x01, 0xf3, 0xe4, 0x93, 0x23, 0x31, 0x37, 0x80, 0x32, 0x5e, 0xd3, 0x9e, 0xb4, 0xed, 0x13, 0x0b, 0x4c, 0x70, 0x55, 0x1a, }; static const unsigned char ecdsa_secp224r1_sha224_11359_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11359_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd5, 0xb8, 0x28, 0xeb, 0xf2, 0x45, 0xcf, 0xc2, 0x97, 0x12, 0xc6, 0x5f, 0x6f, 0x0f, 0x1e, 0xa8, 0xde, 0x73, 0xbb, 0x35, 0x5e, 0xe9, 0xb2, 0xdc, 0x38, 0x91, 0x6a, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11359 = { .name = "ecdsa_secp224r1_sha224_11359", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11359_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11359_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11359_sig, .siglen = 56, .result = 1, .comment = "edge case for u1, tcId is 604 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11360 for ECDSA, tcId is 605 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11360_pubkey[] = { 0x75, 0x41, 0x08, 0xbb, 0x61, 0x33, 0x36, 0xdb, 0x98, 0x86, 0xcb, 0xa9, 0x0f, 0x5e, 0x4a, 0x9e, 0x4e, 0xfd, 0x26, 0xca, 0xd6, 0x03, 0xff, 0x65, 0x01, 0x64, 0x35, 0x0d, 0xe3, 0x35, 0xeb, 0x47, 0x3a, 0xa5, 0xc1, 0x9e, 0x9d, 0x28, 0xd3, 0x10, 0x08, 0x79, 0xd9, 0x0c, 0x73, 0x3e, 0x0f, 0x84, 0x36, 0xfe, 0xf5, 0x9a, 0x5a, 0xfa, 0x10, 0x16, }; static const unsigned char ecdsa_secp224r1_sha224_11360_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11360_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb2, 0x36, 0x4a, 0xe8, 0x50, 0x14, 0xb1, 0x49, 0xb8, 0x6c, 0x74, 0x1e, 0xb8, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11360 = { .name = "ecdsa_secp224r1_sha224_11360", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11360_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11360_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11360_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 605 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11361 for ECDSA, tcId is 606 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11361_pubkey[] = { 0x27, 0x3c, 0x31, 0x1c, 0xc5, 0xce, 0x74, 0xd1, 0xd0, 0x1b, 0x01, 0x71, 0x88, 0x47, 0x2d, 0xe0, 0x4b, 0x38, 0xb7, 0x2d, 0x34, 0xab, 0xfa, 0xe6, 0x26, 0x66, 0x79, 0xb4, 0xec, 0x64, 0xad, 0xcb, 0x3c, 0xa5, 0x24, 0x7c, 0xf5, 0x98, 0xa9, 0xcb, 0x66, 0xcc, 0x22, 0xe7, 0x9e, 0x31, 0xf1, 0x66, 0x1c, 0x78, 0x1c, 0x18, 0x71, 0xfc, 0xc1, 0xa3, }; static const unsigned char ecdsa_secp224r1_sha224_11361_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11361_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x85, 0x5f, 0x5b, 0x2d, 0xc8, 0xe4, 0x6e, 0xc4, 0x28, 0xa5, 0x93, 0xf7, 0x32, 0x19, 0xcf, 0x65, 0xda, 0xe7, 0x93, 0xe8, 0x34, 0x6e, 0x30, 0xcc, 0x37, 0x01, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11361 = { .name = "ecdsa_secp224r1_sha224_11361", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11361_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11361_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11361_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 606 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11362 for ECDSA, tcId is 607 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11362_pubkey[] = { 0xbd, 0x53, 0xb3, 0xb5, 0x2c, 0xd9, 0x13, 0x4e, 0x91, 0xe2, 0xf9, 0x0b, 0xa5, 0x00, 0x83, 0xc0, 0x07, 0xda, 0xa7, 0xcf, 0xf5, 0xcd, 0xab, 0xe4, 0x20, 0x8e, 0xc1, 0xb8, 0xd4, 0xb1, 0x14, 0xbd, 0xcd, 0x3f, 0x59, 0x9a, 0xed, 0xde, 0x76, 0xc6, 0xea, 0x69, 0x93, 0xd1, 0xd5, 0x78, 0xd8, 0xfa, 0xf9, 0x85, 0x1d, 0x13, 0x6d, 0x4c, 0xaa, 0x4f, }; static const unsigned char ecdsa_secp224r1_sha224_11362_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11362_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2d, 0xb5, 0xf6, 0x1a, 0xea, 0x81, 0x72, 0x76, 0xaf, 0x20, 0x64, 0xe1, 0x04, 0xc7, 0xa3, 0x0e, 0x32, 0x03, 0x4c, 0xb5, 0x26, 0xdd, 0x0a, 0xac, 0xfa, 0x56, 0x56, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11362 = { .name = "ecdsa_secp224r1_sha224_11362", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11362_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11362_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11362_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 607 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11363 for ECDSA, tcId is 608 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11363_pubkey[] = { 0x01, 0x4c, 0xbf, 0x86, 0x9e, 0xd4, 0x53, 0x4c, 0xd9, 0xd3, 0x2f, 0xc5, 0xbb, 0x80, 0x6d, 0x5d, 0xfa, 0x61, 0xaa, 0xd3, 0xe8, 0x1e, 0xdd, 0x45, 0x02, 0xc5, 0x94, 0x85, 0x94, 0x78, 0x25, 0x7b, 0x5e, 0x26, 0x77, 0x0f, 0x7b, 0xc6, 0xf7, 0xe0, 0x84, 0xd4, 0x7e, 0x1d, 0x7c, 0x41, 0x40, 0xb8, 0x36, 0x34, 0x4e, 0x5f, 0xe8, 0x4c, 0x06, 0x94, }; static const unsigned char ecdsa_secp224r1_sha224_11363_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11363_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x84, 0xa6, 0xc7, 0x51, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x13, 0xf3, 0xcb, 0xa1, 0x29, 0x3e, 0x4f, 0x3e, 0x95, 0x59, 0x7f, 0xe6, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11363 = { .name = "ecdsa_secp224r1_sha224_11363", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11363_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11363_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11363_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 608 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11364 for ECDSA, tcId is 609 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11364_pubkey[] = { 0x03, 0xc6, 0xd8, 0x74, 0x05, 0xe0, 0x81, 0xac, 0x2d, 0xc9, 0x18, 0x8a, 0xfe, 0xd9, 0x9e, 0xb8, 0x7f, 0x13, 0xbd, 0x7b, 0x80, 0xe7, 0x36, 0x3f, 0xd2, 0x1a, 0x76, 0x92, 0xa0, 0x92, 0xb8, 0xb8, 0x35, 0x44, 0x93, 0xe2, 0x44, 0x47, 0x36, 0xa9, 0xc7, 0x8b, 0xf3, 0x56, 0xfc, 0xdf, 0x07, 0x84, 0x91, 0x20, 0x98, 0x6a, 0xfb, 0x98, 0xfa, 0x03, }; static const unsigned char ecdsa_secp224r1_sha224_11364_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11364_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x6c, 0x75, 0x13, 0xe5, 0xf4, 0x8c, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x21, 0xfd, 0x1b, 0x31, 0x54, 0x4c, 0xb1, 0x3c, 0xa8, 0x6a, 0x75, 0xb2, 0x5e, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11364 = { .name = "ecdsa_secp224r1_sha224_11364", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11364_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11364_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11364_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 609 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11365 for ECDSA, tcId is 610 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11365_pubkey[] = { 0x23, 0xa6, 0x92, 0xef, 0xeb, 0xef, 0x2a, 0xc0, 0xf6, 0x96, 0xd0, 0xf9, 0x52, 0xdb, 0xd4, 0x35, 0xa4, 0x40, 0x2a, 0xad, 0x2e, 0xdc, 0x32, 0x62, 0xc1, 0x9e, 0x0c, 0x2f, 0x70, 0x52, 0x78, 0x85, 0x9a, 0xec, 0x7c, 0x13, 0xb3, 0xff, 0x66, 0xd0, 0x4e, 0xa2, 0x26, 0xc7, 0xde, 0x2e, 0xdd, 0x6e, 0x69, 0x09, 0x9b, 0x9d, 0x1a, 0x0e, 0x4b, 0xc9, }; static const unsigned char ecdsa_secp224r1_sha224_11365_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11365_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd8, 0xea, 0x27, 0xcb, 0xe9, 0x18, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x43, 0xfa, 0x36, 0x62, 0xa8, 0x99, 0x62, 0x79, 0x50, 0xd4, 0xeb, 0x64, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11365 = { .name = "ecdsa_secp224r1_sha224_11365", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11365_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11365_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11365_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 610 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11366 for ECDSA, tcId is 611 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11366_pubkey[] = { 0xb2, 0xfc, 0xf3, 0xf6, 0x49, 0xcd, 0xd7, 0xf8, 0x01, 0x2a, 0xc1, 0xd2, 0x24, 0x3f, 0x07, 0xca, 0x0f, 0xf8, 0xfe, 0x75, 0xc9, 0xf5, 0x9b, 0xbe, 0x7f, 0x34, 0x07, 0xe6, 0x9c, 0x69, 0xa4, 0x6f, 0xdf, 0x16, 0x17, 0x4b, 0xb0, 0xe5, 0x9c, 0xe3, 0xd7, 0x12, 0x9c, 0xfa, 0xfd, 0x74, 0xe6, 0xda, 0xcd, 0xb3, 0xdb, 0xbe, 0x6d, 0x77, 0x29, 0x43, }; static const unsigned char ecdsa_secp224r1_sha224_11366_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11366_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x5f, 0x48, 0xc0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x24, 0x96, 0x8c, 0x0e, 0xcf, 0x9e, 0xd7, 0x83, 0x74, 0x4a, 0x73, 0x37, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11366 = { .name = "ecdsa_secp224r1_sha224_11366", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11366_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11366_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11366_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 611 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11367 for ECDSA, tcId is 612 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11367_pubkey[] = { 0x21, 0xb6, 0x8c, 0x2b, 0x25, 0x12, 0x02, 0x92, 0xe7, 0xf0, 0x61, 0x6d, 0x68, 0x26, 0x0f, 0xc0, 0xf3, 0xfe, 0x9f, 0x1d, 0xff, 0x0f, 0xcb, 0x88, 0xc9, 0xf0, 0x13, 0x86, 0x07, 0xad, 0xa4, 0xf6, 0x66, 0x9a, 0x1c, 0x52, 0xe6, 0x84, 0x11, 0x3c, 0xea, 0xfd, 0x4f, 0x49, 0xcc, 0x11, 0x9f, 0xaa, 0x8c, 0xcb, 0xb3, 0x83, 0x4e, 0x98, 0x53, 0xb9, }; static const unsigned char ecdsa_secp224r1_sha224_11367_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11367_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0x87, 0xbb, 0x44, 0xc8, 0x33, 0xbb, 0x38, 0x4d, 0x0f, 0x22, 0x4c, 0xcd, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11367 = { .name = "ecdsa_secp224r1_sha224_11367", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11367_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11367_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11367_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 612 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11368 for ECDSA, tcId is 613 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11368_pubkey[] = { 0xa4, 0xd3, 0x66, 0x9d, 0x9b, 0x79, 0x7a, 0x7e, 0x2b, 0x07, 0xea, 0x8e, 0x89, 0xac, 0x2f, 0x0b, 0xc1, 0xaa, 0x91, 0x4f, 0x78, 0x8e, 0x93, 0xba, 0xbc, 0xc4, 0xf1, 0x5d, 0x46, 0xb2, 0x6c, 0x00, 0xda, 0xd8, 0xdc, 0x51, 0x62, 0xbd, 0xea, 0xae, 0xc2, 0xa3, 0x8a, 0x64, 0x93, 0x03, 0xbb, 0xda, 0xfc, 0x02, 0xb5, 0xa8, 0xae, 0x8a, 0xbf, 0x1d, }; static const unsigned char ecdsa_secp224r1_sha224_11368_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11368_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x64, 0x6c, 0x95, 0xd0, 0xa0, 0x29, 0x62, 0x93, 0x70, 0xd8, 0xe8, 0x3d, 0x71, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11368 = { .name = "ecdsa_secp224r1_sha224_11368", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11368_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11368_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11368_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 613 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11369 for ECDSA, tcId is 614 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11369_pubkey[] = { 0x35, 0xd3, 0x1d, 0x05, 0x46, 0xd9, 0x86, 0x21, 0xe6, 0x29, 0xef, 0x80, 0x93, 0x64, 0xe6, 0x1f, 0x06, 0x9d, 0x52, 0x09, 0xeb, 0x07, 0xdf, 0x02, 0xac, 0xa0, 0xae, 0xd9, 0xad, 0xe7, 0x58, 0xd0, 0x99, 0x82, 0x96, 0xd3, 0xad, 0xad, 0xf1, 0xb2, 0x07, 0x60, 0x81, 0xa7, 0x87, 0xa5, 0x2e, 0x4f, 0x2d, 0x64, 0x7c, 0xb3, 0xf0, 0x6f, 0xf9, 0xae, }; static const unsigned char ecdsa_secp224r1_sha224_11369_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11369_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x51, 0x70, 0x5c, 0x78, 0x1f, 0x09, 0xee, 0x94, 0xa2, 0xae, 0x2e, 0x15, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11369 = { .name = "ecdsa_secp224r1_sha224_11369", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11369_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11369_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11369_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 614 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11370 for ECDSA, tcId is 615 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11370_pubkey[] = { 0xb2, 0x43, 0xcd, 0xe4, 0x32, 0x60, 0xa5, 0x99, 0x60, 0x0c, 0xe3, 0x27, 0x38, 0x93, 0x69, 0xee, 0x21, 0x2d, 0x61, 0xbe, 0x86, 0x03, 0xa6, 0xaa, 0x9d, 0x0c, 0xc0, 0xeb, 0xb0, 0x66, 0xa5, 0xcd, 0x3e, 0x87, 0x7b, 0x75, 0xf4, 0x5e, 0xf8, 0x96, 0x99, 0x67, 0x3c, 0x5d, 0x3a, 0x7b, 0xe7, 0x38, 0x5d, 0xe9, 0x93, 0x58, 0x3c, 0xe9, 0xb2, 0x0d, }; static const unsigned char ecdsa_secp224r1_sha224_11370_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11370_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x96, 0xda, 0xfb, 0x0d, 0x75, 0x40, 0xb9, 0x3b, 0x57, 0x90, 0x32, 0x70, 0x82, 0x63, 0x5c, 0xd8, 0x89, 0x5e, 0x1e, 0x79, 0x9d, 0x5d, 0x19, 0xf9, 0x2b, 0x59, 0x40, 0x56, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11370 = { .name = "ecdsa_secp224r1_sha224_11370", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11370_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11370_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11370_sig, .siglen = 56, .result = 1, .comment = "edge case for u2, tcId is 615 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11371 for ECDSA, tcId is 616 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11371_pubkey[] = { 0xc0, 0xe1, 0xd6, 0xee, 0xc4, 0x09, 0x32, 0x37, 0x4b, 0xdf, 0xd0, 0x83, 0x30, 0x92, 0x39, 0x6f, 0x89, 0x8b, 0x48, 0xa5, 0x58, 0xd6, 0x72, 0xfc, 0xea, 0x97, 0xdb, 0x77, 0xbf, 0x48, 0xb8, 0xd6, 0x3e, 0x96, 0x18, 0xde, 0x21, 0xfa, 0x2b, 0xd8, 0x1f, 0xda, 0x75, 0x52, 0x34, 0x0a, 0x8d, 0x00, 0xfe, 0xa6, 0xf3, 0x3f, 0x47, 0x85, 0x7f, 0x09, }; static const unsigned char ecdsa_secp224r1_sha224_11371_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11371_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x23, 0xc5, 0xbb, 0xfb, 0x02, 0x5d, 0x0d, 0x11, 0xbc, 0x97, 0xdd, 0x04, 0x04, 0x16, 0xfc, 0xc3, 0x23, 0x24, 0xcc, 0x8f, 0x59, 0x36, 0xed, 0x88, 0xda, 0x2d, 0xc2, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11371 = { .name = "ecdsa_secp224r1_sha224_11371", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11371_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11371_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11371_sig, .siglen = 56, .result = 1, .comment = "point duplication during verification, tcId is 616 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11372 for ECDSA, tcId is 617 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11372_pubkey[] = { 0xc0, 0xe1, 0xd6, 0xee, 0xc4, 0x09, 0x32, 0x37, 0x4b, 0xdf, 0xd0, 0x83, 0x30, 0x92, 0x39, 0x6f, 0x89, 0x8b, 0x48, 0xa5, 0x58, 0xd6, 0x72, 0xfc, 0xea, 0x97, 0xdb, 0x77, 0x40, 0xb7, 0x47, 0x29, 0xc1, 0x69, 0xe7, 0x21, 0xde, 0x05, 0xd4, 0x27, 0xe0, 0x25, 0x8a, 0xac, 0xcb, 0xf5, 0x72, 0xff, 0x01, 0x59, 0x0c, 0xc0, 0xb8, 0x7a, 0x80, 0xf8, }; static const unsigned char ecdsa_secp224r1_sha224_11372_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11372_sig[] = { 0xc4, 0x45, 0x03, 0xda, 0xe8, 0x5d, 0xd5, 0x21, 0x07, 0x80, 0xf0, 0x29, 0x28, 0xb3, 0xd9, 0x27, 0x17, 0x1c, 0x57, 0x8f, 0x86, 0x03, 0xd1, 0x6b, 0x24, 0x06, 0x63, 0xc7, 0x23, 0xc5, 0xbb, 0xfb, 0x02, 0x5d, 0x0d, 0x11, 0xbc, 0x97, 0xdd, 0x04, 0x04, 0x16, 0xfc, 0xc3, 0x23, 0x24, 0xcc, 0x8f, 0x59, 0x36, 0xed, 0x88, 0xda, 0x2d, 0xc2, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11372 = { .name = "ecdsa_secp224r1_sha224_11372", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11372_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11372_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11372_sig, .siglen = 56, .result = -1, .comment = "duplication bug, tcId is 617 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11373 for ECDSA, tcId is 618 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11373_pubkey[] = { 0x31, 0x40, 0x65, 0x20, 0x35, 0x9b, 0x1f, 0xb7, 0x14, 0xb9, 0x04, 0x2a, 0x82, 0x1a, 0x95, 0x8e, 0x42, 0x36, 0x39, 0xef, 0x7c, 0x4d, 0x46, 0x3b, 0x33, 0x24, 0x0a, 0x8d, 0x9a, 0x81, 0x3d, 0x39, 0x06, 0xc3, 0x3b, 0x07, 0x45, 0x16, 0x94, 0xb5, 0x8a, 0xe6, 0x86, 0x28, 0x98, 0xb4, 0xec, 0xda, 0xd3, 0xea, 0x3e, 0x09, 0x54, 0xa2, 0x7a, 0xb1, }; static const unsigned char ecdsa_secp224r1_sha224_11373_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11373_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11373 = { .name = "ecdsa_secp224r1_sha224_11373", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11373_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11373_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11373_sig, .siglen = 56, .result = -1, .comment = "comparison with point at infinity , tcId is 618 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11374 for ECDSA, tcId is 619 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11374_pubkey[] = { 0x53, 0x88, 0x35, 0x38, 0xd8, 0x66, 0x09, 0x21, 0x7a, 0x4d, 0x9c, 0x27, 0x99, 0x2e, 0x2b, 0xd7, 0x04, 0xa4, 0xbb, 0x12, 0xfb, 0x91, 0x25, 0x3c, 0xd4, 0xf4, 0x96, 0xfa, 0x00, 0xb3, 0x2f, 0x3a, 0x2d, 0x15, 0x3a, 0x52, 0xbb, 0x57, 0x76, 0x50, 0xcd, 0xf1, 0xb7, 0x3a, 0x34, 0x05, 0x35, 0xc7, 0xe7, 0x3d, 0xeb, 0x59, 0x9a, 0xa9, 0x50, 0x88, }; static const unsigned char ecdsa_secp224r1_sha224_11374_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11374_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11374 = { .name = "ecdsa_secp224r1_sha224_11374", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11374_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11374_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11374_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 619 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11375 for ECDSA, tcId is 620 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11375_pubkey[] = { 0x55, 0x68, 0x13, 0x90, 0x00, 0xf8, 0xcf, 0x64, 0x96, 0x42, 0x8e, 0x52, 0x4f, 0x10, 0x5c, 0xb0, 0x44, 0x7e, 0xe4, 0x17, 0xab, 0x0a, 0x1d, 0x84, 0x2c, 0x83, 0x1e, 0x73, 0xed, 0x04, 0x65, 0xc1, 0xc6, 0xe6, 0x23, 0xc3, 0xac, 0xc6, 0xa3, 0x34, 0x9b, 0xb4, 0x1a, 0xd4, 0x1b, 0x74, 0x1c, 0xce, 0x46, 0x0d, 0x6e, 0x72, 0xd0, 0x08, 0xc4, 0x7d, }; static const unsigned char ecdsa_secp224r1_sha224_11375_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11375_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11375 = { .name = "ecdsa_secp224r1_sha224_11375", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11375_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11375_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11375_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 620 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11376 for ECDSA, tcId is 621 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11376_pubkey[] = { 0x68, 0x82, 0x04, 0x08, 0xa5, 0xdd, 0x10, 0xcc, 0x42, 0x3d, 0x60, 0xef, 0xbb, 0x5b, 0x6d, 0x7a, 0xab, 0x32, 0x6d, 0xc9, 0x5e, 0x40, 0x03, 0x0f, 0x11, 0x8a, 0xd5, 0x9b, 0xb2, 0xa9, 0x2f, 0x64, 0x9f, 0xc3, 0x95, 0x90, 0x4e, 0xa8, 0x3c, 0x1c, 0x77, 0xf1, 0xee, 0x97, 0x25, 0xa2, 0xd3, 0xe2, 0x0e, 0xe2, 0xbe, 0xd1, 0x2e, 0x54, 0xb3, 0xe6, }; static const unsigned char ecdsa_secp224r1_sha224_11376_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11376_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11376 = { .name = "ecdsa_secp224r1_sha224_11376", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11376_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11376_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11376_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 621 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11377 for ECDSA, tcId is 622 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11377_pubkey[] = { 0x64, 0xd6, 0x34, 0x4a, 0x03, 0xe8, 0x85, 0x8f, 0x48, 0x28, 0x83, 0xc9, 0xcf, 0x65, 0x33, 0x64, 0xc1, 0xca, 0x15, 0xa9, 0xb4, 0x63, 0x8c, 0x3d, 0x48, 0x54, 0xeb, 0x53, 0x42, 0x07, 0x02, 0x26, 0xb4, 0xea, 0x55, 0xb2, 0x27, 0xe5, 0x40, 0xdf, 0xb6, 0xac, 0xd3, 0xb5, 0x6f, 0xd8, 0x29, 0xd3, 0x4b, 0xe3, 0x10, 0xa5, 0xf0, 0xb5, 0x74, 0x25, }; static const unsigned char ecdsa_secp224r1_sha224_11377_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11377_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11377 = { .name = "ecdsa_secp224r1_sha224_11377", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11377_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11377_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11377_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 622 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11378 for ECDSA, tcId is 623 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11378_pubkey[] = { 0x93, 0xa2, 0x06, 0x3d, 0xc2, 0x06, 0xc8, 0xc2, 0x77, 0xe6, 0x79, 0x20, 0xb2, 0x10, 0x2c, 0xfa, 0x5b, 0x47, 0xe8, 0x62, 0xed, 0x70, 0xf8, 0x64, 0xee, 0x6b, 0x8c, 0xb6, 0xc1, 0x63, 0x38, 0x8e, 0x63, 0x64, 0x71, 0x15, 0xe3, 0x70, 0x92, 0xce, 0xa0, 0x43, 0xc4, 0x5e, 0x09, 0xf8, 0xfe, 0xc6, 0xec, 0xdc, 0x99, 0xb6, 0xfb, 0xc7, 0x6c, 0xe4, }; static const unsigned char ecdsa_secp224r1_sha224_11378_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11378_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11378 = { .name = "ecdsa_secp224r1_sha224_11378", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11378_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11378_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11378_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 623 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11379 for ECDSA, tcId is 624 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11379_pubkey[] = { 0xad, 0x2a, 0x19, 0x6e, 0x6a, 0xa1, 0xb0, 0x33, 0x4f, 0xc3, 0xcb, 0xd7, 0x53, 0x3c, 0x23, 0x7f, 0x96, 0xde, 0x55, 0x7c, 0xec, 0xbc, 0xb9, 0x63, 0x00, 0x1b, 0x73, 0x15, 0xc0, 0x60, 0x60, 0xbe, 0xa2, 0xaa, 0xdd, 0x9f, 0xc7, 0x0a, 0x98, 0xad, 0x1e, 0x10, 0xbf, 0xee, 0x5c, 0x34, 0xb2, 0x9a, 0x6a, 0xcf, 0xa6, 0x9e, 0x70, 0x8d, 0x1c, 0x7c, }; static const unsigned char ecdsa_secp224r1_sha224_11379_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11379_sig[] = { 0x70, 0x6a, 0x46, 0xdc, 0x76, 0xdc, 0xb7, 0x67, 0x98, 0xe6, 0x0e, 0x6d, 0x89, 0x47, 0x47, 0x88, 0xd1, 0x6d, 0xc1, 0x80, 0x32, 0xd2, 0x68, 0xfd, 0x1a, 0x70, 0x4f, 0xa6, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11379 = { .name = "ecdsa_secp224r1_sha224_11379", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11379_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11379_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11379_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 624 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11380 for ECDSA, tcId is 625 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11380_pubkey[] = { 0x01, 0x9c, 0xb0, 0xc3, 0x7d, 0xbd, 0x37, 0x6a, 0x14, 0xe9, 0xe9, 0x43, 0x87, 0x67, 0x30, 0x7e, 0x8f, 0x6c, 0xf2, 0xe7, 0x96, 0x89, 0xb5, 0x82, 0x88, 0x2f, 0x34, 0x7d, 0x02, 0xb1, 0x14, 0x68, 0xcb, 0x1a, 0x77, 0x82, 0x56, 0x9e, 0x48, 0xb7, 0xf7, 0x2e, 0x48, 0x2f, 0x5f, 0xc0, 0xda, 0x72, 0x93, 0x88, 0xe4, 0xb4, 0x79, 0xdc, 0x76, 0xb5, }; static const unsigned char ecdsa_secp224r1_sha224_11380_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11380_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x07, 0x8b, 0xa0, 0x3d, 0xa5, 0x6a, 0x06, 0x9f, 0x0d, 0xc1, 0xc9, 0x74, 0x0e, 0x14, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11380 = { .name = "ecdsa_secp224r1_sha224_11380", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11380_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11380_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11380_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 625 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11381 for ECDSA, tcId is 626 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11381_pubkey[] = { 0xfb, 0xd1, 0xd4, 0xef, 0xf2, 0x1c, 0x75, 0x2f, 0x64, 0x8a, 0xc2, 0xc6, 0x8e, 0x3a, 0xa9, 0xbf, 0xe4, 0x28, 0x21, 0xc2, 0xca, 0x44, 0xa5, 0x73, 0x80, 0xed, 0x60, 0xee, 0xa2, 0x47, 0xd9, 0x53, 0xd4, 0x59, 0xb0, 0x49, 0x15, 0x78, 0x3b, 0x69, 0xfb, 0x43, 0x16, 0xa7, 0xbd, 0x7f, 0x18, 0x5a, 0x88, 0xe6, 0xb5, 0x01, 0x3c, 0xf8, 0x88, 0xfa, }; static const unsigned char ecdsa_secp224r1_sha224_11381_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11381_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6c, 0xee, 0xd4, 0xc0, 0x9e, 0x84, 0xc7, 0x7e, 0xbd, 0x91, 0x16, 0xe1, 0x73, 0x91, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11381 = { .name = "ecdsa_secp224r1_sha224_11381", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11381_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11381_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11381_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 626 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11382 for ECDSA, tcId is 627 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11382_pubkey[] = { 0x0a, 0x30, 0x16, 0x46, 0x67, 0xb9, 0xf3, 0xdd, 0x85, 0x45, 0x89, 0xfe, 0x62, 0x31, 0x00, 0x0e, 0x28, 0x77, 0xeb, 0x99, 0x8c, 0x4b, 0x67, 0xa2, 0xd6, 0xde, 0x8f, 0x3d, 0xbf, 0x1b, 0x24, 0x7f, 0xc0, 0xaa, 0xad, 0x5d, 0xeb, 0xd1, 0xc6, 0x7b, 0x9a, 0x2b, 0xee, 0x26, 0xb3, 0x1c, 0xdc, 0x4f, 0x69, 0xf3, 0xbc, 0x71, 0xcf, 0x45, 0x9c, 0x2b, }; static const unsigned char ecdsa_secp224r1_sha224_11382_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11382_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x04, 0x86, 0xf9, 0xbe, 0x96, 0x72, 0xd0, 0xc5, 0xd5, 0x0d, 0xdf, 0x45, 0xa2, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11382 = { .name = "ecdsa_secp224r1_sha224_11382", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11382_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11382_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11382_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 627 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11383 for ECDSA, tcId is 628 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11383_pubkey[] = { 0x51, 0x26, 0xff, 0xac, 0xb4, 0x95, 0x01, 0x68, 0xa4, 0x20, 0xdd, 0x47, 0x9c, 0xe1, 0xb2, 0x65, 0x86, 0xe1, 0xa3, 0x13, 0xc0, 0x45, 0x46, 0xfb, 0xd9, 0xc6, 0x0f, 0xe9, 0x4e, 0x07, 0x4a, 0xb3, 0x26, 0xef, 0xce, 0xfa, 0xd1, 0x91, 0x26, 0x41, 0x75, 0xa3, 0x58, 0x90, 0x9f, 0xea, 0x1f, 0xdd, 0x8c, 0xc8, 0x0b, 0x20, 0x9b, 0xa7, 0x32, 0x1b, }; static const unsigned char ecdsa_secp224r1_sha224_11383_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11383_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x12, 0x1b, 0xe6, 0xfa, 0x59, 0xcb, 0x43, 0x17, 0x54, 0x37, 0x7d, 0x16, 0x88, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11383 = { .name = "ecdsa_secp224r1_sha224_11383", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11383_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11383_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11383_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 628 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11384 for ECDSA, tcId is 629 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11384_pubkey[] = { 0x91, 0xb2, 0x5d, 0xd9, 0xa1, 0x25, 0x9a, 0x74, 0x2e, 0x5d, 0x8e, 0x90, 0x9a, 0xc0, 0x99, 0x83, 0x68, 0x5c, 0x82, 0xa3, 0xe4, 0xcd, 0xb9, 0x18, 0x58, 0xe6, 0xce, 0x0f, 0xbb, 0x78, 0x59, 0x9e, 0xca, 0xc5, 0x11, 0x67, 0x24, 0xe9, 0xcb, 0x0b, 0x7a, 0xae, 0xb5, 0xad, 0x45, 0xb0, 0x98, 0xd8, 0xc5, 0x9f, 0x25, 0x67, 0xdd, 0x1b, 0x12, 0x98, }; static const unsigned char ecdsa_secp224r1_sha224_11384_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11384_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11384 = { .name = "ecdsa_secp224r1_sha224_11384", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11384_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11384_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11384_sig, .siglen = 56, .result = 1, .comment = "extreme value for k and s^-1, tcId is 629 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11385 for ECDSA, tcId is 630 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11385_pubkey[] = { 0x5b, 0xc3, 0x4a, 0x3c, 0x52, 0xa4, 0xfb, 0xd9, 0x0e, 0xb9, 0x0a, 0xae, 0xa4, 0x11, 0x71, 0xee, 0x03, 0x7e, 0x4b, 0x28, 0x11, 0xba, 0x16, 0x8b, 0x01, 0xb1, 0x3d, 0x71, 0x85, 0x2a, 0x17, 0xc2, 0x24, 0x3d, 0x51, 0x7a, 0x8c, 0x38, 0xcc, 0x54, 0xe3, 0x9e, 0x4f, 0x79, 0x83, 0xc5, 0x03, 0x3d, 0x4e, 0xca, 0xc2, 0x65, 0xa4, 0x4b, 0x77, 0x3c, }; static const unsigned char ecdsa_secp224r1_sha224_11385_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11385_sig[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0xac, 0xde, 0xd4, 0x06, 0x10, 0x29, 0xd6, 0x3a, 0x46, 0xf4, 0x6f, 0x12, 0x94, 0x74, 0x11, 0xf2, 0xea, 0x56, 0x1a, 0x59, 0x20, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11385 = { .name = "ecdsa_secp224r1_sha224_11385", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11385_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11385_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11385_sig, .siglen = 56, .result = 1, .comment = "extreme value for k, tcId is 630 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11386 for ECDSA, tcId is 631 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11386_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_11386_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11386_sig[] = { 0x0b, 0x04, 0x1f, 0x88, 0x4d, 0x64, 0x8c, 0xc3, 0x45, 0xe4, 0x60, 0x00, 0x78, 0xeb, 0x79, 0x07, 0x08, 0xcc, 0xad, 0x57, 0x6d, 0x4a, 0xbe, 0x3c, 0x94, 0x3a, 0xa3, 0x28, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11386 = { .name = "ecdsa_secp224r1_sha224_11386", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11386_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11386_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11386_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 631 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11387 for ECDSA, tcId is 632 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11387_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0xbd, 0x37, 0x63, 0x88, 0xb5, 0xf7, 0x23, 0xfb, 0x4c, 0x22, 0xdf, 0xe6, 0xcd, 0x43, 0x75, 0xa0, 0x5a, 0x07, 0x47, 0x64, 0x44, 0xd5, 0x81, 0x99, 0x85, 0x00, 0x7e, 0x34, }; static const unsigned char ecdsa_secp224r1_sha224_11387_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11387_sig[] = { 0xf4, 0xfb, 0xe0, 0x77, 0xb2, 0x9b, 0x73, 0x3c, 0xba, 0x1b, 0x9f, 0xff, 0x87, 0x13, 0x9d, 0x9b, 0xd7, 0xec, 0x42, 0xe6, 0xa6, 0x92, 0x6b, 0x08, 0xc8, 0x21, 0x87, 0x15, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11387 = { .name = "ecdsa_secp224r1_sha224_11387", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11387_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11387_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11387_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 632 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11388 for ECDSA, tcId is 633 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11388_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_11388_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11388_sig[] = { 0x0b, 0x04, 0x1f, 0x88, 0x4d, 0x64, 0x8c, 0xc3, 0x45, 0xe4, 0x60, 0x00, 0x78, 0xeb, 0x79, 0x07, 0x08, 0xcc, 0xad, 0x57, 0x6d, 0x4a, 0xbe, 0x3c, 0x94, 0x3a, 0xa3, 0x28, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11388 = { .name = "ecdsa_secp224r1_sha224_11388", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11388_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11388_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11388_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 633 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11389 for ECDSA, tcId is 634 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp224r1_sha224_11389_pubkey[] = { 0xb7, 0x0e, 0x0c, 0xbd, 0x6b, 0xb4, 0xbf, 0x7f, 0x32, 0x13, 0x90, 0xb9, 0x4a, 0x03, 0xc1, 0xd3, 0x56, 0xc2, 0x11, 0x22, 0x34, 0x32, 0x80, 0xd6, 0x11, 0x5c, 0x1d, 0x21, 0x42, 0xc8, 0x9c, 0x77, 0x4a, 0x08, 0xdc, 0x04, 0xb3, 0xdd, 0x20, 0x19, 0x32, 0xbc, 0x8a, 0x5e, 0xa5, 0xf8, 0xb8, 0x9b, 0xbb, 0x2a, 0x7e, 0x66, 0x7a, 0xff, 0x81, 0xcd, }; static const unsigned char ecdsa_secp224r1_sha224_11389_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp224r1_sha224_11389_sig[] = { 0xf4, 0xfb, 0xe0, 0x77, 0xb2, 0x9b, 0x73, 0x3c, 0xba, 0x1b, 0x9f, 0xff, 0x87, 0x13, 0x9d, 0x9b, 0xd7, 0xec, 0x42, 0xe6, 0xa6, 0x92, 0x6b, 0x08, 0xc8, 0x21, 0x87, 0x15, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x27, 0xce, 0x20, 0x1a, 0x6b, 0x76, 0x95, 0x1f, 0x98, 0x2e, 0x7a, 0xe8, 0x98, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha224_11389 = { .name = "ecdsa_secp224r1_sha224_11389", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha224_11389_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha224_11389_msg, .msglen = 3, .sig = ecdsa_secp224r1_sha224_11389_sig, .siglen = 56, .result = -1, .comment = "testing point duplication, tcId is 634 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) */ /* Test 11390 for ECDSA, tcId is 635 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11390_pubkey[] = { 0xd7, 0x05, 0xd1, 0x6f, 0x80, 0x98, 0x7e, 0x2d, 0x9b, 0x1a, 0x69, 0x57, 0xd2, 0x9c, 0xe2, 0x2f, 0xeb, 0xf7, 0xd1, 0x0f, 0xa5, 0x15, 0x15, 0x31, 0x82, 0x41, 0x5c, 0x83, 0x61, 0xba, 0xac, 0xa4, 0xb1, 0xfc, 0x10, 0x5e, 0xe5, 0xce, 0x80, 0xd5, 0x14, 0xec, 0x12, 0x38, 0xbe, 0xae, 0x20, 0x37, 0xa6, 0xf8, 0x36, 0x25, 0x59, 0x36, 0x20, 0xd4, 0x60, 0x81, 0x9e, 0x86, 0x82, 0x16, 0x09, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_11390_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11390_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11390 = { .name = "ecdsa_secp256r1_sha256_11390", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11390_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11390_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11390_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 635 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11391 for ECDSA, tcId is 636 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11391_pubkey[] = { 0xd7, 0x05, 0xd1, 0x6f, 0x80, 0x98, 0x7e, 0x2d, 0x9b, 0x1a, 0x69, 0x57, 0xd2, 0x9c, 0xe2, 0x2f, 0xeb, 0xf7, 0xd1, 0x0f, 0xa5, 0x15, 0x15, 0x31, 0x82, 0x41, 0x5c, 0x83, 0x61, 0xba, 0xac, 0xa4, 0xb1, 0xfc, 0x10, 0x5e, 0xe5, 0xce, 0x80, 0xd5, 0x14, 0xec, 0x12, 0x38, 0xbe, 0xae, 0x20, 0x37, 0xa6, 0xf8, 0x36, 0x25, 0x59, 0x36, 0x20, 0xd4, 0x60, 0x81, 0x9e, 0x86, 0x82, 0x16, 0x09, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_11391_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11391_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11391 = { .name = "ecdsa_secp256r1_sha256_11391", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11391_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11391_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11391_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 636 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11392 for ECDSA, tcId is 637 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11392_pubkey[] = { 0x3c, 0xd8, 0xd2, 0xf8, 0x1d, 0x69, 0x53, 0xb0, 0x84, 0x4c, 0x09, 0xd7, 0xb5, 0x60, 0xd5, 0x27, 0xcd, 0x2e, 0xf6, 0x70, 0x56, 0x89, 0x3e, 0xad, 0xaf, 0xa5, 0x2c, 0x85, 0x01, 0x38, 0x7d, 0x59, 0xee, 0x41, 0xfd, 0xb4, 0xd1, 0x04, 0x02, 0xce, 0x7a, 0x0c, 0x5e, 0x3b, 0x74, 0x7a, 0xdf, 0xa3, 0xa4, 0x90, 0xb6, 0x2a, 0x6b, 0x77, 0x19, 0x06, 0x89, 0x03, 0x48, 0x5c, 0x0b, 0xb6, 0xdc, 0x2d, }; static const unsigned char ecdsa_secp256r1_sha256_11392_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11392_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11392 = { .name = "ecdsa_secp256r1_sha256_11392", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11392_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11392_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11392_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 637 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11393 for ECDSA, tcId is 638 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11393_pubkey[] = { 0x82, 0x40, 0xcd, 0x81, 0xed, 0xd9, 0x1c, 0xb6, 0x93, 0x61, 0x33, 0x50, 0x8c, 0x39, 0x15, 0x10, 0x0e, 0x81, 0xf3, 0x32, 0xc4, 0x54, 0x5d, 0x41, 0x18, 0x9b, 0x48, 0x11, 0x96, 0x85, 0x13, 0x78, 0xe0, 0x5b, 0x06, 0xe7, 0x2d, 0x4a, 0x1b, 0xff, 0x80, 0xea, 0x5d, 0xb5, 0x14, 0xaa, 0x2f, 0x93, 0xea, 0x6d, 0xd6, 0xd9, 0xc0, 0xae, 0x27, 0xb7, 0x83, 0x7d, 0xc4, 0x32, 0xf9, 0xce, 0x89, 0xd9, }; static const unsigned char ecdsa_secp256r1_sha256_11393_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11393_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11393 = { .name = "ecdsa_secp256r1_sha256_11393", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11393_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11393_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11393_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 638 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11394 for ECDSA, tcId is 639 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11394_pubkey[] = { 0xb0, 0x62, 0x94, 0x73, 0x56, 0x74, 0x8b, 0x0f, 0xc1, 0x7f, 0x17, 0x04, 0xc6, 0x5a, 0xa1, 0xdc, 0xa6, 0xe1, 0xbf, 0xe6, 0x77, 0x97, 0x56, 0xfa, 0x61, 0x6d, 0x91, 0xea, 0xad, 0x13, 0xdf, 0x2c, 0x0b, 0x38, 0xc1, 0x7f, 0x3d, 0x06, 0x72, 0xe7, 0x40, 0x9c, 0xfc, 0x59, 0x92, 0xa9, 0x9f, 0xff, 0x12, 0xb8, 0x4a, 0x4f, 0x84, 0x32, 0x29, 0x3b, 0x43, 0x11, 0x13, 0xf1, 0xb2, 0xfb, 0x57, 0x9d, }; static const unsigned char ecdsa_secp256r1_sha256_11394_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11394_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11394 = { .name = "ecdsa_secp256r1_sha256_11394", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11394_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11394_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11394_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 639 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11395 for ECDSA, tcId is 640 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11395_pubkey[] = { 0x4a, 0x03, 0xef, 0x9f, 0x92, 0xeb, 0x26, 0x8c, 0xaf, 0xa6, 0x01, 0x07, 0x24, 0x89, 0xa5, 0x63, 0x80, 0xfa, 0x0d, 0xc4, 0x31, 0x71, 0xd7, 0x71, 0x28, 0x13, 0xb3, 0xa1, 0x9a, 0x1e, 0xb5, 0xe5, 0x3e, 0x21, 0x3e, 0x28, 0xa6, 0x08, 0xce, 0x9a, 0x2f, 0x4a, 0x17, 0xfd, 0x83, 0x0c, 0x66, 0x54, 0x01, 0x8a, 0x79, 0xb3, 0xe0, 0x26, 0x3d, 0x91, 0xa8, 0xba, 0x90, 0x62, 0x2d, 0xf6, 0xf2, 0xf0, }; static const unsigned char ecdsa_secp256r1_sha256_11395_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11395_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11395 = { .name = "ecdsa_secp256r1_sha256_11395", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11395_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11395_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11395_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 640 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11396 for ECDSA, tcId is 641 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11396_pubkey[] = { 0x09, 0x11, 0x94, 0xc1, 0xcb, 0xa1, 0x7f, 0x34, 0xe2, 0x86, 0xb4, 0x83, 0x37, 0x01, 0x60, 0x6a, 0x41, 0xce, 0xf2, 0x61, 0x77, 0xad, 0xa8, 0x85, 0x0b, 0x60, 0x1e, 0xa1, 0xf8, 0x59, 0xe7, 0x01, 0x27, 0x24, 0x2f, 0xce, 0xc7, 0x08, 0x82, 0x87, 0x58, 0x40, 0x3c, 0xe2, 0xfe, 0x50, 0x19, 0x83, 0xa7, 0x98, 0x4e, 0x62, 0x09, 0xf4, 0xd6, 0xb9, 0x5d, 0xb9, 0xad, 0x77, 0x76, 0x7f, 0x55, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha256_11396_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11396_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11396 = { .name = "ecdsa_secp256r1_sha256_11396", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11396_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11396_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11396_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 641 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11397 for ECDSA, tcId is 642 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11397_pubkey[] = { 0x10, 0x3c, 0x6e, 0xcc, 0xef, 0xf5, 0x9e, 0x71, 0xea, 0x8f, 0x56, 0xfe, 0xe3, 0xa4, 0xb2, 0xb1, 0x48, 0xe8, 0x1c, 0x2b, 0xdb, 0xdd, 0x39, 0xc1, 0x95, 0x81, 0x2c, 0x96, 0xdc, 0xfb, 0x41, 0xa7, 0x23, 0x03, 0xa1, 0x93, 0xdc, 0x59, 0x1b, 0xe1, 0x50, 0xb8, 0x83, 0xd7, 0x70, 0xec, 0x51, 0xeb, 0xb4, 0xeb, 0xce, 0x8b, 0x09, 0x04, 0x2c, 0x2e, 0xcb, 0x16, 0xc4, 0x48, 0xd8, 0xe5, 0x7b, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_11397_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11397_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11397 = { .name = "ecdsa_secp256r1_sha256_11397", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11397_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11397_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11397_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 642 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11398 for ECDSA, tcId is 643 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11398_pubkey[] = { 0x3b, 0x66, 0xb8, 0x29, 0xfe, 0x60, 0x46, 0x38, 0xbc, 0xb2, 0xbf, 0xe8, 0xc2, 0x22, 0x28, 0xbe, 0x67, 0x39, 0x0c, 0x20, 0x11, 0x1b, 0xd2, 0xb4, 0x51, 0x46, 0x89, 0x27, 0xe8, 0x7f, 0xb6, 0xea, 0xbc, 0x8e, 0x59, 0xc0, 0x09, 0x36, 0x17, 0x58, 0xb2, 0x74, 0xba, 0x2c, 0xad, 0x36, 0xb5, 0x8f, 0xde, 0x48, 0x5a, 0x3e, 0xd0, 0x9d, 0xad, 0xe7, 0x67, 0x12, 0xfa, 0x9e, 0x9c, 0x4a, 0xc2, 0x12, }; static const unsigned char ecdsa_secp256r1_sha256_11398_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11398_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11398 = { .name = "ecdsa_secp256r1_sha256_11398", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11398_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11398_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11398_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 643 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11399 for ECDSA, tcId is 644 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11399_pubkey[] = { 0x3b, 0x66, 0xb8, 0x29, 0xfe, 0x60, 0x46, 0x38, 0xbc, 0xb2, 0xbf, 0xe8, 0xc2, 0x22, 0x28, 0xbe, 0x67, 0x39, 0x0c, 0x20, 0x11, 0x1b, 0xd2, 0xb4, 0x51, 0x46, 0x89, 0x27, 0xe8, 0x7f, 0xb6, 0xea, 0xbc, 0x8e, 0x59, 0xc0, 0x09, 0x36, 0x17, 0x58, 0xb2, 0x74, 0xba, 0x2c, 0xad, 0x36, 0xb5, 0x8f, 0xde, 0x48, 0x5a, 0x3e, 0xd0, 0x9d, 0xad, 0xe7, 0x67, 0x12, 0xfa, 0x9e, 0x9c, 0x4a, 0xc2, 0x12, }; static const unsigned char ecdsa_secp256r1_sha256_11399_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11399_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11399 = { .name = "ecdsa_secp256r1_sha256_11399", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11399_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11399_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11399_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 644 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11400 for ECDSA, tcId is 645 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11400_pubkey[] = { 0x4f, 0xf2, 0xf6, 0xc2, 0x4e, 0x4a, 0x33, 0xcd, 0x71, 0xc0, 0x9f, 0xdc, 0xbc, 0x74, 0xa6, 0x23, 0x39, 0x61, 0xb8, 0x74, 0xb8, 0xc8, 0xe0, 0xeb, 0x94, 0x58, 0x20, 0x92, 0xcb, 0xc5, 0x0c, 0x30, 0x84, 0xfa, 0x95, 0x47, 0xaf, 0xda, 0x5c, 0x66, 0x33, 0x5f, 0x3f, 0x93, 0x7d, 0x4c, 0x79, 0xaf, 0xa1, 0x20, 0x48, 0x6b, 0x53, 0x41, 0x39, 0xd5, 0x9a, 0xe8, 0x2d, 0x61, 0xea, 0xd2, 0x64, 0x20, }; static const unsigned char ecdsa_secp256r1_sha256_11400_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11400_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11400 = { .name = "ecdsa_secp256r1_sha256_11400", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11400_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11400_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11400_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 645 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11401 for ECDSA, tcId is 646 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11401_pubkey[] = { 0x84, 0xb9, 0x59, 0x08, 0x0b, 0xb3, 0x08, 0x59, 0xcd, 0x53, 0xc2, 0xfb, 0x97, 0x3c, 0xf1, 0x4d, 0x60, 0xcd, 0xaa, 0x8e, 0xe0, 0x05, 0x87, 0x88, 0x9b, 0x5b, 0xc6, 0x57, 0xac, 0x58, 0x81, 0x75, 0xa0, 0x2c, 0xe5, 0xc1, 0xe5, 0x3c, 0xb1, 0x96, 0x11, 0x3c, 0x78, 0xb4, 0xcb, 0x8d, 0xc7, 0xd3, 0x60, 0xe5, 0xea, 0x78, 0x50, 0xb0, 0xf6, 0x65, 0x0b, 0x0c, 0x45, 0xaf, 0x2c, 0x3c, 0xd7, 0xca, }; static const unsigned char ecdsa_secp256r1_sha256_11401_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11401_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11401 = { .name = "ecdsa_secp256r1_sha256_11401", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11401_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11401_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11401_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 646 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11402 for ECDSA, tcId is 647 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11402_pubkey[] = { 0xdf, 0x40, 0x83, 0xbd, 0x6e, 0xcb, 0xda, 0x5a, 0x77, 0xae, 0x57, 0x8e, 0x5d, 0x83, 0x5f, 0xa7, 0xf7, 0x4a, 0x07, 0xeb, 0xb9, 0x1e, 0x05, 0x70, 0xe1, 0xff, 0x32, 0xa5, 0x63, 0x35, 0x4e, 0x99, 0x25, 0xaf, 0x80, 0xb0, 0x9a, 0x16, 0x7d, 0x9e, 0xf6, 0x47, 0xdf, 0x28, 0xe2, 0xd9, 0xac, 0xd0, 0xd4, 0xbc, 0x4f, 0x2d, 0xee, 0xc5, 0x72, 0x38, 0x18, 0xed, 0xaf, 0x90, 0x71, 0xe3, 0x11, 0xf8, }; static const unsigned char ecdsa_secp256r1_sha256_11402_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11402_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11402 = { .name = "ecdsa_secp256r1_sha256_11402", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11402_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11402_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11402_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 647 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11403 for ECDSA, tcId is 648 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11403_pubkey[] = { 0xc2, 0x56, 0x9a, 0x3c, 0x9b, 0xf8, 0xc1, 0x83, 0x8c, 0xa8, 0x21, 0xf7, 0xba, 0x6f, 0x00, 0x0c, 0xc8, 0x67, 0x9d, 0x27, 0x8f, 0x37, 0x36, 0xb4, 0x14, 0xa3, 0x4a, 0x7c, 0x95, 0x6a, 0x03, 0x77, 0x03, 0x87, 0xea, 0x85, 0xbc, 0x4f, 0x28, 0x80, 0x4b, 0x4a, 0x91, 0xc9, 0xb7, 0xd6, 0x5b, 0xc6, 0x43, 0x4c, 0x97, 0x58, 0x06, 0x79, 0x5a, 0xb7, 0xd4, 0x41, 0xa4, 0xe9, 0x68, 0x3a, 0xeb, 0x09, }; static const unsigned char ecdsa_secp256r1_sha256_11403_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11403_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11403 = { .name = "ecdsa_secp256r1_sha256_11403", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11403_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11403_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11403_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 648 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11404 for ECDSA, tcId is 649 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11404_pubkey[] = { 0x4a, 0x9f, 0x7d, 0xa2, 0xa6, 0xc3, 0x59, 0xa1, 0x65, 0x40, 0xc2, 0x71, 0x77, 0x4a, 0x6b, 0xf1, 0xc5, 0x86, 0x35, 0x7c, 0x97, 0x82, 0x56, 0xf4, 0x4a, 0x64, 0x96, 0xd8, 0x06, 0x70, 0x96, 0x8a, 0xc4, 0x96, 0xe7, 0x3a, 0x44, 0x56, 0x3f, 0x8d, 0x56, 0xfb, 0xd7, 0xbb, 0x9e, 0x4e, 0x3a, 0xe3, 0x04, 0xc8, 0x6f, 0x2c, 0x50, 0x8e, 0xb7, 0x77, 0xb0, 0x39, 0x24, 0x75, 0x5b, 0xeb, 0x40, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_11404_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11404_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11404 = { .name = "ecdsa_secp256r1_sha256_11404", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11404_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11404_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11404_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 649 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11405 for ECDSA, tcId is 650 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11405_pubkey[] = { 0x87, 0x41, 0x46, 0x43, 0x2b, 0x3c, 0xd2, 0xc9, 0xe2, 0x62, 0x04, 0xc0, 0xa3, 0x41, 0x36, 0x99, 0x60, 0x67, 0xd4, 0x66, 0xdd, 0xe4, 0x91, 0x7a, 0x8f, 0xf2, 0x3a, 0x8e, 0x95, 0xca, 0x10, 0x6b, 0x70, 0x9b, 0x3d, 0x50, 0x97, 0x6e, 0xf8, 0xb3, 0x85, 0xa8, 0x13, 0xbc, 0x35, 0xf3, 0xa2, 0x07, 0x10, 0xbd, 0xc6, 0xed, 0xd4, 0x65, 0xe6, 0xf4, 0x3a, 0xc4, 0x86, 0x67, 0x03, 0xa6, 0x60, 0x8c, }; static const unsigned char ecdsa_secp256r1_sha256_11405_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11405_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11405 = { .name = "ecdsa_secp256r1_sha256_11405", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11405_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11405_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11405_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 650 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11406 for ECDSA, tcId is 651 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11406_pubkey[] = { 0x7a, 0x73, 0x6d, 0x8e, 0x32, 0x6a, 0x9c, 0xa6, 0x2b, 0xbe, 0x25, 0xa3, 0x4e, 0xa4, 0xe3, 0x63, 0x3b, 0x49, 0x9a, 0x96, 0xaf, 0xa7, 0xaa, 0xa3, 0xfc, 0xf3, 0xfd, 0x88, 0xf8, 0xe0, 0x7e, 0xde, 0xb3, 0xe4, 0x58, 0x79, 0xd8, 0x62, 0x2b, 0x93, 0xe8, 0x18, 0x44, 0x3a, 0x68, 0x6e, 0x86, 0x9e, 0xed, 0xa7, 0xbf, 0x9a, 0xe4, 0x6a, 0xa3, 0xea, 0xfc, 0xc4, 0x8a, 0x59, 0x34, 0x86, 0x46, 0x27, }; static const unsigned char ecdsa_secp256r1_sha256_11406_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11406_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11406 = { .name = "ecdsa_secp256r1_sha256_11406", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11406_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11406_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11406_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 651 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11407 for ECDSA, tcId is 652 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11407_pubkey[] = { 0xe8, 0x4d, 0x9b, 0x23, 0x2e, 0x97, 0x1a, 0x43, 0x38, 0x26, 0x30, 0xf9, 0x97, 0x25, 0xe4, 0x23, 0xec, 0x1e, 0xcb, 0x41, 0xe5, 0x51, 0x72, 0xe9, 0xc6, 0x97, 0x48, 0xa0, 0x3f, 0x0d, 0x59, 0x88, 0x61, 0x8b, 0x15, 0xb4, 0x27, 0xad, 0x83, 0x36, 0x3b, 0xd0, 0x41, 0xff, 0x75, 0xfa, 0xc9, 0x8e, 0xf2, 0xee, 0x92, 0x37, 0x14, 0xe7, 0xd1, 0xdf, 0xe3, 0x17, 0x53, 0x79, 0x3c, 0x75, 0x88, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_11407_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11407_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11407 = { .name = "ecdsa_secp256r1_sha256_11407", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11407_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11407_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11407_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 652 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11408 for ECDSA, tcId is 653 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11408_pubkey[] = { 0xe8, 0x4d, 0x9b, 0x23, 0x2e, 0x97, 0x1a, 0x43, 0x38, 0x26, 0x30, 0xf9, 0x97, 0x25, 0xe4, 0x23, 0xec, 0x1e, 0xcb, 0x41, 0xe5, 0x51, 0x72, 0xe9, 0xc6, 0x97, 0x48, 0xa0, 0x3f, 0x0d, 0x59, 0x88, 0x61, 0x8b, 0x15, 0xb4, 0x27, 0xad, 0x83, 0x36, 0x3b, 0xd0, 0x41, 0xff, 0x75, 0xfa, 0xc9, 0x8e, 0xf2, 0xee, 0x92, 0x37, 0x14, 0xe7, 0xd1, 0xdf, 0xe3, 0x17, 0x53, 0x79, 0x3c, 0x75, 0x88, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_11408_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11408_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11408 = { .name = "ecdsa_secp256r1_sha256_11408", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11408_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11408_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11408_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 653 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11409 for ECDSA, tcId is 654 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11409_pubkey[] = { 0x02, 0x03, 0x73, 0x6f, 0xcb, 0x19, 0x8b, 0x15, 0xd8, 0xd7, 0xa0, 0xc8, 0x0f, 0x66, 0xdd, 0xdd, 0x15, 0x25, 0x92, 0x40, 0xaa, 0x78, 0xd0, 0x8a, 0xae, 0x67, 0xc4, 0x67, 0xde, 0x04, 0x50, 0x34, 0x34, 0x38, 0x34, 0x38, 0xd5, 0x04, 0x1e, 0xa9, 0xa3, 0x87, 0xee, 0x8e, 0x4d, 0x4e, 0x84, 0xb4, 0x47, 0x1b, 0x16, 0x0c, 0x6b, 0xcf, 0x25, 0x68, 0xb0, 0x72, 0xf8, 0xf2, 0x0e, 0x87, 0xa9, 0x96, }; static const unsigned char ecdsa_secp256r1_sha256_11409_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11409_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11409 = { .name = "ecdsa_secp256r1_sha256_11409", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11409_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11409_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11409_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 654 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11410 for ECDSA, tcId is 655 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11410_pubkey[] = { 0x78, 0xd8, 0x44, 0xdc, 0x7f, 0x16, 0xb7, 0x3b, 0x1f, 0x2a, 0x39, 0x73, 0x0d, 0xa5, 0xd8, 0xcd, 0x99, 0xfe, 0x2e, 0x70, 0xa1, 0x84, 0x82, 0x38, 0x4e, 0x37, 0xdc, 0xd2, 0xbf, 0xea, 0x02, 0xe1, 0xed, 0x65, 0x72, 0xe0, 0x1e, 0xb7, 0xa8, 0xd1, 0x13, 0xd0, 0x2c, 0x66, 0x6c, 0x45, 0xef, 0x22, 0xd3, 0xb9, 0xa6, 0xa6, 0xde, 0xa9, 0x9a, 0xa4, 0x3a, 0x81, 0x83, 0xc2, 0x6e, 0x75, 0xd3, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11410_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11410_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11410 = { .name = "ecdsa_secp256r1_sha256_11410", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11410_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11410_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11410_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 655 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11411 for ECDSA, tcId is 656 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11411_pubkey[] = { 0xde, 0xc6, 0xc8, 0x25, 0x7d, 0xde, 0x94, 0x11, 0x0e, 0xac, 0xc8, 0xc0, 0x9d, 0x2e, 0x57, 0x89, 0xcc, 0x5b, 0xeb, 0x81, 0xa9, 0x58, 0xb0, 0x2b, 0x4d, 0x62, 0xda, 0x95, 0x99, 0xa7, 0x40, 0x14, 0x66, 0xfa, 0xe1, 0x61, 0x41, 0x74, 0xbe, 0x63, 0x97, 0x0b, 0x83, 0xf6, 0x52, 0x44, 0x21, 0x06, 0x7b, 0x06, 0xdd, 0x6f, 0x4e, 0x9c, 0x56, 0xba, 0xca, 0x4e, 0x34, 0x4f, 0xdd, 0x69, 0x0f, 0x1d, }; static const unsigned char ecdsa_secp256r1_sha256_11411_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11411_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11411 = { .name = "ecdsa_secp256r1_sha256_11411", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11411_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11411_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11411_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 656 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11412 for ECDSA, tcId is 657 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11412_pubkey[] = { 0xa1, 0x7f, 0x5b, 0x75, 0xa3, 0x5e, 0xd6, 0x46, 0x23, 0xca, 0x5c, 0xbf, 0x1f, 0x91, 0x95, 0x12, 0x92, 0xdb, 0x0c, 0x23, 0xf0, 0xc2, 0xea, 0x24, 0xc3, 0xd0, 0xca, 0xd0, 0x98, 0x8c, 0xab, 0xc0, 0x83, 0xa7, 0xa6, 0x18, 0x62, 0x5c, 0x22, 0x89, 0x40, 0x73, 0x0b, 0x4f, 0xa3, 0xee, 0x64, 0xfa, 0xec, 0xbb, 0x2f, 0xc2, 0x0f, 0xdd, 0xe7, 0xc5, 0x8b, 0x3a, 0x3f, 0x63, 0x00, 0x42, 0x4d, 0xc6, }; static const unsigned char ecdsa_secp256r1_sha256_11412_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11412_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11412 = { .name = "ecdsa_secp256r1_sha256_11412", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11412_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11412_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11412_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 657 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11413 for ECDSA, tcId is 658 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11413_pubkey[] = { 0x04, 0xba, 0x0c, 0xba, 0x29, 0x1a, 0x37, 0xdb, 0x13, 0xf3, 0x3b, 0xf9, 0x0d, 0xab, 0x62, 0x8c, 0x04, 0xec, 0x83, 0x93, 0xa0, 0x20, 0x04, 0x19, 0xe9, 0xea, 0xa1, 0xeb, 0xcc, 0x9f, 0xb5, 0xc3, 0x1f, 0x3a, 0x0a, 0x0e, 0x68, 0x23, 0xa4, 0x9b, 0x62, 0x5a, 0xd5, 0x7b, 0x12, 0xa3, 0x2d, 0x40, 0x47, 0x97, 0x0f, 0xc3, 0x42, 0x8f, 0x0f, 0x00, 0x49, 0xec, 0xf4, 0x26, 0x5d, 0xc1, 0x2f, 0x62, }; static const unsigned char ecdsa_secp256r1_sha256_11413_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11413_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11413 = { .name = "ecdsa_secp256r1_sha256_11413", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11413_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11413_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11413_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 658 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11414 for ECDSA, tcId is 659 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11414_pubkey[] = { 0x69, 0x2b, 0x6c, 0x82, 0x8e, 0x0f, 0xee, 0xd6, 0x3d, 0x8a, 0xea, 0xa2, 0xb7, 0x32, 0x2f, 0x9c, 0xcb, 0xe8, 0x72, 0x3a, 0x1e, 0xd3, 0x9f, 0x22, 0x9f, 0x20, 0x4a, 0x43, 0x4b, 0x89, 0x00, 0xef, 0xa1, 0xf6, 0xf6, 0xab, 0xcb, 0x38, 0xea, 0x3b, 0x8f, 0xde, 0x38, 0xb9, 0x8c, 0x7c, 0x27, 0x1f, 0x27, 0x4a, 0xf5, 0x6a, 0x8c, 0x56, 0x28, 0xdc, 0x33, 0x29, 0x06, 0x9a, 0xe4, 0xdd, 0x57, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_11414_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11414_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11414 = { .name = "ecdsa_secp256r1_sha256_11414", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11414_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11414_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11414_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 659 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11415 for ECDSA, tcId is 660 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11415_pubkey[] = { 0x00, 0xce, 0xfd, 0x91, 0x62, 0xd1, 0x3e, 0x64, 0xcb, 0x93, 0x68, 0x7a, 0x9c, 0xd8, 0xf9, 0x75, 0x5e, 0xbb, 0x5a, 0x3e, 0xf7, 0x63, 0x2f, 0x80, 0x0f, 0x84, 0x87, 0x18, 0x74, 0xcc, 0xef, 0x09, 0x54, 0x3e, 0xcb, 0xea, 0xf7, 0xe8, 0x04, 0x4e, 0xf7, 0x21, 0xbe, 0x2f, 0xb5, 0xf5, 0x49, 0xe4, 0xb8, 0x48, 0x0d, 0x25, 0x87, 0x40, 0x4e, 0xbf, 0x7d, 0xbb, 0xef, 0x2c, 0x54, 0xbc, 0x0c, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha256_11415_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11415_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11415 = { .name = "ecdsa_secp256r1_sha256_11415", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11415_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11415_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11415_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 660 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11416 for ECDSA, tcId is 661 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11416_pubkey[] = { 0xb9, 0x75, 0x18, 0x3b, 0x42, 0x55, 0x1c, 0xf5, 0x2f, 0x29, 0x1d, 0x5c, 0x19, 0x21, 0xfd, 0x5e, 0x12, 0xf5, 0x0c, 0x8c, 0x85, 0xa4, 0xbe, 0xb9, 0xde, 0x03, 0xef, 0xa3, 0xf0, 0xf2, 0x44, 0x86, 0x22, 0x43, 0x01, 0x8e, 0x68, 0x66, 0xdf, 0x92, 0x2d, 0xc3, 0x13, 0x61, 0x20, 0x20, 0x31, 0x1f, 0xf2, 0x1e, 0x24, 0x2c, 0xe3, 0xfb, 0x15, 0xbc, 0x78, 0xc4, 0x06, 0xb2, 0x5a, 0xb4, 0x30, 0x91, }; static const unsigned char ecdsa_secp256r1_sha256_11416_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11416_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x71, 0x0f, 0x8e, 0x3e, 0xdc, 0x7c, 0x2d, 0x5a, 0x3f, 0xd2, 0x3d, 0xe8, 0x44, 0x00, 0x2b, 0xb9, 0x49, 0xd9, 0xf7, 0x94, 0xf6, 0xd5, 0x40, 0x5f, 0x6d, 0x97, 0xc1, 0xbb, 0x03, 0xdd, 0x2b, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11416 = { .name = "ecdsa_secp256r1_sha256_11416", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11416_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11416_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11416_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 661 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11417 for ECDSA, tcId is 662 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11417_pubkey[] = { 0xc2, 0x5f, 0x1d, 0x16, 0x6f, 0x3e, 0x21, 0x1c, 0xdf, 0x04, 0x2a, 0x26, 0xf8, 0xab, 0xf6, 0x09, 0x4d, 0x48, 0xb8, 0xd1, 0x71, 0x91, 0xd7, 0x4e, 0xd7, 0x17, 0x14, 0x92, 0x74, 0x46, 0x69, 0x99, 0x65, 0xd0, 0x6d, 0xd6, 0xa8, 0x8a, 0xbf, 0xa4, 0x9e, 0x8b, 0x4c, 0x5d, 0xa6, 0xbb, 0x92, 0x28, 0x51, 0x96, 0x9a, 0xdf, 0x96, 0x04, 0xb5, 0xac, 0xcf, 0xb5, 0x2a, 0x11, 0x4e, 0x77, 0xcc, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha256_11417_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11417_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xed, 0xff, 0xbc, 0x27, 0x0f, 0x72, 0x2c, 0x24, 0x30, 0x69, 0xa7, 0xe5, 0xf4, 0x03, 0x35, 0xa6, 0x1a, 0x58, 0x52, 0x5c, 0x7b, 0x4d, 0xb2, 0xe7, 0xa8, 0xe2, 0x69, 0x27, 0x4f, 0xfe, 0x4e, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11417 = { .name = "ecdsa_secp256r1_sha256_11417", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11417_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11417_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11417_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 662 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11418 for ECDSA, tcId is 663 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11418_pubkey[] = { 0x8f, 0xe5, 0xe8, 0x82, 0x43, 0xa7, 0x6e, 0x41, 0xa0, 0x04, 0x23, 0x62, 0x18, 0xa3, 0xc3, 0xa2, 0xd6, 0xee, 0xe3, 0x98, 0xa2, 0x3c, 0x3a, 0x0b, 0x00, 0x8d, 0x7f, 0x01, 0x64, 0xcb, 0xc0, 0xca, 0x98, 0xa2, 0x0d, 0x1b, 0xdc, 0xf5, 0x73, 0x51, 0x3c, 0x7c, 0xfd, 0x9b, 0x83, 0xc6, 0x3e, 0x3a, 0x82, 0xd4, 0x01, 0x27, 0xc8, 0x97, 0x69, 0x7c, 0x86, 0xb8, 0xcb, 0x38, 0x7a, 0xf7, 0xf2, 0x40, }; static const unsigned char ecdsa_secp256r1_sha256_11418_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11418_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x5a, 0xdc, 0xae, 0x10, 0x5e, 0xd7, 0xff, 0x4f, 0x95, 0xd2, 0x34, 0x4e, 0x24, 0xee, 0x52, 0x33, 0x14, 0xc3, 0xe1, 0x78, 0x52, 0x5d, 0x00, 0x79, 0x04, 0xb6, 0x89, 0x19, 0xba, 0x4d, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11418 = { .name = "ecdsa_secp256r1_sha256_11418", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11418_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11418_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11418_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 663 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11419 for ECDSA, tcId is 664 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11419_pubkey[] = { 0x02, 0x14, 0x82, 0x56, 0xb5, 0x30, 0xfb, 0xc4, 0x70, 0xc7, 0xb3, 0x41, 0x97, 0x0b, 0x38, 0x24, 0x3e, 0xce, 0xe6, 0xd5, 0xa8, 0x40, 0xa3, 0x7b, 0xec, 0xa2, 0xef, 0xb3, 0x7e, 0x8d, 0xff, 0x2c, 0xc0, 0xad, 0xbe, 0xa0, 0x88, 0x24, 0x82, 0xa7, 0x48, 0x9c, 0xa7, 0x03, 0xa3, 0x99, 0x86, 0x4b, 0xa9, 0x87, 0xee, 0xb6, 0xdd, 0xb7, 0x38, 0xaf, 0x53, 0xa8, 0x35, 0x73, 0x47, 0x3c, 0xb3, 0x0d, }; static const unsigned char ecdsa_secp256r1_sha256_11419_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11419_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2e, 0x43, 0x48, 0xc6, 0x45, 0x70, 0x7d, 0xce, 0x67, 0x60, 0xd7, 0x73, 0xde, 0x3f, 0x3e, 0x87, 0x34, 0x69, 0x24, 0xb2, 0xf6, 0x4b, 0xd3, 0xdd, 0x02, 0x97, 0xe7, 0x66, 0xb5, 0x80, 0x5e, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11419 = { .name = "ecdsa_secp256r1_sha256_11419", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11419_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11419_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11419_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 664 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11420 for ECDSA, tcId is 665 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11420_pubkey[] = { 0xa3, 0x4d, 0xb0, 0x12, 0xce, 0x6e, 0xda, 0x1e, 0x9c, 0x73, 0x75, 0xc5, 0xfc, 0xf3, 0xe5, 0x4e, 0xd6, 0x98, 0xe1, 0x96, 0x15, 0x12, 0x42, 0x73, 0xb3, 0xa6, 0x21, 0xd0, 0x21, 0xc7, 0x6f, 0x8e, 0x77, 0x74, 0x58, 0xd6, 0xf5, 0x5a, 0x36, 0x4c, 0x22, 0x1e, 0x39, 0xe1, 0x20, 0x5d, 0x55, 0x10, 0xbb, 0x4f, 0xbb, 0x7d, 0xdf, 0x08, 0xd8, 0xd8, 0xfd, 0xde, 0x13, 0xd1, 0xd6, 0xdf, 0x7f, 0x14, }; static const unsigned char ecdsa_secp256r1_sha256_11420_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11420_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x34, 0x8c, 0x67, 0x3b, 0x07, 0xdc, 0xe3, 0x92, 0x0d, 0x77, 0x3d, 0xe3, 0xf3, 0xe8, 0x74, 0x08, 0x86, 0x9e, 0x91, 0x6d, 0xbc, 0xf7, 0x97, 0xd8, 0xf9, 0x68, 0x4f, 0xb6, 0x77, 0x53, 0xd1, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11420 = { .name = "ecdsa_secp256r1_sha256_11420", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11420_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11420_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11420_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 665 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11421 for ECDSA, tcId is 666 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11421_pubkey[] = { 0xb9, 0x7a, 0xf3, 0xfe, 0x78, 0xbe, 0x15, 0xf2, 0x91, 0x2b, 0x62, 0x71, 0xdd, 0x8a, 0x43, 0xba, 0xdb, 0x6d, 0xd2, 0xa1, 0xb3, 0x15, 0xb2, 0xce, 0x7a, 0xe3, 0x7b, 0x4e, 0x77, 0x78, 0x04, 0x1d, 0x93, 0x0d, 0x71, 0xee, 0x19, 0x92, 0xd2, 0x46, 0x64, 0x95, 0xc4, 0x21, 0x02, 0xd0, 0x8e, 0x81, 0x15, 0x4c, 0x30, 0x53, 0x07, 0xd1, 0xdc, 0xd5, 0x2d, 0x0f, 0xa4, 0xc4, 0x79, 0xb2, 0x78, 0xe7, }; static const unsigned char ecdsa_secp256r1_sha256_11421_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11421_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x69, 0x18, 0xce, 0x76, 0x0f, 0xb9, 0xc7, 0x24, 0x1a, 0xee, 0x7b, 0xc7, 0xe7, 0xd0, 0xe8, 0x11, 0x0d, 0x3d, 0x22, 0xdb, 0x79, 0xef, 0x2f, 0xb1, 0xf2, 0xd0, 0x9f, 0x6c, 0xee, 0xa7, 0xa3, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11421 = { .name = "ecdsa_secp256r1_sha256_11421", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11421_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11421_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11421_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 666 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11422 for ECDSA, tcId is 667 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11422_pubkey[] = { 0x81, 0xe7, 0x19, 0x8a, 0x3c, 0x3f, 0x23, 0x90, 0x1c, 0xed, 0xc7, 0xa1, 0xd6, 0xef, 0xf6, 0xe9, 0xbf, 0x81, 0x10, 0x8e, 0x6c, 0x35, 0xcd, 0x85, 0x59, 0x13, 0x9a, 0xf3, 0x13, 0x5d, 0xbc, 0xbb, 0x9e, 0xf1, 0x56, 0x85, 0x30, 0x29, 0x1a, 0x80, 0x61, 0xb9, 0x0c, 0x9f, 0x42, 0x85, 0xee, 0xfc, 0xba, 0x99, 0x0d, 0x45, 0x70, 0xa4, 0xe3, 0xb7, 0xb7, 0x37, 0x52, 0x5b, 0x5d, 0x58, 0x00, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_11422_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11422_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0xb3, 0xc6, 0x94, 0x39, 0x1d, 0x8e, 0xad, 0xde, 0x3f, 0x3e, 0x87, 0x40, 0x89, 0x46, 0x47, 0x15, 0xac, 0x20, 0xe4, 0xc1, 0x26, 0xbb, 0xf6, 0xd8, 0x64, 0xd6, 0x48, 0x96, 0x9f, 0x5b, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11422 = { .name = "ecdsa_secp256r1_sha256_11422", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11422_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11422_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11422_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 667 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11423 for ECDSA, tcId is 668 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11423_pubkey[] = { 0xab, 0x4d, 0x79, 0x2c, 0xa1, 0x21, 0xd1, 0xdb, 0xa3, 0x9c, 0xb9, 0xde, 0x64, 0x51, 0x49, 0xc2, 0xab, 0x57, 0x3e, 0x8b, 0xec, 0xc6, 0xdd, 0xff, 0x3c, 0xc9, 0x96, 0x0f, 0x18, 0x8d, 0xdf, 0x73, 0x7f, 0x90, 0xba, 0x23, 0x66, 0x41, 0x53, 0xe9, 0x32, 0x62, 0xff, 0x73, 0x35, 0x54, 0x15, 0x19, 0x58, 0x58, 0xd7, 0xbe, 0x13, 0x15, 0xa6, 0x94, 0x56, 0x38, 0x6d, 0xe6, 0x82, 0x85, 0xa3, 0xc8, }; static const unsigned char ecdsa_secp256r1_sha256_11423_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11423_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x07, 0xac, 0x7a, 0x86, 0x94, 0x8c, 0x2c, 0x29, 0x89, 0xa1, 0x6d, 0xb1, 0x93, 0x0e, 0xf1, 0xb8, 0x9c, 0xe1, 0x12, 0x59, 0x51, 0x97, 0x65, 0x68, 0x77, 0xe5, 0x3c, 0x41, 0x45, 0x7f, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11423 = { .name = "ecdsa_secp256r1_sha256_11423", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11423_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11423_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11423_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 668 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11424 for ECDSA, tcId is 669 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11424_pubkey[] = { 0x51, 0x84, 0x12, 0xb6, 0x9a, 0xf4, 0x3a, 0xae, 0x08, 0x44, 0x76, 0xa6, 0x8d, 0x59, 0xbb, 0xde, 0x51, 0xfb, 0xfa, 0x9e, 0x5b, 0xe8, 0x05, 0x63, 0xf5, 0x87, 0xc9, 0xc2, 0x65, 0x2f, 0x88, 0xef, 0x2d, 0x3b, 0x90, 0xd2, 0x5b, 0xaa, 0x6b, 0xdb, 0x7b, 0x0c, 0x55, 0xe5, 0x24, 0x0a, 0x3a, 0x98, 0xfb, 0xc2, 0x4a, 0xfe, 0xd8, 0x52, 0x3e, 0xde, 0xc1, 0xc7, 0x05, 0x03, 0xfc, 0x10, 0xf2, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_11424_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11424_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xe4, 0xd8, 0x2c, 0xb6, 0xc0, 0x61, 0xdd, 0x93, 0x37, 0xc6, 0x9b, 0xf9, 0x33, 0x2e, 0xd3, 0xd1, 0x98, 0x66, 0x2d, 0x6f, 0x22, 0x99, 0x44, 0x3f, 0x62, 0xc8, 0x61, 0x18, 0x7d, 0xb6, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11424 = { .name = "ecdsa_secp256r1_sha256_11424", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11424_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11424_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11424_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 669 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11425 for ECDSA, tcId is 670 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11425_pubkey[] = { 0xa0, 0x8f, 0x14, 0xa6, 0x44, 0xb9, 0xa9, 0x35, 0xdf, 0xfe, 0xa4, 0x76, 0x1e, 0xba, 0xf5, 0x92, 0xd1, 0xf6, 0x6f, 0xe6, 0xcd, 0x37, 0x3a, 0xa7, 0xf5, 0xd3, 0x70, 0xaf, 0x34, 0xf8, 0x35, 0x2d, 0xa5, 0x4b, 0x5b, 0xc4, 0x02, 0x5c, 0xf3, 0x35, 0x90, 0x0a, 0x91, 0x4c, 0x29, 0x34, 0xec, 0x2f, 0xec, 0x7a, 0x39, 0x6d, 0x0a, 0x7a, 0xff, 0xca, 0xd7, 0x32, 0xa5, 0x74, 0x1c, 0x7a, 0xaa, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_11425_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11425_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0xc5, 0xcf, 0x3a, 0xac, 0x2e, 0x88, 0x92, 0x3b, 0x77, 0x85, 0x05, 0x15, 0xff, 0xf6, 0xa1, 0x2d, 0x13, 0xb3, 0x56, 0xdf, 0xe9, 0xec, 0x27, 0x5c, 0x3d, 0xd8, 0x1a, 0xe9, 0x46, 0x09, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11425 = { .name = "ecdsa_secp256r1_sha256_11425", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11425_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11425_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11425_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 670 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11426 for ECDSA, tcId is 671 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11426_pubkey[] = { 0xcc, 0xf2, 0x29, 0x6a, 0x6a, 0x89, 0xb6, 0x2b, 0x90, 0x73, 0x9d, 0x38, 0xaf, 0x4a, 0xe3, 0xa2, 0x0e, 0x9f, 0x45, 0x71, 0x5b, 0x90, 0x04, 0x46, 0x39, 0x24, 0x10, 0x61, 0xe3, 0x3f, 0x8f, 0x8c, 0xaa, 0xce, 0x00, 0x46, 0x49, 0x1e, 0xea, 0xa1, 0xc6, 0xe9, 0xa4, 0x72, 0xb9, 0x6d, 0x88, 0xf4, 0xaf, 0x83, 0xe7, 0xff, 0x1b, 0xb8, 0x44, 0x38, 0xc7, 0xe0, 0x58, 0x03, 0x44, 0x12, 0xae, 0x08, }; static const unsigned char ecdsa_secp256r1_sha256_11426_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11426_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc7, 0x78, 0x38, 0xdf, 0x91, 0xc1, 0xe9, 0x53, 0xe0, 0x16, 0xe1, 0x0b, 0xdd, 0xff, 0xea, 0x23, 0x17, 0xf9, 0xfe, 0xe3, 0x2b, 0xac, 0xfe, 0x55, 0x3c, 0xed, 0xe9, 0xe5, 0x7a, 0x74, 0x8f, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11426 = { .name = "ecdsa_secp256r1_sha256_11426", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11426_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11426_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11426_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 671 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11427 for ECDSA, tcId is 672 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11427_pubkey[] = { 0x94, 0xb0, 0xfc, 0x15, 0x25, 0xbc, 0xab, 0xf8, 0x2b, 0x1f, 0x34, 0x89, 0x5e, 0x58, 0x19, 0xa0, 0x6c, 0x02, 0xb2, 0x3e, 0x04, 0x00, 0x22, 0x76, 0xe1, 0x65, 0xf9, 0x62, 0xc8, 0x6e, 0x39, 0x27, 0xbe, 0x7c, 0x2a, 0xb4, 0xd0, 0xb2, 0x53, 0x03, 0x20, 0x4f, 0xb3, 0x2a, 0x1f, 0x82, 0x92, 0x90, 0x27, 0x92, 0x22, 0x5e, 0x16, 0xa6, 0xd2, 0xdb, 0xfb, 0x29, 0xfb, 0xc8, 0x9a, 0x9c, 0x33, 0x76, }; static const unsigned char ecdsa_secp256r1_sha256_11427_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11427_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0xf0, 0x71, 0xc0, 0x23, 0x83, 0xd2, 0xa6, 0xc0, 0x2d, 0xc2, 0x17, 0xbb, 0xff, 0xd4, 0x46, 0x73, 0x0d, 0x03, 0x18, 0xb0, 0x42, 0x5e, 0x25, 0x86, 0x22, 0x09, 0x07, 0xf8, 0x85, 0xf9, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11427 = { .name = "ecdsa_secp256r1_sha256_11427", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11427_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11427_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11427_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 672 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11428 for ECDSA, tcId is 673 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11428_pubkey[] = { 0x53, 0x51, 0xf3, 0x7e, 0x1d, 0xe0, 0xc8, 0x8c, 0x50, 0x85, 0x27, 0xd8, 0x98, 0x82, 0xd1, 0x83, 0xcc, 0xdc, 0xf2, 0xef, 0xca, 0x40, 0x7e, 0xdb, 0x06, 0x27, 0xca, 0xdf, 0xd1, 0x6d, 0xe6, 0xec, 0x44, 0xb4, 0xb5, 0x7c, 0xdf, 0x96, 0x0d, 0x32, 0xeb, 0xcc, 0x4c, 0x97, 0x84, 0x7e, 0xed, 0x21, 0x84, 0x25, 0x85, 0x3b, 0x5b, 0x67, 0x5e, 0xb7, 0x81, 0xb7, 0x66, 0xa1, 0xa1, 0x30, 0x03, 0x49, }; static const unsigned char ecdsa_secp256r1_sha256_11428_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11428_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x56, 0x68, 0xaa, 0xa0, 0xb5, 0x45, 0xbb, 0xf9, 0xa0, 0x44, 0xa3, 0x23, 0x99, 0xff, 0xbe, 0x69, 0xce, 0x20, 0x07, 0x4e, 0x34, 0xd7, 0xbd, 0xf5, 0xcf, 0x56, 0x28, 0x2a, 0x76, 0x97, 0x63, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11428 = { .name = "ecdsa_secp256r1_sha256_11428", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11428_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11428_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11428_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 673 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11429 for ECDSA, tcId is 674 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11429_pubkey[] = { 0x74, 0x8b, 0xba, 0xfc, 0x32, 0x0e, 0x67, 0x35, 0xcb, 0x64, 0x01, 0x97, 0x10, 0xa2, 0x69, 0xc6, 0xc2, 0xb5, 0xd1, 0x47, 0xbd, 0xc8, 0x31, 0x32, 0x5c, 0xb2, 0xfb, 0x27, 0x6a, 0xc9, 0x71, 0xa6, 0x9d, 0x65, 0x5e, 0x9a, 0x75, 0x5b, 0xc9, 0xd8, 0x00, 0xad, 0x21, 0xee, 0x3f, 0xd4, 0xd9, 0x80, 0xd9, 0x3a, 0x7a, 0x49, 0xa8, 0xc5, 0xcc, 0xd3, 0x70, 0x05, 0x17, 0x75, 0x78, 0xf5, 0x11, 0x63, }; static const unsigned char ecdsa_secp256r1_sha256_11429_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11429_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0x2d, 0x6e, 0x56, 0x88, 0x2f, 0x6c, 0x00, 0x27, 0xca, 0xe9, 0x1a, 0x27, 0x12, 0x77, 0x28, 0xf7, 0xfd, 0xdf, 0x47, 0x8f, 0xb4, 0xfd, 0xc2, 0xb6, 0x5f, 0x40, 0xa6, 0x0b, 0x0e, 0xb9, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11429 = { .name = "ecdsa_secp256r1_sha256_11429", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11429_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11429_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11429_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 674 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11430 for ECDSA, tcId is 675 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11430_pubkey[] = { 0x14, 0xb3, 0xbb, 0xd7, 0x5c, 0x5e, 0x1c, 0x0c, 0x36, 0x53, 0x5a, 0x93, 0x4d, 0x4a, 0xb8, 0x51, 0x12, 0x41, 0x0b, 0x3b, 0x90, 0xfa, 0x97, 0xa3, 0x1c, 0x33, 0x03, 0x89, 0x64, 0xfd, 0x85, 0xcc, 0x11, 0x2f, 0x7d, 0x83, 0x7f, 0x8f, 0x9c, 0x36, 0xb4, 0x60, 0xd6, 0x36, 0xc9, 0x65, 0xa5, 0xf8, 0x18, 0xf2, 0xb5, 0x0c, 0x5d, 0x00, 0xfb, 0x3f, 0x97, 0x05, 0x56, 0x1d, 0xd6, 0x63, 0x18, 0x83, }; static const unsigned char ecdsa_secp256r1_sha256_11430_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11430_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11430 = { .name = "ecdsa_secp256r1_sha256_11430", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11430_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11430_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11430_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 675 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11431 for ECDSA, tcId is 676 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11431_pubkey[] = { 0xd8, 0x23, 0x53, 0x3c, 0x04, 0xcd, 0x8e, 0xdc, 0x6d, 0x6f, 0x95, 0x0a, 0x8e, 0x08, 0xad, 0xe0, 0x4a, 0x9b, 0xaf, 0xa2, 0xf1, 0x4a, 0x59, 0x03, 0x56, 0x93, 0x56, 0x71, 0xae, 0x93, 0x05, 0xbf, 0x43, 0x17, 0x8d, 0x1f, 0x88, 0xb6, 0xa5, 0x7a, 0x96, 0x92, 0x4c, 0x26, 0x5f, 0x0d, 0xdb, 0x75, 0xb5, 0x83, 0x12, 0x90, 0x7b, 0x19, 0x5a, 0xcb, 0x59, 0xd7, 0x79, 0x73, 0x03, 0x12, 0x37, 0x75, }; static const unsigned char ecdsa_secp256r1_sha256_11431_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11431_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11431 = { .name = "ecdsa_secp256r1_sha256_11431", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11431_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11431_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11431_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 676 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11432 for ECDSA, tcId is 677 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11432_pubkey[] = { 0xdb, 0x2b, 0x34, 0x08, 0xb3, 0x16, 0x7d, 0x91, 0x03, 0x06, 0x24, 0xc6, 0x32, 0x8e, 0x8c, 0xe3, 0xec, 0x10, 0x8c, 0x10, 0x55, 0x75, 0xc2, 0xf3, 0xd2, 0x09, 0xb9, 0x2e, 0x65, 0x4b, 0xab, 0x69, 0xc3, 0x43, 0x18, 0x13, 0x9c, 0x50, 0xb0, 0x80, 0x2c, 0x6e, 0x61, 0x2f, 0x0f, 0xd3, 0x18, 0x9d, 0x80, 0x0d, 0xf7, 0xc9, 0x96, 0xd5, 0xd7, 0xb7, 0xc3, 0xd6, 0xbe, 0x82, 0x83, 0x6f, 0xa2, 0x58, }; static const unsigned char ecdsa_secp256r1_sha256_11432_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11432_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11432 = { .name = "ecdsa_secp256r1_sha256_11432", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11432_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11432_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11432_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 677 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11433 for ECDSA, tcId is 678 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11433_pubkey[] = { 0x09, 0x17, 0x9c, 0xe7, 0xc5, 0x92, 0x25, 0x39, 0x22, 0x16, 0x45, 0x3b, 0x2a, 0xc1, 0xe9, 0xd1, 0x78, 0xc2, 0x48, 0x37, 0xdf, 0xae, 0x26, 0xbc, 0x1d, 0xd7, 0xab, 0x60, 0x63, 0x85, 0x27, 0x42, 0x55, 0x56, 0xb4, 0x2e, 0x33, 0x02, 0x89, 0xf3, 0xb8, 0x26, 0xb2, 0xdb, 0x7a, 0x86, 0xd1, 0x9d, 0x45, 0xc2, 0x86, 0x0a, 0x59, 0xf2, 0xbe, 0x1d, 0xdc, 0xc3, 0xb6, 0x91, 0xf9, 0x5a, 0x92, 0x55, }; static const unsigned char ecdsa_secp256r1_sha256_11433_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11433_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11433 = { .name = "ecdsa_secp256r1_sha256_11433", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11433_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11433_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11433_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 678 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11434 for ECDSA, tcId is 679 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11434_pubkey[] = { 0x01, 0x95, 0x9f, 0xb8, 0xde, 0xda, 0x56, 0xe5, 0x46, 0x7b, 0x7e, 0x4b, 0x21, 0x4e, 0xa4, 0xc2, 0xd0, 0xc2, 0xfb, 0x29, 0xd7, 0x0f, 0xf1, 0x9b, 0x6b, 0x1e, 0xcc, 0xeb, 0xd6, 0x56, 0x8d, 0x7e, 0xd9, 0xdb, 0xd7, 0x7a, 0x91, 0x82, 0x97, 0xfd, 0x97, 0x0b, 0xff, 0x01, 0xe1, 0x34, 0x3f, 0x69, 0x25, 0x16, 0x7d, 0xb5, 0xa1, 0x4d, 0x09, 0x8a, 0x21, 0x1c, 0x39, 0xcc, 0x3a, 0x41, 0x33, 0x98, }; static const unsigned char ecdsa_secp256r1_sha256_11434_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11434_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11434 = { .name = "ecdsa_secp256r1_sha256_11434", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11434_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11434_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11434_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 679 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11435 for ECDSA, tcId is 680 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11435_pubkey[] = { 0x56, 0x7f, 0x1f, 0xdc, 0x38, 0x7e, 0x53, 0x50, 0xc8, 0x52, 0xb4, 0xe8, 0xf8, 0xba, 0x9d, 0x6d, 0x94, 0x7e, 0x1c, 0x5d, 0xd7, 0xcc, 0xc6, 0x1a, 0x59, 0x38, 0x24, 0x5d, 0xd6, 0xbc, 0xab, 0x3a, 0x99, 0x60, 0xbe, 0xba, 0xf9, 0x19, 0x51, 0x4f, 0x95, 0x35, 0xc2, 0x2e, 0xaa, 0xf0, 0xb5, 0x81, 0x28, 0x57, 0x97, 0x0e, 0x26, 0x66, 0x22, 0x67, 0xb1, 0xf3, 0xeb, 0x10, 0x11, 0x13, 0x0a, 0x11, }; static const unsigned char ecdsa_secp256r1_sha256_11435_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11435_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11435 = { .name = "ecdsa_secp256r1_sha256_11435", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11435_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11435_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11435_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 680 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11436 for ECDSA, tcId is 681 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11436_pubkey[] = { 0x34, 0x99, 0xf9, 0x74, 0xff, 0x4c, 0xa6, 0xbb, 0xb2, 0xf5, 0x16, 0x82, 0xfd, 0x5f, 0x51, 0x76, 0x2f, 0x9d, 0xd6, 0xdd, 0x28, 0x55, 0x26, 0x26, 0x60, 0xb3, 0x6d, 0x46, 0xd3, 0xe4, 0xbe, 0xc2, 0xf4, 0x98, 0xfa, 0xe2, 0x48, 0x78, 0x07, 0xe2, 0x20, 0x11, 0x91, 0x52, 0xf0, 0x12, 0x24, 0x76, 0xc6, 0x4d, 0x4f, 0xa4, 0x6d, 0xdc, 0xe8, 0x5c, 0x45, 0x46, 0x63, 0x0f, 0x0d, 0x5c, 0x5e, 0x81, }; static const unsigned char ecdsa_secp256r1_sha256_11436_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11436_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11436 = { .name = "ecdsa_secp256r1_sha256_11436", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11436_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11436_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11436_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 681 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11437 for ECDSA, tcId is 682 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11437_pubkey[] = { 0x2c, 0x5c, 0x01, 0x66, 0x2c, 0xf0, 0x0c, 0x19, 0x29, 0x59, 0x62, 0x57, 0xdb, 0x13, 0xb2, 0x6e, 0xcf, 0x30, 0xd0, 0xf3, 0xec, 0x4b, 0x9f, 0x03, 0x51, 0xb0, 0xf2, 0x70, 0x94, 0x47, 0x34, 0x26, 0xe9, 0x86, 0xa0, 0x86, 0x06, 0x0d, 0x08, 0x6e, 0xee, 0x82, 0x2d, 0xdd, 0x2f, 0xc7, 0x44, 0x24, 0x7a, 0x01, 0x54, 0xb5, 0x7f, 0x7a, 0x69, 0xc5, 0x1d, 0x9f, 0xda, 0xfa, 0x48, 0x4e, 0x4a, 0xc7, }; static const unsigned char ecdsa_secp256r1_sha256_11437_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11437_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11437 = { .name = "ecdsa_secp256r1_sha256_11437", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11437_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11437_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11437_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 682 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11438 for ECDSA, tcId is 683 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11438_pubkey[] = { 0x91, 0xd4, 0xcb, 0xa8, 0x13, 0xa0, 0x4d, 0x86, 0xdb, 0xae, 0x94, 0xc2, 0x3b, 0xe6, 0xf5, 0x2c, 0x15, 0x77, 0x41, 0x83, 0xbe, 0x7b, 0xa5, 0xb2, 0xd9, 0xf3, 0xcf, 0x01, 0x0b, 0x16, 0x05, 0x01, 0x90, 0x0b, 0x8a, 0xdf, 0xea, 0x64, 0x91, 0x01, 0x9a, 0x9a, 0xc0, 0x80, 0xd5, 0x16, 0x02, 0x5a, 0x54, 0x1b, 0xf4, 0xb9, 0x52, 0xb0, 0xad, 0x7b, 0xe4, 0xb1, 0x87, 0x4b, 0x02, 0xfd, 0x54, 0x4a, }; static const unsigned char ecdsa_secp256r1_sha256_11438_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11438_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11438 = { .name = "ecdsa_secp256r1_sha256_11438", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11438_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11438_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11438_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 683 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11439 for ECDSA, tcId is 684 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11439_pubkey[] = { 0xef, 0x7f, 0xd0, 0xa3, 0xa3, 0x63, 0x86, 0x63, 0x83, 0x30, 0xec, 0xad, 0x41, 0xe1, 0xa3, 0xb3, 0x02, 0xaf, 0x36, 0x96, 0x08, 0x31, 0xd0, 0x21, 0x0c, 0x61, 0x4b, 0x94, 0x8e, 0x8a, 0xa1, 0x24, 0xef, 0x0d, 0x6d, 0x80, 0x0e, 0x40, 0x47, 0xd6, 0xd3, 0xc1, 0xbe, 0x0f, 0xde, 0xaf, 0x11, 0xfc, 0xd8, 0xca, 0xb5, 0xab, 0x59, 0xc7, 0x30, 0xeb, 0x34, 0x11, 0x6e, 0x35, 0xa8, 0xc7, 0xd0, 0x98, }; static const unsigned char ecdsa_secp256r1_sha256_11439_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11439_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11439 = { .name = "ecdsa_secp256r1_sha256_11439", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11439_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11439_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11439_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 684 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11440 for ECDSA, tcId is 685 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11440_pubkey[] = { 0xa5, 0x21, 0xda, 0xb1, 0x3c, 0xc9, 0x15, 0x2d, 0x8c, 0xa7, 0x70, 0x35, 0xa6, 0x07, 0xfe, 0xa0, 0x6c, 0x55, 0xcc, 0x3c, 0xa5, 0xdb, 0xeb, 0x86, 0x8c, 0xea, 0x92, 0xea, 0xfe, 0x93, 0xdf, 0x2a, 0x7b, 0xfb, 0x9b, 0x28, 0x53, 0x19, 0x96, 0x63, 0x5e, 0x6a, 0x5c, 0xca, 0xa2, 0x82, 0x6a, 0x40, 0x6c, 0xe1, 0x11, 0x1b, 0xdb, 0x9c, 0x2e, 0x0c, 0xa3, 0x65, 0x00, 0x41, 0x8a, 0x2f, 0x43, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_11440_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11440_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11440 = { .name = "ecdsa_secp256r1_sha256_11440", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11440_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11440_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11440_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 685 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11441 for ECDSA, tcId is 686 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11441_pubkey[] = { 0x47, 0x4d, 0x58, 0xa4, 0xee, 0xc1, 0x6e, 0x0d, 0x56, 0x5f, 0x21, 0x87, 0xfe, 0x11, 0xd4, 0xe8, 0xe7, 0xa2, 0x68, 0x3a, 0x12, 0xf3, 0x8b, 0x4f, 0xc0, 0x1d, 0x12, 0x37, 0xa8, 0x1a, 0x10, 0x97, 0x6e, 0x55, 0xf7, 0x3b, 0xb7, 0xcd, 0xda, 0x46, 0xbd, 0xb6, 0x7e, 0xf7, 0x7f, 0x6f, 0xd2, 0x96, 0x9d, 0xf2, 0xb6, 0x79, 0x20, 0xfb, 0x59, 0x45, 0xfd, 0xe3, 0xa5, 0x17, 0xa6, 0xde, 0xd4, 0xcd, }; static const unsigned char ecdsa_secp256r1_sha256_11441_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11441_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11441 = { .name = "ecdsa_secp256r1_sha256_11441", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11441_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11441_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11441_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 686 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11442 for ECDSA, tcId is 687 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11442_pubkey[] = { 0x69, 0x2d, 0xa5, 0xcd, 0x43, 0x09, 0xd9, 0xa6, 0xe5, 0xcb, 0x52, 0x5c, 0x37, 0xda, 0x8f, 0xa0, 0x87, 0x9f, 0x7b, 0x57, 0x20, 0x8c, 0xda, 0xbb, 0xf4, 0x7d, 0x22, 0x3a, 0x5b, 0x23, 0xa6, 0x21, 0x40, 0xe0, 0xda, 0xa7, 0x8c, 0xfd, 0xd2, 0x07, 0xa7, 0x38, 0x9a, 0xae, 0xd6, 0x17, 0x38, 0xb1, 0x7f, 0xc5, 0xfc, 0x3e, 0x6a, 0x5e, 0xd3, 0x39, 0x7d, 0x29, 0x02, 0xe9, 0x12, 0x5e, 0x6a, 0xb4, }; static const unsigned char ecdsa_secp256r1_sha256_11442_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11442_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11442 = { .name = "ecdsa_secp256r1_sha256_11442", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11442_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11442_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11442_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 687 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11443 for ECDSA, tcId is 688 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11443_pubkey[] = { 0x85, 0x68, 0x9b, 0x3e, 0x07, 0x75, 0xc7, 0x71, 0x8a, 0x90, 0x27, 0x9f, 0x14, 0xa8, 0x08, 0x2c, 0xfc, 0xd4, 0xd1, 0xf1, 0x67, 0x92, 0x74, 0xf4, 0xe9, 0xb8, 0x80, 0x5c, 0x57, 0x0a, 0x06, 0x70, 0x16, 0x7f, 0xcc, 0x5c, 0xa7, 0x34, 0x55, 0x2e, 0x09, 0xaf, 0xa3, 0x64, 0x0f, 0x4a, 0x03, 0x4e, 0x15, 0xb9, 0xb7, 0xca, 0x66, 0x1e, 0xc7, 0xff, 0x70, 0xd3, 0xf2, 0x40, 0xeb, 0xe7, 0x05, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha256_11443_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11443_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11443 = { .name = "ecdsa_secp256r1_sha256_11443", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11443_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11443_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11443_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 688 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11444 for ECDSA, tcId is 689 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11444_pubkey[] = { 0x01, 0x58, 0x13, 0x77, 0x55, 0xb9, 0x01, 0xf7, 0x97, 0xa9, 0x0d, 0x4c, 0xa8, 0x88, 0x7e, 0x02, 0x3c, 0xb2, 0xef, 0x63, 0xb2, 0xba, 0x2c, 0x0d, 0x45, 0x5e, 0xda, 0xef, 0x42, 0xcf, 0x23, 0x7e, 0x2a, 0x96, 0x4f, 0xc0, 0x0d, 0x37, 0x7a, 0x85, 0x92, 0xb8, 0xb6, 0x1a, 0xaf, 0xa7, 0xa4, 0xaa, 0xa7, 0xc7, 0xb9, 0xfd, 0x2b, 0x41, 0xd6, 0xe0, 0xe1, 0x7b, 0xd1, 0xba, 0x56, 0x77, 0xed, 0xcd, }; static const unsigned char ecdsa_secp256r1_sha256_11444_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11444_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xf2, 0x1d, 0x90, 0x7e, 0x38, 0x90, 0x91, 0x6d, 0xc4, 0xfa, 0x1f, 0x47, 0x03, 0xc1, 0xe5, 0x0d, 0x3f, 0x54, 0xdd, 0xf7, 0x38, 0x3e, 0x44, 0x02, 0x3a, 0x41, 0xde, 0x56, 0x2a, 0xa1, 0x8e, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11444 = { .name = "ecdsa_secp256r1_sha256_11444", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11444_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11444_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11444_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 689 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11445 for ECDSA, tcId is 690 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11445_pubkey[] = { 0x01, 0x58, 0x13, 0x77, 0x55, 0xb9, 0x01, 0xf7, 0x97, 0xa9, 0x0d, 0x4c, 0xa8, 0x88, 0x7e, 0x02, 0x3c, 0xb2, 0xef, 0x63, 0xb2, 0xba, 0x2c, 0x0d, 0x45, 0x5e, 0xda, 0xef, 0x42, 0xcf, 0x23, 0x7e, 0xd5, 0x69, 0xb0, 0x3e, 0xf2, 0xc8, 0x85, 0x7b, 0x6d, 0x47, 0x49, 0xe5, 0x50, 0x58, 0x5b, 0x55, 0x58, 0x38, 0x46, 0x03, 0xd4, 0xbe, 0x29, 0x1f, 0x1e, 0x84, 0x2e, 0x45, 0xa9, 0x88, 0x12, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_11445_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11445_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xf2, 0x1d, 0x90, 0x7e, 0x38, 0x90, 0x91, 0x6d, 0xc4, 0xfa, 0x1f, 0x47, 0x03, 0xc1, 0xe5, 0x0d, 0x3f, 0x54, 0xdd, 0xf7, 0x38, 0x3e, 0x44, 0x02, 0x3a, 0x41, 0xde, 0x56, 0x2a, 0xa1, 0x8e, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11445 = { .name = "ecdsa_secp256r1_sha256_11445", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11445_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11445_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11445_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 690 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11446 for ECDSA, tcId is 691 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11446_pubkey[] = { 0x38, 0xa0, 0x84, 0xff, 0xcc, 0xc4, 0xae, 0x2f, 0x82, 0x04, 0xbe, 0x2a, 0xbc, 0xa9, 0xfb, 0x8a, 0xd4, 0xab, 0x28, 0x3b, 0x2a, 0xa5, 0x0f, 0x13, 0xb6, 0xbb, 0x23, 0x47, 0xad, 0xab, 0xc6, 0x9c, 0xa6, 0x99, 0x79, 0x9b, 0x77, 0xb1, 0xcc, 0x6d, 0xad, 0x27, 0x1e, 0x88, 0xb8, 0x99, 0xc1, 0x29, 0x31, 0x98, 0x6e, 0x95, 0x8e, 0x1f, 0x5c, 0xf5, 0x65, 0x3d, 0xdd, 0xf7, 0x38, 0x93, 0x65, 0xe2, }; static const unsigned char ecdsa_secp256r1_sha256_11446_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11446_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11446 = { .name = "ecdsa_secp256r1_sha256_11446", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11446_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11446_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11446_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 691 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11447 for ECDSA, tcId is 692 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11447_pubkey[] = { 0x7a, 0x87, 0x6f, 0xbf, 0x82, 0x1d, 0x96, 0xc5, 0x55, 0xc3, 0x53, 0x93, 0xd3, 0xb2, 0xd2, 0xe8, 0x09, 0xa6, 0xd8, 0x39, 0xb0, 0xb1, 0x15, 0xd9, 0x64, 0xda, 0x3e, 0x91, 0x9e, 0xf8, 0x25, 0x04, 0x73, 0x3d, 0xcf, 0x41, 0xd8, 0x33, 0xb0, 0x53, 0x0b, 0x87, 0xa7, 0xb1, 0xa5, 0x2f, 0x7d, 0x91, 0xbf, 0xa1, 0x99, 0x13, 0xf7, 0x15, 0x18, 0x86, 0x91, 0x3b, 0x16, 0x0d, 0xe0, 0x7c, 0xd6, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha256_11447_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11447_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11447 = { .name = "ecdsa_secp256r1_sha256_11447", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11447_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11447_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11447_sig, .siglen = 65, .result = -1, .comment = "point with x-coordinate 0, tcId is 692 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11448 for ECDSA, tcId is 693 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11448_pubkey[] = { 0x66, 0x4c, 0xe2, 0x73, 0x32, 0x0d, 0x91, 0x8d, 0x8b, 0xdb, 0x2e, 0x61, 0x20, 0x1b, 0x45, 0x49, 0xb3, 0x6b, 0x7c, 0xdc, 0x54, 0xe3, 0x3b, 0x84, 0xad, 0xb6, 0xf2, 0xc1, 0x0a, 0xac, 0x83, 0x1e, 0x49, 0xe6, 0x88, 0x31, 0xf1, 0x8b, 0xda, 0x29, 0x73, 0xac, 0x3d, 0x76, 0xbf, 0xbc, 0x8c, 0x5e, 0xe1, 0xcc, 0xee, 0xd2, 0xdd, 0x86, 0x2e, 0x2d, 0xc7, 0xc9, 0x15, 0xc7, 0x36, 0xce, 0xf1, 0xf4, }; static const unsigned char ecdsa_secp256r1_sha256_11448_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11448_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11448 = { .name = "ecdsa_secp256r1_sha256_11448", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11448_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11448_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11448_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 693 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11449 for ECDSA, tcId is 694 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11449_pubkey[] = { 0x96, 0x16, 0x91, 0xa5, 0xe9, 0x60, 0xd0, 0x7a, 0x30, 0x1d, 0xbb, 0xad, 0x4d, 0x86, 0x24, 0x7e, 0xc2, 0x7d, 0x70, 0x89, 0xfa, 0xeb, 0x3d, 0xdd, 0x1a, 0xdd, 0x39, 0x5e, 0xff, 0xf1, 0xe0, 0xfe, 0x72, 0x54, 0x62, 0x2c, 0xc3, 0x71, 0x86, 0x6c, 0xdf, 0x99, 0x0d, 0x2c, 0x53, 0x77, 0x79, 0x0e, 0x37, 0xd1, 0xf1, 0x51, 0x98, 0x17, 0xf0, 0x9a, 0x23, 0x1b, 0xd2, 0x60, 0xa9, 0xe7, 0x8a, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha256_11449_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11449_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11449 = { .name = "ecdsa_secp256r1_sha256_11449", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11449_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11449_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11449_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 694 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11450 for ECDSA, tcId is 695 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11450_pubkey[] = { 0x5d, 0x28, 0x3e, 0x13, 0xce, 0x8c, 0xa6, 0x0d, 0xa8, 0x68, 0xe3, 0xb0, 0xfb, 0x33, 0xe6, 0xb4, 0xf1, 0x07, 0x47, 0x93, 0x27, 0x4e, 0x29, 0x28, 0x25, 0x0e, 0x71, 0xe2, 0xac, 0xa6, 0x3e, 0x9c, 0x21, 0x4d, 0xc7, 0x4f, 0xa2, 0x53, 0x71, 0xfb, 0x4d, 0x9e, 0x50, 0x6d, 0x41, 0x8e, 0xd9, 0xa1, 0xbf, 0xd6, 0xd0, 0xc8, 0xbb, 0x65, 0x91, 0xd3, 0xe0, 0xf4, 0x45, 0x05, 0xa8, 0x48, 0x86, 0xce, }; static const unsigned char ecdsa_secp256r1_sha256_11450_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11450_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11450 = { .name = "ecdsa_secp256r1_sha256_11450", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11450_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11450_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11450_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 695 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11451 for ECDSA, tcId is 696 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11451_pubkey[] = { 0x0f, 0xc3, 0x51, 0xda, 0x03, 0x8a, 0xe0, 0x80, 0x3b, 0xd1, 0xd8, 0x65, 0x14, 0xae, 0x04, 0x62, 0xf9, 0xf8, 0x21, 0x65, 0x51, 0xd9, 0x31, 0x5a, 0xa9, 0xd2, 0x97, 0xf7, 0x92, 0xee, 0xf6, 0xa3, 0x41, 0xc7, 0x4e, 0xed, 0x78, 0x6f, 0x2d, 0x33, 0xda, 0x35, 0x36, 0x0c, 0xa7, 0xaa, 0x92, 0x5e, 0x75, 0x3f, 0x00, 0xd6, 0x07, 0x7a, 0x1e, 0x9e, 0x5f, 0xc3, 0x39, 0xd6, 0x34, 0x01, 0x9c, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_11451_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11451_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11451 = { .name = "ecdsa_secp256r1_sha256_11451", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11451_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11451_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11451_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 696 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11452 for ECDSA, tcId is 697 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11452_pubkey[] = { 0xa1, 0xe3, 0x4c, 0x8f, 0x16, 0xd1, 0x38, 0x67, 0x3f, 0xee, 0x55, 0xc0, 0x80, 0x54, 0x7c, 0x2b, 0xfd, 0x4d, 0xe7, 0x55, 0x00, 0x65, 0xf6, 0x38, 0x32, 0x2b, 0xba, 0x94, 0x30, 0xce, 0x4b, 0x60, 0x66, 0x2b, 0xe9, 0xbb, 0x51, 0x26, 0x63, 0xaa, 0x4d, 0x7d, 0xf8, 0xab, 0x3f, 0x3b, 0x41, 0x81, 0xc5, 0xd4, 0x4a, 0x7b, 0xdf, 0x42, 0x43, 0x66, 0x20, 0xb7, 0xd8, 0xa6, 0xb8, 0x1a, 0xc9, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_11452_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11452_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11452 = { .name = "ecdsa_secp256r1_sha256_11452", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11452_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11452_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11452_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 697 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11453 for ECDSA, tcId is 698 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11453_pubkey[] = { 0x7e, 0x1a, 0x8a, 0x83, 0x38, 0xd7, 0xfd, 0x8c, 0xf4, 0x1d, 0x32, 0x2a, 0x30, 0x2d, 0x20, 0x78, 0xa8, 0x7a, 0x23, 0xc7, 0x18, 0x61, 0x50, 0xed, 0x7c, 0xda, 0x6e, 0x52, 0x81, 0x7c, 0x1b, 0xdf, 0xd0, 0xa9, 0x13, 0x5a, 0x89, 0xd2, 0x1c, 0xe8, 0x21, 0xe2, 0x90, 0x14, 0xb2, 0x89, 0x83, 0x49, 0x25, 0x4d, 0x74, 0x82, 0x72, 0xb2, 0xd4, 0xeb, 0x8d, 0x59, 0xee, 0x34, 0xc6, 0x15, 0x37, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha256_11453_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11453_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11453 = { .name = "ecdsa_secp256r1_sha256_11453", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11453_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11453_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11453_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 698 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11454 for ECDSA, tcId is 699 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11454_pubkey[] = { 0x5c, 0x19, 0xfe, 0x22, 0x7a, 0x61, 0xab, 0xc6, 0x5c, 0x61, 0xee, 0x7a, 0x01, 0x8c, 0xc9, 0x57, 0x1b, 0x2c, 0x6f, 0x66, 0x3e, 0xa3, 0x35, 0x83, 0xf7, 0x6a, 0x68, 0x6f, 0x64, 0xbe, 0x07, 0x8b, 0x7b, 0x4a, 0x0d, 0x73, 0x49, 0x40, 0xf6, 0x13, 0xd5, 0x2b, 0xc4, 0x86, 0x73, 0xb4, 0x57, 0xc2, 0xcf, 0x78, 0x49, 0x24, 0x90, 0xa5, 0xcc, 0x56, 0x06, 0xc0, 0x54, 0x1d, 0x17, 0xb2, 0x4d, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha256_11454_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11454_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11454 = { .name = "ecdsa_secp256r1_sha256_11454", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11454_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11454_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11454_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 699 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11455 for ECDSA, tcId is 700 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11455_pubkey[] = { 0xdb, 0x02, 0xd1, 0xf3, 0x42, 0x1d, 0x60, 0x0e, 0x9d, 0x9e, 0xf9, 0xe4, 0x74, 0x19, 0xdb, 0xa3, 0x20, 0x8e, 0xed, 0x08, 0xc2, 0xd4, 0x18, 0x9a, 0x5d, 0xb6, 0x3a, 0xbe, 0xb2, 0x73, 0x96, 0x66, 0xe0, 0xed, 0x26, 0x96, 0x7b, 0x9a, 0xda, 0x9e, 0xd7, 0xff, 0xe4, 0x80, 0x82, 0x7f, 0x90, 0xa0, 0xd2, 0x10, 0xd5, 0xfd, 0x8e, 0xc6, 0x28, 0xe3, 0x17, 0x15, 0xe6, 0xb2, 0x41, 0x25, 0x51, 0x2a, }; static const unsigned char ecdsa_secp256r1_sha256_11455_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11455_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11455 = { .name = "ecdsa_secp256r1_sha256_11455", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11455_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11455_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11455_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 700 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11456 for ECDSA, tcId is 701 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11456_pubkey[] = { 0x62, 0x22, 0xd1, 0x96, 0x26, 0x55, 0x50, 0x18, 0x93, 0xc2, 0x9e, 0x44, 0x13, 0x95, 0xb6, 0xc0, 0x57, 0x11, 0xbd, 0x3e, 0xd5, 0xa0, 0xef, 0x72, 0xcf, 0xab, 0x33, 0x8b, 0x88, 0x22, 0x9c, 0x4b, 0xaa, 0xae, 0x07, 0x9c, 0xb4, 0x4a, 0x1a, 0xf0, 0x70, 0x36, 0x2a, 0xaa, 0x52, 0x0e, 0xe2, 0x4c, 0xac, 0x26, 0x26, 0x42, 0x3b, 0x0b, 0xf8, 0x1a, 0xf1, 0xc5, 0x43, 0x11, 0xd8, 0xe2, 0xfd, 0x23, }; static const unsigned char ecdsa_secp256r1_sha256_11456_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11456_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11456 = { .name = "ecdsa_secp256r1_sha256_11456", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11456_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11456_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11456_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 701 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11457 for ECDSA, tcId is 702 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11457_pubkey[] = { 0x4c, 0xcf, 0xa2, 0x4c, 0x67, 0xf3, 0xde, 0xf7, 0xfa, 0x81, 0xbc, 0x99, 0xc7, 0x0b, 0xb0, 0x41, 0x9c, 0x09, 0x52, 0xba, 0x59, 0x9f, 0x4c, 0x03, 0x36, 0x1d, 0xa1, 0x84, 0xb0, 0x4c, 0xdc, 0xa5, 0xdb, 0x76, 0xb7, 0x97, 0xf7, 0xf4, 0x1d, 0x9c, 0x72, 0x9a, 0x22, 0x19, 0x47, 0x8a, 0x7e, 0x62, 0x97, 0x28, 0xdf, 0x87, 0x08, 0x00, 0xbe, 0x8c, 0xf6, 0xca, 0x7a, 0x0a, 0x82, 0x15, 0x3b, 0xfa, }; static const unsigned char ecdsa_secp256r1_sha256_11457_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11457_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11457 = { .name = "ecdsa_secp256r1_sha256_11457", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11457_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11457_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11457_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 702 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11458 for ECDSA, tcId is 703 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11458_pubkey[] = { 0xea, 0x1c, 0x72, 0xc9, 0x10, 0x34, 0x03, 0x6b, 0xac, 0x71, 0x40, 0x2b, 0x6e, 0x9e, 0xcc, 0x4a, 0xf3, 0xdb, 0xde, 0x7a, 0x99, 0xdc, 0x57, 0x40, 0x61, 0xe9, 0x9f, 0xef, 0xff, 0x9d, 0x84, 0xda, 0xb7, 0xdd, 0x05, 0x7e, 0x75, 0xb7, 0x8a, 0xc6, 0xf5, 0x6e, 0x34, 0xeb, 0x04, 0x8f, 0x0a, 0x9d, 0x29, 0xd5, 0xd0, 0x55, 0x40, 0x8c, 0x90, 0xd0, 0x2b, 0xc2, 0xea, 0x91, 0x8c, 0x18, 0xcb, 0x63, }; static const unsigned char ecdsa_secp256r1_sha256_11458_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11458_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11458 = { .name = "ecdsa_secp256r1_sha256_11458", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11458_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11458_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11458_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 703 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11459 for ECDSA, tcId is 704 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11459_pubkey[] = { 0xc2, 0x87, 0x9a, 0x66, 0xd8, 0x6c, 0xb2, 0x0b, 0x82, 0x0b, 0x77, 0x95, 0xda, 0x2d, 0xa6, 0x2b, 0x38, 0x92, 0x4f, 0x78, 0x17, 0xd1, 0xcd, 0x35, 0x0d, 0x93, 0x69, 0x88, 0xe9, 0x0e, 0x79, 0xbc, 0x54, 0x31, 0xa7, 0x26, 0x8f, 0xf6, 0x93, 0x1c, 0x7a, 0x75, 0x9d, 0xe0, 0x24, 0xef, 0xf9, 0x0b, 0xcb, 0x01, 0x77, 0x21, 0x6d, 0xb6, 0xfd, 0x1f, 0x3a, 0xaa, 0xa1, 0x1f, 0xa3, 0xb6, 0xa0, 0x83, }; static const unsigned char ecdsa_secp256r1_sha256_11459_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11459_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11459 = { .name = "ecdsa_secp256r1_sha256_11459", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11459_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11459_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11459_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 704 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11460 for ECDSA, tcId is 705 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11460_pubkey[] = { 0xab, 0x1c, 0x0f, 0x27, 0x3f, 0x74, 0xab, 0xc2, 0xb8, 0x48, 0xc7, 0x50, 0x06, 0xf2, 0xef, 0x3c, 0x54, 0xc2, 0x6d, 0xf2, 0x77, 0x11, 0xb0, 0x65, 0x58, 0xf4, 0x55, 0x07, 0x9a, 0xee, 0x0b, 0xa3, 0xdf, 0x51, 0x0f, 0x2e, 0xce, 0xf6, 0xd9, 0xa0, 0x59, 0x97, 0xc7, 0x76, 0xf1, 0x4a, 0xd6, 0x45, 0x6c, 0x17, 0x9f, 0x0a, 0x13, 0xaf, 0x17, 0x71, 0xe4, 0xd6, 0xc3, 0x7f, 0xa4, 0x8b, 0x47, 0xf2, }; static const unsigned char ecdsa_secp256r1_sha256_11460_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11460_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11460 = { .name = "ecdsa_secp256r1_sha256_11460", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11460_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11460_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11460_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 705 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11461 for ECDSA, tcId is 706 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11461_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_11461_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11461_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11461 = { .name = "ecdsa_secp256r1_sha256_11461", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11461_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11461_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11461_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 706 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11462 for ECDSA, tcId is 707 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11462_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_11462_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11462_sig[] = { 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11462 = { .name = "ecdsa_secp256r1_sha256_11462", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11462_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11462_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11462_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 707 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11463 for ECDSA, tcId is 708 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11463_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_11463_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11463_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11463 = { .name = "ecdsa_secp256r1_sha256_11463", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11463_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11463_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11463_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 708 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11464 for ECDSA, tcId is 709 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11464_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_11464_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11464_sig[] = { 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11464 = { .name = "ecdsa_secp256r1_sha256_11464", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11464_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11464_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11464_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 709 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11465 for ECDSA, tcId is 710 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11465_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_11465_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11465_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x9c, 0xb2, 0x7e, 0x0b, 0xc8, 0xd2, 0x1f, 0xa7, 0xe5, 0xf2, 0x4c, 0xb7, 0x4f, 0x58, 0x85, 0x13, 0x13, 0xe6, 0x96, 0x33, 0x3a, 0xd6, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11465 = { .name = "ecdsa_secp384r1_sha384_11465", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11465_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11465_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11465_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 710 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11466 for ECDSA, tcId is 711 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11466_pubkey[] = { 0x4b, 0xf4, 0xe5, 0x2f, 0x95, 0x84, 0x27, 0xeb, 0xb5, 0x91, 0x5f, 0xb8, 0xc9, 0x59, 0x55, 0x51, 0xb4, 0xd3, 0xa3, 0xfd, 0xab, 0x67, 0xba, 0xdd, 0x9d, 0x6c, 0x30, 0x93, 0xf4, 0x25, 0xba, 0x43, 0x63, 0x0d, 0xf7, 0x1f, 0x42, 0xf0, 0xeb, 0x7c, 0xea, 0xa9, 0x4d, 0x9f, 0x64, 0x48, 0xa8, 0x5d, 0xd3, 0x03, 0x31, 0x58, 0x82, 0x49, 0xfd, 0x2f, 0xdc, 0x0b, 0x30, 0x9e, 0xc7, 0xed, 0x84, 0x81, 0xbc, 0x16, 0xf2, 0x78, 0x00, 0xc1, 0x3d, 0x7d, 0xb7, 0x00, 0xfc, 0x82, 0xe1, 0xb1, 0xc8, 0x54, 0x5a, 0xa0, 0xc0, 0xd3, 0xb5, 0x6e, 0x3b, 0xfe, 0x78, 0x9f, 0xc1, 0x8a, 0x91, 0x68, 0x87, 0xc2, }; static const unsigned char ecdsa_secp384r1_sha384_11466_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11466_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11466 = { .name = "ecdsa_secp384r1_sha384_11466", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11466_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11466_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11466_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 711 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11467 for ECDSA, tcId is 712 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11467_pubkey[] = { 0x36, 0x23, 0xbb, 0x29, 0x6b, 0x88, 0xf6, 0x26, 0xd0, 0xf9, 0x26, 0x56, 0xbf, 0x01, 0x6f, 0x11, 0x5b, 0x72, 0x12, 0x77, 0xcc, 0xb4, 0x93, 0x07, 0x39, 0xbf, 0xbd, 0x81, 0xf9, 0xc1, 0xe7, 0x34, 0x63, 0x0e, 0x06, 0x85, 0xd3, 0x2e, 0x15, 0x4e, 0x0b, 0x4a, 0x5c, 0x62, 0xe4, 0x38, 0x51, 0xf6, 0x76, 0x83, 0x56, 0xb4, 0xa5, 0x76, 0x4c, 0x12, 0x8c, 0x7b, 0x11, 0x05, 0xe3, 0xd7, 0x78, 0xa8, 0x9d, 0x1e, 0x01, 0xda, 0x29, 0x7e, 0xde, 0x1b, 0xc4, 0x31, 0x2c, 0x25, 0x83, 0xe0, 0xbb, 0xdd, 0xd2, 0x16, 0x13, 0x58, 0x3d, 0xd0, 0x9a, 0xb8, 0x95, 0xc6, 0x3b, 0xe4, 0x79, 0xf9, 0x45, 0x76, }; static const unsigned char ecdsa_secp384r1_sha384_11467_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11467_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x72, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11467 = { .name = "ecdsa_secp384r1_sha384_11467", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11467_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11467_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11467_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 712 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11468 for ECDSA, tcId is 713 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11468_pubkey[] = { 0xd5, 0x16, 0xcb, 0x8a, 0xc8, 0xe4, 0x45, 0x7b, 0x69, 0x3d, 0x51, 0x92, 0xbe, 0xeb, 0x6c, 0xe7, 0xd9, 0xa4, 0x6b, 0xef, 0x48, 0xee, 0xcf, 0x3e, 0xa8, 0x23, 0x28, 0x6f, 0x10, 0x1f, 0x98, 0xd1, 0x30, 0xf5, 0xa2, 0x6d, 0xc6, 0xfe, 0xc2, 0x36, 0x62, 0xef, 0xf0, 0x7f, 0x14, 0x48, 0x6f, 0xd5, 0x84, 0x56, 0x93, 0x2e, 0x74, 0x89, 0x4b, 0x7f, 0x0e, 0x3b, 0xb0, 0xdf, 0xd3, 0x62, 0x50, 0x2b, 0x37, 0x65, 0xdd, 0x80, 0xa3, 0x17, 0x72, 0x09, 0xfb, 0x22, 0x1d, 0xc9, 0xb5, 0x1a, 0xaf, 0x44, 0x70, 0xb2, 0x45, 0x39, 0x14, 0x05, 0xbe, 0xf5, 0x14, 0x17, 0x6b, 0x13, 0xa2, 0x67, 0xa7, 0x20, }; static const unsigned char ecdsa_secp384r1_sha384_11468_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11468_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0xae, 0xe5, 0x5f, 0xdc, 0x2a, 0x71, 0x6b, 0xa2, 0xfa, 0xbc, 0xb5, 0x70, 0x20, 0xb7, 0x2e, 0x53, 0x9b, 0xf0, 0x5c, 0x79, 0x02, 0xf9, 0x8e, 0x10, 0x5b, 0xf8, 0x3d, 0x4c, 0xc1, 0x0c, 0x2a, 0x15, 0x9a, 0x3c, 0xf7, 0xe0, 0x1d, 0x74, 0x9d, 0x22, 0x05, 0xf4, 0xda, 0x6b, 0xd8, 0xfc, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11468 = { .name = "ecdsa_secp384r1_sha384_11468", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11468_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11468_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11468_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 713 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11469 for ECDSA, tcId is 714 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11469_pubkey[] = { 0xa8, 0x38, 0x0c, 0xd3, 0x50, 0x26, 0xe1, 0x3b, 0xf8, 0x7b, 0xe6, 0x93, 0xcd, 0xb6, 0xe7, 0x5a, 0x82, 0xd7, 0x65, 0xb4, 0x01, 0x9b, 0x52, 0x9e, 0x8d, 0x27, 0x7c, 0x4a, 0xf6, 0xc9, 0xdb, 0x27, 0xeb, 0xb5, 0xd3, 0xf8, 0x6e, 0x88, 0xad, 0xd9, 0xd5, 0xb6, 0x11, 0x86, 0xf0, 0x4c, 0x83, 0xa9, 0x92, 0xa1, 0x87, 0x50, 0x7c, 0x73, 0x73, 0x25, 0xd2, 0xcc, 0x62, 0x4a, 0xce, 0xf3, 0xcd, 0x03, 0x6b, 0xfa, 0x99, 0xe0, 0xc1, 0x51, 0x8b, 0xe6, 0x5c, 0x88, 0xbb, 0x51, 0xf9, 0x00, 0xf9, 0x41, 0x23, 0xac, 0xab, 0xad, 0x81, 0xd1, 0x51, 0x30, 0xd3, 0xad, 0xe7, 0xff, 0x7e, 0x43, 0x64, 0xe1, }; static const unsigned char ecdsa_secp384r1_sha384_11469_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11469_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0xb6, 0x81, 0xdc, 0x48, 0x4f, 0x4f, 0x02, 0x0f, 0xd3, 0xf7, 0xe6, 0x26, 0xd8, 0x8e, 0xdc, 0x6d, 0xed, 0x1b, 0x38, 0x2e, 0xf3, 0xe1, 0x43, 0xd6, 0x08, 0x87, 0xb5, 0x13, 0x94, 0x26, 0x08, 0x32, 0xd4, 0xd8, 0xf2, 0xef, 0x70, 0x45, 0x8f, 0x9f, 0xa9, 0x0e, 0x38, 0xc2, 0xe1, 0x9e, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11469 = { .name = "ecdsa_secp384r1_sha384_11469", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11469_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11469_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11469_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 714 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11470 for ECDSA, tcId is 715 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11470_pubkey[] = { 0x55, 0x4f, 0x2f, 0xd0, 0xb7, 0x00, 0xa9, 0xf4, 0x56, 0x87, 0x52, 0xb6, 0x73, 0xd9, 0xc0, 0xd2, 0x9d, 0xc9, 0x6c, 0x10, 0xfe, 0x67, 0xe3, 0x8c, 0x6d, 0x6d, 0x33, 0x9b, 0xfa, 0xfe, 0x05, 0xf9, 0x70, 0xda, 0x8c, 0x3d, 0x21, 0x64, 0xe8, 0x20, 0x31, 0x30, 0x7a, 0x44, 0xbd, 0x32, 0x25, 0x11, 0x71, 0x31, 0x2b, 0x61, 0xb5, 0x91, 0x13, 0xff, 0x0b, 0xd3, 0xb8, 0xa9, 0xa4, 0x93, 0x4d, 0xf2, 0x62, 0xaa, 0x80, 0x96, 0xf8, 0x40, 0xe9, 0xd8, 0xbf, 0xfa, 0x5d, 0x74, 0x91, 0xde, 0xd8, 0x7b, 0x38, 0xc4, 0x96, 0xf9, 0xb9, 0xe4, 0xf0, 0xba, 0x10, 0x89, 0xf8, 0xd3, 0xff, 0xc8, 0x8a, 0x9f, }; static const unsigned char ecdsa_secp384r1_sha384_11470_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11470_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11470 = { .name = "ecdsa_secp384r1_sha384_11470", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11470_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11470_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11470_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 715 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11471 for ECDSA, tcId is 716 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11471_pubkey[] = { 0x44, 0xee, 0x33, 0x35, 0xfa, 0x77, 0xd2, 0xfb, 0x02, 0xe4, 0xbd, 0x70, 0x74, 0xf4, 0x5e, 0x59, 0x8a, 0x87, 0x9c, 0x0f, 0xa8, 0x22, 0xec, 0x71, 0x8c, 0x21, 0xdc, 0x13, 0xb8, 0x34, 0x40, 0xed, 0xc4, 0xe3, 0xc1, 0x0a, 0x18, 0x58, 0x42, 0x3e, 0x03, 0x04, 0x4c, 0x9e, 0xff, 0x22, 0x59, 0x1c, 0xd0, 0x27, 0xc4, 0x99, 0x33, 0xe5, 0x51, 0x05, 0x57, 0xd6, 0xb4, 0xb2, 0xc6, 0xf6, 0x6f, 0xe5, 0xdc, 0xb9, 0x30, 0x2a, 0x3b, 0x13, 0xfd, 0xc6, 0x80, 0x48, 0xc3, 0xfc, 0xac, 0x88, 0xba, 0x15, 0x2b, 0x6a, 0x98, 0x33, 0xc8, 0x7f, 0xdc, 0x62, 0x80, 0xaf, 0xc5, 0xd1, 0x1a, 0xb7, 0xc1, 0x07, }; static const unsigned char ecdsa_secp384r1_sha384_11471_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11471_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11471 = { .name = "ecdsa_secp384r1_sha384_11471", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11471_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11471_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11471_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 716 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11472 for ECDSA, tcId is 717 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11472_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_11472_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11472_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11472 = { .name = "ecdsa_secp384r1_sha384_11472", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11472_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11472_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11472_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 717 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11473 for ECDSA, tcId is 718 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11473_pubkey[] = { 0xe2, 0xf8, 0x7f, 0x72, 0xe3, 0xc6, 0x6c, 0x73, 0x03, 0x7f, 0xe7, 0x76, 0x07, 0xd4, 0x2a, 0xd2, 0xd9, 0xc4, 0xcc, 0x15, 0x98, 0x93, 0xb4, 0xb9, 0xb8, 0xb0, 0x36, 0x5d, 0x3a, 0x77, 0x66, 0xdb, 0xe8, 0x67, 0x8b, 0x02, 0xe2, 0xb6, 0x8f, 0x58, 0xe5, 0xa4, 0xf7, 0x68, 0x10, 0x61, 0xa3, 0x90, 0xe3, 0x8f, 0x21, 0x42, 0x81, 0x85, 0x42, 0xbe, 0xf6, 0xb2, 0xbc, 0x3a, 0x2c, 0x4f, 0x43, 0xc9, 0x5e, 0x52, 0x59, 0xd6, 0xbd, 0x54, 0x01, 0x53, 0x13, 0x78, 0xc7, 0xca, 0x12, 0x5a, 0x1f, 0x6c, 0xc6, 0x09, 0xd4, 0xfa, 0xdf, 0xc5, 0xc9, 0xa9, 0x93, 0x58, 0xee, 0x77, 0xff, 0x78, 0x0c, 0x8d, }; static const unsigned char ecdsa_secp384r1_sha384_11473_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11473_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x75, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11473 = { .name = "ecdsa_secp384r1_sha384_11473", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11473_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11473_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11473_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 718 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11474 for ECDSA, tcId is 719 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11474_pubkey[] = { 0x05, 0xe6, 0x7c, 0x44, 0xfc, 0x0c, 0xbc, 0x9a, 0x8e, 0xb3, 0x43, 0xb4, 0xd6, 0xf5, 0x96, 0xc7, 0xd0, 0x0c, 0xac, 0x5d, 0xa8, 0x59, 0x4c, 0xaf, 0x45, 0xb7, 0x20, 0x93, 0x97, 0x49, 0x62, 0x14, 0xc4, 0x2d, 0x85, 0x6a, 0x01, 0x5c, 0xe5, 0x89, 0xbc, 0x9b, 0xa8, 0x65, 0xa4, 0xfa, 0xb5, 0xab, 0x88, 0xa0, 0x1c, 0x7b, 0x5d, 0x09, 0xef, 0xaf, 0x87, 0x8f, 0xcb, 0x91, 0x02, 0xfb, 0x38, 0x75, 0xa8, 0x38, 0x1a, 0xf2, 0x34, 0xd1, 0xc5, 0x93, 0x07, 0x6e, 0x45, 0x22, 0x25, 0xa5, 0x6f, 0x51, 0x67, 0x4f, 0x34, 0x71, 0x26, 0xd3, 0x00, 0x9b, 0x44, 0xdc, 0xbb, 0x00, 0x3a, 0x64, 0xd9, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_11474_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11474_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xd7, 0xff, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11474 = { .name = "ecdsa_secp384r1_sha384_11474", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11474_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11474_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11474_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 719 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11475 for ECDSA, tcId is 720 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11475_pubkey[] = { 0x0b, 0xb0, 0x3f, 0xce, 0x3c, 0x01, 0xeb, 0xcf, 0x08, 0x73, 0xab, 0xd1, 0x34, 0xa8, 0x68, 0x2f, 0x5f, 0xb8, 0xdb, 0xff, 0xa2, 0x2d, 0xa6, 0x74, 0x04, 0x7e, 0x5c, 0x3e, 0x71, 0xe4, 0x3d, 0xe5, 0x82, 0xed, 0x6a, 0xbb, 0x90, 0x8c, 0x2e, 0x4f, 0xaa, 0x5d, 0x96, 0x18, 0x62, 0x78, 0xb6, 0xc1, 0xba, 0x3b, 0x22, 0x12, 0x3e, 0x68, 0xcc, 0xc5, 0x6f, 0x17, 0xdd, 0x79, 0xff, 0x15, 0x56, 0x57, 0x06, 0xf7, 0x1a, 0x0b, 0x61, 0x23, 0xc7, 0x7a, 0xf3, 0xcd, 0x88, 0xf0, 0xaf, 0x02, 0x4c, 0xc5, 0x25, 0x97, 0x81, 0x51, 0x6e, 0xdc, 0xaf, 0x5f, 0xe9, 0x90, 0x64, 0x6e, 0x7b, 0x66, 0x99, 0x9d, }; static const unsigned char ecdsa_secp384r1_sha384_11475_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11475_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x44, 0x89, 0x12, 0x24, 0x48, 0x91, 0x22, 0x34, 0x7c, 0xe7, 0x9b, 0xc4, 0x37, 0xf4, 0xd0, 0x71, 0xaa, 0xa9, 0x2c, 0x7d, 0x6c, 0x88, 0x2a, 0xe8, 0x73, 0x4d, 0xc1, 0x8c, 0xb0, 0xd5, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11475 = { .name = "ecdsa_secp384r1_sha384_11475", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11475_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11475_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11475_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 720 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11476 for ECDSA, tcId is 721 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11476_pubkey[] = { 0x58, 0xf2, 0x46, 0x09, 0x0d, 0x5e, 0x49, 0x86, 0x3b, 0xc0, 0xbf, 0x2d, 0x50, 0x1f, 0xf7, 0x2f, 0x55, 0x1c, 0x5f, 0x1c, 0x5e, 0x67, 0x9e, 0xb4, 0x90, 0x64, 0xfd, 0x02, 0xe2, 0x21, 0xa2, 0x70, 0x73, 0x26, 0xec, 0x2d, 0x14, 0x0b, 0xcc, 0x81, 0x7a, 0xfa, 0xad, 0x50, 0x65, 0x76, 0x15, 0x66, 0x49, 0x7c, 0x82, 0x3f, 0xd7, 0x36, 0x88, 0x2c, 0xbf, 0x78, 0xfb, 0x92, 0xb1, 0xa5, 0x58, 0x9b, 0x67, 0xe8, 0x06, 0x74, 0x97, 0xc7, 0x10, 0xa4, 0xcb, 0xb3, 0x9d, 0xee, 0x2c, 0x54, 0x31, 0xbc, 0x45, 0xcf, 0xb9, 0x6c, 0x9f, 0x84, 0x54, 0x38, 0x5c, 0x9f, 0x2b, 0x3e, 0xf2, 0xd3, 0xd3, 0x1a, }; static const unsigned char ecdsa_secp384r1_sha384_11476_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11476_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0xce, 0x75, 0x15, 0x12, 0x56, 0x1b, 0x6f, 0x57, 0xc7, 0x53, 0x42, 0x84, 0x8a, 0x3f, 0xf9, 0x8c, 0xcf, 0x9c, 0x3f, 0x02, 0x19, 0xb6, 0xb6, 0x8d, 0x00, 0x44, 0x9e, 0x6c, 0x97, 0x1a, 0x85, 0xd2, 0xe2, 0xce, 0x73, 0x55, 0x4b, 0x59, 0x21, 0x9d, 0x54, 0xd2, 0x08, 0x3b, 0x46, 0x32, 0x73, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11476 = { .name = "ecdsa_secp384r1_sha384_11476", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11476_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11476_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11476_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 721 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11477 for ECDSA, tcId is 722 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11477_pubkey[] = { 0xfc, 0x69, 0x84, 0xdd, 0x68, 0x30, 0xd1, 0x48, 0x5f, 0xb2, 0x58, 0x1a, 0x45, 0xa7, 0x91, 0xd8, 0xdc, 0xa2, 0xc7, 0x27, 0xc7, 0x3d, 0x3d, 0x44, 0xc8, 0x9f, 0x00, 0x82, 0xc1, 0x86, 0x8a, 0xf5, 0xca, 0x74, 0xb4, 0xca, 0x4a, 0xe2, 0x28, 0x02, 0x64, 0x0a, 0x9e, 0xbf, 0xe8, 0xc7, 0xae, 0x12, 0x99, 0x8d, 0x63, 0xa5, 0xb5, 0xad, 0x1b, 0x72, 0xb8, 0x99, 0xf0, 0xb1, 0x32, 0xe4, 0x95, 0x2a, 0xaa, 0x19, 0xd4, 0x1f, 0xde, 0xea, 0x48, 0xb1, 0xed, 0x6b, 0x83, 0x58, 0xdd, 0x1d, 0xb2, 0x07, 0xfd, 0x66, 0xe0, 0x14, 0x53, 0xad, 0x40, 0xf6, 0x7b, 0x83, 0x6a, 0xdc, 0x80, 0x2d, 0x5f, 0xe8, }; static const unsigned char ecdsa_secp384r1_sha384_11477_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11477_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x2a, 0xd5, 0x21, 0x5c, 0x51, 0xb3, 0x20, 0xe4, 0x60, 0x54, 0x2f, 0x9c, 0xc3, 0x89, 0x68, 0xcc, 0xdf, 0x42, 0x63, 0x68, 0x40, 0x04, 0xeb, 0x79, 0xa4, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11477 = { .name = "ecdsa_secp384r1_sha384_11477", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11477_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11477_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11477_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 722 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11478 for ECDSA, tcId is 723 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11478_pubkey[] = { 0x1b, 0x8d, 0xef, 0x59, 0x22, 0x30, 0x3d, 0x64, 0x7e, 0x8e, 0xb0, 0x7e, 0x3b, 0xad, 0x92, 0xf9, 0x24, 0xb7, 0x9b, 0x76, 0x9e, 0xef, 0x16, 0x8e, 0x75, 0x41, 0xde, 0x1f, 0x4e, 0x0d, 0x28, 0xae, 0x97, 0x33, 0xeb, 0x98, 0xcf, 0x8a, 0x1f, 0xb6, 0xdd, 0x52, 0xca, 0x02, 0xc8, 0xc7, 0x5b, 0x51, 0xc7, 0xaa, 0x4b, 0xf6, 0x79, 0xd4, 0x9d, 0x81, 0x14, 0x12, 0x20, 0x74, 0xda, 0x8f, 0x60, 0x44, 0xa4, 0x27, 0x37, 0x17, 0x96, 0xa5, 0x65, 0x4a, 0x61, 0x06, 0x16, 0x2d, 0x5f, 0x68, 0x6a, 0xbb, 0x73, 0xeb, 0xd8, 0x96, 0xab, 0x08, 0xc7, 0x06, 0x26, 0x87, 0xf1, 0x21, 0x71, 0xfb, 0xe4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11478_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11478_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11478 = { .name = "ecdsa_secp384r1_sha384_11478", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11478_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11478_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11478_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 723 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11479 for ECDSA, tcId is 724 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11479_pubkey[] = { 0x17, 0x34, 0xa0, 0x39, 0xa8, 0x8a, 0x16, 0xc2, 0xff, 0x4a, 0xa9, 0x7d, 0x23, 0x99, 0x12, 0x1f, 0x56, 0xf5, 0x2e, 0xf0, 0x1e, 0xd5, 0xe5, 0x08, 0x87, 0xf7, 0x36, 0xf6, 0x5b, 0x6e, 0x51, 0xd6, 0xe8, 0x78, 0x6a, 0xbb, 0x4e, 0x06, 0x3d, 0xa5, 0xd1, 0xba, 0x81, 0x2d, 0xff, 0x99, 0x84, 0x03, 0xcc, 0xd6, 0x98, 0xe6, 0xc2, 0x96, 0xd5, 0xcd, 0x69, 0x17, 0x8f, 0x8a, 0x82, 0x48, 0x1a, 0x86, 0x5d, 0xa3, 0x31, 0x62, 0x7f, 0x1c, 0x4b, 0x32, 0x4f, 0xbc, 0x02, 0xb3, 0x6e, 0x8b, 0x5e, 0xd5, 0x8a, 0x31, 0xf7, 0x28, 0xe9, 0x04, 0xd2, 0x03, 0xa3, 0x88, 0x75, 0x53, 0x02, 0x19, 0x57, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_11479_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11479_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x77, 0xa1, 0x72, 0xdf, 0xe3, 0x7a, 0x2c, 0x53, 0xf0, 0xb9, 0x2a, 0xb6, 0x0f, 0x0a, 0x8f, 0x08, 0x5f, 0x49, 0xdb, 0xfd, 0x93, 0x07, 0x19, 0xd6, 0xf9, 0xe5, 0x87, 0xea, 0x68, 0xae, 0x57, 0xcb, 0x49, 0xcd, 0x35, 0xa8, 0x8c, 0xf8, 0xc6, 0xac, 0xec, 0x02, 0xf0, 0x57, 0xa3, 0x80, 0x7a, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11479 = { .name = "ecdsa_secp384r1_sha384_11479", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11479_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11479_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11479_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 724 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11480 for ECDSA, tcId is 725 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11480_pubkey[] = { 0x52, 0xca, 0x47, 0xdd, 0xa9, 0x91, 0x72, 0xcb, 0x83, 0x21, 0x49, 0x5a, 0xcf, 0x98, 0x85, 0x48, 0x29, 0x59, 0x88, 0xec, 0x97, 0x3c, 0x1b, 0x4e, 0xa9, 0x46, 0x2c, 0x53, 0xe5, 0x76, 0x8a, 0x70, 0x4a, 0x93, 0x64, 0x10, 0xee, 0x84, 0x7b, 0x5d, 0xbf, 0x1e, 0x9d, 0x0c, 0x13, 0x1d, 0xa6, 0xc7, 0x87, 0xa4, 0x70, 0x27, 0xe6, 0x65, 0x57, 0x92, 0xeb, 0x00, 0x2d, 0x42, 0x28, 0xee, 0x72, 0xf7, 0xc8, 0x14, 0xc9, 0xa0, 0xce, 0xcb, 0xff, 0x26, 0x79, 0x48, 0xf8, 0x1c, 0x99, 0x03, 0xac, 0x10, 0xeb, 0x35, 0xf6, 0xcb, 0x86, 0x36, 0x92, 0x24, 0xed, 0x60, 0x98, 0x11, 0xcd, 0xf3, 0x90, 0xf4, }; static const unsigned char ecdsa_secp384r1_sha384_11480_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11480_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x28, 0xf3, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11480 = { .name = "ecdsa_secp384r1_sha384_11480", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11480_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11480_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11480_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 725 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11481 for ECDSA, tcId is 726 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11481_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_11481_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11481_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11481 = { .name = "ecdsa_secp384r1_sha384_11481", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11481_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11481_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11481_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 726 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11482 for ECDSA, tcId is 727 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11482_pubkey[] = { 0xbd, 0x3d, 0x91, 0xf0, 0x03, 0xe1, 0x8a, 0xdb, 0xea, 0x73, 0x07, 0x9d, 0x4e, 0xba, 0x23, 0xb9, 0x1f, 0xc1, 0x7f, 0xce, 0xc1, 0x4c, 0x9e, 0xb1, 0x5a, 0x19, 0x3f, 0xbc, 0x9c, 0xa3, 0x9c, 0x8c, 0x74, 0x7c, 0xd7, 0xa2, 0xc9, 0x62, 0x3e, 0x05, 0xdd, 0x58, 0x7c, 0xcb, 0xb8, 0xab, 0x4c, 0x44, 0x3a, 0xdb, 0x0a, 0x07, 0x06, 0xaa, 0x5e, 0xa7, 0xa6, 0x80, 0x42, 0x08, 0x2f, 0xcc, 0xef, 0xc9, 0x79, 0x61, 0x2a, 0x7a, 0x1a, 0x3d, 0x69, 0x4b, 0x00, 0x79, 0x3b, 0x03, 0xf8, 0x9b, 0xff, 0x86, 0x6a, 0x8b, 0x97, 0xc8, 0xe7, 0x79, 0x90, 0xc2, 0x93, 0x60, 0xce, 0x79, 0x50, 0x36, 0xc7, 0x64, }; static const unsigned char ecdsa_secp384r1_sha384_11482_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11482_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11482 = { .name = "ecdsa_secp384r1_sha384_11482", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11482_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11482_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11482_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 727 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11483 for ECDSA, tcId is 728 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11483_pubkey[] = { 0xf8, 0x96, 0x35, 0x3c, 0xc3, 0xa8, 0xaf, 0xdd, 0x54, 0x3e, 0xc3, 0xae, 0xf0, 0x62, 0xca, 0x97, 0xbc, 0x32, 0xed, 0x17, 0x24, 0xea, 0x38, 0xb9, 0x40, 0xb8, 0xc0, 0xea, 0x0e, 0x23, 0xb3, 0x41, 0x87, 0xaf, 0xbe, 0x70, 0xda, 0xf8, 0xdb, 0xaa, 0x5b, 0x51, 0x15, 0x57, 0xe5, 0xd2, 0xbd, 0xda, 0xc4, 0xbd, 0x26, 0x5d, 0xa6, 0x7c, 0xee, 0xaf, 0xca, 0x63, 0x6f, 0x6f, 0x4c, 0x04, 0x72, 0xf2, 0x2a, 0x9d, 0x02, 0xe2, 0x28, 0x91, 0x84, 0xf7, 0x3b, 0xbb, 0x70, 0x0a, 0xe8, 0xfc, 0x92, 0x1e, 0xff, 0x49, 0x20, 0xf2, 0x90, 0xbf, 0xcb, 0x49, 0xfb, 0xb2, 0x32, 0xcc, 0x13, 0xa2, 0x10, 0x28, }; static const unsigned char ecdsa_secp384r1_sha384_11483_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11483_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11483 = { .name = "ecdsa_secp384r1_sha384_11483", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11483_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11483_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11483_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 728 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11484 for ECDSA, tcId is 729 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11484_pubkey[] = { 0x37, 0x0d, 0x9e, 0x2e, 0x31, 0xc7, 0x12, 0xc8, 0x02, 0x80, 0x92, 0xf8, 0x02, 0x31, 0x9d, 0x7f, 0xdf, 0x5b, 0x33, 0x19, 0xa8, 0x51, 0x8d, 0x08, 0xbe, 0xd3, 0x89, 0x15, 0x08, 0xc7, 0x06, 0x0c, 0xfe, 0x22, 0x36, 0xe1, 0x8f, 0xa1, 0x4f, 0xe0, 0x77, 0x09, 0x3c, 0xea, 0xe6, 0x33, 0xe5, 0x43, 0x0f, 0xd7, 0x9a, 0xac, 0xf9, 0xd1, 0x6e, 0xcc, 0x19, 0xb1, 0x2d, 0x60, 0xfb, 0xa4, 0x99, 0x8d, 0xfc, 0x68, 0x27, 0x02, 0xec, 0x7c, 0x8b, 0xdd, 0x4a, 0x59, 0x00, 0x35, 0x77, 0x3b, 0x8c, 0x9c, 0x57, 0x0a, 0xc7, 0xdc, 0xd4, 0x14, 0xe0, 0x32, 0x52, 0xf7, 0xa0, 0xe6, 0xf5, 0x3b, 0x58, 0x63, }; static const unsigned char ecdsa_secp384r1_sha384_11484_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11484_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11484 = { .name = "ecdsa_secp384r1_sha384_11484", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11484_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11484_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11484_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 729 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11485 for ECDSA, tcId is 730 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11485_pubkey[] = { 0x94, 0x1e, 0x6c, 0xfa, 0x35, 0x6e, 0x57, 0x2d, 0xcc, 0xca, 0xeb, 0x59, 0x4b, 0x06, 0x95, 0x5d, 0x99, 0xdc, 0x4b, 0xf0, 0x79, 0x58, 0xfc, 0x98, 0xff, 0xa1, 0x7d, 0xe1, 0x1c, 0x75, 0x21, 0xbf, 0x2c, 0x7a, 0xa8, 0xff, 0x26, 0x09, 0x52, 0xfc, 0xb7, 0xaa, 0xc0, 0x78, 0xed, 0xe6, 0x7b, 0x47, 0x90, 0xa7, 0x8a, 0x02, 0x96, 0xb0, 0x41, 0xa1, 0x0f, 0x00, 0x3d, 0xf1, 0x99, 0x8d, 0xa4, 0xcc, 0x4a, 0x16, 0x14, 0xeb, 0xcb, 0xf5, 0xd2, 0x39, 0x43, 0x1f, 0x33, 0xd9, 0x0d, 0x30, 0x23, 0xed, 0xc1, 0x80, 0x2e, 0x8d, 0xb6, 0xda, 0xbc, 0xba, 0xe6, 0x7c, 0xc3, 0x14, 0xda, 0x2a, 0xab, 0xab, }; static const unsigned char ecdsa_secp384r1_sha384_11485_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11485_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xb9, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11485 = { .name = "ecdsa_secp384r1_sha384_11485", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11485_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11485_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11485_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 730 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11486 for ECDSA, tcId is 731 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11486_pubkey[] = { 0x3e, 0xcf, 0xd5, 0x8a, 0x3c, 0xe5, 0x83, 0x86, 0x6e, 0x04, 0x71, 0xd1, 0x6e, 0xb3, 0xc1, 0x0a, 0x41, 0x1e, 0xc3, 0xb8, 0x67, 0x1f, 0x3a, 0x04, 0x76, 0x9b, 0x1e, 0xd8, 0x46, 0x4a, 0x71, 0xcf, 0x1c, 0x76, 0xd8, 0xd9, 0xb7, 0xe3, 0x67, 0x0b, 0xbe, 0x71, 0x2d, 0x6f, 0x55, 0x4a, 0x93, 0x83, 0xd9, 0x80, 0xd8, 0xbe, 0xdf, 0x57, 0x47, 0x0d, 0x6b, 0x45, 0xcc, 0x1a, 0xd0, 0xc6, 0x42, 0x6d, 0xc7, 0x0a, 0x0e, 0x4b, 0xe9, 0x01, 0x10, 0x6a, 0x36, 0x66, 0x3b, 0xfc, 0xab, 0x04, 0xfc, 0xb8, 0x60, 0x08, 0x77, 0x7b, 0x92, 0x44, 0x51, 0x20, 0xd5, 0xe3, 0x64, 0x1d, 0x97, 0x39, 0x63, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_11486_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11486_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11486 = { .name = "ecdsa_secp384r1_sha384_11486", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11486_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11486_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11486_sig, .siglen = 96, .result = 1, .comment = "u1 == 1, tcId is 731 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11487 for ECDSA, tcId is 732 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11487_pubkey[] = { 0x41, 0x50, 0xcc, 0xd0, 0xfa, 0x45, 0xaa, 0x2e, 0xf6, 0xb5, 0x04, 0x2d, 0xdb, 0xb1, 0xb8, 0x7c, 0x5f, 0xfd, 0x11, 0x15, 0xa8, 0xfe, 0x59, 0x95, 0x64, 0x19, 0x48, 0xac, 0xda, 0x82, 0xa7, 0xb1, 0x90, 0x76, 0x2d, 0x84, 0x35, 0x2c, 0xd7, 0x4d, 0x1c, 0xa0, 0x1e, 0x79, 0xf6, 0x8f, 0x9c, 0xb4, 0xeb, 0x11, 0xbe, 0x9d, 0x49, 0x4c, 0x18, 0x1c, 0x15, 0x6e, 0x23, 0xe7, 0x7e, 0x53, 0x2b, 0xdf, 0x0a, 0x20, 0xc3, 0xcc, 0x74, 0xba, 0x8c, 0x29, 0xb1, 0xf3, 0xeb, 0x2b, 0xd9, 0x91, 0x29, 0xee, 0x0d, 0x70, 0xff, 0x0d, 0x59, 0x3f, 0x0d, 0x7a, 0x6d, 0x68, 0x87, 0xe7, 0xc5, 0x59, 0x30, 0xd2, }; static const unsigned char ecdsa_secp384r1_sha384_11487_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11487_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11487 = { .name = "ecdsa_secp384r1_sha384_11487", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11487_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11487_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11487_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 732 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11488 for ECDSA, tcId is 733 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11488_pubkey[] = { 0xe7, 0x8f, 0xe2, 0xc1, 0x1b, 0xea, 0xc7, 0x09, 0x0e, 0xe0, 0xaf, 0x7f, 0xed, 0x46, 0x9a, 0x8c, 0xce, 0xbd, 0x3c, 0xcc, 0xc4, 0xee, 0x9f, 0xcc, 0xc8, 0xef, 0x3f, 0xc0, 0x45, 0x5b, 0x69, 0xaa, 0xa0, 0x82, 0xdc, 0x13, 0xe1, 0xd8, 0x4f, 0x34, 0x02, 0x6c, 0xb6, 0xf0, 0xaf, 0x9e, 0x99, 0x2f, 0xf3, 0x4e, 0xbb, 0xa7, 0x1b, 0xf3, 0xa4, 0x05, 0x0b, 0xf2, 0x8e, 0x40, 0x84, 0xb5, 0xc5, 0xf5, 0xd4, 0x09, 0x8e, 0xc4, 0x6f, 0x10, 0xa3, 0x1b, 0x02, 0xfb, 0x4b, 0xf2, 0x0c, 0xc9, 0x36, 0x2f, 0x6f, 0x02, 0xa6, 0x6e, 0x80, 0x2f, 0x81, 0x75, 0x07, 0x53, 0x5f, 0xac, 0x3e, 0xc0, 0xb0, 0x99, }; static const unsigned char ecdsa_secp384r1_sha384_11488_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11488_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11488 = { .name = "ecdsa_secp384r1_sha384_11488", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11488_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11488_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11488_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 733 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11489 for ECDSA, tcId is 734 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11489_pubkey[] = { 0xee, 0x24, 0xab, 0x8a, 0x34, 0xd0, 0x5a, 0xf6, 0x84, 0x93, 0x93, 0x57, 0xf3, 0x27, 0x59, 0xcc, 0x5a, 0x14, 0xf3, 0xc7, 0x17, 0x52, 0x9a, 0x20, 0xae, 0xa8, 0xe0, 0xc5, 0x96, 0x5d, 0x8a, 0x41, 0xe6, 0x89, 0x25, 0xf6, 0x88, 0x47, 0x19, 0x94, 0xb7, 0x20, 0x21, 0xba, 0x51, 0xb2, 0x8c, 0x09, 0x0a, 0x55, 0x69, 0x3c, 0x92, 0xad, 0x0c, 0xba, 0xe9, 0xed, 0xcf, 0x51, 0x5e, 0x2b, 0x4c, 0x06, 0x0b, 0x88, 0x8d, 0x82, 0xc8, 0x1e, 0x4a, 0x3b, 0x6a, 0x17, 0x3b, 0x62, 0xed, 0x04, 0xa4, 0x6f, 0xa9, 0x5d, 0xb1, 0xa2, 0xf3, 0x94, 0x99, 0x80, 0xfb, 0xa2, 0xe3, 0x71, 0x26, 0x3c, 0x4f, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_11489_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11489_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x84, 0xec, 0xde, 0x56, 0xa2, 0xcf, 0x73, 0xea, 0x3a, 0xbc, 0x09, 0x21, 0x85, 0xcb, 0x1a, 0x51, 0xf3, 0x48, 0x10, 0xf1, 0xdd, 0xd8, 0xc6, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11489 = { .name = "ecdsa_secp384r1_sha384_11489", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11489_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11489_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11489_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 734 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11490 for ECDSA, tcId is 735 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11490_pubkey[] = { 0x3d, 0x2e, 0x91, 0x60, 0x55, 0xc9, 0x2e, 0x1b, 0x36, 0x13, 0x3f, 0x59, 0x37, 0xb3, 0x7c, 0x1b, 0x01, 0x02, 0x83, 0x4e, 0xb7, 0x70, 0x08, 0xa3, 0xba, 0x9c, 0x3d, 0xa4, 0x46, 0xe9, 0x06, 0x59, 0x71, 0xd6, 0x8b, 0xa9, 0x13, 0x09, 0x18, 0x51, 0xe1, 0x0c, 0xff, 0x5b, 0x4c, 0xd8, 0x75, 0xc1, 0x39, 0xaa, 0x7a, 0xad, 0xfc, 0x2c, 0xaf, 0x71, 0x07, 0xb1, 0x7a, 0xe1, 0xae, 0xa8, 0xb2, 0x99, 0xd6, 0x1b, 0xf1, 0x5a, 0xca, 0x0c, 0xb3, 0xfd, 0x6f, 0x1f, 0xfd, 0xe8, 0x19, 0x2b, 0xfe, 0x58, 0xf0, 0x82, 0x2b, 0xbb, 0xc1, 0xf5, 0x5b, 0xdd, 0xf6, 0xb4, 0xfe, 0x9c, 0x8f, 0x2b, 0x0e, 0xac, }; static const unsigned char ecdsa_secp384r1_sha384_11490_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11490_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11490 = { .name = "ecdsa_secp384r1_sha384_11490", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11490_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11490_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11490_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 735 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11491 for ECDSA, tcId is 736 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11491_pubkey[] = { 0xae, 0x59, 0x66, 0x97, 0x42, 0x7a, 0xa2, 0x50, 0x15, 0x6c, 0x05, 0xac, 0x43, 0x38, 0xe4, 0x89, 0x80, 0xa7, 0xf0, 0x93, 0xea, 0x1f, 0x1f, 0xe6, 0x70, 0x98, 0xb4, 0x3f, 0x65, 0x39, 0xc1, 0xb2, 0x0a, 0xe7, 0x43, 0x38, 0xf9, 0xbf, 0x27, 0x0d, 0x33, 0x66, 0x3c, 0x50, 0xab, 0xe8, 0xfd, 0x00, 0x1c, 0xa6, 0xa5, 0x27, 0x32, 0xdb, 0x74, 0xab, 0x15, 0xd2, 0xf2, 0x49, 0xa3, 0xd8, 0x39, 0x08, 0x0f, 0x89, 0x83, 0x67, 0xdf, 0xd6, 0x49, 0x92, 0xcd, 0xce, 0x27, 0x08, 0xde, 0xaa, 0xd5, 0x23, 0xa2, 0xa2, 0x36, 0xb4, 0x34, 0x00, 0x42, 0x42, 0x41, 0xc9, 0x1a, 0x35, 0xb5, 0x30, 0xfa, 0x50, }; static const unsigned char ecdsa_secp384r1_sha384_11491_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11491_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd4, 0x9a, 0x25, 0x39, 0x86, 0xbb, 0xaa, 0x8c, 0xe9, 0xc3, 0xd3, 0x80, 0x83, 0x13, 0xd3, 0x9c, 0x3b, 0x95, 0x0a, 0x47, 0x83, 0x72, 0xed, 0xc0, 0x09, 0xbc, 0x05, 0x66, 0xb7, 0x3b, 0xe7, 0xb0, 0x5d, 0xad, 0x07, 0x37, 0xe1, 0x69, 0x60, 0x25, 0x7c, 0xc1, 0x6d, 0xb6, 0xec, 0x6c, 0x62, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11491 = { .name = "ecdsa_secp384r1_sha384_11491", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11491_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11491_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11491_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 736 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11492 for ECDSA, tcId is 737 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11492_pubkey[] = { 0x88, 0x73, 0x8f, 0x99, 0x81, 0xdd, 0x4d, 0x1f, 0xab, 0xb6, 0x0a, 0xd8, 0x3c, 0x2d, 0xd6, 0xdf, 0xc9, 0xda, 0x30, 0x22, 0x09, 0xae, 0x3e, 0x53, 0x49, 0x8a, 0x88, 0x3b, 0x6e, 0x39, 0xa3, 0x8b, 0xea, 0xd9, 0xb0, 0x27, 0x09, 0xf3, 0x52, 0xd3, 0xe6, 0xb6, 0x57, 0x81, 0x54, 0xea, 0xb2, 0x52, 0x93, 0x88, 0xa0, 0x5c, 0x6b, 0x9f, 0x3a, 0x40, 0x28, 0xab, 0xb9, 0x95, 0x0a, 0x51, 0xf5, 0x26, 0x4e, 0xcd, 0x75, 0x80, 0xa4, 0x23, 0xfd, 0xec, 0x94, 0x72, 0xfa, 0xee, 0xb5, 0x7f, 0x92, 0xe3, 0x1c, 0x46, 0xbe, 0xf2, 0xa7, 0x81, 0xfe, 0x5e, 0xda, 0xd0, 0x26, 0x00, 0x9f, 0x19, 0x82, 0x62, }; static const unsigned char ecdsa_secp384r1_sha384_11492_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11492_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x50, 0x90, 0xb0, 0xd6, 0xa6, 0x82, 0x0b, 0xbb, 0xa3, 0x94, 0xef, 0xbe, 0xe5, 0xc2, 0x4a, 0x22, 0x81, 0xe8, 0x25, 0xd2, 0xf6, 0xc5, 0x5f, 0xb7, 0xa8, 0x5b, 0x82, 0x51, 0xdb, 0x00, 0xf7, 0x5a, 0xb0, 0x7c, 0xc9, 0x93, 0xce, 0xaf, 0x66, 0x4f, 0x3c, 0x11, 0x6b, 0xaf, 0x34, 0xb0, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11492 = { .name = "ecdsa_secp384r1_sha384_11492", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11492_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11492_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11492_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 737 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11493 for ECDSA, tcId is 738 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11493_pubkey[] = { 0xf4, 0x21, 0x54, 0x13, 0x11, 0xc9, 0x4f, 0xdd, 0x79, 0xfc, 0x29, 0x8f, 0x8a, 0xb1, 0xa3, 0xad, 0xfd, 0x08, 0x02, 0x9f, 0xda, 0xd4, 0x39, 0xa9, 0x4d, 0x4c, 0xea, 0x11, 0xf7, 0xe7, 0x99, 0xbc, 0x43, 0x96, 0x09, 0xf2, 0xfb, 0x7b, 0xe3, 0xf3, 0x49, 0xd5, 0x5e, 0x48, 0x4d, 0x0a, 0x0d, 0x36, 0xb3, 0x53, 0x30, 0xbb, 0xdb, 0xec, 0x1e, 0x75, 0xf2, 0x98, 0x44, 0x83, 0xd9, 0x6b, 0xf2, 0x10, 0xd7, 0x22, 0xc1, 0x83, 0x02, 0x92, 0xff, 0xc3, 0x5a, 0x2f, 0x6a, 0x21, 0xa4, 0xb5, 0x05, 0x19, 0xf5, 0x65, 0xf0, 0x24, 0xbb, 0xcc, 0xc9, 0x72, 0x28, 0xa2, 0xf8, 0xad, 0x8f, 0xad, 0xc0, 0xd5, }; static const unsigned char ecdsa_secp384r1_sha384_11493_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11493_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb3, 0x9a, 0xf4, 0xa8, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xa4, 0x3d, 0x25, 0x05, 0xa0, 0xa8, 0xc7, 0x2c, 0x57, 0x31, 0xf4, 0xfd, 0x96, 0x74, 0x20, 0xb1, 0x00, 0x0e, 0x3f, 0x75, 0x50, 0x2e, 0xd7, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11493 = { .name = "ecdsa_secp384r1_sha384_11493", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11493_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11493_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11493_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 738 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11494 for ECDSA, tcId is 739 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11494_pubkey[] = { 0x39, 0x9b, 0xe4, 0xcf, 0xc4, 0x39, 0xf9, 0x4f, 0x24, 0x21, 0xcb, 0xd3, 0x4c, 0x2c, 0xd9, 0x0b, 0xae, 0x53, 0xeb, 0x60, 0xdd, 0xfa, 0xfc, 0xa5, 0x2f, 0x72, 0x75, 0xd1, 0x65, 0xd1, 0x4f, 0xa6, 0x59, 0xb6, 0x36, 0x71, 0x3b, 0x5d, 0x4b, 0x39, 0xe6, 0x2f, 0xd4, 0x8b, 0xae, 0x14, 0x1d, 0x0e, 0x1b, 0x23, 0xe3, 0xb4, 0xf0, 0xc2, 0x02, 0xed, 0x7b, 0x59, 0xdb, 0x78, 0xa3, 0x5c, 0x12, 0xac, 0x69, 0x8c, 0x60, 0x3e, 0xab, 0x14, 0x4f, 0xd0, 0x9a, 0xc2, 0xed, 0x8f, 0x44, 0x95, 0xf6, 0x07, 0xe4, 0xd2, 0xc8, 0x7a, 0x23, 0xce, 0x2e, 0xc3, 0x3e, 0x41, 0x0c, 0xa4, 0x7e, 0xcc, 0x25, 0x55, }; static const unsigned char ecdsa_secp384r1_sha384_11494_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11494_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xaf, 0x4a, 0x81, 0xee, 0x4a, 0xe7, 0x90, 0x64, 0xed, 0x80, 0xf2, 0x7e, 0x14, 0x32, 0xe8, 0x48, 0x45, 0xf1, 0x5e, 0xce, 0x39, 0x9f, 0x2c, 0xbf, 0x28, 0xdf, 0x82, 0x9c, 0xcd, 0x30, 0xf5, 0xef, 0x62, 0xec, 0x23, 0x95, 0x7b, 0x83, 0x7d, 0x73, 0xfe, 0x4e, 0x15, 0x6e, 0xdc, 0xcd, 0x44, 0x65, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11494 = { .name = "ecdsa_secp384r1_sha384_11494", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11494_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11494_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11494_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 739 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11495 for ECDSA, tcId is 740 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11495_pubkey[] = { 0x15, 0x78, 0xbb, 0xff, 0x72, 0x13, 0x7c, 0x4b, 0xca, 0x33, 0xd7, 0x38, 0x5a, 0x89, 0x2b, 0xe9, 0x4c, 0xb0, 0x59, 0xf9, 0x09, 0x1d, 0xdf, 0xe8, 0x90, 0x34, 0x5f, 0x71, 0x2a, 0x9f, 0xba, 0x5f, 0xc7, 0x70, 0x84, 0xce, 0xc1, 0x10, 0x84, 0xed, 0x04, 0x84, 0x91, 0x60, 0x4a, 0x07, 0xf6, 0x6c, 0x76, 0xbb, 0xaa, 0x87, 0x2f, 0x07, 0x10, 0xd8, 0x2a, 0x08, 0xd9, 0xdd, 0xdd, 0x83, 0x3c, 0x7b, 0xe7, 0xc7, 0xe8, 0xe2, 0x65, 0xf4, 0x91, 0x45, 0x15, 0x7e, 0xb4, 0xe8, 0xe8, 0x28, 0x00, 0x76, 0xa3, 0x7e, 0xe5, 0x87, 0x32, 0x71, 0xdb, 0x51, 0x00, 0x34, 0xda, 0x19, 0xda, 0x24, 0x41, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_11495_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11495_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5e, 0x95, 0x03, 0xdc, 0x95, 0xcf, 0x20, 0xc9, 0xdb, 0x01, 0xe4, 0xfc, 0x28, 0x65, 0xd0, 0x90, 0x8b, 0xe2, 0xbd, 0x9c, 0x73, 0x3e, 0x59, 0x7e, 0x8a, 0x5b, 0xb7, 0xb7, 0xa6, 0x2a, 0xbd, 0xff, 0x6d, 0xbe, 0x39, 0x78, 0xae, 0x56, 0x53, 0x6d, 0x0f, 0xb0, 0x11, 0x72, 0xec, 0xd5, 0x5f, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11495 = { .name = "ecdsa_secp384r1_sha384_11495", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11495_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11495_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11495_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 740 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11496 for ECDSA, tcId is 741 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11496_pubkey[] = { 0x33, 0xba, 0x45, 0x1c, 0x85, 0xe7, 0x29, 0x05, 0x8f, 0x83, 0x04, 0x10, 0x77, 0xa4, 0x69, 0x5e, 0xb4, 0x7d, 0xf9, 0x3e, 0x71, 0x8b, 0x09, 0xa4, 0x61, 0x8c, 0x75, 0x3a, 0xc8, 0x03, 0xcd, 0x75, 0xc1, 0xa9, 0x12, 0x90, 0xc2, 0xff, 0x5a, 0x63, 0x53, 0x89, 0xd0, 0x71, 0x49, 0x57, 0x1d, 0xab, 0x1f, 0xc7, 0xd8, 0xa7, 0x17, 0x76, 0x85, 0x1f, 0xf2, 0x44, 0xff, 0x63, 0x2f, 0xe6, 0xf9, 0x2e, 0x16, 0x52, 0xe5, 0x28, 0x48, 0x93, 0xc4, 0x24, 0x4f, 0xe7, 0x75, 0xd8, 0xef, 0xc5, 0x89, 0xd8, 0x23, 0xdd, 0x03, 0xf3, 0x91, 0x90, 0x27, 0xf0, 0x04, 0x53, 0x7b, 0xd8, 0xee, 0x09, 0xf3, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11496_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11496_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x1e, 0xe4, 0xae, 0x79, 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xa3, 0xae, 0x8e, 0xda, 0xb8, 0x4d, 0xc3, 0x33, 0x0a, 0x39, 0xf7, 0x09, 0x38, 0xe3, 0x91, 0x2b, 0xd5, 0x97, 0x53, 0xde, 0x5a, 0xed, 0x30, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11496 = { .name = "ecdsa_secp384r1_sha384_11496", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11496_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11496_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11496_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 741 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11497 for ECDSA, tcId is 742 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11497_pubkey[] = { 0x04, 0x07, 0x71, 0xe3, 0x39, 0x02, 0x16, 0xfe, 0xd2, 0xc6, 0x20, 0x8b, 0xdf, 0x5b, 0xfe, 0xa8, 0x3a, 0xb1, 0x91, 0x5b, 0x16, 0x6e, 0x62, 0x65, 0x69, 0xf1, 0x2e, 0xfd, 0x41, 0x0a, 0x39, 0xb7, 0xe7, 0xc7, 0x6f, 0x70, 0xf0, 0x01, 0x28, 0x43, 0xa2, 0x6d, 0xeb, 0xf4, 0xcc, 0xc3, 0x3d, 0xda, 0xe5, 0xbc, 0x5f, 0x7e, 0x62, 0xd0, 0x54, 0xea, 0xc3, 0x1c, 0xd0, 0x22, 0xaf, 0xdb, 0x71, 0xb7, 0xc6, 0x38, 0xf2, 0x4c, 0x30, 0xcb, 0xad, 0x0e, 0xf3, 0x5e, 0xd2, 0xfc, 0x99, 0x17, 0xf3, 0x56, 0xe9, 0xc3, 0xf0, 0x43, 0x91, 0xb2, 0x1d, 0x10, 0x35, 0x27, 0x4b, 0x81, 0x53, 0x7f, 0xcb, 0xf3, }; static const unsigned char ecdsa_secp384r1_sha384_11497_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11497_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x51, 0xcd, 0x3b, 0xa8, 0xeb, 0x20, 0x1f, 0x53, 0xdd, 0xb4, 0xe3, 0x4e, 0x08, 0xc0, 0xff, 0x7d, 0xff, 0x93, 0x78, 0x10, 0x67, 0x84, 0xd7, 0x98, 0xd5, 0xa3, 0x44, 0x0b, 0xd6, 0xdc, 0x34, 0xbe, 0x3a, 0x0e, 0xae, 0xf8, 0x77, 0x66, 0x19, 0xa0, 0xc9, 0x7f, 0xef, 0xb1, 0x57, 0x20, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11497 = { .name = "ecdsa_secp384r1_sha384_11497", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11497_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11497_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11497_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 742 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11498 for ECDSA, tcId is 743 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11498_pubkey[] = { 0x98, 0xd3, 0xf1, 0x6e, 0x1c, 0x51, 0x0a, 0x93, 0x3e, 0x64, 0x8e, 0x78, 0xd0, 0x15, 0x88, 0x31, 0x9f, 0x00, 0x2e, 0x94, 0x75, 0xdf, 0x89, 0x42, 0xa2, 0xa8, 0x9d, 0xb0, 0x66, 0x6b, 0xb7, 0xc8, 0x8b, 0x32, 0xbb, 0x24, 0x81, 0x40, 0xe4, 0x4a, 0xc4, 0xab, 0x28, 0x11, 0x1b, 0x2b, 0x79, 0x23, 0x99, 0xa9, 0x26, 0xf4, 0xa6, 0x6f, 0xbe, 0x28, 0xff, 0x65, 0xc0, 0x9f, 0x83, 0x06, 0x89, 0x3a, 0xec, 0x09, 0x4b, 0x89, 0xd0, 0xfe, 0x52, 0x9e, 0x35, 0x77, 0xc5, 0xec, 0xf3, 0x0a, 0x79, 0x44, 0xca, 0xaf, 0x53, 0x0f, 0x45, 0x75, 0xeb, 0x11, 0x3f, 0xcf, 0x4c, 0x20, 0x0d, 0x2d, 0xd4, 0xbd, }; static const unsigned char ecdsa_secp384r1_sha384_11498_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11498_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0x07, 0xe2, 0x67, 0xea, 0x63, 0x53, 0x84, 0xa6, 0xda, 0x09, 0x82, 0x31, 0x49, 0xf5, 0xcb, 0x7a, 0xcb, 0xb2, 0x9e, 0x91, 0x0d, 0x26, 0x30, 0xc5, 0xfb, 0x5a, 0xfb, 0xc4, 0x2a, 0xa8, 0x43, 0x63, 0x49, 0xb2, 0x14, 0xa3, 0xb8, 0xfb, 0x94, 0x81, 0xec, 0x99, 0x9e, 0x00, 0x50, 0x91, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11498 = { .name = "ecdsa_secp384r1_sha384_11498", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11498_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11498_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11498_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 743 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11499 for ECDSA, tcId is 744 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11499_pubkey[] = { 0xd1, 0xfd, 0x60, 0x2f, 0xee, 0xf8, 0x0b, 0xe9, 0xe5, 0x5a, 0x19, 0xd1, 0xa9, 0x79, 0x9c, 0x72, 0xa8, 0x99, 0x11, 0x0c, 0x6a, 0xc2, 0x1f, 0xb3, 0xc2, 0x13, 0x57, 0x06, 0x98, 0x09, 0xd5, 0x91, 0xa8, 0x77, 0x5b, 0x64, 0xd1, 0x86, 0x7a, 0x8c, 0xff, 0xf1, 0x24, 0xf6, 0xa5, 0xe3, 0xa4, 0xf5, 0xf9, 0x54, 0x80, 0x64, 0xf0, 0x1b, 0x9a, 0xf8, 0x86, 0x87, 0x05, 0x49, 0x3a, 0x37, 0xa0, 0x37, 0x19, 0x3b, 0x48, 0xf5, 0x3b, 0x7c, 0x79, 0x73, 0x02, 0x3f, 0x53, 0xe6, 0xce, 0xff, 0x68, 0x30, 0xca, 0x2f, 0x7a, 0x14, 0xef, 0x51, 0x53, 0x6d, 0x45, 0x3a, 0xf4, 0x3b, 0x30, 0x58, 0xd8, 0xa9, }; static const unsigned char ecdsa_secp384r1_sha384_11499_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11499_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xac, 0xc4, 0xf2, 0xaf, 0xb7, 0xf5, 0xc1, 0x0f, 0x81, 0x81, 0x75, 0x07, 0x4e, 0xf6, 0x88, 0xa6, 0x43, 0xfc, 0x53, 0x65, 0xe3, 0x81, 0x29, 0xf8, 0x6d, 0x5e, 0x25, 0x17, 0xfe, 0xb8, 0x1b, 0x2c, 0xd2, 0xb8, 0xdc, 0x4f, 0x78, 0x21, 0xbf, 0xd0, 0x32, 0xed, 0xc4, 0xc0, 0x23, 0x40, 0x85, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11499 = { .name = "ecdsa_secp384r1_sha384_11499", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11499_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11499_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11499_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 744 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11500 for ECDSA, tcId is 745 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11500_pubkey[] = { 0x82, 0xf3, 0x76, 0x04, 0xf6, 0x66, 0x64, 0xc2, 0x88, 0x3d, 0xba, 0x6d, 0x98, 0x39, 0x7c, 0x28, 0x10, 0x45, 0xcb, 0xf5, 0x9f, 0x1d, 0x16, 0xdd, 0xdb, 0x13, 0x81, 0x12, 0x6a, 0x24, 0x65, 0x53, 0xa8, 0xb4, 0xd2, 0xaa, 0xea, 0x48, 0xad, 0x91, 0x85, 0xa1, 0x64, 0x5f, 0x65, 0x56, 0x7d, 0x31, 0x8a, 0x4d, 0x7b, 0x19, 0xf1, 0xd2, 0xe4, 0x43, 0x4c, 0x9a, 0x8e, 0xca, 0xd3, 0x96, 0x30, 0x4a, 0xbc, 0x82, 0x22, 0x1b, 0xba, 0xb0, 0x67, 0x99, 0x35, 0x07, 0x1c, 0x72, 0xfd, 0x97, 0x5e, 0x7b, 0x02, 0x1c, 0x04, 0xb1, 0xd1, 0x6e, 0xa3, 0x6f, 0xc2, 0xd0, 0x51, 0xef, 0x5a, 0x8e, 0x11, 0x7c, }; static const unsigned char ecdsa_secp384r1_sha384_11500_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11500_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x83, 0x27, 0x6c, 0x07, 0x93, 0xf0, 0xa1, 0x97, 0x42, 0x42, 0x2f, 0x8a, 0xf6, 0x71, 0xcc, 0xf9, 0x65, 0xfa, 0x7d, 0x18, 0xd5, 0x41, 0xbe, 0xf4, 0xc0, 0x5b, 0x90, 0xe3, 0x03, 0xf8, 0x91, 0xd3, 0x90, 0x08, 0x43, 0x9e, 0x0f, 0xda, 0x4b, 0xfa, 0xd5, 0xee, 0x9a, 0x6a, 0xce, 0x7e, 0x34, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11500 = { .name = "ecdsa_secp384r1_sha384_11500", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11500_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11500_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11500_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 745 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11501 for ECDSA, tcId is 746 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11501_pubkey[] = { 0xf0, 0x52, 0xdf, 0xc2, 0x7b, 0xf8, 0xa6, 0xd3, 0x6f, 0x37, 0x39, 0xf2, 0x39, 0xb9, 0x81, 0xf5, 0xb5, 0x3f, 0xe0, 0x8d, 0x99, 0x9e, 0xc6, 0x83, 0xb0, 0x1e, 0x43, 0xe7, 0x59, 0x61, 0x56, 0x20, 0x6b, 0xa0, 0x8b, 0x8b, 0x9f, 0x59, 0x22, 0x9e, 0x2f, 0xbd, 0xce, 0x05, 0xf1, 0xe4, 0x0f, 0x99, 0x90, 0xf0, 0xfd, 0xfb, 0x70, 0x29, 0xf9, 0xb3, 0xe8, 0xc6, 0x14, 0x4d, 0xad, 0x03, 0x39, 0x20, 0x8b, 0x7c, 0xdc, 0xb3, 0x82, 0x0a, 0x55, 0x42, 0x59, 0xdb, 0x9d, 0x27, 0xaf, 0xdd, 0x18, 0xf4, 0xa7, 0x50, 0x29, 0x6c, 0x59, 0xba, 0xd6, 0xb6, 0x2d, 0xf0, 0x76, 0xf9, 0x0d, 0x53, 0xbe, 0x0d, }; static const unsigned char ecdsa_secp384r1_sha384_11501_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11501_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x94, 0x28, 0x48, 0x58, 0x6b, 0x53, 0x41, 0x05, 0xdd, 0xd1, 0xca, 0x77, 0xdf, 0x72, 0xe1, 0x25, 0x11, 0x40, 0xf4, 0x12, 0xe9, 0x7b, 0x62, 0xaf, 0xbf, 0x85, 0xd4, 0x82, 0x23, 0x09, 0x17, 0x6b, 0x59, 0x65, 0x45, 0x3d, 0xee, 0x3f, 0xab, 0x70, 0x9e, 0x14, 0x15, 0x6b, 0x3d, 0xfc, 0xec, 0xca, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11501 = { .name = "ecdsa_secp384r1_sha384_11501", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11501_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11501_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11501_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 746 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11502 for ECDSA, tcId is 747 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11502_pubkey[] = { 0xf8, 0x77, 0xbd, 0x6e, 0x2a, 0x92, 0x73, 0xe3, 0x22, 0xa3, 0x29, 0x8e, 0xa3, 0xad, 0xd1, 0x3d, 0x11, 0x04, 0xb3, 0x21, 0x72, 0x28, 0x36, 0x69, 0xca, 0x66, 0x88, 0xf0, 0xcb, 0x59, 0x15, 0x24, 0xa7, 0xf1, 0x5d, 0xd4, 0x14, 0x96, 0x68, 0x1e, 0xda, 0x98, 0x93, 0x9a, 0xae, 0x72, 0x9f, 0xed, 0xe8, 0x5c, 0xa3, 0x7c, 0x81, 0xef, 0x19, 0xe3, 0xdc, 0x9a, 0xb1, 0x69, 0x08, 0xa3, 0x72, 0x0d, 0x86, 0x87, 0x5a, 0x51, 0xa6, 0xa6, 0xd9, 0x32, 0xe3, 0x74, 0x92, 0xa6, 0xec, 0x7a, 0x34, 0x4e, 0xab, 0xc4, 0x82, 0x37, 0x7f, 0x14, 0x89, 0x1f, 0xbd, 0x1d, 0xa7, 0xfa, 0xef, 0xfa, 0x11, 0x78, }; static const unsigned char ecdsa_secp384r1_sha384_11502_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11502_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0x21, 0x19, 0xd5, 0xfc, 0x12, 0x64, 0x9f, 0xc8, 0x08, 0xaf, 0x3b, 0x6d, 0x90, 0x37, 0xd3, 0xa4, 0x4e, 0xb3, 0x23, 0x99, 0x97, 0x0d, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11502 = { .name = "ecdsa_secp384r1_sha384_11502", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11502_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11502_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11502_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 747 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11503 for ECDSA, tcId is 748 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11503_pubkey[] = { 0x14, 0x24, 0x9b, 0xbc, 0xfe, 0xec, 0xea, 0xb0, 0x6c, 0x75, 0x65, 0x4d, 0x36, 0x1c, 0x0d, 0xf8, 0xd5, 0x6b, 0x32, 0x0e, 0xa3, 0xbc, 0x1d, 0x46, 0x27, 0xec, 0x0a, 0x2f, 0x4b, 0x8f, 0xa3, 0x57, 0x74, 0x45, 0x69, 0x46, 0x64, 0xf5, 0x69, 0xa9, 0x1f, 0x48, 0x07, 0x41, 0x38, 0x1e, 0x49, 0x4a, 0x28, 0x47, 0x9f, 0x21, 0x86, 0xd7, 0x15, 0xa5, 0x67, 0x88, 0xf6, 0x70, 0x73, 0x05, 0x6a, 0xa0, 0xcb, 0x0b, 0x6a, 0x7f, 0x78, 0x93, 0xe7, 0x7b, 0x9a, 0x69, 0x76, 0xef, 0x66, 0x63, 0xd8, 0x02, 0x26, 0x89, 0x6d, 0x7f, 0x43, 0xbb, 0x50, 0x2e, 0x1b, 0x4d, 0x49, 0x55, 0x8a, 0x27, 0xdd, 0x8b, }; static const unsigned char ecdsa_secp384r1_sha384_11503_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11503_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x79, 0xb9, 0x5c, 0x01, 0x3b, 0x04, 0x72, 0xde, 0x04, 0xd8, 0xfa, 0xee, 0xc3, 0xb7, 0x79, 0xc3, 0x9f, 0xe7, 0x29, 0xea, 0x84, 0xfb, 0x55, 0x4c, 0xd0, 0x91, 0xc7, 0x17, 0x8c, 0x2f, 0x05, 0x4e, 0xab, 0xbc, 0x62, 0xc3, 0xe1, 0xcf, 0xba, 0xc2, 0xc2, 0xe6, 0x9d, 0x7a, 0xa4, 0x5d, 0x90, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11503 = { .name = "ecdsa_secp384r1_sha384_11503", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11503_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11503_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11503_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 748 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11504 for ECDSA, tcId is 749 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11504_pubkey[] = { 0x50, 0xa4, 0x38, 0xc9, 0x8e, 0xe9, 0x40, 0x25, 0xce, 0x13, 0xe2, 0x7d, 0x36, 0xb8, 0x28, 0x0d, 0x48, 0x43, 0x58, 0x58, 0x36, 0xeb, 0x47, 0x01, 0x1a, 0x07, 0x0c, 0xd7, 0x77, 0x29, 0x24, 0x56, 0x84, 0xa0, 0xdb, 0x31, 0xfd, 0xe9, 0x80, 0x62, 0x03, 0x49, 0xc7, 0x96, 0x83, 0x2b, 0x2c, 0x6c, 0xbd, 0xb7, 0x2d, 0xba, 0x9f, 0x3f, 0x9c, 0xc8, 0x78, 0x55, 0x9f, 0x50, 0xb6, 0xbd, 0x12, 0x90, 0xf1, 0x0a, 0x6b, 0xcc, 0xbc, 0x1e, 0xee, 0xf7, 0x70, 0x8b, 0x1b, 0x72, 0x05, 0x90, 0x22, 0x98, 0x79, 0x79, 0xe3, 0x52, 0x21, 0xc5, 0x12, 0x59, 0xf3, 0x37, 0xc7, 0x28, 0x8a, 0x2f, 0x86, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_11504_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11504_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xd4, 0x0d, 0x0c, 0xaa, 0x4d, 0x9d, 0x42, 0x38, 0x1f, 0x3d, 0x72, 0xa2, 0x56, 0x83, 0xf5, 0x2b, 0x03, 0xa1, 0xed, 0x96, 0xfb, 0x72, 0xd0, 0x3f, 0x08, 0xdc, 0xb9, 0xa8, 0xbc, 0x8f, 0x23, 0xc1, 0xa4, 0x59, 0xde, 0xab, 0x03, 0xbc, 0xd3, 0x93, 0x96, 0xc0, 0xd1, 0xe9, 0x05, 0x3c, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11504 = { .name = "ecdsa_secp384r1_sha384_11504", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11504_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11504_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11504_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 749 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11505 for ECDSA, tcId is 750 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11505_pubkey[] = { 0x4d, 0x3f, 0xc5, 0xdc, 0xfa, 0xf7, 0x41, 0x11, 0x3c, 0xda, 0x3c, 0xe2, 0xf8, 0xdf, 0xf4, 0xc9, 0x12, 0x14, 0x3e, 0x4d, 0x36, 0x31, 0x4c, 0x36, 0x1d, 0x7e, 0xd5, 0x65, 0x6b, 0x68, 0x44, 0x8b, 0xcc, 0xa1, 0x14, 0xba, 0x9e, 0x81, 0x24, 0x28, 0x12, 0x34, 0x66, 0x0b, 0x77, 0x26, 0xdd, 0xcd, 0x68, 0x0d, 0xdf, 0xef, 0x7e, 0xa0, 0x7b, 0xfb, 0xce, 0xde, 0x10, 0x80, 0x3d, 0x38, 0xd7, 0x21, 0x16, 0x31, 0xca, 0x11, 0x46, 0x60, 0x78, 0x81, 0x9e, 0xb6, 0x6e, 0x11, 0x92, 0x1a, 0xb7, 0xff, 0xa3, 0xc4, 0x56, 0x0c, 0x73, 0x2e, 0x77, 0x59, 0x5f, 0xd4, 0x08, 0xe9, 0x17, 0xdd, 0x9a, 0xfc, }; static const unsigned char ecdsa_secp384r1_sha384_11505_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11505_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x4c, 0x7d, 0x21, 0x9d, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x15, 0xcf, 0x10, 0x58, 0xc8, 0xd8, 0xba, 0x1e, 0x63, 0x4c, 0x41, 0x22, 0xdb, 0x95, 0xec, 0x1f, 0xac, 0xd4, 0xbb, 0x13, 0xeb, 0xf0, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11505 = { .name = "ecdsa_secp384r1_sha384_11505", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11505_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11505_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11505_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 750 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11506 for ECDSA, tcId is 751 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11506_pubkey[] = { 0x63, 0xd6, 0x5c, 0xdf, 0xeb, 0x1f, 0x1a, 0x42, 0x00, 0x0f, 0x43, 0xbd, 0x1d, 0xdd, 0x13, 0x05, 0x37, 0xa7, 0xb6, 0xf6, 0x35, 0xe8, 0xd2, 0xbd, 0x81, 0xa9, 0x7d, 0xa1, 0x68, 0x22, 0x11, 0x83, 0xda, 0x43, 0x3c, 0xa7, 0x84, 0x29, 0xfd, 0x2b, 0x33, 0xc5, 0xf9, 0x48, 0x95, 0xa9, 0xc1, 0x3a, 0xa9, 0xd1, 0xd5, 0xea, 0x32, 0x87, 0x25, 0x65, 0x3a, 0x5a, 0x9d, 0x00, 0xf8, 0x5a, 0x55, 0x16, 0x23, 0x6f, 0x3b, 0x14, 0x28, 0xa8, 0x62, 0x92, 0x87, 0xd3, 0xb0, 0x48, 0x7a, 0x2e, 0x82, 0xdd, 0x57, 0xf9, 0x3b, 0xb2, 0xaa, 0x3d, 0x97, 0x83, 0xdc, 0x74, 0x13, 0x1e, 0x13, 0x75, 0x60, 0x34, }; static const unsigned char ecdsa_secp384r1_sha384_11506_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11506_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd2, 0x19, 0xdb, 0x9a, 0xf9, 0x4c, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x89, 0xbd, 0xb6, 0xd9, 0xef, 0x7b, 0xe8, 0x50, 0x4c, 0xa3, 0x74, 0x75, 0x6e, 0xa5, 0xb8, 0xf1, 0x5e, 0x44, 0x06, 0x7d, 0x20, 0x9b, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11506 = { .name = "ecdsa_secp384r1_sha384_11506", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11506_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11506_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11506_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 751 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11507 for ECDSA, tcId is 752 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11507_pubkey[] = { 0xd2, 0x2c, 0x9c, 0x34, 0x8b, 0x97, 0x45, 0x71, 0x1f, 0x57, 0xde, 0xba, 0xc3, 0xa0, 0x7d, 0xf9, 0x0a, 0x52, 0x7c, 0x06, 0xbd, 0x02, 0xa8, 0x45, 0x4f, 0x41, 0x43, 0x7d, 0x54, 0x22, 0x4e, 0x07, 0x16, 0x98, 0xf0, 0x3f, 0xdc, 0x64, 0xb1, 0xd6, 0x52, 0x41, 0x4e, 0xdc, 0x3f, 0x22, 0x39, 0xc4, 0x9a, 0xe9, 0x81, 0x2a, 0x4b, 0x92, 0xf0, 0x99, 0xd6, 0x65, 0x9a, 0x65, 0x96, 0x91, 0x76, 0x8d, 0x57, 0xe5, 0x30, 0xed, 0x3c, 0x91, 0xd5, 0x45, 0x57, 0x81, 0x60, 0x58, 0x50, 0x99, 0x7a, 0x58, 0x22, 0x1f, 0x22, 0xa2, 0x45, 0x1c, 0x39, 0x32, 0x47, 0x06, 0x06, 0xc2, 0x3f, 0x3a, 0xb1, 0xb8, }; static const unsigned char ecdsa_secp384r1_sha384_11507_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11507_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa4, 0x33, 0xb7, 0x35, 0xf2, 0x99, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0xb0, 0x2d, 0xeb, 0xbf, 0xa7, 0xc9, 0xf1, 0x48, 0x7f, 0x39, 0x36, 0xa2, 0x2c, 0xa3, 0xf6, 0xf5, 0xd0, 0x6e, 0xa2, 0x2d, 0x7c, 0x0d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11507 = { .name = "ecdsa_secp384r1_sha384_11507", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11507_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11507_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11507_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 752 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11508 for ECDSA, tcId is 753 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11508_pubkey[] = { 0x31, 0xf0, 0x5c, 0x0c, 0x29, 0xe9, 0xda, 0x49, 0xaa, 0x2f, 0xbb, 0xed, 0xee, 0x77, 0x0c, 0x68, 0xd1, 0x0f, 0x85, 0xe7, 0xf7, 0x7e, 0x72, 0xac, 0x3c, 0xfa, 0x9c, 0x86, 0x23, 0xa2, 0xbb, 0x42, 0xee, 0xb2, 0xf2, 0x4a, 0xc8, 0xf2, 0xae, 0xf7, 0xab, 0x0c, 0x4b, 0x47, 0x82, 0x31, 0x40, 0x03, 0x5b, 0xb3, 0x2f, 0xc1, 0xec, 0x04, 0xbb, 0xff, 0x5e, 0xab, 0x96, 0xe0, 0x70, 0xc9, 0x38, 0xba, 0x1b, 0x53, 0xfe, 0x63, 0x97, 0x0f, 0x64, 0x9a, 0xe0, 0x2e, 0x2a, 0x4a, 0xda, 0x42, 0x0a, 0x24, 0x9b, 0x6f, 0x7c, 0x52, 0x5e, 0x2c, 0x4b, 0x9b, 0x0d, 0x55, 0x62, 0xae, 0x26, 0xf2, 0x27, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_11508_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11508_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb9, 0xaf, 0x94, 0xce, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd6, 0xef, 0xee, 0xfc, 0x87, 0x6c, 0x9f, 0x23, 0x21, 0x7b, 0x44, 0x3c, 0x80, 0x63, 0x7e, 0xf9, 0x39, 0xe9, 0x11, 0x21, 0x9f, 0x96, 0xc1, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11508 = { .name = "ecdsa_secp384r1_sha384_11508", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11508_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11508_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11508_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 753 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11509 for ECDSA, tcId is 754 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11509_pubkey[] = { 0xbc, 0x26, 0xee, 0xc9, 0x5e, 0x26, 0xc9, 0x80, 0xbc, 0x03, 0x34, 0x26, 0x4c, 0xbc, 0xfc, 0x26, 0xb8, 0x97, 0xc3, 0x57, 0x1c, 0x96, 0xce, 0x9a, 0xb2, 0xa6, 0x7b, 0x49, 0xbb, 0x0f, 0x26, 0xa6, 0x27, 0x2f, 0xdc, 0x27, 0x80, 0x6d, 0x7a, 0x4c, 0x57, 0x2a, 0xe0, 0xf7, 0x81, 0x49, 0xf1, 0xf3, 0xc8, 0xaf, 0x5f, 0x41, 0xb9, 0x9d, 0x20, 0x66, 0x01, 0x81, 0x65, 0x51, 0x3f, 0xb3, 0xb5, 0x5e, 0x42, 0x55, 0xdc, 0xd0, 0x65, 0x96, 0x47, 0xed, 0x55, 0xe1, 0xe2, 0x60, 0x2c, 0xae, 0x4e, 0xfb, 0xd6, 0xea, 0xe1, 0xdf, 0xe2, 0xff, 0x63, 0xe2, 0xc7, 0x48, 0xd4, 0xac, 0xc7, 0x43, 0x01, 0x39, }; static const unsigned char ecdsa_secp384r1_sha384_11509_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11509_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x62, 0x76, 0x27, 0x3d, 0x72, 0x28, 0xd4, 0xf8, 0x4b, 0x76, 0x9b, 0xe0, 0xfd, 0x57, 0xb9, 0x7e, 0x4c, 0x1e, 0xbc, 0xae, 0x9a, 0x5f, 0x63, 0x5e, 0x80, 0xe9, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11509 = { .name = "ecdsa_secp384r1_sha384_11509", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11509_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11509_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11509_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 754 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11510 for ECDSA, tcId is 755 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11510_pubkey[] = { 0x6f, 0xa0, 0x96, 0x4d, 0xd0, 0x54, 0x25, 0x0a, 0xf1, 0x76, 0x89, 0x1c, 0x0c, 0x82, 0x2b, 0x01, 0x3b, 0x70, 0xf0, 0x59, 0xc3, 0x47, 0x17, 0x2c, 0xaf, 0xc6, 0xb3, 0x6c, 0xd1, 0x6c, 0xf3, 0xb0, 0xf9, 0xd1, 0x9f, 0x25, 0x98, 0xbd, 0x0d, 0x58, 0x0a, 0xc1, 0x6c, 0x46, 0xac, 0xb1, 0x67, 0xd4, 0x37, 0x5b, 0xef, 0x70, 0x1c, 0x00, 0x2d, 0xcc, 0x04, 0x0f, 0xd5, 0x48, 0x24, 0xb1, 0x4c, 0xc2, 0xdf, 0x01, 0x54, 0xeb, 0x20, 0xe7, 0x44, 0x64, 0xe1, 0xfe, 0x7b, 0x83, 0x34, 0x26, 0xdd, 0x7d, 0x63, 0x6b, 0xf2, 0xd7, 0x96, 0x03, 0xfd, 0xde, 0x5d, 0xda, 0xab, 0x23, 0xab, 0x0c, 0xf4, 0x26, }; static const unsigned char ecdsa_secp384r1_sha384_11510_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11510_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x16, 0xe4, 0xd9, 0xf4, 0x2d, 0x4e, 0xca, 0x22, 0xdf, 0x40, 0x3a, 0x0c, 0x57, 0x8b, 0x86, 0xf0, 0xa9, 0xa9, 0x3f, 0xe8, 0x99, 0x95, 0xc7, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11510 = { .name = "ecdsa_secp384r1_sha384_11510", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11510_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11510_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11510_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 755 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11511 for ECDSA, tcId is 756 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11511_pubkey[] = { 0xba, 0xa4, 0xe7, 0x12, 0xee, 0x07, 0x86, 0xa5, 0xab, 0x0e, 0x5a, 0x5d, 0xaf, 0xdc, 0xdc, 0xf8, 0x7b, 0x38, 0x83, 0x0a, 0xb2, 0xec, 0x86, 0xfa, 0xed, 0xda, 0x9f, 0xdf, 0x65, 0x33, 0x2f, 0x6a, 0x96, 0x88, 0x26, 0x94, 0x12, 0xf0, 0x50, 0x35, 0x65, 0x30, 0xd4, 0x66, 0x4a, 0x7f, 0xb8, 0xcd, 0xec, 0xc4, 0x6a, 0x90, 0x1b, 0x01, 0x6e, 0x6b, 0xb8, 0xa3, 0x36, 0xad, 0x9a, 0xa6, 0xf1, 0x9a, 0xbf, 0x9a, 0xda, 0x69, 0x70, 0x5d, 0x1c, 0x90, 0x5b, 0xea, 0xfb, 0x95, 0xa4, 0x4f, 0x52, 0xaf, 0x43, 0xde, 0x4b, 0xf8, 0x0c, 0x05, 0x0c, 0xf9, 0x96, 0xb7, 0x79, 0x6d, 0xfc, 0xee, 0x8e, 0x1b, }; static const unsigned char ecdsa_secp384r1_sha384_11511_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11511_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xda, 0x42, 0x33, 0xab, 0xf8, 0x24, 0xc9, 0x3f, 0x90, 0x11, 0x5e, 0x76, 0xdb, 0x20, 0x6f, 0xa7, 0x48, 0x9d, 0x66, 0x47, 0x33, 0x2e, 0x1b, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11511 = { .name = "ecdsa_secp384r1_sha384_11511", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11511_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11511_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11511_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 756 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11512 for ECDSA, tcId is 757 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11512_pubkey[] = { 0x81, 0xe7, 0x8a, 0x52, 0xae, 0x06, 0x95, 0x58, 0x3f, 0x7a, 0x60, 0x1a, 0xb9, 0xb6, 0xfb, 0xfa, 0xf4, 0x34, 0xf2, 0xbe, 0xfa, 0x1f, 0x8c, 0x83, 0x3d, 0x59, 0xde, 0xb6, 0x27, 0xa9, 0x27, 0xc2, 0xf4, 0x2d, 0x48, 0xeb, 0x61, 0x7f, 0xe0, 0x42, 0xf5, 0x84, 0xe1, 0x05, 0xc2, 0x3c, 0x23, 0x17, 0xcf, 0x22, 0xd5, 0x65, 0xf5, 0xf3, 0xb4, 0x25, 0xef, 0x79, 0x37, 0xdf, 0x62, 0x9b, 0x68, 0x64, 0xda, 0xc7, 0x12, 0x64, 0xb2, 0x88, 0xc1, 0xa9, 0x87, 0x21, 0x0f, 0x52, 0x30, 0x71, 0x31, 0x9c, 0xe3, 0xf6, 0x44, 0x11, 0x91, 0x0a, 0xc2, 0x37, 0x65, 0xc4, 0x26, 0x6e, 0x61, 0x51, 0x12, 0xbc, }; static const unsigned char ecdsa_secp384r1_sha384_11512_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11512_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xb1, 0xa6, 0xc0, 0xfa, 0x1b, 0x96, 0xef, 0xac, 0x0d, 0x06, 0xd9, 0x24, 0x58, 0x53, 0xbd, 0x76, 0x76, 0x0c, 0xb5, 0x66, 0x62, 0x94, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11512 = { .name = "ecdsa_secp384r1_sha384_11512", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11512_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11512_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11512_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 757 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11513 for ECDSA, tcId is 758 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11513_pubkey[] = { 0x41, 0xfa, 0x87, 0x65, 0xb1, 0x9d, 0x31, 0x08, 0x03, 0x1e, 0x28, 0xc9, 0xa7, 0x81, 0xa3, 0x85, 0xc9, 0xc1, 0x0b, 0x2b, 0xfd, 0x42, 0xe6, 0x43, 0x7e, 0x5c, 0x4b, 0xd7, 0x11, 0xcf, 0x2a, 0x03, 0x17, 0x50, 0x84, 0x7d, 0x17, 0xa8, 0x2f, 0x93, 0x76, 0xa3, 0x0a, 0xe1, 0x82, 0xa6, 0xd6, 0xe7, 0x1c, 0x20, 0xaf, 0x96, 0x32, 0x41, 0x47, 0xd4, 0x15, 0x5a, 0x4d, 0x0c, 0x86, 0x7c, 0xa8, 0xe3, 0x6e, 0xba, 0x20, 0x4f, 0xbe, 0xd2, 0x08, 0x7e, 0x0f, 0xcb, 0xdc, 0x8b, 0xaa, 0xbe, 0x07, 0xbb, 0x31, 0x23, 0xf9, 0xf7, 0x25, 0x9e, 0x77, 0x1c, 0xd9, 0xf1, 0xad, 0x17, 0xd1, 0xa2, 0x37, 0x87, }; static const unsigned char ecdsa_secp384r1_sha384_11513_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11513_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xdf, 0xea, 0x06, 0x86, 0x55, 0x26, 0xce, 0xa1, 0x1c, 0x0f, 0x9e, 0xb9, 0x51, 0x2b, 0x41, 0xfa, 0x95, 0x81, 0xd0, 0xf6, 0xcb, 0x7d, 0xb9, 0x68, 0x03, 0x36, 0x15, 0x1d, 0xce, 0x79, 0xde, 0x81, 0x8c, 0xdf, 0x33, 0xc8, 0x79, 0xda, 0x32, 0x27, 0x40, 0x41, 0x6d, 0x1e, 0x5a, 0xe5, 0x32, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11513 = { .name = "ecdsa_secp384r1_sha384_11513", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11513_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11513_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11513_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 758 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11514 for ECDSA, tcId is 759 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11514_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0x57, 0x2c, 0x1e, 0x06, 0xdd, 0x2c, 0x7b, 0x94, 0xb8, 0x73, 0xf0, 0x57, 0x8f, 0xcb, 0x2b, 0x99, 0xd6, 0x0e, 0x24, 0x6e, 0x51, 0x24, 0x5d, 0x08, 0x04, 0xed, 0xd4, 0x4b, 0x32, 0xf0, 0xf0, 0x00, 0xc8, 0xf8, 0xf8, 0x8f, 0x1d, 0x4a, 0x65, 0xfe, 0xa5, 0x1d, 0xbb, 0xb4, 0xab, 0x1e, 0x28, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_11514_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11514_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11514 = { .name = "ecdsa_secp384r1_sha384_11514", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11514_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11514_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11514_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 759 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11515 for ECDSA, tcId is 760 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11515_pubkey[] = { 0xe5, 0x85, 0xa0, 0x67, 0xd6, 0xdf, 0xf3, 0x7a, 0xe7, 0xf1, 0x7f, 0x81, 0x58, 0x31, 0x19, 0xb6, 0x12, 0x91, 0x59, 0x73, 0x45, 0xf1, 0x07, 0xac, 0xff, 0xe2, 0x37, 0xa0, 0x8f, 0x48, 0x86, 0xd4, 0xfd, 0xf9, 0x4f, 0xe6, 0x31, 0x82, 0xe6, 0x14, 0x3c, 0x99, 0xbe, 0x25, 0xa7, 0xb7, 0xd8, 0x6b, 0xa8, 0xd3, 0xe1, 0xf9, 0x22, 0xd3, 0x84, 0x6b, 0x47, 0x8c, 0x0f, 0xa8, 0x70, 0x34, 0xd4, 0x66, 0x29, 0xf1, 0xdb, 0x91, 0xae, 0xdb, 0xa2, 0xf7, 0xfb, 0x12, 0x2b, 0xb4, 0xcd, 0x0f, 0x0f, 0xfe, 0x37, 0x07, 0x07, 0x6f, 0xe2, 0xb5, 0x9a, 0x01, 0x5a, 0xe2, 0x44, 0x4c, 0x54, 0xe1, 0xd7, 0xdc, }; static const unsigned char ecdsa_secp384r1_sha384_11515_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11515_sig[] = { 0xb3, 0x76, 0x99, 0xe0, 0xd5, 0x18, 0xa4, 0xd3, 0x70, 0xdb, 0xda, 0xaa, 0xea, 0x37, 0x88, 0x85, 0x0f, 0xa0, 0x3f, 0x81, 0x86, 0xd1, 0xf7, 0x8f, 0xdf, 0xba, 0xe6, 0x54, 0x0a, 0xa6, 0x70, 0xb3, 0x1c, 0x8a, 0xda, 0x0f, 0xff, 0x3e, 0x73, 0x7b, 0xd6, 0x95, 0x20, 0x56, 0x0f, 0xe0, 0xce, 0x60, 0x64, 0xad, 0xb4, 0xd5, 0x1a, 0x93, 0xf9, 0x6b, 0xed, 0x46, 0x65, 0xde, 0x2d, 0x4e, 0x11, 0x69, 0xcc, 0x95, 0x81, 0x9e, 0xc6, 0xe9, 0x33, 0x3e, 0xdf, 0xd5, 0xc0, 0x7c, 0xa1, 0x34, 0xce, 0xef, 0x7c, 0x95, 0x95, 0x7b, 0x71, 0x9a, 0xe3, 0x49, 0xfc, 0x43, 0x9e, 0xaa, 0x49, 0xfb, 0xbe, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11515 = { .name = "ecdsa_secp384r1_sha384_11515", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11515_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11515_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11515_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 760 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11516 for ECDSA, tcId is 761 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11516_pubkey[] = { 0xb4, 0xd7, 0x8c, 0xcc, 0xbc, 0xed, 0x80, 0x65, 0xc0, 0xeb, 0xdc, 0x33, 0x0b, 0x46, 0x70, 0xec, 0x99, 0x30, 0x92, 0x73, 0xe4, 0x42, 0xb9, 0xbe, 0x34, 0x11, 0x96, 0xc1, 0x04, 0x3e, 0x44, 0x41, 0xfc, 0x57, 0xb9, 0x14, 0x08, 0x55, 0x95, 0xbf, 0xc7, 0x55, 0xc6, 0x4f, 0xc4, 0x09, 0xf0, 0xba, 0x01, 0xfe, 0xe3, 0x1c, 0xbb, 0xba, 0xed, 0x5c, 0x13, 0x23, 0xf0, 0x9c, 0x87, 0xdf, 0x9b, 0x07, 0x12, 0xc1, 0x2e, 0x99, 0x73, 0x3f, 0xa2, 0x3e, 0xf9, 0x1b, 0x4e, 0x6c, 0xa6, 0x66, 0xb0, 0x9d, 0xd7, 0x54, 0x0e, 0xbf, 0x10, 0x68, 0xa1, 0x51, 0x55, 0xbc, 0x06, 0x9e, 0x3d, 0x59, 0x5c, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_11516_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11516_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11516 = { .name = "ecdsa_secp384r1_sha384_11516", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11516_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11516_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11516_sig, .siglen = 96, .result = -1, .comment = "point with x-coordinate 0, tcId is 761 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11517 for ECDSA, tcId is 762 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11517_pubkey[] = { 0x6e, 0x3c, 0x68, 0xbe, 0x53, 0xaa, 0xde, 0x81, 0xef, 0x89, 0xe0, 0x96, 0xd8, 0x41, 0xe2, 0x84, 0x5a, 0x23, 0x33, 0x1e, 0x7e, 0xc8, 0xa6, 0xa8, 0x39, 0xd5, 0x8d, 0x07, 0xfa, 0x01, 0x6c, 0x09, 0x73, 0xed, 0x75, 0xde, 0x4f, 0x99, 0x17, 0x7b, 0xfd, 0xc7, 0x4d, 0xb5, 0x66, 0xe9, 0xd1, 0x5a, 0x49, 0x72, 0xea, 0x08, 0xe5, 0x77, 0xce, 0x1f, 0x61, 0xc1, 0x3a, 0x6c, 0xa1, 0xba, 0xd1, 0xde, 0xef, 0x29, 0x82, 0xee, 0x01, 0xa2, 0x82, 0x6f, 0x00, 0x2b, 0x76, 0x9f, 0x2c, 0x46, 0x09, 0x8d, 0x3b, 0xaf, 0xf0, 0x68, 0xa4, 0x05, 0xd0, 0x9c, 0xa3, 0x84, 0x0d, 0x2f, 0xaf, 0xe4, 0xe4, 0x6e, }; static const unsigned char ecdsa_secp384r1_sha384_11517_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11517_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11517 = { .name = "ecdsa_secp384r1_sha384_11517", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11517_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11517_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11517_sig, .siglen = 97, .result = -1, .comment = "point with x-coordinate 0, tcId is 762 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11518 for ECDSA, tcId is 763 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11518_pubkey[] = { 0xb1, 0x01, 0xcd, 0xb3, 0xeb, 0xa2, 0x0e, 0x11, 0x2a, 0xdb, 0xb4, 0xbb, 0xd2, 0xcb, 0x47, 0x9a, 0x69, 0xe5, 0x90, 0xa4, 0x4e, 0xa9, 0x02, 0x63, 0x18, 0x32, 0xab, 0xfa, 0xb8, 0xaf, 0x2c, 0x30, 0x41, 0xb3, 0xdf, 0x7f, 0x16, 0x65, 0xb2, 0xc6, 0xeb, 0x53, 0x3f, 0x54, 0x62, 0x17, 0x10, 0x0a, 0x1a, 0x61, 0xaa, 0x99, 0x51, 0x57, 0x8a, 0xd4, 0xf0, 0x0a, 0xe1, 0x73, 0x39, 0xa8, 0xa6, 0xf1, 0x35, 0x9b, 0xbd, 0x0a, 0xc3, 0x55, 0x67, 0x8e, 0xd4, 0xdf, 0x21, 0x33, 0x8f, 0x08, 0x76, 0x3c, 0x1d, 0x37, 0x02, 0xec, 0x13, 0x2b, 0x63, 0x4c, 0x7b, 0xcc, 0x01, 0x18, 0xef, 0xb1, 0xd0, 0xdd, }; static const unsigned char ecdsa_secp384r1_sha384_11518_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11518_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x27, 0xe0, 0xa9, 0x19, 0xfd, 0xa4, 0xa2, 0xc6, 0x44, 0xd2, 0x02, 0xbd, 0x41, 0xbc, 0xee, 0x4b, 0xc8, 0xfc, 0x05, 0x15, 0x5c, 0x27, 0x6e, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11518 = { .name = "ecdsa_secp384r1_sha384_11518", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11518_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11518_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11518_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 763 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11519 for ECDSA, tcId is 764 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11519_pubkey[] = { 0x67, 0x61, 0x04, 0x4a, 0x04, 0x0a, 0x49, 0x79, 0xdb, 0x26, 0x9b, 0x4a, 0x37, 0x7e, 0x42, 0xf1, 0x1b, 0x4b, 0xe0, 0xce, 0x24, 0x61, 0x1f, 0x67, 0x76, 0x74, 0xdc, 0xf7, 0x70, 0xf5, 0x88, 0x7c, 0xa4, 0xdb, 0x56, 0x53, 0x03, 0x28, 0x38, 0x09, 0xe6, 0xd6, 0x5f, 0x7f, 0xc6, 0xbc, 0x27, 0x36, 0x05, 0xc7, 0xda, 0xa4, 0x03, 0xfc, 0xa5, 0x35, 0x49, 0xf7, 0x5f, 0xf3, 0x37, 0x29, 0x09, 0x64, 0x2d, 0x02, 0xb7, 0xfd, 0xca, 0xc1, 0xe6, 0x82, 0x42, 0x81, 0x4d, 0x6e, 0x92, 0x5a, 0xb0, 0x1a, 0x80, 0x83, 0x6c, 0xfb, 0xb3, 0x55, 0x81, 0x96, 0x00, 0x79, 0xe2, 0xfb, 0x44, 0xc0, 0xd1, 0x86, }; static const unsigned char ecdsa_secp384r1_sha384_11519_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11519_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11519 = { .name = "ecdsa_secp384r1_sha384_11519", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11519_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11519_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11519_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 764 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11520 for ECDSA, tcId is 765 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11520_pubkey[] = { 0x69, 0x22, 0xc5, 0x91, 0x50, 0x2f, 0x01, 0x04, 0x6f, 0xee, 0x56, 0x17, 0xbf, 0x16, 0x49, 0x6f, 0x58, 0x39, 0x88, 0x22, 0xe6, 0x9a, 0xfa, 0x83, 0x35, 0x30, 0x8f, 0x36, 0xc0, 0x9a, 0x8e, 0xd4, 0x37, 0x20, 0x9f, 0xef, 0xcf, 0xfb, 0xbd, 0xf0, 0xa4, 0x87, 0x6b, 0x35, 0xa3, 0xc7, 0xab, 0x26, 0x55, 0x85, 0x4d, 0xb8, 0x25, 0xb9, 0x4b, 0x3f, 0x27, 0xe5, 0xf8, 0x92, 0xd3, 0xbb, 0xb6, 0xc7, 0x24, 0x0e, 0xc9, 0x22, 0x89, 0x4d, 0xd3, 0x59, 0x8e, 0x91, 0xfc, 0xc6, 0x13, 0x4a, 0x2b, 0x8f, 0xd1, 0x54, 0xe1, 0x79, 0x04, 0x66, 0x90, 0x62, 0x06, 0xf0, 0xf6, 0x23, 0x41, 0x6e, 0x63, 0xa1, }; static const unsigned char ecdsa_secp384r1_sha384_11520_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11520_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11520 = { .name = "ecdsa_secp384r1_sha384_11520", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11520_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11520_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11520_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 765 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11521 for ECDSA, tcId is 766 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11521_pubkey[] = { 0x89, 0x2d, 0xac, 0x0e, 0x70, 0x0f, 0xc2, 0x9d, 0x18, 0x02, 0xd9, 0xa4, 0x49, 0xa6, 0xf5, 0x6b, 0x21, 0x72, 0xcb, 0x1b, 0x7d, 0x88, 0x10, 0x13, 0xcd, 0x3b, 0x31, 0xc0, 0xed, 0xb0, 0x52, 0xf2, 0xd3, 0x40, 0xc8, 0x99, 0x5a, 0x44, 0x77, 0xbc, 0xb9, 0x22, 0x5f, 0xec, 0x15, 0x66, 0x72, 0x33, 0xcc, 0x6c, 0x34, 0xae, 0x17, 0x44, 0x54, 0x44, 0x51, 0x6f, 0xd8, 0xfd, 0x22, 0xee, 0x83, 0xf7, 0x9e, 0xb0, 0x77, 0x1e, 0xbf, 0xf6, 0x67, 0x7a, 0xc5, 0xd4, 0xe0, 0x89, 0xf8, 0x7a, 0x1c, 0x72, 0xdf, 0x95, 0x7a, 0xcb, 0x24, 0x49, 0x2a, 0xdc, 0xd7, 0xc3, 0x81, 0x6b, 0x8e, 0x0c, 0x75, 0xb1, }; static const unsigned char ecdsa_secp384r1_sha384_11521_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11521_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11521 = { .name = "ecdsa_secp384r1_sha384_11521", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11521_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11521_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11521_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 766 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11522 for ECDSA, tcId is 767 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11522_pubkey[] = { 0x01, 0x63, 0x41, 0x17, 0xe6, 0x47, 0x8c, 0xe0, 0x56, 0x8b, 0x0a, 0x24, 0x69, 0x23, 0x7b, 0xba, 0xc6, 0xff, 0x09, 0x6a, 0xcb, 0x7e, 0x51, 0x40, 0x72, 0xbf, 0x77, 0x12, 0x3c, 0xb5, 0x1b, 0xa0, 0xcc, 0x3e, 0x8d, 0x69, 0x28, 0x4d, 0x53, 0x4d, 0x8e, 0x6d, 0x1e, 0x87, 0x6c, 0xec, 0xf2, 0x22, 0x31, 0xe5, 0xef, 0x04, 0xdc, 0x96, 0x76, 0x2c, 0xe7, 0xd5, 0xef, 0x33, 0x48, 0xad, 0x1e, 0x24, 0x1a, 0xc7, 0x97, 0xae, 0x3b, 0x63, 0x0e, 0xa2, 0x49, 0xaf, 0xc5, 0x13, 0x9a, 0xf4, 0x9b, 0x8e, 0xf6, 0x8b, 0x32, 0xf8, 0x12, 0xd6, 0xb5, 0x14, 0x21, 0x03, 0x63, 0xd4, 0x98, 0xef, 0xc2, 0x8c, }; static const unsigned char ecdsa_secp384r1_sha384_11522_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11522_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11522 = { .name = "ecdsa_secp384r1_sha384_11522", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11522_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11522_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11522_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 767 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11523 for ECDSA, tcId is 768 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11523_pubkey[] = { 0x67, 0x5b, 0xdc, 0x79, 0xd8, 0x24, 0x38, 0x87, 0xfe, 0x1b, 0x30, 0x5d, 0x12, 0xac, 0x10, 0xd2, 0xe9, 0xc0, 0xbd, 0xe0, 0x70, 0xa6, 0xe3, 0x39, 0x4c, 0xd5, 0xf6, 0xad, 0xfb, 0xce, 0xda, 0x75, 0x49, 0x8b, 0x0e, 0x7a, 0x79, 0x4c, 0x72, 0x12, 0xf4, 0x2b, 0xe9, 0x3f, 0x61, 0x67, 0x44, 0x56, 0x3e, 0x96, 0xd1, 0xbf, 0x6f, 0x95, 0xcd, 0xbe, 0xfa, 0x77, 0x49, 0x11, 0xba, 0x06, 0x46, 0x3d, 0x8a, 0x90, 0xa0, 0xc9, 0xd7, 0x3c, 0x96, 0x99, 0xb0, 0x61, 0xd7, 0x79, 0xdc, 0x52, 0x49, 0x6e, 0x8e, 0xe9, 0xb9, 0xae, 0x9c, 0x5d, 0x4d, 0x90, 0xe8, 0x9c, 0xd1, 0x15, 0x7d, 0x81, 0x18, 0x95, }; static const unsigned char ecdsa_secp384r1_sha384_11523_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11523_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11523 = { .name = "ecdsa_secp384r1_sha384_11523", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11523_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11523_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11523_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 768 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11524 for ECDSA, tcId is 769 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11524_pubkey[] = { 0x0f, 0xd1, 0xaa, 0xb8, 0x9f, 0x47, 0xb5, 0x65, 0xb8, 0x16, 0x0d, 0xfc, 0xc4, 0x33, 0xb6, 0x40, 0x8a, 0xde, 0xb1, 0x47, 0x3c, 0x03, 0x6b, 0x26, 0xb7, 0xdd, 0xec, 0x71, 0x4f, 0xb4, 0xd0, 0xe7, 0xdd, 0x75, 0x6c, 0x88, 0x46, 0x9e, 0x86, 0xe2, 0x18, 0x81, 0x3e, 0xad, 0x8e, 0x8e, 0x76, 0x76, 0xf1, 0xcc, 0x95, 0x5c, 0x41, 0x39, 0xe0, 0x07, 0x1c, 0x00, 0x79, 0xec, 0x1d, 0x77, 0x16, 0x4e, 0x05, 0x69, 0xbd, 0xf4, 0x53, 0x83, 0x7e, 0x8b, 0x33, 0xc9, 0x85, 0x35, 0xa0, 0xe7, 0xc9, 0xc6, 0x1e, 0xf2, 0x47, 0x62, 0x06, 0x7b, 0xb4, 0x6b, 0x61, 0x16, 0xea, 0x79, 0x09, 0xa6, 0x9b, 0x23, }; static const unsigned char ecdsa_secp384r1_sha384_11524_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11524_sig[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11524 = { .name = "ecdsa_secp384r1_sha384_11524", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11524_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11524_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11524_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 769 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11525 for ECDSA, tcId is 770 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11525_pubkey[] = { 0x34, 0xd7, 0x4e, 0xc0, 0x88, 0xba, 0xb6, 0xc6, 0x32, 0x39, 0x68, 0xd1, 0xf4, 0x68, 0x99, 0x38, 0x12, 0xf6, 0x90, 0xd6, 0xed, 0xca, 0x5b, 0x97, 0x60, 0x4d, 0x71, 0x8e, 0x12, 0xb8, 0xcd, 0xfd, 0xd9, 0x6d, 0x42, 0xe5, 0x7d, 0x33, 0xaf, 0xe3, 0x12, 0xf0, 0xee, 0x3c, 0x3d, 0x0a, 0x13, 0xf7, 0x86, 0xf4, 0x92, 0x2b, 0xb2, 0xc1, 0x3b, 0xdf, 0x77, 0x52, 0xa3, 0xec, 0xb6, 0x93, 0x93, 0xe9, 0x97, 0xbd, 0x65, 0x46, 0x1c, 0x46, 0x86, 0x7e, 0xbe, 0xef, 0x62, 0x96, 0xb2, 0x3f, 0x2c, 0x56, 0xdf, 0x63, 0xac, 0xfd, 0xe6, 0x48, 0xf3, 0xf5, 0x00, 0x2d, 0xbc, 0x23, 0x9f, 0xfd, 0x15, 0x82, }; static const unsigned char ecdsa_secp384r1_sha384_11525_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11525_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x42, 0x76, 0x6f, 0x2b, 0x51, 0x67, 0xb9, 0xf5, 0x1d, 0x5e, 0x04, 0x90, 0xc2, 0xe5, 0x8d, 0x28, 0xf9, 0xa4, 0x08, 0x78, 0xee, 0xec, 0x63, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11525 = { .name = "ecdsa_secp384r1_sha384_11525", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11525_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11525_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11525_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 770 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11526 for ECDSA, tcId is 771 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11526_pubkey[] = { 0x43, 0x76, 0xc9, 0x89, 0x3e, 0x92, 0x77, 0x29, 0x6c, 0x76, 0x6a, 0x83, 0xab, 0xbe, 0x36, 0xb3, 0x4d, 0xa7, 0xa6, 0x31, 0xf8, 0xcb, 0xfd, 0x32, 0xa1, 0x88, 0x8d, 0xe0, 0xdd, 0x14, 0x55, 0xa2, 0x1a, 0x15, 0x3e, 0xa2, 0xd6, 0x1c, 0xfa, 0x50, 0x71, 0xfc, 0x6b, 0xe1, 0x2a, 0x65, 0x8f, 0x6b, 0x29, 0x0b, 0xa1, 0xa8, 0xee, 0x8c, 0x78, 0xb5, 0xdd, 0x58, 0xf9, 0xff, 0xca, 0xcb, 0x22, 0x95, 0x56, 0x82, 0xee, 0xa0, 0x24, 0x29, 0xc3, 0xfa, 0x8c, 0xdc, 0xb6, 0x49, 0xfa, 0x4d, 0x00, 0x7c, 0x86, 0x93, 0xe3, 0xf8, 0xf3, 0xc0, 0xa5, 0xf3, 0xc4, 0xde, 0x7a, 0x51, 0xbe, 0xaa, 0x98, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_11526_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11526_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11526 = { .name = "ecdsa_secp384r1_sha384_11526", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11526_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11526_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11526_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 771 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11527 for ECDSA, tcId is 772 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11527_pubkey[] = { 0x10, 0x87, 0x8f, 0xc4, 0x80, 0x7f, 0x67, 0x32, 0xa2, 0x3c, 0x88, 0x3e, 0x83, 0x8e, 0x38, 0xc7, 0x87, 0xf7, 0x08, 0x8f, 0x94, 0xc1, 0x82, 0x4b, 0x84, 0x67, 0x3e, 0x8b, 0x9e, 0xab, 0x16, 0xde, 0x15, 0x44, 0xae, 0x4b, 0xf2, 0xc6, 0xfe, 0x3f, 0xe4, 0xfb, 0x34, 0x3b, 0x74, 0x87, 0xe2, 0xb4, 0x30, 0x36, 0xff, 0x43, 0x95, 0x33, 0xd2, 0x2f, 0x95, 0x1d, 0xae, 0x96, 0x65, 0x84, 0xba, 0xfb, 0x23, 0xb2, 0x17, 0xdc, 0xad, 0x2f, 0x8f, 0x4e, 0x0e, 0x69, 0x99, 0xc0, 0xc4, 0xd0, 0xf0, 0x76, 0x63, 0x4b, 0xe8, 0x05, 0xf6, 0x76, 0xfd, 0x2a, 0x59, 0xc2, 0x7f, 0x9f, 0xe7, 0xc5, 0xd9, 0x5b, }; static const unsigned char ecdsa_secp384r1_sha384_11527_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11527_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x4f, 0xc1, 0x52, 0x33, 0xfb, 0x49, 0x45, 0x8c, 0x89, 0xa4, 0x05, 0x7a, 0x83, 0x79, 0xdc, 0x97, 0x91, 0xf8, 0x0a, 0x2a, 0xb8, 0x4e, 0xdd, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11527 = { .name = "ecdsa_secp384r1_sha384_11527", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11527_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11527_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11527_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 772 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11528 for ECDSA, tcId is 773 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11528_pubkey[] = { 0x03, 0x6b, 0x25, 0x3e, 0x3b, 0x4a, 0xc8, 0x8b, 0xb8, 0x58, 0x5a, 0x2b, 0x32, 0xb9, 0x78, 0x76, 0x6a, 0x93, 0x1e, 0x5a, 0xd0, 0xd0, 0xe6, 0x53, 0xa2, 0xe3, 0x4b, 0x44, 0xd6, 0xdd, 0xcc, 0x0d, 0x38, 0x6e, 0x20, 0xc4, 0xde, 0xf2, 0xd8, 0xbb, 0x3f, 0x8d, 0xa1, 0x28, 0xc1, 0xea, 0xc6, 0x9f, 0x9c, 0x8e, 0x3b, 0x5f, 0xf5, 0xdd, 0xe2, 0x20, 0x5a, 0xf3, 0x59, 0xb3, 0x97, 0x4d, 0x52, 0x75, 0x8d, 0x7a, 0xba, 0xe8, 0x12, 0xb8, 0xb2, 0x75, 0xe1, 0x45, 0x2c, 0x4e, 0x59, 0xcb, 0x62, 0xe9, 0xb6, 0x77, 0x1d, 0x34, 0x7d, 0xbd, 0x1d, 0xea, 0x76, 0x1c, 0x70, 0x29, 0x1c, 0xc5, 0xe0, 0xa6, }; static const unsigned char ecdsa_secp384r1_sha384_11528_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11528_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x77, 0xa1, 0xfb, 0x4d, 0xf8, 0xed, 0xe8, 0x52, 0xce, 0x76, 0x08, 0x37, 0xc5, 0x36, 0xca, 0xe3, 0x5a, 0xf4, 0x0f, 0x40, 0x14, 0x76, 0x4c, 0x12, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11528 = { .name = "ecdsa_secp384r1_sha384_11528", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11528_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11528_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11528_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 773 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11529 for ECDSA, tcId is 774 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11529_pubkey[] = { 0x27, 0x83, 0xc1, 0xbe, 0x92, 0x2f, 0xce, 0x15, 0x58, 0x64, 0xec, 0xb4, 0x1d, 0x0a, 0x31, 0x6e, 0x19, 0x3a, 0x55, 0x84, 0x3e, 0x80, 0x19, 0x2f, 0x1f, 0xe5, 0x56, 0x77, 0x2f, 0x3d, 0xeb, 0xd0, 0x4b, 0x9f, 0xc9, 0x3c, 0x27, 0xbc, 0x6f, 0x35, 0x39, 0x38, 0x88, 0x6a, 0x40, 0x44, 0x19, 0x94, 0x1a, 0x35, 0x2c, 0xec, 0x33, 0x69, 0x46, 0x42, 0x4f, 0xa3, 0xc2, 0x08, 0xea, 0x71, 0x05, 0xf5, 0x54, 0x9e, 0xdd, 0xe8, 0x68, 0x8a, 0xbd, 0x30, 0x53, 0x44, 0xbf, 0x4f, 0x66, 0xdd, 0xa7, 0xea, 0xbc, 0xda, 0x6f, 0x85, 0x57, 0xc9, 0xaf, 0x88, 0x10, 0x98, 0x04, 0xd7, 0x02, 0xe9, 0x67, 0x0b, }; static const unsigned char ecdsa_secp384r1_sha384_11529_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11529_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xaa, 0xe7, 0x67, 0x01, 0xac, 0xc1, 0x95, 0x08, 0x94, 0xa8, 0x9e, 0x06, 0x87, 0x72, 0xd8, 0xb2, 0x81, 0xee, 0xf1, 0x36, 0xf8, 0xa8, 0xfe, 0xf5, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11529 = { .name = "ecdsa_secp384r1_sha384_11529", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11529_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11529_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11529_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 774 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11530 for ECDSA, tcId is 775 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11530_pubkey[] = { 0xfa, 0x92, 0x53, 0x8c, 0xdc, 0x74, 0x03, 0x68, 0xca, 0xf1, 0x64, 0x80, 0xff, 0x13, 0x04, 0xce, 0xbb, 0xbe, 0x59, 0xa4, 0x6a, 0x7a, 0x84, 0x60, 0x37, 0x26, 0xb9, 0x59, 0x2d, 0x10, 0x5b, 0xe0, 0x69, 0xdf, 0x1c, 0x61, 0xb5, 0x97, 0x4f, 0x27, 0xe7, 0x55, 0x2f, 0x79, 0x7d, 0xe9, 0x7c, 0xdb, 0x62, 0x0e, 0x03, 0xa4, 0x6d, 0xa8, 0x62, 0xe4, 0xb0, 0x89, 0xba, 0xfb, 0xb8, 0x0d, 0xf8, 0xf0, 0x55, 0xc8, 0xf4, 0x79, 0x91, 0xb3, 0xa3, 0xdd, 0xb2, 0xb0, 0x89, 0xae, 0xdb, 0x2f, 0x15, 0x84, 0x1a, 0x6a, 0x5b, 0x5e, 0x14, 0xc1, 0xdc, 0x36, 0xb3, 0xc1, 0x55, 0xc4, 0xf7, 0x4d, 0x34, 0x09, }; static const unsigned char ecdsa_secp384r1_sha384_11530_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11530_sig[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xe7, 0x54, 0xd5, 0xc4, 0x53, 0xd9, 0x38, 0x4e, 0xcc, 0xe1, 0xda, 0xa3, 0x81, 0x35, 0xa4, 0x8a, 0x0a, 0x96, 0xc2, 0x4e, 0xfc, 0x2a, 0x76, 0xd0, 0x0b, 0xde, 0x1d, 0x7a, 0xee, 0xdf, 0x7f, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11530 = { .name = "ecdsa_secp384r1_sha384_11530", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11530_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11530_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11530_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 775 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11531 for ECDSA, tcId is 776 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11531_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_11531_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11531_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11531 = { .name = "ecdsa_secp384r1_sha384_11531", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11531_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11531_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11531_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 776 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11532 for ECDSA, tcId is 777 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11532_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0x36, 0x17, 0xde, 0x4a, 0x96, 0x26, 0x2c, 0x6f, 0x5d, 0x9e, 0x98, 0xbf, 0x92, 0x92, 0xdc, 0x29, 0xf8, 0xf4, 0x1d, 0xbd, 0x28, 0x9a, 0x14, 0x7c, 0xe9, 0xda, 0x31, 0x13, 0xb5, 0xf0, 0xb8, 0xc0, 0x0a, 0x60, 0xb1, 0xce, 0x1d, 0x7e, 0x81, 0x9d, 0x7a, 0x43, 0x1d, 0x7c, 0x90, 0xea, 0x0e, 0x5f, }; static const unsigned char ecdsa_secp384r1_sha384_11532_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11532_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11532 = { .name = "ecdsa_secp384r1_sha384_11532", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11532_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11532_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11532_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 777 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11533 for ECDSA, tcId is 778 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11533_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_11533_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11533_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11533 = { .name = "ecdsa_secp384r1_sha384_11533", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11533_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11533_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11533_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 778 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11534 for ECDSA, tcId is 779 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11534_pubkey[] = { 0xaa, 0x87, 0xca, 0x22, 0xbe, 0x8b, 0x05, 0x37, 0x8e, 0xb1, 0xc7, 0x1e, 0xf3, 0x20, 0xad, 0x74, 0x6e, 0x1d, 0x3b, 0x62, 0x8b, 0xa7, 0x9b, 0x98, 0x59, 0xf7, 0x41, 0xe0, 0x82, 0x54, 0x2a, 0x38, 0x55, 0x02, 0xf2, 0x5d, 0xbf, 0x55, 0x29, 0x6c, 0x3a, 0x54, 0x5e, 0x38, 0x72, 0x76, 0x0a, 0xb7, 0xc9, 0xe8, 0x21, 0xb5, 0x69, 0xd9, 0xd3, 0x90, 0xa2, 0x61, 0x67, 0x40, 0x6d, 0x6d, 0x23, 0xd6, 0x07, 0x0b, 0xe2, 0x42, 0xd7, 0x65, 0xeb, 0x83, 0x16, 0x25, 0xce, 0xec, 0x4a, 0x0f, 0x47, 0x3e, 0xf5, 0x9f, 0x4e, 0x30, 0xe2, 0x81, 0x7e, 0x62, 0x85, 0xbc, 0xe2, 0x84, 0x6f, 0x15, 0xf1, 0xa0, }; static const unsigned char ecdsa_secp384r1_sha384_11534_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11534_sig[] = { 0x06, 0x4e, 0xd8, 0x0f, 0x27, 0xe1, 0x43, 0x2e, 0x84, 0x84, 0x5f, 0x15, 0xec, 0xe3, 0x99, 0xf2, 0xcb, 0xf4, 0xfa, 0x31, 0xaa, 0x83, 0x7d, 0xe9, 0xb9, 0x53, 0xd4, 0x44, 0x13, 0xb9, 0xf5, 0xc7, 0xc7, 0xf6, 0x79, 0x89, 0xd7, 0x03, 0xf0, 0x7a, 0xbe, 0xf1, 0x1b, 0x6a, 0xd0, 0x37, 0x3e, 0xa5, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x1c, 0x7b, 0xe6, 0x80, 0x47, 0x75, 0x98, 0xd6, 0xc3, 0x71, 0x6f, 0xab, 0xc1, 0x3d, 0xce, 0xc8, 0x6a, 0xfd, 0x28, 0x33, 0xd4, 0x1c, 0x2a, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11534 = { .name = "ecdsa_secp384r1_sha384_11534", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11534_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11534_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11534_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 779 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11535 for ECDSA, tcId is 780 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11535_pubkey[] = { 0x01, 0x1d, 0x2f, 0xc9, 0x94, 0xdf, 0x20, 0x4b, 0x63, 0xf0, 0x5a, 0xe8, 0x42, 0x0c, 0xa3, 0x90, 0x55, 0x9b, 0x80, 0xc4, 0x98, 0x8e, 0xf6, 0x39, 0xb9, 0x5c, 0x46, 0x9e, 0x5c, 0xb2, 0x4c, 0xf2, 0x16, 0x54, 0x0c, 0xbe, 0xbc, 0x47, 0x0b, 0xca, 0xa0, 0x46, 0x66, 0x12, 0xdb, 0xde, 0x6d, 0x03, 0x09, 0x8c, 0x69, 0x96, 0xe0, 0xa0, 0x5f, 0x02, 0x90, 0x21, 0x83, 0xce, 0xba, 0x4b, 0x53, 0x0f, 0x4f, 0x35, 0x00, 0xa9, 0x9e, 0x4c, 0xdc, 0x8a, 0x50, 0xc0, 0xd9, 0x8d, 0x87, 0x09, 0x44, 0xe5, 0x65, 0x48, 0xdc, 0x4c, 0xf6, 0xbb, 0xbf, 0x3d, 0x69, 0x78, 0xef, 0xbc, 0x8f, 0xc8, 0x77, 0x8b, 0x33, 0xe1, 0x32, 0xd2, 0xc1, 0x85, 0xc2, 0x08, 0x44, 0xcf, 0x3d, 0xf3, 0x94, 0xd5, 0x22, 0x25, 0x93, 0x17, 0xe3, 0x93, 0x1f, 0x01, 0x30, 0xf2, 0x3f, 0x65, 0x00, 0xc8, 0x80, 0xf3, 0xa8, 0x31, 0x9a, 0xb4, 0x4a, 0x0e, }; static const unsigned char ecdsa_secp521r1_sha512_11535_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11535_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xae, 0x79, 0x78, 0x7c, 0x40, 0xd0, 0x69, 0x94, 0x80, 0x33, 0xfe, 0xb7, 0x08, 0xf6, 0x5a, 0x2f, 0xc4, 0x4a, 0x36, 0x47, 0x76, 0x63, 0xb8, 0x51, 0x44, 0x90, 0x48, 0xe1, 0x6e, 0xc7, 0x9b, 0xf5, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11535 = { .name = "ecdsa_secp521r1_sha512_11535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11535_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11535_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11535_sig, .siglen = 132, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 780 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11536 for ECDSA, tcId is 781 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11536_pubkey[] = { 0x01, 0x1d, 0x2f, 0xc9, 0x94, 0xdf, 0x20, 0x4b, 0x63, 0xf0, 0x5a, 0xe8, 0x42, 0x0c, 0xa3, 0x90, 0x55, 0x9b, 0x80, 0xc4, 0x98, 0x8e, 0xf6, 0x39, 0xb9, 0x5c, 0x46, 0x9e, 0x5c, 0xb2, 0x4c, 0xf2, 0x16, 0x54, 0x0c, 0xbe, 0xbc, 0x47, 0x0b, 0xca, 0xa0, 0x46, 0x66, 0x12, 0xdb, 0xde, 0x6d, 0x03, 0x09, 0x8c, 0x69, 0x96, 0xe0, 0xa0, 0x5f, 0x02, 0x90, 0x21, 0x83, 0xce, 0xba, 0x4b, 0x53, 0x0f, 0x4f, 0x35, 0x00, 0xa9, 0x9e, 0x4c, 0xdc, 0x8a, 0x50, 0xc0, 0xd9, 0x8d, 0x87, 0x09, 0x44, 0xe5, 0x65, 0x48, 0xdc, 0x4c, 0xf6, 0xbb, 0xbf, 0x3d, 0x69, 0x78, 0xef, 0xbc, 0x8f, 0xc8, 0x77, 0x8b, 0x33, 0xe1, 0x32, 0xd2, 0xc1, 0x85, 0xc2, 0x08, 0x44, 0xcf, 0x3d, 0xf3, 0x94, 0xd5, 0x22, 0x25, 0x93, 0x17, 0xe3, 0x93, 0x1f, 0x01, 0x30, 0xf2, 0x3f, 0x65, 0x00, 0xc8, 0x80, 0xf3, 0xa8, 0x31, 0x9a, 0xb4, 0x4a, 0x0e, }; static const unsigned char ecdsa_secp521r1_sha512_11536_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11536_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11536 = { .name = "ecdsa_secp521r1_sha512_11536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11536_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11536_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11536_sig, .siglen = 132, .result = -1, .comment = "r too large, tcId is 781 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11537 for ECDSA, tcId is 782 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11537_pubkey[] = { 0x01, 0x9a, 0x02, 0x9c, 0x77, 0xfe, 0xd0, 0x4c, 0xab, 0x1a, 0xb8, 0x93, 0x7f, 0xda, 0x81, 0x28, 0xfc, 0x19, 0xbf, 0x8c, 0x41, 0xa8, 0xf2, 0x42, 0xf6, 0xa9, 0xca, 0x6f, 0x0a, 0xe8, 0x13, 0xc1, 0x70, 0x9b, 0x8b, 0x03, 0xe2, 0x6a, 0x92, 0x98, 0xfe, 0x59, 0xf9, 0x9e, 0x37, 0x06, 0xff, 0xc2, 0x8c, 0x43, 0xd2, 0x6a, 0x11, 0x69, 0x0d, 0x2f, 0xfd, 0x81, 0x5a, 0x33, 0xea, 0x32, 0x90, 0x76, 0x69, 0x78, 0x00, 0x12, 0x5b, 0x2a, 0x4b, 0x63, 0x5f, 0x51, 0x4f, 0xd5, 0xd6, 0x32, 0x15, 0x67, 0x2f, 0x31, 0x1a, 0xe5, 0x93, 0x5c, 0x17, 0x74, 0xed, 0x5d, 0x8a, 0x44, 0x89, 0x7b, 0x68, 0x19, 0x1e, 0x63, 0x69, 0xab, 0x26, 0xdf, 0x91, 0x5e, 0x20, 0x66, 0xa9, 0x43, 0xe5, 0x9a, 0x35, 0x77, 0x31, 0x9d, 0xac, 0x5a, 0x86, 0x64, 0x0b, 0xc8, 0xc7, 0x18, 0xd2, 0xb1, 0x59, 0x47, 0x9f, 0xdd, 0x22, 0xd1, 0x14, 0x41, }; static const unsigned char ecdsa_secp521r1_sha512_11537_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11537_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11537 = { .name = "ecdsa_secp521r1_sha512_11537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11537_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11537_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11537_sig, .siglen = 132, .result = 1, .comment = "r,s are large, tcId is 782 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11538 for ECDSA, tcId is 783 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11538_pubkey[] = { 0x00, 0xeb, 0x62, 0x87, 0x80, 0x40, 0xb4, 0xca, 0x0c, 0x8c, 0x61, 0xaf, 0xe7, 0xe1, 0x95, 0xe2, 0x2e, 0x39, 0x5f, 0x69, 0xc7, 0x85, 0x9a, 0xc2, 0xb7, 0x98, 0x02, 0x96, 0x70, 0x98, 0x32, 0x55, 0x73, 0xb5, 0x6d, 0x3d, 0x65, 0xb7, 0xbc, 0xf3, 0x11, 0x1b, 0xc4, 0x85, 0x9e, 0x1d, 0x08, 0x16, 0xc5, 0x41, 0x47, 0x3a, 0xc1, 0xff, 0xcf, 0x4a, 0x2c, 0xc7, 0xd6, 0xe6, 0xaa, 0x59, 0x1b, 0xa1, 0x17, 0xaf, 0x00, 0x5b, 0xea, 0x26, 0xca, 0xc7, 0xce, 0x21, 0x35, 0x84, 0xb5, 0xd3, 0x5a, 0xb2, 0x2d, 0x8b, 0x45, 0xdc, 0x88, 0xff, 0x26, 0xed, 0xba, 0xdd, 0x48, 0x7a, 0xa9, 0x8c, 0xca, 0xa7, 0x16, 0x13, 0xbb, 0x7b, 0x79, 0xdc, 0xe6, 0x7a, 0x9b, 0xc3, 0x6d, 0x3e, 0x98, 0x0f, 0xc1, 0x0d, 0x43, 0x13, 0xac, 0x20, 0xc4, 0xcf, 0x27, 0x1e, 0xcc, 0x1f, 0x4a, 0xda, 0xb3, 0x95, 0x13, 0x97, 0x1a, 0xa4, 0xfb, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_11538_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11538_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x95, 0xe1, 0x9f, 0xd2, 0xb7, 0x55, 0xd6, 0x03, 0xbf, 0x99, 0x45, 0x62, 0xd9, 0xa1, 0x1f, 0x63, 0xcf, 0x4e, 0xad, 0xec, 0xbd, 0xc0, 0xec, 0xb5, 0xa3, 0x94, 0xe5, 0x45, 0x29, 0xe8, 0xda, 0x58, 0xa5, 0x27, 0xbc, 0x6d, 0x85, 0x72, 0x50, 0x43, 0x78, 0x63, 0x62, 0xab, 0x4d, 0xe6, 0xcb, 0xc7, 0xd8, 0x0e, 0x62, 0x5a, 0xe0, 0xa9, 0x88, 0x61, 0xae, 0xa1, 0xc7, 0xbf, 0x71, 0x09, 0xc9, 0x1f, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11538 = { .name = "ecdsa_secp521r1_sha512_11538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11538_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11538_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11538_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 783 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11539 for ECDSA, tcId is 784 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11539_pubkey[] = { 0x01, 0x29, 0x6b, 0x04, 0x9f, 0x19, 0x79, 0x78, 0x5b, 0x33, 0x77, 0xc5, 0xe2, 0x8e, 0xdf, 0x4c, 0x27, 0x87, 0xf2, 0x13, 0xf2, 0x83, 0x6b, 0xea, 0xf5, 0xd6, 0x14, 0x07, 0x87, 0x0a, 0xde, 0x85, 0x7d, 0x50, 0x83, 0xe0, 0x1d, 0x87, 0x28, 0xb0, 0xdd, 0xde, 0x1b, 0xa1, 0xbb, 0x3e, 0x79, 0x16, 0x17, 0xed, 0xdb, 0x02, 0xa5, 0x2c, 0x78, 0x04, 0x97, 0x91, 0xca, 0x52, 0xb6, 0x46, 0xf9, 0x31, 0x17, 0xc2, 0x00, 0xb9, 0x77, 0xa7, 0x11, 0xa5, 0x03, 0x0c, 0x4e, 0xf6, 0x99, 0x08, 0x33, 0x29, 0x61, 0x32, 0x20, 0x3b, 0xad, 0xbd, 0xbc, 0x01, 0x40, 0x7c, 0x4a, 0xce, 0xb4, 0x9c, 0x96, 0xb6, 0x58, 0xfc, 0x77, 0xff, 0x1f, 0x65, 0x5a, 0xd7, 0x4e, 0x13, 0x44, 0xe2, 0xfc, 0x55, 0xc9, 0x1c, 0x7f, 0xc3, 0x43, 0x23, 0x55, 0x19, 0x2d, 0xb3, 0xd2, 0xc0, 0x3c, 0xd1, 0x34, 0xba, 0x38, 0x7a, 0xd3, 0xac, 0xde, 0x40, }; static const unsigned char ecdsa_secp521r1_sha512_11539_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11539_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x15, 0x83, 0x76, 0x45, 0x58, 0x3a, 0x37, 0xa7, 0xa6, 0x65, 0xf9, 0x83, 0xc5, 0xe3, 0x47, 0xf6, 0x5d, 0xca, 0x47, 0x64, 0x7a, 0xa8, 0x0f, 0xd2, 0x49, 0x8a, 0x79, 0x1d, 0x44, 0xd9, 0xb2, 0x85, 0x0a, 0x15, 0x1a, 0x6e, 0x86, 0xfc, 0xe7, 0xd7, 0xbb, 0x81, 0x4e, 0x72, 0x4f, 0xf1, 0x1b, 0x9e, 0xf7, 0x26, 0xbf, 0x36, 0xc6, 0xe7, 0x54, 0x8c, 0x37, 0xf8, 0x2a, 0x24, 0x90, 0x28, 0x76, 0xee, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11539 = { .name = "ecdsa_secp521r1_sha512_11539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11539_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11539_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11539_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 784 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11540 for ECDSA, tcId is 785 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11540_pubkey[] = { 0x00, 0x5f, 0x50, 0x59, 0x30, 0x83, 0x49, 0xf9, 0xeb, 0xbb, 0x4d, 0x1c, 0x55, 0xc0, 0xaf, 0xcc, 0xf6, 0x21, 0x62, 0xec, 0x1d, 0xd1, 0x2e, 0xf3, 0xed, 0x90, 0x66, 0x56, 0x92, 0x4f, 0xfd, 0x99, 0xca, 0xb9, 0xf0, 0x6b, 0x0e, 0xb2, 0x18, 0xcf, 0xf0, 0x78, 0xa4, 0x67, 0x7a, 0x5c, 0xe1, 0xcc, 0x07, 0x65, 0x2b, 0xc9, 0x76, 0xae, 0xfc, 0x73, 0x2c, 0x28, 0xf6, 0x7e, 0xf0, 0x78, 0xa4, 0x34, 0xe9, 0x99, 0x00, 0xa5, 0xd1, 0x4d, 0xf3, 0x10, 0x63, 0x0d, 0x76, 0xec, 0x03, 0xcb, 0x6f, 0x9b, 0x95, 0xbf, 0x1a, 0x22, 0x43, 0x81, 0x05, 0xc8, 0x8c, 0xd9, 0xfd, 0x3d, 0xac, 0x80, 0xf8, 0x57, 0xad, 0xd3, 0x82, 0x71, 0xd8, 0xba, 0x90, 0x16, 0x84, 0xb2, 0x6d, 0x43, 0x6d, 0x4a, 0x85, 0x9a, 0xd4, 0xcd, 0xa5, 0xe9, 0x67, 0x7b, 0x73, 0xca, 0xb3, 0xf3, 0xe5, 0xe4, 0x1a, 0x3d, 0x79, 0x96, 0x60, 0x72, 0x79, 0xab, }; static const unsigned char ecdsa_secp521r1_sha512_11540_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11540_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11540 = { .name = "ecdsa_secp521r1_sha512_11540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11540_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11540_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11540_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 785 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11541 for ECDSA, tcId is 786 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11541_pubkey[] = { 0x00, 0x1f, 0xb7, 0x06, 0x42, 0x74, 0xba, 0x3b, 0x59, 0x50, 0xf0, 0x0a, 0x02, 0x7c, 0xb2, 0xcf, 0x42, 0xd1, 0xed, 0x69, 0xc8, 0x9d, 0x94, 0x4d, 0xa0, 0x41, 0x5e, 0x90, 0x86, 0xf3, 0x5c, 0x85, 0xb4, 0x4a, 0xfd, 0xd6, 0x35, 0xcd, 0xc1, 0xfa, 0xde, 0x2c, 0xe7, 0x1e, 0x62, 0x48, 0x5e, 0x24, 0x3c, 0xeb, 0x9f, 0x07, 0x5a, 0x11, 0x14, 0x76, 0x30, 0x2e, 0x60, 0xd7, 0xd7, 0x8b, 0x12, 0x07, 0xcd, 0xa7, 0x00, 0x6b, 0x42, 0x52, 0x07, 0x71, 0x72, 0x33, 0x20, 0x59, 0xa9, 0xc6, 0x0f, 0x96, 0x68, 0x93, 0xfd, 0xa7, 0xe7, 0x33, 0x77, 0xde, 0xbc, 0xba, 0x9a, 0x8f, 0x69, 0xce, 0xe8, 0xf5, 0x9d, 0x67, 0xa2, 0xca, 0x89, 0x2f, 0xad, 0x1d, 0xf4, 0x46, 0x31, 0x61, 0xf1, 0x57, 0xc7, 0xc1, 0x17, 0xc1, 0xbb, 0xfd, 0xdc, 0x88, 0x44, 0x1c, 0x4c, 0x8a, 0xbc, 0x63, 0x66, 0x7b, 0xe5, 0xc1, 0xff, 0x22, 0xf6, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha512_11541_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11541_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11541 = { .name = "ecdsa_secp521r1_sha512_11541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11541_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11541_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11541_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 786 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11542 for ECDSA, tcId is 787 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11542_pubkey[] = { 0x01, 0x87, 0x7d, 0x42, 0xc1, 0x10, 0xa9, 0xfb, 0xe3, 0x72, 0x3e, 0x68, 0x4e, 0xa0, 0x1c, 0x55, 0x26, 0x97, 0xa8, 0xe8, 0x36, 0x78, 0x14, 0x5c, 0xba, 0xdc, 0x2e, 0x27, 0xc3, 0x3e, 0x76, 0xef, 0x2e, 0xd8, 0x85, 0xe7, 0xaf, 0x77, 0xf8, 0x33, 0x13, 0x21, 0x3b, 0x04, 0x10, 0x7b, 0x4b, 0x92, 0xf8, 0x0a, 0xeb, 0xfd, 0x67, 0x0f, 0xd1, 0x46, 0x7b, 0x2b, 0xb9, 0x33, 0x3a, 0xc2, 0x80, 0xea, 0x9b, 0x61, 0x01, 0xac, 0xf4, 0xe8, 0x5a, 0x0c, 0xcb, 0xdf, 0xc4, 0x70, 0x36, 0x38, 0xc2, 0x1e, 0xb4, 0x5b, 0x4a, 0x93, 0xdb, 0x3f, 0xa7, 0x47, 0xb3, 0x65, 0x23, 0x85, 0x35, 0xcd, 0xae, 0xe4, 0xfc, 0x56, 0xaa, 0x95, 0x85, 0x4b, 0x4e, 0xc9, 0xc4, 0x51, 0x69, 0x3a, 0xaf, 0x72, 0xa9, 0x0d, 0x66, 0xd3, 0x00, 0xd2, 0x21, 0x1b, 0xdc, 0x1f, 0xa0, 0xcf, 0x85, 0xe5, 0xc2, 0x4a, 0xe0, 0x8e, 0xf2, 0xa2, 0x42, 0x48, }; static const unsigned char ecdsa_secp521r1_sha512_11542_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11542_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11542 = { .name = "ecdsa_secp521r1_sha512_11542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11542_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11542_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11542_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 787 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11543 for ECDSA, tcId is 788 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11543_pubkey[] = { 0x01, 0x87, 0x7d, 0x42, 0xc1, 0x10, 0xa9, 0xfb, 0xe3, 0x72, 0x3e, 0x68, 0x4e, 0xa0, 0x1c, 0x55, 0x26, 0x97, 0xa8, 0xe8, 0x36, 0x78, 0x14, 0x5c, 0xba, 0xdc, 0x2e, 0x27, 0xc3, 0x3e, 0x76, 0xef, 0x2e, 0xd8, 0x85, 0xe7, 0xaf, 0x77, 0xf8, 0x33, 0x13, 0x21, 0x3b, 0x04, 0x10, 0x7b, 0x4b, 0x92, 0xf8, 0x0a, 0xeb, 0xfd, 0x67, 0x0f, 0xd1, 0x46, 0x7b, 0x2b, 0xb9, 0x33, 0x3a, 0xc2, 0x80, 0xea, 0x9b, 0x61, 0x01, 0xac, 0xf4, 0xe8, 0x5a, 0x0c, 0xcb, 0xdf, 0xc4, 0x70, 0x36, 0x38, 0xc2, 0x1e, 0xb4, 0x5b, 0x4a, 0x93, 0xdb, 0x3f, 0xa7, 0x47, 0xb3, 0x65, 0x23, 0x85, 0x35, 0xcd, 0xae, 0xe4, 0xfc, 0x56, 0xaa, 0x95, 0x85, 0x4b, 0x4e, 0xc9, 0xc4, 0x51, 0x69, 0x3a, 0xaf, 0x72, 0xa9, 0x0d, 0x66, 0xd3, 0x00, 0xd2, 0x21, 0x1b, 0xdc, 0x1f, 0xa0, 0xcf, 0x85, 0xe5, 0xc2, 0x4a, 0xe0, 0x8e, 0xf2, 0xa2, 0x42, 0x48, }; static const unsigned char ecdsa_secp521r1_sha512_11543_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11543_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11543 = { .name = "ecdsa_secp521r1_sha512_11543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11543_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11543_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11543_sig, .siglen = 132, .result = -1, .comment = "r is larger than n, tcId is 788 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11544 for ECDSA, tcId is 789 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11544_pubkey[] = { 0x01, 0x6e, 0xaf, 0x2c, 0x30, 0x43, 0xb1, 0x0a, 0xd8, 0xa9, 0x9b, 0xe7, 0xf8, 0xcc, 0xc4, 0x93, 0x15, 0x19, 0xb6, 0xec, 0x59, 0x32, 0x6f, 0x6a, 0x06, 0xf3, 0x74, 0xcb, 0x4f, 0x86, 0xe1, 0x23, 0x7d, 0xf0, 0xf2, 0x6d, 0xf6, 0xa9, 0x0c, 0xf8, 0x6c, 0x30, 0xd4, 0x2e, 0x3b, 0xd0, 0x58, 0x3c, 0x74, 0x48, 0x30, 0xde, 0xcf, 0x78, 0x34, 0x45, 0x45, 0xf4, 0xb6, 0xda, 0xea, 0x67, 0x4a, 0x88, 0x2d, 0xb9, 0x00, 0x6d, 0xfd, 0x09, 0x32, 0x0a, 0x97, 0x6d, 0x59, 0x2c, 0x4d, 0x39, 0xd3, 0x09, 0x0d, 0x6f, 0x4a, 0xd3, 0x99, 0x2b, 0x70, 0x0e, 0x3e, 0x90, 0xed, 0x1a, 0x13, 0x46, 0x23, 0x8c, 0x75, 0xf4, 0xba, 0xf4, 0x93, 0xbe, 0x8c, 0x1c, 0x16, 0x83, 0x8e, 0xce, 0xc2, 0xd9, 0x99, 0x42, 0x66, 0x04, 0x2f, 0xf9, 0xc6, 0x24, 0x86, 0x92, 0x96, 0xee, 0x9b, 0x02, 0x3b, 0xbb, 0x12, 0xd4, 0x0b, 0xc0, 0xaf, 0x07, }; static const unsigned char ecdsa_secp521r1_sha512_11544_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11544_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x4b, 0x3a, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11544 = { .name = "ecdsa_secp521r1_sha512_11544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11544_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11544_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11544_sig, .siglen = 132, .result = -1, .comment = "s is larger than n, tcId is 789 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11545 for ECDSA, tcId is 790 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11545_pubkey[] = { 0x01, 0x8b, 0x70, 0xdf, 0x39, 0x6a, 0x6b, 0xd8, 0x41, 0x8d, 0xe6, 0xa1, 0xf7, 0xe8, 0x0f, 0x91, 0x5b, 0xcc, 0x07, 0x91, 0x29, 0xcd, 0xcb, 0x4a, 0x1c, 0x76, 0xb0, 0xe1, 0xd2, 0x57, 0x69, 0x10, 0xf1, 0xae, 0x16, 0xf3, 0xc2, 0x76, 0x71, 0x8c, 0x84, 0x1c, 0x03, 0xe1, 0x8c, 0xe2, 0x43, 0xeb, 0xae, 0x5a, 0xa6, 0x18, 0xf0, 0x9c, 0xdd, 0xf4, 0x70, 0x34, 0x12, 0x24, 0xa5, 0x01, 0x6f, 0x6f, 0x04, 0xe8, 0x01, 0x7a, 0xd3, 0xc6, 0x10, 0x2b, 0x28, 0x21, 0x20, 0x0d, 0x37, 0x3c, 0xff, 0xd5, 0x61, 0x4a, 0x67, 0x0b, 0xeb, 0xdc, 0xe6, 0xf2, 0x44, 0xb3, 0x4d, 0xce, 0x87, 0xdd, 0x87, 0x58, 0x78, 0x6b, 0x7a, 0x28, 0x29, 0xcd, 0x53, 0xe5, 0x93, 0x25, 0xdc, 0xeb, 0xe9, 0x4b, 0x56, 0x40, 0xb9, 0xd1, 0xca, 0x77, 0x5c, 0x52, 0x71, 0x6a, 0x59, 0x6d, 0x9e, 0x3a, 0x08, 0x40, 0xff, 0xdb, 0xd6, 0x4b, 0xf2, 0x47, }; static const unsigned char ecdsa_secp521r1_sha512_11545_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11545_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xf8, 0x7b, 0x4d, 0xe1, 0xfc, 0x92, 0xdd, 0x75, 0x76, 0x39, 0x40, 0x8a, 0x50, 0xbe, 0xe1, 0x07, 0x64, 0xe3, 0x26, 0xfd, 0xd2, 0xfa, 0x30, 0x8d, 0xfd, 0xe3, 0xe5, 0x24, 0x3f, 0xdf, 0x4a, 0xc5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11545 = { .name = "ecdsa_secp521r1_sha512_11545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11545_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11545_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11545_sig, .siglen = 132, .result = 1, .comment = "small r and s^-1, tcId is 790 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11546 for ECDSA, tcId is 791 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11546_pubkey[] = { 0x00, 0x13, 0x33, 0x79, 0x88, 0x64, 0x45, 0x88, 0x08, 0xfd, 0x6b, 0x10, 0xa6, 0xc8, 0x25, 0x17, 0x40, 0xda, 0x6d, 0x62, 0x34, 0x40, 0xcd, 0xf1, 0xe3, 0x59, 0x6e, 0x83, 0x12, 0xb5, 0x8f, 0x23, 0x69, 0x2d, 0x6a, 0x02, 0x10, 0xd1, 0x68, 0x2c, 0x06, 0xa4, 0x76, 0xf4, 0x47, 0x03, 0x4d, 0x7a, 0x34, 0x69, 0x76, 0xd0, 0xc2, 0xce, 0x1a, 0x58, 0x3f, 0x96, 0xf7, 0x9a, 0x53, 0x56, 0xb9, 0xa0, 0x80, 0xb9, 0x00, 0x64, 0x3d, 0x23, 0xb5, 0x21, 0x29, 0x2f, 0xa9, 0x69, 0x66, 0xb7, 0xf7, 0x33, 0xcf, 0x20, 0x8b, 0x6b, 0xe7, 0x56, 0x47, 0xdf, 0x86, 0xe2, 0xe2, 0xcc, 0xda, 0x40, 0xab, 0x33, 0x60, 0xab, 0x1d, 0x63, 0x1e, 0xf1, 0x3f, 0xe6, 0x6e, 0xb3, 0xe0, 0x8f, 0xae, 0xa1, 0x94, 0x45, 0xb6, 0xf9, 0x3e, 0x83, 0x23, 0xe1, 0x7d, 0xe2, 0x90, 0x93, 0x1f, 0xad, 0xbe, 0x2b, 0x6a, 0x7d, 0x2c, 0xdf, 0x33, 0xd7, }; static const unsigned char ecdsa_secp521r1_sha512_11546_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11546_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0x01, 0x00, 0x50, 0x8d, 0x07, 0x34, 0x13, 0xde, 0x82, 0x92, 0x75, 0xe7, 0x65, 0x09, 0xfd, 0x81, 0xcf, 0xf4, 0x9a, 0xdf, 0x4c, 0x80, 0xed, 0x2d, 0xdd, 0x4a, 0x79, 0x37, 0xd1, 0xd9, 0x18, 0x79, 0x68, 0x78, 0xfe, 0xc2, 0x4c, 0xc4, 0x65, 0x70, 0x98, 0x2c, 0x3f, 0xb8, 0xf5, 0xe9, 0x2c, 0xcd, 0xcb, 0x3e, 0x67, 0x7f, 0x07, 0xe9, 0xbd, 0x0d, 0xb0, 0xb8, 0x48, 0x14, 0xbe, 0x1c, 0x79, 0x49, 0xb0, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11546 = { .name = "ecdsa_secp521r1_sha512_11546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11546_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11546_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11546_sig, .siglen = 132, .result = 1, .comment = "smallish r and s^-1, tcId is 791 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11547 for ECDSA, tcId is 792 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11547_pubkey[] = { 0x01, 0x53, 0xfa, 0x0b, 0xe1, 0xf9, 0xd1, 0x99, 0xba, 0x62, 0xb1, 0xea, 0x70, 0x48, 0x93, 0xe9, 0xb3, 0x4b, 0x4d, 0x91, 0xe3, 0x8f, 0x16, 0xae, 0x8c, 0x43, 0xcf, 0x3b, 0xa9, 0xe3, 0xb7, 0xb0, 0x9b, 0x1f, 0x93, 0xcf, 0x87, 0x65, 0x53, 0x63, 0xae, 0xfe, 0x93, 0x96, 0x34, 0x8a, 0xaf, 0xb7, 0x1a, 0xef, 0xc1, 0x56, 0x78, 0x90, 0x50, 0xdf, 0x46, 0xf8, 0x40, 0x3b, 0x04, 0x6e, 0x1a, 0x90, 0x6a, 0xaf, 0x01, 0xc2, 0xc4, 0x1a, 0x7f, 0xa0, 0x0d, 0x0f, 0x7a, 0xea, 0xec, 0xa1, 0x56, 0x4d, 0xab, 0xe8, 0x70, 0xc9, 0x09, 0x71, 0x82, 0x55, 0x1b, 0x1c, 0xef, 0xeb, 0xa6, 0xb4, 0x67, 0x3e, 0x55, 0x7a, 0x1b, 0x29, 0x75, 0x87, 0x11, 0x39, 0x43, 0xe2, 0x5c, 0x00, 0xc2, 0x1a, 0x54, 0xf4, 0x5f, 0x28, 0x0e, 0x0f, 0xbc, 0x51, 0x16, 0x64, 0x93, 0x35, 0x67, 0xf7, 0x9c, 0xbd, 0x0e, 0x9e, 0x2a, 0x5a, 0xda, 0x75, }; static const unsigned char ecdsa_secp521r1_sha512_11547_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11547_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x01, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x39, 0x3f, 0x63, 0x2a, 0xff, 0xd3, 0xea, 0xa3, 0xc8, 0xfb, 0x64, 0x50, 0x7b, 0xd5, 0x99, 0x64, 0x97, 0xbd, 0x58, 0x8f, 0xb9, 0xe3, 0x94, 0x7c, 0x09, 0x7c, 0xed, 0x75, 0x46, 0xb5, 0x7c, 0x89, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11547 = { .name = "ecdsa_secp521r1_sha512_11547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11547_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11547_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11547_sig, .siglen = 132, .result = 1, .comment = "100-bit r and small s^-1, tcId is 792 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11548 for ECDSA, tcId is 793 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11548_pubkey[] = { 0x01, 0x52, 0x30, 0x45, 0x99, 0xba, 0x21, 0xfc, 0xf9, 0xef, 0x24, 0x7b, 0x99, 0xdf, 0x12, 0xad, 0xa7, 0x14, 0xc9, 0x06, 0x73, 0xf3, 0x17, 0x00, 0xa7, 0x14, 0xbc, 0xca, 0xa6, 0x47, 0xf6, 0x30, 0x80, 0x89, 0xa4, 0x38, 0xd9, 0x5a, 0x46, 0x20, 0x64, 0x62, 0x4b, 0x8c, 0x16, 0xd4, 0x2d, 0x66, 0x0f, 0x3c, 0x16, 0xa2, 0x7a, 0x82, 0x3d, 0xf1, 0xdd, 0x03, 0x98, 0x89, 0x90, 0x28, 0xef, 0x8b, 0xe6, 0xc0, 0x00, 0xe2, 0xe6, 0x1a, 0x27, 0xe8, 0xfb, 0xf0, 0xb0, 0xaf, 0xb1, 0xc3, 0x94, 0x8e, 0x8b, 0x89, 0x37, 0x5b, 0x6e, 0x5e, 0xcb, 0x5d, 0xdd, 0x46, 0xe1, 0xd2, 0xc2, 0xa1, 0x96, 0xba, 0xae, 0x1e, 0xf8, 0xd6, 0x8e, 0x4f, 0x0a, 0x92, 0x4a, 0x9b, 0x6b, 0xf8, 0x5e, 0x50, 0xfc, 0xcf, 0x71, 0x9d, 0xb6, 0x10, 0xaa, 0x00, 0x4f, 0xaf, 0xce, 0xf8, 0x3d, 0x99, 0x6c, 0xd1, 0xef, 0xcb, 0xd0, 0x08, 0x28, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_11548_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11548_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11548 = { .name = "ecdsa_secp521r1_sha512_11548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11548_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11548_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11548_sig, .siglen = 132, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 793 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11549 for ECDSA, tcId is 794 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11549_pubkey[] = { 0x00, 0xd0, 0x3a, 0xcc, 0xee, 0xdd, 0xb7, 0xd8, 0xf6, 0x00, 0x41, 0x20, 0x5d, 0xef, 0x82, 0xe0, 0x9e, 0x64, 0xbc, 0x59, 0x81, 0x1c, 0xf6, 0x50, 0x2d, 0xea, 0x8f, 0x72, 0xa9, 0xa8, 0xe7, 0xdd, 0x3c, 0x6a, 0xb0, 0x3e, 0x3e, 0x6d, 0x4d, 0x13, 0x1b, 0x68, 0x85, 0x7d, 0x0a, 0xe9, 0x6f, 0xd4, 0xb5, 0x9d, 0x4f, 0xac, 0x82, 0x0b, 0x10, 0x64, 0x8f, 0xb2, 0x82, 0xdf, 0x94, 0xe5, 0xd2, 0x9c, 0x62, 0xd3, 0x01, 0x0b, 0x01, 0xc8, 0x53, 0x0a, 0x08, 0x9b, 0x07, 0xb1, 0xb2, 0xa3, 0x4f, 0xda, 0x9d, 0xfe, 0x97, 0x12, 0x3b, 0x1c, 0x0e, 0xf9, 0x7c, 0x7c, 0x9e, 0xb6, 0x4f, 0x44, 0xa6, 0xc1, 0xac, 0xf2, 0x10, 0x11, 0x57, 0xd8, 0x59, 0x6a, 0x9b, 0xdb, 0xdb, 0x54, 0xad, 0x79, 0xb3, 0xb4, 0xa3, 0x6d, 0xd0, 0x67, 0x64, 0xca, 0xb0, 0x24, 0x75, 0x1c, 0x3f, 0x84, 0xcd, 0x0a, 0x3c, 0xd7, 0x14, 0xd7, 0xe4, 0x9c, }; static const unsigned char ecdsa_secp521r1_sha512_11549_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11549_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11549 = { .name = "ecdsa_secp521r1_sha512_11549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11549_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11549_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11549_sig, .siglen = 132, .result = 1, .comment = "100-bit r and s^-1, tcId is 794 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11550 for ECDSA, tcId is 795 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11550_pubkey[] = { 0x01, 0xd9, 0x29, 0xba, 0xb6, 0x10, 0x5b, 0xed, 0xc9, 0xc5, 0xf1, 0x85, 0x4c, 0xe3, 0x64, 0x74, 0x22, 0x48, 0x4e, 0x93, 0x3a, 0x47, 0x2c, 0x82, 0x2f, 0x3f, 0xc8, 0x8c, 0x76, 0x84, 0x54, 0x03, 0x9a, 0xa0, 0xdc, 0x1e, 0xc4, 0xf7, 0x52, 0x15, 0x7d, 0x46, 0x02, 0x5e, 0xad, 0x07, 0x22, 0xb3, 0xcb, 0x86, 0xf6, 0x82, 0x33, 0x3e, 0x88, 0xed, 0xe6, 0xbd, 0x2f, 0x74, 0x87, 0x08, 0x48, 0x73, 0xad, 0x46, 0x00, 0x58, 0x88, 0x24, 0x33, 0x60, 0xb0, 0x8b, 0xa6, 0x23, 0x8d, 0x7c, 0x82, 0xd7, 0x49, 0x20, 0xfb, 0x7c, 0x8d, 0x5c, 0xca, 0xf9, 0x2b, 0x2c, 0x47, 0x88, 0x2e, 0x73, 0x0e, 0x6a, 0x68, 0xa5, 0x62, 0x47, 0x4d, 0x3c, 0x4c, 0xd9, 0xcd, 0x13, 0x03, 0x57, 0x4c, 0x29, 0x0a, 0xed, 0xda, 0xc2, 0x13, 0xcc, 0x83, 0x1b, 0x6e, 0x71, 0x0c, 0x9c, 0xd1, 0x36, 0x89, 0x2c, 0xac, 0xc7, 0xac, 0x8e, 0x2e, 0x9a, }; static const unsigned char ecdsa_secp521r1_sha512_11550_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11550_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x8a, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11550 = { .name = "ecdsa_secp521r1_sha512_11550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11550_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11550_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11550_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 are close to n, tcId is 795 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11551 for ECDSA, tcId is 796 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11551_pubkey[] = { 0x01, 0x7b, 0xfe, 0x3a, 0xda, 0x4a, 0x1a, 0x06, 0xe7, 0x32, 0xf4, 0x84, 0xf1, 0x83, 0x0d, 0x0c, 0x0b, 0x71, 0xc4, 0x7b, 0x74, 0xfa, 0x50, 0x6d, 0xe3, 0xab, 0xde, 0xa6, 0xd1, 0x39, 0xab, 0x21, 0xdd, 0x72, 0xc7, 0xb1, 0xc1, 0x30, 0x35, 0xf0, 0xff, 0xd1, 0x25, 0x43, 0x3d, 0x01, 0x00, 0xa7, 0x03, 0x03, 0x37, 0xb9, 0x9d, 0xd1, 0x62, 0x6b, 0x91, 0xca, 0x57, 0x23, 0x33, 0x58, 0x53, 0xa0, 0xf6, 0x7f, 0x00, 0x7d, 0x28, 0x44, 0x7c, 0x2f, 0xc4, 0xc2, 0x9f, 0xc7, 0x4a, 0x83, 0x8e, 0x30, 0xea, 0xe3, 0x99, 0xe2, 0x82, 0xb6, 0x07, 0xff, 0xf0, 0x61, 0xa2, 0x7b, 0x0d, 0x69, 0x32, 0x1c, 0xcc, 0x3c, 0xeb, 0x0f, 0xc3, 0xae, 0x86, 0xa5, 0x8c, 0x77, 0x40, 0x28, 0xda, 0xfd, 0x10, 0x8b, 0xd8, 0x74, 0xb8, 0xc4, 0x4f, 0x34, 0xf5, 0xab, 0x9d, 0x2e, 0x31, 0xca, 0x77, 0xd2, 0xaa, 0xb3, 0xcc, 0x5e, 0xac, 0xdb, }; static const unsigned char ecdsa_secp521r1_sha512_11551_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11551_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11551 = { .name = "ecdsa_secp521r1_sha512_11551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11551_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11551_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11551_sig, .siglen = 132, .result = 1, .comment = "s == 1, tcId is 796 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11552 for ECDSA, tcId is 797 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11552_pubkey[] = { 0x01, 0x7b, 0xfe, 0x3a, 0xda, 0x4a, 0x1a, 0x06, 0xe7, 0x32, 0xf4, 0x84, 0xf1, 0x83, 0x0d, 0x0c, 0x0b, 0x71, 0xc4, 0x7b, 0x74, 0xfa, 0x50, 0x6d, 0xe3, 0xab, 0xde, 0xa6, 0xd1, 0x39, 0xab, 0x21, 0xdd, 0x72, 0xc7, 0xb1, 0xc1, 0x30, 0x35, 0xf0, 0xff, 0xd1, 0x25, 0x43, 0x3d, 0x01, 0x00, 0xa7, 0x03, 0x03, 0x37, 0xb9, 0x9d, 0xd1, 0x62, 0x6b, 0x91, 0xca, 0x57, 0x23, 0x33, 0x58, 0x53, 0xa0, 0xf6, 0x7f, 0x00, 0x7d, 0x28, 0x44, 0x7c, 0x2f, 0xc4, 0xc2, 0x9f, 0xc7, 0x4a, 0x83, 0x8e, 0x30, 0xea, 0xe3, 0x99, 0xe2, 0x82, 0xb6, 0x07, 0xff, 0xf0, 0x61, 0xa2, 0x7b, 0x0d, 0x69, 0x32, 0x1c, 0xcc, 0x3c, 0xeb, 0x0f, 0xc3, 0xae, 0x86, 0xa5, 0x8c, 0x77, 0x40, 0x28, 0xda, 0xfd, 0x10, 0x8b, 0xd8, 0x74, 0xb8, 0xc4, 0x4f, 0x34, 0xf5, 0xab, 0x9d, 0x2e, 0x31, 0xca, 0x77, 0xd2, 0xaa, 0xb3, 0xcc, 0x5e, 0xac, 0xdb, }; static const unsigned char ecdsa_secp521r1_sha512_11552_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11552_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11552 = { .name = "ecdsa_secp521r1_sha512_11552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11552_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11552_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11552_sig, .siglen = 132, .result = -1, .comment = "s == 0, tcId is 797 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11553 for ECDSA, tcId is 798 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11553_pubkey[] = { 0x01, 0x3b, 0x73, 0xbe, 0x0e, 0xc4, 0xf1, 0x8b, 0x36, 0xfd, 0xc2, 0x0a, 0xac, 0x96, 0x75, 0x58, 0x0a, 0x20, 0xcc, 0x72, 0x5e, 0xd0, 0xde, 0x6f, 0xea, 0x63, 0xab, 0x61, 0x11, 0xb4, 0xaa, 0xec, 0xc6, 0x9b, 0x1f, 0xdf, 0x05, 0xbb, 0x1c, 0x7a, 0x71, 0xc4, 0xb7, 0xa5, 0xa1, 0xea, 0xaf, 0xf2, 0x3b, 0xe1, 0x56, 0x04, 0xf4, 0x05, 0xb5, 0xec, 0xd3, 0xb3, 0xed, 0x6a, 0xfe, 0xa8, 0xe4, 0x9c, 0xd6, 0x49, 0x00, 0x91, 0x21, 0x80, 0xc9, 0x81, 0xf4, 0x80, 0xd2, 0xb8, 0xb7, 0x43, 0x89, 0x88, 0xb0, 0x3a, 0x0c, 0x5e, 0xfd, 0xbd, 0x2d, 0xa0, 0x94, 0xf0, 0x82, 0xf7, 0xfa, 0x57, 0xec, 0xc4, 0x1f, 0xde, 0x8c, 0x65, 0xd3, 0xc9, 0xd8, 0x0f, 0x34, 0xf9, 0x12, 0x4e, 0x15, 0x1d, 0xa5, 0x5d, 0x96, 0xd2, 0xa9, 0xb9, 0x91, 0x67, 0x2d, 0xe7, 0x94, 0x49, 0xbc, 0xc1, 0xc0, 0x19, 0x2b, 0x76, 0x50, 0xae, 0x90, 0xb7, }; static const unsigned char ecdsa_secp521r1_sha512_11553_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11553_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11553 = { .name = "ecdsa_secp521r1_sha512_11553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11553_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11553_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11553_sig, .siglen = 132, .result = -1, .comment = "point at infinity during verify, tcId is 798 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11554 for ECDSA, tcId is 799 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11554_pubkey[] = { 0x00, 0x43, 0xeb, 0x86, 0x2a, 0x5a, 0x4d, 0xce, 0x6d, 0xe4, 0xb0, 0x90, 0x1b, 0x91, 0xdf, 0x94, 0xfa, 0xb2, 0x78, 0xc3, 0x26, 0xac, 0x34, 0x98, 0xc4, 0x81, 0xae, 0x3f, 0x49, 0xb8, 0x93, 0xab, 0x8b, 0x31, 0xd8, 0x09, 0x72, 0x3c, 0x02, 0xa3, 0xca, 0x51, 0x54, 0xe5, 0xd5, 0xb9, 0xe0, 0xd4, 0x3f, 0xde, 0x8c, 0xbd, 0xfb, 0xb8, 0x09, 0xb7, 0x46, 0x20, 0x86, 0x74, 0x83, 0x81, 0x7d, 0x78, 0x9f, 0xd8, 0x01, 0x7f, 0x47, 0x7e, 0x01, 0x96, 0x8a, 0xc1, 0x29, 0x77, 0xaf, 0xff, 0xc3, 0x93, 0xf5, 0x13, 0x23, 0xce, 0x4d, 0xba, 0x0e, 0xd0, 0xd3, 0xc7, 0x00, 0xaa, 0x6b, 0x3b, 0x6f, 0xb4, 0x92, 0x99, 0x7b, 0x04, 0xbd, 0x09, 0xf6, 0x4a, 0x76, 0x73, 0xb1, 0x26, 0x23, 0x4d, 0xc2, 0x5b, 0x02, 0x39, 0x63, 0x3a, 0x5c, 0xd3, 0x82, 0x28, 0x96, 0xfb, 0xd1, 0xd5, 0xe2, 0x71, 0x03, 0x8a, 0x2f, 0x3b, 0x79, 0xb5, }; static const unsigned char ecdsa_secp521r1_sha512_11554_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11554_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11554 = { .name = "ecdsa_secp521r1_sha512_11554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11554_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11554_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11554_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 799 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11555 for ECDSA, tcId is 800 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11555_pubkey[] = { 0x00, 0x19, 0x85, 0xd1, 0x9d, 0x13, 0x1d, 0x76, 0xcf, 0x1d, 0xa8, 0x88, 0x7b, 0x31, 0x4e, 0x2e, 0xeb, 0x48, 0x1d, 0x14, 0x1f, 0x82, 0x41, 0xfe, 0xc4, 0x6c, 0xf2, 0x77, 0x9f, 0xa2, 0x04, 0x23, 0x64, 0xa8, 0xa0, 0xc3, 0x65, 0x62, 0x1e, 0xf7, 0x2e, 0x18, 0xc4, 0x4e, 0xe4, 0xb6, 0x09, 0x7f, 0x79, 0x55, 0x20, 0x60, 0xd7, 0xa7, 0x65, 0xd5, 0x8f, 0x52, 0x40, 0x39, 0x4e, 0x66, 0xc2, 0x3b, 0xcf, 0xa8, 0x00, 0x1d, 0xb2, 0x2a, 0x61, 0x6d, 0x88, 0x69, 0x3a, 0xbd, 0x28, 0x9c, 0xc7, 0x7d, 0xdc, 0x5a, 0xcb, 0xd0, 0x02, 0x20, 0xde, 0x75, 0xda, 0x04, 0x9a, 0x58, 0xba, 0x30, 0x46, 0x8e, 0x2c, 0xa2, 0x56, 0xa7, 0x23, 0xba, 0x12, 0xa0, 0x9d, 0x45, 0x87, 0x1e, 0xad, 0xc3, 0x74, 0x76, 0xcd, 0x2e, 0x52, 0xcc, 0xdf, 0x1e, 0x06, 0xc9, 0xa9, 0x4e, 0xc5, 0x2f, 0x75, 0xd2, 0x9a, 0x19, 0x01, 0x2f, 0xc6, 0x96, }; static const unsigned char ecdsa_secp521r1_sha512_11555_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11555_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11555 = { .name = "ecdsa_secp521r1_sha512_11555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11555_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11555_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11555_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 800 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11556 for ECDSA, tcId is 801 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11556_pubkey[] = { 0x01, 0xc0, 0x1e, 0xab, 0x9b, 0xa6, 0xdd, 0xd2, 0x1e, 0x33, 0x42, 0x10, 0x34, 0xac, 0xd6, 0xac, 0x92, 0x3a, 0x40, 0x9f, 0xab, 0x34, 0x9e, 0x03, 0x80, 0xbf, 0xaa, 0x54, 0xb4, 0x04, 0x89, 0x00, 0x86, 0xa5, 0xe1, 0x2f, 0xb0, 0x9e, 0x13, 0x52, 0x71, 0x2c, 0xfd, 0xe1, 0x5a, 0xbc, 0x25, 0x63, 0x07, 0x9a, 0x73, 0xd3, 0x33, 0xc9, 0xc7, 0x9c, 0x67, 0x0f, 0xb0, 0x6b, 0x5d, 0x80, 0x2a, 0xa9, 0xb7, 0x76, 0x00, 0xa7, 0x6a, 0x28, 0xd0, 0x3f, 0x65, 0x7c, 0x61, 0xbf, 0x87, 0xff, 0x78, 0xe7, 0x73, 0x3a, 0x06, 0x95, 0x56, 0xd2, 0xbd, 0x63, 0x8b, 0x79, 0x31, 0x6a, 0xb7, 0x0b, 0x5a, 0x28, 0x09, 0xbc, 0x8a, 0x98, 0xa2, 0xa8, 0x43, 0x23, 0x8d, 0x4a, 0xbe, 0x26, 0x98, 0xb2, 0xaa, 0x6a, 0xed, 0xe1, 0xb2, 0x54, 0x1b, 0xf3, 0xdc, 0xd0, 0x07, 0xcf, 0x9c, 0xd5, 0xc4, 0xd4, 0x96, 0x9c, 0x4f, 0x7f, 0xfc, 0xcb, }; static const unsigned char ecdsa_secp521r1_sha512_11556_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11556_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11556 = { .name = "ecdsa_secp521r1_sha512_11556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11556_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11556_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11556_sig, .siglen = 132, .result = 1, .comment = "u1 == 1, tcId is 801 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11557 for ECDSA, tcId is 802 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11557_pubkey[] = { 0x00, 0x18, 0x63, 0x65, 0xc7, 0x35, 0x88, 0x80, 0x7a, 0x51, 0x00, 0x54, 0x12, 0xdb, 0x00, 0x4b, 0x45, 0xf5, 0xf7, 0xbe, 0x3a, 0x60, 0x74, 0xe6, 0x11, 0x90, 0x42, 0x97, 0x8d, 0xbf, 0xbc, 0x5a, 0x43, 0x1e, 0x16, 0xcc, 0x93, 0x07, 0x47, 0xe6, 0xcd, 0x75, 0x11, 0x50, 0x5b, 0x4c, 0x93, 0x49, 0xce, 0xdf, 0x90, 0x8a, 0x5a, 0x9d, 0xbd, 0x33, 0xcd, 0xb0, 0xae, 0xcc, 0xbf, 0x69, 0x45, 0x44, 0x57, 0xfb, 0x00, 0x14, 0x62, 0x0a, 0x29, 0xa2, 0x69, 0x1d, 0x80, 0x38, 0xd3, 0x9e, 0x1e, 0x4d, 0xe7, 0xc4, 0x24, 0x3c, 0x8c, 0x42, 0x60, 0x1e, 0x71, 0x99, 0x45, 0xc1, 0x29, 0x7c, 0x1a, 0x4b, 0x10, 0xd7, 0x41, 0x5a, 0xf3, 0x7b, 0xf1, 0xed, 0x0d, 0xdc, 0x90, 0x30, 0xbc, 0xe5, 0x30, 0x18, 0x5d, 0xfd, 0xfc, 0x46, 0x58, 0xff, 0x63, 0x5f, 0x6b, 0xd9, 0x66, 0x0b, 0xec, 0xc8, 0xff, 0x9e, 0xca, 0x4f, 0xdd, 0xfa, }; static const unsigned char ecdsa_secp521r1_sha512_11557_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11557_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11557 = { .name = "ecdsa_secp521r1_sha512_11557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11557_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11557_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11557_sig, .siglen = 132, .result = 1, .comment = "u1 == n - 1, tcId is 802 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11558 for ECDSA, tcId is 803 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11558_pubkey[] = { 0x00, 0x2e, 0x2a, 0x74, 0x6b, 0x55, 0xe0, 0x5b, 0xc1, 0x30, 0xd3, 0x74, 0xc8, 0xab, 0xb8, 0xbf, 0x65, 0x1a, 0x2e, 0x2b, 0x02, 0x54, 0x04, 0xf0, 0x85, 0x45, 0xbe, 0xfc, 0xb9, 0x5c, 0x9f, 0x7f, 0x68, 0x1f, 0x6f, 0x5b, 0x9b, 0xf2, 0xeb, 0xc4, 0x5d, 0x4c, 0x85, 0x72, 0x92, 0x1d, 0x3a, 0xb5, 0xdc, 0xe1, 0x44, 0xea, 0x5d, 0x50, 0xeb, 0xec, 0x89, 0xb8, 0xc8, 0xf0, 0x10, 0xea, 0x31, 0x49, 0x48, 0x63, 0x00, 0x8c, 0x81, 0x6f, 0x12, 0x2d, 0x5d, 0x63, 0xb5, 0xfe, 0xa0, 0x0d, 0x1a, 0x00, 0xed, 0x23, 0x57, 0x7f, 0x7e, 0xf7, 0xd4, 0x8f, 0x39, 0x73, 0x56, 0x83, 0x53, 0xd4, 0x68, 0x36, 0x8e, 0xc7, 0x7c, 0xbc, 0x9e, 0x3c, 0x50, 0x12, 0x83, 0x9b, 0x74, 0x83, 0x30, 0x87, 0xd5, 0x1b, 0xa3, 0xe6, 0x80, 0xab, 0x53, 0x75, 0xbe, 0x68, 0x0e, 0xa8, 0xc1, 0x8f, 0x7b, 0x61, 0x9f, 0x32, 0xb1, 0x41, 0xf2, 0x81, }; static const unsigned char ecdsa_secp521r1_sha512_11558_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11558_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11558 = { .name = "ecdsa_secp521r1_sha512_11558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11558_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11558_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11558_sig, .siglen = 132, .result = 1, .comment = "u2 == 1, tcId is 803 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11559 for ECDSA, tcId is 804 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11559_pubkey[] = { 0x00, 0xd3, 0x79, 0xf7, 0x98, 0x26, 0xb0, 0x41, 0x98, 0xdf, 0x37, 0x1a, 0xb0, 0x51, 0x9d, 0x1a, 0x7f, 0x0a, 0x4f, 0x19, 0x9d, 0x61, 0x49, 0xca, 0x8b, 0x7f, 0x13, 0xa5, 0xda, 0x09, 0xcb, 0xa0, 0x24, 0xfb, 0xe7, 0xd4, 0xff, 0x7f, 0xd7, 0xa8, 0xa9, 0x3b, 0x5c, 0xbc, 0xaf, 0x3c, 0x68, 0x24, 0x3f, 0x63, 0x0d, 0x47, 0xd8, 0xf2, 0xb6, 0x52, 0xb6, 0xa7, 0xd6, 0xb1, 0xc5, 0x22, 0xa7, 0x5f, 0xa9, 0xf2, 0x01, 0xc6, 0x60, 0x72, 0x2d, 0x95, 0xc8, 0x3c, 0x6b, 0x94, 0x57, 0x94, 0x4a, 0xcc, 0x67, 0x1e, 0x88, 0x1e, 0x8d, 0x17, 0xb0, 0x73, 0x62, 0xf2, 0xf8, 0x27, 0x99, 0x45, 0x6f, 0x2f, 0x15, 0xd6, 0x62, 0xd3, 0x6a, 0xa0, 0x9d, 0x5a, 0x52, 0x36, 0x28, 0x8d, 0x3c, 0x13, 0x82, 0xe3, 0xe2, 0x30, 0x8f, 0x46, 0x86, 0x7d, 0x53, 0xc5, 0x88, 0xa3, 0x70, 0x85, 0x7f, 0xae, 0x4d, 0x32, 0xf0, 0xa3, 0xdd, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_11559_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11559_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11559 = { .name = "ecdsa_secp521r1_sha512_11559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11559_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11559_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11559_sig, .siglen = 132, .result = 1, .comment = "u2 == n - 1, tcId is 804 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11560 for ECDSA, tcId is 805 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11560_pubkey[] = { 0x01, 0xb9, 0xcc, 0x8c, 0xab, 0x6a, 0xf3, 0xef, 0xce, 0x62, 0xa1, 0x5d, 0xe1, 0xf2, 0xad, 0xbb, 0xb2, 0x2a, 0x4d, 0x2d, 0x74, 0xe8, 0xdc, 0xf3, 0x2f, 0xec, 0x0a, 0x94, 0xa3, 0xda, 0x35, 0x08, 0xde, 0x1d, 0x4a, 0x07, 0x3f, 0x52, 0x45, 0xf9, 0x6c, 0x9a, 0x6a, 0xa3, 0x02, 0x1e, 0x54, 0xea, 0xa3, 0x53, 0x3a, 0x78, 0x17, 0xc4, 0xe5, 0x79, 0x44, 0xab, 0x21, 0x74, 0x54, 0x9b, 0x6b, 0x93, 0xeb, 0x50, 0x01, 0x71, 0x2c, 0xdd, 0x83, 0x66, 0xc4, 0x51, 0x18, 0xf0, 0x16, 0x16, 0x3a, 0x73, 0x47, 0x19, 0x8f, 0x49, 0x5a, 0x2a, 0x9b, 0xc4, 0x27, 0x90, 0x8d, 0xbc, 0x6d, 0xd4, 0xb3, 0x30, 0xf5, 0x6e, 0x1c, 0x1d, 0xf4, 0xa9, 0x88, 0x6f, 0x7f, 0xd6, 0x3c, 0x49, 0x12, 0x4a, 0xde, 0x60, 0xd5, 0xbf, 0x8e, 0x6b, 0x7a, 0xc3, 0xd6, 0x9d, 0x38, 0xf9, 0xc4, 0xdb, 0xd8, 0xa1, 0x22, 0x16, 0x38, 0x27, 0x2c, 0xcb, }; static const unsigned char ecdsa_secp521r1_sha512_11560_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11560_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x42, 0x4f, 0x8a, 0x11, 0x45, 0x1e, 0xcd, 0x07, 0x35, 0xf0, 0x6d, 0xa9, 0xd1, 0x52, 0x65, 0xd8, 0x2c, 0x3c, 0x08, 0xf4, 0x3d, 0xb2, 0x00, 0xb4, 0xb9, 0x40, 0x4d, 0x55, 0x8c, 0x97, 0x49, 0xdd, 0x51, 0xb1, 0x60, 0x7d, 0xa7, 0x8f, 0x82, 0xed, 0xa9, 0xf3, 0x2f, 0x5e, 0x53, 0xae, 0xf6, 0xed, 0x9b, 0x97, 0x19, 0x1f, 0xbd, 0x3b, 0xae, 0x7f, 0x35, 0xdd, 0xd3, 0xe6, 0x69, 0x03, 0xd8, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11560 = { .name = "ecdsa_secp521r1_sha512_11560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11560_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11560_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11560_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 805 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11561 for ECDSA, tcId is 806 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11561_pubkey[] = { 0x00, 0x38, 0x26, 0xc9, 0x1a, 0xaa, 0x33, 0xa1, 0x83, 0xde, 0x3f, 0x6e, 0x13, 0x4d, 0x86, 0x53, 0x08, 0xae, 0xbc, 0x79, 0x0e, 0x92, 0x87, 0xbc, 0x7a, 0xe1, 0x36, 0xed, 0x59, 0xbf, 0x03, 0xbe, 0x44, 0xa7, 0xb5, 0xb4, 0x3a, 0x18, 0xca, 0x8a, 0xf1, 0xa1, 0x4e, 0x8c, 0xa8, 0x8e, 0xfe, 0x1c, 0x65, 0xf8, 0x94, 0x97, 0x6c, 0x56, 0xc4, 0x8a, 0xf0, 0x0b, 0x5a, 0xc1, 0xf3, 0xcb, 0xcd, 0xf5, 0x88, 0xb6, 0x01, 0xac, 0x3b, 0xce, 0x5f, 0xae, 0x3c, 0x2b, 0xb6, 0xdc, 0xf1, 0x9d, 0x9c, 0x27, 0x5e, 0xb2, 0xeb, 0x56, 0x14, 0x52, 0x3a, 0x04, 0xbf, 0x0e, 0x7f, 0x98, 0xa4, 0xa5, 0x0b, 0xe7, 0xf8, 0x0c, 0x8c, 0xce, 0xe8, 0xa9, 0xe7, 0xb7, 0x4c, 0x8a, 0xf0, 0x76, 0x34, 0x17, 0x04, 0xa7, 0xac, 0x23, 0x76, 0x9a, 0x42, 0x07, 0x17, 0x22, 0x7d, 0x6f, 0x7d, 0x1b, 0xbc, 0xfc, 0xec, 0xf7, 0x20, 0xec, 0xac, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_11561_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11561_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x41, 0xee, 0xab, 0x7d, 0x3d, 0x7e, 0x80, 0x93, 0x7c, 0xad, 0x0b, 0x86, 0xd3, 0xe5, 0x3e, 0x14, 0x83, 0x01, 0x66, 0xc2, 0xef, 0xa8, 0x9d, 0xf1, 0x8e, 0xc6, 0xf8, 0x8f, 0xc6, 0xa8, 0xa5, 0x80, 0x60, 0x1a, 0x91, 0x93, 0x4b, 0xa9, 0x22, 0xbd, 0x74, 0x63, 0x51, 0xa0, 0x08, 0xac, 0x4f, 0x86, 0xdc, 0xc4, 0xd1, 0x3a, 0x7f, 0xf0, 0x94, 0x20, 0xf8, 0x97, 0xb5, 0x2b, 0xf8, 0x8a, 0x4c, 0x92, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11561 = { .name = "ecdsa_secp521r1_sha512_11561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11561_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11561_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11561_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 806 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11562 for ECDSA, tcId is 807 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11562_pubkey[] = { 0x00, 0xc8, 0x61, 0xb3, 0xd5, 0x97, 0x7d, 0xaf, 0xd3, 0x21, 0xc4, 0x2e, 0xab, 0x19, 0x13, 0xa2, 0xf1, 0xa7, 0x34, 0xe9, 0xfb, 0x1a, 0x21, 0x8f, 0x33, 0xc0, 0x2a, 0x94, 0x1d, 0xaf, 0xa4, 0x1e, 0x7f, 0x5f, 0xa5, 0xb4, 0xd7, 0x3f, 0x52, 0xc7, 0x4c, 0x35, 0xe6, 0x26, 0x2b, 0x1c, 0x4a, 0x15, 0x45, 0xc5, 0xcd, 0xdf, 0xa9, 0x12, 0xfe, 0x44, 0x2e, 0xe7, 0xa1, 0x6a, 0xaa, 0xe0, 0xc5, 0xc3, 0xf6, 0x43, 0x00, 0x60, 0x1d, 0xb9, 0x81, 0xab, 0x95, 0x93, 0xc9, 0x40, 0x57, 0x23, 0xca, 0xa8, 0x6d, 0x86, 0x2c, 0x57, 0x5b, 0x5c, 0x54, 0xa4, 0x87, 0x46, 0x7c, 0x23, 0x40, 0xe4, 0x95, 0xf2, 0x6d, 0xbb, 0x15, 0x87, 0x57, 0x0d, 0x10, 0xd3, 0x86, 0x09, 0xb3, 0x8c, 0x50, 0x09, 0x48, 0x05, 0x5f, 0x59, 0x6b, 0x29, 0x01, 0x94, 0xb1, 0xe6, 0x6e, 0xa8, 0xd0, 0x6f, 0xfa, 0x75, 0x54, 0xd1, 0xd8, 0xfb, 0x6b, 0x18, }; static const unsigned char ecdsa_secp521r1_sha512_11562_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11562_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa2, 0xeb, 0x25, 0xc2, 0xd3, 0xf9, 0xdb, 0x15, 0xf3, 0x20, 0xa4, 0xdd, 0x42, 0xe2, 0x36, 0xf9, 0x8a, 0x5d, 0x8c, 0x67, 0x74, 0xc1, 0x2f, 0x98, 0x2e, 0x2b, 0xce, 0x6c, 0x5e, 0x16, 0xcb, 0x53, 0xdb, 0xc5, 0x2d, 0xa6, 0xe0, 0x91, 0x20, 0x11, 0x70, 0xc7, 0xb1, 0x14, 0x63, 0x70, 0x08, 0x65, 0x12, 0x0b, 0x56, 0x0f, 0x10, 0x6e, 0x14, 0x48, 0xc5, 0x7f, 0x95, 0x7a, 0x3b, 0xec, 0x28, 0xdb, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11562 = { .name = "ecdsa_secp521r1_sha512_11562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11562_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11562_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11562_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 807 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11563 for ECDSA, tcId is 808 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11563_pubkey[] = { 0x00, 0x1f, 0x02, 0xda, 0x36, 0x38, 0x29, 0xee, 0x08, 0xb4, 0xcc, 0x93, 0x46, 0x4e, 0x2d, 0x7b, 0x16, 0xf2, 0xc2, 0x62, 0xef, 0x79, 0x77, 0xa4, 0xb4, 0xd4, 0x0f, 0x13, 0x84, 0xb4, 0x0b, 0xde, 0x68, 0x08, 0x12, 0x88, 0x60, 0xe5, 0x53, 0x9f, 0xb9, 0x1e, 0x92, 0x31, 0x04, 0x80, 0x24, 0x99, 0x9a, 0xbc, 0xe1, 0x8f, 0x1f, 0xbe, 0xea, 0x89, 0x83, 0x48, 0x75, 0x49, 0xa4, 0x04, 0x3b, 0x53, 0x02, 0x38, 0x00, 0x75, 0x4a, 0x05, 0x9a, 0x8e, 0xa1, 0x1b, 0xca, 0x4c, 0x1f, 0x2c, 0x53, 0x6f, 0xbb, 0xd9, 0x10, 0xc5, 0x03, 0x86, 0xac, 0xd5, 0x54, 0xc2, 0x74, 0x78, 0x09, 0x0d, 0xfa, 0x92, 0x99, 0x9f, 0x27, 0xe2, 0x6e, 0x9c, 0x5f, 0x0c, 0x55, 0x1f, 0x7b, 0x02, 0xaa, 0x15, 0x23, 0xdb, 0xf5, 0x60, 0x63, 0xf7, 0xbb, 0x70, 0x04, 0xd6, 0x49, 0x04, 0xc1, 0xae, 0xc3, 0x5b, 0xc7, 0x3a, 0xef, 0xe2, 0xe8, 0x08, }; static const unsigned char ecdsa_secp521r1_sha512_11563_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11563_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xa5, 0x21, 0xa4, 0x45, 0xfe, 0x80, 0x1d, 0xd1, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xdf, 0xff, 0x25, 0x61, 0x2d, 0x4c, 0x64, 0x0b, 0x97, 0x2f, 0x44, 0x00, 0xe5, 0xbf, 0x59, 0x7b, 0x34, 0x2c, 0xc4, 0xa0, 0xe5, 0xe4, 0xd5, 0x0c, 0xa5, 0x79, 0xce, 0x8a, 0x0a, 0xe0, 0x9c, 0x09, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11563 = { .name = "ecdsa_secp521r1_sha512_11563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11563_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11563_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11563_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 808 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11564 for ECDSA, tcId is 809 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11564_pubkey[] = { 0x00, 0x2e, 0xce, 0x29, 0x62, 0xef, 0x47, 0x11, 0xf4, 0x9b, 0x16, 0x97, 0xac, 0x7f, 0xad, 0x07, 0x59, 0x16, 0x77, 0x67, 0xa1, 0x04, 0xb7, 0x6a, 0xd8, 0x77, 0x49, 0xc8, 0x3a, 0xe2, 0x81, 0x8b, 0xf6, 0x6a, 0xb9, 0xd9, 0x50, 0x9f, 0x73, 0xfb, 0x15, 0x3e, 0xab, 0x8b, 0x54, 0x60, 0x7d, 0xcc, 0xa7, 0x3d, 0x3c, 0x38, 0x09, 0x75, 0xaf, 0xa3, 0xee, 0x39, 0x37, 0x32, 0xb4, 0x4a, 0x59, 0x34, 0x99, 0x2c, 0x01, 0x18, 0x6a, 0xd8, 0x0b, 0xf1, 0x23, 0xba, 0x35, 0xbd, 0x5b, 0x21, 0xb3, 0xd9, 0x5e, 0x2c, 0x67, 0x2a, 0xd3, 0xb4, 0x85, 0xf0, 0x78, 0x62, 0x08, 0x58, 0xcf, 0xb2, 0x4f, 0x1b, 0xf6, 0x1e, 0xad, 0x90, 0xfb, 0x1a, 0x27, 0x23, 0xec, 0x50, 0x1c, 0x2b, 0x7a, 0x97, 0xcd, 0xd1, 0xfc, 0x3e, 0x96, 0x4e, 0x86, 0xd2, 0x3c, 0x03, 0x0a, 0x2a, 0xb9, 0x0d, 0xa6, 0xf3, 0x97, 0x1d, 0xa4, 0xf6, 0x8c, 0x99, }; static const unsigned char ecdsa_secp521r1_sha512_11564_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11564_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x1a, 0x44, 0x5f, 0xe8, 0x01, 0xdd, 0x1f, 0xf3, 0x91, 0x16, 0x1c, 0xc3, 0x0a, 0x39, 0x8e, 0xa5, 0xe2, 0xeb, 0x70, 0x28, 0xc0, 0x8c, 0xe7, 0x77, 0xb4, 0xbe, 0x52, 0x34, 0x6e, 0x9f, 0xde, 0x1d, 0x43, 0xa6, 0xe1, 0x8d, 0xf0, 0xb4, 0x2a, 0x42, 0x3d, 0xcc, 0x5b, 0xba, 0x72, 0xd6, 0xea, 0xa3, 0x48, 0x2d, 0x00, 0x75, 0x0f, 0x39, 0x5c, 0x72, 0xf7, 0xb5, 0x28, 0xc1, 0x4e, 0x64, 0x94, 0xfd, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11564 = { .name = "ecdsa_secp521r1_sha512_11564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11564_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11564_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11564_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 809 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11565 for ECDSA, tcId is 810 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11565_pubkey[] = { 0x01, 0xab, 0x98, 0x1f, 0x50, 0x7a, 0xac, 0x6c, 0x08, 0xa9, 0xaf, 0x8d, 0x79, 0x63, 0xc0, 0xcc, 0x95, 0xd9, 0xa4, 0x17, 0x6a, 0x30, 0xbd, 0x36, 0xd9, 0xb8, 0xb9, 0x66, 0x69, 0x79, 0x12, 0xf5, 0x69, 0x08, 0x79, 0x2c, 0xcf, 0x15, 0xc6, 0xca, 0x41, 0x81, 0x51, 0xaa, 0x2e, 0x84, 0x1c, 0x17, 0x78, 0x3f, 0x84, 0x14, 0xfa, 0x4d, 0x5c, 0x22, 0x2e, 0x49, 0xc0, 0x07, 0xad, 0xca, 0xb1, 0x0a, 0xa0, 0x34, 0x00, 0x8d, 0x1a, 0x16, 0x88, 0xa8, 0x39, 0x93, 0x10, 0x84, 0xca, 0xed, 0xe3, 0x37, 0x58, 0x20, 0x86, 0x56, 0x83, 0x72, 0x92, 0x20, 0x9a, 0x87, 0x7f, 0xbc, 0x1c, 0x12, 0xeb, 0x56, 0xff, 0x98, 0x50, 0x8d, 0x23, 0x48, 0x3d, 0x6e, 0x36, 0xa6, 0xd4, 0x7e, 0x0f, 0x22, 0x17, 0xd2, 0x58, 0xcd, 0xdc, 0xc6, 0xf2, 0xef, 0xfe, 0x24, 0x3c, 0x0a, 0x33, 0x66, 0x4e, 0x0a, 0xba, 0x0e, 0x46, 0xda, 0x33, 0xb9, }; static const unsigned char ecdsa_secp521r1_sha512_11565_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11565_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x34, 0x88, 0xbf, 0xd0, 0x03, 0xba, 0x3f, 0xe7, 0x22, 0x2c, 0x39, 0x86, 0x14, 0x73, 0x1d, 0x4b, 0xc5, 0xd6, 0xe0, 0x51, 0x81, 0x19, 0xce, 0xef, 0x69, 0x7c, 0xa4, 0x68, 0xdd, 0x3f, 0xbc, 0x3a, 0x87, 0x4d, 0xc3, 0x1b, 0xe1, 0x68, 0x54, 0x84, 0x7b, 0x98, 0xb7, 0x74, 0xe5, 0xad, 0xd5, 0x46, 0x90, 0x5a, 0x00, 0xea, 0x1e, 0x72, 0xb8, 0xe5, 0xef, 0x6a, 0x51, 0x82, 0x9c, 0xc9, 0x29, 0xfb, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11565 = { .name = "ecdsa_secp521r1_sha512_11565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11565_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11565_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11565_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 810 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11566 for ECDSA, tcId is 811 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11566_pubkey[] = { 0x00, 0xfe, 0xfa, 0xcf, 0x42, 0x56, 0x61, 0xc8, 0xd3, 0xa2, 0x18, 0x3f, 0xc4, 0xce, 0x11, 0xb9, 0xa7, 0x97, 0x98, 0xb9, 0x23, 0x67, 0x1e, 0x42, 0xc6, 0x93, 0xc1, 0x0b, 0xee, 0x06, 0xd8, 0xa7, 0xb4, 0x61, 0xef, 0xa4, 0xa3, 0x25, 0x73, 0xca, 0xc7, 0xa0, 0x16, 0x4f, 0x2b, 0xa3, 0xe9, 0xf4, 0x83, 0x66, 0xb8, 0xad, 0x06, 0x41, 0x70, 0xfb, 0xe7, 0x98, 0x66, 0x4b, 0x15, 0x38, 0x9d, 0x8e, 0x8d, 0xa4, 0x01, 0x7f, 0x4b, 0x29, 0xcb, 0x1a, 0xe0, 0x9f, 0x64, 0x0a, 0x6a, 0xbe, 0xb7, 0x8a, 0x84, 0x67, 0x74, 0x22, 0xbe, 0xfb, 0x80, 0x41, 0x63, 0x41, 0x38, 0x6a, 0xde, 0xe4, 0xda, 0xe7, 0x02, 0xc7, 0xe1, 0x6a, 0xe8, 0x3d, 0x02, 0x45, 0x31, 0xe1, 0xb6, 0x3b, 0x01, 0xac, 0xb2, 0xc4, 0x6e, 0x4c, 0x0e, 0x25, 0xde, 0x56, 0x91, 0x5b, 0xd4, 0xc9, 0x0e, 0xf1, 0x13, 0xe8, 0x77, 0x91, 0x08, 0xfa, 0xe2, 0x67, }; static const unsigned char ecdsa_secp521r1_sha512_11566_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11566_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xfe, 0x80, 0x1d, 0xd1, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xf9, 0xb0, 0x03, 0x30, 0x4f, 0xb6, 0x26, 0x9c, 0x9f, 0x55, 0x07, 0x68, 0x53, 0x7b, 0x35, 0xf9, 0x64, 0x43, 0x55, 0x6a, 0x62, 0xb5, 0xec, 0x77, 0x95, 0x8b, 0xd8, 0xe4, 0x20, 0x4d, 0x63, 0x54, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11566 = { .name = "ecdsa_secp521r1_sha512_11566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11566_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11566_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11566_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 811 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11567 for ECDSA, tcId is 812 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11567_pubkey[] = { 0x01, 0xba, 0x56, 0x3f, 0x24, 0x3d, 0x85, 0x90, 0x23, 0x3b, 0xe5, 0x97, 0x45, 0xdc, 0x8e, 0x31, 0x1e, 0x87, 0xb6, 0xa9, 0xe3, 0x2b, 0xdd, 0xbd, 0xf4, 0x0f, 0x0d, 0xc8, 0x7a, 0x11, 0xbd, 0xd1, 0xd7, 0x5d, 0x58, 0xd3, 0x12, 0xc3, 0x6d, 0xc8, 0xe2, 0x72, 0x22, 0x36, 0x90, 0xda, 0x1b, 0x6a, 0x05, 0x8d, 0x5d, 0xab, 0x56, 0xf2, 0xfc, 0x6f, 0x29, 0x71, 0x21, 0xa5, 0xab, 0x28, 0x8c, 0x26, 0x9e, 0x75, 0x01, 0xe0, 0x34, 0xd2, 0xe5, 0xdd, 0xb9, 0x0e, 0xfd, 0x48, 0x93, 0xe4, 0x86, 0x94, 0xb4, 0xcf, 0x5c, 0x85, 0xe8, 0xbd, 0xca, 0xfb, 0xbc, 0xae, 0x51, 0x88, 0x0d, 0x97, 0xe2, 0x2d, 0x14, 0xd8, 0x38, 0xf8, 0x16, 0x2e, 0xdb, 0x0e, 0x02, 0x6f, 0x5b, 0xa8, 0x8b, 0x15, 0x0e, 0x3f, 0x2c, 0x1f, 0xc4, 0x9e, 0xd2, 0x42, 0x97, 0x93, 0xb7, 0x6e, 0x92, 0xf1, 0xaf, 0xa9, 0xf0, 0x18, 0x05, 0x10, 0x5c, 0xd8, }; static const unsigned char ecdsa_secp521r1_sha512_11567_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11567_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x41, 0x28, 0x15, 0x1a, 0x7d, 0x33, 0xa4, 0x65, 0x76, 0x7e, 0x87, 0x68, 0x10, 0x50, 0x66, 0x7a, 0xe5, 0x28, 0xaf, 0x3c, 0x43, 0xcf, 0xc5, 0x9e, 0x3c, 0x3c, 0x1c, 0x80, 0x37, 0xd9, 0x41, 0xb1, 0x2b, 0xed, 0x6b, 0x79, 0xef, 0xcb, 0xca, 0xcf, 0x25, 0xad, 0x46, 0x22, 0x6c, 0x5c, 0x2b, 0x2b, 0xbf, 0xa1, 0x36, 0x0e, 0x23, 0xc3, 0x31, 0xdb, 0x67, 0xce, 0xde, 0x47, 0xd9, 0xb0, 0xaa, 0x3f, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11567 = { .name = "ecdsa_secp521r1_sha512_11567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11567_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11567_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11567_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 812 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11568 for ECDSA, tcId is 813 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11568_pubkey[] = { 0x00, 0x24, 0x34, 0xcc, 0xa2, 0x7c, 0x39, 0x65, 0xd3, 0x0c, 0x1a, 0xc3, 0x76, 0x04, 0xfe, 0xcd, 0x56, 0xf0, 0xd4, 0xac, 0x70, 0x1c, 0x1d, 0x7a, 0x4c, 0xc7, 0x35, 0x77, 0x4a, 0x10, 0x91, 0x36, 0x5c, 0xc1, 0xa7, 0xcb, 0x5e, 0x2d, 0x66, 0xd8, 0x99, 0x31, 0x55, 0x1f, 0xdc, 0xe0, 0x4c, 0x0d, 0xef, 0x15, 0x03, 0xe2, 0xec, 0x2b, 0x78, 0x20, 0xc1, 0x99, 0xae, 0x99, 0x0e, 0x36, 0x35, 0x23, 0x86, 0xe5, 0x01, 0x5a, 0x3b, 0xd7, 0xdb, 0x62, 0xf9, 0xb5, 0xf9, 0x6f, 0x50, 0xf1, 0x4c, 0xf0, 0xb3, 0x15, 0xaa, 0xa1, 0x34, 0x2b, 0xf4, 0x35, 0x25, 0xc9, 0xcd, 0x2e, 0xb0, 0x4d, 0x2b, 0x83, 0xec, 0x21, 0x40, 0x4f, 0xe5, 0x1f, 0x67, 0x51, 0x1d, 0x1e, 0xe7, 0x29, 0x67, 0xe7, 0x83, 0x6b, 0x83, 0x16, 0xe8, 0x22, 0x84, 0x77, 0xf8, 0x93, 0x3e, 0x45, 0xdf, 0x55, 0xb7, 0x5f, 0xeb, 0xa4, 0x31, 0x99, 0x53, 0xc6, }; static const unsigned char ecdsa_secp521r1_sha512_11568_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11568_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x9b, 0xcf, 0x27, 0x55, 0x9a, 0xb3, 0x24, 0xf2, 0xa0, 0xeb, 0xc9, 0x5d, 0x05, 0x9e, 0xde, 0xcc, 0xd6, 0x13, 0x60, 0x42, 0x32, 0xda, 0x95, 0xc8, 0x4d, 0x41, 0xd4, 0xd9, 0x90, 0xae, 0x7b, 0xb2, 0xd1, 0x2b, 0x8d, 0x29, 0x7d, 0x99, 0xfb, 0x86, 0xb6, 0x45, 0x72, 0xd6, 0xfc, 0xe2, 0xa3, 0x4e, 0x4f, 0xa5, 0xe1, 0x68, 0xf6, 0x89, 0x4d, 0x4a, 0x1a, 0x82, 0x8e, 0x2c, 0x6d, 0xbb, 0xdf, 0x31, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11568 = { .name = "ecdsa_secp521r1_sha512_11568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11568_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11568_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11568_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 813 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11569 for ECDSA, tcId is 814 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11569_pubkey[] = { 0x00, 0x3e, 0xea, 0xb7, 0x24, 0x1b, 0x49, 0x82, 0x5f, 0x8d, 0xb3, 0x90, 0x43, 0xc3, 0x07, 0xa9, 0xdb, 0xbb, 0x62, 0x6c, 0xcc, 0x30, 0x69, 0x31, 0xc6, 0xa8, 0x8d, 0x42, 0x45, 0x25, 0x7a, 0xe0, 0x05, 0x76, 0x2d, 0x54, 0x94, 0x4b, 0x8a, 0x97, 0x95, 0x0f, 0xd3, 0xbe, 0x02, 0xee, 0x5b, 0xcb, 0xb5, 0xa1, 0x00, 0x68, 0xb2, 0x30, 0xc1, 0xbd, 0x21, 0x00, 0x30, 0x73, 0x03, 0x3b, 0x5b, 0x40, 0x72, 0xe2, 0x00, 0x89, 0xb2, 0x13, 0x4a, 0xfa, 0xff, 0x1d, 0x7e, 0x19, 0xfc, 0x23, 0xd4, 0x41, 0x10, 0x60, 0x8e, 0xfb, 0xc6, 0xe2, 0xb8, 0x12, 0x0a, 0x16, 0xa6, 0x3b, 0xdf, 0xf2, 0xe0, 0x65, 0xfc, 0xc9, 0x42, 0xe7, 0x96, 0xc6, 0xdb, 0xdf, 0xf1, 0x4f, 0xc1, 0x79, 0xab, 0x69, 0x4e, 0xe8, 0x65, 0xe8, 0x3a, 0x28, 0xe7, 0x0e, 0x8b, 0xa6, 0x35, 0x65, 0xc2, 0xfa, 0x2f, 0x31, 0xac, 0x3e, 0x71, 0xbd, 0xc4, 0x6a, }; static const unsigned char ecdsa_secp521r1_sha512_11569_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11569_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xb6, 0xcd, 0x38, 0x19, 0x45, 0x71, 0x30, 0x41, 0xc7, 0x99, 0x03, 0x56, 0x37, 0x0a, 0x00, 0xa1, 0x08, 0x88, 0xce, 0x90, 0x5d, 0xf2, 0xc7, 0x92, 0x22, 0x6a, 0x96, 0xca, 0xdb, 0x61, 0xdf, 0x94, 0xbc, 0x42, 0x77, 0xc0, 0x4a, 0xfb, 0xcd, 0xab, 0xf3, 0x76, 0xf0, 0x2d, 0x2a, 0x6a, 0xdd, 0xf4, 0x05, 0x2a, 0xd7, 0x67, 0x3b, 0x1a, 0xe1, 0xe1, 0xec, 0x49, 0xaf, 0x38, 0x90, 0x66, 0x81, 0x07, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11569 = { .name = "ecdsa_secp521r1_sha512_11569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11569_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11569_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11569_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 814 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11570 for ECDSA, tcId is 815 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11570_pubkey[] = { 0x01, 0x7f, 0xb8, 0x38, 0xef, 0x9a, 0x6b, 0xc8, 0x87, 0x6e, 0xf2, 0x18, 0x8a, 0x5f, 0x0d, 0x36, 0xfb, 0x76, 0x64, 0x26, 0x73, 0xec, 0x22, 0x2f, 0x23, 0xf4, 0x9c, 0xfd, 0xd8, 0x60, 0xc5, 0x05, 0x34, 0xd3, 0x47, 0x76, 0x09, 0xc3, 0xa1, 0x16, 0x5e, 0x93, 0xdf, 0xaf, 0xcc, 0x10, 0x34, 0xd6, 0xcf, 0x76, 0x29, 0x6c, 0xd0, 0x2f, 0x56, 0xe3, 0x3f, 0x50, 0xef, 0xa2, 0x02, 0xcd, 0xd7, 0xdd, 0x0a, 0x17, 0x01, 0x00, 0xd2, 0x75, 0xbc, 0xb8, 0x36, 0x9c, 0x34, 0xcf, 0x30, 0x46, 0xd1, 0x98, 0xff, 0xaf, 0x4c, 0xce, 0xbb, 0x03, 0x13, 0x9a, 0xad, 0x8e, 0x44, 0x01, 0x31, 0x0f, 0x76, 0x3e, 0x78, 0xb4, 0xad, 0x0d, 0xd8, 0x7f, 0xa6, 0xe0, 0x43, 0x8b, 0xf4, 0x30, 0xb2, 0xc1, 0x0f, 0x25, 0xf8, 0x81, 0x9d, 0xc5, 0x46, 0xb6, 0xb0, 0x66, 0x13, 0xea, 0xf0, 0x68, 0xc5, 0x9c, 0xec, 0xb2, 0xbb, 0x91, 0x68, 0x4a, }; static const unsigned char ecdsa_secp521r1_sha512_11570_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11570_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xff, 0xde, 0xd8, 0x3a, 0xf7, 0x5d, 0x70, 0x99, 0x7c, 0x65, 0x07, 0xc9, 0x2b, 0x17, 0x56, 0xcd, 0x13, 0xe9, 0xe1, 0xfb, 0x85, 0xe1, 0x26, 0xff, 0xa5, 0xa3, 0x5f, 0xd9, 0x55, 0x39, 0xb4, 0x5b, 0x0e, 0x7f, 0xea, 0x93, 0x83, 0x0b, 0xd0, 0x09, 0xbe, 0xea, 0xec, 0x68, 0xf5, 0x51, 0xad, 0x57, 0x71, 0x50, 0x0f, 0x58, 0x4c, 0x66, 0x30, 0x4c, 0x97, 0xc2, 0xc8, 0xf1, 0x9c, 0x14, 0x1a, 0x45, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11570 = { .name = "ecdsa_secp521r1_sha512_11570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11570_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11570_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11570_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 815 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11571 for ECDSA, tcId is 816 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11571_pubkey[] = { 0x01, 0x3d, 0x2a, 0x55, 0x18, 0xc4, 0x5b, 0x60, 0x2f, 0x7b, 0x3e, 0xee, 0x2e, 0x26, 0x1a, 0x99, 0x7a, 0xa7, 0x8a, 0x5a, 0x83, 0x1c, 0x44, 0xe3, 0xad, 0xa1, 0x6f, 0xdb, 0x0c, 0xf1, 0xb3, 0x29, 0x26, 0x9e, 0xfb, 0x15, 0x2c, 0xfe, 0x8e, 0x4e, 0x08, 0x07, 0x7b, 0x67, 0xcc, 0x27, 0xab, 0x4a, 0xe4, 0x29, 0x95, 0xb7, 0xa9, 0x97, 0x1e, 0xfe, 0x52, 0x48, 0x17, 0x5c, 0xb5, 0xd7, 0xca, 0x63, 0xf7, 0x8a, 0x00, 0xd2, 0xb6, 0x76, 0xca, 0x3d, 0x41, 0xf8, 0xed, 0x8b, 0xb6, 0x53, 0x09, 0xde, 0x6e, 0xc5, 0x37, 0x99, 0x41, 0xa5, 0xf7, 0x4a, 0x6d, 0x70, 0xdd, 0xca, 0xe1, 0xf7, 0x36, 0x5c, 0xe7, 0x1f, 0xde, 0xf0, 0x3e, 0x37, 0x2a, 0xa3, 0x14, 0x08, 0xa8, 0xa5, 0x1c, 0xc3, 0x4c, 0xac, 0x54, 0xf6, 0xab, 0x73, 0x66, 0xd9, 0x87, 0x58, 0xb7, 0xf9, 0x3f, 0xc9, 0x76, 0xe0, 0xfe, 0x51, 0xf3, 0x87, 0x1b, 0x82, }; static const unsigned char ecdsa_secp521r1_sha512_11571_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11571_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xbd, 0xb0, 0x75, 0xee, 0xba, 0xe1, 0x32, 0xf8, 0xca, 0x0f, 0x92, 0x56, 0x2e, 0xad, 0x9a, 0x27, 0xd3, 0xc3, 0xf7, 0x0b, 0xc2, 0x4d, 0xff, 0x4b, 0x46, 0xbf, 0xb2, 0xaa, 0x73, 0x68, 0xb6, 0x1c, 0xff, 0xd5, 0x27, 0x06, 0x17, 0xa0, 0x13, 0x7d, 0xd5, 0xd8, 0xd1, 0xea, 0xa3, 0x5a, 0xae, 0xe2, 0xa0, 0x1e, 0xb0, 0x98, 0xcc, 0x60, 0x99, 0x2f, 0x85, 0x91, 0xe3, 0x38, 0x28, 0x34, 0x8b, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11571 = { .name = "ecdsa_secp521r1_sha512_11571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11571_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11571_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11571_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 816 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11572 for ECDSA, tcId is 817 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11572_pubkey[] = { 0x00, 0xac, 0x4e, 0x9a, 0xd1, 0xfa, 0xd8, 0x05, 0x4a, 0x2e, 0x13, 0x20, 0x3f, 0xcc, 0x48, 0x93, 0x33, 0x95, 0x5b, 0xfb, 0x77, 0x62, 0xae, 0xd4, 0x5b, 0x61, 0xe7, 0x51, 0x82, 0x6f, 0x8a, 0x13, 0x0b, 0x53, 0x07, 0xc1, 0xf2, 0xf0, 0x52, 0x00, 0x1d, 0xc3, 0x9f, 0x97, 0x1f, 0x19, 0x5d, 0x6a, 0x9c, 0x6a, 0x5a, 0xb5, 0xd0, 0x25, 0x97, 0x82, 0x2a, 0x89, 0x2a, 0xe2, 0xbe, 0x67, 0x14, 0x3b, 0xf2, 0xae, 0x00, 0x5c, 0xe0, 0xfd, 0x82, 0xe3, 0x50, 0xb8, 0x5f, 0x2d, 0x7a, 0x2e, 0xdb, 0xd5, 0x95, 0xa1, 0xe8, 0x90, 0xa1, 0x43, 0xee, 0x9a, 0x17, 0xf1, 0x4a, 0xed, 0x31, 0x95, 0x0d, 0x51, 0x7d, 0x45, 0x7e, 0x95, 0xee, 0x16, 0x0f, 0x81, 0x8b, 0x7e, 0x7a, 0xe6, 0xb7, 0x21, 0x35, 0x50, 0x45, 0x16, 0xb4, 0xbb, 0xdb, 0xc8, 0x57, 0x18, 0xf4, 0x42, 0xa3, 0xdc, 0x9a, 0x21, 0xee, 0x4d, 0xa0, 0xf3, 0x27, 0xb6, }; static const unsigned char ecdsa_secp521r1_sha512_11572_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11572_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xff, 0x9c, 0x88, 0xb0, 0xe6, 0x18, 0x51, 0xcc, 0x75, 0x2f, 0x17, 0x5b, 0x81, 0x46, 0x04, 0x67, 0x3b, 0xbd, 0xa5, 0xf2, 0x91, 0xa3, 0x74, 0xfe, 0xf0, 0xea, 0x1f, 0x8b, 0xff, 0xad, 0x1d, 0x11, 0x31, 0x2e, 0x39, 0x33, 0x05, 0x64, 0x40, 0x86, 0xd1, 0x40, 0xf9, 0x39, 0x96, 0xfd, 0xfe, 0x60, 0x83, 0xb4, 0x78, 0x3f, 0x2c, 0xa8, 0xf4, 0x9e, 0x18, 0x8c, 0xeb, 0x1d, 0xb5, 0xab, 0x16, 0x6c, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11572 = { .name = "ecdsa_secp521r1_sha512_11572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11572_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11572_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11572_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 817 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11573 for ECDSA, tcId is 818 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11573_pubkey[] = { 0x00, 0x9d, 0x1a, 0xef, 0xc0, 0x11, 0x60, 0x87, 0x74, 0xdd, 0xe6, 0xb1, 0x57, 0x4c, 0xf7, 0x97, 0x35, 0x69, 0x1b, 0xcc, 0xd0, 0xd5, 0x34, 0x97, 0x95, 0x55, 0xb9, 0x23, 0xe4, 0x80, 0x3f, 0x49, 0x6e, 0x09, 0x6d, 0x95, 0xaf, 0x7d, 0xbf, 0x80, 0x25, 0x95, 0x53, 0x12, 0xcf, 0x31, 0x80, 0xf2, 0xb1, 0x24, 0xe1, 0x40, 0x4b, 0xa8, 0xbd, 0x46, 0x2c, 0xf8, 0xc7, 0x50, 0xbd, 0x15, 0x7d, 0xbb, 0x18, 0xf1, 0x01, 0x6e, 0x37, 0x36, 0x56, 0x25, 0xe2, 0x83, 0xc6, 0x44, 0x76, 0x76, 0xbe, 0xc2, 0x98, 0x41, 0x0a, 0x36, 0xb9, 0xc8, 0xc6, 0x4b, 0xa5, 0xa1, 0xb6, 0x91, 0x79, 0x17, 0x9d, 0xd8, 0xb8, 0xf3, 0xe8, 0xe6, 0x59, 0xcc, 0xac, 0x0c, 0xdf, 0x1c, 0x42, 0xf1, 0x74, 0xd3, 0x58, 0x0a, 0x00, 0x82, 0xc1, 0x31, 0xa8, 0x86, 0x5e, 0x50, 0xad, 0x9a, 0xf9, 0x08, 0x8e, 0xb2, 0xd6, 0x3f, 0x0b, 0x47, 0x68, 0xae, }; static const unsigned char ecdsa_secp521r1_sha512_11573_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11573_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xd1, 0x75, 0x92, 0xe1, 0x69, 0xfc, 0xed, 0x8a, 0xf9, 0x90, 0x52, 0x6e, 0xa1, 0x71, 0x1b, 0x7c, 0xc5, 0x2e, 0xc6, 0x33, 0xba, 0x60, 0x97, 0xcc, 0x17, 0x15, 0xe7, 0x36, 0x2f, 0x0b, 0x65, 0xa9, 0xed, 0xe2, 0x96, 0xd3, 0x70, 0x48, 0x90, 0x08, 0xb8, 0x63, 0xd8, 0x8a, 0x31, 0xb8, 0x04, 0x32, 0x89, 0x05, 0xab, 0x07, 0x88, 0x37, 0x0a, 0x24, 0x62, 0xbf, 0xca, 0xbd, 0x1d, 0xf6, 0x14, 0x6d, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11573 = { .name = "ecdsa_secp521r1_sha512_11573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11573_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11573_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11573_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 818 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11574 for ECDSA, tcId is 819 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11574_pubkey[] = { 0x01, 0x0f, 0x58, 0x24, 0xd1, 0x1d, 0x10, 0x0f, 0x9c, 0x1d, 0xea, 0x1f, 0x44, 0x0f, 0xff, 0xe6, 0xae, 0xf1, 0x43, 0xa8, 0xfc, 0x9a, 0xac, 0x9e, 0x64, 0xe1, 0x4f, 0x7b, 0xaf, 0xf3, 0xa6, 0x2a, 0x5a, 0xe9, 0xf6, 0xdd, 0x40, 0xdd, 0x36, 0x8b, 0x65, 0x23, 0x9a, 0xa8, 0x02, 0x31, 0x86, 0x9e, 0x2a, 0xa7, 0xaa, 0x24, 0xf0, 0x58, 0xd1, 0x7a, 0x6c, 0x35, 0x92, 0x46, 0xbd, 0xf5, 0xec, 0x85, 0xd7, 0x05, 0x01, 0x2d, 0x07, 0xc2, 0x51, 0xfe, 0xcb, 0xcf, 0x50, 0x16, 0xa8, 0xea, 0x9e, 0x3c, 0x46, 0xbc, 0x53, 0x18, 0x4b, 0xba, 0x96, 0x1d, 0x4a, 0xe8, 0x9d, 0xab, 0xfa, 0xa1, 0xae, 0xe3, 0x34, 0xdc, 0xf9, 0x48, 0x24, 0xcf, 0x1a, 0x6f, 0x84, 0x0e, 0x9a, 0x8b, 0xa1, 0xce, 0xbf, 0xbb, 0x98, 0x81, 0xac, 0xc8, 0xe8, 0x06, 0x28, 0x4d, 0x05, 0x81, 0xb7, 0xc8, 0x59, 0x8f, 0x3e, 0x7e, 0x46, 0x6d, 0xea, 0x09, }; static const unsigned char ecdsa_secp521r1_sha512_11574_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11574_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11574 = { .name = "ecdsa_secp521r1_sha512_11574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11574_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11574_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11574_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 819 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11575 for ECDSA, tcId is 820 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11575_pubkey[] = { 0x01, 0xb5, 0x57, 0xf6, 0xfc, 0x21, 0xf1, 0x6e, 0x6a, 0x8e, 0x51, 0xb2, 0x90, 0x4b, 0x24, 0xfb, 0x8c, 0x75, 0xc8, 0xfe, 0xe4, 0xb1, 0xb0, 0xff, 0x97, 0x5f, 0xcd, 0x54, 0xc4, 0x91, 0xa0, 0xe5, 0x27, 0x58, 0xa3, 0x88, 0x30, 0x38, 0xdb, 0xcf, 0x21, 0xf1, 0x9e, 0x57, 0x91, 0x46, 0x3c, 0x2d, 0x95, 0x2b, 0xb4, 0xb0, 0xb6, 0x42, 0x8f, 0x0a, 0xe7, 0x36, 0x9b, 0x41, 0xd1, 0xd9, 0x76, 0x61, 0xb2, 0x94, 0x00, 0xf7, 0x5c, 0x85, 0x93, 0xf9, 0xec, 0xf5, 0x4a, 0x26, 0xcc, 0x8c, 0x7b, 0x41, 0x8f, 0x9f, 0xbc, 0xa4, 0x29, 0x68, 0x85, 0xb9, 0x36, 0x70, 0x93, 0x99, 0x42, 0xf5, 0xdc, 0xf6, 0xcb, 0x4a, 0x03, 0xc2, 0x34, 0x4d, 0x04, 0x11, 0xdf, 0x1e, 0x5a, 0x54, 0x86, 0x52, 0x53, 0x4c, 0x4b, 0x7d, 0xbc, 0xce, 0x94, 0x01, 0x69, 0x72, 0x52, 0x26, 0x7e, 0x87, 0x45, 0xd0, 0x71, 0x38, 0x8e, 0xec, 0x83, 0x2e, }; static const unsigned char ecdsa_secp521r1_sha512_11575_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11575_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x9f, 0x57, 0x70, 0x8f, 0xa9, 0x7e, 0xba, 0x94, 0xc6, 0xd4, 0x78, 0x2c, 0xdd, 0x4e, 0x33, 0xbb, 0x95, 0xc1, 0x35, 0x3b, 0xde, 0x09, 0x52, 0x32, 0xe3, 0xe2, 0xba, 0xb2, 0x77, 0xbb, 0x5d, 0x2b, 0x48, 0xf5, 0x5a, 0x53, 0xff, 0xe9, 0x28, 0xd0, 0x34, 0xc2, 0x99, 0x70, 0xa9, 0xe5, 0xf3, 0x84, 0xa0, 0x03, 0x90, 0x7d, 0x3d, 0x9b, 0x82, 0xa8, 0x68, 0x17, 0xcc, 0x61, 0xfb, 0x17, 0xf4, 0xc5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11575 = { .name = "ecdsa_secp521r1_sha512_11575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11575_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11575_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11575_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 820 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11576 for ECDSA, tcId is 821 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11576_pubkey[] = { 0x00, 0xce, 0x02, 0x2b, 0x54, 0x3a, 0x18, 0x1f, 0xdd, 0x31, 0x30, 0xce, 0x35, 0x92, 0x61, 0x78, 0xa7, 0xf0, 0xef, 0x97, 0x1c, 0x5f, 0xe8, 0x48, 0xb0, 0x2d, 0xc1, 0xbf, 0x68, 0xc8, 0x83, 0xb2, 0x9a, 0xa3, 0x53, 0x69, 0xab, 0xd1, 0x99, 0xed, 0x62, 0x8e, 0xa8, 0x37, 0x3a, 0x96, 0x60, 0xa1, 0xc0, 0x85, 0x41, 0x4a, 0x2c, 0x66, 0xde, 0x01, 0x28, 0xc0, 0x8f, 0x83, 0x86, 0xef, 0xec, 0xa0, 0x0d, 0x3f, 0x00, 0xa2, 0x9c, 0x70, 0x4b, 0xaa, 0xea, 0x02, 0x14, 0xab, 0x94, 0x44, 0xe9, 0x2d, 0x47, 0xdb, 0x59, 0xc4, 0x48, 0xc6, 0x55, 0x94, 0xb7, 0x09, 0xc5, 0xbd, 0x43, 0x07, 0x89, 0x7c, 0x98, 0xd0, 0xbc, 0xcb, 0x4a, 0x9f, 0x35, 0x1c, 0x51, 0xd2, 0x27, 0x3e, 0xf2, 0xbb, 0x84, 0xd6, 0x87, 0xc3, 0x05, 0xe7, 0x63, 0x6b, 0x55, 0xfd, 0x3e, 0x38, 0x54, 0xb4, 0xb3, 0x4c, 0xa7, 0xba, 0x71, 0x27, 0x6a, 0xca, }; static const unsigned char ecdsa_secp521r1_sha512_11576_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11576_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x68, 0xd9, 0x8f, 0xa9, 0x07, 0x36, 0xef, 0xf3, 0xe9, 0x0f, 0x8f, 0xcf, 0xe5, 0x08, 0x38, 0xb6, 0xfa, 0x0b, 0xf2, 0xcd, 0xe7, 0x7b, 0xc5, 0x1e, 0x3f, 0x41, 0x01, 0x9c, 0x80, 0x06, 0xf4, 0xe9, 0xcb, 0xae, 0xad, 0xce, 0x7d, 0xbb, 0x44, 0x46, 0x2d, 0xa6, 0x42, 0x5b, 0xe9, 0xcf, 0xda, 0xec, 0xb2, 0x34, 0xc4, 0x17, 0x49, 0xce, 0x69, 0x5b, 0xe1, 0xb5, 0xea, 0xd2, 0xe6, 0xb1, 0x20, 0x5f, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11576 = { .name = "ecdsa_secp521r1_sha512_11576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11576_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11576_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11576_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 821 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11577 for ECDSA, tcId is 822 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11577_pubkey[] = { 0x00, 0x40, 0x0d, 0x19, 0x4f, 0x51, 0xd8, 0x02, 0x18, 0xc0, 0x29, 0x6e, 0x97, 0x8b, 0x9b, 0x7a, 0x5e, 0xbb, 0x0d, 0x37, 0x3d, 0x21, 0xe9, 0xed, 0x7f, 0x4b, 0xe8, 0xae, 0x25, 0xea, 0x5b, 0x6f, 0xce, 0xb5, 0x80, 0xdc, 0x45, 0x10, 0x82, 0x65, 0x25, 0xfe, 0x13, 0x8d, 0x1a, 0x4e, 0x20, 0xcc, 0x29, 0x3c, 0x53, 0x0d, 0xba, 0x4b, 0x85, 0xc3, 0xd2, 0x9b, 0xb8, 0x74, 0x86, 0x7c, 0x36, 0x84, 0x69, 0x6a, 0x01, 0x53, 0x7b, 0xa3, 0xc3, 0x2c, 0x1f, 0x1f, 0x9b, 0x2d, 0x9e, 0x80, 0xf8, 0x8f, 0xfc, 0xdc, 0x4a, 0xa5, 0x24, 0x6e, 0x81, 0x45, 0xb8, 0x7c, 0x37, 0xd4, 0x73, 0x04, 0x42, 0x34, 0xd8, 0xad, 0x28, 0xc6, 0xab, 0xd5, 0xa1, 0x86, 0xed, 0x0a, 0xb6, 0x1c, 0x6e, 0x72, 0xdd, 0xef, 0x77, 0xb0, 0x99, 0xf5, 0x1e, 0xdc, 0x58, 0xeb, 0xeb, 0x43, 0x3a, 0xed, 0x06, 0x45, 0x03, 0xca, 0x49, 0x4c, 0x4c, 0x73, }; static const unsigned char ecdsa_secp521r1_sha512_11577_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11577_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xe9, 0x7a, 0xe6, 0x6b, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x68, 0xbc, 0x97, 0x26, 0xf0, 0x2d, 0xbf, 0x85, 0x98, 0xa9, 0x8b, 0x3e, 0x50, 0x77, 0xef, 0xf6, 0xf2, 0x49, 0x1e, 0xb6, 0x78, 0xed, 0x04, 0x0f, 0xb3, 0x38, 0xc0, 0x84, 0xa9, 0xea, 0x8a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11577 = { .name = "ecdsa_secp521r1_sha512_11577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11577_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11577_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11577_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 822 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11578 for ECDSA, tcId is 823 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11578_pubkey[] = { 0x00, 0x78, 0x26, 0x6f, 0x57, 0x9d, 0xca, 0x13, 0xea, 0x14, 0x33, 0x8c, 0x32, 0xa0, 0xd6, 0x81, 0x2d, 0xfd, 0x98, 0x72, 0x0a, 0x2a, 0x1e, 0xa2, 0xbf, 0xa4, 0x4b, 0xa2, 0xb3, 0xfe, 0x15, 0xc6, 0x30, 0x63, 0xc8, 0xcc, 0x79, 0x3c, 0x96, 0xee, 0x96, 0x0c, 0xf5, 0x37, 0xe3, 0x4a, 0xd0, 0xca, 0xfa, 0x46, 0x21, 0x92, 0xcf, 0x62, 0x85, 0xcb, 0x8c, 0x48, 0xd9, 0x39, 0x9b, 0xf5, 0x52, 0xd4, 0xfc, 0x6a, 0x01, 0x98, 0xbe, 0xde, 0x61, 0x26, 0x89, 0xd2, 0x28, 0x98, 0x41, 0xe4, 0x90, 0x5b, 0xe7, 0x66, 0xdb, 0xa8, 0xa0, 0x7b, 0x00, 0xa4, 0xd4, 0xa9, 0x6f, 0x9a, 0x10, 0x71, 0x60, 0xa9, 0xb2, 0x6e, 0xb3, 0x2f, 0xda, 0x79, 0x96, 0x34, 0xe0, 0x07, 0xee, 0x50, 0xe3, 0x4f, 0x6b, 0x25, 0x56, 0x0d, 0x7e, 0xed, 0x17, 0x28, 0xd4, 0xb5, 0xed, 0xc4, 0x53, 0x7d, 0xf4, 0xf5, 0x08, 0x91, 0x0a, 0xce, 0xf7, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_11578_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11578_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xae, 0x66, 0xbc, 0xd4, 0xca, 0xe3, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x39, 0x54, 0x21, 0x2f, 0x8b, 0xea, 0x57, 0x8d, 0x93, 0xe6, 0x85, 0xe5, 0xdb, 0xa3, 0x29, 0x81, 0x1b, 0x25, 0x42, 0xbb, 0x39, 0x82, 0x33, 0xe2, 0x94, 0x4b, 0xce, 0xb1, 0x92, 0x63, 0x32, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11578 = { .name = "ecdsa_secp521r1_sha512_11578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11578_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11578_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11578_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 823 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11579 for ECDSA, tcId is 824 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11579_pubkey[] = { 0x00, 0x5c, 0x58, 0x5c, 0x0f, 0xad, 0xec, 0x9a, 0x34, 0xfc, 0xc0, 0x80, 0x41, 0x54, 0xf1, 0x4c, 0xb5, 0x66, 0x8b, 0x99, 0x7f, 0x2e, 0x09, 0x6d, 0xa0, 0x97, 0x4b, 0x23, 0xe9, 0x90, 0x2e, 0x34, 0x99, 0x95, 0x60, 0x37, 0xa1, 0x78, 0xa5, 0x21, 0x08, 0x33, 0x50, 0x7e, 0x1e, 0x10, 0x8e, 0xe5, 0xcd, 0x99, 0x4f, 0x65, 0x9e, 0x3e, 0x8c, 0xaa, 0xde, 0x9d, 0x29, 0x58, 0xed, 0x48, 0xf6, 0x69, 0x91, 0xc3, 0x01, 0x28, 0x2c, 0x19, 0x69, 0xa6, 0x8e, 0x19, 0x0c, 0x61, 0x1e, 0xc0, 0x32, 0x23, 0x52, 0xef, 0x01, 0xc7, 0x50, 0xdc, 0x87, 0x46, 0x4a, 0xa0, 0x10, 0x24, 0xb2, 0xc1, 0x0c, 0x9d, 0x4b, 0x6a, 0x4a, 0x29, 0xf9, 0x9e, 0xa7, 0x40, 0xdb, 0x8d, 0xaf, 0xab, 0x65, 0xed, 0x75, 0x42, 0x36, 0x01, 0x65, 0x4d, 0x68, 0xf4, 0xdf, 0x64, 0x2e, 0x80, 0xa4, 0xe7, 0x9c, 0xa1, 0x2d, 0xfb, 0x0e, 0xe4, 0x24, 0x04, }; static const unsigned char ecdsa_secp521r1_sha512_11579_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11579_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x5c, 0xcd, 0x79, 0xa9, 0x95, 0xc6, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0x21, 0xba, 0xdb, 0x58, 0xa5, 0x18, 0xaf, 0xa8, 0x01, 0x0a, 0x82, 0xc0, 0x3c, 0xad, 0x31, 0xfa, 0x94, 0xbb, 0xbd, 0xe9, 0x68, 0x20, 0x16, 0x6d, 0x27, 0xe6, 0x44, 0x93, 0x8e, 0x00, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11579 = { .name = "ecdsa_secp521r1_sha512_11579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11579_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11579_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11579_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 824 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11580 for ECDSA, tcId is 825 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11580_pubkey[] = { 0x00, 0x91, 0x9d, 0x0c, 0xbf, 0xf7, 0x04, 0x3d, 0xe2, 0xeb, 0x02, 0x4e, 0x5e, 0xce, 0x7a, 0x59, 0xde, 0x14, 0xb1, 0xbd, 0x8b, 0x08, 0x42, 0x89, 0x58, 0x74, 0x30, 0x05, 0x6e, 0x35, 0x0e, 0x49, 0x13, 0x6b, 0xf8, 0x92, 0x75, 0x7b, 0x38, 0x97, 0x35, 0xe7, 0x75, 0xb3, 0x52, 0xd7, 0x74, 0x37, 0x6f, 0xe2, 0x9e, 0x62, 0xe4, 0x01, 0x52, 0x53, 0x50, 0x2e, 0x4c, 0xcc, 0x29, 0x9f, 0x25, 0x75, 0x76, 0x6a, 0x00, 0x40, 0x3c, 0xdf, 0xa4, 0x9f, 0xe4, 0x64, 0x77, 0x94, 0xd6, 0x79, 0xfd, 0x28, 0x89, 0xc3, 0xa6, 0xc2, 0xa6, 0x51, 0xeb, 0xb0, 0x4e, 0x4f, 0xee, 0x84, 0x68, 0xbd, 0x4c, 0x24, 0x0d, 0x8b, 0xa7, 0x22, 0x09, 0x7e, 0xae, 0xbd, 0x52, 0x47, 0xb4, 0xbe, 0xbc, 0x6e, 0x87, 0x3b, 0x27, 0x01, 0x1c, 0x49, 0xd1, 0xf8, 0xa1, 0x31, 0xea, 0x0f, 0x7a, 0x56, 0x7a, 0x8c, 0x2a, 0x7c, 0x17, 0x32, 0x89, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha512_11580_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11580_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe1, 0x8d, 0xcc, 0x11, 0xdf, 0xf7, 0x52, 0x62, 0x33, 0xd9, 0x23, 0xa0, 0xb2, 0x02, 0xcb, 0x29, 0xe7, 0x13, 0xf2, 0x2d, 0xe8, 0xbb, 0x6a, 0xb0, 0xa1, 0x28, 0x21, 0xc5, 0xab, 0xbe, 0x3f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11580 = { .name = "ecdsa_secp521r1_sha512_11580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11580_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11580_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11580_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 825 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11581 for ECDSA, tcId is 826 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11581_pubkey[] = { 0x01, 0x3c, 0x89, 0xb6, 0x8e, 0xe2, 0x16, 0x5c, 0xe5, 0x83, 0xe2, 0x9a, 0x6b, 0x46, 0x30, 0x3e, 0x51, 0xe4, 0x9b, 0x65, 0x83, 0xb9, 0x7f, 0xa4, 0x8f, 0xc9, 0x7f, 0x48, 0xca, 0x8a, 0xd0, 0xdd, 0xd4, 0xdd, 0xd0, 0x9d, 0xfa, 0xdf, 0xcf, 0x70, 0x95, 0xf0, 0xca, 0x18, 0x96, 0x34, 0x32, 0x84, 0x1c, 0x4e, 0xff, 0x91, 0x5f, 0x61, 0x38, 0xd0, 0xef, 0x59, 0x1e, 0x8a, 0xe4, 0xbe, 0x9f, 0x4a, 0x99, 0x75, 0x00, 0x10, 0x82, 0x9c, 0x29, 0x6b, 0x49, 0xe8, 0x3e, 0xa2, 0x20, 0x18, 0xbd, 0x1d, 0x4b, 0xe3, 0x0c, 0xc3, 0x3b, 0xfc, 0xe2, 0x05, 0xaa, 0xba, 0x54, 0x52, 0xe1, 0x04, 0x9f, 0x78, 0xbe, 0xde, 0x0b, 0x00, 0x3a, 0xe2, 0xc2, 0x7b, 0xaf, 0xc0, 0xcd, 0x7f, 0x7a, 0xc1, 0x12, 0x10, 0x89, 0x28, 0x8b, 0xfe, 0x37, 0xe2, 0x21, 0xe1, 0x8f, 0x5a, 0x4f, 0xdd, 0x7d, 0x73, 0xb3, 0xc0, 0xe5, 0xae, 0x6a, 0xd1, }; static const unsigned char ecdsa_secp521r1_sha512_11581_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11581_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x22, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xb9, 0xc4, 0xc3, 0xf7, 0x3c, 0xc8, 0x16, 0x14, 0x3f, 0xac, 0x34, 0x12, 0xb6, 0x2d, 0xe4, 0xc6, 0x3d, 0xb0, 0x8f, 0x8c, 0x57, 0xe4, 0xc5, 0x8c, 0x31, 0xf1, 0xb4, 0x57, 0xca, 0x5e, 0x57, 0xe2, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11581 = { .name = "ecdsa_secp521r1_sha512_11581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11581_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11581_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11581_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 826 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11582 for ECDSA, tcId is 827 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11582_pubkey[] = { 0x01, 0xd9, 0x1c, 0xa0, 0xff, 0x79, 0x07, 0x97, 0xa8, 0x3c, 0x3b, 0xe1, 0xc8, 0x24, 0x25, 0xaf, 0x91, 0x72, 0x08, 0x08, 0x7a, 0xa6, 0x73, 0x5e, 0xeb, 0xd3, 0x49, 0x84, 0x0f, 0xd9, 0xfb, 0xc3, 0xba, 0x59, 0x62, 0xee, 0x11, 0xf8, 0x04, 0x33, 0x38, 0xc1, 0xb3, 0xf3, 0x50, 0x41, 0x71, 0xfa, 0xa8, 0xe8, 0x44, 0x48, 0x80, 0xb6, 0xa5, 0xc5, 0x5a, 0xe6, 0x66, 0x7c, 0x52, 0xca, 0x07, 0xed, 0x3f, 0x79, 0x01, 0xf3, 0x47, 0x86, 0xc2, 0xdc, 0x71, 0x70, 0x4a, 0xc3, 0x46, 0x34, 0x10, 0x0a, 0x8e, 0x91, 0x2a, 0x7c, 0x40, 0x63, 0x78, 0x20, 0xe9, 0x7c, 0xd3, 0x2d, 0x57, 0x39, 0xd7, 0x03, 0x4b, 0xc7, 0xf6, 0x87, 0x4b, 0x90, 0xee, 0x94, 0xcc, 0xe0, 0x76, 0x62, 0xa3, 0xb2, 0x75, 0xb2, 0x3f, 0xa2, 0x0a, 0xe7, 0xfc, 0x83, 0x70, 0xd0, 0x5b, 0xae, 0xef, 0xe0, 0x28, 0x61, 0x68, 0xbd, 0x34, 0x17, 0xd1, 0x3f, }; static const unsigned char ecdsa_secp521r1_sha512_11582_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11582_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x05, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x29, 0x8e, 0xb5, 0x7e, 0x5a, 0xff, 0x93, 0x43, 0x59, 0x7a, 0x54, 0x2d, 0x31, 0x32, 0xf9, 0xe7, 0x34, 0xfd, 0xc3, 0x05, 0x12, 0x5e, 0x0e, 0xc1, 0x39, 0xc5, 0xf7, 0x80, 0xee, 0x8e, 0x8c, 0xb9, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11582 = { .name = "ecdsa_secp521r1_sha512_11582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11582_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11582_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11582_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 827 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11583 for ECDSA, tcId is 828 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11583_pubkey[] = { 0x00, 0x40, 0xaf, 0x2f, 0x4d, 0xdc, 0x1e, 0x52, 0x72, 0xb2, 0xae, 0xd3, 0x58, 0xb7, 0x77, 0x6f, 0x28, 0xf0, 0xdc, 0x99, 0x6f, 0x77, 0x2f, 0x95, 0x1f, 0x25, 0xd1, 0x2f, 0x9f, 0x8b, 0x0f, 0x3d, 0xe0, 0xd1, 0xc1, 0xd2, 0x9b, 0x63, 0xb7, 0x4a, 0x95, 0x0d, 0xb4, 0x74, 0x70, 0x1a, 0x34, 0xc8, 0xdd, 0x80, 0x3b, 0x59, 0x4e, 0x95, 0x7b, 0xd6, 0xa3, 0xeb, 0x7e, 0x93, 0x8b, 0xe4, 0x51, 0x1f, 0x4c, 0x79, 0x01, 0xc0, 0x1b, 0x42, 0xc9, 0x73, 0xd5, 0x5f, 0xb8, 0x99, 0x6e, 0x40, 0xee, 0x68, 0xe1, 0x12, 0xe5, 0x8a, 0x89, 0x2e, 0xab, 0x03, 0x2c, 0x5c, 0xdd, 0x6d, 0xb3, 0x9f, 0xb2, 0xc1, 0x16, 0x92, 0xe8, 0xb3, 0xce, 0xbd, 0xbb, 0xdc, 0x08, 0xfb, 0x3d, 0x95, 0xa2, 0xa7, 0x60, 0x70, 0x05, 0x08, 0x9f, 0x45, 0x2c, 0xde, 0xb9, 0x82, 0x1b, 0x5a, 0x11, 0x84, 0x01, 0xfc, 0xd0, 0x29, 0xc9, 0xad, 0x24, 0x84, }; static const unsigned char ecdsa_secp521r1_sha512_11583_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11583_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x44, 0x45, 0xe1, 0x06, 0x70, 0xed, 0x04, 0x37, 0xc9, 0xdb, 0x41, 0x25, 0xac, 0x41, 0x75, 0xfb, 0xd7, 0x0e, 0x9b, 0xd1, 0x79, 0x9a, 0x85, 0xf4, 0x4c, 0xa0, 0xa8, 0xe6, 0x1a, 0x33, 0x54, 0xe8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11583 = { .name = "ecdsa_secp521r1_sha512_11583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11583_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11583_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11583_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 828 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11584 for ECDSA, tcId is 829 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11584_pubkey[] = { 0x00, 0x69, 0xe0, 0xb4, 0x81, 0xdb, 0x99, 0xf8, 0x94, 0xf0, 0x78, 0x0f, 0x84, 0x71, 0x9d, 0xe1, 0x6a, 0xec, 0x59, 0x9c, 0x76, 0x5e, 0xba, 0x50, 0xb8, 0x61, 0x54, 0x77, 0x07, 0x3c, 0x32, 0xc2, 0x6a, 0xb1, 0xe4, 0xe7, 0xae, 0x5d, 0x1f, 0x95, 0x25, 0x13, 0xad, 0x32, 0x32, 0x25, 0x20, 0x3b, 0x4f, 0x0c, 0x65, 0xa2, 0x4a, 0x83, 0x68, 0xcd, 0x32, 0x2c, 0x23, 0xe9, 0x20, 0x49, 0xd1, 0x21, 0x74, 0x7c, 0x01, 0x77, 0x90, 0x1e, 0x37, 0x9e, 0x5e, 0x72, 0x4f, 0x41, 0x64, 0x87, 0xfe, 0xe7, 0x07, 0x7e, 0x6a, 0xea, 0x81, 0xe5, 0x25, 0x0c, 0xaa, 0x3c, 0xff, 0xbb, 0x7d, 0x1b, 0x22, 0x70, 0xaa, 0x75, 0x4b, 0x4f, 0xda, 0xe5, 0x1e, 0x44, 0x30, 0x50, 0xc3, 0x3c, 0x7b, 0x84, 0x21, 0xc7, 0xb3, 0xc5, 0x38, 0xc4, 0x9a, 0x67, 0x4a, 0x34, 0xe2, 0x27, 0x8c, 0x7e, 0xa0, 0x9d, 0x90, 0x0c, 0xf5, 0x85, 0x1d, 0xcf, }; static const unsigned char ecdsa_secp521r1_sha512_11584_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11584_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4f, 0xa6, 0xdb, 0xdc, 0xd9, 0x14, 0x84, 0xeb, 0xc0, 0xd5, 0x21, 0x56, 0x9e, 0x4c, 0x5e, 0xfb, 0x25, 0x91, 0x0b, 0x1f, 0x0d, 0xde, 0xf1, 0x9d, 0x04, 0x10, 0xc5, 0x0c, 0x73, 0xe6, 0x8d, 0xb9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11584 = { .name = "ecdsa_secp521r1_sha512_11584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11584_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11584_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11584_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 829 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11585 for ECDSA, tcId is 830 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11585_pubkey[] = { 0x00, 0xa9, 0xc2, 0xc5, 0x7f, 0x1a, 0x2e, 0x91, 0xc4, 0xee, 0x6b, 0x3d, 0x03, 0xc0, 0x92, 0x3b, 0x58, 0xd0, 0xec, 0x40, 0x9d, 0xf8, 0x8e, 0x4f, 0x30, 0x65, 0xba, 0x81, 0x48, 0xbf, 0xcf, 0x7f, 0x71, 0xce, 0xb2, 0xf1, 0xa1, 0xe9, 0x9d, 0xc8, 0x30, 0x08, 0x4b, 0x16, 0x99, 0x34, 0x54, 0xe7, 0xe1, 0x8d, 0xa2, 0x3c, 0x1a, 0x1e, 0x77, 0x19, 0x94, 0x91, 0xdb, 0x54, 0x18, 0xae, 0x28, 0xb7, 0x6c, 0x67, 0x00, 0x1c, 0x97, 0xee, 0x72, 0x04, 0x93, 0xb4, 0x27, 0xfd, 0x33, 0xa1, 0x3c, 0x8e, 0x87, 0xe8, 0x42, 0xec, 0x96, 0xe6, 0x90, 0x3c, 0xc9, 0x7c, 0xb0, 0xf6, 0x93, 0x40, 0x49, 0x8b, 0xfd, 0xc6, 0xf5, 0x43, 0xca, 0x80, 0x44, 0xec, 0xa5, 0x11, 0xea, 0xe7, 0xf0, 0xdd, 0x56, 0x2a, 0xac, 0x13, 0xf2, 0xc3, 0xf3, 0x56, 0xd2, 0x16, 0xc4, 0x2b, 0x73, 0xdd, 0xad, 0x47, 0x56, 0xd0, 0x32, 0xf6, 0x97, 0x90, }; static const unsigned char ecdsa_secp521r1_sha512_11585_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11585_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa4, 0xfc, 0x31, 0x32, 0x2e, 0x69, 0xda, 0x41, 0x16, 0x2a, 0x76, 0xab, 0xf3, 0xa1, 0xb4, 0x50, 0x7a, 0xe6, 0x60, 0x74, 0x63, 0x34, 0x46, 0xf2, 0x59, 0x66, 0x1a, 0x61, 0xc9, 0x3b, 0xe3, 0x0e, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11585 = { .name = "ecdsa_secp521r1_sha512_11585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11585_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11585_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11585_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 830 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11586 for ECDSA, tcId is 831 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11586_pubkey[] = { 0x01, 0xdf, 0x9a, 0x6e, 0xa5, 0xa8, 0x35, 0x7e, 0x82, 0x9e, 0x60, 0xbb, 0xa7, 0x11, 0xd1, 0x1f, 0x86, 0xa2, 0xdd, 0x28, 0xc5, 0xef, 0xdb, 0xf9, 0x68, 0xe9, 0x64, 0x6d, 0xfb, 0xb0, 0xd2, 0x7f, 0xa8, 0xbf, 0x4d, 0x81, 0xd4, 0x62, 0x55, 0xc1, 0x98, 0xdf, 0x4a, 0x27, 0xe6, 0xca, 0x31, 0x56, 0x90, 0xb1, 0xea, 0x68, 0x79, 0x52, 0x97, 0xc3, 0x65, 0x22, 0x9b, 0xd6, 0x95, 0x9b, 0x29, 0x64, 0xb4, 0xa3, 0x01, 0xaa, 0xb4, 0x5a, 0x21, 0x1e, 0x90, 0x12, 0xb2, 0xbc, 0x69, 0xab, 0xc0, 0x58, 0x8a, 0x0d, 0xe8, 0xe2, 0xc5, 0x93, 0x34, 0xcd, 0x38, 0xa3, 0xc2, 0x21, 0xde, 0xfa, 0xb7, 0x89, 0xf9, 0xcf, 0xb4, 0x60, 0x87, 0x94, 0xa8, 0xc5, 0x11, 0x50, 0xa7, 0x83, 0xe5, 0x95, 0x6a, 0x0a, 0x9f, 0x9a, 0x2f, 0x54, 0x7c, 0xde, 0x82, 0xd1, 0xb5, 0xd6, 0xcf, 0x51, 0xc5, 0x66, 0x60, 0x4b, 0x50, 0xbc, 0xf7, 0x8d, }; static const unsigned char ecdsa_secp521r1_sha512_11586_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11586_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11586 = { .name = "ecdsa_secp521r1_sha512_11586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11586_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11586_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11586_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 831 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11587 for ECDSA, tcId is 832 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11587_pubkey[] = { 0x01, 0xdf, 0x30, 0xef, 0x26, 0xe1, 0x60, 0x15, 0x3a, 0x14, 0x68, 0xa5, 0xdd, 0xd0, 0x6b, 0x02, 0xcc, 0xb1, 0x64, 0xdf, 0xe3, 0xac, 0x8c, 0x7f, 0x15, 0xf6, 0x8d, 0x4f, 0x19, 0x07, 0xef, 0x8b, 0xe9, 0xca, 0xdc, 0x6b, 0xe7, 0x05, 0xa2, 0x29, 0x44, 0x23, 0x40, 0x67, 0x0b, 0xd1, 0x18, 0x6e, 0xd8, 0x26, 0xd3, 0x9b, 0xa4, 0xc2, 0x31, 0x1b, 0x1d, 0xf7, 0x94, 0x00, 0x1a, 0x29, 0x3c, 0x02, 0x7c, 0xdf, 0x00, 0x13, 0x4f, 0x30, 0xe4, 0x43, 0x55, 0x04, 0x10, 0x2a, 0x54, 0xc3, 0x44, 0xed, 0x80, 0x00, 0x9c, 0xe1, 0xb9, 0xc5, 0x09, 0x2c, 0x40, 0xba, 0x32, 0xdf, 0x80, 0x53, 0x93, 0x6a, 0x8c, 0xd8, 0xa9, 0x41, 0xae, 0x52, 0x84, 0x50, 0x5f, 0xd1, 0xae, 0x0c, 0x53, 0x02, 0x08, 0x6c, 0x93, 0xa5, 0x82, 0x83, 0x0d, 0x24, 0xbb, 0x64, 0x62, 0x72, 0xdd, 0x9d, 0xd2, 0xf2, 0x15, 0x04, 0x25, 0xa2, 0xd7, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_11587_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11587_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x34, 0x6c, 0xc7, 0xd4, 0x83, 0x9b, 0x77, 0xf9, 0xf4, 0x87, 0xc7, 0xe7, 0xf2, 0x84, 0x1c, 0x5b, 0x7d, 0x05, 0xf9, 0x66, 0xf3, 0xbd, 0xe2, 0x8f, 0x1f, 0xa0, 0x80, 0xce, 0x40, 0x03, 0x7a, 0x74, 0xe3, 0x00, 0x1a, 0x2b, 0x00, 0xbd, 0x39, 0xee, 0x4c, 0x93, 0x07, 0x2e, 0x99, 0x63, 0x72, 0x49, 0x41, 0x38, 0x3c, 0xf0, 0x81, 0x2c, 0x02, 0xd1, 0xc8, 0x38, 0xad, 0x45, 0x02, 0xa1, 0x2c, 0x61, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11587 = { .name = "ecdsa_secp521r1_sha512_11587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11587_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11587_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11587_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 832 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11588 for ECDSA, tcId is 833 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11588_pubkey[] = { 0x01, 0x40, 0x0f, 0xa3, 0xbc, 0x87, 0x48, 0x2e, 0xc1, 0xba, 0x75, 0x34, 0x6a, 0x12, 0x9e, 0xc8, 0xf7, 0x94, 0x56, 0xe7, 0xd6, 0x34, 0x3b, 0x2a, 0x6b, 0xe2, 0x24, 0x90, 0x88, 0x4b, 0x8f, 0x8b, 0x89, 0x11, 0x4c, 0x0e, 0x5f, 0x95, 0x58, 0xd7, 0x62, 0x7a, 0xde, 0xae, 0x53, 0xff, 0x8c, 0xe3, 0x7b, 0xaf, 0x94, 0xb9, 0x9d, 0x04, 0xf7, 0x50, 0x98, 0xca, 0x8e, 0x3e, 0x77, 0xc6, 0xbe, 0x02, 0xbc, 0x3e, 0x01, 0x69, 0x0d, 0x77, 0x08, 0x06, 0xbd, 0xe9, 0xf4, 0xd2, 0x76, 0x02, 0x93, 0xab, 0xa6, 0x07, 0x60, 0x66, 0xf1, 0x76, 0x2e, 0x84, 0x48, 0xf0, 0xd0, 0x87, 0x24, 0xef, 0x31, 0x1f, 0xf7, 0x59, 0x6f, 0x35, 0xe8, 0xb6, 0xa9, 0x34, 0x6d, 0xe6, 0x5b, 0xea, 0x92, 0x4b, 0x9d, 0x30, 0xbb, 0x97, 0x2e, 0x3b, 0x38, 0x87, 0x81, 0x72, 0xf9, 0x04, 0x03, 0x78, 0xa0, 0xdb, 0x47, 0x29, 0x9e, 0x97, 0x98, 0x56, }; static const unsigned char ecdsa_secp521r1_sha512_11588_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11588_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0xa2, 0x4f, 0xbd, 0x60, 0x2f, 0xf7, 0x01, 0x2b, 0x6b, 0x00, 0xe9, 0xaa, 0x16, 0x83, 0xb4, 0x5b, 0xfa, 0x2d, 0x62, 0xdc, 0x76, 0x87, 0x37, 0xe8, 0xda, 0x92, 0xca, 0xd5, 0x2f, 0x06, 0x9e, 0xfb, 0xea, 0x52, 0x6a, 0xcc, 0x68, 0x09, 0x6f, 0xc0, 0xef, 0x99, 0x60, 0xc6, 0xb9, 0x89, 0xbf, 0x89, 0x22, 0xae, 0xa3, 0x8f, 0xd4, 0x63, 0xd0, 0x2c, 0x0e, 0x7c, 0x25, 0xe3, 0x36, 0xf3, 0x2b, 0x08, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11588 = { .name = "ecdsa_secp521r1_sha512_11588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11588_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11588_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11588_sig, .siglen = 132, .result = 1, .comment = "point duplication during verification, tcId is 833 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11589 for ECDSA, tcId is 834 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11589_pubkey[] = { 0x01, 0x40, 0x0f, 0xa3, 0xbc, 0x87, 0x48, 0x2e, 0xc1, 0xba, 0x75, 0x34, 0x6a, 0x12, 0x9e, 0xc8, 0xf7, 0x94, 0x56, 0xe7, 0xd6, 0x34, 0x3b, 0x2a, 0x6b, 0xe2, 0x24, 0x90, 0x88, 0x4b, 0x8f, 0x8b, 0x89, 0x11, 0x4c, 0x0e, 0x5f, 0x95, 0x58, 0xd7, 0x62, 0x7a, 0xde, 0xae, 0x53, 0xff, 0x8c, 0xe3, 0x7b, 0xaf, 0x94, 0xb9, 0x9d, 0x04, 0xf7, 0x50, 0x98, 0xca, 0x8e, 0x3e, 0x77, 0xc6, 0xbe, 0x02, 0xbc, 0x3e, 0x00, 0x96, 0xf2, 0x88, 0xf7, 0xf9, 0x42, 0x16, 0x0b, 0x2d, 0x89, 0xfd, 0x6c, 0x54, 0x59, 0xf8, 0x9f, 0x99, 0x0e, 0x89, 0xd1, 0x7b, 0xb7, 0x0f, 0x2f, 0x78, 0xdb, 0x10, 0xce, 0xe0, 0x08, 0xa6, 0x90, 0xca, 0x17, 0x49, 0x56, 0xcb, 0x92, 0x19, 0xa4, 0x15, 0x6d, 0xb4, 0x62, 0xcf, 0x44, 0x68, 0xd1, 0xc4, 0xc7, 0x78, 0x7e, 0x8d, 0x06, 0xfb, 0xfc, 0x87, 0x5f, 0x24, 0xb8, 0xd6, 0x61, 0x68, 0x67, 0xa9, }; static const unsigned char ecdsa_secp521r1_sha512_11589_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11589_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0xa2, 0x4f, 0xbd, 0x60, 0x2f, 0xf7, 0x01, 0x2b, 0x6b, 0x00, 0xe9, 0xaa, 0x16, 0x83, 0xb4, 0x5b, 0xfa, 0x2d, 0x62, 0xdc, 0x76, 0x87, 0x37, 0xe8, 0xda, 0x92, 0xca, 0xd5, 0x2f, 0x06, 0x9e, 0xfb, 0xea, 0x52, 0x6a, 0xcc, 0x68, 0x09, 0x6f, 0xc0, 0xef, 0x99, 0x60, 0xc6, 0xb9, 0x89, 0xbf, 0x89, 0x22, 0xae, 0xa3, 0x8f, 0xd4, 0x63, 0xd0, 0x2c, 0x0e, 0x7c, 0x25, 0xe3, 0x36, 0xf3, 0x2b, 0x08, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11589 = { .name = "ecdsa_secp521r1_sha512_11589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11589_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11589_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11589_sig, .siglen = 132, .result = -1, .comment = "duplication bug, tcId is 834 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11590 for ECDSA, tcId is 835 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11590_pubkey[] = { 0x00, 0x9a, 0x7b, 0x52, 0xe1, 0xdf, 0xf0, 0x18, 0x05, 0x81, 0x43, 0xce, 0xf1, 0x5c, 0x70, 0x2a, 0x7a, 0x09, 0x4e, 0x81, 0xb3, 0xe6, 0x65, 0xb5, 0x29, 0x87, 0xa4, 0xb0, 0x77, 0xd0, 0x0c, 0x7d, 0x1c, 0xc3, 0x98, 0xbd, 0xbe, 0x16, 0x7d, 0x2a, 0x3c, 0x1e, 0xd9, 0xda, 0xff, 0x20, 0xf7, 0x68, 0xac, 0xb3, 0xfd, 0x96, 0x2c, 0x06, 0xb1, 0xfc, 0x16, 0x59, 0x3a, 0x29, 0x17, 0x34, 0x08, 0x0f, 0x40, 0xc0, 0x00, 0x8e, 0x44, 0xb4, 0x44, 0xa3, 0xf6, 0x68, 0x03, 0xff, 0x38, 0x46, 0xf2, 0x26, 0xdc, 0xf7, 0x24, 0xec, 0x3c, 0xe6, 0x92, 0xe6, 0x7a, 0xc9, 0x91, 0xe0, 0x62, 0xae, 0x4a, 0x0e, 0x55, 0x5a, 0x1a, 0xd1, 0x84, 0x90, 0x5d, 0x32, 0x31, 0xc3, 0xf0, 0x58, 0xae, 0x40, 0xc2, 0x66, 0x54, 0x7b, 0x07, 0x6a, 0x7c, 0x84, 0x20, 0xd6, 0xa7, 0xe9, 0x4a, 0xa3, 0x00, 0x34, 0x2a, 0xee, 0xed, 0x1c, 0x5f, 0x7d, }; static const unsigned char ecdsa_secp521r1_sha512_11590_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11590_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11590 = { .name = "ecdsa_secp521r1_sha512_11590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11590_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11590_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11590_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 835 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11591 for ECDSA, tcId is 836 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11591_pubkey[] = { 0x00, 0xe2, 0x6f, 0xf0, 0x20, 0x0b, 0x73, 0x14, 0x50, 0xad, 0x17, 0xbb, 0x6f, 0xef, 0x1a, 0x6e, 0x38, 0x7a, 0x3e, 0xc4, 0x1c, 0xd4, 0xd8, 0x08, 0x23, 0x4a, 0x64, 0x27, 0x2e, 0x81, 0x9c, 0x22, 0x02, 0x66, 0xbe, 0x79, 0xc5, 0xad, 0xae, 0x37, 0x82, 0x54, 0x64, 0x9e, 0xc8, 0xcc, 0xa0, 0x5e, 0xc9, 0x28, 0x15, 0xb8, 0xb9, 0xeb, 0x3c, 0xec, 0x58, 0x69, 0x3a, 0xa6, 0xab, 0xd0, 0xba, 0x19, 0x1a, 0xbd, 0x01, 0xef, 0xc5, 0x36, 0xff, 0x70, 0x0f, 0x36, 0x11, 0xd3, 0x58, 0xe1, 0x82, 0x91, 0x47, 0x0d, 0x84, 0x54, 0x73, 0xb5, 0x75, 0x0b, 0x75, 0x25, 0xcd, 0x37, 0x09, 0x43, 0x2f, 0xf2, 0xfa, 0x87, 0x74, 0x3a, 0xf9, 0x28, 0x94, 0xa7, 0xa6, 0x46, 0xa8, 0x2f, 0xd2, 0x4d, 0x3f, 0x6e, 0x0c, 0xc4, 0x7a, 0xb6, 0x73, 0xd6, 0x86, 0x30, 0xd7, 0x70, 0xbd, 0x0d, 0x72, 0x4b, 0x0d, 0x60, 0xde, 0x6b, 0x51, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_11591_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11591_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11591 = { .name = "ecdsa_secp521r1_sha512_11591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11591_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11591_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11591_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 836 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11592 for ECDSA, tcId is 837 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11592_pubkey[] = { 0x01, 0x77, 0xd4, 0x13, 0x0b, 0xb0, 0xff, 0x55, 0x97, 0xf3, 0xa5, 0x1f, 0x5a, 0x00, 0xf9, 0x02, 0x13, 0xc1, 0xd8, 0x58, 0x53, 0x89, 0x82, 0x9d, 0xed, 0x63, 0x18, 0x09, 0xc1, 0x80, 0xa6, 0x65, 0x63, 0x64, 0x48, 0x31, 0x42, 0xae, 0xda, 0xd3, 0x14, 0x86, 0xff, 0x27, 0xa2, 0xaa, 0xab, 0xb0, 0xed, 0x30, 0x88, 0x96, 0x94, 0x3d, 0xdf, 0x96, 0x59, 0x0e, 0x16, 0x65, 0x45, 0x0b, 0xa3, 0x4c, 0x9e, 0x87, 0x00, 0x2b, 0xba, 0x60, 0x9a, 0xd8, 0xa4, 0xb4, 0xc8, 0x94, 0xd3, 0x03, 0xb3, 0x87, 0x2c, 0x4f, 0x63, 0x93, 0x9e, 0x19, 0xae, 0x91, 0xd2, 0x1b, 0x1a, 0x83, 0xcc, 0x22, 0x60, 0x70, 0x0f, 0x8e, 0x0e, 0xc1, 0x98, 0xa6, 0xf3, 0x8d, 0xa6, 0x2a, 0x6e, 0xa5, 0x72, 0x1e, 0x13, 0x64, 0xa5, 0xa7, 0xf0, 0x2f, 0x60, 0xf5, 0xe8, 0xde, 0x53, 0xa9, 0x7c, 0xe1, 0x1c, 0x86, 0x66, 0xd5, 0x88, 0xcb, 0xcd, 0xb3, }; static const unsigned char ecdsa_secp521r1_sha512_11592_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11592_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11592 = { .name = "ecdsa_secp521r1_sha512_11592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11592_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11592_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11592_sig, .siglen = 132, .result = -1, .comment = "comparison with point at infinity , tcId is 837 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11593 for ECDSA, tcId is 838 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11593_pubkey[] = { 0x00, 0x58, 0xd3, 0x1b, 0x9f, 0x3b, 0xa3, 0x4f, 0x38, 0x4f, 0x24, 0x78, 0xfd, 0x60, 0xd5, 0x4c, 0xfa, 0x69, 0x3b, 0xbc, 0x54, 0x72, 0x10, 0x28, 0x1c, 0x00, 0x09, 0x58, 0x9c, 0x02, 0x44, 0xba, 0x19, 0x58, 0xf2, 0xba, 0x91, 0xad, 0xf7, 0x6a, 0x29, 0x6c, 0x77, 0x56, 0x6e, 0x8e, 0xaa, 0xec, 0x13, 0x2b, 0x5c, 0xbd, 0x55, 0x5b, 0x13, 0xed, 0xec, 0x0c, 0x0f, 0x0a, 0xe0, 0x61, 0xe8, 0xc9, 0xa1, 0xb1, 0x01, 0x87, 0x28, 0xb0, 0xdd, 0x02, 0xd1, 0x31, 0xfc, 0x68, 0x05, 0xb7, 0x51, 0x68, 0xc9, 0x82, 0xa3, 0xfd, 0xb9, 0x3f, 0xe8, 0x5c, 0xa2, 0xb5, 0x30, 0xd1, 0xd8, 0x39, 0xcb, 0x53, 0x4c, 0x0e, 0xbc, 0x02, 0x1a, 0xe3, 0x72, 0x39, 0x26, 0xa3, 0x00, 0x27, 0x37, 0xb4, 0xb7, 0x96, 0xc1, 0x26, 0x88, 0xd7, 0x68, 0x83, 0x4d, 0x05, 0xe2, 0x51, 0x68, 0x18, 0x43, 0x8a, 0x38, 0xc0, 0x23, 0xb5, 0x2f, 0xcf, }; static const unsigned char ecdsa_secp521r1_sha512_11593_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11593_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11593 = { .name = "ecdsa_secp521r1_sha512_11593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11593_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11593_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11593_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 838 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11594 for ECDSA, tcId is 839 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11594_pubkey[] = { 0x00, 0x51, 0xf9, 0x81, 0x93, 0x80, 0x75, 0x5f, 0xab, 0x58, 0xf4, 0x96, 0xa8, 0x1f, 0x84, 0x65, 0x55, 0x4b, 0xcf, 0x90, 0x75, 0x54, 0xe9, 0x11, 0x58, 0x03, 0x66, 0x21, 0x52, 0x96, 0xd3, 0xa6, 0xd8, 0x1b, 0xa2, 0x2c, 0xec, 0x98, 0x6a, 0xe3, 0x30, 0x10, 0xd6, 0x41, 0x6b, 0xf1, 0xdb, 0x3b, 0x66, 0x37, 0xf6, 0x4d, 0x24, 0x0b, 0x6f, 0x4b, 0x5c, 0x7e, 0xa2, 0x29, 0xf8, 0x7e, 0x0f, 0xcd, 0x69, 0x9f, 0x01, 0x81, 0x24, 0x87, 0x27, 0x5e, 0x67, 0x2c, 0x36, 0x47, 0x12, 0x78, 0x3f, 0xe4, 0xa8, 0xa5, 0x37, 0x29, 0xe3, 0xfc, 0x90, 0x13, 0x8a, 0xfe, 0x5b, 0x86, 0x9c, 0x50, 0x68, 0xcb, 0x5d, 0x45, 0x54, 0xe1, 0xa7, 0xf1, 0xd8, 0xac, 0x9d, 0xd7, 0x8f, 0xbc, 0xa9, 0xac, 0xab, 0x4e, 0xa7, 0x91, 0x31, 0x1d, 0x66, 0xe0, 0x1e, 0x04, 0x82, 0x01, 0xb4, 0x0d, 0x9f, 0x38, 0x3d, 0x0a, 0x0b, 0x06, 0x8d, 0xaa, }; static const unsigned char ecdsa_secp521r1_sha512_11594_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11594_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11594 = { .name = "ecdsa_secp521r1_sha512_11594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11594_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11594_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11594_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 839 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11595 for ECDSA, tcId is 840 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11595_pubkey[] = { 0x01, 0xfc, 0xa5, 0xb6, 0xda, 0x4b, 0x96, 0x5f, 0x2c, 0x88, 0xb1, 0x4f, 0x7a, 0x58, 0x44, 0xce, 0x6f, 0x82, 0x76, 0xd2, 0xf5, 0xd0, 0x37, 0x39, 0xdb, 0x26, 0x6c, 0x4f, 0x5d, 0x85, 0xfc, 0x9b, 0x37, 0x19, 0xbe, 0x45, 0x3a, 0xc8, 0x00, 0x4f, 0x02, 0x7f, 0x71, 0x4c, 0xf0, 0x7a, 0xc1, 0xb2, 0x7c, 0x7b, 0x2a, 0x1e, 0xf9, 0x27, 0x05, 0xd2, 0xa5, 0x7b, 0xbd, 0xeb, 0xf5, 0x21, 0x64, 0x76, 0x15, 0xb6, 0x01, 0xa8, 0xda, 0xbc, 0xdb, 0xbf, 0x35, 0x10, 0xa5, 0x09, 0x24, 0x4d, 0xcd, 0x9a, 0xf2, 0x72, 0xab, 0xc5, 0x60, 0xb3, 0x0d, 0x87, 0x4e, 0x92, 0xad, 0x52, 0xc5, 0x2b, 0xa6, 0x4b, 0x19, 0x32, 0x5b, 0x25, 0x0e, 0x15, 0xe7, 0xeb, 0x5b, 0x04, 0xa1, 0x90, 0xeb, 0x65, 0x8e, 0x0c, 0xf6, 0x63, 0xf0, 0x26, 0x5c, 0x05, 0xbf, 0x4a, 0xb8, 0xeb, 0x96, 0x0a, 0x70, 0x84, 0xc5, 0x14, 0x25, 0x0d, 0xe7, 0x90, }; static const unsigned char ecdsa_secp521r1_sha512_11595_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11595_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11595 = { .name = "ecdsa_secp521r1_sha512_11595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11595_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11595_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11595_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 840 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11596 for ECDSA, tcId is 841 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11596_pubkey[] = { 0x00, 0x4c, 0x86, 0x43, 0xe5, 0x46, 0xa7, 0x1b, 0x93, 0x18, 0x5c, 0xa5, 0x83, 0xae, 0x50, 0x98, 0xc1, 0xe6, 0xc0, 0xb0, 0xd3, 0x3f, 0xc2, 0xd6, 0x18, 0x87, 0x0f, 0x94, 0x38, 0xb1, 0xc5, 0x95, 0xdb, 0xc8, 0x92, 0x00, 0x84, 0x56, 0x5f, 0x00, 0x74, 0xda, 0xfa, 0xca, 0x78, 0xba, 0xc2, 0x55, 0x8c, 0xa6, 0x23, 0xc2, 0x51, 0xf6, 0xd5, 0x30, 0x32, 0x8c, 0x27, 0x34, 0xa0, 0x41, 0x38, 0x21, 0xdf, 0xe5, 0x00, 0x1d, 0x8a, 0xc0, 0xa7, 0x25, 0x1b, 0x82, 0x04, 0x6f, 0x9c, 0xf2, 0xce, 0x67, 0x9e, 0x12, 0x77, 0x0f, 0x86, 0x81, 0xa4, 0x3f, 0x0e, 0x27, 0xe5, 0x53, 0x68, 0x0f, 0xc5, 0x23, 0x42, 0x95, 0xac, 0x24, 0x21, 0x2a, 0x25, 0xc8, 0x57, 0xe1, 0x52, 0x35, 0x06, 0x76, 0xe4, 0xe5, 0x2c, 0xa3, 0x04, 0x41, 0x81, 0xb6, 0x71, 0x10, 0xce, 0x01, 0x29, 0xfa, 0x0b, 0xdc, 0x15, 0xa4, 0xd5, 0xa7, 0x0e, 0x8e, }; static const unsigned char ecdsa_secp521r1_sha512_11596_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11596_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11596 = { .name = "ecdsa_secp521r1_sha512_11596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11596_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11596_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11596_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 841 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11597 for ECDSA, tcId is 842 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11597_pubkey[] = { 0x00, 0xa6, 0x59, 0x7c, 0x76, 0x95, 0x60, 0x46, 0xfc, 0xd0, 0x3c, 0x44, 0x4e, 0x9a, 0x4e, 0x13, 0xb9, 0xfb, 0x75, 0x1a, 0xc9, 0x1f, 0xb4, 0xfc, 0xba, 0x5f, 0xd3, 0x3a, 0xff, 0x61, 0xf3, 0x30, 0x5f, 0xa7, 0xb8, 0x31, 0xe5, 0x22, 0x7a, 0x5c, 0x04, 0x70, 0xe5, 0xe1, 0xfd, 0xe4, 0xa2, 0x5e, 0x53, 0x9f, 0xc2, 0x37, 0x73, 0xbb, 0x3a, 0x2c, 0xf4, 0x1e, 0xee, 0x0f, 0xc6, 0x78, 0xd0, 0x50, 0x70, 0x5a, 0x01, 0xf6, 0xf5, 0xae, 0x4a, 0x3b, 0x99, 0x44, 0x73, 0x67, 0x90, 0x74, 0xf6, 0xee, 0x65, 0x79, 0xc5, 0x00, 0x5e, 0x6f, 0xd8, 0x60, 0xcd, 0x4d, 0xd2, 0x9e, 0x07, 0xd4, 0x47, 0x58, 0x23, 0xaf, 0x6b, 0xe8, 0xaf, 0x5d, 0x41, 0x4b, 0xba, 0x47, 0xb4, 0x2e, 0x60, 0x1b, 0x97, 0x66, 0x0d, 0x10, 0xa6, 0x62, 0xe3, 0x7b, 0x51, 0x80, 0xe8, 0xe6, 0x9b, 0x33, 0xc5, 0xf7, 0xd7, 0x98, 0xda, 0x18, 0xbe, 0x49, }; static const unsigned char ecdsa_secp521r1_sha512_11597_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11597_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11597 = { .name = "ecdsa_secp521r1_sha512_11597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11597_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11597_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11597_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 842 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11598 for ECDSA, tcId is 843 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11598_pubkey[] = { 0x01, 0xa7, 0x2f, 0xa0, 0x46, 0xb1, 0x15, 0x75, 0x67, 0xb9, 0x91, 0x3a, 0x8a, 0x61, 0x10, 0x7f, 0xb4, 0xdd, 0x0e, 0x12, 0xb2, 0xb4, 0x06, 0xef, 0x21, 0x9b, 0x76, 0x7f, 0x93, 0x13, 0x0f, 0x39, 0xd5, 0x49, 0x98, 0x74, 0x5c, 0x51, 0xd1, 0xaf, 0xf5, 0x1b, 0x68, 0xd7, 0x8d, 0x34, 0x41, 0x8d, 0x61, 0x28, 0xbf, 0x93, 0xcc, 0xdb, 0xe1, 0x5f, 0x64, 0x76, 0x82, 0x4e, 0x0b, 0x31, 0x1b, 0xd2, 0x67, 0xad, 0x00, 0xf3, 0xe4, 0xd7, 0x19, 0x61, 0x05, 0x5a, 0x4c, 0x17, 0x63, 0xfc, 0x1e, 0xef, 0xa0, 0x80, 0x0f, 0x84, 0xac, 0x7c, 0x7b, 0xbc, 0x4f, 0xd8, 0xed, 0x77, 0x3b, 0x79, 0xb7, 0x0a, 0x99, 0xe0, 0x1d, 0x1a, 0x6c, 0x00, 0x96, 0x5e, 0xe1, 0xff, 0x66, 0x65, 0x09, 0x3a, 0xa4, 0x23, 0xf9, 0xd3, 0x04, 0x79, 0x2a, 0xf7, 0xa4, 0xf4, 0x14, 0x1c, 0x3a, 0x2a, 0x5d, 0x90, 0x05, 0x24, 0x95, 0x4a, 0x95, 0xd4, }; static const unsigned char ecdsa_secp521r1_sha512_11598_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11598_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11598 = { .name = "ecdsa_secp521r1_sha512_11598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11598_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11598_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11598_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 843 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11599 for ECDSA, tcId is 844 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11599_pubkey[] = { 0x00, 0xcf, 0x6d, 0xf1, 0xca, 0xf0, 0x2f, 0x90, 0x98, 0xbe, 0x50, 0x2e, 0x18, 0x7a, 0x92, 0x4f, 0xbe, 0x8c, 0xc1, 0x0f, 0x04, 0x22, 0xdd, 0x66, 0xbf, 0xd9, 0xf9, 0x15, 0x6c, 0xf2, 0x2d, 0x83, 0x0f, 0x08, 0x4b, 0x8d, 0xb3, 0xa4, 0xee, 0x58, 0x8f, 0xb1, 0x08, 0xba, 0x17, 0x81, 0x03, 0xa1, 0xaa, 0x45, 0xaa, 0x68, 0x7f, 0xe9, 0xb3, 0x01, 0x73, 0x79, 0x1b, 0x6e, 0xfe, 0xde, 0x4b, 0x60, 0x07, 0x74, 0x00, 0x35, 0x9b, 0x96, 0xe7, 0x24, 0xfe, 0x86, 0x9a, 0xbb, 0x95, 0xf4, 0x54, 0x9a, 0xf4, 0x0e, 0x13, 0xc6, 0x64, 0xd1, 0xa0, 0x09, 0xad, 0x02, 0x05, 0xb4, 0x54, 0xf1, 0xa4, 0x95, 0x58, 0x1a, 0x77, 0x0e, 0x5c, 0x82, 0xaa, 0x98, 0x4b, 0xd2, 0xa5, 0xcd, 0x2d, 0x35, 0x9a, 0xdf, 0x48, 0x7c, 0x39, 0x2e, 0x44, 0x10, 0x48, 0xfe, 0x60, 0xc2, 0x69, 0x6f, 0xfa, 0x95, 0x8c, 0x80, 0x7d, 0xe0, 0x97, 0xc9, }; static const unsigned char ecdsa_secp521r1_sha512_11599_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11599_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11599 = { .name = "ecdsa_secp521r1_sha512_11599", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11599_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11599_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11599_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 844 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11600 for ECDSA, tcId is 845 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11600_pubkey[] = { 0x00, 0x6f, 0x83, 0x9c, 0x4f, 0x23, 0xef, 0x04, 0x0b, 0x3a, 0x99, 0x91, 0xd4, 0x7c, 0x9c, 0x4d, 0xef, 0x6f, 0xdb, 0x0e, 0xcf, 0x6f, 0xc3, 0xb8, 0x29, 0x5d, 0x07, 0x72, 0x9b, 0xeb, 0x37, 0x50, 0x5c, 0xb4, 0xe9, 0xb1, 0x0d, 0x68, 0x97, 0x2f, 0x03, 0xb6, 0xef, 0x5d, 0x66, 0x96, 0x03, 0xc1, 0x51, 0x5e, 0x26, 0xcd, 0xf3, 0xa7, 0xff, 0x5d, 0x34, 0xcd, 0x4f, 0x70, 0xe7, 0xad, 0x4b, 0x94, 0xa2, 0x7b, 0x00, 0x54, 0xdf, 0x97, 0x78, 0x5d, 0xb8, 0x21, 0x6d, 0x9a, 0x5e, 0x21, 0x11, 0x8b, 0xc6, 0xcc, 0xa9, 0x59, 0x7d, 0x89, 0xc6, 0x6d, 0xb1, 0xdf, 0x90, 0xc9, 0xc8, 0x30, 0x3a, 0x49, 0x00, 0x1a, 0xb8, 0x54, 0xfd, 0x39, 0xd3, 0xc1, 0x8f, 0x2e, 0xb3, 0x73, 0x6a, 0x08, 0x27, 0xa7, 0x51, 0x01, 0x18, 0x70, 0xc1, 0xdb, 0x6a, 0x00, 0x13, 0xbd, 0xbf, 0x61, 0x75, 0xc2, 0xfb, 0xfe, 0x27, 0xd9, 0x1f, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_11600_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11600_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11600 = { .name = "ecdsa_secp521r1_sha512_11600", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11600_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11600_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11600_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 845 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11601 for ECDSA, tcId is 846 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11601_pubkey[] = { 0x01, 0x50, 0x24, 0x6d, 0xd4, 0x27, 0xca, 0xcc, 0xe6, 0x6e, 0x6d, 0xe5, 0x7a, 0x8c, 0xc0, 0xdf, 0xe2, 0x49, 0x96, 0x9f, 0x3f, 0xcf, 0x4e, 0xd6, 0x4d, 0xe3, 0x41, 0x33, 0x9e, 0xb9, 0x03, 0x31, 0xdb, 0x1f, 0x05, 0x47, 0x52, 0x92, 0xce, 0x9c, 0x29, 0x91, 0x6d, 0xa6, 0x5c, 0xea, 0xb6, 0xe6, 0x7e, 0xf2, 0xdc, 0xe1, 0x3b, 0x1e, 0x17, 0xb8, 0xd1, 0xa2, 0xde, 0x7f, 0xfc, 0x15, 0x04, 0xf3, 0xfd, 0x9d, 0x01, 0x92, 0x87, 0xf0, 0x91, 0x86, 0xd2, 0xa7, 0xef, 0xd6, 0xc4, 0xbc, 0x56, 0x90, 0x42, 0x9d, 0xc3, 0x1a, 0x17, 0xdd, 0xea, 0x53, 0xd4, 0xaa, 0x66, 0x2a, 0x58, 0xaa, 0x11, 0xfe, 0xb4, 0x08, 0x01, 0xdc, 0x9c, 0x75, 0x0c, 0x18, 0x7d, 0x43, 0x51, 0xf5, 0x99, 0x0c, 0xdd, 0x16, 0x71, 0xab, 0x90, 0x97, 0xba, 0xac, 0x05, 0x12, 0xb8, 0xca, 0x37, 0xf5, 0x57, 0xfe, 0xcb, 0xf5, 0x90, 0xfa, 0xfd, 0x6a, }; static const unsigned char ecdsa_secp521r1_sha512_11601_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11601_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11601 = { .name = "ecdsa_secp521r1_sha512_11601", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11601_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11601_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11601_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 846 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11602 for ECDSA, tcId is 847 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11602_pubkey[] = { 0x00, 0xd4, 0x2b, 0x27, 0x14, 0x45, 0x24, 0x1e, 0x4e, 0x51, 0x36, 0xcf, 0x8e, 0x5b, 0x70, 0x6e, 0xd4, 0x40, 0x32, 0x34, 0xcc, 0xa5, 0x48, 0x21, 0x73, 0x71, 0x69, 0xe9, 0xa6, 0x0d, 0xec, 0x54, 0x74, 0x5f, 0x1d, 0xc0, 0x77, 0xc5, 0xed, 0x9d, 0x60, 0xc2, 0xf5, 0x72, 0xc5, 0xe5, 0x74, 0x9f, 0x4f, 0x44, 0x31, 0x95, 0x25, 0x61, 0xc2, 0xa3, 0x0d, 0x9a, 0xc3, 0x12, 0xfb, 0xc3, 0xe5, 0xdc, 0x9d, 0xca, 0x01, 0x79, 0xb7, 0xa6, 0x3b, 0x67, 0xb3, 0x45, 0xaa, 0x86, 0x5d, 0xb1, 0x4d, 0x91, 0x47, 0xb3, 0x60, 0x94, 0xa1, 0x21, 0x64, 0x26, 0x3e, 0x58, 0x8e, 0x20, 0x99, 0x6a, 0xd8, 0x14, 0xb2, 0xf1, 0xff, 0xd9, 0x68, 0x17, 0x20, 0x30, 0x5b, 0x3b, 0x03, 0xf6, 0xb9, 0x48, 0xdb, 0x03, 0xa7, 0xd8, 0x9a, 0xf2, 0xef, 0xf7, 0xdb, 0xde, 0xa0, 0xc4, 0x11, 0x94, 0x0e, 0xd8, 0x0c, 0xce, 0x6d, 0x9b, 0x34, 0xc6, }; static const unsigned char ecdsa_secp521r1_sha512_11602_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11602_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11602 = { .name = "ecdsa_secp521r1_sha512_11602", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11602_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11602_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11602_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 847 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11603 for ECDSA, tcId is 848 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11603_pubkey[] = { 0x00, 0x70, 0x78, 0x0e, 0xa3, 0xc2, 0xe7, 0x3b, 0x24, 0x00, 0xf4, 0x4f, 0x48, 0xa3, 0x93, 0xb6, 0xc9, 0x01, 0x9c, 0xfa, 0x78, 0x8a, 0xa5, 0xe3, 0xd2, 0x72, 0xec, 0xbe, 0xc9, 0xdc, 0x0d, 0xbc, 0xb3, 0x51, 0x87, 0xd9, 0x57, 0x5e, 0x1f, 0x5f, 0x15, 0xba, 0xf2, 0x2f, 0x50, 0x2e, 0x3c, 0xa9, 0x28, 0x7c, 0x52, 0x24, 0xf5, 0x87, 0xfb, 0xaf, 0x1d, 0x88, 0x94, 0xa1, 0xc3, 0x3b, 0xd6, 0xd1, 0x2a, 0xa6, 0x00, 0x0e, 0x0b, 0xcd, 0x71, 0x84, 0x84, 0xed, 0x9f, 0x4d, 0xa4, 0xd7, 0x7a, 0x97, 0xf6, 0xb5, 0xa4, 0x2f, 0xf8, 0x2c, 0x0f, 0x25, 0xd3, 0x24, 0x1a, 0xb0, 0xb2, 0xa1, 0xde, 0x24, 0x19, 0xbe, 0xe0, 0x45, 0x45, 0xea, 0x15, 0x9d, 0x8e, 0x56, 0x4e, 0xc3, 0xbb, 0x91, 0x26, 0x7c, 0xec, 0x49, 0x2b, 0xfb, 0x9b, 0xfc, 0xab, 0xa8, 0xfd, 0xa4, 0xe8, 0x80, 0x51, 0xfc, 0xaf, 0xc9, 0x8a, 0x3f, 0x53, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_11603_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11603_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11603 = { .name = "ecdsa_secp521r1_sha512_11603", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11603_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11603_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11603_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 848 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11604 for ECDSA, tcId is 849 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11604_pubkey[] = { 0x01, 0xf9, 0x88, 0xe9, 0x27, 0x91, 0xf1, 0x4d, 0xdb, 0xff, 0x35, 0xea, 0xb1, 0xdd, 0xdd, 0x36, 0xf3, 0x16, 0x7b, 0x51, 0x4e, 0x95, 0xc7, 0x0d, 0xfe, 0x6e, 0x61, 0x6a, 0x77, 0xa0, 0x06, 0x47, 0x21, 0xf8, 0xae, 0xf8, 0x71, 0xd4, 0xc4, 0x82, 0x52, 0x4e, 0x56, 0x47, 0xff, 0x20, 0x20, 0x4f, 0xa4, 0xda, 0xfa, 0xea, 0xa8, 0x0d, 0xd3, 0xb7, 0xd9, 0x90, 0x07, 0xe5, 0x92, 0xae, 0x5b, 0x58, 0x99, 0x16, 0x00, 0x3a, 0x92, 0x99, 0xba, 0x5d, 0xfb, 0x59, 0x91, 0xc9, 0x4e, 0x88, 0x0f, 0xf6, 0xc6, 0x14, 0x95, 0x8c, 0xee, 0xe5, 0x5e, 0x2c, 0xe5, 0xb2, 0x2c, 0x0b, 0xfb, 0x0e, 0xb4, 0x37, 0x59, 0xb4, 0x84, 0x8c, 0xe0, 0x07, 0x48, 0x2e, 0x74, 0x21, 0xae, 0xf5, 0xc8, 0xda, 0x00, 0x0b, 0xa2, 0x24, 0xac, 0xb4, 0xdb, 0xbf, 0x73, 0x49, 0x8d, 0x73, 0x70, 0x5c, 0x06, 0xb6, 0x7f, 0x26, 0x7e, 0x5a, 0x8a, 0x10, }; static const unsigned char ecdsa_secp521r1_sha512_11604_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11604_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11604 = { .name = "ecdsa_secp521r1_sha512_11604", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11604_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11604_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11604_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 849 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11605 for ECDSA, tcId is 850 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11605_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_11605_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11605_sig[] = { 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11605 = { .name = "ecdsa_secp521r1_sha512_11605", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11605_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11605_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11605_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 850 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11606 for ECDSA, tcId is 851 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11606_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_11606_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11606_sig[] = { 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11606 = { .name = "ecdsa_secp521r1_sha512_11606", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11606_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11606_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11606_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 851 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11607 for ECDSA, tcId is 852 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11607_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_11607_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11607_sig[] = { 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11607 = { .name = "ecdsa_secp521r1_sha512_11607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11607_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11607_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11607_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 852 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11608 for ECDSA, tcId is 853 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11608_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_11608_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11608_sig[] = { 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11608 = { .name = "ecdsa_secp521r1_sha512_11608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11608_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11608_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11608_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 853 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11609 for ECDSA, tcId is 854 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11609_pubkey[] = { 0x87, 0x3b, 0x01, 0xc3, 0xfb, 0xd1, 0x85, 0x2f, 0xb7, 0x02, 0x9e, 0x57, 0x1e, 0xb0, 0xb6, 0xee, 0x7a, 0x2c, 0xd8, 0x5c, 0xdc, 0x33, 0x50, 0x33, 0x2b, 0xaf, 0x15, 0xb1, 0x9b, 0x78, 0x92, 0xcd, 0x82, 0x7f, 0xd4, 0x18, 0x15, 0x4a, 0x84, 0x36, 0xa2, 0xdb, 0xcf, 0xf0, 0xff, 0xde, 0x24, 0xcd, 0x14, 0x36, 0xe0, 0x81, 0x61, 0xa7, 0xc9, 0xc1, 0xab, 0xf9, 0x36, 0xc5, 0x33, 0xbf, 0x22, 0x96, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11609_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11609_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0x02, 0x7b, 0x80, 0x1f, 0xc4, 0x79, 0x30, 0x8f, 0xf5, 0x39, 0x9a, 0x88, 0x25, 0xfc, 0xcf, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11609 = { .name = "ecdsa_brainpoolp256r1_sha256_11609", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11609_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11609_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11609_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 854 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11610 for ECDSA, tcId is 855 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11610_pubkey[] = { 0x87, 0x3b, 0x01, 0xc3, 0xfb, 0xd1, 0x85, 0x2f, 0xb7, 0x02, 0x9e, 0x57, 0x1e, 0xb0, 0xb6, 0xee, 0x7a, 0x2c, 0xd8, 0x5c, 0xdc, 0x33, 0x50, 0x33, 0x2b, 0xaf, 0x15, 0xb1, 0x9b, 0x78, 0x92, 0xcd, 0x82, 0x7f, 0xd4, 0x18, 0x15, 0x4a, 0x84, 0x36, 0xa2, 0xdb, 0xcf, 0xf0, 0xff, 0xde, 0x24, 0xcd, 0x14, 0x36, 0xe0, 0x81, 0x61, 0xa7, 0xc9, 0xc1, 0xab, 0xf9, 0x36, 0xc5, 0x33, 0xbf, 0x22, 0x96, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11610_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11610_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11610 = { .name = "ecdsa_brainpoolp256r1_sha256_11610", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11610_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11610_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11610_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 855 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11611 for ECDSA, tcId is 856 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11611_pubkey[] = { 0x06, 0x54, 0xf9, 0x4b, 0x4e, 0xe2, 0x07, 0x94, 0xdb, 0x95, 0xa6, 0x4f, 0x56, 0xfc, 0x4d, 0x82, 0x31, 0x18, 0xc8, 0xa2, 0xdf, 0x77, 0xc2, 0x5d, 0xc4, 0x9a, 0xb6, 0x17, 0x2a, 0x43, 0xa5, 0xcb, 0x3e, 0x43, 0xee, 0xc1, 0xce, 0xab, 0x77, 0xf2, 0x27, 0xa8, 0x4f, 0xc0, 0xa1, 0x85, 0xee, 0x36, 0x88, 0x17, 0x41, 0x99, 0x00, 0x11, 0x77, 0x24, 0xed, 0xd4, 0x76, 0xfc, 0x17, 0xce, 0x0c, 0x99, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11611_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11611_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa3, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11611 = { .name = "ecdsa_brainpoolp256r1_sha256_11611", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11611_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11611_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11611_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 856 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11612 for ECDSA, tcId is 857 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11612_pubkey[] = { 0x0b, 0xdc, 0xb6, 0xc8, 0xfd, 0x14, 0x09, 0x18, 0x48, 0x69, 0xe2, 0x66, 0xc9, 0x7a, 0x59, 0x98, 0x2d, 0x9c, 0x36, 0x01, 0x14, 0xc1, 0xec, 0x5f, 0xd5, 0x40, 0x2b, 0xc6, 0x38, 0xfc, 0xb2, 0x7e, 0x05, 0x51, 0x32, 0xe5, 0xac, 0x12, 0x21, 0xbc, 0x4f, 0xc8, 0x91, 0x61, 0xd2, 0xd5, 0x6e, 0x11, 0x38, 0x80, 0x29, 0x2e, 0x4a, 0x3d, 0x4d, 0x9e, 0x43, 0x97, 0x9b, 0xb6, 0x6e, 0x5d, 0xc8, 0x19, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11612_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11612_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4a, 0xb8, 0xde, 0x0a, 0x51, 0x48, 0x1b, 0xc4, 0x57, 0x94, 0xb9, 0x24, 0x51, 0x8f, 0x2d, 0xd6, 0xac, 0x5c, 0xce, 0x31, 0xf3, 0x22, 0x8d, 0x62, 0x4c, 0x5a, 0x89, 0x6f, 0x79, 0xa2, 0xd6, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11612 = { .name = "ecdsa_brainpoolp256r1_sha256_11612", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11612_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11612_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11612_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 857 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11613 for ECDSA, tcId is 858 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11613_pubkey[] = { 0x65, 0x6b, 0xd0, 0x90, 0x3c, 0xcb, 0xd3, 0x35, 0xf6, 0x60, 0x90, 0xd6, 0xed, 0x2e, 0xd1, 0xa9, 0xa6, 0x05, 0x61, 0x42, 0xc5, 0xcc, 0xc5, 0x5c, 0x38, 0x83, 0x8a, 0x7f, 0x38, 0x47, 0xa4, 0x84, 0x5a, 0xe6, 0xdc, 0x9d, 0x86, 0xde, 0x0b, 0x6f, 0x33, 0x03, 0x44, 0xd9, 0xed, 0x16, 0x83, 0xb6, 0xec, 0x92, 0x18, 0x4d, 0x8c, 0xaf, 0x0c, 0x78, 0x37, 0xb1, 0xa8, 0x72, 0x41, 0x25, 0xd7, 0xc9, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11613_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11613_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x1b, 0x5f, 0x89, 0xf5, 0xbb, 0x74, 0xca, 0xa4, 0x2d, 0x36, 0xe6, 0x01, 0xa9, 0xf3, 0xc2, 0x0b, 0x4e, 0x6c, 0x91, 0xce, 0xb9, 0x8a, 0x52, 0xfb, 0xfa, 0x9f, 0x81, 0x78, 0x1b, 0x8a, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11613 = { .name = "ecdsa_brainpoolp256r1_sha256_11613", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11613_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11613_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11613_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 858 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11614 for ECDSA, tcId is 859 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11614_pubkey[] = { 0x37, 0x94, 0x53, 0x4e, 0xb2, 0xf5, 0x75, 0xd7, 0x94, 0x8f, 0xb3, 0x31, 0x55, 0x3b, 0x33, 0xae, 0xaf, 0x39, 0x5f, 0x66, 0x19, 0x3c, 0x6f, 0x9e, 0xab, 0xd5, 0xe1, 0xb2, 0xa3, 0x0b, 0x23, 0x0c, 0x9a, 0xfb, 0x63, 0xcb, 0x41, 0x72, 0x0f, 0x4e, 0x91, 0x5b, 0x63, 0x0d, 0x4b, 0x08, 0x8f, 0xb4, 0xfc, 0xea, 0x4d, 0x08, 0x49, 0xf3, 0xcc, 0x02, 0x3a, 0x6c, 0xa5, 0x93, 0x57, 0xf8, 0x5c, 0x36, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11614_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11614_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11614 = { .name = "ecdsa_brainpoolp256r1_sha256_11614", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11614_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11614_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11614_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 859 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11615 for ECDSA, tcId is 860 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11615_pubkey[] = { 0x38, 0x0e, 0xc8, 0x7c, 0xfe, 0x9d, 0xa6, 0x9e, 0x43, 0x83, 0x57, 0xd9, 0xf6, 0x8e, 0xd7, 0xba, 0x59, 0xd4, 0x3b, 0x16, 0x4b, 0x1c, 0xb7, 0xeb, 0xdb, 0x5a, 0x8b, 0xa2, 0x5f, 0xfb, 0x2a, 0xbf, 0x83, 0x2f, 0x8e, 0xfc, 0xe4, 0x6b, 0x1c, 0x8a, 0x5a, 0xc4, 0xb4, 0xc3, 0x96, 0x57, 0x43, 0x2e, 0x0b, 0xfc, 0xf7, 0x1b, 0xfc, 0xcb, 0x08, 0xe2, 0x36, 0x62, 0x0f, 0x44, 0x41, 0x48, 0x66, 0x5c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11615_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11615_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11615 = { .name = "ecdsa_brainpoolp256r1_sha256_11615", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11615_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11615_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11615_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 860 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11616 for ECDSA, tcId is 861 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11616_pubkey[] = { 0x1b, 0x93, 0x50, 0x58, 0x86, 0x09, 0x4d, 0x6e, 0x1d, 0xf0, 0x39, 0x30, 0x00, 0xb4, 0x1d, 0x09, 0x79, 0x06, 0xfd, 0xf0, 0x34, 0x35, 0xe7, 0x71, 0x08, 0x2d, 0xdb, 0x6e, 0x7d, 0x53, 0xb3, 0x47, 0x28, 0x5e, 0xcd, 0x2c, 0xb2, 0x54, 0xf5, 0x14, 0xc5, 0x66, 0xb3, 0xcf, 0xff, 0xc5, 0x0d, 0xb0, 0x3f, 0x25, 0x91, 0x55, 0xbe, 0x36, 0x8f, 0xe7, 0x13, 0xe8, 0xa8, 0x33, 0xa7, 0x47, 0xf9, 0x81, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11616_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11616_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11616 = { .name = "ecdsa_brainpoolp256r1_sha256_11616", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11616_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11616_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11616_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 861 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11617 for ECDSA, tcId is 862 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11617_pubkey[] = { 0x1b, 0x93, 0x50, 0x58, 0x86, 0x09, 0x4d, 0x6e, 0x1d, 0xf0, 0x39, 0x30, 0x00, 0xb4, 0x1d, 0x09, 0x79, 0x06, 0xfd, 0xf0, 0x34, 0x35, 0xe7, 0x71, 0x08, 0x2d, 0xdb, 0x6e, 0x7d, 0x53, 0xb3, 0x47, 0x28, 0x5e, 0xcd, 0x2c, 0xb2, 0x54, 0xf5, 0x14, 0xc5, 0x66, 0xb3, 0xcf, 0xff, 0xc5, 0x0d, 0xb0, 0x3f, 0x25, 0x91, 0x55, 0xbe, 0x36, 0x8f, 0xe7, 0x13, 0xe8, 0xa8, 0x33, 0xa7, 0x47, 0xf9, 0x81, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11617_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11617_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11617 = { .name = "ecdsa_brainpoolp256r1_sha256_11617", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11617_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11617_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11617_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 862 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11618 for ECDSA, tcId is 863 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11618_pubkey[] = { 0x03, 0xd1, 0xc0, 0xee, 0x40, 0x10, 0xa2, 0x7b, 0x1f, 0xad, 0xdc, 0xdf, 0x25, 0x6d, 0x0b, 0x6e, 0xb2, 0xa5, 0xbc, 0xc2, 0x56, 0xe6, 0x85, 0xd3, 0x79, 0xf5, 0xba, 0x20, 0xe9, 0x39, 0x19, 0xf4, 0x65, 0x8b, 0xe2, 0xa0, 0x6d, 0x5e, 0xb3, 0x20, 0x5c, 0x2d, 0xbd, 0xb6, 0x7d, 0x55, 0x41, 0x39, 0x13, 0xb5, 0x1d, 0x79, 0x4c, 0x59, 0xe9, 0x1d, 0x3e, 0x5b, 0x78, 0x3d, 0x53, 0x5e, 0xf5, 0xbc, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11618_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11618_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x5b, 0x2d, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11618 = { .name = "ecdsa_brainpoolp256r1_sha256_11618", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11618_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11618_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11618_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 863 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11619 for ECDSA, tcId is 864 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11619_pubkey[] = { 0x67, 0x7c, 0xcc, 0xa2, 0x57, 0xfb, 0x67, 0x30, 0xe7, 0x44, 0xde, 0x50, 0x13, 0xbf, 0x98, 0xea, 0x80, 0x03, 0xe3, 0x20, 0xb8, 0xca, 0x70, 0x88, 0x8a, 0x35, 0x1a, 0xa7, 0xb0, 0xf8, 0x90, 0x6f, 0x54, 0xca, 0x26, 0x6a, 0x52, 0x67, 0x50, 0x3e, 0x1a, 0xa9, 0x0c, 0x74, 0xa6, 0x70, 0x06, 0xbf, 0xf1, 0xa8, 0x46, 0x1c, 0xe9, 0x52, 0x6b, 0xf2, 0x66, 0xb0, 0x2b, 0x39, 0x44, 0x8a, 0x02, 0x19, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11619_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11619_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x28, 0x27, 0x37, 0x05, 0x84, 0xfd, 0xeb, 0x9f, 0x5d, 0x5a, 0x9f, 0xb9, 0x57, 0x9a, 0x09, 0x39, 0x0e, 0xfb, 0x6f, 0x9d, 0x99, 0xb6, 0x4f, 0xc1, 0x88, 0xd8, 0xbc, 0xe0, 0x5c, 0x2d, 0x4e, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11619 = { .name = "ecdsa_brainpoolp256r1_sha256_11619", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11619_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11619_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11619_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 864 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11620 for ECDSA, tcId is 865 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11620_pubkey[] = { 0x99, 0xa4, 0xb3, 0xff, 0xdd, 0xa6, 0x80, 0x96, 0x3d, 0x6a, 0x6f, 0x29, 0xd9, 0x5e, 0xb6, 0xc1, 0xc6, 0x53, 0x65, 0x54, 0x37, 0xe0, 0x28, 0xb9, 0x2d, 0x8f, 0xa9, 0x0b, 0x6e, 0x31, 0x64, 0x9c, 0x28, 0xcb, 0xae, 0x0a, 0x35, 0xde, 0x3a, 0xd1, 0x0e, 0x46, 0x2c, 0x68, 0x54, 0xe9, 0x5d, 0xfb, 0x5d, 0xfd, 0xe9, 0xcb, 0x05, 0x75, 0x07, 0x5c, 0x20, 0x4c, 0xcf, 0x2e, 0xdd, 0xdb, 0xf7, 0x25, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11620_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11620_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xce, 0x49, 0x37, 0xa0, 0x87, 0x73, 0x1d, 0xf4, 0xfe, 0xbc, 0x2c, 0x3a, 0x81, 0xdd, 0xfb, 0xab, 0x5d, 0xc3, 0xaf, 0x95, 0x08, 0x17, 0xf4, 0x1b, 0x59, 0x0d, 0x15, 0x6e, 0xd4, 0x09, 0xad, 0x28, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11620 = { .name = "ecdsa_brainpoolp256r1_sha256_11620", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11620_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11620_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11620_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 865 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11621 for ECDSA, tcId is 866 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11621_pubkey[] = { 0x63, 0xae, 0xb7, 0xa8, 0xc9, 0x9b, 0x56, 0x99, 0x22, 0x29, 0x0c, 0xfa, 0xf2, 0x25, 0xe1, 0x35, 0xc3, 0x11, 0x02, 0x61, 0x98, 0x76, 0x05, 0xd2, 0x2e, 0xdf, 0x37, 0xa3, 0xc6, 0x67, 0x2d, 0x34, 0x1a, 0xca, 0xbe, 0x5a, 0x64, 0xf0, 0xc9, 0xba, 0x20, 0xc6, 0x65, 0x38, 0x1a, 0xd2, 0x4d, 0x27, 0x53, 0x47, 0xab, 0x6f, 0x54, 0xfb, 0x99, 0x2d, 0x0d, 0x3f, 0x43, 0x6c, 0x19, 0xd0, 0x5c, 0xee, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11621_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11621_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfb, 0x91, 0x82, 0x7d, 0x03, 0xbb, 0x6d, 0xac, 0x31, 0x94, 0x0b, 0xa5, 0x6e, 0xd8, 0x84, 0x89, 0x04, 0x8f, 0xf1, 0x73, 0xf0, 0xbf, 0x20, 0xca, 0xb2, 0x0d, 0xcc, 0x08, 0x6f, 0xca, 0x37, 0xf2, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11621 = { .name = "ecdsa_brainpoolp256r1_sha256_11621", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11621_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11621_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11621_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 866 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11622 for ECDSA, tcId is 867 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11622_pubkey[] = { 0x8e, 0x2f, 0xdf, 0x56, 0x06, 0x03, 0x0d, 0x4c, 0x02, 0x11, 0x7b, 0x66, 0x42, 0x69, 0x9c, 0xd1, 0x0b, 0x9f, 0x79, 0x1b, 0xaf, 0xa6, 0x95, 0x2a, 0x66, 0x35, 0x93, 0x9a, 0xa5, 0x77, 0xff, 0x3a, 0x35, 0x0c, 0xd8, 0xe9, 0x87, 0x25, 0x75, 0x6c, 0xd3, 0x84, 0x93, 0x7e, 0x05, 0x99, 0xf3, 0x8e, 0xe7, 0xcc, 0x16, 0xe8, 0x54, 0x74, 0xc9, 0xbc, 0x6d, 0x6b, 0xbc, 0xb4, 0xa6, 0xae, 0x3a, 0x82, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11622_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11622_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11622 = { .name = "ecdsa_brainpoolp256r1_sha256_11622", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11622_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11622_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11622_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 867 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11623 for ECDSA, tcId is 868 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11623_pubkey[] = { 0x88, 0x54, 0xb4, 0x15, 0xe4, 0xe3, 0x4b, 0xb3, 0xe1, 0x9a, 0x1c, 0x4b, 0xda, 0x67, 0x26, 0x0f, 0x05, 0x18, 0xc3, 0x20, 0x69, 0x6b, 0x6e, 0x63, 0x93, 0xb3, 0xc7, 0x82, 0x3d, 0x8a, 0x30, 0xa7, 0x0e, 0x59, 0x44, 0x03, 0x22, 0x5c, 0x63, 0xda, 0x51, 0x38, 0xeb, 0x90, 0x67, 0xe8, 0x6f, 0x63, 0x8d, 0x91, 0x79, 0x3b, 0x64, 0x10, 0x68, 0x8c, 0x34, 0xcd, 0xf6, 0xc8, 0xd2, 0xac, 0x60, 0x1a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11623_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11623_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11623 = { .name = "ecdsa_brainpoolp256r1_sha256_11623", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11623_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11623_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11623_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 868 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11624 for ECDSA, tcId is 869 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11624_pubkey[] = { 0x59, 0x5f, 0x3b, 0xef, 0xe9, 0xac, 0x34, 0x76, 0x3e, 0xb9, 0x9d, 0x6a, 0x95, 0xf8, 0xb4, 0x5a, 0x94, 0x08, 0x44, 0x06, 0xf1, 0x65, 0xea, 0x57, 0x81, 0xcc, 0xd3, 0x9d, 0x92, 0x3b, 0x61, 0x23, 0x25, 0x08, 0xba, 0xda, 0xf6, 0x1a, 0xe9, 0xc3, 0x77, 0x42, 0xf0, 0x3b, 0x8f, 0xbf, 0x48, 0x41, 0x3e, 0xf9, 0xc5, 0x12, 0xcf, 0xa6, 0x3a, 0x29, 0x9c, 0x1b, 0xea, 0x7d, 0x6a, 0x7c, 0xc5, 0x83, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11624_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11624_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x28, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11624 = { .name = "ecdsa_brainpoolp256r1_sha256_11624", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11624_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11624_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11624_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 869 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11625 for ECDSA, tcId is 870 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11625_pubkey[] = { 0x0f, 0x4c, 0x30, 0xd0, 0x09, 0x9f, 0x1d, 0x1c, 0xe7, 0x85, 0x71, 0x47, 0x07, 0xf1, 0x01, 0x72, 0xc0, 0x88, 0x1c, 0xd1, 0xae, 0xc5, 0xda, 0xf4, 0xf8, 0x49, 0x46, 0x26, 0x88, 0x24, 0x8f, 0xa0, 0x0b, 0xe7, 0x81, 0x42, 0xc4, 0x53, 0x86, 0x17, 0x83, 0x0d, 0xcd, 0x2e, 0xf8, 0x14, 0xcb, 0xe3, 0x3c, 0x7d, 0xcf, 0x5c, 0xf6, 0xfb, 0x95, 0x21, 0x7f, 0x7a, 0x76, 0xd1, 0x18, 0xe0, 0x29, 0xed, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11625_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11625_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11625 = { .name = "ecdsa_brainpoolp256r1_sha256_11625", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11625_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11625_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11625_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 870 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11626 for ECDSA, tcId is 871 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11626_pubkey[] = { 0x0f, 0x4c, 0x30, 0xd0, 0x09, 0x9f, 0x1d, 0x1c, 0xe7, 0x85, 0x71, 0x47, 0x07, 0xf1, 0x01, 0x72, 0xc0, 0x88, 0x1c, 0xd1, 0xae, 0xc5, 0xda, 0xf4, 0xf8, 0x49, 0x46, 0x26, 0x88, 0x24, 0x8f, 0xa0, 0x0b, 0xe7, 0x81, 0x42, 0xc4, 0x53, 0x86, 0x17, 0x83, 0x0d, 0xcd, 0x2e, 0xf8, 0x14, 0xcb, 0xe3, 0x3c, 0x7d, 0xcf, 0x5c, 0xf6, 0xfb, 0x95, 0x21, 0x7f, 0x7a, 0x76, 0xd1, 0x18, 0xe0, 0x29, 0xed, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11626_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11626_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11626 = { .name = "ecdsa_brainpoolp256r1_sha256_11626", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11626_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11626_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11626_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 871 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11627 for ECDSA, tcId is 872 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11627_pubkey[] = { 0x58, 0x66, 0xd5, 0x3f, 0x9e, 0x14, 0xbb, 0x54, 0x78, 0x41, 0x36, 0x19, 0x24, 0x19, 0x56, 0x8c, 0x06, 0x0f, 0x30, 0xd7, 0xdf, 0xd7, 0x71, 0xf5, 0xa3, 0xe4, 0xd6, 0xa0, 0xe8, 0xc2, 0x59, 0x7c, 0x43, 0xa7, 0x73, 0xb9, 0x4d, 0x7d, 0x0a, 0x70, 0x6b, 0x9b, 0xa3, 0x48, 0x83, 0x89, 0x70, 0x5e, 0x29, 0xd6, 0x80, 0x9f, 0x93, 0xa9, 0x2f, 0xa6, 0x97, 0x86, 0x65, 0x73, 0x64, 0x12, 0x92, 0x02, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11627_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11627_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11627 = { .name = "ecdsa_brainpoolp256r1_sha256_11627", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11627_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11627_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11627_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 872 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11628 for ECDSA, tcId is 873 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11628_pubkey[] = { 0x4f, 0xd6, 0xd5, 0x78, 0x51, 0xff, 0x3e, 0xbd, 0x9e, 0x0d, 0xaf, 0xf3, 0x12, 0xde, 0x27, 0x2d, 0x8b, 0x08, 0xd6, 0x7c, 0xc7, 0x4e, 0x65, 0x90, 0x20, 0x50, 0xda, 0x94, 0xa1, 0x32, 0xfc, 0xea, 0x83, 0x4f, 0x02, 0xdc, 0xaa, 0xcd, 0x5e, 0x59, 0xea, 0x09, 0xe5, 0x84, 0x42, 0xe3, 0x2f, 0xca, 0x5c, 0x03, 0x73, 0xa5, 0x4a, 0xfe, 0x0e, 0x72, 0xf7, 0x28, 0x9b, 0x04, 0xf4, 0x25, 0x1b, 0x81, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11628_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11628_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11628 = { .name = "ecdsa_brainpoolp256r1_sha256_11628", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11628_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11628_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11628_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 873 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11629 for ECDSA, tcId is 874 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11629_pubkey[] = { 0x94, 0x51, 0x1a, 0x49, 0x5f, 0xb3, 0x64, 0x69, 0x95, 0x28, 0xb5, 0xae, 0xc8, 0x58, 0xf8, 0xd8, 0xa1, 0x84, 0x37, 0x6d, 0xb1, 0x7f, 0x61, 0xec, 0x1d, 0x82, 0x48, 0x0a, 0xdb, 0xf1, 0xc1, 0x79, 0x41, 0xb3, 0xc9, 0x76, 0x0b, 0x92, 0xfb, 0x46, 0x7a, 0xe1, 0xd5, 0x95, 0x52, 0x7d, 0xd8, 0x14, 0x4a, 0x29, 0xdd, 0xcc, 0x2c, 0x6c, 0x4b, 0xf0, 0x98, 0x2f, 0x60, 0xd8, 0xa1, 0x2b, 0x49, 0x3e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11629_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11629_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11629 = { .name = "ecdsa_brainpoolp256r1_sha256_11629", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11629_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11629_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11629_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 874 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11630 for ECDSA, tcId is 875 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11630_pubkey[] = { 0xa6, 0x0f, 0x67, 0x98, 0x89, 0x36, 0xeb, 0x09, 0x51, 0x65, 0x48, 0x35, 0x5a, 0x67, 0x31, 0xe0, 0x4c, 0x62, 0xf2, 0xfb, 0x5b, 0xe9, 0x96, 0x68, 0xa8, 0x19, 0xd3, 0xf1, 0xed, 0xcf, 0xe8, 0xac, 0x69, 0x1e, 0xc9, 0x42, 0xaa, 0xa9, 0x05, 0x70, 0xc5, 0xa6, 0x1c, 0x3b, 0xdb, 0x6c, 0x01, 0x08, 0x58, 0x29, 0xe6, 0x3b, 0x87, 0xec, 0xb5, 0xe8, 0x0f, 0xa9, 0xd3, 0x05, 0xb1, 0xf3, 0xe1, 0x51, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11630_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11630_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11630 = { .name = "ecdsa_brainpoolp256r1_sha256_11630", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11630_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11630_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11630_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 875 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11631 for ECDSA, tcId is 876 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11631_pubkey[] = { 0xa6, 0x8b, 0xaf, 0x33, 0x67, 0xbc, 0x5d, 0x28, 0xf2, 0x4e, 0xaa, 0x74, 0x0c, 0xcb, 0x4f, 0x11, 0x5f, 0x02, 0xe8, 0xe0, 0xd8, 0x6d, 0x38, 0x9d, 0x2f, 0x06, 0x79, 0xd5, 0x22, 0xa2, 0x1f, 0x3b, 0x57, 0xd3, 0x31, 0x28, 0x9f, 0xaf, 0x2d, 0xc5, 0x0f, 0x95, 0xd4, 0xe2, 0xcb, 0xfa, 0x7a, 0xce, 0x61, 0xc1, 0xfb, 0xbe, 0x73, 0xc6, 0x28, 0xd7, 0x8e, 0x78, 0xf1, 0xed, 0x57, 0xe9, 0x82, 0xe5, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11631_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11631_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11631 = { .name = "ecdsa_brainpoolp256r1_sha256_11631", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11631_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11631_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11631_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 876 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11632 for ECDSA, tcId is 877 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11632_pubkey[] = { 0x0f, 0xd5, 0xca, 0x98, 0x14, 0xb5, 0xdd, 0x0b, 0xb7, 0xdd, 0xe7, 0x66, 0x09, 0x78, 0x5b, 0xc6, 0x1e, 0xd9, 0x49, 0x0f, 0xff, 0xf8, 0xe6, 0x7d, 0x4d, 0x8c, 0xb6, 0x7d, 0xe0, 0x98, 0x2d, 0xdd, 0xa6, 0x1b, 0x90, 0xdf, 0x51, 0xdb, 0x44, 0xaf, 0x8a, 0xdb, 0xbf, 0xd5, 0x24, 0xb7, 0xeb, 0x3d, 0xd1, 0xeb, 0x65, 0x2d, 0x13, 0xdd, 0x0a, 0x2e, 0x17, 0x04, 0x9b, 0xed, 0x1a, 0xd2, 0x0b, 0x23, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11632_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11632_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11632 = { .name = "ecdsa_brainpoolp256r1_sha256_11632", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11632_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11632_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11632_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 877 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11633 for ECDSA, tcId is 878 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11633_pubkey[] = { 0x72, 0x89, 0xe1, 0x35, 0x55, 0xea, 0x56, 0x8f, 0xe8, 0x91, 0x51, 0xd6, 0x1e, 0x5c, 0x07, 0x2f, 0x4b, 0x35, 0x89, 0x76, 0x00, 0xae, 0x7b, 0xf9, 0xe2, 0xb2, 0xaa, 0x0e, 0x5f, 0xb3, 0xf0, 0xf3, 0x3e, 0x31, 0x48, 0xae, 0x84, 0xca, 0x2d, 0x0b, 0xf8, 0xc7, 0x71, 0xbf, 0x33, 0x0b, 0xe0, 0x74, 0xb3, 0x52, 0x4d, 0x7b, 0xf0, 0xd2, 0xbe, 0xa2, 0xf5, 0xae, 0x3e, 0xc1, 0x01, 0xcc, 0xa1, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11633_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11633_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x71, 0x52, 0x3a, 0x92, 0x6b, 0xf4, 0x71, 0x28, 0x29, 0x99, 0x5c, 0x60, 0x69, 0x02, 0x5e, 0x4b, 0xb2, 0xd0, 0xfc, 0x6d, 0x23, 0x96, 0x6f, 0x4f, 0xb5, 0x69, 0x5f, 0x01, 0xba, 0x30, 0x39, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11633 = { .name = "ecdsa_brainpoolp256r1_sha256_11633", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11633_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11633_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11633_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 878 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11634 for ECDSA, tcId is 879 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11634_pubkey[] = { 0x0e, 0x5c, 0x98, 0x5b, 0x55, 0x81, 0x57, 0xeb, 0x8e, 0xa7, 0x17, 0xed, 0x96, 0x62, 0xba, 0x52, 0x1d, 0x3c, 0x54, 0x16, 0x4d, 0x7f, 0xe2, 0xce, 0x3a, 0xaf, 0xf1, 0xd3, 0x95, 0xf9, 0x0c, 0x07, 0x6d, 0xd5, 0xd9, 0xad, 0x04, 0x9a, 0x53, 0x7b, 0x68, 0x49, 0x74, 0x29, 0x7a, 0x1f, 0x91, 0xea, 0xdb, 0x3b, 0x7a, 0x97, 0x16, 0x4e, 0xc3, 0x81, 0xef, 0xbb, 0x3b, 0x05, 0x26, 0x66, 0x10, 0x47, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11634_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11634_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x54, 0x63, 0x56, 0x33, 0x12, 0x76, 0x65, 0xed, 0xff, 0x49, 0x96, 0xc3, 0x23, 0x2c, 0x05, 0x89, 0xe4, 0x4a, 0xcc, 0xe6, 0xfb, 0x98, 0x98, 0x85, 0xa1, 0xb9, 0x2d, 0xa5, 0x8c, 0xd4, 0x3c, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11634 = { .name = "ecdsa_brainpoolp256r1_sha256_11634", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11634_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11634_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11634_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 879 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11635 for ECDSA, tcId is 880 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11635_pubkey[] = { 0x38, 0x9a, 0x0c, 0x6c, 0x57, 0x39, 0x7a, 0x0e, 0x5d, 0xd0, 0xdc, 0x23, 0x8f, 0xf2, 0x53, 0xa8, 0x2d, 0x30, 0x73, 0xb4, 0xe3, 0xfc, 0xa8, 0xb5, 0xff, 0xb5, 0xf2, 0x05, 0xc3, 0x46, 0x51, 0xd3, 0x08, 0xa5, 0x35, 0x73, 0x0a, 0x69, 0x87, 0xdf, 0x97, 0x17, 0x11, 0x1c, 0x82, 0x72, 0xfa, 0xd3, 0xac, 0x1f, 0xfb, 0x5f, 0xeb, 0x5e, 0x04, 0x54, 0x16, 0x82, 0xc9, 0x44, 0x08, 0x63, 0xf4, 0x25, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11635_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11635_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x02, 0x8e, 0xb8, 0xf6, 0xfb, 0x8e, 0x5a, 0x38, 0x33, 0x70, 0x0b, 0x56, 0x87, 0xf1, 0x79, 0x48, 0xbe, 0xee, 0xcf, 0x7c, 0x73, 0xaa, 0x9c, 0x14, 0x43, 0x0e, 0xf3, 0xca, 0x01, 0x60, 0x20, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11635 = { .name = "ecdsa_brainpoolp256r1_sha256_11635", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11635_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11635_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11635_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 880 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11636 for ECDSA, tcId is 881 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11636_pubkey[] = { 0x18, 0x17, 0xc8, 0x91, 0x43, 0x21, 0xf6, 0xd4, 0xde, 0xa4, 0x93, 0x6b, 0x11, 0x50, 0x05, 0x55, 0xe5, 0x7c, 0x20, 0x65, 0x1d, 0xb6, 0xb4, 0x78, 0x76, 0x1c, 0x8e, 0xa1, 0xd5, 0x86, 0x32, 0xa8, 0x00, 0x67, 0xbc, 0xcd, 0xae, 0x93, 0x89, 0xca, 0x4c, 0xb6, 0xe3, 0x27, 0x9b, 0x18, 0x96, 0x44, 0x8f, 0xf2, 0x29, 0x51, 0xe5, 0x06, 0x53, 0x26, 0x83, 0x34, 0x87, 0x06, 0x6e, 0xee, 0xdc, 0xf9, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11636_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11636_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7c, 0x04, 0xeb, 0x7f, 0x37, 0x30, 0xe2, 0x31, 0xa1, 0xc6, 0xf8, 0x6a, 0x11, 0x04, 0x2f, 0x1a, 0x91, 0x4b, 0x02, 0xbd, 0x83, 0xca, 0x8e, 0x82, 0x67, 0x0f, 0x9b, 0xf9, 0xd1, 0x7d, 0x9e, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11636 = { .name = "ecdsa_brainpoolp256r1_sha256_11636", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11636_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11636_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11636_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 881 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11637 for ECDSA, tcId is 882 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11637_pubkey[] = { 0x44, 0x6e, 0x92, 0x5e, 0xb4, 0x7f, 0xb9, 0xe9, 0x86, 0x76, 0x2c, 0x3a, 0xd5, 0x60, 0x0e, 0x44, 0x01, 0x8b, 0x89, 0x28, 0xbe, 0x7c, 0x61, 0xfe, 0xe4, 0x38, 0xdb, 0x8f, 0x0f, 0xd7, 0x6b, 0x18, 0x54, 0x20, 0x79, 0x6d, 0xed, 0xa7, 0x4a, 0xb9, 0x50, 0x8b, 0xa6, 0xc4, 0x5e, 0x82, 0x6d, 0xbd, 0x47, 0xac, 0xbf, 0x94, 0x3e, 0x87, 0x87, 0x74, 0x78, 0xd6, 0xcd, 0x1b, 0x88, 0x25, 0xef, 0xad, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11637_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11637_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3b, 0x3b, 0x27, 0x26, 0x86, 0xd1, 0x38, 0x08, 0x49, 0x88, 0xae, 0x23, 0x08, 0x9d, 0x57, 0xb5, 0x74, 0xfb, 0xab, 0xe9, 0x83, 0xe1, 0xde, 0x35, 0x69, 0x44, 0x42, 0xc2, 0xb9, 0x66, 0x00, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11637 = { .name = "ecdsa_brainpoolp256r1_sha256_11637", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11637_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11637_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11637_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 882 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11638 for ECDSA, tcId is 883 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11638_pubkey[] = { 0x77, 0x42, 0xd1, 0x4f, 0xff, 0x17, 0xf3, 0x76, 0x74, 0xf3, 0xf1, 0xd4, 0xdf, 0x98, 0x24, 0x27, 0xda, 0xc5, 0x45, 0x72, 0x2a, 0xea, 0xfd, 0x8f, 0x3e, 0xff, 0xbd, 0x40, 0x89, 0x09, 0x00, 0xaf, 0x69, 0x3a, 0x32, 0xaa, 0x0b, 0x83, 0xdc, 0x4f, 0xe2, 0x7a, 0x40, 0x9e, 0x7a, 0x35, 0xf5, 0x28, 0x27, 0x58, 0x2d, 0x9c, 0x97, 0xf8, 0x4a, 0xcd, 0x24, 0xa4, 0xc3, 0xe3, 0xdb, 0x67, 0xcd, 0xc6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11638_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11638_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2e, 0x67, 0xab, 0x25, 0x6e, 0x24, 0x60, 0x48, 0xb8, 0x15, 0x4c, 0x6b, 0xd1, 0x2d, 0xe7, 0x5f, 0x16, 0x57, 0xf9, 0xb2, 0x0e, 0x8d, 0xa0, 0x9b, 0xec, 0xa1, 0x49, 0xa5, 0x17, 0xcb, 0xfb, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11638 = { .name = "ecdsa_brainpoolp256r1_sha256_11638", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11638_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11638_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11638_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 883 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11639 for ECDSA, tcId is 884 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11639_pubkey[] = { 0x5c, 0xc0, 0x7b, 0x0a, 0x02, 0x61, 0x9c, 0x70, 0x1b, 0x5b, 0x21, 0x12, 0xee, 0x1e, 0x81, 0x52, 0xaa, 0x2a, 0x7d, 0x87, 0x88, 0x0c, 0x23, 0x10, 0x40, 0x91, 0x42, 0x04, 0x6e, 0x96, 0x2d, 0xf4, 0x0e, 0x74, 0xe8, 0x19, 0x1e, 0x2e, 0xc7, 0x6f, 0x8f, 0x9e, 0x3c, 0x54, 0xa5, 0x9b, 0xc7, 0x9e, 0xc6, 0x8b, 0xff, 0x40, 0x7e, 0x4a, 0xd4, 0xd6, 0x98, 0x8f, 0x41, 0x9b, 0x56, 0x71, 0xf2, 0x5b, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11639_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11639_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5c, 0xcf, 0x56, 0x4a, 0xdc, 0x48, 0xc0, 0x91, 0x70, 0x2a, 0x98, 0xd7, 0xa2, 0x5b, 0xce, 0xbe, 0x2c, 0xaf, 0xf3, 0x64, 0x1d, 0x1b, 0x41, 0x37, 0xd9, 0x42, 0x93, 0x4a, 0x2f, 0x97, 0xf6, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11639 = { .name = "ecdsa_brainpoolp256r1_sha256_11639", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11639_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11639_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11639_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 884 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11640 for ECDSA, tcId is 885 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11640_pubkey[] = { 0x55, 0x98, 0x26, 0x7f, 0x28, 0xa0, 0xd0, 0x95, 0xca, 0xc9, 0xd4, 0xb6, 0xe4, 0xf8, 0x15, 0x7c, 0x73, 0xd4, 0x8d, 0x6a, 0x76, 0xb7, 0x2c, 0x8f, 0x3a, 0x81, 0x15, 0xec, 0xfe, 0x5e, 0x28, 0xa7, 0x2d, 0x65, 0x11, 0x36, 0xd1, 0x3e, 0x03, 0x9c, 0xe4, 0xc1, 0x34, 0xdd, 0x55, 0x72, 0xff, 0xdc, 0x99, 0x6b, 0xee, 0x01, 0x8b, 0x3d, 0x01, 0x43, 0x9d, 0xf6, 0x2a, 0x53, 0x8c, 0xea, 0xc8, 0xa7, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11640_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11640_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x81, 0x97, 0xdc, 0x78, 0xd6, 0xcc, 0xee, 0x96, 0x77, 0xdf, 0x5d, 0x99, 0xf3, 0x82, 0xc8, 0x0c, 0x19, 0xdd, 0x0d, 0x78, 0xba, 0xbb, 0xb8, 0x68, 0x10, 0xd8, 0x39, 0x8b, 0x0c, 0x91, 0x14, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11640 = { .name = "ecdsa_brainpoolp256r1_sha256_11640", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11640_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11640_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11640_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 885 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11641 for ECDSA, tcId is 886 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11641_pubkey[] = { 0x80, 0xe2, 0x5f, 0x21, 0xcd, 0x7b, 0x8b, 0xe2, 0xba, 0xb4, 0x18, 0x31, 0x94, 0xed, 0xbd, 0x22, 0xb0, 0xca, 0x53, 0xfd, 0x70, 0xf3, 0x44, 0xe4, 0x29, 0x88, 0xa3, 0x96, 0xb0, 0xf2, 0xc6, 0xe2, 0x99, 0x1e, 0x27, 0xd9, 0xc1, 0x4c, 0x1d, 0xbb, 0x5e, 0x18, 0x89, 0x95, 0x6a, 0x73, 0x28, 0x15, 0x9d, 0xa9, 0xdb, 0xac, 0x08, 0x2b, 0x93, 0xb2, 0x89, 0xcc, 0x90, 0xb2, 0x8f, 0x96, 0xa6, 0x5a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11641_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11641_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x75, 0x52, 0xd8, 0xce, 0x45, 0x67, 0x4b, 0x22, 0x37, 0x35, 0xb1, 0xc2, 0xd0, 0x94, 0x65, 0x81, 0xcd, 0x06, 0x2d, 0x49, 0x4a, 0x89, 0xf4, 0x2f, 0x58, 0xf0, 0xee, 0x1b, 0xc5, 0xc0, 0xf3, 0x18, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11641 = { .name = "ecdsa_brainpoolp256r1_sha256_11641", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11641_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11641_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11641_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 886 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11642 for ECDSA, tcId is 887 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11642_pubkey[] = { 0x68, 0x0d, 0xe4, 0x5f, 0xd1, 0xe6, 0xc3, 0x88, 0x19, 0xae, 0x4b, 0xdd, 0x43, 0xd6, 0x14, 0x82, 0x75, 0x2f, 0xa4, 0x3e, 0x81, 0x38, 0xa9, 0xa3, 0x90, 0x36, 0x4c, 0xec, 0xf3, 0x6b, 0x4e, 0xf2, 0x8b, 0x90, 0xde, 0x2f, 0x26, 0x0f, 0x74, 0x7f, 0xee, 0x8a, 0x96, 0x3a, 0xe3, 0x08, 0x34, 0x9a, 0xa6, 0xb8, 0x16, 0xe6, 0xbe, 0x81, 0x40, 0x35, 0xcb, 0xc6, 0x84, 0x48, 0xea, 0xe2, 0x72, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11642_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11642_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2a, 0x98, 0x8e, 0xeb, 0x5d, 0x91, 0x27, 0x97, 0x14, 0xeb, 0x15, 0x0f, 0xae, 0xa4, 0x83, 0x8e, 0xde, 0x06, 0xb1, 0x65, 0x67, 0xdc, 0x73, 0x91, 0x95, 0x15, 0xd2, 0x8f, 0xf0, 0x4a, 0x12, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11642 = { .name = "ecdsa_brainpoolp256r1_sha256_11642", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11642_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11642_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11642_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 887 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11643 for ECDSA, tcId is 888 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11643_pubkey[] = { 0x52, 0xd9, 0xe8, 0xe7, 0xe7, 0xa7, 0x28, 0xf2, 0x4a, 0x61, 0xef, 0x37, 0x13, 0x37, 0x5a, 0xde, 0x94, 0x2d, 0x70, 0x8d, 0x9b, 0xc0, 0x61, 0xf5, 0x00, 0xfd, 0x32, 0xd4, 0x93, 0xf4, 0x8f, 0xbd, 0x0f, 0x38, 0x83, 0xd1, 0xa5, 0x56, 0x80, 0xf6, 0x9a, 0x0f, 0xe6, 0x90, 0x9d, 0xa5, 0x5f, 0x50, 0x6e, 0x99, 0x37, 0x83, 0x7e, 0x24, 0x4e, 0x20, 0x55, 0x00, 0x19, 0xa1, 0x7b, 0xa9, 0xc3, 0x70, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11643_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11643_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0x98, 0x01, 0xa8, 0x8f, 0x78, 0x43, 0xce, 0x3f, 0x1c, 0x73, 0xcd, 0x7a, 0x57, 0x87, 0xe7, 0xa7, 0xee, 0xad, 0xbc, 0xb9, 0xc9, 0x0e, 0x71, 0xee, 0x64, 0xe0, 0xdd, 0x0a, 0x74, 0x1a, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11643 = { .name = "ecdsa_brainpoolp256r1_sha256_11643", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11643_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11643_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11643_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 888 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11644 for ECDSA, tcId is 889 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11644_pubkey[] = { 0xa0, 0x0c, 0x60, 0x23, 0x51, 0x09, 0x35, 0x2c, 0x58, 0x95, 0x63, 0xa5, 0x90, 0xd6, 0x1a, 0xdb, 0xe3, 0x4d, 0x84, 0xbd, 0xdd, 0x6e, 0x82, 0xc2, 0xf4, 0x2e, 0xfb, 0x87, 0x15, 0x27, 0x01, 0x17, 0x78, 0x03, 0x54, 0x71, 0xde, 0x3b, 0x72, 0xdd, 0xc3, 0xca, 0xf6, 0x98, 0x18, 0x24, 0xaa, 0x4c, 0xe3, 0x01, 0x40, 0x56, 0x10, 0x15, 0x6d, 0xeb, 0x90, 0xea, 0x9a, 0xa3, 0x16, 0xa8, 0xba, 0x66, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11644_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11644_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2b, 0x66, 0x56, 0x8f, 0x06, 0x3d, 0x10, 0xd7, 0x3f, 0x77, 0xa8, 0x6b, 0xe8, 0xc1, 0x85, 0x22, 0xb5, 0xc9, 0x47, 0x49, 0x3b, 0xfc, 0xc2, 0x2f, 0x1d, 0x88, 0x4a, 0x0a, 0x44, 0x09, 0xfc, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11644 = { .name = "ecdsa_brainpoolp256r1_sha256_11644", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11644_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11644_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11644_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 889 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11645 for ECDSA, tcId is 890 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11645_pubkey[] = { 0x57, 0x58, 0xf9, 0xe4, 0x02, 0xa4, 0xba, 0xfd, 0x82, 0x59, 0x4d, 0x0d, 0x26, 0xed, 0x47, 0xa5, 0xf8, 0xe9, 0xc5, 0x05, 0x26, 0xd3, 0x4b, 0x34, 0xb4, 0x7d, 0x08, 0x75, 0xb9, 0xfe, 0x7b, 0x14, 0x04, 0xf3, 0xf8, 0x09, 0x53, 0x76, 0xd5, 0x4d, 0xfc, 0x10, 0xd8, 0x3c, 0x93, 0x8a, 0x18, 0x17, 0x5a, 0x64, 0x51, 0x7e, 0x3b, 0x46, 0x4e, 0xdd, 0x05, 0x8f, 0x5b, 0x86, 0x26, 0xd8, 0x37, 0xc5, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11645_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11645_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x02, 0x75, 0xbf, 0x9b, 0x98, 0x71, 0x18, 0xd0, 0xe3, 0x7c, 0x35, 0x08, 0x82, 0x17, 0x8d, 0x48, 0xa5, 0x81, 0x5e, 0xc1, 0xe5, 0x47, 0x41, 0x33, 0x87, 0xcd, 0xfc, 0xe8, 0xbe, 0xcf, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11645 = { .name = "ecdsa_brainpoolp256r1_sha256_11645", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11645_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11645_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11645_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 890 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11646 for ECDSA, tcId is 891 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11646_pubkey[] = { 0x2f, 0xa1, 0xd8, 0xac, 0x0d, 0x02, 0xda, 0x83, 0xa9, 0x98, 0xf7, 0x67, 0xbd, 0x85, 0x4b, 0x1a, 0x04, 0x3e, 0x38, 0x3d, 0x51, 0x59, 0xe7, 0x07, 0x7e, 0x35, 0xed, 0x3a, 0x9c, 0xa8, 0x19, 0x42, 0x12, 0xd7, 0xfb, 0x2b, 0x95, 0xe8, 0x67, 0xed, 0x0b, 0x24, 0xe4, 0x50, 0x93, 0xd6, 0x39, 0xf1, 0xfe, 0xd6, 0x81, 0x62, 0xaa, 0x51, 0xe6, 0x0a, 0xd2, 0xe4, 0x5d, 0xe0, 0x12, 0xb8, 0xe9, 0x4a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11646_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11646_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x63, 0x53, 0xc7, 0xf3, 0xe0, 0xa4, 0xe3, 0x3e, 0xbf, 0x77, 0x58, 0xda, 0xdf, 0x2b, 0xd9, 0xd0, 0x84, 0x13, 0x28, 0xe1, 0x3c, 0x75, 0xe2, 0x52, 0x85, 0x5f, 0x5a, 0x2b, 0x87, 0xc2, 0xc7, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11646 = { .name = "ecdsa_brainpoolp256r1_sha256_11646", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11646_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11646_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11646_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 891 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11647 for ECDSA, tcId is 892 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11647_pubkey[] = { 0x3e, 0x09, 0x80, 0x5f, 0xe4, 0x99, 0xd1, 0xbc, 0xd7, 0xa4, 0x38, 0x8f, 0xe0, 0x3c, 0x4b, 0xd3, 0xea, 0xf6, 0x37, 0x1c, 0xdb, 0x3e, 0x7a, 0xfd, 0x74, 0x8c, 0xde, 0x52, 0xae, 0x89, 0x7c, 0x02, 0x19, 0xe6, 0x5e, 0x9b, 0x77, 0xef, 0x75, 0x4d, 0x77, 0x14, 0x0c, 0x20, 0xb8, 0xc8, 0x90, 0x74, 0x95, 0x0f, 0x7e, 0x71, 0xcb, 0xc7, 0xd9, 0x7e, 0x0d, 0xc8, 0x79, 0x37, 0x1a, 0xa3, 0x30, 0x6c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11647_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11647_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0x89, 0x9b, 0xc6, 0xff, 0x5e, 0x72, 0x33, 0x8f, 0x3c, 0x98, 0x47, 0xfa, 0x65, 0x31, 0xc4, 0x33, 0x7f, 0xde, 0x3f, 0xcf, 0x1c, 0x8c, 0x32, 0xf7, 0x68, 0xfb, 0xa3, 0xa4, 0x02, 0xa9, 0x64, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11647 = { .name = "ecdsa_brainpoolp256r1_sha256_11647", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11647_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11647_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11647_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 892 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11648 for ECDSA, tcId is 893 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11648_pubkey[] = { 0x7e, 0x69, 0x90, 0x9d, 0xbc, 0x54, 0x43, 0x42, 0xa5, 0xbe, 0xe9, 0xaf, 0x76, 0x63, 0x47, 0x52, 0x6f, 0xea, 0x9b, 0xea, 0x52, 0x6b, 0xd8, 0xa2, 0x72, 0x8d, 0x80, 0x25, 0x3c, 0x01, 0xc2, 0x04, 0xa3, 0x49, 0x0b, 0x65, 0x83, 0xc6, 0xbf, 0x44, 0xa3, 0x79, 0x1b, 0x61, 0xa2, 0x98, 0xdc, 0x18, 0xbe, 0x55, 0xd3, 0x59, 0x3c, 0x24, 0xb8, 0xa0, 0x13, 0x74, 0x7f, 0x98, 0x77, 0xf6, 0x6e, 0x61, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11648_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11648_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x72, 0x65, 0x5c, 0x5e, 0x4f, 0x1c, 0xef, 0xca, 0x22, 0xf4, 0x13, 0xa6, 0x12, 0xe5, 0xbf, 0xdd, 0x7b, 0xa9, 0xae, 0x71, 0x05, 0x3f, 0x68, 0xb0, 0xc7, 0x4d, 0x9a, 0x73, 0x59, 0x00, 0x13, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11648 = { .name = "ecdsa_brainpoolp256r1_sha256_11648", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11648_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11648_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11648_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 893 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11649 for ECDSA, tcId is 894 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11649_pubkey[] = { 0x6b, 0xe6, 0x21, 0x98, 0x8a, 0xf5, 0x17, 0xa2, 0x2e, 0x15, 0x49, 0xcb, 0x23, 0x41, 0x6d, 0xc2, 0xcf, 0x8d, 0x8a, 0xcc, 0xdd, 0x8d, 0x08, 0x37, 0x08, 0xe6, 0xd6, 0x55, 0xf1, 0x55, 0xcc, 0xfe, 0x8e, 0xb8, 0x72, 0x77, 0x21, 0x93, 0x56, 0x97, 0x2a, 0x3b, 0xd0, 0xda, 0xc5, 0xf5, 0x49, 0xac, 0x52, 0x31, 0x5c, 0x43, 0xe0, 0xed, 0xea, 0x9d, 0x6e, 0x24, 0xf2, 0xff, 0x95, 0x20, 0x29, 0xd0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11649_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11649_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x03, 0x0d, 0xbf, 0x01, 0xd8, 0xc9, 0xde, 0x29, 0x00, 0xdc, 0x38, 0x45, 0xfd, 0xa4, 0xe4, 0xc6, 0xbc, 0x04, 0x9c, 0x4c, 0xd5, 0x71, 0x7a, 0x9c, 0x62, 0x9b, 0x9e, 0xd2, 0x9d, 0x18, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11649 = { .name = "ecdsa_brainpoolp256r1_sha256_11649", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11649_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11649_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11649_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 894 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11650 for ECDSA, tcId is 895 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11650_pubkey[] = { 0x5a, 0xe6, 0xaf, 0xae, 0x79, 0x75, 0x22, 0x50, 0xb1, 0xea, 0x02, 0xf4, 0x9c, 0xd7, 0x5a, 0xa8, 0x99, 0x41, 0x86, 0x31, 0x04, 0x11, 0x72, 0xb2, 0xe3, 0xdb, 0x31, 0xca, 0x7a, 0xbb, 0x2a, 0xb2, 0x2b, 0xef, 0x1f, 0x79, 0x83, 0x89, 0xa2, 0x16, 0xb0, 0x32, 0x24, 0x19, 0xfd, 0x7a, 0x76, 0xe4, 0x44, 0x8b, 0x3d, 0x1a, 0xbe, 0x42, 0x5b, 0x47, 0xd8, 0x43, 0x07, 0xe4, 0x55, 0x3a, 0xd3, 0x52, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11650_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11650_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa1, 0xdb, 0x72, 0x93, 0xb6, 0xf0, 0x15, 0x94, 0xb8, 0x08, 0x71, 0x8e, 0x61, 0xa4, 0xd6, 0x42, 0xdf, 0xf4, 0xfe, 0xe2, 0xfb, 0x47, 0x11, 0x67, 0xef, 0x7a, 0xb4, 0x29, 0x59, 0xa4, 0x73, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11650 = { .name = "ecdsa_brainpoolp256r1_sha256_11650", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11650_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11650_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11650_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 895 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11651 for ECDSA, tcId is 896 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11651_pubkey[] = { 0x18, 0x35, 0x02, 0x52, 0x50, 0x7c, 0xc2, 0x6e, 0x4a, 0x12, 0xbf, 0x3e, 0x48, 0x3e, 0x02, 0xde, 0xe7, 0x48, 0x09, 0x38, 0x2c, 0x8e, 0x64, 0x0c, 0xa6, 0x35, 0xb0, 0x6c, 0x27, 0xb5, 0x1a, 0x4e, 0x97, 0x57, 0x8f, 0x3e, 0xf0, 0x3f, 0xae, 0x83, 0x7a, 0x17, 0x8d, 0x50, 0xa9, 0xc9, 0x4d, 0x7a, 0xf6, 0x1d, 0x60, 0x70, 0xdd, 0x13, 0xa7, 0x24, 0x09, 0x92, 0x5e, 0xc6, 0xb3, 0x31, 0x32, 0x6c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11651_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11651_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x99, 0xbb, 0x8d, 0x4b, 0xcb, 0xf1, 0x81, 0x6d, 0x31, 0xaa, 0xd8, 0x8c, 0x25, 0xc6, 0x1f, 0x14, 0x33, 0xb0, 0x83, 0x22, 0x41, 0x2c, 0x7b, 0xd8, 0x4e, 0xd7, 0x59, 0xd0, 0x1c, 0x00, 0x91, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11651 = { .name = "ecdsa_brainpoolp256r1_sha256_11651", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11651_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11651_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11651_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 896 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11652 for ECDSA, tcId is 897 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11652_pubkey[] = { 0x09, 0x43, 0xcc, 0x10, 0x44, 0x56, 0xd8, 0x7a, 0x71, 0x2b, 0x8a, 0xaf, 0x71, 0x13, 0xd4, 0x3b, 0xe6, 0x44, 0x04, 0xdc, 0xd0, 0xf8, 0xed, 0x70, 0x7a, 0xe3, 0x28, 0x6e, 0x3d, 0xb5, 0x32, 0x3f, 0x43, 0x86, 0x27, 0x53, 0xab, 0x1b, 0x05, 0xe3, 0xf8, 0xd4, 0x25, 0x49, 0x85, 0x14, 0xca, 0xf1, 0x78, 0xa7, 0x60, 0x2e, 0xbe, 0x43, 0xa7, 0x1c, 0xee, 0xec, 0x6d, 0xa1, 0x4f, 0x88, 0x0e, 0x4c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11652_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11652_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x41, 0xce, 0xe8, 0x2a, 0x69, 0x57, 0xef, 0x02, 0xab, 0x3a, 0xa0, 0x7a, 0x33, 0x15, 0xac, 0xcc, 0x0d, 0x0d, 0x66, 0xc2, 0x08, 0x1d, 0x53, 0x02, 0x46, 0xd6, 0xe6, 0x81, 0x87, 0x3c, 0x90, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11652 = { .name = "ecdsa_brainpoolp256r1_sha256_11652", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11652_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11652_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11652_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 897 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11653 for ECDSA, tcId is 898 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11653_pubkey[] = { 0x64, 0x93, 0x13, 0x39, 0xac, 0xdd, 0xa8, 0x27, 0x64, 0xa0, 0x02, 0x29, 0xd8, 0xd2, 0x66, 0xb1, 0x31, 0x12, 0x23, 0x02, 0xfa, 0x3e, 0xb4, 0x40, 0xcf, 0xda, 0x72, 0xcf, 0x81, 0xad, 0x55, 0x4e, 0x92, 0xdd, 0xff, 0xa1, 0xe7, 0x69, 0x0e, 0xfc, 0x1a, 0x4a, 0x84, 0x08, 0xe1, 0xe3, 0xc5, 0xe5, 0x99, 0xaa, 0x98, 0x11, 0xf2, 0x6d, 0x51, 0x85, 0x2c, 0x9c, 0xee, 0xab, 0xdf, 0xe5, 0xe5, 0xc7, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11653_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11653_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x74, 0x6d, 0x61, 0x57, 0x2e, 0xca, 0xe7, 0x74, 0x69, 0x1e, 0x78, 0x09, 0x12, 0x19, 0x86, 0xd9, 0xb9, 0x32, 0x79, 0xb0, 0x09, 0x34, 0xff, 0x1d, 0xef, 0x1f, 0x47, 0x98, 0xda, 0x89, 0xad, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11653 = { .name = "ecdsa_brainpoolp256r1_sha256_11653", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11653_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11653_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11653_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 898 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11654 for ECDSA, tcId is 899 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11654_pubkey[] = { 0x01, 0x8d, 0x75, 0x5e, 0x55, 0x40, 0x69, 0x2f, 0x87, 0xb6, 0xe0, 0x18, 0x64, 0xbe, 0x3c, 0xc2, 0x72, 0xa4, 0x68, 0xf3, 0xfc, 0xcd, 0xd5, 0x35, 0xcc, 0x0c, 0x2f, 0x1c, 0x75, 0xe0, 0xab, 0xd0, 0x4c, 0x7c, 0x71, 0x55, 0xf0, 0xe9, 0x68, 0x6d, 0xe0, 0xfc, 0xbc, 0xf9, 0x3a, 0x39, 0xd5, 0x0c, 0x2e, 0x2a, 0xdf, 0x8b, 0x03, 0x62, 0x67, 0x6b, 0x31, 0xe9, 0xa4, 0x9b, 0xdc, 0xaa, 0xdb, 0xb7, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11654_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11654_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0x1b, 0x26, 0xa0, 0x90, 0x89, 0x68, 0x09, 0x9f, 0x8e, 0x1f, 0x61, 0x0f, 0x4f, 0x35, 0x83, 0x18, 0xba, 0xa2, 0x11, 0x07, 0xb7, 0x91, 0xef, 0x6f, 0x24, 0xcb, 0x24, 0x46, 0x77, 0xa6, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11654 = { .name = "ecdsa_brainpoolp256r1_sha256_11654", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11654_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11654_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11654_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 899 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11655 for ECDSA, tcId is 900 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11655_pubkey[] = { 0x53, 0xee, 0x3f, 0x75, 0xed, 0x72, 0x75, 0x55, 0x0c, 0x4b, 0x16, 0x04, 0xf6, 0x8f, 0xbc, 0x4c, 0x41, 0x10, 0x06, 0xb1, 0x3d, 0xa8, 0x09, 0xd5, 0xae, 0x6a, 0x14, 0xcb, 0x37, 0xba, 0xfe, 0xf5, 0x7d, 0x26, 0x22, 0x2d, 0x2d, 0x72, 0x36, 0xb9, 0xd7, 0xe3, 0xac, 0x42, 0x25, 0x10, 0x0d, 0x68, 0x76, 0x4c, 0x37, 0xc7, 0x7b, 0x80, 0xf2, 0x4f, 0x7c, 0x65, 0xe5, 0x79, 0xd1, 0x3d, 0x97, 0x27, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11655_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11655_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x46, 0xa7, 0x8f, 0xe7, 0xc1, 0x49, 0xc6, 0x7d, 0x7e, 0xee, 0xb1, 0xb5, 0xbe, 0x57, 0xb3, 0xa1, 0x08, 0x26, 0x51, 0xc2, 0x78, 0xeb, 0xc4, 0xa5, 0x0a, 0xbe, 0xb4, 0x57, 0x0f, 0x85, 0x8f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11655 = { .name = "ecdsa_brainpoolp256r1_sha256_11655", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11655_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11655_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11655_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 900 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11656 for ECDSA, tcId is 901 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11656_pubkey[] = { 0x86, 0xfd, 0x25, 0xde, 0x25, 0x0b, 0xd6, 0xe9, 0xc2, 0x72, 0xd4, 0xa3, 0xe7, 0xf2, 0x8e, 0xde, 0xa9, 0x34, 0xb7, 0xf0, 0x43, 0x05, 0x0b, 0x76, 0x5a, 0xb7, 0x55, 0x20, 0x0f, 0x4e, 0x29, 0x00, 0xa2, 0x23, 0x82, 0x99, 0x78, 0x3c, 0x29, 0x0a, 0x0b, 0x4d, 0x4f, 0x3b, 0xfe, 0x37, 0x64, 0x57, 0x19, 0x96, 0x70, 0x00, 0x46, 0x6f, 0x29, 0x88, 0x2e, 0x89, 0x5f, 0x54, 0xc3, 0xeb, 0x7f, 0x8f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11656_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11656_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x14, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11656 = { .name = "ecdsa_brainpoolp256r1_sha256_11656", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11656_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11656_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11656_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 901 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11657 for ECDSA, tcId is 902 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11657_pubkey[] = { 0x1c, 0xc2, 0xc2, 0x42, 0xa6, 0x3d, 0x44, 0xb9, 0x0f, 0x67, 0xf3, 0x5a, 0xca, 0x9f, 0xd5, 0xcc, 0x0b, 0x25, 0xd3, 0x84, 0xee, 0x96, 0x48, 0xa0, 0x52, 0x79, 0xd4, 0x76, 0xf9, 0xaa, 0x74, 0x8c, 0x6c, 0xb0, 0x72, 0xf7, 0x33, 0x6c, 0xf8, 0x9f, 0x48, 0x35, 0x42, 0x72, 0x1c, 0x9b, 0xa7, 0x11, 0x97, 0xe9, 0xbf, 0x38, 0x72, 0x99, 0xd9, 0x80, 0x7e, 0xf7, 0x92, 0x4b, 0x9e, 0x7c, 0x08, 0x3c, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11657_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11657_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0x30, 0x5a, 0x1c, 0xf8, 0x85, 0xcc, 0xc3, 0x30, 0xad, 0x0f, 0x1b, 0x58, 0x34, 0xa6, 0xa7, 0x83, 0xf1, 0x94, 0x8a, 0x5d, 0x50, 0x87, 0xd4, 0x2b, 0xb5, 0xd4, 0x7a, 0xf8, 0x24, 0x35, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11657 = { .name = "ecdsa_brainpoolp256r1_sha256_11657", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11657_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11657_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11657_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 902 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11658 for ECDSA, tcId is 903 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11658_pubkey[] = { 0x45, 0x33, 0x38, 0x2e, 0x1c, 0xae, 0xdb, 0xed, 0x8b, 0xdf, 0xa5, 0xf4, 0x8c, 0x58, 0xbd, 0xfc, 0xb7, 0x5d, 0x68, 0x11, 0x12, 0x2b, 0xb0, 0x16, 0xcf, 0x42, 0xe4, 0x57, 0x98, 0x9f, 0xb4, 0x38, 0x6d, 0x34, 0xb8, 0x99, 0x20, 0x0c, 0xdd, 0x58, 0xba, 0x2f, 0xaa, 0x1d, 0x01, 0x69, 0xda, 0x8a, 0x54, 0x54, 0xde, 0x50, 0xd0, 0x8a, 0x2e, 0x7f, 0x53, 0x62, 0xd6, 0x0f, 0x6e, 0xc7, 0xc5, 0xde, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11658_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11658_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x44, 0x08, 0x8a, 0x06, 0x85, 0xdf, 0x19, 0x55, 0x69, 0x62, 0x86, 0xcc, 0x08, 0x3d, 0x35, 0xaf, 0xa8, 0xd2, 0x89, 0x59, 0x27, 0x40, 0x5b, 0x07, 0x31, 0xea, 0xdc, 0xd8, 0xa7, 0x23, 0x37, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11658 = { .name = "ecdsa_brainpoolp256r1_sha256_11658", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11658_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11658_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11658_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 903 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11659 for ECDSA, tcId is 904 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11659_pubkey[] = { 0x45, 0x33, 0x38, 0x2e, 0x1c, 0xae, 0xdb, 0xed, 0x8b, 0xdf, 0xa5, 0xf4, 0x8c, 0x58, 0xbd, 0xfc, 0xb7, 0x5d, 0x68, 0x11, 0x12, 0x2b, 0xb0, 0x16, 0xcf, 0x42, 0xe4, 0x57, 0x98, 0x9f, 0xb4, 0x38, 0x3c, 0xc6, 0x9f, 0x42, 0x81, 0xe1, 0xcc, 0x63, 0x84, 0x36, 0x60, 0x73, 0x9c, 0x19, 0xb2, 0xe8, 0x19, 0xe7, 0x17, 0xd3, 0x04, 0x9b, 0xf1, 0xa8, 0xcc, 0xb0, 0x72, 0x0d, 0xb0, 0xa6, 0x8d, 0x99, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11659_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11659_sig[] = { 0x07, 0x4c, 0x03, 0x56, 0x03, 0xe1, 0xeb, 0x49, 0xab, 0x53, 0x82, 0x81, 0x9b, 0xf8, 0x2a, 0xf8, 0x29, 0x29, 0xb5, 0x00, 0xc6, 0xe7, 0x88, 0x41, 0xc1, 0xb2, 0xc3, 0xff, 0x54, 0xa6, 0x15, 0xdd, 0x44, 0x08, 0x8a, 0x06, 0x85, 0xdf, 0x19, 0x55, 0x69, 0x62, 0x86, 0xcc, 0x08, 0x3d, 0x35, 0xaf, 0xa8, 0xd2, 0x89, 0x59, 0x27, 0x40, 0x5b, 0x07, 0x31, 0xea, 0xdc, 0xd8, 0xa7, 0x23, 0x37, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11659 = { .name = "ecdsa_brainpoolp256r1_sha256_11659", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11659_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11659_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11659_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 904 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11660 for ECDSA, tcId is 905 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11660_pubkey[] = { 0xa9, 0x01, 0x1e, 0x37, 0x12, 0xe1, 0x37, 0xef, 0x23, 0x19, 0xb9, 0x64, 0xc6, 0x1b, 0xa2, 0x33, 0x53, 0x99, 0xcb, 0x49, 0xd1, 0x6f, 0x19, 0x39, 0xca, 0x7f, 0x03, 0xc3, 0x7c, 0x13, 0xbb, 0x0f, 0x93, 0xfd, 0xb9, 0x4d, 0x60, 0xb3, 0x4a, 0xa9, 0xe6, 0x91, 0x9b, 0x62, 0xc2, 0x4d, 0xb2, 0xe5, 0x7a, 0x07, 0xd5, 0x93, 0x69, 0x2f, 0x8a, 0xe9, 0x24, 0xee, 0x37, 0xa5, 0x9f, 0x2f, 0xcd, 0x4e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11660_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11660_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11660 = { .name = "ecdsa_brainpoolp256r1_sha256_11660", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11660_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11660_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11660_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 905 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11661 for ECDSA, tcId is 906 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11661_pubkey[] = { 0x61, 0x65, 0x14, 0xd1, 0x1e, 0x2e, 0x9b, 0x4f, 0x63, 0x72, 0x59, 0x81, 0xf1, 0xd3, 0x3a, 0x0e, 0x28, 0x97, 0x3b, 0xc7, 0x71, 0x9a, 0x4c, 0xc2, 0x96, 0x97, 0x00, 0x91, 0x3c, 0xd2, 0xf1, 0xb1, 0x60, 0x71, 0xf7, 0x1e, 0xff, 0x21, 0xd2, 0xbc, 0x25, 0x4f, 0xcf, 0xfe, 0xde, 0x47, 0xa5, 0x3b, 0x6b, 0x4e, 0x04, 0x1a, 0xb9, 0x7b, 0x63, 0x50, 0xd5, 0x94, 0x85, 0x17, 0x6e, 0xc9, 0xd7, 0x2b, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11661_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11661_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11661 = { .name = "ecdsa_brainpoolp256r1_sha256_11661", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11661_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11661_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11661_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 906 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11662 for ECDSA, tcId is 907 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11662_pubkey[] = { 0x88, 0x97, 0xc3, 0x6d, 0xda, 0x82, 0x76, 0xcd, 0x50, 0x6b, 0x89, 0x52, 0x17, 0x26, 0x61, 0x18, 0x8c, 0x0e, 0x0e, 0x79, 0x3d, 0x3a, 0xe4, 0x77, 0xbc, 0x77, 0x41, 0xf7, 0x37, 0xde, 0xd2, 0x70, 0x16, 0x0f, 0x4a, 0x84, 0xf6, 0x67, 0x8e, 0x8f, 0x4c, 0x91, 0xe4, 0x62, 0xf8, 0x0d, 0x83, 0x70, 0x17, 0x54, 0xc4, 0xbe, 0x2f, 0xca, 0xbf, 0x8c, 0xa5, 0x07, 0xbf, 0x86, 0x52, 0x37, 0x5c, 0x7f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11662_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11662_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11662 = { .name = "ecdsa_brainpoolp256r1_sha256_11662", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11662_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11662_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11662_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 907 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11663 for ECDSA, tcId is 908 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11663_pubkey[] = { 0x58, 0x96, 0x1a, 0xb0, 0x29, 0x2d, 0x17, 0x38, 0xfc, 0x4e, 0x56, 0x09, 0x09, 0xb4, 0x3b, 0x6f, 0x8f, 0x56, 0x74, 0xb2, 0xea, 0x80, 0x25, 0x50, 0xb5, 0x0c, 0x78, 0x85, 0x63, 0x71, 0xf6, 0xaf, 0x86, 0x51, 0x3e, 0x45, 0x1c, 0xf3, 0x49, 0xbf, 0x19, 0xf0, 0x36, 0x2f, 0x34, 0x45, 0xef, 0xb4, 0xa0, 0xd0, 0x83, 0x8a, 0x24, 0x33, 0x3b, 0x94, 0x30, 0x54, 0xf8, 0x26, 0xd1, 0xbe, 0xdd, 0x27, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11663_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11663_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11663 = { .name = "ecdsa_brainpoolp256r1_sha256_11663", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11663_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11663_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11663_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 908 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11664 for ECDSA, tcId is 909 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11664_pubkey[] = { 0x39, 0x25, 0xbd, 0xee, 0xa6, 0xe2, 0xf6, 0x48, 0xae, 0x6d, 0xa3, 0x98, 0x8b, 0x3a, 0x3e, 0xa9, 0x20, 0x38, 0x29, 0xd2, 0x8d, 0xa4, 0x58, 0x4f, 0x60, 0xe3, 0xbc, 0xbe, 0x5f, 0x82, 0xfa, 0x30, 0x69, 0x82, 0x2f, 0xf1, 0x94, 0x59, 0x9d, 0x3b, 0x58, 0x0f, 0x72, 0xfc, 0xf2, 0xa8, 0x64, 0xc4, 0x13, 0x8a, 0x12, 0xdb, 0xd9, 0x80, 0xc2, 0xb3, 0xe2, 0xd7, 0xef, 0x87, 0x0c, 0x91, 0xcc, 0x6e, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11664_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11664_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11664 = { .name = "ecdsa_brainpoolp256r1_sha256_11664", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11664_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11664_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11664_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 909 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11665 for ECDSA, tcId is 910 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11665_pubkey[] = { 0x31, 0x1f, 0x12, 0xcc, 0x03, 0xf6, 0x4a, 0xfd, 0xf6, 0xa8, 0x34, 0x89, 0x26, 0x24, 0x1d, 0x5a, 0xaf, 0xbc, 0xfb, 0x6e, 0x60, 0x4d, 0x50, 0xbc, 0x9f, 0x88, 0x01, 0x8f, 0x6a, 0xcc, 0x1b, 0x77, 0x94, 0x0c, 0x38, 0x92, 0x86, 0x7e, 0x59, 0x53, 0x73, 0x0c, 0x31, 0x16, 0xd3, 0xf7, 0x72, 0xfe, 0xb7, 0x77, 0x30, 0x2c, 0xdf, 0x82, 0x51, 0x93, 0xf8, 0x1d, 0x19, 0xeb, 0x4e, 0x72, 0x6e, 0xb6, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11665_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11665_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11665 = { .name = "ecdsa_brainpoolp256r1_sha256_11665", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11665_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11665_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11665_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 910 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11666 for ECDSA, tcId is 911 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11666_pubkey[] = { 0x30, 0x29, 0x1b, 0xca, 0x4e, 0xb9, 0x3c, 0x41, 0x99, 0x1d, 0xae, 0xc0, 0xfd, 0x2e, 0x87, 0xc2, 0x77, 0x8d, 0x95, 0x8d, 0x9a, 0x8e, 0x2f, 0xa4, 0xe6, 0xd3, 0x83, 0x5d, 0x48, 0x5b, 0xc2, 0x3e, 0x42, 0x17, 0xf6, 0x84, 0xcf, 0xdd, 0x83, 0x6d, 0x7c, 0xf6, 0x09, 0x9a, 0x34, 0xc6, 0x82, 0x61, 0xe5, 0xa0, 0x94, 0xad, 0xb5, 0xb3, 0xe4, 0xa9, 0x26, 0x2f, 0xf5, 0x95, 0x7c, 0x1b, 0x1b, 0xa8, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11666_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11666_sig[] = { 0x74, 0x3c, 0xf1, 0xb8, 0xb5, 0xcd, 0x4f, 0x2e, 0xb5, 0x5f, 0x8a, 0xa3, 0x69, 0x59, 0x3a, 0xc4, 0x36, 0xef, 0x04, 0x41, 0x66, 0x69, 0x9e, 0x37, 0xd5, 0x1a, 0x14, 0xc2, 0xce, 0x13, 0xea, 0x0e, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11666 = { .name = "ecdsa_brainpoolp256r1_sha256_11666", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11666_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11666_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11666_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 911 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11667 for ECDSA, tcId is 912 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11667_pubkey[] = { 0xa1, 0x2c, 0x7c, 0x13, 0xad, 0xff, 0x62, 0x6a, 0xd3, 0x1f, 0xfb, 0x8b, 0xa3, 0x85, 0xc3, 0x09, 0x2d, 0xb1, 0xaf, 0xe4, 0xa2, 0xa8, 0xe8, 0x87, 0xd8, 0x10, 0xa7, 0x22, 0x04, 0x81, 0x64, 0xcd, 0x8b, 0x1f, 0x3e, 0x67, 0xfd, 0xe9, 0xff, 0x07, 0x03, 0xf1, 0xe4, 0x29, 0xf7, 0x48, 0xc8, 0x47, 0x99, 0x75, 0x46, 0xab, 0x18, 0x50, 0xeb, 0xc0, 0x04, 0x53, 0x5d, 0xcc, 0xd4, 0x53, 0xcf, 0x81, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11667_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11667_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11667 = { .name = "ecdsa_brainpoolp256r1_sha256_11667", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11667_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11667_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11667_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 912 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11668 for ECDSA, tcId is 913 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11668_pubkey[] = { 0x8b, 0x0a, 0x02, 0xe6, 0x93, 0x59, 0xfe, 0x5e, 0x11, 0xe1, 0x5f, 0x76, 0x52, 0x77, 0xd4, 0xbb, 0xd3, 0x1e, 0x89, 0x8a, 0x7d, 0xaa, 0x1f, 0xca, 0x22, 0xd6, 0x84, 0x10, 0x37, 0xc8, 0xd7, 0xab, 0x7e, 0x77, 0x1e, 0x12, 0x4d, 0xb6, 0xc3, 0x5c, 0x8a, 0xe8, 0xd2, 0x62, 0x14, 0x0c, 0x4e, 0x47, 0xde, 0x30, 0x1d, 0x8b, 0x0f, 0xdd, 0xfc, 0x25, 0xa7, 0x33, 0x8b, 0x08, 0xab, 0x2d, 0x69, 0x8b, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11668_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11668_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11668 = { .name = "ecdsa_brainpoolp256r1_sha256_11668", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11668_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11668_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11668_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 913 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11669 for ECDSA, tcId is 914 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11669_pubkey[] = { 0x71, 0x4d, 0x08, 0x6c, 0x10, 0x16, 0xbc, 0x3c, 0x73, 0xcb, 0xe0, 0x08, 0xfe, 0x42, 0xe4, 0x41, 0x8a, 0xf1, 0x14, 0xe1, 0x7a, 0xd5, 0xfd, 0x06, 0xb3, 0x57, 0xf4, 0x43, 0xbb, 0xf9, 0x47, 0xd0, 0x17, 0xff, 0x32, 0xe2, 0x99, 0xfd, 0x7e, 0x3e, 0xc7, 0x3d, 0x93, 0x37, 0x47, 0x53, 0xa6, 0x2d, 0x22, 0x73, 0x24, 0xa2, 0x5d, 0xaf, 0x47, 0xec, 0x5d, 0x06, 0x30, 0xff, 0xe2, 0xc0, 0x21, 0x9a, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11669_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11669_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11669 = { .name = "ecdsa_brainpoolp256r1_sha256_11669", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11669_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11669_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11669_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 914 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11670 for ECDSA, tcId is 915 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11670_pubkey[] = { 0x58, 0xe2, 0x60, 0xbe, 0xaa, 0x21, 0x77, 0xf6, 0x1a, 0x1a, 0xa2, 0x4b, 0x70, 0xb1, 0x04, 0xf3, 0xed, 0x7c, 0xe9, 0x97, 0xe1, 0xe7, 0x64, 0xf2, 0xf7, 0xaf, 0x88, 0x09, 0xc8, 0x32, 0x99, 0xac, 0x41, 0xcc, 0xe5, 0x10, 0xd2, 0xab, 0xd1, 0xb9, 0xae, 0x5d, 0x6d, 0x62, 0x1b, 0xf7, 0x64, 0x76, 0xc3, 0x80, 0x4c, 0x1d, 0x9d, 0xf0, 0xdc, 0xf3, 0x68, 0xff, 0x21, 0x46, 0x89, 0xf2, 0x0a, 0x92, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11670_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11670_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11670 = { .name = "ecdsa_brainpoolp256r1_sha256_11670", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11670_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11670_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11670_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 915 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11671 for ECDSA, tcId is 916 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11671_pubkey[] = { 0x6e, 0x7f, 0x19, 0xd3, 0xf4, 0xb8, 0xa5, 0x44, 0x3f, 0x4b, 0x46, 0x04, 0x46, 0x09, 0x9c, 0x71, 0xc1, 0xac, 0xa4, 0xf7, 0xe3, 0xb4, 0x01, 0x52, 0xe2, 0x5e, 0x33, 0x2e, 0x14, 0xcd, 0xb7, 0xd8, 0x33, 0x29, 0x5a, 0xfc, 0x0c, 0xb4, 0xf8, 0xdd, 0x47, 0x85, 0x89, 0xec, 0x32, 0xfd, 0x30, 0xde, 0x71, 0x6c, 0x37, 0x88, 0xc3, 0x5f, 0x15, 0xf1, 0xa0, 0xeb, 0x3f, 0xe6, 0xca, 0xd0, 0x85, 0xfe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11671_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11671_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11671 = { .name = "ecdsa_brainpoolp256r1_sha256_11671", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11671_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11671_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11671_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 916 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11672 for ECDSA, tcId is 917 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11672_pubkey[] = { 0xa8, 0x88, 0x89, 0x9c, 0x0d, 0x57, 0x11, 0x68, 0x43, 0x17, 0x30, 0xd7, 0xf2, 0x40, 0x18, 0xd3, 0x40, 0xf0, 0xa1, 0x4f, 0xd4, 0x5d, 0x8b, 0xa7, 0x47, 0xa0, 0x28, 0xde, 0x41, 0xdd, 0x38, 0x72, 0x45, 0x41, 0xc3, 0x8e, 0x87, 0xf6, 0x2f, 0x2f, 0x12, 0x94, 0x92, 0x3c, 0x28, 0xf7, 0x9b, 0x38, 0x02, 0xde, 0xb6, 0x63, 0x43, 0x66, 0xf1, 0x7d, 0x3e, 0x5b, 0x69, 0x9e, 0x9c, 0x4c, 0x85, 0x34, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11672_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11672_sig[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11672 = { .name = "ecdsa_brainpoolp256r1_sha256_11672", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11672_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11672_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11672_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 917 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11673 for ECDSA, tcId is 918 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11673_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11673_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11673_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11673 = { .name = "ecdsa_brainpoolp256r1_sha256_11673", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11673_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11673_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11673_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 918 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11674 for ECDSA, tcId is 919 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11674_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x54, 0x7e, 0xf8, 0x35, 0xc3, 0xda, 0xc4, 0xfd, 0x97, 0xf8, 0x46, 0x1a, 0x14, 0x61, 0x1d, 0xc9, 0xc2, 0x77, 0x45, 0x13, 0x2d, 0xed, 0x8e, 0x54, 0x5c, 0x1d, 0x54, 0xc7, 0x2f, 0x04, 0x69, 0x97, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11674_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11674_sig[] = { 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11674 = { .name = "ecdsa_brainpoolp256r1_sha256_11674", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11674_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11674_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11674_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 919 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11675 for ECDSA, tcId is 920 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11675_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11675_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11675_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11675 = { .name = "ecdsa_brainpoolp256r1_sha256_11675", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11675_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11675_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11675_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 920 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11676 for ECDSA, tcId is 921 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11676_pubkey[] = { 0x8b, 0xd2, 0xae, 0xb9, 0xcb, 0x7e, 0x57, 0xcb, 0x2c, 0x4b, 0x48, 0x2f, 0xfc, 0x81, 0xb7, 0xaf, 0xb9, 0xde, 0x27, 0xe1, 0xe3, 0xbd, 0x23, 0xc2, 0x3a, 0x44, 0x53, 0xbd, 0x9a, 0xce, 0x32, 0x62, 0x55, 0x7c, 0x5f, 0xa5, 0xde, 0x13, 0xe4, 0xbe, 0xa6, 0x6d, 0xc4, 0x76, 0x89, 0x22, 0x6f, 0xa8, 0xab, 0xc4, 0xb1, 0x10, 0xa7, 0x38, 0x91, 0xd3, 0xc3, 0xf5, 0xf3, 0x55, 0xf0, 0x69, 0xe9, 0xe0, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11676_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11676_sig[] = { 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11676 = { .name = "ecdsa_brainpoolp256r1_sha256_11676", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11676_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11676_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11676_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 921 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11677 for ECDSA, tcId is 922 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11677_pubkey[] = { 0x23, 0x1e, 0xa7, 0x6f, 0x94, 0x14, 0xe4, 0x66, 0x72, 0x65, 0xc9, 0x75, 0x06, 0x66, 0xb3, 0x8b, 0x6e, 0x9b, 0xde, 0x67, 0xfb, 0x07, 0x4f, 0x78, 0xd2, 0x5e, 0x7b, 0x18, 0x07, 0xa4, 0x5a, 0x46, 0x18, 0x2e, 0x26, 0x2b, 0x40, 0x38, 0xcc, 0x68, 0x68, 0x51, 0x6f, 0xbf, 0x12, 0xbd, 0x4d, 0xca, 0x20, 0x7c, 0x17, 0x56, 0x4e, 0x5a, 0x04, 0x9c, 0x60, 0xb5, 0xd5, 0xdd, 0x09, 0xc7, 0x3d, 0x22, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11677_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11677_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0x02, 0x7b, 0x80, 0x1f, 0xc4, 0x79, 0x30, 0x8f, 0xf5, 0x39, 0x9a, 0x88, 0x25, 0xfc, 0xce, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11677 = { .name = "ecdsa_brainpoolp256t1_sha256_11677", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11677_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11677_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11677_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 922 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11678 for ECDSA, tcId is 923 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11678_pubkey[] = { 0x23, 0x1e, 0xa7, 0x6f, 0x94, 0x14, 0xe4, 0x66, 0x72, 0x65, 0xc9, 0x75, 0x06, 0x66, 0xb3, 0x8b, 0x6e, 0x9b, 0xde, 0x67, 0xfb, 0x07, 0x4f, 0x78, 0xd2, 0x5e, 0x7b, 0x18, 0x07, 0xa4, 0x5a, 0x46, 0x18, 0x2e, 0x26, 0x2b, 0x40, 0x38, 0xcc, 0x68, 0x68, 0x51, 0x6f, 0xbf, 0x12, 0xbd, 0x4d, 0xca, 0x20, 0x7c, 0x17, 0x56, 0x4e, 0x5a, 0x04, 0x9c, 0x60, 0xb5, 0xd5, 0xdd, 0x09, 0xc7, 0x3d, 0x22, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11678_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11678_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x75, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11678 = { .name = "ecdsa_brainpoolp256t1_sha256_11678", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11678_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11678_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11678_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 923 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11679 for ECDSA, tcId is 924 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11679_pubkey[] = { 0x85, 0xd4, 0xbe, 0x1e, 0x69, 0xcb, 0x9b, 0x5a, 0x0c, 0x3b, 0xe6, 0xfd, 0x07, 0x57, 0x6b, 0xff, 0xa6, 0x1e, 0x9a, 0x43, 0x0b, 0x2f, 0xa4, 0xa8, 0x0e, 0xf8, 0x60, 0xca, 0x6d, 0xe2, 0xa4, 0xe5, 0x80, 0x03, 0xcf, 0xc8, 0xde, 0x01, 0xdb, 0x91, 0xd3, 0x7d, 0xc7, 0x6d, 0x1e, 0x3b, 0xd9, 0x5a, 0xea, 0x47, 0xc3, 0x01, 0xf1, 0xb9, 0x87, 0xcd, 0x2d, 0xda, 0xf5, 0xe9, 0x1b, 0xe7, 0x7f, 0x15, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11679_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11679_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11679 = { .name = "ecdsa_brainpoolp256t1_sha256_11679", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11679_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11679_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11679_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 924 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11680 for ECDSA, tcId is 925 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11680_pubkey[] = { 0x3b, 0x0a, 0x4f, 0x1e, 0x4d, 0x84, 0xc6, 0xbf, 0xd2, 0x03, 0xa0, 0xea, 0x04, 0xd7, 0xa9, 0x41, 0x9b, 0xcd, 0x59, 0xb0, 0xff, 0x87, 0x57, 0x60, 0x97, 0x01, 0xb6, 0x18, 0x81, 0xed, 0xa3, 0xb7, 0x9b, 0xc8, 0x47, 0x64, 0xca, 0xa0, 0xdd, 0x08, 0x15, 0xca, 0x06, 0xfc, 0x0b, 0x38, 0xd7, 0xe8, 0x40, 0xea, 0xbc, 0xcf, 0x94, 0x56, 0x97, 0x43, 0x89, 0x44, 0xd5, 0x85, 0x97, 0x72, 0xae, 0xb4, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11680_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11680_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4a, 0xb8, 0xde, 0x0a, 0x51, 0x48, 0x1b, 0xc4, 0x57, 0x94, 0xb9, 0x24, 0x51, 0x8f, 0x2d, 0xd6, 0xac, 0x5c, 0xce, 0x31, 0xf3, 0x22, 0x8d, 0x62, 0x4c, 0x5a, 0x89, 0x6f, 0x79, 0xa2, 0xd6, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11680 = { .name = "ecdsa_brainpoolp256t1_sha256_11680", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11680_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11680_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11680_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 925 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11681 for ECDSA, tcId is 926 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11681_pubkey[] = { 0x5a, 0x40, 0xfc, 0xf1, 0x5f, 0x97, 0x49, 0x25, 0x4e, 0xbc, 0xc9, 0xc8, 0xe1, 0xfe, 0xce, 0xbb, 0x12, 0x48, 0xf5, 0xce, 0x29, 0xdd, 0xdc, 0x26, 0x70, 0x23, 0x57, 0xbe, 0xde, 0xbf, 0xa0, 0x15, 0x4e, 0x25, 0xe1, 0x9b, 0x6b, 0x63, 0xfe, 0x08, 0x91, 0x4f, 0x40, 0x62, 0xc0, 0xa5, 0x64, 0xac, 0x53, 0x33, 0x63, 0x2f, 0x10, 0x86, 0x41, 0x54, 0x64, 0xd6, 0x71, 0x62, 0x6b, 0xc4, 0xdc, 0x56, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11681_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11681_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8b, 0x1b, 0x5f, 0x89, 0xf5, 0xbb, 0x74, 0xca, 0xa4, 0x2d, 0x36, 0xe6, 0x01, 0xa9, 0xf3, 0xc2, 0x0b, 0x4e, 0x6c, 0x91, 0xce, 0xb9, 0x8a, 0x52, 0xfb, 0xfa, 0x9f, 0x81, 0x78, 0x1b, 0x8a, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11681 = { .name = "ecdsa_brainpoolp256t1_sha256_11681", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11681_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11681_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11681_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 926 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11682 for ECDSA, tcId is 927 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11682_pubkey[] = { 0x4e, 0xe4, 0xaf, 0xf9, 0x86, 0x84, 0x19, 0x90, 0x6d, 0x59, 0x46, 0xb3, 0xcc, 0x33, 0x8f, 0xa4, 0xdb, 0x92, 0xa1, 0xd0, 0x16, 0xa5, 0xc6, 0xc6, 0x97, 0x06, 0x2d, 0x2c, 0x39, 0xdf, 0xf5, 0x7a, 0x7a, 0x30, 0x8c, 0x37, 0xa2, 0x61, 0x0a, 0xbc, 0x9e, 0x60, 0x46, 0x66, 0xc5, 0x34, 0x95, 0xbd, 0x43, 0x59, 0x90, 0x3e, 0x47, 0x11, 0x95, 0x70, 0x93, 0x59, 0x84, 0xb3, 0x4d, 0x11, 0x80, 0x18, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11682_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11682_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11682 = { .name = "ecdsa_brainpoolp256t1_sha256_11682", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11682_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11682_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11682_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 927 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11683 for ECDSA, tcId is 928 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11683_pubkey[] = { 0x5e, 0xf5, 0xef, 0xbf, 0xae, 0xb5, 0xcb, 0x4c, 0x2c, 0x9f, 0x8d, 0xb7, 0x6c, 0xdb, 0x6f, 0x83, 0x2a, 0xda, 0xbd, 0xa8, 0xc3, 0xa8, 0x82, 0xe9, 0x9f, 0x9a, 0xb2, 0x3d, 0x89, 0x62, 0xb7, 0xcb, 0x33, 0x09, 0x7a, 0xd4, 0xf6, 0x7e, 0x9c, 0xbb, 0x90, 0xb8, 0xbb, 0xd2, 0xb7, 0x1f, 0x45, 0x54, 0x81, 0x8a, 0xc5, 0xae, 0xb1, 0xf3, 0x96, 0xac, 0x6d, 0x49, 0x62, 0x6e, 0xdd, 0x51, 0xb0, 0xc2, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11683_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11683_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11683 = { .name = "ecdsa_brainpoolp256t1_sha256_11683", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11683_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11683_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11683_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 928 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11684 for ECDSA, tcId is 929 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11684_pubkey[] = { 0x3e, 0x84, 0x03, 0x56, 0x6c, 0x4b, 0xd4, 0x5d, 0xc1, 0xa3, 0xe3, 0x3f, 0xfc, 0x44, 0x48, 0x2c, 0x10, 0x3e, 0xab, 0x15, 0x03, 0x27, 0xe5, 0x28, 0x79, 0xd9, 0x1f, 0xae, 0xc4, 0xb4, 0x1b, 0xa2, 0x7f, 0xa8, 0x71, 0x29, 0xce, 0xd3, 0x13, 0xce, 0x07, 0x3e, 0x97, 0x72, 0xf0, 0xd4, 0x86, 0x2d, 0x87, 0x9c, 0x39, 0xe5, 0xd1, 0x51, 0x2e, 0x1a, 0x47, 0xe4, 0x33, 0x03, 0xd9, 0xdd, 0xfb, 0x1d, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11684_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11684_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11684 = { .name = "ecdsa_brainpoolp256t1_sha256_11684", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11684_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11684_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11684_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 929 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11685 for ECDSA, tcId is 930 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11685_pubkey[] = { 0x3e, 0x84, 0x03, 0x56, 0x6c, 0x4b, 0xd4, 0x5d, 0xc1, 0xa3, 0xe3, 0x3f, 0xfc, 0x44, 0x48, 0x2c, 0x10, 0x3e, 0xab, 0x15, 0x03, 0x27, 0xe5, 0x28, 0x79, 0xd9, 0x1f, 0xae, 0xc4, 0xb4, 0x1b, 0xa2, 0x7f, 0xa8, 0x71, 0x29, 0xce, 0xd3, 0x13, 0xce, 0x07, 0x3e, 0x97, 0x72, 0xf0, 0xd4, 0x86, 0x2d, 0x87, 0x9c, 0x39, 0xe5, 0xd1, 0x51, 0x2e, 0x1a, 0x47, 0xe4, 0x33, 0x03, 0xd9, 0xdd, 0xfb, 0x1d, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11685_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11685_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11685 = { .name = "ecdsa_brainpoolp256t1_sha256_11685", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11685_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11685_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11685_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 930 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11686 for ECDSA, tcId is 931 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11686_pubkey[] = { 0x14, 0x03, 0x3c, 0x11, 0x57, 0x78, 0xc4, 0x70, 0x34, 0xa8, 0xdc, 0xd2, 0x09, 0x12, 0xfa, 0x3d, 0xfa, 0x7c, 0x68, 0xaa, 0xf2, 0x4b, 0x5c, 0xab, 0xc4, 0xc8, 0xd0, 0x32, 0xf3, 0x27, 0x58, 0xf8, 0x55, 0xec, 0x2a, 0x8c, 0x30, 0x33, 0xa2, 0xa8, 0x32, 0xfc, 0x2f, 0x49, 0x6d, 0x8f, 0xc0, 0x67, 0x54, 0x7b, 0xbf, 0xfd, 0x37, 0xe7, 0xea, 0x73, 0x14, 0xbb, 0xa8, 0xa0, 0xe2, 0xe3, 0x8b, 0xc8, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11686_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11686_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x5b, 0x2d, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11686 = { .name = "ecdsa_brainpoolp256t1_sha256_11686", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11686_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11686_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11686_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 931 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11687 for ECDSA, tcId is 932 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11687_pubkey[] = { 0x8a, 0x9f, 0xcc, 0x60, 0x10, 0x3a, 0x2c, 0xa5, 0xb2, 0xc4, 0xd8, 0x88, 0x43, 0xe2, 0x24, 0x78, 0x5a, 0x2b, 0x05, 0x40, 0xbd, 0x89, 0xa1, 0x4d, 0x2f, 0x32, 0x0a, 0x95, 0x3a, 0xac, 0x5d, 0x78, 0x9f, 0x21, 0x53, 0xa6, 0x64, 0xaa, 0x7e, 0x15, 0x0c, 0x0e, 0x26, 0x79, 0x21, 0x89, 0x46, 0x96, 0xc6, 0xce, 0xcb, 0xab, 0xa8, 0x54, 0x45, 0x7f, 0xc4, 0x2c, 0x9d, 0x24, 0x86, 0x4a, 0x08, 0xa1, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11687_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11687_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x28, 0x27, 0x37, 0x05, 0x84, 0xfd, 0xeb, 0x9f, 0x5d, 0x5a, 0x9f, 0xb9, 0x57, 0x9a, 0x09, 0x39, 0x0e, 0xfb, 0x6f, 0x9d, 0x99, 0xb6, 0x4f, 0xc1, 0x88, 0xd8, 0xbc, 0xe0, 0x5c, 0x2d, 0x4e, 0xed, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11687 = { .name = "ecdsa_brainpoolp256t1_sha256_11687", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11687_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11687_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11687_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 932 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11688 for ECDSA, tcId is 933 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11688_pubkey[] = { 0x7e, 0xb8, 0x6f, 0x8e, 0x5d, 0x2a, 0xdf, 0x7c, 0xc4, 0xcb, 0xd8, 0x84, 0x9c, 0xa3, 0xac, 0x81, 0x15, 0x40, 0xfd, 0x35, 0xf6, 0x0b, 0xd6, 0x91, 0xdb, 0xc6, 0x66, 0xa8, 0x94, 0xee, 0x6e, 0x5c, 0x6c, 0x1d, 0xaa, 0x6f, 0xaf, 0x62, 0x31, 0x8d, 0xc5, 0xf1, 0xdb, 0xa7, 0x36, 0xf8, 0x41, 0xbb, 0x21, 0xaf, 0x46, 0xaa, 0x6a, 0xc1, 0x7f, 0x78, 0x66, 0x20, 0x18, 0xd4, 0x5f, 0xbd, 0xcc, 0x3f, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11688_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11688_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x49, 0x37, 0xa0, 0x87, 0x73, 0x1d, 0xf4, 0xfe, 0xbc, 0x2c, 0x3a, 0x81, 0xdd, 0xfb, 0xab, 0x5d, 0xc3, 0xaf, 0x95, 0x08, 0x17, 0xf4, 0x1b, 0x59, 0x0d, 0x15, 0x6e, 0xd4, 0x09, 0xad, 0x28, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11688 = { .name = "ecdsa_brainpoolp256t1_sha256_11688", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11688_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11688_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11688_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 933 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11689 for ECDSA, tcId is 934 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11689_pubkey[] = { 0x12, 0x06, 0xe3, 0xa8, 0x02, 0xf5, 0x9b, 0x8e, 0xd7, 0x07, 0x47, 0x45, 0x30, 0xc3, 0x7a, 0x8c, 0x25, 0xef, 0xdf, 0xb1, 0xbc, 0xb2, 0xcf, 0xea, 0x3c, 0x81, 0x3b, 0x58, 0xeb, 0x66, 0x7e, 0x17, 0x15, 0xe7, 0x8d, 0xc7, 0x01, 0x70, 0xf2, 0x72, 0x0c, 0xf0, 0x33, 0x14, 0x32, 0xd6, 0x11, 0x48, 0x59, 0x1e, 0xbc, 0xfc, 0x4d, 0x20, 0xc6, 0xa3, 0xfd, 0x01, 0xaf, 0xd9, 0xfa, 0x6a, 0x9e, 0x80, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11689_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11689_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x91, 0x82, 0x7d, 0x03, 0xbb, 0x6d, 0xac, 0x31, 0x94, 0x0b, 0xa5, 0x6e, 0xd8, 0x84, 0x89, 0x04, 0x8f, 0xf1, 0x73, 0xf0, 0xbf, 0x20, 0xca, 0xb2, 0x0d, 0xcc, 0x08, 0x6f, 0xca, 0x37, 0xf2, 0x85, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11689 = { .name = "ecdsa_brainpoolp256t1_sha256_11689", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11689_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11689_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11689_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 934 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11690 for ECDSA, tcId is 935 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11690_pubkey[] = { 0x8a, 0x33, 0xc9, 0x01, 0x7b, 0xa0, 0xf1, 0x9e, 0xd4, 0x4c, 0xbd, 0xf7, 0xc9, 0x81, 0x70, 0x24, 0xc3, 0xf0, 0x95, 0xa8, 0x99, 0xad, 0xaf, 0xdc, 0xfe, 0x7d, 0xd6, 0xf5, 0x1f, 0xfe, 0xf9, 0x51, 0x8c, 0x56, 0xc0, 0x9c, 0xcf, 0xcb, 0xe2, 0x25, 0x08, 0x38, 0x63, 0x0e, 0x26, 0x76, 0x4b, 0xa9, 0xe1, 0xbc, 0x10, 0x92, 0xbc, 0xce, 0xc6, 0x13, 0x5c, 0x29, 0xf3, 0x1f, 0x61, 0x7c, 0x14, 0xca, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11690_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11690_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11690 = { .name = "ecdsa_brainpoolp256t1_sha256_11690", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11690_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11690_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11690_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 935 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11691 for ECDSA, tcId is 936 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11691_pubkey[] = { 0xa5, 0xd5, 0xc0, 0xef, 0xc3, 0x90, 0x1f, 0x30, 0x8b, 0xf4, 0x25, 0x1b, 0xb0, 0xcc, 0x28, 0x44, 0xe5, 0xab, 0xce, 0xe9, 0x09, 0x6d, 0x11, 0x81, 0x34, 0xfd, 0x71, 0x4d, 0x13, 0xf2, 0xd0, 0x30, 0x8e, 0xf8, 0x06, 0x71, 0xc7, 0x1b, 0xd6, 0xbf, 0x6e, 0x33, 0x33, 0x25, 0xb5, 0x61, 0xb3, 0xc0, 0xc3, 0xd1, 0xa4, 0xdb, 0x1a, 0xc7, 0xed, 0x8b, 0x0f, 0xe0, 0x9b, 0x3b, 0x32, 0x53, 0xcd, 0x56, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11691_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11691_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0x3e, 0xb3, 0x5f, 0xe7, 0xe8, 0x33, 0x1f, 0x71, 0xe4, 0xc6, 0x3b, 0x45, 0xf3, 0x49, 0xa9, 0x9d, 0x47, 0xa5, 0xe7, 0x81, 0x79, 0x8e, 0x57, 0x9f, 0x23, 0x86, 0x19, 0x5d, 0x38, 0x27, 0xbb, 0x15, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11691 = { .name = "ecdsa_brainpoolp256t1_sha256_11691", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11691_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11691_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11691_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 936 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11692 for ECDSA, tcId is 937 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11692_pubkey[] = { 0x8a, 0xed, 0xe4, 0x64, 0x83, 0x55, 0x45, 0x1e, 0x9a, 0xc8, 0x2e, 0x48, 0x0f, 0xee, 0x5c, 0x4c, 0x90, 0x49, 0x2d, 0x05, 0x3e, 0xce, 0x6f, 0x77, 0xd1, 0x53, 0x87, 0x8b, 0x51, 0xe1, 0x3a, 0x4e, 0x9c, 0x3f, 0xd7, 0xe2, 0x29, 0xec, 0x77, 0xab, 0x92, 0xba, 0x6c, 0xa5, 0x70, 0x05, 0xcb, 0x25, 0x31, 0x3b, 0x36, 0x29, 0xd3, 0x34, 0x09, 0xb1, 0x5d, 0x34, 0xca, 0xbe, 0x08, 0xfe, 0xc3, 0x1a, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11692_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11692_sig[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x29, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11692 = { .name = "ecdsa_brainpoolp256t1_sha256_11692", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11692_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11692_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11692_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 937 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11693 for ECDSA, tcId is 938 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11693_pubkey[] = { 0xa3, 0xe8, 0x2d, 0x3f, 0x4e, 0x53, 0x2d, 0xa8, 0xf2, 0xfb, 0x62, 0x7e, 0x07, 0x43, 0x6c, 0x86, 0x92, 0x3e, 0x7b, 0xcd, 0x30, 0x55, 0x70, 0x62, 0x50, 0x07, 0x42, 0x57, 0xfa, 0xd3, 0xf1, 0x05, 0x2d, 0x01, 0xc6, 0xd7, 0xe6, 0xd0, 0x65, 0xc3, 0xb2, 0x5e, 0x4f, 0x85, 0xd2, 0x11, 0xe0, 0x60, 0x20, 0x8d, 0x7d, 0xad, 0x38, 0xa5, 0x6b, 0xbd, 0x39, 0x7f, 0x78, 0x5a, 0xb7, 0x78, 0x20, 0xa8, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11693_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11693_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11693 = { .name = "ecdsa_brainpoolp256t1_sha256_11693", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11693_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11693_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11693_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 938 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11694 for ECDSA, tcId is 939 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11694_pubkey[] = { 0xa3, 0xe8, 0x2d, 0x3f, 0x4e, 0x53, 0x2d, 0xa8, 0xf2, 0xfb, 0x62, 0x7e, 0x07, 0x43, 0x6c, 0x86, 0x92, 0x3e, 0x7b, 0xcd, 0x30, 0x55, 0x70, 0x62, 0x50, 0x07, 0x42, 0x57, 0xfa, 0xd3, 0xf1, 0x05, 0x2d, 0x01, 0xc6, 0xd7, 0xe6, 0xd0, 0x65, 0xc3, 0xb2, 0x5e, 0x4f, 0x85, 0xd2, 0x11, 0xe0, 0x60, 0x20, 0x8d, 0x7d, 0xad, 0x38, 0xa5, 0x6b, 0xbd, 0x39, 0x7f, 0x78, 0x5a, 0xb7, 0x78, 0x20, 0xa8, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11694_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11694_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11694 = { .name = "ecdsa_brainpoolp256t1_sha256_11694", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11694_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11694_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11694_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 939 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11695 for ECDSA, tcId is 940 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11695_pubkey[] = { 0x93, 0x84, 0x61, 0x39, 0x1a, 0xd3, 0x01, 0x80, 0x8f, 0x26, 0x16, 0x9b, 0x23, 0x99, 0x95, 0x07, 0xde, 0x65, 0xe9, 0xaf, 0x8a, 0xf7, 0xe1, 0xf8, 0xe4, 0x80, 0x33, 0x67, 0x65, 0xef, 0x4a, 0x8b, 0x3a, 0x85, 0x8d, 0xbd, 0x1e, 0xf2, 0xcc, 0xa2, 0x92, 0x03, 0xee, 0x73, 0x8d, 0xac, 0xb2, 0x0e, 0x0c, 0x57, 0xf1, 0xbc, 0x77, 0x65, 0x3a, 0x0b, 0xb4, 0x92, 0x9b, 0xc1, 0xfc, 0x4f, 0xe7, 0x92, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11695_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11695_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11695 = { .name = "ecdsa_brainpoolp256t1_sha256_11695", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11695_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11695_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11695_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 940 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11696 for ECDSA, tcId is 941 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11696_pubkey[] = { 0xa8, 0x48, 0x77, 0x4c, 0x60, 0x71, 0x35, 0x9d, 0x13, 0x4f, 0x31, 0x2a, 0xb7, 0x14, 0xc1, 0x33, 0x19, 0x6b, 0xdc, 0x84, 0xcc, 0xb6, 0x39, 0x3d, 0xb5, 0x20, 0x45, 0x5e, 0xd3, 0x89, 0x9a, 0x27, 0x74, 0xcd, 0x1b, 0x4f, 0xd6, 0xf3, 0x3a, 0x06, 0xb1, 0xc0, 0xd5, 0x9b, 0x19, 0x48, 0xab, 0x75, 0xfe, 0x73, 0x95, 0xd1, 0xf9, 0x28, 0xea, 0x71, 0x76, 0x21, 0xed, 0xee, 0xcd, 0x16, 0xaf, 0x13, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11696_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11696_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11696 = { .name = "ecdsa_brainpoolp256t1_sha256_11696", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11696_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11696_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11696_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 941 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11697 for ECDSA, tcId is 942 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11697_pubkey[] = { 0x5b, 0xe4, 0x85, 0x2d, 0x1b, 0xd1, 0x3d, 0x4d, 0xbd, 0x74, 0xbf, 0x82, 0x6f, 0xaa, 0x08, 0x32, 0x2e, 0xc4, 0x32, 0x4a, 0xc5, 0xa3, 0x11, 0xb0, 0xed, 0x60, 0x10, 0x7f, 0xdf, 0xfd, 0xf6, 0xef, 0x3b, 0x07, 0x83, 0xaa, 0x6d, 0xde, 0xf8, 0x29, 0x13, 0x71, 0xce, 0x0b, 0x58, 0x31, 0x42, 0xe2, 0x82, 0x69, 0x2b, 0x99, 0x3a, 0xfa, 0x81, 0xfd, 0x02, 0x34, 0x91, 0x92, 0x14, 0x06, 0xb3, 0xf1, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11697_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11697_sig[] = { 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x53, 0x54, 0xfd, 0xab, 0xed, 0xd0, 0xf7, 0x54, 0xde, 0x1f, 0x33, 0x05, 0x48, 0x4e, 0xc1, 0xc6, 0xb8, 0xc6, 0x1c, 0xbd, 0x51, 0xda, 0xb0, 0xd3, 0x7b, 0xc8, 0x0f, 0x07, 0x41, 0x4b, 0xa4, 0x2b, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11697 = { .name = "ecdsa_brainpoolp256t1_sha256_11697", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11697_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11697_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11697_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 942 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11698 for ECDSA, tcId is 943 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11698_pubkey[] = { 0x95, 0xd8, 0x1e, 0x1d, 0xd9, 0x79, 0x0f, 0xf5, 0x61, 0xdc, 0x95, 0x49, 0x53, 0x71, 0x39, 0x72, 0x50, 0x46, 0x61, 0x22, 0xef, 0x46, 0x1e, 0xbf, 0x70, 0x6d, 0xe3, 0x9e, 0x1f, 0x35, 0x92, 0x9f, 0x18, 0x73, 0x6e, 0x96, 0x13, 0x1c, 0x0c, 0xb9, 0x2c, 0x50, 0x4d, 0xc2, 0x60, 0x25, 0xdb, 0x20, 0xbd, 0x12, 0x4e, 0xce, 0x9c, 0x5c, 0x04, 0x18, 0x2b, 0x3f, 0x0d, 0xd7, 0x9b, 0xbd, 0xaa, 0x55, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11698_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11698_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe0, 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11698 = { .name = "ecdsa_brainpoolp256t1_sha256_11698", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11698_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11698_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11698_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 943 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11699 for ECDSA, tcId is 944 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11699_pubkey[] = { 0x82, 0xfd, 0x28, 0xb9, 0xfa, 0xd4, 0xa3, 0x24, 0xf2, 0xf1, 0x12, 0x4c, 0x8c, 0x3b, 0xf4, 0x57, 0x7b, 0x6a, 0xc6, 0x63, 0x53, 0x77, 0xd0, 0x1d, 0xc5, 0x39, 0x39, 0x9d, 0xfc, 0x48, 0xfe, 0x8e, 0x54, 0x43, 0x5a, 0xc2, 0xfa, 0x06, 0xf4, 0xe7, 0x4b, 0x8e, 0xc7, 0x27, 0x6a, 0x18, 0x5b, 0x15, 0x41, 0x91, 0x82, 0x36, 0x6e, 0x4b, 0xee, 0x33, 0x53, 0x35, 0xa2, 0xb8, 0x7f, 0x27, 0xa9, 0xbc, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11699_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11699_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe0, 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11699 = { .name = "ecdsa_brainpoolp256t1_sha256_11699", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11699_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11699_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11699_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 944 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11700 for ECDSA, tcId is 945 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11700_pubkey[] = { 0x2e, 0xc2, 0xca, 0x24, 0x0d, 0x70, 0x8a, 0xee, 0x13, 0xf5, 0x1f, 0x45, 0xe3, 0xd8, 0x1c, 0xaf, 0x3a, 0xbc, 0x0a, 0x12, 0x05, 0x6c, 0x64, 0x73, 0xf4, 0xac, 0x77, 0xd0, 0x6a, 0x92, 0x43, 0x59, 0x30, 0x74, 0x91, 0x39, 0x04, 0xd9, 0x38, 0x3d, 0xc7, 0x93, 0xa7, 0x52, 0xbb, 0x29, 0x08, 0x5b, 0xeb, 0xbc, 0xbd, 0x22, 0x10, 0x80, 0xf0, 0x51, 0x37, 0xea, 0x26, 0x33, 0xe0, 0x0c, 0x9f, 0x38, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11700_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11700_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe0, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11700 = { .name = "ecdsa_brainpoolp256t1_sha256_11700", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11700_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11700_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11700_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 945 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11701 for ECDSA, tcId is 946 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11701_pubkey[] = { 0x37, 0xe9, 0x6d, 0xd4, 0x9c, 0xec, 0x4d, 0xa5, 0x53, 0x25, 0x78, 0x23, 0x00, 0xd5, 0x6b, 0xad, 0x85, 0xce, 0xb0, 0xbb, 0x89, 0xa6, 0x8f, 0x48, 0x9d, 0x58, 0xb0, 0xca, 0xb8, 0x83, 0xbd, 0xd7, 0x45, 0x68, 0x42, 0x43, 0x86, 0x5d, 0x70, 0x42, 0x69, 0xce, 0xb1, 0xd8, 0x68, 0x2d, 0xd3, 0x70, 0xc4, 0xb5, 0x45, 0x6e, 0xbd, 0xa3, 0x3d, 0x60, 0xdb, 0xa0, 0xc1, 0xfb, 0xa8, 0x49, 0x3d, 0xb7, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11701_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11701_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe0, 0x71, 0x52, 0x3a, 0x92, 0x6b, 0xf4, 0x71, 0x28, 0x29, 0x99, 0x5c, 0x60, 0x69, 0x02, 0x5e, 0x4b, 0xb2, 0xd0, 0xfc, 0x6d, 0x23, 0x96, 0x6f, 0x4f, 0xb5, 0x69, 0x5f, 0x01, 0xba, 0x30, 0x39, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11701 = { .name = "ecdsa_brainpoolp256t1_sha256_11701", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11701_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11701_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11701_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 946 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11702 for ECDSA, tcId is 947 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11702_pubkey[] = { 0x9f, 0x78, 0x7c, 0x4b, 0x13, 0x2b, 0x72, 0x2d, 0x1c, 0x5a, 0x34, 0x04, 0x2e, 0x85, 0x87, 0xd0, 0x01, 0xb3, 0x79, 0xa0, 0xf8, 0x84, 0xbf, 0xf2, 0x13, 0x35, 0xa9, 0x1e, 0x7e, 0x39, 0x3b, 0x79, 0x8a, 0x1c, 0x1e, 0xaf, 0x15, 0x20, 0x06, 0x8b, 0x6e, 0x89, 0x12, 0x22, 0xa4, 0x34, 0xe9, 0xc6, 0x1f, 0x34, 0x90, 0xff, 0xfd, 0xd8, 0x55, 0xe4, 0xf5, 0x47, 0x65, 0x10, 0x5a, 0x6f, 0xcc, 0xd6, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11702_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11702_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x54, 0x63, 0x56, 0x33, 0x12, 0x76, 0x65, 0xed, 0xff, 0x49, 0x96, 0xc3, 0x23, 0x2c, 0x05, 0x89, 0xe4, 0x4a, 0xcc, 0xe6, 0xfb, 0x98, 0x98, 0x85, 0xa1, 0xb9, 0x2d, 0xa5, 0x8c, 0xd4, 0x3c, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11702 = { .name = "ecdsa_brainpoolp256t1_sha256_11702", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11702_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11702_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11702_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 947 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11703 for ECDSA, tcId is 948 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11703_pubkey[] = { 0x85, 0xb0, 0xab, 0x50, 0xfc, 0xd2, 0x81, 0x4f, 0x9e, 0x98, 0x71, 0x2f, 0xd0, 0x8b, 0xf7, 0x7e, 0x95, 0xb9, 0x5f, 0xa0, 0xa3, 0x20, 0x3b, 0x14, 0xe9, 0xd6, 0x45, 0x11, 0xf4, 0x98, 0xdd, 0x53, 0x5a, 0xf7, 0x93, 0xc1, 0x1e, 0x55, 0x4c, 0xe7, 0x87, 0xe6, 0xe4, 0x40, 0x37, 0xce, 0x14, 0x49, 0xef, 0x4e, 0xca, 0x6f, 0x10, 0x87, 0xe7, 0x2b, 0x80, 0x9e, 0x12, 0x8f, 0xed, 0x50, 0xc1, 0xe7, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11703_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11703_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x02, 0x8e, 0xb8, 0xf6, 0xfb, 0x8e, 0x5a, 0x38, 0x33, 0x70, 0x0b, 0x56, 0x87, 0xf1, 0x79, 0x48, 0xbe, 0xee, 0xcf, 0x7c, 0x73, 0xaa, 0x9c, 0x14, 0x43, 0x0e, 0xf3, 0xca, 0x01, 0x60, 0x20, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11703 = { .name = "ecdsa_brainpoolp256t1_sha256_11703", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11703_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11703_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11703_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 948 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11704 for ECDSA, tcId is 949 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11704_pubkey[] = { 0x82, 0x95, 0x8c, 0x57, 0x2d, 0x5b, 0x3d, 0xb6, 0xe1, 0x85, 0x67, 0x36, 0x1b, 0x71, 0x5b, 0x1e, 0x3a, 0xea, 0x2a, 0x39, 0x9f, 0x0a, 0x3c, 0x07, 0x23, 0xfa, 0x7f, 0x39, 0xac, 0x6e, 0xc9, 0x97, 0x20, 0x18, 0x15, 0xb8, 0xab, 0x44, 0x12, 0xa3, 0x63, 0x34, 0x84, 0x4a, 0xfb, 0x6b, 0x40, 0x72, 0x90, 0x24, 0x02, 0x82, 0xb4, 0x03, 0x61, 0x12, 0xdd, 0xf6, 0x1f, 0x28, 0x10, 0x57, 0xc8, 0x62, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11704_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11704_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7c, 0x04, 0xeb, 0x7f, 0x37, 0x30, 0xe2, 0x31, 0xa1, 0xc6, 0xf8, 0x6a, 0x11, 0x04, 0x2f, 0x1a, 0x91, 0x4b, 0x02, 0xbd, 0x83, 0xca, 0x8e, 0x82, 0x67, 0x0f, 0x9b, 0xf9, 0xd1, 0x7d, 0x9e, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11704 = { .name = "ecdsa_brainpoolp256t1_sha256_11704", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11704_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11704_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11704_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 949 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11705 for ECDSA, tcId is 950 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11705_pubkey[] = { 0x32, 0x69, 0x93, 0x0e, 0xc2, 0x84, 0x34, 0x1b, 0x0d, 0x34, 0xff, 0xaa, 0x18, 0x7f, 0x69, 0xca, 0x4d, 0x15, 0x99, 0xda, 0xa8, 0x5f, 0xf7, 0xc2, 0xef, 0x06, 0x9d, 0x75, 0xd6, 0x2a, 0x2e, 0x18, 0x9e, 0xb2, 0xb5, 0xed, 0x18, 0x3a, 0x18, 0xc3, 0x69, 0x62, 0x6e, 0x4e, 0xff, 0x08, 0xf4, 0x2f, 0xb9, 0xd3, 0x28, 0x6d, 0xe2, 0xbc, 0xdb, 0x7c, 0x14, 0x55, 0x07, 0xbd, 0x57, 0xe3, 0x7a, 0x78, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11705_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11705_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3b, 0x3b, 0x27, 0x26, 0x86, 0xd1, 0x38, 0x08, 0x49, 0x88, 0xae, 0x23, 0x08, 0x9d, 0x57, 0xb5, 0x74, 0xfb, 0xab, 0xe9, 0x83, 0xe1, 0xde, 0x35, 0x69, 0x44, 0x42, 0xc2, 0xb9, 0x66, 0x00, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11705 = { .name = "ecdsa_brainpoolp256t1_sha256_11705", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11705_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11705_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11705_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 950 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11706 for ECDSA, tcId is 951 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11706_pubkey[] = { 0x2e, 0xbd, 0xb7, 0xc2, 0xca, 0xec, 0x40, 0x73, 0x58, 0x9a, 0xfd, 0xe5, 0x6e, 0x0f, 0x7e, 0xcd, 0x89, 0x83, 0xfc, 0xc8, 0x0e, 0xac, 0x14, 0x50, 0xaf, 0x82, 0xdc, 0xa4, 0x32, 0x8c, 0x9b, 0x71, 0x98, 0x50, 0x9d, 0x87, 0x72, 0x61, 0xe2, 0xf7, 0x1b, 0x05, 0x05, 0x9e, 0x71, 0xf9, 0xf8, 0x1f, 0xe9, 0x14, 0x66, 0xe5, 0x1e, 0xa1, 0xb8, 0x62, 0x14, 0x07, 0xce, 0x18, 0x2f, 0xfa, 0xdb, 0x45, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11706_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11706_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2e, 0x67, 0xab, 0x25, 0x6e, 0x24, 0x60, 0x48, 0xb8, 0x15, 0x4c, 0x6b, 0xd1, 0x2d, 0xe7, 0x5f, 0x16, 0x57, 0xf9, 0xb2, 0x0e, 0x8d, 0xa0, 0x9b, 0xec, 0xa1, 0x49, 0xa5, 0x17, 0xcb, 0xfb, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11706 = { .name = "ecdsa_brainpoolp256t1_sha256_11706", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11706_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11706_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11706_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 951 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11707 for ECDSA, tcId is 952 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11707_pubkey[] = { 0x2b, 0xb6, 0x09, 0xb2, 0x92, 0x6d, 0x81, 0x62, 0x80, 0xa8, 0x10, 0x43, 0x77, 0xab, 0xab, 0x01, 0x0f, 0xeb, 0x15, 0xa0, 0xc5, 0x37, 0x08, 0x1b, 0xdf, 0x3d, 0x51, 0x52, 0xce, 0x94, 0xe5, 0x76, 0x5a, 0x84, 0xed, 0x06, 0xd1, 0x1a, 0x4b, 0xfd, 0xdf, 0xdc, 0x54, 0x65, 0xb1, 0xc0, 0xe4, 0xf8, 0x91, 0x11, 0x9c, 0xdc, 0xba, 0xaa, 0xd5, 0x2e, 0xee, 0x39, 0xb0, 0x46, 0xaf, 0xb2, 0xc6, 0xcb, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11707_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11707_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5c, 0xcf, 0x56, 0x4a, 0xdc, 0x48, 0xc0, 0x91, 0x70, 0x2a, 0x98, 0xd7, 0xa2, 0x5b, 0xce, 0xbe, 0x2c, 0xaf, 0xf3, 0x64, 0x1d, 0x1b, 0x41, 0x37, 0xd9, 0x42, 0x93, 0x4a, 0x2f, 0x97, 0xf6, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11707 = { .name = "ecdsa_brainpoolp256t1_sha256_11707", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11707_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11707_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11707_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 952 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11708 for ECDSA, tcId is 953 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11708_pubkey[] = { 0x5c, 0x52, 0xce, 0x74, 0xf8, 0x17, 0x8b, 0x36, 0x34, 0x64, 0xf2, 0x1a, 0xd3, 0x5a, 0xf0, 0xe4, 0xeb, 0x94, 0x4c, 0x64, 0x00, 0x65, 0x90, 0xb0, 0x0d, 0x1f, 0x11, 0x0c, 0xe6, 0x6d, 0x19, 0xb6, 0x96, 0x77, 0x7c, 0x5d, 0xd0, 0x1e, 0x7c, 0x52, 0x2b, 0xcc, 0xd7, 0x04, 0xad, 0xeb, 0x23, 0x66, 0x97, 0x61, 0x7e, 0xf7, 0x0b, 0x2b, 0xa2, 0x4a, 0x7b, 0x8e, 0x19, 0xb0, 0x2f, 0xc1, 0xdd, 0x88, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11708_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11708_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x81, 0x97, 0xdc, 0x78, 0xd6, 0xcc, 0xee, 0x96, 0x77, 0xdf, 0x5d, 0x99, 0xf3, 0x82, 0xc8, 0x0c, 0x19, 0xdd, 0x0d, 0x78, 0xba, 0xbb, 0xb8, 0x68, 0x10, 0xd8, 0x39, 0x8b, 0x0c, 0x91, 0x14, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11708 = { .name = "ecdsa_brainpoolp256t1_sha256_11708", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11708_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11708_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11708_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 953 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11709 for ECDSA, tcId is 954 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11709_pubkey[] = { 0x2f, 0xfe, 0x3a, 0x34, 0x41, 0x1f, 0xf5, 0x6f, 0x7c, 0x7d, 0xe8, 0x56, 0x01, 0xcf, 0x4a, 0x07, 0xbf, 0xb3, 0x96, 0x23, 0xef, 0x66, 0x0c, 0xeb, 0x0a, 0xb4, 0x49, 0x3b, 0xe8, 0x91, 0x13, 0x62, 0x73, 0x50, 0x28, 0x76, 0x4c, 0x6e, 0x78, 0x12, 0x19, 0x5d, 0x79, 0x2e, 0xbc, 0x7e, 0x59, 0x54, 0x75, 0x5f, 0x3e, 0x35, 0xc2, 0x84, 0x67, 0xf7, 0x2a, 0x78, 0x90, 0xbb, 0xbf, 0x40, 0x3f, 0x7f, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11709_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11709_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x75, 0x52, 0xd8, 0xce, 0x45, 0x67, 0x4b, 0x22, 0x37, 0x35, 0xb1, 0xc2, 0xd0, 0x94, 0x65, 0x81, 0xcd, 0x06, 0x2d, 0x49, 0x4a, 0x89, 0xf4, 0x2f, 0x58, 0xf0, 0xee, 0x1b, 0xc5, 0xc0, 0xf3, 0x18, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11709 = { .name = "ecdsa_brainpoolp256t1_sha256_11709", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11709_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11709_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11709_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 954 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11710 for ECDSA, tcId is 955 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11710_pubkey[] = { 0x64, 0xaa, 0x0c, 0x89, 0xa2, 0xb6, 0x12, 0xb6, 0x82, 0x08, 0x03, 0x95, 0xda, 0x86, 0x01, 0xd8, 0xd1, 0x9c, 0xd7, 0xca, 0x16, 0x3c, 0x01, 0xee, 0x8d, 0x01, 0x2d, 0xda, 0xce, 0x8e, 0x82, 0xec, 0x41, 0x14, 0xff, 0x21, 0x2a, 0x26, 0x2a, 0x25, 0xf7, 0x98, 0x3e, 0xf1, 0xca, 0xa8, 0xfc, 0x5c, 0x78, 0x1a, 0x06, 0x46, 0x2c, 0x7f, 0x55, 0x6e, 0x69, 0xf1, 0x64, 0xaa, 0xf9, 0xec, 0x0f, 0x40, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11710_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11710_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0x98, 0x8e, 0xeb, 0x5d, 0x91, 0x27, 0x97, 0x14, 0xeb, 0x15, 0x0f, 0xae, 0xa4, 0x83, 0x8e, 0xde, 0x06, 0xb1, 0x65, 0x67, 0xdc, 0x73, 0x91, 0x95, 0x15, 0xd2, 0x8f, 0xf0, 0x4a, 0x12, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11710 = { .name = "ecdsa_brainpoolp256t1_sha256_11710", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11710_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11710_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11710_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 955 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11711 for ECDSA, tcId is 956 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11711_pubkey[] = { 0x80, 0xaf, 0x66, 0xc2, 0x53, 0xb9, 0x3a, 0xcb, 0x4d, 0x5c, 0x06, 0xd2, 0x2f, 0xba, 0x4d, 0xfe, 0xc1, 0x49, 0xd2, 0x43, 0xaf, 0x9f, 0xad, 0x96, 0xb9, 0xb0, 0xab, 0x79, 0x2b, 0xa3, 0x8c, 0x4f, 0x17, 0x1e, 0xb3, 0x5a, 0xee, 0x0a, 0xd6, 0x93, 0xd6, 0xac, 0x63, 0xad, 0xf2, 0x81, 0x38, 0x40, 0xf1, 0x3e, 0x64, 0x32, 0xcb, 0x49, 0x8a, 0xd9, 0xeb, 0x03, 0x56, 0xf6, 0xab, 0xe7, 0xd5, 0x03, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11711_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11711_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x55, 0x98, 0x01, 0xa8, 0x8f, 0x78, 0x43, 0xce, 0x3f, 0x1c, 0x73, 0xcd, 0x7a, 0x57, 0x87, 0xe7, 0xa7, 0xee, 0xad, 0xbc, 0xb9, 0xc9, 0x0e, 0x71, 0xee, 0x64, 0xe0, 0xdd, 0x0a, 0x74, 0x1a, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11711 = { .name = "ecdsa_brainpoolp256t1_sha256_11711", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11711_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11711_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11711_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 956 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11712 for ECDSA, tcId is 957 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11712_pubkey[] = { 0x20, 0xd1, 0xa0, 0x6b, 0xd6, 0xfd, 0xa6, 0x2e, 0x0a, 0x9e, 0xe8, 0xbe, 0x88, 0x68, 0x12, 0x34, 0xd0, 0x4a, 0x51, 0x9a, 0x44, 0xb2, 0x5a, 0x85, 0x15, 0x74, 0x6c, 0x44, 0xaa, 0xd5, 0x78, 0x72, 0x26, 0xd0, 0x0e, 0xf3, 0xec, 0x03, 0xa3, 0x4b, 0x07, 0xef, 0xbb, 0xf1, 0x18, 0x5b, 0xc6, 0xce, 0x1f, 0x30, 0xed, 0x78, 0x08, 0x12, 0xdc, 0xeb, 0xef, 0xe0, 0x46, 0xfc, 0x9b, 0xe6, 0xd9, 0xdc, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11712_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11712_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2b, 0x66, 0x56, 0x8f, 0x06, 0x3d, 0x10, 0xd7, 0x3f, 0x77, 0xa8, 0x6b, 0xe8, 0xc1, 0x85, 0x22, 0xb5, 0xc9, 0x47, 0x49, 0x3b, 0xfc, 0xc2, 0x2f, 0x1d, 0x88, 0x4a, 0x0a, 0x44, 0x09, 0xfc, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11712 = { .name = "ecdsa_brainpoolp256t1_sha256_11712", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11712_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11712_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11712_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 957 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11713 for ECDSA, tcId is 958 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11713_pubkey[] = { 0x9b, 0x3f, 0xc0, 0xec, 0xd0, 0xfc, 0x12, 0x6f, 0xa2, 0xc5, 0x39, 0xe0, 0xf0, 0xb1, 0xeb, 0x32, 0x28, 0x82, 0x96, 0x64, 0xc8, 0x41, 0x77, 0x5a, 0x4d, 0x35, 0x03, 0x25, 0x00, 0xa8, 0xa0, 0x45, 0x22, 0xde, 0x52, 0x13, 0x56, 0x79, 0x9e, 0x53, 0xe4, 0x3a, 0x4f, 0x5a, 0x62, 0xdd, 0xfc, 0x98, 0xaa, 0xe4, 0xa3, 0xcb, 0x9f, 0x0a, 0xe2, 0x09, 0x62, 0x24, 0xdf, 0x1e, 0x84, 0xe9, 0x0d, 0xd6, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11713_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11713_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x02, 0x75, 0xbf, 0x9b, 0x98, 0x71, 0x18, 0xd0, 0xe3, 0x7c, 0x35, 0x08, 0x82, 0x17, 0x8d, 0x48, 0xa5, 0x81, 0x5e, 0xc1, 0xe5, 0x47, 0x41, 0x33, 0x87, 0xcd, 0xfc, 0xe8, 0xbe, 0xcf, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11713 = { .name = "ecdsa_brainpoolp256t1_sha256_11713", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11713_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11713_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11713_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 958 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11714 for ECDSA, tcId is 959 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11714_pubkey[] = { 0x26, 0x59, 0x00, 0x65, 0x6b, 0x73, 0xd7, 0xf3, 0x02, 0x34, 0x19, 0x51, 0x3d, 0x38, 0x09, 0xa9, 0xf7, 0x55, 0x32, 0x80, 0x75, 0x64, 0x51, 0xa4, 0xf5, 0xb9, 0x69, 0x6f, 0x4e, 0xc4, 0x63, 0x0b, 0x8b, 0x4a, 0xb3, 0x25, 0xd5, 0xfa, 0x88, 0x31, 0xb1, 0x66, 0x99, 0x99, 0x3d, 0xc4, 0x9c, 0xc8, 0x7d, 0xb8, 0x70, 0xfd, 0x17, 0x89, 0x86, 0x96, 0x14, 0x65, 0x3b, 0x38, 0xe0, 0xc7, 0x42, 0x19, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11714_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11714_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9b, 0xfc, 0xe5, 0x3d, 0x16, 0x9f, 0x1b, 0xd2, 0xd4, 0x44, 0x07, 0x0b, 0x13, 0xad, 0x08, 0xf6, 0x5d, 0x7b, 0xa7, 0x17, 0xce, 0x41, 0x19, 0xfa, 0x60, 0x14, 0x09, 0xac, 0x64, 0xda, 0xe4, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11714 = { .name = "ecdsa_brainpoolp256t1_sha256_11714", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11714_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11714_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11714_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 959 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11715 for ECDSA, tcId is 960 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11715_pubkey[] = { 0x2c, 0x26, 0xbe, 0x9c, 0x36, 0x92, 0x0f, 0x00, 0x66, 0xec, 0x78, 0x16, 0xcf, 0x91, 0x0e, 0x99, 0xcf, 0xf1, 0xed, 0x2a, 0x4f, 0x76, 0xf2, 0x76, 0x2a, 0x8a, 0x9b, 0xb2, 0x31, 0x22, 0x47, 0x15, 0x2f, 0x59, 0x4f, 0x09, 0xd6, 0xac, 0x32, 0xcf, 0x0b, 0x76, 0x1e, 0xea, 0x8a, 0x29, 0xba, 0x67, 0x51, 0x17, 0x65, 0xff, 0xc5, 0xc6, 0x7c, 0xa0, 0x93, 0xe9, 0x2a, 0x09, 0x17, 0x1b, 0x4e, 0x4a, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11715_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11715_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x73, 0xcc, 0x15, 0x98, 0x50, 0x05, 0x00, 0x2b, 0x76, 0x0d, 0xe9, 0xb4, 0x46, 0x59, 0x91, 0x5f, 0x13, 0x5c, 0x8a, 0xb1, 0x91, 0x5b, 0xa5, 0xc8, 0x3b, 0x2c, 0x80, 0xb6, 0xc1, 0xa8, 0x29, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11715 = { .name = "ecdsa_brainpoolp256t1_sha256_11715", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11715_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11715_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11715_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 960 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11716 for ECDSA, tcId is 961 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11716_pubkey[] = { 0x0c, 0xde, 0x1d, 0x42, 0x75, 0xe0, 0x1f, 0x57, 0xe5, 0xa7, 0x89, 0x68, 0xb6, 0xda, 0x29, 0xd7, 0x04, 0xb1, 0x2d, 0x7e, 0xe1, 0x5f, 0xfd, 0xbf, 0x67, 0xed, 0xb5, 0x39, 0x37, 0xf5, 0x75, 0x50, 0x4c, 0x95, 0xa2, 0xf1, 0x02, 0x57, 0x1f, 0x76, 0x5c, 0x50, 0x9a, 0x89, 0xac, 0x7a, 0x6c, 0xed, 0x5f, 0xed, 0xe5, 0x5b, 0x33, 0x9e, 0xed, 0x90, 0x32, 0xf4, 0x9b, 0xd6, 0x27, 0xf7, 0x52, 0x80, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11716_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11716_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x34, 0xeb, 0x40, 0xa8, 0x32, 0x23, 0xe5, 0x5a, 0x56, 0xbd, 0xd2, 0x5a, 0xda, 0xa1, 0x86, 0x47, 0x66, 0x96, 0xd4, 0x38, 0xbe, 0x1c, 0x46, 0xa9, 0xa8, 0xc4, 0x42, 0xbc, 0x7a, 0x8b, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11716 = { .name = "ecdsa_brainpoolp256t1_sha256_11716", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11716_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11716_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11716_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 961 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11717 for ECDSA, tcId is 962 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11717_pubkey[] = { 0x37, 0x95, 0xaf, 0x81, 0x9e, 0xd2, 0xba, 0xfd, 0xc7, 0x08, 0x71, 0x8f, 0x4f, 0x0b, 0x10, 0xc1, 0x36, 0x2a, 0xe0, 0x21, 0x0b, 0xd7, 0xc6, 0x3c, 0x4f, 0x24, 0x3c, 0xa7, 0xce, 0x72, 0x5e, 0x89, 0x27, 0x95, 0x2b, 0x02, 0xaf, 0x75, 0x54, 0xf5, 0x0f, 0x4e, 0x0c, 0x71, 0x15, 0x0b, 0x6a, 0x03, 0xc8, 0x64, 0x47, 0x9b, 0xfe, 0xca, 0x00, 0xa7, 0x99, 0xa1, 0x32, 0x12, 0x28, 0x8c, 0x1c, 0x01, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11717_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11717_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9f, 0x5a, 0xf5, 0x0a, 0xcc, 0x7c, 0x29, 0xe9, 0xa1, 0xdf, 0x22, 0x1a, 0xd3, 0x7b, 0xac, 0xb5, 0xda, 0x3c, 0xdd, 0x44, 0x7f, 0x51, 0x5f, 0xa6, 0x4b, 0x24, 0x1f, 0xfd, 0x91, 0x0e, 0xae, 0x3f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11717 = { .name = "ecdsa_brainpoolp256t1_sha256_11717", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11717_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11717_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11717_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 962 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11718 for ECDSA, tcId is 963 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11718_pubkey[] = { 0x59, 0xdc, 0xdf, 0x8f, 0xd8, 0x2a, 0xd6, 0xaa, 0xcf, 0x29, 0xc5, 0x88, 0xff, 0xdf, 0x9a, 0xea, 0xb5, 0x4c, 0x89, 0xf6, 0x72, 0x9c, 0xdc, 0x0c, 0x28, 0x6d, 0x5c, 0x11, 0x5b, 0xb5, 0x30, 0x90, 0x71, 0xd4, 0xae, 0xc0, 0x28, 0x02, 0xa3, 0x9e, 0x80, 0x1f, 0x79, 0x3e, 0x87, 0xc9, 0x6d, 0xfb, 0x7f, 0xf4, 0x14, 0xad, 0xb2, 0x4e, 0x60, 0x9f, 0xd8, 0x11, 0x83, 0x5e, 0x59, 0x47, 0xbb, 0xb4, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11718_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11718_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9f, 0x26, 0x26, 0x26, 0x68, 0x9b, 0x3c, 0x32, 0x35, 0xe9, 0x3e, 0x8d, 0xa3, 0x05, 0x43, 0xdd, 0xfb, 0xde, 0x2a, 0xf8, 0x12, 0x93, 0x8a, 0x38, 0x0f, 0x44, 0x40, 0xb6, 0x45, 0x18, 0x7d, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11718 = { .name = "ecdsa_brainpoolp256t1_sha256_11718", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11718_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11718_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11718_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 963 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11719 for ECDSA, tcId is 964 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11719_pubkey[] = { 0x13, 0x39, 0x04, 0xe1, 0xf9, 0x47, 0x86, 0x75, 0x8e, 0x63, 0xdd, 0xf3, 0x82, 0xbd, 0x25, 0xb5, 0x97, 0x93, 0xce, 0x16, 0xe8, 0x1d, 0xc3, 0x3f, 0x79, 0x4e, 0x95, 0x81, 0xcd, 0xe8, 0xda, 0x64, 0x4a, 0x09, 0x9f, 0xe3, 0xb6, 0x7d, 0xac, 0xe4, 0x81, 0xca, 0xe9, 0x3f, 0x0a, 0xe7, 0xec, 0xe9, 0x05, 0xe5, 0xff, 0x3b, 0x41, 0x1c, 0x0a, 0x6a, 0x2d, 0xb4, 0xe2, 0x0a, 0x22, 0x8f, 0xe6, 0x1f, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11719_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11719_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x94, 0x50, 0xf4, 0x71, 0x2f, 0x47, 0xce, 0xa8, 0x2d, 0x6c, 0x72, 0x8a, 0xa8, 0x86, 0xfa, 0x4a, 0x6b, 0x82, 0xdb, 0x4c, 0x6f, 0xc5, 0x6d, 0x78, 0x8e, 0x6a, 0x72, 0xe9, 0xf2, 0xe8, 0xa4, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11719 = { .name = "ecdsa_brainpoolp256t1_sha256_11719", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11719_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11719_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11719_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 964 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11720 for ECDSA, tcId is 965 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11720_pubkey[] = { 0x6d, 0x36, 0xcf, 0x5d, 0x64, 0x3e, 0x4c, 0x77, 0xbe, 0x28, 0xa3, 0x0e, 0xf7, 0x4d, 0x50, 0x16, 0xc5, 0xdf, 0xcb, 0xa4, 0xf1, 0x81, 0x46, 0x7a, 0x0d, 0x8d, 0x41, 0x9c, 0x28, 0xc0, 0xe9, 0x01, 0x0f, 0x09, 0xda, 0xd5, 0xab, 0x90, 0x67, 0x9b, 0x3b, 0xaf, 0x6c, 0xce, 0x79, 0xd8, 0xd8, 0x7c, 0x07, 0x00, 0x5a, 0x86, 0x81, 0x33, 0xdc, 0xc8, 0x98, 0xda, 0x81, 0xc2, 0xc7, 0x60, 0xae, 0x55, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11720_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11720_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x1f, 0x15, 0x6d, 0x9a, 0x2b, 0xd0, 0x5b, 0x6f, 0x7a, 0x2c, 0x27, 0xc8, 0x0f, 0x9b, 0xb7, 0x3f, 0x8d, 0x54, 0x0a, 0xcc, 0x23, 0xb1, 0x37, 0x05, 0xd9, 0x14, 0x83, 0xd6, 0x81, 0xe3, 0x4e, 0xdf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11720 = { .name = "ecdsa_brainpoolp256t1_sha256_11720", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11720_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11720_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11720_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 965 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11721 for ECDSA, tcId is 966 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11721_pubkey[] = { 0x34, 0x6a, 0x4c, 0x28, 0x4d, 0x5f, 0x5a, 0xab, 0x65, 0x77, 0xfa, 0x8e, 0xaa, 0xb3, 0xf4, 0x65, 0xbd, 0x8d, 0xc9, 0x9f, 0x91, 0xc0, 0xfc, 0x32, 0x7d, 0x0d, 0xcf, 0x9f, 0x33, 0x02, 0x93, 0xc2, 0x4a, 0xcc, 0x9f, 0x6c, 0x82, 0xb4, 0x03, 0xb7, 0x8f, 0x97, 0xb3, 0x1e, 0x5f, 0x5e, 0xba, 0xde, 0xe5, 0x24, 0x29, 0x71, 0x6a, 0x3b, 0xd4, 0x84, 0x47, 0x84, 0x97, 0xae, 0x64, 0x9d, 0x2e, 0x66, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11721_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11721_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x33, 0xd5, 0x8c, 0xc1, 0x29, 0x94, 0x0d, 0x5a, 0xf5, 0x3f, 0x5f, 0x8a, 0x6f, 0xd8, 0x2d, 0x43, 0x0e, 0x26, 0xdf, 0x90, 0x8b, 0xf6, 0x49, 0xe8, 0xd1, 0xf5, 0x23, 0x5c, 0xfd, 0x35, 0xde, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11721 = { .name = "ecdsa_brainpoolp256t1_sha256_11721", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11721_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11721_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11721_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 966 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11722 for ECDSA, tcId is 967 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11722_pubkey[] = { 0x6a, 0xf6, 0x1f, 0x84, 0x38, 0x4d, 0xe5, 0x59, 0x10, 0x90, 0xcb, 0x3b, 0x6d, 0x8c, 0x59, 0x20, 0x94, 0xf3, 0x70, 0x2c, 0x24, 0x01, 0xee, 0xe3, 0x92, 0xc9, 0x20, 0xa4, 0x3e, 0x92, 0x73, 0x90, 0xa8, 0x7f, 0x47, 0xa6, 0xd5, 0xdb, 0x9e, 0x88, 0xac, 0x20, 0x01, 0xe1, 0x84, 0x3a, 0x3c, 0xe4, 0xc6, 0x64, 0xbc, 0x33, 0xae, 0xdc, 0xce, 0xf5, 0xf1, 0x04, 0xf3, 0xd3, 0x85, 0x01, 0xca, 0x92, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11722_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11722_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x1e, 0xa9, 0xa1, 0xbf, 0x07, 0x8a, 0x5e, 0x9b, 0x9c, 0x16, 0xad, 0x03, 0xb1, 0x39, 0xad, 0xa7, 0x74, 0x7e, 0x8d, 0x07, 0xef, 0x6b, 0x08, 0xa8, 0xca, 0xb1, 0x58, 0x8e, 0xcc, 0x48, 0xf6, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11722 = { .name = "ecdsa_brainpoolp256t1_sha256_11722", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11722_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11722_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11722_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 967 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11723 for ECDSA, tcId is 968 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11723_pubkey[] = { 0x6c, 0x98, 0x91, 0x34, 0x84, 0xd6, 0x59, 0xac, 0x8b, 0xb2, 0xd2, 0xde, 0xc9, 0x65, 0x05, 0xea, 0xdc, 0xa3, 0xb1, 0xd9, 0x70, 0x3a, 0x71, 0xc5, 0x58, 0x65, 0x5b, 0x8a, 0x9f, 0x35, 0x13, 0xc6, 0x6f, 0x90, 0x5e, 0xc9, 0x36, 0x94, 0x1a, 0x57, 0x98, 0x72, 0x0c, 0x32, 0x84, 0x7c, 0x21, 0x66, 0xa9, 0x1e, 0x87, 0x5f, 0x66, 0xd1, 0x94, 0x9b, 0x9b, 0xfc, 0x9b, 0x3a, 0x72, 0x17, 0xc8, 0x0a, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11723_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11723_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0d, 0xfe, 0x72, 0x9e, 0x8b, 0x4f, 0x8d, 0xe9, 0x6a, 0x22, 0x03, 0x85, 0x89, 0xd6, 0x84, 0x7b, 0x2e, 0xbd, 0xd3, 0x8b, 0xe7, 0x20, 0x8c, 0xfd, 0x30, 0x0a, 0x04, 0xd6, 0x32, 0x6d, 0x72, 0x39, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11723 = { .name = "ecdsa_brainpoolp256t1_sha256_11723", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11723_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11723_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11723_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 968 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11724 for ECDSA, tcId is 969 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11724_pubkey[] = { 0x0c, 0x30, 0xa4, 0x0d, 0xba, 0xd1, 0x24, 0xc5, 0x0f, 0xc8, 0xb4, 0x00, 0x0a, 0x51, 0x54, 0x55, 0x23, 0x38, 0x4f, 0xdc, 0x0c, 0xdc, 0x26, 0x7c, 0xf7, 0x34, 0xf6, 0x5f, 0xb5, 0x59, 0x02, 0xfd, 0x46, 0x30, 0xe4, 0xea, 0xed, 0x17, 0xc1, 0x23, 0x45, 0xef, 0xc9, 0xc8, 0xb5, 0xde, 0x7f, 0xc0, 0x42, 0x71, 0xbf, 0x65, 0xed, 0xe0, 0x3e, 0xe3, 0xdf, 0x46, 0x68, 0xa9, 0x61, 0x9d, 0x93, 0x5f, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11724_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11724_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x69, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11724 = { .name = "ecdsa_brainpoolp256t1_sha256_11724", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11724_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11724_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11724_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 969 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11725 for ECDSA, tcId is 970 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11725_pubkey[] = { 0x6c, 0xa3, 0xfc, 0x25, 0x83, 0x9a, 0x95, 0xaf, 0x40, 0x3e, 0x37, 0x79, 0x4b, 0xad, 0x8a, 0x08, 0xe0, 0xf8, 0x7f, 0xce, 0xb7, 0xac, 0x68, 0x46, 0x87, 0x04, 0x28, 0x48, 0x07, 0xf6, 0x56, 0x01, 0x68, 0x1f, 0x87, 0xc9, 0x5a, 0x55, 0xf1, 0xe2, 0x10, 0xfe, 0x96, 0xf2, 0xd8, 0x9c, 0x33, 0x0b, 0x45, 0xfa, 0x03, 0x40, 0x06, 0xc5, 0x28, 0x0c, 0xe5, 0xc1, 0x77, 0x0f, 0x09, 0x11, 0x38, 0xb6, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11725_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11725_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x68, 0x98, 0x21, 0x8e, 0x25, 0x10, 0x66, 0xd0, 0xcc, 0x5e, 0x64, 0x31, 0x7c, 0x2f, 0x17, 0x7b, 0xe9, 0xd0, 0x08, 0xbb, 0xf7, 0x0f, 0xe1, 0x9f, 0x1c, 0xe3, 0x69, 0x62, 0xa9, 0xe1, 0x70, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11725 = { .name = "ecdsa_brainpoolp256t1_sha256_11725", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11725_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11725_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11725_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 970 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11726 for ECDSA, tcId is 971 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11726_pubkey[] = { 0x3b, 0x0d, 0x31, 0xe4, 0xec, 0x39, 0xf1, 0x94, 0x14, 0x6e, 0x3f, 0xe9, 0x64, 0x8b, 0xba, 0x4e, 0x6c, 0xd9, 0xd5, 0xca, 0x5f, 0x8d, 0xd1, 0x30, 0x4c, 0xde, 0xc0, 0xd3, 0x96, 0xb2, 0x54, 0x47, 0x1c, 0x1b, 0x46, 0x33, 0xbf, 0x35, 0xe5, 0x3f, 0xcf, 0xdd, 0x6e, 0xc8, 0xbd, 0x1d, 0x30, 0xe9, 0x4d, 0x34, 0x28, 0x09, 0xe1, 0x9e, 0x65, 0x1e, 0xa2, 0x65, 0xb9, 0xb0, 0x9b, 0x72, 0x40, 0xc1, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11726_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11726_sig[] = { 0x5b, 0x22, 0x97, 0x42, 0x96, 0xc0, 0x93, 0xfc, 0xc9, 0x93, 0x0e, 0x14, 0x21, 0x5b, 0xb1, 0x98, 0x75, 0xa7, 0xd1, 0xef, 0xb2, 0xef, 0xe0, 0x15, 0x4d, 0x4e, 0x61, 0x96, 0xdd, 0xb3, 0x4d, 0x44, 0x44, 0x08, 0x8a, 0x06, 0x85, 0xdf, 0x19, 0x55, 0x69, 0x62, 0x86, 0xcc, 0x08, 0x3d, 0x35, 0xaf, 0xa8, 0xd2, 0x89, 0x59, 0x27, 0x40, 0x5b, 0x07, 0x31, 0xea, 0xdc, 0xd8, 0xa7, 0x23, 0x37, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11726 = { .name = "ecdsa_brainpoolp256t1_sha256_11726", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11726_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11726_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11726_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 971 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11727 for ECDSA, tcId is 972 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11727_pubkey[] = { 0x3b, 0x0d, 0x31, 0xe4, 0xec, 0x39, 0xf1, 0x94, 0x14, 0x6e, 0x3f, 0xe9, 0x64, 0x8b, 0xba, 0x4e, 0x6c, 0xd9, 0xd5, 0xca, 0x5f, 0x8d, 0xd1, 0x30, 0x4c, 0xde, 0xc0, 0xd3, 0x96, 0xb2, 0x54, 0x47, 0x8d, 0xe0, 0x11, 0xa7, 0xe2, 0xb8, 0xc4, 0x7c, 0x6e, 0x88, 0x9b, 0xc7, 0xe0, 0x66, 0x5c, 0x89, 0x21, 0x07, 0xce, 0x19, 0xf3, 0x87, 0xbb, 0x09, 0x7d, 0xad, 0x8e, 0x6c, 0x83, 0xfc, 0x12, 0xb6, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11727_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11727_sig[] = { 0x5b, 0x22, 0x97, 0x42, 0x96, 0xc0, 0x93, 0xfc, 0xc9, 0x93, 0x0e, 0x14, 0x21, 0x5b, 0xb1, 0x98, 0x75, 0xa7, 0xd1, 0xef, 0xb2, 0xef, 0xe0, 0x15, 0x4d, 0x4e, 0x61, 0x96, 0xdd, 0xb3, 0x4d, 0x44, 0x44, 0x08, 0x8a, 0x06, 0x85, 0xdf, 0x19, 0x55, 0x69, 0x62, 0x86, 0xcc, 0x08, 0x3d, 0x35, 0xaf, 0xa8, 0xd2, 0x89, 0x59, 0x27, 0x40, 0x5b, 0x07, 0x31, 0xea, 0xdc, 0xd8, 0xa7, 0x23, 0x37, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11727 = { .name = "ecdsa_brainpoolp256t1_sha256_11727", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11727_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11727_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11727_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 972 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11728 for ECDSA, tcId is 973 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11728_pubkey[] = { 0x52, 0x98, 0x73, 0x19, 0x64, 0x4a, 0x82, 0x7a, 0x6d, 0x82, 0x08, 0x33, 0x52, 0x48, 0x76, 0x88, 0xf3, 0x3e, 0x20, 0x95, 0xfa, 0xea, 0xcb, 0xc8, 0x3e, 0xc9, 0xc4, 0xe5, 0x3e, 0x03, 0x38, 0xf1, 0x15, 0xb7, 0xed, 0x07, 0x18, 0xc3, 0xb2, 0x1d, 0xa8, 0xae, 0x42, 0xa0, 0xb3, 0x73, 0x5e, 0xb4, 0xfc, 0x7f, 0xda, 0xdb, 0xec, 0x88, 0x3f, 0x35, 0x45, 0x69, 0x8b, 0xd3, 0x30, 0x5c, 0x08, 0x43, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11728_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11728_sig[] = { 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11728 = { .name = "ecdsa_brainpoolp256t1_sha256_11728", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11728_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11728_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11728_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 973 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11729 for ECDSA, tcId is 974 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11729_pubkey[] = { 0x1d, 0x30, 0xcc, 0x1c, 0x88, 0xb5, 0x87, 0xfe, 0x24, 0x8d, 0x14, 0xae, 0x83, 0x91, 0xe2, 0x20, 0x45, 0x17, 0x61, 0x1d, 0xac, 0xd4, 0x3e, 0xea, 0x92, 0x79, 0x53, 0x27, 0xd3, 0xe1, 0x77, 0x48, 0x7f, 0x90, 0x83, 0x71, 0x30, 0xc3, 0x28, 0xb9, 0x39, 0x6d, 0x81, 0x06, 0x10, 0x94, 0xe9, 0x74, 0x1d, 0x07, 0x57, 0x8a, 0xd9, 0x37, 0xe1, 0x2b, 0x45, 0x55, 0x14, 0x63, 0x86, 0x6c, 0x83, 0x67, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11729_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11729_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11729 = { .name = "ecdsa_brainpoolp256t1_sha256_11729", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11729_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11729_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11729_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 974 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11730 for ECDSA, tcId is 975 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11730_pubkey[] = { 0x12, 0x2f, 0x70, 0xe9, 0x85, 0x79, 0xba, 0xb3, 0x3d, 0x71, 0x76, 0x64, 0x86, 0x8d, 0x56, 0xd5, 0xb0, 0x06, 0x83, 0xb5, 0xd5, 0x32, 0x09, 0x1e, 0xed, 0x7f, 0x56, 0xc9, 0xb9, 0xbe, 0xe5, 0xcf, 0x22, 0x69, 0xae, 0x98, 0xc2, 0xc4, 0x0c, 0xcd, 0xaf, 0x44, 0x78, 0x51, 0xe3, 0x6b, 0xd4, 0xd6, 0xc5, 0xd4, 0x6f, 0x57, 0xd7, 0xec, 0xd8, 0xa4, 0xcc, 0x41, 0x55, 0x14, 0xe4, 0x81, 0xbf, 0x11, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11730_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11730_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11730 = { .name = "ecdsa_brainpoolp256t1_sha256_11730", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11730_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11730_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11730_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 975 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11731 for ECDSA, tcId is 976 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11731_pubkey[] = { 0x90, 0x4c, 0x3d, 0x1a, 0x93, 0x9a, 0xc7, 0x5e, 0xdb, 0xe7, 0xc6, 0x6c, 0xbc, 0xb7, 0x51, 0xf7, 0xab, 0x36, 0x9b, 0x68, 0x49, 0x30, 0xea, 0xaa, 0x3c, 0x54, 0x42, 0x03, 0x67, 0xab, 0x00, 0x9a, 0x7e, 0x9b, 0x83, 0x47, 0xee, 0x4d, 0xb6, 0x66, 0xe7, 0x8b, 0xe8, 0x70, 0xa7, 0x32, 0xc6, 0xf4, 0x71, 0xc2, 0x0b, 0x2c, 0xbf, 0x61, 0xcc, 0xe5, 0x9d, 0x81, 0x47, 0x5e, 0x4a, 0x3e, 0x6a, 0x0f, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11731_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11731_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11731 = { .name = "ecdsa_brainpoolp256t1_sha256_11731", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11731_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11731_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11731_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 976 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11732 for ECDSA, tcId is 977 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11732_pubkey[] = { 0x3f, 0x9e, 0x34, 0xf5, 0x12, 0xb8, 0x58, 0x8b, 0x6b, 0x2c, 0x43, 0x84, 0xfc, 0xbb, 0x39, 0x59, 0x79, 0xe6, 0x14, 0x2e, 0xc1, 0x3d, 0x8a, 0xf9, 0x37, 0xc7, 0x25, 0x18, 0x5d, 0x13, 0x29, 0xb2, 0x54, 0xeb, 0xa9, 0xf0, 0x07, 0x58, 0xe1, 0x64, 0x2c, 0x69, 0x4a, 0x19, 0x58, 0xb4, 0xf7, 0x9b, 0x1d, 0xe9, 0x75, 0x95, 0xf4, 0x92, 0xd7, 0xee, 0xb9, 0x70, 0x82, 0x4f, 0x32, 0x6d, 0x91, 0x4e, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11732_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11732_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11732 = { .name = "ecdsa_brainpoolp256t1_sha256_11732", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11732_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11732_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11732_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 977 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11733 for ECDSA, tcId is 978 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11733_pubkey[] = { 0x44, 0x24, 0xf0, 0x9e, 0x4f, 0x86, 0x92, 0x31, 0xe4, 0x7b, 0x1e, 0x34, 0x26, 0xec, 0x26, 0x9e, 0x5b, 0xef, 0x19, 0xec, 0x64, 0xcc, 0x96, 0xda, 0x5b, 0x2e, 0xfd, 0xd2, 0x11, 0x6b, 0x83, 0xf0, 0x7a, 0x86, 0x3d, 0x25, 0x74, 0x3b, 0xb2, 0x60, 0xa6, 0x38, 0xde, 0x64, 0x97, 0x96, 0xc6, 0x76, 0xe1, 0x38, 0x05, 0x86, 0x5c, 0x8b, 0xb9, 0xda, 0xc3, 0x8e, 0x16, 0xfa, 0xe5, 0x4b, 0x0c, 0xef, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11733_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11733_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11733 = { .name = "ecdsa_brainpoolp256t1_sha256_11733", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11733_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11733_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11733_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 978 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11734 for ECDSA, tcId is 979 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11734_pubkey[] = { 0x39, 0x5d, 0x3e, 0x0d, 0xeb, 0xc6, 0xf3, 0xf5, 0xc3, 0x3c, 0xdd, 0x6b, 0x5d, 0x0b, 0x4e, 0x45, 0x7c, 0xfd, 0x94, 0xa7, 0xc2, 0x9b, 0x05, 0xa4, 0x90, 0xff, 0x4e, 0x03, 0x97, 0xd7, 0x3d, 0xca, 0x49, 0x26, 0x8f, 0xaa, 0x79, 0x0b, 0x51, 0x95, 0x5b, 0x29, 0x7a, 0xa0, 0x6f, 0xbb, 0x7c, 0x6f, 0x92, 0xb9, 0xd5, 0x88, 0xd0, 0x43, 0x25, 0x41, 0x5f, 0x08, 0xd1, 0xfb, 0xe9, 0x7c, 0x7c, 0x09, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11734_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11734_sig[] = { 0x83, 0x38, 0x42, 0x7c, 0x7c, 0xf4, 0xd1, 0x1c, 0xb9, 0x81, 0xd9, 0xb1, 0x87, 0x93, 0xe3, 0x77, 0x9c, 0x49, 0x4c, 0x50, 0x2c, 0x75, 0xbd, 0x73, 0x9e, 0x57, 0x8d, 0xe2, 0xa7, 0x00, 0x57, 0x8d, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11734 = { .name = "ecdsa_brainpoolp256t1_sha256_11734", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11734_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11734_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11734_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 979 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11735 for ECDSA, tcId is 980 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11735_pubkey[] = { 0x2d, 0x37, 0x39, 0x20, 0xbf, 0x3f, 0x99, 0x57, 0xe9, 0x2d, 0x32, 0x8b, 0xe3, 0x0b, 0x9c, 0x3e, 0xf5, 0xda, 0x0d, 0xef, 0x50, 0x54, 0x45, 0x77, 0x19, 0x4d, 0x16, 0x7f, 0xf5, 0x5e, 0x55, 0xfd, 0x51, 0xd2, 0x1b, 0xe5, 0x06, 0xe0, 0xaa, 0x23, 0x3f, 0xad, 0x38, 0x69, 0xd1, 0x97, 0xe4, 0x47, 0x4d, 0x2a, 0x90, 0x39, 0x85, 0x0c, 0x22, 0x9a, 0xb7, 0x72, 0xe5, 0x10, 0xc0, 0x6b, 0x20, 0xd5, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11735_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11735_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x38, 0xa9, 0x1d, 0x49, 0x35, 0xfa, 0x38, 0x94, 0x14, 0xcc, 0xae, 0x30, 0x34, 0x81, 0x2f, 0x25, 0xd9, 0x68, 0x7e, 0x36, 0x91, 0xcb, 0x37, 0xa7, 0xda, 0xb4, 0xaf, 0x80, 0xdd, 0x18, 0x1c, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11735 = { .name = "ecdsa_brainpoolp256t1_sha256_11735", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11735_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11735_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11735_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 980 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11736 for ECDSA, tcId is 981 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11736_pubkey[] = { 0x8f, 0x99, 0xec, 0xe4, 0x44, 0x2e, 0xa6, 0xec, 0x2b, 0x4e, 0x41, 0x2c, 0x61, 0x67, 0xf8, 0x47, 0xa3, 0xec, 0x78, 0x19, 0x98, 0x14, 0x8c, 0xd5, 0x82, 0x55, 0xc9, 0xea, 0x34, 0xd3, 0x79, 0xb4, 0x08, 0x0a, 0x03, 0x24, 0x69, 0xe7, 0xbc, 0xc6, 0x4f, 0x0c, 0x38, 0x7b, 0x36, 0x52, 0x52, 0x39, 0x09, 0x06, 0x04, 0xc1, 0x15, 0xfe, 0x89, 0xba, 0xe2, 0xe4, 0x62, 0xcc, 0xc2, 0x6c, 0x41, 0x7b, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11736_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11736_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x79, 0x6a, 0x63, 0x53, 0xbc, 0xcf, 0x0b, 0x86, 0x75, 0xb6, 0x99, 0xd5, 0x02, 0xcb, 0xae, 0x2c, 0x88, 0xbb, 0x57, 0x99, 0x81, 0x8e, 0xe4, 0xf9, 0xf9, 0x3a, 0x0a, 0x5d, 0x47, 0x7c, 0xd0, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11736 = { .name = "ecdsa_brainpoolp256t1_sha256_11736", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11736_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11736_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11736_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 981 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11737 for ECDSA, tcId is 982 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11737_pubkey[] = { 0x06, 0xbd, 0x17, 0xd0, 0xd3, 0x54, 0xec, 0xd7, 0xe8, 0xc7, 0xec, 0xc9, 0x02, 0x0b, 0x1a, 0x78, 0x17, 0x43, 0xb2, 0x46, 0x26, 0x71, 0xd1, 0x9e, 0xcf, 0x7e, 0xe6, 0x91, 0x37, 0xd2, 0x3e, 0x26, 0x09, 0xc5, 0xf6, 0x05, 0xd0, 0xcf, 0x1b, 0x8c, 0xe9, 0x6b, 0x4d, 0x1b, 0x70, 0x39, 0x59, 0x9d, 0xd4, 0xe6, 0x72, 0x6f, 0xd2, 0x7b, 0x34, 0xae, 0xcc, 0x9f, 0xc0, 0x7d, 0x90, 0xad, 0x7f, 0xf8, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11737_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11737_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x87, 0xfc, 0x46, 0x49, 0x4e, 0x58, 0x87, 0xc9, 0xcb, 0x84, 0xd5, 0x40, 0x7e, 0x02, 0xd7, 0x8e, 0x09, 0xc7, 0x95, 0x4f, 0xc4, 0x4e, 0x1f, 0x2c, 0x73, 0x4b, 0x3e, 0xce, 0xdf, 0x6d, 0x12, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11737 = { .name = "ecdsa_brainpoolp256t1_sha256_11737", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11737_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11737_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11737_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 982 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11738 for ECDSA, tcId is 983 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11738_pubkey[] = { 0x5f, 0x89, 0x4c, 0xbb, 0x72, 0x54, 0x9d, 0xed, 0x11, 0xd4, 0x1a, 0xbc, 0xc3, 0x0b, 0xd0, 0x63, 0x4e, 0xa4, 0x50, 0x8a, 0xd1, 0x1b, 0x32, 0x3a, 0x74, 0xa3, 0x1a, 0x95, 0xbe, 0x5b, 0x7c, 0x99, 0x99, 0x6d, 0x7d, 0xe2, 0x28, 0xad, 0x0c, 0x23, 0x09, 0xbe, 0x12, 0xa3, 0x3a, 0x86, 0xc1, 0x70, 0x87, 0x0f, 0x4a, 0x93, 0xb8, 0xf6, 0xce, 0x4c, 0x2f, 0x34, 0x7b, 0x9e, 0xcc, 0x71, 0x5b, 0xbb, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11738_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11738_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x21, 0xff, 0x11, 0x92, 0x53, 0x96, 0x21, 0xf2, 0x72, 0xe1, 0x35, 0x50, 0x1f, 0x80, 0xb5, 0xe3, 0x82, 0x71, 0xe5, 0x53, 0xf1, 0x13, 0x87, 0xcb, 0x1c, 0xd2, 0xcf, 0xb3, 0xb7, 0xdb, 0x44, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11738 = { .name = "ecdsa_brainpoolp256t1_sha256_11738", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11738_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11738_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11738_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 983 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11739 for ECDSA, tcId is 984 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11739_pubkey[] = { 0x78, 0xe1, 0xd4, 0xbe, 0x50, 0x68, 0x25, 0x0d, 0x2c, 0xb2, 0x66, 0x39, 0x7e, 0x72, 0x7c, 0x06, 0x6e, 0x5f, 0x2f, 0x74, 0x7a, 0x86, 0x66, 0xcd, 0x8a, 0xf0, 0x70, 0xd5, 0xb9, 0xed, 0x6a, 0x41, 0x68, 0xa5, 0x46, 0xbe, 0xc8, 0x74, 0xdf, 0xaa, 0x13, 0x00, 0x42, 0x1e, 0x2c, 0xe7, 0x64, 0x6b, 0x6d, 0xfd, 0x8e, 0x7e, 0x5a, 0xc5, 0xa8, 0x21, 0x29, 0xd7, 0x59, 0xff, 0xe4, 0xae, 0xef, 0xff, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11739_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11739_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x30, 0x90, 0xf4, 0x87, 0xe5, 0x1f, 0x9e, 0x35, 0xc8, 0xaf, 0x70, 0xbb, 0x9a, 0xb7, 0xdf, 0x45, 0x03, 0x7e, 0x23, 0x0a, 0x33, 0xd2, 0xc1, 0xfd, 0x96, 0xe4, 0x04, 0x25, 0x4f, 0xcb, 0x86, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11739 = { .name = "ecdsa_brainpoolp256t1_sha256_11739", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11739_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11739_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11739_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 984 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11740 for ECDSA, tcId is 985 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11740_pubkey[] = { 0x8e, 0xea, 0x49, 0x18, 0x01, 0x5d, 0x5d, 0x0b, 0xf2, 0xd8, 0xbc, 0x04, 0x7a, 0x1b, 0x2c, 0xed, 0x1d, 0xa6, 0x88, 0x9e, 0xe4, 0xdf, 0xa5, 0x84, 0x61, 0xa3, 0x51, 0xce, 0x36, 0xbf, 0xf8, 0xf8, 0x19, 0x7e, 0xde, 0x0e, 0x92, 0xb1, 0x00, 0x1f, 0x0f, 0xd8, 0x2c, 0xf6, 0x6f, 0x96, 0xf5, 0x14, 0x71, 0xd4, 0x8a, 0x6d, 0xff, 0xf5, 0x2a, 0xec, 0x62, 0xa9, 0xe1, 0xa3, 0x61, 0xcd, 0x7d, 0x49, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11740_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11740_sig[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x77, 0x47, 0x2d, 0x9a, 0x28, 0xb4, 0xec, 0xe7, 0x1c, 0xf4, 0x13, 0xa6, 0x8e, 0xac, 0x0e, 0xb4, 0x23, 0xa1, 0x6f, 0xb4, 0x62, 0xb1, 0xf4, 0x87, 0x06, 0xfe, 0xd4, 0x8c, 0xa4, 0x37, 0xbd, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11740 = { .name = "ecdsa_brainpoolp256t1_sha256_11740", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11740_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11740_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11740_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 985 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11741 for ECDSA, tcId is 986 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11741_pubkey[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x2d, 0x99, 0x6c, 0x82, 0x34, 0x39, 0xc5, 0x6d, 0x7f, 0x7b, 0x22, 0xe1, 0x46, 0x44, 0x41, 0x7e, 0x69, 0xbc, 0xb6, 0xde, 0x39, 0xd0, 0x27, 0x00, 0x1d, 0xab, 0xe8, 0xf3, 0x5b, 0x25, 0xc9, 0xbe, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11741_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11741_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11741 = { .name = "ecdsa_brainpoolp256t1_sha256_11741", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11741_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11741_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11741_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 986 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11742 for ECDSA, tcId is 987 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11742_pubkey[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x2d, 0x99, 0x6c, 0x82, 0x34, 0x39, 0xc5, 0x6d, 0x7f, 0x7b, 0x22, 0xe1, 0x46, 0x44, 0x41, 0x7e, 0x69, 0xbc, 0xb6, 0xde, 0x39, 0xd0, 0x27, 0x00, 0x1d, 0xab, 0xe8, 0xf3, 0x5b, 0x25, 0xc9, 0xbe, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11742_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11742_sig[] = { 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11742 = { .name = "ecdsa_brainpoolp256t1_sha256_11742", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11742_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11742_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11742_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 987 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11743 for ECDSA, tcId is 988 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11743_pubkey[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x7c, 0x61, 0xeb, 0x59, 0x6d, 0xb4, 0xe4, 0x4e, 0xbe, 0xea, 0xe7, 0xaf, 0x57, 0x3f, 0x4b, 0xf4, 0x04, 0x7f, 0x3f, 0x45, 0x9b, 0x55, 0xf9, 0x28, 0x02, 0x67, 0x5f, 0x29, 0xc4, 0x48, 0x89, 0xb9, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11743_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11743_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11743 = { .name = "ecdsa_brainpoolp256t1_sha256_11743", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11743_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11743_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11743_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 988 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11744 for ECDSA, tcId is 989 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_11744_pubkey[] = { 0xa3, 0xe8, 0xeb, 0x3c, 0xc1, 0xcf, 0xe7, 0xb7, 0x73, 0x22, 0x13, 0xb2, 0x3a, 0x65, 0x61, 0x49, 0xaf, 0xa1, 0x42, 0xc4, 0x7a, 0xaf, 0xbc, 0x2b, 0x79, 0xa1, 0x91, 0x56, 0x2e, 0x13, 0x05, 0xf4, 0x7c, 0x61, 0xeb, 0x59, 0x6d, 0xb4, 0xe4, 0x4e, 0xbe, 0xea, 0xe7, 0xaf, 0x57, 0x3f, 0x4b, 0xf4, 0x04, 0x7f, 0x3f, 0x45, 0x9b, 0x55, 0xf9, 0x28, 0x02, 0x67, 0x5f, 0x29, 0xc4, 0x48, 0x89, 0xb9, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11744_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_11744_sig[] = { 0x56, 0xcc, 0xad, 0x1e, 0x0c, 0x7a, 0x21, 0xae, 0x7e, 0xef, 0x50, 0xd7, 0xd1, 0x83, 0x0a, 0x45, 0x6b, 0x92, 0x8e, 0x92, 0x77, 0xf9, 0x84, 0x5e, 0x3b, 0x10, 0x94, 0x14, 0x88, 0x13, 0xf8, 0x82, 0x18, 0x48, 0x7a, 0x43, 0xf2, 0x8f, 0xcf, 0x1a, 0xe4, 0x57, 0xb8, 0x5d, 0xcd, 0x5b, 0xef, 0xa2, 0x81, 0xbf, 0x11, 0x85, 0x19, 0xe9, 0x60, 0xfe, 0xcb, 0x72, 0x02, 0x12, 0xa7, 0xe5, 0xc3, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_11744 = { .name = "ecdsa_brainpoolp256t1_sha256_11744", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_11744_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_11744_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_11744_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 989 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 11745 for ECDSA, tcId is 990 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11745_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11745_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11745_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x40, 0x64, 0xfb, 0x4c, 0x22, 0x4a, 0x8b, 0x24, 0x8a, 0x0d, 0x93, 0x3f, 0x76, 0x42, 0xbd, 0x56, 0xac, 0xed, 0x9b, 0x12, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11745 = { .name = "ecdsa_brainpoolp320r1_sha384_11745", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11745_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11745_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11745_sig, .siglen = 80, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 990 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11746 for ECDSA, tcId is 991 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11746_pubkey[] = { 0xb2, 0x1e, 0xcd, 0x48, 0xcc, 0x46, 0xfb, 0x30, 0x6e, 0xd5, 0x4e, 0x88, 0xad, 0xb6, 0x15, 0x20, 0x84, 0x57, 0xbd, 0x25, 0x7e, 0x7e, 0x9d, 0x81, 0xdb, 0x5b, 0xd1, 0xf5, 0x61, 0x00, 0xa7, 0xae, 0xbb, 0x13, 0x86, 0x46, 0x55, 0x07, 0xbb, 0xf3, 0x86, 0x22, 0x4c, 0xb3, 0x83, 0x81, 0x5e, 0x1b, 0xab, 0xe5, 0x61, 0xdc, 0xb6, 0xf4, 0x9a, 0xf0, 0x07, 0x3e, 0x1b, 0xfd, 0xa3, 0x66, 0x06, 0x6e, 0xf6, 0x24, 0x40, 0xfc, 0x81, 0xde, 0xc7, 0xec, 0xa0, 0x21, 0xcb, 0x0c, 0x05, 0x09, 0x1d, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11746_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11746_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x23, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11746 = { .name = "ecdsa_brainpoolp320r1_sha384_11746", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11746_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11746_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11746_sig, .siglen = 80, .result = -1, .comment = "r too large, tcId is 991 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11747 for ECDSA, tcId is 992 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11747_pubkey[] = { 0x9c, 0x97, 0x01, 0xde, 0x2f, 0xfd, 0xb2, 0x96, 0xe6, 0xd5, 0x6a, 0x5f, 0x3c, 0x18, 0x9e, 0xcb, 0xb0, 0xe4, 0x44, 0x8e, 0x38, 0xed, 0x65, 0xda, 0x46, 0xee, 0xaa, 0x51, 0xa7, 0xb3, 0x4e, 0x65, 0x0a, 0x91, 0xda, 0x95, 0xfa, 0xf1, 0x79, 0x00, 0x1e, 0x0a, 0x98, 0xa5, 0x98, 0x52, 0x3a, 0x34, 0xc4, 0x91, 0x8d, 0x41, 0x80, 0xf8, 0x7d, 0x64, 0x1e, 0x46, 0x26, 0xce, 0x11, 0xfa, 0x3a, 0x24, 0x4a, 0xbf, 0xb2, 0x45, 0x07, 0x36, 0x69, 0x3d, 0x38, 0x65, 0x23, 0x09, 0x24, 0x0e, 0xbd, 0xa9, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11747_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11747_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11747 = { .name = "ecdsa_brainpoolp320r1_sha384_11747", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11747_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11747_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11747_sig, .siglen = 80, .result = 1, .comment = "r,s are large, tcId is 992 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11748 for ECDSA, tcId is 993 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11748_pubkey[] = { 0xb6, 0xf0, 0xdd, 0xc8, 0x34, 0xef, 0x8a, 0x67, 0x90, 0x36, 0x81, 0xea, 0x02, 0xb7, 0x88, 0xfc, 0xff, 0x82, 0xd1, 0x23, 0x07, 0xc8, 0xc3, 0xf4, 0xa4, 0x4b, 0x30, 0xd7, 0xc5, 0xf6, 0x14, 0xda, 0xfc, 0xc9, 0xa8, 0x39, 0x99, 0x1f, 0x8e, 0xe4, 0x27, 0x53, 0x8e, 0x30, 0xae, 0x51, 0x02, 0xb2, 0x04, 0x39, 0x57, 0xdd, 0x61, 0x24, 0xfb, 0xa3, 0xa1, 0xb6, 0x01, 0xc0, 0x4b, 0xdd, 0xaf, 0x6c, 0x92, 0x9f, 0xfd, 0xf2, 0xf7, 0x79, 0x6f, 0xd7, 0x09, 0x8c, 0x38, 0x7d, 0xbc, 0x0b, 0x26, 0xfb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11748_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11748_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8c, 0x07, 0x36, 0x55, 0x4d, 0xbc, 0x44, 0x60, 0x63, 0xe8, 0xe1, 0x5f, 0x29, 0x7f, 0xd4, 0xb6, 0x6f, 0xa8, 0x87, 0x99, 0x45, 0xbb, 0xb5, 0xc2, 0x27, 0x14, 0xa9, 0x64, 0x5f, 0x4f, 0xa4, 0xef, 0x9d, 0x71, 0x0e, 0xaf, 0xa6, 0xb2, 0x26, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11748 = { .name = "ecdsa_brainpoolp320r1_sha384_11748", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11748_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11748_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11748_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 993 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11749 for ECDSA, tcId is 994 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11749_pubkey[] = { 0x6d, 0xf4, 0x43, 0x21, 0xd4, 0xa5, 0xf6, 0xaf, 0x63, 0xe0, 0x1b, 0x79, 0xbb, 0x60, 0x8e, 0xa0, 0x4a, 0xc6, 0xf3, 0x5f, 0x79, 0x50, 0x44, 0xa0, 0x4f, 0xf4, 0x00, 0xf5, 0x47, 0xfd, 0x34, 0xd9, 0xb7, 0x8c, 0x12, 0xc4, 0x59, 0x78, 0xf9, 0x6f, 0xb5, 0x29, 0x01, 0xce, 0xce, 0x48, 0xaa, 0xb4, 0x32, 0xc3, 0xdb, 0xdc, 0xbc, 0x0e, 0x27, 0x0b, 0x2c, 0xc9, 0xb9, 0x91, 0x5c, 0xc1, 0xff, 0xb6, 0x9a, 0x36, 0x5d, 0x84, 0xc3, 0x91, 0x86, 0xc4, 0x81, 0x77, 0x38, 0x7a, 0xa9, 0xee, 0x0a, 0x48, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11749_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11749_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x07, 0xcd, 0xd5, 0x93, 0xac, 0xb5, 0x01, 0xfc, 0x28, 0x48, 0x35, 0x1f, 0x9d, 0x2e, 0x6b, 0x54, 0x57, 0xd3, 0xde, 0x43, 0xc3, 0x13, 0x0e, 0x3b, 0x74, 0xe6, 0xa9, 0x24, 0x2b, 0x3c, 0xce, 0x1c, 0x24, 0xf0, 0x94, 0xf1, 0x18, 0xbc, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11749 = { .name = "ecdsa_brainpoolp320r1_sha384_11749", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11749_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11749_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11749_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 994 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11750 for ECDSA, tcId is 995 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11750_pubkey[] = { 0x4e, 0x49, 0x6f, 0x05, 0x6a, 0xb5, 0xd0, 0x7f, 0x96, 0x56, 0x2c, 0x68, 0x36, 0x43, 0x44, 0x0e, 0x31, 0xfe, 0xa2, 0x6d, 0x35, 0xe6, 0xc5, 0xb6, 0x9e, 0xef, 0xaa, 0x41, 0x07, 0xd3, 0x45, 0xc8, 0x07, 0xbf, 0x27, 0x9f, 0x2e, 0xa2, 0x6b, 0x60, 0x28, 0x85, 0x39, 0x76, 0x6f, 0xc7, 0x26, 0xcb, 0x9e, 0x84, 0x1d, 0xb5, 0xdc, 0xfb, 0xbb, 0x79, 0x2c, 0xad, 0xe3, 0xc1, 0xef, 0x64, 0xb6, 0x9d, 0xcb, 0xda, 0x7f, 0x5e, 0x49, 0x7b, 0x45, 0x5a, 0x91, 0x1c, 0xe2, 0xf0, 0xeb, 0xca, 0xca, 0xad, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11750_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11750_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11750 = { .name = "ecdsa_brainpoolp320r1_sha384_11750", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11750_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11750_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11750_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 995 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11751 for ECDSA, tcId is 996 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11751_pubkey[] = { 0x11, 0xe0, 0x94, 0xf4, 0x70, 0x94, 0x8e, 0x4e, 0xaa, 0x6a, 0xa1, 0x3f, 0xab, 0x4e, 0x06, 0x33, 0x86, 0xe9, 0x1a, 0x63, 0x8f, 0xa2, 0x26, 0xd9, 0x88, 0xd0, 0x69, 0x3d, 0xea, 0x71, 0x9c, 0xa9, 0x5f, 0x61, 0xe4, 0x93, 0xe9, 0x83, 0x5a, 0xf4, 0x3f, 0x53, 0x3e, 0x89, 0xaa, 0x20, 0x85, 0xa9, 0xf8, 0x12, 0x10, 0x86, 0xa2, 0x59, 0x7f, 0x10, 0x60, 0xf7, 0x3c, 0x8d, 0x75, 0xd6, 0x69, 0x40, 0xe5, 0x0e, 0xea, 0xd7, 0x3d, 0xfd, 0x03, 0xc4, 0x76, 0xea, 0x19, 0x47, 0xcd, 0xd4, 0xdd, 0x3f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11751_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11751_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11751 = { .name = "ecdsa_brainpoolp320r1_sha384_11751", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11751_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11751_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11751_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 996 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11752 for ECDSA, tcId is 997 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11752_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11752_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11752_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11752 = { .name = "ecdsa_brainpoolp320r1_sha384_11752", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11752_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11752_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11752_sig, .siglen = 80, .result = 1, .comment = "small r and s, tcId is 997 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11753 for ECDSA, tcId is 998 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11753_pubkey[] = { 0x16, 0x51, 0x7a, 0x7d, 0x7b, 0xea, 0xb6, 0x47, 0x2e, 0xa8, 0xf6, 0xbc, 0x20, 0x41, 0x2a, 0x3c, 0xd9, 0x6d, 0x24, 0x2c, 0x24, 0x6c, 0xe9, 0xf9, 0x83, 0xb2, 0xef, 0x08, 0xb2, 0x84, 0xcf, 0xad, 0x1a, 0xc2, 0x85, 0x63, 0xb5, 0x6e, 0xda, 0xfb, 0x9f, 0x56, 0xfe, 0x2d, 0xf7, 0x8c, 0x23, 0x9a, 0xa1, 0x6c, 0x3c, 0x31, 0x8b, 0xc9, 0x19, 0x1a, 0x16, 0xec, 0x40, 0x7a, 0x70, 0x03, 0x54, 0x17, 0x3f, 0x8b, 0x86, 0x2d, 0x9a, 0x0a, 0xa1, 0x0d, 0x67, 0x39, 0x7f, 0x26, 0xe7, 0xc9, 0xc0, 0xbe, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11753_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11753_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11753 = { .name = "ecdsa_brainpoolp320r1_sha384_11753", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11753_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11753_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11753_sig, .siglen = 80, .result = -1, .comment = "r is larger than n, tcId is 998 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11754 for ECDSA, tcId is 999 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11754_pubkey[] = { 0x3a, 0x26, 0x68, 0xbc, 0x09, 0x61, 0x4d, 0x26, 0x38, 0xed, 0x58, 0xf1, 0xc4, 0x21, 0xbb, 0x61, 0xf2, 0xd4, 0x99, 0xa8, 0x6f, 0xe7, 0xd5, 0x73, 0xbd, 0x13, 0x92, 0xac, 0xef, 0x9e, 0x29, 0x6b, 0x1e, 0xf2, 0xb1, 0x0d, 0x7f, 0x4e, 0xc5, 0x24, 0xd1, 0xb7, 0x8e, 0xb2, 0x71, 0x6c, 0xe6, 0x68, 0x05, 0x4d, 0x29, 0x67, 0x7c, 0x6f, 0x4d, 0x32, 0x35, 0xf2, 0x7d, 0x3a, 0x92, 0x95, 0xec, 0xef, 0x9d, 0xdf, 0xd2, 0xf6, 0x58, 0xba, 0x00, 0x20, 0x52, 0xd0, 0xe1, 0xe6, 0x71, 0x72, 0x1e, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11754_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11754_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xd8, 0x69, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11754 = { .name = "ecdsa_brainpoolp320r1_sha384_11754", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11754_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11754_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11754_sig, .siglen = 80, .result = -1, .comment = "s is larger than n, tcId is 999 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11755 for ECDSA, tcId is 1000 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11755_pubkey[] = { 0xcd, 0x16, 0x97, 0xc6, 0xe1, 0x07, 0xf3, 0xd9, 0x0b, 0x8d, 0xf4, 0x62, 0xeb, 0x36, 0x8b, 0x75, 0xeb, 0xa5, 0x85, 0x63, 0x59, 0x50, 0x17, 0x7e, 0x0a, 0x64, 0xb1, 0xad, 0x4b, 0xe5, 0x27, 0xc9, 0x09, 0x57, 0xfb, 0xdf, 0x20, 0x3d, 0x67, 0xc8, 0x4b, 0x00, 0x3f, 0x20, 0xe8, 0x16, 0x59, 0x09, 0x9b, 0x7e, 0x46, 0x66, 0x18, 0xf2, 0x61, 0x0c, 0x6f, 0x1d, 0xf3, 0x15, 0xb2, 0x01, 0x1d, 0xb0, 0x7b, 0x90, 0xf3, 0x66, 0x2b, 0x51, 0x56, 0x1f, 0xff, 0xdf, 0x3e, 0xbb, 0x5d, 0x44, 0x34, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11755_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11755_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x21, 0x49, 0x4d, 0xb8, 0x79, 0x80, 0x6d, 0x4f, 0x59, 0xe5, 0x3d, 0x49, 0x63, 0x97, 0x7a, 0x03, 0xf6, 0xec, 0x51, 0x14, 0x0c, 0x9f, 0x9a, 0x1d, 0xba, 0x88, 0x57, 0xff, 0x3b, 0xbc, 0x76, 0xd2, 0x21, 0x49, 0x47, 0xe6, 0x0e, 0xdc, 0x98, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11755 = { .name = "ecdsa_brainpoolp320r1_sha384_11755", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11755_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11755_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11755_sig, .siglen = 80, .result = 1, .comment = "small r and s^-1, tcId is 1000 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11756 for ECDSA, tcId is 1001 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11756_pubkey[] = { 0xb1, 0xe3, 0x61, 0x9d, 0x9e, 0x35, 0x87, 0x3e, 0x95, 0x9b, 0xb7, 0xde, 0x77, 0x40, 0xe9, 0x27, 0xe3, 0xcb, 0x7f, 0xcf, 0x44, 0x13, 0xbf, 0xdb, 0xbe, 0xd7, 0x2e, 0xcc, 0x9a, 0x86, 0xa5, 0x0d, 0x70, 0x29, 0xca, 0xe0, 0x8e, 0xc2, 0x85, 0xab, 0x48, 0x6b, 0x5d, 0x2f, 0x7c, 0x9b, 0x93, 0x14, 0x42, 0x0b, 0xc8, 0x64, 0xcf, 0xe2, 0x9b, 0x40, 0x64, 0xbf, 0x7b, 0x92, 0x2b, 0xbb, 0x5b, 0xbc, 0xd1, 0x6f, 0x3a, 0x81, 0xea, 0x7d, 0x0a, 0x61, 0xb0, 0xa0, 0x9a, 0x62, 0x95, 0x9b, 0x76, 0x90, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11756_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11756_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x43, 0xbe, 0xcc, 0x87, 0x6a, 0x63, 0x56, 0x4b, 0x45, 0x82, 0x80, 0x19, 0x9e, 0x38, 0x2c, 0xba, 0xd8, 0xef, 0x68, 0xd4, 0x06, 0x66, 0x5b, 0xbf, 0x30, 0x7f, 0xfe, 0xa4, 0x58, 0x45, 0xa9, 0xac, 0x69, 0x34, 0x5a, 0x84, 0xa5, 0xa7, 0x2b, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11756 = { .name = "ecdsa_brainpoolp320r1_sha384_11756", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11756_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11756_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11756_sig, .siglen = 80, .result = 1, .comment = "smallish r and s^-1, tcId is 1001 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11757 for ECDSA, tcId is 1002 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11757_pubkey[] = { 0x97, 0xcf, 0xeb, 0xab, 0x58, 0x8a, 0x54, 0x24, 0x2a, 0x4d, 0x96, 0x2e, 0xf8, 0x03, 0x37, 0x6c, 0x3f, 0x43, 0x07, 0x9a, 0xa5, 0x0a, 0x88, 0x71, 0xd6, 0xe7, 0x76, 0xf7, 0xa0, 0xb3, 0x3a, 0xea, 0x46, 0xab, 0x9a, 0x2d, 0xa6, 0x3a, 0x33, 0xd8, 0xc8, 0x1a, 0xf3, 0x4a, 0xf2, 0xe9, 0xa0, 0xc5, 0x71, 0xef, 0xfb, 0x50, 0x1c, 0x4a, 0x27, 0xfd, 0x2a, 0xed, 0xc1, 0x36, 0x23, 0x44, 0x7a, 0xf2, 0xbc, 0x8b, 0x6d, 0x5e, 0x72, 0x08, 0xc2, 0x3e, 0x87, 0xe2, 0xd7, 0x97, 0xcc, 0x3c, 0xf5, 0x7e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11757_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11757_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x39, 0x92, 0x35, 0x3d, 0x91, 0x66, 0x17, 0xb4, 0x93, 0x03, 0x85, 0x64, 0x88, 0xe3, 0x9f, 0xbc, 0x26, 0x17, 0x3b, 0x8b, 0xc4, 0x26, 0xf8, 0x20, 0x7d, 0xe3, 0xd8, 0xf1, 0xb9, 0x7f, 0x3d, 0x12, 0xc8, 0x03, 0xb9, 0x9d, 0x57, 0x76, 0x8f, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11757 = { .name = "ecdsa_brainpoolp320r1_sha384_11757", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11757_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11757_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11757_sig, .siglen = 80, .result = 1, .comment = "100-bit r and small s^-1, tcId is 1002 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11758 for ECDSA, tcId is 1003 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11758_pubkey[] = { 0x29, 0x6e, 0x00, 0x67, 0x94, 0x7e, 0xfc, 0x07, 0xa0, 0x6a, 0xe2, 0x18, 0xfb, 0x00, 0x16, 0x4d, 0x1e, 0xbe, 0xbc, 0xd3, 0x78, 0x7f, 0x79, 0x34, 0x81, 0x40, 0x7e, 0x27, 0x96, 0x24, 0x8e, 0x8b, 0x65, 0xea, 0xc5, 0x7d, 0xb0, 0xc1, 0x46, 0x06, 0x72, 0x9e, 0x80, 0x94, 0xb9, 0xa5, 0x4e, 0xea, 0xc2, 0x3d, 0x98, 0xd5, 0x1d, 0x66, 0x2e, 0xff, 0x2d, 0xf3, 0x3a, 0x86, 0x93, 0x00, 0x8f, 0xd0, 0x2a, 0x04, 0x29, 0xef, 0x68, 0x51, 0xec, 0xbd, 0xcd, 0x93, 0xaa, 0xc6, 0x7c, 0x2f, 0xbd, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11758_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11758_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11758 = { .name = "ecdsa_brainpoolp320r1_sha384_11758", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11758_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11758_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11758_sig, .siglen = 80, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 1003 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11759 for ECDSA, tcId is 1004 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11759_pubkey[] = { 0xa3, 0x78, 0x3b, 0x01, 0x45, 0x5d, 0x92, 0x08, 0x0f, 0x52, 0x0d, 0x17, 0x1f, 0x92, 0xab, 0xea, 0xf4, 0x8c, 0x72, 0x38, 0xe1, 0x68, 0xb2, 0x93, 0x1f, 0x2b, 0x32, 0x2f, 0x9c, 0x0f, 0xaa, 0x69, 0xa2, 0x40, 0x97, 0x83, 0x6c, 0xb0, 0xa6, 0x85, 0x1c, 0xbf, 0x1a, 0x22, 0xba, 0xc2, 0x43, 0x75, 0x51, 0x24, 0x46, 0x05, 0x68, 0x2d, 0xab, 0xcd, 0xd4, 0xcf, 0x39, 0xff, 0x9d, 0x08, 0x44, 0x39, 0x21, 0xc9, 0x94, 0x48, 0xcb, 0xce, 0xa5, 0xde, 0xb8, 0x5a, 0xd9, 0x52, 0xdb, 0xb2, 0xb9, 0x67, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11759_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11759_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x84, 0x38, 0x08, 0x81, 0xb2, 0x43, 0x23, 0x69, 0x67, 0x22, 0x71, 0x91, 0x39, 0x8a, 0x3a, 0x49, 0x09, 0x00, 0x04, 0x25, 0x57, 0x6c, 0x79, 0x46, 0x5b, 0xda, 0xaa, 0x0a, 0x03, 0x26, 0x7b, 0x9e, 0x48, 0xf6, 0x8f, 0xa0, 0xa6, 0x8b, 0x29, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11759 = { .name = "ecdsa_brainpoolp320r1_sha384_11759", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11759_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11759_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11759_sig, .siglen = 80, .result = 1, .comment = "100-bit r and s^-1, tcId is 1004 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11760 for ECDSA, tcId is 1005 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11760_pubkey[] = { 0x70, 0xd5, 0xfd, 0x41, 0xc4, 0x16, 0xd5, 0xb7, 0xcd, 0xbc, 0xb9, 0x44, 0x20, 0x5b, 0xd6, 0x9f, 0xf0, 0x0e, 0xd6, 0x35, 0x4a, 0xa5, 0x02, 0x75, 0x7e, 0x08, 0x9c, 0xb1, 0x9a, 0xf6, 0xf7, 0x77, 0xbe, 0xb0, 0xf6, 0x92, 0x1c, 0x0f, 0xaf, 0xac, 0x22, 0xae, 0x7c, 0xc6, 0x5e, 0x0e, 0x7b, 0x61, 0x74, 0x23, 0x75, 0x0b, 0x84, 0x93, 0xa5, 0x85, 0x12, 0xe3, 0x79, 0xc0, 0x0d, 0xe6, 0x26, 0xc1, 0x7f, 0x7c, 0x82, 0xbf, 0xc9, 0x07, 0xf2, 0x66, 0x10, 0xa3, 0xf1, 0xe4, 0xd1, 0x32, 0xc5, 0x75, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11760_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11760_sig[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x94, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11760 = { .name = "ecdsa_brainpoolp320r1_sha384_11760", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11760_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11760_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11760_sig, .siglen = 80, .result = 1, .comment = "r and s^-1 are close to n, tcId is 1005 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11761 for ECDSA, tcId is 1006 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11761_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11761_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11761_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11761 = { .name = "ecdsa_brainpoolp320r1_sha384_11761", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11761_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11761_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11761_sig, .siglen = 80, .result = 1, .comment = "s == 1, tcId is 1006 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11762 for ECDSA, tcId is 1007 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11762_pubkey[] = { 0x06, 0x82, 0x8c, 0xe6, 0x3f, 0x3b, 0x0d, 0x69, 0x4c, 0xe2, 0x99, 0x9d, 0x06, 0x94, 0x7f, 0xa9, 0xe2, 0xd1, 0xc1, 0x8a, 0xb8, 0x03, 0x26, 0x52, 0xfa, 0x7a, 0x98, 0xc6, 0x78, 0xcf, 0x6b, 0xb2, 0xc5, 0x2e, 0x73, 0x69, 0x08, 0x5e, 0x4e, 0xf7, 0xc5, 0x6d, 0xf6, 0x91, 0x28, 0x96, 0x2f, 0xbe, 0xfc, 0x2a, 0xef, 0x1b, 0x3f, 0x6c, 0x46, 0x7b, 0x72, 0xfc, 0x30, 0x5a, 0xcf, 0x51, 0xb3, 0x39, 0x64, 0x3c, 0xa2, 0xed, 0x6b, 0xde, 0x56, 0x31, 0x7c, 0x4c, 0xf5, 0x98, 0x95, 0x92, 0x3d, 0xed, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11762_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11762_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11762 = { .name = "ecdsa_brainpoolp320r1_sha384_11762", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11762_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11762_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11762_sig, .siglen = 80, .result = -1, .comment = "s == 0, tcId is 1007 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11763 for ECDSA, tcId is 1008 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11763_pubkey[] = { 0x20, 0x25, 0x16, 0xad, 0x66, 0x37, 0x75, 0xf1, 0x21, 0x55, 0x52, 0x10, 0x79, 0x03, 0x7f, 0x3f, 0xca, 0x50, 0xc6, 0x4f, 0xaa, 0x4a, 0xfd, 0x88, 0x6a, 0xdd, 0x4d, 0xaa, 0xb9, 0x27, 0xf3, 0xf6, 0x2a, 0xa2, 0xda, 0xe6, 0x84, 0xa6, 0x35, 0xd6, 0x63, 0x2a, 0xed, 0xd5, 0x30, 0xe6, 0x1d, 0xab, 0x35, 0x91, 0x69, 0x62, 0xee, 0x8f, 0x23, 0xed, 0x68, 0x81, 0x98, 0xaf, 0xd5, 0xad, 0x6b, 0x07, 0x05, 0xe2, 0xef, 0x9d, 0x0b, 0xa3, 0xc5, 0x33, 0x3b, 0x15, 0xbd, 0xab, 0x43, 0x2e, 0xe3, 0x42, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11763_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11763_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11763 = { .name = "ecdsa_brainpoolp320r1_sha384_11763", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11763_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11763_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11763_sig, .siglen = 80, .result = -1, .comment = "point at infinity during verify, tcId is 1008 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11764 for ECDSA, tcId is 1009 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11764_pubkey[] = { 0x82, 0x3a, 0x83, 0x0c, 0x58, 0xd9, 0xdd, 0x37, 0x0f, 0x68, 0x7f, 0xf8, 0x19, 0x14, 0x2b, 0x64, 0x4a, 0xc9, 0xdc, 0x18, 0xa9, 0x46, 0x81, 0xe2, 0x24, 0x5e, 0xb2, 0x2f, 0x27, 0xe3, 0x33, 0xe6, 0x2f, 0xec, 0xe3, 0x97, 0x23, 0x17, 0x69, 0xda, 0x36, 0xa7, 0xe2, 0x37, 0xea, 0x2f, 0x3e, 0x24, 0x72, 0xde, 0x14, 0x7e, 0x16, 0x6c, 0xe4, 0xbd, 0x82, 0x48, 0x20, 0x8d, 0xf5, 0x38, 0xac, 0x00, 0xf5, 0xb2, 0x29, 0x9e, 0x2d, 0x72, 0x9b, 0x0d, 0xd8, 0x0e, 0x3e, 0x10, 0x6c, 0x06, 0x08, 0x44, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11764_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11764_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11764 = { .name = "ecdsa_brainpoolp320r1_sha384_11764", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11764_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11764_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11764_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 1009 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11765 for ECDSA, tcId is 1010 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11765_pubkey[] = { 0x38, 0x7a, 0x75, 0x92, 0x84, 0xf6, 0x5d, 0x2d, 0x93, 0xf5, 0x41, 0xf2, 0x76, 0x6f, 0x84, 0x6a, 0xbd, 0xec, 0x23, 0x91, 0x90, 0xe8, 0xcd, 0xdb, 0xa9, 0xb7, 0x56, 0x4a, 0x83, 0xd5, 0x81, 0x62, 0xa4, 0x89, 0xf2, 0x5f, 0x0d, 0x43, 0xb4, 0xf8, 0x42, 0x46, 0x25, 0xa6, 0xc1, 0xe1, 0x58, 0x94, 0x74, 0xc3, 0x0e, 0x63, 0x83, 0xc9, 0x25, 0xb3, 0x63, 0x23, 0x9d, 0x1a, 0x87, 0xb9, 0x63, 0x4f, 0xd8, 0xaa, 0xc2, 0xeb, 0x0c, 0xe3, 0x9e, 0x37, 0x63, 0x87, 0x3d, 0xe7, 0x73, 0x58, 0xbd, 0x4b, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11765_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11765_sig[] = { 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x88, 0x69, 0xaf, 0x23, 0x90, 0x1b, 0x5e, 0x27, 0xdb, 0xf0, 0x9e, 0x3c, 0x2f, 0x69, 0x00, 0xf0, 0x32, 0xfc, 0xc7, 0xe7, 0xd2, 0xdb, 0x47, 0x89, 0x51, 0x96, 0xa4, 0x17, 0x63, 0xf7, 0x43, 0x2c, 0x74, 0xc3, 0x48, 0xaa, 0xad, 0xa2, 0x62, 0xc9, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11765 = { .name = "ecdsa_brainpoolp320r1_sha384_11765", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11765_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11765_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11765_sig, .siglen = 80, .result = 1, .comment = "edge case for signature malleability, tcId is 1010 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11766 for ECDSA, tcId is 1011 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11766_pubkey[] = { 0x6b, 0x43, 0x27, 0x11, 0x7e, 0x9c, 0x04, 0xd7, 0xa5, 0x82, 0x59, 0xc5, 0x20, 0x7a, 0x36, 0xe8, 0xd2, 0x78, 0xe8, 0x73, 0xb9, 0x2b, 0x5b, 0x3a, 0x70, 0xa3, 0xc4, 0x74, 0x2c, 0xc5, 0x83, 0xb4, 0x14, 0x08, 0xaa, 0xab, 0x23, 0xa1, 0x2a, 0x9c, 0x9b, 0x0b, 0x26, 0x16, 0x0c, 0x54, 0x8a, 0xba, 0xcd, 0x7f, 0x0e, 0x37, 0x27, 0x6f, 0x91, 0x7c, 0x09, 0x72, 0x1b, 0x38, 0x44, 0xd0, 0xb2, 0x6e, 0x9e, 0xd5, 0xc7, 0x6c, 0x99, 0x78, 0x79, 0x92, 0x25, 0x9b, 0xf0, 0xf7, 0xb0, 0x24, 0x45, 0xd3, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11766_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11766_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11766 = { .name = "ecdsa_brainpoolp320r1_sha384_11766", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11766_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11766_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11766_sig, .siglen = 80, .result = -1, .comment = "u1 == 1, tcId is 1011 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11767 for ECDSA, tcId is 1012 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11767_pubkey[] = { 0x27, 0x7f, 0x48, 0x7f, 0xaf, 0x77, 0xa6, 0x5d, 0xbb, 0x79, 0x15, 0x36, 0xe8, 0x63, 0xb8, 0xc7, 0x0f, 0x90, 0x4f, 0xcd, 0xca, 0xf5, 0x27, 0x40, 0xd4, 0xbd, 0x5c, 0x46, 0x97, 0x31, 0xe5, 0x8e, 0xa6, 0xbd, 0x53, 0xe8, 0xd7, 0x72, 0x02, 0x28, 0x2d, 0x34, 0x6f, 0x2b, 0x4c, 0xa7, 0xba, 0xcb, 0x88, 0x2f, 0xef, 0x74, 0x9c, 0x27, 0x13, 0xf1, 0xa7, 0x5f, 0x00, 0x82, 0x7e, 0x8b, 0x9b, 0x9f, 0x74, 0x4a, 0x0e, 0x1e, 0x34, 0xbc, 0xf8, 0x07, 0x99, 0xa1, 0x20, 0x95, 0x0d, 0xe9, 0x5d, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11767_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11767_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11767 = { .name = "ecdsa_brainpoolp320r1_sha384_11767", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11767_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11767_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11767_sig, .siglen = 80, .result = 1, .comment = "u1 == n - 1, tcId is 1012 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11768 for ECDSA, tcId is 1013 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11768_pubkey[] = { 0x73, 0xbd, 0x62, 0xf3, 0xbb, 0x32, 0x9d, 0x65, 0x09, 0x2b, 0x5d, 0x13, 0xc5, 0x74, 0x6d, 0x46, 0x24, 0x01, 0xd2, 0x60, 0x09, 0x94, 0xd8, 0xfe, 0x2e, 0xc5, 0xef, 0x5b, 0x9f, 0x33, 0x99, 0x08, 0x4b, 0x1d, 0xdc, 0x64, 0xcb, 0x33, 0x4b, 0xae, 0xc1, 0xd1, 0xac, 0x4f, 0x9a, 0x0c, 0x2a, 0x79, 0xef, 0x7c, 0xcc, 0x4a, 0xe9, 0x16, 0x5d, 0xdf, 0xa7, 0x61, 0x38, 0x23, 0x57, 0x18, 0xcf, 0x24, 0x03, 0x2c, 0x33, 0xf9, 0xdb, 0x4a, 0x26, 0xb2, 0xb0, 0x36, 0x92, 0xa5, 0x6f, 0x52, 0x02, 0xeb, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11768_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11768_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11768 = { .name = "ecdsa_brainpoolp320r1_sha384_11768", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11768_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11768_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11768_sig, .siglen = 80, .result = 1, .comment = "u2 == 1, tcId is 1013 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11769 for ECDSA, tcId is 1014 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11769_pubkey[] = { 0x20, 0xa7, 0x55, 0x51, 0x03, 0x5d, 0xb9, 0x5d, 0x7a, 0x1a, 0x67, 0x3d, 0x46, 0x4d, 0x27, 0x6d, 0xa0, 0x86, 0x10, 0x08, 0xe4, 0x64, 0x4c, 0x58, 0x2b, 0xc1, 0x0a, 0x1b, 0xee, 0xae, 0xb0, 0x70, 0x82, 0x3f, 0xd0, 0x64, 0xa2, 0x62, 0x5e, 0xbb, 0x5d, 0x47, 0xf0, 0xc7, 0x7f, 0xc5, 0x7e, 0x3b, 0xb0, 0xe1, 0x53, 0xbb, 0xc7, 0xe9, 0xbb, 0xde, 0x8d, 0xb9, 0x8b, 0x0c, 0x46, 0xc5, 0x81, 0x54, 0xaf, 0x5b, 0x97, 0x86, 0xb1, 0x0b, 0xa1, 0x2a, 0xb3, 0xba, 0x85, 0x33, 0xa3, 0x99, 0x28, 0x83, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11769_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11769_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x8c, 0xe9, 0x84, 0xc0, 0x24, 0x7d, 0x8a, 0x7a, 0x96, 0x28, 0x50, 0x3f, 0x36, 0xab, 0xea, 0xee, 0xa6, 0x5f, 0xdf, 0xc3, 0xcf, 0x0a, 0x0c, 0x6c, 0xc8, 0xda, 0xc9, 0xda, 0x9f, 0x04, 0x3b, 0x46, 0x59, 0xb6, 0x38, 0xe7, 0x83, 0x2e, 0x62, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11769 = { .name = "ecdsa_brainpoolp320r1_sha384_11769", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11769_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11769_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11769_sig, .siglen = 80, .result = 1, .comment = "u2 == n - 1, tcId is 1014 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11770 for ECDSA, tcId is 1015 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11770_pubkey[] = { 0x3f, 0x43, 0x6d, 0x07, 0xcb, 0x02, 0x64, 0xb1, 0x3f, 0x92, 0xfd, 0x69, 0x63, 0x34, 0xa4, 0xe5, 0x1b, 0x7d, 0x66, 0x19, 0xe2, 0xd0, 0x43, 0xb2, 0xd0, 0xd2, 0x78, 0x96, 0x3f, 0x25, 0x16, 0x20, 0x0e, 0xf9, 0x05, 0xeb, 0xf6, 0x71, 0x66, 0x63, 0x40, 0xe6, 0x42, 0xb6, 0xc9, 0x66, 0x07, 0x2b, 0x79, 0x27, 0x80, 0x03, 0x65, 0x11, 0x28, 0x87, 0x9f, 0x19, 0xde, 0xe0, 0x12, 0x73, 0xb6, 0x6b, 0xea, 0xd8, 0x04, 0x51, 0x94, 0x27, 0x7c, 0x92, 0x84, 0x09, 0x33, 0x48, 0xd9, 0x05, 0x69, 0xb1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11770_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11770_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0c, 0xc6, 0x4a, 0xf0, 0x35, 0xcb, 0x79, 0xb3, 0x33, 0x6a, 0x62, 0xd9, 0x15, 0xb3, 0x81, 0xe2, 0x68, 0xd3, 0xbc, 0xb8, 0x34, 0xf9, 0xcf, 0xd0, 0xf5, 0x97, 0xc3, 0x7c, 0xa5, 0xfc, 0xf5, 0x0f, 0x58, 0x86, 0x14, 0xef, 0x0e, 0xf7, 0xb6, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11770 = { .name = "ecdsa_brainpoolp320r1_sha384_11770", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11770_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11770_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11770_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1015 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11771 for ECDSA, tcId is 1016 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11771_pubkey[] = { 0xc1, 0x6f, 0xbe, 0x6d, 0x0d, 0x77, 0x32, 0x7c, 0xf9, 0xa6, 0x5f, 0x98, 0x7c, 0x2f, 0xe7, 0xee, 0x18, 0x07, 0x85, 0x1c, 0x0e, 0x1c, 0x8b, 0xc4, 0xf0, 0x62, 0x28, 0x07, 0xdc, 0xd4, 0xa8, 0x8b, 0x3b, 0x91, 0x2e, 0xb0, 0x47, 0x54, 0x71, 0xe5, 0x75, 0x42, 0x1c, 0x40, 0x54, 0x00, 0x50, 0x50, 0x7a, 0x16, 0x3f, 0x23, 0xcc, 0x7c, 0xb9, 0x0a, 0xcc, 0x52, 0x82, 0x2d, 0x01, 0xd2, 0x45, 0xab, 0x70, 0xdc, 0xaa, 0xc0, 0x6e, 0x2e, 0xa6, 0x44, 0x32, 0x7a, 0x85, 0xf5, 0x95, 0xd0, 0x26, 0xef, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11771_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11771_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8e, 0x76, 0x5d, 0x0d, 0x1c, 0xf9, 0x53, 0x9f, 0x68, 0x2a, 0x41, 0x55, 0xb6, 0xd6, 0x0e, 0xb6, 0xaa, 0x68, 0x62, 0xb2, 0xaf, 0x9e, 0x9d, 0x3f, 0x94, 0xc9, 0xad, 0x46, 0xd3, 0x32, 0xf0, 0xe0, 0x29, 0x77, 0x55, 0x22, 0x81, 0x5c, 0x0e, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11771 = { .name = "ecdsa_brainpoolp320r1_sha384_11771", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11771_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11771_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11771_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1016 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11772 for ECDSA, tcId is 1017 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11772_pubkey[] = { 0xbe, 0x92, 0x40, 0x07, 0xd6, 0xe2, 0x2b, 0x94, 0x4a, 0xc7, 0x6d, 0xa7, 0xfc, 0x26, 0x60, 0xd1, 0xae, 0xfa, 0xb6, 0x94, 0x71, 0xbd, 0x83, 0x5b, 0xd7, 0x8e, 0xdd, 0x2c, 0x10, 0x62, 0x1e, 0x76, 0xf7, 0x18, 0xbf, 0xd0, 0xa5, 0xe2, 0x30, 0x7e, 0xc6, 0x25, 0x83, 0xd5, 0xba, 0x5c, 0xc1, 0xc5, 0x47, 0x63, 0x04, 0x76, 0xb3, 0x99, 0x86, 0x6e, 0x7e, 0xd9, 0x53, 0xb5, 0x38, 0xf7, 0x6c, 0x86, 0xaf, 0xe9, 0xcf, 0xd0, 0x85, 0x4b, 0x57, 0xe3, 0x36, 0x91, 0xc7, 0x7e, 0x44, 0x4c, 0xca, 0xb8, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11772_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11772_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x72, 0x25, 0xa9, 0x60, 0xd9, 0x67, 0xcf, 0xe5, 0x2a, 0xc1, 0x26, 0xa5, 0x0f, 0xd7, 0x9f, 0xa8, 0x5a, 0x58, 0x63, 0x97, 0xc0, 0xb2, 0x98, 0xc8, 0xad, 0xfa, 0xf1, 0x38, 0x31, 0x7b, 0x0f, 0x79, 0x4b, 0x24, 0xf5, 0x3b, 0xd9, 0x20, 0xc1, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11772 = { .name = "ecdsa_brainpoolp320r1_sha384_11772", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11772_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11772_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11772_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1017 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11773 for ECDSA, tcId is 1018 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11773_pubkey[] = { 0xac, 0xf2, 0x40, 0x13, 0x0d, 0x47, 0xd4, 0xa5, 0x7d, 0x60, 0x65, 0x95, 0xf9, 0x89, 0x12, 0x9f, 0xea, 0x7e, 0x97, 0x44, 0xb1, 0xe5, 0x3f, 0x5c, 0xe6, 0x79, 0xc2, 0x44, 0xc8, 0x5a, 0xf3, 0x5c, 0x61, 0x86, 0x07, 0xe2, 0xec, 0xce, 0x1a, 0x43, 0x1b, 0x69, 0x6a, 0x79, 0x59, 0xfe, 0x30, 0xd0, 0x49, 0x10, 0x0d, 0xd5, 0x42, 0x58, 0x18, 0x1b, 0x08, 0xa2, 0xfe, 0x44, 0x2e, 0x41, 0xff, 0x29, 0x52, 0x3c, 0x11, 0xa3, 0xe0, 0x10, 0x28, 0xeb, 0x64, 0xb3, 0x21, 0xc2, 0xb7, 0x02, 0x57, 0x9c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11773_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11773_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x87, 0x4f, 0x31, 0x1b, 0x6b, 0x9a, 0xc7, 0x4f, 0xc3, 0x4c, 0x60, 0xc0, 0x94, 0x18, 0x73, 0x65, 0x1b, 0x3c, 0x0e, 0xc1, 0xd0, 0x97, 0xa7, 0x86, 0x1e, 0x0c, 0x7f, 0xbe, 0xc3, 0x22, 0x6f, 0x23, 0xa5, 0xe2, 0xc9, 0x29, 0xd8, 0x56, 0xec, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11773 = { .name = "ecdsa_brainpoolp320r1_sha384_11773", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11773_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11773_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11773_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1018 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11774 for ECDSA, tcId is 1019 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11774_pubkey[] = { 0x46, 0x24, 0x3b, 0x39, 0xe7, 0x76, 0x39, 0xac, 0x19, 0xe9, 0xbe, 0x53, 0x66, 0x93, 0x17, 0xd9, 0x59, 0x8e, 0x03, 0xec, 0x30, 0xa0, 0xcf, 0x69, 0x30, 0xf8, 0x00, 0x00, 0x98, 0x33, 0x82, 0x6a, 0x59, 0xad, 0xe5, 0x32, 0x19, 0x33, 0xff, 0x2f, 0x69, 0xd7, 0x70, 0xb9, 0x78, 0xcc, 0xc3, 0x6c, 0x90, 0xb7, 0x48, 0xe5, 0x01, 0x06, 0x36, 0xe7, 0x00, 0x4d, 0xdc, 0x19, 0x88, 0x5d, 0xa7, 0xbb, 0x90, 0xdb, 0xfa, 0xd4, 0x79, 0xfc, 0x52, 0xdc, 0xe4, 0xb9, 0x28, 0x14, 0x05, 0xf1, 0xc6, 0xbd, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11774_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11774_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0x75, 0x3a, 0xc9, 0x0f, 0xbc, 0x7e, 0xdf, 0xdc, 0xb3, 0x2e, 0x16, 0x97, 0xfd, 0xfd, 0x41, 0xb1, 0xfb, 0x59, 0xc5, 0xad, 0x17, 0x7e, 0x96, 0xfe, 0xac, 0xc8, 0x75, 0x22, 0xef, 0x92, 0x8d, 0xe8, 0x0a, 0x60, 0xbb, 0x0f, 0x32, 0xe7, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11774 = { .name = "ecdsa_brainpoolp320r1_sha384_11774", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11774_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11774_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11774_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1019 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11775 for ECDSA, tcId is 1020 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11775_pubkey[] = { 0xb4, 0xb9, 0xb6, 0xba, 0x3c, 0x0e, 0x75, 0x09, 0xc2, 0x75, 0x89, 0x4e, 0x84, 0xe8, 0x18, 0xd7, 0x1d, 0xe1, 0x45, 0x77, 0xbd, 0xb4, 0xbf, 0x0b, 0x8e, 0x5e, 0x13, 0x32, 0xd1, 0x08, 0x7f, 0x3c, 0x33, 0x3b, 0x73, 0xe8, 0xab, 0x75, 0xf2, 0xc9, 0x4f, 0x33, 0xd0, 0xe2, 0xab, 0x34, 0x2d, 0x2e, 0x19, 0x68, 0xce, 0x3e, 0x1c, 0x47, 0xbe, 0x87, 0xe3, 0x9e, 0xe8, 0x82, 0x73, 0xae, 0x4c, 0xf7, 0x77, 0x86, 0x9d, 0x3a, 0x17, 0x03, 0xb6, 0x3a, 0x98, 0x3d, 0x2d, 0x43, 0xc5, 0x93, 0x03, 0xe5, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11775_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11775_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x26, 0xea, 0x75, 0x92, 0x1f, 0x78, 0xfd, 0xbf, 0xb9, 0x66, 0x5c, 0x2d, 0x2f, 0xfb, 0xfa, 0x83, 0x63, 0xf6, 0xb3, 0x8b, 0x5a, 0x2e, 0xfd, 0x2d, 0xfd, 0x59, 0x90, 0xea, 0x45, 0xdf, 0x25, 0x1b, 0xd0, 0x14, 0xc1, 0x76, 0x1e, 0x65, 0xcf, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11775 = { .name = "ecdsa_brainpoolp320r1_sha384_11775", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11775_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11775_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11775_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1020 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11776 for ECDSA, tcId is 1021 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11776_pubkey[] = { 0x03, 0x01, 0x5b, 0x3c, 0xa6, 0x76, 0x83, 0x46, 0x7c, 0x79, 0x44, 0x6d, 0x4b, 0x93, 0xd1, 0x09, 0x78, 0x33, 0x08, 0x56, 0xee, 0xe4, 0x0d, 0x6d, 0x58, 0x68, 0x3a, 0xc7, 0x35, 0x00, 0xae, 0x31, 0x5c, 0x5b, 0x58, 0x23, 0x51, 0xc4, 0x22, 0x6b, 0x18, 0xd8, 0x95, 0x61, 0xd3, 0xff, 0xa0, 0xf9, 0x31, 0x1a, 0xa6, 0x16, 0x54, 0x7f, 0x7e, 0xb1, 0xd3, 0x6e, 0x73, 0xa6, 0xcc, 0x4b, 0xd2, 0x30, 0xdf, 0x34, 0xa1, 0xf3, 0x19, 0xbe, 0x66, 0xbc, 0xb2, 0xfb, 0x0e, 0x1f, 0x68, 0xcc, 0x19, 0x2e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11776_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11776_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9f, 0xee, 0x19, 0x29, 0x30, 0xd3, 0x05, 0x02, 0xc0, 0x5e, 0x56, 0xad, 0xf0, 0x86, 0xec, 0xd1, 0x3a, 0x92, 0xcd, 0x43, 0xce, 0x0c, 0x72, 0xea, 0x65, 0xea, 0xd4, 0x36, 0x67, 0x89, 0x0a, 0xe1, 0x9b, 0xe8, 0x35, 0x33, 0x3c, 0x32, 0xc5, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11776 = { .name = "ecdsa_brainpoolp320r1_sha384_11776", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11776_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11776_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11776_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1021 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11777 for ECDSA, tcId is 1022 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11777_pubkey[] = { 0x18, 0x7d, 0x93, 0xf8, 0x4a, 0x0e, 0x60, 0x43, 0xf0, 0x97, 0xd0, 0xa8, 0x7f, 0x8d, 0xca, 0x07, 0x73, 0x9c, 0xf4, 0x45, 0x48, 0xa7, 0xd3, 0x40, 0x3e, 0x03, 0x9e, 0x49, 0xc4, 0xc5, 0x12, 0x85, 0x48, 0x29, 0x75, 0xaf, 0x54, 0xec, 0x05, 0x6c, 0x06, 0x23, 0xc5, 0x75, 0x38, 0xfe, 0xfb, 0x72, 0x31, 0xd6, 0x19, 0xbb, 0xef, 0xd4, 0xca, 0xb3, 0x73, 0xa5, 0x4b, 0x36, 0x13, 0x54, 0xe5, 0x86, 0xb1, 0xd9, 0x98, 0x1a, 0x88, 0x35, 0xe9, 0xc6, 0xbe, 0xab, 0x08, 0x2c, 0xb9, 0x3e, 0x13, 0xb6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11777_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11777_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x96, 0x3f, 0x97, 0xcb, 0x35, 0xa3, 0x21, 0xdf, 0x62, 0xfc, 0x21, 0x9e, 0xb2, 0xf3, 0x70, 0x39, 0x49, 0xc4, 0x83, 0x16, 0x5d, 0x06, 0xdb, 0x13, 0xc4, 0x03, 0x08, 0x0a, 0x86, 0xc1, 0xe5, 0xd9, 0xb4, 0x3d, 0x2e, 0x8d, 0xd9, 0x64, 0x3c, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11777 = { .name = "ecdsa_brainpoolp320r1_sha384_11777", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11777_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11777_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11777_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1022 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11778 for ECDSA, tcId is 1023 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11778_pubkey[] = { 0x08, 0x55, 0xcc, 0x20, 0x35, 0x11, 0x26, 0xb3, 0x8f, 0x93, 0x4f, 0xbb, 0x56, 0xc3, 0x02, 0xf6, 0x2a, 0x36, 0x0e, 0x62, 0x49, 0x3c, 0x2d, 0x52, 0x9f, 0xb8, 0x7c, 0xae, 0xa0, 0xd7, 0x1b, 0xfd, 0xaf, 0x5f, 0xcc, 0x33, 0x68, 0xd4, 0x95, 0xfd, 0x1c, 0xe7, 0x57, 0x86, 0x10, 0xcb, 0xec, 0x46, 0x53, 0x98, 0xb2, 0xc1, 0x23, 0x8b, 0x3e, 0x23, 0xb9, 0xe2, 0x9b, 0x47, 0x61, 0x96, 0x10, 0x64, 0x30, 0xd7, 0x63, 0x16, 0xaa, 0xf2, 0x99, 0x37, 0xac, 0xe6, 0x58, 0xb6, 0x9c, 0x8b, 0xfb, 0x99, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11778_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11778_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x13, 0xdb, 0xff, 0x9e, 0x66, 0x7e, 0x7b, 0xcd, 0x44, 0x95, 0x02, 0x26, 0xf9, 0x3b, 0x09, 0x73, 0x8e, 0x79, 0x35, 0x17, 0xc0, 0x28, 0x86, 0xae, 0x9f, 0x2b, 0x3d, 0xed, 0xed, 0xa7, 0x56, 0xc9, 0x04, 0x9a, 0xb9, 0xa4, 0x6b, 0xc7, 0xc9, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11778 = { .name = "ecdsa_brainpoolp320r1_sha384_11778", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11778_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11778_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11778_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1023 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11779 for ECDSA, tcId is 1024 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11779_pubkey[] = { 0x94, 0xc5, 0x49, 0x19, 0x00, 0x40, 0x79, 0xbe, 0x0d, 0xb4, 0xc9, 0x2d, 0xc1, 0xfc, 0x94, 0x7d, 0x79, 0xeb, 0x0f, 0x8e, 0x86, 0x9d, 0x94, 0x81, 0x38, 0x86, 0xad, 0xa4, 0x25, 0x4f, 0x1d, 0xad, 0xb4, 0xd8, 0x7a, 0x61, 0x12, 0xa5, 0x83, 0x36, 0x86, 0xd8, 0xb5, 0xbe, 0xac, 0x00, 0xfa, 0xfd, 0x64, 0x7e, 0xf8, 0xb6, 0x31, 0xe8, 0x99, 0xa6, 0xa8, 0xb7, 0x2a, 0x51, 0x1d, 0x4f, 0x50, 0xce, 0x15, 0x66, 0x48, 0xad, 0x9c, 0xb7, 0x08, 0xfb, 0x2f, 0xb2, 0xc6, 0x38, 0xfd, 0xb9, 0xf3, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11779_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11779_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x85, 0x24, 0x66, 0xce, 0xf3, 0x16, 0x99, 0x2b, 0x3c, 0xa2, 0x5c, 0xc5, 0x4b, 0x7f, 0x4f, 0xda, 0x2e, 0x8a, 0x81, 0x9e, 0x7c, 0x4b, 0x04, 0x05, 0x43, 0xe9, 0x4f, 0x9c, 0xac, 0xa0, 0x29, 0x37, 0x68, 0x1c, 0x20, 0x19, 0xbb, 0x49, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11779 = { .name = "ecdsa_brainpoolp320r1_sha384_11779", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11779_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11779_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11779_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1024 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11780 for ECDSA, tcId is 1025 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11780_pubkey[] = { 0x2b, 0xca, 0x76, 0x04, 0x37, 0x28, 0xb5, 0xee, 0xef, 0xde, 0x89, 0xd2, 0x5a, 0xcd, 0xf2, 0xe0, 0xb1, 0x60, 0xc5, 0xae, 0x0c, 0xcd, 0xab, 0x6b, 0xd3, 0xba, 0xa4, 0x79, 0xf1, 0x77, 0x53, 0xc3, 0xc0, 0x00, 0xcc, 0xf8, 0xba, 0x86, 0x23, 0xde, 0x92, 0xf0, 0xc2, 0xd6, 0x8a, 0x1b, 0xd4, 0x05, 0xe4, 0x49, 0x82, 0x3f, 0xe6, 0x3b, 0x21, 0x40, 0x2a, 0xef, 0x3e, 0x9a, 0x01, 0x7d, 0xcb, 0xc3, 0x0a, 0xf1, 0x8b, 0xcc, 0x79, 0xa8, 0x52, 0x64, 0x83, 0x43, 0x98, 0xc7, 0x2f, 0xa2, 0xbb, 0x16, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11780_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11780_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x4b, 0xfe, 0x18, 0x00, 0x78, 0x6b, 0x02, 0x56, 0xe9, 0x0a, 0xc2, 0xde, 0x27, 0x2f, 0x41, 0xc8, 0x5e, 0x09, 0x76, 0xc0, 0xca, 0xa1, 0x69, 0x1b, 0xd8, 0x35, 0xa5, 0xa4, 0x44, 0xb1, 0xed, 0x17, 0x05, 0xa0, 0x36, 0x1a, 0xe6, 0xee, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11780 = { .name = "ecdsa_brainpoolp320r1_sha384_11780", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11780_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11780_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11780_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1025 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11781 for ECDSA, tcId is 1026 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11781_pubkey[] = { 0x1c, 0x01, 0x3b, 0x3a, 0x32, 0x60, 0xcc, 0xfb, 0x53, 0xe3, 0xf6, 0xce, 0x93, 0xe6, 0x98, 0x48, 0x65, 0xdc, 0x8e, 0x12, 0x93, 0xe9, 0x23, 0x01, 0xf4, 0xcb, 0x3a, 0x55, 0x4b, 0xd5, 0xda, 0x8a, 0x53, 0xee, 0x10, 0x1b, 0x3e, 0x1a, 0x30, 0x09, 0x97, 0xd2, 0x90, 0x1e, 0x26, 0x72, 0x93, 0x03, 0xe1, 0xcb, 0x93, 0xa8, 0xb7, 0x2d, 0xc2, 0xaf, 0xc9, 0x0f, 0xf5, 0xb4, 0x4f, 0xd5, 0xb6, 0x62, 0x44, 0x55, 0x48, 0x79, 0x74, 0xed, 0x71, 0xc7, 0x83, 0x3e, 0xff, 0x03, 0xcc, 0x12, 0x8d, 0x0c, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11781_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11781_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc6, 0x97, 0xfc, 0x30, 0x00, 0xf0, 0xd6, 0x04, 0xad, 0xd2, 0x15, 0x85, 0xbc, 0x4e, 0x5e, 0x83, 0x90, 0xbc, 0x12, 0xed, 0x81, 0x95, 0x42, 0xd2, 0x37, 0xb0, 0x6b, 0x4b, 0x48, 0x89, 0x63, 0xda, 0x2e, 0x0b, 0x40, 0x6c, 0x35, 0xcd, 0xdc, 0x6c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11781 = { .name = "ecdsa_brainpoolp320r1_sha384_11781", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11781_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11781_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11781_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1026 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11782 for ECDSA, tcId is 1027 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11782_pubkey[] = { 0x62, 0x4b, 0xec, 0x45, 0x20, 0xe6, 0x04, 0x4a, 0xbe, 0xd1, 0xee, 0xe4, 0x96, 0x46, 0x68, 0x77, 0x51, 0x81, 0x46, 0x4c, 0x5d, 0x6b, 0xf5, 0xa8, 0xb5, 0x39, 0xf1, 0x15, 0x6f, 0x32, 0x48, 0xc0, 0x22, 0x71, 0xbf, 0x94, 0x25, 0xb9, 0x66, 0xb5, 0x47, 0xf4, 0x06, 0xbc, 0xc1, 0x43, 0x22, 0x6d, 0x81, 0x4c, 0xdb, 0x98, 0x8d, 0x76, 0x41, 0x2a, 0xd1, 0x86, 0xbd, 0xee, 0xb8, 0x69, 0xad, 0x78, 0xa3, 0x2f, 0xe8, 0x7c, 0x76, 0xf2, 0x54, 0x54, 0x47, 0xdd, 0xf8, 0xfb, 0xd0, 0x43, 0x08, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11782_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11782_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x85, 0xb3, 0x27, 0xca, 0xac, 0xf1, 0x4f, 0x23, 0x7e, 0xa7, 0xe9, 0xc8, 0x73, 0xad, 0x5f, 0x5f, 0x8a, 0x4c, 0xbe, 0x8b, 0xd0, 0xd1, 0x98, 0x26, 0x40, 0x72, 0x28, 0xfe, 0x47, 0xbc, 0xdd, 0xbe, 0x7f, 0x8b, 0x47, 0x0b, 0xef, 0x37, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11782 = { .name = "ecdsa_brainpoolp320r1_sha384_11782", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11782_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11782_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11782_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1027 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11783 for ECDSA, tcId is 1028 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11783_pubkey[] = { 0x1b, 0x2b, 0x27, 0x38, 0xe3, 0x05, 0x5d, 0x15, 0x96, 0xf6, 0x41, 0x76, 0xcf, 0x0a, 0xc3, 0x81, 0xb3, 0xa8, 0x17, 0x8a, 0x2f, 0x02, 0x14, 0x03, 0x35, 0x02, 0x18, 0xfa, 0x18, 0xf9, 0xf8, 0x60, 0xc1, 0xbb, 0xa3, 0x9f, 0xc5, 0x24, 0xbc, 0x82, 0x09, 0xfb, 0xaf, 0xca, 0x1a, 0xfc, 0x5a, 0xf7, 0x59, 0x8b, 0x87, 0x8d, 0x69, 0xcb, 0x87, 0x5b, 0xe0, 0xd3, 0x9f, 0x41, 0xff, 0x01, 0xb0, 0x93, 0x88, 0x69, 0x3e, 0xb3, 0x10, 0xad, 0xc9, 0xd4, 0x83, 0x6e, 0x22, 0x6c, 0x23, 0x67, 0x7e, 0x51, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11783_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11783_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa2, 0xc1, 0xf8, 0x40, 0x88, 0x12, 0x0f, 0xce, 0x85, 0xfe, 0xcf, 0x81, 0xf0, 0xec, 0xc0, 0x07, 0x29, 0xf4, 0x19, 0x9e, 0xbb, 0xa0, 0xd5, 0xb5, 0xed, 0xa1, 0x90, 0x00, 0x10, 0x00, 0xb4, 0x31, 0x68, 0xdb, 0x25, 0x4b, 0x8e, 0xf3, 0x2a, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11783 = { .name = "ecdsa_brainpoolp320r1_sha384_11783", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11783_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11783_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11783_sig, .siglen = 80, .result = 1, .comment = "edge case for u1, tcId is 1028 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11784 for ECDSA, tcId is 1029 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11784_pubkey[] = { 0x40, 0x90, 0x2b, 0xf6, 0xb2, 0x39, 0xd2, 0xf3, 0x58, 0x82, 0x60, 0xe9, 0xd7, 0xf5, 0x12, 0x25, 0x3f, 0xa4, 0x4f, 0x30, 0x8a, 0x0a, 0xb8, 0x1d, 0xff, 0x05, 0xb8, 0xfa, 0x2e, 0x25, 0x81, 0x4d, 0x65, 0xc2, 0x01, 0x8d, 0x49, 0x39, 0x0a, 0xae, 0x01, 0x6f, 0x8a, 0xe5, 0x69, 0x19, 0x38, 0x40, 0x2a, 0xdc, 0x0f, 0xfa, 0x29, 0xbb, 0x87, 0xef, 0x0a, 0xf0, 0xec, 0xf3, 0xcd, 0x44, 0x6d, 0x97, 0xc3, 0xe8, 0xd1, 0x2b, 0x3b, 0x09, 0xeb, 0x78, 0x90, 0x9c, 0x1b, 0x91, 0xb1, 0xb8, 0x78, 0x5f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11784_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11784_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x71, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11784 = { .name = "ecdsa_brainpoolp320r1_sha384_11784", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11784_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11784_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11784_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1029 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11785 for ECDSA, tcId is 1030 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11785_pubkey[] = { 0x72, 0x65, 0x33, 0xe2, 0x67, 0x73, 0xac, 0x72, 0x0a, 0x11, 0x5b, 0x02, 0xde, 0x89, 0xac, 0x15, 0x96, 0x66, 0x77, 0xe2, 0x39, 0xb7, 0xc5, 0x77, 0xa1, 0xc1, 0x5b, 0x81, 0x02, 0x7b, 0x1f, 0xeb, 0x73, 0xe6, 0x73, 0x60, 0x1e, 0x21, 0x1a, 0xa9, 0x2a, 0xcc, 0xb5, 0x85, 0xbc, 0x06, 0xcc, 0x27, 0x4b, 0x61, 0xc9, 0xe6, 0x14, 0x74, 0x6e, 0xdd, 0x24, 0x8d, 0x1c, 0xcc, 0xf8, 0xd8, 0xb1, 0xab, 0x4b, 0xc1, 0x5c, 0xc5, 0x8c, 0xdf, 0x11, 0x60, 0x65, 0xce, 0x97, 0x67, 0xf2, 0xa3, 0x22, 0x3d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11785_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11785_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x02, 0xa6, 0xeb, 0x40, 0x84, 0x43, 0xd2, 0x4e, 0x96, 0xbe, 0x4c, 0xa0, 0x27, 0x84, 0x42, 0xa8, 0xa4, 0x26, 0x08, 0x7f, 0x9b, 0xeb, 0x03, 0xff, 0xe5, 0x52, 0x61, 0x62, 0xbf, 0x1d, 0xc3, 0x04, 0x34, 0xcf, 0x7e, 0xa7, 0x95, 0x74, 0xb1, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11785 = { .name = "ecdsa_brainpoolp320r1_sha384_11785", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11785_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11785_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11785_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1030 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11786 for ECDSA, tcId is 1031 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11786_pubkey[] = { 0x53, 0xc3, 0xda, 0x4d, 0xe1, 0x4f, 0x7d, 0x35, 0x77, 0x5f, 0x9b, 0xec, 0xa6, 0xd5, 0x3e, 0xe7, 0x8d, 0xac, 0x73, 0xcd, 0x3f, 0x18, 0xc6, 0xfb, 0xf7, 0x09, 0xb4, 0xff, 0xa7, 0xdd, 0x3e, 0x70, 0xb4, 0x36, 0x40, 0x9b, 0x9b, 0x28, 0x5d, 0x1c, 0x2a, 0x5b, 0x60, 0xe4, 0x57, 0xe5, 0x84, 0x22, 0xc9, 0x59, 0x14, 0x2b, 0x5e, 0xcf, 0xf2, 0x36, 0xdf, 0xd7, 0x6c, 0x99, 0xc3, 0x01, 0x8c, 0xea, 0x90, 0x40, 0x58, 0x09, 0x9a, 0x13, 0x64, 0x7d, 0xb0, 0x88, 0x98, 0xcf, 0xd0, 0x50, 0x9e, 0x84, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11786_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11786_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb6, 0xba, 0x1a, 0xec, 0xd2, 0x40, 0xde, 0xbe, 0x77, 0x21, 0x3a, 0x42, 0x28, 0xb1, 0x25, 0x60, 0x36, 0x71, 0xc9, 0xd5, 0x14, 0x7b, 0x6c, 0x0b, 0x36, 0xdd, 0x23, 0xe4, 0x2b, 0x7c, 0xb5, 0x07, 0x8a, 0x1b, 0x8f, 0xdf, 0x1b, 0x98, 0xb9, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11786 = { .name = "ecdsa_brainpoolp320r1_sha384_11786", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11786_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11786_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11786_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1031 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11787 for ECDSA, tcId is 1032 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11787_pubkey[] = { 0xcd, 0x24, 0xae, 0x7f, 0x75, 0x23, 0xad, 0xf8, 0x59, 0xdb, 0x92, 0xe5, 0x1d, 0x48, 0x74, 0x6b, 0x8b, 0x2f, 0x86, 0x86, 0x20, 0x89, 0x8a, 0x9c, 0x42, 0xf8, 0xba, 0xe8, 0x17, 0x3e, 0x36, 0x46, 0xf5, 0x86, 0xfd, 0x81, 0x87, 0x12, 0x43, 0x0e, 0x55, 0xb1, 0x2d, 0x59, 0xf7, 0x34, 0x41, 0x68, 0xf7, 0x96, 0xfe, 0x59, 0xc0, 0x26, 0xea, 0xaa, 0x13, 0x97, 0x45, 0xa8, 0xac, 0xe9, 0x7d, 0xf1, 0xd5, 0xc6, 0xbc, 0xc2, 0x1f, 0x0c, 0xfa, 0x68, 0x60, 0xf9, 0xc8, 0xc7, 0x5f, 0x39, 0x16, 0x29, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11787_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11787_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x7b, 0x38, 0x3b, 0xa1, 0xce, 0xbf, 0x5c, 0xa5, 0x79, 0xef, 0x6e, 0xd1, 0x00, 0x27, 0x98, 0x8f, 0x84, 0x24, 0xf4, 0x2f, 0xfb, 0xea, 0x2e, 0x51, 0xb3, 0x34, 0x0d, 0xf9, 0xf8, 0xc3, 0xc6, 0x0b, 0x55, 0x8d, 0x6d, 0xc2, 0xdf, 0x10, 0xf3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11787 = { .name = "ecdsa_brainpoolp320r1_sha384_11787", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11787_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11787_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11787_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1032 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11788 for ECDSA, tcId is 1033 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11788_pubkey[] = { 0x4d, 0xb4, 0x60, 0x20, 0x99, 0x72, 0xc8, 0xe9, 0xc3, 0x65, 0x11, 0x95, 0x46, 0xac, 0x45, 0x7a, 0xdd, 0x15, 0x7f, 0x0c, 0x4d, 0x2b, 0x3c, 0xd6, 0x5c, 0x63, 0x5d, 0xca, 0xec, 0xa6, 0x17, 0x02, 0x9c, 0xab, 0xf7, 0x5c, 0x06, 0x10, 0x1b, 0xb6, 0x9e, 0xf8, 0xb7, 0x62, 0x6e, 0x6b, 0x2f, 0x98, 0x45, 0xb0, 0x08, 0x6d, 0x2a, 0x96, 0x40, 0x18, 0xb9, 0xb2, 0x5e, 0xb8, 0xdb, 0x42, 0x6b, 0xc9, 0x06, 0x94, 0xcc, 0x61, 0x4b, 0x76, 0x02, 0xb1, 0xfd, 0x60, 0x87, 0xa9, 0xa7, 0x1c, 0xbf, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11788_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11788_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x98, 0xff, 0x1d, 0xb1, 0xb9, 0xaf, 0xfa, 0x33, 0xa2, 0xe5, 0x3c, 0x68, 0x4d, 0x3f, 0x07, 0x61, 0x17, 0x72, 0x40, 0x5e, 0x8c, 0x20, 0x0f, 0x2a, 0xf2, 0xaf, 0xa9, 0xe5, 0x3c, 0x6e, 0x8e, 0xf3, 0x0c, 0xc1, 0x43, 0xb3, 0xf5, 0xff, 0x7f, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11788 = { .name = "ecdsa_brainpoolp320r1_sha384_11788", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11788_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11788_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11788_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1033 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11789 for ECDSA, tcId is 1034 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11789_pubkey[] = { 0x3e, 0x7a, 0xb8, 0x50, 0x84, 0x0d, 0x75, 0x98, 0x7d, 0x33, 0x83, 0x7e, 0xad, 0x46, 0x49, 0x9c, 0xe4, 0x33, 0xf3, 0xfc, 0xe6, 0x73, 0x83, 0xb2, 0xe3, 0x25, 0xdd, 0x2f, 0xc7, 0xe0, 0xf5, 0x00, 0x76, 0x9c, 0xbb, 0x67, 0xb4, 0x55, 0x0a, 0x28, 0xc3, 0x03, 0x14, 0x48, 0x7a, 0x87, 0x09, 0x47, 0x50, 0x33, 0x44, 0x99, 0xdb, 0xfb, 0xeb, 0x2d, 0x5c, 0xb9, 0x76, 0xee, 0x2d, 0x47, 0x99, 0x73, 0x21, 0x59, 0x7a, 0x41, 0x12, 0x4a, 0x03, 0x8f, 0xe8, 0x67, 0xbe, 0x0e, 0xf6, 0x68, 0xc4, 0xce, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11789_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11789_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x9f, 0xf4, 0x43, 0x3c, 0xa3, 0xa4, 0xaf, 0x64, 0x8e, 0x00, 0x71, 0xc8, 0x7c, 0x2e, 0x5c, 0x35, 0x54, 0xb1, 0x17, 0x61, 0xb1, 0x0b, 0xb2, 0xb8, 0x17, 0x25, 0x02, 0x8a, 0x56, 0xc4, 0xfc, 0x92, 0xf1, 0x32, 0x0c, 0xa7, 0x39, 0x6c, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11789 = { .name = "ecdsa_brainpoolp320r1_sha384_11789", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11789_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11789_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11789_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1034 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11790 for ECDSA, tcId is 1035 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11790_pubkey[] = { 0x7a, 0xcc, 0x91, 0x99, 0x34, 0xb0, 0xfd, 0x90, 0x01, 0x1c, 0xd9, 0x6f, 0x59, 0xdd, 0xba, 0x52, 0xe1, 0x20, 0x94, 0xda, 0xc1, 0x8a, 0x2c, 0xad, 0xcb, 0x03, 0xa0, 0xf3, 0x1a, 0xc7, 0x2d, 0x3f, 0xd5, 0x98, 0x4a, 0x11, 0xe9, 0x22, 0x0f, 0x8c, 0x06, 0x29, 0xbc, 0x5f, 0x3f, 0x0d, 0xab, 0xbd, 0x3f, 0xdd, 0x30, 0xf4, 0x7a, 0x0a, 0x5b, 0xea, 0x30, 0x52, 0x89, 0x2f, 0x8e, 0x50, 0xa4, 0x03, 0x3b, 0xe4, 0x79, 0x5b, 0x32, 0xc6, 0x67, 0x1d, 0x14, 0x1b, 0x47, 0x30, 0x80, 0xe5, 0x79, 0x11, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11790_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11790_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc7, 0x6c, 0xe5, 0x35, 0x60, 0x16, 0x3f, 0x15, 0x7b, 0x11, 0xe4, 0xd0, 0x5c, 0x61, 0x54, 0x0a, 0x5d, 0xf6, 0xb8, 0x24, 0x1c, 0xbd, 0x3b, 0xa7, 0xd9, 0x11, 0xa7, 0x54, 0x1e, 0xec, 0x55, 0xe9, 0x86, 0xeb, 0xf8, 0x11, 0xae, 0x50, 0xa8, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11790 = { .name = "ecdsa_brainpoolp320r1_sha384_11790", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11790_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11790_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11790_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1035 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11791 for ECDSA, tcId is 1036 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11791_pubkey[] = { 0x12, 0xc1, 0x63, 0xfe, 0x25, 0xcb, 0x79, 0xad, 0x59, 0xc7, 0x6b, 0x52, 0x80, 0xdc, 0x67, 0x06, 0xa4, 0x2c, 0x58, 0x59, 0x62, 0x30, 0xbf, 0x7b, 0xa7, 0x20, 0x6e, 0x6c, 0xe2, 0xb4, 0x67, 0xe1, 0xb7, 0xa7, 0x06, 0x3e, 0x59, 0xb0, 0xbe, 0xd6, 0xcc, 0xbe, 0xaf, 0x22, 0xac, 0xcb, 0x1a, 0xc4, 0x1e, 0xd4, 0x3a, 0xc7, 0x75, 0xb9, 0x7a, 0xea, 0x3a, 0x68, 0x8e, 0x2f, 0x09, 0x6c, 0x3a, 0x5e, 0x59, 0xf8, 0x68, 0xbc, 0x91, 0x9d, 0xa5, 0xce, 0x25, 0x2c, 0xf5, 0xd7, 0x12, 0xe7, 0xde, 0x40, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11791_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11791_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x42, 0x18, 0xa4, 0x51, 0x16, 0xea, 0x65, 0xb2, 0x83, 0xcc, 0x7d, 0x90, 0xa5, 0x10, 0xf0, 0x77, 0xb1, 0xb0, 0x9e, 0xdd, 0xbc, 0xfc, 0xa3, 0xe7, 0xd2, 0x89, 0x6b, 0x86, 0x9d, 0xd3, 0xba, 0x55, 0x6c, 0x4f, 0x10, 0x59, 0x0b, 0x0e, 0x08, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11791 = { .name = "ecdsa_brainpoolp320r1_sha384_11791", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11791_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11791_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11791_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1036 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11792 for ECDSA, tcId is 1037 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11792_pubkey[] = { 0x69, 0x60, 0xbf, 0xcd, 0xdd, 0x00, 0x21, 0xfc, 0xb8, 0xa3, 0xd7, 0xaa, 0x85, 0xf9, 0x6c, 0xf3, 0x60, 0xa7, 0x11, 0x3e, 0x38, 0x24, 0x50, 0x85, 0x25, 0x02, 0x1f, 0x83, 0xe3, 0x08, 0x59, 0x89, 0xc3, 0x5e, 0x0c, 0x57, 0x72, 0x65, 0x03, 0x30, 0x5c, 0x12, 0x75, 0xb9, 0xd8, 0xb5, 0x19, 0x9d, 0x46, 0x1f, 0xcb, 0x9d, 0x34, 0xf8, 0x85, 0x7b, 0x65, 0xa1, 0x40, 0x46, 0x2f, 0xd5, 0xcd, 0xc7, 0xa3, 0x3e, 0x5c, 0xf7, 0xf4, 0xe2, 0xd0, 0x8a, 0x5a, 0x34, 0xd9, 0xae, 0x00, 0xb2, 0x93, 0x9a, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11792_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11792_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5e, 0x5f, 0x32, 0x42, 0x3b, 0xad, 0x36, 0x44, 0xbe, 0x71, 0x8d, 0x81, 0x95, 0x34, 0x13, 0x62, 0xc9, 0xcb, 0xa5, 0x2b, 0x33, 0x0f, 0x91, 0x3b, 0x15, 0x21, 0xaf, 0x6e, 0x5e, 0x3e, 0xb2, 0x06, 0x94, 0x21, 0xb0, 0x5d, 0xca, 0xc2, 0x99, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11792 = { .name = "ecdsa_brainpoolp320r1_sha384_11792", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11792_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11792_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11792_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1037 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11793 for ECDSA, tcId is 1038 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11793_pubkey[] = { 0x66, 0xad, 0x2c, 0x26, 0x01, 0x23, 0x88, 0xc8, 0xb9, 0x04, 0x6a, 0x46, 0x6b, 0x87, 0xbd, 0x71, 0xb6, 0x4a, 0xb8, 0x1b, 0x54, 0xcf, 0xfc, 0x5a, 0x61, 0x1f, 0x4b, 0x75, 0x81, 0xad, 0x83, 0x65, 0xed, 0xd0, 0x8e, 0x6a, 0xfd, 0x4a, 0x52, 0xf6, 0x1a, 0x30, 0x66, 0xc0, 0xb3, 0xb7, 0x03, 0xdd, 0xce, 0x74, 0x62, 0x39, 0xa4, 0xd3, 0xdb, 0xf1, 0x93, 0x89, 0x45, 0xf1, 0x5e, 0xa9, 0x49, 0x7b, 0xbf, 0xc4, 0x5b, 0x38, 0x9e, 0x13, 0x03, 0x50, 0xb9, 0x94, 0x59, 0x22, 0xb8, 0x7c, 0xe3, 0x74, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11793_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11793_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xac, 0x07, 0xaa, 0xad, 0xe5, 0xc5, 0xfb, 0x2f, 0xe5, 0xa1, 0x8b, 0xbe, 0xfd, 0x26, 0x2e, 0x0e, 0x43, 0x9f, 0xd6, 0x8e, 0x0a, 0x31, 0x7d, 0xb0, 0x6f, 0xf4, 0xba, 0x62, 0x3a, 0x2a, 0x03, 0x11, 0x4e, 0xc5, 0xb6, 0xe0, 0x84, 0x17, 0x10, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11793 = { .name = "ecdsa_brainpoolp320r1_sha384_11793", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11793_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11793_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11793_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1038 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11794 for ECDSA, tcId is 1039 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11794_pubkey[] = { 0x0c, 0xfa, 0x6e, 0x38, 0x38, 0xd8, 0x11, 0x3a, 0x24, 0xd8, 0x7d, 0xb9, 0x74, 0x17, 0xd6, 0x8f, 0x00, 0xc4, 0x26, 0xe9, 0xb8, 0x55, 0x0d, 0x8a, 0x95, 0x1f, 0xed, 0x53, 0x15, 0x72, 0xe7, 0xcc, 0xa6, 0x6f, 0xfe, 0x0a, 0xe1, 0x76, 0xff, 0x0e, 0x31, 0x2f, 0xa0, 0x2e, 0x5c, 0xc7, 0x7c, 0x21, 0xf4, 0xa6, 0x63, 0x0e, 0x25, 0xbc, 0xb9, 0x87, 0xdc, 0x1e, 0xef, 0x14, 0xae, 0xc8, 0x0c, 0x15, 0xb9, 0xb2, 0x92, 0xe3, 0xac, 0xfb, 0x30, 0xbc, 0x2c, 0x04, 0x38, 0xf0, 0xa9, 0x83, 0x1c, 0x07, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11794_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11794_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x31, 0x1f, 0x6d, 0x0a, 0xbc, 0xe9, 0x6f, 0xe7, 0xf5, 0xbe, 0xd2, 0xca, 0x46, 0x00, 0xa0, 0x21, 0xfd, 0xda, 0x9a, 0x8c, 0x92, 0x2f, 0xb0, 0xe1, 0x0f, 0x18, 0x0f, 0x97, 0xfa, 0x2c, 0xc8, 0x4d, 0xd7, 0x85, 0xc7, 0x1e, 0x6c, 0x41, 0xdb, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11794 = { .name = "ecdsa_brainpoolp320r1_sha384_11794", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11794_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11794_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11794_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1039 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11795 for ECDSA, tcId is 1040 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11795_pubkey[] = { 0x3d, 0xab, 0xbc, 0x36, 0xa4, 0x55, 0xba, 0x07, 0x43, 0x2d, 0xa1, 0xaa, 0x72, 0x39, 0xae, 0xfd, 0xef, 0xb7, 0x2a, 0xc0, 0x93, 0x13, 0xc3, 0xa7, 0xf3, 0x43, 0x98, 0x50, 0xf6, 0x02, 0x54, 0x3e, 0xb4, 0xaf, 0xfc, 0x5d, 0x82, 0x25, 0xb5, 0xee, 0xce, 0x48, 0xe2, 0xf6, 0x7e, 0x82, 0xd4, 0x48, 0xb3, 0xd8, 0xb9, 0xb0, 0xfc, 0x20, 0x08, 0x32, 0xa3, 0xd1, 0xac, 0x88, 0x05, 0x88, 0x72, 0x76, 0x2f, 0xcb, 0xf0, 0x27, 0xe9, 0xf5, 0x70, 0x5d, 0x8f, 0x58, 0x12, 0xe5, 0x07, 0xda, 0xe1, 0x25, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11795_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11795_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x62, 0x3e, 0xda, 0x15, 0x79, 0xd2, 0xdf, 0xcf, 0xeb, 0x7d, 0xa5, 0x94, 0x8c, 0x01, 0x40, 0x43, 0xfb, 0xb5, 0x35, 0x19, 0x24, 0x5f, 0x61, 0xc2, 0x1e, 0x30, 0x1f, 0x2f, 0xf4, 0x59, 0x90, 0x9b, 0xaf, 0x0b, 0x8e, 0x3c, 0xd8, 0x83, 0xb7, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11795 = { .name = "ecdsa_brainpoolp320r1_sha384_11795", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11795_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11795_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11795_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1040 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11796 for ECDSA, tcId is 1041 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11796_pubkey[] = { 0x8a, 0x96, 0x58, 0xdc, 0x5f, 0x91, 0xaa, 0x57, 0x77, 0x06, 0xf1, 0xd9, 0x1d, 0x22, 0x52, 0xcb, 0x0d, 0x09, 0xf2, 0x05, 0x3e, 0x56, 0x11, 0x29, 0x10, 0x5c, 0x7f, 0x37, 0xdd, 0xb2, 0xf9, 0x72, 0xb3, 0x22, 0x4f, 0x12, 0xcf, 0x9e, 0x43, 0xfe, 0x08, 0x78, 0x2e, 0xc6, 0x10, 0x5f, 0x4c, 0x06, 0x58, 0x7e, 0xb1, 0xec, 0xec, 0xb2, 0xf4, 0xf4, 0xa0, 0x4e, 0x23, 0x63, 0x04, 0xdc, 0x75, 0xeb, 0x2e, 0xff, 0xf0, 0xbe, 0x66, 0xb9, 0x77, 0xfa, 0x80, 0x4a, 0xf7, 0x3b, 0xfc, 0xba, 0xc7, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11796_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11796_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x93, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11796 = { .name = "ecdsa_brainpoolp320r1_sha384_11796", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11796_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11796_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11796_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1041 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11797 for ECDSA, tcId is 1042 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11797_pubkey[] = { 0x06, 0xb4, 0x3b, 0xb9, 0x58, 0x7e, 0xe1, 0x58, 0xad, 0x57, 0x52, 0xd1, 0xad, 0x11, 0xf6, 0xf0, 0xf5, 0xe3, 0x16, 0xad, 0x21, 0x93, 0x7c, 0xdd, 0x92, 0x53, 0xf3, 0x84, 0x48, 0x57, 0xf0, 0xa2, 0x5e, 0x7b, 0x67, 0x7b, 0xbf, 0x99, 0x94, 0x44, 0x97, 0x05, 0x36, 0x23, 0x34, 0xbd, 0xce, 0xb6, 0x8a, 0xe6, 0xa5, 0x84, 0x64, 0x0c, 0x95, 0xcb, 0x10, 0x78, 0x9b, 0x19, 0x95, 0x3f, 0x5e, 0x11, 0x99, 0x73, 0xee, 0xd7, 0x35, 0x17, 0x7a, 0xab, 0xfc, 0xb2, 0x63, 0xfc, 0x8e, 0xf5, 0xef, 0x97, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11797_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11797_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x5d, 0x0d, 0x76, 0x69, 0x20, 0x6f, 0x5f, 0x3b, 0x90, 0x9d, 0x21, 0x14, 0x58, 0x92, 0xb0, 0x1b, 0x38, 0xe4, 0xea, 0x8a, 0x3d, 0xb6, 0x05, 0x9b, 0x6e, 0x91, 0xf2, 0x15, 0xbe, 0x5a, 0x83, 0xc5, 0x0d, 0xc7, 0xef, 0x8d, 0xcc, 0x5c, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11797 = { .name = "ecdsa_brainpoolp320r1_sha384_11797", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11797_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11797_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11797_sig, .siglen = 80, .result = 1, .comment = "edge case for u2, tcId is 1042 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11798 for ECDSA, tcId is 1043 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11798_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0xc0, 0x83, 0x67, 0x94, 0x54, 0x95, 0xd9, 0x33, 0xf2, 0x06, 0x92, 0x7a, 0x2b, 0x7f, 0x5b, 0x74, 0xb2, 0x2f, 0x97, 0x3a, 0x89, 0x83, 0x55, 0xaa, 0x2f, 0x7e, 0x29, 0x5e, 0x06, 0xef, 0x3a, 0x4f, 0x56, 0x15, 0x46, 0xdb, 0x97, 0xf7, 0x9a, 0xfa, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11798_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11798_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11798 = { .name = "ecdsa_brainpoolp320r1_sha384_11798", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11798_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11798_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11798_sig, .siglen = 80, .result = 1, .comment = "point duplication during verification, tcId is 1043 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11799 for ECDSA, tcId is 1044 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11799_pubkey[] = { 0x56, 0x88, 0x03, 0xda, 0x07, 0x1e, 0x6b, 0x9f, 0x43, 0x80, 0xe3, 0x99, 0x54, 0xf2, 0xb0, 0xfc, 0x0f, 0x5b, 0xb5, 0x8a, 0x0f, 0x68, 0xb5, 0xd1, 0xa4, 0x2c, 0x7e, 0x90, 0x52, 0xec, 0xe2, 0xa0, 0xfc, 0x7a, 0xca, 0xdc, 0x0f, 0x42, 0x39, 0x99, 0x12, 0xda, 0xdf, 0x8b, 0xe2, 0x26, 0x76, 0x83, 0xef, 0x35, 0xe5, 0xe4, 0xa6, 0x82, 0x84, 0xf1, 0x47, 0x60, 0x38, 0x6c, 0x6d, 0x70, 0xb8, 0x45, 0x20, 0x14, 0x90, 0x8e, 0x71, 0xa4, 0xb1, 0xd9, 0xa6, 0xbe, 0xcb, 0xd6, 0x59, 0xbb, 0x93, 0x2d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11799_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11799_sig[] = { 0x95, 0x63, 0xbd, 0x68, 0x54, 0x5c, 0xcd, 0x18, 0x5a, 0xe7, 0x24, 0xd8, 0xef, 0xcd, 0x4c, 0xc2, 0x32, 0x34, 0x93, 0x4e, 0xef, 0x10, 0xf2, 0x80, 0x79, 0x2b, 0x2f, 0x93, 0x0c, 0x97, 0xa6, 0xc1, 0xe0, 0x08, 0x29, 0xa8, 0xb9, 0x75, 0xb9, 0xee, 0xc5, 0xe7, 0x9c, 0x49, 0xab, 0xb1, 0x35, 0x12, 0x9f, 0x06, 0x36, 0xe1, 0x8e, 0x2e, 0x73, 0xbc, 0xed, 0x30, 0x85, 0x5d, 0xee, 0xba, 0x14, 0x77, 0xd9, 0x52, 0x1b, 0x33, 0xa3, 0x28, 0x65, 0x15, 0x51, 0x77, 0xd9, 0x46, 0xe1, 0xba, 0xbc, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11799 = { .name = "ecdsa_brainpoolp320r1_sha384_11799", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11799_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11799_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11799_sig, .siglen = 80, .result = -1, .comment = "duplication bug, tcId is 1044 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11800 for ECDSA, tcId is 1045 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11800_pubkey[] = { 0x5d, 0x1a, 0x10, 0x01, 0x18, 0xbd, 0x36, 0x10, 0xf1, 0x0e, 0x13, 0xb5, 0xad, 0xcc, 0x7a, 0x90, 0xa3, 0x7f, 0x4f, 0x98, 0x8c, 0xfa, 0x4e, 0x22, 0xcc, 0xa7, 0x7e, 0x88, 0x44, 0x4b, 0x00, 0x21, 0x6d, 0xcf, 0xe5, 0xf6, 0x84, 0x18, 0xd3, 0x42, 0x5d, 0x5b, 0x88, 0xc9, 0xb8, 0xc9, 0x2b, 0x3d, 0xec, 0x7f, 0x7b, 0xcc, 0x68, 0x8a, 0x6d, 0x18, 0xe6, 0xcd, 0xeb, 0x91, 0x76, 0x15, 0x0d, 0x4b, 0x10, 0x62, 0xa8, 0x32, 0xc8, 0xa3, 0xbc, 0x37, 0x7f, 0x8d, 0x7e, 0x98, 0xb1, 0xdb, 0x0b, 0x9d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11800_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11800_sig[] = { 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11800 = { .name = "ecdsa_brainpoolp320r1_sha384_11800", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11800_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11800_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11800_sig, .siglen = 80, .result = -1, .comment = "comparison with point at infinity , tcId is 1045 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11801 for ECDSA, tcId is 1046 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11801_pubkey[] = { 0xcc, 0xa9, 0xac, 0x38, 0xde, 0x5b, 0x36, 0xcf, 0x79, 0xd8, 0xe4, 0x15, 0xcb, 0x72, 0x9e, 0x68, 0x5e, 0x0b, 0xbd, 0xaf, 0xe1, 0x61, 0xc5, 0xe7, 0xec, 0xfa, 0x41, 0x77, 0xe8, 0x26, 0xe8, 0x15, 0xd6, 0x65, 0x26, 0xaa, 0x5d, 0xaf, 0x32, 0x27, 0x9b, 0x77, 0x99, 0xbc, 0xef, 0xc6, 0xb5, 0xd8, 0xd0, 0x9f, 0xf1, 0xa0, 0x73, 0x9f, 0xd4, 0x23, 0x18, 0x81, 0x26, 0xf8, 0x0a, 0xf7, 0x03, 0x31, 0x4d, 0xa0, 0xd2, 0x6b, 0xa6, 0x71, 0x4a, 0xa1, 0x97, 0xa6, 0x58, 0x2c, 0x36, 0xb0, 0xf0, 0x5d, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11801_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11801_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11801 = { .name = "ecdsa_brainpoolp320r1_sha384_11801", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11801_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11801_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11801_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1046 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11802 for ECDSA, tcId is 1047 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11802_pubkey[] = { 0xcc, 0xea, 0xa1, 0x20, 0x3b, 0xdc, 0xbe, 0x15, 0xe2, 0x04, 0x34, 0xd6, 0x24, 0xf0, 0xed, 0x9a, 0xca, 0x81, 0xd4, 0xc8, 0x2f, 0x84, 0x0b, 0xba, 0x3a, 0x86, 0xc6, 0x75, 0x62, 0x62, 0xaa, 0x37, 0xef, 0xed, 0x62, 0xf5, 0xf1, 0xd0, 0x97, 0xf7, 0x45, 0x70, 0x57, 0xb9, 0x8d, 0x2b, 0x9e, 0xa6, 0xbd, 0x28, 0x58, 0x1d, 0x40, 0xac, 0x20, 0xfc, 0xc9, 0xd5, 0x36, 0xa1, 0x17, 0x76, 0x92, 0x03, 0x44, 0x7b, 0xf4, 0x1e, 0x10, 0xce, 0x4d, 0xa1, 0xad, 0x79, 0x4c, 0xa2, 0x0f, 0x8e, 0xe1, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11802_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11802_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11802 = { .name = "ecdsa_brainpoolp320r1_sha384_11802", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11802_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11802_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11802_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1047 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11803 for ECDSA, tcId is 1048 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11803_pubkey[] = { 0xcc, 0x9e, 0xd2, 0x5f, 0x13, 0xe9, 0x4a, 0x6e, 0xbd, 0x53, 0x1f, 0x3b, 0x14, 0x2f, 0xab, 0xc4, 0xed, 0x52, 0x2d, 0xc6, 0x12, 0x78, 0x61, 0x52, 0x88, 0x30, 0xc6, 0x78, 0x7d, 0x6e, 0xcf, 0xd4, 0xb7, 0x04, 0xe1, 0x77, 0x4e, 0x91, 0x18, 0xed, 0x68, 0xe4, 0xe1, 0x72, 0xf9, 0x3f, 0x1d, 0x5b, 0x8d, 0x78, 0x60, 0xfa, 0xe2, 0xc1, 0x15, 0xf4, 0xaa, 0x0d, 0xaa, 0xf6, 0xdf, 0x5c, 0xa3, 0x80, 0x9d, 0x79, 0xac, 0xfd, 0xb9, 0xed, 0x2b, 0xe1, 0x99, 0x95, 0x65, 0x8d, 0x2f, 0x44, 0xd2, 0x35, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11803_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11803_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11803 = { .name = "ecdsa_brainpoolp320r1_sha384_11803", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11803_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11803_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11803_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1048 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11804 for ECDSA, tcId is 1049 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11804_pubkey[] = { 0x6a, 0x3c, 0xae, 0x0e, 0xdc, 0x84, 0x55, 0xae, 0x16, 0xb5, 0xee, 0xb6, 0x56, 0x96, 0x03, 0xbd, 0xae, 0xb5, 0x79, 0x36, 0x99, 0xe8, 0x5d, 0x37, 0x28, 0x57, 0xf1, 0x31, 0x9c, 0x70, 0xdd, 0x52, 0x5b, 0x1e, 0xa3, 0x0a, 0x0f, 0x5c, 0x7b, 0x44, 0x07, 0x55, 0x37, 0xcd, 0x82, 0x2d, 0x9e, 0xe2, 0xd0, 0xe7, 0xa4, 0x9c, 0x4c, 0x31, 0x41, 0x44, 0x5d, 0x01, 0xb7, 0x89, 0xbb, 0xca, 0xd0, 0x2e, 0xc4, 0x24, 0x9c, 0x2e, 0x23, 0x55, 0xd6, 0x1d, 0xb5, 0x58, 0x1d, 0xbd, 0xb3, 0x42, 0xc9, 0x93, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11804_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11804_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11804 = { .name = "ecdsa_brainpoolp320r1_sha384_11804", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11804_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11804_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11804_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1049 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11805 for ECDSA, tcId is 1050 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11805_pubkey[] = { 0x4e, 0xfb, 0x51, 0x61, 0xca, 0x1a, 0x1e, 0xeb, 0x59, 0xa5, 0xfc, 0x39, 0xcd, 0x52, 0x1d, 0x40, 0xbd, 0x3e, 0x03, 0x45, 0x12, 0xfa, 0x2a, 0x1e, 0xaf, 0x3b, 0x7e, 0x92, 0xbb, 0x9e, 0x95, 0xc0, 0x6a, 0x4c, 0x72, 0x6c, 0xec, 0xcd, 0xf9, 0xbc, 0x6b, 0xfa, 0x80, 0x1b, 0x06, 0x71, 0x37, 0xf1, 0xb6, 0xb4, 0x50, 0x60, 0x41, 0x13, 0x0b, 0x4d, 0x40, 0x2d, 0x90, 0x08, 0x7a, 0xd0, 0x05, 0xe3, 0xf6, 0x52, 0xe1, 0xd9, 0x1c, 0x9d, 0x34, 0x4c, 0xd1, 0xee, 0xff, 0xff, 0x61, 0xd3, 0xa3, 0x06, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11805_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11805_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11805 = { .name = "ecdsa_brainpoolp320r1_sha384_11805", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11805_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11805_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11805_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1050 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11806 for ECDSA, tcId is 1051 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11806_pubkey[] = { 0x5f, 0x65, 0x86, 0x87, 0xe6, 0xa5, 0x42, 0xa9, 0x1d, 0x89, 0x3b, 0x48, 0x77, 0x6a, 0x86, 0xd5, 0x28, 0xfd, 0x39, 0x97, 0x81, 0xbb, 0xb9, 0x30, 0x5b, 0xe0, 0x79, 0x7e, 0x3a, 0x6f, 0x36, 0x11, 0x8a, 0xe1, 0x9e, 0x68, 0xdc, 0x16, 0x73, 0xf6, 0x67, 0x6e, 0x53, 0x6c, 0x78, 0x97, 0xa0, 0x00, 0x2f, 0x96, 0x64, 0x92, 0x96, 0x31, 0xf4, 0x18, 0xc4, 0x53, 0x7d, 0x23, 0x74, 0x92, 0x20, 0xc5, 0x0a, 0x32, 0x12, 0x1c, 0x43, 0x4d, 0xca, 0xd2, 0xa6, 0xcd, 0xc2, 0x03, 0xcd, 0x03, 0x5a, 0x32, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11806_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11806_sig[] = { 0x2f, 0xb4, 0x12, 0xf0, 0x3e, 0x6d, 0xeb, 0xdf, 0xbf, 0xa3, 0xa3, 0x09, 0x2f, 0x21, 0xc4, 0x61, 0x9e, 0x04, 0x27, 0x9b, 0xe0, 0x93, 0x16, 0x94, 0xab, 0x99, 0xc6, 0x50, 0x3e, 0x5a, 0x89, 0x4d, 0xef, 0x83, 0x77, 0xed, 0x05, 0x9a, 0x6d, 0xe8, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11806 = { .name = "ecdsa_brainpoolp320r1_sha384_11806", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11806_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11806_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11806_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 1051 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11807 for ECDSA, tcId is 1052 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11807_pubkey[] = { 0x90, 0x53, 0x7a, 0x68, 0x27, 0xa2, 0x50, 0x60, 0x27, 0x3d, 0x44, 0xd4, 0x84, 0x6a, 0xea, 0x59, 0x66, 0x82, 0xdf, 0x0a, 0x59, 0xd0, 0xff, 0xe7, 0x9b, 0xe2, 0xa1, 0xeb, 0xe9, 0x18, 0x70, 0x3c, 0xab, 0xfa, 0xc6, 0x4d, 0xa5, 0xe5, 0x91, 0x00, 0x33, 0x09, 0x18, 0x0d, 0x9d, 0xa5, 0xe7, 0x82, 0x37, 0xb9, 0x54, 0x03, 0xc5, 0x2f, 0x3c, 0xee, 0xe5, 0x03, 0x06, 0x7b, 0x67, 0x27, 0x15, 0xe9, 0x7d, 0x8b, 0x63, 0x69, 0x34, 0x26, 0x84, 0xa7, 0x2f, 0x46, 0x76, 0x98, 0x74, 0x1b, 0x1a, 0x1f, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11807_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11807_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x46, 0x74, 0xc2, 0x60, 0x12, 0x3e, 0xc5, 0x3d, 0x4b, 0x14, 0x28, 0x1f, 0x9b, 0x55, 0xf5, 0x77, 0x53, 0x2f, 0xef, 0xe1, 0xe7, 0x85, 0x06, 0x36, 0x64, 0x6d, 0x64, 0xed, 0x4f, 0x82, 0x1d, 0xa3, 0x2c, 0xdb, 0x1c, 0x73, 0xc1, 0x97, 0x31, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11807 = { .name = "ecdsa_brainpoolp320r1_sha384_11807", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11807_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11807_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11807_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1052 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11808 for ECDSA, tcId is 1053 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11808_pubkey[] = { 0xa8, 0x1c, 0xcb, 0xf4, 0xfc, 0x44, 0x57, 0x03, 0x3b, 0xd4, 0x9c, 0xea, 0xc8, 0xfa, 0x52, 0xe4, 0x59, 0x40, 0x07, 0x30, 0xb8, 0x77, 0x30, 0x5b, 0xe0, 0x41, 0x81, 0x53, 0xd2, 0x78, 0xd3, 0x0b, 0x59, 0x73, 0x77, 0x7a, 0x7d, 0xd1, 0xc2, 0xc1, 0x75, 0x44, 0xff, 0x1b, 0x76, 0x20, 0x8e, 0x84, 0x10, 0x53, 0xec, 0xae, 0xf7, 0xa5, 0x86, 0x9e, 0x92, 0xda, 0x08, 0xc5, 0xc4, 0xc3, 0xd0, 0xa1, 0x67, 0xd5, 0x68, 0x5e, 0xb7, 0x21, 0xd6, 0x20, 0x33, 0x9c, 0xc9, 0xb0, 0x01, 0x49, 0x83, 0x8e, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11808_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11808_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11808 = { .name = "ecdsa_brainpoolp320r1_sha384_11808", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11808_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11808_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11808_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1053 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11809 for ECDSA, tcId is 1054 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11809_pubkey[] = { 0xba, 0x16, 0x00, 0x89, 0x32, 0x7c, 0xf8, 0xba, 0x16, 0x3e, 0xef, 0xa4, 0x76, 0xa4, 0xea, 0xfd, 0x0f, 0x6c, 0xe9, 0xd5, 0x52, 0x92, 0xf6, 0x72, 0x4d, 0x02, 0x0f, 0x0e, 0xfa, 0xc5, 0x4b, 0xf6, 0x84, 0xf9, 0xd5, 0xf5, 0x69, 0x5f, 0x89, 0xc2, 0xb4, 0xde, 0x70, 0xdc, 0x4a, 0xb2, 0x65, 0x76, 0x18, 0x27, 0x32, 0x3d, 0xa3, 0xb2, 0xb0, 0x55, 0xac, 0x11, 0x87, 0xfc, 0x53, 0x41, 0xe4, 0x55, 0x5e, 0xbc, 0x6f, 0x69, 0x93, 0xb4, 0xc3, 0xfd, 0xd8, 0x98, 0x63, 0xfc, 0x55, 0xea, 0x38, 0xb4, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11809_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11809_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x2a, 0x46, 0x0e, 0x39, 0xa4, 0x8c, 0x0f, 0xf1, 0x93, 0x72, 0x7e, 0x79, 0x5d, 0x33, 0x93, 0x47, 0x98, 0x4f, 0xf6, 0x54, 0x57, 0xb6, 0x36, 0xed, 0x6f, 0x74, 0xd6, 0x27, 0xfc, 0x81, 0x44, 0xfb, 0x81, 0x50, 0x44, 0x45, 0x74, 0x27, 0x83, 0xd0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11809 = { .name = "ecdsa_brainpoolp320r1_sha384_11809", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11809_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11809_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11809_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1054 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11810 for ECDSA, tcId is 1055 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11810_pubkey[] = { 0x4a, 0x5c, 0xf4, 0x47, 0x55, 0x0f, 0x0f, 0xf2, 0xef, 0xa1, 0x93, 0xc3, 0xe1, 0x85, 0xdb, 0x60, 0x4f, 0xcf, 0xd7, 0xde, 0x5c, 0x47, 0xa5, 0x9a, 0x39, 0x2d, 0xa0, 0xc7, 0x57, 0x2f, 0x06, 0x10, 0x38, 0xc6, 0xaf, 0x5a, 0xfc, 0xfa, 0x9b, 0xd5, 0x30, 0xb7, 0x68, 0x2b, 0x82, 0x01, 0x0c, 0x39, 0x33, 0x4b, 0xa2, 0xed, 0xec, 0xf0, 0xa2, 0x3b, 0xca, 0x09, 0xe8, 0x10, 0xd7, 0x45, 0xbd, 0xf7, 0x3e, 0x44, 0x5e, 0x80, 0xac, 0xe0, 0xe5, 0x39, 0x9f, 0xa2, 0x61, 0x02, 0xcb, 0x3f, 0xae, 0xe6, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11810_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11810_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xa9, 0x18, 0x38, 0xe6, 0x92, 0x30, 0x3f, 0xc6, 0x4d, 0xc9, 0xf9, 0xe5, 0x74, 0xce, 0x4d, 0x1e, 0x61, 0x3f, 0xd9, 0x51, 0x5e, 0xd8, 0xdb, 0xb5, 0xbd, 0xd3, 0x58, 0x9f, 0xf2, 0x05, 0x13, 0xee, 0x05, 0x41, 0x11, 0x15, 0xd0, 0x9e, 0x0f, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11810 = { .name = "ecdsa_brainpoolp320r1_sha384_11810", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11810_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11810_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11810_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1055 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11811 for ECDSA, tcId is 1056 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11811_pubkey[] = { 0x5d, 0x3f, 0xef, 0x1b, 0x96, 0xdb, 0xc8, 0xca, 0x93, 0x30, 0x50, 0x8a, 0xd4, 0xce, 0xd4, 0x91, 0xe6, 0x27, 0xeb, 0x67, 0xcb, 0xa8, 0xc6, 0xb1, 0x53, 0x79, 0x37, 0x49, 0x8e, 0xe3, 0x02, 0x1b, 0x45, 0xca, 0x67, 0x59, 0x11, 0x7d, 0x89, 0xc4, 0xad, 0x2b, 0x69, 0x9e, 0x3e, 0xf9, 0x51, 0x6f, 0xff, 0x2e, 0xd2, 0xe1, 0x34, 0x93, 0x1c, 0x96, 0xd2, 0x8d, 0x3e, 0x14, 0xdd, 0x51, 0xc5, 0xb8, 0x75, 0x89, 0xa8, 0xfa, 0x88, 0xaf, 0x25, 0x29, 0xb8, 0xca, 0xa0, 0xf7, 0x85, 0xce, 0x20, 0x33, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11811_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11811_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xb5, 0x2c, 0x3c, 0xf7, 0x0a, 0x58, 0x44, 0x54, 0x77, 0xea, 0xb0, 0x51, 0x46, 0x4a, 0xc0, 0x57, 0x68, 0x32, 0x1f, 0xb2, 0x9c, 0x7a, 0xa2, 0x42, 0xb9, 0x19, 0x4c, 0xab, 0x5e, 0xbc, 0x4c, 0x35, 0xe1, 0x0e, 0xdb, 0x72, 0xcd, 0x3b, 0xa2, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11811 = { .name = "ecdsa_brainpoolp320r1_sha384_11811", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11811_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11811_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11811_sig, .siglen = 80, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1056 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11812 for ECDSA, tcId is 1057 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11812_pubkey[] = { 0xa8, 0x33, 0x67, 0x02, 0xc1, 0x58, 0xdc, 0xae, 0x49, 0x5f, 0x1c, 0x9c, 0xd7, 0x20, 0xc3, 0x9f, 0x15, 0xc1, 0x23, 0xa6, 0x77, 0x50, 0xdc, 0xd7, 0x45, 0x20, 0xc3, 0x4c, 0xf6, 0x79, 0x07, 0xe4, 0x92, 0x20, 0xbc, 0xd0, 0x20, 0xcc, 0x3a, 0x60, 0x15, 0x1a, 0x43, 0x2e, 0xe3, 0xe2, 0x3a, 0x74, 0xc8, 0xb8, 0xa9, 0x8d, 0x8e, 0x7c, 0x67, 0x22, 0x16, 0xdf, 0x48, 0xd8, 0xa6, 0x0d, 0x3f, 0x59, 0x2f, 0x66, 0x73, 0x83, 0x0a, 0xc9, 0xec, 0xfb, 0xcd, 0x00, 0x55, 0x0d, 0xb7, 0xad, 0x5c, 0x62, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11812_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11812_sig[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x53, 0xbf, 0x06, 0xe4, 0x3f, 0xcc, 0x42, 0x36, 0xb2, 0xec, 0x0d, 0x88, 0x47, 0x13, 0x79, 0x05, 0x3f, 0x1f, 0x34, 0x37, 0x20, 0x7c, 0x5a, 0x75, 0xb0, 0x90, 0x36, 0xb1, 0xc4, 0x0f, 0xa8, 0xf3, 0x12, 0x82, 0x77, 0x89, 0x4a, 0x4c, 0x96, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11812 = { .name = "ecdsa_brainpoolp320r1_sha384_11812", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11812_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11812_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11812_sig, .siglen = 80, .result = 1, .comment = "extreme value for k, tcId is 1057 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11813 for ECDSA, tcId is 1058 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11813_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11813_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11813_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11813 = { .name = "ecdsa_brainpoolp320r1_sha384_11813", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11813_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11813_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11813_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 1058 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11814 for ECDSA, tcId is 1059 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11814_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0x14, 0xfd, 0xd0, 0x55, 0x45, 0xec, 0x1c, 0xc8, 0xab, 0x40, 0x93, 0x24, 0x7f, 0x77, 0x27, 0x5e, 0x07, 0x43, 0xff, 0xed, 0x11, 0x71, 0x82, 0xea, 0xa9, 0xc7, 0x78, 0x77, 0xaa, 0xac, 0x6a, 0xc7, 0xd3, 0x52, 0x45, 0xd1, 0x69, 0x2e, 0x8e, 0xe1, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11814_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11814_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11814 = { .name = "ecdsa_brainpoolp320r1_sha384_11814", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11814_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11814_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11814_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 1059 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11815 for ECDSA, tcId is 1060 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11815_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11815_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11815_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11815 = { .name = "ecdsa_brainpoolp320r1_sha384_11815", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11815_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11815_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11815_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 1060 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11816 for ECDSA, tcId is 1061 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11816_pubkey[] = { 0x43, 0xbd, 0x7e, 0x9a, 0xfb, 0x53, 0xd8, 0xb8, 0x52, 0x89, 0xbc, 0xc4, 0x8e, 0xe5, 0xbf, 0xe6, 0xf2, 0x01, 0x37, 0xd1, 0x0a, 0x08, 0x7e, 0xb6, 0xe7, 0x87, 0x1e, 0x2a, 0x10, 0xa5, 0x99, 0xc7, 0x10, 0xaf, 0x8d, 0x0d, 0x39, 0xe2, 0x06, 0x11, 0xbe, 0x60, 0x76, 0xca, 0xf0, 0xd0, 0x32, 0xef, 0x35, 0xfb, 0xe5, 0x3a, 0x52, 0x8a, 0xb9, 0x07, 0xf2, 0x4b, 0xcf, 0xb9, 0xe5, 0x82, 0x8b, 0x04, 0xa5, 0xcb, 0x41, 0x74, 0xcd, 0xe7, 0x81, 0x61, 0x29, 0x81, 0xcc, 0xe0, 0x88, 0x84, 0x9f, 0x46, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11816_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11816_sig[] = { 0xad, 0x0b, 0x66, 0x4f, 0x95, 0x59, 0xe2, 0x9e, 0x46, 0xfd, 0x4f, 0xd3, 0x90, 0xe7, 0x5a, 0xbe, 0xbf, 0x14, 0x99, 0x7d, 0x17, 0xa1, 0xa3, 0x30, 0x4c, 0x80, 0xe4, 0x51, 0xfc, 0x8f, 0x79, 0xbb, 0x7c, 0xff, 0x16, 0x8e, 0x17, 0xde, 0x6f, 0x22, 0x1e, 0x32, 0x0a, 0x29, 0x2c, 0x64, 0x0b, 0x63, 0x69, 0x51, 0xc8, 0x0d, 0x8b, 0xb7, 0x20, 0x0e, 0x91, 0x5d, 0xaf, 0xf3, 0x1a, 0x14, 0x70, 0x60, 0x74, 0x2e, 0xe2, 0x1c, 0x8f, 0xca, 0x0c, 0xb3, 0xa5, 0x82, 0x79, 0xe8, 0x77, 0x89, 0xf0, 0x70, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11816 = { .name = "ecdsa_brainpoolp320r1_sha384_11816", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11816_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11816_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11816_sig, .siglen = 80, .result = -1, .comment = "testing point duplication, tcId is 1061 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11817 for ECDSA, tcId is 1062 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11817_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11817_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11817_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x9b, 0x6b, 0xac, 0xd3, 0xb2, 0xeb, 0x7b, 0xdd, 0x98, 0xf0, 0x7a, 0x24, 0x9d, 0x57, 0x61, 0x4b, 0xbe, 0xce, 0x10, 0x48, 0x03, 0x86, 0xe8, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11817 = { .name = "ecdsa_brainpoolp384r1_sha384_11817", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11817_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11817_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11817_sig, .siglen = 96, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 1062 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11818 for ECDSA, tcId is 1063 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11818_pubkey[] = { 0x8a, 0x94, 0x16, 0x4d, 0xc7, 0x65, 0x4f, 0xda, 0x3c, 0xd4, 0x30, 0x1d, 0x3e, 0x97, 0x20, 0x24, 0xc2, 0xda, 0xba, 0x71, 0xd4, 0x42, 0x12, 0x8c, 0x7f, 0x3f, 0xae, 0xcd, 0xb9, 0xe3, 0x75, 0xa8, 0x5a, 0xa8, 0x0c, 0x4a, 0xc2, 0x88, 0x89, 0xf2, 0x58, 0xe6, 0xcb, 0xa8, 0x86, 0xd4, 0x76, 0x36, 0x54, 0x8b, 0x3b, 0xf1, 0xb6, 0x75, 0xf2, 0x31, 0x8c, 0x3d, 0x8a, 0xb7, 0xa1, 0xc2, 0x81, 0xa3, 0x32, 0x41, 0xc1, 0x21, 0xb3, 0x59, 0x0b, 0xfd, 0xf7, 0x03, 0xc7, 0xcd, 0x4b, 0xae, 0x8f, 0x45, 0x18, 0x86, 0xd9, 0x89, 0x23, 0x4c, 0x1b, 0x8c, 0x58, 0x96, 0x14, 0x55, 0x4d, 0x42, 0x93, 0x92, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11818_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11818_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x4d, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11818 = { .name = "ecdsa_brainpoolp384r1_sha384_11818", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11818_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11818_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11818_sig, .siglen = 96, .result = -1, .comment = "r too large, tcId is 1063 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11819 for ECDSA, tcId is 1064 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11819_pubkey[] = { 0x73, 0xf8, 0x4a, 0xb6, 0x37, 0x89, 0x30, 0x1e, 0x88, 0xb4, 0xcb, 0x82, 0xcb, 0x93, 0x5d, 0xec, 0xff, 0xb8, 0xf4, 0x2b, 0x2c, 0x97, 0x84, 0xc7, 0x54, 0x46, 0x15, 0xb9, 0x07, 0x6e, 0xc7, 0xa7, 0xab, 0x94, 0x70, 0x2c, 0xa7, 0xf1, 0xd9, 0xaa, 0xcf, 0xb9, 0x05, 0x37, 0xb5, 0xd3, 0x68, 0xdc, 0x50, 0x2c, 0xb7, 0xc8, 0xc1, 0x82, 0x85, 0x99, 0x4c, 0x7b, 0x19, 0xfa, 0x3e, 0x24, 0x01, 0xfd, 0xc2, 0x6d, 0xe5, 0x4f, 0xfe, 0x00, 0x6b, 0xb7, 0x9b, 0xdd, 0x78, 0x52, 0xc6, 0x66, 0xd7, 0x30, 0xbd, 0xf7, 0x6a, 0x16, 0xc0, 0x79, 0x2a, 0x6c, 0x66, 0x81, 0xed, 0x6b, 0x64, 0x7f, 0xc8, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11819_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11819_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x64, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11819 = { .name = "ecdsa_brainpoolp384r1_sha384_11819", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11819_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11819_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11819_sig, .siglen = 96, .result = 1, .comment = "r,s are large, tcId is 1064 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11820 for ECDSA, tcId is 1065 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11820_pubkey[] = { 0x89, 0x5e, 0x84, 0x61, 0xed, 0xdb, 0xe2, 0x13, 0x67, 0xa9, 0x5b, 0x25, 0xcd, 0x85, 0xcd, 0x31, 0xe8, 0x0e, 0xcf, 0x1f, 0x95, 0x53, 0x90, 0x56, 0xfb, 0x7e, 0x10, 0xb4, 0xaa, 0x49, 0x90, 0x0b, 0x21, 0x94, 0xd9, 0x19, 0xb2, 0x9c, 0xd9, 0xbf, 0x37, 0x3a, 0x1d, 0x53, 0xef, 0x57, 0x11, 0x74, 0x76, 0x7c, 0x02, 0xe3, 0x6b, 0x93, 0x5a, 0x65, 0xe5, 0xa9, 0xcb, 0xb3, 0x55, 0x89, 0xa2, 0xa0, 0x18, 0x48, 0x20, 0x65, 0xc5, 0xe3, 0x3d, 0xa8, 0xce, 0x48, 0x3d, 0xc7, 0xf7, 0xfe, 0x44, 0x15, 0x74, 0xf9, 0xe7, 0xab, 0x06, 0x14, 0xbd, 0xcf, 0xc6, 0x10, 0x22, 0xc7, 0x80, 0xa3, 0x00, 0x09, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11820_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11820_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x48, 0x0e, 0xca, 0x28, 0x74, 0xaa, 0x6b, 0xa7, 0x1e, 0x7f, 0xb5, 0x71, 0x13, 0x39, 0xac, 0x0a, 0x7b, 0xf8, 0x40, 0x65, 0xb3, 0xc7, 0xd5, 0x9c, 0x64, 0xa2, 0xc6, 0x01, 0x5e, 0x6f, 0x79, 0x4e, 0x7d, 0xfa, 0x2b, 0x1f, 0xec, 0x73, 0xa7, 0x2a, 0xdb, 0x32, 0xbd, 0xb7, 0xdd, 0x55, 0xcd, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11820 = { .name = "ecdsa_brainpoolp384r1_sha384_11820", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11820_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11820_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11820_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 1065 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11821 for ECDSA, tcId is 1066 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11821_pubkey[] = { 0x61, 0x8a, 0xd8, 0x19, 0x12, 0xe4, 0xc3, 0x1f, 0x23, 0xea, 0xb2, 0xf0, 0xc6, 0x93, 0xb3, 0xef, 0x84, 0x04, 0x07, 0x4a, 0xb1, 0xdc, 0xe0, 0x1d, 0xc8, 0x2a, 0x76, 0x81, 0x51, 0xc9, 0xfa, 0x03, 0x93, 0xb4, 0xd6, 0xae, 0xae, 0xec, 0x68, 0x58, 0xd3, 0xf4, 0x19, 0x95, 0x7a, 0x5b, 0x99, 0x7f, 0x31, 0xfa, 0x80, 0x9b, 0x1b, 0x44, 0x67, 0x7c, 0xc5, 0xae, 0xf1, 0x89, 0x48, 0x46, 0x14, 0x2c, 0x3e, 0x44, 0xbb, 0xa6, 0xc4, 0x71, 0x12, 0x3f, 0xa1, 0x4f, 0xeb, 0x8f, 0x3a, 0xa9, 0xe9, 0x2f, 0x76, 0x9b, 0xe5, 0x49, 0xce, 0xf9, 0xc1, 0xd5, 0x5b, 0xc6, 0xf1, 0xf4, 0xf8, 0x41, 0x81, 0x3d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11821_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11821_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x16, 0x29, 0xef, 0x2d, 0x71, 0x82, 0xd6, 0x7b, 0x6b, 0xd9, 0xcf, 0x68, 0x42, 0x25, 0x1f, 0xe0, 0x9c, 0x96, 0xbf, 0xe0, 0x22, 0xb8, 0xad, 0x9a, 0x0e, 0x54, 0x6f, 0xdc, 0x8e, 0xcf, 0x5d, 0xc8, 0x63, 0x6f, 0xa1, 0x30, 0x59, 0xd7, 0xe9, 0xd8, 0x3f, 0xde, 0x50, 0xe0, 0xd2, 0xb3, 0x92, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11821 = { .name = "ecdsa_brainpoolp384r1_sha384_11821", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11821_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11821_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11821_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 1066 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11822 for ECDSA, tcId is 1067 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11822_pubkey[] = { 0x79, 0x58, 0x3b, 0x49, 0x68, 0xb5, 0x76, 0x81, 0x1b, 0x56, 0x7e, 0x16, 0x20, 0xe0, 0x0b, 0x0a, 0xab, 0x8a, 0xa2, 0x23, 0xc5, 0xe6, 0x55, 0xb2, 0x7b, 0x1e, 0xbe, 0xaf, 0x83, 0xbc, 0xd3, 0x5f, 0x42, 0x05, 0xa5, 0xa0, 0xe5, 0x1a, 0x20, 0x52, 0xff, 0xfe, 0x9f, 0xd2, 0x37, 0x85, 0xc9, 0x8f, 0x77, 0x35, 0x7c, 0x8a, 0x10, 0x08, 0xfc, 0xb7, 0xa3, 0x57, 0x96, 0x14, 0xc2, 0xff, 0x47, 0x98, 0x0f, 0xa9, 0xe4, 0x4b, 0x6b, 0x5e, 0xa3, 0xf8, 0xa3, 0x3c, 0x91, 0x9d, 0xd2, 0xae, 0xa5, 0xda, 0xd0, 0xca, 0x1a, 0x01, 0xa9, 0xe2, 0x10, 0x65, 0x18, 0xb1, 0x64, 0x29, 0x06, 0xe4, 0xf2, 0x75, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11822_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11822_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11822 = { .name = "ecdsa_brainpoolp384r1_sha384_11822", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11822_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11822_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11822_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 1067 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11823 for ECDSA, tcId is 1068 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11823_pubkey[] = { 0x89, 0x65, 0x7b, 0xac, 0x21, 0x6c, 0x3a, 0xc4, 0xa3, 0xa2, 0xd5, 0xaf, 0xd3, 0x42, 0xad, 0x24, 0xa4, 0xeb, 0x10, 0x3d, 0x4d, 0xbe, 0x2e, 0x44, 0x61, 0xe0, 0x3c, 0x70, 0x11, 0x82, 0x65, 0x13, 0xfe, 0x82, 0xbd, 0x06, 0xe1, 0x7e, 0x3a, 0xe8, 0xeb, 0x58, 0x11, 0xda, 0x0b, 0xec, 0x88, 0xbb, 0x33, 0xee, 0x1e, 0xdd, 0xd5, 0xd4, 0x9d, 0xd8, 0x6e, 0x78, 0x5f, 0xbf, 0xeb, 0xb9, 0x28, 0x86, 0x61, 0x96, 0x4e, 0x6f, 0xbe, 0x0c, 0x07, 0xaf, 0x9a, 0x4b, 0xa3, 0x14, 0x5f, 0xc4, 0xbe, 0x11, 0xe5, 0x48, 0x4b, 0x65, 0x0c, 0x97, 0x09, 0x6d, 0xb8, 0x2e, 0xbb, 0x0c, 0xa2, 0xbb, 0x84, 0xed, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11823_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11823_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11823 = { .name = "ecdsa_brainpoolp384r1_sha384_11823", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11823_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11823_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11823_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 1068 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11824 for ECDSA, tcId is 1069 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11824_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11824_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11824_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11824 = { .name = "ecdsa_brainpoolp384r1_sha384_11824", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11824_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11824_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11824_sig, .siglen = 96, .result = 1, .comment = "small r and s, tcId is 1069 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11825 for ECDSA, tcId is 1070 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11825_pubkey[] = { 0x58, 0x76, 0xf4, 0x14, 0xfa, 0x38, 0x5b, 0x40, 0x3a, 0x2d, 0x10, 0xda, 0x5d, 0x89, 0xb1, 0x10, 0x34, 0x4a, 0xd0, 0x05, 0xbf, 0xaf, 0x8c, 0x75, 0x9a, 0xb1, 0xe3, 0x56, 0x1a, 0x39, 0xff, 0x0d, 0xb9, 0xff, 0x91, 0xec, 0x60, 0x40, 0x31, 0x6e, 0x2f, 0xca, 0x36, 0x54, 0xa4, 0x8c, 0x0e, 0x89, 0x0d, 0xcb, 0x77, 0xf8, 0x96, 0xea, 0x47, 0x5c, 0xb9, 0x76, 0x72, 0xa8, 0x40, 0x03, 0x29, 0x55, 0x4c, 0x94, 0x1b, 0x61, 0xb4, 0xa8, 0x4b, 0xde, 0x1f, 0x8c, 0x8f, 0xc5, 0x25, 0x0c, 0x29, 0x16, 0x1f, 0xc3, 0xca, 0x50, 0x45, 0x8a, 0x41, 0xc7, 0x7a, 0x48, 0xbb, 0x33, 0x68, 0x82, 0xf2, 0xea, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11825_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11825_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11825 = { .name = "ecdsa_brainpoolp384r1_sha384_11825", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11825_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11825_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11825_sig, .siglen = 96, .result = -1, .comment = "r is larger than n, tcId is 1070 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11826 for ECDSA, tcId is 1071 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11826_pubkey[] = { 0x1b, 0xee, 0x74, 0x1f, 0xa1, 0x92, 0xa9, 0xbd, 0x05, 0x35, 0xd0, 0x06, 0x27, 0x73, 0x70, 0x79, 0xe9, 0x8f, 0x00, 0x07, 0x63, 0x94, 0xc9, 0x78, 0xa9, 0x6a, 0x0f, 0x9f, 0xba, 0x64, 0xe9, 0xe2, 0x1d, 0xec, 0xff, 0x6b, 0x4b, 0x8f, 0xe1, 0x1f, 0x60, 0xb1, 0x8d, 0x5d, 0x75, 0x86, 0x84, 0xde, 0x06, 0xd1, 0x93, 0x21, 0xea, 0xb7, 0xe8, 0x60, 0x1f, 0x8f, 0x46, 0x06, 0xfe, 0x93, 0xfd, 0x3b, 0x2f, 0x02, 0x98, 0x6a, 0x58, 0xca, 0x56, 0x41, 0x32, 0x82, 0xc6, 0x6d, 0xd3, 0x6b, 0xa6, 0x72, 0x4a, 0x3c, 0xbc, 0xee, 0xe7, 0x99, 0x48, 0xba, 0x2d, 0x55, 0xc7, 0x56, 0x58, 0x6b, 0x58, 0xe2, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11826_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11826_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x17, 0x3b, 0xec, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11826 = { .name = "ecdsa_brainpoolp384r1_sha384_11826", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11826_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11826_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11826_sig, .siglen = 96, .result = -1, .comment = "s is larger than n, tcId is 1071 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11827 for ECDSA, tcId is 1072 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11827_pubkey[] = { 0x6b, 0x25, 0xf8, 0xc1, 0x62, 0x9f, 0x75, 0x79, 0xe3, 0xc7, 0xee, 0x4b, 0x02, 0x9c, 0xc0, 0x29, 0xb4, 0xbd, 0xbe, 0xd8, 0x8b, 0x9b, 0x39, 0x93, 0x03, 0xe4, 0xa1, 0x43, 0x52, 0xd1, 0xf3, 0xf6, 0x04, 0x8e, 0xcd, 0xd0, 0x62, 0xd3, 0x7c, 0xba, 0x7b, 0x70, 0xbc, 0xbd, 0x58, 0x72, 0x31, 0xe7, 0x62, 0x13, 0x13, 0xf9, 0x3d, 0x31, 0x0f, 0x14, 0x4b, 0xd3, 0x32, 0x25, 0x82, 0x80, 0x46, 0x39, 0xdd, 0x29, 0x60, 0x96, 0x9a, 0x99, 0x3a, 0x9f, 0x2a, 0x36, 0x09, 0xf8, 0x56, 0xe1, 0x41, 0x5a, 0x0a, 0x4d, 0xcf, 0x58, 0xa7, 0x86, 0x4e, 0x41, 0xe2, 0xa8, 0xc8, 0x0d, 0xfc, 0x15, 0x8a, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11827_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11827_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x89, 0x66, 0x21, 0xd2, 0x32, 0x83, 0xb1, 0x21, 0x11, 0x04, 0x8d, 0x1c, 0x97, 0x8e, 0x2c, 0x28, 0x6d, 0x60, 0xb6, 0xef, 0x7c, 0xe3, 0x7a, 0xf3, 0x6c, 0xf7, 0xaa, 0x4d, 0xe2, 0x68, 0xd6, 0x26, 0xde, 0x7d, 0xdc, 0xb3, 0x56, 0xd1, 0x67, 0xc7, 0x48, 0x3c, 0x69, 0x45, 0x5c, 0x75, 0x2c, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11827 = { .name = "ecdsa_brainpoolp384r1_sha384_11827", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11827_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11827_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11827_sig, .siglen = 96, .result = 1, .comment = "small r and s^-1, tcId is 1072 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11828 for ECDSA, tcId is 1073 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11828_pubkey[] = { 0x5d, 0x08, 0x2c, 0xde, 0x60, 0x86, 0xf8, 0xea, 0x69, 0x94, 0xf4, 0x6e, 0x9d, 0xc0, 0x6c, 0x1c, 0x1d, 0x2c, 0x3a, 0x3c, 0x2d, 0xc5, 0xc9, 0x7b, 0xf1, 0x37, 0x65, 0x3d, 0x9b, 0x2e, 0xd2, 0x11, 0x01, 0xba, 0xd8, 0x43, 0xd4, 0x6e, 0x4b, 0x79, 0x25, 0xb9, 0xaf, 0x70, 0x34, 0xc6, 0xd0, 0x21, 0x12, 0xc7, 0xf5, 0x6e, 0x65, 0xd2, 0x33, 0x10, 0x40, 0x63, 0x39, 0x1f, 0xb3, 0x82, 0x8b, 0x39, 0x90, 0xe6, 0x89, 0x3d, 0x77, 0x74, 0x6e, 0x42, 0x30, 0x5e, 0x6a, 0x5b, 0xa1, 0x11, 0xd9, 0x76, 0xd6, 0x93, 0xf5, 0x95, 0xaf, 0x85, 0x8f, 0x19, 0xfa, 0xc7, 0x23, 0x4f, 0x74, 0x84, 0xc4, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11828_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11828_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0x38, 0xe8, 0xda, 0xe2, 0x16, 0xc6, 0x3f, 0x06, 0xb3, 0xed, 0xbd, 0x0f, 0x9b, 0xa7, 0xa5, 0xe4, 0xa3, 0x32, 0xec, 0x18, 0x72, 0x51, 0xe3, 0xd6, 0x27, 0x83, 0x9d, 0x1b, 0xaa, 0xc6, 0x67, 0xd7, 0xca, 0xad, 0x2a, 0xb0, 0xa1, 0xea, 0x9f, 0xbb, 0x12, 0xdc, 0x5a, 0x71, 0xe3, 0xb4, 0x9b, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11828 = { .name = "ecdsa_brainpoolp384r1_sha384_11828", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11828_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11828_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11828_sig, .siglen = 96, .result = 1, .comment = "smallish r and s^-1, tcId is 1073 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11829 for ECDSA, tcId is 1074 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11829_pubkey[] = { 0x74, 0x07, 0xca, 0x6c, 0x2a, 0x18, 0x3f, 0x9c, 0xa1, 0x37, 0x66, 0x09, 0xe9, 0xc7, 0x8a, 0x8d, 0x08, 0x0e, 0xff, 0xad, 0x15, 0xa4, 0xf6, 0x3c, 0xbb, 0x7a, 0x16, 0x8e, 0x3c, 0x78, 0x9b, 0x8b, 0x59, 0xce, 0x4d, 0x31, 0x22, 0xca, 0x08, 0xa8, 0x69, 0x07, 0xba, 0x48, 0x7f, 0x71, 0x7f, 0xbc, 0x3e, 0x2c, 0x56, 0xa9, 0xb3, 0x46, 0x0a, 0x51, 0x36, 0xb2, 0x13, 0xbe, 0x8d, 0x48, 0xcb, 0x3d, 0xc9, 0xc7, 0xad, 0x94, 0x5b, 0x1d, 0xce, 0xcb, 0xf9, 0x3f, 0xa6, 0xcf, 0xaa, 0xf8, 0xdb, 0xd7, 0x0f, 0x10, 0x40, 0xb9, 0x7a, 0xd8, 0xe3, 0xac, 0x30, 0xf2, 0xe6, 0x4f, 0xd7, 0xcc, 0x76, 0xd6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11829_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11829_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x0d, 0x24, 0x36, 0xa5, 0x99, 0xb3, 0x96, 0xa5, 0x1c, 0x54, 0x6e, 0x05, 0xd1, 0xc3, 0xd2, 0x5a, 0x8f, 0x6d, 0x05, 0x93, 0x5a, 0xe5, 0x03, 0x1d, 0xad, 0x3c, 0xdd, 0x7c, 0xb3, 0x6c, 0xf6, 0x91, 0x2a, 0x43, 0x3d, 0xe2, 0x8f, 0x84, 0x75, 0xd3, 0xb1, 0xe2, 0xe1, 0xce, 0x77, 0x61, 0x08, 0x79, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11829 = { .name = "ecdsa_brainpoolp384r1_sha384_11829", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11829_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11829_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11829_sig, .siglen = 96, .result = 1, .comment = "100-bit r and small s^-1, tcId is 1074 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11830 for ECDSA, tcId is 1075 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11830_pubkey[] = { 0x4f, 0xc3, 0x2a, 0x52, 0x26, 0x82, 0x0e, 0xc9, 0xc3, 0xff, 0xf2, 0xc7, 0x4e, 0x0b, 0x36, 0xd7, 0xde, 0x02, 0x8e, 0x59, 0xfc, 0x00, 0x5f, 0x38, 0x07, 0xa3, 0xbd, 0x59, 0x89, 0x2c, 0x9a, 0xd2, 0x0d, 0xba, 0x71, 0x68, 0xef, 0x9e, 0xd9, 0xbf, 0x99, 0xb2, 0x5e, 0xd0, 0x1b, 0xcf, 0xc6, 0xca, 0x6a, 0x13, 0xda, 0x2e, 0x85, 0x27, 0x77, 0xa6, 0xf9, 0x9d, 0x04, 0x32, 0x2a, 0x1b, 0x9f, 0xb4, 0x22, 0x76, 0x84, 0xbf, 0x7c, 0x40, 0xd4, 0xd3, 0xef, 0x92, 0x79, 0x80, 0x03, 0xa3, 0xbf, 0x2d, 0xa1, 0x58, 0xd5, 0x68, 0x64, 0x57, 0xc3, 0x3d, 0x0e, 0x24, 0xbe, 0x5c, 0x26, 0x5f, 0xc4, 0x73, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11830_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11830_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11830 = { .name = "ecdsa_brainpoolp384r1_sha384_11830", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11830_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11830_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11830_sig, .siglen = 96, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 1075 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11831 for ECDSA, tcId is 1076 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11831_pubkey[] = { 0x73, 0x50, 0xa7, 0xd0, 0x0d, 0x77, 0x19, 0xa3, 0x18, 0x52, 0x2e, 0xf4, 0xc5, 0xe6, 0xbe, 0x24, 0xb3, 0xb2, 0xcb, 0x30, 0x0c, 0x59, 0x6f, 0x79, 0xe8, 0xdd, 0x31, 0xa4, 0x68, 0x8f, 0xe6, 0x5a, 0x54, 0xb2, 0xd7, 0x49, 0x7a, 0x06, 0x82, 0x1e, 0xec, 0xba, 0xf3, 0x1b, 0x2f, 0xa7, 0xcd, 0xcb, 0x4b, 0xd7, 0x2f, 0xc7, 0xf0, 0x5e, 0x32, 0x45, 0x7f, 0xda, 0x0c, 0xc3, 0xf3, 0x21, 0x15, 0x77, 0x44, 0xf1, 0x84, 0x1c, 0x30, 0xbd, 0x08, 0x6e, 0x6d, 0xdd, 0x5b, 0xf4, 0x15, 0xeb, 0x71, 0xec, 0xbe, 0x36, 0xf0, 0xf3, 0xfd, 0x23, 0xd3, 0xc4, 0x14, 0x87, 0xfb, 0x28, 0x3e, 0x0e, 0x97, 0x94, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11831_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11831_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x4a, 0x28, 0x9a, 0xda, 0xd7, 0xce, 0xec, 0x67, 0xae, 0x99, 0xef, 0x5d, 0xa7, 0x97, 0xb6, 0xbb, 0x17, 0xd9, 0xc1, 0x68, 0x42, 0x8a, 0xb3, 0x0e, 0xa9, 0xa6, 0x8b, 0x89, 0x65, 0x2c, 0x4b, 0x9e, 0x9b, 0xae, 0x87, 0x6a, 0xb3, 0xd7, 0xfb, 0xdf, 0x1e, 0xb9, 0x2e, 0xd4, 0x22, 0xbd, 0x3b, 0x93, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11831 = { .name = "ecdsa_brainpoolp384r1_sha384_11831", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11831_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11831_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11831_sig, .siglen = 96, .result = 1, .comment = "100-bit r and s^-1, tcId is 1076 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11832 for ECDSA, tcId is 1077 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11832_pubkey[] = { 0x61, 0x49, 0x8a, 0xd3, 0x1a, 0x84, 0xee, 0xd1, 0x02, 0xba, 0x27, 0x12, 0xeb, 0x8a, 0x7b, 0xd9, 0x23, 0x20, 0xbd, 0xa4, 0xac, 0x6d, 0x07, 0xb4, 0x32, 0x6a, 0x30, 0x86, 0x9d, 0x19, 0xeb, 0x1b, 0x96, 0x22, 0x9d, 0x21, 0xef, 0xd7, 0x11, 0xdc, 0xf7, 0x30, 0x48, 0xbf, 0x16, 0x68, 0x00, 0xe3, 0x0c, 0xfc, 0xc1, 0x3a, 0x09, 0x14, 0x13, 0x22, 0x84, 0xdb, 0xea, 0xb6, 0xfc, 0xf5, 0xd7, 0x0b, 0x34, 0xca, 0x86, 0xa6, 0x81, 0x15, 0x7e, 0x48, 0x74, 0xab, 0xff, 0xae, 0xeb, 0xb6, 0x9b, 0x8b, 0x71, 0xf6, 0x9d, 0x33, 0x23, 0x06, 0x56, 0x78, 0x23, 0xdd, 0xe5, 0x40, 0x7c, 0xe7, 0x39, 0xe8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11832_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11832_sig[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x64, 0xe5, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11832 = { .name = "ecdsa_brainpoolp384r1_sha384_11832", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11832_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11832_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11832_sig, .siglen = 96, .result = 1, .comment = "r and s^-1 are close to n, tcId is 1077 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11833 for ECDSA, tcId is 1078 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11833_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11833_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11833_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11833 = { .name = "ecdsa_brainpoolp384r1_sha384_11833", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11833_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11833_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11833_sig, .siglen = 96, .result = 1, .comment = "s == 1, tcId is 1078 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11834 for ECDSA, tcId is 1079 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11834_pubkey[] = { 0x05, 0x05, 0x92, 0xf3, 0x4d, 0xb0, 0x26, 0x3d, 0xf4, 0xc6, 0x69, 0xb8, 0x99, 0x19, 0x41, 0xbe, 0x18, 0x23, 0x7a, 0x10, 0x45, 0xbf, 0xd1, 0x65, 0xea, 0x4a, 0xf3, 0x85, 0x37, 0x65, 0x64, 0xed, 0xf6, 0x65, 0x4a, 0x0d, 0xff, 0x7b, 0x5d, 0x84, 0x47, 0x40, 0x90, 0xf2, 0x65, 0xc4, 0x6b, 0x51, 0x15, 0x45, 0x91, 0x8c, 0xd8, 0xf2, 0x22, 0x60, 0xce, 0x21, 0xa5, 0x84, 0xed, 0xfa, 0x0b, 0x16, 0x44, 0x48, 0x8c, 0x99, 0x7d, 0x95, 0x65, 0x29, 0x26, 0x2a, 0xef, 0x40, 0x0c, 0xc0, 0x32, 0x0e, 0xd2, 0x7d, 0xdc, 0xec, 0x3b, 0xde, 0x6b, 0x9f, 0xd7, 0x9b, 0x37, 0x4a, 0xf6, 0x88, 0xfa, 0x9f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11834_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11834_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11834 = { .name = "ecdsa_brainpoolp384r1_sha384_11834", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11834_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11834_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11834_sig, .siglen = 96, .result = -1, .comment = "s == 0, tcId is 1079 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11835 for ECDSA, tcId is 1080 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11835_pubkey[] = { 0x4d, 0xf8, 0x98, 0x54, 0x4c, 0x2b, 0x10, 0xdc, 0x3c, 0x4d, 0x32, 0x49, 0xfc, 0xa5, 0x13, 0x0e, 0x75, 0x3d, 0x26, 0xe0, 0x83, 0x20, 0xbd, 0x82, 0x39, 0x26, 0xac, 0xb0, 0x50, 0xd8, 0xb6, 0xa4, 0xfe, 0xad, 0xf2, 0x9b, 0xef, 0x07, 0xec, 0xdb, 0x00, 0xe8, 0x5b, 0x34, 0x1f, 0x22, 0x06, 0x9a, 0x00, 0x33, 0x43, 0x69, 0x5d, 0x1e, 0x0a, 0xc0, 0xa7, 0x8b, 0x38, 0x49, 0x0d, 0x97, 0xc1, 0xe9, 0x0e, 0x4f, 0xf4, 0xca, 0x0d, 0x21, 0x40, 0xb9, 0x10, 0x1f, 0x1b, 0x63, 0xf2, 0x9c, 0xa4, 0xf2, 0xbf, 0x91, 0x76, 0xe1, 0x60, 0x04, 0x83, 0x91, 0x62, 0x16, 0xbd, 0x35, 0xab, 0xce, 0x67, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11835_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11835_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11835 = { .name = "ecdsa_brainpoolp384r1_sha384_11835", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11835_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11835_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11835_sig, .siglen = 96, .result = -1, .comment = "point at infinity during verify, tcId is 1080 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11836 for ECDSA, tcId is 1081 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11836_pubkey[] = { 0x3e, 0x95, 0x5d, 0x28, 0x45, 0x89, 0x77, 0x58, 0x37, 0xc9, 0xb8, 0x3d, 0xbc, 0xb4, 0x91, 0x86, 0xd6, 0x95, 0xd6, 0xb5, 0x3f, 0x57, 0x71, 0x68, 0x9f, 0x64, 0x58, 0xe4, 0x0a, 0x2b, 0x6d, 0xad, 0x62, 0x54, 0xcb, 0xb2, 0x27, 0xde, 0x46, 0x75, 0x84, 0x9d, 0x11, 0xe0, 0xfd, 0xf3, 0x21, 0x14, 0x3c, 0x4f, 0x0a, 0xe8, 0x80, 0x33, 0x67, 0x71, 0x61, 0x86, 0x17, 0x4f, 0x91, 0xb7, 0x03, 0x5b, 0x35, 0xbf, 0x84, 0x90, 0xe4, 0x9f, 0x9c, 0x46, 0x14, 0x7b, 0x6d, 0x3b, 0x71, 0xd9, 0x6f, 0x74, 0xab, 0xfa, 0x5e, 0x40, 0xf3, 0x3c, 0x10, 0x0f, 0x79, 0xd4, 0x59, 0x62, 0x41, 0x91, 0xce, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11836_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11836_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11836 = { .name = "ecdsa_brainpoolp384r1_sha384_11836", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11836_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11836_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11836_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 1081 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11837 for ECDSA, tcId is 1082 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11837_pubkey[] = { 0x39, 0xc4, 0x48, 0x73, 0xcc, 0xab, 0x02, 0x3c, 0x4b, 0x36, 0x6a, 0x64, 0x6d, 0xec, 0xb4, 0xbe, 0xb5, 0x67, 0x2b, 0x6d, 0x21, 0x40, 0xfa, 0x0f, 0xd2, 0x00, 0x37, 0x4a, 0xa0, 0x13, 0x01, 0x00, 0x8c, 0x04, 0x19, 0xc3, 0x39, 0x2c, 0x58, 0x90, 0x00, 0x81, 0x6e, 0x1f, 0x18, 0x05, 0x9a, 0x4c, 0x2b, 0x61, 0x04, 0xbe, 0x5e, 0x26, 0xc6, 0x57, 0xaa, 0x1f, 0x6f, 0xa4, 0xad, 0xdf, 0x3f, 0xf5, 0x2a, 0x45, 0x67, 0x98, 0x00, 0xdd, 0x28, 0xcd, 0x62, 0x87, 0x11, 0xf2, 0xd1, 0xc1, 0x11, 0x53, 0xa3, 0x6c, 0x6c, 0x42, 0xfb, 0xa6, 0x95, 0x4c, 0xd3, 0x7f, 0xd2, 0x52, 0x11, 0x2d, 0xe1, 0xa4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11837_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11837_sig[] = { 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb7, 0x46, 0x5c, 0x8f, 0x41, 0x51, 0x9c, 0x36, 0x94, 0x07, 0xae, 0xb7, 0xbf, 0x28, 0x73, 0x20, 0xef, 0x8a, 0x97, 0xb8, 0x84, 0xf6, 0xaa, 0x2b, 0x59, 0x8f, 0x8b, 0x37, 0x36, 0x56, 0x02, 0x12, 0xd3, 0xe7, 0x9d, 0x5b, 0x57, 0xb5, 0xbf, 0xe1, 0x88, 0x1d, 0xc4, 0x19, 0x01, 0x74, 0x82, 0x32, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11837 = { .name = "ecdsa_brainpoolp384r1_sha384_11837", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11837_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11837_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11837_sig, .siglen = 96, .result = 1, .comment = "edge case for signature malleability, tcId is 1082 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11838 for ECDSA, tcId is 1083 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11838_pubkey[] = { 0x5d, 0x77, 0x13, 0x4e, 0x89, 0x0a, 0xc7, 0x2f, 0x9c, 0x69, 0xfc, 0xc3, 0xf1, 0x81, 0xae, 0x74, 0x6f, 0xef, 0xff, 0xda, 0xfc, 0x1d, 0xfc, 0x79, 0x1c, 0xf3, 0x3a, 0x22, 0xfb, 0x0f, 0x8e, 0x58, 0x61, 0x88, 0xcf, 0x2d, 0x5d, 0x06, 0x0d, 0xdb, 0x04, 0x00, 0x4b, 0xaf, 0x56, 0x19, 0x1c, 0x9f, 0x0e, 0x74, 0x01, 0xdd, 0xcc, 0x47, 0xa0, 0x9b, 0x5e, 0xcf, 0x27, 0x19, 0xcc, 0x93, 0x60, 0x10, 0xa9, 0x37, 0x1a, 0x7f, 0x76, 0x24, 0xe6, 0x3e, 0x7a, 0x00, 0x55, 0x0a, 0x13, 0xd0, 0x35, 0xcf, 0x58, 0x6d, 0x3b, 0x52, 0x2c, 0x7f, 0xd0, 0x62, 0x51, 0xad, 0xbb, 0x0f, 0x0a, 0xad, 0x3d, 0xd7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11838_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11838_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11838 = { .name = "ecdsa_brainpoolp384r1_sha384_11838", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11838_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11838_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11838_sig, .siglen = 96, .result = -1, .comment = "u1 == 1, tcId is 1083 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11839 for ECDSA, tcId is 1084 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11839_pubkey[] = { 0x60, 0x7c, 0xd9, 0x4c, 0x42, 0xf5, 0xbb, 0xfc, 0xf8, 0x57, 0xa7, 0x08, 0xac, 0x16, 0x3f, 0x0a, 0xfc, 0x0a, 0x65, 0xc8, 0xd8, 0x87, 0x25, 0xf1, 0x8c, 0x4b, 0xf7, 0xeb, 0x7c, 0xf5, 0xd3, 0x4a, 0xca, 0x60, 0x08, 0xa2, 0x7b, 0x4e, 0x5f, 0xd9, 0x47, 0x61, 0x34, 0xed, 0x85, 0xfc, 0xd3, 0x2c, 0x89, 0xf2, 0x48, 0x29, 0x0c, 0x59, 0xb8, 0xfb, 0x96, 0x3e, 0x90, 0xba, 0xb9, 0xb0, 0xb3, 0xe3, 0x13, 0xd3, 0xb8, 0xe0, 0xa6, 0xc8, 0x90, 0x14, 0x55, 0xa2, 0x2b, 0x7b, 0x74, 0xa1, 0x08, 0x15, 0x2c, 0x5b, 0x81, 0x4b, 0xa5, 0x75, 0xde, 0x8d, 0xe0, 0x7c, 0xdb, 0x8d, 0x67, 0xba, 0x2b, 0x50, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11839_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11839_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11839 = { .name = "ecdsa_brainpoolp384r1_sha384_11839", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11839_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11839_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11839_sig, .siglen = 96, .result = 1, .comment = "u1 == n - 1, tcId is 1084 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11840 for ECDSA, tcId is 1085 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11840_pubkey[] = { 0x4b, 0x4a, 0xfb, 0xd9, 0x17, 0x46, 0xb1, 0xa4, 0xdf, 0x6d, 0x0d, 0x71, 0x7a, 0xfc, 0x75, 0x28, 0xfa, 0x4a, 0x9d, 0xda, 0x9a, 0x62, 0xaf, 0xee, 0x19, 0xa7, 0x2f, 0xc0, 0x01, 0x9a, 0xa2, 0xea, 0x89, 0xa1, 0x25, 0xbe, 0xa7, 0x67, 0x55, 0x06, 0x23, 0x06, 0x56, 0xca, 0xaf, 0xf5, 0x2c, 0x73, 0x5f, 0x5c, 0x35, 0x75, 0xbf, 0x66, 0x96, 0x37, 0xef, 0xdb, 0x67, 0x24, 0x77, 0x50, 0x0f, 0x1f, 0xe3, 0x7b, 0x45, 0xdc, 0xf8, 0x79, 0x48, 0x7a, 0xd6, 0xca, 0x36, 0xc4, 0x14, 0x73, 0x29, 0xfb, 0x74, 0x17, 0x06, 0xce, 0x9b, 0x92, 0x8c, 0xe4, 0x7b, 0xf6, 0xdc, 0x0f, 0x9e, 0x44, 0x01, 0x7f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11840_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11840_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11840 = { .name = "ecdsa_brainpoolp384r1_sha384_11840", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11840_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11840_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11840_sig, .siglen = 96, .result = 1, .comment = "u2 == 1, tcId is 1085 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11841 for ECDSA, tcId is 1086 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11841_pubkey[] = { 0x0d, 0x8b, 0x24, 0x6c, 0x62, 0x31, 0x88, 0xb7, 0x45, 0x57, 0x16, 0xac, 0x18, 0x9b, 0x9a, 0xf4, 0x41, 0x67, 0x6a, 0x1c, 0x41, 0xcd, 0x57, 0x57, 0x54, 0xbd, 0x02, 0xae, 0x4d, 0x68, 0x25, 0x30, 0x4b, 0x96, 0x1d, 0xdf, 0x08, 0x26, 0xbb, 0x16, 0x1e, 0x3d, 0x63, 0xe9, 0xbc, 0x71, 0xf1, 0xd4, 0x6e, 0xdb, 0xed, 0xdc, 0x2d, 0x40, 0xda, 0xfd, 0xcc, 0xac, 0x90, 0xae, 0x85, 0xcd, 0x61, 0x6a, 0x0e, 0xa1, 0xe4, 0xa0, 0x8a, 0xe8, 0xfc, 0x33, 0x58, 0xce, 0x7d, 0x51, 0x42, 0xee, 0xe8, 0xf3, 0xbe, 0xbd, 0xc1, 0x45, 0x91, 0xc4, 0xc9, 0xb1, 0x5b, 0xff, 0x12, 0xb8, 0xcf, 0x08, 0x33, 0x4a, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11841_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11841_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x5d, 0xd0, 0xbf, 0x01, 0xc2, 0x25, 0x9e, 0x1a, 0xb4, 0xe8, 0xf4, 0xfe, 0xe0, 0x99, 0x81, 0x3f, 0x63, 0x74, 0xf6, 0x06, 0x9e, 0x38, 0x39, 0xcc, 0xbf, 0x64, 0x49, 0x9d, 0xc8, 0x02, 0xc3, 0xc5, 0x34, 0xd1, 0xcf, 0x1f, 0x9c, 0xff, 0xd7, 0x60, 0x27, 0xb0, 0x21, 0x57, 0x46, 0x02, 0xee, 0x44, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11841 = { .name = "ecdsa_brainpoolp384r1_sha384_11841", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11841_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11841_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11841_sig, .siglen = 96, .result = 1, .comment = "u2 == n - 1, tcId is 1086 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11842 for ECDSA, tcId is 1087 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11842_pubkey[] = { 0x04, 0xd9, 0xd4, 0xa6, 0x2d, 0x6e, 0xb0, 0x20, 0x73, 0xe7, 0x38, 0xb1, 0xe4, 0x39, 0xce, 0xcd, 0x54, 0x40, 0x03, 0x19, 0x11, 0xf4, 0x51, 0x90, 0xeb, 0x60, 0x62, 0xa3, 0x35, 0x35, 0xfc, 0x52, 0x69, 0xbc, 0xfc, 0x25, 0xd4, 0xaf, 0xc1, 0xda, 0xe0, 0xeb, 0xad, 0x94, 0x8d, 0x77, 0x32, 0xd8, 0x02, 0x9a, 0xf3, 0x7e, 0x89, 0xa3, 0xce, 0xa7, 0xdf, 0x38, 0xb0, 0x20, 0xf6, 0x24, 0x90, 0x6f, 0xca, 0x6d, 0x94, 0x4e, 0x14, 0x86, 0x85, 0x3f, 0xe8, 0xe5, 0xba, 0x9c, 0xfb, 0xa2, 0xd7, 0x4a, 0x85, 0x2e, 0xc5, 0x87, 0xd4, 0x6f, 0xe4, 0x99, 0x17, 0xc3, 0x64, 0x41, 0x8e, 0xf7, 0xec, 0xa5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11842_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11842_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x53, 0x3b, 0x0d, 0x50, 0x48, 0x0a, 0x3e, 0xf0, 0x7e, 0x7e, 0x8a, 0xf8, 0xb1, 0x09, 0x77, 0x59, 0xbc, 0x03, 0xac, 0x9a, 0x1c, 0x7e, 0xd6, 0x07, 0x5a, 0x05, 0x28, 0x69, 0xf5, 0x7f, 0x12, 0xb2, 0x85, 0x61, 0x31, 0x62, 0xd0, 0x8e, 0xe7, 0xaa, 0xb9, 0xfe, 0x54, 0xaa, 0xa9, 0x84, 0xa3, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11842 = { .name = "ecdsa_brainpoolp384r1_sha384_11842", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11842_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11842_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11842_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1087 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11843 for ECDSA, tcId is 1088 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11843_pubkey[] = { 0x1a, 0x4a, 0x55, 0xc9, 0xb0, 0xce, 0x43, 0xd7, 0xed, 0x78, 0xa9, 0x8d, 0x9b, 0xf6, 0x45, 0x9c, 0xcf, 0x34, 0x94, 0x66, 0xfc, 0xcc, 0x45, 0x75, 0x98, 0xfc, 0x15, 0xa1, 0xd6, 0x95, 0x6d, 0x8c, 0xe8, 0x34, 0x8b, 0x23, 0x32, 0xff, 0xfb, 0x3d, 0x51, 0x6b, 0x07, 0x8d, 0x28, 0xd3, 0x29, 0xdd, 0x73, 0xf4, 0x5a, 0x4c, 0xe1, 0xf5, 0xdc, 0x77, 0x2f, 0x3c, 0x32, 0x83, 0xaf, 0x65, 0x64, 0xe6, 0xe4, 0x10, 0xf9, 0xd5, 0x06, 0x4b, 0x64, 0x84, 0x06, 0x59, 0x66, 0x93, 0x66, 0x93, 0xf6, 0x2a, 0xc9, 0x94, 0x0e, 0xb2, 0x89, 0x14, 0xa0, 0x91, 0xd2, 0x96, 0x4c, 0xd8, 0x43, 0xb4, 0x10, 0x28, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11843_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11843_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0xa8, 0xe8, 0x17, 0xf4, 0xea, 0x82, 0xb8, 0x31, 0xba, 0x5e, 0x67, 0x18, 0x30, 0xb4, 0x31, 0x28, 0x46, 0xb2, 0x3d, 0xa1, 0x4f, 0xf7, 0xd4, 0x3b, 0xaf, 0x3a, 0x7e, 0xe7, 0xaa, 0x06, 0x1c, 0x86, 0x42, 0x2a, 0xaf, 0x27, 0xff, 0xc5, 0xc6, 0x55, 0x40, 0x68, 0x68, 0xb5, 0xbf, 0x19, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11843 = { .name = "ecdsa_brainpoolp384r1_sha384_11843", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11843_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11843_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11843_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1088 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11844 for ECDSA, tcId is 1089 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11844_pubkey[] = { 0x37, 0x3a, 0xc9, 0x8f, 0x08, 0x82, 0x68, 0xa8, 0x6d, 0x13, 0x6d, 0xe4, 0xfa, 0x0c, 0xe2, 0xc4, 0x10, 0x42, 0xcd, 0x33, 0xed, 0x2d, 0x07, 0x25, 0x0f, 0x53, 0xcd, 0x4e, 0xd4, 0x3f, 0xa1, 0xda, 0x42, 0x5d, 0xa5, 0x97, 0xbd, 0x5b, 0x41, 0x3d, 0x56, 0xcf, 0xff, 0x95, 0x42, 0x67, 0x10, 0x4f, 0x06, 0x9e, 0x04, 0x53, 0xbb, 0xbd, 0x79, 0x28, 0x03, 0x16, 0xf8, 0xc1, 0xc1, 0x61, 0xa8, 0x46, 0xaf, 0x37, 0x9a, 0x94, 0x1e, 0xd2, 0x86, 0xe5, 0x93, 0xe7, 0xf2, 0x89, 0xba, 0x4f, 0xff, 0x42, 0x45, 0x8b, 0x27, 0x3a, 0x3b, 0xa4, 0x99, 0x57, 0x4e, 0x13, 0x4e, 0x7f, 0xb4, 0xa7, 0xdc, 0x19, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11844_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11844_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x32, 0x6c, 0x08, 0x72, 0xa7, 0x22, 0x4e, 0x7a, 0x10, 0x40, 0x87, 0xac, 0xf4, 0xc4, 0xb4, 0xe3, 0xe5, 0xab, 0xa4, 0xff, 0xe4, 0x62, 0x5f, 0xc3, 0x95, 0x5c, 0xe9, 0x64, 0x7b, 0xf7, 0x1f, 0xb5, 0x96, 0xb8, 0x39, 0x71, 0xad, 0x2b, 0x52, 0x47, 0x3a, 0x28, 0x21, 0x99, 0x1c, 0x80, 0x89, 0x05, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11844 = { .name = "ecdsa_brainpoolp384r1_sha384_11844", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11844_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11844_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11844_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1089 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11845 for ECDSA, tcId is 1090 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11845_pubkey[] = { 0x7e, 0x6a, 0xb4, 0x29, 0xb9, 0xe3, 0x3a, 0x97, 0x4f, 0x6a, 0xb9, 0xa4, 0x9e, 0xb1, 0x52, 0xc4, 0x84, 0x57, 0x5f, 0xad, 0x5d, 0x9b, 0xcd, 0xdc, 0xb8, 0x7e, 0xdc, 0xe1, 0x6e, 0x79, 0x33, 0x3a, 0x93, 0x72, 0x76, 0xf3, 0x6a, 0xec, 0x91, 0x21, 0xde, 0x45, 0x03, 0x84, 0xcb, 0x20, 0xbb, 0x2e, 0x85, 0x95, 0xf6, 0xc2, 0x88, 0x0d, 0x89, 0x19, 0x8e, 0x1b, 0x62, 0x5e, 0x65, 0x05, 0x6d, 0x0a, 0x19, 0xa5, 0x8d, 0x1d, 0x1c, 0x55, 0x1b, 0xcc, 0x5d, 0xd3, 0x9d, 0x28, 0x1d, 0x72, 0x6d, 0xad, 0x41, 0x08, 0x48, 0x8c, 0x8f, 0x94, 0x1a, 0xc9, 0x83, 0x16, 0x9c, 0xac, 0xe3, 0xec, 0xc7, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11845_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11845_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x65, 0xcf, 0x0a, 0x5b, 0xce, 0x70, 0xaf, 0x07, 0x8a, 0xf6, 0xd5, 0xa1, 0x45, 0x45, 0xca, 0x61, 0x9e, 0x47, 0xd6, 0xeb, 0x0f, 0xd0, 0x53, 0x1e, 0xcc, 0x74, 0x3a, 0x76, 0x85, 0x53, 0x02, 0x84, 0xa8, 0x32, 0x89, 0xc2, 0xd0, 0x9e, 0x02, 0x43, 0x84, 0xae, 0x5e, 0x77, 0x87, 0x99, 0xe4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11845 = { .name = "ecdsa_brainpoolp384r1_sha384_11845", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11845_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11845_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11845_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1090 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11846 for ECDSA, tcId is 1091 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11846_pubkey[] = { 0x1f, 0xbb, 0x37, 0xf7, 0x51, 0x95, 0xc3, 0xf2, 0xde, 0x3a, 0xfc, 0xc8, 0x8a, 0xd7, 0xeb, 0x32, 0x10, 0x81, 0x44, 0x60, 0x89, 0x43, 0xfa, 0xce, 0x3a, 0x89, 0x00, 0x05, 0xff, 0x2a, 0x3e, 0x0b, 0x55, 0x80, 0x79, 0xc5, 0x84, 0x26, 0x20, 0xf4, 0x4a, 0xdc, 0x0c, 0x38, 0xdd, 0x88, 0xaa, 0xc5, 0x51, 0x73, 0x4f, 0x8e, 0xb8, 0x27, 0xdf, 0x92, 0x9d, 0x73, 0x17, 0x71, 0x4a, 0x29, 0xcf, 0x8b, 0xa4, 0x32, 0xca, 0xf6, 0x89, 0x09, 0x4d, 0x00, 0xeb, 0x9d, 0x63, 0xcb, 0xc9, 0x08, 0xba, 0x76, 0xca, 0x5b, 0x1f, 0x93, 0xd2, 0x29, 0x47, 0x7c, 0x96, 0x08, 0x42, 0x94, 0x0f, 0x42, 0x24, 0xd3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11846_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11846_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2e, 0x09, 0x9a, 0xdf, 0xe4, 0xd9, 0x12, 0x05, 0x96, 0xe8, 0xa1, 0x52, 0x03, 0x99, 0xb0, 0xe2, 0x49, 0x55, 0x5b, 0x17, 0x1e, 0x0a, 0x71, 0x96, 0x73, 0x07, 0x54, 0x8a, 0x3c, 0x28, 0x75, 0x3f, 0xa4, 0x0b, 0xbc, 0xb0, 0xa8, 0x65, 0x83, 0x69, 0xdc, 0x8c, 0xa0, 0xca, 0xa0, 0x5f, 0xb0, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11846 = { .name = "ecdsa_brainpoolp384r1_sha384_11846", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11846_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11846_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11846_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1091 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11847 for ECDSA, tcId is 1092 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11847_pubkey[] = { 0x07, 0xfa, 0x30, 0xc8, 0x37, 0xc8, 0xad, 0x02, 0x93, 0x26, 0xa1, 0xd4, 0x48, 0xbd, 0x27, 0x52, 0x1b, 0x5d, 0x26, 0xaa, 0xd4, 0xd8, 0x24, 0x4b, 0x72, 0x42, 0x49, 0x3d, 0xf7, 0x01, 0x72, 0xe6, 0xdd, 0x1d, 0xaf, 0x5c, 0x7e, 0x07, 0xf4, 0xfa, 0x10, 0x2f, 0x5c, 0x41, 0x5a, 0x4e, 0xc6, 0x1f, 0x09, 0x04, 0x52, 0x7d, 0xf8, 0x77, 0x52, 0x7f, 0x7d, 0x0f, 0x5a, 0x7f, 0x71, 0xb6, 0xd9, 0xc0, 0x3f, 0x2d, 0xe1, 0xdf, 0x88, 0x04, 0x86, 0x8e, 0x73, 0x37, 0xda, 0x35, 0xc9, 0xb1, 0xff, 0xc9, 0xbf, 0x2e, 0x27, 0x9c, 0x3a, 0xf8, 0xa0, 0x78, 0x6e, 0x6f, 0x39, 0x83, 0x2c, 0xc6, 0xed, 0x1b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11847_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11847_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5c, 0x13, 0x35, 0xbf, 0xc9, 0xb2, 0x24, 0x0b, 0x2d, 0xd1, 0x42, 0xa4, 0x07, 0x33, 0x61, 0xc4, 0x92, 0xaa, 0xb6, 0x2e, 0x3c, 0x14, 0xe3, 0x2c, 0xe6, 0x0e, 0xa9, 0x14, 0x78, 0x50, 0xea, 0x7f, 0x48, 0x17, 0x79, 0x61, 0x50, 0xcb, 0x06, 0xd3, 0xb9, 0x19, 0x41, 0x95, 0x40, 0xbf, 0x60, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11847 = { .name = "ecdsa_brainpoolp384r1_sha384_11847", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11847_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11847_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11847_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1092 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11848 for ECDSA, tcId is 1093 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11848_pubkey[] = { 0x61, 0x39, 0x7a, 0xe7, 0xfe, 0x8e, 0x7e, 0x89, 0x4b, 0xfa, 0x68, 0x9e, 0x58, 0x13, 0x51, 0x42, 0x93, 0xa0, 0xf1, 0xb9, 0xf1, 0x09, 0x0c, 0x0d, 0x96, 0x96, 0x37, 0x9b, 0x61, 0x28, 0x7a, 0x75, 0x2a, 0x3f, 0x7d, 0x1d, 0x24, 0x80, 0xfe, 0x41, 0x27, 0x49, 0x8d, 0x0e, 0xed, 0xa8, 0x4c, 0x63, 0x0c, 0x2f, 0xad, 0xd3, 0x7e, 0xa3, 0x6b, 0xfe, 0x53, 0x2b, 0x5d, 0x3a, 0x0f, 0x10, 0x1d, 0xdd, 0x3a, 0xc5, 0x94, 0x58, 0x39, 0x96, 0x48, 0xf3, 0xef, 0xaf, 0x58, 0x33, 0xde, 0xc1, 0xc8, 0xc8, 0xec, 0xe0, 0x55, 0x15, 0x89, 0x35, 0x53, 0xef, 0x4d, 0x58, 0x12, 0x0d, 0x37, 0xce, 0x2e, 0xcd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11848_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11848_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x25, 0x91, 0x60, 0xb3, 0x21, 0xc3, 0x50, 0xf4, 0xf2, 0x29, 0x9a, 0xa7, 0x7c, 0x72, 0xa0, 0x92, 0x48, 0x92, 0x79, 0x57, 0xb6, 0x41, 0x43, 0x08, 0xbf, 0x8c, 0x7f, 0xb4, 0xf2, 0xdb, 0xba, 0x5c, 0xa7, 0x91, 0x98, 0xf8, 0x0a, 0x15, 0x0e, 0x1c, 0xeb, 0x5a, 0x98, 0x45, 0x14, 0x4e, 0xee, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11848 = { .name = "ecdsa_brainpoolp384r1_sha384_11848", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11848_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11848_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11848_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1093 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11849 for ECDSA, tcId is 1094 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11849_pubkey[] = { 0x7f, 0x16, 0x6e, 0xfa, 0x8d, 0x84, 0x16, 0xd9, 0x22, 0xf5, 0x76, 0x73, 0xa2, 0x18, 0x0c, 0xfb, 0xb4, 0x9e, 0x8d, 0x16, 0x0d, 0x60, 0xba, 0x5e, 0xc9, 0x0b, 0xa5, 0x47, 0xf3, 0xec, 0xcd, 0x22, 0xce, 0x6a, 0xfd, 0x99, 0xa0, 0xfb, 0x29, 0x2c, 0xfd, 0x16, 0xb0, 0x69, 0x2b, 0x9c, 0xab, 0x03, 0x41, 0x85, 0x79, 0xe6, 0x7c, 0x87, 0xb3, 0x59, 0x91, 0x2f, 0x6c, 0xb4, 0x15, 0x8b, 0xdd, 0x7e, 0xa1, 0x30, 0xb5, 0x00, 0x77, 0x26, 0xdf, 0x2f, 0xce, 0x31, 0x99, 0x15, 0xde, 0xed, 0xc4, 0xf7, 0xe8, 0x9e, 0xe2, 0x3f, 0x78, 0x6e, 0x25, 0x37, 0x3c, 0x99, 0x37, 0x49, 0x8b, 0xab, 0x81, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11849_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11849_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x88, 0x19, 0x64, 0xe1, 0xbb, 0xa9, 0xa2, 0x8c, 0x7a, 0x1d, 0x84, 0x37, 0x9c, 0x65, 0xbb, 0x3d, 0xa7, 0x2f, 0x3c, 0xc8, 0x79, 0xf7, 0xf5, 0x79, 0xd2, 0xf9, 0xb3, 0x4a, 0x57, 0x44, 0x32, 0xd6, 0xc7, 0xd1, 0xc2, 0x29, 0xee, 0x22, 0x7d, 0x4d, 0xdb, 0xdd, 0x9f, 0x15, 0xdf, 0x99, 0x78, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11849 = { .name = "ecdsa_brainpoolp384r1_sha384_11849", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11849_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11849_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11849_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1094 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11850 for ECDSA, tcId is 1095 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11850_pubkey[] = { 0x77, 0xc9, 0xc2, 0xe6, 0x58, 0xb0, 0x04, 0xab, 0x68, 0x40, 0xd7, 0xc3, 0x3a, 0x5e, 0x7e, 0xb5, 0xf9, 0x3b, 0xa3, 0xa7, 0xc5, 0xb3, 0x2f, 0x72, 0x75, 0xfd, 0x75, 0xb0, 0x7c, 0x1c, 0x92, 0xf5, 0xae, 0x31, 0x57, 0x6b, 0x9c, 0xbc, 0xa0, 0x46, 0x33, 0x7e, 0x6d, 0x6e, 0xa7, 0x6c, 0x14, 0x5e, 0x67, 0xc5, 0x60, 0x10, 0xdd, 0x97, 0x49, 0xe2, 0xd9, 0x0b, 0x3e, 0xb5, 0x7e, 0xf1, 0xc4, 0xc7, 0x37, 0x41, 0x23, 0x3a, 0x32, 0xa6, 0xa4, 0x35, 0x5b, 0x8c, 0x4e, 0x3a, 0x24, 0xbc, 0xf5, 0x98, 0x66, 0x27, 0xc7, 0x48, 0x07, 0x83, 0x16, 0x1d, 0xb1, 0xd2, 0xa5, 0x33, 0x2b, 0xd7, 0x5f, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11850_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11850_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0e, 0x3c, 0x83, 0xbb, 0x59, 0xab, 0xc5, 0x72, 0x20, 0x17, 0x01, 0x52, 0x25, 0x1c, 0xf0, 0x10, 0xb0, 0x08, 0x1f, 0xec, 0xca, 0x2c, 0x95, 0x7c, 0xa7, 0xec, 0x1a, 0x33, 0xda, 0xe3, 0xca, 0x1d, 0x70, 0x94, 0xb1, 0xc0, 0xf7, 0x1b, 0x03, 0xe0, 0x08, 0xbb, 0xe6, 0x46, 0x59, 0x11, 0x9f, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11850 = { .name = "ecdsa_brainpoolp384r1_sha384_11850", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11850_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11850_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11850_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1095 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11851 for ECDSA, tcId is 1096 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11851_pubkey[] = { 0x64, 0xd9, 0xa3, 0x17, 0xd5, 0xb4, 0x1a, 0xf3, 0x0f, 0xdf, 0xc7, 0x38, 0x94, 0x60, 0xf3, 0x57, 0xfa, 0x99, 0x78, 0x30, 0x4d, 0x02, 0x6b, 0x31, 0x2a, 0xa5, 0xca, 0x04, 0xa1, 0x9b, 0xdc, 0x0c, 0x56, 0x44, 0x0c, 0xfd, 0x14, 0xa0, 0xb0, 0x60, 0xc3, 0xb8, 0xf4, 0xee, 0x8d, 0x4a, 0x5a, 0x37, 0x77, 0x29, 0x9b, 0x22, 0x80, 0xab, 0x4c, 0x85, 0x7e, 0xd2, 0x53, 0x1e, 0x8d, 0xb0, 0x27, 0xf8, 0xc7, 0x23, 0x80, 0x28, 0xbd, 0x7f, 0x7b, 0xa5, 0x9b, 0xc8, 0x05, 0x47, 0xd4, 0xf1, 0x0d, 0xa6, 0xf2, 0xe6, 0x13, 0x58, 0x05, 0x53, 0x40, 0x6f, 0x04, 0x27, 0xec, 0xbd, 0x7b, 0x75, 0x91, 0x6e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11851_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11851_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x63, 0x1b, 0x97, 0xda, 0x7f, 0x33, 0x4d, 0xaf, 0xd0, 0x1e, 0x2a, 0x01, 0xf8, 0x61, 0x86, 0x32, 0x37, 0x2d, 0x9a, 0xbc, 0xdf, 0x14, 0xeb, 0xaf, 0x72, 0x13, 0xda, 0x37, 0xb1, 0x44, 0x9c, 0x4e, 0x8c, 0x8a, 0x1d, 0xfe, 0x03, 0x38, 0x4f, 0x3a, 0xde, 0x89, 0x07, 0xad, 0x94, 0x42, 0x13, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11851 = { .name = "ecdsa_brainpoolp384r1_sha384_11851", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11851_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11851_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11851_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1096 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11852 for ECDSA, tcId is 1097 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11852_pubkey[] = { 0x26, 0x4b, 0xa4, 0x47, 0xf8, 0x0d, 0x72, 0x1b, 0xf1, 0xe7, 0x98, 0x77, 0xf2, 0x7a, 0x23, 0xee, 0x58, 0x56, 0x5e, 0x88, 0xc4, 0x9f, 0x6b, 0x9c, 0xd6, 0x44, 0x8c, 0x02, 0x4b, 0x6f, 0xf5, 0x3a, 0xeb, 0xb2, 0xb0, 0x8c, 0xec, 0x22, 0xeb, 0x2e, 0xb3, 0x8e, 0x30, 0xfd, 0x54, 0x72, 0x7f, 0x01, 0x80, 0x18, 0x87, 0xf9, 0xf9, 0x4d, 0xce, 0x62, 0x5e, 0xd1, 0xd5, 0x63, 0x50, 0xa4, 0xb2, 0x52, 0xe0, 0xdc, 0xfc, 0x09, 0x84, 0x92, 0x8f, 0x25, 0xad, 0x22, 0xa1, 0x31, 0x35, 0xba, 0xf9, 0x96, 0xbf, 0xa8, 0x28, 0x09, 0xfb, 0xe7, 0x9c, 0x09, 0x79, 0x67, 0x0f, 0xdd, 0xc9, 0xfb, 0xa9, 0xe6, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11852_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11852_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x39, 0x7e, 0x11, 0x32, 0x5b, 0x2e, 0x2e, 0x37, 0x90, 0xde, 0xe4, 0x85, 0x9f, 0xdc, 0xca, 0x85, 0x59, 0x2b, 0xc4, 0x6f, 0xd0, 0xd5, 0x80, 0xab, 0xc5, 0x11, 0x46, 0x02, 0xb6, 0x85, 0x12, 0xf5, 0x49, 0xd9, 0x85, 0x4c, 0x9a, 0xf0, 0xdb, 0x65, 0x81, 0x89, 0xdd, 0x58, 0x3f, 0x7f, 0xc1, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11852 = { .name = "ecdsa_brainpoolp384r1_sha384_11852", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11852_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11852_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11852_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1097 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11853 for ECDSA, tcId is 1098 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11853_pubkey[] = { 0x04, 0x91, 0x80, 0x40, 0xa5, 0x8d, 0xc4, 0x77, 0xa7, 0x24, 0x55, 0x61, 0x27, 0x3d, 0xf2, 0xd8, 0xbd, 0x97, 0x7e, 0x5f, 0xd3, 0x9c, 0x40, 0xd3, 0x01, 0x15, 0x36, 0xcb, 0x2b, 0x9c, 0xfe, 0xe8, 0x2e, 0x2a, 0xb5, 0xf5, 0x39, 0xe5, 0x90, 0x8d, 0xcb, 0xf3, 0xff, 0x24, 0xc6, 0x45, 0xdb, 0x4e, 0x59, 0x69, 0xa9, 0xd8, 0xdf, 0x5c, 0xda, 0xaf, 0xe3, 0x49, 0x0c, 0xaa, 0x49, 0x46, 0xac, 0xf5, 0xeb, 0xe3, 0xe9, 0x3a, 0xab, 0x28, 0xa8, 0xd4, 0xa6, 0xf6, 0x1e, 0x2c, 0x8e, 0x5c, 0x02, 0xdc, 0x60, 0x5c, 0x75, 0x80, 0x6d, 0xdd, 0xdd, 0xeb, 0xe2, 0x39, 0x15, 0x63, 0x11, 0x59, 0xc1, 0xf7, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11853_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11853_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0f, 0xe0, 0x8a, 0x8a, 0x37, 0x29, 0x0e, 0xbf, 0x51, 0x9f, 0x9f, 0x09, 0x47, 0x58, 0x0e, 0xd8, 0x7b, 0x29, 0xee, 0x22, 0xc2, 0x96, 0x15, 0xa8, 0x18, 0x0e, 0xb1, 0xcd, 0xbb, 0xc5, 0x89, 0x9c, 0x07, 0x28, 0xec, 0x9b, 0x32, 0xa9, 0x67, 0x90, 0x24, 0x8a, 0xb3, 0x02, 0xea, 0xbd, 0x6f, 0xfe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11853 = { .name = "ecdsa_brainpoolp384r1_sha384_11853", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11853_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11853_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11853_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1098 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11854 for ECDSA, tcId is 1099 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11854_pubkey[] = { 0x22, 0xe4, 0x4e, 0xbe, 0x0a, 0x35, 0x1e, 0x4c, 0x91, 0xf7, 0xbd, 0xfc, 0x0c, 0x0c, 0x3c, 0x6e, 0x1c, 0x67, 0x9d, 0xa8, 0x4a, 0x32, 0x53, 0x9c, 0x2d, 0xbb, 0x41, 0xea, 0x31, 0x06, 0x1b, 0x08, 0x25, 0xe3, 0xf3, 0x4d, 0x7b, 0x0a, 0xd5, 0x25, 0x26, 0x1e, 0xb9, 0xe4, 0x57, 0xc4, 0x08, 0x19, 0x60, 0x89, 0xe3, 0x30, 0x34, 0x73, 0x1b, 0xa8, 0xe9, 0xf9, 0x5f, 0x5a, 0x23, 0x4b, 0xf8, 0xd3, 0x53, 0x9c, 0x83, 0x81, 0xf4, 0xd9, 0x55, 0x10, 0xd5, 0xe0, 0xf1, 0x45, 0xfd, 0x48, 0x20, 0x5e, 0x5c, 0x60, 0x21, 0x8c, 0x3f, 0x84, 0xb1, 0x89, 0xc8, 0xe4, 0xfd, 0x56, 0x08, 0xb4, 0x97, 0x78, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11854_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11854_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5f, 0x92, 0x93, 0x7a, 0xa5, 0x2d, 0x5d, 0xd1, 0x0f, 0xce, 0xfb, 0x95, 0xa2, 0xd5, 0x7b, 0x61, 0x7d, 0x6d, 0x8b, 0x04, 0xe8, 0xdb, 0x5b, 0x3b, 0x5a, 0x39, 0xab, 0xe8, 0x93, 0xfd, 0xa2, 0xae, 0xb2, 0xf9, 0x78, 0x10, 0x8c, 0x55, 0x8a, 0xab, 0xba, 0xd8, 0x29, 0xce, 0x02, 0xc2, 0x77, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11854 = { .name = "ecdsa_brainpoolp384r1_sha384_11854", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11854_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11854_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11854_sig, .siglen = 96, .result = 1, .comment = "edge case for u1, tcId is 1099 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11855 for ECDSA, tcId is 1100 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11855_pubkey[] = { 0x66, 0xed, 0x49, 0x77, 0x9e, 0xd6, 0xa7, 0xb1, 0x0c, 0x81, 0x2b, 0xc7, 0xee, 0x7b, 0x47, 0xa5, 0xd1, 0x1c, 0x5e, 0xa5, 0x02, 0x77, 0x27, 0x3d, 0xa1, 0x40, 0xbc, 0x1b, 0x0c, 0xf5, 0xb8, 0x21, 0x0a, 0x6a, 0x73, 0x7f, 0x7e, 0x9d, 0x92, 0xee, 0xe6, 0xd8, 0x45, 0x13, 0x7e, 0x5c, 0x44, 0xa2, 0x8a, 0xcc, 0xb8, 0xf6, 0x37, 0x38, 0x5c, 0xf6, 0x51, 0x9b, 0xfa, 0xe3, 0xed, 0x3a, 0xe4, 0xd0, 0xac, 0xaa, 0x19, 0xa2, 0x60, 0xa0, 0x1b, 0xd8, 0xcb, 0x53, 0xad, 0x24, 0xda, 0xca, 0xb1, 0x95, 0x4b, 0x20, 0xd1, 0x47, 0x2c, 0xf3, 0x97, 0x5e, 0x87, 0xcc, 0x73, 0x3f, 0x32, 0x9a, 0xb6, 0xbd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11855_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11855_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x59, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11855 = { .name = "ecdsa_brainpoolp384r1_sha384_11855", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11855_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11855_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11855_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1100 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11856 for ECDSA, tcId is 1101 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11856_pubkey[] = { 0x30, 0x24, 0x91, 0x20, 0x41, 0xbc, 0x98, 0x9a, 0x93, 0x6f, 0xb4, 0xdc, 0xdd, 0x17, 0x8b, 0x15, 0xe0, 0x3a, 0x0a, 0xa9, 0x4a, 0xba, 0xfb, 0x44, 0x65, 0xb4, 0xa8, 0x9d, 0x44, 0x16, 0xb7, 0xa8, 0xb0, 0x29, 0xd4, 0x7c, 0x17, 0xe6, 0x9a, 0x25, 0x96, 0x2f, 0xf3, 0xae, 0xfe, 0x86, 0x2d, 0xcb, 0x24, 0x9e, 0xe9, 0x25, 0x2b, 0x57, 0x13, 0xe7, 0x47, 0xa2, 0xda, 0x8a, 0xac, 0x2b, 0x96, 0x1e, 0xe2, 0xb6, 0xac, 0xa1, 0x57, 0xa4, 0x48, 0x88, 0x74, 0x86, 0x48, 0xfb, 0xcd, 0xc5, 0x66, 0x1c, 0xd4, 0xa1, 0x69, 0xbb, 0x92, 0xc9, 0xc1, 0xce, 0x50, 0xa7, 0x9a, 0x63, 0x73, 0x50, 0x02, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11856_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11856_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x14, 0x49, 0x90, 0x1c, 0xe4, 0xb0, 0x0f, 0x0e, 0x3a, 0x5f, 0xf8, 0x4c, 0xff, 0x8c, 0x13, 0x48, 0x54, 0xb8, 0x08, 0xe5, 0x04, 0xd1, 0xb8, 0xf0, 0x27, 0xac, 0xe9, 0x59, 0x12, 0x34, 0xe3, 0xf6, 0x2c, 0xe7, 0x0c, 0x35, 0xa8, 0xaa, 0x8e, 0x60, 0xca, 0xfe, 0x1e, 0x0d, 0xf3, 0xed, 0x80, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11856 = { .name = "ecdsa_brainpoolp384r1_sha384_11856", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11856_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11856_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11856_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1101 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11857 for ECDSA, tcId is 1102 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11857_pubkey[] = { 0x6c, 0x93, 0x93, 0xb0, 0x0e, 0x9a, 0x62, 0xce, 0x0b, 0x83, 0x67, 0x4c, 0xdc, 0xca, 0x59, 0xb1, 0x8d, 0x5b, 0x34, 0x24, 0x63, 0x48, 0xe3, 0x7c, 0x1d, 0x78, 0x89, 0x8a, 0x52, 0x2d, 0x81, 0x3c, 0x49, 0xd0, 0x8e, 0xfc, 0x5f, 0x3f, 0x7e, 0xf3, 0x3f, 0x3d, 0xc9, 0xdd, 0x1b, 0xc2, 0xe5, 0xc2, 0x00, 0x0b, 0x94, 0x10, 0xce, 0x04, 0xa6, 0x4c, 0xd0, 0x95, 0xae, 0x11, 0x94, 0xbc, 0x1f, 0x51, 0x4c, 0x70, 0x09, 0xa4, 0xe0, 0x68, 0x71, 0xb5, 0x57, 0x15, 0x4c, 0xf4, 0x92, 0xe7, 0xc5, 0x77, 0x49, 0x48, 0x7e, 0xcf, 0xcd, 0x04, 0xcb, 0x31, 0x42, 0x6a, 0xb7, 0x85, 0xff, 0xa9, 0x5e, 0x2f, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11857_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11857_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x89, 0xae, 0x6f, 0x8e, 0x21, 0x5b, 0xcf, 0x35, 0xc7, 0xe2, 0xaf, 0xed, 0x1a, 0x6b, 0x98, 0x55, 0x17, 0x16, 0x87, 0xd9, 0xed, 0xbe, 0xa8, 0xaf, 0x5b, 0xf8, 0xe9, 0xdd, 0xc6, 0x67, 0xaa, 0xc4, 0xe1, 0x66, 0xf0, 0x50, 0x97, 0x38, 0x5f, 0xa9, 0xea, 0x3a, 0x62, 0x45, 0xfc, 0x07, 0xb4, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11857 = { .name = "ecdsa_brainpoolp384r1_sha384_11857", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11857_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11857_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11857_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1102 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11858 for ECDSA, tcId is 1103 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11858_pubkey[] = { 0x2c, 0x58, 0x27, 0x7a, 0xaa, 0x61, 0xc4, 0x00, 0xd7, 0x03, 0x61, 0x83, 0xaf, 0x49, 0xc9, 0x9a, 0x97, 0xfe, 0xa5, 0xa8, 0xd5, 0xf8, 0x60, 0x8c, 0x4c, 0x6a, 0xc7, 0xa2, 0x82, 0x75, 0x7e, 0x4d, 0xc4, 0xb6, 0xf9, 0x2d, 0x82, 0xa1, 0x02, 0x72, 0xf2, 0xa1, 0x96, 0x96, 0xa4, 0x8f, 0xa7, 0x9f, 0x5a, 0x8a, 0xdb, 0x77, 0x07, 0x40, 0x66, 0x9d, 0x60, 0x10, 0xe5, 0x5f, 0x66, 0x25, 0xb1, 0x41, 0xbe, 0x46, 0x9f, 0xe1, 0x77, 0x9f, 0x4a, 0xdf, 0xe6, 0x4e, 0xab, 0x2e, 0x4a, 0x9a, 0xc5, 0xbf, 0x1c, 0x25, 0xb3, 0xde, 0x0b, 0x74, 0xb8, 0xf9, 0x64, 0x4f, 0xc2, 0x16, 0x01, 0x0d, 0x96, 0x59, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11858_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11858_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0xc1, 0x62, 0x56, 0xa0, 0x91, 0x4c, 0xe2, 0x66, 0x1a, 0x54, 0x68, 0x8a, 0xf4, 0xb2, 0x54, 0x6b, 0x1b, 0x59, 0xb0, 0x43, 0x66, 0x7d, 0xa6, 0xab, 0xb5, 0xb1, 0xa1, 0xe0, 0xe2, 0xe6, 0xab, 0x86, 0x2f, 0xe8, 0xbb, 0x74, 0x9f, 0x72, 0x51, 0x57, 0x2b, 0xc1, 0x60, 0x56, 0x75, 0x30, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11858 = { .name = "ecdsa_brainpoolp384r1_sha384_11858", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11858_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11858_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11858_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1103 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11859 for ECDSA, tcId is 1104 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11859_pubkey[] = { 0x6e, 0x5f, 0x82, 0x7e, 0x1a, 0xa2, 0x25, 0xc4, 0xb9, 0x5d, 0xb5, 0x26, 0x55, 0xf6, 0x7d, 0x65, 0x4b, 0xdc, 0x69, 0xa4, 0xbf, 0x8f, 0x49, 0xc1, 0x9d, 0x1e, 0x65, 0xdc, 0xf1, 0x2c, 0xa5, 0x11, 0x50, 0x5a, 0xa1, 0x72, 0x6c, 0xa2, 0xf5, 0xcd, 0xf8, 0xab, 0x37, 0x6f, 0x94, 0xa0, 0xc5, 0xbd, 0x5d, 0xae, 0xc6, 0xf3, 0x5f, 0x1d, 0xfb, 0xc6, 0x8f, 0xba, 0x02, 0x4c, 0xc8, 0xc5, 0xf7, 0x9c, 0xe9, 0xba, 0xa8, 0x6a, 0xdf, 0xd8, 0xd2, 0xba, 0x53, 0xa7, 0x98, 0xcd, 0xcc, 0x90, 0x25, 0xeb, 0x97, 0x97, 0xd3, 0xbe, 0x20, 0x7b, 0xc6, 0x94, 0xab, 0xb3, 0x38, 0xe4, 0x37, 0x78, 0xff, 0xdd, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11859_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11859_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0xc1, 0x55, 0x6c, 0x5e, 0xef, 0x31, 0x1a, 0x4f, 0x3b, 0xa4, 0x63, 0x16, 0xad, 0xf7, 0x37, 0x32, 0xd6, 0xed, 0x47, 0xb1, 0xba, 0x2e, 0xcd, 0x17, 0x8f, 0xf8, 0x9b, 0xbc, 0x5d, 0xdd, 0x6c, 0x64, 0x19, 0xf6, 0x2e, 0x04, 0x5e, 0xa2, 0xd3, 0x5c, 0x33, 0xa2, 0x50, 0xdc, 0x2f, 0xb9, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11859 = { .name = "ecdsa_brainpoolp384r1_sha384_11859", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11859_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11859_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11859_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1104 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11860 for ECDSA, tcId is 1105 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11860_pubkey[] = { 0x7f, 0xe8, 0x52, 0xa7, 0x61, 0x2a, 0x67, 0x3d, 0xf3, 0x51, 0xf0, 0x5a, 0xfe, 0xaf, 0xcb, 0xb1, 0x6c, 0xe4, 0xca, 0xdf, 0x85, 0x68, 0x1b, 0x2b, 0x5f, 0x46, 0xcc, 0x31, 0xef, 0x33, 0xd6, 0xb6, 0x95, 0x37, 0x8e, 0x73, 0x25, 0xe9, 0xcb, 0x31, 0x85, 0xd7, 0x13, 0x7b, 0x2b, 0x17, 0x00, 0x46, 0x5c, 0xbd, 0x4c, 0x81, 0x00, 0x76, 0xd1, 0x35, 0x31, 0x68, 0x87, 0xe9, 0x4b, 0x14, 0xb4, 0xb0, 0x10, 0x8d, 0xb1, 0xc9, 0x44, 0x79, 0x4c, 0x39, 0x89, 0x38, 0xd4, 0x21, 0x76, 0xc3, 0x25, 0x75, 0xb6, 0x42, 0x8b, 0x3e, 0x37, 0xb6, 0x02, 0x21, 0x1c, 0x57, 0x4a, 0xca, 0xfe, 0xf0, 0x91, 0x1e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11860_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11860_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3c, 0xc9, 0x8c, 0x56, 0x1a, 0xa5, 0xf5, 0x0c, 0x8f, 0x19, 0xd9, 0x47, 0xdc, 0x75, 0xac, 0x8f, 0x50, 0x7e, 0x69, 0x85, 0x76, 0x20, 0x06, 0xe7, 0x10, 0x09, 0x82, 0xca, 0xcc, 0xb7, 0x95, 0x30, 0xf8, 0xf9, 0x35, 0xac, 0x9d, 0x3d, 0x82, 0x96, 0x7c, 0xdf, 0x12, 0x9e, 0xcf, 0x5b, 0x0c, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11860 = { .name = "ecdsa_brainpoolp384r1_sha384_11860", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11860_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11860_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11860_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1105 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11861 for ECDSA, tcId is 1106 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11861_pubkey[] = { 0x0a, 0x49, 0xdc, 0x35, 0x9e, 0xd4, 0xfe, 0xf6, 0x83, 0xe4, 0x62, 0xdf, 0xe6, 0x85, 0x44, 0x2c, 0xea, 0x77, 0xb7, 0x33, 0xfd, 0x95, 0x63, 0x32, 0x16, 0x79, 0x4d, 0x9a, 0x61, 0xf7, 0xe1, 0x02, 0x2d, 0x94, 0x2a, 0x36, 0xe7, 0x81, 0xa4, 0x84, 0xa2, 0xb4, 0x79, 0xa6, 0x43, 0x46, 0x9a, 0xf4, 0x51, 0x2e, 0xbd, 0x09, 0x66, 0xb6, 0x8b, 0xfe, 0xcf, 0x7a, 0x47, 0x02, 0x1b, 0xcd, 0x9e, 0x6a, 0xa2, 0x70, 0x3d, 0xcc, 0x55, 0x6a, 0x9a, 0x44, 0x3d, 0x16, 0x19, 0x5a, 0xa1, 0x45, 0x73, 0x8f, 0xa3, 0x6a, 0x4d, 0xff, 0x3d, 0x09, 0x48, 0x1f, 0x4a, 0x86, 0x55, 0x0a, 0x8d, 0x1f, 0x35, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11861_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11861_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3f, 0x20, 0x95, 0x53, 0x0f, 0x36, 0x14, 0x4e, 0x00, 0x90, 0x19, 0xee, 0xe1, 0x02, 0xb2, 0x86, 0x7d, 0x83, 0xc9, 0xeb, 0x4f, 0x28, 0xbc, 0xb3, 0x1b, 0x38, 0x3e, 0x00, 0xc8, 0xc3, 0x74, 0x6b, 0x20, 0xcc, 0x90, 0xe8, 0xef, 0xc8, 0x13, 0xae, 0xfb, 0x5b, 0x6a, 0x49, 0x65, 0x20, 0x4c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11861 = { .name = "ecdsa_brainpoolp384r1_sha384_11861", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11861_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11861_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11861_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1106 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11862 for ECDSA, tcId is 1107 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11862_pubkey[] = { 0x27, 0x67, 0x15, 0x08, 0x74, 0x95, 0xd5, 0x2c, 0x41, 0x60, 0xd1, 0x54, 0x46, 0xeb, 0xb4, 0xd7, 0x58, 0x29, 0x1b, 0xf5, 0xbc, 0x9c, 0xa8, 0x7b, 0x56, 0xc3, 0xf0, 0x0a, 0xdc, 0x41, 0xfa, 0x45, 0x2d, 0x66, 0x68, 0x41, 0x52, 0xd3, 0xe1, 0x9d, 0x2f, 0xc3, 0xad, 0x5d, 0x28, 0x97, 0x87, 0xad, 0x36, 0x73, 0x85, 0xd3, 0xc3, 0xf5, 0xc3, 0xc2, 0xc6, 0xc3, 0x16, 0x6a, 0xdc, 0xfa, 0xfc, 0x3d, 0x20, 0x44, 0x53, 0xca, 0xb8, 0x79, 0x7d, 0x56, 0xe9, 0x55, 0xfb, 0xf1, 0xcf, 0x42, 0x17, 0x63, 0xa6, 0x65, 0x3e, 0x40, 0xef, 0xd9, 0x03, 0x5d, 0xf8, 0x12, 0x81, 0x35, 0x54, 0x6b, 0x62, 0x61, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11862_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11862_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0x4a, 0xfc, 0x6a, 0x72, 0x08, 0x0d, 0x17, 0x28, 0xf6, 0xcc, 0x9f, 0xd0, 0x23, 0xe9, 0xd2, 0x37, 0x30, 0x23, 0x37, 0x7f, 0x02, 0x59, 0x9b, 0x6e, 0xa9, 0xfb, 0x29, 0x23, 0xdd, 0x74, 0x03, 0xfe, 0x2f, 0xd7, 0x39, 0x99, 0xf6, 0x53, 0x16, 0xb5, 0x3f, 0x91, 0x0b, 0xda, 0x4f, 0x6f, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11862 = { .name = "ecdsa_brainpoolp384r1_sha384_11862", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11862_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11862_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11862_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1107 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11863 for ECDSA, tcId is 1108 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11863_pubkey[] = { 0x59, 0x43, 0xdb, 0xd6, 0x6c, 0x79, 0xfc, 0xb8, 0x82, 0x93, 0x6e, 0xcc, 0xdd, 0x6d, 0x86, 0x0c, 0x42, 0xe2, 0x07, 0x27, 0xa2, 0xcd, 0xb2, 0x91, 0x65, 0xc8, 0x42, 0x6c, 0x9d, 0x19, 0x29, 0x90, 0xb7, 0x1d, 0x9a, 0x3c, 0x7f, 0x24, 0x0e, 0x46, 0xac, 0xab, 0x27, 0x41, 0xb7, 0xee, 0x9c, 0x7a, 0x46, 0x1e, 0x5a, 0xb1, 0xdb, 0x3e, 0xb9, 0xb5, 0x1b, 0x32, 0x38, 0xd3, 0xad, 0xa3, 0x35, 0x67, 0xd2, 0x51, 0xd8, 0xfd, 0x0f, 0xba, 0xf5, 0x9a, 0xa1, 0xcf, 0xb4, 0x0f, 0xe7, 0xb2, 0x2e, 0x02, 0x77, 0xf1, 0x66, 0xa3, 0x2e, 0xdb, 0x81, 0xab, 0x6a, 0x85, 0x80, 0xf9, 0xb1, 0xfb, 0x3e, 0x39, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11863_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11863_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x46, 0xf0, 0x9c, 0x47, 0x41, 0xc1, 0xaf, 0xe7, 0x4e, 0x32, 0xf6, 0xff, 0x14, 0xda, 0xaf, 0x90, 0xf4, 0x48, 0x6c, 0x33, 0xf5, 0xd0, 0xe9, 0x78, 0xf9, 0xaf, 0x24, 0xf5, 0x75, 0x19, 0x88, 0xe7, 0x2b, 0x37, 0x4c, 0x5f, 0xae, 0xff, 0xde, 0xc3, 0x09, 0x33, 0x04, 0x01, 0x96, 0x5f, 0x7d, 0x20, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11863 = { .name = "ecdsa_brainpoolp384r1_sha384_11863", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11863_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11863_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11863_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1108 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11864 for ECDSA, tcId is 1109 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11864_pubkey[] = { 0x52, 0x85, 0xd7, 0x29, 0x25, 0xc8, 0x7c, 0x75, 0xb6, 0xad, 0x99, 0x55, 0x06, 0x41, 0x82, 0xbf, 0x2d, 0xeb, 0xcb, 0x25, 0xc8, 0x8d, 0x06, 0x06, 0xf6, 0x67, 0x28, 0x63, 0xde, 0x41, 0x3e, 0x54, 0x96, 0x88, 0xa4, 0xfc, 0xfb, 0xe6, 0x68, 0x9b, 0xb2, 0x3d, 0xba, 0x2b, 0x75, 0x7b, 0xcd, 0xa6, 0x4e, 0xf6, 0xb0, 0x17, 0x66, 0xc9, 0x5b, 0x66, 0xff, 0x10, 0x49, 0x6d, 0x5d, 0xee, 0xba, 0xc4, 0xb4, 0xbf, 0x8c, 0x3b, 0xb4, 0x23, 0x2c, 0x01, 0x9f, 0x80, 0xb6, 0x9d, 0x8a, 0xb0, 0x21, 0x4c, 0xea, 0xf5, 0x81, 0x30, 0x27, 0xec, 0xec, 0x13, 0x3a, 0x5a, 0x5b, 0x97, 0x19, 0x48, 0x82, 0x2e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11864_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11864_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x19, 0x93, 0x0a, 0x2b, 0x8b, 0xbd, 0x79, 0xb8, 0x05, 0x1f, 0x25, 0x2a, 0x1a, 0xf7, 0x6b, 0x4a, 0x5c, 0x65, 0x25, 0xad, 0xf9, 0xc6, 0xc7, 0x91, 0x0a, 0x5c, 0xcf, 0x79, 0x8e, 0xac, 0x0c, 0x8d, 0x45, 0x13, 0x92, 0x3a, 0x79, 0x2a, 0x96, 0x5a, 0xbe, 0x82, 0xbb, 0x56, 0x4d, 0xac, 0x21, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11864 = { .name = "ecdsa_brainpoolp384r1_sha384_11864", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11864_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11864_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11864_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1109 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11865 for ECDSA, tcId is 1110 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11865_pubkey[] = { 0x07, 0x86, 0xaf, 0xb0, 0x3d, 0xd7, 0x91, 0xdb, 0xfc, 0x37, 0x1a, 0xb5, 0x1f, 0xfa, 0x28, 0x8b, 0x7c, 0xed, 0xd9, 0x0d, 0x6a, 0x35, 0xa3, 0xc3, 0xa9, 0x25, 0x66, 0xf8, 0x95, 0xf3, 0x8c, 0xb1, 0x85, 0x36, 0x13, 0x7e, 0x01, 0x0f, 0x1c, 0xfb, 0xa2, 0xfb, 0xed, 0x70, 0x56, 0x8d, 0x77, 0xb8, 0x4e, 0xec, 0x84, 0x0c, 0xca, 0x8b, 0x6f, 0x3f, 0x61, 0x23, 0x04, 0xb6, 0x02, 0xff, 0xad, 0x8d, 0xcb, 0xae, 0x17, 0x86, 0xb2, 0xc2, 0x21, 0x6e, 0x9a, 0x1e, 0x59, 0xa6, 0xb6, 0x96, 0x28, 0xb5, 0x2a, 0x40, 0x8b, 0x6a, 0x08, 0x3d, 0x72, 0x7f, 0x3c, 0xcd, 0x0e, 0x70, 0x6f, 0x9a, 0xee, 0xf8, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11865_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11865_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x33, 0x26, 0x14, 0x57, 0x17, 0x7a, 0xf3, 0x70, 0x0a, 0x3e, 0x4a, 0x54, 0x35, 0xee, 0xd6, 0x94, 0xb8, 0xca, 0x4b, 0x5b, 0xf3, 0x8d, 0x8f, 0x22, 0x14, 0xb9, 0x9e, 0xf3, 0x1d, 0x58, 0x19, 0x1a, 0x8a, 0x27, 0x24, 0x74, 0xf2, 0x55, 0x2c, 0xb5, 0x7d, 0x05, 0x76, 0xac, 0x9b, 0x58, 0x43, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11865 = { .name = "ecdsa_brainpoolp384r1_sha384_11865", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11865_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11865_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11865_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1110 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11866 for ECDSA, tcId is 1111 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11866_pubkey[] = { 0x46, 0x69, 0x0d, 0xb4, 0x03, 0x90, 0x42, 0x28, 0xe4, 0xf7, 0x36, 0xb1, 0x34, 0x47, 0x91, 0x59, 0x66, 0x28, 0xe8, 0x56, 0x69, 0xd4, 0xdd, 0x01, 0x37, 0x4b, 0x21, 0x27, 0x42, 0x80, 0xb4, 0x21, 0xe4, 0x2f, 0x5b, 0xa3, 0xf3, 0xf2, 0xfa, 0xda, 0xd2, 0x7d, 0x44, 0x69, 0xbe, 0x7d, 0x9b, 0xdb, 0x7e, 0x88, 0x3b, 0x43, 0xc2, 0x72, 0x17, 0xf6, 0x06, 0xe0, 0xa5, 0xba, 0x6c, 0x9d, 0xf7, 0x81, 0xc1, 0x45, 0x77, 0x6c, 0x0e, 0x5a, 0x89, 0x93, 0xf0, 0xed, 0x65, 0xc6, 0xde, 0xd6, 0x5a, 0x43, 0xbd, 0xdd, 0x0f, 0xe7, 0x61, 0x14, 0x85, 0xe8, 0xe8, 0xd9, 0xe7, 0xde, 0xcd, 0xf2, 0xd8, 0xb5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11866_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11866_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x4c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11866 = { .name = "ecdsa_brainpoolp384r1_sha384_11866", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11866_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11866_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11866_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1111 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11867 for ECDSA, tcId is 1112 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11867_pubkey[] = { 0x8b, 0xe6, 0x92, 0x8a, 0xca, 0xd4, 0x4c, 0x95, 0x71, 0xb5, 0xc4, 0x01, 0x5f, 0xa3, 0xff, 0xae, 0x5e, 0x63, 0x9e, 0x41, 0x30, 0xa1, 0xa6, 0x6b, 0x47, 0x3e, 0x5d, 0xfd, 0xfe, 0x93, 0xb6, 0x8a, 0x8d, 0xe8, 0x95, 0x83, 0x66, 0x6d, 0x4d, 0x69, 0x9e, 0x88, 0x85, 0x46, 0x9f, 0x9b, 0x1a, 0x4d, 0x83, 0xb1, 0xd5, 0x31, 0x23, 0x10, 0xe4, 0x45, 0xae, 0x57, 0xc8, 0x5a, 0xb1, 0xa3, 0xdf, 0x8d, 0xbb, 0xb7, 0x06, 0xa5, 0x98, 0xfb, 0xc0, 0x07, 0xef, 0xb6, 0x02, 0xa1, 0x4a, 0x59, 0x52, 0xfd, 0x7e, 0x7d, 0xf0, 0x46, 0x4d, 0x53, 0x3e, 0x06, 0x2e, 0xa2, 0x11, 0x28, 0x5c, 0x2f, 0x5c, 0x27, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11867_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11867_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x8b, 0x33, 0xc7, 0x08, 0x62, 0x4a, 0x1e, 0x2e, 0xeb, 0xa0, 0x0f, 0xb5, 0xb5, 0xa8, 0xed, 0x1a, 0x16, 0x22, 0xfc, 0x71, 0xed, 0x89, 0x7f, 0xb1, 0x3d, 0x87, 0xac, 0x25, 0x39, 0x35, 0xe8, 0x36, 0x58, 0x50, 0xd3, 0x80, 0x01, 0x5c, 0x11, 0x5d, 0x12, 0xe1, 0x4a, 0x24, 0x72, 0x86, 0x0d, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11867 = { .name = "ecdsa_brainpoolp384r1_sha384_11867", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11867_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11867_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11867_sig, .siglen = 96, .result = 1, .comment = "edge case for u2, tcId is 1112 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11868 for ECDSA, tcId is 1113 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11868_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x6a, 0x0f, 0x0e, 0xd8, 0xd7, 0xf2, 0x8f, 0x91, 0x6a, 0x4e, 0x72, 0x7e, 0x55, 0xbf, 0x08, 0x18, 0xdc, 0xc8, 0x4e, 0xd1, 0x13, 0x2b, 0xd7, 0xda, 0x9f, 0x98, 0xff, 0x95, 0xfb, 0x2a, 0xec, 0x23, 0x8f, 0x4d, 0xf9, 0x18, 0x5b, 0x09, 0x82, 0xa6, 0x68, 0x2c, 0x06, 0xc8, 0x5e, 0x6a, 0x89, 0x5e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11868_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11868_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11868 = { .name = "ecdsa_brainpoolp384r1_sha384_11868", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11868_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11868_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11868_sig, .siglen = 96, .result = 1, .comment = "point duplication during verification, tcId is 1113 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11869 for ECDSA, tcId is 1114 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11869_pubkey[] = { 0x18, 0x86, 0xdd, 0xd2, 0x82, 0xb0, 0x23, 0x08, 0x49, 0x53, 0xef, 0x7d, 0x9e, 0x85, 0x3a, 0x6a, 0xdc, 0x13, 0x60, 0xce, 0xf7, 0xf5, 0x6d, 0xf7, 0xda, 0x0c, 0xa7, 0xbd, 0xcf, 0x4f, 0x3a, 0x5d, 0x22, 0x7a, 0x73, 0x0f, 0x9f, 0x20, 0xf9, 0x43, 0x4b, 0x56, 0x5d, 0xc4, 0xfa, 0x81, 0x9e, 0x85, 0x22, 0xaa, 0x0f, 0xa9, 0xcb, 0x45, 0xdd, 0x96, 0xa5, 0x0e, 0xfc, 0xff, 0xfb, 0x27, 0x39, 0xc6, 0x38, 0x67, 0x22, 0x38, 0xda, 0x28, 0x7e, 0xd9, 0x73, 0x18, 0xda, 0x83, 0x84, 0x8c, 0x25, 0x00, 0x1d, 0x85, 0xae, 0x11, 0x35, 0x13, 0x97, 0xcb, 0x1f, 0x1a, 0xf9, 0x4a, 0xd2, 0x9d, 0x62, 0xf5, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11869_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11869_sig[] = { 0x87, 0x29, 0xcb, 0xb9, 0x06, 0xf6, 0x9d, 0x8d, 0x43, 0xf9, 0x4c, 0xb8, 0xc4, 0xb9, 0x57, 0x2c, 0x95, 0x82, 0x72, 0xf5, 0xc6, 0xff, 0x75, 0x9b, 0xa9, 0x11, 0x3f, 0x34, 0x0b, 0x9f, 0x9a, 0xa5, 0x98, 0x83, 0x7a, 0xa3, 0x7a, 0x43, 0x11, 0x71, 0x7f, 0xaf, 0x4c, 0xf6, 0x67, 0x47, 0xa5, 0xb4, 0x28, 0xa9, 0xb8, 0xc5, 0x5e, 0xb6, 0xf5, 0xf1, 0xcf, 0x5c, 0x23, 0x3a, 0xff, 0x64, 0x0f, 0x48, 0x21, 0x1c, 0xd2, 0xb9, 0xcf, 0x05, 0x93, 0xe8, 0xb9, 0xff, 0xff, 0x67, 0xc7, 0xe6, 0x97, 0x03, 0xf8, 0xa6, 0xc5, 0x38, 0x2a, 0x36, 0x76, 0x9d, 0x3c, 0xca, 0x57, 0x71, 0x1a, 0xb6, 0x3c, 0x65, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11869 = { .name = "ecdsa_brainpoolp384r1_sha384_11869", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11869_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11869_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11869_sig, .siglen = 96, .result = -1, .comment = "duplication bug, tcId is 1114 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11870 for ECDSA, tcId is 1115 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11870_pubkey[] = { 0x89, 0xdd, 0x73, 0x8e, 0xfc, 0xb0, 0xf7, 0x98, 0x11, 0xdf, 0x6b, 0xec, 0x87, 0x34, 0x85, 0x16, 0x94, 0x50, 0xad, 0xa1, 0x8e, 0x60, 0x27, 0x21, 0xe6, 0x17, 0x68, 0xbe, 0x0d, 0x81, 0xe5, 0xd4, 0x13, 0x81, 0xf2, 0x46, 0x68, 0x27, 0x6f, 0x32, 0xbf, 0xe3, 0x1f, 0xf1, 0xc1, 0x6b, 0xcb, 0x6b, 0x1f, 0x7a, 0x4d, 0x28, 0x23, 0xbc, 0xd7, 0x3f, 0x23, 0x6d, 0x90, 0xb6, 0xea, 0x61, 0xd8, 0x92, 0x02, 0x61, 0x90, 0xe1, 0x43, 0x17, 0xb5, 0xd1, 0x10, 0x52, 0x6e, 0x9e, 0x26, 0x75, 0xf0, 0x3d, 0x5e, 0xf3, 0xfc, 0xe8, 0x7b, 0x58, 0x27, 0xa3, 0x7e, 0x0c, 0xf1, 0x9b, 0x4d, 0x39, 0x88, 0xc0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11870_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11870_sig[] = { 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11870 = { .name = "ecdsa_brainpoolp384r1_sha384_11870", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11870_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11870_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11870_sig, .siglen = 96, .result = -1, .comment = "comparison with point at infinity , tcId is 1115 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11871 for ECDSA, tcId is 1116 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11871_pubkey[] = { 0x79, 0x55, 0x92, 0xa6, 0x73, 0xe8, 0x2d, 0xff, 0x3d, 0x77, 0x45, 0x01, 0x94, 0xe5, 0x30, 0x8d, 0x64, 0xf4, 0x5f, 0x11, 0xf7, 0x59, 0xf3, 0x4f, 0x7c, 0x7b, 0x5b, 0x7c, 0xc6, 0xad, 0x73, 0xf9, 0xbf, 0xf8, 0xf6, 0x63, 0x3c, 0xc2, 0x03, 0x78, 0xcf, 0xf2, 0xe5, 0x3f, 0xb7, 0xa5, 0x30, 0x30, 0x85, 0xb5, 0xcd, 0x46, 0x21, 0x66, 0x5a, 0xac, 0x84, 0x35, 0xd8, 0xce, 0x85, 0xb2, 0x6d, 0x44, 0x45, 0x08, 0xb7, 0x7b, 0x28, 0x2e, 0x91, 0xcd, 0x53, 0x15, 0xc7, 0x01, 0xd2, 0xe5, 0xb6, 0x6b, 0xa4, 0xc0, 0x0b, 0xf7, 0xe1, 0xeb, 0x08, 0x59, 0xa1, 0x3c, 0xc3, 0x51, 0xd0, 0x00, 0x41, 0xa1, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11871_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11871_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11871 = { .name = "ecdsa_brainpoolp384r1_sha384_11871", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11871_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11871_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11871_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1116 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11872 for ECDSA, tcId is 1117 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11872_pubkey[] = { 0x39, 0xd9, 0x4f, 0xf8, 0x75, 0x7d, 0xcd, 0xb6, 0x74, 0x80, 0xcb, 0xc4, 0x8e, 0x96, 0x79, 0x42, 0x3e, 0x57, 0xde, 0x5a, 0x23, 0x23, 0x2d, 0xf0, 0xdb, 0x1e, 0x0f, 0xf7, 0xe9, 0x08, 0x61, 0x44, 0x01, 0xe6, 0xcd, 0x8d, 0x61, 0x50, 0x08, 0xea, 0x8b, 0xe5, 0x12, 0x99, 0xd9, 0xe2, 0x2d, 0xe9, 0x43, 0x81, 0x26, 0xd7, 0x0d, 0x14, 0xe7, 0x5c, 0xe4, 0x1e, 0xa2, 0xf4, 0x09, 0xbe, 0x88, 0xe2, 0x80, 0x6f, 0x7f, 0x73, 0xbd, 0x51, 0x37, 0x31, 0x69, 0x6b, 0xc5, 0x9e, 0x7a, 0x2c, 0x1d, 0x44, 0xd5, 0x68, 0x3d, 0x3b, 0xdc, 0x92, 0xba, 0xba, 0x1c, 0x2a, 0xda, 0x58, 0x80, 0x9f, 0x8b, 0xef, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11872_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11872_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11872 = { .name = "ecdsa_brainpoolp384r1_sha384_11872", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11872_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11872_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11872_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1117 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11873 for ECDSA, tcId is 1118 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11873_pubkey[] = { 0x20, 0xb1, 0xfc, 0x8e, 0x24, 0x80, 0xa9, 0x73, 0xe0, 0x97, 0x33, 0x73, 0x43, 0x49, 0x0b, 0x12, 0xae, 0x40, 0x65, 0x2e, 0x41, 0x80, 0xdd, 0x4a, 0xe5, 0x6d, 0xf5, 0x21, 0xda, 0xa9, 0xe3, 0x91, 0x77, 0x7c, 0x0d, 0x46, 0x6f, 0x01, 0x8a, 0xf5, 0x55, 0x19, 0x03, 0x8d, 0xea, 0xd3, 0x55, 0x01, 0x72, 0x32, 0x88, 0x2b, 0xca, 0x3c, 0xcd, 0x6b, 0x37, 0x55, 0x91, 0xf5, 0xb5, 0x09, 0x65, 0x38, 0xca, 0x57, 0x78, 0x35, 0x53, 0x07, 0xe6, 0x03, 0x14, 0x8f, 0xde, 0x31, 0xf5, 0xac, 0xff, 0xeb, 0x4c, 0x68, 0x63, 0x54, 0x1a, 0xd2, 0x33, 0xde, 0x3f, 0x28, 0x1e, 0xa0, 0xd2, 0x35, 0xb6, 0xf3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11873_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11873_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11873 = { .name = "ecdsa_brainpoolp384r1_sha384_11873", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11873_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11873_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11873_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1118 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11874 for ECDSA, tcId is 1119 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11874_pubkey[] = { 0x4a, 0x39, 0x1d, 0x79, 0xcf, 0xa8, 0x2b, 0x94, 0x31, 0x23, 0xd6, 0x9e, 0xe2, 0xd1, 0xbc, 0x0e, 0x0b, 0x7e, 0x1e, 0x6f, 0x93, 0xc6, 0x91, 0x23, 0xbf, 0xce, 0x0b, 0xd4, 0xf3, 0x1a, 0x5e, 0x34, 0x34, 0x06, 0x2d, 0xd0, 0xe1, 0xaa, 0x8b, 0x88, 0x6c, 0xeb, 0xa3, 0x62, 0xc4, 0xd6, 0x72, 0x0c, 0x7a, 0x2b, 0x05, 0x43, 0xa1, 0x56, 0xf1, 0x93, 0x4e, 0x02, 0xd3, 0x1e, 0x81, 0xd5, 0xd2, 0x78, 0x5a, 0x71, 0xd5, 0x41, 0xcc, 0x7e, 0x1e, 0x6e, 0x61, 0x32, 0xeb, 0xee, 0x42, 0x11, 0x1f, 0x52, 0xa8, 0x44, 0x93, 0x72, 0x60, 0x71, 0x90, 0x56, 0xae, 0x7b, 0x10, 0xf7, 0x51, 0x60, 0x6c, 0x41, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11874_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11874_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11874 = { .name = "ecdsa_brainpoolp384r1_sha384_11874", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11874_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11874_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11874_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1119 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11875 for ECDSA, tcId is 1120 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11875_pubkey[] = { 0x36, 0x85, 0x4a, 0xda, 0xcf, 0x83, 0xce, 0x5f, 0x0e, 0x44, 0x22, 0x40, 0x6d, 0x7b, 0x6f, 0x7d, 0xb6, 0x3d, 0x73, 0xd4, 0xc8, 0x92, 0xa0, 0x1e, 0x97, 0x5e, 0xf6, 0xee, 0x6b, 0x71, 0xa9, 0x33, 0x4c, 0x9d, 0x57, 0xce, 0x6f, 0xfc, 0xdb, 0x1a, 0x2e, 0x41, 0x74, 0xdd, 0xba, 0x79, 0x9e, 0x12, 0x7d, 0x61, 0x96, 0x72, 0x03, 0x5d, 0xb4, 0xfd, 0x73, 0xe5, 0xe4, 0xb4, 0xea, 0x92, 0x0b, 0x74, 0xf2, 0xe7, 0x0f, 0xd2, 0x4e, 0xbc, 0xa4, 0x9d, 0x22, 0xfd, 0xb1, 0x1e, 0x96, 0xb7, 0x86, 0x7f, 0xa1, 0x83, 0x8c, 0xa5, 0xba, 0xbc, 0xd9, 0xdd, 0x09, 0x6a, 0xb8, 0x5e, 0x2f, 0x97, 0xb5, 0xae, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11875_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11875_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11875 = { .name = "ecdsa_brainpoolp384r1_sha384_11875", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11875_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11875_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11875_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1120 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11876 for ECDSA, tcId is 1121 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11876_pubkey[] = { 0x80, 0x4e, 0x6c, 0x71, 0xe4, 0x93, 0xb7, 0x83, 0xec, 0xd3, 0x75, 0xa4, 0xed, 0xcf, 0x86, 0xc7, 0x7b, 0x1c, 0x2d, 0xf5, 0x51, 0xbb, 0xc7, 0x3b, 0xed, 0x85, 0x16, 0xe4, 0xd1, 0x1c, 0xe5, 0x1a, 0x1d, 0xd0, 0x81, 0xe1, 0x9a, 0xa6, 0xf5, 0x1c, 0x65, 0x68, 0x18, 0xb8, 0x53, 0x96, 0x21, 0x78, 0x58, 0x0b, 0xd6, 0xb2, 0xc4, 0xea, 0xbc, 0xf5, 0xb3, 0x74, 0x1e, 0x6b, 0x7d, 0x59, 0xb0, 0xe7, 0xf2, 0xbd, 0xdb, 0x24, 0x7f, 0x5f, 0x9d, 0x67, 0x51, 0xcf, 0x09, 0xe3, 0xc6, 0xc9, 0xd1, 0xf7, 0xc2, 0x7c, 0x0b, 0xb8, 0xd2, 0x1e, 0x77, 0xa8, 0x0e, 0xba, 0xda, 0xf9, 0x0a, 0xf8, 0xb0, 0xd0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11876_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11876_sig[] = { 0x22, 0x82, 0xbc, 0x38, 0x2a, 0x2f, 0x4d, 0xfc, 0xb9, 0x5c, 0x34, 0x95, 0xd7, 0xb4, 0xfd, 0x59, 0x0a, 0xd5, 0x20, 0xb3, 0xeb, 0x6b, 0xe4, 0xd6, 0xec, 0x2f, 0x80, 0xc4, 0xe0, 0xf7, 0x0d, 0xf8, 0x7c, 0x4b, 0xa7, 0x4a, 0x09, 0xb5, 0x53, 0xeb, 0xb4, 0x27, 0xb5, 0x8d, 0xf9, 0xd5, 0x9f, 0xca, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11876 = { .name = "ecdsa_brainpoolp384r1_sha384_11876", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11876_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11876_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11876_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 1121 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11877 for ECDSA, tcId is 1122 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11877_pubkey[] = { 0x2c, 0x11, 0x57, 0x72, 0xdd, 0x29, 0x86, 0x12, 0x19, 0x7a, 0x1c, 0x59, 0xdf, 0x9c, 0x25, 0xa8, 0x6a, 0xc1, 0x6f, 0xa4, 0xf2, 0x7a, 0xdf, 0x74, 0xbc, 0xc6, 0x73, 0xbb, 0x4a, 0x6a, 0x4b, 0xb5, 0xd0, 0xb5, 0xb6, 0x44, 0x70, 0xd5, 0xd2, 0x6e, 0x03, 0x00, 0x92, 0x2a, 0xb7, 0x23, 0x73, 0x24, 0x42, 0xf6, 0xec, 0x20, 0x9e, 0x27, 0xce, 0x0b, 0x12, 0x7d, 0x33, 0x47, 0x45, 0x27, 0x26, 0x43, 0xd3, 0x66, 0x6b, 0xff, 0x54, 0x92, 0x74, 0x19, 0x76, 0x4d, 0xe5, 0x23, 0x22, 0xee, 0x16, 0x96, 0xe6, 0x20, 0xd1, 0x5e, 0x0e, 0xea, 0x62, 0xfe, 0xd0, 0xf2, 0x0e, 0xfe, 0x6c, 0x91, 0xe1, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11877_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11877_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x2e, 0xe8, 0x5f, 0x80, 0xe1, 0x12, 0xcf, 0x0d, 0x5a, 0x74, 0x7a, 0x7f, 0x70, 0x4c, 0xc0, 0x9f, 0xb1, 0xba, 0x7b, 0x03, 0x4f, 0x1c, 0x1c, 0xe6, 0x5f, 0xb2, 0x24, 0xce, 0xe4, 0x01, 0x61, 0xe2, 0x9a, 0x68, 0xe7, 0x8f, 0xce, 0x7f, 0xeb, 0xb0, 0x13, 0xd8, 0x10, 0xab, 0xa3, 0x01, 0x77, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11877 = { .name = "ecdsa_brainpoolp384r1_sha384_11877", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11877_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11877_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11877_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1122 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11878 for ECDSA, tcId is 1123 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11878_pubkey[] = { 0x29, 0x57, 0x78, 0xc9, 0xa3, 0xbe, 0x2b, 0x37, 0x34, 0x50, 0xf5, 0x7d, 0xaf, 0x10, 0xde, 0x66, 0xd3, 0x24, 0x41, 0x75, 0x0a, 0xc4, 0x28, 0x9f, 0x67, 0x51, 0xff, 0x61, 0x40, 0x5c, 0xe0, 0x23, 0x7f, 0x64, 0xe2, 0x8a, 0xc5, 0x28, 0x1a, 0x81, 0xd1, 0x3f, 0xba, 0x81, 0xa8, 0x45, 0x4e, 0x58, 0x4c, 0x9f, 0x39, 0x91, 0xd6, 0x15, 0x51, 0x2f, 0xaf, 0x0d, 0xc9, 0x10, 0x71, 0x93, 0xb1, 0xb6, 0xf5, 0xcd, 0x68, 0x43, 0x56, 0xca, 0x51, 0x50, 0x4d, 0x15, 0xc1, 0xca, 0x4b, 0xa0, 0x0b, 0x21, 0xc7, 0xc6, 0x8e, 0xb4, 0x68, 0x32, 0x22, 0xa8, 0x21, 0x1e, 0x4f, 0xfd, 0x56, 0xda, 0x0e, 0x06, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11878_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11878_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11878 = { .name = "ecdsa_brainpoolp384r1_sha384_11878", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11878_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11878_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11878_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1123 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11879 for ECDSA, tcId is 1124 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11879_pubkey[] = { 0x65, 0xa3, 0x40, 0xbc, 0x68, 0xf3, 0xfc, 0xea, 0xd4, 0xf0, 0x42, 0x77, 0xee, 0x86, 0x75, 0xf9, 0xc1, 0x7b, 0xc8, 0xc8, 0x84, 0x26, 0xc5, 0xba, 0x03, 0x13, 0xb8, 0xce, 0x7d, 0xa5, 0x8d, 0x92, 0xca, 0x9a, 0x0f, 0xfa, 0x32, 0xc7, 0xee, 0xe1, 0x95, 0x85, 0x7d, 0x86, 0x0b, 0xa1, 0xee, 0xbe, 0x4d, 0xcd, 0x5b, 0xe3, 0xa6, 0x77, 0x80, 0x08, 0xb3, 0x6e, 0xa1, 0x9d, 0x90, 0x2d, 0x93, 0xdd, 0x48, 0x8f, 0x6f, 0xb6, 0x5d, 0xc0, 0x71, 0x95, 0x21, 0x55, 0x3b, 0x39, 0xcb, 0x3c, 0x52, 0x4b, 0x12, 0x68, 0x1d, 0x2e, 0x07, 0xa8, 0xef, 0x72, 0x0c, 0xdc, 0x15, 0x01, 0x1c, 0x23, 0xba, 0x9d, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11879_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11879_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x1c, 0x25, 0x06, 0x1a, 0x20, 0xa4, 0xe2, 0xa1, 0x9c, 0xac, 0x49, 0x7f, 0xa9, 0xc7, 0xa6, 0xc6, 0x37, 0x6f, 0xe3, 0x68, 0x62, 0xaa, 0x77, 0xbd, 0x6c, 0x9e, 0x16, 0x15, 0xbc, 0x00, 0xd4, 0x54, 0xc3, 0x0b, 0xbe, 0x23, 0x15, 0x7f, 0xf3, 0xd0, 0x0b, 0xe8, 0x0a, 0x00, 0x95, 0x00, 0xe1, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11879 = { .name = "ecdsa_brainpoolp384r1_sha384_11879", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11879_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11879_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11879_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1124 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11880 for ECDSA, tcId is 1125 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11880_pubkey[] = { 0x54, 0xa0, 0x39, 0x02, 0x65, 0x6b, 0xfa, 0xf4, 0xd6, 0xa5, 0x4f, 0xf3, 0x42, 0x9d, 0x9f, 0x97, 0x19, 0xbb, 0x61, 0xe6, 0xca, 0xf0, 0x00, 0xe1, 0x00, 0x99, 0x2b, 0x31, 0x70, 0x0e, 0x78, 0x0e, 0x0f, 0x73, 0xf5, 0x16, 0x14, 0x95, 0x4a, 0xcd, 0xdd, 0xca, 0xaa, 0x8b, 0x23, 0x11, 0x19, 0x5b, 0x04, 0xad, 0x3b, 0x19, 0xb0, 0x1e, 0x15, 0x0a, 0x39, 0xdc, 0x0c, 0xfa, 0xec, 0xc6, 0x49, 0x8b, 0x18, 0x13, 0x8c, 0xe6, 0x12, 0xc4, 0x92, 0x79, 0x56, 0x87, 0xa4, 0x88, 0x52, 0x26, 0x44, 0xb3, 0xdd, 0xf7, 0x46, 0x2c, 0x3c, 0x35, 0x9b, 0xd0, 0x91, 0xb7, 0xd3, 0x94, 0x69, 0x57, 0x18, 0x79, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11880_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11880_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x70, 0x94, 0x18, 0x68, 0x82, 0x93, 0x8a, 0x86, 0x72, 0xb1, 0x25, 0xfe, 0xa7, 0x1e, 0x9b, 0x18, 0xdd, 0xbf, 0x8d, 0xa1, 0x8a, 0xa9, 0xde, 0xf5, 0xb2, 0x78, 0x58, 0x56, 0xf0, 0x03, 0x51, 0x53, 0x0c, 0x2e, 0xf8, 0x8c, 0x55, 0xff, 0xcf, 0x40, 0x2f, 0xa0, 0x28, 0x02, 0x54, 0x03, 0x84, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11880 = { .name = "ecdsa_brainpoolp384r1_sha384_11880", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11880_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11880_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11880_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1125 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11881 for ECDSA, tcId is 1126 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11881_pubkey[] = { 0x46, 0xd1, 0x0d, 0x74, 0x9a, 0x47, 0xa4, 0xd3, 0xf2, 0x5b, 0x6f, 0x28, 0x95, 0x1a, 0x11, 0xf0, 0x1a, 0x54, 0xc2, 0x41, 0x39, 0x57, 0xa4, 0x77, 0x16, 0x2d, 0xab, 0xe0, 0xd0, 0x8d, 0x8a, 0xe9, 0xb6, 0xa9, 0xf4, 0x4b, 0x68, 0xef, 0x34, 0x1f, 0xb8, 0x20, 0xb0, 0xc2, 0x4c, 0x7a, 0x1c, 0x0e, 0x67, 0x1f, 0xf1, 0x66, 0xcd, 0x35, 0xd2, 0xf3, 0xcc, 0x82, 0x1d, 0x58, 0xfa, 0x18, 0xe3, 0x5d, 0x25, 0xe6, 0x03, 0x3b, 0x9e, 0x79, 0x0f, 0xce, 0x48, 0x18, 0xf9, 0xe5, 0x70, 0x92, 0x1c, 0x00, 0x34, 0xb3, 0x81, 0xcc, 0x9a, 0xd2, 0x54, 0xee, 0xaf, 0x1b, 0x38, 0x6e, 0x51, 0x1b, 0x7c, 0x89, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11881_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11881_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x78, 0x9e, 0xac, 0x6f, 0xf9, 0x9e, 0x14, 0x6b, 0x7a, 0xe2, 0x5f, 0x90, 0xd7, 0xa0, 0xca, 0xbf, 0x36, 0xba, 0xf3, 0x2d, 0x14, 0x91, 0x6e, 0xe2, 0xac, 0xee, 0xa7, 0xca, 0xdc, 0x95, 0xd7, 0x22, 0x1f, 0x56, 0xe5, 0xba, 0xee, 0x6d, 0x82, 0xa0, 0x33, 0x07, 0x06, 0x4b, 0xa3, 0x28, 0x56, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11881 = { .name = "ecdsa_brainpoolp384r1_sha384_11881", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11881_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11881_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11881_sig, .siglen = 96, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1126 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11882 for ECDSA, tcId is 1127 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11882_pubkey[] = { 0x8a, 0xe9, 0x2d, 0xe1, 0x0b, 0x24, 0x4a, 0xc7, 0xf0, 0xde, 0xb6, 0xb1, 0x02, 0xd0, 0x75, 0x95, 0x1d, 0x8c, 0x13, 0xb2, 0x96, 0x0c, 0x2e, 0x98, 0xd7, 0xfb, 0x42, 0xb8, 0xab, 0xe9, 0x0f, 0xd0, 0x7a, 0x4a, 0x21, 0xb8, 0x6e, 0xb4, 0xc7, 0x7e, 0xfe, 0x9a, 0xdb, 0x67, 0x25, 0x67, 0x6d, 0x17, 0x36, 0x06, 0x3f, 0x34, 0x07, 0xc7, 0x16, 0x27, 0xac, 0xaa, 0x83, 0xbe, 0x90, 0x29, 0xc7, 0xa4, 0x0e, 0x8a, 0xa8, 0x96, 0xcb, 0x68, 0xa9, 0xc2, 0xfa, 0x2a, 0xaa, 0x10, 0x79, 0x03, 0x5a, 0x28, 0x31, 0x81, 0xcd, 0x3f, 0x27, 0x23, 0xb2, 0x21, 0xd5, 0xa8, 0x74, 0x7a, 0xd3, 0x92, 0xa0, 0xf9, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11882_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11882_sig[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x64, 0xdc, 0x78, 0xd1, 0x12, 0xcd, 0x6e, 0xd6, 0x7d, 0x43, 0x23, 0xb3, 0x02, 0x65, 0x0a, 0x60, 0x6e, 0xd4, 0x14, 0x15, 0xbd, 0x8c, 0xfc, 0x40, 0xec, 0x74, 0x38, 0xa7, 0x0e, 0xe3, 0xd8, 0x68, 0x04, 0x20, 0xe5, 0xf6, 0x02, 0xae, 0xd5, 0x91, 0xa3, 0x24, 0x76, 0x0c, 0x58, 0x14, 0x06, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11882 = { .name = "ecdsa_brainpoolp384r1_sha384_11882", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11882_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11882_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11882_sig, .siglen = 96, .result = 1, .comment = "extreme value for k, tcId is 1127 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11883 for ECDSA, tcId is 1128 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11883_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11883_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11883_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11883 = { .name = "ecdsa_brainpoolp384r1_sha384_11883", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11883_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11883_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11883_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 1128 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11884 for ECDSA, tcId is 1129 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11884_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x8a, 0xbe, 0x1d, 0x75, 0x20, 0xf9, 0xc2, 0xa4, 0x5c, 0xb1, 0xeb, 0x8e, 0x95, 0xcf, 0xd5, 0x52, 0x62, 0xb7, 0x0b, 0x29, 0xfe, 0xec, 0x58, 0x64, 0xe1, 0x9c, 0x05, 0x4f, 0xf9, 0x91, 0x29, 0x28, 0x0e, 0x46, 0x46, 0x21, 0x77, 0x91, 0x81, 0x11, 0x42, 0x82, 0x03, 0x41, 0x26, 0x3c, 0x53, 0x15, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11884_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11884_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11884 = { .name = "ecdsa_brainpoolp384r1_sha384_11884", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11884_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11884_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11884_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 1129 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11885 for ECDSA, tcId is 1130 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11885_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11885_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11885_sig[] = { 0xf9, 0xb1, 0x27, 0xf0, 0xd8, 0x1e, 0xbc, 0xd1, 0x7b, 0x7b, 0xa0, 0xea, 0x13, 0x1c, 0x66, 0x0d, 0x34, 0x0b, 0x05, 0xce, 0x55, 0x7c, 0x82, 0x16, 0x0e, 0x0f, 0x79, 0x3d, 0xe0, 0x7d, 0x38, 0x17, 0x90, 0x23, 0x94, 0x28, 0x71, 0xac, 0xb7, 0x00, 0x2d, 0xfa, 0xfd, 0xff, 0xfc, 0x8d, 0xea, 0xce, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11885 = { .name = "ecdsa_brainpoolp384r1_sha384_11885", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11885_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11885_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11885_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 1130 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11886 for ECDSA, tcId is 1131 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11886_pubkey[] = { 0x1d, 0x1c, 0x64, 0xf0, 0x68, 0xcf, 0x45, 0xff, 0xa2, 0xa6, 0x3a, 0x81, 0xb7, 0xc1, 0x3f, 0x6b, 0x88, 0x47, 0xa3, 0xe7, 0x7e, 0xf1, 0x4f, 0xe3, 0xdb, 0x7f, 0xca, 0xfe, 0x0c, 0xbd, 0x10, 0xe8, 0xe8, 0x26, 0xe0, 0x34, 0x36, 0xd6, 0x46, 0xaa, 0xef, 0x87, 0xb2, 0xe2, 0x47, 0xd4, 0xaf, 0x1e, 0x01, 0xfb, 0x01, 0x0d, 0x82, 0x3e, 0xaa, 0x83, 0xb2, 0xab, 0x83, 0xef, 0xbb, 0x16, 0x6c, 0x8c, 0xb2, 0x78, 0x65, 0xdf, 0xee, 0x67, 0xfe, 0x4f, 0x31, 0x15, 0xd4, 0xc9, 0x86, 0x25, 0xe7, 0xfb, 0x9e, 0x8d, 0x61, 0x08, 0x18, 0x8b, 0x99, 0x60, 0x44, 0xc4, 0xfc, 0xd2, 0x0a, 0xcb, 0x99, 0x3e, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11886_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11886_sig[] = { 0x1f, 0xc1, 0x15, 0x14, 0x6e, 0x52, 0x1d, 0x7e, 0xa3, 0x3f, 0x3e, 0x12, 0x8e, 0xb0, 0x1d, 0xb0, 0xf6, 0x53, 0xdc, 0x45, 0x85, 0x2c, 0x2b, 0x50, 0x30, 0x1d, 0x63, 0x9b, 0x77, 0x8b, 0x13, 0x38, 0x0e, 0x51, 0xd9, 0x36, 0x65, 0x52, 0xcf, 0x20, 0x49, 0x15, 0x66, 0x05, 0xd5, 0x7a, 0xdf, 0xfc, 0x14, 0x1a, 0x72, 0x12, 0xa9, 0x9a, 0x58, 0xbc, 0x94, 0x7b, 0x0f, 0xed, 0x79, 0x45, 0x77, 0x1f, 0xde, 0x74, 0x7d, 0xdc, 0xd8, 0xc2, 0xe7, 0xd0, 0x72, 0x27, 0xc6, 0xa1, 0xcf, 0x6e, 0x4e, 0x85, 0xaf, 0xe3, 0xd0, 0xf4, 0x7d, 0x12, 0x40, 0x70, 0x08, 0x81, 0x2b, 0xb7, 0x45, 0xdc, 0x0e, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11886 = { .name = "ecdsa_brainpoolp384r1_sha384_11886", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11886_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11886_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11886_sig, .siglen = 96, .result = -1, .comment = "testing point duplication, tcId is 1131 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11887 for ECDSA, tcId is 1132 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11887_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_11887_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11887_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x45, 0x51, 0x23, 0x19, 0x50, 0xb7, 0x5f, 0xc4, 0x40, 0x2d, 0xa1, 0x72, 0x2f, 0xc9, 0xba, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11887 = { .name = "ecdsa_secp256k1_sha256_11887", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11887_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11887_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11887_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 1132 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11888 for ECDSA, tcId is 1133 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11888_pubkey[] = { 0x07, 0x31, 0x0f, 0x90, 0xa9, 0xea, 0xe1, 0x49, 0xa0, 0x84, 0x02, 0xf5, 0x41, 0x94, 0xa0, 0xf7, 0xb4, 0xac, 0x42, 0x7b, 0xf8, 0xd9, 0xbd, 0x6c, 0x76, 0x81, 0x07, 0x1d, 0xc4, 0x7d, 0xc3, 0x62, 0x26, 0xa6, 0xd3, 0x7a, 0xc4, 0x6d, 0x61, 0xfd, 0x60, 0x0c, 0x0b, 0xf1, 0xbf, 0xf8, 0x76, 0x89, 0xed, 0x11, 0x7d, 0xda, 0x6b, 0x0e, 0x59, 0x31, 0x8a, 0xe0, 0x10, 0xa1, 0x97, 0xa2, 0x6c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_11888_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11888_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11888 = { .name = "ecdsa_secp256k1_sha256_11888", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11888_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11888_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11888_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 1133 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11889 for ECDSA, tcId is 1134 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11889_pubkey[] = { 0xbc, 0x97, 0xe7, 0x58, 0x5e, 0xec, 0xad, 0x48, 0xe1, 0x66, 0x83, 0xbc, 0x40, 0x91, 0x70, 0x8e, 0x1a, 0x93, 0x0c, 0x68, 0x3f, 0xc4, 0x70, 0x01, 0xd4, 0xb3, 0x83, 0x59, 0x4f, 0x2c, 0x4e, 0x22, 0x70, 0x59, 0x89, 0xcf, 0x69, 0xda, 0xea, 0xdd, 0x4e, 0x4e, 0x4b, 0x81, 0x51, 0xed, 0x88, 0x8d, 0xfe, 0xc2, 0x0f, 0xb0, 0x17, 0x28, 0xd8, 0x9d, 0x56, 0xb3, 0xf3, 0x8f, 0x2a, 0xe9, 0xc8, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_11889_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11889_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11889 = { .name = "ecdsa_secp256k1_sha256_11889", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11889_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11889_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11889_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 1134 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11890 for ECDSA, tcId is 1135 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11890_pubkey[] = { 0x44, 0xad, 0x33, 0x9a, 0xfb, 0xc2, 0x1e, 0x9a, 0xbf, 0x7b, 0x60, 0x2a, 0x5c, 0xa5, 0x35, 0xea, 0x37, 0x81, 0x35, 0xb6, 0xd1, 0x0d, 0x81, 0x31, 0x0b, 0xdd, 0x82, 0x93, 0xd1, 0xdf, 0x32, 0x52, 0xb6, 0x3f, 0xf7, 0xd0, 0x77, 0x47, 0x70, 0xf8, 0xfe, 0x1d, 0x17, 0x22, 0xfa, 0x83, 0xac, 0xd0, 0x2f, 0x43, 0x4e, 0x4f, 0xc1, 0x10, 0xa0, 0xcc, 0x8f, 0x6d, 0xdd, 0xd3, 0x7d, 0x56, 0xc4, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_11890_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11890_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3e, 0x9a, 0x75, 0x82, 0x88, 0x60, 0x89, 0xc6, 0x2f, 0xb8, 0x40, 0xcf, 0x3b, 0x83, 0x06, 0x1c, 0xd1, 0xcf, 0xf3, 0xae, 0x43, 0x41, 0x80, 0x8b, 0xb5, 0xbd, 0xee, 0x61, 0x91, 0x17, 0x41, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11890 = { .name = "ecdsa_secp256k1_sha256_11890", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11890_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11890_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11890_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 1135 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11891 for ECDSA, tcId is 1136 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11891_pubkey[] = { 0x12, 0x60, 0xc2, 0x12, 0x2c, 0x9e, 0x24, 0x4e, 0x1a, 0xf5, 0x15, 0x1b, 0xed, 0xe0, 0xc3, 0xae, 0x23, 0xb5, 0x4d, 0x7c, 0x59, 0x68, 0x81, 0xd3, 0xee, 0xba, 0xd2, 0x1f, 0x37, 0xdd, 0x87, 0x8c, 0x5c, 0x9a, 0x0c, 0x1a, 0x9a, 0xde, 0x76, 0x73, 0x7a, 0x88, 0x11, 0xbd, 0x6a, 0x7f, 0x92, 0x87, 0xc9, 0x78, 0xee, 0x39, 0x6a, 0xa8, 0x9c, 0x11, 0xe4, 0x72, 0x29, 0xd2, 0xcc, 0xb5, 0x52, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_11891_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11891_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x24, 0x23, 0x8e, 0x70, 0xb4, 0x31, 0xb1, 0xa6, 0x4e, 0xfd, 0xf9, 0x03, 0x26, 0x69, 0x93, 0x9d, 0x4b, 0x77, 0xf2, 0x49, 0x50, 0x3f, 0xc6, 0x90, 0x5f, 0xeb, 0x75, 0x40, 0xde, 0xa3, 0xe6, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11891 = { .name = "ecdsa_secp256k1_sha256_11891", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11891_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11891_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11891_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 1136 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11892 for ECDSA, tcId is 1137 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11892_pubkey[] = { 0x18, 0x77, 0x04, 0x5b, 0xe2, 0x5d, 0x34, 0xa1, 0xd0, 0x60, 0x0f, 0x9d, 0x5c, 0x00, 0xd0, 0x64, 0x5a, 0x2a, 0x54, 0x37, 0x9b, 0x6c, 0xee, 0xfa, 0xd2, 0xe6, 0xbf, 0x5c, 0x2a, 0x33, 0x52, 0xce, 0x82, 0x1a, 0x53, 0x2c, 0xc1, 0x75, 0x1e, 0xe1, 0xd3, 0x6d, 0x41, 0xc3, 0xd6, 0xab, 0x4e, 0x9b, 0x14, 0x3e, 0x44, 0xec, 0x46, 0xd7, 0x34, 0x78, 0xea, 0x6a, 0x79, 0xa5, 0xc0, 0xe5, 0x41, 0x59, }; static const unsigned char ecdsa_secp256k1_sha256_11892_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11892_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11892 = { .name = "ecdsa_secp256k1_sha256_11892", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11892_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11892_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11892_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 1137 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11893 for ECDSA, tcId is 1138 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11893_pubkey[] = { 0x45, 0x54, 0x39, 0xfc, 0xc3, 0xd2, 0xde, 0xec, 0xed, 0xde, 0xae, 0xce, 0x60, 0xe7, 0xbd, 0x17, 0x30, 0x4f, 0x36, 0xeb, 0xb6, 0x02, 0xad, 0xf5, 0xa2, 0x2e, 0x0b, 0x8f, 0x1d, 0xb4, 0x6a, 0x50, 0xae, 0xc3, 0x8f, 0xb2, 0xba, 0xf2, 0x21, 0xe9, 0xa8, 0xd1, 0x88, 0x7c, 0x7b, 0xf6, 0x22, 0x2d, 0xd1, 0x83, 0x46, 0x34, 0xe7, 0x72, 0x63, 0x31, 0x5a, 0xf6, 0xd2, 0x36, 0x09, 0xd0, 0x4f, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_11893_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11893_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11893 = { .name = "ecdsa_secp256k1_sha256_11893", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11893_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11893_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11893_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 1138 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11894 for ECDSA, tcId is 1139 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11894_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_11894_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11894_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11894 = { .name = "ecdsa_secp256k1_sha256_11894", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11894_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11894_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11894_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 1139 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11895 for ECDSA, tcId is 1140 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11895_pubkey[] = { 0x2e, 0x1f, 0x46, 0x6b, 0x02, 0x4c, 0x0c, 0x3a, 0xce, 0x24, 0x37, 0xde, 0x09, 0x12, 0x7f, 0xed, 0x04, 0xb7, 0x06, 0xf9, 0x4b, 0x19, 0xa2, 0x1b, 0xb1, 0xc2, 0xac, 0xf3, 0x5c, 0xec, 0xe7, 0x18, 0x04, 0x49, 0xae, 0x35, 0x23, 0xd7, 0x25, 0x34, 0xe9, 0x64, 0x97, 0x2c, 0xfd, 0x3b, 0x38, 0xaf, 0x0b, 0xdd, 0xd9, 0x61, 0x9e, 0x5a, 0xf2, 0x23, 0xe4, 0xd1, 0xa4, 0x0f, 0x34, 0xcf, 0x9f, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_11895_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11895_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11895 = { .name = "ecdsa_secp256k1_sha256_11895", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11895_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11895_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11895_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 1140 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11896 for ECDSA, tcId is 1141 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11896_pubkey[] = { 0xdd, 0xa9, 0x5d, 0x7b, 0x06, 0x98, 0xde, 0x5d, 0x2d, 0x0b, 0x4f, 0x00, 0x34, 0xdb, 0xe3, 0x5b, 0x50, 0xf9, 0x78, 0xfc, 0xc5, 0x18, 0xa8, 0x4a, 0xbf, 0x9c, 0x99, 0xef, 0xd9, 0x6a, 0x25, 0x30, 0x5a, 0xdc, 0x08, 0xd6, 0xa6, 0x3d, 0xbe, 0x83, 0x1a, 0xb9, 0x9c, 0xd9, 0x14, 0x6e, 0x3c, 0x4c, 0x45, 0x49, 0x2a, 0xd1, 0x95, 0x21, 0x61, 0x25, 0x42, 0x25, 0x6d, 0x6a, 0xf6, 0x0e, 0x78, 0x88, }; static const unsigned char ecdsa_secp256k1_sha256_11896_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11896_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x49, 0x17, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11896 = { .name = "ecdsa_secp256k1_sha256_11896", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11896_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11896_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11896_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 1141 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11897 for ECDSA, tcId is 1142 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11897_pubkey[] = { 0x02, 0xef, 0x4d, 0x6d, 0x6c, 0xfd, 0x5a, 0x94, 0xf1, 0xd7, 0x78, 0x42, 0x26, 0xe3, 0xe2, 0xa6, 0xc0, 0xa4, 0x36, 0xc5, 0x58, 0x39, 0x61, 0x9f, 0x38, 0xfb, 0x44, 0x72, 0xb5, 0xf9, 0xee, 0x77, 0x7e, 0xb4, 0xac, 0xd4, 0xee, 0xbd, 0xa5, 0xcd, 0x72, 0x87, 0x5f, 0xfd, 0x2a, 0x2f, 0x26, 0x22, 0x9c, 0x2d, 0xc6, 0xb4, 0x65, 0x00, 0x91, 0x9a, 0x43, 0x2c, 0x86, 0x73, 0x9f, 0x3a, 0xe8, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_11897_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11897_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8b, 0x16, 0x2c, 0x58, 0xb1, 0x62, 0xc5, 0x8a, 0x1b, 0x24, 0x29, 0x73, 0x85, 0x3e, 0x16, 0xdb, 0x75, 0xc8, 0xa1, 0xa7, 0x1d, 0xa4, 0xd3, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11897 = { .name = "ecdsa_secp256k1_sha256_11897", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11897_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11897_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11897_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 1142 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11898 for ECDSA, tcId is 1143 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11898_pubkey[] = { 0x46, 0x4f, 0x4f, 0xf7, 0x15, 0x72, 0x9c, 0xae, 0x50, 0x72, 0xca, 0x3b, 0xd8, 0x01, 0xd3, 0x19, 0x5b, 0x67, 0xae, 0xc6, 0x5e, 0x9b, 0x01, 0xaa, 0xd2, 0x0a, 0x29, 0x43, 0xdc, 0xbc, 0xb5, 0x84, 0xb1, 0xaf, 0xd2, 0x9d, 0x31, 0xa3, 0x9a, 0x11, 0xd5, 0x70, 0xaa, 0x15, 0x97, 0x43, 0x9b, 0x3b, 0x2d, 0x19, 0x71, 0xbf, 0x2f, 0x1a, 0xbf, 0x15, 0x43, 0x2d, 0x02, 0x07, 0xb1, 0x0d, 0x1d, 0x08, }; static const unsigned char ecdsa_secp256k1_sha256_11898_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11898_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcc, 0xfc, 0xbc, 0x51, 0x03, 0xd0, 0xda, 0x26, 0x74, 0x77, 0xd1, 0x79, 0x14, 0x61, 0xcf, 0x2a, 0xa4, 0x4b, 0xf9, 0xd4, 0x31, 0x98, 0xf7, 0x95, 0x07, 0xbd, 0x87, 0x79, 0xd6, 0x9a, 0x13, 0x10, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11898 = { .name = "ecdsa_secp256k1_sha256_11898", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11898_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11898_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11898_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 1143 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11899 for ECDSA, tcId is 1144 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11899_pubkey[] = { 0x15, 0x7f, 0x8f, 0xdd, 0xf3, 0x73, 0xeb, 0x5f, 0x49, 0xcf, 0xcf, 0x10, 0xd8, 0xb8, 0x53, 0xcf, 0x91, 0xcb, 0xcd, 0x7d, 0x66, 0x5c, 0x35, 0x22, 0xba, 0x7d, 0xd7, 0x38, 0xdd, 0xb7, 0x9a, 0x4c, 0xde, 0xad, 0xf1, 0xa5, 0xc4, 0x48, 0xea, 0x3c, 0x9f, 0x41, 0x91, 0xa8, 0x99, 0x9a, 0xbf, 0xcc, 0x75, 0x7a, 0xc6, 0xd6, 0x45, 0x67, 0xef, 0x07, 0x2c, 0x47, 0xfe, 0xc6, 0x13, 0x44, 0x3b, 0x8f, }; static const unsigned char ecdsa_secp256k1_sha256_11899_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11899_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xfc, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6f, 0x90, 0x6e, 0xd8, 0xe4, 0x26, 0xf7, 0xb1, 0x96, 0x8c, 0x35, 0xa2, 0x04, 0x23, 0x6a, 0x57, 0x97, 0x23, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11899 = { .name = "ecdsa_secp256k1_sha256_11899", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11899_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11899_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11899_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 1144 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11900 for ECDSA, tcId is 1145 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11900_pubkey[] = { 0x09, 0x34, 0xa5, 0x37, 0x46, 0x6c, 0x07, 0x43, 0x0e, 0x2c, 0x48, 0xfe, 0xb9, 0x90, 0xbb, 0x19, 0xfb, 0x78, 0xce, 0xcc, 0x9c, 0xee, 0x42, 0x4e, 0xa4, 0xd1, 0x30, 0x29, 0x1a, 0xa2, 0x37, 0xf0, 0xd4, 0xf9, 0x2d, 0x23, 0xb4, 0x62, 0x80, 0x4b, 0x5b, 0x68, 0xc5, 0x25, 0x58, 0xc0, 0x1c, 0x99, 0x96, 0xdb, 0xf7, 0x27, 0xfc, 0xca, 0xbb, 0xee, 0xdb, 0x96, 0x21, 0xa4, 0x00, 0x53, 0x5a, 0xfa, }; static const unsigned char ecdsa_secp256k1_sha256_11900_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11900_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11900 = { .name = "ecdsa_secp256k1_sha256_11900", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11900_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11900_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11900_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 1145 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11901 for ECDSA, tcId is 1146 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11901_pubkey[] = { 0xd6, 0xef, 0x20, 0xbe, 0x66, 0xc8, 0x93, 0xf7, 0x41, 0xa9, 0xbf, 0x90, 0xd9, 0xb7, 0x46, 0x75, 0xd1, 0xc2, 0xa3, 0x12, 0x96, 0x39, 0x7a, 0xcb, 0x3e, 0xf1, 0x74, 0xfd, 0x0b, 0x30, 0x0c, 0x65, 0x4a, 0x0c, 0x95, 0x47, 0x8c, 0xa0, 0x03, 0x99, 0x16, 0x2d, 0x7f, 0x0f, 0x2d, 0xc8, 0x9e, 0xfd, 0xc2, 0xb2, 0x8a, 0x30, 0xfb, 0xab, 0xe2, 0x85, 0x85, 0x72, 0x95, 0xa4, 0xb0, 0xc4, 0xe2, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_11901_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11901_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x26, 0x78, 0x32, 0x66, 0xe9, 0x0f, 0x43, 0xda, 0xfe, 0x5c, 0xd9, 0xb3, 0xb0, 0xbe, 0x86, 0xde, 0x22, 0xf9, 0xde, 0x83, 0x67, 0x7d, 0x0f, 0x50, 0x71, 0x3a, 0x46, 0x8e, 0xc7, 0x2f, 0xcf, 0x5d, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11901 = { .name = "ecdsa_secp256k1_sha256_11901", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11901_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11901_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11901_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 1146 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11902 for ECDSA, tcId is 1147 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11902_pubkey[] = { 0xb7, 0x29, 0x1d, 0x14, 0x04, 0xe0, 0xc0, 0xc0, 0x7d, 0xab, 0x93, 0x72, 0x18, 0x9f, 0x4b, 0xd5, 0x8d, 0x2c, 0xea, 0xa8, 0xd1, 0x5e, 0xde, 0x54, 0x4d, 0x95, 0x14, 0x54, 0x5b, 0xa9, 0xee, 0x06, 0x29, 0xc9, 0xa6, 0x3d, 0x5e, 0x30, 0x87, 0x69, 0xcc, 0x30, 0xec, 0x27, 0x6a, 0x41, 0x0e, 0x64, 0x64, 0xa2, 0x7e, 0xea, 0xfd, 0x9e, 0x59, 0x9d, 0xb1, 0x0f, 0x05, 0x3a, 0x4f, 0xe4, 0xa8, 0x29, }; static const unsigned char ecdsa_secp256k1_sha256_11902_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11902_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc1, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11902 = { .name = "ecdsa_secp256k1_sha256_11902", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11902_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11902_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11902_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 1147 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11903 for ECDSA, tcId is 1148 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11903_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_11903_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11903_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11903 = { .name = "ecdsa_secp256k1_sha256_11903", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11903_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11903_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11903_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 1148 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11904 for ECDSA, tcId is 1149 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11904_pubkey[] = { 0xbb, 0x79, 0xf6, 0x18, 0x57, 0xf7, 0x43, 0xbf, 0xa1, 0xb6, 0xe7, 0x11, 0x1c, 0xe4, 0x09, 0x43, 0x77, 0x25, 0x69, 0x69, 0xe4, 0xe1, 0x51, 0x59, 0x12, 0x3d, 0x95, 0x48, 0xac, 0xc3, 0xbe, 0x6c, 0x1f, 0x9d, 0x9f, 0x88, 0x60, 0xdc, 0xff, 0xd3, 0xeb, 0x36, 0xdd, 0x6c, 0x31, 0xff, 0x2e, 0x72, 0x26, 0xc2, 0x00, 0x9c, 0x4c, 0x94, 0xd8, 0xd7, 0xd2, 0xb5, 0x68, 0x6b, 0xf7, 0xab, 0xd6, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_11904_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11904_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11904 = { .name = "ecdsa_secp256k1_sha256_11904", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11904_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11904_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11904_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 1149 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11905 for ECDSA, tcId is 1150 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11905_pubkey[] = { 0xd5, 0x33, 0xb7, 0x89, 0xa4, 0xaf, 0x89, 0x0f, 0xa7, 0xa8, 0x2a, 0x1f, 0xae, 0x58, 0xc4, 0x04, 0xf9, 0xa6, 0x2a, 0x50, 0xb4, 0x9a, 0xda, 0xfa, 0xb3, 0x49, 0xc5, 0x13, 0xb4, 0x15, 0x08, 0x74, 0x01, 0xb4, 0x17, 0x1b, 0x80, 0x3e, 0x76, 0xb3, 0x4a, 0x98, 0x61, 0xe1, 0x0f, 0x7b, 0xc2, 0x89, 0xa0, 0x66, 0xfd, 0x01, 0xbd, 0x29, 0xf8, 0x4c, 0x98, 0x7a, 0x10, 0xa5, 0xfb, 0x18, 0xc2, 0xd4, }; static const unsigned char ecdsa_secp256k1_sha256_11905_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11905_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11905 = { .name = "ecdsa_secp256k1_sha256_11905", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11905_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11905_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11905_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 1150 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11906 for ECDSA, tcId is 1151 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11906_pubkey[] = { 0x3a, 0x31, 0x50, 0x79, 0x8c, 0x8a, 0xf6, 0x9d, 0x1e, 0x6e, 0x98, 0x1f, 0x3a, 0x45, 0x40, 0x2b, 0xa1, 0xd7, 0x32, 0xf4, 0xbe, 0x83, 0x30, 0xc5, 0x16, 0x4f, 0x49, 0xe1, 0x0e, 0xc5, 0x55, 0xb4, 0x22, 0x1b, 0xd8, 0x42, 0xbc, 0x5e, 0x4d, 0x97, 0xef, 0xf3, 0x71, 0x65, 0xf6, 0x0e, 0x39, 0x98, 0xa4, 0x24, 0xd7, 0x2a, 0x45, 0x0c, 0xf9, 0x5e, 0xa4, 0x77, 0xc7, 0x82, 0x87, 0xd0, 0x34, 0x3a, }; static const unsigned char ecdsa_secp256k1_sha256_11906_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11906_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11906 = { .name = "ecdsa_secp256k1_sha256_11906", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11906_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11906_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11906_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 1151 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11907 for ECDSA, tcId is 1152 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11907_pubkey[] = { 0x3b, 0x37, 0xdf, 0x5f, 0xb3, 0x47, 0xc6, 0x9a, 0x0f, 0x17, 0xd8, 0x5c, 0x0c, 0x7c, 0xa8, 0x37, 0x36, 0x88, 0x3a, 0x82, 0x5e, 0x13, 0x14, 0x3d, 0x0f, 0xcf, 0xc8, 0x10, 0x1e, 0x85, 0x1e, 0x80, 0x0d, 0xe3, 0xc0, 0x90, 0xb6, 0xca, 0x21, 0xba, 0x54, 0x35, 0x17, 0x33, 0x0c, 0x04, 0xb1, 0x2f, 0x94, 0x8c, 0x6b, 0xad, 0xf1, 0x4a, 0x63, 0xab, 0xff, 0xdf, 0x4e, 0xf8, 0xc7, 0x53, 0x70, 0x26, }; static const unsigned char ecdsa_secp256k1_sha256_11907_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11907_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa0, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x57, 0x6e, 0x73, 0x57, 0xa4, 0x50, 0x1d, 0xdf, 0xe9, 0x2f, 0x46, 0x68, 0x1b, 0x20, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11907 = { .name = "ecdsa_secp256k1_sha256_11907", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11907_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11907_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11907_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 1152 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11908 for ECDSA, tcId is 1153 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11908_pubkey[] = { 0xfe, 0xb5, 0x16, 0x3b, 0x0e, 0xce, 0x30, 0xff, 0x3e, 0x03, 0xc7, 0xd5, 0x5c, 0x43, 0x80, 0xfa, 0x2f, 0xa8, 0x1e, 0xe2, 0xc0, 0x35, 0x49, 0x42, 0xff, 0x6f, 0x08, 0xc9, 0x9d, 0x0c, 0xd8, 0x2c, 0xe8, 0x7d, 0xe0, 0x5e, 0xe1, 0xbd, 0xa0, 0x89, 0xd3, 0xe4, 0xe2, 0x48, 0xfa, 0x0f, 0x72, 0x11, 0x02, 0xac, 0xff, 0xfd, 0xf5, 0x0e, 0x65, 0x4b, 0xe2, 0x81, 0x43, 0x39, 0x99, 0xdf, 0x89, 0x7e, }; static const unsigned char ecdsa_secp256k1_sha256_11908_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11908_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11908 = { .name = "ecdsa_secp256k1_sha256_11908", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11908_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11908_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11908_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 1153 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11909 for ECDSA, tcId is 1154 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11909_pubkey[] = { 0x23, 0x8c, 0xed, 0x00, 0x1c, 0xf2, 0x2b, 0x88, 0x53, 0xe0, 0x2e, 0xdc, 0x89, 0xcb, 0xec, 0xa5, 0x05, 0x0b, 0xa7, 0xe0, 0x42, 0xa7, 0xa7, 0x7f, 0x93, 0x82, 0xcd, 0x41, 0x49, 0x22, 0x89, 0x76, 0x40, 0x68, 0x3d, 0x30, 0x94, 0x64, 0x38, 0x40, 0xf2, 0x95, 0x89, 0x0a, 0xa4, 0xc1, 0x8a, 0xa3, 0x9b, 0x41, 0xd7, 0x7d, 0xd0, 0xfb, 0x3b, 0xb2, 0x70, 0x0e, 0x4f, 0x9e, 0xc2, 0x84, 0xff, 0xc2, }; static const unsigned char ecdsa_secp256k1_sha256_11909_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11909_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11909 = { .name = "ecdsa_secp256k1_sha256_11909", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11909_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11909_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11909_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 1154 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11910 for ECDSA, tcId is 1155 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11910_pubkey[] = { 0x96, 0x1c, 0xf6, 0x48, 0x17, 0xc0, 0x6c, 0x0e, 0x51, 0xb3, 0xc2, 0x73, 0x6c, 0x92, 0x2f, 0xde, 0x18, 0xbd, 0x8c, 0x49, 0x06, 0xfc, 0xd7, 0xf5, 0xef, 0x66, 0xc4, 0x67, 0x85, 0x08, 0xf3, 0x5e, 0xd2, 0xc5, 0xd1, 0x81, 0x68, 0xcf, 0xbe, 0x70, 0xf2, 0xf1, 0x23, 0xbd, 0x74, 0x19, 0x23, 0x2b, 0xb9, 0x2d, 0xd6, 0x91, 0x13, 0xe2, 0x94, 0x10, 0x61, 0x88, 0x94, 0x81, 0xc5, 0xa0, 0x27, 0xbf, }; static const unsigned char ecdsa_secp256k1_sha256_11910_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11910_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11910 = { .name = "ecdsa_secp256k1_sha256_11910", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11910_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11910_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11910_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 1155 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11911 for ECDSA, tcId is 1156 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11911_pubkey[] = { 0x13, 0x68, 0x1e, 0xae, 0x16, 0x8c, 0xd4, 0xea, 0x7c, 0xf2, 0xe2, 0xa4, 0x5d, 0x05, 0x27, 0x42, 0xd1, 0x0a, 0x9f, 0x64, 0xe7, 0x96, 0x86, 0x7d, 0xbd, 0xcb, 0x82, 0x9f, 0xe0, 0xb1, 0x02, 0x88, 0x16, 0x52, 0x87, 0x60, 0xd1, 0x77, 0x37, 0x6c, 0x09, 0xdf, 0x79, 0xde, 0x39, 0x55, 0x7c, 0x32, 0x9c, 0xc1, 0x75, 0x35, 0x17, 0xac, 0xff, 0xe8, 0xfa, 0x2e, 0xc2, 0x98, 0x02, 0x6b, 0x83, 0x84, }; static const unsigned char ecdsa_secp256k1_sha256_11911_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11911_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa9, 0xd1, 0xc9, 0xe8, 0x99, 0xca, 0x30, 0x6a, 0xd2, 0x7f, 0xe1, 0x94, 0x5d, 0xe0, 0x24, 0x2b, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11911 = { .name = "ecdsa_secp256k1_sha256_11911", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11911_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11911_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11911_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 1156 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11912 for ECDSA, tcId is 1157 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11912_pubkey[] = { 0x5a, 0xa7, 0xab, 0xfd, 0xb6, 0xb4, 0x08, 0x6d, 0x54, 0x33, 0x25, 0xe5, 0xd7, 0x9c, 0x6e, 0x95, 0xce, 0x42, 0xf8, 0x66, 0xd2, 0xbb, 0x84, 0x90, 0x96, 0x33, 0xa0, 0x4b, 0xb1, 0xaa, 0x31, 0xc2, 0x91, 0xc8, 0x00, 0x88, 0x79, 0x49, 0x05, 0xe1, 0xda, 0x33, 0x33, 0x6d, 0x87, 0x4e, 0x2f, 0x91, 0xcc, 0xf4, 0x5c, 0xc5, 0x91, 0x85, 0xbe, 0xde, 0x5d, 0xd6, 0xf3, 0xf7, 0xac, 0xaa, 0xe1, 0x8b, }; static const unsigned char ecdsa_secp256k1_sha256_11912_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11912_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe9, 0x1e, 0x1b, 0xa6, 0xba, 0x89, 0x86, 0x20, 0xa4, 0x6b, 0xcb, 0x51, 0xdc, 0x0b, 0x8b, 0x4a, 0xd1, 0xdc, 0x35, 0xda, 0xd8, 0x92, 0xc4, 0x55, 0x2d, 0x18, 0x47, 0xb2, 0xce, 0x44, 0x46, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11912 = { .name = "ecdsa_secp256k1_sha256_11912", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11912_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11912_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11912_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1157 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11913 for ECDSA, tcId is 1158 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11913_pubkey[] = { 0x00, 0x27, 0x77, 0x91, 0xb3, 0x05, 0xa4, 0x5b, 0x2b, 0x39, 0x59, 0x0b, 0x2f, 0x05, 0xd3, 0x39, 0x2a, 0x6c, 0x81, 0x82, 0xce, 0xf4, 0xeb, 0x54, 0x01, 0x20, 0xe0, 0xf5, 0xc2, 0x06, 0xc3, 0xe4, 0x64, 0x10, 0x82, 0x33, 0xfb, 0x0b, 0x8c, 0x3a, 0xc8, 0x92, 0xd7, 0x9e, 0xf8, 0xe0, 0xfb, 0xf9, 0x2e, 0xd1, 0x33, 0xad, 0xdb, 0x45, 0x54, 0x27, 0x01, 0x32, 0x58, 0x4d, 0xc5, 0x2e, 0xef, 0x41, }; static const unsigned char ecdsa_secp256k1_sha256_11913_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11913_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe3, 0x6b, 0xf0, 0xce, 0xc0, 0x6d, 0x9b, 0x84, 0x1d, 0xa8, 0x13, 0x32, 0x81, 0x2f, 0x74, 0xf3, 0x0b, 0xba, 0xec, 0x9f, 0x20, 0x23, 0x19, 0x20, 0x6c, 0x6f, 0x0b, 0x8a, 0x0a, 0x40, 0x0f, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11913 = { .name = "ecdsa_secp256k1_sha256_11913", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11913_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11913_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11913_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1158 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11914 for ECDSA, tcId is 1159 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11914_pubkey[] = { 0x6e, 0xfa, 0x09, 0x2b, 0x68, 0xde, 0x94, 0x60, 0xf0, 0xbc, 0xc9, 0x19, 0x00, 0x5a, 0x5f, 0x6e, 0x80, 0xe1, 0x9d, 0xe9, 0x89, 0x68, 0xbe, 0x3c, 0xd2, 0xc7, 0x70, 0xa9, 0x94, 0x9b, 0xfb, 0x1a, 0xc7, 0x5e, 0x6e, 0x50, 0x87, 0xd6, 0x55, 0x0d, 0x5f, 0x9b, 0xeb, 0x1e, 0x79, 0xe5, 0x02, 0x93, 0x07, 0xbc, 0x25, 0x52, 0x35, 0xe2, 0xd5, 0xdc, 0x99, 0x24, 0x1a, 0xc3, 0xab, 0x88, 0x6c, 0x49, }; static const unsigned char ecdsa_secp256k1_sha256_11914_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11914_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xea, 0x26, 0xb5, 0x7a, 0xf8, 0x84, 0xb6, 0xc0, 0x6e, 0x34, 0x8e, 0xfe, 0x13, 0x9c, 0x1e, 0x4e, 0x9e, 0xc9, 0x51, 0x8d, 0x60, 0xc3, 0x40, 0xf6, 0xba, 0xc7, 0xd2, 0x78, 0xca, 0x08, 0xd8, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11914 = { .name = "ecdsa_secp256k1_sha256_11914", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11914_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11914_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11914_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1159 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11915 for ECDSA, tcId is 1160 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11915_pubkey[] = { 0x72, 0xd4, 0xa1, 0x9c, 0x4f, 0x9d, 0x2c, 0xf5, 0x84, 0x8e, 0xa4, 0x04, 0x45, 0xb7, 0x0d, 0x46, 0x96, 0xb5, 0xf0, 0x2d, 0x63, 0x2c, 0x0c, 0x65, 0x4c, 0xc7, 0xd7, 0xee, 0xb0, 0xc6, 0xd0, 0x58, 0xe8, 0xc4, 0xcd, 0x99, 0x43, 0xe4, 0x59, 0x17, 0x4c, 0x7a, 0xc0, 0x1f, 0xa7, 0x42, 0x19, 0x8e, 0x47, 0xe6, 0xc1, 0x9a, 0x6b, 0xdb, 0x0c, 0x4f, 0x6c, 0x23, 0x78, 0x31, 0xc1, 0xb3, 0xf9, 0x42, }; static const unsigned char ecdsa_secp256k1_sha256_11915_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11915_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x5b, 0x1d, 0x27, 0xa7, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9d, 0x9e, 0xf3, 0xb9, 0xfb, 0x58, 0x38, 0x54, 0x18, 0xd9, 0xc9, 0x82, 0x10, 0x50, 0x77, 0xd1, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11915 = { .name = "ecdsa_secp256k1_sha256_11915", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11915_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11915_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11915_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1160 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11916 for ECDSA, tcId is 1161 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11916_pubkey[] = { 0x2a, 0x8e, 0xa2, 0xf5, 0x0d, 0xcc, 0xed, 0x0c, 0x21, 0x75, 0x75, 0xbd, 0xfa, 0x7c, 0xd4, 0x7d, 0x1c, 0x6f, 0x10, 0x00, 0x41, 0xec, 0x0e, 0x35, 0x51, 0x27, 0x94, 0xc1, 0xbe, 0x7e, 0x74, 0x02, 0x58, 0xf8, 0xc1, 0x71, 0x22, 0xed, 0x30, 0x3f, 0xda, 0x71, 0x43, 0xeb, 0x58, 0xbe, 0xde, 0x70, 0x29, 0x5b, 0x65, 0x32, 0x66, 0x01, 0x3b, 0x0b, 0x0e, 0xbd, 0x3f, 0x05, 0x31, 0x37, 0xf6, 0xec, }; static const unsigned char ecdsa_secp256k1_sha256_11916_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11916_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd2, 0x7a, 0x76, 0x94, 0xc1, 0x46, 0x24, 0x4a, 0x5a, 0xd0, 0xbd, 0x06, 0x36, 0xd9, 0xe1, 0x2a, 0xbe, 0x68, 0x78, 0x97, 0xe8, 0xe9, 0x99, 0x8d, 0xdb, 0xd4, 0xe5, 0x9a, 0x78, 0x52, 0x0d, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11916 = { .name = "ecdsa_secp256k1_sha256_11916", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11916_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11916_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11916_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1161 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11917 for ECDSA, tcId is 1162 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11917_pubkey[] = { 0x88, 0xde, 0x68, 0x9c, 0xe9, 0xaf, 0x1e, 0x94, 0xbe, 0x6a, 0x20, 0x89, 0xc8, 0xa8, 0xb1, 0x25, 0x3f, 0xfd, 0xbb, 0x6c, 0x8e, 0x9c, 0x86, 0x24, 0x9b, 0xa2, 0x20, 0x00, 0x1a, 0x4a, 0xd3, 0xb8, 0x0c, 0x49, 0x98, 0xe5, 0x48, 0x42, 0xf4, 0x13, 0xb9, 0xed, 0xb1, 0x82, 0x5a, 0xcb, 0xb6, 0x33, 0x5e, 0x81, 0xe4, 0xd1, 0x84, 0xb2, 0xb0, 0x1c, 0x8b, 0xeb, 0xdc, 0x85, 0xd1, 0xf2, 0x89, 0x46, }; static const unsigned char ecdsa_secp256k1_sha256_11917_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11917_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xa4, 0xf4, 0xed, 0x29, 0x82, 0x8c, 0x48, 0x94, 0xb5, 0xa1, 0x7a, 0x0c, 0x6d, 0xb3, 0xc2, 0x56, 0xc2, 0x22, 0x14, 0x49, 0x22, 0x8a, 0x92, 0xdf, 0xf7, 0xd7, 0x6c, 0xa8, 0x20, 0x6d, 0xd8, 0xdd, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11917 = { .name = "ecdsa_secp256k1_sha256_11917", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11917_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11917_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11917_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1162 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11918 for ECDSA, tcId is 1163 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11918_pubkey[] = { 0xfe, 0xa2, 0xd3, 0x1f, 0x70, 0xf9, 0x0d, 0x5f, 0xb3, 0xe0, 0x0e, 0x18, 0x6a, 0xc4, 0x2a, 0xb3, 0xc1, 0x61, 0x5c, 0xee, 0x71, 0x4e, 0x0b, 0x4e, 0x11, 0x31, 0xb3, 0xd4, 0xd8, 0x22, 0x5b, 0xf7, 0xb0, 0x37, 0xa1, 0x8d, 0xf2, 0xac, 0x15, 0x34, 0x3f, 0x30, 0xf7, 0x40, 0x67, 0xdd, 0xf2, 0x9e, 0x81, 0x7d, 0x5f, 0x77, 0xf8, 0xdc, 0xe0, 0x57, 0x14, 0xda, 0x59, 0xc0, 0x94, 0xf0, 0xcd, 0xa9, }; static const unsigned char ecdsa_secp256k1_sha256_11918_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11918_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x69, 0x4c, 0x14, 0x62, 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x09, 0xe6, 0x0e, 0x68, 0xb9, 0x0d, 0x0b, 0x5e, 0x6c, 0x5d, 0xdd, 0xd0, 0xcb, 0x69, 0x4d, 0x87, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11918 = { .name = "ecdsa_secp256k1_sha256_11918", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11918_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11918_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11918_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1163 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11919 for ECDSA, tcId is 1164 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11919_pubkey[] = { 0x72, 0x58, 0x91, 0x1e, 0x3d, 0x42, 0x33, 0x49, 0x16, 0x64, 0x79, 0xdb, 0xe0, 0xb8, 0x34, 0x1a, 0xf7, 0xfb, 0xd0, 0x3d, 0x0a, 0x7e, 0x10, 0xed, 0xcc, 0xb3, 0x6b, 0x6c, 0xee, 0xa5, 0xa3, 0xdb, 0x17, 0xac, 0x2b, 0x89, 0x92, 0x79, 0x11, 0x28, 0xfa, 0x3b, 0x96, 0xdc, 0x2f, 0xbd, 0x4c, 0xa3, 0xbf, 0xa7, 0x82, 0xef, 0x28, 0x32, 0xfc, 0x66, 0x56, 0x94, 0x3d, 0xb1, 0x8e, 0x73, 0x46, 0xb0, }; static const unsigned char ecdsa_secp256k1_sha256_11919_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11919_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x3d, 0x7f, 0x48, 0x7c, 0x07, 0xbf, 0xc5, 0xf3, 0x08, 0x46, 0x93, 0x8a, 0x3d, 0xce, 0xf6, 0x96, 0x44, 0x47, 0x07, 0xcf, 0x96, 0x77, 0x25, 0x4a, 0x92, 0xb0, 0x6c, 0x63, 0xab, 0x86, 0x7d, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11919 = { .name = "ecdsa_secp256k1_sha256_11919", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11919_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11919_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11919_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1164 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11920 for ECDSA, tcId is 1165 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11920_pubkey[] = { 0x4f, 0x28, 0x46, 0x1d, 0xea, 0x64, 0x47, 0x4d, 0x6b, 0xb3, 0x4d, 0x14, 0x99, 0xc9, 0x7d, 0x37, 0xb9, 0xe9, 0x56, 0x33, 0xdf, 0x1c, 0xee, 0xea, 0xac, 0xd4, 0x50, 0x16, 0xc9, 0x8b, 0x39, 0x14, 0xc8, 0x81, 0x88, 0x10, 0xb8, 0xcc, 0x06, 0xdd, 0xb4, 0x0e, 0x8a, 0x12, 0x61, 0xc5, 0x28, 0xfa, 0xa5, 0x89, 0x45, 0x5d, 0x5a, 0x6d, 0xf9, 0x3b, 0x77, 0xbc, 0x5e, 0x0e, 0x49, 0x3c, 0x74, 0x70, }; static const unsigned char ecdsa_secp256k1_sha256_11920_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11920_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x6c, 0x76, 0x48, 0xfc, 0x0f, 0xbf, 0x8a, 0x06, 0xad, 0xb8, 0xb8, 0x39, 0xf9, 0x7b, 0x4f, 0xf7, 0xa8, 0x00, 0xf1, 0x1b, 0x1e, 0x37, 0xc5, 0x93, 0xb2, 0x61, 0x39, 0x45, 0x99, 0x79, 0x2b, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11920 = { .name = "ecdsa_secp256k1_sha256_11920", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11920_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11920_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11920_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1165 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11921 for ECDSA, tcId is 1166 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11921_pubkey[] = { 0x74, 0xf2, 0xa8, 0x14, 0xfb, 0x5d, 0x8e, 0xca, 0x91, 0xa6, 0x9b, 0x5e, 0x60, 0x71, 0x27, 0x32, 0xb3, 0x93, 0x7d, 0xe3, 0x28, 0x29, 0xbe, 0x97, 0x4e, 0xd7, 0xb6, 0x8c, 0x5c, 0x2f, 0x5d, 0x66, 0xef, 0xf0, 0xf0, 0x7c, 0x56, 0xf9, 0x87, 0xa6, 0x57, 0xf4, 0x21, 0x96, 0x20, 0x5f, 0x58, 0x8c, 0x0f, 0x1d, 0x96, 0xfd, 0x8a, 0x63, 0xa5, 0xf2, 0x38, 0xb4, 0x8f, 0x47, 0x87, 0x88, 0xfe, 0x3b, }; static const unsigned char ecdsa_secp256k1_sha256_11921_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11921_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x9b, 0xe3, 0x63, 0xa2, 0x86, 0xf2, 0x3f, 0x63, 0x22, 0xc2, 0x05, 0x44, 0x9d, 0x32, 0x0b, 0xaa, 0xd4, 0x17, 0x95, 0x3e, 0xcb, 0x70, 0xf6, 0x21, 0x4e, 0x90, 0xd4, 0x9d, 0x7d, 0x1f, 0x26, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11921 = { .name = "ecdsa_secp256k1_sha256_11921", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11921_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11921_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11921_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1166 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11922 for ECDSA, tcId is 1167 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11922_pubkey[] = { 0x19, 0x5b, 0x51, 0xa7, 0xcc, 0x4a, 0x21, 0xb8, 0x27, 0x4a, 0x70, 0xa9, 0x0d, 0xe7, 0x79, 0x81, 0x4c, 0x3c, 0x8c, 0xa3, 0x58, 0x32, 0x82, 0x08, 0xc0, 0x9a, 0x29, 0xf3, 0x36, 0xb8, 0x2d, 0x6a, 0xb2, 0x41, 0x6b, 0x7c, 0x92, 0xff, 0xfd, 0xc2, 0x9c, 0x3b, 0x12, 0x82, 0xdd, 0x2a, 0x77, 0xa4, 0xd0, 0x4d, 0xf7, 0xf7, 0x45, 0x20, 0x47, 0x39, 0x3d, 0x84, 0x99, 0x89, 0xc5, 0xce, 0xe9, 0xad, }; static const unsigned char ecdsa_secp256k1_sha256_11922_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11922_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x29, 0x79, 0x8c, 0x5c, 0x45, 0xbd, 0xf5, 0x8b, 0x4a, 0x7b, 0x2f, 0xdc, 0x2c, 0x46, 0xab, 0x4a, 0xf1, 0x21, 0x8c, 0x7e, 0xeb, 0x9f, 0x0f, 0x27, 0xa8, 0x8f, 0x12, 0x67, 0x67, 0x4d, 0xe3, 0xb0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11922 = { .name = "ecdsa_secp256k1_sha256_11922", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11922_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11922_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11922_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1167 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11923 for ECDSA, tcId is 1168 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11923_pubkey[] = { 0x62, 0x2f, 0xc7, 0x47, 0x32, 0x03, 0x4b, 0xec, 0x2d, 0xdf, 0x3b, 0xc1, 0x6d, 0x34, 0xb3, 0xd1, 0xf7, 0xa3, 0x27, 0xdd, 0x2a, 0x8c, 0x19, 0xba, 0xb4, 0xbb, 0x4f, 0xe3, 0xa2, 0x4b, 0x58, 0xaa, 0x73, 0x6b, 0x2f, 0x2f, 0xae, 0x76, 0xf4, 0xdf, 0xae, 0xcc, 0x90, 0x96, 0x33, 0x3b, 0x01, 0x32, 0x8d, 0x51, 0xeb, 0x3f, 0xda, 0x9c, 0x92, 0x27, 0xe9, 0x0d, 0x0b, 0x44, 0x99, 0x83, 0xc4, 0xf0, }; static const unsigned char ecdsa_secp256k1_sha256_11923_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11923_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0b, 0x70, 0xf2, 0x2c, 0xa2, 0xbb, 0x3c, 0xef, 0xad, 0xca, 0x1a, 0x57, 0x11, 0xfa, 0x3a, 0x59, 0xf4, 0x69, 0x53, 0x85, 0xeb, 0x5a, 0xed, 0xf3, 0x49, 0x5d, 0x0b, 0x6d, 0x00, 0xf8, 0xfd, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11923 = { .name = "ecdsa_secp256k1_sha256_11923", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11923_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11923_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11923_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1168 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11924 for ECDSA, tcId is 1169 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11924_pubkey[] = { 0x1f, 0x7f, 0x85, 0xca, 0xf2, 0xd7, 0x55, 0x0e, 0x7a, 0xf9, 0xb6, 0x50, 0x23, 0xeb, 0xb4, 0xdc, 0xe3, 0x45, 0x03, 0x11, 0x69, 0x23, 0x09, 0xdb, 0x26, 0x99, 0x69, 0xb8, 0x34, 0xb6, 0x11, 0xc7, 0x08, 0x27, 0xf4, 0x5b, 0x78, 0x02, 0x0e, 0xcb, 0xba, 0xf4, 0x84, 0xfd, 0xd5, 0xbf, 0xaa, 0xe6, 0x87, 0x0f, 0x11, 0x84, 0xc2, 0x15, 0x81, 0xba, 0xf6, 0xef, 0x82, 0xbd, 0x7b, 0x53, 0x0f, 0x93, }; static const unsigned char ecdsa_secp256k1_sha256_11924_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11924_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x16, 0xe1, 0xe4, 0x59, 0x45, 0x76, 0x79, 0xdf, 0x5b, 0x94, 0x34, 0xae, 0x23, 0xf4, 0x74, 0xb3, 0xe8, 0xd2, 0xa7, 0x0b, 0xd6, 0xb5, 0xdb, 0xe6, 0x92, 0xba, 0x16, 0xda, 0x01, 0xf1, 0xfb, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11924 = { .name = "ecdsa_secp256k1_sha256_11924", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11924_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11924_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11924_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1169 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11925 for ECDSA, tcId is 1170 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11925_pubkey[] = { 0x49, 0xc1, 0x97, 0xdc, 0x80, 0xad, 0x1d, 0xa4, 0x7a, 0x43, 0x42, 0xb9, 0x38, 0x93, 0xe8, 0xe1, 0xfb, 0x0b, 0xb9, 0x4f, 0xc3, 0x3a, 0x83, 0xe7, 0x83, 0xc0, 0x0b, 0x24, 0xc7, 0x81, 0x37, 0x7a, 0xef, 0xc2, 0x0d, 0xa9, 0x2b, 0xac, 0x76, 0x29, 0x51, 0xf7, 0x24, 0x74, 0xbe, 0xcc, 0x73, 0x4d, 0x4c, 0xc2, 0x2b, 0xa8, 0x1b, 0x89, 0x5e, 0x28, 0x2f, 0xda, 0xc4, 0xdf, 0x7a, 0xf0, 0xf3, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_11925_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11925_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x22, 0x52, 0xd6, 0x85, 0xe8, 0x31, 0xb6, 0xcf, 0x09, 0x5e, 0x4f, 0x05, 0x35, 0xee, 0xaf, 0x0d, 0xdd, 0x3b, 0xfa, 0x91, 0xc2, 0x10, 0xc9, 0xd9, 0xdc, 0x17, 0x22, 0x47, 0x02, 0xea, 0xf8, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11925 = { .name = "ecdsa_secp256k1_sha256_11925", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11925_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11925_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11925_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1170 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11926 for ECDSA, tcId is 1171 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11926_pubkey[] = { 0xd8, 0xcb, 0x68, 0x51, 0x7b, 0x61, 0x6a, 0x56, 0x40, 0x0a, 0xa3, 0x86, 0x86, 0x35, 0xe5, 0x4b, 0x6f, 0x69, 0x95, 0x98, 0xa2, 0xf6, 0x16, 0x77, 0x57, 0x65, 0x49, 0x80, 0xba, 0xf6, 0xac, 0xbe, 0x7e, 0xc8, 0xcf, 0x44, 0x9c, 0x84, 0x9a, 0xa0, 0x34, 0x61, 0xa3, 0x0e, 0xfa, 0xda, 0x41, 0x45, 0x3c, 0x57, 0xc6, 0xe6, 0xfb, 0xc9, 0x3b, 0xbc, 0x6f, 0xa4, 0x9a, 0xda, 0x6d, 0xc0, 0x55, 0x5c, }; static const unsigned char ecdsa_secp256k1_sha256_11926_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11926_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x75, 0x13, 0x5a, 0xbd, 0x7c, 0x42, 0x5b, 0x60, 0x37, 0x1a, 0x47, 0x7f, 0x09, 0xce, 0x0f, 0x27, 0x4f, 0x64, 0xa8, 0xc6, 0xb0, 0x61, 0xa0, 0x7b, 0x5d, 0x63, 0xe9, 0x3c, 0x65, 0x04, 0x6c, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11926 = { .name = "ecdsa_secp256k1_sha256_11926", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11926_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11926_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11926_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 1171 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11927 for ECDSA, tcId is 1172 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11927_pubkey[] = { 0x03, 0x07, 0x13, 0xfb, 0x63, 0xf2, 0xaa, 0x6f, 0xe2, 0xca, 0xdf, 0x1b, 0x20, 0xef, 0xc2, 0x59, 0xc7, 0x74, 0x45, 0xda, 0xfa, 0x87, 0xda, 0xc3, 0x98, 0xb8, 0x40, 0x65, 0xca, 0x34, 0x7d, 0xf3, 0xb2, 0x27, 0x81, 0x8d, 0xe1, 0xa3, 0x9b, 0x58, 0x9c, 0xb0, 0x71, 0xd8, 0x3e, 0x53, 0x17, 0xcc, 0xcd, 0xc2, 0x33, 0x8e, 0x51, 0xe3, 0x12, 0xfe, 0x31, 0xd8, 0xdc, 0x34, 0xa4, 0x80, 0x17, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_11927_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11927_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11927 = { .name = "ecdsa_secp256k1_sha256_11927", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11927_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11927_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11927_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1172 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11928 for ECDSA, tcId is 1173 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11928_pubkey[] = { 0xba, 0xbb, 0x36, 0x77, 0xb0, 0x95, 0x58, 0x02, 0xd8, 0xe9, 0x29, 0xa4, 0x13, 0x55, 0x64, 0x0e, 0xaf, 0x1e, 0xa1, 0x35, 0x3f, 0x8a, 0x77, 0x13, 0x31, 0xc4, 0x94, 0x6e, 0x34, 0x80, 0xaf, 0xa7, 0x25, 0x2f, 0x19, 0x6c, 0x87, 0xed, 0x3d, 0x2a, 0x59, 0xd3, 0xb1, 0xb5, 0x59, 0x13, 0x7f, 0xed, 0x00, 0x13, 0xfe, 0xce, 0xfc, 0x19, 0xfb, 0x5a, 0x92, 0x68, 0x2b, 0x9b, 0xca, 0x51, 0xb9, 0x50, }; static const unsigned char ecdsa_secp256k1_sha256_11928_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11928_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc1, 0x77, 0x7c, 0x88, 0x53, 0x93, 0x8e, 0x53, 0x62, 0x13, 0xc0, 0x24, 0x64, 0xa9, 0x36, 0x00, 0x0b, 0xa1, 0xe2, 0x1c, 0x0f, 0xc6, 0x20, 0x75, 0xd4, 0x6c, 0x62, 0x4e, 0x23, 0xb5, 0x2f, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11928 = { .name = "ecdsa_secp256k1_sha256_11928", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11928_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11928_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11928_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1173 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11929 for ECDSA, tcId is 1174 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11929_pubkey[] = { 0x1a, 0xab, 0x20, 0x18, 0x79, 0x34, 0x71, 0x11, 0x1a, 0x8a, 0x0e, 0x9b, 0x14, 0x3f, 0xde, 0x02, 0xfc, 0x95, 0x92, 0x07, 0x96, 0xd3, 0xa6, 0x3d, 0xe3, 0x29, 0xb4, 0x24, 0x39, 0x6f, 0xba, 0x60, 0xbb, 0xe4, 0x13, 0x07, 0x05, 0x17, 0x47, 0x92, 0x44, 0x1b, 0x31, 0x8d, 0x3a, 0xa3, 0x1d, 0xfe, 0x85, 0x77, 0x82, 0x1e, 0x9b, 0x44, 0x6e, 0xc5, 0x73, 0xd2, 0x72, 0xe0, 0x36, 0xc4, 0xeb, 0xe9, }; static const unsigned char ecdsa_secp256k1_sha256_11929_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11929_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x30, 0xbb, 0xb7, 0x94, 0xdb, 0x58, 0x83, 0x63, 0xb4, 0x06, 0x79, 0xf6, 0xc1, 0x82, 0xa5, 0x0d, 0x3c, 0xe9, 0x67, 0x9a, 0xcd, 0xd3, 0xff, 0xbe, 0x36, 0xd7, 0x81, 0x3d, 0xac, 0xbd, 0xc8, 0x18, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11929 = { .name = "ecdsa_secp256k1_sha256_11929", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11929_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11929_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11929_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1174 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11930 for ECDSA, tcId is 1175 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11930_pubkey[] = { 0x8c, 0xb0, 0xb9, 0x09, 0x49, 0x9c, 0x83, 0xea, 0x80, 0x6c, 0xd8, 0x85, 0xb1, 0xdd, 0x46, 0x7a, 0x01, 0x19, 0xf0, 0x6a, 0x88, 0xa0, 0x27, 0x6e, 0xb0, 0xcf, 0xda, 0x27, 0x45, 0x35, 0xa8, 0xff, 0x47, 0xb5, 0x42, 0x88, 0x33, 0xbc, 0x3f, 0x2c, 0x8b, 0xf9, 0xd9, 0x04, 0x11, 0x58, 0xcf, 0x33, 0x71, 0x8a, 0x69, 0x96, 0x1c, 0xd0, 0x17, 0x29, 0xbc, 0x00, 0x11, 0xd1, 0xe5, 0x86, 0xab, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_11930_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11930_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2c, 0x37, 0xfd, 0x99, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xce, 0xe7, 0x45, 0x11, 0x0c, 0xb4, 0x5a, 0xb5, 0x58, 0xed, 0x7c, 0x90, 0xc1, 0x5a, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11930 = { .name = "ecdsa_secp256k1_sha256_11930", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11930_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11930_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11930_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1175 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11931 for ECDSA, tcId is 1176 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11931_pubkey[] = { 0x8f, 0x03, 0xcf, 0x1a, 0x42, 0x27, 0x2b, 0xb1, 0x53, 0x27, 0x23, 0x09, 0x3f, 0x72, 0xe6, 0xfe, 0xea, 0xc8, 0x5e, 0x17, 0x00, 0xe9, 0xfb, 0xe9, 0xa6, 0xa2, 0xdd, 0x64, 0x2d, 0x74, 0xbf, 0x5d, 0x3b, 0x89, 0xa7, 0x18, 0x9d, 0xad, 0x8c, 0xf7, 0x5f, 0xc2, 0x2f, 0x6f, 0x15, 0x8a, 0xa2, 0x7f, 0x9c, 0x2c, 0xa0, 0x0d, 0xac, 0xa7, 0x85, 0xbe, 0x33, 0x58, 0xf2, 0xbd, 0xa3, 0x86, 0x2c, 0xa0, }; static const unsigned char ecdsa_secp256k1_sha256_11931_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11931_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x7f, 0xd9, 0x95, 0x62, 0x2c, 0x4f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5d, 0x88, 0x3f, 0xfa, 0xb5, 0xb3, 0x26, 0x52, 0xcc, 0xdc, 0xaa, 0x29, 0x0f, 0xcc, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11931 = { .name = "ecdsa_secp256k1_sha256_11931", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11931_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11931_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11931_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1176 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11932 for ECDSA, tcId is 1177 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11932_pubkey[] = { 0x44, 0xde, 0x3b, 0x9c, 0x7a, 0x57, 0xa8, 0xc9, 0xe8, 0x20, 0x95, 0x27, 0x53, 0x42, 0x1e, 0x7d, 0x98, 0x7b, 0xb3, 0xd7, 0x9f, 0x71, 0xf0, 0x13, 0x80, 0x5c, 0x89, 0x7e, 0x01, 0x8f, 0x8a, 0xce, 0xa2, 0x46, 0x07, 0x58, 0xc8, 0xf9, 0x8d, 0x3f, 0xdc, 0xe1, 0x21, 0xa9, 0x43, 0x65, 0x9e, 0x37, 0x2c, 0x32, 0x6f, 0xff, 0x2e, 0x5f, 0xc2, 0xae, 0x7f, 0xa3, 0xf7, 0x9d, 0xaa, 0xe1, 0x3c, 0x12, }; static const unsigned char ecdsa_secp256k1_sha256_11932_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11932_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xb3, 0x2a, 0xc4, 0x58, 0x9f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbb, 0x10, 0x7f, 0xf5, 0x6b, 0x66, 0x4c, 0xa5, 0x99, 0xb9, 0x54, 0x52, 0x1f, 0x99, 0x72, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11932 = { .name = "ecdsa_secp256k1_sha256_11932", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11932_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11932_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11932_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1177 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11933 for ECDSA, tcId is 1178 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11933_pubkey[] = { 0x6f, 0xb8, 0xb2, 0xb4, 0x8e, 0x33, 0x03, 0x12, 0x68, 0xad, 0x6a, 0x51, 0x74, 0x84, 0xdc, 0x88, 0x39, 0xea, 0x90, 0xf6, 0x66, 0x9e, 0xa0, 0xc7, 0xac, 0x32, 0x33, 0xe2, 0xac, 0x31, 0x39, 0x4a, 0x0a, 0xc8, 0xbb, 0xe7, 0xf7, 0x3c, 0x2f, 0xf4, 0xdf, 0x99, 0x78, 0x72, 0x7a, 0xc1, 0xdf, 0xc2, 0xfd, 0x58, 0x64, 0x7d, 0x20, 0xf3, 0x1f, 0x99, 0x10, 0x53, 0x16, 0xb6, 0x46, 0x71, 0xf2, 0x04, }; static const unsigned char ecdsa_secp256k1_sha256_11933_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11933_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x56, 0x22, 0xc4, 0xfb, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x92, 0x8a, 0x8f, 0x1c, 0x7a, 0xc7, 0xbe, 0xc1, 0x80, 0x8b, 0x9f, 0x61, 0xc0, 0x1e, 0xc3, 0x27, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11933 = { .name = "ecdsa_secp256k1_sha256_11933", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11933_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11933_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11933_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1178 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11934 for ECDSA, tcId is 1179 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11934_pubkey[] = { 0xbe, 0xa7, 0x11, 0x22, 0xa0, 0x48, 0x69, 0x3e, 0x90, 0x5f, 0xf6, 0x02, 0xb3, 0xcf, 0x9d, 0xd1, 0x8a, 0xf6, 0x9b, 0x9f, 0xc9, 0xd8, 0x43, 0x1d, 0x2b, 0x1d, 0xd2, 0x6b, 0x94, 0x2c, 0x95, 0xe6, 0xf4, 0x3c, 0x7b, 0x8b, 0x95, 0xeb, 0x62, 0x08, 0x2c, 0x12, 0xdb, 0x9d, 0xbd, 0xa7, 0xfe, 0x38, 0xe4, 0x5c, 0xbe, 0x4a, 0x48, 0x86, 0x90, 0x7f, 0xb8, 0x1b, 0xdb, 0x0c, 0x5e, 0xa9, 0x24, 0x6c, }; static const unsigned char ecdsa_secp256k1_sha256_11934_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11934_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x44, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x04, 0x10, 0x41, 0x03, 0xb8, 0x78, 0x53, 0xfd, 0x3b, 0x7d, 0x3f, 0x8e, 0x17, 0x51, 0x25, 0xb4, 0x38, 0x2f, 0x25, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11934 = { .name = "ecdsa_secp256k1_sha256_11934", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11934_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11934_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11934_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1179 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11935 for ECDSA, tcId is 1180 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11935_pubkey[] = { 0xda, 0x91, 0x8c, 0x73, 0x1b, 0xa0, 0x6a, 0x20, 0xcb, 0x94, 0xef, 0x33, 0xb7, 0x78, 0xe9, 0x81, 0xa4, 0x04, 0xa3, 0x05, 0xf1, 0x94, 0x1f, 0xe3, 0x36, 0x66, 0xb4, 0x5b, 0x03, 0x35, 0x31, 0x56, 0xe2, 0xbb, 0x26, 0x94, 0xf5, 0x75, 0xb4, 0x51, 0x83, 0xbe, 0x78, 0xe5, 0xc9, 0xb5, 0x21, 0x0b, 0xf3, 0xbf, 0x48, 0x8f, 0xd4, 0xc8, 0x29, 0x45, 0x16, 0xd8, 0x95, 0x72, 0xca, 0x4f, 0x53, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_11935_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11935_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x27, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x39, 0xce, 0x73, 0x9c, 0xe7, 0x05, 0x56, 0x02, 0x98, 0xd1, 0xf2, 0xf0, 0x8d, 0xc4, 0x19, 0xac, 0x27, 0x3a, 0x5b, 0x54, 0xd9, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11935 = { .name = "ecdsa_secp256k1_sha256_11935", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11935_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11935_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11935_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1180 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11936 for ECDSA, tcId is 1181 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11936_pubkey[] = { 0x30, 0x07, 0xe9, 0x2c, 0x39, 0x37, 0xda, 0xde, 0x79, 0x64, 0xdf, 0xa3, 0x5b, 0x0e, 0xff, 0x03, 0x1f, 0x7e, 0xb0, 0x2a, 0xed, 0x0a, 0x03, 0x14, 0x41, 0x11, 0x06, 0xcd, 0xeb, 0x70, 0xfe, 0x3d, 0x5a, 0x75, 0x46, 0xfc, 0x05, 0x52, 0x99, 0x7b, 0x20, 0xe3, 0xd6, 0xf4, 0x13, 0xe7, 0x5e, 0x2c, 0xb6, 0x6e, 0x11, 0x63, 0x22, 0x69, 0x71, 0x14, 0xb7, 0x9b, 0xac, 0x73, 0x4b, 0xfc, 0x4d, 0xc5, }; static const unsigned char ecdsa_secp256k1_sha256_11936_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11936_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb7, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x77, 0x76, 0x88, 0xe6, 0xa1, 0xfe, 0x80, 0x8a, 0x97, 0xa3, 0x48, 0x67, 0x12, 0x22, 0xff, 0x16, 0xb8, 0x63, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11936 = { .name = "ecdsa_secp256k1_sha256_11936", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11936_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11936_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11936_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1181 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11937 for ECDSA, tcId is 1182 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11937_pubkey[] = { 0x60, 0xe7, 0x34, 0xef, 0x56, 0x24, 0xd3, 0xcb, 0xf0, 0xdd, 0xd3, 0x75, 0x01, 0x1b, 0xd6, 0x63, 0xd6, 0xd6, 0xae, 0xbc, 0x64, 0x4e, 0xb5, 0x99, 0xfd, 0xf9, 0x8d, 0xbd, 0xcd, 0x18, 0xce, 0x9b, 0xd2, 0xd9, 0x0b, 0x3a, 0xc3, 0x1f, 0x13, 0x9a, 0xf8, 0x32, 0xcc, 0xcf, 0x6c, 0xcb, 0xbb, 0x2c, 0x6e, 0xa1, 0x1f, 0xa9, 0x73, 0x70, 0xdc, 0x99, 0x06, 0xda, 0x47, 0x4d, 0x7d, 0x8a, 0x75, 0x67, }; static const unsigned char ecdsa_secp256k1_sha256_11937_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11937_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x64, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x06, 0xdd, 0x3a, 0x19, 0xb8, 0xd5, 0xfb, 0x87, 0x52, 0x35, 0x96, 0x3c, 0x59, 0x3b, 0xd2, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11937 = { .name = "ecdsa_secp256k1_sha256_11937", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11937_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11937_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11937_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1182 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11938 for ECDSA, tcId is 1183 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11938_pubkey[] = { 0x85, 0xa9, 0x00, 0xe9, 0x78, 0x58, 0xf6, 0x93, 0xc0, 0xb7, 0xdf, 0xa2, 0x61, 0xe3, 0x80, 0xda, 0xd6, 0xea, 0x04, 0x6d, 0x1f, 0x65, 0xdd, 0xee, 0xed, 0xd5, 0xf7, 0xd8, 0xaf, 0x0b, 0xa3, 0x37, 0x69, 0x74, 0x4d, 0x15, 0xad, 0xd4, 0xf6, 0xc0, 0xbc, 0x3b, 0x0d, 0xa2, 0xae, 0xc9, 0x3b, 0x34, 0xcb, 0x8c, 0x65, 0xf9, 0x34, 0x0d, 0xdf, 0x74, 0xe7, 0xb0, 0x00, 0x9e, 0xee, 0xcc, 0xce, 0x3c, }; static const unsigned char ecdsa_secp256k1_sha256_11938_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11938_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x95, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0x7c, 0x74, 0x93, 0x44, 0x74, 0xdb, 0x15, 0x7d, 0x2a, 0x8c, 0x3f, 0x08, 0x8a, 0xce, 0xd6, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11938 = { .name = "ecdsa_secp256k1_sha256_11938", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11938_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11938_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11938_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1183 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11939 for ECDSA, tcId is 1184 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11939_pubkey[] = { 0x38, 0x06, 0x6f, 0x75, 0xd8, 0x8e, 0xfc, 0x4c, 0x93, 0xde, 0x36, 0xf4, 0x9e, 0x03, 0x7b, 0x23, 0x4c, 0xc1, 0x8b, 0x1d, 0xe5, 0x60, 0x87, 0x50, 0xa6, 0x2c, 0xab, 0x03, 0x45, 0x40, 0x10, 0x46, 0xa3, 0xe8, 0x4b, 0xed, 0x8c, 0xfc, 0xb8, 0x19, 0xef, 0x4d, 0x55, 0x04, 0x44, 0xf2, 0xce, 0x4b, 0x65, 0x17, 0x66, 0xb6, 0x9e, 0x2e, 0x29, 0x01, 0xf8, 0x88, 0x36, 0xff, 0x90, 0x03, 0x4f, 0xed, }; static const unsigned char ecdsa_secp256k1_sha256_11939_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11939_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x2a, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x3e, 0x3a, 0x49, 0xa2, 0x3a, 0x6d, 0x8a, 0xbe, 0x95, 0x46, 0x1f, 0x84, 0x45, 0x67, 0x6b, 0x17, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11939 = { .name = "ecdsa_secp256k1_sha256_11939", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11939_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11939_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11939_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1184 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11940 for ECDSA, tcId is 1185 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11940_pubkey[] = { 0x98, 0xf6, 0x81, 0x77, 0xdc, 0x95, 0xc1, 0xb4, 0xcb, 0xfa, 0x52, 0x45, 0x48, 0x8c, 0xa5, 0x23, 0xa7, 0xd5, 0x62, 0x94, 0x70, 0xd0, 0x35, 0xd6, 0x21, 0xa4, 0x43, 0xc7, 0x2f, 0x39, 0xaa, 0xbf, 0xa3, 0x3d, 0x29, 0x54, 0x6f, 0xa1, 0xc6, 0x48, 0xf2, 0xc7, 0xd5, 0xcc, 0xf7, 0x0c, 0xf1, 0xce, 0x4a, 0xb7, 0x9b, 0x5d, 0xb1, 0xac, 0x05, 0x9d, 0xbe, 0xcd, 0x06, 0x8d, 0xbd, 0xff, 0x1b, 0x89, }; static const unsigned char ecdsa_secp256k1_sha256_11940_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11940_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11940 = { .name = "ecdsa_secp256k1_sha256_11940", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11940_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11940_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11940_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1185 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11941 for ECDSA, tcId is 1186 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11941_pubkey[] = { 0x5c, 0x2b, 0xbf, 0xa2, 0x3c, 0x9b, 0x9a, 0xd0, 0x7f, 0x03, 0x8a, 0xa8, 0x9b, 0x49, 0x30, 0xbf, 0x26, 0x7d, 0x94, 0x01, 0xe4, 0x25, 0x5d, 0xe9, 0xe8, 0xda, 0x0a, 0x50, 0x78, 0xec, 0x82, 0x77, 0xe3, 0xe8, 0x82, 0xa3, 0x1d, 0x5e, 0x6a, 0x37, 0x9e, 0x07, 0x93, 0x98, 0x3c, 0xcd, 0xed, 0x39, 0xb9, 0x5c, 0x43, 0x53, 0xab, 0x2f, 0xf0, 0x1e, 0xa5, 0x36, 0x9b, 0xa4, 0x7b, 0x0c, 0x31, 0x91, }; static const unsigned char ecdsa_secp256k1_sha256_11941_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11941_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x18, 0x5d, 0xdb, 0xca, 0x6d, 0xac, 0x41, 0xb1, 0xda, 0x03, 0x3c, 0xfb, 0x60, 0xc1, 0x52, 0x86, 0x9e, 0x74, 0xb3, 0xcd, 0x66, 0xe9, 0xff, 0xdf, 0x1b, 0x6b, 0xc0, 0x9e, 0xd6, 0x5e, 0xe4, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11941 = { .name = "ecdsa_secp256k1_sha256_11941", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11941_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11941_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11941_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 1186 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11942 for ECDSA, tcId is 1187 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11942_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0x35, 0x47, 0x80, 0x82, 0x98, 0x44, 0x8e, 0xdb, 0x5e, 0x70, 0x1a, 0xde, 0x84, 0xcd, 0x5f, 0xb1, 0xac, 0x95, 0x67, 0xba, 0x5e, 0x8f, 0xb6, 0x8a, 0x6b, 0x93, 0x3e, 0xc4, 0xb5, 0xcc, 0x84, 0xcc, }; static const unsigned char ecdsa_secp256k1_sha256_11942_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11942_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11942 = { .name = "ecdsa_secp256k1_sha256_11942", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11942_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11942_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11942_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 1187 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11943 for ECDSA, tcId is 1188 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11943_pubkey[] = { 0x2e, 0xa7, 0x13, 0x34, 0x32, 0x33, 0x9c, 0x69, 0xd2, 0x7f, 0x9b, 0x26, 0x72, 0x81, 0xbd, 0x2d, 0xdd, 0x5f, 0x19, 0xd6, 0x33, 0x8d, 0x40, 0x0a, 0x05, 0xcd, 0x36, 0x47, 0xb1, 0x57, 0xa3, 0x85, 0xca, 0xb8, 0x7f, 0x7d, 0x67, 0xbb, 0x71, 0x24, 0xa1, 0x8f, 0xe5, 0x21, 0x7b, 0x32, 0xa0, 0x4e, 0x53, 0x6a, 0x98, 0x45, 0xa1, 0x70, 0x49, 0x75, 0x94, 0x6c, 0xc1, 0x3a, 0x4a, 0x33, 0x77, 0x63, }; static const unsigned char ecdsa_secp256k1_sha256_11943_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11943_sig[] = { 0x32, 0xb0, 0xd1, 0x0d, 0x8d, 0x0e, 0x04, 0xbc, 0x8d, 0x4d, 0x06, 0x4d, 0x27, 0x06, 0x99, 0xe8, 0x7c, 0xff, 0xc9, 0xb4, 0x9c, 0x5c, 0x20, 0x73, 0x0e, 0x1c, 0x26, 0xf6, 0x10, 0x5d, 0xdc, 0xda, 0xd6, 0x12, 0xc2, 0x98, 0x4c, 0x2a, 0xfa, 0x41, 0x6a, 0xa7, 0xf2, 0x88, 0x2a, 0x48, 0x6d, 0x4a, 0x84, 0x26, 0xcb, 0x6c, 0xfc, 0x91, 0xed, 0x5b, 0x73, 0x72, 0x78, 0xf9, 0xfc, 0xa8, 0xbe, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11943 = { .name = "ecdsa_secp256k1_sha256_11943", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11943_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11943_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11943_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 1188 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11944 for ECDSA, tcId is 1189 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11944_pubkey[] = { 0x8a, 0xa2, 0xc6, 0x4f, 0xa9, 0xc6, 0x43, 0x75, 0x63, 0xab, 0xfb, 0xcb, 0xd0, 0x0b, 0x20, 0x48, 0xd4, 0x8c, 0x18, 0xc1, 0x52, 0xa2, 0xa6, 0xf4, 0x90, 0x36, 0xde, 0x76, 0x47, 0xeb, 0xe8, 0x2e, 0x1c, 0xe6, 0x43, 0x87, 0x99, 0x5c, 0x68, 0xa0, 0x60, 0xfa, 0x3b, 0xc0, 0x39, 0x9b, 0x05, 0xcc, 0x06, 0xee, 0xc7, 0xd5, 0x98, 0xf7, 0x50, 0x41, 0xa4, 0x91, 0x7e, 0x69, 0x2b, 0x7f, 0x51, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_11944_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11944_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x32, 0xf2, 0x22, 0xf8, 0xfa, 0xef, 0xdb, 0x53, 0x3f, 0x26, 0x5d, 0x46, 0x1c, 0x29, 0xa4, 0x73, 0x73, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11944 = { .name = "ecdsa_secp256k1_sha256_11944", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11944_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11944_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11944_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 1189 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11945 for ECDSA, tcId is 1190 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11945_pubkey[] = { 0x39, 0x14, 0x27, 0xff, 0x7e, 0xe7, 0x80, 0x13, 0xc1, 0x4a, 0xec, 0x7d, 0x96, 0xa8, 0xa0, 0x62, 0x20, 0x92, 0x98, 0xa7, 0x83, 0x83, 0x5e, 0x94, 0xfd, 0x65, 0x49, 0xd5, 0x02, 0xff, 0xf7, 0x1f, 0xdd, 0x66, 0x24, 0xec, 0x34, 0x3a, 0xd9, 0xfc, 0xf4, 0xd9, 0x87, 0x21, 0x81, 0xe5, 0x9f, 0x84, 0x2f, 0x9b, 0xa4, 0xcc, 0xca, 0xe0, 0x9a, 0x6c, 0x09, 0x72, 0xfb, 0x6a, 0xc6, 0xb4, 0xc6, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_11945_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11945_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11945 = { .name = "ecdsa_secp256k1_sha256_11945", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11945_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11945_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11945_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1190 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11946 for ECDSA, tcId is 1191 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11946_pubkey[] = { 0xe7, 0x62, 0xb8, 0xa2, 0x19, 0xb4, 0xf1, 0x80, 0x21, 0x9c, 0xc7, 0xa9, 0x05, 0x92, 0x45, 0xe4, 0x96, 0x1b, 0xd1, 0x91, 0xc0, 0x38, 0x99, 0x78, 0x9c, 0x7a, 0x34, 0xb8, 0x9e, 0x8c, 0x13, 0x8e, 0xc1, 0x53, 0x3e, 0xf0, 0x41, 0x9b, 0xb7, 0x37, 0x6e, 0x0b, 0xfd, 0xe9, 0x31, 0x9d, 0x10, 0xa0, 0x69, 0x68, 0x79, 0x1d, 0x9e, 0xa0, 0xee, 0xd9, 0xc1, 0xce, 0x63, 0x45, 0xae, 0xd9, 0x75, 0x9e, }; static const unsigned char ecdsa_secp256k1_sha256_11946_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11946_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11946 = { .name = "ecdsa_secp256k1_sha256_11946", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11946_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11946_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11946_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1191 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11947 for ECDSA, tcId is 1192 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11947_pubkey[] = { 0x9a, 0xed, 0xb0, 0xd2, 0x81, 0xdb, 0x16, 0x4e, 0x13, 0x00, 0x00, 0xc5, 0x69, 0x7f, 0xae, 0x0f, 0x30, 0x5e, 0xf8, 0x48, 0xbe, 0x6f, 0xff, 0xb4, 0x3a, 0xc5, 0x93, 0xfb, 0xb9, 0x50, 0xe9, 0x52, 0xfa, 0x6f, 0x63, 0x33, 0x59, 0xbd, 0xcd, 0x82, 0xb5, 0x6b, 0x0b, 0x9f, 0x96, 0x5b, 0x03, 0x77, 0x89, 0xd4, 0x6b, 0x9a, 0x81, 0x41, 0xb7, 0x91, 0xb2, 0xae, 0xfa, 0x71, 0x3f, 0x96, 0xc1, 0x75, }; static const unsigned char ecdsa_secp256k1_sha256_11947_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11947_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11947 = { .name = "ecdsa_secp256k1_sha256_11947", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11947_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11947_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11947_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1192 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11948 for ECDSA, tcId is 1193 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11948_pubkey[] = { 0x8a, 0xd4, 0x45, 0xdb, 0x62, 0x81, 0x62, 0x60, 0xe4, 0xe6, 0x87, 0xfd, 0x18, 0x84, 0xe4, 0x8b, 0x9f, 0xc0, 0x63, 0x6d, 0x03, 0x15, 0x47, 0xd6, 0x33, 0x15, 0xe7, 0x92, 0xe1, 0x9b, 0xfa, 0xee, 0x1d, 0xe6, 0x4f, 0x99, 0xd5, 0xf1, 0xcd, 0x8b, 0x6e, 0xc9, 0xcb, 0x0f, 0x78, 0x7a, 0x65, 0x4a, 0xe8, 0x69, 0x93, 0xba, 0x3d, 0xb1, 0x00, 0x8e, 0xf4, 0x3c, 0xff, 0x06, 0x84, 0xcb, 0x22, 0xbd, }; static const unsigned char ecdsa_secp256k1_sha256_11948_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11948_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11948 = { .name = "ecdsa_secp256k1_sha256_11948", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11948_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11948_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11948_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1193 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11949 for ECDSA, tcId is 1194 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11949_pubkey[] = { 0x1f, 0x57, 0x99, 0xc9, 0x5b, 0xe8, 0x90, 0x63, 0xb2, 0x4f, 0x26, 0xe4, 0x0c, 0xb9, 0x28, 0xc1, 0xa8, 0x68, 0xa7, 0x6f, 0xb0, 0x09, 0x46, 0x07, 0xe8, 0x04, 0x3d, 0xb4, 0x09, 0xc9, 0x1c, 0x32, 0xe7, 0x57, 0x24, 0xe8, 0x13, 0xa4, 0x19, 0x1e, 0x3a, 0x83, 0x90, 0x07, 0xf0, 0x8e, 0x2e, 0x89, 0x73, 0x88, 0xb0, 0x6d, 0x4a, 0x00, 0xde, 0x6d, 0xe6, 0x0e, 0x53, 0x6d, 0x91, 0xfa, 0xb5, 0x66, }; static const unsigned char ecdsa_secp256k1_sha256_11949_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11949_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11949 = { .name = "ecdsa_secp256k1_sha256_11949", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11949_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11949_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11949_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1194 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11950 for ECDSA, tcId is 1195 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11950_pubkey[] = { 0xa3, 0x33, 0x1a, 0x4e, 0x1b, 0x42, 0x23, 0xec, 0x2c, 0x02, 0x7e, 0xdd, 0x48, 0x2c, 0x92, 0x8a, 0x14, 0xed, 0x35, 0x8d, 0x93, 0xf1, 0xd4, 0x21, 0x7d, 0x39, 0xab, 0xf6, 0x9f, 0xcb, 0x5c, 0xcc, 0x28, 0xd6, 0x84, 0xd2, 0xaa, 0xab, 0xcd, 0x63, 0x83, 0x77, 0x5c, 0xaa, 0x62, 0x39, 0xde, 0x26, 0xd4, 0xc6, 0x93, 0x7b, 0xb6, 0x03, 0xec, 0xb4, 0x19, 0x60, 0x82, 0xf4, 0xcf, 0xfd, 0x50, 0x9d, }; static const unsigned char ecdsa_secp256k1_sha256_11950_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11950_sig[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11950 = { .name = "ecdsa_secp256k1_sha256_11950", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11950_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11950_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11950_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 1195 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11951 for ECDSA, tcId is 1196 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11951_pubkey[] = { 0x3f, 0x39, 0x52, 0x19, 0x97, 0x74, 0xc7, 0xcf, 0x39, 0xb3, 0x8b, 0x66, 0xcb, 0x10, 0x42, 0xa6, 0x26, 0x0d, 0x86, 0x80, 0x80, 0x38, 0x45, 0xe4, 0xd4, 0x33, 0xad, 0xba, 0x3b, 0xb2, 0x48, 0x18, 0x5e, 0xa4, 0x95, 0xb6, 0x8c, 0xbc, 0x7e, 0xd4, 0x17, 0x3e, 0xe6, 0x3c, 0x90, 0x42, 0xdc, 0x50, 0x26, 0x25, 0xc7, 0xeb, 0x7e, 0x21, 0xfb, 0x02, 0xca, 0x9a, 0x91, 0x14, 0xe0, 0xa3, 0xa1, 0x8d, }; static const unsigned char ecdsa_secp256k1_sha256_11951_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11951_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, 0xe8, 0xe4, 0xf4, 0x4c, 0xe5, 0x18, 0x35, 0x69, 0x3f, 0xf0, 0xca, 0x2e, 0xf0, 0x12, 0x15, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11951 = { .name = "ecdsa_secp256k1_sha256_11951", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11951_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11951_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11951_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 1196 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11952 for ECDSA, tcId is 1197 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11952_pubkey[] = { 0xcd, 0xfb, 0x8c, 0x0f, 0x42, 0x2e, 0x14, 0x4e, 0x13, 0x7c, 0x24, 0x12, 0xc8, 0x6c, 0x17, 0x1f, 0x5f, 0xe3, 0xfa, 0x3f, 0x5b, 0xbb, 0x54, 0x4e, 0x90, 0x76, 0x28, 0x8f, 0x3c, 0xed, 0x78, 0x6e, 0x05, 0x4f, 0xd0, 0x72, 0x1b, 0x77, 0xc1, 0x1c, 0x79, 0xbe, 0xac, 0xb3, 0xc9, 0x42, 0x11, 0xb0, 0xa1, 0x9b, 0xda, 0x08, 0x65, 0x2e, 0xfe, 0xaf, 0x92, 0x51, 0x3a, 0x3b, 0x0a, 0x16, 0x36, 0x98, }; static const unsigned char ecdsa_secp256k1_sha256_11952_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11952_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb5, 0xf3, 0x0f, 0x30, 0x12, 0x7d, 0x33, 0xe0, 0x2a, 0xad, 0x96, 0x43, 0x89, 0x27, 0x02, 0x2e, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11952 = { .name = "ecdsa_secp256k1_sha256_11952", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11952_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11952_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11952_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1197 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11953 for ECDSA, tcId is 1198 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11953_pubkey[] = { 0x73, 0x59, 0x8a, 0x6a, 0x1c, 0x68, 0x27, 0x8f, 0xa6, 0xbf, 0xd0, 0xce, 0x40, 0x64, 0xe6, 0x82, 0x35, 0xbc, 0x1c, 0x0f, 0x6b, 0x20, 0xa9, 0x28, 0x10, 0x8b, 0xe3, 0x36, 0x73, 0x0f, 0x87, 0xe3, 0xcb, 0xae, 0x61, 0x25, 0x19, 0xb5, 0x03, 0x2e, 0xcc, 0x85, 0xae, 0xd8, 0x11, 0x27, 0x1a, 0x95, 0xfe, 0x79, 0x39, 0xd5, 0xd3, 0x46, 0x01, 0x40, 0xba, 0x31, 0x8f, 0x4d, 0x14, 0xab, 0xa3, 0x1d, }; static const unsigned char ecdsa_secp256k1_sha256_11953_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11953_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x98, 0xd6, 0x68, 0xea, 0xf0, 0xcf, 0x91, 0xf9, 0xbd, 0x73, 0x17, 0xd2, 0x54, 0x7c, 0xed, 0x5a, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11953 = { .name = "ecdsa_secp256k1_sha256_11953", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11953_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11953_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11953_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1198 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11954 for ECDSA, tcId is 1199 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11954_pubkey[] = { 0x58, 0xde, 0xbd, 0x9a, 0x7e, 0xe2, 0xc9, 0xd5, 0x91, 0x32, 0x47, 0x8a, 0x54, 0x40, 0xae, 0x4d, 0x5d, 0x7e, 0xd4, 0x37, 0x30, 0x83, 0x69, 0xf9, 0x2e, 0xa8, 0x6c, 0x82, 0x18, 0x3f, 0x10, 0xa1, 0x67, 0x73, 0xe7, 0x6f, 0x5e, 0xdb, 0xf4, 0xda, 0x0e, 0x4f, 0x1b, 0xdf, 0xfa, 0xc0, 0xf5, 0x72, 0x57, 0xe1, 0xdf, 0xa4, 0x65, 0x84, 0x29, 0x31, 0x30, 0x9a, 0x24, 0x24, 0x5f, 0xda, 0x6a, 0x5d, }; static const unsigned char ecdsa_secp256k1_sha256_11954_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11954_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0xe4, 0x45, 0xf1, 0xf5, 0xdf, 0xb6, 0xa6, 0x7e, 0x4c, 0xba, 0x8c, 0x38, 0x53, 0x48, 0xe6, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11954 = { .name = "ecdsa_secp256k1_sha256_11954", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11954_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11954_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11954_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1199 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11955 for ECDSA, tcId is 1200 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11955_pubkey[] = { 0x8b, 0x90, 0x4d, 0xe4, 0x79, 0x67, 0x34, 0x0c, 0x5f, 0x8c, 0x35, 0x72, 0xa7, 0x20, 0x92, 0x4e, 0xf7, 0x57, 0x86, 0x37, 0xfe, 0xab, 0x19, 0x49, 0xac, 0xb2, 0x41, 0xa5, 0xa6, 0xac, 0x3f, 0x5b, 0x95, 0x09, 0x04, 0x49, 0x6f, 0x98, 0x24, 0xb1, 0xd6, 0x3f, 0x33, 0x13, 0xba, 0xe2, 0x1b, 0x89, 0xfa, 0xe8, 0x9a, 0xfd, 0xfc, 0x81, 0x1b, 0x5e, 0xce, 0x03, 0xfd, 0x5a, 0xa3, 0x01, 0x86, 0x4f, }; static const unsigned char ecdsa_secp256k1_sha256_11955_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11955_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x48, 0xc7, 0x9f, 0xac, 0xd4, 0x32, 0x14, 0xc0, 0x11, 0x12, 0x3c, 0x1b, 0x03, 0xa9, 0x34, 0x12, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11955 = { .name = "ecdsa_secp256k1_sha256_11955", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11955_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11955_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11955_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 1200 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11956 for ECDSA, tcId is 1201 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11956_pubkey[] = { 0xf4, 0x89, 0x2b, 0x6d, 0x52, 0x5c, 0x77, 0x1e, 0x03, 0x5f, 0x2a, 0x25, 0x27, 0x08, 0xf3, 0x78, 0x4e, 0x48, 0x23, 0x86, 0x04, 0xb4, 0xf9, 0x4d, 0xc5, 0x6e, 0xaa, 0x1e, 0x54, 0x6d, 0x94, 0x1a, 0x34, 0x6b, 0x1a, 0xa0, 0xbc, 0xe6, 0x8b, 0x1c, 0x50, 0xe5, 0xb5, 0x2f, 0x50, 0x9f, 0xb5, 0x52, 0x2e, 0x5c, 0x25, 0xe0, 0x28, 0xbc, 0x8f, 0x86, 0x34, 0x02, 0xed, 0xb7, 0xbc, 0xad, 0x8b, 0x1b, }; static const unsigned char ecdsa_secp256k1_sha256_11956_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11956_sig[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x27, 0x53, 0x48, 0xd8, 0x2a, 0xd2, 0xe4, 0xd7, 0x94, 0x9c, 0x81, 0x93, 0x80, 0x0d, 0x8c, 0x9c, 0x75, 0xdf, 0x58, 0xe3, 0x43, 0xf0, 0xeb, 0xba, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11956 = { .name = "ecdsa_secp256k1_sha256_11956", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11956_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11956_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11956_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 1201 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11957 for ECDSA, tcId is 1202 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11957_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_11957_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11957_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11957 = { .name = "ecdsa_secp256k1_sha256_11957", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11957_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11957_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11957_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 1202 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11958 for ECDSA, tcId is 1203 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11958_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0x48, 0x3a, 0xda, 0x77, 0x26, 0xa3, 0xc4, 0x65, 0x5d, 0xa4, 0xfb, 0xfc, 0x0e, 0x11, 0x08, 0xa8, 0xfd, 0x17, 0xb4, 0x48, 0xa6, 0x85, 0x54, 0x19, 0x9c, 0x47, 0xd0, 0x8f, 0xfb, 0x10, 0xd4, 0xb8, }; static const unsigned char ecdsa_secp256k1_sha256_11958_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11958_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11958 = { .name = "ecdsa_secp256k1_sha256_11958", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11958_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11958_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11958_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 1203 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11959 for ECDSA, tcId is 1204 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11959_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_11959_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11959_sig[] = { 0xbb, 0x5a, 0x52, 0xf4, 0x2f, 0x9c, 0x92, 0x61, 0xed, 0x43, 0x61, 0xf5, 0x94, 0x22, 0xa1, 0xe3, 0x00, 0x36, 0xe7, 0xc3, 0x2b, 0x27, 0x0c, 0x88, 0x07, 0xa4, 0x19, 0xfe, 0xca, 0x60, 0x50, 0x23, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11959 = { .name = "ecdsa_secp256k1_sha256_11959", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11959_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11959_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11959_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 1204 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11960 for ECDSA, tcId is 1205 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11960_pubkey[] = { 0x79, 0xbe, 0x66, 0x7e, 0xf9, 0xdc, 0xbb, 0xac, 0x55, 0xa0, 0x62, 0x95, 0xce, 0x87, 0x0b, 0x07, 0x02, 0x9b, 0xfc, 0xdb, 0x2d, 0xce, 0x28, 0xd9, 0x59, 0xf2, 0x81, 0x5b, 0x16, 0xf8, 0x17, 0x98, 0xb7, 0xc5, 0x25, 0x88, 0xd9, 0x5c, 0x3b, 0x9a, 0xa2, 0x5b, 0x04, 0x03, 0xf1, 0xee, 0xf7, 0x57, 0x02, 0xe8, 0x4b, 0xb7, 0x59, 0x7a, 0xab, 0xe6, 0x63, 0xb8, 0x2f, 0x6f, 0x04, 0xef, 0x27, 0x77, }; static const unsigned char ecdsa_secp256k1_sha256_11960_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11960_sig[] = { 0x44, 0xa5, 0xad, 0x0b, 0xd0, 0x63, 0x6d, 0x9e, 0x12, 0xbc, 0x9e, 0x0a, 0x6b, 0xdd, 0x5e, 0x1b, 0xba, 0x77, 0xf5, 0x23, 0x84, 0x21, 0x93, 0xb3, 0xb8, 0x2e, 0x44, 0x8e, 0x05, 0xd5, 0xf1, 0x1e, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x63, 0xcf, 0xd6, 0x6a, 0x19, 0x0a, 0x60, 0x08, 0x89, 0x1e, 0x0d, 0x81, 0xd4, 0x9a, 0x09, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11960 = { .name = "ecdsa_secp256k1_sha256_11960", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11960_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11960_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11960_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 1205 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11961 for ECDSA, tcId is 1206 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_11961_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_11961_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224r1_sha256_11961_sig[] = { 0xb2, 0x97, 0x0c, 0xde, 0xc2, 0x9c, 0x70, 0x29, 0x4a, 0x18, 0xbb, 0xc4, 0x99, 0x85, 0xef, 0xa3, 0x3a, 0xcc, 0x0a, 0xf5, 0x09, 0xc3, 0x26, 0xa3, 0x97, 0x7a, 0x35, 0xe8, 0x0c, 0xea, 0x3e, 0xd8, 0xeb, 0xaa, 0xf6, 0xee, 0x6a, 0xef, 0x60, 0x49, 0xa2, 0x3c, 0xbc, 0x39, 0xf6, 0x1f, 0xcf, 0x8f, 0xc6, 0xbe, 0x4b, 0xab, 0x13, 0x38, 0x55, 0x79, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_11961 = { .name = "ecdsa_secp224r1_sha256_11961", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_11961_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_11961_msg, .msglen = 6, .sig = ecdsa_secp224r1_sha256_11961_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1206 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11962 for ECDSA, tcId is 1207 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_11962_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_11962_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp224r1_sha256_11962_sig[] = { 0xd4, 0x8a, 0xb7, 0x21, 0x5a, 0x25, 0x80, 0x21, 0x32, 0xa9, 0xb0, 0xcb, 0x95, 0x49, 0x3f, 0x91, 0x1c, 0x96, 0x5b, 0x1b, 0x25, 0x18, 0xcd, 0xaa, 0x36, 0x25, 0x41, 0x7b, 0x1e, 0x49, 0xbc, 0x82, 0x55, 0x76, 0xc5, 0x43, 0x61, 0x40, 0xca, 0xa8, 0xa3, 0x33, 0x2d, 0x1b, 0xb2, 0xa7, 0x45, 0xf6, 0xa2, 0x2e, 0xf3, 0xe8, 0x00, 0x18, 0x58, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_11962 = { .name = "ecdsa_secp224r1_sha256_11962", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_11962_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_11962_msg, .msglen = 4, .sig = ecdsa_secp224r1_sha256_11962_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1207 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11963 for ECDSA, tcId is 1208 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_11963_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_11963_sig[] = { 0x03, 0x64, 0xe7, 0xd9, 0x68, 0x32, 0x61, 0x4a, 0x80, 0x21, 0x6e, 0x73, 0x0c, 0x35, 0x35, 0x34, 0xd4, 0xbf, 0xfd, 0x2c, 0x26, 0x64, 0x9c, 0x0b, 0x4b, 0x0e, 0x26, 0x28, 0x8f, 0x40, 0x06, 0x4b, 0x41, 0x2f, 0xe3, 0x8c, 0x5b, 0xa9, 0xcf, 0x66, 0x4e, 0x61, 0x72, 0xed, 0x48, 0xe6, 0xe7, 0x9f, 0x0f, 0xe5, 0xe3, 0x1a, 0x54, 0x98, 0x5d, 0xfc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_11963 = { .name = "ecdsa_secp224r1_sha256_11963", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_11963_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224r1_sha256_11963_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1208 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11964 for ECDSA, tcId is 1209 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_11964_pubkey[] = { 0x4c, 0x24, 0x66, 0x70, 0x65, 0x8a, 0x1d, 0x41, 0xf5, 0xd7, 0x7b, 0xce, 0x24, 0x6c, 0xbe, 0x38, 0x6a, 0xc2, 0x28, 0x48, 0xe2, 0x69, 0xb9, 0xd4, 0xcd, 0x67, 0xc4, 0x66, 0xdd, 0xd9, 0x47, 0x15, 0x3d, 0x39, 0xb2, 0xd4, 0x25, 0x33, 0xa4, 0x60, 0xde, 0xf2, 0x68, 0x80, 0x40, 0x8c, 0xaf, 0x2d, 0xd3, 0xdd, 0x48, 0xfe, 0x88, 0x8c, 0xd1, 0x76, }; static const unsigned char ecdsa_secp224r1_sha256_11964_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_11964_sig[] = { 0x7e, 0x7b, 0x0e, 0xb7, 0xda, 0x8c, 0x68, 0xa7, 0x07, 0x2b, 0x11, 0x40, 0x4e, 0xe9, 0x5a, 0x5c, 0x40, 0x7f, 0xbf, 0xe3, 0xd6, 0x96, 0x46, 0x80, 0x2e, 0x28, 0xae, 0x77, 0xd4, 0x09, 0xa2, 0xf6, 0xbb, 0xaa, 0xe5, 0x9b, 0xb6, 0x0f, 0xc0, 0xa0, 0x92, 0xb1, 0x2f, 0xa4, 0xe6, 0x7d, 0xc8, 0xd0, 0x88, 0xcf, 0x19, 0xa8, 0x33, 0x32, 0x2f, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_11964 = { .name = "ecdsa_secp224r1_sha256_11964", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_11964_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_11964_msg, .msglen = 20, .sig = ecdsa_secp224r1_sha256_11964_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1209 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11965 for ECDSA, tcId is 1210 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11965_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_11965_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_11965_sig[] = { 0xa8, 0xea, 0x15, 0x0c, 0xb8, 0x01, 0x25, 0xd7, 0x38, 0x1c, 0x4c, 0x1f, 0x1d, 0xa8, 0xe9, 0xde, 0x27, 0x11, 0xf9, 0x91, 0x70, 0x60, 0x40, 0x6a, 0x73, 0xd7, 0x90, 0x45, 0x19, 0xe5, 0x13, 0x88, 0xf3, 0xab, 0x9f, 0xa6, 0x8b, 0xd4, 0x79, 0x73, 0xa7, 0x3b, 0x2d, 0x40, 0x48, 0x0c, 0x2b, 0xa5, 0x0c, 0x22, 0xc9, 0xd7, 0x6e, 0xc2, 0x17, 0x25, 0x72, 0x88, 0x29, 0x32, 0x85, 0x44, 0x9b, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11965 = { .name = "ecdsa_secp256r1_sha256_11965", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11965_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11965_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_11965_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1210 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11966 for ECDSA, tcId is 1211 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11966_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_11966_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_11966_sig[] = { 0x30, 0xe7, 0x82, 0xf9, 0x64, 0xb2, 0xe2, 0xff, 0x06, 0x5a, 0x05, 0x1b, 0xc7, 0xad, 0xc2, 0x06, 0x15, 0xd8, 0xc4, 0x3a, 0x13, 0x65, 0x71, 0x3c, 0x88, 0x26, 0x88, 0x22, 0xc2, 0x53, 0xbc, 0xce, 0x5b, 0x16, 0xdf, 0x65, 0x2a, 0xa1, 0xec, 0xb2, 0xdc, 0x8b, 0x46, 0xc5, 0x15, 0xf9, 0x60, 0x4e, 0x2e, 0x84, 0xca, 0xcf, 0xa7, 0xc6, 0xee, 0xc3, 0x04, 0x28, 0xd2, 0xd3, 0xf4, 0xe0, 0x8e, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11966 = { .name = "ecdsa_secp256r1_sha256_11966", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11966_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11966_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_11966_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1211 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11967 for ECDSA, tcId is 1212 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11967_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_11967_sig[] = { 0xb2, 0x92, 0xa6, 0x19, 0x33, 0x9f, 0x6e, 0x56, 0x7a, 0x30, 0x5c, 0x95, 0x1c, 0x0d, 0xcb, 0xcc, 0x42, 0xd1, 0x6e, 0x47, 0xf2, 0x19, 0xf9, 0xe9, 0x8e, 0x76, 0xe0, 0x9d, 0x87, 0x70, 0xb3, 0x4a, 0x01, 0x77, 0xe6, 0x04, 0x92, 0xc5, 0xa8, 0x24, 0x2f, 0x76, 0xf0, 0x7b, 0xfe, 0x36, 0x61, 0xbd, 0xe5, 0x9e, 0xc2, 0xa1, 0x7c, 0xe5, 0xbd, 0x2d, 0xab, 0x2a, 0xbe, 0xbd, 0xf8, 0x9a, 0x62, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11967 = { .name = "ecdsa_secp256r1_sha256_11967", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11967_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha256_11967_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1212 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11968 for ECDSA, tcId is 1213 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_11968_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_11968_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_11968_sig[] = { 0x98, 0x6e, 0x65, 0x93, 0x3e, 0xf2, 0xed, 0x4e, 0xe5, 0xaa, 0xda, 0x13, 0x9f, 0x52, 0xb7, 0x05, 0x39, 0xaa, 0xf6, 0x3f, 0x00, 0xa9, 0x1f, 0x29, 0xc6, 0x91, 0x78, 0x49, 0x0d, 0x57, 0xfb, 0x71, 0x3d, 0xaf, 0xed, 0xfb, 0x8d, 0xa6, 0x18, 0x9d, 0x37, 0x23, 0x08, 0xcb, 0xf1, 0x48, 0x9b, 0xbb, 0xda, 0xbf, 0x0c, 0x02, 0x17, 0xd1, 0xc0, 0xff, 0x0f, 0x70, 0x1a, 0xaa, 0x7a, 0x69, 0x4b, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_11968 = { .name = "ecdsa_secp256r1_sha256_11968", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_11968_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_11968_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha256_11968_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1213 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11969 for ECDSA, tcId is 1214 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11969_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11969_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_11969_sig[] = { 0x23, 0x45, 0x03, 0xfc, 0xca, 0x57, 0x81, 0x21, 0x98, 0x6d, 0x96, 0xbe, 0x07, 0xfb, 0xc8, 0xda, 0x5d, 0x89, 0x4e, 0xd8, 0x58, 0x8c, 0x6d, 0xbc, 0xdb, 0xe9, 0x74, 0xb4, 0xb8, 0x13, 0xb2, 0x1c, 0x52, 0xd2, 0x0a, 0x89, 0x28, 0xf2, 0xe2, 0xfd, 0xac, 0x14, 0x70, 0x5b, 0x07, 0x05, 0x49, 0x8c, 0xcd, 0x7b, 0x9b, 0x76, 0x6b, 0x97, 0xb5, 0x3d, 0x1a, 0x80, 0xfc, 0x0b, 0x76, 0x0a, 0xf1, 0x6a, 0x11, 0xbf, 0x4a, 0x59, 0xc7, 0xc3, 0x67, 0xc6, 0xc7, 0x27, 0x5d, 0xfb, 0x6e, 0x18, 0xa8, 0x80, 0x91, 0xee, 0xd3, 0x73, 0x4b, 0xf5, 0xcf, 0x41, 0xb3, 0xdc, 0x6f, 0xec, 0xd6, 0xd3, 0xba, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11969 = { .name = "ecdsa_secp384r1_sha384_11969", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11969_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11969_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_11969_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1214 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11970 for ECDSA, tcId is 1215 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11970_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11970_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp384r1_sha384_11970_sig[] = { 0x99, 0xc8, 0xee, 0x53, 0x10, 0x65, 0x3f, 0x6b, 0xb6, 0xf5, 0x40, 0x14, 0x6e, 0xdc, 0x01, 0x5c, 0xce, 0x3c, 0x11, 0x5b, 0xf3, 0x08, 0x8b, 0xe1, 0xf4, 0x20, 0x59, 0x30, 0xb0, 0x81, 0x84, 0xbe, 0x88, 0x68, 0xd8, 0xb8, 0x32, 0x0f, 0x0e, 0xcc, 0x60, 0xf3, 0xb1, 0xbc, 0xcd, 0x41, 0x0b, 0x32, 0xca, 0x49, 0xb9, 0xf4, 0xfd, 0xa7, 0x15, 0xd5, 0x22, 0xbd, 0x0e, 0xc9, 0xb7, 0x67, 0xef, 0x6d, 0x7d, 0x0b, 0x34, 0x0d, 0x3a, 0xa9, 0xfc, 0xac, 0x67, 0x58, 0x74, 0xbb, 0x3d, 0xab, 0xc7, 0xb8, 0xe0, 0xc3, 0x39, 0x23, 0x86, 0x0b, 0x94, 0xcb, 0x00, 0x11, 0x5b, 0x10, 0xac, 0x50, 0x56, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11970 = { .name = "ecdsa_secp384r1_sha384_11970", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11970_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11970_msg, .msglen = 4, .sig = ecdsa_secp384r1_sha384_11970_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1215 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11971 for ECDSA, tcId is 1216 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11971_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11971_sig[] = { 0x32, 0x40, 0x12, 0x49, 0x71, 0x4e, 0x90, 0x91, 0xf0, 0x5a, 0x5e, 0x10, 0x9d, 0x5c, 0x12, 0x16, 0xfd, 0xc0, 0x5e, 0x98, 0x61, 0x42, 0x61, 0xaa, 0x0d, 0xbd, 0x9e, 0x9c, 0xd4, 0x41, 0x5d, 0xee, 0x29, 0x23, 0x8a, 0xfb, 0xd3, 0xb1, 0x03, 0xc1, 0xe4, 0x0e, 0xe5, 0xc9, 0x14, 0x4a, 0xee, 0x0f, 0x43, 0x26, 0x75, 0x6f, 0xb2, 0xc4, 0xfd, 0x72, 0x63, 0x60, 0xdd, 0x64, 0x79, 0xb5, 0x84, 0x94, 0x78, 0xc7, 0xa9, 0xd0, 0x54, 0xa8, 0x33, 0xa5, 0x8c, 0x16, 0x31, 0xc3, 0x3b, 0x63, 0xc3, 0x44, 0x13, 0x36, 0xdd, 0xf2, 0xc7, 0xfe, 0x0e, 0xd1, 0x29, 0xaa, 0xe6, 0xd4, 0xdd, 0xfe, 0xb7, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11971 = { .name = "ecdsa_secp384r1_sha384_11971", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11971_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha384_11971_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1216 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11972 for ECDSA, tcId is 1217 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_11972_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_11972_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_11972_sig[] = { 0x5c, 0xad, 0x9a, 0xe1, 0x56, 0x5f, 0x25, 0x88, 0xf8, 0x6d, 0x82, 0x1c, 0x2c, 0xc1, 0xb4, 0xd0, 0xfd, 0xf8, 0x74, 0x33, 0x13, 0x26, 0x56, 0x8f, 0x5b, 0x0e, 0x13, 0x0e, 0x4e, 0x0c, 0x0e, 0xc4, 0x97, 0xf8, 0xf5, 0xf5, 0x64, 0x21, 0x2b, 0xd2, 0xa2, 0x6e, 0xcb, 0x78, 0x2c, 0xf0, 0xa1, 0x8d, 0xbf, 0x2e, 0x9d, 0x09, 0x80, 0xfb, 0xb0, 0x06, 0x96, 0x67, 0x3e, 0x7f, 0xbb, 0x03, 0xe1, 0xf8, 0x54, 0xb9, 0xd7, 0x59, 0x6b, 0x75, 0x9a, 0x17, 0xbf, 0x6e, 0x6e, 0x67, 0xa9, 0x5e, 0xa6, 0xc1, 0x66, 0x4f, 0x82, 0xdc, 0x44, 0x9a, 0xe5, 0xea, 0x77, 0x9a, 0xbd, 0x99, 0xc7, 0x8e, 0x68, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_11972 = { .name = "ecdsa_secp384r1_sha384_11972", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_11972_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_11972_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha384_11972_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1217 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11973 for ECDSA, tcId is 1218 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11973_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_11973_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_11973_sig[] = { 0x01, 0x41, 0x41, 0xe4, 0xd9, 0x4a, 0x58, 0xc1, 0xe7, 0x47, 0xcb, 0xd9, 0xee, 0x66, 0x70, 0xa4, 0x1e, 0xac, 0x3c, 0x26, 0xfb, 0x4d, 0xb3, 0x24, 0x8e, 0x45, 0xd5, 0x83, 0x17, 0x90, 0x76, 0xe6, 0xb1, 0x9a, 0x8e, 0x20, 0x03, 0x65, 0x7a, 0x10, 0x8f, 0x91, 0xf9, 0xa1, 0x03, 0x15, 0x7e, 0xdf, 0xf9, 0xb3, 0x7d, 0xf2, 0xb4, 0x36, 0xa7, 0x7d, 0xc1, 0x12, 0x92, 0x7d, 0x90, 0x7a, 0xc9, 0xba, 0x25, 0x87, 0x01, 0x08, 0xaf, 0xa9, 0x1b, 0x34, 0xbd, 0x90, 0x4c, 0x68, 0x04, 0x71, 0xe9, 0x43, 0xaf, 0x33, 0x6f, 0xb9, 0x0c, 0x5f, 0xb2, 0xb9, 0x14, 0x01, 0xa5, 0x8c, 0x9b, 0x1f, 0x46, 0x7b, 0xf8, 0x1a, 0xf8, 0x04, 0x99, 0x65, 0xdd, 0x8b, 0x45, 0xf1, 0x2e, 0x15, 0x2f, 0x4f, 0x7f, 0xd3, 0x78, 0x0e, 0x34, 0x92, 0xf3, 0x1e, 0xd2, 0x68, 0x0d, 0x47, 0x77, 0xfb, 0xe6, 0x55, 0xfe, 0x77, 0x9a, 0xd8, 0x97, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11973 = { .name = "ecdsa_secp521r1_sha512_11973", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11973_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11973_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_11973_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 1218 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11974 for ECDSA, tcId is 1219 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11974_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_11974_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_11974_sig[] = { 0x01, 0xb2, 0x57, 0xe4, 0x6f, 0x4a, 0x9f, 0xcb, 0xa0, 0x30, 0x12, 0xfb, 0xee, 0xa4, 0xcd, 0x3b, 0xb2, 0xe2, 0x0f, 0xd7, 0xdd, 0x4e, 0x1c, 0xed, 0x70, 0x84, 0x05, 0x33, 0x0a, 0x87, 0x59, 0x74, 0x07, 0xa5, 0x87, 0x08, 0x61, 0xe7, 0x1c, 0x3a, 0x15, 0x7c, 0x02, 0x1e, 0xb4, 0xbe, 0xb9, 0x88, 0x1f, 0xce, 0x9c, 0x3f, 0x45, 0x8f, 0x3c, 0xd9, 0xdb, 0xd9, 0x4e, 0x42, 0x2c, 0xf0, 0x7a, 0x75, 0x01, 0x2e, 0x01, 0xb5, 0x5f, 0x01, 0xbd, 0x17, 0xe5, 0xa6, 0xad, 0x7d, 0x28, 0xbf, 0xbf, 0x75, 0x60, 0xde, 0x54, 0x8f, 0x96, 0xca, 0x52, 0x68, 0x3d, 0x12, 0xec, 0x6b, 0xa3, 0x47, 0xe6, 0xf3, 0xc1, 0xc4, 0xc3, 0xb6, 0x46, 0x3c, 0x73, 0xbd, 0x26, 0x39, 0x01, 0x4d, 0xe5, 0xdb, 0x14, 0x43, 0xf1, 0x81, 0xd6, 0x20, 0xd4, 0x2e, 0x6f, 0x69, 0xb5, 0x60, 0xf3, 0x77, 0x32, 0xaf, 0x83, 0xa6, 0xa2, 0xef, 0x21, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11974 = { .name = "ecdsa_secp521r1_sha512_11974", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11974_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11974_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_11974_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 1219 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11975 for ECDSA, tcId is 1220 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11975_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_11975_sig[] = { 0x01, 0x62, 0x5d, 0x61, 0x15, 0x09, 0x2a, 0x8e, 0x2e, 0xe2, 0x1b, 0x9f, 0x8a, 0x42, 0x5a, 0xa7, 0x38, 0x14, 0xde, 0xc8, 0xb2, 0x33, 0x5e, 0x86, 0x15, 0x0a, 0xb4, 0x22, 0x9f, 0x5a, 0x34, 0x21, 0xd2, 0xe6, 0x25, 0x6d, 0x63, 0x2c, 0x7a, 0x43, 0x65, 0xa1, 0xee, 0x01, 0xdd, 0x2a, 0x93, 0x69, 0x21, 0xbb, 0xb4, 0x55, 0x1a, 0x51, 0x2d, 0x1d, 0x4b, 0x5a, 0x56, 0xc3, 0x14, 0xe4, 0xa0, 0x25, 0x34, 0xc5, 0x01, 0xb7, 0x92, 0xd2, 0x3f, 0x26, 0x49, 0x86, 0x25, 0x95, 0x45, 0x10, 0x55, 0x77, 0x7b, 0xda, 0x1b, 0x02, 0xdc, 0x6c, 0xc8, 0xfe, 0xf2, 0x32, 0x31, 0xe4, 0x4b, 0x92, 0x1b, 0x16, 0x15, 0x5c, 0xd4, 0x22, 0x57, 0x44, 0x1d, 0x75, 0xa7, 0x90, 0x37, 0x1e, 0x91, 0x81, 0x9f, 0x0a, 0x9b, 0x1f, 0xd0, 0xeb, 0xd0, 0x2c, 0x90, 0xb5, 0xb7, 0x74, 0x52, 0x77, 0x46, 0xed, 0x9b, 0xfe, 0x74, 0x3d, 0xbe, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11975 = { .name = "ecdsa_secp521r1_sha512_11975", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11975_pubkey, .pubkeylen = 132, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp521r1_sha512_11975_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 1220 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11976 for ECDSA, tcId is 1221 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_11976_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_11976_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp521r1_sha512_11976_sig[] = { 0x00, 0x08, 0x13, 0x5d, 0x3f, 0x1a, 0xe9, 0xe2, 0x6f, 0xba, 0x82, 0x56, 0x43, 0xed, 0x8a, 0x29, 0xd6, 0x3d, 0x78, 0x43, 0x72, 0x0e, 0x93, 0x56, 0x6a, 0xa0, 0x9d, 0xb2, 0xbd, 0xf5, 0xaa, 0xa6, 0x9a, 0xfb, 0xcc, 0x0c, 0x51, 0xe5, 0x29, 0x5c, 0x29, 0x8f, 0x30, 0x5b, 0xa7, 0xb8, 0x70, 0xf0, 0xa8, 0x5b, 0xb5, 0x69, 0x9c, 0xdf, 0x40, 0x76, 0x4a, 0xab, 0x59, 0x41, 0x8f, 0x77, 0xc6, 0xff, 0xb4, 0x52, 0x01, 0x1d, 0x34, 0x52, 0x56, 0x88, 0x7f, 0xb3, 0x51, 0xf5, 0x70, 0x09, 0x61, 0xa7, 0xd4, 0x75, 0x72, 0xe0, 0xd6, 0x69, 0x05, 0x6c, 0xb1, 0xd5, 0x61, 0x93, 0x45, 0xc0, 0xc9, 0x87, 0xf3, 0x33, 0x1c, 0x2f, 0xe2, 0xc6, 0xdf, 0x84, 0x8a, 0x5c, 0x61, 0x04, 0x22, 0xde, 0xfd, 0x62, 0x12, 0xb6, 0x43, 0x46, 0x16, 0x1a, 0xa8, 0x71, 0xae, 0x55, 0xb1, 0xfe, 0x4a, 0xdd, 0x5f, 0x68, 0x83, 0x6e, 0xb1, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_11976 = { .name = "ecdsa_secp521r1_sha512_11976", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_11976_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_11976_msg, .msglen = 20, .sig = ecdsa_secp521r1_sha512_11976_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 1221 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 11977 for ECDSA, tcId is 1222 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11977_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_11977_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_11977_sig[] = { 0xd0, 0x35, 0xee, 0x1f, 0x17, 0xfd, 0xb0, 0xb2, 0x68, 0x1b, 0x16, 0x3e, 0x33, 0xc3, 0x59, 0x93, 0x26, 0x59, 0x99, 0x0a, 0xf7, 0x7d, 0xca, 0x63, 0x20, 0x12, 0xb3, 0x0b, 0x27, 0xa0, 0x57, 0xb3, 0x19, 0x39, 0xd9, 0xf3, 0xb2, 0x85, 0x8b, 0xc1, 0x3e, 0x34, 0x74, 0xcb, 0x50, 0xe6, 0xa8, 0x2b, 0xe4, 0x4f, 0xaa, 0x71, 0x94, 0x0f, 0x87, 0x6c, 0x1c, 0xba, 0x4c, 0x3e, 0x98, 0x92, 0x02, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11977 = { .name = "ecdsa_secp256k1_sha256_11977", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11977_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11977_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_11977_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1222 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11978 for ECDSA, tcId is 1223 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11978_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_11978_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256k1_sha256_11978_sig[] = { 0x24, 0x81, 0x3a, 0x5a, 0xef, 0xf4, 0x58, 0x48, 0x26, 0xa7, 0x2e, 0x3c, 0xe0, 0x30, 0xff, 0x39, 0x12, 0x4b, 0x45, 0x6c, 0x8d, 0xb1, 0x15, 0x74, 0xab, 0x44, 0xe9, 0x63, 0x4f, 0x2b, 0xe5, 0x45, 0x0c, 0x50, 0xc9, 0x14, 0xe0, 0x4b, 0xfe, 0x3c, 0x87, 0xef, 0x8d, 0xfd, 0xa3, 0x35, 0x68, 0x6f, 0xaa, 0x79, 0x95, 0x91, 0x14, 0x1c, 0x9b, 0x8d, 0xef, 0x39, 0x8c, 0x5e, 0xea, 0xe1, 0x07, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11978 = { .name = "ecdsa_secp256k1_sha256_11978", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11978_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11978_msg, .msglen = 4, .sig = ecdsa_secp256k1_sha256_11978_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1223 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11979 for ECDSA, tcId is 1224 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11979_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_11979_sig[] = { 0xf8, 0x0a, 0xe4, 0xf9, 0x6c, 0xdb, 0xc9, 0xd8, 0x53, 0xf8, 0x3d, 0x47, 0xaa, 0xe2, 0x25, 0xbf, 0x40, 0x7d, 0x51, 0xc5, 0x6b, 0x77, 0x76, 0xcd, 0x67, 0xd0, 0xdc, 0x19, 0x5d, 0x99, 0xa9, 0xdc, 0xb3, 0x03, 0xe2, 0x6b, 0xe1, 0xf7, 0x34, 0x65, 0x31, 0x52, 0x21, 0xf0, 0xb3, 0x31, 0x52, 0x88, 0x07, 0xa1, 0xa9, 0xb6, 0xeb, 0x06, 0x8e, 0xde, 0x6e, 0xeb, 0xea, 0xaa, 0x49, 0xaf, 0x8a, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11979 = { .name = "ecdsa_secp256k1_sha256_11979", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11979_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha256_11979_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1224 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11980 for ECDSA, tcId is 1225 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_11980_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_11980_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha256_11980_sig[] = { 0x4f, 0x05, 0x3f, 0x56, 0x3a, 0xd3, 0x4b, 0x74, 0xfd, 0x8c, 0x99, 0x34, 0xce, 0x59, 0xe7, 0x9c, 0x2e, 0xb8, 0xe6, 0xec, 0xa0, 0xfe, 0xf5, 0xb3, 0x23, 0xca, 0x67, 0xd5, 0xac, 0x7e, 0xd2, 0x38, 0x4d, 0x4b, 0x05, 0xda, 0xa0, 0x71, 0x9e, 0x77, 0x3d, 0x86, 0x17, 0xdc, 0xe5, 0x63, 0x1c, 0x5f, 0xd6, 0xf5, 0x9c, 0x9b, 0xdc, 0x74, 0x8e, 0x4b, 0x55, 0xc9, 0x70, 0x04, 0x0a, 0xf0, 0x1b, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_11980 = { .name = "ecdsa_secp256k1_sha256_11980", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_11980_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_11980_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha256_11980_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1225 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 11981 for ECDSA, tcId is 1226 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224k1_sha256_11981_pubkey[] = { 0x2e, 0xf9, 0x83, 0xfa, 0x54, 0x2b, 0x64, 0x47, 0x2e, 0x2b, 0xc4, 0x05, 0xd9, 0xee, 0xdd, 0x86, 0x1a, 0xcc, 0x9a, 0x7f, 0x81, 0x4f, 0xad, 0x82, 0x75, 0xce, 0x6b, 0x9a, 0x34, 0x59, 0xba, 0x4a, 0xb5, 0x21, 0x64, 0x88, 0x3b, 0xd2, 0x9e, 0xb6, 0xac, 0x7e, 0x6d, 0x22, 0xac, 0x7d, 0x30, 0x2c, 0x05, 0x3d, 0xc3, 0x96, 0x84, 0x92, 0x8e, 0xf9, }; static const unsigned char ecdsa_secp224k1_sha256_11981_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp224k1_sha256_11981_sig[] = { 0x00, 0xa3, 0x58, 0x87, 0x93, 0xe8, 0xc1, 0x56, 0xfb, 0xfb, 0xa2, 0x0e, 0xe2, 0x8c, 0x8d, 0xc7, 0x24, 0x24, 0x60, 0x33, 0x0a, 0x71, 0x86, 0x8f, 0x6c, 0x68, 0x98, 0x8d, 0xb4, 0x00, 0xb3, 0xdb, 0x0f, 0x3f, 0xa5, 0x66, 0xaf, 0xb6, 0xae, 0xea, 0x4d, 0x3e, 0xd9, 0xeb, 0x65, 0xe9, 0x1b, 0x1a, 0x6b, 0xed, 0xbe, 0x77, 0xb1, 0xe2, 0x71, 0x54, 0xaa, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224k1_sha256_11981 = { .name = "ecdsa_secp224k1_sha256_11981", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224k1_str_params, .pubkey = ecdsa_secp224k1_sha256_11981_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224k1_sha256_11981_msg, .msglen = 6, .sig = ecdsa_secp224k1_sha256_11981_sig, .siglen = 58, .result = 1, .comment = "pseudorandom signature, tcId is 1226 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) */ /* Test 11982 for ECDSA, tcId is 1227 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224k1_sha256_11982_pubkey[] = { 0x2e, 0xf9, 0x83, 0xfa, 0x54, 0x2b, 0x64, 0x47, 0x2e, 0x2b, 0xc4, 0x05, 0xd9, 0xee, 0xdd, 0x86, 0x1a, 0xcc, 0x9a, 0x7f, 0x81, 0x4f, 0xad, 0x82, 0x75, 0xce, 0x6b, 0x9a, 0x34, 0x59, 0xba, 0x4a, 0xb5, 0x21, 0x64, 0x88, 0x3b, 0xd2, 0x9e, 0xb6, 0xac, 0x7e, 0x6d, 0x22, 0xac, 0x7d, 0x30, 0x2c, 0x05, 0x3d, 0xc3, 0x96, 0x84, 0x92, 0x8e, 0xf9, }; static const unsigned char ecdsa_secp224k1_sha256_11982_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp224k1_sha256_11982_sig[] = { 0x00, 0xc3, 0xd3, 0xa7, 0x6e, 0x6c, 0x28, 0x2a, 0x92, 0x2e, 0x5e, 0x10, 0x0a, 0x0c, 0xaa, 0xcc, 0x11, 0x8e, 0x33, 0xc2, 0xd0, 0xc5, 0xc7, 0x51, 0x7a, 0x3b, 0x7a, 0x86, 0xed, 0x00, 0x69, 0x1c, 0x32, 0x85, 0x10, 0x8f, 0x65, 0x31, 0x3e, 0x02, 0x4d, 0x17, 0x31, 0x07, 0x86, 0x55, 0x21, 0xb6, 0x73, 0x80, 0x70, 0x69, 0xc5, 0x0d, 0xd5, 0x73, 0x00, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_secp224k1_sha256_11982 = { .name = "ecdsa_secp224k1_sha256_11982", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224k1_str_params, .pubkey = ecdsa_secp224k1_sha256_11982_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224k1_sha256_11982_msg, .msglen = 4, .sig = ecdsa_secp224k1_sha256_11982_sig, .siglen = 58, .result = 1, .comment = "pseudorandom signature, tcId is 1227 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) */ /* Test 11983 for ECDSA, tcId is 1228 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224k1_sha256_11983_pubkey[] = { 0x2e, 0xf9, 0x83, 0xfa, 0x54, 0x2b, 0x64, 0x47, 0x2e, 0x2b, 0xc4, 0x05, 0xd9, 0xee, 0xdd, 0x86, 0x1a, 0xcc, 0x9a, 0x7f, 0x81, 0x4f, 0xad, 0x82, 0x75, 0xce, 0x6b, 0x9a, 0x34, 0x59, 0xba, 0x4a, 0xb5, 0x21, 0x64, 0x88, 0x3b, 0xd2, 0x9e, 0xb6, 0xac, 0x7e, 0x6d, 0x22, 0xac, 0x7d, 0x30, 0x2c, 0x05, 0x3d, 0xc3, 0x96, 0x84, 0x92, 0x8e, 0xf9, }; static const unsigned char ecdsa_secp224k1_sha256_11983_sig[] = { 0x00, 0x46, 0x4b, 0xb0, 0xfb, 0x43, 0x7b, 0x06, 0x92, 0x20, 0x73, 0xe1, 0x24, 0x52, 0x84, 0x86, 0xe5, 0x00, 0xb1, 0x39, 0x4a, 0x05, 0xe8, 0x6b, 0x0b, 0xf5, 0x8a, 0xa7, 0x0b, 0x00, 0xf2, 0x81, 0x9c, 0xdd, 0x8f, 0x31, 0x1a, 0xda, 0xe3, 0x93, 0x05, 0x86, 0xd1, 0xfb, 0x88, 0x3a, 0xe0, 0x71, 0xcc, 0x8d, 0x60, 0x43, 0x59, 0x04, 0xff, 0xb9, 0xd8, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp224k1_sha256_11983 = { .name = "ecdsa_secp224k1_sha256_11983", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224k1_str_params, .pubkey = ecdsa_secp224k1_sha256_11983_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp224k1_sha256_11983_sig, .siglen = 58, .result = 1, .comment = "pseudorandom signature, tcId is 1228 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) */ /* Test 11984 for ECDSA, tcId is 1229 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224k1_sha256_11984_pubkey[] = { 0x2e, 0xf9, 0x83, 0xfa, 0x54, 0x2b, 0x64, 0x47, 0x2e, 0x2b, 0xc4, 0x05, 0xd9, 0xee, 0xdd, 0x86, 0x1a, 0xcc, 0x9a, 0x7f, 0x81, 0x4f, 0xad, 0x82, 0x75, 0xce, 0x6b, 0x9a, 0x34, 0x59, 0xba, 0x4a, 0xb5, 0x21, 0x64, 0x88, 0x3b, 0xd2, 0x9e, 0xb6, 0xac, 0x7e, 0x6d, 0x22, 0xac, 0x7d, 0x30, 0x2c, 0x05, 0x3d, 0xc3, 0x96, 0x84, 0x92, 0x8e, 0xf9, }; static const unsigned char ecdsa_secp224k1_sha256_11984_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224k1_sha256_11984_sig[] = { 0x00, 0x31, 0xec, 0x5c, 0x59, 0x55, 0x8d, 0xf3, 0x2c, 0xe7, 0x6d, 0x49, 0xcc, 0xe6, 0x4d, 0x63, 0xbf, 0x85, 0xce, 0x4c, 0x28, 0xb2, 0x0b, 0xc3, 0xb3, 0x75, 0xfd, 0x4a, 0x9c, 0x00, 0xad, 0xf2, 0x1d, 0x87, 0x78, 0x68, 0xbc, 0x75, 0x4e, 0xaa, 0x1d, 0xb8, 0x84, 0x7c, 0xaa, 0x33, 0xdd, 0xd9, 0xac, 0xe6, 0xfd, 0xce, 0xa5, 0x9c, 0x1e, 0x37, 0xe3, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_secp224k1_sha256_11984 = { .name = "ecdsa_secp224k1_sha256_11984", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224k1_str_params, .pubkey = ecdsa_secp224k1_sha256_11984_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224k1_sha256_11984_msg, .msglen = 20, .sig = ecdsa_secp224k1_sha256_11984_sig, .siglen = 58, .result = 1, .comment = "pseudorandom signature, tcId is 1229 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) */ /* Test 11985 for ECDSA, tcId is 1230 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_11985_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11985_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11985_sig[] = { 0x66, 0x9c, 0xe9, 0xe6, 0x3d, 0x91, 0x5b, 0xe4, 0xa2, 0x17, 0xfb, 0x0b, 0xb9, 0xad, 0x36, 0x1d, 0x62, 0xe9, 0x8d, 0x73, 0xe0, 0x73, 0xff, 0xfb, 0xe9, 0x21, 0xfd, 0x4a, 0x33, 0xef, 0x2e, 0xdc, 0xca, 0xc6, 0x0c, 0xed, 0x6d, 0x3d, 0x07, 0xc3, 0xb8, 0xf1, 0xd3, 0x66, 0x87, 0xe1, 0x6f, 0x84, 0x87, 0xc3, 0xe8, 0xad, 0x50, 0x96, 0xc7, 0x98, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_11985 = { .name = "ecdsa_brainpoolp224r1_sha256_11985", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_11985_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_11985_msg, .msglen = 6, .sig = ecdsa_brainpoolp224r1_sha256_11985_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1230 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11986 for ECDSA, tcId is 1231 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_11986_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11986_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11986_sig[] = { 0x92, 0x11, 0x75, 0x09, 0x01, 0x25, 0xc2, 0x51, 0x83, 0x8e, 0xfe, 0xce, 0x2f, 0xe3, 0xac, 0x1f, 0x5a, 0x52, 0xa4, 0xa3, 0xe0, 0x27, 0xd8, 0x64, 0xd3, 0x75, 0x43, 0x3f, 0x2c, 0x00, 0x8f, 0xf6, 0x94, 0x58, 0xd3, 0x79, 0x92, 0xcd, 0x6b, 0x60, 0xaf, 0x33, 0xe1, 0xc5, 0xec, 0xc9, 0x17, 0xcc, 0x6d, 0xba, 0xb8, 0x0b, 0x74, 0xcf, 0xcb, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_11986 = { .name = "ecdsa_brainpoolp224r1_sha256_11986", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_11986_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_11986_msg, .msglen = 4, .sig = ecdsa_brainpoolp224r1_sha256_11986_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1231 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11987 for ECDSA, tcId is 1232 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_11987_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11987_sig[] = { 0x79, 0x85, 0x47, 0x74, 0x98, 0x7f, 0xa5, 0x1e, 0x66, 0x14, 0xaf, 0x16, 0x6a, 0x32, 0x98, 0xd2, 0xa2, 0x0a, 0xc8, 0x59, 0x4a, 0x72, 0x87, 0xa9, 0x63, 0x2c, 0x0b, 0xe1, 0x13, 0xfa, 0x39, 0x11, 0x56, 0x7c, 0xdc, 0xc2, 0x02, 0x1d, 0x23, 0x83, 0x35, 0xe6, 0x7f, 0xfa, 0x01, 0xc6, 0xde, 0x22, 0xb1, 0x89, 0x71, 0x85, 0x43, 0x92, 0xd7, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_11987 = { .name = "ecdsa_brainpoolp224r1_sha256_11987", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_11987_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp224r1_sha256_11987_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1232 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11988 for ECDSA, tcId is 1233 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_11988_pubkey[] = { 0xb5, 0x54, 0xfc, 0x25, 0xe9, 0xf0, 0x98, 0xea, 0xf1, 0x46, 0x6c, 0x35, 0x32, 0x8c, 0x97, 0x30, 0x5d, 0x0d, 0x4a, 0xa0, 0xe4, 0x46, 0x2e, 0x8b, 0xaf, 0x7a, 0x8e, 0x7e, 0xd0, 0x8f, 0xc4, 0x0e, 0xb0, 0x1d, 0xc8, 0x55, 0x57, 0x7b, 0xae, 0xa9, 0xe3, 0x07, 0x07, 0x70, 0x61, 0x6f, 0x57, 0xb1, 0x7e, 0xa9, 0x85, 0x4c, 0xad, 0x93, 0x88, 0x1a, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11988_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_11988_sig[] = { 0x4f, 0x4e, 0x4d, 0x86, 0xd4, 0x32, 0xa5, 0x39, 0xf6, 0x2d, 0xda, 0x75, 0x84, 0x25, 0x44, 0xb2, 0x4b, 0xbb, 0x06, 0x09, 0xd0, 0x9a, 0xb1, 0xd0, 0xd1, 0xbc, 0xb9, 0x76, 0x63, 0x7e, 0xe6, 0x26, 0x61, 0xe8, 0x35, 0x51, 0x14, 0x42, 0x40, 0xea, 0x02, 0x95, 0x72, 0xe0, 0x3e, 0xfd, 0x85, 0x78, 0x7e, 0x45, 0xf1, 0x75, 0xf0, 0xcd, 0x22, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_11988 = { .name = "ecdsa_brainpoolp224r1_sha256_11988", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_11988_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_11988_msg, .msglen = 20, .sig = ecdsa_brainpoolp224r1_sha256_11988_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1233 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 11989 for ECDSA, tcId is 1234 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11989_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11989_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11989_sig[] = { 0x35, 0x1e, 0x72, 0x70, 0x03, 0x89, 0x6e, 0xc0, 0x29, 0x49, 0xa3, 0xcf, 0x75, 0x22, 0x23, 0xbc, 0xc6, 0xc2, 0xb6, 0x11, 0xb3, 0x03, 0x91, 0xed, 0xd6, 0x0d, 0xc0, 0xc8, 0x3d, 0xc9, 0xc9, 0x8f, 0x92, 0x4a, 0xd9, 0xdc, 0x00, 0x36, 0x4d, 0x4a, 0xa2, 0x09, 0x14, 0x16, 0xd1, 0x73, 0x86, 0x2f, 0x9b, 0x02, 0x96, 0x5f, 0xf1, 0x76, 0xe8, 0x80, 0xea, 0x62, 0xa6, 0x73, 0xe1, 0x6d, 0xb9, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11989 = { .name = "ecdsa_brainpoolp256r1_sha256_11989", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11989_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11989_msg, .msglen = 6, .sig = ecdsa_brainpoolp256r1_sha256_11989_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1234 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11990 for ECDSA, tcId is 1235 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11990_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11990_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11990_sig[] = { 0x3e, 0x08, 0x3e, 0x2a, 0x47, 0x3b, 0xda, 0x48, 0x2c, 0x81, 0xc6, 0xbe, 0xad, 0xe2, 0x1b, 0x13, 0x0d, 0x15, 0xb1, 0xca, 0x95, 0x7a, 0x45, 0x76, 0x76, 0x8c, 0xaa, 0x3f, 0x11, 0x36, 0x2f, 0x15, 0x87, 0xdc, 0x39, 0x0d, 0x12, 0x8a, 0x79, 0x22, 0x52, 0xb5, 0x1d, 0x8c, 0x93, 0xd1, 0xda, 0x06, 0x4d, 0x70, 0x23, 0x17, 0xad, 0xd9, 0x7d, 0xab, 0x74, 0xdb, 0x78, 0xa8, 0xf2, 0xe6, 0xd2, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11990 = { .name = "ecdsa_brainpoolp256r1_sha256_11990", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11990_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11990_msg, .msglen = 4, .sig = ecdsa_brainpoolp256r1_sha256_11990_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1235 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11991 for ECDSA, tcId is 1236 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11991_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11991_sig[] = { 0x74, 0x5b, 0xe1, 0xda, 0x90, 0x2d, 0x19, 0xc7, 0x6c, 0x8f, 0x57, 0xd4, 0xa1, 0xf3, 0x36, 0x2b, 0x4b, 0x20, 0xed, 0x7c, 0x8d, 0xe8, 0xfc, 0x04, 0x63, 0xd5, 0x66, 0x79, 0x5f, 0x97, 0x9c, 0xea, 0x59, 0x16, 0xc3, 0x17, 0xa1, 0xe3, 0x25, 0xb5, 0x37, 0x35, 0x21, 0x6a, 0x0f, 0xa3, 0x77, 0x37, 0xf0, 0x8b, 0x32, 0x24, 0x5c, 0x88, 0x08, 0x48, 0x17, 0xb4, 0x68, 0xa4, 0x1f, 0x5a, 0xfe, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11991 = { .name = "ecdsa_brainpoolp256r1_sha256_11991", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11991_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp256r1_sha256_11991_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1236 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11992 for ECDSA, tcId is 1237 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_11992_pubkey[] = { 0x26, 0x76, 0xbd, 0x1e, 0x3f, 0xd8, 0x3f, 0x33, 0x28, 0xd1, 0xaf, 0x94, 0x14, 0x42, 0xc0, 0x36, 0x76, 0x0f, 0x09, 0x58, 0x77, 0x29, 0x41, 0x90, 0x53, 0x08, 0x3e, 0xb6, 0x1d, 0x1e, 0xd2, 0x2c, 0x2c, 0xf7, 0x69, 0x68, 0x8a, 0x5f, 0xfd, 0x67, 0xda, 0x18, 0x99, 0xd2, 0x43, 0xe6, 0x6b, 0xca, 0xbe, 0x21, 0xf9, 0xe7, 0x83, 0x35, 0x26, 0x3b, 0xf5, 0x30, 0x8b, 0x8e, 0x41, 0xa7, 0x1b, 0x39, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11992_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_11992_sig[] = { 0x44, 0xa8, 0x11, 0xb2, 0x32, 0x1a, 0xcb, 0xc6, 0x5c, 0xac, 0xf8, 0x0d, 0x2d, 0xbe, 0x84, 0x89, 0x46, 0xf1, 0xda, 0xc5, 0x28, 0xf3, 0xe1, 0xae, 0x38, 0xb0, 0xe5, 0x4d, 0x08, 0x3c, 0x25, 0x8f, 0x55, 0xd7, 0xed, 0xfa, 0xec, 0xdd, 0xa3, 0xbb, 0xc0, 0x62, 0xd5, 0x07, 0x4e, 0x3c, 0x37, 0x19, 0xd3, 0x27, 0x61, 0x15, 0x9d, 0x02, 0x7c, 0xa2, 0x7c, 0x17, 0x25, 0xdd, 0xbd, 0x62, 0xf6, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_11992 = { .name = "ecdsa_brainpoolp256r1_sha256_11992", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_11992_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_11992_msg, .msglen = 20, .sig = ecdsa_brainpoolp256r1_sha256_11992_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1237 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 11993 for ECDSA, tcId is 1238 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11993_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11993_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11993_sig[] = { 0x7a, 0x31, 0xb7, 0x37, 0x5f, 0x92, 0x43, 0x69, 0xec, 0x12, 0xbc, 0x33, 0xb8, 0x34, 0x72, 0x6c, 0x95, 0x44, 0x4a, 0x4c, 0x26, 0x35, 0x57, 0x34, 0x4a, 0xfa, 0x73, 0x2c, 0xf4, 0x8a, 0x15, 0x5e, 0x71, 0xa6, 0xee, 0x7d, 0xe4, 0x2e, 0x91, 0xce, 0x24, 0xd3, 0xd7, 0x28, 0x61, 0xf4, 0xd2, 0xb5, 0x51, 0xc1, 0x0f, 0x02, 0x94, 0xd1, 0x6a, 0x3b, 0xf1, 0xd4, 0xee, 0x3e, 0x48, 0x44, 0x39, 0xb8, 0x04, 0xd0, 0x97, 0xde, 0xa2, 0xd7, 0xca, 0xce, 0x76, 0xad, 0xe1, 0x4a, 0xf1, 0x66, 0x33, 0x22, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11993 = { .name = "ecdsa_brainpoolp320r1_sha384_11993", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11993_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11993_msg, .msglen = 6, .sig = ecdsa_brainpoolp320r1_sha384_11993_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1238 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11994 for ECDSA, tcId is 1239 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11994_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11994_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11994_sig[] = { 0xac, 0x60, 0xae, 0x7e, 0x85, 0xae, 0xdd, 0x2e, 0x65, 0xb3, 0x7a, 0x37, 0x31, 0x69, 0x5f, 0x68, 0x4d, 0x82, 0xc7, 0x80, 0x29, 0xb4, 0xba, 0xa7, 0x0e, 0x56, 0xe6, 0xfe, 0xc2, 0x3f, 0x3b, 0x65, 0xdd, 0x21, 0x3d, 0xac, 0x69, 0xb5, 0x05, 0x2f, 0x82, 0xae, 0x3c, 0x06, 0xff, 0xdc, 0xef, 0xfe, 0xc7, 0xda, 0x82, 0x04, 0x79, 0xe6, 0xcf, 0x3f, 0x58, 0xbc, 0x3b, 0xb9, 0xb6, 0xd8, 0x8e, 0x0d, 0xa6, 0x15, 0xb0, 0x88, 0x5e, 0xce, 0x33, 0x88, 0xf6, 0xf2, 0xd2, 0xfa, 0x36, 0x85, 0xe6, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11994 = { .name = "ecdsa_brainpoolp320r1_sha384_11994", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11994_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11994_msg, .msglen = 4, .sig = ecdsa_brainpoolp320r1_sha384_11994_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1239 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11995 for ECDSA, tcId is 1240 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11995_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11995_sig[] = { 0x9c, 0xf7, 0xf0, 0xd6, 0x0c, 0xc1, 0xfb, 0x2d, 0x4b, 0x3e, 0x78, 0xd5, 0xf8, 0x3b, 0x37, 0x4e, 0x17, 0xa4, 0xae, 0xbc, 0xcc, 0x6e, 0x72, 0x3f, 0x1a, 0xd3, 0x5b, 0xab, 0xb2, 0xac, 0xfb, 0x2b, 0x75, 0x53, 0x03, 0x89, 0x18, 0x93, 0x95, 0xf8, 0x00, 0x11, 0x10, 0xc5, 0xb8, 0xb8, 0xe5, 0xfa, 0x8d, 0xc7, 0x95, 0x2a, 0x7b, 0xf6, 0x20, 0x0b, 0xdd, 0xae, 0x6c, 0x1d, 0x66, 0x63, 0x9a, 0x07, 0xa4, 0xb6, 0x04, 0x6e, 0x00, 0xbf, 0xa7, 0xa2, 0xbd, 0x9d, 0x57, 0x77, 0xb8, 0x0c, 0x3a, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11995 = { .name = "ecdsa_brainpoolp320r1_sha384_11995", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11995_pubkey, .pubkeylen = 80, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp320r1_sha384_11995_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1240 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11996 for ECDSA, tcId is 1241 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320r1_sha384_11996_pubkey[] = { 0x44, 0xab, 0x23, 0x20, 0xc2, 0x29, 0x7b, 0x66, 0x11, 0x44, 0x28, 0xdf, 0x33, 0xfe, 0x64, 0x19, 0x56, 0xf8, 0x20, 0x33, 0x89, 0x33, 0x98, 0xaf, 0x3b, 0x49, 0xb0, 0x02, 0x31, 0x79, 0x20, 0x1c, 0x27, 0xd2, 0x6d, 0xd6, 0x51, 0x21, 0xc0, 0x6e, 0x0c, 0x59, 0x52, 0x4c, 0x93, 0x8f, 0x19, 0xda, 0xff, 0xc2, 0xa9, 0xa4, 0x67, 0x9d, 0xba, 0x7c, 0xf1, 0x99, 0x1c, 0xed, 0x47, 0x00, 0x59, 0x2b, 0xb7, 0x5e, 0x98, 0xcf, 0x77, 0xdb, 0xf6, 0xc5, 0x84, 0xc2, 0xf7, 0x27, 0x35, 0x15, 0x29, 0x21, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11996_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp320r1_sha384_11996_sig[] = { 0x24, 0x17, 0xeb, 0x10, 0xa5, 0x38, 0x92, 0x16, 0x21, 0x06, 0x66, 0x08, 0x24, 0x3f, 0xd6, 0x57, 0x4d, 0xe8, 0x4e, 0xf1, 0x28, 0x15, 0x20, 0xf0, 0x1e, 0xbe, 0x04, 0x44, 0xb4, 0x6a, 0x60, 0x7a, 0xb9, 0xed, 0xa8, 0xf3, 0x72, 0x17, 0x79, 0xa6, 0x8f, 0x1e, 0x2e, 0xa2, 0x94, 0x02, 0x8b, 0xae, 0xb7, 0x38, 0x18, 0x1e, 0x12, 0x8c, 0x86, 0xad, 0x55, 0xcb, 0x19, 0x45, 0x43, 0x6c, 0xf6, 0x9e, 0x09, 0x0c, 0x2f, 0x61, 0x59, 0xf6, 0xf2, 0x20, 0x11, 0xd7, 0x31, 0x73, 0x3b, 0x44, 0x33, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320r1_sha384_11996 = { .name = "ecdsa_brainpoolp320r1_sha384_11996", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320r1_str_params, .pubkey = ecdsa_brainpoolp320r1_sha384_11996_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320r1_sha384_11996_msg, .msglen = 20, .sig = ecdsa_brainpoolp320r1_sha384_11996_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1241 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) */ /* Test 11997 for ECDSA, tcId is 1242 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11997_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11997_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11997_sig[] = { 0x6d, 0xd9, 0xd4, 0xe9, 0x8c, 0x9c, 0x38, 0x82, 0x40, 0xe9, 0x5c, 0x49, 0xb2, 0x10, 0x0a, 0xfb, 0xe0, 0xd7, 0x22, 0xf8, 0xa1, 0x52, 0x65, 0x1c, 0x61, 0xd7, 0xef, 0x9b, 0xf4, 0x61, 0x50, 0xe3, 0xcd, 0xf9, 0xbf, 0x63, 0x30, 0xe7, 0x5e, 0x4b, 0xf2, 0xc2, 0x94, 0xcd, 0x66, 0xe4, 0x8d, 0x06, 0x12, 0x82, 0xd3, 0x3b, 0x5b, 0x79, 0xd4, 0xea, 0xaf, 0xa0, 0x3a, 0x77, 0xbb, 0x8b, 0xa2, 0xc3, 0x18, 0x29, 0x1f, 0x6e, 0xa0, 0x9d, 0x54, 0x8b, 0x77, 0x04, 0xbb, 0x00, 0x91, 0x08, 0x56, 0xdd, 0x36, 0x05, 0x57, 0xe6, 0x09, 0xad, 0xd8, 0x91, 0xc6, 0x43, 0x5d, 0x7a, 0x80, 0xaf, 0xdd, 0xfb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11997 = { .name = "ecdsa_brainpoolp384r1_sha384_11997", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11997_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11997_msg, .msglen = 6, .sig = ecdsa_brainpoolp384r1_sha384_11997_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1242 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11998 for ECDSA, tcId is 1243 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11998_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11998_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11998_sig[] = { 0x01, 0x79, 0xa6, 0xf4, 0x00, 0x39, 0xbf, 0xe5, 0x2e, 0x7d, 0x30, 0xa9, 0xaf, 0x9e, 0x3b, 0x24, 0x63, 0x8d, 0xe5, 0x55, 0xbf, 0xef, 0x84, 0x84, 0x0f, 0x0c, 0x9d, 0x6b, 0xd7, 0x5f, 0xcb, 0x8e, 0x9b, 0x97, 0xbf, 0x33, 0xc5, 0xf8, 0xdc, 0x6b, 0x7d, 0x6b, 0x53, 0x97, 0x2f, 0xe1, 0x56, 0xd0, 0x69, 0x1e, 0xfc, 0x25, 0x4c, 0x86, 0x4e, 0x9a, 0x44, 0x89, 0x97, 0xc4, 0x15, 0x25, 0xff, 0xc3, 0x86, 0xfa, 0x97, 0xee, 0x48, 0x98, 0x52, 0xc9, 0x5a, 0x14, 0x85, 0xb1, 0x99, 0x3b, 0x33, 0xe4, 0x0f, 0xd3, 0xe0, 0xde, 0x7f, 0x1b, 0x64, 0x30, 0x8f, 0xa8, 0x29, 0xfa, 0xce, 0xb3, 0xbe, 0x17, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11998 = { .name = "ecdsa_brainpoolp384r1_sha384_11998", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11998_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_11998_msg, .msglen = 4, .sig = ecdsa_brainpoolp384r1_sha384_11998_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1243 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 11999 for ECDSA, tcId is 1244 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_11999_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_11999_sig[] = { 0x65, 0xfd, 0x45, 0x68, 0x14, 0x37, 0x1d, 0x60, 0x88, 0x3f, 0xfd, 0xa5, 0xf7, 0x4f, 0x36, 0xdc, 0x2d, 0x45, 0x88, 0x61, 0x21, 0x77, 0x0e, 0x29, 0xed, 0x31, 0x63, 0x75, 0x47, 0x16, 0xd1, 0x2c, 0x1c, 0xab, 0x03, 0xa2, 0xcb, 0x6a, 0x6e, 0x33, 0x76, 0xfc, 0x96, 0xd8, 0x72, 0x7b, 0xd1, 0xbf, 0x1a, 0xa6, 0x5e, 0x57, 0x93, 0x2d, 0x05, 0x78, 0x84, 0x13, 0x21, 0x9b, 0x7a, 0xb2, 0x3e, 0x53, 0x37, 0xf6, 0x3f, 0xb2, 0xdc, 0xb0, 0xf8, 0x9b, 0x42, 0x27, 0xd2, 0x84, 0xa3, 0xfc, 0xbd, 0xf3, 0xc5, 0x4c, 0x02, 0x1a, 0x6c, 0x0c, 0xa4, 0x24, 0x45, 0xbf, 0x80, 0x22, 0x13, 0x12, 0x16, 0x54, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_11999 = { .name = "ecdsa_brainpoolp384r1_sha384_11999", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_11999_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp384r1_sha384_11999_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1244 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12000 for ECDSA, tcId is 1245 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12000_pubkey[] = { 0x6c, 0x9a, 0xab, 0xa3, 0x43, 0xcb, 0x2f, 0xaf, 0x09, 0x83, 0x19, 0xcc, 0x4d, 0x15, 0xea, 0x21, 0x87, 0x86, 0xf5, 0x5c, 0x8c, 0xf0, 0xa8, 0xb6, 0x68, 0x09, 0x11, 0x70, 0xa6, 0x42, 0x2f, 0x6c, 0x24, 0x98, 0x94, 0x5a, 0x81, 0x64, 0xa4, 0xb6, 0xf2, 0x7c, 0xdd, 0x11, 0xe8, 0x00, 0xda, 0x50, 0x1b, 0xe9, 0x61, 0xb3, 0x7b, 0x09, 0x80, 0x46, 0x10, 0xce, 0x0d, 0xf4, 0x0d, 0xd8, 0x23, 0x6c, 0x75, 0xa1, 0x2d, 0x0c, 0x80, 0x14, 0xb1, 0x63, 0x46, 0x4a, 0x4a, 0xeb, 0xa7, 0xcb, 0x18, 0xd2, 0x0d, 0x32, 0x22, 0x08, 0x3e, 0xc4, 0xa9, 0x41, 0x85, 0x2f, 0x24, 0xaa, 0x3d, 0x5d, 0x84, 0xe3, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12000_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12000_sig[] = { 0x46, 0xcb, 0x43, 0x79, 0x8b, 0xc0, 0x6d, 0xbe, 0x78, 0x8a, 0x4f, 0x4b, 0x2b, 0x98, 0x13, 0x0e, 0x3a, 0xae, 0x91, 0x7f, 0x1d, 0x2a, 0x00, 0x56, 0x56, 0xbd, 0x70, 0xa3, 0x28, 0x8c, 0xaf, 0x7c, 0x37, 0xd1, 0xde, 0xe0, 0xc9, 0x10, 0x88, 0x28, 0xa6, 0x9d, 0x2a, 0x1e, 0xea, 0xe1, 0x13, 0xc6, 0x81, 0x80, 0xd0, 0xc5, 0xba, 0x1b, 0xed, 0x4f, 0x2b, 0x0d, 0x4d, 0x8e, 0xd7, 0xea, 0x17, 0x91, 0x6b, 0x63, 0x40, 0x03, 0x97, 0xe7, 0xb6, 0xd7, 0x0e, 0x73, 0x12, 0xc5, 0xff, 0x0f, 0x45, 0x24, 0xa4, 0x9a, 0xbf, 0x70, 0x71, 0xc8, 0xba, 0x47, 0x0d, 0xe6, 0x4f, 0xb6, 0x68, 0x57, 0x03, 0x80, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12000 = { .name = "ecdsa_brainpoolp384r1_sha384_12000", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12000_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12000_msg, .msglen = 20, .sig = ecdsa_brainpoolp384r1_sha384_12000_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1245 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12001 for ECDSA, tcId is 1246 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12001_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12001_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12001_sig[] = { 0x61, 0x48, 0x3c, 0x72, 0x93, 0x69, 0x41, 0x31, 0x44, 0xa6, 0xbe, 0x0d, 0xd0, 0x5c, 0x1a, 0xc2, 0x9b, 0xc4, 0x40, 0xbb, 0xda, 0xf8, 0x7e, 0x57, 0x2a, 0xa9, 0x87, 0xe9, 0xca, 0x42, 0x36, 0x39, 0xf3, 0x39, 0xbc, 0xaa, 0xad, 0x99, 0xcb, 0x1f, 0xa8, 0x0b, 0x7c, 0x35, 0x41, 0x6a, 0x18, 0x34, 0xec, 0x04, 0xbc, 0xf0, 0xfe, 0x78, 0x12, 0xc7, 0x12, 0xeb, 0x1f, 0x06, 0xa1, 0x6d, 0xac, 0xa3, 0x41, 0xbb, 0x95, 0x6c, 0x33, 0x9e, 0xbc, 0xf5, 0xe4, 0xe4, 0x03, 0xc7, 0xd8, 0x92, 0x8d, 0x5e, 0xb4, 0xfd, 0xf7, 0xd3, 0xf5, 0x3a, 0x2c, 0x06, 0xd6, 0xc9, 0xfa, 0xc3, 0x47, 0xf6, 0x03, 0xac, 0x32, 0x09, 0xa2, 0xaf, 0x37, 0x51, 0x6f, 0x80, 0x7b, 0x50, 0x36, 0x3b, 0x53, 0x28, 0xbc, 0x98, 0xb9, 0x43, 0x54, 0xaf, 0x7d, 0x59, 0x96, 0x6d, 0x16, 0x0f, 0x68, 0xe8, 0x0c, 0x6b, 0x2d, 0xc0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12001 = { .name = "ecdsa_brainpoolp512r1_sha512_12001", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12001_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12001_msg, .msglen = 6, .sig = ecdsa_brainpoolp512r1_sha512_12001_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1246 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12002 for ECDSA, tcId is 1247 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12002_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12002_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12002_sig[] = { 0x5b, 0x86, 0xad, 0x57, 0x6c, 0xdc, 0x5e, 0x76, 0xa4, 0xe4, 0xa2, 0xba, 0x79, 0x5b, 0x80, 0xfa, 0xa8, 0x22, 0xbc, 0x07, 0xd6, 0x2d, 0x66, 0x97, 0xa1, 0xa2, 0xd4, 0xc9, 0xf1, 0xac, 0x99, 0xbd, 0xaf, 0x6c, 0x34, 0xec, 0x44, 0x6e, 0x76, 0x4f, 0x59, 0x8d, 0xb0, 0xf4, 0x22, 0x59, 0x2a, 0xe5, 0x9a, 0x59, 0xc8, 0xef, 0xdf, 0x6c, 0x48, 0x0a, 0xdf, 0xff, 0x10, 0xbf, 0xf1, 0x93, 0x6f, 0xdd, 0x77, 0x25, 0xa5, 0x6a, 0x95, 0xc4, 0xcb, 0xea, 0x85, 0xeb, 0xf7, 0x8f, 0x01, 0xd1, 0x6b, 0x63, 0x53, 0x4f, 0x6f, 0x0c, 0x53, 0xd6, 0x45, 0xe3, 0xc3, 0xd6, 0xe7, 0xc3, 0x0a, 0xe2, 0x57, 0x97, 0xa5, 0xe4, 0xe6, 0xa5, 0x78, 0x36, 0x8d, 0xf5, 0x77, 0x73, 0x48, 0x23, 0xad, 0x0e, 0xfa, 0xbd, 0x15, 0x58, 0x1c, 0x42, 0x8d, 0xef, 0x0c, 0x4e, 0x34, 0xda, 0xca, 0xcb, 0x9f, 0x16, 0x49, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12002 = { .name = "ecdsa_brainpoolp512r1_sha512_12002", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12002_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12002_msg, .msglen = 4, .sig = ecdsa_brainpoolp512r1_sha512_12002_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1247 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12003 for ECDSA, tcId is 1248 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12003_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12003_sig[] = { 0x89, 0xed, 0xf7, 0x5e, 0x6e, 0x98, 0x63, 0x05, 0xd8, 0x18, 0x13, 0x86, 0xc1, 0x6d, 0xb4, 0x4b, 0xa0, 0xd7, 0xff, 0x40, 0xf4, 0x33, 0x55, 0x69, 0x75, 0x4a, 0x48, 0x1f, 0x5c, 0xd4, 0x8c, 0x62, 0x11, 0xa6, 0x3d, 0xe7, 0xbd, 0xaa, 0x48, 0x5e, 0x9f, 0xa7, 0x98, 0x58, 0xa4, 0xea, 0xbf, 0x11, 0x1f, 0xed, 0x29, 0x59, 0xf0, 0x31, 0xde, 0x2a, 0x13, 0x2b, 0xa7, 0x09, 0x41, 0x26, 0x83, 0xa9, 0x7a, 0x8c, 0x08, 0x56, 0x4f, 0x51, 0x53, 0x41, 0x28, 0xbb, 0x52, 0xfe, 0x36, 0xdf, 0xfa, 0xae, 0x89, 0x07, 0x90, 0x11, 0x25, 0x6e, 0xf8, 0x06, 0x9e, 0x64, 0xd6, 0x4c, 0x56, 0x10, 0xd3, 0xe6, 0x11, 0xc0, 0xba, 0x8b, 0x19, 0x02, 0x73, 0x88, 0xfc, 0xcc, 0x21, 0x25, 0x23, 0xb2, 0x2c, 0x44, 0xe8, 0x5a, 0x78, 0x9e, 0x16, 0xcb, 0x1b, 0xbd, 0x32, 0x40, 0xc8, 0x6b, 0x43, 0x48, 0x0f, 0xde, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12003 = { .name = "ecdsa_brainpoolp512r1_sha512_12003", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12003_pubkey, .pubkeylen = 128, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp512r1_sha512_12003_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1248 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12004 for ECDSA, tcId is 1249 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12004_pubkey[] = { 0x1e, 0xc7, 0xfe, 0x22, 0x75, 0x86, 0x0c, 0x3b, 0xc0, 0xe4, 0xe6, 0xe4, 0x59, 0xaf, 0x7e, 0x16, 0x98, 0x5d, 0x37, 0xad, 0xba, 0x73, 0x51, 0xac, 0x35, 0x7a, 0x7c, 0x39, 0x7e, 0x07, 0x52, 0x2e, 0xa4, 0x1b, 0xcc, 0xa8, 0xe8, 0x97, 0x77, 0xfe, 0x05, 0xb8, 0xf0, 0xd9, 0xdc, 0x8c, 0x61, 0x40, 0x04, 0xfc, 0xaf, 0x30, 0xa9, 0x70, 0x01, 0xa5, 0x01, 0x1a, 0x15, 0x9f, 0x46, 0xfc, 0xd5, 0x44, 0x3c, 0xbc, 0x1d, 0xdf, 0xc7, 0xac, 0x89, 0xa1, 0xa2, 0xf8, 0xee, 0xf7, 0x7b, 0xf9, 0xbb, 0xa8, 0xad, 0xe7, 0x3d, 0xa2, 0x10, 0x0c, 0xb6, 0xa3, 0x71, 0x54, 0x6b, 0x49, 0x5f, 0xb5, 0xea, 0x88, 0x5e, 0xb6, 0x31, 0x64, 0x5e, 0x79, 0x59, 0x1d, 0xb6, 0x59, 0xc4, 0x92, 0x66, 0xd2, 0x63, 0xd5, 0xcb, 0xd3, 0x40, 0x30, 0x81, 0xcb, 0x40, 0x75, 0x36, 0xef, 0xe9, 0xa5, 0xbe, 0xc6, 0x99, 0x55, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12004_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12004_sig[] = { 0xa6, 0x20, 0x88, 0x0b, 0xb7, 0xfa, 0xb1, 0x18, 0x0e, 0x3d, 0x8f, 0x39, 0x3e, 0x4b, 0x33, 0x43, 0xdd, 0x4e, 0xb1, 0xc3, 0x74, 0xf9, 0xd6, 0x12, 0x52, 0xf8, 0xa2, 0x01, 0xd9, 0x09, 0x6b, 0xa8, 0x36, 0x72, 0x1f, 0x8e, 0x2d, 0x8b, 0x56, 0xcb, 0xf4, 0x06, 0x96, 0x0a, 0xae, 0x0e, 0x50, 0x32, 0x5a, 0xdf, 0xca, 0x6b, 0x1b, 0x52, 0x9f, 0x06, 0xa8, 0x12, 0x60, 0xbd, 0x8b, 0x15, 0xff, 0x68, 0x76, 0x53, 0x7f, 0xeb, 0xbc, 0x0e, 0x24, 0xab, 0x49, 0x92, 0xb5, 0x76, 0xab, 0xf8, 0xbc, 0x02, 0x01, 0xca, 0xcf, 0x5c, 0xcf, 0x67, 0x4a, 0xd3, 0xc3, 0xb1, 0x55, 0x2c, 0x98, 0xca, 0x64, 0x64, 0x2e, 0xff, 0x54, 0x01, 0xaf, 0xec, 0xab, 0x16, 0x7e, 0xc0, 0xbe, 0x19, 0x5f, 0xe5, 0xff, 0xa1, 0x78, 0xf1, 0x45, 0x67, 0xef, 0x17, 0x1b, 0x48, 0x27, 0x96, 0x4a, 0x55, 0x9d, 0x07, 0x9b, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12004 = { .name = "ecdsa_brainpoolp512r1_sha512_12004", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12004_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12004_msg, .msglen = 20, .sig = ecdsa_brainpoolp512r1_sha512_12004_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1249 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12005 for ECDSA, tcId is 1250 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12005_pubkey[] = { 0xc5, 0x14, 0xe6, 0x6e, 0xf7, 0x6e, 0x69, 0xaa, 0x6d, 0x27, 0xeb, 0x4a, 0x91, 0x47, 0xc8, 0x4f, 0x25, 0x16, 0x40, 0x74, 0x94, 0xee, 0x45, 0x41, 0x36, 0xa4, 0x2f, 0x6b, 0x36, 0x4a, 0x31, 0x8d, 0xdc, 0xfd, 0x8b, 0x70, 0x24, 0x55, 0x0e, 0x60, 0x1b, 0xa5, 0x49, 0xf9, 0x6d, 0x2c, 0xa1, 0xb7, 0x5d, 0x51, 0x2c, 0xa6, 0xcf, 0x47, 0xfb, 0xe4, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12005_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12005_sig[] = { 0x34, 0xa5, 0x9f, 0x27, 0xe9, 0x02, 0x97, 0xe1, 0x1a, 0xc1, 0x0c, 0x22, 0xd1, 0x5f, 0x54, 0xd6, 0xb9, 0x5b, 0x39, 0xea, 0x3e, 0x7a, 0x0e, 0x0a, 0xc1, 0x9f, 0x61, 0x80, 0x77, 0xa1, 0xce, 0xd2, 0xa6, 0x07, 0xe6, 0xf7, 0x41, 0x0f, 0x1f, 0x2e, 0x5e, 0x8d, 0x95, 0xf1, 0xe9, 0x54, 0x5c, 0x7a, 0x36, 0x81, 0xae, 0xd9, 0x94, 0x27, 0xae, 0x66, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12005 = { .name = "ecdsa_brainpoolp224t1_sha256_12005", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12005_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12005_msg, .msglen = 6, .sig = ecdsa_brainpoolp224t1_sha256_12005_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1250 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12006 for ECDSA, tcId is 1251 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12006_pubkey[] = { 0xc5, 0x14, 0xe6, 0x6e, 0xf7, 0x6e, 0x69, 0xaa, 0x6d, 0x27, 0xeb, 0x4a, 0x91, 0x47, 0xc8, 0x4f, 0x25, 0x16, 0x40, 0x74, 0x94, 0xee, 0x45, 0x41, 0x36, 0xa4, 0x2f, 0x6b, 0x36, 0x4a, 0x31, 0x8d, 0xdc, 0xfd, 0x8b, 0x70, 0x24, 0x55, 0x0e, 0x60, 0x1b, 0xa5, 0x49, 0xf9, 0x6d, 0x2c, 0xa1, 0xb7, 0x5d, 0x51, 0x2c, 0xa6, 0xcf, 0x47, 0xfb, 0xe4, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12006_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12006_sig[] = { 0xcd, 0xd0, 0xd4, 0x5c, 0x29, 0x17, 0x5b, 0xf8, 0xe9, 0xac, 0x47, 0xd8, 0x4e, 0x73, 0xeb, 0x83, 0x10, 0x29, 0x95, 0x38, 0x43, 0x69, 0xd4, 0x5f, 0xe4, 0x32, 0xd2, 0xd6, 0x58, 0x66, 0x41, 0xff, 0x60, 0x21, 0x9d, 0xa2, 0x54, 0x48, 0xc3, 0x14, 0xa2, 0xc4, 0x26, 0x7b, 0xe4, 0xd1, 0x2f, 0x0e, 0x49, 0x0f, 0xd4, 0x61, 0x42, 0xe4, 0x18, 0x74, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12006 = { .name = "ecdsa_brainpoolp224t1_sha256_12006", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12006_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12006_msg, .msglen = 4, .sig = ecdsa_brainpoolp224t1_sha256_12006_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1251 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12007 for ECDSA, tcId is 1252 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12007_pubkey[] = { 0xc5, 0x14, 0xe6, 0x6e, 0xf7, 0x6e, 0x69, 0xaa, 0x6d, 0x27, 0xeb, 0x4a, 0x91, 0x47, 0xc8, 0x4f, 0x25, 0x16, 0x40, 0x74, 0x94, 0xee, 0x45, 0x41, 0x36, 0xa4, 0x2f, 0x6b, 0x36, 0x4a, 0x31, 0x8d, 0xdc, 0xfd, 0x8b, 0x70, 0x24, 0x55, 0x0e, 0x60, 0x1b, 0xa5, 0x49, 0xf9, 0x6d, 0x2c, 0xa1, 0xb7, 0x5d, 0x51, 0x2c, 0xa6, 0xcf, 0x47, 0xfb, 0xe4, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12007_sig[] = { 0x30, 0x00, 0xd3, 0x48, 0x48, 0xdf, 0xf1, 0xf1, 0x41, 0x2f, 0x97, 0x54, 0xac, 0x38, 0xa0, 0x61, 0xae, 0x69, 0xfe, 0xee, 0xf0, 0x7a, 0xae, 0x4c, 0xc3, 0xca, 0x0a, 0x5c, 0x00, 0x33, 0x30, 0xa2, 0xe4, 0xe5, 0xad, 0x39, 0xee, 0x24, 0x46, 0x49, 0xaa, 0xd7, 0xd5, 0xfc, 0x53, 0x3f, 0x0b, 0xc2, 0x81, 0xc0, 0x3d, 0xdb, 0xb0, 0xf6, 0xed, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12007 = { .name = "ecdsa_brainpoolp224t1_sha256_12007", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12007_pubkey, .pubkeylen = 56, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp224t1_sha256_12007_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1252 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12008 for ECDSA, tcId is 1253 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12008_pubkey[] = { 0xc5, 0x14, 0xe6, 0x6e, 0xf7, 0x6e, 0x69, 0xaa, 0x6d, 0x27, 0xeb, 0x4a, 0x91, 0x47, 0xc8, 0x4f, 0x25, 0x16, 0x40, 0x74, 0x94, 0xee, 0x45, 0x41, 0x36, 0xa4, 0x2f, 0x6b, 0x36, 0x4a, 0x31, 0x8d, 0xdc, 0xfd, 0x8b, 0x70, 0x24, 0x55, 0x0e, 0x60, 0x1b, 0xa5, 0x49, 0xf9, 0x6d, 0x2c, 0xa1, 0xb7, 0x5d, 0x51, 0x2c, 0xa6, 0xcf, 0x47, 0xfb, 0xe4, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12008_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12008_sig[] = { 0x1d, 0x0a, 0x67, 0xe5, 0x91, 0x6f, 0x3e, 0xef, 0xa2, 0x79, 0x48, 0x22, 0x48, 0x9b, 0xe4, 0xe9, 0xe8, 0xd2, 0xbf, 0xc8, 0x3f, 0x31, 0x54, 0x41, 0x03, 0xa1, 0x1c, 0xbf, 0x4a, 0xe3, 0xce, 0xc8, 0x88, 0x16, 0x7c, 0xc9, 0x3b, 0xdb, 0xf1, 0xf8, 0x3e, 0xbf, 0x3d, 0x2d, 0x9a, 0x72, 0x88, 0xbd, 0xb1, 0xf0, 0x94, 0xbf, 0x21, 0xb4, 0x5d, 0x01, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12008 = { .name = "ecdsa_brainpoolp224t1_sha256_12008", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12008_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12008_msg, .msglen = 20, .sig = ecdsa_brainpoolp224t1_sha256_12008_sig, .siglen = 56, .result = 1, .comment = "pseudorandom signature, tcId is 1253 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12009 for ECDSA, tcId is 1254 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12009_pubkey[] = { 0x85, 0x09, 0xd2, 0x7e, 0x0e, 0x9b, 0x97, 0x20, 0xf6, 0x1f, 0x48, 0xd4, 0x91, 0xc6, 0xbc, 0xc6, 0x2f, 0xd6, 0xd9, 0x7f, 0x23, 0x39, 0x4f, 0xb0, 0xb7, 0x94, 0xf3, 0xbc, 0x7e, 0x92, 0x6c, 0x73, 0x99, 0xfc, 0xa6, 0x7f, 0x50, 0x35, 0x22, 0xd0, 0x45, 0x3d, 0xf1, 0xca, 0xf8, 0xe6, 0xdb, 0x43, 0xd6, 0x2c, 0x78, 0x9f, 0x99, 0xfb, 0xc4, 0x68, 0x77, 0x4f, 0xb2, 0x9e, 0xfa, 0x44, 0x16, 0x2c, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12009_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12009_sig[] = { 0x8a, 0x2a, 0x6c, 0xd8, 0xb3, 0x67, 0x28, 0xe5, 0xcb, 0xac, 0x83, 0xe6, 0x74, 0x8d, 0x36, 0x87, 0x6c, 0xb4, 0x60, 0x04, 0x87, 0x2b, 0x45, 0xad, 0xc0, 0x5c, 0x55, 0x28, 0x4c, 0xe6, 0x12, 0xb6, 0x98, 0xac, 0x99, 0xca, 0x60, 0x5e, 0x2c, 0xd4, 0x6c, 0xe1, 0x72, 0x64, 0xbe, 0x25, 0x89, 0x91, 0x38, 0xa0, 0x63, 0x40, 0xfa, 0x75, 0xc0, 0x4e, 0x97, 0xb7, 0x4a, 0xf2, 0x5a, 0xd1, 0x6b, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12009 = { .name = "ecdsa_brainpoolp256t1_sha256_12009", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12009_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12009_msg, .msglen = 6, .sig = ecdsa_brainpoolp256t1_sha256_12009_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1254 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12010 for ECDSA, tcId is 1255 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12010_pubkey[] = { 0x85, 0x09, 0xd2, 0x7e, 0x0e, 0x9b, 0x97, 0x20, 0xf6, 0x1f, 0x48, 0xd4, 0x91, 0xc6, 0xbc, 0xc6, 0x2f, 0xd6, 0xd9, 0x7f, 0x23, 0x39, 0x4f, 0xb0, 0xb7, 0x94, 0xf3, 0xbc, 0x7e, 0x92, 0x6c, 0x73, 0x99, 0xfc, 0xa6, 0x7f, 0x50, 0x35, 0x22, 0xd0, 0x45, 0x3d, 0xf1, 0xca, 0xf8, 0xe6, 0xdb, 0x43, 0xd6, 0x2c, 0x78, 0x9f, 0x99, 0xfb, 0xc4, 0x68, 0x77, 0x4f, 0xb2, 0x9e, 0xfa, 0x44, 0x16, 0x2c, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12010_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12010_sig[] = { 0x4f, 0x0a, 0xfd, 0xfa, 0x97, 0x55, 0x57, 0xf8, 0xa1, 0x44, 0xc9, 0xb0, 0xb2, 0xa6, 0x0f, 0x43, 0xe4, 0x0f, 0x5b, 0x9b, 0xa0, 0xd8, 0x07, 0x79, 0x94, 0x3a, 0x10, 0x6e, 0x6a, 0x27, 0x8b, 0x69, 0x1d, 0x52, 0x42, 0x4c, 0x3a, 0xeb, 0x98, 0x00, 0xc2, 0xaf, 0xb9, 0xa0, 0x66, 0xb1, 0x06, 0xb6, 0x6f, 0x20, 0x27, 0x17, 0x82, 0x8a, 0x26, 0x1e, 0xd2, 0x74, 0x76, 0x19, 0x0d, 0x3f, 0x62, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12010 = { .name = "ecdsa_brainpoolp256t1_sha256_12010", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12010_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12010_msg, .msglen = 4, .sig = ecdsa_brainpoolp256t1_sha256_12010_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1255 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12011 for ECDSA, tcId is 1256 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12011_pubkey[] = { 0x85, 0x09, 0xd2, 0x7e, 0x0e, 0x9b, 0x97, 0x20, 0xf6, 0x1f, 0x48, 0xd4, 0x91, 0xc6, 0xbc, 0xc6, 0x2f, 0xd6, 0xd9, 0x7f, 0x23, 0x39, 0x4f, 0xb0, 0xb7, 0x94, 0xf3, 0xbc, 0x7e, 0x92, 0x6c, 0x73, 0x99, 0xfc, 0xa6, 0x7f, 0x50, 0x35, 0x22, 0xd0, 0x45, 0x3d, 0xf1, 0xca, 0xf8, 0xe6, 0xdb, 0x43, 0xd6, 0x2c, 0x78, 0x9f, 0x99, 0xfb, 0xc4, 0x68, 0x77, 0x4f, 0xb2, 0x9e, 0xfa, 0x44, 0x16, 0x2c, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12011_sig[] = { 0x4e, 0xbd, 0x5f, 0x5e, 0x64, 0xc1, 0x0e, 0x74, 0xbd, 0x32, 0xa7, 0x69, 0x56, 0x5c, 0x49, 0xf9, 0x31, 0xec, 0x3b, 0x69, 0xf7, 0x48, 0x59, 0xe4, 0x12, 0x3d, 0xd8, 0x5d, 0xdf, 0xa6, 0xac, 0x75, 0x0c, 0x14, 0x98, 0xcb, 0x92, 0xce, 0x45, 0xa6, 0xe7, 0x77, 0xa1, 0xf7, 0xd8, 0xde, 0x1e, 0x1f, 0x11, 0xf8, 0x05, 0x6b, 0xa6, 0x75, 0xec, 0x9d, 0x10, 0x27, 0xb8, 0x84, 0xa9, 0xe2, 0x51, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12011 = { .name = "ecdsa_brainpoolp256t1_sha256_12011", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12011_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp256t1_sha256_12011_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1256 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12012 for ECDSA, tcId is 1257 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12012_pubkey[] = { 0x85, 0x09, 0xd2, 0x7e, 0x0e, 0x9b, 0x97, 0x20, 0xf6, 0x1f, 0x48, 0xd4, 0x91, 0xc6, 0xbc, 0xc6, 0x2f, 0xd6, 0xd9, 0x7f, 0x23, 0x39, 0x4f, 0xb0, 0xb7, 0x94, 0xf3, 0xbc, 0x7e, 0x92, 0x6c, 0x73, 0x99, 0xfc, 0xa6, 0x7f, 0x50, 0x35, 0x22, 0xd0, 0x45, 0x3d, 0xf1, 0xca, 0xf8, 0xe6, 0xdb, 0x43, 0xd6, 0x2c, 0x78, 0x9f, 0x99, 0xfb, 0xc4, 0x68, 0x77, 0x4f, 0xb2, 0x9e, 0xfa, 0x44, 0x16, 0x2c, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12012_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12012_sig[] = { 0x58, 0x95, 0xcb, 0x22, 0x36, 0x65, 0x17, 0x39, 0x57, 0xd3, 0x3b, 0x1b, 0xdb, 0xc9, 0x72, 0x73, 0x71, 0xcf, 0xe5, 0xeb, 0xfb, 0x59, 0x6b, 0x8e, 0x36, 0x6b, 0x9f, 0x1c, 0x75, 0xaa, 0x0a, 0x0e, 0x5d, 0x37, 0x20, 0x10, 0xb3, 0x6d, 0xde, 0x53, 0xc5, 0x99, 0x26, 0x28, 0x29, 0xa8, 0xf8, 0x85, 0x81, 0xad, 0x62, 0x47, 0xd3, 0xf3, 0x0a, 0x2b, 0x69, 0x29, 0x63, 0x21, 0x2d, 0xb8, 0x8b, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12012 = { .name = "ecdsa_brainpoolp256t1_sha256_12012", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12012_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12012_msg, .msglen = 20, .sig = ecdsa_brainpoolp256t1_sha256_12012_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 1257 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12013 for ECDSA, tcId is 1258 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320t1_sha384_12013_pubkey[] = { 0x61, 0x44, 0x7d, 0x3e, 0x1b, 0xb7, 0xda, 0x81, 0x22, 0x35, 0x2b, 0xad, 0xa1, 0x7a, 0xb9, 0x80, 0xcf, 0x5c, 0xbd, 0xdb, 0xe0, 0x9c, 0x42, 0x69, 0x53, 0x3c, 0x7b, 0x48, 0x76, 0x4b, 0xbf, 0xdf, 0xfa, 0x78, 0xaf, 0x06, 0xef, 0x63, 0x33, 0x22, 0x6a, 0xc4, 0x89, 0x9f, 0x6a, 0x0b, 0xfa, 0xff, 0x64, 0x0c, 0x91, 0xae, 0x09, 0x94, 0x89, 0xb1, 0x80, 0x93, 0xed, 0x19, 0x87, 0xb9, 0xa1, 0x8c, 0xf6, 0x21, 0x65, 0x3b, 0x93, 0xdf, 0xca, 0xf6, 0xbb, 0xbe, 0x96, 0x96, 0xe5, 0x22, 0x81, 0xc8, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12013_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12013_sig[] = { 0xac, 0xcb, 0x50, 0x6f, 0x1b, 0xad, 0x3d, 0x84, 0xf2, 0x96, 0x6b, 0xe7, 0x63, 0x0f, 0xf5, 0x51, 0xbe, 0x70, 0xc1, 0xc1, 0xd6, 0xf4, 0x57, 0x28, 0xab, 0xde, 0x03, 0x7b, 0xf2, 0xa6, 0xb3, 0xbb, 0xc2, 0xdc, 0x94, 0x41, 0x65, 0x39, 0x33, 0x9d, 0x65, 0xc5, 0x76, 0x93, 0x5e, 0x93, 0xac, 0x45, 0x28, 0x34, 0xbd, 0xf9, 0xcf, 0x3a, 0x6c, 0xe9, 0x1d, 0xa7, 0xfa, 0xda, 0xba, 0x34, 0xb2, 0x4a, 0x0b, 0x5a, 0xa4, 0x7f, 0x71, 0x7a, 0xe3, 0xd1, 0xef, 0x21, 0xc6, 0xef, 0x7e, 0xf6, 0xbe, 0x32, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320t1_sha384_12013 = { .name = "ecdsa_brainpoolp320t1_sha384_12013", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320t1_str_params, .pubkey = ecdsa_brainpoolp320t1_sha384_12013_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320t1_sha384_12013_msg, .msglen = 6, .sig = ecdsa_brainpoolp320t1_sha384_12013_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1258 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) */ /* Test 12014 for ECDSA, tcId is 1259 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320t1_sha384_12014_pubkey[] = { 0x61, 0x44, 0x7d, 0x3e, 0x1b, 0xb7, 0xda, 0x81, 0x22, 0x35, 0x2b, 0xad, 0xa1, 0x7a, 0xb9, 0x80, 0xcf, 0x5c, 0xbd, 0xdb, 0xe0, 0x9c, 0x42, 0x69, 0x53, 0x3c, 0x7b, 0x48, 0x76, 0x4b, 0xbf, 0xdf, 0xfa, 0x78, 0xaf, 0x06, 0xef, 0x63, 0x33, 0x22, 0x6a, 0xc4, 0x89, 0x9f, 0x6a, 0x0b, 0xfa, 0xff, 0x64, 0x0c, 0x91, 0xae, 0x09, 0x94, 0x89, 0xb1, 0x80, 0x93, 0xed, 0x19, 0x87, 0xb9, 0xa1, 0x8c, 0xf6, 0x21, 0x65, 0x3b, 0x93, 0xdf, 0xca, 0xf6, 0xbb, 0xbe, 0x96, 0x96, 0xe5, 0x22, 0x81, 0xc8, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12014_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12014_sig[] = { 0x6f, 0x64, 0xc4, 0xe0, 0x5f, 0xb8, 0xf1, 0x1e, 0x7c, 0xa9, 0xc7, 0x14, 0x07, 0xde, 0x33, 0xd8, 0x24, 0xad, 0xf4, 0xc0, 0xda, 0x9a, 0xbf, 0x2f, 0x74, 0xa7, 0xb2, 0x8d, 0xae, 0x22, 0x53, 0x58, 0x6b, 0x18, 0xd3, 0xa6, 0x9b, 0xea, 0x05, 0x20, 0xca, 0x8e, 0xf1, 0x9a, 0xe2, 0xf2, 0x78, 0x26, 0x5d, 0xb2, 0x72, 0x59, 0x69, 0x3e, 0x57, 0xc7, 0xcf, 0x52, 0xe5, 0xc1, 0x2d, 0x53, 0xf2, 0x9e, 0x32, 0x1a, 0x68, 0xae, 0xa5, 0x57, 0x0f, 0x9f, 0x42, 0x88, 0x54, 0x52, 0x28, 0x13, 0x97, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320t1_sha384_12014 = { .name = "ecdsa_brainpoolp320t1_sha384_12014", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320t1_str_params, .pubkey = ecdsa_brainpoolp320t1_sha384_12014_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320t1_sha384_12014_msg, .msglen = 4, .sig = ecdsa_brainpoolp320t1_sha384_12014_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1259 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) */ /* Test 12015 for ECDSA, tcId is 1260 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320t1_sha384_12015_pubkey[] = { 0x61, 0x44, 0x7d, 0x3e, 0x1b, 0xb7, 0xda, 0x81, 0x22, 0x35, 0x2b, 0xad, 0xa1, 0x7a, 0xb9, 0x80, 0xcf, 0x5c, 0xbd, 0xdb, 0xe0, 0x9c, 0x42, 0x69, 0x53, 0x3c, 0x7b, 0x48, 0x76, 0x4b, 0xbf, 0xdf, 0xfa, 0x78, 0xaf, 0x06, 0xef, 0x63, 0x33, 0x22, 0x6a, 0xc4, 0x89, 0x9f, 0x6a, 0x0b, 0xfa, 0xff, 0x64, 0x0c, 0x91, 0xae, 0x09, 0x94, 0x89, 0xb1, 0x80, 0x93, 0xed, 0x19, 0x87, 0xb9, 0xa1, 0x8c, 0xf6, 0x21, 0x65, 0x3b, 0x93, 0xdf, 0xca, 0xf6, 0xbb, 0xbe, 0x96, 0x96, 0xe5, 0x22, 0x81, 0xc8, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12015_sig[] = { 0x80, 0x43, 0x96, 0x03, 0x43, 0x4a, 0xe3, 0x8f, 0x3f, 0x08, 0xca, 0x88, 0x12, 0xc3, 0xcf, 0x6b, 0x5b, 0x41, 0x97, 0x3a, 0xac, 0xe7, 0x7c, 0xe5, 0xac, 0xc0, 0xfe, 0xc5, 0xac, 0xcb, 0xe5, 0xfc, 0xe6, 0x5b, 0x9d, 0xfa, 0xee, 0xb1, 0xd7, 0x5d, 0x8a, 0x95, 0x2a, 0xf6, 0x32, 0xfc, 0x48, 0x23, 0xff, 0x40, 0xf7, 0xd6, 0x5b, 0xe2, 0x3e, 0x85, 0x71, 0x7e, 0xf2, 0x11, 0x11, 0x18, 0xb2, 0xb2, 0x29, 0x32, 0xdc, 0x3f, 0x8b, 0x47, 0x95, 0x01, 0xe1, 0xbc, 0x42, 0x2f, 0xb0, 0xf6, 0x30, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320t1_sha384_12015 = { .name = "ecdsa_brainpoolp320t1_sha384_12015", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320t1_str_params, .pubkey = ecdsa_brainpoolp320t1_sha384_12015_pubkey, .pubkeylen = 80, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp320t1_sha384_12015_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1260 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) */ /* Test 12016 for ECDSA, tcId is 1261 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp320t1_sha384_12016_pubkey[] = { 0x61, 0x44, 0x7d, 0x3e, 0x1b, 0xb7, 0xda, 0x81, 0x22, 0x35, 0x2b, 0xad, 0xa1, 0x7a, 0xb9, 0x80, 0xcf, 0x5c, 0xbd, 0xdb, 0xe0, 0x9c, 0x42, 0x69, 0x53, 0x3c, 0x7b, 0x48, 0x76, 0x4b, 0xbf, 0xdf, 0xfa, 0x78, 0xaf, 0x06, 0xef, 0x63, 0x33, 0x22, 0x6a, 0xc4, 0x89, 0x9f, 0x6a, 0x0b, 0xfa, 0xff, 0x64, 0x0c, 0x91, 0xae, 0x09, 0x94, 0x89, 0xb1, 0x80, 0x93, 0xed, 0x19, 0x87, 0xb9, 0xa1, 0x8c, 0xf6, 0x21, 0x65, 0x3b, 0x93, 0xdf, 0xca, 0xf6, 0xbb, 0xbe, 0x96, 0x96, 0xe5, 0x22, 0x81, 0xc8, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12016_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp320t1_sha384_12016_sig[] = { 0x6e, 0xf6, 0x46, 0xd7, 0x8f, 0x7f, 0x4d, 0x69, 0xaa, 0x73, 0x78, 0xa9, 0xd1, 0x99, 0xbc, 0x7f, 0xc5, 0x35, 0x5f, 0x65, 0xa8, 0x3b, 0x62, 0xde, 0x0d, 0x78, 0xca, 0x3f, 0x6a, 0x95, 0x88, 0xd8, 0x73, 0xb6, 0xa5, 0x4b, 0xa9, 0xcb, 0xf9, 0x8a, 0xb3, 0x1e, 0x5c, 0xa0, 0x1a, 0x5d, 0x07, 0x6e, 0x70, 0xa1, 0xb8, 0xde, 0x28, 0xef, 0xf1, 0x26, 0xbb, 0x3c, 0xab, 0x9f, 0x0e, 0x60, 0x7a, 0x2c, 0xfd, 0x3a, 0x80, 0x56, 0xb6, 0x89, 0x67, 0x62, 0xba, 0xe5, 0x1b, 0x25, 0x86, 0x1b, 0x8e, 0xf7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp320t1_sha384_12016 = { .name = "ecdsa_brainpoolp320t1_sha384_12016", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp320t1_str_params, .pubkey = ecdsa_brainpoolp320t1_sha384_12016_pubkey, .pubkeylen = 80, .msg = ecdsa_brainpoolp320t1_sha384_12016_msg, .msglen = 20, .sig = ecdsa_brainpoolp320t1_sha384_12016_sig, .siglen = 80, .result = 1, .comment = "pseudorandom signature, tcId is 1261 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) */ /* Test 12017 for ECDSA, tcId is 1262 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12017_pubkey[] = { 0x00, 0xd9, 0x5b, 0x9b, 0xbc, 0xf0, 0x29, 0x07, 0x42, 0x40, 0xd2, 0x32, 0x32, 0xb2, 0x87, 0xfe, 0xc4, 0x07, 0x68, 0xd9, 0xd3, 0x18, 0x26, 0xa2, 0xd1, 0x28, 0xd4, 0x86, 0x67, 0xc9, 0x1f, 0xdd, 0xd5, 0x09, 0xce, 0x44, 0x9d, 0x7d, 0xe1, 0x45, 0x68, 0xaf, 0x32, 0x0d, 0x15, 0x49, 0x9f, 0x96, 0x4c, 0xdc, 0xcb, 0xb3, 0x34, 0x79, 0x1e, 0x89, 0xc0, 0xea, 0x0d, 0xad, 0xd3, 0xe9, 0xab, 0x65, 0x7d, 0x6d, 0xec, 0x8a, 0x38, 0xb1, 0x74, 0xc6, 0xf3, 0xa9, 0xda, 0x08, 0xd8, 0xbf, 0x37, 0x03, 0xcb, 0xb2, 0x1e, 0xd3, 0xc3, 0x5d, 0xc7, 0x02, 0x53, 0x6a, 0xae, 0xef, 0x03, 0xbd, 0x56, 0xa0, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12017_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12017_sig[] = { 0x38, 0xd0, 0x47, 0x2c, 0x6a, 0x7f, 0xb0, 0xfa, 0x0b, 0x60, 0x50, 0x23, 0xec, 0xa6, 0xe2, 0x6c, 0x75, 0x70, 0x82, 0x05, 0x54, 0xf1, 0xd3, 0xcc, 0xb9, 0xcc, 0xe1, 0x55, 0x79, 0x46, 0x9c, 0x05, 0x7c, 0xa6, 0xf9, 0x9c, 0xaf, 0xb5, 0x91, 0x59, 0x9d, 0xdc, 0x17, 0x13, 0xcd, 0x67, 0xe6, 0x59, 0x50, 0xf3, 0x98, 0x31, 0x45, 0xa7, 0x48, 0xdd, 0xa0, 0x8a, 0xb2, 0x54, 0x7e, 0xff, 0x69, 0x2b, 0x69, 0x60, 0x6b, 0xef, 0xfa, 0x99, 0x33, 0x80, 0xf2, 0x7f, 0xdf, 0x6f, 0xb9, 0x1b, 0xa7, 0xbb, 0x9b, 0x3b, 0x37, 0xc6, 0x55, 0x86, 0xc9, 0x51, 0x2f, 0xf1, 0x0b, 0xa8, 0x49, 0xb5, 0x89, 0x87, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12017 = { .name = "ecdsa_brainpoolp384t1_sha384_12017", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12017_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12017_msg, .msglen = 6, .sig = ecdsa_brainpoolp384t1_sha384_12017_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1262 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12018 for ECDSA, tcId is 1263 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12018_pubkey[] = { 0x00, 0xd9, 0x5b, 0x9b, 0xbc, 0xf0, 0x29, 0x07, 0x42, 0x40, 0xd2, 0x32, 0x32, 0xb2, 0x87, 0xfe, 0xc4, 0x07, 0x68, 0xd9, 0xd3, 0x18, 0x26, 0xa2, 0xd1, 0x28, 0xd4, 0x86, 0x67, 0xc9, 0x1f, 0xdd, 0xd5, 0x09, 0xce, 0x44, 0x9d, 0x7d, 0xe1, 0x45, 0x68, 0xaf, 0x32, 0x0d, 0x15, 0x49, 0x9f, 0x96, 0x4c, 0xdc, 0xcb, 0xb3, 0x34, 0x79, 0x1e, 0x89, 0xc0, 0xea, 0x0d, 0xad, 0xd3, 0xe9, 0xab, 0x65, 0x7d, 0x6d, 0xec, 0x8a, 0x38, 0xb1, 0x74, 0xc6, 0xf3, 0xa9, 0xda, 0x08, 0xd8, 0xbf, 0x37, 0x03, 0xcb, 0xb2, 0x1e, 0xd3, 0xc3, 0x5d, 0xc7, 0x02, 0x53, 0x6a, 0xae, 0xef, 0x03, 0xbd, 0x56, 0xa0, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12018_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12018_sig[] = { 0x15, 0x2c, 0xa6, 0x21, 0x47, 0x48, 0x47, 0xb0, 0x2e, 0x3c, 0xd1, 0x4e, 0xc2, 0xc8, 0xe2, 0x12, 0x47, 0xaa, 0xcc, 0x83, 0x0a, 0x0a, 0x54, 0x10, 0xbf, 0x40, 0x8d, 0x58, 0x37, 0xd9, 0xdd, 0xd4, 0x57, 0x38, 0x63, 0x71, 0x34, 0xe5, 0x55, 0x55, 0x91, 0x68, 0x28, 0x92, 0x2d, 0xb3, 0xe4, 0xea, 0x39, 0xf3, 0x09, 0x3e, 0xec, 0x23, 0x2e, 0x14, 0x49, 0xd7, 0x2a, 0x3a, 0x2b, 0x68, 0xce, 0xf4, 0xfd, 0x43, 0x6c, 0x49, 0x8a, 0xc2, 0x65, 0xf9, 0x0e, 0xdc, 0x7b, 0xbb, 0xe1, 0xb1, 0x02, 0xd5, 0xa4, 0x2a, 0x80, 0x1f, 0x3b, 0xe2, 0x33, 0xba, 0xcb, 0x5c, 0x52, 0xce, 0x48, 0x8f, 0xe8, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12018 = { .name = "ecdsa_brainpoolp384t1_sha384_12018", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12018_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12018_msg, .msglen = 4, .sig = ecdsa_brainpoolp384t1_sha384_12018_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1263 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12019 for ECDSA, tcId is 1264 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12019_pubkey[] = { 0x00, 0xd9, 0x5b, 0x9b, 0xbc, 0xf0, 0x29, 0x07, 0x42, 0x40, 0xd2, 0x32, 0x32, 0xb2, 0x87, 0xfe, 0xc4, 0x07, 0x68, 0xd9, 0xd3, 0x18, 0x26, 0xa2, 0xd1, 0x28, 0xd4, 0x86, 0x67, 0xc9, 0x1f, 0xdd, 0xd5, 0x09, 0xce, 0x44, 0x9d, 0x7d, 0xe1, 0x45, 0x68, 0xaf, 0x32, 0x0d, 0x15, 0x49, 0x9f, 0x96, 0x4c, 0xdc, 0xcb, 0xb3, 0x34, 0x79, 0x1e, 0x89, 0xc0, 0xea, 0x0d, 0xad, 0xd3, 0xe9, 0xab, 0x65, 0x7d, 0x6d, 0xec, 0x8a, 0x38, 0xb1, 0x74, 0xc6, 0xf3, 0xa9, 0xda, 0x08, 0xd8, 0xbf, 0x37, 0x03, 0xcb, 0xb2, 0x1e, 0xd3, 0xc3, 0x5d, 0xc7, 0x02, 0x53, 0x6a, 0xae, 0xef, 0x03, 0xbd, 0x56, 0xa0, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12019_sig[] = { 0x29, 0xb7, 0x4d, 0x0c, 0x42, 0x11, 0xd1, 0xe3, 0x6e, 0x8f, 0xcf, 0x0a, 0xe0, 0x0a, 0x4b, 0x3f, 0xe7, 0x38, 0x47, 0x81, 0x19, 0x86, 0x6c, 0x05, 0x03, 0xda, 0x62, 0xb6, 0xab, 0xdb, 0x96, 0xbd, 0x61, 0xfa, 0x70, 0x46, 0x0b, 0xe6, 0xaa, 0xa0, 0x57, 0x9e, 0x16, 0x2d, 0x04, 0x5c, 0xc8, 0xbe, 0x48, 0x20, 0xe4, 0xbf, 0xe7, 0x63, 0xeb, 0x12, 0xf3, 0x7b, 0x1f, 0x85, 0x27, 0x23, 0x72, 0x8f, 0xeb, 0x63, 0xc8, 0x67, 0x41, 0xd4, 0xdd, 0x21, 0x96, 0x44, 0x6e, 0xa5, 0xf4, 0x7c, 0x2f, 0x87, 0x9f, 0x11, 0xfd, 0xf2, 0x3f, 0x12, 0x1f, 0x95, 0x01, 0x69, 0x90, 0x1f, 0x3c, 0x4c, 0xb0, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12019 = { .name = "ecdsa_brainpoolp384t1_sha384_12019", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12019_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp384t1_sha384_12019_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1264 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12020 for ECDSA, tcId is 1265 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12020_pubkey[] = { 0x00, 0xd9, 0x5b, 0x9b, 0xbc, 0xf0, 0x29, 0x07, 0x42, 0x40, 0xd2, 0x32, 0x32, 0xb2, 0x87, 0xfe, 0xc4, 0x07, 0x68, 0xd9, 0xd3, 0x18, 0x26, 0xa2, 0xd1, 0x28, 0xd4, 0x86, 0x67, 0xc9, 0x1f, 0xdd, 0xd5, 0x09, 0xce, 0x44, 0x9d, 0x7d, 0xe1, 0x45, 0x68, 0xaf, 0x32, 0x0d, 0x15, 0x49, 0x9f, 0x96, 0x4c, 0xdc, 0xcb, 0xb3, 0x34, 0x79, 0x1e, 0x89, 0xc0, 0xea, 0x0d, 0xad, 0xd3, 0xe9, 0xab, 0x65, 0x7d, 0x6d, 0xec, 0x8a, 0x38, 0xb1, 0x74, 0xc6, 0xf3, 0xa9, 0xda, 0x08, 0xd8, 0xbf, 0x37, 0x03, 0xcb, 0xb2, 0x1e, 0xd3, 0xc3, 0x5d, 0xc7, 0x02, 0x53, 0x6a, 0xae, 0xef, 0x03, 0xbd, 0x56, 0xa0, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12020_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12020_sig[] = { 0x5e, 0x83, 0xa0, 0xb1, 0xc1, 0xbd, 0xfe, 0x98, 0xba, 0xbe, 0x8f, 0x83, 0xbc, 0x04, 0x6d, 0x5a, 0x89, 0x6f, 0xbf, 0x30, 0x7c, 0x8a, 0x46, 0x8f, 0x45, 0x67, 0xdc, 0x29, 0x40, 0xa1, 0x1d, 0x31, 0x34, 0x4d, 0x35, 0x75, 0x62, 0x0b, 0xd0, 0xc4, 0x20, 0x1b, 0x80, 0xd6, 0xcc, 0x2a, 0x3c, 0xa9, 0x80, 0x13, 0x52, 0xc9, 0x2b, 0x90, 0x8c, 0xe2, 0xf7, 0x52, 0x24, 0x92, 0xad, 0xe4, 0xde, 0xa7, 0x88, 0xdd, 0xb6, 0xd1, 0x72, 0x04, 0x38, 0x7d, 0x76, 0x4c, 0xe7, 0xc2, 0x94, 0x03, 0x02, 0xa9, 0x8b, 0x62, 0xcf, 0x83, 0xba, 0xa6, 0x9f, 0x0c, 0x73, 0x5a, 0x56, 0xfe, 0x8c, 0x35, 0xdb, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12020 = { .name = "ecdsa_brainpoolp384t1_sha384_12020", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12020_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12020_msg, .msglen = 20, .sig = ecdsa_brainpoolp384t1_sha384_12020_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 1265 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12021 for ECDSA, tcId is 1266 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12021_pubkey[] = { 0xa5, 0x00, 0x8e, 0xcb, 0x5b, 0x62, 0x94, 0xab, 0x2e, 0xa7, 0x1a, 0x9e, 0x23, 0x69, 0x49, 0x73, 0xc9, 0x5a, 0x0b, 0x5f, 0x58, 0x74, 0xad, 0xe7, 0x75, 0xd3, 0x49, 0xa2, 0x31, 0x48, 0x03, 0x8e, 0x6c, 0x73, 0x11, 0xaa, 0x69, 0xab, 0xa4, 0xb9, 0xfa, 0x8c, 0xef, 0xe8, 0xff, 0x9b, 0xf1, 0xc5, 0xf4, 0x32, 0x4e, 0x3f, 0x3c, 0xdf, 0x43, 0x14, 0x3b, 0x1d, 0x35, 0xdf, 0x7c, 0xf7, 0xf5, 0x07, 0x1b, 0xc1, 0x65, 0xca, 0x46, 0xfe, 0x65, 0x15, 0x2d, 0x2e, 0x74, 0xd9, 0x5c, 0xe1, 0xa7, 0x40, 0xd5, 0xe1, 0xa2, 0x72, 0x80, 0x05, 0xf7, 0x2e, 0xd6, 0x6e, 0x5e, 0xee, 0xf4, 0x9d, 0x97, 0x50, 0xa7, 0x47, 0x1c, 0x45, 0x65, 0x8d, 0x0d, 0x18, 0x98, 0x90, 0xa1, 0x61, 0x6a, 0xa6, 0x6d, 0x64, 0x87, 0xcc, 0x3e, 0x70, 0xac, 0x95, 0x0f, 0xe8, 0x1e, 0x55, 0x0d, 0xab, 0x58, 0xfd, 0xb5, 0x5f, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12021_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12021_sig[] = { 0x3a, 0x14, 0x6c, 0x30, 0xa1, 0xe2, 0x75, 0xef, 0x8e, 0x64, 0x10, 0x28, 0x8c, 0x48, 0xe9, 0x75, 0x1d, 0x82, 0xc1, 0x4c, 0xce, 0x9a, 0x1a, 0x83, 0x67, 0xcb, 0x27, 0x2b, 0xda, 0x61, 0x04, 0x8e, 0x62, 0x72, 0xbb, 0xfb, 0xe7, 0x81, 0xa5, 0x2f, 0x26, 0x94, 0x22, 0x9a, 0x5f, 0xa4, 0x9f, 0xb0, 0x21, 0xb9, 0x0b, 0x67, 0xdd, 0x97, 0x6e, 0x83, 0xb7, 0xea, 0xbd, 0x3d, 0x68, 0x93, 0xd6, 0x13, 0x81, 0x0c, 0x5b, 0xdc, 0x99, 0xf7, 0x22, 0x39, 0x09, 0x18, 0x93, 0x7e, 0xf1, 0x15, 0x27, 0x6c, 0xae, 0x34, 0xb3, 0x04, 0x41, 0x28, 0x5e, 0xd7, 0x24, 0x20, 0x24, 0xde, 0xa1, 0x70, 0x44, 0x45, 0xbb, 0x69, 0x48, 0x48, 0xf6, 0xc2, 0x91, 0x4e, 0x81, 0x8a, 0xf6, 0x94, 0x7e, 0x3d, 0xf8, 0x07, 0x2f, 0xa9, 0x64, 0x3e, 0xbc, 0x19, 0x9c, 0xa8, 0x8a, 0x37, 0x4d, 0xf7, 0xfd, 0x2f, 0xc0, 0x09, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12021 = { .name = "ecdsa_brainpoolp512t1_sha512_12021", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12021_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12021_msg, .msglen = 6, .sig = ecdsa_brainpoolp512t1_sha512_12021_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1266 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12022 for ECDSA, tcId is 1267 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12022_pubkey[] = { 0xa5, 0x00, 0x8e, 0xcb, 0x5b, 0x62, 0x94, 0xab, 0x2e, 0xa7, 0x1a, 0x9e, 0x23, 0x69, 0x49, 0x73, 0xc9, 0x5a, 0x0b, 0x5f, 0x58, 0x74, 0xad, 0xe7, 0x75, 0xd3, 0x49, 0xa2, 0x31, 0x48, 0x03, 0x8e, 0x6c, 0x73, 0x11, 0xaa, 0x69, 0xab, 0xa4, 0xb9, 0xfa, 0x8c, 0xef, 0xe8, 0xff, 0x9b, 0xf1, 0xc5, 0xf4, 0x32, 0x4e, 0x3f, 0x3c, 0xdf, 0x43, 0x14, 0x3b, 0x1d, 0x35, 0xdf, 0x7c, 0xf7, 0xf5, 0x07, 0x1b, 0xc1, 0x65, 0xca, 0x46, 0xfe, 0x65, 0x15, 0x2d, 0x2e, 0x74, 0xd9, 0x5c, 0xe1, 0xa7, 0x40, 0xd5, 0xe1, 0xa2, 0x72, 0x80, 0x05, 0xf7, 0x2e, 0xd6, 0x6e, 0x5e, 0xee, 0xf4, 0x9d, 0x97, 0x50, 0xa7, 0x47, 0x1c, 0x45, 0x65, 0x8d, 0x0d, 0x18, 0x98, 0x90, 0xa1, 0x61, 0x6a, 0xa6, 0x6d, 0x64, 0x87, 0xcc, 0x3e, 0x70, 0xac, 0x95, 0x0f, 0xe8, 0x1e, 0x55, 0x0d, 0xab, 0x58, 0xfd, 0xb5, 0x5f, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12022_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12022_sig[] = { 0x53, 0x26, 0xef, 0xd4, 0xd3, 0x96, 0x9f, 0x30, 0x74, 0xcc, 0x2f, 0xc1, 0x22, 0x6e, 0x0c, 0xd0, 0xa0, 0x0b, 0xe4, 0xce, 0xc1, 0xd0, 0x16, 0x43, 0x81, 0x24, 0x35, 0xbf, 0xe1, 0x35, 0xcc, 0xd7, 0x81, 0x04, 0x0c, 0xd2, 0x01, 0x10, 0x1e, 0xb4, 0x5c, 0x13, 0xd4, 0x65, 0x4d, 0xbe, 0x39, 0x02, 0x10, 0x9e, 0xc6, 0x62, 0xdb, 0xb6, 0x3b, 0x9e, 0x9d, 0x3e, 0xa0, 0x17, 0xa6, 0x22, 0x09, 0xd3, 0x03, 0xfb, 0x04, 0xf8, 0xb0, 0x06, 0x12, 0xa0, 0x02, 0x0e, 0x8c, 0xda, 0xdf, 0x30, 0xa0, 0x64, 0x43, 0x6c, 0xed, 0x16, 0xa3, 0x4e, 0xd7, 0xec, 0x4d, 0x33, 0x29, 0x50, 0xb9, 0x30, 0x83, 0xb5, 0x06, 0xce, 0x05, 0xd1, 0x24, 0x65, 0x87, 0x7a, 0xed, 0x3d, 0xb3, 0x74, 0x4b, 0xa7, 0xb8, 0xe4, 0x69, 0x8b, 0xc1, 0xc1, 0x25, 0xbd, 0x38, 0x51, 0x7f, 0x15, 0x94, 0x94, 0x44, 0xb8, 0xfc, 0x8a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12022 = { .name = "ecdsa_brainpoolp512t1_sha512_12022", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12022_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12022_msg, .msglen = 4, .sig = ecdsa_brainpoolp512t1_sha512_12022_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1267 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12023 for ECDSA, tcId is 1268 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12023_pubkey[] = { 0xa5, 0x00, 0x8e, 0xcb, 0x5b, 0x62, 0x94, 0xab, 0x2e, 0xa7, 0x1a, 0x9e, 0x23, 0x69, 0x49, 0x73, 0xc9, 0x5a, 0x0b, 0x5f, 0x58, 0x74, 0xad, 0xe7, 0x75, 0xd3, 0x49, 0xa2, 0x31, 0x48, 0x03, 0x8e, 0x6c, 0x73, 0x11, 0xaa, 0x69, 0xab, 0xa4, 0xb9, 0xfa, 0x8c, 0xef, 0xe8, 0xff, 0x9b, 0xf1, 0xc5, 0xf4, 0x32, 0x4e, 0x3f, 0x3c, 0xdf, 0x43, 0x14, 0x3b, 0x1d, 0x35, 0xdf, 0x7c, 0xf7, 0xf5, 0x07, 0x1b, 0xc1, 0x65, 0xca, 0x46, 0xfe, 0x65, 0x15, 0x2d, 0x2e, 0x74, 0xd9, 0x5c, 0xe1, 0xa7, 0x40, 0xd5, 0xe1, 0xa2, 0x72, 0x80, 0x05, 0xf7, 0x2e, 0xd6, 0x6e, 0x5e, 0xee, 0xf4, 0x9d, 0x97, 0x50, 0xa7, 0x47, 0x1c, 0x45, 0x65, 0x8d, 0x0d, 0x18, 0x98, 0x90, 0xa1, 0x61, 0x6a, 0xa6, 0x6d, 0x64, 0x87, 0xcc, 0x3e, 0x70, 0xac, 0x95, 0x0f, 0xe8, 0x1e, 0x55, 0x0d, 0xab, 0x58, 0xfd, 0xb5, 0x5f, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12023_sig[] = { 0x1e, 0xbb, 0x81, 0x54, 0x3b, 0x87, 0x02, 0x29, 0xdb, 0x3a, 0x44, 0x0f, 0xdc, 0xf6, 0x40, 0x2e, 0x22, 0xb5, 0xf9, 0x76, 0x0c, 0x3b, 0x95, 0xe4, 0x4b, 0xca, 0x6a, 0x7b, 0x7a, 0xd3, 0xdf, 0x5c, 0x6e, 0x9d, 0x07, 0xf7, 0x1a, 0xc6, 0xce, 0x63, 0x91, 0x61, 0x41, 0xba, 0xa9, 0x21, 0x71, 0xbd, 0xe9, 0x70, 0x1b, 0x59, 0x90, 0x7d, 0xa2, 0xcf, 0xa9, 0x22, 0xb3, 0x06, 0x11, 0x18, 0x8a, 0x21, 0x6a, 0xdb, 0xa7, 0x34, 0x0a, 0x16, 0x87, 0xda, 0xe2, 0x59, 0x63, 0x29, 0x21, 0x8a, 0x85, 0x6c, 0xed, 0x4e, 0x86, 0xd0, 0xa3, 0x9d, 0xdd, 0x7c, 0x16, 0x34, 0x23, 0x3e, 0x06, 0x17, 0x67, 0xdb, 0xf5, 0x87, 0x51, 0xa0, 0x5d, 0xf1, 0x52, 0xb4, 0x9e, 0x0a, 0x5d, 0x72, 0x23, 0x58, 0xa6, 0xd8, 0xfe, 0x7e, 0x69, 0x17, 0x66, 0x21, 0xa3, 0x65, 0x77, 0x2c, 0xaf, 0xaf, 0x41, 0x71, 0x48, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12023 = { .name = "ecdsa_brainpoolp512t1_sha512_12023", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12023_pubkey, .pubkeylen = 128, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_brainpoolp512t1_sha512_12023_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1268 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12024 for ECDSA, tcId is 1269 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12024_pubkey[] = { 0xa5, 0x00, 0x8e, 0xcb, 0x5b, 0x62, 0x94, 0xab, 0x2e, 0xa7, 0x1a, 0x9e, 0x23, 0x69, 0x49, 0x73, 0xc9, 0x5a, 0x0b, 0x5f, 0x58, 0x74, 0xad, 0xe7, 0x75, 0xd3, 0x49, 0xa2, 0x31, 0x48, 0x03, 0x8e, 0x6c, 0x73, 0x11, 0xaa, 0x69, 0xab, 0xa4, 0xb9, 0xfa, 0x8c, 0xef, 0xe8, 0xff, 0x9b, 0xf1, 0xc5, 0xf4, 0x32, 0x4e, 0x3f, 0x3c, 0xdf, 0x43, 0x14, 0x3b, 0x1d, 0x35, 0xdf, 0x7c, 0xf7, 0xf5, 0x07, 0x1b, 0xc1, 0x65, 0xca, 0x46, 0xfe, 0x65, 0x15, 0x2d, 0x2e, 0x74, 0xd9, 0x5c, 0xe1, 0xa7, 0x40, 0xd5, 0xe1, 0xa2, 0x72, 0x80, 0x05, 0xf7, 0x2e, 0xd6, 0x6e, 0x5e, 0xee, 0xf4, 0x9d, 0x97, 0x50, 0xa7, 0x47, 0x1c, 0x45, 0x65, 0x8d, 0x0d, 0x18, 0x98, 0x90, 0xa1, 0x61, 0x6a, 0xa6, 0x6d, 0x64, 0x87, 0xcc, 0x3e, 0x70, 0xac, 0x95, 0x0f, 0xe8, 0x1e, 0x55, 0x0d, 0xab, 0x58, 0xfd, 0xb5, 0x5f, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12024_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12024_sig[] = { 0xa6, 0xb9, 0xe9, 0x14, 0x72, 0x66, 0x1f, 0x0a, 0x15, 0xd7, 0x9e, 0x3d, 0xd4, 0xc6, 0xb0, 0x59, 0x21, 0xe0, 0x7c, 0x45, 0x65, 0x71, 0x23, 0x3f, 0x4a, 0xf6, 0x7c, 0x66, 0xe9, 0x4a, 0x9e, 0x06, 0xc6, 0xda, 0xdd, 0xec, 0xe0, 0x57, 0xdc, 0x49, 0xb6, 0x17, 0xf9, 0x51, 0x38, 0x03, 0x8a, 0x28, 0xd7, 0x7a, 0x98, 0x40, 0x15, 0x54, 0x8d, 0x48, 0x7a, 0xdb, 0x3d, 0x55, 0x15, 0x21, 0x29, 0xd0, 0x4c, 0x65, 0x7e, 0xf2, 0xb2, 0x8b, 0x0b, 0x71, 0x71, 0xa5, 0xc4, 0xec, 0x4a, 0x11, 0xa8, 0x94, 0xcb, 0xa4, 0xc3, 0x12, 0xbe, 0x4d, 0x26, 0x01, 0x3e, 0x50, 0x87, 0x66, 0xf4, 0x3c, 0xf8, 0xf7, 0x98, 0x6d, 0x54, 0xfb, 0xc3, 0x58, 0xe8, 0xb9, 0x5b, 0x41, 0x71, 0xbe, 0xe3, 0x9f, 0xc0, 0xc8, 0xe1, 0x81, 0x0e, 0x6e, 0x46, 0x42, 0xc3, 0x1c, 0x74, 0x01, 0x38, 0xf4, 0x4e, 0x25, 0x86, 0xf8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12024 = { .name = "ecdsa_brainpoolp512t1_sha512_12024", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12024_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12024_msg, .msglen = 20, .sig = ecdsa_brainpoolp512t1_sha512_12024_sig, .siglen = 128, .result = 1, .comment = "pseudorandom signature, tcId is 1269 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12025 for ECDSA, tcId is 1270 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA224) static const unsigned char ecdsa_secp256r1_sha224_12025_pubkey[] = { 0xea, 0x65, 0x9f, 0xf9, 0xdb, 0x88, 0x03, 0x27, 0x0c, 0x9e, 0x1e, 0xe0, 0xd5, 0x1f, 0x60, 0x43, 0x52, 0xe0, 0xa4, 0xa2, 0x99, 0x34, 0xe7, 0xf2, 0xea, 0xd6, 0xe9, 0xad, 0x45, 0x28, 0xff, 0xea, 0x49, 0xb2, 0x78, 0x77, 0x07, 0x75, 0x68, 0x02, 0xc4, 0xd6, 0xb6, 0xb0, 0x94, 0xfa, 0x36, 0x0e, 0x79, 0xac, 0xf8, 0x6f, 0x76, 0x2d, 0x10, 0x0a, 0xcc, 0xf5, 0xf0, 0xa6, 0x3a, 0x63, 0x4a, 0x8e, }; static const unsigned char ecdsa_secp256r1_sha224_12025_msg[] = { 0x4d, 0x73, 0x67, }; static const unsigned char ecdsa_secp256r1_sha224_12025_sig[] = { 0x15, 0x25, 0x04, 0x86, 0x59, 0x43, 0x4a, 0x53, 0x1f, 0x6a, 0xf3, 0x22, 0x11, 0x6b, 0xc5, 0xc8, 0x82, 0x97, 0x47, 0xbb, 0x25, 0x4f, 0x89, 0xe6, 0x20, 0xcc, 0x99, 0xf8, 0x69, 0x03, 0x35, 0x38, 0x4f, 0x0e, 0xb7, 0x6e, 0xf9, 0xae, 0xfa, 0x31, 0x0b, 0x1d, 0xdf, 0x76, 0xeb, 0xb9, 0xcd, 0xd5, 0x51, 0xfd, 0x6b, 0x19, 0x2a, 0x48, 0x75, 0xd7, 0x0c, 0x0c, 0xeb, 0x7f, 0x74, 0xe1, 0x92, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha224_12025 = { .name = "ecdsa_secp256r1_sha224_12025", .sig_alg = ECDSA, .hash = SHA224, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha224_12025_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha224_12025_msg, .msglen = 3, .sig = ecdsa_secp256r1_sha224_12025_sig, .siglen = 64, .result = 0, .comment = "Hash weaker than DL-group, tcId is 1270 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA224) */ /* Test 12026 for ECDSA, tcId is 1271 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp384r1_sha256_12026_pubkey[] = { 0x59, 0x93, 0x26, 0x4e, 0xe1, 0x7d, 0xdf, 0x20, 0x9a, 0xec, 0x31, 0xfe, 0x0a, 0x3c, 0x15, 0x3b, 0x5a, 0x2a, 0x84, 0x5d, 0x4f, 0xe6, 0x7f, 0xbc, 0x21, 0x8a, 0xb1, 0x39, 0x7d, 0x42, 0xdf, 0x07, 0xc9, 0xc9, 0x8b, 0x1a, 0x98, 0xd2, 0xa1, 0xd7, 0x92, 0x01, 0x4d, 0xfc, 0x77, 0xfe, 0x99, 0xbd, 0x2b, 0x83, 0xb1, 0x87, 0x85, 0xeb, 0x4e, 0xbc, 0xbe, 0x8d, 0x16, 0xec, 0xd1, 0x4f, 0x8f, 0x62, 0x50, 0x15, 0xb2, 0x68, 0x7a, 0xf2, 0xd1, 0x3d, 0x68, 0x72, 0xe5, 0x2b, 0x05, 0x5c, 0x95, 0xeb, 0x34, 0x81, 0x7a, 0x9f, 0x18, 0xfb, 0xe8, 0xfe, 0xf2, 0x35, 0x81, 0x85, 0x15, 0x24, 0x25, 0x65, }; static const unsigned char ecdsa_secp384r1_sha256_12026_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp384r1_sha256_12026_sig[] = { 0x23, 0xa8, 0x64, 0x58, 0xfe, 0xb3, 0xc2, 0x20, 0xdb, 0xf9, 0xf4, 0xa9, 0x15, 0x0d, 0x86, 0x69, 0x4c, 0x12, 0x56, 0x9e, 0xaa, 0x1e, 0x5f, 0x63, 0xc4, 0x1f, 0xb8, 0x7e, 0x4f, 0xf4, 0x25, 0xb8, 0xfe, 0xa5, 0x7e, 0xca, 0xa4, 0xe1, 0x47, 0xaa, 0x04, 0x17, 0x80, 0xc6, 0x4f, 0xc0, 0x1f, 0x54, 0xe4, 0x7d, 0x54, 0x6b, 0x63, 0x8d, 0xf0, 0xa2, 0x92, 0x46, 0xdf, 0x46, 0xaa, 0xb7, 0xfa, 0x3f, 0x1d, 0x79, 0x7c, 0x14, 0x27, 0xd9, 0x81, 0x9e, 0x5d, 0xf3, 0xc7, 0xda, 0x7c, 0x6d, 0x81, 0xc7, 0x7c, 0xc1, 0x85, 0xc7, 0xd4, 0x69, 0xdc, 0xf8, 0xbb, 0x0a, 0x20, 0x1f, 0x94, 0x07, 0x37, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha256_12026 = { .name = "ecdsa_secp384r1_sha256_12026", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha256_12026_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha256_12026_msg, .msglen = 4, .sig = ecdsa_secp384r1_sha256_12026_sig, .siglen = 96, .result = 0, .comment = "Hash weaker than DL-group, tcId is 1271 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) */ /* Test 12027 for ECDSA, tcId is 1272 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp521r1_sha256_12027_pubkey[] = { 0x01, 0x8f, 0x0d, 0x2a, 0x74, 0x2e, 0x18, 0xcb, 0x85, 0x5a, 0x34, 0x77, 0x88, 0x64, 0x61, 0xa1, 0x5a, 0xda, 0x55, 0x33, 0x10, 0x0f, 0x48, 0x8d, 0xc3, 0x9a, 0xed, 0x89, 0x6c, 0x5e, 0xa6, 0x2f, 0xa0, 0x29, 0xc5, 0xb8, 0x04, 0x54, 0xb4, 0xea, 0xba, 0xeb, 0xf2, 0x91, 0x7d, 0x76, 0x2c, 0x50, 0x53, 0xdb, 0xa1, 0x26, 0xb3, 0x9a, 0x07, 0x8c, 0x0f, 0x00, 0xb2, 0xf9, 0x36, 0xa0, 0x91, 0x84, 0xdb, 0xfe, 0x00, 0x50, 0x3c, 0xc4, 0xcc, 0xa0, 0x10, 0xbd, 0xd2, 0xaa, 0x8d, 0x85, 0xf5, 0x62, 0x5d, 0x51, 0x6f, 0x3e, 0x41, 0xd0, 0x68, 0xcf, 0xd4, 0xea, 0x41, 0x3e, 0xc4, 0xa9, 0x75, 0x10, 0x62, 0x79, 0x20, 0xc0, 0x19, 0x7e, 0xef, 0x2a, 0xd2, 0x23, 0x83, 0xc5, 0x7f, 0x2e, 0x93, 0xa5, 0xd5, 0x25, 0x52, 0x1f, 0xd8, 0x63, 0x55, 0x50, 0xfb, 0x5d, 0xd9, 0x8e, 0x3b, 0x6c, 0x73, 0x59, 0x2b, 0x24, 0xa8, 0x31, }; static const unsigned char ecdsa_secp521r1_sha256_12027_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha256_12027_sig[] = { 0x01, 0xcd, 0x35, 0xbd, 0x8a, 0xdc, 0xb9, 0x15, 0x5d, 0x87, 0x60, 0xed, 0xab, 0x86, 0x12, 0xd8, 0x6d, 0x95, 0x18, 0xe5, 0xea, 0xfb, 0xa2, 0x2b, 0x23, 0x0c, 0x0a, 0xa3, 0x4c, 0xea, 0x76, 0x79, 0xd2, 0x27, 0x81, 0x04, 0x90, 0x3a, 0x83, 0x1d, 0x21, 0xc2, 0x09, 0x20, 0x75, 0xd5, 0xf1, 0xfd, 0x68, 0x60, 0x12, 0xda, 0xb3, 0x3d, 0xd8, 0x7d, 0x32, 0xfa, 0x04, 0xd7, 0xd1, 0xd1, 0x07, 0x22, 0xc3, 0xf9, 0x00, 0x12, 0xc5, 0xe7, 0x6b, 0x24, 0x5c, 0x67, 0xcc, 0x25, 0xfa, 0xe2, 0xf0, 0x40, 0x45, 0x54, 0x6f, 0x95, 0x11, 0x3e, 0x04, 0xf3, 0xa4, 0x86, 0x0f, 0xf2, 0x1d, 0x61, 0x94, 0xb5, 0x1a, 0x38, 0x53, 0x32, 0xaa, 0x6a, 0xd3, 0x4e, 0x30, 0x24, 0x90, 0x62, 0x44, 0x07, 0x1c, 0x41, 0x5a, 0x68, 0x8a, 0x0d, 0xb2, 0xdf, 0x62, 0xdc, 0xe9, 0x20, 0x67, 0xbf, 0x14, 0xae, 0xd4, 0x66, 0xa9, 0xd9, 0x0d, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha256_12027 = { .name = "ecdsa_secp521r1_sha256_12027", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha256_12027_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha256_12027_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha256_12027_sig, .siglen = 132, .result = 0, .comment = "Hash weaker than DL-group, tcId is 1272 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) */ /* Test 12028 for ECDSA, tcId is 1273 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12028_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_12028_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12028_sig[] = { 0x51, 0x9b, 0xf1, 0x85, 0xff, 0x46, 0x35, 0x27, 0x19, 0x61, 0xfa, 0x49, 0x1b, 0xe2, 0x57, 0x23, 0x1d, 0xee, 0xea, 0x9c, 0x53, 0xa6, 0xed, 0xe3, 0xb4, 0xa8, 0x9e, 0xd1, 0x48, 0x6b, 0xda, 0xd4, 0x84, 0xa6, 0xa3, 0x13, 0x4e, 0x14, 0x71, 0xcf, 0x56, 0xa9, 0xdf, 0x0f, 0xac, 0x50, 0xf7, 0x73, 0xb3, 0xe3, 0x7d, 0x6f, 0x32, 0x76, 0x17, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12028 = { .name = "ecdsa_secp224r1_sha256_12028", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12028_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12028_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12028_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1273 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12029 for ECDSA, tcId is 1274 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12029_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_12029_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12029_sig[] = { 0x09, 0xfd, 0x64, 0x48, 0x98, 0xb7, 0xcb, 0x5d, 0x01, 0x8b, 0x52, 0x23, 0x4e, 0x7b, 0x4e, 0xf2, 0xb5, 0x47, 0x89, 0xaf, 0xd0, 0xce, 0x9c, 0x43, 0x4e, 0x9e, 0x55, 0x15, 0xf1, 0x93, 0x09, 0x53, 0x21, 0x64, 0xea, 0x20, 0x53, 0xca, 0xe5, 0x5d, 0xf7, 0xbd, 0xcb, 0xab, 0x53, 0x6c, 0x83, 0xea, 0x7b, 0xfe, 0x6f, 0xe1, 0x0d, 0x60, 0xc1, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12029 = { .name = "ecdsa_secp224r1_sha256_12029", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12029_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12029_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12029_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1274 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12030 for ECDSA, tcId is 1275 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12030_pubkey[] = { 0xae, 0xd6, 0xfc, 0xad, 0x24, 0x00, 0xc4, 0xd9, 0x4e, 0x55, 0xdb, 0xb6, 0xb0, 0x12, 0xce, 0x3d, 0x4c, 0x2b, 0x46, 0x84, 0x3f, 0xbe, 0x99, 0xd4, 0x28, 0x9e, 0x6e, 0xcf, 0x8a, 0x24, 0xa8, 0x9e, 0x71, 0x34, 0x3d, 0x7d, 0x15, 0x1d, 0x25, 0x8d, 0x2c, 0xb6, 0x90, 0x34, 0x9c, 0x2d, 0x56, 0xb3, 0x66, 0xdd, 0x10, 0xa6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp224r1_sha256_12030_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12030_sig[] = { 0xec, 0x91, 0x9d, 0x4e, 0x28, 0x3c, 0xcf, 0x1f, 0x71, 0xa9, 0xe3, 0xc0, 0xf7, 0x81, 0xa3, 0x67, 0x58, 0xd3, 0xf3, 0x8b, 0x1b, 0x78, 0xa8, 0x7a, 0x74, 0x28, 0x8e, 0x80, 0x4c, 0x46, 0x63, 0x04, 0x4a, 0x73, 0xc7, 0x9b, 0xd8, 0x8f, 0x0d, 0xc2, 0x45, 0xab, 0x1a, 0x32, 0xf8, 0x9f, 0x06, 0xf4, 0x0a, 0x70, 0x4b, 0x31, 0xe9, 0xfa, 0xbc, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12030 = { .name = "ecdsa_secp224r1_sha256_12030", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12030_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12030_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12030_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1275 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12031 for ECDSA, tcId is 1276 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12031_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_12031_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12031_sig[] = { 0xc5, 0x17, 0x60, 0x47, 0x84, 0x47, 0x21, 0x75, 0x97, 0xec, 0xc6, 0xf4, 0x00, 0x1b, 0xd4, 0x50, 0x88, 0xd5, 0x3c, 0x90, 0xf5, 0x31, 0x03, 0x60, 0x8b, 0xf8, 0x8a, 0xea, 0xa2, 0x01, 0x25, 0x3a, 0xa9, 0x03, 0xf9, 0x78, 0x1e, 0x89, 0x92, 0x10, 0x1d, 0x71, 0x71, 0xd2, 0xdd, 0x3a, 0x5d, 0x48, 0xc4, 0x4d, 0x8e, 0x1d, 0x54, 0x4c, 0xd6, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12031 = { .name = "ecdsa_secp224r1_sha256_12031", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12031_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12031_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12031_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1276 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12032 for ECDSA, tcId is 1277 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12032_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_12032_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12032_sig[] = { 0x76, 0xbe, 0x01, 0x12, 0x67, 0x4e, 0xc2, 0x91, 0x28, 0x82, 0x3e, 0x1a, 0xf7, 0x51, 0x2e, 0x61, 0x43, 0x87, 0x2f, 0xef, 0x30, 0xa6, 0x4e, 0x2f, 0x17, 0x99, 0xbd, 0x56, 0x18, 0x7e, 0x50, 0x3e, 0x1a, 0x48, 0xc2, 0x7b, 0x54, 0x9f, 0xe0, 0xa4, 0xce, 0x5e, 0x58, 0x1e, 0x24, 0x2c, 0x86, 0x63, 0xfc, 0x9e, 0xfb, 0x02, 0xd6, 0xf2, 0xb1, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12032 = { .name = "ecdsa_secp224r1_sha256_12032", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12032_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12032_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12032_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1277 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12033 for ECDSA, tcId is 1278 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12033_pubkey[] = { 0xbf, 0x19, 0xec, 0xfe, 0x43, 0xff, 0xe2, 0x89, 0xf6, 0x99, 0xf4, 0x79, 0x31, 0x61, 0x45, 0xb9, 0xa7, 0xf7, 0x37, 0x0b, 0x9e, 0xce, 0x5a, 0xb1, 0x21, 0x21, 0x74, 0xf1, 0x73, 0xd5, 0x28, 0x94, 0x9a, 0xe9, 0x14, 0x2f, 0x81, 0x8b, 0xad, 0xe7, 0x1a, 0x96, 0x04, 0x07, 0x96, 0x3b, 0xe0, 0xb6, 0x48, 0x2a, 0x6a, 0x60, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp224r1_sha256_12033_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12033_sig[] = { 0x36, 0x24, 0x5e, 0xf1, 0x26, 0xb5, 0xb5, 0x1e, 0x45, 0x9f, 0x84, 0xea, 0xaa, 0xd5, 0xa4, 0x95, 0x06, 0x1f, 0x04, 0x71, 0xdc, 0x8c, 0x23, 0xf1, 0xc5, 0xf1, 0x62, 0x82, 0x39, 0xe3, 0x1d, 0x72, 0xa0, 0x6b, 0xa8, 0xe1, 0x4f, 0xcf, 0x95, 0x77, 0x8e, 0x07, 0xbc, 0x16, 0xa2, 0x62, 0x8e, 0x39, 0x44, 0x9d, 0xa8, 0x85, 0x7d, 0x50, 0x6e, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12033 = { .name = "ecdsa_secp224r1_sha256_12033", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12033_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12033_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12033_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1278 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12034 for ECDSA, tcId is 1279 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12034_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_12034_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12034_sig[] = { 0x25, 0x86, 0x82, 0x97, 0x5d, 0xf8, 0xbc, 0xa7, 0xf2, 0x03, 0xf7, 0x71, 0xeb, 0xeb, 0x47, 0x8e, 0xf6, 0x37, 0x36, 0x0c, 0x86, 0x0f, 0xc3, 0x86, 0xcf, 0xb2, 0x17, 0x45, 0x76, 0x63, 0xe7, 0x01, 0x88, 0x04, 0x7e, 0x41, 0x46, 0x9a, 0x2a, 0x35, 0xc8, 0xc3, 0x30, 0xdd, 0x90, 0x0f, 0x23, 0x40, 0xba, 0x82, 0xaa, 0xfd, 0x22, 0x96, 0x2a, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12034 = { .name = "ecdsa_secp224r1_sha256_12034", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12034_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12034_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12034_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1279 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12035 for ECDSA, tcId is 1280 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12035_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_12035_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12035_sig[] = { 0x85, 0xc9, 0x86, 0x14, 0xf3, 0x6c, 0x0d, 0x66, 0xf8, 0xd8, 0x78, 0x34, 0xca, 0xe9, 0x78, 0x61, 0x1b, 0x7b, 0x4e, 0xeb, 0xf5, 0x9a, 0x46, 0xbe, 0xa1, 0xb8, 0x9a, 0xe9, 0xd1, 0xa1, 0x8e, 0x37, 0x8d, 0xda, 0x84, 0x0e, 0x06, 0xb6, 0x0f, 0x62, 0x79, 0xbf, 0x0a, 0x22, 0x31, 0xd9, 0xfa, 0x2d, 0x8d, 0x2c, 0x31, 0xe8, 0x8b, 0xc1, 0xbd, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12035 = { .name = "ecdsa_secp224r1_sha256_12035", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12035_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12035_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12035_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1280 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12036 for ECDSA, tcId is 1281 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12036_pubkey[] = { 0x26, 0xe5, 0xab, 0xf1, 0x35, 0xcb, 0x54, 0xea, 0xaa, 0x16, 0xb6, 0x9e, 0x4b, 0x0b, 0x29, 0x22, 0x75, 0x34, 0x4e, 0x88, 0xa0, 0x9d, 0xf6, 0xdf, 0x80, 0x00, 0x00, 0x00, 0xea, 0xb8, 0x91, 0xde, 0x54, 0xe3, 0xf2, 0x6f, 0xf5, 0x0a, 0xb9, 0x89, 0xf3, 0x33, 0xda, 0xc5, 0x51, 0x58, 0x3d, 0x46, 0x8a, 0xe6, 0x23, 0xc5, 0x96, 0x43, 0x4a, 0xf0, }; static const unsigned char ecdsa_secp224r1_sha256_12036_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12036_sig[] = { 0xca, 0x7b, 0x74, 0x32, 0xba, 0x41, 0xff, 0x21, 0x12, 0xe1, 0x11, 0x6f, 0xff, 0xde, 0x89, 0xbb, 0xd6, 0x8f, 0x5c, 0xe6, 0x7f, 0xe5, 0x51, 0x3d, 0x16, 0xc8, 0xe6, 0xf7, 0xe4, 0x21, 0xb7, 0x59, 0x9e, 0x01, 0x80, 0x79, 0x8a, 0xcc, 0x20, 0x06, 0x45, 0x16, 0x03, 0xcd, 0xa2, 0xdb, 0x1d, 0x58, 0x27, 0x41, 0x11, 0x6e, 0x60, 0x33, 0xce, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12036 = { .name = "ecdsa_secp224r1_sha256_12036", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12036_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12036_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12036_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1281 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12037 for ECDSA, tcId is 1282 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12037_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_12037_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12037_sig[] = { 0x19, 0x39, 0x7f, 0xe5, 0xd3, 0xec, 0xab, 0xf8, 0x0f, 0xc6, 0x24, 0xc1, 0xbf, 0x37, 0x95, 0x64, 0x38, 0x75, 0x17, 0xc1, 0x85, 0x08, 0x7d, 0xc9, 0x7d, 0x60, 0x50, 0x69, 0x33, 0xb5, 0x77, 0x3e, 0x9a, 0xaf, 0x6c, 0x34, 0xcb, 0x61, 0x2c, 0xfc, 0x81, 0xef, 0xd3, 0xbf, 0x9c, 0x22, 0x22, 0x4e, 0x8c, 0x4f, 0xa1, 0xbf, 0xcc, 0xf5, 0xc5, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12037 = { .name = "ecdsa_secp224r1_sha256_12037", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12037_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12037_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12037_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1282 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12038 for ECDSA, tcId is 1283 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12038_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_12038_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12038_sig[] = { 0x70, 0xf2, 0x4f, 0x5c, 0x16, 0x41, 0x64, 0xbf, 0xbb, 0x84, 0x59, 0xaa, 0x12, 0xa9, 0x81, 0xaa, 0x31, 0x2d, 0xbc, 0xf0, 0x02, 0x04, 0x32, 0x6e, 0xba, 0xaa, 0xbd, 0xc8, 0xf5, 0xce, 0xbe, 0xe8, 0xca, 0xed, 0xae, 0x86, 0x62, 0xc4, 0x35, 0x01, 0x66, 0x50, 0x84, 0xb4, 0x5d, 0x2f, 0x49, 0x4f, 0xb7, 0x0d, 0x60, 0x30, 0x43, 0x54, 0x3d, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12038 = { .name = "ecdsa_secp224r1_sha256_12038", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12038_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12038_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12038_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1283 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12039 for ECDSA, tcId is 1284 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12039_pubkey[] = { 0xec, 0x62, 0x7f, 0x34, 0x55, 0x45, 0xd0, 0x3f, 0x8c, 0x6d, 0xbd, 0x08, 0xe5, 0x75, 0x52, 0x71, 0x16, 0x56, 0x7f, 0xe3, 0x75, 0xf9, 0xec, 0xaa, 0xff, 0xff, 0xff, 0xff, 0x41, 0xbf, 0x70, 0x56, 0x97, 0xd5, 0xf7, 0x16, 0xbc, 0xf7, 0x87, 0x18, 0xd5, 0x39, 0x3b, 0x63, 0xa9, 0x86, 0x91, 0xf4, 0xa1, 0xf2, 0x42, 0x46, 0x37, 0x55, 0x38, 0xfd, }; static const unsigned char ecdsa_secp224r1_sha256_12039_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12039_sig[] = { 0x0b, 0xf2, 0xd8, 0x6e, 0xca, 0xa8, 0xb5, 0x6a, 0xca, 0x5e, 0x8f, 0x8e, 0xbc, 0xb4, 0x50, 0x81, 0xd0, 0x78, 0xa1, 0x45, 0x55, 0xb7, 0x5f, 0x5b, 0xe8, 0xe9, 0xb1, 0x32, 0x9a, 0x55, 0xb3, 0xce, 0x47, 0x34, 0x84, 0x99, 0x66, 0xb5, 0x03, 0x4c, 0xcd, 0x9b, 0x19, 0xf7, 0x64, 0x07, 0xee, 0x02, 0x41, 0xc3, 0xf5, 0x8e, 0x7b, 0x8f, 0xc8, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12039 = { .name = "ecdsa_secp224r1_sha256_12039", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12039_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12039_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12039_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1284 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12040 for ECDSA, tcId is 1285 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12040_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_12040_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12040_sig[] = { 0xbf, 0xc5, 0xdc, 0x44, 0x34, 0xcd, 0x09, 0x36, 0x96, 0x10, 0x68, 0x7d, 0x38, 0xd2, 0xd4, 0x18, 0xb6, 0x3f, 0xd4, 0x75, 0xde, 0xa2, 0x46, 0xa4, 0x56, 0xb2, 0x5a, 0x3a, 0xb1, 0x71, 0xdf, 0xa6, 0xcf, 0x72, 0x2f, 0x20, 0x81, 0x63, 0x70, 0xa8, 0x68, 0x78, 0x5d, 0xa8, 0x42, 0xb3, 0x7b, 0xac, 0x31, 0xd7, 0xb7, 0x8e, 0x67, 0x51, 0xfc, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12040 = { .name = "ecdsa_secp224r1_sha256_12040", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12040_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12040_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12040_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1285 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12041 for ECDSA, tcId is 1286 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12041_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_12041_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12041_sig[] = { 0x8f, 0xdb, 0xe8, 0xda, 0x64, 0x6c, 0x56, 0x42, 0xd7, 0x67, 0xc7, 0xdb, 0xeb, 0x38, 0x72, 0xb1, 0xed, 0xab, 0x6e, 0x37, 0x36, 0x58, 0x05, 0xf0, 0xe9, 0x4c, 0xe0, 0xa9, 0xbc, 0xf3, 0x5a, 0xb8, 0x12, 0x22, 0x88, 0x3d, 0xd3, 0x52, 0x6c, 0xb0, 0xcf, 0x93, 0x13, 0x8f, 0x46, 0x87, 0xcd, 0x0b, 0x10, 0xc2, 0xb0, 0xa1, 0x26, 0x38, 0x51, 0x61, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12041 = { .name = "ecdsa_secp224r1_sha256_12041", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12041_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12041_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12041_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1286 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12042 for ECDSA, tcId is 1287 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12042_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x76, 0x2d, 0x28, 0xf1, 0xfd, 0xc2, 0x19, 0x18, 0x4f, 0x81, 0x68, 0x1f, 0xbf, 0xf5, 0x66, 0xd4, 0x65, 0xb5, 0xf1, 0xf3, 0x1e, 0x87, 0x2d, 0xf5, }; static const unsigned char ecdsa_secp224r1_sha256_12042_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12042_sig[] = { 0xe2, 0x3a, 0x11, 0x27, 0x58, 0x48, 0xfd, 0x4f, 0x8b, 0x6f, 0x4a, 0xc4, 0xfc, 0x30, 0x5e, 0xae, 0x98, 0x1d, 0x3b, 0x7d, 0xc4, 0x53, 0xe5, 0xa9, 0x80, 0xc4, 0x64, 0x22, 0x1a, 0x87, 0x56, 0x93, 0xf2, 0x4a, 0x03, 0xea, 0x16, 0x14, 0xc4, 0xc3, 0xbb, 0xd0, 0xdd, 0x72, 0x21, 0x42, 0x9f, 0x22, 0xb3, 0x37, 0xea, 0x7d, 0x98, 0x34, 0x8c, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12042 = { .name = "ecdsa_secp224r1_sha256_12042", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12042_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12042_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12042_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1287 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12043 for ECDSA, tcId is 1288 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12043_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_12043_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12043_sig[] = { 0x76, 0x64, 0x51, 0x64, 0xff, 0x9a, 0xf3, 0xa1, 0xa9, 0x20, 0x5f, 0xda, 0x2e, 0xef, 0x32, 0x6d, 0x2b, 0xff, 0xc7, 0x95, 0xdc, 0xc4, 0x82, 0x95, 0x47, 0xfe, 0x01, 0xdd, 0xb6, 0x5b, 0xba, 0x50, 0x37, 0x19, 0x31, 0x4b, 0x27, 0x73, 0x4d, 0xd0, 0x6b, 0x13, 0x95, 0xd5, 0x40, 0xaf, 0x83, 0x96, 0x02, 0x9b, 0x78, 0xb8, 0x4e, 0x01, 0x49, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12043 = { .name = "ecdsa_secp224r1_sha256_12043", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12043_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12043_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12043_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1288 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12044 for ECDSA, tcId is 1289 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12044_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_12044_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12044_sig[] = { 0x32, 0xfa, 0x0c, 0xa7, 0xe0, 0x7f, 0x1f, 0x86, 0xac, 0x35, 0x07, 0x34, 0x99, 0x4e, 0x1f, 0x31, 0xb6, 0xda, 0x9c, 0x82, 0xf9, 0x3d, 0xce, 0xd2, 0xb9, 0x83, 0xc2, 0x9c, 0x7b, 0x78, 0x91, 0x28, 0x22, 0x06, 0xa4, 0x57, 0x11, 0xbd, 0xfc, 0xb2, 0xa1, 0x02, 0xb5, 0xd2, 0x89, 0xdf, 0x84, 0xff, 0x57, 0x78, 0x54, 0x86, 0x03, 0x57, 0x40, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12044 = { .name = "ecdsa_secp224r1_sha256_12044", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12044_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12044_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12044_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1289 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12045 for ECDSA, tcId is 1290 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12045_pubkey[] = { 0x15, 0x01, 0x6e, 0x52, 0xb3, 0x64, 0x72, 0xd5, 0x36, 0x47, 0x76, 0x05, 0xfb, 0x80, 0x5d, 0xd3, 0x90, 0x30, 0x82, 0xa0, 0x62, 0xd1, 0xea, 0x30, 0xaf, 0x9e, 0x55, 0x5a, 0xff, 0xff, 0xff, 0xff, 0x89, 0xd2, 0xd7, 0x0e, 0x02, 0x3d, 0xe6, 0xe7, 0xb0, 0x7e, 0x97, 0xdf, 0x40, 0x0a, 0x99, 0x2b, 0x9a, 0x4a, 0x0e, 0x0c, 0xe1, 0x78, 0xd2, 0x0c, }; static const unsigned char ecdsa_secp224r1_sha256_12045_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12045_sig[] = { 0x2d, 0x54, 0x92, 0x47, 0x8c, 0xa6, 0x4e, 0x51, 0x11, 0xdf, 0xd8, 0x52, 0x18, 0x67, 0xb6, 0x47, 0x7b, 0x7e, 0x78, 0x22, 0x78, 0x49, 0xad, 0x09, 0x0b, 0x85, 0x56, 0x94, 0xa5, 0x32, 0xf5, 0xa2, 0xfa, 0x35, 0x94, 0xaf, 0x81, 0xcd, 0x59, 0x28, 0xb8, 0x1b, 0x40, 0x57, 0xda, 0x71, 0x7b, 0xe5, 0xfb, 0x42, 0xa3, 0xa8, 0x6c, 0x68, 0x19, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12045 = { .name = "ecdsa_secp224r1_sha256_12045", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12045_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12045_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12045_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1290 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12046 for ECDSA, tcId is 1291 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12046_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_12046_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12046_sig[] = { 0x19, 0x1e, 0xee, 0x5d, 0xaf, 0x55, 0xcd, 0x49, 0x9e, 0x85, 0x39, 0xcb, 0x2c, 0xff, 0x79, 0x7c, 0xfe, 0xc5, 0xd5, 0x66, 0xd2, 0x02, 0x7b, 0xf9, 0xf8, 0xd6, 0x46, 0x93, 0xda, 0xdf, 0xea, 0xe8, 0x13, 0x1f, 0x64, 0xd9, 0x6b, 0x94, 0xfd, 0x34, 0x01, 0x97, 0xca, 0xa2, 0xbc, 0x04, 0x81, 0x85, 0x54, 0x81, 0x2f, 0xee, 0xf3, 0x34, 0x30, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12046 = { .name = "ecdsa_secp224r1_sha256_12046", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12046_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12046_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12046_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1291 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12047 for ECDSA, tcId is 1292 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12047_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_12047_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12047_sig[] = { 0xe0, 0xe2, 0xc0, 0x81, 0x80, 0xb8, 0xa2, 0x07, 0xee, 0x91, 0x05, 0xa7, 0xd3, 0x79, 0xfa, 0x11, 0x23, 0x68, 0xe8, 0x37, 0x0f, 0xa0, 0x9d, 0xfd, 0xe4, 0xa4, 0x5c, 0x45, 0xc7, 0x17, 0xbc, 0x08, 0x60, 0xe0, 0x16, 0xe7, 0xce, 0x48, 0xf8, 0xfe, 0x6a, 0x29, 0x9b, 0x36, 0x90, 0x6a, 0x60, 0x55, 0xad, 0xad, 0x93, 0xb4, 0x16, 0xce, 0x88, 0x38, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12047 = { .name = "ecdsa_secp224r1_sha256_12047", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12047_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12047_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12047_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1292 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12048 for ECDSA, tcId is 1293 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12048_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xf7, 0xe4, 0x71, 0x3d, 0x08, 0x51, 0x12, 0x11, 0x2c, 0x37, 0xcd, 0xf4, 0x60, 0x1f, 0xf6, 0x88, 0xda, 0x79, 0x60, 0x16, 0xb7, 0x1a, 0x72, 0x7a, 0xde, 0x5a, 0x9e, 0xc1, 0x65, 0x05, 0x4c, 0xc9, 0x87, 0xf9, 0xdc, 0x87, 0xe9, 0x99, 0x1b, 0x92, 0xe4, 0xfa, 0x64, 0x9c, 0xa6, 0x55, 0xee, 0xae, 0x9f, 0x2a, 0x30, 0xe1, }; static const unsigned char ecdsa_secp224r1_sha256_12048_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12048_sig[] = { 0x1b, 0x91, 0x9e, 0xf9, 0x35, 0x32, 0x29, 0x27, 0x43, 0xbb, 0x2e, 0x1b, 0x7b, 0x48, 0x94, 0xfd, 0x84, 0x7c, 0x6e, 0x5d, 0xe5, 0x2a, 0x08, 0xe1, 0xb0, 0xf2, 0xdc, 0xfb, 0xc2, 0xd3, 0x0d, 0x6b, 0x75, 0x94, 0xd8, 0xdb, 0xd2, 0x61, 0x49, 0x1a, 0xe1, 0xd5, 0x87, 0x79, 0x50, 0x5b, 0x07, 0x5b, 0x64, 0xe5, 0x56, 0x4d, 0xc9, 0x7a, 0x41, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12048 = { .name = "ecdsa_secp224r1_sha256_12048", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12048_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12048_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12048_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1293 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12049 for ECDSA, tcId is 1294 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12049_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_12049_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12049_sig[] = { 0xe7, 0x5d, 0xb4, 0x9e, 0xd3, 0x3f, 0xf2, 0x88, 0x5e, 0xa6, 0x10, 0x0c, 0xc9, 0x5b, 0x8f, 0xe1, 0xb9, 0x24, 0x2e, 0xa4, 0x24, 0x8d, 0xb0, 0x7b, 0xca, 0xc2, 0xe0, 0x20, 0x79, 0x6c, 0x86, 0x61, 0x42, 0xae, 0x8e, 0xb7, 0x5b, 0xb0, 0x49, 0x9c, 0x66, 0x8c, 0x6f, 0xe4, 0x54, 0x97, 0x69, 0x2f, 0xbc, 0xc6, 0x6b, 0x37, 0xc2, 0xe4, 0x62, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12049 = { .name = "ecdsa_secp224r1_sha256_12049", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12049_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12049_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12049_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1294 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12050 for ECDSA, tcId is 1295 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12050_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_12050_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12050_sig[] = { 0x1f, 0x81, 0xcd, 0x92, 0x43, 0x62, 0xec, 0x82, 0x58, 0x90, 0x30, 0x7b, 0x9b, 0x39, 0x36, 0xe0, 0xd8, 0xf7, 0x28, 0xa7, 0xc8, 0x4b, 0xdb, 0x43, 0xc5, 0xcf, 0x04, 0x33, 0x39, 0xd3, 0xe4, 0x6a, 0x03, 0x04, 0x0a, 0xd4, 0x1a, 0xc0, 0x26, 0xb1, 0x8e, 0x06, 0x29, 0xf6, 0x14, 0x5e, 0x3d, 0xc8, 0xd1, 0xe6, 0xbb, 0xe2, 0x00, 0xc8, 0x48, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12050 = { .name = "ecdsa_secp224r1_sha256_12050", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12050_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12050_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12050_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1295 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12051 for ECDSA, tcId is 1296 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12051_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xea, 0xdf, 0x7c, 0xee, 0x8d, 0x34, 0xd0, 0x4c, 0xf2, 0x2c, 0x8f, 0x7d, 0xe3, 0x56, 0x74, 0xfb, 0x2f, 0x50, 0x1d, 0x24, 0x2a, 0x76, 0xf7, 0x25, 0x86, 0xc4, 0x09, 0x30, 0x9d, 0x39, 0x8e, 0x60, 0xce, 0x1e, 0x0a, 0x4c, 0x9e, 0x05, 0xa9, 0xd3, 0x26, 0x27, 0x57, 0x7e, 0x8c, 0xe2, 0xcc, 0x7f, 0x3a, 0xfa, 0x2c, 0x3e, }; static const unsigned char ecdsa_secp224r1_sha256_12051_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12051_sig[] = { 0x00, 0xfd, 0xa6, 0x13, 0xaa, 0x67, 0xca, 0x42, 0x67, 0x3a, 0xd4, 0x30, 0x9f, 0x3f, 0x0f, 0x05, 0xb2, 0x56, 0x9f, 0x3d, 0xee, 0x63, 0xf4, 0xaa, 0x9c, 0xc5, 0x4c, 0xf3, 0x1e, 0x5a, 0x64, 0xb6, 0x8a, 0x37, 0xe5, 0xb2, 0x01, 0xc9, 0x18, 0x30, 0x3d, 0xc7, 0xa4, 0x04, 0x39, 0xaa, 0xea, 0xcf, 0x01, 0x9c, 0x58, 0x92, 0xa8, 0xf6, 0xd0, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12051 = { .name = "ecdsa_secp224r1_sha256_12051", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12051_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12051_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12051_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1296 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12052 for ECDSA, tcId is 1297 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12052_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_12052_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12052_sig[] = { 0xb9, 0x32, 0xb3, 0xf7, 0xe6, 0x46, 0x7e, 0x1e, 0xc7, 0xa5, 0x61, 0xf3, 0x11, 0x60, 0x24, 0x8c, 0x7f, 0x22, 0x45, 0x50, 0xa8, 0x50, 0x87, 0x88, 0x63, 0x4b, 0x53, 0xce, 0xa0, 0xc5, 0x31, 0x2a, 0xcf, 0x9e, 0x80, 0x1a, 0xff, 0x6d, 0x6f, 0xc9, 0x85, 0x50, 0xcf, 0xa7, 0x12, 0xbb, 0xf6, 0x59, 0x37, 0x16, 0x5a, 0x36, 0xf2, 0xc3, 0x2d, 0xc9, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12052 = { .name = "ecdsa_secp224r1_sha256_12052", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12052_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12052_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12052_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1297 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12053 for ECDSA, tcId is 1298 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12053_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_12053_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12053_sig[] = { 0xe5, 0x09, 0x59, 0x3f, 0xb0, 0x92, 0x45, 0xee, 0x82, 0x26, 0xce, 0x72, 0x78, 0x6b, 0x0c, 0xc3, 0x52, 0xbe, 0x55, 0x5a, 0x74, 0x86, 0xbe, 0x62, 0x8f, 0x4f, 0xd0, 0x0c, 0x0b, 0x7a, 0xbd, 0xe0, 0x06, 0x1b, 0x1e, 0x07, 0xbf, 0x13, 0x31, 0x91, 0x50, 0xa4, 0xff, 0x6a, 0x46, 0x4a, 0xba, 0xb6, 0x36, 0xab, 0x4e, 0x29, 0x7b, 0x0d, 0x76, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12053 = { .name = "ecdsa_secp224r1_sha256_12053", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12053_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12053_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12053_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1298 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12054 for ECDSA, tcId is 1299 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12054_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x2a, 0xb0, 0xe8, 0x49, 0x5e, 0x85, 0x9e, 0xb2, 0xaf, 0xb0, 0x07, 0x69, 0xd6, 0xe7, 0xfe, 0x62, 0x6a, 0x11, 0x91, 0x67, 0xc0, 0xb6, 0xbc, }; static const unsigned char ecdsa_secp224r1_sha256_12054_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12054_sig[] = { 0x6e, 0x54, 0xf9, 0x41, 0x20, 0x4d, 0x46, 0x39, 0xb8, 0x63, 0xc9, 0x8a, 0x65, 0xb7, 0xbe, 0xe3, 0x18, 0xd5, 0x1a, 0xb1, 0x90, 0x0a, 0x8f, 0x34, 0x5e, 0xac, 0x6f, 0x07, 0x0d, 0xa5, 0x05, 0x48, 0x29, 0x21, 0x4e, 0xcd, 0xe5, 0xe1, 0x05, 0x79, 0xb3, 0x6a, 0x2f, 0xe6, 0x42, 0x6c, 0x24, 0xb0, 0x64, 0xed, 0x77, 0xc3, 0x85, 0x90, 0xf2, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12054 = { .name = "ecdsa_secp224r1_sha256_12054", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12054_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12054_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12054_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1299 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12055 for ECDSA, tcId is 1300 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12055_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_12055_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12055_sig[] = { 0x85, 0xea, 0x4a, 0xb3, 0xff, 0xdc, 0x99, 0x23, 0x30, 0xc0, 0xca, 0x81, 0x52, 0xfa, 0xf9, 0x91, 0x38, 0x6b, 0xce, 0x82, 0x87, 0x7d, 0xbb, 0x23, 0x9b, 0xa6, 0x54, 0xf6, 0x08, 0x06, 0xc6, 0xba, 0xf0, 0xeb, 0xea, 0x4c, 0x1a, 0xaa, 0x19, 0x0e, 0x7d, 0x43, 0x25, 0xd4, 0x6d, 0x1f, 0x77, 0x89, 0xd5, 0x50, 0x63, 0x2b, 0x70, 0xb5, 0xfc, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12055 = { .name = "ecdsa_secp224r1_sha256_12055", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12055_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12055_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12055_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1300 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12056 for ECDSA, tcId is 1301 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12056_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_12056_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12056_sig[] = { 0x44, 0xd5, 0x3d, 0xeb, 0xb6, 0x46, 0xb7, 0x34, 0x85, 0x40, 0x2e, 0xab, 0x2d, 0x09, 0x90, 0x81, 0xb9, 0x7b, 0x12, 0x43, 0xc0, 0x25, 0xb6, 0x24, 0xf0, 0xdd, 0x67, 0xea, 0xe5, 0xde, 0x78, 0x9a, 0x7d, 0x4b, 0x77, 0xea, 0xc6, 0xd7, 0xbb, 0xa4, 0x16, 0x58, 0xe6, 0xe4, 0xdc, 0x34, 0x7d, 0xab, 0xed, 0x2f, 0x96, 0x80, 0xc0, 0x4a, 0x6f, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12056 = { .name = "ecdsa_secp224r1_sha256_12056", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12056_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12056_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12056_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1301 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12057 for ECDSA, tcId is 1302 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp224r1_sha256_12057_pubkey[] = { 0xb0, 0x01, 0x3c, 0x6f, 0xbf, 0xf6, 0xf0, 0x9f, 0xec, 0xda, 0x1c, 0x26, 0x3e, 0xf6, 0x53, 0x99, 0xd4, 0xcf, 0x98, 0x9c, 0xa5, 0xfc, 0x4f, 0x8f, 0xff, 0x0f, 0xe9, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xd5, 0x4f, 0x17, 0xb6, 0xa1, 0x7a, 0x61, 0x4d, 0x50, 0x4f, 0xf7, 0x96, 0x29, 0x18, 0x01, 0x9d, 0x95, 0xee, 0x6e, 0x98, 0x3f, 0x49, 0x45, }; static const unsigned char ecdsa_secp224r1_sha256_12057_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp224r1_sha256_12057_sig[] = { 0x15, 0x26, 0xeb, 0x2f, 0x65, 0x7e, 0xbe, 0xa9, 0xaf, 0x4c, 0xa1, 0x84, 0xb9, 0x75, 0xc0, 0x23, 0x72, 0xc8, 0x8e, 0x24, 0xe8, 0x35, 0xf3, 0xf5, 0x77, 0x4c, 0x0e, 0x12, 0x1f, 0x1e, 0xcc, 0xe3, 0x8e, 0xe5, 0x23, 0x72, 0xcb, 0x20, 0x19, 0x07, 0x79, 0x4d, 0xe1, 0x7b, 0x6d, 0x6c, 0x1a, 0xfa, 0x13, 0xc3, 0x16, 0xc5, 0x1c, 0xb0, 0x7b, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp224r1_sha256_12057 = { .name = "ecdsa_secp224r1_sha256_12057", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp224r1_str_params, .pubkey = ecdsa_secp224r1_sha256_12057_pubkey, .pubkeylen = 56, .msg = ecdsa_secp224r1_sha256_12057_msg, .msglen = 7, .sig = ecdsa_secp224r1_sha256_12057_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1302 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12058 for ECDSA, tcId is 1303 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12058_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12058_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12058_sig[] = { 0xd4, 0x34, 0xe2, 0x62, 0xa4, 0x9e, 0xab, 0x77, 0x81, 0xe3, 0x53, 0xa3, 0x56, 0x5e, 0x48, 0x25, 0x50, 0xdd, 0x0f, 0xd5, 0xde, 0xfa, 0x01, 0x3c, 0x7f, 0x29, 0x74, 0x5e, 0xff, 0x35, 0x69, 0xf1, 0x9b, 0x0c, 0x0a, 0x93, 0xf2, 0x67, 0xfb, 0x60, 0x52, 0xfd, 0x80, 0x77, 0xbe, 0x76, 0x9c, 0x2b, 0x98, 0x95, 0x31, 0x95, 0xd7, 0xbc, 0x10, 0xde, 0x84, 0x42, 0x18, 0x30, 0x5c, 0x6b, 0xa1, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12058 = { .name = "ecdsa_secp256r1_sha256_12058", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12058_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12058_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12058_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1303 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12059 for ECDSA, tcId is 1304 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12059_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12059_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12059_sig[] = { 0x0f, 0xe7, 0x74, 0x35, 0x5c, 0x04, 0xd0, 0x60, 0xf7, 0x6d, 0x79, 0xfd, 0x7a, 0x77, 0x2e, 0x42, 0x14, 0x63, 0x48, 0x92, 0x21, 0xbf, 0x0a, 0x33, 0xad, 0xd0, 0xbe, 0x9b, 0x19, 0x79, 0x11, 0x0b, 0x50, 0x0d, 0xcb, 0xa1, 0xc6, 0x9a, 0x8f, 0xbd, 0x43, 0xfa, 0x4f, 0x57, 0xf7, 0x43, 0xce, 0x12, 0x4c, 0xa8, 0xb9, 0x1a, 0x1f, 0x32, 0x5f, 0x3f, 0xac, 0x61, 0x81, 0x17, 0x5d, 0xf5, 0x57, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12059 = { .name = "ecdsa_secp256r1_sha256_12059", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12059_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12059_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12059_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1304 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12060 for ECDSA, tcId is 1305 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12060_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12060_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12060_sig[] = { 0xbb, 0x40, 0xbf, 0x21, 0x7b, 0xed, 0x3f, 0xb3, 0x95, 0x0c, 0x7d, 0x39, 0xf0, 0x3d, 0x36, 0xdc, 0x8e, 0x3b, 0x2c, 0xd7, 0x96, 0x93, 0xf1, 0x25, 0xbf, 0xd0, 0x65, 0x95, 0xee, 0x11, 0x35, 0xe3, 0x54, 0x1b, 0xf3, 0x53, 0x23, 0x51, 0xeb, 0xb0, 0x32, 0x71, 0x0b, 0xdb, 0x6a, 0x1b, 0xf1, 0xbf, 0xc8, 0x9a, 0x1e, 0x29, 0x1a, 0xc6, 0x92, 0xb3, 0xfa, 0x47, 0x80, 0x74, 0x5b, 0xb5, 0x56, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12060 = { .name = "ecdsa_secp256r1_sha256_12060", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12060_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12060_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12060_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1305 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12061 for ECDSA, tcId is 1306 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12061_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12061_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12061_sig[] = { 0x66, 0x4e, 0xb7, 0xee, 0x6d, 0xb8, 0x4a, 0x34, 0xdf, 0x3c, 0x86, 0xea, 0x31, 0x38, 0x9a, 0x54, 0x05, 0xba, 0xdd, 0x5c, 0xa9, 0x92, 0x31, 0xff, 0x55, 0x6d, 0x3e, 0x75, 0xa2, 0x33, 0xe7, 0x3a, 0x59, 0xf3, 0xc7, 0x52, 0xe5, 0x2e, 0xca, 0x46, 0x13, 0x76, 0x42, 0x49, 0x0a, 0x51, 0x56, 0x0c, 0xe0, 0xba, 0xdc, 0x67, 0x87, 0x54, 0xb8, 0xf7, 0x2e, 0x51, 0xa2, 0x90, 0x14, 0x26, 0xa1, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12061 = { .name = "ecdsa_secp256r1_sha256_12061", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12061_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12061_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12061_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1306 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12062 for ECDSA, tcId is 1307 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12062_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12062_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12062_sig[] = { 0x4c, 0xd0, 0x42, 0x9b, 0xba, 0xbd, 0x28, 0x27, 0x00, 0x9d, 0x6f, 0xcd, 0x84, 0x3d, 0x4c, 0xe3, 0x9c, 0x3e, 0x42, 0xe2, 0xd1, 0x63, 0x1f, 0xd0, 0x01, 0x98, 0x5a, 0x79, 0xd1, 0xfd, 0x8b, 0x43, 0x96, 0x38, 0xbf, 0x12, 0xdd, 0x68, 0x2f, 0x60, 0xbe, 0x7e, 0xf1, 0xd0, 0xe0, 0xd9, 0x8f, 0x08, 0xb7, 0xbc, 0xa7, 0x7a, 0x1a, 0x2b, 0x86, 0x9a, 0xe4, 0x66, 0x18, 0x9d, 0x2a, 0xcd, 0xab, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12062 = { .name = "ecdsa_secp256r1_sha256_12062", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12062_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12062_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12062_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1307 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12063 for ECDSA, tcId is 1308 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12063_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12063_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12063_sig[] = { 0xe5, 0x6c, 0x6e, 0xa2, 0xd1, 0xb0, 0x17, 0x09, 0x1c, 0x44, 0xd8, 0xb6, 0xcb, 0x62, 0xb9, 0xf4, 0x60, 0xe3, 0xce, 0x9a, 0xed, 0x5e, 0x5f, 0xd4, 0x1e, 0x8a, 0xdd, 0xed, 0x97, 0xc5, 0x6c, 0x04, 0xa3, 0x08, 0xec, 0x31, 0xf2, 0x81, 0xe9, 0x55, 0xbe, 0x20, 0xb4, 0x57, 0xe4, 0x63, 0x44, 0x0b, 0x4f, 0xcf, 0x2b, 0x80, 0x25, 0x80, 0x78, 0x20, 0x7f, 0xc1, 0x37, 0x81, 0x80, 0xf8, 0x9b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12063 = { .name = "ecdsa_secp256r1_sha256_12063", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12063_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12063_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12063_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1308 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12064 for ECDSA, tcId is 1309 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12064_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12064_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12064_sig[] = { 0x11, 0x58, 0xa0, 0x8d, 0x29, 0x15, 0x00, 0xb4, 0xca, 0xbe, 0xd3, 0x34, 0x6d, 0x89, 0x1e, 0xee, 0x57, 0xc1, 0x76, 0x35, 0x6a, 0x26, 0x24, 0xfb, 0x01, 0x1f, 0x8f, 0xbb, 0xf3, 0x46, 0x68, 0x30, 0x22, 0x8a, 0x8c, 0x48, 0x6a, 0x73, 0x60, 0x06, 0xe0, 0x82, 0x32, 0x5b, 0x85, 0x29, 0x0c, 0x5b, 0xc9, 0x1f, 0x37, 0x8b, 0x75, 0xd4, 0x87, 0xdd, 0xa4, 0x67, 0x98, 0xc1, 0x8f, 0x28, 0x55, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12064 = { .name = "ecdsa_secp256r1_sha256_12064", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12064_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12064_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12064_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1309 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12065 for ECDSA, tcId is 1310 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12065_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12065_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12065_sig[] = { 0xb1, 0xdb, 0x92, 0x89, 0x64, 0x9f, 0x59, 0x41, 0x0e, 0xa3, 0x6b, 0x0c, 0x0f, 0xc8, 0xd6, 0xaa, 0x26, 0x87, 0xb2, 0x91, 0x76, 0x93, 0x9d, 0xd2, 0x3e, 0x0d, 0xde, 0x56, 0xd3, 0x09, 0xfa, 0x9d, 0x3e, 0x15, 0x35, 0xe4, 0x28, 0x05, 0x59, 0x01, 0x5b, 0x0d, 0xbd, 0x98, 0x73, 0x66, 0xdc, 0xf4, 0x3a, 0x6d, 0x1a, 0xf5, 0xc2, 0x3c, 0x7d, 0x58, 0x4e, 0x1c, 0x3f, 0x48, 0xa1, 0x25, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12065 = { .name = "ecdsa_secp256r1_sha256_12065", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12065_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12065_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12065_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1310 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12066 for ECDSA, tcId is 1311 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12066_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12066_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12066_sig[] = { 0xb7, 0xb1, 0x6e, 0x76, 0x22, 0x86, 0xcb, 0x96, 0x44, 0x6a, 0xa8, 0xd4, 0xe6, 0xe7, 0x57, 0x8b, 0x0a, 0x34, 0x1a, 0x79, 0xf2, 0xdd, 0x1a, 0x22, 0x0a, 0xc6, 0xf0, 0xca, 0x4e, 0x24, 0xed, 0x86, 0xdd, 0xc6, 0x0a, 0x70, 0x0a, 0x13, 0x9b, 0x04, 0x66, 0x1c, 0x54, 0x7d, 0x07, 0xbb, 0xb0, 0x72, 0x17, 0x80, 0x14, 0x6d, 0xf7, 0x99, 0xcc, 0xf5, 0x5e, 0x55, 0x23, 0x4e, 0xcb, 0x8f, 0x12, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12066 = { .name = "ecdsa_secp256r1_sha256_12066", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12066_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12066_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12066_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1311 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12067 for ECDSA, tcId is 1312 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12067_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12067_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12067_sig[] = { 0xd8, 0x2a, 0x7c, 0x27, 0x17, 0x26, 0x11, 0x87, 0xc8, 0xe0, 0x0d, 0x8d, 0xf9, 0x63, 0xff, 0x35, 0xd7, 0x96, 0xed, 0xad, 0x36, 0xbc, 0x6e, 0x6b, 0xd1, 0xc9, 0x1c, 0x67, 0x0d, 0x91, 0x05, 0xb4, 0x3d, 0xca, 0xbd, 0xda, 0xf8, 0xfc, 0xaa, 0x61, 0xf4, 0x60, 0x3e, 0x7c, 0xba, 0xc0, 0xf3, 0xc0, 0x35, 0x1e, 0xcd, 0x59, 0x88, 0xef, 0xb2, 0x3f, 0x68, 0x0d, 0x07, 0xde, 0xbd, 0x13, 0x99, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12067 = { .name = "ecdsa_secp256r1_sha256_12067", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12067_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12067_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12067_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1312 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12068 for ECDSA, tcId is 1313 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12068_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12068_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12068_sig[] = { 0x5e, 0xb9, 0xc8, 0x84, 0x5d, 0xe6, 0x8e, 0xb1, 0x3d, 0x5b, 0xef, 0xe7, 0x19, 0xf4, 0x62, 0xd7, 0x77, 0x87, 0x80, 0x2b, 0xaf, 0xf3, 0x0c, 0xe9, 0x6a, 0x5c, 0xba, 0x06, 0x32, 0x54, 0xaf, 0x78, 0x2c, 0x02, 0x6a, 0xe9, 0xbe, 0x2e, 0x2a, 0x5e, 0x7c, 0xa0, 0xff, 0x9b, 0xbd, 0x92, 0xfb, 0x6e, 0x44, 0x97, 0x21, 0x86, 0x22, 0x8e, 0xe9, 0xa6, 0x2b, 0x87, 0xdd, 0xbe, 0x2e, 0xf6, 0x6f, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12068 = { .name = "ecdsa_secp256r1_sha256_12068", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12068_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12068_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12068_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1313 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12069 for ECDSA, tcId is 1314 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12069_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12069_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12069_sig[] = { 0x96, 0x84, 0x3d, 0xd0, 0x3c, 0x22, 0xab, 0xd2, 0xf3, 0xb7, 0x82, 0xb1, 0x70, 0x23, 0x9f, 0x90, 0xf2, 0x77, 0x92, 0x1b, 0xec, 0xc1, 0x17, 0xd0, 0x40, 0x4a, 0x8e, 0x4e, 0x36, 0x23, 0x0c, 0x28, 0xf2, 0xbe, 0x37, 0x8f, 0x52, 0x6f, 0x74, 0xa5, 0x43, 0xf6, 0x71, 0x65, 0x97, 0x6d, 0xe9, 0xed, 0x9a, 0x31, 0x21, 0x4e, 0xb4, 0xd7, 0xe6, 0xdb, 0x19, 0xe1, 0xed, 0xe1, 0x23, 0xdd, 0x99, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12069 = { .name = "ecdsa_secp256r1_sha256_12069", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12069_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12069_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12069_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1314 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12070 for ECDSA, tcId is 1315 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12070_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12070_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12070_sig[] = { 0x76, 0x64, 0x56, 0xdc, 0xe1, 0x85, 0x7c, 0x90, 0x6f, 0x99, 0x96, 0xaf, 0x72, 0x93, 0x39, 0x46, 0x4d, 0x27, 0xe9, 0xd9, 0x8e, 0xdc, 0x2d, 0x0e, 0x3b, 0x76, 0x02, 0x97, 0x06, 0x74, 0x21, 0xf6, 0x40, 0x23, 0x85, 0xec, 0xad, 0xae, 0x0d, 0x80, 0x81, 0xdc, 0xca, 0xf5, 0xd1, 0x90, 0x37, 0xec, 0x4e, 0x55, 0x37, 0x6e, 0xce, 0xd6, 0x99, 0xe9, 0x36, 0x46, 0xbf, 0xbb, 0xf1, 0x9d, 0x0b, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12070 = { .name = "ecdsa_secp256r1_sha256_12070", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12070_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12070_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12070_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1315 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12071 for ECDSA, tcId is 1316 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12071_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12071_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12071_sig[] = { 0xc6, 0x05, 0xc4, 0xb2, 0xed, 0xea, 0xb2, 0x04, 0x19, 0xe6, 0x51, 0x8a, 0x11, 0xb2, 0xdb, 0xc2, 0xb9, 0x7e, 0xd8, 0xb0, 0x7c, 0xce, 0xd0, 0xb1, 0x9c, 0x34, 0xf7, 0x77, 0xde, 0x7b, 0x9f, 0xd9, 0xed, 0xf0, 0xf6, 0x12, 0xc5, 0xf4, 0x6e, 0x03, 0xc7, 0x19, 0x64, 0x7b, 0xc8, 0xaf, 0x1b, 0x29, 0xb2, 0xcd, 0xe2, 0xed, 0xa7, 0x00, 0xfb, 0x1c, 0xff, 0x5e, 0x15, 0x9d, 0x47, 0x32, 0x6d, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12071 = { .name = "ecdsa_secp256r1_sha256_12071", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12071_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12071_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12071_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1316 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12072 for ECDSA, tcId is 1317 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12072_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12072_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12072_sig[] = { 0xd4, 0x8b, 0x68, 0xe6, 0xca, 0xbf, 0xe0, 0x3c, 0xf6, 0x14, 0x1c, 0x9a, 0xc5, 0x41, 0x41, 0xf2, 0x10, 0xe6, 0x44, 0x85, 0xd9, 0x92, 0x9a, 0xd7, 0xb7, 0x32, 0xbf, 0xe3, 0xb7, 0xeb, 0x8a, 0x84, 0xfe, 0xed, 0xae, 0x50, 0xc6, 0x1b, 0xd0, 0x0e, 0x19, 0xdc, 0x26, 0xf9, 0xb7, 0xe2, 0x26, 0x5e, 0x45, 0x08, 0xc3, 0x89, 0x10, 0x9a, 0xd2, 0xf2, 0x08, 0xf0, 0x77, 0x23, 0x15, 0xb6, 0xc9, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12072 = { .name = "ecdsa_secp256r1_sha256_12072", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12072_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12072_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12072_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1317 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12073 for ECDSA, tcId is 1318 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12073_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12073_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12073_sig[] = { 0xb7, 0xc8, 0x14, 0x57, 0xd4, 0xae, 0xb6, 0xaa, 0x65, 0x95, 0x70, 0x98, 0x56, 0x9f, 0x04, 0x79, 0x71, 0x0a, 0xd7, 0xf6, 0x59, 0x5d, 0x58, 0x74, 0xc3, 0x5a, 0x93, 0xd1, 0x2a, 0x5d, 0xd4, 0xc7, 0xb7, 0x96, 0x1a, 0x0b, 0x65, 0x28, 0x78, 0xc2, 0xd5, 0x68, 0x06, 0x9a, 0x43, 0x2c, 0xa1, 0x8a, 0x1a, 0x91, 0x99, 0xf2, 0xca, 0x57, 0x4d, 0xad, 0x4b, 0x9e, 0x3a, 0x05, 0xc0, 0xa1, 0xcd, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12073 = { .name = "ecdsa_secp256r1_sha256_12073", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12073_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12073_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12073_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1318 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12074 for ECDSA, tcId is 1319 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12074_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12074_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12074_sig[] = { 0x6b, 0x01, 0x33, 0x2d, 0xdb, 0x6e, 0xdf, 0xa9, 0xa3, 0x0a, 0x13, 0x21, 0xd5, 0x85, 0x8e, 0x1e, 0xe3, 0xcf, 0x97, 0xe2, 0x63, 0xe6, 0x69, 0xf8, 0xde, 0x5e, 0x96, 0x52, 0xe7, 0x6f, 0xf3, 0xf7, 0x59, 0x39, 0x54, 0x5f, 0xce, 0xd4, 0x57, 0x30, 0x9a, 0x6a, 0x04, 0xac, 0xe2, 0xbd, 0x0f, 0x70, 0x13, 0x9c, 0x8f, 0x7d, 0x86, 0xb0, 0x2c, 0xb1, 0xcc, 0x58, 0xf9, 0xe6, 0x9e, 0x96, 0xcd, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12074 = { .name = "ecdsa_secp256r1_sha256_12074", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12074_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12074_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12074_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1319 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12075 for ECDSA, tcId is 1320 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12075_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12075_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12075_sig[] = { 0xef, 0xdb, 0x88, 0x47, 0x20, 0xea, 0xea, 0xdc, 0x34, 0x9f, 0x9f, 0xc3, 0x56, 0xb6, 0xc0, 0x34, 0x41, 0x01, 0xcd, 0x2f, 0xd8, 0x43, 0x6b, 0x7d, 0x0e, 0x6a, 0x4f, 0xb9, 0x3f, 0x10, 0x63, 0x61, 0xf2, 0x4b, 0xee, 0x6a, 0xd5, 0xdc, 0x05, 0xf7, 0x61, 0x39, 0x75, 0x47, 0x3a, 0xad, 0xf3, 0xaa, 0xcb, 0xa9, 0xe7, 0x7d, 0xe7, 0xd6, 0x9b, 0x6c, 0xe4, 0x8c, 0xb6, 0x0d, 0x81, 0x13, 0x38, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12075 = { .name = "ecdsa_secp256r1_sha256_12075", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12075_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12075_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12075_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1320 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12076 for ECDSA, tcId is 1321 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12076_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12076_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12076_sig[] = { 0x31, 0x23, 0x04, 0x28, 0x40, 0x55, 0x60, 0xdc, 0xb8, 0x8f, 0xb5, 0xa6, 0x46, 0x83, 0x6a, 0xea, 0x9b, 0x23, 0xa2, 0x3d, 0xd9, 0x73, 0xdc, 0xbe, 0x80, 0x14, 0xc8, 0x7b, 0x8b, 0x20, 0xeb, 0x07, 0x0f, 0x93, 0x44, 0xd6, 0xe8, 0x12, 0xce, 0x16, 0x66, 0x46, 0x74, 0x76, 0x94, 0xa4, 0x1b, 0x0a, 0xaf, 0x97, 0x37, 0x4e, 0x19, 0xf3, 0xc5, 0xfb, 0x8b, 0xd7, 0xae, 0x3d, 0x9b, 0xd0, 0xbe, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12076 = { .name = "ecdsa_secp256r1_sha256_12076", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12076_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12076_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12076_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1321 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12077 for ECDSA, tcId is 1322 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12077_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12077_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12077_sig[] = { 0xca, 0xa7, 0x97, 0xda, 0x65, 0xb3, 0x20, 0xab, 0x0d, 0x5c, 0x47, 0x0c, 0xda, 0x0b, 0x36, 0xb2, 0x94, 0x35, 0x9c, 0x7d, 0xb9, 0x84, 0x1d, 0x67, 0x91, 0x74, 0xdb, 0x34, 0xc4, 0x85, 0x57, 0x43, 0xcf, 0x54, 0x3a, 0x62, 0xf2, 0x3e, 0x21, 0x27, 0x45, 0x39, 0x1a, 0xaf, 0x75, 0x05, 0xf3, 0x45, 0x12, 0x3d, 0x26, 0x85, 0xee, 0x3b, 0x94, 0x1d, 0x3d, 0xe6, 0xd9, 0xb3, 0x62, 0x42, 0xe5, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12077 = { .name = "ecdsa_secp256r1_sha256_12077", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12077_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12077_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12077_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1322 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12078 for ECDSA, tcId is 1323 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12078_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12078_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12078_sig[] = { 0x7e, 0x5f, 0x0a, 0xb5, 0xd9, 0x00, 0xd3, 0xd3, 0xd7, 0x86, 0x76, 0x57, 0xe5, 0xd6, 0xd3, 0x65, 0x19, 0xbc, 0x54, 0x08, 0x45, 0x36, 0xe7, 0xd2, 0x1c, 0x33, 0x6e, 0xd8, 0x00, 0x18, 0x59, 0x45, 0x94, 0x50, 0xc0, 0x7f, 0x20, 0x1f, 0xae, 0xc9, 0x4b, 0x82, 0xdf, 0xb3, 0x22, 0xe5, 0xac, 0x67, 0x66, 0x88, 0x29, 0x4a, 0xad, 0x35, 0xaa, 0x72, 0xe7, 0x27, 0xff, 0x0b, 0x19, 0xb6, 0x46, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12078 = { .name = "ecdsa_secp256r1_sha256_12078", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12078_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12078_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12078_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1323 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12079 for ECDSA, tcId is 1324 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12079_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12079_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12079_sig[] = { 0xd7, 0xd7, 0x0c, 0x58, 0x1a, 0xe9, 0xe3, 0xf6, 0x6d, 0xc6, 0xa4, 0x80, 0xbf, 0x03, 0x7a, 0xe2, 0x3f, 0x8a, 0x1e, 0x4a, 0x21, 0x36, 0xfe, 0x4b, 0x03, 0xaa, 0x69, 0xf0, 0xca, 0x25, 0xb3, 0x56, 0x89, 0xc4, 0x60, 0xf8, 0xa5, 0xa5, 0xc2, 0xbb, 0xba, 0x96, 0x2c, 0x8a, 0x3e, 0xe8, 0x33, 0xa4, 0x13, 0xe8, 0x56, 0x58, 0xe6, 0x2a, 0x59, 0xe2, 0xaf, 0x41, 0xd9, 0x12, 0x7c, 0xc4, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12079 = { .name = "ecdsa_secp256r1_sha256_12079", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12079_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12079_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12079_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1324 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12080 for ECDSA, tcId is 1325 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12080_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12080_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12080_sig[] = { 0x34, 0x1c, 0x1b, 0x9f, 0xf3, 0xc8, 0x3d, 0xd5, 0xe0, 0xdf, 0xa0, 0xbf, 0x68, 0xbc, 0xdf, 0x4b, 0xb7, 0xaa, 0x20, 0xc6, 0x25, 0x97, 0x5e, 0x5e, 0xee, 0xe3, 0x4b, 0xb3, 0x96, 0x26, 0x6b, 0x34, 0x72, 0xb6, 0x9f, 0x06, 0x1b, 0x75, 0x0f, 0xd5, 0x12, 0x1b, 0x22, 0xb1, 0x13, 0x66, 0xfa, 0xd5, 0x49, 0xc6, 0x34, 0xe7, 0x77, 0x65, 0xa0, 0x17, 0x90, 0x2a, 0x67, 0x09, 0x9e, 0x0a, 0x44, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12080 = { .name = "ecdsa_secp256r1_sha256_12080", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12080_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12080_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12080_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1325 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12081 for ECDSA, tcId is 1326 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12081_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12081_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12081_sig[] = { 0x70, 0xbe, 0xbe, 0x68, 0x4c, 0xdc, 0xb5, 0xca, 0x72, 0xa4, 0x2f, 0x0d, 0x87, 0x38, 0x79, 0x35, 0x9b, 0xd1, 0x78, 0x1a, 0x59, 0x18, 0x09, 0x94, 0x76, 0x28, 0xd3, 0x13, 0xa3, 0x81, 0x4f, 0x67, 0xae, 0xc0, 0x3a, 0xca, 0x8f, 0x55, 0x87, 0xa4, 0xd5, 0x35, 0xfa, 0x31, 0x02, 0x7b, 0xbe, 0x9c, 0xc0, 0xe4, 0x64, 0xb1, 0xc3, 0x57, 0x7f, 0x4c, 0x2d, 0xcd, 0xe6, 0xb2, 0x09, 0x47, 0x98, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12081 = { .name = "ecdsa_secp256r1_sha256_12081", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12081_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12081_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12081_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1326 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12082 for ECDSA, tcId is 1327 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12082_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12082_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12082_sig[] = { 0x6d, 0x6a, 0x4f, 0x55, 0x6c, 0xcc, 0xe1, 0x54, 0xe7, 0xfb, 0x9f, 0x19, 0xe7, 0x6c, 0x3d, 0xec, 0xa1, 0x3d, 0x59, 0xcc, 0x2a, 0xeb, 0x4e, 0xca, 0xd9, 0x68, 0xaa, 0xb2, 0xde, 0xd4, 0x59, 0x65, 0x53, 0xb9, 0xfa, 0x74, 0x80, 0x3e, 0xde, 0x0f, 0xc4, 0x44, 0x1b, 0xf6, 0x83, 0xd5, 0x6c, 0x56, 0x4d, 0x3e, 0x27, 0x4e, 0x09, 0xcc, 0xf4, 0x73, 0x90, 0xba, 0xdd, 0x14, 0x71, 0xc0, 0x5f, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12082 = { .name = "ecdsa_secp256k1_sha256_12082", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12082_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12082_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12082_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1327 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12083 for ECDSA, tcId is 1328 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12083_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12083_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12083_sig[] = { 0xaa, 0xd5, 0x03, 0xde, 0x9b, 0x9f, 0xd6, 0x6b, 0x94, 0x8e, 0x9a, 0xcf, 0x59, 0x6f, 0x0a, 0x0e, 0x65, 0xe7, 0x00, 0xb2, 0x8b, 0x26, 0xec, 0x56, 0xe6, 0xe4, 0x5e, 0x84, 0x64, 0x89, 0xb3, 0xc4, 0xff, 0xf2, 0x23, 0xc5, 0xd0, 0x76, 0x54, 0x47, 0xe8, 0x44, 0x7a, 0x3f, 0x9d, 0x31, 0xfd, 0x06, 0x96, 0xe8, 0x9d, 0x24, 0x44, 0x22, 0x02, 0x2f, 0xf6, 0x1a, 0x11, 0x0b, 0x2a, 0x8c, 0x2f, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12083 = { .name = "ecdsa_secp256k1_sha256_12083", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12083_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12083_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12083_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1328 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12084 for ECDSA, tcId is 1329 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12084_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12084_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12084_sig[] = { 0x91, 0x82, 0xce, 0xbd, 0x3b, 0xb8, 0xab, 0x57, 0x2e, 0x16, 0x71, 0x74, 0x39, 0x72, 0x09, 0xef, 0x4b, 0x1d, 0x43, 0x9a, 0xf3, 0xb2, 0x00, 0xcd, 0xf0, 0x03, 0x62, 0x00, 0x89, 0xe4, 0x32, 0x25, 0xab, 0xb8, 0x83, 0x67, 0xd1, 0x5f, 0xe6, 0x2d, 0x1e, 0xff, 0xfb, 0x68, 0x03, 0xda, 0x03, 0x10, 0x9e, 0xe2, 0x2e, 0x90, 0xbc, 0x9c, 0x78, 0xe8, 0xb4, 0xed, 0x23, 0x63, 0x0b, 0x82, 0xea, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12084 = { .name = "ecdsa_secp256k1_sha256_12084", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12084_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12084_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12084_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1329 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12085 for ECDSA, tcId is 1330 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12085_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12085_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12085_sig[] = { 0x38, 0x54, 0xa3, 0x99, 0x8a, 0xeb, 0xdf, 0x2d, 0xbc, 0x28, 0xad, 0xac, 0x41, 0x81, 0x46, 0x2c, 0xca, 0xc7, 0x87, 0x39, 0x07, 0xab, 0x7f, 0x21, 0x2c, 0x42, 0xdb, 0x0e, 0x69, 0xb5, 0x6e, 0xd8, 0xc1, 0x2c, 0x09, 0x47, 0x5c, 0x77, 0x2f, 0xd0, 0xc1, 0xb2, 0x06, 0x0d, 0x51, 0x63, 0xe4, 0x2b, 0xf7, 0x1d, 0x72, 0x7e, 0x4a, 0xe7, 0xc0, 0x3e, 0xeb, 0xa9, 0x54, 0xbf, 0x50, 0xb4, 0x3b, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12085 = { .name = "ecdsa_secp256k1_sha256_12085", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12085_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12085_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12085_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1330 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12086 for ECDSA, tcId is 1331 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12086_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12086_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12086_sig[] = { 0xe9, 0x4d, 0xbd, 0xc3, 0x87, 0x95, 0xfe, 0x5c, 0x90, 0x4d, 0x8f, 0x16, 0xd9, 0x69, 0xd3, 0xb5, 0x87, 0xf0, 0xa2, 0x5d, 0x2d, 0xe9, 0x0b, 0x6d, 0x8c, 0x5c, 0x53, 0xff, 0x88, 0x7e, 0x36, 0x07, 0x85, 0x6b, 0x8c, 0x96, 0x3e, 0x9b, 0x68, 0xda, 0xde, 0x44, 0x75, 0x0b, 0xf9, 0x7e, 0xc4, 0xd1, 0x1b, 0x1a, 0x0a, 0x38, 0x04, 0xf4, 0xcb, 0x79, 0xaa, 0x27, 0xbd, 0xea, 0x78, 0xac, 0x14, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12086 = { .name = "ecdsa_secp256k1_sha256_12086", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12086_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12086_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12086_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1331 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12087 for ECDSA, tcId is 1332 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12087_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12087_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12087_sig[] = { 0x49, 0xfc, 0x10, 0x2a, 0x08, 0xca, 0x47, 0xb6, 0x0e, 0x08, 0x58, 0xcd, 0x02, 0x84, 0xd2, 0x2c, 0xdd, 0xd7, 0x23, 0x3f, 0x94, 0xaa, 0xff, 0xbb, 0x2d, 0xb1, 0xdd, 0x2c, 0xf0, 0x84, 0x25, 0xe1, 0x5b, 0x16, 0xfc, 0xa5, 0xa1, 0x2c, 0xdb, 0x39, 0x70, 0x16, 0x97, 0xad, 0x8e, 0x39, 0xff, 0xd6, 0xbd, 0xec, 0x00, 0x24, 0x29, 0x8a, 0xfa, 0xa2, 0x32, 0x6a, 0xea, 0x09, 0x20, 0x0b, 0x14, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12087 = { .name = "ecdsa_secp256k1_sha256_12087", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12087_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12087_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12087_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1332 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12088 for ECDSA, tcId is 1333 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12088_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12088_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12088_sig[] = { 0x41, 0xef, 0xa7, 0xd3, 0xf0, 0x5a, 0x00, 0x10, 0x67, 0x5f, 0xcb, 0x91, 0x8a, 0x45, 0xc6, 0x93, 0xda, 0x4b, 0x34, 0x8d, 0xf2, 0x1a, 0x59, 0xd6, 0xf9, 0xcd, 0x73, 0xe0, 0xd8, 0x31, 0xd6, 0x7a, 0xbb, 0xab, 0x52, 0x59, 0x6c, 0x1a, 0x1d, 0x94, 0x84, 0x29, 0x6c, 0xdc, 0x92, 0xcb, 0xf0, 0x7e, 0x66, 0x52, 0x59, 0xa1, 0x37, 0x91, 0xa8, 0xfe, 0x88, 0x45, 0xe2, 0xc0, 0x7c, 0xf3, 0xfc, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12088 = { .name = "ecdsa_secp256k1_sha256_12088", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12088_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12088_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12088_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1333 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12089 for ECDSA, tcId is 1334 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12089_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12089_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12089_sig[] = { 0xb6, 0x15, 0x69, 0x8c, 0x35, 0x8b, 0x35, 0x92, 0x0d, 0xd8, 0x83, 0xec, 0xa6, 0x25, 0xa6, 0xc5, 0xf7, 0x56, 0x39, 0x70, 0xcd, 0xfc, 0x37, 0x8f, 0x8f, 0xe0, 0xce, 0xe1, 0x70, 0x92, 0x14, 0x4c, 0xda, 0x0b, 0x84, 0xcd, 0x94, 0xa4, 0x1e, 0x04, 0x9e, 0xf4, 0x77, 0xae, 0xac, 0x15, 0x7b, 0x2a, 0x9b, 0xfa, 0x6b, 0x7a, 0xc8, 0xde, 0x06, 0xed, 0x38, 0x58, 0xc5, 0xee, 0xde, 0x6d, 0xdd, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12089 = { .name = "ecdsa_secp256k1_sha256_12089", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12089_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12089_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12089_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1334 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12090 for ECDSA, tcId is 1335 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12090_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12090_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12090_sig[] = { 0x87, 0xcf, 0x8c, 0x0e, 0xb8, 0x2d, 0x44, 0xf6, 0x9c, 0x60, 0xa2, 0xff, 0x54, 0x57, 0xd3, 0xaa, 0xa3, 0x22, 0xe7, 0xec, 0x61, 0xae, 0x5a, 0xec, 0xfd, 0x67, 0x8a, 0xe1, 0xc1, 0x93, 0x2b, 0x0e, 0xc5, 0x22, 0xc4, 0xee, 0xa7, 0xea, 0xfb, 0x82, 0x91, 0x4c, 0xbf, 0x5c, 0x1f, 0xf7, 0x67, 0x60, 0x10, 0x9f, 0x55, 0xdd, 0xdd, 0xcf, 0x58, 0x27, 0x4d, 0x41, 0xc9, 0xbc, 0x43, 0x11, 0xe0, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12090 = { .name = "ecdsa_secp256k1_sha256_12090", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12090_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12090_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12090_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1335 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12091 for ECDSA, tcId is 1336 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12091_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12091_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12091_sig[] = { 0x62, 0xf4, 0x8e, 0xf7, 0x1a, 0xce, 0x27, 0xbf, 0x5a, 0x01, 0x83, 0x4d, 0xe1, 0xf7, 0xe3, 0xf9, 0x48, 0xb9, 0xdc, 0xe1, 0xca, 0x1e, 0x91, 0x1d, 0x5e, 0x13, 0xd3, 0xb1, 0x04, 0x47, 0x1d, 0x82, 0xa1, 0x57, 0x0c, 0xc0, 0xf3, 0x88, 0x76, 0x8d, 0x3b, 0xa7, 0xdf, 0x7f, 0x21, 0x25, 0x64, 0xca, 0xa2, 0x56, 0xff, 0x82, 0x5d, 0xf9, 0x97, 0xf2, 0x1f, 0x72, 0xf5, 0x28, 0x0d, 0x53, 0x01, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12091 = { .name = "ecdsa_secp256k1_sha256_12091", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12091_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12091_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12091_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1336 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12092 for ECDSA, tcId is 1337 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12092_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12092_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12092_sig[] = { 0xf6, 0xb0, 0xe2, 0xf6, 0xfe, 0x02, 0x0c, 0xf7, 0xc0, 0xc2, 0x01, 0x37, 0x43, 0x43, 0x44, 0xed, 0x7a, 0xdd, 0x6c, 0x4b, 0xe5, 0x18, 0x61, 0xe2, 0xd1, 0x4c, 0xbd, 0xa4, 0x72, 0xa6, 0xff, 0xb4, 0x9b, 0xe9, 0x37, 0x22, 0xc1, 0xa3, 0xad, 0x7d, 0x4c, 0xf9, 0x17, 0x23, 0x70, 0x0c, 0xb5, 0x48, 0x6d, 0xe5, 0x47, 0x9d, 0x8c, 0x1b, 0x38, 0xae, 0x4e, 0x8e, 0x5b, 0xa1, 0x63, 0x8e, 0x97, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12092 = { .name = "ecdsa_secp256k1_sha256_12092", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12092_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12092_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12092_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1337 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12093 for ECDSA, tcId is 1338 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12093_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12093_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12093_sig[] = { 0xdb, 0x09, 0xd8, 0x46, 0x0f, 0x05, 0xef, 0xf2, 0x3b, 0xc7, 0xe4, 0x36, 0xb6, 0x7d, 0xa5, 0x63, 0xfa, 0x4b, 0x4e, 0xdb, 0x58, 0xac, 0x24, 0xce, 0x20, 0x1f, 0xa8, 0xa3, 0x58, 0x12, 0x50, 0x57, 0x46, 0xda, 0x11, 0x67, 0x54, 0x60, 0x29, 0x40, 0xc8, 0x99, 0x9c, 0x8d, 0x66, 0x5f, 0x78, 0x6c, 0x50, 0xf5, 0x77, 0x2c, 0x0a, 0x3c, 0xdb, 0xda, 0x07, 0x5e, 0x77, 0xea, 0xbc, 0x64, 0xdf, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12093 = { .name = "ecdsa_secp256k1_sha256_12093", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12093_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12093_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12093_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1338 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12094 for ECDSA, tcId is 1339 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12094_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12094_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12094_sig[] = { 0x59, 0x2c, 0x41, 0xe1, 0x65, 0x17, 0xf1, 0x2f, 0xca, 0xbd, 0x98, 0x26, 0x76, 0x74, 0xf9, 0x74, 0xb5, 0x88, 0xe9, 0xf3, 0x5d, 0x35, 0x40, 0x6c, 0x1a, 0x7b, 0xb2, 0xed, 0x1d, 0x19, 0xb7, 0xb8, 0xc1, 0x9a, 0x5f, 0x94, 0x26, 0x07, 0xc3, 0x55, 0x14, 0x84, 0xff, 0x0d, 0xc9, 0x72, 0x81, 0xf0, 0xcd, 0xc8, 0x2b, 0xc4, 0x8e, 0x22, 0x05, 0xa0, 0x64, 0x5c, 0x0c, 0xf3, 0xd7, 0xf5, 0x9d, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12094 = { .name = "ecdsa_secp256k1_sha256_12094", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12094_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12094_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12094_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1339 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12095 for ECDSA, tcId is 1340 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12095_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12095_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12095_sig[] = { 0xbe, 0x0d, 0x70, 0x88, 0x7d, 0x5e, 0x40, 0x82, 0x1a, 0x61, 0xb6, 0x80, 0x47, 0xde, 0x4e, 0xa0, 0x3d, 0xeb, 0xfd, 0xf5, 0x1c, 0xdf, 0x4d, 0x4b, 0x19, 0x55, 0x58, 0xb9, 0x59, 0xa0, 0x32, 0xb2, 0x82, 0x66, 0xb4, 0xd2, 0x70, 0xe2, 0x44, 0x14, 0xec, 0xac, 0xb1, 0x4c, 0x09, 0x1a, 0x23, 0x31, 0x34, 0xb9, 0x18, 0xd3, 0x73, 0x20, 0xc6, 0x55, 0x7d, 0x60, 0xad, 0x0a, 0x63, 0x54, 0x4a, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12095 = { .name = "ecdsa_secp256k1_sha256_12095", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12095_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12095_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12095_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1340 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12096 for ECDSA, tcId is 1341 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12096_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12096_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12096_sig[] = { 0xfa, 0xe9, 0x2d, 0xfc, 0xb2, 0xee, 0x39, 0x2d, 0x27, 0x0a, 0xf3, 0xa5, 0x73, 0x9f, 0xaa, 0x26, 0xd4, 0xf9, 0x7b, 0xfd, 0x39, 0xed, 0x3c, 0xbe, 0xe4, 0xd2, 0x9e, 0x26, 0xaf, 0x3b, 0x20, 0x6a, 0x93, 0x64, 0x5c, 0x80, 0x60, 0x55, 0x95, 0xe0, 0x2c, 0x09, 0xa0, 0xdc, 0x4b, 0x17, 0xac, 0x2a, 0x51, 0x84, 0x6a, 0x72, 0x8b, 0x3e, 0x8d, 0x60, 0x44, 0x2e, 0xd6, 0x44, 0x9f, 0xd3, 0x34, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12096 = { .name = "ecdsa_secp256k1_sha256_12096", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12096_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12096_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12096_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1341 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12097 for ECDSA, tcId is 1342 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12097_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12097_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12097_sig[] = { 0x17, 0x6a, 0x25, 0x57, 0x56, 0x6f, 0xfa, 0x51, 0x8b, 0x11, 0x22, 0x66, 0x94, 0xeb, 0x98, 0x02, 0xed, 0x20, 0x98, 0xbf, 0xe2, 0x78, 0xe5, 0x57, 0x0f, 0xe1, 0xd5, 0xd7, 0xaf, 0x18, 0xa9, 0x43, 0xed, 0x6e, 0x20, 0x95, 0xf1, 0x2a, 0x03, 0xf2, 0xea, 0xf6, 0x71, 0x8f, 0x43, 0x0e, 0xc5, 0xfe, 0x28, 0x29, 0xfd, 0x16, 0x46, 0xab, 0x64, 0x87, 0x01, 0x65, 0x6f, 0xd3, 0x12, 0x21, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12097 = { .name = "ecdsa_secp256k1_sha256_12097", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12097_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12097_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12097_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1342 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12098 for ECDSA, tcId is 1343 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12098_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12098_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12098_sig[] = { 0x60, 0xbe, 0x20, 0xc3, 0xdb, 0xc1, 0x62, 0xdd, 0x34, 0xd2, 0x67, 0x80, 0x62, 0x1c, 0x10, 0x4b, 0xbe, 0x5d, 0xac, 0xe6, 0x30, 0x17, 0x1b, 0x2d, 0xae, 0xf0, 0xd8, 0x26, 0x40, 0x9e, 0xe5, 0xc2, 0xbd, 0x80, 0x81, 0xb2, 0x77, 0x62, 0xab, 0x6e, 0x8f, 0x42, 0x59, 0x56, 0xbf, 0x60, 0x4e, 0x33, 0x2f, 0xa0, 0x66, 0xa9, 0x9b, 0x59, 0xf8, 0x7e, 0x27, 0xdc, 0x11, 0x98, 0xb2, 0x6f, 0x5c, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12098 = { .name = "ecdsa_secp256k1_sha256_12098", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12098_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12098_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12098_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1343 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12099 for ECDSA, tcId is 1344 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12099_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12099_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12099_sig[] = { 0xed, 0xf0, 0x3c, 0xf6, 0x3f, 0x65, 0x88, 0x83, 0x28, 0x9a, 0x1a, 0x59, 0x3d, 0x10, 0x07, 0x89, 0x5b, 0x9f, 0x23, 0x6d, 0x27, 0xc9, 0xc1, 0xf1, 0x31, 0x30, 0x89, 0xaa, 0xed, 0x6b, 0x16, 0xae, 0xe5, 0xb2, 0x29, 0x03, 0xf7, 0xeb, 0x23, 0xad, 0xc2, 0xe0, 0x10, 0x57, 0xe3, 0x9b, 0x04, 0x08, 0xd4, 0x95, 0xf6, 0x94, 0xc8, 0x3f, 0x30, 0x6f, 0x12, 0x16, 0xc9, 0xbf, 0x87, 0x50, 0x60, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12099 = { .name = "ecdsa_secp256k1_sha256_12099", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12099_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12099_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12099_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1344 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12100 for ECDSA, tcId is 1345 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12100_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12100_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12100_sig[] = { 0x07, 0x64, 0x8b, 0x66, 0x60, 0xd0, 0x1b, 0xa2, 0x52, 0x0a, 0x09, 0xd2, 0x98, 0xad, 0xf3, 0xb1, 0xa0, 0x2c, 0x32, 0x74, 0x4b, 0xd2, 0x87, 0x72, 0x08, 0xf5, 0xa4, 0x16, 0x2f, 0x6c, 0x98, 0x43, 0x73, 0x13, 0x9d, 0x80, 0x0a, 0x4c, 0xdc, 0x1f, 0xfe, 0xa1, 0x5b, 0xce, 0x48, 0x71, 0xa0, 0xed, 0x99, 0xfd, 0x36, 0x70, 0x12, 0xcb, 0x9e, 0x02, 0xcd, 0xe2, 0x74, 0x94, 0x55, 0xe0, 0xd4, 0x95, 0xc5, 0x28, 0x18, 0xf3, 0xc1, 0x4f, 0x6e, 0x6a, 0xad, 0x10, 0x5b, 0x09, 0x25, 0xe2, 0xa7, 0x29, 0x0a, 0xc4, 0xa0, 0x6d, 0x9f, 0xad, 0xf4, 0xb1, 0x5b, 0x57, 0x85, 0x56, 0xfe, 0x33, 0x2a, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12100 = { .name = "ecdsa_secp384r1_sha384_12100", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12100_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12100_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12100_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1345 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12101 for ECDSA, tcId is 1346 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12101_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12101_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12101_sig[] = { 0xa0, 0x49, 0xdc, 0xd9, 0x6c, 0x72, 0xe4, 0xf3, 0x61, 0x44, 0xa5, 0x1b, 0xba, 0x30, 0x41, 0x7b, 0x45, 0x1a, 0x30, 0x5d, 0xd0, 0x1c, 0x9e, 0x30, 0xa5, 0xe0, 0x4d, 0xf9, 0x43, 0x42, 0x61, 0x7d, 0xc3, 0x83, 0xf1, 0x77, 0x27, 0x70, 0x8e, 0x32, 0x77, 0xcd, 0x72, 0x46, 0xca, 0x44, 0x07, 0x41, 0x39, 0x70, 0xe2, 0x64, 0xd8, 0x5b, 0x22, 0x8b, 0xf9, 0xe9, 0xb9, 0xc4, 0x94, 0x7c, 0x5d, 0xd0, 0x41, 0xea, 0x8b, 0x5b, 0xde, 0x30, 0xb9, 0x3a, 0xa5, 0x9f, 0xed, 0xf2, 0xc4, 0x28, 0xd3, 0xe2, 0x54, 0x0a, 0x54, 0xe0, 0x53, 0x06, 0x88, 0xac, 0xcc, 0xb8, 0x3a, 0xc7, 0xb2, 0x9b, 0x79, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12101 = { .name = "ecdsa_secp384r1_sha384_12101", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12101_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12101_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12101_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1346 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12102 for ECDSA, tcId is 1347 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12102_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12102_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12102_sig[] = { 0x44, 0x18, 0x00, 0xea, 0x93, 0x77, 0xc2, 0x78, 0x65, 0xbe, 0x00, 0x0a, 0xd0, 0x08, 0xeb, 0x3d, 0x75, 0x02, 0xbd, 0xd1, 0x05, 0x82, 0x4b, 0x26, 0xd1, 0x5c, 0xf3, 0xd0, 0x64, 0x52, 0x96, 0x9a, 0x9d, 0x06, 0x07, 0xa9, 0x15, 0xa8, 0xfe, 0x98, 0x92, 0x15, 0xfc, 0x4d, 0x61, 0xaf, 0x6e, 0x05, 0xdc, 0xe2, 0x9f, 0xaa, 0x51, 0x37, 0xf7, 0x5a, 0xd7, 0x7e, 0x03, 0x91, 0x8c, 0x8e, 0xe6, 0x74, 0x7c, 0xc7, 0xa3, 0x9b, 0x0a, 0x69, 0xf8, 0xb9, 0x15, 0x65, 0x4c, 0xac, 0x4c, 0xf4, 0xbf, 0xd9, 0xc8, 0x7c, 0xc4, 0x6a, 0xe1, 0x63, 0x1b, 0x5c, 0x6b, 0xae, 0xbd, 0x4f, 0xc0, 0x8f, 0xf8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12102 = { .name = "ecdsa_secp384r1_sha384_12102", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12102_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12102_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12102_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1347 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12103 for ECDSA, tcId is 1348 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12103_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12103_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12103_sig[] = { 0x32, 0x44, 0x76, 0x80, 0x16, 0x45, 0x7c, 0x46, 0x3b, 0x74, 0xf2, 0x09, 0x7f, 0x21, 0x6d, 0x96, 0x70, 0xb1, 0x91, 0xf7, 0x62, 0x81, 0xc7, 0x4b, 0xc6, 0xa1, 0xa1, 0x97, 0x1d, 0x19, 0xf2, 0x09, 0xbf, 0x46, 0x96, 0x46, 0x8f, 0x5e, 0xb7, 0x5d, 0x63, 0x26, 0xa0, 0xa4, 0x3c, 0x0a, 0x65, 0x29, 0x50, 0x1e, 0x0a, 0xd9, 0x85, 0xed, 0x9f, 0x95, 0x69, 0x7b, 0xd1, 0x7f, 0xdb, 0xe3, 0xf9, 0xca, 0x92, 0xe0, 0xf7, 0x64, 0x26, 0xd3, 0x66, 0x4e, 0x68, 0x96, 0x64, 0x8d, 0x9c, 0x75, 0x0b, 0xf5, 0x88, 0xd0, 0xce, 0x7d, 0x01, 0x1c, 0x1a, 0x1e, 0x8d, 0x6c, 0x2e, 0x08, 0x24, 0x22, 0xdc, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12103 = { .name = "ecdsa_secp384r1_sha384_12103", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12103_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12103_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12103_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1348 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12104 for ECDSA, tcId is 1349 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12104_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12104_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12104_sig[] = { 0x5e, 0x1a, 0xf4, 0x0f, 0x24, 0x80, 0xe3, 0xd9, 0x7c, 0x4a, 0xe4, 0xbf, 0xd3, 0x4a, 0x9f, 0x45, 0x26, 0x92, 0x41, 0x35, 0x6f, 0x3a, 0x46, 0xbe, 0xcd, 0x86, 0xa4, 0xa7, 0xc9, 0x71, 0x6d, 0x73, 0xca, 0x5a, 0xeb, 0xdb, 0x3d, 0xb1, 0xa7, 0x76, 0x56, 0x50, 0x66, 0x66, 0x83, 0xbc, 0x85, 0x6b, 0x7e, 0x7c, 0x4b, 0x47, 0x3a, 0x2b, 0xaa, 0xa4, 0x95, 0x37, 0x85, 0xbe, 0x8a, 0xa2, 0xa1, 0x00, 0x06, 0xf6, 0xd3, 0x6b, 0x40, 0x0a, 0xb9, 0x81, 0x86, 0x4d, 0x69, 0xce, 0xce, 0xc0, 0x46, 0x71, 0x8d, 0x04, 0x04, 0xb9, 0x64, 0x74, 0x54, 0xb1, 0x59, 0xaa, 0x5a, 0x92, 0xd7, 0x6d, 0x79, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12104 = { .name = "ecdsa_secp384r1_sha384_12104", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12104_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12104_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12104_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1349 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12105 for ECDSA, tcId is 1350 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12105_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12105_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12105_sig[] = { 0x66, 0x88, 0xe3, 0x6a, 0x26, 0xf1, 0x5b, 0xdc, 0x1c, 0x3f, 0x91, 0x36, 0x7f, 0x8a, 0x76, 0x67, 0xf7, 0xbb, 0x3e, 0x30, 0xa3, 0x35, 0xd6, 0xf0, 0x90, 0x0e, 0x95, 0x34, 0xeb, 0x88, 0xb2, 0x60, 0xcb, 0x29, 0x34, 0x4c, 0x72, 0x3f, 0xed, 0xfb, 0xe7, 0xac, 0x9c, 0x5a, 0x33, 0xf4, 0xbf, 0x0d, 0xaa, 0x35, 0xfd, 0xdf, 0x0f, 0xdc, 0x90, 0x17, 0x86, 0x0b, 0x37, 0x8f, 0x80, 0x1c, 0xd8, 0x06, 0xf3, 0xe2, 0xd7, 0x54, 0xcd, 0x2f, 0xd9, 0x4e, 0xb7, 0xbb, 0x36, 0xa4, 0x6c, 0xe8, 0x28, 0xce, 0xf8, 0x7e, 0x9e, 0xbb, 0xf4, 0x47, 0x06, 0x8e, 0x63, 0x0b, 0x87, 0xfe, 0xe3, 0x85, 0xad, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12105 = { .name = "ecdsa_secp384r1_sha384_12105", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12105_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12105_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12105_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1350 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12106 for ECDSA, tcId is 1351 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12106_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12106_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12106_sig[] = { 0xd4, 0xa8, 0xf3, 0xb0, 0xb4, 0xd3, 0xa5, 0x76, 0x9e, 0x3a, 0x0b, 0xbc, 0x64, 0x4b, 0x35, 0xf1, 0xd5, 0x09, 0x35, 0x5e, 0xd1, 0xfe, 0x40, 0x1e, 0x17, 0x0f, 0x66, 0x7b, 0x66, 0x1f, 0x69, 0x3b, 0x32, 0x59, 0x8e, 0x8c, 0x14, 0x3a, 0x81, 0x7a, 0x95, 0x89, 0x82, 0x84, 0x50, 0x42, 0xbb, 0x48, 0x04, 0xcc, 0x07, 0x57, 0x8b, 0xbd, 0x19, 0x81, 0xdb, 0xf6, 0xe8, 0xa9, 0x7a, 0x35, 0x4c, 0x98, 0xd4, 0x1b, 0x8b, 0x6f, 0x6e, 0x8a, 0x2c, 0x2b, 0x17, 0x63, 0xc7, 0xc2, 0xa2, 0x9d, 0x79, 0xe2, 0x4f, 0x84, 0x76, 0x07, 0x5c, 0x9a, 0xed, 0x9a, 0xec, 0x6c, 0x64, 0xdf, 0xf5, 0x04, 0x61, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12106 = { .name = "ecdsa_secp384r1_sha384_12106", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12106_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12106_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12106_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1351 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12107 for ECDSA, tcId is 1352 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12107_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12107_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12107_sig[] = { 0xc2, 0x86, 0xd1, 0x92, 0x8e, 0x9c, 0x79, 0xfd, 0xd3, 0xbe, 0xbd, 0xf2, 0x2a, 0x1d, 0xbd, 0x37, 0xc8, 0x10, 0x5e, 0x8e, 0xcf, 0x41, 0xe9, 0xe3, 0x77, 0x7f, 0xe3, 0x41, 0xb6, 0xb8, 0xd5, 0xa8, 0x9b, 0x9d, 0x98, 0x68, 0x27, 0xd6, 0xd1, 0xdb, 0xb3, 0x81, 0xcd, 0x82, 0x39, 0x48, 0x4a, 0x22, 0x20, 0x11, 0x19, 0xae, 0x30, 0x5b, 0x93, 0x60, 0xaa, 0x9b, 0x5e, 0x5d, 0x15, 0x67, 0xe0, 0x67, 0x4c, 0x09, 0xe4, 0xf0, 0x25, 0x55, 0x6e, 0xbf, 0x81, 0xb9, 0x87, 0x46, 0x6b, 0x0f, 0x42, 0x1b, 0x8d, 0x31, 0xf7, 0x2b, 0xbe, 0x95, 0xf3, 0xce, 0x2a, 0xa9, 0x87, 0x4a, 0x84, 0xed, 0xfd, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12107 = { .name = "ecdsa_secp384r1_sha384_12107", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12107_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12107_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12107_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1352 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12108 for ECDSA, tcId is 1353 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12108_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12108_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12108_sig[] = { 0xd9, 0xc6, 0x78, 0x55, 0x01, 0x67, 0xf1, 0x0c, 0x51, 0x1e, 0x62, 0xac, 0xb4, 0xbd, 0x0a, 0x3f, 0x7f, 0x33, 0x6b, 0xc0, 0x90, 0xc9, 0x4e, 0x6c, 0x6b, 0x02, 0x62, 0x24, 0x39, 0xc3, 0x48, 0xa2, 0x15, 0x9c, 0x5f, 0x41, 0xf9, 0xb5, 0xaa, 0x4b, 0x47, 0x05, 0x90, 0xd4, 0x0d, 0xcd, 0x7c, 0xc2, 0x1f, 0xd5, 0xea, 0xee, 0x29, 0x5a, 0xbb, 0x40, 0x81, 0xcb, 0x62, 0x67, 0x45, 0xf4, 0xad, 0x27, 0x9c, 0xeb, 0x44, 0x60, 0x40, 0x62, 0x83, 0x0b, 0x58, 0xe6, 0xc0, 0x46, 0x5c, 0x56, 0x2d, 0x41, 0xf0, 0x2b, 0xa5, 0x88, 0xfc, 0x0d, 0xb1, 0xeb, 0xbe, 0x33, 0x9c, 0xdc, 0x00, 0x8d, 0x7a, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12108 = { .name = "ecdsa_secp384r1_sha384_12108", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12108_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12108_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12108_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1353 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12109 for ECDSA, tcId is 1354 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12109_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12109_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12109_sig[] = { 0x20, 0xfe, 0xe7, 0xc7, 0x1b, 0x6c, 0xb0, 0xd1, 0xda, 0x36, 0x41, 0xec, 0x66, 0x22, 0xc0, 0x55, 0xa3, 0xb1, 0x6a, 0x1f, 0x59, 0x6c, 0x64, 0xb3, 0x4d, 0xa1, 0xb2, 0xd0, 0xb8, 0x68, 0xb6, 0x6a, 0x8f, 0x0a, 0x0d, 0x0d, 0xb9, 0x83, 0xb3, 0xdc, 0x7e, 0x53, 0xbb, 0x72, 0x95, 0xda, 0x81, 0x97, 0x81, 0x41, 0xa9, 0x31, 0xd3, 0x57, 0x9a, 0xec, 0x1c, 0xac, 0x98, 0x87, 0xd2, 0xff, 0xf9, 0xc6, 0xf1, 0x2d, 0x47, 0xa2, 0x7e, 0x4a, 0xab, 0x8c, 0xf2, 0x62, 0xa9, 0xd1, 0x4a, 0x71, 0x5b, 0xca, 0x0b, 0x20, 0x57, 0xcb, 0xc3, 0xf1, 0x8b, 0x6f, 0xd3, 0xd1, 0xdf, 0x76, 0xf7, 0x41, 0x0f, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12109 = { .name = "ecdsa_secp384r1_sha384_12109", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12109_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12109_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12109_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1354 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12110 for ECDSA, tcId is 1355 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12110_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12110_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12110_sig[] = { 0x91, 0x3e, 0xec, 0xc5, 0x59, 0xb3, 0xcf, 0x71, 0x08, 0xa6, 0x5d, 0x6c, 0xc3, 0x07, 0x6b, 0xfd, 0xf3, 0x6c, 0x6f, 0x94, 0xdc, 0xc6, 0x69, 0x3d, 0x06, 0x69, 0x04, 0x70, 0xf3, 0x4a, 0x2e, 0x81, 0x56, 0x42, 0x41, 0xe1, 0xde, 0x5f, 0x5f, 0x51, 0x42, 0x1d, 0xe3, 0x0a, 0xf4, 0x67, 0xf1, 0x0f, 0x64, 0x9b, 0xd3, 0x71, 0x72, 0x44, 0xe8, 0xef, 0x3c, 0x6b, 0x0e, 0xda, 0x98, 0x3f, 0x84, 0xdc, 0xa5, 0xea, 0x86, 0xd1, 0xbe, 0xc1, 0x53, 0x86, 0xb9, 0xc4, 0x73, 0xec, 0x43, 0xa8, 0xcd, 0x0b, 0xa5, 0x58, 0xee, 0xe8, 0x19, 0xf7, 0x91, 0xd9, 0xff, 0x92, 0x72, 0xb9, 0xaf, 0xd5, 0x95, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12110 = { .name = "ecdsa_secp384r1_sha384_12110", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12110_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12110_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12110_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1355 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12111 for ECDSA, tcId is 1356 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12111_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12111_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12111_sig[] = { 0x23, 0x85, 0x5c, 0x46, 0x40, 0x3a, 0x97, 0xb7, 0x6c, 0xbb, 0x31, 0x6e, 0xc3, 0xfe, 0x7e, 0x2c, 0x42, 0x2b, 0x81, 0x83, 0x87, 0x60, 0x4b, 0xda, 0x8c, 0x3d, 0x91, 0x12, 0x1b, 0x4f, 0x20, 0x17, 0x9d, 0x91, 0x07, 0xc5, 0xf9, 0x2d, 0xed, 0xc8, 0xb6, 0x20, 0xd7, 0xdb, 0x87, 0xfc, 0xcc, 0xcd, 0x50, 0xf5, 0x73, 0x43, 0xab, 0x14, 0x8e, 0x50, 0x66, 0x23, 0x20, 0xc4, 0x16, 0x1e, 0x44, 0x54, 0x3c, 0x35, 0xbc, 0x99, 0x20, 0x11, 0xea, 0x5b, 0x16, 0x80, 0xb9, 0x43, 0x82, 0xcf, 0x22, 0x4e, 0xa0, 0xec, 0x5d, 0xa5, 0x11, 0xe1, 0x02, 0xf5, 0x66, 0xcb, 0x67, 0x20, 0x1f, 0x30, 0xa2, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12111 = { .name = "ecdsa_secp384r1_sha384_12111", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12111_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12111_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12111_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1356 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12112 for ECDSA, tcId is 1357 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12112_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12112_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12112_sig[] = { 0xd2, 0x00, 0x95, 0x8d, 0x49, 0x1f, 0xce, 0xbd, 0xe6, 0x67, 0xcd, 0x73, 0x6c, 0x9d, 0xba, 0x09, 0x61, 0xc7, 0x0d, 0xb2, 0xec, 0xaf, 0x57, 0x3c, 0x31, 0xdd, 0x7f, 0xa4, 0x1e, 0xcc, 0xa3, 0x2b, 0x40, 0xb5, 0x89, 0x6f, 0x9a, 0x0d, 0xdf, 0x27, 0x21, 0x10, 0xe3, 0xd2, 0x1e, 0x84, 0x59, 0x3a, 0xc2, 0xec, 0xf7, 0x39, 0x43, 0xb9, 0xad, 0xce, 0x59, 0x6b, 0xac, 0x14, 0xfc, 0xe6, 0x24, 0x95, 0xae, 0x93, 0x82, 0x5c, 0x5f, 0xf6, 0xf6, 0x1c, 0x24, 0x7d, 0x1d, 0x8a, 0xfc, 0xba, 0x52, 0x08, 0x2f, 0xc9, 0x6f, 0x63, 0xa2, 0x6e, 0x55, 0xbc, 0xcf, 0xc3, 0x77, 0x9f, 0x88, 0xcf, 0xd7, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12112 = { .name = "ecdsa_secp384r1_sha384_12112", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12112_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12112_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12112_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1357 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12113 for ECDSA, tcId is 1358 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12113_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12113_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12113_sig[] = { 0x6a, 0xc1, 0x7d, 0x71, 0x26, 0x0c, 0x79, 0xf8, 0x1a, 0x75, 0x66, 0x12, 0x47, 0x38, 0xcb, 0x3e, 0xe5, 0xd0, 0xaa, 0x69, 0x0e, 0x73, 0xa9, 0x8a, 0xe9, 0xe7, 0x66, 0xf1, 0x33, 0x66, 0x91, 0xe5, 0x00, 0xca, 0xd5, 0x1b, 0xa1, 0x30, 0x23, 0x66, 0xc0, 0x9c, 0xc0, 0x6b, 0x8f, 0x70, 0x49, 0xe0, 0x32, 0xca, 0x96, 0x5d, 0x6d, 0x70, 0x12, 0xec, 0x18, 0x7c, 0x7c, 0xab, 0x95, 0x44, 0x33, 0x4d, 0x66, 0xc2, 0xa7, 0x65, 0x8d, 0xde, 0xfa, 0x67, 0xe4, 0xad, 0x40, 0x42, 0x98, 0x15, 0x51, 0x8e, 0xcc, 0x87, 0xb1, 0x49, 0x2d, 0xdd, 0x57, 0x33, 0x3b, 0xd2, 0x30, 0x0b, 0x46, 0x60, 0xa8, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12113 = { .name = "ecdsa_secp384r1_sha384_12113", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12113_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12113_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12113_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1358 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12114 for ECDSA, tcId is 1359 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12114_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12114_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12114_sig[] = { 0xe1, 0x9a, 0x46, 0x46, 0xf0, 0xed, 0x8a, 0x27, 0x1f, 0xe8, 0x6b, 0xa5, 0x33, 0xf8, 0xbe, 0x4f, 0xd8, 0x1b, 0xbf, 0x46, 0x74, 0x71, 0x6f, 0x66, 0x8e, 0xfa, 0x89, 0xa4, 0x0c, 0xac, 0x51, 0xee, 0xc2, 0xa6, 0xcf, 0xbd, 0x92, 0x32, 0x7d, 0x25, 0xef, 0xe9, 0x1c, 0xa4, 0xff, 0x71, 0x2b, 0xc5, 0x4a, 0x86, 0xb2, 0xe8, 0xe1, 0x23, 0x78, 0xe6, 0x33, 0xde, 0xc2, 0x69, 0x1e, 0x3b, 0x1e, 0xed, 0x4e, 0x93, 0x2c, 0xc4, 0x8b, 0x28, 0xe4, 0x5f, 0xa3, 0xd4, 0x64, 0xcc, 0x0e, 0x94, 0x8c, 0x02, 0xcc, 0x9d, 0xec, 0xf2, 0xbb, 0x43, 0xb2, 0x59, 0x37, 0xfc, 0xf3, 0x7e, 0x9a, 0xd8, 0x6e, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12114 = { .name = "ecdsa_secp384r1_sha384_12114", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12114_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12114_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12114_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1359 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12115 for ECDSA, tcId is 1360 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12115_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12115_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12115_sig[] = { 0x15, 0xaa, 0xc6, 0xc0, 0xf4, 0x35, 0xcb, 0x66, 0x2d, 0x11, 0x0d, 0xb5, 0xcf, 0x68, 0x6c, 0xae, 0xe5, 0x3c, 0x64, 0xfe, 0x2d, 0x6d, 0x60, 0x0a, 0x83, 0xeb, 0xe5, 0x05, 0xa0, 0xe6, 0xfc, 0x62, 0xdc, 0x57, 0x05, 0x16, 0x04, 0x77, 0xc4, 0x75, 0x28, 0xc8, 0xc9, 0x03, 0xfa, 0x86, 0x5b, 0x5d, 0x7f, 0x94, 0xdd, 0xc0, 0x1a, 0x60, 0x3f, 0x9b, 0xec, 0x5d, 0x10, 0xc9, 0xf2, 0xc8, 0x9f, 0xb2, 0x3b, 0x3f, 0xfa, 0xb6, 0xb2, 0xb6, 0x8d, 0x0f, 0x04, 0x33, 0x6d, 0x49, 0x90, 0x85, 0xe3, 0x2d, 0x22, 0xbf, 0x3a, 0xb6, 0x7a, 0x49, 0xa7, 0x4c, 0x74, 0x3f, 0x72, 0x47, 0x31, 0x72, 0xb5, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12115 = { .name = "ecdsa_secp384r1_sha384_12115", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12115_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12115_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12115_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1360 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12116 for ECDSA, tcId is 1361 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12116_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12116_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12116_sig[] = { 0x90, 0xb9, 0x5a, 0x7d, 0x19, 0x4b, 0x73, 0x49, 0x8f, 0xba, 0x5a, 0xfc, 0x95, 0xc1, 0xae, 0xa9, 0xbe, 0x07, 0x31, 0x62, 0xa9, 0xed, 0xc5, 0x7c, 0x4d, 0x12, 0xf4, 0x59, 0xf0, 0xa1, 0x73, 0x0b, 0xaf, 0x2f, 0x87, 0xd7, 0xd6, 0x62, 0x4a, 0xea, 0x7b, 0x93, 0x1e, 0xc5, 0x33, 0x70, 0xfe, 0x47, 0xcb, 0xc1, 0xef, 0x47, 0x0e, 0x66, 0x60, 0x10, 0x60, 0x4c, 0x60, 0x93, 0x84, 0xb8, 0x72, 0xdb, 0x7f, 0xa7, 0xb8, 0xa5, 0xa9, 0xf2, 0x0f, 0xde, 0xfd, 0x65, 0x6b, 0xe2, 0xfc, 0xc7, 0x5d, 0xb5, 0x39, 0x48, 0x10, 0x2f, 0x7a, 0xb2, 0x03, 0xea, 0x18, 0x60, 0xa6, 0xa3, 0x2a, 0xf2, 0x46, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12116 = { .name = "ecdsa_secp384r1_sha384_12116", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12116_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12116_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12116_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1361 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12117 for ECDSA, tcId is 1362 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12117_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12117_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12117_sig[] = { 0xdd, 0x43, 0x91, 0xce, 0x75, 0x57, 0xcb, 0xd0, 0x05, 0xe3, 0xd5, 0xd7, 0x27, 0xcd, 0x26, 0x43, 0x99, 0xdc, 0xc3, 0xc6, 0x50, 0x1e, 0x45, 0x47, 0x50, 0x5b, 0x6d, 0x57, 0xb4, 0x0b, 0xbf, 0x0a, 0x7f, 0xac, 0x79, 0x4d, 0xcc, 0x8d, 0x42, 0x33, 0x15, 0x9d, 0xd0, 0xaa, 0x40, 0xd4, 0xe0, 0xb9, 0xa7, 0x7f, 0xa1, 0x37, 0x4f, 0xd6, 0x0a, 0xa9, 0x16, 0x00, 0x91, 0x22, 0x00, 0xfc, 0x83, 0xc6, 0xaa, 0x44, 0x7f, 0x81, 0x71, 0xec, 0xea, 0x72, 0xae, 0x32, 0x2d, 0xf3, 0x2d, 0xcc, 0xd6, 0x89, 0x51, 0xdc, 0x5c, 0xaf, 0x6c, 0x50, 0x38, 0x0e, 0x40, 0x0e, 0x45, 0xbf, 0x5c, 0x0e, 0x62, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12117 = { .name = "ecdsa_secp384r1_sha384_12117", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12117_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12117_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12117_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1362 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12118 for ECDSA, tcId is 1363 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12118_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12118_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12118_sig[] = { 0x01, 0x1c, 0x96, 0x84, 0xaf, 0x6d, 0xc5, 0x27, 0x28, 0x41, 0x04, 0x73, 0xc6, 0x30, 0x53, 0xb0, 0x1c, 0x35, 0x8d, 0x67, 0xe8, 0x1f, 0x8a, 0x13, 0x24, 0xad, 0x71, 0x1c, 0x60, 0x48, 0x1a, 0x4a, 0x86, 0xdd, 0x3e, 0x75, 0xde, 0x20, 0xca, 0x55, 0xce, 0x7a, 0x9a, 0x39, 0xb1, 0xf8, 0x2f, 0xd5, 0xda, 0x4f, 0xad, 0xf2, 0x6a, 0x5b, 0xb8, 0xed, 0xd4, 0x67, 0xaf, 0x88, 0x25, 0xef, 0xe4, 0x74, 0x62, 0x18, 0x00, 0x34, 0xc0, 0x58, 0xab, 0xa6, 0x48, 0x8d, 0x69, 0x43, 0xe1, 0x1e, 0x0d, 0x13, 0x48, 0x42, 0x94, 0x49, 0xea, 0x17, 0xac, 0x5e, 0xdf, 0x8b, 0xca, 0xf6, 0x54, 0x10, 0x6b, 0x98, 0xb2, 0xdd, 0xf3, 0x46, 0xc5, 0x37, 0xb8, 0xa9, 0xa3, 0xf9, 0xb3, 0x17, 0x4b, 0x77, 0x63, 0x7d, 0x22, 0x0e, 0xf5, 0x31, 0x8d, 0xbb, 0xc3, 0x3d, 0x0a, 0xac, 0x0f, 0xe2, 0xdd, 0xed, 0xa1, 0x7b, 0x23, 0xcb, 0x2d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12118 = { .name = "ecdsa_secp521r1_sha512_12118", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12118_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12118_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12118_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1363 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12119 for ECDSA, tcId is 1364 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12119_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12119_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12119_sig[] = { 0x00, 0x7c, 0x47, 0xa6, 0x68, 0x62, 0x56, 0x48, 0xcd, 0x8a, 0x31, 0xac, 0x92, 0x17, 0x4c, 0xf3, 0xd6, 0x10, 0x41, 0xf7, 0xad, 0x29, 0x25, 0x88, 0xde, 0xf6, 0xed, 0x14, 0x3b, 0x1f, 0xf9, 0xa2, 0x88, 0xfd, 0x20, 0xcf, 0x36, 0xf5, 0x8d, 0x4b, 0xfe, 0x4b, 0x2c, 0xd4, 0xa3, 0x81, 0xd4, 0xda, 0x50, 0xc8, 0xed, 0xa5, 0x67, 0x4f, 0x02, 0x04, 0x49, 0xae, 0x1d, 0x3d, 0xd7, 0x7e, 0x44, 0xed, 0x48, 0x5e, 0x01, 0x05, 0x8e, 0x86, 0xb3, 0x27, 0xd2, 0x84, 0xe3, 0x5b, 0xab, 0x49, 0xfc, 0x7c, 0x33, 0x54, 0x17, 0x57, 0x3f, 0x31, 0x0a, 0xfa, 0x9e, 0x1a, 0x53, 0x56, 0x6e, 0x0f, 0xae, 0x51, 0x6e, 0x09, 0x90, 0x07, 0x96, 0x50, 0x30, 0xf6, 0xf4, 0x6b, 0x07, 0x71, 0x16, 0x35, 0x3f, 0x26, 0xcb, 0x46, 0x6d, 0x1c, 0xf3, 0xf3, 0x53, 0x00, 0xd7, 0x44, 0xd2, 0xd8, 0xf8, 0x83, 0xc8, 0xa3, 0x1b, 0x43, 0xc2, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12119 = { .name = "ecdsa_secp521r1_sha512_12119", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12119_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12119_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12119_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1364 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12120 for ECDSA, tcId is 1365 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12120_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12120_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12120_sig[] = { 0x01, 0xe4, 0xe9, 0xf3, 0xa7, 0xb8, 0x00, 0xde, 0x63, 0x40, 0x7b, 0x87, 0x03, 0xac, 0x54, 0x52, 0x26, 0x54, 0x1c, 0x97, 0xa6, 0x73, 0x56, 0x67, 0x11, 0xf7, 0x0e, 0x2b, 0x9c, 0xcb, 0x21, 0xa1, 0x45, 0xad, 0x46, 0x37, 0x82, 0x5b, 0x02, 0x3d, 0x1e, 0xa9, 0xf1, 0x8e, 0x60, 0x89, 0x74, 0x13, 0x71, 0x16, 0x11, 0xa8, 0x5c, 0x11, 0x79, 0xbf, 0xf9, 0xc1, 0x07, 0x36, 0x8f, 0x1c, 0x1b, 0x61, 0xc2, 0x4c, 0x01, 0xde, 0x94, 0x8e, 0xe5, 0x77, 0xc3, 0xd4, 0xe4, 0x12, 0x2a, 0x52, 0xec, 0xcc, 0xac, 0x59, 0xab, 0xb6, 0xfa, 0x93, 0x7d, 0xfb, 0x3e, 0x4b, 0x98, 0x8c, 0xb2, 0x43, 0xef, 0xe9, 0x87, 0x40, 0x30, 0x94, 0x52, 0xba, 0x01, 0x31, 0x12, 0xb2, 0x25, 0xb3, 0xb1, 0xb1, 0x38, 0x4d, 0x5f, 0x68, 0x79, 0x68, 0x45, 0x19, 0x9a, 0x26, 0x02, 0xa8, 0xd4, 0x50, 0x5a, 0x33, 0x1b, 0x07, 0xd1, 0x01, 0x18, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12120 = { .name = "ecdsa_secp521r1_sha512_12120", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12120_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12120_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12120_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1365 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12121 for ECDSA, tcId is 1366 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12121_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12121_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12121_sig[] = { 0x00, 0xb6, 0xcf, 0x64, 0x86, 0x1a, 0x2b, 0x16, 0xe3, 0x39, 0x76, 0x09, 0x5d, 0xbf, 0x45, 0xa5, 0x92, 0xc7, 0xc2, 0x42, 0x28, 0xc4, 0xa1, 0xdd, 0x72, 0x7f, 0x30, 0x3d, 0x5e, 0xeb, 0x87, 0xe5, 0x38, 0x8a, 0xd0, 0x5c, 0x32, 0x8f, 0x82, 0x4c, 0x40, 0xab, 0xd3, 0xe6, 0xce, 0x00, 0x3f, 0xef, 0x5c, 0xd5, 0x9d, 0xee, 0x00, 0x69, 0xad, 0x63, 0x48, 0xea, 0x6e, 0x57, 0xf9, 0x0f, 0x6b, 0xdc, 0x0a, 0x82, 0x00, 0x22, 0x81, 0x81, 0xc1, 0x80, 0x36, 0x6e, 0x54, 0x51, 0xdf, 0xef, 0x35, 0x93, 0xce, 0x66, 0x48, 0x04, 0xcb, 0x42, 0xd5, 0xa8, 0xd5, 0x04, 0x6b, 0x81, 0x6b, 0x3d, 0xaf, 0x66, 0x02, 0xfa, 0xfd, 0x9a, 0xc2, 0xdc, 0x24, 0xb8, 0xc9, 0x3a, 0x10, 0x02, 0x44, 0x80, 0x88, 0x25, 0x58, 0xb6, 0xad, 0x3d, 0x9e, 0x90, 0x59, 0x23, 0xdc, 0xd0, 0xfd, 0x2a, 0x11, 0x96, 0x47, 0x54, 0xa9, 0xb4, 0x6b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12121 = { .name = "ecdsa_secp521r1_sha512_12121", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12121_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12121_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12121_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1366 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12122 for ECDSA, tcId is 1367 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12122_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12122_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12122_sig[] = { 0x00, 0x93, 0xc8, 0xf7, 0x66, 0x82, 0x7d, 0x6d, 0xc1, 0x5c, 0x81, 0x0f, 0xa3, 0x04, 0x33, 0x15, 0x3a, 0x5e, 0x74, 0x28, 0x59, 0x20, 0x5e, 0xe8, 0x38, 0x9f, 0xbf, 0x69, 0x5c, 0x88, 0x40, 0xdc, 0x91, 0x74, 0x40, 0x87, 0x0a, 0xcc, 0x5b, 0x16, 0x00, 0x87, 0xff, 0xd0, 0xcd, 0x9a, 0x60, 0x81, 0x02, 0x9c, 0x60, 0xa7, 0xc2, 0x6d, 0x5e, 0x8a, 0xa9, 0xa0, 0x57, 0x0f, 0x4e, 0xfd, 0xeb, 0x13, 0xde, 0xa2, 0x01, 0x2e, 0xc3, 0xbb, 0xf7, 0x5a, 0x0a, 0xd3, 0xdf, 0x40, 0x31, 0x02, 0x66, 0x64, 0x8a, 0x36, 0xdb, 0x82, 0x02, 0x17, 0xed, 0x7f, 0xa9, 0x4e, 0x9c, 0x83, 0x13, 0xe0, 0x32, 0x93, 0xef, 0x4f, 0x6a, 0x40, 0xe7, 0x36, 0xfb, 0x8f, 0x20, 0x8a, 0xd8, 0xfb, 0x88, 0x3c, 0xa5, 0x09, 0xd4, 0x80, 0x46, 0x91, 0x05, 0x23, 0x64, 0x54, 0x59, 0xc2, 0x78, 0x29, 0xd5, 0x44, 0x31, 0x46, 0x3b, 0x25, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12122 = { .name = "ecdsa_secp521r1_sha512_12122", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12122_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12122_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12122_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1367 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12123 for ECDSA, tcId is 1368 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12123_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12123_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12123_sig[] = { 0x01, 0x52, 0x38, 0x8c, 0x6d, 0xa6, 0x61, 0x64, 0xb7, 0x06, 0xb4, 0x1d, 0xd4, 0xdd, 0x48, 0x17, 0x6d, 0x6e, 0xaf, 0x65, 0x25, 0xf8, 0x76, 0xef, 0x0f, 0xf2, 0xd1, 0x47, 0xf6, 0x96, 0x6e, 0xbf, 0xad, 0xf1, 0x76, 0x7f, 0xa6, 0x6d, 0x04, 0x20, 0x3d, 0x3e, 0xc9, 0xc9, 0x37, 0xa1, 0xf0, 0xc9, 0x45, 0xae, 0xd9, 0x53, 0xe3, 0x4b, 0xe4, 0x44, 0xc2, 0x19, 0xfd, 0x3b, 0x94, 0xd3, 0x27, 0x7a, 0xa6, 0x52, 0x01, 0x65, 0x8c, 0x1e, 0x5b, 0x2e, 0x56, 0x3a, 0x49, 0xd1, 0x1c, 0x88, 0x3d, 0x05, 0xc4, 0x91, 0xd6, 0x28, 0xf0, 0xa9, 0x2c, 0x3e, 0x3d, 0xc8, 0xdb, 0x9a, 0x4c, 0x8d, 0x5f, 0x0d, 0xc8, 0x46, 0xac, 0x22, 0xaf, 0x8b, 0x3c, 0x5f, 0xb5, 0xbb, 0xe2, 0xcf, 0xa9, 0x86, 0x14, 0xdc, 0xff, 0xd8, 0x7d, 0xe1, 0xce, 0xe2, 0xc5, 0x91, 0x2a, 0x58, 0x99, 0x50, 0x5a, 0x0c, 0x5b, 0xca, 0xa5, 0x13, 0xe2, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12123 = { .name = "ecdsa_secp521r1_sha512_12123", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12123_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12123_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12123_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1368 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12124 for ECDSA, tcId is 1369 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12124_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12124_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12124_sig[] = { 0x01, 0x0e, 0x89, 0x47, 0x0f, 0x98, 0x1d, 0x2c, 0x7c, 0x5c, 0x96, 0x58, 0x71, 0x21, 0xa6, 0x73, 0x23, 0xbb, 0x96, 0xff, 0x24, 0x27, 0x73, 0x9d, 0x0d, 0x88, 0x5e, 0xa2, 0x77, 0x29, 0x3e, 0xfa, 0x3b, 0x25, 0xc0, 0xbd, 0xa0, 0x4d, 0x81, 0x46, 0x61, 0x98, 0xa3, 0xcb, 0xfc, 0x44, 0x1f, 0x1b, 0x1b, 0x98, 0xf6, 0xbc, 0xdc, 0x25, 0x89, 0xd9, 0xd9, 0x1a, 0x17, 0xa7, 0x89, 0x9f, 0x70, 0xd0, 0x46, 0x1e, 0x01, 0x73, 0x51, 0xb0, 0xda, 0x8c, 0x8d, 0x0e, 0x4a, 0xa0, 0x97, 0x46, 0x69, 0xd1, 0x90, 0xfa, 0x2f, 0x90, 0xaa, 0x50, 0x22, 0x71, 0x60, 0x59, 0x4d, 0xfb, 0x55, 0x75, 0x50, 0x02, 0x36, 0x54, 0x41, 0xde, 0x17, 0xea, 0x42, 0x90, 0x21, 0x28, 0xa6, 0xf8, 0x1e, 0x55, 0x41, 0x77, 0xed, 0x50, 0x9c, 0x0c, 0xec, 0x31, 0xfd, 0x50, 0x53, 0xfa, 0xe0, 0x3f, 0x62, 0xff, 0x76, 0x57, 0x9b, 0xa9, 0x2b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12124 = { .name = "ecdsa_secp521r1_sha512_12124", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12124_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12124_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12124_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1369 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12125 for ECDSA, tcId is 1370 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12125_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12125_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12125_sig[] = { 0x01, 0x10, 0x94, 0xac, 0x23, 0xca, 0x46, 0xa3, 0xe2, 0xb4, 0xac, 0x3b, 0xaa, 0xe6, 0x50, 0x4f, 0x1b, 0xfb, 0x3d, 0xdf, 0x2d, 0xb9, 0xab, 0x40, 0xed, 0xa3, 0x2d, 0x8e, 0x0a, 0x05, 0x72, 0x79, 0x98, 0xf8, 0x55, 0x2a, 0x03, 0x3b, 0xb0, 0x52, 0x41, 0xe8, 0x26, 0xa8, 0x6a, 0x1d, 0x03, 0x01, 0x4e, 0xae, 0x3a, 0xa5, 0xfe, 0x1a, 0x45, 0xca, 0xac, 0x1d, 0xb3, 0xe8, 0x13, 0x8b, 0x9c, 0xf5, 0x90, 0x68, 0x01, 0x47, 0xed, 0xb1, 0x5a, 0x50, 0x80, 0xee, 0x2f, 0x92, 0x9f, 0x78, 0xb6, 0xac, 0x86, 0x60, 0x4a, 0xae, 0x51, 0xb6, 0x74, 0xfa, 0x46, 0xea, 0xae, 0x7f, 0xdf, 0xd9, 0x0b, 0xf6, 0x4d, 0x61, 0x89, 0x34, 0x11, 0x55, 0xf4, 0xeb, 0xa9, 0x37, 0xea, 0xe7, 0x4c, 0x9e, 0x48, 0x0e, 0xb4, 0xfb, 0x7e, 0x6a, 0xaf, 0xd4, 0x28, 0x5e, 0x7f, 0xc5, 0x03, 0xee, 0x6e, 0xc2, 0x0f, 0x0b, 0x14, 0x15, 0xbe, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12125 = { .name = "ecdsa_secp521r1_sha512_12125", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12125_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12125_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12125_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1370 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12126 for ECDSA, tcId is 1371 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12126_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12126_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12126_sig[] = { 0x01, 0xd8, 0x76, 0xae, 0x17, 0x4d, 0xa3, 0x1e, 0x12, 0x8b, 0xab, 0xff, 0x9f, 0x1d, 0x15, 0x50, 0x76, 0x60, 0xbd, 0xc7, 0x95, 0x87, 0x50, 0x84, 0x4d, 0xc4, 0xf4, 0x29, 0x1f, 0x75, 0xa8, 0x82, 0xa2, 0x2f, 0x17, 0x7f, 0x70, 0x4b, 0xe6, 0x06, 0x7b, 0xf7, 0xce, 0x8f, 0x06, 0xb8, 0x62, 0x6d, 0x97, 0x1e, 0x6e, 0xf5, 0xdc, 0xb6, 0x66, 0xfa, 0x97, 0x5c, 0x1e, 0x11, 0x12, 0x6e, 0x04, 0xfc, 0xcc, 0xe2, 0x01, 0xab, 0xb1, 0x26, 0x30, 0xa6, 0x8b, 0x66, 0x9e, 0x6a, 0xd2, 0xd8, 0xd6, 0x26, 0x54, 0xd7, 0x5d, 0xfb, 0xc6, 0xb5, 0x4a, 0x8e, 0x3a, 0x9c, 0x91, 0x5b, 0xe6, 0x63, 0xe0, 0x80, 0xdd, 0xcc, 0x34, 0x8e, 0x57, 0xa1, 0x0e, 0x2b, 0x1d, 0xd9, 0xf0, 0x3e, 0x1b, 0x89, 0x77, 0x96, 0xad, 0x88, 0x9b, 0x07, 0x5e, 0x59, 0x19, 0xdc, 0x5b, 0xf3, 0x7a, 0x11, 0x2d, 0x92, 0xc6, 0x93, 0x45, 0x6e, 0x64, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12126 = { .name = "ecdsa_secp521r1_sha512_12126", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12126_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12126_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12126_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1371 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12127 for ECDSA, tcId is 1372 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12127_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12127_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12127_sig[] = { 0x00, 0x4e, 0xd6, 0x92, 0xaf, 0x1e, 0xd1, 0xb4, 0xbd, 0x5c, 0xea, 0x3a, 0xa8, 0xdd, 0xc6, 0xf3, 0xf1, 0x5d, 0x8a, 0x6e, 0xe0, 0x01, 0x6f, 0xa0, 0xe8, 0xeb, 0x95, 0x85, 0x80, 0xe7, 0x42, 0x18, 0x32, 0xec, 0xc0, 0xe3, 0x87, 0xc3, 0x4a, 0xaf, 0xac, 0x63, 0x80, 0xba, 0xc4, 0x19, 0xea, 0x45, 0xc4, 0x2a, 0xe6, 0x42, 0x6a, 0xf5, 0x03, 0x84, 0x7f, 0x22, 0xc4, 0x9c, 0x2f, 0x45, 0x63, 0x38, 0xc1, 0xa7, 0x00, 0x7a, 0xce, 0xad, 0xde, 0x02, 0xac, 0xe1, 0x66, 0x8b, 0xc1, 0xa3, 0x36, 0x0d, 0x34, 0xe1, 0x25, 0xaf, 0xde, 0x23, 0x0f, 0x53, 0x6c, 0x15, 0x4d, 0x91, 0xe6, 0xc8, 0x76, 0xbe, 0xe1, 0xd3, 0x4a, 0xe0, 0x6e, 0xdc, 0xbb, 0xca, 0x0c, 0x7c, 0xd1, 0x76, 0x46, 0x84, 0x09, 0x13, 0x16, 0x47, 0x40, 0xb1, 0x2e, 0x2e, 0x22, 0x4f, 0xe3, 0xef, 0x3d, 0xec, 0x6f, 0xd8, 0x4a, 0x81, 0xb5, 0x81, 0xc1, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12127 = { .name = "ecdsa_secp521r1_sha512_12127", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12127_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12127_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12127_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1372 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12128 for ECDSA, tcId is 1373 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12128_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12128_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12128_sig[] = { 0x00, 0xe0, 0x10, 0x94, 0x04, 0x8f, 0xcf, 0x7a, 0x1e, 0x2e, 0xc6, 0x6f, 0xae, 0xdf, 0xfc, 0x40, 0xf4, 0x8c, 0x9c, 0x93, 0x51, 0x43, 0x25, 0xbd, 0xe6, 0xb4, 0x95, 0x8d, 0x80, 0xf0, 0x41, 0x3e, 0xfd, 0xe7, 0xee, 0xc1, 0xdc, 0x6d, 0xe6, 0x5f, 0x96, 0x00, 0x9c, 0x06, 0x93, 0x97, 0xe5, 0x1d, 0xa2, 0xeb, 0x17, 0x29, 0xef, 0xa2, 0x87, 0xaf, 0xd5, 0x55, 0x2b, 0x25, 0xa9, 0xe4, 0x27, 0xa6, 0xd8, 0x36, 0x01, 0x48, 0x9e, 0x7e, 0x12, 0x4f, 0x66, 0x94, 0x2e, 0x64, 0x2d, 0xe9, 0x92, 0xe6, 0x0b, 0x3a, 0x86, 0xfc, 0xce, 0x57, 0x67, 0x67, 0x71, 0x93, 0x90, 0xc3, 0xa3, 0x12, 0xfc, 0xde, 0xaa, 0x56, 0x0a, 0x7f, 0xbb, 0x0c, 0xab, 0xb3, 0x5e, 0x05, 0xa6, 0xd6, 0xf3, 0x49, 0x91, 0x60, 0xfd, 0x2d, 0xba, 0x12, 0xd2, 0x9b, 0x61, 0x3b, 0x16, 0xde, 0xc7, 0x49, 0x4c, 0x95, 0x0d, 0x65, 0xfd, 0xf1, 0x1f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12128 = { .name = "ecdsa_secp521r1_sha512_12128", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12128_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12128_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12128_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1373 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12129 for ECDSA, tcId is 1374 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12129_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12129_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12129_sig[] = { 0x01, 0xd2, 0x96, 0x29, 0x22, 0x13, 0x38, 0x0d, 0xe1, 0x33, 0xdc, 0x66, 0xec, 0xeb, 0x8b, 0xd8, 0x57, 0xa5, 0xc4, 0x68, 0xaf, 0xe8, 0x55, 0xc0, 0x5d, 0xa9, 0xdb, 0x93, 0x73, 0x73, 0xb5, 0x1f, 0x90, 0x20, 0xca, 0x11, 0x35, 0x34, 0x15, 0xda, 0x76, 0xbb, 0x6a, 0xf9, 0x97, 0xa4, 0x86, 0xd2, 0x37, 0x0e, 0x31, 0xad, 0xcc, 0x0a, 0x45, 0x31, 0x95, 0x2a, 0x3b, 0x59, 0x42, 0x86, 0x78, 0xee, 0x59, 0x43, 0x01, 0x59, 0x79, 0xa3, 0xc6, 0x09, 0xc2, 0xc2, 0x09, 0x9a, 0xe1, 0xb2, 0x90, 0xda, 0x3d, 0x61, 0x3b, 0x24, 0x8e, 0x3a, 0x10, 0xde, 0x7a, 0xd7, 0x70, 0xdf, 0xfc, 0x82, 0xfb, 0x33, 0xe7, 0x4f, 0xc3, 0x20, 0x75, 0x33, 0xf9, 0x72, 0x85, 0xcf, 0x45, 0x57, 0xa6, 0x40, 0x7e, 0x9a, 0x77, 0x5e, 0x59, 0xef, 0xea, 0xee, 0x42, 0x64, 0xb2, 0x63, 0x49, 0x33, 0xa6, 0xba, 0xf8, 0xc4, 0x06, 0xf0, 0xc4, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12129 = { .name = "ecdsa_secp521r1_sha512_12129", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12129_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12129_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12129_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1374 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12130 for ECDSA, tcId is 1375 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12130_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12130_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12130_sig[] = { 0x01, 0xef, 0x8f, 0x78, 0x5c, 0x51, 0xa2, 0x5a, 0xe2, 0xcd, 0x93, 0x48, 0x7b, 0x5c, 0x84, 0x8d, 0x4a, 0xf1, 0x33, 0x21, 0x7a, 0x91, 0xf5, 0x13, 0x59, 0xc9, 0x66, 0xe7, 0x53, 0x8e, 0x68, 0x74, 0x35, 0x78, 0x12, 0x2d, 0xf5, 0x83, 0x00, 0x02, 0xf9, 0x6f, 0x6f, 0xad, 0xb5, 0xbc, 0x44, 0x48, 0x0e, 0x3b, 0x3b, 0x2c, 0x80, 0x4e, 0x4c, 0x51, 0xcf, 0x95, 0xd0, 0x59, 0xd5, 0x64, 0x6c, 0x5c, 0xef, 0x21, 0x01, 0xba, 0x22, 0x76, 0xcc, 0x00, 0x3e, 0x87, 0xbe, 0xa3, 0x7c, 0x37, 0x24, 0xe5, 0x8a, 0x0a, 0xb8, 0x85, 0xf5, 0x6d, 0x09, 0xb8, 0xb5, 0x71, 0x8f, 0x67, 0x4f, 0x9c, 0x70, 0xf3, 0xb5, 0xec, 0xfb, 0x4a, 0xd1, 0xf3, 0x41, 0x7b, 0x42, 0x0e, 0xc4, 0x08, 0x10, 0xe0, 0x88, 0x26, 0xef, 0xa7, 0xd8, 0xad, 0x6c, 0xa7, 0xc6, 0xa7, 0x84, 0x03, 0x48, 0x09, 0x7f, 0x92, 0xb2, 0xde, 0x8d, 0x6e, 0x08, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12130 = { .name = "ecdsa_secp521r1_sha512_12130", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12130_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12130_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12130_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1375 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12131 for ECDSA, tcId is 1376 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12131_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12131_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12131_sig[] = { 0x01, 0x55, 0x97, 0x8a, 0xdc, 0x4b, 0x57, 0x0d, 0x89, 0x75, 0x11, 0xf5, 0xec, 0xfb, 0x65, 0xa3, 0x19, 0x47, 0xe6, 0xe9, 0x89, 0xda, 0x17, 0xde, 0xa7, 0x16, 0x62, 0x5b, 0xb3, 0xfa, 0x7b, 0x92, 0xb8, 0x53, 0x62, 0x3e, 0xb0, 0xcd, 0x9c, 0xe2, 0xa5, 0xe2, 0xb4, 0xd8, 0xc1, 0xc2, 0xa9, 0x0e, 0xc0, 0x4f, 0xe7, 0x9d, 0x01, 0x25, 0x76, 0xec, 0x72, 0x8a, 0x45, 0xc5, 0xce, 0x47, 0xc6, 0xd5, 0x00, 0xc0, 0x00, 0xf7, 0x9f, 0xa8, 0xb9, 0x4e, 0xe2, 0x82, 0xa3, 0xd1, 0x81, 0x58, 0x92, 0xcb, 0xf1, 0x5d, 0x7e, 0xbd, 0xf6, 0x2c, 0xb0, 0x42, 0xc7, 0x6b, 0xb3, 0xc7, 0x10, 0xc2, 0x3e, 0x32, 0xb7, 0x59, 0x92, 0xcc, 0x24, 0x9d, 0x84, 0x07, 0x21, 0x98, 0xe4, 0xed, 0x63, 0xd7, 0x24, 0x35, 0xa0, 0x7d, 0x2e, 0xd7, 0x6f, 0x27, 0x8d, 0x73, 0x99, 0xf6, 0x1a, 0x5b, 0x5c, 0x99, 0x7f, 0x45, 0x69, 0x2f, 0xed, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12131 = { .name = "ecdsa_secp521r1_sha512_12131", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12131_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12131_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12131_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1376 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12132 for ECDSA, tcId is 1377 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12132_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12132_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12132_sig[] = { 0x01, 0xa2, 0xaf, 0x29, 0xc5, 0x81, 0x84, 0xca, 0x86, 0x1e, 0x7c, 0xd9, 0x31, 0xf3, 0x9c, 0xea, 0x06, 0x4b, 0x19, 0x9e, 0xee, 0x56, 0x3f, 0x24, 0x1c, 0xd5, 0xec, 0xf6, 0xeb, 0xb2, 0xad, 0xe7, 0x28, 0xf1, 0xbe, 0x23, 0xcf, 0x00, 0x7e, 0xbe, 0x8e, 0xf0, 0xc4, 0x2d, 0x99, 0xf9, 0xf5, 0x19, 0x0f, 0x68, 0x15, 0x44, 0x6a, 0xfc, 0x30, 0x43, 0xa8, 0x20, 0xd7, 0xda, 0xf2, 0x7e, 0x86, 0xb8, 0x3b, 0x8a, 0x01, 0xa2, 0xac, 0xd1, 0x82, 0x2e, 0xb5, 0x39, 0x38, 0x3d, 0xef, 0xff, 0x87, 0x69, 0xaa, 0xd8, 0xba, 0xcd, 0x50, 0xcd, 0x24, 0xca, 0x7a, 0xa6, 0x67, 0x06, 0x71, 0x41, 0x81, 0x10, 0x17, 0x78, 0x08, 0xc3, 0xf4, 0xfb, 0xe6, 0x04, 0x1b, 0x9c, 0xb8, 0x98, 0x35, 0x9e, 0xe6, 0x1e, 0x04, 0x82, 0x4a, 0xde, 0xdd, 0x62, 0xb3, 0x9f, 0xe5, 0x79, 0x19, 0x07, 0xa2, 0x05, 0x86, 0x33, 0x3b, 0xd3, 0xc7, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12132 = { .name = "ecdsa_secp521r1_sha512_12132", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12132_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12132_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12132_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1377 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12133 for ECDSA, tcId is 1378 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12133_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12133_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12133_sig[] = { 0x0e, 0x17, 0xe8, 0x45, 0x0e, 0xa8, 0x5d, 0x20, 0x1a, 0xc1, 0x20, 0xad, 0x82, 0x19, 0xdb, 0xa6, 0x76, 0xe9, 0x37, 0xf1, 0x39, 0xeb, 0x28, 0xca, 0x3b, 0x02, 0xb7, 0xa7, 0x78, 0x39, 0x54, 0x8a, 0x47, 0xfc, 0x6f, 0x4d, 0x5d, 0xbd, 0x4f, 0xa7, 0x6b, 0x94, 0x7a, 0xb9, 0xd3, 0xfd, 0x1f, 0x42, 0x8b, 0xf3, 0xb0, 0xeb, 0xca, 0xfe, 0x85, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12133 = { .name = "ecdsa_brainpoolp224r1_sha256_12133", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12133_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12133_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12133_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1378 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12134 for ECDSA, tcId is 1379 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12134_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12134_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12134_sig[] = { 0x33, 0x1c, 0x2d, 0x45, 0x01, 0x47, 0x06, 0x6e, 0xc5, 0x4d, 0xf6, 0xdb, 0x12, 0x7e, 0x52, 0x0f, 0x53, 0xff, 0x40, 0x49, 0x46, 0x94, 0xf4, 0x0c, 0x16, 0xd6, 0x2b, 0xda, 0x17, 0xf9, 0xec, 0xad, 0x11, 0x4f, 0xac, 0x61, 0x66, 0x1f, 0xa4, 0xbe, 0x9d, 0xba, 0x6a, 0xdf, 0x36, 0x1c, 0xcd, 0x2a, 0x7c, 0xfd, 0x91, 0x41, 0x92, 0x62, 0x73, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12134 = { .name = "ecdsa_brainpoolp224r1_sha256_12134", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12134_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12134_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12134_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1379 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12135 for ECDSA, tcId is 1380 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12135_pubkey[] = { 0x80, 0x2a, 0x0f, 0x51, 0x20, 0x4e, 0xf6, 0xa8, 0x29, 0x21, 0x1b, 0xc0, 0x74, 0x08, 0x87, 0x46, 0x1e, 0xe4, 0xab, 0xa7, 0x36, 0xe9, 0xca, 0xee, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xb9, 0x31, 0xe0, 0x63, 0x00, 0x45, 0x13, 0x62, 0xd4, 0x44, 0x10, 0x6e, 0xeb, 0x5d, 0xab, 0xdd, 0xca, 0x65, 0x0f, 0xec, 0x4b, 0xe5, 0x5f, 0xc5, 0x45, 0xf7, 0xc8, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12135_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12135_sig[] = { 0x40, 0xcd, 0xcc, 0x80, 0xf9, 0x3e, 0x46, 0x9b, 0x25, 0x7c, 0xf5, 0x89, 0x05, 0x00, 0xeb, 0x6e, 0x6c, 0xb0, 0xf5, 0xf6, 0xb8, 0x1b, 0x71, 0x71, 0x59, 0xba, 0xaa, 0x43, 0x0d, 0x74, 0x87, 0x59, 0xd1, 0x41, 0xd5, 0x4d, 0x15, 0x08, 0x0b, 0xbf, 0x76, 0xdb, 0x1e, 0x9d, 0xa9, 0x34, 0xd6, 0xa4, 0x3b, 0x5d, 0xf8, 0x6f, 0xaf, 0xee, 0x9f, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12135 = { .name = "ecdsa_brainpoolp224r1_sha256_12135", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12135_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12135_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12135_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1380 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12136 for ECDSA, tcId is 1381 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12136_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12136_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12136_sig[] = { 0xbd, 0xf9, 0x33, 0xf1, 0xbd, 0x8f, 0x7f, 0x85, 0x00, 0x7b, 0x53, 0x00, 0x6c, 0xa6, 0x28, 0x68, 0x25, 0xd8, 0xcd, 0xa9, 0x93, 0xd2, 0x73, 0x2b, 0xcf, 0x7e, 0xf8, 0x21, 0x8b, 0x23, 0x3d, 0xcd, 0x04, 0xc8, 0xbf, 0xc0, 0x13, 0x5f, 0x77, 0xf0, 0x92, 0xc4, 0x0e, 0x5a, 0x3d, 0x37, 0x26, 0x63, 0xcd, 0x27, 0x04, 0x67, 0xce, 0xc7, 0x86, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12136 = { .name = "ecdsa_brainpoolp224r1_sha256_12136", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12136_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12136_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12136_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1381 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12137 for ECDSA, tcId is 1382 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12137_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12137_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12137_sig[] = { 0xa1, 0x30, 0x28, 0x1e, 0x17, 0xa3, 0xbe, 0xbb, 0xbf, 0x80, 0x7d, 0x82, 0xa1, 0x7e, 0xe8, 0x48, 0x1a, 0xe3, 0x55, 0xd9, 0x79, 0x86, 0x06, 0x6e, 0xbc, 0x23, 0xa9, 0xd2, 0x57, 0x96, 0x7b, 0x89, 0x75, 0x05, 0xd7, 0x83, 0x39, 0x16, 0x96, 0x8b, 0x24, 0xd3, 0xf4, 0xa4, 0xd7, 0x58, 0x81, 0xb5, 0x30, 0x72, 0x5d, 0x28, 0xec, 0xe7, 0x85, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12137 = { .name = "ecdsa_brainpoolp224r1_sha256_12137", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12137_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12137_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12137_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1382 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12138 for ECDSA, tcId is 1383 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12138_pubkey[] = { 0xcb, 0x32, 0x0c, 0x84, 0xf2, 0x6c, 0x00, 0xa1, 0xb4, 0xad, 0x71, 0x46, 0x91, 0x4c, 0xae, 0x12, 0x65, 0x29, 0x16, 0x5d, 0xe7, 0x36, 0x3d, 0x8a, 0xef, 0x9a, 0xbd, 0x05, 0xa3, 0x97, 0xd4, 0x6b, 0x87, 0x28, 0x31, 0x76, 0xb7, 0xf6, 0x9d, 0xa1, 0xf9, 0x46, 0x15, 0xca, 0x44, 0x31, 0xfc, 0x47, 0xb2, 0xa0, 0xe6, 0x0c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12138_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12138_sig[] = { 0x71, 0x15, 0x67, 0x40, 0x8f, 0x75, 0x92, 0xb1, 0xe0, 0x9b, 0x87, 0xc6, 0xbf, 0xd2, 0x0d, 0xff, 0x2f, 0xa5, 0x06, 0x63, 0xad, 0x4d, 0xd0, 0xff, 0x86, 0x35, 0x3f, 0x5d, 0x60, 0xc1, 0x83, 0xff, 0x24, 0x9e, 0x79, 0x25, 0x8c, 0x8e, 0x95, 0xe5, 0x9d, 0x13, 0xea, 0xd6, 0xdb, 0x5c, 0xcf, 0xcb, 0x70, 0xc0, 0xea, 0x05, 0x43, 0x3f, 0xd8, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12138 = { .name = "ecdsa_brainpoolp224r1_sha256_12138", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12138_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12138_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12138_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1383 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12139 for ECDSA, tcId is 1384 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12139_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12139_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12139_sig[] = { 0x14, 0x1a, 0xa4, 0x23, 0xae, 0x36, 0x8d, 0x00, 0xef, 0xcd, 0xc9, 0xa3, 0xa6, 0x11, 0x02, 0x88, 0x8a, 0x2f, 0x34, 0x57, 0xd2, 0x1f, 0x1c, 0xeb, 0x15, 0xa6, 0x46, 0xd0, 0x2c, 0xf9, 0x18, 0x5b, 0x02, 0x54, 0x34, 0xb8, 0x07, 0xfe, 0xc8, 0x6c, 0x2d, 0xee, 0x08, 0x78, 0x27, 0xfe, 0x3a, 0x07, 0xb1, 0x74, 0xed, 0xdb, 0xe0, 0xb3, 0xfc, 0x63, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12139 = { .name = "ecdsa_brainpoolp224r1_sha256_12139", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12139_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12139_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12139_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1384 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12140 for ECDSA, tcId is 1385 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12140_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12140_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12140_sig[] = { 0x07, 0x14, 0xc3, 0x99, 0x72, 0x83, 0x56, 0x20, 0xb5, 0xf1, 0x95, 0x2e, 0x87, 0x92, 0xbc, 0x29, 0x33, 0xe9, 0xfd, 0xa4, 0x0c, 0x1c, 0x48, 0x47, 0x2b, 0xb9, 0x3f, 0xeb, 0xd3, 0x0c, 0x57, 0x07, 0x77, 0xaf, 0xfb, 0x34, 0xaa, 0x4d, 0x25, 0x06, 0xbd, 0x0a, 0xe9, 0xe4, 0x24, 0x53, 0x98, 0xfc, 0x3a, 0x5d, 0x79, 0xd8, 0xe4, 0x68, 0x1b, 0x37, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12140 = { .name = "ecdsa_brainpoolp224r1_sha256_12140", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12140_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12140_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12140_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1385 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12141 for ECDSA, tcId is 1386 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12141_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x81, 0xdf, 0x97, 0x17, 0x44, 0xa2, 0x5a, 0xc9, 0x94, 0x72, 0xc3, 0xff, 0x5a, 0x8f, 0xc4, 0x9b, 0x86, 0xfc, 0x9f, 0xb5, 0x70, 0x44, 0x8f, 0xf9, 0x77, 0xf2, 0xd0, 0x7c, 0x1c, 0x92, 0x96, 0xb2, 0xf7, 0x74, 0x78, 0xd1, 0x3d, 0x5a, 0xb1, 0xc6, 0x39, 0x93, 0x96, 0x2f, 0x2d, 0xd0, 0x8e, 0xe7, 0xc3, 0x13, 0xde, 0xce, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12141_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12141_sig[] = { 0x88, 0x08, 0x9c, 0xd1, 0x63, 0x81, 0xba, 0x75, 0xb1, 0xbb, 0x83, 0x00, 0x53, 0x20, 0x29, 0x70, 0xeb, 0xdf, 0x4a, 0x32, 0x22, 0x83, 0x13, 0x78, 0xd9, 0x78, 0x47, 0x13, 0x3b, 0xce, 0xf1, 0xa5, 0xe7, 0x0e, 0xee, 0x13, 0xab, 0xac, 0x90, 0xb9, 0x5b, 0x76, 0x4c, 0xf3, 0x44, 0xcc, 0xc9, 0xc0, 0xb4, 0x70, 0x3f, 0x7b, 0xe6, 0x02, 0x92, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12141 = { .name = "ecdsa_brainpoolp224r1_sha256_12141", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12141_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12141_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12141_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1386 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12142 for ECDSA, tcId is 1387 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12142_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12142_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12142_sig[] = { 0x6e, 0x53, 0x44, 0xdd, 0x44, 0x52, 0xd3, 0x7d, 0xff, 0x3d, 0x46, 0x17, 0x7d, 0x56, 0xd3, 0xdd, 0x7f, 0x3f, 0xaa, 0x63, 0xac, 0x0f, 0xf0, 0xf4, 0xfa, 0x39, 0x96, 0xd7, 0xd3, 0x80, 0xdf, 0x75, 0x7a, 0x61, 0x6d, 0x6c, 0x20, 0x9a, 0x59, 0x0d, 0xbb, 0xeb, 0xa1, 0xdd, 0x2b, 0xf7, 0x5d, 0x17, 0xe4, 0x98, 0x41, 0xa6, 0xf7, 0xa7, 0xac, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12142 = { .name = "ecdsa_brainpoolp224r1_sha256_12142", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12142_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12142_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12142_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1387 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12143 for ECDSA, tcId is 1388 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12143_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12143_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12143_sig[] = { 0xc8, 0x5b, 0x98, 0x0f, 0xa4, 0x14, 0x9d, 0x9a, 0xc4, 0x18, 0x09, 0x0c, 0x9e, 0xda, 0x87, 0x54, 0xd1, 0xea, 0x52, 0x28, 0xfb, 0xe0, 0x4a, 0x91, 0x81, 0x57, 0x87, 0x9f, 0x4f, 0x84, 0x8f, 0xb8, 0x7e, 0x18, 0x86, 0x14, 0xad, 0x92, 0xb4, 0xe0, 0xbd, 0xdf, 0xae, 0xad, 0xe1, 0xd7, 0xd1, 0x9d, 0xa6, 0xa2, 0x49, 0xe4, 0xcb, 0xd7, 0x33, 0x58, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12143 = { .name = "ecdsa_brainpoolp224r1_sha256_12143", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12143_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12143_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12143_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1388 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12144 for ECDSA, tcId is 1389 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12144_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x28, 0x01, 0xd4, 0x83, 0x82, 0x86, 0x16, 0x84, 0xb8, 0xd2, 0xcb, 0xd7, 0xe5, 0x98, 0x9a, 0x0d, 0x7c, 0x15, 0xa7, 0xe8, 0x19, 0xb5, 0x73, 0xaa, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12144_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12144_sig[] = { 0xb0, 0x29, 0x36, 0x69, 0x2b, 0x3e, 0x66, 0x25, 0x08, 0x89, 0x6e, 0x95, 0x6f, 0xec, 0x67, 0x73, 0x3a, 0x54, 0x36, 0xa4, 0x0f, 0xc9, 0xb7, 0xa8, 0x96, 0xf4, 0x4c, 0x8e, 0x04, 0xb8, 0xde, 0xa8, 0xfe, 0x15, 0x93, 0xaa, 0x70, 0x3d, 0xcd, 0xe9, 0xc3, 0xa9, 0xe8, 0xbd, 0x8a, 0x1b, 0xd6, 0xe0, 0x66, 0x31, 0xd2, 0x73, 0xaa, 0x8b, 0xd9, 0x78, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12144 = { .name = "ecdsa_brainpoolp224r1_sha256_12144", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12144_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12144_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12144_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1389 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12145 for ECDSA, tcId is 1390 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12145_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12145_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12145_sig[] = { 0x97, 0x50, 0xa3, 0x10, 0x31, 0x1b, 0x38, 0x3b, 0x1e, 0x9c, 0x36, 0xc6, 0x30, 0x03, 0x74, 0x82, 0x61, 0x46, 0x0b, 0x52, 0x23, 0x3f, 0x87, 0x1a, 0x8d, 0x0d, 0x0e, 0x87, 0x4c, 0xab, 0x79, 0xd9, 0xbb, 0xf0, 0xc5, 0x70, 0xe3, 0x0a, 0x23, 0x83, 0x40, 0x5b, 0x4e, 0xcb, 0xec, 0x86, 0x08, 0xdd, 0xe1, 0xd2, 0x4b, 0x37, 0x30, 0xb8, 0x78, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12145 = { .name = "ecdsa_brainpoolp224r1_sha256_12145", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12145_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12145_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12145_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1390 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12146 for ECDSA, tcId is 1391 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12146_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12146_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12146_sig[] = { 0x56, 0x0e, 0x0b, 0xe6, 0x13, 0xfb, 0x22, 0x84, 0x2c, 0x6c, 0x23, 0xcc, 0x57, 0x10, 0x58, 0x14, 0x11, 0x12, 0xdc, 0x35, 0x49, 0x7e, 0x54, 0x24, 0x1f, 0x39, 0x8c, 0xc9, 0x00, 0x9d, 0xc8, 0x6d, 0x2c, 0x7f, 0x08, 0x61, 0x31, 0x3d, 0x49, 0x37, 0x93, 0x35, 0xb2, 0xed, 0x1c, 0x06, 0xa1, 0x70, 0x9e, 0xdd, 0xca, 0x03, 0x26, 0xf7, 0x6a, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12146 = { .name = "ecdsa_brainpoolp224r1_sha256_12146", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12146_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12146_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12146_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1391 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12147 for ECDSA, tcId is 1392 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12147_pubkey[] = { 0x0d, 0x28, 0xb4, 0xf7, 0xfe, 0x1f, 0x6c, 0x6f, 0xa6, 0xa7, 0x7d, 0x11, 0xe4, 0x3b, 0xd3, 0xe9, 0x27, 0x17, 0x58, 0xdf, 0x34, 0xc6, 0x5f, 0xa5, 0x77, 0xa6, 0xdd, 0x3b, 0xd7, 0xc1, 0x34, 0xa9, 0xfe, 0x41, 0x92, 0x02, 0xa7, 0x92, 0x19, 0xa0, 0xbc, 0xff, 0x0b, 0xaf, 0xcb, 0x06, 0x6d, 0x4a, 0x1b, 0xc4, 0xe2, 0x0d, 0x65, 0x13, 0x4d, 0x55, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12147_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12147_sig[] = { 0xa5, 0xc9, 0x95, 0xfc, 0x1f, 0xb0, 0xa9, 0x13, 0xf2, 0xbb, 0x5d, 0xb5, 0x5d, 0x40, 0xbc, 0x84, 0x6b, 0x78, 0xf3, 0x2e, 0xb7, 0x7c, 0xe8, 0x03, 0x7b, 0x1e, 0x60, 0x86, 0xb0, 0xbc, 0x91, 0x6e, 0xcf, 0xfd, 0xeb, 0x81, 0x2f, 0x0b, 0xb1, 0x6d, 0x02, 0x36, 0xd5, 0xfe, 0x77, 0xd8, 0x55, 0xba, 0x47, 0x00, 0x9c, 0x92, 0x15, 0x81, 0xeb, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12147 = { .name = "ecdsa_brainpoolp224r1_sha256_12147", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12147_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12147_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12147_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1392 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12148 for ECDSA, tcId is 1393 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12148_pubkey[] = { 0xd3, 0x31, 0x5e, 0xdb, 0x49, 0x8c, 0xda, 0xe7, 0xe1, 0x05, 0xfb, 0x1c, 0xb9, 0xcf, 0xb1, 0xc8, 0xb7, 0x36, 0xa8, 0x31, 0xe0, 0xbe, 0xf4, 0x7b, 0xe3, 0xc1, 0x53, 0x11, 0xb5, 0x13, 0xd2, 0xbf, 0x16, 0x9a, 0x57, 0x06, 0x07, 0xf9, 0xdc, 0xb8, 0x09, 0xa5, 0x38, 0x40, 0xef, 0x6e, 0x90, 0x7a, 0x7f, 0xe9, 0x0e, 0xe3, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12148_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12148_sig[] = { 0x77, 0xcd, 0x4c, 0x6e, 0x49, 0x07, 0xe6, 0x45, 0x02, 0x8f, 0xd9, 0xab, 0x47, 0xf3, 0x5f, 0x3e, 0x4d, 0xea, 0xc6, 0x2a, 0xb5, 0x62, 0x3e, 0x4c, 0xaa, 0x5f, 0x22, 0xca, 0x4d, 0xfb, 0x99, 0xd0, 0xda, 0x46, 0xd5, 0x20, 0x68, 0x7e, 0x3a, 0xd4, 0xea, 0xc2, 0x38, 0x36, 0x64, 0xa7, 0xbb, 0xc9, 0x24, 0x9f, 0xaa, 0xef, 0x6a, 0xf5, 0xd0, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12148 = { .name = "ecdsa_brainpoolp224t1_sha256_12148", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12148_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12148_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12148_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1393 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12149 for ECDSA, tcId is 1394 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12149_pubkey[] = { 0xd3, 0x31, 0x5e, 0xdb, 0x49, 0x8c, 0xda, 0xe7, 0xe1, 0x05, 0xfb, 0x1c, 0xb9, 0xcf, 0xb1, 0xc8, 0xb7, 0x36, 0xa8, 0x31, 0xe0, 0xbe, 0xf4, 0x7b, 0xe3, 0xc1, 0x53, 0x11, 0xb5, 0x13, 0xd2, 0xbf, 0x16, 0x9a, 0x57, 0x06, 0x07, 0xf9, 0xdc, 0xb8, 0x09, 0xa5, 0x38, 0x40, 0xef, 0x6e, 0x90, 0x7a, 0x7f, 0xe9, 0x0e, 0xe3, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12149_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12149_sig[] = { 0x27, 0x0c, 0x9c, 0x43, 0xad, 0xe9, 0xdc, 0x6c, 0xf5, 0x38, 0x53, 0xd7, 0xb5, 0x44, 0xdb, 0x44, 0xaa, 0x43, 0x29, 0x1d, 0x20, 0xf8, 0x67, 0x4c, 0xf4, 0xd2, 0xcf, 0xab, 0x2f, 0x6d, 0x5d, 0x4d, 0xb3, 0x2b, 0x2f, 0x54, 0x79, 0x23, 0xbb, 0xdb, 0x9d, 0x7a, 0x79, 0x04, 0x4a, 0x2b, 0x02, 0x14, 0x9b, 0xa8, 0xa4, 0x09, 0x91, 0x4d, 0xdf, 0x77, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12149 = { .name = "ecdsa_brainpoolp224t1_sha256_12149", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12149_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12149_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12149_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1394 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12150 for ECDSA, tcId is 1395 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12150_pubkey[] = { 0xd3, 0x31, 0x5e, 0xdb, 0x49, 0x8c, 0xda, 0xe7, 0xe1, 0x05, 0xfb, 0x1c, 0xb9, 0xcf, 0xb1, 0xc8, 0xb7, 0x36, 0xa8, 0x31, 0xe0, 0xbe, 0xf4, 0x7b, 0xe3, 0xc1, 0x53, 0x11, 0xb5, 0x13, 0xd2, 0xbf, 0x16, 0x9a, 0x57, 0x06, 0x07, 0xf9, 0xdc, 0xb8, 0x09, 0xa5, 0x38, 0x40, 0xef, 0x6e, 0x90, 0x7a, 0x7f, 0xe9, 0x0e, 0xe3, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12150_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12150_sig[] = { 0x21, 0x8a, 0x41, 0x44, 0x4e, 0x6a, 0x08, 0xde, 0x3a, 0x15, 0xdd, 0x81, 0xde, 0xb2, 0xf0, 0x90, 0x99, 0x89, 0x92, 0x6e, 0x91, 0x9c, 0x6b, 0x39, 0x42, 0x2a, 0x07, 0xb9, 0xbf, 0xf7, 0x43, 0x59, 0x53, 0x22, 0xd6, 0x52, 0xda, 0x67, 0x3b, 0xbb, 0x78, 0x42, 0x81, 0x50, 0xd2, 0xaa, 0xa2, 0x45, 0xc4, 0xec, 0xc0, 0x8d, 0x58, 0x35, 0x0b, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12150 = { .name = "ecdsa_brainpoolp224t1_sha256_12150", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12150_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12150_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12150_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1395 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12151 for ECDSA, tcId is 1396 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12151_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xad, 0x05, 0x61, 0xf7, 0x8a, 0xe4, 0x93, 0x17, 0x52, 0xdc, 0xac, 0x12, 0x97, 0x56, 0xe9, 0x05, 0x7a, 0x5f, 0xd6, 0xee, 0x31, 0xa2, 0x80, 0x29, 0x3c, 0xe1, 0x51, 0x5a, 0xe1, 0x56, 0x94, 0xf8, 0xbd, 0x2e, 0xfa, 0x26, 0xf5, 0xfb, 0x5e, 0x10, 0xb3, 0x8c, 0x39, 0x3d, 0x53, 0x9d, 0x25, 0xad, 0x31, 0x52, 0xfe, 0x94, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12151_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12151_sig[] = { 0x24, 0x0c, 0x5b, 0x13, 0x71, 0xb9, 0xb4, 0x5c, 0xc7, 0x2a, 0xe3, 0x2e, 0xf9, 0xdc, 0xa6, 0x03, 0xd9, 0x26, 0x44, 0xbc, 0x33, 0xc8, 0x8a, 0xf5, 0x49, 0x4c, 0x45, 0x68, 0x22, 0x56, 0x48, 0xb2, 0x15, 0x4e, 0x0b, 0x38, 0x34, 0xa4, 0x26, 0xb3, 0xc0, 0xf3, 0xc6, 0x8a, 0xfd, 0x35, 0x67, 0x15, 0x67, 0x06, 0x64, 0xb4, 0xbc, 0xeb, 0xd4, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12151 = { .name = "ecdsa_brainpoolp224t1_sha256_12151", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12151_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12151_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12151_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1396 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12152 for ECDSA, tcId is 1397 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12152_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xad, 0x05, 0x61, 0xf7, 0x8a, 0xe4, 0x93, 0x17, 0x52, 0xdc, 0xac, 0x12, 0x97, 0x56, 0xe9, 0x05, 0x7a, 0x5f, 0xd6, 0xee, 0x31, 0xa2, 0x80, 0x29, 0x3c, 0xe1, 0x51, 0x5a, 0xe1, 0x56, 0x94, 0xf8, 0xbd, 0x2e, 0xfa, 0x26, 0xf5, 0xfb, 0x5e, 0x10, 0xb3, 0x8c, 0x39, 0x3d, 0x53, 0x9d, 0x25, 0xad, 0x31, 0x52, 0xfe, 0x94, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12152_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12152_sig[] = { 0xb5, 0x85, 0xad, 0x9b, 0x16, 0xd2, 0x99, 0x9b, 0xad, 0x8a, 0xe0, 0xc0, 0x8e, 0x49, 0xd6, 0xf1, 0xaa, 0xb3, 0x28, 0x7f, 0x4c, 0x5a, 0x9c, 0xcb, 0x0c, 0xa7, 0x5c, 0x19, 0x6b, 0x6c, 0xca, 0x5d, 0x87, 0x5b, 0xf4, 0x75, 0xb5, 0x66, 0x69, 0xb4, 0xbf, 0xf4, 0x7d, 0xdd, 0xb6, 0xae, 0x9d, 0xd0, 0xc2, 0x9d, 0x8f, 0x5b, 0xb3, 0x80, 0x6e, 0xce, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12152 = { .name = "ecdsa_brainpoolp224t1_sha256_12152", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12152_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12152_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12152_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1397 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12153 for ECDSA, tcId is 1398 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12153_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xad, 0x05, 0x61, 0xf7, 0x8a, 0xe4, 0x93, 0x17, 0x52, 0xdc, 0xac, 0x12, 0x97, 0x56, 0xe9, 0x05, 0x7a, 0x5f, 0xd6, 0xee, 0x31, 0xa2, 0x80, 0x29, 0x3c, 0xe1, 0x51, 0x5a, 0xe1, 0x56, 0x94, 0xf8, 0xbd, 0x2e, 0xfa, 0x26, 0xf5, 0xfb, 0x5e, 0x10, 0xb3, 0x8c, 0x39, 0x3d, 0x53, 0x9d, 0x25, 0xad, 0x31, 0x52, 0xfe, 0x94, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12153_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12153_sig[] = { 0x5c, 0x9b, 0x68, 0x72, 0x55, 0x3e, 0xd6, 0xbf, 0x23, 0xec, 0x5f, 0xcc, 0x5a, 0xc1, 0xf6, 0xcf, 0x49, 0xa3, 0x0e, 0x93, 0xa2, 0x75, 0x55, 0x66, 0x34, 0xe7, 0xcd, 0x44, 0x68, 0x7e, 0x3a, 0x53, 0x6c, 0x67, 0x32, 0x5a, 0x97, 0xb4, 0x6d, 0xb2, 0x4d, 0x55, 0x74, 0x69, 0xb0, 0xdc, 0x38, 0xe0, 0x57, 0x4a, 0x5b, 0xd4, 0xaa, 0xe8, 0xf9, 0x76, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12153 = { .name = "ecdsa_brainpoolp224t1_sha256_12153", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12153_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12153_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12153_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1398 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12154 for ECDSA, tcId is 1399 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12154_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x84, 0xa1, 0xd4, 0x72, 0x39, 0xd5, 0x9c, 0x46, 0xdf, 0x70, 0x26, 0x5c, 0x8f, 0x72, 0x8d, 0x4a, 0x6d, 0xc9, 0x8c, 0x9b, 0x12, 0x37, 0xdc, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12154_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12154_sig[] = { 0x94, 0xb8, 0x28, 0xb3, 0x60, 0x83, 0x4e, 0x98, 0xf3, 0x48, 0xd0, 0xe2, 0x08, 0x4f, 0x39, 0xb6, 0x37, 0x5a, 0x7f, 0xb3, 0x1a, 0xc2, 0xc1, 0x6a, 0x78, 0xd5, 0xc1, 0x23, 0x2e, 0x6b, 0x66, 0x86, 0xd1, 0xb5, 0x82, 0xe1, 0x65, 0xbe, 0x1b, 0xfd, 0xa1, 0xb3, 0x5c, 0xa1, 0x68, 0x39, 0xf3, 0x12, 0xfa, 0x74, 0x25, 0x2b, 0xa7, 0xf4, 0x2e, 0x2d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12154 = { .name = "ecdsa_brainpoolp224t1_sha256_12154", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12154_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12154_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12154_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1399 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12155 for ECDSA, tcId is 1400 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12155_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x84, 0xa1, 0xd4, 0x72, 0x39, 0xd5, 0x9c, 0x46, 0xdf, 0x70, 0x26, 0x5c, 0x8f, 0x72, 0x8d, 0x4a, 0x6d, 0xc9, 0x8c, 0x9b, 0x12, 0x37, 0xdc, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12155_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12155_sig[] = { 0x69, 0xc0, 0xf7, 0x2f, 0x53, 0x08, 0xef, 0x41, 0xda, 0xd0, 0xe2, 0xea, 0x4d, 0xbd, 0x3a, 0xf9, 0x78, 0xa8, 0x01, 0x86, 0xad, 0xed, 0x8f, 0x33, 0xc1, 0xfa, 0x1c, 0x7e, 0x22, 0xba, 0x73, 0xe2, 0x0b, 0xaa, 0xa6, 0x97, 0xc6, 0x7d, 0xe7, 0x3c, 0x89, 0x75, 0x27, 0x05, 0xaa, 0x3f, 0x3a, 0xcd, 0xaf, 0x02, 0x7d, 0x7e, 0xf2, 0x16, 0xe3, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12155 = { .name = "ecdsa_brainpoolp224t1_sha256_12155", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12155_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12155_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12155_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1400 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12156 for ECDSA, tcId is 1401 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12156_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x84, 0xa1, 0xd4, 0x72, 0x39, 0xd5, 0x9c, 0x46, 0xdf, 0x70, 0x26, 0x5c, 0x8f, 0x72, 0x8d, 0x4a, 0x6d, 0xc9, 0x8c, 0x9b, 0x12, 0x37, 0xdc, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12156_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12156_sig[] = { 0xa5, 0xa0, 0x26, 0x04, 0xd4, 0xed, 0xff, 0x15, 0x6c, 0x42, 0x61, 0x93, 0x95, 0xa4, 0x13, 0x04, 0x44, 0x0e, 0x37, 0x5e, 0x94, 0x31, 0x4a, 0x48, 0x2e, 0xe5, 0x2e, 0xf8, 0x1a, 0x5f, 0x88, 0xc1, 0xc7, 0x08, 0xe7, 0xcf, 0x26, 0x97, 0xf5, 0x74, 0xc1, 0xed, 0xcb, 0x5e, 0x68, 0xdd, 0x6a, 0x25, 0x19, 0x9b, 0xe4, 0x0d, 0x19, 0x08, 0x60, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12156 = { .name = "ecdsa_brainpoolp224t1_sha256_12156", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12156_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12156_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12156_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1401 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12157 for ECDSA, tcId is 1402 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12157_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0xd7, 0xc1, 0x34, 0xaa, 0x1b, 0xbe, 0xc4, 0xb1, 0xb7, 0xde, 0x5a, 0x89, 0x2e, 0xf2, 0x67, 0x61, 0x54, 0x0f, 0x94, 0xca, 0x4d, 0x6c, 0xc0, 0x68, 0xe3, 0xb6, 0x89, 0x23, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12157_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12157_sig[] = { 0x58, 0xc9, 0x48, 0x46, 0x28, 0xa0, 0x64, 0xa0, 0xc0, 0x70, 0x8b, 0x8c, 0xc9, 0xcc, 0x66, 0xc8, 0x6c, 0x46, 0x92, 0x28, 0x68, 0x4e, 0xd9, 0xdd, 0xcf, 0xd8, 0x4f, 0x60, 0xc6, 0x76, 0xba, 0x67, 0x9f, 0xba, 0x5b, 0x70, 0xdc, 0x50, 0x2b, 0x30, 0x7c, 0x44, 0xc7, 0x39, 0x94, 0xb2, 0x21, 0x50, 0x25, 0x65, 0x4b, 0xee, 0xa0, 0x0e, 0xdf, 0x86, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12157 = { .name = "ecdsa_brainpoolp224t1_sha256_12157", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12157_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12157_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12157_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1402 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12158 for ECDSA, tcId is 1403 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12158_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0xd7, 0xc1, 0x34, 0xaa, 0x1b, 0xbe, 0xc4, 0xb1, 0xb7, 0xde, 0x5a, 0x89, 0x2e, 0xf2, 0x67, 0x61, 0x54, 0x0f, 0x94, 0xca, 0x4d, 0x6c, 0xc0, 0x68, 0xe3, 0xb6, 0x89, 0x23, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12158_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12158_sig[] = { 0xd4, 0x92, 0x7d, 0xee, 0xdb, 0x36, 0x41, 0x6f, 0xf8, 0x12, 0xc9, 0x95, 0x14, 0x7f, 0x90, 0x6a, 0x3c, 0x25, 0xf1, 0xfa, 0x69, 0x31, 0xc7, 0xaa, 0xc5, 0x99, 0x36, 0x33, 0x95, 0x1b, 0xe2, 0x96, 0xab, 0x7f, 0xe9, 0x5e, 0xc7, 0xf3, 0xd0, 0xa4, 0x27, 0x7a, 0xe2, 0xb4, 0x5c, 0x27, 0x36, 0xb5, 0x6d, 0xdd, 0x04, 0x1c, 0x07, 0xc7, 0xbf, 0x6a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12158 = { .name = "ecdsa_brainpoolp224t1_sha256_12158", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12158_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12158_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12158_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1403 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12159 for ECDSA, tcId is 1404 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12159_pubkey[] = { 0x67, 0xa0, 0x97, 0x0c, 0x72, 0xa1, 0x5b, 0x2b, 0xf8, 0x30, 0xed, 0xe4, 0x50, 0xf7, 0x2d, 0x29, 0xf7, 0xe2, 0x4e, 0x30, 0x79, 0x33, 0xe3, 0x9f, 0xe3, 0x7a, 0x62, 0x69, 0xd7, 0xc1, 0x34, 0xaa, 0x1b, 0xbe, 0xc4, 0xb1, 0xb7, 0xde, 0x5a, 0x89, 0x2e, 0xf2, 0x67, 0x61, 0x54, 0x0f, 0x94, 0xca, 0x4d, 0x6c, 0xc0, 0x68, 0xe3, 0xb6, 0x89, 0x23, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12159_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12159_sig[] = { 0x91, 0xd9, 0xe0, 0x1b, 0x7d, 0x85, 0x7d, 0x6d, 0xc1, 0xc7, 0x95, 0xe3, 0x63, 0xa5, 0xdb, 0x9e, 0x8a, 0xce, 0xb3, 0x6a, 0x71, 0xf3, 0xcc, 0xc5, 0x00, 0xe3, 0x20, 0x0b, 0xd1, 0x24, 0x26, 0x57, 0x1c, 0xd8, 0xe7, 0x76, 0x4b, 0x68, 0x2c, 0xb6, 0x5b, 0x9e, 0x0f, 0xed, 0x3a, 0xec, 0x3e, 0x22, 0x4e, 0xd8, 0x9f, 0x45, 0x61, 0x0b, 0xf9, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12159 = { .name = "ecdsa_brainpoolp224t1_sha256_12159", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12159_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12159_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12159_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1404 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12160 for ECDSA, tcId is 1405 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12160_pubkey[] = { 0x0e, 0x3b, 0x99, 0x30, 0xf8, 0x31, 0x28, 0x44, 0x4f, 0x91, 0xcb, 0x99, 0xda, 0xd7, 0xad, 0x08, 0xeb, 0xda, 0x67, 0x51, 0x24, 0x9f, 0xf4, 0x80, 0xb4, 0xf8, 0xc9, 0x9b, 0xa8, 0x7a, 0xb3, 0x19, 0x03, 0x5e, 0x38, 0x82, 0x8b, 0xed, 0xfd, 0x8b, 0x88, 0x64, 0x8c, 0x50, 0x9a, 0x93, 0xa2, 0xc9, 0x08, 0x93, 0x66, 0x7b, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12160_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12160_sig[] = { 0x60, 0xe4, 0x9a, 0xda, 0xdc, 0x25, 0x3a, 0x80, 0xc8, 0x98, 0xa6, 0xe5, 0xbb, 0x60, 0x72, 0x9f, 0x8a, 0x49, 0x3c, 0x69, 0xca, 0x76, 0x2f, 0x5f, 0x91, 0x4b, 0xb0, 0x95, 0xa9, 0x76, 0x7c, 0x5a, 0xcf, 0x98, 0xc0, 0x48, 0x6d, 0xcb, 0xdc, 0x8d, 0x89, 0x34, 0x06, 0x83, 0x3e, 0xd3, 0xd7, 0x51, 0x2b, 0x90, 0xb3, 0xdc, 0x8c, 0x86, 0xe0, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12160 = { .name = "ecdsa_brainpoolp224t1_sha256_12160", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12160_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12160_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12160_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1405 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12161 for ECDSA, tcId is 1406 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12161_pubkey[] = { 0x0e, 0x3b, 0x99, 0x30, 0xf8, 0x31, 0x28, 0x44, 0x4f, 0x91, 0xcb, 0x99, 0xda, 0xd7, 0xad, 0x08, 0xeb, 0xda, 0x67, 0x51, 0x24, 0x9f, 0xf4, 0x80, 0xb4, 0xf8, 0xc9, 0x9b, 0xa8, 0x7a, 0xb3, 0x19, 0x03, 0x5e, 0x38, 0x82, 0x8b, 0xed, 0xfd, 0x8b, 0x88, 0x64, 0x8c, 0x50, 0x9a, 0x93, 0xa2, 0xc9, 0x08, 0x93, 0x66, 0x7b, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12161_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12161_sig[] = { 0x3b, 0x80, 0x2b, 0xc2, 0x6f, 0xbf, 0x0a, 0x1a, 0xc2, 0x47, 0x16, 0x22, 0x72, 0x13, 0x00, 0xe4, 0xb6, 0xb6, 0x60, 0x86, 0x83, 0xdc, 0x53, 0xc1, 0x69, 0x5b, 0xbb, 0x49, 0xa4, 0x84, 0xc4, 0xc4, 0x0c, 0x1c, 0xd9, 0x6c, 0x72, 0xbb, 0x59, 0x19, 0x3c, 0x40, 0x8f, 0x36, 0xae, 0x7d, 0xb5, 0x7b, 0x0b, 0x70, 0x19, 0xb8, 0x34, 0x12, 0xf5, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12161 = { .name = "ecdsa_brainpoolp224t1_sha256_12161", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12161_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12161_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12161_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1406 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12162 for ECDSA, tcId is 1407 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12162_pubkey[] = { 0x0e, 0x3b, 0x99, 0x30, 0xf8, 0x31, 0x28, 0x44, 0x4f, 0x91, 0xcb, 0x99, 0xda, 0xd7, 0xad, 0x08, 0xeb, 0xda, 0x67, 0x51, 0x24, 0x9f, 0xf4, 0x80, 0xb4, 0xf8, 0xc9, 0x9b, 0xa8, 0x7a, 0xb3, 0x19, 0x03, 0x5e, 0x38, 0x82, 0x8b, 0xed, 0xfd, 0x8b, 0x88, 0x64, 0x8c, 0x50, 0x9a, 0x93, 0xa2, 0xc9, 0x08, 0x93, 0x66, 0x7b, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12162_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12162_sig[] = { 0xbb, 0x43, 0x33, 0x67, 0x7b, 0xbd, 0x77, 0x4d, 0xa3, 0x04, 0x46, 0xa4, 0x5c, 0xb4, 0x45, 0x7e, 0xbb, 0xf3, 0x48, 0xfd, 0x79, 0xa0, 0x57, 0x0e, 0x94, 0x35, 0x3d, 0xf5, 0x03, 0xae, 0xe9, 0xfb, 0x72, 0xe2, 0x83, 0xd6, 0xff, 0x27, 0x21, 0x79, 0x66, 0x96, 0xe7, 0xd7, 0xe7, 0x44, 0xe9, 0x12, 0x84, 0x11, 0x51, 0x9a, 0x31, 0xa0, 0xaa, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12162 = { .name = "ecdsa_brainpoolp224t1_sha256_12162", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12162_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12162_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12162_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1407 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12163 for ECDSA, tcId is 1408 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12163_pubkey[] = { 0xd6, 0x93, 0x91, 0x70, 0xda, 0x64, 0x17, 0x74, 0x3d, 0xd9, 0x05, 0x17, 0xb6, 0xb5, 0xa2, 0x49, 0xd8, 0x17, 0x6c, 0xdc, 0x05, 0x43, 0x95, 0xa5, 0xff, 0xff, 0xff, 0xff, 0x40, 0xd1, 0xf2, 0x4a, 0x91, 0x03, 0xe2, 0x87, 0xcf, 0xf1, 0xcd, 0x33, 0xc8, 0x41, 0xa8, 0xf5, 0xac, 0x64, 0x44, 0x1a, 0xdb, 0x60, 0xe5, 0xaa, 0x55, 0xcb, 0xf4, 0xa2, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12163_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12163_sig[] = { 0x5b, 0x09, 0x60, 0xbf, 0x9b, 0x80, 0xe9, 0x1d, 0xca, 0x65, 0xe5, 0x58, 0xad, 0xf2, 0x71, 0xf1, 0x6b, 0x23, 0xe8, 0x7b, 0xcc, 0x6c, 0x51, 0xef, 0x10, 0xce, 0x93, 0x52, 0x8f, 0x84, 0xa7, 0xc3, 0x12, 0xb2, 0x1c, 0x95, 0x9c, 0x6c, 0xf7, 0xef, 0xbf, 0xd8, 0xfe, 0xb7, 0x17, 0x4f, 0xf6, 0x40, 0x1a, 0x85, 0xe1, 0x7b, 0xa6, 0x12, 0x1e, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12163 = { .name = "ecdsa_brainpoolp224t1_sha256_12163", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12163_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12163_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12163_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1408 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12164 for ECDSA, tcId is 1409 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12164_pubkey[] = { 0xd6, 0x93, 0x91, 0x70, 0xda, 0x64, 0x17, 0x74, 0x3d, 0xd9, 0x05, 0x17, 0xb6, 0xb5, 0xa2, 0x49, 0xd8, 0x17, 0x6c, 0xdc, 0x05, 0x43, 0x95, 0xa5, 0xff, 0xff, 0xff, 0xff, 0x40, 0xd1, 0xf2, 0x4a, 0x91, 0x03, 0xe2, 0x87, 0xcf, 0xf1, 0xcd, 0x33, 0xc8, 0x41, 0xa8, 0xf5, 0xac, 0x64, 0x44, 0x1a, 0xdb, 0x60, 0xe5, 0xaa, 0x55, 0xcb, 0xf4, 0xa2, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12164_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12164_sig[] = { 0x1f, 0x1a, 0x62, 0x23, 0xaa, 0xd7, 0x60, 0x16, 0xac, 0x35, 0x18, 0x33, 0xa0, 0xb7, 0x85, 0x9c, 0x6b, 0x6f, 0xf9, 0xed, 0xf9, 0x00, 0xd0, 0x40, 0xc8, 0xcc, 0x39, 0x8a, 0x51, 0x2b, 0x0b, 0x44, 0x9c, 0x3b, 0xd0, 0xdf, 0x9e, 0x51, 0x53, 0xf6, 0xe8, 0xd6, 0x38, 0x17, 0x52, 0xed, 0x62, 0x78, 0x5d, 0x85, 0x3d, 0x72, 0x95, 0x0d, 0x9d, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12164 = { .name = "ecdsa_brainpoolp224t1_sha256_12164", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12164_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12164_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12164_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1409 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12165 for ECDSA, tcId is 1410 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224t1_sha256_12165_pubkey[] = { 0xd6, 0x93, 0x91, 0x70, 0xda, 0x64, 0x17, 0x74, 0x3d, 0xd9, 0x05, 0x17, 0xb6, 0xb5, 0xa2, 0x49, 0xd8, 0x17, 0x6c, 0xdc, 0x05, 0x43, 0x95, 0xa5, 0xff, 0xff, 0xff, 0xff, 0x40, 0xd1, 0xf2, 0x4a, 0x91, 0x03, 0xe2, 0x87, 0xcf, 0xf1, 0xcd, 0x33, 0xc8, 0x41, 0xa8, 0xf5, 0xac, 0x64, 0x44, 0x1a, 0xdb, 0x60, 0xe5, 0xaa, 0x55, 0xcb, 0xf4, 0xa2, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12165_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224t1_sha256_12165_sig[] = { 0x03, 0x4a, 0x26, 0x4c, 0x9d, 0x3f, 0xea, 0xfd, 0xd4, 0x88, 0xc5, 0x28, 0xaf, 0x27, 0xfa, 0x45, 0xc5, 0x8f, 0x28, 0xcf, 0xe4, 0xa1, 0x63, 0x7d, 0x1a, 0xb5, 0x67, 0xd3, 0x4d, 0x7c, 0x05, 0xe5, 0x8a, 0xf7, 0xf2, 0x88, 0xab, 0x83, 0xd0, 0x1b, 0xbf, 0x8f, 0xad, 0x1d, 0x8c, 0xa7, 0x93, 0x22, 0x1d, 0x4a, 0xf5, 0xfe, 0x4c, 0x71, 0x9f, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224t1_sha256_12165 = { .name = "ecdsa_brainpoolp224t1_sha256_12165", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224t1_str_params, .pubkey = ecdsa_brainpoolp224t1_sha256_12165_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224t1_sha256_12165_msg, .msglen = 7, .sig = ecdsa_brainpoolp224t1_sha256_12165_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1410 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) */ /* Test 12166 for ECDSA, tcId is 1411 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12166_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12166_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12166_sig[] = { 0x62, 0xaa, 0xb4, 0x0a, 0x36, 0xd6, 0xa0, 0xd2, 0x56, 0x44, 0x71, 0x9c, 0xe3, 0x1d, 0xc6, 0x29, 0xec, 0x68, 0x4f, 0x6f, 0x0d, 0xa3, 0x2f, 0x9d, 0xd0, 0x34, 0xcc, 0xc4, 0x21, 0xdb, 0xd0, 0xed, 0xa1, 0xfa, 0x6b, 0x0d, 0xfd, 0x95, 0x58, 0xda, 0x29, 0x37, 0x4f, 0xb7, 0x75, 0x05, 0xee, 0x8a, 0xb3, 0x57, 0x21, 0x61, 0x71, 0x1f, 0x82, 0x1d, 0x11, 0x80, 0x7c, 0x7f, 0xff, 0x91, 0x0c, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12166 = { .name = "ecdsa_brainpoolp256r1_sha256_12166", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12166_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12166_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12166_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1411 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12167 for ECDSA, tcId is 1412 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12167_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12167_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12167_sig[] = { 0x74, 0x0c, 0xd3, 0xd3, 0xa9, 0xcd, 0x9d, 0xbe, 0x05, 0xea, 0xd4, 0xe3, 0x9e, 0x54, 0xdb, 0x27, 0xc0, 0xf1, 0x57, 0x9d, 0xa6, 0x8e, 0x3a, 0xa5, 0xc9, 0x24, 0x5b, 0x04, 0x7a, 0xeb, 0xc3, 0xb8, 0x8a, 0xe7, 0x8c, 0x12, 0x23, 0x3d, 0x37, 0x8f, 0xe2, 0xce, 0x3c, 0x0f, 0xb2, 0xb7, 0x69, 0xf8, 0x46, 0x38, 0x30, 0xa7, 0x1a, 0x5e, 0x51, 0x87, 0xc1, 0x1b, 0x20, 0xfd, 0xd7, 0xe5, 0x04, 0x45, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12167 = { .name = "ecdsa_brainpoolp256r1_sha256_12167", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12167_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12167_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12167_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1412 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12168 for ECDSA, tcId is 1413 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12168_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x62, 0x50, 0x13, 0x89, 0x59, 0x4f, 0x0e, 0xe9, 0xfc, 0x16, 0x52, 0xfa, 0x83, 0x37, 0x7f, 0xa3, 0x02, 0xe1, 0x9c, 0xef, 0x64, 0x25, 0x2f, 0xc0, 0xb1, 0x47, 0xf7, 0x74, 0x95, 0x07, 0xac, 0xf5, 0xb0, 0x43, 0x39, 0xed, 0x10, 0x2b, 0x9c, 0xa6, 0x0d, 0xb9, 0x8c, 0x16, 0x5b, 0x94, 0xeb, 0xe8, 0x55, 0xd2, 0x20, 0x2e, 0x46, 0xdc, 0xe1, 0x5b, 0xa1, 0xe0, 0x28, 0xbe, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12168_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12168_sig[] = { 0xa2, 0x8f, 0x30, 0x24, 0x5c, 0x5f, 0xb0, 0xc2, 0x25, 0xfd, 0xec, 0x23, 0x92, 0x4d, 0xc2, 0xcd, 0x4c, 0x2d, 0xa8, 0x88, 0xd1, 0xee, 0x1b, 0xc5, 0x44, 0x58, 0x58, 0xc6, 0x46, 0x01, 0x5c, 0xa8, 0x0e, 0xe3, 0x64, 0xc1, 0x49, 0x1c, 0x45, 0x51, 0xef, 0x35, 0x09, 0xbe, 0x8f, 0x88, 0xdb, 0x0e, 0x04, 0xd0, 0xaf, 0xb3, 0x65, 0x28, 0xae, 0xda, 0x13, 0x01, 0xb1, 0x49, 0x48, 0xcc, 0x9c, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12168 = { .name = "ecdsa_brainpoolp256r1_sha256_12168", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12168_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12168_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12168_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1413 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12169 for ECDSA, tcId is 1414 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12169_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12169_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12169_sig[] = { 0x7f, 0x20, 0x2f, 0x54, 0xf5, 0x91, 0xb5, 0x11, 0x05, 0xb2, 0x27, 0xee, 0x6d, 0x6d, 0xa3, 0xad, 0xdd, 0xfc, 0x4b, 0x5e, 0x81, 0x9e, 0xfc, 0x04, 0xbe, 0xfc, 0xdc, 0xbf, 0x74, 0x84, 0xf7, 0x83, 0x43, 0x60, 0xea, 0x04, 0x50, 0x39, 0x55, 0xfc, 0x3f, 0x02, 0x59, 0x28, 0xb2, 0xdc, 0xe5, 0x0f, 0xf2, 0xd5, 0x8b, 0x90, 0x60, 0xb3, 0x4b, 0xbe, 0xdf, 0xc3, 0xc2, 0x19, 0xb3, 0xb4, 0x35, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12169 = { .name = "ecdsa_brainpoolp256r1_sha256_12169", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12169_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12169_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12169_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1414 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12170 for ECDSA, tcId is 1415 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12170_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12170_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12170_sig[] = { 0x62, 0xe2, 0x18, 0xdc, 0xa3, 0x2e, 0x4e, 0xf3, 0x56, 0x92, 0xe9, 0x31, 0x5e, 0x1e, 0x03, 0x6b, 0xef, 0x17, 0x66, 0x07, 0x3b, 0x84, 0x6e, 0x38, 0xde, 0x20, 0xd2, 0xd2, 0x93, 0x49, 0xf9, 0xfe, 0x51, 0x9d, 0x4d, 0x4c, 0x61, 0x58, 0xd9, 0x54, 0x74, 0xd7, 0x93, 0xa0, 0xee, 0x9c, 0x26, 0x0a, 0x0c, 0x54, 0x69, 0xc5, 0xaa, 0xb7, 0x95, 0x10, 0x97, 0x1b, 0x41, 0xfb, 0x4f, 0xae, 0x4b, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12170 = { .name = "ecdsa_brainpoolp256r1_sha256_12170", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12170_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12170_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12170_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1415 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12171 for ECDSA, tcId is 1416 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12171_pubkey[] = { 0x35, 0x1a, 0x45, 0xfb, 0x92, 0x0f, 0x2c, 0x9f, 0x1b, 0x17, 0x84, 0x38, 0xfa, 0x3b, 0xf2, 0x72, 0xff, 0x93, 0x28, 0xb8, 0x81, 0xc4, 0x77, 0xa1, 0xf5, 0x6a, 0x8c, 0x0e, 0x88, 0x46, 0x52, 0x76, 0x12, 0x70, 0xf8, 0x06, 0xfe, 0x40, 0xad, 0x97, 0xeb, 0xf7, 0x6c, 0x68, 0x25, 0x38, 0x4b, 0x78, 0x0a, 0xe6, 0xaf, 0xcc, 0xc7, 0x92, 0xb0, 0x5f, 0x2f, 0xb3, 0xeb, 0x7b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12171_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12171_sig[] = { 0xa3, 0x90, 0x22, 0x95, 0xf6, 0xf7, 0x43, 0xac, 0x75, 0x4d, 0xb7, 0xb3, 0xfc, 0xd8, 0x23, 0xbe, 0x91, 0x7b, 0x11, 0x91, 0xa5, 0x70, 0x57, 0x28, 0xf5, 0x68, 0x24, 0x92, 0x78, 0x4d, 0xa7, 0xf1, 0x43, 0xde, 0xf6, 0x36, 0x66, 0x0e, 0xff, 0x72, 0xe6, 0x43, 0x5e, 0xdb, 0x85, 0x0c, 0x91, 0x26, 0xc7, 0x06, 0x79, 0x38, 0x66, 0x8f, 0x24, 0x99, 0x98, 0xa0, 0xe4, 0x00, 0x6b, 0x8e, 0xe7, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12171 = { .name = "ecdsa_brainpoolp256r1_sha256_12171", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12171_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12171_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12171_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1416 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12172 for ECDSA, tcId is 1417 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12172_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12172_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12172_sig[] = { 0x86, 0xd0, 0x5b, 0x26, 0xa9, 0xca, 0x7e, 0x10, 0xae, 0x06, 0x81, 0xbb, 0x4c, 0x35, 0xa0, 0x6d, 0x7a, 0x4e, 0x91, 0x8f, 0x86, 0x25, 0xe3, 0xdf, 0xa7, 0xac, 0x2d, 0x5a, 0xed, 0xa9, 0x1c, 0x05, 0x08, 0xc5, 0xf4, 0x75, 0xa9, 0x58, 0x88, 0x76, 0x9d, 0xa4, 0xa0, 0xe1, 0xb6, 0x35, 0xc2, 0x29, 0x2f, 0x65, 0x4f, 0x93, 0x4a, 0x5c, 0x50, 0x10, 0xfe, 0x0c, 0x72, 0x9f, 0x3d, 0x11, 0xe1, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12172 = { .name = "ecdsa_brainpoolp256r1_sha256_12172", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12172_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12172_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12172_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1417 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12173 for ECDSA, tcId is 1418 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12173_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12173_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12173_sig[] = { 0x43, 0xc4, 0x47, 0x47, 0x10, 0xd2, 0x50, 0x94, 0xa2, 0xe2, 0x1a, 0x9c, 0xc0, 0x85, 0x85, 0xc2, 0x60, 0x15, 0xf9, 0xf9, 0x40, 0x12, 0xb1, 0x00, 0xe7, 0x2c, 0x07, 0x63, 0xaa, 0x9e, 0x0c, 0xff, 0x83, 0x45, 0xc4, 0x6f, 0xd5, 0x59, 0x2c, 0xef, 0xbd, 0x5e, 0xbb, 0x25, 0x89, 0x65, 0xc0, 0x5d, 0x96, 0x4e, 0x6e, 0x6a, 0x27, 0x81, 0x98, 0xdd, 0xc1, 0xe3, 0x88, 0xcf, 0x1e, 0x75, 0x86, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12173 = { .name = "ecdsa_brainpoolp256r1_sha256_12173", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12173_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12173_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12173_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1418 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12174 for ECDSA, tcId is 1419 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12174_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x29, 0xb2, 0x14, 0x6e, 0x36, 0xfc, 0x05, 0x55, 0x45, 0xbf, 0x8f, 0x2c, 0xc7, 0x0f, 0x8e, 0x73, 0xe8, 0xb2, 0x5e, 0x53, 0x93, 0x65, 0xad, 0x75, 0x77, 0xcc, 0x35, 0x35, 0x4a, 0x2b, 0x8c, 0x03, 0x19, 0xbc, 0x4c, 0xcd, 0x3e, 0x60, 0xda, 0x11, 0x94, 0x77, 0xc2, 0x3f, 0xaf, 0x8f, 0xc2, 0xdc, 0xef, 0xc4, 0x2d, 0x3a, 0xf7, 0x58, 0x27, 0xae, 0xb4, 0x2f, 0x6f, 0x0f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12174_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12174_sig[] = { 0x6d, 0x27, 0x24, 0x16, 0x7e, 0x81, 0x65, 0x28, 0x49, 0x1c, 0xce, 0x57, 0x4f, 0x05, 0x26, 0x20, 0x9d, 0xe5, 0x2c, 0xd0, 0xf2, 0xaf, 0x00, 0x85, 0x28, 0x4f, 0xd0, 0x50, 0x16, 0x3d, 0x37, 0xc5, 0x76, 0xdd, 0x1d, 0xd5, 0x0f, 0xf9, 0xb5, 0x53, 0xb0, 0xe1, 0x42, 0xb7, 0xe6, 0xc6, 0xbe, 0x8e, 0xdf, 0x37, 0x08, 0xdd, 0x29, 0x2f, 0x03, 0xf3, 0xe9, 0xbf, 0x15, 0x7d, 0x21, 0xda, 0xa9, 0xeb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12174 = { .name = "ecdsa_brainpoolp256r1_sha256_12174", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12174_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12174_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12174_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1419 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12175 for ECDSA, tcId is 1420 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12175_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12175_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12175_sig[] = { 0x32, 0x10, 0x09, 0xa0, 0x6c, 0x75, 0x9c, 0x54, 0xcd, 0x66, 0xba, 0xaf, 0xa0, 0xcb, 0xfd, 0x07, 0xee, 0xdb, 0x19, 0xf1, 0x2a, 0x1e, 0xd6, 0x54, 0xdd, 0x52, 0xb5, 0x6f, 0x9c, 0x4f, 0xac, 0x7c, 0x19, 0x56, 0x31, 0x0a, 0x7e, 0x47, 0x57, 0xec, 0x83, 0xdd, 0xb9, 0x2d, 0x27, 0x63, 0x60, 0x73, 0x54, 0x67, 0x81, 0x49, 0xf1, 0xad, 0x92, 0x38, 0x79, 0x28, 0xcf, 0x88, 0x7b, 0x4b, 0xed, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12175 = { .name = "ecdsa_brainpoolp256r1_sha256_12175", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12175_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12175_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12175_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1420 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12176 for ECDSA, tcId is 1421 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12176_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12176_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12176_sig[] = { 0x9b, 0xdd, 0x35, 0x98, 0x81, 0xc2, 0x39, 0xe2, 0x41, 0x5c, 0xa2, 0xaf, 0x3d, 0x18, 0x46, 0x3b, 0xb2, 0x4b, 0xe5, 0x3f, 0x6f, 0x63, 0x6c, 0xbd, 0x20, 0x36, 0x0b, 0x6b, 0x33, 0x3b, 0xc3, 0x45, 0x0f, 0xf0, 0x3b, 0xc3, 0x6c, 0xc1, 0x97, 0x5b, 0xdc, 0x86, 0x80, 0xc4, 0x4f, 0xbf, 0x2a, 0xef, 0xdd, 0xf6, 0x7c, 0x11, 0x8c, 0x30, 0x4b, 0x8b, 0x3d, 0x36, 0x0e, 0xb1, 0x02, 0x03, 0xc3, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12176 = { .name = "ecdsa_brainpoolp256r1_sha256_12176", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12176_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12176_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12176_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1421 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12177 for ECDSA, tcId is 1422 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12177_pubkey[] = { 0x68, 0x0b, 0xec, 0xab, 0xe7, 0xd7, 0xdf, 0x4f, 0xad, 0xfe, 0x5a, 0xe0, 0x1f, 0xba, 0x5e, 0xa5, 0x1b, 0x76, 0x75, 0x96, 0x06, 0xa2, 0xe3, 0x06, 0x12, 0xe6, 0x67, 0x41, 0x9b, 0x88, 0x5d, 0x05, 0x08, 0x54, 0x1d, 0xcb, 0x07, 0x23, 0x78, 0x5c, 0x3c, 0x76, 0x65, 0x81, 0xa7, 0x51, 0x4a, 0x1f, 0xf4, 0x2e, 0x44, 0x37, 0xd6, 0x3f, 0x87, 0x82, 0x71, 0xcb, 0x86, 0x0f, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12177_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12177_sig[] = { 0x48, 0x56, 0x5e, 0xb7, 0xe7, 0x82, 0x0d, 0x40, 0x75, 0x4b, 0x5f, 0x26, 0x4a, 0x4c, 0xea, 0xfa, 0x62, 0xbf, 0x75, 0x08, 0x42, 0x41, 0x51, 0x4b, 0x49, 0x19, 0x95, 0xe7, 0x97, 0x1e, 0x69, 0x95, 0x3d, 0xa6, 0xdf, 0x3d, 0x35, 0x4f, 0x48, 0xda, 0xef, 0x6d, 0x07, 0x8c, 0xf1, 0x12, 0x42, 0x95, 0xfc, 0x8c, 0x32, 0x11, 0xf2, 0x75, 0x79, 0x67, 0xc7, 0x81, 0xdc, 0x2e, 0x9c, 0x62, 0xed, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12177 = { .name = "ecdsa_brainpoolp256r1_sha256_12177", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12177_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12177_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12177_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1422 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12178 for ECDSA, tcId is 1423 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12178_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12178_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12178_sig[] = { 0x51, 0x8e, 0x88, 0x5d, 0xef, 0x02, 0x2e, 0xb5, 0x02, 0x0f, 0xc9, 0x0f, 0x40, 0x24, 0xd8, 0x71, 0x22, 0xdc, 0x0f, 0x3e, 0xd7, 0xf8, 0x69, 0xed, 0x77, 0x20, 0xff, 0x74, 0xa0, 0x09, 0xfb, 0x7b, 0x8a, 0x3e, 0x26, 0xa8, 0xcd, 0x42, 0x6d, 0x21, 0xeb, 0xa5, 0xcd, 0x7a, 0x56, 0x14, 0xf3, 0x64, 0x43, 0x95, 0xcf, 0xce, 0xcb, 0x24, 0xfe, 0x76, 0x0a, 0x68, 0xa7, 0xa9, 0xe8, 0xf0, 0x9c, 0x02, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12178 = { .name = "ecdsa_brainpoolp256r1_sha256_12178", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12178_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12178_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12178_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1423 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12179 for ECDSA, tcId is 1424 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12179_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12179_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12179_sig[] = { 0x04, 0xb0, 0x1e, 0x5c, 0xc3, 0xce, 0x9b, 0xf1, 0x08, 0x44, 0xbc, 0x1c, 0xb2, 0x1d, 0xee, 0xff, 0x6e, 0xbc, 0x9e, 0x2a, 0x70, 0x10, 0xcf, 0xbb, 0x3a, 0xf0, 0x81, 0x13, 0x54, 0x59, 0x9c, 0x81, 0x2e, 0x65, 0xfb, 0x8d, 0xb6, 0x2f, 0x25, 0x59, 0x10, 0xea, 0x4d, 0x52, 0x35, 0xbb, 0x21, 0xaa, 0x67, 0xaa, 0x59, 0xff, 0xd5, 0x19, 0x91, 0x1e, 0xcd, 0x98, 0x93, 0x00, 0x0a, 0xb6, 0x7b, 0xb4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12179 = { .name = "ecdsa_brainpoolp256r1_sha256_12179", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12179_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12179_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12179_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1424 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12180 for ECDSA, tcId is 1425 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12180_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0x00, 0x00, 0x00, 0x01, 0x46, 0x9f, 0xb4, 0x56, 0xca, 0x6a, 0x17, 0x20, 0xca, 0x8d, 0xb2, 0x5d, 0x56, 0x7e, 0x12, 0x1c, 0xf9, 0x21, 0xce, 0x13, 0xe3, 0x40, 0x00, 0xf8, 0xc1, 0x2f, 0x52, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12180_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12180_sig[] = { 0x94, 0xbb, 0x06, 0x01, 0x19, 0x8c, 0x4c, 0xe2, 0x66, 0xb0, 0x93, 0x24, 0x26, 0xff, 0xd0, 0x01, 0x32, 0xd7, 0xd4, 0xe2, 0xde, 0x65, 0xef, 0x47, 0xf5, 0x63, 0x60, 0x82, 0x5f, 0x26, 0x24, 0x38, 0x27, 0x34, 0x32, 0x7d, 0x19, 0x89, 0xc9, 0x58, 0x0f, 0x54, 0x58, 0xf0, 0x4a, 0xac, 0x6f, 0xd5, 0x75, 0x2a, 0x1e, 0xe5, 0xe2, 0x36, 0xe9, 0xed, 0x1a, 0x7c, 0x0b, 0x2d, 0x9b, 0x36, 0xdb, 0x10, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12180 = { .name = "ecdsa_brainpoolp256r1_sha256_12180", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12180_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12180_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12180_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1425 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12181 for ECDSA, tcId is 1426 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12181_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12181_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12181_sig[] = { 0x4d, 0xde, 0x19, 0x7f, 0x96, 0x2c, 0x63, 0xa7, 0x79, 0x9c, 0x86, 0x2e, 0x89, 0x7b, 0x3b, 0xb1, 0xe7, 0xa7, 0xdd, 0xfb, 0x9a, 0xb7, 0x7c, 0x2a, 0x17, 0xa5, 0x41, 0x51, 0xce, 0x60, 0x4a, 0xd6, 0x01, 0x7e, 0x7a, 0xef, 0x86, 0xe5, 0x33, 0x08, 0x64, 0x25, 0xa2, 0xc4, 0xb3, 0x20, 0x82, 0xf1, 0x18, 0x91, 0x3e, 0xf3, 0x66, 0x7c, 0x84, 0x37, 0x67, 0x2e, 0x0b, 0xbc, 0x7c, 0x2b, 0x8d, 0x7e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12181 = { .name = "ecdsa_brainpoolp256r1_sha256_12181", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12181_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12181_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12181_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1426 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12182 for ECDSA, tcId is 1427 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12182_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12182_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12182_sig[] = { 0x7c, 0x53, 0xed, 0x1d, 0x50, 0x4a, 0xd4, 0xba, 0x53, 0xd3, 0x97, 0x92, 0x01, 0x2a, 0x34, 0xd0, 0x07, 0x25, 0x0a, 0x2b, 0x8d, 0x1c, 0xa1, 0x89, 0xc0, 0xd9, 0xf7, 0x5c, 0xcc, 0x9a, 0x99, 0x57, 0x09, 0xb9, 0x7d, 0xcc, 0x5c, 0x67, 0x48, 0x71, 0x14, 0x23, 0x1d, 0x60, 0x13, 0x74, 0xa8, 0x36, 0x4c, 0xaf, 0xa3, 0x95, 0x81, 0x29, 0x17, 0x62, 0x20, 0x2b, 0x92, 0x15, 0xd5, 0x11, 0x35, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12182 = { .name = "ecdsa_brainpoolp256r1_sha256_12182", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12182_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12182_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12182_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1427 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12183 for ECDSA, tcId is 1428 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12183_pubkey[] = { 0x7d, 0x16, 0xfd, 0x65, 0x6a, 0x9e, 0x6b, 0x34, 0xe4, 0x5d, 0x8c, 0x8c, 0x3b, 0x45, 0x8e, 0xae, 0x7b, 0xbc, 0x28, 0x79, 0xf8, 0xb4, 0xf6, 0x11, 0x71, 0xa9, 0x6f, 0x66, 0x4e, 0xee, 0x90, 0x61, 0xa9, 0xfb, 0x57, 0xda, 0x5b, 0x4e, 0xf5, 0x65, 0x73, 0xfb, 0xf3, 0x6f, 0xd2, 0xf5, 0xdb, 0x15, 0x17, 0xbd, 0xe4, 0x06, 0xdc, 0x04, 0x52, 0x14, 0x3c, 0xd3, 0x47, 0x24, 0x5e, 0x3f, 0x01, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12183_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12183_sig[] = { 0x51, 0x32, 0x45, 0xab, 0x2b, 0x6a, 0x42, 0x06, 0xbb, 0x0f, 0x69, 0x70, 0xc8, 0xad, 0x04, 0x0a, 0x94, 0x72, 0x5d, 0xdc, 0x9a, 0x08, 0xdb, 0x0f, 0xd9, 0xde, 0xf9, 0x38, 0x66, 0xff, 0xbb, 0xa1, 0xa5, 0x3a, 0x7a, 0xb3, 0x7d, 0xec, 0xed, 0xae, 0x18, 0xdd, 0x5b, 0x5c, 0x48, 0xeb, 0x64, 0x2b, 0x7a, 0x9c, 0x92, 0x7e, 0x6b, 0xcf, 0x6b, 0xda, 0xc3, 0xa7, 0x57, 0xe6, 0xd2, 0xc1, 0x69, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12183 = { .name = "ecdsa_brainpoolp256r1_sha256_12183", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12183_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12183_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12183_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1428 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12184 for ECDSA, tcId is 1429 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12184_pubkey[] = { 0x7f, 0x85, 0xe9, 0x8d, 0x6b, 0xe6, 0x8b, 0xa1, 0xdb, 0x3a, 0x0e, 0x1e, 0xdd, 0xd6, 0x6f, 0x05, 0x95, 0x21, 0xeb, 0x41, 0x17, 0xe7, 0x2d, 0x80, 0x41, 0x34, 0x39, 0x2e, 0xff, 0xff, 0xff, 0xff, 0x0e, 0xfe, 0x5f, 0xb8, 0xe3, 0x28, 0x84, 0xe0, 0x79, 0x60, 0x63, 0xee, 0x19, 0x09, 0x49, 0x44, 0xd7, 0x99, 0x81, 0x37, 0xb3, 0x05, 0xff, 0x3b, 0x5f, 0x02, 0x88, 0xf6, 0x7a, 0x1b, 0x6a, 0x2e, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12184_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12184_sig[] = { 0x4b, 0x5e, 0xae, 0xcd, 0x44, 0x34, 0xb9, 0xa3, 0x05, 0x24, 0x90, 0xe5, 0xd7, 0x47, 0x25, 0xd1, 0x1b, 0x1b, 0xb0, 0xea, 0xb3, 0x34, 0x1a, 0xb7, 0xe5, 0x34, 0x36, 0x38, 0xb9, 0x63, 0x09, 0xa5, 0x60, 0xc4, 0xfc, 0xfa, 0xca, 0xc8, 0xf8, 0xb6, 0x07, 0x94, 0x02, 0xb5, 0x14, 0x45, 0x30, 0x33, 0x60, 0x6c, 0x42, 0xef, 0xd1, 0x66, 0xf6, 0x71, 0x15, 0x64, 0x4e, 0xc0, 0xcc, 0x70, 0x4f, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12184 = { .name = "ecdsa_brainpoolp256t1_sha256_12184", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12184_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12184_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12184_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1429 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12185 for ECDSA, tcId is 1430 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12185_pubkey[] = { 0x7f, 0x85, 0xe9, 0x8d, 0x6b, 0xe6, 0x8b, 0xa1, 0xdb, 0x3a, 0x0e, 0x1e, 0xdd, 0xd6, 0x6f, 0x05, 0x95, 0x21, 0xeb, 0x41, 0x17, 0xe7, 0x2d, 0x80, 0x41, 0x34, 0x39, 0x2e, 0xff, 0xff, 0xff, 0xff, 0x0e, 0xfe, 0x5f, 0xb8, 0xe3, 0x28, 0x84, 0xe0, 0x79, 0x60, 0x63, 0xee, 0x19, 0x09, 0x49, 0x44, 0xd7, 0x99, 0x81, 0x37, 0xb3, 0x05, 0xff, 0x3b, 0x5f, 0x02, 0x88, 0xf6, 0x7a, 0x1b, 0x6a, 0x2e, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12185_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12185_sig[] = { 0x17, 0xc4, 0x5f, 0x98, 0x14, 0xd9, 0x55, 0x3c, 0x17, 0xd7, 0x3f, 0xcc, 0xf1, 0x06, 0x07, 0x70, 0xdb, 0xa9, 0xe5, 0x40, 0xaf, 0x29, 0xb2, 0x57, 0x6c, 0xce, 0x52, 0x44, 0x94, 0xd6, 0xc8, 0xd2, 0x5c, 0xc0, 0x8e, 0x02, 0x6a, 0xed, 0x87, 0xfb, 0xb3, 0xd6, 0xf2, 0xe8, 0xe0, 0xcc, 0x80, 0x83, 0xf0, 0x4e, 0xb3, 0xfd, 0x06, 0xe1, 0x2e, 0x10, 0x8f, 0x18, 0x0b, 0x3e, 0x0f, 0xde, 0xc7, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12185 = { .name = "ecdsa_brainpoolp256t1_sha256_12185", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12185_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12185_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12185_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1430 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12186 for ECDSA, tcId is 1431 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12186_pubkey[] = { 0x7f, 0x85, 0xe9, 0x8d, 0x6b, 0xe6, 0x8b, 0xa1, 0xdb, 0x3a, 0x0e, 0x1e, 0xdd, 0xd6, 0x6f, 0x05, 0x95, 0x21, 0xeb, 0x41, 0x17, 0xe7, 0x2d, 0x80, 0x41, 0x34, 0x39, 0x2e, 0xff, 0xff, 0xff, 0xff, 0x0e, 0xfe, 0x5f, 0xb8, 0xe3, 0x28, 0x84, 0xe0, 0x79, 0x60, 0x63, 0xee, 0x19, 0x09, 0x49, 0x44, 0xd7, 0x99, 0x81, 0x37, 0xb3, 0x05, 0xff, 0x3b, 0x5f, 0x02, 0x88, 0xf6, 0x7a, 0x1b, 0x6a, 0x2e, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12186_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12186_sig[] = { 0x51, 0x5b, 0xc9, 0xc0, 0x84, 0x75, 0x7b, 0xbd, 0xbe, 0x90, 0x49, 0x7e, 0xc5, 0xfc, 0xa7, 0x5e, 0x8b, 0x48, 0xe6, 0x4f, 0x79, 0x44, 0x17, 0xaf, 0x2b, 0xa8, 0xbb, 0xf7, 0x8e, 0xa9, 0x92, 0xf5, 0x68, 0xc3, 0x14, 0x99, 0x46, 0x35, 0x13, 0x54, 0x0b, 0xa7, 0x89, 0xbd, 0xaa, 0x45, 0x30, 0x88, 0x41, 0x17, 0xc1, 0x85, 0x63, 0x98, 0xba, 0x3b, 0x19, 0x28, 0x60, 0x29, 0xf3, 0xfa, 0x79, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12186 = { .name = "ecdsa_brainpoolp256t1_sha256_12186", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12186_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12186_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12186_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1431 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12187 for ECDSA, tcId is 1432 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12187_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0x00, 0x00, 0x00, 0x00, 0x49, 0xe1, 0x97, 0x31, 0x36, 0x91, 0x4f, 0xb9, 0x74, 0x89, 0x79, 0x3f, 0xe4, 0x4a, 0x21, 0x03, 0xc7, 0xbc, 0x6b, 0x90, 0xfe, 0x18, 0x39, 0x76, 0xd0, 0x79, 0x46, 0x32, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12187_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12187_sig[] = { 0x03, 0x80, 0x90, 0xbf, 0x9f, 0x3f, 0x64, 0x05, 0x19, 0xd4, 0x18, 0x41, 0x4f, 0x0a, 0x7f, 0x8a, 0xfb, 0x0d, 0xbe, 0x4c, 0x22, 0x5d, 0x4f, 0x9f, 0xa2, 0x84, 0x92, 0x2b, 0xa5, 0xf9, 0x66, 0x49, 0x8b, 0xfa, 0xde, 0xd7, 0xb3, 0xea, 0x38, 0xf7, 0xeb, 0x7f, 0x99, 0x12, 0x44, 0x31, 0x30, 0xb4, 0x41, 0x8e, 0x5b, 0xac, 0xc1, 0x6a, 0x6f, 0xf8, 0x25, 0x3d, 0x4f, 0x19, 0x26, 0xec, 0xed, 0x67, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12187 = { .name = "ecdsa_brainpoolp256t1_sha256_12187", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12187_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12187_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12187_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1432 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12188 for ECDSA, tcId is 1433 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12188_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0x00, 0x00, 0x00, 0x00, 0x49, 0xe1, 0x97, 0x31, 0x36, 0x91, 0x4f, 0xb9, 0x74, 0x89, 0x79, 0x3f, 0xe4, 0x4a, 0x21, 0x03, 0xc7, 0xbc, 0x6b, 0x90, 0xfe, 0x18, 0x39, 0x76, 0xd0, 0x79, 0x46, 0x32, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12188_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12188_sig[] = { 0x74, 0xcb, 0x76, 0x1a, 0xc6, 0xb5, 0x68, 0x7c, 0x29, 0xf1, 0x84, 0x48, 0xc5, 0xba, 0x80, 0x4d, 0x58, 0x69, 0x78, 0x0d, 0xe3, 0x7e, 0x56, 0x06, 0xac, 0x54, 0x61, 0xb1, 0xb9, 0x69, 0x7c, 0xfe, 0x98, 0x85, 0x2a, 0xad, 0xb7, 0xbb, 0x2b, 0x44, 0xcb, 0xcd, 0x43, 0x2e, 0xee, 0x62, 0xbd, 0xb0, 0xce, 0xbc, 0xab, 0x8c, 0x1d, 0x24, 0xac, 0xe5, 0x21, 0x8b, 0xed, 0xee, 0x35, 0x60, 0x94, 0x38, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12188 = { .name = "ecdsa_brainpoolp256t1_sha256_12188", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12188_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12188_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12188_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1433 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12189 for ECDSA, tcId is 1434 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12189_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0x00, 0x00, 0x00, 0x00, 0x49, 0xe1, 0x97, 0x31, 0x36, 0x91, 0x4f, 0xb9, 0x74, 0x89, 0x79, 0x3f, 0xe4, 0x4a, 0x21, 0x03, 0xc7, 0xbc, 0x6b, 0x90, 0xfe, 0x18, 0x39, 0x76, 0xd0, 0x79, 0x46, 0x32, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12189_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12189_sig[] = { 0x77, 0xcb, 0xc5, 0x8c, 0x57, 0xa9, 0x12, 0xa3, 0xa6, 0x61, 0x53, 0xb6, 0xe8, 0x3f, 0x0c, 0x0d, 0xaf, 0x6f, 0x7d, 0x14, 0x49, 0xfa, 0x9a, 0x29, 0x28, 0x1d, 0xd5, 0xd2, 0x21, 0xae, 0x8e, 0x8d, 0x0b, 0x56, 0xcf, 0xf5, 0x3b, 0xac, 0xcc, 0xe5, 0x88, 0xca, 0x5c, 0x8e, 0xda, 0x47, 0xcf, 0x74, 0xa5, 0x7e, 0xbb, 0xd8, 0x44, 0x81, 0x26, 0xa5, 0x0a, 0xcd, 0xb1, 0x1c, 0x8e, 0x0a, 0x2a, 0x53, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12189 = { .name = "ecdsa_brainpoolp256t1_sha256_12189", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12189_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12189_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12189_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1434 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12190 for ECDSA, tcId is 1435 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12190_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0xa9, 0xfb, 0x57, 0xdb, 0x58, 0x0d, 0x12, 0x8b, 0x07, 0xd4, 0xba, 0xd7, 0x28, 0xfa, 0x14, 0x32, 0x89, 0xf1, 0xd5, 0x20, 0x0d, 0x69, 0xb4, 0x97, 0x21, 0xfb, 0x0e, 0xa6, 0x4e, 0xf5, 0x0d, 0x45, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12190_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12190_sig[] = { 0x63, 0xa5, 0x81, 0xc9, 0xe6, 0x61, 0x00, 0xf6, 0x50, 0xd9, 0xff, 0x11, 0xad, 0x7b, 0xea, 0x62, 0x23, 0x86, 0xa2, 0x6c, 0x53, 0x37, 0xb7, 0x1b, 0x4d, 0x97, 0xa1, 0x20, 0xc1, 0x46, 0x34, 0x31, 0x5c, 0xc6, 0xbb, 0x80, 0x0d, 0xee, 0xb7, 0x3a, 0x16, 0x81, 0x48, 0x97, 0xef, 0x9a, 0x62, 0x5b, 0xbd, 0xb6, 0xe4, 0xb4, 0x5f, 0xcc, 0xea, 0xf0, 0xa3, 0x18, 0x29, 0x80, 0x61, 0x9e, 0xa7, 0x27, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12190 = { .name = "ecdsa_brainpoolp256t1_sha256_12190", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12190_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12190_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12190_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1435 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12191 for ECDSA, tcId is 1436 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12191_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0xa9, 0xfb, 0x57, 0xdb, 0x58, 0x0d, 0x12, 0x8b, 0x07, 0xd4, 0xba, 0xd7, 0x28, 0xfa, 0x14, 0x32, 0x89, 0xf1, 0xd5, 0x20, 0x0d, 0x69, 0xb4, 0x97, 0x21, 0xfb, 0x0e, 0xa6, 0x4e, 0xf5, 0x0d, 0x45, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12191_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12191_sig[] = { 0x7d, 0x62, 0xfb, 0xfb, 0x45, 0xe7, 0x3f, 0xfa, 0xcf, 0x9c, 0x81, 0xd6, 0x87, 0x69, 0x36, 0x49, 0x40, 0x53, 0x74, 0x94, 0x99, 0x22, 0x96, 0xa5, 0x06, 0x56, 0x73, 0x1a, 0x5e, 0xbe, 0x1a, 0xb1, 0x7b, 0x98, 0x6f, 0xaf, 0x24, 0x34, 0x93, 0xce, 0x8f, 0x6a, 0x5e, 0x27, 0x82, 0x71, 0x33, 0x9c, 0xc1, 0x8d, 0x3f, 0xd8, 0xa0, 0x0f, 0x3f, 0xb0, 0x7a, 0x5d, 0xbb, 0x37, 0xe8, 0x20, 0x20, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12191 = { .name = "ecdsa_brainpoolp256t1_sha256_12191", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12191_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12191_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12191_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1436 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12192 for ECDSA, tcId is 1437 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12192_pubkey[] = { 0x00, 0x58, 0x23, 0x7a, 0x34, 0xf9, 0x3d, 0x8b, 0x70, 0x13, 0xf9, 0x6b, 0x8b, 0xd6, 0x18, 0x30, 0x0a, 0x27, 0x96, 0xca, 0xd9, 0x35, 0x0f, 0x44, 0xe5, 0xbb, 0x89, 0xde, 0xf5, 0xb2, 0x50, 0x89, 0xa9, 0xfb, 0x57, 0xdb, 0x58, 0x0d, 0x12, 0x8b, 0x07, 0xd4, 0xba, 0xd7, 0x28, 0xfa, 0x14, 0x32, 0x89, 0xf1, 0xd5, 0x20, 0x0d, 0x69, 0xb4, 0x97, 0x21, 0xfb, 0x0e, 0xa6, 0x4e, 0xf5, 0x0d, 0x45, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12192_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12192_sig[] = { 0x92, 0xcd, 0xae, 0xd3, 0xe4, 0x84, 0x2b, 0x55, 0x74, 0x5b, 0x13, 0xa8, 0x4d, 0x4a, 0x67, 0xee, 0x8f, 0xa4, 0xec, 0x7c, 0x93, 0x9f, 0x4a, 0x19, 0x42, 0x5e, 0xd0, 0xc8, 0x6b, 0xc3, 0x6f, 0x9c, 0x00, 0x5b, 0x52, 0xa0, 0x95, 0x7f, 0xfc, 0xfc, 0xeb, 0x46, 0x62, 0xfd, 0xd2, 0x1a, 0xf0, 0x84, 0x6f, 0x4c, 0x87, 0x7a, 0x37, 0x89, 0x7b, 0x50, 0xf6, 0x2a, 0xb3, 0x44, 0x46, 0x9d, 0x9e, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12192 = { .name = "ecdsa_brainpoolp256t1_sha256_12192", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12192_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12192_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12192_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1437 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12193 for ECDSA, tcId is 1438 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12193_pubkey[] = { 0x98, 0x94, 0xc2, 0xc5, 0xae, 0x90, 0x9b, 0xc9, 0xf6, 0x9f, 0xde, 0xb1, 0xa9, 0xc1, 0x99, 0x66, 0xc0, 0x9c, 0x63, 0xc8, 0xd7, 0xb8, 0x2a, 0xcb, 0x1a, 0x83, 0xd2, 0x46, 0x51, 0x71, 0x6f, 0x66, 0x49, 0x39, 0xcb, 0x77, 0x69, 0xd7, 0x4f, 0x22, 0x35, 0xad, 0x06, 0x53, 0xe0, 0xd3, 0x31, 0x14, 0x06, 0x2e, 0xbd, 0x90, 0x47, 0x8b, 0xf8, 0xe2, 0x19, 0xd2, 0xcf, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12193_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12193_sig[] = { 0x51, 0x57, 0xcf, 0xa6, 0x42, 0xe8, 0xd3, 0xb7, 0x75, 0x36, 0x84, 0x6a, 0x0f, 0xf6, 0xca, 0xda, 0xea, 0x5f, 0x53, 0x97, 0x4d, 0x7c, 0x55, 0x38, 0x5e, 0x84, 0x59, 0x2a, 0x37, 0xfb, 0xb2, 0x58, 0x71, 0xe1, 0x7e, 0x0a, 0x1c, 0x84, 0x80, 0x5b, 0x2e, 0x67, 0x60, 0xe2, 0xcf, 0xf8, 0xeb, 0x9b, 0x39, 0x6a, 0x09, 0x26, 0x49, 0x05, 0xfd, 0xdb, 0x8d, 0xb1, 0xe2, 0xa7, 0xcb, 0x52, 0x21, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12193 = { .name = "ecdsa_brainpoolp256t1_sha256_12193", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12193_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12193_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12193_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1438 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12194 for ECDSA, tcId is 1439 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12194_pubkey[] = { 0x98, 0x94, 0xc2, 0xc5, 0xae, 0x90, 0x9b, 0xc9, 0xf6, 0x9f, 0xde, 0xb1, 0xa9, 0xc1, 0x99, 0x66, 0xc0, 0x9c, 0x63, 0xc8, 0xd7, 0xb8, 0x2a, 0xcb, 0x1a, 0x83, 0xd2, 0x46, 0x51, 0x71, 0x6f, 0x66, 0x49, 0x39, 0xcb, 0x77, 0x69, 0xd7, 0x4f, 0x22, 0x35, 0xad, 0x06, 0x53, 0xe0, 0xd3, 0x31, 0x14, 0x06, 0x2e, 0xbd, 0x90, 0x47, 0x8b, 0xf8, 0xe2, 0x19, 0xd2, 0xcf, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12194_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12194_sig[] = { 0x61, 0x55, 0x79, 0xb5, 0xfe, 0x86, 0x58, 0x5e, 0xce, 0x10, 0xd0, 0xc1, 0xea, 0xa2, 0xa3, 0x0d, 0x5d, 0x4b, 0x23, 0xb2, 0xc8, 0xc2, 0xba, 0x51, 0xca, 0x83, 0xea, 0x51, 0xa8, 0xf7, 0x3b, 0x36, 0x44, 0x41, 0xfe, 0xac, 0xf1, 0x32, 0xdb, 0x44, 0xe5, 0xd9, 0xd7, 0x4e, 0xf1, 0x83, 0xbd, 0xf8, 0x6d, 0x25, 0xf8, 0xf4, 0x8f, 0x5a, 0xbc, 0x82, 0x86, 0xe0, 0xdd, 0x2f, 0x9d, 0xc0, 0xd1, 0x89, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12194 = { .name = "ecdsa_brainpoolp256t1_sha256_12194", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12194_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12194_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12194_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1439 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12195 for ECDSA, tcId is 1440 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12195_pubkey[] = { 0x98, 0x94, 0xc2, 0xc5, 0xae, 0x90, 0x9b, 0xc9, 0xf6, 0x9f, 0xde, 0xb1, 0xa9, 0xc1, 0x99, 0x66, 0xc0, 0x9c, 0x63, 0xc8, 0xd7, 0xb8, 0x2a, 0xcb, 0x1a, 0x83, 0xd2, 0x46, 0x51, 0x71, 0x6f, 0x66, 0x49, 0x39, 0xcb, 0x77, 0x69, 0xd7, 0x4f, 0x22, 0x35, 0xad, 0x06, 0x53, 0xe0, 0xd3, 0x31, 0x14, 0x06, 0x2e, 0xbd, 0x90, 0x47, 0x8b, 0xf8, 0xe2, 0x19, 0xd2, 0xcf, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12195_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12195_sig[] = { 0x34, 0xe5, 0xd4, 0xab, 0x1b, 0xa1, 0x16, 0xd6, 0x4a, 0x65, 0xb0, 0x98, 0xb2, 0x9c, 0xc7, 0x91, 0x9c, 0x7d, 0xe0, 0x39, 0xf1, 0xe6, 0xc6, 0x2a, 0x2e, 0xd3, 0xf1, 0x80, 0x1c, 0x07, 0x26, 0x3a, 0x69, 0xd9, 0xd5, 0xeb, 0x21, 0x8d, 0xbd, 0x58, 0xae, 0x23, 0xd2, 0x65, 0x3b, 0xdb, 0x80, 0xd9, 0x2d, 0x86, 0x72, 0xe3, 0xc5, 0x18, 0xa5, 0x52, 0x9a, 0x57, 0x4a, 0x94, 0xc0, 0xc9, 0xcc, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12195 = { .name = "ecdsa_brainpoolp256t1_sha256_12195", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12195_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12195_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12195_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1440 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12196 for ECDSA, tcId is 1441 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12196_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x19, 0x31, 0xdc, 0xd6, 0x2f, 0xd3, 0x60, 0x1a, 0x5f, 0x19, 0x7b, 0x62, 0xba, 0xe7, 0x49, 0xd2, 0xf2, 0x8f, 0x7b, 0x2d, 0x02, 0xb8, 0xa6, 0x37, 0x6a, 0xe0, 0x50, 0xa5, 0x46, 0xed, 0xe7, 0x58, 0xcc, 0x39, 0x58, 0x13, 0xb2, 0x8c, 0xcf, 0x2f, 0xb7, 0xca, 0x4f, 0xf2, 0xca, 0x36, 0xb9, 0x63, 0x47, 0x32, 0x48, 0xe0, 0x01, 0xef, 0x51, 0x1a, 0xa6, 0x1f, 0x2f, 0x1b, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12196_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12196_sig[] = { 0x95, 0x72, 0xdf, 0xd4, 0x6d, 0x53, 0x08, 0x75, 0x29, 0x2d, 0xf5, 0xc1, 0x9f, 0x2b, 0x66, 0xf7, 0x6d, 0x2a, 0xb5, 0xe8, 0xc8, 0x59, 0x46, 0x4f, 0xa3, 0x67, 0x12, 0x30, 0x9f, 0x80, 0x4d, 0x00, 0x4f, 0xb2, 0x9d, 0x6d, 0xf7, 0x35, 0x04, 0xfa, 0xbb, 0x2a, 0x11, 0xb4, 0x2b, 0x3a, 0x65, 0xb6, 0x56, 0x8a, 0x67, 0xc0, 0xb8, 0x44, 0x2b, 0x48, 0x73, 0x33, 0x92, 0xa8, 0x0c, 0xfb, 0x9a, 0x69, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12196 = { .name = "ecdsa_brainpoolp256t1_sha256_12196", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12196_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12196_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12196_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1441 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12197 for ECDSA, tcId is 1442 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12197_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x19, 0x31, 0xdc, 0xd6, 0x2f, 0xd3, 0x60, 0x1a, 0x5f, 0x19, 0x7b, 0x62, 0xba, 0xe7, 0x49, 0xd2, 0xf2, 0x8f, 0x7b, 0x2d, 0x02, 0xb8, 0xa6, 0x37, 0x6a, 0xe0, 0x50, 0xa5, 0x46, 0xed, 0xe7, 0x58, 0xcc, 0x39, 0x58, 0x13, 0xb2, 0x8c, 0xcf, 0x2f, 0xb7, 0xca, 0x4f, 0xf2, 0xca, 0x36, 0xb9, 0x63, 0x47, 0x32, 0x48, 0xe0, 0x01, 0xef, 0x51, 0x1a, 0xa6, 0x1f, 0x2f, 0x1b, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12197_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12197_sig[] = { 0x85, 0x02, 0x97, 0x95, 0x72, 0xeb, 0x03, 0x7c, 0xc0, 0x88, 0xe0, 0xb5, 0xd0, 0x0e, 0x8a, 0xe8, 0xa9, 0x59, 0x6f, 0xd2, 0x27, 0x4b, 0xe6, 0x17, 0x0c, 0xef, 0xa4, 0x4b, 0x7f, 0xb7, 0x34, 0x32, 0x71, 0xd7, 0x40, 0xcb, 0xc4, 0xd9, 0x9a, 0xc7, 0x07, 0xc9, 0x81, 0x38, 0xc2, 0x67, 0x6b, 0x6f, 0xfa, 0xbe, 0x05, 0x0d, 0xb7, 0x32, 0x0b, 0x86, 0x9f, 0x3f, 0x05, 0xd4, 0x9a, 0x3a, 0x17, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12197 = { .name = "ecdsa_brainpoolp256t1_sha256_12197", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12197_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12197_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12197_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1442 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12198 for ECDSA, tcId is 1443 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256t1_sha256_12198_pubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0x19, 0x31, 0xdc, 0xd6, 0x2f, 0xd3, 0x60, 0x1a, 0x5f, 0x19, 0x7b, 0x62, 0xba, 0xe7, 0x49, 0xd2, 0xf2, 0x8f, 0x7b, 0x2d, 0x02, 0xb8, 0xa6, 0x37, 0x6a, 0xe0, 0x50, 0xa5, 0x46, 0xed, 0xe7, 0x58, 0xcc, 0x39, 0x58, 0x13, 0xb2, 0x8c, 0xcf, 0x2f, 0xb7, 0xca, 0x4f, 0xf2, 0xca, 0x36, 0xb9, 0x63, 0x47, 0x32, 0x48, 0xe0, 0x01, 0xef, 0x51, 0x1a, 0xa6, 0x1f, 0x2f, 0x1b, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12198_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256t1_sha256_12198_sig[] = { 0x6a, 0xd7, 0xe2, 0xca, 0x67, 0x0e, 0x0c, 0x7f, 0xf8, 0xc5, 0xc6, 0xf0, 0xb4, 0xfc, 0xe2, 0x30, 0xb0, 0x4a, 0x72, 0x9a, 0x11, 0xcb, 0xf0, 0x03, 0xc8, 0xbc, 0xe8, 0x79, 0x55, 0xbc, 0x56, 0xc8, 0x29, 0x71, 0x9b, 0x16, 0x5b, 0xac, 0x68, 0x22, 0xc9, 0x58, 0x28, 0x30, 0xcd, 0x4b, 0x0c, 0x61, 0xe0, 0x3b, 0xfc, 0xdc, 0x27, 0x50, 0xd9, 0x50, 0xed, 0x27, 0x33, 0x0f, 0xdc, 0x81, 0xfe, 0x43, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256t1_sha256_12198 = { .name = "ecdsa_brainpoolp256t1_sha256_12198", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256t1_str_params, .pubkey = ecdsa_brainpoolp256t1_sha256_12198_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256t1_sha256_12198_msg, .msglen = 7, .sig = ecdsa_brainpoolp256t1_sha256_12198_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1443 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) */ /* Test 12199 for ECDSA, tcId is 1444 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12199_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12199_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12199_sig[] = { 0x43, 0xa3, 0xac, 0x2f, 0x3d, 0x2b, 0x4d, 0x37, 0x23, 0xa9, 0x79, 0x30, 0xb0, 0x23, 0xee, 0x73, 0x01, 0x0a, 0x7c, 0xf8, 0xd2, 0xa9, 0x93, 0x72, 0xf3, 0x13, 0x2b, 0xd7, 0xd9, 0xc8, 0x35, 0x74, 0xde, 0x3a, 0xb8, 0x65, 0x25, 0xef, 0xc4, 0xee, 0x2c, 0x59, 0x79, 0x9d, 0x5f, 0xf7, 0xef, 0xb4, 0x34, 0xf5, 0x9a, 0x3e, 0xa9, 0xf5, 0x26, 0x7f, 0x84, 0x58, 0xaf, 0xda, 0xa3, 0x87, 0x3e, 0x23, 0x36, 0xe0, 0xab, 0x8a, 0x40, 0xca, 0x1b, 0x79, 0x7c, 0xbd, 0x97, 0x7d, 0x19, 0x2f, 0x20, 0x24, 0xf9, 0xeb, 0x8d, 0x39, 0xb3, 0x7b, 0x9a, 0x23, 0x8f, 0x20, 0x8d, 0x66, 0xba, 0xcd, 0x27, 0xbf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12199 = { .name = "ecdsa_brainpoolp384r1_sha384_12199", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12199_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12199_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12199_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1444 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12200 for ECDSA, tcId is 1445 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12200_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12200_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12200_sig[] = { 0x35, 0x31, 0xad, 0xa2, 0x5b, 0x8d, 0x9a, 0xf9, 0xb8, 0x7e, 0x52, 0x24, 0xcd, 0x6a, 0x6d, 0x95, 0x6c, 0x17, 0xdc, 0x32, 0x3e, 0xf8, 0x98, 0x0f, 0x49, 0x7a, 0x6e, 0x7e, 0x44, 0xc8, 0x3d, 0x69, 0xb7, 0x4d, 0xe7, 0x91, 0xd6, 0x2b, 0xce, 0xac, 0xaf, 0xf7, 0x37, 0x88, 0x63, 0xdd, 0x72, 0x5b, 0x45, 0x9d, 0x15, 0x53, 0x93, 0x99, 0x40, 0x93, 0x80, 0xaf, 0x99, 0xd5, 0x60, 0xc5, 0x61, 0x21, 0x7d, 0xaa, 0x5c, 0x53, 0x97, 0x29, 0x45, 0x30, 0x67, 0xdd, 0x1a, 0xa4, 0xbd, 0x9d, 0xf2, 0xb5, 0x34, 0x92, 0x0f, 0x0d, 0x62, 0x13, 0x26, 0x1e, 0xce, 0xa1, 0x6f, 0x0e, 0xd6, 0x85, 0x36, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12200 = { .name = "ecdsa_brainpoolp384r1_sha384_12200", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12200_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12200_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12200_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1445 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12201 for ECDSA, tcId is 1446 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12201_pubkey[] = { 0x46, 0x21, 0x17, 0xd2, 0xe3, 0x3a, 0x7d, 0xb1, 0xb9, 0x5c, 0x8a, 0x6a, 0x3c, 0x79, 0x82, 0xf8, 0x3d, 0xa9, 0x68, 0x17, 0xe7, 0x49, 0x71, 0x8c, 0xae, 0xe7, 0xb6, 0xaa, 0x9c, 0x9d, 0xa4, 0xe8, 0xf2, 0xff, 0x79, 0x51, 0x67, 0x4e, 0xed, 0x2b, 0x56, 0x9a, 0xb8, 0x46, 0xf5, 0x90, 0x02, 0xa8, 0x50, 0xe6, 0x60, 0x6a, 0x97, 0x26, 0xa9, 0x20, 0x9c, 0x9e, 0x94, 0x5f, 0xbf, 0x6c, 0xbb, 0xc9, 0xa4, 0x87, 0xc4, 0xa4, 0xd8, 0x1c, 0x52, 0xac, 0x36, 0x84, 0xc2, 0x6c, 0x33, 0x92, 0xb9, 0xbd, 0x24, 0xf7, 0x18, 0x48, 0x21, 0xbe, 0x06, 0xf6, 0x44, 0x8b, 0x24, 0xa8, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12201_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12201_sig[] = { 0x43, 0x8a, 0x0c, 0xff, 0x9f, 0xcf, 0xcf, 0x58, 0x7f, 0x8c, 0x40, 0x77, 0x5a, 0xd4, 0x4e, 0xa4, 0xb0, 0xed, 0x69, 0xf2, 0xd5, 0x47, 0xbe, 0xfe, 0x29, 0x5d, 0x1f, 0xb9, 0xc2, 0x4d, 0xdc, 0xb9, 0x7f, 0x22, 0x80, 0x27, 0xdf, 0x55, 0x2a, 0x06, 0xbf, 0x65, 0x7b, 0x4c, 0x20, 0x27, 0x26, 0x15, 0x5e, 0x15, 0x76, 0x30, 0xbb, 0x74, 0x4f, 0xc8, 0xe7, 0xf7, 0x59, 0x01, 0xde, 0x49, 0x8e, 0x5a, 0xf0, 0xb5, 0x51, 0x1d, 0xfe, 0xee, 0x0c, 0x4c, 0x1f, 0x2e, 0x5c, 0x4a, 0xa0, 0x12, 0x9d, 0xe5, 0x7b, 0x87, 0xa2, 0xa1, 0x3e, 0xa5, 0x9d, 0x18, 0x7d, 0x51, 0xcb, 0xeb, 0x6e, 0xf2, 0x24, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12201 = { .name = "ecdsa_brainpoolp384r1_sha384_12201", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12201_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12201_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12201_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1446 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12202 for ECDSA, tcId is 1447 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12202_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12202_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12202_sig[] = { 0x16, 0x49, 0x6c, 0x08, 0xc3, 0x07, 0x67, 0x73, 0xfc, 0xd8, 0x41, 0xa5, 0xe2, 0x5e, 0x1a, 0x87, 0x10, 0x8e, 0x0b, 0xa9, 0x0f, 0x97, 0x27, 0xf5, 0x39, 0x03, 0x4b, 0xd2, 0xcf, 0x68, 0x8e, 0x01, 0xa9, 0x55, 0x68, 0x6a, 0x15, 0x11, 0x2e, 0x05, 0x90, 0xfc, 0x91, 0xe3, 0x99, 0x5f, 0xf5, 0xf8, 0x31, 0xb1, 0xb7, 0x33, 0x8f, 0x74, 0xad, 0xba, 0x33, 0x71, 0x2a, 0x83, 0xa7, 0xc6, 0x85, 0xe7, 0xcd, 0x5f, 0x3b, 0xe8, 0x4e, 0xf9, 0x51, 0xec, 0xad, 0x50, 0xfa, 0xcb, 0x7c, 0x6e, 0xc3, 0x93, 0xa3, 0xba, 0xc5, 0x2e, 0xa7, 0xb1, 0x21, 0x2b, 0xd9, 0x2f, 0x4f, 0x45, 0xa9, 0xf8, 0x51, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12202 = { .name = "ecdsa_brainpoolp384r1_sha384_12202", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12202_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12202_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12202_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1447 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12203 for ECDSA, tcId is 1448 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12203_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12203_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12203_sig[] = { 0x87, 0xf3, 0x09, 0x02, 0x92, 0xe7, 0x9b, 0x72, 0x2c, 0xde, 0x5a, 0xed, 0xaf, 0xa4, 0x24, 0x4f, 0x6e, 0xb4, 0x60, 0xa2, 0x80, 0xe2, 0xe0, 0x50, 0x39, 0x9b, 0x9d, 0x80, 0x23, 0x91, 0xad, 0x50, 0x21, 0x08, 0x70, 0x4a, 0x3c, 0x0b, 0xb9, 0xf9, 0xae, 0x57, 0x1c, 0x3f, 0x7d, 0xec, 0x6c, 0x0b, 0x89, 0xae, 0x00, 0x43, 0xde, 0x38, 0xa5, 0x85, 0xa1, 0x63, 0x2c, 0x72, 0x11, 0xb7, 0x83, 0x03, 0xaf, 0xa3, 0xf8, 0x93, 0x61, 0x54, 0xa6, 0xe6, 0x5a, 0x6f, 0x72, 0x9c, 0x3b, 0x1e, 0xc6, 0x6a, 0x17, 0x75, 0xaa, 0x46, 0x5a, 0xf8, 0xee, 0xd6, 0xdf, 0xea, 0xa5, 0xba, 0x98, 0xce, 0xdb, 0x41, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12203 = { .name = "ecdsa_brainpoolp384r1_sha384_12203", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12203_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12203_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12203_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1448 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12204 for ECDSA, tcId is 1449 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12204_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x81, 0xee, 0x59, 0x01, 0xb7, 0x1a, 0x59, 0xa4, 0xf7, 0xc8, 0x17, 0x4a, 0xe0, 0x5f, 0xe3, 0xba, 0x00, 0xf6, 0x99, 0xdc, 0xbc, 0x3c, 0x92, 0x33, 0x26, 0x5c, 0x64, 0x05, 0x87, 0xb3, 0xc1, 0x65, 0x59, 0x3c, 0x2d, 0x76, 0xb5, 0xff, 0xc4, 0xb8, 0xdc, 0xbc, 0xb0, 0xe6, 0x55, 0x3a, 0x0e, 0x5d, 0x14, 0xf2, 0xd0, 0xe8, 0xef, 0xe2, 0xbd, 0x8a, 0xa2, 0x60, 0xd8, 0xac, 0xe0, 0x6b, 0xf9, 0x64, 0xc5, 0x1b, 0xab, 0x82, 0x07, 0x07, 0x0a, 0x2d, 0x30, 0x41, 0x0b, 0xb6, 0xb8, 0x7a, 0xee, 0xcb, 0x7f, 0xff, 0x80, 0x2f, 0x2d, 0x4e, 0xa3, 0xca, 0xf6, 0xe0, 0xe7, 0xe7, 0x26, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12204_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12204_sig[] = { 0x72, 0x08, 0x22, 0xab, 0xef, 0xa9, 0x12, 0x65, 0xa7, 0xb8, 0xd4, 0x46, 0xec, 0x3b, 0xc4, 0x05, 0xfd, 0x19, 0x21, 0x78, 0xaa, 0x1b, 0x85, 0xdd, 0x66, 0x33, 0x96, 0xa8, 0x96, 0xa3, 0x2c, 0x11, 0x9e, 0x64, 0xb1, 0xa2, 0x08, 0x43, 0xf8, 0x1e, 0xdd, 0x43, 0xc0, 0x37, 0x09, 0xb8, 0xdb, 0xc6, 0x20, 0x6a, 0xe9, 0x5b, 0xb1, 0x8d, 0x2d, 0x38, 0x44, 0xa3, 0x93, 0x40, 0x87, 0x2e, 0xdb, 0xa1, 0x61, 0x1e, 0x3e, 0xa0, 0xe8, 0x4c, 0xea, 0x7c, 0xb6, 0xcf, 0xf2, 0x82, 0xaf, 0x41, 0x4d, 0x8b, 0x5a, 0xa0, 0xbe, 0x8a, 0xab, 0xc1, 0xb5, 0x1b, 0x71, 0x21, 0xd4, 0x26, 0x91, 0x6b, 0x01, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12204 = { .name = "ecdsa_brainpoolp384r1_sha384_12204", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12204_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12204_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12204_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1449 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12205 for ECDSA, tcId is 1450 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12205_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12205_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12205_sig[] = { 0x1e, 0x50, 0x27, 0xfc, 0xc6, 0x30, 0xaa, 0x08, 0x75, 0x0a, 0x47, 0x25, 0x91, 0x9d, 0xd9, 0x07, 0x24, 0x22, 0xa2, 0x1a, 0xca, 0x9d, 0x33, 0x26, 0xbe, 0xc3, 0xe6, 0xac, 0x04, 0x0b, 0xa9, 0x78, 0x49, 0x51, 0xb1, 0xfd, 0xa6, 0xf5, 0x88, 0xe6, 0x0d, 0xcb, 0x55, 0x0b, 0x75, 0x79, 0x3a, 0x4e, 0x0d, 0xf3, 0x22, 0x46, 0x41, 0xf6, 0x80, 0x4f, 0x4d, 0x1b, 0xf9, 0x51, 0x05, 0x1e, 0x08, 0x7c, 0xe1, 0xfa, 0x73, 0x65, 0xc4, 0x3b, 0xd2, 0x78, 0x78, 0x62, 0x68, 0x33, 0xf0, 0x91, 0x90, 0xcc, 0x0a, 0x7f, 0xa2, 0x9b, 0x16, 0xbc, 0x2c, 0xa0, 0xd3, 0x4f, 0xd0, 0x66, 0x0d, 0x24, 0x71, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12205 = { .name = "ecdsa_brainpoolp384r1_sha384_12205", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12205_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12205_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12205_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1450 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12206 for ECDSA, tcId is 1451 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12206_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12206_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12206_sig[] = { 0x4e, 0x61, 0xe3, 0x47, 0x40, 0xa9, 0xf6, 0xdb, 0x08, 0x54, 0xfa, 0xf2, 0x05, 0x71, 0x9a, 0x3d, 0x98, 0xef, 0x64, 0x4b, 0x86, 0x24, 0x1b, 0x85, 0x8f, 0xa2, 0x29, 0x59, 0xc0, 0x43, 0x95, 0x57, 0x8b, 0xef, 0x7b, 0xe3, 0x50, 0x36, 0xae, 0x7a, 0x9f, 0xfe, 0xb9, 0xa2, 0x17, 0x33, 0x11, 0xf4, 0x1e, 0x96, 0x7c, 0x3b, 0x60, 0x71, 0xd3, 0x75, 0x60, 0xfd, 0x64, 0xa4, 0xfe, 0x09, 0x21, 0xb1, 0xd6, 0x00, 0xf6, 0x0d, 0x88, 0x3f, 0xde, 0xc8, 0x16, 0x83, 0x61, 0x76, 0xc5, 0xe6, 0x7a, 0xd0, 0x51, 0x82, 0xaa, 0x08, 0x0c, 0x7e, 0x21, 0x84, 0xc0, 0x71, 0x00, 0x50, 0xd5, 0x23, 0xf0, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12206 = { .name = "ecdsa_brainpoolp384r1_sha384_12206", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12206_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12206_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12206_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1451 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12207 for ECDSA, tcId is 1452 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12207_pubkey[] = { 0x69, 0xeb, 0xf3, 0x32, 0xe1, 0xeb, 0x24, 0x55, 0x32, 0x4a, 0x75, 0x72, 0xa1, 0x79, 0x77, 0xa4, 0xe2, 0x95, 0x51, 0x08, 0xee, 0x8b, 0xd8, 0x1b, 0xd6, 0xd1, 0xf5, 0x55, 0xd6, 0x08, 0x68, 0x7f, 0x5b, 0xbb, 0x39, 0x85, 0x8e, 0xbe, 0xe3, 0x04, 0x98, 0x5b, 0xaa, 0x7d, 0x09, 0xc8, 0x30, 0xbb, 0x67, 0x2b, 0x9c, 0x96, 0x68, 0x4d, 0xfc, 0x00, 0x7f, 0x01, 0x5e, 0x39, 0xcd, 0xad, 0xa9, 0xfe, 0x16, 0xdb, 0x50, 0x22, 0xbf, 0xd1, 0x73, 0x34, 0x8c, 0xaa, 0xfc, 0x52, 0x86, 0x84, 0x62, 0x1f, 0x97, 0xfb, 0xa2, 0x4f, 0x2c, 0x30, 0xe3, 0xdc, 0x72, 0x87, 0x72, 0xe8, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12207_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12207_sig[] = { 0x2c, 0x30, 0x90, 0xc5, 0x81, 0xe5, 0x75, 0xda, 0x58, 0xa8, 0xf6, 0x59, 0xf7, 0x4c, 0x5e, 0xee, 0x56, 0x64, 0x00, 0xeb, 0x1d, 0x91, 0xde, 0x0a, 0x95, 0x0e, 0x78, 0x75, 0x42, 0xe6, 0x57, 0x2f, 0x73, 0xb9, 0xf6, 0xd4, 0xf8, 0x1f, 0x1c, 0x8e, 0x42, 0xf9, 0xe4, 0x60, 0xda, 0xc3, 0xc1, 0xdc, 0x75, 0x6b, 0x1b, 0x69, 0x3e, 0x7f, 0xe0, 0x66, 0x86, 0x70, 0x8c, 0x2a, 0x60, 0x98, 0x54, 0xac, 0xcd, 0x21, 0xe3, 0x19, 0x5d, 0x84, 0xb7, 0x2c, 0x11, 0xc8, 0x73, 0x90, 0x8d, 0x17, 0x5d, 0xfc, 0x00, 0xc0, 0x0e, 0xbb, 0xdf, 0x8e, 0x2b, 0xb6, 0x97, 0x0f, 0x2f, 0x19, 0x78, 0x53, 0x03, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12207 = { .name = "ecdsa_brainpoolp384r1_sha384_12207", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12207_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12207_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12207_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1452 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12208 for ECDSA, tcId is 1453 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12208_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12208_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12208_sig[] = { 0x09, 0x2f, 0x0e, 0xe1, 0xfe, 0xeb, 0x79, 0xc0, 0x54, 0xae, 0x36, 0x23, 0x5f, 0x87, 0x17, 0xe9, 0xee, 0x72, 0xb4, 0x66, 0xb1, 0x70, 0x4d, 0x4f, 0xa7, 0x8a, 0xdd, 0xfc, 0xd1, 0x35, 0x18, 0xa6, 0x4d, 0xb2, 0xb2, 0xfd, 0xb0, 0x64, 0x39, 0xac, 0xbc, 0x4c, 0x04, 0x5f, 0xb2, 0xc2, 0x3c, 0x3a, 0x23, 0x71, 0xca, 0x6d, 0x36, 0xf4, 0x26, 0x61, 0x62, 0xee, 0x5c, 0x65, 0x7c, 0x71, 0xce, 0xa3, 0x5d, 0xce, 0xc3, 0x63, 0x2c, 0x5b, 0x22, 0x0a, 0x6f, 0x23, 0xac, 0xe1, 0xba, 0x65, 0x62, 0xa8, 0x41, 0xae, 0xee, 0xef, 0xe8, 0x7a, 0x79, 0x98, 0xad, 0xfa, 0xf1, 0x85, 0xb8, 0x55, 0x8e, 0x4a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12208 = { .name = "ecdsa_brainpoolp384r1_sha384_12208", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12208_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12208_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12208_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1453 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12209 for ECDSA, tcId is 1454 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12209_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12209_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12209_sig[] = { 0x6c, 0x8f, 0x4b, 0xe6, 0x41, 0xaf, 0xaf, 0x5b, 0xf9, 0x1c, 0xe0, 0x89, 0x74, 0xd2, 0x84, 0xec, 0xe6, 0xae, 0xc7, 0x47, 0x92, 0x24, 0x72, 0x29, 0xfa, 0x86, 0xc6, 0x59, 0x7e, 0xed, 0x3f, 0xb5, 0x07, 0xb7, 0x12, 0xbb, 0x77, 0xaf, 0x02, 0x26, 0xe1, 0xbb, 0xb3, 0xba, 0xd6, 0x32, 0xb0, 0xd8, 0x77, 0x59, 0x54, 0xfe, 0x8b, 0xf9, 0x36, 0x15, 0x7b, 0x7a, 0xb7, 0xa6, 0x83, 0xf6, 0xdc, 0x18, 0x38, 0xa8, 0x71, 0x82, 0x00, 0x62, 0x1b, 0xc8, 0xbf, 0x2f, 0x32, 0xb7, 0x78, 0xf6, 0xc8, 0xe8, 0xc6, 0x56, 0x53, 0x2b, 0x50, 0xde, 0x39, 0xac, 0x22, 0xd2, 0x2b, 0x37, 0xdc, 0xcf, 0xd1, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12209 = { .name = "ecdsa_brainpoolp384r1_sha384_12209", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12209_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12209_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12209_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1454 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12210 for ECDSA, tcId is 1455 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12210_pubkey[] = { 0x4f, 0xb5, 0x68, 0x86, 0x66, 0x67, 0x3f, 0x10, 0x42, 0x87, 0x42, 0x8b, 0x5b, 0xae, 0x6b, 0xd8, 0x2a, 0x5c, 0x69, 0xb5, 0x23, 0x76, 0x2a, 0xa7, 0x39, 0xb2, 0x45, 0x94, 0xa9, 0xa8, 0x12, 0x97, 0x31, 0x8d, 0xf6, 0x13, 0xf6, 0xb7, 0x37, 0x9a, 0xf4, 0x79, 0x79, 0xae, 0x7f, 0xff, 0xff, 0xff, 0x7e, 0x2d, 0x32, 0x5b, 0x41, 0xfe, 0x83, 0x1a, 0x23, 0xcb, 0x69, 0x4c, 0xb8, 0x0a, 0x30, 0x11, 0x9c, 0x19, 0x61, 0x43, 0x53, 0x6e, 0xe3, 0x34, 0x41, 0x6b, 0xa4, 0x37, 0xa4, 0x19, 0x05, 0x4c, 0x18, 0x0a, 0x94, 0x51, 0x54, 0x59, 0x6b, 0x83, 0xd7, 0xf7, 0xc3, 0xa6, 0xb6, 0x05, 0x96, 0x45, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12210_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12210_sig[] = { 0x76, 0xe5, 0xc0, 0x75, 0x82, 0x17, 0x74, 0x00, 0xdf, 0x45, 0x31, 0x14, 0xfe, 0xd7, 0x46, 0xf4, 0x07, 0x04, 0x19, 0x78, 0x97, 0xb4, 0xca, 0x21, 0xb7, 0x2e, 0x5b, 0x44, 0xd4, 0xca, 0x40, 0xcf, 0xca, 0xa5, 0x5e, 0x44, 0x46, 0x35, 0x5c, 0x91, 0xea, 0x97, 0x67, 0xf3, 0x8c, 0x81, 0x72, 0xdf, 0x0c, 0x6d, 0xd7, 0x3e, 0xef, 0xbb, 0x4c, 0x06, 0xe8, 0x23, 0x22, 0x4d, 0x8e, 0xfa, 0xa3, 0xee, 0x93, 0x4e, 0x4a, 0x97, 0xee, 0xd2, 0x83, 0x35, 0x13, 0xb4, 0xd7, 0x35, 0xed, 0x06, 0xeb, 0x55, 0x0b, 0x2a, 0x5f, 0xa7, 0xf8, 0x66, 0x13, 0xd6, 0x27, 0xd9, 0xdb, 0x46, 0x6a, 0xfa, 0x66, 0x46, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12210 = { .name = "ecdsa_brainpoolp384r1_sha384_12210", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12210_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12210_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12210_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1455 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12211 for ECDSA, tcId is 1456 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12211_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x70, 0xc1, 0x22, 0xd8, 0x08, 0x51, 0x5c, 0xe5, 0x38, 0x3d, 0x1f, 0x75, 0x3f, 0x95, 0x02, 0x3a, 0x64, 0xad, 0xee, 0x7b, 0x70, 0x72, 0xbc, 0xbf, 0x43, 0xff, 0xbd, 0xfd, 0xfb, 0x05, 0x06, 0x0d, 0x6a, 0x8f, 0x5e, 0xa5, 0x02, 0x2a, 0x6a, 0x0e, 0x62, 0x45, 0x19, 0x02, 0x35, 0x59, 0x9e, 0xa8, 0x31, 0xaa, 0x58, 0x57, 0xa0, 0xa1, 0x18, 0xd4, 0x87, 0x1e, 0x8a, 0x86, 0xae, 0xe2, 0x96, 0x5a, 0xfb, 0xdc, 0xfe, 0x3f, 0xb5, 0x0e, 0x5e, 0x7c, 0x94, 0x67, 0x2a, 0x63, 0x67, 0x2e, 0xaf, 0x26, 0x38, 0x4e, 0xcf, 0xa8, 0xd7, 0xa7, 0x85, 0x12, 0xd6, 0xa6, 0xc6, 0x3d, 0x86, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12211_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12211_sig[] = { 0x49, 0x5c, 0x7d, 0x5f, 0x26, 0x2a, 0xd7, 0x70, 0xf5, 0xf2, 0x23, 0xcb, 0xf8, 0x0d, 0x0c, 0x9e, 0x25, 0x6c, 0x41, 0xd1, 0x9b, 0xa9, 0xad, 0x25, 0x1f, 0xcd, 0x95, 0x89, 0x15, 0x43, 0x4c, 0x56, 0xc7, 0xf6, 0x0d, 0xb2, 0xf2, 0x69, 0xb8, 0xb6, 0xaa, 0x49, 0xff, 0x7a, 0x03, 0x14, 0xf5, 0xb1, 0x26, 0x24, 0x8e, 0x93, 0x0f, 0x04, 0xd0, 0x67, 0x98, 0xf4, 0x47, 0xad, 0xe6, 0x0a, 0xc8, 0x84, 0x39, 0xa7, 0xb1, 0xe2, 0xbd, 0x98, 0x7c, 0x03, 0xb1, 0x7d, 0xdd, 0x35, 0x7c, 0x24, 0x82, 0xc0, 0x6d, 0x81, 0xe0, 0xee, 0xc7, 0x20, 0xab, 0x51, 0x80, 0xfe, 0xfc, 0xbf, 0x2a, 0x95, 0xd5, 0xa6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12211 = { .name = "ecdsa_brainpoolp384t1_sha384_12211", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12211_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12211_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12211_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1456 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12212 for ECDSA, tcId is 1457 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12212_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x70, 0xc1, 0x22, 0xd8, 0x08, 0x51, 0x5c, 0xe5, 0x38, 0x3d, 0x1f, 0x75, 0x3f, 0x95, 0x02, 0x3a, 0x64, 0xad, 0xee, 0x7b, 0x70, 0x72, 0xbc, 0xbf, 0x43, 0xff, 0xbd, 0xfd, 0xfb, 0x05, 0x06, 0x0d, 0x6a, 0x8f, 0x5e, 0xa5, 0x02, 0x2a, 0x6a, 0x0e, 0x62, 0x45, 0x19, 0x02, 0x35, 0x59, 0x9e, 0xa8, 0x31, 0xaa, 0x58, 0x57, 0xa0, 0xa1, 0x18, 0xd4, 0x87, 0x1e, 0x8a, 0x86, 0xae, 0xe2, 0x96, 0x5a, 0xfb, 0xdc, 0xfe, 0x3f, 0xb5, 0x0e, 0x5e, 0x7c, 0x94, 0x67, 0x2a, 0x63, 0x67, 0x2e, 0xaf, 0x26, 0x38, 0x4e, 0xcf, 0xa8, 0xd7, 0xa7, 0x85, 0x12, 0xd6, 0xa6, 0xc6, 0x3d, 0x86, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12212_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12212_sig[] = { 0x59, 0x32, 0x6e, 0xd8, 0x83, 0x03, 0xd6, 0xdd, 0x31, 0xdd, 0x7b, 0x4c, 0x7e, 0x30, 0x33, 0x71, 0x72, 0xac, 0x4a, 0x9c, 0x35, 0x11, 0xc4, 0x80, 0x5c, 0x20, 0x94, 0x37, 0x4d, 0xda, 0xd1, 0x51, 0x91, 0xbb, 0xdd, 0x3f, 0xe7, 0xa5, 0xe8, 0x6a, 0x4f, 0xb9, 0xd0, 0xc4, 0x62, 0x16, 0x49, 0x2c, 0x36, 0xdf, 0xed, 0xf3, 0x41, 0x92, 0x1a, 0xfe, 0x9e, 0x31, 0x58, 0xb4, 0x4a, 0x7d, 0xb7, 0xab, 0x37, 0x0e, 0x2c, 0x43, 0x49, 0x6a, 0x34, 0xd0, 0x9f, 0xa8, 0x8a, 0x4e, 0x8c, 0x8f, 0xb0, 0xce, 0x8d, 0x93, 0x3c, 0x08, 0xc3, 0x9e, 0xa2, 0x75, 0x03, 0x19, 0x9e, 0x9a, 0x63, 0x2d, 0x22, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12212 = { .name = "ecdsa_brainpoolp384t1_sha384_12212", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12212_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12212_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12212_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1457 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12213 for ECDSA, tcId is 1458 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12213_pubkey[] = { 0x8c, 0xb9, 0x1e, 0x70, 0xc1, 0x22, 0xd8, 0x08, 0x51, 0x5c, 0xe5, 0x38, 0x3d, 0x1f, 0x75, 0x3f, 0x95, 0x02, 0x3a, 0x64, 0xad, 0xee, 0x7b, 0x70, 0x72, 0xbc, 0xbf, 0x43, 0xff, 0xbd, 0xfd, 0xfb, 0x05, 0x06, 0x0d, 0x6a, 0x8f, 0x5e, 0xa5, 0x02, 0x2a, 0x6a, 0x0e, 0x62, 0x45, 0x19, 0x02, 0x35, 0x59, 0x9e, 0xa8, 0x31, 0xaa, 0x58, 0x57, 0xa0, 0xa1, 0x18, 0xd4, 0x87, 0x1e, 0x8a, 0x86, 0xae, 0xe2, 0x96, 0x5a, 0xfb, 0xdc, 0xfe, 0x3f, 0xb5, 0x0e, 0x5e, 0x7c, 0x94, 0x67, 0x2a, 0x63, 0x67, 0x2e, 0xaf, 0x26, 0x38, 0x4e, 0xcf, 0xa8, 0xd7, 0xa7, 0x85, 0x12, 0xd6, 0xa6, 0xc6, 0x3d, 0x86, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12213_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12213_sig[] = { 0x5c, 0x53, 0xe8, 0xfc, 0x75, 0xfd, 0x33, 0x8f, 0x2e, 0x28, 0xbb, 0x88, 0x6f, 0xa3, 0xc8, 0x8b, 0x09, 0x39, 0x5a, 0x66, 0xe8, 0xa4, 0x52, 0x8d, 0xe5, 0x13, 0x75, 0xc2, 0x11, 0xf0, 0xe1, 0xc7, 0xee, 0x04, 0x13, 0x4d, 0xb0, 0x6f, 0x6c, 0xae, 0xd4, 0x26, 0x5b, 0xe6, 0x91, 0xc4, 0x34, 0x71, 0x51, 0xac, 0x81, 0x5c, 0x37, 0x7e, 0x6a, 0xf0, 0x3f, 0xe1, 0xde, 0x6d, 0xb9, 0x5c, 0xa6, 0xcb, 0xac, 0x16, 0xe8, 0xb3, 0xd0, 0xb6, 0x38, 0x4f, 0x15, 0x3a, 0x4f, 0x79, 0x52, 0xb6, 0x49, 0x23, 0x68, 0x32, 0x66, 0xd3, 0x00, 0x38, 0xd1, 0x46, 0x5e, 0x40, 0x0d, 0x63, 0x45, 0xd5, 0x13, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12213 = { .name = "ecdsa_brainpoolp384t1_sha384_12213", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12213_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12213_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12213_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1458 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12214 for ECDSA, tcId is 1459 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12214_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x4a, 0xc5, 0xb5, 0x91, 0x40, 0xcd, 0x64, 0x06, 0x05, 0x0b, 0x0d, 0x81, 0x34, 0x11, 0xa1, 0x8e, 0x4a, 0x84, 0x49, 0x59, 0x6b, 0x1f, 0xab, 0xd3, 0x6f, 0xc4, 0x9e, 0x44, 0x78, 0x11, 0x7d, 0xb2, 0xea, 0x52, 0x2c, 0xca, 0xa4, 0x3c, 0xc1, 0xbe, 0xaa, 0x9a, 0x18, 0xa3, 0x5f, 0xbf, 0x6d, 0xec, 0x1a, 0x4d, 0x2a, 0x8b, 0xc7, 0xb4, 0xc3, 0x9c, 0xee, 0xda, 0x71, 0x08, 0x06, 0x81, 0x68, 0xa9, 0x4e, 0x87, 0x16, 0x1d, 0xfd, 0xd3, 0x04, 0x0d, 0xf9, 0xf6, 0xda, 0xe4, 0xd7, 0xeb, 0x5a, 0x88, 0x28, 0x6d, 0x01, 0x4c, 0x92, 0xcf, 0xe0, 0x09, 0x90, 0x2b, 0x34, 0x63, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12214_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12214_sig[] = { 0x0e, 0x97, 0x1f, 0xff, 0xfd, 0x7b, 0x86, 0xa2, 0x16, 0xcf, 0x2e, 0x8c, 0x22, 0x67, 0xeb, 0xfd, 0xbf, 0xff, 0xe3, 0x3c, 0xc9, 0x1a, 0x57, 0x8a, 0xbd, 0xb3, 0xb0, 0x65, 0xa3, 0x38, 0x29, 0xb1, 0xe8, 0x5d, 0x77, 0xa8, 0x34, 0x90, 0xbd, 0x86, 0x2b, 0x48, 0x45, 0x45, 0x37, 0x32, 0x76, 0xe4, 0x1d, 0xee, 0x3a, 0x5b, 0x10, 0x21, 0xe5, 0xd7, 0xf2, 0xf6, 0x28, 0x3b, 0xe4, 0xc3, 0x77, 0x49, 0x20, 0x00, 0x89, 0xaf, 0x30, 0x39, 0x84, 0x7e, 0xe2, 0xd9, 0xd6, 0x2a, 0xbf, 0xe3, 0x61, 0x44, 0xe6, 0xde, 0x96, 0x90, 0x71, 0x4b, 0xd9, 0x31, 0x53, 0x5d, 0x73, 0xf8, 0x72, 0xf5, 0x50, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12214 = { .name = "ecdsa_brainpoolp384t1_sha384_12214", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12214_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12214_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12214_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1459 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12215 for ECDSA, tcId is 1460 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12215_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x4a, 0xc5, 0xb5, 0x91, 0x40, 0xcd, 0x64, 0x06, 0x05, 0x0b, 0x0d, 0x81, 0x34, 0x11, 0xa1, 0x8e, 0x4a, 0x84, 0x49, 0x59, 0x6b, 0x1f, 0xab, 0xd3, 0x6f, 0xc4, 0x9e, 0x44, 0x78, 0x11, 0x7d, 0xb2, 0xea, 0x52, 0x2c, 0xca, 0xa4, 0x3c, 0xc1, 0xbe, 0xaa, 0x9a, 0x18, 0xa3, 0x5f, 0xbf, 0x6d, 0xec, 0x1a, 0x4d, 0x2a, 0x8b, 0xc7, 0xb4, 0xc3, 0x9c, 0xee, 0xda, 0x71, 0x08, 0x06, 0x81, 0x68, 0xa9, 0x4e, 0x87, 0x16, 0x1d, 0xfd, 0xd3, 0x04, 0x0d, 0xf9, 0xf6, 0xda, 0xe4, 0xd7, 0xeb, 0x5a, 0x88, 0x28, 0x6d, 0x01, 0x4c, 0x92, 0xcf, 0xe0, 0x09, 0x90, 0x2b, 0x34, 0x63, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12215_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12215_sig[] = { 0x70, 0x80, 0xb7, 0x0e, 0x60, 0xeb, 0x3b, 0xf5, 0x53, 0x85, 0x55, 0x55, 0x4a, 0xe8, 0xb1, 0x35, 0xec, 0x63, 0x78, 0x61, 0x0e, 0x5f, 0xe1, 0xc9, 0xe3, 0xd1, 0x64, 0x6b, 0x61, 0xec, 0x28, 0xf5, 0x1e, 0x7f, 0xe7, 0xed, 0x9f, 0xb1, 0x87, 0x17, 0x64, 0x1e, 0x7d, 0xeb, 0xb9, 0x0e, 0xb6, 0x47, 0x17, 0xd4, 0x4c, 0xc6, 0x0e, 0xf9, 0xd9, 0xd0, 0x0f, 0x36, 0x72, 0xfb, 0x10, 0x1f, 0x0e, 0x2d, 0x76, 0xa4, 0x72, 0xd3, 0x41, 0x81, 0xa6, 0x07, 0xa1, 0x3e, 0xb5, 0x87, 0x56, 0x64, 0x8b, 0xa0, 0x55, 0x5d, 0xae, 0x6a, 0xcb, 0x35, 0x7d, 0x3c, 0xd5, 0xe3, 0x0e, 0x77, 0x58, 0x88, 0x4d, 0x42, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12215 = { .name = "ecdsa_brainpoolp384t1_sha384_12215", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12215_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12215_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12215_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1460 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12216 for ECDSA, tcId is 1461 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12216_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x4a, 0xc5, 0xb5, 0x91, 0x40, 0xcd, 0x64, 0x06, 0x05, 0x0b, 0x0d, 0x81, 0x34, 0x11, 0xa1, 0x8e, 0x4a, 0x84, 0x49, 0x59, 0x6b, 0x1f, 0xab, 0xd3, 0x6f, 0xc4, 0x9e, 0x44, 0x78, 0x11, 0x7d, 0xb2, 0xea, 0x52, 0x2c, 0xca, 0xa4, 0x3c, 0xc1, 0xbe, 0xaa, 0x9a, 0x18, 0xa3, 0x5f, 0xbf, 0x6d, 0xec, 0x1a, 0x4d, 0x2a, 0x8b, 0xc7, 0xb4, 0xc3, 0x9c, 0xee, 0xda, 0x71, 0x08, 0x06, 0x81, 0x68, 0xa9, 0x4e, 0x87, 0x16, 0x1d, 0xfd, 0xd3, 0x04, 0x0d, 0xf9, 0xf6, 0xda, 0xe4, 0xd7, 0xeb, 0x5a, 0x88, 0x28, 0x6d, 0x01, 0x4c, 0x92, 0xcf, 0xe0, 0x09, 0x90, 0x2b, 0x34, 0x63, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12216_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12216_sig[] = { 0x21, 0x06, 0x74, 0xf8, 0x2d, 0x87, 0x31, 0x46, 0x7e, 0x98, 0x93, 0xc0, 0x07, 0x73, 0x39, 0x71, 0x74, 0x08, 0x37, 0xce, 0xb7, 0x8e, 0xe1, 0xa9, 0x57, 0xe7, 0x99, 0xc3, 0x30, 0x9f, 0x27, 0xda, 0x76, 0x83, 0x31, 0x26, 0x2d, 0xf9, 0x42, 0x93, 0xf8, 0x4b, 0x85, 0xfb, 0x00, 0xa7, 0x0c, 0x73, 0x68, 0x6b, 0xe0, 0x24, 0x0a, 0xc5, 0x27, 0xf1, 0x56, 0x0e, 0x6d, 0x9c, 0x20, 0xaf, 0x7b, 0x75, 0x5b, 0xe4, 0x21, 0xc3, 0x0e, 0xc3, 0xda, 0xe9, 0x4b, 0xb2, 0xd0, 0x1d, 0x7b, 0x0a, 0xf2, 0x89, 0x4c, 0x96, 0xa5, 0xba, 0x18, 0x1a, 0xb2, 0xd9, 0x2b, 0x9f, 0x18, 0xdb, 0x2d, 0x6d, 0xd2, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12216 = { .name = "ecdsa_brainpoolp384t1_sha384_12216", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12216_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12216_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12216_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 1461 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12217 for ECDSA, tcId is 1462 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12217_pubkey[] = { 0x49, 0x96, 0x7a, 0xd4, 0x12, 0xbe, 0x2e, 0xe1, 0xd4, 0x35, 0xce, 0x62, 0x61, 0xff, 0x12, 0x72, 0x50, 0x08, 0x5e, 0x19, 0x03, 0xe0, 0x4c, 0x03, 0x88, 0xff, 0x9c, 0x1a, 0x35, 0xe1, 0x25, 0x36, 0xe3, 0x1a, 0x2f, 0x8f, 0xef, 0xe2, 0x19, 0x4c, 0xdf, 0x1e, 0x9b, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x24, 0x51, 0x48, 0xc1, 0x05, 0xc6, 0x64, 0x98, 0x81, 0x79, 0xa8, 0xc2, 0xe6, 0x84, 0x18, 0xde, 0xa0, 0x78, 0xf9, 0x06, 0x82, 0xea, 0x06, 0xb5, 0x1d, 0x89, 0xcc, 0x93, 0x17, 0x3f, 0xb8, 0xa9, 0x91, 0xec, 0xca, 0x52, 0x80, 0x5d, 0x97, 0xac, 0x89, 0xf6, 0x68, 0x55, 0xa5, 0x93, 0xfb, 0xb4, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12217_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12217_sig[] = { 0x64, 0xaa, 0x82, 0xbf, 0x22, 0x50, 0x50, 0xa6, 0x3c, 0xf1, 0x64, 0x24, 0xcc, 0xcc, 0xd0, 0xf1, 0x6d, 0x59, 0x39, 0xd7, 0x34, 0x79, 0xd3, 0x3d, 0xb3, 0xd7, 0xf0, 0x51, 0x7a, 0x75, 0x0c, 0xdf, 0xc0, 0x1e, 0x37, 0x35, 0x45, 0x02, 0xff, 0xcb, 0x1c, 0x49, 0x56, 0xc2, 0xc7, 0xc7, 0xfa, 0x3e, 0x5e, 0x81, 0x01, 0x69, 0x2c, 0x6e, 0xb5, 0x57, 0x67, 0x73, 0x48, 0x39, 0xef, 0xe4, 0x3d, 0xa9, 0x43, 0xcb, 0x69, 0xd7, 0xb3, 0xce, 0x9e, 0xa0, 0xd4, 0xae, 0xf6, 0x89, 0x2c, 0xb2, 0x44, 0x88, 0x39, 0x97, 0xec, 0x10, 0xf3, 0x68, 0xe2, 0x95, 0xef, 0x08, 0x0e, 0xf9, 0xb0, 0x78, 0xd0, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12217 = { .name = "ecdsa_brainpoolp384t1_sha384_12217", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12217_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12217_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12217_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1462 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12218 for ECDSA, tcId is 1463 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12218_pubkey[] = { 0x49, 0x96, 0x7a, 0xd4, 0x12, 0xbe, 0x2e, 0xe1, 0xd4, 0x35, 0xce, 0x62, 0x61, 0xff, 0x12, 0x72, 0x50, 0x08, 0x5e, 0x19, 0x03, 0xe0, 0x4c, 0x03, 0x88, 0xff, 0x9c, 0x1a, 0x35, 0xe1, 0x25, 0x36, 0xe3, 0x1a, 0x2f, 0x8f, 0xef, 0xe2, 0x19, 0x4c, 0xdf, 0x1e, 0x9b, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x24, 0x51, 0x48, 0xc1, 0x05, 0xc6, 0x64, 0x98, 0x81, 0x79, 0xa8, 0xc2, 0xe6, 0x84, 0x18, 0xde, 0xa0, 0x78, 0xf9, 0x06, 0x82, 0xea, 0x06, 0xb5, 0x1d, 0x89, 0xcc, 0x93, 0x17, 0x3f, 0xb8, 0xa9, 0x91, 0xec, 0xca, 0x52, 0x80, 0x5d, 0x97, 0xac, 0x89, 0xf6, 0x68, 0x55, 0xa5, 0x93, 0xfb, 0xb4, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12218_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12218_sig[] = { 0x2d, 0x10, 0x69, 0x08, 0xa5, 0x0b, 0x6e, 0x5b, 0xa5, 0x9d, 0x60, 0x74, 0xa2, 0xe9, 0x40, 0xdc, 0xfe, 0xb7, 0x3c, 0x5b, 0xa1, 0xc5, 0x46, 0x4a, 0xb9, 0xff, 0x6c, 0x80, 0x5d, 0x23, 0xf4, 0x64, 0x64, 0x97, 0x81, 0x16, 0xc6, 0x81, 0x99, 0xd1, 0xa8, 0xac, 0x63, 0xd8, 0xb8, 0x23, 0x36, 0x8d, 0x7b, 0x8c, 0xc5, 0x60, 0x36, 0xa6, 0x2d, 0x9a, 0x26, 0x32, 0x2a, 0x41, 0x3a, 0x1a, 0x18, 0x3f, 0x1b, 0xb2, 0xd7, 0x95, 0x78, 0x9f, 0xab, 0x72, 0xa4, 0x5f, 0x41, 0x21, 0xb3, 0x57, 0x96, 0xe1, 0xe3, 0xa5, 0x92, 0xe1, 0xc6, 0x2f, 0x2c, 0x4d, 0x07, 0x0e, 0x9b, 0xee, 0x85, 0xbc, 0xe7, 0x0f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12218 = { .name = "ecdsa_brainpoolp384t1_sha384_12218", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12218_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12218_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12218_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1463 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12219 for ECDSA, tcId is 1464 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12219_pubkey[] = { 0x49, 0x96, 0x7a, 0xd4, 0x12, 0xbe, 0x2e, 0xe1, 0xd4, 0x35, 0xce, 0x62, 0x61, 0xff, 0x12, 0x72, 0x50, 0x08, 0x5e, 0x19, 0x03, 0xe0, 0x4c, 0x03, 0x88, 0xff, 0x9c, 0x1a, 0x35, 0xe1, 0x25, 0x36, 0xe3, 0x1a, 0x2f, 0x8f, 0xef, 0xe2, 0x19, 0x4c, 0xdf, 0x1e, 0x9b, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x24, 0x51, 0x48, 0xc1, 0x05, 0xc6, 0x64, 0x98, 0x81, 0x79, 0xa8, 0xc2, 0xe6, 0x84, 0x18, 0xde, 0xa0, 0x78, 0xf9, 0x06, 0x82, 0xea, 0x06, 0xb5, 0x1d, 0x89, 0xcc, 0x93, 0x17, 0x3f, 0xb8, 0xa9, 0x91, 0xec, 0xca, 0x52, 0x80, 0x5d, 0x97, 0xac, 0x89, 0xf6, 0x68, 0x55, 0xa5, 0x93, 0xfb, 0xb4, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12219_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12219_sig[] = { 0x18, 0x0b, 0xea, 0x72, 0x8d, 0x39, 0xc3, 0x25, 0x79, 0x14, 0x1a, 0x21, 0x5e, 0x02, 0x56, 0xd2, 0xb8, 0xe0, 0xfc, 0xc1, 0xd2, 0xb7, 0x31, 0x35, 0xa7, 0x1c, 0xc4, 0x84, 0xd9, 0xc8, 0xfb, 0x66, 0x66, 0x44, 0xfe, 0x3c, 0x14, 0xff, 0x11, 0xaf, 0xfe, 0x13, 0x5e, 0x02, 0xc7, 0x26, 0x47, 0xc2, 0x42, 0xcc, 0xc5, 0x24, 0xb7, 0x10, 0x9b, 0xfe, 0xf8, 0x16, 0x04, 0xad, 0xb1, 0x89, 0x3d, 0x15, 0x31, 0xb6, 0x5c, 0x49, 0x75, 0x60, 0xda, 0xa9, 0x41, 0xf1, 0x8a, 0x0d, 0xbd, 0x20, 0x0d, 0xdf, 0x79, 0x74, 0x31, 0x68, 0x01, 0x1c, 0x0c, 0x68, 0x56, 0xf2, 0xa4, 0x56, 0xe4, 0x6c, 0x57, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12219 = { .name = "ecdsa_brainpoolp384t1_sha384_12219", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12219_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12219_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12219_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1464 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12220 for ECDSA, tcId is 1465 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12220_pubkey[] = { 0x33, 0xa0, 0x2b, 0x38, 0xab, 0x08, 0x69, 0x36, 0x04, 0x16, 0xd6, 0x8a, 0x1c, 0xb9, 0xd1, 0xe5, 0xe3, 0xfc, 0x37, 0xe5, 0x39, 0xb7, 0xf5, 0x62, 0xf4, 0xce, 0x35, 0x9d, 0x75, 0x04, 0xa5, 0xf5, 0x51, 0xa9, 0x8c, 0xd7, 0x88, 0x12, 0xfa, 0xd8, 0x0b, 0x71, 0x7d, 0xf3, 0xf7, 0xde, 0x92, 0x51, 0x0c, 0x66, 0xe1, 0x85, 0xb7, 0xd5, 0x77, 0x26, 0x98, 0x4f, 0xe0, 0x9e, 0x8e, 0xc8, 0x85, 0x55, 0x4d, 0x84, 0xfa, 0xf5, 0x12, 0x84, 0xfd, 0x83, 0x9a, 0xf4, 0xe5, 0x9f, 0xc7, 0x04, 0xc3, 0xf3, 0x76, 0x26, 0x49, 0x1d, 0x98, 0xa4, 0x83, 0x50, 0xf4, 0x1a, 0x50, 0xdf, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12220_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12220_sig[] = { 0x57, 0x7b, 0x89, 0xe7, 0xeb, 0x4e, 0x0c, 0x11, 0xd3, 0xdd, 0xc8, 0x27, 0x3f, 0xdc, 0xab, 0x25, 0x83, 0xa0, 0xc8, 0x90, 0x8a, 0xcb, 0x3c, 0x92, 0xa4, 0x10, 0x73, 0xc1, 0xb4, 0x87, 0x9c, 0xb6, 0xbd, 0x09, 0x82, 0x5e, 0x34, 0x59, 0x17, 0xd1, 0x0e, 0x9a, 0x10, 0xc5, 0x71, 0x27, 0xa0, 0x96, 0x33, 0xc5, 0x68, 0xe1, 0xff, 0x37, 0x6a, 0x2b, 0x6c, 0x49, 0xe4, 0x95, 0x38, 0x5d, 0xe6, 0x55, 0xd6, 0x67, 0xb8, 0x40, 0x2d, 0x73, 0xfc, 0x02, 0xe9, 0xdb, 0x61, 0xd4, 0x2b, 0x49, 0x20, 0xbd, 0x0c, 0x3f, 0x0c, 0x88, 0xa1, 0xc3, 0x09, 0x1a, 0xb5, 0xb9, 0x97, 0x0b, 0xda, 0xa1, 0xd3, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12220 = { .name = "ecdsa_brainpoolp384t1_sha384_12220", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12220_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12220_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12220_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1465 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12221 for ECDSA, tcId is 1466 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12221_pubkey[] = { 0x33, 0xa0, 0x2b, 0x38, 0xab, 0x08, 0x69, 0x36, 0x04, 0x16, 0xd6, 0x8a, 0x1c, 0xb9, 0xd1, 0xe5, 0xe3, 0xfc, 0x37, 0xe5, 0x39, 0xb7, 0xf5, 0x62, 0xf4, 0xce, 0x35, 0x9d, 0x75, 0x04, 0xa5, 0xf5, 0x51, 0xa9, 0x8c, 0xd7, 0x88, 0x12, 0xfa, 0xd8, 0x0b, 0x71, 0x7d, 0xf3, 0xf7, 0xde, 0x92, 0x51, 0x0c, 0x66, 0xe1, 0x85, 0xb7, 0xd5, 0x77, 0x26, 0x98, 0x4f, 0xe0, 0x9e, 0x8e, 0xc8, 0x85, 0x55, 0x4d, 0x84, 0xfa, 0xf5, 0x12, 0x84, 0xfd, 0x83, 0x9a, 0xf4, 0xe5, 0x9f, 0xc7, 0x04, 0xc3, 0xf3, 0x76, 0x26, 0x49, 0x1d, 0x98, 0xa4, 0x83, 0x50, 0xf4, 0x1a, 0x50, 0xdf, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12221_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12221_sig[] = { 0x6b, 0xb7, 0x94, 0x73, 0x82, 0x48, 0xb3, 0x75, 0xc9, 0xf5, 0xc6, 0xa5, 0xe6, 0x7c, 0x04, 0x05, 0x39, 0x79, 0xb1, 0xf0, 0x96, 0xa9, 0x7a, 0x54, 0x71, 0x0d, 0xa3, 0x67, 0x4a, 0x6a, 0xf2, 0x32, 0x95, 0x25, 0x6c, 0x66, 0x0a, 0x6e, 0x09, 0x49, 0xbe, 0x8c, 0x69, 0xc9, 0xe0, 0xaf, 0x1c, 0x9a, 0x16, 0xf4, 0x54, 0xf2, 0x90, 0xed, 0xac, 0x48, 0x96, 0x80, 0xbc, 0x8b, 0xca, 0xca, 0xbf, 0xbf, 0xf9, 0xd0, 0xd2, 0x9d, 0xd1, 0x1c, 0x7c, 0x00, 0x3e, 0x97, 0xc0, 0x56, 0xcc, 0xa9, 0xcd, 0x2b, 0x50, 0x33, 0x69, 0x2b, 0x76, 0x6f, 0xd2, 0x0d, 0x8c, 0xe0, 0xa4, 0xb0, 0xdf, 0xc4, 0x17, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12221 = { .name = "ecdsa_brainpoolp384t1_sha384_12221", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12221_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12221_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12221_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1466 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12222 for ECDSA, tcId is 1467 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12222_pubkey[] = { 0x33, 0xa0, 0x2b, 0x38, 0xab, 0x08, 0x69, 0x36, 0x04, 0x16, 0xd6, 0x8a, 0x1c, 0xb9, 0xd1, 0xe5, 0xe3, 0xfc, 0x37, 0xe5, 0x39, 0xb7, 0xf5, 0x62, 0xf4, 0xce, 0x35, 0x9d, 0x75, 0x04, 0xa5, 0xf5, 0x51, 0xa9, 0x8c, 0xd7, 0x88, 0x12, 0xfa, 0xd8, 0x0b, 0x71, 0x7d, 0xf3, 0xf7, 0xde, 0x92, 0x51, 0x0c, 0x66, 0xe1, 0x85, 0xb7, 0xd5, 0x77, 0x26, 0x98, 0x4f, 0xe0, 0x9e, 0x8e, 0xc8, 0x85, 0x55, 0x4d, 0x84, 0xfa, 0xf5, 0x12, 0x84, 0xfd, 0x83, 0x9a, 0xf4, 0xe5, 0x9f, 0xc7, 0x04, 0xc3, 0xf3, 0x76, 0x26, 0x49, 0x1d, 0x98, 0xa4, 0x83, 0x50, 0xf4, 0x1a, 0x50, 0xdf, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12222_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12222_sig[] = { 0x71, 0xda, 0xd8, 0xb0, 0x9e, 0xa0, 0xc6, 0x7e, 0xaa, 0x79, 0xb9, 0x37, 0xcb, 0x4f, 0xc5, 0x4c, 0x72, 0x80, 0x77, 0x9f, 0x37, 0xdf, 0xe2, 0x93, 0x75, 0x63, 0x27, 0xb9, 0xbd, 0xf3, 0xbb, 0xad, 0x9a, 0x51, 0x61, 0x3d, 0xbf, 0xde, 0x19, 0x49, 0x6d, 0x62, 0x0e, 0x15, 0xe2, 0xbf, 0x8f, 0xda, 0x16, 0xdb, 0x51, 0xfa, 0x41, 0x4c, 0x9f, 0x13, 0xe2, 0xc7, 0x96, 0x5e, 0x33, 0x15, 0xcd, 0xa2, 0xfb, 0xd6, 0x4f, 0x95, 0xb0, 0xc8, 0x8d, 0x3b, 0x2a, 0xa4, 0x88, 0x11, 0x72, 0x7a, 0xf7, 0xcd, 0xd7, 0x0e, 0xee, 0x77, 0x00, 0xdb, 0xf4, 0xea, 0x3c, 0x9c, 0x84, 0xe6, 0x28, 0x43, 0x87, 0xbe, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12222 = { .name = "ecdsa_brainpoolp384t1_sha384_12222", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12222_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12222_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12222_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1467 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12223 for ECDSA, tcId is 1468 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12223_pubkey[] = { 0x7f, 0xa7, 0x3b, 0x52, 0x1e, 0x19, 0xcd, 0x2b, 0x08, 0xe7, 0x12, 0x7f, 0x5a, 0x31, 0x30, 0x90, 0x89, 0xec, 0xb3, 0x62, 0x8c, 0x7e, 0x34, 0x1a, 0x97, 0x7c, 0xfc, 0x4b, 0xf4, 0x45, 0xab, 0x15, 0x10, 0x10, 0x60, 0x2b, 0xec, 0xf7, 0x20, 0xdc, 0x41, 0xae, 0xbb, 0x86, 0x90, 0x08, 0x70, 0xde, 0x4f, 0x3b, 0x7d, 0xd1, 0x9a, 0xc8, 0x97, 0x0f, 0x11, 0x69, 0x96, 0xb0, 0xd4, 0x8d, 0xc2, 0x0d, 0x69, 0xd7, 0x84, 0xe8, 0x50, 0x22, 0x84, 0x70, 0x1e, 0xf6, 0x53, 0x30, 0x09, 0x93, 0xe1, 0x58, 0xc8, 0xb8, 0x2f, 0xc5, 0xa4, 0x66, 0x4a, 0x8e, 0xc2, 0x8a, 0x03, 0xc4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12223_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12223_sig[] = { 0x0e, 0x0e, 0x11, 0xe2, 0xcf, 0x80, 0x5a, 0x30, 0x54, 0xdb, 0x77, 0xfd, 0x49, 0xa9, 0x45, 0x6c, 0xcf, 0x22, 0xf5, 0x94, 0x8a, 0x9a, 0x02, 0xe6, 0x47, 0x4a, 0x5a, 0x89, 0xdd, 0x39, 0x4d, 0x3c, 0x89, 0xa4, 0x6b, 0x16, 0xdc, 0xad, 0x39, 0xf6, 0x7b, 0x33, 0xbe, 0x14, 0x9f, 0x75, 0xb8, 0xe3, 0x71, 0x9a, 0xce, 0x88, 0x87, 0x14, 0x3d, 0x8f, 0x0f, 0x4c, 0x1e, 0x47, 0x8d, 0xe8, 0x36, 0xfe, 0x78, 0xdc, 0x71, 0xd1, 0x4e, 0xa2, 0x34, 0xfd, 0xdd, 0x47, 0xbb, 0xfc, 0xdd, 0x77, 0xfb, 0x44, 0xc7, 0x7b, 0x49, 0xc6, 0xc4, 0xb0, 0x48, 0xd0, 0x5b, 0xe9, 0x53, 0x71, 0x3a, 0x48, 0x0d, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12223 = { .name = "ecdsa_brainpoolp384t1_sha384_12223", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12223_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12223_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12223_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1468 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12224 for ECDSA, tcId is 1469 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12224_pubkey[] = { 0x7f, 0xa7, 0x3b, 0x52, 0x1e, 0x19, 0xcd, 0x2b, 0x08, 0xe7, 0x12, 0x7f, 0x5a, 0x31, 0x30, 0x90, 0x89, 0xec, 0xb3, 0x62, 0x8c, 0x7e, 0x34, 0x1a, 0x97, 0x7c, 0xfc, 0x4b, 0xf4, 0x45, 0xab, 0x15, 0x10, 0x10, 0x60, 0x2b, 0xec, 0xf7, 0x20, 0xdc, 0x41, 0xae, 0xbb, 0x86, 0x90, 0x08, 0x70, 0xde, 0x4f, 0x3b, 0x7d, 0xd1, 0x9a, 0xc8, 0x97, 0x0f, 0x11, 0x69, 0x96, 0xb0, 0xd4, 0x8d, 0xc2, 0x0d, 0x69, 0xd7, 0x84, 0xe8, 0x50, 0x22, 0x84, 0x70, 0x1e, 0xf6, 0x53, 0x30, 0x09, 0x93, 0xe1, 0x58, 0xc8, 0xb8, 0x2f, 0xc5, 0xa4, 0x66, 0x4a, 0x8e, 0xc2, 0x8a, 0x03, 0xc4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12224_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12224_sig[] = { 0x5e, 0x4f, 0x0e, 0x8f, 0x83, 0x3a, 0x1e, 0x50, 0xcf, 0x46, 0x49, 0x5d, 0x45, 0x94, 0xc3, 0x78, 0x94, 0xa2, 0x1e, 0xc8, 0x16, 0x4d, 0xfd, 0xe3, 0xa0, 0x5c, 0x96, 0x82, 0x69, 0x86, 0x20, 0x74, 0x6b, 0x42, 0x98, 0x8f, 0xde, 0xec, 0x9b, 0xda, 0xe3, 0xe9, 0x61, 0x12, 0x1e, 0x5e, 0xa0, 0xb1, 0x77, 0xeb, 0xa3, 0xe7, 0x04, 0xbf, 0x96, 0x35, 0xb5, 0x75, 0x0f, 0xfe, 0xc2, 0xee, 0x8d, 0x39, 0x68, 0x1c, 0x76, 0x2d, 0x21, 0x27, 0x84, 0x65, 0x82, 0x8a, 0xb0, 0xf5, 0x74, 0x93, 0x54, 0x48, 0xcf, 0xf6, 0x57, 0x5b, 0x8d, 0x69, 0x94, 0x06, 0x40, 0x78, 0x74, 0x86, 0x4f, 0x87, 0xad, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12224 = { .name = "ecdsa_brainpoolp384t1_sha384_12224", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12224_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12224_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12224_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1469 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12225 for ECDSA, tcId is 1470 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12225_pubkey[] = { 0x7f, 0xa7, 0x3b, 0x52, 0x1e, 0x19, 0xcd, 0x2b, 0x08, 0xe7, 0x12, 0x7f, 0x5a, 0x31, 0x30, 0x90, 0x89, 0xec, 0xb3, 0x62, 0x8c, 0x7e, 0x34, 0x1a, 0x97, 0x7c, 0xfc, 0x4b, 0xf4, 0x45, 0xab, 0x15, 0x10, 0x10, 0x60, 0x2b, 0xec, 0xf7, 0x20, 0xdc, 0x41, 0xae, 0xbb, 0x86, 0x90, 0x08, 0x70, 0xde, 0x4f, 0x3b, 0x7d, 0xd1, 0x9a, 0xc8, 0x97, 0x0f, 0x11, 0x69, 0x96, 0xb0, 0xd4, 0x8d, 0xc2, 0x0d, 0x69, 0xd7, 0x84, 0xe8, 0x50, 0x22, 0x84, 0x70, 0x1e, 0xf6, 0x53, 0x30, 0x09, 0x93, 0xe1, 0x58, 0xc8, 0xb8, 0x2f, 0xc5, 0xa4, 0x66, 0x4a, 0x8e, 0xc2, 0x8a, 0x03, 0xc4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12225_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12225_sig[] = { 0x08, 0xc4, 0x66, 0x4a, 0x03, 0x6a, 0x5d, 0x4f, 0x5b, 0x7b, 0x9a, 0x36, 0x56, 0x56, 0xdb, 0x0c, 0x78, 0x62, 0x46, 0xac, 0x7b, 0x99, 0x2b, 0xfa, 0xc5, 0x3c, 0xf2, 0xf3, 0x1e, 0x9f, 0xc7, 0x38, 0x69, 0x85, 0x96, 0xdb, 0x4e, 0xa3, 0x85, 0xf7, 0xba, 0xb9, 0x78, 0xb4, 0xf1, 0xed, 0x02, 0xb2, 0x63, 0xeb, 0x0c, 0x4d, 0x62, 0x9d, 0x01, 0xf1, 0xfe, 0x91, 0x33, 0xd6, 0x44, 0x40, 0xcd, 0xa7, 0x17, 0xca, 0xc4, 0xe1, 0x6a, 0xc1, 0xce, 0xee, 0xbe, 0x10, 0xb8, 0xc3, 0x8d, 0x3c, 0xcc, 0x0b, 0x2b, 0xd7, 0x59, 0x18, 0xe4, 0xc9, 0x95, 0xd2, 0xc5, 0x25, 0xc7, 0x75, 0x91, 0x68, 0x18, 0x04, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12225 = { .name = "ecdsa_brainpoolp384t1_sha384_12225", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12225_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12225_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12225_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1470 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12226 for ECDSA, tcId is 1471 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12226_pubkey[] = { 0x3d, 0xc2, 0x37, 0x04, 0xba, 0x83, 0x46, 0xfe, 0xe7, 0x02, 0x8a, 0x86, 0x3e, 0x3e, 0x1c, 0x20, 0x1a, 0xc5, 0xe5, 0xc1, 0xf0, 0xa0, 0xbd, 0x8a, 0xd9, 0x67, 0xd3, 0xfe, 0x8c, 0x8e, 0x4b, 0x8d, 0x6b, 0x5f, 0x92, 0x44, 0x9e, 0x33, 0x78, 0x21, 0x88, 0x62, 0xf2, 0x61, 0xd0, 0x9f, 0x6f, 0xd8, 0x33, 0xc9, 0x42, 0xcd, 0x24, 0xaf, 0x05, 0xe4, 0x73, 0x09, 0x72, 0x48, 0xdb, 0x98, 0x1d, 0x00, 0x9c, 0x69, 0xe5, 0x3e, 0xa9, 0xb5, 0xf3, 0xf4, 0xec, 0xba, 0x0d, 0x6f, 0x4d, 0x24, 0x31, 0x7c, 0xae, 0xdb, 0x69, 0x17, 0xf4, 0xca, 0x9f, 0x8e, 0x9b, 0xf0, 0xe8, 0x28, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12226_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12226_sig[] = { 0x06, 0x4d, 0xb8, 0x27, 0xc2, 0xb9, 0x7c, 0x16, 0xfc, 0xe0, 0xd9, 0x52, 0x51, 0x3b, 0xb6, 0x87, 0xc2, 0x64, 0x51, 0xdb, 0x1c, 0x6b, 0x1e, 0x82, 0x01, 0x0f, 0x69, 0x01, 0xfd, 0xd1, 0x70, 0x9e, 0x83, 0xd0, 0xef, 0xcc, 0x5b, 0x33, 0xea, 0xe5, 0xf4, 0x90, 0xc6, 0x60, 0x4e, 0x8e, 0x17, 0x2f, 0x54, 0xae, 0xd9, 0x30, 0xe8, 0x30, 0x0a, 0x82, 0xef, 0xe2, 0x60, 0x9c, 0xcb, 0x03, 0x0b, 0x82, 0xc7, 0x99, 0x1a, 0x7d, 0xb2, 0x61, 0xfd, 0x60, 0xe3, 0xc9, 0x09, 0x7b, 0xe1, 0x33, 0x41, 0x90, 0x9e, 0xc3, 0x49, 0x2a, 0x38, 0x03, 0xcd, 0xa0, 0x7c, 0xb2, 0xd1, 0x83, 0x89, 0x46, 0xd1, 0x91, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12226 = { .name = "ecdsa_brainpoolp384t1_sha384_12226", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12226_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12226_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12226_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1471 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12227 for ECDSA, tcId is 1472 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12227_pubkey[] = { 0x3d, 0xc2, 0x37, 0x04, 0xba, 0x83, 0x46, 0xfe, 0xe7, 0x02, 0x8a, 0x86, 0x3e, 0x3e, 0x1c, 0x20, 0x1a, 0xc5, 0xe5, 0xc1, 0xf0, 0xa0, 0xbd, 0x8a, 0xd9, 0x67, 0xd3, 0xfe, 0x8c, 0x8e, 0x4b, 0x8d, 0x6b, 0x5f, 0x92, 0x44, 0x9e, 0x33, 0x78, 0x21, 0x88, 0x62, 0xf2, 0x61, 0xd0, 0x9f, 0x6f, 0xd8, 0x33, 0xc9, 0x42, 0xcd, 0x24, 0xaf, 0x05, 0xe4, 0x73, 0x09, 0x72, 0x48, 0xdb, 0x98, 0x1d, 0x00, 0x9c, 0x69, 0xe5, 0x3e, 0xa9, 0xb5, 0xf3, 0xf4, 0xec, 0xba, 0x0d, 0x6f, 0x4d, 0x24, 0x31, 0x7c, 0xae, 0xdb, 0x69, 0x17, 0xf4, 0xca, 0x9f, 0x8e, 0x9b, 0xf0, 0xe8, 0x28, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12227_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12227_sig[] = { 0x08, 0xd8, 0xba, 0x04, 0xdc, 0x84, 0x4a, 0x5e, 0xf3, 0x0f, 0x63, 0x2c, 0x7c, 0xa4, 0x7e, 0xbe, 0x2a, 0xc7, 0x5b, 0x86, 0xa8, 0x21, 0xb8, 0xb6, 0xb5, 0xb6, 0x99, 0xa5, 0xcb, 0xe4, 0x23, 0x82, 0xf0, 0xb9, 0x27, 0x03, 0xaf, 0x60, 0x42, 0x20, 0x5f, 0x80, 0xdd, 0xf2, 0x3d, 0x27, 0xe9, 0x71, 0x0a, 0x33, 0xca, 0x44, 0xc7, 0xb6, 0x5e, 0xaf, 0x5c, 0xc8, 0x1a, 0xf2, 0x3d, 0xe2, 0x82, 0xc5, 0x62, 0x30, 0x79, 0x80, 0xe3, 0x1a, 0x1e, 0x6e, 0xe6, 0x32, 0xa6, 0x14, 0x1d, 0x77, 0x14, 0x39, 0x42, 0x41, 0xd9, 0x08, 0x69, 0xe2, 0xc9, 0x59, 0x24, 0x23, 0x10, 0x6a, 0xbf, 0x2a, 0x35, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12227 = { .name = "ecdsa_brainpoolp384t1_sha384_12227", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12227_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12227_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12227_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1472 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12228 for ECDSA, tcId is 1473 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384t1_sha384_12228_pubkey[] = { 0x3d, 0xc2, 0x37, 0x04, 0xba, 0x83, 0x46, 0xfe, 0xe7, 0x02, 0x8a, 0x86, 0x3e, 0x3e, 0x1c, 0x20, 0x1a, 0xc5, 0xe5, 0xc1, 0xf0, 0xa0, 0xbd, 0x8a, 0xd9, 0x67, 0xd3, 0xfe, 0x8c, 0x8e, 0x4b, 0x8d, 0x6b, 0x5f, 0x92, 0x44, 0x9e, 0x33, 0x78, 0x21, 0x88, 0x62, 0xf2, 0x61, 0xd0, 0x9f, 0x6f, 0xd8, 0x33, 0xc9, 0x42, 0xcd, 0x24, 0xaf, 0x05, 0xe4, 0x73, 0x09, 0x72, 0x48, 0xdb, 0x98, 0x1d, 0x00, 0x9c, 0x69, 0xe5, 0x3e, 0xa9, 0xb5, 0xf3, 0xf4, 0xec, 0xba, 0x0d, 0x6f, 0x4d, 0x24, 0x31, 0x7c, 0xae, 0xdb, 0x69, 0x17, 0xf4, 0xca, 0x9f, 0x8e, 0x9b, 0xf0, 0xe8, 0x28, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12228_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384t1_sha384_12228_sig[] = { 0x24, 0xe4, 0x0d, 0x5e, 0xf6, 0x70, 0x01, 0x8c, 0x0c, 0xe6, 0x90, 0xfc, 0x15, 0x04, 0x21, 0x56, 0xb0, 0xe3, 0x9a, 0x05, 0x7d, 0x2e, 0xb7, 0x6c, 0x91, 0xd8, 0x11, 0x9c, 0xc3, 0x98, 0x21, 0x36, 0x11, 0x8f, 0x4e, 0xee, 0x76, 0x40, 0x3e, 0xac, 0x13, 0xb8, 0x9c, 0xb9, 0xbd, 0xb0, 0x02, 0x00, 0x1a, 0xa2, 0x40, 0x23, 0xe2, 0xe1, 0x2e, 0xbe, 0xd8, 0x14, 0x6f, 0x3c, 0x4f, 0x1e, 0xcd, 0xfb, 0x24, 0xec, 0xa3, 0xbf, 0xf0, 0x85, 0xcd, 0x6c, 0x65, 0x4c, 0xb5, 0x2f, 0x33, 0xe3, 0x68, 0xa0, 0x73, 0xe2, 0x7a, 0x99, 0x12, 0xf4, 0x50, 0x9a, 0x27, 0xc8, 0x49, 0x13, 0xb8, 0x5f, 0xc7, 0xe0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384t1_sha384_12228 = { .name = "ecdsa_brainpoolp384t1_sha384_12228", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384t1_str_params, .pubkey = ecdsa_brainpoolp384t1_sha384_12228_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384t1_sha384_12228_msg, .msglen = 7, .sig = ecdsa_brainpoolp384t1_sha384_12228_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1473 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) */ /* Test 12229 for ECDSA, tcId is 1474 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12229_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12229_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12229_sig[] = { 0x47, 0x9c, 0xe8, 0x45, 0x8b, 0x04, 0xb2, 0xdc, 0x12, 0x7b, 0x46, 0x97, 0x1e, 0x6c, 0x79, 0x83, 0x1b, 0xf7, 0x88, 0xf6, 0x5d, 0xdc, 0x77, 0x06, 0x20, 0xda, 0xaa, 0x15, 0x58, 0x3f, 0x8d, 0x50, 0x6f, 0x2a, 0x66, 0x52, 0xd8, 0x2b, 0x38, 0x56, 0x0e, 0xc1, 0x97, 0x75, 0x86, 0xe1, 0x19, 0x29, 0xb6, 0x66, 0xf6, 0xd7, 0x01, 0x2d, 0x81, 0x6f, 0xd3, 0x56, 0xd4, 0x1e, 0x93, 0x04, 0xd6, 0x0f, 0xa7, 0x50, 0xf7, 0x3c, 0xca, 0xef, 0xf5, 0xd9, 0x94, 0x06, 0x7e, 0x66, 0xe4, 0x5c, 0x20, 0x08, 0x92, 0xc6, 0x07, 0xb3, 0x29, 0xbe, 0x5e, 0x64, 0xdb, 0x5c, 0x38, 0x3c, 0x7b, 0xe7, 0x11, 0xc9, 0x7b, 0x5d, 0xd4, 0x25, 0xa5, 0x22, 0x50, 0xbc, 0x86, 0x24, 0x77, 0xe2, 0x8b, 0x3a, 0xfa, 0x4e, 0xf3, 0xd8, 0x31, 0x06, 0x6a, 0x7b, 0x14, 0x34, 0x32, 0xa5, 0xd1, 0x54, 0x03, 0x02, 0x14, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12229 = { .name = "ecdsa_brainpoolp512r1_sha512_12229", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12229_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12229_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12229_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1474 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12230 for ECDSA, tcId is 1475 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12230_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12230_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12230_sig[] = { 0x68, 0x5b, 0x8b, 0x29, 0x29, 0xc9, 0xa0, 0xa9, 0xb0, 0xde, 0xb6, 0xba, 0xef, 0xd0, 0x0e, 0x26, 0xf5, 0x0d, 0x4c, 0x1f, 0xc3, 0xfe, 0xd4, 0x7d, 0x7e, 0xf8, 0x12, 0xc5, 0x2b, 0x66, 0xec, 0x6f, 0x6d, 0x09, 0xf5, 0x4e, 0x9b, 0xdb, 0x72, 0x02, 0x01, 0x65, 0x70, 0xf7, 0x5b, 0xb9, 0x91, 0x2a, 0xab, 0x3a, 0x57, 0x2b, 0xfb, 0x97, 0xea, 0x58, 0x9a, 0xce, 0x29, 0x4f, 0xf0, 0xfe, 0x66, 0x62, 0x4c, 0x28, 0x62, 0x67, 0xcb, 0x87, 0xa6, 0xbe, 0x56, 0xf4, 0xcd, 0x00, 0x80, 0x39, 0x8c, 0x23, 0xe5, 0x69, 0xf2, 0xeb, 0xda, 0x71, 0xd2, 0xcd, 0x16, 0x82, 0x08, 0x02, 0x90, 0xde, 0xb4, 0x14, 0x3b, 0xdc, 0x61, 0xe7, 0x5b, 0x42, 0xab, 0xef, 0xbc, 0xbb, 0xdd, 0xf4, 0xc7, 0x94, 0x54, 0x5a, 0x05, 0x37, 0x86, 0x56, 0xa1, 0x85, 0x86, 0x58, 0xe0, 0xa4, 0x59, 0x58, 0x33, 0xfc, 0x40, 0xf6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12230 = { .name = "ecdsa_brainpoolp512r1_sha512_12230", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12230_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12230_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12230_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1475 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12231 for ECDSA, tcId is 1476 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12231_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x4b, 0x00, 0xc7, 0x4a, 0x5a, 0x61, 0xac, 0x19, 0x6f, 0xaf, 0x4d, 0xc3, 0x9a, 0xcd, 0x41, 0xbf, 0x35, 0x4d, 0xef, 0x0a, 0x27, 0x52, 0x99, 0x64, 0x35, 0x91, 0x32, 0xa7, 0x6f, 0x28, 0x65, 0x42, 0x48, 0xd1, 0xac, 0x00, 0x4d, 0x11, 0xd8, 0x11, 0xab, 0xa0, 0xac, 0xb9, 0xc2, 0x6d, 0x2f, 0x4a, 0x54, 0x01, 0x2c, 0x5d, 0x8a, 0x9a, 0x1e, 0x7c, 0x8b, 0x4a, 0x52, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12231_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12231_sig[] = { 0x81, 0x11, 0x12, 0xd2, 0x7c, 0xa1, 0xe4, 0x34, 0xb0, 0x0c, 0x02, 0x93, 0x32, 0x02, 0x84, 0xb1, 0xc5, 0x36, 0x9f, 0xd0, 0x07, 0xf9, 0x0e, 0x7a, 0x99, 0xd4, 0x4c, 0x9c, 0x02, 0x01, 0x36, 0x88, 0xd1, 0x6e, 0x5e, 0x0a, 0x2f, 0xc3, 0xa0, 0x77, 0x06, 0x4a, 0x99, 0x5c, 0x42, 0x44, 0x19, 0x5c, 0x04, 0xf0, 0x03, 0x23, 0xe3, 0x3a, 0xde, 0xa6, 0xb3, 0x77, 0x01, 0xad, 0x5c, 0xb3, 0x62, 0x16, 0x82, 0xdd, 0x5c, 0x3e, 0x36, 0x42, 0xfc, 0x43, 0xe5, 0xc4, 0xc6, 0x52, 0xe3, 0xb2, 0xd0, 0x0f, 0x6d, 0x13, 0x72, 0x07, 0xbe, 0x8c, 0x9b, 0x21, 0x25, 0x56, 0x1c, 0x08, 0x70, 0x3e, 0x4a, 0x84, 0xd2, 0xa8, 0x27, 0x85, 0xf7, 0x75, 0xab, 0xd1, 0x8a, 0xab, 0x24, 0xe5, 0x2f, 0x12, 0xc5, 0xf8, 0xcb, 0x56, 0xb2, 0x8b, 0x91, 0x5f, 0x9c, 0x0b, 0x11, 0x10, 0xc5, 0x42, 0xba, 0x92, 0xb3, 0x13, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12231 = { .name = "ecdsa_brainpoolp512r1_sha512_12231", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12231_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12231_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12231_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1476 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12232 for ECDSA, tcId is 1477 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12232_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12232_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12232_sig[] = { 0x39, 0xd0, 0xc5, 0xc4, 0xe4, 0x8c, 0xa1, 0x40, 0x64, 0xb2, 0xe9, 0xb3, 0x60, 0x0d, 0xeb, 0x0e, 0xc2, 0xfb, 0x3e, 0x0c, 0x65, 0xb3, 0xbe, 0x5c, 0xe3, 0xf2, 0x06, 0x16, 0x6d, 0x76, 0xdf, 0xc5, 0xa5, 0xf6, 0xea, 0x87, 0x02, 0xda, 0x3a, 0xec, 0xb1, 0x3e, 0x7b, 0x55, 0xa8, 0x7b, 0x12, 0x63, 0xc4, 0x88, 0x46, 0x11, 0xe5, 0xde, 0x44, 0x0f, 0x6c, 0x89, 0xed, 0x12, 0xf8, 0x8a, 0xe5, 0x0f, 0x6a, 0xe7, 0x83, 0x98, 0xe7, 0xf9, 0x42, 0xb3, 0x5e, 0x7d, 0x87, 0xef, 0x27, 0xce, 0x83, 0x06, 0x90, 0xf7, 0x32, 0x7a, 0xd2, 0xa8, 0x3d, 0xf5, 0x6e, 0x9d, 0x02, 0x88, 0xb5, 0x19, 0x99, 0x45, 0x4b, 0xd9, 0x0f, 0x89, 0x5e, 0x78, 0x49, 0xf3, 0x5b, 0x2a, 0x65, 0x2a, 0x3a, 0xf9, 0x7b, 0xf5, 0x57, 0x95, 0xb4, 0x69, 0x8e, 0x0b, 0x01, 0x4e, 0xa6, 0xff, 0x02, 0x1a, 0x00, 0x87, 0x8f, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12232 = { .name = "ecdsa_brainpoolp512r1_sha512_12232", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12232_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12232_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12232_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1477 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12233 for ECDSA, tcId is 1478 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12233_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12233_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12233_sig[] = { 0x7c, 0x3a, 0xb2, 0xe3, 0xde, 0xaf, 0xb8, 0x23, 0xee, 0x59, 0x1d, 0xc5, 0x3c, 0x97, 0xb3, 0x89, 0xc6, 0xd1, 0x8a, 0x8c, 0xa9, 0xa6, 0xae, 0x20, 0xc7, 0x43, 0x28, 0x60, 0x6d, 0xb2, 0xd7, 0xc7, 0xd2, 0xbb, 0x3c, 0xe2, 0x68, 0x94, 0xe3, 0xf3, 0x07, 0x85, 0x23, 0x7b, 0x9e, 0x87, 0x43, 0x50, 0xd6, 0x15, 0x78, 0x63, 0x81, 0xb0, 0xc8, 0xc4, 0x20, 0x22, 0x4d, 0x2f, 0x5e, 0x35, 0x94, 0x68, 0x34, 0xe7, 0x03, 0xdd, 0x93, 0x9b, 0x2b, 0x1a, 0x20, 0x08, 0x72, 0x33, 0x4e, 0x2f, 0x86, 0x4d, 0xbf, 0x26, 0x68, 0x8f, 0x84, 0x75, 0xc9, 0xe3, 0x8a, 0x38, 0x41, 0x02, 0xe0, 0x8a, 0x18, 0xc2, 0x7d, 0x4e, 0x30, 0xd8, 0x02, 0x09, 0x5f, 0xff, 0x3e, 0xdd, 0xa6, 0xdc, 0x1e, 0x03, 0xaa, 0x81, 0xae, 0xd9, 0x67, 0x19, 0xcb, 0x49, 0x61, 0x24, 0x71, 0xfa, 0x11, 0x88, 0x75, 0xa1, 0x5c, 0x18, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12233 = { .name = "ecdsa_brainpoolp512r1_sha512_12233", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12233_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12233_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12233_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1478 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12234 for ECDSA, tcId is 1479 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12234_pubkey[] = { 0x30, 0xa6, 0x7d, 0xea, 0xaf, 0x0c, 0xee, 0x44, 0xaa, 0xeb, 0x90, 0x3d, 0x8c, 0xdb, 0x24, 0xad, 0x9d, 0xc1, 0x91, 0xd3, 0x75, 0xd7, 0xd6, 0xa6, 0x0d, 0x25, 0x20, 0xe1, 0x93, 0x06, 0xcf, 0xc4, 0x7d, 0xde, 0x9d, 0xcb, 0x80, 0xaa, 0xe0, 0xb0, 0x40, 0x55, 0x4b, 0xb9, 0x8d, 0x60, 0x1e, 0x01, 0x9f, 0x93, 0x36, 0xe8, 0x31, 0xcc, 0xcb, 0x99, 0xf2, 0xd9, 0x2c, 0xf4, 0xb9, 0x16, 0x04, 0xb1, 0xaa, 0xdd, 0x9d, 0xb8, 0xc1, 0x9e, 0xc3, 0xc3, 0xf5, 0x7a, 0x85, 0x02, 0x1a, 0x5a, 0x4c, 0xba, 0x07, 0x95, 0xc0, 0x71, 0xf4, 0x94, 0x84, 0x1f, 0xcc, 0x3c, 0x4a, 0x31, 0x0b, 0xfd, 0x77, 0x3e, 0xd5, 0xde, 0x72, 0x9b, 0x59, 0x7d, 0x96, 0x96, 0xae, 0x80, 0x8f, 0x52, 0xd4, 0xf7, 0xe0, 0x39, 0x6e, 0xbf, 0x91, 0xff, 0xe3, 0x2e, 0xc5, 0x58, 0xcb, 0x1f, 0xc6, 0x37, 0xdb, 0xae, 0xfe, 0xa1, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12234_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12234_sig[] = { 0x4c, 0xd8, 0xa5, 0xf1, 0x97, 0x7a, 0x3c, 0xf8, 0xe8, 0x47, 0xa1, 0x37, 0x73, 0x59, 0xcc, 0xa7, 0x04, 0x6c, 0x79, 0x3a, 0xda, 0x06, 0x65, 0xf2, 0xc0, 0x69, 0x08, 0xfd, 0xce, 0xc2, 0x4e, 0x6c, 0xd5, 0x5a, 0x17, 0x50, 0xca, 0x57, 0x64, 0x21, 0xb8, 0xa6, 0x5a, 0xa9, 0x9a, 0xed, 0x86, 0x3c, 0xda, 0xaa, 0x77, 0xd7, 0xf7, 0xcf, 0x84, 0x44, 0x8e, 0xa5, 0x8e, 0x95, 0xc5, 0x7a, 0x13, 0x3c, 0xa3, 0x40, 0x57, 0x2d, 0x5d, 0x96, 0x83, 0xe7, 0x2e, 0x15, 0x7e, 0x68, 0x3a, 0xb1, 0x6d, 0x0e, 0x2a, 0x35, 0x03, 0x0f, 0xf3, 0xe1, 0x64, 0x1d, 0x1b, 0x4f, 0x80, 0x1d, 0x80, 0x73, 0x2c, 0x32, 0xb9, 0xfb, 0xb5, 0x3f, 0xdc, 0xae, 0xa9, 0x33, 0xf1, 0x31, 0x13, 0x6f, 0x8a, 0xb2, 0x53, 0x11, 0x01, 0x8b, 0x87, 0x1f, 0x53, 0x75, 0x37, 0x82, 0x98, 0x9a, 0x87, 0xef, 0x23, 0x1a, 0x38, 0xac, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12234 = { .name = "ecdsa_brainpoolp512r1_sha512_12234", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12234_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12234_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12234_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1479 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12235 for ECDSA, tcId is 1480 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12235_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12235_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12235_sig[] = { 0x53, 0x19, 0x2c, 0x28, 0x82, 0x0e, 0xc2, 0x66, 0x63, 0x9f, 0xee, 0x09, 0xe2, 0x14, 0xa5, 0x5c, 0xc0, 0xef, 0xb0, 0x7b, 0x22, 0xdc, 0x0d, 0x3f, 0x29, 0x3b, 0xda, 0x20, 0x72, 0xfc, 0xf9, 0xb4, 0x62, 0xda, 0x93, 0xec, 0x9e, 0x71, 0x69, 0xae, 0x1f, 0x11, 0x48, 0x70, 0x51, 0x89, 0xf7, 0xf1, 0x5d, 0x2c, 0xbe, 0xc4, 0x6d, 0x22, 0x41, 0x97, 0xa3, 0xa7, 0xa9, 0x24, 0xb0, 0xc0, 0x0a, 0x32, 0x1b, 0x66, 0x45, 0x36, 0xae, 0xdb, 0xdc, 0x97, 0xbe, 0xd4, 0xde, 0xe2, 0x3e, 0xb9, 0x4a, 0x49, 0xf2, 0x3d, 0xe3, 0xbd, 0x84, 0xa7, 0x8f, 0x29, 0x9e, 0x81, 0xed, 0xfe, 0x01, 0x7a, 0x7d, 0x3c, 0xa3, 0xa7, 0xc8, 0xaa, 0xce, 0x8d, 0x13, 0xb6, 0xb2, 0xeb, 0x47, 0x7b, 0x92, 0x2c, 0x43, 0x98, 0x39, 0xea, 0xcd, 0xff, 0x27, 0x83, 0x07, 0x07, 0x57, 0x75, 0x48, 0x63, 0x58, 0x2f, 0x71, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12235 = { .name = "ecdsa_brainpoolp512r1_sha512_12235", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12235_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12235_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12235_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1480 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12236 for ECDSA, tcId is 1481 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12236_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12236_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12236_sig[] = { 0x96, 0x90, 0x58, 0xc1, 0x5d, 0x67, 0x5b, 0x1b, 0x26, 0x21, 0x52, 0xa4, 0x52, 0x0f, 0x7e, 0x80, 0x3a, 0xb4, 0x65, 0xa9, 0xe1, 0xee, 0xef, 0x7b, 0x8a, 0x5d, 0x0f, 0xb3, 0xe8, 0x80, 0x32, 0xb8, 0xe8, 0xf1, 0xbe, 0x9f, 0x37, 0xc8, 0x0f, 0x9c, 0x7b, 0x95, 0x0f, 0x4d, 0xa9, 0x50, 0xba, 0xae, 0x9b, 0x21, 0x6e, 0xcd, 0x6c, 0x79, 0x3d, 0xdb, 0x14, 0x59, 0xcf, 0xdf, 0x49, 0x77, 0x6b, 0xae, 0x20, 0xe0, 0xd0, 0x78, 0xa5, 0xa1, 0x13, 0xe9, 0x2f, 0xac, 0xdf, 0xe5, 0xcb, 0x39, 0x24, 0x32, 0x47, 0x25, 0x4a, 0xa0, 0xa6, 0x56, 0xb8, 0x3e, 0x7b, 0xaa, 0x34, 0x3d, 0x36, 0xf7, 0xb1, 0x4b, 0x86, 0xf1, 0x5e, 0x54, 0xb7, 0x1b, 0xa7, 0x50, 0x6d, 0x51, 0x19, 0xff, 0x52, 0xc4, 0x7e, 0x0e, 0xe5, 0x49, 0x92, 0x7a, 0x00, 0x8c, 0xbf, 0x2b, 0xbf, 0xe1, 0x91, 0x6d, 0x1c, 0xc2, 0x74, 0xb2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12236 = { .name = "ecdsa_brainpoolp512r1_sha512_12236", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12236_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12236_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12236_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1481 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12237 for ECDSA, tcId is 1482 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12237_pubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xbb, 0x41, 0x89, 0xa6, 0xd2, 0xab, 0x7b, 0x5a, 0xae, 0x55, 0x0f, 0xe8, 0xdc, 0x00, 0xbe, 0x2e, 0x00, 0xf4, 0xb3, 0x5b, 0x57, 0x6d, 0x6f, 0x86, 0x2c, 0x09, 0x86, 0x92, 0x10, 0xfc, 0x82, 0xfb, 0xd1, 0x5a, 0x54, 0xde, 0xf1, 0x44, 0x29, 0x79, 0xfa, 0x0d, 0xa1, 0xc6, 0x44, 0x08, 0xfd, 0x84, 0x37, 0xa6, 0x00, 0x46, 0x93, 0x08, 0x20, 0x74, 0x8e, 0xcd, 0xfc, 0x66, 0x4a, 0x59, 0xa8, 0x7e, 0xae, 0x33, 0x8d, 0x22, 0xd0, 0x83, 0x55, 0x23, 0x15, 0x6f, 0x8f, 0x7d, 0x93, 0x47, 0x10, 0xa7, 0x47, 0xcf, 0x19, 0x2d, 0x3e, 0x31, 0x7b, 0xc4, 0x5f, 0x04, 0x89, 0xd6, 0x97, 0x98, 0x87, 0xc6, 0x5e, 0xc1, 0x7a, 0xb7, 0xb5, 0xe3, 0xda, 0x9f, 0x4c, 0xb1, 0x10, 0x11, 0x6e, 0xf0, 0x73, 0x98, 0x49, 0xac, 0xc5, 0x6d, 0x24, 0xe5, 0xa3, 0x36, 0x5f, 0xcf, 0xb2, 0x89, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12237_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12237_sig[] = { 0x1d, 0xe5, 0xdf, 0x62, 0x13, 0x64, 0x43, 0x6b, 0xed, 0x5c, 0xac, 0xf8, 0xdb, 0xe4, 0x20, 0xe4, 0xe4, 0xe5, 0xd1, 0xb0, 0x43, 0x4f, 0xcf, 0x9d, 0xc3, 0x35, 0x64, 0x5d, 0xd0, 0xaa, 0x07, 0xcc, 0x1d, 0x1e, 0xa3, 0x0a, 0x8c, 0xaf, 0xe2, 0x53, 0x1c, 0xd4, 0x03, 0x5d, 0xd9, 0x72, 0xc0, 0xd6, 0xc3, 0x72, 0x0f, 0x16, 0x0e, 0x24, 0x26, 0x4f, 0xd6, 0xc4, 0x15, 0x21, 0xe4, 0x4e, 0xb0, 0xcb, 0x72, 0xe9, 0xab, 0xd5, 0x45, 0x61, 0xba, 0xc8, 0x9b, 0x23, 0x4b, 0xf9, 0xe5, 0x1a, 0x3f, 0x60, 0x03, 0x59, 0x0a, 0xf1, 0x77, 0x09, 0x8e, 0x25, 0xf0, 0x05, 0x3a, 0x3a, 0xe1, 0x8a, 0x6c, 0x74, 0xb3, 0x89, 0x67, 0x4a, 0x6e, 0xb8, 0x03, 0x78, 0xff, 0xd2, 0x55, 0xcf, 0xe5, 0x23, 0x23, 0x64, 0x5c, 0xdf, 0xe9, 0xa1, 0x0a, 0x96, 0x53, 0x41, 0xb4, 0xe4, 0x7f, 0xc0, 0xdd, 0x08, 0x2e, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12237 = { .name = "ecdsa_brainpoolp512r1_sha512_12237", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12237_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12237_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12237_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 1482 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12238 for ECDSA, tcId is 1483 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12238_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12238_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12238_sig[] = { 0x42, 0x2f, 0xb1, 0x8c, 0xde, 0xc9, 0x66, 0x93, 0x71, 0x45, 0xb0, 0xf1, 0x60, 0xb8, 0xce, 0x22, 0x2b, 0x0b, 0xa1, 0x6f, 0xab, 0x07, 0x5e, 0x16, 0xf1, 0xda, 0xc8, 0x39, 0xb8, 0xd7, 0x77, 0x2f, 0xee, 0x27, 0xa2, 0x83, 0xad, 0x72, 0x22, 0x25, 0xbe, 0xbe, 0x83, 0xdb, 0x2d, 0x5a, 0x8b, 0x25, 0xcb, 0x2c, 0xbe, 0x45, 0x24, 0x8b, 0x3a, 0xa8, 0x76, 0x55, 0x4c, 0x6a, 0x37, 0xf8, 0x13, 0x75, 0x7a, 0x38, 0x89, 0xd5, 0x3b, 0xb4, 0x2a, 0x6d, 0x41, 0xf3, 0x93, 0xeb, 0x00, 0xc4, 0x36, 0x23, 0x93, 0x70, 0x29, 0xd4, 0xcc, 0x1d, 0x36, 0x74, 0x69, 0xf6, 0xea, 0x4e, 0xc1, 0x66, 0x58, 0x61, 0x9d, 0x29, 0x35, 0xde, 0x0a, 0x65, 0x5a, 0xda, 0xe4, 0xcb, 0xb6, 0x24, 0xf2, 0xff, 0xe3, 0xce, 0x41, 0xf0, 0x24, 0x26, 0x9d, 0x91, 0x49, 0xdb, 0xd8, 0x3c, 0xb1, 0xc9, 0x7a, 0xed, 0x41, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12238 = { .name = "ecdsa_brainpoolp512r1_sha512_12238", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12238_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12238_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12238_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1483 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12239 for ECDSA, tcId is 1484 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12239_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12239_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12239_sig[] = { 0x98, 0x36, 0xee, 0x7a, 0xe0, 0x44, 0x7e, 0xc0, 0x7a, 0x6a, 0x21, 0x66, 0x33, 0xe0, 0xa9, 0x7d, 0xe8, 0x31, 0xfa, 0x04, 0xfc, 0xd7, 0x60, 0xab, 0xe3, 0x9e, 0x8f, 0x45, 0x77, 0x96, 0xfd, 0xfc, 0xe9, 0xc6, 0x9e, 0xd1, 0x3c, 0x82, 0x7d, 0xe0, 0xca, 0x6b, 0x60, 0xd8, 0x49, 0xed, 0x69, 0x76, 0xac, 0x09, 0x1b, 0x7d, 0x90, 0xce, 0x3e, 0x98, 0xd3, 0xc9, 0x14, 0x4a, 0xfe, 0x63, 0x8d, 0x42, 0x1c, 0x9d, 0x8e, 0x14, 0x2b, 0xae, 0xe8, 0x57, 0xd6, 0xad, 0xec, 0x8e, 0xff, 0x84, 0xea, 0x1d, 0x23, 0xb0, 0x5f, 0x54, 0x82, 0xcc, 0x29, 0x50, 0x45, 0x15, 0x86, 0xcf, 0x5d, 0xe0, 0xcb, 0xf9, 0xe3, 0xa7, 0x27, 0xa4, 0xa4, 0xe9, 0x3e, 0x15, 0xb6, 0xcc, 0x01, 0x25, 0xe5, 0xfc, 0xd1, 0x91, 0x06, 0x36, 0x89, 0x80, 0x64, 0xa6, 0x38, 0x13, 0xa0, 0xc7, 0x5f, 0xee, 0x28, 0x04, 0x1b, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12239 = { .name = "ecdsa_brainpoolp512r1_sha512_12239", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12239_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12239_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12239_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1484 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12240 for ECDSA, tcId is 1485 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12240_pubkey[] = { 0x24, 0xc1, 0x04, 0x40, 0xe3, 0x7a, 0x15, 0xd7, 0xec, 0x9a, 0x3a, 0x48, 0x96, 0x5a, 0x9c, 0xe9, 0x38, 0x02, 0x21, 0xfc, 0x51, 0x15, 0x5f, 0x1e, 0x99, 0x27, 0x16, 0xcd, 0x99, 0x33, 0xd0, 0x9c, 0xe0, 0xa5, 0x42, 0x44, 0x71, 0x87, 0x7e, 0x89, 0x94, 0x49, 0x4a, 0x4c, 0x2a, 0xde, 0x0a, 0x81, 0xef, 0x52, 0x95, 0x2e, 0x39, 0x56, 0x55, 0x15, 0x7f, 0x0b, 0x74, 0x3b, 0x3b, 0x21, 0x9e, 0x2d, 0x62, 0x8f, 0xd5, 0xba, 0x51, 0x0f, 0x61, 0x0e, 0xe6, 0x93, 0xa1, 0xe0, 0xd3, 0x9e, 0xf3, 0x9d, 0x91, 0xa6, 0x24, 0x83, 0x79, 0xc6, 0x22, 0xa1, 0x75, 0xa2, 0x3a, 0x53, 0x30, 0xa8, 0x8b, 0x2d, 0x5a, 0x60, 0xdb, 0xf6, 0xd2, 0x49, 0x70, 0x2c, 0xd1, 0x50, 0x45, 0x61, 0x53, 0x5e, 0xa1, 0x7e, 0x1b, 0xe1, 0xb7, 0x0a, 0x41, 0xdc, 0x46, 0x3e, 0x8e, 0x1a, 0x1a, 0xf0, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12240_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12240_sig[] = { 0x08, 0x77, 0xd7, 0xa3, 0xff, 0xac, 0xf4, 0xef, 0x36, 0xcb, 0xed, 0xfd, 0x44, 0xe4, 0xcc, 0x02, 0x37, 0xbd, 0xee, 0xde, 0x8c, 0xe0, 0xbd, 0xfb, 0x33, 0x0b, 0xb7, 0x3b, 0x31, 0x7b, 0x7d, 0x16, 0x1c, 0x45, 0xbd, 0x14, 0x96, 0xe1, 0x23, 0x3c, 0xed, 0x8f, 0x7d, 0xcf, 0xd0, 0x5e, 0x0e, 0x1c, 0xc6, 0x65, 0xfb, 0x1d, 0xc9, 0x2b, 0x54, 0xfc, 0xbe, 0x9b, 0x0e, 0x55, 0xd9, 0xba, 0x1b, 0xe4, 0x0f, 0x7a, 0xb8, 0x71, 0x74, 0x2e, 0xbf, 0x22, 0xe0, 0xb7, 0x67, 0x46, 0x14, 0xd7, 0x15, 0x69, 0xd5, 0x08, 0x4c, 0xcc, 0x0c, 0x98, 0xc2, 0xe4, 0x0d, 0x08, 0x8a, 0xe8, 0x8e, 0xab, 0x37, 0x82, 0x0a, 0x89, 0xa2, 0xdb, 0xe4, 0x9e, 0x1b, 0x67, 0xec, 0x55, 0xae, 0x1a, 0x34, 0xfe, 0x48, 0x22, 0xd6, 0x91, 0xbb, 0xf5, 0x49, 0x0f, 0xcc, 0x2c, 0x47, 0xe7, 0xc1, 0xba, 0x4d, 0xc5, 0x6e, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12240 = { .name = "ecdsa_brainpoolp512r1_sha512_12240", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12240_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12240_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12240_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1485 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12241 for ECDSA, tcId is 1486 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12241_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12241_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12241_sig[] = { 0xa7, 0x32, 0x20, 0x46, 0xba, 0x74, 0x73, 0x71, 0x6d, 0x35, 0x74, 0x2d, 0x96, 0x1a, 0xc5, 0xf2, 0xfe, 0x2e, 0x1d, 0xd5, 0x74, 0xec, 0xe7, 0xbd, 0x15, 0xda, 0x8c, 0x66, 0xa2, 0x62, 0xb2, 0xe7, 0x9b, 0x0d, 0x1d, 0xf2, 0x76, 0x19, 0xfd, 0xeb, 0xbb, 0x41, 0xda, 0x1b, 0x27, 0xba, 0x7c, 0x9a, 0x03, 0x70, 0xef, 0x96, 0x2e, 0xe8, 0xa4, 0x51, 0x05, 0xf4, 0x41, 0x6d, 0x16, 0xeb, 0xf1, 0x3e, 0x84, 0x18, 0xe4, 0x45, 0xdb, 0x45, 0xcf, 0xbd, 0xc8, 0x45, 0x80, 0x55, 0x38, 0x6d, 0x65, 0xe9, 0xbc, 0x07, 0xb4, 0x97, 0xb8, 0xd4, 0xbe, 0xf5, 0xf5, 0x15, 0xe7, 0x94, 0x70, 0x50, 0xd9, 0xab, 0x97, 0x99, 0xfb, 0x52, 0x0f, 0x32, 0x2b, 0xf0, 0x0f, 0xae, 0x4f, 0xae, 0x03, 0xc1, 0x26, 0x95, 0x10, 0xeb, 0xb3, 0xe1, 0xdc, 0x8c, 0xca, 0x59, 0x29, 0x8e, 0x26, 0x94, 0x58, 0x62, 0xe9, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12241 = { .name = "ecdsa_brainpoolp512r1_sha512_12241", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12241_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12241_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12241_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1486 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12242 for ECDSA, tcId is 1487 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12242_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12242_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12242_sig[] = { 0x1b, 0xb4, 0x60, 0xac, 0x42, 0xbb, 0x36, 0x40, 0xbf, 0xc7, 0x39, 0xa0, 0x18, 0x6e, 0xf3, 0x36, 0x2e, 0xd2, 0x7b, 0x25, 0x4f, 0x54, 0x8c, 0x07, 0x39, 0x35, 0xca, 0xa2, 0x11, 0xa1, 0xaa, 0x30, 0x2e, 0x79, 0xa9, 0x46, 0x6d, 0x7f, 0xec, 0xe7, 0x74, 0xd2, 0x50, 0xc1, 0xae, 0xae, 0xf9, 0x64, 0x1b, 0x9a, 0x2f, 0x25, 0xe6, 0x1c, 0xa3, 0x7f, 0xad, 0xa8, 0xee, 0x07, 0xf4, 0x9f, 0xd5, 0x1e, 0x3d, 0x91, 0x8a, 0x07, 0xa3, 0x6f, 0x57, 0x8d, 0xa8, 0xb0, 0xd4, 0x2d, 0x30, 0xba, 0xd6, 0x0e, 0xcf, 0xbd, 0x60, 0x3a, 0x45, 0xd0, 0xc1, 0xa7, 0x1b, 0xb0, 0x14, 0x47, 0xea, 0xd8, 0x1a, 0x53, 0x13, 0x26, 0x5c, 0xc9, 0xb5, 0x86, 0x0a, 0xba, 0x03, 0xf1, 0xc9, 0x3a, 0x9c, 0xb9, 0xf3, 0xbd, 0xd9, 0xa8, 0x5f, 0x27, 0x0d, 0xd3, 0x69, 0x14, 0x65, 0x94, 0x1d, 0x2b, 0x80, 0x98, 0xf9, 0x3c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12242 = { .name = "ecdsa_brainpoolp512r1_sha512_12242", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12242_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12242_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12242_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1487 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12243 for ECDSA, tcId is 1488 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12243_pubkey[] = { 0x0b, 0xa1, 0x8c, 0xc0, 0x55, 0x72, 0x42, 0x4a, 0x7a, 0x39, 0x1f, 0x4b, 0x48, 0x25, 0x8a, 0x87, 0x1a, 0x0f, 0x6d, 0x82, 0x16, 0xc5, 0xcf, 0x82, 0x44, 0x6c, 0x2d, 0x15, 0x6d, 0x55, 0x86, 0xb4, 0xc1, 0x96, 0xda, 0x0b, 0x2f, 0x3a, 0x23, 0x51, 0x1b, 0x89, 0xef, 0xf3, 0x1d, 0xd4, 0xf0, 0xc8, 0x8d, 0xbb, 0x1a, 0x76, 0xc5, 0xe4, 0xb2, 0x7c, 0x42, 0x76, 0xf8, 0xfb, 0xc7, 0x4a, 0x1b, 0x9d, 0xa2, 0x8c, 0xc8, 0xc3, 0x41, 0xea, 0x2e, 0x39, 0x08, 0xae, 0x6a, 0xb6, 0x82, 0x5f, 0x95, 0x60, 0x32, 0xc5, 0x3e, 0x62, 0x56, 0x97, 0xf8, 0x0b, 0x7b, 0x4e, 0xe7, 0x2d, 0xcc, 0x9f, 0x3c, 0xff, 0x73, 0x03, 0x49, 0xe0, 0xd3, 0x0d, 0xe4, 0x10, 0x91, 0x7f, 0x3d, 0x0d, 0x1c, 0x89, 0x88, 0x56, 0x2c, 0x1d, 0x55, 0x58, 0x3b, 0x47, 0xf0, 0xde, 0xc2, 0x34, 0xfd, 0xa2, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12243_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12243_sig[] = { 0x5b, 0x44, 0xe4, 0xfd, 0x49, 0x96, 0xf2, 0x7a, 0x7d, 0xcf, 0x30, 0x6b, 0xc9, 0xff, 0xf4, 0xa9, 0xc3, 0x6e, 0x3f, 0xe0, 0x90, 0x26, 0xfa, 0x72, 0x12, 0x2b, 0x64, 0xa4, 0xff, 0x65, 0xf8, 0x61, 0xa5, 0x95, 0x4c, 0xe8, 0xa4, 0x1f, 0x69, 0xa3, 0x91, 0x5c, 0x84, 0xa6, 0x3d, 0xb0, 0xc5, 0x7c, 0x6d, 0xfe, 0xcb, 0xac, 0x4f, 0xde, 0x99, 0xea, 0x5f, 0xcb, 0x10, 0x4d, 0x69, 0x67, 0xd6, 0x13, 0x08, 0x8e, 0x7b, 0x84, 0x6d, 0x6c, 0x5e, 0x09, 0x3a, 0x7b, 0xa1, 0x74, 0x27, 0xbc, 0xba, 0x0e, 0x92, 0x5a, 0xcb, 0x82, 0x6e, 0x4e, 0x9b, 0x97, 0x2b, 0x2d, 0x8a, 0x6d, 0x23, 0x2f, 0x63, 0x5c, 0xbe, 0x96, 0xbf, 0x6f, 0x16, 0x31, 0x74, 0xdb, 0x64, 0x6c, 0x2f, 0x66, 0x23, 0xc8, 0x9d, 0xc6, 0xe4, 0xa8, 0x28, 0xd4, 0xe2, 0xe2, 0xfc, 0xf3, 0xc4, 0x27, 0xc4, 0x2b, 0xdb, 0x72, 0xef, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12243 = { .name = "ecdsa_brainpoolp512r1_sha512_12243", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12243_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12243_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12243_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1488 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12244 for ECDSA, tcId is 1489 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12244_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12244_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12244_sig[] = { 0x73, 0x96, 0x7e, 0xb2, 0x4e, 0x20, 0xf0, 0xd4, 0xba, 0x58, 0x89, 0x5a, 0x49, 0xf8, 0x12, 0xc2, 0x8d, 0x24, 0xe5, 0xf0, 0xfd, 0x5e, 0x35, 0xf1, 0x07, 0x58, 0x10, 0xa4, 0x78, 0xd9, 0x37, 0x17, 0xc8, 0xaa, 0x26, 0x05, 0xac, 0x84, 0x22, 0x6d, 0xd3, 0xd5, 0x3c, 0x39, 0xc0, 0xd8, 0xc5, 0x2e, 0xea, 0xc8, 0xe9, 0x98, 0xba, 0xd9, 0x31, 0xf5, 0xef, 0xdd, 0x66, 0x4b, 0x57, 0xce, 0xe5, 0x55, 0x05, 0xb0, 0x03, 0x1f, 0xb1, 0x0d, 0xfc, 0x7c, 0x36, 0xed, 0x89, 0xaa, 0xfe, 0x66, 0x44, 0x48, 0x35, 0xcd, 0x9c, 0x53, 0xe1, 0xc8, 0x50, 0xaf, 0x5f, 0x05, 0x5e, 0x2b, 0x26, 0x3d, 0x3e, 0x73, 0x7a, 0x4e, 0x6a, 0x83, 0xca, 0xdb, 0x9d, 0x76, 0xdd, 0xe5, 0x35, 0xe8, 0x09, 0xf4, 0x47, 0x45, 0x53, 0x24, 0xd4, 0xae, 0xe6, 0xf0, 0x36, 0x48, 0x5d, 0x41, 0x67, 0xa6, 0xe6, 0x0e, 0xed, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12244 = { .name = "ecdsa_brainpoolp512r1_sha512_12244", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12244_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12244_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12244_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1489 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12245 for ECDSA, tcId is 1490 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12245_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12245_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12245_sig[] = { 0x63, 0x3f, 0x45, 0x69, 0x14, 0x70, 0x79, 0x23, 0xf4, 0xb0, 0x08, 0x6e, 0xa3, 0x18, 0xb8, 0xce, 0xbd, 0xba, 0x5f, 0xa1, 0x43, 0x52, 0xe3, 0xd9, 0xc6, 0x06, 0xbd, 0x8d, 0xab, 0xf0, 0x32, 0x83, 0x5b, 0xbd, 0xa7, 0x6a, 0xa5, 0x14, 0xc1, 0xa6, 0xdd, 0xe1, 0xb3, 0x21, 0x80, 0x3d, 0x27, 0xf2, 0x53, 0xdf, 0xe1, 0xca, 0xe5, 0x32, 0xa5, 0xbd, 0xcd, 0x9e, 0x93, 0xe5, 0xf9, 0x45, 0x96, 0xd1, 0x9b, 0x9c, 0x8b, 0xa0, 0x74, 0xde, 0xeb, 0x03, 0x74, 0x5d, 0x8a, 0xe3, 0x7c, 0x73, 0xe0, 0x22, 0x73, 0x07, 0x1a, 0x35, 0xdc, 0xfe, 0x0f, 0x65, 0xe4, 0x63, 0xe2, 0x08, 0xbd, 0x11, 0xc6, 0xcc, 0xb3, 0xad, 0xed, 0x6b, 0xe7, 0x31, 0x3d, 0x7a, 0x65, 0x6d, 0x5e, 0x87, 0x1b, 0x8e, 0xa4, 0xd1, 0xd5, 0x1b, 0x77, 0x84, 0x67, 0xb6, 0xdd, 0xe6, 0x57, 0x8e, 0x10, 0x5d, 0x56, 0xb6, 0x17, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12245 = { .name = "ecdsa_brainpoolp512r1_sha512_12245", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12245_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12245_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12245_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1490 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12246 for ECDSA, tcId is 1491 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12246_pubkey[] = { 0x7f, 0x33, 0x27, 0xe3, 0x46, 0x62, 0x27, 0x4a, 0xa1, 0x47, 0x95, 0x3a, 0x00, 0x7f, 0x30, 0xc2, 0xee, 0x1b, 0x06, 0xd7, 0xbb, 0x05, 0x3e, 0x8c, 0xe1, 0xc9, 0xb6, 0x83, 0xf0, 0xf4, 0x65, 0x63, 0xdd, 0x38, 0xdb, 0x07, 0x1d, 0x87, 0x43, 0x3b, 0x30, 0x38, 0x04, 0x34, 0xc9, 0x2e, 0x8c, 0xb7, 0x6d, 0x60, 0x3d, 0x19, 0x36, 0xfb, 0xa1, 0xe9, 0x31, 0x7a, 0x06, 0xe2, 0x00, 0x00, 0x00, 0x00, 0x52, 0xca, 0x47, 0x8f, 0x03, 0x67, 0xab, 0x24, 0x85, 0x7e, 0x78, 0x85, 0x76, 0xf1, 0x7b, 0xfc, 0xd0, 0x5e, 0x62, 0xd2, 0x0d, 0x0f, 0xbe, 0xfd, 0x1b, 0x2d, 0x95, 0x4b, 0x99, 0x6e, 0xab, 0xa6, 0x78, 0x19, 0x02, 0x36, 0x35, 0xe3, 0x14, 0x83, 0xf5, 0xb0, 0x25, 0x7f, 0x89, 0xb4, 0x6a, 0x1d, 0x2b, 0x9c, 0xb2, 0x42, 0x0e, 0x1c, 0xdb, 0x94, 0x0c, 0xea, 0xff, 0x54, 0x29, 0xdd, 0x80, 0x13, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12246_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12246_sig[] = { 0x40, 0x89, 0x1a, 0x57, 0xb9, 0xb8, 0xf0, 0xbc, 0x6a, 0x87, 0x61, 0xd2, 0x42, 0x4c, 0xb6, 0x0b, 0x3f, 0x39, 0xde, 0x4e, 0x60, 0x1b, 0xc8, 0xda, 0xf1, 0x5a, 0xb3, 0x21, 0x6c, 0x2c, 0x56, 0xeb, 0xcc, 0x76, 0x0d, 0xe3, 0x09, 0x07, 0xe8, 0x92, 0x94, 0xaf, 0x58, 0x18, 0xf5, 0xa7, 0x2a, 0x2d, 0xf4, 0x09, 0xbb, 0x69, 0x18, 0xf3, 0xd6, 0xe5, 0x06, 0xce, 0x53, 0x14, 0x60, 0x2e, 0x50, 0xc1, 0x68, 0x62, 0x07, 0x56, 0xee, 0x2a, 0x60, 0x0a, 0x14, 0x67, 0xf2, 0x96, 0x08, 0xea, 0xd0, 0x19, 0xd0, 0xd5, 0x16, 0xb7, 0x9c, 0x8a, 0x75, 0x6f, 0xc5, 0x37, 0xa9, 0xfc, 0x73, 0x46, 0x16, 0xbf, 0xec, 0x13, 0x38, 0x39, 0xbe, 0xb4, 0x77, 0x8f, 0xdf, 0xfd, 0x3f, 0xb4, 0x22, 0x6e, 0x51, 0xce, 0x4b, 0xc0, 0x96, 0x27, 0x33, 0x1c, 0x8d, 0xae, 0xf1, 0xf7, 0x11, 0x64, 0x8a, 0x30, 0xfb, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12246 = { .name = "ecdsa_brainpoolp512r1_sha512_12246", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12246_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12246_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12246_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 1491 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12247 for ECDSA, tcId is 1492 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12247_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12247_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12247_sig[] = { 0x4d, 0xeb, 0xd0, 0x68, 0x30, 0x28, 0xf2, 0x33, 0x5b, 0x23, 0x3c, 0x49, 0x53, 0x1b, 0x60, 0x96, 0xe7, 0xc5, 0x52, 0x1f, 0x75, 0xfc, 0xb4, 0xb5, 0xf5, 0xe3, 0x22, 0x41, 0xbe, 0x08, 0x1f, 0x3c, 0x2b, 0x85, 0x49, 0xb5, 0x7f, 0x31, 0x21, 0x7b, 0xe9, 0xb7, 0xaa, 0x1a, 0x46, 0x87, 0xa7, 0x2e, 0xc9, 0xa5, 0xd3, 0x76, 0x30, 0x72, 0x52, 0xca, 0x7c, 0x1b, 0x9b, 0x61, 0x0d, 0x25, 0xb4, 0xd0, 0x04, 0xd1, 0x30, 0x3f, 0x6b, 0x91, 0xac, 0x01, 0xc9, 0x14, 0x11, 0xa9, 0x83, 0xf3, 0xab, 0xb0, 0x4f, 0x36, 0x98, 0xb1, 0x69, 0xf8, 0xa3, 0x9f, 0xfd, 0x19, 0x31, 0xc0, 0x61, 0xe6, 0x6f, 0x43, 0x48, 0x2f, 0xec, 0x79, 0x5d, 0xfd, 0x0d, 0x0a, 0xbe, 0x87, 0x9f, 0xa8, 0xdb, 0x88, 0x5b, 0x61, 0x8a, 0xca, 0x2a, 0xe0, 0x13, 0xe6, 0x93, 0xf1, 0x54, 0xbb, 0x9d, 0x0a, 0x77, 0xad, 0xef, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12247 = { .name = "ecdsa_brainpoolp512r1_sha512_12247", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12247_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12247_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12247_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1492 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12248 for ECDSA, tcId is 1493 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12248_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12248_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12248_sig[] = { 0x34, 0xac, 0x9a, 0x4e, 0x6f, 0xb1, 0x71, 0xf4, 0x24, 0xbb, 0x59, 0x2d, 0x1b, 0x84, 0x5b, 0xee, 0x55, 0x17, 0x3b, 0x42, 0x42, 0x2f, 0xd5, 0xb5, 0x13, 0x2f, 0x85, 0x9a, 0x27, 0xdd, 0xcd, 0xa5, 0x53, 0x2f, 0xd3, 0x81, 0x16, 0xe6, 0x27, 0x7d, 0x93, 0x75, 0x63, 0x9f, 0xb2, 0x5b, 0x0f, 0x66, 0xf1, 0xe8, 0xa1, 0xac, 0xca, 0xa7, 0x80, 0x0c, 0x91, 0xc8, 0x7e, 0x74, 0x39, 0x98, 0x7d, 0x58, 0x75, 0x89, 0x2b, 0xe8, 0xe1, 0x1d, 0x9b, 0xf3, 0xe8, 0x1e, 0x83, 0x70, 0xaf, 0x02, 0xd8, 0x8b, 0xda, 0x83, 0xce, 0x0a, 0xe9, 0xc2, 0x1a, 0xeb, 0x48, 0x7e, 0xef, 0x4c, 0x4c, 0x54, 0x58, 0xe5, 0x1a, 0x99, 0xe4, 0xd7, 0x88, 0xdb, 0x84, 0x06, 0x4c, 0xfb, 0xc4, 0x82, 0x40, 0xf5, 0x66, 0x12, 0x07, 0x87, 0x69, 0xfd, 0xe0, 0xe3, 0xb7, 0x06, 0x12, 0x5f, 0x46, 0xe2, 0xf2, 0x6a, 0x35, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12248 = { .name = "ecdsa_brainpoolp512r1_sha512_12248", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12248_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12248_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12248_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1493 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12249 for ECDSA, tcId is 1494 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12249_pubkey[] = { 0x12, 0x48, 0x2f, 0x15, 0x8e, 0x62, 0xe8, 0x34, 0x67, 0x29, 0x7b, 0x4e, 0xda, 0xd9, 0x30, 0xad, 0x31, 0x90, 0x48, 0x28, 0x3f, 0x09, 0x49, 0x30, 0x06, 0x05, 0xa4, 0xa2, 0xd1, 0x9f, 0x72, 0xf9, 0x24, 0xd4, 0x1e, 0x1c, 0xc3, 0xad, 0x2c, 0x24, 0x65, 0x74, 0xf4, 0xa0, 0xeb, 0x63, 0x7c, 0xdd, 0x38, 0x6c, 0x1e, 0xbf, 0x4a, 0x00, 0x70, 0x7b, 0x71, 0xa6, 0x46, 0xdc, 0xff, 0xff, 0xff, 0xff, 0x18, 0xd8, 0x51, 0xef, 0x92, 0x83, 0x5f, 0x7b, 0xe9, 0x2a, 0x25, 0xb9, 0x88, 0xae, 0x8d, 0x5f, 0x7e, 0xd4, 0x2f, 0x31, 0x2f, 0x7c, 0x89, 0x68, 0x50, 0xa5, 0x89, 0xf7, 0xbb, 0x75, 0x00, 0x33, 0x0d, 0x13, 0x8c, 0xc2, 0x0d, 0xc5, 0x63, 0x0a, 0x7d, 0x52, 0x59, 0x26, 0xe8, 0xf7, 0x17, 0x63, 0x5e, 0xe7, 0x29, 0x37, 0x03, 0x57, 0x36, 0xac, 0xe8, 0x8f, 0x0c, 0x49, 0x1f, 0x31, 0x93, 0x0d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12249_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12249_sig[] = { 0x36, 0xb6, 0x8b, 0x5c, 0xad, 0x74, 0x28, 0x80, 0x3f, 0x60, 0x66, 0x15, 0x50, 0x58, 0x57, 0xaa, 0x7c, 0xfb, 0x68, 0x3d, 0x1e, 0x9c, 0xe8, 0x56, 0xd4, 0x99, 0xfa, 0x6e, 0x13, 0xee, 0x6a, 0x4f, 0x23, 0x5e, 0xdd, 0x00, 0x40, 0x34, 0x29, 0xff, 0x14, 0xbc, 0x57, 0x8d, 0xd1, 0x21, 0xfd, 0x25, 0x60, 0x04, 0x79, 0x4a, 0xdd, 0x4f, 0xb8, 0x19, 0x5b, 0x43, 0xa9, 0xe1, 0xee, 0xfb, 0xd3, 0xa1, 0x45, 0xc6, 0xaf, 0xfd, 0x60, 0x7f, 0x54, 0x24, 0xa0, 0xe4, 0x9c, 0x0f, 0x1a, 0x72, 0xeb, 0xf7, 0x94, 0x8a, 0x80, 0xb4, 0x82, 0xef, 0x17, 0x1e, 0xe1, 0x61, 0xdc, 0x36, 0x51, 0x56, 0x79, 0xe3, 0x2f, 0xa9, 0xed, 0xaa, 0x92, 0xc5, 0x74, 0x03, 0xe6, 0xe1, 0x02, 0x64, 0x3b, 0x77, 0x39, 0x1a, 0xed, 0xee, 0xc2, 0xb0, 0x54, 0x96, 0x43, 0x15, 0xde, 0xdd, 0x4c, 0xc3, 0x69, 0xf2, 0x3f, 0x03, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12249 = { .name = "ecdsa_brainpoolp512r1_sha512_12249", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12249_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12249_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12249_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1494 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12250 for ECDSA, tcId is 1495 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12250_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x9b, 0xf2, 0xe4, 0x36, 0x7c, 0x38, 0x1d, 0xab, 0x13, 0xe0, 0x26, 0xa1, 0xdb, 0x8b, 0xa7, 0x0f, 0x04, 0x26, 0x87, 0x79, 0xac, 0x78, 0x69, 0x83, 0xd6, 0x97, 0x46, 0x1f, 0x0c, 0x7e, 0x52, 0x6a, 0xaf, 0x03, 0x00, 0x1b, 0x16, 0x8c, 0xb4, 0x79, 0x11, 0xce, 0xc4, 0x43, 0x9d, 0x13, 0x9c, 0xe2, 0xbd, 0xc3, 0xcb, 0x2f, 0x6f, 0x7c, 0xe5, 0x10, 0x01, 0xde, 0x6e, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12250_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12250_sig[] = { 0x2e, 0xaf, 0x57, 0x80, 0x72, 0x94, 0xe5, 0x07, 0x28, 0xa8, 0x74, 0x68, 0x38, 0x1a, 0x44, 0x99, 0xb3, 0x36, 0xaf, 0x04, 0x5d, 0x53, 0x4c, 0xf0, 0x85, 0x4c, 0xcf, 0x80, 0x17, 0x8d, 0x53, 0xa3, 0x79, 0x58, 0x5f, 0xf0, 0x6b, 0x3d, 0xb3, 0x11, 0x74, 0xe1, 0x01, 0xdc, 0xe8, 0x1c, 0x75, 0x7a, 0x8c, 0xc3, 0xc4, 0x03, 0x32, 0x31, 0xba, 0xf3, 0xe8, 0xd4, 0xc5, 0xc4, 0xbd, 0x35, 0x98, 0x4b, 0x60, 0xd4, 0x45, 0xcc, 0xcc, 0x50, 0x6a, 0xbd, 0xae, 0x5a, 0x7d, 0x42, 0xc2, 0xd2, 0x2c, 0xf0, 0x3f, 0xc2, 0xe8, 0xf6, 0x71, 0x76, 0x68, 0x30, 0x8f, 0xb5, 0xcf, 0x8e, 0x10, 0x17, 0x6d, 0x1c, 0x72, 0x3e, 0x46, 0x82, 0xf9, 0x42, 0xff, 0x13, 0xef, 0x83, 0x2a, 0xd5, 0x13, 0x29, 0x07, 0x6f, 0x4c, 0x62, 0x8b, 0x4f, 0x62, 0x63, 0xf5, 0x19, 0xbc, 0xaf, 0x0d, 0x91, 0x56, 0x92, 0xa2, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12250 = { .name = "ecdsa_brainpoolp512t1_sha512_12250", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12250_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12250_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12250_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1495 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12251 for ECDSA, tcId is 1496 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12251_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x9b, 0xf2, 0xe4, 0x36, 0x7c, 0x38, 0x1d, 0xab, 0x13, 0xe0, 0x26, 0xa1, 0xdb, 0x8b, 0xa7, 0x0f, 0x04, 0x26, 0x87, 0x79, 0xac, 0x78, 0x69, 0x83, 0xd6, 0x97, 0x46, 0x1f, 0x0c, 0x7e, 0x52, 0x6a, 0xaf, 0x03, 0x00, 0x1b, 0x16, 0x8c, 0xb4, 0x79, 0x11, 0xce, 0xc4, 0x43, 0x9d, 0x13, 0x9c, 0xe2, 0xbd, 0xc3, 0xcb, 0x2f, 0x6f, 0x7c, 0xe5, 0x10, 0x01, 0xde, 0x6e, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12251_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12251_sig[] = { 0x0a, 0xe7, 0xa5, 0xf9, 0xbe, 0xf3, 0xbc, 0x57, 0x0b, 0x1b, 0xfc, 0x21, 0x8f, 0x6e, 0xe0, 0x71, 0x85, 0x5d, 0x86, 0xc8, 0xab, 0xa3, 0x65, 0x04, 0xdc, 0x0c, 0x48, 0x0d, 0x85, 0x70, 0x59, 0xdc, 0xe2, 0xcf, 0x93, 0x75, 0x06, 0x71, 0x60, 0x75, 0xcd, 0x80, 0x45, 0xfa, 0xe9, 0x69, 0x30, 0x95, 0x85, 0xf6, 0x2a, 0xd3, 0x41, 0x35, 0xc6, 0x4d, 0xd6, 0xf9, 0xc1, 0x87, 0x05, 0xdf, 0x0d, 0xb1, 0x69, 0xf2, 0x47, 0x3a, 0x71, 0xec, 0xa7, 0x22, 0x2b, 0x27, 0xc5, 0xbd, 0x60, 0x0c, 0x1b, 0x1c, 0x2a, 0x8b, 0x9a, 0xfb, 0x3b, 0x06, 0x3a, 0xe4, 0x9d, 0x5b, 0x4a, 0x09, 0x0e, 0xcf, 0xc7, 0x61, 0x79, 0xf0, 0x41, 0xb3, 0x9d, 0xaf, 0xa4, 0x91, 0xb3, 0x91, 0xee, 0x79, 0xb5, 0xd2, 0x4f, 0xc1, 0x21, 0x0e, 0x5d, 0x8d, 0x13, 0x5c, 0xb1, 0xfd, 0xa8, 0x91, 0xec, 0x7b, 0x80, 0x6a, 0xf3, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12251 = { .name = "ecdsa_brainpoolp512t1_sha512_12251", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12251_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12251_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12251_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1496 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12252 for ECDSA, tcId is 1497 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12252_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x5d, 0x9b, 0xf2, 0xe4, 0x36, 0x7c, 0x38, 0x1d, 0xab, 0x13, 0xe0, 0x26, 0xa1, 0xdb, 0x8b, 0xa7, 0x0f, 0x04, 0x26, 0x87, 0x79, 0xac, 0x78, 0x69, 0x83, 0xd6, 0x97, 0x46, 0x1f, 0x0c, 0x7e, 0x52, 0x6a, 0xaf, 0x03, 0x00, 0x1b, 0x16, 0x8c, 0xb4, 0x79, 0x11, 0xce, 0xc4, 0x43, 0x9d, 0x13, 0x9c, 0xe2, 0xbd, 0xc3, 0xcb, 0x2f, 0x6f, 0x7c, 0xe5, 0x10, 0x01, 0xde, 0x6e, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12252_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12252_sig[] = { 0x4a, 0x29, 0x42, 0x57, 0x9b, 0xed, 0x39, 0x47, 0x7d, 0x56, 0xce, 0xc8, 0xd7, 0xe8, 0xf0, 0x29, 0xe9, 0x3d, 0xed, 0x04, 0xbe, 0xd5, 0xec, 0x72, 0x71, 0x80, 0xef, 0xab, 0x14, 0x21, 0x2f, 0x88, 0x53, 0x0f, 0xb4, 0xbd, 0x92, 0xd9, 0x92, 0x02, 0xac, 0x96, 0x6c, 0x6d, 0x75, 0xd8, 0xc1, 0xf1, 0xbe, 0xf5, 0xd1, 0x3e, 0x14, 0x97, 0x3a, 0xc4, 0x9f, 0x32, 0xe7, 0x06, 0x43, 0xa8, 0x3c, 0x67, 0x63, 0x2f, 0x64, 0x7f, 0x8c, 0x25, 0x6a, 0x6f, 0xf5, 0x72, 0xc0, 0x88, 0x5d, 0x20, 0xe9, 0xdd, 0x30, 0x9d, 0x26, 0xc9, 0x6c, 0xc7, 0x39, 0x26, 0x49, 0xca, 0x1a, 0x1d, 0xd5, 0xc6, 0x38, 0x35, 0x86, 0x26, 0x70, 0x58, 0x50, 0xf7, 0x76, 0x85, 0x42, 0xf5, 0x3a, 0x50, 0xa6, 0x3c, 0x19, 0x1b, 0x2d, 0x86, 0xe0, 0x0e, 0xe2, 0xb3, 0x23, 0x3d, 0xf5, 0xc0, 0xbd, 0xdc, 0xff, 0x27, 0x2b, 0xad, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12252 = { .name = "ecdsa_brainpoolp512t1_sha512_12252", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12252_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12252_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12252_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1497 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12253 for ECDSA, tcId is 1498 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12253_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0xaa, 0xdd, 0x9d, 0xb8, 0x7e, 0x4d, 0xd1, 0xa7, 0x09, 0x58, 0xae, 0x90, 0x88, 0xb6, 0x1b, 0xe1, 0x29, 0x55, 0x02, 0x0c, 0xa4, 0xc5, 0xab, 0x87, 0x5c, 0xb7, 0x24, 0x60, 0xec, 0x5c, 0x71, 0x2b, 0x5e, 0x41, 0x1c, 0xae, 0x31, 0x17, 0x65, 0x42, 0x93, 0xb7, 0x14, 0x76, 0x6d, 0x91, 0xb2, 0x21, 0xe4, 0xe4, 0xeb, 0x92, 0x4a, 0xc5, 0x02, 0xb9, 0xf9, 0x3a, 0xe3, 0x71, 0x48, 0x38, 0x6a, 0x85, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12253_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12253_sig[] = { 0x11, 0x36, 0x19, 0xa3, 0x23, 0x1e, 0x67, 0x0e, 0x22, 0xc5, 0x57, 0xce, 0x2c, 0xdd, 0x03, 0x0b, 0x7e, 0x32, 0xd9, 0xab, 0xd0, 0x69, 0xdb, 0x73, 0x04, 0xc3, 0x1e, 0x2a, 0x1e, 0x54, 0xaa, 0x99, 0x86, 0xa4, 0x41, 0x24, 0xb4, 0x0d, 0x5f, 0xb5, 0x0a, 0x8f, 0xa1, 0xca, 0xfc, 0xdb, 0xf6, 0xf1, 0x45, 0x47, 0x53, 0x20, 0x38, 0x19, 0xd0, 0xd2, 0x69, 0x57, 0x9b, 0x13, 0x8f, 0xc7, 0xb6, 0x3b, 0x98, 0x99, 0x82, 0xeb, 0xc1, 0x7f, 0x27, 0xcb, 0xcd, 0xf1, 0x7d, 0x04, 0xe9, 0x94, 0xc8, 0x29, 0xb0, 0x13, 0x30, 0x5c, 0x6f, 0xaa, 0x48, 0xb1, 0x0c, 0xff, 0x5e, 0x91, 0x18, 0xd6, 0x36, 0x8d, 0x7a, 0x4f, 0x27, 0x6c, 0xd1, 0xc9, 0x22, 0x00, 0xa1, 0x7e, 0xb6, 0xa2, 0xb9, 0x30, 0x9f, 0x75, 0xd9, 0xf5, 0xdf, 0x58, 0xb6, 0x8e, 0x87, 0x60, 0x82, 0x72, 0x04, 0x68, 0xef, 0x63, 0xfa, 0x48, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12253 = { .name = "ecdsa_brainpoolp512t1_sha512_12253", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12253_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12253_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12253_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1498 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12254 for ECDSA, tcId is 1499 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12254_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0xaa, 0xdd, 0x9d, 0xb8, 0x7e, 0x4d, 0xd1, 0xa7, 0x09, 0x58, 0xae, 0x90, 0x88, 0xb6, 0x1b, 0xe1, 0x29, 0x55, 0x02, 0x0c, 0xa4, 0xc5, 0xab, 0x87, 0x5c, 0xb7, 0x24, 0x60, 0xec, 0x5c, 0x71, 0x2b, 0x5e, 0x41, 0x1c, 0xae, 0x31, 0x17, 0x65, 0x42, 0x93, 0xb7, 0x14, 0x76, 0x6d, 0x91, 0xb2, 0x21, 0xe4, 0xe4, 0xeb, 0x92, 0x4a, 0xc5, 0x02, 0xb9, 0xf9, 0x3a, 0xe3, 0x71, 0x48, 0x38, 0x6a, 0x85, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12254_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12254_sig[] = { 0x00, 0x55, 0x8c, 0xf1, 0x86, 0xf5, 0x01, 0x17, 0x9e, 0x19, 0xd8, 0x60, 0x6b, 0xad, 0x39, 0xe8, 0x4f, 0x14, 0x23, 0x9d, 0xcf, 0x69, 0x93, 0xae, 0x85, 0x0f, 0x42, 0x75, 0x9a, 0x13, 0xeb, 0x7c, 0xad, 0x5e, 0xae, 0x69, 0x7e, 0xd2, 0x5e, 0xc2, 0xee, 0x18, 0xb7, 0x7c, 0x3e, 0xf7, 0xef, 0x09, 0xc0, 0x6c, 0xab, 0x15, 0x9a, 0x82, 0xf1, 0x8d, 0xdc, 0xca, 0xf1, 0x06, 0x3c, 0x83, 0xcd, 0x22, 0x66, 0x02, 0x92, 0xd1, 0xbc, 0xf9, 0xd6, 0xfd, 0x1d, 0x1b, 0x66, 0xea, 0xe4, 0x9c, 0xde, 0x4d, 0xa7, 0x71, 0x0e, 0x98, 0x07, 0xae, 0xb7, 0x47, 0x41, 0x70, 0x02, 0x04, 0x7b, 0x71, 0x48, 0xf7, 0xe3, 0x16, 0xb9, 0xe8, 0x10, 0xae, 0x53, 0x59, 0xc7, 0x21, 0x8e, 0x5b, 0xaf, 0x4d, 0xa9, 0x76, 0x64, 0xed, 0x4e, 0x93, 0xd1, 0x69, 0xd4, 0xad, 0xe7, 0xfe, 0x27, 0x2d, 0x56, 0xeb, 0xc2, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12254 = { .name = "ecdsa_brainpoolp512t1_sha512_12254", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12254_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12254_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12254_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1499 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12255 for ECDSA, tcId is 1500 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12255_pubkey[] = { 0x29, 0x98, 0xe0, 0x95, 0x9e, 0x62, 0xbb, 0xed, 0x07, 0x5d, 0xad, 0x48, 0x30, 0xff, 0x74, 0xa3, 0x3d, 0x19, 0x9c, 0x6e, 0x29, 0xbe, 0xb5, 0xba, 0x51, 0x8c, 0x6c, 0x41, 0x05, 0xe1, 0xb4, 0x13, 0xab, 0x78, 0xf7, 0x30, 0xe1, 0xfc, 0x32, 0xe9, 0x4f, 0x1a, 0x2c, 0x15, 0x93, 0x16, 0x25, 0xc6, 0xb2, 0x15, 0x0d, 0xb2, 0xa1, 0x2b, 0x5b, 0x44, 0xda, 0x15, 0x84, 0x50, 0x68, 0xfa, 0xb4, 0x0f, 0xaa, 0xdd, 0x9d, 0xb8, 0x7e, 0x4d, 0xd1, 0xa7, 0x09, 0x58, 0xae, 0x90, 0x88, 0xb6, 0x1b, 0xe1, 0x29, 0x55, 0x02, 0x0c, 0xa4, 0xc5, 0xab, 0x87, 0x5c, 0xb7, 0x24, 0x60, 0xec, 0x5c, 0x71, 0x2b, 0x5e, 0x41, 0x1c, 0xae, 0x31, 0x17, 0x65, 0x42, 0x93, 0xb7, 0x14, 0x76, 0x6d, 0x91, 0xb2, 0x21, 0xe4, 0xe4, 0xeb, 0x92, 0x4a, 0xc5, 0x02, 0xb9, 0xf9, 0x3a, 0xe3, 0x71, 0x48, 0x38, 0x6a, 0x85, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12255_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12255_sig[] = { 0x90, 0x96, 0x21, 0xb2, 0xb9, 0x40, 0xd6, 0x34, 0x90, 0x77, 0x62, 0xfa, 0x65, 0xc6, 0x24, 0x98, 0x57, 0xe4, 0x14, 0xb3, 0xe5, 0xe4, 0xa1, 0x46, 0x1c, 0xd4, 0x77, 0x43, 0xbd, 0x46, 0x49, 0x7c, 0xc3, 0x13, 0xc2, 0x88, 0x11, 0x28, 0x7f, 0x9f, 0xf1, 0xb4, 0x85, 0x21, 0x9e, 0xf0, 0x50, 0xb2, 0x66, 0x23, 0xb9, 0xbe, 0xc5, 0xf1, 0xe0, 0xe6, 0xb7, 0xb9, 0x6b, 0x49, 0xe2, 0xbb, 0x83, 0x1c, 0x01, 0x69, 0xe5, 0xb9, 0xf3, 0xd0, 0xa6, 0x4b, 0xf9, 0x0e, 0x55, 0x66, 0x8f, 0xd1, 0x28, 0x88, 0xdc, 0xfa, 0x55, 0xea, 0xae, 0xc2, 0x07, 0x6e, 0xa7, 0xb8, 0x4e, 0x88, 0xf2, 0x22, 0x25, 0xc5, 0x7e, 0x22, 0x0d, 0x7b, 0x96, 0xc2, 0xa5, 0x75, 0x3d, 0x7e, 0x3b, 0x45, 0xfa, 0x04, 0x6e, 0xa1, 0xfb, 0x66, 0x83, 0xe1, 0xa8, 0xcf, 0x81, 0x8b, 0x19, 0xaf, 0xbb, 0xe5, 0x4c, 0x12, 0xd2, 0x8c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12255 = { .name = "ecdsa_brainpoolp512t1_sha512_12255", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12255_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12255_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12255_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1500 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12256 for ECDSA, tcId is 1501 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12256_pubkey[] = { 0x50, 0xce, 0x8f, 0xf8, 0x75, 0xf5, 0x16, 0x28, 0x24, 0xbc, 0x04, 0x69, 0x3a, 0x98, 0xfb, 0x3e, 0xde, 0x4d, 0x85, 0x09, 0x86, 0x64, 0x0c, 0x5b, 0x6d, 0x8f, 0xc4, 0x51, 0xc4, 0x5d, 0xe8, 0xed, 0x6f, 0xdc, 0x28, 0xc0, 0x97, 0xba, 0x8e, 0xaf, 0xd5, 0x91, 0xe7, 0xdc, 0x48, 0xca, 0x5f, 0x9a, 0x94, 0x71, 0x06, 0x66, 0xc3, 0x10, 0xbe, 0x8c, 0x33, 0x5a, 0x4c, 0x68, 0xff, 0xff, 0xff, 0xff, 0x5a, 0x18, 0x64, 0x46, 0xdc, 0x03, 0x01, 0x89, 0x65, 0xb5, 0x08, 0xc5, 0x94, 0x1e, 0xe6, 0xb4, 0x62, 0x77, 0x4f, 0xe6, 0x22, 0x96, 0x10, 0xe2, 0x35, 0x67, 0x8a, 0x30, 0x47, 0x55, 0xe1, 0xb6, 0xea, 0xbf, 0x72, 0x5d, 0xfc, 0xff, 0x2a, 0x0c, 0xae, 0x7e, 0x8a, 0x7c, 0x6b, 0xf2, 0x20, 0xdd, 0xf0, 0x18, 0x9d, 0x0a, 0xfa, 0x78, 0x51, 0x99, 0x44, 0xb9, 0x95, 0x8c, 0x50, 0xac, 0x1e, 0x90, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12256_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12256_sig[] = { 0x72, 0xe1, 0xd9, 0x55, 0xe0, 0xd4, 0x57, 0x9f, 0xbb, 0xf3, 0xcd, 0x67, 0x00, 0xef, 0x43, 0x52, 0x92, 0xbe, 0x91, 0x9c, 0x42, 0xa0, 0xf0, 0x03, 0xd6, 0xa2, 0xa5, 0xe4, 0xb9, 0x4c, 0xfe, 0x1a, 0x4d, 0xbf, 0x4b, 0x4a, 0x17, 0x81, 0xf8, 0x1e, 0xf4, 0x70, 0x6f, 0x2e, 0x9f, 0x4f, 0xac, 0x8c, 0xd6, 0x71, 0x25, 0x16, 0x85, 0xeb, 0xe5, 0x00, 0x02, 0xd4, 0xe6, 0xf5, 0x32, 0xbb, 0x45, 0x4f, 0x87, 0x59, 0x67, 0xa2, 0xc1, 0x6d, 0x3f, 0xfc, 0x1c, 0x57, 0x18, 0x75, 0xb6, 0xf3, 0x5c, 0xa6, 0x67, 0x09, 0xfa, 0x86, 0xfe, 0x24, 0xf6, 0x1d, 0x0e, 0xce, 0x79, 0xb8, 0xdf, 0x55, 0x1c, 0x4c, 0xb7, 0x19, 0x18, 0x74, 0x81, 0x05, 0xf2, 0x6e, 0x36, 0x7e, 0xe1, 0x41, 0xf1, 0x3f, 0x1b, 0xdf, 0xbb, 0xb1, 0x07, 0x0d, 0x6a, 0xc0, 0x31, 0xa1, 0xae, 0xcf, 0x2b, 0x25, 0xba, 0x8d, 0x56, 0x3a, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12256 = { .name = "ecdsa_brainpoolp512t1_sha512_12256", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12256_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12256_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12256_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1501 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12257 for ECDSA, tcId is 1502 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12257_pubkey[] = { 0x50, 0xce, 0x8f, 0xf8, 0x75, 0xf5, 0x16, 0x28, 0x24, 0xbc, 0x04, 0x69, 0x3a, 0x98, 0xfb, 0x3e, 0xde, 0x4d, 0x85, 0x09, 0x86, 0x64, 0x0c, 0x5b, 0x6d, 0x8f, 0xc4, 0x51, 0xc4, 0x5d, 0xe8, 0xed, 0x6f, 0xdc, 0x28, 0xc0, 0x97, 0xba, 0x8e, 0xaf, 0xd5, 0x91, 0xe7, 0xdc, 0x48, 0xca, 0x5f, 0x9a, 0x94, 0x71, 0x06, 0x66, 0xc3, 0x10, 0xbe, 0x8c, 0x33, 0x5a, 0x4c, 0x68, 0xff, 0xff, 0xff, 0xff, 0x5a, 0x18, 0x64, 0x46, 0xdc, 0x03, 0x01, 0x89, 0x65, 0xb5, 0x08, 0xc5, 0x94, 0x1e, 0xe6, 0xb4, 0x62, 0x77, 0x4f, 0xe6, 0x22, 0x96, 0x10, 0xe2, 0x35, 0x67, 0x8a, 0x30, 0x47, 0x55, 0xe1, 0xb6, 0xea, 0xbf, 0x72, 0x5d, 0xfc, 0xff, 0x2a, 0x0c, 0xae, 0x7e, 0x8a, 0x7c, 0x6b, 0xf2, 0x20, 0xdd, 0xf0, 0x18, 0x9d, 0x0a, 0xfa, 0x78, 0x51, 0x99, 0x44, 0xb9, 0x95, 0x8c, 0x50, 0xac, 0x1e, 0x90, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12257_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12257_sig[] = { 0x35, 0xe6, 0xf5, 0x3d, 0x23, 0x0d, 0x2d, 0x18, 0xcf, 0xd3, 0xe6, 0xcc, 0xf2, 0xb6, 0xc9, 0xfd, 0x56, 0x83, 0x87, 0x60, 0x88, 0x4f, 0x18, 0x88, 0x75, 0x4b, 0xeb, 0x47, 0x4f, 0xeb, 0x3d, 0xc4, 0x10, 0x73, 0x07, 0x5b, 0x3b, 0x7c, 0x30, 0x95, 0x48, 0xbf, 0xce, 0x2e, 0xef, 0xc3, 0x10, 0x73, 0x28, 0xf3, 0x64, 0xb8, 0x16, 0xb9, 0x23, 0xe8, 0xef, 0xef, 0x89, 0xf3, 0x95, 0x39, 0xbc, 0x39, 0x1e, 0x5e, 0xdd, 0xd0, 0xff, 0x98, 0x3a, 0x9a, 0xf6, 0x0b, 0x30, 0xbf, 0xb1, 0x66, 0x24, 0x91, 0xbb, 0x90, 0x0f, 0x91, 0xbb, 0x50, 0x63, 0x32, 0xc6, 0x30, 0xed, 0x06, 0xd8, 0x3e, 0x34, 0x42, 0x04, 0x90, 0xd7, 0x82, 0xc9, 0xdf, 0x59, 0x1d, 0x39, 0xc5, 0x33, 0x64, 0xa5, 0xa6, 0xe3, 0xc6, 0xe3, 0x30, 0xcd, 0xe7, 0x76, 0x58, 0xf3, 0x4e, 0xd3, 0x4c, 0x33, 0xbf, 0x3d, 0x26, 0x4e, 0x35, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12257 = { .name = "ecdsa_brainpoolp512t1_sha512_12257", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12257_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12257_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12257_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1502 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12258 for ECDSA, tcId is 1503 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12258_pubkey[] = { 0x50, 0xce, 0x8f, 0xf8, 0x75, 0xf5, 0x16, 0x28, 0x24, 0xbc, 0x04, 0x69, 0x3a, 0x98, 0xfb, 0x3e, 0xde, 0x4d, 0x85, 0x09, 0x86, 0x64, 0x0c, 0x5b, 0x6d, 0x8f, 0xc4, 0x51, 0xc4, 0x5d, 0xe8, 0xed, 0x6f, 0xdc, 0x28, 0xc0, 0x97, 0xba, 0x8e, 0xaf, 0xd5, 0x91, 0xe7, 0xdc, 0x48, 0xca, 0x5f, 0x9a, 0x94, 0x71, 0x06, 0x66, 0xc3, 0x10, 0xbe, 0x8c, 0x33, 0x5a, 0x4c, 0x68, 0xff, 0xff, 0xff, 0xff, 0x5a, 0x18, 0x64, 0x46, 0xdc, 0x03, 0x01, 0x89, 0x65, 0xb5, 0x08, 0xc5, 0x94, 0x1e, 0xe6, 0xb4, 0x62, 0x77, 0x4f, 0xe6, 0x22, 0x96, 0x10, 0xe2, 0x35, 0x67, 0x8a, 0x30, 0x47, 0x55, 0xe1, 0xb6, 0xea, 0xbf, 0x72, 0x5d, 0xfc, 0xff, 0x2a, 0x0c, 0xae, 0x7e, 0x8a, 0x7c, 0x6b, 0xf2, 0x20, 0xdd, 0xf0, 0x18, 0x9d, 0x0a, 0xfa, 0x78, 0x51, 0x99, 0x44, 0xb9, 0x95, 0x8c, 0x50, 0xac, 0x1e, 0x90, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12258_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12258_sig[] = { 0x94, 0x87, 0x50, 0x32, 0xe0, 0x35, 0x8e, 0x02, 0xef, 0x74, 0x18, 0xc2, 0x14, 0x1a, 0x3c, 0x97, 0xa9, 0xcd, 0xc4, 0x24, 0x51, 0xc5, 0x49, 0x8d, 0x04, 0x8e, 0x9b, 0xce, 0xb2, 0x3b, 0x6c, 0x62, 0xf0, 0x24, 0x5c, 0x77, 0x8d, 0x06, 0x4b, 0x9f, 0xdb, 0x6c, 0x0c, 0x18, 0x2b, 0x2c, 0x8c, 0xba, 0x6f, 0x92, 0xc2, 0x0b, 0xdc, 0x39, 0xcc, 0xf6, 0xf7, 0x89, 0xd7, 0xcb, 0xfc, 0x87, 0x81, 0xe3, 0x33, 0xfc, 0x0f, 0x48, 0x14, 0x63, 0xd9, 0x69, 0x00, 0xa5, 0x91, 0x58, 0xa7, 0x8c, 0x28, 0x8b, 0xd7, 0x85, 0x93, 0xa1, 0xcd, 0xb3, 0xe2, 0x87, 0xae, 0x75, 0xc5, 0x97, 0xcf, 0x8d, 0x59, 0xac, 0x26, 0x36, 0xa8, 0x53, 0x5e, 0x17, 0x23, 0xf1, 0x27, 0x91, 0xb9, 0xad, 0xa9, 0xd0, 0xf4, 0x50, 0x9e, 0xb4, 0x8e, 0x57, 0x3c, 0xf4, 0xf6, 0x95, 0x71, 0xd5, 0x27, 0xa2, 0x2d, 0x14, 0xe3, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12258 = { .name = "ecdsa_brainpoolp512t1_sha512_12258", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12258_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12258_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12258_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 1503 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12259 for ECDSA, tcId is 1504 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12259_pubkey[] = { 0x4c, 0x82, 0x7f, 0x0f, 0x3d, 0xa1, 0xa4, 0x24, 0xa2, 0xce, 0xf8, 0xa3, 0x2f, 0x51, 0x04, 0x6e, 0x6e, 0x99, 0xb8, 0x34, 0x91, 0x2c, 0x77, 0x9b, 0x9b, 0x8c, 0xed, 0x1d, 0xf4, 0x94, 0x13, 0x79, 0x08, 0x2a, 0x75, 0x45, 0xfb, 0x34, 0xf1, 0xda, 0x04, 0x13, 0x54, 0x2f, 0xfe, 0x71, 0x3a, 0xba, 0x57, 0xe7, 0xc2, 0x75, 0xe2, 0x81, 0x97, 0x74, 0x6f, 0xc7, 0xe8, 0x37, 0xa3, 0x25, 0xf4, 0x2a, 0x23, 0xd8, 0x87, 0x40, 0x01, 0x8a, 0xea, 0x65, 0x5c, 0xe5, 0xb7, 0x63, 0xaa, 0x3f, 0xb1, 0xa8, 0x30, 0x72, 0xf8, 0x66, 0xf7, 0xc1, 0x45, 0x4f, 0x8c, 0x02, 0x3c, 0x19, 0x69, 0x53, 0x02, 0x6a, 0xbe, 0x4a, 0x01, 0xf5, 0xed, 0x41, 0x4c, 0x70, 0x3c, 0x4b, 0x45, 0x8d, 0x09, 0xe0, 0x81, 0x5d, 0xf6, 0x63, 0x79, 0x0b, 0x77, 0xf7, 0xa9, 0xa3, 0x8b, 0x8f, 0x07, 0xa9, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12259_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12259_sig[] = { 0x6f, 0xc2, 0x99, 0x76, 0xce, 0x99, 0xca, 0x89, 0x61, 0xa9, 0x1a, 0x97, 0xdc, 0x6a, 0x4a, 0x11, 0x0c, 0xf0, 0x87, 0xee, 0xf1, 0x86, 0x5b, 0xce, 0x8f, 0xb4, 0x7f, 0x70, 0x4b, 0x64, 0x1f, 0x71, 0x70, 0x12, 0x1d, 0xb0, 0x2c, 0xe9, 0x50, 0x66, 0xe6, 0x72, 0xef, 0xc0, 0xbc, 0xc6, 0xfd, 0x5c, 0x6a, 0x6a, 0x6c, 0x16, 0x2c, 0xdf, 0xff, 0xc6, 0x6d, 0xc2, 0x02, 0xd3, 0x0f, 0x16, 0xba, 0xe0, 0x2e, 0xc8, 0xe0, 0xd9, 0x2e, 0x57, 0x6b, 0x41, 0x77, 0x56, 0xe3, 0x87, 0xa5, 0x41, 0x8e, 0x2b, 0x83, 0xfd, 0xf0, 0x4b, 0x6f, 0x08, 0x7b, 0x1f, 0x01, 0xbf, 0x58, 0xf8, 0xd6, 0x69, 0x15, 0x77, 0x75, 0x51, 0x72, 0xfb, 0xfc, 0x71, 0xa2, 0x96, 0x89, 0xfc, 0x82, 0x37, 0x37, 0x88, 0x2c, 0xf8, 0xdf, 0x16, 0xf0, 0xbc, 0x29, 0xcb, 0x38, 0x84, 0xe7, 0xc0, 0x4b, 0x8e, 0x5d, 0xc7, 0x5c, 0x4f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12259 = { .name = "ecdsa_brainpoolp512t1_sha512_12259", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12259_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12259_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12259_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1504 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12260 for ECDSA, tcId is 1505 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12260_pubkey[] = { 0x4c, 0x82, 0x7f, 0x0f, 0x3d, 0xa1, 0xa4, 0x24, 0xa2, 0xce, 0xf8, 0xa3, 0x2f, 0x51, 0x04, 0x6e, 0x6e, 0x99, 0xb8, 0x34, 0x91, 0x2c, 0x77, 0x9b, 0x9b, 0x8c, 0xed, 0x1d, 0xf4, 0x94, 0x13, 0x79, 0x08, 0x2a, 0x75, 0x45, 0xfb, 0x34, 0xf1, 0xda, 0x04, 0x13, 0x54, 0x2f, 0xfe, 0x71, 0x3a, 0xba, 0x57, 0xe7, 0xc2, 0x75, 0xe2, 0x81, 0x97, 0x74, 0x6f, 0xc7, 0xe8, 0x37, 0xa3, 0x25, 0xf4, 0x2a, 0x23, 0xd8, 0x87, 0x40, 0x01, 0x8a, 0xea, 0x65, 0x5c, 0xe5, 0xb7, 0x63, 0xaa, 0x3f, 0xb1, 0xa8, 0x30, 0x72, 0xf8, 0x66, 0xf7, 0xc1, 0x45, 0x4f, 0x8c, 0x02, 0x3c, 0x19, 0x69, 0x53, 0x02, 0x6a, 0xbe, 0x4a, 0x01, 0xf5, 0xed, 0x41, 0x4c, 0x70, 0x3c, 0x4b, 0x45, 0x8d, 0x09, 0xe0, 0x81, 0x5d, 0xf6, 0x63, 0x79, 0x0b, 0x77, 0xf7, 0xa9, 0xa3, 0x8b, 0x8f, 0x07, 0xa9, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12260_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12260_sig[] = { 0x5b, 0xc9, 0x31, 0x00, 0x7f, 0xd6, 0xc7, 0x1a, 0x64, 0xdf, 0x18, 0xfe, 0x1b, 0x44, 0xaf, 0xaf, 0x58, 0xec, 0xdb, 0xb2, 0x1e, 0x7b, 0xc9, 0xdd, 0xa8, 0xf1, 0x1b, 0x0c, 0x23, 0xf5, 0xcb, 0xab, 0xe6, 0x59, 0xde, 0x7a, 0x6a, 0x68, 0xf9, 0xfd, 0xb5, 0x9a, 0x78, 0xc7, 0x3f, 0x7c, 0x30, 0x76, 0x77, 0x85, 0x7e, 0x04, 0xa6, 0xee, 0x2b, 0x0a, 0x71, 0xfa, 0xe5, 0x72, 0xbe, 0xc5, 0x19, 0x7d, 0x68, 0x3c, 0xc1, 0x02, 0x78, 0x16, 0x9d, 0xc2, 0x62, 0xb5, 0xeb, 0xb8, 0xee, 0x49, 0x8b, 0x9e, 0x48, 0x95, 0x7c, 0x91, 0x29, 0x3c, 0x2e, 0xce, 0x45, 0xe6, 0x39, 0x8a, 0x4a, 0x7f, 0x7f, 0xa0, 0x5d, 0xdb, 0x6f, 0x39, 0xdd, 0x67, 0x29, 0x45, 0x0c, 0xc8, 0x22, 0x66, 0x31, 0xa2, 0xcc, 0xee, 0xaf, 0x73, 0x5b, 0x1e, 0x54, 0xf0, 0x23, 0x27, 0x20, 0x59, 0xa0, 0x56, 0x82, 0x29, 0xc5, 0x00, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12260 = { .name = "ecdsa_brainpoolp512t1_sha512_12260", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12260_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12260_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12260_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1505 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12261 for ECDSA, tcId is 1506 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12261_pubkey[] = { 0x4c, 0x82, 0x7f, 0x0f, 0x3d, 0xa1, 0xa4, 0x24, 0xa2, 0xce, 0xf8, 0xa3, 0x2f, 0x51, 0x04, 0x6e, 0x6e, 0x99, 0xb8, 0x34, 0x91, 0x2c, 0x77, 0x9b, 0x9b, 0x8c, 0xed, 0x1d, 0xf4, 0x94, 0x13, 0x79, 0x08, 0x2a, 0x75, 0x45, 0xfb, 0x34, 0xf1, 0xda, 0x04, 0x13, 0x54, 0x2f, 0xfe, 0x71, 0x3a, 0xba, 0x57, 0xe7, 0xc2, 0x75, 0xe2, 0x81, 0x97, 0x74, 0x6f, 0xc7, 0xe8, 0x37, 0xa3, 0x25, 0xf4, 0x2a, 0x23, 0xd8, 0x87, 0x40, 0x01, 0x8a, 0xea, 0x65, 0x5c, 0xe5, 0xb7, 0x63, 0xaa, 0x3f, 0xb1, 0xa8, 0x30, 0x72, 0xf8, 0x66, 0xf7, 0xc1, 0x45, 0x4f, 0x8c, 0x02, 0x3c, 0x19, 0x69, 0x53, 0x02, 0x6a, 0xbe, 0x4a, 0x01, 0xf5, 0xed, 0x41, 0x4c, 0x70, 0x3c, 0x4b, 0x45, 0x8d, 0x09, 0xe0, 0x81, 0x5d, 0xf6, 0x63, 0x79, 0x0b, 0x77, 0xf7, 0xa9, 0xa3, 0x8b, 0x8f, 0x07, 0xa9, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12261_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12261_sig[] = { 0x44, 0x31, 0x4a, 0xdc, 0x96, 0x3c, 0x90, 0xd0, 0x8e, 0xbe, 0xfd, 0xb1, 0x9f, 0x54, 0x26, 0x67, 0x8d, 0xdf, 0x05, 0xdf, 0xea, 0xee, 0x54, 0xe5, 0x8a, 0x8f, 0x6b, 0x68, 0x98, 0x32, 0xf0, 0x1b, 0x75, 0xcc, 0xf2, 0xa1, 0x3a, 0xc9, 0xba, 0x96, 0x73, 0x9b, 0xa2, 0xca, 0xa2, 0x94, 0x87, 0x05, 0xa4, 0x7b, 0x01, 0xa2, 0x13, 0x4c, 0xe0, 0x23, 0xc7, 0xa5, 0x1c, 0x43, 0xae, 0xa2, 0xcd, 0x47, 0x09, 0x76, 0x9a, 0xbf, 0xcb, 0xa3, 0x61, 0xf0, 0x4b, 0xc6, 0x61, 0xd2, 0x8d, 0x51, 0xed, 0xb6, 0xc0, 0xa6, 0x1d, 0x02, 0xa2, 0xb0, 0x92, 0xa2, 0x39, 0x92, 0x8d, 0x5d, 0xf3, 0xed, 0x88, 0xae, 0x50, 0xcb, 0x93, 0xe1, 0xfc, 0x25, 0xd7, 0xa4, 0xb0, 0xf5, 0x08, 0x8e, 0x73, 0x00, 0x36, 0x3e, 0xba, 0xea, 0x67, 0x97, 0xb3, 0x7f, 0xa6, 0x8c, 0x2b, 0x3a, 0x92, 0xba, 0x08, 0x6a, 0xac, 0x99, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12261 = { .name = "ecdsa_brainpoolp512t1_sha512_12261", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12261_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12261_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12261_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1506 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12262 for ECDSA, tcId is 1507 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12262_pubkey[] = { 0x6b, 0xa6, 0xe0, 0x0e, 0xf3, 0x57, 0x39, 0xa4, 0x00, 0xc6, 0x12, 0xf6, 0x03, 0xb9, 0x36, 0x3f, 0x34, 0x42, 0xb2, 0xfc, 0xec, 0x8a, 0x94, 0xe2, 0x68, 0x58, 0x18, 0xea, 0x11, 0x49, 0x25, 0xe6, 0x8d, 0xb1, 0x5e, 0xc7, 0xeb, 0xc4, 0xfe, 0x77, 0x88, 0x38, 0xd1, 0x83, 0xb1, 0x4e, 0x16, 0xf2, 0xeb, 0xa1, 0x07, 0x25, 0x6e, 0x1e, 0x65, 0xca, 0xd3, 0x01, 0xaf, 0x86, 0x95, 0x21, 0xf6, 0x4e, 0x4a, 0x46, 0x91, 0x91, 0x78, 0x1d, 0x85, 0x03, 0xa3, 0xa4, 0x1b, 0xdd, 0x12, 0x03, 0xf9, 0x6a, 0xf3, 0x75, 0x47, 0xd8, 0xcf, 0x4d, 0xfb, 0xd7, 0x80, 0xff, 0xb2, 0x23, 0xd6, 0x0c, 0x8f, 0x0a, 0xd3, 0x03, 0xf5, 0x10, 0x94, 0x47, 0x56, 0x41, 0x64, 0xc4, 0xae, 0x85, 0x31, 0x08, 0x99, 0xd0, 0x89, 0xd3, 0x33, 0xcf, 0xb2, 0x65, 0x58, 0x52, 0xa5, 0x1d, 0xbb, 0x31, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12262_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12262_sig[] = { 0x6f, 0xa3, 0x40, 0x1b, 0x7f, 0xfd, 0x9e, 0x45, 0x56, 0x13, 0xf1, 0x03, 0x2f, 0x75, 0x7e, 0xe3, 0x18, 0xe3, 0xfa, 0xd1, 0xeb, 0x06, 0x4f, 0x5b, 0x70, 0x36, 0xef, 0xdb, 0xf6, 0xc1, 0xd7, 0xa1, 0xc4, 0x03, 0x28, 0xf4, 0xbb, 0x24, 0x35, 0xb3, 0x7a, 0x21, 0xb6, 0xf1, 0xf9, 0xd7, 0xd8, 0x53, 0xee, 0xac, 0x26, 0x60, 0xc4, 0x5d, 0x65, 0x45, 0x9d, 0x73, 0xce, 0x19, 0x17, 0x67, 0xc6, 0x93, 0x92, 0xe9, 0x0f, 0x5e, 0x88, 0x36, 0x38, 0xd9, 0xba, 0xc9, 0xb4, 0xef, 0xf9, 0x33, 0x3d, 0xfb, 0xa5, 0x58, 0x60, 0xa9, 0x78, 0x10, 0xa5, 0x05, 0xba, 0xa7, 0xf3, 0x17, 0xcf, 0xee, 0x0d, 0x44, 0xc9, 0xbd, 0x33, 0x21, 0x63, 0xdb, 0x3d, 0x63, 0xe9, 0x75, 0x44, 0x3b, 0x04, 0x57, 0xcc, 0x52, 0x73, 0x7a, 0xa8, 0x4d, 0xbc, 0xbf, 0xdc, 0xd5, 0xb8, 0xd4, 0xf7, 0xf8, 0x38, 0x89, 0x73, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12262 = { .name = "ecdsa_brainpoolp512t1_sha512_12262", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12262_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12262_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12262_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1507 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12263 for ECDSA, tcId is 1508 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12263_pubkey[] = { 0x6b, 0xa6, 0xe0, 0x0e, 0xf3, 0x57, 0x39, 0xa4, 0x00, 0xc6, 0x12, 0xf6, 0x03, 0xb9, 0x36, 0x3f, 0x34, 0x42, 0xb2, 0xfc, 0xec, 0x8a, 0x94, 0xe2, 0x68, 0x58, 0x18, 0xea, 0x11, 0x49, 0x25, 0xe6, 0x8d, 0xb1, 0x5e, 0xc7, 0xeb, 0xc4, 0xfe, 0x77, 0x88, 0x38, 0xd1, 0x83, 0xb1, 0x4e, 0x16, 0xf2, 0xeb, 0xa1, 0x07, 0x25, 0x6e, 0x1e, 0x65, 0xca, 0xd3, 0x01, 0xaf, 0x86, 0x95, 0x21, 0xf6, 0x4e, 0x4a, 0x46, 0x91, 0x91, 0x78, 0x1d, 0x85, 0x03, 0xa3, 0xa4, 0x1b, 0xdd, 0x12, 0x03, 0xf9, 0x6a, 0xf3, 0x75, 0x47, 0xd8, 0xcf, 0x4d, 0xfb, 0xd7, 0x80, 0xff, 0xb2, 0x23, 0xd6, 0x0c, 0x8f, 0x0a, 0xd3, 0x03, 0xf5, 0x10, 0x94, 0x47, 0x56, 0x41, 0x64, 0xc4, 0xae, 0x85, 0x31, 0x08, 0x99, 0xd0, 0x89, 0xd3, 0x33, 0xcf, 0xb2, 0x65, 0x58, 0x52, 0xa5, 0x1d, 0xbb, 0x31, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12263_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12263_sig[] = { 0x8f, 0x1a, 0x46, 0xfa, 0x97, 0xc1, 0xf6, 0x4e, 0x99, 0x9a, 0x37, 0x3a, 0xf6, 0x9c, 0xda, 0x2d, 0xa5, 0x31, 0x44, 0x0f, 0x22, 0x38, 0x33, 0x28, 0xf0, 0x4b, 0x30, 0xb2, 0x03, 0x66, 0xb3, 0x81, 0x4d, 0x0a, 0x56, 0x16, 0xfc, 0x5c, 0xcb, 0xf7, 0xcb, 0xca, 0x97, 0xe9, 0x5d, 0x20, 0x99, 0xfc, 0x7c, 0x5b, 0xb5, 0x82, 0xec, 0xad, 0xcd, 0xa9, 0xb5, 0x35, 0x11, 0x7d, 0xaa, 0x9c, 0x39, 0x92, 0x18, 0x6a, 0x62, 0x61, 0x32, 0xdf, 0x3f, 0x81, 0x86, 0x8c, 0xe9, 0xd5, 0x96, 0x3f, 0x93, 0x1e, 0x01, 0x42, 0x67, 0x72, 0x54, 0xa3, 0x1a, 0x86, 0x47, 0x55, 0x6b, 0xf8, 0x96, 0x90, 0x7f, 0x29, 0xd6, 0x21, 0x67, 0xb3, 0xcb, 0x2e, 0xa8, 0x92, 0xa4, 0x38, 0x4d, 0xaf, 0x88, 0x55, 0xe2, 0x58, 0x36, 0x1c, 0xb6, 0x76, 0x2d, 0xe7, 0x03, 0xc6, 0x3d, 0x64, 0x45, 0xcd, 0x68, 0xab, 0x4d, 0x33, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12263 = { .name = "ecdsa_brainpoolp512t1_sha512_12263", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12263_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12263_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12263_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1508 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12264 for ECDSA, tcId is 1509 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512t1_sha512_12264_pubkey[] = { 0x6b, 0xa6, 0xe0, 0x0e, 0xf3, 0x57, 0x39, 0xa4, 0x00, 0xc6, 0x12, 0xf6, 0x03, 0xb9, 0x36, 0x3f, 0x34, 0x42, 0xb2, 0xfc, 0xec, 0x8a, 0x94, 0xe2, 0x68, 0x58, 0x18, 0xea, 0x11, 0x49, 0x25, 0xe6, 0x8d, 0xb1, 0x5e, 0xc7, 0xeb, 0xc4, 0xfe, 0x77, 0x88, 0x38, 0xd1, 0x83, 0xb1, 0x4e, 0x16, 0xf2, 0xeb, 0xa1, 0x07, 0x25, 0x6e, 0x1e, 0x65, 0xca, 0xd3, 0x01, 0xaf, 0x86, 0x95, 0x21, 0xf6, 0x4e, 0x4a, 0x46, 0x91, 0x91, 0x78, 0x1d, 0x85, 0x03, 0xa3, 0xa4, 0x1b, 0xdd, 0x12, 0x03, 0xf9, 0x6a, 0xf3, 0x75, 0x47, 0xd8, 0xcf, 0x4d, 0xfb, 0xd7, 0x80, 0xff, 0xb2, 0x23, 0xd6, 0x0c, 0x8f, 0x0a, 0xd3, 0x03, 0xf5, 0x10, 0x94, 0x47, 0x56, 0x41, 0x64, 0xc4, 0xae, 0x85, 0x31, 0x08, 0x99, 0xd0, 0x89, 0xd3, 0x33, 0xcf, 0xb2, 0x65, 0x58, 0x52, 0xa5, 0x1d, 0xbb, 0x31, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12264_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512t1_sha512_12264_sig[] = { 0x10, 0x8b, 0x5e, 0xdd, 0x42, 0x47, 0x45, 0xfc, 0x20, 0xda, 0x9b, 0xdc, 0xb8, 0x3c, 0xf2, 0xf8, 0xc0, 0x43, 0x9b, 0x39, 0x0d, 0x72, 0x80, 0x51, 0x49, 0xb8, 0xde, 0xb8, 0x53, 0x52, 0xd7, 0x9b, 0x95, 0x79, 0xd5, 0xf7, 0xf1, 0xb9, 0x2e, 0x79, 0xdd, 0xff, 0x5c, 0x05, 0xf8, 0xc0, 0x46, 0xf6, 0xbc, 0xe7, 0x12, 0x95, 0x65, 0xd3, 0x39, 0x37, 0xc7, 0x2a, 0x34, 0xd3, 0x43, 0x65, 0x87, 0xc4, 0x8f, 0x3a, 0xf0, 0x9a, 0x51, 0x7f, 0x56, 0x4a, 0xdb, 0x3d, 0xbb, 0x34, 0x5c, 0x12, 0x2d, 0xe4, 0x16, 0x40, 0xf4, 0xb3, 0xcc, 0x6c, 0x5c, 0xbc, 0x0e, 0x2b, 0x36, 0xa8, 0x36, 0xb2, 0x65, 0x3c, 0xaa, 0x11, 0x2a, 0xe0, 0x3f, 0x75, 0x3b, 0x0e, 0x90, 0x70, 0xc9, 0xfc, 0x7f, 0x0d, 0x14, 0x0b, 0x33, 0xc9, 0xd2, 0xb8, 0x37, 0x83, 0x7d, 0x19, 0x47, 0xc0, 0x3d, 0x14, 0x19, 0x57, 0xff, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512t1_sha512_12264 = { .name = "ecdsa_brainpoolp512t1_sha512_12264", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512t1_str_params, .pubkey = ecdsa_brainpoolp512t1_sha512_12264_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512t1_sha512_12264_msg, .msglen = 7, .sig = ecdsa_brainpoolp512t1_sha512_12264_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1509 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) */ /* Test 12265 for ECDSA, tcId is 1510 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12265_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12265_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12265_sig[] = { 0xc9, 0x55, 0x18, 0xba, 0xe4, 0xcd, 0xd1, 0x31, 0x17, 0x84, 0x59, 0x0a, 0x78, 0x46, 0x50, 0xc2, 0x63, 0x3a, 0xe1, 0x92, 0xd2, 0x92, 0x95, 0x53, 0xe9, 0x6e, 0xdf, 0x5f, 0x6a, 0xfb, 0x37, 0xf9, 0x92, 0x4b, 0x5e, 0x4c, 0x94, 0x53, 0xbd, 0xc2, 0xdc, 0xb9, 0xac, 0x15, 0x65, 0xb3, 0xb1, 0x18, 0x2d, 0x74, 0x60, 0x7e, 0x33, 0x9d, 0xe8, 0xff, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12265 = { .name = "ecdsa_brainpoolp224r1_sha256_12265", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12265_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12265_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12265_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1510 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12266 for ECDSA, tcId is 1511 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12266_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12266_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12266_sig[] = { 0x2d, 0x0c, 0xdd, 0x51, 0x0f, 0x69, 0x00, 0x7d, 0xeb, 0x38, 0xad, 0x89, 0x91, 0x22, 0xb9, 0x26, 0xcd, 0x68, 0x4e, 0xe8, 0x5a, 0x29, 0x89, 0x2a, 0x6f, 0x8e, 0x29, 0x49, 0xa6, 0x09, 0x82, 0xac, 0x01, 0xe8, 0x43, 0xbf, 0x40, 0x39, 0xba, 0xf0, 0xe4, 0xc5, 0x4d, 0x80, 0x3e, 0xe8, 0x6c, 0x9b, 0x39, 0x6b, 0x71, 0x9a, 0x58, 0xf2, 0xb0, 0x84, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12266 = { .name = "ecdsa_brainpoolp224r1_sha256_12266", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12266_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12266_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12266_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1511 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12267 for ECDSA, tcId is 1512 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12267_pubkey[] = { 0x51, 0x2e, 0x58, 0x17, 0x31, 0xc9, 0xc4, 0x60, 0xbb, 0x70, 0x5b, 0x60, 0xda, 0x97, 0x6c, 0xcb, 0x1b, 0x0e, 0xf4, 0x21, 0x78, 0x51, 0x06, 0xba, 0x2c, 0xcd, 0xd2, 0x38, 0x0f, 0x21, 0xd5, 0xba, 0xcd, 0xf8, 0x1c, 0x0c, 0xb7, 0x8f, 0xa1, 0x51, 0x23, 0x7d, 0xb3, 0x13, 0x0a, 0xd4, 0xde, 0xf3, 0x73, 0xf3, 0xe5, 0x23, 0x39, 0x8c, 0x2c, 0xf7, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12267_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12267_sig[] = { 0xbf, 0x03, 0x00, 0x76, 0x99, 0xcb, 0xd3, 0x6c, 0x56, 0x40, 0x29, 0x34, 0x0d, 0x93, 0xe7, 0xa6, 0x92, 0x30, 0xac, 0xeb, 0x75, 0x9a, 0x3d, 0x09, 0x18, 0xee, 0x0e, 0x6c, 0x99, 0x74, 0x3b, 0xa3, 0xa4, 0xe7, 0x74, 0x18, 0xad, 0xad, 0xc7, 0xb2, 0xdb, 0x67, 0xad, 0xec, 0x8f, 0xc8, 0xb2, 0x44, 0xe5, 0x6e, 0xc4, 0xf2, 0xd5, 0xaf, 0xc0, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12267 = { .name = "ecdsa_brainpoolp224r1_sha256_12267", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12267_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12267_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12267_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1512 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12268 for ECDSA, tcId is 1513 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12268_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12268_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12268_sig[] = { 0xb2, 0x07, 0xe8, 0x6c, 0xb0, 0x78, 0x9b, 0x09, 0xde, 0x84, 0xe0, 0xb0, 0x5c, 0x87, 0x5c, 0x13, 0x4c, 0xb7, 0x01, 0xb8, 0x25, 0xb7, 0xe3, 0x73, 0x69, 0xd1, 0x49, 0x7f, 0xb6, 0x6f, 0x89, 0x0b, 0x6c, 0x61, 0x17, 0x1d, 0x2d, 0x47, 0x43, 0x91, 0xd5, 0xfb, 0xf5, 0x20, 0x5a, 0xfe, 0xf3, 0xd8, 0x62, 0x8e, 0xd3, 0x72, 0x8d, 0x5c, 0x16, 0x55, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12268 = { .name = "ecdsa_brainpoolp224r1_sha256_12268", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12268_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12268_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12268_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 1513 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12269 for ECDSA, tcId is 1514 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12269_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12269_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12269_sig[] = { 0xd2, 0xc0, 0xae, 0x45, 0x1c, 0x1d, 0x66, 0x1c, 0xd3, 0xc1, 0x37, 0xa2, 0xb0, 0xc2, 0xa5, 0x34, 0x9a, 0x1b, 0x22, 0xe8, 0x90, 0x09, 0x3f, 0x3b, 0xb0, 0x21, 0xb4, 0x70, 0x6b, 0x7b, 0xf3, 0xbe, 0xe7, 0x7d, 0x48, 0xb3, 0x2b, 0x0b, 0x82, 0x2f, 0x5d, 0x4f, 0x0d, 0xca, 0x0a, 0x01, 0x79, 0x19, 0xb0, 0x9f, 0x92, 0xc7, 0x66, 0x9c, 0xf5, 0xcd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12269 = { .name = "ecdsa_brainpoolp224r1_sha256_12269", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12269_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12269_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12269_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 1514 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12270 for ECDSA, tcId is 1515 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12270_pubkey[] = { 0xac, 0x55, 0xd1, 0xb3, 0xfe, 0xd4, 0xae, 0xe0, 0x3f, 0xa3, 0x61, 0x5d, 0x22, 0x5a, 0x9c, 0xba, 0x5c, 0x02, 0x84, 0x41, 0x6f, 0xba, 0xf9, 0xa7, 0x61, 0x35, 0xf7, 0x62, 0x17, 0xa8, 0x88, 0x39, 0x5b, 0xce, 0xd3, 0x49, 0x77, 0xa8, 0x48, 0x23, 0x70, 0xd5, 0x6e, 0xbc, 0x62, 0xaa, 0x1c, 0xa8, 0x1b, 0xc3, 0x30, 0xf4, 0x9d, 0x4a, 0x14, 0x1d, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12270_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12270_sig[] = { 0xad, 0x30, 0x5a, 0xff, 0x31, 0x20, 0xdc, 0xaa, 0x93, 0x23, 0x83, 0x88, 0xf9, 0x6f, 0x26, 0xb4, 0x4e, 0x2a, 0xbf, 0xbf, 0xc8, 0xe3, 0x66, 0xe9, 0x36, 0xa1, 0xf5, 0xf0, 0x91, 0x0d, 0x0c, 0x66, 0xc1, 0x8b, 0x74, 0xdc, 0xad, 0x62, 0xda, 0x50, 0x8f, 0x8b, 0xb5, 0xe4, 0x44, 0x83, 0xc2, 0x0d, 0xf9, 0x5d, 0x7b, 0x33, 0x48, 0xc5, 0xd3, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12270 = { .name = "ecdsa_brainpoolp224r1_sha256_12270", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12270_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12270_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12270_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP224t1, tcId is 1515 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12271 for ECDSA, tcId is 1516 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12271_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12271_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12271_sig[] = { 0xa2, 0xf1, 0xca, 0x07, 0x01, 0x2f, 0x6d, 0x76, 0xf0, 0xc1, 0xa7, 0xed, 0xc9, 0x8e, 0x97, 0xac, 0x54, 0x39, 0xea, 0x6f, 0x53, 0x63, 0x76, 0xe1, 0x51, 0x82, 0x43, 0xe1, 0x8d, 0xa8, 0x99, 0xbe, 0x8b, 0x73, 0xad, 0x74, 0xf3, 0x1c, 0xde, 0x80, 0x30, 0xec, 0x69, 0x4c, 0x3c, 0x03, 0x80, 0xa3, 0x03, 0x55, 0x45, 0x57, 0x00, 0x9d, 0xdc, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12271 = { .name = "ecdsa_brainpoolp224r1_sha256_12271", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12271_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12271_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12271_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 1516 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12272 for ECDSA, tcId is 1517 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12272_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12272_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12272_sig[] = { 0x8e, 0x24, 0x5a, 0x23, 0xd9, 0x5e, 0x8c, 0x85, 0x12, 0x68, 0x9c, 0x6a, 0x7b, 0x79, 0xb3, 0x38, 0xf4, 0x62, 0x81, 0x16, 0xd9, 0x2e, 0x26, 0x59, 0x65, 0x0b, 0xb8, 0x79, 0x26, 0x02, 0xf7, 0xec, 0x88, 0xab, 0x2e, 0x7e, 0x10, 0xfa, 0x02, 0xaa, 0xc4, 0x42, 0x47, 0x6e, 0xe2, 0x6f, 0xfb, 0x82, 0x31, 0xd0, 0x17, 0x35, 0x5f, 0x80, 0x47, 0x61, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12272 = { .name = "ecdsa_brainpoolp224r1_sha256_12272", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12272_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12272_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12272_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 1517 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12273 for ECDSA, tcId is 1518 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12273_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0x12, 0x0f, 0x96, 0x34, 0x3d, 0xeb, 0x80, 0x09, 0x3e, 0xcb, 0x76, 0x95, 0xc2, 0xd2, 0xa5, 0xbe, 0x99, 0x37, 0xa2, 0x58, 0x72, 0x3d, 0x78, 0xed, 0x00, 0xaa, 0x1e, 0xdf, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12273_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12273_sig[] = { 0x94, 0x8a, 0x85, 0x52, 0x85, 0xcf, 0xd2, 0x05, 0x60, 0xef, 0xa4, 0x5f, 0x93, 0x30, 0x6a, 0xa5, 0xd0, 0xae, 0xb3, 0x98, 0x8b, 0x22, 0x45, 0x87, 0xfc, 0x30, 0x12, 0x2f, 0xd5, 0x4a, 0xcf, 0x35, 0x1e, 0x53, 0x8f, 0x16, 0x29, 0x91, 0xb9, 0x17, 0x68, 0xe3, 0x69, 0x0f, 0x14, 0x90, 0x95, 0xd3, 0x13, 0x97, 0xcf, 0x01, 0xad, 0x13, 0x6a, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12273 = { .name = "ecdsa_brainpoolp224r1_sha256_12273", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12273_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12273_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12273_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP224t1, tcId is 1518 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12274 for ECDSA, tcId is 1519 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12274_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12274_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12274_sig[] = { 0x1c, 0x2d, 0x0f, 0x67, 0x6f, 0x99, 0xa2, 0x95, 0x5b, 0x72, 0xca, 0x32, 0xd2, 0x89, 0x68, 0xcc, 0xbd, 0x38, 0xd3, 0xde, 0x70, 0xbc, 0xed, 0xbb, 0xe1, 0x59, 0x22, 0x91, 0xcb, 0x7a, 0x39, 0xfa, 0xa9, 0xab, 0x05, 0x08, 0xa6, 0xaa, 0xa7, 0x72, 0xf0, 0xa0, 0x03, 0xc7, 0x03, 0xab, 0x84, 0xff, 0xcd, 0xdd, 0x9a, 0xc5, 0x0b, 0xa1, 0xf1, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12274 = { .name = "ecdsa_brainpoolp224r1_sha256_12274", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12274_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12274_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12274_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 1519 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12275 for ECDSA, tcId is 1520 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12275_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12275_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12275_sig[] = { 0xd3, 0xa0, 0xa4, 0x92, 0x4f, 0x86, 0xc5, 0x24, 0xfe, 0x77, 0x13, 0x42, 0xd6, 0xcb, 0x64, 0x5d, 0x72, 0x80, 0x7f, 0xa2, 0x50, 0xcb, 0x7b, 0x27, 0x50, 0x2a, 0x7f, 0xc9, 0x53, 0x93, 0xc6, 0x3f, 0xd2, 0xc6, 0x82, 0x69, 0x1d, 0xc3, 0xcd, 0x91, 0x1f, 0x17, 0x5a, 0x5f, 0x11, 0x5d, 0x00, 0x2e, 0x33, 0x79, 0x4a, 0xd8, 0xd3, 0x9b, 0x6c, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12275 = { .name = "ecdsa_brainpoolp224r1_sha256_12275", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12275_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12275_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12275_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 1520 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12276 for ECDSA, tcId is 1521 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12276_pubkey[] = { 0x8b, 0x31, 0x9f, 0x2e, 0xd0, 0x74, 0xa2, 0x0e, 0xc4, 0x2d, 0x86, 0x9c, 0x7f, 0x99, 0xbd, 0x91, 0x46, 0xed, 0x82, 0x63, 0x29, 0x7b, 0xfe, 0x00, 0x4f, 0x27, 0xc5, 0x9b, 0xc5, 0xb1, 0x9e, 0x75, 0xe8, 0x57, 0xe6, 0x7c, 0xeb, 0x4c, 0xb9, 0x8f, 0xb2, 0xff, 0x31, 0xc9, 0x17, 0x67, 0x64, 0xff, 0x25, 0x9d, 0x11, 0x08, 0x7e, 0x1e, 0xa2, 0x20, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12276_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12276_sig[] = { 0x3a, 0x00, 0x1e, 0x9b, 0xd2, 0x9a, 0x13, 0x7e, 0xf6, 0x55, 0xaa, 0x8f, 0xc0, 0x2a, 0xd9, 0xcf, 0xb1, 0x91, 0x71, 0x66, 0x8d, 0xf2, 0xff, 0xec, 0xbb, 0x16, 0x6f, 0xab, 0x64, 0x6b, 0x46, 0x95, 0x54, 0x7d, 0xdb, 0x39, 0x28, 0x20, 0xe0, 0xf8, 0x43, 0x50, 0x86, 0x2a, 0x7c, 0xff, 0x33, 0x2b, 0x03, 0x6f, 0x04, 0x6d, 0x4c, 0x2f, 0xe4, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12276 = { .name = "ecdsa_brainpoolp224r1_sha256_12276", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12276_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12276_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12276_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP224t1, tcId is 1521 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12277 for ECDSA, tcId is 1522 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12277_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12277_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12277_sig[] = { 0x71, 0x16, 0xbe, 0x59, 0xcf, 0xe6, 0x91, 0xbf, 0x4d, 0x41, 0xaa, 0x53, 0x6d, 0xf5, 0x96, 0x81, 0xf0, 0x8f, 0xf5, 0x66, 0x3a, 0x87, 0xe5, 0xb0, 0x43, 0x25, 0x43, 0xff, 0x64, 0x59, 0x00, 0x5b, 0x55, 0x13, 0xc4, 0x70, 0xc8, 0xfa, 0x49, 0x21, 0x3c, 0x97, 0xd5, 0x4a, 0x8d, 0x92, 0x41, 0xc5, 0x6b, 0x2c, 0x35, 0xdf, 0x71, 0x4f, 0x47, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12277 = { .name = "ecdsa_brainpoolp224r1_sha256_12277", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12277_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12277_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12277_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 1522 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12278 for ECDSA, tcId is 1523 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12278_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12278_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12278_sig[] = { 0x3e, 0x2a, 0xf0, 0x52, 0x8f, 0x85, 0xdd, 0x36, 0x03, 0xb6, 0x13, 0x8d, 0x4d, 0x58, 0xb7, 0x00, 0xd9, 0xe1, 0x4c, 0x24, 0xeb, 0xb9, 0xa5, 0x23, 0x23, 0x3e, 0x02, 0xda, 0x34, 0xcd, 0x5a, 0x75, 0x31, 0x3f, 0x0d, 0x0c, 0x57, 0xd4, 0x53, 0x4c, 0xac, 0x18, 0x59, 0x19, 0x7e, 0xac, 0x3e, 0x83, 0x7f, 0xd7, 0xb7, 0x7b, 0xc9, 0x25, 0xb2, 0x57, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12278 = { .name = "ecdsa_brainpoolp224r1_sha256_12278", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12278_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12278_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12278_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 1523 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12279 for ECDSA, tcId is 1524 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12279_pubkey[] = { 0xc5, 0xdc, 0x51, 0x35, 0xf0, 0x50, 0xa9, 0x6b, 0xbb, 0x0d, 0x21, 0x88, 0x51, 0x95, 0xb4, 0x9a, 0x57, 0x4d, 0x51, 0x98, 0xba, 0xac, 0x4b, 0x46, 0x02, 0xb2, 0x1b, 0xc8, 0xb5, 0xf3, 0x8b, 0x7f, 0xe6, 0x61, 0x00, 0x3f, 0xae, 0xe1, 0xb7, 0xaf, 0x67, 0x0e, 0x16, 0x5b, 0xfa, 0xb7, 0x0b, 0x01, 0x89, 0x65, 0xe8, 0x33, 0x29, 0xd4, 0x05, 0xbc, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12279_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12279_sig[] = { 0x23, 0x57, 0xda, 0xaf, 0x4d, 0xd8, 0x54, 0xe9, 0x09, 0x03, 0x86, 0x35, 0x0d, 0x76, 0xca, 0x18, 0x43, 0x6c, 0x81, 0xa9, 0x18, 0x11, 0xdd, 0xd2, 0x72, 0xe0, 0xe3, 0x69, 0xd4, 0x91, 0xa7, 0x45, 0x05, 0x1d, 0x6a, 0x45, 0xaf, 0xb6, 0xbd, 0x46, 0x53, 0xb1, 0xa1, 0xeb, 0x52, 0xc3, 0xb6, 0xeb, 0x41, 0xe0, 0x38, 0x47, 0xda, 0x3e, 0xe5, 0xb9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12279 = { .name = "ecdsa_brainpoolp224r1_sha256_12279", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12279_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12279_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12279_sig, .siglen = 56, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP224t1, tcId is 1524 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12280 for ECDSA, tcId is 1525 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12280_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12280_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12280_sig[] = { 0x39, 0xaa, 0x3a, 0xa6, 0x69, 0x1c, 0x95, 0x48, 0x7e, 0xbc, 0x3d, 0x60, 0x5c, 0xf9, 0xe0, 0xac, 0x8a, 0x64, 0xea, 0x33, 0x24, 0xf4, 0x48, 0xe8, 0x51, 0xea, 0x1d, 0x0c, 0x8e, 0x87, 0xa2, 0x20, 0xc7, 0x0a, 0x7e, 0x1b, 0x5b, 0x53, 0xe1, 0x0f, 0x9f, 0x85, 0xdf, 0xd7, 0x96, 0xe5, 0xbc, 0xb8, 0xc5, 0x0b, 0x56, 0xfe, 0x8c, 0x11, 0x9a, 0x25, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12280 = { .name = "ecdsa_brainpoolp224r1_sha256_12280", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12280_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12280_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12280_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1525 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12281 for ECDSA, tcId is 1526 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12281_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12281_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12281_sig[] = { 0x3c, 0x4e, 0x58, 0x01, 0x31, 0x53, 0x6b, 0x54, 0xfb, 0x1b, 0xf9, 0xda, 0x67, 0x4c, 0xbf, 0x77, 0x3e, 0x88, 0x59, 0x9b, 0xf5, 0x66, 0x4e, 0x41, 0x4d, 0x38, 0xcf, 0x54, 0xd1, 0xb2, 0xdb, 0x7d, 0xa0, 0x33, 0x7a, 0xf9, 0x66, 0x5a, 0x0c, 0x3c, 0x63, 0x55, 0x45, 0xe6, 0xe0, 0x73, 0x25, 0xea, 0x81, 0x16, 0x64, 0xab, 0x1b, 0xb9, 0x7f, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12281 = { .name = "ecdsa_brainpoolp224r1_sha256_12281", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12281_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12281_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12281_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1526 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12282 for ECDSA, tcId is 1527 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp224r1_sha256_12282_pubkey[] = { 0xc1, 0xb5, 0x6a, 0x1a, 0xd1, 0x54, 0xe1, 0x15, 0x56, 0xb7, 0x23, 0xfc, 0x74, 0x93, 0xf3, 0x6e, 0x66, 0x50, 0x9d, 0x8f, 0x68, 0xfa, 0xd0, 0xe6, 0x2c, 0x40, 0xf0, 0x85, 0x9b, 0x04, 0x78, 0x0a, 0x85, 0xe6, 0x9a, 0xbf, 0x98, 0xde, 0xf3, 0x33, 0x5c, 0xe6, 0x43, 0xcd, 0x35, 0x54, 0x16, 0x7a, 0x8b, 0x50, 0xd5, 0x96, 0xb9, 0x53, 0x88, 0x95, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12282_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp224r1_sha256_12282_sig[] = { 0x82, 0x89, 0x0d, 0x99, 0x03, 0xff, 0x24, 0x13, 0x54, 0x2b, 0x21, 0x8c, 0xd1, 0x3a, 0x04, 0x01, 0xf6, 0xa8, 0x3f, 0x07, 0xc2, 0xb7, 0xcb, 0x32, 0x29, 0x49, 0x53, 0xb0, 0x21, 0x89, 0xda, 0xaa, 0xe8, 0xe4, 0x8e, 0xda, 0xb9, 0x9b, 0xd1, 0xe0, 0x1e, 0x22, 0xd0, 0x4f, 0x28, 0x78, 0x2f, 0x2d, 0x1e, 0x17, 0xb6, 0xc8, 0x5b, 0x7b, 0xb5, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp224r1_sha256_12282 = { .name = "ecdsa_brainpoolp224r1_sha256_12282", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp224r1_str_params, .pubkey = ecdsa_brainpoolp224r1_sha256_12282_pubkey, .pubkeylen = 56, .msg = ecdsa_brainpoolp224r1_sha256_12282_msg, .msglen = 7, .sig = ecdsa_brainpoolp224r1_sha256_12282_sig, .siglen = 56, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP224t1, tcId is 1527 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) */ /* Test 12283 for ECDSA, tcId is 1528 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12283_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12283_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12283_sig[] = { 0xa5, 0x03, 0x18, 0xc3, 0x06, 0x6a, 0x49, 0x66, 0xad, 0x18, 0xae, 0x8f, 0x85, 0x25, 0x3f, 0xbb, 0x58, 0x35, 0xa3, 0x4b, 0x2f, 0x91, 0x87, 0xda, 0xac, 0x71, 0xee, 0x28, 0xd3, 0xd5, 0xd0, 0xeb, 0x08, 0x90, 0xef, 0x0f, 0xc9, 0x3d, 0xf2, 0x22, 0xd1, 0x11, 0x97, 0xcb, 0x22, 0x14, 0x83, 0xce, 0x89, 0x7b, 0x0c, 0xf1, 0xac, 0xf4, 0xa9, 0x09, 0xc3, 0x06, 0xc5, 0xa4, 0x85, 0x77, 0x6a, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12283 = { .name = "ecdsa_brainpoolp256r1_sha256_12283", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12283_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12283_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12283_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1528 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12284 for ECDSA, tcId is 1529 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12284_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12284_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12284_sig[] = { 0x04, 0x1e, 0x03, 0x89, 0xdd, 0xa2, 0xcf, 0x2a, 0xe3, 0xa9, 0x56, 0x2a, 0x0f, 0xb5, 0xd4, 0x1c, 0x1f, 0x75, 0x33, 0xe6, 0xcc, 0x84, 0xa8, 0x96, 0xe9, 0x9a, 0xf7, 0x81, 0xe2, 0x10, 0x97, 0x70, 0x36, 0x6b, 0x5d, 0x88, 0xc3, 0x6f, 0x12, 0x27, 0xdf, 0x52, 0x2f, 0xda, 0xb6, 0x5e, 0x12, 0x34, 0x7d, 0x68, 0xeb, 0x64, 0xf2, 0xde, 0x82, 0xc6, 0x48, 0x11, 0x5f, 0xd5, 0x65, 0xbd, 0x37, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12284 = { .name = "ecdsa_brainpoolp256r1_sha256_12284", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12284_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12284_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12284_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1529 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12285 for ECDSA, tcId is 1530 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12285_pubkey[] = { 0x81, 0x52, 0x8b, 0x7a, 0xdb, 0xbe, 0xbf, 0x1b, 0x6b, 0x3c, 0x7f, 0xa1, 0xd6, 0x12, 0x84, 0xb0, 0x77, 0x59, 0xb9, 0xa9, 0x8d, 0x31, 0xa5, 0x70, 0x27, 0x07, 0xb0, 0x18, 0xfd, 0xec, 0xff, 0x11, 0x75, 0xbb, 0xfc, 0xcb, 0x54, 0x53, 0x81, 0xbf, 0x86, 0x01, 0x03, 0x17, 0x31, 0x84, 0x18, 0x29, 0x40, 0x1b, 0x08, 0xdc, 0xdc, 0x68, 0xcc, 0x34, 0xe0, 0x6a, 0x64, 0xe4, 0x12, 0x03, 0x85, 0x12, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12285_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12285_sig[] = { 0x2a, 0x76, 0x39, 0x4a, 0x04, 0xae, 0x19, 0xb2, 0x5c, 0x54, 0x29, 0x1e, 0x28, 0xbc, 0xd4, 0x2a, 0x7e, 0xde, 0xb2, 0x09, 0x81, 0xb8, 0xa3, 0xb8, 0x38, 0xf9, 0xdd, 0x0e, 0x29, 0xb5, 0x74, 0xc1, 0x9c, 0xe8, 0x99, 0x80, 0xae, 0x43, 0x2c, 0x4f, 0xa6, 0xa6, 0x80, 0x25, 0xda, 0x55, 0x4b, 0xf9, 0x00, 0xcc, 0x2e, 0xb0, 0xc6, 0x69, 0x06, 0x42, 0x0d, 0x32, 0x2c, 0x14, 0xb4, 0x53, 0x04, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12285 = { .name = "ecdsa_brainpoolp256r1_sha256_12285", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12285_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12285_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12285_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1530 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12286 for ECDSA, tcId is 1531 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12286_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12286_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12286_sig[] = { 0x66, 0x95, 0x8b, 0xe3, 0x37, 0x94, 0x05, 0x82, 0x6a, 0x00, 0xda, 0xf5, 0x49, 0x5b, 0x16, 0x57, 0x69, 0x81, 0x26, 0xa5, 0xff, 0x44, 0x9f, 0x96, 0x49, 0xaf, 0x26, 0xca, 0x96, 0xdf, 0x96, 0x67, 0x9b, 0x41, 0x00, 0x81, 0x6e, 0x27, 0x41, 0xf8, 0x6c, 0x5c, 0x0b, 0x0d, 0xcf, 0x82, 0xe5, 0x79, 0xf4, 0x28, 0x1d, 0x2b, 0x8e, 0x70, 0xc2, 0x34, 0x80, 0x8d, 0x84, 0xc1, 0xa4, 0x95, 0x07, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12286 = { .name = "ecdsa_brainpoolp256r1_sha256_12286", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12286_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12286_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12286_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 1531 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12287 for ECDSA, tcId is 1532 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12287_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12287_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12287_sig[] = { 0x53, 0xed, 0x0f, 0x4b, 0x8f, 0xb3, 0x3e, 0xf2, 0x77, 0xcd, 0xd1, 0x06, 0x04, 0x35, 0xed, 0x3d, 0xec, 0x51, 0x8a, 0x22, 0x56, 0x59, 0xf7, 0x1f, 0x67, 0xf9, 0xa1, 0xf0, 0x7f, 0x85, 0xc1, 0xca, 0x12, 0x4d, 0x5f, 0x94, 0xdd, 0xf1, 0x2b, 0xb4, 0xcb, 0xe3, 0xc5, 0xce, 0xa6, 0xd2, 0x68, 0x6d, 0x44, 0x80, 0xda, 0xbb, 0x8f, 0xfb, 0xb0, 0x5e, 0x52, 0x38, 0xc8, 0x77, 0xfe, 0x20, 0x38, 0x3e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12287 = { .name = "ecdsa_brainpoolp256r1_sha256_12287", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12287_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12287_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12287_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 1532 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12288 for ECDSA, tcId is 1533 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12288_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x16, 0xea, 0x8e, 0x03, 0xc2, 0x09, 0x77, 0xf2, 0x0a, 0xed, 0x58, 0x10, 0x6b, 0x6d, 0x9d, 0x10, 0x85, 0xb4, 0x47, 0x5f, 0x75, 0xb5, 0x46, 0x9c, 0x5f, 0x42, 0x6c, 0xb2, 0x7e, 0xc6, 0xd8, 0x72, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12288_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12288_sig[] = { 0x46, 0x64, 0x3c, 0x7f, 0xe0, 0xf3, 0x08, 0xb8, 0xaf, 0x4c, 0xe2, 0x97, 0x8d, 0x79, 0x7e, 0x8c, 0x46, 0xa7, 0xe1, 0xf8, 0xbf, 0xee, 0x0b, 0x5c, 0xdb, 0xae, 0xcd, 0xe1, 0xf5, 0x9b, 0xe4, 0x1d, 0x1b, 0xd1, 0x1a, 0x81, 0x4d, 0x1f, 0xbd, 0x9a, 0xe9, 0x7a, 0x49, 0xdf, 0x99, 0xbe, 0xca, 0x7f, 0xec, 0x25, 0x12, 0x56, 0x3c, 0x00, 0x31, 0xc5, 0xaa, 0xd5, 0xb9, 0xfc, 0x2f, 0xb0, 0xa5, 0x07, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12288 = { .name = "ecdsa_brainpoolp256r1_sha256_12288", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12288_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12288_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12288_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 1533 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12289 for ECDSA, tcId is 1534 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12289_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12289_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12289_sig[] = { 0x4f, 0x83, 0x3b, 0xec, 0x9c, 0x80, 0x18, 0x5b, 0xea, 0xcb, 0xb7, 0x3b, 0x5f, 0x98, 0x4e, 0x2c, 0x03, 0xd9, 0x22, 0x35, 0x9b, 0xe7, 0x46, 0x8c, 0xe3, 0x75, 0x84, 0xf5, 0x3d, 0x1a, 0xea, 0x4a, 0x66, 0x36, 0x74, 0x4a, 0xb7, 0xfe, 0xca, 0xa5, 0x35, 0x41, 0xbc, 0xf5, 0xf3, 0x7c, 0x6c, 0xbe, 0x82, 0x8a, 0x8e, 0xfb, 0xc4, 0xd0, 0x0f, 0x64, 0x69, 0xba, 0x39, 0x0a, 0x86, 0x70, 0x8a, 0x26, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12289 = { .name = "ecdsa_brainpoolp256r1_sha256_12289", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12289_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12289_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12289_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 1534 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12290 for ECDSA, tcId is 1535 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12290_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12290_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12290_sig[] = { 0xa2, 0x86, 0x9d, 0xa4, 0x16, 0x52, 0x3a, 0xad, 0x2b, 0x8f, 0xa8, 0xaa, 0xd5, 0xc3, 0xb3, 0x1c, 0x5a, 0x53, 0x5f, 0xdd, 0x41, 0x3b, 0x71, 0xaf, 0x4d, 0xff, 0xb9, 0x0c, 0x6f, 0x96, 0xa6, 0x69, 0x29, 0xff, 0x3e, 0x8d, 0x49, 0x9c, 0xab, 0xc3, 0xcc, 0x4c, 0xcc, 0xd0, 0xfa, 0x81, 0x1c, 0xc3, 0xb0, 0x47, 0x70, 0xaa, 0x71, 0xf0, 0xd0, 0x52, 0x18, 0x52, 0x10, 0xb1, 0x4d, 0x31, 0x99, 0x3d, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12290 = { .name = "ecdsa_brainpoolp256r1_sha256_12290", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12290_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12290_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12290_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 1535 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12291 for ECDSA, tcId is 1536 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12291_pubkey[] = { 0xa3, 0xa2, 0x5a, 0x35, 0x3c, 0xaa, 0x94, 0xac, 0x4e, 0xed, 0x37, 0x00, 0xf7, 0xd5, 0x6b, 0x45, 0x6a, 0x0f, 0xc6, 0x70, 0xd5, 0x6a, 0x16, 0x6d, 0x52, 0x19, 0xb7, 0xc9, 0x7f, 0x30, 0xef, 0x3e, 0x93, 0x10, 0xc9, 0xd7, 0xdf, 0xe5, 0x31, 0xca, 0x33, 0x78, 0xb2, 0x80, 0x32, 0x15, 0xf0, 0x61, 0xe8, 0x87, 0xae, 0xc4, 0x5f, 0x70, 0xd9, 0x8b, 0xc0, 0xd0, 0xdb, 0x6a, 0xa0, 0xa7, 0x7b, 0x05, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12291_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12291_sig[] = { 0x63, 0xdb, 0xfe, 0x29, 0x24, 0x9a, 0x50, 0x6b, 0x89, 0xfb, 0xd2, 0xcb, 0x1f, 0xaf, 0xc2, 0x54, 0xa9, 0x58, 0x2d, 0xfc, 0x4b, 0x08, 0xd1, 0x43, 0xb6, 0xd2, 0x5b, 0xf2, 0xab, 0x49, 0xd5, 0x5e, 0x44, 0xca, 0xd8, 0x0c, 0x00, 0x46, 0x09, 0x05, 0xe1, 0x03, 0xf2, 0x6d, 0xa8, 0x4c, 0xef, 0xd7, 0x1a, 0xf4, 0xbc, 0x7a, 0x71, 0x96, 0x2a, 0x3b, 0xce, 0x32, 0x1b, 0xc3, 0xb5, 0x84, 0x27, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12291 = { .name = "ecdsa_brainpoolp256r1_sha256_12291", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12291_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12291_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12291_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 1536 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12292 for ECDSA, tcId is 1537 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12292_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12292_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12292_sig[] = { 0x9d, 0x90, 0x7c, 0xf8, 0x8e, 0x10, 0xd6, 0x0c, 0x3f, 0x23, 0x89, 0x24, 0x98, 0xfe, 0x43, 0xdd, 0xb0, 0x2f, 0x82, 0x4f, 0xb1, 0x8e, 0x6b, 0xe3, 0x13, 0xe0, 0x2d, 0x94, 0xf2, 0xc8, 0xe0, 0x90, 0x0c, 0x16, 0xb9, 0xe0, 0xdb, 0x4d, 0xc8, 0x60, 0x6c, 0x02, 0x3b, 0x00, 0x1f, 0x69, 0xb3, 0xc8, 0x86, 0x08, 0x07, 0x94, 0xfc, 0x9d, 0x7f, 0xe3, 0x1b, 0x00, 0xc1, 0xcf, 0x09, 0x35, 0xe4, 0x21, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12292 = { .name = "ecdsa_brainpoolp256r1_sha256_12292", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12292_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12292_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12292_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1537 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12293 for ECDSA, tcId is 1538 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12293_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12293_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12293_sig[] = { 0x73, 0x95, 0xce, 0x0e, 0xf6, 0x52, 0x84, 0x8a, 0x86, 0xb6, 0x10, 0x97, 0xcc, 0x95, 0x43, 0x99, 0x8d, 0x39, 0xda, 0xe8, 0x8a, 0x1f, 0xc9, 0xe4, 0xdf, 0xdd, 0x69, 0x64, 0x29, 0x49, 0x54, 0x89, 0x7d, 0xe2, 0x9e, 0x25, 0x6e, 0x82, 0x02, 0x38, 0x2f, 0x91, 0xc1, 0x16, 0xa6, 0x67, 0xa8, 0xb9, 0x46, 0xf2, 0x10, 0x44, 0x7a, 0x57, 0x36, 0x9b, 0xa6, 0x1a, 0xe4, 0xfa, 0xe7, 0x3d, 0xd1, 0x36, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12293 = { .name = "ecdsa_brainpoolp256r1_sha256_12293", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12293_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12293_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12293_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1538 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12294 for ECDSA, tcId is 1539 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12294_pubkey[] = { 0x6d, 0x49, 0x9b, 0x07, 0x7a, 0xb6, 0xd7, 0x7b, 0x24, 0x43, 0x20, 0xa2, 0xca, 0xca, 0xb9, 0x1a, 0x76, 0x45, 0x95, 0xdd, 0x67, 0xa7, 0xa8, 0xdf, 0xcf, 0x84, 0xda, 0x7d, 0x38, 0xb2, 0xd8, 0xf4, 0x59, 0x94, 0xc0, 0x7b, 0x83, 0x3f, 0xf4, 0x90, 0x9c, 0x1a, 0x92, 0xcc, 0x9f, 0x24, 0xde, 0xa8, 0x8b, 0xe8, 0x60, 0x3b, 0x40, 0x7b, 0x00, 0xd2, 0x28, 0xfa, 0xf2, 0x15, 0x8d, 0xb2, 0x35, 0x4f, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12294_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12294_sig[] = { 0x7b, 0xaf, 0x1f, 0xde, 0x87, 0xcc, 0xb1, 0xbe, 0xa0, 0xf8, 0x93, 0xb3, 0xbf, 0xb2, 0x54, 0x9c, 0x04, 0xbc, 0xa1, 0x88, 0x35, 0xd8, 0xeb, 0x5a, 0x31, 0xb8, 0xd2, 0x05, 0x06, 0xff, 0x88, 0xc3, 0x28, 0x9e, 0xbe, 0x82, 0x9f, 0xef, 0xb9, 0xad, 0x00, 0x9d, 0x7c, 0xdd, 0x62, 0x28, 0x74, 0xae, 0xf5, 0xfa, 0x08, 0x8f, 0x05, 0x08, 0xa4, 0xb4, 0x3d, 0x58, 0x95, 0xd6, 0x16, 0x45, 0xce, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12294 = { .name = "ecdsa_brainpoolp256r1_sha256_12294", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12294_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12294_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12294_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1539 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12295 for ECDSA, tcId is 1540 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12295_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12295_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12295_sig[] = { 0x33, 0xe3, 0x7c, 0x3b, 0x66, 0xac, 0xab, 0xee, 0x3d, 0x68, 0xcb, 0xbb, 0x9c, 0x55, 0xcd, 0x52, 0xb5, 0x86, 0xde, 0x51, 0x64, 0x77, 0x23, 0xfa, 0x84, 0xe5, 0x32, 0xa3, 0xec, 0x59, 0x53, 0xef, 0x3b, 0x8a, 0x9e, 0xe7, 0x07, 0xd1, 0xbc, 0x5f, 0x83, 0xe1, 0x7e, 0xa0, 0x72, 0xad, 0xc2, 0xec, 0xda, 0x92, 0xe6, 0x37, 0xd7, 0xc0, 0x60, 0x60, 0xf1, 0xaf, 0x79, 0xb9, 0x29, 0xa8, 0x50, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12295 = { .name = "ecdsa_brainpoolp256r1_sha256_12295", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12295_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12295_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12295_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 1540 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12296 for ECDSA, tcId is 1541 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12296_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12296_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12296_sig[] = { 0x1f, 0x8e, 0xbd, 0xc9, 0x4e, 0xcd, 0xdd, 0x84, 0xf9, 0x09, 0x60, 0xcc, 0x55, 0xd0, 0xca, 0x02, 0xe3, 0x3d, 0x70, 0x53, 0x5f, 0xc1, 0xc7, 0x32, 0x2b, 0x3c, 0x27, 0x83, 0xb9, 0xdc, 0x92, 0x38, 0x20, 0x5a, 0xa8, 0x62, 0x6c, 0x3a, 0x5d, 0xa2, 0x14, 0xe5, 0x48, 0x5b, 0x11, 0x15, 0x4a, 0x37, 0x8d, 0x70, 0xb0, 0xd3, 0x32, 0x3a, 0xb8, 0x68, 0x52, 0x8a, 0xe8, 0x04, 0x8d, 0x17, 0xb6, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12296 = { .name = "ecdsa_brainpoolp256r1_sha256_12296", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12296_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12296_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12296_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 1541 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12297 for ECDSA, tcId is 1542 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_brainpoolp256r1_sha256_12297_pubkey[] = { 0x08, 0xc2, 0xf9, 0x5f, 0xfe, 0xdd, 0xe1, 0xd5, 0x5e, 0x3f, 0x2c, 0x9d, 0xcf, 0x58, 0x84, 0x34, 0x7f, 0x69, 0x04, 0xc6, 0x49, 0x22, 0x73, 0xad, 0x76, 0x0e, 0xb7, 0xb9, 0xb3, 0x5f, 0x03, 0x6b, 0x2b, 0xcf, 0x7a, 0x04, 0x8c, 0xaa, 0x2c, 0x72, 0x6a, 0xe8, 0x80, 0x8d, 0xc9, 0x53, 0x12, 0xeb, 0x23, 0x50, 0x27, 0x5a, 0x8f, 0x4f, 0xbe, 0xea, 0x7c, 0x0f, 0x32, 0xf3, 0x83, 0x9c, 0x7b, 0x93, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12297_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp256r1_sha256_12297_sig[] = { 0x6b, 0x0d, 0x70, 0xe0, 0x9b, 0xa1, 0x64, 0x2a, 0xda, 0xc0, 0x6d, 0xff, 0x9b, 0x52, 0xe2, 0x2a, 0x3e, 0x4a, 0xab, 0x41, 0x80, 0xe3, 0x72, 0x66, 0x56, 0x91, 0x41, 0x22, 0x41, 0xe7, 0x43, 0xa0, 0x4d, 0x7d, 0x30, 0xff, 0x8a, 0x21, 0x0d, 0xe6, 0x9e, 0x3e, 0x6d, 0x1e, 0xcf, 0x71, 0x75, 0xf8, 0x9f, 0x48, 0x1a, 0x4d, 0x9e, 0xd0, 0x6b, 0xea, 0xf7, 0x14, 0x8d, 0xa4, 0x7f, 0x4a, 0xf9, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp256r1_sha256_12297 = { .name = "ecdsa_brainpoolp256r1_sha256_12297", .sig_alg = ECDSA, .hash = SHA256, .curve = &brainpoolp256r1_str_params, .pubkey = ecdsa_brainpoolp256r1_sha256_12297_pubkey, .pubkeylen = 64, .msg = ecdsa_brainpoolp256r1_sha256_12297_msg, .msglen = 7, .sig = ecdsa_brainpoolp256r1_sha256_12297_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP256t1, tcId is 1542 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12298 for ECDSA, tcId is 1543 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12298_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12298_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12298_sig[] = { 0x0e, 0x44, 0xfd, 0xc3, 0x3a, 0xed, 0x0c, 0x32, 0x0e, 0x37, 0x1e, 0x2a, 0x78, 0xe9, 0xf1, 0x8f, 0xde, 0x83, 0x43, 0x4e, 0x68, 0x1a, 0xfb, 0x05, 0xa5, 0xbd, 0xb0, 0xf4, 0x3c, 0xac, 0x70, 0xe8, 0x3e, 0xde, 0x56, 0xbf, 0x8c, 0x56, 0xac, 0xf7, 0x0e, 0x05, 0x4e, 0x2f, 0xfe, 0xf5, 0x49, 0xcf, 0x13, 0x24, 0xb4, 0xcf, 0xe6, 0x84, 0xd4, 0x01, 0xea, 0xc1, 0x5b, 0x09, 0x40, 0xf5, 0x83, 0x54, 0x36, 0xd3, 0xa1, 0x02, 0x8e, 0x27, 0xc1, 0x96, 0x6d, 0xbf, 0x69, 0xfe, 0xfe, 0xf8, 0x27, 0x48, 0xa0, 0x5b, 0x44, 0x43, 0xc7, 0x7c, 0x87, 0x07, 0x89, 0x13, 0x57, 0x55, 0xd0, 0xd1, 0x84, 0xcf, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12298 = { .name = "ecdsa_brainpoolp384r1_sha384_12298", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12298_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12298_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12298_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 1543 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12299 for ECDSA, tcId is 1544 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12299_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12299_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12299_sig[] = { 0x59, 0x66, 0xac, 0xd8, 0xa7, 0x71, 0x4f, 0x20, 0x15, 0xe3, 0x6f, 0xd4, 0xfd, 0xb3, 0x45, 0x22, 0x58, 0xce, 0x0a, 0xae, 0xfb, 0x39, 0x72, 0x09, 0x1b, 0x49, 0x6b, 0xd5, 0x30, 0xbb, 0xaf, 0x1e, 0xc6, 0x7d, 0x7e, 0x37, 0xe5, 0x00, 0x31, 0xb3, 0xee, 0xa4, 0x4a, 0x8b, 0xb8, 0xf6, 0x2c, 0x20, 0x2a, 0x5f, 0x30, 0x9d, 0x2f, 0xad, 0x55, 0xb9, 0x3a, 0x7a, 0x30, 0x12, 0xcb, 0xda, 0x28, 0x45, 0xef, 0xaa, 0x4e, 0xa0, 0xd1, 0x87, 0xd3, 0x82, 0x4f, 0x4a, 0x6a, 0x92, 0x27, 0x73, 0x0d, 0x3a, 0xb1, 0x52, 0x46, 0xd8, 0xd0, 0x95, 0x2c, 0x7e, 0xe8, 0xc0, 0xb9, 0xeb, 0x83, 0xd1, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12299 = { .name = "ecdsa_brainpoolp384r1_sha384_12299", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12299_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12299_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12299_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 1544 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12300 for ECDSA, tcId is 1545 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12300_pubkey[] = { 0x34, 0x77, 0x0c, 0x73, 0xa7, 0xe4, 0x2c, 0xe7, 0xa5, 0x7d, 0x1d, 0xe6, 0xe5, 0x4f, 0x35, 0xf1, 0x75, 0x20, 0x47, 0xf6, 0x51, 0x35, 0x84, 0xc7, 0xb1, 0x4b, 0xca, 0x17, 0xd7, 0xab, 0xc4, 0x99, 0xf8, 0xab, 0x03, 0x7c, 0x70, 0xfd, 0x2e, 0x13, 0xa8, 0xb9, 0x7b, 0x2a, 0xe2, 0x63, 0x68, 0x86, 0x22, 0x42, 0x16, 0x15, 0xba, 0x36, 0x3f, 0x1f, 0xfe, 0x9a, 0x8f, 0x2f, 0xe0, 0xf6, 0xe2, 0x46, 0xfd, 0xa1, 0x14, 0x62, 0xa3, 0xec, 0x00, 0x0c, 0x68, 0x5e, 0x09, 0xa9, 0x0d, 0xbc, 0xdc, 0x2a, 0xf6, 0x46, 0x7f, 0x9e, 0xe6, 0x9b, 0x5e, 0x7b, 0xea, 0xd9, 0xb8, 0x46, 0x1f, 0x4a, 0x4b, 0xe0, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12300_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12300_sig[] = { 0x26, 0x6e, 0xac, 0xe6, 0x57, 0xe1, 0xec, 0x88, 0xa2, 0xad, 0xbb, 0x38, 0xa5, 0xaf, 0xb4, 0xf7, 0x50, 0x27, 0x4c, 0xa6, 0x14, 0xd1, 0xfd, 0xe9, 0xea, 0x39, 0xdf, 0xf6, 0xf2, 0xa2, 0xaa, 0x69, 0x92, 0x3e, 0x9a, 0x74, 0x89, 0xf0, 0x6b, 0xf9, 0xd8, 0x4c, 0x51, 0x8c, 0xee, 0x57, 0xe5, 0x5b, 0x3d, 0x19, 0x02, 0x76, 0x84, 0xef, 0x22, 0x12, 0x16, 0xf6, 0x3a, 0x59, 0x1d, 0x8e, 0x79, 0x35, 0x24, 0xe4, 0xc1, 0x23, 0x4a, 0x56, 0xce, 0x41, 0x5b, 0xb9, 0xad, 0x9e, 0x2e, 0xbf, 0x25, 0xac, 0x94, 0xa9, 0x92, 0x61, 0xb9, 0x15, 0x7d, 0x19, 0xda, 0xa5, 0xaa, 0x87, 0x62, 0x91, 0xf3, 0x08, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12300 = { .name = "ecdsa_brainpoolp384r1_sha384_12300", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12300_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12300_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12300_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large on brainpoolP384t1, tcId is 1545 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12301 for ECDSA, tcId is 1546 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12301_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12301_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12301_sig[] = { 0x13, 0xde, 0x6e, 0xb5, 0x32, 0x32, 0x1c, 0x02, 0x30, 0x92, 0xaa, 0x78, 0xc1, 0x99, 0xf9, 0xee, 0x4d, 0xce, 0x7a, 0x18, 0xdf, 0x15, 0x8c, 0x3e, 0x79, 0x94, 0x61, 0xaf, 0x9d, 0x96, 0xc2, 0xd3, 0x87, 0x65, 0xa7, 0x8f, 0xdb, 0x14, 0x40, 0x4d, 0x19, 0x93, 0x65, 0xde, 0x05, 0xbd, 0x44, 0xc5, 0x25, 0x14, 0xa0, 0x35, 0x9b, 0xcb, 0x66, 0x12, 0x2b, 0xf4, 0x8c, 0x18, 0x6a, 0x4b, 0xb2, 0xed, 0xcc, 0xf3, 0x05, 0xb0, 0x64, 0x14, 0xb1, 0x1f, 0x47, 0x0d, 0x25, 0x12, 0xca, 0xdd, 0xa1, 0x29, 0x36, 0x6f, 0x60, 0x72, 0xde, 0x71, 0x5b, 0xc2, 0xba, 0xbb, 0x8a, 0x3a, 0x5f, 0x26, 0x0d, 0x9b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12301 = { .name = "ecdsa_brainpoolp384r1_sha384_12301", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12301_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12301_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12301_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 1546 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12302 for ECDSA, tcId is 1547 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12302_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12302_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12302_sig[] = { 0x13, 0x08, 0xd3, 0xd9, 0xed, 0xfe, 0x3a, 0xd0, 0x7e, 0x21, 0x5a, 0x97, 0x5b, 0x2b, 0x06, 0x7e, 0x9f, 0x0b, 0x80, 0x33, 0x71, 0xb3, 0x02, 0x9f, 0x43, 0x88, 0xa3, 0x47, 0x1f, 0x4d, 0xb2, 0x3f, 0x35, 0x8a, 0xea, 0x5c, 0x03, 0xdb, 0x62, 0xd7, 0x71, 0x15, 0xc5, 0x6c, 0x49, 0x62, 0x63, 0x3b, 0x4b, 0x8b, 0x1f, 0xe4, 0x4b, 0x32, 0xcc, 0x66, 0x91, 0x14, 0xa1, 0xce, 0x0b, 0xa0, 0x55, 0x54, 0x46, 0xd0, 0xc9, 0x6a, 0x32, 0xcb, 0x60, 0x21, 0x85, 0xe8, 0xfb, 0xa4, 0x14, 0xd3, 0xa8, 0x31, 0xcb, 0xf5, 0xb5, 0x19, 0xb0, 0xf9, 0x06, 0x47, 0xdc, 0x45, 0xe3, 0x0a, 0x1f, 0x23, 0xef, 0x90, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12302 = { .name = "ecdsa_brainpoolp384r1_sha384_12302", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12302_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12302_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12302_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 1547 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12303 for ECDSA, tcId is 1548 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12303_pubkey[] = { 0x86, 0xf0, 0xfc, 0x89, 0xb7, 0x86, 0x1e, 0xc3, 0xbd, 0x58, 0x21, 0x61, 0xae, 0xcf, 0xc9, 0x57, 0x89, 0xae, 0x40, 0x24, 0x59, 0xeb, 0x7f, 0x30, 0x15, 0xb7, 0xdd, 0x24, 0xe2, 0x0f, 0xc9, 0xb0, 0x05, 0xc6, 0x35, 0xfc, 0x29, 0x0a, 0x0e, 0x2a, 0x9f, 0xf3, 0x58, 0x63, 0xb7, 0xb8, 0x2e, 0x3e, 0x01, 0xeb, 0xba, 0x48, 0x9e, 0x92, 0x3d, 0xad, 0x88, 0x14, 0x60, 0x77, 0x91, 0x4e, 0x3a, 0xe5, 0xc5, 0x75, 0xe1, 0xbe, 0xce, 0xce, 0xc7, 0x10, 0x96, 0x2a, 0x18, 0xff, 0xd9, 0x10, 0x05, 0x77, 0x6c, 0x4d, 0x9e, 0x4b, 0xd9, 0x52, 0xc7, 0x93, 0x58, 0x7a, 0x70, 0x29, 0x1c, 0xe4, 0x78, 0xb4, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12303_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12303_sig[] = { 0x5d, 0xa3, 0xdf, 0x09, 0x41, 0x55, 0xb8, 0xf8, 0x81, 0x2d, 0x0c, 0x63, 0x45, 0x34, 0x4e, 0x41, 0xc3, 0xb5, 0x91, 0xb6, 0x5b, 0x95, 0xfe, 0xdb, 0xbc, 0xbd, 0x3c, 0x3a, 0x3b, 0xb1, 0xc1, 0xdb, 0xfc, 0x4d, 0x4c, 0x5b, 0x84, 0x1b, 0x8f, 0x88, 0x74, 0xd5, 0x9b, 0x07, 0xcf, 0x22, 0x88, 0xfc, 0x4a, 0x1e, 0x4a, 0x83, 0x99, 0xab, 0xbd, 0xf2, 0x46, 0x92, 0x9b, 0x25, 0x59, 0xbb, 0x0f, 0xa4, 0x04, 0x77, 0x27, 0x55, 0xfc, 0x74, 0x52, 0x36, 0x26, 0xae, 0xef, 0x43, 0x2f, 0xe4, 0x76, 0x4d, 0xf1, 0xe1, 0xf5, 0xc9, 0xb0, 0xf8, 0x97, 0xed, 0x8f, 0x1f, 0xfd, 0x7a, 0x88, 0x16, 0x7f, 0x0e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12303 = { .name = "ecdsa_brainpoolp384r1_sha384_12303", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12303_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12303_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12303_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small on brainpoolP384t1, tcId is 1548 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12304 for ECDSA, tcId is 1549 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12304_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12304_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12304_sig[] = { 0x0b, 0xf6, 0xfe, 0xc0, 0xa5, 0xbe, 0x27, 0xcd, 0xdb, 0x0e, 0x76, 0x69, 0xae, 0x06, 0xd1, 0x5d, 0xfa, 0x75, 0x83, 0x7f, 0x8e, 0xe7, 0x2b, 0x47, 0x44, 0x3a, 0xc8, 0x45, 0xff, 0xcd, 0x42, 0x7b, 0x08, 0x93, 0xe1, 0x0c, 0x85, 0xc2, 0x0c, 0x7a, 0xa5, 0x76, 0xfb, 0x70, 0xe8, 0x77, 0x61, 0xab, 0x74, 0x18, 0xb6, 0xf3, 0x74, 0x93, 0x6a, 0xdc, 0xa8, 0xb0, 0x7d, 0xc5, 0x15, 0x45, 0xee, 0x34, 0xed, 0x2e, 0x9f, 0x56, 0xf3, 0x26, 0x70, 0x33, 0xe3, 0x0e, 0xa0, 0x9a, 0x0a, 0xcd, 0x31, 0xb6, 0xce, 0x83, 0x50, 0x3e, 0xe7, 0xe0, 0x98, 0x62, 0x7f, 0x8b, 0xa8, 0xb4, 0xc5, 0x84, 0x34, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12304 = { .name = "ecdsa_brainpoolp384r1_sha384_12304", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12304_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12304_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12304_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1549 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12305 for ECDSA, tcId is 1550 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12305_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12305_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12305_sig[] = { 0x03, 0xe3, 0x06, 0xa8, 0x6f, 0x6b, 0x2c, 0xb2, 0x48, 0xfc, 0xb6, 0x8d, 0x1d, 0x31, 0x7a, 0x60, 0x42, 0xb7, 0x08, 0x9e, 0x96, 0xd7, 0x4c, 0x2f, 0x5b, 0x93, 0x4e, 0x2e, 0x12, 0x28, 0x31, 0x26, 0x8a, 0x45, 0xe2, 0x18, 0x5b, 0x7c, 0x21, 0x27, 0x0e, 0x8b, 0x90, 0x6c, 0xd3, 0x72, 0xe6, 0xd7, 0x4c, 0x82, 0xab, 0x6d, 0xe6, 0xbc, 0x01, 0x94, 0xac, 0x1a, 0x2e, 0x34, 0x80, 0xa0, 0xc8, 0x04, 0x66, 0xaf, 0x7d, 0x2a, 0x32, 0x9d, 0x20, 0xb0, 0x31, 0x51, 0xd1, 0x80, 0x6a, 0x0b, 0xc0, 0x72, 0x0f, 0x55, 0xd3, 0x78, 0x1a, 0x7d, 0xb9, 0xfe, 0xbe, 0x7d, 0x8b, 0xbd, 0x0a, 0x71, 0x9b, 0xfa, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12305 = { .name = "ecdsa_brainpoolp384r1_sha384_12305", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12305_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12305_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12305_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1550 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12306 for ECDSA, tcId is 1551 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12306_pubkey[] = { 0x08, 0x2f, 0x7d, 0xce, 0xb5, 0x85, 0xc5, 0xba, 0x48, 0x94, 0xb0, 0xfa, 0xf6, 0x60, 0x4d, 0xa8, 0x88, 0xa3, 0x11, 0xad, 0x9f, 0x41, 0x73, 0x1a, 0x1d, 0x39, 0x37, 0x16, 0x8a, 0x10, 0xb0, 0x79, 0x5a, 0x1f, 0xae, 0x49, 0x6c, 0xb9, 0xa9, 0x07, 0x39, 0xe1, 0xc0, 0xa6, 0xe5, 0x31, 0xe8, 0x07, 0x2c, 0x3b, 0x85, 0x68, 0xea, 0xa1, 0xc6, 0xf5, 0x41, 0xa6, 0x65, 0xce, 0x7a, 0x66, 0xf7, 0x8e, 0xa2, 0xd5, 0x89, 0x31, 0x03, 0xe6, 0x02, 0x8a, 0xdd, 0x62, 0x35, 0x64, 0x92, 0xd8, 0xb5, 0xac, 0x6a, 0xb8, 0x90, 0x1d, 0x59, 0x62, 0x1c, 0x33, 0x41, 0x6c, 0x33, 0x98, 0x1b, 0xd5, 0x94, 0xec, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12306_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12306_sig[] = { 0x14, 0xd1, 0xdf, 0x9b, 0x3d, 0xb5, 0x5e, 0xcc, 0x8d, 0x1e, 0x12, 0x66, 0x25, 0xbd, 0xf5, 0xb6, 0x31, 0x6b, 0xba, 0x1e, 0x7f, 0x4e, 0xa5, 0xec, 0x77, 0x41, 0x8c, 0x75, 0x4a, 0x59, 0x75, 0x63, 0xdc, 0x5d, 0xc2, 0x91, 0xb7, 0xdd, 0x04, 0x77, 0x82, 0xd5, 0x18, 0xfe, 0x74, 0xe0, 0xbe, 0x83, 0x33, 0xef, 0x70, 0x1c, 0x44, 0x0f, 0x28, 0x0e, 0xdf, 0x81, 0xa9, 0x63, 0x2d, 0xde, 0x9d, 0xc1, 0x7d, 0xe5, 0xf4, 0x38, 0xdc, 0xc1, 0x9e, 0x9c, 0xa5, 0x91, 0x9b, 0x4b, 0x73, 0xe6, 0x29, 0x05, 0xe5, 0xf7, 0xe0, 0xbc, 0x9d, 0xb0, 0xb1, 0x4b, 0xc5, 0x33, 0x27, 0xf7, 0x9f, 0x70, 0xc6, 0xda, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12306 = { .name = "ecdsa_brainpoolp384r1_sha384_12306", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12306_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12306_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12306_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1551 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12307 for ECDSA, tcId is 1552 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12307_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12307_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12307_sig[] = { 0x6a, 0x3a, 0x18, 0x40, 0x06, 0x86, 0x63, 0x5a, 0xe2, 0x79, 0xc3, 0x85, 0xb6, 0x40, 0xd4, 0xfa, 0x08, 0x0d, 0x9c, 0x44, 0xa5, 0xd4, 0x21, 0xfe, 0x4b, 0xe5, 0xa5, 0xec, 0x7a, 0x8a, 0xe3, 0x1b, 0x00, 0xbf, 0xa4, 0x06, 0xe9, 0x19, 0xe5, 0x7e, 0x39, 0xc1, 0x13, 0x60, 0xe6, 0x70, 0xd8, 0x69, 0x72, 0x9c, 0x0b, 0x9f, 0xf7, 0x7f, 0x88, 0xf8, 0x10, 0x54, 0x8d, 0x6d, 0xb1, 0x83, 0x53, 0x12, 0xa4, 0x48, 0x11, 0x4a, 0x3b, 0xd9, 0x3c, 0xf5, 0x94, 0x22, 0xfa, 0xa2, 0xea, 0x02, 0x6f, 0x5d, 0x47, 0x62, 0x7f, 0x0c, 0x11, 0xfb, 0x85, 0x91, 0x12, 0x24, 0x6d, 0x87, 0x9c, 0x85, 0x95, 0x68, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12307 = { .name = "ecdsa_brainpoolp384r1_sha384_12307", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12307_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12307_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12307_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 1552 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12308 for ECDSA, tcId is 1553 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12308_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12308_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12308_sig[] = { 0x1a, 0xb8, 0xd6, 0xc3, 0x1d, 0x45, 0x77, 0xf5, 0x9c, 0xa5, 0x71, 0x4c, 0x9e, 0xad, 0xa9, 0x79, 0xfd, 0xb9, 0xec, 0x0c, 0xad, 0x32, 0xd8, 0xcb, 0x91, 0x5d, 0xbd, 0x70, 0x49, 0x29, 0x47, 0x18, 0x7f, 0x5a, 0x52, 0x71, 0x8e, 0x19, 0x98, 0x2f, 0x7a, 0x2d, 0x4c, 0xb4, 0x8b, 0x22, 0x77, 0x23, 0x87, 0x2e, 0x3c, 0xe7, 0xd1, 0xfd, 0x5a, 0xe1, 0x80, 0xfa, 0xf1, 0x99, 0x0b, 0x11, 0x93, 0x75, 0x58, 0xaa, 0x44, 0xcc, 0xda, 0xb6, 0x31, 0x49, 0x2b, 0x89, 0x25, 0xbe, 0x84, 0xfb, 0xcb, 0x45, 0x21, 0x48, 0xed, 0xad, 0x5b, 0xbf, 0xe4, 0x8c, 0x06, 0xb8, 0xc9, 0x90, 0x8c, 0xa2, 0x52, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12308 = { .name = "ecdsa_brainpoolp384r1_sha384_12308", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12308_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12308_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12308_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 1553 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12309 for ECDSA, tcId is 1554 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12309_pubkey[] = { 0x6a, 0xfe, 0x4e, 0xa7, 0x70, 0x54, 0x92, 0xbd, 0xa3, 0x08, 0xb7, 0x89, 0xd7, 0x0d, 0xa4, 0x94, 0x57, 0xdd, 0xe8, 0x25, 0xd5, 0x25, 0x89, 0x60, 0xa7, 0xa3, 0x66, 0xe4, 0x66, 0x5a, 0xf9, 0xd3, 0x26, 0x39, 0x2c, 0x26, 0x72, 0x16, 0x5e, 0xa4, 0xbb, 0xdc, 0x33, 0x37, 0x4d, 0x88, 0xe7, 0x49, 0x84, 0x75, 0xe6, 0x93, 0x7a, 0x10, 0xa6, 0xf6, 0xa5, 0x0f, 0x23, 0xde, 0x91, 0x26, 0xba, 0x04, 0xe5, 0x65, 0x0a, 0x1c, 0xd0, 0x6a, 0x80, 0x66, 0xca, 0x42, 0x33, 0x39, 0xfc, 0x2c, 0xe5, 0x3d, 0x91, 0x48, 0x27, 0x44, 0xa4, 0xcd, 0xf2, 0xf9, 0x37, 0xf7, 0x6f, 0x12, 0xaa, 0xe3, 0xf6, 0x30, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12309_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12309_sig[] = { 0x80, 0x3f, 0xfc, 0x58, 0xf8, 0x15, 0x0a, 0x9c, 0x4c, 0x22, 0x9a, 0x7b, 0x52, 0x23, 0x57, 0xf4, 0x9f, 0x9a, 0x5f, 0x48, 0xf8, 0x2d, 0x8b, 0xb9, 0x82, 0x95, 0x43, 0x95, 0x83, 0x6e, 0x09, 0xeb, 0x5f, 0x8c, 0xf1, 0xf3, 0x45, 0xce, 0x28, 0x46, 0x74, 0xbc, 0x36, 0x9d, 0x04, 0x6d, 0x5c, 0x8a, 0x8a, 0x9f, 0xeb, 0x64, 0xc4, 0x10, 0xcf, 0x3a, 0xe6, 0x26, 0x1a, 0xd3, 0x5f, 0x7e, 0x3e, 0x8d, 0xa1, 0x31, 0x29, 0xda, 0xf9, 0x49, 0x44, 0xf8, 0xe0, 0x8e, 0x96, 0x49, 0xcd, 0x00, 0x66, 0x22, 0xc3, 0xd5, 0xc9, 0x1e, 0xc5, 0xb9, 0x79, 0x8a, 0x1b, 0xe3, 0xa3, 0x15, 0x33, 0xa0, 0xa8, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12309 = { .name = "ecdsa_brainpoolp384r1_sha384_12309", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12309_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12309_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12309_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP384t1, tcId is 1554 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12310 for ECDSA, tcId is 1555 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12310_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12310_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12310_sig[] = { 0x2e, 0xd5, 0x69, 0xf1, 0x2d, 0xbe, 0x30, 0xa2, 0xab, 0xf0, 0x21, 0x90, 0xbb, 0x9e, 0x4d, 0xe7, 0xe2, 0x18, 0xe9, 0xfd, 0x70, 0x5d, 0xc7, 0x1c, 0xbe, 0x14, 0x80, 0x02, 0x27, 0x81, 0xb2, 0xa2, 0x21, 0x3c, 0x3e, 0xf2, 0xf9, 0x10, 0x52, 0xe9, 0x08, 0x40, 0xa1, 0x8f, 0x74, 0xe3, 0x75, 0xae, 0x88, 0x72, 0xb5, 0x66, 0xf3, 0x87, 0xc2, 0xbc, 0xb6, 0x39, 0xdf, 0x9c, 0x2d, 0x86, 0x6f, 0x76, 0x31, 0xdf, 0x29, 0x0c, 0x5f, 0x66, 0xc2, 0x64, 0xd4, 0x94, 0x9e, 0x25, 0x63, 0x83, 0xb1, 0xb4, 0xb2, 0x09, 0x8c, 0x12, 0x0f, 0x13, 0x44, 0x9d, 0x9d, 0x7b, 0xff, 0x68, 0x91, 0x91, 0x9c, 0x88, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12310 = { .name = "ecdsa_brainpoolp384r1_sha384_12310", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12310_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12310_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12310_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1555 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12311 for ECDSA, tcId is 1556 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12311_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12311_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12311_sig[] = { 0x4b, 0x7e, 0x56, 0x51, 0xb0, 0x35, 0x95, 0x92, 0x95, 0x09, 0x2e, 0x2e, 0xfe, 0x54, 0x8d, 0xa5, 0x22, 0x06, 0xc8, 0xd0, 0xe4, 0x8b, 0xa4, 0x3e, 0x2b, 0x8e, 0xcd, 0x98, 0xec, 0xe2, 0x5d, 0xc0, 0x89, 0x55, 0xb6, 0xe7, 0xb0, 0x5e, 0x38, 0xc4, 0xe2, 0x28, 0x29, 0xd1, 0x65, 0x87, 0x11, 0xb5, 0x44, 0xa9, 0x73, 0xb7, 0x55, 0x28, 0x40, 0x0c, 0xef, 0x3f, 0x63, 0xf5, 0x5f, 0x21, 0x54, 0xd4, 0x8b, 0xb0, 0xb8, 0x26, 0x21, 0x42, 0x00, 0xd3, 0xf3, 0x3c, 0x7b, 0xc3, 0x11, 0x55, 0x24, 0x2d, 0x4e, 0x24, 0xf0, 0x7e, 0xd1, 0x96, 0x06, 0xfd, 0xb2, 0xc8, 0xec, 0xae, 0xb6, 0x98, 0x1e, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12311 = { .name = "ecdsa_brainpoolp384r1_sha384_12311", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12311_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12311_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12311_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1556 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12312 for ECDSA, tcId is 1557 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12312_pubkey[] = { 0x4b, 0xc6, 0x52, 0x62, 0xc2, 0x2d, 0x32, 0x2e, 0xa8, 0x91, 0x46, 0xcc, 0xb5, 0xc6, 0x0c, 0x42, 0x87, 0xb6, 0x5a, 0x35, 0x22, 0x87, 0x43, 0xa5, 0xb9, 0xdc, 0xd1, 0x54, 0x93, 0xbd, 0x86, 0x42, 0x47, 0x89, 0x87, 0xc4, 0x21, 0x63, 0x7d, 0xd0, 0x71, 0x50, 0x79, 0xec, 0x90, 0xfb, 0x8c, 0xd4, 0x7a, 0x45, 0x55, 0x7e, 0xf6, 0x53, 0xd0, 0x77, 0x3d, 0xbe, 0x26, 0x30, 0xf8, 0xe0, 0x00, 0x62, 0x9e, 0xd8, 0x29, 0x3e, 0x1a, 0xa4, 0xa9, 0x6f, 0x3b, 0x15, 0x9a, 0x24, 0x5a, 0xa3, 0x5a, 0xd9, 0x2a, 0x10, 0x19, 0xc7, 0xe0, 0x9a, 0x9a, 0xb7, 0x5b, 0xa4, 0x3c, 0x07, 0x86, 0x92, 0x82, 0x37, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12312_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12312_sig[] = { 0x1e, 0xca, 0xda, 0xce, 0xaa, 0x47, 0x9f, 0xa4, 0xe9, 0xaa, 0xba, 0xc4, 0x21, 0x0b, 0x1a, 0xb7, 0x7f, 0xc1, 0xd1, 0x3a, 0x9c, 0x4c, 0xb0, 0x22, 0x82, 0x6b, 0xb1, 0x80, 0x65, 0x75, 0x11, 0x58, 0x34, 0xa6, 0xec, 0xb9, 0xde, 0xc3, 0xe6, 0x68, 0xb8, 0xc9, 0x1d, 0x4a, 0xca, 0x28, 0x3d, 0xc9, 0x2d, 0xe8, 0x96, 0x5a, 0x66, 0xd5, 0x65, 0x45, 0xad, 0x84, 0xfd, 0xae, 0xe1, 0x6f, 0xff, 0xa0, 0xeb, 0x31, 0x02, 0x21, 0x86, 0xa5, 0xb6, 0xbe, 0x2a, 0x24, 0x75, 0x95, 0x8b, 0x9a, 0xd7, 0x2f, 0x48, 0x3e, 0xbd, 0x4b, 0x25, 0x57, 0x48, 0xa8, 0x11, 0x80, 0x6b, 0xcd, 0x42, 0x8a, 0xcf, 0xd7, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12312 = { .name = "ecdsa_brainpoolp384r1_sha384_12312", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12312_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12312_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12312_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1557 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12313 for ECDSA, tcId is 1558 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12313_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12313_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12313_sig[] = { 0x37, 0xe2, 0x56, 0x87, 0x23, 0x40, 0xda, 0x9d, 0xc8, 0x84, 0xfd, 0x00, 0xda, 0xa1, 0x46, 0x28, 0x37, 0x2b, 0x4b, 0xed, 0xc0, 0xa8, 0xa0, 0x9f, 0x9d, 0x75, 0x13, 0x52, 0x1d, 0x3b, 0x80, 0x3a, 0x78, 0xdc, 0x0e, 0xdb, 0xab, 0x3c, 0x7d, 0xc2, 0xb2, 0x01, 0x4b, 0xaf, 0x7a, 0x9d, 0x21, 0x0e, 0x1b, 0xa4, 0xb4, 0x08, 0x79, 0x73, 0x07, 0x0c, 0xca, 0x9b, 0x95, 0x76, 0x50, 0x17, 0x7e, 0xeb, 0x41, 0xc5, 0x57, 0x73, 0x15, 0x96, 0xa9, 0x66, 0xb0, 0xb7, 0xf6, 0x87, 0x17, 0xd8, 0xe7, 0xb5, 0x54, 0xaf, 0xd0, 0x7c, 0x29, 0x37, 0xc9, 0x54, 0x03, 0xa9, 0x0c, 0x3a, 0x05, 0xfa, 0x96, 0x4b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12313 = { .name = "ecdsa_brainpoolp384r1_sha384_12313", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12313_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12313_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12313_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1558 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12314 for ECDSA, tcId is 1559 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12314_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12314_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12314_sig[] = { 0x00, 0x12, 0x8c, 0x19, 0x9d, 0xc2, 0x76, 0x77, 0xf2, 0x3f, 0xea, 0xe2, 0x8a, 0x9b, 0x28, 0x81, 0x3c, 0xbc, 0x3b, 0x02, 0xfc, 0xa4, 0x93, 0x00, 0x5a, 0x67, 0xc3, 0x12, 0x6a, 0x70, 0x5c, 0x49, 0xb9, 0x82, 0xcb, 0x58, 0x17, 0xee, 0x2c, 0x81, 0x16, 0x1e, 0x80, 0xb7, 0x38, 0xbb, 0xb5, 0x12, 0x73, 0xcb, 0x6d, 0x45, 0x47, 0x77, 0x1d, 0x25, 0x4b, 0xe7, 0x43, 0x48, 0x95, 0x5b, 0xee, 0x97, 0x90, 0x71, 0x35, 0x8a, 0xa3, 0xaf, 0xd6, 0x2a, 0x58, 0x38, 0x17, 0x9a, 0x09, 0x65, 0x46, 0x5a, 0xec, 0x79, 0xbd, 0x6c, 0xbd, 0x9b, 0x8b, 0x2a, 0xa2, 0xc7, 0x9b, 0xb8, 0x8a, 0xb2, 0x15, 0x92, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12314 = { .name = "ecdsa_brainpoolp384r1_sha384_12314", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12314_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12314_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12314_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1559 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12315 for ECDSA, tcId is 1560 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_brainpoolp384r1_sha384_12315_pubkey[] = { 0x2a, 0xc3, 0x93, 0xf2, 0x0c, 0x11, 0x0e, 0x3f, 0x97, 0x06, 0x53, 0x04, 0x39, 0x7e, 0xae, 0x0e, 0x23, 0x18, 0x7b, 0x2b, 0x61, 0x63, 0xdc, 0x66, 0x08, 0x3e, 0x82, 0xaf, 0xf5, 0x68, 0x42, 0x68, 0x43, 0x05, 0x6a, 0xff, 0x8d, 0xc2, 0x3e, 0xeb, 0xce, 0x29, 0x7f, 0x74, 0x78, 0x30, 0xe2, 0x17, 0x34, 0xc9, 0x35, 0x67, 0x13, 0x91, 0xc6, 0xef, 0xa8, 0xb4, 0x6c, 0x5c, 0x37, 0xb3, 0xf8, 0x4a, 0x82, 0xe4, 0x29, 0xa7, 0x58, 0x0f, 0xeb, 0x9a, 0x13, 0x83, 0xb5, 0x5c, 0x83, 0xa9, 0x39, 0x8e, 0x8e, 0xcc, 0x7b, 0x15, 0xd6, 0x99, 0xe6, 0x39, 0x62, 0x32, 0x91, 0x02, 0xa1, 0x57, 0x6f, 0x2b, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12315_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp384r1_sha384_12315_sig[] = { 0x81, 0x8b, 0x0f, 0xd6, 0xca, 0x09, 0x78, 0xa5, 0x9c, 0xad, 0x3f, 0xa1, 0x5e, 0x84, 0xdb, 0x28, 0x96, 0xf3, 0x9b, 0x2a, 0xa4, 0x62, 0xf0, 0x58, 0x38, 0x34, 0xfa, 0x44, 0x44, 0xd1, 0x53, 0xfe, 0x61, 0xe0, 0xc9, 0x30, 0x71, 0xba, 0x96, 0xc5, 0xff, 0xa7, 0x19, 0x3f, 0x77, 0xb8, 0x06, 0xf3, 0x1d, 0x2d, 0x61, 0x44, 0x17, 0x23, 0x85, 0xf8, 0x57, 0xdb, 0x4b, 0x7e, 0x7e, 0x86, 0x39, 0x62, 0xea, 0xca, 0xcd, 0xec, 0x03, 0x4b, 0x4b, 0x4a, 0x9d, 0xd1, 0xaf, 0x27, 0x26, 0x04, 0x40, 0x3f, 0x39, 0xf4, 0x5a, 0x21, 0x94, 0x8b, 0x30, 0x97, 0x6e, 0x73, 0x8e, 0x9e, 0x98, 0xfd, 0x9c, 0xee, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp384r1_sha384_12315 = { .name = "ecdsa_brainpoolp384r1_sha384_12315", .sig_alg = ECDSA, .hash = SHA384, .curve = &brainpoolp384r1_str_params, .pubkey = ecdsa_brainpoolp384r1_sha384_12315_pubkey, .pubkeylen = 96, .msg = ecdsa_brainpoolp384r1_sha384_12315_msg, .msglen = 7, .sig = ecdsa_brainpoolp384r1_sha384_12315_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP384t1, tcId is 1560 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12316 for ECDSA, tcId is 1561 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12316_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12316_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12316_sig[] = { 0x5e, 0x1b, 0xf4, 0xb1, 0xde, 0xba, 0xcb, 0xa4, 0x72, 0x5f, 0xc3, 0xcc, 0x82, 0x14, 0x53, 0x4d, 0xe5, 0xf6, 0xe5, 0x92, 0x64, 0x5b, 0x60, 0xf4, 0xc4, 0xa1, 0xdd, 0x22, 0x60, 0xd3, 0x35, 0x7d, 0x8f, 0xb2, 0xad, 0xa7, 0xf7, 0x2a, 0x48, 0x34, 0x6a, 0x7e, 0x34, 0x39, 0x5a, 0x6a, 0x18, 0x1c, 0x69, 0x40, 0x48, 0xae, 0x82, 0x58, 0xf1, 0xcb, 0x3b, 0x6f, 0x63, 0xf4, 0x93, 0x28, 0x29, 0xeb, 0x5e, 0x3d, 0xf0, 0xbe, 0xee, 0x22, 0xfa, 0x96, 0xd4, 0x65, 0x58, 0x33, 0x86, 0x2f, 0x73, 0xb5, 0x2f, 0x12, 0xe4, 0xc4, 0xc7, 0xd8, 0x18, 0xb2, 0x18, 0x46, 0xef, 0xfb, 0x39, 0xd6, 0xf0, 0x9f, 0xc3, 0x5b, 0x2d, 0x0f, 0xac, 0x8f, 0x5c, 0xb3, 0xc4, 0x05, 0x1f, 0xf4, 0x5f, 0x53, 0x05, 0xe9, 0x3b, 0x24, 0x13, 0x8a, 0x0f, 0x95, 0xfa, 0xd2, 0xfe, 0xf1, 0xc1, 0x0c, 0xd1, 0xdc, 0xf2, 0xcb, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12316 = { .name = "ecdsa_brainpoolp512r1_sha512_12316", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12316_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12316_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12316_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 1561 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12317 for ECDSA, tcId is 1562 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12317_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12317_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12317_sig[] = { 0x80, 0x40, 0x0b, 0xee, 0x9a, 0x34, 0x2f, 0x3a, 0xfb, 0xa2, 0xdb, 0xb0, 0x29, 0x23, 0x5a, 0xd5, 0x11, 0xae, 0xdb, 0x30, 0x96, 0x0c, 0x53, 0xba, 0xd6, 0x70, 0x46, 0x0b, 0x38, 0x30, 0x4d, 0x7c, 0xbd, 0x70, 0x6f, 0xf9, 0x8f, 0x12, 0x96, 0xcb, 0x7e, 0x74, 0x6f, 0x8c, 0xa3, 0xa4, 0x39, 0x37, 0xa5, 0xcd, 0x03, 0x5a, 0x00, 0xc6, 0x38, 0x68, 0x00, 0x1f, 0xa4, 0x29, 0xb4, 0x91, 0xbd, 0x8e, 0x5c, 0x66, 0x94, 0x1e, 0xdc, 0xda, 0x56, 0x22, 0x8e, 0xdc, 0xe7, 0x73, 0x73, 0xa7, 0xb9, 0xdc, 0xdd, 0x46, 0x4e, 0xd1, 0x80, 0x75, 0xe7, 0xda, 0x14, 0x27, 0x91, 0x17, 0x78, 0x78, 0x4f, 0x80, 0x17, 0xbe, 0xf6, 0xf1, 0x87, 0x51, 0xcb, 0xa1, 0x23, 0x55, 0xbd, 0x90, 0xba, 0x63, 0xb8, 0xd3, 0x1e, 0xa3, 0x73, 0x38, 0x7f, 0x36, 0x49, 0x4e, 0x36, 0x42, 0x00, 0x80, 0x82, 0xd3, 0x49, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12317 = { .name = "ecdsa_brainpoolp512r1_sha512_12317", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12317_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12317_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12317_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 1562 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12318 for ECDSA, tcId is 1563 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12318_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x37, 0xf7, 0x89, 0x18, 0x50, 0x6e, 0xa9, 0xcc, 0x14, 0xf1, 0x49, 0x2e, 0xb6, 0x6c, 0x9e, 0x1c, 0x4e, 0x27, 0xf3, 0xcb, 0x00, 0xbb, 0x51, 0x1d, 0x5d, 0xfd, 0xbe, 0xa6, 0xf8, 0x17, 0xa8, 0x7b, 0xfd, 0x81, 0xde, 0x29, 0x55, 0xfa, 0x03, 0x2f, 0x52, 0x87, 0x3f, 0x79, 0x91, 0x69, 0xcc, 0x44, 0x5c, 0xb0, 0x39, 0x1e, 0x46, 0xe5, 0x71, 0x79, 0xef, 0x84, 0xd5, 0x0c, 0x85, 0xdb, 0x5c, 0x97, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12318_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12318_sig[] = { 0x47, 0x68, 0xdf, 0xdd, 0xae, 0x4c, 0xb8, 0x35, 0x66, 0xf2, 0xc3, 0xa9, 0x34, 0x00, 0x91, 0xc2, 0x60, 0x8e, 0x0e, 0x27, 0x0a, 0x4b, 0x3f, 0x48, 0xde, 0xd7, 0xc7, 0x5b, 0x4a, 0xa1, 0x5a, 0xb6, 0x5c, 0xb0, 0x50, 0xcf, 0xdb, 0x31, 0x2c, 0x32, 0xbf, 0xaa, 0x77, 0x59, 0x86, 0x9c, 0x9c, 0x0c, 0xe2, 0x7f, 0x6c, 0xdf, 0x1f, 0xb5, 0x84, 0x37, 0x9f, 0x63, 0x98, 0xc9, 0x5e, 0xbf, 0x86, 0x44, 0x7e, 0x1a, 0x3a, 0xac, 0xd8, 0xd6, 0x03, 0xfa, 0xec, 0xf8, 0x79, 0x02, 0x14, 0x7b, 0x67, 0x43, 0x5d, 0x99, 0x2e, 0xe9, 0xe5, 0x43, 0xf9, 0x34, 0xdd, 0x4c, 0x40, 0xd8, 0xa1, 0x2c, 0xd1, 0xe1, 0x03, 0x66, 0xd0, 0x74, 0x3d, 0x78, 0x62, 0xb9, 0xc8, 0xba, 0x8b, 0x68, 0x16, 0x63, 0x9c, 0x35, 0x09, 0xb5, 0xca, 0xa2, 0xa9, 0x15, 0x33, 0xc0, 0xaf, 0x50, 0xec, 0xe2, 0xfd, 0x2c, 0x53, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12318 = { .name = "ecdsa_brainpoolp512r1_sha512_12318", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12318_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12318_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12318_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP512t1, tcId is 1563 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12319 for ECDSA, tcId is 1564 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12319_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12319_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12319_sig[] = { 0x27, 0xd9, 0xc6, 0xc4, 0xdb, 0x31, 0xaf, 0xf2, 0x88, 0xfa, 0x4e, 0x40, 0x15, 0x9d, 0x6e, 0xe1, 0x8c, 0x98, 0x13, 0x94, 0x27, 0x48, 0x47, 0x96, 0xf1, 0xf8, 0x74, 0x5c, 0x98, 0x27, 0xdf, 0xc0, 0x8d, 0x39, 0x3a, 0xbe, 0x14, 0x4d, 0xf6, 0xb7, 0xc1, 0x2d, 0x48, 0x97, 0x1f, 0xdd, 0x28, 0x4b, 0x81, 0xe6, 0xe1, 0x08, 0x60, 0x35, 0x9e, 0xf7, 0x14, 0x73, 0xb9, 0xe6, 0xbb, 0x84, 0xcb, 0x1e, 0x07, 0xa0, 0x42, 0x0c, 0x8a, 0x9b, 0x26, 0x91, 0x1b, 0x63, 0x62, 0x65, 0x40, 0xa8, 0x5f, 0x60, 0xaa, 0x27, 0x7a, 0xfd, 0xef, 0x99, 0x90, 0xfc, 0x8d, 0xc1, 0xd3, 0xf1, 0xf2, 0xc5, 0xa9, 0x27, 0xe1, 0xe4, 0xa2, 0x9d, 0x81, 0xa7, 0x01, 0xb4, 0x8b, 0x36, 0x6f, 0x00, 0x0f, 0x96, 0x26, 0x14, 0x89, 0x9c, 0xbf, 0x19, 0x38, 0x26, 0xca, 0x8d, 0xe4, 0xa4, 0x25, 0x53, 0x8d, 0xe5, 0xac, 0x62, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12319 = { .name = "ecdsa_brainpoolp512r1_sha512_12319", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12319_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12319_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12319_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 1564 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12320 for ECDSA, tcId is 1565 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12320_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12320_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12320_sig[] = { 0x49, 0x54, 0x2e, 0xec, 0x3b, 0x96, 0xc4, 0x76, 0xb5, 0x9b, 0x2b, 0x94, 0xd5, 0xfc, 0x7e, 0xe0, 0x8f, 0xd2, 0xa1, 0xb1, 0xe7, 0x32, 0xe6, 0x60, 0x90, 0x98, 0xab, 0x2a, 0x7f, 0x25, 0x04, 0x52, 0xfb, 0xc1, 0x05, 0x7a, 0x6d, 0x3f, 0xec, 0xcb, 0xca, 0xeb, 0x00, 0x46, 0x8b, 0x26, 0x22, 0x2e, 0xb4, 0x80, 0x65, 0xfc, 0xaa, 0xd7, 0x64, 0x76, 0x81, 0x82, 0x38, 0x60, 0x45, 0x1e, 0x1e, 0x91, 0x37, 0xdb, 0x33, 0x6d, 0xee, 0x1e, 0x45, 0xd9, 0xac, 0xe5, 0x50, 0x05, 0x35, 0x11, 0xc9, 0xc3, 0x75, 0x56, 0x57, 0xe7, 0x8e, 0xca, 0x10, 0x8d, 0x3d, 0xfd, 0x1e, 0x68, 0xfe, 0x83, 0xda, 0x62, 0x6b, 0x8d, 0xac, 0xbb, 0x19, 0xf0, 0xee, 0x23, 0x2b, 0x0f, 0x8b, 0xfe, 0x8d, 0xdb, 0xe7, 0xd5, 0xe9, 0x8b, 0x7a, 0x2e, 0xcc, 0xd0, 0x3f, 0x37, 0x5d, 0x16, 0x4c, 0xe8, 0x28, 0x63, 0x18, 0x96, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12320 = { .name = "ecdsa_brainpoolp512r1_sha512_12320", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12320_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12320_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12320_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 1565 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12321 for ECDSA, tcId is 1566 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12321_pubkey[] = { 0x72, 0x7e, 0x75, 0xd6, 0x3d, 0xce, 0xb1, 0xa8, 0x4a, 0x71, 0x06, 0xd8, 0x02, 0xe8, 0xeb, 0x34, 0xa2, 0x04, 0xbc, 0x05, 0x35, 0x35, 0x67, 0xa2, 0x3b, 0xa8, 0xb6, 0xf5, 0x4e, 0x50, 0xd2, 0xd8, 0x22, 0x1c, 0x87, 0xfd, 0x8e, 0x52, 0x38, 0xa3, 0x37, 0x4d, 0xf9, 0x58, 0xb3, 0xcf, 0x3e, 0x3f, 0x38, 0xc6, 0x18, 0xc1, 0xcc, 0x8c, 0x5b, 0x95, 0x74, 0xb5, 0x0e, 0x40, 0x5d, 0x69, 0x12, 0x18, 0x72, 0xe6, 0x14, 0xa0, 0x8b, 0x7b, 0x1a, 0xbf, 0x2a, 0xe3, 0x9d, 0x7f, 0x7d, 0x5d, 0x5d, 0xeb, 0x7d, 0x08, 0x99, 0xe8, 0xb3, 0x0e, 0x80, 0xf1, 0x78, 0x65, 0xde, 0x23, 0x78, 0x1b, 0x5f, 0xf5, 0x7f, 0xcb, 0xbc, 0xd7, 0x45, 0xcc, 0x65, 0x13, 0x5c, 0x46, 0x61, 0xb1, 0x55, 0x39, 0xb4, 0xa1, 0xcb, 0xd1, 0xc6, 0x10, 0xe6, 0x9d, 0x55, 0x0b, 0x39, 0x25, 0x8b, 0x49, 0xd2, 0x5e, 0xec, 0x5c, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12321_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12321_sig[] = { 0x4f, 0x90, 0xce, 0xb7, 0x6b, 0xc7, 0x2f, 0x0c, 0xca, 0x10, 0x70, 0x5d, 0x3b, 0xad, 0xab, 0x6c, 0xaa, 0x60, 0x19, 0xef, 0x6b, 0xfe, 0x7d, 0xe1, 0xb7, 0x59, 0x51, 0xd5, 0x17, 0xd2, 0xb1, 0x61, 0x68, 0x51, 0x5b, 0xf3, 0x05, 0xf0, 0x00, 0x62, 0x92, 0xe4, 0x90, 0x05, 0x98, 0x25, 0x61, 0x41, 0xe4, 0x5c, 0x19, 0x07, 0x7f, 0xa4, 0x47, 0xdd, 0x5f, 0x32, 0xda, 0xa6, 0x2c, 0x25, 0x08, 0x15, 0x67, 0x12, 0xa7, 0x84, 0x10, 0x28, 0x02, 0x82, 0x1e, 0x97, 0x08, 0xe3, 0x49, 0xd0, 0x3a, 0x88, 0x29, 0x7b, 0x37, 0x4e, 0xf8, 0x1a, 0x4e, 0xdc, 0x35, 0x01, 0x65, 0x24, 0xcd, 0x2a, 0x22, 0xaf, 0xea, 0x7b, 0x8b, 0x31, 0x71, 0xde, 0x60, 0xac, 0x1b, 0x38, 0x82, 0x53, 0x36, 0x50, 0x58, 0x6d, 0xca, 0xd3, 0x38, 0xea, 0x48, 0x23, 0x14, 0x86, 0xe1, 0x0e, 0x31, 0x20, 0xce, 0x3d, 0x2a, 0x59, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12321 = { .name = "ecdsa_brainpoolp512r1_sha512_12321", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12321_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12321_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12321_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP512t1, tcId is 1566 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12322 for ECDSA, tcId is 1567 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12322_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12322_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12322_sig[] = { 0x45, 0x9e, 0x3e, 0x6e, 0x67, 0x1a, 0x6c, 0x34, 0x2d, 0x58, 0x5d, 0xb6, 0x89, 0x04, 0x3d, 0x32, 0xa4, 0x94, 0xce, 0x00, 0x39, 0xee, 0x71, 0xac, 0x67, 0xed, 0x6e, 0xc0, 0x86, 0x19, 0x08, 0xeb, 0xae, 0x6b, 0x2d, 0x6e, 0x4a, 0x67, 0xca, 0xa7, 0xa8, 0xf0, 0x57, 0x6a, 0x49, 0x88, 0x9a, 0x4a, 0x63, 0xd4, 0xb0, 0xb8, 0xaa, 0x88, 0x45, 0xc9, 0xcf, 0x78, 0x5b, 0x49, 0x41, 0x2a, 0x70, 0x71, 0xa5, 0xed, 0xd7, 0xab, 0xfc, 0xe9, 0xd4, 0x41, 0x3b, 0x22, 0x28, 0x93, 0x97, 0x78, 0x5b, 0x3d, 0x84, 0xb2, 0xc0, 0xd3, 0x71, 0x94, 0x09, 0x25, 0x5b, 0xb7, 0x12, 0x82, 0x68, 0xe0, 0xbc, 0xd3, 0x7d, 0x92, 0x8b, 0xea, 0x54, 0x86, 0xbf, 0x56, 0xff, 0xe2, 0x59, 0xc7, 0xec, 0x9f, 0x50, 0xb8, 0x78, 0xe0, 0x15, 0x5d, 0x73, 0xe3, 0xbd, 0xe5, 0xcf, 0xfe, 0x55, 0xe6, 0x12, 0xf8, 0xd7, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12322 = { .name = "ecdsa_brainpoolp512r1_sha512_12322", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12322_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12322_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12322_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1567 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12323 for ECDSA, tcId is 1568 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12323_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12323_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12323_sig[] = { 0x1b, 0x2f, 0x7e, 0xa4, 0x09, 0x60, 0xe3, 0x7e, 0x28, 0xb5, 0x56, 0xb7, 0xe4, 0x46, 0xc4, 0x64, 0x1e, 0x2f, 0x3d, 0x8a, 0x82, 0x9d, 0xcc, 0x4a, 0x34, 0x95, 0x53, 0xe4, 0x2c, 0xf9, 0xce, 0x62, 0x72, 0xdc, 0x9c, 0xdc, 0xda, 0x01, 0x3e, 0x39, 0x81, 0xcb, 0x73, 0xb1, 0x0d, 0x46, 0x32, 0x1c, 0x80, 0x50, 0x1d, 0x6a, 0x34, 0xad, 0x7f, 0xd9, 0x59, 0xa0, 0xc7, 0x8f, 0x89, 0x1f, 0x33, 0xf0, 0x7f, 0x19, 0x5b, 0x76, 0x96, 0xed, 0xfc, 0x76, 0x87, 0xff, 0x01, 0x26, 0xea, 0xba, 0x13, 0xda, 0xd1, 0xe1, 0x95, 0x63, 0xe8, 0xd3, 0x95, 0xaf, 0x32, 0xdb, 0x3d, 0x6a, 0x7b, 0x4e, 0x82, 0xf2, 0x80, 0x04, 0x50, 0x1d, 0x92, 0xb7, 0x53, 0x7d, 0xa3, 0x97, 0x84, 0x5b, 0x7a, 0xa3, 0x98, 0xa1, 0x10, 0x51, 0x05, 0x2e, 0x52, 0x26, 0x4b, 0xd8, 0xcb, 0xcb, 0xa9, 0x98, 0x7e, 0xc6, 0x74, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12323 = { .name = "ecdsa_brainpoolp512r1_sha512_12323", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12323_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12323_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12323_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1568 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12324 for ECDSA, tcId is 1569 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12324_pubkey[] = { 0x05, 0x18, 0xff, 0x14, 0xba, 0x05, 0x18, 0x8a, 0xbe, 0xd0, 0xa8, 0xc8, 0x8d, 0xb0, 0xf0, 0x97, 0xb5, 0x66, 0x0a, 0xac, 0x57, 0xe9, 0xa3, 0xcd, 0xbb, 0x9c, 0x83, 0x3e, 0x2a, 0x7f, 0x9f, 0x61, 0x3e, 0x49, 0x95, 0x6b, 0x53, 0xa6, 0x35, 0x95, 0x2e, 0x29, 0x81, 0x8e, 0x4a, 0x80, 0x15, 0xcb, 0x6a, 0x15, 0x0c, 0xed, 0xe6, 0x36, 0xc2, 0x55, 0x8f, 0x2d, 0x36, 0x02, 0x48, 0x39, 0x63, 0xb9, 0x9e, 0xd9, 0xfe, 0x84, 0x2f, 0x3e, 0xd4, 0x18, 0x46, 0x2c, 0x63, 0xe2, 0x66, 0x94, 0x4c, 0xa2, 0x74, 0x7e, 0x15, 0xbd, 0x8f, 0x52, 0x84, 0x4d, 0x6a, 0x1c, 0xe9, 0x81, 0x52, 0x10, 0x42, 0x12, 0x06, 0x80, 0x5c, 0x6e, 0xd7, 0x92, 0x35, 0x6e, 0xc5, 0x7d, 0x79, 0xfa, 0x3e, 0x36, 0xff, 0xf2, 0x3e, 0x2f, 0xc6, 0x37, 0x0c, 0x67, 0xbc, 0x51, 0xd3, 0xf8, 0xb5, 0x55, 0xc9, 0x04, 0x8d, 0x6d, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12324_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12324_sig[] = { 0x1b, 0x5c, 0x1d, 0x2b, 0x2b, 0x06, 0x59, 0x1a, 0x1f, 0xa5, 0x16, 0xcf, 0xfa, 0x9c, 0x8a, 0x57, 0xcf, 0x1f, 0xff, 0xc2, 0x2c, 0xec, 0xb7, 0x24, 0x92, 0x81, 0x67, 0x0b, 0xc2, 0x38, 0x83, 0xa6, 0x85, 0x53, 0xe0, 0xca, 0xf1, 0xed, 0xd9, 0xf1, 0x70, 0x3a, 0x25, 0xb7, 0x4e, 0x00, 0x00, 0xa3, 0x7e, 0x32, 0xe6, 0xcc, 0x35, 0x76, 0x93, 0x9f, 0x45, 0x8c, 0x3d, 0xd5, 0xc4, 0xdb, 0xcc, 0x9c, 0x4b, 0x23, 0xd7, 0xed, 0x7f, 0x8a, 0x6b, 0x7b, 0xa7, 0xd2, 0x2a, 0xef, 0xa8, 0xfd, 0xe0, 0x30, 0xec, 0xb3, 0xf2, 0xfe, 0xd4, 0xa5, 0xf2, 0x6f, 0x12, 0xd5, 0x9a, 0x29, 0xd6, 0x3c, 0xdd, 0x0e, 0xc0, 0x3f, 0xae, 0x55, 0x7d, 0x14, 0x1c, 0x7b, 0x0e, 0x87, 0x12, 0xc3, 0x06, 0xb0, 0xee, 0xbb, 0xd0, 0xca, 0xb2, 0x76, 0x96, 0x01, 0x20, 0x62, 0x62, 0x2b, 0xb1, 0x80, 0x04, 0x30, 0x34, 0xba, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12324 = { .name = "ecdsa_brainpoolp512r1_sha512_12324", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12324_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12324_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12324_sig, .siglen = 128, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1569 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12325 for ECDSA, tcId is 1570 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12325_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12325_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12325_sig[] = { 0xa9, 0x52, 0x84, 0x7a, 0xcf, 0x21, 0x3c, 0x86, 0xe2, 0x31, 0x31, 0x6d, 0x8f, 0x91, 0x30, 0xf7, 0xcb, 0xdf, 0x7f, 0x39, 0x52, 0x30, 0x7a, 0x57, 0x70, 0x76, 0x34, 0x2d, 0x13, 0x93, 0x9b, 0x4a, 0xb5, 0xa1, 0x31, 0x3b, 0x34, 0xab, 0xb8, 0x92, 0x04, 0xd3, 0xfd, 0x1f, 0x87, 0x38, 0x85, 0xff, 0xfa, 0x68, 0x3c, 0x5a, 0x49, 0x3e, 0x54, 0x61, 0xc7, 0xf1, 0x40, 0x0a, 0xf8, 0x6a, 0xe7, 0xfe, 0x9a, 0x65, 0xa8, 0xa4, 0x15, 0x0d, 0xe5, 0x93, 0xb2, 0x96, 0x42, 0xb9, 0x88, 0xb2, 0xec, 0x2e, 0x23, 0xe1, 0x5e, 0x15, 0x6e, 0xcf, 0x0a, 0xf5, 0xfd, 0xe2, 0xfb, 0xd7, 0x32, 0x08, 0xf6, 0x9f, 0x25, 0x06, 0xd1, 0x41, 0xe0, 0xb4, 0x7c, 0x0e, 0x1f, 0x2f, 0xa0, 0x9e, 0xf2, 0x6b, 0x38, 0x9a, 0x6b, 0xd2, 0xb0, 0x23, 0x09, 0x30, 0xa1, 0x6f, 0xd1, 0x19, 0x76, 0x7e, 0x38, 0x27, 0x24, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12325 = { .name = "ecdsa_brainpoolp512r1_sha512_12325", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12325_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12325_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12325_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 1570 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12326 for ECDSA, tcId is 1571 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12326_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12326_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12326_sig[] = { 0x51, 0xbf, 0xb8, 0x0a, 0xae, 0x30, 0x26, 0x2a, 0x67, 0xbf, 0x07, 0x71, 0xa6, 0xb8, 0xd1, 0x95, 0xe5, 0x9a, 0xa0, 0x4e, 0x87, 0xbd, 0x06, 0x0f, 0xe5, 0xa9, 0xbd, 0x56, 0xd3, 0x53, 0x85, 0xa5, 0xfc, 0x3d, 0xa5, 0xdf, 0xc3, 0xae, 0x8c, 0x67, 0xdb, 0xd4, 0x08, 0x18, 0x44, 0x82, 0x85, 0x5e, 0x35, 0x63, 0xde, 0xde, 0xe7, 0x2a, 0x21, 0xb6, 0x0f, 0xaf, 0xd7, 0x38, 0x19, 0xaa, 0x83, 0x7c, 0x80, 0x7f, 0x0d, 0x69, 0x38, 0x54, 0x67, 0xad, 0x6c, 0xd8, 0xa4, 0x4d, 0x48, 0x2c, 0xa3, 0xb6, 0xe1, 0x8f, 0x7b, 0x35, 0x2e, 0xf1, 0x9a, 0x2b, 0xc9, 0x80, 0x50, 0x0b, 0x6d, 0x59, 0x04, 0x5f, 0x0d, 0x6f, 0x7a, 0xb7, 0xe4, 0x14, 0xc5, 0x0d, 0x2b, 0x68, 0xd7, 0xf6, 0xe6, 0xc0, 0x1d, 0x3e, 0x83, 0x53, 0xcd, 0xfd, 0x47, 0x5f, 0x24, 0x9b, 0x31, 0x84, 0x2f, 0xe5, 0x99, 0x55, 0xf4, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12326 = { .name = "ecdsa_brainpoolp512r1_sha512_12326", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12326_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12326_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12326_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 1571 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12327 for ECDSA, tcId is 1572 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12327_pubkey[] = { 0x3f, 0x89, 0xe7, 0x87, 0xb4, 0xd5, 0xd2, 0x59, 0x96, 0x24, 0x51, 0x35, 0x30, 0xe7, 0x50, 0xab, 0x3c, 0x59, 0x57, 0xdc, 0x9a, 0xa0, 0xe7, 0xb0, 0x8a, 0x3e, 0x25, 0x35, 0x68, 0x18, 0xe2, 0x03, 0x7d, 0x06, 0x2f, 0x33, 0x6d, 0x4e, 0xed, 0x41, 0x7c, 0x91, 0xbc, 0xb1, 0x1b, 0x54, 0xb5, 0x7d, 0x54, 0xa4, 0xf0, 0x2a, 0x72, 0xfb, 0x74, 0x26, 0x2f, 0x74, 0x2c, 0xc6, 0xf3, 0x40, 0x44, 0x01, 0x3a, 0x44, 0x8b, 0x8e, 0x2d, 0x0d, 0x5a, 0x7c, 0x5b, 0x4f, 0x1b, 0x9f, 0x5b, 0x70, 0x1a, 0x9d, 0x21, 0xff, 0x55, 0xe3, 0x67, 0x8c, 0xa1, 0x19, 0xb6, 0xd7, 0xc5, 0x11, 0xba, 0x0a, 0xef, 0x89, 0xf3, 0x1a, 0xeb, 0x19, 0x5d, 0xb0, 0x0f, 0x24, 0x83, 0x59, 0xae, 0xe9, 0x24, 0xe7, 0xc8, 0x60, 0xb7, 0x68, 0x45, 0xf6, 0x51, 0x2a, 0x2a, 0x4a, 0xad, 0xc1, 0x28, 0x7a, 0x15, 0x09, 0x52, 0x20, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12327_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12327_sig[] = { 0x4e, 0x87, 0x11, 0xb0, 0x0d, 0xe3, 0x55, 0xf1, 0x4c, 0x8e, 0xb9, 0x19, 0x59, 0xc1, 0x3c, 0x77, 0xf9, 0x15, 0x57, 0x54, 0x76, 0x5f, 0x10, 0xf2, 0xaa, 0xa8, 0xfd, 0xad, 0x6a, 0x14, 0xc6, 0xa4, 0xe6, 0x2c, 0x5e, 0xd4, 0x8a, 0x9d, 0x8c, 0xa4, 0x03, 0xc9, 0x02, 0xdb, 0x0c, 0x2c, 0x07, 0x35, 0x42, 0x6b, 0x33, 0xe6, 0x78, 0x28, 0xac, 0x32, 0xae, 0x19, 0xb8, 0x4e, 0x65, 0x98, 0x68, 0x19, 0x7d, 0x10, 0x4a, 0xe5, 0xe5, 0xd0, 0xda, 0x26, 0xcb, 0x42, 0x7d, 0x79, 0x51, 0xd4, 0x0d, 0xf4, 0x29, 0xb4, 0x20, 0x50, 0x86, 0xe6, 0x33, 0xb8, 0x00, 0xd7, 0xd7, 0xb8, 0xbd, 0xe4, 0x8a, 0x9b, 0xec, 0x4e, 0x43, 0xdd, 0xeb, 0x42, 0x26, 0x19, 0x2b, 0x5c, 0x9b, 0x30, 0xff, 0xa3, 0xef, 0xa7, 0xd2, 0x38, 0x5a, 0xb2, 0x8a, 0x19, 0x0c, 0x16, 0x5f, 0xb2, 0xa2, 0xc5, 0x85, 0x72, 0xc2, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12327 = { .name = "ecdsa_brainpoolp512r1_sha512_12327", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12327_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12327_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12327_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP512t1, tcId is 1572 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12328 for ECDSA, tcId is 1573 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12328_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12328_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12328_sig[] = { 0x4c, 0xd6, 0x17, 0x54, 0x21, 0x1d, 0x22, 0x23, 0x71, 0xe5, 0x52, 0x57, 0x8f, 0xf7, 0x05, 0xcc, 0x81, 0x9a, 0x2f, 0x9f, 0xb2, 0x72, 0x9f, 0x05, 0xd8, 0x48, 0xca, 0xab, 0xf4, 0x4a, 0x31, 0xfd, 0xa1, 0xbd, 0x03, 0x8f, 0x1b, 0x87, 0xef, 0xd2, 0x8a, 0x8c, 0xe5, 0x32, 0x22, 0xfd, 0xfe, 0xc1, 0x8d, 0x59, 0x29, 0xdf, 0x92, 0x6d, 0xf2, 0x7c, 0x2c, 0x7e, 0x73, 0x60, 0xbc, 0x5c, 0x0c, 0x70, 0x5c, 0xe9, 0x4c, 0x85, 0x1d, 0xb1, 0x80, 0x7d, 0xc7, 0x9d, 0xcc, 0x08, 0x7c, 0x08, 0x30, 0xd7, 0x0a, 0x00, 0x69, 0xcf, 0x52, 0xba, 0xff, 0xaf, 0x34, 0x7a, 0xef, 0xa1, 0xdd, 0xba, 0x77, 0xf6, 0xf7, 0x70, 0xc1, 0x48, 0x3f, 0xdd, 0xe3, 0x8f, 0x5d, 0x74, 0xbd, 0xb3, 0x23, 0x72, 0xe1, 0x2f, 0xee, 0x84, 0x3e, 0xff, 0xf0, 0xf2, 0xdc, 0x93, 0x44, 0xca, 0x1e, 0x3b, 0x26, 0xb9, 0xb0, 0x51, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12328 = { .name = "ecdsa_brainpoolp512r1_sha512_12328", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12328_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12328_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12328_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1573 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12329 for ECDSA, tcId is 1574 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12329_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12329_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12329_sig[] = { 0x48, 0xb4, 0xbd, 0xe7, 0xbe, 0xfb, 0x1b, 0x1c, 0xad, 0x50, 0xce, 0xe6, 0x23, 0x3c, 0xbf, 0x32, 0x81, 0x28, 0x60, 0xc8, 0x1d, 0x7a, 0xd5, 0xb0, 0xe9, 0xd6, 0x37, 0x72, 0x02, 0xbc, 0xd3, 0x48, 0x27, 0xc5, 0x34, 0xda, 0x0a, 0xc9, 0x64, 0x6a, 0xe0, 0x15, 0x46, 0x89, 0xe3, 0x8c, 0x60, 0x88, 0x94, 0xbb, 0x31, 0x26, 0xe1, 0x02, 0x5f, 0x69, 0xc8, 0x24, 0xc6, 0x9a, 0xb8, 0x21, 0x27, 0x4a, 0x83, 0x69, 0xf5, 0x84, 0x0f, 0x77, 0x66, 0x68, 0xeb, 0xb4, 0x35, 0xb3, 0x3b, 0xe0, 0x5d, 0xce, 0x4a, 0xdf, 0xab, 0xb8, 0x86, 0x0c, 0xcc, 0x90, 0x0d, 0x07, 0xdb, 0x00, 0x6a, 0x50, 0x19, 0x5f, 0xd4, 0xde, 0x98, 0x63, 0x21, 0x92, 0xfb, 0xe7, 0x31, 0x9c, 0xed, 0xff, 0x26, 0xaa, 0x86, 0x82, 0xcf, 0x7b, 0xf5, 0xf1, 0xc0, 0x2e, 0x58, 0xb9, 0xc1, 0x63, 0x23, 0x61, 0x03, 0xd9, 0xb3, 0x14, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12329 = { .name = "ecdsa_brainpoolp512r1_sha512_12329", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12329_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12329_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12329_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1574 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12330 for ECDSA, tcId is 1575 in file ecdsa_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_brainpoolp512r1_sha512_12330_pubkey[] = { 0x78, 0x60, 0xa4, 0x74, 0x3b, 0xb4, 0x8e, 0x77, 0x93, 0xc7, 0xf1, 0x41, 0x6f, 0xba, 0xc6, 0xca, 0x0b, 0x53, 0x82, 0x10, 0xd7, 0x43, 0xf2, 0x49, 0x76, 0xaf, 0x3e, 0xfd, 0xa9, 0x7f, 0x28, 0xbc, 0x95, 0x91, 0x34, 0x01, 0xec, 0x4c, 0xa5, 0xe7, 0x44, 0xa2, 0x3d, 0x1a, 0x55, 0x26, 0x53, 0xff, 0x11, 0x0e, 0xc8, 0x42, 0x1b, 0x3d, 0xe5, 0x31, 0xf3, 0xba, 0xcd, 0xa0, 0x7b, 0xfb, 0x09, 0xd6, 0x03, 0x66, 0x2f, 0x2f, 0x24, 0x75, 0xbb, 0xf5, 0xe2, 0x0d, 0xa4, 0x8b, 0x50, 0x16, 0x9d, 0x28, 0x9c, 0x89, 0xc5, 0x4e, 0xd0, 0xf9, 0x7b, 0xbb, 0xc7, 0xf3, 0x80, 0x16, 0xf1, 0xa9, 0x55, 0xcb, 0x74, 0xc5, 0x27, 0x27, 0xef, 0x80, 0x20, 0x55, 0xea, 0x09, 0x0f, 0xe1, 0xa4, 0x9b, 0xe5, 0x8d, 0xdc, 0x60, 0x83, 0xbc, 0xa3, 0xf7, 0xc0, 0x2f, 0xf6, 0x44, 0x77, 0x5c, 0xd0, 0x02, 0x7f, 0x06, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12330_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_brainpoolp512r1_sha512_12330_sig[] = { 0x19, 0x52, 0x4b, 0x15, 0xcf, 0x4e, 0xcb, 0x40, 0x0b, 0x93, 0x8e, 0xf5, 0xf7, 0x52, 0xb8, 0x6e, 0xc8, 0xf0, 0x7c, 0x59, 0x03, 0xda, 0x5d, 0xba, 0x9c, 0x91, 0xab, 0x79, 0x65, 0xb1, 0x22, 0x3a, 0x8e, 0x26, 0x2b, 0xef, 0x8c, 0xca, 0x89, 0x73, 0xed, 0x98, 0x79, 0x7f, 0x37, 0xa3, 0x5e, 0x1c, 0x59, 0x99, 0xcf, 0x20, 0x3e, 0x61, 0x0e, 0xf7, 0x73, 0xc6, 0xaa, 0x27, 0x86, 0xbb, 0xa0, 0x64, 0x98, 0xcf, 0x75, 0x26, 0xf5, 0xa2, 0x4a, 0x0e, 0x2f, 0x22, 0xf9, 0x09, 0xf8, 0x19, 0x0b, 0x13, 0x13, 0x04, 0x51, 0xb1, 0x5d, 0xd6, 0x77, 0x4b, 0xde, 0xa9, 0xd9, 0x29, 0x34, 0x2d, 0x92, 0x4b, 0xc7, 0xeb, 0xa1, 0xdf, 0x89, 0x91, 0x9c, 0x1b, 0x9a, 0xee, 0x8d, 0x09, 0x20, 0x36, 0x06, 0xd1, 0x0c, 0xeb, 0xff, 0x89, 0x90, 0x4c, 0xb7, 0xe7, 0x1a, 0x82, 0xd8, 0x97, 0x2d, 0x75, 0x53, 0x06, }; static const wycheproof_ecdsa_test ecdsa_brainpoolp512r1_sha512_12330 = { .name = "ecdsa_brainpoolp512r1_sha512_12330", .sig_alg = ECDSA, .hash = SHA512, .curve = &brainpoolp512r1_str_params, .pubkey = ecdsa_brainpoolp512r1_sha512_12330_pubkey, .pubkeylen = 128, .msg = ecdsa_brainpoolp512r1_sha512_12330_msg, .msglen = 7, .sig = ecdsa_brainpoolp512r1_sha512_12330_sig, .siglen = 128, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP512t1, tcId is 1575 in file ecdsa_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) */ /* Test 12331 for ECDSA, tcId is 1 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12331_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12331_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12331_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x85, 0x5d, 0x44, 0x2f, 0x5b, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x52, 0x5f, 0xe7, 0x10, 0xfa, 0xb9, 0xaa, 0x7c, 0x77, 0xa6, 0x7f, 0x79, 0xe6, 0xfa, 0xdd, 0x76, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12331 = { .name = "ecdsa_secp256r1_sha256_12331", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12331_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12331_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12331_sig, .siglen = 64, .result = 1, .comment = "signature malleability, tcId is 1 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12332 for ECDSA, tcId is 2 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12332_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12332_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12332_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbd, 0x6b, 0x94, 0xd5, 0xed, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xbc, 0xcc, 0x08, 0x33, 0x49, 0x06, 0x86, 0xde, 0xac, 0x86, 0x35, 0xbc, 0xb9, 0xbf, 0x53, 0x69, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12332 = { .name = "ecdsa_secp256r1_sha256_12332", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12332_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12332_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12332_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 2 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12333 for ECDSA, tcId is 3 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12333_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12333_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12333_sig[] = { 0xd4, 0x5c, 0x57, 0x40, 0x94, 0x6b, 0x2a, 0x14, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x90, 0xbd, 0x01, 0xed, 0x28, 0x05, 0x28, 0xb6, 0x2b, 0x3a, 0xed, 0x5f, 0xc9, 0x3f, 0x06, 0xf7, 0x39, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12333 = { .name = "ecdsa_secp256r1_sha256_12333", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12333_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12333_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12333_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 3 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12334 for ECDSA, tcId is 4 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12334_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12334_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12334_sig[] = { 0x01, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x00, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12334 = { .name = "ecdsa_secp256r1_sha256_12334", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12334_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12334_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12334_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 4 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12335 for ECDSA, tcId is 5 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12335_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12335_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12335_sig[] = { 0xd4, 0x5c, 0x57, 0x41, 0x94, 0x6b, 0x2a, 0x13, 0x7f, 0x59, 0x26, 0x2e, 0xe6, 0xf5, 0xbc, 0x91, 0x00, 0x1a, 0xf2, 0x7a, 0x5e, 0x11, 0x17, 0xa6, 0x47, 0x33, 0x95, 0x06, 0x42, 0xa3, 0xd1, 0xe8, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12335 = { .name = "ecdsa_secp256r1_sha256_12335", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12335_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12335_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12335_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 5 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12336 for ECDSA, tcId is 6 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12336_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12336_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12336_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x78, 0xa2, 0xbb, 0xd0, 0xa6, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x27, 0x6e, 0x0e, 0x4a, 0x53, 0x75, 0x92, 0x8d, 0x6f, 0xcd, 0x16, 0x0c, 0x11, 0xcb, 0x6d, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12336 = { .name = "ecdsa_secp256r1_sha256_12336", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12336_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12336_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12336_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 6 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12337 for ECDSA, tcId is 7 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12337_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12337_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12337_sig[] = { 0x00, 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x01, 0xb3, 0x29, 0xf4, 0x79, 0xa2, 0xbb, 0xd0, 0xa5, 0xc3, 0x84, 0xee, 0x14, 0x93, 0xb1, 0xf5, 0x18, 0x6a, 0x87, 0x13, 0x9c, 0xac, 0x5d, 0xf4, 0x08, 0x7c, 0x13, 0x4b, 0x49, 0x15, 0x68, 0x47, 0xdb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12337 = { .name = "ecdsa_secp256r1_sha256_12337", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12337_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12337_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12337_sig, .siglen = 66, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 7 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12338 for ECDSA, tcId is 8 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12338_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12338_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12338_sig[] = { 0x2b, 0xa3, 0xa8, 0xbe, 0x6b, 0x94, 0xd5, 0xec, 0x80, 0xa6, 0xd9, 0xd1, 0x19, 0x0a, 0x43, 0x6e, 0xff, 0xe5, 0x0d, 0x85, 0xa1, 0xee, 0xe8, 0x59, 0xb8, 0xcc, 0x6a, 0xf9, 0xbd, 0x5c, 0x2e, 0x18, 0x4c, 0xd6, 0x0b, 0x86, 0x5d, 0x44, 0x2f, 0x5a, 0x3c, 0x7b, 0x11, 0xeb, 0x6c, 0x4e, 0x0a, 0xe7, 0x95, 0x78, 0xec, 0x63, 0x53, 0xa2, 0x0b, 0xf7, 0x83, 0xec, 0xb4, 0xb6, 0xea, 0x97, 0xb8, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12338 = { .name = "ecdsa_secp256r1_sha256_12338", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12338_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12338_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12338_sig, .siglen = 64, .result = -1, .comment = "Modified r or s, e.g. by adding or subtracting the order of the group, tcId is 8 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12339 for ECDSA, tcId is 9 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12339_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12339_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12339_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12339 = { .name = "ecdsa_secp256r1_sha256_12339", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12339_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12339_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12339_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 9 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12340 for ECDSA, tcId is 10 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12340_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12340_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12340_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12340 = { .name = "ecdsa_secp256r1_sha256_12340", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12340_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12340_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12340_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 10 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12341 for ECDSA, tcId is 11 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12341_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12341_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12341_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12341 = { .name = "ecdsa_secp256r1_sha256_12341", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12341_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12341_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12341_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 11 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12342 for ECDSA, tcId is 12 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12342_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12342_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12342_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12342 = { .name = "ecdsa_secp256r1_sha256_12342", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12342_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12342_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12342_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 12 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12343 for ECDSA, tcId is 13 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12343_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12343_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12343_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12343 = { .name = "ecdsa_secp256r1_sha256_12343", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12343_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12343_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12343_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 13 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12344 for ECDSA, tcId is 14 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12344_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12344_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12344_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12344 = { .name = "ecdsa_secp256r1_sha256_12344", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12344_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12344_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12344_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 14 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12345 for ECDSA, tcId is 15 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12345_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12345_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12345_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12345 = { .name = "ecdsa_secp256r1_sha256_12345", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12345_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12345_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12345_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 15 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12346 for ECDSA, tcId is 16 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12346_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12346_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12346_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12346 = { .name = "ecdsa_secp256r1_sha256_12346", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12346_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12346_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12346_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 16 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12347 for ECDSA, tcId is 17 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12347_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12347_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12347_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12347 = { .name = "ecdsa_secp256r1_sha256_12347", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12347_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12347_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12347_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 17 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12348 for ECDSA, tcId is 18 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12348_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12348_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12348_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12348 = { .name = "ecdsa_secp256r1_sha256_12348", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12348_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12348_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12348_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 18 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12349 for ECDSA, tcId is 19 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12349_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12349_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12349_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12349 = { .name = "ecdsa_secp256r1_sha256_12349", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12349_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12349_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12349_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 19 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12350 for ECDSA, tcId is 20 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12350_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12350_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12350_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12350 = { .name = "ecdsa_secp256r1_sha256_12350", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12350_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12350_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12350_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 20 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12351 for ECDSA, tcId is 21 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12351_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12351_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12351_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12351 = { .name = "ecdsa_secp256r1_sha256_12351", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12351_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12351_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12351_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 21 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12352 for ECDSA, tcId is 22 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12352_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12352_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12352_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12352 = { .name = "ecdsa_secp256r1_sha256_12352", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12352_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12352_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12352_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 22 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12353 for ECDSA, tcId is 23 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12353_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12353_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12353_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12353 = { .name = "ecdsa_secp256r1_sha256_12353", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12353_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12353_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12353_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 23 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12354 for ECDSA, tcId is 24 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12354_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12354_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12354_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12354 = { .name = "ecdsa_secp256r1_sha256_12354", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12354_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12354_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12354_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 24 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12355 for ECDSA, tcId is 25 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12355_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12355_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12355_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12355 = { .name = "ecdsa_secp256r1_sha256_12355", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12355_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12355_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12355_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 25 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12356 for ECDSA, tcId is 26 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12356_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12356_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12356_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12356 = { .name = "ecdsa_secp256r1_sha256_12356", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12356_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12356_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12356_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 26 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12357 for ECDSA, tcId is 27 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12357_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12357_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12357_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12357 = { .name = "ecdsa_secp256r1_sha256_12357", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12357_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12357_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12357_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 27 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12358 for ECDSA, tcId is 28 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12358_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12358_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12358_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12358 = { .name = "ecdsa_secp256r1_sha256_12358", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12358_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12358_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12358_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 28 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12359 for ECDSA, tcId is 29 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12359_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12359_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12359_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12359 = { .name = "ecdsa_secp256r1_sha256_12359", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12359_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12359_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12359_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 29 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12360 for ECDSA, tcId is 30 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12360_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12360_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12360_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12360 = { .name = "ecdsa_secp256r1_sha256_12360", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12360_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12360_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12360_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 30 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12361 for ECDSA, tcId is 31 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12361_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12361_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12361_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12361 = { .name = "ecdsa_secp256r1_sha256_12361", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12361_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12361_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12361_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 31 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12362 for ECDSA, tcId is 32 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12362_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12362_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12362_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12362 = { .name = "ecdsa_secp256r1_sha256_12362", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12362_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12362_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12362_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 32 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12363 for ECDSA, tcId is 33 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12363_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12363_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12363_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12363 = { .name = "ecdsa_secp256r1_sha256_12363", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12363_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12363_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12363_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 33 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12364 for ECDSA, tcId is 34 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12364_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12364_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12364_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12364 = { .name = "ecdsa_secp256r1_sha256_12364", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12364_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12364_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12364_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 34 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12365 for ECDSA, tcId is 35 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12365_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12365_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12365_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12365 = { .name = "ecdsa_secp256r1_sha256_12365", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12365_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12365_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12365_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 35 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12366 for ECDSA, tcId is 36 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12366_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12366_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12366_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12366 = { .name = "ecdsa_secp256r1_sha256_12366", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12366_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12366_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12366_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 36 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12367 for ECDSA, tcId is 37 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12367_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12367_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12367_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12367 = { .name = "ecdsa_secp256r1_sha256_12367", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12367_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12367_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12367_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 37 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12368 for ECDSA, tcId is 38 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12368_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12368_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12368_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12368 = { .name = "ecdsa_secp256r1_sha256_12368", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12368_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12368_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12368_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 38 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12369 for ECDSA, tcId is 39 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12369_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12369_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12369_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12369 = { .name = "ecdsa_secp256r1_sha256_12369", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12369_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12369_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12369_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 39 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12370 for ECDSA, tcId is 40 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12370_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12370_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12370_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12370 = { .name = "ecdsa_secp256r1_sha256_12370", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12370_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12370_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12370_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 40 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12371 for ECDSA, tcId is 41 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12371_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12371_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12371_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12371 = { .name = "ecdsa_secp256r1_sha256_12371", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12371_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12371_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12371_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 41 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12372 for ECDSA, tcId is 42 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12372_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12372_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12372_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12372 = { .name = "ecdsa_secp256r1_sha256_12372", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12372_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12372_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12372_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 42 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12373 for ECDSA, tcId is 43 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12373_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12373_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12373_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12373 = { .name = "ecdsa_secp256r1_sha256_12373", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12373_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12373_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12373_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 43 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12374 for ECDSA, tcId is 44 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12374_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12374_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12374_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12374 = { .name = "ecdsa_secp256r1_sha256_12374", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12374_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12374_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12374_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 44 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12375 for ECDSA, tcId is 45 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12375_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12375_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12375_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12375 = { .name = "ecdsa_secp256r1_sha256_12375", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12375_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12375_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12375_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 45 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12376 for ECDSA, tcId is 46 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12376_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12376_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12376_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12376 = { .name = "ecdsa_secp256r1_sha256_12376", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12376_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12376_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12376_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 46 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12377 for ECDSA, tcId is 47 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12377_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12377_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12377_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12377 = { .name = "ecdsa_secp256r1_sha256_12377", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12377_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12377_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12377_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 47 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12378 for ECDSA, tcId is 48 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12378_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12378_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12378_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12378 = { .name = "ecdsa_secp256r1_sha256_12378", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12378_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12378_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12378_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 48 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12379 for ECDSA, tcId is 49 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12379_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12379_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12379_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12379 = { .name = "ecdsa_secp256r1_sha256_12379", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12379_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12379_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12379_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 49 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12380 for ECDSA, tcId is 50 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12380_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12380_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12380_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12380 = { .name = "ecdsa_secp256r1_sha256_12380", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12380_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12380_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12380_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 50 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12381 for ECDSA, tcId is 51 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12381_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12381_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12381_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12381 = { .name = "ecdsa_secp256r1_sha256_12381", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12381_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12381_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12381_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 51 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12382 for ECDSA, tcId is 52 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12382_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12382_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12382_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12382 = { .name = "ecdsa_secp256r1_sha256_12382", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12382_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12382_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12382_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 52 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12383 for ECDSA, tcId is 53 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12383_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12383_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12383_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12383 = { .name = "ecdsa_secp256r1_sha256_12383", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12383_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12383_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12383_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 53 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12384 for ECDSA, tcId is 54 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12384_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12384_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12384_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12384 = { .name = "ecdsa_secp256r1_sha256_12384", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12384_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12384_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12384_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 54 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12385 for ECDSA, tcId is 55 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12385_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12385_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12385_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12385 = { .name = "ecdsa_secp256r1_sha256_12385", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12385_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12385_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12385_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 55 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12386 for ECDSA, tcId is 56 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12386_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12386_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12386_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12386 = { .name = "ecdsa_secp256r1_sha256_12386", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12386_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12386_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12386_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 56 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12387 for ECDSA, tcId is 57 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12387_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12387_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12387_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12387 = { .name = "ecdsa_secp256r1_sha256_12387", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12387_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12387_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12387_sig, .siglen = 64, .result = -1, .comment = "Signature with special case values for r and s, tcId is 57 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12388 for ECDSA, tcId is 58 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12388_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12388_msg[] = { 0x36, 0x39, 0x38, 0x31, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_12388_sig[] = { 0x64, 0xa1, 0xaa, 0xb5, 0x00, 0x0d, 0x0e, 0x80, 0x4f, 0x3e, 0x2f, 0xc0, 0x2b, 0xde, 0xe9, 0xbe, 0x8f, 0xf3, 0x12, 0x33, 0x4e, 0x2b, 0xa1, 0x6d, 0x11, 0x54, 0x7c, 0x97, 0x71, 0x1c, 0x89, 0x8e, 0x6a, 0xf0, 0x15, 0x97, 0x1c, 0xc3, 0x0b, 0xe6, 0xd1, 0xa2, 0x06, 0xd4, 0xe0, 0x13, 0xe0, 0x99, 0x77, 0x72, 0xa2, 0xf9, 0x1d, 0x73, 0x28, 0x6f, 0xfd, 0x68, 0x3b, 0x9b, 0xb2, 0xcf, 0x4f, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12388 = { .name = "ecdsa_secp256r1_sha256_12388", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12388_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12388_msg, .msglen = 5, .sig = ecdsa_secp256r1_sha256_12388_sig, .siglen = 64, .result = 1, .comment = "Edge case for Shamir multiplication, tcId is 58 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12389 for ECDSA, tcId is 59 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12389_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12389_msg[] = { 0x34, 0x32, 0x36, 0x34, 0x37, 0x39, 0x37, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12389_sig[] = { 0x16, 0xae, 0xa9, 0x64, 0xa2, 0xf6, 0x50, 0x6d, 0x6f, 0x78, 0xc8, 0x1c, 0x91, 0xfc, 0x7e, 0x8b, 0xde, 0xd7, 0xd3, 0x97, 0x73, 0x84, 0x48, 0xde, 0x1e, 0x19, 0xa0, 0xec, 0x58, 0x0b, 0xf2, 0x66, 0x25, 0x2c, 0xd7, 0x62, 0x13, 0x0c, 0x66, 0x67, 0xcf, 0xe8, 0xb7, 0xbc, 0x47, 0xd2, 0x7d, 0x78, 0x39, 0x1e, 0x8e, 0x80, 0xc5, 0x78, 0xd1, 0xcd, 0x38, 0xc3, 0xff, 0x03, 0x3b, 0xe9, 0x28, 0xe9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12389 = { .name = "ecdsa_secp256r1_sha256_12389", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12389_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12389_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12389_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 59 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12390 for ECDSA, tcId is 60 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12390_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12390_msg[] = { 0x37, 0x31, 0x33, 0x38, 0x36, 0x38, 0x34, 0x38, 0x39, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_12390_sig[] = { 0x9c, 0xc9, 0x8b, 0xe2, 0x34, 0x7d, 0x46, 0x9b, 0xf4, 0x76, 0xdf, 0xc2, 0x6b, 0x9b, 0x73, 0x3d, 0xf2, 0xd2, 0x6d, 0x6e, 0xf5, 0x24, 0xaf, 0x91, 0x7c, 0x66, 0x5b, 0xac, 0xcb, 0x23, 0xc8, 0x82, 0x09, 0x34, 0x96, 0x45, 0x9e, 0xff, 0xe2, 0xd8, 0xd7, 0x07, 0x27, 0xb8, 0x24, 0x62, 0xf6, 0x1d, 0x0e, 0xc1, 0xb7, 0x84, 0x79, 0x29, 0xd1, 0x0e, 0xa6, 0x31, 0xda, 0xcb, 0x16, 0xb5, 0x6c, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12390 = { .name = "ecdsa_secp256r1_sha256_12390", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12390_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12390_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12390_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 60 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12391 for ECDSA, tcId is 61 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12391_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12391_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x33, 0x33, 0x31, 0x36, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12391_sig[] = { 0x73, 0xb3, 0xc9, 0x0e, 0xcd, 0x39, 0x00, 0x28, 0x05, 0x81, 0x64, 0x52, 0x4d, 0xde, 0x89, 0x27, 0x03, 0xdc, 0xe3, 0xde, 0xa0, 0xd5, 0x3f, 0xa8, 0x09, 0x39, 0x99, 0xf0, 0x7a, 0xb8, 0xaa, 0x43, 0x2f, 0x67, 0xb0, 0xb8, 0xe2, 0x06, 0x36, 0x69, 0x5b, 0xb7, 0xd8, 0xbf, 0x0a, 0x65, 0x1c, 0x80, 0x2e, 0xd2, 0x5a, 0x39, 0x53, 0x87, 0xb5, 0xf4, 0x18, 0x8c, 0x0c, 0x40, 0x75, 0xc8, 0x86, 0x34, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12391 = { .name = "ecdsa_secp256r1_sha256_12391", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12391_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12391_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12391_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 61 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12392 for ECDSA, tcId is 62 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12392_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12392_msg[] = { 0x33, 0x39, 0x34, 0x39, 0x34, 0x30, 0x31, 0x32, 0x31, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_12392_sig[] = { 0xbf, 0xab, 0x30, 0x98, 0x25, 0x28, 0x47, 0xb3, 0x28, 0xfa, 0xdf, 0x2f, 0x89, 0xb9, 0x5c, 0x85, 0x1a, 0x7f, 0x0e, 0xb3, 0x90, 0x76, 0x33, 0x78, 0xf3, 0x7e, 0x90, 0x11, 0x9d, 0x5b, 0xa3, 0xdd, 0xbd, 0xd6, 0x4e, 0x23, 0x4e, 0x83, 0x2b, 0x10, 0x67, 0xc2, 0xd0, 0x58, 0xcc, 0xb4, 0x4d, 0x97, 0x81, 0x95, 0xcc, 0xeb, 0xb6, 0x5c, 0x2a, 0xaf, 0x1e, 0x2d, 0xa9, 0xb8, 0xb4, 0x98, 0x7e, 0x3b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12392 = { .name = "ecdsa_secp256r1_sha256_12392", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12392_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12392_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12392_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 62 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12393 for ECDSA, tcId is 63 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12393_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12393_msg[] = { 0x31, 0x33, 0x34, 0x34, 0x32, 0x39, 0x33, 0x30, 0x37, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_12393_sig[] = { 0x20, 0x4a, 0x97, 0x84, 0x07, 0x4b, 0x24, 0x6d, 0x8b, 0xf8, 0xbf, 0x04, 0xa4, 0xce, 0xb1, 0xc1, 0xf1, 0xc9, 0xaa, 0xab, 0x16, 0x8b, 0x15, 0x96, 0xd1, 0x70, 0x93, 0xc5, 0xcd, 0x21, 0xd2, 0xcd, 0x51, 0xcc, 0xe4, 0x16, 0x70, 0x63, 0x67, 0x83, 0xdc, 0x06, 0xa7, 0x59, 0xc8, 0x84, 0x78, 0x68, 0xa4, 0x06, 0xc2, 0x50, 0x6f, 0xe1, 0x79, 0x75, 0x58, 0x2f, 0xe6, 0x48, 0xd1, 0xd8, 0x8b, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12393 = { .name = "ecdsa_secp256r1_sha256_12393", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12393_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12393_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12393_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 63 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12394 for ECDSA, tcId is 64 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12394_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12394_msg[] = { 0x33, 0x37, 0x30, 0x36, 0x32, 0x31, 0x31, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12394_sig[] = { 0xed, 0x66, 0xdc, 0x34, 0xf5, 0x51, 0xac, 0x82, 0xf6, 0x3d, 0x4a, 0xa4, 0xf8, 0x1f, 0xe2, 0xcb, 0x00, 0x31, 0xa9, 0x1d, 0x13, 0x14, 0xf8, 0x35, 0x02, 0x7b, 0xca, 0x0f, 0x1c, 0xee, 0xaa, 0x03, 0x99, 0xca, 0x12, 0x3a, 0xa0, 0x9b, 0x13, 0xcd, 0x19, 0x4a, 0x42, 0x2e, 0x18, 0xd5, 0xfd, 0xa1, 0x67, 0x62, 0x3c, 0x3f, 0x6e, 0x5d, 0x4d, 0x6a, 0xbb, 0x89, 0x53, 0xd6, 0x7c, 0x0c, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12394 = { .name = "ecdsa_secp256r1_sha256_12394", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12394_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12394_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12394_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 64 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12395 for ECDSA, tcId is 65 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12395_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12395_msg[] = { 0x33, 0x34, 0x33, 0x36, 0x38, 0x38, 0x37, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12395_sig[] = { 0x06, 0x0b, 0x70, 0x0b, 0xef, 0x66, 0x5c, 0x68, 0x89, 0x9d, 0x44, 0xf2, 0x35, 0x6a, 0x57, 0x8d, 0x12, 0x6b, 0x06, 0x20, 0x23, 0xcc, 0xc3, 0xc0, 0x56, 0xbf, 0x0f, 0x60, 0xa2, 0x37, 0x01, 0x2b, 0x8d, 0x18, 0x6c, 0x02, 0x78, 0x32, 0x96, 0x5f, 0x4f, 0xcc, 0x78, 0xa3, 0x36, 0x6c, 0xa9, 0x5d, 0xed, 0xbb, 0x41, 0x0c, 0xbe, 0xf3, 0xf2, 0x6d, 0x6b, 0xe5, 0xd5, 0x81, 0xc1, 0x1d, 0x36, 0x10, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12395 = { .name = "ecdsa_secp256r1_sha256_12395", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12395_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12395_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12395_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 65 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12396 for ECDSA, tcId is 66 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12396_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12396_msg[] = { 0x31, 0x33, 0x35, 0x31, 0x35, 0x33, 0x30, 0x33, 0x37, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12396_sig[] = { 0x9f, 0x6a, 0xdf, 0xe8, 0xd5, 0xeb, 0x5b, 0x2c, 0x24, 0xd7, 0xaa, 0x79, 0x34, 0xb6, 0xcf, 0x29, 0xc9, 0x3e, 0xa7, 0x6c, 0xd3, 0x13, 0xc9, 0x13, 0x2b, 0xb0, 0xc8, 0xe3, 0x8c, 0x96, 0x83, 0x1d, 0xb2, 0x6a, 0x9c, 0x9e, 0x40, 0xe5, 0x5e, 0xe0, 0x89, 0x0c, 0x94, 0x4c, 0xf2, 0x71, 0x75, 0x6c, 0x90, 0x6a, 0x33, 0xe6, 0x6b, 0x5b, 0xd1, 0x5e, 0x05, 0x15, 0x93, 0x88, 0x3b, 0x5e, 0x99, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12396 = { .name = "ecdsa_secp256r1_sha256_12396", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12396_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12396_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12396_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 66 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12397 for ECDSA, tcId is 67 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12397_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12397_msg[] = { 0x36, 0x35, 0x35, 0x33, 0x32, 0x30, 0x33, 0x31, 0x32, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12397_sig[] = { 0xa1, 0xaf, 0x03, 0xca, 0x91, 0x67, 0x7b, 0x67, 0x3a, 0xd2, 0xf3, 0x36, 0x15, 0xe5, 0x61, 0x74, 0xa1, 0xab, 0xf6, 0xda, 0x16, 0x8c, 0xeb, 0xfa, 0x88, 0x68, 0xf4, 0xba, 0x27, 0x3f, 0x16, 0xb7, 0x20, 0xaa, 0x73, 0xff, 0xe4, 0x8a, 0xfa, 0x64, 0x35, 0xcd, 0x25, 0x8b, 0x17, 0x3d, 0x0c, 0x23, 0x77, 0xd6, 0x90, 0x22, 0xe7, 0xd0, 0x98, 0xd7, 0x5c, 0xaf, 0x24, 0xc8, 0xc5, 0xe0, 0x6b, 0x1c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12397 = { .name = "ecdsa_secp256r1_sha256_12397", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12397_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12397_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12397_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 67 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12398 for ECDSA, tcId is 68 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12398_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12398_msg[] = { 0x31, 0x35, 0x36, 0x34, 0x33, 0x34, 0x36, 0x36, 0x30, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_12398_sig[] = { 0xfd, 0xc7, 0x06, 0x02, 0x76, 0x6f, 0x8e, 0xed, 0x11, 0xa6, 0xc9, 0x9a, 0x71, 0xc9, 0x73, 0xd5, 0x65, 0x93, 0x55, 0x50, 0x7b, 0x84, 0x3d, 0xa6, 0xe3, 0x27, 0xa2, 0x8c, 0x11, 0x89, 0x3d, 0xb9, 0x3d, 0xf5, 0x34, 0x96, 0x88, 0xa0, 0x85, 0xb1, 0x37, 0xb1, 0xea, 0xcf, 0x45, 0x6a, 0x9e, 0x9e, 0x0f, 0x6d, 0x15, 0xec, 0x00, 0x78, 0xca, 0x60, 0xa7, 0xf8, 0x3f, 0x2b, 0x10, 0xd2, 0x13, 0x50, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12398 = { .name = "ecdsa_secp256r1_sha256_12398", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12398_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12398_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12398_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 68 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12399 for ECDSA, tcId is 69 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12399_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12399_msg[] = { 0x34, 0x34, 0x32, 0x39, 0x35, 0x33, 0x39, 0x31, 0x31, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_12399_sig[] = { 0xb5, 0x16, 0xa3, 0x14, 0xf2, 0xfc, 0xe5, 0x30, 0xd6, 0x53, 0x7f, 0x6a, 0x6c, 0x49, 0x96, 0x6c, 0x23, 0x45, 0x6f, 0x63, 0xc6, 0x43, 0xcf, 0x8e, 0x0d, 0xc7, 0x38, 0xf7, 0xb8, 0x76, 0xe6, 0x75, 0xd3, 0x9f, 0xfd, 0x03, 0x3c, 0x92, 0xb6, 0xd7, 0x17, 0xdd, 0x53, 0x6f, 0xbc, 0x5e, 0xfd, 0xf1, 0x96, 0x7c, 0x4b, 0xd8, 0x09, 0x54, 0x47, 0x9b, 0xa6, 0x6b, 0x01, 0x20, 0xcd, 0x16, 0xff, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12399 = { .name = "ecdsa_secp256r1_sha256_12399", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12399_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12399_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12399_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 69 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12400 for ECDSA, tcId is 70 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12400_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12400_msg[] = { 0x31, 0x30, 0x39, 0x35, 0x33, 0x32, 0x36, 0x31, 0x33, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_12400_sig[] = { 0x3b, 0x2c, 0xbf, 0x04, 0x6e, 0xac, 0x45, 0x84, 0x2e, 0xcb, 0x79, 0x84, 0xd4, 0x75, 0x83, 0x15, 0x82, 0x71, 0x7b, 0xeb, 0xb6, 0x49, 0x2f, 0xd0, 0xa4, 0x85, 0xc1, 0x01, 0xe2, 0x9f, 0xf0, 0xa8, 0x4c, 0x9b, 0x7b, 0x47, 0xa9, 0x8b, 0x0f, 0x82, 0xde, 0x51, 0x2b, 0xc9, 0x31, 0x3a, 0xaf, 0x51, 0x70, 0x10, 0x99, 0xca, 0xc5, 0xf7, 0x6e, 0x68, 0xc8, 0x59, 0x5f, 0xc1, 0xc1, 0xd9, 0x92, 0x58, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12400 = { .name = "ecdsa_secp256r1_sha256_12400", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12400_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12400_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12400_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 70 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12401 for ECDSA, tcId is 71 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12401_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12401_msg[] = { 0x35, 0x39, 0x38, 0x37, 0x33, 0x35, 0x30, 0x30, 0x34, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_12401_sig[] = { 0x30, 0xc8, 0x7d, 0x35, 0xe6, 0x36, 0xf5, 0x40, 0x84, 0x1f, 0x14, 0xaf, 0x54, 0xe2, 0xf9, 0xed, 0xd7, 0x9d, 0x03, 0x12, 0xcf, 0xa1, 0xab, 0x65, 0x6c, 0x3f, 0xb1, 0x5b, 0xfd, 0xe4, 0x8d, 0xcf, 0x47, 0xc1, 0x5a, 0x5a, 0x82, 0xd2, 0x4b, 0x75, 0xc8, 0x5a, 0x69, 0x2b, 0xd6, 0xec, 0xaf, 0xeb, 0x71, 0x40, 0x9e, 0xde, 0x23, 0xef, 0xd0, 0x8e, 0x0d, 0xb9, 0xab, 0xf6, 0x34, 0x06, 0x77, 0xed, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12401 = { .name = "ecdsa_secp256r1_sha256_12401", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12401_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12401_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12401_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 71 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12402 for ECDSA, tcId is 72 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12402_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12402_msg[] = { 0x33, 0x34, 0x36, 0x33, 0x30, 0x30, 0x36, 0x38, 0x37, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12402_sig[] = { 0x38, 0x68, 0x6f, 0xf0, 0xfd, 0xa2, 0xce, 0xf6, 0xbc, 0x43, 0xb5, 0x8c, 0xfe, 0x66, 0x47, 0xb9, 0xe2, 0xe8, 0x17, 0x6d, 0x16, 0x8d, 0xec, 0x3c, 0x68, 0xff, 0x26, 0x21, 0x13, 0x76, 0x0f, 0x52, 0x06, 0x7e, 0xc3, 0xb6, 0x51, 0xf4, 0x22, 0x66, 0x96, 0x01, 0x66, 0x21, 0x67, 0xfa, 0x87, 0x17, 0xe9, 0x76, 0xe2, 0xdb, 0x5e, 0x6a, 0x4c, 0xf7, 0xc2, 0xdd, 0xab, 0xb3, 0xfd, 0xe9, 0xd6, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12402 = { .name = "ecdsa_secp256r1_sha256_12402", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12402_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12402_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12402_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 72 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12403 for ECDSA, tcId is 73 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12403_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12403_msg[] = { 0x39, 0x38, 0x31, 0x37, 0x33, 0x32, 0x30, 0x32, 0x38, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_12403_sig[] = { 0x44, 0xa3, 0xe2, 0x3b, 0xf3, 0x14, 0xf2, 0xb3, 0x44, 0xfc, 0x25, 0xc7, 0xf2, 0xde, 0x8b, 0x6a, 0xf3, 0xe1, 0x7d, 0x27, 0xf5, 0xee, 0x84, 0x4b, 0x22, 0x59, 0x85, 0xab, 0x6e, 0x27, 0x75, 0xcf, 0x2d, 0x48, 0xe2, 0x23, 0x20, 0x5e, 0x98, 0x04, 0x1d, 0xdc, 0x87, 0xbe, 0x53, 0x2a, 0xbe, 0xd5, 0x84, 0xf0, 0x41, 0x1f, 0x57, 0x29, 0x50, 0x04, 0x93, 0xc9, 0xcc, 0x3f, 0x4d, 0xd1, 0x5e, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12403 = { .name = "ecdsa_secp256r1_sha256_12403", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12403_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12403_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12403_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 73 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12404 for ECDSA, tcId is 74 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12404_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12404_msg[] = { 0x33, 0x32, 0x32, 0x32, 0x30, 0x34, 0x31, 0x30, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12404_sig[] = { 0x2d, 0xed, 0x5b, 0x7e, 0xc8, 0xe9, 0x0e, 0x7b, 0xf1, 0x1f, 0x96, 0x7a, 0x3d, 0x95, 0x11, 0x0c, 0x41, 0xb9, 0x9d, 0xb3, 0xb5, 0xaa, 0x8d, 0x33, 0x0e, 0xb9, 0xd6, 0x38, 0x78, 0x16, 0x88, 0xe9, 0x7d, 0x57, 0x92, 0xc5, 0x36, 0x28, 0x15, 0x5e, 0x1b, 0xfc, 0x46, 0xfb, 0x1a, 0x67, 0xe3, 0x08, 0x8d, 0xe0, 0x49, 0xc3, 0x28, 0xae, 0x1f, 0x44, 0xec, 0x69, 0x23, 0x8a, 0x00, 0x98, 0x08, 0xf9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12404 = { .name = "ecdsa_secp256r1_sha256_12404", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12404_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12404_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12404_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 74 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12405 for ECDSA, tcId is 75 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12405_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12405_msg[] = { 0x36, 0x36, 0x36, 0x36, 0x33, 0x30, 0x37, 0x31, 0x30, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12405_sig[] = { 0xbd, 0xae, 0x7b, 0xcb, 0x58, 0x0b, 0xf3, 0x35, 0xef, 0xd3, 0xbc, 0x3d, 0x31, 0x87, 0x0f, 0x92, 0x3e, 0xac, 0xca, 0xfc, 0xd4, 0x0e, 0xc2, 0xf6, 0x05, 0x97, 0x6f, 0x15, 0x13, 0x7d, 0x8b, 0x8f, 0xf6, 0xdf, 0xa1, 0x2f, 0x19, 0xe5, 0x25, 0x27, 0x0b, 0x01, 0x06, 0xee, 0xcf, 0xe2, 0x57, 0x49, 0x9f, 0x37, 0x3a, 0x4f, 0xb3, 0x18, 0x99, 0x4f, 0x24, 0x83, 0x81, 0x22, 0xce, 0x7e, 0xc3, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12405 = { .name = "ecdsa_secp256r1_sha256_12405", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12405_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12405_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12405_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 75 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12406 for ECDSA, tcId is 76 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12406_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12406_msg[] = { 0x31, 0x30, 0x33, 0x35, 0x39, 0x35, 0x31, 0x38, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12406_sig[] = { 0x50, 0xf9, 0xc4, 0xf0, 0xcd, 0x69, 0x40, 0xe1, 0x62, 0x72, 0x09, 0x57, 0xff, 0xff, 0x51, 0x37, 0x99, 0x20, 0x9b, 0x78, 0x59, 0x69, 0x56, 0xd2, 0x1e, 0xce, 0x25, 0x1c, 0x24, 0x01, 0xf1, 0xc6, 0xd7, 0x03, 0x3a, 0x0a, 0x78, 0x7d, 0x33, 0x8e, 0x88, 0x9d, 0xef, 0xaa, 0xab, 0xb1, 0x06, 0xb9, 0x5a, 0x43, 0x55, 0xe4, 0x11, 0xa5, 0x9c, 0x32, 0xaa, 0x51, 0x67, 0xdf, 0xab, 0x24, 0x47, 0x26, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12406 = { .name = "ecdsa_secp256r1_sha256_12406", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12406_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12406_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12406_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 76 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12407 for ECDSA, tcId is 77 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12407_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12407_msg[] = { 0x31, 0x38, 0x34, 0x36, 0x35, 0x39, 0x37, 0x31, 0x39, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_12407_sig[] = { 0xf6, 0x12, 0x82, 0x06, 0x87, 0x60, 0x4f, 0xa0, 0x19, 0x06, 0x06, 0x6a, 0x37, 0x8d, 0x67, 0x54, 0x09, 0x82, 0xe2, 0x95, 0x75, 0xd0, 0x19, 0xaa, 0xbe, 0x90, 0x92, 0x4e, 0xad, 0x5c, 0x86, 0x0d, 0x3f, 0x93, 0x67, 0x70, 0x2d, 0xd7, 0xdd, 0x4f, 0x75, 0xea, 0x98, 0xaf, 0xd2, 0x0e, 0x32, 0x8a, 0x1a, 0x99, 0xf4, 0x85, 0x7b, 0x31, 0x65, 0x25, 0x32, 0x82, 0x30, 0xce, 0x29, 0x4b, 0x0f, 0xef, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12407 = { .name = "ecdsa_secp256r1_sha256_12407", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12407_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12407_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12407_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 77 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12408 for ECDSA, tcId is 78 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12408_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12408_msg[] = { 0x33, 0x31, 0x33, 0x36, 0x30, 0x34, 0x36, 0x31, 0x38, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_12408_sig[] = { 0x95, 0x05, 0xe4, 0x07, 0x65, 0x7d, 0x6e, 0x8b, 0xc9, 0x3d, 0xb5, 0xda, 0x7a, 0xa6, 0xf5, 0x08, 0x1f, 0x61, 0x98, 0x0c, 0x19, 0x49, 0xf5, 0x6b, 0x0f, 0x2f, 0x50, 0x7d, 0xa5, 0x78, 0x2a, 0x7a, 0xc6, 0x0d, 0x31, 0x90, 0x4e, 0x36, 0x69, 0x73, 0x8f, 0xfb, 0xec, 0xca, 0xb6, 0xc3, 0x65, 0x6c, 0x08, 0xe0, 0xed, 0x5c, 0xb9, 0x2b, 0x3c, 0xfa, 0x5e, 0x7f, 0x71, 0x78, 0x4f, 0x9c, 0x50, 0x21, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12408 = { .name = "ecdsa_secp256r1_sha256_12408", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12408_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12408_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12408_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 78 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12409 for ECDSA, tcId is 79 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12409_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12409_msg[] = { 0x32, 0x36, 0x36, 0x33, 0x37, 0x38, 0x34, 0x32, 0x35, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12409_sig[] = { 0xbb, 0xd1, 0x6f, 0xbb, 0xb6, 0x56, 0xb6, 0xd0, 0xd8, 0x3e, 0x6a, 0x77, 0x87, 0xcd, 0x69, 0x1b, 0x08, 0x73, 0x5a, 0xed, 0x37, 0x17, 0x32, 0x72, 0x3e, 0x1c, 0x68, 0xa4, 0x04, 0x04, 0x51, 0x7d, 0x9d, 0x8e, 0x35, 0xdb, 0xa9, 0x60, 0x28, 0xb7, 0x78, 0x7d, 0x91, 0x31, 0x5b, 0xe6, 0x75, 0x87, 0x7d, 0x2d, 0x09, 0x7b, 0xe5, 0xe8, 0xee, 0x34, 0x56, 0x0e, 0x3e, 0x7f, 0xd2, 0x5c, 0x0f, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12409 = { .name = "ecdsa_secp256r1_sha256_12409", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12409_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12409_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12409_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 79 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12410 for ECDSA, tcId is 80 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12410_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12410_msg[] = { 0x31, 0x36, 0x35, 0x32, 0x31, 0x30, 0x30, 0x35, 0x32, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12410_sig[] = { 0x2e, 0xc9, 0x76, 0x01, 0x22, 0xdb, 0x98, 0xfd, 0x06, 0xea, 0x76, 0x84, 0x8d, 0x35, 0xa6, 0xda, 0x44, 0x2d, 0x2c, 0xee, 0xf7, 0x55, 0x9a, 0x30, 0xcf, 0x57, 0xc6, 0x1e, 0x92, 0xdf, 0x32, 0x7e, 0x7a, 0xb2, 0x71, 0xda, 0x90, 0x85, 0x94, 0x79, 0x70, 0x1f, 0xcc, 0xf8, 0x6e, 0x46, 0x2e, 0xe3, 0x39, 0x3f, 0xb6, 0x81, 0x4c, 0x27, 0xb7, 0x60, 0xc4, 0x96, 0x36, 0x25, 0xc0, 0xa1, 0x98, 0x78, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12410 = { .name = "ecdsa_secp256r1_sha256_12410", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12410_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12410_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12410_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 80 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12411 for ECDSA, tcId is 81 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12411_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12411_msg[] = { 0x35, 0x37, 0x34, 0x38, 0x30, 0x38, 0x31, 0x36, 0x39, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12411_sig[] = { 0x54, 0xe7, 0x6b, 0x76, 0x83, 0xb6, 0x65, 0x0b, 0xaa, 0x6a, 0x7f, 0xc4, 0x9b, 0x1c, 0x51, 0xee, 0xd9, 0xba, 0x9d, 0xd4, 0x63, 0x22, 0x1f, 0x7a, 0x4f, 0x10, 0x05, 0xa8, 0x9f, 0xe0, 0x0c, 0x59, 0x2e, 0xa0, 0x76, 0x88, 0x6c, 0x77, 0x3e, 0xb9, 0x37, 0xec, 0x1c, 0xc8, 0x37, 0x4b, 0x79, 0x15, 0xcf, 0xd1, 0x1b, 0x1c, 0x1a, 0xe1, 0x16, 0x61, 0x52, 0xf2, 0xf7, 0x80, 0x6a, 0x31, 0xc8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12411 = { .name = "ecdsa_secp256r1_sha256_12411", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12411_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12411_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12411_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 81 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12412 for ECDSA, tcId is 82 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12412_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12412_msg[] = { 0x36, 0x33, 0x34, 0x33, 0x39, 0x31, 0x33, 0x34, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12412_sig[] = { 0x52, 0x91, 0xde, 0xaf, 0x24, 0x65, 0x9f, 0xfb, 0xbc, 0xe6, 0xe3, 0xc2, 0x6f, 0x60, 0x21, 0x09, 0x7a, 0x74, 0xab, 0xdb, 0xb6, 0x9b, 0xe4, 0xfb, 0x10, 0x41, 0x9c, 0x0c, 0x49, 0x6c, 0x94, 0x66, 0x65, 0xd6, 0xfc, 0xf3, 0x36, 0xd2, 0x7c, 0xc7, 0xcd, 0xb9, 0x82, 0xbb, 0x4e, 0x4e, 0xce, 0xf5, 0x82, 0x7f, 0x84, 0x74, 0x2f, 0x29, 0xf1, 0x0a, 0xbf, 0x83, 0x46, 0x92, 0x70, 0xa0, 0x3d, 0xc3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12412 = { .name = "ecdsa_secp256r1_sha256_12412", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12412_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12412_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12412_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 82 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12413 for ECDSA, tcId is 83 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12413_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12413_msg[] = { 0x31, 0x35, 0x34, 0x31, 0x31, 0x30, 0x33, 0x35, 0x39, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12413_sig[] = { 0x20, 0x7a, 0x32, 0x41, 0x81, 0x2d, 0x75, 0xd9, 0x47, 0x41, 0x9d, 0xc5, 0x8e, 0xfb, 0x05, 0xe8, 0x00, 0x3b, 0x33, 0xfc, 0x17, 0xeb, 0x50, 0xf9, 0xd1, 0x51, 0x66, 0xa8, 0x84, 0x79, 0xf1, 0x07, 0xcd, 0xee, 0x74, 0x9f, 0x2e, 0x49, 0x2b, 0x21, 0x3c, 0xe8, 0x0b, 0x32, 0xd0, 0x57, 0x4f, 0x62, 0xf1, 0xc5, 0xd7, 0x07, 0x93, 0xcf, 0x55, 0xe3, 0x82, 0xd5, 0xca, 0xad, 0xf7, 0x59, 0x27, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12413 = { .name = "ecdsa_secp256r1_sha256_12413", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12413_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12413_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12413_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 83 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12414 for ECDSA, tcId is 84 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12414_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12414_msg[] = { 0x31, 0x30, 0x34, 0x37, 0x38, 0x35, 0x38, 0x30, 0x31, 0x32, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12414_sig[] = { 0x65, 0x54, 0xe4, 0x9f, 0x82, 0xa8, 0x55, 0x20, 0x43, 0x28, 0xac, 0x94, 0x91, 0x3b, 0xf0, 0x1b, 0xbe, 0x84, 0x43, 0x7a, 0x35, 0x5a, 0x0a, 0x37, 0xc0, 0xde, 0xe3, 0xcf, 0x81, 0xaa, 0x77, 0x28, 0xae, 0xa0, 0x0d, 0xe2, 0x50, 0x7d, 0xda, 0xf5, 0xc9, 0x4e, 0x1e, 0x12, 0x69, 0x80, 0xd3, 0xdf, 0x16, 0x25, 0x0a, 0x2e, 0xae, 0xbc, 0x8b, 0xe4, 0x86, 0xef, 0xfe, 0x7f, 0x22, 0xb4, 0xf9, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12414 = { .name = "ecdsa_secp256r1_sha256_12414", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12414_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12414_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12414_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 84 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12415 for ECDSA, tcId is 85 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12415_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12415_msg[] = { 0x31, 0x30, 0x35, 0x33, 0x36, 0x32, 0x38, 0x35, 0x35, 0x36, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12415_sig[] = { 0xa5, 0x4c, 0x50, 0x62, 0x64, 0x83, 0x39, 0xd2, 0xbf, 0xf0, 0x6f, 0x71, 0xc8, 0x82, 0x16, 0xc2, 0x6c, 0x6e, 0x19, 0xb4, 0xd8, 0x0a, 0x8c, 0x60, 0x29, 0x90, 0xac, 0x82, 0x70, 0x7e, 0xfd, 0xfc, 0xe9, 0x9b, 0xbe, 0x7f, 0xcf, 0xaf, 0xae, 0x3e, 0x69, 0xfd, 0x01, 0x67, 0x77, 0x51, 0x7a, 0xa0, 0x10, 0x56, 0x31, 0x7f, 0x46, 0x7a, 0xd0, 0x9a, 0xff, 0x09, 0xbe, 0x73, 0xc9, 0x73, 0x1b, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12415 = { .name = "ecdsa_secp256r1_sha256_12415", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12415_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12415_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12415_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 85 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12416 for ECDSA, tcId is 86 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12416_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12416_msg[] = { 0x39, 0x35, 0x33, 0x39, 0x30, 0x34, 0x31, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_12416_sig[] = { 0x97, 0x5b, 0xd7, 0x15, 0x7a, 0x8d, 0x36, 0x3b, 0x30, 0x9f, 0x1f, 0x44, 0x40, 0x12, 0xb1, 0xa1, 0xd2, 0x30, 0x96, 0x59, 0x31, 0x33, 0xe7, 0x1b, 0x4c, 0xa8, 0xb0, 0x59, 0xcf, 0xf3, 0x7e, 0xaf, 0x7f, 0xaa, 0x7a, 0x28, 0xb1, 0xc8, 0x22, 0xba, 0xa2, 0x41, 0x79, 0x3f, 0x2a, 0xbc, 0x93, 0x0b, 0xd4, 0xc6, 0x98, 0x40, 0xfe, 0x09, 0x0f, 0x2a, 0xac, 0xc4, 0x67, 0x86, 0xbf, 0x91, 0x96, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12416 = { .name = "ecdsa_secp256r1_sha256_12416", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12416_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12416_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12416_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 86 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12417 for ECDSA, tcId is 87 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12417_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12417_msg[] = { 0x39, 0x37, 0x38, 0x38, 0x34, 0x38, 0x30, 0x33, 0x39, }; static const unsigned char ecdsa_secp256r1_sha256_12417_sig[] = { 0x56, 0x94, 0xa6, 0xf8, 0x4b, 0x8f, 0x87, 0x5c, 0x27, 0x6a, 0xfd, 0x2e, 0xbc, 0xfe, 0x4d, 0x61, 0xde, 0x9e, 0xc9, 0x03, 0x05, 0xaf, 0xb1, 0x35, 0x7b, 0x95, 0xb3, 0xe0, 0xda, 0x43, 0x88, 0x5e, 0x0d, 0xff, 0xad, 0x9f, 0xfd, 0x0b, 0x75, 0x7d, 0x80, 0x51, 0xde, 0xc0, 0x2e, 0xbd, 0xf7, 0x0d, 0x8e, 0xe2, 0xdc, 0x5c, 0x78, 0x70, 0xc0, 0x82, 0x3b, 0x6c, 0xcc, 0x7c, 0x67, 0x9c, 0xba, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12417 = { .name = "ecdsa_secp256r1_sha256_12417", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12417_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12417_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12417_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 87 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12418 for ECDSA, tcId is 88 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12418_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12418_msg[] = { 0x33, 0x36, 0x31, 0x30, 0x36, 0x37, 0x32, 0x34, 0x34, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12418_sig[] = { 0xa0, 0xc3, 0x0e, 0x80, 0x26, 0xfd, 0xb2, 0xb4, 0xb4, 0x96, 0x8a, 0x27, 0xd1, 0x6a, 0x6d, 0x08, 0xf7, 0x09, 0x8f, 0x1a, 0x98, 0xd2, 0x16, 0x20, 0xd7, 0x45, 0x4b, 0xa9, 0x79, 0x0f, 0x1b, 0xa6, 0x5e, 0x47, 0x04, 0x53, 0xa8, 0xa3, 0x99, 0xf1, 0x5b, 0xaf, 0x46, 0x3f, 0x9d, 0xec, 0xeb, 0x53, 0xac, 0xc5, 0xca, 0x64, 0x45, 0x91, 0x49, 0x68, 0x8b, 0xd2, 0x76, 0x0c, 0x65, 0x42, 0x43, 0x39, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12418 = { .name = "ecdsa_secp256r1_sha256_12418", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12418_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12418_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12418_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 88 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12419 for ECDSA, tcId is 89 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12419_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12419_msg[] = { 0x31, 0x30, 0x35, 0x34, 0x32, 0x34, 0x30, 0x37, 0x30, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_12419_sig[] = { 0x61, 0x4e, 0xa8, 0x4a, 0xcf, 0x73, 0x65, 0x27, 0xdd, 0x73, 0x60, 0x2c, 0xd4, 0xbb, 0x4e, 0xea, 0x1d, 0xfe, 0xbe, 0xbd, 0x5a, 0xd8, 0xac, 0xa5, 0x2a, 0xa0, 0x22, 0x8c, 0xf7, 0xb9, 0x9a, 0x88, 0x73, 0x7c, 0xc8, 0x5f, 0x5f, 0x2d, 0x2f, 0x60, 0xd1, 0xb8, 0x18, 0x3f, 0x3e, 0xd4, 0x90, 0xe4, 0xde, 0x14, 0x36, 0x8e, 0x96, 0xa9, 0x48, 0x2c, 0x2a, 0x4d, 0xd1, 0x93, 0x19, 0x5c, 0x90, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12419 = { .name = "ecdsa_secp256r1_sha256_12419", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12419_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12419_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12419_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 89 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12420 for ECDSA, tcId is 90 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12420_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12420_msg[] = { 0x35, 0x31, 0x37, 0x34, 0x34, 0x34, 0x38, 0x31, 0x39, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_12420_sig[] = { 0xbe, 0xad, 0x67, 0x34, 0xeb, 0xe4, 0x4b, 0x81, 0x0d, 0x3f, 0xb2, 0xea, 0x00, 0xb1, 0x73, 0x29, 0x45, 0x37, 0x73, 0x38, 0xfe, 0xbf, 0xd4, 0x39, 0xa8, 0xd7, 0x4d, 0xfb, 0xd0, 0xf9, 0x42, 0xfa, 0x6b, 0xb1, 0x8e, 0xae, 0x36, 0x61, 0x6a, 0x7d, 0x3c, 0xad, 0x35, 0x91, 0x9f, 0xd2, 0x1a, 0x8a, 0xf4, 0xbb, 0xe7, 0xa1, 0x0f, 0x73, 0xb3, 0xe0, 0x36, 0xa4, 0x6b, 0x10, 0x3e, 0xf5, 0x6e, 0x2a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12420 = { .name = "ecdsa_secp256r1_sha256_12420", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12420_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12420_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12420_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 90 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12421 for ECDSA, tcId is 91 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12421_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12421_msg[] = { 0x31, 0x39, 0x36, 0x37, 0x35, 0x36, 0x31, 0x32, 0x35, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_12421_sig[] = { 0x49, 0x96, 0x25, 0x47, 0x9e, 0x16, 0x1d, 0xac, 0xd4, 0xdb, 0x9d, 0x9c, 0xe6, 0x48, 0x54, 0xc9, 0x8d, 0x92, 0x2c, 0xbf, 0x21, 0x27, 0x03, 0xe9, 0x65, 0x4f, 0xae, 0x18, 0x2d, 0xf9, 0xba, 0xd2, 0x42, 0xc1, 0x77, 0xcf, 0x37, 0xb8, 0x19, 0x3a, 0x01, 0x31, 0x10, 0x8d, 0x97, 0x81, 0x9e, 0xdd, 0x94, 0x39, 0x93, 0x60, 0x28, 0x86, 0x4a, 0xc1, 0x95, 0xb6, 0x4f, 0xca, 0x76, 0xd9, 0xd6, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12421 = { .name = "ecdsa_secp256r1_sha256_12421", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12421_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12421_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12421_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 91 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12422 for ECDSA, tcId is 92 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12422_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12422_msg[] = { 0x33, 0x34, 0x34, 0x37, 0x32, 0x35, 0x33, 0x33, 0x34, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_12422_sig[] = { 0x08, 0xf1, 0x6b, 0x80, 0x93, 0xa8, 0xfb, 0x4d, 0x66, 0xa2, 0xc8, 0x06, 0x5b, 0x54, 0x1b, 0x3d, 0x31, 0xe3, 0xbf, 0xe6, 0x94, 0xf6, 0xb8, 0x9c, 0x50, 0xfb, 0x1a, 0xaa, 0x6f, 0xf6, 0xc9, 0xb2, 0x9d, 0x64, 0x55, 0xe2, 0xd5, 0xd1, 0x77, 0x97, 0x48, 0x57, 0x3b, 0x61, 0x1c, 0xb9, 0x5d, 0x4a, 0x21, 0xf9, 0x67, 0x41, 0x03, 0x99, 0xb3, 0x9b, 0x53, 0x5b, 0xa3, 0xe5, 0xaf, 0x81, 0xca, 0x2e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12422 = { .name = "ecdsa_secp256r1_sha256_12422", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12422_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12422_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12422_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 92 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12423 for ECDSA, tcId is 93 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12423_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12423_msg[] = { 0x33, 0x36, 0x38, 0x32, 0x36, 0x34, 0x33, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12423_sig[] = { 0xbe, 0x26, 0x23, 0x1b, 0x61, 0x91, 0x65, 0x8a, 0x19, 0xdd, 0x72, 0xdd, 0xb9, 0x9e, 0xd8, 0xf8, 0xc5, 0x79, 0xb6, 0x93, 0x8d, 0x19, 0xbc, 0xe8, 0xee, 0xd8, 0xdc, 0x2b, 0x33, 0x8c, 0xb5, 0xf8, 0xe1, 0xd9, 0xa3, 0x2e, 0xe5, 0x6c, 0xff, 0xed, 0x37, 0xf0, 0xf2, 0x2b, 0x2d, 0xcb, 0x57, 0xd5, 0xc9, 0x43, 0xc1, 0x4f, 0x79, 0x69, 0x4a, 0x03, 0xb9, 0xc5, 0xe9, 0x69, 0x52, 0x57, 0x5c, 0x89, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12423 = { .name = "ecdsa_secp256r1_sha256_12423", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12423_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12423_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12423_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 93 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12424 for ECDSA, tcId is 94 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12424_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12424_msg[] = { 0x33, 0x32, 0x36, 0x31, 0x31, 0x39, 0x38, 0x36, 0x30, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12424_sig[] = { 0x15, 0xe7, 0x68, 0x80, 0x89, 0x83, 0x16, 0xb1, 0x62, 0x04, 0xac, 0x92, 0x0a, 0x02, 0xd5, 0x80, 0x45, 0xf3, 0x6a, 0x22, 0x9d, 0x4a, 0xa4, 0xf8, 0x12, 0x63, 0x8c, 0x45, 0x5a, 0xbe, 0x04, 0x43, 0xe7, 0x4d, 0x35, 0x7d, 0x3f, 0xcb, 0x5c, 0x8c, 0x53, 0x37, 0xbd, 0x6a, 0xba, 0x41, 0x78, 0xb4, 0x55, 0xca, 0x10, 0xe2, 0x26, 0xe1, 0x3f, 0x96, 0x38, 0x19, 0x65, 0x06, 0xa1, 0x93, 0x91, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12424 = { .name = "ecdsa_secp256r1_sha256_12424", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12424_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12424_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12424_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 94 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12425 for ECDSA, tcId is 95 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12425_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12425_msg[] = { 0x39, 0x36, 0x37, 0x38, 0x37, 0x38, 0x31, 0x30, 0x39, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12425_sig[] = { 0x35, 0x2e, 0xcb, 0x53, 0xf8, 0xdf, 0x2c, 0x50, 0x3a, 0x45, 0xf9, 0x84, 0x6f, 0xc2, 0x8d, 0x1d, 0x31, 0xe6, 0x30, 0x7d, 0x3d, 0xdb, 0xff, 0xc1, 0x13, 0x23, 0x15, 0xcc, 0x07, 0xf1, 0x6d, 0xad, 0x13, 0x48, 0xdf, 0xa9, 0xc4, 0x82, 0xc5, 0x58, 0xe1, 0xd0, 0x5c, 0x52, 0x42, 0xca, 0x1c, 0x39, 0x43, 0x67, 0x26, 0xec, 0xd2, 0x82, 0x58, 0xb1, 0x89, 0x97, 0x92, 0x88, 0x7d, 0xd0, 0xa3, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12425 = { .name = "ecdsa_secp256r1_sha256_12425", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12425_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12425_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12425_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 95 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12426 for ECDSA, tcId is 96 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12426_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12426_msg[] = { 0x34, 0x39, 0x35, 0x38, 0x38, 0x32, 0x33, 0x38, 0x32, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_12426_sig[] = { 0x4a, 0x40, 0x80, 0x1a, 0x7e, 0x60, 0x6b, 0xa7, 0x8a, 0x0d, 0xa9, 0x88, 0x2a, 0xb2, 0x3c, 0x76, 0x77, 0xb8, 0x64, 0x23, 0x49, 0xed, 0x3d, 0x65, 0x2c, 0x5b, 0xfa, 0x5f, 0x2a, 0x95, 0x58, 0xfb, 0x3a, 0x49, 0xb6, 0x48, 0x48, 0xd6, 0x82, 0xef, 0x7f, 0x60, 0x5f, 0x28, 0x32, 0xf7, 0x38, 0x4b, 0xdc, 0x24, 0xed, 0x29, 0x25, 0x82, 0x5b, 0xf8, 0xea, 0x77, 0xdc, 0x59, 0x81, 0x72, 0x57, 0x82, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12426 = { .name = "ecdsa_secp256r1_sha256_12426", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12426_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12426_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12426_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 96 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12427 for ECDSA, tcId is 97 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12427_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12427_msg[] = { 0x38, 0x32, 0x34, 0x36, 0x33, 0x37, 0x38, 0x33, 0x37, }; static const unsigned char ecdsa_secp256r1_sha256_12427_sig[] = { 0xea, 0xcc, 0x5e, 0x1a, 0x83, 0x04, 0xa7, 0x4d, 0x2b, 0xe4, 0x12, 0xb0, 0x78, 0x92, 0x4b, 0x3b, 0xb3, 0x51, 0x1b, 0xac, 0x85, 0x5c, 0x05, 0xc9, 0xe5, 0xe9, 0xe4, 0x4d, 0xf3, 0xd6, 0x1e, 0x96, 0x74, 0x51, 0xcd, 0x8e, 0x18, 0xd6, 0xed, 0x18, 0x85, 0xdd, 0x82, 0x77, 0x14, 0x84, 0x7f, 0x96, 0xec, 0x4b, 0xb0, 0xed, 0x4c, 0x36, 0xce, 0x98, 0x08, 0xdb, 0x8f, 0x71, 0x42, 0x04, 0xf6, 0xd1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12427 = { .name = "ecdsa_secp256r1_sha256_12427", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12427_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12427_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12427_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 97 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12428 for ECDSA, tcId is 98 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12428_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12428_msg[] = { 0x31, 0x31, 0x30, 0x32, 0x30, 0x38, 0x33, 0x33, 0x37, 0x37, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12428_sig[] = { 0x2f, 0x7a, 0x5e, 0x9e, 0x57, 0x71, 0xd4, 0x24, 0xf3, 0x0f, 0x67, 0xfd, 0xab, 0x61, 0xe8, 0xce, 0x4f, 0x8c, 0xd1, 0x21, 0x48, 0x82, 0xad, 0xb6, 0x5f, 0x7d, 0xe9, 0x4c, 0x31, 0x57, 0x70, 0x52, 0xac, 0x4e, 0x69, 0x80, 0x83, 0x45, 0x80, 0x9b, 0x44, 0xac, 0xb0, 0xb2, 0xbd, 0x88, 0x91, 0x75, 0xfb, 0x75, 0xdd, 0x05, 0x0c, 0x5a, 0x44, 0x9a, 0xb9, 0x52, 0x8f, 0x8f, 0x78, 0xda, 0xa1, 0x0c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12428 = { .name = "ecdsa_secp256r1_sha256_12428", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12428_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12428_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12428_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 98 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12429 for ECDSA, tcId is 99 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12429_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12429_msg[] = { 0x31, 0x33, 0x33, 0x38, 0x37, 0x31, 0x36, 0x34, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12429_sig[] = { 0xff, 0xcd, 0xa4, 0x0f, 0x79, 0x2c, 0xe4, 0xd9, 0x3e, 0x7e, 0x0f, 0x0e, 0x95, 0xe1, 0xa2, 0x14, 0x7d, 0xdd, 0xd7, 0xf6, 0x48, 0x76, 0x21, 0xc3, 0x0a, 0x03, 0xd7, 0x10, 0xb3, 0x30, 0x02, 0x19, 0x79, 0x93, 0x8b, 0x55, 0xf8, 0xa1, 0x7f, 0x7e, 0xd7, 0xba, 0x9a, 0xde, 0x8f, 0x20, 0x65, 0xa1, 0xfa, 0x77, 0x61, 0x8f, 0x0b, 0x67, 0xad, 0xd8, 0xd5, 0x8c, 0x42, 0x2c, 0x24, 0x53, 0xa4, 0x9a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12429 = { .name = "ecdsa_secp256r1_sha256_12429", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12429_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12429_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12429_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 99 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12430 for ECDSA, tcId is 100 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12430_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12430_msg[] = { 0x33, 0x32, 0x32, 0x31, 0x34, 0x34, 0x31, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12430_sig[] = { 0x81, 0xf2, 0x35, 0x9c, 0x4f, 0xab, 0xa6, 0xb5, 0x3d, 0x3e, 0x8c, 0x8c, 0x3f, 0xcc, 0x16, 0xa9, 0x48, 0x35, 0x0f, 0x7a, 0xb3, 0xa5, 0x88, 0xb2, 0x8c, 0x17, 0x60, 0x3a, 0x43, 0x1e, 0x39, 0xa8, 0xcd, 0x6f, 0x6a, 0x5c, 0xc3, 0xb5, 0x5e, 0xad, 0x0f, 0xf6, 0x95, 0xd0, 0x6c, 0x68, 0x60, 0xb5, 0x09, 0xe4, 0x6d, 0x99, 0xfc, 0xce, 0xfb, 0x9f, 0x7f, 0x9e, 0x10, 0x18, 0x57, 0xf7, 0x43, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12430 = { .name = "ecdsa_secp256r1_sha256_12430", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12430_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12430_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12430_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 100 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12431 for ECDSA, tcId is 101 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12431_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12431_msg[] = { 0x31, 0x30, 0x36, 0x38, 0x36, 0x36, 0x35, 0x35, 0x35, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12431_sig[] = { 0xdf, 0xc8, 0xbf, 0x52, 0x04, 0x45, 0xcb, 0xb8, 0xee, 0x15, 0x96, 0xfb, 0x07, 0x3e, 0xa2, 0x83, 0xea, 0x13, 0x02, 0x51, 0xa6, 0xfd, 0xff, 0xa5, 0xc3, 0xf5, 0xf2, 0xaa, 0xf7, 0x5c, 0xa8, 0x08, 0x04, 0x8e, 0x33, 0xef, 0xce, 0x14, 0x7c, 0x9d, 0xd9, 0x28, 0x23, 0x64, 0x0e, 0x33, 0x8e, 0x68, 0xbf, 0xd7, 0xd0, 0xdc, 0x7a, 0x49, 0x05, 0xb3, 0xa7, 0xac, 0x71, 0x1e, 0x57, 0x7e, 0x90, 0xe7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12431 = { .name = "ecdsa_secp256r1_sha256_12431", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12431_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12431_msg, .msglen = 11, .sig = ecdsa_secp256r1_sha256_12431_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 101 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12432 for ECDSA, tcId is 102 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12432_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12432_msg[] = { 0x36, 0x32, 0x31, 0x35, 0x35, 0x32, 0x34, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12432_sig[] = { 0xad, 0x01, 0x9f, 0x74, 0xc6, 0x94, 0x1d, 0x20, 0xef, 0xda, 0x70, 0xb4, 0x6c, 0x53, 0xdb, 0x16, 0x65, 0x03, 0xa0, 0xe3, 0x93, 0xe9, 0x32, 0xf6, 0x88, 0x22, 0x76, 0x88, 0xba, 0x6a, 0x57, 0x62, 0x93, 0x32, 0x0e, 0xb7, 0xca, 0x07, 0x10, 0x25, 0x53, 0x46, 0xbd, 0xbb, 0x31, 0x02, 0xcd, 0xcf, 0x79, 0x64, 0xef, 0x2e, 0x09, 0x88, 0xe7, 0x12, 0xbc, 0x05, 0xef, 0xe1, 0x6c, 0x19, 0x93, 0x45, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12432 = { .name = "ecdsa_secp256r1_sha256_12432", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12432_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12432_msg, .msglen = 8, .sig = ecdsa_secp256r1_sha256_12432_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 102 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12433 for ECDSA, tcId is 103 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12433_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12433_msg[] = { 0x37, 0x30, 0x33, 0x30, 0x38, 0x31, 0x38, 0x37, 0x37, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12433_sig[] = { 0xac, 0x80, 0x96, 0x84, 0x2e, 0x8a, 0xdd, 0x68, 0xc3, 0x4e, 0x78, 0xce, 0x11, 0xdd, 0x71, 0xe4, 0xb5, 0x43, 0x16, 0xbd, 0x3e, 0xbf, 0x7f, 0xff, 0xde, 0xb7, 0xbd, 0x5a, 0x3e, 0xbc, 0x18, 0x83, 0xf5, 0xca, 0x2f, 0x4f, 0x23, 0xd6, 0x74, 0x50, 0x2d, 0x4c, 0xaf, 0x85, 0xd1, 0x87, 0x21, 0x5d, 0x36, 0xe3, 0xce, 0x9f, 0x0c, 0xe2, 0x19, 0x70, 0x9f, 0x21, 0xa3, 0xaa, 0xc0, 0x03, 0xb7, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12433 = { .name = "ecdsa_secp256r1_sha256_12433", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12433_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12433_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12433_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 103 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12434 for ECDSA, tcId is 104 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12434_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12434_msg[] = { 0x35, 0x39, 0x32, 0x34, 0x35, 0x32, 0x33, 0x37, 0x34, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12434_sig[] = { 0x67, 0x7b, 0x2d, 0x3a, 0x59, 0xb1, 0x8a, 0x5f, 0xf9, 0x39, 0xb7, 0x0e, 0xa0, 0x02, 0x25, 0x08, 0x89, 0xdd, 0xcd, 0x7b, 0x7b, 0x9d, 0x77, 0x68, 0x54, 0xb4, 0x94, 0x36, 0x93, 0xfb, 0x92, 0xf7, 0x6b, 0x4b, 0xa8, 0x56, 0xad, 0xe7, 0x67, 0x7b, 0xf3, 0x03, 0x07, 0xb2, 0x1f, 0x3c, 0xcd, 0xa3, 0x5d, 0x2f, 0x63, 0xae, 0xe8, 0x1e, 0xfd, 0x0b, 0xab, 0x69, 0x72, 0xcc, 0x07, 0x95, 0xdb, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12434 = { .name = "ecdsa_secp256r1_sha256_12434", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12434_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12434_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12434_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 104 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12435 for ECDSA, tcId is 105 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12435_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12435_msg[] = { 0x31, 0x34, 0x39, 0x35, 0x35, 0x38, 0x36, 0x36, 0x32, 0x31, }; static const unsigned char ecdsa_secp256r1_sha256_12435_sig[] = { 0x47, 0x9e, 0x1d, 0xed, 0x14, 0xbc, 0xae, 0xd0, 0x37, 0x9b, 0xa8, 0xe1, 0xb7, 0x3d, 0x31, 0x15, 0xd8, 0x4d, 0x31, 0xd4, 0xb7, 0xc3, 0x0e, 0x1f, 0x05, 0xe1, 0xfc, 0x0d, 0x59, 0x57, 0xcf, 0xb0, 0x91, 0x8f, 0x79, 0xe3, 0x5b, 0x3d, 0x89, 0x48, 0x7c, 0xf6, 0x34, 0xa4, 0xf0, 0x5b, 0x2e, 0x0c, 0x30, 0x85, 0x7c, 0xa8, 0x79, 0xf9, 0x7c, 0x77, 0x1e, 0x87, 0x70, 0x27, 0x35, 0x5b, 0x24, 0x43, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12435 = { .name = "ecdsa_secp256r1_sha256_12435", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12435_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12435_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12435_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 105 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12436 for ECDSA, tcId is 106 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12436_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12436_msg[] = { 0x34, 0x30, 0x30, 0x35, 0x33, 0x31, 0x34, 0x34, 0x30, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12436_sig[] = { 0x43, 0xdf, 0xcc, 0xd0, 0xed, 0xb9, 0xe2, 0x80, 0xd9, 0xa5, 0x8f, 0x01, 0x16, 0x4d, 0x55, 0xc3, 0xd7, 0x11, 0xe1, 0x4b, 0x12, 0xac, 0x5c, 0xf3, 0xb6, 0x48, 0x40, 0xea, 0xd5, 0x12, 0xa0, 0xa3, 0x1d, 0xbe, 0x33, 0xfa, 0x8b, 0xa8, 0x45, 0x33, 0xcd, 0x5c, 0x49, 0x34, 0x36, 0x5b, 0x34, 0x42, 0xca, 0x11, 0x74, 0x89, 0x9b, 0x78, 0xef, 0x9a, 0x31, 0x99, 0xf4, 0x95, 0x84, 0x38, 0x97, 0x72, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12436 = { .name = "ecdsa_secp256r1_sha256_12436", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12436_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12436_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12436_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 106 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12437 for ECDSA, tcId is 107 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12437_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12437_msg[] = { 0x33, 0x30, 0x39, 0x36, 0x34, 0x35, 0x37, 0x35, 0x31, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12437_sig[] = { 0x5b, 0x09, 0xab, 0x63, 0x7b, 0xd4, 0xca, 0xf0, 0xf4, 0xc7, 0xc7, 0xe4, 0xbc, 0xa5, 0x92, 0xfe, 0xa2, 0x0e, 0x90, 0x87, 0xc2, 0x59, 0xd2, 0x6a, 0x38, 0xbb, 0x40, 0x85, 0xf0, 0xbb, 0xff, 0x11, 0x45, 0xb7, 0xeb, 0x46, 0x7b, 0x67, 0x48, 0xaf, 0x61, 0x8e, 0x9d, 0x80, 0xd6, 0xfd, 0xcd, 0x6a, 0xa2, 0x49, 0x64, 0xe5, 0xa1, 0x3f, 0x88, 0x5b, 0xca, 0x81, 0x01, 0xde, 0x08, 0xeb, 0x0d, 0x75, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12437 = { .name = "ecdsa_secp256r1_sha256_12437", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12437_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12437_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12437_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 107 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12438 for ECDSA, tcId is 108 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12438_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12438_msg[] = { 0x32, 0x37, 0x38, 0x34, 0x30, 0x32, 0x35, 0x36, 0x32, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12438_sig[] = { 0x5e, 0x9b, 0x1c, 0x5a, 0x02, 0x80, 0x70, 0xdf, 0x57, 0x28, 0xc5, 0xc8, 0xaf, 0x9b, 0x74, 0xe0, 0x66, 0x7a, 0xfa, 0x57, 0x0a, 0x6c, 0xfa, 0x01, 0x14, 0xa5, 0x03, 0x9e, 0xd1, 0x5e, 0xe0, 0x6f, 0xb1, 0x36, 0x09, 0x07, 0xe2, 0xd9, 0x78, 0x5e, 0xad, 0x36, 0x2b, 0xb8, 0xd7, 0xbd, 0x66, 0x1b, 0x6c, 0x29, 0xee, 0xff, 0xd3, 0xc5, 0x03, 0x77, 0x44, 0xed, 0xae, 0xb9, 0xad, 0x99, 0x0c, 0x20, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12438 = { .name = "ecdsa_secp256r1_sha256_12438", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12438_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12438_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12438_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 108 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12439 for ECDSA, tcId is 109 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12439_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12439_msg[] = { 0x32, 0x36, 0x31, 0x38, 0x37, 0x38, 0x37, 0x34, 0x31, 0x38, }; static const unsigned char ecdsa_secp256r1_sha256_12439_sig[] = { 0x06, 0x71, 0xa0, 0xa8, 0x5c, 0x2b, 0x72, 0xd5, 0x4a, 0x2f, 0xb0, 0x99, 0x0e, 0x34, 0x53, 0x8b, 0x48, 0x90, 0x05, 0x0f, 0x5a, 0x57, 0x12, 0xf6, 0xd1, 0xa7, 0xa5, 0xfb, 0x85, 0x78, 0xf3, 0x2e, 0xdb, 0x18, 0x46, 0xba, 0xb6, 0xb7, 0x36, 0x14, 0x79, 0xab, 0x9c, 0x32, 0x85, 0xca, 0x41, 0x29, 0x18, 0x08, 0xf2, 0x7f, 0xd5, 0xbd, 0x4f, 0xda, 0xc7, 0x20, 0xe5, 0x85, 0x47, 0x13, 0x69, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12439 = { .name = "ecdsa_secp256r1_sha256_12439", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12439_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12439_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12439_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 109 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12440 for ECDSA, tcId is 110 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12440_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12440_msg[] = { 0x31, 0x36, 0x34, 0x32, 0x36, 0x32, 0x35, 0x32, 0x36, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12440_sig[] = { 0x76, 0x73, 0xf8, 0x52, 0x67, 0x48, 0x44, 0x64, 0x77, 0xdb, 0xbb, 0x05, 0x90, 0xa4, 0x54, 0x92, 0xc5, 0xd7, 0xd6, 0x98, 0x59, 0xd3, 0x01, 0xab, 0xba, 0xed, 0xb3, 0x5b, 0x20, 0x95, 0x10, 0x3a, 0x3d, 0xc7, 0x0d, 0xdf, 0x9c, 0x6b, 0x52, 0x4d, 0x88, 0x6b, 0xed, 0x9e, 0x6a, 0xf0, 0x2e, 0x0e, 0x4d, 0xec, 0x0d, 0x41, 0x7a, 0x41, 0x4f, 0xed, 0x38, 0x07, 0xef, 0x44, 0x22, 0x91, 0x3d, 0x7c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12440 = { .name = "ecdsa_secp256r1_sha256_12440", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12440_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12440_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12440_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 110 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12441 for ECDSA, tcId is 111 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12441_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12441_msg[] = { 0x36, 0x38, 0x32, 0x34, 0x31, 0x38, 0x39, 0x34, 0x33, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12441_sig[] = { 0x7f, 0x08, 0x54, 0x41, 0x07, 0x0e, 0xcd, 0x2b, 0xb2, 0x12, 0x85, 0x08, 0x9e, 0xbb, 0x1a, 0xa6, 0x45, 0x0d, 0x1a, 0x06, 0xc3, 0x6d, 0x3f, 0xf3, 0x9d, 0xfd, 0x65, 0x7a, 0x79, 0x6d, 0x12, 0xb5, 0x24, 0x97, 0x12, 0x01, 0x20, 0x29, 0x87, 0x0a, 0x24, 0x59, 0xd1, 0x8d, 0x47, 0xda, 0x9a, 0xa4, 0x92, 0xa5, 0xe6, 0xcb, 0x4b, 0x2d, 0x8d, 0xaf, 0xa9, 0xe4, 0xc5, 0xc5, 0x4a, 0x2b, 0x9a, 0x8b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12441 = { .name = "ecdsa_secp256r1_sha256_12441", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12441_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12441_msg, .msglen = 10, .sig = ecdsa_secp256r1_sha256_12441_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 111 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12442 for ECDSA, tcId is 112 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12442_pubkey[] = { 0x29, 0x27, 0xb1, 0x05, 0x12, 0xba, 0xe3, 0xed, 0xdc, 0xfe, 0x46, 0x78, 0x28, 0x12, 0x8b, 0xad, 0x29, 0x03, 0x26, 0x99, 0x19, 0xf7, 0x08, 0x60, 0x69, 0xc8, 0xc4, 0xdf, 0x6c, 0x73, 0x28, 0x38, 0xc7, 0x78, 0x79, 0x64, 0xea, 0xac, 0x00, 0xe5, 0x92, 0x1f, 0xb1, 0x49, 0x8a, 0x60, 0xf4, 0x60, 0x67, 0x66, 0xb3, 0xd9, 0x68, 0x50, 0x01, 0x55, 0x8d, 0x1a, 0x97, 0x4e, 0x73, 0x41, 0x51, 0x3e, }; static const unsigned char ecdsa_secp256r1_sha256_12442_msg[] = { 0x34, 0x38, 0x34, 0x32, 0x34, 0x35, 0x34, 0x32, 0x35, }; static const unsigned char ecdsa_secp256r1_sha256_12442_sig[] = { 0x91, 0x4c, 0x67, 0xfb, 0x61, 0xdd, 0x1e, 0x27, 0xc8, 0x67, 0x39, 0x8e, 0xa7, 0x32, 0x2d, 0x5a, 0xb7, 0x6d, 0xf0, 0x4b, 0xc5, 0xaa, 0x66, 0x83, 0xa8, 0xe0, 0xf3, 0x0a, 0x5d, 0x28, 0x73, 0x48, 0xfa, 0x07, 0x47, 0x40, 0x31, 0x48, 0x1d, 0xda, 0x49, 0x53, 0xe3, 0xac, 0x19, 0x59, 0xee, 0x8c, 0xea, 0x7e, 0x66, 0xec, 0x41, 0x2b, 0x38, 0xd6, 0xc9, 0x6d, 0x28, 0xf6, 0xd3, 0x73, 0x04, 0xea, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12442 = { .name = "ecdsa_secp256r1_sha256_12442", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12442_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12442_msg, .msglen = 9, .sig = ecdsa_secp256r1_sha256_12442_sig, .siglen = 64, .result = 1, .comment = "special case hash, tcId is 112 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12443 for ECDSA, tcId is 113 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12443_pubkey[] = { 0xd7, 0x05, 0xd1, 0x6f, 0x80, 0x98, 0x7e, 0x2d, 0x9b, 0x1a, 0x69, 0x57, 0xd2, 0x9c, 0xe2, 0x2f, 0xeb, 0xf7, 0xd1, 0x0f, 0xa5, 0x15, 0x15, 0x31, 0x82, 0x41, 0x5c, 0x83, 0x61, 0xba, 0xac, 0xa4, 0xb1, 0xfc, 0x10, 0x5e, 0xe5, 0xce, 0x80, 0xd5, 0x14, 0xec, 0x12, 0x38, 0xbe, 0xae, 0x20, 0x37, 0xa6, 0xf8, 0x36, 0x25, 0x59, 0x36, 0x20, 0xd4, 0x60, 0x81, 0x9e, 0x86, 0x82, 0x16, 0x09, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_12443_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12443_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x43, 0x19, 0x05, 0x53, 0x58, 0xe8, 0x61, 0x7b, 0x0c, 0x46, 0x35, 0x3d, 0x03, 0x9c, 0xda, 0xab, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12443 = { .name = "ecdsa_secp256r1_sha256_12443", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12443_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12443_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12443_sig, .siglen = 64, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 113 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12444 for ECDSA, tcId is 114 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12444_pubkey[] = { 0xd7, 0x05, 0xd1, 0x6f, 0x80, 0x98, 0x7e, 0x2d, 0x9b, 0x1a, 0x69, 0x57, 0xd2, 0x9c, 0xe2, 0x2f, 0xeb, 0xf7, 0xd1, 0x0f, 0xa5, 0x15, 0x15, 0x31, 0x82, 0x41, 0x5c, 0x83, 0x61, 0xba, 0xac, 0xa4, 0xb1, 0xfc, 0x10, 0x5e, 0xe5, 0xce, 0x80, 0xd5, 0x14, 0xec, 0x12, 0x38, 0xbe, 0xae, 0x20, 0x37, 0xa6, 0xf8, 0x36, 0x25, 0x59, 0x36, 0x20, 0xd4, 0x60, 0x81, 0x9e, 0x86, 0x82, 0x16, 0x09, 0x26, }; static const unsigned char ecdsa_secp256r1_sha256_12444_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12444_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12444 = { .name = "ecdsa_secp256r1_sha256_12444", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12444_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12444_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12444_sig, .siglen = 64, .result = -1, .comment = "r too large, tcId is 114 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12445 for ECDSA, tcId is 115 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12445_pubkey[] = { 0x3c, 0xd8, 0xd2, 0xf8, 0x1d, 0x69, 0x53, 0xb0, 0x84, 0x4c, 0x09, 0xd7, 0xb5, 0x60, 0xd5, 0x27, 0xcd, 0x2e, 0xf6, 0x70, 0x56, 0x89, 0x3e, 0xad, 0xaf, 0xa5, 0x2c, 0x85, 0x01, 0x38, 0x7d, 0x59, 0xee, 0x41, 0xfd, 0xb4, 0xd1, 0x04, 0x02, 0xce, 0x7a, 0x0c, 0x5e, 0x3b, 0x74, 0x7a, 0xdf, 0xa3, 0xa4, 0x90, 0xb6, 0x2a, 0x6b, 0x77, 0x19, 0x06, 0x89, 0x03, 0x48, 0x5c, 0x0b, 0xb6, 0xdc, 0x2d, }; static const unsigned char ecdsa_secp256r1_sha256_12445_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12445_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12445 = { .name = "ecdsa_secp256r1_sha256_12445", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12445_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12445_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12445_sig, .siglen = 64, .result = 1, .comment = "r,s are large, tcId is 115 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12446 for ECDSA, tcId is 116 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12446_pubkey[] = { 0x82, 0x40, 0xcd, 0x81, 0xed, 0xd9, 0x1c, 0xb6, 0x93, 0x61, 0x33, 0x50, 0x8c, 0x39, 0x15, 0x10, 0x0e, 0x81, 0xf3, 0x32, 0xc4, 0x54, 0x5d, 0x41, 0x18, 0x9b, 0x48, 0x11, 0x96, 0x85, 0x13, 0x78, 0xe0, 0x5b, 0x06, 0xe7, 0x2d, 0x4a, 0x1b, 0xff, 0x80, 0xea, 0x5d, 0xb5, 0x14, 0xaa, 0x2f, 0x93, 0xea, 0x6d, 0xd6, 0xd9, 0xc0, 0xae, 0x27, 0xb7, 0x83, 0x7d, 0xc4, 0x32, 0xf9, 0xce, 0x89, 0xd9, }; static const unsigned char ecdsa_secp256r1_sha256_12446_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12446_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x90, 0x91, 0x35, 0xbd, 0xb6, 0x79, 0x92, 0x86, 0x17, 0x0f, 0x5e, 0xad, 0x2d, 0xe4, 0xf6, 0x51, 0x14, 0x53, 0xfe, 0x50, 0x91, 0x4f, 0x3d, 0xf2, 0xde, 0x54, 0xa3, 0x63, 0x83, 0xdf, 0x8d, 0xd4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12446 = { .name = "ecdsa_secp256r1_sha256_12446", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12446_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12446_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12446_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 116 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12447 for ECDSA, tcId is 117 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12447_pubkey[] = { 0xb0, 0x62, 0x94, 0x73, 0x56, 0x74, 0x8b, 0x0f, 0xc1, 0x7f, 0x17, 0x04, 0xc6, 0x5a, 0xa1, 0xdc, 0xa6, 0xe1, 0xbf, 0xe6, 0x77, 0x97, 0x56, 0xfa, 0x61, 0x6d, 0x91, 0xea, 0xad, 0x13, 0xdf, 0x2c, 0x0b, 0x38, 0xc1, 0x7f, 0x3d, 0x06, 0x72, 0xe7, 0x40, 0x9c, 0xfc, 0x59, 0x92, 0xa9, 0x9f, 0xff, 0x12, 0xb8, 0x4a, 0x4f, 0x84, 0x32, 0x29, 0x3b, 0x43, 0x11, 0x13, 0xf1, 0xb2, 0xfb, 0x57, 0x9d, }; static const unsigned char ecdsa_secp256r1_sha256_12447_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12447_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xb4, 0x57, 0x7c, 0xa0, 0x09, 0x37, 0x6f, 0x71, 0x30, 0x3f, 0xd5, 0xdd, 0x22, 0x7d, 0xce, 0xf5, 0xde, 0xb7, 0x73, 0xad, 0x5f, 0x5a, 0x84, 0x36, 0x06, 0x44, 0x66, 0x9c, 0xa2, 0x49, 0xa5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12447 = { .name = "ecdsa_secp256r1_sha256_12447", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12447_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12447_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12447_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 117 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12448 for ECDSA, tcId is 118 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12448_pubkey[] = { 0x4a, 0x03, 0xef, 0x9f, 0x92, 0xeb, 0x26, 0x8c, 0xaf, 0xa6, 0x01, 0x07, 0x24, 0x89, 0xa5, 0x63, 0x80, 0xfa, 0x0d, 0xc4, 0x31, 0x71, 0xd7, 0x71, 0x28, 0x13, 0xb3, 0xa1, 0x9a, 0x1e, 0xb5, 0xe5, 0x3e, 0x21, 0x3e, 0x28, 0xa6, 0x08, 0xce, 0x9a, 0x2f, 0x4a, 0x17, 0xfd, 0x83, 0x0c, 0x66, 0x54, 0x01, 0x8a, 0x79, 0xb3, 0xe0, 0x26, 0x3d, 0x91, 0xa8, 0xba, 0x90, 0x62, 0x2d, 0xf6, 0xf2, 0xf0, }; static const unsigned char ecdsa_secp256r1_sha256_12448_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12448_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12448 = { .name = "ecdsa_secp256r1_sha256_12448", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12448_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12448_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12448_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 118 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12449 for ECDSA, tcId is 119 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12449_pubkey[] = { 0x4a, 0x03, 0xef, 0x9f, 0x92, 0xeb, 0x26, 0x8c, 0xaf, 0xa6, 0x01, 0x07, 0x24, 0x89, 0xa5, 0x63, 0x80, 0xfa, 0x0d, 0xc4, 0x31, 0x71, 0xd7, 0x71, 0x28, 0x13, 0xb3, 0xa1, 0x9a, 0x1e, 0xb5, 0xe5, 0x3e, 0x21, 0x3e, 0x28, 0xa6, 0x08, 0xce, 0x9a, 0x2f, 0x4a, 0x17, 0xfd, 0x83, 0x0c, 0x66, 0x54, 0x01, 0x8a, 0x79, 0xb3, 0xe0, 0x26, 0x3d, 0x91, 0xa8, 0xba, 0x90, 0x62, 0x2d, 0xf6, 0xf2, 0xf0, }; static const unsigned char ecdsa_secp256r1_sha256_12449_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12449_sig[] = { 0x05, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12449 = { .name = "ecdsa_secp256r1_sha256_12449", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12449_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12449_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12449_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 119 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12450 for ECDSA, tcId is 120 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12450_pubkey[] = { 0x09, 0x11, 0x94, 0xc1, 0xcb, 0xa1, 0x7f, 0x34, 0xe2, 0x86, 0xb4, 0x83, 0x37, 0x01, 0x60, 0x6a, 0x41, 0xce, 0xf2, 0x61, 0x77, 0xad, 0xa8, 0x85, 0x0b, 0x60, 0x1e, 0xa1, 0xf8, 0x59, 0xe7, 0x01, 0x27, 0x24, 0x2f, 0xce, 0xc7, 0x08, 0x82, 0x87, 0x58, 0x40, 0x3c, 0xe2, 0xfe, 0x50, 0x19, 0x83, 0xa7, 0x98, 0x4e, 0x62, 0x09, 0xf4, 0xd6, 0xb9, 0x5d, 0xb9, 0xad, 0x77, 0x76, 0x7f, 0x55, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha256_12450_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12450_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12450 = { .name = "ecdsa_secp256r1_sha256_12450", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12450_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12450_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12450_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 120 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12451 for ECDSA, tcId is 121 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12451_pubkey[] = { 0x09, 0x11, 0x94, 0xc1, 0xcb, 0xa1, 0x7f, 0x34, 0xe2, 0x86, 0xb4, 0x83, 0x37, 0x01, 0x60, 0x6a, 0x41, 0xce, 0xf2, 0x61, 0x77, 0xad, 0xa8, 0x85, 0x0b, 0x60, 0x1e, 0xa1, 0xf8, 0x59, 0xe7, 0x01, 0x27, 0x24, 0x2f, 0xce, 0xc7, 0x08, 0x82, 0x87, 0x58, 0x40, 0x3c, 0xe2, 0xfe, 0x50, 0x19, 0x83, 0xa7, 0x98, 0x4e, 0x62, 0x09, 0xf4, 0xd6, 0xb9, 0x5d, 0xb9, 0xad, 0x77, 0x76, 0x7f, 0x55, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha256_12451_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12451_sig[] = { 0x05, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12451 = { .name = "ecdsa_secp256r1_sha256_12451", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12451_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12451_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12451_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 121 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12452 for ECDSA, tcId is 122 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12452_pubkey[] = { 0x10, 0x3c, 0x6e, 0xcc, 0xef, 0xf5, 0x9e, 0x71, 0xea, 0x8f, 0x56, 0xfe, 0xe3, 0xa4, 0xb2, 0xb1, 0x48, 0xe8, 0x1c, 0x2b, 0xdb, 0xdd, 0x39, 0xc1, 0x95, 0x81, 0x2c, 0x96, 0xdc, 0xfb, 0x41, 0xa7, 0x23, 0x03, 0xa1, 0x93, 0xdc, 0x59, 0x1b, 0xe1, 0x50, 0xb8, 0x83, 0xd7, 0x70, 0xec, 0x51, 0xeb, 0xb4, 0xeb, 0xce, 0x8b, 0x09, 0x04, 0x2c, 0x2e, 0xcb, 0x16, 0xc4, 0x48, 0xd8, 0xe5, 0x7b, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_12452_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12452_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12452 = { .name = "ecdsa_secp256r1_sha256_12452", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12452_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12452_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12452_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 122 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12453 for ECDSA, tcId is 123 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12453_pubkey[] = { 0x10, 0x3c, 0x6e, 0xcc, 0xef, 0xf5, 0x9e, 0x71, 0xea, 0x8f, 0x56, 0xfe, 0xe3, 0xa4, 0xb2, 0xb1, 0x48, 0xe8, 0x1c, 0x2b, 0xdb, 0xdd, 0x39, 0xc1, 0x95, 0x81, 0x2c, 0x96, 0xdc, 0xfb, 0x41, 0xa7, 0x23, 0x03, 0xa1, 0x93, 0xdc, 0x59, 0x1b, 0xe1, 0x50, 0xb8, 0x83, 0xd7, 0x70, 0xec, 0x51, 0xeb, 0xb4, 0xeb, 0xce, 0x8b, 0x09, 0x04, 0x2c, 0x2e, 0xcb, 0x16, 0xc4, 0x48, 0xd8, 0xe5, 0x7b, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_12453_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12453_sig[] = { 0x05, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12453 = { .name = "ecdsa_secp256r1_sha256_12453", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12453_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12453_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12453_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 123 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12454 for ECDSA, tcId is 124 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12454_pubkey[] = { 0x3b, 0x66, 0xb8, 0x29, 0xfe, 0x60, 0x46, 0x38, 0xbc, 0xb2, 0xbf, 0xe8, 0xc2, 0x22, 0x28, 0xbe, 0x67, 0x39, 0x0c, 0x20, 0x11, 0x1b, 0xd2, 0xb4, 0x51, 0x46, 0x89, 0x27, 0xe8, 0x7f, 0xb6, 0xea, 0xbc, 0x8e, 0x59, 0xc0, 0x09, 0x36, 0x17, 0x58, 0xb2, 0x74, 0xba, 0x2c, 0xad, 0x36, 0xb5, 0x8f, 0xde, 0x48, 0x5a, 0x3e, 0xd0, 0x9d, 0xad, 0xe7, 0x67, 0x12, 0xfa, 0x9e, 0x9c, 0x4a, 0xc2, 0x12, }; static const unsigned char ecdsa_secp256r1_sha256_12454_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12454_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12454 = { .name = "ecdsa_secp256r1_sha256_12454", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12454_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12454_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12454_sig, .siglen = 64, .result = 1, .comment = "small r and s, tcId is 124 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12455 for ECDSA, tcId is 125 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12455_pubkey[] = { 0x3b, 0x66, 0xb8, 0x29, 0xfe, 0x60, 0x46, 0x38, 0xbc, 0xb2, 0xbf, 0xe8, 0xc2, 0x22, 0x28, 0xbe, 0x67, 0x39, 0x0c, 0x20, 0x11, 0x1b, 0xd2, 0xb4, 0x51, 0x46, 0x89, 0x27, 0xe8, 0x7f, 0xb6, 0xea, 0xbc, 0x8e, 0x59, 0xc0, 0x09, 0x36, 0x17, 0x58, 0xb2, 0x74, 0xba, 0x2c, 0xad, 0x36, 0xb5, 0x8f, 0xde, 0x48, 0x5a, 0x3e, 0xd0, 0x9d, 0xad, 0xe7, 0x67, 0x12, 0xfa, 0x9e, 0x9c, 0x4a, 0xc2, 0x12, }; static const unsigned char ecdsa_secp256r1_sha256_12455_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12455_sig[] = { 0x05, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12455 = { .name = "ecdsa_secp256r1_sha256_12455", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12455_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12455_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12455_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 125 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12456 for ECDSA, tcId is 126 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12456_pubkey[] = { 0x3b, 0x66, 0xb8, 0x29, 0xfe, 0x60, 0x46, 0x38, 0xbc, 0xb2, 0xbf, 0xe8, 0xc2, 0x22, 0x28, 0xbe, 0x67, 0x39, 0x0c, 0x20, 0x11, 0x1b, 0xd2, 0xb4, 0x51, 0x46, 0x89, 0x27, 0xe8, 0x7f, 0xb6, 0xea, 0xbc, 0x8e, 0x59, 0xc0, 0x09, 0x36, 0x17, 0x58, 0xb2, 0x74, 0xba, 0x2c, 0xad, 0x36, 0xb5, 0x8f, 0xde, 0x48, 0x5a, 0x3e, 0xd0, 0x9d, 0xad, 0xe7, 0x67, 0x12, 0xfa, 0x9e, 0x9c, 0x4a, 0xc2, 0x12, }; static const unsigned char ecdsa_secp256r1_sha256_12456_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12456_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12456 = { .name = "ecdsa_secp256r1_sha256_12456", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12456_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12456_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12456_sig, .siglen = 64, .result = -1, .comment = "r is larger than n, tcId is 126 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12457 for ECDSA, tcId is 127 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12457_pubkey[] = { 0x4f, 0xf2, 0xf6, 0xc2, 0x4e, 0x4a, 0x33, 0xcd, 0x71, 0xc0, 0x9f, 0xdc, 0xbc, 0x74, 0xa6, 0x23, 0x39, 0x61, 0xb8, 0x74, 0xb8, 0xc8, 0xe0, 0xeb, 0x94, 0x58, 0x20, 0x92, 0xcb, 0xc5, 0x0c, 0x30, 0x84, 0xfa, 0x95, 0x47, 0xaf, 0xda, 0x5c, 0x66, 0x33, 0x5f, 0x3f, 0x93, 0x7d, 0x4c, 0x79, 0xaf, 0xa1, 0x20, 0x48, 0x6b, 0x53, 0x41, 0x39, 0xd5, 0x9a, 0xe8, 0x2d, 0x61, 0xea, 0xd2, 0x64, 0x20, }; static const unsigned char ecdsa_secp256r1_sha256_12457_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12457_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x75, 0xfb, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12457 = { .name = "ecdsa_secp256r1_sha256_12457", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12457_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12457_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12457_sig, .siglen = 64, .result = -1, .comment = "s is larger than n, tcId is 127 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12458 for ECDSA, tcId is 128 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12458_pubkey[] = { 0x84, 0xb9, 0x59, 0x08, 0x0b, 0xb3, 0x08, 0x59, 0xcd, 0x53, 0xc2, 0xfb, 0x97, 0x3c, 0xf1, 0x4d, 0x60, 0xcd, 0xaa, 0x8e, 0xe0, 0x05, 0x87, 0x88, 0x9b, 0x5b, 0xc6, 0x57, 0xac, 0x58, 0x81, 0x75, 0xa0, 0x2c, 0xe5, 0xc1, 0xe5, 0x3c, 0xb1, 0x96, 0x11, 0x3c, 0x78, 0xb4, 0xcb, 0x8d, 0xc7, 0xd3, 0x60, 0xe5, 0xea, 0x78, 0x50, 0xb0, 0xf6, 0x65, 0x0b, 0x0c, 0x45, 0xaf, 0x2c, 0x3c, 0xd7, 0xca, }; static const unsigned char ecdsa_secp256r1_sha256_12458_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12458_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x8f, 0x1e, 0x3c, 0x78, 0x62, 0xc5, 0x8b, 0x16, 0xbb, 0x76, 0xed, 0xdb, 0xb7, 0x6e, 0xdd, 0xbb, 0x51, 0x6a, 0xf4, 0xf6, 0x3f, 0x2d, 0x74, 0xd7, 0x6e, 0x0d, 0x28, 0xc9, 0xbb, 0x75, 0xea, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12458 = { .name = "ecdsa_secp256r1_sha256_12458", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12458_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12458_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12458_sig, .siglen = 64, .result = 1, .comment = "small r and s^-1, tcId is 128 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12459 for ECDSA, tcId is 129 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12459_pubkey[] = { 0xdf, 0x40, 0x83, 0xbd, 0x6e, 0xcb, 0xda, 0x5a, 0x77, 0xae, 0x57, 0x8e, 0x5d, 0x83, 0x5f, 0xa7, 0xf7, 0x4a, 0x07, 0xeb, 0xb9, 0x1e, 0x05, 0x70, 0xe1, 0xff, 0x32, 0xa5, 0x63, 0x35, 0x4e, 0x99, 0x25, 0xaf, 0x80, 0xb0, 0x9a, 0x16, 0x7d, 0x9e, 0xf6, 0x47, 0xdf, 0x28, 0xe2, 0xd9, 0xac, 0xd0, 0xd4, 0xbc, 0x4f, 0x2d, 0xee, 0xc5, 0x72, 0x38, 0x18, 0xed, 0xaf, 0x90, 0x71, 0xe3, 0x11, 0xf8, }; static const unsigned char ecdsa_secp256r1_sha256_12459_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12459_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xd6, 0xef, 0x30, 0x43, 0xe7, 0x32, 0x95, 0x81, 0xdb, 0xb3, 0x97, 0x44, 0x97, 0x71, 0x0a, 0xb1, 0x15, 0x05, 0xee, 0x1c, 0x87, 0xff, 0x90, 0x7b, 0xee, 0xba, 0xdd, 0x19, 0x5a, 0x0f, 0xfe, 0x6d, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12459 = { .name = "ecdsa_secp256r1_sha256_12459", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12459_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12459_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12459_sig, .siglen = 64, .result = 1, .comment = "smallish r and s^-1, tcId is 129 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12460 for ECDSA, tcId is 130 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12460_pubkey[] = { 0xc2, 0x56, 0x9a, 0x3c, 0x9b, 0xf8, 0xc1, 0x83, 0x8c, 0xa8, 0x21, 0xf7, 0xba, 0x6f, 0x00, 0x0c, 0xc8, 0x67, 0x9d, 0x27, 0x8f, 0x37, 0x36, 0xb4, 0x14, 0xa3, 0x4a, 0x7c, 0x95, 0x6a, 0x03, 0x77, 0x03, 0x87, 0xea, 0x85, 0xbc, 0x4f, 0x28, 0x80, 0x4b, 0x4a, 0x91, 0xc9, 0xb7, 0xd6, 0x5b, 0xc6, 0x43, 0x4c, 0x97, 0x58, 0x06, 0x79, 0x5a, 0xb7, 0xd4, 0x41, 0xa4, 0xe9, 0x68, 0x3a, 0xeb, 0x09, }; static const unsigned char ecdsa_secp256r1_sha256_12460_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12460_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x8b, 0x74, 0x8b, 0x74, 0x00, 0x00, 0x00, 0x00, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x8b, 0x74, 0x66, 0xe7, 0x69, 0xad, 0x4a, 0x16, 0xd3, 0xdc, 0xd8, 0x71, 0x29, 0xb8, 0xe9, 0x1d, 0x1b, 0x4d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12460 = { .name = "ecdsa_secp256r1_sha256_12460", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12460_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12460_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12460_sig, .siglen = 64, .result = 1, .comment = "100-bit r and small s^-1, tcId is 130 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12461 for ECDSA, tcId is 131 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12461_pubkey[] = { 0x4a, 0x9f, 0x7d, 0xa2, 0xa6, 0xc3, 0x59, 0xa1, 0x65, 0x40, 0xc2, 0x71, 0x77, 0x4a, 0x6b, 0xf1, 0xc5, 0x86, 0x35, 0x7c, 0x97, 0x82, 0x56, 0xf4, 0x4a, 0x64, 0x96, 0xd8, 0x06, 0x70, 0x96, 0x8a, 0xc4, 0x96, 0xe7, 0x3a, 0x44, 0x56, 0x3f, 0x8d, 0x56, 0xfb, 0xd7, 0xbb, 0x9e, 0x4e, 0x3a, 0xe3, 0x04, 0xc8, 0x6f, 0x2c, 0x50, 0x8e, 0xb7, 0x77, 0xb0, 0x39, 0x24, 0x75, 0x5b, 0xeb, 0x40, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_12461_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12461_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12461 = { .name = "ecdsa_secp256r1_sha256_12461", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12461_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12461_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12461_sig, .siglen = 64, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 131 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12462 for ECDSA, tcId is 132 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12462_pubkey[] = { 0x87, 0x41, 0x46, 0x43, 0x2b, 0x3c, 0xd2, 0xc9, 0xe2, 0x62, 0x04, 0xc0, 0xa3, 0x41, 0x36, 0x99, 0x60, 0x67, 0xd4, 0x66, 0xdd, 0xe4, 0x91, 0x7a, 0x8f, 0xf2, 0x3a, 0x8e, 0x95, 0xca, 0x10, 0x6b, 0x70, 0x9b, 0x3d, 0x50, 0x97, 0x6e, 0xf8, 0xb3, 0x85, 0xa8, 0x13, 0xbc, 0x35, 0xf3, 0xa2, 0x07, 0x10, 0xbd, 0xc6, 0xed, 0xd4, 0x65, 0xe6, 0xf4, 0x3a, 0xc4, 0x86, 0x67, 0x03, 0xa6, 0x60, 0x8c, }; static const unsigned char ecdsa_secp256r1_sha256_12462_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12462_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x25, 0xef, 0x9f, 0x6b, 0xa4, 0xd9, 0x7c, 0x09, 0xd0, 0x31, 0x78, 0xfa, 0x20, 0xb4, 0xaa, 0xad, 0x83, 0xbe, 0x3c, 0xf9, 0xcb, 0x82, 0x4a, 0x87, 0x9f, 0xec, 0x32, 0x70, 0xfc, 0x4b, 0x81, 0xef, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12462 = { .name = "ecdsa_secp256r1_sha256_12462", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12462_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12462_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12462_sig, .siglen = 64, .result = 1, .comment = "100-bit r and s^-1, tcId is 132 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12463 for ECDSA, tcId is 133 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12463_pubkey[] = { 0x7a, 0x73, 0x6d, 0x8e, 0x32, 0x6a, 0x9c, 0xa6, 0x2b, 0xbe, 0x25, 0xa3, 0x4e, 0xa4, 0xe3, 0x63, 0x3b, 0x49, 0x9a, 0x96, 0xaf, 0xa7, 0xaa, 0xa3, 0xfc, 0xf3, 0xfd, 0x88, 0xf8, 0xe0, 0x7e, 0xde, 0xb3, 0xe4, 0x58, 0x79, 0xd8, 0x62, 0x2b, 0x93, 0xe8, 0x18, 0x44, 0x3a, 0x68, 0x6e, 0x86, 0x9e, 0xed, 0xa7, 0xbf, 0x9a, 0xe4, 0x6a, 0xa3, 0xea, 0xfc, 0xc4, 0x8a, 0x59, 0x34, 0x86, 0x46, 0x27, }; static const unsigned char ecdsa_secp256r1_sha256_12463_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12463_sig[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12463 = { .name = "ecdsa_secp256r1_sha256_12463", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12463_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12463_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12463_sig, .siglen = 64, .result = 1, .comment = "r and s^-1 are close to n, tcId is 133 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12464 for ECDSA, tcId is 134 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12464_pubkey[] = { 0xe8, 0x4d, 0x9b, 0x23, 0x2e, 0x97, 0x1a, 0x43, 0x38, 0x26, 0x30, 0xf9, 0x97, 0x25, 0xe4, 0x23, 0xec, 0x1e, 0xcb, 0x41, 0xe5, 0x51, 0x72, 0xe9, 0xc6, 0x97, 0x48, 0xa0, 0x3f, 0x0d, 0x59, 0x88, 0x61, 0x8b, 0x15, 0xb4, 0x27, 0xad, 0x83, 0x36, 0x3b, 0xd0, 0x41, 0xff, 0x75, 0xfa, 0xc9, 0x8e, 0xf2, 0xee, 0x92, 0x37, 0x14, 0xe7, 0xd1, 0xdf, 0xe3, 0x17, 0x53, 0x79, 0x3c, 0x75, 0x88, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_12464_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12464_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12464 = { .name = "ecdsa_secp256r1_sha256_12464", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12464_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12464_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12464_sig, .siglen = 64, .result = 1, .comment = "s == 1, tcId is 134 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12465 for ECDSA, tcId is 135 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12465_pubkey[] = { 0xe8, 0x4d, 0x9b, 0x23, 0x2e, 0x97, 0x1a, 0x43, 0x38, 0x26, 0x30, 0xf9, 0x97, 0x25, 0xe4, 0x23, 0xec, 0x1e, 0xcb, 0x41, 0xe5, 0x51, 0x72, 0xe9, 0xc6, 0x97, 0x48, 0xa0, 0x3f, 0x0d, 0x59, 0x88, 0x61, 0x8b, 0x15, 0xb4, 0x27, 0xad, 0x83, 0x36, 0x3b, 0xd0, 0x41, 0xff, 0x75, 0xfa, 0xc9, 0x8e, 0xf2, 0xee, 0x92, 0x37, 0x14, 0xe7, 0xd1, 0xdf, 0xe3, 0x17, 0x53, 0x79, 0x3c, 0x75, 0x88, 0xd4, }; static const unsigned char ecdsa_secp256r1_sha256_12465_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12465_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12465 = { .name = "ecdsa_secp256r1_sha256_12465", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12465_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12465_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12465_sig, .siglen = 64, .result = -1, .comment = "s == 0, tcId is 135 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12466 for ECDSA, tcId is 136 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12466_pubkey[] = { 0x02, 0x03, 0x73, 0x6f, 0xcb, 0x19, 0x8b, 0x15, 0xd8, 0xd7, 0xa0, 0xc8, 0x0f, 0x66, 0xdd, 0xdd, 0x15, 0x25, 0x92, 0x40, 0xaa, 0x78, 0xd0, 0x8a, 0xae, 0x67, 0xc4, 0x67, 0xde, 0x04, 0x50, 0x34, 0x34, 0x38, 0x34, 0x38, 0xd5, 0x04, 0x1e, 0xa9, 0xa3, 0x87, 0xee, 0x8e, 0x4d, 0x4e, 0x84, 0xb4, 0x47, 0x1b, 0x16, 0x0c, 0x6b, 0xcf, 0x25, 0x68, 0xb0, 0x72, 0xf8, 0xf2, 0x0e, 0x87, 0xa9, 0x96, }; static const unsigned char ecdsa_secp256r1_sha256_12466_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12466_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12466 = { .name = "ecdsa_secp256r1_sha256_12466", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12466_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12466_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12466_sig, .siglen = 64, .result = -1, .comment = "point at infinity during verify, tcId is 136 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12467 for ECDSA, tcId is 137 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12467_pubkey[] = { 0x78, 0xd8, 0x44, 0xdc, 0x7f, 0x16, 0xb7, 0x3b, 0x1f, 0x2a, 0x39, 0x73, 0x0d, 0xa5, 0xd8, 0xcd, 0x99, 0xfe, 0x2e, 0x70, 0xa1, 0x84, 0x82, 0x38, 0x4e, 0x37, 0xdc, 0xd2, 0xbf, 0xea, 0x02, 0xe1, 0xed, 0x65, 0x72, 0xe0, 0x1e, 0xb7, 0xa8, 0xd1, 0x13, 0xd0, 0x2c, 0x66, 0x6c, 0x45, 0xef, 0x22, 0xd3, 0xb9, 0xa6, 0xa6, 0xde, 0xa9, 0x9a, 0xa4, 0x3a, 0x81, 0x83, 0xc2, 0x6e, 0x75, 0xd3, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12467_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12467_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12467 = { .name = "ecdsa_secp256r1_sha256_12467", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12467_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12467_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12467_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 137 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12468 for ECDSA, tcId is 138 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12468_pubkey[] = { 0xde, 0xc6, 0xc8, 0x25, 0x7d, 0xde, 0x94, 0x11, 0x0e, 0xac, 0xc8, 0xc0, 0x9d, 0x2e, 0x57, 0x89, 0xcc, 0x5b, 0xeb, 0x81, 0xa9, 0x58, 0xb0, 0x2b, 0x4d, 0x62, 0xda, 0x95, 0x99, 0xa7, 0x40, 0x14, 0x66, 0xfa, 0xe1, 0x61, 0x41, 0x74, 0xbe, 0x63, 0x97, 0x0b, 0x83, 0xf6, 0x52, 0x44, 0x21, 0x06, 0x7b, 0x06, 0xdd, 0x6f, 0x4e, 0x9c, 0x56, 0xba, 0xca, 0x4e, 0x34, 0x4f, 0xdd, 0x69, 0x0f, 0x1d, }; static const unsigned char ecdsa_secp256r1_sha256_12468_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12468_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, 0x7f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12468 = { .name = "ecdsa_secp256r1_sha256_12468", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12468_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12468_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12468_sig, .siglen = 64, .result = 1, .comment = "edge case for signature malleability, tcId is 138 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12469 for ECDSA, tcId is 139 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12469_pubkey[] = { 0xa1, 0x7f, 0x5b, 0x75, 0xa3, 0x5e, 0xd6, 0x46, 0x23, 0xca, 0x5c, 0xbf, 0x1f, 0x91, 0x95, 0x12, 0x92, 0xdb, 0x0c, 0x23, 0xf0, 0xc2, 0xea, 0x24, 0xc3, 0xd0, 0xca, 0xd0, 0x98, 0x8c, 0xab, 0xc0, 0x83, 0xa7, 0xa6, 0x18, 0x62, 0x5c, 0x22, 0x89, 0x40, 0x73, 0x0b, 0x4f, 0xa3, 0xee, 0x64, 0xfa, 0xec, 0xbb, 0x2f, 0xc2, 0x0f, 0xdd, 0xe7, 0xc5, 0x8b, 0x3a, 0x3f, 0x63, 0x00, 0x42, 0x4d, 0xc6, }; static const unsigned char ecdsa_secp256r1_sha256_12469_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12469_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12469 = { .name = "ecdsa_secp256r1_sha256_12469", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12469_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12469_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12469_sig, .siglen = 64, .result = 1, .comment = "u1 == 1, tcId is 139 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12470 for ECDSA, tcId is 140 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12470_pubkey[] = { 0x04, 0xba, 0x0c, 0xba, 0x29, 0x1a, 0x37, 0xdb, 0x13, 0xf3, 0x3b, 0xf9, 0x0d, 0xab, 0x62, 0x8c, 0x04, 0xec, 0x83, 0x93, 0xa0, 0x20, 0x04, 0x19, 0xe9, 0xea, 0xa1, 0xeb, 0xcc, 0x9f, 0xb5, 0xc3, 0x1f, 0x3a, 0x0a, 0x0e, 0x68, 0x23, 0xa4, 0x9b, 0x62, 0x5a, 0xd5, 0x7b, 0x12, 0xa3, 0x2d, 0x40, 0x47, 0x97, 0x0f, 0xc3, 0x42, 0x8f, 0x0f, 0x00, 0x49, 0xec, 0xf4, 0x26, 0x5d, 0xc1, 0x2f, 0x62, }; static const unsigned char ecdsa_secp256r1_sha256_12470_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12470_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12470 = { .name = "ecdsa_secp256r1_sha256_12470", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12470_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12470_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12470_sig, .siglen = 64, .result = 1, .comment = "u1 == n - 1, tcId is 140 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12471 for ECDSA, tcId is 141 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12471_pubkey[] = { 0x69, 0x2b, 0x6c, 0x82, 0x8e, 0x0f, 0xee, 0xd6, 0x3d, 0x8a, 0xea, 0xa2, 0xb7, 0x32, 0x2f, 0x9c, 0xcb, 0xe8, 0x72, 0x3a, 0x1e, 0xd3, 0x9f, 0x22, 0x9f, 0x20, 0x4a, 0x43, 0x4b, 0x89, 0x00, 0xef, 0xa1, 0xf6, 0xf6, 0xab, 0xcb, 0x38, 0xea, 0x3b, 0x8f, 0xde, 0x38, 0xb9, 0x8c, 0x7c, 0x27, 0x1f, 0x27, 0x4a, 0xf5, 0x6a, 0x8c, 0x56, 0x28, 0xdc, 0x33, 0x29, 0x06, 0x9a, 0xe4, 0xdd, 0x57, 0x16, }; static const unsigned char ecdsa_secp256r1_sha256_12471_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12471_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12471 = { .name = "ecdsa_secp256r1_sha256_12471", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12471_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12471_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12471_sig, .siglen = 64, .result = 1, .comment = "u2 == 1, tcId is 141 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12472 for ECDSA, tcId is 142 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12472_pubkey[] = { 0x00, 0xce, 0xfd, 0x91, 0x62, 0xd1, 0x3e, 0x64, 0xcb, 0x93, 0x68, 0x7a, 0x9c, 0xd8, 0xf9, 0x75, 0x5e, 0xbb, 0x5a, 0x3e, 0xf7, 0x63, 0x2f, 0x80, 0x0f, 0x84, 0x87, 0x18, 0x74, 0xcc, 0xef, 0x09, 0x54, 0x3e, 0xcb, 0xea, 0xf7, 0xe8, 0x04, 0x4e, 0xf7, 0x21, 0xbe, 0x2f, 0xb5, 0xf5, 0x49, 0xe4, 0xb8, 0x48, 0x0d, 0x25, 0x87, 0x40, 0x4e, 0xbf, 0x7d, 0xbb, 0xef, 0x2c, 0x54, 0xbc, 0x0c, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha256_12472_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12472_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0xaa, 0xaa, 0xaa, 0xaa, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x7d, 0xef, 0x51, 0xc9, 0x1a, 0x0f, 0xbf, 0x03, 0x4d, 0x26, 0x87, 0x2c, 0xa8, 0x42, 0x18, 0xe1, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12472 = { .name = "ecdsa_secp256r1_sha256_12472", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12472_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12472_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12472_sig, .siglen = 64, .result = 1, .comment = "u2 == n - 1, tcId is 142 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12473 for ECDSA, tcId is 143 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12473_pubkey[] = { 0xb9, 0x75, 0x18, 0x3b, 0x42, 0x55, 0x1c, 0xf5, 0x2f, 0x29, 0x1d, 0x5c, 0x19, 0x21, 0xfd, 0x5e, 0x12, 0xf5, 0x0c, 0x8c, 0x85, 0xa4, 0xbe, 0xb9, 0xde, 0x03, 0xef, 0xa3, 0xf0, 0xf2, 0x44, 0x86, 0x22, 0x43, 0x01, 0x8e, 0x68, 0x66, 0xdf, 0x92, 0x2d, 0xc3, 0x13, 0x61, 0x20, 0x20, 0x31, 0x1f, 0xf2, 0x1e, 0x24, 0x2c, 0xe3, 0xfb, 0x15, 0xbc, 0x78, 0xc4, 0x06, 0xb2, 0x5a, 0xb4, 0x30, 0x91, }; static const unsigned char ecdsa_secp256r1_sha256_12473_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12473_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x71, 0x0f, 0x8e, 0x3e, 0xdc, 0x7c, 0x2d, 0x5a, 0x3f, 0xd2, 0x3d, 0xe8, 0x44, 0x00, 0x2b, 0xb9, 0x49, 0xd9, 0xf7, 0x94, 0xf6, 0xd5, 0x40, 0x5f, 0x6d, 0x97, 0xc1, 0xbb, 0x03, 0xdd, 0x2b, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12473 = { .name = "ecdsa_secp256r1_sha256_12473", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12473_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12473_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12473_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 143 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12474 for ECDSA, tcId is 144 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12474_pubkey[] = { 0xc2, 0x5f, 0x1d, 0x16, 0x6f, 0x3e, 0x21, 0x1c, 0xdf, 0x04, 0x2a, 0x26, 0xf8, 0xab, 0xf6, 0x09, 0x4d, 0x48, 0xb8, 0xd1, 0x71, 0x91, 0xd7, 0x4e, 0xd7, 0x17, 0x14, 0x92, 0x74, 0x46, 0x69, 0x99, 0x65, 0xd0, 0x6d, 0xd6, 0xa8, 0x8a, 0xbf, 0xa4, 0x9e, 0x8b, 0x4c, 0x5d, 0xa6, 0xbb, 0x92, 0x28, 0x51, 0x96, 0x9a, 0xdf, 0x96, 0x04, 0xb5, 0xac, 0xcf, 0xb5, 0x2a, 0x11, 0x4e, 0x77, 0xcc, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha256_12474_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12474_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xed, 0xff, 0xbc, 0x27, 0x0f, 0x72, 0x2c, 0x24, 0x30, 0x69, 0xa7, 0xe5, 0xf4, 0x03, 0x35, 0xa6, 0x1a, 0x58, 0x52, 0x5c, 0x7b, 0x4d, 0xb2, 0xe7, 0xa8, 0xe2, 0x69, 0x27, 0x4f, 0xfe, 0x4e, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12474 = { .name = "ecdsa_secp256r1_sha256_12474", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12474_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12474_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12474_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 144 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12475 for ECDSA, tcId is 145 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12475_pubkey[] = { 0x8f, 0xe5, 0xe8, 0x82, 0x43, 0xa7, 0x6e, 0x41, 0xa0, 0x04, 0x23, 0x62, 0x18, 0xa3, 0xc3, 0xa2, 0xd6, 0xee, 0xe3, 0x98, 0xa2, 0x3c, 0x3a, 0x0b, 0x00, 0x8d, 0x7f, 0x01, 0x64, 0xcb, 0xc0, 0xca, 0x98, 0xa2, 0x0d, 0x1b, 0xdc, 0xf5, 0x73, 0x51, 0x3c, 0x7c, 0xfd, 0x9b, 0x83, 0xc6, 0x3e, 0x3a, 0x82, 0xd4, 0x01, 0x27, 0xc8, 0x97, 0x69, 0x7c, 0x86, 0xb8, 0xcb, 0x38, 0x7a, 0xf7, 0xf2, 0x40, }; static const unsigned char ecdsa_secp256r1_sha256_12475_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12475_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xa2, 0x5a, 0xdc, 0xae, 0x10, 0x5e, 0xd7, 0xff, 0x4f, 0x95, 0xd2, 0x34, 0x4e, 0x24, 0xee, 0x52, 0x33, 0x14, 0xc3, 0xe1, 0x78, 0x52, 0x5d, 0x00, 0x79, 0x04, 0xb6, 0x89, 0x19, 0xba, 0x4d, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12475 = { .name = "ecdsa_secp256r1_sha256_12475", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12475_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12475_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12475_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 145 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12476 for ECDSA, tcId is 146 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12476_pubkey[] = { 0x02, 0x14, 0x82, 0x56, 0xb5, 0x30, 0xfb, 0xc4, 0x70, 0xc7, 0xb3, 0x41, 0x97, 0x0b, 0x38, 0x24, 0x3e, 0xce, 0xe6, 0xd5, 0xa8, 0x40, 0xa3, 0x7b, 0xec, 0xa2, 0xef, 0xb3, 0x7e, 0x8d, 0xff, 0x2c, 0xc0, 0xad, 0xbe, 0xa0, 0x88, 0x24, 0x82, 0xa7, 0x48, 0x9c, 0xa7, 0x03, 0xa3, 0x99, 0x86, 0x4b, 0xa9, 0x87, 0xee, 0xb6, 0xdd, 0xb7, 0x38, 0xaf, 0x53, 0xa8, 0x35, 0x73, 0x47, 0x3c, 0xb3, 0x0d, }; static const unsigned char ecdsa_secp256r1_sha256_12476_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12476_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x2e, 0x43, 0x48, 0xc6, 0x45, 0x70, 0x7d, 0xce, 0x67, 0x60, 0xd7, 0x73, 0xde, 0x3f, 0x3e, 0x87, 0x34, 0x69, 0x24, 0xb2, 0xf6, 0x4b, 0xd3, 0xdd, 0x02, 0x97, 0xe7, 0x66, 0xb5, 0x80, 0x5e, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12476 = { .name = "ecdsa_secp256r1_sha256_12476", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12476_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12476_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12476_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 146 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12477 for ECDSA, tcId is 147 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12477_pubkey[] = { 0xa3, 0x4d, 0xb0, 0x12, 0xce, 0x6e, 0xda, 0x1e, 0x9c, 0x73, 0x75, 0xc5, 0xfc, 0xf3, 0xe5, 0x4e, 0xd6, 0x98, 0xe1, 0x96, 0x15, 0x12, 0x42, 0x73, 0xb3, 0xa6, 0x21, 0xd0, 0x21, 0xc7, 0x6f, 0x8e, 0x77, 0x74, 0x58, 0xd6, 0xf5, 0x5a, 0x36, 0x4c, 0x22, 0x1e, 0x39, 0xe1, 0x20, 0x5d, 0x55, 0x10, 0xbb, 0x4f, 0xbb, 0x7d, 0xdf, 0x08, 0xd8, 0xd8, 0xfd, 0xde, 0x13, 0xd1, 0xd6, 0xdf, 0x7f, 0x14, }; static const unsigned char ecdsa_secp256r1_sha256_12477_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12477_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x34, 0x8c, 0x67, 0x3b, 0x07, 0xdc, 0xe3, 0x92, 0x0d, 0x77, 0x3d, 0xe3, 0xf3, 0xe8, 0x74, 0x08, 0x86, 0x9e, 0x91, 0x6d, 0xbc, 0xf7, 0x97, 0xd8, 0xf9, 0x68, 0x4f, 0xb6, 0x77, 0x53, 0xd1, 0xdc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12477 = { .name = "ecdsa_secp256r1_sha256_12477", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12477_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12477_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12477_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 147 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12478 for ECDSA, tcId is 148 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12478_pubkey[] = { 0xb9, 0x7a, 0xf3, 0xfe, 0x78, 0xbe, 0x15, 0xf2, 0x91, 0x2b, 0x62, 0x71, 0xdd, 0x8a, 0x43, 0xba, 0xdb, 0x6d, 0xd2, 0xa1, 0xb3, 0x15, 0xb2, 0xce, 0x7a, 0xe3, 0x7b, 0x4e, 0x77, 0x78, 0x04, 0x1d, 0x93, 0x0d, 0x71, 0xee, 0x19, 0x92, 0xd2, 0x46, 0x64, 0x95, 0xc4, 0x21, 0x02, 0xd0, 0x8e, 0x81, 0x15, 0x4c, 0x30, 0x53, 0x07, 0xd1, 0xdc, 0xd5, 0x2d, 0x0f, 0xa4, 0xc4, 0x79, 0xb2, 0x78, 0xe7, }; static const unsigned char ecdsa_secp256r1_sha256_12478_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12478_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x69, 0x18, 0xce, 0x76, 0x0f, 0xb9, 0xc7, 0x24, 0x1a, 0xee, 0x7b, 0xc7, 0xe7, 0xd0, 0xe8, 0x11, 0x0d, 0x3d, 0x22, 0xdb, 0x79, 0xef, 0x2f, 0xb1, 0xf2, 0xd0, 0x9f, 0x6c, 0xee, 0xa7, 0xa3, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12478 = { .name = "ecdsa_secp256r1_sha256_12478", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12478_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12478_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12478_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 148 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12479 for ECDSA, tcId is 149 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12479_pubkey[] = { 0x81, 0xe7, 0x19, 0x8a, 0x3c, 0x3f, 0x23, 0x90, 0x1c, 0xed, 0xc7, 0xa1, 0xd6, 0xef, 0xf6, 0xe9, 0xbf, 0x81, 0x10, 0x8e, 0x6c, 0x35, 0xcd, 0x85, 0x59, 0x13, 0x9a, 0xf3, 0x13, 0x5d, 0xbc, 0xbb, 0x9e, 0xf1, 0x56, 0x85, 0x30, 0x29, 0x1a, 0x80, 0x61, 0xb9, 0x0c, 0x9f, 0x42, 0x85, 0xee, 0xfc, 0xba, 0x99, 0x0d, 0x45, 0x70, 0xa4, 0xe3, 0xb7, 0xb7, 0x37, 0x52, 0x5b, 0x5d, 0x58, 0x00, 0x34, }; static const unsigned char ecdsa_secp256r1_sha256_12479_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12479_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x73, 0xb3, 0xc6, 0x94, 0x39, 0x1d, 0x8e, 0xad, 0xde, 0x3f, 0x3e, 0x87, 0x40, 0x89, 0x46, 0x47, 0x15, 0xac, 0x20, 0xe4, 0xc1, 0x26, 0xbb, 0xf6, 0xd8, 0x64, 0xd6, 0x48, 0x96, 0x9f, 0x5b, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12479 = { .name = "ecdsa_secp256r1_sha256_12479", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12479_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12479_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12479_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 149 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12480 for ECDSA, tcId is 150 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12480_pubkey[] = { 0xab, 0x4d, 0x79, 0x2c, 0xa1, 0x21, 0xd1, 0xdb, 0xa3, 0x9c, 0xb9, 0xde, 0x64, 0x51, 0x49, 0xc2, 0xab, 0x57, 0x3e, 0x8b, 0xec, 0xc6, 0xdd, 0xff, 0x3c, 0xc9, 0x96, 0x0f, 0x18, 0x8d, 0xdf, 0x73, 0x7f, 0x90, 0xba, 0x23, 0x66, 0x41, 0x53, 0xe9, 0x32, 0x62, 0xff, 0x73, 0x35, 0x54, 0x15, 0x19, 0x58, 0x58, 0xd7, 0xbe, 0x13, 0x15, 0xa6, 0x94, 0x56, 0x38, 0x6d, 0xe6, 0x82, 0x85, 0xa3, 0xc8, }; static const unsigned char ecdsa_secp256r1_sha256_12480_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12480_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x07, 0xac, 0x7a, 0x86, 0x94, 0x8c, 0x2c, 0x29, 0x89, 0xa1, 0x6d, 0xb1, 0x93, 0x0e, 0xf1, 0xb8, 0x9c, 0xe1, 0x12, 0x59, 0x51, 0x97, 0x65, 0x68, 0x77, 0xe5, 0x3c, 0x41, 0x45, 0x7f, 0x28, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12480 = { .name = "ecdsa_secp256r1_sha256_12480", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12480_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12480_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12480_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 150 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12481 for ECDSA, tcId is 151 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12481_pubkey[] = { 0x51, 0x84, 0x12, 0xb6, 0x9a, 0xf4, 0x3a, 0xae, 0x08, 0x44, 0x76, 0xa6, 0x8d, 0x59, 0xbb, 0xde, 0x51, 0xfb, 0xfa, 0x9e, 0x5b, 0xe8, 0x05, 0x63, 0xf5, 0x87, 0xc9, 0xc2, 0x65, 0x2f, 0x88, 0xef, 0x2d, 0x3b, 0x90, 0xd2, 0x5b, 0xaa, 0x6b, 0xdb, 0x7b, 0x0c, 0x55, 0xe5, 0x24, 0x0a, 0x3a, 0x98, 0xfb, 0xc2, 0x4a, 0xfe, 0xd8, 0x52, 0x3e, 0xde, 0xc1, 0xc7, 0x05, 0x03, 0xfc, 0x10, 0xf2, 0x33, }; static const unsigned char ecdsa_secp256r1_sha256_12481_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12481_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x27, 0xe4, 0xd8, 0x2c, 0xb6, 0xc0, 0x61, 0xdd, 0x93, 0x37, 0xc6, 0x9b, 0xf9, 0x33, 0x2e, 0xd3, 0xd1, 0x98, 0x66, 0x2d, 0x6f, 0x22, 0x99, 0x44, 0x3f, 0x62, 0xc8, 0x61, 0x18, 0x7d, 0xb6, 0x48, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12481 = { .name = "ecdsa_secp256r1_sha256_12481", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12481_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12481_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12481_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 151 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12482 for ECDSA, tcId is 152 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12482_pubkey[] = { 0xa0, 0x8f, 0x14, 0xa6, 0x44, 0xb9, 0xa9, 0x35, 0xdf, 0xfe, 0xa4, 0x76, 0x1e, 0xba, 0xf5, 0x92, 0xd1, 0xf6, 0x6f, 0xe6, 0xcd, 0x37, 0x3a, 0xa7, 0xf5, 0xd3, 0x70, 0xaf, 0x34, 0xf8, 0x35, 0x2d, 0xa5, 0x4b, 0x5b, 0xc4, 0x02, 0x5c, 0xf3, 0x35, 0x90, 0x0a, 0x91, 0x4c, 0x29, 0x34, 0xec, 0x2f, 0xec, 0x7a, 0x39, 0x6d, 0x0a, 0x7a, 0xff, 0xca, 0xd7, 0x32, 0xa5, 0x74, 0x1c, 0x7a, 0xaa, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_12482_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12482_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xe7, 0xc5, 0xcf, 0x3a, 0xac, 0x2e, 0x88, 0x92, 0x3b, 0x77, 0x85, 0x05, 0x15, 0xff, 0xf6, 0xa1, 0x2d, 0x13, 0xb3, 0x56, 0xdf, 0xe9, 0xec, 0x27, 0x5c, 0x3d, 0xd8, 0x1a, 0xe9, 0x46, 0x09, 0xa4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12482 = { .name = "ecdsa_secp256r1_sha256_12482", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12482_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12482_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12482_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 152 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12483 for ECDSA, tcId is 153 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12483_pubkey[] = { 0xcc, 0xf2, 0x29, 0x6a, 0x6a, 0x89, 0xb6, 0x2b, 0x90, 0x73, 0x9d, 0x38, 0xaf, 0x4a, 0xe3, 0xa2, 0x0e, 0x9f, 0x45, 0x71, 0x5b, 0x90, 0x04, 0x46, 0x39, 0x24, 0x10, 0x61, 0xe3, 0x3f, 0x8f, 0x8c, 0xaa, 0xce, 0x00, 0x46, 0x49, 0x1e, 0xea, 0xa1, 0xc6, 0xe9, 0xa4, 0x72, 0xb9, 0x6d, 0x88, 0xf4, 0xaf, 0x83, 0xe7, 0xff, 0x1b, 0xb8, 0x44, 0x38, 0xc7, 0xe0, 0x58, 0x03, 0x44, 0x12, 0xae, 0x08, }; static const unsigned char ecdsa_secp256r1_sha256_12483_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12483_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xc7, 0x78, 0x38, 0xdf, 0x91, 0xc1, 0xe9, 0x53, 0xe0, 0x16, 0xe1, 0x0b, 0xdd, 0xff, 0xea, 0x23, 0x17, 0xf9, 0xfe, 0xe3, 0x2b, 0xac, 0xfe, 0x55, 0x3c, 0xed, 0xe9, 0xe5, 0x7a, 0x74, 0x8f, 0x68, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12483 = { .name = "ecdsa_secp256r1_sha256_12483", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12483_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12483_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12483_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 153 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12484 for ECDSA, tcId is 154 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12484_pubkey[] = { 0x94, 0xb0, 0xfc, 0x15, 0x25, 0xbc, 0xab, 0xf8, 0x2b, 0x1f, 0x34, 0x89, 0x5e, 0x58, 0x19, 0xa0, 0x6c, 0x02, 0xb2, 0x3e, 0x04, 0x00, 0x22, 0x76, 0xe1, 0x65, 0xf9, 0x62, 0xc8, 0x6e, 0x39, 0x27, 0xbe, 0x7c, 0x2a, 0xb4, 0xd0, 0xb2, 0x53, 0x03, 0x20, 0x4f, 0xb3, 0x2a, 0x1f, 0x82, 0x92, 0x90, 0x27, 0x92, 0x22, 0x5e, 0x16, 0xa6, 0xd2, 0xdb, 0xfb, 0x29, 0xfb, 0xc8, 0x9a, 0x9c, 0x33, 0x76, }; static const unsigned char ecdsa_secp256r1_sha256_12484_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12484_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x8e, 0xf0, 0x71, 0xc0, 0x23, 0x83, 0xd2, 0xa6, 0xc0, 0x2d, 0xc2, 0x17, 0xbb, 0xff, 0xd4, 0x46, 0x73, 0x0d, 0x03, 0x18, 0xb0, 0x42, 0x5e, 0x25, 0x86, 0x22, 0x09, 0x07, 0xf8, 0x85, 0xf9, 0x7f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12484 = { .name = "ecdsa_secp256r1_sha256_12484", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12484_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12484_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12484_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 154 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12485 for ECDSA, tcId is 155 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12485_pubkey[] = { 0x53, 0x51, 0xf3, 0x7e, 0x1d, 0xe0, 0xc8, 0x8c, 0x50, 0x85, 0x27, 0xd8, 0x98, 0x82, 0xd1, 0x83, 0xcc, 0xdc, 0xf2, 0xef, 0xca, 0x40, 0x7e, 0xdb, 0x06, 0x27, 0xca, 0xdf, 0xd1, 0x6d, 0xe6, 0xec, 0x44, 0xb4, 0xb5, 0x7c, 0xdf, 0x96, 0x0d, 0x32, 0xeb, 0xcc, 0x4c, 0x97, 0x84, 0x7e, 0xed, 0x21, 0x84, 0x25, 0x85, 0x3b, 0x5b, 0x67, 0x5e, 0xb7, 0x81, 0xb7, 0x66, 0xa1, 0xa1, 0x30, 0x03, 0x49, }; static const unsigned char ecdsa_secp256r1_sha256_12485_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12485_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x56, 0x68, 0xaa, 0xa0, 0xb5, 0x45, 0xbb, 0xf9, 0xa0, 0x44, 0xa3, 0x23, 0x99, 0xff, 0xbe, 0x69, 0xce, 0x20, 0x07, 0x4e, 0x34, 0xd7, 0xbd, 0xf5, 0xcf, 0x56, 0x28, 0x2a, 0x76, 0x97, 0x63, 0x96, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12485 = { .name = "ecdsa_secp256r1_sha256_12485", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12485_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12485_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12485_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 155 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12486 for ECDSA, tcId is 156 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12486_pubkey[] = { 0x74, 0x8b, 0xba, 0xfc, 0x32, 0x0e, 0x67, 0x35, 0xcb, 0x64, 0x01, 0x97, 0x10, 0xa2, 0x69, 0xc6, 0xc2, 0xb5, 0xd1, 0x47, 0xbd, 0xc8, 0x31, 0x32, 0x5c, 0xb2, 0xfb, 0x27, 0x6a, 0xc9, 0x71, 0xa6, 0x9d, 0x65, 0x5e, 0x9a, 0x75, 0x5b, 0xc9, 0xd8, 0x00, 0xad, 0x21, 0xee, 0x3f, 0xd4, 0xd9, 0x80, 0xd9, 0x3a, 0x7a, 0x49, 0xa8, 0xc5, 0xcc, 0xd3, 0x70, 0x05, 0x17, 0x75, 0x78, 0xf5, 0x11, 0x63, }; static const unsigned char ecdsa_secp256r1_sha256_12486_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12486_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xd1, 0x2d, 0x6e, 0x56, 0x88, 0x2f, 0x6c, 0x00, 0x27, 0xca, 0xe9, 0x1a, 0x27, 0x12, 0x77, 0x28, 0xf7, 0xfd, 0xdf, 0x47, 0x8f, 0xb4, 0xfd, 0xc2, 0xb6, 0x5f, 0x40, 0xa6, 0x0b, 0x0e, 0xb9, 0x52, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12486 = { .name = "ecdsa_secp256r1_sha256_12486", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12486_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12486_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12486_sig, .siglen = 64, .result = 1, .comment = "edge case for u1, tcId is 156 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12487 for ECDSA, tcId is 157 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12487_pubkey[] = { 0x14, 0xb3, 0xbb, 0xd7, 0x5c, 0x5e, 0x1c, 0x0c, 0x36, 0x53, 0x5a, 0x93, 0x4d, 0x4a, 0xb8, 0x51, 0x12, 0x41, 0x0b, 0x3b, 0x90, 0xfa, 0x97, 0xa3, 0x1c, 0x33, 0x03, 0x89, 0x64, 0xfd, 0x85, 0xcc, 0x11, 0x2f, 0x7d, 0x83, 0x7f, 0x8f, 0x9c, 0x36, 0xb4, 0x60, 0xd6, 0x36, 0xc9, 0x65, 0xa5, 0xf8, 0x18, 0xf2, 0xb5, 0x0c, 0x5d, 0x00, 0xfb, 0x3f, 0x97, 0x05, 0x56, 0x1d, 0xd6, 0x63, 0x18, 0x83, }; static const unsigned char ecdsa_secp256r1_sha256_12487_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12487_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xaa, 0xaa, 0xaa, 0xaa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0xa2, 0x53, 0x8f, 0x37, 0xb2, 0x8a, 0x2c, 0x51, 0x3d, 0xee, 0x40, 0xfe, 0xcb, 0xb7, 0x1a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12487 = { .name = "ecdsa_secp256r1_sha256_12487", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12487_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12487_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12487_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 157 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12488 for ECDSA, tcId is 158 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12488_pubkey[] = { 0xd8, 0x23, 0x53, 0x3c, 0x04, 0xcd, 0x8e, 0xdc, 0x6d, 0x6f, 0x95, 0x0a, 0x8e, 0x08, 0xad, 0xe0, 0x4a, 0x9b, 0xaf, 0xa2, 0xf1, 0x4a, 0x59, 0x03, 0x56, 0x93, 0x56, 0x71, 0xae, 0x93, 0x05, 0xbf, 0x43, 0x17, 0x8d, 0x1f, 0x88, 0xb6, 0xa5, 0x7a, 0x96, 0x92, 0x4c, 0x26, 0x5f, 0x0d, 0xdb, 0x75, 0xb5, 0x83, 0x12, 0x90, 0x7b, 0x19, 0x5a, 0xcb, 0x59, 0xd7, 0x79, 0x73, 0x03, 0x12, 0x37, 0x75, }; static const unsigned char ecdsa_secp256r1_sha256_12488_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12488_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb6, 0x2f, 0x26, 0xb5, 0xf2, 0xa2, 0xb2, 0x6f, 0x6d, 0xe8, 0x6d, 0x42, 0xad, 0x8a, 0x13, 0xda, 0x3a, 0xb3, 0xcc, 0xcd, 0x04, 0x59, 0xb2, 0x01, 0xde, 0x00, 0x9e, 0x52, 0x6a, 0xdf, 0x21, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12488 = { .name = "ecdsa_secp256r1_sha256_12488", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12488_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12488_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12488_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 158 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12489 for ECDSA, tcId is 159 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12489_pubkey[] = { 0xdb, 0x2b, 0x34, 0x08, 0xb3, 0x16, 0x7d, 0x91, 0x03, 0x06, 0x24, 0xc6, 0x32, 0x8e, 0x8c, 0xe3, 0xec, 0x10, 0x8c, 0x10, 0x55, 0x75, 0xc2, 0xf3, 0xd2, 0x09, 0xb9, 0x2e, 0x65, 0x4b, 0xab, 0x69, 0xc3, 0x43, 0x18, 0x13, 0x9c, 0x50, 0xb0, 0x80, 0x2c, 0x6e, 0x61, 0x2f, 0x0f, 0xd3, 0x18, 0x9d, 0x80, 0x0d, 0xf7, 0xc9, 0x96, 0xd5, 0xd7, 0xb7, 0xc3, 0xd6, 0xbe, 0x82, 0x83, 0x6f, 0xa2, 0x58, }; static const unsigned char ecdsa_secp256r1_sha256_12489_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12489_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbb, 0x1d, 0x9a, 0xc9, 0x49, 0xdd, 0x74, 0x8c, 0xd0, 0x2b, 0xbb, 0xe7, 0x49, 0xbd, 0x35, 0x1c, 0xd5, 0x7b, 0x38, 0xbb, 0x61, 0x40, 0x3d, 0x70, 0x06, 0x86, 0xaa, 0x7b, 0x4c, 0x90, 0x85, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12489 = { .name = "ecdsa_secp256r1_sha256_12489", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12489_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12489_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12489_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 159 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12490 for ECDSA, tcId is 160 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12490_pubkey[] = { 0x09, 0x17, 0x9c, 0xe7, 0xc5, 0x92, 0x25, 0x39, 0x22, 0x16, 0x45, 0x3b, 0x2a, 0xc1, 0xe9, 0xd1, 0x78, 0xc2, 0x48, 0x37, 0xdf, 0xae, 0x26, 0xbc, 0x1d, 0xd7, 0xab, 0x60, 0x63, 0x85, 0x27, 0x42, 0x55, 0x56, 0xb4, 0x2e, 0x33, 0x02, 0x89, 0xf3, 0xb8, 0x26, 0xb2, 0xdb, 0x7a, 0x86, 0xd1, 0x9d, 0x45, 0xc2, 0x86, 0x0a, 0x59, 0xf2, 0xbe, 0x1d, 0xdc, 0xc3, 0xb6, 0x91, 0xf9, 0x5a, 0x92, 0x55, }; static const unsigned char ecdsa_secp256r1_sha256_12490_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12490_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x66, 0x75, 0x5a, 0x00, 0x63, 0x8c, 0xda, 0xec, 0x1c, 0x73, 0x25, 0x13, 0xca, 0x02, 0x34, 0xec, 0xe5, 0x25, 0x45, 0xda, 0xc1, 0x1f, 0x81, 0x6e, 0x81, 0x8f, 0x72, 0x5b, 0x4f, 0x60, 0xaa, 0xf2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12490 = { .name = "ecdsa_secp256r1_sha256_12490", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12490_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12490_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12490_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 160 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12491 for ECDSA, tcId is 161 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12491_pubkey[] = { 0x01, 0x95, 0x9f, 0xb8, 0xde, 0xda, 0x56, 0xe5, 0x46, 0x7b, 0x7e, 0x4b, 0x21, 0x4e, 0xa4, 0xc2, 0xd0, 0xc2, 0xfb, 0x29, 0xd7, 0x0f, 0xf1, 0x9b, 0x6b, 0x1e, 0xcc, 0xeb, 0xd6, 0x56, 0x8d, 0x7e, 0xd9, 0xdb, 0xd7, 0x7a, 0x91, 0x82, 0x97, 0xfd, 0x97, 0x0b, 0xff, 0x01, 0xe1, 0x34, 0x3f, 0x69, 0x25, 0x16, 0x7d, 0xb5, 0xa1, 0x4d, 0x09, 0x8a, 0x21, 0x1c, 0x39, 0xcc, 0x3a, 0x41, 0x33, 0x98, }; static const unsigned char ecdsa_secp256r1_sha256_12491_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12491_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x55, 0xa0, 0x0c, 0x9f, 0xcd, 0xae, 0xbb, 0x60, 0x32, 0x51, 0x3c, 0xa0, 0x23, 0x4e, 0xcf, 0xff, 0xe9, 0x8e, 0xbe, 0x49, 0x2f, 0xdf, 0x02, 0xe4, 0x8c, 0xa4, 0x8e, 0x98, 0x2b, 0xeb, 0x36, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12491 = { .name = "ecdsa_secp256r1_sha256_12491", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12491_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12491_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12491_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 161 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12492 for ECDSA, tcId is 162 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12492_pubkey[] = { 0x56, 0x7f, 0x1f, 0xdc, 0x38, 0x7e, 0x53, 0x50, 0xc8, 0x52, 0xb4, 0xe8, 0xf8, 0xba, 0x9d, 0x6d, 0x94, 0x7e, 0x1c, 0x5d, 0xd7, 0xcc, 0xc6, 0x1a, 0x59, 0x38, 0x24, 0x5d, 0xd6, 0xbc, 0xab, 0x3a, 0x99, 0x60, 0xbe, 0xba, 0xf9, 0x19, 0x51, 0x4f, 0x95, 0x35, 0xc2, 0x2e, 0xaa, 0xf0, 0xb5, 0x81, 0x28, 0x57, 0x97, 0x0e, 0x26, 0x66, 0x22, 0x67, 0xb1, 0xf3, 0xeb, 0x10, 0x11, 0x13, 0x0a, 0x11, }; static const unsigned char ecdsa_secp256r1_sha256_12492_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12492_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xab, 0x40, 0x19, 0x3f, 0x9b, 0x5d, 0x76, 0xc0, 0x64, 0xa2, 0x79, 0x40, 0x46, 0x9d, 0x9f, 0xff, 0xd3, 0x1d, 0x7c, 0x92, 0x5f, 0xbe, 0x05, 0xc9, 0x19, 0x49, 0x1d, 0x30, 0x57, 0xd6, 0x6c, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12492 = { .name = "ecdsa_secp256r1_sha256_12492", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12492_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12492_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12492_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 162 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12493 for ECDSA, tcId is 163 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12493_pubkey[] = { 0x34, 0x99, 0xf9, 0x74, 0xff, 0x4c, 0xa6, 0xbb, 0xb2, 0xf5, 0x16, 0x82, 0xfd, 0x5f, 0x51, 0x76, 0x2f, 0x9d, 0xd6, 0xdd, 0x28, 0x55, 0x26, 0x26, 0x60, 0xb3, 0x6d, 0x46, 0xd3, 0xe4, 0xbe, 0xc2, 0xf4, 0x98, 0xfa, 0xe2, 0x48, 0x78, 0x07, 0xe2, 0x20, 0x11, 0x91, 0x52, 0xf0, 0x12, 0x24, 0x76, 0xc6, 0x4d, 0x4f, 0xa4, 0x6d, 0xdc, 0xe8, 0x5c, 0x45, 0x46, 0x63, 0x0f, 0x0d, 0x5c, 0x5e, 0x81, }; static const unsigned char ecdsa_secp256r1_sha256_12493_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12493_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xca, 0x02, 0x34, 0xeb, 0xb5, 0xfd, 0xcb, 0x13, 0xca, 0x02, 0x34, 0xec, 0xff, 0xff, 0xff, 0xff, 0xcb, 0x0d, 0xad, 0xbb, 0xc7, 0xf5, 0x49, 0xf8, 0xa2, 0x6b, 0x44, 0x08, 0xd0, 0xdc, 0x86, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12493 = { .name = "ecdsa_secp256r1_sha256_12493", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12493_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12493_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12493_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 163 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12494 for ECDSA, tcId is 164 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12494_pubkey[] = { 0x2c, 0x5c, 0x01, 0x66, 0x2c, 0xf0, 0x0c, 0x19, 0x29, 0x59, 0x62, 0x57, 0xdb, 0x13, 0xb2, 0x6e, 0xcf, 0x30, 0xd0, 0xf3, 0xec, 0x4b, 0x9f, 0x03, 0x51, 0xb0, 0xf2, 0x70, 0x94, 0x47, 0x34, 0x26, 0xe9, 0x86, 0xa0, 0x86, 0x06, 0x0d, 0x08, 0x6e, 0xee, 0x82, 0x2d, 0xdd, 0x2f, 0xc7, 0x44, 0x24, 0x7a, 0x01, 0x54, 0xb5, 0x7f, 0x7a, 0x69, 0xc5, 0x1d, 0x9f, 0xda, 0xfa, 0x48, 0x4e, 0x4a, 0xc7, }; static const unsigned char ecdsa_secp256r1_sha256_12494_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12494_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x3e, 0xa3, 0x67, 0x7e, 0x08, 0x2b, 0x93, 0x10, 0x57, 0x26, 0x20, 0xae, 0x19, 0x93, 0x3a, 0x9e, 0x65, 0xb2, 0x85, 0x59, 0x87, 0x11, 0xc7, 0x72, 0x98, 0x81, 0x5a, 0xd3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12494 = { .name = "ecdsa_secp256r1_sha256_12494", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12494_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12494_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12494_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 164 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12495 for ECDSA, tcId is 165 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12495_pubkey[] = { 0x91, 0xd4, 0xcb, 0xa8, 0x13, 0xa0, 0x4d, 0x86, 0xdb, 0xae, 0x94, 0xc2, 0x3b, 0xe6, 0xf5, 0x2c, 0x15, 0x77, 0x41, 0x83, 0xbe, 0x7b, 0xa5, 0xb2, 0xd9, 0xf3, 0xcf, 0x01, 0x0b, 0x16, 0x05, 0x01, 0x90, 0x0b, 0x8a, 0xdf, 0xea, 0x64, 0x91, 0x01, 0x9a, 0x9a, 0xc0, 0x80, 0xd5, 0x16, 0x02, 0x5a, 0x54, 0x1b, 0xf4, 0xb9, 0x52, 0xb0, 0xad, 0x7b, 0xe4, 0xb1, 0x87, 0x4b, 0x02, 0xfd, 0x54, 0x4a, }; static const unsigned char ecdsa_secp256r1_sha256_12495_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12495_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x26, 0x66, 0x66, 0x66, 0x3b, 0xbb, 0xbb, 0xbb, 0xe6, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x5b, 0x37, 0x90, 0x2e, 0x02, 0x3f, 0xab, 0x7c, 0x8f, 0x05, 0x5d, 0x86, 0xe5, 0xcc, 0x41, 0xf4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12495 = { .name = "ecdsa_secp256r1_sha256_12495", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12495_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12495_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12495_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 165 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12496 for ECDSA, tcId is 166 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12496_pubkey[] = { 0xef, 0x7f, 0xd0, 0xa3, 0xa3, 0x63, 0x86, 0x63, 0x83, 0x30, 0xec, 0xad, 0x41, 0xe1, 0xa3, 0xb3, 0x02, 0xaf, 0x36, 0x96, 0x08, 0x31, 0xd0, 0x21, 0x0c, 0x61, 0x4b, 0x94, 0x8e, 0x8a, 0xa1, 0x24, 0xef, 0x0d, 0x6d, 0x80, 0x0e, 0x40, 0x47, 0xd6, 0xd3, 0xc1, 0xbe, 0x0f, 0xde, 0xaf, 0x11, 0xfc, 0xd8, 0xca, 0xb5, 0xab, 0x59, 0xc7, 0x30, 0xeb, 0x34, 0x11, 0x6e, 0x35, 0xa8, 0xc7, 0xd0, 0x98, }; static const unsigned char ecdsa_secp256r1_sha256_12496_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12496_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x36, 0xdb, 0x6d, 0xb7, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x14, 0x6c, 0x57, 0x3f, 0x4c, 0x6d, 0xfc, 0x8d, 0x08, 0xa4, 0x43, 0xe2, 0x58, 0x97, 0x0b, 0x09, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12496 = { .name = "ecdsa_secp256r1_sha256_12496", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12496_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12496_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12496_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 166 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12497 for ECDSA, tcId is 167 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12497_pubkey[] = { 0xa5, 0x21, 0xda, 0xb1, 0x3c, 0xc9, 0x15, 0x2d, 0x8c, 0xa7, 0x70, 0x35, 0xa6, 0x07, 0xfe, 0xa0, 0x6c, 0x55, 0xcc, 0x3c, 0xa5, 0xdb, 0xeb, 0x86, 0x8c, 0xea, 0x92, 0xea, 0xfe, 0x93, 0xdf, 0x2a, 0x7b, 0xfb, 0x9b, 0x28, 0x53, 0x19, 0x96, 0x63, 0x5e, 0x6a, 0x5c, 0xca, 0xa2, 0x82, 0x6a, 0x40, 0x6c, 0xe1, 0x11, 0x1b, 0xdb, 0x9c, 0x2e, 0x0c, 0xa3, 0x65, 0x00, 0x41, 0x8a, 0x2f, 0x43, 0xde, }; static const unsigned char ecdsa_secp256r1_sha256_12497_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12497_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xbf, 0xff, 0xff, 0xff, 0x2a, 0xaa, 0xaa, 0xab, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc8, 0x15, 0xd0, 0xe6, 0x0b, 0x3e, 0x59, 0x6e, 0xcb, 0x1a, 0xd3, 0xa2, 0x7c, 0xfd, 0x49, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12497 = { .name = "ecdsa_secp256r1_sha256_12497", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12497_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12497_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12497_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 167 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12498 for ECDSA, tcId is 168 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12498_pubkey[] = { 0x47, 0x4d, 0x58, 0xa4, 0xee, 0xc1, 0x6e, 0x0d, 0x56, 0x5f, 0x21, 0x87, 0xfe, 0x11, 0xd4, 0xe8, 0xe7, 0xa2, 0x68, 0x3a, 0x12, 0xf3, 0x8b, 0x4f, 0xc0, 0x1d, 0x12, 0x37, 0xa8, 0x1a, 0x10, 0x97, 0x6e, 0x55, 0xf7, 0x3b, 0xb7, 0xcd, 0xda, 0x46, 0xbd, 0xb6, 0x7e, 0xf7, 0x7f, 0x6f, 0xd2, 0x96, 0x9d, 0xf2, 0xb6, 0x79, 0x20, 0xfb, 0x59, 0x45, 0xfd, 0xe3, 0xa5, 0x17, 0xa6, 0xde, 0xd4, 0xcd, }; static const unsigned char ecdsa_secp256r1_sha256_12498_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12498_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0x55, 0x55, 0x55, 0x55, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x44, 0xa7, 0x1e, 0x6f, 0x65, 0x14, 0x58, 0xa2, 0x7b, 0xdc, 0x81, 0xfd, 0x97, 0x6e, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12498 = { .name = "ecdsa_secp256r1_sha256_12498", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12498_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12498_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12498_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 168 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12499 for ECDSA, tcId is 169 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12499_pubkey[] = { 0x69, 0x2d, 0xa5, 0xcd, 0x43, 0x09, 0xd9, 0xa6, 0xe5, 0xcb, 0x52, 0x5c, 0x37, 0xda, 0x8f, 0xa0, 0x87, 0x9f, 0x7b, 0x57, 0x20, 0x8c, 0xda, 0xbb, 0xf4, 0x7d, 0x22, 0x3a, 0x5b, 0x23, 0xa6, 0x21, 0x40, 0xe0, 0xda, 0xa7, 0x8c, 0xfd, 0xd2, 0x07, 0xa7, 0x38, 0x9a, 0xae, 0xd6, 0x17, 0x38, 0xb1, 0x7f, 0xc5, 0xfc, 0x3e, 0x6a, 0x5e, 0xd3, 0x39, 0x7d, 0x29, 0x02, 0xe9, 0x12, 0x5e, 0x6a, 0xb4, }; static const unsigned char ecdsa_secp256r1_sha256_12499_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12499_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0x73, 0x7d, 0x56, 0xd3, 0x8b, 0xcf, 0x42, 0x79, 0xdc, 0xe5, 0x61, 0x7e, 0x31, 0x92, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12499 = { .name = "ecdsa_secp256r1_sha256_12499", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12499_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12499_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12499_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 169 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12500 for ECDSA, tcId is 170 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12500_pubkey[] = { 0x85, 0x68, 0x9b, 0x3e, 0x07, 0x75, 0xc7, 0x71, 0x8a, 0x90, 0x27, 0x9f, 0x14, 0xa8, 0x08, 0x2c, 0xfc, 0xd4, 0xd1, 0xf1, 0x67, 0x92, 0x74, 0xf4, 0xe9, 0xb8, 0x80, 0x5c, 0x57, 0x0a, 0x06, 0x70, 0x16, 0x7f, 0xcc, 0x5c, 0xa7, 0x34, 0x55, 0x2e, 0x09, 0xaf, 0xa3, 0x64, 0x0f, 0x4a, 0x03, 0x4e, 0x15, 0xb9, 0xb7, 0xca, 0x66, 0x1e, 0xc7, 0xff, 0x70, 0xd3, 0xf2, 0x40, 0xeb, 0xe7, 0x05, 0xb1, }; static const unsigned char ecdsa_secp256r1_sha256_12500_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12500_sig[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x5d, 0x8e, 0xcd, 0x64, 0xa4, 0xee, 0xba, 0x46, 0x68, 0x15, 0xdd, 0xf3, 0xa4, 0xde, 0x9a, 0x8e, 0x6a, 0xbd, 0x9c, 0x5d, 0xb0, 0xa0, 0x1e, 0xb8, 0x03, 0x43, 0x55, 0x3d, 0xa6, 0x48, 0x42, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12500 = { .name = "ecdsa_secp256r1_sha256_12500", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12500_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12500_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12500_sig, .siglen = 64, .result = 1, .comment = "edge case for u2, tcId is 170 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12501 for ECDSA, tcId is 171 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12501_pubkey[] = { 0x01, 0x58, 0x13, 0x77, 0x55, 0xb9, 0x01, 0xf7, 0x97, 0xa9, 0x0d, 0x4c, 0xa8, 0x88, 0x7e, 0x02, 0x3c, 0xb2, 0xef, 0x63, 0xb2, 0xba, 0x2c, 0x0d, 0x45, 0x5e, 0xda, 0xef, 0x42, 0xcf, 0x23, 0x7e, 0x2a, 0x96, 0x4f, 0xc0, 0x0d, 0x37, 0x7a, 0x85, 0x92, 0xb8, 0xb6, 0x1a, 0xaf, 0xa7, 0xa4, 0xaa, 0xa7, 0xc7, 0xb9, 0xfd, 0x2b, 0x41, 0xd6, 0xe0, 0xe1, 0x7b, 0xd1, 0xba, 0x56, 0x77, 0xed, 0xcd, }; static const unsigned char ecdsa_secp256r1_sha256_12501_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12501_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xf2, 0x1d, 0x90, 0x7e, 0x38, 0x90, 0x91, 0x6d, 0xc4, 0xfa, 0x1f, 0x47, 0x03, 0xc1, 0xe5, 0x0d, 0x3f, 0x54, 0xdd, 0xf7, 0x38, 0x3e, 0x44, 0x02, 0x3a, 0x41, 0xde, 0x56, 0x2a, 0xa1, 0x8e, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12501 = { .name = "ecdsa_secp256r1_sha256_12501", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12501_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12501_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12501_sig, .siglen = 64, .result = 1, .comment = "point duplication during verification, tcId is 171 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12502 for ECDSA, tcId is 172 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12502_pubkey[] = { 0x01, 0x58, 0x13, 0x77, 0x55, 0xb9, 0x01, 0xf7, 0x97, 0xa9, 0x0d, 0x4c, 0xa8, 0x88, 0x7e, 0x02, 0x3c, 0xb2, 0xef, 0x63, 0xb2, 0xba, 0x2c, 0x0d, 0x45, 0x5e, 0xda, 0xef, 0x42, 0xcf, 0x23, 0x7e, 0xd5, 0x69, 0xb0, 0x3e, 0xf2, 0xc8, 0x85, 0x7b, 0x6d, 0x47, 0x49, 0xe5, 0x50, 0x58, 0x5b, 0x55, 0x58, 0x38, 0x46, 0x03, 0xd4, 0xbe, 0x29, 0x1f, 0x1e, 0x84, 0x2e, 0x45, 0xa9, 0x88, 0x12, 0x32, }; static const unsigned char ecdsa_secp256r1_sha256_12502_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12502_sig[] = { 0x6f, 0x23, 0x47, 0xca, 0xb7, 0xdd, 0x76, 0x85, 0x8f, 0xe0, 0x55, 0x5a, 0xc3, 0xbc, 0x99, 0x04, 0x8c, 0x4a, 0xac, 0xaf, 0xdf, 0xb6, 0xbc, 0xbe, 0x05, 0xea, 0x6c, 0x42, 0xc4, 0x93, 0x45, 0x69, 0xf2, 0x1d, 0x90, 0x7e, 0x38, 0x90, 0x91, 0x6d, 0xc4, 0xfa, 0x1f, 0x47, 0x03, 0xc1, 0xe5, 0x0d, 0x3f, 0x54, 0xdd, 0xf7, 0x38, 0x3e, 0x44, 0x02, 0x3a, 0x41, 0xde, 0x56, 0x2a, 0xa1, 0x8e, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12502 = { .name = "ecdsa_secp256r1_sha256_12502", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12502_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12502_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12502_sig, .siglen = 64, .result = -1, .comment = "duplication bug, tcId is 172 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12503 for ECDSA, tcId is 173 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12503_pubkey[] = { 0x38, 0xa0, 0x84, 0xff, 0xcc, 0xc4, 0xae, 0x2f, 0x82, 0x04, 0xbe, 0x2a, 0xbc, 0xa9, 0xfb, 0x8a, 0xd4, 0xab, 0x28, 0x3b, 0x2a, 0xa5, 0x0f, 0x13, 0xb6, 0xbb, 0x23, 0x47, 0xad, 0xab, 0xc6, 0x9c, 0xa6, 0x99, 0x79, 0x9b, 0x77, 0xb1, 0xcc, 0x6d, 0xad, 0x27, 0x1e, 0x88, 0xb8, 0x99, 0xc1, 0x29, 0x31, 0x98, 0x6e, 0x95, 0x8e, 0x1f, 0x5c, 0xf5, 0x65, 0x3d, 0xdd, 0xf7, 0x38, 0x93, 0x65, 0xe2, }; static const unsigned char ecdsa_secp256r1_sha256_12503_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12503_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12503 = { .name = "ecdsa_secp256r1_sha256_12503", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12503_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12503_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12503_sig, .siglen = 64, .result = -1, .comment = "point with x-coordinate 0, tcId is 173 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12504 for ECDSA, tcId is 174 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12504_pubkey[] = { 0x7a, 0x87, 0x6f, 0xbf, 0x82, 0x1d, 0x96, 0xc5, 0x55, 0xc3, 0x53, 0x93, 0xd3, 0xb2, 0xd2, 0xe8, 0x09, 0xa6, 0xd8, 0x39, 0xb0, 0xb1, 0x15, 0xd9, 0x64, 0xda, 0x3e, 0x91, 0x9e, 0xf8, 0x25, 0x04, 0x73, 0x3d, 0xcf, 0x41, 0xd8, 0x33, 0xb0, 0x53, 0x0b, 0x87, 0xa7, 0xb1, 0xa5, 0x2f, 0x7d, 0x91, 0xbf, 0xa1, 0x99, 0x13, 0xf7, 0x15, 0x18, 0x86, 0x91, 0x3b, 0x16, 0x0d, 0xe0, 0x7c, 0xd6, 0x9b, }; static const unsigned char ecdsa_secp256r1_sha256_12504_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12504_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12504 = { .name = "ecdsa_secp256r1_sha256_12504", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12504_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12504_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12504_sig, .siglen = 66, .result = -1, .comment = "point with x-coordinate 0, tcId is 174 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12505 for ECDSA, tcId is 175 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12505_pubkey[] = { 0x66, 0x4c, 0xe2, 0x73, 0x32, 0x0d, 0x91, 0x8d, 0x8b, 0xdb, 0x2e, 0x61, 0x20, 0x1b, 0x45, 0x49, 0xb3, 0x6b, 0x7c, 0xdc, 0x54, 0xe3, 0x3b, 0x84, 0xad, 0xb6, 0xf2, 0xc1, 0x0a, 0xac, 0x83, 0x1e, 0x49, 0xe6, 0x88, 0x31, 0xf1, 0x8b, 0xda, 0x29, 0x73, 0xac, 0x3d, 0x76, 0xbf, 0xbc, 0x8c, 0x5e, 0xe1, 0xcc, 0xee, 0xd2, 0xdd, 0x86, 0x2e, 0x2d, 0xc7, 0xc9, 0x15, 0xc7, 0x36, 0xce, 0xf1, 0xf4, }; static const unsigned char ecdsa_secp256r1_sha256_12505_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12505_sig[] = { 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12505 = { .name = "ecdsa_secp256r1_sha256_12505", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12505_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12505_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12505_sig, .siglen = 64, .result = -1, .comment = "comparison with point at infinity , tcId is 175 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12506 for ECDSA, tcId is 176 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12506_pubkey[] = { 0x96, 0x16, 0x91, 0xa5, 0xe9, 0x60, 0xd0, 0x7a, 0x30, 0x1d, 0xbb, 0xad, 0x4d, 0x86, 0x24, 0x7e, 0xc2, 0x7d, 0x70, 0x89, 0xfa, 0xeb, 0x3d, 0xdd, 0x1a, 0xdd, 0x39, 0x5e, 0xff, 0xf1, 0xe0, 0xfe, 0x72, 0x54, 0x62, 0x2c, 0xc3, 0x71, 0x86, 0x6c, 0xdf, 0x99, 0x0d, 0x2c, 0x53, 0x77, 0x79, 0x0e, 0x37, 0xd1, 0xf1, 0x51, 0x98, 0x17, 0xf0, 0x9a, 0x23, 0x1b, 0xd2, 0x60, 0xa9, 0xe7, 0x8a, 0xeb, }; static const unsigned char ecdsa_secp256r1_sha256_12506_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12506_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12506 = { .name = "ecdsa_secp256r1_sha256_12506", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12506_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12506_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12506_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 176 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12507 for ECDSA, tcId is 177 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12507_pubkey[] = { 0x5d, 0x28, 0x3e, 0x13, 0xce, 0x8c, 0xa6, 0x0d, 0xa8, 0x68, 0xe3, 0xb0, 0xfb, 0x33, 0xe6, 0xb4, 0xf1, 0x07, 0x47, 0x93, 0x27, 0x4e, 0x29, 0x28, 0x25, 0x0e, 0x71, 0xe2, 0xac, 0xa6, 0x3e, 0x9c, 0x21, 0x4d, 0xc7, 0x4f, 0xa2, 0x53, 0x71, 0xfb, 0x4d, 0x9e, 0x50, 0x6d, 0x41, 0x8e, 0xd9, 0xa1, 0xbf, 0xd6, 0xd0, 0xc8, 0xbb, 0x65, 0x91, 0xd3, 0xe0, 0xf4, 0x45, 0x05, 0xa8, 0x48, 0x86, 0xce, }; static const unsigned char ecdsa_secp256r1_sha256_12507_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12507_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12507 = { .name = "ecdsa_secp256r1_sha256_12507", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12507_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12507_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12507_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 177 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12508 for ECDSA, tcId is 178 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12508_pubkey[] = { 0x0f, 0xc3, 0x51, 0xda, 0x03, 0x8a, 0xe0, 0x80, 0x3b, 0xd1, 0xd8, 0x65, 0x14, 0xae, 0x04, 0x62, 0xf9, 0xf8, 0x21, 0x65, 0x51, 0xd9, 0x31, 0x5a, 0xa9, 0xd2, 0x97, 0xf7, 0x92, 0xee, 0xf6, 0xa3, 0x41, 0xc7, 0x4e, 0xed, 0x78, 0x6f, 0x2d, 0x33, 0xda, 0x35, 0x36, 0x0c, 0xa7, 0xaa, 0x92, 0x5e, 0x75, 0x3f, 0x00, 0xd6, 0x07, 0x7a, 0x1e, 0x9e, 0x5f, 0xc3, 0x39, 0xd6, 0x34, 0x01, 0x9c, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12508_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12508_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12508 = { .name = "ecdsa_secp256r1_sha256_12508", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12508_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12508_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12508_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 178 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12509 for ECDSA, tcId is 179 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12509_pubkey[] = { 0xa1, 0xe3, 0x4c, 0x8f, 0x16, 0xd1, 0x38, 0x67, 0x3f, 0xee, 0x55, 0xc0, 0x80, 0x54, 0x7c, 0x2b, 0xfd, 0x4d, 0xe7, 0x55, 0x00, 0x65, 0xf6, 0x38, 0x32, 0x2b, 0xba, 0x94, 0x30, 0xce, 0x4b, 0x60, 0x66, 0x2b, 0xe9, 0xbb, 0x51, 0x26, 0x63, 0xaa, 0x4d, 0x7d, 0xf8, 0xab, 0x3f, 0x3b, 0x41, 0x81, 0xc5, 0xd4, 0x4a, 0x7b, 0xdf, 0x42, 0x43, 0x66, 0x20, 0xb7, 0xd8, 0xa6, 0xb8, 0x1a, 0xc9, 0x36, }; static const unsigned char ecdsa_secp256r1_sha256_12509_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12509_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12509 = { .name = "ecdsa_secp256r1_sha256_12509", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12509_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12509_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12509_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 179 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12510 for ECDSA, tcId is 180 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12510_pubkey[] = { 0x7e, 0x1a, 0x8a, 0x83, 0x38, 0xd7, 0xfd, 0x8c, 0xf4, 0x1d, 0x32, 0x2a, 0x30, 0x2d, 0x20, 0x78, 0xa8, 0x7a, 0x23, 0xc7, 0x18, 0x61, 0x50, 0xed, 0x7c, 0xda, 0x6e, 0x52, 0x81, 0x7c, 0x1b, 0xdf, 0xd0, 0xa9, 0x13, 0x5a, 0x89, 0xd2, 0x1c, 0xe8, 0x21, 0xe2, 0x90, 0x14, 0xb2, 0x89, 0x83, 0x49, 0x25, 0x4d, 0x74, 0x82, 0x72, 0xb2, 0xd4, 0xeb, 0x8d, 0x59, 0xee, 0x34, 0xc6, 0x15, 0x37, 0x7f, }; static const unsigned char ecdsa_secp256r1_sha256_12510_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12510_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12510 = { .name = "ecdsa_secp256r1_sha256_12510", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12510_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12510_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12510_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 180 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12511 for ECDSA, tcId is 181 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12511_pubkey[] = { 0x5c, 0x19, 0xfe, 0x22, 0x7a, 0x61, 0xab, 0xc6, 0x5c, 0x61, 0xee, 0x7a, 0x01, 0x8c, 0xc9, 0x57, 0x1b, 0x2c, 0x6f, 0x66, 0x3e, 0xa3, 0x35, 0x83, 0xf7, 0x6a, 0x68, 0x6f, 0x64, 0xbe, 0x07, 0x8b, 0x7b, 0x4a, 0x0d, 0x73, 0x49, 0x40, 0xf6, 0x13, 0xd5, 0x2b, 0xc4, 0x86, 0x73, 0xb4, 0x57, 0xc2, 0xcf, 0x78, 0x49, 0x24, 0x90, 0xa5, 0xcc, 0x56, 0x06, 0xc0, 0x54, 0x1d, 0x17, 0xb2, 0x4d, 0xdb, }; static const unsigned char ecdsa_secp256r1_sha256_12511_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12511_sig[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12511 = { .name = "ecdsa_secp256r1_sha256_12511", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12511_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12511_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12511_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 181 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12512 for ECDSA, tcId is 182 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12512_pubkey[] = { 0xdb, 0x02, 0xd1, 0xf3, 0x42, 0x1d, 0x60, 0x0e, 0x9d, 0x9e, 0xf9, 0xe4, 0x74, 0x19, 0xdb, 0xa3, 0x20, 0x8e, 0xed, 0x08, 0xc2, 0xd4, 0x18, 0x9a, 0x5d, 0xb6, 0x3a, 0xbe, 0xb2, 0x73, 0x96, 0x66, 0xe0, 0xed, 0x26, 0x96, 0x7b, 0x9a, 0xda, 0x9e, 0xd7, 0xff, 0xe4, 0x80, 0x82, 0x7f, 0x90, 0xa0, 0xd2, 0x10, 0xd5, 0xfd, 0x8e, 0xc6, 0x28, 0xe3, 0x17, 0x15, 0xe6, 0xb2, 0x41, 0x25, 0x51, 0x2a, }; static const unsigned char ecdsa_secp256r1_sha256_12512_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12512_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x55, 0x55, 0x55, 0x55, 0x00, 0x00, 0x00, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x3e, 0xf7, 0xa8, 0xe4, 0x8d, 0x07, 0xdf, 0x81, 0xa6, 0x93, 0x43, 0x96, 0x54, 0x21, 0x0c, 0x70, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12512 = { .name = "ecdsa_secp256r1_sha256_12512", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12512_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12512_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12512_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 182 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12513 for ECDSA, tcId is 183 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12513_pubkey[] = { 0x62, 0x22, 0xd1, 0x96, 0x26, 0x55, 0x50, 0x18, 0x93, 0xc2, 0x9e, 0x44, 0x13, 0x95, 0xb6, 0xc0, 0x57, 0x11, 0xbd, 0x3e, 0xd5, 0xa0, 0xef, 0x72, 0xcf, 0xab, 0x33, 0x8b, 0x88, 0x22, 0x9c, 0x4b, 0xaa, 0xae, 0x07, 0x9c, 0xb4, 0x4a, 0x1a, 0xf0, 0x70, 0x36, 0x2a, 0xaa, 0x52, 0x0e, 0xe2, 0x4c, 0xac, 0x26, 0x26, 0x42, 0x3b, 0x0b, 0xf8, 0x1a, 0xf1, 0xc5, 0x43, 0x11, 0xd8, 0xe2, 0xfd, 0x23, }; static const unsigned char ecdsa_secp256r1_sha256_12513_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12513_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb6, 0xdb, 0x6d, 0xb6, 0x24, 0x92, 0x49, 0x25, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x62, 0x5b, 0xd7, 0xa0, 0x9b, 0xec, 0x4c, 0xa8, 0x1b, 0xcd, 0xd9, 0xf8, 0xfd, 0x6b, 0x63, 0xcc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12513 = { .name = "ecdsa_secp256r1_sha256_12513", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12513_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12513_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12513_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 183 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12514 for ECDSA, tcId is 184 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12514_pubkey[] = { 0x4c, 0xcf, 0xa2, 0x4c, 0x67, 0xf3, 0xde, 0xf7, 0xfa, 0x81, 0xbc, 0x99, 0xc7, 0x0b, 0xb0, 0x41, 0x9c, 0x09, 0x52, 0xba, 0x59, 0x9f, 0x4c, 0x03, 0x36, 0x1d, 0xa1, 0x84, 0xb0, 0x4c, 0xdc, 0xa5, 0xdb, 0x76, 0xb7, 0x97, 0xf7, 0xf4, 0x1d, 0x9c, 0x72, 0x9a, 0x22, 0x19, 0x47, 0x8a, 0x7e, 0x62, 0x97, 0x28, 0xdf, 0x87, 0x08, 0x00, 0xbe, 0x8c, 0xf6, 0xca, 0x7a, 0x0a, 0x82, 0x15, 0x3b, 0xfa, }; static const unsigned char ecdsa_secp256r1_sha256_12514_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12514_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xcc, 0xcc, 0xcc, 0xcc, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0xcc, 0x97, 0x1f, 0x2e, 0xf1, 0x52, 0x79, 0x4b, 0x9d, 0x8f, 0xc7, 0xd5, 0x68, 0xc9, 0xe8, 0xea, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12514 = { .name = "ecdsa_secp256r1_sha256_12514", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12514_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12514_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12514_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 184 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12515 for ECDSA, tcId is 185 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12515_pubkey[] = { 0xea, 0x1c, 0x72, 0xc9, 0x10, 0x34, 0x03, 0x6b, 0xac, 0x71, 0x40, 0x2b, 0x6e, 0x9e, 0xcc, 0x4a, 0xf3, 0xdb, 0xde, 0x7a, 0x99, 0xdc, 0x57, 0x40, 0x61, 0xe9, 0x9f, 0xef, 0xff, 0x9d, 0x84, 0xda, 0xb7, 0xdd, 0x05, 0x7e, 0x75, 0xb7, 0x8a, 0xc6, 0xf5, 0x6e, 0x34, 0xeb, 0x04, 0x8f, 0x0a, 0x9d, 0x29, 0xd5, 0xd0, 0x55, 0x40, 0x8c, 0x90, 0xd0, 0x2b, 0xc2, 0xea, 0x91, 0x8c, 0x18, 0xcb, 0x63, }; static const unsigned char ecdsa_secp256r1_sha256_12515_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12515_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x33, 0x33, 0x33, 0x33, 0x00, 0x00, 0x00, 0x00, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x33, 0x25, 0xc7, 0xcb, 0xbc, 0x54, 0x9e, 0x52, 0xe7, 0x63, 0xf1, 0xf5, 0x5a, 0x32, 0x7a, 0x3a, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12515 = { .name = "ecdsa_secp256r1_sha256_12515", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12515_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12515_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12515_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 185 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12516 for ECDSA, tcId is 186 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12516_pubkey[] = { 0xc2, 0x87, 0x9a, 0x66, 0xd8, 0x6c, 0xb2, 0x0b, 0x82, 0x0b, 0x77, 0x95, 0xda, 0x2d, 0xa6, 0x2b, 0x38, 0x92, 0x4f, 0x78, 0x17, 0xd1, 0xcd, 0x35, 0x0d, 0x93, 0x69, 0x88, 0xe9, 0x0e, 0x79, 0xbc, 0x54, 0x31, 0xa7, 0x26, 0x8f, 0xf6, 0x93, 0x1c, 0x7a, 0x75, 0x9d, 0xe0, 0x24, 0xef, 0xf9, 0x0b, 0xcb, 0x01, 0x77, 0x21, 0x6d, 0xb6, 0xfd, 0x1f, 0x3a, 0xaa, 0xa1, 0x1f, 0xa3, 0xb6, 0xa0, 0x83, }; static const unsigned char ecdsa_secp256r1_sha256_12516_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12516_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x49, 0x24, 0x92, 0x48, 0xdb, 0x6d, 0xb6, 0xdb, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x5a, 0x8b, 0x23, 0x0d, 0x0b, 0x2b, 0x51, 0xdc, 0xd7, 0xeb, 0xf0, 0xc9, 0xfe, 0xf7, 0xc1, 0x85, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12516 = { .name = "ecdsa_secp256r1_sha256_12516", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12516_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12516_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12516_sig, .siglen = 64, .result = 1, .comment = "extreme value for k and s^-1, tcId is 186 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12517 for ECDSA, tcId is 187 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12517_pubkey[] = { 0xab, 0x1c, 0x0f, 0x27, 0x3f, 0x74, 0xab, 0xc2, 0xb8, 0x48, 0xc7, 0x50, 0x06, 0xf2, 0xef, 0x3c, 0x54, 0xc2, 0x6d, 0xf2, 0x77, 0x11, 0xb0, 0x65, 0x58, 0xf4, 0x55, 0x07, 0x9a, 0xee, 0x0b, 0xa3, 0xdf, 0x51, 0x0f, 0x2e, 0xce, 0xf6, 0xd9, 0xa0, 0x59, 0x97, 0xc7, 0x76, 0xf1, 0x4a, 0xd6, 0x45, 0x6c, 0x17, 0x9f, 0x0a, 0x13, 0xaf, 0x17, 0x71, 0xe4, 0xd6, 0xc3, 0x7f, 0xa4, 0x8b, 0x47, 0xf2, }; static const unsigned char ecdsa_secp256r1_sha256_12517_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12517_sig[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x16, 0xa4, 0x50, 0x2e, 0x27, 0x81, 0xe1, 0x1a, 0xc8, 0x2c, 0xbc, 0x9d, 0x1e, 0xdd, 0x8c, 0x98, 0x15, 0x84, 0xd1, 0x3e, 0x18, 0x41, 0x1e, 0x2f, 0x6e, 0x04, 0x78, 0xc3, 0x44, 0x16, 0xe3, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12517 = { .name = "ecdsa_secp256r1_sha256_12517", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12517_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12517_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12517_sig, .siglen = 64, .result = 1, .comment = "extreme value for k, tcId is 187 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12518 for ECDSA, tcId is 188 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12518_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_12518_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12518_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12518 = { .name = "ecdsa_secp256r1_sha256_12518", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12518_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12518_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12518_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 188 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12519 for ECDSA, tcId is 189 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12519_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0x4f, 0xe3, 0x42, 0xe2, 0xfe, 0x1a, 0x7f, 0x9b, 0x8e, 0xe7, 0xeb, 0x4a, 0x7c, 0x0f, 0x9e, 0x16, 0x2b, 0xce, 0x33, 0x57, 0x6b, 0x31, 0x5e, 0xce, 0xcb, 0xb6, 0x40, 0x68, 0x37, 0xbf, 0x51, 0xf5, }; static const unsigned char ecdsa_secp256r1_sha256_12519_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12519_sig[] = { 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12519 = { .name = "ecdsa_secp256r1_sha256_12519", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12519_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12519_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12519_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 189 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12520 for ECDSA, tcId is 190 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12520_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_12520_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12520_sig[] = { 0x53, 0x2e, 0xaa, 0xbd, 0x95, 0x74, 0x88, 0x0d, 0xbf, 0x76, 0xb9, 0xb8, 0xcc, 0x00, 0x83, 0x2c, 0x20, 0xa6, 0xec, 0x11, 0x3d, 0x68, 0x22, 0x99, 0x55, 0x0d, 0x7a, 0x6e, 0x0f, 0x34, 0x5e, 0x25, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12520 = { .name = "ecdsa_secp256r1_sha256_12520", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12520_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12520_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12520_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 190 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12521 for ECDSA, tcId is 191 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12521_pubkey[] = { 0x6b, 0x17, 0xd1, 0xf2, 0xe1, 0x2c, 0x42, 0x47, 0xf8, 0xbc, 0xe6, 0xe5, 0x63, 0xa4, 0x40, 0xf2, 0x77, 0x03, 0x7d, 0x81, 0x2d, 0xeb, 0x33, 0xa0, 0xf4, 0xa1, 0x39, 0x45, 0xd8, 0x98, 0xc2, 0x96, 0xb0, 0x1c, 0xbd, 0x1c, 0x01, 0xe5, 0x80, 0x65, 0x71, 0x18, 0x14, 0xb5, 0x83, 0xf0, 0x61, 0xe9, 0xd4, 0x31, 0xcc, 0xa9, 0x94, 0xce, 0xa1, 0x31, 0x34, 0x49, 0xbf, 0x97, 0xc8, 0x40, 0xae, 0x0a, }; static const unsigned char ecdsa_secp256r1_sha256_12521_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12521_sig[] = { 0xac, 0xd1, 0x55, 0x41, 0x6a, 0x8b, 0x77, 0xf3, 0x40, 0x89, 0x46, 0x47, 0x33, 0xff, 0x7c, 0xd3, 0x9c, 0x40, 0x0e, 0x9c, 0x69, 0xaf, 0x7b, 0xeb, 0x9e, 0xac, 0x50, 0x54, 0xed, 0x2e, 0xc7, 0x2c, 0x24, 0x92, 0x49, 0x24, 0x6d, 0xb6, 0xdb, 0x6d, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xad, 0x45, 0x91, 0x86, 0x85, 0x95, 0xa8, 0xee, 0x6b, 0xf5, 0xf8, 0x64, 0xff, 0x7b, 0xe0, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12521 = { .name = "ecdsa_secp256r1_sha256_12521", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12521_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12521_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12521_sig, .siglen = 64, .result = -1, .comment = "testing point duplication, tcId is 191 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12522 for ECDSA, tcId is 192 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12522_pubkey[] = { 0x01, 0x1d, 0x2f, 0xc9, 0x94, 0xdf, 0x20, 0x4b, 0x63, 0xf0, 0x5a, 0xe8, 0x42, 0x0c, 0xa3, 0x90, 0x55, 0x9b, 0x80, 0xc4, 0x98, 0x8e, 0xf6, 0x39, 0xb9, 0x5c, 0x46, 0x9e, 0x5c, 0xb2, 0x4c, 0xf2, 0x16, 0x54, 0x0c, 0xbe, 0xbc, 0x47, 0x0b, 0xca, 0xa0, 0x46, 0x66, 0x12, 0xdb, 0xde, 0x6d, 0x03, 0x09, 0x8c, 0x69, 0x96, 0xe0, 0xa0, 0x5f, 0x02, 0x90, 0x21, 0x83, 0xce, 0xba, 0x4b, 0x53, 0x0f, 0x4f, 0x35, 0x00, 0xa9, 0x9e, 0x4c, 0xdc, 0x8a, 0x50, 0xc0, 0xd9, 0x8d, 0x87, 0x09, 0x44, 0xe5, 0x65, 0x48, 0xdc, 0x4c, 0xf6, 0xbb, 0xbf, 0x3d, 0x69, 0x78, 0xef, 0xbc, 0x8f, 0xc8, 0x77, 0x8b, 0x33, 0xe1, 0x32, 0xd2, 0xc1, 0x85, 0xc2, 0x08, 0x44, 0xcf, 0x3d, 0xf3, 0x94, 0xd5, 0x22, 0x25, 0x93, 0x17, 0xe3, 0x93, 0x1f, 0x01, 0x30, 0xf2, 0x3f, 0x65, 0x00, 0xc8, 0x80, 0xf3, 0xa8, 0x31, 0x9a, 0xb4, 0x4a, 0x0e, }; static const unsigned char ecdsa_secp521r1_sha512_12522_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12522_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0xae, 0x79, 0x78, 0x7c, 0x40, 0xd0, 0x69, 0x94, 0x80, 0x33, 0xfe, 0xb7, 0x08, 0xf6, 0x5a, 0x2f, 0xc4, 0x4a, 0x36, 0x47, 0x76, 0x63, 0xb8, 0x51, 0x44, 0x90, 0x48, 0xe1, 0x6e, 0xc7, 0x9b, 0xf5, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12522 = { .name = "ecdsa_secp521r1_sha512_12522", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12522_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12522_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12522_sig, .siglen = 132, .result = 1, .comment = "k*G has a large x-coordinate, tcId is 192 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12523 for ECDSA, tcId is 193 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12523_pubkey[] = { 0x01, 0x1d, 0x2f, 0xc9, 0x94, 0xdf, 0x20, 0x4b, 0x63, 0xf0, 0x5a, 0xe8, 0x42, 0x0c, 0xa3, 0x90, 0x55, 0x9b, 0x80, 0xc4, 0x98, 0x8e, 0xf6, 0x39, 0xb9, 0x5c, 0x46, 0x9e, 0x5c, 0xb2, 0x4c, 0xf2, 0x16, 0x54, 0x0c, 0xbe, 0xbc, 0x47, 0x0b, 0xca, 0xa0, 0x46, 0x66, 0x12, 0xdb, 0xde, 0x6d, 0x03, 0x09, 0x8c, 0x69, 0x96, 0xe0, 0xa0, 0x5f, 0x02, 0x90, 0x21, 0x83, 0xce, 0xba, 0x4b, 0x53, 0x0f, 0x4f, 0x35, 0x00, 0xa9, 0x9e, 0x4c, 0xdc, 0x8a, 0x50, 0xc0, 0xd9, 0x8d, 0x87, 0x09, 0x44, 0xe5, 0x65, 0x48, 0xdc, 0x4c, 0xf6, 0xbb, 0xbf, 0x3d, 0x69, 0x78, 0xef, 0xbc, 0x8f, 0xc8, 0x77, 0x8b, 0x33, 0xe1, 0x32, 0xd2, 0xc1, 0x85, 0xc2, 0x08, 0x44, 0xcf, 0x3d, 0xf3, 0x94, 0xd5, 0x22, 0x25, 0x93, 0x17, 0xe3, 0x93, 0x1f, 0x01, 0x30, 0xf2, 0x3f, 0x65, 0x00, 0xc8, 0x80, 0xf3, 0xa8, 0x31, 0x9a, 0xb4, 0x4a, 0x0e, }; static const unsigned char ecdsa_secp521r1_sha512_12523_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12523_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12523 = { .name = "ecdsa_secp521r1_sha512_12523", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12523_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12523_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12523_sig, .siglen = 132, .result = -1, .comment = "r too large, tcId is 193 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12524 for ECDSA, tcId is 194 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12524_pubkey[] = { 0x01, 0x9a, 0x02, 0x9c, 0x77, 0xfe, 0xd0, 0x4c, 0xab, 0x1a, 0xb8, 0x93, 0x7f, 0xda, 0x81, 0x28, 0xfc, 0x19, 0xbf, 0x8c, 0x41, 0xa8, 0xf2, 0x42, 0xf6, 0xa9, 0xca, 0x6f, 0x0a, 0xe8, 0x13, 0xc1, 0x70, 0x9b, 0x8b, 0x03, 0xe2, 0x6a, 0x92, 0x98, 0xfe, 0x59, 0xf9, 0x9e, 0x37, 0x06, 0xff, 0xc2, 0x8c, 0x43, 0xd2, 0x6a, 0x11, 0x69, 0x0d, 0x2f, 0xfd, 0x81, 0x5a, 0x33, 0xea, 0x32, 0x90, 0x76, 0x69, 0x78, 0x00, 0x12, 0x5b, 0x2a, 0x4b, 0x63, 0x5f, 0x51, 0x4f, 0xd5, 0xd6, 0x32, 0x15, 0x67, 0x2f, 0x31, 0x1a, 0xe5, 0x93, 0x5c, 0x17, 0x74, 0xed, 0x5d, 0x8a, 0x44, 0x89, 0x7b, 0x68, 0x19, 0x1e, 0x63, 0x69, 0xab, 0x26, 0xdf, 0x91, 0x5e, 0x20, 0x66, 0xa9, 0x43, 0xe5, 0x9a, 0x35, 0x77, 0x31, 0x9d, 0xac, 0x5a, 0x86, 0x64, 0x0b, 0xc8, 0xc7, 0x18, 0xd2, 0xb1, 0x59, 0x47, 0x9f, 0xdd, 0x22, 0xd1, 0x14, 0x41, }; static const unsigned char ecdsa_secp521r1_sha512_12524_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12524_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12524 = { .name = "ecdsa_secp521r1_sha512_12524", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12524_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12524_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12524_sig, .siglen = 132, .result = 1, .comment = "r,s are large, tcId is 194 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12525 for ECDSA, tcId is 195 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12525_pubkey[] = { 0x00, 0xeb, 0x62, 0x87, 0x80, 0x40, 0xb4, 0xca, 0x0c, 0x8c, 0x61, 0xaf, 0xe7, 0xe1, 0x95, 0xe2, 0x2e, 0x39, 0x5f, 0x69, 0xc7, 0x85, 0x9a, 0xc2, 0xb7, 0x98, 0x02, 0x96, 0x70, 0x98, 0x32, 0x55, 0x73, 0xb5, 0x6d, 0x3d, 0x65, 0xb7, 0xbc, 0xf3, 0x11, 0x1b, 0xc4, 0x85, 0x9e, 0x1d, 0x08, 0x16, 0xc5, 0x41, 0x47, 0x3a, 0xc1, 0xff, 0xcf, 0x4a, 0x2c, 0xc7, 0xd6, 0xe6, 0xaa, 0x59, 0x1b, 0xa1, 0x17, 0xaf, 0x00, 0x5b, 0xea, 0x26, 0xca, 0xc7, 0xce, 0x21, 0x35, 0x84, 0xb5, 0xd3, 0x5a, 0xb2, 0x2d, 0x8b, 0x45, 0xdc, 0x88, 0xff, 0x26, 0xed, 0xba, 0xdd, 0x48, 0x7a, 0xa9, 0x8c, 0xca, 0xa7, 0x16, 0x13, 0xbb, 0x7b, 0x79, 0xdc, 0xe6, 0x7a, 0x9b, 0xc3, 0x6d, 0x3e, 0x98, 0x0f, 0xc1, 0x0d, 0x43, 0x13, 0xac, 0x20, 0xc4, 0xcf, 0x27, 0x1e, 0xcc, 0x1f, 0x4a, 0xda, 0xb3, 0x95, 0x13, 0x97, 0x1a, 0xa4, 0xfb, 0x9d, }; static const unsigned char ecdsa_secp521r1_sha512_12525_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12525_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x95, 0xe1, 0x9f, 0xd2, 0xb7, 0x55, 0xd6, 0x03, 0xbf, 0x99, 0x45, 0x62, 0xd9, 0xa1, 0x1f, 0x63, 0xcf, 0x4e, 0xad, 0xec, 0xbd, 0xc0, 0xec, 0xb5, 0xa3, 0x94, 0xe5, 0x45, 0x29, 0xe8, 0xda, 0x58, 0xa5, 0x27, 0xbc, 0x6d, 0x85, 0x72, 0x50, 0x43, 0x78, 0x63, 0x62, 0xab, 0x4d, 0xe6, 0xcb, 0xc7, 0xd8, 0x0e, 0x62, 0x5a, 0xe0, 0xa9, 0x88, 0x61, 0xae, 0xa1, 0xc7, 0xbf, 0x71, 0x09, 0xc9, 0x1f, 0x66, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12525 = { .name = "ecdsa_secp521r1_sha512_12525", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12525_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12525_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12525_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 195 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12526 for ECDSA, tcId is 196 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12526_pubkey[] = { 0x01, 0x29, 0x6b, 0x04, 0x9f, 0x19, 0x79, 0x78, 0x5b, 0x33, 0x77, 0xc5, 0xe2, 0x8e, 0xdf, 0x4c, 0x27, 0x87, 0xf2, 0x13, 0xf2, 0x83, 0x6b, 0xea, 0xf5, 0xd6, 0x14, 0x07, 0x87, 0x0a, 0xde, 0x85, 0x7d, 0x50, 0x83, 0xe0, 0x1d, 0x87, 0x28, 0xb0, 0xdd, 0xde, 0x1b, 0xa1, 0xbb, 0x3e, 0x79, 0x16, 0x17, 0xed, 0xdb, 0x02, 0xa5, 0x2c, 0x78, 0x04, 0x97, 0x91, 0xca, 0x52, 0xb6, 0x46, 0xf9, 0x31, 0x17, 0xc2, 0x00, 0xb9, 0x77, 0xa7, 0x11, 0xa5, 0x03, 0x0c, 0x4e, 0xf6, 0x99, 0x08, 0x33, 0x29, 0x61, 0x32, 0x20, 0x3b, 0xad, 0xbd, 0xbc, 0x01, 0x40, 0x7c, 0x4a, 0xce, 0xb4, 0x9c, 0x96, 0xb6, 0x58, 0xfc, 0x77, 0xff, 0x1f, 0x65, 0x5a, 0xd7, 0x4e, 0x13, 0x44, 0xe2, 0xfc, 0x55, 0xc9, 0x1c, 0x7f, 0xc3, 0x43, 0x23, 0x55, 0x19, 0x2d, 0xb3, 0xd2, 0xc0, 0x3c, 0xd1, 0x34, 0xba, 0x38, 0x7a, 0xd3, 0xac, 0xde, 0x40, }; static const unsigned char ecdsa_secp521r1_sha512_12526_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12526_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x15, 0x83, 0x76, 0x45, 0x58, 0x3a, 0x37, 0xa7, 0xa6, 0x65, 0xf9, 0x83, 0xc5, 0xe3, 0x47, 0xf6, 0x5d, 0xca, 0x47, 0x64, 0x7a, 0xa8, 0x0f, 0xd2, 0x49, 0x8a, 0x79, 0x1d, 0x44, 0xd9, 0xb2, 0x85, 0x0a, 0x15, 0x1a, 0x6e, 0x86, 0xfc, 0xe7, 0xd7, 0xbb, 0x81, 0x4e, 0x72, 0x4f, 0xf1, 0x1b, 0x9e, 0xf7, 0x26, 0xbf, 0x36, 0xc6, 0xe7, 0x54, 0x8c, 0x37, 0xf8, 0x2a, 0x24, 0x90, 0x28, 0x76, 0xee, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12526 = { .name = "ecdsa_secp521r1_sha512_12526", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12526_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12526_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12526_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 have a large Hamming weight, tcId is 196 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12527 for ECDSA, tcId is 197 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12527_pubkey[] = { 0x00, 0x5f, 0x50, 0x59, 0x30, 0x83, 0x49, 0xf9, 0xeb, 0xbb, 0x4d, 0x1c, 0x55, 0xc0, 0xaf, 0xcc, 0xf6, 0x21, 0x62, 0xec, 0x1d, 0xd1, 0x2e, 0xf3, 0xed, 0x90, 0x66, 0x56, 0x92, 0x4f, 0xfd, 0x99, 0xca, 0xb9, 0xf0, 0x6b, 0x0e, 0xb2, 0x18, 0xcf, 0xf0, 0x78, 0xa4, 0x67, 0x7a, 0x5c, 0xe1, 0xcc, 0x07, 0x65, 0x2b, 0xc9, 0x76, 0xae, 0xfc, 0x73, 0x2c, 0x28, 0xf6, 0x7e, 0xf0, 0x78, 0xa4, 0x34, 0xe9, 0x99, 0x00, 0xa5, 0xd1, 0x4d, 0xf3, 0x10, 0x63, 0x0d, 0x76, 0xec, 0x03, 0xcb, 0x6f, 0x9b, 0x95, 0xbf, 0x1a, 0x22, 0x43, 0x81, 0x05, 0xc8, 0x8c, 0xd9, 0xfd, 0x3d, 0xac, 0x80, 0xf8, 0x57, 0xad, 0xd3, 0x82, 0x71, 0xd8, 0xba, 0x90, 0x16, 0x84, 0xb2, 0x6d, 0x43, 0x6d, 0x4a, 0x85, 0x9a, 0xd4, 0xcd, 0xa5, 0xe9, 0x67, 0x7b, 0x73, 0xca, 0xb3, 0xf3, 0xe5, 0xe4, 0x1a, 0x3d, 0x79, 0x96, 0x60, 0x72, 0x79, 0xab, }; static const unsigned char ecdsa_secp521r1_sha512_12527_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12527_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12527 = { .name = "ecdsa_secp521r1_sha512_12527", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12527_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12527_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12527_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 197 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12528 for ECDSA, tcId is 198 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12528_pubkey[] = { 0x00, 0x5f, 0x50, 0x59, 0x30, 0x83, 0x49, 0xf9, 0xeb, 0xbb, 0x4d, 0x1c, 0x55, 0xc0, 0xaf, 0xcc, 0xf6, 0x21, 0x62, 0xec, 0x1d, 0xd1, 0x2e, 0xf3, 0xed, 0x90, 0x66, 0x56, 0x92, 0x4f, 0xfd, 0x99, 0xca, 0xb9, 0xf0, 0x6b, 0x0e, 0xb2, 0x18, 0xcf, 0xf0, 0x78, 0xa4, 0x67, 0x7a, 0x5c, 0xe1, 0xcc, 0x07, 0x65, 0x2b, 0xc9, 0x76, 0xae, 0xfc, 0x73, 0x2c, 0x28, 0xf6, 0x7e, 0xf0, 0x78, 0xa4, 0x34, 0xe9, 0x99, 0x00, 0xa5, 0xd1, 0x4d, 0xf3, 0x10, 0x63, 0x0d, 0x76, 0xec, 0x03, 0xcb, 0x6f, 0x9b, 0x95, 0xbf, 0x1a, 0x22, 0x43, 0x81, 0x05, 0xc8, 0x8c, 0xd9, 0xfd, 0x3d, 0xac, 0x80, 0xf8, 0x57, 0xad, 0xd3, 0x82, 0x71, 0xd8, 0xba, 0x90, 0x16, 0x84, 0xb2, 0x6d, 0x43, 0x6d, 0x4a, 0x85, 0x9a, 0xd4, 0xcd, 0xa5, 0xe9, 0x67, 0x7b, 0x73, 0xca, 0xb3, 0xf3, 0xe5, 0xe4, 0x1a, 0x3d, 0x79, 0x96, 0x60, 0x72, 0x79, 0xab, }; static const unsigned char ecdsa_secp521r1_sha512_12528_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12528_sig[] = { 0x01, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12528 = { .name = "ecdsa_secp521r1_sha512_12528", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12528_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12528_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12528_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 198 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12529 for ECDSA, tcId is 199 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12529_pubkey[] = { 0x00, 0x1f, 0xb7, 0x06, 0x42, 0x74, 0xba, 0x3b, 0x59, 0x50, 0xf0, 0x0a, 0x02, 0x7c, 0xb2, 0xcf, 0x42, 0xd1, 0xed, 0x69, 0xc8, 0x9d, 0x94, 0x4d, 0xa0, 0x41, 0x5e, 0x90, 0x86, 0xf3, 0x5c, 0x85, 0xb4, 0x4a, 0xfd, 0xd6, 0x35, 0xcd, 0xc1, 0xfa, 0xde, 0x2c, 0xe7, 0x1e, 0x62, 0x48, 0x5e, 0x24, 0x3c, 0xeb, 0x9f, 0x07, 0x5a, 0x11, 0x14, 0x76, 0x30, 0x2e, 0x60, 0xd7, 0xd7, 0x8b, 0x12, 0x07, 0xcd, 0xa7, 0x00, 0x6b, 0x42, 0x52, 0x07, 0x71, 0x72, 0x33, 0x20, 0x59, 0xa9, 0xc6, 0x0f, 0x96, 0x68, 0x93, 0xfd, 0xa7, 0xe7, 0x33, 0x77, 0xde, 0xbc, 0xba, 0x9a, 0x8f, 0x69, 0xce, 0xe8, 0xf5, 0x9d, 0x67, 0xa2, 0xca, 0x89, 0x2f, 0xad, 0x1d, 0xf4, 0x46, 0x31, 0x61, 0xf1, 0x57, 0xc7, 0xc1, 0x17, 0xc1, 0xbb, 0xfd, 0xdc, 0x88, 0x44, 0x1c, 0x4c, 0x8a, 0xbc, 0x63, 0x66, 0x7b, 0xe5, 0xc1, 0xff, 0x22, 0xf6, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha512_12529_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12529_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12529 = { .name = "ecdsa_secp521r1_sha512_12529", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12529_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12529_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12529_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 199 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12530 for ECDSA, tcId is 200 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12530_pubkey[] = { 0x00, 0x1f, 0xb7, 0x06, 0x42, 0x74, 0xba, 0x3b, 0x59, 0x50, 0xf0, 0x0a, 0x02, 0x7c, 0xb2, 0xcf, 0x42, 0xd1, 0xed, 0x69, 0xc8, 0x9d, 0x94, 0x4d, 0xa0, 0x41, 0x5e, 0x90, 0x86, 0xf3, 0x5c, 0x85, 0xb4, 0x4a, 0xfd, 0xd6, 0x35, 0xcd, 0xc1, 0xfa, 0xde, 0x2c, 0xe7, 0x1e, 0x62, 0x48, 0x5e, 0x24, 0x3c, 0xeb, 0x9f, 0x07, 0x5a, 0x11, 0x14, 0x76, 0x30, 0x2e, 0x60, 0xd7, 0xd7, 0x8b, 0x12, 0x07, 0xcd, 0xa7, 0x00, 0x6b, 0x42, 0x52, 0x07, 0x71, 0x72, 0x33, 0x20, 0x59, 0xa9, 0xc6, 0x0f, 0x96, 0x68, 0x93, 0xfd, 0xa7, 0xe7, 0x33, 0x77, 0xde, 0xbc, 0xba, 0x9a, 0x8f, 0x69, 0xce, 0xe8, 0xf5, 0x9d, 0x67, 0xa2, 0xca, 0x89, 0x2f, 0xad, 0x1d, 0xf4, 0x46, 0x31, 0x61, 0xf1, 0x57, 0xc7, 0xc1, 0x17, 0xc1, 0xbb, 0xfd, 0xdc, 0x88, 0x44, 0x1c, 0x4c, 0x8a, 0xbc, 0x63, 0x66, 0x7b, 0xe5, 0xc1, 0xff, 0x22, 0xf6, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha512_12530_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12530_sig[] = { 0x01, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12530 = { .name = "ecdsa_secp521r1_sha512_12530", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12530_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12530_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12530_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 200 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12531 for ECDSA, tcId is 201 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12531_pubkey[] = { 0x01, 0x87, 0x7d, 0x42, 0xc1, 0x10, 0xa9, 0xfb, 0xe3, 0x72, 0x3e, 0x68, 0x4e, 0xa0, 0x1c, 0x55, 0x26, 0x97, 0xa8, 0xe8, 0x36, 0x78, 0x14, 0x5c, 0xba, 0xdc, 0x2e, 0x27, 0xc3, 0x3e, 0x76, 0xef, 0x2e, 0xd8, 0x85, 0xe7, 0xaf, 0x77, 0xf8, 0x33, 0x13, 0x21, 0x3b, 0x04, 0x10, 0x7b, 0x4b, 0x92, 0xf8, 0x0a, 0xeb, 0xfd, 0x67, 0x0f, 0xd1, 0x46, 0x7b, 0x2b, 0xb9, 0x33, 0x3a, 0xc2, 0x80, 0xea, 0x9b, 0x61, 0x01, 0xac, 0xf4, 0xe8, 0x5a, 0x0c, 0xcb, 0xdf, 0xc4, 0x70, 0x36, 0x38, 0xc2, 0x1e, 0xb4, 0x5b, 0x4a, 0x93, 0xdb, 0x3f, 0xa7, 0x47, 0xb3, 0x65, 0x23, 0x85, 0x35, 0xcd, 0xae, 0xe4, 0xfc, 0x56, 0xaa, 0x95, 0x85, 0x4b, 0x4e, 0xc9, 0xc4, 0x51, 0x69, 0x3a, 0xaf, 0x72, 0xa9, 0x0d, 0x66, 0xd3, 0x00, 0xd2, 0x21, 0x1b, 0xdc, 0x1f, 0xa0, 0xcf, 0x85, 0xe5, 0xc2, 0x4a, 0xe0, 0x8e, 0xf2, 0xa2, 0x42, 0x48, }; static const unsigned char ecdsa_secp521r1_sha512_12531_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12531_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12531 = { .name = "ecdsa_secp521r1_sha512_12531", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12531_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12531_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12531_sig, .siglen = 132, .result = 1, .comment = "small r and s, tcId is 201 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12532 for ECDSA, tcId is 202 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12532_pubkey[] = { 0x01, 0x87, 0x7d, 0x42, 0xc1, 0x10, 0xa9, 0xfb, 0xe3, 0x72, 0x3e, 0x68, 0x4e, 0xa0, 0x1c, 0x55, 0x26, 0x97, 0xa8, 0xe8, 0x36, 0x78, 0x14, 0x5c, 0xba, 0xdc, 0x2e, 0x27, 0xc3, 0x3e, 0x76, 0xef, 0x2e, 0xd8, 0x85, 0xe7, 0xaf, 0x77, 0xf8, 0x33, 0x13, 0x21, 0x3b, 0x04, 0x10, 0x7b, 0x4b, 0x92, 0xf8, 0x0a, 0xeb, 0xfd, 0x67, 0x0f, 0xd1, 0x46, 0x7b, 0x2b, 0xb9, 0x33, 0x3a, 0xc2, 0x80, 0xea, 0x9b, 0x61, 0x01, 0xac, 0xf4, 0xe8, 0x5a, 0x0c, 0xcb, 0xdf, 0xc4, 0x70, 0x36, 0x38, 0xc2, 0x1e, 0xb4, 0x5b, 0x4a, 0x93, 0xdb, 0x3f, 0xa7, 0x47, 0xb3, 0x65, 0x23, 0x85, 0x35, 0xcd, 0xae, 0xe4, 0xfc, 0x56, 0xaa, 0x95, 0x85, 0x4b, 0x4e, 0xc9, 0xc4, 0x51, 0x69, 0x3a, 0xaf, 0x72, 0xa9, 0x0d, 0x66, 0xd3, 0x00, 0xd2, 0x21, 0x1b, 0xdc, 0x1f, 0xa0, 0xcf, 0x85, 0xe5, 0xc2, 0x4a, 0xe0, 0x8e, 0xf2, 0xa2, 0x42, 0x48, }; static const unsigned char ecdsa_secp521r1_sha512_12532_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12532_sig[] = { 0x01, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12532 = { .name = "ecdsa_secp521r1_sha512_12532", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12532_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12532_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12532_sig, .siglen = 2, .result = 0, .comment = "incorrect size of signature, tcId is 202 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12533 for ECDSA, tcId is 203 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12533_pubkey[] = { 0x01, 0x87, 0x7d, 0x42, 0xc1, 0x10, 0xa9, 0xfb, 0xe3, 0x72, 0x3e, 0x68, 0x4e, 0xa0, 0x1c, 0x55, 0x26, 0x97, 0xa8, 0xe8, 0x36, 0x78, 0x14, 0x5c, 0xba, 0xdc, 0x2e, 0x27, 0xc3, 0x3e, 0x76, 0xef, 0x2e, 0xd8, 0x85, 0xe7, 0xaf, 0x77, 0xf8, 0x33, 0x13, 0x21, 0x3b, 0x04, 0x10, 0x7b, 0x4b, 0x92, 0xf8, 0x0a, 0xeb, 0xfd, 0x67, 0x0f, 0xd1, 0x46, 0x7b, 0x2b, 0xb9, 0x33, 0x3a, 0xc2, 0x80, 0xea, 0x9b, 0x61, 0x01, 0xac, 0xf4, 0xe8, 0x5a, 0x0c, 0xcb, 0xdf, 0xc4, 0x70, 0x36, 0x38, 0xc2, 0x1e, 0xb4, 0x5b, 0x4a, 0x93, 0xdb, 0x3f, 0xa7, 0x47, 0xb3, 0x65, 0x23, 0x85, 0x35, 0xcd, 0xae, 0xe4, 0xfc, 0x56, 0xaa, 0x95, 0x85, 0x4b, 0x4e, 0xc9, 0xc4, 0x51, 0x69, 0x3a, 0xaf, 0x72, 0xa9, 0x0d, 0x66, 0xd3, 0x00, 0xd2, 0x21, 0x1b, 0xdc, 0x1f, 0xa0, 0xcf, 0x85, 0xe5, 0xc2, 0x4a, 0xe0, 0x8e, 0xf2, 0xa2, 0x42, 0x48, }; static const unsigned char ecdsa_secp521r1_sha512_12533_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12533_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12533 = { .name = "ecdsa_secp521r1_sha512_12533", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12533_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12533_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12533_sig, .siglen = 132, .result = -1, .comment = "r is larger than n, tcId is 203 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12534 for ECDSA, tcId is 204 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12534_pubkey[] = { 0x01, 0x6e, 0xaf, 0x2c, 0x30, 0x43, 0xb1, 0x0a, 0xd8, 0xa9, 0x9b, 0xe7, 0xf8, 0xcc, 0xc4, 0x93, 0x15, 0x19, 0xb6, 0xec, 0x59, 0x32, 0x6f, 0x6a, 0x06, 0xf3, 0x74, 0xcb, 0x4f, 0x86, 0xe1, 0x23, 0x7d, 0xf0, 0xf2, 0x6d, 0xf6, 0xa9, 0x0c, 0xf8, 0x6c, 0x30, 0xd4, 0x2e, 0x3b, 0xd0, 0x58, 0x3c, 0x74, 0x48, 0x30, 0xde, 0xcf, 0x78, 0x34, 0x45, 0x45, 0xf4, 0xb6, 0xda, 0xea, 0x67, 0x4a, 0x88, 0x2d, 0xb9, 0x00, 0x6d, 0xfd, 0x09, 0x32, 0x0a, 0x97, 0x6d, 0x59, 0x2c, 0x4d, 0x39, 0xd3, 0x09, 0x0d, 0x6f, 0x4a, 0xd3, 0x99, 0x2b, 0x70, 0x0e, 0x3e, 0x90, 0xed, 0x1a, 0x13, 0x46, 0x23, 0x8c, 0x75, 0xf4, 0xba, 0xf4, 0x93, 0xbe, 0x8c, 0x1c, 0x16, 0x83, 0x8e, 0xce, 0xc2, 0xd9, 0x99, 0x42, 0x66, 0x04, 0x2f, 0xf9, 0xc6, 0x24, 0x86, 0x92, 0x96, 0xee, 0x9b, 0x02, 0x3b, 0xbb, 0x12, 0xd4, 0x0b, 0xc0, 0xaf, 0x07, }; static const unsigned char ecdsa_secp521r1_sha512_12534_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12534_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x4b, 0x3a, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12534 = { .name = "ecdsa_secp521r1_sha512_12534", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12534_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12534_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12534_sig, .siglen = 132, .result = -1, .comment = "s is larger than n, tcId is 204 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12535 for ECDSA, tcId is 205 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12535_pubkey[] = { 0x01, 0x8b, 0x70, 0xdf, 0x39, 0x6a, 0x6b, 0xd8, 0x41, 0x8d, 0xe6, 0xa1, 0xf7, 0xe8, 0x0f, 0x91, 0x5b, 0xcc, 0x07, 0x91, 0x29, 0xcd, 0xcb, 0x4a, 0x1c, 0x76, 0xb0, 0xe1, 0xd2, 0x57, 0x69, 0x10, 0xf1, 0xae, 0x16, 0xf3, 0xc2, 0x76, 0x71, 0x8c, 0x84, 0x1c, 0x03, 0xe1, 0x8c, 0xe2, 0x43, 0xeb, 0xae, 0x5a, 0xa6, 0x18, 0xf0, 0x9c, 0xdd, 0xf4, 0x70, 0x34, 0x12, 0x24, 0xa5, 0x01, 0x6f, 0x6f, 0x04, 0xe8, 0x01, 0x7a, 0xd3, 0xc6, 0x10, 0x2b, 0x28, 0x21, 0x20, 0x0d, 0x37, 0x3c, 0xff, 0xd5, 0x61, 0x4a, 0x67, 0x0b, 0xeb, 0xdc, 0xe6, 0xf2, 0x44, 0xb3, 0x4d, 0xce, 0x87, 0xdd, 0x87, 0x58, 0x78, 0x6b, 0x7a, 0x28, 0x29, 0xcd, 0x53, 0xe5, 0x93, 0x25, 0xdc, 0xeb, 0xe9, 0x4b, 0x56, 0x40, 0xb9, 0xd1, 0xca, 0x77, 0x5c, 0x52, 0x71, 0x6a, 0x59, 0x6d, 0x9e, 0x3a, 0x08, 0x40, 0xff, 0xdb, 0xd6, 0x4b, 0xf2, 0x47, }; static const unsigned char ecdsa_secp521r1_sha512_12535_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12535_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xfd, 0xfb, 0xf7, 0xef, 0xdf, 0xbf, 0x7e, 0xf8, 0x7b, 0x4d, 0xe1, 0xfc, 0x92, 0xdd, 0x75, 0x76, 0x39, 0x40, 0x8a, 0x50, 0xbe, 0xe1, 0x07, 0x64, 0xe3, 0x26, 0xfd, 0xd2, 0xfa, 0x30, 0x8d, 0xfd, 0xe3, 0xe5, 0x24, 0x3f, 0xdf, 0x4a, 0xc5, 0xac, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12535 = { .name = "ecdsa_secp521r1_sha512_12535", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12535_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12535_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12535_sig, .siglen = 132, .result = 1, .comment = "small r and s^-1, tcId is 205 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12536 for ECDSA, tcId is 206 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12536_pubkey[] = { 0x00, 0x13, 0x33, 0x79, 0x88, 0x64, 0x45, 0x88, 0x08, 0xfd, 0x6b, 0x10, 0xa6, 0xc8, 0x25, 0x17, 0x40, 0xda, 0x6d, 0x62, 0x34, 0x40, 0xcd, 0xf1, 0xe3, 0x59, 0x6e, 0x83, 0x12, 0xb5, 0x8f, 0x23, 0x69, 0x2d, 0x6a, 0x02, 0x10, 0xd1, 0x68, 0x2c, 0x06, 0xa4, 0x76, 0xf4, 0x47, 0x03, 0x4d, 0x7a, 0x34, 0x69, 0x76, 0xd0, 0xc2, 0xce, 0x1a, 0x58, 0x3f, 0x96, 0xf7, 0x9a, 0x53, 0x56, 0xb9, 0xa0, 0x80, 0xb9, 0x00, 0x64, 0x3d, 0x23, 0xb5, 0x21, 0x29, 0x2f, 0xa9, 0x69, 0x66, 0xb7, 0xf7, 0x33, 0xcf, 0x20, 0x8b, 0x6b, 0xe7, 0x56, 0x47, 0xdf, 0x86, 0xe2, 0xe2, 0xcc, 0xda, 0x40, 0xab, 0x33, 0x60, 0xab, 0x1d, 0x63, 0x1e, 0xf1, 0x3f, 0xe6, 0x6e, 0xb3, 0xe0, 0x8f, 0xae, 0xa1, 0x94, 0x45, 0xb6, 0xf9, 0x3e, 0x83, 0x23, 0xe1, 0x7d, 0xe2, 0x90, 0x93, 0x1f, 0xad, 0xbe, 0x2b, 0x6a, 0x7d, 0x2c, 0xdf, 0x33, 0xd7, }; static const unsigned char ecdsa_secp521r1_sha512_12536_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12536_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x9b, 0x4d, 0x34, 0x79, 0x52, 0xcd, 0x01, 0x00, 0x50, 0x8d, 0x07, 0x34, 0x13, 0xde, 0x82, 0x92, 0x75, 0xe7, 0x65, 0x09, 0xfd, 0x81, 0xcf, 0xf4, 0x9a, 0xdf, 0x4c, 0x80, 0xed, 0x2d, 0xdd, 0x4a, 0x79, 0x37, 0xd1, 0xd9, 0x18, 0x79, 0x68, 0x78, 0xfe, 0xc2, 0x4c, 0xc4, 0x65, 0x70, 0x98, 0x2c, 0x3f, 0xb8, 0xf5, 0xe9, 0x2c, 0xcd, 0xcb, 0x3e, 0x67, 0x7f, 0x07, 0xe9, 0xbd, 0x0d, 0xb0, 0xb8, 0x48, 0x14, 0xbe, 0x1c, 0x79, 0x49, 0xb0, 0xde, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12536 = { .name = "ecdsa_secp521r1_sha512_12536", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12536_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12536_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12536_sig, .siglen = 132, .result = 1, .comment = "smallish r and s^-1, tcId is 206 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12537 for ECDSA, tcId is 207 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12537_pubkey[] = { 0x01, 0x53, 0xfa, 0x0b, 0xe1, 0xf9, 0xd1, 0x99, 0xba, 0x62, 0xb1, 0xea, 0x70, 0x48, 0x93, 0xe9, 0xb3, 0x4b, 0x4d, 0x91, 0xe3, 0x8f, 0x16, 0xae, 0x8c, 0x43, 0xcf, 0x3b, 0xa9, 0xe3, 0xb7, 0xb0, 0x9b, 0x1f, 0x93, 0xcf, 0x87, 0x65, 0x53, 0x63, 0xae, 0xfe, 0x93, 0x96, 0x34, 0x8a, 0xaf, 0xb7, 0x1a, 0xef, 0xc1, 0x56, 0x78, 0x90, 0x50, 0xdf, 0x46, 0xf8, 0x40, 0x3b, 0x04, 0x6e, 0x1a, 0x90, 0x6a, 0xaf, 0x01, 0xc2, 0xc4, 0x1a, 0x7f, 0xa0, 0x0d, 0x0f, 0x7a, 0xea, 0xec, 0xa1, 0x56, 0x4d, 0xab, 0xe8, 0x70, 0xc9, 0x09, 0x71, 0x82, 0x55, 0x1b, 0x1c, 0xef, 0xeb, 0xa6, 0xb4, 0x67, 0x3e, 0x55, 0x7a, 0x1b, 0x29, 0x75, 0x87, 0x11, 0x39, 0x43, 0xe2, 0x5c, 0x00, 0xc2, 0x1a, 0x54, 0xf4, 0x5f, 0x28, 0x0e, 0x0f, 0xbc, 0x51, 0x16, 0x64, 0x93, 0x35, 0x67, 0xf7, 0x9c, 0xbd, 0x0e, 0x9e, 0x2a, 0x5a, 0xda, 0x75, }; static const unsigned char ecdsa_secp521r1_sha512_12537_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12537_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x33, 0xe6, 0x7e, 0x37, 0xb3, 0x2b, 0x44, 0x55, 0x80, 0xbf, 0x4e, 0xff, 0x01, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x3c, 0xc3, 0x39, 0x3f, 0x63, 0x2a, 0xff, 0xd3, 0xea, 0xa3, 0xc8, 0xfb, 0x64, 0x50, 0x7b, 0xd5, 0x99, 0x64, 0x97, 0xbd, 0x58, 0x8f, 0xb9, 0xe3, 0x94, 0x7c, 0x09, 0x7c, 0xed, 0x75, 0x46, 0xb5, 0x7c, 0x89, 0x98, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12537 = { .name = "ecdsa_secp521r1_sha512_12537", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12537_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12537_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12537_sig, .siglen = 132, .result = 1, .comment = "100-bit r and small s^-1, tcId is 207 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12538 for ECDSA, tcId is 208 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12538_pubkey[] = { 0x01, 0x52, 0x30, 0x45, 0x99, 0xba, 0x21, 0xfc, 0xf9, 0xef, 0x24, 0x7b, 0x99, 0xdf, 0x12, 0xad, 0xa7, 0x14, 0xc9, 0x06, 0x73, 0xf3, 0x17, 0x00, 0xa7, 0x14, 0xbc, 0xca, 0xa6, 0x47, 0xf6, 0x30, 0x80, 0x89, 0xa4, 0x38, 0xd9, 0x5a, 0x46, 0x20, 0x64, 0x62, 0x4b, 0x8c, 0x16, 0xd4, 0x2d, 0x66, 0x0f, 0x3c, 0x16, 0xa2, 0x7a, 0x82, 0x3d, 0xf1, 0xdd, 0x03, 0x98, 0x89, 0x90, 0x28, 0xef, 0x8b, 0xe6, 0xc0, 0x00, 0xe2, 0xe6, 0x1a, 0x27, 0xe8, 0xfb, 0xf0, 0xb0, 0xaf, 0xb1, 0xc3, 0x94, 0x8e, 0x8b, 0x89, 0x37, 0x5b, 0x6e, 0x5e, 0xcb, 0x5d, 0xdd, 0x46, 0xe1, 0xd2, 0xc2, 0xa1, 0x96, 0xba, 0xae, 0x1e, 0xf8, 0xd6, 0x8e, 0x4f, 0x0a, 0x92, 0x4a, 0x9b, 0x6b, 0xf8, 0x5e, 0x50, 0xfc, 0xcf, 0x71, 0x9d, 0xb6, 0x10, 0xaa, 0x00, 0x4f, 0xaf, 0xce, 0xf8, 0x3d, 0x99, 0x6c, 0xd1, 0xef, 0xcb, 0xd0, 0x08, 0x28, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12538_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12538_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12538 = { .name = "ecdsa_secp521r1_sha512_12538", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12538_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12538_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12538_sig, .siglen = 132, .result = 1, .comment = "small r and 100 bit s^-1, tcId is 208 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12539 for ECDSA, tcId is 209 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12539_pubkey[] = { 0x00, 0xd0, 0x3a, 0xcc, 0xee, 0xdd, 0xb7, 0xd8, 0xf6, 0x00, 0x41, 0x20, 0x5d, 0xef, 0x82, 0xe0, 0x9e, 0x64, 0xbc, 0x59, 0x81, 0x1c, 0xf6, 0x50, 0x2d, 0xea, 0x8f, 0x72, 0xa9, 0xa8, 0xe7, 0xdd, 0x3c, 0x6a, 0xb0, 0x3e, 0x3e, 0x6d, 0x4d, 0x13, 0x1b, 0x68, 0x85, 0x7d, 0x0a, 0xe9, 0x6f, 0xd4, 0xb5, 0x9d, 0x4f, 0xac, 0x82, 0x0b, 0x10, 0x64, 0x8f, 0xb2, 0x82, 0xdf, 0x94, 0xe5, 0xd2, 0x9c, 0x62, 0xd3, 0x01, 0x0b, 0x01, 0xc8, 0x53, 0x0a, 0x08, 0x9b, 0x07, 0xb1, 0xb2, 0xa3, 0x4f, 0xda, 0x9d, 0xfe, 0x97, 0x12, 0x3b, 0x1c, 0x0e, 0xf9, 0x7c, 0x7c, 0x9e, 0xb6, 0x4f, 0x44, 0xa6, 0xc1, 0xac, 0xf2, 0x10, 0x11, 0x57, 0xd8, 0x59, 0x6a, 0x9b, 0xdb, 0xdb, 0x54, 0xad, 0x79, 0xb3, 0xb4, 0xa3, 0x6d, 0xd0, 0x67, 0x64, 0xca, 0xb0, 0x24, 0x75, 0x1c, 0x3f, 0x84, 0xcd, 0x0a, 0x3c, 0xd7, 0x14, 0xd7, 0xe4, 0x9c, }; static const unsigned char ecdsa_secp521r1_sha512_12539_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12539_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x25, 0x22, 0xbb, 0xd3, 0xec, 0xbe, 0x7c, 0x39, 0xe9, 0x3e, 0x7c, 0x24, 0x00, 0x86, 0xec, 0xbf, 0x54, 0xab, 0x59, 0xa4, 0xe1, 0x95, 0xf0, 0xbe, 0x14, 0x02, 0xed, 0xd8, 0x65, 0x7b, 0xb9, 0x46, 0x18, 0xfa, 0xb5, 0x0f, 0x2f, 0xe2, 0x0f, 0xe5, 0xeb, 0xbc, 0x9f, 0xf0, 0xe4, 0x91, 0x39, 0x7e, 0xd3, 0x13, 0xcc, 0x91, 0x8d, 0x43, 0x8e, 0xed, 0xb9, 0xb5, 0xec, 0xb4, 0xd9, 0xdf, 0xa3, 0x05, 0x30, 0x35, 0x05, 0xba, 0xf2, 0x54, 0x00, 0xed, 0x8c, 0x20, 0xfc, 0x3f, 0xc4, 0x7b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12539 = { .name = "ecdsa_secp521r1_sha512_12539", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12539_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12539_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12539_sig, .siglen = 132, .result = 1, .comment = "100-bit r and s^-1, tcId is 209 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12540 for ECDSA, tcId is 210 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12540_pubkey[] = { 0x01, 0xd9, 0x29, 0xba, 0xb6, 0x10, 0x5b, 0xed, 0xc9, 0xc5, 0xf1, 0x85, 0x4c, 0xe3, 0x64, 0x74, 0x22, 0x48, 0x4e, 0x93, 0x3a, 0x47, 0x2c, 0x82, 0x2f, 0x3f, 0xc8, 0x8c, 0x76, 0x84, 0x54, 0x03, 0x9a, 0xa0, 0xdc, 0x1e, 0xc4, 0xf7, 0x52, 0x15, 0x7d, 0x46, 0x02, 0x5e, 0xad, 0x07, 0x22, 0xb3, 0xcb, 0x86, 0xf6, 0x82, 0x33, 0x3e, 0x88, 0xed, 0xe6, 0xbd, 0x2f, 0x74, 0x87, 0x08, 0x48, 0x73, 0xad, 0x46, 0x00, 0x58, 0x88, 0x24, 0x33, 0x60, 0xb0, 0x8b, 0xa6, 0x23, 0x8d, 0x7c, 0x82, 0xd7, 0x49, 0x20, 0xfb, 0x7c, 0x8d, 0x5c, 0xca, 0xf9, 0x2b, 0x2c, 0x47, 0x88, 0x2e, 0x73, 0x0e, 0x6a, 0x68, 0xa5, 0x62, 0x47, 0x4d, 0x3c, 0x4c, 0xd9, 0xcd, 0x13, 0x03, 0x57, 0x4c, 0x29, 0x0a, 0xed, 0xda, 0xc2, 0x13, 0xcc, 0x83, 0x1b, 0x6e, 0x71, 0x0c, 0x9c, 0xd1, 0x36, 0x89, 0x2c, 0xac, 0xc7, 0xac, 0x8e, 0x2e, 0x9a, }; static const unsigned char ecdsa_secp521r1_sha512_12540_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12540_sig[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x8a, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12540 = { .name = "ecdsa_secp521r1_sha512_12540", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12540_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12540_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12540_sig, .siglen = 132, .result = 1, .comment = "r and s^-1 are close to n, tcId is 210 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12541 for ECDSA, tcId is 211 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12541_pubkey[] = { 0x01, 0x7b, 0xfe, 0x3a, 0xda, 0x4a, 0x1a, 0x06, 0xe7, 0x32, 0xf4, 0x84, 0xf1, 0x83, 0x0d, 0x0c, 0x0b, 0x71, 0xc4, 0x7b, 0x74, 0xfa, 0x50, 0x6d, 0xe3, 0xab, 0xde, 0xa6, 0xd1, 0x39, 0xab, 0x21, 0xdd, 0x72, 0xc7, 0xb1, 0xc1, 0x30, 0x35, 0xf0, 0xff, 0xd1, 0x25, 0x43, 0x3d, 0x01, 0x00, 0xa7, 0x03, 0x03, 0x37, 0xb9, 0x9d, 0xd1, 0x62, 0x6b, 0x91, 0xca, 0x57, 0x23, 0x33, 0x58, 0x53, 0xa0, 0xf6, 0x7f, 0x00, 0x7d, 0x28, 0x44, 0x7c, 0x2f, 0xc4, 0xc2, 0x9f, 0xc7, 0x4a, 0x83, 0x8e, 0x30, 0xea, 0xe3, 0x99, 0xe2, 0x82, 0xb6, 0x07, 0xff, 0xf0, 0x61, 0xa2, 0x7b, 0x0d, 0x69, 0x32, 0x1c, 0xcc, 0x3c, 0xeb, 0x0f, 0xc3, 0xae, 0x86, 0xa5, 0x8c, 0x77, 0x40, 0x28, 0xda, 0xfd, 0x10, 0x8b, 0xd8, 0x74, 0xb8, 0xc4, 0x4f, 0x34, 0xf5, 0xab, 0x9d, 0x2e, 0x31, 0xca, 0x77, 0xd2, 0xaa, 0xb3, 0xcc, 0x5e, 0xac, 0xdb, }; static const unsigned char ecdsa_secp521r1_sha512_12541_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12541_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12541 = { .name = "ecdsa_secp521r1_sha512_12541", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12541_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12541_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12541_sig, .siglen = 132, .result = 1, .comment = "s == 1, tcId is 211 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12542 for ECDSA, tcId is 212 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12542_pubkey[] = { 0x01, 0x7b, 0xfe, 0x3a, 0xda, 0x4a, 0x1a, 0x06, 0xe7, 0x32, 0xf4, 0x84, 0xf1, 0x83, 0x0d, 0x0c, 0x0b, 0x71, 0xc4, 0x7b, 0x74, 0xfa, 0x50, 0x6d, 0xe3, 0xab, 0xde, 0xa6, 0xd1, 0x39, 0xab, 0x21, 0xdd, 0x72, 0xc7, 0xb1, 0xc1, 0x30, 0x35, 0xf0, 0xff, 0xd1, 0x25, 0x43, 0x3d, 0x01, 0x00, 0xa7, 0x03, 0x03, 0x37, 0xb9, 0x9d, 0xd1, 0x62, 0x6b, 0x91, 0xca, 0x57, 0x23, 0x33, 0x58, 0x53, 0xa0, 0xf6, 0x7f, 0x00, 0x7d, 0x28, 0x44, 0x7c, 0x2f, 0xc4, 0xc2, 0x9f, 0xc7, 0x4a, 0x83, 0x8e, 0x30, 0xea, 0xe3, 0x99, 0xe2, 0x82, 0xb6, 0x07, 0xff, 0xf0, 0x61, 0xa2, 0x7b, 0x0d, 0x69, 0x32, 0x1c, 0xcc, 0x3c, 0xeb, 0x0f, 0xc3, 0xae, 0x86, 0xa5, 0x8c, 0x77, 0x40, 0x28, 0xda, 0xfd, 0x10, 0x8b, 0xd8, 0x74, 0xb8, 0xc4, 0x4f, 0x34, 0xf5, 0xab, 0x9d, 0x2e, 0x31, 0xca, 0x77, 0xd2, 0xaa, 0xb3, 0xcc, 0x5e, 0xac, 0xdb, }; static const unsigned char ecdsa_secp521r1_sha512_12542_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12542_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12542 = { .name = "ecdsa_secp521r1_sha512_12542", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12542_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12542_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12542_sig, .siglen = 132, .result = -1, .comment = "s == 0, tcId is 212 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12543 for ECDSA, tcId is 213 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12543_pubkey[] = { 0x01, 0x3b, 0x73, 0xbe, 0x0e, 0xc4, 0xf1, 0x8b, 0x36, 0xfd, 0xc2, 0x0a, 0xac, 0x96, 0x75, 0x58, 0x0a, 0x20, 0xcc, 0x72, 0x5e, 0xd0, 0xde, 0x6f, 0xea, 0x63, 0xab, 0x61, 0x11, 0xb4, 0xaa, 0xec, 0xc6, 0x9b, 0x1f, 0xdf, 0x05, 0xbb, 0x1c, 0x7a, 0x71, 0xc4, 0xb7, 0xa5, 0xa1, 0xea, 0xaf, 0xf2, 0x3b, 0xe1, 0x56, 0x04, 0xf4, 0x05, 0xb5, 0xec, 0xd3, 0xb3, 0xed, 0x6a, 0xfe, 0xa8, 0xe4, 0x9c, 0xd6, 0x49, 0x00, 0x91, 0x21, 0x80, 0xc9, 0x81, 0xf4, 0x80, 0xd2, 0xb8, 0xb7, 0x43, 0x89, 0x88, 0xb0, 0x3a, 0x0c, 0x5e, 0xfd, 0xbd, 0x2d, 0xa0, 0x94, 0xf0, 0x82, 0xf7, 0xfa, 0x57, 0xec, 0xc4, 0x1f, 0xde, 0x8c, 0x65, 0xd3, 0xc9, 0xd8, 0x0f, 0x34, 0xf9, 0x12, 0x4e, 0x15, 0x1d, 0xa5, 0x5d, 0x96, 0xd2, 0xa9, 0xb9, 0x91, 0x67, 0x2d, 0xe7, 0x94, 0x49, 0xbc, 0xc1, 0xc0, 0x19, 0x2b, 0x76, 0x50, 0xae, 0x90, 0xb7, }; static const unsigned char ecdsa_secp521r1_sha512_12543_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12543_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12543 = { .name = "ecdsa_secp521r1_sha512_12543", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12543_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12543_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12543_sig, .siglen = 132, .result = -1, .comment = "point at infinity during verify, tcId is 213 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12544 for ECDSA, tcId is 214 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12544_pubkey[] = { 0x00, 0x43, 0xeb, 0x86, 0x2a, 0x5a, 0x4d, 0xce, 0x6d, 0xe4, 0xb0, 0x90, 0x1b, 0x91, 0xdf, 0x94, 0xfa, 0xb2, 0x78, 0xc3, 0x26, 0xac, 0x34, 0x98, 0xc4, 0x81, 0xae, 0x3f, 0x49, 0xb8, 0x93, 0xab, 0x8b, 0x31, 0xd8, 0x09, 0x72, 0x3c, 0x02, 0xa3, 0xca, 0x51, 0x54, 0xe5, 0xd5, 0xb9, 0xe0, 0xd4, 0x3f, 0xde, 0x8c, 0xbd, 0xfb, 0xb8, 0x09, 0xb7, 0x46, 0x20, 0x86, 0x74, 0x83, 0x81, 0x7d, 0x78, 0x9f, 0xd8, 0x01, 0x7f, 0x47, 0x7e, 0x01, 0x96, 0x8a, 0xc1, 0x29, 0x77, 0xaf, 0xff, 0xc3, 0x93, 0xf5, 0x13, 0x23, 0xce, 0x4d, 0xba, 0x0e, 0xd0, 0xd3, 0xc7, 0x00, 0xaa, 0x6b, 0x3b, 0x6f, 0xb4, 0x92, 0x99, 0x7b, 0x04, 0xbd, 0x09, 0xf6, 0x4a, 0x76, 0x73, 0xb1, 0x26, 0x23, 0x4d, 0xc2, 0x5b, 0x02, 0x39, 0x63, 0x3a, 0x5c, 0xd3, 0x82, 0x28, 0x96, 0xfb, 0xd1, 0xd5, 0xe2, 0x71, 0x03, 0x8a, 0x2f, 0x3b, 0x79, 0xb5, }; static const unsigned char ecdsa_secp521r1_sha512_12544_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12544_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12544 = { .name = "ecdsa_secp521r1_sha512_12544", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12544_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12544_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12544_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 214 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12545 for ECDSA, tcId is 215 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12545_pubkey[] = { 0x00, 0x19, 0x85, 0xd1, 0x9d, 0x13, 0x1d, 0x76, 0xcf, 0x1d, 0xa8, 0x88, 0x7b, 0x31, 0x4e, 0x2e, 0xeb, 0x48, 0x1d, 0x14, 0x1f, 0x82, 0x41, 0xfe, 0xc4, 0x6c, 0xf2, 0x77, 0x9f, 0xa2, 0x04, 0x23, 0x64, 0xa8, 0xa0, 0xc3, 0x65, 0x62, 0x1e, 0xf7, 0x2e, 0x18, 0xc4, 0x4e, 0xe4, 0xb6, 0x09, 0x7f, 0x79, 0x55, 0x20, 0x60, 0xd7, 0xa7, 0x65, 0xd5, 0x8f, 0x52, 0x40, 0x39, 0x4e, 0x66, 0xc2, 0x3b, 0xcf, 0xa8, 0x00, 0x1d, 0xb2, 0x2a, 0x61, 0x6d, 0x88, 0x69, 0x3a, 0xbd, 0x28, 0x9c, 0xc7, 0x7d, 0xdc, 0x5a, 0xcb, 0xd0, 0x02, 0x20, 0xde, 0x75, 0xda, 0x04, 0x9a, 0x58, 0xba, 0x30, 0x46, 0x8e, 0x2c, 0xa2, 0x56, 0xa7, 0x23, 0xba, 0x12, 0xa0, 0x9d, 0x45, 0x87, 0x1e, 0xad, 0xc3, 0x74, 0x76, 0xcd, 0x2e, 0x52, 0xcc, 0xdf, 0x1e, 0x06, 0xc9, 0xa9, 0x4e, 0xc5, 0x2f, 0x75, 0xd2, 0x9a, 0x19, 0x01, 0x2f, 0xc6, 0x96, }; static const unsigned char ecdsa_secp521r1_sha512_12545_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12545_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x06, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x28, 0xc3, 0x43, 0xc1, 0xdf, 0x97, 0xcb, 0x35, 0xbf, 0xe6, 0x00, 0xa4, 0x7b, 0x84, 0xd2, 0xe8, 0x1d, 0xda, 0xe4, 0xdc, 0x44, 0xce, 0x23, 0xd7, 0x5d, 0xb7, 0xdb, 0x8f, 0x48, 0x9c, 0x32, 0x05, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12545 = { .name = "ecdsa_secp521r1_sha512_12545", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12545_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12545_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12545_sig, .siglen = 132, .result = 1, .comment = "edge case for signature malleability, tcId is 215 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12546 for ECDSA, tcId is 216 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12546_pubkey[] = { 0x01, 0xc0, 0x1e, 0xab, 0x9b, 0xa6, 0xdd, 0xd2, 0x1e, 0x33, 0x42, 0x10, 0x34, 0xac, 0xd6, 0xac, 0x92, 0x3a, 0x40, 0x9f, 0xab, 0x34, 0x9e, 0x03, 0x80, 0xbf, 0xaa, 0x54, 0xb4, 0x04, 0x89, 0x00, 0x86, 0xa5, 0xe1, 0x2f, 0xb0, 0x9e, 0x13, 0x52, 0x71, 0x2c, 0xfd, 0xe1, 0x5a, 0xbc, 0x25, 0x63, 0x07, 0x9a, 0x73, 0xd3, 0x33, 0xc9, 0xc7, 0x9c, 0x67, 0x0f, 0xb0, 0x6b, 0x5d, 0x80, 0x2a, 0xa9, 0xb7, 0x76, 0x00, 0xa7, 0x6a, 0x28, 0xd0, 0x3f, 0x65, 0x7c, 0x61, 0xbf, 0x87, 0xff, 0x78, 0xe7, 0x73, 0x3a, 0x06, 0x95, 0x56, 0xd2, 0xbd, 0x63, 0x8b, 0x79, 0x31, 0x6a, 0xb7, 0x0b, 0x5a, 0x28, 0x09, 0xbc, 0x8a, 0x98, 0xa2, 0xa8, 0x43, 0x23, 0x8d, 0x4a, 0xbe, 0x26, 0x98, 0xb2, 0xaa, 0x6a, 0xed, 0xe1, 0xb2, 0x54, 0x1b, 0xf3, 0xdc, 0xd0, 0x07, 0xcf, 0x9c, 0xd5, 0xc4, 0xd4, 0x96, 0x9c, 0x4f, 0x7f, 0xfc, 0xcb, }; static const unsigned char ecdsa_secp521r1_sha512_12546_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12546_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12546 = { .name = "ecdsa_secp521r1_sha512_12546", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12546_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12546_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12546_sig, .siglen = 132, .result = 1, .comment = "u1 == 1, tcId is 216 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12547 for ECDSA, tcId is 217 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12547_pubkey[] = { 0x00, 0x18, 0x63, 0x65, 0xc7, 0x35, 0x88, 0x80, 0x7a, 0x51, 0x00, 0x54, 0x12, 0xdb, 0x00, 0x4b, 0x45, 0xf5, 0xf7, 0xbe, 0x3a, 0x60, 0x74, 0xe6, 0x11, 0x90, 0x42, 0x97, 0x8d, 0xbf, 0xbc, 0x5a, 0x43, 0x1e, 0x16, 0xcc, 0x93, 0x07, 0x47, 0xe6, 0xcd, 0x75, 0x11, 0x50, 0x5b, 0x4c, 0x93, 0x49, 0xce, 0xdf, 0x90, 0x8a, 0x5a, 0x9d, 0xbd, 0x33, 0xcd, 0xb0, 0xae, 0xcc, 0xbf, 0x69, 0x45, 0x44, 0x57, 0xfb, 0x00, 0x14, 0x62, 0x0a, 0x29, 0xa2, 0x69, 0x1d, 0x80, 0x38, 0xd3, 0x9e, 0x1e, 0x4d, 0xe7, 0xc4, 0x24, 0x3c, 0x8c, 0x42, 0x60, 0x1e, 0x71, 0x99, 0x45, 0xc1, 0x29, 0x7c, 0x1a, 0x4b, 0x10, 0xd7, 0x41, 0x5a, 0xf3, 0x7b, 0xf1, 0xed, 0x0d, 0xdc, 0x90, 0x30, 0xbc, 0xe5, 0x30, 0x18, 0x5d, 0xfd, 0xfc, 0x46, 0x58, 0xff, 0x63, 0x5f, 0x6b, 0xd9, 0x66, 0x0b, 0xec, 0xc8, 0xff, 0x9e, 0xca, 0x4f, 0xdd, 0xfa, }; static const unsigned char ecdsa_secp521r1_sha512_12547_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12547_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12547 = { .name = "ecdsa_secp521r1_sha512_12547", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12547_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12547_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12547_sig, .siglen = 132, .result = 1, .comment = "u1 == n - 1, tcId is 217 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12548 for ECDSA, tcId is 218 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12548_pubkey[] = { 0x00, 0x2e, 0x2a, 0x74, 0x6b, 0x55, 0xe0, 0x5b, 0xc1, 0x30, 0xd3, 0x74, 0xc8, 0xab, 0xb8, 0xbf, 0x65, 0x1a, 0x2e, 0x2b, 0x02, 0x54, 0x04, 0xf0, 0x85, 0x45, 0xbe, 0xfc, 0xb9, 0x5c, 0x9f, 0x7f, 0x68, 0x1f, 0x6f, 0x5b, 0x9b, 0xf2, 0xeb, 0xc4, 0x5d, 0x4c, 0x85, 0x72, 0x92, 0x1d, 0x3a, 0xb5, 0xdc, 0xe1, 0x44, 0xea, 0x5d, 0x50, 0xeb, 0xec, 0x89, 0xb8, 0xc8, 0xf0, 0x10, 0xea, 0x31, 0x49, 0x48, 0x63, 0x00, 0x8c, 0x81, 0x6f, 0x12, 0x2d, 0x5d, 0x63, 0xb5, 0xfe, 0xa0, 0x0d, 0x1a, 0x00, 0xed, 0x23, 0x57, 0x7f, 0x7e, 0xf7, 0xd4, 0x8f, 0x39, 0x73, 0x56, 0x83, 0x53, 0xd4, 0x68, 0x36, 0x8e, 0xc7, 0x7c, 0xbc, 0x9e, 0x3c, 0x50, 0x12, 0x83, 0x9b, 0x74, 0x83, 0x30, 0x87, 0xd5, 0x1b, 0xa3, 0xe6, 0x80, 0xab, 0x53, 0x75, 0xbe, 0x68, 0x0e, 0xa8, 0xc1, 0x8f, 0x7b, 0x61, 0x9f, 0x32, 0xb1, 0x41, 0xf2, 0x81, }; static const unsigned char ecdsa_secp521r1_sha512_12548_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12548_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12548 = { .name = "ecdsa_secp521r1_sha512_12548", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12548_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12548_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12548_sig, .siglen = 132, .result = 1, .comment = "u2 == 1, tcId is 218 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12549 for ECDSA, tcId is 219 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12549_pubkey[] = { 0x00, 0xd3, 0x79, 0xf7, 0x98, 0x26, 0xb0, 0x41, 0x98, 0xdf, 0x37, 0x1a, 0xb0, 0x51, 0x9d, 0x1a, 0x7f, 0x0a, 0x4f, 0x19, 0x9d, 0x61, 0x49, 0xca, 0x8b, 0x7f, 0x13, 0xa5, 0xda, 0x09, 0xcb, 0xa0, 0x24, 0xfb, 0xe7, 0xd4, 0xff, 0x7f, 0xd7, 0xa8, 0xa9, 0x3b, 0x5c, 0xbc, 0xaf, 0x3c, 0x68, 0x24, 0x3f, 0x63, 0x0d, 0x47, 0xd8, 0xf2, 0xb6, 0x52, 0xb6, 0xa7, 0xd6, 0xb1, 0xc5, 0x22, 0xa7, 0x5f, 0xa9, 0xf2, 0x01, 0xc6, 0x60, 0x72, 0x2d, 0x95, 0xc8, 0x3c, 0x6b, 0x94, 0x57, 0x94, 0x4a, 0xcc, 0x67, 0x1e, 0x88, 0x1e, 0x8d, 0x17, 0xb0, 0x73, 0x62, 0xf2, 0xf8, 0x27, 0x99, 0x45, 0x6f, 0x2f, 0x15, 0xd6, 0x62, 0xd3, 0x6a, 0xa0, 0x9d, 0x5a, 0x52, 0x36, 0x28, 0x8d, 0x3c, 0x13, 0x82, 0xe3, 0xe2, 0x30, 0x8f, 0x46, 0x86, 0x7d, 0x53, 0xc5, 0x88, 0xa3, 0x70, 0x85, 0x7f, 0xae, 0x4d, 0x32, 0xf0, 0xa3, 0xdd, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_12549_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12549_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x01, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x51, 0x8b, 0xaf, 0x05, 0x02, 0x7f, 0x75, 0x0e, 0xf2, 0x55, 0x32, 0xab, 0x85, 0xfa, 0x06, 0x6e, 0x8a, 0xd2, 0x79, 0x31, 0x25, 0xb1, 0x12, 0xda, 0x74, 0x7c, 0xf5, 0x24, 0xbf, 0x0b, 0x7a, 0xed, 0x5c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12549 = { .name = "ecdsa_secp521r1_sha512_12549", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12549_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12549_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12549_sig, .siglen = 132, .result = 1, .comment = "u2 == n - 1, tcId is 219 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12550 for ECDSA, tcId is 220 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12550_pubkey[] = { 0x01, 0xb9, 0xcc, 0x8c, 0xab, 0x6a, 0xf3, 0xef, 0xce, 0x62, 0xa1, 0x5d, 0xe1, 0xf2, 0xad, 0xbb, 0xb2, 0x2a, 0x4d, 0x2d, 0x74, 0xe8, 0xdc, 0xf3, 0x2f, 0xec, 0x0a, 0x94, 0xa3, 0xda, 0x35, 0x08, 0xde, 0x1d, 0x4a, 0x07, 0x3f, 0x52, 0x45, 0xf9, 0x6c, 0x9a, 0x6a, 0xa3, 0x02, 0x1e, 0x54, 0xea, 0xa3, 0x53, 0x3a, 0x78, 0x17, 0xc4, 0xe5, 0x79, 0x44, 0xab, 0x21, 0x74, 0x54, 0x9b, 0x6b, 0x93, 0xeb, 0x50, 0x01, 0x71, 0x2c, 0xdd, 0x83, 0x66, 0xc4, 0x51, 0x18, 0xf0, 0x16, 0x16, 0x3a, 0x73, 0x47, 0x19, 0x8f, 0x49, 0x5a, 0x2a, 0x9b, 0xc4, 0x27, 0x90, 0x8d, 0xbc, 0x6d, 0xd4, 0xb3, 0x30, 0xf5, 0x6e, 0x1c, 0x1d, 0xf4, 0xa9, 0x88, 0x6f, 0x7f, 0xd6, 0x3c, 0x49, 0x12, 0x4a, 0xde, 0x60, 0xd5, 0xbf, 0x8e, 0x6b, 0x7a, 0xc3, 0xd6, 0x9d, 0x38, 0xf9, 0xc4, 0xdb, 0xd8, 0xa1, 0x22, 0x16, 0x38, 0x27, 0x2c, 0xcb, }; static const unsigned char ecdsa_secp521r1_sha512_12550_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12550_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x42, 0x4f, 0x8a, 0x11, 0x45, 0x1e, 0xcd, 0x07, 0x35, 0xf0, 0x6d, 0xa9, 0xd1, 0x52, 0x65, 0xd8, 0x2c, 0x3c, 0x08, 0xf4, 0x3d, 0xb2, 0x00, 0xb4, 0xb9, 0x40, 0x4d, 0x55, 0x8c, 0x97, 0x49, 0xdd, 0x51, 0xb1, 0x60, 0x7d, 0xa7, 0x8f, 0x82, 0xed, 0xa9, 0xf3, 0x2f, 0x5e, 0x53, 0xae, 0xf6, 0xed, 0x9b, 0x97, 0x19, 0x1f, 0xbd, 0x3b, 0xae, 0x7f, 0x35, 0xdd, 0xd3, 0xe6, 0x69, 0x03, 0xd8, 0xbb, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12550 = { .name = "ecdsa_secp521r1_sha512_12550", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12550_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12550_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12550_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 220 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12551 for ECDSA, tcId is 221 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12551_pubkey[] = { 0x00, 0x38, 0x26, 0xc9, 0x1a, 0xaa, 0x33, 0xa1, 0x83, 0xde, 0x3f, 0x6e, 0x13, 0x4d, 0x86, 0x53, 0x08, 0xae, 0xbc, 0x79, 0x0e, 0x92, 0x87, 0xbc, 0x7a, 0xe1, 0x36, 0xed, 0x59, 0xbf, 0x03, 0xbe, 0x44, 0xa7, 0xb5, 0xb4, 0x3a, 0x18, 0xca, 0x8a, 0xf1, 0xa1, 0x4e, 0x8c, 0xa8, 0x8e, 0xfe, 0x1c, 0x65, 0xf8, 0x94, 0x97, 0x6c, 0x56, 0xc4, 0x8a, 0xf0, 0x0b, 0x5a, 0xc1, 0xf3, 0xcb, 0xcd, 0xf5, 0x88, 0xb6, 0x01, 0xac, 0x3b, 0xce, 0x5f, 0xae, 0x3c, 0x2b, 0xb6, 0xdc, 0xf1, 0x9d, 0x9c, 0x27, 0x5e, 0xb2, 0xeb, 0x56, 0x14, 0x52, 0x3a, 0x04, 0xbf, 0x0e, 0x7f, 0x98, 0xa4, 0xa5, 0x0b, 0xe7, 0xf8, 0x0c, 0x8c, 0xce, 0xe8, 0xa9, 0xe7, 0xb7, 0x4c, 0x8a, 0xf0, 0x76, 0x34, 0x17, 0x04, 0xa7, 0xac, 0x23, 0x76, 0x9a, 0x42, 0x07, 0x17, 0x22, 0x7d, 0x6f, 0x7d, 0x1b, 0xbc, 0xfc, 0xec, 0xf7, 0x20, 0xec, 0xac, 0x39, }; static const unsigned char ecdsa_secp521r1_sha512_12551_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12551_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x41, 0xee, 0xab, 0x7d, 0x3d, 0x7e, 0x80, 0x93, 0x7c, 0xad, 0x0b, 0x86, 0xd3, 0xe5, 0x3e, 0x14, 0x83, 0x01, 0x66, 0xc2, 0xef, 0xa8, 0x9d, 0xf1, 0x8e, 0xc6, 0xf8, 0x8f, 0xc6, 0xa8, 0xa5, 0x80, 0x60, 0x1a, 0x91, 0x93, 0x4b, 0xa9, 0x22, 0xbd, 0x74, 0x63, 0x51, 0xa0, 0x08, 0xac, 0x4f, 0x86, 0xdc, 0xc4, 0xd1, 0x3a, 0x7f, 0xf0, 0x94, 0x20, 0xf8, 0x97, 0xb5, 0x2b, 0xf8, 0x8a, 0x4c, 0x92, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12551 = { .name = "ecdsa_secp521r1_sha512_12551", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12551_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12551_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12551_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 221 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12552 for ECDSA, tcId is 222 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12552_pubkey[] = { 0x00, 0xc8, 0x61, 0xb3, 0xd5, 0x97, 0x7d, 0xaf, 0xd3, 0x21, 0xc4, 0x2e, 0xab, 0x19, 0x13, 0xa2, 0xf1, 0xa7, 0x34, 0xe9, 0xfb, 0x1a, 0x21, 0x8f, 0x33, 0xc0, 0x2a, 0x94, 0x1d, 0xaf, 0xa4, 0x1e, 0x7f, 0x5f, 0xa5, 0xb4, 0xd7, 0x3f, 0x52, 0xc7, 0x4c, 0x35, 0xe6, 0x26, 0x2b, 0x1c, 0x4a, 0x15, 0x45, 0xc5, 0xcd, 0xdf, 0xa9, 0x12, 0xfe, 0x44, 0x2e, 0xe7, 0xa1, 0x6a, 0xaa, 0xe0, 0xc5, 0xc3, 0xf6, 0x43, 0x00, 0x60, 0x1d, 0xb9, 0x81, 0xab, 0x95, 0x93, 0xc9, 0x40, 0x57, 0x23, 0xca, 0xa8, 0x6d, 0x86, 0x2c, 0x57, 0x5b, 0x5c, 0x54, 0xa4, 0x87, 0x46, 0x7c, 0x23, 0x40, 0xe4, 0x95, 0xf2, 0x6d, 0xbb, 0x15, 0x87, 0x57, 0x0d, 0x10, 0xd3, 0x86, 0x09, 0xb3, 0x8c, 0x50, 0x09, 0x48, 0x05, 0x5f, 0x59, 0x6b, 0x29, 0x01, 0x94, 0xb1, 0xe6, 0x6e, 0xa8, 0xd0, 0x6f, 0xfa, 0x75, 0x54, 0xd1, 0xd8, 0xfb, 0x6b, 0x18, }; static const unsigned char ecdsa_secp521r1_sha512_12552_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12552_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa2, 0xeb, 0x25, 0xc2, 0xd3, 0xf9, 0xdb, 0x15, 0xf3, 0x20, 0xa4, 0xdd, 0x42, 0xe2, 0x36, 0xf9, 0x8a, 0x5d, 0x8c, 0x67, 0x74, 0xc1, 0x2f, 0x98, 0x2e, 0x2b, 0xce, 0x6c, 0x5e, 0x16, 0xcb, 0x53, 0xdb, 0xc5, 0x2d, 0xa6, 0xe0, 0x91, 0x20, 0x11, 0x70, 0xc7, 0xb1, 0x14, 0x63, 0x70, 0x08, 0x65, 0x12, 0x0b, 0x56, 0x0f, 0x10, 0x6e, 0x14, 0x48, 0xc5, 0x7f, 0x95, 0x7a, 0x3b, 0xec, 0x28, 0xdb, 0x90, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12552 = { .name = "ecdsa_secp521r1_sha512_12552", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12552_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12552_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12552_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 222 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12553 for ECDSA, tcId is 223 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12553_pubkey[] = { 0x00, 0x1f, 0x02, 0xda, 0x36, 0x38, 0x29, 0xee, 0x08, 0xb4, 0xcc, 0x93, 0x46, 0x4e, 0x2d, 0x7b, 0x16, 0xf2, 0xc2, 0x62, 0xef, 0x79, 0x77, 0xa4, 0xb4, 0xd4, 0x0f, 0x13, 0x84, 0xb4, 0x0b, 0xde, 0x68, 0x08, 0x12, 0x88, 0x60, 0xe5, 0x53, 0x9f, 0xb9, 0x1e, 0x92, 0x31, 0x04, 0x80, 0x24, 0x99, 0x9a, 0xbc, 0xe1, 0x8f, 0x1f, 0xbe, 0xea, 0x89, 0x83, 0x48, 0x75, 0x49, 0xa4, 0x04, 0x3b, 0x53, 0x02, 0x38, 0x00, 0x75, 0x4a, 0x05, 0x9a, 0x8e, 0xa1, 0x1b, 0xca, 0x4c, 0x1f, 0x2c, 0x53, 0x6f, 0xbb, 0xd9, 0x10, 0xc5, 0x03, 0x86, 0xac, 0xd5, 0x54, 0xc2, 0x74, 0x78, 0x09, 0x0d, 0xfa, 0x92, 0x99, 0x9f, 0x27, 0xe2, 0x6e, 0x9c, 0x5f, 0x0c, 0x55, 0x1f, 0x7b, 0x02, 0xaa, 0x15, 0x23, 0xdb, 0xf5, 0x60, 0x63, 0xf7, 0xbb, 0x70, 0x04, 0xd6, 0x49, 0x04, 0xc1, 0xae, 0xc3, 0x5b, 0xc7, 0x3a, 0xef, 0xe2, 0xe8, 0x08, }; static const unsigned char ecdsa_secp521r1_sha512_12553_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12553_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xa5, 0x21, 0xa4, 0x45, 0xfe, 0x80, 0x1d, 0xd1, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xdf, 0xff, 0x25, 0x61, 0x2d, 0x4c, 0x64, 0x0b, 0x97, 0x2f, 0x44, 0x00, 0xe5, 0xbf, 0x59, 0x7b, 0x34, 0x2c, 0xc4, 0xa0, 0xe5, 0xe4, 0xd5, 0x0c, 0xa5, 0x79, 0xce, 0x8a, 0x0a, 0xe0, 0x9c, 0x09, 0x13, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12553 = { .name = "ecdsa_secp521r1_sha512_12553", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12553_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12553_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12553_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 223 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12554 for ECDSA, tcId is 224 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12554_pubkey[] = { 0x00, 0x2e, 0xce, 0x29, 0x62, 0xef, 0x47, 0x11, 0xf4, 0x9b, 0x16, 0x97, 0xac, 0x7f, 0xad, 0x07, 0x59, 0x16, 0x77, 0x67, 0xa1, 0x04, 0xb7, 0x6a, 0xd8, 0x77, 0x49, 0xc8, 0x3a, 0xe2, 0x81, 0x8b, 0xf6, 0x6a, 0xb9, 0xd9, 0x50, 0x9f, 0x73, 0xfb, 0x15, 0x3e, 0xab, 0x8b, 0x54, 0x60, 0x7d, 0xcc, 0xa7, 0x3d, 0x3c, 0x38, 0x09, 0x75, 0xaf, 0xa3, 0xee, 0x39, 0x37, 0x32, 0xb4, 0x4a, 0x59, 0x34, 0x99, 0x2c, 0x01, 0x18, 0x6a, 0xd8, 0x0b, 0xf1, 0x23, 0xba, 0x35, 0xbd, 0x5b, 0x21, 0xb3, 0xd9, 0x5e, 0x2c, 0x67, 0x2a, 0xd3, 0xb4, 0x85, 0xf0, 0x78, 0x62, 0x08, 0x58, 0xcf, 0xb2, 0x4f, 0x1b, 0xf6, 0x1e, 0xad, 0x90, 0xfb, 0x1a, 0x27, 0x23, 0xec, 0x50, 0x1c, 0x2b, 0x7a, 0x97, 0xcd, 0xd1, 0xfc, 0x3e, 0x96, 0x4e, 0x86, 0xd2, 0x3c, 0x03, 0x0a, 0x2a, 0xb9, 0x0d, 0xa6, 0xf3, 0x97, 0x1d, 0xa4, 0xf6, 0x8c, 0x99, }; static const unsigned char ecdsa_secp521r1_sha512_12554_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12554_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x1a, 0x44, 0x5f, 0xe8, 0x01, 0xdd, 0x1f, 0xf3, 0x91, 0x16, 0x1c, 0xc3, 0x0a, 0x39, 0x8e, 0xa5, 0xe2, 0xeb, 0x70, 0x28, 0xc0, 0x8c, 0xe7, 0x77, 0xb4, 0xbe, 0x52, 0x34, 0x6e, 0x9f, 0xde, 0x1d, 0x43, 0xa6, 0xe1, 0x8d, 0xf0, 0xb4, 0x2a, 0x42, 0x3d, 0xcc, 0x5b, 0xba, 0x72, 0xd6, 0xea, 0xa3, 0x48, 0x2d, 0x00, 0x75, 0x0f, 0x39, 0x5c, 0x72, 0xf7, 0xb5, 0x28, 0xc1, 0x4e, 0x64, 0x94, 0xfd, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12554 = { .name = "ecdsa_secp521r1_sha512_12554", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12554_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12554_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12554_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 224 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12555 for ECDSA, tcId is 225 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12555_pubkey[] = { 0x01, 0xab, 0x98, 0x1f, 0x50, 0x7a, 0xac, 0x6c, 0x08, 0xa9, 0xaf, 0x8d, 0x79, 0x63, 0xc0, 0xcc, 0x95, 0xd9, 0xa4, 0x17, 0x6a, 0x30, 0xbd, 0x36, 0xd9, 0xb8, 0xb9, 0x66, 0x69, 0x79, 0x12, 0xf5, 0x69, 0x08, 0x79, 0x2c, 0xcf, 0x15, 0xc6, 0xca, 0x41, 0x81, 0x51, 0xaa, 0x2e, 0x84, 0x1c, 0x17, 0x78, 0x3f, 0x84, 0x14, 0xfa, 0x4d, 0x5c, 0x22, 0x2e, 0x49, 0xc0, 0x07, 0xad, 0xca, 0xb1, 0x0a, 0xa0, 0x34, 0x00, 0x8d, 0x1a, 0x16, 0x88, 0xa8, 0x39, 0x93, 0x10, 0x84, 0xca, 0xed, 0xe3, 0x37, 0x58, 0x20, 0x86, 0x56, 0x83, 0x72, 0x92, 0x20, 0x9a, 0x87, 0x7f, 0xbc, 0x1c, 0x12, 0xeb, 0x56, 0xff, 0x98, 0x50, 0x8d, 0x23, 0x48, 0x3d, 0x6e, 0x36, 0xa6, 0xd4, 0x7e, 0x0f, 0x22, 0x17, 0xd2, 0x58, 0xcd, 0xdc, 0xc6, 0xf2, 0xef, 0xfe, 0x24, 0x3c, 0x0a, 0x33, 0x66, 0x4e, 0x0a, 0xba, 0x0e, 0x46, 0xda, 0x33, 0xb9, }; static const unsigned char ecdsa_secp521r1_sha512_12555_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12555_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x34, 0x88, 0xbf, 0xd0, 0x03, 0xba, 0x3f, 0xe7, 0x22, 0x2c, 0x39, 0x86, 0x14, 0x73, 0x1d, 0x4b, 0xc5, 0xd6, 0xe0, 0x51, 0x81, 0x19, 0xce, 0xef, 0x69, 0x7c, 0xa4, 0x68, 0xdd, 0x3f, 0xbc, 0x3a, 0x87, 0x4d, 0xc3, 0x1b, 0xe1, 0x68, 0x54, 0x84, 0x7b, 0x98, 0xb7, 0x74, 0xe5, 0xad, 0xd5, 0x46, 0x90, 0x5a, 0x00, 0xea, 0x1e, 0x72, 0xb8, 0xe5, 0xef, 0x6a, 0x51, 0x82, 0x9c, 0xc9, 0x29, 0xfb, 0x1e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12555 = { .name = "ecdsa_secp521r1_sha512_12555", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12555_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12555_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12555_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 225 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12556 for ECDSA, tcId is 226 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12556_pubkey[] = { 0x00, 0xfe, 0xfa, 0xcf, 0x42, 0x56, 0x61, 0xc8, 0xd3, 0xa2, 0x18, 0x3f, 0xc4, 0xce, 0x11, 0xb9, 0xa7, 0x97, 0x98, 0xb9, 0x23, 0x67, 0x1e, 0x42, 0xc6, 0x93, 0xc1, 0x0b, 0xee, 0x06, 0xd8, 0xa7, 0xb4, 0x61, 0xef, 0xa4, 0xa3, 0x25, 0x73, 0xca, 0xc7, 0xa0, 0x16, 0x4f, 0x2b, 0xa3, 0xe9, 0xf4, 0x83, 0x66, 0xb8, 0xad, 0x06, 0x41, 0x70, 0xfb, 0xe7, 0x98, 0x66, 0x4b, 0x15, 0x38, 0x9d, 0x8e, 0x8d, 0xa4, 0x01, 0x7f, 0x4b, 0x29, 0xcb, 0x1a, 0xe0, 0x9f, 0x64, 0x0a, 0x6a, 0xbe, 0xb7, 0x8a, 0x84, 0x67, 0x74, 0x22, 0xbe, 0xfb, 0x80, 0x41, 0x63, 0x41, 0x38, 0x6a, 0xde, 0xe4, 0xda, 0xe7, 0x02, 0xc7, 0xe1, 0x6a, 0xe8, 0x3d, 0x02, 0x45, 0x31, 0xe1, 0xb6, 0x3b, 0x01, 0xac, 0xb2, 0xc4, 0x6e, 0x4c, 0x0e, 0x25, 0xde, 0x56, 0x91, 0x5b, 0xd4, 0xc9, 0x0e, 0xf1, 0x13, 0xe8, 0x77, 0x91, 0x08, 0xfa, 0xe2, 0x67, }; static const unsigned char ecdsa_secp521r1_sha512_12556_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12556_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xfe, 0x80, 0x1d, 0xd1, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xf9, 0xb0, 0x03, 0x30, 0x4f, 0xb6, 0x26, 0x9c, 0x9f, 0x55, 0x07, 0x68, 0x53, 0x7b, 0x35, 0xf9, 0x64, 0x43, 0x55, 0x6a, 0x62, 0xb5, 0xec, 0x77, 0x95, 0x8b, 0xd8, 0xe4, 0x20, 0x4d, 0x63, 0x54, 0xce, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12556 = { .name = "ecdsa_secp521r1_sha512_12556", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12556_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12556_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12556_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 226 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12557 for ECDSA, tcId is 227 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12557_pubkey[] = { 0x01, 0xba, 0x56, 0x3f, 0x24, 0x3d, 0x85, 0x90, 0x23, 0x3b, 0xe5, 0x97, 0x45, 0xdc, 0x8e, 0x31, 0x1e, 0x87, 0xb6, 0xa9, 0xe3, 0x2b, 0xdd, 0xbd, 0xf4, 0x0f, 0x0d, 0xc8, 0x7a, 0x11, 0xbd, 0xd1, 0xd7, 0x5d, 0x58, 0xd3, 0x12, 0xc3, 0x6d, 0xc8, 0xe2, 0x72, 0x22, 0x36, 0x90, 0xda, 0x1b, 0x6a, 0x05, 0x8d, 0x5d, 0xab, 0x56, 0xf2, 0xfc, 0x6f, 0x29, 0x71, 0x21, 0xa5, 0xab, 0x28, 0x8c, 0x26, 0x9e, 0x75, 0x01, 0xe0, 0x34, 0xd2, 0xe5, 0xdd, 0xb9, 0x0e, 0xfd, 0x48, 0x93, 0xe4, 0x86, 0x94, 0xb4, 0xcf, 0x5c, 0x85, 0xe8, 0xbd, 0xca, 0xfb, 0xbc, 0xae, 0x51, 0x88, 0x0d, 0x97, 0xe2, 0x2d, 0x14, 0xd8, 0x38, 0xf8, 0x16, 0x2e, 0xdb, 0x0e, 0x02, 0x6f, 0x5b, 0xa8, 0x8b, 0x15, 0x0e, 0x3f, 0x2c, 0x1f, 0xc4, 0x9e, 0xd2, 0x42, 0x97, 0x93, 0xb7, 0x6e, 0x92, 0xf1, 0xaf, 0xa9, 0xf0, 0x18, 0x05, 0x10, 0x5c, 0xd8, }; static const unsigned char ecdsa_secp521r1_sha512_12557_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12557_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x41, 0x28, 0x15, 0x1a, 0x7d, 0x33, 0xa4, 0x65, 0x76, 0x7e, 0x87, 0x68, 0x10, 0x50, 0x66, 0x7a, 0xe5, 0x28, 0xaf, 0x3c, 0x43, 0xcf, 0xc5, 0x9e, 0x3c, 0x3c, 0x1c, 0x80, 0x37, 0xd9, 0x41, 0xb1, 0x2b, 0xed, 0x6b, 0x79, 0xef, 0xcb, 0xca, 0xcf, 0x25, 0xad, 0x46, 0x22, 0x6c, 0x5c, 0x2b, 0x2b, 0xbf, 0xa1, 0x36, 0x0e, 0x23, 0xc3, 0x31, 0xdb, 0x67, 0xce, 0xde, 0x47, 0xd9, 0xb0, 0xaa, 0x3f, 0xd2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12557 = { .name = "ecdsa_secp521r1_sha512_12557", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12557_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12557_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12557_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 227 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12558 for ECDSA, tcId is 228 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12558_pubkey[] = { 0x00, 0x24, 0x34, 0xcc, 0xa2, 0x7c, 0x39, 0x65, 0xd3, 0x0c, 0x1a, 0xc3, 0x76, 0x04, 0xfe, 0xcd, 0x56, 0xf0, 0xd4, 0xac, 0x70, 0x1c, 0x1d, 0x7a, 0x4c, 0xc7, 0x35, 0x77, 0x4a, 0x10, 0x91, 0x36, 0x5c, 0xc1, 0xa7, 0xcb, 0x5e, 0x2d, 0x66, 0xd8, 0x99, 0x31, 0x55, 0x1f, 0xdc, 0xe0, 0x4c, 0x0d, 0xef, 0x15, 0x03, 0xe2, 0xec, 0x2b, 0x78, 0x20, 0xc1, 0x99, 0xae, 0x99, 0x0e, 0x36, 0x35, 0x23, 0x86, 0xe5, 0x01, 0x5a, 0x3b, 0xd7, 0xdb, 0x62, 0xf9, 0xb5, 0xf9, 0x6f, 0x50, 0xf1, 0x4c, 0xf0, 0xb3, 0x15, 0xaa, 0xa1, 0x34, 0x2b, 0xf4, 0x35, 0x25, 0xc9, 0xcd, 0x2e, 0xb0, 0x4d, 0x2b, 0x83, 0xec, 0x21, 0x40, 0x4f, 0xe5, 0x1f, 0x67, 0x51, 0x1d, 0x1e, 0xe7, 0x29, 0x67, 0xe7, 0x83, 0x6b, 0x83, 0x16, 0xe8, 0x22, 0x84, 0x77, 0xf8, 0x93, 0x3e, 0x45, 0xdf, 0x55, 0xb7, 0x5f, 0xeb, 0xa4, 0x31, 0x99, 0x53, 0xc6, }; static const unsigned char ecdsa_secp521r1_sha512_12558_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12558_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x9b, 0xcf, 0x27, 0x55, 0x9a, 0xb3, 0x24, 0xf2, 0xa0, 0xeb, 0xc9, 0x5d, 0x05, 0x9e, 0xde, 0xcc, 0xd6, 0x13, 0x60, 0x42, 0x32, 0xda, 0x95, 0xc8, 0x4d, 0x41, 0xd4, 0xd9, 0x90, 0xae, 0x7b, 0xb2, 0xd1, 0x2b, 0x8d, 0x29, 0x7d, 0x99, 0xfb, 0x86, 0xb6, 0x45, 0x72, 0xd6, 0xfc, 0xe2, 0xa3, 0x4e, 0x4f, 0xa5, 0xe1, 0x68, 0xf6, 0x89, 0x4d, 0x4a, 0x1a, 0x82, 0x8e, 0x2c, 0x6d, 0xbb, 0xdf, 0x31, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12558 = { .name = "ecdsa_secp521r1_sha512_12558", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12558_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12558_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12558_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 228 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12559 for ECDSA, tcId is 229 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12559_pubkey[] = { 0x00, 0x3e, 0xea, 0xb7, 0x24, 0x1b, 0x49, 0x82, 0x5f, 0x8d, 0xb3, 0x90, 0x43, 0xc3, 0x07, 0xa9, 0xdb, 0xbb, 0x62, 0x6c, 0xcc, 0x30, 0x69, 0x31, 0xc6, 0xa8, 0x8d, 0x42, 0x45, 0x25, 0x7a, 0xe0, 0x05, 0x76, 0x2d, 0x54, 0x94, 0x4b, 0x8a, 0x97, 0x95, 0x0f, 0xd3, 0xbe, 0x02, 0xee, 0x5b, 0xcb, 0xb5, 0xa1, 0x00, 0x68, 0xb2, 0x30, 0xc1, 0xbd, 0x21, 0x00, 0x30, 0x73, 0x03, 0x3b, 0x5b, 0x40, 0x72, 0xe2, 0x00, 0x89, 0xb2, 0x13, 0x4a, 0xfa, 0xff, 0x1d, 0x7e, 0x19, 0xfc, 0x23, 0xd4, 0x41, 0x10, 0x60, 0x8e, 0xfb, 0xc6, 0xe2, 0xb8, 0x12, 0x0a, 0x16, 0xa6, 0x3b, 0xdf, 0xf2, 0xe0, 0x65, 0xfc, 0xc9, 0x42, 0xe7, 0x96, 0xc6, 0xdb, 0xdf, 0xf1, 0x4f, 0xc1, 0x79, 0xab, 0x69, 0x4e, 0xe8, 0x65, 0xe8, 0x3a, 0x28, 0xe7, 0x0e, 0x8b, 0xa6, 0x35, 0x65, 0xc2, 0xfa, 0x2f, 0x31, 0xac, 0x3e, 0x71, 0xbd, 0xc4, 0x6a, }; static const unsigned char ecdsa_secp521r1_sha512_12559_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12559_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xb6, 0xcd, 0x38, 0x19, 0x45, 0x71, 0x30, 0x41, 0xc7, 0x99, 0x03, 0x56, 0x37, 0x0a, 0x00, 0xa1, 0x08, 0x88, 0xce, 0x90, 0x5d, 0xf2, 0xc7, 0x92, 0x22, 0x6a, 0x96, 0xca, 0xdb, 0x61, 0xdf, 0x94, 0xbc, 0x42, 0x77, 0xc0, 0x4a, 0xfb, 0xcd, 0xab, 0xf3, 0x76, 0xf0, 0x2d, 0x2a, 0x6a, 0xdd, 0xf4, 0x05, 0x2a, 0xd7, 0x67, 0x3b, 0x1a, 0xe1, 0xe1, 0xec, 0x49, 0xaf, 0x38, 0x90, 0x66, 0x81, 0x07, 0x92, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12559 = { .name = "ecdsa_secp521r1_sha512_12559", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12559_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12559_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12559_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 229 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12560 for ECDSA, tcId is 230 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12560_pubkey[] = { 0x01, 0x7f, 0xb8, 0x38, 0xef, 0x9a, 0x6b, 0xc8, 0x87, 0x6e, 0xf2, 0x18, 0x8a, 0x5f, 0x0d, 0x36, 0xfb, 0x76, 0x64, 0x26, 0x73, 0xec, 0x22, 0x2f, 0x23, 0xf4, 0x9c, 0xfd, 0xd8, 0x60, 0xc5, 0x05, 0x34, 0xd3, 0x47, 0x76, 0x09, 0xc3, 0xa1, 0x16, 0x5e, 0x93, 0xdf, 0xaf, 0xcc, 0x10, 0x34, 0xd6, 0xcf, 0x76, 0x29, 0x6c, 0xd0, 0x2f, 0x56, 0xe3, 0x3f, 0x50, 0xef, 0xa2, 0x02, 0xcd, 0xd7, 0xdd, 0x0a, 0x17, 0x01, 0x00, 0xd2, 0x75, 0xbc, 0xb8, 0x36, 0x9c, 0x34, 0xcf, 0x30, 0x46, 0xd1, 0x98, 0xff, 0xaf, 0x4c, 0xce, 0xbb, 0x03, 0x13, 0x9a, 0xad, 0x8e, 0x44, 0x01, 0x31, 0x0f, 0x76, 0x3e, 0x78, 0xb4, 0xad, 0x0d, 0xd8, 0x7f, 0xa6, 0xe0, 0x43, 0x8b, 0xf4, 0x30, 0xb2, 0xc1, 0x0f, 0x25, 0xf8, 0x81, 0x9d, 0xc5, 0x46, 0xb6, 0xb0, 0x66, 0x13, 0xea, 0xf0, 0x68, 0xc5, 0x9c, 0xec, 0xb2, 0xbb, 0x91, 0x68, 0x4a, }; static const unsigned char ecdsa_secp521r1_sha512_12560_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12560_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xff, 0xde, 0xd8, 0x3a, 0xf7, 0x5d, 0x70, 0x99, 0x7c, 0x65, 0x07, 0xc9, 0x2b, 0x17, 0x56, 0xcd, 0x13, 0xe9, 0xe1, 0xfb, 0x85, 0xe1, 0x26, 0xff, 0xa5, 0xa3, 0x5f, 0xd9, 0x55, 0x39, 0xb4, 0x5b, 0x0e, 0x7f, 0xea, 0x93, 0x83, 0x0b, 0xd0, 0x09, 0xbe, 0xea, 0xec, 0x68, 0xf5, 0x51, 0xad, 0x57, 0x71, 0x50, 0x0f, 0x58, 0x4c, 0x66, 0x30, 0x4c, 0x97, 0xc2, 0xc8, 0xf1, 0x9c, 0x14, 0x1a, 0x45, 0xa7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12560 = { .name = "ecdsa_secp521r1_sha512_12560", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12560_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12560_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12560_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 230 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12561 for ECDSA, tcId is 231 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12561_pubkey[] = { 0x01, 0x3d, 0x2a, 0x55, 0x18, 0xc4, 0x5b, 0x60, 0x2f, 0x7b, 0x3e, 0xee, 0x2e, 0x26, 0x1a, 0x99, 0x7a, 0xa7, 0x8a, 0x5a, 0x83, 0x1c, 0x44, 0xe3, 0xad, 0xa1, 0x6f, 0xdb, 0x0c, 0xf1, 0xb3, 0x29, 0x26, 0x9e, 0xfb, 0x15, 0x2c, 0xfe, 0x8e, 0x4e, 0x08, 0x07, 0x7b, 0x67, 0xcc, 0x27, 0xab, 0x4a, 0xe4, 0x29, 0x95, 0xb7, 0xa9, 0x97, 0x1e, 0xfe, 0x52, 0x48, 0x17, 0x5c, 0xb5, 0xd7, 0xca, 0x63, 0xf7, 0x8a, 0x00, 0xd2, 0xb6, 0x76, 0xca, 0x3d, 0x41, 0xf8, 0xed, 0x8b, 0xb6, 0x53, 0x09, 0xde, 0x6e, 0xc5, 0x37, 0x99, 0x41, 0xa5, 0xf7, 0x4a, 0x6d, 0x70, 0xdd, 0xca, 0xe1, 0xf7, 0x36, 0x5c, 0xe7, 0x1f, 0xde, 0xf0, 0x3e, 0x37, 0x2a, 0xa3, 0x14, 0x08, 0xa8, 0xa5, 0x1c, 0xc3, 0x4c, 0xac, 0x54, 0xf6, 0xab, 0x73, 0x66, 0xd9, 0x87, 0x58, 0xb7, 0xf9, 0x3f, 0xc9, 0x76, 0xe0, 0xfe, 0x51, 0xf3, 0x87, 0x1b, 0x82, }; static const unsigned char ecdsa_secp521r1_sha512_12561_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12561_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xff, 0xbd, 0xb0, 0x75, 0xee, 0xba, 0xe1, 0x32, 0xf8, 0xca, 0x0f, 0x92, 0x56, 0x2e, 0xad, 0x9a, 0x27, 0xd3, 0xc3, 0xf7, 0x0b, 0xc2, 0x4d, 0xff, 0x4b, 0x46, 0xbf, 0xb2, 0xaa, 0x73, 0x68, 0xb6, 0x1c, 0xff, 0xd5, 0x27, 0x06, 0x17, 0xa0, 0x13, 0x7d, 0xd5, 0xd8, 0xd1, 0xea, 0xa3, 0x5a, 0xae, 0xe2, 0xa0, 0x1e, 0xb0, 0x98, 0xcc, 0x60, 0x99, 0x2f, 0x85, 0x91, 0xe3, 0x38, 0x28, 0x34, 0x8b, 0x4e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12561 = { .name = "ecdsa_secp521r1_sha512_12561", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12561_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12561_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12561_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 231 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12562 for ECDSA, tcId is 232 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12562_pubkey[] = { 0x00, 0xac, 0x4e, 0x9a, 0xd1, 0xfa, 0xd8, 0x05, 0x4a, 0x2e, 0x13, 0x20, 0x3f, 0xcc, 0x48, 0x93, 0x33, 0x95, 0x5b, 0xfb, 0x77, 0x62, 0xae, 0xd4, 0x5b, 0x61, 0xe7, 0x51, 0x82, 0x6f, 0x8a, 0x13, 0x0b, 0x53, 0x07, 0xc1, 0xf2, 0xf0, 0x52, 0x00, 0x1d, 0xc3, 0x9f, 0x97, 0x1f, 0x19, 0x5d, 0x6a, 0x9c, 0x6a, 0x5a, 0xb5, 0xd0, 0x25, 0x97, 0x82, 0x2a, 0x89, 0x2a, 0xe2, 0xbe, 0x67, 0x14, 0x3b, 0xf2, 0xae, 0x00, 0x5c, 0xe0, 0xfd, 0x82, 0xe3, 0x50, 0xb8, 0x5f, 0x2d, 0x7a, 0x2e, 0xdb, 0xd5, 0x95, 0xa1, 0xe8, 0x90, 0xa1, 0x43, 0xee, 0x9a, 0x17, 0xf1, 0x4a, 0xed, 0x31, 0x95, 0x0d, 0x51, 0x7d, 0x45, 0x7e, 0x95, 0xee, 0x16, 0x0f, 0x81, 0x8b, 0x7e, 0x7a, 0xe6, 0xb7, 0x21, 0x35, 0x50, 0x45, 0x16, 0xb4, 0xbb, 0xdb, 0xc8, 0x57, 0x18, 0xf4, 0x42, 0xa3, 0xdc, 0x9a, 0x21, 0xee, 0x4d, 0xa0, 0xf3, 0x27, 0xb6, }; static const unsigned char ecdsa_secp521r1_sha512_12562_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12562_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xff, 0x9c, 0x88, 0xb0, 0xe6, 0x18, 0x51, 0xcc, 0x75, 0x2f, 0x17, 0x5b, 0x81, 0x46, 0x04, 0x67, 0x3b, 0xbd, 0xa5, 0xf2, 0x91, 0xa3, 0x74, 0xfe, 0xf0, 0xea, 0x1f, 0x8b, 0xff, 0xad, 0x1d, 0x11, 0x31, 0x2e, 0x39, 0x33, 0x05, 0x64, 0x40, 0x86, 0xd1, 0x40, 0xf9, 0x39, 0x96, 0xfd, 0xfe, 0x60, 0x83, 0xb4, 0x78, 0x3f, 0x2c, 0xa8, 0xf4, 0x9e, 0x18, 0x8c, 0xeb, 0x1d, 0xb5, 0xab, 0x16, 0x6c, 0xec, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12562 = { .name = "ecdsa_secp521r1_sha512_12562", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12562_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12562_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12562_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 232 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12563 for ECDSA, tcId is 233 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12563_pubkey[] = { 0x00, 0x9d, 0x1a, 0xef, 0xc0, 0x11, 0x60, 0x87, 0x74, 0xdd, 0xe6, 0xb1, 0x57, 0x4c, 0xf7, 0x97, 0x35, 0x69, 0x1b, 0xcc, 0xd0, 0xd5, 0x34, 0x97, 0x95, 0x55, 0xb9, 0x23, 0xe4, 0x80, 0x3f, 0x49, 0x6e, 0x09, 0x6d, 0x95, 0xaf, 0x7d, 0xbf, 0x80, 0x25, 0x95, 0x53, 0x12, 0xcf, 0x31, 0x80, 0xf2, 0xb1, 0x24, 0xe1, 0x40, 0x4b, 0xa8, 0xbd, 0x46, 0x2c, 0xf8, 0xc7, 0x50, 0xbd, 0x15, 0x7d, 0xbb, 0x18, 0xf1, 0x01, 0x6e, 0x37, 0x36, 0x56, 0x25, 0xe2, 0x83, 0xc6, 0x44, 0x76, 0x76, 0xbe, 0xc2, 0x98, 0x41, 0x0a, 0x36, 0xb9, 0xc8, 0xc6, 0x4b, 0xa5, 0xa1, 0xb6, 0x91, 0x79, 0x17, 0x9d, 0xd8, 0xb8, 0xf3, 0xe8, 0xe6, 0x59, 0xcc, 0xac, 0x0c, 0xdf, 0x1c, 0x42, 0xf1, 0x74, 0xd3, 0x58, 0x0a, 0x00, 0x82, 0xc1, 0x31, 0xa8, 0x86, 0x5e, 0x50, 0xad, 0x9a, 0xf9, 0x08, 0x8e, 0xb2, 0xd6, 0x3f, 0x0b, 0x47, 0x68, 0xae, }; static const unsigned char ecdsa_secp521r1_sha512_12563_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12563_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xd1, 0x75, 0x92, 0xe1, 0x69, 0xfc, 0xed, 0x8a, 0xf9, 0x90, 0x52, 0x6e, 0xa1, 0x71, 0x1b, 0x7c, 0xc5, 0x2e, 0xc6, 0x33, 0xba, 0x60, 0x97, 0xcc, 0x17, 0x15, 0xe7, 0x36, 0x2f, 0x0b, 0x65, 0xa9, 0xed, 0xe2, 0x96, 0xd3, 0x70, 0x48, 0x90, 0x08, 0xb8, 0x63, 0xd8, 0x8a, 0x31, 0xb8, 0x04, 0x32, 0x89, 0x05, 0xab, 0x07, 0x88, 0x37, 0x0a, 0x24, 0x62, 0xbf, 0xca, 0xbd, 0x1d, 0xf6, 0x14, 0x6d, 0xc8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12563 = { .name = "ecdsa_secp521r1_sha512_12563", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12563_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12563_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12563_sig, .siglen = 132, .result = 1, .comment = "edge case for u1, tcId is 233 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12564 for ECDSA, tcId is 234 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12564_pubkey[] = { 0x01, 0x0f, 0x58, 0x24, 0xd1, 0x1d, 0x10, 0x0f, 0x9c, 0x1d, 0xea, 0x1f, 0x44, 0x0f, 0xff, 0xe6, 0xae, 0xf1, 0x43, 0xa8, 0xfc, 0x9a, 0xac, 0x9e, 0x64, 0xe1, 0x4f, 0x7b, 0xaf, 0xf3, 0xa6, 0x2a, 0x5a, 0xe9, 0xf6, 0xdd, 0x40, 0xdd, 0x36, 0x8b, 0x65, 0x23, 0x9a, 0xa8, 0x02, 0x31, 0x86, 0x9e, 0x2a, 0xa7, 0xaa, 0x24, 0xf0, 0x58, 0xd1, 0x7a, 0x6c, 0x35, 0x92, 0x46, 0xbd, 0xf5, 0xec, 0x85, 0xd7, 0x05, 0x01, 0x2d, 0x07, 0xc2, 0x51, 0xfe, 0xcb, 0xcf, 0x50, 0x16, 0xa8, 0xea, 0x9e, 0x3c, 0x46, 0xbc, 0x53, 0x18, 0x4b, 0xba, 0x96, 0x1d, 0x4a, 0xe8, 0x9d, 0xab, 0xfa, 0xa1, 0xae, 0xe3, 0x34, 0xdc, 0xf9, 0x48, 0x24, 0xcf, 0x1a, 0x6f, 0x84, 0x0e, 0x9a, 0x8b, 0xa1, 0xce, 0xbf, 0xbb, 0x98, 0x81, 0xac, 0xc8, 0xe8, 0x06, 0x28, 0x4d, 0x05, 0x81, 0xb7, 0xc8, 0x59, 0x8f, 0x3e, 0x7e, 0x46, 0x6d, 0xea, 0x09, }; static const unsigned char ecdsa_secp521r1_sha512_12564_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12564_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x54, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12564 = { .name = "ecdsa_secp521r1_sha512_12564", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12564_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12564_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12564_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 234 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12565 for ECDSA, tcId is 235 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12565_pubkey[] = { 0x01, 0xb5, 0x57, 0xf6, 0xfc, 0x21, 0xf1, 0x6e, 0x6a, 0x8e, 0x51, 0xb2, 0x90, 0x4b, 0x24, 0xfb, 0x8c, 0x75, 0xc8, 0xfe, 0xe4, 0xb1, 0xb0, 0xff, 0x97, 0x5f, 0xcd, 0x54, 0xc4, 0x91, 0xa0, 0xe5, 0x27, 0x58, 0xa3, 0x88, 0x30, 0x38, 0xdb, 0xcf, 0x21, 0xf1, 0x9e, 0x57, 0x91, 0x46, 0x3c, 0x2d, 0x95, 0x2b, 0xb4, 0xb0, 0xb6, 0x42, 0x8f, 0x0a, 0xe7, 0x36, 0x9b, 0x41, 0xd1, 0xd9, 0x76, 0x61, 0xb2, 0x94, 0x00, 0xf7, 0x5c, 0x85, 0x93, 0xf9, 0xec, 0xf5, 0x4a, 0x26, 0xcc, 0x8c, 0x7b, 0x41, 0x8f, 0x9f, 0xbc, 0xa4, 0x29, 0x68, 0x85, 0xb9, 0x36, 0x70, 0x93, 0x99, 0x42, 0xf5, 0xdc, 0xf6, 0xcb, 0x4a, 0x03, 0xc2, 0x34, 0x4d, 0x04, 0x11, 0xdf, 0x1e, 0x5a, 0x54, 0x86, 0x52, 0x53, 0x4c, 0x4b, 0x7d, 0xbc, 0xce, 0x94, 0x01, 0x69, 0x72, 0x52, 0x26, 0x7e, 0x87, 0x45, 0xd0, 0x71, 0x38, 0x8e, 0xec, 0x83, 0x2e, }; static const unsigned char ecdsa_secp521r1_sha512_12565_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12565_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x9f, 0x57, 0x70, 0x8f, 0xa9, 0x7e, 0xba, 0x94, 0xc6, 0xd4, 0x78, 0x2c, 0xdd, 0x4e, 0x33, 0xbb, 0x95, 0xc1, 0x35, 0x3b, 0xde, 0x09, 0x52, 0x32, 0xe3, 0xe2, 0xba, 0xb2, 0x77, 0xbb, 0x5d, 0x2b, 0x48, 0xf5, 0x5a, 0x53, 0xff, 0xe9, 0x28, 0xd0, 0x34, 0xc2, 0x99, 0x70, 0xa9, 0xe5, 0xf3, 0x84, 0xa0, 0x03, 0x90, 0x7d, 0x3d, 0x9b, 0x82, 0xa8, 0x68, 0x17, 0xcc, 0x61, 0xfb, 0x17, 0xf4, 0xc5, 0x9e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12565 = { .name = "ecdsa_secp521r1_sha512_12565", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12565_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12565_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12565_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 235 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12566 for ECDSA, tcId is 236 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12566_pubkey[] = { 0x00, 0xce, 0x02, 0x2b, 0x54, 0x3a, 0x18, 0x1f, 0xdd, 0x31, 0x30, 0xce, 0x35, 0x92, 0x61, 0x78, 0xa7, 0xf0, 0xef, 0x97, 0x1c, 0x5f, 0xe8, 0x48, 0xb0, 0x2d, 0xc1, 0xbf, 0x68, 0xc8, 0x83, 0xb2, 0x9a, 0xa3, 0x53, 0x69, 0xab, 0xd1, 0x99, 0xed, 0x62, 0x8e, 0xa8, 0x37, 0x3a, 0x96, 0x60, 0xa1, 0xc0, 0x85, 0x41, 0x4a, 0x2c, 0x66, 0xde, 0x01, 0x28, 0xc0, 0x8f, 0x83, 0x86, 0xef, 0xec, 0xa0, 0x0d, 0x3f, 0x00, 0xa2, 0x9c, 0x70, 0x4b, 0xaa, 0xea, 0x02, 0x14, 0xab, 0x94, 0x44, 0xe9, 0x2d, 0x47, 0xdb, 0x59, 0xc4, 0x48, 0xc6, 0x55, 0x94, 0xb7, 0x09, 0xc5, 0xbd, 0x43, 0x07, 0x89, 0x7c, 0x98, 0xd0, 0xbc, 0xcb, 0x4a, 0x9f, 0x35, 0x1c, 0x51, 0xd2, 0x27, 0x3e, 0xf2, 0xbb, 0x84, 0xd6, 0x87, 0xc3, 0x05, 0xe7, 0x63, 0x6b, 0x55, 0xfd, 0x3e, 0x38, 0x54, 0xb4, 0xb3, 0x4c, 0xa7, 0xba, 0x71, 0x27, 0x6a, 0xca, }; static const unsigned char ecdsa_secp521r1_sha512_12566_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12566_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x68, 0xd9, 0x8f, 0xa9, 0x07, 0x36, 0xef, 0xf3, 0xe9, 0x0f, 0x8f, 0xcf, 0xe5, 0x08, 0x38, 0xb6, 0xfa, 0x0b, 0xf2, 0xcd, 0xe7, 0x7b, 0xc5, 0x1e, 0x3f, 0x41, 0x01, 0x9c, 0x80, 0x06, 0xf4, 0xe9, 0xcb, 0xae, 0xad, 0xce, 0x7d, 0xbb, 0x44, 0x46, 0x2d, 0xa6, 0x42, 0x5b, 0xe9, 0xcf, 0xda, 0xec, 0xb2, 0x34, 0xc4, 0x17, 0x49, 0xce, 0x69, 0x5b, 0xe1, 0xb5, 0xea, 0xd2, 0xe6, 0xb1, 0x20, 0x5f, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12566 = { .name = "ecdsa_secp521r1_sha512_12566", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12566_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12566_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12566_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 236 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12567 for ECDSA, tcId is 237 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12567_pubkey[] = { 0x00, 0x40, 0x0d, 0x19, 0x4f, 0x51, 0xd8, 0x02, 0x18, 0xc0, 0x29, 0x6e, 0x97, 0x8b, 0x9b, 0x7a, 0x5e, 0xbb, 0x0d, 0x37, 0x3d, 0x21, 0xe9, 0xed, 0x7f, 0x4b, 0xe8, 0xae, 0x25, 0xea, 0x5b, 0x6f, 0xce, 0xb5, 0x80, 0xdc, 0x45, 0x10, 0x82, 0x65, 0x25, 0xfe, 0x13, 0x8d, 0x1a, 0x4e, 0x20, 0xcc, 0x29, 0x3c, 0x53, 0x0d, 0xba, 0x4b, 0x85, 0xc3, 0xd2, 0x9b, 0xb8, 0x74, 0x86, 0x7c, 0x36, 0x84, 0x69, 0x6a, 0x01, 0x53, 0x7b, 0xa3, 0xc3, 0x2c, 0x1f, 0x1f, 0x9b, 0x2d, 0x9e, 0x80, 0xf8, 0x8f, 0xfc, 0xdc, 0x4a, 0xa5, 0x24, 0x6e, 0x81, 0x45, 0xb8, 0x7c, 0x37, 0xd4, 0x73, 0x04, 0x42, 0x34, 0xd8, 0xad, 0x28, 0xc6, 0xab, 0xd5, 0xa1, 0x86, 0xed, 0x0a, 0xb6, 0x1c, 0x6e, 0x72, 0xdd, 0xef, 0x77, 0xb0, 0x99, 0xf5, 0x1e, 0xdc, 0x58, 0xeb, 0xeb, 0x43, 0x3a, 0xed, 0x06, 0x45, 0x03, 0xca, 0x49, 0x4c, 0x4c, 0x73, }; static const unsigned char ecdsa_secp521r1_sha512_12567_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12567_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0xe9, 0x7a, 0xe6, 0x6b, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x68, 0xbc, 0x97, 0x26, 0xf0, 0x2d, 0xbf, 0x85, 0x98, 0xa9, 0x8b, 0x3e, 0x50, 0x77, 0xef, 0xf6, 0xf2, 0x49, 0x1e, 0xb6, 0x78, 0xed, 0x04, 0x0f, 0xb3, 0x38, 0xc0, 0x84, 0xa9, 0xea, 0x8a, 0x4c, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12567 = { .name = "ecdsa_secp521r1_sha512_12567", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12567_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12567_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12567_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 237 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12568 for ECDSA, tcId is 238 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12568_pubkey[] = { 0x00, 0x78, 0x26, 0x6f, 0x57, 0x9d, 0xca, 0x13, 0xea, 0x14, 0x33, 0x8c, 0x32, 0xa0, 0xd6, 0x81, 0x2d, 0xfd, 0x98, 0x72, 0x0a, 0x2a, 0x1e, 0xa2, 0xbf, 0xa4, 0x4b, 0xa2, 0xb3, 0xfe, 0x15, 0xc6, 0x30, 0x63, 0xc8, 0xcc, 0x79, 0x3c, 0x96, 0xee, 0x96, 0x0c, 0xf5, 0x37, 0xe3, 0x4a, 0xd0, 0xca, 0xfa, 0x46, 0x21, 0x92, 0xcf, 0x62, 0x85, 0xcb, 0x8c, 0x48, 0xd9, 0x39, 0x9b, 0xf5, 0x52, 0xd4, 0xfc, 0x6a, 0x01, 0x98, 0xbe, 0xde, 0x61, 0x26, 0x89, 0xd2, 0x28, 0x98, 0x41, 0xe4, 0x90, 0x5b, 0xe7, 0x66, 0xdb, 0xa8, 0xa0, 0x7b, 0x00, 0xa4, 0xd4, 0xa9, 0x6f, 0x9a, 0x10, 0x71, 0x60, 0xa9, 0xb2, 0x6e, 0xb3, 0x2f, 0xda, 0x79, 0x96, 0x34, 0xe0, 0x07, 0xee, 0x50, 0xe3, 0x4f, 0x6b, 0x25, 0x56, 0x0d, 0x7e, 0xed, 0x17, 0x28, 0xd4, 0xb5, 0xed, 0xc4, 0x53, 0x7d, 0xf4, 0xf5, 0x08, 0x91, 0x0a, 0xce, 0xf7, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_12568_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12568_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xae, 0x66, 0xbc, 0xd4, 0xca, 0xe3, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x39, 0x54, 0x21, 0x2f, 0x8b, 0xea, 0x57, 0x8d, 0x93, 0xe6, 0x85, 0xe5, 0xdb, 0xa3, 0x29, 0x81, 0x1b, 0x25, 0x42, 0xbb, 0x39, 0x82, 0x33, 0xe2, 0x94, 0x4b, 0xce, 0xb1, 0x92, 0x63, 0x32, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12568 = { .name = "ecdsa_secp521r1_sha512_12568", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12568_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12568_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12568_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 238 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12569 for ECDSA, tcId is 239 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12569_pubkey[] = { 0x00, 0x5c, 0x58, 0x5c, 0x0f, 0xad, 0xec, 0x9a, 0x34, 0xfc, 0xc0, 0x80, 0x41, 0x54, 0xf1, 0x4c, 0xb5, 0x66, 0x8b, 0x99, 0x7f, 0x2e, 0x09, 0x6d, 0xa0, 0x97, 0x4b, 0x23, 0xe9, 0x90, 0x2e, 0x34, 0x99, 0x95, 0x60, 0x37, 0xa1, 0x78, 0xa5, 0x21, 0x08, 0x33, 0x50, 0x7e, 0x1e, 0x10, 0x8e, 0xe5, 0xcd, 0x99, 0x4f, 0x65, 0x9e, 0x3e, 0x8c, 0xaa, 0xde, 0x9d, 0x29, 0x58, 0xed, 0x48, 0xf6, 0x69, 0x91, 0xc3, 0x01, 0x28, 0x2c, 0x19, 0x69, 0xa6, 0x8e, 0x19, 0x0c, 0x61, 0x1e, 0xc0, 0x32, 0x23, 0x52, 0xef, 0x01, 0xc7, 0x50, 0xdc, 0x87, 0x46, 0x4a, 0xa0, 0x10, 0x24, 0xb2, 0xc1, 0x0c, 0x9d, 0x4b, 0x6a, 0x4a, 0x29, 0xf9, 0x9e, 0xa7, 0x40, 0xdb, 0x8d, 0xaf, 0xab, 0x65, 0xed, 0x75, 0x42, 0x36, 0x01, 0x65, 0x4d, 0x68, 0xf4, 0xdf, 0x64, 0x2e, 0x80, 0xa4, 0xe7, 0x9c, 0xa1, 0x2d, 0xfb, 0x0e, 0xe4, 0x24, 0x04, }; static const unsigned char ecdsa_secp521r1_sha512_12569_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12569_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x5c, 0xcd, 0x79, 0xa9, 0x95, 0xc6, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x21, 0x21, 0xba, 0xdb, 0x58, 0xa5, 0x18, 0xaf, 0xa8, 0x01, 0x0a, 0x82, 0xc0, 0x3c, 0xad, 0x31, 0xfa, 0x94, 0xbb, 0xbd, 0xe9, 0x68, 0x20, 0x16, 0x6d, 0x27, 0xe6, 0x44, 0x93, 0x8e, 0x00, 0xb1, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12569 = { .name = "ecdsa_secp521r1_sha512_12569", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12569_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12569_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12569_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 239 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12570 for ECDSA, tcId is 240 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12570_pubkey[] = { 0x00, 0x91, 0x9d, 0x0c, 0xbf, 0xf7, 0x04, 0x3d, 0xe2, 0xeb, 0x02, 0x4e, 0x5e, 0xce, 0x7a, 0x59, 0xde, 0x14, 0xb1, 0xbd, 0x8b, 0x08, 0x42, 0x89, 0x58, 0x74, 0x30, 0x05, 0x6e, 0x35, 0x0e, 0x49, 0x13, 0x6b, 0xf8, 0x92, 0x75, 0x7b, 0x38, 0x97, 0x35, 0xe7, 0x75, 0xb3, 0x52, 0xd7, 0x74, 0x37, 0x6f, 0xe2, 0x9e, 0x62, 0xe4, 0x01, 0x52, 0x53, 0x50, 0x2e, 0x4c, 0xcc, 0x29, 0x9f, 0x25, 0x75, 0x76, 0x6a, 0x00, 0x40, 0x3c, 0xdf, 0xa4, 0x9f, 0xe4, 0x64, 0x77, 0x94, 0xd6, 0x79, 0xfd, 0x28, 0x89, 0xc3, 0xa6, 0xc2, 0xa6, 0x51, 0xeb, 0xb0, 0x4e, 0x4f, 0xee, 0x84, 0x68, 0xbd, 0x4c, 0x24, 0x0d, 0x8b, 0xa7, 0x22, 0x09, 0x7e, 0xae, 0xbd, 0x52, 0x47, 0xb4, 0xbe, 0xbc, 0x6e, 0x87, 0x3b, 0x27, 0x01, 0x1c, 0x49, 0xd1, 0xf8, 0xa1, 0x31, 0xea, 0x0f, 0x7a, 0x56, 0x7a, 0x8c, 0x2a, 0x7c, 0x17, 0x32, 0x89, 0xe2, }; static const unsigned char ecdsa_secp521r1_sha512_12570_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12570_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xcd, 0x4c, 0xae, 0x36, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe1, 0x8d, 0xcc, 0x11, 0xdf, 0xf7, 0x52, 0x62, 0x33, 0xd9, 0x23, 0xa0, 0xb2, 0x02, 0xcb, 0x29, 0xe7, 0x13, 0xf2, 0x2d, 0xe8, 0xbb, 0x6a, 0xb0, 0xa1, 0x28, 0x21, 0xc5, 0xab, 0xbe, 0x3f, 0x23, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12570 = { .name = "ecdsa_secp521r1_sha512_12570", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12570_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12570_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12570_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 240 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12571 for ECDSA, tcId is 241 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12571_pubkey[] = { 0x01, 0x3c, 0x89, 0xb6, 0x8e, 0xe2, 0x16, 0x5c, 0xe5, 0x83, 0xe2, 0x9a, 0x6b, 0x46, 0x30, 0x3e, 0x51, 0xe4, 0x9b, 0x65, 0x83, 0xb9, 0x7f, 0xa4, 0x8f, 0xc9, 0x7f, 0x48, 0xca, 0x8a, 0xd0, 0xdd, 0xd4, 0xdd, 0xd0, 0x9d, 0xfa, 0xdf, 0xcf, 0x70, 0x95, 0xf0, 0xca, 0x18, 0x96, 0x34, 0x32, 0x84, 0x1c, 0x4e, 0xff, 0x91, 0x5f, 0x61, 0x38, 0xd0, 0xef, 0x59, 0x1e, 0x8a, 0xe4, 0xbe, 0x9f, 0x4a, 0x99, 0x75, 0x00, 0x10, 0x82, 0x9c, 0x29, 0x6b, 0x49, 0xe8, 0x3e, 0xa2, 0x20, 0x18, 0xbd, 0x1d, 0x4b, 0xe3, 0x0c, 0xc3, 0x3b, 0xfc, 0xe2, 0x05, 0xaa, 0xba, 0x54, 0x52, 0xe1, 0x04, 0x9f, 0x78, 0xbe, 0xde, 0x0b, 0x00, 0x3a, 0xe2, 0xc2, 0x7b, 0xaf, 0xc0, 0xcd, 0x7f, 0x7a, 0xc1, 0x12, 0x10, 0x89, 0x28, 0x8b, 0xfe, 0x37, 0xe2, 0x21, 0xe1, 0x8f, 0x5a, 0x4f, 0xdd, 0x7d, 0x73, 0xb3, 0xc0, 0xe5, 0xae, 0x6a, 0xd1, }; static const unsigned char ecdsa_secp521r1_sha512_12571_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12571_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x22, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xba, 0x2e, 0x8b, 0xa2, 0xe8, 0xb9, 0xc4, 0xc3, 0xf7, 0x3c, 0xc8, 0x16, 0x14, 0x3f, 0xac, 0x34, 0x12, 0xb6, 0x2d, 0xe4, 0xc6, 0x3d, 0xb0, 0x8f, 0x8c, 0x57, 0xe4, 0xc5, 0x8c, 0x31, 0xf1, 0xb4, 0x57, 0xca, 0x5e, 0x57, 0xe2, 0x0a, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12571 = { .name = "ecdsa_secp521r1_sha512_12571", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12571_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12571_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12571_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 241 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12572 for ECDSA, tcId is 242 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12572_pubkey[] = { 0x01, 0xd9, 0x1c, 0xa0, 0xff, 0x79, 0x07, 0x97, 0xa8, 0x3c, 0x3b, 0xe1, 0xc8, 0x24, 0x25, 0xaf, 0x91, 0x72, 0x08, 0x08, 0x7a, 0xa6, 0x73, 0x5e, 0xeb, 0xd3, 0x49, 0x84, 0x0f, 0xd9, 0xfb, 0xc3, 0xba, 0x59, 0x62, 0xee, 0x11, 0xf8, 0x04, 0x33, 0x38, 0xc1, 0xb3, 0xf3, 0x50, 0x41, 0x71, 0xfa, 0xa8, 0xe8, 0x44, 0x48, 0x80, 0xb6, 0xa5, 0xc5, 0x5a, 0xe6, 0x66, 0x7c, 0x52, 0xca, 0x07, 0xed, 0x3f, 0x79, 0x01, 0xf3, 0x47, 0x86, 0xc2, 0xdc, 0x71, 0x70, 0x4a, 0xc3, 0x46, 0x34, 0x10, 0x0a, 0x8e, 0x91, 0x2a, 0x7c, 0x40, 0x63, 0x78, 0x20, 0xe9, 0x7c, 0xd3, 0x2d, 0x57, 0x39, 0xd7, 0x03, 0x4b, 0xc7, 0xf6, 0x87, 0x4b, 0x90, 0xee, 0x94, 0xcc, 0xe0, 0x76, 0x62, 0xa3, 0xb2, 0x75, 0xb2, 0x3f, 0xa2, 0x0a, 0xe7, 0xfc, 0x83, 0x70, 0xd0, 0x5b, 0xae, 0xef, 0xe0, 0x28, 0x61, 0x68, 0xbd, 0x34, 0x17, 0xd1, 0x3f, }; static const unsigned char ecdsa_secp521r1_sha512_12572_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12572_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x05, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x2c, 0x85, 0x90, 0xb2, 0x16, 0x42, 0xc8, 0x59, 0x0b, 0x21, 0x64, 0x29, 0x8e, 0xb5, 0x7e, 0x5a, 0xff, 0x93, 0x43, 0x59, 0x7a, 0x54, 0x2d, 0x31, 0x32, 0xf9, 0xe7, 0x34, 0xfd, 0xc3, 0x05, 0x12, 0x5e, 0x0e, 0xc1, 0x39, 0xc5, 0xf7, 0x80, 0xee, 0x8e, 0x8c, 0xb9, 0xc2, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12572 = { .name = "ecdsa_secp521r1_sha512_12572", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12572_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12572_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12572_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 242 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12573 for ECDSA, tcId is 243 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12573_pubkey[] = { 0x00, 0x40, 0xaf, 0x2f, 0x4d, 0xdc, 0x1e, 0x52, 0x72, 0xb2, 0xae, 0xd3, 0x58, 0xb7, 0x77, 0x6f, 0x28, 0xf0, 0xdc, 0x99, 0x6f, 0x77, 0x2f, 0x95, 0x1f, 0x25, 0xd1, 0x2f, 0x9f, 0x8b, 0x0f, 0x3d, 0xe0, 0xd1, 0xc1, 0xd2, 0x9b, 0x63, 0xb7, 0x4a, 0x95, 0x0d, 0xb4, 0x74, 0x70, 0x1a, 0x34, 0xc8, 0xdd, 0x80, 0x3b, 0x59, 0x4e, 0x95, 0x7b, 0xd6, 0xa3, 0xeb, 0x7e, 0x93, 0x8b, 0xe4, 0x51, 0x1f, 0x4c, 0x79, 0x01, 0xc0, 0x1b, 0x42, 0xc9, 0x73, 0xd5, 0x5f, 0xb8, 0x99, 0x6e, 0x40, 0xee, 0x68, 0xe1, 0x12, 0xe5, 0x8a, 0x89, 0x2e, 0xab, 0x03, 0x2c, 0x5c, 0xdd, 0x6d, 0xb3, 0x9f, 0xb2, 0xc1, 0x16, 0x92, 0xe8, 0xb3, 0xce, 0xbd, 0xbb, 0xdc, 0x08, 0xfb, 0x3d, 0x95, 0xa2, 0xa7, 0x60, 0x70, 0x05, 0x08, 0x9f, 0x45, 0x2c, 0xde, 0xb9, 0x82, 0x1b, 0x5a, 0x11, 0x84, 0x01, 0xfc, 0xd0, 0x29, 0xc9, 0xad, 0x24, 0x84, }; static const unsigned char ecdsa_secp521r1_sha512_12573_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12573_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xa4, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x44, 0x45, 0xe1, 0x06, 0x70, 0xed, 0x04, 0x37, 0xc9, 0xdb, 0x41, 0x25, 0xac, 0x41, 0x75, 0xfb, 0xd7, 0x0e, 0x9b, 0xd1, 0x79, 0x9a, 0x85, 0xf4, 0x4c, 0xa0, 0xa8, 0xe6, 0x1a, 0x33, 0x54, 0xe8, 0x08, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12573 = { .name = "ecdsa_secp521r1_sha512_12573", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12573_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12573_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12573_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 243 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12574 for ECDSA, tcId is 244 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12574_pubkey[] = { 0x00, 0x69, 0xe0, 0xb4, 0x81, 0xdb, 0x99, 0xf8, 0x94, 0xf0, 0x78, 0x0f, 0x84, 0x71, 0x9d, 0xe1, 0x6a, 0xec, 0x59, 0x9c, 0x76, 0x5e, 0xba, 0x50, 0xb8, 0x61, 0x54, 0x77, 0x07, 0x3c, 0x32, 0xc2, 0x6a, 0xb1, 0xe4, 0xe7, 0xae, 0x5d, 0x1f, 0x95, 0x25, 0x13, 0xad, 0x32, 0x32, 0x25, 0x20, 0x3b, 0x4f, 0x0c, 0x65, 0xa2, 0x4a, 0x83, 0x68, 0xcd, 0x32, 0x2c, 0x23, 0xe9, 0x20, 0x49, 0xd1, 0x21, 0x74, 0x7c, 0x01, 0x77, 0x90, 0x1e, 0x37, 0x9e, 0x5e, 0x72, 0x4f, 0x41, 0x64, 0x87, 0xfe, 0xe7, 0x07, 0x7e, 0x6a, 0xea, 0x81, 0xe5, 0x25, 0x0c, 0xaa, 0x3c, 0xff, 0xbb, 0x7d, 0x1b, 0x22, 0x70, 0xaa, 0x75, 0x4b, 0x4f, 0xda, 0xe5, 0x1e, 0x44, 0x30, 0x50, 0xc3, 0x3c, 0x7b, 0x84, 0x21, 0xc7, 0xb3, 0xc5, 0x38, 0xc4, 0x9a, 0x67, 0x4a, 0x34, 0xe2, 0x27, 0x8c, 0x7e, 0xa0, 0x9d, 0x90, 0x0c, 0xf5, 0x85, 0x1d, 0xcf, }; static const unsigned char ecdsa_secp521r1_sha512_12574_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12574_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xd5, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x4f, 0xa6, 0xdb, 0xdc, 0xd9, 0x14, 0x84, 0xeb, 0xc0, 0xd5, 0x21, 0x56, 0x9e, 0x4c, 0x5e, 0xfb, 0x25, 0x91, 0x0b, 0x1f, 0x0d, 0xde, 0xf1, 0x9d, 0x04, 0x10, 0xc5, 0x0c, 0x73, 0xe6, 0x8d, 0xb9, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12574 = { .name = "ecdsa_secp521r1_sha512_12574", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12574_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12574_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12574_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 244 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12575 for ECDSA, tcId is 245 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12575_pubkey[] = { 0x00, 0xa9, 0xc2, 0xc5, 0x7f, 0x1a, 0x2e, 0x91, 0xc4, 0xee, 0x6b, 0x3d, 0x03, 0xc0, 0x92, 0x3b, 0x58, 0xd0, 0xec, 0x40, 0x9d, 0xf8, 0x8e, 0x4f, 0x30, 0x65, 0xba, 0x81, 0x48, 0xbf, 0xcf, 0x7f, 0x71, 0xce, 0xb2, 0xf1, 0xa1, 0xe9, 0x9d, 0xc8, 0x30, 0x08, 0x4b, 0x16, 0x99, 0x34, 0x54, 0xe7, 0xe1, 0x8d, 0xa2, 0x3c, 0x1a, 0x1e, 0x77, 0x19, 0x94, 0x91, 0xdb, 0x54, 0x18, 0xae, 0x28, 0xb7, 0x6c, 0x67, 0x00, 0x1c, 0x97, 0xee, 0x72, 0x04, 0x93, 0xb4, 0x27, 0xfd, 0x33, 0xa1, 0x3c, 0x8e, 0x87, 0xe8, 0x42, 0xec, 0x96, 0xe6, 0x90, 0x3c, 0xc9, 0x7c, 0xb0, 0xf6, 0x93, 0x40, 0x49, 0x8b, 0xfd, 0xc6, 0xf5, 0x43, 0xca, 0x80, 0x44, 0xec, 0xa5, 0x11, 0xea, 0xe7, 0xf0, 0xdd, 0x56, 0x2a, 0xac, 0x13, 0xf2, 0xc3, 0xf3, 0x56, 0xd2, 0x16, 0xc4, 0x2b, 0x73, 0xdd, 0xad, 0x47, 0x56, 0xd0, 0x32, 0xf6, 0x97, 0x90, }; static const unsigned char ecdsa_secp521r1_sha512_12575_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12575_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa4, 0xfc, 0x31, 0x32, 0x2e, 0x69, 0xda, 0x41, 0x16, 0x2a, 0x76, 0xab, 0xf3, 0xa1, 0xb4, 0x50, 0x7a, 0xe6, 0x60, 0x74, 0x63, 0x34, 0x46, 0xf2, 0x59, 0x66, 0x1a, 0x61, 0xc9, 0x3b, 0xe3, 0x0e, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12575 = { .name = "ecdsa_secp521r1_sha512_12575", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12575_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12575_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12575_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 245 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12576 for ECDSA, tcId is 246 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12576_pubkey[] = { 0x01, 0xdf, 0x9a, 0x6e, 0xa5, 0xa8, 0x35, 0x7e, 0x82, 0x9e, 0x60, 0xbb, 0xa7, 0x11, 0xd1, 0x1f, 0x86, 0xa2, 0xdd, 0x28, 0xc5, 0xef, 0xdb, 0xf9, 0x68, 0xe9, 0x64, 0x6d, 0xfb, 0xb0, 0xd2, 0x7f, 0xa8, 0xbf, 0x4d, 0x81, 0xd4, 0x62, 0x55, 0xc1, 0x98, 0xdf, 0x4a, 0x27, 0xe6, 0xca, 0x31, 0x56, 0x90, 0xb1, 0xea, 0x68, 0x79, 0x52, 0x97, 0xc3, 0x65, 0x22, 0x9b, 0xd6, 0x95, 0x9b, 0x29, 0x64, 0xb4, 0xa3, 0x01, 0xaa, 0xb4, 0x5a, 0x21, 0x1e, 0x90, 0x12, 0xb2, 0xbc, 0x69, 0xab, 0xc0, 0x58, 0x8a, 0x0d, 0xe8, 0xe2, 0xc5, 0x93, 0x34, 0xcd, 0x38, 0xa3, 0xc2, 0x21, 0xde, 0xfa, 0xb7, 0x89, 0xf9, 0xcf, 0xb4, 0x60, 0x87, 0x94, 0xa8, 0xc5, 0x11, 0x50, 0xa7, 0x83, 0xe5, 0x95, 0x6a, 0x0a, 0x9f, 0x9a, 0x2f, 0x54, 0x7c, 0xde, 0x82, 0xd1, 0xb5, 0xd6, 0xcf, 0x51, 0xc5, 0x66, 0x60, 0x4b, 0x50, 0xbc, 0xf7, 0x8d, }; static const unsigned char ecdsa_secp521r1_sha512_12576_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12576_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12576 = { .name = "ecdsa_secp521r1_sha512_12576", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12576_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12576_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12576_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 246 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12577 for ECDSA, tcId is 247 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12577_pubkey[] = { 0x01, 0xdf, 0x30, 0xef, 0x26, 0xe1, 0x60, 0x15, 0x3a, 0x14, 0x68, 0xa5, 0xdd, 0xd0, 0x6b, 0x02, 0xcc, 0xb1, 0x64, 0xdf, 0xe3, 0xac, 0x8c, 0x7f, 0x15, 0xf6, 0x8d, 0x4f, 0x19, 0x07, 0xef, 0x8b, 0xe9, 0xca, 0xdc, 0x6b, 0xe7, 0x05, 0xa2, 0x29, 0x44, 0x23, 0x40, 0x67, 0x0b, 0xd1, 0x18, 0x6e, 0xd8, 0x26, 0xd3, 0x9b, 0xa4, 0xc2, 0x31, 0x1b, 0x1d, 0xf7, 0x94, 0x00, 0x1a, 0x29, 0x3c, 0x02, 0x7c, 0xdf, 0x00, 0x13, 0x4f, 0x30, 0xe4, 0x43, 0x55, 0x04, 0x10, 0x2a, 0x54, 0xc3, 0x44, 0xed, 0x80, 0x00, 0x9c, 0xe1, 0xb9, 0xc5, 0x09, 0x2c, 0x40, 0xba, 0x32, 0xdf, 0x80, 0x53, 0x93, 0x6a, 0x8c, 0xd8, 0xa9, 0x41, 0xae, 0x52, 0x84, 0x50, 0x5f, 0xd1, 0xae, 0x0c, 0x53, 0x02, 0x08, 0x6c, 0x93, 0xa5, 0x82, 0x83, 0x0d, 0x24, 0xbb, 0x64, 0x62, 0x72, 0xdd, 0x9d, 0xd2, 0xf2, 0x15, 0x04, 0x25, 0xa2, 0xd7, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12577_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12577_sig[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x01, 0x34, 0x6c, 0xc7, 0xd4, 0x83, 0x9b, 0x77, 0xf9, 0xf4, 0x87, 0xc7, 0xe7, 0xf2, 0x84, 0x1c, 0x5b, 0x7d, 0x05, 0xf9, 0x66, 0xf3, 0xbd, 0xe2, 0x8f, 0x1f, 0xa0, 0x80, 0xce, 0x40, 0x03, 0x7a, 0x74, 0xe3, 0x00, 0x1a, 0x2b, 0x00, 0xbd, 0x39, 0xee, 0x4c, 0x93, 0x07, 0x2e, 0x99, 0x63, 0x72, 0x49, 0x41, 0x38, 0x3c, 0xf0, 0x81, 0x2c, 0x02, 0xd1, 0xc8, 0x38, 0xad, 0x45, 0x02, 0xa1, 0x2c, 0x61, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12577 = { .name = "ecdsa_secp521r1_sha512_12577", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12577_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12577_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12577_sig, .siglen = 132, .result = 1, .comment = "edge case for u2, tcId is 247 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12578 for ECDSA, tcId is 248 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12578_pubkey[] = { 0x01, 0x40, 0x0f, 0xa3, 0xbc, 0x87, 0x48, 0x2e, 0xc1, 0xba, 0x75, 0x34, 0x6a, 0x12, 0x9e, 0xc8, 0xf7, 0x94, 0x56, 0xe7, 0xd6, 0x34, 0x3b, 0x2a, 0x6b, 0xe2, 0x24, 0x90, 0x88, 0x4b, 0x8f, 0x8b, 0x89, 0x11, 0x4c, 0x0e, 0x5f, 0x95, 0x58, 0xd7, 0x62, 0x7a, 0xde, 0xae, 0x53, 0xff, 0x8c, 0xe3, 0x7b, 0xaf, 0x94, 0xb9, 0x9d, 0x04, 0xf7, 0x50, 0x98, 0xca, 0x8e, 0x3e, 0x77, 0xc6, 0xbe, 0x02, 0xbc, 0x3e, 0x01, 0x69, 0x0d, 0x77, 0x08, 0x06, 0xbd, 0xe9, 0xf4, 0xd2, 0x76, 0x02, 0x93, 0xab, 0xa6, 0x07, 0x60, 0x66, 0xf1, 0x76, 0x2e, 0x84, 0x48, 0xf0, 0xd0, 0x87, 0x24, 0xef, 0x31, 0x1f, 0xf7, 0x59, 0x6f, 0x35, 0xe8, 0xb6, 0xa9, 0x34, 0x6d, 0xe6, 0x5b, 0xea, 0x92, 0x4b, 0x9d, 0x30, 0xbb, 0x97, 0x2e, 0x3b, 0x38, 0x87, 0x81, 0x72, 0xf9, 0x04, 0x03, 0x78, 0xa0, 0xdb, 0x47, 0x29, 0x9e, 0x97, 0x98, 0x56, }; static const unsigned char ecdsa_secp521r1_sha512_12578_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12578_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0xa2, 0x4f, 0xbd, 0x60, 0x2f, 0xf7, 0x01, 0x2b, 0x6b, 0x00, 0xe9, 0xaa, 0x16, 0x83, 0xb4, 0x5b, 0xfa, 0x2d, 0x62, 0xdc, 0x76, 0x87, 0x37, 0xe8, 0xda, 0x92, 0xca, 0xd5, 0x2f, 0x06, 0x9e, 0xfb, 0xea, 0x52, 0x6a, 0xcc, 0x68, 0x09, 0x6f, 0xc0, 0xef, 0x99, 0x60, 0xc6, 0xb9, 0x89, 0xbf, 0x89, 0x22, 0xae, 0xa3, 0x8f, 0xd4, 0x63, 0xd0, 0x2c, 0x0e, 0x7c, 0x25, 0xe3, 0x36, 0xf3, 0x2b, 0x08, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12578 = { .name = "ecdsa_secp521r1_sha512_12578", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12578_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12578_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12578_sig, .siglen = 132, .result = 1, .comment = "point duplication during verification, tcId is 248 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12579 for ECDSA, tcId is 249 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12579_pubkey[] = { 0x01, 0x40, 0x0f, 0xa3, 0xbc, 0x87, 0x48, 0x2e, 0xc1, 0xba, 0x75, 0x34, 0x6a, 0x12, 0x9e, 0xc8, 0xf7, 0x94, 0x56, 0xe7, 0xd6, 0x34, 0x3b, 0x2a, 0x6b, 0xe2, 0x24, 0x90, 0x88, 0x4b, 0x8f, 0x8b, 0x89, 0x11, 0x4c, 0x0e, 0x5f, 0x95, 0x58, 0xd7, 0x62, 0x7a, 0xde, 0xae, 0x53, 0xff, 0x8c, 0xe3, 0x7b, 0xaf, 0x94, 0xb9, 0x9d, 0x04, 0xf7, 0x50, 0x98, 0xca, 0x8e, 0x3e, 0x77, 0xc6, 0xbe, 0x02, 0xbc, 0x3e, 0x00, 0x96, 0xf2, 0x88, 0xf7, 0xf9, 0x42, 0x16, 0x0b, 0x2d, 0x89, 0xfd, 0x6c, 0x54, 0x59, 0xf8, 0x9f, 0x99, 0x0e, 0x89, 0xd1, 0x7b, 0xb7, 0x0f, 0x2f, 0x78, 0xdb, 0x10, 0xce, 0xe0, 0x08, 0xa6, 0x90, 0xca, 0x17, 0x49, 0x56, 0xcb, 0x92, 0x19, 0xa4, 0x15, 0x6d, 0xb4, 0x62, 0xcf, 0x44, 0x68, 0xd1, 0xc4, 0xc7, 0x78, 0x7e, 0x8d, 0x06, 0xfb, 0xfc, 0x87, 0x5f, 0x24, 0xb8, 0xd6, 0x61, 0x68, 0x67, 0xa9, }; static const unsigned char ecdsa_secp521r1_sha512_12579_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12579_sig[] = { 0x00, 0x90, 0xc8, 0xd0, 0xd7, 0x18, 0xcb, 0x9d, 0x8d, 0x81, 0x09, 0x4e, 0x6d, 0x06, 0x8f, 0xb1, 0x3c, 0x16, 0xb4, 0xdf, 0x8c, 0x77, 0xba, 0xc6, 0x76, 0xdd, 0xdf, 0xe3, 0xe6, 0x88, 0x55, 0xbe, 0xd0, 0x6b, 0x9b, 0xa8, 0xd0, 0xf8, 0xa8, 0x0e, 0xdc, 0xe0, 0x3a, 0x9f, 0xac, 0x7d, 0xa5, 0x61, 0xe2, 0x4b, 0x1c, 0xd2, 0x2d, 0x45, 0x92, 0x39, 0xa1, 0x46, 0x69, 0x5a, 0x67, 0x1f, 0x81, 0xf7, 0x3a, 0xaf, 0x00, 0xa2, 0x4f, 0xbd, 0x60, 0x2f, 0xf7, 0x01, 0x2b, 0x6b, 0x00, 0xe9, 0xaa, 0x16, 0x83, 0xb4, 0x5b, 0xfa, 0x2d, 0x62, 0xdc, 0x76, 0x87, 0x37, 0xe8, 0xda, 0x92, 0xca, 0xd5, 0x2f, 0x06, 0x9e, 0xfb, 0xea, 0x52, 0x6a, 0xcc, 0x68, 0x09, 0x6f, 0xc0, 0xef, 0x99, 0x60, 0xc6, 0xb9, 0x89, 0xbf, 0x89, 0x22, 0xae, 0xa3, 0x8f, 0xd4, 0x63, 0xd0, 0x2c, 0x0e, 0x7c, 0x25, 0xe3, 0x36, 0xf3, 0x2b, 0x08, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12579 = { .name = "ecdsa_secp521r1_sha512_12579", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12579_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12579_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12579_sig, .siglen = 132, .result = -1, .comment = "duplication bug, tcId is 249 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12580 for ECDSA, tcId is 250 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12580_pubkey[] = { 0x00, 0x9a, 0x7b, 0x52, 0xe1, 0xdf, 0xf0, 0x18, 0x05, 0x81, 0x43, 0xce, 0xf1, 0x5c, 0x70, 0x2a, 0x7a, 0x09, 0x4e, 0x81, 0xb3, 0xe6, 0x65, 0xb5, 0x29, 0x87, 0xa4, 0xb0, 0x77, 0xd0, 0x0c, 0x7d, 0x1c, 0xc3, 0x98, 0xbd, 0xbe, 0x16, 0x7d, 0x2a, 0x3c, 0x1e, 0xd9, 0xda, 0xff, 0x20, 0xf7, 0x68, 0xac, 0xb3, 0xfd, 0x96, 0x2c, 0x06, 0xb1, 0xfc, 0x16, 0x59, 0x3a, 0x29, 0x17, 0x34, 0x08, 0x0f, 0x40, 0xc0, 0x00, 0x8e, 0x44, 0xb4, 0x44, 0xa3, 0xf6, 0x68, 0x03, 0xff, 0x38, 0x46, 0xf2, 0x26, 0xdc, 0xf7, 0x24, 0xec, 0x3c, 0xe6, 0x92, 0xe6, 0x7a, 0xc9, 0x91, 0xe0, 0x62, 0xae, 0x4a, 0x0e, 0x55, 0x5a, 0x1a, 0xd1, 0x84, 0x90, 0x5d, 0x32, 0x31, 0xc3, 0xf0, 0x58, 0xae, 0x40, 0xc2, 0x66, 0x54, 0x7b, 0x07, 0x6a, 0x7c, 0x84, 0x20, 0xd6, 0xa7, 0xe9, 0x4a, 0xa3, 0x00, 0x34, 0x2a, 0xee, 0xed, 0x1c, 0x5f, 0x7d, }; static const unsigned char ecdsa_secp521r1_sha512_12580_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12580_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12580 = { .name = "ecdsa_secp521r1_sha512_12580", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12580_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12580_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12580_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 250 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12581 for ECDSA, tcId is 251 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12581_pubkey[] = { 0x00, 0xe2, 0x6f, 0xf0, 0x20, 0x0b, 0x73, 0x14, 0x50, 0xad, 0x17, 0xbb, 0x6f, 0xef, 0x1a, 0x6e, 0x38, 0x7a, 0x3e, 0xc4, 0x1c, 0xd4, 0xd8, 0x08, 0x23, 0x4a, 0x64, 0x27, 0x2e, 0x81, 0x9c, 0x22, 0x02, 0x66, 0xbe, 0x79, 0xc5, 0xad, 0xae, 0x37, 0x82, 0x54, 0x64, 0x9e, 0xc8, 0xcc, 0xa0, 0x5e, 0xc9, 0x28, 0x15, 0xb8, 0xb9, 0xeb, 0x3c, 0xec, 0x58, 0x69, 0x3a, 0xa6, 0xab, 0xd0, 0xba, 0x19, 0x1a, 0xbd, 0x01, 0xef, 0xc5, 0x36, 0xff, 0x70, 0x0f, 0x36, 0x11, 0xd3, 0x58, 0xe1, 0x82, 0x91, 0x47, 0x0d, 0x84, 0x54, 0x73, 0xb5, 0x75, 0x0b, 0x75, 0x25, 0xcd, 0x37, 0x09, 0x43, 0x2f, 0xf2, 0xfa, 0x87, 0x74, 0x3a, 0xf9, 0x28, 0x94, 0xa7, 0xa6, 0x46, 0xa8, 0x2f, 0xd2, 0x4d, 0x3f, 0x6e, 0x0c, 0xc4, 0x7a, 0xb6, 0x73, 0xd6, 0x86, 0x30, 0xd7, 0x70, 0xbd, 0x0d, 0x72, 0x4b, 0x0d, 0x60, 0xde, 0x6b, 0x51, 0xf6, }; static const unsigned char ecdsa_secp521r1_sha512_12581_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12581_sig[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12581 = { .name = "ecdsa_secp521r1_sha512_12581", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12581_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12581_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12581_sig, .siglen = 132, .result = -1, .comment = "point with x-coordinate 0, tcId is 251 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12582 for ECDSA, tcId is 252 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12582_pubkey[] = { 0x01, 0x77, 0xd4, 0x13, 0x0b, 0xb0, 0xff, 0x55, 0x97, 0xf3, 0xa5, 0x1f, 0x5a, 0x00, 0xf9, 0x02, 0x13, 0xc1, 0xd8, 0x58, 0x53, 0x89, 0x82, 0x9d, 0xed, 0x63, 0x18, 0x09, 0xc1, 0x80, 0xa6, 0x65, 0x63, 0x64, 0x48, 0x31, 0x42, 0xae, 0xda, 0xd3, 0x14, 0x86, 0xff, 0x27, 0xa2, 0xaa, 0xab, 0xb0, 0xed, 0x30, 0x88, 0x96, 0x94, 0x3d, 0xdf, 0x96, 0x59, 0x0e, 0x16, 0x65, 0x45, 0x0b, 0xa3, 0x4c, 0x9e, 0x87, 0x00, 0x2b, 0xba, 0x60, 0x9a, 0xd8, 0xa4, 0xb4, 0xc8, 0x94, 0xd3, 0x03, 0xb3, 0x87, 0x2c, 0x4f, 0x63, 0x93, 0x9e, 0x19, 0xae, 0x91, 0xd2, 0x1b, 0x1a, 0x83, 0xcc, 0x22, 0x60, 0x70, 0x0f, 0x8e, 0x0e, 0xc1, 0x98, 0xa6, 0xf3, 0x8d, 0xa6, 0x2a, 0x6e, 0xa5, 0x72, 0x1e, 0x13, 0x64, 0xa5, 0xa7, 0xf0, 0x2f, 0x60, 0xf5, 0xe8, 0xde, 0x53, 0xa9, 0x7c, 0xe1, 0x1c, 0x86, 0x66, 0xd5, 0x88, 0xcb, 0xcd, 0xb3, }; static const unsigned char ecdsa_secp521r1_sha512_12582_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12582_sig[] = { 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x01, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12582 = { .name = "ecdsa_secp521r1_sha512_12582", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12582_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12582_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12582_sig, .siglen = 132, .result = -1, .comment = "comparison with point at infinity , tcId is 252 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12583 for ECDSA, tcId is 253 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12583_pubkey[] = { 0x00, 0x58, 0xd3, 0x1b, 0x9f, 0x3b, 0xa3, 0x4f, 0x38, 0x4f, 0x24, 0x78, 0xfd, 0x60, 0xd5, 0x4c, 0xfa, 0x69, 0x3b, 0xbc, 0x54, 0x72, 0x10, 0x28, 0x1c, 0x00, 0x09, 0x58, 0x9c, 0x02, 0x44, 0xba, 0x19, 0x58, 0xf2, 0xba, 0x91, 0xad, 0xf7, 0x6a, 0x29, 0x6c, 0x77, 0x56, 0x6e, 0x8e, 0xaa, 0xec, 0x13, 0x2b, 0x5c, 0xbd, 0x55, 0x5b, 0x13, 0xed, 0xec, 0x0c, 0x0f, 0x0a, 0xe0, 0x61, 0xe8, 0xc9, 0xa1, 0xb1, 0x01, 0x87, 0x28, 0xb0, 0xdd, 0x02, 0xd1, 0x31, 0xfc, 0x68, 0x05, 0xb7, 0x51, 0x68, 0xc9, 0x82, 0xa3, 0xfd, 0xb9, 0x3f, 0xe8, 0x5c, 0xa2, 0xb5, 0x30, 0xd1, 0xd8, 0x39, 0xcb, 0x53, 0x4c, 0x0e, 0xbc, 0x02, 0x1a, 0xe3, 0x72, 0x39, 0x26, 0xa3, 0x00, 0x27, 0x37, 0xb4, 0xb7, 0x96, 0xc1, 0x26, 0x88, 0xd7, 0x68, 0x83, 0x4d, 0x05, 0xe2, 0x51, 0x68, 0x18, 0x43, 0x8a, 0x38, 0xc0, 0x23, 0xb5, 0x2f, 0xcf, }; static const unsigned char ecdsa_secp521r1_sha512_12583_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12583_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12583 = { .name = "ecdsa_secp521r1_sha512_12583", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12583_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12583_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12583_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 253 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12584 for ECDSA, tcId is 254 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12584_pubkey[] = { 0x00, 0x51, 0xf9, 0x81, 0x93, 0x80, 0x75, 0x5f, 0xab, 0x58, 0xf4, 0x96, 0xa8, 0x1f, 0x84, 0x65, 0x55, 0x4b, 0xcf, 0x90, 0x75, 0x54, 0xe9, 0x11, 0x58, 0x03, 0x66, 0x21, 0x52, 0x96, 0xd3, 0xa6, 0xd8, 0x1b, 0xa2, 0x2c, 0xec, 0x98, 0x6a, 0xe3, 0x30, 0x10, 0xd6, 0x41, 0x6b, 0xf1, 0xdb, 0x3b, 0x66, 0x37, 0xf6, 0x4d, 0x24, 0x0b, 0x6f, 0x4b, 0x5c, 0x7e, 0xa2, 0x29, 0xf8, 0x7e, 0x0f, 0xcd, 0x69, 0x9f, 0x01, 0x81, 0x24, 0x87, 0x27, 0x5e, 0x67, 0x2c, 0x36, 0x47, 0x12, 0x78, 0x3f, 0xe4, 0xa8, 0xa5, 0x37, 0x29, 0xe3, 0xfc, 0x90, 0x13, 0x8a, 0xfe, 0x5b, 0x86, 0x9c, 0x50, 0x68, 0xcb, 0x5d, 0x45, 0x54, 0xe1, 0xa7, 0xf1, 0xd8, 0xac, 0x9d, 0xd7, 0x8f, 0xbc, 0xa9, 0xac, 0xab, 0x4e, 0xa7, 0x91, 0x31, 0x1d, 0x66, 0xe0, 0x1e, 0x04, 0x82, 0x01, 0xb4, 0x0d, 0x9f, 0x38, 0x3d, 0x0a, 0x0b, 0x06, 0x8d, 0xaa, }; static const unsigned char ecdsa_secp521r1_sha512_12584_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12584_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12584 = { .name = "ecdsa_secp521r1_sha512_12584", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12584_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12584_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12584_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 254 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12585 for ECDSA, tcId is 255 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12585_pubkey[] = { 0x01, 0xfc, 0xa5, 0xb6, 0xda, 0x4b, 0x96, 0x5f, 0x2c, 0x88, 0xb1, 0x4f, 0x7a, 0x58, 0x44, 0xce, 0x6f, 0x82, 0x76, 0xd2, 0xf5, 0xd0, 0x37, 0x39, 0xdb, 0x26, 0x6c, 0x4f, 0x5d, 0x85, 0xfc, 0x9b, 0x37, 0x19, 0xbe, 0x45, 0x3a, 0xc8, 0x00, 0x4f, 0x02, 0x7f, 0x71, 0x4c, 0xf0, 0x7a, 0xc1, 0xb2, 0x7c, 0x7b, 0x2a, 0x1e, 0xf9, 0x27, 0x05, 0xd2, 0xa5, 0x7b, 0xbd, 0xeb, 0xf5, 0x21, 0x64, 0x76, 0x15, 0xb6, 0x01, 0xa8, 0xda, 0xbc, 0xdb, 0xbf, 0x35, 0x10, 0xa5, 0x09, 0x24, 0x4d, 0xcd, 0x9a, 0xf2, 0x72, 0xab, 0xc5, 0x60, 0xb3, 0x0d, 0x87, 0x4e, 0x92, 0xad, 0x52, 0xc5, 0x2b, 0xa6, 0x4b, 0x19, 0x32, 0x5b, 0x25, 0x0e, 0x15, 0xe7, 0xeb, 0x5b, 0x04, 0xa1, 0x90, 0xeb, 0x65, 0x8e, 0x0c, 0xf6, 0x63, 0xf0, 0x26, 0x5c, 0x05, 0xbf, 0x4a, 0xb8, 0xeb, 0x96, 0x0a, 0x70, 0x84, 0xc5, 0x14, 0x25, 0x0d, 0xe7, 0x90, }; static const unsigned char ecdsa_secp521r1_sha512_12585_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12585_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12585 = { .name = "ecdsa_secp521r1_sha512_12585", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12585_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12585_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12585_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 255 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12586 for ECDSA, tcId is 256 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12586_pubkey[] = { 0x00, 0x4c, 0x86, 0x43, 0xe5, 0x46, 0xa7, 0x1b, 0x93, 0x18, 0x5c, 0xa5, 0x83, 0xae, 0x50, 0x98, 0xc1, 0xe6, 0xc0, 0xb0, 0xd3, 0x3f, 0xc2, 0xd6, 0x18, 0x87, 0x0f, 0x94, 0x38, 0xb1, 0xc5, 0x95, 0xdb, 0xc8, 0x92, 0x00, 0x84, 0x56, 0x5f, 0x00, 0x74, 0xda, 0xfa, 0xca, 0x78, 0xba, 0xc2, 0x55, 0x8c, 0xa6, 0x23, 0xc2, 0x51, 0xf6, 0xd5, 0x30, 0x32, 0x8c, 0x27, 0x34, 0xa0, 0x41, 0x38, 0x21, 0xdf, 0xe5, 0x00, 0x1d, 0x8a, 0xc0, 0xa7, 0x25, 0x1b, 0x82, 0x04, 0x6f, 0x9c, 0xf2, 0xce, 0x67, 0x9e, 0x12, 0x77, 0x0f, 0x86, 0x81, 0xa4, 0x3f, 0x0e, 0x27, 0xe5, 0x53, 0x68, 0x0f, 0xc5, 0x23, 0x42, 0x95, 0xac, 0x24, 0x21, 0x2a, 0x25, 0xc8, 0x57, 0xe1, 0x52, 0x35, 0x06, 0x76, 0xe4, 0xe5, 0x2c, 0xa3, 0x04, 0x41, 0x81, 0xb6, 0x71, 0x10, 0xce, 0x01, 0x29, 0xfa, 0x0b, 0xdc, 0x15, 0xa4, 0xd5, 0xa7, 0x0e, 0x8e, }; static const unsigned char ecdsa_secp521r1_sha512_12586_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12586_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12586 = { .name = "ecdsa_secp521r1_sha512_12586", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12586_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12586_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12586_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 256 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12587 for ECDSA, tcId is 257 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12587_pubkey[] = { 0x00, 0xa6, 0x59, 0x7c, 0x76, 0x95, 0x60, 0x46, 0xfc, 0xd0, 0x3c, 0x44, 0x4e, 0x9a, 0x4e, 0x13, 0xb9, 0xfb, 0x75, 0x1a, 0xc9, 0x1f, 0xb4, 0xfc, 0xba, 0x5f, 0xd3, 0x3a, 0xff, 0x61, 0xf3, 0x30, 0x5f, 0xa7, 0xb8, 0x31, 0xe5, 0x22, 0x7a, 0x5c, 0x04, 0x70, 0xe5, 0xe1, 0xfd, 0xe4, 0xa2, 0x5e, 0x53, 0x9f, 0xc2, 0x37, 0x73, 0xbb, 0x3a, 0x2c, 0xf4, 0x1e, 0xee, 0x0f, 0xc6, 0x78, 0xd0, 0x50, 0x70, 0x5a, 0x01, 0xf6, 0xf5, 0xae, 0x4a, 0x3b, 0x99, 0x44, 0x73, 0x67, 0x90, 0x74, 0xf6, 0xee, 0x65, 0x79, 0xc5, 0x00, 0x5e, 0x6f, 0xd8, 0x60, 0xcd, 0x4d, 0xd2, 0x9e, 0x07, 0xd4, 0x47, 0x58, 0x23, 0xaf, 0x6b, 0xe8, 0xaf, 0x5d, 0x41, 0x4b, 0xba, 0x47, 0xb4, 0x2e, 0x60, 0x1b, 0x97, 0x66, 0x0d, 0x10, 0xa6, 0x62, 0xe3, 0x7b, 0x51, 0x80, 0xe8, 0xe6, 0x9b, 0x33, 0xc5, 0xf7, 0xd7, 0x98, 0xda, 0x18, 0xbe, 0x49, }; static const unsigned char ecdsa_secp521r1_sha512_12587_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12587_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12587 = { .name = "ecdsa_secp521r1_sha512_12587", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12587_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12587_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12587_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 257 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12588 for ECDSA, tcId is 258 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12588_pubkey[] = { 0x01, 0xa7, 0x2f, 0xa0, 0x46, 0xb1, 0x15, 0x75, 0x67, 0xb9, 0x91, 0x3a, 0x8a, 0x61, 0x10, 0x7f, 0xb4, 0xdd, 0x0e, 0x12, 0xb2, 0xb4, 0x06, 0xef, 0x21, 0x9b, 0x76, 0x7f, 0x93, 0x13, 0x0f, 0x39, 0xd5, 0x49, 0x98, 0x74, 0x5c, 0x51, 0xd1, 0xaf, 0xf5, 0x1b, 0x68, 0xd7, 0x8d, 0x34, 0x41, 0x8d, 0x61, 0x28, 0xbf, 0x93, 0xcc, 0xdb, 0xe1, 0x5f, 0x64, 0x76, 0x82, 0x4e, 0x0b, 0x31, 0x1b, 0xd2, 0x67, 0xad, 0x00, 0xf3, 0xe4, 0xd7, 0x19, 0x61, 0x05, 0x5a, 0x4c, 0x17, 0x63, 0xfc, 0x1e, 0xef, 0xa0, 0x80, 0x0f, 0x84, 0xac, 0x7c, 0x7b, 0xbc, 0x4f, 0xd8, 0xed, 0x77, 0x3b, 0x79, 0xb7, 0x0a, 0x99, 0xe0, 0x1d, 0x1a, 0x6c, 0x00, 0x96, 0x5e, 0xe1, 0xff, 0x66, 0x65, 0x09, 0x3a, 0xa4, 0x23, 0xf9, 0xd3, 0x04, 0x79, 0x2a, 0xf7, 0xa4, 0xf4, 0x14, 0x1c, 0x3a, 0x2a, 0x5d, 0x90, 0x05, 0x24, 0x95, 0x4a, 0x95, 0xd4, }; static const unsigned char ecdsa_secp521r1_sha512_12588_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12588_sig[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12588 = { .name = "ecdsa_secp521r1_sha512_12588", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12588_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12588_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12588_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 258 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12589 for ECDSA, tcId is 259 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12589_pubkey[] = { 0x00, 0xcf, 0x6d, 0xf1, 0xca, 0xf0, 0x2f, 0x90, 0x98, 0xbe, 0x50, 0x2e, 0x18, 0x7a, 0x92, 0x4f, 0xbe, 0x8c, 0xc1, 0x0f, 0x04, 0x22, 0xdd, 0x66, 0xbf, 0xd9, 0xf9, 0x15, 0x6c, 0xf2, 0x2d, 0x83, 0x0f, 0x08, 0x4b, 0x8d, 0xb3, 0xa4, 0xee, 0x58, 0x8f, 0xb1, 0x08, 0xba, 0x17, 0x81, 0x03, 0xa1, 0xaa, 0x45, 0xaa, 0x68, 0x7f, 0xe9, 0xb3, 0x01, 0x73, 0x79, 0x1b, 0x6e, 0xfe, 0xde, 0x4b, 0x60, 0x07, 0x74, 0x00, 0x35, 0x9b, 0x96, 0xe7, 0x24, 0xfe, 0x86, 0x9a, 0xbb, 0x95, 0xf4, 0x54, 0x9a, 0xf4, 0x0e, 0x13, 0xc6, 0x64, 0xd1, 0xa0, 0x09, 0xad, 0x02, 0x05, 0xb4, 0x54, 0xf1, 0xa4, 0x95, 0x58, 0x1a, 0x77, 0x0e, 0x5c, 0x82, 0xaa, 0x98, 0x4b, 0xd2, 0xa5, 0xcd, 0x2d, 0x35, 0x9a, 0xdf, 0x48, 0x7c, 0x39, 0x2e, 0x44, 0x10, 0x48, 0xfe, 0x60, 0xc2, 0x69, 0x6f, 0xfa, 0x95, 0x8c, 0x80, 0x7d, 0xe0, 0x97, 0xc9, }; static const unsigned char ecdsa_secp521r1_sha512_12589_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12589_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xa8, 0xc5, 0xd7, 0x82, 0x81, 0x3f, 0xba, 0x87, 0x79, 0x2a, 0x99, 0x55, 0xc2, 0xfd, 0x03, 0x37, 0x45, 0x69, 0x3c, 0x98, 0x92, 0xd8, 0x89, 0x6d, 0x3a, 0x3e, 0x7a, 0x92, 0x5f, 0x85, 0xbd, 0x76, 0xad, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12589 = { .name = "ecdsa_secp521r1_sha512_12589", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12589_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12589_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12589_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and edgecase s, tcId is 259 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12590 for ECDSA, tcId is 260 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12590_pubkey[] = { 0x00, 0x6f, 0x83, 0x9c, 0x4f, 0x23, 0xef, 0x04, 0x0b, 0x3a, 0x99, 0x91, 0xd4, 0x7c, 0x9c, 0x4d, 0xef, 0x6f, 0xdb, 0x0e, 0xcf, 0x6f, 0xc3, 0xb8, 0x29, 0x5d, 0x07, 0x72, 0x9b, 0xeb, 0x37, 0x50, 0x5c, 0xb4, 0xe9, 0xb1, 0x0d, 0x68, 0x97, 0x2f, 0x03, 0xb6, 0xef, 0x5d, 0x66, 0x96, 0x03, 0xc1, 0x51, 0x5e, 0x26, 0xcd, 0xf3, 0xa7, 0xff, 0x5d, 0x34, 0xcd, 0x4f, 0x70, 0xe7, 0xad, 0x4b, 0x94, 0xa2, 0x7b, 0x00, 0x54, 0xdf, 0x97, 0x78, 0x5d, 0xb8, 0x21, 0x6d, 0x9a, 0x5e, 0x21, 0x11, 0x8b, 0xc6, 0xcc, 0xa9, 0x59, 0x7d, 0x89, 0xc6, 0x6d, 0xb1, 0xdf, 0x90, 0xc9, 0xc8, 0x30, 0x3a, 0x49, 0x00, 0x1a, 0xb8, 0x54, 0xfd, 0x39, 0xd3, 0xc1, 0x8f, 0x2e, 0xb3, 0x73, 0x6a, 0x08, 0x27, 0xa7, 0x51, 0x01, 0x18, 0x70, 0xc1, 0xdb, 0x6a, 0x00, 0x13, 0xbd, 0xbf, 0x61, 0x75, 0xc2, 0xfb, 0xfe, 0x27, 0xd9, 0x1f, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12590_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12590_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12590 = { .name = "ecdsa_secp521r1_sha512_12590", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12590_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12590_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12590_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 260 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12591 for ECDSA, tcId is 261 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12591_pubkey[] = { 0x01, 0x50, 0x24, 0x6d, 0xd4, 0x27, 0xca, 0xcc, 0xe6, 0x6e, 0x6d, 0xe5, 0x7a, 0x8c, 0xc0, 0xdf, 0xe2, 0x49, 0x96, 0x9f, 0x3f, 0xcf, 0x4e, 0xd6, 0x4d, 0xe3, 0x41, 0x33, 0x9e, 0xb9, 0x03, 0x31, 0xdb, 0x1f, 0x05, 0x47, 0x52, 0x92, 0xce, 0x9c, 0x29, 0x91, 0x6d, 0xa6, 0x5c, 0xea, 0xb6, 0xe6, 0x7e, 0xf2, 0xdc, 0xe1, 0x3b, 0x1e, 0x17, 0xb8, 0xd1, 0xa2, 0xde, 0x7f, 0xfc, 0x15, 0x04, 0xf3, 0xfd, 0x9d, 0x01, 0x92, 0x87, 0xf0, 0x91, 0x86, 0xd2, 0xa7, 0xef, 0xd6, 0xc4, 0xbc, 0x56, 0x90, 0x42, 0x9d, 0xc3, 0x1a, 0x17, 0xdd, 0xea, 0x53, 0xd4, 0xaa, 0x66, 0x2a, 0x58, 0xaa, 0x11, 0xfe, 0xb4, 0x08, 0x01, 0xdc, 0x9c, 0x75, 0x0c, 0x18, 0x7d, 0x43, 0x51, 0xf5, 0x99, 0x0c, 0xdd, 0x16, 0x71, 0xab, 0x90, 0x97, 0xba, 0xac, 0x05, 0x12, 0xb8, 0xca, 0x37, 0xf5, 0x57, 0xfe, 0xcb, 0xf5, 0x90, 0xfa, 0xfd, 0x6a, }; static const unsigned char ecdsa_secp521r1_sha512_12591_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12591_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x99, 0x95, 0x0e, 0x05, 0x39, 0x36, 0x32, 0x8c, 0x78, 0x55, 0xff, 0xd6, 0x67, 0x6d, 0x92, 0x6e, 0x1e, 0x40, 0x2f, 0xc4, 0xa1, 0x60, 0x6e, 0x16, 0x9f, 0xbe, 0xfc, 0x59, 0x5f, 0x4b, 0xa7, 0x60, 0x50, 0x07, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12591 = { .name = "ecdsa_secp521r1_sha512_12591", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12591_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12591_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12591_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 261 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12592 for ECDSA, tcId is 262 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12592_pubkey[] = { 0x00, 0xd4, 0x2b, 0x27, 0x14, 0x45, 0x24, 0x1e, 0x4e, 0x51, 0x36, 0xcf, 0x8e, 0x5b, 0x70, 0x6e, 0xd4, 0x40, 0x32, 0x34, 0xcc, 0xa5, 0x48, 0x21, 0x73, 0x71, 0x69, 0xe9, 0xa6, 0x0d, 0xec, 0x54, 0x74, 0x5f, 0x1d, 0xc0, 0x77, 0xc5, 0xed, 0x9d, 0x60, 0xc2, 0xf5, 0x72, 0xc5, 0xe5, 0x74, 0x9f, 0x4f, 0x44, 0x31, 0x95, 0x25, 0x61, 0xc2, 0xa3, 0x0d, 0x9a, 0xc3, 0x12, 0xfb, 0xc3, 0xe5, 0xdc, 0x9d, 0xca, 0x01, 0x79, 0xb7, 0xa6, 0x3b, 0x67, 0xb3, 0x45, 0xaa, 0x86, 0x5d, 0xb1, 0x4d, 0x91, 0x47, 0xb3, 0x60, 0x94, 0xa1, 0x21, 0x64, 0x26, 0x3e, 0x58, 0x8e, 0x20, 0x99, 0x6a, 0xd8, 0x14, 0xb2, 0xf1, 0xff, 0xd9, 0x68, 0x17, 0x20, 0x30, 0x5b, 0x3b, 0x03, 0xf6, 0xb9, 0x48, 0xdb, 0x03, 0xa7, 0xd8, 0x9a, 0xf2, 0xef, 0xf7, 0xdb, 0xde, 0xa0, 0xc4, 0x11, 0x94, 0x0e, 0xd8, 0x0c, 0xce, 0x6d, 0x9b, 0x34, 0xc6, }; static const unsigned char ecdsa_secp521r1_sha512_12592_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12592_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x66, 0x65, 0x43, 0x81, 0x4e, 0x4d, 0x8c, 0xa3, 0x1e, 0x15, 0x7f, 0xf5, 0x99, 0xdb, 0x64, 0x9b, 0x87, 0x90, 0x0b, 0xf1, 0x28, 0x58, 0x1b, 0x85, 0xa7, 0xef, 0xbf, 0x16, 0x57, 0xd2, 0xe9, 0xd8, 0x14, 0x02, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12592 = { .name = "ecdsa_secp521r1_sha512_12592", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12592_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12592_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12592_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 262 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12593 for ECDSA, tcId is 263 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12593_pubkey[] = { 0x00, 0x70, 0x78, 0x0e, 0xa3, 0xc2, 0xe7, 0x3b, 0x24, 0x00, 0xf4, 0x4f, 0x48, 0xa3, 0x93, 0xb6, 0xc9, 0x01, 0x9c, 0xfa, 0x78, 0x8a, 0xa5, 0xe3, 0xd2, 0x72, 0xec, 0xbe, 0xc9, 0xdc, 0x0d, 0xbc, 0xb3, 0x51, 0x87, 0xd9, 0x57, 0x5e, 0x1f, 0x5f, 0x15, 0xba, 0xf2, 0x2f, 0x50, 0x2e, 0x3c, 0xa9, 0x28, 0x7c, 0x52, 0x24, 0xf5, 0x87, 0xfb, 0xaf, 0x1d, 0x88, 0x94, 0xa1, 0xc3, 0x3b, 0xd6, 0xd1, 0x2a, 0xa6, 0x00, 0x0e, 0x0b, 0xcd, 0x71, 0x84, 0x84, 0xed, 0x9f, 0x4d, 0xa4, 0xd7, 0x7a, 0x97, 0xf6, 0xb5, 0xa4, 0x2f, 0xf8, 0x2c, 0x0f, 0x25, 0xd3, 0x24, 0x1a, 0xb0, 0xb2, 0xa1, 0xde, 0x24, 0x19, 0xbe, 0xe0, 0x45, 0x45, 0xea, 0x15, 0x9d, 0x8e, 0x56, 0x4e, 0xc3, 0xbb, 0x91, 0x26, 0x7c, 0xec, 0x49, 0x2b, 0xfb, 0x9b, 0xfc, 0xab, 0xa8, 0xfd, 0xa4, 0xe8, 0x80, 0x51, 0xfc, 0xaf, 0xc9, 0x8a, 0x3f, 0x53, 0x36, }; static const unsigned char ecdsa_secp521r1_sha512_12593_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12593_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x6d, 0xb6, 0xdb, 0x68, 0xd8, 0x2a, 0x2b, 0x03, 0x36, 0x28, 0xca, 0x12, 0xff, 0xd3, 0x6e, 0xd0, 0xd3, 0xbf, 0x20, 0x69, 0x57, 0xc0, 0x63, 0xc2, 0xbf, 0x18, 0x3d, 0x71, 0x32, 0xf2, 0x0a, 0xac, 0x7c, 0x79, 0x7a, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12593 = { .name = "ecdsa_secp521r1_sha512_12593", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12593_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12593_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12593_sig, .siglen = 132, .result = 1, .comment = "extreme value for k and s^-1, tcId is 263 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12594 for ECDSA, tcId is 264 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12594_pubkey[] = { 0x01, 0xf9, 0x88, 0xe9, 0x27, 0x91, 0xf1, 0x4d, 0xdb, 0xff, 0x35, 0xea, 0xb1, 0xdd, 0xdd, 0x36, 0xf3, 0x16, 0x7b, 0x51, 0x4e, 0x95, 0xc7, 0x0d, 0xfe, 0x6e, 0x61, 0x6a, 0x77, 0xa0, 0x06, 0x47, 0x21, 0xf8, 0xae, 0xf8, 0x71, 0xd4, 0xc4, 0x82, 0x52, 0x4e, 0x56, 0x47, 0xff, 0x20, 0x20, 0x4f, 0xa4, 0xda, 0xfa, 0xea, 0xa8, 0x0d, 0xd3, 0xb7, 0xd9, 0x90, 0x07, 0xe5, 0x92, 0xae, 0x5b, 0x58, 0x99, 0x16, 0x00, 0x3a, 0x92, 0x99, 0xba, 0x5d, 0xfb, 0x59, 0x91, 0xc9, 0x4e, 0x88, 0x0f, 0xf6, 0xc6, 0x14, 0x95, 0x8c, 0xee, 0xe5, 0x5e, 0x2c, 0xe5, 0xb2, 0x2c, 0x0b, 0xfb, 0x0e, 0xb4, 0x37, 0x59, 0xb4, 0x84, 0x8c, 0xe0, 0x07, 0x48, 0x2e, 0x74, 0x21, 0xae, 0xf5, 0xc8, 0xda, 0x00, 0x0b, 0xa2, 0x24, 0xac, 0xb4, 0xdb, 0xbf, 0x73, 0x49, 0x8d, 0x73, 0x70, 0x5c, 0x06, 0xb6, 0x7f, 0x26, 0x7e, 0x5a, 0x8a, 0x10, }; static const unsigned char ecdsa_secp521r1_sha512_12594_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12594_sig[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0x0e, 0xb1, 0x0e, 0x5a, 0xb9, 0x5f, 0x2f, 0x26, 0xa4, 0x07, 0x00, 0xb1, 0x30, 0x0f, 0xb8, 0xc3, 0xc8, 0xd5, 0x38, 0x4f, 0xfb, 0xec, 0xf1, 0xfd, 0xb9, 0xe1, 0x1e, 0x67, 0xcb, 0x7f, 0xd6, 0xa7, 0xf5, 0x03, 0xe6, 0xe2, 0x5a, 0xc0, 0x9b, 0xb8, 0x8b, 0x6c, 0x39, 0x83, 0xdf, 0x76, 0x4d, 0x4d, 0x72, 0xbc, 0x29, 0x20, 0xe2, 0x33, 0xf0, 0xf7, 0x97, 0x4a, 0x23, 0x4a, 0x21, 0xb0, 0x0b, 0xb4, 0x47, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12594 = { .name = "ecdsa_secp521r1_sha512_12594", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12594_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12594_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12594_sig, .siglen = 132, .result = 1, .comment = "extreme value for k, tcId is 264 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12595 for ECDSA, tcId is 265 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12595_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_12595_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12595_sig[] = { 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12595 = { .name = "ecdsa_secp521r1_sha512_12595", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12595_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12595_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12595_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 265 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12596 for ECDSA, tcId is 266 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12596_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdsa_secp521r1_sha512_12596_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12596_sig[] = { 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12596 = { .name = "ecdsa_secp521r1_sha512_12596", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12596_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12596_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12596_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 266 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12597 for ECDSA, tcId is 267 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12597_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_12597_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12597_sig[] = { 0x00, 0x00, 0xc6, 0xee, 0x9e, 0x33, 0xcf, 0x5c, 0x67, 0x15, 0xa1, 0xd1, 0x48, 0xfd, 0x73, 0xf7, 0x31, 0x88, 0x84, 0xb4, 0x1a, 0xdc, 0xb9, 0x16, 0x02, 0x1e, 0x2b, 0xc0, 0xe8, 0x00, 0xa5, 0xc5, 0xdd, 0x97, 0xf5, 0x14, 0x21, 0x78, 0xf6, 0xae, 0x88, 0xc8, 0xfd, 0xd9, 0x8e, 0x1a, 0xfb, 0x0c, 0xe4, 0xc8, 0xd2, 0xc5, 0x4b, 0x5f, 0x37, 0xb3, 0x0b, 0x7d, 0xa1, 0x99, 0x7b, 0xb3, 0x3b, 0x0b, 0x8a, 0x31, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12597 = { .name = "ecdsa_secp521r1_sha512_12597", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12597_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12597_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12597_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 267 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12598 for ECDSA, tcId is 268 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12598_pubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x00, 0xe7, 0xc6, 0xd6, 0x95, 0x87, 0x65, 0xc4, 0x3f, 0xfb, 0xa3, 0x75, 0xa0, 0x4b, 0xd3, 0x82, 0xe4, 0x26, 0x67, 0x0a, 0xbb, 0xb6, 0xa8, 0x64, 0xbb, 0x97, 0xe8, 0x50, 0x42, 0xe8, 0xd8, 0xc1, 0x99, 0xd3, 0x68, 0x11, 0x8d, 0x66, 0xa1, 0x0b, 0xd9, 0xbf, 0x3a, 0xaf, 0x46, 0xfe, 0xc0, 0x52, 0xf8, 0x9e, 0xca, 0xc3, 0x8f, 0x79, 0x5d, 0x8d, 0x3d, 0xbf, 0x77, 0x41, 0x6b, 0x89, 0x60, 0x2e, 0x99, 0xaf, }; static const unsigned char ecdsa_secp521r1_sha512_12598_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12598_sig[] = { 0x01, 0xff, 0x39, 0x11, 0x61, 0xcc, 0x30, 0xa3, 0x98, 0xea, 0x5e, 0x2e, 0xb7, 0x02, 0x8c, 0x08, 0xce, 0x77, 0x7b, 0x4b, 0xe5, 0x23, 0x46, 0xe9, 0xfd, 0xe1, 0xd4, 0x3f, 0x17, 0xff, 0x5a, 0x3a, 0x22, 0x62, 0x5c, 0x72, 0x66, 0x0a, 0xc8, 0x81, 0x0d, 0xa2, 0x81, 0xf2, 0x73, 0x2d, 0xfb, 0xfc, 0xc1, 0x07, 0x68, 0xf0, 0x7e, 0x59, 0x51, 0xe9, 0x3c, 0x31, 0x19, 0xd6, 0x3b, 0x6b, 0x56, 0x2c, 0xd9, 0xd8, 0x00, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x92, 0x49, 0x24, 0x91, 0x79, 0x5c, 0x5c, 0x80, 0x89, 0x06, 0xcc, 0x58, 0x7f, 0xf8, 0x92, 0x78, 0x23, 0x4a, 0x85, 0x66, 0xe3, 0xf5, 0x65, 0xf5, 0xca, 0x84, 0x0a, 0x3d, 0x88, 0x7d, 0xac, 0x72, 0x14, 0xbe, 0xe9, 0xb8, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12598 = { .name = "ecdsa_secp521r1_sha512_12598", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12598_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12598_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12598_sig, .siglen = 132, .result = -1, .comment = "testing point duplication, tcId is 268 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12599 for ECDSA, tcId is 269 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12599_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_12599_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256r1_sha256_12599_sig[] = { 0xa8, 0xea, 0x15, 0x0c, 0xb8, 0x01, 0x25, 0xd7, 0x38, 0x1c, 0x4c, 0x1f, 0x1d, 0xa8, 0xe9, 0xde, 0x27, 0x11, 0xf9, 0x91, 0x70, 0x60, 0x40, 0x6a, 0x73, 0xd7, 0x90, 0x45, 0x19, 0xe5, 0x13, 0x88, 0xf3, 0xab, 0x9f, 0xa6, 0x8b, 0xd4, 0x79, 0x73, 0xa7, 0x3b, 0x2d, 0x40, 0x48, 0x0c, 0x2b, 0xa5, 0x0c, 0x22, 0xc9, 0xd7, 0x6e, 0xc2, 0x17, 0x25, 0x72, 0x88, 0x29, 0x32, 0x85, 0x44, 0x9b, 0x86, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12599 = { .name = "ecdsa_secp256r1_sha256_12599", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12599_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12599_msg, .msglen = 6, .sig = ecdsa_secp256r1_sha256_12599_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 269 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12600 for ECDSA, tcId is 270 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12600_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_12600_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256r1_sha256_12600_sig[] = { 0x30, 0xe7, 0x82, 0xf9, 0x64, 0xb2, 0xe2, 0xff, 0x06, 0x5a, 0x05, 0x1b, 0xc7, 0xad, 0xc2, 0x06, 0x15, 0xd8, 0xc4, 0x3a, 0x13, 0x65, 0x71, 0x3c, 0x88, 0x26, 0x88, 0x22, 0xc2, 0x53, 0xbc, 0xce, 0x5b, 0x16, 0xdf, 0x65, 0x2a, 0xa1, 0xec, 0xb2, 0xdc, 0x8b, 0x46, 0xc5, 0x15, 0xf9, 0x60, 0x4e, 0x2e, 0x84, 0xca, 0xcf, 0xa7, 0xc6, 0xee, 0xc3, 0x04, 0x28, 0xd2, 0xd3, 0xf4, 0xe0, 0x8e, 0xd5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12600 = { .name = "ecdsa_secp256r1_sha256_12600", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12600_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12600_msg, .msglen = 4, .sig = ecdsa_secp256r1_sha256_12600_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 270 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12601 for ECDSA, tcId is 271 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12601_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_12601_sig[] = { 0xb2, 0x92, 0xa6, 0x19, 0x33, 0x9f, 0x6e, 0x56, 0x7a, 0x30, 0x5c, 0x95, 0x1c, 0x0d, 0xcb, 0xcc, 0x42, 0xd1, 0x6e, 0x47, 0xf2, 0x19, 0xf9, 0xe9, 0x8e, 0x76, 0xe0, 0x9d, 0x87, 0x70, 0xb3, 0x4a, 0x01, 0x77, 0xe6, 0x04, 0x92, 0xc5, 0xa8, 0x24, 0x2f, 0x76, 0xf0, 0x7b, 0xfe, 0x36, 0x61, 0xbd, 0xe5, 0x9e, 0xc2, 0xa1, 0x7c, 0xe5, 0xbd, 0x2d, 0xab, 0x2a, 0xbe, 0xbd, 0xf8, 0x9a, 0x62, 0xe2, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12601 = { .name = "ecdsa_secp256r1_sha256_12601", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12601_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256r1_sha256_12601_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 271 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12602 for ECDSA, tcId is 272 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12602_pubkey[] = { 0x04, 0xaa, 0xec, 0x73, 0x63, 0x57, 0x26, 0xf2, 0x13, 0xfb, 0x8a, 0x9e, 0x64, 0xda, 0x3b, 0x86, 0x32, 0xe4, 0x14, 0x95, 0xa9, 0x44, 0xd0, 0x04, 0x5b, 0x52, 0x2e, 0xba, 0x72, 0x40, 0xfa, 0xd5, 0x87, 0xd9, 0x31, 0x57, 0x98, 0xaa, 0xa3, 0xa5, 0xba, 0x01, 0x77, 0x57, 0x87, 0xce, 0xd0, 0x5e, 0xaa, 0xf7, 0xb4, 0xe0, 0x9f, 0xc8, 0x1d, 0x6d, 0x1a, 0xa5, 0x46, 0xe8, 0x36, 0x5d, 0x52, 0x5d, }; static const unsigned char ecdsa_secp256r1_sha256_12602_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12602_sig[] = { 0x98, 0x6e, 0x65, 0x93, 0x3e, 0xf2, 0xed, 0x4e, 0xe5, 0xaa, 0xda, 0x13, 0x9f, 0x52, 0xb7, 0x05, 0x39, 0xaa, 0xf6, 0x3f, 0x00, 0xa9, 0x1f, 0x29, 0xc6, 0x91, 0x78, 0x49, 0x0d, 0x57, 0xfb, 0x71, 0x3d, 0xaf, 0xed, 0xfb, 0x8d, 0xa6, 0x18, 0x9d, 0x37, 0x23, 0x08, 0xcb, 0xf1, 0x48, 0x9b, 0xbb, 0xda, 0xbf, 0x0c, 0x02, 0x17, 0xd1, 0xc0, 0xff, 0x0f, 0x70, 0x1a, 0xaa, 0x7a, 0x69, 0x4b, 0x9c, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12602 = { .name = "ecdsa_secp256r1_sha256_12602", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12602_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12602_msg, .msglen = 20, .sig = ecdsa_secp256r1_sha256_12602_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 272 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12603 for ECDSA, tcId is 273 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12603_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_12603_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp384r1_sha384_12603_sig[] = { 0x23, 0x45, 0x03, 0xfc, 0xca, 0x57, 0x81, 0x21, 0x98, 0x6d, 0x96, 0xbe, 0x07, 0xfb, 0xc8, 0xda, 0x5d, 0x89, 0x4e, 0xd8, 0x58, 0x8c, 0x6d, 0xbc, 0xdb, 0xe9, 0x74, 0xb4, 0xb8, 0x13, 0xb2, 0x1c, 0x52, 0xd2, 0x0a, 0x89, 0x28, 0xf2, 0xe2, 0xfd, 0xac, 0x14, 0x70, 0x5b, 0x07, 0x05, 0x49, 0x8c, 0xcd, 0x7b, 0x9b, 0x76, 0x6b, 0x97, 0xb5, 0x3d, 0x1a, 0x80, 0xfc, 0x0b, 0x76, 0x0a, 0xf1, 0x6a, 0x11, 0xbf, 0x4a, 0x59, 0xc7, 0xc3, 0x67, 0xc6, 0xc7, 0x27, 0x5d, 0xfb, 0x6e, 0x18, 0xa8, 0x80, 0x91, 0xee, 0xd3, 0x73, 0x4b, 0xf5, 0xcf, 0x41, 0xb3, 0xdc, 0x6f, 0xec, 0xd6, 0xd3, 0xba, 0xaf, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12603 = { .name = "ecdsa_secp384r1_sha384_12603", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12603_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12603_msg, .msglen = 6, .sig = ecdsa_secp384r1_sha384_12603_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 273 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12604 for ECDSA, tcId is 274 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12604_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_12604_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp384r1_sha384_12604_sig[] = { 0x99, 0xc8, 0xee, 0x53, 0x10, 0x65, 0x3f, 0x6b, 0xb6, 0xf5, 0x40, 0x14, 0x6e, 0xdc, 0x01, 0x5c, 0xce, 0x3c, 0x11, 0x5b, 0xf3, 0x08, 0x8b, 0xe1, 0xf4, 0x20, 0x59, 0x30, 0xb0, 0x81, 0x84, 0xbe, 0x88, 0x68, 0xd8, 0xb8, 0x32, 0x0f, 0x0e, 0xcc, 0x60, 0xf3, 0xb1, 0xbc, 0xcd, 0x41, 0x0b, 0x32, 0xca, 0x49, 0xb9, 0xf4, 0xfd, 0xa7, 0x15, 0xd5, 0x22, 0xbd, 0x0e, 0xc9, 0xb7, 0x67, 0xef, 0x6d, 0x7d, 0x0b, 0x34, 0x0d, 0x3a, 0xa9, 0xfc, 0xac, 0x67, 0x58, 0x74, 0xbb, 0x3d, 0xab, 0xc7, 0xb8, 0xe0, 0xc3, 0x39, 0x23, 0x86, 0x0b, 0x94, 0xcb, 0x00, 0x11, 0x5b, 0x10, 0xac, 0x50, 0x56, 0xf1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12604 = { .name = "ecdsa_secp384r1_sha384_12604", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12604_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12604_msg, .msglen = 4, .sig = ecdsa_secp384r1_sha384_12604_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 274 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12605 for ECDSA, tcId is 275 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12605_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_12605_sig[] = { 0x32, 0x40, 0x12, 0x49, 0x71, 0x4e, 0x90, 0x91, 0xf0, 0x5a, 0x5e, 0x10, 0x9d, 0x5c, 0x12, 0x16, 0xfd, 0xc0, 0x5e, 0x98, 0x61, 0x42, 0x61, 0xaa, 0x0d, 0xbd, 0x9e, 0x9c, 0xd4, 0x41, 0x5d, 0xee, 0x29, 0x23, 0x8a, 0xfb, 0xd3, 0xb1, 0x03, 0xc1, 0xe4, 0x0e, 0xe5, 0xc9, 0x14, 0x4a, 0xee, 0x0f, 0x43, 0x26, 0x75, 0x6f, 0xb2, 0xc4, 0xfd, 0x72, 0x63, 0x60, 0xdd, 0x64, 0x79, 0xb5, 0x84, 0x94, 0x78, 0xc7, 0xa9, 0xd0, 0x54, 0xa8, 0x33, 0xa5, 0x8c, 0x16, 0x31, 0xc3, 0x3b, 0x63, 0xc3, 0x44, 0x13, 0x36, 0xdd, 0xf2, 0xc7, 0xfe, 0x0e, 0xd1, 0x29, 0xaa, 0xe6, 0xd4, 0xdd, 0xfe, 0xb7, 0x53, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12605 = { .name = "ecdsa_secp384r1_sha384_12605", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12605_pubkey, .pubkeylen = 96, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp384r1_sha384_12605_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 275 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12606 for ECDSA, tcId is 276 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12606_pubkey[] = { 0x29, 0xbd, 0xb7, 0x6d, 0x5f, 0xa7, 0x41, 0xbf, 0xd7, 0x02, 0x33, 0xcb, 0x3a, 0x66, 0xcc, 0x7d, 0x44, 0xbe, 0xb3, 0xb0, 0x66, 0x3d, 0x92, 0xa8, 0x13, 0x66, 0x50, 0x47, 0x8b, 0xce, 0xfb, 0x61, 0xef, 0x18, 0x2e, 0x15, 0x5a, 0x54, 0x34, 0x5a, 0x5e, 0x8e, 0x5e, 0x88, 0xf0, 0x64, 0xe5, 0xbc, 0x9a, 0x52, 0x5a, 0xb7, 0xf7, 0x64, 0xda, 0xd3, 0xda, 0xe1, 0x46, 0x8c, 0x2b, 0x41, 0x9f, 0x3b, 0x62, 0xb9, 0xba, 0x91, 0x7d, 0x5e, 0x8c, 0x4f, 0xb1, 0xec, 0x47, 0x40, 0x4a, 0x3f, 0xc7, 0x64, 0x74, 0xb2, 0x71, 0x30, 0x81, 0xbe, 0x9d, 0xb4, 0xc0, 0x0e, 0x04, 0x3a, 0xda, 0x9f, 0xc4, 0xa3, }; static const unsigned char ecdsa_secp384r1_sha384_12606_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12606_sig[] = { 0x5c, 0xad, 0x9a, 0xe1, 0x56, 0x5f, 0x25, 0x88, 0xf8, 0x6d, 0x82, 0x1c, 0x2c, 0xc1, 0xb4, 0xd0, 0xfd, 0xf8, 0x74, 0x33, 0x13, 0x26, 0x56, 0x8f, 0x5b, 0x0e, 0x13, 0x0e, 0x4e, 0x0c, 0x0e, 0xc4, 0x97, 0xf8, 0xf5, 0xf5, 0x64, 0x21, 0x2b, 0xd2, 0xa2, 0x6e, 0xcb, 0x78, 0x2c, 0xf0, 0xa1, 0x8d, 0xbf, 0x2e, 0x9d, 0x09, 0x80, 0xfb, 0xb0, 0x06, 0x96, 0x67, 0x3e, 0x7f, 0xbb, 0x03, 0xe1, 0xf8, 0x54, 0xb9, 0xd7, 0x59, 0x6b, 0x75, 0x9a, 0x17, 0xbf, 0x6e, 0x6e, 0x67, 0xa9, 0x5e, 0xa6, 0xc1, 0x66, 0x4f, 0x82, 0xdc, 0x44, 0x9a, 0xe5, 0xea, 0x77, 0x9a, 0xbd, 0x99, 0xc7, 0x8e, 0x68, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12606 = { .name = "ecdsa_secp384r1_sha384_12606", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12606_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12606_msg, .msglen = 20, .sig = ecdsa_secp384r1_sha384_12606_sig, .siglen = 96, .result = 1, .comment = "pseudorandom signature, tcId is 276 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12607 for ECDSA, tcId is 277 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12607_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_12607_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp521r1_sha512_12607_sig[] = { 0x01, 0x41, 0x41, 0xe4, 0xd9, 0x4a, 0x58, 0xc1, 0xe7, 0x47, 0xcb, 0xd9, 0xee, 0x66, 0x70, 0xa4, 0x1e, 0xac, 0x3c, 0x26, 0xfb, 0x4d, 0xb3, 0x24, 0x8e, 0x45, 0xd5, 0x83, 0x17, 0x90, 0x76, 0xe6, 0xb1, 0x9a, 0x8e, 0x20, 0x03, 0x65, 0x7a, 0x10, 0x8f, 0x91, 0xf9, 0xa1, 0x03, 0x15, 0x7e, 0xdf, 0xf9, 0xb3, 0x7d, 0xf2, 0xb4, 0x36, 0xa7, 0x7d, 0xc1, 0x12, 0x92, 0x7d, 0x90, 0x7a, 0xc9, 0xba, 0x25, 0x87, 0x01, 0x08, 0xaf, 0xa9, 0x1b, 0x34, 0xbd, 0x90, 0x4c, 0x68, 0x04, 0x71, 0xe9, 0x43, 0xaf, 0x33, 0x6f, 0xb9, 0x0c, 0x5f, 0xb2, 0xb9, 0x14, 0x01, 0xa5, 0x8c, 0x9b, 0x1f, 0x46, 0x7b, 0xf8, 0x1a, 0xf8, 0x04, 0x99, 0x65, 0xdd, 0x8b, 0x45, 0xf1, 0x2e, 0x15, 0x2f, 0x4f, 0x7f, 0xd3, 0x78, 0x0e, 0x34, 0x92, 0xf3, 0x1e, 0xd2, 0x68, 0x0d, 0x47, 0x77, 0xfb, 0xe6, 0x55, 0xfe, 0x77, 0x9a, 0xd8, 0x97, 0xab, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12607 = { .name = "ecdsa_secp521r1_sha512_12607", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12607_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12607_msg, .msglen = 6, .sig = ecdsa_secp521r1_sha512_12607_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 277 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12608 for ECDSA, tcId is 278 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12608_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_12608_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp521r1_sha512_12608_sig[] = { 0x01, 0xb2, 0x57, 0xe4, 0x6f, 0x4a, 0x9f, 0xcb, 0xa0, 0x30, 0x12, 0xfb, 0xee, 0xa4, 0xcd, 0x3b, 0xb2, 0xe2, 0x0f, 0xd7, 0xdd, 0x4e, 0x1c, 0xed, 0x70, 0x84, 0x05, 0x33, 0x0a, 0x87, 0x59, 0x74, 0x07, 0xa5, 0x87, 0x08, 0x61, 0xe7, 0x1c, 0x3a, 0x15, 0x7c, 0x02, 0x1e, 0xb4, 0xbe, 0xb9, 0x88, 0x1f, 0xce, 0x9c, 0x3f, 0x45, 0x8f, 0x3c, 0xd9, 0xdb, 0xd9, 0x4e, 0x42, 0x2c, 0xf0, 0x7a, 0x75, 0x01, 0x2e, 0x01, 0xb5, 0x5f, 0x01, 0xbd, 0x17, 0xe5, 0xa6, 0xad, 0x7d, 0x28, 0xbf, 0xbf, 0x75, 0x60, 0xde, 0x54, 0x8f, 0x96, 0xca, 0x52, 0x68, 0x3d, 0x12, 0xec, 0x6b, 0xa3, 0x47, 0xe6, 0xf3, 0xc1, 0xc4, 0xc3, 0xb6, 0x46, 0x3c, 0x73, 0xbd, 0x26, 0x39, 0x01, 0x4d, 0xe5, 0xdb, 0x14, 0x43, 0xf1, 0x81, 0xd6, 0x20, 0xd4, 0x2e, 0x6f, 0x69, 0xb5, 0x60, 0xf3, 0x77, 0x32, 0xaf, 0x83, 0xa6, 0xa2, 0xef, 0x21, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12608 = { .name = "ecdsa_secp521r1_sha512_12608", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12608_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12608_msg, .msglen = 4, .sig = ecdsa_secp521r1_sha512_12608_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 278 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12609 for ECDSA, tcId is 279 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12609_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_12609_sig[] = { 0x01, 0x62, 0x5d, 0x61, 0x15, 0x09, 0x2a, 0x8e, 0x2e, 0xe2, 0x1b, 0x9f, 0x8a, 0x42, 0x5a, 0xa7, 0x38, 0x14, 0xde, 0xc8, 0xb2, 0x33, 0x5e, 0x86, 0x15, 0x0a, 0xb4, 0x22, 0x9f, 0x5a, 0x34, 0x21, 0xd2, 0xe6, 0x25, 0x6d, 0x63, 0x2c, 0x7a, 0x43, 0x65, 0xa1, 0xee, 0x01, 0xdd, 0x2a, 0x93, 0x69, 0x21, 0xbb, 0xb4, 0x55, 0x1a, 0x51, 0x2d, 0x1d, 0x4b, 0x5a, 0x56, 0xc3, 0x14, 0xe4, 0xa0, 0x25, 0x34, 0xc5, 0x01, 0xb7, 0x92, 0xd2, 0x3f, 0x26, 0x49, 0x86, 0x25, 0x95, 0x45, 0x10, 0x55, 0x77, 0x7b, 0xda, 0x1b, 0x02, 0xdc, 0x6c, 0xc8, 0xfe, 0xf2, 0x32, 0x31, 0xe4, 0x4b, 0x92, 0x1b, 0x16, 0x15, 0x5c, 0xd4, 0x22, 0x57, 0x44, 0x1d, 0x75, 0xa7, 0x90, 0x37, 0x1e, 0x91, 0x81, 0x9f, 0x0a, 0x9b, 0x1f, 0xd0, 0xeb, 0xd0, 0x2c, 0x90, 0xb5, 0xb7, 0x74, 0x52, 0x77, 0x46, 0xed, 0x9b, 0xfe, 0x74, 0x3d, 0xbe, 0x2f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12609 = { .name = "ecdsa_secp521r1_sha512_12609", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12609_pubkey, .pubkeylen = 132, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp521r1_sha512_12609_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 279 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12610 for ECDSA, tcId is 280 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12610_pubkey[] = { 0x01, 0x2a, 0x90, 0x8b, 0xfc, 0x5b, 0x70, 0xe1, 0x7b, 0xdf, 0xae, 0x74, 0x29, 0x49, 0x94, 0x80, 0x8b, 0xf2, 0xa4, 0x2d, 0xab, 0x59, 0xaf, 0x8b, 0x05, 0x23, 0xa0, 0x26, 0xd6, 0x40, 0xa2, 0xa3, 0xd6, 0xd3, 0x44, 0x52, 0x0b, 0x62, 0x17, 0x7e, 0x2c, 0xfa, 0x33, 0x9c, 0xa4, 0x2f, 0xb0, 0x88, 0x3e, 0xc4, 0x25, 0x90, 0x4f, 0xbd, 0xa2, 0x83, 0x3a, 0x3b, 0x5b, 0x0a, 0x9a, 0x00, 0x81, 0x13, 0x65, 0xd8, 0x01, 0x23, 0x33, 0xd5, 0x32, 0xf8, 0xf8, 0xeb, 0x1a, 0x62, 0x3c, 0x37, 0x8a, 0x36, 0x94, 0x65, 0x11, 0x92, 0xbb, 0xda, 0x83, 0x3e, 0x3b, 0x8d, 0x7b, 0x8f, 0x90, 0xb2, 0xbf, 0xc9, 0xb0, 0x45, 0xf8, 0xa5, 0x5e, 0x1b, 0x6a, 0x5f, 0xe1, 0x51, 0x2c, 0x40, 0x0c, 0x4b, 0xc9, 0xc8, 0x6f, 0xd7, 0xc6, 0x99, 0xd6, 0x42, 0xf5, 0xce, 0xe9, 0xbb, 0x82, 0x7c, 0x8b, 0x0a, 0xbc, 0x0d, 0xa0, 0x1c, 0xef, 0x1e, }; static const unsigned char ecdsa_secp521r1_sha512_12610_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp521r1_sha512_12610_sig[] = { 0x00, 0x08, 0x13, 0x5d, 0x3f, 0x1a, 0xe9, 0xe2, 0x6f, 0xba, 0x82, 0x56, 0x43, 0xed, 0x8a, 0x29, 0xd6, 0x3d, 0x78, 0x43, 0x72, 0x0e, 0x93, 0x56, 0x6a, 0xa0, 0x9d, 0xb2, 0xbd, 0xf5, 0xaa, 0xa6, 0x9a, 0xfb, 0xcc, 0x0c, 0x51, 0xe5, 0x29, 0x5c, 0x29, 0x8f, 0x30, 0x5b, 0xa7, 0xb8, 0x70, 0xf0, 0xa8, 0x5b, 0xb5, 0x69, 0x9c, 0xdf, 0x40, 0x76, 0x4a, 0xab, 0x59, 0x41, 0x8f, 0x77, 0xc6, 0xff, 0xb4, 0x52, 0x01, 0x1d, 0x34, 0x52, 0x56, 0x88, 0x7f, 0xb3, 0x51, 0xf5, 0x70, 0x09, 0x61, 0xa7, 0xd4, 0x75, 0x72, 0xe0, 0xd6, 0x69, 0x05, 0x6c, 0xb1, 0xd5, 0x61, 0x93, 0x45, 0xc0, 0xc9, 0x87, 0xf3, 0x33, 0x1c, 0x2f, 0xe2, 0xc6, 0xdf, 0x84, 0x8a, 0x5c, 0x61, 0x04, 0x22, 0xde, 0xfd, 0x62, 0x12, 0xb6, 0x43, 0x46, 0x16, 0x1a, 0xa8, 0x71, 0xae, 0x55, 0xb1, 0xfe, 0x4a, 0xdd, 0x5f, 0x68, 0x83, 0x6e, 0xb1, 0x81, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12610 = { .name = "ecdsa_secp521r1_sha512_12610", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12610_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12610_msg, .msglen = 20, .sig = ecdsa_secp521r1_sha512_12610_sig, .siglen = 132, .result = 1, .comment = "pseudorandom signature, tcId is 280 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12611 for ECDSA, tcId is 281 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12611_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_12611_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char ecdsa_secp256k1_sha256_12611_sig[] = { 0xd0, 0x35, 0xee, 0x1f, 0x17, 0xfd, 0xb0, 0xb2, 0x68, 0x1b, 0x16, 0x3e, 0x33, 0xc3, 0x59, 0x93, 0x26, 0x59, 0x99, 0x0a, 0xf7, 0x7d, 0xca, 0x63, 0x20, 0x12, 0xb3, 0x0b, 0x27, 0xa0, 0x57, 0xb3, 0x19, 0x39, 0xd9, 0xf3, 0xb2, 0x85, 0x8b, 0xc1, 0x3e, 0x34, 0x74, 0xcb, 0x50, 0xe6, 0xa8, 0x2b, 0xe4, 0x4f, 0xaa, 0x71, 0x94, 0x0f, 0x87, 0x6c, 0x1c, 0xba, 0x4c, 0x3e, 0x98, 0x92, 0x02, 0xb6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12611 = { .name = "ecdsa_secp256k1_sha256_12611", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12611_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12611_msg, .msglen = 6, .sig = ecdsa_secp256k1_sha256_12611_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 281 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12612 for ECDSA, tcId is 282 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12612_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_12612_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char ecdsa_secp256k1_sha256_12612_sig[] = { 0x24, 0x81, 0x3a, 0x5a, 0xef, 0xf4, 0x58, 0x48, 0x26, 0xa7, 0x2e, 0x3c, 0xe0, 0x30, 0xff, 0x39, 0x12, 0x4b, 0x45, 0x6c, 0x8d, 0xb1, 0x15, 0x74, 0xab, 0x44, 0xe9, 0x63, 0x4f, 0x2b, 0xe5, 0x45, 0x0c, 0x50, 0xc9, 0x14, 0xe0, 0x4b, 0xfe, 0x3c, 0x87, 0xef, 0x8d, 0xfd, 0xa3, 0x35, 0x68, 0x6f, 0xaa, 0x79, 0x95, 0x91, 0x14, 0x1c, 0x9b, 0x8d, 0xef, 0x39, 0x8c, 0x5e, 0xea, 0xe1, 0x07, 0xc5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12612 = { .name = "ecdsa_secp256k1_sha256_12612", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12612_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12612_msg, .msglen = 4, .sig = ecdsa_secp256k1_sha256_12612_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 282 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12613 for ECDSA, tcId is 283 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12613_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_12613_sig[] = { 0xf8, 0x0a, 0xe4, 0xf9, 0x6c, 0xdb, 0xc9, 0xd8, 0x53, 0xf8, 0x3d, 0x47, 0xaa, 0xe2, 0x25, 0xbf, 0x40, 0x7d, 0x51, 0xc5, 0x6b, 0x77, 0x76, 0xcd, 0x67, 0xd0, 0xdc, 0x19, 0x5d, 0x99, 0xa9, 0xdc, 0xb3, 0x03, 0xe2, 0x6b, 0xe1, 0xf7, 0x34, 0x65, 0x31, 0x52, 0x21, 0xf0, 0xb3, 0x31, 0x52, 0x88, 0x07, 0xa1, 0xa9, 0xb6, 0xeb, 0x06, 0x8e, 0xde, 0x6e, 0xeb, 0xea, 0xaa, 0x49, 0xaf, 0x8a, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12613 = { .name = "ecdsa_secp256k1_sha256_12613", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12613_pubkey, .pubkeylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .sig = ecdsa_secp256k1_sha256_12613_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 283 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12614 for ECDSA, tcId is 284 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12614_pubkey[] = { 0x78, 0x2c, 0x8e, 0xd1, 0x7e, 0x3b, 0x2a, 0x78, 0x3b, 0x54, 0x64, 0xf3, 0x3b, 0x09, 0x65, 0x2a, 0x71, 0xc6, 0x78, 0xe0, 0x5e, 0xc5, 0x1e, 0x84, 0xe2, 0xbc, 0xfc, 0x66, 0x3a, 0x3d, 0xe9, 0x63, 0xaf, 0x9a, 0xcb, 0x42, 0x80, 0xb8, 0xc7, 0xf7, 0xc4, 0x2f, 0x4e, 0xf9, 0xab, 0xa6, 0x24, 0x5e, 0xc1, 0xec, 0x17, 0x12, 0xfd, 0x38, 0xa0, 0xfa, 0x96, 0x41, 0x8d, 0x8c, 0xd6, 0xaa, 0x61, 0x52, }; static const unsigned char ecdsa_secp256k1_sha256_12614_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256k1_sha256_12614_sig[] = { 0x4f, 0x05, 0x3f, 0x56, 0x3a, 0xd3, 0x4b, 0x74, 0xfd, 0x8c, 0x99, 0x34, 0xce, 0x59, 0xe7, 0x9c, 0x2e, 0xb8, 0xe6, 0xec, 0xa0, 0xfe, 0xf5, 0xb3, 0x23, 0xca, 0x67, 0xd5, 0xac, 0x7e, 0xd2, 0x38, 0x4d, 0x4b, 0x05, 0xda, 0xa0, 0x71, 0x9e, 0x77, 0x3d, 0x86, 0x17, 0xdc, 0xe5, 0x63, 0x1c, 0x5f, 0xd6, 0xf5, 0x9c, 0x9b, 0xdc, 0x74, 0x8e, 0x4b, 0x55, 0xc9, 0x70, 0x04, 0x0a, 0xf0, 0x1b, 0xe5, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12614 = { .name = "ecdsa_secp256k1_sha256_12614", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12614_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12614_msg, .msglen = 20, .sig = ecdsa_secp256k1_sha256_12614_sig, .siglen = 64, .result = 1, .comment = "pseudorandom signature, tcId is 284 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12615 for ECDSA, tcId is 285 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp384r1_sha256_12615_pubkey[] = { 0x59, 0x93, 0x26, 0x4e, 0xe1, 0x7d, 0xdf, 0x20, 0x9a, 0xec, 0x31, 0xfe, 0x0a, 0x3c, 0x15, 0x3b, 0x5a, 0x2a, 0x84, 0x5d, 0x4f, 0xe6, 0x7f, 0xbc, 0x21, 0x8a, 0xb1, 0x39, 0x7d, 0x42, 0xdf, 0x07, 0xc9, 0xc9, 0x8b, 0x1a, 0x98, 0xd2, 0xa1, 0xd7, 0x92, 0x01, 0x4d, 0xfc, 0x77, 0xfe, 0x99, 0xbd, 0x2b, 0x83, 0xb1, 0x87, 0x85, 0xeb, 0x4e, 0xbc, 0xbe, 0x8d, 0x16, 0xec, 0xd1, 0x4f, 0x8f, 0x62, 0x50, 0x15, 0xb2, 0x68, 0x7a, 0xf2, 0xd1, 0x3d, 0x68, 0x72, 0xe5, 0x2b, 0x05, 0x5c, 0x95, 0xeb, 0x34, 0x81, 0x7a, 0x9f, 0x18, 0xfb, 0xe8, 0xfe, 0xf2, 0x35, 0x81, 0x85, 0x15, 0x24, 0x25, 0x65, }; static const unsigned char ecdsa_secp384r1_sha256_12615_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char ecdsa_secp384r1_sha256_12615_sig[] = { 0x21, 0xd1, 0x4f, 0x22, 0x55, 0x10, 0xa1, 0x0f, 0x42, 0xf0, 0x0e, 0xd5, 0x5c, 0x07, 0x71, 0x08, 0x5d, 0x5e, 0xe2, 0x2b, 0xc2, 0x42, 0x66, 0xc0, 0x33, 0x3f, 0x03, 0x19, 0x70, 0x87, 0x9d, 0x34, 0xab, 0xed, 0x5d, 0x57, 0x01, 0xe0, 0xb8, 0x6f, 0x8e, 0x14, 0xdd, 0x78, 0xfe, 0xe2, 0x43, 0x36, 0x8c, 0x63, 0x61, 0x09, 0xe1, 0x57, 0x49, 0x8a, 0x57, 0xe4, 0xb4, 0x49, 0xbd, 0xbb, 0xb1, 0xb2, 0x2e, 0xbd, 0x62, 0x15, 0x64, 0xb4, 0xda, 0xe8, 0x77, 0x6e, 0x26, 0x16, 0x04, 0x5e, 0xb1, 0x8b, 0xb6, 0xcb, 0x8e, 0x54, 0x2a, 0x05, 0x2e, 0x50, 0x36, 0x88, 0x75, 0xa7, 0x2a, 0xf2, 0xe5, 0x33, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha256_12615 = { .name = "ecdsa_secp384r1_sha256_12615", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha256_12615_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha256_12615_msg, .msglen = 5, .sig = ecdsa_secp384r1_sha256_12615_sig, .siglen = 96, .result = 0, .comment = "Hash weaker than DL-group, tcId is 285 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) */ /* Test 12616 for ECDSA, tcId is 286 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp521r1_sha384_12616_pubkey[] = { 0x01, 0x8f, 0x0d, 0x2a, 0x74, 0x2e, 0x18, 0xcb, 0x85, 0x5a, 0x34, 0x77, 0x88, 0x64, 0x61, 0xa1, 0x5a, 0xda, 0x55, 0x33, 0x10, 0x0f, 0x48, 0x8d, 0xc3, 0x9a, 0xed, 0x89, 0x6c, 0x5e, 0xa6, 0x2f, 0xa0, 0x29, 0xc5, 0xb8, 0x04, 0x54, 0xb4, 0xea, 0xba, 0xeb, 0xf2, 0x91, 0x7d, 0x76, 0x2c, 0x50, 0x53, 0xdb, 0xa1, 0x26, 0xb3, 0x9a, 0x07, 0x8c, 0x0f, 0x00, 0xb2, 0xf9, 0x36, 0xa0, 0x91, 0x84, 0xdb, 0xfe, 0x00, 0x50, 0x3c, 0xc4, 0xcc, 0xa0, 0x10, 0xbd, 0xd2, 0xaa, 0x8d, 0x85, 0xf5, 0x62, 0x5d, 0x51, 0x6f, 0x3e, 0x41, 0xd0, 0x68, 0xcf, 0xd4, 0xea, 0x41, 0x3e, 0xc4, 0xa9, 0x75, 0x10, 0x62, 0x79, 0x20, 0xc0, 0x19, 0x7e, 0xef, 0x2a, 0xd2, 0x23, 0x83, 0xc5, 0x7f, 0x2e, 0x93, 0xa5, 0xd5, 0x25, 0x52, 0x1f, 0xd8, 0x63, 0x55, 0x50, 0xfb, 0x5d, 0xd9, 0x8e, 0x3b, 0x6c, 0x73, 0x59, 0x2b, 0x24, 0xa8, 0x31, }; static const unsigned char ecdsa_secp521r1_sha384_12616_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char ecdsa_secp521r1_sha384_12616_sig[] = { 0x00, 0x70, 0x2c, 0xa9, 0xf2, 0x5a, 0x0a, 0xa8, 0x3c, 0x03, 0x76, 0x95, 0xd8, 0x98, 0x4e, 0xae, 0x6f, 0x52, 0xc1, 0x59, 0x9d, 0x52, 0x90, 0x32, 0x28, 0xfb, 0x72, 0xd4, 0x1c, 0x07, 0x32, 0x10, 0x3f, 0x33, 0x82, 0xf6, 0x23, 0x97, 0x15, 0x15, 0x3f, 0x4f, 0x4e, 0x97, 0x85, 0x32, 0x73, 0x63, 0x7b, 0x38, 0xec, 0xdc, 0x10, 0x4e, 0x4d, 0xf0, 0xae, 0xcf, 0xa3, 0xb6, 0x1f, 0x2f, 0xca, 0x31, 0xe6, 0xea, 0x00, 0x06, 0xaa, 0x60, 0xc2, 0xab, 0xf9, 0x3d, 0x5a, 0x12, 0xac, 0xbb, 0x06, 0xbf, 0x5b, 0x8a, 0x8d, 0x25, 0x5c, 0xca, 0x47, 0x81, 0xf1, 0x2f, 0x2b, 0xc4, 0xb5, 0xc9, 0xae, 0xa7, 0xe0, 0xb0, 0xde, 0x1b, 0x43, 0x21, 0x06, 0x18, 0x4a, 0x42, 0x73, 0xf2, 0x42, 0xad, 0x56, 0xcf, 0x09, 0xdd, 0xa4, 0x87, 0x30, 0x53, 0x40, 0xb1, 0xf3, 0x6c, 0x57, 0xba, 0x4d, 0x38, 0x54, 0x90, 0x32, 0xb0, 0x11, 0x6f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha384_12616 = { .name = "ecdsa_secp521r1_sha384_12616", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha384_12616_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha384_12616_msg, .msglen = 5, .sig = ecdsa_secp521r1_sha384_12616_sig, .siglen = 132, .result = 0, .comment = "Hash weaker than DL-group, tcId is 286 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA384) */ /* Test 12617 for ECDSA, tcId is 287 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp521r1_sha256_12617_pubkey[] = { 0x01, 0x8f, 0x0d, 0x2a, 0x74, 0x2e, 0x18, 0xcb, 0x85, 0x5a, 0x34, 0x77, 0x88, 0x64, 0x61, 0xa1, 0x5a, 0xda, 0x55, 0x33, 0x10, 0x0f, 0x48, 0x8d, 0xc3, 0x9a, 0xed, 0x89, 0x6c, 0x5e, 0xa6, 0x2f, 0xa0, 0x29, 0xc5, 0xb8, 0x04, 0x54, 0xb4, 0xea, 0xba, 0xeb, 0xf2, 0x91, 0x7d, 0x76, 0x2c, 0x50, 0x53, 0xdb, 0xa1, 0x26, 0xb3, 0x9a, 0x07, 0x8c, 0x0f, 0x00, 0xb2, 0xf9, 0x36, 0xa0, 0x91, 0x84, 0xdb, 0xfe, 0x00, 0x50, 0x3c, 0xc4, 0xcc, 0xa0, 0x10, 0xbd, 0xd2, 0xaa, 0x8d, 0x85, 0xf5, 0x62, 0x5d, 0x51, 0x6f, 0x3e, 0x41, 0xd0, 0x68, 0xcf, 0xd4, 0xea, 0x41, 0x3e, 0xc4, 0xa9, 0x75, 0x10, 0x62, 0x79, 0x20, 0xc0, 0x19, 0x7e, 0xef, 0x2a, 0xd2, 0x23, 0x83, 0xc5, 0x7f, 0x2e, 0x93, 0xa5, 0xd5, 0x25, 0x52, 0x1f, 0xd8, 0x63, 0x55, 0x50, 0xfb, 0x5d, 0xd9, 0x8e, 0x3b, 0x6c, 0x73, 0x59, 0x2b, 0x24, 0xa8, 0x31, }; static const unsigned char ecdsa_secp521r1_sha256_12617_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char ecdsa_secp521r1_sha256_12617_sig[] = { 0x00, 0xb8, 0x94, 0x46, 0xcf, 0x77, 0xa3, 0x72, 0xc0, 0xa7, 0x89, 0xb2, 0x07, 0xd4, 0x0d, 0x84, 0x9f, 0x19, 0xf1, 0xae, 0xf4, 0xac, 0xa8, 0x74, 0xd6, 0x2d, 0x41, 0x9b, 0x58, 0x06, 0x8d, 0x01, 0xac, 0xcb, 0x4e, 0xe6, 0xee, 0x67, 0xf2, 0x7a, 0xac, 0x7a, 0xd7, 0x42, 0xe0, 0x92, 0xed, 0x82, 0x1c, 0x9f, 0xbb, 0x83, 0xd2, 0x53, 0x74, 0xcd, 0xe0, 0x27, 0xaf, 0xdb, 0x9c, 0xec, 0x4d, 0x8c, 0x0d, 0x65, 0x01, 0x5d, 0x28, 0x10, 0x2c, 0xa7, 0xc5, 0x46, 0xfa, 0xb9, 0x88, 0xaf, 0xbd, 0x72, 0x86, 0xc4, 0x12, 0xa4, 0xbc, 0xb0, 0xe1, 0x91, 0x3e, 0xfb, 0xe0, 0x3f, 0xa0, 0x8d, 0x40, 0x97, 0x09, 0x28, 0x00, 0xbe, 0xd1, 0x7c, 0x48, 0xb7, 0xcd, 0x21, 0xce, 0x97, 0x77, 0xd1, 0x8a, 0xb4, 0x21, 0xe1, 0x1b, 0xa2, 0x78, 0x23, 0xd9, 0xf8, 0x11, 0xd2, 0x50, 0x04, 0xf8, 0xf2, 0x83, 0x94, 0x67, 0x66, 0x3f, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha256_12617 = { .name = "ecdsa_secp521r1_sha256_12617", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha256_12617_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha256_12617_msg, .msglen = 5, .sig = ecdsa_secp521r1_sha256_12617_sig, .siglen = 132, .result = 0, .comment = "Hash weaker than DL-group, tcId is 287 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) */ /* Test 12618 for ECDSA, tcId is 288 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12618_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12618_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12618_sig[] = { 0xd4, 0x34, 0xe2, 0x62, 0xa4, 0x9e, 0xab, 0x77, 0x81, 0xe3, 0x53, 0xa3, 0x56, 0x5e, 0x48, 0x25, 0x50, 0xdd, 0x0f, 0xd5, 0xde, 0xfa, 0x01, 0x3c, 0x7f, 0x29, 0x74, 0x5e, 0xff, 0x35, 0x69, 0xf1, 0x9b, 0x0c, 0x0a, 0x93, 0xf2, 0x67, 0xfb, 0x60, 0x52, 0xfd, 0x80, 0x77, 0xbe, 0x76, 0x9c, 0x2b, 0x98, 0x95, 0x31, 0x95, 0xd7, 0xbc, 0x10, 0xde, 0x84, 0x42, 0x18, 0x30, 0x5c, 0x6b, 0xa1, 0x7a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12618 = { .name = "ecdsa_secp256r1_sha256_12618", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12618_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12618_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12618_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 288 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12619 for ECDSA, tcId is 289 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12619_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12619_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12619_sig[] = { 0x0f, 0xe7, 0x74, 0x35, 0x5c, 0x04, 0xd0, 0x60, 0xf7, 0x6d, 0x79, 0xfd, 0x7a, 0x77, 0x2e, 0x42, 0x14, 0x63, 0x48, 0x92, 0x21, 0xbf, 0x0a, 0x33, 0xad, 0xd0, 0xbe, 0x9b, 0x19, 0x79, 0x11, 0x0b, 0x50, 0x0d, 0xcb, 0xa1, 0xc6, 0x9a, 0x8f, 0xbd, 0x43, 0xfa, 0x4f, 0x57, 0xf7, 0x43, 0xce, 0x12, 0x4c, 0xa8, 0xb9, 0x1a, 0x1f, 0x32, 0x5f, 0x3f, 0xac, 0x61, 0x81, 0x17, 0x5d, 0xf5, 0x57, 0x37, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12619 = { .name = "ecdsa_secp256r1_sha256_12619", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12619_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12619_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12619_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 289 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12620 for ECDSA, tcId is 290 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12620_pubkey[] = { 0x4f, 0x33, 0x7c, 0xcf, 0xd6, 0x77, 0x26, 0xa8, 0x05, 0xe4, 0xf1, 0x60, 0x0a, 0xe2, 0x84, 0x9d, 0xf3, 0x80, 0x7e, 0xca, 0x11, 0x73, 0x80, 0x23, 0x9f, 0xbd, 0x81, 0x69, 0x00, 0x00, 0x00, 0x00, 0xed, 0x9d, 0xea, 0x12, 0x4c, 0xc8, 0xc3, 0x96, 0x41, 0x64, 0x11, 0xe9, 0x88, 0xc3, 0x0f, 0x42, 0x7e, 0xb5, 0x04, 0xaf, 0x43, 0xa3, 0x14, 0x6c, 0xd5, 0xdf, 0x7e, 0xa6, 0x06, 0x66, 0xd6, 0x85, }; static const unsigned char ecdsa_secp256r1_sha256_12620_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12620_sig[] = { 0xbb, 0x40, 0xbf, 0x21, 0x7b, 0xed, 0x3f, 0xb3, 0x95, 0x0c, 0x7d, 0x39, 0xf0, 0x3d, 0x36, 0xdc, 0x8e, 0x3b, 0x2c, 0xd7, 0x96, 0x93, 0xf1, 0x25, 0xbf, 0xd0, 0x65, 0x95, 0xee, 0x11, 0x35, 0xe3, 0x54, 0x1b, 0xf3, 0x53, 0x23, 0x51, 0xeb, 0xb0, 0x32, 0x71, 0x0b, 0xdb, 0x6a, 0x1b, 0xf1, 0xbf, 0xc8, 0x9a, 0x1e, 0x29, 0x1a, 0xc6, 0x92, 0xb3, 0xfa, 0x47, 0x80, 0x74, 0x5b, 0xb5, 0x56, 0x77, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12620 = { .name = "ecdsa_secp256r1_sha256_12620", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12620_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12620_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12620_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 290 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12621 for ECDSA, tcId is 291 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12621_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12621_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12621_sig[] = { 0x66, 0x4e, 0xb7, 0xee, 0x6d, 0xb8, 0x4a, 0x34, 0xdf, 0x3c, 0x86, 0xea, 0x31, 0x38, 0x9a, 0x54, 0x05, 0xba, 0xdd, 0x5c, 0xa9, 0x92, 0x31, 0xff, 0x55, 0x6d, 0x3e, 0x75, 0xa2, 0x33, 0xe7, 0x3a, 0x59, 0xf3, 0xc7, 0x52, 0xe5, 0x2e, 0xca, 0x46, 0x13, 0x76, 0x42, 0x49, 0x0a, 0x51, 0x56, 0x0c, 0xe0, 0xba, 0xdc, 0x67, 0x87, 0x54, 0xb8, 0xf7, 0x2e, 0x51, 0xa2, 0x90, 0x14, 0x26, 0xa1, 0xbd, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12621 = { .name = "ecdsa_secp256r1_sha256_12621", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12621_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12621_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12621_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 291 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12622 for ECDSA, tcId is 292 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12622_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12622_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12622_sig[] = { 0x4c, 0xd0, 0x42, 0x9b, 0xba, 0xbd, 0x28, 0x27, 0x00, 0x9d, 0x6f, 0xcd, 0x84, 0x3d, 0x4c, 0xe3, 0x9c, 0x3e, 0x42, 0xe2, 0xd1, 0x63, 0x1f, 0xd0, 0x01, 0x98, 0x5a, 0x79, 0xd1, 0xfd, 0x8b, 0x43, 0x96, 0x38, 0xbf, 0x12, 0xdd, 0x68, 0x2f, 0x60, 0xbe, 0x7e, 0xf1, 0xd0, 0xe0, 0xd9, 0x8f, 0x08, 0xb7, 0xbc, 0xa7, 0x7a, 0x1a, 0x2b, 0x86, 0x9a, 0xe4, 0x66, 0x18, 0x9d, 0x2a, 0xcd, 0xab, 0xe3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12622 = { .name = "ecdsa_secp256r1_sha256_12622", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12622_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12622_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12622_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 292 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12623 for ECDSA, tcId is 293 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12623_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x84, 0xfa, 0x17, 0x4d, 0x79, 0x1c, 0x72, 0xbf, 0x2c, 0xe3, 0x88, 0x0a, 0x89, 0x60, 0xdd, 0x2a, 0x7c, 0x7a, 0x13, 0x38, 0xa8, 0x2f, 0x85, 0xa9, 0xe5, 0x9c, 0xdb, 0xde, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp256r1_sha256_12623_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12623_sig[] = { 0xe5, 0x6c, 0x6e, 0xa2, 0xd1, 0xb0, 0x17, 0x09, 0x1c, 0x44, 0xd8, 0xb6, 0xcb, 0x62, 0xb9, 0xf4, 0x60, 0xe3, 0xce, 0x9a, 0xed, 0x5e, 0x5f, 0xd4, 0x1e, 0x8a, 0xdd, 0xed, 0x97, 0xc5, 0x6c, 0x04, 0xa3, 0x08, 0xec, 0x31, 0xf2, 0x81, 0xe9, 0x55, 0xbe, 0x20, 0xb4, 0x57, 0xe4, 0x63, 0x44, 0x0b, 0x4f, 0xcf, 0x2b, 0x80, 0x25, 0x80, 0x78, 0x20, 0x7f, 0xc1, 0x37, 0x81, 0x80, 0xf8, 0x9b, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12623 = { .name = "ecdsa_secp256r1_sha256_12623", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12623_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12623_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12623_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 293 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12624 for ECDSA, tcId is 294 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12624_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12624_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12624_sig[] = { 0x11, 0x58, 0xa0, 0x8d, 0x29, 0x15, 0x00, 0xb4, 0xca, 0xbe, 0xd3, 0x34, 0x6d, 0x89, 0x1e, 0xee, 0x57, 0xc1, 0x76, 0x35, 0x6a, 0x26, 0x24, 0xfb, 0x01, 0x1f, 0x8f, 0xbb, 0xf3, 0x46, 0x68, 0x30, 0x22, 0x8a, 0x8c, 0x48, 0x6a, 0x73, 0x60, 0x06, 0xe0, 0x82, 0x32, 0x5b, 0x85, 0x29, 0x0c, 0x5b, 0xc9, 0x1f, 0x37, 0x8b, 0x75, 0xd4, 0x87, 0xdd, 0xa4, 0x67, 0x98, 0xc1, 0x8f, 0x28, 0x55, 0x19, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12624 = { .name = "ecdsa_secp256r1_sha256_12624", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12624_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12624_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12624_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 294 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12625 for ECDSA, tcId is 295 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12625_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12625_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12625_sig[] = { 0xb1, 0xdb, 0x92, 0x89, 0x64, 0x9f, 0x59, 0x41, 0x0e, 0xa3, 0x6b, 0x0c, 0x0f, 0xc8, 0xd6, 0xaa, 0x26, 0x87, 0xb2, 0x91, 0x76, 0x93, 0x9d, 0xd2, 0x3e, 0x0d, 0xde, 0x56, 0xd3, 0x09, 0xfa, 0x9d, 0x3e, 0x15, 0x35, 0xe4, 0x28, 0x05, 0x59, 0x01, 0x5b, 0x0d, 0xbd, 0x98, 0x73, 0x66, 0xdc, 0xf4, 0x3a, 0x6d, 0x1a, 0xf5, 0xc2, 0x3c, 0x7d, 0x58, 0x4e, 0x1c, 0x3f, 0x48, 0xa1, 0x25, 0x13, 0x36, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12625 = { .name = "ecdsa_secp256r1_sha256_12625", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12625_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12625_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12625_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 295 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12626 for ECDSA, tcId is 296 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12626_pubkey[] = { 0x3c, 0xf0, 0x3d, 0x61, 0x4d, 0x89, 0x39, 0xcf, 0xd4, 0x99, 0xa0, 0x78, 0x73, 0xfa, 0xc2, 0x81, 0x61, 0x8f, 0x06, 0xb8, 0xff, 0x87, 0xe8, 0x01, 0x5c, 0x3f, 0x49, 0x72, 0x65, 0x00, 0x49, 0x35, 0x7b, 0x05, 0xe8, 0xb1, 0x86, 0xe3, 0x8d, 0x41, 0xd3, 0x1c, 0x77, 0xf5, 0x76, 0x9f, 0x22, 0xd5, 0x83, 0x85, 0xec, 0xc8, 0x57, 0xd0, 0x7a, 0x56, 0x1a, 0x63, 0x24, 0x21, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256r1_sha256_12626_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12626_sig[] = { 0xb7, 0xb1, 0x6e, 0x76, 0x22, 0x86, 0xcb, 0x96, 0x44, 0x6a, 0xa8, 0xd4, 0xe6, 0xe7, 0x57, 0x8b, 0x0a, 0x34, 0x1a, 0x79, 0xf2, 0xdd, 0x1a, 0x22, 0x0a, 0xc6, 0xf0, 0xca, 0x4e, 0x24, 0xed, 0x86, 0xdd, 0xc6, 0x0a, 0x70, 0x0a, 0x13, 0x9b, 0x04, 0x66, 0x1c, 0x54, 0x7d, 0x07, 0xbb, 0xb0, 0x72, 0x17, 0x80, 0x14, 0x6d, 0xf7, 0x99, 0xcc, 0xf5, 0x5e, 0x55, 0x23, 0x4e, 0xcb, 0x8f, 0x12, 0xbc, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12626 = { .name = "ecdsa_secp256r1_sha256_12626", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12626_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12626_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12626_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 296 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12627 for ECDSA, tcId is 297 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12627_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12627_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12627_sig[] = { 0xd8, 0x2a, 0x7c, 0x27, 0x17, 0x26, 0x11, 0x87, 0xc8, 0xe0, 0x0d, 0x8d, 0xf9, 0x63, 0xff, 0x35, 0xd7, 0x96, 0xed, 0xad, 0x36, 0xbc, 0x6e, 0x6b, 0xd1, 0xc9, 0x1c, 0x67, 0x0d, 0x91, 0x05, 0xb4, 0x3d, 0xca, 0xbd, 0xda, 0xf8, 0xfc, 0xaa, 0x61, 0xf4, 0x60, 0x3e, 0x7c, 0xba, 0xc0, 0xf3, 0xc0, 0x35, 0x1e, 0xcd, 0x59, 0x88, 0xef, 0xb2, 0x3f, 0x68, 0x0d, 0x07, 0xde, 0xbd, 0x13, 0x99, 0x29, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12627 = { .name = "ecdsa_secp256r1_sha256_12627", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12627_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12627_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12627_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 297 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12628 for ECDSA, tcId is 298 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12628_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12628_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12628_sig[] = { 0x5e, 0xb9, 0xc8, 0x84, 0x5d, 0xe6, 0x8e, 0xb1, 0x3d, 0x5b, 0xef, 0xe7, 0x19, 0xf4, 0x62, 0xd7, 0x77, 0x87, 0x80, 0x2b, 0xaf, 0xf3, 0x0c, 0xe9, 0x6a, 0x5c, 0xba, 0x06, 0x32, 0x54, 0xaf, 0x78, 0x2c, 0x02, 0x6a, 0xe9, 0xbe, 0x2e, 0x2a, 0x5e, 0x7c, 0xa0, 0xff, 0x9b, 0xbd, 0x92, 0xfb, 0x6e, 0x44, 0x97, 0x21, 0x86, 0x22, 0x8e, 0xe9, 0xa6, 0x2b, 0x87, 0xdd, 0xbe, 0x2e, 0xf6, 0x6f, 0xb5, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12628 = { .name = "ecdsa_secp256r1_sha256_12628", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12628_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12628_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12628_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 298 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12629 for ECDSA, tcId is 299 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12629_pubkey[] = { 0x28, 0x29, 0xc3, 0x1f, 0xaa, 0x2e, 0x40, 0x0e, 0x34, 0x4e, 0xd9, 0x4b, 0xca, 0x3f, 0xcd, 0x05, 0x45, 0x95, 0x6e, 0xbc, 0xfe, 0x8a, 0xd0, 0xf6, 0xdf, 0xa5, 0xff, 0x8e, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x1a, 0xaf, 0xaf, 0x00, 0x0e, 0x52, 0x58, 0x58, 0x55, 0xaf, 0xa7, 0x67, 0x6a, 0xde, 0x28, 0x41, 0x13, 0x09, 0x90, 0x52, 0xdf, 0x57, 0xe7, 0xeb, 0x3b, 0xd3, 0x7e, 0xbe, 0xb9, 0x22, 0x2e, }; static const unsigned char ecdsa_secp256r1_sha256_12629_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12629_sig[] = { 0x96, 0x84, 0x3d, 0xd0, 0x3c, 0x22, 0xab, 0xd2, 0xf3, 0xb7, 0x82, 0xb1, 0x70, 0x23, 0x9f, 0x90, 0xf2, 0x77, 0x92, 0x1b, 0xec, 0xc1, 0x17, 0xd0, 0x40, 0x4a, 0x8e, 0x4e, 0x36, 0x23, 0x0c, 0x28, 0xf2, 0xbe, 0x37, 0x8f, 0x52, 0x6f, 0x74, 0xa5, 0x43, 0xf6, 0x71, 0x65, 0x97, 0x6d, 0xe9, 0xed, 0x9a, 0x31, 0x21, 0x4e, 0xb4, 0xd7, 0xe6, 0xdb, 0x19, 0xe1, 0xed, 0xe1, 0x23, 0xdd, 0x99, 0x1d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12629 = { .name = "ecdsa_secp256r1_sha256_12629", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12629_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12629_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12629_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 299 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12630 for ECDSA, tcId is 300 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12630_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12630_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12630_sig[] = { 0x76, 0x64, 0x56, 0xdc, 0xe1, 0x85, 0x7c, 0x90, 0x6f, 0x99, 0x96, 0xaf, 0x72, 0x93, 0x39, 0x46, 0x4d, 0x27, 0xe9, 0xd9, 0x8e, 0xdc, 0x2d, 0x0e, 0x3b, 0x76, 0x02, 0x97, 0x06, 0x74, 0x21, 0xf6, 0x40, 0x23, 0x85, 0xec, 0xad, 0xae, 0x0d, 0x80, 0x81, 0xdc, 0xca, 0xf5, 0xd1, 0x90, 0x37, 0xec, 0x4e, 0x55, 0x37, 0x6e, 0xce, 0xd6, 0x99, 0xe9, 0x36, 0x46, 0xbf, 0xbb, 0xf1, 0x9d, 0x0b, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12630 = { .name = "ecdsa_secp256r1_sha256_12630", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12630_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12630_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12630_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 300 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12631 for ECDSA, tcId is 301 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12631_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12631_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12631_sig[] = { 0xc6, 0x05, 0xc4, 0xb2, 0xed, 0xea, 0xb2, 0x04, 0x19, 0xe6, 0x51, 0x8a, 0x11, 0xb2, 0xdb, 0xc2, 0xb9, 0x7e, 0xd8, 0xb0, 0x7c, 0xce, 0xd0, 0xb1, 0x9c, 0x34, 0xf7, 0x77, 0xde, 0x7b, 0x9f, 0xd9, 0xed, 0xf0, 0xf6, 0x12, 0xc5, 0xf4, 0x6e, 0x03, 0xc7, 0x19, 0x64, 0x7b, 0xc8, 0xaf, 0x1b, 0x29, 0xb2, 0xcd, 0xe2, 0xed, 0xa7, 0x00, 0xfb, 0x1c, 0xff, 0x5e, 0x15, 0x9d, 0x47, 0x32, 0x6d, 0xba, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12631 = { .name = "ecdsa_secp256r1_sha256_12631", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12631_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12631_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12631_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 301 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12632 for ECDSA, tcId is 302 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12632_pubkey[] = { 0xff, 0xff, 0xff, 0xf9, 0x48, 0x08, 0x1e, 0x6a, 0x04, 0x58, 0xdd, 0x8f, 0x9e, 0x73, 0x8f, 0x26, 0x65, 0xff, 0x90, 0x59, 0xad, 0x6a, 0xac, 0x07, 0x08, 0x31, 0x8c, 0x4c, 0xa9, 0xa7, 0xa4, 0xf5, 0x5a, 0x8a, 0xbc, 0xba, 0x2d, 0xda, 0x84, 0x74, 0x31, 0x1e, 0xe5, 0x41, 0x49, 0xb9, 0x73, 0xca, 0xe0, 0xc0, 0xfb, 0x89, 0x55, 0x7a, 0xd0, 0xbf, 0x78, 0xe6, 0x52, 0x9a, 0x16, 0x63, 0xbd, 0x73, }; static const unsigned char ecdsa_secp256r1_sha256_12632_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12632_sig[] = { 0xd4, 0x8b, 0x68, 0xe6, 0xca, 0xbf, 0xe0, 0x3c, 0xf6, 0x14, 0x1c, 0x9a, 0xc5, 0x41, 0x41, 0xf2, 0x10, 0xe6, 0x44, 0x85, 0xd9, 0x92, 0x9a, 0xd7, 0xb7, 0x32, 0xbf, 0xe3, 0xb7, 0xeb, 0x8a, 0x84, 0xfe, 0xed, 0xae, 0x50, 0xc6, 0x1b, 0xd0, 0x0e, 0x19, 0xdc, 0x26, 0xf9, 0xb7, 0xe2, 0x26, 0x5e, 0x45, 0x08, 0xc3, 0x89, 0x10, 0x9a, 0xd2, 0xf2, 0x08, 0xf0, 0x77, 0x23, 0x15, 0xb6, 0xc9, 0x41, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12632 = { .name = "ecdsa_secp256r1_sha256_12632", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12632_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12632_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12632_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 302 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12633 for ECDSA, tcId is 303 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12633_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12633_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12633_sig[] = { 0xb7, 0xc8, 0x14, 0x57, 0xd4, 0xae, 0xb6, 0xaa, 0x65, 0x95, 0x70, 0x98, 0x56, 0x9f, 0x04, 0x79, 0x71, 0x0a, 0xd7, 0xf6, 0x59, 0x5d, 0x58, 0x74, 0xc3, 0x5a, 0x93, 0xd1, 0x2a, 0x5d, 0xd4, 0xc7, 0xb7, 0x96, 0x1a, 0x0b, 0x65, 0x28, 0x78, 0xc2, 0xd5, 0x68, 0x06, 0x9a, 0x43, 0x2c, 0xa1, 0x8a, 0x1a, 0x91, 0x99, 0xf2, 0xca, 0x57, 0x4d, 0xad, 0x4b, 0x9e, 0x3a, 0x05, 0xc0, 0xa1, 0xcd, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12633 = { .name = "ecdsa_secp256r1_sha256_12633", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12633_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12633_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12633_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 303 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12634 for ECDSA, tcId is 304 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12634_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12634_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12634_sig[] = { 0x6b, 0x01, 0x33, 0x2d, 0xdb, 0x6e, 0xdf, 0xa9, 0xa3, 0x0a, 0x13, 0x21, 0xd5, 0x85, 0x8e, 0x1e, 0xe3, 0xcf, 0x97, 0xe2, 0x63, 0xe6, 0x69, 0xf8, 0xde, 0x5e, 0x96, 0x52, 0xe7, 0x6f, 0xf3, 0xf7, 0x59, 0x39, 0x54, 0x5f, 0xce, 0xd4, 0x57, 0x30, 0x9a, 0x6a, 0x04, 0xac, 0xe2, 0xbd, 0x0f, 0x70, 0x13, 0x9c, 0x8f, 0x7d, 0x86, 0xb0, 0x2c, 0xb1, 0xcc, 0x58, 0xf9, 0xe6, 0x9e, 0x96, 0xcd, 0x5a, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12634 = { .name = "ecdsa_secp256r1_sha256_12634", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12634_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12634_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12634_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 304 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12635 for ECDSA, tcId is 305 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12635_pubkey[] = { 0x00, 0x00, 0x00, 0x03, 0xfa, 0x15, 0xf9, 0x63, 0x94, 0x9d, 0x5f, 0x03, 0xa6, 0xf5, 0xc7, 0xf8, 0x6f, 0x9e, 0x00, 0x15, 0xee, 0xb2, 0x3a, 0xeb, 0xbf, 0xf1, 0x17, 0x39, 0x37, 0xba, 0x74, 0x8e, 0x10, 0x99, 0x87, 0x20, 0x70, 0xe8, 0xe8, 0x7c, 0x55, 0x5f, 0xa1, 0x36, 0x59, 0xcc, 0xa5, 0xd7, 0xfa, 0xdc, 0xfc, 0xb0, 0x02, 0x3e, 0xa8, 0x89, 0x54, 0x8c, 0xa4, 0x8a, 0xf2, 0xba, 0x7e, 0x71, }; static const unsigned char ecdsa_secp256r1_sha256_12635_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12635_sig[] = { 0xef, 0xdb, 0x88, 0x47, 0x20, 0xea, 0xea, 0xdc, 0x34, 0x9f, 0x9f, 0xc3, 0x56, 0xb6, 0xc0, 0x34, 0x41, 0x01, 0xcd, 0x2f, 0xd8, 0x43, 0x6b, 0x7d, 0x0e, 0x6a, 0x4f, 0xb9, 0x3f, 0x10, 0x63, 0x61, 0xf2, 0x4b, 0xee, 0x6a, 0xd5, 0xdc, 0x05, 0xf7, 0x61, 0x39, 0x75, 0x47, 0x3a, 0xad, 0xf3, 0xaa, 0xcb, 0xa9, 0xe7, 0x7d, 0xe7, 0xd6, 0x9b, 0x6c, 0xe4, 0x8c, 0xb6, 0x0d, 0x81, 0x13, 0x38, 0x5d, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12635 = { .name = "ecdsa_secp256r1_sha256_12635", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12635_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12635_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12635_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 305 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12636 for ECDSA, tcId is 306 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12636_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12636_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12636_sig[] = { 0x31, 0x23, 0x04, 0x28, 0x40, 0x55, 0x60, 0xdc, 0xb8, 0x8f, 0xb5, 0xa6, 0x46, 0x83, 0x6a, 0xea, 0x9b, 0x23, 0xa2, 0x3d, 0xd9, 0x73, 0xdc, 0xbe, 0x80, 0x14, 0xc8, 0x7b, 0x8b, 0x20, 0xeb, 0x07, 0x0f, 0x93, 0x44, 0xd6, 0xe8, 0x12, 0xce, 0x16, 0x66, 0x46, 0x74, 0x76, 0x94, 0xa4, 0x1b, 0x0a, 0xaf, 0x97, 0x37, 0x4e, 0x19, 0xf3, 0xc5, 0xfb, 0x8b, 0xd7, 0xae, 0x3d, 0x9b, 0xd0, 0xbe, 0xff, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12636 = { .name = "ecdsa_secp256r1_sha256_12636", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12636_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12636_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12636_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 306 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12637 for ECDSA, tcId is 307 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12637_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12637_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12637_sig[] = { 0xca, 0xa7, 0x97, 0xda, 0x65, 0xb3, 0x20, 0xab, 0x0d, 0x5c, 0x47, 0x0c, 0xda, 0x0b, 0x36, 0xb2, 0x94, 0x35, 0x9c, 0x7d, 0xb9, 0x84, 0x1d, 0x67, 0x91, 0x74, 0xdb, 0x34, 0xc4, 0x85, 0x57, 0x43, 0xcf, 0x54, 0x3a, 0x62, 0xf2, 0x3e, 0x21, 0x27, 0x45, 0x39, 0x1a, 0xaf, 0x75, 0x05, 0xf3, 0x45, 0x12, 0x3d, 0x26, 0x85, 0xee, 0x3b, 0x94, 0x1d, 0x3d, 0xe6, 0xd9, 0xb3, 0x62, 0x42, 0xe5, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12637 = { .name = "ecdsa_secp256r1_sha256_12637", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12637_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12637_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12637_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 307 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12638 for ECDSA, tcId is 308 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12638_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0x00, 0x00, 0x00, 0x00, 0x13, 0x52, 0xbb, 0x4a, 0x0f, 0xa2, 0xea, 0x4c, 0xce, 0xb9, 0xab, 0x63, 0xdd, 0x68, 0x4a, 0xde, 0x5a, 0x11, 0x27, 0xbc, 0xf3, 0x00, 0xa6, 0x98, 0xa7, 0x19, 0x3b, 0xc2, }; static const unsigned char ecdsa_secp256r1_sha256_12638_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12638_sig[] = { 0x7e, 0x5f, 0x0a, 0xb5, 0xd9, 0x00, 0xd3, 0xd3, 0xd7, 0x86, 0x76, 0x57, 0xe5, 0xd6, 0xd3, 0x65, 0x19, 0xbc, 0x54, 0x08, 0x45, 0x36, 0xe7, 0xd2, 0x1c, 0x33, 0x6e, 0xd8, 0x00, 0x18, 0x59, 0x45, 0x94, 0x50, 0xc0, 0x7f, 0x20, 0x1f, 0xae, 0xc9, 0x4b, 0x82, 0xdf, 0xb3, 0x22, 0xe5, 0xac, 0x67, 0x66, 0x88, 0x29, 0x4a, 0xad, 0x35, 0xaa, 0x72, 0xe7, 0x27, 0xff, 0x0b, 0x19, 0xb6, 0x46, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12638 = { .name = "ecdsa_secp256r1_sha256_12638", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12638_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12638_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12638_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 308 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12639 for ECDSA, tcId is 309 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12639_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12639_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12639_sig[] = { 0xd7, 0xd7, 0x0c, 0x58, 0x1a, 0xe9, 0xe3, 0xf6, 0x6d, 0xc6, 0xa4, 0x80, 0xbf, 0x03, 0x7a, 0xe2, 0x3f, 0x8a, 0x1e, 0x4a, 0x21, 0x36, 0xfe, 0x4b, 0x03, 0xaa, 0x69, 0xf0, 0xca, 0x25, 0xb3, 0x56, 0x89, 0xc4, 0x60, 0xf8, 0xa5, 0xa5, 0xc2, 0xbb, 0xba, 0x96, 0x2c, 0x8a, 0x3e, 0xe8, 0x33, 0xa4, 0x13, 0xe8, 0x56, 0x58, 0xe6, 0x2a, 0x59, 0xe2, 0xaf, 0x41, 0xd9, 0x12, 0x7c, 0xc4, 0x72, 0x24, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12639 = { .name = "ecdsa_secp256r1_sha256_12639", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12639_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12639_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12639_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 309 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12640 for ECDSA, tcId is 310 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12640_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12640_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12640_sig[] = { 0x34, 0x1c, 0x1b, 0x9f, 0xf3, 0xc8, 0x3d, 0xd5, 0xe0, 0xdf, 0xa0, 0xbf, 0x68, 0xbc, 0xdf, 0x4b, 0xb7, 0xaa, 0x20, 0xc6, 0x25, 0x97, 0x5e, 0x5e, 0xee, 0xe3, 0x4b, 0xb3, 0x96, 0x26, 0x6b, 0x34, 0x72, 0xb6, 0x9f, 0x06, 0x1b, 0x75, 0x0f, 0xd5, 0x12, 0x1b, 0x22, 0xb1, 0x13, 0x66, 0xfa, 0xd5, 0x49, 0xc6, 0x34, 0xe7, 0x77, 0x65, 0xa0, 0x17, 0x90, 0x2a, 0x67, 0x09, 0x9e, 0x0a, 0x44, 0x69, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12640 = { .name = "ecdsa_secp256r1_sha256_12640", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12640_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12640_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12640_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 310 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12641 for ECDSA, tcId is 311 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256r1_sha256_12641_pubkey[] = { 0xbc, 0xbb, 0x29, 0x14, 0xc7, 0x9f, 0x04, 0x5e, 0xaa, 0x6e, 0xcb, 0xbc, 0x61, 0x28, 0x16, 0xb3, 0xbe, 0x5d, 0x2d, 0x67, 0x96, 0x70, 0x7d, 0x81, 0x25, 0xe9, 0xf8, 0x51, 0xc1, 0x8a, 0xf0, 0x15, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xad, 0x44, 0xb6, 0xf0, 0x5d, 0x15, 0xb3, 0x31, 0x46, 0x54, 0x9c, 0x22, 0x97, 0xb5, 0x22, 0xa5, 0xee, 0xd8, 0x43, 0x0c, 0xff, 0x59, 0x67, 0x58, 0xe6, 0xc4, 0x3d, }; static const unsigned char ecdsa_secp256r1_sha256_12641_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256r1_sha256_12641_sig[] = { 0x70, 0xbe, 0xbe, 0x68, 0x4c, 0xdc, 0xb5, 0xca, 0x72, 0xa4, 0x2f, 0x0d, 0x87, 0x38, 0x79, 0x35, 0x9b, 0xd1, 0x78, 0x1a, 0x59, 0x18, 0x09, 0x94, 0x76, 0x28, 0xd3, 0x13, 0xa3, 0x81, 0x4f, 0x67, 0xae, 0xc0, 0x3a, 0xca, 0x8f, 0x55, 0x87, 0xa4, 0xd5, 0x35, 0xfa, 0x31, 0x02, 0x7b, 0xbe, 0x9c, 0xc0, 0xe4, 0x64, 0xb1, 0xc3, 0x57, 0x7f, 0x4c, 0x2d, 0xcd, 0xe6, 0xb2, 0x09, 0x47, 0x98, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp256r1_sha256_12641 = { .name = "ecdsa_secp256r1_sha256_12641", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256r1_str_params, .pubkey = ecdsa_secp256r1_sha256_12641_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256r1_sha256_12641_msg, .msglen = 7, .sig = ecdsa_secp256r1_sha256_12641_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 311 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) */ /* Test 12642 for ECDSA, tcId is 312 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12642_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12642_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12642_sig[] = { 0x6d, 0x6a, 0x4f, 0x55, 0x6c, 0xcc, 0xe1, 0x54, 0xe7, 0xfb, 0x9f, 0x19, 0xe7, 0x6c, 0x3d, 0xec, 0xa1, 0x3d, 0x59, 0xcc, 0x2a, 0xeb, 0x4e, 0xca, 0xd9, 0x68, 0xaa, 0xb2, 0xde, 0xd4, 0x59, 0x65, 0x53, 0xb9, 0xfa, 0x74, 0x80, 0x3e, 0xde, 0x0f, 0xc4, 0x44, 0x1b, 0xf6, 0x83, 0xd5, 0x6c, 0x56, 0x4d, 0x3e, 0x27, 0x4e, 0x09, 0xcc, 0xf4, 0x73, 0x90, 0xba, 0xdd, 0x14, 0x71, 0xc0, 0x5f, 0xb7, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12642 = { .name = "ecdsa_secp256k1_sha256_12642", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12642_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12642_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12642_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 312 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12643 for ECDSA, tcId is 313 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12643_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12643_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12643_sig[] = { 0xaa, 0xd5, 0x03, 0xde, 0x9b, 0x9f, 0xd6, 0x6b, 0x94, 0x8e, 0x9a, 0xcf, 0x59, 0x6f, 0x0a, 0x0e, 0x65, 0xe7, 0x00, 0xb2, 0x8b, 0x26, 0xec, 0x56, 0xe6, 0xe4, 0x5e, 0x84, 0x64, 0x89, 0xb3, 0xc4, 0xff, 0xf2, 0x23, 0xc5, 0xd0, 0x76, 0x54, 0x47, 0xe8, 0x44, 0x7a, 0x3f, 0x9d, 0x31, 0xfd, 0x06, 0x96, 0xe8, 0x9d, 0x24, 0x44, 0x22, 0x02, 0x2f, 0xf6, 0x1a, 0x11, 0x0b, 0x2a, 0x8c, 0x2f, 0x04, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12643 = { .name = "ecdsa_secp256k1_sha256_12643", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12643_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12643_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12643_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 313 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12644 for ECDSA, tcId is 314 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12644_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x92, 0xd5, 0xa5, 0x67, 0x3e, 0x0f, 0x25, 0xd8, 0xd5, 0x0f, 0xb7, 0xe5, 0x8c, 0x49, 0xd8, 0x6d, 0x46, 0xd4, 0x21, 0x69, 0x55, 0xe0, 0xaa, 0x3d, 0x40, 0xe1, }; static const unsigned char ecdsa_secp256k1_sha256_12644_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12644_sig[] = { 0x91, 0x82, 0xce, 0xbd, 0x3b, 0xb8, 0xab, 0x57, 0x2e, 0x16, 0x71, 0x74, 0x39, 0x72, 0x09, 0xef, 0x4b, 0x1d, 0x43, 0x9a, 0xf3, 0xb2, 0x00, 0xcd, 0xf0, 0x03, 0x62, 0x00, 0x89, 0xe4, 0x32, 0x25, 0xab, 0xb8, 0x83, 0x67, 0xd1, 0x5f, 0xe6, 0x2d, 0x1e, 0xff, 0xfb, 0x68, 0x03, 0xda, 0x03, 0x10, 0x9e, 0xe2, 0x2e, 0x90, 0xbc, 0x9c, 0x78, 0xe8, 0xb4, 0xed, 0x23, 0x63, 0x0b, 0x82, 0xea, 0x9d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12644 = { .name = "ecdsa_secp256k1_sha256_12644", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12644_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12644_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12644_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 314 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12645 for ECDSA, tcId is 315 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12645_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12645_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12645_sig[] = { 0x38, 0x54, 0xa3, 0x99, 0x8a, 0xeb, 0xdf, 0x2d, 0xbc, 0x28, 0xad, 0xac, 0x41, 0x81, 0x46, 0x2c, 0xca, 0xc7, 0x87, 0x39, 0x07, 0xab, 0x7f, 0x21, 0x2c, 0x42, 0xdb, 0x0e, 0x69, 0xb5, 0x6e, 0xd8, 0xc1, 0x2c, 0x09, 0x47, 0x5c, 0x77, 0x2f, 0xd0, 0xc1, 0xb2, 0x06, 0x0d, 0x51, 0x63, 0xe4, 0x2b, 0xf7, 0x1d, 0x72, 0x7e, 0x4a, 0xe7, 0xc0, 0x3e, 0xeb, 0xa9, 0x54, 0xbf, 0x50, 0xb4, 0x3b, 0xb3, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12645 = { .name = "ecdsa_secp256k1_sha256_12645", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12645_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12645_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12645_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 315 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12646 for ECDSA, tcId is 316 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12646_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12646_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12646_sig[] = { 0xe9, 0x4d, 0xbd, 0xc3, 0x87, 0x95, 0xfe, 0x5c, 0x90, 0x4d, 0x8f, 0x16, 0xd9, 0x69, 0xd3, 0xb5, 0x87, 0xf0, 0xa2, 0x5d, 0x2d, 0xe9, 0x0b, 0x6d, 0x8c, 0x5c, 0x53, 0xff, 0x88, 0x7e, 0x36, 0x07, 0x85, 0x6b, 0x8c, 0x96, 0x3e, 0x9b, 0x68, 0xda, 0xde, 0x44, 0x75, 0x0b, 0xf9, 0x7e, 0xc4, 0xd1, 0x1b, 0x1a, 0x0a, 0x38, 0x04, 0xf4, 0xcb, 0x79, 0xaa, 0x27, 0xbd, 0xea, 0x78, 0xac, 0x14, 0xe4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12646 = { .name = "ecdsa_secp256k1_sha256_12646", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12646_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12646_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12646_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 316 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12647 for ECDSA, tcId is 317 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12647_pubkey[] = { 0x6e, 0x82, 0x35, 0x55, 0x45, 0x29, 0x14, 0x09, 0x91, 0x82, 0xc6, 0xb2, 0xc1, 0xd6, 0xf0, 0xb5, 0xd2, 0x8d, 0x50, 0xcc, 0xd0, 0x05, 0xaf, 0x2c, 0xe1, 0xbb, 0xa5, 0x41, 0xaa, 0x40, 0xca, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0xfb, 0x6d, 0x2a, 0x5a, 0x98, 0xc1, 0xf0, 0xda, 0x27, 0x2a, 0xf0, 0x48, 0x1a, 0x73, 0xb6, 0x27, 0x92, 0xb9, 0x2b, 0xde, 0x96, 0xaa, 0x1e, 0x55, 0xc2, 0xbb, 0x4e, }; static const unsigned char ecdsa_secp256k1_sha256_12647_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12647_sig[] = { 0x49, 0xfc, 0x10, 0x2a, 0x08, 0xca, 0x47, 0xb6, 0x0e, 0x08, 0x58, 0xcd, 0x02, 0x84, 0xd2, 0x2c, 0xdd, 0xd7, 0x23, 0x3f, 0x94, 0xaa, 0xff, 0xbb, 0x2d, 0xb1, 0xdd, 0x2c, 0xf0, 0x84, 0x25, 0xe1, 0x5b, 0x16, 0xfc, 0xa5, 0xa1, 0x2c, 0xdb, 0x39, 0x70, 0x16, 0x97, 0xad, 0x8e, 0x39, 0xff, 0xd6, 0xbd, 0xec, 0x00, 0x24, 0x29, 0x8a, 0xfa, 0xa2, 0x32, 0x6a, 0xea, 0x09, 0x20, 0x0b, 0x14, 0xd6, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12647 = { .name = "ecdsa_secp256k1_sha256_12647", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12647_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12647_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12647_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 317 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12648 for ECDSA, tcId is 318 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12648_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12648_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12648_sig[] = { 0x41, 0xef, 0xa7, 0xd3, 0xf0, 0x5a, 0x00, 0x10, 0x67, 0x5f, 0xcb, 0x91, 0x8a, 0x45, 0xc6, 0x93, 0xda, 0x4b, 0x34, 0x8d, 0xf2, 0x1a, 0x59, 0xd6, 0xf9, 0xcd, 0x73, 0xe0, 0xd8, 0x31, 0xd6, 0x7a, 0xbb, 0xab, 0x52, 0x59, 0x6c, 0x1a, 0x1d, 0x94, 0x84, 0x29, 0x6c, 0xdc, 0x92, 0xcb, 0xf0, 0x7e, 0x66, 0x52, 0x59, 0xa1, 0x37, 0x91, 0xa8, 0xfe, 0x88, 0x45, 0xe2, 0xc0, 0x7c, 0xf3, 0xfc, 0x67, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12648 = { .name = "ecdsa_secp256k1_sha256_12648", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12648_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12648_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12648_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 318 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12649 for ECDSA, tcId is 319 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12649_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12649_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12649_sig[] = { 0xb6, 0x15, 0x69, 0x8c, 0x35, 0x8b, 0x35, 0x92, 0x0d, 0xd8, 0x83, 0xec, 0xa6, 0x25, 0xa6, 0xc5, 0xf7, 0x56, 0x39, 0x70, 0xcd, 0xfc, 0x37, 0x8f, 0x8f, 0xe0, 0xce, 0xe1, 0x70, 0x92, 0x14, 0x4c, 0xda, 0x0b, 0x84, 0xcd, 0x94, 0xa4, 0x1e, 0x04, 0x9e, 0xf4, 0x77, 0xae, 0xac, 0x15, 0x7b, 0x2a, 0x9b, 0xfa, 0x6b, 0x7a, 0xc8, 0xde, 0x06, 0xed, 0x38, 0x58, 0xc5, 0xee, 0xde, 0x6d, 0xdd, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12649 = { .name = "ecdsa_secp256k1_sha256_12649", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12649_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12649_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12649_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 319 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12650 for ECDSA, tcId is 320 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12650_pubkey[] = { 0x00, 0x00, 0x00, 0x01, 0x3f, 0xd2, 0x22, 0x48, 0xd6, 0x4d, 0x95, 0xf7, 0x3c, 0x29, 0xb4, 0x8a, 0xb4, 0x86, 0x31, 0x85, 0x0b, 0xe5, 0x03, 0xfd, 0x00, 0xf8, 0x46, 0x8b, 0x5f, 0x0f, 0x70, 0xe0, 0xf6, 0xee, 0x7a, 0xa4, 0x3b, 0xc2, 0xc6, 0xfd, 0x25, 0xb1, 0xd8, 0x26, 0x92, 0x41, 0xcb, 0xdd, 0x9d, 0xbb, 0x0d, 0xac, 0x96, 0xdc, 0x96, 0x23, 0x1f, 0x43, 0x07, 0x05, 0xf8, 0x38, 0x71, 0x7d, }; static const unsigned char ecdsa_secp256k1_sha256_12650_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12650_sig[] = { 0x87, 0xcf, 0x8c, 0x0e, 0xb8, 0x2d, 0x44, 0xf6, 0x9c, 0x60, 0xa2, 0xff, 0x54, 0x57, 0xd3, 0xaa, 0xa3, 0x22, 0xe7, 0xec, 0x61, 0xae, 0x5a, 0xec, 0xfd, 0x67, 0x8a, 0xe1, 0xc1, 0x93, 0x2b, 0x0e, 0xc5, 0x22, 0xc4, 0xee, 0xa7, 0xea, 0xfb, 0x82, 0x91, 0x4c, 0xbf, 0x5c, 0x1f, 0xf7, 0x67, 0x60, 0x10, 0x9f, 0x55, 0xdd, 0xdd, 0xcf, 0x58, 0x27, 0x4d, 0x41, 0xc9, 0xbc, 0x43, 0x11, 0xe0, 0x6e, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12650 = { .name = "ecdsa_secp256k1_sha256_12650", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12650_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12650_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12650_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 320 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12651 for ECDSA, tcId is 321 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12651_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12651_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12651_sig[] = { 0x62, 0xf4, 0x8e, 0xf7, 0x1a, 0xce, 0x27, 0xbf, 0x5a, 0x01, 0x83, 0x4d, 0xe1, 0xf7, 0xe3, 0xf9, 0x48, 0xb9, 0xdc, 0xe1, 0xca, 0x1e, 0x91, 0x1d, 0x5e, 0x13, 0xd3, 0xb1, 0x04, 0x47, 0x1d, 0x82, 0xa1, 0x57, 0x0c, 0xc0, 0xf3, 0x88, 0x76, 0x8d, 0x3b, 0xa7, 0xdf, 0x7f, 0x21, 0x25, 0x64, 0xca, 0xa2, 0x56, 0xff, 0x82, 0x5d, 0xf9, 0x97, 0xf2, 0x1f, 0x72, 0xf5, 0x28, 0x0d, 0x53, 0x01, 0x1f, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12651 = { .name = "ecdsa_secp256k1_sha256_12651", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12651_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12651_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12651_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 321 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12652 for ECDSA, tcId is 322 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12652_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12652_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12652_sig[] = { 0xf6, 0xb0, 0xe2, 0xf6, 0xfe, 0x02, 0x0c, 0xf7, 0xc0, 0xc2, 0x01, 0x37, 0x43, 0x43, 0x44, 0xed, 0x7a, 0xdd, 0x6c, 0x4b, 0xe5, 0x18, 0x61, 0xe2, 0xd1, 0x4c, 0xbd, 0xa4, 0x72, 0xa6, 0xff, 0xb4, 0x9b, 0xe9, 0x37, 0x22, 0xc1, 0xa3, 0xad, 0x7d, 0x4c, 0xf9, 0x17, 0x23, 0x70, 0x0c, 0xb5, 0x48, 0x6d, 0xe5, 0x47, 0x9d, 0x8c, 0x1b, 0x38, 0xae, 0x4e, 0x8e, 0x5b, 0xa1, 0x63, 0x8e, 0x97, 0x32, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12652 = { .name = "ecdsa_secp256k1_sha256_12652", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12652_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12652_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12652_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 322 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12653 for ECDSA, tcId is 323 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12653_pubkey[] = { 0x25, 0xaf, 0xd6, 0x89, 0xac, 0xab, 0xae, 0xd6, 0x7c, 0x1f, 0x29, 0x6d, 0xe5, 0x94, 0x06, 0xf8, 0xc5, 0x50, 0xf5, 0x71, 0x46, 0xa0, 0xb4, 0xec, 0x2c, 0x97, 0x87, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x46, 0xa7, 0x6e, 0x52, 0x03, 0x22, 0xdf, 0xbc, 0x49, 0x1e, 0xc4, 0xf0, 0xcc, 0x19, 0x74, 0x20, 0xfc, 0x4e, 0xa5, 0x88, 0x3d, 0x8f, 0x6d, 0xd5, 0x3c, 0x35, 0x4b, 0xc4, 0xf6, 0x7c, 0x35, }; static const unsigned char ecdsa_secp256k1_sha256_12653_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12653_sig[] = { 0xdb, 0x09, 0xd8, 0x46, 0x0f, 0x05, 0xef, 0xf2, 0x3b, 0xc7, 0xe4, 0x36, 0xb6, 0x7d, 0xa5, 0x63, 0xfa, 0x4b, 0x4e, 0xdb, 0x58, 0xac, 0x24, 0xce, 0x20, 0x1f, 0xa8, 0xa3, 0x58, 0x12, 0x50, 0x57, 0x46, 0xda, 0x11, 0x67, 0x54, 0x60, 0x29, 0x40, 0xc8, 0x99, 0x9c, 0x8d, 0x66, 0x5f, 0x78, 0x6c, 0x50, 0xf5, 0x77, 0x2c, 0x0a, 0x3c, 0xdb, 0xda, 0x07, 0x5e, 0x77, 0xea, 0xbc, 0x64, 0xdf, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12653 = { .name = "ecdsa_secp256k1_sha256_12653", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12653_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12653_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12653_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 1's, tcId is 323 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12654 for ECDSA, tcId is 324 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12654_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12654_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12654_sig[] = { 0x59, 0x2c, 0x41, 0xe1, 0x65, 0x17, 0xf1, 0x2f, 0xca, 0xbd, 0x98, 0x26, 0x76, 0x74, 0xf9, 0x74, 0xb5, 0x88, 0xe9, 0xf3, 0x5d, 0x35, 0x40, 0x6c, 0x1a, 0x7b, 0xb2, 0xed, 0x1d, 0x19, 0xb7, 0xb8, 0xc1, 0x9a, 0x5f, 0x94, 0x26, 0x07, 0xc3, 0x55, 0x14, 0x84, 0xff, 0x0d, 0xc9, 0x72, 0x81, 0xf0, 0xcd, 0xc8, 0x2b, 0xc4, 0x8e, 0x22, 0x05, 0xa0, 0x64, 0x5c, 0x0c, 0xf3, 0xd7, 0xf5, 0x9d, 0xa0, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12654 = { .name = "ecdsa_secp256k1_sha256_12654", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12654_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12654_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12654_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 324 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12655 for ECDSA, tcId is 325 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12655_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12655_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12655_sig[] = { 0xbe, 0x0d, 0x70, 0x88, 0x7d, 0x5e, 0x40, 0x82, 0x1a, 0x61, 0xb6, 0x80, 0x47, 0xde, 0x4e, 0xa0, 0x3d, 0xeb, 0xfd, 0xf5, 0x1c, 0xdf, 0x4d, 0x4b, 0x19, 0x55, 0x58, 0xb9, 0x59, 0xa0, 0x32, 0xb2, 0x82, 0x66, 0xb4, 0xd2, 0x70, 0xe2, 0x44, 0x14, 0xec, 0xac, 0xb1, 0x4c, 0x09, 0x1a, 0x23, 0x31, 0x34, 0xb9, 0x18, 0xd3, 0x73, 0x20, 0xc6, 0x55, 0x7d, 0x60, 0xad, 0x0a, 0x63, 0x54, 0x4a, 0xc4, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12655 = { .name = "ecdsa_secp256k1_sha256_12655", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12655_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12655_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12655_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 325 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12656 for ECDSA, tcId is 326 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12656_pubkey[] = { 0xd1, 0x2e, 0x6c, 0x66, 0xb6, 0x77, 0x34, 0xc3, 0xc8, 0x4d, 0x26, 0x01, 0xcf, 0x5d, 0x35, 0xdc, 0x09, 0x7e, 0x27, 0x63, 0x7f, 0x0a, 0xca, 0x4a, 0x4f, 0xdb, 0x74, 0xb6, 0xaa, 0xdd, 0x3b, 0xb9, 0x3f, 0x5b, 0xdf, 0xf8, 0x8b, 0xd5, 0x73, 0x6d, 0xf8, 0x98, 0xe6, 0x99, 0x00, 0x6e, 0xd7, 0x50, 0xf1, 0x1c, 0xf0, 0x7c, 0x58, 0x66, 0xcd, 0x7a, 0xd7, 0x0c, 0x71, 0x21, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp256k1_sha256_12656_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12656_sig[] = { 0xfa, 0xe9, 0x2d, 0xfc, 0xb2, 0xee, 0x39, 0x2d, 0x27, 0x0a, 0xf3, 0xa5, 0x73, 0x9f, 0xaa, 0x26, 0xd4, 0xf9, 0x7b, 0xfd, 0x39, 0xed, 0x3c, 0xbe, 0xe4, 0xd2, 0x9e, 0x26, 0xaf, 0x3b, 0x20, 0x6a, 0x93, 0x64, 0x5c, 0x80, 0x60, 0x55, 0x95, 0xe0, 0x2c, 0x09, 0xa0, 0xdc, 0x4b, 0x17, 0xac, 0x2a, 0x51, 0x84, 0x6a, 0x72, 0x8b, 0x3e, 0x8d, 0x60, 0x44, 0x2e, 0xd6, 0x44, 0x9f, 0xd3, 0x34, 0x2b, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12656 = { .name = "ecdsa_secp256k1_sha256_12656", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12656_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12656_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12656_sig, .siglen = 64, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 326 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12657 for ECDSA, tcId is 327 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12657_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12657_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12657_sig[] = { 0x17, 0x6a, 0x25, 0x57, 0x56, 0x6f, 0xfa, 0x51, 0x8b, 0x11, 0x22, 0x66, 0x94, 0xeb, 0x98, 0x02, 0xed, 0x20, 0x98, 0xbf, 0xe2, 0x78, 0xe5, 0x57, 0x0f, 0xe1, 0xd5, 0xd7, 0xaf, 0x18, 0xa9, 0x43, 0xed, 0x6e, 0x20, 0x95, 0xf1, 0x2a, 0x03, 0xf2, 0xea, 0xf6, 0x71, 0x8f, 0x43, 0x0e, 0xc5, 0xfe, 0x28, 0x29, 0xfd, 0x16, 0x46, 0xab, 0x64, 0x87, 0x01, 0x65, 0x6f, 0xd3, 0x12, 0x21, 0xb9, 0x7d, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12657 = { .name = "ecdsa_secp256k1_sha256_12657", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12657_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12657_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12657_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 327 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12658 for ECDSA, tcId is 328 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12658_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12658_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12658_sig[] = { 0x60, 0xbe, 0x20, 0xc3, 0xdb, 0xc1, 0x62, 0xdd, 0x34, 0xd2, 0x67, 0x80, 0x62, 0x1c, 0x10, 0x4b, 0xbe, 0x5d, 0xac, 0xe6, 0x30, 0x17, 0x1b, 0x2d, 0xae, 0xf0, 0xd8, 0x26, 0x40, 0x9e, 0xe5, 0xc2, 0xbd, 0x80, 0x81, 0xb2, 0x77, 0x62, 0xab, 0x6e, 0x8f, 0x42, 0x59, 0x56, 0xbf, 0x60, 0x4e, 0x33, 0x2f, 0xa0, 0x66, 0xa9, 0x9b, 0x59, 0xf8, 0x7e, 0x27, 0xdc, 0x11, 0x98, 0xb2, 0x6f, 0x5c, 0xaa, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12658 = { .name = "ecdsa_secp256k1_sha256_12658", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12658_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12658_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12658_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 328 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12659 for ECDSA, tcId is 329 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) static const unsigned char ecdsa_secp256k1_sha256_12659_pubkey[] = { 0x6d, 0x4a, 0x7f, 0x60, 0xd4, 0x77, 0x4a, 0x4f, 0x0a, 0xa8, 0xbb, 0xde, 0xdb, 0x95, 0x3c, 0x7e, 0xea, 0x79, 0x09, 0x40, 0x7e, 0x31, 0x64, 0x75, 0x56, 0x64, 0xbc, 0x28, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x59, 0xd3, 0x4e, 0x4d, 0xf3, 0x8d, 0x9e, 0x8c, 0x9e, 0xaa, 0xdf, 0xba, 0x36, 0x61, 0x2c, 0x76, 0x91, 0x95, 0xbe, 0x86, 0xc7, 0x7a, 0xac, 0x3f, 0x36, 0xe7, 0x8b, 0x53, 0x86, 0x80, 0xfb, }; static const unsigned char ecdsa_secp256k1_sha256_12659_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp256k1_sha256_12659_sig[] = { 0xed, 0xf0, 0x3c, 0xf6, 0x3f, 0x65, 0x88, 0x83, 0x28, 0x9a, 0x1a, 0x59, 0x3d, 0x10, 0x07, 0x89, 0x5b, 0x9f, 0x23, 0x6d, 0x27, 0xc9, 0xc1, 0xf1, 0x31, 0x30, 0x89, 0xaa, 0xed, 0x6b, 0x16, 0xae, 0xe5, 0xb2, 0x29, 0x03, 0xf7, 0xeb, 0x23, 0xad, 0xc2, 0xe0, 0x10, 0x57, 0xe3, 0x9b, 0x04, 0x08, 0xd4, 0x95, 0xf6, 0x94, 0xc8, 0x3f, 0x30, 0x6f, 0x12, 0x16, 0xc9, 0xbf, 0x87, 0x50, 0x60, 0x74, }; static const wycheproof_ecdsa_test ecdsa_secp256k1_sha256_12659 = { .name = "ecdsa_secp256k1_sha256_12659", .sig_alg = ECDSA, .hash = SHA256, .curve = &secp256k1_str_params, .pubkey = ecdsa_secp256k1_sha256_12659_pubkey, .pubkeylen = 64, .msg = ecdsa_secp256k1_sha256_12659_msg, .msglen = 7, .sig = ecdsa_secp256k1_sha256_12659_sig, .siglen = 64, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 329 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) */ /* Test 12660 for ECDSA, tcId is 330 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12660_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12660_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12660_sig[] = { 0x07, 0x64, 0x8b, 0x66, 0x60, 0xd0, 0x1b, 0xa2, 0x52, 0x0a, 0x09, 0xd2, 0x98, 0xad, 0xf3, 0xb1, 0xa0, 0x2c, 0x32, 0x74, 0x4b, 0xd2, 0x87, 0x72, 0x08, 0xf5, 0xa4, 0x16, 0x2f, 0x6c, 0x98, 0x43, 0x73, 0x13, 0x9d, 0x80, 0x0a, 0x4c, 0xdc, 0x1f, 0xfe, 0xa1, 0x5b, 0xce, 0x48, 0x71, 0xa0, 0xed, 0x99, 0xfd, 0x36, 0x70, 0x12, 0xcb, 0x9e, 0x02, 0xcd, 0xe2, 0x74, 0x94, 0x55, 0xe0, 0xd4, 0x95, 0xc5, 0x28, 0x18, 0xf3, 0xc1, 0x4f, 0x6e, 0x6a, 0xad, 0x10, 0x5b, 0x09, 0x25, 0xe2, 0xa7, 0x29, 0x0a, 0xc4, 0xa0, 0x6d, 0x9f, 0xad, 0xf4, 0xb1, 0x5b, 0x57, 0x85, 0x56, 0xfe, 0x33, 0x2a, 0x5f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12660 = { .name = "ecdsa_secp384r1_sha384_12660", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12660_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12660_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12660_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 330 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12661 for ECDSA, tcId is 331 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12661_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12661_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12661_sig[] = { 0xa0, 0x49, 0xdc, 0xd9, 0x6c, 0x72, 0xe4, 0xf3, 0x61, 0x44, 0xa5, 0x1b, 0xba, 0x30, 0x41, 0x7b, 0x45, 0x1a, 0x30, 0x5d, 0xd0, 0x1c, 0x9e, 0x30, 0xa5, 0xe0, 0x4d, 0xf9, 0x43, 0x42, 0x61, 0x7d, 0xc3, 0x83, 0xf1, 0x77, 0x27, 0x70, 0x8e, 0x32, 0x77, 0xcd, 0x72, 0x46, 0xca, 0x44, 0x07, 0x41, 0x39, 0x70, 0xe2, 0x64, 0xd8, 0x5b, 0x22, 0x8b, 0xf9, 0xe9, 0xb9, 0xc4, 0x94, 0x7c, 0x5d, 0xd0, 0x41, 0xea, 0x8b, 0x5b, 0xde, 0x30, 0xb9, 0x3a, 0xa5, 0x9f, 0xed, 0xf2, 0xc4, 0x28, 0xd3, 0xe2, 0x54, 0x0a, 0x54, 0xe0, 0x53, 0x06, 0x88, 0xac, 0xcc, 0xb8, 0x3a, 0xc7, 0xb2, 0x9b, 0x79, 0xa2, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12661 = { .name = "ecdsa_secp384r1_sha384_12661", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12661_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12661_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12661_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 331 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12662 for ECDSA, tcId is 332 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12662_pubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xaa, 0x63, 0xf1, 0xa2, 0x39, 0xac, 0x70, 0x19, 0x7c, 0x6e, 0xbf, 0xce, 0xa5, 0x75, 0x6d, 0xc0, 0x12, 0x12, 0x3f, 0x82, 0xc5, 0x1f, 0xa8, 0x74, 0xd6, 0x60, 0x28, 0xbe, 0x00, 0xe9, 0x76, 0xa1, 0x08, 0x06, 0x06, 0x73, 0x7c, 0xc7, 0x5c, 0x40, 0xbd, 0xfe, 0x4a, 0xac, 0xac, 0xbd, 0x85, 0x38, 0x90, 0x88, 0xa6, 0x2a, 0x63, 0x98, 0x38, 0x4c, 0x22, 0xb5, 0x2d, 0x49, 0x2f, 0x23, 0xf4, 0x6e, 0x4a, 0x27, 0xa4, 0x72, 0x4a, 0xd5, 0x55, 0x51, 0xda, 0x5c, 0x48, 0x34, 0x38, 0x09, 0x5a, 0x24, 0x7c, 0xb0, 0xc3, 0x37, 0x8f, 0x1f, 0x52, 0xc3, 0x42, 0x5f, 0xf9, 0xf1, }; static const unsigned char ecdsa_secp384r1_sha384_12662_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12662_sig[] = { 0x44, 0x18, 0x00, 0xea, 0x93, 0x77, 0xc2, 0x78, 0x65, 0xbe, 0x00, 0x0a, 0xd0, 0x08, 0xeb, 0x3d, 0x75, 0x02, 0xbd, 0xd1, 0x05, 0x82, 0x4b, 0x26, 0xd1, 0x5c, 0xf3, 0xd0, 0x64, 0x52, 0x96, 0x9a, 0x9d, 0x06, 0x07, 0xa9, 0x15, 0xa8, 0xfe, 0x98, 0x92, 0x15, 0xfc, 0x4d, 0x61, 0xaf, 0x6e, 0x05, 0xdc, 0xe2, 0x9f, 0xaa, 0x51, 0x37, 0xf7, 0x5a, 0xd7, 0x7e, 0x03, 0x91, 0x8c, 0x8e, 0xe6, 0x74, 0x7c, 0xc7, 0xa3, 0x9b, 0x0a, 0x69, 0xf8, 0xb9, 0x15, 0x65, 0x4c, 0xac, 0x4c, 0xf4, 0xbf, 0xd9, 0xc8, 0x7c, 0xc4, 0x6a, 0xe1, 0x63, 0x1b, 0x5c, 0x6b, 0xae, 0xbd, 0x4f, 0xc0, 0x8f, 0xf8, 0xfd, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12662 = { .name = "ecdsa_secp384r1_sha384_12662", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12662_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12662_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12662_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 332 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12663 for ECDSA, tcId is 333 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12663_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12663_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12663_sig[] = { 0x32, 0x44, 0x76, 0x80, 0x16, 0x45, 0x7c, 0x46, 0x3b, 0x74, 0xf2, 0x09, 0x7f, 0x21, 0x6d, 0x96, 0x70, 0xb1, 0x91, 0xf7, 0x62, 0x81, 0xc7, 0x4b, 0xc6, 0xa1, 0xa1, 0x97, 0x1d, 0x19, 0xf2, 0x09, 0xbf, 0x46, 0x96, 0x46, 0x8f, 0x5e, 0xb7, 0x5d, 0x63, 0x26, 0xa0, 0xa4, 0x3c, 0x0a, 0x65, 0x29, 0x50, 0x1e, 0x0a, 0xd9, 0x85, 0xed, 0x9f, 0x95, 0x69, 0x7b, 0xd1, 0x7f, 0xdb, 0xe3, 0xf9, 0xca, 0x92, 0xe0, 0xf7, 0x64, 0x26, 0xd3, 0x66, 0x4e, 0x68, 0x96, 0x64, 0x8d, 0x9c, 0x75, 0x0b, 0xf5, 0x88, 0xd0, 0xce, 0x7d, 0x01, 0x1c, 0x1a, 0x1e, 0x8d, 0x6c, 0x2e, 0x08, 0x24, 0x22, 0xdc, 0x93, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12663 = { .name = "ecdsa_secp384r1_sha384_12663", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12663_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12663_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12663_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 333 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12664 for ECDSA, tcId is 334 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12664_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12664_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12664_sig[] = { 0x5e, 0x1a, 0xf4, 0x0f, 0x24, 0x80, 0xe3, 0xd9, 0x7c, 0x4a, 0xe4, 0xbf, 0xd3, 0x4a, 0x9f, 0x45, 0x26, 0x92, 0x41, 0x35, 0x6f, 0x3a, 0x46, 0xbe, 0xcd, 0x86, 0xa4, 0xa7, 0xc9, 0x71, 0x6d, 0x73, 0xca, 0x5a, 0xeb, 0xdb, 0x3d, 0xb1, 0xa7, 0x76, 0x56, 0x50, 0x66, 0x66, 0x83, 0xbc, 0x85, 0x6b, 0x7e, 0x7c, 0x4b, 0x47, 0x3a, 0x2b, 0xaa, 0xa4, 0x95, 0x37, 0x85, 0xbe, 0x8a, 0xa2, 0xa1, 0x00, 0x06, 0xf6, 0xd3, 0x6b, 0x40, 0x0a, 0xb9, 0x81, 0x86, 0x4d, 0x69, 0xce, 0xce, 0xc0, 0x46, 0x71, 0x8d, 0x04, 0x04, 0xb9, 0x64, 0x74, 0x54, 0xb1, 0x59, 0xaa, 0x5a, 0x92, 0xd7, 0x6d, 0x79, 0x55, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12664 = { .name = "ecdsa_secp384r1_sha384_12664", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12664_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12664_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12664_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 334 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12665 for ECDSA, tcId is 335 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12665_pubkey[] = { 0xd1, 0x82, 0x7f, 0xc6, 0xf6, 0xf1, 0x2f, 0x21, 0x99, 0x2c, 0x5a, 0x40, 0x9a, 0x06, 0x53, 0xb1, 0x21, 0xd2, 0xef, 0x02, 0xb2, 0xb0, 0xab, 0x01, 0xa9, 0x16, 0x1c, 0xe9, 0x56, 0x28, 0x07, 0x40, 0xb1, 0xe3, 0x56, 0xb2, 0x55, 0x70, 0x1b, 0x0a, 0x6d, 0xdc, 0x9e, 0xc2, 0xca, 0x8a, 0x94, 0x22, 0xc6, 0xed, 0x5d, 0x2c, 0xed, 0x8d, 0x8a, 0xb7, 0x56, 0x0f, 0xa5, 0xbb, 0x88, 0xc7, 0x38, 0xe7, 0x45, 0x41, 0x88, 0x3d, 0x8a, 0x2b, 0x1c, 0x0e, 0x2b, 0xa7, 0xe3, 0x6d, 0x03, 0x0f, 0xc4, 0xd9, 0xbf, 0xb8, 0xb2, 0x2f, 0x24, 0xdb, 0x89, 0x7e, 0xba, 0xc4, 0x9d, 0xd4, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdsa_secp384r1_sha384_12665_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12665_sig[] = { 0x66, 0x88, 0xe3, 0x6a, 0x26, 0xf1, 0x5b, 0xdc, 0x1c, 0x3f, 0x91, 0x36, 0x7f, 0x8a, 0x76, 0x67, 0xf7, 0xbb, 0x3e, 0x30, 0xa3, 0x35, 0xd6, 0xf0, 0x90, 0x0e, 0x95, 0x34, 0xeb, 0x88, 0xb2, 0x60, 0xcb, 0x29, 0x34, 0x4c, 0x72, 0x3f, 0xed, 0xfb, 0xe7, 0xac, 0x9c, 0x5a, 0x33, 0xf4, 0xbf, 0x0d, 0xaa, 0x35, 0xfd, 0xdf, 0x0f, 0xdc, 0x90, 0x17, 0x86, 0x0b, 0x37, 0x8f, 0x80, 0x1c, 0xd8, 0x06, 0xf3, 0xe2, 0xd7, 0x54, 0xcd, 0x2f, 0xd9, 0x4e, 0xb7, 0xbb, 0x36, 0xa4, 0x6c, 0xe8, 0x28, 0xce, 0xf8, 0x7e, 0x9e, 0xbb, 0xf4, 0x47, 0x06, 0x8e, 0x63, 0x0b, 0x87, 0xfe, 0xe3, 0x85, 0xad, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12665 = { .name = "ecdsa_secp384r1_sha384_12665", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12665_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12665_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12665_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 335 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12666 for ECDSA, tcId is 336 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12666_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12666_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12666_sig[] = { 0xd4, 0xa8, 0xf3, 0xb0, 0xb4, 0xd3, 0xa5, 0x76, 0x9e, 0x3a, 0x0b, 0xbc, 0x64, 0x4b, 0x35, 0xf1, 0xd5, 0x09, 0x35, 0x5e, 0xd1, 0xfe, 0x40, 0x1e, 0x17, 0x0f, 0x66, 0x7b, 0x66, 0x1f, 0x69, 0x3b, 0x32, 0x59, 0x8e, 0x8c, 0x14, 0x3a, 0x81, 0x7a, 0x95, 0x89, 0x82, 0x84, 0x50, 0x42, 0xbb, 0x48, 0x04, 0xcc, 0x07, 0x57, 0x8b, 0xbd, 0x19, 0x81, 0xdb, 0xf6, 0xe8, 0xa9, 0x7a, 0x35, 0x4c, 0x98, 0xd4, 0x1b, 0x8b, 0x6f, 0x6e, 0x8a, 0x2c, 0x2b, 0x17, 0x63, 0xc7, 0xc2, 0xa2, 0x9d, 0x79, 0xe2, 0x4f, 0x84, 0x76, 0x07, 0x5c, 0x9a, 0xed, 0x9a, 0xec, 0x6c, 0x64, 0xdf, 0xf5, 0x04, 0x61, 0xae, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12666 = { .name = "ecdsa_secp384r1_sha384_12666", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12666_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12666_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12666_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 336 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12667 for ECDSA, tcId is 337 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12667_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12667_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12667_sig[] = { 0xc2, 0x86, 0xd1, 0x92, 0x8e, 0x9c, 0x79, 0xfd, 0xd3, 0xbe, 0xbd, 0xf2, 0x2a, 0x1d, 0xbd, 0x37, 0xc8, 0x10, 0x5e, 0x8e, 0xcf, 0x41, 0xe9, 0xe3, 0x77, 0x7f, 0xe3, 0x41, 0xb6, 0xb8, 0xd5, 0xa8, 0x9b, 0x9d, 0x98, 0x68, 0x27, 0xd6, 0xd1, 0xdb, 0xb3, 0x81, 0xcd, 0x82, 0x39, 0x48, 0x4a, 0x22, 0x20, 0x11, 0x19, 0xae, 0x30, 0x5b, 0x93, 0x60, 0xaa, 0x9b, 0x5e, 0x5d, 0x15, 0x67, 0xe0, 0x67, 0x4c, 0x09, 0xe4, 0xf0, 0x25, 0x55, 0x6e, 0xbf, 0x81, 0xb9, 0x87, 0x46, 0x6b, 0x0f, 0x42, 0x1b, 0x8d, 0x31, 0xf7, 0x2b, 0xbe, 0x95, 0xf3, 0xce, 0x2a, 0xa9, 0x87, 0x4a, 0x84, 0xed, 0xfd, 0x40, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12667 = { .name = "ecdsa_secp384r1_sha384_12667", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12667_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12667_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12667_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 337 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12668 for ECDSA, tcId is 338 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12668_pubkey[] = { 0x10, 0x99, 0xbb, 0x45, 0x10, 0x0f, 0x55, 0xf5, 0xa8, 0x5c, 0xca, 0x3d, 0xe2, 0xb3, 0xbd, 0x5e, 0x25, 0x0f, 0x4f, 0x6f, 0xad, 0x66, 0x31, 0xa3, 0x15, 0x6c, 0x2e, 0x52, 0xa3, 0x3d, 0x7d, 0x61, 0x5d, 0xd2, 0x79, 0xf7, 0x9f, 0x8b, 0x4b, 0xaf, 0xf7, 0xc7, 0x13, 0xac, 0x00, 0x00, 0x00, 0x00, 0xe6, 0xc9, 0xb7, 0x36, 0xa8, 0x92, 0x9f, 0x2e, 0xd7, 0xbe, 0x0c, 0x75, 0x3a, 0x54, 0xcb, 0xb4, 0x8b, 0x84, 0x69, 0xe0, 0x41, 0x1e, 0xaf, 0x93, 0xa4, 0xa8, 0x24, 0x59, 0xba, 0x0b, 0x68, 0x1b, 0xba, 0x8f, 0x5f, 0xb3, 0x83, 0xb4, 0x90, 0x6d, 0x49, 0x01, 0xa3, 0x30, 0x3e, 0x2f, 0x15, 0x57, }; static const unsigned char ecdsa_secp384r1_sha384_12668_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12668_sig[] = { 0xd9, 0xc6, 0x78, 0x55, 0x01, 0x67, 0xf1, 0x0c, 0x51, 0x1e, 0x62, 0xac, 0xb4, 0xbd, 0x0a, 0x3f, 0x7f, 0x33, 0x6b, 0xc0, 0x90, 0xc9, 0x4e, 0x6c, 0x6b, 0x02, 0x62, 0x24, 0x39, 0xc3, 0x48, 0xa2, 0x15, 0x9c, 0x5f, 0x41, 0xf9, 0xb5, 0xaa, 0x4b, 0x47, 0x05, 0x90, 0xd4, 0x0d, 0xcd, 0x7c, 0xc2, 0x1f, 0xd5, 0xea, 0xee, 0x29, 0x5a, 0xbb, 0x40, 0x81, 0xcb, 0x62, 0x67, 0x45, 0xf4, 0xad, 0x27, 0x9c, 0xeb, 0x44, 0x60, 0x40, 0x62, 0x83, 0x0b, 0x58, 0xe6, 0xc0, 0x46, 0x5c, 0x56, 0x2d, 0x41, 0xf0, 0x2b, 0xa5, 0x88, 0xfc, 0x0d, 0xb1, 0xeb, 0xbe, 0x33, 0x9c, 0xdc, 0x00, 0x8d, 0x7a, 0x1b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12668 = { .name = "ecdsa_secp384r1_sha384_12668", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12668_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12668_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12668_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key has many trailing 0's, tcId is 338 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12669 for ECDSA, tcId is 339 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12669_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12669_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12669_sig[] = { 0x20, 0xfe, 0xe7, 0xc7, 0x1b, 0x6c, 0xb0, 0xd1, 0xda, 0x36, 0x41, 0xec, 0x66, 0x22, 0xc0, 0x55, 0xa3, 0xb1, 0x6a, 0x1f, 0x59, 0x6c, 0x64, 0xb3, 0x4d, 0xa1, 0xb2, 0xd0, 0xb8, 0x68, 0xb6, 0x6a, 0x8f, 0x0a, 0x0d, 0x0d, 0xb9, 0x83, 0xb3, 0xdc, 0x7e, 0x53, 0xbb, 0x72, 0x95, 0xda, 0x81, 0x97, 0x81, 0x41, 0xa9, 0x31, 0xd3, 0x57, 0x9a, 0xec, 0x1c, 0xac, 0x98, 0x87, 0xd2, 0xff, 0xf9, 0xc6, 0xf1, 0x2d, 0x47, 0xa2, 0x7e, 0x4a, 0xab, 0x8c, 0xf2, 0x62, 0xa9, 0xd1, 0x4a, 0x71, 0x5b, 0xca, 0x0b, 0x20, 0x57, 0xcb, 0xc3, 0xf1, 0x8b, 0x6f, 0xd3, 0xd1, 0xdf, 0x76, 0xf7, 0x41, 0x0f, 0x16, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12669 = { .name = "ecdsa_secp384r1_sha384_12669", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12669_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12669_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12669_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 339 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12670 for ECDSA, tcId is 340 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12670_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12670_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12670_sig[] = { 0x91, 0x3e, 0xec, 0xc5, 0x59, 0xb3, 0xcf, 0x71, 0x08, 0xa6, 0x5d, 0x6c, 0xc3, 0x07, 0x6b, 0xfd, 0xf3, 0x6c, 0x6f, 0x94, 0xdc, 0xc6, 0x69, 0x3d, 0x06, 0x69, 0x04, 0x70, 0xf3, 0x4a, 0x2e, 0x81, 0x56, 0x42, 0x41, 0xe1, 0xde, 0x5f, 0x5f, 0x51, 0x42, 0x1d, 0xe3, 0x0a, 0xf4, 0x67, 0xf1, 0x0f, 0x64, 0x9b, 0xd3, 0x71, 0x72, 0x44, 0xe8, 0xef, 0x3c, 0x6b, 0x0e, 0xda, 0x98, 0x3f, 0x84, 0xdc, 0xa5, 0xea, 0x86, 0xd1, 0xbe, 0xc1, 0x53, 0x86, 0xb9, 0xc4, 0x73, 0xec, 0x43, 0xa8, 0xcd, 0x0b, 0xa5, 0x58, 0xee, 0xe8, 0x19, 0xf7, 0x91, 0xd9, 0xff, 0x92, 0x72, 0xb9, 0xaf, 0xd5, 0x95, 0x51, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12670 = { .name = "ecdsa_secp384r1_sha384_12670", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12670_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12670_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12670_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 340 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12671 for ECDSA, tcId is 341 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12671_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x2b, 0x08, 0x9e, 0xdd, 0x75, 0x41, 0x69, 0x01, 0x01, 0x45, 0xf2, 0x63, 0xf3, 0x34, 0xfc, 0x16, 0x7c, 0xc1, 0x9d, 0xae, 0x82, 0x25, 0x97, 0x0a, 0xe1, 0x9c, 0xc8, 0xcb, 0x7e, 0xc7, 0x35, 0x93, 0xd6, 0xa4, 0x65, 0xc3, 0x70, 0xf5, 0x47, 0x8b, 0x0e, 0x53, 0x9d, 0x69, 0xd1, 0x95, 0x1d, 0x59, 0x7b, 0x56, 0xa6, 0x73, 0x45, 0xac, 0xb2, 0x58, 0x09, 0x58, 0x1f, 0x07, 0xcd, 0x0e, 0xb7, 0x8d, 0x95, 0x38, 0xa3, 0xf8, 0xa6, 0x5f, 0x30, 0x0e, 0x68, 0xa1, 0xeb, 0x78, 0x50, 0x7d, 0xf7, 0x6d, 0xe6, 0x50, 0xe8, 0xf8, 0xee, 0x63, 0xa5, 0xf0, 0xc5, 0x68, 0x7c, 0x98, }; static const unsigned char ecdsa_secp384r1_sha384_12671_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12671_sig[] = { 0x23, 0x85, 0x5c, 0x46, 0x40, 0x3a, 0x97, 0xb7, 0x6c, 0xbb, 0x31, 0x6e, 0xc3, 0xfe, 0x7e, 0x2c, 0x42, 0x2b, 0x81, 0x83, 0x87, 0x60, 0x4b, 0xda, 0x8c, 0x3d, 0x91, 0x12, 0x1b, 0x4f, 0x20, 0x17, 0x9d, 0x91, 0x07, 0xc5, 0xf9, 0x2d, 0xed, 0xc8, 0xb6, 0x20, 0xd7, 0xdb, 0x87, 0xfc, 0xcc, 0xcd, 0x50, 0xf5, 0x73, 0x43, 0xab, 0x14, 0x8e, 0x50, 0x66, 0x23, 0x20, 0xc4, 0x16, 0x1e, 0x44, 0x54, 0x3c, 0x35, 0xbc, 0x99, 0x20, 0x11, 0xea, 0x5b, 0x16, 0x80, 0xb9, 0x43, 0x82, 0xcf, 0x22, 0x4e, 0xa0, 0xec, 0x5d, 0xa5, 0x11, 0xe1, 0x02, 0xf5, 0x66, 0xcb, 0x67, 0x20, 0x1f, 0x30, 0xa2, 0xee, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12671 = { .name = "ecdsa_secp384r1_sha384_12671", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12671_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12671_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12671_sig, .siglen = 96, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 341 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12672 for ECDSA, tcId is 342 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12672_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12672_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12672_sig[] = { 0xd2, 0x00, 0x95, 0x8d, 0x49, 0x1f, 0xce, 0xbd, 0xe6, 0x67, 0xcd, 0x73, 0x6c, 0x9d, 0xba, 0x09, 0x61, 0xc7, 0x0d, 0xb2, 0xec, 0xaf, 0x57, 0x3c, 0x31, 0xdd, 0x7f, 0xa4, 0x1e, 0xcc, 0xa3, 0x2b, 0x40, 0xb5, 0x89, 0x6f, 0x9a, 0x0d, 0xdf, 0x27, 0x21, 0x10, 0xe3, 0xd2, 0x1e, 0x84, 0x59, 0x3a, 0xc2, 0xec, 0xf7, 0x39, 0x43, 0xb9, 0xad, 0xce, 0x59, 0x6b, 0xac, 0x14, 0xfc, 0xe6, 0x24, 0x95, 0xae, 0x93, 0x82, 0x5c, 0x5f, 0xf6, 0xf6, 0x1c, 0x24, 0x7d, 0x1d, 0x8a, 0xfc, 0xba, 0x52, 0x08, 0x2f, 0xc9, 0x6f, 0x63, 0xa2, 0x6e, 0x55, 0xbc, 0xcf, 0xc3, 0x77, 0x9f, 0x88, 0xcf, 0xd7, 0x99, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12672 = { .name = "ecdsa_secp384r1_sha384_12672", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12672_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12672_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12672_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 342 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12673 for ECDSA, tcId is 343 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12673_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12673_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12673_sig[] = { 0x6a, 0xc1, 0x7d, 0x71, 0x26, 0x0c, 0x79, 0xf8, 0x1a, 0x75, 0x66, 0x12, 0x47, 0x38, 0xcb, 0x3e, 0xe5, 0xd0, 0xaa, 0x69, 0x0e, 0x73, 0xa9, 0x8a, 0xe9, 0xe7, 0x66, 0xf1, 0x33, 0x66, 0x91, 0xe5, 0x00, 0xca, 0xd5, 0x1b, 0xa1, 0x30, 0x23, 0x66, 0xc0, 0x9c, 0xc0, 0x6b, 0x8f, 0x70, 0x49, 0xe0, 0x32, 0xca, 0x96, 0x5d, 0x6d, 0x70, 0x12, 0xec, 0x18, 0x7c, 0x7c, 0xab, 0x95, 0x44, 0x33, 0x4d, 0x66, 0xc2, 0xa7, 0x65, 0x8d, 0xde, 0xfa, 0x67, 0xe4, 0xad, 0x40, 0x42, 0x98, 0x15, 0x51, 0x8e, 0xcc, 0x87, 0xb1, 0x49, 0x2d, 0xdd, 0x57, 0x33, 0x3b, 0xd2, 0x30, 0x0b, 0x46, 0x60, 0xa8, 0x35, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12673 = { .name = "ecdsa_secp384r1_sha384_12673", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12673_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12673_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12673_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 343 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12674 for ECDSA, tcId is 344 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12674_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0x00, 0x00, 0x00, 0x00, 0x20, 0x8b, 0x3f, 0x5a, 0xd3, 0xb3, 0x93, 0x7a, 0xcc, 0x9d, 0x60, 0x6c, 0xc5, 0xec, 0xec, 0xab, 0x4a, 0x70, 0x1f, 0x75, 0xed, 0x42, 0x95, 0x7e, 0xa4, 0xd7, 0x85, 0x8d, 0x33, 0xf5, 0xc2, 0x6c, 0x6a, 0xe2, 0x0a, 0x9c, 0xcc, 0xda, 0x56, 0x99, 0x67, 0x00, 0xd6, 0xb4, }; static const unsigned char ecdsa_secp384r1_sha384_12674_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12674_sig[] = { 0xe1, 0x9a, 0x46, 0x46, 0xf0, 0xed, 0x8a, 0x27, 0x1f, 0xe8, 0x6b, 0xa5, 0x33, 0xf8, 0xbe, 0x4f, 0xd8, 0x1b, 0xbf, 0x46, 0x74, 0x71, 0x6f, 0x66, 0x8e, 0xfa, 0x89, 0xa4, 0x0c, 0xac, 0x51, 0xee, 0xc2, 0xa6, 0xcf, 0xbd, 0x92, 0x32, 0x7d, 0x25, 0xef, 0xe9, 0x1c, 0xa4, 0xff, 0x71, 0x2b, 0xc5, 0x4a, 0x86, 0xb2, 0xe8, 0xe1, 0x23, 0x78, 0xe6, 0x33, 0xde, 0xc2, 0x69, 0x1e, 0x3b, 0x1e, 0xed, 0x4e, 0x93, 0x2c, 0xc4, 0x8b, 0x28, 0xe4, 0x5f, 0xa3, 0xd4, 0x64, 0xcc, 0x0e, 0x94, 0x8c, 0x02, 0xcc, 0x9d, 0xec, 0xf2, 0xbb, 0x43, 0xb2, 0x59, 0x37, 0xfc, 0xf3, 0x7e, 0x9a, 0xd8, 0x6e, 0xf0, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12674 = { .name = "ecdsa_secp384r1_sha384_12674", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12674_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12674_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12674_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 344 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12675 for ECDSA, tcId is 345 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12675_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12675_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12675_sig[] = { 0x15, 0xaa, 0xc6, 0xc0, 0xf4, 0x35, 0xcb, 0x66, 0x2d, 0x11, 0x0d, 0xb5, 0xcf, 0x68, 0x6c, 0xae, 0xe5, 0x3c, 0x64, 0xfe, 0x2d, 0x6d, 0x60, 0x0a, 0x83, 0xeb, 0xe5, 0x05, 0xa0, 0xe6, 0xfc, 0x62, 0xdc, 0x57, 0x05, 0x16, 0x04, 0x77, 0xc4, 0x75, 0x28, 0xc8, 0xc9, 0x03, 0xfa, 0x86, 0x5b, 0x5d, 0x7f, 0x94, 0xdd, 0xc0, 0x1a, 0x60, 0x3f, 0x9b, 0xec, 0x5d, 0x10, 0xc9, 0xf2, 0xc8, 0x9f, 0xb2, 0x3b, 0x3f, 0xfa, 0xb6, 0xb2, 0xb6, 0x8d, 0x0f, 0x04, 0x33, 0x6d, 0x49, 0x90, 0x85, 0xe3, 0x2d, 0x22, 0xbf, 0x3a, 0xb6, 0x7a, 0x49, 0xa7, 0x4c, 0x74, 0x3f, 0x72, 0x47, 0x31, 0x72, 0xb5, 0x9f, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12675 = { .name = "ecdsa_secp384r1_sha384_12675", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12675_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12675_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12675_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 345 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12676 for ECDSA, tcId is 346 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12676_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12676_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12676_sig[] = { 0x90, 0xb9, 0x5a, 0x7d, 0x19, 0x4b, 0x73, 0x49, 0x8f, 0xba, 0x5a, 0xfc, 0x95, 0xc1, 0xae, 0xa9, 0xbe, 0x07, 0x31, 0x62, 0xa9, 0xed, 0xc5, 0x7c, 0x4d, 0x12, 0xf4, 0x59, 0xf0, 0xa1, 0x73, 0x0b, 0xaf, 0x2f, 0x87, 0xd7, 0xd6, 0x62, 0x4a, 0xea, 0x7b, 0x93, 0x1e, 0xc5, 0x33, 0x70, 0xfe, 0x47, 0xcb, 0xc1, 0xef, 0x47, 0x0e, 0x66, 0x60, 0x10, 0x60, 0x4c, 0x60, 0x93, 0x84, 0xb8, 0x72, 0xdb, 0x7f, 0xa7, 0xb8, 0xa5, 0xa9, 0xf2, 0x0f, 0xde, 0xfd, 0x65, 0x6b, 0xe2, 0xfc, 0xc7, 0x5d, 0xb5, 0x39, 0x48, 0x10, 0x2f, 0x7a, 0xb2, 0x03, 0xea, 0x18, 0x60, 0xa6, 0xa3, 0x2a, 0xf2, 0x46, 0xa1, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12676 = { .name = "ecdsa_secp384r1_sha384_12676", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12676_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12676_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12676_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 346 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12677 for ECDSA, tcId is 347 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) static const unsigned char ecdsa_secp384r1_sha384_12677_pubkey[] = { 0xfb, 0x01, 0xba, 0xad, 0x5f, 0x0b, 0x8f, 0x79, 0xb9, 0xcd, 0x10, 0x4d, 0x12, 0xaa, 0xb9, 0x31, 0x01, 0x46, 0xad, 0xd7, 0xd6, 0xb4, 0xc0, 0x22, 0xd8, 0x7a, 0xe6, 0x71, 0x11, 0x78, 0xb9, 0x4d, 0x61, 0x8c, 0xa7, 0xb3, 0xaf, 0x13, 0x85, 0x4b, 0x1c, 0x58, 0x88, 0x79, 0xe8, 0x77, 0xb3, 0x36, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x74, 0xc0, 0xa5, 0x2c, 0x4c, 0x6c, 0x85, 0x33, 0x62, 0x9f, 0x93, 0x3a, 0x13, 0x13, 0x54, 0xb5, 0x8f, 0xe0, 0x8a, 0x12, 0xbd, 0x6a, 0x81, 0x5b, 0x28, 0x7a, 0x71, 0xcc, 0x0a, 0x3d, 0x92, 0x95, 0x1d, 0xf5, 0x63, 0x33, 0x25, 0xa9, 0x67, 0x98, 0xff, 0x29, 0x4b, }; static const unsigned char ecdsa_secp384r1_sha384_12677_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp384r1_sha384_12677_sig[] = { 0xdd, 0x43, 0x91, 0xce, 0x75, 0x57, 0xcb, 0xd0, 0x05, 0xe3, 0xd5, 0xd7, 0x27, 0xcd, 0x26, 0x43, 0x99, 0xdc, 0xc3, 0xc6, 0x50, 0x1e, 0x45, 0x47, 0x50, 0x5b, 0x6d, 0x57, 0xb4, 0x0b, 0xbf, 0x0a, 0x7f, 0xac, 0x79, 0x4d, 0xcc, 0x8d, 0x42, 0x33, 0x15, 0x9d, 0xd0, 0xaa, 0x40, 0xd4, 0xe0, 0xb9, 0xa7, 0x7f, 0xa1, 0x37, 0x4f, 0xd6, 0x0a, 0xa9, 0x16, 0x00, 0x91, 0x22, 0x00, 0xfc, 0x83, 0xc6, 0xaa, 0x44, 0x7f, 0x81, 0x71, 0xec, 0xea, 0x72, 0xae, 0x32, 0x2d, 0xf3, 0x2d, 0xcc, 0xd6, 0x89, 0x51, 0xdc, 0x5c, 0xaf, 0x6c, 0x50, 0x38, 0x0e, 0x40, 0x0e, 0x45, 0xbf, 0x5c, 0x0e, 0x62, 0x6b, }; static const wycheproof_ecdsa_test ecdsa_secp384r1_sha384_12677 = { .name = "ecdsa_secp384r1_sha384_12677", .sig_alg = ECDSA, .hash = SHA384, .curve = &secp384r1_str_params, .pubkey = ecdsa_secp384r1_sha384_12677_pubkey, .pubkeylen = 96, .msg = ecdsa_secp384r1_sha384_12677_msg, .msglen = 7, .sig = ecdsa_secp384r1_sha384_12677_sig, .siglen = 96, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 347 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) */ /* Test 12678 for ECDSA, tcId is 348 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12678_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12678_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12678_sig[] = { 0x01, 0x1c, 0x96, 0x84, 0xaf, 0x6d, 0xc5, 0x27, 0x28, 0x41, 0x04, 0x73, 0xc6, 0x30, 0x53, 0xb0, 0x1c, 0x35, 0x8d, 0x67, 0xe8, 0x1f, 0x8a, 0x13, 0x24, 0xad, 0x71, 0x1c, 0x60, 0x48, 0x1a, 0x4a, 0x86, 0xdd, 0x3e, 0x75, 0xde, 0x20, 0xca, 0x55, 0xce, 0x7a, 0x9a, 0x39, 0xb1, 0xf8, 0x2f, 0xd5, 0xda, 0x4f, 0xad, 0xf2, 0x6a, 0x5b, 0xb8, 0xed, 0xd4, 0x67, 0xaf, 0x88, 0x25, 0xef, 0xe4, 0x74, 0x62, 0x18, 0x00, 0x34, 0xc0, 0x58, 0xab, 0xa6, 0x48, 0x8d, 0x69, 0x43, 0xe1, 0x1e, 0x0d, 0x13, 0x48, 0x42, 0x94, 0x49, 0xea, 0x17, 0xac, 0x5e, 0xdf, 0x8b, 0xca, 0xf6, 0x54, 0x10, 0x6b, 0x98, 0xb2, 0xdd, 0xf3, 0x46, 0xc5, 0x37, 0xb8, 0xa9, 0xa3, 0xf9, 0xb3, 0x17, 0x4b, 0x77, 0x63, 0x7d, 0x22, 0x0e, 0xf5, 0x31, 0x8d, 0xbb, 0xc3, 0x3d, 0x0a, 0xac, 0x0f, 0xe2, 0xdd, 0xed, 0xa1, 0x7b, 0x23, 0xcb, 0x2d, 0xe6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12678 = { .name = "ecdsa_secp521r1_sha512_12678", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12678_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12678_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12678_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 348 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12679 for ECDSA, tcId is 349 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12679_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12679_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12679_sig[] = { 0x00, 0x7c, 0x47, 0xa6, 0x68, 0x62, 0x56, 0x48, 0xcd, 0x8a, 0x31, 0xac, 0x92, 0x17, 0x4c, 0xf3, 0xd6, 0x10, 0x41, 0xf7, 0xad, 0x29, 0x25, 0x88, 0xde, 0xf6, 0xed, 0x14, 0x3b, 0x1f, 0xf9, 0xa2, 0x88, 0xfd, 0x20, 0xcf, 0x36, 0xf5, 0x8d, 0x4b, 0xfe, 0x4b, 0x2c, 0xd4, 0xa3, 0x81, 0xd4, 0xda, 0x50, 0xc8, 0xed, 0xa5, 0x67, 0x4f, 0x02, 0x04, 0x49, 0xae, 0x1d, 0x3d, 0xd7, 0x7e, 0x44, 0xed, 0x48, 0x5e, 0x01, 0x05, 0x8e, 0x86, 0xb3, 0x27, 0xd2, 0x84, 0xe3, 0x5b, 0xab, 0x49, 0xfc, 0x7c, 0x33, 0x54, 0x17, 0x57, 0x3f, 0x31, 0x0a, 0xfa, 0x9e, 0x1a, 0x53, 0x56, 0x6e, 0x0f, 0xae, 0x51, 0x6e, 0x09, 0x90, 0x07, 0x96, 0x50, 0x30, 0xf6, 0xf4, 0x6b, 0x07, 0x71, 0x16, 0x35, 0x3f, 0x26, 0xcb, 0x46, 0x6d, 0x1c, 0xf3, 0xf3, 0x53, 0x00, 0xd7, 0x44, 0xd2, 0xd8, 0xf8, 0x83, 0xc8, 0xa3, 0x1b, 0x43, 0xc2, 0x0d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12679 = { .name = "ecdsa_secp521r1_sha512_12679", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12679_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12679_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12679_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 349 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12680 for ECDSA, tcId is 350 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12680_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9b, 0x98, 0xbf, 0xd3, 0x33, 0x98, 0xc2, 0xcf, 0x86, 0x06, 0xfc, 0x0a, 0xe4, 0x68, 0xb6, 0xd6, 0x17, 0xcc, 0xb3, 0xe7, 0x04, 0xaf, 0x3b, 0x85, 0x06, 0x64, 0x2a, 0x77, 0x5d, 0x5b, 0x4d, 0xa9, 0xd0, 0x02, 0x09, 0x36, 0x4a, 0x9f, 0x0a, 0x4a, 0xd7, 0x7c, 0xba, 0xc6, 0x04, 0xa0, 0x15, 0xc9, 0x7e, 0x6b, 0x5a, 0x18, 0x84, 0x4a, 0x58, 0x9a, 0x4f, 0x1c, 0x7d, 0x96, 0x25, }; static const unsigned char ecdsa_secp521r1_sha512_12680_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12680_sig[] = { 0x01, 0xe4, 0xe9, 0xf3, 0xa7, 0xb8, 0x00, 0xde, 0x63, 0x40, 0x7b, 0x87, 0x03, 0xac, 0x54, 0x52, 0x26, 0x54, 0x1c, 0x97, 0xa6, 0x73, 0x56, 0x67, 0x11, 0xf7, 0x0e, 0x2b, 0x9c, 0xcb, 0x21, 0xa1, 0x45, 0xad, 0x46, 0x37, 0x82, 0x5b, 0x02, 0x3d, 0x1e, 0xa9, 0xf1, 0x8e, 0x60, 0x89, 0x74, 0x13, 0x71, 0x16, 0x11, 0xa8, 0x5c, 0x11, 0x79, 0xbf, 0xf9, 0xc1, 0x07, 0x36, 0x8f, 0x1c, 0x1b, 0x61, 0xc2, 0x4c, 0x01, 0xde, 0x94, 0x8e, 0xe5, 0x77, 0xc3, 0xd4, 0xe4, 0x12, 0x2a, 0x52, 0xec, 0xcc, 0xac, 0x59, 0xab, 0xb6, 0xfa, 0x93, 0x7d, 0xfb, 0x3e, 0x4b, 0x98, 0x8c, 0xb2, 0x43, 0xef, 0xe9, 0x87, 0x40, 0x30, 0x94, 0x52, 0xba, 0x01, 0x31, 0x12, 0xb2, 0x25, 0xb3, 0xb1, 0xb1, 0x38, 0x4d, 0x5f, 0x68, 0x79, 0x68, 0x45, 0x19, 0x9a, 0x26, 0x02, 0xa8, 0xd4, 0x50, 0x5a, 0x33, 0x1b, 0x07, 0xd1, 0x01, 0x18, 0x8e, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12680 = { .name = "ecdsa_secp521r1_sha512_12680", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12680_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12680_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12680_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 350 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12681 for ECDSA, tcId is 351 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12681_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12681_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12681_sig[] = { 0x00, 0xb6, 0xcf, 0x64, 0x86, 0x1a, 0x2b, 0x16, 0xe3, 0x39, 0x76, 0x09, 0x5d, 0xbf, 0x45, 0xa5, 0x92, 0xc7, 0xc2, 0x42, 0x28, 0xc4, 0xa1, 0xdd, 0x72, 0x7f, 0x30, 0x3d, 0x5e, 0xeb, 0x87, 0xe5, 0x38, 0x8a, 0xd0, 0x5c, 0x32, 0x8f, 0x82, 0x4c, 0x40, 0xab, 0xd3, 0xe6, 0xce, 0x00, 0x3f, 0xef, 0x5c, 0xd5, 0x9d, 0xee, 0x00, 0x69, 0xad, 0x63, 0x48, 0xea, 0x6e, 0x57, 0xf9, 0x0f, 0x6b, 0xdc, 0x0a, 0x82, 0x00, 0x22, 0x81, 0x81, 0xc1, 0x80, 0x36, 0x6e, 0x54, 0x51, 0xdf, 0xef, 0x35, 0x93, 0xce, 0x66, 0x48, 0x04, 0xcb, 0x42, 0xd5, 0xa8, 0xd5, 0x04, 0x6b, 0x81, 0x6b, 0x3d, 0xaf, 0x66, 0x02, 0xfa, 0xfd, 0x9a, 0xc2, 0xdc, 0x24, 0xb8, 0xc9, 0x3a, 0x10, 0x02, 0x44, 0x80, 0x88, 0x25, 0x58, 0xb6, 0xad, 0x3d, 0x9e, 0x90, 0x59, 0x23, 0xdc, 0xd0, 0xfd, 0x2a, 0x11, 0x96, 0x47, 0x54, 0xa9, 0xb4, 0x6b, 0x8f, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12681 = { .name = "ecdsa_secp521r1_sha512_12681", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12681_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12681_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12681_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 351 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12682 for ECDSA, tcId is 352 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12682_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12682_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12682_sig[] = { 0x00, 0x93, 0xc8, 0xf7, 0x66, 0x82, 0x7d, 0x6d, 0xc1, 0x5c, 0x81, 0x0f, 0xa3, 0x04, 0x33, 0x15, 0x3a, 0x5e, 0x74, 0x28, 0x59, 0x20, 0x5e, 0xe8, 0x38, 0x9f, 0xbf, 0x69, 0x5c, 0x88, 0x40, 0xdc, 0x91, 0x74, 0x40, 0x87, 0x0a, 0xcc, 0x5b, 0x16, 0x00, 0x87, 0xff, 0xd0, 0xcd, 0x9a, 0x60, 0x81, 0x02, 0x9c, 0x60, 0xa7, 0xc2, 0x6d, 0x5e, 0x8a, 0xa9, 0xa0, 0x57, 0x0f, 0x4e, 0xfd, 0xeb, 0x13, 0xde, 0xa2, 0x01, 0x2e, 0xc3, 0xbb, 0xf7, 0x5a, 0x0a, 0xd3, 0xdf, 0x40, 0x31, 0x02, 0x66, 0x64, 0x8a, 0x36, 0xdb, 0x82, 0x02, 0x17, 0xed, 0x7f, 0xa9, 0x4e, 0x9c, 0x83, 0x13, 0xe0, 0x32, 0x93, 0xef, 0x4f, 0x6a, 0x40, 0xe7, 0x36, 0xfb, 0x8f, 0x20, 0x8a, 0xd8, 0xfb, 0x88, 0x3c, 0xa5, 0x09, 0xd4, 0x80, 0x46, 0x91, 0x05, 0x23, 0x64, 0x54, 0x59, 0xc2, 0x78, 0x29, 0xd5, 0x44, 0x31, 0x46, 0x3b, 0x25, 0x48, 0xc7, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12682 = { .name = "ecdsa_secp521r1_sha512_12682", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12682_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12682_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12682_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 352 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12683 for ECDSA, tcId is 353 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12683_pubkey[] = { 0x00, 0x30, 0x4b, 0x3d, 0x07, 0x1e, 0xd1, 0xef, 0x30, 0x23, 0x91, 0xb5, 0x66, 0xaf, 0x8c, 0x9d, 0x1c, 0xb7, 0xaf, 0xe9, 0xaa, 0xbc, 0x14, 0x1a, 0xc3, 0x9a, 0xb3, 0x96, 0x76, 0xc6, 0x3e, 0x48, 0xc1, 0xb2, 0xc6, 0x45, 0x1e, 0xb4, 0x60, 0xe4, 0x52, 0xbd, 0x57, 0x3e, 0x1f, 0xb5, 0xf1, 0x5b, 0x8e, 0x5f, 0x9c, 0x03, 0xf6, 0x34, 0xd8, 0xdb, 0x68, 0x97, 0x28, 0x50, 0x64, 0xb3, 0xce, 0x9b, 0xd9, 0x8a, 0x01, 0xff, 0xff, 0xff, 0xff, 0x64, 0x67, 0x40, 0x2c, 0xcc, 0x67, 0x3d, 0x30, 0x79, 0xf9, 0x03, 0xf5, 0x1b, 0x97, 0x49, 0x29, 0xe8, 0x33, 0x4c, 0x18, 0xfb, 0x50, 0xc4, 0x7a, 0xf9, 0x9b, 0xd5, 0x88, 0xa2, 0xa4, 0xb2, 0x56, 0x2f, 0xfd, 0xf6, 0xc9, 0xb5, 0x60, 0xf5, 0xb5, 0x28, 0x83, 0x45, 0x39, 0xfb, 0x5f, 0xea, 0x36, 0x81, 0x94, 0xa5, 0xe7, 0x7b, 0xb5, 0xa7, 0x65, 0xb0, 0xe3, 0x82, 0x69, 0xda, }; static const unsigned char ecdsa_secp521r1_sha512_12683_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12683_sig[] = { 0x01, 0x52, 0x38, 0x8c, 0x6d, 0xa6, 0x61, 0x64, 0xb7, 0x06, 0xb4, 0x1d, 0xd4, 0xdd, 0x48, 0x17, 0x6d, 0x6e, 0xaf, 0x65, 0x25, 0xf8, 0x76, 0xef, 0x0f, 0xf2, 0xd1, 0x47, 0xf6, 0x96, 0x6e, 0xbf, 0xad, 0xf1, 0x76, 0x7f, 0xa6, 0x6d, 0x04, 0x20, 0x3d, 0x3e, 0xc9, 0xc9, 0x37, 0xa1, 0xf0, 0xc9, 0x45, 0xae, 0xd9, 0x53, 0xe3, 0x4b, 0xe4, 0x44, 0xc2, 0x19, 0xfd, 0x3b, 0x94, 0xd3, 0x27, 0x7a, 0xa6, 0x52, 0x01, 0x65, 0x8c, 0x1e, 0x5b, 0x2e, 0x56, 0x3a, 0x49, 0xd1, 0x1c, 0x88, 0x3d, 0x05, 0xc4, 0x91, 0xd6, 0x28, 0xf0, 0xa9, 0x2c, 0x3e, 0x3d, 0xc8, 0xdb, 0x9a, 0x4c, 0x8d, 0x5f, 0x0d, 0xc8, 0x46, 0xac, 0x22, 0xaf, 0x8b, 0x3c, 0x5f, 0xb5, 0xbb, 0xe2, 0xcf, 0xa9, 0x86, 0x14, 0xdc, 0xff, 0xd8, 0x7d, 0xe1, 0xce, 0xe2, 0xc5, 0x91, 0x2a, 0x58, 0x99, 0x50, 0x5a, 0x0c, 0x5b, 0xca, 0xa5, 0x13, 0xe2, 0xc6, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12683 = { .name = "ecdsa_secp521r1_sha512_12683", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12683_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12683_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12683_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 353 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12684 for ECDSA, tcId is 354 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12684_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12684_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12684_sig[] = { 0x01, 0x0e, 0x89, 0x47, 0x0f, 0x98, 0x1d, 0x2c, 0x7c, 0x5c, 0x96, 0x58, 0x71, 0x21, 0xa6, 0x73, 0x23, 0xbb, 0x96, 0xff, 0x24, 0x27, 0x73, 0x9d, 0x0d, 0x88, 0x5e, 0xa2, 0x77, 0x29, 0x3e, 0xfa, 0x3b, 0x25, 0xc0, 0xbd, 0xa0, 0x4d, 0x81, 0x46, 0x61, 0x98, 0xa3, 0xcb, 0xfc, 0x44, 0x1f, 0x1b, 0x1b, 0x98, 0xf6, 0xbc, 0xdc, 0x25, 0x89, 0xd9, 0xd9, 0x1a, 0x17, 0xa7, 0x89, 0x9f, 0x70, 0xd0, 0x46, 0x1e, 0x01, 0x73, 0x51, 0xb0, 0xda, 0x8c, 0x8d, 0x0e, 0x4a, 0xa0, 0x97, 0x46, 0x69, 0xd1, 0x90, 0xfa, 0x2f, 0x90, 0xaa, 0x50, 0x22, 0x71, 0x60, 0x59, 0x4d, 0xfb, 0x55, 0x75, 0x50, 0x02, 0x36, 0x54, 0x41, 0xde, 0x17, 0xea, 0x42, 0x90, 0x21, 0x28, 0xa6, 0xf8, 0x1e, 0x55, 0x41, 0x77, 0xed, 0x50, 0x9c, 0x0c, 0xec, 0x31, 0xfd, 0x50, 0x53, 0xfa, 0xe0, 0x3f, 0x62, 0xff, 0x76, 0x57, 0x9b, 0xa9, 0x2b, 0xda, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12684 = { .name = "ecdsa_secp521r1_sha512_12684", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12684_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12684_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12684_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 354 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12685 for ECDSA, tcId is 355 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12685_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12685_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12685_sig[] = { 0x01, 0x10, 0x94, 0xac, 0x23, 0xca, 0x46, 0xa3, 0xe2, 0xb4, 0xac, 0x3b, 0xaa, 0xe6, 0x50, 0x4f, 0x1b, 0xfb, 0x3d, 0xdf, 0x2d, 0xb9, 0xab, 0x40, 0xed, 0xa3, 0x2d, 0x8e, 0x0a, 0x05, 0x72, 0x79, 0x98, 0xf8, 0x55, 0x2a, 0x03, 0x3b, 0xb0, 0x52, 0x41, 0xe8, 0x26, 0xa8, 0x6a, 0x1d, 0x03, 0x01, 0x4e, 0xae, 0x3a, 0xa5, 0xfe, 0x1a, 0x45, 0xca, 0xac, 0x1d, 0xb3, 0xe8, 0x13, 0x8b, 0x9c, 0xf5, 0x90, 0x68, 0x01, 0x47, 0xed, 0xb1, 0x5a, 0x50, 0x80, 0xee, 0x2f, 0x92, 0x9f, 0x78, 0xb6, 0xac, 0x86, 0x60, 0x4a, 0xae, 0x51, 0xb6, 0x74, 0xfa, 0x46, 0xea, 0xae, 0x7f, 0xdf, 0xd9, 0x0b, 0xf6, 0x4d, 0x61, 0x89, 0x34, 0x11, 0x55, 0xf4, 0xeb, 0xa9, 0x37, 0xea, 0xe7, 0x4c, 0x9e, 0x48, 0x0e, 0xb4, 0xfb, 0x7e, 0x6a, 0xaf, 0xd4, 0x28, 0x5e, 0x7f, 0xc5, 0x03, 0xee, 0x6e, 0xc2, 0x0f, 0x0b, 0x14, 0x15, 0xbe, 0x06, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12685 = { .name = "ecdsa_secp521r1_sha512_12685", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12685_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12685_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12685_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 355 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12686 for ECDSA, tcId is 356 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12686_pubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x02, 0xfb, 0xa6, 0xa0, 0x61, 0x20, 0x1e, 0xa6, 0xb1, 0xed, 0x42, 0x65, 0x16, 0x35, 0x68, 0x73, 0x5e, 0xba, 0xb7, 0x86, 0x00, 0xcd, 0xf6, 0xa7, 0x11, 0x01, 0xdc, 0x63, 0xbe, 0xaf, 0x54, 0x6d, 0x97, 0xa2, 0x14, 0xfc, 0x63, 0x96, 0x79, 0x3b, 0x01, 0x4e, 0xb1, 0xaa, 0x7a, 0x72, 0x8f, 0x53, 0xde, 0xb2, 0xff, 0x99, 0x99, 0xa3, 0x80, 0x8d, 0xdf, 0xed, 0x15, 0xe9, 0x62, 0x9b, 0x01, 0x99, 0x38, 0x52, 0xda, 0xdc, 0x39, 0x29, 0x9a, 0x5a, 0x45, 0xb6, 0xbd, 0x7c, 0x8d, 0xc8, 0xec, 0x67, 0xe7, 0xad, 0xbb, 0x35, 0x9f, 0xa8, 0xfa, 0x5d, 0x44, 0x97, 0x7e, 0x15, 0xe2, 0xe5, 0xa9, 0xac, 0xf0, 0xc3, 0x36, 0x45, 0xf3, 0xf2, 0xc6, 0x8c, 0x52, 0x6e, 0x07, 0x73, 0x2f, 0xb3, 0x50, 0x43, 0x71, 0x9c, 0xfa, 0xfc, 0x16, 0x06, 0x3c, 0x8e, 0x58, 0x85, 0x0a, 0x95, 0x84, 0x36, 0xa4, 0xe5, }; static const unsigned char ecdsa_secp521r1_sha512_12686_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12686_sig[] = { 0x01, 0xd8, 0x76, 0xae, 0x17, 0x4d, 0xa3, 0x1e, 0x12, 0x8b, 0xab, 0xff, 0x9f, 0x1d, 0x15, 0x50, 0x76, 0x60, 0xbd, 0xc7, 0x95, 0x87, 0x50, 0x84, 0x4d, 0xc4, 0xf4, 0x29, 0x1f, 0x75, 0xa8, 0x82, 0xa2, 0x2f, 0x17, 0x7f, 0x70, 0x4b, 0xe6, 0x06, 0x7b, 0xf7, 0xce, 0x8f, 0x06, 0xb8, 0x62, 0x6d, 0x97, 0x1e, 0x6e, 0xf5, 0xdc, 0xb6, 0x66, 0xfa, 0x97, 0x5c, 0x1e, 0x11, 0x12, 0x6e, 0x04, 0xfc, 0xcc, 0xe2, 0x01, 0xab, 0xb1, 0x26, 0x30, 0xa6, 0x8b, 0x66, 0x9e, 0x6a, 0xd2, 0xd8, 0xd6, 0x26, 0x54, 0xd7, 0x5d, 0xfb, 0xc6, 0xb5, 0x4a, 0x8e, 0x3a, 0x9c, 0x91, 0x5b, 0xe6, 0x63, 0xe0, 0x80, 0xdd, 0xcc, 0x34, 0x8e, 0x57, 0xa1, 0x0e, 0x2b, 0x1d, 0xd9, 0xf0, 0x3e, 0x1b, 0x89, 0x77, 0x96, 0xad, 0x88, 0x9b, 0x07, 0x5e, 0x59, 0x19, 0xdc, 0x5b, 0xf3, 0x7a, 0x11, 0x2d, 0x92, 0xc6, 0x93, 0x45, 0x6e, 0x64, 0x57, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12686 = { .name = "ecdsa_secp521r1_sha512_12686", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12686_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12686_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12686_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is small, tcId is 356 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12687 for ECDSA, tcId is 357 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12687_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12687_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12687_sig[] = { 0x00, 0x4e, 0xd6, 0x92, 0xaf, 0x1e, 0xd1, 0xb4, 0xbd, 0x5c, 0xea, 0x3a, 0xa8, 0xdd, 0xc6, 0xf3, 0xf1, 0x5d, 0x8a, 0x6e, 0xe0, 0x01, 0x6f, 0xa0, 0xe8, 0xeb, 0x95, 0x85, 0x80, 0xe7, 0x42, 0x18, 0x32, 0xec, 0xc0, 0xe3, 0x87, 0xc3, 0x4a, 0xaf, 0xac, 0x63, 0x80, 0xba, 0xc4, 0x19, 0xea, 0x45, 0xc4, 0x2a, 0xe6, 0x42, 0x6a, 0xf5, 0x03, 0x84, 0x7f, 0x22, 0xc4, 0x9c, 0x2f, 0x45, 0x63, 0x38, 0xc1, 0xa7, 0x00, 0x7a, 0xce, 0xad, 0xde, 0x02, 0xac, 0xe1, 0x66, 0x8b, 0xc1, 0xa3, 0x36, 0x0d, 0x34, 0xe1, 0x25, 0xaf, 0xde, 0x23, 0x0f, 0x53, 0x6c, 0x15, 0x4d, 0x91, 0xe6, 0xc8, 0x76, 0xbe, 0xe1, 0xd3, 0x4a, 0xe0, 0x6e, 0xdc, 0xbb, 0xca, 0x0c, 0x7c, 0xd1, 0x76, 0x46, 0x84, 0x09, 0x13, 0x16, 0x47, 0x40, 0xb1, 0x2e, 0x2e, 0x22, 0x4f, 0xe3, 0xef, 0x3d, 0xec, 0x6f, 0xd8, 0x4a, 0x81, 0xb5, 0x81, 0xc1, 0x88, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12687 = { .name = "ecdsa_secp521r1_sha512_12687", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12687_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12687_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12687_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 357 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12688 for ECDSA, tcId is 358 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12688_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12688_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12688_sig[] = { 0x00, 0xe0, 0x10, 0x94, 0x04, 0x8f, 0xcf, 0x7a, 0x1e, 0x2e, 0xc6, 0x6f, 0xae, 0xdf, 0xfc, 0x40, 0xf4, 0x8c, 0x9c, 0x93, 0x51, 0x43, 0x25, 0xbd, 0xe6, 0xb4, 0x95, 0x8d, 0x80, 0xf0, 0x41, 0x3e, 0xfd, 0xe7, 0xee, 0xc1, 0xdc, 0x6d, 0xe6, 0x5f, 0x96, 0x00, 0x9c, 0x06, 0x93, 0x97, 0xe5, 0x1d, 0xa2, 0xeb, 0x17, 0x29, 0xef, 0xa2, 0x87, 0xaf, 0xd5, 0x55, 0x2b, 0x25, 0xa9, 0xe4, 0x27, 0xa6, 0xd8, 0x36, 0x01, 0x48, 0x9e, 0x7e, 0x12, 0x4f, 0x66, 0x94, 0x2e, 0x64, 0x2d, 0xe9, 0x92, 0xe6, 0x0b, 0x3a, 0x86, 0xfc, 0xce, 0x57, 0x67, 0x67, 0x71, 0x93, 0x90, 0xc3, 0xa3, 0x12, 0xfc, 0xde, 0xaa, 0x56, 0x0a, 0x7f, 0xbb, 0x0c, 0xab, 0xb3, 0x5e, 0x05, 0xa6, 0xd6, 0xf3, 0x49, 0x91, 0x60, 0xfd, 0x2d, 0xba, 0x12, 0xd2, 0x9b, 0x61, 0x3b, 0x16, 0xde, 0xc7, 0x49, 0x4c, 0x95, 0x0d, 0x65, 0xfd, 0xf1, 0x1f, 0xa3, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12688 = { .name = "ecdsa_secp521r1_sha512_12688", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12688_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12688_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12688_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 358 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12689 for ECDSA, tcId is 359 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12689_pubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfe, 0x1d, 0x5d, 0x52, 0xb3, 0x1c, 0xa5, 0x2f, 0x89, 0x47, 0xa3, 0x55, 0x93, 0xed, 0xf1, 0x64, 0xcd, 0x32, 0x4f, 0x83, 0x3b, 0x90, 0x93, 0x58, 0x46, 0xc6, 0x4d, 0xb1, 0x45, 0x4d, 0xf9, 0xf0, 0x28, 0xdc, 0x8b, 0xc3, 0x6b, 0xb0, 0x4c, 0xb7, 0xf0, 0xcc, 0xec, 0xeb, 0xa0, 0x1a, 0x38, 0x44, 0x09, 0x7f, 0x7c, 0x35, 0xee, 0xaa, 0x81, 0x42, 0x8d, 0xb0, 0xcc, 0xa6, 0x33, 0x31, 0x01, 0xb7, 0xc7, 0x02, 0x77, 0xd0, 0xbf, 0x78, 0xa3, 0xc7, 0xb6, 0x2c, 0x93, 0x7f, 0x0c, 0xb2, 0xca, 0xd2, 0x56, 0x5f, 0x55, 0x14, 0xf6, 0x20, 0x5c, 0xeb, 0x1a, 0x19, 0x3d, 0x4f, 0xdb, 0x45, 0xba, 0x6e, 0x6c, 0xec, 0x07, 0x82, 0x7b, 0xae, 0x0b, 0x16, 0xb8, 0x31, 0x6c, 0x35, 0x39, 0xa1, 0x51, 0x14, 0xd0, 0xde, 0x6d, 0x2d, 0xe4, 0x07, 0xfd, 0x71, 0x17, 0x55, 0x1a, 0x70, 0x82, 0x6e, 0xad, 0xa6, }; static const unsigned char ecdsa_secp521r1_sha512_12689_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12689_sig[] = { 0x01, 0xd2, 0x96, 0x29, 0x22, 0x13, 0x38, 0x0d, 0xe1, 0x33, 0xdc, 0x66, 0xec, 0xeb, 0x8b, 0xd8, 0x57, 0xa5, 0xc4, 0x68, 0xaf, 0xe8, 0x55, 0xc0, 0x5d, 0xa9, 0xdb, 0x93, 0x73, 0x73, 0xb5, 0x1f, 0x90, 0x20, 0xca, 0x11, 0x35, 0x34, 0x15, 0xda, 0x76, 0xbb, 0x6a, 0xf9, 0x97, 0xa4, 0x86, 0xd2, 0x37, 0x0e, 0x31, 0xad, 0xcc, 0x0a, 0x45, 0x31, 0x95, 0x2a, 0x3b, 0x59, 0x42, 0x86, 0x78, 0xee, 0x59, 0x43, 0x01, 0x59, 0x79, 0xa3, 0xc6, 0x09, 0xc2, 0xc2, 0x09, 0x9a, 0xe1, 0xb2, 0x90, 0xda, 0x3d, 0x61, 0x3b, 0x24, 0x8e, 0x3a, 0x10, 0xde, 0x7a, 0xd7, 0x70, 0xdf, 0xfc, 0x82, 0xfb, 0x33, 0xe7, 0x4f, 0xc3, 0x20, 0x75, 0x33, 0xf9, 0x72, 0x85, 0xcf, 0x45, 0x57, 0xa6, 0x40, 0x7e, 0x9a, 0x77, 0x5e, 0x59, 0xef, 0xea, 0xee, 0x42, 0x64, 0xb2, 0x63, 0x49, 0x33, 0xa6, 0xba, 0xf8, 0xc4, 0x06, 0xf0, 0xc4, 0xa9, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12689 = { .name = "ecdsa_secp521r1_sha512_12689", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12689_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12689_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12689_sig, .siglen = 132, .result = 1, .comment = "x-coordinate of the public key is large, tcId is 359 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12690 for ECDSA, tcId is 360 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12690_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12690_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12690_sig[] = { 0x01, 0xef, 0x8f, 0x78, 0x5c, 0x51, 0xa2, 0x5a, 0xe2, 0xcd, 0x93, 0x48, 0x7b, 0x5c, 0x84, 0x8d, 0x4a, 0xf1, 0x33, 0x21, 0x7a, 0x91, 0xf5, 0x13, 0x59, 0xc9, 0x66, 0xe7, 0x53, 0x8e, 0x68, 0x74, 0x35, 0x78, 0x12, 0x2d, 0xf5, 0x83, 0x00, 0x02, 0xf9, 0x6f, 0x6f, 0xad, 0xb5, 0xbc, 0x44, 0x48, 0x0e, 0x3b, 0x3b, 0x2c, 0x80, 0x4e, 0x4c, 0x51, 0xcf, 0x95, 0xd0, 0x59, 0xd5, 0x64, 0x6c, 0x5c, 0xef, 0x21, 0x01, 0xba, 0x22, 0x76, 0xcc, 0x00, 0x3e, 0x87, 0xbe, 0xa3, 0x7c, 0x37, 0x24, 0xe5, 0x8a, 0x0a, 0xb8, 0x85, 0xf5, 0x6d, 0x09, 0xb8, 0xb5, 0x71, 0x8f, 0x67, 0x4f, 0x9c, 0x70, 0xf3, 0xb5, 0xec, 0xfb, 0x4a, 0xd1, 0xf3, 0x41, 0x7b, 0x42, 0x0e, 0xc4, 0x08, 0x10, 0xe0, 0x88, 0x26, 0xef, 0xa7, 0xd8, 0xad, 0x6c, 0xa7, 0xc6, 0xa7, 0x84, 0x03, 0x48, 0x09, 0x7f, 0x92, 0xb2, 0xde, 0x8d, 0x6e, 0x08, 0x0b, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12690 = { .name = "ecdsa_secp521r1_sha512_12690", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12690_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12690_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12690_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 360 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12691 for ECDSA, tcId is 361 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12691_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12691_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12691_sig[] = { 0x01, 0x55, 0x97, 0x8a, 0xdc, 0x4b, 0x57, 0x0d, 0x89, 0x75, 0x11, 0xf5, 0xec, 0xfb, 0x65, 0xa3, 0x19, 0x47, 0xe6, 0xe9, 0x89, 0xda, 0x17, 0xde, 0xa7, 0x16, 0x62, 0x5b, 0xb3, 0xfa, 0x7b, 0x92, 0xb8, 0x53, 0x62, 0x3e, 0xb0, 0xcd, 0x9c, 0xe2, 0xa5, 0xe2, 0xb4, 0xd8, 0xc1, 0xc2, 0xa9, 0x0e, 0xc0, 0x4f, 0xe7, 0x9d, 0x01, 0x25, 0x76, 0xec, 0x72, 0x8a, 0x45, 0xc5, 0xce, 0x47, 0xc6, 0xd5, 0x00, 0xc0, 0x00, 0xf7, 0x9f, 0xa8, 0xb9, 0x4e, 0xe2, 0x82, 0xa3, 0xd1, 0x81, 0x58, 0x92, 0xcb, 0xf1, 0x5d, 0x7e, 0xbd, 0xf6, 0x2c, 0xb0, 0x42, 0xc7, 0x6b, 0xb3, 0xc7, 0x10, 0xc2, 0x3e, 0x32, 0xb7, 0x59, 0x92, 0xcc, 0x24, 0x9d, 0x84, 0x07, 0x21, 0x98, 0xe4, 0xed, 0x63, 0xd7, 0x24, 0x35, 0xa0, 0x7d, 0x2e, 0xd7, 0x6f, 0x27, 0x8d, 0x73, 0x99, 0xf6, 0x1a, 0x5b, 0x5c, 0x99, 0x7f, 0x45, 0x69, 0x2f, 0xed, 0x22, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12691 = { .name = "ecdsa_secp521r1_sha512_12691", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12691_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12691_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12691_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 361 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /* Test 12692 for ECDSA, tcId is 362 in file ecdsa_webcrypto_test.json */ #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) static const unsigned char ecdsa_secp521r1_sha512_12692_pubkey[] = { 0x00, 0xc7, 0xc8, 0x81, 0x7b, 0xf2, 0xf0, 0x65, 0x2a, 0x4a, 0x4b, 0x51, 0x40, 0xc7, 0x73, 0xe2, 0x61, 0x08, 0x0a, 0x0a, 0x11, 0x13, 0x95, 0x85, 0x6e, 0x8a, 0x33, 0x50, 0xf5, 0xeb, 0x56, 0x12, 0xbd, 0x63, 0xb3, 0x67, 0xb9, 0x65, 0xe9, 0x2e, 0x95, 0x38, 0xea, 0x3b, 0x79, 0x08, 0xae, 0xf1, 0xad, 0xe4, 0xb6, 0x8e, 0x17, 0xf9, 0xf9, 0x14, 0x84, 0x95, 0xc1, 0x67, 0xd1, 0xc4, 0xdd, 0x49, 0x13, 0x49, 0x00, 0x08, 0xbf, 0x0b, 0xe2, 0x97, 0x9a, 0xbb, 0x81, 0x11, 0xfd, 0x0d, 0x76, 0x8a, 0xdc, 0xad, 0x77, 0x41, 0x13, 0xa8, 0x22, 0xc1, 0xbb, 0x60, 0x88, 0x70, 0x53, 0xb5, 0xcf, 0x8c, 0x95, 0x63, 0xe7, 0x67, 0x05, 0xa3, 0x91, 0xec, 0xe1, 0x54, 0xb5, 0xdf, 0xb1, 0x14, 0xb2, 0x0e, 0x35, 0x1d, 0xf4, 0x01, 0x4b, 0xec, 0x19, 0xfa, 0x87, 0x72, 0x08, 0x45, 0x80, 0x1c, 0xf0, 0x6b, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdsa_secp521r1_sha512_12692_msg[] = { 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, }; static const unsigned char ecdsa_secp521r1_sha512_12692_sig[] = { 0x01, 0xa2, 0xaf, 0x29, 0xc5, 0x81, 0x84, 0xca, 0x86, 0x1e, 0x7c, 0xd9, 0x31, 0xf3, 0x9c, 0xea, 0x06, 0x4b, 0x19, 0x9e, 0xee, 0x56, 0x3f, 0x24, 0x1c, 0xd5, 0xec, 0xf6, 0xeb, 0xb2, 0xad, 0xe7, 0x28, 0xf1, 0xbe, 0x23, 0xcf, 0x00, 0x7e, 0xbe, 0x8e, 0xf0, 0xc4, 0x2d, 0x99, 0xf9, 0xf5, 0x19, 0x0f, 0x68, 0x15, 0x44, 0x6a, 0xfc, 0x30, 0x43, 0xa8, 0x20, 0xd7, 0xda, 0xf2, 0x7e, 0x86, 0xb8, 0x3b, 0x8a, 0x01, 0xa2, 0xac, 0xd1, 0x82, 0x2e, 0xb5, 0x39, 0x38, 0x3d, 0xef, 0xff, 0x87, 0x69, 0xaa, 0xd8, 0xba, 0xcd, 0x50, 0xcd, 0x24, 0xca, 0x7a, 0xa6, 0x67, 0x06, 0x71, 0x41, 0x81, 0x10, 0x17, 0x78, 0x08, 0xc3, 0xf4, 0xfb, 0xe6, 0x04, 0x1b, 0x9c, 0xb8, 0x98, 0x35, 0x9e, 0xe6, 0x1e, 0x04, 0x82, 0x4a, 0xde, 0xdd, 0x62, 0xb3, 0x9f, 0xe5, 0x79, 0x19, 0x07, 0xa2, 0x05, 0x86, 0x33, 0x3b, 0xd3, 0xc7, 0x6d, }; static const wycheproof_ecdsa_test ecdsa_secp521r1_sha512_12692 = { .name = "ecdsa_secp521r1_sha512_12692", .sig_alg = ECDSA, .hash = SHA512, .curve = &secp521r1_str_params, .pubkey = ecdsa_secp521r1_sha512_12692_pubkey, .pubkeylen = 132, .msg = ecdsa_secp521r1_sha512_12692_msg, .msglen = 7, .sig = ecdsa_secp521r1_sha512_12692_sig, .siglen = 132, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 362 in file ecdsa_webcrypto_test.json", }; #endif /* defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) */ /*****************/ ATTRIBUTE_USED static const wycheproof_ecdsa_test *wycheproof_ecdsa_all_tests[] = { #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_0, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_1, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_2, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_3, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_4, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_5, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_6, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_7, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_8, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_9, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_10, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_11, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_12, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_13, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_14, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_15, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_16, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_17, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_18, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_19, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_20, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_21, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_22, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_23, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_24, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_25, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_26, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_27, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_28, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_29, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_30, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_31, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_32, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_33, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_34, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_35, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_36, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_37, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_38, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_39, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_40, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_41, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_42, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_43, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_44, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_45, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_46, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_47, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_48, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_49, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_50, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_51, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_52, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_53, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_54, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_55, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_56, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_57, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_58, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_59, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_60, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_61, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_62, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_63, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_64, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_65, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_66, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_67, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_68, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_69, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_70, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_71, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_72, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_73, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_74, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_75, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_76, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_77, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_78, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_79, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_80, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_81, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_82, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_83, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_84, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_85, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_86, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_87, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_88, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_89, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_90, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_91, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_92, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_93, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_94, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_95, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_96, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_97, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_98, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_99, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA224) &ecdsa_brainpoolp224r1_sha224_424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_1403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_1950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_1999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_2582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_2999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_3000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_3001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_3478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_224) &ecdsa_secp224r1_sha3_224_3738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_3999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp224r1_sha3_256_4007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp224r1_sha3_512_4341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA512) &ecdsa_secp224r1_sha512_4956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_4999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_5423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256k1_sha3_256_5687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_5999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256k1_sha3_512_6017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA512) &ecdsa_secp256k1_sha512_6624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_6999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_7106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_256) &ecdsa_secp256r1_sha3_256_7377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp256r1_sha3_512_7714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_7999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA512) &ecdsa_secp256r1_sha512_8336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_384) &ecdsa_secp384r1_sha3_384_8630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp384r1_sha3_512_8956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_8999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_9479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_9999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA512) &ecdsa_secp384r1_sha512_10078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA3_512) &ecdsa_secp521r1_sha3_512_10403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_10999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA224) &ecdsa_secp224r1_sha224_11389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11692, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11693, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11694, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11695, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11696, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11697, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11698, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11699, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11700, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11701, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11702, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11703, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11704, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11705, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11706, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11707, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11708, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11709, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11710, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11711, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11712, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11713, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11714, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11715, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11716, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11717, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11718, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11719, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11720, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11721, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11722, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11723, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11724, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11725, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11726, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11727, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11728, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11729, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11730, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11731, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11732, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11733, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11734, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11735, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11736, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11737, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11738, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11739, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11740, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11741, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11742, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11743, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_11744, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11745, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11746, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11747, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11748, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11749, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11750, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11751, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11752, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11753, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11754, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11755, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11756, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11757, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11758, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11759, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11760, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11761, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11762, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11763, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11764, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11765, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11766, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11767, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11768, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11769, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11770, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11771, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11772, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11773, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11774, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11775, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11776, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11777, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11778, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11779, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11780, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11781, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11782, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11783, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11784, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11785, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11786, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11787, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11788, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11789, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11790, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11791, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11792, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11793, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11794, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11795, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11796, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11797, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11798, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11799, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11800, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11801, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11802, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11803, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11804, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11805, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11806, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11807, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11808, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11809, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11810, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11811, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11812, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11813, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11814, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11815, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11816, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11817, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11818, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11819, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11820, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11821, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11822, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11823, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11824, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11825, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11826, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11827, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11828, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11829, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11830, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11831, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11832, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11833, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11834, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11835, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11836, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11837, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11838, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11839, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11840, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11841, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11842, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11843, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11844, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11845, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11846, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11847, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11848, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11849, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11850, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11851, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11852, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11853, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11854, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11855, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11856, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11857, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11858, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11859, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11860, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11861, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11862, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11863, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11864, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11865, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11866, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11867, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11868, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11869, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11870, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11871, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11872, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11873, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11874, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11875, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11876, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11877, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11878, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11879, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11880, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11881, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11882, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11883, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11884, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11885, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11886, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11887, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11888, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11889, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11890, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11891, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11892, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11893, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11894, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11895, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11896, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11897, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11898, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11899, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11900, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11901, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11902, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11903, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11904, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11905, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11906, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11907, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11908, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11909, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11910, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11911, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11912, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11913, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11914, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11915, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11916, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11917, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11918, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11919, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11920, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11921, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11922, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11923, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11924, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11925, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11926, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11927, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11928, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11929, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11930, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11931, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11932, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11933, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11934, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11935, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11936, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11937, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11938, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11939, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11940, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11941, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11942, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11943, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11944, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11945, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11946, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11947, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11948, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11949, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11950, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11951, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11952, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11953, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11954, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11955, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11956, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11957, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11958, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11959, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11960, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_11961, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_11962, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_11963, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_11964, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11965, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11966, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11967, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_11968, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11969, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11970, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11971, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_11972, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11973, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11974, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11975, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_11976, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11977, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11978, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11979, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_11980, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) &ecdsa_secp224k1_sha256_11981, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) &ecdsa_secp224k1_sha256_11982, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) &ecdsa_secp224k1_sha256_11983, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224K1) && defined(WITH_HASH_SHA256) &ecdsa_secp224k1_sha256_11984, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_11985, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_11986, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_11987, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_11988, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11989, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11990, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11991, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_11992, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11993, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11994, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11995, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320r1_sha384_11996, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11997, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11998, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_11999, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12000, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12001, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12002, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12003, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12004, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12005, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12006, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12007, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12008, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12009, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12010, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12011, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12012, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320t1_sha384_12013, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320t1_sha384_12014, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320t1_sha384_12015, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP320T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp320t1_sha384_12016, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12017, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12018, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12019, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12020, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12021, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12022, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12023, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12024, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA224) &ecdsa_secp256r1_sha224_12025, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) &ecdsa_secp384r1_sha256_12026, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) &ecdsa_secp521r1_sha256_12027, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12028, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12029, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12030, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12031, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12032, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12033, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12034, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12035, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12036, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12037, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12038, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12039, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12040, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12041, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12042, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12043, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12044, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12045, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12046, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12047, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12048, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12049, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12050, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12051, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12052, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12053, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12054, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12055, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12056, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP224R1) && defined(WITH_HASH_SHA256) &ecdsa_secp224r1_sha256_12057, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12058, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12059, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12060, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12061, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12062, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12063, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12064, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12065, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12066, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12067, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12068, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12069, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12070, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12071, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12072, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12073, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12074, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12075, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12076, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12077, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12078, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12079, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12080, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12081, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12082, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12083, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12084, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12085, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12086, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12087, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12088, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12089, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12090, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12091, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12092, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12093, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12094, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12095, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12096, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12097, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12098, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12099, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12100, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12101, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12102, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12103, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12104, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12105, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12106, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12107, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12108, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12109, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12110, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12111, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12112, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12113, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12114, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12115, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12116, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12117, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12118, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12119, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12120, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12121, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12122, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12123, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12124, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12125, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12126, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12127, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12128, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12129, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12130, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12131, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12132, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12133, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12134, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12135, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12136, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12137, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12138, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12139, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12140, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12141, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12142, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12143, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12144, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12145, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12146, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12147, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12148, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12149, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12150, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12151, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12152, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12153, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12154, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12155, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12156, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12157, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12158, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12159, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12160, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12161, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12162, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12163, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12164, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224t1_sha256_12165, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12166, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12167, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12168, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12169, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12170, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12171, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12172, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12173, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12174, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12175, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12176, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12177, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12178, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12179, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12180, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12181, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12182, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12183, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12184, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12185, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12186, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12187, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12188, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12189, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12190, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12191, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12192, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12193, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12194, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12195, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12196, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12197, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256T1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256t1_sha256_12198, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12199, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12200, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12201, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12202, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12203, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12204, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12205, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12206, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12207, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12208, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12209, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12210, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12211, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12212, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12213, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12214, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12215, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12216, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12217, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12218, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12219, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12220, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12221, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12222, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12223, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12224, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12225, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12226, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12227, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384T1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384t1_sha384_12228, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12229, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12230, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12231, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12232, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12233, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12234, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12235, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12236, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12237, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12238, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12239, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12240, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12241, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12242, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12243, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12244, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12245, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12246, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12247, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12248, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12249, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12250, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12251, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12252, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12253, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12254, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12255, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12256, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12257, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12258, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12259, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12260, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12261, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12262, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12263, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512T1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512t1_sha512_12264, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12265, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12266, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12267, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12268, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12269, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12270, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12271, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12272, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12273, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12274, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12275, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12276, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12277, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12278, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12279, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12280, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12281, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP224R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp224r1_sha256_12282, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12283, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12284, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12285, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12286, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12287, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12288, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12289, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12290, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12291, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12292, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12293, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12294, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12295, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12296, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP256R1) && defined(WITH_HASH_SHA256) &ecdsa_brainpoolp256r1_sha256_12297, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12298, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12299, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12300, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12301, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12302, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12303, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12304, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12305, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12306, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12307, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12308, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12309, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12310, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12311, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12312, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12313, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12314, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP384R1) && defined(WITH_HASH_SHA384) &ecdsa_brainpoolp384r1_sha384_12315, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12316, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12317, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12318, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12319, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12320, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12321, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12322, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12323, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12324, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12325, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12326, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12327, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12328, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12329, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_BRAINPOOLP512R1) && defined(WITH_HASH_SHA512) &ecdsa_brainpoolp512r1_sha512_12330, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12331, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12332, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12333, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12334, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12335, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12336, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12337, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12338, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12339, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12340, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12341, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12342, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12343, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12344, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12345, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12346, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12347, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12348, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12349, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12350, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12351, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12352, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12353, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12354, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12355, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12356, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12357, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12358, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12359, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12360, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12361, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12362, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12363, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12364, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12365, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12366, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12367, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12368, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12369, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12370, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12371, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12372, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12373, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12374, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12375, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12376, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12377, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12378, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12379, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12380, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12381, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12382, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12383, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12384, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12385, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12386, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12387, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12388, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12389, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12390, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12391, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12392, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12393, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12394, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12395, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12396, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12397, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12398, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12399, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12400, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12401, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12402, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12403, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12404, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12405, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12406, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12407, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12408, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12409, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12410, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12411, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12412, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12413, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12414, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12415, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12416, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12417, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12418, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12419, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12420, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12421, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12422, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12423, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12424, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12425, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12426, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12427, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12428, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12429, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12430, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12431, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12432, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12433, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12434, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12435, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12436, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12437, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12438, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12439, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12440, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12441, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12442, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12443, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12444, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12445, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12446, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12447, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12448, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12449, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12450, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12451, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12452, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12453, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12454, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12455, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12456, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12457, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12458, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12459, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12460, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12461, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12462, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12463, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12464, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12465, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12466, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12467, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12468, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12469, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12470, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12471, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12472, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12473, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12474, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12475, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12476, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12477, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12478, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12479, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12480, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12481, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12482, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12483, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12484, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12485, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12486, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12487, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12488, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12489, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12490, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12491, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12492, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12493, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12494, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12495, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12496, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12497, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12498, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12499, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12500, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12501, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12502, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12503, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12504, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12505, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12506, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12507, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12508, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12509, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12510, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12511, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12512, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12513, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12514, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12515, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12516, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12517, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12518, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12519, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12520, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12521, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12522, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12523, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12524, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12525, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12526, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12527, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12528, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12529, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12530, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12531, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12532, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12533, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12534, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12535, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12536, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12537, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12538, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12539, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12540, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12541, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12542, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12543, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12544, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12545, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12546, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12547, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12548, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12549, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12550, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12551, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12552, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12553, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12554, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12555, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12556, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12557, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12558, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12559, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12560, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12561, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12562, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12563, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12564, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12565, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12566, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12567, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12568, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12569, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12570, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12571, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12572, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12573, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12574, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12575, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12576, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12577, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12578, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12579, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12580, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12581, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12582, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12583, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12584, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12585, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12586, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12587, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12588, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12589, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12590, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12591, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12592, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12593, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12594, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12595, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12596, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12597, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12598, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12599, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12600, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12601, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12602, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12603, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12604, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12605, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12606, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12607, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12608, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12609, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12610, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12611, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12612, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12613, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12614, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA256) &ecdsa_secp384r1_sha256_12615, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA384) &ecdsa_secp521r1_sha384_12616, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA256) &ecdsa_secp521r1_sha256_12617, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12618, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12619, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12620, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12621, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12622, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12623, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12624, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12625, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12626, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12627, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12628, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12629, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12630, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12631, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12632, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12633, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12634, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12635, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12636, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12637, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12638, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12639, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12640, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256R1) && defined(WITH_HASH_SHA256) &ecdsa_secp256r1_sha256_12641, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12642, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12643, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12644, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12645, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12646, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12647, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12648, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12649, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12650, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12651, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12652, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12653, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12654, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12655, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12656, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12657, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12658, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP256K1) && defined(WITH_HASH_SHA256) &ecdsa_secp256k1_sha256_12659, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12660, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12661, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12662, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12663, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12664, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12665, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12666, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12667, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12668, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12669, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12670, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12671, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12672, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12673, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12674, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12675, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12676, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP384R1) && defined(WITH_HASH_SHA384) &ecdsa_secp384r1_sha384_12677, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12678, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12679, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12680, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12681, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12682, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12683, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12684, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12685, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12686, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12687, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12688, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12689, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12690, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12691, #endif #if defined(WITH_SIG_ECDSA) && defined(WITH_CURVE_SECP521R1) && defined(WITH_HASH_SHA512) &ecdsa_secp521r1_sha512_12692, #endif NULL, }; #define NUM_WYCHEPROOF_ECDSA_TESTS (sizeof(wycheproof_ecdsa_all_tests) / sizeof(wycheproof_ecdsa_test *)) /******** ECDSA tests extracted from ecdsa_brainpoolP224r1_sha224_p1363_test.json ecdsa_brainpoolP224r1_sha224_test.json ecdsa_brainpoolP256r1_sha256_p1363_test.json ecdsa_brainpoolP256r1_sha256_test.json ecdsa_brainpoolP320r1_sha384_p1363_test.json ecdsa_brainpoolP320r1_sha384_test.json ecdsa_brainpoolP384r1_sha384_p1363_test.json ecdsa_brainpoolP384r1_sha384_test.json ecdsa_brainpoolP512r1_sha512_p1363_test.json ecdsa_brainpoolP512r1_sha512_test.json ecdsa_secp224r1_sha224_p1363_test.json ecdsa_secp224r1_sha224_test.json ecdsa_secp224r1_sha256_p1363_test.json ecdsa_secp224r1_sha256_test.json ecdsa_secp224r1_sha3_224_test.json ecdsa_secp224r1_sha3_256_test.json ecdsa_secp224r1_sha3_512_test.json ecdsa_secp224r1_sha512_p1363_test.json ecdsa_secp224r1_sha512_test.json ecdsa_secp256k1_sha256_p1363_test.json ecdsa_secp256k1_sha256_test.json ecdsa_secp256k1_sha3_256_test.json ecdsa_secp256k1_sha3_512_test.json ecdsa_secp256k1_sha512_p1363_test.json ecdsa_secp256k1_sha512_test.json ecdsa_secp256r1_sha256_p1363_test.json ecdsa_secp256r1_sha256_test.json ecdsa_secp256r1_sha3_256_test.json ecdsa_secp256r1_sha3_512_test.json ecdsa_secp256r1_sha512_p1363_test.json ecdsa_secp256r1_sha512_test.json ecdsa_secp384r1_sha3_384_test.json ecdsa_secp384r1_sha3_512_test.json ecdsa_secp384r1_sha384_p1363_test.json ecdsa_secp384r1_sha384_test.json ecdsa_secp384r1_sha512_p1363_test.json ecdsa_secp384r1_sha512_test.json ecdsa_secp521r1_sha3_512_test.json ecdsa_secp521r1_sha512_p1363_test.json ecdsa_secp521r1_sha512_test.json ecdsa_test.json ecdsa_webcrypto_test.json is 12693, skipped = 3347 **********/ #define NUM_WYCHEPROOF_ECDSA_TESTS_IMPORTED 12693 #define NUM_WYCHEPROOF_ECDSA_TESTS_SKIPPED 3347 #define NUM_WYCHEPROOF_ECDSA_TESTS_ACCEPTABLE 87 #define NUM_WYCHEPROOF_ECDSA_TESTS_VALID 8330 #define NUM_WYCHEPROOF_ECDSA_TESTS_INVALID 4276 /* Test 0 for ECDH, tcId is 1 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_0_peerpubkey[] = { 0x47, 0xa9, 0x27, 0xda, 0xaf, 0xd7, 0x28, 0x2a, 0xfd, 0x72, 0x1c, 0x14, 0x1c, 0x26, 0x8b, 0xe1, 0x23, 0x12, 0x06, 0x6c, 0x1d, 0x62, 0xfe, 0x04, 0x7d, 0xce, 0xf2, 0x72, 0x95, 0x8e, 0x02, 0xa2, 0xb8, 0x1c, 0x89, 0xd7, 0xb8, 0x10, 0x04, 0xed, 0xa6, 0x5c, 0xb6, 0xe1, 0xdf, 0x8d, 0xa3, 0x30, 0xbe, 0x2d, 0x56, 0x32, 0x21, 0x86, 0x2b, 0x81, }; static const unsigned char ecdh_brainpoolp224r1_0_privkey[] = { 0x8c, 0xff, 0x3b, 0x0b, 0x5c, 0x1b, 0x32, 0x20, 0x04, 0x37, 0x59, 0x32, 0x0c, 0x6c, 0xc6, 0x39, 0x2e, 0x19, 0xe5, 0x54, 0xf1, 0x80, 0xf3, 0xdf, 0x1e, 0x44, 0xc7, 0xfc, }; static const unsigned char ecdh_brainpoolp224r1_0_sharedsecret[] = { 0x4f, 0x7a, 0xfb, 0x30, 0x2c, 0x69, 0x9b, 0xd5, 0x6d, 0xb0, 0xbd, 0xac, 0x55, 0x01, 0x72, 0xba, 0xc9, 0x4b, 0x73, 0xb0, 0xf2, 0xb6, 0x0e, 0xee, 0x91, 0xb6, 0xa4, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_0 = { .name = "ecdh_brainpoolp224r1_0", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_0_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_0_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_0_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 1 for ECDH, tcId is 2 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_1_peerpubkey[] = { 0x47, 0xa9, 0x27, 0xda, 0xaf, 0xd7, 0x28, 0x2a, 0xfd, 0x72, 0x1c, 0x14, 0x1c, 0x26, 0x8b, 0xe1, 0x23, 0x12, 0x06, 0x6c, 0x1d, 0x62, 0xfe, 0x04, 0x7d, 0xce, 0xf2, 0x72, }; static const unsigned char ecdh_brainpoolp224r1_1_privkey[] = { 0x8c, 0xff, 0x3b, 0x0b, 0x5c, 0x1b, 0x32, 0x20, 0x04, 0x37, 0x59, 0x32, 0x0c, 0x6c, 0xc6, 0x39, 0x2e, 0x19, 0xe5, 0x54, 0xf1, 0x80, 0xf3, 0xdf, 0x1e, 0x44, 0xc7, 0xfc, }; static const unsigned char ecdh_brainpoolp224r1_1_sharedsecret[] = { 0x4f, 0x7a, 0xfb, 0x30, 0x2c, 0x69, 0x9b, 0xd5, 0x6d, 0xb0, 0xbd, 0xac, 0x55, 0x01, 0x72, 0xba, 0xc9, 0x4b, 0x73, 0xb0, 0xf2, 0xb6, 0x0e, 0xee, 0x91, 0xb6, 0xa4, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_1 = { .name = "ecdh_brainpoolp224r1_1", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_1_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_1_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_1_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 2 for ECDH, tcId is 3 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_2_peerpubkey[] = { 0x5f, 0x9a, 0x3d, 0xd8, 0xda, 0xeb, 0xed, 0x95, 0x83, 0xd9, 0x1d, 0xd7, 0x5c, 0x6e, 0xf0, 0x89, 0xd3, 0x25, 0xff, 0xaf, 0xb3, 0x63, 0x9f, 0xb9, 0x7a, 0x7a, 0x2d, 0xea, 0x04, 0xe8, 0x11, 0xb5, 0xcb, 0x44, 0xe1, 0x71, 0xa5, 0xde, 0xd2, 0x5c, 0x22, 0xf3, 0x7f, 0xd1, 0x0e, 0x18, 0x60, 0x41, 0x6e, 0x4e, 0xdb, 0x8a, 0xa8, 0x08, 0x1c, 0x0e, }; static const unsigned char ecdh_brainpoolp224r1_2_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_2_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_2 = { .name = "ecdh_brainpoolp224r1_2", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_2_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_2_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_2_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3 for ECDH, tcId is 4 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3_peerpubkey[] = { 0x5c, 0x75, 0x3c, 0x63, 0xb9, 0xcb, 0x9b, 0x79, 0xeb, 0xbd, 0x8d, 0x4e, 0x3f, 0xc3, 0xae, 0x8d, 0xe3, 0xed, 0x6a, 0x16, 0xd1, 0x2e, 0x38, 0xb1, 0xfc, 0x23, 0xe9, 0xe5, 0xaa, 0x6d, 0x81, 0x5e, 0xcd, 0xf6, 0x07, 0x24, 0x67, 0x45, 0xe0, 0x29, 0x82, 0x91, 0x9a, 0x91, 0xa4, 0xcf, 0x8f, 0x14, 0x43, 0xfa, 0x90, 0xdd, 0x8f, 0x70, 0xa5, 0x7b, }; static const unsigned char ecdh_brainpoolp224r1_3_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3 = { .name = "ecdh_brainpoolp224r1_3", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 4 for ECDH, tcId is 5 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_4_peerpubkey[] = { 0x5d, 0x8d, 0xe5, 0xd8, 0x17, 0xd4, 0x98, 0x56, 0xa9, 0xae, 0x87, 0x0b, 0x5c, 0x84, 0x82, 0x4f, 0x1a, 0x19, 0x74, 0x5e, 0x96, 0x3c, 0x82, 0x0f, 0xde, 0xbb, 0x55, 0x3c, 0x06, 0xf8, 0x7a, 0x56, 0xe4, 0xd0, 0x01, 0x9f, 0x11, 0x92, 0xf9, 0x04, 0x28, 0x5f, 0x55, 0x38, 0xc1, 0xd3, 0xee, 0xdc, 0x05, 0x9e, 0x77, 0x34, 0x4e, 0x7d, 0x4b, 0x8b, }; static const unsigned char ecdh_brainpoolp224r1_4_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_4_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_4 = { .name = "ecdh_brainpoolp224r1_4", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_4_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_4_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_4_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 5 for ECDH, tcId is 6 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_5_peerpubkey[] = { 0x53, 0x9b, 0x05, 0x66, 0x58, 0x8e, 0x16, 0x50, 0x5e, 0x2d, 0x39, 0x32, 0x3c, 0x07, 0x79, 0x9a, 0x6a, 0xa2, 0x88, 0xe7, 0xd2, 0xaa, 0x03, 0xdb, 0x8a, 0x39, 0x2a, 0x38, 0x8a, 0xad, 0x13, 0xac, 0x01, 0x87, 0x9d, 0x1c, 0xde, 0x64, 0x8d, 0xc8, 0xad, 0x70, 0xc2, 0xde, 0xc4, 0x9c, 0xb6, 0x79, 0x61, 0xb2, 0x49, 0x3d, 0xda, 0xd8, 0x72, 0x4e, }; static const unsigned char ecdh_brainpoolp224r1_5_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_5_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_5 = { .name = "ecdh_brainpoolp224r1_5", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_5_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_5_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_5_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 6 for ECDH, tcId is 7 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_6_peerpubkey[] = { 0x26, 0x28, 0x7f, 0x17, 0xf2, 0x55, 0x4a, 0xaf, 0x1e, 0x49, 0xc5, 0x59, 0x4f, 0xbc, 0x35, 0x05, 0x9a, 0x5c, 0x7c, 0x03, 0x79, 0x94, 0xbf, 0xff, 0x9c, 0xb4, 0x37, 0xf3, 0x3d, 0x0e, 0x5f, 0xa3, 0x40, 0x01, 0x63, 0xc4, 0xa0, 0xec, 0x51, 0x3e, 0x70, 0x49, 0xed, 0xea, 0xc4, 0x3f, 0x74, 0x63, 0xb9, 0x9f, 0x1c, 0x91, 0x44, 0xd4, 0x54, 0xd9, }; static const unsigned char ecdh_brainpoolp224r1_6_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_6_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_6 = { .name = "ecdh_brainpoolp224r1_6", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_6_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_6_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_6_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 7 for ECDH, tcId is 8 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_7_peerpubkey[] = { 0x3a, 0xc6, 0x7c, 0x43, 0x7f, 0x5c, 0xd2, 0xb4, 0xbc, 0x78, 0x21, 0x8b, 0x01, 0xf6, 0x41, 0x30, 0xc8, 0xb2, 0x17, 0x07, 0x0f, 0x6e, 0x1e, 0xef, 0x5a, 0xd4, 0xb6, 0x00, 0x24, 0x25, 0x05, 0x74, 0x14, 0x17, 0xf7, 0x9f, 0xd2, 0x85, 0x96, 0x19, 0x25, 0x38, 0xa9, 0x43, 0x81, 0x26, 0xa4, 0x9f, 0x44, 0xf9, 0x8e, 0xd2, 0x64, 0x2a, 0xab, 0x1b, }; static const unsigned char ecdh_brainpoolp224r1_7_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_7_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_7 = { .name = "ecdh_brainpoolp224r1_7", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_7_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_7_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_7_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 8 for ECDH, tcId is 9 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_8_peerpubkey[] = { 0x8a, 0xb3, 0xfa, 0x0c, 0xcf, 0x52, 0xa6, 0x61, 0xea, 0x3a, 0x1d, 0x50, 0x21, 0x9c, 0x0c, 0xbf, 0x80, 0x9b, 0xcb, 0xf6, 0x37, 0x45, 0xf4, 0xe0, 0xb9, 0x4a, 0x89, 0x0c, 0x01, 0xc1, 0x66, 0xc6, 0x39, 0x2c, 0x36, 0x90, 0xf7, 0xec, 0x28, 0x68, 0x48, 0x57, 0xea, 0x05, 0xf5, 0xfd, 0x4b, 0x8b, 0x4e, 0x7b, 0x8b, 0x05, 0xa9, 0xe9, 0x42, 0x65, }; static const unsigned char ecdh_brainpoolp224r1_8_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_8_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_8 = { .name = "ecdh_brainpoolp224r1_8", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_8_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_8_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_8_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 9 for ECDH, tcId is 10 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_9_peerpubkey[] = { 0x5a, 0x6e, 0xcb, 0x1b, 0xa8, 0x81, 0xbf, 0x4d, 0xf5, 0x59, 0x98, 0x0c, 0xc9, 0x40, 0xe6, 0x6e, 0x43, 0x0b, 0xb2, 0x2b, 0x6d, 0xd0, 0xe6, 0xea, 0x18, 0x42, 0xe9, 0x0c, 0xaa, 0x0c, 0x8c, 0xd7, 0x25, 0xf9, 0x3c, 0x45, 0x98, 0x56, 0x95, 0xfc, 0x3a, 0x78, 0xc4, 0x2e, 0xf7, 0x2c, 0x19, 0x0b, 0x08, 0x3d, 0xb5, 0x7f, 0xf8, 0x5c, 0x3d, 0xb2, }; static const unsigned char ecdh_brainpoolp224r1_9_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_9_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_9 = { .name = "ecdh_brainpoolp224r1_9", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_9_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_9_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_9_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 10 for ECDH, tcId is 11 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_10_peerpubkey[] = { 0x10, 0x76, 0xcc, 0x02, 0x01, 0xb3, 0x39, 0x91, 0x37, 0x18, 0x4b, 0x17, 0x31, 0x02, 0x8b, 0xa2, 0xbe, 0xbd, 0xcb, 0xa1, 0x54, 0x8a, 0xd5, 0xed, 0x1a, 0xf1, 0xdf, 0x9c, 0xd2, 0xf4, 0xab, 0xb6, 0xd7, 0x65, 0x91, 0xef, 0xe7, 0x71, 0x2b, 0xc3, 0x54, 0x4a, 0x76, 0xef, 0x53, 0xbe, 0xd9, 0xf1, 0x86, 0xa2, 0xc2, 0xd1, 0x21, 0x05, 0xe7, 0xad, }; static const unsigned char ecdh_brainpoolp224r1_10_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_10_sharedsecret[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_10 = { .name = "ecdh_brainpoolp224r1_10", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_10_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_10_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_10_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 11 for ECDH, tcId is 12 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_11_peerpubkey[] = { 0x52, 0x16, 0xd3, 0x1c, 0x45, 0x06, 0x35, 0xaf, 0x6d, 0x6c, 0x73, 0x27, 0xd3, 0xfe, 0x05, 0x14, 0xa8, 0xab, 0xb9, 0x72, 0xb1, 0x6d, 0x30, 0x84, 0x16, 0x4c, 0x9a, 0xc7, 0x61, 0x81, 0x75, 0x18, 0xc5, 0xf4, 0xe7, 0x8e, 0x27, 0x7e, 0x00, 0x9c, 0x70, 0x28, 0xad, 0x7e, 0x59, 0xa3, 0xa8, 0x7e, 0x13, 0x29, 0x5e, 0xf1, 0x77, 0x71, 0x19, 0xcc, }; static const unsigned char ecdh_brainpoolp224r1_11_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_11_sharedsecret[] = { 0x37, 0x3b, 0xbc, 0xf4, 0x23, 0x1b, 0x53, 0x08, 0x3d, 0x36, 0xad, 0xb3, 0xf5, 0x64, 0x85, 0x60, 0x3b, 0x19, 0xb4, 0xb7, 0x72, 0x51, 0xab, 0xd9, 0xb8, 0x68, 0x3c, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_11 = { .name = "ecdh_brainpoolp224r1_11", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_11_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_11_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_11_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 12 for ECDH, tcId is 13 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_12_peerpubkey[] = { 0xb1, 0x12, 0x1e, 0x4c, 0xaf, 0xa5, 0xee, 0x5c, 0xca, 0x2a, 0x9b, 0x66, 0x1d, 0xad, 0xb3, 0x7a, 0x81, 0x9c, 0x0b, 0xb3, 0x2d, 0xc0, 0xf0, 0x16, 0x80, 0xc8, 0x19, 0x29, 0x13, 0x98, 0x1a, 0xc1, 0xc6, 0x8e, 0x6d, 0x41, 0x0c, 0xda, 0x30, 0x5b, 0x0b, 0xe4, 0x6e, 0xf1, 0x42, 0x2a, 0x70, 0x35, 0x41, 0x99, 0xd0, 0xf5, 0x44, 0x17, 0x61, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_12_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_12_sharedsecret[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_12 = { .name = "ecdh_brainpoolp224r1_12", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_12_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_12_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_12_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 13 for ECDH, tcId is 14 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_13_peerpubkey[] = { 0x6e, 0x22, 0xeb, 0x98, 0xda, 0x25, 0xe6, 0x39, 0x95, 0x4e, 0xb2, 0x98, 0x7a, 0x1f, 0xc7, 0x16, 0x05, 0xb2, 0x87, 0xab, 0xe4, 0xa9, 0xe7, 0xfe, 0x4c, 0xd7, 0x9c, 0x4b, 0xc7, 0x59, 0xb1, 0x11, 0xce, 0x37, 0xa1, 0x7f, 0xda, 0x31, 0x3b, 0x17, 0x39, 0x3c, 0x08, 0xc7, 0x50, 0xec, 0xf1, 0xd3, 0x8a, 0x9e, 0x0f, 0x72, 0xc0, 0xc1, 0x70, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_13_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_13_sharedsecret[] = { 0x53, 0x94, 0xea, 0xa3, 0xdb, 0xc3, 0x0f, 0xea, 0xc5, 0xeb, 0x7d, 0x88, 0xe6, 0x9c, 0xf0, 0x68, 0x31, 0x5c, 0xcb, 0x6d, 0xed, 0xf7, 0x87, 0xdb, 0xf9, 0x33, 0xf8, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_13 = { .name = "ecdh_brainpoolp224r1_13", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_13_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_13_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_13_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 14 for ECDH, tcId is 15 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_14_peerpubkey[] = { 0xa6, 0x0d, 0x25, 0x22, 0x75, 0x68, 0xb2, 0x48, 0x6b, 0x40, 0x2a, 0xf6, 0x6d, 0x92, 0x12, 0xfe, 0x92, 0x3a, 0x37, 0x87, 0x3a, 0x8a, 0x56, 0x13, 0xef, 0x81, 0x3d, 0x91, 0xc8, 0x8a, 0xa8, 0x4b, 0x15, 0xb7, 0xca, 0xe6, 0xab, 0x64, 0x78, 0xf0, 0xbf, 0x42, 0xc4, 0x64, 0xf3, 0xf5, 0x0e, 0xc2, 0x7d, 0x33, 0x9e, 0x85, 0xa4, 0x90, 0x88, 0x41, }; static const unsigned char ecdh_brainpoolp224r1_14_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_14_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_14 = { .name = "ecdh_brainpoolp224r1_14", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_14_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_14_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_14_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 15 for ECDH, tcId is 16 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_15_peerpubkey[] = { 0x99, 0xb4, 0x09, 0xaf, 0xec, 0xf5, 0xe5, 0x44, 0xd0, 0x47, 0x7a, 0x8a, 0x43, 0xd6, 0xf4, 0x80, 0x5c, 0xa1, 0x9d, 0x0b, 0x24, 0xb8, 0x9d, 0x6a, 0x37, 0x25, 0x56, 0x06, 0x06, 0x95, 0xd6, 0x0a, 0x6c, 0x4c, 0x32, 0x10, 0x43, 0xcb, 0x40, 0xa5, 0x01, 0xa2, 0x78, 0x1c, 0x77, 0xfb, 0x9c, 0x8f, 0x37, 0x0c, 0x8a, 0xf8, 0x01, 0x06, 0x9e, 0x85, }; static const unsigned char ecdh_brainpoolp224r1_15_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_15_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_15 = { .name = "ecdh_brainpoolp224r1_15", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_15_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_15_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_15_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 16 for ECDH, tcId is 17 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_16_peerpubkey[] = { 0x77, 0x2b, 0x18, 0x6d, 0xdd, 0x36, 0x19, 0x2f, 0x7a, 0x73, 0xf1, 0x03, 0x72, 0xc8, 0x6d, 0x6a, 0x7e, 0x05, 0x20, 0x0e, 0x0d, 0xab, 0xff, 0xe0, 0x7e, 0x02, 0xbc, 0x9e, 0xa1, 0x3a, 0x24, 0x29, 0xf0, 0xa3, 0x0a, 0xb2, 0x6d, 0xe3, 0x9b, 0xfa, 0xfd, 0x44, 0xe3, 0x7f, 0x14, 0xc7, 0x9a, 0xce, 0xe2, 0xca, 0x7f, 0xbf, 0x2b, 0xd8, 0xf5, 0x5c, }; static const unsigned char ecdh_brainpoolp224r1_16_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_16_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_16 = { .name = "ecdh_brainpoolp224r1_16", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_16_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_16_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_16_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 17 for ECDH, tcId is 18 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_17_peerpubkey[] = { 0xd5, 0x4f, 0xbb, 0x07, 0xc8, 0xc0, 0x48, 0x26, 0x00, 0x90, 0x81, 0x78, 0x43, 0x8f, 0xd5, 0x72, 0xec, 0xa1, 0xeb, 0xaf, 0xdc, 0xd1, 0x01, 0x07, 0x1a, 0xfc, 0xb2, 0x47, 0xa0, 0x56, 0x1e, 0x4e, 0x22, 0x01, 0x44, 0x7d, 0x30, 0xdb, 0x35, 0x05, 0x10, 0xf0, 0xf8, 0xaf, 0xff, 0xa2, 0x28, 0x51, 0x5d, 0xe9, 0x28, 0x95, 0x16, 0x85, 0x5d, 0x2f, }; static const unsigned char ecdh_brainpoolp224r1_17_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_17_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_17 = { .name = "ecdh_brainpoolp224r1_17", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_17_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_17_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_17_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 18 for ECDH, tcId is 19 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_18_peerpubkey[] = { 0xba, 0xea, 0xa4, 0x82, 0xe4, 0x5f, 0xb4, 0xb9, 0x32, 0xc9, 0x45, 0xee, 0xad, 0xe8, 0x64, 0x4f, 0x98, 0x0e, 0x50, 0xf4, 0x15, 0x0f, 0xc4, 0xce, 0x1d, 0x02, 0xec, 0xf6, 0xa8, 0x83, 0xc9, 0xda, 0x5d, 0xc2, 0x4c, 0x14, 0x9b, 0x9b, 0x45, 0x10, 0xda, 0x27, 0xdb, 0x8d, 0xf3, 0xb3, 0xaf, 0xbe, 0xaa, 0x62, 0x9e, 0x19, 0xd9, 0x9b, 0xe6, 0x28, }; static const unsigned char ecdh_brainpoolp224r1_18_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_18_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_18 = { .name = "ecdh_brainpoolp224r1_18", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_18_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_18_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_18_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 19 for ECDH, tcId is 20 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_19_peerpubkey[] = { 0xd6, 0x33, 0x31, 0xa2, 0x8b, 0xd6, 0xf8, 0x2d, 0xcb, 0xe3, 0xde, 0x0e, 0xa8, 0x07, 0x43, 0x10, 0x12, 0xe9, 0x54, 0xfd, 0x9f, 0xeb, 0xcc, 0x7a, 0x36, 0x87, 0xdb, 0xab, 0xca, 0x53, 0x23, 0x29, 0x35, 0x1b, 0x6a, 0x7a, 0x06, 0x48, 0xab, 0x34, 0xc6, 0xaa, 0xc1, 0x23, 0xf8, 0xdd, 0x4e, 0xc8, 0xa4, 0x4f, 0xb8, 0x8d, 0xf0, 0xec, 0x45, 0xae, }; static const unsigned char ecdh_brainpoolp224r1_19_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_19_sharedsecret[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_19 = { .name = "ecdh_brainpoolp224r1_19", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_19_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_19_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_19_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 20 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 20 for ECDH, tcId is 21 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_20_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4e, 0xbc, 0x90, 0x78, 0xad, 0x8a, 0xd0, 0x75, 0x62, 0xcd, 0x41, 0xb3, 0x74, 0x82, 0x71, 0x92, 0xaa, 0x88, 0xce, 0x3c, 0x71, 0x8a, 0x01, 0x44, 0x05, 0xee, 0xd4, 0x75, }; static const unsigned char ecdh_brainpoolp224r1_20_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_20_sharedsecret[] = { 0x60, 0x90, 0x42, 0xac, 0x30, 0x7c, 0x7d, 0x75, 0xee, 0x58, 0x69, 0x0d, 0x36, 0xd1, 0xf0, 0xba, 0x2c, 0xb7, 0x0f, 0x1a, 0x77, 0xca, 0x43, 0xbc, 0x7b, 0xb7, 0x00, 0x67, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_20 = { .name = "ecdh_brainpoolp224r1_20", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_20_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_20_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_20_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 21 for ECDH, tcId is 22 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_21_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x4f, 0x73, 0x5b, 0xbf, 0xf1, 0xa5, 0x4d, 0xb7, 0x99, 0x5b, 0x03, 0xc4, 0xe4, 0x3c, 0x17, 0xbc, 0x3e, 0x0f, 0x30, 0xbd, 0xa4, 0xb2, 0xea, 0xf8, 0x51, 0x89, 0x61, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_21_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_21_sharedsecret[] = { 0x9d, 0x5c, 0xff, 0x40, 0x64, 0x88, 0xba, 0xe6, 0x80, 0xf1, 0x74, 0x7d, 0x8f, 0x5e, 0xf0, 0x70, 0xf3, 0xa7, 0xd4, 0x51, 0x20, 0x5a, 0x1b, 0xa9, 0xa6, 0xcd, 0x19, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_21 = { .name = "ecdh_brainpoolp224r1_21", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_21_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_21_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_21_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 22 for ECDH, tcId is 23 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_22_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x1d, 0x46, 0x08, 0xf6, 0xb2, 0x8d, 0xcc, 0x77, 0xf0, 0x2d, 0x94, 0xb1, 0xe2, 0x54, 0x28, 0xa2, 0x2e, 0x64, 0xfa, 0x9b, 0x33, 0x54, 0xbe, 0xed, 0x97, 0xaf, 0x99, }; static const unsigned char ecdh_brainpoolp224r1_22_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_22_sharedsecret[] = { 0xa5, 0x5b, 0x6c, 0xa4, 0xb1, 0xe1, 0x35, 0xcf, 0x1d, 0xf4, 0x13, 0xa5, 0x08, 0x61, 0x91, 0x7b, 0x3d, 0x10, 0xff, 0xef, 0x98, 0xa2, 0x9a, 0x87, 0x4b, 0xa9, 0x56, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_22 = { .name = "ecdh_brainpoolp224r1_22", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_22_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_22_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_22_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 23 for ECDH, tcId is 24 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_23_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x46, 0x13, 0x6f, 0xcd, 0xd3, 0x4a, 0x52, 0x25, 0xb0, 0x9a, 0x84, 0x4d, 0x9f, 0x48, 0x2e, 0x56, 0xa1, 0x3c, 0x46, 0xb4, 0xef, 0x29, 0x4e, 0x9c, 0x04, 0x9f, 0x5b, }; static const unsigned char ecdh_brainpoolp224r1_23_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_23_sharedsecret[] = { 0x92, 0x40, 0xe2, 0x68, 0xb1, 0x33, 0xe2, 0x5b, 0x39, 0xb3, 0x6c, 0xb7, 0xbc, 0x9e, 0x91, 0xa5, 0x35, 0xce, 0x62, 0x2b, 0x48, 0xd3, 0xb0, 0x70, 0x1d, 0x31, 0xb2, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_23 = { .name = "ecdh_brainpoolp224r1_23", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_23_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_23_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_23_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 24 for ECDH, tcId is 25 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_24_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4b, 0xdc, 0x28, 0x0b, 0x52, 0xc9, 0x8b, 0x4b, 0xd5, 0x2b, 0xfd, 0x4f, 0xd2, 0x67, 0x6a, 0x97, 0x61, 0x0c, 0x49, 0x46, 0xa6, 0x6a, 0xbe, 0xf9, 0xba, 0xd0, 0xad, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_24_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_24_sharedsecret[] = { 0xb5, 0x52, 0x61, 0x5b, 0xd4, 0xea, 0x7e, 0xef, 0x4f, 0xef, 0x3e, 0x39, 0xaa, 0x4f, 0xc5, 0x11, 0xd8, 0xcb, 0xaf, 0x40, 0xda, 0x09, 0x9e, 0x47, 0xa6, 0x11, 0xe5, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_24 = { .name = "ecdh_brainpoolp224r1_24", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_24_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_24_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_24_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 25 for ECDH, tcId is 26 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_25_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x60, 0x91, 0x66, 0x26, 0xda, 0x51, 0x8e, 0xe8, 0xf6, 0xba, 0xd2, 0x87, 0xe6, 0x97, 0x30, 0x70, 0x84, 0xe1, 0x91, 0xca, 0x79, 0x39, 0x81, 0x48, 0x14, 0x1e, 0x57, 0xdb, }; static const unsigned char ecdh_brainpoolp224r1_25_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_25_sharedsecret[] = { 0x57, 0x01, 0xc9, 0xc1, 0xc1, 0xe5, 0x9e, 0x93, 0xa0, 0xe5, 0x7a, 0xdd, 0xf6, 0x76, 0xc0, 0xd7, 0x64, 0x6f, 0xf8, 0x40, 0x7d, 0xe6, 0x30, 0xe5, 0xec, 0x72, 0x55, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_25 = { .name = "ecdh_brainpoolp224r1_25", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_25_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_25_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_25_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 26 for ECDH, tcId is 27 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_26_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x5b, 0x5f, 0x99, 0xe5, 0xee, 0x14, 0xba, 0xa1, 0xc4, 0xfa, 0x21, 0xad, 0xf0, 0xa6, 0x55, 0x74, 0x16, 0xc6, 0x03, 0xf9, 0x33, 0xa5, 0x92, 0xdd, 0x8d, 0xd1, 0x6d, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_26_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_26_sharedsecret[] = { 0x07, 0xc0, 0xae, 0x0f, 0x2e, 0x52, 0xe4, 0x65, 0x7f, 0xcd, 0x5d, 0xcf, 0x95, 0xc5, 0xd9, 0x25, 0xb0, 0x53, 0x4d, 0xa4, 0xd6, 0xa1, 0x13, 0xe1, 0x40, 0x65, 0x80, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_26 = { .name = "ecdh_brainpoolp224r1_26", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_26_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_26_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_26_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 27 for ECDH, tcId is 28 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_27_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x57, 0x25, 0x44, 0x76, 0x6f, 0xb8, 0x0f, 0xb6, 0x73, 0x65, 0xc9, 0x29, 0x2c, 0x5f, 0x70, 0xbc, 0x28, 0x53, 0x88, 0xd7, 0x05, 0x15, 0x5b, 0x36, 0x1e, 0xee, 0x3a, 0x31, }; static const unsigned char ecdh_brainpoolp224r1_27_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_27_sharedsecret[] = { 0x2d, 0x4f, 0x54, 0xd2, 0x3c, 0x12, 0xee, 0x51, 0x45, 0x6f, 0x80, 0x47, 0xbc, 0x9c, 0x9b, 0xf3, 0x82, 0x91, 0x92, 0xbe, 0xef, 0x85, 0xbc, 0x61, 0x60, 0x02, 0x99, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_27 = { .name = "ecdh_brainpoolp224r1_27", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_27_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_27_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_27_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 28 for ECDH, tcId is 29 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_28_peerpubkey[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, 0x5f, 0xb0, 0xba, 0x1f, 0x08, 0xe4, 0xe1, 0x5d, 0xfe, 0x79, 0xc1, 0xb2, 0xf6, 0x61, 0x4b, 0x9d, 0xf6, 0xbb, 0xdd, 0x57, 0x11, 0x2f, 0x52, 0xad, 0xa0, 0x1d, 0x4f, 0x3e, }; static const unsigned char ecdh_brainpoolp224r1_28_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_28_sharedsecret[] = { 0x46, 0x6d, 0x58, 0xed, 0x86, 0x30, 0xd2, 0x22, 0x33, 0x58, 0x99, 0xa4, 0x19, 0xde, 0xb0, 0x3b, 0x9f, 0x3d, 0xda, 0xcb, 0x31, 0x4f, 0x1e, 0xa8, 0xad, 0x0c, 0xe2, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_28 = { .name = "ecdh_brainpoolp224r1_28", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_28_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_28_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_28_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 29 for ECDH, tcId is 30 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_29_peerpubkey[] = { 0x37, 0x3b, 0xbc, 0xf4, 0x23, 0x1b, 0x53, 0x08, 0x3d, 0x36, 0xad, 0xb3, 0xf5, 0x64, 0x85, 0x60, 0x3b, 0x19, 0xb4, 0xb7, 0x72, 0x51, 0xab, 0xd9, 0xb8, 0x68, 0x3c, 0x12, 0x30, 0xc5, 0xf3, 0x83, 0xbe, 0xa0, 0xbf, 0x35, 0x35, 0x9a, 0x47, 0xeb, 0xd9, 0x74, 0x17, 0xb9, 0x3e, 0x24, 0xf3, 0xd2, 0xe7, 0x8b, 0xad, 0xd6, 0x56, 0x18, 0x93, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_29_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_29_sharedsecret[] = { 0xc0, 0xc6, 0x82, 0xa0, 0x74, 0x5b, 0x19, 0x7d, 0xce, 0xdf, 0x83, 0x62, 0xde, 0xcf, 0x70, 0xc0, 0xb5, 0x13, 0x5e, 0x16, 0xc4, 0xf7, 0xc6, 0x3b, 0x10, 0x46, 0x85, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_29 = { .name = "ecdh_brainpoolp224r1_29", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_29_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_29_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_29_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 30 for ECDH, tcId is 31 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_30_peerpubkey[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, 0x1e, 0x9f, 0x6a, 0x71, 0x74, 0xb8, 0x01, 0xce, 0xda, 0xa4, 0xd4, 0xbc, 0xd7, 0x72, 0xa2, 0x88, 0x4d, 0x0a, 0x2b, 0xd2, 0x73, 0x56, 0x29, 0x5c, 0x88, 0x57, 0x32, 0x03, }; static const unsigned char ecdh_brainpoolp224r1_30_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_30_sharedsecret[] = { 0x72, 0xe9, 0xc0, 0x6d, 0xec, 0xee, 0x81, 0x33, 0xbb, 0x05, 0xc4, 0x83, 0xc9, 0x7a, 0x51, 0x44, 0x35, 0x1d, 0x3a, 0x7f, 0xde, 0x2f, 0xc8, 0x8b, 0xe6, 0xee, 0xfd, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_30 = { .name = "ecdh_brainpoolp224r1_30", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_30_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_30_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_30_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 31 for ECDH, tcId is 32 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_31_peerpubkey[] = { 0x53, 0x94, 0xea, 0xa3, 0xdb, 0xc3, 0x0f, 0xea, 0xc5, 0xeb, 0x7d, 0x88, 0xe6, 0x9c, 0xf0, 0x68, 0x31, 0x5c, 0xcb, 0x6d, 0xed, 0xf7, 0x87, 0xdb, 0xf9, 0x33, 0xf8, 0x23, 0x66, 0x12, 0x67, 0xe8, 0xae, 0xfb, 0x70, 0xda, 0x15, 0x18, 0x1f, 0xbf, 0x73, 0x90, 0xe7, 0x2a, 0x46, 0x80, 0xb7, 0x88, 0x83, 0xbe, 0xa3, 0xa0, 0x90, 0x87, 0xac, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_31_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_31_sharedsecret[] = { 0x42, 0xe4, 0x6a, 0x0d, 0xf9, 0x78, 0xb3, 0x36, 0x2a, 0x4e, 0x54, 0x6e, 0xa6, 0x5f, 0x88, 0x9f, 0x10, 0x1b, 0x4e, 0x02, 0x70, 0xcb, 0x99, 0xb5, 0xed, 0x04, 0x65, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_31 = { .name = "ecdh_brainpoolp224r1_31", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_31_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_31_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_31_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 32 for ECDH, tcId is 33 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_32_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x65, 0xd4, 0x25, 0xac, 0xdc, 0xeb, 0x1b, 0x04, 0x86, 0x2e, 0xa9, 0xdf, 0x63, 0x4f, 0xca, 0xd6, 0xf1, 0xaf, 0x3b, 0x70, 0xca, 0x00, 0x00, 0x01, 0x5b, 0x94, 0x35, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_32_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_32_sharedsecret[] = { 0x4d, 0x51, 0x29, 0x34, 0x80, 0xc1, 0x20, 0x8a, 0x09, 0x35, 0x04, 0xc4, 0xc9, 0x6a, 0x4c, 0x33, 0x46, 0x6c, 0x91, 0x8d, 0x30, 0x0a, 0x85, 0x66, 0xe6, 0x9d, 0x4a, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_32 = { .name = "ecdh_brainpoolp224r1_32", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_32_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_32_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_32_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 33 for ECDH, tcId is 34 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_33_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0xab, 0x72, 0xfe, 0xc5, 0x72, 0x51, 0xd4, 0x0a, 0xb8, 0xf3, 0x58, 0xa2, 0x91, 0x93, 0x38, 0x78, 0xb1, 0x46, 0x35, 0x67, 0x1f, 0x9e, 0x0a, 0x80, 0x88, 0xdc, 0x73, }; static const unsigned char ecdh_brainpoolp224r1_33_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_33_sharedsecret[] = { 0x7b, 0xed, 0xf2, 0x80, 0xc9, 0x88, 0x0e, 0xdf, 0x26, 0xfe, 0x8d, 0xbd, 0x7a, 0xfa, 0x35, 0x6a, 0x54, 0xa6, 0x7a, 0x93, 0xa2, 0xbf, 0x70, 0x43, 0xd2, 0xf4, 0x97, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_33 = { .name = "ecdh_brainpoolp224r1_33", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_33_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_33_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_33_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 34 for ECDH, tcId is 35 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_34_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x1f, 0x4e, 0xcf, 0xad, 0x07, 0xf9, 0xa9, 0x65, 0x69, 0x35, 0xf5, 0x36, 0xa8, 0xb0, 0x6e, 0x0d, 0xb0, 0xac, 0xf5, 0xd5, 0x4a, 0x93, 0x94, 0x36, 0xea, 0x84, 0x44, 0x80, }; static const unsigned char ecdh_brainpoolp224r1_34_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_34_sharedsecret[] = { 0xc5, 0x63, 0x60, 0xd8, 0x32, 0xe7, 0xd3, 0x85, 0x4f, 0x60, 0xe0, 0xf3, 0xd3, 0x62, 0xe5, 0x8e, 0xb8, 0x02, 0x6e, 0x27, 0xb6, 0x16, 0x1f, 0xb2, 0x21, 0x7c, 0xe5, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_34 = { .name = "ecdh_brainpoolp224r1_34", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_34_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_34_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_34_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 35 for ECDH, tcId is 36 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_35_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x35, 0x32, 0xd9, 0x72, 0x04, 0x2e, 0x05, 0xe1, 0x3f, 0xe9, 0xd8, 0xf4, 0x48, 0x00, 0x50, 0x21, 0x61, 0xc9, 0xc5, 0xff, 0xa3, 0x0f, 0x5c, 0xaf, 0x15, 0x1d, 0x60, 0x0d, }; static const unsigned char ecdh_brainpoolp224r1_35_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_35_sharedsecret[] = { 0x5a, 0x0e, 0x6a, 0xb7, 0xb4, 0x1c, 0x61, 0xb1, 0xcb, 0x09, 0x84, 0x49, 0xc7, 0x07, 0xf7, 0x4f, 0x55, 0x54, 0x8b, 0x92, 0xc7, 0x8a, 0xf2, 0x7d, 0x3f, 0x33, 0xc0, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_35 = { .name = "ecdh_brainpoolp224r1_35", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_35_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_35_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_35_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 36 for ECDH, tcId is 37 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_36_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x51, 0x58, 0x53, 0xec, 0x16, 0xa9, 0x85, 0xfb, 0xde, 0x8d, 0xa6, 0x62, 0xe4, 0x72, 0x99, 0xe8, 0x6e, 0xe3, 0x0a, 0xd4, 0x64, 0xac, 0xb8, 0x49, 0xf5, 0x13, 0x29, 0x22, }; static const unsigned char ecdh_brainpoolp224r1_36_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_36_sharedsecret[] = { 0xb4, 0xe2, 0x1f, 0x24, 0x03, 0xd8, 0x26, 0x43, 0x9e, 0x4d, 0x94, 0x98, 0x5c, 0xeb, 0xbc, 0x72, 0x4a, 0x85, 0xa3, 0xe4, 0x05, 0xae, 0xb8, 0xf6, 0x10, 0x89, 0x2e, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_36 = { .name = "ecdh_brainpoolp224r1_36", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_36_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_36_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_36_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 37 for ECDH, tcId is 38 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_37_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xbd, 0x78, 0x39, 0x6f, 0x68, 0x1c, 0xbf, 0x53, 0x5b, 0x39, 0x51, 0xd0, 0xb7, 0xed, 0xf9, 0x1a, 0xbd, 0x3b, 0x10, 0xe1, 0xcb, 0x5c, 0xde, 0xb7, 0xba, 0x8f, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_37_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_37_sharedsecret[] = { 0x92, 0xd2, 0xa6, 0x3b, 0x77, 0x88, 0xe0, 0xd7, 0x04, 0xec, 0xda, 0x5d, 0xc5, 0x93, 0x21, 0xdc, 0x30, 0x26, 0x44, 0x45, 0x76, 0x3d, 0xa7, 0x92, 0xf7, 0x03, 0x58, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_37 = { .name = "ecdh_brainpoolp224r1_37", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_37_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_37_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_37_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 38 for ECDH, tcId is 39 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_38_peerpubkey[] = { 0x0c, 0x60, 0x3a, 0x05, 0x6f, 0xc7, 0xc3, 0x9b, 0x5c, 0xb0, 0x98, 0xec, 0x91, 0x9e, 0x86, 0x88, 0x60, 0x3b, 0xda, 0xa2, 0x7a, 0xe2, 0x00, 0x71, 0xab, 0x1c, 0x5d, 0x9a, 0x0c, 0x01, 0x84, 0x6a, 0x7c, 0x8e, 0xa8, 0xb3, 0xde, 0xf8, 0x86, 0xd5, 0xf4, 0x20, 0x9f, 0x9c, 0xf3, 0xc4, 0x5a, 0x76, 0x14, 0xe4, 0x41, 0xe6, 0xf8, 0x2e, 0xe0, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_38_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_38_sharedsecret[] = { 0xa0, 0xca, 0xf5, 0x93, 0x5a, 0xb3, 0xe9, 0xd5, 0xa1, 0xfb, 0xd2, 0xe9, 0x5b, 0x24, 0x38, 0xbd, 0x82, 0x05, 0x6e, 0xe3, 0x26, 0xd5, 0x8d, 0x9c, 0x13, 0xbf, 0x6c, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_38 = { .name = "ecdh_brainpoolp224r1_38", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_38_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_38_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_38_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 39 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 39 for ECDH, tcId is 40 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_39_peerpubkey[] = { 0x67, 0xcf, 0x64, 0x45, 0x04, 0xff, 0xf4, 0x09, 0xb4, 0x32, 0x27, 0x9d, 0x6d, 0x19, 0x90, 0x59, 0x81, 0xb6, 0x4b, 0x03, 0x63, 0x90, 0xb0, 0x3a, 0xc5, 0x12, 0xe0, 0x4f, 0x12, 0x32, 0xaf, 0x9c, 0x5b, 0x4e, 0x0c, 0x73, 0xa0, 0x68, 0x2c, 0x2b, 0xe3, 0xfd, 0x34, 0x0a, 0x44, 0x5f, 0xe1, 0x44, 0xc3, 0xdc, 0xb8, 0x55, 0xae, 0x4a, 0x54, 0x4e, }; static const unsigned char ecdh_brainpoolp224r1_39_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_39_sharedsecret[] = { 0x65, 0x9f, 0x94, 0x2e, 0x94, 0x9f, 0x83, 0x1c, 0x01, 0x0e, 0x98, 0x58, 0xb9, 0x2e, 0x53, 0xeb, 0xe7, 0x7e, 0xd4, 0x0f, 0xbc, 0xa3, 0x52, 0xe0, 0xb8, 0xc4, 0x8a, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_39 = { .name = "ecdh_brainpoolp224r1_39", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_39_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_39_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_39_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 40 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 40 for ECDH, tcId is 41 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_40_peerpubkey[] = { 0x8f, 0x5f, 0x0b, 0x76, 0xca, 0xbe, 0xc2, 0x93, 0x41, 0x30, 0x84, 0xbc, 0x7e, 0x43, 0x02, 0xd6, 0x3a, 0xee, 0x2e, 0x7e, 0xd8, 0xbb, 0x4d, 0x65, 0xf4, 0x4d, 0xc1, 0x76, 0x54, 0xef, 0xbb, 0x1a, 0x15, 0x4b, 0x7e, 0x95, 0x14, 0x74, 0x9b, 0x71, 0x1a, 0x7f, 0x85, 0x6b, 0xdd, 0x05, 0x86, 0x3a, 0x6a, 0x4a, 0x79, 0x6a, 0x92, 0x2f, 0x12, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_40_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_40_sharedsecret[] = { 0x38, 0xcc, 0x29, 0x3e, 0x07, 0xff, 0x30, 0x7d, 0xfc, 0x3b, 0x6b, 0xac, 0xc7, 0x6e, 0x02, 0x33, 0x4b, 0x32, 0xc5, 0x5e, 0x81, 0xd7, 0x79, 0x40, 0x81, 0xfa, 0x7c, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_40 = { .name = "ecdh_brainpoolp224r1_40", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_40_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_40_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_40_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 41 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 41 for ECDH, tcId is 42 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_41_peerpubkey[] = { 0xcb, 0x60, 0xfa, 0xa4, 0xb6, 0x7b, 0xa2, 0xea, 0xcd, 0x67, 0x97, 0x38, 0xe4, 0x33, 0x50, 0xff, 0x50, 0x63, 0x2c, 0xb5, 0x1c, 0xf8, 0x89, 0x83, 0xd3, 0xac, 0x63, 0x65, 0x19, 0xa1, 0x8f, 0xc1, 0x13, 0x46, 0x76, 0xa4, 0x7b, 0x4c, 0x96, 0x3a, 0x8b, 0xe6, 0x28, 0x46, 0x80, 0x77, 0x98, 0x7b, 0x98, 0x77, 0x77, 0xd5, 0x8a, 0x5c, 0x59, 0xd5, }; static const unsigned char ecdh_brainpoolp224r1_41_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_41_sharedsecret[] = { 0x24, 0x60, 0xad, 0x7b, 0x31, 0x89, 0x3e, 0x44, 0x4d, 0xf6, 0x18, 0xaf, 0x07, 0x53, 0x06, 0xb9, 0xc2, 0xd8, 0x49, 0x9a, 0xa5, 0xe9, 0x40, 0x55, 0xdc, 0xa7, 0x7f, 0x79, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_41 = { .name = "ecdh_brainpoolp224r1_41", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_41_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_41_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_41_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 42 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 42 for ECDH, tcId is 43 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_42_peerpubkey[] = { 0x3f, 0x71, 0x07, 0xe2, 0x82, 0x5d, 0xcb, 0xe6, 0xe9, 0xaa, 0xd7, 0x5c, 0x05, 0xab, 0x58, 0x0e, 0x13, 0xaa, 0x37, 0x47, 0xc2, 0x98, 0xb3, 0x5f, 0xef, 0x4e, 0xb5, 0x2f, 0x48, 0x72, 0x0e, 0x07, 0x5a, 0xc7, 0x77, 0x68, 0xd8, 0x3f, 0xa8, 0xc2, 0xa2, 0xa3, 0x8d, 0x51, 0xcb, 0xdb, 0x8e, 0x0d, 0x6a, 0x15, 0x87, 0xc6, 0x94, 0xe0, 0xfd, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_42_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_42_sharedsecret[] = { 0xa0, 0xb6, 0x2d, 0x36, 0xa5, 0xc9, 0xb6, 0x82, 0x12, 0x76, 0xb9, 0x33, 0x8e, 0x03, 0x8b, 0xdd, 0xb5, 0xd3, 0xb5, 0x83, 0x2e, 0xd8, 0xe1, 0xf9, 0xf2, 0xd8, 0x3d, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_42 = { .name = "ecdh_brainpoolp224r1_42", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_42_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_42_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_42_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 43 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 43 for ECDH, tcId is 44 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_43_peerpubkey[] = { 0x10, 0x49, 0x9a, 0xf4, 0xaa, 0x2a, 0x68, 0x6a, 0x86, 0x05, 0xab, 0xb5, 0xb3, 0xbf, 0x00, 0x7d, 0x9b, 0xd3, 0xef, 0x1e, 0x6f, 0x24, 0x6f, 0x40, 0x33, 0x80, 0x2e, 0xff, 0x9d, 0x65, 0xd9, 0xd5, 0x27, 0xfd, 0x91, 0xa9, 0xae, 0xc3, 0x2b, 0x7d, 0x92, 0xfd, 0x5c, 0x6d, 0x73, 0x67, 0xd1, 0x6f, 0xbf, 0xda, 0x0a, 0x2d, 0xc7, 0xd2, 0x94, 0x88, }; static const unsigned char ecdh_brainpoolp224r1_43_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_43_sharedsecret[] = { 0x4f, 0x80, 0x15, 0x99, 0x24, 0x26, 0x55, 0x10, 0x2d, 0x0a, 0x22, 0xf8, 0x7d, 0x2f, 0x78, 0xaa, 0x94, 0x8b, 0xc8, 0x12, 0xac, 0x34, 0x85, 0x6b, 0x80, 0x69, 0x8e, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_43 = { .name = "ecdh_brainpoolp224r1_43", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_43_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_43_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_43_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 44 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 44 for ECDH, tcId is 45 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_44_peerpubkey[] = { 0x1e, 0xb8, 0x2f, 0x61, 0xb0, 0x3b, 0xd6, 0xbe, 0xbd, 0xdd, 0xc4, 0x3a, 0x2f, 0x65, 0x1a, 0x05, 0x41, 0xe2, 0x57, 0x65, 0x01, 0xbf, 0x5f, 0x96, 0x2b, 0x85, 0x8d, 0xba, 0xcf, 0x14, 0x10, 0x78, 0xda, 0x89, 0x0b, 0x0e, 0x53, 0xcb, 0xbb, 0x6a, 0xc4, 0x63, 0xaf, 0xb9, 0x77, 0x82, 0xfb, 0xd6, 0x84, 0xb1, 0x44, 0xae, 0xdd, 0x83, 0xbd, 0x31, }; static const unsigned char ecdh_brainpoolp224r1_44_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_44_sharedsecret[] = { 0x17, 0xaf, 0x73, 0xca, 0xd5, 0xe3, 0x70, 0x20, 0x89, 0xd1, 0x25, 0x00, 0x44, 0xbf, 0x41, 0x6b, 0xe7, 0x73, 0x5e, 0x62, 0xdd, 0x48, 0x6b, 0x85, 0x31, 0x0d, 0x22, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_44 = { .name = "ecdh_brainpoolp224r1_44", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_44_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_44_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_44_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 45 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 45 for ECDH, tcId is 46 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_45_peerpubkey[] = { 0x7f, 0x90, 0x2c, 0x01, 0x7f, 0x9d, 0x2e, 0xbc, 0x84, 0xe1, 0x70, 0x5a, 0x05, 0x06, 0x43, 0x6d, 0xb1, 0xb3, 0x1c, 0xd4, 0x5c, 0x04, 0x45, 0xcd, 0x1d, 0x1d, 0x0d, 0x21, 0x91, 0x32, 0x79, 0x76, 0x5b, 0xfa, 0x0c, 0xac, 0xe7, 0x4f, 0x87, 0x76, 0x3e, 0x85, 0x8c, 0xa8, 0x12, 0x92, 0xec, 0x4b, 0x9d, 0x4c, 0x3d, 0xc4, 0x14, 0xf8, 0x09, 0xc5, }; static const unsigned char ecdh_brainpoolp224r1_45_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_45_sharedsecret[] = { 0x60, 0xaf, 0xf7, 0x48, 0x34, 0xa1, 0x22, 0x4f, 0x2d, 0x35, 0x11, 0x0b, 0xc6, 0x26, 0x09, 0xe4, 0xd0, 0x63, 0xdf, 0x54, 0xbf, 0x5f, 0xeb, 0x22, 0x86, 0x37, 0x3c, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_45 = { .name = "ecdh_brainpoolp224r1_45", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_45_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_45_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_45_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 46 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 46 for ECDH, tcId is 47 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_46_peerpubkey[] = { 0xc6, 0x7d, 0xe0, 0xf4, 0xdd, 0x07, 0x81, 0x91, 0xa1, 0xc3, 0x91, 0xd1, 0xe7, 0x6b, 0x93, 0xb7, 0x60, 0xf2, 0xe8, 0xb1, 0x2a, 0x74, 0xcd, 0xb2, 0xa0, 0x3d, 0xa2, 0x9c, 0xc7, 0x7f, 0x40, 0x0d, 0x21, 0xce, 0x7b, 0x13, 0x59, 0x80, 0xba, 0x91, 0x87, 0x63, 0x48, 0x1d, 0x82, 0x3f, 0xe9, 0x80, 0x81, 0x07, 0xe4, 0x25, 0x65, 0x5e, 0xf2, 0x92, }; static const unsigned char ecdh_brainpoolp224r1_46_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_46_sharedsecret[] = { 0xa7, 0x7b, 0xdf, 0x8e, 0x39, 0x00, 0xc3, 0x0a, 0xbf, 0xae, 0x7e, 0xdc, 0xaf, 0x1d, 0x26, 0xd4, 0x32, 0x88, 0xfb, 0x35, 0xd9, 0xbc, 0xbb, 0x5a, 0x92, 0x27, 0xa0, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_46 = { .name = "ecdh_brainpoolp224r1_46", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_46_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_46_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_46_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 47 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 47 for ECDH, tcId is 48 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_47_peerpubkey[] = { 0x33, 0xb0, 0x06, 0xd4, 0xd5, 0x65, 0x4f, 0xc5, 0x70, 0x36, 0x8a, 0xb6, 0x04, 0xf5, 0x46, 0x20, 0xf9, 0xa5, 0x6b, 0xd4, 0xa5, 0x6b, 0x2e, 0x87, 0xea, 0x20, 0x86, 0x69, 0xd7, 0xa3, 0x87, 0x79, 0xbd, 0x15, 0x05, 0xea, 0xfd, 0x26, 0xf8, 0x87, 0x58, 0x3e, 0xcd, 0x1d, 0xb3, 0x15, 0x15, 0x22, 0x1b, 0x21, 0xd3, 0xe8, 0x7f, 0x69, 0xf1, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_47_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_47_sharedsecret[] = { 0x8d, 0x65, 0x90, 0xea, 0x4e, 0x4f, 0xfb, 0x6c, 0x29, 0xfe, 0x61, 0xb3, 0x7b, 0x2f, 0x12, 0x7d, 0x9d, 0x79, 0xd3, 0x14, 0xa3, 0x65, 0x54, 0x32, 0x88, 0xb3, 0xcf, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_47 = { .name = "ecdh_brainpoolp224r1_47", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_47_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_47_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_47_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 48 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 48 for ECDH, tcId is 49 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_48_peerpubkey[] = { 0x93, 0xbe, 0x47, 0x42, 0x2c, 0xce, 0xea, 0xa1, 0xd6, 0xa2, 0x42, 0x05, 0xb0, 0xae, 0x3e, 0xe7, 0x08, 0x31, 0xf4, 0x76, 0x8a, 0xf5, 0x80, 0x7e, 0x0d, 0x86, 0xa7, 0x7e, 0x6b, 0x1e, 0x03, 0x26, 0x3a, 0x71, 0x6b, 0xf3, 0x8a, 0x5f, 0xeb, 0xea, 0x4d, 0xdd, 0xda, 0x6c, 0x05, 0xba, 0x7c, 0x2e, 0x25, 0x77, 0x5f, 0xea, 0xc8, 0xcc, 0xd5, 0xc5, }; static const unsigned char ecdh_brainpoolp224r1_48_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_48_sharedsecret[] = { 0xc2, 0x52, 0xb5, 0x97, 0x18, 0xc8, 0xf2, 0xf4, 0x99, 0x92, 0xf4, 0x46, 0x9f, 0xf3, 0x91, 0xb1, 0xe2, 0x7a, 0xae, 0x07, 0x20, 0x8c, 0x83, 0xbc, 0xb8, 0xbb, 0x36, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_48 = { .name = "ecdh_brainpoolp224r1_48", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_48_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_48_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_48_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 49 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 49 for ECDH, tcId is 50 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_49_peerpubkey[] = { 0x3b, 0x44, 0x94, 0x78, 0x36, 0x04, 0x7e, 0x3d, 0xb6, 0xa4, 0xd9, 0x90, 0xf7, 0x5d, 0x54, 0x7c, 0x79, 0x02, 0xae, 0x1f, 0xaa, 0xe6, 0x76, 0x08, 0xea, 0x38, 0x81, 0x23, 0x31, 0xe0, 0x16, 0xca, 0xd0, 0xdb, 0xc3, 0x59, 0x85, 0x92, 0xa6, 0x59, 0x41, 0x91, 0xb8, 0x7e, 0x7f, 0x18, 0x80, 0xe5, 0xbe, 0x53, 0x2a, 0x09, 0x05, 0x7d, 0x95, 0xbc, }; static const unsigned char ecdh_brainpoolp224r1_49_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_49_sharedsecret[] = { 0xd3, 0x4a, 0x8e, 0xce, 0x56, 0x8b, 0x3d, 0xad, 0xc9, 0x75, 0x79, 0x90, 0xcd, 0x74, 0x21, 0x05, 0x84, 0xc7, 0x03, 0xf8, 0xbb, 0x9f, 0xc7, 0x6c, 0xc2, 0x9c, 0xaf, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_49 = { .name = "ecdh_brainpoolp224r1_49", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_49_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_49_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_49_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 50 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 50 for ECDH, tcId is 51 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_50_peerpubkey[] = { 0xb5, 0x8e, 0x2e, 0x42, 0x6d, 0x9f, 0xb1, 0xb0, 0x48, 0x38, 0xbc, 0xae, 0x55, 0xad, 0x81, 0xc1, 0x8e, 0x93, 0x74, 0xf5, 0x2d, 0x00, 0x0f, 0x2d, 0x7e, 0xa1, 0x86, 0xcb, 0x6f, 0x30, 0x15, 0xb0, 0x83, 0xe3, 0xcd, 0xdb, 0xce, 0x3a, 0x28, 0xcd, 0xfe, 0x5a, 0xd3, 0x67, 0xec, 0x6f, 0x50, 0x28, 0x63, 0x3b, 0xa9, 0xfe, 0x8a, 0x8a, 0xd6, 0xe5, }; static const unsigned char ecdh_brainpoolp224r1_50_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_50_sharedsecret[] = { 0x31, 0x9a, 0xc4, 0xf1, 0xf5, 0xaf, 0xc6, 0x5a, 0xe1, 0xdb, 0x81, 0x2e, 0x9c, 0xc3, 0xc8, 0x61, 0xe0, 0xf4, 0x3c, 0x77, 0x92, 0x51, 0x04, 0x37, 0x28, 0x56, 0xf3, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_50 = { .name = "ecdh_brainpoolp224r1_50", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_50_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_50_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_50_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 51 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 51 for ECDH, tcId is 52 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_51_peerpubkey[] = { 0xb2, 0xf8, 0x91, 0xd5, 0x11, 0x14, 0xb1, 0xda, 0x3f, 0xf3, 0x95, 0x2d, 0xf2, 0x06, 0x0a, 0x68, 0x74, 0x4b, 0xf6, 0x34, 0x01, 0x29, 0xa3, 0x98, 0x5c, 0x22, 0xea, 0xd4, 0x0a, 0xb8, 0xbc, 0x2f, 0xe6, 0x67, 0xcb, 0xe3, 0x46, 0xd7, 0xe0, 0x45, 0x56, 0xe1, 0x3b, 0xab, 0x13, 0x2d, 0xa4, 0x93, 0x31, 0x0f, 0xa8, 0x1d, 0x48, 0xfb, 0xe5, 0xd1, }; static const unsigned char ecdh_brainpoolp224r1_51_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_51_sharedsecret[] = { 0x6c, 0xe8, 0xac, 0x20, 0x32, 0xb7, 0x24, 0x8b, 0x39, 0xeb, 0x22, 0x0c, 0xc7, 0xaf, 0x23, 0x4c, 0xf5, 0x37, 0x25, 0xf4, 0x62, 0xaf, 0x53, 0x06, 0x62, 0xa9, 0x51, 0x25, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_51 = { .name = "ecdh_brainpoolp224r1_51", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_51_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_51_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_51_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 52 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 52 for ECDH, tcId is 53 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_52_peerpubkey[] = { 0x2b, 0xf4, 0x3b, 0xf3, 0x72, 0x42, 0xe3, 0x97, 0xe8, 0xe7, 0x86, 0x33, 0xa3, 0x0c, 0xa2, 0xc2, 0x4b, 0xb4, 0xba, 0x5f, 0xdf, 0xd1, 0x87, 0x8e, 0x2b, 0x40, 0x62, 0x9d, 0x54, 0xb1, 0x89, 0x6c, 0x2e, 0x95, 0xaf, 0xc5, 0xce, 0x6a, 0x95, 0x1f, 0x63, 0xf8, 0x59, 0x7e, 0x66, 0xb2, 0x1c, 0xc0, 0x6a, 0x95, 0x99, 0xeb, 0xf6, 0x6f, 0x65, 0x42, }; static const unsigned char ecdh_brainpoolp224r1_52_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_52_sharedsecret[] = { 0xac, 0xdc, 0x79, 0x45, 0xd5, 0x4e, 0xbd, 0x8c, 0x00, 0xd2, 0x2f, 0xb3, 0x9e, 0x0e, 0x9e, 0xf8, 0x49, 0x5b, 0x9c, 0xae, 0x64, 0x2a, 0x34, 0xd7, 0x9d, 0xd9, 0x2c, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_52 = { .name = "ecdh_brainpoolp224r1_52", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_52_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_52_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_52_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 53 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 53 for ECDH, tcId is 54 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_53_peerpubkey[] = { 0xb9, 0x2f, 0xae, 0xa4, 0xa9, 0x24, 0x44, 0x0c, 0x2c, 0x0e, 0xe4, 0x34, 0x2f, 0x45, 0x21, 0x00, 0x35, 0xf8, 0x3a, 0xee, 0x1e, 0x43, 0x22, 0x89, 0x07, 0xbe, 0x1b, 0xd6, 0x9e, 0x3f, 0x62, 0xbe, 0x11, 0xca, 0xa4, 0x52, 0x5a, 0x19, 0x4c, 0x94, 0x91, 0x8f, 0x55, 0x5b, 0x0a, 0x50, 0x7d, 0x2b, 0x30, 0x7e, 0xe5, 0xfa, 0xb3, 0x5b, 0x8d, 0xde, }; static const unsigned char ecdh_brainpoolp224r1_53_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_53_sharedsecret[] = { 0x4b, 0x2f, 0x62, 0x58, 0xb4, 0x41, 0x9d, 0xd7, 0x3f, 0x27, 0x5e, 0x8f, 0xde, 0xd5, 0xdf, 0x56, 0xd3, 0xa1, 0xc1, 0x4c, 0xae, 0x2f, 0x79, 0x83, 0xd1, 0xbd, 0x9f, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_53 = { .name = "ecdh_brainpoolp224r1_53", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_53_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_53_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_53_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 54 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 54 for ECDH, tcId is 55 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_54_peerpubkey[] = { 0x1c, 0x13, 0x01, 0xc8, 0x51, 0x50, 0xac, 0xac, 0xdb, 0x42, 0x8c, 0x85, 0x4d, 0x21, 0x4f, 0x5a, 0x1c, 0xca, 0x4c, 0x2e, 0x1f, 0x44, 0x68, 0xdb, 0xc4, 0xd3, 0xe0, 0x41, 0x4f, 0x4f, 0x50, 0xd7, 0x3d, 0xbd, 0x1d, 0xd7, 0xcc, 0x61, 0x80, 0xe1, 0x01, 0xd5, 0xc9, 0xe2, 0x65, 0xac, 0x7f, 0x54, 0x58, 0x44, 0x07, 0x6a, 0xdc, 0xcd, 0xc6, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_54_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_54_sharedsecret[] = { 0x8e, 0x20, 0x93, 0x97, 0xbb, 0xee, 0x6d, 0xed, 0x3f, 0xb0, 0x1e, 0xab, 0x81, 0x1e, 0x99, 0x8f, 0x31, 0x4f, 0x8d, 0x4e, 0xb3, 0xc4, 0x17, 0x14, 0x3f, 0x59, 0xee, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_54 = { .name = "ecdh_brainpoolp224r1_54", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_54_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_54_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_54_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 55 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 55 for ECDH, tcId is 56 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_55_peerpubkey[] = { 0xc8, 0xd5, 0xcb, 0x1c, 0xd1, 0x75, 0x84, 0x5d, 0xbf, 0x35, 0xb3, 0x30, 0xbe, 0xf2, 0x47, 0x72, 0x6f, 0x4b, 0xda, 0xc9, 0x39, 0x6e, 0xa3, 0xa4, 0x02, 0x0d, 0x31, 0x36, 0x4a, 0xdb, 0xb5, 0xec, 0x1c, 0x54, 0x1b, 0x56, 0x86, 0x9f, 0xfb, 0x7e, 0x9a, 0x08, 0x8c, 0x39, 0xb4, 0x0c, 0xb1, 0x26, 0xe0, 0x0b, 0x37, 0xa7, 0xe1, 0x23, 0xcd, 0x06, }; static const unsigned char ecdh_brainpoolp224r1_55_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_55_sharedsecret[] = { 0x0a, 0xf9, 0xb8, 0xde, 0x7f, 0x20, 0x70, 0x5c, 0xa3, 0x8b, 0x8a, 0x0b, 0x31, 0x46, 0x89, 0x71, 0xd1, 0x20, 0xbc, 0x6c, 0x22, 0xa6, 0x5b, 0xc5, 0xeb, 0xe1, 0xa2, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_55 = { .name = "ecdh_brainpoolp224r1_55", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_55_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_55_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_55_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 56 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 56 for ECDH, tcId is 57 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_56_peerpubkey[] = { 0xb3, 0x79, 0x6c, 0xea, 0x49, 0x7c, 0x65, 0x85, 0xd0, 0xb7, 0xc7, 0xe3, 0xc7, 0x1d, 0x42, 0xaa, 0x18, 0x48, 0x10, 0x74, 0xa2, 0x9e, 0xf2, 0x5f, 0xb5, 0x1c, 0x46, 0x94, 0xc6, 0xc9, 0x30, 0x98, 0x65, 0x98, 0xf4, 0x8a, 0x7c, 0x04, 0xa2, 0x75, 0xc4, 0x49, 0x52, 0xe5, 0x3a, 0x94, 0xdb, 0xa3, 0x58, 0x84, 0xbc, 0xc9, 0xe4, 0xf4, 0x1e, 0x56, }; static const unsigned char ecdh_brainpoolp224r1_56_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_56_sharedsecret[] = { 0x77, 0xce, 0x5b, 0xaa, 0x58, 0x50, 0x6d, 0xda, 0xe3, 0x16, 0x4b, 0x44, 0x04, 0x54, 0x1f, 0x3d, 0x57, 0xdc, 0x16, 0x00, 0xd2, 0x32, 0x0b, 0x14, 0x3c, 0x29, 0x96, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_56 = { .name = "ecdh_brainpoolp224r1_56", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_56_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_56_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_56_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 57 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 57 for ECDH, tcId is 58 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_57_peerpubkey[] = { 0x3a, 0x73, 0x8d, 0xa4, 0x06, 0xfb, 0x35, 0x57, 0xc2, 0xab, 0xe2, 0xf7, 0xf4, 0xce, 0xce, 0x40, 0xe4, 0x71, 0x49, 0x27, 0x74, 0xdd, 0x8d, 0xb5, 0x68, 0xed, 0xe6, 0x4c, 0xc0, 0xf1, 0x1b, 0x9e, 0xcb, 0x35, 0x38, 0xd3, 0x99, 0x91, 0x28, 0xfc, 0x54, 0x8d, 0x5d, 0x65, 0x48, 0x75, 0x63, 0xee, 0x5f, 0x60, 0x7b, 0xeb, 0xe3, 0x0a, 0xa4, 0x98, }; static const unsigned char ecdh_brainpoolp224r1_57_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_57_sharedsecret[] = { 0x9e, 0xfb, 0xd6, 0xbe, 0x99, 0x66, 0xe2, 0x58, 0x34, 0x22, 0x5c, 0x5b, 0x1a, 0x72, 0xc5, 0x45, 0x86, 0x70, 0xbb, 0x47, 0x04, 0xae, 0xd5, 0x5f, 0x98, 0x62, 0x67, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_57 = { .name = "ecdh_brainpoolp224r1_57", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_57_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_57_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_57_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 58 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 58 for ECDH, tcId is 59 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_58_peerpubkey[] = { 0xbd, 0xb8, 0x6f, 0x08, 0x06, 0xdc, 0x71, 0x51, 0xb0, 0xfb, 0xc1, 0xb1, 0x10, 0x00, 0x00, 0xcb, 0x8a, 0x0e, 0x38, 0x12, 0xf9, 0xc1, 0xbf, 0x70, 0x2b, 0xcc, 0xfb, 0xeb, 0x33, 0xed, 0xe8, 0xb9, 0x40, 0x56, 0x64, 0x6d, 0xb3, 0x7d, 0x38, 0xc8, 0x3d, 0x40, 0x13, 0xc8, 0xc0, 0x9a, 0xc0, 0x9e, 0xa9, 0x82, 0xbe, 0x0c, 0xff, 0x2e, 0xb3, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_58_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_58_sharedsecret[] = { 0x40, 0xab, 0x16, 0xbc, 0x2e, 0x60, 0x7e, 0x10, 0xa7, 0x9c, 0xe2, 0x97, 0xf5, 0xee, 0x69, 0x91, 0x35, 0x69, 0x9f, 0xd5, 0x5a, 0xfe, 0x55, 0x43, 0x0a, 0xa3, 0x2e, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_58 = { .name = "ecdh_brainpoolp224r1_58", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_58_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_58_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_58_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 59 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 59 for ECDH, tcId is 60 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_59_peerpubkey[] = { 0x86, 0x8e, 0xc4, 0xeb, 0x5d, 0xee, 0xf5, 0x17, 0xab, 0x05, 0x3c, 0xd9, 0x1e, 0xb9, 0xe5, 0xcf, 0xb4, 0x99, 0x0f, 0x0d, 0x8b, 0xe2, 0xb7, 0x81, 0x81, 0x07, 0x2a, 0x5d, 0x0f, 0xfc, 0xda, 0x3c, 0xa1, 0x13, 0x87, 0x29, 0xad, 0xea, 0x01, 0xfe, 0x65, 0x3c, 0x06, 0xe4, 0xfd, 0x07, 0x8c, 0x63, 0x5e, 0x50, 0xa5, 0x16, 0x2d, 0x49, 0x60, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_59_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_59_sharedsecret[] = { 0xa1, 0xf7, 0x3b, 0x33, 0xcf, 0xea, 0x91, 0x77, 0x47, 0x28, 0x67, 0x94, 0xf3, 0x58, 0x91, 0x8a, 0x24, 0x2c, 0x0b, 0x9e, 0x6a, 0xea, 0x74, 0x68, 0xd5, 0x6b, 0x49, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_59 = { .name = "ecdh_brainpoolp224r1_59", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_59_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_59_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_59_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 60 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 60 for ECDH, tcId is 61 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_60_peerpubkey[] = { 0x30, 0x11, 0x10, 0x1a, 0x41, 0xa6, 0x74, 0xf3, 0xcf, 0x53, 0xbf, 0x14, 0x01, 0x88, 0x4f, 0xca, 0xaf, 0x7f, 0xb8, 0x22, 0x28, 0x29, 0x73, 0x79, 0xbc, 0x79, 0x24, 0xba, 0x0a, 0x09, 0x56, 0x81, 0x9a, 0xad, 0x74, 0x72, 0x95, 0x7e, 0x90, 0xc3, 0x3e, 0x81, 0x9c, 0xfa, 0xe0, 0xcc, 0xbd, 0x4e, 0x0c, 0x49, 0xf6, 0xbc, 0xac, 0xbe, 0xa9, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_60_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_60_sharedsecret[] = { 0x3e, 0xa3, 0xbd, 0x6d, 0x30, 0x2b, 0xe2, 0x8d, 0x53, 0x7d, 0x9a, 0x34, 0x6c, 0x05, 0xfe, 0x4d, 0x91, 0xb4, 0xab, 0x3c, 0x83, 0x9e, 0x9a, 0x6f, 0x53, 0xba, 0xeb, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_60 = { .name = "ecdh_brainpoolp224r1_60", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_60_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_60_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_60_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 61 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 61 for ECDH, tcId is 62 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_61_peerpubkey[] = { 0x21, 0xca, 0x1e, 0x97, 0x1b, 0x37, 0xa1, 0x70, 0x0b, 0x66, 0x4f, 0x44, 0x1c, 0xef, 0x0f, 0x06, 0x99, 0xb2, 0xfd, 0x1b, 0x83, 0x49, 0x4f, 0x1b, 0xc2, 0x5c, 0x02, 0x12, 0xa0, 0x1e, 0x37, 0x1b, 0x88, 0x24, 0x46, 0x6e, 0x76, 0xcc, 0x43, 0x4d, 0xbd, 0xd9, 0x09, 0xc0, 0x07, 0x5b, 0x67, 0xb3, 0xc3, 0x18, 0xd2, 0x87, 0xc7, 0x2c, 0xcf, 0x59, }; static const unsigned char ecdh_brainpoolp224r1_61_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_61_sharedsecret[] = { 0x42, 0xbe, 0x91, 0x28, 0x35, 0xc3, 0x4e, 0x45, 0xb9, 0xcf, 0xfb, 0x6b, 0x88, 0xa9, 0x64, 0xb7, 0x30, 0xbe, 0xd9, 0x32, 0xc1, 0x54, 0x6c, 0x6b, 0xec, 0x36, 0xfd, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_61 = { .name = "ecdh_brainpoolp224r1_61", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_61_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_61_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_61_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 62 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 62 for ECDH, tcId is 63 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_62_peerpubkey[] = { 0xbc, 0x4c, 0x9c, 0x1e, 0xeb, 0xb0, 0x41, 0x75, 0xc5, 0xd6, 0x9e, 0x9e, 0x7e, 0xd1, 0xdf, 0x90, 0x74, 0x9d, 0x92, 0x40, 0x06, 0xed, 0x3b, 0x9a, 0xa3, 0x27, 0x0a, 0xbb, 0xac, 0x9c, 0xa3, 0x34, 0xa4, 0xdf, 0xbb, 0x79, 0x02, 0x78, 0x2a, 0x6f, 0x6a, 0xcb, 0xd3, 0xb9, 0xee, 0x84, 0x2a, 0x52, 0x8e, 0x18, 0x9a, 0x2b, 0xe8, 0x23, 0x96, 0x0e, }; static const unsigned char ecdh_brainpoolp224r1_62_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_62_sharedsecret[] = { 0x8f, 0x82, 0x7c, 0x77, 0x9c, 0xf9, 0x52, 0xd1, 0x7e, 0x92, 0x57, 0x45, 0x28, 0x64, 0x02, 0x1d, 0xd1, 0xfa, 0x88, 0x55, 0xb5, 0x90, 0xf6, 0x19, 0x66, 0x5e, 0xe4, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_62 = { .name = "ecdh_brainpoolp224r1_62", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_62_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_62_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_62_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 63 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 63 for ECDH, tcId is 64 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_63_peerpubkey[] = { 0xac, 0xf8, 0x35, 0xdd, 0xf6, 0x0e, 0xd0, 0x17, 0x77, 0xad, 0x8a, 0x19, 0xe3, 0x24, 0xda, 0x34, 0x77, 0xd8, 0x81, 0xf6, 0x25, 0xcd, 0x0a, 0xe1, 0x9c, 0x4f, 0x81, 0xe2, 0xbb, 0xc0, 0xe5, 0x73, 0x73, 0xd7, 0xe7, 0x64, 0xb3, 0x2d, 0x16, 0x8c, 0xfd, 0xa2, 0xeb, 0x32, 0xd1, 0x32, 0x7d, 0x61, 0x57, 0x55, 0x1a, 0x10, 0xeb, 0x79, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp224r1_63_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_63_sharedsecret[] = { 0x85, 0x58, 0x87, 0xd8, 0xa2, 0x66, 0x14, 0xef, 0xa8, 0x1e, 0x51, 0x1d, 0xbd, 0xd1, 0x2d, 0x1a, 0x80, 0x39, 0x1f, 0xbd, 0x96, 0x7b, 0xb8, 0xaa, 0x65, 0xcf, 0xdc, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_63 = { .name = "ecdh_brainpoolp224r1_63", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_63_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_63_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_63_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 64 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 64 for ECDH, tcId is 65 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_64_peerpubkey[] = { 0x5e, 0xdb, 0x93, 0x33, 0xab, 0xdd, 0x33, 0xdf, 0xcc, 0xab, 0x64, 0xdc, 0xc6, 0x8f, 0xc3, 0x57, 0xb8, 0x4a, 0x64, 0x4c, 0xca, 0x45, 0xdb, 0x6d, 0x71, 0xa7, 0x61, 0xa7, 0xd1, 0xc8, 0xc0, 0x15, 0xa8, 0x40, 0x76, 0xe6, 0x12, 0x7c, 0xc6, 0xba, 0xcd, 0xb1, 0xf7, 0x82, 0x10, 0x9b, 0xb7, 0xd0, 0xec, 0x4f, 0xac, 0x80, 0x2d, 0x5b, 0x8f, 0x1e, }; static const unsigned char ecdh_brainpoolp224r1_64_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_64_sharedsecret[] = { 0x77, 0x5b, 0xa3, 0x6b, 0x9a, 0x75, 0x6f, 0x40, 0x6b, 0xf3, 0x95, 0x8d, 0xfd, 0x1b, 0xcb, 0x77, 0xfe, 0x72, 0x12, 0xee, 0xce, 0xdc, 0x30, 0xd9, 0x40, 0xd2, 0x8a, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_64 = { .name = "ecdh_brainpoolp224r1_64", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_64_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_64_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_64_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 65 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 65 for ECDH, tcId is 66 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_65_peerpubkey[] = { 0x6f, 0x31, 0x00, 0x3b, 0x20, 0x69, 0xb5, 0x05, 0x1e, 0x29, 0x22, 0x53, 0x44, 0x54, 0xf9, 0x43, 0x50, 0x81, 0xa6, 0xe5, 0x0b, 0x10, 0x76, 0x72, 0x33, 0x4d, 0xa0, 0xd8, 0x38, 0xc8, 0x9b, 0xb6, 0xb9, 0xa3, 0xc0, 0xd1, 0x22, 0x95, 0xec, 0x7a, 0x0e, 0xee, 0x47, 0x5f, 0x7f, 0x5f, 0x45, 0x70, 0x17, 0xa0, 0x33, 0x34, 0xe8, 0x55, 0x8b, 0x63, }; static const unsigned char ecdh_brainpoolp224r1_65_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_65_sharedsecret[] = { 0x9d, 0xea, 0xac, 0x0d, 0x2f, 0x1b, 0x89, 0x5a, 0x83, 0x9e, 0x90, 0xcf, 0x20, 0xc8, 0x80, 0x56, 0x84, 0x0d, 0x65, 0x11, 0xa9, 0x74, 0x12, 0xd1, 0xa9, 0xc5, 0x9b, 0x90, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_65 = { .name = "ecdh_brainpoolp224r1_65", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_65_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_65_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_65_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 66 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 66 for ECDH, tcId is 67 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_66_peerpubkey[] = { 0x6d, 0x84, 0xb5, 0xf3, 0x21, 0xd7, 0xa9, 0x6a, 0xdc, 0x27, 0xa2, 0x25, 0xab, 0xf6, 0x68, 0x75, 0xee, 0x29, 0xe7, 0x03, 0xfb, 0x04, 0xf9, 0xe8, 0xbf, 0x3c, 0x0d, 0x1e, 0xa2, 0xfa, 0xcb, 0xae, 0x18, 0x8e, 0x28, 0xdd, 0x45, 0xc6, 0x96, 0x78, 0x71, 0xdb, 0xc8, 0xdd, 0x1c, 0x61, 0x2c, 0x6d, 0x5a, 0xb5, 0x2a, 0x19, 0x74, 0x70, 0x62, 0xa6, }; static const unsigned char ecdh_brainpoolp224r1_66_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_66_sharedsecret[] = { 0x86, 0x2a, 0xd2, 0xe6, 0x06, 0x1c, 0x96, 0xf3, 0xeb, 0xc7, 0x16, 0x42, 0xbe, 0x4b, 0x17, 0xeb, 0x97, 0xfa, 0x2a, 0xc7, 0x67, 0x7d, 0x91, 0xb2, 0x20, 0x2d, 0x12, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_66 = { .name = "ecdh_brainpoolp224r1_66", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_66_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_66_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_66_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 67 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 67 for ECDH, tcId is 68 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_67_peerpubkey[] = { 0x10, 0x46, 0x2c, 0xe1, 0xb1, 0x83, 0x64, 0x37, 0x44, 0xe1, 0xb3, 0xbb, 0x10, 0x4d, 0x49, 0x2a, 0xb5, 0x81, 0x44, 0x31, 0x93, 0xde, 0x27, 0x8a, 0x2d, 0x08, 0x6e, 0x06, 0x94, 0xae, 0x45, 0xf5, 0xb3, 0xc2, 0x07, 0x3e, 0x48, 0xdd, 0x02, 0x39, 0x71, 0xb2, 0xe2, 0x3d, 0x03, 0x66, 0x0f, 0x5f, 0x13, 0x7f, 0x40, 0x86, 0xae, 0xf5, 0x04, 0x20, }; static const unsigned char ecdh_brainpoolp224r1_67_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_67_sharedsecret[] = { 0xb5, 0x73, 0x76, 0x78, 0x42, 0x47, 0x80, 0x2d, 0xa7, 0xf0, 0x54, 0xfd, 0x07, 0xba, 0x81, 0xfa, 0xa5, 0xd6, 0x1f, 0x59, 0xea, 0x23, 0x56, 0xc6, 0x55, 0x44, 0x6a, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_67 = { .name = "ecdh_brainpoolp224r1_67", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_67_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_67_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_67_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 68 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 68 for ECDH, tcId is 69 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_68_peerpubkey[] = { 0x56, 0x70, 0x77, 0x7f, 0xec, 0xa5, 0xd8, 0x26, 0xe7, 0x2c, 0x30, 0x73, 0xea, 0x18, 0x35, 0xa0, 0xb4, 0x84, 0xd6, 0x2e, 0xea, 0x4a, 0x40, 0x81, 0x65, 0x9a, 0x8e, 0xb6, 0x4e, 0x75, 0xad, 0x7f, 0x58, 0xd8, 0xe5, 0x8c, 0xf9, 0xe0, 0x0e, 0x95, 0x7d, 0xbb, 0xb7, 0x77, 0x52, 0xe4, 0xe9, 0xf9, 0xeb, 0x1c, 0x3a, 0x76, 0x12, 0x27, 0x50, 0x02, }; static const unsigned char ecdh_brainpoolp224r1_68_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_68_sharedsecret[] = { 0x96, 0xd0, 0x5f, 0x4a, 0x55, 0x0e, 0xeb, 0xa0, 0x49, 0x58, 0x9e, 0x44, 0xda, 0x19, 0x24, 0x31, 0xc6, 0x6d, 0x8f, 0x86, 0x64, 0x5e, 0x4d, 0xe2, 0x13, 0xed, 0xbb, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_68 = { .name = "ecdh_brainpoolp224r1_68", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_68_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_68_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_68_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 69 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 69 for ECDH, tcId is 70 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_69_peerpubkey[] = { 0x2c, 0x16, 0x08, 0x0a, 0x1a, 0xee, 0xe2, 0x10, 0xc8, 0xde, 0x17, 0xd6, 0xc2, 0x2d, 0x35, 0x7d, 0x1a, 0x46, 0x23, 0x14, 0x7e, 0x18, 0x41, 0x7d, 0x68, 0xd6, 0xd0, 0x71, 0x42, 0x3d, 0x80, 0x15, 0x17, 0x9c, 0x02, 0x64, 0xd0, 0xf2, 0xe3, 0xc0, 0x76, 0xe0, 0xcf, 0x1f, 0x40, 0xd8, 0x19, 0x7d, 0xa9, 0xe3, 0x26, 0xa7, 0x04, 0x2f, 0xe6, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_69_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_69_sharedsecret[] = { 0x3f, 0xd1, 0x7f, 0x96, 0x72, 0x96, 0x53, 0xc9, 0xf5, 0xcc, 0x3b, 0xac, 0x07, 0x42, 0xb7, 0x8a, 0x6e, 0x34, 0x46, 0x47, 0xbd, 0xcb, 0x56, 0x26, 0xd2, 0x97, 0xff, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_69 = { .name = "ecdh_brainpoolp224r1_69", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_69_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_69_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_69_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 70 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 70 for ECDH, tcId is 71 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_70_peerpubkey[] = { 0x14, 0x30, 0x39, 0x8d, 0x1f, 0x97, 0x63, 0x94, 0xd4, 0xe2, 0x96, 0xd0, 0x09, 0x9a, 0x02, 0x86, 0x87, 0x4d, 0x61, 0x1e, 0x4b, 0x64, 0x88, 0x3b, 0xe6, 0x85, 0x65, 0xbb, 0x05, 0xc2, 0x9f, 0xaa, 0x8e, 0x34, 0xe4, 0xd6, 0x75, 0x35, 0xbc, 0x94, 0x4c, 0x72, 0x31, 0xc5, 0x95, 0x29, 0xac, 0x3d, 0x2d, 0x7f, 0x3d, 0xdb, 0x24, 0x3d, 0x0b, 0xa0, }; static const unsigned char ecdh_brainpoolp224r1_70_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_70_sharedsecret[] = { 0x6b, 0x13, 0x72, 0x8e, 0xf0, 0xb7, 0x6a, 0x8e, 0xe5, 0x25, 0xe2, 0xac, 0x95, 0xfb, 0x3d, 0xa2, 0x77, 0xc6, 0x71, 0x7e, 0xfc, 0x7c, 0x09, 0x4e, 0x0c, 0x7a, 0xfc, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_70 = { .name = "ecdh_brainpoolp224r1_70", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_70_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_70_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_70_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 71 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 71 for ECDH, tcId is 72 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_71_peerpubkey[] = { 0x4f, 0x87, 0x3d, 0x73, 0x60, 0xc5, 0x24, 0x8c, 0xc1, 0x06, 0x75, 0xe0, 0x3b, 0x49, 0x80, 0xad, 0xfc, 0x5e, 0x6b, 0x8a, 0x7d, 0x21, 0xbd, 0x5f, 0x9f, 0xfd, 0xae, 0xca, 0xba, 0x00, 0x90, 0x62, 0x05, 0x10, 0x67, 0x99, 0x06, 0xd3, 0x49, 0x28, 0xa2, 0xfd, 0x03, 0x85, 0xf8, 0xcb, 0x33, 0x60, 0x1f, 0xa1, 0x14, 0xab, 0x1a, 0xef, 0x29, 0x97, }; static const unsigned char ecdh_brainpoolp224r1_71_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_71_sharedsecret[] = { 0xd3, 0xf0, 0x3a, 0x59, 0x8b, 0x7d, 0x2c, 0x43, 0xf1, 0xe8, 0xba, 0x95, 0x2f, 0x24, 0x86, 0xc3, 0xc5, 0xb8, 0x91, 0xb5, 0xb1, 0x53, 0xf6, 0x5f, 0xcc, 0x19, 0x83, 0xcb, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_71 = { .name = "ecdh_brainpoolp224r1_71", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_71_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_71_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_71_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 72 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 72 for ECDH, tcId is 73 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_72_peerpubkey[] = { 0x24, 0xa3, 0x82, 0xb6, 0x09, 0x76, 0xd1, 0xdd, 0x7f, 0x16, 0xd2, 0xe4, 0x95, 0x57, 0x77, 0x4a, 0x56, 0xa3, 0xd5, 0xdd, 0xa3, 0xdf, 0xb3, 0x91, 0x6d, 0xd8, 0x30, 0xde, 0x1d, 0xb3, 0x32, 0x92, 0x7b, 0x32, 0x8f, 0x8e, 0x81, 0x2c, 0xbb, 0xf4, 0x0f, 0x68, 0x60, 0x41, 0x38, 0x43, 0x83, 0x22, 0xfd, 0x68, 0xb0, 0x62, 0xe3, 0xd0, 0x23, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_72_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_72_sharedsecret[] = { 0x12, 0x29, 0x00, 0xad, 0x2d, 0x88, 0x44, 0x17, 0xdc, 0xe5, 0xe2, 0x43, 0x0f, 0x09, 0x00, 0x4a, 0xee, 0x96, 0x79, 0xdf, 0x7e, 0x26, 0x58, 0x12, 0xb5, 0x7a, 0x19, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_72 = { .name = "ecdh_brainpoolp224r1_72", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_72_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_72_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_72_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 73 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 73 for ECDH, tcId is 74 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_73_peerpubkey[] = { 0x48, 0x42, 0x33, 0xe9, 0x1d, 0xfe, 0xfe, 0x7b, 0xb9, 0xce, 0x45, 0xc3, 0xfd, 0x4d, 0xdf, 0xbd, 0x48, 0x2e, 0x74, 0x55, 0x10, 0xb9, 0xa4, 0x4a, 0x7c, 0x75, 0xda, 0x6e, 0xc9, 0x6e, 0x3b, 0xc4, 0xb7, 0xfa, 0x33, 0x31, 0xa4, 0x2e, 0x53, 0x71, 0xd6, 0xa5, 0xec, 0x54, 0x89, 0xb4, 0x7d, 0x21, 0x95, 0x80, 0x9f, 0x9f, 0xa9, 0x2b, 0x5d, 0xa2, }; static const unsigned char ecdh_brainpoolp224r1_73_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_73_sharedsecret[] = { 0x77, 0x4a, 0x89, 0x56, 0x53, 0x30, 0x17, 0x03, 0x83, 0x4d, 0x31, 0x07, 0xd3, 0xe4, 0xab, 0x01, 0x85, 0xde, 0x66, 0x76, 0x31, 0x78, 0x1c, 0xbd, 0xc1, 0x12, 0x6c, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_73 = { .name = "ecdh_brainpoolp224r1_73", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_73_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_73_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_73_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 74 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 74 for ECDH, tcId is 75 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_74_peerpubkey[] = { 0x25, 0x7f, 0x5f, 0xf6, 0xa9, 0x89, 0x04, 0xfb, 0xa3, 0x15, 0x84, 0x67, 0x2f, 0xdb, 0x05, 0xe9, 0x72, 0xbf, 0xba, 0x54, 0x90, 0xc5, 0xe3, 0x70, 0xb0, 0x55, 0xff, 0xf5, 0x1d, 0xfd, 0x3c, 0xad, 0x99, 0x4b, 0x92, 0xa2, 0xf4, 0x1f, 0x1b, 0x5c, 0x2b, 0x59, 0x4f, 0x8a, 0x0e, 0x7f, 0xd9, 0x29, 0xcc, 0xae, 0x5a, 0xd1, 0x87, 0xb4, 0x4d, 0x6f, }; static const unsigned char ecdh_brainpoolp224r1_74_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_74_sharedsecret[] = { 0x25, 0x57, 0xbc, 0x44, 0xe6, 0x81, 0xe4, 0xae, 0xcf, 0x57, 0x56, 0x18, 0x3c, 0x61, 0x43, 0x90, 0x1f, 0xa7, 0xc9, 0xfb, 0x36, 0x64, 0x42, 0xb5, 0x56, 0xdc, 0x93, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_74 = { .name = "ecdh_brainpoolp224r1_74", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_74_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_74_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_74_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 75 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 75 for ECDH, tcId is 76 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_75_peerpubkey[] = { 0x23, 0xec, 0x2d, 0x53, 0x58, 0x43, 0x13, 0x97, 0x55, 0xea, 0xc1, 0xb6, 0xfb, 0xe4, 0xee, 0xc7, 0x72, 0xcf, 0xf6, 0x93, 0x5b, 0xea, 0x57, 0xc5, 0x31, 0x59, 0x88, 0x9b, 0x46, 0x9f, 0x31, 0xe2, 0x84, 0x25, 0x4b, 0x06, 0x58, 0x3b, 0xa0, 0xfc, 0xd7, 0x5c, 0xc3, 0x17, 0x8e, 0x50, 0x2e, 0x24, 0xea, 0xb5, 0x48, 0x32, 0xe5, 0xe9, 0x4d, 0x52, }; static const unsigned char ecdh_brainpoolp224r1_75_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_75_sharedsecret[] = { 0x19, 0xa9, 0x79, 0xb7, 0x78, 0x7b, 0x22, 0x7c, 0x4d, 0xf1, 0xdc, 0x71, 0xbf, 0xcc, 0xcd, 0x57, 0x47, 0x04, 0x3b, 0xdb, 0x61, 0x10, 0xc8, 0xed, 0x69, 0x91, 0xd7, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_75 = { .name = "ecdh_brainpoolp224r1_75", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_75_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_75_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_75_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 76 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 76 for ECDH, tcId is 77 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_76_peerpubkey[] = { 0x23, 0x83, 0xf6, 0x40, 0xdd, 0x90, 0xb1, 0x5c, 0xb8, 0x9c, 0x44, 0x01, 0xd2, 0x4a, 0x82, 0xdd, 0x67, 0xf1, 0x6d, 0x12, 0xba, 0x9a, 0x96, 0xa2, 0x20, 0xed, 0x57, 0x43, 0x12, 0x24, 0x97, 0x07, 0xc4, 0xf6, 0x87, 0xbd, 0xc0, 0x2a, 0xef, 0xd8, 0x28, 0xb5, 0x15, 0x4a, 0x58, 0x57, 0x32, 0x39, 0xe6, 0x18, 0xc7, 0xa8, 0x20, 0x16, 0x26, 0xd0, }; static const unsigned char ecdh_brainpoolp224r1_76_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_76_sharedsecret[] = { 0xc5, 0xa6, 0x79, 0x53, 0x9a, 0x38, 0xa8, 0xd4, 0x4b, 0x91, 0xe2, 0x16, 0xeb, 0xbf, 0x2c, 0x28, 0x06, 0x46, 0x82, 0x34, 0x19, 0xea, 0xe4, 0xea, 0xa3, 0xb5, 0x5d, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_76 = { .name = "ecdh_brainpoolp224r1_76", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_76_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_76_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_76_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 77 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 77 for ECDH, tcId is 78 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_77_peerpubkey[] = { 0x02, 0x0e, 0x37, 0x11, 0xfc, 0xde, 0x85, 0xe4, 0xed, 0x95, 0xd2, 0xea, 0xf4, 0xb0, 0x9d, 0xc9, 0xbd, 0x98, 0xbe, 0x60, 0xc3, 0xf8, 0x0a, 0x86, 0x54, 0x30, 0xea, 0x61, 0xc9, 0x02, 0x9f, 0x67, 0xc4, 0xb4, 0xd1, 0x11, 0x6b, 0x96, 0xe4, 0x3f, 0x2e, 0x5b, 0x05, 0xed, 0x0b, 0x41, 0xe1, 0x16, 0xab, 0x2e, 0xb6, 0x5e, 0x91, 0x7f, 0xf5, 0xae, }; static const unsigned char ecdh_brainpoolp224r1_77_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_77_sharedsecret[] = { 0xd4, 0x38, 0xbd, 0xf8, 0x8a, 0x08, 0x11, 0x01, 0xcb, 0x6d, 0x12, 0x09, 0xf7, 0x2a, 0xf5, 0x2a, 0xec, 0x1d, 0x41, 0xae, 0x7c, 0x4a, 0x26, 0x8e, 0x4f, 0xd7, 0x22, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_77 = { .name = "ecdh_brainpoolp224r1_77", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_77_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_77_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_77_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 78 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 78 for ECDH, tcId is 79 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_78_peerpubkey[] = { 0xc2, 0x9d, 0x38, 0x54, 0x9d, 0xf3, 0x37, 0x36, 0x6d, 0x2f, 0x05, 0x12, 0x51, 0x5d, 0x72, 0x6b, 0x48, 0x78, 0xaa, 0x05, 0x05, 0xdd, 0x04, 0xe3, 0x9d, 0xfd, 0x27, 0xe5, 0x87, 0x5b, 0xb2, 0x8f, 0x32, 0x6f, 0x34, 0x27, 0x23, 0x11, 0x2d, 0x86, 0xdc, 0x86, 0x26, 0xef, 0xe2, 0x9b, 0x4e, 0xef, 0x6e, 0x3e, 0x66, 0x54, 0x63, 0xa9, 0xad, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_78_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_78_sharedsecret[] = { 0xa3, 0xeb, 0x0c, 0xa5, 0xf9, 0x37, 0x1d, 0x11, 0xa5, 0x14, 0x4b, 0x5a, 0xe2, 0x10, 0x46, 0xb8, 0x51, 0x3d, 0xb9, 0xca, 0x27, 0x4c, 0x0e, 0xd7, 0x55, 0xa3, 0xc5, 0x7e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_78 = { .name = "ecdh_brainpoolp224r1_78", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_78_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_78_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_78_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 79 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 79 for ECDH, tcId is 80 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_79_peerpubkey[] = { 0x78, 0x96, 0x17, 0x29, 0x8b, 0x63, 0x99, 0x55, 0x6a, 0x16, 0xf8, 0xd3, 0x7b, 0x9f, 0x2d, 0x60, 0x5a, 0x29, 0xee, 0x5f, 0x8b, 0x48, 0x67, 0x08, 0xed, 0x02, 0xc6, 0x18, 0x14, 0xb2, 0x45, 0x9b, 0xb2, 0x9e, 0x4b, 0x9e, 0x26, 0x1c, 0xfa, 0x4e, 0x33, 0xbd, 0x1a, 0x91, 0x96, 0x82, 0xfc, 0x1b, 0xe3, 0xaa, 0x37, 0xd6, 0x6b, 0x6a, 0x21, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_79_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_79_sharedsecret[] = { 0x96, 0xf0, 0xaa, 0xcf, 0x03, 0x2b, 0x06, 0x70, 0x61, 0xaa, 0x80, 0x9c, 0x8f, 0x9e, 0xca, 0x2a, 0x6c, 0xb1, 0xe2, 0xb5, 0x17, 0x21, 0x4f, 0x3e, 0xdf, 0x41, 0xb1, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_79 = { .name = "ecdh_brainpoolp224r1_79", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_79_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_79_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_79_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 80 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 80 for ECDH, tcId is 81 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_80_peerpubkey[] = { 0xb9, 0xac, 0x60, 0xfa, 0x33, 0x53, 0xda, 0xe5, 0x1a, 0x4a, 0xec, 0xd3, 0x7c, 0x40, 0x4a, 0xff, 0x1d, 0xda, 0x95, 0xd7, 0x77, 0x4c, 0x7c, 0x6d, 0x9b, 0x1b, 0x01, 0x64, 0xb2, 0xef, 0xc2, 0x01, 0x9c, 0x26, 0x01, 0x1b, 0x99, 0x28, 0x94, 0xb8, 0x44, 0x0d, 0x47, 0xd1, 0xcf, 0x66, 0xe2, 0x27, 0x2d, 0x30, 0xe6, 0x28, 0xb5, 0xb8, 0x13, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_80_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_80_sharedsecret[] = { 0xb9, 0x9b, 0xe7, 0x0f, 0x5d, 0xa7, 0x1d, 0xe5, 0x73, 0xcf, 0xdb, 0x03, 0x47, 0xe0, 0x8e, 0xd9, 0xf4, 0x9a, 0xce, 0x97, 0xe9, 0x44, 0x28, 0x40, 0x5a, 0xbb, 0xe4, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_80 = { .name = "ecdh_brainpoolp224r1_80", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_80_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_80_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_80_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 81 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 81 for ECDH, tcId is 82 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_81_peerpubkey[] = { 0x77, 0x81, 0x8f, 0xf0, 0xdd, 0x80, 0x4f, 0x64, 0x0b, 0x8b, 0x20, 0x4f, 0x31, 0x82, 0x01, 0x39, 0xb1, 0x44, 0xd1, 0x4a, 0x9a, 0x55, 0x1d, 0xc7, 0x67, 0x5e, 0x2f, 0x79, 0xd5, 0xad, 0x42, 0x18, 0x8a, 0xe8, 0x26, 0x47, 0x36, 0x4e, 0x7a, 0x11, 0x18, 0xe5, 0xb0, 0xb1, 0x6c, 0x24, 0xb7, 0x3a, 0x02, 0xbc, 0xc2, 0xdc, 0x56, 0xc3, 0x12, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_81_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_81_sharedsecret[] = { 0xa3, 0x12, 0x64, 0x84, 0x79, 0x7c, 0x49, 0x12, 0x04, 0xf8, 0x62, 0x5b, 0x8d, 0x05, 0xda, 0x88, 0xcb, 0x9e, 0x06, 0x4d, 0x98, 0x1e, 0x9a, 0x1f, 0xe2, 0x2b, 0x54, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_81 = { .name = "ecdh_brainpoolp224r1_81", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_81_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_81_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_81_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 82 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 82 for ECDH, tcId is 83 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_82_peerpubkey[] = { 0x7c, 0x42, 0x3d, 0x1e, 0xea, 0x03, 0x88, 0xee, 0xd7, 0xe8, 0x3c, 0xfa, 0x35, 0x1c, 0x67, 0x02, 0xf5, 0x01, 0xc1, 0x9b, 0x1b, 0x65, 0x7d, 0x44, 0xaf, 0x48, 0x7c, 0x93, 0xa0, 0xd1, 0x0e, 0x7e, 0xbe, 0xcd, 0x31, 0x5e, 0x34, 0x6d, 0x74, 0x23, 0x39, 0x8c, 0xc6, 0x27, 0xd1, 0xf0, 0x7a, 0x1d, 0xa4, 0xb3, 0xa3, 0x0b, 0x47, 0x42, 0x79, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_82_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_82_sharedsecret[] = { 0x82, 0xe9, 0x48, 0x7b, 0x1d, 0xfd, 0x2f, 0xcd, 0x95, 0x60, 0xb2, 0x7f, 0x8d, 0x51, 0xc5, 0x61, 0xa6, 0xda, 0x4b, 0x3c, 0x39, 0x10, 0x63, 0x3c, 0xb1, 0x52, 0x32, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_82 = { .name = "ecdh_brainpoolp224r1_82", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_82_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_82_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_82_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 83 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 83 for ECDH, tcId is 84 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_83_peerpubkey[] = { 0xa8, 0xa8, 0x75, 0x8d, 0xed, 0xca, 0x0c, 0xf5, 0x8d, 0xc2, 0xac, 0xe0, 0x21, 0x60, 0xee, 0x7a, 0x16, 0x7b, 0xcc, 0x02, 0x2b, 0xda, 0x3c, 0xb6, 0x99, 0x4a, 0x2a, 0xd1, 0x2f, 0x01, 0x24, 0x72, 0x93, 0x55, 0x2b, 0x37, 0xbf, 0x8c, 0x4c, 0xc0, 0x47, 0xc2, 0xde, 0xf1, 0xa1, 0xf2, 0x43, 0xa4, 0x38, 0x11, 0xc7, 0x8a, 0x07, 0xf3, 0x89, 0x64, }; static const unsigned char ecdh_brainpoolp224r1_83_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_83_sharedsecret[] = { 0x97, 0x8a, 0x29, 0x74, 0x67, 0x02, 0x65, 0xf3, 0xd3, 0xe8, 0x87, 0x65, 0x9f, 0x25, 0x5a, 0xaa, 0xb3, 0xbc, 0x37, 0x8d, 0x32, 0xa7, 0x04, 0x48, 0x6b, 0x5f, 0x73, 0x1e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_83 = { .name = "ecdh_brainpoolp224r1_83", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_83_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_83_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_83_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 84 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 84 for ECDH, tcId is 85 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_84_peerpubkey[] = { 0xa9, 0xbd, 0xee, 0x88, 0x10, 0x8d, 0xb6, 0x25, 0x52, 0x5e, 0x7f, 0x5b, 0x13, 0xd9, 0xfa, 0x46, 0x36, 0xc3, 0x20, 0x1e, 0x7e, 0x61, 0x3c, 0x2a, 0x99, 0xde, 0x7d, 0xfc, 0x7f, 0x28, 0x21, 0x61, 0x65, 0x2d, 0x69, 0x42, 0xa7, 0x28, 0xe5, 0xad, 0xff, 0xb7, 0x3d, 0x20, 0x9f, 0x78, 0xeb, 0x2c, 0x70, 0x7d, 0x43, 0xa7, 0x1b, 0x2d, 0x1c, 0xbf, }; static const unsigned char ecdh_brainpoolp224r1_84_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_84_sharedsecret[] = { 0x5e, 0xbb, 0xd0, 0x1a, 0x87, 0x80, 0x42, 0xb7, 0x46, 0x18, 0x4a, 0x68, 0x9b, 0x12, 0xc7, 0x8e, 0x5e, 0x81, 0x9c, 0xc9, 0xed, 0x3e, 0xac, 0xdb, 0xb3, 0x34, 0x2e, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_84 = { .name = "ecdh_brainpoolp224r1_84", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_84_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_84_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_84_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 85 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 85 for ECDH, tcId is 86 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_85_peerpubkey[] = { 0x7c, 0x1d, 0x15, 0xd7, 0xa7, 0xb6, 0xd7, 0x87, 0x98, 0x36, 0x8a, 0x09, 0xf6, 0x71, 0xbe, 0xc2, 0x1d, 0x29, 0x5a, 0x7f, 0xfe, 0xf0, 0x1e, 0x85, 0xa3, 0x96, 0xd0, 0x1e, 0x35, 0x51, 0x9d, 0x7c, 0x3f, 0x13, 0x7e, 0x07, 0x75, 0xce, 0x8c, 0x6b, 0xc8, 0x92, 0xd0, 0x0a, 0x6c, 0x33, 0xd8, 0xf4, 0x44, 0x0f, 0x4a, 0x5b, 0x73, 0xb7, 0x02, 0xd2, }; static const unsigned char ecdh_brainpoolp224r1_85_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_85_sharedsecret[] = { 0x52, 0x5c, 0xa8, 0xf0, 0xa8, 0xd5, 0x94, 0xc3, 0xae, 0xb5, 0x80, 0x91, 0xd8, 0x95, 0xcf, 0xea, 0x89, 0xda, 0x0f, 0xb1, 0x1b, 0xb4, 0x67, 0xd9, 0x0e, 0xa6, 0xb5, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_85 = { .name = "ecdh_brainpoolp224r1_85", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_85_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_85_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_85_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 86 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 86 for ECDH, tcId is 87 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_86_peerpubkey[] = { 0x35, 0x6c, 0x86, 0xe5, 0x2a, 0xe7, 0xdb, 0xb9, 0xde, 0x8e, 0x5c, 0xca, 0x75, 0xd2, 0x2f, 0x2b, 0x8c, 0x42, 0x50, 0x03, 0xd3, 0xe8, 0xb7, 0x42, 0x04, 0x94, 0x15, 0xfd, 0x4e, 0x57, 0x2b, 0x6e, 0xc4, 0x7f, 0xdd, 0x49, 0x8b, 0x3b, 0xe0, 0xf6, 0x8c, 0x8a, 0x5a, 0xb8, 0x91, 0xf6, 0xd5, 0x60, 0x59, 0xf6, 0x28, 0xd8, 0x4b, 0xbd, 0x6a, 0x32, }; static const unsigned char ecdh_brainpoolp224r1_86_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_86_sharedsecret[] = { 0xd0, 0x95, 0x33, 0x8e, 0x29, 0x07, 0x90, 0x16, 0x21, 0x9a, 0x88, 0xfe, 0x9a, 0x25, 0x4a, 0x68, 0xe3, 0xaa, 0x20, 0xbe, 0xb7, 0x41, 0x4d, 0xc1, 0x48, 0xe2, 0x5a, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_86 = { .name = "ecdh_brainpoolp224r1_86", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_86_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_86_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_86_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 87 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 87 for ECDH, tcId is 88 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_87_peerpubkey[] = { 0x72, 0xa2, 0x04, 0xe4, 0xc4, 0x5b, 0xe3, 0x98, 0xf2, 0xe3, 0x0b, 0x6e, 0x48, 0x81, 0x1b, 0x4c, 0xbe, 0x18, 0x35, 0x6f, 0x10, 0x72, 0x86, 0xc1, 0x5c, 0x3c, 0xd9, 0x16, 0xca, 0xbb, 0xe9, 0xba, 0x62, 0x1f, 0x8b, 0xc0, 0x4e, 0x9d, 0xdb, 0xc1, 0x78, 0x8a, 0xed, 0x01, 0xdb, 0xca, 0x1a, 0x42, 0x9d, 0x30, 0x21, 0x5e, 0x9d, 0xd5, 0x12, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_87_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_87_sharedsecret[] = { 0xd6, 0xbc, 0xc7, 0xf5, 0x23, 0xc1, 0xf0, 0x37, 0x65, 0xea, 0x6b, 0x87, 0x4e, 0xcf, 0xa6, 0xbc, 0x7c, 0x92, 0x16, 0x52, 0x4f, 0xf1, 0x23, 0x85, 0x62, 0xb1, 0x21, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_87 = { .name = "ecdh_brainpoolp224r1_87", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_87_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_87_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_87_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 88 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 88 for ECDH, tcId is 89 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_88_peerpubkey[] = { 0x9a, 0xbf, 0xd0, 0x55, 0x8a, 0x82, 0x29, 0x9e, 0x93, 0x59, 0xbf, 0xb0, 0xf8, 0x33, 0x82, 0xc6, 0x49, 0x15, 0x34, 0xb4, 0xec, 0x41, 0x68, 0x2c, 0x4a, 0x86, 0x2b, 0xac, 0x29, 0xdc, 0xa1, 0x79, 0x76, 0x18, 0x1a, 0x72, 0xf6, 0xd6, 0xf6, 0xf8, 0x7b, 0xf7, 0x61, 0x52, 0x91, 0x1e, 0x90, 0x5d, 0x21, 0x82, 0x58, 0x7e, 0xca, 0x65, 0x65, 0x1b, }; static const unsigned char ecdh_brainpoolp224r1_88_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_88_sharedsecret[] = { 0x0a, 0x19, 0xc0, 0x34, 0x53, 0x4d, 0x61, 0xd0, 0xb4, 0x0e, 0x7b, 0x7f, 0x35, 0xd0, 0x29, 0x86, 0xfb, 0xb9, 0xde, 0x65, 0x7b, 0xb5, 0xed, 0x0c, 0x3b, 0xc0, 0x54, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_88 = { .name = "ecdh_brainpoolp224r1_88", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_88_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_88_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_88_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 89 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 89 for ECDH, tcId is 90 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_89_peerpubkey[] = { 0xb2, 0xea, 0x1f, 0xed, 0xca, 0xc6, 0xd9, 0x62, 0x7c, 0x9d, 0x9b, 0xad, 0xb8, 0x1b, 0xdf, 0xaa, 0x5b, 0x8b, 0x8d, 0x02, 0x67, 0x37, 0xbf, 0x1d, 0x55, 0x41, 0x1a, 0xbf, 0x6d, 0x04, 0xe1, 0xfb, 0xba, 0xfd, 0x3c, 0x9a, 0x4c, 0x39, 0x35, 0xb8, 0x3a, 0xee, 0x6d, 0xce, 0x88, 0x06, 0x86, 0x88, 0x18, 0x75, 0x3d, 0x56, 0x35, 0xe3, 0x91, 0x62, }; static const unsigned char ecdh_brainpoolp224r1_89_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_89_sharedsecret[] = { 0xce, 0x86, 0xfc, 0x96, 0x33, 0x8c, 0xd0, 0xb2, 0xb7, 0x34, 0x9d, 0x9a, 0x97, 0x2c, 0x01, 0xd6, 0x8b, 0x6f, 0x3e, 0x7c, 0xbf, 0xb7, 0x06, 0xe7, 0x2f, 0xaa, 0xe1, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_89 = { .name = "ecdh_brainpoolp224r1_89", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_89_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_89_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_89_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 90 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 90 for ECDH, tcId is 91 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_90_peerpubkey[] = { 0x4f, 0x3d, 0x27, 0xd0, 0x76, 0x18, 0xdf, 0x2e, 0x7b, 0xa2, 0x43, 0x0b, 0x03, 0x10, 0xbb, 0xd2, 0x1e, 0xbf, 0xd9, 0xc7, 0x45, 0x49, 0xf5, 0x1a, 0x6f, 0x2f, 0x39, 0x0c, 0x4d, 0x37, 0x8a, 0x8f, 0x92, 0x29, 0x6d, 0xea, 0x64, 0xf1, 0x32, 0x5b, 0xe4, 0x26, 0xf4, 0x29, 0xcc, 0xc3, 0x19, 0xa5, 0x87, 0x42, 0x20, 0xe4, 0xd7, 0x3b, 0xe6, 0xbc, }; static const unsigned char ecdh_brainpoolp224r1_90_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_90_sharedsecret[] = { 0x25, 0xbc, 0xdf, 0xec, 0x78, 0x29, 0x6e, 0x0e, 0x67, 0x6a, 0x17, 0xdd, 0xad, 0x90, 0x55, 0xbf, 0xc2, 0x04, 0x35, 0x0c, 0xb8, 0x4b, 0x8a, 0x0f, 0x4d, 0x05, 0x50, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_90 = { .name = "ecdh_brainpoolp224r1_90", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_90_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_90_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_90_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 91 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 91 for ECDH, tcId is 92 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_91_peerpubkey[] = { 0x91, 0xe2, 0x24, 0x00, 0xf1, 0xa1, 0x8e, 0x23, 0x61, 0x8b, 0x66, 0x89, 0x6a, 0xcc, 0x78, 0x8b, 0x42, 0xd1, 0x8f, 0x75, 0xe6, 0xd9, 0xdb, 0x7e, 0x45, 0x18, 0x3f, 0xa0, 0x3a, 0x45, 0xc6, 0x19, 0xe4, 0xda, 0xe7, 0xde, 0xee, 0x68, 0xb4, 0x21, 0xba, 0x1c, 0x0d, 0x89, 0x09, 0x4e, 0x5b, 0x5b, 0x35, 0x27, 0x91, 0x4d, 0xb0, 0x8e, 0x2d, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_91_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_91_sharedsecret[] = { 0x86, 0x98, 0x57, 0xec, 0x3f, 0xa6, 0x48, 0x47, 0x6d, 0x7a, 0xac, 0xdf, 0xe2, 0x00, 0x18, 0x5e, 0xf3, 0xd5, 0x8e, 0x8c, 0x7f, 0x73, 0x95, 0xbe, 0x69, 0xd5, 0xff, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_91 = { .name = "ecdh_brainpoolp224r1_91", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_91_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_91_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_91_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 92 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 92 for ECDH, tcId is 93 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_92_peerpubkey[] = { 0x39, 0x63, 0x88, 0x54, 0xf0, 0x0d, 0x08, 0x53, 0xbd, 0xfd, 0xce, 0xfc, 0x2f, 0x47, 0x62, 0xdc, 0x6c, 0xce, 0x4c, 0x59, 0xa9, 0x93, 0x6d, 0x4e, 0x5a, 0x2b, 0x21, 0x99, 0x4c, 0xeb, 0xf8, 0xf5, 0xc9, 0xc5, 0x8d, 0xb7, 0x1c, 0x48, 0x49, 0x07, 0x48, 0xd1, 0x4a, 0x57, 0xfe, 0x20, 0x71, 0x2f, 0x5e, 0x83, 0xc3, 0x7a, 0xd5, 0x8e, 0x6f, 0x7f, }; static const unsigned char ecdh_brainpoolp224r1_92_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_92_sharedsecret[] = { 0x25, 0x6b, 0xb8, 0x52, 0x06, 0x50, 0xe7, 0x40, 0x0e, 0xa9, 0x18, 0x15, 0x75, 0x93, 0xbf, 0x8b, 0xe5, 0x61, 0x55, 0x79, 0x49, 0xb8, 0x4e, 0xa1, 0x8b, 0x88, 0x3b, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_92 = { .name = "ecdh_brainpoolp224r1_92", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_92_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_92_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_92_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 93 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 93 for ECDH, tcId is 94 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_93_peerpubkey[] = { 0x8c, 0x46, 0x2a, 0x2d, 0xa9, 0x22, 0x4b, 0x61, 0x61, 0xf6, 0x0d, 0xa3, 0x11, 0x3a, 0x4d, 0xbd, 0x5f, 0x35, 0x10, 0x49, 0x2d, 0x7a, 0x8a, 0x43, 0xf3, 0xb2, 0x52, 0x15, 0x52, 0xf0, 0x7b, 0x22, 0x21, 0x65, 0x33, 0xa5, 0x4f, 0x71, 0x5f, 0x4f, 0xb5, 0x12, 0x05, 0xe5, 0x09, 0x3f, 0xae, 0x72, 0x39, 0x8b, 0x20, 0x16, 0xdb, 0x48, 0x45, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_93_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_93_sharedsecret[] = { 0x9e, 0xca, 0x45, 0xc8, 0x8c, 0xcd, 0x1b, 0x56, 0x85, 0x47, 0x9a, 0x95, 0x32, 0x5a, 0xe2, 0x12, 0x87, 0xba, 0x55, 0x00, 0xd7, 0x26, 0xe7, 0x33, 0xa0, 0xc2, 0x74, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_93 = { .name = "ecdh_brainpoolp224r1_93", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_93_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_93_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_93_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 94 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 94 for ECDH, tcId is 95 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_94_peerpubkey[] = { 0x23, 0x94, 0xc1, 0xee, 0x03, 0x8b, 0xc5, 0xd6, 0x95, 0xbf, 0xe3, 0x21, 0x9a, 0x9c, 0x90, 0x33, 0x37, 0x0e, 0xea, 0xea, 0x9b, 0x61, 0x41, 0x38, 0xe6, 0x11, 0x77, 0x47, 0xc7, 0xa7, 0x0e, 0x4f, 0x17, 0x58, 0x3e, 0xd9, 0x2a, 0x30, 0x7e, 0xc0, 0xc6, 0x35, 0x4b, 0xe3, 0xe5, 0xd0, 0xd3, 0x3f, 0x09, 0xf7, 0xcb, 0x13, 0x46, 0x24, 0xff, 0xc3, }; static const unsigned char ecdh_brainpoolp224r1_94_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_94_sharedsecret[] = { 0x12, 0xa3, 0xe3, 0x3f, 0x49, 0x16, 0x36, 0x91, 0x82, 0xfb, 0xc9, 0x6a, 0xfe, 0x38, 0x83, 0x7d, 0x58, 0x87, 0x5b, 0x62, 0x51, 0x75, 0xda, 0x53, 0xa0, 0xd1, 0x55, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_94 = { .name = "ecdh_brainpoolp224r1_94", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_94_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_94_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_94_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 95 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 95 for ECDH, tcId is 96 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_95_peerpubkey[] = { 0x11, 0x74, 0x09, 0x49, 0x35, 0x6f, 0x15, 0xda, 0x67, 0x07, 0xa7, 0x92, 0x74, 0x1d, 0x80, 0x4c, 0xed, 0x72, 0xe6, 0x1c, 0x87, 0x7b, 0x82, 0x3b, 0x94, 0x5a, 0xc0, 0xc0, 0x10, 0xd4, 0xe8, 0x31, 0x1a, 0xc7, 0x45, 0xb4, 0xfc, 0x53, 0xef, 0x89, 0x31, 0xff, 0x35, 0x88, 0xba, 0xfa, 0xb6, 0x98, 0x96, 0xd7, 0xa6, 0x45, 0x6a, 0x4a, 0x14, 0xe5, }; static const unsigned char ecdh_brainpoolp224r1_95_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_95_sharedsecret[] = { 0x87, 0xf6, 0xd4, 0x8b, 0xc3, 0x84, 0x1a, 0xac, 0x63, 0x10, 0xae, 0x65, 0xdc, 0xdf, 0x61, 0x97, 0x7c, 0x95, 0x92, 0xef, 0xc9, 0xf9, 0x95, 0x49, 0x19, 0x7f, 0xfe, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_95 = { .name = "ecdh_brainpoolp224r1_95", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_95_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_95_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_95_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 96 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 96 for ECDH, tcId is 97 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_96_peerpubkey[] = { 0x80, 0x16, 0xe0, 0x79, 0xb0, 0xeb, 0x14, 0x0d, 0xff, 0xfe, 0x0e, 0x70, 0xd4, 0x41, 0x6f, 0x04, 0xd6, 0xdc, 0x17, 0x28, 0xf6, 0x59, 0x44, 0xe4, 0x33, 0x1f, 0x63, 0xc5, 0xc5, 0xdf, 0x4d, 0x43, 0x5c, 0xcb, 0xb8, 0x0c, 0xbe, 0x9f, 0x80, 0x20, 0x2a, 0x3f, 0xe0, 0xd2, 0x05, 0xc3, 0x8f, 0x0b, 0xd3, 0xd9, 0x03, 0x9f, 0x72, 0xbd, 0xbd, 0xf3, }; static const unsigned char ecdh_brainpoolp224r1_96_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_96_sharedsecret[] = { 0x26, 0xe1, 0x06, 0x62, 0x61, 0x2f, 0xb8, 0x07, 0x66, 0x29, 0xdf, 0x7d, 0x23, 0x27, 0xc9, 0x23, 0x3c, 0x32, 0x08, 0x0f, 0x2c, 0x6c, 0x7e, 0x0a, 0xfb, 0xa2, 0xed, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_96 = { .name = "ecdh_brainpoolp224r1_96", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_96_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_96_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_96_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 97 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 97 for ECDH, tcId is 98 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_97_peerpubkey[] = { 0xb5, 0xf3, 0x0c, 0xb6, 0xe7, 0xad, 0x21, 0x5f, 0x47, 0x68, 0xa2, 0x1c, 0x26, 0xf5, 0x87, 0x34, 0xb1, 0xcb, 0xce, 0xb0, 0xa8, 0xe2, 0x79, 0x1e, 0x99, 0x16, 0x0e, 0xdb, 0x78, 0x0e, 0x25, 0x9f, 0xb5, 0xf7, 0xad, 0x1b, 0x9f, 0x4b, 0x09, 0x0d, 0xb0, 0x29, 0xcb, 0x64, 0xef, 0x83, 0x1d, 0x5d, 0xa4, 0xa6, 0xd5, 0x4d, 0x13, 0x49, 0x9a, 0x0f, }; static const unsigned char ecdh_brainpoolp224r1_97_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_97_sharedsecret[] = { 0xac, 0x2f, 0xba, 0x73, 0x7d, 0x3f, 0xa2, 0xfe, 0x4e, 0x0e, 0xb8, 0x38, 0xb5, 0xd7, 0xc4, 0x0a, 0xf4, 0x5d, 0x9a, 0xeb, 0x06, 0x97, 0x64, 0xcf, 0xa6, 0xf3, 0xb7, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_97 = { .name = "ecdh_brainpoolp224r1_97", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_97_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_97_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_97_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 98 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 98 for ECDH, tcId is 99 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_98_peerpubkey[] = { 0x34, 0x29, 0x14, 0x54, 0x92, 0x40, 0x0f, 0x8d, 0xb4, 0x1a, 0x49, 0xe5, 0x26, 0x86, 0x98, 0x2c, 0xbc, 0x9b, 0x0a, 0xd1, 0x05, 0x8a, 0xd8, 0xb9, 0x2b, 0x23, 0x45, 0xfb, 0x24, 0xae, 0x53, 0xd2, 0x60, 0xd5, 0x1a, 0x3c, 0xc5, 0xef, 0xad, 0x1f, 0x9e, 0x25, 0x45, 0xa1, 0x51, 0x21, 0x83, 0xc2, 0x7b, 0x79, 0xa5, 0xd4, 0x27, 0xdd, 0x09, 0xac, }; static const unsigned char ecdh_brainpoolp224r1_98_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_98_sharedsecret[] = { 0x16, 0xf4, 0x61, 0xff, 0xd6, 0xc2, 0xdb, 0x45, 0x03, 0x8e, 0x6a, 0xfe, 0xce, 0x89, 0x07, 0x25, 0xa0, 0x7a, 0x64, 0xfa, 0xbe, 0xf6, 0x7e, 0x0c, 0x6b, 0x96, 0x5e, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_98 = { .name = "ecdh_brainpoolp224r1_98", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_98_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_98_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_98_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 99 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 99 for ECDH, tcId is 100 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_99_peerpubkey[] = { 0x2a, 0xe5, 0xba, 0xb7, 0x28, 0x9c, 0xdb, 0x31, 0x88, 0x7e, 0xa5, 0x74, 0x1a, 0x1d, 0x99, 0x99, 0xdc, 0x80, 0xc3, 0xbd, 0x56, 0xf1, 0xee, 0xe5, 0xd1, 0xf0, 0xcf, 0x34, 0xaf, 0x72, 0xd8, 0x5a, 0xbd, 0x35, 0x80, 0x12, 0x35, 0xcf, 0x18, 0x2c, 0x74, 0xa2, 0x59, 0xcb, 0x50, 0x7f, 0x34, 0x0b, 0x8f, 0x0f, 0x4d, 0x72, 0xfc, 0x32, 0x70, 0xec, }; static const unsigned char ecdh_brainpoolp224r1_99_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_99_sharedsecret[] = { 0x3c, 0xa2, 0x1f, 0xab, 0xb9, 0x1d, 0xab, 0xdb, 0x09, 0xdf, 0x33, 0x93, 0x69, 0xf7, 0x38, 0x2d, 0xf6, 0x61, 0x70, 0xeb, 0xce, 0xb0, 0xa5, 0xbf, 0xf7, 0xf2, 0x73, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_99 = { .name = "ecdh_brainpoolp224r1_99", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_99_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_99_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_99_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 100 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 100 for ECDH, tcId is 101 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_100_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xbd, 0x78, 0x39, 0x6f, 0x68, 0x1c, 0xbf, 0x53, 0x5b, 0x39, 0x51, 0xd0, 0xb7, 0xed, 0xf9, 0x1a, 0xbd, 0x3b, 0x10, 0xe1, 0xcb, 0x5c, 0xde, 0xb7, 0xba, 0x8f, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_100_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_100_sharedsecret[] = { 0x5f, 0xad, 0x1d, 0x37, 0x69, 0xf9, 0xd2, 0xe8, 0x79, 0xd3, 0xb2, 0xc0, 0xf0, 0x2e, 0xea, 0x85, 0x28, 0x2b, 0x01, 0xbb, 0x0c, 0x90, 0x29, 0x47, 0xaa, 0xe5, 0x17, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_100 = { .name = "ecdh_brainpoolp224r1_100", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_100_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_100_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_100_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 101 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 101 for ECDH, tcId is 102 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_101_peerpubkey[] = { 0x49, 0x92, 0x88, 0xec, 0x0e, 0x6f, 0x18, 0xf4, 0x7e, 0xf5, 0x38, 0x78, 0x80, 0x6d, 0x81, 0x8d, 0x94, 0xf9, 0x3f, 0xbe, 0xe0, 0x9e, 0xa2, 0x9a, 0x62, 0x8d, 0xe3, 0x27, 0xa3, 0xba, 0x98, 0xa4, 0x7e, 0xe0, 0x44, 0x08, 0xe6, 0x50, 0xc8, 0x89, 0xc2, 0xf3, 0x1c, 0x34, 0x44, 0x49, 0xf7, 0x7b, 0x09, 0x06, 0xa2, 0xd6, 0xa4, 0x36, 0xe3, 0x3c, }; static const unsigned char ecdh_brainpoolp224r1_101_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_101_sharedsecret[] = { 0x7b, 0x4f, 0x7e, 0x6d, 0xcd, 0x2a, 0xab, 0x2c, 0xfe, 0x10, 0x42, 0x2f, 0xec, 0x61, 0xdc, 0xd2, 0xf3, 0x28, 0x05, 0x4d, 0x89, 0x97, 0x99, 0x64, 0xfd, 0x82, 0x10, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_101 = { .name = "ecdh_brainpoolp224r1_101", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_101_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_101_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_101_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 102 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 102 for ECDH, tcId is 103 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_102_peerpubkey[] = { 0x0b, 0xf8, 0x76, 0x5d, 0x0f, 0xa9, 0xd7, 0x18, 0x23, 0x6d, 0xb0, 0x61, 0x40, 0x99, 0x1e, 0x1f, 0x4f, 0xa7, 0xce, 0xf3, 0xa9, 0x6f, 0xdc, 0x2c, 0x60, 0x89, 0x6c, 0xf5, 0xca, 0x3e, 0x97, 0xa0, 0xca, 0x3c, 0x3a, 0xb4, 0x9e, 0x4f, 0x35, 0xa1, 0x15, 0x66, 0x9b, 0xff, 0xb0, 0xdc, 0x79, 0x24, 0x70, 0x44, 0x80, 0x82, 0x69, 0x8e, 0x09, 0x8d, }; static const unsigned char ecdh_brainpoolp224r1_102_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_102_sharedsecret[] = { 0xd1, 0x19, 0x9a, 0x49, 0x0b, 0x5d, 0x66, 0x40, 0x80, 0xb1, 0x6e, 0xdb, 0x6c, 0xcb, 0x4f, 0x51, 0x16, 0x3e, 0x4a, 0x1d, 0xd7, 0x65, 0x2c, 0xb7, 0xc0, 0xf0, 0x12, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_102 = { .name = "ecdh_brainpoolp224r1_102", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_102_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_102_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_102_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 103 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 103 for ECDH, tcId is 104 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_103_peerpubkey[] = { 0xbf, 0x8c, 0x23, 0xd2, 0xfd, 0xf6, 0x7a, 0xff, 0x95, 0x1e, 0xac, 0x5c, 0x82, 0x20, 0x23, 0x40, 0x2d, 0x35, 0x0a, 0xb0, 0xa1, 0xa1, 0xb1, 0xf2, 0x1b, 0x6b, 0x1d, 0x5e, 0x0e, 0x45, 0xbf, 0x5d, 0x6e, 0x43, 0x0a, 0xfe, 0xc8, 0x66, 0x97, 0xc7, 0x43, 0x73, 0x0e, 0x5f, 0xb9, 0x34, 0x28, 0xd8, 0xea, 0x37, 0xda, 0x10, 0x52, 0xe0, 0x61, 0x27, }; static const unsigned char ecdh_brainpoolp224r1_103_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_103_sharedsecret[] = { 0xa0, 0x4f, 0x29, 0x80, 0x08, 0x4b, 0xec, 0x2d, 0xb9, 0xb2, 0xeb, 0x5d, 0xdd, 0x09, 0xf0, 0xc3, 0xe0, 0xa4, 0xf7, 0x67, 0x22, 0x7b, 0x41, 0xc8, 0x10, 0xfd, 0x37, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_103 = { .name = "ecdh_brainpoolp224r1_103", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_103_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_103_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_103_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 104 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 104 for ECDH, tcId is 105 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_104_peerpubkey[] = { 0x32, 0x23, 0x53, 0x2a, 0x3e, 0x83, 0x94, 0x8c, 0xc5, 0xaa, 0x18, 0x8e, 0x16, 0x1d, 0xf3, 0x54, 0xe4, 0x56, 0x60, 0x93, 0xbd, 0x9e, 0x6e, 0xf7, 0x0e, 0x16, 0x67, 0xfe, 0x49, 0x3d, 0xea, 0xa9, 0x01, 0x00, 0x58, 0xc9, 0x44, 0x64, 0x20, 0x4b, 0x03, 0x2d, 0xed, 0x68, 0x74, 0xbe, 0xc6, 0xee, 0x34, 0x3e, 0x21, 0x50, 0x22, 0x45, 0x2e, 0xb9, }; static const unsigned char ecdh_brainpoolp224r1_104_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_104_sharedsecret[] = { 0x59, 0xd7, 0x82, 0xa6, 0x8e, 0xac, 0x86, 0xe4, 0x22, 0x04, 0x15, 0x67, 0xd2, 0xad, 0xe6, 0xcd, 0xa2, 0xc5, 0xe3, 0xce, 0x9b, 0x01, 0x46, 0x19, 0x98, 0x1f, 0x30, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_104 = { .name = "ecdh_brainpoolp224r1_104", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_104_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_104_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_104_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 105 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 105 for ECDH, tcId is 106 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_105_peerpubkey[] = { 0x5c, 0x2c, 0x88, 0x55, 0xab, 0x28, 0x3b, 0x19, 0xd4, 0xf4, 0x09, 0x2f, 0xfe, 0xd6, 0xa8, 0x7f, 0x08, 0x76, 0x6c, 0x90, 0x80, 0xeb, 0x69, 0x2c, 0x5a, 0x62, 0xf2, 0x9b, 0x5f, 0xbd, 0x38, 0x6a, 0x00, 0xbb, 0x19, 0x28, 0xa0, 0x46, 0xc5, 0xa2, 0x6b, 0x45, 0xea, 0x49, 0x8a, 0xff, 0x29, 0x5b, 0xca, 0x22, 0x10, 0x92, 0x1d, 0xd0, 0x1f, 0xbd, }; static const unsigned char ecdh_brainpoolp224r1_105_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_105_sharedsecret[] = { 0xd3, 0x79, 0x3f, 0x50, 0x93, 0x37, 0xd1, 0xae, 0x39, 0x23, 0x33, 0x13, 0xb9, 0xcc, 0x1c, 0xf9, 0x40, 0x7d, 0xd6, 0x18, 0x83, 0xf7, 0xc2, 0xbd, 0x5e, 0xb1, 0xdb, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_105 = { .name = "ecdh_brainpoolp224r1_105", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_105_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_105_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_105_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 106 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 106 for ECDH, tcId is 107 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_106_peerpubkey[] = { 0xaa, 0x71, 0xef, 0x47, 0xf9, 0x2e, 0x79, 0x81, 0x17, 0x5f, 0x89, 0xac, 0x3b, 0x40, 0xb7, 0x83, 0x92, 0x7f, 0x30, 0x72, 0x20, 0xcd, 0x79, 0x3c, 0x68, 0xf3, 0x7b, 0x58, 0xa8, 0xf8, 0x5a, 0xfb, 0xc8, 0x6a, 0x0e, 0x60, 0xf8, 0x8d, 0x4e, 0x7a, 0xc7, 0x6a, 0xb0, 0x7d, 0x23, 0x3f, 0xe6, 0xf2, 0xe1, 0x0e, 0x11, 0x75, 0x52, 0x80, 0x08, 0xde, }; static const unsigned char ecdh_brainpoolp224r1_106_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_106_sharedsecret[] = { 0x2a, 0x19, 0x79, 0xbf, 0x8f, 0x7e, 0x65, 0xc6, 0x46, 0x97, 0x09, 0xef, 0xc1, 0x43, 0x0d, 0xbc, 0xfe, 0xce, 0x5e, 0xfa, 0x88, 0x51, 0xad, 0x03, 0xd1, 0x1a, 0xfb, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_106 = { .name = "ecdh_brainpoolp224r1_106", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_106_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_106_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_106_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 107 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 107 for ECDH, tcId is 108 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_107_peerpubkey[] = { 0x5e, 0x14, 0x5b, 0x79, 0x73, 0x75, 0xf6, 0xc4, 0x79, 0x41, 0x5f, 0x23, 0x94, 0x7b, 0x9a, 0x18, 0xa8, 0xa4, 0xba, 0xea, 0x6d, 0xe0, 0x53, 0x89, 0xba, 0xf0, 0xe4, 0xe1, 0x58, 0xcd, 0xd1, 0x28, 0x75, 0x0e, 0x12, 0x0c, 0xaf, 0x61, 0xb3, 0x1d, 0x5d, 0xbf, 0x00, 0x07, 0x3a, 0xfe, 0x7b, 0xd0, 0xa2, 0x68, 0x10, 0x54, 0x96, 0x1b, 0x75, 0xe0, }; static const unsigned char ecdh_brainpoolp224r1_107_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_107_sharedsecret[] = { 0xa1, 0xfe, 0xdc, 0xa1, 0x96, 0x17, 0x76, 0xbb, 0xb7, 0x47, 0x66, 0x7f, 0x0b, 0x12, 0x3f, 0x99, 0xdd, 0x61, 0x3c, 0xa6, 0xcc, 0xc7, 0xef, 0x50, 0x36, 0xb4, 0xbc, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_107 = { .name = "ecdh_brainpoolp224r1_107", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_107_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_107_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_107_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 108 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 108 for ECDH, tcId is 109 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_108_peerpubkey[] = { 0xb4, 0x81, 0x9b, 0xb7, 0x3d, 0xae, 0xa5, 0x10, 0x3d, 0x7e, 0xb2, 0x1f, 0x0b, 0xd9, 0x4f, 0x3e, 0xee, 0x81, 0xb8, 0x82, 0xaf, 0x44, 0x26, 0x11, 0xe1, 0xf7, 0xcf, 0xb1, 0x18, 0x58, 0x07, 0xdb, 0xc2, 0x66, 0xe5, 0x71, 0x4a, 0xb0, 0x96, 0x98, 0x21, 0xe2, 0x42, 0x91, 0x1f, 0x07, 0x4f, 0x5e, 0x68, 0x04, 0xfb, 0x8f, 0x81, 0xef, 0xbf, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_108_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_108_sharedsecret[] = { 0x86, 0x8e, 0x6d, 0x79, 0x50, 0xf2, 0xcf, 0x55, 0xa7, 0xe1, 0x4b, 0xad, 0x66, 0x7c, 0x67, 0x79, 0x35, 0xcc, 0x0f, 0xc8, 0x0d, 0x47, 0xd7, 0x1f, 0x5a, 0xbf, 0xc3, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_108 = { .name = "ecdh_brainpoolp224r1_108", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_108_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_108_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_108_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 109 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 109 for ECDH, tcId is 110 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_109_peerpubkey[] = { 0x9b, 0xdc, 0x2d, 0xa4, 0x90, 0x31, 0x0e, 0x2e, 0x74, 0x1f, 0x96, 0x0f, 0x9c, 0x00, 0x26, 0x8b, 0x20, 0xeb, 0x03, 0x04, 0x28, 0x33, 0x29, 0x36, 0x56, 0xbb, 0x30, 0x40, 0xd1, 0x18, 0xfd, 0x17, 0x13, 0x8c, 0x97, 0xc5, 0x7f, 0x65, 0x31, 0x43, 0x31, 0x4b, 0x1d, 0x9f, 0x13, 0xdf, 0x95, 0xa3, 0x72, 0x93, 0x6e, 0x65, 0x4b, 0xdb, 0x0e, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_109_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_109_sharedsecret[] = { 0x34, 0xe2, 0x2b, 0x7e, 0x18, 0x50, 0xa1, 0xd8, 0xf6, 0x52, 0xf9, 0xb7, 0x3f, 0x90, 0x93, 0xb5, 0x66, 0x94, 0xf7, 0xc4, 0xb2, 0x70, 0xb1, 0x74, 0xea, 0x8b, 0x22, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_109 = { .name = "ecdh_brainpoolp224r1_109", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_109_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_109_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_109_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 110 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 110 for ECDH, tcId is 111 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_110_peerpubkey[] = { 0x9e, 0xa4, 0xb5, 0xea, 0x76, 0xd5, 0x2d, 0xe3, 0xee, 0x13, 0x93, 0x1f, 0x8a, 0xa5, 0x18, 0x87, 0x97, 0x61, 0x40, 0xc3, 0xcb, 0x67, 0x48, 0x8d, 0xe0, 0x79, 0xb5, 0xf4, 0x0c, 0xa0, 0xce, 0x68, 0x62, 0xee, 0x0b, 0xaa, 0x55, 0x4d, 0xfa, 0x41, 0x9c, 0xd1, 0x56, 0xd3, 0x0e, 0x29, 0x8c, 0xdf, 0xdc, 0xc4, 0xf8, 0x7d, 0x4b, 0x2b, 0x64, 0xa4, }; static const unsigned char ecdh_brainpoolp224r1_110_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_110_sharedsecret[] = { 0x17, 0x9b, 0xb9, 0x9d, 0x01, 0xfb, 0xec, 0x46, 0x0b, 0xed, 0x50, 0x40, 0x58, 0xc7, 0xed, 0xb0, 0xae, 0xce, 0x18, 0xae, 0xf2, 0x5f, 0x6b, 0xd6, 0x5d, 0xa4, 0x52, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_110 = { .name = "ecdh_brainpoolp224r1_110", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_110_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_110_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_110_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 111 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 111 for ECDH, tcId is 112 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_111_peerpubkey[] = { 0x2e, 0x40, 0x6a, 0x62, 0x39, 0xb4, 0x93, 0x64, 0x1e, 0x1a, 0xe2, 0x80, 0x79, 0x30, 0x32, 0xb9, 0x3e, 0x67, 0x3d, 0x8e, 0x1d, 0xf3, 0xe1, 0x76, 0xa5, 0x87, 0xf9, 0xcc, 0xc9, 0x67, 0x1a, 0x01, 0xce, 0x37, 0x74, 0x83, 0xe0, 0x95, 0xc8, 0xaf, 0x4b, 0x57, 0x7b, 0x0e, 0x1d, 0xa7, 0x20, 0xfa, 0x01, 0x98, 0x2d, 0x0a, 0xe5, 0xfb, 0x6a, 0x49, }; static const unsigned char ecdh_brainpoolp224r1_111_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_111_sharedsecret[] = { 0x52, 0x66, 0x69, 0x68, 0x84, 0x17, 0x77, 0xdb, 0x92, 0x43, 0x76, 0x2d, 0x8f, 0xf2, 0x5b, 0x9c, 0x70, 0x84, 0x94, 0x2f, 0x15, 0xcc, 0x10, 0xb1, 0x58, 0xd7, 0x98, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_111 = { .name = "ecdh_brainpoolp224r1_111", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_111_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_111_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_111_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 112 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 112 for ECDH, tcId is 113 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_112_peerpubkey[] = { 0x8f, 0xfa, 0x10, 0x26, 0xde, 0x44, 0xe7, 0xaf, 0x8d, 0x5a, 0x6e, 0x22, 0x70, 0xc2, 0xef, 0x5d, 0x72, 0xb8, 0x83, 0x49, 0xa3, 0x2c, 0x07, 0x71, 0xe5, 0xd5, 0xc0, 0xed, 0x67, 0xf2, 0xda, 0x5e, 0xf3, 0x55, 0x99, 0xb4, 0xca, 0x73, 0x2a, 0x06, 0xa6, 0xa3, 0x82, 0x96, 0x0e, 0xb9, 0x78, 0x79, 0x3d, 0xa2, 0x50, 0xe9, 0x79, 0x57, 0xfa, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_112_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_112_sharedsecret[] = { 0x30, 0x44, 0x1e, 0x34, 0x2d, 0xc1, 0x27, 0x4b, 0xbb, 0x97, 0xd1, 0x03, 0x38, 0x01, 0xbe, 0xb7, 0xa0, 0xe2, 0x64, 0xaf, 0x9a, 0x51, 0xdc, 0x9e, 0x36, 0xde, 0x1b, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_112 = { .name = "ecdh_brainpoolp224r1_112", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_112_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_112_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_112_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 113 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 113 for ECDH, tcId is 114 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_113_peerpubkey[] = { 0x10, 0x80, 0x98, 0x18, 0x4d, 0x30, 0x87, 0x1b, 0x64, 0xb2, 0xca, 0xe0, 0xa7, 0x68, 0xc9, 0x5a, 0x8b, 0xb4, 0xb8, 0x33, 0x93, 0x79, 0xe1, 0x57, 0x36, 0xd4, 0xad, 0x2d, 0x0d, 0x2e, 0xe5, 0x92, 0x8e, 0xd8, 0x9c, 0xbb, 0xaf, 0xec, 0x81, 0xf7, 0x9d, 0x33, 0x26, 0xe4, 0xfd, 0xb4, 0x00, 0x39, 0xa0, 0xae, 0xde, 0x68, 0xed, 0x8c, 0x85, 0xf0, }; static const unsigned char ecdh_brainpoolp224r1_113_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_113_sharedsecret[] = { 0x28, 0xe9, 0xf7, 0x2c, 0x0f, 0x49, 0x39, 0xf1, 0x62, 0xfe, 0xb3, 0xde, 0xc5, 0x2d, 0x48, 0xd1, 0xff, 0x3a, 0x7f, 0x72, 0xc0, 0xba, 0xdf, 0xef, 0x54, 0xb3, 0xb2, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_113 = { .name = "ecdh_brainpoolp224r1_113", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_113_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_113_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_113_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 114 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 114 for ECDH, tcId is 115 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_114_peerpubkey[] = { 0xb3, 0xfa, 0x92, 0xcb, 0xea, 0x39, 0xbc, 0x69, 0x74, 0xa8, 0xa7, 0xff, 0x72, 0xfe, 0x31, 0xa9, 0x11, 0x80, 0xb8, 0x19, 0x41, 0xe4, 0xae, 0xd8, 0xa5, 0xa3, 0x41, 0x23, 0xb2, 0xb7, 0xd6, 0xdc, 0x43, 0xd2, 0x80, 0x07, 0x8e, 0x15, 0x89, 0x76, 0xef, 0x51, 0x12, 0x3b, 0x64, 0x8a, 0xc8, 0x30, 0x05, 0xea, 0xbc, 0x63, 0x30, 0xd5, 0x70, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_114_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_114_sharedsecret[] = { 0xc4, 0xc1, 0x90, 0x1e, 0x5f, 0x13, 0x6b, 0x9b, 0x02, 0x0a, 0x1c, 0x1b, 0x47, 0xd3, 0x43, 0x54, 0xd4, 0x9f, 0x27, 0x8d, 0x13, 0x07, 0x54, 0xc5, 0x2c, 0x7a, 0x1a, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_114 = { .name = "ecdh_brainpoolp224r1_114", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_114_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_114_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_114_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 115 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 115 for ECDH, tcId is 116 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_115_peerpubkey[] = { 0x33, 0xd8, 0x09, 0xbe, 0x0f, 0xfa, 0xe5, 0x38, 0xb4, 0x70, 0x9b, 0xf8, 0x16, 0x88, 0x03, 0xe7, 0x6d, 0x8e, 0x19, 0xff, 0x4d, 0x31, 0x99, 0x2f, 0xdb, 0x0f, 0x09, 0x03, 0x19, 0x33, 0x30, 0x60, 0x8a, 0xbe, 0xf4, 0xa3, 0x17, 0x23, 0xc6, 0x1c, 0xe1, 0xab, 0xd4, 0xe6, 0x15, 0x01, 0xef, 0x8e, 0x67, 0x90, 0x9f, 0xe6, 0xfb, 0x8f, 0x8a, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_115_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_115_sharedsecret[] = { 0x75, 0xed, 0xa6, 0x0b, 0xdd, 0xff, 0x28, 0x5f, 0xff, 0xc5, 0x85, 0xde, 0x0b, 0xe9, 0x7a, 0x23, 0xd8, 0x83, 0x70, 0xd7, 0x14, 0x50, 0xb9, 0x20, 0x92, 0xeb, 0x6b, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_115 = { .name = "ecdh_brainpoolp224r1_115", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_115_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_115_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_115_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 116 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 116 for ECDH, tcId is 117 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_116_peerpubkey[] = { 0x24, 0xa2, 0x77, 0xcd, 0xb2, 0x58, 0x30, 0xb0, 0x86, 0xc5, 0x3a, 0x95, 0xde, 0x31, 0x01, 0x88, 0x56, 0x74, 0xd8, 0x28, 0x93, 0x29, 0x82, 0x1d, 0xfc, 0x36, 0x54, 0x6a, 0x51, 0xba, 0x18, 0xb4, 0x6a, 0x39, 0x71, 0xe7, 0xe0, 0x4a, 0xfd, 0xdb, 0xe9, 0x19, 0x8b, 0x5f, 0x37, 0x18, 0xc2, 0x73, 0x95, 0x0f, 0xa8, 0xce, 0x39, 0x84, 0x57, 0xb3, }; static const unsigned char ecdh_brainpoolp224r1_116_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_116_sharedsecret[] = { 0x4f, 0xd3, 0xa3, 0xfc, 0x75, 0x80, 0xb0, 0xf2, 0x36, 0x1f, 0x79, 0xdf, 0xdc, 0x5e, 0x2f, 0xfd, 0xc0, 0x2f, 0x42, 0xa9, 0x37, 0xd3, 0x95, 0x04, 0x02, 0xa7, 0x3b, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_116 = { .name = "ecdh_brainpoolp224r1_116", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_116_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_116_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_116_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 117 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 117 for ECDH, tcId is 118 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_117_peerpubkey[] = { 0x5e, 0x56, 0x69, 0xb3, 0x1c, 0x0e, 0xe1, 0x9f, 0xa7, 0x24, 0x44, 0xcd, 0x97, 0x4f, 0x68, 0x20, 0x1f, 0xe8, 0x05, 0xa5, 0x0f, 0x05, 0xed, 0xab, 0x49, 0xd4, 0x52, 0x35, 0x90, 0xf7, 0x48, 0xeb, 0x5e, 0x2f, 0x25, 0xe5, 0x2d, 0xea, 0x59, 0x0a, 0xab, 0x8b, 0xe8, 0xb2, 0x83, 0x77, 0x6d, 0x1b, 0x37, 0x9e, 0x0d, 0x63, 0xee, 0x94, 0xae, 0x63, }; static const unsigned char ecdh_brainpoolp224r1_117_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_117_sharedsecret[] = { 0x5f, 0x3a, 0xe7, 0x60, 0xbc, 0x6d, 0x4e, 0xff, 0x26, 0xc3, 0x07, 0xf1, 0xb7, 0xaf, 0x6a, 0xbd, 0x58, 0x36, 0x34, 0xb3, 0x06, 0x04, 0x50, 0xf0, 0xfe, 0xda, 0xf1, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_117 = { .name = "ecdh_brainpoolp224r1_117", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_117_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_117_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_117_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 118 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 118 for ECDH, tcId is 119 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_118_peerpubkey[] = { 0x59, 0x51, 0x84, 0xd2, 0xe1, 0xa9, 0xda, 0xee, 0x25, 0x96, 0xb4, 0x52, 0x2b, 0x74, 0x77, 0x35, 0xb3, 0x9c, 0x47, 0x01, 0x48, 0x1a, 0xd5, 0x48, 0x0a, 0x96, 0xb3, 0xe3, 0x0a, 0xe2, 0x17, 0x0e, 0xdb, 0x1c, 0x0b, 0x74, 0x3e, 0xcc, 0xbd, 0x59, 0x00, 0x36, 0xa1, 0x95, 0x74, 0x30, 0xb6, 0xce, 0x84, 0x23, 0x83, 0xbb, 0x23, 0x6c, 0xc8, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_118_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_118_sharedsecret[] = { 0x81, 0xe2, 0x75, 0x29, 0x88, 0xe4, 0x7a, 0x78, 0xad, 0x9d, 0xb5, 0xc5, 0xaa, 0x75, 0xb2, 0xc0, 0x56, 0x50, 0xe9, 0x6c, 0xf6, 0xeb, 0x24, 0x1a, 0xf2, 0x5a, 0x6b, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_118 = { .name = "ecdh_brainpoolp224r1_118", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_118_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_118_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_118_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 119 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 119 for ECDH, tcId is 120 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_119_peerpubkey[] = { 0x33, 0x16, 0x3b, 0xa5, 0xc8, 0x26, 0x37, 0x9e, 0xf4, 0xd5, 0xa9, 0x59, 0xb3, 0x16, 0xb1, 0x54, 0x87, 0x0f, 0x7a, 0xba, 0xb8, 0x95, 0x03, 0xf0, 0x44, 0x40, 0x40, 0xe3, 0x24, 0xba, 0x3c, 0xb6, 0x09, 0x6e, 0xe7, 0x52, 0x79, 0xd3, 0xd1, 0x2b, 0xb1, 0xe3, 0x97, 0xd9, 0x54, 0x34, 0x04, 0xbf, 0xce, 0x17, 0x4d, 0x57, 0xd3, 0xd5, 0x62, 0xfd, }; static const unsigned char ecdh_brainpoolp224r1_119_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_119_sharedsecret[] = { 0x30, 0x93, 0x71, 0xc1, 0x37, 0x63, 0x1b, 0x9e, 0x37, 0x0c, 0x08, 0xae, 0x96, 0xa1, 0x45, 0x16, 0x43, 0x13, 0xe7, 0x9a, 0xb9, 0xb6, 0xe3, 0xea, 0xe3, 0x9d, 0xc1, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_119 = { .name = "ecdh_brainpoolp224r1_119", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_119_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_119_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_119_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 120 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 120 for ECDH, tcId is 121 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_120_peerpubkey[] = { 0xbd, 0x06, 0x4e, 0x66, 0x58, 0x83, 0x2d, 0xf8, 0xa9, 0x67, 0xa9, 0x3b, 0xcf, 0xd0, 0xa3, 0x94, 0x43, 0x6b, 0x2d, 0x77, 0x53, 0x03, 0xf4, 0x3d, 0xe6, 0xb5, 0x85, 0x09, 0xbe, 0x69, 0x8d, 0x9a, 0xc4, 0x12, 0xc9, 0xb4, 0xcb, 0x04, 0x4e, 0x25, 0x23, 0x13, 0xf6, 0x31, 0x67, 0x70, 0xc3, 0xa9, 0x74, 0x04, 0x00, 0xad, 0xd9, 0x8f, 0x91, 0xa2, }; static const unsigned char ecdh_brainpoolp224r1_120_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_120_sharedsecret[] = { 0xa6, 0x62, 0xaf, 0x2c, 0x94, 0x15, 0xd9, 0x90, 0x4d, 0x6d, 0xf8, 0xd4, 0xf3, 0xb2, 0xc9, 0x85, 0x41, 0xca, 0x41, 0x99, 0xae, 0xdf, 0x6f, 0x0e, 0x88, 0x1f, 0x71, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_120 = { .name = "ecdh_brainpoolp224r1_120", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_120_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_120_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_120_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 121 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 121 for ECDH, tcId is 122 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_121_peerpubkey[] = { 0x4a, 0x3c, 0xf5, 0xae, 0x89, 0x1b, 0xd9, 0xa8, 0x84, 0x65, 0x35, 0xb3, 0xc4, 0x69, 0x9f, 0x96, 0xd6, 0x39, 0x3c, 0xfd, 0x1b, 0x6b, 0xec, 0x22, 0x11, 0x13, 0x1e, 0x75, 0x09, 0x3b, 0x7b, 0xc2, 0x92, 0x3e, 0x9a, 0x4f, 0xc1, 0x02, 0x73, 0x13, 0x3b, 0x8f, 0xd3, 0xc8, 0x13, 0x8e, 0x9b, 0xac, 0xee, 0x55, 0x3b, 0xee, 0x92, 0xaf, 0xac, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_121_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_121_sharedsecret[] = { 0x24, 0xa8, 0x86, 0x77, 0x31, 0x97, 0xa7, 0xb7, 0x02, 0xc1, 0x5b, 0xbe, 0x02, 0x7c, 0xc7, 0xa5, 0xc3, 0x98, 0xab, 0x26, 0xdf, 0x36, 0x6a, 0x03, 0x33, 0xe7, 0xb0, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_121 = { .name = "ecdh_brainpoolp224r1_121", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_121_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_121_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_121_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 122 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 122 for ECDH, tcId is 123 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_122_peerpubkey[] = { 0x0e, 0x10, 0xa8, 0x01, 0x46, 0x99, 0x8b, 0x4f, 0xb0, 0x96, 0xc3, 0xb0, 0x45, 0x16, 0xbf, 0x39, 0x5f, 0xe1, 0x30, 0x35, 0x17, 0x0f, 0x04, 0x95, 0xfa, 0x1c, 0x1b, 0xcb, 0x37, 0x42, 0xd4, 0x63, 0xd5, 0xd2, 0xdd, 0xc0, 0xb4, 0x43, 0x8f, 0xdd, 0xd1, 0x5b, 0x9f, 0x0c, 0x81, 0xf6, 0xa9, 0x83, 0x97, 0x62, 0x9f, 0x91, 0x88, 0x3f, 0x34, 0x12, }; static const unsigned char ecdh_brainpoolp224r1_122_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_122_sharedsecret[] = { 0x0b, 0x69, 0x9b, 0xc7, 0x9a, 0x35, 0xee, 0xe7, 0x92, 0x52, 0xe9, 0x7d, 0x25, 0x2f, 0x60, 0x3c, 0x6c, 0x01, 0xc8, 0x15, 0x91, 0xef, 0xfc, 0x6d, 0xe6, 0x59, 0x14, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_122 = { .name = "ecdh_brainpoolp224r1_122", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_122_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_122_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_122_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 123 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 123 for ECDH, tcId is 124 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_123_peerpubkey[] = { 0xce, 0xa7, 0xfc, 0x14, 0x6d, 0x25, 0x7e, 0xc4, 0xf2, 0xc8, 0xda, 0x0c, 0x7a, 0x98, 0xf6, 0x20, 0xc2, 0xaf, 0x3f, 0x77, 0x36, 0xa7, 0xee, 0x6e, 0x34, 0xef, 0x28, 0x53, 0x32, 0x2e, 0x6d, 0x4e, 0xdb, 0x0d, 0x52, 0xcc, 0xdc, 0x16, 0x94, 0x8d, 0xa4, 0xf6, 0xac, 0x40, 0x8f, 0x6e, 0xf0, 0x17, 0x47, 0x56, 0x03, 0x89, 0x75, 0xca, 0x6a, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_123_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_123_sharedsecret[] = { 0x5d, 0x2a, 0x2a, 0x0f, 0x71, 0x5b, 0x29, 0x7a, 0x71, 0x36, 0xec, 0xf3, 0x1b, 0xd6, 0x97, 0xe5, 0x54, 0xc3, 0x22, 0x59, 0x9a, 0x11, 0x1b, 0xc3, 0xbf, 0xbe, 0xec, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_123 = { .name = "ecdh_brainpoolp224r1_123", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_123_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_123_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_123_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 124 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 124 for ECDH, tcId is 125 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_124_peerpubkey[] = { 0xab, 0xcf, 0x05, 0x70, 0x42, 0xe5, 0xef, 0x97, 0xbf, 0xc7, 0xcc, 0xce, 0x9d, 0x52, 0xda, 0xfb, 0xb6, 0xda, 0x5e, 0x86, 0xb4, 0x60, 0xde, 0x1c, 0x98, 0xaf, 0x70, 0x5c, 0x42, 0x21, 0x58, 0xd9, 0xaa, 0xa3, 0xa6, 0x74, 0x1a, 0xe1, 0x0a, 0x17, 0x48, 0xa2, 0x8a, 0xdd, 0xb4, 0xae, 0xc0, 0xd3, 0xe0, 0x7e, 0xb3, 0x1c, 0x2a, 0x50, 0x05, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_124_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_124_sharedsecret[] = { 0xad, 0xc1, 0xfa, 0x19, 0xf6, 0xf1, 0xb7, 0x0a, 0x01, 0x03, 0x24, 0x20, 0x37, 0x93, 0xae, 0x95, 0xf2, 0xe7, 0xd8, 0xcb, 0x61, 0xdc, 0xff, 0x4d, 0x3c, 0xc4, 0x2c, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_124 = { .name = "ecdh_brainpoolp224r1_124", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_124_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_124_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_124_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 125 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 125 for ECDH, tcId is 126 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_125_peerpubkey[] = { 0xbe, 0x0e, 0x13, 0x0a, 0x3b, 0x48, 0x3e, 0x78, 0x73, 0x59, 0x9e, 0x8c, 0x5f, 0xfe, 0x9a, 0xee, 0xb7, 0xd1, 0x55, 0x6a, 0x12, 0x59, 0x32, 0x45, 0x76, 0x66, 0xbf, 0x8d, 0x71, 0x58, 0x8f, 0x8d, 0xa7, 0x78, 0xad, 0x87, 0x42, 0x55, 0xf5, 0xfb, 0x20, 0x76, 0x5d, 0x8b, 0x19, 0x38, 0xfd, 0x96, 0x5f, 0x9a, 0x56, 0x81, 0x67, 0xd7, 0x2c, 0x93, }; static const unsigned char ecdh_brainpoolp224r1_125_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_125_sharedsecret[] = { 0x6b, 0x30, 0x28, 0x2b, 0x49, 0x5a, 0xf0, 0x09, 0x0b, 0x5f, 0x10, 0x35, 0xbf, 0x73, 0x1b, 0xd6, 0xd1, 0x31, 0x1d, 0x5a, 0xe7, 0x39, 0xfa, 0x5b, 0x43, 0x26, 0xde, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_125 = { .name = "ecdh_brainpoolp224r1_125", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_125_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_125_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_125_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 126 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 126 for ECDH, tcId is 127 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_126_peerpubkey[] = { 0x86, 0x3b, 0xc1, 0x6d, 0xbc, 0x20, 0xb4, 0xa6, 0xdc, 0x58, 0xe1, 0x81, 0x5f, 0xc6, 0xd1, 0xd1, 0x4f, 0xa7, 0xdf, 0x6d, 0x7a, 0x1f, 0x59, 0x12, 0x40, 0x2e, 0x44, 0x94, 0x75, 0x4b, 0xa7, 0xb0, 0x20, 0x08, 0x02, 0xe2, 0x6b, 0x0d, 0x4d, 0x26, 0x5b, 0x06, 0x37, 0xfa, 0x8a, 0x51, 0x56, 0xaa, 0x33, 0x46, 0xc0, 0x0e, 0x2c, 0x98, 0x63, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_126_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_126_sharedsecret[] = { 0x6c, 0x3b, 0x3b, 0xa9, 0x8b, 0x50, 0xeb, 0x19, 0x18, 0x39, 0xa8, 0x26, 0x8f, 0x02, 0x6c, 0xd3, 0x4d, 0xdf, 0x3d, 0xed, 0x12, 0xa8, 0x99, 0x90, 0x52, 0x47, 0xb4, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_126 = { .name = "ecdh_brainpoolp224r1_126", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_126_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_126_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_126_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 127 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 127 for ECDH, tcId is 128 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_127_peerpubkey[] = { 0xcc, 0x82, 0xa9, 0x94, 0x47, 0xf4, 0x92, 0xa2, 0xef, 0x0e, 0xc4, 0x88, 0xcc, 0x67, 0x0b, 0x87, 0x02, 0x27, 0xb5, 0x5e, 0xad, 0xd4, 0x10, 0x8b, 0xc8, 0xfb, 0xaa, 0x54, 0xc4, 0x54, 0x32, 0x51, 0x95, 0x2f, 0x71, 0x18, 0x1f, 0x9e, 0x0e, 0xca, 0x09, 0x80, 0x9a, 0x34, 0xf0, 0x4d, 0x11, 0x7e, 0xb5, 0xd4, 0x0b, 0xd8, 0x9b, 0x44, 0xc5, 0x57, }; static const unsigned char ecdh_brainpoolp224r1_127_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_127_sharedsecret[] = { 0x8e, 0x62, 0xc1, 0xa0, 0xbc, 0x6c, 0x23, 0x30, 0xb2, 0x54, 0xf4, 0x9d, 0x36, 0xa4, 0xb7, 0xa5, 0x55, 0x78, 0xb8, 0x2a, 0x11, 0x97, 0x8a, 0x35, 0x7c, 0x98, 0x30, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_127 = { .name = "ecdh_brainpoolp224r1_127", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_127_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_127_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_127_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 128 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 128 for ECDH, tcId is 129 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_128_peerpubkey[] = { 0x2d, 0xe0, 0x76, 0x58, 0x69, 0x8e, 0x3d, 0x05, 0x5f, 0x44, 0xb2, 0x9f, 0x00, 0xbf, 0x63, 0xaf, 0x71, 0xb9, 0x4c, 0x14, 0x29, 0x39, 0xa9, 0x41, 0xa6, 0xa0, 0x91, 0x26, 0x4a, 0x99, 0xa2, 0xd0, 0x62, 0x35, 0x9b, 0x84, 0x62, 0x66, 0xca, 0x7f, 0xb9, 0x0b, 0x44, 0x9b, 0xcf, 0xb2, 0x64, 0x44, 0x60, 0x1b, 0x3b, 0xd0, 0xaa, 0xb8, 0x13, 0x98, }; static const unsigned char ecdh_brainpoolp224r1_128_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_128_sharedsecret[] = { 0x4e, 0x48, 0x9f, 0x49, 0xe2, 0xc2, 0xe6, 0xa4, 0x77, 0xd9, 0xb3, 0xcb, 0x72, 0x4f, 0x03, 0x35, 0x64, 0xac, 0xc7, 0x8e, 0xbf, 0xcc, 0xc2, 0x1b, 0xac, 0xd4, 0x9b, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_128 = { .name = "ecdh_brainpoolp224r1_128", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_128_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_128_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_128_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 129 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 129 for ECDH, tcId is 130 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_129_peerpubkey[] = { 0xd0, 0x31, 0xc3, 0x03, 0xd0, 0xb7, 0x2c, 0xce, 0x50, 0xf2, 0x66, 0xb3, 0x04, 0xde, 0x88, 0x72, 0x0f, 0x16, 0x82, 0x62, 0xff, 0x40, 0x25, 0x5e, 0x8e, 0x05, 0x56, 0xf9, 0x5e, 0x58, 0xca, 0x62, 0xcb, 0xa6, 0x5c, 0xc2, 0xfe, 0xb7, 0x85, 0x6c, 0x1a, 0xa8, 0xb4, 0x3b, 0x64, 0x01, 0x2a, 0x71, 0xb1, 0x5d, 0xce, 0xf4, 0x39, 0x08, 0xf4, 0x17, }; static const unsigned char ecdh_brainpoolp224r1_129_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_129_sharedsecret[] = { 0x7e, 0xcd, 0x7f, 0xf3, 0x66, 0x09, 0xde, 0x1b, 0xf7, 0xaa, 0xda, 0x4b, 0x45, 0xe8, 0x5e, 0x75, 0x92, 0x48, 0x16, 0x74, 0xfa, 0xb5, 0xf2, 0xad, 0x1b, 0xb5, 0x04, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_129 = { .name = "ecdh_brainpoolp224r1_129", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_129_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_129_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_129_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 130 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 130 for ECDH, tcId is 131 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_130_peerpubkey[] = { 0xb3, 0x62, 0xcd, 0x22, 0xbb, 0xf8, 0x0b, 0x33, 0x84, 0xa2, 0x20, 0x8c, 0x9d, 0x72, 0xfc, 0xc0, 0x92, 0xb2, 0xb2, 0x3a, 0x70, 0x8e, 0x8d, 0x4a, 0x6f, 0xa5, 0x5a, 0x2a, 0x9f, 0x17, 0x83, 0xb2, 0xed, 0x2b, 0x3f, 0x54, 0x6e, 0x29, 0xfe, 0xdb, 0x2f, 0x23, 0x0b, 0x85, 0xdf, 0xf2, 0x17, 0x1d, 0xfa, 0xbc, 0x62, 0xb9, 0xfc, 0x1e, 0x21, 0x13, }; static const unsigned char ecdh_brainpoolp224r1_130_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_130_sharedsecret[] = { 0x27, 0x7a, 0xc6, 0xf2, 0x11, 0x0e, 0x46, 0x05, 0xca, 0x28, 0xfa, 0xd6, 0x0e, 0x95, 0x9d, 0xa9, 0x1d, 0x66, 0xa2, 0xbf, 0x3d, 0x6f, 0xf5, 0xf3, 0x96, 0x36, 0x9f, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_130 = { .name = "ecdh_brainpoolp224r1_130", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_130_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_130_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_130_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 131 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 131 for ECDH, tcId is 132 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_131_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4e, 0xbc, 0x90, 0x78, 0xad, 0x8a, 0xd0, 0x75, 0x62, 0xcd, 0x41, 0xb3, 0x74, 0x82, 0x71, 0x92, 0xaa, 0x88, 0xce, 0x3c, 0x71, 0x8a, 0x01, 0x44, 0x05, 0xee, 0xd4, 0x75, }; static const unsigned char ecdh_brainpoolp224r1_131_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_131_sharedsecret[] = { 0xc6, 0xb5, 0x1b, 0x2b, 0x01, 0xff, 0x43, 0xf8, 0xcc, 0x36, 0x81, 0x3f, 0x3d, 0xfc, 0x2d, 0x11, 0x90, 0xc3, 0x56, 0x3e, 0xa7, 0x30, 0x5d, 0x82, 0xa4, 0x60, 0x37, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_131 = { .name = "ecdh_brainpoolp224r1_131", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_131_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_131_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_131_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 132 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 132 for ECDH, tcId is 133 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_132_peerpubkey[] = { 0x3c, 0xdf, 0x09, 0x1f, 0x07, 0x84, 0x00, 0xc7, 0xb3, 0x29, 0x0c, 0x77, 0x4c, 0x2c, 0x98, 0xf6, 0xca, 0xc4, 0x9d, 0x69, 0x93, 0x4e, 0x4c, 0x55, 0x35, 0x8d, 0x0c, 0x4d, 0x9c, 0xac, 0xd4, 0x83, 0x3f, 0x37, 0x9c, 0xa5, 0xe5, 0x87, 0x62, 0x9c, 0xf6, 0x93, 0x6e, 0x13, 0x0b, 0x91, 0xc7, 0xf6, 0x14, 0x34, 0x9f, 0xd0, 0x28, 0x2c, 0x2e, 0x65, }; static const unsigned char ecdh_brainpoolp224r1_132_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_132_sharedsecret[] = { 0x48, 0xb0, 0xaa, 0x9b, 0x86, 0x02, 0x99, 0x3f, 0x86, 0x2e, 0xd9, 0x47, 0xb8, 0x45, 0xe3, 0xeb, 0x78, 0x20, 0x9e, 0x9c, 0x39, 0x56, 0x8f, 0x78, 0xf4, 0xa8, 0xc9, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_132 = { .name = "ecdh_brainpoolp224r1_132", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_132_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_132_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_132_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 133 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 133 for ECDH, tcId is 134 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_133_peerpubkey[] = { 0xc4, 0xee, 0xe1, 0xe5, 0x29, 0xdd, 0xdd, 0xbb, 0x69, 0xb8, 0xa2, 0x61, 0x54, 0xb3, 0x46, 0x7a, 0xe3, 0x77, 0xfe, 0xa8, 0xb5, 0x2b, 0x1e, 0x73, 0xee, 0xda, 0x35, 0xc0, 0xb7, 0x3c, 0x16, 0x0d, 0xb9, 0x46, 0xe3, 0x1b, 0xce, 0xeb, 0x0a, 0x6b, 0x8c, 0x22, 0x64, 0x91, 0xcc, 0x77, 0x49, 0xb3, 0xe9, 0x68, 0x23, 0x7e, 0xcf, 0x92, 0xe7, 0x1f, }; static const unsigned char ecdh_brainpoolp224r1_133_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_133_sharedsecret[] = { 0xbc, 0xbe, 0x1d, 0x55, 0xfc, 0x19, 0xad, 0x7b, 0x23, 0x7d, 0xac, 0x1e, 0x2a, 0x8d, 0xc5, 0x7a, 0x7c, 0x10, 0x91, 0x94, 0xc7, 0x70, 0xdc, 0x93, 0xff, 0xda, 0x07, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_133 = { .name = "ecdh_brainpoolp224r1_133", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_133_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_133_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_133_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 134 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 134 for ECDH, tcId is 135 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_134_peerpubkey[] = { 0xb7, 0xc4, 0xfc, 0xa7, 0x6a, 0xfd, 0x01, 0x35, 0xf7, 0x9c, 0xba, 0x7d, 0xc4, 0x25, 0x7f, 0xef, 0xaa, 0x14, 0x29, 0xbb, 0x6b, 0x16, 0x27, 0x10, 0x96, 0x2c, 0xb3, 0x41, 0xca, 0x9e, 0x69, 0x61, 0xe6, 0x63, 0x70, 0xdd, 0x62, 0xb7, 0x7e, 0x30, 0x18, 0xc6, 0x7f, 0x7e, 0x52, 0x4d, 0xb9, 0x06, 0xee, 0x18, 0xca, 0x1b, 0xeb, 0xe9, 0xa6, 0xc0, }; static const unsigned char ecdh_brainpoolp224r1_134_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_134_sharedsecret[] = { 0xac, 0xe3, 0x55, 0xe3, 0x0c, 0x6e, 0x9d, 0xb3, 0xb3, 0xc3, 0x45, 0x55, 0x45, 0x39, 0xf6, 0xb0, 0xd4, 0xaa, 0x43, 0x7e, 0xac, 0x1d, 0x7d, 0xa3, 0x81, 0xc5, 0x8e, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_134 = { .name = "ecdh_brainpoolp224r1_134", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_134_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_134_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_134_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 135 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 135 for ECDH, tcId is 136 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_135_peerpubkey[] = { 0xa2, 0xa7, 0x04, 0x83, 0x9c, 0xcd, 0xe8, 0x74, 0x49, 0xbb, 0x8e, 0x87, 0xc6, 0x30, 0xdc, 0x2e, 0xd5, 0x20, 0xf9, 0xad, 0x70, 0x67, 0xd6, 0xea, 0x46, 0x0a, 0x57, 0x54, 0xb5, 0xa9, 0xf2, 0x9c, 0x93, 0xf9, 0x2a, 0x43, 0xe5, 0x3a, 0x18, 0x15, 0x9c, 0x3b, 0x99, 0x6a, 0x5b, 0x58, 0x9e, 0xa1, 0xfa, 0x64, 0xff, 0x6f, 0xdb, 0x75, 0x8f, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_135_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_135_sharedsecret[] = { 0xbf, 0x81, 0x37, 0x88, 0x3e, 0xb6, 0x7e, 0x6c, 0x77, 0x05, 0x0b, 0x93, 0x29, 0xaa, 0x1d, 0x39, 0x96, 0x16, 0x77, 0x75, 0xbf, 0xee, 0x32, 0x09, 0xfb, 0x72, 0x8f, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_135 = { .name = "ecdh_brainpoolp224r1_135", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_135_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_135_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_135_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 136 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 136 for ECDH, tcId is 137 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_136_peerpubkey[] = { 0x4e, 0x1c, 0x8b, 0x12, 0x7d, 0x0b, 0x92, 0xf8, 0xf1, 0x1e, 0x69, 0xb2, 0x72, 0x1a, 0x8c, 0x0f, 0x1d, 0x32, 0xfc, 0x2a, 0xb8, 0x8a, 0xaa, 0x36, 0xa5, 0xa4, 0x95, 0xf8, 0x56, 0x3f, 0x19, 0x06, 0x77, 0x27, 0x5d, 0x6c, 0x3b, 0x0a, 0xc3, 0x2f, 0xc8, 0x78, 0x71, 0xd2, 0x35, 0xa5, 0x73, 0xdf, 0xf7, 0xf8, 0x1f, 0x0c, 0xa0, 0x6b, 0x52, 0x3d, }; static const unsigned char ecdh_brainpoolp224r1_136_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_136_sharedsecret[] = { 0xbb, 0x2b, 0x15, 0xb2, 0x93, 0xe6, 0xea, 0x65, 0x88, 0x7e, 0x8d, 0xa8, 0x6f, 0x1e, 0x05, 0xa5, 0x4a, 0x61, 0xac, 0x6e, 0xfd, 0x82, 0x8a, 0x4b, 0xb8, 0x66, 0xb8, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_136 = { .name = "ecdh_brainpoolp224r1_136", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_136_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_136_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_136_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 137 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 137 for ECDH, tcId is 138 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_137_peerpubkey[] = { 0x12, 0x1a, 0x60, 0xb2, 0xb6, 0x1d, 0x6d, 0x1d, 0xcf, 0xc2, 0xbc, 0x90, 0x08, 0xa3, 0x4e, 0x81, 0xf8, 0x9e, 0xe4, 0xa8, 0xa1, 0x74, 0x1e, 0x51, 0xca, 0x18, 0x0c, 0xb2, 0x9e, 0xe4, 0x44, 0xf1, 0x0f, 0xe6, 0xa4, 0xe3, 0xe1, 0x3f, 0x5f, 0x1d, 0x09, 0xe6, 0x48, 0x51, 0x03, 0x55, 0xc5, 0x62, 0x84, 0x4c, 0xbf, 0x41, 0xec, 0x01, 0xc9, 0x4f, }; static const unsigned char ecdh_brainpoolp224r1_137_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_137_sharedsecret[] = { 0xb7, 0xf0, 0xeb, 0x18, 0x18, 0x54, 0x56, 0x38, 0x2c, 0xf1, 0xc1, 0xe0, 0xea, 0x06, 0xac, 0x25, 0x79, 0xde, 0xbc, 0xdb, 0x71, 0x12, 0x76, 0x1a, 0x95, 0x88, 0x97, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_137 = { .name = "ecdh_brainpoolp224r1_137", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_137_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_137_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_137_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 138 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 138 for ECDH, tcId is 139 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_138_peerpubkey[] = { 0x81, 0x7d, 0xe4, 0x23, 0x39, 0x75, 0xa0, 0x02, 0xfb, 0x32, 0x70, 0xfd, 0xac, 0x02, 0x15, 0x79, 0x77, 0xa7, 0xef, 0xc2, 0xfb, 0x4c, 0xbd, 0xd7, 0x5f, 0x41, 0xed, 0x2c, 0x74, 0x54, 0xc1, 0x05, 0xb3, 0x0d, 0x17, 0x80, 0xdb, 0x0a, 0xd9, 0xe9, 0x4e, 0xf4, 0xe3, 0x78, 0x04, 0xe3, 0xea, 0x22, 0x4c, 0xee, 0x93, 0x99, 0x6d, 0x1b, 0x8a, 0xda, }; static const unsigned char ecdh_brainpoolp224r1_138_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_138_sharedsecret[] = { 0x14, 0xe9, 0x02, 0x23, 0xf8, 0xd4, 0xf8, 0xaf, 0x98, 0x26, 0x59, 0xf7, 0x65, 0xfd, 0x43, 0xf2, 0x3b, 0x5b, 0x6b, 0x8f, 0x9f, 0x7b, 0xe9, 0xd3, 0x24, 0x7c, 0x3a, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_138 = { .name = "ecdh_brainpoolp224r1_138", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_138_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_138_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_138_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 139 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 139 for ECDH, tcId is 140 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_139_peerpubkey[] = { 0xc4, 0x23, 0x01, 0x16, 0xde, 0x58, 0x4c, 0x94, 0x06, 0xfb, 0x84, 0x73, 0x30, 0xe7, 0x2b, 0x0a, 0xae, 0xe2, 0xf7, 0x9a, 0xc7, 0xda, 0x56, 0xd4, 0xf8, 0xd5, 0xdc, 0x05, 0x4a, 0x16, 0xd4, 0x63, 0x4a, 0xf4, 0xbe, 0x99, 0xec, 0x85, 0xec, 0x74, 0xbc, 0xc7, 0x09, 0xfe, 0x92, 0x83, 0x55, 0x20, 0x1d, 0x38, 0x6b, 0x54, 0xa0, 0xcf, 0xe2, 0x29, }; static const unsigned char ecdh_brainpoolp224r1_139_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_139_sharedsecret[] = { 0x96, 0x53, 0x0f, 0x95, 0xab, 0x24, 0x54, 0xc4, 0x13, 0xc4, 0x97, 0x34, 0x47, 0x56, 0xe7, 0x90, 0xfa, 0xc6, 0xc9, 0x96, 0xe4, 0xe6, 0x9a, 0xb0, 0x17, 0xc9, 0x68, 0x43, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_139 = { .name = "ecdh_brainpoolp224r1_139", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_139_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_139_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_139_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 140 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 140 for ECDH, tcId is 141 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_140_peerpubkey[] = { 0x35, 0x04, 0xc3, 0x1b, 0x82, 0x58, 0x53, 0xd2, 0x8f, 0x71, 0x26, 0xfe, 0x34, 0x11, 0x1a, 0x6e, 0x74, 0xee, 0x9e, 0x18, 0x10, 0x58, 0xa0, 0xeb, 0xe3, 0x44, 0xbd, 0x35, 0x97, 0x2d, 0x37, 0xd3, 0xd0, 0x68, 0x4e, 0x9e, 0x1f, 0x7e, 0x45, 0x0d, 0xea, 0xcb, 0x43, 0x03, 0xc7, 0x2c, 0x56, 0x83, 0x01, 0x96, 0xf3, 0xb3, 0x71, 0xc8, 0x4d, 0x3a, }; static const unsigned char ecdh_brainpoolp224r1_140_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_140_sharedsecret[] = { 0x61, 0xd1, 0x01, 0x39, 0xe4, 0x21, 0x29, 0x92, 0x35, 0x28, 0x2b, 0x47, 0xb0, 0x0e, 0xf7, 0x7b, 0xc0, 0x1d, 0x19, 0xe7, 0x9e, 0x5c, 0x33, 0x48, 0xc9, 0x05, 0x6d, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_140 = { .name = "ecdh_brainpoolp224r1_140", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_140_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_140_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_140_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 141 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 141 for ECDH, tcId is 142 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_141_peerpubkey[] = { 0xca, 0xc2, 0xef, 0x7e, 0xfb, 0x9a, 0x1f, 0x42, 0x15, 0x8b, 0xa6, 0xbc, 0xf4, 0xd2, 0xde, 0xe1, 0x18, 0x20, 0xae, 0xf5, 0xfd, 0x32, 0x05, 0x41, 0x76, 0xf1, 0x33, 0xc4, 0xa1, 0x3d, 0x59, 0xe6, 0xe6, 0x8c, 0x2e, 0x33, 0xb4, 0x0b, 0x19, 0xf8, 0x3e, 0x21, 0x34, 0x75, 0xf7, 0x0e, 0xe4, 0x36, 0x6a, 0x5a, 0xab, 0xcc, 0xfe, 0x06, 0x9a, 0x85, }; static const unsigned char ecdh_brainpoolp224r1_141_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_141_sharedsecret[] = { 0x32, 0x94, 0xcf, 0x02, 0x18, 0x92, 0x51, 0xf9, 0xe2, 0x99, 0x9e, 0xae, 0x32, 0x59, 0xed, 0x55, 0x9b, 0x94, 0x80, 0x14, 0xad, 0x6f, 0x86, 0x36, 0x7a, 0x80, 0x75, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_141 = { .name = "ecdh_brainpoolp224r1_141", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_141_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_141_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_141_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 142 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 142 for ECDH, tcId is 143 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_142_peerpubkey[] = { 0x8c, 0x0b, 0xc2, 0x75, 0xd9, 0x27, 0xd0, 0xb9, 0x00, 0x33, 0xed, 0xac, 0xf7, 0x1d, 0xf4, 0xec, 0x36, 0x1f, 0x2d, 0x5a, 0x8a, 0x16, 0x60, 0x3d, 0xd6, 0x89, 0x63, 0x37, 0x31, 0xff, 0xb9, 0x00, 0xdf, 0xfa, 0x6e, 0x42, 0x4a, 0x3d, 0x71, 0xe3, 0x0d, 0x91, 0xf5, 0x8d, 0x10, 0x8d, 0x14, 0xdd, 0x4b, 0xc8, 0xc5, 0xa3, 0xe1, 0x76, 0x06, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_142_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_142_sharedsecret[] = { 0x14, 0x96, 0xb6, 0x80, 0x0e, 0x08, 0x1b, 0x95, 0x83, 0x97, 0xbd, 0xbf, 0x99, 0x02, 0xed, 0xe5, 0x85, 0xdf, 0x30, 0x66, 0xd3, 0xfe, 0xcc, 0xb4, 0xf4, 0xee, 0x5f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_142 = { .name = "ecdh_brainpoolp224r1_142", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_142_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_142_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_142_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 143 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 143 for ECDH, tcId is 144 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_143_peerpubkey[] = { 0x44, 0x09, 0x47, 0x5c, 0xef, 0xb7, 0xd3, 0x15, 0x79, 0x18, 0x4f, 0xfb, 0xf7, 0xca, 0x91, 0x3d, 0x7a, 0x73, 0x1c, 0xb9, 0xd8, 0x8e, 0xb3, 0xc3, 0x58, 0xca, 0x87, 0x22, 0x21, 0xd1, 0x1a, 0xdd, 0xe5, 0xd0, 0x4d, 0xab, 0x31, 0xba, 0x7b, 0x37, 0x5d, 0x2d, 0x50, 0x2d, 0xbf, 0x93, 0x61, 0x90, 0xa0, 0x46, 0x8a, 0xb3, 0xb8, 0x59, 0x8f, 0x8a, }; static const unsigned char ecdh_brainpoolp224r1_143_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_143_sharedsecret[] = { 0x90, 0xeb, 0xeb, 0x1e, 0xe0, 0x34, 0x74, 0xc8, 0xde, 0x67, 0x2d, 0x80, 0x08, 0x8d, 0xe5, 0xc9, 0x02, 0xa1, 0x30, 0x50, 0x38, 0xa7, 0x97, 0x6d, 0x63, 0xf1, 0xbc, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_143 = { .name = "ecdh_brainpoolp224r1_143", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_143_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_143_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_143_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 144 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 144 for ECDH, tcId is 145 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_144_peerpubkey[] = { 0x05, 0xd6, 0x20, 0x55, 0xef, 0x1a, 0x6e, 0x08, 0xd0, 0x9c, 0xf0, 0xcc, 0x29, 0x54, 0x56, 0x0f, 0xe0, 0x8f, 0x04, 0x7c, 0x41, 0xb5, 0xb9, 0xc8, 0xd6, 0xea, 0x7b, 0xca, 0x68, 0x6a, 0x16, 0x3a, 0x53, 0x9d, 0x2f, 0x64, 0xdb, 0x5c, 0x91, 0xf1, 0xf5, 0x74, 0x2e, 0x2f, 0xd4, 0xc2, 0x85, 0xb0, 0x68, 0xfb, 0xa1, 0x5d, 0xd5, 0xe6, 0xbb, 0xb5, }; static const unsigned char ecdh_brainpoolp224r1_144_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_144_sharedsecret[] = { 0x9c, 0x6c, 0x7a, 0x97, 0x6d, 0xa5, 0x0b, 0xe1, 0xe8, 0xb4, 0x12, 0x1b, 0x7c, 0xee, 0x06, 0x8e, 0x18, 0x9f, 0x43, 0xc5, 0x8c, 0x21, 0x65, 0x9a, 0xaa, 0x9f, 0xc8, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_144 = { .name = "ecdh_brainpoolp224r1_144", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_144_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_144_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_144_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 145 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 145 for ECDH, tcId is 146 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_145_peerpubkey[] = { 0x61, 0x35, 0xe5, 0x29, 0x2b, 0x9e, 0xf7, 0x6b, 0x2d, 0x28, 0x10, 0xb3, 0x11, 0x07, 0x91, 0xec, 0xaa, 0x34, 0xc3, 0x3d, 0xc6, 0x65, 0xa2, 0x54, 0x49, 0x95, 0x73, 0x30, 0xa6, 0x5b, 0x87, 0xed, 0x28, 0xf4, 0xbd, 0x12, 0x2c, 0x99, 0x42, 0x8d, 0xf5, 0xf7, 0xb2, 0xdf, 0x2d, 0x6e, 0x7d, 0xb9, 0x66, 0x93, 0x9b, 0xd7, 0x58, 0xd5, 0x09, 0x45, }; static const unsigned char ecdh_brainpoolp224r1_145_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_145_sharedsecret[] = { 0xd7, 0x8e, 0xe9, 0xba, 0x10, 0x62, 0x7a, 0x46, 0x73, 0xdf, 0x93, 0xb4, 0x4a, 0xf9, 0x22, 0x6c, 0x09, 0xb2, 0xfb, 0x6d, 0xe0, 0xfd, 0x82, 0x41, 0x2b, 0xbe, 0x7e, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_145 = { .name = "ecdh_brainpoolp224r1_145", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_145_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_145_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_145_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 146 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 146 for ECDH, tcId is 147 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_146_peerpubkey[] = { 0x06, 0x3d, 0x4a, 0x35, 0x78, 0xcf, 0xb5, 0x79, 0x08, 0x72, 0xa1, 0x55, 0x12, 0x5d, 0xe0, 0xcc, 0xab, 0x62, 0xe5, 0x13, 0x69, 0xe4, 0x7f, 0xe4, 0x08, 0x85, 0x5d, 0x4a, 0x66, 0xe0, 0xec, 0xf1, 0xdd, 0x41, 0xa8, 0x42, 0x67, 0x14, 0xe6, 0xe4, 0xfa, 0x08, 0x49, 0x77, 0xa3, 0xeb, 0x50, 0xf8, 0x00, 0x96, 0xdd, 0x3b, 0x99, 0x2f, 0xb0, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_146_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_146_sharedsecret[] = { 0x00, 0xe2, 0x0e, 0xde, 0x1b, 0xb6, 0x4f, 0xe9, 0x46, 0x61, 0x9b, 0xf6, 0x1d, 0x36, 0xa3, 0x1b, 0x18, 0x81, 0x0a, 0xce, 0x2b, 0x2b, 0xe5, 0xca, 0x34, 0xb0, 0xd0, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_146 = { .name = "ecdh_brainpoolp224r1_146", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_146_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_146_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_146_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 147 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 147 for ECDH, tcId is 148 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_147_peerpubkey[] = { 0x1f, 0x71, 0x1a, 0x5c, 0xab, 0x72, 0xaf, 0x59, 0x7d, 0x0f, 0xa0, 0x79, 0xd3, 0xad, 0xcc, 0x9d, 0xd7, 0x33, 0xbf, 0xb2, 0x7c, 0xbf, 0xb9, 0x94, 0x53, 0x3c, 0x28, 0x8c, 0x75, 0x12, 0x83, 0xb7, 0xd9, 0xac, 0x35, 0x79, 0x04, 0x03, 0x0b, 0xbc, 0xd0, 0xa2, 0x74, 0xc3, 0xac, 0xa7, 0xb8, 0x3e, 0x74, 0x9b, 0x82, 0xbf, 0xb3, 0x30, 0xe1, 0x6d, }; static const unsigned char ecdh_brainpoolp224r1_147_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_147_sharedsecret[] = { 0x20, 0x6f, 0xfd, 0xb5, 0x9a, 0x60, 0x26, 0xb1, 0xea, 0x27, 0xa0, 0xb0, 0x2d, 0x15, 0x2c, 0x5d, 0xcf, 0xaa, 0xf5, 0x1e, 0x14, 0x94, 0x7c, 0x77, 0xdc, 0x3c, 0x6d, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_147 = { .name = "ecdh_brainpoolp224r1_147", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_147_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_147_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_147_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 148 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 148 for ECDH, tcId is 149 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_148_peerpubkey[] = { 0x3e, 0x4f, 0x47, 0xdd, 0x3e, 0xed, 0x36, 0x0b, 0xfb, 0xfe, 0x6a, 0x6a, 0x52, 0xe4, 0x22, 0x1e, 0x99, 0xe6, 0x3f, 0xb4, 0xf1, 0x14, 0x97, 0xf4, 0x76, 0x4a, 0x34, 0xe0, 0x24, 0x38, 0x85, 0xd3, 0x76, 0x7c, 0xd7, 0x29, 0xb4, 0x81, 0x7d, 0x34, 0xbf, 0xfa, 0x7c, 0x2c, 0xca, 0x09, 0xcd, 0x53, 0xa6, 0x16, 0x80, 0xd2, 0x2a, 0x50, 0x76, 0x80, }; static const unsigned char ecdh_brainpoolp224r1_148_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_148_sharedsecret[] = { 0xaa, 0x29, 0x8c, 0x47, 0x0c, 0x05, 0x69, 0x86, 0xeb, 0x04, 0x7b, 0x5b, 0x39, 0xe5, 0x67, 0x71, 0xb0, 0xfc, 0x75, 0x6e, 0x44, 0x72, 0x04, 0xb0, 0x2a, 0x07, 0x31, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_148 = { .name = "ecdh_brainpoolp224r1_148", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_148_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_148_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_148_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 149 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 149 for ECDH, tcId is 150 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_149_peerpubkey[] = { 0xb5, 0x57, 0x50, 0xb5, 0xf0, 0xe9, 0x84, 0x31, 0xb0, 0x02, 0x19, 0xe2, 0x2b, 0xdf, 0x79, 0xef, 0x76, 0x81, 0x3c, 0x0c, 0xb1, 0x82, 0x52, 0x63, 0x32, 0x27, 0x3e, 0xa0, 0xac, 0xe9, 0x63, 0xaf, 0xac, 0xd2, 0x7e, 0xdc, 0x29, 0x73, 0xe7, 0x92, 0x1b, 0x4a, 0xf6, 0x82, 0x39, 0x26, 0x9d, 0xef, 0x74, 0x75, 0x3f, 0x4a, 0x93, 0x35, 0x29, 0x61, }; static const unsigned char ecdh_brainpoolp224r1_149_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_149_sharedsecret[] = { 0x3a, 0x58, 0x31, 0x4a, 0x6c, 0xa7, 0x96, 0x5b, 0x05, 0xed, 0x72, 0x5a, 0x9c, 0x5c, 0xb7, 0xc7, 0x2b, 0xc8, 0x48, 0xe8, 0x07, 0x8b, 0xff, 0x1b, 0xfb, 0xfb, 0xe1, 0x66, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_149 = { .name = "ecdh_brainpoolp224r1_149", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_149_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_149_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_149_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 150 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 150 for ECDH, tcId is 151 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_150_peerpubkey[] = { 0x3e, 0xd6, 0x7a, 0x4c, 0x6b, 0xe5, 0x09, 0x8b, 0xed, 0x6b, 0x3b, 0xb4, 0x90, 0xd0, 0x3f, 0xbe, 0xa5, 0xf4, 0x56, 0x4f, 0x49, 0xd9, 0x02, 0x4d, 0xd1, 0x59, 0x50, 0x48, 0xaf, 0xae, 0x70, 0x66, 0xbd, 0xc8, 0x91, 0x3d, 0xb7, 0x57, 0x14, 0x4f, 0xa7, 0x94, 0x53, 0x2c, 0xf4, 0x27, 0x09, 0x89, 0x7a, 0xff, 0xfe, 0x68, 0x03, 0x81, 0x69, 0xf2, }; static const unsigned char ecdh_brainpoolp224r1_150_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_150_sharedsecret[] = { 0x47, 0x87, 0xe3, 0x41, 0x15, 0x89, 0x93, 0x2b, 0x67, 0x24, 0x54, 0xe8, 0xb2, 0xf7, 0x04, 0xe3, 0x40, 0x60, 0xb4, 0xe5, 0x6e, 0xc1, 0xe5, 0x99, 0x3c, 0x42, 0x3a, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_150 = { .name = "ecdh_brainpoolp224r1_150", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_150_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_150_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_150_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 151 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 151 for ECDH, tcId is 152 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_151_peerpubkey[] = { 0x76, 0x72, 0x95, 0xcf, 0x24, 0xe6, 0xee, 0xbb, 0x17, 0xa9, 0x34, 0xb9, 0xde, 0xf1, 0xb7, 0x93, 0x7c, 0x77, 0xcf, 0xcc, 0x39, 0xad, 0x4d, 0xdd, 0xfe, 0xa1, 0xc5, 0x1d, 0x5b, 0xd4, 0xb1, 0x70, 0x37, 0xf9, 0xb2, 0x63, 0x0b, 0x9b, 0x62, 0x5c, 0xaa, 0x90, 0x0e, 0x7c, 0xb1, 0xeb, 0x5e, 0x85, 0xa9, 0x1e, 0x67, 0x4e, 0xea, 0xb4, 0xbf, 0xe7, }; static const unsigned char ecdh_brainpoolp224r1_151_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_151_sharedsecret[] = { 0x01, 0x27, 0xf8, 0x9d, 0x48, 0xb0, 0x5e, 0x5c, 0xc8, 0xbd, 0xae, 0x1b, 0x52, 0x67, 0x68, 0x91, 0x9d, 0xec, 0x79, 0x43, 0xc3, 0x38, 0x4c, 0x82, 0xc1, 0xe7, 0x3c, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_151 = { .name = "ecdh_brainpoolp224r1_151", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_151_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_151_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_151_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 152 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 152 for ECDH, tcId is 153 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_152_peerpubkey[] = { 0x86, 0xd3, 0x36, 0x68, 0xc5, 0x92, 0xf0, 0x42, 0xea, 0x58, 0x7c, 0x32, 0x57, 0x48, 0xbd, 0xd1, 0x2e, 0x93, 0x44, 0xb3, 0x48, 0xa8, 0x87, 0xc7, 0xf0, 0xff, 0xb0, 0x07, 0x49, 0x54, 0xaf, 0xab, 0xe6, 0x5b, 0x56, 0x78, 0x42, 0xa5, 0x66, 0xba, 0x0a, 0x74, 0xcd, 0xc2, 0xfb, 0x17, 0x43, 0x94, 0x17, 0xd4, 0xc2, 0x28, 0xf4, 0x4f, 0xf7, 0xea, }; static const unsigned char ecdh_brainpoolp224r1_152_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_152_sharedsecret[] = { 0x4b, 0x17, 0xd4, 0x4f, 0xb9, 0x51, 0x39, 0xd4, 0xa7, 0x44, 0x45, 0x8c, 0x34, 0x09, 0x75, 0x3c, 0xc6, 0x76, 0x7d, 0x19, 0xc6, 0x70, 0x59, 0x84, 0x97, 0xd8, 0xba, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_152 = { .name = "ecdh_brainpoolp224r1_152", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_152_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_152_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_152_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 153 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 153 for ECDH, tcId is 154 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_153_peerpubkey[] = { 0x83, 0x75, 0xd8, 0xcf, 0x64, 0xe4, 0x15, 0x21, 0x74, 0xca, 0x0e, 0xfc, 0x9c, 0xaa, 0x89, 0xa4, 0x31, 0x73, 0x93, 0x57, 0xca, 0x62, 0xc9, 0xd2, 0x2b, 0x19, 0xe0, 0x96, 0x47, 0x5e, 0xbb, 0x6e, 0x6a, 0xea, 0x55, 0x68, 0x58, 0x9d, 0x86, 0x78, 0x26, 0xa6, 0x57, 0xb9, 0x1f, 0x75, 0x03, 0x0b, 0xc8, 0x5f, 0xcf, 0xdd, 0x6d, 0xdc, 0xac, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_153_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_153_sharedsecret[] = { 0x4e, 0xa8, 0xba, 0x24, 0xa6, 0xb7, 0x72, 0xdc, 0xc6, 0xb3, 0x9a, 0xeb, 0x14, 0x06, 0x34, 0xdf, 0x9c, 0x91, 0x08, 0xdc, 0x46, 0x4b, 0x07, 0x1a, 0x95, 0x06, 0x0e, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_153 = { .name = "ecdh_brainpoolp224r1_153", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_153_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_153_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_153_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 154 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 154 for ECDH, tcId is 155 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_154_peerpubkey[] = { 0x7f, 0x19, 0xd5, 0xc4, 0x4f, 0x9e, 0xf7, 0x88, 0xef, 0x01, 0x71, 0x67, 0xfe, 0x2c, 0x45, 0x84, 0xec, 0xf3, 0x0a, 0x42, 0xa4, 0xd6, 0x9b, 0xb5, 0xd1, 0xeb, 0xc5, 0xa7, 0x52, 0x66, 0x42, 0x68, 0x8d, 0x66, 0x86, 0x7e, 0x95, 0xe9, 0x39, 0x73, 0x28, 0x43, 0x13, 0xdd, 0xa2, 0xaa, 0x01, 0xe5, 0x8e, 0xbb, 0xf4, 0xd0, 0xba, 0x6f, 0x90, 0xac, }; static const unsigned char ecdh_brainpoolp224r1_154_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_154_sharedsecret[] = { 0x5a, 0x1a, 0x19, 0xea, 0x3f, 0x74, 0x7e, 0xd6, 0xbf, 0xcf, 0xb6, 0xcc, 0x11, 0x88, 0xce, 0xd5, 0xb6, 0x40, 0xba, 0xf0, 0xbf, 0xbe, 0x9d, 0x37, 0x0e, 0xdd, 0x99, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_154 = { .name = "ecdh_brainpoolp224r1_154", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_154_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_154_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_154_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 155 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 155 for ECDH, tcId is 156 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_155_peerpubkey[] = { 0x09, 0x9b, 0x2e, 0xd1, 0x57, 0xe8, 0x42, 0x76, 0x88, 0xae, 0x4a, 0x31, 0x21, 0x16, 0x26, 0xa3, 0x1b, 0x69, 0xfc, 0x1b, 0x54, 0xcc, 0x28, 0x75, 0x40, 0x60, 0x82, 0xd8, 0x7d, 0x3c, 0xbc, 0x08, 0x5a, 0x1d, 0x59, 0x87, 0x0f, 0x97, 0xf9, 0xc5, 0xfe, 0xf0, 0x48, 0x01, 0xd9, 0xdb, 0xd1, 0x25, 0xa6, 0x18, 0x4c, 0x20, 0x62, 0xbd, 0x7b, 0x74, }; static const unsigned char ecdh_brainpoolp224r1_155_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_155_sharedsecret[] = { 0x58, 0xaa, 0x99, 0x0c, 0x3c, 0xbf, 0x80, 0xca, 0x08, 0x72, 0x5b, 0xc7, 0x1b, 0x7e, 0x82, 0x6f, 0x03, 0x40, 0xa2, 0xb1, 0x1e, 0x0d, 0x33, 0x60, 0xc7, 0xd7, 0xc1, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_155 = { .name = "ecdh_brainpoolp224r1_155", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_155_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_155_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_155_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 156 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 156 for ECDH, tcId is 157 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_156_peerpubkey[] = { 0x84, 0x68, 0xf6, 0x15, 0xa3, 0xd0, 0x91, 0x54, 0x01, 0x80, 0xf6, 0x4f, 0x52, 0x88, 0x6f, 0x9f, 0x48, 0x9f, 0xbb, 0x5b, 0xbb, 0x4c, 0xe4, 0x5a, 0xd3, 0x35, 0x9b, 0x7c, 0x84, 0x26, 0xbe, 0x2a, 0xf8, 0x63, 0xe2, 0x0a, 0x6d, 0x69, 0x1b, 0xca, 0x5a, 0x12, 0xf6, 0xc4, 0x4c, 0xbe, 0x52, 0xe2, 0x7f, 0x0a, 0x62, 0xd1, 0xc0, 0x94, 0xa6, 0x60, }; static const unsigned char ecdh_brainpoolp224r1_156_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_156_sharedsecret[] = { 0x46, 0x3b, 0x47, 0x98, 0x27, 0x83, 0x17, 0xeb, 0x51, 0xb7, 0xac, 0xf0, 0x5b, 0x27, 0x07, 0x06, 0x42, 0x69, 0x6f, 0x9f, 0x21, 0xe0, 0x64, 0x39, 0x8f, 0xfb, 0x12, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_156 = { .name = "ecdh_brainpoolp224r1_156", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_156_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_156_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_156_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 157 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 157 for ECDH, tcId is 158 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_157_peerpubkey[] = { 0x67, 0x17, 0xf2, 0x7c, 0x90, 0xf9, 0xe0, 0x89, 0x59, 0x04, 0x26, 0x0e, 0x58, 0x75, 0xce, 0xea, 0xfe, 0xa9, 0xc3, 0x24, 0x9f, 0x18, 0x23, 0xe5, 0x44, 0x3a, 0x89, 0x10, 0x06, 0x78, 0xe7, 0x91, 0x70, 0x56, 0x21, 0x06, 0x34, 0xea, 0xb1, 0x91, 0xa8, 0xde, 0x65, 0xde, 0xb7, 0x64, 0xb8, 0xf5, 0x71, 0x1d, 0x71, 0xc1, 0xda, 0x48, 0xd0, 0x86, }; static const unsigned char ecdh_brainpoolp224r1_157_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_157_sharedsecret[] = { 0x20, 0xbf, 0xc6, 0xa8, 0x6f, 0xdb, 0xcb, 0xf2, 0xfc, 0xe6, 0x0d, 0x18, 0x41, 0x33, 0x4e, 0xfe, 0x99, 0x3b, 0xd5, 0x86, 0x6f, 0x38, 0x7c, 0xe8, 0x86, 0xc1, 0x61, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_157 = { .name = "ecdh_brainpoolp224r1_157", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_157_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_157_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_157_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 158 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 158 for ECDH, tcId is 159 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_158_peerpubkey[] = { 0x0f, 0x31, 0x17, 0xf5, 0xff, 0xd8, 0xe6, 0xe4, 0x5e, 0xe0, 0xb2, 0x6b, 0x36, 0x51, 0x4e, 0xbc, 0xc1, 0x38, 0xef, 0x45, 0x7b, 0x69, 0xec, 0xd3, 0xcd, 0x57, 0x4f, 0x1a, 0x56, 0x62, 0xf5, 0xb8, 0x50, 0x7f, 0x70, 0xcb, 0x20, 0xf9, 0x6f, 0xcb, 0x0e, 0x4c, 0x4e, 0xe9, 0x51, 0x82, 0x14, 0x50, 0x29, 0x43, 0xca, 0xd2, 0xb8, 0xa7, 0xae, 0x6f, }; static const unsigned char ecdh_brainpoolp224r1_158_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_158_sharedsecret[] = { 0x4d, 0xdf, 0x20, 0xc3, 0x4e, 0x6c, 0x42, 0x0c, 0x53, 0x44, 0x36, 0x4d, 0xc2, 0xbb, 0x8d, 0x76, 0x01, 0x67, 0xfe, 0x5b, 0x0b, 0x30, 0xa0, 0x28, 0x74, 0x7b, 0x84, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_158 = { .name = "ecdh_brainpoolp224r1_158", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_158_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_158_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_158_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 159 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 159 for ECDH, tcId is 160 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_159_peerpubkey[] = { 0x8f, 0x0f, 0x70, 0xfb, 0xac, 0xf3, 0x30, 0x93, 0xd3, 0xb0, 0x3f, 0xbf, 0x80, 0x5a, 0x03, 0xa2, 0xa3, 0x0d, 0xba, 0x2b, 0xdb, 0x12, 0x4e, 0xd8, 0xb7, 0xf1, 0x45, 0xe0, 0x18, 0xad, 0x20, 0x4e, 0x46, 0x05, 0x57, 0x91, 0x11, 0xb7, 0x3c, 0x42, 0xd7, 0x80, 0x29, 0x6f, 0x16, 0x27, 0x1d, 0x97, 0x48, 0xd1, 0x2c, 0xda, 0x5c, 0xbd, 0x0d, 0x3c, }; static const unsigned char ecdh_brainpoolp224r1_159_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_159_sharedsecret[] = { 0x04, 0xca, 0xf7, 0xd7, 0x80, 0x57, 0x86, 0xf8, 0x1a, 0x3e, 0xbd, 0xe1, 0x7d, 0xf8, 0x28, 0x40, 0x0a, 0x96, 0x99, 0xc7, 0x80, 0x31, 0x5b, 0x3d, 0xf5, 0x79, 0x0b, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_159 = { .name = "ecdh_brainpoolp224r1_159", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_159_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_159_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_159_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 160 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 160 for ECDH, tcId is 161 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_160_peerpubkey[] = { 0xb6, 0xc3, 0x5a, 0x76, 0xcb, 0x5e, 0x83, 0x02, 0x30, 0xe8, 0x98, 0x6c, 0xba, 0x5f, 0xad, 0xb8, 0xcc, 0x28, 0x58, 0xd3, 0xbf, 0xd8, 0x82, 0xba, 0xa7, 0xea, 0x90, 0x05, 0x6e, 0x30, 0xbd, 0xbd, 0x4c, 0x17, 0x04, 0x58, 0x42, 0x62, 0xef, 0x66, 0xa6, 0x84, 0x2f, 0x5e, 0x65, 0x55, 0xe8, 0x0f, 0x48, 0x8f, 0x3b, 0x41, 0x9e, 0xdd, 0xde, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_160_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_160_sharedsecret[] = { 0x5c, 0xe5, 0xfa, 0xde, 0x15, 0x34, 0x18, 0x28, 0xa7, 0x08, 0x38, 0x9c, 0x39, 0xcd, 0xa6, 0xfe, 0xc2, 0x2f, 0xcb, 0x53, 0x3d, 0xd6, 0x78, 0xd4, 0x02, 0x68, 0xa1, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_160 = { .name = "ecdh_brainpoolp224r1_160", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_160_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_160_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_160_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 161 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 161 for ECDH, tcId is 162 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_161_peerpubkey[] = { 0x15, 0x29, 0x51, 0x6a, 0x4b, 0x8d, 0x56, 0xbb, 0xe2, 0x2e, 0x15, 0xd9, 0xc8, 0x7d, 0x58, 0xfe, 0x6e, 0x4d, 0x89, 0xd9, 0xb5, 0xad, 0x0d, 0x0c, 0x0c, 0x80, 0x3c, 0xd3, 0x0f, 0xe7, 0x0f, 0x94, 0x9c, 0x6a, 0xad, 0x01, 0xd2, 0xe5, 0x5a, 0xb8, 0xdd, 0x46, 0x61, 0x7d, 0xba, 0xe8, 0x84, 0xa7, 0x7a, 0x46, 0x9f, 0x71, 0xe5, 0x84, 0x01, 0x91, }; static const unsigned char ecdh_brainpoolp224r1_161_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_161_sharedsecret[] = { 0x38, 0x50, 0xaa, 0x20, 0x4a, 0xf0, 0x4e, 0xc9, 0xc0, 0x71, 0xff, 0x53, 0xd6, 0x55, 0x00, 0x21, 0xba, 0x55, 0xb9, 0xdb, 0x69, 0xa9, 0x22, 0x7c, 0xd0, 0xdd, 0xbd, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_161 = { .name = "ecdh_brainpoolp224r1_161", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_161_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_161_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_161_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 162 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 162 for ECDH, tcId is 163 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_162_peerpubkey[] = { 0x1a, 0xcb, 0x03, 0xe1, 0xfc, 0x18, 0x05, 0x33, 0xc5, 0xec, 0x61, 0x41, 0x10, 0x03, 0x3d, 0x50, 0x13, 0xcb, 0xb2, 0x81, 0x26, 0x7a, 0x2e, 0xe5, 0xd8, 0x6f, 0x97, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_162_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_162_sharedsecret[] = { 0x2a, 0x7b, 0x5c, 0x94, 0x2e, 0xca, 0x0c, 0xf9, 0xb5, 0x35, 0x92, 0xad, 0xfb, 0x04, 0xe2, 0x8c, 0x02, 0x53, 0xd1, 0x77, 0x39, 0x45, 0x6b, 0x83, 0x40, 0xa4, 0xa5, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_162 = { .name = "ecdh_brainpoolp224r1_162", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_162_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_162_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_162_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 163 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 163 for ECDH, tcId is 164 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_163_peerpubkey[] = { 0x74, 0x0a, 0xca, 0x1c, 0xfd, 0x94, 0x17, 0x5d, 0x2e, 0x4a, 0x37, 0x40, 0x02, 0x4b, 0x24, 0x56, 0xb1, 0x04, 0x6f, 0x4d, 0xc6, 0xcd, 0x1c, 0x55, 0x8d, 0x4e, 0x04, 0x40, 0x35, 0x50, 0x4f, 0xb2, 0x9b, 0xbf, 0x39, 0xf2, 0x68, 0xd6, 0x74, 0xec, 0xbc, 0x0d, 0xe9, 0x17, 0x05, 0x14, 0x3a, 0x98, 0x0a, 0xda, 0x03, 0x48, 0xbc, 0xfe, 0xeb, 0xce, }; static const unsigned char ecdh_brainpoolp224r1_163_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_163_sharedsecret[] = { 0x9d, 0x58, 0xa8, 0x91, 0x6b, 0x54, 0x40, 0x02, 0x44, 0xf2, 0x48, 0x1e, 0xc4, 0x96, 0x05, 0x3c, 0x3c, 0x31, 0x7a, 0x39, 0xb4, 0x1a, 0xb1, 0x83, 0x04, 0x2c, 0x4c, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_163 = { .name = "ecdh_brainpoolp224r1_163", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_163_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_163_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_163_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 164 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 164 for ECDH, tcId is 165 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_164_peerpubkey[] = { 0xab, 0x71, 0xfe, 0xf8, 0x0b, 0xe9, 0x21, 0x2a, 0xcc, 0x31, 0xba, 0x64, 0x45, 0xf0, 0xcc, 0xf1, 0x87, 0xb4, 0x51, 0x00, 0x10, 0x74, 0x20, 0x4d, 0x0e, 0xb4, 0xe4, 0x89, 0x9e, 0x2c, 0xf4, 0x6c, 0x2a, 0xbc, 0x91, 0x12, 0xf7, 0x82, 0x8e, 0x3d, 0x9d, 0xb7, 0x61, 0x5d, 0x47, 0x50, 0x0d, 0x17, 0xce, 0x78, 0x06, 0x02, 0xf0, 0x81, 0xcf, 0xb0, }; static const unsigned char ecdh_brainpoolp224r1_164_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_164_sharedsecret[] = { 0xac, 0x90, 0x8f, 0xde, 0xf8, 0x45, 0xc2, 0x24, 0xb3, 0xd9, 0xd3, 0xa3, 0x55, 0xee, 0x62, 0x77, 0x26, 0x30, 0xe7, 0x2d, 0xe9, 0x78, 0x5a, 0x6f, 0x0d, 0x7f, 0x6c, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_164 = { .name = "ecdh_brainpoolp224r1_164", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_164_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_164_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_164_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 165 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 165 for ECDH, tcId is 166 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_165_peerpubkey[] = { 0xca, 0x25, 0x61, 0xa8, 0x5e, 0x51, 0xb1, 0xbd, 0x76, 0x2a, 0x17, 0x45, 0xaf, 0x50, 0x67, 0xfe, 0xfc, 0x93, 0x27, 0xd2, 0x2f, 0x5c, 0x0b, 0xc3, 0x41, 0x7c, 0xe7, 0x32, 0x50, 0x26, 0x7f, 0x15, 0x85, 0x95, 0xe9, 0x16, 0x3b, 0xb4, 0x3c, 0xa7, 0xdb, 0x51, 0x52, 0xab, 0x3d, 0x63, 0x7b, 0x88, 0x56, 0xbe, 0x18, 0x05, 0xc5, 0x0a, 0x14, 0x56, }; static const unsigned char ecdh_brainpoolp224r1_165_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_165_sharedsecret[] = { 0x31, 0xba, 0xda, 0xa6, 0xd2, 0x6e, 0x46, 0xb6, 0xd0, 0xee, 0x47, 0x37, 0x09, 0xb6, 0x01, 0x44, 0x86, 0xa9, 0x05, 0xf5, 0xbd, 0x9a, 0xe3, 0x33, 0x3f, 0xd4, 0x2b, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_165 = { .name = "ecdh_brainpoolp224r1_165", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_165_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_165_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_165_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 166 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 166 for ECDH, tcId is 167 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_166_peerpubkey[] = { 0x0c, 0x97, 0xa6, 0xdc, 0x6b, 0xf9, 0x5b, 0x28, 0xbe, 0x23, 0xab, 0x76, 0xdf, 0x79, 0x12, 0x07, 0xa0, 0xc7, 0x3e, 0x16, 0xf8, 0x07, 0xb5, 0x86, 0x90, 0xe9, 0xb7, 0xd3, 0xca, 0x95, 0x7c, 0x82, 0xc3, 0xaf, 0x89, 0x82, 0x29, 0xf9, 0x45, 0x4a, 0xba, 0x3f, 0x09, 0xcc, 0xbd, 0xab, 0x9c, 0xf5, 0x35, 0x4a, 0x19, 0x5f, 0x98, 0x7d, 0x72, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_166_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_166_sharedsecret[] = { 0x3d, 0x79, 0x44, 0xc1, 0x73, 0xc2, 0x1b, 0x73, 0x73, 0xc7, 0x5a, 0x7f, 0x02, 0x69, 0xfc, 0x85, 0x93, 0x73, 0xca, 0x3d, 0x4c, 0x2b, 0x66, 0x78, 0x92, 0x26, 0xb8, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_166 = { .name = "ecdh_brainpoolp224r1_166", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_166_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_166_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_166_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 167 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 167 for ECDH, tcId is 168 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_167_peerpubkey[] = { 0x9b, 0xdb, 0xe2, 0x85, 0xb7, 0xb7, 0x80, 0x81, 0xe4, 0xfb, 0xc5, 0xbc, 0x94, 0x5e, 0x91, 0x07, 0xda, 0xbf, 0x41, 0xf8, 0xa1, 0x80, 0x99, 0x46, 0xe6, 0xbc, 0x0d, 0x60, 0x1d, 0x0b, 0xbc, 0x8c, 0xea, 0xc8, 0x53, 0xd0, 0x77, 0xc7, 0x4b, 0x4e, 0x5f, 0x51, 0xff, 0x13, 0x44, 0xcf, 0xc0, 0x9f, 0x99, 0xa2, 0x10, 0x9e, 0x0c, 0xa4, 0xb0, 0x2e, }; static const unsigned char ecdh_brainpoolp224r1_167_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_167_sharedsecret[] = { 0x1a, 0x7c, 0x13, 0x1a, 0xde, 0x48, 0xd1, 0xf4, 0x72, 0x8f, 0x9b, 0x32, 0xca, 0x00, 0x64, 0xe2, 0xd0, 0xe3, 0x12, 0xec, 0x89, 0x1b, 0xa5, 0xe6, 0xf2, 0x7b, 0x5b, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_167 = { .name = "ecdh_brainpoolp224r1_167", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_167_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_167_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_167_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 168 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 168 for ECDH, tcId is 169 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_168_peerpubkey[] = { 0x5e, 0xd5, 0x76, 0xb5, 0xb8, 0xdc, 0xbe, 0xbb, 0x8b, 0x4a, 0x7a, 0x7b, 0xdd, 0x91, 0x5d, 0xd6, 0x27, 0xdb, 0x97, 0x54, 0xda, 0x0f, 0x6c, 0xa7, 0x26, 0xd0, 0x32, 0x9f, 0xa3, 0xc1, 0xd9, 0x32, 0xbc, 0x1b, 0x7b, 0x93, 0xf6, 0xf9, 0xf5, 0xfe, 0x90, 0xab, 0xaa, 0xf8, 0x13, 0x02, 0x10, 0x42, 0x87, 0x13, 0x75, 0xb1, 0xf9, 0xa3, 0xda, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_168_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_168_sharedsecret[] = { 0x0b, 0xf5, 0x62, 0xae, 0x39, 0xec, 0xcd, 0xdf, 0x8c, 0x39, 0xeb, 0xfb, 0x57, 0x4b, 0x4b, 0x9f, 0x33, 0x7d, 0x7a, 0xad, 0xc6, 0xec, 0x21, 0x50, 0x87, 0x9b, 0xf2, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_168 = { .name = "ecdh_brainpoolp224r1_168", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_168_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_168_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_168_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 169 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 169 for ECDH, tcId is 170 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_169_peerpubkey[] = { 0x05, 0xc1, 0xd0, 0xea, 0xd6, 0xc2, 0x30, 0xfb, 0xb1, 0x29, 0x16, 0x8a, 0x49, 0x03, 0xe0, 0xe3, 0xe0, 0x95, 0x31, 0xfe, 0x3a, 0x0d, 0xd5, 0xae, 0xbf, 0x4c, 0x5c, 0xd9, 0xc5, 0xd3, 0xdc, 0x25, 0x8d, 0xa8, 0x65, 0xb8, 0xc8, 0x3f, 0x1d, 0x12, 0x70, 0x8a, 0x19, 0x5a, 0x3f, 0xd6, 0xdc, 0xd7, 0xf7, 0xde, 0x11, 0x2f, 0x45, 0x67, 0xc1, 0x72, }; static const unsigned char ecdh_brainpoolp224r1_169_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_169_sharedsecret[] = { 0x1d, 0xc5, 0x41, 0xa5, 0x72, 0xc2, 0x39, 0x9a, 0x88, 0xe2, 0x99, 0xac, 0x27, 0x5b, 0xe1, 0x60, 0x90, 0x46, 0x67, 0xda, 0xec, 0x2b, 0xe4, 0x2a, 0xe0, 0x7b, 0xe0, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_169 = { .name = "ecdh_brainpoolp224r1_169", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_169_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_169_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_169_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 170 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 170 for ECDH, tcId is 171 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_170_peerpubkey[] = { 0x08, 0xaa, 0x9e, 0x35, 0x01, 0xd9, 0xf7, 0xe4, 0x34, 0xc7, 0xe4, 0x78, 0x0f, 0x51, 0xc9, 0xc3, 0xb5, 0x7f, 0x59, 0x87, 0xd8, 0x86, 0x71, 0xb6, 0x59, 0x4a, 0xa0, 0x4a, 0x5e, 0xc0, 0x33, 0xd6, 0x37, 0x02, 0x66, 0x9a, 0x3d, 0x82, 0x23, 0x46, 0x77, 0xbd, 0x01, 0x68, 0x48, 0xef, 0x3f, 0x70, 0x92, 0x12, 0xf1, 0xfa, 0x3a, 0x5f, 0x85, 0x3f, }; static const unsigned char ecdh_brainpoolp224r1_170_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_170_sharedsecret[] = { 0x8c, 0xb6, 0x2e, 0x42, 0x4b, 0x1a, 0x00, 0x76, 0xf0, 0xa5, 0xf2, 0xf1, 0x0f, 0x81, 0x69, 0xc4, 0xe4, 0x12, 0x40, 0xd9, 0xc7, 0x38, 0x62, 0x93, 0x8e, 0x2c, 0x47, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_170 = { .name = "ecdh_brainpoolp224r1_170", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_170_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_170_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_170_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 171 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 171 for ECDH, tcId is 172 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_171_peerpubkey[] = { 0x5c, 0x42, 0x38, 0x03, 0x04, 0x3c, 0x02, 0x9b, 0x9e, 0xd8, 0xc5, 0xad, 0xfa, 0x21, 0xbd, 0x1a, 0x5d, 0x1f, 0x1b, 0xb1, 0xfb, 0x63, 0x6a, 0xbe, 0xfa, 0x84, 0x28, 0xd4, 0xcc, 0x77, 0x6b, 0x7d, 0x30, 0xa6, 0x9d, 0xa3, 0xbc, 0x52, 0x5d, 0xc4, 0xc1, 0xda, 0xf1, 0x42, 0xd3, 0xa0, 0xec, 0x83, 0x86, 0x6f, 0x9f, 0x44, 0x94, 0x53, 0x42, 0xd2, }; static const unsigned char ecdh_brainpoolp224r1_171_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_171_sharedsecret[] = { 0x1f, 0x96, 0x51, 0x5e, 0x57, 0x79, 0x87, 0x2b, 0x3c, 0x6c, 0xb9, 0x6c, 0xf6, 0x39, 0x84, 0xea, 0xb3, 0x55, 0xf4, 0x9a, 0x59, 0x32, 0xda, 0x49, 0x2e, 0x79, 0xda, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_171 = { .name = "ecdh_brainpoolp224r1_171", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_171_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_171_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_171_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 172 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 172 for ECDH, tcId is 173 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_172_peerpubkey[] = { 0xb4, 0x89, 0x31, 0x24, 0xf9, 0xb4, 0xe5, 0x42, 0x7c, 0x28, 0x14, 0x27, 0x42, 0x4c, 0xad, 0xf1, 0x9c, 0x6c, 0x3f, 0xd4, 0xad, 0xb0, 0x98, 0xbb, 0x4c, 0x1d, 0x87, 0x9a, 0x67, 0x45, 0x29, 0x24, 0x3a, 0x31, 0x7d, 0x77, 0x59, 0xf0, 0x7d, 0x57, 0xfe, 0x59, 0xfd, 0x77, 0x16, 0x72, 0xdf, 0x55, 0xb9, 0x9c, 0x02, 0xf5, 0x7e, 0x20, 0x65, 0x81, }; static const unsigned char ecdh_brainpoolp224r1_172_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_172_sharedsecret[] = { 0xb1, 0xf8, 0xf1, 0x23, 0x3f, 0xdb, 0x86, 0xdb, 0xb5, 0xfa, 0x26, 0x58, 0x24, 0xba, 0x22, 0xd3, 0xfa, 0xe7, 0xeb, 0xd0, 0x92, 0x4e, 0xd5, 0x29, 0x0e, 0x07, 0x08, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_172 = { .name = "ecdh_brainpoolp224r1_172", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_172_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_172_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_172_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 173 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 173 for ECDH, tcId is 174 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_173_peerpubkey[] = { 0x2e, 0x4e, 0x59, 0x6b, 0x55, 0xa2, 0x60, 0x34, 0xf0, 0x31, 0x85, 0xae, 0x5b, 0xc9, 0xd2, 0x44, 0x63, 0xc2, 0x3d, 0xa0, 0xb1, 0xe3, 0xf7, 0xd9, 0xc3, 0x71, 0x4e, 0x9b, 0x4a, 0xe2, 0x87, 0xc9, 0x34, 0x07, 0xed, 0x83, 0x0b, 0x28, 0xfb, 0x7c, 0x35, 0x28, 0xad, 0x4f, 0x4d, 0xb0, 0x3f, 0x63, 0xc4, 0x5d, 0x2b, 0x67, 0x24, 0xde, 0x41, 0x7b, }; static const unsigned char ecdh_brainpoolp224r1_173_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_173_sharedsecret[] = { 0xb0, 0x96, 0x68, 0x1e, 0xfa, 0x8a, 0x6a, 0xc6, 0xc9, 0x74, 0x48, 0x1f, 0x7a, 0xf9, 0xce, 0xe1, 0x98, 0xb1, 0x25, 0x51, 0x9c, 0xe3, 0x2c, 0xca, 0x11, 0x71, 0x04, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_173 = { .name = "ecdh_brainpoolp224r1_173", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_173_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_173_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_173_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 174 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 174 for ECDH, tcId is 175 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_174_peerpubkey[] = { 0xbf, 0x51, 0x35, 0x87, 0x53, 0x67, 0xec, 0xf5, 0x27, 0x91, 0x42, 0x2d, 0x55, 0x45, 0x14, 0xdc, 0x91, 0x14, 0x9f, 0xc9, 0x20, 0xa9, 0xb9, 0x0e, 0xea, 0xab, 0xd0, 0xfb, 0x02, 0x5c, 0xcf, 0xcd, 0x76, 0x23, 0xd7, 0xc1, 0x43, 0xca, 0xee, 0x1a, 0x39, 0xb8, 0x82, 0x6a, 0xe5, 0x3d, 0xee, 0xd7, 0xcd, 0x9a, 0x38, 0x99, 0xbf, 0xc1, 0x42, 0xbf, }; static const unsigned char ecdh_brainpoolp224r1_174_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_174_sharedsecret[] = { 0xc0, 0xb6, 0x9e, 0xb2, 0x8b, 0x0b, 0x94, 0x03, 0x6a, 0x11, 0xc0, 0xe8, 0x83, 0x1c, 0x20, 0xa0, 0x0c, 0x85, 0x87, 0x94, 0x14, 0xd4, 0x03, 0x0e, 0x16, 0x92, 0xaf, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_174 = { .name = "ecdh_brainpoolp224r1_174", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_174_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_174_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_174_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 175 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 175 for ECDH, tcId is 176 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_175_peerpubkey[] = { 0x9a, 0x80, 0x4a, 0x2f, 0xe4, 0xeb, 0xff, 0x17, 0xba, 0x1b, 0x03, 0x13, 0x80, 0xd7, 0xdc, 0xda, 0x56, 0x70, 0x78, 0xbd, 0x64, 0xef, 0xdd, 0x8c, 0xf7, 0x85, 0x84, 0xde, 0xa1, 0xdb, 0xca, 0x1b, 0xd9, 0x6a, 0x96, 0x35, 0x33, 0x2d, 0x73, 0x1d, 0xbc, 0x79, 0xb6, 0x14, 0xed, 0x1a, 0x73, 0x25, 0x59, 0xa9, 0xd3, 0x85, 0x17, 0xdc, 0x4a, 0xdc, }; static const unsigned char ecdh_brainpoolp224r1_175_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_175_sharedsecret[] = { 0x40, 0x73, 0xd9, 0xe0, 0xc2, 0x36, 0x57, 0xc2, 0x09, 0x0c, 0x59, 0x8b, 0x56, 0x39, 0x01, 0xaf, 0xf8, 0x7d, 0x68, 0x43, 0x5e, 0x2e, 0xf3, 0xbf, 0xd5, 0x32, 0xe8, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_175 = { .name = "ecdh_brainpoolp224r1_175", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_175_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_175_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_175_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 176 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 176 for ECDH, tcId is 177 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_176_peerpubkey[] = { 0x30, 0x05, 0xca, 0x1f, 0xb7, 0xbe, 0x5f, 0xc9, 0x7a, 0xf4, 0x37, 0xfb, 0x02, 0xa1, 0xec, 0x89, 0x4a, 0x1d, 0x3d, 0xfa, 0x62, 0x80, 0xd4, 0xaa, 0x29, 0x2d, 0xbd, 0xcb, 0x3c, 0xbd, 0x6b, 0x5f, 0xae, 0x91, 0x26, 0x4d, 0xe5, 0x7f, 0x6b, 0x52, 0xe6, 0xf2, 0x8f, 0x88, 0x58, 0xb8, 0x33, 0x2e, 0x70, 0x9b, 0x02, 0xf2, 0xcc, 0xcf, 0xa7, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_176_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_176_sharedsecret[] = { 0x57, 0xd3, 0x8f, 0xcd, 0x4a, 0xda, 0xb4, 0x59, 0xf8, 0x40, 0x07, 0x66, 0x77, 0x19, 0x49, 0xef, 0x04, 0x8e, 0x75, 0xc5, 0x3d, 0x94, 0xf5, 0xad, 0xa3, 0x5d, 0xeb, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_176 = { .name = "ecdh_brainpoolp224r1_176", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_176_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_176_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_176_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 177 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 177 for ECDH, tcId is 178 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_177_peerpubkey[] = { 0x4d, 0x49, 0xe3, 0x8e, 0x22, 0xd8, 0x62, 0x27, 0x5f, 0x39, 0x45, 0x49, 0x2f, 0x7b, 0xf2, 0x57, 0x7b, 0x86, 0xa4, 0xac, 0x31, 0xfc, 0x0c, 0xb2, 0xca, 0x45, 0x5e, 0x67, 0x9a, 0xe1, 0x23, 0x9e, 0xf7, 0x51, 0xac, 0x0f, 0x3a, 0x2f, 0xee, 0xf2, 0x8c, 0xd7, 0x52, 0xe1, 0x33, 0xfd, 0xde, 0x2c, 0x29, 0xb9, 0x5b, 0x8c, 0x5e, 0x62, 0x57, 0x07, }; static const unsigned char ecdh_brainpoolp224r1_177_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_177_sharedsecret[] = { 0x51, 0xb5, 0x8b, 0x59, 0x78, 0x26, 0x79, 0x99, 0x99, 0x77, 0x34, 0x4a, 0x4d, 0xf8, 0xf2, 0x51, 0x4b, 0x7c, 0x80, 0xe1, 0x5a, 0x81, 0x90, 0xf2, 0x95, 0x33, 0x6a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_177 = { .name = "ecdh_brainpoolp224r1_177", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_177_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_177_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_177_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 178 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 178 for ECDH, tcId is 179 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_178_peerpubkey[] = { 0x11, 0x90, 0x74, 0xf3, 0xbb, 0xd0, 0xda, 0x37, 0x14, 0x7a, 0x91, 0xd6, 0x5d, 0xd2, 0x5b, 0xfd, 0xc8, 0x1d, 0x65, 0xb3, 0xb1, 0x85, 0x7e, 0x81, 0x27, 0x7c, 0x81, 0xb1, 0xa7, 0xc8, 0xb9, 0x17, 0xd3, 0x92, 0x3f, 0xdd, 0x1f, 0xd2, 0x4e, 0x07, 0xaa, 0x79, 0x3a, 0xe8, 0x00, 0x6c, 0xbc, 0x11, 0x28, 0x1a, 0x35, 0x05, 0xc4, 0x50, 0x55, 0x43, }; static const unsigned char ecdh_brainpoolp224r1_178_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_178_sharedsecret[] = { 0x8b, 0x88, 0x18, 0x45, 0x6c, 0x96, 0x5a, 0xe7, 0x48, 0x26, 0xb2, 0x16, 0x54, 0xac, 0x2c, 0x11, 0xbf, 0x71, 0xb8, 0xe1, 0x21, 0x26, 0xf4, 0xa3, 0xfe, 0x1e, 0x65, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_178 = { .name = "ecdh_brainpoolp224r1_178", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_178_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_178_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_178_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 179 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 179 for ECDH, tcId is 180 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_179_peerpubkey[] = { 0xba, 0x78, 0xa1, 0xd6, 0xca, 0x79, 0xc6, 0x00, 0x54, 0xd9, 0xd2, 0x29, 0x54, 0x13, 0x94, 0x40, 0xff, 0x81, 0x8d, 0xdb, 0xcc, 0x6e, 0x45, 0x6e, 0x81, 0x34, 0x2c, 0x19, 0x0e, 0x79, 0xa8, 0x7a, 0xf7, 0xfd, 0x44, 0xfd, 0xe9, 0x03, 0x6e, 0xa8, 0x0c, 0xa8, 0x1d, 0x45, 0x4c, 0xf1, 0x52, 0x2a, 0x5e, 0x20, 0x6e, 0x37, 0x58, 0xff, 0x98, 0xd1, }; static const unsigned char ecdh_brainpoolp224r1_179_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_179_sharedsecret[] = { 0x9c, 0x4e, 0xe8, 0xa0, 0x4a, 0x16, 0x84, 0x96, 0x33, 0x8c, 0xac, 0x9c, 0x9e, 0xaf, 0x5b, 0x89, 0xb1, 0xab, 0x58, 0xdc, 0xa4, 0x71, 0x7d, 0xac, 0xf9, 0x73, 0x05, 0x13, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_179 = { .name = "ecdh_brainpoolp224r1_179", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_179_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_179_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_179_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 180 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 180 for ECDH, tcId is 181 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_180_peerpubkey[] = { 0x64, 0x17, 0xeb, 0xfe, 0xae, 0xb9, 0x35, 0x20, 0xfb, 0x72, 0x21, 0xc9, 0xe5, 0xe6, 0x15, 0xea, 0x14, 0x90, 0x70, 0x34, 0x68, 0xa7, 0x3b, 0x25, 0xe5, 0x9e, 0xed, 0xea, 0xa5, 0xd3, 0x20, 0x91, 0xc7, 0x83, 0x9c, 0x71, 0xfd, 0xb5, 0x6a, 0x56, 0xff, 0xbc, 0x82, 0xf6, 0x60, 0x6b, 0x5b, 0x43, 0x0a, 0x28, 0xb0, 0xcc, 0xfc, 0xcd, 0xe2, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_180_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_180_sharedsecret[] = { 0x77, 0x3f, 0x1e, 0xc8, 0x81, 0x1e, 0x4f, 0x3b, 0x50, 0x66, 0x95, 0x9d, 0xd1, 0xcb, 0x00, 0x80, 0x51, 0x73, 0xb5, 0x31, 0x21, 0xdb, 0x92, 0xe2, 0xda, 0x12, 0x96, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_180 = { .name = "ecdh_brainpoolp224r1_180", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_180_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_180_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_180_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 181 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 181 for ECDH, tcId is 182 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_181_peerpubkey[] = { 0x98, 0xe9, 0xa6, 0x1e, 0x78, 0xe0, 0xf4, 0x55, 0xd9, 0x4c, 0x8d, 0x2c, 0xa0, 0x80, 0x8a, 0x90, 0x1e, 0x7d, 0x3d, 0x5d, 0x1c, 0x0d, 0x4c, 0xf7, 0x51, 0x67, 0x88, 0x6b, 0xd1, 0x4d, 0x9c, 0xb5, 0xda, 0x09, 0x08, 0x88, 0xcb, 0xcc, 0x68, 0x81, 0x26, 0x49, 0x47, 0xc9, 0xec, 0x49, 0x8c, 0x21, 0x69, 0x4e, 0xdd, 0x9a, 0xa5, 0x03, 0x0d, 0x17, }; static const unsigned char ecdh_brainpoolp224r1_181_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_181_sharedsecret[] = { 0x61, 0xcc, 0x1f, 0x8f, 0x65, 0xf6, 0x73, 0xac, 0xb0, 0xfe, 0xf6, 0x56, 0xcc, 0xfd, 0xfb, 0xb3, 0x94, 0x85, 0x11, 0x43, 0xbe, 0x51, 0xb1, 0x1c, 0xd8, 0xf8, 0x7b, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_181 = { .name = "ecdh_brainpoolp224r1_181", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_181_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_181_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_181_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 182 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 182 for ECDH, tcId is 183 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_182_peerpubkey[] = { 0xbf, 0xd2, 0x9a, 0xce, 0x14, 0xfe, 0x8a, 0x8c, 0x33, 0xd6, 0xe0, 0x8d, 0x64, 0xe2, 0x01, 0x39, 0x01, 0x78, 0xeb, 0xf2, 0x92, 0x02, 0x33, 0x5c, 0xf2, 0xa6, 0xc2, 0x44, 0x3e, 0xc5, 0x5a, 0xd0, 0x4e, 0x39, 0xcc, 0x37, 0x1a, 0x7d, 0x04, 0x08, 0x58, 0xeb, 0xef, 0xff, 0xa9, 0x1f, 0xc5, 0xc9, 0xe1, 0x46, 0x9e, 0xd1, 0xaf, 0x50, 0x01, 0xda, }; static const unsigned char ecdh_brainpoolp224r1_182_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_182_sharedsecret[] = { 0xa0, 0xc6, 0xf0, 0x0f, 0xbf, 0x27, 0x32, 0x66, 0xd8, 0x82, 0x47, 0xcb, 0x2e, 0xd8, 0xe2, 0x0e, 0xb7, 0xb4, 0x78, 0xc7, 0x13, 0x0f, 0xd5, 0xc1, 0x50, 0x47, 0x5e, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_182 = { .name = "ecdh_brainpoolp224r1_182", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_182_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_182_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_182_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 183 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 183 for ECDH, tcId is 184 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_183_peerpubkey[] = { 0xaa, 0x39, 0x53, 0x32, 0xc5, 0xea, 0x3a, 0x42, 0x41, 0x72, 0x69, 0xfe, 0x56, 0xc9, 0x66, 0x4e, 0xf5, 0x35, 0x40, 0x91, 0x0f, 0xca, 0x0f, 0x10, 0x1e, 0x7b, 0x0c, 0x17, 0x81, 0xf3, 0x66, 0xea, 0x70, 0xf3, 0xd6, 0x93, 0x89, 0x47, 0x1f, 0xa5, 0x08, 0x85, 0x87, 0x46, 0x5b, 0xc4, 0x07, 0x5d, 0x96, 0x15, 0xf5, 0xa2, 0x6f, 0xab, 0x79, 0xe2, }; static const unsigned char ecdh_brainpoolp224r1_183_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_183_sharedsecret[] = { 0x2b, 0xba, 0x11, 0x30, 0x34, 0x11, 0x62, 0xd6, 0x42, 0xd7, 0x1a, 0xc1, 0xe8, 0xf1, 0x9e, 0xc7, 0x3e, 0x95, 0x76, 0xc0, 0x74, 0x3e, 0x71, 0x6d, 0x6d, 0x8e, 0xcf, 0x4c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_183 = { .name = "ecdh_brainpoolp224r1_183", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_183_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_183_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_183_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 184 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 184 for ECDH, tcId is 185 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_184_peerpubkey[] = { 0x8e, 0x2d, 0x4a, 0xb2, 0x19, 0x9c, 0x68, 0x77, 0xcf, 0xb8, 0x16, 0x28, 0x07, 0x25, 0xd4, 0xf7, 0x52, 0xa9, 0x69, 0x23, 0xe8, 0x24, 0x99, 0xce, 0xb1, 0xf4, 0x64, 0x1c, 0xae, 0x4a, 0x30, 0x33, 0x44, 0x71, 0xc1, 0xd2, 0xc9, 0xab, 0xe9, 0x29, 0xc7, 0x26, 0x4a, 0x85, 0xb4, 0xa5, 0x64, 0xca, 0xfc, 0x5e, 0xd8, 0x8a, 0x78, 0x70, 0xd9, 0x02, }; static const unsigned char ecdh_brainpoolp224r1_184_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_184_sharedsecret[] = { 0x0d, 0xe0, 0x3d, 0x60, 0x40, 0x4a, 0x29, 0xba, 0x58, 0xd9, 0xcf, 0x07, 0x99, 0x0b, 0x0d, 0x97, 0x6f, 0x36, 0x42, 0x13, 0x25, 0x22, 0x29, 0xd3, 0x6f, 0x89, 0x4c, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_184 = { .name = "ecdh_brainpoolp224r1_184", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_184_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_184_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_184_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 185 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 185 for ECDH, tcId is 186 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_185_peerpubkey[] = { 0x84, 0x29, 0x6c, 0xb5, 0x81, 0x2a, 0xb2, 0x20, 0xa2, 0xe0, 0x02, 0x7f, 0xad, 0xce, 0x53, 0x6c, 0xb4, 0xbc, 0x89, 0xcd, 0xba, 0xa4, 0x87, 0xae, 0x7f, 0xac, 0x2f, 0x21, 0x1c, 0xb9, 0xd2, 0xc3, 0x79, 0x68, 0xdb, 0x33, 0x29, 0xaf, 0x5b, 0x93, 0x2d, 0x1c, 0x0a, 0x16, 0xfd, 0x27, 0x4a, 0xe9, 0x88, 0xff, 0xec, 0xa1, 0xb4, 0x7c, 0x9b, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_185_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_185_sharedsecret[] = { 0x94, 0x4e, 0xd6, 0x30, 0x56, 0xf7, 0x91, 0x3e, 0xb0, 0xb1, 0x75, 0x97, 0x77, 0xbc, 0xeb, 0x7a, 0xfe, 0x56, 0xac, 0x7f, 0x9d, 0x50, 0x72, 0x65, 0x70, 0xfc, 0x1f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_185 = { .name = "ecdh_brainpoolp224r1_185", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_185_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_185_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_185_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 186 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 186 for ECDH, tcId is 187 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_186_peerpubkey[] = { 0xc4, 0x9d, 0x69, 0x86, 0x1a, 0x4b, 0x47, 0xd3, 0xe7, 0xed, 0x4d, 0x23, 0x71, 0xdf, 0x30, 0xcf, 0x48, 0x12, 0xa9, 0xe6, 0xb4, 0xe0, 0xff, 0x48, 0x86, 0x66, 0x8a, 0x0a, 0x93, 0x64, 0xc0, 0x64, 0x94, 0xe4, 0x24, 0x45, 0xfb, 0x6e, 0xeb, 0x7c, 0xb9, 0x00, 0xbb, 0xe3, 0x6e, 0x10, 0x68, 0xc0, 0x4f, 0x67, 0x10, 0xf0, 0x79, 0xde, 0x96, 0x04, }; static const unsigned char ecdh_brainpoolp224r1_186_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_186_sharedsecret[] = { 0x99, 0x83, 0xbe, 0x0a, 0x5d, 0xbb, 0x6d, 0x03, 0xba, 0xe2, 0x16, 0x2d, 0x6c, 0x0a, 0x11, 0xc7, 0x0f, 0xab, 0xc1, 0x38, 0x9b, 0x4d, 0x96, 0xb0, 0x2d, 0xbb, 0x53, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_186 = { .name = "ecdh_brainpoolp224r1_186", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_186_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_186_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_186_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 187 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 187 for ECDH, tcId is 188 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_187_peerpubkey[] = { 0x71, 0x35, 0xdd, 0x6d, 0x57, 0xbb, 0x9e, 0xee, 0x90, 0x10, 0xc0, 0xd4, 0xf0, 0x37, 0x15, 0x76, 0x11, 0x18, 0xbf, 0x78, 0x24, 0x43, 0xcf, 0xf5, 0x43, 0xdf, 0x91, 0xe9, 0x42, 0x60, 0x89, 0x75, 0xec, 0xb6, 0xab, 0xdd, 0x6f, 0xe2, 0xda, 0xdc, 0x1f, 0x3b, 0xd0, 0x89, 0xfd, 0x33, 0x01, 0x81, 0x66, 0x89, 0xaa, 0xb9, 0xf1, 0x6c, 0x2d, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_187_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_187_sharedsecret[] = { 0xbb, 0xad, 0xe7, 0x03, 0x20, 0x14, 0xc4, 0x37, 0x37, 0x25, 0xbb, 0xcb, 0x8a, 0x02, 0xdd, 0x04, 0x29, 0x30, 0xd3, 0xd6, 0x82, 0xdb, 0x97, 0x44, 0x9e, 0xca, 0x67, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_187 = { .name = "ecdh_brainpoolp224r1_187", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_187_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_187_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_187_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 188 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 188 for ECDH, tcId is 189 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_188_peerpubkey[] = { 0x00, 0xe3, 0xee, 0x25, 0x95, 0xaf, 0x45, 0x42, 0x5d, 0x34, 0x67, 0xd0, 0x51, 0xb0, 0xaf, 0xe0, 0xc9, 0x94, 0x1e, 0x46, 0xce, 0xae, 0xc4, 0x86, 0x5a, 0x74, 0x79, 0x0a, 0xd0, 0x1e, 0xa4, 0xe7, 0xa2, 0x90, 0xb3, 0x31, 0xa1, 0x3c, 0x9b, 0xf4, 0x1c, 0xa1, 0x5e, 0x94, 0x4a, 0x0d, 0x64, 0x33, 0x3c, 0xfa, 0x99, 0x85, 0x19, 0x8e, 0x4f, 0x74, }; static const unsigned char ecdh_brainpoolp224r1_188_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_188_sharedsecret[] = { 0x9d, 0x40, 0x5a, 0x66, 0x23, 0xed, 0xf4, 0xc7, 0x73, 0x93, 0xbe, 0xd7, 0xc7, 0x0d, 0xd0, 0x5d, 0x54, 0x55, 0x17, 0xb1, 0x03, 0x22, 0xf3, 0x0f, 0x2c, 0x5a, 0xda, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_188 = { .name = "ecdh_brainpoolp224r1_188", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_188_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_188_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_188_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 189 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 189 for ECDH, tcId is 190 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_189_peerpubkey[] = { 0x80, 0xfa, 0xf9, 0x1b, 0x92, 0x02, 0x39, 0xfd, 0x4d, 0x52, 0xb8, 0xc6, 0x14, 0xb8, 0x41, 0x3c, 0x4b, 0x2b, 0xee, 0x9e, 0x33, 0xa1, 0x47, 0x6c, 0x88, 0xda, 0x73, 0x85, 0x15, 0x28, 0xbd, 0xba, 0x58, 0x0d, 0x7d, 0x9f, 0x76, 0xab, 0x2f, 0xdd, 0x2d, 0x0b, 0x2b, 0x26, 0xac, 0x7e, 0xe5, 0xec, 0x5f, 0x11, 0xfe, 0x28, 0x10, 0xd1, 0x76, 0x0d, }; static const unsigned char ecdh_brainpoolp224r1_189_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_189_sharedsecret[] = { 0x1b, 0xe7, 0x32, 0x73, 0x14, 0xda, 0x15, 0x70, 0x36, 0x43, 0x2c, 0x30, 0x85, 0x64, 0x66, 0x2e, 0xb1, 0xc7, 0x89, 0xc2, 0xea, 0x7d, 0xe8, 0xd1, 0x97, 0x53, 0x45, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_189 = { .name = "ecdh_brainpoolp224r1_189", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_189_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_189_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_189_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 190 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 190 for ECDH, tcId is 191 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_190_peerpubkey[] = { 0x23, 0xb9, 0x0d, 0xe5, 0x43, 0xdb, 0x88, 0xa7, 0xd3, 0x72, 0x18, 0xed, 0xaf, 0xa4, 0x83, 0xe6, 0x74, 0xb1, 0xda, 0x7a, 0x50, 0x93, 0x75, 0x85, 0xd8, 0x78, 0xd2, 0x78, 0xbc, 0xc1, 0x9a, 0x89, 0x7e, 0xf4, 0x1d, 0x31, 0xb1, 0xfd, 0x8a, 0x30, 0x6a, 0x0c, 0x58, 0x24, 0x02, 0xc0, 0xe2, 0x97, 0xff, 0x7d, 0xe1, 0x63, 0x16, 0x41, 0x4a, 0x62, }; static const unsigned char ecdh_brainpoolp224r1_190_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_190_sharedsecret[] = { 0x14, 0x58, 0xc1, 0xdd, 0x00, 0xff, 0xe9, 0x8e, 0x7c, 0x04, 0x6a, 0xf8, 0x77, 0xc5, 0x0c, 0xef, 0x45, 0xdc, 0x83, 0x8b, 0xf2, 0x77, 0x4c, 0x9d, 0x8e, 0xc1, 0x7a, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_190 = { .name = "ecdh_brainpoolp224r1_190", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_190_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_190_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_190_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 191 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 191 for ECDH, tcId is 192 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_191_peerpubkey[] = { 0xb2, 0x9c, 0x46, 0x65, 0xe5, 0x50, 0xb5, 0x51, 0xea, 0x80, 0x8c, 0xc4, 0xce, 0x9c, 0x01, 0xca, 0x68, 0x56, 0x5b, 0x01, 0xb6, 0x52, 0xa7, 0x3a, 0x57, 0x9c, 0x96, 0x43, 0x2d, 0x83, 0x11, 0x16, 0x87, 0xc3, 0x93, 0xdd, 0xd8, 0x2a, 0x59, 0x67, 0xa4, 0xf6, 0x14, 0x29, 0x79, 0x88, 0x48, 0x35, 0x29, 0xeb, 0xf3, 0xe6, 0xdf, 0xdc, 0x09, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_191_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_191_sharedsecret[] = { 0xcf, 0x7b, 0x1a, 0xcc, 0x2e, 0xdb, 0x86, 0xf3, 0x03, 0x10, 0x7f, 0x03, 0x0e, 0x02, 0xea, 0xa8, 0xd8, 0x5f, 0x02, 0x1f, 0x18, 0xb9, 0x14, 0x59, 0x23, 0x83, 0xc6, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_191 = { .name = "ecdh_brainpoolp224r1_191", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_191_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_191_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_191_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 192 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 192 for ECDH, tcId is 193 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_192_peerpubkey[] = { 0x94, 0x68, 0x19, 0xd7, 0x0f, 0xd6, 0x76, 0x88, 0xb8, 0x14, 0xb7, 0xd4, 0xe5, 0xd5, 0x22, 0xfb, 0xa6, 0xdb, 0x0c, 0x6b, 0x84, 0xc7, 0x2c, 0x63, 0xc1, 0x03, 0x6e, 0xc2, 0xd4, 0x6a, 0x97, 0x4d, 0xcd, 0x8f, 0x88, 0x47, 0x24, 0x90, 0x14, 0x2e, 0xc7, 0x20, 0xcc, 0xcd, 0xe5, 0x20, 0x90, 0x69, 0x39, 0xf8, 0xed, 0x7d, 0x6f, 0x58, 0xcc, 0x61, }; static const unsigned char ecdh_brainpoolp224r1_192_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_192_sharedsecret[] = { 0xca, 0xd4, 0x13, 0x47, 0x0e, 0x79, 0x7d, 0xa5, 0x88, 0x20, 0x2c, 0xca, 0xc3, 0xc9, 0x16, 0xde, 0xdf, 0x7c, 0xa0, 0x73, 0x20, 0x49, 0xfc, 0x7e, 0xd7, 0xf2, 0xf0, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_192 = { .name = "ecdh_brainpoolp224r1_192", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_192_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_192_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_192_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 193 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 193 for ECDH, tcId is 194 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_193_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_193_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp224r1_193_sharedsecret[] = { 0x0c, 0x52, 0xcf, 0x1e, 0x5e, 0x3f, 0x3d, 0xa2, 0x1b, 0x60, 0x40, 0x64, 0x4e, 0x0e, 0x9e, 0xec, 0xa2, 0xe0, 0x20, 0xf5, 0x87, 0x2c, 0x43, 0x0c, 0xcc, 0xef, 0x8b, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_193 = { .name = "ecdh_brainpoolp224r1_193", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_193_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_193_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_193_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 194 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 194 for ECDH, tcId is 195 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_194_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_194_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_194_sharedsecret[] = { 0xba, 0x92, 0xad, 0x99, 0xf1, 0x4a, 0x0e, 0xe9, 0x15, 0xae, 0xcf, 0x77, 0x6c, 0x4f, 0xc5, 0xfd, 0xec, 0xbb, 0xc8, 0xfd, 0x8e, 0x13, 0xa7, 0x61, 0x0a, 0x44, 0xd2, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_194 = { .name = "ecdh_brainpoolp224r1_194", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_194_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_194_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_194_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 195 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 195 for ECDH, tcId is 196 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_195_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_195_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_195_sharedsecret[] = { 0x2b, 0x8d, 0xfc, 0x43, 0x33, 0x27, 0xf6, 0x65, 0xf0, 0x4f, 0x29, 0x29, 0x08, 0x44, 0x12, 0x00, 0x0f, 0x1b, 0x22, 0x49, 0xf9, 0x8b, 0x27, 0x77, 0x84, 0xb3, 0x34, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_195 = { .name = "ecdh_brainpoolp224r1_195", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_195_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_195_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_195_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 196 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 196 for ECDH, tcId is 197 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_196_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_196_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_196_sharedsecret[] = { 0xb7, 0x00, 0x58, 0x64, 0x4f, 0xf9, 0x4d, 0xea, 0x13, 0xa4, 0xf3, 0xfe, 0xa5, 0xbb, 0x80, 0x57, 0x91, 0x52, 0x09, 0x5b, 0xa9, 0xd3, 0xcf, 0x63, 0x7f, 0x93, 0x77, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_196 = { .name = "ecdh_brainpoolp224r1_196", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_196_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_196_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_196_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 197 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 197 for ECDH, tcId is 198 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_197_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_197_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_197_sharedsecret[] = { 0x27, 0xbd, 0xac, 0x60, 0xe0, 0x5b, 0xa7, 0xac, 0x0f, 0x90, 0x40, 0x50, 0x24, 0x7e, 0x65, 0x3c, 0x89, 0x6b, 0xaf, 0xd4, 0x5b, 0x50, 0xd0, 0x93, 0x85, 0x89, 0x71, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_197 = { .name = "ecdh_brainpoolp224r1_197", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_197_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_197_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_197_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 198 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 198 for ECDH, tcId is 199 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_198_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_198_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4a, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_198_sharedsecret[] = { 0x00, 0xb6, 0xb0, 0x43, 0x47, 0x12, 0x0d, 0xdc, 0x52, 0x28, 0x53, 0x0e, 0xf7, 0x07, 0x58, 0x24, 0xfb, 0xb7, 0x45, 0x94, 0x5e, 0xdd, 0x75, 0xe7, 0x3f, 0x63, 0x7a, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_198 = { .name = "ecdh_brainpoolp224r1_198", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_198_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_198_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_198_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 199 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 199 for ECDH, tcId is 200 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_199_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_199_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xce, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_199_sharedsecret[] = { 0xd5, 0xb3, 0x19, 0xd0, 0xf3, 0x14, 0x30, 0x95, 0xc6, 0xbd, 0x1a, 0xa8, 0x80, 0xc9, 0xdf, 0x6a, 0x49, 0x2c, 0xaa, 0x6d, 0x6d, 0x27, 0x5e, 0xb1, 0x04, 0xa7, 0xab, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_199 = { .name = "ecdh_brainpoolp224r1_199", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_199_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_199_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_199_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 200 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 200 for ECDH, tcId is 201 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_200_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_200_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xd6, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_200_sharedsecret[] = { 0xa0, 0xe1, 0xf7, 0xa1, 0x42, 0xaa, 0xfb, 0x08, 0x56, 0x61, 0x6d, 0x46, 0xb5, 0xf7, 0x6c, 0x22, 0x44, 0x01, 0x0c, 0x9d, 0x46, 0xce, 0xc0, 0x7a, 0xb3, 0x3b, 0xb4, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_200 = { .name = "ecdh_brainpoolp224r1_200", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_200_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_200_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_200_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 201 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 201 for ECDH, tcId is 202 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_201_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_201_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa2, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_201_sharedsecret[] = { 0x6f, 0x1b, 0xaf, 0x2e, 0xd4, 0x2e, 0x35, 0xd7, 0x1b, 0x70, 0x5f, 0x5d, 0xbf, 0xb7, 0xf5, 0x1a, 0x8a, 0xb6, 0x61, 0xbe, 0x91, 0xd8, 0xb2, 0x61, 0x47, 0x69, 0xfa, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_201 = { .name = "ecdh_brainpoolp224r1_201", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_201_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_201_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_201_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 202 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 202 for ECDH, tcId is 203 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_202_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_202_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x92, 0xdd, }; static const unsigned char ecdh_brainpoolp224r1_202_sharedsecret[] = { 0x1b, 0xe0, 0xd5, 0x9d, 0x1f, 0x0f, 0x3a, 0x74, 0x3a, 0xe1, 0x9c, 0x52, 0x46, 0x09, 0x93, 0x91, 0x09, 0x8f, 0x71, 0x44, 0x42, 0x23, 0x83, 0x1e, 0x16, 0xcf, 0xa0, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_202 = { .name = "ecdh_brainpoolp224r1_202", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_202_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_202_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_202_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 203 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 203 for ECDH, tcId is 204 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_203_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_203_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_203_sharedsecret[] = { 0x7e, 0x00, 0xa9, 0x26, 0x72, 0x43, 0xce, 0xa4, 0xba, 0x76, 0x17, 0x86, 0x0b, 0x6f, 0xcf, 0x40, 0x4e, 0x03, 0x57, 0xd1, 0x20, 0x2d, 0x8c, 0x85, 0xdc, 0x5e, 0x07, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_203 = { .name = "ecdh_brainpoolp224r1_203", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_203_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_203_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_203_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 204 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 204 for ECDH, tcId is 205 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_204_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_204_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const unsigned char ecdh_brainpoolp224r1_204_sharedsecret[] = { 0x0c, 0x52, 0xcf, 0x1e, 0x5e, 0x3f, 0x3d, 0xa2, 0x1b, 0x60, 0x40, 0x64, 0x4e, 0x0e, 0x9e, 0xec, 0xa2, 0xe0, 0x20, 0xf5, 0x87, 0x2c, 0x43, 0x0c, 0xcc, 0xef, 0x8b, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_204 = { .name = "ecdh_brainpoolp224r1_204", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_204_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_204_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_204_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 205 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 205 for ECDH, tcId is 206 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_205_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_205_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9d, }; static const unsigned char ecdh_brainpoolp224r1_205_sharedsecret[] = { 0xaa, 0xc6, 0xa8, 0x05, 0xf4, 0xce, 0x1b, 0x6d, 0xcc, 0x13, 0xec, 0x4e, 0xd1, 0x6a, 0x88, 0x9d, 0xc4, 0xd7, 0x08, 0xf7, 0xf6, 0xf1, 0xe2, 0x34, 0x71, 0x33, 0x83, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_205 = { .name = "ecdh_brainpoolp224r1_205", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_205_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_205_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_205_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 206 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 206 for ECDH, tcId is 207 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_206_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_206_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_206 = { .name = "ecdh_brainpoolp224r1_206", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_206_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_206_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 207 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 207 for ECDH, tcId is 208 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_207_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_207_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_207 = { .name = "ecdh_brainpoolp224r1_207", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_207_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_207_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 208 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 208 for ECDH, tcId is 209 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_208_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_208_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_208 = { .name = "ecdh_brainpoolp224r1_208", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_208_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_208_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 209 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 209 for ECDH, tcId is 210 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_209_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_209_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_209 = { .name = "ecdh_brainpoolp224r1_209", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_209_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_209_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 210 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 210 for ECDH, tcId is 211 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_210_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_210_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_210 = { .name = "ecdh_brainpoolp224r1_210", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_210_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_210_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 211 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 211 for ECDH, tcId is 212 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_211_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_211_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_211 = { .name = "ecdh_brainpoolp224r1_211", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_211_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_211_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 212 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 212 for ECDH, tcId is 213 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_212_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_212_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_212 = { .name = "ecdh_brainpoolp224r1_212", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_212_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_212_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 213 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 213 for ECDH, tcId is 214 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_213_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_213_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_213 = { .name = "ecdh_brainpoolp224r1_213", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_213_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_213_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 214 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 214 for ECDH, tcId is 215 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_214_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_214_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_214 = { .name = "ecdh_brainpoolp224r1_214", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_214_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_214_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 215 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 215 for ECDH, tcId is 216 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_215_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_215_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_215 = { .name = "ecdh_brainpoolp224r1_215", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_215_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_215_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 216 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 216 for ECDH, tcId is 217 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_216_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_216_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_216 = { .name = "ecdh_brainpoolp224r1_216", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_216_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_216_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 217 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 217 for ECDH, tcId is 218 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_217_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_217_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_217 = { .name = "ecdh_brainpoolp224r1_217", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_217_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_217_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 218 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 218 for ECDH, tcId is 219 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_218_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_218_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_218 = { .name = "ecdh_brainpoolp224r1_218", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_218_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_218_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 219 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 219 for ECDH, tcId is 220 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_219_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_219_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_219 = { .name = "ecdh_brainpoolp224r1_219", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_219_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_219_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 220 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 220 for ECDH, tcId is 221 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_220_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_220_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_220 = { .name = "ecdh_brainpoolp224r1_220", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_220_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_220_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 221 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 221 for ECDH, tcId is 222 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_221_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_221_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_221 = { .name = "ecdh_brainpoolp224r1_221", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_221_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_221_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 222 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 222 for ECDH, tcId is 224 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_222_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb3, }; static const unsigned char ecdh_brainpoolp224r1_222_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_222 = { .name = "ecdh_brainpoolp224r1_222", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_222_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_222_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 224 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 223 for ECDH, tcId is 225 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_223_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_223_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_223 = { .name = "ecdh_brainpoolp224r1_223", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_223_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_223_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 225 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 224 for ECDH, tcId is 228 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_224_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_224_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_224_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_224 = { .name = "ecdh_brainpoolp224r1_224", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_224_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_224_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_224_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 228 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 225 for ECDH, tcId is 229 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_225_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_225_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_225_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_225 = { .name = "ecdh_brainpoolp224r1_225", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_225_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_225_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_225_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 5290290092223871682666367384584369978999613398297400491171, tcId is 229 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 226 for ECDH, tcId is 230 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_226_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_226_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_226_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_226 = { .name = "ecdh_brainpoolp224r1_226", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_226_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_226_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_226_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 230 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 227 for ECDH, tcId is 231 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_227_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_227_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_227_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_227 = { .name = "ecdh_brainpoolp224r1_227", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_227_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_227_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_227_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 231 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 228 for ECDH, tcId is 234 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_228_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_228_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_228_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_228 = { .name = "ecdh_brainpoolp224r1_228", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_228_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_228_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_228_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 234 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 229 for ECDH, tcId is 236 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_229_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_229_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_229_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_229 = { .name = "ecdh_brainpoolp224r1_229", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_229_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_229_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_229_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 236 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 230 for ECDH, tcId is 238 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_230_peerpubkey[] = { 0x07, 0x4f, 0x56, 0xdc, 0x2e, 0xa6, 0x48, 0xef, 0x89, 0xc3, 0xb7, 0x2e, 0x23, 0xbb, 0xd2, 0xda, 0x36, 0xf6, 0x02, 0x43, 0xe4, 0xd2, 0x06, 0x7b, 0x70, 0x60, 0x4a, 0xf1, 0xc2, 0x16, 0x5c, 0xec, 0x2f, 0x86, 0x60, 0x3d, 0x60, 0xc8, 0xa6, 0x11, 0xd5, 0xb8, 0x4b, 0xa3, 0xd9, 0x1d, 0xfe, 0x1a, 0x48, 0x08, 0x25, 0xbc, 0xc4, 0xaf, 0x3b, 0xcf, }; static const unsigned char ecdh_brainpoolp224r1_230_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_230 = { .name = "ecdh_brainpoolp224r1_230", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_230_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_230_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp224r1, tcId is 238 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 231 for ECDH, tcId is 241 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_231_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_231_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_231_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_231 = { .name = "ecdh_brainpoolp224r1_231", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_231_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_231_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_231_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 241 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 232 for ECDH, tcId is 243 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_232_peerpubkey[] = { 0x00, 0x27, 0x18, 0x94, 0x2d, 0x4d, 0x3f, 0x88, 0x3d, 0xff, 0xbd, 0xbe, 0xa1, 0x8a, 0x5b, 0x9a, 0xf7, 0x3a, 0xc8, 0x5e, 0x64, 0x80, 0x76, 0xb2, 0xc0, 0xb3, 0x33, 0xde, 0x4c, 0xc8, 0xc1, 0xd9, 0xc6, 0x12, 0x7a, 0xb6, 0x88, 0x0b, 0x90, 0x3a, 0xc4, 0x4e, 0x50, 0x73, 0x0c, 0x5c, 0xe1, 0xd4, 0xb5, 0x2b, 0x3b, 0x02, 0x68, 0x9c, 0x7f, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_232_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_232 = { .name = "ecdh_brainpoolp224r1_232", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_232_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_232_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP224t1, tcId is 243 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 233 for ECDH, tcId is 244 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_233_peerpubkey[] = { 0x99, 0x2f, 0x4a, 0x20, 0xb0, 0xe5, 0x4d, 0x67, 0x47, 0x37, 0xb7, 0x9d, 0xa8, 0xe3, 0x1c, 0xa6, 0xc6, 0xb3, 0xf8, 0x6d, 0x5f, 0xed, 0x22, 0xa8, 0x86, 0x1c, 0xfc, 0x1a, 0x3a, 0x57, 0xf7, 0xa9, 0x59, 0x2e, 0xc7, 0xb7, 0x0a, 0xfa, 0x98, 0x13, 0x99, 0xd3, 0x0b, 0x9c, 0xc7, 0xf7, 0xdd, 0x31, 0xb6, 0x20, 0x0f, 0x33, 0xa7, 0xd4, 0xb6, 0x96, }; static const unsigned char ecdh_brainpoolp224r1_233_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_233 = { .name = "ecdh_brainpoolp224r1_233", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_233_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_233_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224r1, tcId is 244 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 234 for ECDH, tcId is 249 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_234_peerpubkey[] = { 0x51, 0xd0, 0x87, 0x9c, 0xcb, 0xdc, 0x69, 0x7e, 0x40, 0xe6, 0xb6, 0x04, 0x39, 0x26, 0x10, 0xf6, 0x9a, 0x66, 0x7f, 0xee, 0xbb, 0x99, 0x83, 0x09, 0xbc, 0x71, 0xfa, 0x63, 0x34, 0x18, 0x94, 0x47, 0xb7, 0x50, 0xd3, 0x19, 0x37, 0x46, 0x1a, 0xb8, 0x80, 0x81, 0x1c, 0xd9, 0xa8, 0x3d, 0x69, 0x7b, 0x33, 0x3c, 0x2a, 0x28, 0xf3, 0x85, 0xce, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_234_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_234 = { .name = "ecdh_brainpoolp224r1_234", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_234_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_234_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224k1, tcId is 249 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 235 for ECDH, tcId is 254 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_235_peerpubkey[] = { 0x74, 0xec, 0x40, 0x11, 0xcf, 0x97, 0x6c, 0x71, 0x51, 0xf8, 0xcc, 0xaa, 0x8b, 0x75, 0x3b, 0x34, 0xc0, 0x8e, 0x31, 0xca, 0xbf, 0x3e, 0xfc, 0xc5, 0xbb, 0x99, 0x7c, 0xd2, 0x62, 0xc3, 0x27, 0x37, 0x50, 0xab, 0xfc, 0xb8, 0xf7, 0x6b, 0xc7, 0x85, 0xc0, 0x56, 0xa9, 0x24, 0xe7, 0x60, 0xd3, 0xd1, 0x55, 0xbc, 0x5a, 0x72, 0x81, 0xa5, 0xb3, 0x45, }; static const unsigned char ecdh_brainpoolp224r1_235_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_235 = { .name = "ecdh_brainpoolp224r1_235", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_235_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_235_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224t1, tcId is 254 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 236 for ECDH, tcId is 259 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_236_peerpubkey[] = { 0xcf, 0xa2, 0x45, 0x5a, 0x3f, 0xc3, 0x49, 0x1d, 0x24, 0x29, 0x1d, 0xe3, 0x58, 0x8e, 0x0e, 0xb4, 0x60, 0x63, 0xc0, 0x44, 0x30, 0xd7, 0x97, 0x5b, 0xa7, 0x1d, 0xf0, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_236_privkey[] = { 0x54, 0x5f, 0x59, 0x60, 0x12, 0x97, 0xfc, 0xc8, 0xd7, 0x34, 0xf4, 0x3b, 0xeb, 0xc2, 0xd7, 0x38, 0x66, 0xb1, 0x6a, 0x3a, 0xdb, 0x88, 0x52, 0x11, 0xae, 0x1a, 0x60, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_236 = { .name = "ecdh_brainpoolp224r1_236", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_236_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_236_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 259 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 237 for ECDH, tcId is 260 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_237_peerpubkey[] = { 0x9f, 0x98, 0xbb, 0xa2, 0xa3, 0x31, 0xe3, 0xa3, 0x34, 0xc5, 0xea, 0x7f, 0x89, 0x37, 0xa8, 0x55, 0x80, 0xe5, 0x57, 0xb3, 0x53, 0xe0, 0x6f, 0x3e, 0xd8, 0xdc, 0xd1, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_237_privkey[] = { 0x7a, 0xbd, 0xe5, 0xe6, 0xce, 0x42, 0x08, 0x1a, 0xfc, 0x61, 0x94, 0x93, 0x07, 0x10, 0xbf, 0xd1, 0x08, 0xb9, 0x1a, 0x7f, 0xc3, 0x4d, 0x2c, 0xaf, 0x52, 0xcd, 0xc5, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_237 = { .name = "ecdh_brainpoolp224r1_237", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_237_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_237_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 260 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 238 for ECDH, tcId is 261 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_238_peerpubkey[] = { 0x9f, 0x98, 0xbb, 0xa2, 0xa3, 0x31, 0xe3, 0xa3, 0x34, 0xc5, 0xea, 0x7f, 0x89, 0x37, 0xa8, 0x55, 0x80, 0xe5, 0x57, 0xb3, 0x53, 0xe0, 0x6f, 0x3e, 0xd8, 0xdc, 0xd1, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_238_privkey[] = { 0x7a, 0xbd, 0xe5, 0xe6, 0xce, 0x42, 0x08, 0x1a, 0xfc, 0x61, 0x94, 0x93, 0x07, 0x10, 0xbf, 0xd1, 0x08, 0xb9, 0x1a, 0x7f, 0xc3, 0x4d, 0x2c, 0xaf, 0x52, 0xcd, 0xc5, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_238 = { .name = "ecdh_brainpoolp224r1_238", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_238_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_238_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 261 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 239 for ECDH, tcId is 262 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_239_peerpubkey[] = { 0x12, 0x88, 0x49, 0xd9, 0xe5, 0x73, 0x1a, 0x42, 0x46, 0x5e, 0x35, 0xae, 0xbd, 0x7b, 0x6d, 0xb3, 0xf2, 0x4e, 0x13, 0x66, 0xf0, 0xad, 0xe2, 0x9e, 0x82, 0x1e, 0x1c, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_239_privkey[] = { 0x72, 0x0c, 0x41, 0xbb, 0xb1, 0x5e, 0x52, 0x47, 0xed, 0x81, 0xe2, 0x69, 0xb4, 0x21, 0x77, 0x1e, 0x6b, 0xe5, 0x13, 0x4b, 0x11, 0xf3, 0x54, 0x2e, 0xe8, 0x05, 0x91, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_239 = { .name = "ecdh_brainpoolp224r1_239", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_239_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_239_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 262 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 240 for ECDH, tcId is 263 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_240_peerpubkey[] = { 0xab, 0xef, 0xd2, 0xcf, 0xd3, 0xfa, 0xf7, 0x76, 0x66, 0xc7, 0xe1, 0xad, 0x81, 0x41, 0x4d, 0x63, 0x36, 0xfe, 0xa6, 0xa6, 0xb4, 0x51, 0x79, 0xec, 0xcf, 0xfc, 0xc9, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_240_privkey[] = { 0x72, 0xad, 0xf4, 0x4f, 0x80, 0x84, 0x19, 0x54, 0x9d, 0xe6, 0x9d, 0x89, 0xd3, 0x7b, 0x75, 0x08, 0xff, 0x52, 0x8c, 0x43, 0x95, 0x80, 0xe5, 0xd0, 0x03, 0x1e, 0x84, 0x2b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_240 = { .name = "ecdh_brainpoolp224r1_240", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_240_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_240_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 263 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 241 for ECDH, tcId is 264 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_241_peerpubkey[] = { 0xab, 0xef, 0xd2, 0xcf, 0xd3, 0xfa, 0xf7, 0x76, 0x66, 0xc7, 0xe1, 0xad, 0x81, 0x41, 0x4d, 0x63, 0x36, 0xfe, 0xa6, 0xa6, 0xb4, 0x51, 0x79, 0xec, 0xcf, 0xfc, 0xc9, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_241_privkey[] = { 0x72, 0xad, 0xf4, 0x4f, 0x80, 0x84, 0x19, 0x54, 0x9d, 0xe6, 0x9d, 0x89, 0xd3, 0x7b, 0x75, 0x08, 0xff, 0x52, 0x8c, 0x43, 0x95, 0x80, 0xe5, 0xd0, 0x03, 0x1e, 0x84, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_241 = { .name = "ecdh_brainpoolp224r1_241", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_241_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_241_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 264 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 242 for ECDH, tcId is 265 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_242_peerpubkey[] = { 0x12, 0x88, 0x49, 0xd9, 0xe5, 0x73, 0x1a, 0x42, 0x46, 0x5e, 0x35, 0xae, 0xbd, 0x7b, 0x6d, 0xb3, 0xf2, 0x4e, 0x13, 0x66, 0xf0, 0xad, 0xe2, 0x9e, 0x82, 0x1e, 0x1c, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_242_privkey[] = { 0x72, 0x0c, 0x41, 0xbb, 0xb1, 0x5e, 0x52, 0x47, 0xed, 0x81, 0xe2, 0x69, 0xb4, 0x21, 0x77, 0x1e, 0x6b, 0xe5, 0x13, 0x4b, 0x11, 0xf3, 0x54, 0x2e, 0xe8, 0x05, 0x91, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_242 = { .name = "ecdh_brainpoolp224r1_242", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_242_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_242_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 265 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 243 for ECDH, tcId is 266 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_243_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_243_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_243_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_243 = { .name = "ecdh_brainpoolp224r1_243", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_243_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_243_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_243_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of sequence, tcId is 266 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 244 for ECDH, tcId is 267 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_244_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_244_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_244_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_244 = { .name = "ecdh_brainpoolp224r1_244", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_244_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_244_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_244_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of sequence, tcId is 267 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 245 for ECDH, tcId is 268 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_245_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_245_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_245_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_245 = { .name = "ecdh_brainpoolp224r1_245", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_245_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_245_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_245_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of sequence contains leading 0, tcId is 268 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 246 for ECDH, tcId is 269 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_246_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_246_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_246_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_246 = { .name = "ecdh_brainpoolp224r1_246", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_246_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_246_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_246_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of sequence contains leading 0, tcId is 269 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 247 for ECDH, tcId is 303 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_247_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_247_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_247_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_247 = { .name = "ecdh_brainpoolp224r1_247", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_247_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_247_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_247_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to sequence, tcId is 303 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 248 for ECDH, tcId is 304 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_248_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_248_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_248_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_248 = { .name = "ecdh_brainpoolp224r1_248", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_248_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_248_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_248_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to sequence, tcId is 304 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 249 for ECDH, tcId is 333 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_249_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_249_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_249_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_249 = { .name = "ecdh_brainpoolp224r1_249", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_249_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_249_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_249_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing sequence with NULL, tcId is 333 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 250 for ECDH, tcId is 336 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_250_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_250_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_250_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_250 = { .name = "ecdh_brainpoolp224r1_250", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_250_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_250_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_250_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of sequence, tcId is 336 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 251 for ECDH, tcId is 341 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_251_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_251_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_251_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_251 = { .name = "ecdh_brainpoolp224r1_251", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_251_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_251_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_251_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of sequence, tcId is 341 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 252 for ECDH, tcId is 345 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_252_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_252_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_252_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_252 = { .name = "ecdh_brainpoolp224r1_252", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_252_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_252_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_252_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "dropping value of sequence, tcId is 345 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 253 for ECDH, tcId is 363 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_253_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_253_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_253_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_253 = { .name = "ecdh_brainpoolp224r1_253", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_253_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_253_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_253_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepend empty sequence, tcId is 363 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 254 for ECDH, tcId is 364 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_254_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_254_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_254_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_254 = { .name = "ecdh_brainpoolp224r1_254", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_254_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_254_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_254_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "append empty sequence, tcId is 364 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 255 for ECDH, tcId is 365 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_255_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_255_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_255_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_255 = { .name = "ecdh_brainpoolp224r1_255", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_255_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_255_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_255_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "append empty sequence, tcId is 365 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 256 for ECDH, tcId is 369 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_256_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_256_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_256_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_256 = { .name = "ecdh_brainpoolp224r1_256", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_256_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_256_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_256_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "sequence of sequence, tcId is 369 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 257 for ECDH, tcId is 371 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_257_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_257_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_257_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_257 = { .name = "ecdh_brainpoolp224r1_257", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_257_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_257_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_257_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 371 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 258 for ECDH, tcId is 372 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_258_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_258_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_258_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_258 = { .name = "ecdh_brainpoolp224r1_258", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_258_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_258_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_258_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "repeating element in sequence, tcId is 372 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 259 for ECDH, tcId is 373 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_259_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_259_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_259_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_259 = { .name = "ecdh_brainpoolp224r1_259", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_259_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_259_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_259_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "repeating element in sequence, tcId is 373 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 260 for ECDH, tcId is 374 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_260_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_260_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_260_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_260 = { .name = "ecdh_brainpoolp224r1_260", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_260_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_260_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_260_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of oid, tcId is 374 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 261 for ECDH, tcId is 375 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_261_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_261_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_261_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_261 = { .name = "ecdh_brainpoolp224r1_261", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_261_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_261_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_261_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of oid, tcId is 375 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 262 for ECDH, tcId is 376 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_262_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_262_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_262_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_262 = { .name = "ecdh_brainpoolp224r1_262", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_262_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_262_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_262_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of oid contains leading 0, tcId is 376 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 263 for ECDH, tcId is 377 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_263_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_263_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_263_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_263 = { .name = "ecdh_brainpoolp224r1_263", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_263_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_263_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_263_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of oid contains leading 0, tcId is 377 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 264 for ECDH, tcId is 396 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_264_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_264_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_264_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_264 = { .name = "ecdh_brainpoolp224r1_264", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_264_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_264_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_264_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "removing oid, tcId is 396 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 265 for ECDH, tcId is 399 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_265_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_265_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_265_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_265 = { .name = "ecdh_brainpoolp224r1_265", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_265_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_265_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_265_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending 0's to oid, tcId is 399 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 266 for ECDH, tcId is 400 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_266_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_266_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_266_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_266 = { .name = "ecdh_brainpoolp224r1_266", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_266_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_266_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_266_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending 0's to oid, tcId is 400 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 267 for ECDH, tcId is 401 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_267_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_267_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_267_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_267 = { .name = "ecdh_brainpoolp224r1_267", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_267_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_267_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_267_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to oid, tcId is 401 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 268 for ECDH, tcId is 402 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_268_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_268_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_268_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_268 = { .name = "ecdh_brainpoolp224r1_268", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_268_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_268_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_268_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to oid, tcId is 402 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 269 for ECDH, tcId is 404 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_269_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_269_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_269_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_269 = { .name = "ecdh_brainpoolp224r1_269", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_269_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_269_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_269_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to oid, tcId is 404 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 270 for ECDH, tcId is 405 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_270_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_270_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_270_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_270 = { .name = "ecdh_brainpoolp224r1_270", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_270_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_270_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_270_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to oid, tcId is 405 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 271 for ECDH, tcId is 408 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_271_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_271_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_271_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_271 = { .name = "ecdh_brainpoolp224r1_271", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_271_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_271_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_271_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing oid with NULL, tcId is 408 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 272 for ECDH, tcId is 409 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_272_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_272_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_272_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_272 = { .name = "ecdh_brainpoolp224r1_272", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_272_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_272_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_272_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing oid with NULL, tcId is 409 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 273 for ECDH, tcId is 410 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_273_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_273_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_273_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_273 = { .name = "ecdh_brainpoolp224r1_273", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_273_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_273_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_273_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 410 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 274 for ECDH, tcId is 412 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_274_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_274_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_274_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_274 = { .name = "ecdh_brainpoolp224r1_274", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_274_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_274_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_274_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 412 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 275 for ECDH, tcId is 415 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_275_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_275_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_275_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_275 = { .name = "ecdh_brainpoolp224r1_275", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_275_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_275_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_275_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 415 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 276 for ECDH, tcId is 417 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_276_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_276_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_276_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_276 = { .name = "ecdh_brainpoolp224r1_276", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_276_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_276_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_276_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 417 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 277 for ECDH, tcId is 422 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_277_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_277_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_277_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_277 = { .name = "ecdh_brainpoolp224r1_277", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_277_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_277_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_277_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "modify first byte of oid, tcId is 422 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 278 for ECDH, tcId is 423 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_278_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_278_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_278_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_278 = { .name = "ecdh_brainpoolp224r1_278", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_278_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_278_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_278_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "modify first byte of oid, tcId is 423 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 279 for ECDH, tcId is 426 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_279_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_279_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_279_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_279 = { .name = "ecdh_brainpoolp224r1_279", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_279_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_279_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_279_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 426 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 280 for ECDH, tcId is 427 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_280_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_280_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_280_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_280 = { .name = "ecdh_brainpoolp224r1_280", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_280_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_280_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_280_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 427 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 281 for ECDH, tcId is 428 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_281_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_281_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_281_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_281 = { .name = "ecdh_brainpoolp224r1_281", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_281_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_281_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_281_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 428 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 282 for ECDH, tcId is 429 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_282_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_282_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_282_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_282 = { .name = "ecdh_brainpoolp224r1_282", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_282_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_282_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_282_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 429 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 283 for ECDH, tcId is 430 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_283_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_283_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_283_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_283 = { .name = "ecdh_brainpoolp224r1_283", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_283_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_283_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_283_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 430 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 284 for ECDH, tcId is 431 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_284_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_284_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_284_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_284 = { .name = "ecdh_brainpoolp224r1_284", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_284_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_284_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_284_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 431 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 285 for ECDH, tcId is 432 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_285_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_285_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_285_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_285 = { .name = "ecdh_brainpoolp224r1_285", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_285_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_285_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_285_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 432 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 286 for ECDH, tcId is 433 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_286_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_286_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_286_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_286 = { .name = "ecdh_brainpoolp224r1_286", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_286_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_286_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_286_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 433 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 287 for ECDH, tcId is 434 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_287_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_287_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_287_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_287 = { .name = "ecdh_brainpoolp224r1_287", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_287_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_287_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_287_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "longer oid, tcId is 434 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 288 for ECDH, tcId is 435 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_288_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_288_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_288_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_288 = { .name = "ecdh_brainpoolp224r1_288", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_288_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_288_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_288_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "longer oid, tcId is 435 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 289 for ECDH, tcId is 436 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_289_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_289_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_289_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_289 = { .name = "ecdh_brainpoolp224r1_289", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_289_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_289_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_289_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 436 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 290 for ECDH, tcId is 437 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_290_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_290_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_290_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_290 = { .name = "ecdh_brainpoolp224r1_290", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_290_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_290_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_290_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 437 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 291 for ECDH, tcId is 438 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_291_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_291_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_291_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_291 = { .name = "ecdh_brainpoolp224r1_291", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_291_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_291_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_291_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 438 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 292 for ECDH, tcId is 439 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_292_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_292_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_292_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_292 = { .name = "ecdh_brainpoolp224r1_292", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_292_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_292_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_292_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 439 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 293 for ECDH, tcId is 440 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_293_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_293_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_293_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_293 = { .name = "ecdh_brainpoolp224r1_293", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_293_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_293_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_293_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "large integer in oid, tcId is 440 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 294 for ECDH, tcId is 441 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_294_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_294_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_294_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_294 = { .name = "ecdh_brainpoolp224r1_294", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_294_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_294_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_294_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "large integer in oid, tcId is 441 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 295 for ECDH, tcId is 446 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_295_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_295_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_295_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_295 = { .name = "ecdh_brainpoolp224r1_295", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_295_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_295_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_295_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of bit string, tcId is 446 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 296 for ECDH, tcId is 447 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_296_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_296_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_296_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_296 = { .name = "ecdh_brainpoolp224r1_296", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_296_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_296_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_296_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of bit string contains leading 0, tcId is 447 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 297 for ECDH, tcId is 459 in file ecdh_brainpoolP224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_297_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_297_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_297_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_297 = { .name = "ecdh_brainpoolp224r1_297", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_297_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_297_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_297_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to bit string, tcId is 459 in file ecdh_brainpoolP224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 298 for ECDH, tcId is 470 in file ecdh_brainpoolP224r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_298_peerpubkey[] = { 0xd7, 0xba, 0x2d, 0xf5, 0x81, 0xb4, 0x54, 0xd8, 0x3c, 0x6b, 0xb8, 0x65, 0x0f, 0xc3, 0xa1, 0xf1, 0x35, 0x21, 0x88, 0x1f, 0xa2, 0xea, 0x52, 0x06, 0x1d, 0x9e, 0x3a, 0xf5, 0x4e, 0x82, 0x0e, 0x75, 0xfb, 0x86, 0x22, 0x18, 0x3b, 0x69, 0x9d, 0x86, 0x87, 0x89, 0xbf, 0x36, 0x82, 0x88, 0x9d, 0x70, 0x21, 0x79, 0x8a, 0x3e, 0x4b, 0xa2, 0x7b, 0xf1, }; static const unsigned char ecdh_brainpoolp224r1_298_privkey[] = { 0x4d, 0xee, 0x4d, 0x6c, 0x6c, 0x9a, 0x8b, 0xf8, 0xb5, 0xe3, 0xc2, 0xfc, 0x00, 0x1f, 0xe4, 0x91, 0x8d, 0xa5, 0x86, 0xaa, 0xce, 0xb2, 0xa1, 0xee, 0x78, 0xa2, 0x93, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_298_sharedsecret[] = { 0xcd, 0x46, 0xb8, 0x5e, 0xc2, 0xe2, 0xf0, 0x6e, 0xcc, 0xe3, 0x1f, 0xef, 0xc7, 0x1a, 0xa2, 0x92, 0x56, 0x47, 0x6b, 0x2e, 0xf0, 0xdd, 0x04, 0xac, 0x0e, 0xae, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_298 = { .name = "ecdh_brainpoolp224r1_298", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_298_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_298_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_298_sharedsecret, .sharedsecretlen = 28, .result = -1, .comment = "modify last byte of bit string, tcId is 470 in file ecdh_brainpoolP224r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 299 for ECDH, tcId is 1 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_299_peerpubkey[] = { 0x4c, 0xee, 0x5e, 0x10, 0x72, 0xb3, 0x0d, 0x64, 0xf7, 0x0b, 0xf0, 0x19, 0x58, 0xe2, 0x2c, 0x04, 0x4a, 0x21, 0x27, 0xdd, 0xd7, 0x44, 0xce, 0x30, 0x60, 0xc1, 0x59, 0x90, 0xff, 0x0f, 0xe1, 0x14, 0x8c, 0x6e, 0xe5, 0x65, 0x59, 0x82, 0x9a, 0x5a, 0x84, 0xdd, 0x5c, 0x86, 0x46, 0xee, 0x0c, 0x43, 0xd0, 0xb7, 0xc5, 0x01, 0x81, 0xf2, 0x34, 0xec, 0x09, 0xeb, 0xa4, 0x3b, 0xc8, 0x6b, 0x16, 0x9e, }; static const unsigned char ecdh_brainpoolp256r1_299_privkey[] = { 0x01, 0x13, 0xdb, 0x97, 0x9e, 0x07, 0xd9, 0xc8, 0xfd, 0xbe, 0xa5, 0xb0, 0x6a, 0x68, 0x2c, 0x0d, 0x2a, 0xd6, 0x71, 0x70, 0xff, 0xcb, 0x65, 0xd7, 0x54, 0x7d, 0x8c, 0x44, 0x2d, 0x3a, 0xc2, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_299_sharedsecret[] = { 0x3f, 0x00, 0xd9, 0xaf, 0x76, 0x07, 0xfd, 0x32, 0x80, 0x9e, 0xf7, 0xa4, 0xa3, 0x0b, 0x39, 0x6e, 0x3d, 0xa9, 0xf4, 0x65, 0xad, 0xf2, 0x05, 0x97, 0xc9, 0xe2, 0x04, 0x6f, 0x16, 0xa7, 0xb1, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_299 = { .name = "ecdh_brainpoolp256r1_299", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_299_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_299_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_299_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 300 for ECDH, tcId is 2 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_300_peerpubkey[] = { 0x4c, 0xee, 0x5e, 0x10, 0x72, 0xb3, 0x0d, 0x64, 0xf7, 0x0b, 0xf0, 0x19, 0x58, 0xe2, 0x2c, 0x04, 0x4a, 0x21, 0x27, 0xdd, 0xd7, 0x44, 0xce, 0x30, 0x60, 0xc1, 0x59, 0x90, 0xff, 0x0f, 0xe1, 0x14, }; static const unsigned char ecdh_brainpoolp256r1_300_privkey[] = { 0x01, 0x13, 0xdb, 0x97, 0x9e, 0x07, 0xd9, 0xc8, 0xfd, 0xbe, 0xa5, 0xb0, 0x6a, 0x68, 0x2c, 0x0d, 0x2a, 0xd6, 0x71, 0x70, 0xff, 0xcb, 0x65, 0xd7, 0x54, 0x7d, 0x8c, 0x44, 0x2d, 0x3a, 0xc2, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_300_sharedsecret[] = { 0x3f, 0x00, 0xd9, 0xaf, 0x76, 0x07, 0xfd, 0x32, 0x80, 0x9e, 0xf7, 0xa4, 0xa3, 0x0b, 0x39, 0x6e, 0x3d, 0xa9, 0xf4, 0x65, 0xad, 0xf2, 0x05, 0x97, 0xc9, 0xe2, 0x04, 0x6f, 0x16, 0xa7, 0xb1, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_300 = { .name = "ecdh_brainpoolp256r1_300", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_300_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_300_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_300_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 301 for ECDH, tcId is 3 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_301_peerpubkey[] = { 0x12, 0x84, 0xe5, 0x0e, 0xcd, 0xa6, 0xc7, 0xc3, 0xa1, 0x5a, 0xe7, 0x9c, 0x31, 0x8d, 0xec, 0x59, 0x1d, 0xa1, 0x97, 0xfc, 0x32, 0xb7, 0xa0, 0x46, 0xb1, 0x68, 0x77, 0x40, 0x13, 0xe5, 0x46, 0x87, 0x15, 0x6d, 0x96, 0xfe, 0x07, 0x65, 0xea, 0x03, 0x40, 0x4e, 0xcf, 0x5f, 0x6e, 0xfc, 0x74, 0xb0, 0x79, 0x2c, 0x05, 0xc1, 0x1f, 0x9a, 0x68, 0x3b, 0x97, 0xf5, 0xc7, 0xca, 0x74, 0xf8, 0xa8, 0xc2, }; static const unsigned char ecdh_brainpoolp256r1_301_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_301_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_301 = { .name = "ecdh_brainpoolp256r1_301", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_301_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_301_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_301_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 302 for ECDH, tcId is 4 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_302_peerpubkey[] = { 0x98, 0x57, 0x74, 0x99, 0xd7, 0xa4, 0x2f, 0x4d, 0xfe, 0x44, 0xc2, 0x75, 0x7f, 0xd9, 0x93, 0x2e, 0xc7, 0xe4, 0x5a, 0x0d, 0x90, 0x2e, 0x0b, 0xf1, 0xfe, 0x4a, 0xc0, 0x9e, 0x70, 0x5e, 0xb8, 0xe1, 0x2d, 0x9b, 0x9a, 0x00, 0x92, 0xc9, 0xc9, 0x2a, 0x66, 0x1e, 0x24, 0xb2, 0x13, 0x8b, 0x6a, 0x77, 0x83, 0x24, 0xc9, 0xdb, 0x81, 0x5e, 0xb0, 0x56, 0x21, 0xc5, 0x4c, 0xd4, 0xd4, 0xb2, 0xe8, 0x87, }; static const unsigned char ecdh_brainpoolp256r1_302_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_302_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_302 = { .name = "ecdh_brainpoolp256r1_302", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_302_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_302_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_302_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 303 for ECDH, tcId is 5 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_303_peerpubkey[] = { 0x57, 0x60, 0xaa, 0x78, 0xcf, 0xb0, 0xdf, 0x84, 0xfc, 0xc2, 0xc4, 0x42, 0x32, 0x1a, 0x5c, 0x27, 0x8f, 0xca, 0x24, 0x5a, 0xa9, 0x0a, 0x4f, 0xcb, 0x33, 0xad, 0x8b, 0xbb, 0xe6, 0xe8, 0x47, 0xdf, 0x8b, 0x8f, 0x10, 0x2d, 0x94, 0x8a, 0x52, 0xb3, 0xc2, 0x1f, 0x70, 0x06, 0x7e, 0x10, 0x6d, 0xaf, 0x10, 0x62, 0x61, 0x13, 0xb8, 0xdd, 0xc0, 0x8e, 0x50, 0xfa, 0xd4, 0xdf, 0x13, 0xf9, 0x0b, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_303_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_303_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_303 = { .name = "ecdh_brainpoolp256r1_303", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_303_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_303_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_303_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 304 for ECDH, tcId is 6 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_304_peerpubkey[] = { 0x0b, 0x3e, 0x56, 0x74, 0x7e, 0xe2, 0xa8, 0x1e, 0xdc, 0x48, 0x7f, 0x7b, 0x25, 0x7a, 0xfc, 0x58, 0x86, 0xf3, 0xd8, 0x0e, 0x98, 0x48, 0x47, 0x2a, 0x94, 0x45, 0x90, 0xea, 0xcf, 0x71, 0x17, 0x2f, 0x57, 0x86, 0x41, 0x0b, 0x71, 0xce, 0x22, 0x68, 0x24, 0xcd, 0x3f, 0x0e, 0xf4, 0x62, 0x18, 0x5b, 0x25, 0x57, 0xc9, 0xe8, 0xe1, 0xf0, 0x2c, 0x65, 0x4e, 0x84, 0x23, 0x48, 0x83, 0x31, 0xb6, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_304_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_304_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_304 = { .name = "ecdh_brainpoolp256r1_304", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_304_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_304_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_304_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 305 for ECDH, tcId is 7 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_305_peerpubkey[] = { 0x85, 0x4a, 0x72, 0xd5, 0xfb, 0xea, 0xcf, 0xc5, 0x7a, 0x5a, 0xea, 0x2e, 0x38, 0x6e, 0x54, 0x9b, 0xab, 0x87, 0xb8, 0xee, 0x31, 0x3e, 0xe6, 0xc1, 0xf1, 0x2c, 0xf2, 0x67, 0x82, 0x69, 0x40, 0x76, 0x9f, 0x1c, 0x56, 0x48, 0x6b, 0x0a, 0xc2, 0xdc, 0xd9, 0x6b, 0xc0, 0x18, 0xf5, 0xf4, 0x27, 0x29, 0xcc, 0x07, 0x3c, 0x62, 0x91, 0xbd, 0xe8, 0xc3, 0xe7, 0xc1, 0x69, 0x32, 0x9c, 0x79, 0x81, 0x42, }; static const unsigned char ecdh_brainpoolp256r1_305_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_305_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_305 = { .name = "ecdh_brainpoolp256r1_305", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_305_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_305_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_305_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 306 for ECDH, tcId is 8 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_306_peerpubkey[] = { 0xa7, 0x04, 0x3c, 0xb0, 0x65, 0x91, 0x6e, 0x17, 0x38, 0x37, 0xbc, 0x1a, 0x10, 0x95, 0x26, 0xe9, 0x46, 0xb6, 0x60, 0x08, 0x39, 0x8e, 0x69, 0x7b, 0x40, 0x43, 0x8a, 0x3e, 0x0a, 0x2b, 0x0d, 0x9d, 0x56, 0xc6, 0xfa, 0xa8, 0x3d, 0x8a, 0x4c, 0x4b, 0x9e, 0x2a, 0x9b, 0x4a, 0x69, 0x17, 0xa4, 0x5a, 0xee, 0xe6, 0x14, 0x91, 0xf4, 0xf4, 0xe4, 0x7e, 0xfe, 0xbc, 0xcb, 0x71, 0xbe, 0xf8, 0xde, 0xfe, }; static const unsigned char ecdh_brainpoolp256r1_306_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_306_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_306 = { .name = "ecdh_brainpoolp256r1_306", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_306_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_306_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_306_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 307 for ECDH, tcId is 9 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_307_peerpubkey[] = { 0x94, 0xb2, 0x31, 0xb2, 0x18, 0x95, 0x76, 0xb8, 0x4a, 0xa5, 0x91, 0x1e, 0x80, 0xda, 0x30, 0x74, 0xa4, 0xd1, 0x69, 0x88, 0x04, 0x1f, 0x90, 0x8e, 0x6b, 0x6a, 0x19, 0x9c, 0x16, 0xe1, 0xf7, 0xed, 0x26, 0xfb, 0x91, 0x84, 0x97, 0x1b, 0xc6, 0xf7, 0x1c, 0xbc, 0xed, 0x68, 0x36, 0xb3, 0x10, 0x7b, 0xb1, 0x70, 0x61, 0xa4, 0x40, 0xab, 0xca, 0x27, 0xe5, 0xb4, 0x42, 0x52, 0xbf, 0x39, 0xc6, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_307_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_307_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_307 = { .name = "ecdh_brainpoolp256r1_307", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_307_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_307_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_307_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 308 for ECDH, tcId is 10 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_308_peerpubkey[] = { 0x7d, 0xc0, 0xf2, 0x9a, 0x55, 0x42, 0xc7, 0xd6, 0x77, 0x93, 0xf5, 0x2d, 0xc1, 0xde, 0x98, 0x6b, 0xce, 0xe4, 0x5d, 0x75, 0x71, 0x39, 0x5c, 0xab, 0x10, 0x28, 0x93, 0xaa, 0x2a, 0x5b, 0xf8, 0xcf, 0x7d, 0x4b, 0x84, 0x43, 0x79, 0x3b, 0x13, 0x74, 0x91, 0x73, 0x6b, 0x26, 0x06, 0x1e, 0xbd, 0x70, 0x5d, 0x19, 0x44, 0x05, 0xcf, 0x10, 0x8b, 0x74, 0x1c, 0xd1, 0xc5, 0xb4, 0x2f, 0x44, 0xf6, 0xab, }; static const unsigned char ecdh_brainpoolp256r1_308_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_308_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_308 = { .name = "ecdh_brainpoolp256r1_308", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_308_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_308_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_308_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 309 for ECDH, tcId is 11 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_309_peerpubkey[] = { 0x83, 0x47, 0x77, 0x21, 0x29, 0x88, 0xed, 0x96, 0x2b, 0xc9, 0xd5, 0x7e, 0x98, 0xf2, 0x0b, 0xcf, 0xa3, 0x4d, 0x9c, 0x65, 0x87, 0x38, 0x1d, 0xb4, 0x8e, 0x48, 0xce, 0x20, 0xa1, 0xce, 0x96, 0x1d, 0x69, 0x85, 0xed, 0x4f, 0x21, 0xbb, 0x01, 0x97, 0x91, 0xa6, 0xf0, 0x8c, 0x36, 0xc4, 0x29, 0x24, 0xcd, 0x72, 0xfe, 0x65, 0x3c, 0x90, 0x88, 0x2b, 0x97, 0x47, 0x05, 0x9b, 0x0c, 0xc1, 0xea, 0x17, }; static const unsigned char ecdh_brainpoolp256r1_309_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_309_sharedsecret[] = { 0x23, 0x10, 0xa8, 0x7d, 0xfe, 0x5f, 0xc2, 0x5d, 0x0c, 0x0f, 0x51, 0xf0, 0xd3, 0x79, 0xef, 0x19, 0xbe, 0x68, 0x7b, 0xef, 0x34, 0x79, 0x5d, 0xc2, 0xfd, 0x3f, 0xcc, 0x2d, 0x1c, 0xfd, 0xf1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_309 = { .name = "ecdh_brainpoolp256r1_309", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_309_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_309_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_309_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 310 for ECDH, tcId is 12 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_310_peerpubkey[] = { 0xa6, 0x7c, 0xcc, 0xc5, 0xe7, 0xb6, 0x48, 0x89, 0xf5, 0xa8, 0xe5, 0xc5, 0x2c, 0xb8, 0x75, 0x25, 0x8f, 0x52, 0x57, 0x54, 0xcc, 0xb6, 0xae, 0x2c, 0x75, 0xc8, 0xb9, 0xde, 0x82, 0x1c, 0x78, 0x0c, 0x7f, 0x38, 0xe6, 0xd2, 0x38, 0xe5, 0x57, 0x25, 0x25, 0x0f, 0xc5, 0x3f, 0x67, 0x51, 0x4a, 0x98, 0x52, 0xff, 0x5d, 0xd2, 0xee, 0x1a, 0xcf, 0x58, 0x22, 0x54, 0xcb, 0xa7, 0xde, 0xb7, 0x22, 0x67, }; static const unsigned char ecdh_brainpoolp256r1_310_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_310_sharedsecret[] = { 0x33, 0x67, 0xa0, 0xbb, 0x5a, 0x87, 0x07, 0x24, 0x18, 0x33, 0x4c, 0xea, 0xd5, 0x22, 0x7a, 0xed, 0xfc, 0x06, 0x3f, 0x1a, 0x73, 0x40, 0xdc, 0x1c, 0x7c, 0x8e, 0x57, 0x6e, 0xb4, 0x11, 0x8e, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_310 = { .name = "ecdh_brainpoolp256r1_310", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_310_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_310_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_310_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 311 for ECDH, tcId is 13 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_311_peerpubkey[] = { 0x4f, 0xe3, 0x9f, 0xe9, 0x09, 0xda, 0x0a, 0x3e, 0x5a, 0x05, 0xd4, 0xf9, 0x71, 0x76, 0x61, 0xc8, 0xf9, 0xaf, 0x24, 0x07, 0x1d, 0x71, 0x1d, 0xf1, 0x5d, 0xe2, 0x25, 0xe9, 0x8d, 0x5e, 0xdc, 0xe4, 0x62, 0xac, 0xa0, 0xb1, 0xff, 0xb6, 0x6a, 0x09, 0xb7, 0x69, 0xa2, 0xc2, 0x33, 0x14, 0xd5, 0x11, 0x6f, 0xb3, 0x0b, 0x71, 0x45, 0x6c, 0xa7, 0x98, 0x37, 0x0a, 0xba, 0xd1, 0x00, 0x97, 0xd4, 0x53, }; static const unsigned char ecdh_brainpoolp256r1_311_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_311_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_311 = { .name = "ecdh_brainpoolp256r1_311", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_311_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_311_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_311_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 312 for ECDH, tcId is 14 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_312_peerpubkey[] = { 0x96, 0xc1, 0x3e, 0x3b, 0x6f, 0x62, 0x6c, 0xc2, 0xdd, 0x89, 0x99, 0x2e, 0xc3, 0x4b, 0x39, 0x85, 0x19, 0x38, 0xa6, 0xc6, 0x01, 0x5c, 0x1e, 0xe4, 0x88, 0x97, 0x95, 0xdc, 0x53, 0x6c, 0x14, 0x15, 0x33, 0x08, 0x88, 0x34, 0x4f, 0xfe, 0x63, 0xe0, 0xd5, 0x4e, 0x4f, 0x93, 0x65, 0xdd, 0x20, 0x90, 0x13, 0x93, 0x3a, 0x0a, 0x84, 0xd5, 0xe3, 0x04, 0x24, 0xf5, 0x16, 0xb8, 0x71, 0x89, 0xb8, 0x35, }; static const unsigned char ecdh_brainpoolp256r1_312_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_312_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_312 = { .name = "ecdh_brainpoolp256r1_312", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_312_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_312_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_312_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 313 for ECDH, tcId is 15 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_313_peerpubkey[] = { 0x06, 0xd3, 0x93, 0x9c, 0x4c, 0x91, 0x6d, 0xa1, 0x03, 0xa5, 0xf1, 0x54, 0x38, 0xee, 0x2b, 0x08, 0x63, 0xcf, 0x18, 0xb2, 0x69, 0xd3, 0xd1, 0xa6, 0x6c, 0xcf, 0x68, 0x4f, 0x2f, 0xd5, 0x68, 0xcf, 0x72, 0x35, 0xf3, 0xba, 0xc7, 0x1d, 0x7d, 0x0f, 0x1e, 0xb6, 0xdb, 0x9e, 0xf7, 0xaf, 0xf3, 0x85, 0xf0, 0x20, 0x99, 0x1d, 0xb6, 0x78, 0xe5, 0x12, 0x4f, 0xfb, 0x06, 0x67, 0x74, 0x5b, 0x3e, 0x03, }; static const unsigned char ecdh_brainpoolp256r1_313_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_313_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_313 = { .name = "ecdh_brainpoolp256r1_313", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_313_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_313_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_313_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 314 for ECDH, tcId is 16 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_314_peerpubkey[] = { 0x29, 0xf6, 0xba, 0x59, 0xfb, 0xe1, 0x8c, 0x3e, 0xd9, 0x9b, 0xc7, 0xda, 0x63, 0x8a, 0xe4, 0x19, 0xee, 0x7d, 0x78, 0x53, 0xff, 0x67, 0x32, 0xf5, 0x17, 0x2d, 0xea, 0x1f, 0x08, 0x5e, 0x8f, 0xb5, 0x07, 0x14, 0x39, 0x41, 0x1b, 0xba, 0x43, 0x0d, 0x2b, 0x8b, 0xc8, 0xf5, 0x8c, 0x95, 0x5e, 0x94, 0xae, 0x16, 0x7f, 0xc9, 0xca, 0x06, 0xfb, 0x26, 0x2c, 0x7c, 0x93, 0xd7, 0x10, 0xfd, 0x62, 0xba, }; static const unsigned char ecdh_brainpoolp256r1_314_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_314_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_314 = { .name = "ecdh_brainpoolp256r1_314", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_314_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_314_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_314_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 315 for ECDH, tcId is 17 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_315_peerpubkey[] = { 0x85, 0xd4, 0xf4, 0x16, 0x55, 0x2f, 0x4e, 0x51, 0xf9, 0x2d, 0x80, 0xb4, 0xd6, 0xe7, 0x1c, 0x64, 0x87, 0xc6, 0xfb, 0x0a, 0x10, 0x6e, 0xd4, 0x83, 0x95, 0x39, 0x3d, 0x63, 0x52, 0x8e, 0x6e, 0x78, 0x2b, 0xa4, 0xc5, 0x22, 0x8e, 0x60, 0x19, 0x1a, 0x76, 0x2d, 0xc0, 0x2c, 0xcd, 0xaa, 0xdb, 0x63, 0x36, 0x4e, 0xee, 0x8e, 0x50, 0x08, 0xb9, 0xb2, 0x5e, 0x05, 0x77, 0xf8, 0x19, 0x03, 0xcb, 0x53, }; static const unsigned char ecdh_brainpoolp256r1_315_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_315_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_315 = { .name = "ecdh_brainpoolp256r1_315", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_315_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_315_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_315_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 316 for ECDH, tcId is 18 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_316_peerpubkey[] = { 0x3b, 0x07, 0x2d, 0xa3, 0xde, 0xe8, 0x19, 0xab, 0xa6, 0x73, 0xab, 0xc3, 0xb1, 0xac, 0xeb, 0xff, 0x18, 0xe4, 0xa6, 0xa2, 0x0a, 0xf8, 0xd8, 0x17, 0xaf, 0x97, 0xc2, 0xb4, 0xa8, 0xc5, 0x35, 0x0a, 0x68, 0xe3, 0xbf, 0xb1, 0xd0, 0x35, 0xfd, 0xfd, 0xb8, 0x76, 0xb2, 0xad, 0xf8, 0x5d, 0x9a, 0xf1, 0xad, 0x32, 0xe5, 0x73, 0x99, 0xca, 0x90, 0x3a, 0x2d, 0x3f, 0xa4, 0x90, 0x21, 0x24, 0xd1, 0x94, }; static const unsigned char ecdh_brainpoolp256r1_316_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_316_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_316 = { .name = "ecdh_brainpoolp256r1_316", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_316_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_316_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_316_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 317 for ECDH, tcId is 19 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_317_peerpubkey[] = { 0x63, 0xe9, 0x2d, 0x05, 0xcf, 0xcd, 0xe1, 0x17, 0x91, 0x88, 0xbf, 0xf8, 0xba, 0x20, 0x43, 0xbe, 0xff, 0x5a, 0x30, 0xa1, 0xa6, 0xb8, 0xec, 0x1d, 0xfc, 0xd8, 0x27, 0x3c, 0xe2, 0xc3, 0x30, 0x54, 0x06, 0x07, 0x39, 0x2b, 0xdd, 0x31, 0x1a, 0x31, 0x3e, 0x3a, 0xe5, 0x31, 0x96, 0xb1, 0x44, 0x80, 0xb1, 0x96, 0x7a, 0x23, 0x5e, 0xbd, 0xbf, 0x18, 0x27, 0x16, 0x54, 0x77, 0x88, 0x4b, 0x5b, 0xe2, }; static const unsigned char ecdh_brainpoolp256r1_317_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_317_sharedsecret[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_317 = { .name = "ecdh_brainpoolp256r1_317", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_317_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_317_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_317_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 318 for ECDH, tcId is 20 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_318_peerpubkey[] = { 0x29, 0x21, 0x75, 0xf4, 0x90, 0xfa, 0x8a, 0xea, 0xd8, 0x13, 0xbc, 0x9b, 0x49, 0x23, 0x23, 0x3d, 0x99, 0x9e, 0xa6, 0x1e, 0x7f, 0x1f, 0x9d, 0x0b, 0x0a, 0x02, 0xf0, 0xf6, 0x4b, 0xcd, 0x2a, 0x72, 0x79, 0x5a, 0x29, 0x9e, 0x36, 0x8f, 0xa3, 0xb9, 0x3b, 0xa2, 0x51, 0x93, 0x14, 0x7a, 0xd3, 0x5c, 0xb0, 0x13, 0xf8, 0xbc, 0xe6, 0x69, 0x08, 0x67, 0x59, 0xf7, 0x0a, 0x56, 0xd4, 0x08, 0x3a, 0xe0, }; static const unsigned char ecdh_brainpoolp256r1_318_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_318_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x1c, 0x66, 0x46, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_318 = { .name = "ecdh_brainpoolp256r1_318", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_318_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_318_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_318_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 20 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 319 for ECDH, tcId is 21 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_319_peerpubkey[] = { 0x15, 0xe8, 0xd9, 0xef, 0xab, 0xc5, 0x10, 0x33, 0xeb, 0x4d, 0x7a, 0xb6, 0x3b, 0x46, 0xf2, 0xb9, 0x4d, 0x94, 0x2c, 0x1a, 0xbb, 0x9c, 0x43, 0x0e, 0xda, 0x60, 0x79, 0x03, 0x6e, 0xae, 0xd7, 0x6e, 0x02, 0x4f, 0x0f, 0x54, 0x36, 0xb9, 0x4b, 0x64, 0x70, 0xff, 0x93, 0x65, 0x84, 0x9a, 0x86, 0xb4, 0x0c, 0x14, 0xd5, 0x58, 0x8f, 0x3d, 0xd5, 0x26, 0x4b, 0xcf, 0x0b, 0xa3, 0x44, 0xd9, 0xfb, 0xfb, }; static const unsigned char ecdh_brainpoolp256r1_319_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_319_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_319 = { .name = "ecdh_brainpoolp256r1_319", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_319_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_319_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_319_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 21 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 320 for ECDH, tcId is 22 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_320_peerpubkey[] = { 0x15, 0xe8, 0xd9, 0xef, 0xab, 0xc5, 0x10, 0x33, 0xeb, 0x4d, 0x7a, 0xb6, 0x3b, 0x46, 0xf2, 0xb9, 0x4d, 0x94, 0x2c, 0x1a, 0xbb, 0x9c, 0x43, 0x0e, 0xda, 0x60, 0x79, 0x03, 0x6e, 0xae, 0xd7, 0x6e, 0xa7, 0xac, 0x48, 0x87, 0x6b, 0x35, 0x5e, 0x57, 0xcd, 0x66, 0x77, 0x2b, 0x18, 0xe9, 0x06, 0xbe, 0x62, 0x27, 0x20, 0xcb, 0x45, 0xe8, 0x4b, 0x01, 0xd4, 0x44, 0x3c, 0x79, 0xda, 0x94, 0x57, 0x7c, }; static const unsigned char ecdh_brainpoolp256r1_320_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_320_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_320 = { .name = "ecdh_brainpoolp256r1_320", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_320_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_320_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_320_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 22 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 321 for ECDH, tcId is 23 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_321_peerpubkey[] = { 0x37, 0x04, 0xa3, 0xe3, 0x04, 0x7e, 0x3c, 0x56, 0xe8, 0xc0, 0xd8, 0xc0, 0x28, 0xee, 0x1c, 0xe3, 0xce, 0xef, 0x5b, 0xa1, 0x00, 0x8b, 0xae, 0x06, 0x9a, 0xca, 0xe0, 0xf7, 0xdf, 0x5d, 0x0f, 0x4e, 0x39, 0x40, 0xcd, 0xdb, 0x1b, 0x2e, 0xe9, 0xa7, 0x83, 0x9f, 0xc7, 0x98, 0xa0, 0xf5, 0x29, 0x25, 0x83, 0x2b, 0x1d, 0xa3, 0x98, 0xc7, 0xdc, 0xb1, 0x1e, 0x9f, 0xaf, 0x36, 0x72, 0x0f, 0xf6, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_321_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_321_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe8, 0xe6, 0x15, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_321 = { .name = "ecdh_brainpoolp256r1_321", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_321_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_321_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_321_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 23 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 322 for ECDH, tcId is 24 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_322_peerpubkey[] = { 0x0a, 0x7f, 0x86, 0xbb, 0xfb, 0x3a, 0x60, 0x10, 0xd9, 0xa8, 0xfe, 0x72, 0xaa, 0x0f, 0x0f, 0xaf, 0xec, 0xb0, 0xbf, 0x2c, 0x18, 0xfc, 0x9b, 0x29, 0x37, 0xa7, 0xb1, 0x3f, 0xaa, 0x28, 0x6b, 0xe3, 0xa0, 0x93, 0x05, 0x5a, 0x18, 0x7b, 0x9e, 0x90, 0xbb, 0xca, 0xe8, 0xa7, 0x7b, 0xf1, 0x9f, 0xa4, 0xdd, 0x11, 0xbc, 0xe1, 0xbb, 0xc0, 0xb5, 0xd7, 0x54, 0x96, 0x53, 0xc4, 0xe7, 0xaa, 0xa1, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_322_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_322_sharedsecret[] = { 0x23, 0x48, 0x47, 0x89, 0xfe, 0xc2, 0xf4, 0x2f, 0xde, 0xfb, 0x0c, 0x4e, 0xc6, 0x56, 0x21, 0x7c, 0x4f, 0x53, 0x07, 0x46, 0x16, 0x30, 0x0f, 0x86, 0x32, 0x59, 0x58, 0xb7, 0x09, 0xe3, 0xff, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_322 = { .name = "ecdh_brainpoolp256r1_322", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_322_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_322_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_322_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP256t1, tcId is 24 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 323 for ECDH, tcId is 25 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_323_peerpubkey[] = { 0x54, 0xfd, 0x31, 0x96, 0xb3, 0x1c, 0x9b, 0x74, 0xc0, 0xf2, 0xdf, 0x90, 0x1f, 0x48, 0x0f, 0x72, 0xfe, 0x1e, 0x2c, 0xc3, 0xd0, 0x1e, 0xb1, 0x9e, 0xbb, 0x8b, 0x65, 0x3c, 0xa1, 0x39, 0x45, 0xa1, 0x02, 0xd6, 0xd2, 0x42, 0xe6, 0x7d, 0x1e, 0x60, 0xb7, 0xb7, 0x71, 0xcc, 0x73, 0xff, 0x93, 0x23, 0xaf, 0x45, 0x6d, 0xbc, 0xdf, 0x0b, 0x4e, 0x29, 0x16, 0xcb, 0x24, 0x48, 0xdd, 0xe4, 0xc6, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_323_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_323_sharedsecret[] = { 0x1d, 0x18, 0x4a, 0xdd, 0x66, 0xac, 0x6d, 0x1e, 0x4f, 0x53, 0xd3, 0xc3, 0xcc, 0x2d, 0x99, 0x7a, 0x18, 0x76, 0x54, 0x31, 0xd2, 0xe2, 0x61, 0xce, 0xb4, 0x57, 0xac, 0x61, 0xf7, 0xfe, 0xf4, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_323 = { .name = "ecdh_brainpoolp256r1_323", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_323_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_323_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_323_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP256t1, tcId is 25 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 324 for ECDH, tcId is 26 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_324_peerpubkey[] = { 0x62, 0xc1, 0x56, 0x70, 0x20, 0x2c, 0xd9, 0xa0, 0xcd, 0xf8, 0x81, 0xa0, 0xec, 0x62, 0x2d, 0x2b, 0x39, 0xb5, 0xe3, 0xe6, 0xf2, 0xf9, 0x55, 0x30, 0x12, 0x10, 0xf1, 0x5d, 0xa9, 0x8a, 0xca, 0xdf, 0x99, 0xfa, 0xae, 0x96, 0x99, 0x45, 0x30, 0xff, 0x39, 0xdd, 0xdb, 0x09, 0xf0, 0xee, 0x72, 0x2d, 0x6a, 0x6a, 0x4c, 0xfb, 0x51, 0xee, 0xe6, 0x50, 0x8c, 0xa4, 0xdf, 0x05, 0xb2, 0x46, 0x06, 0xb4, }; static const unsigned char ecdh_brainpoolp256r1_324_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_324_sharedsecret[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_324 = { .name = "ecdh_brainpoolp256r1_324", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_324_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_324_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_324_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 26 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 325 for ECDH, tcId is 27 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_325_peerpubkey[] = { 0x79, 0x9c, 0x72, 0x8b, 0xe0, 0x83, 0x00, 0xab, 0x54, 0xb5, 0x3e, 0x64, 0xd2, 0x77, 0xe7, 0x9c, 0x02, 0x73, 0x25, 0xdb, 0xa1, 0xcb, 0xba, 0xd5, 0xd4, 0x2f, 0x9a, 0x01, 0xc5, 0x7d, 0x82, 0xd8, 0x52, 0xd1, 0xd2, 0x09, 0x5f, 0x1c, 0x85, 0x4a, 0x48, 0xd1, 0x3f, 0x60, 0xec, 0x1c, 0x63, 0xda, 0x0f, 0x40, 0x99, 0x01, 0x6b, 0x08, 0xba, 0xff, 0x06, 0xa6, 0x80, 0xc4, 0x3d, 0x25, 0x63, 0xb6, }; static const unsigned char ecdh_brainpoolp256r1_325_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_325_sharedsecret[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_325 = { .name = "ecdh_brainpoolp256r1_325", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_325_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_325_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_325_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 27 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 326 for ECDH, tcId is 28 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_326_peerpubkey[] = { 0x62, 0xc1, 0x56, 0x70, 0x20, 0x2c, 0xd9, 0xa0, 0xcd, 0xf8, 0x81, 0xa0, 0xec, 0x62, 0x2d, 0x2b, 0x39, 0xb5, 0xe3, 0xe6, 0xf2, 0xf9, 0x55, 0x30, 0x12, 0x10, 0xf1, 0x5d, 0xa9, 0x8a, 0xca, 0xdf, 0x10, 0x00, 0xa9, 0x45, 0x08, 0xa9, 0x78, 0xbd, 0x04, 0x88, 0x2f, 0x86, 0xac, 0x95, 0x1b, 0x45, 0x03, 0xd1, 0xa9, 0x28, 0x83, 0x37, 0x39, 0xd7, 0x93, 0x6e, 0x69, 0x17, 0x6d, 0x28, 0x4c, 0xc3, }; static const unsigned char ecdh_brainpoolp256r1_326_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_326_sharedsecret[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_326 = { .name = "ecdh_brainpoolp256r1_326", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_326_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_326_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_326_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 28 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 327 for ECDH, tcId is 29 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_327_peerpubkey[] = { 0x79, 0x9c, 0x72, 0x8b, 0xe0, 0x83, 0x00, 0xab, 0x54, 0xb5, 0x3e, 0x64, 0xd2, 0x77, 0xe7, 0x9c, 0x02, 0x73, 0x25, 0xdb, 0xa1, 0xcb, 0xba, 0xd5, 0xd4, 0x2f, 0x9a, 0x01, 0xc5, 0x7d, 0x82, 0xd8, 0x57, 0x29, 0x85, 0xd2, 0x42, 0xd2, 0x24, 0x71, 0xf5, 0x94, 0xcb, 0x2f, 0xb1, 0x67, 0x29, 0x98, 0x5e, 0xfb, 0x5d, 0x22, 0x6a, 0x1d, 0x65, 0x29, 0x19, 0x6c, 0xc7, 0x58, 0xe2, 0x48, 0xef, 0xc1, }; static const unsigned char ecdh_brainpoolp256r1_327_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_327_sharedsecret[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_327 = { .name = "ecdh_brainpoolp256r1_327", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_327_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_327_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_327_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 29 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 328 for ECDH, tcId is 30 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_328_peerpubkey[] = { 0x3d, 0x88, 0xf3, 0xa6, 0x36, 0xfa, 0x94, 0xd0, 0x6d, 0x5f, 0xb3, 0x53, 0x14, 0xd3, 0x4c, 0x51, 0x40, 0x3b, 0x72, 0x36, 0x19, 0x31, 0xbd, 0x35, 0x86, 0xfe, 0xc2, 0xaf, 0x98, 0xba, 0x62, 0xa9, 0x97, 0x3d, 0x2d, 0xa8, 0x3c, 0xfb, 0xa4, 0xeb, 0x3c, 0x99, 0x5f, 0x2b, 0xbf, 0x17, 0x7f, 0x50, 0x51, 0xff, 0xf9, 0xdd, 0xb3, 0x86, 0x28, 0x45, 0xb7, 0x0d, 0xa1, 0x38, 0x62, 0x8e, 0xef, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_328_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_328_sharedsecret[] = { 0x77, 0x0c, 0x84, 0x30, 0x9d, 0x95, 0xd8, 0x13, 0x41, 0x5d, 0x36, 0xb8, 0x12, 0x71, 0x43, 0xd7, 0xc9, 0x7d, 0xc5, 0xee, 0xcb, 0x76, 0x40, 0x49, 0x63, 0x1f, 0x1d, 0x8e, 0x6c, 0x6e, 0x3c, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_328 = { .name = "ecdh_brainpoolp256r1_328", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_328_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_328_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_328_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 30 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 329 for ECDH, tcId is 31 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_329_peerpubkey[] = { 0x93, 0x0f, 0xb9, 0x32, 0x1b, 0x31, 0x8d, 0xc4, 0x31, 0x59, 0xa5, 0x5b, 0x8b, 0x4a, 0xb6, 0x87, 0x3f, 0xb2, 0xab, 0xd8, 0x5b, 0x27, 0x92, 0xb4, 0xb1, 0x46, 0xba, 0x84, 0xca, 0x1f, 0x0f, 0x81, 0x7b, 0xbc, 0x8c, 0xe0, 0xa3, 0xf4, 0x27, 0x2c, 0x01, 0x43, 0x1d, 0xa8, 0xcc, 0x41, 0x34, 0x82, 0x03, 0x53, 0xb2, 0xdf, 0xdc, 0x0f, 0xb1, 0xd1, 0xef, 0x03, 0x97, 0xb5, 0xdd, 0x10, 0x2f, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_329_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_329_sharedsecret[] = { 0x84, 0x4e, 0x5c, 0x76, 0xbc, 0xcf, 0x37, 0x22, 0xbe, 0x43, 0x95, 0x14, 0x6b, 0x4a, 0x76, 0xac, 0x00, 0x31, 0x1c, 0xba, 0xde, 0x49, 0xd6, 0xe9, 0xc5, 0xbc, 0x35, 0xa5, 0xbc, 0x2c, 0x75, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_329 = { .name = "ecdh_brainpoolp256r1_329", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_329_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_329_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_329_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 31 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 330 for ECDH, tcId is 32 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_330_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xe0, 0xe9, 0xe8, 0xd9, 0x8f, 0xb8, 0x9d, 0xa2, 0xa3, 0x2b, 0x2c, 0x76, 0x18, 0xb2, 0x6b, 0xb9, 0x9b, 0x92, 0x0f, 0x02, 0xa5, 0xe8, 0x31, 0xa1, 0x42, 0xe6, 0xc8, 0x67, 0x31, 0x10, 0xcd, }; static const unsigned char ecdh_brainpoolp256r1_330_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_330_sharedsecret[] = { 0x59, 0x9c, 0xde, 0x22, 0x07, 0x0e, 0x96, 0xa8, 0x86, 0x58, 0xc4, 0xa5, 0xa8, 0x3f, 0x37, 0x23, 0x54, 0x2a, 0x40, 0x2e, 0xd5, 0x06, 0x63, 0x9f, 0xf9, 0x01, 0x6f, 0xe4, 0xa2, 0x6d, 0x4c, 0x25, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_330 = { .name = "ecdh_brainpoolp256r1_330", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_330_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_330_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_330_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 331 for ECDH, tcId is 33 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_331_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x26, 0xcc, 0xfd, 0xa8, 0x23, 0x4f, 0xa9, 0xb7, 0x03, 0x16, 0xb5, 0xec, 0x4d, 0xa2, 0x22, 0x97, 0x2b, 0x34, 0xa9, 0x70, 0xcf, 0xe6, 0xdd, 0x99, 0x83, 0xa0, 0x5e, 0x2f, 0xa7, 0x46, 0xb9, 0x02, }; static const unsigned char ecdh_brainpoolp256r1_331_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_331_sharedsecret[] = { 0x4b, 0x35, 0xa3, 0xca, 0xa1, 0x0c, 0xd7, 0x70, 0x34, 0xe0, 0x73, 0x7e, 0x18, 0xbc, 0x52, 0x07, 0x1f, 0x64, 0xb8, 0xa2, 0xe1, 0x4d, 0x7a, 0x02, 0xdf, 0x8a, 0x36, 0x88, 0x6a, 0xa4, 0x67, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_331 = { .name = "ecdh_brainpoolp256r1_331", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_331_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_331_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_331_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 332 for ECDH, tcId is 34 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_332_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1e, 0x8d, 0x93, 0x92, 0xfb, 0xa7, 0xad, 0x1f, 0x3e, 0xd5, 0xb5, 0x74, 0x6c, 0xd9, 0x30, 0x37, 0x0a, 0x81, 0xd7, 0x48, 0x3f, 0xe3, 0x20, 0x03, 0xe3, 0x12, 0x64, 0x82, 0x9c, 0x9f, 0xec, 0x8d, }; static const unsigned char ecdh_brainpoolp256r1_332_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_332_sharedsecret[] = { 0x1d, 0x1d, 0x5a, 0x6e, 0xe2, 0x5b, 0x5f, 0xe4, 0x1e, 0x01, 0x5f, 0x19, 0xcb, 0x43, 0x49, 0x36, 0x32, 0x3e, 0xb2, 0x4d, 0xa0, 0x9b, 0xab, 0x87, 0x3e, 0x3c, 0x25, 0xbe, 0xa7, 0xaf, 0x87, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_332 = { .name = "ecdh_brainpoolp256r1_332", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_332_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_332_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_332_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 333 for ECDH, tcId is 35 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_333_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xef, 0x5f, 0xa5, 0xab, 0x0c, 0xeb, 0xc1, 0x8b, 0x64, 0x11, 0x3e, 0xb8, 0xc0, 0x40, 0xdd, 0x74, 0x31, 0x84, 0xe7, 0xc8, 0xac, 0x68, 0xf1, 0x23, 0xf3, 0xc3, 0xd9, 0x45, 0x58, 0x55, 0x24, }; static const unsigned char ecdh_brainpoolp256r1_333_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_333_sharedsecret[] = { 0x11, 0x1f, 0xba, 0xe4, 0x6b, 0xa6, 0x38, 0x9c, 0x58, 0x79, 0xd0, 0x2e, 0x18, 0x63, 0x30, 0x1f, 0xfa, 0x9e, 0x19, 0x61, 0xd7, 0x21, 0xa5, 0x7c, 0x6d, 0x88, 0x84, 0x71, 0x54, 0x39, 0x88, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_333 = { .name = "ecdh_brainpoolp256r1_333", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_333_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_333_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_333_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 334 for ECDH, tcId is 36 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_334_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2e, 0x65, 0xaf, 0xc1, 0x15, 0xd0, 0xfe, 0x1a, 0x86, 0xf3, 0x14, 0x62, 0x90, 0x14, 0xd6, 0x85, 0x67, 0x16, 0xa4, 0xd9, 0xa0, 0x11, 0x4c, 0x71, 0x30, 0x51, 0xdd, 0x70, 0x0d, 0xcc, 0x1a, 0xde, }; static const unsigned char ecdh_brainpoolp256r1_334_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_334_sharedsecret[] = { 0x23, 0xb3, 0x6c, 0x78, 0xc2, 0x70, 0x76, 0xe2, 0x3d, 0x6a, 0xb5, 0x6c, 0x2e, 0x96, 0x53, 0xd2, 0x72, 0x92, 0x2c, 0x9f, 0xc1, 0xa1, 0x76, 0xb8, 0xb6, 0xc2, 0xe7, 0x0a, 0xb7, 0xc8, 0x83, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_334 = { .name = "ecdh_brainpoolp256r1_334", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_334_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_334_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_334_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 335 for ECDH, tcId is 37 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_335_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x31, 0x62, 0x59, 0x16, 0xfc, 0x4e, 0x15, 0x7b, 0x1c, 0xf9, 0x3f, 0x3c, 0x80, 0x35, 0x2b, 0xa4, 0xdb, 0xf2, 0x6e, 0xff, 0xbd, 0x87, 0xd3, 0x1a, 0x2a, 0x80, 0x8d, 0x00, 0x10, 0x81, 0xf0, 0x6a, }; static const unsigned char ecdh_brainpoolp256r1_335_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_335_sharedsecret[] = { 0x27, 0xdf, 0xfb, 0x62, 0xa6, 0xec, 0x9f, 0xfb, 0x3d, 0x04, 0x80, 0xc4, 0x5b, 0xa0, 0x0c, 0x74, 0x81, 0x93, 0xaf, 0xcc, 0x08, 0x79, 0xd7, 0x6b, 0x47, 0xf8, 0xee, 0x35, 0x67, 0x85, 0xde, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_335 = { .name = "ecdh_brainpoolp256r1_335", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_335_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_335_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_335_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 336 for ECDH, tcId is 38 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_336_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x33, 0x0b, 0x90, 0x2c, 0x4f, 0x6a, 0x24, 0x86, 0x74, 0x4f, 0x36, 0xad, 0xc6, 0x00, 0x0e, 0x11, 0x6a, 0x2c, 0xbc, 0xb1, 0x4f, 0xf9, 0xf4, 0x7a, 0xa3, 0x63, 0x19, 0xfe, 0xf9, 0x3a, 0xd5, 0xea, }; static const unsigned char ecdh_brainpoolp256r1_336_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_336_sharedsecret[] = { 0x9b, 0xff, 0xd4, 0x51, 0xce, 0xad, 0xc2, 0x7d, 0xf8, 0x8a, 0x13, 0x82, 0x98, 0x52, 0xdd, 0xab, 0x0b, 0x29, 0x38, 0x95, 0x2f, 0x5c, 0x58, 0xfd, 0xae, 0x7d, 0xd2, 0x22, 0x48, 0x84, 0x0b, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_336 = { .name = "ecdh_brainpoolp256r1_336", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_336_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_336_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_336_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 337 for ECDH, tcId is 39 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_337_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x2c, 0x6f, 0xb3, 0x30, 0x2d, 0xd9, 0x3d, 0xc2, 0x5d, 0x2c, 0x67, 0x92, 0xc2, 0xac, 0x6f, 0x86, 0x24, 0x7c, 0x4d, 0x39, 0x63, 0x7e, 0xe1, 0x1d, 0x92, 0x67, 0x65, 0x80, 0x17, 0xf0, 0x05, 0x5a, }; static const unsigned char ecdh_brainpoolp256r1_337_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_337_sharedsecret[] = { 0x26, 0x7a, 0x69, 0xf4, 0xb3, 0x94, 0x5f, 0x8d, 0x32, 0x3f, 0xf1, 0xa5, 0x26, 0xbc, 0xa5, 0x66, 0xe7, 0xed, 0x98, 0x06, 0xd6, 0xa6, 0xdc, 0x8f, 0x45, 0x87, 0xab, 0x22, 0x9a, 0x5f, 0x3a, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_337 = { .name = "ecdh_brainpoolp256r1_337", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_337_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_337_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_337_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 338 for ECDH, tcId is 40 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_338_peerpubkey[] = { 0x23, 0x10, 0xa8, 0x7d, 0xfe, 0x5f, 0xc2, 0x5d, 0x0c, 0x0f, 0x51, 0xf0, 0xd3, 0x79, 0xef, 0x19, 0xbe, 0x68, 0x7b, 0xef, 0x34, 0x79, 0x5d, 0xc2, 0xfd, 0x3f, 0xcc, 0x2d, 0x1c, 0xfd, 0xf1, 0x89, 0x2f, 0xb2, 0x44, 0x82, 0x56, 0x51, 0xa9, 0x4d, 0x4d, 0x93, 0xff, 0x90, 0xb7, 0x41, 0x30, 0xf7, 0x74, 0x83, 0xe5, 0x69, 0x9d, 0x68, 0xa7, 0xa4, 0x3a, 0xe6, 0x93, 0xbc, 0xa8, 0x56, 0x88, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_338_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_338_sharedsecret[] = { 0x4d, 0x3d, 0x61, 0xbf, 0x26, 0x57, 0x3a, 0x2e, 0xc1, 0xd9, 0xae, 0x6b, 0xe6, 0x2d, 0x1a, 0x30, 0xb7, 0x1a, 0xa9, 0x63, 0x66, 0x0a, 0x4f, 0xf3, 0x09, 0x55, 0x7e, 0x61, 0x67, 0x42, 0x11, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_338 = { .name = "ecdh_brainpoolp256r1_338", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_338_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_338_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_338_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 339 for ECDH, tcId is 41 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_339_peerpubkey[] = { 0x33, 0x67, 0xa0, 0xbb, 0x5a, 0x87, 0x07, 0x24, 0x18, 0x33, 0x4c, 0xea, 0xd5, 0x22, 0x7a, 0xed, 0xfc, 0x06, 0x3f, 0x1a, 0x73, 0x40, 0xdc, 0x1c, 0x7c, 0x8e, 0x57, 0x6e, 0xb4, 0x11, 0x8e, 0xbf, 0x46, 0x48, 0xa7, 0xb0, 0x63, 0x96, 0x56, 0x22, 0x7b, 0xa7, 0xc4, 0xb3, 0x46, 0x35, 0x4b, 0x24, 0x65, 0x09, 0x9f, 0x84, 0x22, 0xd1, 0xbe, 0x92, 0xf0, 0xf4, 0x5e, 0xe2, 0x3b, 0x7e, 0x2d, 0x1a, }; static const unsigned char ecdh_brainpoolp256r1_339_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_339_sharedsecret[] = { 0x79, 0x9c, 0x48, 0x21, 0xe9, 0x28, 0x15, 0xb9, 0x33, 0x5e, 0x77, 0x74, 0x1a, 0x9b, 0xca, 0x23, 0x33, 0x05, 0x38, 0x86, 0xa3, 0x77, 0x7a, 0xe6, 0x37, 0xd0, 0x2e, 0x44, 0x20, 0xd8, 0x2a, 0x66, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_339 = { .name = "ecdh_brainpoolp256r1_339", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_339_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_339_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_339_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 41 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 340 for ECDH, tcId is 42 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_340_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x0c, 0xf9, 0xab, 0x58, 0x99, 0xc5, 0x92, 0x16, 0xd6, 0xd1, 0xbc, 0x78, 0x6d, 0xdf, 0x62, 0x21, 0xe3, 0x74, 0xcd, 0x37, 0xa8, 0xb7, 0x45, 0xe8, 0x26, 0xc6, 0x49, 0x5b, 0xed, 0x0a, 0x56, 0xb0, }; static const unsigned char ecdh_brainpoolp256r1_340_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_340_sharedsecret[] = { 0xa4, 0xa2, 0xd3, 0xbc, 0xc6, 0x93, 0x80, 0x39, 0x60, 0x89, 0xe7, 0x19, 0xab, 0x8c, 0x77, 0xe5, 0x43, 0x7e, 0xe5, 0x89, 0xe3, 0x9d, 0x98, 0xea, 0xe7, 0xbd, 0x17, 0xce, 0x5c, 0x1d, 0x5b, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_340 = { .name = "ecdh_brainpoolp256r1_340", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_340_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_340_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_340_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 42 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 341 for ECDH, tcId is 43 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_341_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x01, 0xa1, 0xad, 0x42, 0xb3, 0xff, 0x22, 0xba, 0x6b, 0xf3, 0xc9, 0x4b, 0x55, 0xcf, 0xa4, 0xd1, 0x3c, 0x6e, 0x14, 0x0d, 0x3c, 0x44, 0x96, 0x31, 0x98, 0xf4, 0x96, 0xeb, 0xbc, 0x50, 0x43, 0x9a, }; static const unsigned char ecdh_brainpoolp256r1_341_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_341_sharedsecret[] = { 0x3a, 0x6f, 0xf3, 0xc1, 0xd4, 0x90, 0xf6, 0x52, 0xf5, 0x17, 0x8a, 0x79, 0x4b, 0x8c, 0xf8, 0x25, 0xb5, 0x04, 0x49, 0x48, 0xf6, 0xeb, 0xda, 0x67, 0x31, 0x0c, 0x11, 0xfe, 0xc1, 0xad, 0x2b, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_341 = { .name = "ecdh_brainpoolp256r1_341", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_341_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_341_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_341_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 43 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 342 for ECDH, tcId is 44 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_342_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x36, 0x9a, 0x4e, 0x24, 0xf0, 0x10, 0x26, 0x0d, 0x7c, 0x25, 0x60, 0xf7, 0xdc, 0x19, 0xc4, 0x1c, 0xde, 0x6b, 0x5c, 0x50, 0x3b, 0x65, 0x63, 0x67, 0x85, 0x80, 0xf0, 0xd2, 0x2c, 0x74, 0xdd, 0xa4, }; static const unsigned char ecdh_brainpoolp256r1_342_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_342_sharedsecret[] = { 0x2d, 0x59, 0xb8, 0x95, 0x06, 0x2c, 0x13, 0xd4, 0xe5, 0xb5, 0xe0, 0xb7, 0x7e, 0xf2, 0x73, 0xe9, 0x4e, 0x55, 0x8e, 0x72, 0x4f, 0x62, 0x41, 0xaf, 0x5b, 0xb1, 0x1b, 0xf2, 0x3a, 0xcb, 0xf8, 0x51, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_342 = { .name = "ecdh_brainpoolp256r1_342", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_342_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_342_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_342_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 44 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 343 for ECDH, tcId is 45 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_343_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x77, 0xb0, 0x43, 0xdf, 0xe5, 0x4f, 0x78, 0xc7, 0x35, 0x54, 0x3b, 0x75, 0x2b, 0x3a, 0xec, 0x04, 0x3f, 0x65, 0x6e, 0x5f, 0x22, 0xdd, 0x6d, 0x95, 0x6c, 0xd6, 0x42, 0xe3, 0x39, 0x08, 0x81, }; static const unsigned char ecdh_brainpoolp256r1_343_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_343_sharedsecret[] = { 0x83, 0x64, 0x0b, 0xe4, 0x28, 0xf7, 0xa4, 0xf8, 0x0a, 0xe2, 0x67, 0x17, 0x99, 0xb5, 0xba, 0x18, 0x81, 0x24, 0x1f, 0xd0, 0x54, 0xa7, 0xf2, 0xdc, 0xe0, 0x25, 0x4c, 0x07, 0x53, 0x1a, 0xbe, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_343 = { .name = "ecdh_brainpoolp256r1_343", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_343_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_343_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_343_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 45 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 344 for ECDH, tcId is 46 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_344_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x89, 0x45, 0xdf, 0x48, 0x87, 0x79, 0x23, 0x5a, 0x26, 0x37, 0xc3, 0x9a, 0x4a, 0x85, 0xab, 0x70, 0x7b, 0xd5, 0x6e, 0x7c, 0x22, 0xb9, 0xad, 0x41, 0xb6, 0x52, 0x56, 0x01, 0x23, 0xb6, 0xaf, }; static const unsigned char ecdh_brainpoolp256r1_344_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_344_sharedsecret[] = { 0x80, 0x1e, 0x5f, 0x5d, 0x61, 0xc6, 0x66, 0xbc, 0x08, 0x9a, 0x42, 0x65, 0xc4, 0x0d, 0x2a, 0x3f, 0xee, 0x0d, 0xb2, 0x0a, 0x0f, 0x78, 0xe3, 0x29, 0xbb, 0xf2, 0x79, 0x33, 0x30, 0xab, 0x04, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_344 = { .name = "ecdh_brainpoolp256r1_344", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_344_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_344_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_344_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 46 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 345 for ECDH, tcId is 47 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_345_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x24, 0xbb, 0xe5, 0xb0, 0xb8, 0x70, 0x22, 0x58, 0xd2, 0x46, 0x2a, 0x8b, 0xda, 0x59, 0xa3, 0x43, 0xb9, 0x7c, 0x3f, 0xb1, 0xd4, 0x00, 0x54, 0x16, 0x80, 0x2b, 0xeb, 0xd6, 0x28, 0xe7, 0xd0, }; static const unsigned char ecdh_brainpoolp256r1_345_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_345_sharedsecret[] = { 0xa4, 0x09, 0xa8, 0x50, 0x67, 0xdd, 0x63, 0xe5, 0xea, 0xb3, 0xae, 0xc3, 0xd7, 0x4c, 0xb7, 0xf0, 0x71, 0x83, 0x92, 0x47, 0xdb, 0xf9, 0x7b, 0x6d, 0xe5, 0x92, 0x98, 0x80, 0x95, 0x50, 0x9d, 0x0b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_345 = { .name = "ecdh_brainpoolp256r1_345", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_345_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_345_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_345_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 47 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 346 for ECDH, tcId is 48 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_346_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x13, 0xa0, 0x34, 0x6d, 0xb1, 0x4d, 0x55, 0xd1, 0xbc, 0xc2, 0x70, 0x79, 0xb6, 0x88, 0x64, 0xac, 0x32, 0x88, 0x5b, 0x5b, 0xdf, 0xc3, 0xc9, 0xdb, 0x6f, 0x85, 0xa3, 0x5d, 0x3d, 0xf4, 0xc3, 0x9b, }; static const unsigned char ecdh_brainpoolp256r1_346_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_346_sharedsecret[] = { 0x66, 0xd7, 0x57, 0x88, 0x46, 0x34, 0x86, 0x1f, 0x28, 0xbb, 0xe4, 0x5b, 0x50, 0x2f, 0x89, 0x52, 0x33, 0xb0, 0xba, 0x1c, 0x69, 0xbf, 0x45, 0x80, 0x2f, 0x80, 0xea, 0xc5, 0xc8, 0x37, 0x75, 0x0f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_346 = { .name = "ecdh_brainpoolp256r1_346", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_346_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_346_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_346_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 48 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 347 for ECDH, tcId is 49 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_347_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x1c, 0x66, 0x46, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x07, 0xf4, 0xa4, 0x1e, 0x79, 0x04, 0xd3, 0xe7, 0xa9, 0xe6, 0xe6, 0xd7, 0x0b, 0x09, 0x33, 0x61, 0xdc, 0x5e, 0xa0, 0x97, 0xc3, 0x76, 0x7e, 0x10, 0x13, 0xf5, 0x86, 0x8f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_347_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_347_sharedsecret[] = { 0x94, 0x45, 0x6b, 0xf9, 0xe3, 0x3c, 0x39, 0x23, 0x15, 0xc5, 0xbc, 0x35, 0x0a, 0x5d, 0x48, 0xe3, 0x9f, 0xc7, 0xa9, 0xff, 0x5e, 0xa6, 0xfe, 0x30, 0x9e, 0x24, 0xa8, 0x92, 0x92, 0x69, 0x0d, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_347 = { .name = "ecdh_brainpoolp256r1_347", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_347_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_347_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_347_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 49 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 348 for ECDH, tcId is 50 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_348_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x09, 0x3b, 0x3d, 0x19, 0x10, 0xba, 0xda, 0x32, 0xf9, 0x9c, 0x20, 0x97, 0x7c, 0xff, 0x95, 0x1d, 0x97, 0x07, 0x2f, 0xea, 0x05, 0x8e, 0x87, 0x9c, 0x4b, 0xfe, 0xef, 0xd4, 0x04, }; static const unsigned char ecdh_brainpoolp256r1_348_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_348_sharedsecret[] = { 0x41, 0xe2, 0x15, 0x3f, 0x94, 0x11, 0x10, 0x29, 0x65, 0xa2, 0xf6, 0x3f, 0x88, 0x74, 0xaa, 0x7d, 0xb3, 0x35, 0x71, 0x46, 0x6b, 0x16, 0x0e, 0xa3, 0x3e, 0x9a, 0xf6, 0x72, 0x1c, 0xe5, 0xbb, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_348 = { .name = "ecdh_brainpoolp256r1_348", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_348_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_348_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_348_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 50 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 349 for ECDH, tcId is 51 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_349_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xfb, 0x57, 0xd2, 0x66, 0xb1, 0x90, 0xab, 0x83, 0x8b, 0xd7, 0x97, 0x01, 0x62, 0xf5, 0xf5, 0x6e, 0xa6, 0xd8, 0x8c, 0xcd, 0xf6, 0x36, 0x22, 0x91, 0x8b, 0xab, 0xd1, 0x20, 0x7e, 0x7f, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_349_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_349_sharedsecret[] = { 0x41, 0xe2, 0x15, 0x3f, 0x94, 0x11, 0x10, 0x29, 0x65, 0xa2, 0xf6, 0x3f, 0x88, 0x74, 0xaa, 0x7d, 0xb3, 0x35, 0x71, 0x46, 0x6b, 0x16, 0x0e, 0xa3, 0x3e, 0x9a, 0xf6, 0x72, 0x1c, 0xe5, 0xbb, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_349 = { .name = "ecdh_brainpoolp256r1_349", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_349_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_349_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_349_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 51 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 350 for ECDH, tcId is 52 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_350_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe8, 0xe6, 0x15, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8a, 0x3a, 0xf7, 0xf7, 0xa8, 0xa0, 0x07, 0x01, 0xcf, 0xee, 0x7f, 0x39, 0x0f, 0x84, 0xed, 0x21, 0xd3, 0x74, 0x62, 0x3c, 0x20, 0xe5, 0xc8, 0x22, 0x76, 0x0d, 0x9d, 0xe3, 0xb0, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_350_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_350_sharedsecret[] = { 0x79, 0xc4, 0xbd, 0xad, 0xa7, 0x6d, 0x72, 0x19, 0xc0, 0xd6, 0x5b, 0xf2, 0x20, 0xb7, 0x14, 0x44, 0x0f, 0x83, 0x8a, 0x2a, 0x1b, 0x36, 0xef, 0xd6, 0x27, 0x6d, 0xe3, 0x5b, 0x79, 0xbe, 0xe1, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_350 = { .name = "ecdh_brainpoolp256r1_350", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_350_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_350_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_350_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 52 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 351 for ECDH, tcId is 53 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_351_peerpubkey[] = { 0x23, 0x48, 0x47, 0x89, 0xfe, 0xc2, 0xf4, 0x2f, 0xde, 0xfb, 0x0c, 0x4e, 0xc6, 0x56, 0x21, 0x7c, 0x4f, 0x53, 0x07, 0x46, 0x16, 0x30, 0x0f, 0x86, 0x32, 0x59, 0x58, 0xb7, 0x09, 0xe3, 0xff, 0xc0, 0x99, 0xd1, 0xc0, 0xc4, 0x9a, 0x35, 0x9a, 0x0c, 0x62, 0x51, 0xb8, 0x65, 0x3b, 0x65, 0x31, 0x1a, 0x28, 0x8b, 0x99, 0xee, 0x6f, 0xcf, 0x2f, 0x22, 0xdf, 0x78, 0x86, 0xea, 0xec, 0x94, 0x7a, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_351_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_351_sharedsecret[] = { 0x31, 0x21, 0x9d, 0x91, 0xb7, 0x16, 0xc4, 0x89, 0x7d, 0xec, 0xe4, 0x00, 0xf3, 0x5c, 0xb7, 0x10, 0x3d, 0xf6, 0x10, 0xbf, 0xfd, 0xfd, 0xb9, 0x0b, 0xf7, 0x6b, 0xe2, 0x74, 0xff, 0x2b, 0xf9, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_351 = { .name = "ecdh_brainpoolp256r1_351", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_351_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_351_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_351_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 53 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 352 for ECDH, tcId is 54 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_352_peerpubkey[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, 0x35, 0xf4, 0xa1, 0x00, 0x1e, 0xea, 0x1b, 0xf1, 0xeb, 0xbf, 0xd6, 0x43, 0xaf, 0x14, 0x6b, 0x99, 0x09, 0x93, 0xe9, 0x8e, 0x71, 0xaf, 0x44, 0x14, 0xe7, 0x36, 0x94, 0x1c, 0x8e, 0x44, 0x47, 0x16, }; static const unsigned char ecdh_brainpoolp256r1_352_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_352_sharedsecret[] = { 0x70, 0x34, 0x13, 0xb1, 0x9d, 0x8f, 0x41, 0x59, 0x89, 0xf7, 0x0a, 0xe5, 0x07, 0xb4, 0xaf, 0xd9, 0x90, 0x05, 0x04, 0xe3, 0x72, 0x52, 0x64, 0xa1, 0x21, 0xbe, 0xf9, 0x66, 0xa3, 0x0f, 0x89, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_352 = { .name = "ecdh_brainpoolp256r1_352", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_352_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_352_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_352_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 54 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 353 for ECDH, tcId is 55 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_353_peerpubkey[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, 0x74, 0x06, 0xb6, 0xdb, 0x83, 0x04, 0x8d, 0xca, 0x52, 0xa6, 0x34, 0x4c, 0xee, 0x6f, 0x21, 0xd9, 0x64, 0xa8, 0x0c, 0x95, 0x63, 0x76, 0xdc, 0x13, 0x38, 0xdc, 0xb4, 0x00, 0x91, 0x2a, 0x0c, 0x61, }; static const unsigned char ecdh_brainpoolp256r1_353_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_353_sharedsecret[] = { 0x70, 0x34, 0x13, 0xb1, 0x9d, 0x8f, 0x41, 0x59, 0x89, 0xf7, 0x0a, 0xe5, 0x07, 0xb4, 0xaf, 0xd9, 0x90, 0x05, 0x04, 0xe3, 0x72, 0x52, 0x64, 0xa1, 0x21, 0xbe, 0xf9, 0x66, 0xa3, 0x0f, 0x89, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_353 = { .name = "ecdh_brainpoolp256r1_353", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_353_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_353_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_353_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 55 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 354 for ECDH, tcId is 56 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_354_peerpubkey[] = { 0x77, 0x0c, 0x84, 0x30, 0x9d, 0x95, 0xd8, 0x13, 0x41, 0x5d, 0x36, 0xb8, 0x12, 0x71, 0x43, 0xd7, 0xc9, 0x7d, 0xc5, 0xee, 0xcb, 0x76, 0x40, 0x49, 0x63, 0x1f, 0x1d, 0x8e, 0x6c, 0x6e, 0x3c, 0xe4, 0x92, 0xc0, 0xe8, 0xc5, 0xca, 0x23, 0x71, 0xc0, 0x82, 0xe9, 0x57, 0x64, 0x85, 0xee, 0xf5, 0x3d, 0x15, 0x36, 0xa2, 0x7f, 0xf0, 0xd5, 0x9c, 0xe5, 0x11, 0x6a, 0x04, 0x7d, 0xf7, 0xf0, 0x8c, 0xe0, }; static const unsigned char ecdh_brainpoolp256r1_354_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_354_sharedsecret[] = { 0x86, 0xc4, 0x01, 0xc6, 0x81, 0x03, 0x1d, 0x35, 0x99, 0x1e, 0xbe, 0xaa, 0xdf, 0x99, 0x6a, 0x03, 0xb4, 0xb4, 0x71, 0x95, 0x1f, 0x6f, 0x64, 0x7c, 0x15, 0x5f, 0xc2, 0xd7, 0x40, 0x25, 0x49, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_354 = { .name = "ecdh_brainpoolp256r1_354", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_354_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_354_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_354_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 56 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 355 for ECDH, tcId is 57 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_355_peerpubkey[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, 0x6d, 0xf2, 0x17, 0xe1, 0x74, 0x4f, 0x8e, 0x84, 0xeb, 0xc1, 0x7f, 0x41, 0x2d, 0x4c, 0x31, 0x72, 0x4e, 0x78, 0x36, 0x56, 0x6a, 0x40, 0xb3, 0x03, 0x85, 0x7b, 0x9a, 0x0d, 0xd6, 0xf6, 0x82, 0x17, }; static const unsigned char ecdh_brainpoolp256r1_355_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_355_sharedsecret[] = { 0x4e, 0x65, 0x10, 0x01, 0xd9, 0xda, 0xf7, 0x6e, 0xc7, 0xed, 0x6a, 0xf9, 0x18, 0x81, 0x58, 0x45, 0xf7, 0x45, 0x39, 0xae, 0xa6, 0x15, 0xaa, 0x64, 0x8a, 0xbe, 0xe3, 0xd1, 0x63, 0x1a, 0xda, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_355 = { .name = "ecdh_brainpoolp256r1_355", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_355_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_355_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_355_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 57 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 356 for ECDH, tcId is 58 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_356_peerpubkey[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, 0x3c, 0x09, 0x3f, 0xfa, 0x2d, 0x9f, 0x1b, 0x37, 0x52, 0xa4, 0x8b, 0x4f, 0x70, 0x37, 0x5c, 0x00, 0x1f, 0xc3, 0xbf, 0xcd, 0x6a, 0xe5, 0x6d, 0x24, 0x9a, 0x97, 0xae, 0x0f, 0x48, 0x77, 0xd1, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_356_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_356_sharedsecret[] = { 0x4e, 0x65, 0x10, 0x01, 0xd9, 0xda, 0xf7, 0x6e, 0xc7, 0xed, 0x6a, 0xf9, 0x18, 0x81, 0x58, 0x45, 0xf7, 0x45, 0x39, 0xae, 0xa6, 0x15, 0xaa, 0x64, 0x8a, 0xbe, 0xe3, 0xd1, 0x63, 0x1a, 0xda, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_356 = { .name = "ecdh_brainpoolp256r1_356", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_356_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_356_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_356_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 58 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 357 for ECDH, tcId is 59 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_357_peerpubkey[] = { 0x84, 0x4e, 0x5c, 0x76, 0xbc, 0xcf, 0x37, 0x22, 0xbe, 0x43, 0x95, 0x14, 0x6b, 0x4a, 0x76, 0xac, 0x00, 0x31, 0x1c, 0xba, 0xde, 0x49, 0xd6, 0xe9, 0xc5, 0xbc, 0x35, 0xa5, 0xbc, 0x2c, 0x75, 0x48, 0x48, 0x34, 0x36, 0xa1, 0xad, 0xfb, 0xbd, 0x6f, 0x5f, 0xae, 0xa5, 0x46, 0xbe, 0xc9, 0xb4, 0x31, 0x3d, 0x3a, 0xac, 0x98, 0xe7, 0x2c, 0xee, 0xae, 0xf2, 0x22, 0x5a, 0x3e, 0x06, 0xf6, 0xa0, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_357_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_357_sharedsecret[] = { 0x28, 0xb3, 0xfc, 0x85, 0xe5, 0x55, 0x9f, 0x77, 0xeb, 0x0d, 0x1d, 0x56, 0xb1, 0xc2, 0x29, 0xec, 0xbe, 0xb7, 0x40, 0x2a, 0x5c, 0x4c, 0x4c, 0x5c, 0x3e, 0x66, 0xbc, 0xee, 0x0c, 0x05, 0x67, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_357 = { .name = "ecdh_brainpoolp256r1_357", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_357_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_357_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_357_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 59 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 358 for ECDH, tcId is 60 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_358_peerpubkey[] = { 0x1d, 0x18, 0x4a, 0xdd, 0x66, 0xac, 0x6d, 0x1e, 0x4f, 0x53, 0xd3, 0xc3, 0xcc, 0x2d, 0x99, 0x7a, 0x18, 0x76, 0x54, 0x31, 0xd2, 0xe2, 0x61, 0xce, 0xb4, 0x57, 0xac, 0x61, 0xf7, 0xfe, 0xf4, 0x24, 0x51, 0x43, 0xcb, 0x57, 0x07, 0xb6, 0x2c, 0xd1, 0xf7, 0xd5, 0xe5, 0x9f, 0x1a, 0x05, 0x68, 0x18, 0x65, 0x44, 0xbc, 0xe6, 0x22, 0xe1, 0xe1, 0xc7, 0x22, 0xc5, 0x2e, 0x2e, 0x5e, 0xf4, 0xa4, 0x09, }; static const unsigned char ecdh_brainpoolp256r1_358_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_358_sharedsecret[] = { 0xa1, 0x3c, 0xc4, 0x86, 0x6d, 0xf5, 0xd6, 0xa3, 0x5d, 0xa6, 0xe0, 0x55, 0x5e, 0x54, 0x61, 0x7e, 0xe3, 0x76, 0x4b, 0x3b, 0xc0, 0x50, 0xc0, 0xac, 0x3e, 0x30, 0x2b, 0x1b, 0xa7, 0x70, 0x5f, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_358 = { .name = "ecdh_brainpoolp256r1_358", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_358_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_358_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_358_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 60 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 359 for ECDH, tcId is 61 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_359_peerpubkey[] = { 0x79, 0x83, 0x8c, 0x22, 0xd2, 0xb8, 0xdc, 0x9a, 0xf2, 0xe6, 0xcf, 0x56, 0xf8, 0x82, 0x6d, 0xc3, 0xdf, 0xe1, 0x0f, 0xcb, 0x17, 0xb6, 0xaa, 0xaf, 0x55, 0x1e, 0xe5, 0x2b, 0xef, 0x12, 0xf8, 0x26, 0x1e, 0x2e, 0xd3, 0xd4, 0x53, 0x08, 0x8c, 0x85, 0x52, 0xc6, 0xfe, 0xec, 0xf8, 0x98, 0x66, 0x7b, 0xc1, 0xe1, 0x59, 0x05, 0x00, 0x2e, 0xde, 0xc6, 0xb2, 0x69, 0xfe, 0xb7, 0xbe, 0xa0, 0x9d, 0x5b, }; static const unsigned char ecdh_brainpoolp256r1_359_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_359_sharedsecret[] = { 0x5e, 0xf8, 0xdc, 0xc0, 0x80, 0xd0, 0x9e, 0x27, 0x9e, 0x99, 0x9e, 0xfc, 0x5e, 0x12, 0x54, 0xbe, 0x40, 0x17, 0x2e, 0x81, 0x83, 0x30, 0xc6, 0xc2, 0x96, 0x42, 0x94, 0x9e, 0xb3, 0x07, 0x76, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_359 = { .name = "ecdh_brainpoolp256r1_359", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_359_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_359_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_359_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 61 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 360 for ECDH, tcId is 62 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_360_peerpubkey[] = { 0x09, 0xff, 0x7b, 0x7d, 0x82, 0xfb, 0x64, 0x94, 0x47, 0x6c, 0x00, 0x1a, 0x8b, 0xf8, 0x19, 0x91, 0x21, 0xd1, 0x3d, 0xda, 0xe4, 0xfc, 0x29, 0x12, 0x49, 0xee, 0xc8, 0xcd, 0xa4, 0x27, 0xb4, 0x4b, 0x33, 0xc5, 0x1a, 0x99, 0x08, 0x0b, 0x27, 0xc1, 0x7b, 0x11, 0x0c, 0x20, 0x39, 0x18, 0xf1, 0xeb, 0x20, 0x25, 0xd2, 0x37, 0x46, 0x4d, 0xe8, 0xbb, 0x8f, 0x11, 0x2e, 0x21, 0x83, 0x56, 0xd2, 0xc8, }; static const unsigned char ecdh_brainpoolp256r1_360_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_360_sharedsecret[] = { 0x20, 0x09, 0x51, 0x19, 0xf5, 0x3d, 0xf7, 0xb3, 0x37, 0x62, 0x0e, 0x62, 0x8b, 0x92, 0x49, 0x91, 0x48, 0x2a, 0x34, 0x28, 0x03, 0xea, 0xf0, 0x8a, 0xc7, 0x95, 0x31, 0xd2, 0xf2, 0xd1, 0x7b, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_360 = { .name = "ecdh_brainpoolp256r1_360", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_360_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_360_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_360_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 62 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 361 for ECDH, tcId is 63 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_361_peerpubkey[] = { 0x18, 0x9a, 0x70, 0x7a, 0xba, 0x80, 0x56, 0x0e, 0xed, 0x66, 0x85, 0xda, 0xbe, 0x11, 0xfd, 0x58, 0xcd, 0xca, 0x38, 0xc3, 0x48, 0x9c, 0xa1, 0x9b, 0x6f, 0x42, 0x23, 0xa0, 0xc8, 0xd8, 0x0a, 0x14, 0x46, 0x01, 0xe8, 0xdb, 0x54, 0x46, 0xf9, 0x8d, 0x29, 0xd9, 0x61, 0x4b, 0x5f, 0x36, 0xd0, 0x1c, 0x24, 0xa1, 0x90, 0x19, 0x1c, 0x49, 0x49, 0x9c, 0x03, 0x97, 0x51, 0x84, 0xa4, 0xe8, 0xc5, 0x14, }; static const unsigned char ecdh_brainpoolp256r1_361_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_361_sharedsecret[] = { 0x26, 0x73, 0xdb, 0x06, 0x82, 0xf6, 0xa0, 0x35, 0xe2, 0x54, 0x06, 0x33, 0x9c, 0x71, 0x29, 0x91, 0x8a, 0xa9, 0xcf, 0x10, 0x00, 0x56, 0xeb, 0xdd, 0xc3, 0x17, 0xd4, 0xe4, 0x3a, 0x16, 0x42, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_361 = { .name = "ecdh_brainpoolp256r1_361", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_361_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_361_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_361_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 63 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 362 for ECDH, tcId is 64 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_362_peerpubkey[] = { 0x59, 0x30, 0x5b, 0x2b, 0xb6, 0x68, 0xf2, 0x42, 0x36, 0x87, 0xc4, 0x47, 0x8b, 0xb4, 0x00, 0xb9, 0x0b, 0xd4, 0x14, 0x02, 0x03, 0x84, 0xb4, 0x15, 0xbe, 0xe3, 0x29, 0xeb, 0x0e, 0x9f, 0x5a, 0x95, 0x73, 0x2b, 0x35, 0x1e, 0x79, 0xfc, 0x7d, 0x4b, 0xbc, 0x2c, 0xa3, 0x6c, 0xa3, 0x6b, 0xde, 0xa2, 0xf0, 0xdc, 0xc3, 0x34, 0x8e, 0x87, 0x95, 0x6c, 0x16, 0x88, 0xc1, 0x34, 0x71, 0x6e, 0xab, 0x5c, }; static const unsigned char ecdh_brainpoolp256r1_362_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_362_sharedsecret[] = { 0x2d, 0xbc, 0x00, 0x81, 0x3c, 0xbb, 0x71, 0x77, 0x8f, 0xc6, 0xfb, 0x76, 0x17, 0x3e, 0x2a, 0xfa, 0x0e, 0x8a, 0xf3, 0x25, 0x71, 0x34, 0x0c, 0x91, 0xce, 0xa9, 0xf1, 0xb1, 0xcc, 0xa0, 0x70, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_362 = { .name = "ecdh_brainpoolp256r1_362", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_362_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_362_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_362_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 64 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 363 for ECDH, tcId is 65 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_363_peerpubkey[] = { 0x94, 0x13, 0x16, 0xbb, 0xc4, 0x09, 0x02, 0x20, 0x4a, 0x94, 0x5f, 0x91, 0x48, 0x99, 0xbe, 0x7f, 0xc4, 0xdc, 0x28, 0x2f, 0x0c, 0x22, 0x9b, 0xc3, 0x74, 0xf0, 0x99, 0x7c, 0x11, 0xa2, 0x3e, 0x13, 0x70, 0x39, 0x7e, 0x8b, 0x75, 0x0a, 0x57, 0x5a, 0x5c, 0xf8, 0xcd, 0x71, 0x6d, 0xdc, 0x1b, 0x60, 0x7f, 0xeb, 0x28, 0x9c, 0x76, 0x99, 0x7c, 0x4c, 0xd2, 0x0b, 0x5c, 0x9d, 0x85, 0xaa, 0x0a, 0x43, }; static const unsigned char ecdh_brainpoolp256r1_363_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_363_sharedsecret[] = { 0x8d, 0x1a, 0x91, 0xb2, 0xbc, 0x7b, 0xd7, 0x59, 0x8f, 0x4a, 0xe3, 0xd1, 0x7f, 0x6a, 0x89, 0x78, 0xf1, 0xdf, 0x5f, 0xba, 0x94, 0x2e, 0xf2, 0xb8, 0xb9, 0x59, 0x52, 0xf5, 0xce, 0xc1, 0x93, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_363 = { .name = "ecdh_brainpoolp256r1_363", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_363_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_363_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_363_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 65 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 364 for ECDH, tcId is 66 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_364_peerpubkey[] = { 0x7b, 0x33, 0xab, 0xc0, 0x6f, 0x6a, 0x87, 0x48, 0xa4, 0xa4, 0x13, 0x61, 0x10, 0x4e, 0x36, 0x75, 0x58, 0x88, 0x6f, 0x92, 0x34, 0x5f, 0xea, 0xb8, 0x6c, 0xa9, 0xb9, 0xef, 0xd8, 0x03, 0x68, 0x9f, 0x2b, 0xed, 0x59, 0x2a, 0x08, 0xe5, 0xbf, 0x9e, 0x12, 0x32, 0x82, 0xd8, 0x41, 0x68, 0x23, 0x50, 0x90, 0x59, 0xb5, 0x5c, 0x8a, 0xf6, 0xff, 0x04, 0xb0, 0x0e, 0x67, 0x8b, 0xf8, 0xaf, 0xc5, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_364_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_364_sharedsecret[] = { 0x85, 0x27, 0x19, 0x7d, 0x2a, 0xfd, 0xe6, 0x4e, 0x2d, 0xab, 0xa8, 0x92, 0x9a, 0x91, 0x8f, 0xea, 0x5a, 0x58, 0x84, 0xbc, 0xed, 0x17, 0x5f, 0xce, 0x33, 0x80, 0xdb, 0xcf, 0xdf, 0x63, 0xb3, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_364 = { .name = "ecdh_brainpoolp256r1_364", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_364_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_364_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_364_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 66 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 365 for ECDH, tcId is 67 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_365_peerpubkey[] = { 0x54, 0x5e, 0x3b, 0x05, 0x75, 0x78, 0x60, 0x4e, 0xe1, 0x1c, 0x95, 0x15, 0xb4, 0xf7, 0xd6, 0x6d, 0xa6, 0x68, 0xaa, 0x06, 0x17, 0x01, 0x81, 0x44, 0xab, 0xf7, 0xfc, 0x58, 0xc6, 0xf7, 0xb5, 0x7d, 0x6b, 0xbd, 0xd1, 0xee, 0xc7, 0xe4, 0x0d, 0x6b, 0xbb, 0xa3, 0x30, 0x3c, 0x74, 0x50, 0x2d, 0x74, 0xc0, 0xb5, 0xf1, 0xd8, 0xe5, 0xd2, 0xf5, 0x56, 0x8f, 0x7b, 0x7c, 0xde, 0x74, 0x5d, 0x7a, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_365_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_365_sharedsecret[] = { 0x94, 0x99, 0x17, 0x25, 0xd1, 0x15, 0xdd, 0xdf, 0x73, 0x69, 0x9a, 0x89, 0x23, 0x10, 0x4b, 0xfe, 0x4d, 0xfd, 0x3c, 0x5e, 0x46, 0x2a, 0x8a, 0x6e, 0xc1, 0x42, 0x6d, 0xec, 0xf5, 0xc8, 0x6f, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_365 = { .name = "ecdh_brainpoolp256r1_365", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_365_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_365_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_365_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 67 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 366 for ECDH, tcId is 68 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_366_peerpubkey[] = { 0x1d, 0xa6, 0xa5, 0xf6, 0x44, 0xcc, 0x0d, 0x09, 0x3f, 0x0a, 0xea, 0x56, 0x35, 0xd0, 0x37, 0x4b, 0xf4, 0xc0, 0x71, 0xf7, 0xac, 0x8b, 0x6e, 0x2b, 0x68, 0xc9, 0xb9, 0xf3, 0x52, 0xec, 0xc7, 0x7f, 0x67, 0x51, 0x5e, 0xa4, 0xad, 0xb5, 0xbb, 0x96, 0x88, 0xf5, 0xf8, 0x3c, 0x13, 0x50, 0xb3, 0x33, 0x32, 0xda, 0x95, 0x61, 0xa0, 0x26, 0x5d, 0x64, 0x72, 0xb3, 0xac, 0x49, 0x73, 0x0c, 0xc7, 0xe3, }; static const unsigned char ecdh_brainpoolp256r1_366_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_366_sharedsecret[] = { 0x58, 0x91, 0xc8, 0xd5, 0xa5, 0x3d, 0xd5, 0x51, 0xd9, 0x61, 0x41, 0xb1, 0xd9, 0xa0, 0x8e, 0x8d, 0xe4, 0x0c, 0x2a, 0x79, 0x96, 0x97, 0x21, 0x4a, 0xdc, 0x13, 0xfd, 0x8b, 0xe5, 0xe1, 0x69, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_366 = { .name = "ecdh_brainpoolp256r1_366", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_366_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_366_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_366_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 68 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 367 for ECDH, tcId is 69 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_367_peerpubkey[] = { 0x5e, 0x94, 0x3a, 0xe7, 0x7a, 0x68, 0xb6, 0x0f, 0xfa, 0xc9, 0x55, 0x51, 0x76, 0x44, 0x1f, 0xc5, 0x89, 0xb3, 0x6c, 0x32, 0x42, 0x69, 0xef, 0xf7, 0xa4, 0x16, 0x98, 0x60, 0x81, 0x54, 0xe9, 0xf5, 0x93, 0x6c, 0xf4, 0xf1, 0x73, 0xd9, 0x16, 0x68, 0x1e, 0xf1, 0x8d, 0x6d, 0x81, 0x26, 0x37, 0x36, 0x4c, 0xdf, 0xae, 0x0b, 0xf0, 0x1d, 0x53, 0x00, 0xc7, 0x64, 0xd8, 0xd1, 0x87, 0xbc, 0xa1, 0x89, }; static const unsigned char ecdh_brainpoolp256r1_367_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_367_sharedsecret[] = { 0x10, 0xe2, 0xdf, 0x24, 0x4d, 0xfe, 0x2e, 0x2b, 0x2f, 0x4b, 0x5c, 0xd6, 0x46, 0x2b, 0x93, 0x41, 0xfc, 0x79, 0x63, 0x49, 0x9a, 0x84, 0x29, 0xfd, 0xb3, 0x63, 0x6d, 0xdd, 0x1e, 0xe0, 0xa1, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_367 = { .name = "ecdh_brainpoolp256r1_367", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_367_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_367_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_367_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 69 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 368 for ECDH, tcId is 70 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_368_peerpubkey[] = { 0x8a, 0x8b, 0xc7, 0x4d, 0x08, 0x5f, 0x35, 0x3c, 0xd5, 0x88, 0x47, 0x5e, 0x5a, 0xe9, 0xeb, 0xe5, 0x70, 0x1c, 0x00, 0x1d, 0xbe, 0x55, 0x86, 0xa7, 0xaf, 0x97, 0x28, 0x11, 0x3c, 0x9b, 0x7d, 0x98, 0x9a, 0x11, 0xd1, 0x96, 0x35, 0xef, 0xf7, 0x1b, 0xea, 0xdd, 0xcb, 0xb2, 0x84, 0x00, 0xbb, 0x28, 0x4a, 0x7a, 0x5d, 0x5d, 0x74, 0xce, 0xee, 0x23, 0x24, 0x9a, 0x53, 0xc9, 0x77, 0x48, 0x6b, 0x9a, }; static const unsigned char ecdh_brainpoolp256r1_368_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_368_sharedsecret[] = { 0x37, 0xcc, 0x4a, 0x30, 0x60, 0xbb, 0x3f, 0x7b, 0x91, 0x35, 0xe4, 0x9f, 0x57, 0x4c, 0x1d, 0x42, 0xeb, 0x1a, 0x51, 0xaf, 0xa7, 0x80, 0x81, 0x9f, 0x8f, 0x1a, 0xbe, 0x21, 0x88, 0x23, 0x47, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_368 = { .name = "ecdh_brainpoolp256r1_368", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_368_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_368_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_368_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 70 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 369 for ECDH, tcId is 71 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_369_peerpubkey[] = { 0x52, 0x73, 0xe1, 0xad, 0x6e, 0x91, 0x58, 0xcd, 0xb5, 0xfc, 0x9a, 0x21, 0xdd, 0x03, 0xa7, 0xbb, 0xb0, 0xfe, 0x7c, 0xd1, 0x36, 0xbe, 0x58, 0xa8, 0xf0, 0xf8, 0x80, 0x0e, 0xeb, 0x7a, 0xfd, 0xaa, 0x7f, 0x96, 0x3e, 0x8b, 0x0d, 0x56, 0x43, 0x86, 0x56, 0x9a, 0xc1, 0x85, 0x1d, 0xfb, 0x6d, 0xfe, 0x9b, 0x12, 0xf7, 0xab, 0x8a, 0x72, 0xea, 0x47, 0x8c, 0xc1, 0x14, 0x6e, 0x0a, 0x7b, 0x92, 0x84, }; static const unsigned char ecdh_brainpoolp256r1_369_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_369_sharedsecret[] = { 0x37, 0xc2, 0xb9, 0x6d, 0x47, 0x23, 0x64, 0xfa, 0x46, 0x68, 0x07, 0xaf, 0xb5, 0xbf, 0x11, 0xd6, 0x3e, 0x81, 0x54, 0x4e, 0xfa, 0x6c, 0x67, 0xbc, 0xcd, 0x1a, 0xbf, 0x3e, 0x74, 0xd3, 0xdf, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_369 = { .name = "ecdh_brainpoolp256r1_369", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_369_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_369_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_369_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 71 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 370 for ECDH, tcId is 72 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_370_peerpubkey[] = { 0x0e, 0xc6, 0x6c, 0xa5, 0xdd, 0x8b, 0xf6, 0xcc, 0x28, 0x82, 0xb7, 0x03, 0xc6, 0x5e, 0x6a, 0x0a, 0x7a, 0x4c, 0x6e, 0x7e, 0x1d, 0x9a, 0x09, 0x35, 0x53, 0x1b, 0xc8, 0x59, 0xa8, 0xca, 0xc0, 0xaa, 0x31, 0x20, 0x6f, 0x59, 0xa7, 0xef, 0x58, 0x5e, 0x96, 0xaf, 0xbf, 0xa9, 0x43, 0x49, 0xaa, 0xcf, 0xac, 0xef, 0xf7, 0x03, 0xd3, 0x88, 0x53, 0x00, 0xfd, 0x23, 0xcc, 0x5b, 0x5b, 0x19, 0x5c, 0xbd, }; static const unsigned char ecdh_brainpoolp256r1_370_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_370_sharedsecret[] = { 0x00, 0x6c, 0x23, 0xa1, 0xd0, 0x80, 0x4c, 0x6a, 0x13, 0x1f, 0xac, 0xad, 0xf8, 0xc4, 0x2e, 0x8f, 0xd5, 0x5a, 0x3e, 0x83, 0x73, 0xc4, 0x4d, 0x39, 0x9c, 0xaa, 0xd9, 0x36, 0x3e, 0xf1, 0xc3, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_370 = { .name = "ecdh_brainpoolp256r1_370", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_370_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_370_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_370_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 72 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 371 for ECDH, tcId is 73 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_371_peerpubkey[] = { 0x31, 0xb0, 0x5f, 0x27, 0x84, 0xa6, 0x17, 0x22, 0x84, 0xd6, 0x83, 0xd8, 0x45, 0x3c, 0x17, 0x0f, 0xa8, 0x97, 0xa9, 0xe6, 0x20, 0xe0, 0xd5, 0x30, 0xf4, 0x8d, 0x45, 0x62, 0x56, 0x49, 0xbd, 0xe2, 0x61, 0x2c, 0xee, 0x16, 0x18, 0x40, 0x99, 0xf9, 0x7e, 0x28, 0xb0, 0xaa, 0xdc, 0xcd, 0x37, 0x86, 0xe1, 0x4a, 0x87, 0x05, 0xf5, 0x53, 0x71, 0x31, 0xe5, 0xc0, 0x45, 0xa4, 0xe0, 0xeb, 0x78, 0x91, }; static const unsigned char ecdh_brainpoolp256r1_371_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_371_sharedsecret[] = { 0x85, 0x90, 0xb7, 0xab, 0x93, 0x2d, 0xcb, 0x8c, 0x22, 0x6b, 0x1e, 0xbe, 0x9c, 0xa4, 0xbc, 0xa1, 0x4a, 0x69, 0x67, 0x6d, 0x7f, 0xe1, 0x91, 0x51, 0x4f, 0x65, 0x6b, 0x87, 0xfa, 0xe9, 0x5f, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_371 = { .name = "ecdh_brainpoolp256r1_371", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_371_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_371_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_371_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 73 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 372 for ECDH, tcId is 74 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_372_peerpubkey[] = { 0x46, 0xb6, 0x3a, 0x00, 0x60, 0x10, 0xe9, 0x31, 0x1f, 0xfc, 0x5d, 0x67, 0xeb, 0xa3, 0x7d, 0x25, 0x0c, 0x95, 0x24, 0xb2, 0x29, 0x2a, 0xe0, 0x9b, 0x00, 0x29, 0x56, 0x8c, 0x15, 0xbd, 0xe4, 0xec, 0x6a, 0x70, 0xf7, 0x34, 0xc1, 0xf1, 0x67, 0x90, 0xca, 0x43, 0x39, 0x5f, 0xfc, 0x12, 0x4d, 0x6a, 0x68, 0x8e, 0x54, 0x9f, 0xbe, 0x19, 0xc3, 0xec, 0xf9, 0xc1, 0xe4, 0x23, 0xf2, 0xb8, 0x42, 0x24, }; static const unsigned char ecdh_brainpoolp256r1_372_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_372_sharedsecret[] = { 0x3c, 0x5f, 0x64, 0x22, 0x7d, 0xd2, 0x05, 0xb6, 0x86, 0x19, 0x1b, 0x6d, 0xcf, 0x3a, 0xf4, 0x27, 0xef, 0x7a, 0x94, 0xe8, 0x42, 0x64, 0xab, 0xbc, 0x9c, 0x07, 0x8b, 0x7b, 0xf5, 0x81, 0x86, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_372 = { .name = "ecdh_brainpoolp256r1_372", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_372_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_372_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_372_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 74 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 373 for ECDH, tcId is 75 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_373_peerpubkey[] = { 0x7d, 0x86, 0xdd, 0xaa, 0x5d, 0x7d, 0x6d, 0x3e, 0x81, 0xc4, 0xf8, 0xbd, 0xcf, 0xa0, 0x10, 0xcb, 0x2a, 0x8a, 0x2e, 0x32, 0xf2, 0x48, 0x66, 0xb3, 0x09, 0xbc, 0x06, 0x5a, 0x20, 0x85, 0x1d, 0xe9, 0x31, 0xa2, 0x85, 0xd0, 0xb8, 0x16, 0xbf, 0x03, 0xbd, 0x8d, 0x11, 0x24, 0x22, 0xe5, 0x79, 0xcf, 0x9a, 0x73, 0xeb, 0xb1, 0x7f, 0x8c, 0xf8, 0x67, 0xba, 0xd7, 0x67, 0xd4, 0x95, 0xfe, 0xbb, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_373_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_373_sharedsecret[] = { 0x59, 0x70, 0x8c, 0x85, 0x3f, 0xce, 0x1a, 0x9b, 0xc8, 0x4b, 0x80, 0xbf, 0x90, 0x29, 0x3b, 0xd0, 0x80, 0xcf, 0x63, 0x3d, 0x39, 0xf5, 0xa2, 0xed, 0xf6, 0x0e, 0x88, 0x0e, 0x97, 0xc6, 0x1f, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_373 = { .name = "ecdh_brainpoolp256r1_373", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_373_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_373_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_373_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 75 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 374 for ECDH, tcId is 76 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_374_peerpubkey[] = { 0x72, 0x6a, 0xbf, 0x16, 0x51, 0x97, 0xd1, 0xb2, 0xfa, 0x69, 0xbf, 0x62, 0x8b, 0xd9, 0x3c, 0x06, 0x21, 0x6d, 0xbe, 0xb2, 0x01, 0xf0, 0xca, 0x28, 0x24, 0x86, 0x3a, 0x7d, 0x0b, 0x1a, 0x08, 0x83, 0x94, 0x5b, 0x78, 0xcd, 0x74, 0x00, 0xfe, 0x88, 0x5b, 0xa6, 0xb3, 0x1c, 0x01, 0x94, 0xa5, 0x6a, 0x06, 0x41, 0x3a, 0x60, 0xb1, 0xa4, 0xee, 0x51, 0xdc, 0x1c, 0xef, 0x27, 0xe7, 0xe4, 0xd1, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_374_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_374_sharedsecret[] = { 0x7a, 0x8b, 0xcc, 0xfc, 0x86, 0xa1, 0xd6, 0x84, 0xaf, 0xe8, 0x25, 0xd7, 0xe1, 0xed, 0x7d, 0x30, 0x9b, 0x22, 0xa9, 0x08, 0x1f, 0xbe, 0xbf, 0x34, 0x8c, 0x53, 0x53, 0xff, 0x55, 0xe9, 0x70, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_374 = { .name = "ecdh_brainpoolp256r1_374", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_374_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_374_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_374_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 76 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 375 for ECDH, tcId is 77 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_375_peerpubkey[] = { 0x11, 0x74, 0x53, 0x23, 0x6a, 0x15, 0xd7, 0xfc, 0x59, 0x8a, 0x05, 0x84, 0x8b, 0xc6, 0xce, 0x25, 0xc4, 0xc7, 0x69, 0x8c, 0xbc, 0x9a, 0x65, 0xc6, 0xd4, 0xc5, 0x79, 0xdf, 0xaf, 0xae, 0xd6, 0x13, 0x9e, 0x48, 0xea, 0x8e, 0xdd, 0xbc, 0x1e, 0x8c, 0xf4, 0xec, 0xf6, 0xc1, 0x04, 0xde, 0xe3, 0xd3, 0xa8, 0xde, 0x94, 0xcd, 0xbf, 0x4f, 0xd0, 0x0e, 0x40, 0x8f, 0xd6, 0x28, 0xf2, 0x14, 0x36, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_375_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_375_sharedsecret[] = { 0xa9, 0x8f, 0xdf, 0xeb, 0x5e, 0x87, 0x79, 0x7e, 0xf2, 0x28, 0x21, 0xa5, 0x4e, 0xcd, 0x55, 0x61, 0x93, 0x2d, 0x78, 0x4e, 0x2b, 0x4c, 0xb3, 0x1a, 0x50, 0x9f, 0x86, 0x30, 0xf0, 0xe1, 0x18, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_375 = { .name = "ecdh_brainpoolp256r1_375", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_375_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_375_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_375_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 77 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 376 for ECDH, tcId is 78 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_376_peerpubkey[] = { 0x11, 0xb9, 0x9a, 0x71, 0x0f, 0x15, 0x23, 0x89, 0xdb, 0xf9, 0xb2, 0x18, 0x15, 0x36, 0x8b, 0x52, 0xa3, 0x3b, 0x28, 0xf5, 0xda, 0xfa, 0x05, 0x28, 0x4e, 0x3a, 0xc9, 0xbe, 0x5c, 0xfd, 0x5d, 0x3c, 0x46, 0xf5, 0x46, 0x1c, 0x5d, 0xa2, 0x1d, 0x22, 0x2c, 0x78, 0x9e, 0x20, 0x09, 0x24, 0x6a, 0x03, 0xe3, 0x66, 0xbb, 0x29, 0xd2, 0x9c, 0xd4, 0x2f, 0x24, 0x93, 0xa3, 0xe2, 0x95, 0x1e, 0x63, 0x2a, }; static const unsigned char ecdh_brainpoolp256r1_376_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_376_sharedsecret[] = { 0x1b, 0x8a, 0xa8, 0x42, 0x41, 0x7e, 0x57, 0xa1, 0x38, 0x0c, 0x95, 0x8a, 0x4c, 0xbd, 0x99, 0x47, 0x40, 0xd9, 0xea, 0x5c, 0x87, 0x8b, 0x2b, 0x5d, 0x10, 0x92, 0xe9, 0xe8, 0x94, 0xe3, 0xcd, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_376 = { .name = "ecdh_brainpoolp256r1_376", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_376_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_376_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_376_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 78 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 377 for ECDH, tcId is 79 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_377_peerpubkey[] = { 0x7a, 0x73, 0xab, 0xc6, 0x5f, 0x2a, 0x57, 0x34, 0xd2, 0x3c, 0x58, 0x8a, 0x13, 0x9f, 0xce, 0x12, 0x38, 0x18, 0x2c, 0xf3, 0xf4, 0x76, 0x57, 0x66, 0xf5, 0xfd, 0x9d, 0xff, 0x96, 0x05, 0x26, 0xfe, 0x58, 0xf4, 0x5e, 0x67, 0xb3, 0xeb, 0xeb, 0xbb, 0x73, 0xf8, 0x8e, 0x81, 0xdf, 0xa9, 0x62, 0x4c, 0x70, 0xcc, 0xb7, 0x56, 0x7b, 0x14, 0xd2, 0xc6, 0xe2, 0x54, 0x5c, 0x1f, 0xe2, 0x37, 0x96, 0x89, }; static const unsigned char ecdh_brainpoolp256r1_377_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_377_sharedsecret[] = { 0x31, 0x93, 0x80, 0x9a, 0x09, 0x45, 0xb5, 0x65, 0x25, 0xec, 0x00, 0xee, 0x10, 0x5c, 0x2a, 0xe1, 0xd7, 0xa1, 0x73, 0x13, 0x32, 0x84, 0x86, 0x2c, 0x15, 0x04, 0xf4, 0xc4, 0xed, 0x8a, 0xba, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_377 = { .name = "ecdh_brainpoolp256r1_377", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_377_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_377_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_377_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 79 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 378 for ECDH, tcId is 80 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_378_peerpubkey[] = { 0x26, 0x59, 0x19, 0xd0, 0xd0, 0xa7, 0x0b, 0x8e, 0x60, 0x9f, 0xae, 0x90, 0x83, 0x17, 0xd2, 0xcf, 0x25, 0x98, 0x5b, 0xf2, 0x2e, 0xcc, 0xb1, 0xc7, 0x02, 0xe9, 0xcc, 0xc4, 0x8b, 0x8a, 0x3b, 0xe1, 0x78, 0x71, 0xa5, 0x7d, 0x7c, 0xe5, 0xe7, 0x3b, 0x80, 0x06, 0x52, 0xb0, 0xec, 0x11, 0x0b, 0x33, 0x12, 0x8e, 0x6a, 0x28, 0x2e, 0x10, 0xe9, 0x4f, 0xd0, 0xb7, 0x7e, 0x11, 0xea, 0xe0, 0xc3, 0x34, }; static const unsigned char ecdh_brainpoolp256r1_378_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_378_sharedsecret[] = { 0x8a, 0xf2, 0xed, 0xf7, 0x1a, 0x04, 0x84, 0x17, 0x1f, 0x5b, 0x55, 0xbb, 0xab, 0x19, 0x18, 0x77, 0xb6, 0x0d, 0x70, 0x6b, 0x19, 0x1c, 0x6c, 0xc8, 0x45, 0x86, 0x3a, 0xd8, 0x17, 0xcd, 0x42, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_378 = { .name = "ecdh_brainpoolp256r1_378", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_378_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_378_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_378_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 80 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 379 for ECDH, tcId is 81 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_379_peerpubkey[] = { 0x96, 0x40, 0xb8, 0x0e, 0xce, 0x05, 0x15, 0x00, 0xd9, 0xbc, 0x39, 0xa9, 0x97, 0xc1, 0xbf, 0x70, 0x33, 0xb0, 0xdd, 0x03, 0x41, 0xdc, 0x0b, 0x64, 0x48, 0x66, 0x90, 0x40, 0x6c, 0x02, 0xc3, 0xed, 0x9b, 0xd2, 0xaf, 0xc8, 0x7d, 0xf3, 0xd2, 0x73, 0x04, 0x11, 0xec, 0xb7, 0x81, 0xe1, 0xf6, 0xbf, 0xcc, 0x00, 0x4f, 0x4d, 0x7e, 0xc3, 0xb7, 0xaf, 0x78, 0x16, 0x19, 0x9b, 0x46, 0x65, 0x72, 0xe6, }; static const unsigned char ecdh_brainpoolp256r1_379_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_379_sharedsecret[] = { 0x8d, 0x50, 0x76, 0x5f, 0x6b, 0x67, 0xec, 0x24, 0x9a, 0x75, 0x56, 0x3f, 0x73, 0x4e, 0x5d, 0xfa, 0xcd, 0xb5, 0xa7, 0xf5, 0x98, 0x44, 0xeb, 0x49, 0x91, 0xeb, 0x33, 0x3e, 0x7f, 0xb7, 0x4b, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_379 = { .name = "ecdh_brainpoolp256r1_379", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_379_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_379_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_379_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 81 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 380 for ECDH, tcId is 82 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_380_peerpubkey[] = { 0x3a, 0x85, 0x07, 0xa1, 0xc7, 0x31, 0xbb, 0x9b, 0xd5, 0x10, 0x29, 0x9e, 0x4a, 0xc8, 0x6f, 0xe0, 0x42, 0xd2, 0x1e, 0xd0, 0x78, 0x51, 0xae, 0x78, 0x5d, 0x28, 0x41, 0x26, 0x0b, 0xdf, 0x7b, 0xa5, 0x40, 0x1c, 0x19, 0xa5, 0x52, 0x15, 0xb8, 0x59, 0x25, 0xe7, 0x9b, 0x26, 0x4b, 0x07, 0xbf, 0x7e, 0xb8, 0xbd, 0x05, 0x8f, 0x78, 0xa9, 0xcb, 0xd4, 0x8a, 0x8a, 0x88, 0x92, 0xad, 0x14, 0x74, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_380_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_380_sharedsecret[] = { 0x67, 0x06, 0x24, 0xf5, 0x45, 0x5b, 0x3d, 0xf8, 0x88, 0x4e, 0x52, 0xd2, 0x76, 0xdc, 0x62, 0x21, 0x02, 0xf9, 0xaa, 0x0f, 0x8f, 0x5f, 0x53, 0x92, 0xcd, 0xfa, 0x43, 0x81, 0x2e, 0xe9, 0x00, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_380 = { .name = "ecdh_brainpoolp256r1_380", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_380_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_380_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_380_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 82 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 381 for ECDH, tcId is 83 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_381_peerpubkey[] = { 0x60, 0xda, 0x83, 0x5a, 0x9b, 0x47, 0xd3, 0x46, 0xca, 0x73, 0x57, 0xfa, 0x32, 0x0d, 0x19, 0xfd, 0xdd, 0xc9, 0xfd, 0x82, 0x2c, 0x56, 0xaa, 0xd8, 0x2c, 0x4e, 0x5d, 0x8b, 0xd6, 0x9c, 0x37, 0x45, 0x36, 0x1a, 0xe1, 0x8d, 0x99, 0x34, 0xcc, 0x20, 0xf4, 0x4d, 0x1f, 0x37, 0xe5, 0x9b, 0x61, 0x7e, 0x9e, 0xe7, 0x21, 0xcc, 0x78, 0xa9, 0x79, 0xc7, 0x79, 0x84, 0xc5, 0x68, 0xa6, 0xd4, 0xd7, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_381_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_381_sharedsecret[] = { 0x86, 0x55, 0x95, 0xb8, 0x74, 0x33, 0xfc, 0x3e, 0x8a, 0xd0, 0x80, 0x04, 0x02, 0xfe, 0xd4, 0x68, 0x17, 0xcc, 0xf5, 0x5d, 0x20, 0xb8, 0x3a, 0x4a, 0x5d, 0x51, 0x29, 0xfd, 0x93, 0xbc, 0xf6, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_381 = { .name = "ecdh_brainpoolp256r1_381", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_381_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_381_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_381_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 83 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 382 for ECDH, tcId is 84 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_382_peerpubkey[] = { 0x10, 0xed, 0xe2, 0xe1, 0x0b, 0x9d, 0x31, 0xdb, 0x68, 0xdf, 0x9a, 0x87, 0x12, 0x13, 0xe4, 0x74, 0xe2, 0xd3, 0x9b, 0x2b, 0x21, 0x13, 0x76, 0xcd, 0x78, 0x28, 0xbd, 0x98, 0xab, 0x8c, 0xaa, 0xfe, 0x9b, 0xa9, 0x77, 0x00, 0x68, 0x72, 0x01, 0xd7, 0x75, 0x61, 0xe9, 0x9d, 0x97, 0xe2, 0x7c, 0x1c, 0xd9, 0x9d, 0x32, 0xba, 0xe9, 0x70, 0x71, 0x49, 0xdf, 0xea, 0x7c, 0x06, 0x32, 0x0c, 0x6f, 0xf6, }; static const unsigned char ecdh_brainpoolp256r1_382_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_382_sharedsecret[] = { 0x0e, 0x44, 0x93, 0xae, 0x56, 0x74, 0x7f, 0xb6, 0x81, 0xd5, 0xcb, 0x73, 0xe0, 0xd7, 0x2e, 0x27, 0xd0, 0xee, 0x04, 0x45, 0xc7, 0x1a, 0x0f, 0x1c, 0x58, 0x16, 0xd2, 0xfa, 0x63, 0xdc, 0xb9, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_382 = { .name = "ecdh_brainpoolp256r1_382", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_382_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_382_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_382_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 84 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 383 for ECDH, tcId is 85 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_383_peerpubkey[] = { 0x28, 0x49, 0x7f, 0x54, 0xa8, 0x9f, 0x0e, 0xe7, 0xfc, 0x1f, 0xcc, 0x49, 0x23, 0x22, 0x92, 0xa5, 0x3b, 0xd8, 0x5c, 0xba, 0x82, 0x93, 0xda, 0x00, 0xcc, 0xd5, 0x0b, 0x70, 0xb0, 0xf1, 0x73, 0x8b, 0x91, 0xf2, 0x90, 0x82, 0x96, 0xe6, 0xda, 0x2e, 0xc9, 0x13, 0x9e, 0xff, 0x5c, 0xdb, 0x1c, 0x51, 0xd8, 0x21, 0xc0, 0x0d, 0x05, 0x4d, 0x77, 0x9f, 0xcf, 0xd2, 0x42, 0x64, 0xef, 0x16, 0xa4, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_383_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_383_sharedsecret[] = { 0x44, 0x6d, 0x3a, 0x24, 0x1e, 0xb4, 0x0a, 0xaf, 0x6e, 0x50, 0x64, 0x71, 0xc6, 0x9d, 0xee, 0xbf, 0x3e, 0x68, 0x4c, 0x24, 0x34, 0x5c, 0x02, 0x47, 0xf5, 0x4a, 0x73, 0xdd, 0xb6, 0xc4, 0x88, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_383 = { .name = "ecdh_brainpoolp256r1_383", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_383_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_383_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_383_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 85 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 384 for ECDH, tcId is 86 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_384_peerpubkey[] = { 0x40, 0xac, 0xbc, 0x78, 0x1b, 0x19, 0x8e, 0x42, 0x8d, 0x8d, 0x12, 0x57, 0xd5, 0xb6, 0xd2, 0xb1, 0xcf, 0x53, 0xc9, 0x7b, 0xb6, 0x03, 0x8c, 0xcc, 0x3e, 0xb9, 0xee, 0x87, 0xc2, 0x1f, 0x5e, 0xe0, 0xa0, 0x2d, 0xeb, 0xdf, 0x9e, 0xe9, 0x4b, 0x22, 0xd6, 0xec, 0x85, 0x5a, 0xe3, 0x93, 0x02, 0x1b, 0xb5, 0x7f, 0x92, 0x9c, 0xa4, 0xfb, 0x03, 0x98, 0x8d, 0x9e, 0x6c, 0x00, 0xee, 0x07, 0x5f, 0xa8, }; static const unsigned char ecdh_brainpoolp256r1_384_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_384_sharedsecret[] = { 0x3f, 0x58, 0x14, 0x27, 0xb0, 0x30, 0x9a, 0x68, 0x72, 0xf3, 0x71, 0x45, 0x65, 0xbd, 0x76, 0xe9, 0x52, 0xac, 0x6d, 0x8f, 0x89, 0x68, 0xb7, 0xc1, 0xf4, 0xb8, 0x53, 0x18, 0x77, 0xb6, 0xf0, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_384 = { .name = "ecdh_brainpoolp256r1_384", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_384_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_384_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_384_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 86 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 385 for ECDH, tcId is 87 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_385_peerpubkey[] = { 0x7e, 0xc6, 0x89, 0x0a, 0x5d, 0x70, 0x59, 0x27, 0x97, 0x1a, 0xc2, 0xc6, 0x01, 0x66, 0x70, 0x02, 0xe6, 0xa8, 0x31, 0x84, 0x7f, 0x6f, 0x2b, 0x20, 0x26, 0xef, 0xd6, 0x37, 0x9f, 0x13, 0x8d, 0xff, 0x30, 0xab, 0xc0, 0x8c, 0xb0, 0x1f, 0xd4, 0x4c, 0x31, 0xc1, 0x8c, 0x8e, 0x5f, 0xef, 0x41, 0x21, 0x6c, 0x9a, 0x4e, 0x10, 0x82, 0xdc, 0x92, 0x8f, 0x2e, 0x1e, 0x22, 0xad, 0xe8, 0x60, 0xb0, 0x51, }; static const unsigned char ecdh_brainpoolp256r1_385_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_385_sharedsecret[] = { 0x7e, 0xbe, 0xa9, 0x84, 0xd4, 0xfb, 0x21, 0x48, 0x5e, 0x08, 0x07, 0xf8, 0x16, 0xcc, 0xb0, 0xcb, 0xcc, 0x81, 0x71, 0x00, 0xc1, 0xfe, 0xec, 0xc4, 0xad, 0xd2, 0x2e, 0x3c, 0x40, 0xd2, 0x1b, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_385 = { .name = "ecdh_brainpoolp256r1_385", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_385_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_385_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_385_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 87 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 386 for ECDH, tcId is 88 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_386_peerpubkey[] = { 0x34, 0xdb, 0xf9, 0x00, 0x91, 0xcc, 0x4b, 0xde, 0x4a, 0xca, 0x6b, 0x8c, 0xa2, 0x0b, 0xfa, 0x17, 0x90, 0x3b, 0x34, 0xf9, 0x66, 0x5c, 0xa4, 0xe3, 0x75, 0x5c, 0xc6, 0x2c, 0x8e, 0x35, 0x01, 0x38, 0x08, 0x5a, 0xae, 0x9d, 0xc3, 0xac, 0x8d, 0xad, 0x22, 0x11, 0x9f, 0x3c, 0xb7, 0x9e, 0x80, 0xd4, 0x0b, 0xe8, 0x2b, 0x7e, 0xc5, 0x34, 0x62, 0xd4, 0x45, 0x3b, 0x24, 0x6e, 0xa8, 0xd3, 0x3e, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_386_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_386_sharedsecret[] = { 0x5c, 0x2a, 0xad, 0xe0, 0xa9, 0x8e, 0xb4, 0xb5, 0xee, 0xf2, 0xc9, 0x31, 0xc8, 0xad, 0x96, 0x50, 0x7e, 0x78, 0x78, 0xfa, 0x71, 0xf2, 0x73, 0x49, 0xdc, 0x73, 0x18, 0x9e, 0x22, 0x00, 0x34, 0x39, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_386 = { .name = "ecdh_brainpoolp256r1_386", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_386_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_386_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_386_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 88 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 387 for ECDH, tcId is 89 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_387_peerpubkey[] = { 0x29, 0x96, 0xd4, 0xab, 0x42, 0xde, 0x83, 0x96, 0xfa, 0x82, 0xcb, 0xa6, 0x18, 0x0f, 0x40, 0x2b, 0x0b, 0x49, 0x1a, 0xeb, 0xcc, 0xaa, 0xdc, 0x12, 0xcd, 0x8b, 0xa0, 0x2b, 0x59, 0xd0, 0xa3, 0x38, 0x23, 0xde, 0xcd, 0x01, 0x87, 0x57, 0xa8, 0x38, 0x80, 0xeb, 0xbf, 0xf1, 0xba, 0x88, 0x63, 0x48, 0xd5, 0xf9, 0xb7, 0x8c, 0xd3, 0x48, 0x34, 0x67, 0x38, 0x6b, 0x1a, 0xe4, 0x26, 0xf6, 0xf0, 0xd8, }; static const unsigned char ecdh_brainpoolp256r1_387_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_387_sharedsecret[] = { 0x04, 0x22, 0xfa, 0x3d, 0xb0, 0xfd, 0xc0, 0x3a, 0x56, 0x6d, 0x1e, 0xca, 0xff, 0x95, 0x4f, 0xe5, 0xe9, 0xf1, 0x4b, 0xc5, 0xb9, 0x46, 0x41, 0x45, 0xb7, 0x09, 0xbd, 0x2f, 0x6b, 0xb7, 0x20, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_387 = { .name = "ecdh_brainpoolp256r1_387", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_387_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_387_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_387_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 89 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 388 for ECDH, tcId is 90 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_388_peerpubkey[] = { 0x70, 0x44, 0x85, 0xf4, 0xc9, 0xcf, 0xcf, 0x22, 0xb7, 0xf0, 0xd7, 0xd2, 0x38, 0xcf, 0x83, 0xc4, 0xb8, 0xed, 0x64, 0xe1, 0xf7, 0x99, 0x36, 0x2a, 0x86, 0x47, 0x06, 0x61, 0x7b, 0xdf, 0x86, 0x3a, 0x3b, 0xd8, 0xfd, 0x90, 0xa2, 0x7b, 0xcd, 0x93, 0x9b, 0x95, 0x6e, 0x98, 0x2a, 0x2d, 0x69, 0x9e, 0x93, 0xac, 0x36, 0x0f, 0xbf, 0xec, 0x7f, 0x3d, 0xb2, 0x8a, 0xe6, 0xf4, 0xd5, 0x27, 0x68, 0x9f, }; static const unsigned char ecdh_brainpoolp256r1_388_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_388_sharedsecret[] = { 0xa8, 0xac, 0xd0, 0xb6, 0x5f, 0xb0, 0xa5, 0xe6, 0xa8, 0xce, 0x0f, 0x17, 0x88, 0x43, 0xc3, 0xf0, 0x5c, 0xcd, 0x2d, 0x69, 0x27, 0x64, 0x26, 0xd9, 0x55, 0x0c, 0x64, 0x69, 0xd2, 0xbb, 0x5e, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_388 = { .name = "ecdh_brainpoolp256r1_388", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_388_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_388_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_388_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 90 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 389 for ECDH, tcId is 91 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_389_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x13, 0xa0, 0x34, 0x6d, 0xb1, 0x4d, 0x55, 0xd1, 0xbc, 0xc2, 0x70, 0x79, 0xb6, 0x88, 0x64, 0xac, 0x32, 0x88, 0x5b, 0x5b, 0xdf, 0xc3, 0xc9, 0xdb, 0x6f, 0x85, 0xa3, 0x5d, 0x3d, 0xf4, 0xc3, 0x9b, }; static const unsigned char ecdh_brainpoolp256r1_389_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_389_sharedsecret[] = { 0x39, 0x92, 0x5a, 0xdf, 0x80, 0x13, 0x7a, 0x62, 0xaf, 0x88, 0x26, 0xdb, 0xf0, 0x59, 0x8f, 0xf4, 0xcd, 0xa0, 0x0a, 0xb0, 0x3b, 0xdf, 0x19, 0xb2, 0x98, 0xac, 0xea, 0xb0, 0xf6, 0x61, 0xc8, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_389 = { .name = "ecdh_brainpoolp256r1_389", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_389_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_389_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_389_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 91 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 390 for ECDH, tcId is 92 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_390_peerpubkey[] = { 0x5a, 0x16, 0x0c, 0x3d, 0x01, 0x06, 0x78, 0x5d, 0x6a, 0x87, 0xf0, 0x8d, 0x3d, 0x79, 0x93, 0xd0, 0x7a, 0x8e, 0x6a, 0x90, 0x54, 0xb3, 0xd9, 0xae, 0x1c, 0xb2, 0xa5, 0x2f, 0x87, 0x4a, 0x37, 0x84, 0x18, 0xd4, 0x88, 0x3b, 0x76, 0x39, 0x5b, 0x96, 0x98, 0xe4, 0xe7, 0xc9, 0x86, 0xd5, 0xda, 0xf3, 0xd4, 0xea, 0x05, 0x4c, 0x45, 0x21, 0x3a, 0x20, 0xfe, 0xf0, 0xd8, 0x14, 0xff, 0xc2, 0x4b, 0xe4, }; static const unsigned char ecdh_brainpoolp256r1_390_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_390_sharedsecret[] = { 0x1d, 0x61, 0xf1, 0x83, 0xa2, 0x2f, 0xb5, 0xc5, 0x17, 0x13, 0xd6, 0x39, 0x04, 0xed, 0x73, 0x60, 0x16, 0x11, 0x9f, 0x35, 0xe6, 0x55, 0x54, 0x08, 0x69, 0x4d, 0x41, 0x87, 0x25, 0x69, 0x3f, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_390 = { .name = "ecdh_brainpoolp256r1_390", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_390_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_390_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_390_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 92 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 391 for ECDH, tcId is 93 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_391_peerpubkey[] = { 0x27, 0x83, 0x46, 0xb3, 0xdd, 0x15, 0x37, 0x93, 0x2f, 0x0e, 0xc7, 0x18, 0x5d, 0xe5, 0xdd, 0x92, 0x57, 0xf4, 0x87, 0x2f, 0x30, 0x03, 0xe7, 0xd9, 0x72, 0x51, 0xd3, 0x5e, 0xe3, 0x86, 0x83, 0xcf, 0x0b, 0x94, 0x11, 0xb5, 0xe8, 0x19, 0x3f, 0x75, 0xc0, 0x58, 0x76, 0x2d, 0x52, 0x45, 0x80, 0xf5, 0x66, 0x91, 0x0a, 0x84, 0x27, 0x2e, 0x3a, 0xee, 0xfe, 0xf4, 0xe2, 0x5c, 0x1e, 0x80, 0x1f, 0xd9, }; static const unsigned char ecdh_brainpoolp256r1_391_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_391_sharedsecret[] = { 0x7d, 0xa7, 0x8e, 0x5c, 0xae, 0xfd, 0x12, 0x3a, 0x4b, 0x6c, 0xfa, 0x46, 0x14, 0x74, 0x0f, 0x1e, 0x08, 0xb4, 0x24, 0x27, 0xe8, 0xed, 0x2f, 0xf7, 0x7c, 0x4a, 0x66, 0x97, 0xb7, 0xd5, 0xeb, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_391 = { .name = "ecdh_brainpoolp256r1_391", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_391_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_391_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_391_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 93 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 392 for ECDH, tcId is 94 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_392_peerpubkey[] = { 0x12, 0x94, 0x4b, 0xbc, 0x0e, 0xdb, 0x55, 0x7f, 0x69, 0x09, 0x23, 0x29, 0xc3, 0xec, 0xe0, 0x41, 0xd6, 0xf0, 0xad, 0x7c, 0xb1, 0xa9, 0x01, 0xb5, 0x50, 0xb3, 0x50, 0x58, 0xdc, 0x6a, 0xf5, 0xde, 0x64, 0x9c, 0xa2, 0x34, 0x2b, 0x06, 0xc4, 0x38, 0x54, 0xe8, 0xa3, 0xaf, 0x38, 0x3f, 0x75, 0xe3, 0x63, 0xb2, 0x71, 0xed, 0x90, 0xeb, 0x62, 0xf8, 0x43, 0xf6, 0x9f, 0x31, 0xf2, 0x0b, 0x9b, 0xef, }; static const unsigned char ecdh_brainpoolp256r1_392_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_392_sharedsecret[] = { 0x67, 0xdb, 0x52, 0xeb, 0x94, 0x7a, 0xb0, 0x3e, 0x8b, 0x7d, 0x17, 0x2c, 0x18, 0x78, 0x21, 0x06, 0x2d, 0xe1, 0x80, 0x50, 0xf0, 0x71, 0x86, 0x33, 0xa8, 0x2f, 0xf0, 0x6a, 0x9d, 0x81, 0x45, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_392 = { .name = "ecdh_brainpoolp256r1_392", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_392_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_392_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_392_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 94 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 393 for ECDH, tcId is 95 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_393_peerpubkey[] = { 0x8b, 0xa7, 0x4e, 0x0d, 0xd6, 0x52, 0x80, 0xc3, 0x2d, 0x8e, 0x6e, 0xc1, 0x92, 0xa4, 0xc8, 0x2b, 0x34, 0x6b, 0xf9, 0x42, 0xf2, 0x8b, 0x9a, 0x97, 0x07, 0xfc, 0x76, 0x26, 0x27, 0x98, 0x9e, 0x28, 0x97, 0x85, 0x26, 0x37, 0xa3, 0x73, 0xad, 0xf4, 0xc9, 0x05, 0x72, 0x33, 0x67, 0x1c, 0x22, 0x74, 0xdf, 0x62, 0x37, 0x8b, 0x77, 0x82, 0x92, 0x45, 0x95, 0x0e, 0x39, 0x70, 0x8d, 0xec, 0x23, 0x36, }; static const unsigned char ecdh_brainpoolp256r1_393_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_393_sharedsecret[] = { 0x4a, 0x68, 0x7a, 0x8f, 0xb8, 0xc6, 0x00, 0x5c, 0xc8, 0xd1, 0x93, 0xbe, 0xbd, 0x92, 0xff, 0x5b, 0xa8, 0x41, 0x83, 0x1b, 0xb7, 0xc2, 0x03, 0xf4, 0x1e, 0xe4, 0x35, 0xa2, 0x6d, 0x2c, 0x76, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_393 = { .name = "ecdh_brainpoolp256r1_393", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_393_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_393_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_393_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 95 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 394 for ECDH, tcId is 96 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_394_peerpubkey[] = { 0x94, 0xc7, 0xba, 0xdf, 0xde, 0x72, 0x94, 0xc9, 0x79, 0x6c, 0xaf, 0xde, 0x2a, 0xe5, 0x11, 0x7c, 0xca, 0xc3, 0xc9, 0x18, 0xba, 0xeb, 0xe9, 0x79, 0xbd, 0xd1, 0x0c, 0xdd, 0xc0, 0x72, 0xf2, 0x65, 0x48, 0xd8, 0x86, 0xb6, 0x63, 0x23, 0x76, 0xdb, 0xd3, 0x26, 0xe2, 0xa8, 0x11, 0x35, 0xcb, 0xe8, 0xc0, 0xde, 0xa7, 0xf6, 0xcc, 0x2e, 0xad, 0x76, 0x95, 0x60, 0x0a, 0xb6, 0xd5, 0xbd, 0xfb, 0xb8, }; static const unsigned char ecdh_brainpoolp256r1_394_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_394_sharedsecret[] = { 0x03, 0x1a, 0x8c, 0x1b, 0x0a, 0x41, 0x82, 0x91, 0x4a, 0x62, 0x5b, 0x25, 0x9c, 0x94, 0xa9, 0x25, 0x90, 0xdb, 0x14, 0x3e, 0xea, 0x8f, 0x6d, 0x66, 0x6e, 0x38, 0x3a, 0xc1, 0xba, 0x8a, 0x69, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_394 = { .name = "ecdh_brainpoolp256r1_394", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_394_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_394_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_394_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 96 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 395 for ECDH, tcId is 97 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_395_peerpubkey[] = { 0x51, 0x5e, 0x62, 0x2a, 0xe1, 0x9b, 0xdf, 0x58, 0xfa, 0x07, 0xf8, 0x1b, 0x76, 0x55, 0x99, 0x71, 0xb5, 0x2f, 0x6a, 0xf0, 0xcb, 0x53, 0x34, 0x66, 0xb9, 0x14, 0x4c, 0x1a, 0xe6, 0x80, 0x3d, 0x59, 0x14, 0xef, 0xcd, 0x4c, 0xd5, 0x6a, 0xf5, 0xa0, 0x65, 0x47, 0xf4, 0xc9, 0x71, 0x95, 0x31, 0xb7, 0xc5, 0xe3, 0x5e, 0xca, 0xfc, 0x62, 0x56, 0x64, 0xa5, 0x62, 0xd5, 0xc3, 0xc0, 0xb1, 0xf3, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_395_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_395_sharedsecret[] = { 0x64, 0xed, 0xb0, 0x52, 0xd3, 0xaa, 0x61, 0xfe, 0xce, 0x98, 0x97, 0x81, 0x23, 0x74, 0x79, 0xfa, 0x87, 0x33, 0x8d, 0x91, 0xc4, 0x0f, 0x16, 0x14, 0x9f, 0xea, 0x26, 0x5f, 0x38, 0x96, 0x0c, 0x85, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_395 = { .name = "ecdh_brainpoolp256r1_395", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_395_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_395_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_395_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 97 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 396 for ECDH, tcId is 98 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_396_peerpubkey[] = { 0x6c, 0xce, 0x5c, 0x28, 0x9c, 0x33, 0xbf, 0x4f, 0x48, 0x37, 0x84, 0x7b, 0x6d, 0xa5, 0x1c, 0xc7, 0xb8, 0x2c, 0x16, 0x8a, 0xd8, 0x63, 0xbe, 0x86, 0xa5, 0x6d, 0xcc, 0x11, 0x13, 0x3b, 0x86, 0x9e, 0x78, 0xac, 0x9e, 0x2b, 0x17, 0x7e, 0xe9, 0xb9, 0xed, 0x5b, 0xc3, 0xbf, 0xac, 0x66, 0x24, 0x9c, 0x81, 0x4c, 0x56, 0x3a, 0x9d, 0x43, 0x6e, 0xf0, 0xba, 0xc9, 0xcc, 0x4f, 0xd4, 0x80, 0xd9, 0xd6, }; static const unsigned char ecdh_brainpoolp256r1_396_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_396_sharedsecret[] = { 0x73, 0x59, 0xb5, 0xc5, 0x81, 0x2a, 0xfe, 0x38, 0xf5, 0xd1, 0x8c, 0x0e, 0x81, 0xfb, 0x4d, 0x0c, 0xdd, 0xaa, 0x9a, 0x9e, 0xda, 0x65, 0x92, 0x07, 0x23, 0x3c, 0x74, 0x5b, 0xcb, 0x45, 0x92, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_396 = { .name = "ecdh_brainpoolp256r1_396", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_396_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_396_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_396_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 98 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 397 for ECDH, tcId is 99 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_397_peerpubkey[] = { 0x7c, 0xaa, 0xf0, 0x4d, 0x36, 0x3f, 0x30, 0x65, 0xaf, 0x3e, 0x33, 0x47, 0xeb, 0x4d, 0xc6, 0x68, 0x11, 0xe9, 0x61, 0xfc, 0x3a, 0xb0, 0xf3, 0xb4, 0x24, 0x1e, 0xaf, 0x1b, 0x00, 0x3b, 0x97, 0x5b, 0x55, 0x72, 0xec, 0xbf, 0x8a, 0xe2, 0x30, 0x75, 0x14, 0x3c, 0x2a, 0x97, 0x5f, 0xdc, 0x21, 0xeb, 0xdc, 0x3a, 0xbd, 0xf0, 0x52, 0x98, 0x64, 0x01, 0xad, 0x14, 0xd4, 0x6c, 0xae, 0x2a, 0x2c, 0x67, }; static const unsigned char ecdh_brainpoolp256r1_397_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_397_sharedsecret[] = { 0x56, 0x5d, 0xee, 0x51, 0x79, 0xb1, 0xa5, 0x37, 0xb4, 0x4e, 0xa7, 0xae, 0x05, 0x0c, 0x45, 0xab, 0x0f, 0xa0, 0xb8, 0x75, 0x56, 0x02, 0x54, 0xe7, 0xd0, 0xa3, 0x4f, 0x58, 0x77, 0xb8, 0x36, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_397 = { .name = "ecdh_brainpoolp256r1_397", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_397_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_397_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_397_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 99 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 398 for ECDH, tcId is 100 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_398_peerpubkey[] = { 0x17, 0x24, 0x2d, 0x69, 0x5a, 0xe9, 0x38, 0xca, 0x1d, 0x51, 0x03, 0xee, 0x87, 0x34, 0xb8, 0xb7, 0xce, 0x32, 0xf1, 0xa8, 0x73, 0xfd, 0x59, 0x63, 0xd8, 0xca, 0x1f, 0xa4, 0x5e, 0x5f, 0x63, 0x74, 0x98, 0x62, 0xbd, 0x83, 0x0b, 0x40, 0xa4, 0x25, 0x81, 0xfa, 0x66, 0x5c, 0x5b, 0x1c, 0x63, 0x96, 0x48, 0x07, 0xbe, 0x6a, 0x52, 0xe9, 0x8f, 0xe6, 0xa7, 0x44, 0x7c, 0x4f, 0xc9, 0xeb, 0x98, 0x1c, }; static const unsigned char ecdh_brainpoolp256r1_398_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_398_sharedsecret[] = { 0x92, 0xb9, 0xb1, 0xa4, 0x5c, 0xa6, 0x1b, 0x85, 0x65, 0x4d, 0xdb, 0xf9, 0x86, 0xbd, 0x6c, 0xc8, 0x94, 0x49, 0xfa, 0x1d, 0x2d, 0xf6, 0xec, 0xf7, 0x1a, 0xf7, 0x87, 0x35, 0x97, 0x4f, 0x9a, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_398 = { .name = "ecdh_brainpoolp256r1_398", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_398_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_398_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_398_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 100 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 399 for ECDH, tcId is 101 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_399_peerpubkey[] = { 0x34, 0xc3, 0x31, 0x3a, 0x25, 0x68, 0x36, 0x84, 0xa4, 0x53, 0x04, 0x7b, 0xfe, 0x89, 0x26, 0x1e, 0x4d, 0x63, 0x54, 0xcb, 0x55, 0xa3, 0x28, 0xe4, 0xa1, 0x3a, 0x11, 0x6c, 0xe3, 0x0c, 0x4c, 0xfc, 0x7a, 0xc2, 0xac, 0x3a, 0x10, 0x72, 0xef, 0xb4, 0x85, 0xe7, 0x60, 0x4a, 0x50, 0x5c, 0xc9, 0x59, 0x7d, 0x02, 0x3f, 0xa5, 0x53, 0xa4, 0x2f, 0xbb, 0xbe, 0x73, 0xec, 0xc0, 0xd2, 0x1b, 0xbb, 0xf1, }; static const unsigned char ecdh_brainpoolp256r1_399_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_399_sharedsecret[] = { 0x82, 0x2f, 0x79, 0xc4, 0x79, 0x0f, 0xc3, 0xce, 0xa7, 0xf7, 0xf1, 0x95, 0xb1, 0xbd, 0x89, 0x88, 0x94, 0xf6, 0x81, 0x82, 0xb7, 0x20, 0xec, 0x93, 0xef, 0xb6, 0xc0, 0x3a, 0xce, 0xa7, 0x96, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_399 = { .name = "ecdh_brainpoolp256r1_399", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_399_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_399_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_399_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 101 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 400 for ECDH, tcId is 102 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_400_peerpubkey[] = { 0x64, 0x4b, 0xc0, 0x81, 0xa7, 0x58, 0x55, 0x0f, 0x0d, 0xab, 0x1e, 0x8b, 0x00, 0x51, 0x0c, 0x29, 0x97, 0x91, 0xa3, 0x94, 0x10, 0xed, 0x42, 0xcb, 0xd6, 0x42, 0x4f, 0xd2, 0x21, 0x0b, 0x08, 0x8c, 0x8c, 0xfb, 0x10, 0x55, 0xde, 0x8e, 0x3f, 0xb1, 0x62, 0x1f, 0xd5, 0x1c, 0x3c, 0xc7, 0x30, 0xb7, 0x16, 0x96, 0x78, 0x64, 0x33, 0x3b, 0x05, 0x9c, 0x69, 0x44, 0x0d, 0x28, 0x7b, 0x00, 0x57, 0xcf, }; static const unsigned char ecdh_brainpoolp256r1_400_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_400_sharedsecret[] = { 0x31, 0x81, 0xdb, 0x0a, 0x74, 0xa0, 0xc5, 0xfa, 0x35, 0xed, 0x90, 0xb0, 0x36, 0x3b, 0x49, 0x22, 0x17, 0x6f, 0x76, 0xb3, 0x4f, 0x82, 0x83, 0x64, 0xcb, 0x2a, 0xe0, 0x53, 0x06, 0x8d, 0xf6, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_400 = { .name = "ecdh_brainpoolp256r1_400", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_400_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_400_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_400_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 102 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 401 for ECDH, tcId is 103 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_401_peerpubkey[] = { 0x4f, 0x3a, 0x31, 0x5a, 0x5d, 0x22, 0x53, 0x73, 0xf6, 0x3a, 0x90, 0x3e, 0x60, 0xa4, 0xf2, 0x46, 0xbe, 0x33, 0xf3, 0x81, 0xc9, 0x30, 0xad, 0x81, 0x60, 0xab, 0x6b, 0xd0, 0x93, 0x9b, 0xf6, 0x33, 0xa0, 0xd2, 0x7d, 0x02, 0x71, 0x15, 0xd0, 0x48, 0x6f, 0xd4, 0x28, 0x75, 0xf0, 0xcd, 0x67, 0xd9, 0x05, 0xee, 0x1e, 0x98, 0xdb, 0x6c, 0x73, 0x10, 0xcf, 0x5a, 0x93, 0x97, 0x7e, 0x01, 0x80, 0x6b, }; static const unsigned char ecdh_brainpoolp256r1_401_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_401_sharedsecret[] = { 0x10, 0xbc, 0x04, 0x3a, 0x9d, 0x7c, 0xa8, 0x89, 0xbe, 0xd9, 0x70, 0x1b, 0x96, 0x27, 0x64, 0x23, 0x4e, 0x1f, 0x49, 0xa7, 0xe0, 0x16, 0xe2, 0xd6, 0x6f, 0x5b, 0xd1, 0x4c, 0xf1, 0x17, 0x22, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_401 = { .name = "ecdh_brainpoolp256r1_401", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_401_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_401_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_401_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 103 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 402 for ECDH, tcId is 104 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_402_peerpubkey[] = { 0x43, 0x98, 0x9e, 0x59, 0x3f, 0x2c, 0xf4, 0xf5, 0x2e, 0xcc, 0xc7, 0xd5, 0x7c, 0x92, 0x1f, 0x15, 0x8a, 0xa3, 0x41, 0x02, 0x55, 0x72, 0xeb, 0xa1, 0x3b, 0xe7, 0x5a, 0xc2, 0x64, 0x4b, 0xb1, 0x59, 0x89, 0x2d, 0x74, 0x8c, 0xae, 0x88, 0xef, 0xb8, 0x49, 0xb2, 0x01, 0xcc, 0x98, 0x66, 0x4d, 0x2f, 0xd1, 0xe5, 0x8d, 0xf9, 0xce, 0x43, 0x31, 0xb7, 0x43, 0x7a, 0xa0, 0x33, 0x51, 0xcf, 0x1f, 0xb8, }; static const unsigned char ecdh_brainpoolp256r1_402_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_402_sharedsecret[] = { 0x1c, 0x21, 0xf4, 0x50, 0xba, 0x76, 0x6f, 0xf3, 0xe5, 0xf6, 0xc7, 0x85, 0x9b, 0x98, 0x04, 0x3a, 0xc3, 0x2c, 0x98, 0xb2, 0x7b, 0x09, 0x63, 0xad, 0xc3, 0x38, 0x02, 0xc7, 0xe1, 0xd9, 0x58, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_402 = { .name = "ecdh_brainpoolp256r1_402", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_402_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_402_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_402_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 104 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 403 for ECDH, tcId is 105 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_403_peerpubkey[] = { 0x28, 0x7b, 0xa2, 0x2b, 0xc6, 0xaf, 0x8c, 0x26, 0x28, 0x89, 0x3e, 0xd2, 0xf2, 0x7f, 0xb7, 0x5b, 0xa8, 0xbd, 0xe8, 0xf2, 0xe5, 0x04, 0x8f, 0xbf, 0x0b, 0x67, 0xaa, 0xa4, 0x83, 0x67, 0x17, 0x0e, 0x2a, 0x2f, 0x30, 0x70, 0xcb, 0x6a, 0xe9, 0x1a, 0xb7, 0x95, 0x10, 0x60, 0x03, 0xe0, 0x35, 0x84, 0x37, 0xd8, 0xdd, 0x47, 0xe5, 0x59, 0x25, 0x32, 0x93, 0x31, 0x86, 0x0c, 0xfd, 0x3e, 0x08, 0x3c, }; static const unsigned char ecdh_brainpoolp256r1_403_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_403_sharedsecret[] = { 0x70, 0xeb, 0x47, 0xf8, 0x30, 0xcb, 0xfe, 0x6a, 0x35, 0x4d, 0x3a, 0x60, 0x21, 0x45, 0x2d, 0x3d, 0xbb, 0x24, 0x0f, 0xcf, 0x34, 0x4e, 0x42, 0xaa, 0x9f, 0xef, 0x6a, 0xeb, 0x6e, 0xf2, 0xf9, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_403 = { .name = "ecdh_brainpoolp256r1_403", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_403_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_403_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_403_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 105 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 404 for ECDH, tcId is 106 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_404_peerpubkey[] = { 0x5b, 0x21, 0xdc, 0x00, 0x54, 0xfd, 0x3d, 0xcd, 0x5f, 0xb0, 0x9e, 0x22, 0x5c, 0x5a, 0x54, 0x00, 0x99, 0x52, 0xeb, 0x8b, 0x1a, 0x86, 0xdd, 0x58, 0xf6, 0x5c, 0x76, 0x84, 0xec, 0x57, 0xfa, 0x39, 0x58, 0x8c, 0xe5, 0x47, 0x88, 0xcb, 0x96, 0xe6, 0xbd, 0x5a, 0x2f, 0x98, 0xd1, 0x84, 0xa8, 0x09, 0xee, 0x83, 0x68, 0x9d, 0x5d, 0xf3, 0x9e, 0x50, 0xda, 0x63, 0xb3, 0x86, 0x1a, 0xb4, 0xff, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_404_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_404_sharedsecret[] = { 0x99, 0x03, 0xba, 0xf2, 0x04, 0x17, 0x54, 0x57, 0xc5, 0xce, 0xa4, 0xdd, 0x44, 0x83, 0x79, 0xf4, 0xb5, 0x76, 0xf0, 0x8c, 0x17, 0xf9, 0x33, 0x94, 0xed, 0xf5, 0x2c, 0x57, 0xd6, 0x14, 0xe2, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_404 = { .name = "ecdh_brainpoolp256r1_404", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_404_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_404_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_404_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 106 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 405 for ECDH, tcId is 107 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_405_peerpubkey[] = { 0x28, 0x63, 0xb6, 0x8e, 0x69, 0x17, 0x1a, 0xe8, 0x33, 0x4a, 0xb1, 0x6d, 0xd3, 0xfd, 0x22, 0x00, 0xb6, 0x43, 0xc1, 0x36, 0xba, 0xea, 0xb4, 0xd4, 0x34, 0xfd, 0x27, 0xfe, 0x60, 0x8f, 0x61, 0x9d, 0x99, 0xa9, 0x0a, 0x8e, 0xc3, 0x89, 0x69, 0xc1, 0xfd, 0x85, 0xc6, 0xab, 0x1e, 0xc5, 0x80, 0xf2, 0xeb, 0x08, 0xd2, 0xf4, 0xa2, 0xee, 0xcd, 0xbb, 0xe5, 0x00, 0xeb, 0x30, 0x12, 0x96, 0xf7, 0xe4, }; static const unsigned char ecdh_brainpoolp256r1_405_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_405_sharedsecret[] = { 0x75, 0xee, 0x10, 0xf0, 0x87, 0xeb, 0xb5, 0xfe, 0xb8, 0xee, 0xed, 0xf9, 0x65, 0xf8, 0xa4, 0x95, 0xcf, 0x92, 0xae, 0x20, 0x2e, 0xb2, 0xa0, 0x0e, 0x82, 0xdf, 0x1d, 0xe4, 0x6a, 0x03, 0x21, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_405 = { .name = "ecdh_brainpoolp256r1_405", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_405_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_405_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_405_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 107 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 406 for ECDH, tcId is 108 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_406_peerpubkey[] = { 0x14, 0x79, 0x45, 0x9c, 0x8a, 0xe9, 0x5e, 0x8c, 0x50, 0xde, 0x6e, 0xbb, 0xe0, 0x98, 0x5e, 0x5a, 0xa5, 0x4f, 0xa0, 0x16, 0x40, 0xa4, 0x72, 0xb0, 0x8a, 0x41, 0x20, 0x5c, 0xad, 0x6d, 0xb6, 0x25, 0x3a, 0xec, 0xd0, 0x3d, 0x42, 0x42, 0xc5, 0x28, 0x89, 0x8e, 0x83, 0x2c, 0xa5, 0xb3, 0x18, 0x75, 0x2d, 0x50, 0x57, 0xf0, 0xe2, 0xec, 0x8b, 0xb2, 0x73, 0xd3, 0xd8, 0xed, 0x59, 0x3d, 0x47, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_406_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_406_sharedsecret[] = { 0x0b, 0x3b, 0x90, 0x74, 0x2c, 0x9d, 0xc4, 0xa0, 0x00, 0xbe, 0x6e, 0xcb, 0x4f, 0xf5, 0x28, 0x69, 0x05, 0x87, 0x69, 0x47, 0xe0, 0x78, 0x5d, 0xdd, 0x86, 0x26, 0xd0, 0xd2, 0xfe, 0x0c, 0x87, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_406 = { .name = "ecdh_brainpoolp256r1_406", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_406_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_406_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_406_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 108 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 407 for ECDH, tcId is 109 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_407_peerpubkey[] = { 0x44, 0x8e, 0x35, 0x9d, 0x48, 0x7d, 0x2b, 0xaf, 0x8e, 0x10, 0x97, 0x6d, 0xe4, 0x28, 0x60, 0x1c, 0xcf, 0x99, 0xc8, 0x5e, 0x84, 0x85, 0xdf, 0x95, 0x5f, 0xa3, 0xa8, 0xdb, 0x95, 0xb5, 0xb2, 0xde, 0x7d, 0xa7, 0x96, 0x0b, 0x46, 0x91, 0x27, 0xc1, 0xcc, 0x52, 0x18, 0xa4, 0x05, 0x58, 0x46, 0x0d, 0xca, 0xca, 0xe6, 0x82, 0x24, 0xaf, 0x71, 0xef, 0xa9, 0x08, 0xcb, 0x54, 0x3e, 0xc2, 0x17, 0xf7, }; static const unsigned char ecdh_brainpoolp256r1_407_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_407_sharedsecret[] = { 0x05, 0x6d, 0x7d, 0xb9, 0x99, 0xc7, 0xa5, 0x73, 0x77, 0xad, 0x4a, 0xb7, 0x1e, 0x77, 0x25, 0x2e, 0x84, 0x8c, 0x0c, 0xcf, 0x80, 0x12, 0x39, 0x52, 0x2f, 0xfc, 0x72, 0x82, 0x6c, 0xaa, 0xd8, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_407 = { .name = "ecdh_brainpoolp256r1_407", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_407_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_407_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_407_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 109 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 408 for ECDH, tcId is 110 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_408_peerpubkey[] = { 0x00, 0xc5, 0xf7, 0xc4, 0x78, 0xf1, 0xcc, 0xab, 0xb9, 0x13, 0x4b, 0x29, 0x67, 0x19, 0x00, 0x06, 0x39, 0x6a, 0x23, 0xf1, 0x13, 0x52, 0x9f, 0xd7, 0x31, 0xce, 0xfd, 0x6c, 0x56, 0x4a, 0x8f, 0xc6, 0x20, 0x39, 0xb2, 0xcb, 0x85, 0xa1, 0x60, 0xb8, 0x7f, 0x2e, 0x5e, 0x41, 0xe8, 0xb1, 0x81, 0xf2, 0x10, 0x0c, 0xe8, 0xc3, 0xc0, 0x1e, 0x37, 0x70, 0xa4, 0xf9, 0xd8, 0x77, 0x5f, 0x9a, 0x3c, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_408_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_408_sharedsecret[] = { 0x56, 0x8e, 0xbe, 0xd1, 0x63, 0x0f, 0xba, 0x54, 0x92, 0xef, 0x3f, 0x0d, 0x09, 0x58, 0x70, 0xff, 0xf4, 0x0d, 0x59, 0x45, 0x9d, 0x48, 0x33, 0x04, 0x60, 0x81, 0xb8, 0x94, 0xdd, 0x16, 0xd5, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_408 = { .name = "ecdh_brainpoolp256r1_408", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_408_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_408_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_408_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 110 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 409 for ECDH, tcId is 111 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_409_peerpubkey[] = { 0x9a, 0xad, 0x1d, 0x4a, 0xe2, 0x73, 0xe8, 0xa9, 0x7f, 0x0a, 0x3c, 0x38, 0xe1, 0xbf, 0xd5, 0xe5, 0x96, 0x33, 0x82, 0x12, 0x70, 0x87, 0x4e, 0x1f, 0x66, 0x62, 0x77, 0x2a, 0xd3, 0xf6, 0x7e, 0x76, 0x5c, 0x90, 0x8d, 0x84, 0xdc, 0x31, 0x25, 0x60, 0xf7, 0xed, 0x7e, 0x45, 0x95, 0x4a, 0x8b, 0x92, 0x32, 0x12, 0xfe, 0x2b, 0x20, 0xa3, 0x40, 0x61, 0x6e, 0x33, 0x83, 0xab, 0x94, 0x24, 0xde, 0x8b, }; static const unsigned char ecdh_brainpoolp256r1_409_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_409_sharedsecret[] = { 0x30, 0xee, 0xbf, 0xdf, 0xc9, 0xa7, 0x8f, 0xac, 0x2c, 0xee, 0xf1, 0x95, 0x18, 0x1e, 0x23, 0xa9, 0x10, 0x23, 0x12, 0xaf, 0xee, 0xd9, 0xc5, 0x9e, 0x35, 0x10, 0xc7, 0xd4, 0x5a, 0x9c, 0xb2, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_409 = { .name = "ecdh_brainpoolp256r1_409", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_409_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_409_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_409_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 111 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 410 for ECDH, tcId is 112 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_410_peerpubkey[] = { 0x4b, 0x1c, 0x8f, 0x15, 0x14, 0xfe, 0xc6, 0x98, 0x01, 0x3b, 0x56, 0xc9, 0x1f, 0x12, 0x16, 0x83, 0xeb, 0x60, 0xe5, 0x12, 0x1d, 0x9a, 0xad, 0x0d, 0x57, 0x43, 0x2f, 0x84, 0x02, 0x68, 0x1f, 0xec, 0x83, 0x70, 0x93, 0xa4, 0xcb, 0x97, 0x03, 0xf7, 0x31, 0xa8, 0xee, 0xf9, 0x0d, 0x2e, 0x9d, 0x0e, 0xeb, 0x14, 0xbf, 0x3b, 0xbe, 0x8b, 0xac, 0x53, 0x95, 0x9d, 0x2a, 0x2f, 0xe6, 0x3d, 0x75, 0x23, }; static const unsigned char ecdh_brainpoolp256r1_410_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_410_sharedsecret[] = { 0x27, 0xf6, 0x32, 0x72, 0x29, 0x6a, 0x47, 0xcf, 0xf2, 0x08, 0x02, 0xc5, 0xff, 0x41, 0x0d, 0x0a, 0x52, 0x7a, 0xb2, 0x19, 0x41, 0xa8, 0x27, 0x15, 0xa7, 0xc5, 0xa4, 0xe4, 0xb1, 0x18, 0x88, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_410 = { .name = "ecdh_brainpoolp256r1_410", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_410_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_410_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_410_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 112 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 411 for ECDH, tcId is 113 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_411_peerpubkey[] = { 0x30, 0x1a, 0x50, 0x48, 0xfd, 0x99, 0x8b, 0xd0, 0x4b, 0xc4, 0x5a, 0x6c, 0xd9, 0x63, 0x2c, 0x46, 0x93, 0x90, 0xd9, 0xb8, 0xd8, 0xfb, 0x7b, 0xd4, 0x36, 0x6c, 0xd4, 0xb0, 0x38, 0xc8, 0x4f, 0x05, 0x6a, 0x72, 0xd4, 0x67, 0x70, 0x31, 0x27, 0x85, 0x36, 0x15, 0x83, 0x9e, 0x94, 0xa7, 0x67, 0x79, 0x1f, 0x1b, 0x7a, 0x74, 0xa3, 0xb7, 0x76, 0x04, 0xb9, 0xcb, 0xbc, 0x61, 0xef, 0x2e, 0x64, 0x78, }; static const unsigned char ecdh_brainpoolp256r1_411_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_411_sharedsecret[] = { 0x36, 0xad, 0x05, 0x84, 0x42, 0xd3, 0xa8, 0x43, 0x8e, 0xa6, 0xa2, 0x8b, 0xbf, 0x3f, 0x47, 0x35, 0xee, 0x1f, 0x3e, 0xc0, 0x23, 0x0d, 0x73, 0x22, 0xb3, 0xae, 0x05, 0x06, 0x2e, 0x40, 0x63, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_411 = { .name = "ecdh_brainpoolp256r1_411", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_411_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_411_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_411_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 113 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 412 for ECDH, tcId is 114 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_412_peerpubkey[] = { 0x7f, 0xb8, 0x51, 0x87, 0x21, 0xf3, 0xf6, 0x78, 0xf4, 0x2c, 0x5b, 0xb1, 0x20, 0xba, 0xf8, 0x33, 0x11, 0x25, 0x54, 0x88, 0x37, 0x22, 0xee, 0x47, 0x6a, 0x20, 0x03, 0x14, 0x6d, 0x9d, 0x9a, 0xf1, 0x46, 0xfe, 0x1a, 0x51, 0xf1, 0x39, 0x17, 0x5b, 0x58, 0xb3, 0xa8, 0x1f, 0x82, 0xea, 0x0d, 0xf7, 0x74, 0x30, 0x48, 0x4c, 0x56, 0xea, 0xea, 0x0d, 0xe3, 0xfc, 0xa6, 0x60, 0x70, 0xd0, 0x02, 0xf2, }; static const unsigned char ecdh_brainpoolp256r1_412_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_412_sharedsecret[] = { 0x82, 0xfa, 0x50, 0xc7, 0x59, 0x9c, 0x5c, 0x10, 0x0d, 0xe7, 0x5d, 0xdd, 0xa4, 0x32, 0xb7, 0x1c, 0x87, 0x9f, 0xb6, 0xc8, 0x43, 0x00, 0x48, 0x88, 0x95, 0x71, 0x59, 0x54, 0xc0, 0x11, 0xa3, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_412 = { .name = "ecdh_brainpoolp256r1_412", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_412_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_412_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_412_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 114 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 413 for ECDH, tcId is 115 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_413_peerpubkey[] = { 0x8c, 0xbd, 0xd0, 0x2f, 0x5c, 0x9a, 0x83, 0xa4, 0x9b, 0x78, 0xc6, 0x05, 0xf0, 0x1d, 0xe7, 0xb0, 0xa0, 0xf5, 0x36, 0xf3, 0xe9, 0x45, 0x83, 0x9d, 0xd6, 0x32, 0xaf, 0x75, 0x97, 0x00, 0x47, 0x42, 0x70, 0xc3, 0x0b, 0xe6, 0x69, 0xe1, 0x6b, 0x35, 0x98, 0xeb, 0x00, 0x50, 0x32, 0x5c, 0xfa, 0x68, 0x5a, 0xf6, 0x50, 0x59, 0x96, 0x19, 0xb6, 0x63, 0xed, 0x77, 0xd3, 0xd5, 0x43, 0x60, 0xe8, 0x8a, }; static const unsigned char ecdh_brainpoolp256r1_413_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_413_sharedsecret[] = { 0x93, 0xc3, 0x88, 0xd0, 0x07, 0xb5, 0x64, 0xe0, 0x02, 0x3f, 0x17, 0xc8, 0x12, 0xd6, 0xbd, 0xbb, 0x35, 0xfc, 0xce, 0xa5, 0x96, 0x21, 0x3b, 0x61, 0x9a, 0x0a, 0xc4, 0x76, 0x38, 0xdf, 0xc4, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_413 = { .name = "ecdh_brainpoolp256r1_413", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_413_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_413_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_413_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 115 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 414 for ECDH, tcId is 116 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_414_peerpubkey[] = { 0x2c, 0x9e, 0x06, 0x3b, 0x6f, 0xa4, 0x7a, 0x58, 0xaa, 0xb0, 0xd0, 0x22, 0x33, 0x2a, 0xda, 0x1b, 0xa8, 0xfa, 0xe3, 0x12, 0x2c, 0xf1, 0x12, 0xe1, 0x46, 0xf7, 0x83, 0x03, 0x1e, 0x15, 0x0a, 0x41, 0xa4, 0x5d, 0x80, 0x36, 0xe7, 0x13, 0xd2, 0xd6, 0xf7, 0x13, 0x5e, 0xe8, 0x36, 0xd6, 0x33, 0x23, 0x69, 0x04, 0x56, 0x19, 0x3a, 0x90, 0x99, 0xa0, 0x76, 0x0d, 0x5b, 0x17, 0x1f, 0x96, 0x2f, 0x90, }; static const unsigned char ecdh_brainpoolp256r1_414_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_414_sharedsecret[] = { 0x20, 0xfa, 0xa1, 0x86, 0x75, 0x4e, 0x98, 0xb8, 0x4c, 0x04, 0xad, 0xf1, 0x12, 0x4c, 0xea, 0x12, 0x04, 0x2f, 0x81, 0xad, 0x62, 0x39, 0x30, 0x25, 0x72, 0x7a, 0xa0, 0x38, 0x87, 0xe5, 0x39, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_414 = { .name = "ecdh_brainpoolp256r1_414", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_414_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_414_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_414_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 116 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 415 for ECDH, tcId is 117 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_415_peerpubkey[] = { 0xa1, 0x99, 0x7b, 0x75, 0x84, 0x4c, 0xe5, 0x4f, 0x3e, 0x26, 0xdf, 0x6c, 0xbf, 0xc3, 0xb1, 0x13, 0x5b, 0xdc, 0xde, 0xf0, 0x47, 0x7a, 0x55, 0x88, 0xe4, 0x0c, 0x59, 0xfd, 0xcb, 0xe1, 0xd1, 0xf3, 0x0a, 0xd6, 0xb8, 0x3f, 0xd2, 0xaf, 0x20, 0xc9, 0xcd, 0x69, 0xc0, 0x41, 0x23, 0xb9, 0x1b, 0xe1, 0x30, 0x33, 0x12, 0x51, 0x62, 0x44, 0x43, 0xc5, 0xf6, 0x47, 0x63, 0x06, 0x93, 0x7d, 0xd7, 0x49, }; static const unsigned char ecdh_brainpoolp256r1_415_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_415_sharedsecret[] = { 0x93, 0xe0, 0x4e, 0x72, 0x3d, 0xb8, 0xd6, 0x55, 0x59, 0x7c, 0x69, 0x49, 0xc2, 0xd4, 0x65, 0xeb, 0x9f, 0x12, 0xab, 0x1a, 0xe1, 0x2e, 0x57, 0x93, 0x22, 0xad, 0xa9, 0x72, 0x6e, 0x7b, 0x9a, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_415 = { .name = "ecdh_brainpoolp256r1_415", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_415_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_415_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_415_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 117 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 416 for ECDH, tcId is 118 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_416_peerpubkey[] = { 0x2b, 0xcc, 0x4a, 0xb0, 0x18, 0x34, 0xaa, 0x4a, 0xd5, 0xfa, 0x62, 0x70, 0xc0, 0xf7, 0xde, 0x71, 0xe5, 0x6f, 0xe6, 0x51, 0xc5, 0x81, 0xbb, 0x2d, 0xdd, 0x46, 0x51, 0x03, 0x60, 0x0d, 0x29, 0x1e, 0x79, 0x0a, 0x3b, 0x9f, 0x70, 0xf1, 0x15, 0xfb, 0x08, 0xa4, 0xa8, 0x34, 0x24, 0x5a, 0x61, 0x93, 0xaa, 0x80, 0x33, 0x02, 0xd3, 0xb9, 0x5b, 0x14, 0x1d, 0x1e, 0x09, 0x4a, 0xc0, 0xdc, 0x60, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_416_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_416_sharedsecret[] = { 0x6b, 0x2a, 0xe6, 0x3c, 0x6b, 0xd9, 0x4f, 0x50, 0xed, 0x8a, 0xe5, 0x9b, 0x83, 0xb5, 0x03, 0x6a, 0x55, 0x90, 0xc7, 0xc3, 0xda, 0xef, 0x6c, 0xee, 0x65, 0xbc, 0x6b, 0x9a, 0x28, 0xcf, 0x70, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_416 = { .name = "ecdh_brainpoolp256r1_416", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_416_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_416_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_416_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 118 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 417 for ECDH, tcId is 119 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_417_peerpubkey[] = { 0x94, 0xe4, 0x09, 0x12, 0xae, 0x20, 0x08, 0x8a, 0xc6, 0xc0, 0x82, 0x88, 0x4b, 0xab, 0x70, 0x6e, 0x5e, 0x73, 0x91, 0xb1, 0x6d, 0x22, 0x07, 0xae, 0xce, 0xc5, 0xce, 0x6c, 0x72, 0xc9, 0x9d, 0xa6, 0x66, 0x41, 0x9d, 0x68, 0x30, 0xde, 0x0c, 0x29, 0x19, 0x0f, 0x81, 0x49, 0x3e, 0x2c, 0x63, 0xc4, 0xe7, 0x5f, 0x63, 0x13, 0xc8, 0xea, 0x35, 0x43, 0xa5, 0xc8, 0xe6, 0xdb, 0x6b, 0xf6, 0x53, 0xf9, }; static const unsigned char ecdh_brainpoolp256r1_417_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_417_sharedsecret[] = { 0x1e, 0x26, 0x76, 0xa0, 0x91, 0xb9, 0xab, 0x82, 0x12, 0xa5, 0x25, 0x62, 0xaa, 0xef, 0x64, 0x85, 0x54, 0x47, 0x20, 0xbb, 0x40, 0x3b, 0xd0, 0x2c, 0xe0, 0x09, 0xf4, 0x1c, 0x17, 0x77, 0x0b, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_417 = { .name = "ecdh_brainpoolp256r1_417", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_417_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_417_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_417_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 119 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 418 for ECDH, tcId is 120 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_418_peerpubkey[] = { 0x16, 0x91, 0x45, 0x95, 0xd7, 0xe6, 0x68, 0xc0, 0x21, 0x4a, 0x69, 0xff, 0xeb, 0x49, 0xb0, 0x40, 0xbe, 0x36, 0x9b, 0x59, 0x4c, 0x4c, 0xf3, 0x38, 0xcc, 0x17, 0xf5, 0x36, 0x93, 0x61, 0x1c, 0x81, 0x47, 0x03, 0x59, 0xd2, 0x1f, 0xa7, 0x07, 0xc5, 0x49, 0x05, 0x53, 0x61, 0x66, 0x55, 0x2f, 0xf7, 0x88, 0xb7, 0x80, 0xb6, 0x38, 0xf9, 0xe8, 0xb1, 0xad, 0xda, 0x69, 0xb9, 0x32, 0xd0, 0xa6, 0xb2, }; static const unsigned char ecdh_brainpoolp256r1_418_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_418_sharedsecret[] = { 0x4d, 0xb7, 0xea, 0x61, 0xe0, 0x53, 0xe3, 0xf7, 0x35, 0x74, 0x04, 0xe0, 0x25, 0x34, 0x07, 0xa7, 0x91, 0x9c, 0x04, 0x81, 0x83, 0xd1, 0xb9, 0xbb, 0x49, 0xa7, 0x41, 0xf6, 0xdb, 0x96, 0xd7, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_418 = { .name = "ecdh_brainpoolp256r1_418", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_418_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_418_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_418_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 120 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 419 for ECDH, tcId is 121 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_419_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xe0, 0xe9, 0xe8, 0xd9, 0x8f, 0xb8, 0x9d, 0xa2, 0xa3, 0x2b, 0x2c, 0x76, 0x18, 0xb2, 0x6b, 0xb9, 0x9b, 0x92, 0x0f, 0x02, 0xa5, 0xe8, 0x31, 0xa1, 0x42, 0xe6, 0xc8, 0x67, 0x31, 0x10, 0xcd, }; static const unsigned char ecdh_brainpoolp256r1_419_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_419_sharedsecret[] = { 0x94, 0x7d, 0x51, 0x8a, 0xa2, 0x90, 0xbc, 0xe9, 0x1c, 0x59, 0x26, 0x51, 0x0c, 0xa8, 0xdf, 0xbc, 0xfa, 0x2d, 0x11, 0x2b, 0x8a, 0x5c, 0xab, 0x33, 0xc8, 0xfe, 0xb5, 0xa3, 0x0e, 0x76, 0xf1, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_419 = { .name = "ecdh_brainpoolp256r1_419", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_419_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_419_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_419_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 121 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 420 for ECDH, tcId is 122 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_420_peerpubkey[] = { 0x02, 0xba, 0x09, 0x1e, 0x6f, 0x30, 0x6c, 0x15, 0x7c, 0x2b, 0x84, 0x52, 0x50, 0xc9, 0x4e, 0x3f, 0xdc, 0xb1, 0x78, 0x41, 0xa9, 0xaf, 0x6f, 0x75, 0x74, 0x92, 0xc7, 0xad, 0xcb, 0xda, 0x4e, 0x7a, 0xa2, 0x13, 0x90, 0x95, 0x3b, 0x60, 0x7d, 0xd7, 0xf0, 0x04, 0xd4, 0x32, 0x1f, 0x89, 0x2f, 0x96, 0x02, 0x34, 0xd3, 0x18, 0x4d, 0xcc, 0x4c, 0x73, 0xcf, 0xf7, 0xab, 0x2d, 0x2f, 0xb1, 0xa5, 0x07, }; static const unsigned char ecdh_brainpoolp256r1_420_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_420_sharedsecret[] = { 0x17, 0x45, 0x13, 0x23, 0x49, 0xd4, 0xa7, 0x6c, 0x83, 0x4e, 0x95, 0x04, 0x9c, 0x5a, 0x6f, 0xa5, 0x56, 0xda, 0x8d, 0x2f, 0xb2, 0xab, 0xf8, 0x14, 0x14, 0x72, 0x9b, 0x9e, 0x78, 0x59, 0x0f, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_420 = { .name = "ecdh_brainpoolp256r1_420", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_420_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_420_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_420_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 122 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 421 for ECDH, tcId is 123 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_421_peerpubkey[] = { 0x62, 0xd3, 0xc4, 0x6b, 0xe6, 0xc2, 0xc8, 0x35, 0x6d, 0x45, 0x38, 0x06, 0x46, 0x87, 0x3a, 0xe1, 0x36, 0x2b, 0xa4, 0x80, 0x6e, 0x40, 0x99, 0x47, 0x52, 0xc4, 0x89, 0xe8, 0x1f, 0xf5, 0xbe, 0x04, 0x0e, 0x60, 0xfd, 0xa5, 0x25, 0x54, 0x22, 0x28, 0xe6, 0xad, 0xb7, 0xe8, 0x5b, 0x53, 0x64, 0xf2, 0xea, 0x0b, 0xb0, 0x29, 0xd3, 0xa2, 0xa3, 0xc6, 0xf4, 0x07, 0xae, 0xf9, 0xff, 0x3b, 0xfa, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_421_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_421_sharedsecret[] = { 0x9e, 0x52, 0x72, 0x4a, 0x88, 0x0c, 0xc3, 0x49, 0xd7, 0xef, 0x51, 0xeb, 0x54, 0xaf, 0xa8, 0x17, 0x16, 0x5a, 0xc3, 0x3a, 0x05, 0x3c, 0x7c, 0x0e, 0x62, 0x7b, 0x98, 0x2a, 0xf1, 0xa9, 0x55, 0x7a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_421 = { .name = "ecdh_brainpoolp256r1_421", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_421_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_421_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_421_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 123 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 422 for ECDH, tcId is 124 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_422_peerpubkey[] = { 0xa0, 0xb2, 0x67, 0xc8, 0x2e, 0xa3, 0xec, 0x2d, 0x29, 0xbe, 0x91, 0x26, 0x17, 0xd6, 0x1d, 0xe7, 0x05, 0x38, 0x09, 0x22, 0x51, 0x9f, 0x13, 0xec, 0xc1, 0x77, 0xa3, 0xab, 0x60, 0x2a, 0x2e, 0x0a, 0x69, 0xe0, 0x21, 0x3c, 0x68, 0x01, 0x2f, 0x6c, 0x53, 0x0c, 0xc3, 0xed, 0x44, 0xf2, 0x85, 0x55, 0x1c, 0x1f, 0x40, 0x0d, 0x42, 0xcd, 0xa9, 0xcd, 0xc3, 0xd7, 0x5b, 0x9a, 0xb3, 0x3a, 0xb1, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_422_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_422_sharedsecret[] = { 0x97, 0x28, 0x37, 0x59, 0x38, 0x48, 0xc7, 0x54, 0x4a, 0x3c, 0x98, 0x47, 0x7a, 0x88, 0xea, 0x5c, 0xf7, 0x9f, 0xbe, 0x3b, 0x27, 0x3b, 0x8c, 0x92, 0x81, 0x2c, 0xa0, 0xfe, 0x97, 0x23, 0x4a, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_422 = { .name = "ecdh_brainpoolp256r1_422", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_422_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_422_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_422_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 124 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 423 for ECDH, tcId is 125 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_423_peerpubkey[] = { 0x2b, 0xb3, 0xd2, 0xc5, 0x97, 0xbb, 0xbb, 0x17, 0xed, 0xcd, 0xae, 0x8a, 0x39, 0xb0, 0x5f, 0xa4, 0xc1, 0x17, 0xdf, 0x53, 0x76, 0xce, 0x2a, 0x53, 0x9f, 0xc6, 0xa6, 0x1f, 0x54, 0x1a, 0xd3, 0x62, 0x9e, 0x6c, 0xa7, 0x65, 0x5d, 0x46, 0x4a, 0x5a, 0xc8, 0x62, 0xbf, 0x4f, 0x61, 0x4f, 0xf0, 0xe3, 0x90, 0xf1, 0xe6, 0xe4, 0xe8, 0x93, 0xcb, 0x6e, 0x4f, 0xfc, 0x3c, 0x78, 0xda, 0x22, 0x41, 0x15, }; static const unsigned char ecdh_brainpoolp256r1_423_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_423_sharedsecret[] = { 0x2a, 0xdf, 0x69, 0x6b, 0x61, 0x37, 0xc9, 0x3f, 0xdf, 0x58, 0x91, 0x39, 0xf2, 0x42, 0x4d, 0x30, 0x94, 0x66, 0x1b, 0x01, 0xdf, 0x2c, 0x89, 0xd9, 0xe1, 0xbf, 0xe4, 0xe1, 0xbb, 0xe5, 0x1c, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_423 = { .name = "ecdh_brainpoolp256r1_423", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_423_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_423_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_423_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 125 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 424 for ECDH, tcId is 126 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_424_peerpubkey[] = { 0x9f, 0x28, 0xc2, 0x0f, 0x28, 0x05, 0xd0, 0xf1, 0xa1, 0x5f, 0x1b, 0xbd, 0x66, 0x4b, 0xfb, 0x6f, 0x9f, 0x8d, 0xb1, 0x07, 0xe3, 0xcd, 0x35, 0x87, 0xf2, 0x24, 0xbb, 0x08, 0xc2, 0x92, 0xdd, 0x50, 0x2f, 0xfb, 0x70, 0x60, 0x94, 0x73, 0x86, 0x8d, 0x54, 0x37, 0xbe, 0x40, 0x39, 0x23, 0xed, 0x74, 0x1c, 0x0c, 0xe0, 0xe8, 0x45, 0xcd, 0xdb, 0xab, 0xec, 0xbf, 0x11, 0xaf, 0x65, 0xe5, 0xe6, 0xc3, }; static const unsigned char ecdh_brainpoolp256r1_424_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_424_sharedsecret[] = { 0x0f, 0x5c, 0x2b, 0x3b, 0x6c, 0x67, 0x9b, 0x25, 0x70, 0x6d, 0x1d, 0x25, 0xba, 0x44, 0x01, 0xc1, 0xd6, 0xd3, 0x61, 0xab, 0x1a, 0x5f, 0x2d, 0x83, 0x89, 0x80, 0x80, 0x56, 0x90, 0x2e, 0xee, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_424 = { .name = "ecdh_brainpoolp256r1_424", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_424_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_424_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_424_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 126 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 425 for ECDH, tcId is 127 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_425_peerpubkey[] = { 0x7b, 0xc2, 0x12, 0x05, 0x3d, 0x5d, 0x71, 0xe3, 0x36, 0x65, 0x69, 0xcb, 0xe4, 0x05, 0xf5, 0x56, 0x91, 0x9b, 0x84, 0xf3, 0x4f, 0x06, 0x99, 0xeb, 0x50, 0x68, 0x35, 0x46, 0x97, 0xf6, 0x3f, 0x6f, 0x1f, 0xdb, 0xe5, 0x55, 0x2c, 0x39, 0xfd, 0x3a, 0xb5, 0x45, 0x65, 0x2a, 0xd8, 0xda, 0x80, 0xdb, 0x21, 0x30, 0xb6, 0x02, 0xa6, 0xf2, 0x34, 0x47, 0xb0, 0x43, 0x0d, 0x71, 0x97, 0x2c, 0xe1, 0x48, }; static const unsigned char ecdh_brainpoolp256r1_425_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_425_sharedsecret[] = { 0xa4, 0x03, 0xf0, 0x24, 0x18, 0xd9, 0x45, 0x12, 0xe0, 0x23, 0xe0, 0xb4, 0x65, 0x6e, 0x39, 0x2e, 0xda, 0xe0, 0x67, 0x49, 0x35, 0xe7, 0x52, 0xd1, 0x18, 0x21, 0x23, 0x3d, 0x9f, 0x8b, 0x90, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_425 = { .name = "ecdh_brainpoolp256r1_425", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_425_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_425_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_425_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 127 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 426 for ECDH, tcId is 128 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_426_peerpubkey[] = { 0x48, 0x76, 0x51, 0xe0, 0x84, 0x52, 0xbe, 0x04, 0x48, 0x51, 0x7b, 0xf9, 0xd0, 0xf0, 0x5c, 0x12, 0xc7, 0x51, 0xf4, 0xdc, 0x44, 0x86, 0x7f, 0x58, 0x0d, 0x32, 0x54, 0x64, 0xb9, 0x2e, 0xfb, 0xc3, 0x13, 0x91, 0x49, 0x58, 0x25, 0xe1, 0x04, 0x16, 0x17, 0x77, 0xcf, 0xce, 0x15, 0x35, 0x5b, 0x22, 0xe5, 0x1a, 0xa8, 0x53, 0x97, 0x46, 0x36, 0xf1, 0x26, 0xd2, 0x8f, 0xad, 0x0a, 0x84, 0xc3, 0x4b, }; static const unsigned char ecdh_brainpoolp256r1_426_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_426_sharedsecret[] = { 0x59, 0x3a, 0x63, 0xe0, 0x51, 0x5c, 0xcf, 0xdc, 0x96, 0x83, 0xe3, 0x59, 0xc4, 0x67, 0x71, 0x9e, 0xd2, 0x03, 0x0e, 0x57, 0x89, 0x1f, 0x8c, 0x3e, 0x34, 0xbe, 0xfb, 0x9d, 0x6a, 0xc1, 0x2b, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_426 = { .name = "ecdh_brainpoolp256r1_426", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_426_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_426_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_426_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 128 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 427 for ECDH, tcId is 129 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_427_peerpubkey[] = { 0x87, 0x7b, 0xc1, 0xdb, 0x7b, 0x1a, 0x0d, 0x01, 0x42, 0x1b, 0x4f, 0xe7, 0x3c, 0x71, 0x4e, 0x61, 0xdb, 0x00, 0x79, 0xe8, 0x7b, 0xb5, 0x04, 0xfc, 0x8f, 0xce, 0x55, 0x99, 0x8d, 0xe9, 0x3b, 0x35, 0x28, 0xcf, 0x81, 0x86, 0x3e, 0x83, 0x5f, 0x66, 0x72, 0x2e, 0x43, 0x20, 0x1b, 0xfe, 0xb8, 0xa3, 0x7b, 0xd9, 0x54, 0x85, 0xe0, 0xd1, 0xb7, 0xa5, 0x13, 0x4b, 0x3b, 0xf5, 0x2b, 0x21, 0x51, 0xab, }; static const unsigned char ecdh_brainpoolp256r1_427_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_427_sharedsecret[] = { 0x83, 0xd9, 0xdc, 0x4c, 0x11, 0x6f, 0x94, 0xef, 0x45, 0x43, 0x36, 0x72, 0x0e, 0x2e, 0x38, 0xc7, 0x01, 0xc0, 0x42, 0x89, 0x17, 0x97, 0xdb, 0x45, 0x87, 0x4b, 0x6d, 0xe8, 0x52, 0x27, 0x73, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_427 = { .name = "ecdh_brainpoolp256r1_427", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_427_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_427_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_427_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 129 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 428 for ECDH, tcId is 130 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_428_peerpubkey[] = { 0x89, 0x21, 0x4f, 0xe2, 0xc9, 0x50, 0xe7, 0x7e, 0x50, 0x3d, 0x4c, 0x39, 0x6b, 0xed, 0xbb, 0x82, 0x48, 0x8c, 0x5a, 0x8f, 0x7d, 0xa7, 0x67, 0xe3, 0xa9, 0x94, 0x86, 0xac, 0xef, 0xe6, 0x2a, 0xa3, 0x8c, 0x69, 0x8c, 0xae, 0xd1, 0x57, 0xd7, 0xa5, 0xa2, 0x48, 0x30, 0x4c, 0x41, 0xd6, 0x16, 0x9e, 0x00, 0xd3, 0xc3, 0x06, 0xbd, 0xc0, 0x7a, 0x06, 0x63, 0xa5, 0xe9, 0xf6, 0xd7, 0xf9, 0x33, 0x84, }; static const unsigned char ecdh_brainpoolp256r1_428_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_428_sharedsecret[] = { 0x94, 0x63, 0x3f, 0xae, 0x53, 0xbf, 0xe2, 0xb5, 0x2f, 0x9a, 0xfb, 0x58, 0xd6, 0x9b, 0x0f, 0x2d, 0x1c, 0xcc, 0x46, 0x28, 0x29, 0xfa, 0x8f, 0xbc, 0xed, 0xa7, 0x6b, 0x97, 0xcd, 0xfa, 0xec, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_428 = { .name = "ecdh_brainpoolp256r1_428", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_428_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_428_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_428_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 130 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 429 for ECDH, tcId is 131 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_429_peerpubkey[] = { 0x4c, 0xec, 0x30, 0x02, 0xa4, 0x42, 0xdd, 0xa5, 0xfa, 0x45, 0x9c, 0xbf, 0xd8, 0xb1, 0x10, 0xbe, 0xcc, 0xec, 0x77, 0xbe, 0x82, 0xa2, 0x6f, 0x95, 0xa8, 0x32, 0x0d, 0x99, 0xd6, 0x86, 0x98, 0xe2, 0x47, 0xec, 0xad, 0x54, 0xa6, 0x04, 0x2c, 0x23, 0x34, 0x6f, 0xfd, 0xca, 0x6c, 0x54, 0x63, 0xf5, 0xff, 0x93, 0xf4, 0x76, 0x3b, 0x0e, 0x49, 0x4c, 0xc0, 0x48, 0xaa, 0x2a, 0xb2, 0x85, 0x7c, 0x9e, }; static const unsigned char ecdh_brainpoolp256r1_429_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_429_sharedsecret[] = { 0xa1, 0x2f, 0x5b, 0x82, 0xea, 0x93, 0xb5, 0x9d, 0x2f, 0x3c, 0x43, 0xf4, 0x22, 0x60, 0x33, 0xfb, 0x3a, 0x7a, 0x64, 0x89, 0x29, 0xd1, 0x6b, 0x5e, 0xe3, 0x51, 0xae, 0x7a, 0xd8, 0xec, 0x64, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_429 = { .name = "ecdh_brainpoolp256r1_429", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_429_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_429_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_429_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 131 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 430 for ECDH, tcId is 132 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_430_peerpubkey[] = { 0x55, 0x9d, 0x8e, 0x5c, 0xf3, 0x59, 0x46, 0x8d, 0xa7, 0x2d, 0xcd, 0x67, 0x42, 0xff, 0x1a, 0xf5, 0xea, 0x42, 0xfe, 0xbf, 0x4d, 0x63, 0x76, 0xd9, 0x73, 0x0e, 0x65, 0x25, 0xc2, 0x6c, 0xef, 0x10, 0x5c, 0xd0, 0xcc, 0x35, 0x12, 0xa6, 0x44, 0x71, 0x5f, 0xd0, 0x74, 0x7d, 0xce, 0x11, 0x2d, 0x29, 0x1e, 0x09, 0xeb, 0xd8, 0x63, 0xc7, 0x0a, 0x56, 0x4f, 0xcb, 0xc2, 0xfc, 0xf5, 0x0f, 0x70, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_430_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_430_sharedsecret[] = { 0x81, 0xf8, 0x54, 0xb1, 0x2c, 0xed, 0x0b, 0x0d, 0xe4, 0x75, 0xfa, 0xdc, 0x30, 0xcc, 0xb2, 0x28, 0xf1, 0xe6, 0xab, 0xc9, 0x9a, 0x89, 0x04, 0x6d, 0x89, 0xeb, 0xf9, 0xf4, 0x56, 0x85, 0x8e, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_430 = { .name = "ecdh_brainpoolp256r1_430", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_430_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_430_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_430_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 132 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 431 for ECDH, tcId is 133 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_431_peerpubkey[] = { 0x69, 0xf1, 0x42, 0x07, 0xc8, 0xee, 0x3f, 0xcc, 0xeb, 0x57, 0xb4, 0x1f, 0xa4, 0x7f, 0x45, 0xe2, 0x15, 0x88, 0xc5, 0x19, 0x59, 0xf5, 0x93, 0xf8, 0x54, 0x77, 0x26, 0x2d, 0x00, 0x80, 0xf6, 0x15, 0x02, 0xa7, 0xe4, 0xaa, 0x37, 0x5e, 0xbd, 0x7e, 0x36, 0x58, 0x82, 0x5e, 0xd6, 0xc7, 0x4f, 0x1b, 0x1d, 0xd8, 0x67, 0xaa, 0xcc, 0xd8, 0x46, 0xed, 0x06, 0x67, 0x25, 0x82, 0xb0, 0x5a, 0xf8, 0x5d, }; static const unsigned char ecdh_brainpoolp256r1_431_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_431_sharedsecret[] = { 0x57, 0x76, 0x9a, 0xdc, 0x94, 0x6c, 0xe0, 0xb5, 0x07, 0x1f, 0x28, 0xc9, 0x0d, 0xb9, 0xe1, 0x13, 0x8f, 0x74, 0x3e, 0x87, 0xac, 0xf0, 0xca, 0xc3, 0x1b, 0x7d, 0x9b, 0x37, 0x1d, 0x02, 0x85, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_431 = { .name = "ecdh_brainpoolp256r1_431", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_431_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_431_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_431_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 133 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 432 for ECDH, tcId is 134 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_432_peerpubkey[] = { 0x38, 0x56, 0x64, 0x4a, 0x00, 0xa3, 0xd3, 0xb4, 0x04, 0x01, 0x31, 0xbd, 0xa5, 0x80, 0x78, 0x37, 0x1f, 0x87, 0x90, 0xea, 0x32, 0x1c, 0x86, 0xba, 0x5b, 0xd7, 0x38, 0x2b, 0x8b, 0x60, 0xed, 0x0a, 0x27, 0xe6, 0x47, 0xe3, 0x11, 0xa6, 0x87, 0x12, 0x37, 0x0b, 0x55, 0xba, 0x77, 0x88, 0x8b, 0xd3, 0xf3, 0xad, 0xba, 0x6a, 0x23, 0xae, 0xac, 0xe9, 0x81, 0x72, 0xd9, 0x42, 0xc8, 0x72, 0x72, 0xc5, }; static const unsigned char ecdh_brainpoolp256r1_432_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_432_sharedsecret[] = { 0x0e, 0x12, 0xf6, 0xde, 0xd6, 0x64, 0x4d, 0x6f, 0x41, 0x07, 0x31, 0xad, 0x68, 0x33, 0x1b, 0x81, 0x57, 0x2c, 0x34, 0xff, 0x90, 0xc1, 0xcc, 0x62, 0x70, 0x9c, 0x6e, 0xe5, 0xdb, 0x0c, 0x7a, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_432 = { .name = "ecdh_brainpoolp256r1_432", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_432_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_432_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_432_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 134 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 433 for ECDH, tcId is 135 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_433_peerpubkey[] = { 0x37, 0x27, 0x64, 0x32, 0x79, 0x4d, 0x8b, 0xd9, 0xb6, 0x1f, 0xb3, 0x5a, 0xf8, 0x06, 0x01, 0x60, 0xe9, 0xa5, 0x6b, 0x4d, 0x46, 0x10, 0x99, 0x2f, 0xb4, 0x1f, 0x39, 0xc2, 0x71, 0xd5, 0xe6, 0x20, 0x64, 0xb4, 0xf1, 0x1b, 0x72, 0x7b, 0xa1, 0x23, 0xfd, 0xf7, 0xde, 0xd0, 0xa6, 0xc1, 0xf0, 0xa6, 0x24, 0x54, 0x70, 0x47, 0xaf, 0x2b, 0x08, 0x7b, 0xd6, 0x4e, 0x56, 0x85, 0xca, 0xfc, 0x9a, 0x0e, }; static const unsigned char ecdh_brainpoolp256r1_433_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_433_sharedsecret[] = { 0x4d, 0x54, 0x69, 0x79, 0x23, 0x4e, 0x05, 0x2d, 0xe7, 0x2f, 0x47, 0x71, 0xb1, 0x30, 0x05, 0x20, 0xf6, 0x80, 0xbc, 0x7e, 0xe7, 0xd4, 0x4e, 0x7c, 0xad, 0xa6, 0xaf, 0xff, 0x55, 0x08, 0xe4, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_433 = { .name = "ecdh_brainpoolp256r1_433", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_433_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_433_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_433_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 135 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 434 for ECDH, tcId is 136 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_434_peerpubkey[] = { 0x7f, 0x32, 0xdd, 0x17, 0xd9, 0x3a, 0x7b, 0xbd, 0xe5, 0x7e, 0xc5, 0x7d, 0x2b, 0xc5, 0xa9, 0xf6, 0x8d, 0xd2, 0x20, 0x9c, 0x54, 0x17, 0x8b, 0x49, 0x38, 0x25, 0x92, 0x17, 0x72, 0x3a, 0x6f, 0x4e, 0x0a, 0x3f, 0x81, 0x51, 0x40, 0x58, 0x95, 0x1e, 0x10, 0xcf, 0x82, 0xe5, 0x39, 0x37, 0x36, 0xc1, 0x03, 0xf6, 0x83, 0xa6, 0x57, 0x66, 0x79, 0x48, 0x3d, 0x46, 0xa7, 0x12, 0x97, 0xd4, 0xf3, 0x02, }; static const unsigned char ecdh_brainpoolp256r1_434_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_434_sharedsecret[] = { 0x3b, 0x18, 0x07, 0xda, 0xe4, 0xe7, 0x9a, 0xc3, 0xc5, 0xe4, 0x8c, 0x57, 0x2a, 0xd3, 0x04, 0xd8, 0xbd, 0x6d, 0x71, 0x53, 0x13, 0x80, 0xc1, 0x33, 0x6b, 0xfd, 0xe5, 0x57, 0x7b, 0x6a, 0xfa, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_434 = { .name = "ecdh_brainpoolp256r1_434", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_434_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_434_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_434_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 136 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 435 for ECDH, tcId is 137 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_435_peerpubkey[] = { 0x09, 0x72, 0xfd, 0x98, 0x4f, 0x4a, 0x22, 0xa7, 0x8e, 0xf6, 0xc7, 0xf9, 0x10, 0xca, 0xdf, 0x46, 0x16, 0x51, 0x4b, 0xe2, 0xb7, 0x05, 0x3b, 0x25, 0xdf, 0x56, 0xd7, 0xdd, 0x93, 0xb0, 0xe8, 0xcd, 0x9b, 0x2e, 0x53, 0x33, 0x22, 0x94, 0x61, 0x6b, 0x65, 0x67, 0xe6, 0x6e, 0x43, 0xee, 0x9d, 0xb7, 0x48, 0xfe, 0x81, 0xe3, 0x8e, 0x50, 0x72, 0xf9, 0x6d, 0xfe, 0x73, 0x19, 0xe9, 0xb1, 0x7b, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_435_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_435_sharedsecret[] = { 0x65, 0x48, 0xa4, 0x91, 0xcd, 0x0e, 0x47, 0xf2, 0xb1, 0x00, 0x86, 0x91, 0xf4, 0x7a, 0xde, 0xda, 0xcc, 0xbe, 0x9c, 0xfb, 0xfe, 0xd6, 0x3b, 0xef, 0x0c, 0x38, 0x10, 0xac, 0x36, 0x96, 0xc0, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_435 = { .name = "ecdh_brainpoolp256r1_435", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_435_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_435_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_435_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 137 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 436 for ECDH, tcId is 138 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_436_peerpubkey[] = { 0x2a, 0x5d, 0xdc, 0x0c, 0x7d, 0xbd, 0x53, 0xdb, 0x0a, 0xac, 0x70, 0x1a, 0x5b, 0x48, 0x82, 0xad, 0x58, 0x62, 0xb0, 0xe4, 0xe4, 0xd6, 0xf3, 0x67, 0x05, 0x87, 0xe4, 0x7b, 0x84, 0xf7, 0x0d, 0x41, 0x44, 0x43, 0x99, 0xed, 0xf0, 0xff, 0x23, 0xe1, 0xfc, 0xe1, 0x70, 0xe8, 0xde, 0xba, 0xd0, 0xc0, 0x20, 0xb3, 0xc5, 0x01, 0x1c, 0x0a, 0x60, 0x15, 0x6a, 0xbe, 0x0f, 0xc7, 0x66, 0x15, 0x9d, 0x70, }; static const unsigned char ecdh_brainpoolp256r1_436_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_436_sharedsecret[] = { 0x7c, 0xc5, 0xcc, 0x43, 0x67, 0x79, 0x2d, 0x2f, 0xd9, 0x11, 0x7b, 0x56, 0xc4, 0x3e, 0xbc, 0x32, 0x88, 0x08, 0x75, 0x56, 0xd3, 0xad, 0x1d, 0x47, 0x6a, 0x7e, 0x26, 0x1d, 0xb3, 0x65, 0xf0, 0x90, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_436 = { .name = "ecdh_brainpoolp256r1_436", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_436_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_436_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_436_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 138 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 437 for ECDH, tcId is 139 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_437_peerpubkey[] = { 0x28, 0x34, 0xc1, 0x50, 0x74, 0x42, 0xd2, 0xae, 0xd8, 0xb0, 0x0e, 0x59, 0x65, 0x29, 0xb1, 0x54, 0xd2, 0x7e, 0xe6, 0x19, 0x27, 0x6b, 0x03, 0xf4, 0x2f, 0x20, 0x6d, 0x24, 0x19, 0x0c, 0xd8, 0x23, 0x1e, 0x66, 0x00, 0xd1, 0x23, 0xff, 0xeb, 0xf5, 0xeb, 0xe8, 0xb8, 0xe3, 0x23, 0x57, 0xb0, 0xac, 0xe7, 0x39, 0x81, 0x4e, 0xe6, 0xfd, 0x02, 0xab, 0xbc, 0x4b, 0xf3, 0xc8, 0xd7, 0xb3, 0xd6, 0x3e, }; static const unsigned char ecdh_brainpoolp256r1_437_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_437_sharedsecret[] = { 0x6c, 0x99, 0x09, 0x82, 0x91, 0x0f, 0xb9, 0xdf, 0x8a, 0x3c, 0x88, 0x4e, 0x6e, 0xc3, 0x51, 0xaa, 0xee, 0xda, 0xcd, 0xbf, 0xe4, 0xf9, 0x29, 0xed, 0xf9, 0xd5, 0x0d, 0xe8, 0xa3, 0x01, 0xf0, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_437 = { .name = "ecdh_brainpoolp256r1_437", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_437_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_437_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_437_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 139 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 438 for ECDH, tcId is 140 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_438_peerpubkey[] = { 0x4c, 0xb7, 0x90, 0x67, 0xb0, 0xdd, 0x9e, 0x22, 0xb2, 0x73, 0x10, 0x3c, 0xb7, 0x22, 0x3a, 0xa5, 0x42, 0x07, 0x20, 0x2d, 0x41, 0x91, 0x4f, 0x25, 0x4a, 0x11, 0x70, 0xa3, 0x3f, 0xa8, 0xda, 0xe8, 0x1e, 0x06, 0x91, 0x94, 0x28, 0xaa, 0x21, 0xbc, 0x0e, 0xdc, 0x24, 0x08, 0x6e, 0xe1, 0x35, 0x07, 0x8b, 0x57, 0x1f, 0x3b, 0x36, 0x8e, 0xdb, 0xec, 0x83, 0xfb, 0x57, 0xe5, 0xf1, 0x0e, 0xb7, 0x81, }; static const unsigned char ecdh_brainpoolp256r1_438_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_438_sharedsecret[] = { 0x5f, 0x8e, 0x75, 0xe1, 0x66, 0xe6, 0xa8, 0xeb, 0x47, 0x10, 0xfb, 0x1d, 0xca, 0xec, 0xb8, 0xf2, 0x37, 0x82, 0xb8, 0x63, 0xd1, 0xda, 0x0e, 0xc6, 0x13, 0x36, 0xa4, 0xf2, 0x7c, 0x48, 0xb1, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_438 = { .name = "ecdh_brainpoolp256r1_438", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_438_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_438_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_438_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 140 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 439 for ECDH, tcId is 141 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_439_peerpubkey[] = { 0x0e, 0x9d, 0x54, 0x6d, 0xa7, 0xab, 0x23, 0xbb, 0x71, 0x70, 0xc9, 0xdf, 0x54, 0xf5, 0x66, 0x30, 0x0c, 0x58, 0xcd, 0xa3, 0xb0, 0xb9, 0xb9, 0xe8, 0x58, 0x4f, 0x2e, 0x60, 0x01, 0xd7, 0x2f, 0x10, 0x63, 0xf4, 0xa4, 0x16, 0x66, 0x23, 0x1d, 0x50, 0x69, 0x7d, 0x6e, 0xcd, 0x66, 0xd6, 0x73, 0xb7, 0xcb, 0x2b, 0xf2, 0x61, 0x8b, 0xc1, 0x7f, 0x53, 0x1d, 0x04, 0xce, 0x2e, 0x72, 0x6f, 0xad, 0xfd, }; static const unsigned char ecdh_brainpoolp256r1_439_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_439_sharedsecret[] = { 0x3d, 0x7e, 0x1b, 0xaa, 0x3d, 0xc6, 0x9d, 0xc6, 0x51, 0xe3, 0x92, 0x94, 0x98, 0x38, 0x32, 0xe0, 0xe5, 0xd9, 0x7d, 0xec, 0xae, 0x95, 0xfe, 0x70, 0x6c, 0xe8, 0x84, 0x13, 0x32, 0x2f, 0x86, 0xc8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_439 = { .name = "ecdh_brainpoolp256r1_439", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_439_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_439_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_439_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 141 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 440 for ECDH, tcId is 142 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_440_peerpubkey[] = { 0x13, 0xa5, 0x92, 0xb6, 0xda, 0xb1, 0xe1, 0xad, 0xa1, 0x8e, 0xc4, 0x46, 0x64, 0xce, 0x34, 0x75, 0x34, 0x64, 0x86, 0xe1, 0xba, 0xda, 0x99, 0x37, 0xfc, 0x55, 0xac, 0x45, 0x50, 0x4a, 0xf7, 0x0e, 0x33, 0xb7, 0x25, 0x1b, 0xaf, 0x72, 0x69, 0x04, 0x5b, 0x25, 0x37, 0x2b, 0x2a, 0xa1, 0x45, 0xda, 0x30, 0x87, 0xa7, 0xbf, 0x0c, 0xa7, 0x5a, 0x8f, 0xef, 0x01, 0x2e, 0x10, 0x5c, 0x31, 0xb4, 0x59, }; static const unsigned char ecdh_brainpoolp256r1_440_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_440_sharedsecret[] = { 0x84, 0x4b, 0x43, 0xda, 0xe6, 0xcd, 0xfc, 0x36, 0x1e, 0xfe, 0x1f, 0xc8, 0xd9, 0xee, 0xd6, 0x7f, 0xf8, 0x57, 0xea, 0x6d, 0xdb, 0xb5, 0xd3, 0x4e, 0x08, 0x7a, 0x77, 0xda, 0x7d, 0xb3, 0xab, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_440 = { .name = "ecdh_brainpoolp256r1_440", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_440_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_440_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_440_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 142 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 441 for ECDH, tcId is 143 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_441_peerpubkey[] = { 0x12, 0x95, 0x9a, 0xa1, 0xba, 0xde, 0x85, 0xd5, 0x53, 0xe8, 0x06, 0x40, 0x88, 0xb9, 0x6f, 0x34, 0x54, 0xa6, 0xcf, 0x54, 0x05, 0x0a, 0xbd, 0x8a, 0x2f, 0x0b, 0x11, 0x3b, 0x82, 0x1a, 0xd4, 0x62, 0x93, 0xa9, 0x15, 0xb6, 0xad, 0xc7, 0x17, 0xe5, 0xdc, 0xd2, 0x95, 0x60, 0x19, 0xb7, 0x26, 0x46, 0xcb, 0xf1, 0x00, 0x7e, 0x28, 0xe7, 0xb2, 0xa1, 0xe4, 0xe9, 0x54, 0x76, 0x18, 0xac, 0xf6, 0xc7, }; static const unsigned char ecdh_brainpoolp256r1_441_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_441_sharedsecret[] = { 0x60, 0x3b, 0x2a, 0x29, 0x4a, 0x51, 0xd7, 0x6a, 0xf6, 0xc5, 0x11, 0x88, 0x25, 0xe6, 0xfd, 0xe2, 0xe5, 0x52, 0x66, 0x8c, 0x24, 0x71, 0xef, 0x17, 0x9f, 0xa9, 0x7c, 0x2e, 0x39, 0x0e, 0x96, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_441 = { .name = "ecdh_brainpoolp256r1_441", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_441_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_441_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_441_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 143 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 442 for ECDH, tcId is 144 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_442_peerpubkey[] = { 0x0f, 0xda, 0x40, 0x94, 0xb8, 0x77, 0x7d, 0x0c, 0x22, 0xdd, 0x32, 0x76, 0x55, 0x45, 0xf2, 0x75, 0xdd, 0xea, 0x0f, 0xa3, 0x15, 0x5b, 0x46, 0xc2, 0xc4, 0x14, 0x6b, 0x22, 0x7c, 0xca, 0xac, 0x38, 0x49, 0xc0, 0xa1, 0xcd, 0x78, 0x16, 0xcf, 0x3e, 0x5e, 0x97, 0xd0, 0x7f, 0x58, 0xb9, 0x81, 0x9d, 0x66, 0x00, 0x00, 0xbd, 0x17, 0x14, 0x7a, 0x00, 0x27, 0x61, 0xef, 0xe0, 0xfd, 0x49, 0xc0, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_442_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_442_sharedsecret[] = { 0x15, 0xd5, 0x93, 0x19, 0x88, 0x7a, 0x1f, 0x66, 0x10, 0x8a, 0xe3, 0x32, 0xb7, 0xa9, 0x45, 0xd1, 0xbc, 0x17, 0xac, 0x37, 0xf8, 0x19, 0x3f, 0xee, 0x97, 0x0d, 0x72, 0x7b, 0x76, 0x21, 0xcc, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_442 = { .name = "ecdh_brainpoolp256r1_442", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_442_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_442_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_442_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 144 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 443 for ECDH, tcId is 145 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_443_peerpubkey[] = { 0x5b, 0xfb, 0x60, 0x94, 0x6e, 0x4e, 0x21, 0xf5, 0xd1, 0xcb, 0x39, 0x7a, 0x7a, 0xd3, 0xa6, 0x8a, 0x68, 0x08, 0x95, 0x25, 0x7c, 0xda, 0xc5, 0xaa, 0x2f, 0x9b, 0x9e, 0x35, 0x1c, 0x80, 0xaf, 0x74, 0x21, 0x23, 0xee, 0xce, 0x5c, 0x66, 0x2e, 0xe4, 0x52, 0x6b, 0x2b, 0xc1, 0x86, 0xb6, 0xac, 0xe8, 0x44, 0x56, 0x56, 0xac, 0xe1, 0x73, 0x3f, 0x5f, 0xfa, 0x2a, 0x86, 0x1a, 0x20, 0x40, 0x42, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_443_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_443_sharedsecret[] = { 0x75, 0x50, 0x92, 0x54, 0x24, 0xa6, 0xb2, 0x11, 0xc6, 0x8c, 0xb5, 0xcd, 0x2e, 0x85, 0xba, 0xf8, 0x36, 0x87, 0x43, 0x85, 0x34, 0x51, 0x1e, 0xe4, 0x22, 0xfa, 0x4c, 0x0c, 0x1c, 0xca, 0xbd, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_443 = { .name = "ecdh_brainpoolp256r1_443", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_443_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_443_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_443_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 145 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 444 for ECDH, tcId is 146 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_444_peerpubkey[] = { 0x95, 0xe5, 0x4f, 0xd4, 0x7d, 0xd4, 0xe2, 0x0a, 0x2a, 0xa7, 0x2d, 0x94, 0xb4, 0x20, 0x89, 0x73, 0x0c, 0x08, 0x7b, 0x78, 0x4c, 0x75, 0xbf, 0x31, 0x7b, 0xeb, 0x96, 0x49, 0xa8, 0x83, 0xd9, 0x5a, 0x2b, 0xe6, 0xa4, 0x85, 0xb4, 0xd1, 0x42, 0x0a, 0x8f, 0x79, 0x0c, 0x54, 0xfc, 0x90, 0x50, 0x12, 0x61, 0x43, 0x73, 0x3e, 0xee, 0xe7, 0xf6, 0xde, 0x55, 0xc4, 0xf9, 0x5e, 0xa3, 0xc1, 0x25, 0x47, }; static const unsigned char ecdh_brainpoolp256r1_444_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_444_sharedsecret[] = { 0x7f, 0x18, 0x80, 0x5e, 0x96, 0xa9, 0x78, 0x7e, 0x3d, 0x69, 0x1e, 0x37, 0x6e, 0x5d, 0x2d, 0xfc, 0x9e, 0x60, 0xd0, 0x9b, 0xbe, 0x60, 0x3f, 0x6e, 0x83, 0x03, 0xa4, 0xba, 0x6d, 0x82, 0xc7, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_444 = { .name = "ecdh_brainpoolp256r1_444", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_444_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_444_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_444_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 146 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 445 for ECDH, tcId is 147 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_445_peerpubkey[] = { 0x0a, 0xa9, 0x9f, 0x2b, 0x50, 0x48, 0xe1, 0xcc, 0x60, 0x4b, 0x46, 0xb0, 0x18, 0x80, 0xa4, 0x42, 0x66, 0x1d, 0x0e, 0x30, 0x35, 0x22, 0x97, 0x3b, 0x74, 0x19, 0x6a, 0xaf, 0xf5, 0x6a, 0xd7, 0xf4, 0x5f, 0xd3, 0x30, 0x87, 0x99, 0x6a, 0xbe, 0xf6, 0x75, 0x6e, 0xe1, 0x3d, 0x27, 0x5c, 0x01, 0x6b, 0xab, 0x97, 0x6d, 0xc2, 0xc7, 0x7b, 0xa7, 0xdb, 0xab, 0x71, 0xd4, 0x4f, 0x5e, 0xff, 0x13, 0x0d, }; static const unsigned char ecdh_brainpoolp256r1_445_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_445_sharedsecret[] = { 0x8c, 0x9e, 0x5a, 0xb3, 0x8b, 0x14, 0xcd, 0xe8, 0x70, 0xc4, 0x13, 0xcb, 0x5b, 0x07, 0x54, 0x73, 0x4b, 0xc8, 0xaf, 0xd1, 0x11, 0xd5, 0xca, 0x9a, 0x49, 0xae, 0x95, 0xff, 0xa6, 0xa3, 0xe3, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_445 = { .name = "ecdh_brainpoolp256r1_445", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_445_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_445_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_445_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 147 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 446 for ECDH, tcId is 148 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_446_peerpubkey[] = { 0x1d, 0xa7, 0xd0, 0x36, 0xed, 0x78, 0xc8, 0x23, 0x1f, 0xa1, 0xfa, 0x4b, 0x85, 0xc4, 0x3d, 0x4b, 0xfd, 0x58, 0xfb, 0xa1, 0xba, 0x98, 0xdb, 0xe1, 0x6f, 0x7d, 0xcb, 0x5a, 0x23, 0x84, 0x4f, 0x41, 0x2f, 0xa9, 0x4d, 0x3d, 0x53, 0x32, 0xf3, 0xbb, 0xd4, 0x18, 0xab, 0x34, 0x07, 0x36, 0x04, 0xb6, 0x4d, 0xd4, 0xba, 0xce, 0xb6, 0x20, 0xd8, 0x98, 0x67, 0x0d, 0x6a, 0x0e, 0x18, 0x83, 0xca, 0x7e, }; static const unsigned char ecdh_brainpoolp256r1_446_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_446_sharedsecret[] = { 0x7e, 0x9b, 0x7f, 0x0b, 0xff, 0x1b, 0xd1, 0x2a, 0xbb, 0xcf, 0x4e, 0x36, 0x9f, 0x25, 0x2f, 0x44, 0xd0, 0xaa, 0xbb, 0x48, 0x89, 0x51, 0x4a, 0x19, 0xf9, 0x33, 0x97, 0x75, 0x04, 0x1b, 0xc2, 0x86, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_446 = { .name = "ecdh_brainpoolp256r1_446", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_446_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_446_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_446_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 148 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 447 for ECDH, tcId is 149 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_447_peerpubkey[] = { 0x89, 0x7e, 0xe1, 0xbd, 0xcb, 0x67, 0x4d, 0x36, 0xca, 0x76, 0x65, 0xab, 0x2e, 0x35, 0x96, 0xbc, 0x3a, 0xf7, 0x36, 0xd2, 0x67, 0xa5, 0x19, 0xd9, 0x9e, 0xd7, 0xe6, 0x14, 0xa5, 0x88, 0x0c, 0x8f, 0x8e, 0x96, 0xa4, 0xc6, 0x2d, 0xc3, 0xc3, 0x09, 0xfe, 0x82, 0x69, 0x1d, 0x5a, 0xcf, 0xf4, 0x48, 0x1a, 0x55, 0x64, 0x3d, 0xf6, 0xc9, 0x34, 0xfa, 0x76, 0x55, 0x76, 0x1a, 0x5c, 0x8f, 0x21, 0x38, }; static const unsigned char ecdh_brainpoolp256r1_447_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_447_sharedsecret[] = { 0x94, 0x67, 0xda, 0xcf, 0x4a, 0xce, 0x20, 0xbb, 0xc6, 0x28, 0x7e, 0x23, 0x84, 0xb2, 0xcb, 0xab, 0x17, 0xdd, 0xf9, 0x50, 0x64, 0xa6, 0x4f, 0xe4, 0x90, 0x08, 0x9f, 0x3f, 0x6f, 0x12, 0x2e, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_447 = { .name = "ecdh_brainpoolp256r1_447", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_447_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_447_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_447_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 149 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 448 for ECDH, tcId is 150 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_448_peerpubkey[] = { 0x1a, 0xac, 0xd6, 0xc8, 0x01, 0xae, 0xc8, 0x85, 0x35, 0xd0, 0xda, 0x08, 0xf5, 0x7f, 0x0f, 0xf4, 0x67, 0x73, 0x27, 0xc8, 0xa8, 0xe4, 0x70, 0xe1, 0x45, 0x2b, 0x99, 0xc9, 0xd2, 0x24, 0x41, 0x59, 0x15, 0x86, 0x81, 0xfc, 0x2b, 0xcf, 0x70, 0x58, 0x02, 0x73, 0x31, 0xa7, 0x12, 0x46, 0xd5, 0x46, 0x96, 0x1c, 0xd7, 0x1e, 0x32, 0x51, 0x37, 0x98, 0x5c, 0xb5, 0x14, 0x54, 0x7d, 0xdb, 0x76, 0xba, }; static const unsigned char ecdh_brainpoolp256r1_448_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_448_sharedsecret[] = { 0x72, 0x02, 0x66, 0x54, 0x40, 0xb2, 0xd4, 0x20, 0xd5, 0xef, 0xa6, 0x3b, 0xc2, 0x19, 0xa8, 0xe0, 0xad, 0x88, 0x2c, 0x98, 0x46, 0x25, 0xe9, 0x47, 0x11, 0x91, 0x47, 0x80, 0xce, 0x4d, 0x8e, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_448 = { .name = "ecdh_brainpoolp256r1_448", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_448_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_448_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 150 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 449 for ECDH, tcId is 151 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_449_peerpubkey[] = { 0x24, 0xfe, 0x5f, 0x16, 0x20, 0x9c, 0x41, 0x13, 0x62, 0x56, 0xce, 0x24, 0xa1, 0xe9, 0x60, 0xbd, 0x78, 0x29, 0xee, 0x21, 0x62, 0xe4, 0xf6, 0x2f, 0x53, 0x83, 0x04, 0xc3, 0x49, 0xd5, 0xec, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_449_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_449_sharedsecret[] = { 0x21, 0xf6, 0x87, 0xa9, 0x31, 0x09, 0x0d, 0xf1, 0x2b, 0xd3, 0x80, 0x28, 0xbc, 0x0d, 0x8c, 0xdd, 0x1f, 0x50, 0x7d, 0xcc, 0x37, 0xab, 0xbf, 0x9f, 0x65, 0x5b, 0x24, 0xf7, 0xe1, 0x3e, 0x44, 0xe1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_449 = { .name = "ecdh_brainpoolp256r1_449", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_449_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_449_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_449_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 151 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 450 for ECDH, tcId is 152 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_450_peerpubkey[] = { 0x2f, 0x26, 0x5a, 0xee, 0x84, 0xee, 0x78, 0x4a, 0xac, 0xd6, 0x07, 0x1c, 0xf8, 0xcf, 0xb8, 0xc1, 0xd0, 0x53, 0x32, 0x51, 0xb5, 0xbf, 0x2d, 0x91, 0x5f, 0xd6, 0x8f, 0x22, 0x12, 0x60, 0x41, 0x89, 0x14, 0xb7, 0x03, 0xad, 0xe5, 0xc3, 0x09, 0x3d, 0x65, 0xe3, 0x83, 0xe5, 0xc8, 0x14, 0xa5, 0x13, 0x95, 0x6d, 0xbd, 0x03, 0xb9, 0x64, 0x89, 0x89, 0x14, 0xa6, 0x2d, 0xd3, 0xcb, 0xc8, 0x61, 0x6f, }; static const unsigned char ecdh_brainpoolp256r1_450_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_450_sharedsecret[] = { 0x4b, 0xc4, 0x97, 0x94, 0x41, 0x38, 0x0f, 0xce, 0x9b, 0x28, 0x73, 0xf6, 0x75, 0x4b, 0x00, 0xfd, 0x7c, 0x1a, 0x78, 0xb3, 0x03, 0x58, 0x43, 0x90, 0xaf, 0x64, 0xfa, 0x3f, 0xc0, 0xa4, 0x16, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_450 = { .name = "ecdh_brainpoolp256r1_450", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_450_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_450_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_450_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 152 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 451 for ECDH, tcId is 153 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_451_peerpubkey[] = { 0x8d, 0x94, 0x3e, 0x30, 0x0c, 0x2b, 0x98, 0x89, 0x04, 0xb4, 0x45, 0x78, 0x8c, 0x3f, 0xf7, 0xf3, 0x78, 0xd0, 0x70, 0x38, 0xb5, 0xf2, 0xa6, 0x5e, 0xa2, 0xe9, 0xca, 0xd5, 0x26, 0xfd, 0x85, 0x1e, 0xa8, 0x2a, 0xc5, 0xcb, 0xc0, 0x79, 0xec, 0x08, 0x90, 0x14, 0xf7, 0x8b, 0x90, 0x12, 0xd9, 0x12, 0x8d, 0xd1, 0xbf, 0xfa, 0x88, 0x27, 0x53, 0x50, 0xe2, 0x61, 0x73, 0xef, 0xda, 0x72, 0xd4, 0x07, }; static const unsigned char ecdh_brainpoolp256r1_451_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_451_sharedsecret[] = { 0x2f, 0x08, 0x28, 0xc7, 0xf7, 0xe4, 0xcf, 0xaa, 0x5a, 0x9d, 0xeb, 0x0d, 0xed, 0x0b, 0x63, 0x13, 0x01, 0x09, 0xe0, 0xe9, 0x5f, 0x1f, 0xf4, 0x50, 0x8e, 0xfc, 0x0c, 0x47, 0x09, 0x40, 0xc4, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_451 = { .name = "ecdh_brainpoolp256r1_451", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_451_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_451_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_451_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 153 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 452 for ECDH, tcId is 154 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_452_peerpubkey[] = { 0x12, 0xf5, 0xee, 0x44, 0xfd, 0xaf, 0x86, 0x5a, 0x07, 0x2c, 0x4b, 0xe3, 0x91, 0x34, 0x75, 0x12, 0x4e, 0xb7, 0xc5, 0x0a, 0xc5, 0x20, 0x14, 0xee, 0x09, 0x4e, 0xe4, 0x22, 0xa4, 0x6c, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_452_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_452_sharedsecret[] = { 0x33, 0x94, 0xf7, 0x5e, 0x23, 0xe3, 0xb0, 0x7d, 0xe1, 0x6a, 0x93, 0x42, 0x28, 0x59, 0x15, 0xb6, 0x32, 0x84, 0x93, 0xd5, 0x49, 0x37, 0x92, 0xd0, 0x44, 0x31, 0x30, 0xa6, 0x39, 0x9a, 0x1b, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_452 = { .name = "ecdh_brainpoolp256r1_452", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_452_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_452_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_452_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 154 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 453 for ECDH, tcId is 155 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_453_peerpubkey[] = { 0x9f, 0x8d, 0x4b, 0x89, 0x9f, 0xb7, 0x7f, 0x07, 0x26, 0x77, 0x50, 0xfe, 0xa8, 0x45, 0x7a, 0x28, 0x6e, 0x99, 0x63, 0xf1, 0x93, 0xb9, 0xa0, 0xc8, 0x7f, 0x8f, 0xeb, 0x86, 0x36, 0x9d, 0x34, 0x56, 0x77, 0x9d, 0xba, 0x5b, 0x09, 0x36, 0x83, 0x1a, 0x34, 0x57, 0xdc, 0x9a, 0x8c, 0x85, 0xb1, 0x2f, 0xc2, 0x4e, 0xb1, 0xe5, 0x8f, 0x15, 0xaa, 0x28, 0xd3, 0xe9, 0xd2, 0x1a, 0x46, 0x37, 0x3a, 0x65, }; static const unsigned char ecdh_brainpoolp256r1_453_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_453_sharedsecret[] = { 0x2d, 0x19, 0x43, 0x32, 0x6a, 0x86, 0x13, 0xb1, 0x0e, 0x19, 0x52, 0x66, 0x15, 0x91, 0xf9, 0x24, 0x98, 0xfd, 0xeb, 0x72, 0x2e, 0x19, 0x8e, 0xf3, 0x46, 0xd2, 0xdc, 0xef, 0x45, 0xa7, 0x0b, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_453 = { .name = "ecdh_brainpoolp256r1_453", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_453_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_453_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 155 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 454 for ECDH, tcId is 156 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_454_peerpubkey[] = { 0x9a, 0x21, 0x3d, 0x88, 0x9a, 0x20, 0x1d, 0x87, 0x1e, 0x27, 0x90, 0xc5, 0x7a, 0xdb, 0x13, 0x1f, 0x03, 0x19, 0xf8, 0x85, 0xcd, 0xdc, 0x7c, 0x63, 0x70, 0xb4, 0xd2, 0x89, 0x53, 0x90, 0xf8, 0x93, 0x14, 0xac, 0x13, 0xf6, 0x3d, 0x83, 0x37, 0x91, 0x7f, 0xeb, 0xfe, 0x13, 0x1e, 0xe5, 0xb7, 0x99, 0x36, 0x4d, 0xfd, 0x62, 0xe1, 0x98, 0xa2, 0xfc, 0x57, 0x23, 0xa2, 0x6f, 0xb1, 0x0b, 0xb2, 0x9d, }; static const unsigned char ecdh_brainpoolp256r1_454_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_454_sharedsecret[] = { 0x3d, 0x39, 0x96, 0x1f, 0x5d, 0x18, 0x9c, 0x9e, 0xae, 0xb9, 0x96, 0x75, 0xce, 0xfa, 0x77, 0x80, 0x91, 0x45, 0x1a, 0xb6, 0xa8, 0x63, 0x87, 0x92, 0x8f, 0xc4, 0x02, 0xd5, 0x59, 0x03, 0x78, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_454 = { .name = "ecdh_brainpoolp256r1_454", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_454_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_454_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 156 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 455 for ECDH, tcId is 157 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_455_peerpubkey[] = { 0x72, 0x07, 0x0a, 0x80, 0x83, 0xa2, 0xe2, 0x4e, 0xd4, 0xe2, 0xf0, 0x88, 0x6a, 0x65, 0xb7, 0xa2, 0xa7, 0x5a, 0x42, 0xf7, 0xad, 0x21, 0x15, 0x0a, 0xc3, 0x41, 0x5f, 0x37, 0x31, 0x2b, 0xb1, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_455_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_455_sharedsecret[] = { 0x74, 0x8b, 0x61, 0x20, 0x05, 0x6d, 0x98, 0xa8, 0x8d, 0x16, 0xec, 0xa4, 0xf6, 0x1f, 0x6f, 0x6d, 0xe3, 0x52, 0x66, 0x85, 0x41, 0x1e, 0xc6, 0xbf, 0xa2, 0xbc, 0x2a, 0x33, 0x58, 0xf7, 0xe2, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_455 = { .name = "ecdh_brainpoolp256r1_455", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_455_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_455_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 157 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 456 for ECDH, tcId is 158 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_456_peerpubkey[] = { 0x94, 0xab, 0xf8, 0x36, 0x13, 0x54, 0xe6, 0x4c, 0x05, 0xca, 0xe0, 0x9f, 0x35, 0xd7, 0xa7, 0x2c, 0x75, 0x2b, 0xe1, 0x32, 0x58, 0xce, 0xdc, 0xbb, 0x56, 0x5e, 0x7b, 0x4d, 0x3d, 0x5e, 0x66, 0xda, 0x7f, 0xef, 0x17, 0x8b, 0xe6, 0x3f, 0xb7, 0x6a, 0x62, 0x4f, 0x43, 0x8e, 0x5d, 0x27, 0x82, 0x61, 0x9f, 0xe5, 0xef, 0x4d, 0x32, 0xc0, 0x01, 0x2f, 0xdb, 0xab, 0xd6, 0x16, 0x46, 0xf3, 0xfd, 0xe5, }; static const unsigned char ecdh_brainpoolp256r1_456_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_456_sharedsecret[] = { 0x3a, 0x2b, 0x34, 0x66, 0x2f, 0x20, 0x96, 0xd6, 0x08, 0xda, 0x6a, 0xb9, 0xab, 0xa4, 0x2a, 0x0b, 0x71, 0x05, 0xa0, 0xf9, 0x0f, 0xb9, 0x74, 0xdf, 0x3e, 0xb3, 0x35, 0x0f, 0x6e, 0x95, 0xd7, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_456 = { .name = "ecdh_brainpoolp256r1_456", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_456_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_456_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_456_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 158 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 457 for ECDH, tcId is 159 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_457_peerpubkey[] = { 0x29, 0x8b, 0x5c, 0xfe, 0xf2, 0xa4, 0xe2, 0xcc, 0xe0, 0xc5, 0x2c, 0xc2, 0xb3, 0x99, 0xfa, 0x52, 0xb9, 0xb9, 0x61, 0x1b, 0xef, 0x82, 0x5e, 0x7f, 0xda, 0xc0, 0xd6, 0x7d, 0x59, 0x25, 0x6d, 0x8f, 0xa4, 0xa1, 0x50, 0xbb, 0xed, 0x3d, 0xf8, 0x6f, 0x94, 0x39, 0x1e, 0xd8, 0x8d, 0xd7, 0x96, 0x54, 0x11, 0x55, 0xa8, 0x48, 0xc7, 0xb5, 0x0c, 0x34, 0x03, 0xba, 0xd2, 0xe9, 0x56, 0x9c, 0x71, 0xdd, }; static const unsigned char ecdh_brainpoolp256r1_457_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_457_sharedsecret[] = { 0x35, 0x66, 0xe9, 0x14, 0xc8, 0x20, 0x13, 0x56, 0x09, 0x4d, 0x70, 0x77, 0xc6, 0xda, 0x26, 0xb1, 0xc9, 0xe8, 0xe4, 0xe0, 0x22, 0xe8, 0x86, 0x31, 0x55, 0xf2, 0x82, 0x6f, 0x8d, 0xc6, 0xed, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_457 = { .name = "ecdh_brainpoolp256r1_457", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_457_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_457_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_457_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 159 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 458 for ECDH, tcId is 160 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_458_peerpubkey[] = { 0x75, 0x84, 0x92, 0x69, 0xb7, 0x89, 0x9f, 0x1a, 0xfd, 0x7c, 0xe5, 0x05, 0xaf, 0x36, 0xbd, 0x13, 0x92, 0xe1, 0xfe, 0x57, 0xdc, 0xce, 0x83, 0xce, 0x12, 0x84, 0xd0, 0xaa, 0x34, 0x92, 0xd1, 0x24, 0xa8, 0x1f, 0x1d, 0x17, 0x43, 0x34, 0x41, 0xe4, 0x37, 0xf9, 0x67, 0x67, 0xbd, 0x58, 0xb9, 0x51, 0xd4, 0x83, 0xe8, 0x0c, 0xbe, 0x5a, 0xb4, 0x0f, 0x53, 0xbb, 0xb4, 0xaa, 0x2d, 0xf7, 0x15, 0x2f, }; static const unsigned char ecdh_brainpoolp256r1_458_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_458_sharedsecret[] = { 0x22, 0xc0, 0xad, 0x9d, 0x52, 0xe5, 0x5a, 0xfc, 0xcb, 0x40, 0xc6, 0x29, 0x2b, 0xed, 0x37, 0xc5, 0x25, 0x82, 0x63, 0x73, 0x1b, 0xe0, 0x4c, 0x9a, 0xef, 0xaf, 0x4e, 0x13, 0x48, 0xaa, 0x01, 0x5a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_458 = { .name = "ecdh_brainpoolp256r1_458", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_458_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_458_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_458_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 160 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 459 for ECDH, tcId is 161 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_459_peerpubkey[] = { 0x94, 0x45, 0xc0, 0xa9, 0x21, 0x09, 0xe3, 0xbb, 0x28, 0x84, 0xc0, 0xd3, 0x20, 0x8a, 0xb0, 0x1b, 0x4e, 0x72, 0x6e, 0x36, 0x0e, 0xb9, 0x6b, 0x9c, 0x03, 0xd9, 0x3e, 0x30, 0xb3, 0xc6, 0xc1, 0x4b, 0x5b, 0x2c, 0x35, 0x6f, 0x71, 0x39, 0x5f, 0xbd, 0x44, 0x0f, 0x83, 0x59, 0xe4, 0x97, 0xdf, 0xb0, 0xd8, 0x22, 0x69, 0xa0, 0x99, 0xb7, 0x4b, 0xe7, 0xd4, 0x6e, 0x1b, 0x42, 0xad, 0x78, 0x59, 0x57, }; static const unsigned char ecdh_brainpoolp256r1_459_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_459_sharedsecret[] = { 0x80, 0xb4, 0x74, 0xd4, 0xa9, 0x92, 0x8a, 0x12, 0x59, 0x62, 0x84, 0x5b, 0x70, 0xc3, 0x98, 0xb7, 0x2c, 0x0d, 0xac, 0x23, 0x2d, 0xcb, 0x51, 0xfa, 0x28, 0x73, 0xac, 0x72, 0x13, 0xb9, 0x4f, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_459 = { .name = "ecdh_brainpoolp256r1_459", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_459_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_459_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 161 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 460 for ECDH, tcId is 162 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_460_peerpubkey[] = { 0x72, 0xe0, 0xe0, 0xd6, 0x85, 0xed, 0xae, 0x12, 0xe7, 0xea, 0xb0, 0x49, 0xa4, 0x27, 0xd4, 0xb6, 0x8d, 0x96, 0x82, 0x7f, 0xe1, 0x0a, 0x24, 0x99, 0x47, 0x08, 0xa6, 0x73, 0xc5, 0x69, 0x6c, 0x2e, 0x20, 0x45, 0x38, 0x7e, 0x85, 0x4c, 0xda, 0x2e, 0xb9, 0x87, 0x34, 0x55, 0xf4, 0x69, 0xdd, 0xaf, 0xfc, 0x5a, 0x4b, 0xb1, 0xec, 0xcf, 0x00, 0xac, 0xa9, 0x0f, 0xf8, 0x51, 0x90, 0x66, 0x31, 0x54, }; static const unsigned char ecdh_brainpoolp256r1_460_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_460_sharedsecret[] = { 0x0a, 0x67, 0x18, 0xaa, 0x03, 0x4c, 0x39, 0xb8, 0x9f, 0xa2, 0xec, 0x6d, 0xed, 0xcc, 0x16, 0x9f, 0xeb, 0xf0, 0x01, 0x9e, 0x7f, 0xef, 0x3d, 0x5a, 0x9a, 0xcc, 0x63, 0xc4, 0xfd, 0x36, 0x04, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_460 = { .name = "ecdh_brainpoolp256r1_460", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_460_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_460_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_460_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 162 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 461 for ECDH, tcId is 163 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_461_peerpubkey[] = { 0x1a, 0x2c, 0x7d, 0xa1, 0x2d, 0xca, 0x05, 0x8d, 0x30, 0x53, 0x97, 0x3a, 0x6e, 0xb2, 0x25, 0x49, 0xa1, 0x8c, 0x21, 0xe5, 0x51, 0xc2, 0x78, 0xc4, 0x22, 0x07, 0xd0, 0x44, 0x52, 0xe6, 0xee, 0x3f, 0x32, 0xc4, 0xfd, 0x14, 0x85, 0x25, 0xe9, 0xc3, 0x82, 0x00, 0x49, 0x50, 0x18, 0x11, 0xdd, 0xfc, 0x59, 0x2d, 0x43, 0x4b, 0x85, 0x88, 0x6b, 0x56, 0xf4, 0xb5, 0x3d, 0x09, 0x90, 0x3b, 0xf1, 0x65, }; static const unsigned char ecdh_brainpoolp256r1_461_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_461_sharedsecret[] = { 0x04, 0xe6, 0x6c, 0x51, 0x54, 0x29, 0x5b, 0x74, 0xd7, 0xc0, 0xbb, 0x08, 0x83, 0x4c, 0x72, 0x4f, 0xe2, 0x0b, 0x24, 0xbe, 0x86, 0x4f, 0xae, 0xa3, 0xff, 0xe4, 0xd3, 0x9a, 0xa7, 0x65, 0xa0, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_461 = { .name = "ecdh_brainpoolp256r1_461", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_461_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_461_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_461_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 163 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 462 for ECDH, tcId is 164 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_462_peerpubkey[] = { 0x47, 0xc9, 0x42, 0xeb, 0xc3, 0x94, 0xe0, 0x55, 0x9e, 0x60, 0x8d, 0x10, 0x17, 0x33, 0xef, 0x06, 0xbc, 0x55, 0xca, 0xf1, 0x09, 0xfa, 0x4f, 0x0a, 0x30, 0x91, 0x64, 0xc4, 0x66, 0x8e, 0x42, 0x0b, 0x55, 0xfa, 0x9e, 0x65, 0xa7, 0xb6, 0xba, 0x92, 0xdf, 0x18, 0x79, 0xeb, 0x61, 0xb8, 0x45, 0x59, 0xe3, 0xf8, 0xf5, 0xd5, 0xc4, 0xbb, 0x98, 0xdb, 0xcd, 0x43, 0xf3, 0xa0, 0xd8, 0xa2, 0x2f, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_462_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_462_sharedsecret[] = { 0x2d, 0xcb, 0xdd, 0x34, 0x7c, 0xdf, 0x73, 0xd7, 0x52, 0x6d, 0xc6, 0x6c, 0xed, 0xe3, 0xd6, 0xbe, 0xa9, 0x45, 0x4d, 0xb1, 0xd5, 0xaa, 0x9c, 0x11, 0x27, 0x9c, 0xea, 0x57, 0x79, 0x0f, 0x63, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_462 = { .name = "ecdh_brainpoolp256r1_462", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_462_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_462_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_462_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 164 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 463 for ECDH, tcId is 165 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_463_peerpubkey[] = { 0x08, 0xec, 0x0e, 0x29, 0xa2, 0xbb, 0xbf, 0x6a, 0xa7, 0x02, 0x75, 0x49, 0x51, 0xe9, 0x6c, 0x91, 0x58, 0xd8, 0x3a, 0x9c, 0xa3, 0xa7, 0xcd, 0x83, 0xae, 0x3a, 0x79, 0x7d, 0x67, 0x1a, 0xde, 0x02, 0x1e, 0x22, 0xf0, 0xca, 0xab, 0xcc, 0xcb, 0x91, 0x9b, 0xc4, 0x20, 0xfd, 0xb6, 0xb0, 0xca, 0xe6, 0x67, 0xe2, 0x74, 0x6d, 0x21, 0xe7, 0xde, 0x17, 0x6e, 0xf4, 0xfb, 0x59, 0xf9, 0xb4, 0xa5, 0xa3, }; static const unsigned char ecdh_brainpoolp256r1_463_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_463_sharedsecret[] = { 0x7a, 0xd4, 0x71, 0xb3, 0x5f, 0x5f, 0xa6, 0xeb, 0x1d, 0xe3, 0x1e, 0x1d, 0xc6, 0x8c, 0x06, 0x15, 0x31, 0xb9, 0x91, 0x63, 0xfb, 0x79, 0xe6, 0x60, 0xe0, 0xb8, 0x78, 0xd5, 0x97, 0xfa, 0x8e, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_463 = { .name = "ecdh_brainpoolp256r1_463", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_463_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_463_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_463_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 165 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 464 for ECDH, tcId is 166 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_464_peerpubkey[] = { 0x62, 0x13, 0x73, 0x59, 0x0e, 0x03, 0x4e, 0x6e, 0x3c, 0xf0, 0x23, 0xb4, 0x02, 0x0e, 0x97, 0x59, 0x65, 0xea, 0xee, 0x14, 0x62, 0x4d, 0x4f, 0x1f, 0x2d, 0x07, 0x81, 0xb3, 0x07, 0x17, 0x9e, 0xa7, 0x61, 0x8f, 0x4b, 0xc1, 0x60, 0xc5, 0x62, 0xfe, 0xdb, 0x8f, 0x27, 0x87, 0xf8, 0x90, 0x7c, 0x76, 0x85, 0x26, 0x9c, 0x16, 0xab, 0x4e, 0x49, 0xf3, 0x94, 0xf3, 0x59, 0xfd, 0x95, 0x73, 0x55, 0xb9, }; static const unsigned char ecdh_brainpoolp256r1_464_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_464_sharedsecret[] = { 0x21, 0x16, 0x97, 0x80, 0x71, 0x83, 0x80, 0x75, 0x5c, 0x63, 0x51, 0xab, 0xd8, 0x48, 0x31, 0x11, 0x95, 0xc2, 0xf0, 0x78, 0x43, 0x64, 0xfe, 0xf0, 0xa9, 0x4d, 0x5e, 0xda, 0xf2, 0x06, 0x60, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_464 = { .name = "ecdh_brainpoolp256r1_464", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_464_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_464_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_464_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 166 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 465 for ECDH, tcId is 167 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_465_peerpubkey[] = { 0x57, 0x31, 0x72, 0x5e, 0x8c, 0xcf, 0xd4, 0x45, 0x40, 0x72, 0x5e, 0x1b, 0x43, 0xa8, 0x6d, 0x7e, 0x2f, 0x48, 0x65, 0xd5, 0x48, 0x35, 0x4a, 0x35, 0x78, 0xf1, 0x68, 0xb7, 0x92, 0xf7, 0x87, 0xc3, 0x34, 0x34, 0x49, 0x43, 0x0c, 0x8e, 0xf2, 0x06, 0xcc, 0xcc, 0x58, 0xd6, 0xba, 0x74, 0xc9, 0xb2, 0x33, 0x7c, 0x28, 0x9b, 0x34, 0xdc, 0x4e, 0x7b, 0xfa, 0xc7, 0x88, 0xbb, 0x5c, 0x6f, 0xef, 0xd5, }; static const unsigned char ecdh_brainpoolp256r1_465_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_465_sharedsecret[] = { 0x74, 0x56, 0x08, 0xfe, 0x1f, 0x3b, 0x63, 0xeb, 0x0e, 0xb6, 0x85, 0x06, 0x57, 0x5e, 0x7f, 0x7c, 0x23, 0xa1, 0x10, 0xb1, 0xce, 0x3c, 0xf2, 0xc4, 0x2a, 0x91, 0x7b, 0x50, 0xd4, 0x1b, 0x29, 0xf9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_465 = { .name = "ecdh_brainpoolp256r1_465", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_465_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_465_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_465_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 167 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 466 for ECDH, tcId is 168 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_466_peerpubkey[] = { 0x78, 0xdd, 0x35, 0x2f, 0x74, 0xc8, 0x9e, 0x0d, 0x43, 0x44, 0x93, 0x24, 0x80, 0xa6, 0xec, 0xa3, 0x89, 0xdf, 0x80, 0x0e, 0xee, 0x74, 0x3d, 0xf6, 0xb5, 0x74, 0x54, 0x9a, 0x31, 0x03, 0x93, 0x15, 0x05, 0xad, 0x53, 0x29, 0xb1, 0xee, 0xbd, 0xd5, 0x52, 0x5c, 0x7c, 0x15, 0x7e, 0xf6, 0xd5, 0x18, 0xc7, 0x9f, 0xda, 0x52, 0xee, 0x63, 0xb1, 0x4e, 0x1b, 0x47, 0x9f, 0x7d, 0x5d, 0x13, 0xa0, 0x27, }; static const unsigned char ecdh_brainpoolp256r1_466_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_466_sharedsecret[] = { 0x98, 0xe2, 0xbd, 0x29, 0x97, 0xe9, 0x9d, 0x70, 0xa3, 0x1e, 0x71, 0x70, 0xd2, 0x91, 0x67, 0x36, 0xcd, 0xb8, 0x7b, 0x86, 0x41, 0xd7, 0x55, 0xe2, 0xfa, 0xfd, 0x26, 0xa1, 0xd3, 0xb1, 0x55, 0xe1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_466 = { .name = "ecdh_brainpoolp256r1_466", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_466_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_466_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_466_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 168 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 467 for ECDH, tcId is 169 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_467_peerpubkey[] = { 0xa8, 0xf6, 0x1f, 0xf6, 0xf1, 0xfb, 0x0b, 0x76, 0x20, 0x9a, 0xc0, 0x92, 0x6f, 0x8d, 0x8f, 0x4a, 0xa1, 0x65, 0xbb, 0x5b, 0xee, 0x9f, 0x6e, 0x8d, 0xd0, 0x04, 0xa6, 0xc1, 0x65, 0x5f, 0xdf, 0x3a, 0x56, 0x80, 0xee, 0x08, 0xda, 0x27, 0xd5, 0xac, 0x21, 0x8b, 0x2f, 0x27, 0x81, 0x94, 0x91, 0x7b, 0x7d, 0x95, 0xd1, 0xff, 0x9b, 0xe9, 0xb0, 0xa5, 0x03, 0xc9, 0x30, 0xf2, 0x9f, 0x34, 0x4d, 0xae, }; static const unsigned char ecdh_brainpoolp256r1_467_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_467_sharedsecret[] = { 0x82, 0xa8, 0xb2, 0xdf, 0x49, 0x02, 0x94, 0xdd, 0x06, 0xb3, 0x99, 0x33, 0x2e, 0x42, 0x13, 0x2e, 0xc6, 0xd0, 0x34, 0xe2, 0xc2, 0xaa, 0xa7, 0x38, 0x53, 0xa8, 0xb7, 0xb9, 0x90, 0x28, 0x9b, 0x5b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_467 = { .name = "ecdh_brainpoolp256r1_467", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_467_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_467_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_467_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 169 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 468 for ECDH, tcId is 170 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_468_peerpubkey[] = { 0x77, 0x8c, 0x36, 0x25, 0x63, 0x99, 0x11, 0xf9, 0xb0, 0x2a, 0x6a, 0xc5, 0x61, 0x8f, 0xae, 0xdf, 0x1e, 0xa9, 0x0e, 0xe0, 0x79, 0x7d, 0x8c, 0x59, 0xd3, 0x73, 0xe5, 0xc7, 0x39, 0x6d, 0xc7, 0x77, 0x9a, 0x4b, 0xcf, 0xe6, 0xad, 0x24, 0x7a, 0xdf, 0x66, 0x78, 0x10, 0xf2, 0xcc, 0x7e, 0x3b, 0x00, 0xfe, 0xa2, 0xb1, 0xa1, 0xac, 0x81, 0xb5, 0xbc, 0x93, 0x99, 0x9f, 0x13, 0xb2, 0x35, 0x8a, 0xc6, }; static const unsigned char ecdh_brainpoolp256r1_468_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_468_sharedsecret[] = { 0x74, 0xc8, 0x95, 0x0b, 0x49, 0x93, 0xe4, 0x98, 0x06, 0xe8, 0xc8, 0xd0, 0xc3, 0x5b, 0xb1, 0x87, 0xd5, 0xc2, 0xd1, 0xdc, 0x69, 0x8a, 0x66, 0x4f, 0x3a, 0x0e, 0x67, 0x64, 0x10, 0x29, 0x9d, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_468 = { .name = "ecdh_brainpoolp256r1_468", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_468_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_468_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_468_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 170 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 469 for ECDH, tcId is 171 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_469_peerpubkey[] = { 0x63, 0x6b, 0x5f, 0xe1, 0xcc, 0xd4, 0x54, 0xbb, 0xe8, 0x84, 0xaf, 0x59, 0x2a, 0x21, 0x92, 0x5c, 0xd8, 0xae, 0x32, 0x21, 0xbd, 0xc1, 0xc5, 0xfc, 0x89, 0xef, 0x00, 0xa2, 0x7b, 0x2b, 0x36, 0x6d, 0xa6, 0x9c, 0x2b, 0xdd, 0x8f, 0x25, 0x1a, 0xf6, 0x05, 0xe2, 0x3d, 0xa4, 0x9a, 0xc7, 0x7c, 0xc5, 0x5c, 0x7a, 0x6b, 0x03, 0xd1, 0x72, 0xa6, 0x2b, 0x96, 0xf2, 0xe9, 0xaa, 0x57, 0x15, 0xb1, 0xa1, }; static const unsigned char ecdh_brainpoolp256r1_469_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_469_sharedsecret[] = { 0x54, 0x90, 0x9d, 0x25, 0xe9, 0x21, 0x3a, 0x9f, 0xf7, 0x31, 0x25, 0x50, 0x55, 0x1d, 0x71, 0x8d, 0x6b, 0xd5, 0xc3, 0x85, 0xaa, 0x05, 0xfc, 0xb6, 0x85, 0xb9, 0x37, 0x0a, 0xb3, 0xa3, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_469 = { .name = "ecdh_brainpoolp256r1_469", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_469_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_469_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 171 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 470 for ECDH, tcId is 172 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_470_peerpubkey[] = { 0x6e, 0x18, 0x25, 0x4f, 0x7a, 0xd0, 0x8c, 0x27, 0x45, 0xec, 0xd6, 0x66, 0x80, 0x10, 0x1d, 0x3d, 0x21, 0x02, 0xae, 0x97, 0x8b, 0x52, 0x19, 0x46, 0xf1, 0x9f, 0x6e, 0xd0, 0xeb, 0xed, 0x48, 0xf4, 0x17, 0x96, 0x26, 0x42, 0xb9, 0x92, 0x5c, 0xb8, 0x08, 0x49, 0xf7, 0x89, 0xeb, 0x63, 0x7a, 0x5d, 0x5a, 0xf4, 0x35, 0x98, 0xdd, 0x19, 0xb6, 0xb0, 0x08, 0xd3, 0xd9, 0x00, 0x7c, 0x79, 0x26, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_470_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_470_sharedsecret[] = { 0x13, 0xcc, 0x36, 0xf1, 0x84, 0x61, 0xf5, 0x9b, 0x09, 0x2f, 0x9b, 0x13, 0xb1, 0x18, 0xcd, 0x40, 0xb7, 0xff, 0x0c, 0xbe, 0xfc, 0x41, 0xae, 0x15, 0x08, 0x37, 0x7e, 0x96, 0x9c, 0x4d, 0x0a, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_470 = { .name = "ecdh_brainpoolp256r1_470", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_470_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_470_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 172 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 471 for ECDH, tcId is 173 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_471_peerpubkey[] = { 0x5a, 0xfc, 0x06, 0x47, 0x7f, 0x7e, 0x17, 0x39, 0x05, 0xc6, 0xe8, 0xcc, 0xdb, 0xb0, 0xc6, 0xff, 0x3b, 0x85, 0x39, 0x0d, 0x4a, 0x11, 0x65, 0x93, 0x3f, 0x0e, 0xa1, 0x34, 0xcb, 0xf5, 0x82, 0xfe, 0x85, 0x53, 0x31, 0x1b, 0xa4, 0xd7, 0xa9, 0xe0, 0x01, 0xc3, 0x60, 0x50, 0x49, 0x65, 0xf8, 0x76, 0x52, 0xcb, 0x41, 0x2f, 0x7e, 0x36, 0xd6, 0x87, 0xc1, 0x8c, 0x09, 0xf7, 0x2d, 0x5e, 0x2d, 0x12, }; static const unsigned char ecdh_brainpoolp256r1_471_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_471_sharedsecret[] = { 0x85, 0xba, 0x20, 0x3d, 0x78, 0xdc, 0xb7, 0x85, 0xef, 0x97, 0x16, 0x90, 0xf0, 0xe6, 0x37, 0x4b, 0xba, 0xaf, 0x9a, 0xdc, 0x73, 0xa9, 0xf6, 0x36, 0x68, 0x2f, 0xb6, 0xe8, 0xa5, 0x66, 0x39, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_471 = { .name = "ecdh_brainpoolp256r1_471", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_471_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_471_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_471_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 173 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 472 for ECDH, tcId is 174 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_472_peerpubkey[] = { 0x53, 0x74, 0x0f, 0xfd, 0xca, 0x35, 0x6a, 0x22, 0x1b, 0x12, 0xf7, 0xd1, 0x72, 0x6b, 0x2e, 0x8c, 0x04, 0x46, 0x6b, 0xa0, 0xe4, 0x1e, 0x07, 0x98, 0xaf, 0x80, 0x09, 0x00, 0x80, 0x7b, 0xf4, 0xf7, 0x83, 0xb8, 0x5a, 0xb8, 0xd5, 0xad, 0xaf, 0x79, 0xe5, 0x1d, 0xa6, 0x1f, 0x14, 0x0c, 0xe5, 0x21, 0x4e, 0xfd, 0xca, 0xa0, 0xc4, 0x14, 0x8d, 0x51, 0x5a, 0x52, 0xf5, 0x48, 0xe2, 0xeb, 0x3a, 0xfc, }; static const unsigned char ecdh_brainpoolp256r1_472_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_472_sharedsecret[] = { 0x1e, 0x7e, 0x7e, 0xda, 0xe8, 0x89, 0x9e, 0x62, 0x7e, 0x5e, 0x2b, 0x35, 0xc9, 0x90, 0xd4, 0x87, 0xd0, 0x22, 0xa7, 0x51, 0x15, 0x07, 0x43, 0x27, 0xcb, 0xd7, 0x3a, 0x53, 0x52, 0x15, 0xf7, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_472 = { .name = "ecdh_brainpoolp256r1_472", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_472_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_472_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_472_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 174 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 473 for ECDH, tcId is 175 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_473_peerpubkey[] = { 0x4d, 0xe1, 0x14, 0x46, 0x64, 0x4c, 0xc6, 0x8f, 0x1c, 0x13, 0x57, 0x99, 0x10, 0xca, 0xc4, 0xd7, 0x3f, 0xbf, 0x4a, 0x88, 0x63, 0x38, 0x19, 0x1f, 0x67, 0x59, 0x57, 0x2f, 0xd1, 0xc5, 0x64, 0xe2, 0x63, 0x84, 0xba, 0xab, 0x5d, 0x76, 0xd8, 0x62, 0x50, 0xc2, 0x1c, 0x1d, 0xa9, 0x9d, 0x9e, 0xff, 0xc5, 0x0f, 0xb3, 0x02, 0xa6, 0xeb, 0x88, 0x3f, 0x53, 0x05, 0x36, 0x7d, 0x7f, 0x80, 0xe6, 0x72, }; static const unsigned char ecdh_brainpoolp256r1_473_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_473_sharedsecret[] = { 0x5e, 0x93, 0xb1, 0x3d, 0x39, 0x59, 0xa5, 0xd1, 0x2c, 0x79, 0xaf, 0x52, 0xfe, 0xbe, 0x4a, 0x09, 0x29, 0xbb, 0xbc, 0xab, 0x12, 0x44, 0x35, 0xd5, 0x72, 0x65, 0x9e, 0x90, 0x13, 0xf0, 0xb5, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_473 = { .name = "ecdh_brainpoolp256r1_473", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_473_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_473_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_473_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 175 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 474 for ECDH, tcId is 176 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_474_peerpubkey[] = { 0x39, 0xf0, 0x85, 0xf2, 0x45, 0x72, 0x04, 0xc6, 0x31, 0x67, 0x5d, 0xe8, 0x6a, 0x1a, 0xfa, 0xae, 0x3a, 0x38, 0xef, 0xc4, 0xb2, 0xcd, 0x0a, 0xea, 0xbd, 0x5a, 0xe1, 0xe9, 0x25, 0xd0, 0xf6, 0xcc, 0x94, 0x0a, 0x57, 0x00, 0xff, 0xde, 0xf6, 0xfa, 0x20, 0x78, 0xa0, 0xbf, 0x0e, 0x7b, 0x37, 0x2e, 0xf3, 0x41, 0x54, 0xb7, 0xfa, 0xd1, 0x3c, 0x5b, 0x58, 0x96, 0x27, 0x83, 0xb6, 0xe4, 0xa5, 0x15, }; static const unsigned char ecdh_brainpoolp256r1_474_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_474_sharedsecret[] = { 0x5f, 0xfa, 0x75, 0x24, 0x6b, 0xc1, 0xbc, 0xa4, 0x53, 0x4b, 0xa4, 0x78, 0xdc, 0xa9, 0x8d, 0x8f, 0xcf, 0xe5, 0x0d, 0x3d, 0xe0, 0xcd, 0xfa, 0x2c, 0x3e, 0x2c, 0x46, 0x9a, 0x8a, 0x17, 0x3d, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_474 = { .name = "ecdh_brainpoolp256r1_474", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_474_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_474_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_474_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 176 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 475 for ECDH, tcId is 177 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_475_peerpubkey[] = { 0x40, 0x8d, 0xfd, 0xc9, 0xc3, 0x6c, 0xfd, 0x14, 0x94, 0xa2, 0xa6, 0x12, 0x7b, 0x87, 0xda, 0x00, 0xe5, 0xfd, 0x2e, 0x03, 0xbf, 0xaf, 0x4c, 0x5f, 0x08, 0x5c, 0xba, 0xc6, 0x39, 0x3e, 0x9b, 0x1b, 0xa1, 0xf7, 0xfa, 0x38, 0x30, 0xbe, 0x77, 0x8e, 0x72, 0x45, 0x5f, 0x47, 0x95, 0x84, 0xf5, 0x82, 0x62, 0x96, 0xdf, 0xed, 0x56, 0xd0, 0x71, 0xa8, 0x09, 0x08, 0x3c, 0x65, 0xee, 0x3f, 0x50, 0xd9, }; static const unsigned char ecdh_brainpoolp256r1_475_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_475_sharedsecret[] = { 0x78, 0xd3, 0xe0, 0x4e, 0x70, 0x65, 0x81, 0x4e, 0xaa, 0x27, 0xa3, 0x9e, 0x86, 0x54, 0xeb, 0xd1, 0xe7, 0xf6, 0xe8, 0x72, 0x60, 0x88, 0x04, 0xee, 0xa1, 0x66, 0x47, 0x88, 0xa0, 0xb6, 0x99, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_475 = { .name = "ecdh_brainpoolp256r1_475", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_475_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_475_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_475_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 177 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 476 for ECDH, tcId is 178 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_476_peerpubkey[] = { 0x4b, 0xfc, 0xf9, 0x9c, 0xc7, 0xa7, 0xba, 0x7f, 0x61, 0xc3, 0x31, 0xda, 0x42, 0xe0, 0x7f, 0x3b, 0xdb, 0x0f, 0x9e, 0x75, 0x0e, 0x77, 0xda, 0x93, 0x96, 0x2c, 0x95, 0xdd, 0x56, 0x43, 0xa4, 0x26, 0x8a, 0x47, 0x94, 0x26, 0x46, 0xb3, 0xab, 0x87, 0x4a, 0x0e, 0x09, 0xaf, 0xc5, 0x17, 0x25, 0x9e, 0x04, 0xa6, 0xc8, 0x00, 0x1d, 0xaf, 0xd4, 0x9f, 0x4d, 0x5c, 0xff, 0xb9, 0x57, 0x03, 0xfd, 0xa9, }; static const unsigned char ecdh_brainpoolp256r1_476_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_476_sharedsecret[] = { 0x7a, 0x5d, 0xf5, 0x6a, 0xd0, 0x32, 0x3d, 0x83, 0xa6, 0xba, 0xa3, 0x0a, 0x6f, 0x74, 0xa0, 0x6f, 0x13, 0x3e, 0x62, 0xad, 0xb2, 0xa4, 0xc0, 0xdd, 0x1e, 0x5f, 0xd5, 0xad, 0xeb, 0x6e, 0x51, 0xdb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_476 = { .name = "ecdh_brainpoolp256r1_476", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_476_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_476_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_476_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 178 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 477 for ECDH, tcId is 179 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_477_peerpubkey[] = { 0x9d, 0x2f, 0xe9, 0xdb, 0xc7, 0xb2, 0xbe, 0x8a, 0x06, 0x16, 0xe5, 0xaf, 0x37, 0xae, 0x21, 0x74, 0xaf, 0x9b, 0x32, 0xf0, 0x96, 0x15, 0x89, 0xbb, 0x05, 0x17, 0x10, 0x29, 0xbd, 0x96, 0xd5, 0x92, 0x36, 0x19, 0x41, 0x79, 0x01, 0x42, 0xab, 0xd9, 0x70, 0x41, 0x75, 0x0c, 0x4d, 0x6d, 0x39, 0x3b, 0x54, 0x32, 0x53, 0x04, 0x5b, 0xc2, 0x00, 0x9b, 0x5b, 0xd9, 0xf5, 0x08, 0x80, 0xa7, 0xa1, 0xf1, }; static const unsigned char ecdh_brainpoolp256r1_477_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_477_sharedsecret[] = { 0x09, 0xe0, 0x39, 0x3b, 0xa5, 0x3d, 0x08, 0xa3, 0x50, 0x3f, 0xbd, 0xb3, 0xf1, 0xfb, 0x0a, 0x1e, 0xb9, 0xc1, 0xe8, 0x5e, 0x92, 0x86, 0xdf, 0xa8, 0x0b, 0xac, 0xd6, 0xde, 0x78, 0x33, 0xfc, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_477 = { .name = "ecdh_brainpoolp256r1_477", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_477_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_477_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_477_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 179 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 478 for ECDH, tcId is 180 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_478_peerpubkey[] = { 0x1a, 0x13, 0x99, 0x03, 0xc1, 0x54, 0xed, 0x27, 0x94, 0xa3, 0xad, 0x03, 0xfc, 0xca, 0x58, 0xdb, 0x6f, 0x50, 0x08, 0x3d, 0xb9, 0xc2, 0x0e, 0x89, 0x03, 0x09, 0x2d, 0x8d, 0x67, 0xc5, 0x97, 0x83, 0x2c, 0x97, 0xf9, 0x7c, 0x70, 0x99, 0x83, 0xf8, 0x47, 0xee, 0x9b, 0xc1, 0x20, 0x05, 0x83, 0x6f, 0x27, 0xf2, 0xe6, 0x02, 0x53, 0xc4, 0xb0, 0x52, 0x75, 0x08, 0xc6, 0xe6, 0xfe, 0x82, 0x8b, 0x5b, }; static const unsigned char ecdh_brainpoolp256r1_478_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_478_sharedsecret[] = { 0x60, 0x53, 0xa6, 0x03, 0xfe, 0x6a, 0xaf, 0x7e, 0x0d, 0x96, 0x01, 0x1d, 0x7f, 0xf6, 0xb2, 0xec, 0x94, 0x49, 0xbf, 0xcb, 0x28, 0x50, 0x81, 0x2e, 0xad, 0xc2, 0xeb, 0xdb, 0xa9, 0x5f, 0xc2, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_478 = { .name = "ecdh_brainpoolp256r1_478", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_478_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_478_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_478_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 180 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 479 for ECDH, tcId is 181 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_479_peerpubkey[] = { 0x91, 0xeb, 0xd6, 0xf7, 0x7f, 0x26, 0x5e, 0xd5, 0x34, 0x9d, 0xa7, 0xf9, 0xd6, 0x13, 0xdc, 0x89, 0x11, 0x17, 0x6e, 0x76, 0xa3, 0x0b, 0x13, 0x30, 0x2a, 0x43, 0xfe, 0x64, 0xac, 0xbf, 0x5a, 0x6c, 0x0a, 0x0f, 0xa3, 0xb9, 0x73, 0x32, 0xe3, 0x59, 0x9b, 0xf6, 0x8e, 0xc0, 0x81, 0xf6, 0x20, 0x8f, 0x6f, 0x49, 0xae, 0x58, 0x9d, 0xbc, 0x93, 0x35, 0xe7, 0x35, 0x2b, 0xe7, 0x7e, 0xf6, 0xa4, 0xf9, }; static const unsigned char ecdh_brainpoolp256r1_479_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_479_sharedsecret[] = { 0x45, 0xf3, 0xa6, 0x55, 0x7b, 0x65, 0x4d, 0xb3, 0x83, 0xd7, 0x25, 0xc6, 0x91, 0x89, 0xcb, 0xbc, 0x45, 0xe6, 0xcc, 0xc7, 0x1b, 0x97, 0x2c, 0x69, 0x67, 0x43, 0x63, 0x4b, 0x96, 0x60, 0xe3, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_479 = { .name = "ecdh_brainpoolp256r1_479", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_479_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_479_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_479_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 181 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 480 for ECDH, tcId is 182 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_480_peerpubkey[] = { 0x0e, 0x5e, 0xb7, 0xc5, 0xb2, 0xd3, 0x44, 0x44, 0xbc, 0x4d, 0x03, 0x82, 0x75, 0xc9, 0xdf, 0x26, 0x25, 0xe7, 0xf6, 0xcb, 0x98, 0x0e, 0xdd, 0x83, 0xf1, 0xd5, 0x2a, 0x37, 0xc3, 0xaa, 0xef, 0x33, 0x31, 0x84, 0x52, 0x44, 0x42, 0x8f, 0xb6, 0xa2, 0xc4, 0xc2, 0x69, 0xdf, 0x3a, 0xe3, 0x47, 0x74, 0xea, 0x09, 0xab, 0x83, 0x46, 0x20, 0x48, 0x66, 0x39, 0x9c, 0x9f, 0x66, 0x45, 0xad, 0x97, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_480_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_480_sharedsecret[] = { 0x63, 0x33, 0x46, 0x11, 0xff, 0xab, 0x29, 0x08, 0x42, 0x73, 0xa1, 0x9a, 0xb6, 0x9d, 0xa5, 0x89, 0xb3, 0xa5, 0x84, 0x7e, 0xfa, 0xc5, 0xbf, 0xee, 0x53, 0xbe, 0x80, 0x4f, 0x76, 0x16, 0x1d, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_480 = { .name = "ecdh_brainpoolp256r1_480", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_480_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_480_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_480_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 182 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 481 for ECDH, tcId is 183 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_481_peerpubkey[] = { 0x45, 0xc6, 0x71, 0xbd, 0xd0, 0x6e, 0xc2, 0x4d, 0xa8, 0x3c, 0xa2, 0x09, 0x7e, 0x68, 0x2a, 0x58, 0xc9, 0x7a, 0x39, 0xf2, 0x3b, 0x61, 0xca, 0x61, 0x22, 0xc1, 0x58, 0x5f, 0xa5, 0xf5, 0x62, 0x7f, 0x34, 0x93, 0x46, 0x4f, 0x20, 0xe5, 0xb7, 0x1c, 0x77, 0x78, 0xa9, 0xe1, 0x98, 0xfd, 0xdd, 0xce, 0x72, 0x9c, 0xf6, 0xee, 0x67, 0x33, 0x62, 0x31, 0xd3, 0x7b, 0xd1, 0xb4, 0xec, 0x00, 0x88, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_481_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_481_sharedsecret[] = { 0x7c, 0xc7, 0x70, 0x87, 0xe2, 0xc9, 0xb6, 0x2a, 0x69, 0x06, 0x17, 0x4b, 0xa2, 0xe7, 0xb5, 0x24, 0x4e, 0x86, 0xe8, 0x41, 0xf8, 0x22, 0x38, 0xb3, 0x5d, 0x8a, 0xd3, 0xf8, 0xd1, 0x1d, 0xb3, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_481 = { .name = "ecdh_brainpoolp256r1_481", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_481_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_481_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_481_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 183 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 482 for ECDH, tcId is 184 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_482_peerpubkey[] = { 0x1d, 0x8e, 0xbe, 0x4a, 0xbc, 0xde, 0x56, 0x5b, 0xd5, 0x23, 0x87, 0x4a, 0x28, 0x04, 0x42, 0x57, 0x71, 0xb9, 0x62, 0xe7, 0xcc, 0x5d, 0xd9, 0x90, 0x03, 0x7f, 0x61, 0x96, 0x2a, 0x80, 0x87, 0xf1, 0x9d, 0x63, 0x75, 0xb4, 0xd6, 0x64, 0x3b, 0x22, 0x61, 0xed, 0xcf, 0xbf, 0x98, 0x12, 0xb9, 0x58, 0x39, 0xd7, 0x1d, 0x45, 0xb4, 0x6f, 0xb4, 0xe4, 0xab, 0xcc, 0xb0, 0xf2, 0xcf, 0x41, 0xb0, 0xc0, }; static const unsigned char ecdh_brainpoolp256r1_482_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_482_sharedsecret[] = { 0x28, 0x6e, 0xb7, 0x24, 0xe4, 0x2e, 0x78, 0xd6, 0x45, 0x8c, 0x0e, 0x11, 0xff, 0xc4, 0x59, 0xac, 0xbe, 0x48, 0x9d, 0x82, 0x27, 0x85, 0x8d, 0x2c, 0x8a, 0xa8, 0xc1, 0xe6, 0xbb, 0xc6, 0xb9, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_482 = { .name = "ecdh_brainpoolp256r1_482", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_482_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_482_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_482_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 184 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 483 for ECDH, tcId is 185 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_483_peerpubkey[] = { 0x1c, 0xa7, 0xdb, 0xe4, 0x78, 0xeb, 0x8e, 0x7a, 0xf3, 0xdb, 0x30, 0x98, 0x0d, 0xf9, 0xb1, 0xac, 0x34, 0xf1, 0x0f, 0x03, 0x9b, 0x00, 0xa5, 0xc8, 0xd0, 0x72, 0x74, 0xb2, 0xf6, 0xec, 0x40, 0x1a, 0x04, 0x6d, 0x4c, 0x05, 0xea, 0xf5, 0xe7, 0x7c, 0x32, 0xa1, 0x13, 0x8a, 0x7e, 0xc2, 0x9d, 0x9b, 0x9d, 0xb1, 0xa9, 0x77, 0x63, 0x08, 0x74, 0x53, 0x2a, 0x05, 0x2d, 0x4a, 0x87, 0xc0, 0x8d, 0x94, }; static const unsigned char ecdh_brainpoolp256r1_483_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_483_sharedsecret[] = { 0x9b, 0x06, 0x85, 0x9c, 0xda, 0xec, 0xdb, 0xe1, 0xd5, 0xc7, 0xd5, 0xbf, 0x2c, 0xab, 0xc3, 0xc9, 0xfc, 0x96, 0x6a, 0xa4, 0x65, 0xcc, 0xa1, 0xb8, 0x95, 0x12, 0x36, 0x52, 0x99, 0x56, 0x30, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_483 = { .name = "ecdh_brainpoolp256r1_483", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_483_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_483_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_483_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 185 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 484 for ECDH, tcId is 186 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_484_peerpubkey[] = { 0x52, 0x48, 0xd8, 0x9b, 0x36, 0x1a, 0xec, 0xba, 0x32, 0x39, 0x03, 0x5d, 0xf6, 0x0b, 0x8b, 0x3b, 0xbd, 0x70, 0x7a, 0x50, 0x36, 0xcb, 0x99, 0xec, 0xc1, 0xd8, 0x96, 0x40, 0x01, 0xcf, 0x3d, 0xb1, 0xa1, 0x5e, 0xe7, 0x15, 0xde, 0xdc, 0xb7, 0x29, 0x73, 0x7b, 0x27, 0x14, 0x08, 0x95, 0x60, 0x06, 0x1e, 0x94, 0x23, 0x25, 0x38, 0xbd, 0xac, 0x52, 0x88, 0x7e, 0x1f, 0x28, 0xcc, 0x9e, 0x5c, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_484_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_484_sharedsecret[] = { 0x79, 0x21, 0x42, 0x00, 0x53, 0x03, 0x36, 0xe4, 0x02, 0x5e, 0xc8, 0x31, 0x21, 0x6c, 0x92, 0x4c, 0x89, 0xb8, 0xb5, 0xea, 0x12, 0xb1, 0x16, 0x44, 0xca, 0x06, 0x5d, 0x86, 0xcb, 0x96, 0xd4, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_484 = { .name = "ecdh_brainpoolp256r1_484", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_484_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_484_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_484_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 186 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 485 for ECDH, tcId is 187 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_485_peerpubkey[] = { 0x20, 0xbc, 0xdd, 0x2b, 0x86, 0xfa, 0x7f, 0xe3, 0x8a, 0x8b, 0x81, 0x32, 0xdf, 0xe5, 0x64, 0x5d, 0x68, 0xdb, 0x1d, 0xe1, 0xfb, 0x24, 0xc1, 0x4a, 0x59, 0xcc, 0x4c, 0x0d, 0x79, 0x10, 0xec, 0x32, 0x6a, 0xbf, 0x73, 0x6d, 0x4c, 0xf5, 0x34, 0xc1, 0x4b, 0xe4, 0xe0, 0x08, 0x91, 0x55, 0x10, 0x17, 0x71, 0x1c, 0xde, 0x6e, 0xdd, 0x2e, 0x88, 0x40, 0x83, 0x43, 0x16, 0xff, 0x7c, 0x1b, 0xf6, 0x46, }; static const unsigned char ecdh_brainpoolp256r1_485_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_485_sharedsecret[] = { 0x0b, 0xf8, 0xa2, 0xae, 0xe4, 0x59, 0xb7, 0x36, 0x59, 0x07, 0x42, 0x23, 0x47, 0x24, 0x74, 0x07, 0x35, 0x3c, 0x3e, 0x8c, 0x44, 0xd1, 0x2e, 0x0c, 0xc1, 0xc5, 0xf6, 0x66, 0x6b, 0x65, 0x34, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_485 = { .name = "ecdh_brainpoolp256r1_485", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_485_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_485_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_485_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 187 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 486 for ECDH, tcId is 188 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_486_peerpubkey[] = { 0x44, 0xe9, 0x33, 0x25, 0x18, 0xf9, 0xac, 0xf5, 0x17, 0x6b, 0xd6, 0x81, 0xca, 0x9a, 0x53, 0x66, 0xdc, 0xa9, 0xc6, 0xb7, 0x8f, 0x7a, 0x55, 0x9e, 0x60, 0xc3, 0x0f, 0xd9, 0x3b, 0xe1, 0x46, 0x9e, 0x23, 0x23, 0x3d, 0x75, 0xed, 0xc0, 0x48, 0xcd, 0x8d, 0x7b, 0x6d, 0x0a, 0xcf, 0x0b, 0x57, 0xee, 0x7c, 0xa8, 0x5f, 0xe6, 0xb0, 0xca, 0xef, 0x61, 0x43, 0x66, 0xa0, 0x2f, 0xa6, 0x62, 0x0d, 0xfa, }; static const unsigned char ecdh_brainpoolp256r1_486_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_486_sharedsecret[] = { 0x5b, 0xbc, 0xe2, 0xb9, 0x97, 0x71, 0x8b, 0x40, 0xbd, 0x81, 0xa1, 0x4a, 0x8d, 0x56, 0xf8, 0x40, 0xf1, 0x44, 0xbb, 0x09, 0xd5, 0x06, 0xc3, 0xaa, 0x27, 0x75, 0x9e, 0xf9, 0xad, 0x4e, 0x89, 0x7b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_486 = { .name = "ecdh_brainpoolp256r1_486", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_486_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_486_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_486_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 188 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 487 for ECDH, tcId is 189 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_487_peerpubkey[] = { 0x9d, 0xf6, 0x94, 0xfc, 0xe4, 0x05, 0x93, 0x9b, 0xc8, 0xc1, 0xf4, 0xbf, 0x29, 0xc1, 0xc5, 0xde, 0x47, 0xf8, 0x5d, 0x76, 0x17, 0x38, 0x92, 0x2f, 0x2e, 0x18, 0x49, 0xec, 0x8c, 0xdf, 0x47, 0x88, 0x4f, 0x07, 0x15, 0x47, 0x19, 0x56, 0xb7, 0xda, 0x83, 0x0a, 0xff, 0x5a, 0xa8, 0x32, 0xa5, 0x45, 0x39, 0xcc, 0xed, 0x86, 0x6a, 0x7d, 0x56, 0x6c, 0x64, 0x07, 0x5e, 0x56, 0x43, 0x83, 0x90, 0xe2, }; static const unsigned char ecdh_brainpoolp256r1_487_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_487_sharedsecret[] = { 0x24, 0xf3, 0x21, 0x61, 0xa6, 0x91, 0xfd, 0x20, 0x89, 0x90, 0xf6, 0x88, 0xd8, 0x79, 0x78, 0x05, 0x41, 0x55, 0xf1, 0x00, 0x9c, 0x03, 0x08, 0xb8, 0xf1, 0x28, 0x1d, 0x71, 0x39, 0xb5, 0x3e, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_487 = { .name = "ecdh_brainpoolp256r1_487", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_487_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_487_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_487_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 189 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 488 for ECDH, tcId is 190 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_488_peerpubkey[] = { 0x13, 0x4f, 0xac, 0xb5, 0x95, 0x3a, 0x06, 0xfd, 0xe6, 0x95, 0x18, 0x8b, 0x4b, 0xc3, 0x45, 0x14, 0xdd, 0xe8, 0x60, 0x67, 0xfc, 0xaf, 0xc2, 0xe2, 0x14, 0x53, 0x24, 0x0d, 0x39, 0x83, 0x67, 0x09, 0x29, 0xa2, 0x76, 0xf3, 0x4e, 0xbe, 0xec, 0x6c, 0x54, 0xf1, 0x8e, 0xa6, 0x55, 0xf1, 0x68, 0x89, 0x03, 0x1c, 0x57, 0x60, 0xe6, 0x43, 0x42, 0x8f, 0x6e, 0x36, 0x49, 0x35, 0x1a, 0x8c, 0x0d, 0x22, }; static const unsigned char ecdh_brainpoolp256r1_488_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_488_sharedsecret[] = { 0x08, 0xd9, 0x4e, 0x8d, 0xa3, 0x1e, 0xb5, 0x9c, 0xe7, 0xad, 0xbe, 0xb7, 0xfb, 0xfc, 0x47, 0x68, 0xed, 0xf3, 0xd4, 0x0c, 0x79, 0x85, 0x4b, 0x39, 0xee, 0xd5, 0xa5, 0x74, 0x16, 0x7a, 0xc5, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_488 = { .name = "ecdh_brainpoolp256r1_488", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_488_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_488_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_488_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 190 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 489 for ECDH, tcId is 191 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_489_peerpubkey[] = { 0xa7, 0x95, 0x76, 0x34, 0xf5, 0x5b, 0x2f, 0x06, 0x6f, 0x65, 0xdf, 0x57, 0xeb, 0x75, 0x8c, 0x55, 0xaa, 0x7b, 0x1c, 0x16, 0x7f, 0x8c, 0x21, 0x3f, 0x09, 0x09, 0xe7, 0x80, 0xe4, 0xf8, 0x8a, 0x0f, 0x31, 0x54, 0xcc, 0x2e, 0xb5, 0xe1, 0xd0, 0x6f, 0x0a, 0x97, 0x30, 0x47, 0xd5, 0xcb, 0xab, 0xd0, 0xb4, 0x71, 0x32, 0xdf, 0x3a, 0xce, 0xf1, 0xa9, 0x93, 0x58, 0xb8, 0x99, 0xc2, 0x06, 0x6a, 0x50, }; static const unsigned char ecdh_brainpoolp256r1_489_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_489_sharedsecret[] = { 0x27, 0xd1, 0x04, 0xbd, 0x2f, 0xd4, 0xb6, 0xdb, 0x63, 0xd3, 0xc0, 0xe1, 0xef, 0xa5, 0xf6, 0x0a, 0xd7, 0x9e, 0x0f, 0x2a, 0xe5, 0xb2, 0x83, 0xe1, 0x75, 0x98, 0x39, 0x09, 0x79, 0x40, 0x7a, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_489 = { .name = "ecdh_brainpoolp256r1_489", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_489_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_489_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_489_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 191 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 490 for ECDH, tcId is 192 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_490_peerpubkey[] = { 0xa6, 0x0b, 0xb1, 0xea, 0x2b, 0xf7, 0x10, 0x8f, 0x58, 0x55, 0xf4, 0x49, 0x54, 0x48, 0xba, 0xb9, 0xa5, 0x4d, 0x4e, 0x95, 0x00, 0x45, 0x53, 0x31, 0x34, 0xf4, 0x00, 0x21, 0x74, 0x2d, 0x04, 0x80, 0x5e, 0x7f, 0x3e, 0xd1, 0xa2, 0xf4, 0xe8, 0x27, 0xd9, 0x5a, 0x12, 0x6e, 0x49, 0x8f, 0x17, 0x8e, 0xbe, 0x4a, 0x7b, 0x80, 0xa4, 0xc6, 0xb4, 0xd6, 0x78, 0x2f, 0x39, 0x1e, 0x55, 0xa3, 0x24, 0xaf, }; static const unsigned char ecdh_brainpoolp256r1_490_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_490_sharedsecret[] = { 0x1f, 0x6f, 0x8c, 0xd2, 0xd9, 0xe5, 0x0c, 0x47, 0x1c, 0x2f, 0xcc, 0x97, 0x5e, 0xf8, 0x17, 0xc8, 0x45, 0xb8, 0x57, 0xa1, 0x6d, 0xcc, 0xd4, 0x97, 0xd2, 0xde, 0xbf, 0x80, 0x95, 0x2a, 0x28, 0xe3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_490 = { .name = "ecdh_brainpoolp256r1_490", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_490_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_490_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_490_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 192 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 491 for ECDH, tcId is 193 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_491_peerpubkey[] = { 0x31, 0xa3, 0x62, 0x8e, 0xfd, 0xb7, 0x5d, 0x66, 0x29, 0x03, 0xcb, 0xa8, 0x48, 0x68, 0x05, 0xf9, 0x67, 0x42, 0x03, 0x53, 0x8b, 0x6b, 0x28, 0xa0, 0x9f, 0x96, 0x91, 0xe2, 0x05, 0x29, 0xb5, 0xe0, 0x81, 0x2e, 0x86, 0x4d, 0x25, 0xda, 0x13, 0x73, 0xc0, 0xef, 0x7e, 0x2d, 0x27, 0x33, 0xe0, 0x2e, 0xf2, 0x74, 0xf6, 0xe1, 0xc9, 0xa4, 0x07, 0xe1, 0xd1, 0x01, 0x59, 0x0f, 0x12, 0xbd, 0x21, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_491_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_491_sharedsecret[] = { 0x8c, 0xe9, 0x91, 0xac, 0xa4, 0x90, 0xd0, 0xdb, 0x8d, 0xe2, 0x98, 0xf8, 0x5f, 0x6f, 0x7b, 0x58, 0x08, 0x2f, 0x68, 0x5c, 0xb3, 0x8d, 0xec, 0x43, 0x42, 0xb4, 0xd5, 0x1b, 0xbc, 0x90, 0xfb, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_491 = { .name = "ecdh_brainpoolp256r1_491", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_491_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_491_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_491_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 193 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 492 for ECDH, tcId is 194 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_492_peerpubkey[] = { 0x35, 0xe8, 0xb3, 0xc3, 0xf2, 0x29, 0x35, 0x54, 0xed, 0x7d, 0x71, 0x60, 0x3e, 0x0e, 0xa5, 0x8d, 0xf3, 0x4b, 0x30, 0x99, 0x08, 0xd7, 0xc1, 0x13, 0x4f, 0xb6, 0xa4, 0x36, 0xfc, 0x50, 0x12, 0x35, 0x7f, 0xb1, 0x31, 0x77, 0x80, 0x93, 0x94, 0xd1, 0xd8, 0x21, 0xee, 0x0e, 0xa4, 0x2c, 0x31, 0x8d, 0xd1, 0x64, 0xd8, 0xf2, 0x8a, 0x5a, 0xb6, 0x1d, 0xa5, 0xcf, 0xef, 0x1c, 0xc0, 0xab, 0x80, 0x3a, }; static const unsigned char ecdh_brainpoolp256r1_492_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_492_sharedsecret[] = { 0x24, 0x30, 0x6f, 0xe6, 0x26, 0x09, 0xa3, 0xc2, 0x8e, 0xb1, 0xc8, 0xc8, 0xb3, 0x99, 0xd5, 0xe8, 0x47, 0x40, 0x19, 0x47, 0x09, 0x25, 0xdb, 0xe1, 0x0d, 0xa3, 0xf0, 0xe2, 0xa0, 0x34, 0xba, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_492 = { .name = "ecdh_brainpoolp256r1_492", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_492_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_492_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_492_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 194 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 493 for ECDH, tcId is 195 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_493_peerpubkey[] = { 0x26, 0x5c, 0x29, 0x60, 0xff, 0xe5, 0x88, 0x6c, 0x11, 0xc2, 0x0a, 0xd0, 0xb2, 0xf0, 0xdd, 0xb0, 0x39, 0x06, 0x13, 0x3a, 0x29, 0x61, 0xae, 0xc9, 0x28, 0x06, 0x80, 0x5f, 0x9c, 0x18, 0x56, 0xaf, 0x32, 0x60, 0x2a, 0x17, 0xe1, 0xb1, 0xbf, 0x80, 0x30, 0x0f, 0x35, 0x8a, 0x36, 0x37, 0x93, 0xc3, 0x2c, 0x70, 0x67, 0xd9, 0x52, 0xf1, 0x58, 0x3a, 0x7d, 0x15, 0xf7, 0x55, 0xf3, 0xf1, 0x95, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_493_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_493_sharedsecret[] = { 0x4f, 0x8d, 0x39, 0xb1, 0x95, 0x1c, 0x00, 0xd6, 0x9a, 0xd0, 0xe7, 0x72, 0xab, 0xbc, 0x0d, 0xc6, 0xff, 0xd7, 0x08, 0xa7, 0xf1, 0x63, 0x00, 0x1c, 0x59, 0xd1, 0x16, 0x21, 0x0b, 0x21, 0x61, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_493 = { .name = "ecdh_brainpoolp256r1_493", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_493_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_493_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_493_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 195 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 494 for ECDH, tcId is 196 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_494_peerpubkey[] = { 0x3e, 0xed, 0x78, 0x57, 0x99, 0x99, 0xd9, 0x61, 0x47, 0x0e, 0x34, 0x1d, 0xbf, 0xf5, 0x28, 0x99, 0x05, 0x5f, 0xcd, 0x24, 0x33, 0x13, 0x4a, 0xe5, 0x12, 0x08, 0x31, 0x9c, 0xb0, 0x96, 0x96, 0xa0, 0x4e, 0x89, 0xe1, 0x86, 0xa6, 0xa8, 0xd6, 0xcc, 0x4d, 0xc7, 0x8b, 0x4d, 0x5e, 0xef, 0x30, 0x06, 0x9c, 0xe0, 0xe4, 0xa8, 0xc3, 0xfe, 0x44, 0x06, 0x00, 0xf5, 0x46, 0xb4, 0x5d, 0x16, 0x4a, 0x48, }; static const unsigned char ecdh_brainpoolp256r1_494_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_494_sharedsecret[] = { 0x10, 0x63, 0x9c, 0x11, 0x56, 0xcb, 0x1e, 0x99, 0xb8, 0x0e, 0x76, 0xc0, 0x17, 0x5f, 0x0b, 0xd8, 0x2a, 0x97, 0x4c, 0x46, 0xdf, 0x09, 0xcb, 0xf1, 0x74, 0x3b, 0x33, 0x80, 0x90, 0xeb, 0x1d, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_494 = { .name = "ecdh_brainpoolp256r1_494", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_494_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_494_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_494_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 196 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 495 for ECDH, tcId is 197 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_495_peerpubkey[] = { 0x6f, 0xd7, 0xae, 0xb6, 0xf3, 0x31, 0x39, 0x06, 0x06, 0x9b, 0xd1, 0x0f, 0x50, 0x28, 0x98, 0x00, 0x4e, 0x30, 0xd3, 0xd5, 0xb8, 0xe2, 0x31, 0x62, 0x1b, 0x99, 0x34, 0x3a, 0x92, 0x21, 0x74, 0x95, 0x3d, 0x55, 0x8b, 0x8b, 0x2d, 0x96, 0xa5, 0xb3, 0xbc, 0x87, 0x53, 0xe6, 0x0c, 0x4e, 0x60, 0x53, 0xbc, 0x6b, 0xd8, 0x8b, 0xc5, 0x9f, 0xf5, 0xf8, 0x0b, 0x68, 0xad, 0xfb, 0xb8, 0x39, 0x59, 0x6c, }; static const unsigned char ecdh_brainpoolp256r1_495_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_495_sharedsecret[] = { 0xa2, 0xd9, 0x3a, 0x9e, 0x9c, 0x13, 0x99, 0xce, 0x05, 0x95, 0xd9, 0xa9, 0x31, 0xd3, 0xe5, 0xf1, 0xed, 0x22, 0x74, 0xda, 0x37, 0xce, 0x31, 0xe7, 0x95, 0xd2, 0x6b, 0x7b, 0x9d, 0xf9, 0xa9, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_495 = { .name = "ecdh_brainpoolp256r1_495", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_495_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_495_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_495_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 197 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 496 for ECDH, tcId is 198 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_496_peerpubkey[] = { 0x9f, 0xa9, 0x32, 0xa5, 0xf7, 0x25, 0x6c, 0x14, 0x1a, 0x95, 0x6a, 0x24, 0x17, 0x3e, 0x7b, 0x9c, 0x94, 0xc5, 0xfb, 0x04, 0x05, 0x83, 0x35, 0xfd, 0xe2, 0x20, 0xda, 0x96, 0xf9, 0x52, 0x9f, 0x11, 0x53, 0xce, 0x69, 0x7c, 0x63, 0x83, 0xdf, 0xc8, 0x50, 0x2b, 0x26, 0x19, 0x11, 0x28, 0x9a, 0xc6, 0xb4, 0xff, 0x31, 0x68, 0x8e, 0x4f, 0xcc, 0x61, 0x89, 0x44, 0xbf, 0x62, 0x98, 0x63, 0x4d, 0x6c, }; static const unsigned char ecdh_brainpoolp256r1_496_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_496_sharedsecret[] = { 0xa2, 0x1f, 0x5b, 0x30, 0xb5, 0x03, 0xd8, 0x4f, 0x6b, 0xe4, 0x90, 0xc6, 0xfb, 0x6f, 0xa9, 0x72, 0x1c, 0x0a, 0xde, 0x10, 0xfa, 0xbb, 0x5c, 0x65, 0x78, 0x45, 0xea, 0x1c, 0x94, 0x08, 0x3b, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_496 = { .name = "ecdh_brainpoolp256r1_496", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_496_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_496_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_496_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 198 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 497 for ECDH, tcId is 199 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_497_peerpubkey[] = { 0x1f, 0x0a, 0xff, 0xe5, 0xdd, 0x2f, 0xfc, 0x55, 0x1a, 0x30, 0xe9, 0x47, 0xc9, 0xa0, 0x96, 0xad, 0x29, 0x15, 0xb6, 0xc4, 0x08, 0x9b, 0x2e, 0xc3, 0x9a, 0xe9, 0x05, 0xb1, 0x55, 0x87, 0x85, 0xcc, 0x9c, 0x12, 0x36, 0x03, 0xa5, 0x19, 0x89, 0x1d, 0x50, 0xe1, 0x3f, 0xc2, 0x84, 0xac, 0xaf, 0xec, 0x02, 0xa4, 0x45, 0x99, 0x26, 0xc6, 0x52, 0xc7, 0x94, 0xa0, 0x53, 0x92, 0xe9, 0x5c, 0x7c, 0x69, }; static const unsigned char ecdh_brainpoolp256r1_497_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_497_sharedsecret[] = { 0x85, 0xf2, 0xc9, 0x10, 0x1a, 0x2c, 0x99, 0x14, 0x7c, 0x0a, 0x9b, 0xd8, 0x07, 0x16, 0x44, 0xe5, 0x4b, 0xe2, 0x09, 0xfb, 0xcc, 0x9c, 0x07, 0x2d, 0x4e, 0x32, 0xd6, 0xd7, 0x66, 0x8b, 0x41, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_497 = { .name = "ecdh_brainpoolp256r1_497", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_497_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_497_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_497_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 199 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 498 for ECDH, tcId is 200 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_498_peerpubkey[] = { 0x36, 0xcf, 0xd0, 0x36, 0x56, 0x80, 0x0e, 0xc3, 0x5b, 0xa9, 0x49, 0x24, 0x92, 0xa6, 0x71, 0x54, 0x9d, 0xbd, 0xba, 0x26, 0xd3, 0xde, 0xe4, 0xff, 0xae, 0x6d, 0x20, 0xa9, 0x81, 0x49, 0x96, 0xb6, 0xa8, 0x8f, 0xd5, 0xa0, 0xa4, 0xfd, 0x2d, 0xad, 0x3d, 0xd1, 0x80, 0xe4, 0x31, 0x2f, 0x5c, 0xbe, 0x4e, 0xd8, 0x7d, 0x6d, 0x1c, 0xfb, 0xec, 0x5b, 0x78, 0xc0, 0xb9, 0x58, 0xc7, 0x30, 0x96, 0x36, }; static const unsigned char ecdh_brainpoolp256r1_498_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_498_sharedsecret[] = { 0x91, 0x60, 0x45, 0xc3, 0x8b, 0xea, 0x62, 0x1a, 0xae, 0xa3, 0x0a, 0x20, 0x60, 0x63, 0x5a, 0x3f, 0xda, 0x59, 0x8a, 0x4a, 0x74, 0xfb, 0x7b, 0xf9, 0x3f, 0x89, 0xd9, 0x15, 0x36, 0xe6, 0x83, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_498 = { .name = "ecdh_brainpoolp256r1_498", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_498_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_498_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_498_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 200 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 499 for ECDH, tcId is 201 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_499_peerpubkey[] = { 0x0f, 0xaf, 0x0c, 0x01, 0x9e, 0xb1, 0x61, 0xdd, 0x3d, 0xa1, 0xf6, 0xb3, 0x31, 0x58, 0x9b, 0x7d, 0xf1, 0x8d, 0xfd, 0x71, 0xbe, 0x21, 0x84, 0xd4, 0xc9, 0x6f, 0xa9, 0x65, 0x5c, 0x60, 0xf2, 0x88, 0xa2, 0xb7, 0x4a, 0xc8, 0xe9, 0x94, 0x1d, 0x5f, 0x6a, 0x90, 0xcb, 0x79, 0xea, 0x44, 0xd5, 0x8a, 0x79, 0xbd, 0x3b, 0xa6, 0x24, 0x76, 0x06, 0x5b, 0x44, 0xfd, 0xcf, 0x2b, 0xae, 0x0d, 0x1a, 0xaa, }; static const unsigned char ecdh_brainpoolp256r1_499_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_499_sharedsecret[] = { 0x35, 0x2f, 0xcd, 0xea, 0xb4, 0xfa, 0xa2, 0x00, 0xb9, 0x24, 0x88, 0x94, 0xa7, 0x97, 0x50, 0xe6, 0x85, 0x99, 0x08, 0x7a, 0x33, 0xc1, 0x85, 0x14, 0xd0, 0x1d, 0x39, 0xa8, 0x07, 0x78, 0x4a, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_499 = { .name = "ecdh_brainpoolp256r1_499", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_499_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_499_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_499_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 201 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 500 for ECDH, tcId is 202 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_500_peerpubkey[] = { 0x84, 0x09, 0xb2, 0xb1, 0x69, 0x55, 0xa5, 0xb8, 0xc4, 0xba, 0xe7, 0x49, 0x1b, 0x8e, 0x76, 0x45, 0xd9, 0x95, 0x82, 0xde, 0xa5, 0xab, 0x43, 0xce, 0x80, 0x12, 0x0f, 0xf1, 0x82, 0xb1, 0x79, 0xee, 0x3d, 0x11, 0x98, 0x40, 0xa5, 0xfc, 0xf7, 0xf5, 0xb9, 0x5c, 0x56, 0xdb, 0x44, 0x42, 0x73, 0x58, 0x47, 0xd7, 0xba, 0xfb, 0xed, 0xd6, 0xf6, 0xd1, 0xb4, 0xfd, 0x96, 0x0d, 0x5d, 0xc9, 0xf9, 0xe1, }; static const unsigned char ecdh_brainpoolp256r1_500_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_500_sharedsecret[] = { 0x33, 0xae, 0xb7, 0xa6, 0xd1, 0x54, 0x23, 0xe5, 0x61, 0xd8, 0x6a, 0x1b, 0x93, 0x61, 0xf4, 0x5f, 0x31, 0x4c, 0x7e, 0xd0, 0x39, 0x75, 0x3d, 0x09, 0x1d, 0xd1, 0x13, 0xd7, 0x6a, 0x14, 0x76, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_500 = { .name = "ecdh_brainpoolp256r1_500", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_500_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_500_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_500_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 202 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 501 for ECDH, tcId is 203 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_501_peerpubkey[] = { 0x55, 0x17, 0x1f, 0xc5, 0xac, 0x8c, 0xe0, 0x3c, 0x18, 0xf5, 0x16, 0x74, 0xa7, 0xd7, 0xd9, 0x28, 0x5e, 0x0d, 0x80, 0x42, 0x30, 0x34, 0x42, 0x46, 0x7b, 0xdc, 0x6b, 0x56, 0xe9, 0xd8, 0x3f, 0xee, 0x4b, 0x16, 0x07, 0x22, 0xcc, 0x83, 0xc7, 0x38, 0x65, 0x7a, 0x8e, 0xf4, 0xd1, 0xcf, 0x35, 0xf6, 0x0d, 0x58, 0x9c, 0x30, 0x95, 0x91, 0x20, 0x18, 0x32, 0x08, 0x0d, 0x8d, 0x72, 0xd1, 0xd2, 0x4e, }; static const unsigned char ecdh_brainpoolp256r1_501_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_501_sharedsecret[] = { 0x30, 0x87, 0x83, 0x91, 0x2b, 0x4c, 0x77, 0x73, 0xbe, 0xcf, 0x7f, 0x88, 0x24, 0x1f, 0x3c, 0xca, 0x66, 0xfb, 0xf5, 0xfe, 0x00, 0x4c, 0x52, 0xfd, 0xfb, 0x99, 0x48, 0x50, 0x43, 0x7f, 0x13, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_501 = { .name = "ecdh_brainpoolp256r1_501", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_501_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_501_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_501_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 203 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 502 for ECDH, tcId is 204 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_502_peerpubkey[] = { 0x54, 0xdf, 0xf7, 0x5d, 0xdc, 0x13, 0xd6, 0x9f, 0x0d, 0xc8, 0x4d, 0x57, 0x49, 0x9e, 0xc4, 0x0c, 0xeb, 0x53, 0xcd, 0xe6, 0xab, 0xda, 0xde, 0x0b, 0xb4, 0xe9, 0x45, 0x8a, 0xa3, 0xd4, 0xd9, 0xa8, 0x1f, 0x20, 0x44, 0xc9, 0x26, 0xd7, 0x62, 0xca, 0x38, 0x4e, 0x9b, 0xcc, 0x53, 0xe5, 0xbf, 0xbd, 0xcd, 0x5b, 0x6e, 0x61, 0xea, 0x9c, 0x08, 0xbe, 0x40, 0x65, 0x17, 0x9a, 0x84, 0x35, 0x6c, 0x4c, }; static const unsigned char ecdh_brainpoolp256r1_502_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_502_sharedsecret[] = { 0x41, 0xe3, 0x61, 0x10, 0x5f, 0x18, 0x30, 0xf7, 0x6b, 0xad, 0x53, 0x73, 0x1c, 0xf7, 0xe1, 0x51, 0xc3, 0x19, 0xb0, 0x9e, 0x78, 0xe5, 0x55, 0x3a, 0xd8, 0x71, 0x88, 0x84, 0x0d, 0xb0, 0xf3, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_502 = { .name = "ecdh_brainpoolp256r1_502", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_502_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_502_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_502_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 204 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 503 for ECDH, tcId is 205 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_503_peerpubkey[] = { 0x77, 0x4e, 0xa2, 0x6d, 0x37, 0x2a, 0x38, 0xd8, 0x20, 0x0d, 0x27, 0x0d, 0xc1, 0x1a, 0xf6, 0x94, 0x56, 0x5b, 0x87, 0x1a, 0x90, 0x9e, 0xcc, 0xfd, 0x58, 0xf5, 0x7d, 0x9e, 0x23, 0x55, 0x77, 0x14, 0x1d, 0x1f, 0x0f, 0xc7, 0x47, 0x4e, 0x76, 0xcc, 0xf4, 0x77, 0x98, 0xc2, 0x15, 0x8d, 0x3c, 0x64, 0xd9, 0x3a, 0xb5, 0x2c, 0xfd, 0x1c, 0x3b, 0xc6, 0x58, 0x9f, 0x79, 0xcc, 0xe6, 0xfe, 0xf7, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_503_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_503_sharedsecret[] = { 0x79, 0x15, 0x9c, 0xf3, 0x2d, 0x78, 0xd0, 0xea, 0x4d, 0x51, 0xb4, 0x63, 0xa2, 0x45, 0xef, 0x21, 0x0a, 0x5e, 0xc0, 0x46, 0xf0, 0x07, 0xcc, 0x1e, 0x63, 0xf1, 0x5d, 0xc8, 0x96, 0x2f, 0xcd, 0xa2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_503 = { .name = "ecdh_brainpoolp256r1_503", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_503_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_503_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_503_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 205 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 504 for ECDH, tcId is 206 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_504_peerpubkey[] = { 0x5b, 0xf2, 0x45, 0x5f, 0x8b, 0xbb, 0xf6, 0x50, 0xbb, 0xcc, 0x8a, 0x9c, 0xaf, 0xcd, 0xd5, 0x36, 0x04, 0x46, 0x6f, 0x85, 0x5a, 0x6b, 0xd6, 0xc8, 0x5c, 0x7b, 0xcd, 0xfd, 0x8b, 0x62, 0x50, 0xe3, 0x55, 0x06, 0x95, 0xf4, 0xa4, 0x2f, 0xfe, 0xac, 0xe4, 0x07, 0x40, 0x09, 0xa3, 0xc1, 0x6f, 0x93, 0xed, 0x52, 0x0c, 0x56, 0x6c, 0x55, 0x0c, 0xce, 0xb1, 0x8a, 0x54, 0x54, 0x34, 0xf9, 0xc1, 0x32, }; static const unsigned char ecdh_brainpoolp256r1_504_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_504_sharedsecret[] = { 0x08, 0x72, 0x8d, 0xa7, 0x78, 0xce, 0x21, 0xb2, 0x16, 0x15, 0xe8, 0x59, 0x51, 0xfd, 0x2c, 0x8f, 0x4c, 0x9f, 0x6f, 0xc6, 0x8c, 0xa9, 0xa4, 0x72, 0xfa, 0xad, 0xd5, 0xae, 0x1a, 0xd5, 0xbc, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_504 = { .name = "ecdh_brainpoolp256r1_504", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_504_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_504_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_504_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 206 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 505 for ECDH, tcId is 207 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_505_peerpubkey[] = { 0x1f, 0xc7, 0xca, 0x73, 0xd2, 0x08, 0xfc, 0xd7, 0xdf, 0x02, 0x91, 0xd3, 0x2b, 0x31, 0x99, 0x48, 0x7e, 0x93, 0x2e, 0xb2, 0x0d, 0xa4, 0xc4, 0x52, 0xeb, 0xb0, 0x26, 0x5a, 0xe1, 0x10, 0x80, 0x0c, 0xa3, 0xd2, 0x40, 0x16, 0xd1, 0x93, 0x73, 0x81, 0x86, 0x9e, 0x81, 0x31, 0x26, 0xd5, 0xf5, 0x3f, 0x40, 0xee, 0x6f, 0xf7, 0x87, 0x75, 0xfd, 0x80, 0xa2, 0xf6, 0x5b, 0x4e, 0x89, 0xe0, 0x3b, 0x4d, }; static const unsigned char ecdh_brainpoolp256r1_505_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_505_sharedsecret[] = { 0xa8, 0x95, 0x22, 0x35, 0xfa, 0x4b, 0xe1, 0x9e, 0xb4, 0xde, 0x0e, 0xd1, 0x04, 0x9d, 0x3d, 0x1a, 0x20, 0x0f, 0xd7, 0x15, 0x1a, 0xf4, 0xfd, 0x5e, 0x81, 0xfd, 0xcb, 0xf5, 0xcc, 0x92, 0x5e, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_505 = { .name = "ecdh_brainpoolp256r1_505", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_505_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_505_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_505_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 207 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 506 for ECDH, tcId is 208 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_506_peerpubkey[] = { 0x4b, 0x8a, 0xae, 0xc0, 0x9e, 0xfa, 0xa2, 0x45, 0x8b, 0xe5, 0xe2, 0xae, 0x87, 0x32, 0x66, 0xb2, 0x21, 0xe4, 0x3b, 0xe4, 0x12, 0x6e, 0x7c, 0x66, 0xa0, 0x53, 0xbe, 0x29, 0xe8, 0x51, 0x61, 0xf1, 0x22, 0x4b, 0xe2, 0x15, 0xc2, 0x79, 0x9f, 0x8a, 0x0c, 0x3e, 0x41, 0x62, 0x2e, 0xb1, 0x1d, 0x0a, 0x8c, 0x98, 0xd9, 0xa7, 0x3a, 0x26, 0xb7, 0x1b, 0xea, 0x59, 0x80, 0x1d, 0xba, 0xa5, 0xe6, 0x7d, }; static const unsigned char ecdh_brainpoolp256r1_506_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_506_sharedsecret[] = { 0xa5, 0x35, 0x26, 0x93, 0x71, 0xfc, 0x45, 0xf7, 0xb7, 0xdf, 0x87, 0x78, 0xf0, 0xf9, 0xe2, 0x0e, 0xbe, 0xbb, 0xde, 0x11, 0x7e, 0xc9, 0xe7, 0x00, 0xf3, 0xf2, 0x72, 0x02, 0xb1, 0x45, 0xdc, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_506 = { .name = "ecdh_brainpoolp256r1_506", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_506_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_506_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_506_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 208 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 507 for ECDH, tcId is 209 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_507_peerpubkey[] = { 0x2e, 0x2f, 0x7f, 0x0e, 0x9e, 0x63, 0x46, 0x4a, 0xff, 0xd6, 0xbe, 0x94, 0x05, 0x1b, 0x61, 0x28, 0xc5, 0x81, 0x95, 0xf5, 0x8c, 0x14, 0xe4, 0xde, 0x72, 0xb0, 0x1a, 0xa7, 0x6d, 0xc2, 0x0b, 0x3c, 0x80, 0x2a, 0x95, 0x73, 0x6a, 0x31, 0xf6, 0xad, 0xf4, 0xc8, 0xd3, 0xca, 0x40, 0x29, 0x03, 0xf7, 0x39, 0x8f, 0x5b, 0x61, 0xd5, 0x62, 0x20, 0x50, 0xe0, 0x02, 0xfe, 0x27, 0x8e, 0x69, 0x30, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_507_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_507_sharedsecret[] = { 0x8b, 0xdd, 0x5e, 0xb1, 0xbb, 0xdb, 0x38, 0xeb, 0xf2, 0x06, 0x9b, 0x81, 0x5d, 0xb8, 0xcf, 0x43, 0xe2, 0x62, 0x53, 0x13, 0x90, 0xb6, 0xc3, 0x9c, 0x5d, 0x31, 0x82, 0x45, 0x22, 0x74, 0xf3, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_507 = { .name = "ecdh_brainpoolp256r1_507", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_507_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_507_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_507_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 209 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 508 for ECDH, tcId is 210 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_508_peerpubkey[] = { 0x4e, 0x2c, 0xea, 0x29, 0x82, 0x52, 0x12, 0xa3, 0x5b, 0xb6, 0xbb, 0x59, 0x20, 0x54, 0x93, 0x34, 0x1d, 0x1d, 0x5b, 0x00, 0xab, 0x71, 0x05, 0x48, 0x7d, 0xdd, 0xe2, 0xde, 0xd2, 0x5a, 0xc7, 0xb2, 0x51, 0xa8, 0x6b, 0x9c, 0x3e, 0x49, 0x4b, 0xb3, 0x61, 0x0c, 0x1f, 0xce, 0x10, 0x6a, 0x08, 0x9b, 0x63, 0x87, 0x79, 0xe6, 0xba, 0x0c, 0xd8, 0x02, 0x06, 0x3e, 0xef, 0xef, 0xbf, 0x84, 0xd6, 0xd5, }; static const unsigned char ecdh_brainpoolp256r1_508_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_508_sharedsecret[] = { 0x2e, 0xee, 0xb2, 0x26, 0x23, 0xe0, 0xd2, 0x49, 0xc9, 0xcb, 0x16, 0x4b, 0xa9, 0xbc, 0xd8, 0xd9, 0xe9, 0xfe, 0xe0, 0x52, 0x9f, 0x56, 0x21, 0xaa, 0x2e, 0xf5, 0x39, 0x92, 0xbf, 0xb3, 0x35, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_508 = { .name = "ecdh_brainpoolp256r1_508", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_508_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_508_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_508_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 210 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 509 for ECDH, tcId is 211 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_509_peerpubkey[] = { 0x79, 0x71, 0xbc, 0xfc, 0xe2, 0xbe, 0x4f, 0x84, 0xb9, 0xee, 0x92, 0x1e, 0x2d, 0xf2, 0x25, 0x8d, 0x2e, 0x47, 0x6e, 0x29, 0x21, 0x4a, 0xec, 0x39, 0x3c, 0x9f, 0x45, 0x9d, 0x48, 0x77, 0x42, 0x7a, 0xa6, 0x64, 0x4f, 0x47, 0xd6, 0xb3, 0xcf, 0x7f, 0x78, 0xe5, 0xf5, 0xa9, 0x50, 0x7f, 0xb7, 0x5b, 0xba, 0xc4, 0x46, 0x93, 0xa6, 0x22, 0xec, 0x8c, 0x8f, 0xf8, 0x75, 0x88, 0x38, 0x2d, 0x52, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_509_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_509_sharedsecret[] = { 0x34, 0xe5, 0x9c, 0x50, 0x37, 0x34, 0x7a, 0x2c, 0x25, 0x0d, 0xaa, 0x40, 0xaf, 0x4e, 0xd0, 0xfa, 0x6b, 0x48, 0x9b, 0x58, 0x73, 0x27, 0x22, 0xf4, 0x9f, 0x3f, 0x2d, 0x33, 0xb6, 0x80, 0xe1, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_509 = { .name = "ecdh_brainpoolp256r1_509", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_509_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_509_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_509_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 211 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 510 for ECDH, tcId is 212 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_510_peerpubkey[] = { 0x24, 0xd9, 0x70, 0xcf, 0xeb, 0xe3, 0xb4, 0xe3, 0xf9, 0x61, 0x80, 0x56, 0xe3, 0x4c, 0x90, 0x33, 0x8c, 0x73, 0x0a, 0xf4, 0xf6, 0xb9, 0xee, 0xb2, 0xd1, 0x06, 0xe8, 0x84, 0x51, 0x57, 0x57, 0xa8, 0x5d, 0x27, 0xea, 0xe6, 0x21, 0x94, 0x45, 0xe1, 0x21, 0xcd, 0xc0, 0x6d, 0x36, 0x9a, 0x37, 0x3c, 0x03, 0x49, 0x09, 0x69, 0x1f, 0x7c, 0x80, 0xcc, 0xee, 0x93, 0x3b, 0x1b, 0xe1, 0x09, 0xd7, 0x3d, }; static const unsigned char ecdh_brainpoolp256r1_510_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_510_sharedsecret[] = { 0x29, 0x00, 0xf9, 0xcc, 0x5e, 0xc7, 0x73, 0x15, 0x27, 0x16, 0xe6, 0x4b, 0xcd, 0xc0, 0x4a, 0x2e, 0xe5, 0x3c, 0xa3, 0xb1, 0xdc, 0x13, 0x8c, 0x4b, 0x5b, 0x71, 0x43, 0x6e, 0x63, 0x44, 0xef, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_510 = { .name = "ecdh_brainpoolp256r1_510", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_510_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_510_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_510_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 212 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 511 for ECDH, tcId is 213 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_511_peerpubkey[] = { 0x3b, 0x73, 0xef, 0x1a, 0x5f, 0xd0, 0x7e, 0x25, 0x6a, 0xe5, 0xcc, 0x40, 0x39, 0x2e, 0x7c, 0xbe, 0x20, 0xb3, 0x6d, 0xe0, 0x81, 0xe8, 0x28, 0xeb, 0x77, 0xc4, 0xb1, 0xcc, 0xd6, 0xd9, 0x0f, 0xf0, 0x43, 0x6c, 0x1c, 0x2f, 0x75, 0x72, 0x76, 0xc3, 0x82, 0x64, 0xed, 0xe0, 0x08, 0x53, 0xce, 0x87, 0x9b, 0x27, 0x78, 0xf1, 0x4e, 0x7b, 0x84, 0xd7, 0x75, 0x53, 0x58, 0xf5, 0x68, 0x1d, 0xb9, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_511_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_511_sharedsecret[] = { 0x30, 0x47, 0xd0, 0x55, 0xf5, 0xcf, 0x6a, 0xe0, 0x69, 0x05, 0xb2, 0x65, 0x5c, 0x4d, 0x8a, 0xd3, 0x30, 0x1a, 0x3f, 0x34, 0xa6, 0xf1, 0xa5, 0xbd, 0x35, 0x6c, 0x26, 0x6f, 0x95, 0xd0, 0x67, 0x08, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_511 = { .name = "ecdh_brainpoolp256r1_511", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_511_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_511_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_511_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 213 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 512 for ECDH, tcId is 214 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_512_peerpubkey[] = { 0x48, 0xde, 0x36, 0xef, 0x3f, 0x54, 0x8a, 0x2c, 0xb7, 0xf8, 0x63, 0xd4, 0x64, 0x04, 0x0e, 0x14, 0xc2, 0x86, 0xf7, 0xe4, 0x0d, 0x10, 0x21, 0x90, 0xd5, 0x0b, 0x78, 0x52, 0x4b, 0x33, 0x29, 0xcf, 0x4a, 0x60, 0xbb, 0x85, 0xb3, 0x7b, 0x1f, 0x11, 0x30, 0x8b, 0xdf, 0x1b, 0x91, 0x90, 0xd2, 0xdb, 0xc5, 0xe8, 0x07, 0x42, 0x33, 0x30, 0x75, 0xd7, 0x1c, 0xad, 0x09, 0xaa, 0xea, 0x31, 0xd5, 0xea, }; static const unsigned char ecdh_brainpoolp256r1_512_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_512_sharedsecret[] = { 0xa8, 0x14, 0x23, 0x0d, 0x30, 0x5c, 0x82, 0x15, 0xed, 0x52, 0xda, 0xf5, 0x58, 0xce, 0x3b, 0x58, 0x96, 0xc8, 0x42, 0xf7, 0x7e, 0xf3, 0x61, 0x73, 0x44, 0x48, 0xb6, 0x7c, 0x4c, 0x94, 0x7f, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_512 = { .name = "ecdh_brainpoolp256r1_512", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_512_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_512_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_512_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 214 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 513 for ECDH, tcId is 215 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_513_peerpubkey[] = { 0x81, 0xea, 0x50, 0x9d, 0x1f, 0xa6, 0xf4, 0x9a, 0xa4, 0xa8, 0x4a, 0xf1, 0x65, 0x2c, 0xbd, 0xb9, 0x0b, 0xe8, 0x21, 0x40, 0x1f, 0x14, 0x4a, 0x69, 0x6a, 0x69, 0x9e, 0x7d, 0x22, 0xfa, 0xab, 0xc4, 0x8e, 0x30, 0x26, 0x53, 0x5a, 0x28, 0xc0, 0x7c, 0x30, 0x27, 0x01, 0x34, 0x01, 0x31, 0xd6, 0xcb, 0xd6, 0x3b, 0x6e, 0x55, 0xe8, 0x91, 0xa1, 0xd9, 0xdf, 0x03, 0x5b, 0xed, 0x36, 0x52, 0xe0, 0xb9, }; static const unsigned char ecdh_brainpoolp256r1_513_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_513_sharedsecret[] = { 0x1d, 0xb4, 0x76, 0x35, 0x7f, 0x58, 0x28, 0x66, 0x0e, 0xae, 0x97, 0xce, 0x7b, 0x79, 0xf1, 0x99, 0x04, 0x10, 0x94, 0xa6, 0xe9, 0x79, 0x31, 0x60, 0xb2, 0xb7, 0x84, 0xe6, 0x9d, 0x69, 0xca, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_513 = { .name = "ecdh_brainpoolp256r1_513", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_513_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_513_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_513_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 215 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 514 for ECDH, tcId is 216 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_514_peerpubkey[] = { 0xa7, 0x8d, 0xcd, 0xbd, 0xda, 0x58, 0xc0, 0x91, 0xab, 0x76, 0xe0, 0x33, 0x74, 0xe9, 0xcb, 0xea, 0x42, 0xfa, 0xc7, 0x53, 0xe2, 0x7c, 0x02, 0xf1, 0x0f, 0x33, 0x20, 0xc6, 0x86, 0x16, 0x3e, 0x7f, 0xa8, 0xb0, 0x30, 0xa8, 0xd2, 0x4b, 0x1f, 0x13, 0x41, 0xec, 0x17, 0xdc, 0xd2, 0x3a, 0xbf, 0x31, 0xf8, 0x65, 0xdb, 0x7c, 0x8a, 0x8e, 0x14, 0x0d, 0x9c, 0x7a, 0xea, 0x69, 0x75, 0xa3, 0x35, 0x55, }; static const unsigned char ecdh_brainpoolp256r1_514_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_514_sharedsecret[] = { 0x00, 0xfa, 0x0c, 0xb8, 0x33, 0x10, 0x4c, 0x9d, 0xba, 0x60, 0x30, 0x6e, 0x71, 0x6d, 0xe7, 0x02, 0xca, 0x2e, 0x33, 0x30, 0x0b, 0xbf, 0x20, 0x4c, 0x3a, 0xfe, 0xf8, 0xde, 0xbc, 0x91, 0x1d, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_514 = { .name = "ecdh_brainpoolp256r1_514", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_514_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_514_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_514_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 216 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 515 for ECDH, tcId is 217 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_515_peerpubkey[] = { 0x31, 0x9c, 0x11, 0x3f, 0x9d, 0x04, 0x17, 0x9b, 0xde, 0xbc, 0x2b, 0x96, 0xc7, 0x7f, 0x8b, 0xd3, 0x3b, 0xee, 0xfd, 0x7f, 0x62, 0x0c, 0xe0, 0xf7, 0x15, 0x29, 0x3c, 0xc5, 0xcd, 0x21, 0x0d, 0xc8, 0x29, 0x07, 0x82, 0x8a, 0x1d, 0xaa, 0x58, 0x4b, 0x2f, 0xad, 0x0a, 0x7a, 0xf7, 0xd9, 0x5d, 0x53, 0x62, 0x9b, 0xae, 0x4e, 0x14, 0x01, 0x52, 0x2f, 0xc2, 0x6d, 0xd6, 0x1b, 0x84, 0xe5, 0x67, 0x97, }; static const unsigned char ecdh_brainpoolp256r1_515_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_515_sharedsecret[] = { 0x1c, 0x0c, 0xe9, 0xdc, 0x92, 0x80, 0x52, 0x06, 0x98, 0x8f, 0x2e, 0x2b, 0x3c, 0x4b, 0xc4, 0x58, 0xe7, 0x72, 0xb4, 0xb6, 0xb1, 0xe8, 0xbe, 0x09, 0xb7, 0x9b, 0x67, 0x35, 0x76, 0x02, 0x92, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_515 = { .name = "ecdh_brainpoolp256r1_515", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_515_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_515_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_515_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 217 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 516 for ECDH, tcId is 218 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_516_peerpubkey[] = { 0x7d, 0x48, 0x6d, 0xe8, 0x15, 0xe8, 0x88, 0x75, 0x16, 0xe8, 0xf5, 0x3a, 0x65, 0x62, 0x1b, 0x79, 0x53, 0xc9, 0x3f, 0x34, 0x1e, 0x9c, 0xf0, 0xaf, 0x3b, 0x42, 0xcf, 0x43, 0x29, 0x8c, 0x8e, 0x57, 0x12, 0x5d, 0x95, 0x78, 0xa3, 0x57, 0x6b, 0xeb, 0xb7, 0xc4, 0xfb, 0x90, 0x8e, 0x36, 0x50, 0xaf, 0x16, 0x5d, 0x19, 0x45, 0xd9, 0x6b, 0x42, 0x58, 0xbb, 0xb3, 0x9e, 0x35, 0x2a, 0xef, 0x4f, 0xc5, }; static const unsigned char ecdh_brainpoolp256r1_516_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_516_sharedsecret[] = { 0x59, 0xf7, 0x4b, 0xdf, 0x57, 0xa5, 0x79, 0x33, 0xe8, 0x67, 0x58, 0x89, 0x04, 0xc4, 0x66, 0x3c, 0x87, 0x74, 0xb1, 0xd3, 0x81, 0xf6, 0xa8, 0xb5, 0x1c, 0xbe, 0x2f, 0x5c, 0x50, 0xfa, 0x9b, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_516 = { .name = "ecdh_brainpoolp256r1_516", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_516_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_516_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_516_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 218 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 517 for ECDH, tcId is 219 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_517_peerpubkey[] = { 0xa1, 0xb8, 0x27, 0xd1, 0xd6, 0xf6, 0x20, 0xb2, 0xf9, 0x97, 0x06, 0x4c, 0xb3, 0x0e, 0x52, 0xe6, 0xa5, 0xfe, 0xa6, 0x33, 0xda, 0x87, 0x7c, 0x2e, 0x72, 0x66, 0xec, 0xe7, 0x60, 0x85, 0x6a, 0x6f, 0x03, 0x38, 0xa8, 0x49, 0x6c, 0xce, 0xcc, 0xf0, 0xc6, 0xf1, 0xfb, 0x78, 0x17, 0x62, 0x99, 0xfe, 0xc0, 0x63, 0xd4, 0x19, 0x5b, 0x75, 0x88, 0xd0, 0x7b, 0x9c, 0x04, 0x47, 0xeb, 0x23, 0xf8, 0x32, }; static const unsigned char ecdh_brainpoolp256r1_517_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_517_sharedsecret[] = { 0x91, 0x11, 0xf7, 0x11, 0xf5, 0xb9, 0xf2, 0x6e, 0x60, 0xf1, 0x4c, 0xf6, 0x13, 0x27, 0x35, 0x0c, 0x9f, 0x1b, 0x89, 0xce, 0x64, 0xeb, 0x59, 0x09, 0xc4, 0x2a, 0x8f, 0x9a, 0x56, 0x29, 0x6b, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_517 = { .name = "ecdh_brainpoolp256r1_517", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_517_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_517_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_517_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 219 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 518 for ECDH, tcId is 220 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_518_peerpubkey[] = { 0x24, 0x04, 0x45, 0xac, 0x1b, 0xc5, 0x34, 0xf4, 0xe2, 0x96, 0xae, 0xaa, 0xed, 0x44, 0xd0, 0x62, 0x44, 0x52, 0xc4, 0x27, 0x13, 0x1c, 0xd2, 0xc4, 0x51, 0x2e, 0x56, 0x13, 0x04, 0x6f, 0x98, 0xc2, 0x1c, 0x42, 0x6b, 0x8b, 0x43, 0xc3, 0xf6, 0xef, 0xae, 0xa6, 0x72, 0x61, 0x44, 0x95, 0x3a, 0x95, 0x33, 0x68, 0x5e, 0x92, 0x25, 0x78, 0xc3, 0xab, 0x1d, 0x6b, 0x58, 0xe6, 0xf0, 0xdc, 0x45, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_518_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_518_sharedsecret[] = { 0x25, 0x00, 0xa2, 0x8d, 0x62, 0x2b, 0x6a, 0x74, 0x37, 0x54, 0x33, 0x3f, 0x15, 0x98, 0x2b, 0xb1, 0xe2, 0x92, 0x60, 0x98, 0x4c, 0x4d, 0x5f, 0xb9, 0xd7, 0xf6, 0x83, 0xa7, 0xc1, 0xe2, 0xd4, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_518 = { .name = "ecdh_brainpoolp256r1_518", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_518_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_518_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_518_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 220 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 519 for ECDH, tcId is 221 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_519_peerpubkey[] = { 0x2f, 0xe3, 0x68, 0xd6, 0xbb, 0xe7, 0x75, 0x46, 0x66, 0xd2, 0xf0, 0xb8, 0x14, 0x42, 0xc3, 0xe6, 0x8c, 0x66, 0x5b, 0x0b, 0x54, 0x63, 0x4c, 0x85, 0x6a, 0x30, 0x50, 0x6a, 0xd3, 0x5f, 0x5b, 0x66, 0x22, 0xe8, 0x3c, 0x33, 0xc1, 0x99, 0x73, 0x13, 0xbf, 0x75, 0x91, 0x44, 0xcc, 0x97, 0x67, 0xd1, 0x4e, 0x04, 0xc8, 0x4a, 0xa4, 0xb0, 0x56, 0x4b, 0xa8, 0x9a, 0xb1, 0xfd, 0x6b, 0xef, 0xf2, 0xa0, }; static const unsigned char ecdh_brainpoolp256r1_519_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_519_sharedsecret[] = { 0x45, 0x22, 0xeb, 0xbd, 0x65, 0x37, 0xd7, 0x3f, 0x06, 0x66, 0xdc, 0xf4, 0x4e, 0x37, 0x29, 0x7b, 0xf7, 0xc9, 0xdd, 0x04, 0x7b, 0x39, 0x49, 0xc5, 0x8c, 0xcf, 0xb5, 0x85, 0x50, 0x6c, 0xc6, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_519 = { .name = "ecdh_brainpoolp256r1_519", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_519_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_519_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_519_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 221 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 520 for ECDH, tcId is 222 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_520_peerpubkey[] = { 0x0b, 0x1e, 0x42, 0x69, 0xbb, 0xee, 0x96, 0xb2, 0x02, 0xe3, 0x3d, 0x2d, 0xde, 0xfe, 0xd6, 0x96, 0x37, 0x18, 0xa3, 0x5a, 0x4f, 0xb3, 0x57, 0xa9, 0x5b, 0x80, 0xc6, 0x09, 0xbc, 0xd4, 0xd8, 0xb3, 0x1f, 0x5a, 0xe0, 0xdc, 0x28, 0xcb, 0x2f, 0xf8, 0xfa, 0xb8, 0x29, 0x4b, 0xca, 0x63, 0xc8, 0x11, 0x53, 0xda, 0x43, 0xa1, 0x0d, 0x3d, 0x16, 0xe4, 0xb5, 0x0d, 0x08, 0xd0, 0xd9, 0xef, 0x2f, 0xfd, }; static const unsigned char ecdh_brainpoolp256r1_520_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_520_sharedsecret[] = { 0x2e, 0x13, 0x68, 0x16, 0x2b, 0x34, 0x51, 0x58, 0xa3, 0x75, 0x44, 0x5d, 0x40, 0xa1, 0x9c, 0x96, 0xea, 0xec, 0x3b, 0xb9, 0x2d, 0xa8, 0x9f, 0xaf, 0xac, 0x7a, 0x67, 0x84, 0x2a, 0x1a, 0xf8, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_520 = { .name = "ecdh_brainpoolp256r1_520", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_520_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_520_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_520_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 222 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 521 for ECDH, tcId is 223 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_521_peerpubkey[] = { 0x13, 0x7b, 0xba, 0x4b, 0x39, 0x55, 0x7a, 0xe1, 0xa6, 0xe8, 0x77, 0x74, 0xe6, 0x3f, 0x97, 0xdc, 0x59, 0xa0, 0x88, 0x3c, 0xf7, 0xef, 0xbe, 0x77, 0x94, 0x26, 0x44, 0x30, 0x91, 0xe5, 0x19, 0xa4, 0x0e, 0x76, 0x5f, 0xef, 0xca, 0x53, 0xde, 0xb2, 0x66, 0x6f, 0xc1, 0x2c, 0x5a, 0x01, 0x11, 0x13, 0x27, 0xd5, 0xe9, 0xbb, 0xf6, 0xe0, 0xa7, 0x7b, 0xb0, 0xb6, 0x0f, 0x23, 0xef, 0xbd, 0x01, 0x3c, }; static const unsigned char ecdh_brainpoolp256r1_521_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_521_sharedsecret[] = { 0x26, 0xbe, 0x96, 0x91, 0x80, 0x5c, 0x8b, 0xe7, 0x56, 0x3f, 0xd6, 0x88, 0x63, 0x2a, 0xd4, 0x20, 0x24, 0x5b, 0x03, 0xa3, 0xff, 0x7b, 0xf7, 0x2a, 0x9a, 0xdf, 0x11, 0x67, 0x8e, 0x39, 0xac, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_521 = { .name = "ecdh_brainpoolp256r1_521", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_521_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_521_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_521_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 223 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 522 for ECDH, tcId is 224 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_522_peerpubkey[] = { 0x2b, 0xfd, 0xd6, 0xb9, 0xf4, 0x6d, 0xb8, 0xf0, 0xd9, 0x67, 0x6c, 0x0e, 0x8d, 0x98, 0x0a, 0x6b, 0x2d, 0xb0, 0xbe, 0x4f, 0x4c, 0xa8, 0x5e, 0x5e, 0x86, 0x07, 0xcc, 0xe2, 0x9a, 0x7a, 0xec, 0x1f, 0x17, 0x9f, 0x02, 0x56, 0x16, 0x7c, 0x7c, 0x48, 0xb6, 0x8a, 0xcf, 0xd6, 0xf1, 0xfa, 0x4a, 0x4e, 0x15, 0x6d, 0x67, 0xa4, 0x7d, 0x2d, 0x27, 0xfe, 0xc7, 0x35, 0x83, 0x2d, 0x5e, 0x87, 0xa4, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_522_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_522_sharedsecret[] = { 0x27, 0xcc, 0x4d, 0xb1, 0x72, 0xcf, 0xd0, 0x1e, 0xcb, 0x60, 0x75, 0xdd, 0x03, 0x6e, 0x0c, 0x87, 0x82, 0xac, 0xf6, 0x38, 0x02, 0x7a, 0x7a, 0xe5, 0xf2, 0xa5, 0xbc, 0x50, 0xd9, 0x77, 0x6e, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_522 = { .name = "ecdh_brainpoolp256r1_522", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_522_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_522_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_522_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 224 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 523 for ECDH, tcId is 225 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_523_peerpubkey[] = { 0x59, 0x4d, 0xb0, 0x77, 0x41, 0x35, 0xc4, 0xcf, 0x01, 0x6e, 0x30, 0xe9, 0x92, 0x79, 0x0e, 0x6d, 0x50, 0x8e, 0x47, 0xae, 0x28, 0x7f, 0xd4, 0x3d, 0x4b, 0xa6, 0x0b, 0x52, 0xa5, 0xbb, 0x08, 0x62, 0x99, 0x7d, 0xa7, 0xcf, 0x82, 0x63, 0x7d, 0xe6, 0x0a, 0xd6, 0xc9, 0x5d, 0x94, 0x83, 0x41, 0x93, 0x80, 0x08, 0xdf, 0x19, 0xd0, 0xa1, 0x40, 0xb0, 0xfe, 0x73, 0x42, 0x9b, 0xef, 0x20, 0xfe, 0x9c, }; static const unsigned char ecdh_brainpoolp256r1_523_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_523_sharedsecret[] = { 0x1a, 0x0f, 0x4d, 0xeb, 0x41, 0xde, 0x86, 0xa4, 0xca, 0x61, 0x2a, 0x8c, 0x48, 0x2c, 0xaf, 0x4a, 0xdf, 0xa5, 0x38, 0xea, 0x2d, 0xc3, 0xf3, 0x4f, 0xd7, 0x08, 0x05, 0x4f, 0xe0, 0x1a, 0xd9, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_523 = { .name = "ecdh_brainpoolp256r1_523", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_523_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_523_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_523_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 225 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 524 for ECDH, tcId is 226 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_524_peerpubkey[] = { 0x62, 0x3a, 0xb2, 0xcc, 0x47, 0x86, 0x38, 0xa3, 0xfb, 0x50, 0xeb, 0x5f, 0x07, 0x55, 0x10, 0x7b, 0xbb, 0x46, 0xbb, 0x05, 0xf2, 0x44, 0x8c, 0x77, 0xda, 0x04, 0x1d, 0xe8, 0xaf, 0xb3, 0x12, 0xc3, 0x7c, 0xa2, 0xfb, 0x6b, 0x6b, 0x90, 0x68, 0x83, 0x71, 0xa9, 0xd6, 0x49, 0x7c, 0x55, 0x38, 0x24, 0xdd, 0x06, 0x8f, 0xaa, 0x52, 0x8d, 0x92, 0xc4, 0xa8, 0x50, 0x56, 0xa6, 0x21, 0x10, 0x14, 0x8b, }; static const unsigned char ecdh_brainpoolp256r1_524_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_524_sharedsecret[] = { 0xa5, 0x75, 0xc8, 0x81, 0x15, 0xf5, 0x4c, 0x89, 0xb9, 0xb0, 0x93, 0xd2, 0x12, 0x15, 0x01, 0x8d, 0xce, 0x87, 0x2c, 0xea, 0xb6, 0x05, 0xeb, 0x49, 0xa4, 0x4c, 0x65, 0x82, 0x53, 0xde, 0x4c, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_524 = { .name = "ecdh_brainpoolp256r1_524", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_524_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_524_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_524_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 226 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 525 for ECDH, tcId is 227 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_525_peerpubkey[] = { 0x05, 0xbf, 0x1d, 0x24, 0x05, 0x43, 0xc0, 0x7a, 0xcc, 0xe8, 0x7d, 0x4c, 0x35, 0x2b, 0x66, 0xf2, 0xdd, 0xd3, 0x10, 0x92, 0xf3, 0x6d, 0x95, 0x6d, 0x56, 0x07, 0xd7, 0xc1, 0xf8, 0x63, 0x1d, 0xfa, 0x36, 0x40, 0xd4, 0x21, 0xff, 0xd3, 0x67, 0x4d, 0x46, 0x10, 0x24, 0x20, 0x87, 0xeb, 0x58, 0xc7, 0x92, 0x29, 0xda, 0xc3, 0x7d, 0xa5, 0x5e, 0x0f, 0xa2, 0xed, 0x47, 0xc5, 0xd7, 0x90, 0x3c, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_525_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_525_sharedsecret[] = { 0x97, 0x0e, 0xd4, 0x66, 0xc5, 0xb1, 0x7f, 0x04, 0xd5, 0x84, 0x25, 0x1b, 0xf2, 0x15, 0xaf, 0x82, 0x63, 0xb3, 0x52, 0x26, 0x24, 0x9a, 0x58, 0xbb, 0x9d, 0x66, 0x52, 0xfa, 0xd2, 0x15, 0xbf, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_525 = { .name = "ecdh_brainpoolp256r1_525", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_525_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_525_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_525_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 227 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 526 for ECDH, tcId is 228 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_526_peerpubkey[] = { 0x2a, 0x73, 0x0d, 0xe6, 0x41, 0xb6, 0xba, 0x4a, 0x82, 0x7a, 0x08, 0x45, 0x29, 0x25, 0x79, 0xfa, 0xeb, 0xe8, 0xed, 0x86, 0x6d, 0x10, 0xd6, 0xa5, 0xde, 0x05, 0xf5, 0xde, 0xa3, 0xad, 0x89, 0x13, 0x36, 0x32, 0x8f, 0xa3, 0x23, 0x96, 0xed, 0x0f, 0x64, 0xa9, 0xcd, 0x03, 0xdc, 0x77, 0xd1, 0x64, 0xba, 0x41, 0xfb, 0x6a, 0x80, 0x7d, 0x8f, 0x28, 0xb3, 0x72, 0xce, 0x86, 0x2e, 0x24, 0x60, 0x29, }; static const unsigned char ecdh_brainpoolp256r1_526_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_526_sharedsecret[] = { 0xa7, 0x2e, 0xbb, 0xb1, 0xf6, 0x33, 0x4a, 0x44, 0x23, 0x6b, 0x8c, 0x62, 0x42, 0x05, 0xe7, 0xd9, 0x47, 0x99, 0x57, 0x3e, 0xdc, 0x72, 0x66, 0xd7, 0xf5, 0x73, 0xd5, 0xe8, 0x50, 0xc7, 0xd3, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_526 = { .name = "ecdh_brainpoolp256r1_526", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_526_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_526_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_526_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 228 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 527 for ECDH, tcId is 229 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_527_peerpubkey[] = { 0x81, 0xb8, 0xcf, 0xfe, 0x03, 0x2b, 0x7f, 0x68, 0xcb, 0xc4, 0xdf, 0x30, 0x32, 0x3e, 0x7b, 0x2a, 0x6d, 0xfa, 0xdc, 0xb8, 0x37, 0xe3, 0x1a, 0x64, 0x24, 0xf2, 0x9e, 0x7a, 0xcc, 0xd9, 0x0d, 0x43, 0x66, 0x28, 0x9e, 0x71, 0x3a, 0x02, 0xb0, 0xc9, 0xe4, 0x53, 0x89, 0xab, 0x33, 0x42, 0xb7, 0x5f, 0x6a, 0x8b, 0x72, 0xf0, 0x00, 0x89, 0xa2, 0x14, 0xea, 0xb1, 0xd8, 0xce, 0x9c, 0x1e, 0xac, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_527_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_527_sharedsecret[] = { 0x96, 0xac, 0xd3, 0xac, 0x41, 0x2b, 0x9b, 0x38, 0x55, 0xa3, 0xca, 0xb0, 0xe0, 0xca, 0x9d, 0x0c, 0x7d, 0x0d, 0xc8, 0x6c, 0xb4, 0xf5, 0x17, 0xa1, 0x58, 0x5b, 0x30, 0x95, 0x8a, 0xec, 0x4b, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_527 = { .name = "ecdh_brainpoolp256r1_527", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_527_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_527_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_527_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 229 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 528 for ECDH, tcId is 230 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_528_peerpubkey[] = { 0x76, 0x06, 0xbe, 0x11, 0xbe, 0x87, 0xb7, 0x44, 0xdd, 0x3d, 0x85, 0x43, 0x4c, 0xb9, 0x68, 0xce, 0x9b, 0x9e, 0xf3, 0x21, 0x35, 0x8d, 0xd4, 0x32, 0x73, 0xeb, 0x7f, 0xae, 0xc1, 0xa3, 0xf5, 0xb8, 0x1d, 0xa4, 0xd2, 0x6b, 0x1d, 0x14, 0xe5, 0xd3, 0x91, 0x92, 0x18, 0x3c, 0x9a, 0xf4, 0xd6, 0x65, 0x99, 0xe6, 0xb1, 0x2c, 0x6c, 0x3d, 0x14, 0x50, 0xc6, 0xf1, 0xfc, 0xa8, 0xe2, 0x8b, 0x13, 0x0d, }; static const unsigned char ecdh_brainpoolp256r1_528_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_528_sharedsecret[] = { 0x3c, 0x3d, 0xc2, 0x2d, 0x09, 0x3b, 0x9f, 0x27, 0x1e, 0x2d, 0x76, 0x99, 0x7d, 0x50, 0xe4, 0x09, 0x63, 0x89, 0xb4, 0x75, 0x2e, 0xb9, 0x56, 0x13, 0x30, 0xb3, 0xba, 0x76, 0xcf, 0x92, 0x5f, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_528 = { .name = "ecdh_brainpoolp256r1_528", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_528_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_528_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_528_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 230 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 529 for ECDH, tcId is 231 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_529_peerpubkey[] = { 0x77, 0x89, 0xd3, 0xd7, 0xab, 0xb6, 0xcd, 0xac, 0xc7, 0x07, 0x00, 0x99, 0x5e, 0x20, 0x63, 0xb8, 0xb9, 0x03, 0x18, 0xce, 0xfa, 0x69, 0xab, 0x91, 0x2a, 0x8e, 0x7b, 0xb8, 0x29, 0xf9, 0x9d, 0xa0, 0x8a, 0x60, 0x78, 0xe8, 0x11, 0x00, 0x24, 0x21, 0x36, 0x6a, 0x66, 0xf7, 0x51, 0xe3, 0x7d, 0x8f, 0x65, 0x26, 0x6c, 0xd7, 0xfd, 0x9c, 0xd1, 0x07, 0x18, 0x8d, 0x13, 0xce, 0x5d, 0xc7, 0x05, 0xc8, }; static const unsigned char ecdh_brainpoolp256r1_529_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_529_sharedsecret[] = { 0x86, 0xd3, 0x4e, 0x5a, 0x0f, 0x28, 0xfb, 0x30, 0x09, 0xb9, 0xca, 0xff, 0xa4, 0x53, 0xf4, 0xe3, 0x77, 0xe4, 0xe7, 0x01, 0x28, 0x60, 0xf6, 0x72, 0x1c, 0x73, 0x3d, 0x14, 0xd5, 0x30, 0x35, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_529 = { .name = "ecdh_brainpoolp256r1_529", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_529_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_529_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_529_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 231 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 530 for ECDH, tcId is 232 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_530_peerpubkey[] = { 0x73, 0xa1, 0xcc, 0x1e, 0x7e, 0xc4, 0x08, 0x02, 0x60, 0xdc, 0xdc, 0xc1, 0x00, 0xc5, 0xf7, 0x4a, 0x98, 0x7d, 0x54, 0x6d, 0x67, 0x17, 0xc9, 0x44, 0xdb, 0x9d, 0xc3, 0x2a, 0xf3, 0x55, 0x09, 0x64, 0x03, 0xec, 0x0c, 0xcb, 0xea, 0x58, 0xd6, 0x5a, 0x79, 0x32, 0xcd, 0x2a, 0x44, 0x6b, 0x5f, 0x6d, 0x20, 0x08, 0x03, 0x4e, 0xa3, 0x04, 0x02, 0x26, 0x69, 0xea, 0x63, 0x85, 0x6a, 0x54, 0xd9, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_530_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_530_sharedsecret[] = { 0x28, 0x1b, 0xeb, 0x20, 0xd1, 0x85, 0x0e, 0x7e, 0x0c, 0x0b, 0x9d, 0x1b, 0x95, 0x80, 0x61, 0x49, 0x95, 0xf8, 0x88, 0xcd, 0x15, 0xb3, 0x0a, 0xfe, 0x09, 0x90, 0x2f, 0x82, 0xfc, 0xe7, 0xed, 0x43, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_530 = { .name = "ecdh_brainpoolp256r1_530", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_530_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_530_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_530_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 232 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 531 for ECDH, tcId is 233 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_531_peerpubkey[] = { 0x5e, 0x29, 0x29, 0x2f, 0xa1, 0x7c, 0xcb, 0xa4, 0xe7, 0x69, 0xc5, 0x3b, 0xca, 0x35, 0xf0, 0x31, 0x66, 0xbb, 0xb7, 0x81, 0x76, 0xf2, 0xda, 0x74, 0x9b, 0x57, 0x51, 0x37, 0x26, 0xde, 0x49, 0x82, 0x42, 0x21, 0xc1, 0xf0, 0x14, 0xdd, 0x14, 0xb3, 0xdb, 0x11, 0x82, 0x4c, 0x96, 0x7c, 0x13, 0xaa, 0x77, 0xc6, 0xa1, 0xc2, 0x2b, 0xb0, 0x69, 0xb8, 0xa2, 0x02, 0x39, 0xcf, 0xfa, 0xc8, 0xea, 0x3d, }; static const unsigned char ecdh_brainpoolp256r1_531_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_531_sharedsecret[] = { 0x4a, 0x87, 0xf4, 0x5f, 0xf1, 0x59, 0x48, 0x6c, 0xcd, 0x0e, 0x49, 0xbd, 0x61, 0x0c, 0xc3, 0x05, 0x6b, 0x54, 0x9c, 0x54, 0xf5, 0x92, 0xd2, 0x2e, 0x2c, 0xcb, 0xa4, 0x50, 0x9b, 0xe6, 0x19, 0x1f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_531 = { .name = "ecdh_brainpoolp256r1_531", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_531_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_531_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_531_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 233 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 532 for ECDH, tcId is 234 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_532_peerpubkey[] = { 0x5f, 0xc1, 0x59, 0x30, 0x02, 0xae, 0x09, 0x4b, 0xdf, 0x23, 0x50, 0xf9, 0x18, 0x01, 0x13, 0x44, 0xf9, 0x8e, 0x0c, 0x12, 0x5a, 0xf2, 0x6b, 0x30, 0xbc, 0xb7, 0x14, 0xd0, 0x1a, 0x8a, 0x03, 0x24, 0x2b, 0x23, 0x6c, 0x70, 0xd5, 0xd7, 0x45, 0xba, 0x20, 0x8c, 0xea, 0x89, 0x64, 0xbe, 0xae, 0xd8, 0x8d, 0x02, 0xd4, 0xaf, 0xdb, 0x7d, 0x20, 0xf0, 0x9f, 0x7e, 0xf9, 0x8e, 0xd9, 0x93, 0x44, 0x49, }; static const unsigned char ecdh_brainpoolp256r1_532_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_532_sharedsecret[] = { 0x05, 0x48, 0x82, 0xf3, 0xb8, 0x87, 0x0d, 0x95, 0x60, 0x29, 0x4e, 0x6e, 0xd1, 0xcf, 0x0b, 0x55, 0x05, 0x81, 0x11, 0x14, 0xf1, 0x89, 0x2e, 0x13, 0x7b, 0xbd, 0xa8, 0x00, 0xb3, 0x03, 0xbb, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_532 = { .name = "ecdh_brainpoolp256r1_532", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_532_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_532_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_532_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 234 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 533 for ECDH, tcId is 235 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_533_peerpubkey[] = { 0x8a, 0x68, 0xa0, 0x3b, 0x1a, 0x94, 0x9e, 0x0f, 0xd6, 0xe7, 0x8e, 0x84, 0xc8, 0xbb, 0xf5, 0xd9, 0x27, 0x8f, 0x24, 0x91, 0x2b, 0x9a, 0x25, 0xe6, 0x9e, 0x85, 0x6e, 0x7a, 0xcc, 0x49, 0x39, 0xab, 0x64, 0x44, 0xdc, 0xfc, 0x26, 0x2a, 0x0f, 0x65, 0x78, 0x0a, 0x7d, 0x57, 0xb2, 0x63, 0x44, 0x89, 0xe2, 0x55, 0x60, 0xb0, 0xf0, 0x10, 0x2c, 0xac, 0xcc, 0x0e, 0x1c, 0xb2, 0xd7, 0x3c, 0xdb, 0x27, }; static const unsigned char ecdh_brainpoolp256r1_533_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_533_sharedsecret[] = { 0x17, 0xee, 0x4b, 0x57, 0x28, 0x8e, 0x3b, 0x57, 0x1a, 0x6f, 0x8a, 0xd0, 0x77, 0x41, 0x8f, 0x8b, 0xc0, 0x63, 0x9b, 0xf9, 0x37, 0x7c, 0x58, 0xee, 0xdd, 0x54, 0x4d, 0xec, 0x35, 0x30, 0x99, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_533 = { .name = "ecdh_brainpoolp256r1_533", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_533_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_533_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_533_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 235 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 534 for ECDH, tcId is 236 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_534_peerpubkey[] = { 0x0f, 0x8d, 0x7d, 0x56, 0xba, 0x5e, 0x9a, 0x1e, 0x00, 0x4e, 0x44, 0xc4, 0x1b, 0x6e, 0x46, 0xe5, 0xe1, 0x8f, 0x4f, 0x17, 0x9f, 0x88, 0x97, 0xba, 0x0d, 0x8b, 0xb4, 0xa0, 0xd2, 0x18, 0x22, 0xc1, 0x01, 0xef, 0xc2, 0x88, 0xdc, 0x7d, 0xec, 0x62, 0xb7, 0x77, 0x3b, 0x0b, 0x90, 0x3e, 0xbf, 0xa4, 0x06, 0xe1, 0x9f, 0xbf, 0x51, 0x4f, 0xd0, 0xca, 0x27, 0x19, 0xbb, 0xe0, 0xef, 0x1a, 0x60, 0xe3, }; static const unsigned char ecdh_brainpoolp256r1_534_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_534_sharedsecret[] = { 0x3c, 0x00, 0x5d, 0xf4, 0x85, 0xbf, 0xd1, 0xf2, 0x00, 0xd8, 0xe5, 0x83, 0x28, 0x52, 0x65, 0x6b, 0xc4, 0x0f, 0xbb, 0x79, 0xd8, 0x58, 0x28, 0x04, 0x52, 0x45, 0x8f, 0xa6, 0x1c, 0x7d, 0xc9, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_534 = { .name = "ecdh_brainpoolp256r1_534", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_534_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_534_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_534_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 236 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 535 for ECDH, tcId is 237 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_535_peerpubkey[] = { 0x65, 0xe5, 0x26, 0x7a, 0x28, 0x05, 0x38, 0x24, 0x5d, 0xff, 0x38, 0x5e, 0x2f, 0x1f, 0x79, 0xe2, 0xa0, 0x54, 0x81, 0xaf, 0x4d, 0x22, 0x51, 0xe4, 0x25, 0x8f, 0x02, 0x8b, 0xb0, 0x6d, 0x14, 0xfb, 0x60, 0xa1, 0x63, 0x06, 0x7f, 0xf8, 0xc1, 0x23, 0x50, 0xfb, 0xba, 0x22, 0xf9, 0xd4, 0x59, 0x33, 0xcb, 0xd0, 0xec, 0x40, 0x8e, 0x51, 0x3c, 0x7e, 0xa2, 0x1e, 0xbb, 0xc4, 0x2c, 0xdb, 0xb2, 0xfa, }; static const unsigned char ecdh_brainpoolp256r1_535_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_535_sharedsecret[] = { 0x6c, 0x58, 0xe6, 0xdc, 0xa9, 0x98, 0x18, 0x72, 0x69, 0x63, 0x2b, 0x2e, 0x11, 0xcb, 0x69, 0xbf, 0x43, 0x85, 0x81, 0x90, 0x14, 0x26, 0x9d, 0x16, 0x68, 0x2e, 0x7e, 0x9f, 0x29, 0x16, 0x8b, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_535 = { .name = "ecdh_brainpoolp256r1_535", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_535_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_535_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_535_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 237 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 536 for ECDH, tcId is 238 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_536_peerpubkey[] = { 0x60, 0xbc, 0xdd, 0x84, 0xf5, 0xab, 0xf3, 0x7a, 0x21, 0x01, 0x4d, 0xce, 0x7f, 0x4d, 0x81, 0x9b, 0x45, 0x52, 0x4f, 0xb0, 0xc5, 0x97, 0x07, 0x74, 0x2b, 0x0e, 0x9d, 0x3a, 0x6b, 0xbb, 0x56, 0xcb, 0x5e, 0x2d, 0xbf, 0x8c, 0x6a, 0x65, 0xc5, 0x06, 0x76, 0x19, 0xdb, 0x7a, 0x59, 0x7f, 0xd8, 0xaa, 0x5f, 0x2a, 0xdb, 0xaa, 0xc5, 0xc8, 0x3d, 0x1d, 0x7d, 0x65, 0x7d, 0x1f, 0xd4, 0xff, 0x43, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_536_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_536_sharedsecret[] = { 0x19, 0x0e, 0x96, 0x13, 0xbe, 0xbb, 0x5f, 0xf1, 0x13, 0xe3, 0xd8, 0x46, 0x9b, 0x8f, 0x56, 0xf7, 0x6e, 0xfc, 0x7d, 0x18, 0x24, 0x74, 0xb7, 0x52, 0x06, 0x1e, 0xe4, 0x86, 0x26, 0x13, 0x89, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_536 = { .name = "ecdh_brainpoolp256r1_536", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_536_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_536_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_536_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 238 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 537 for ECDH, tcId is 239 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_537_peerpubkey[] = { 0x22, 0x84, 0xae, 0xbb, 0xac, 0x99, 0x8f, 0x34, 0xfc, 0x1a, 0xce, 0x78, 0x27, 0x9c, 0x7f, 0x1e, 0x4f, 0xc9, 0x52, 0x98, 0x89, 0x9b, 0x31, 0xdb, 0xb3, 0x45, 0xbd, 0xce, 0xa3, 0xd0, 0xa3, 0x54, 0x46, 0x83, 0x2c, 0x0f, 0x0b, 0x85, 0x17, 0x52, 0x3e, 0x67, 0x50, 0xb1, 0x1a, 0x24, 0x07, 0x70, 0x62, 0x33, 0xe2, 0x26, 0x57, 0x14, 0x77, 0x7b, 0xd4, 0xb8, 0x59, 0x2e, 0x50, 0xe8, 0x8d, 0xc7, }; static const unsigned char ecdh_brainpoolp256r1_537_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_537_sharedsecret[] = { 0x42, 0xd4, 0x0f, 0xb5, 0xe8, 0x7e, 0xb5, 0xda, 0x66, 0xcc, 0xb4, 0x16, 0xd5, 0xd1, 0xee, 0xdf, 0x58, 0x45, 0xe4, 0x88, 0x67, 0x11, 0x16, 0x76, 0x8a, 0xc7, 0x0f, 0xc3, 0x6f, 0xb1, 0xf8, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_537 = { .name = "ecdh_brainpoolp256r1_537", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_537_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_537_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_537_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 239 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 538 for ECDH, tcId is 240 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_538_peerpubkey[] = { 0x33, 0xa3, 0x6d, 0x7b, 0xab, 0xa6, 0x59, 0x19, 0x9c, 0x29, 0xeb, 0xf6, 0x5b, 0x85, 0x77, 0xf2, 0x5b, 0x49, 0x05, 0x25, 0x26, 0x36, 0x77, 0xcd, 0x44, 0xa0, 0xd2, 0x30, 0x4f, 0x89, 0xa4, 0x3d, 0x6c, 0xf0, 0x49, 0x5a, 0x23, 0x0f, 0x69, 0xf5, 0xd7, 0x38, 0x41, 0x46, 0xca, 0x91, 0xbc, 0x09, 0x7f, 0xbc, 0x52, 0x3e, 0x2e, 0x19, 0xdb, 0x67, 0x5c, 0x19, 0xce, 0x6c, 0xb3, 0x57, 0xd7, 0x0e, }; static const unsigned char ecdh_brainpoolp256r1_538_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_538_sharedsecret[] = { 0x0d, 0x4c, 0x7a, 0xee, 0x3f, 0x21, 0x7c, 0xd9, 0xdd, 0xbd, 0x96, 0x5a, 0xc8, 0xc8, 0x22, 0x38, 0xfa, 0xa9, 0x6e, 0x68, 0xf1, 0x19, 0x7c, 0xa3, 0x78, 0x5d, 0x6e, 0xb6, 0x49, 0xcb, 0x18, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_538 = { .name = "ecdh_brainpoolp256r1_538", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_538_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_538_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_538_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 240 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 539 for ECDH, tcId is 241 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_539_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_539_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp256r1_539_sharedsecret[] = { 0xa3, 0xe1, 0xa4, 0x48, 0x51, 0xd0, 0xde, 0xe7, 0x44, 0x37, 0x8c, 0x5e, 0x49, 0x5f, 0x30, 0x81, 0xdf, 0xf2, 0xa0, 0xfe, 0xfc, 0xcd, 0xd0, 0x8f, 0xdc, 0x23, 0x31, 0x68, 0x7d, 0x5c, 0x4a, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_539 = { .name = "ecdh_brainpoolp256r1_539", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_539_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_539_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_539_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 241 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 540 for ECDH, tcId is 242 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_540_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_540_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_540_sharedsecret[] = { 0x1a, 0x68, 0xab, 0x75, 0x6e, 0xca, 0xe2, 0x85, 0x3f, 0xcf, 0x62, 0x85, 0x97, 0x4e, 0xfa, 0xe3, 0x2c, 0xcd, 0xd0, 0x1c, 0x58, 0xd0, 0x5b, 0x4c, 0xc5, 0x8f, 0x74, 0xd1, 0x6c, 0x26, 0x61, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_540 = { .name = "ecdh_brainpoolp256r1_540", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_540_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_540_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_540_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 242 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 541 for ECDH, tcId is 243 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_541_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_541_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_541_sharedsecret[] = { 0x0b, 0xc5, 0xfe, 0xa1, 0xdd, 0x67, 0x93, 0x66, 0x4e, 0xa1, 0x5d, 0xaf, 0xba, 0x3e, 0x06, 0xc1, 0x52, 0x41, 0x50, 0xd9, 0xfd, 0xe3, 0x2e, 0x17, 0xd7, 0xc6, 0x81, 0x3f, 0xdc, 0x8c, 0x8f, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_541 = { .name = "ecdh_brainpoolp256r1_541", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_541_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_541_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_541_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 243 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 542 for ECDH, tcId is 244 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_542_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_542_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_542_sharedsecret[] = { 0x2d, 0x44, 0xec, 0x4c, 0xbf, 0x22, 0x8a, 0x4e, 0x32, 0x40, 0x9e, 0x4d, 0xe1, 0xef, 0x88, 0x59, 0xc9, 0x39, 0x96, 0xa9, 0xdf, 0x73, 0xc3, 0x17, 0xe5, 0xd0, 0x4e, 0x64, 0x13, 0x7f, 0x49, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_542 = { .name = "ecdh_brainpoolp256r1_542", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_542_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_542_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_542_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 244 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 543 for ECDH, tcId is 245 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_543_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_543_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_543_sharedsecret[] = { 0x9e, 0x19, 0x90, 0xfe, 0xc2, 0xa3, 0x45, 0x11, 0x8a, 0xaa, 0x96, 0xa4, 0x73, 0xfb, 0x92, 0x1d, 0xfb, 0x5c, 0x3d, 0x69, 0xc5, 0x28, 0xcf, 0x6f, 0xc0, 0x98, 0x9d, 0x07, 0x55, 0x52, 0x82, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_543 = { .name = "ecdh_brainpoolp256r1_543", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_543_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_543_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_543_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 245 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 544 for ECDH, tcId is 246 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_544_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_544_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf6, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_544_sharedsecret[] = { 0x60, 0x56, 0x41, 0xe1, 0xbd, 0x08, 0xb2, 0x2a, 0x1a, 0x51, 0x02, 0x2d, 0x8e, 0xf8, 0x0f, 0x9b, 0x6c, 0x2f, 0x70, 0xb2, 0x56, 0x23, 0x87, 0xdb, 0x88, 0xc1, 0x24, 0xce, 0x60, 0x66, 0x08, 0x34, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_544 = { .name = "ecdh_brainpoolp256r1_544", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_544_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_544_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_544_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 246 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 545 for ECDH, tcId is 247 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_545_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_545_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x0e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_545_sharedsecret[] = { 0x7d, 0xb5, 0x68, 0xa0, 0x27, 0xcd, 0x62, 0x04, 0x45, 0x7c, 0xe3, 0x1e, 0x78, 0x59, 0xcd, 0x06, 0xfc, 0x76, 0xdd, 0xbc, 0x97, 0xd5, 0xbd, 0xef, 0xd5, 0x7a, 0x65, 0x75, 0x2f, 0xd7, 0x93, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_545 = { .name = "ecdh_brainpoolp256r1_545", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_545_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_545_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_545_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 247 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 546 for ECDH, tcId is 248 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_546_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_546_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x16, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_546_sharedsecret[] = { 0x68, 0x78, 0xca, 0x1b, 0xdd, 0x7c, 0x03, 0x53, 0xb5, 0x05, 0xd5, 0xa6, 0x0b, 0x2f, 0xbe, 0xd4, 0x22, 0xb5, 0xc3, 0x7c, 0x7b, 0x54, 0xcb, 0xed, 0x3a, 0x22, 0xe0, 0x89, 0x4e, 0x7b, 0x15, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_546 = { .name = "ecdh_brainpoolp256r1_546", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_546_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_546_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_546_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 248 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 547 for ECDH, tcId is 249 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_547_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_547_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x81, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_547_sharedsecret[] = { 0x3b, 0xc5, 0x42, 0x38, 0xc7, 0x01, 0xdf, 0x3e, 0x18, 0xc6, 0x39, 0x5f, 0x35, 0x43, 0x50, 0x59, 0xc5, 0x4f, 0xf0, 0xd0, 0x6d, 0x8a, 0xb1, 0x9a, 0x3d, 0x17, 0x9a, 0xb3, 0x7c, 0x1f, 0xd8, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_547 = { .name = "ecdh_brainpoolp256r1_547", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_547_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_547_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_547_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 249 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 548 for ECDH, tcId is 250 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_548_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_548_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x55, 0xf5, }; static const unsigned char ecdh_brainpoolp256r1_548_sharedsecret[] = { 0x19, 0x50, 0xb7, 0xce, 0x51, 0x0d, 0x4d, 0x86, 0x48, 0xe8, 0x0c, 0x63, 0x85, 0xa4, 0x2d, 0x00, 0x54, 0x33, 0xfc, 0x5c, 0xa6, 0x1e, 0x20, 0x22, 0xa1, 0x40, 0x5f, 0xe1, 0x81, 0x42, 0xc2, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_548 = { .name = "ecdh_brainpoolp256r1_548", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_548_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_548_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_548_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 250 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 549 for ECDH, tcId is 251 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_549_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_549_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_549_sharedsecret[] = { 0x5c, 0x05, 0xc4, 0xd8, 0x77, 0xa0, 0xe2, 0xaf, 0x5f, 0xfa, 0x00, 0x4c, 0x12, 0x26, 0x30, 0xbb, 0x87, 0x15, 0x7c, 0xf3, 0x46, 0xdb, 0xeb, 0x8a, 0xe1, 0x30, 0x17, 0x16, 0x2d, 0xa2, 0x08, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_549 = { .name = "ecdh_brainpoolp256r1_549", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_549_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_549_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_549_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 251 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 550 for ECDH, tcId is 252 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_550_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_550_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x95, }; static const unsigned char ecdh_brainpoolp256r1_550_sharedsecret[] = { 0x96, 0x39, 0xbb, 0xd4, 0xe2, 0x21, 0x94, 0xce, 0x38, 0x92, 0xa8, 0x14, 0xc8, 0x2e, 0xdd, 0xbd, 0x21, 0xdd, 0xe0, 0x5c, 0xfa, 0xc2, 0x0e, 0x99, 0x39, 0x6e, 0x3d, 0x6e, 0xf0, 0x84, 0x1f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_550 = { .name = "ecdh_brainpoolp256r1_550", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_550_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_550_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_550_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 252 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 551 for ECDH, tcId is 253 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_551_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_551_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const unsigned char ecdh_brainpoolp256r1_551_sharedsecret[] = { 0xa3, 0xe1, 0xa4, 0x48, 0x51, 0xd0, 0xde, 0xe7, 0x44, 0x37, 0x8c, 0x5e, 0x49, 0x5f, 0x30, 0x81, 0xdf, 0xf2, 0xa0, 0xfe, 0xfc, 0xcd, 0xd0, 0x8f, 0xdc, 0x23, 0x31, 0x68, 0x7d, 0x5c, 0x4a, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_551 = { .name = "ecdh_brainpoolp256r1_551", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_551_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_551_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_551_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 253 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 552 for ECDH, tcId is 254 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_552_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_552_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_552_sharedsecret[] = { 0x34, 0x1c, 0xbd, 0xf6, 0x1f, 0x9d, 0xd6, 0x20, 0xba, 0x68, 0x73, 0xa7, 0x48, 0x04, 0xaf, 0xe3, 0x0a, 0x06, 0xb0, 0xa1, 0x13, 0xa6, 0x91, 0x6a, 0x41, 0x04, 0xd2, 0xd4, 0xcc, 0x19, 0x6a, 0xec, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_552 = { .name = "ecdh_brainpoolp256r1_552", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_552_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_552_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_552_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 254 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 553 for ECDH, tcId is 255 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_553_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_553_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_553 = { .name = "ecdh_brainpoolp256r1_553", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_553_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_553_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 255 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 554 for ECDH, tcId is 256 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_554_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_554_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_554 = { .name = "ecdh_brainpoolp256r1_554", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_554_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_554_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 256 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 555 for ECDH, tcId is 257 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_555_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_555_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_555 = { .name = "ecdh_brainpoolp256r1_555", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_555_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_555_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 257 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 556 for ECDH, tcId is 258 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_556_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_556_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_556 = { .name = "ecdh_brainpoolp256r1_556", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_556_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_556_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 258 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 557 for ECDH, tcId is 259 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_557_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_557_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_557 = { .name = "ecdh_brainpoolp256r1_557", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_557_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_557_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 259 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 558 for ECDH, tcId is 260 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_558_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_558_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_558 = { .name = "ecdh_brainpoolp256r1_558", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_558_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_558_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 260 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 559 for ECDH, tcId is 261 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_559_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_559_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_559 = { .name = "ecdh_brainpoolp256r1_559", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_559_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_559_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 261 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 560 for ECDH, tcId is 262 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_560_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_560_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_560 = { .name = "ecdh_brainpoolp256r1_560", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_560_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_560_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 262 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 561 for ECDH, tcId is 263 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_561_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_561_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_561 = { .name = "ecdh_brainpoolp256r1_561", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_561_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_561_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 263 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 562 for ECDH, tcId is 264 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_562_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_562_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_562 = { .name = "ecdh_brainpoolp256r1_562", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_562_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_562_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 264 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 563 for ECDH, tcId is 265 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_563_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_563_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_563 = { .name = "ecdh_brainpoolp256r1_563", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_563_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_563_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 265 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 564 for ECDH, tcId is 266 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_564_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_564_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_564 = { .name = "ecdh_brainpoolp256r1_564", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_564_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_564_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 266 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 565 for ECDH, tcId is 267 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_565_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_565_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_565 = { .name = "ecdh_brainpoolp256r1_565", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_565_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_565_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 267 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 566 for ECDH, tcId is 268 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_566_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_566_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_566 = { .name = "ecdh_brainpoolp256r1_566", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_566_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_566_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 268 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 567 for ECDH, tcId is 269 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_567_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_567_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_567 = { .name = "ecdh_brainpoolp256r1_567", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_567_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_567_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 269 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 568 for ECDH, tcId is 270 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_568_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_568_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_568 = { .name = "ecdh_brainpoolp256r1_568", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_568_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_568_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 270 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 569 for ECDH, tcId is 272 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_569_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x1a, }; static const unsigned char ecdh_brainpoolp256r1_569_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_569 = { .name = "ecdh_brainpoolp256r1_569", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_569_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_569_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 272 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 570 for ECDH, tcId is 273 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_570_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_570_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_570 = { .name = "ecdh_brainpoolp256r1_570", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_570_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_570_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 273 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 571 for ECDH, tcId is 276 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_571_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_571_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_571_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_571 = { .name = "ecdh_brainpoolp256r1_571", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_571_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_571_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_571_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 276 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 572 for ECDH, tcId is 277 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_572_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_572_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_572_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_572 = { .name = "ecdh_brainpoolp256r1_572", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_572_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_572_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_572_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 17901173885223768702896718547912698493510841341785744190857633730178, tcId is 277 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 573 for ECDH, tcId is 278 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_573_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_573_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_573_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_573 = { .name = "ecdh_brainpoolp256r1_573", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_573_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_573_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_573_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 278 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 574 for ECDH, tcId is 279 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_574_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_574_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_574_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_574 = { .name = "ecdh_brainpoolp256r1_574", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_574_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_574_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_574_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 279 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 575 for ECDH, tcId is 282 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_575_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_575_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_575_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_575 = { .name = "ecdh_brainpoolp256r1_575", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_575_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_575_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_575_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 282 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 576 for ECDH, tcId is 284 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_576_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_576_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_576_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_576 = { .name = "ecdh_brainpoolp256r1_576", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_576_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_576_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_576_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 284 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 577 for ECDH, tcId is 287 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_577_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_brainpoolp256r1_577_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_577 = { .name = "ecdh_brainpoolp256r1_577", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_577_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_577_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 287 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 578 for ECDH, tcId is 288 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_578_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_brainpoolp256r1_578_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_578 = { .name = "ecdh_brainpoolp256r1_578", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_578_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_578_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 288 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 579 for ECDH, tcId is 289 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_579_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_579_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_579_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_579 = { .name = "ecdh_brainpoolp256r1_579", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_579_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_579_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_579_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 289 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 580 for ECDH, tcId is 291 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_580_peerpubkey[] = { 0x81, 0xac, 0x2a, 0xef, 0x36, 0xe3, 0xd1, 0x28, 0xe4, 0x36, 0x0e, 0x71, 0x5d, 0x48, 0x85, 0xb4, 0xd5, 0xcd, 0xea, 0x3b, 0x1d, 0xef, 0x7c, 0xa2, 0x86, 0x5f, 0xf7, 0x68, 0x00, 0xe5, 0x38, 0x13, 0x3b, 0xe2, 0xe5, 0x15, 0x84, 0x02, 0x7d, 0x13, 0x9f, 0x60, 0x59, 0xe2, 0x54, 0xa0, 0x37, 0xf8, 0x6d, 0xb1, 0x2c, 0x39, 0x0f, 0xdc, 0x30, 0x47, 0xd3, 0xbe, 0xa6, 0x81, 0x2f, 0x19, 0xc0, 0x4d, }; static const unsigned char ecdh_brainpoolp256r1_580_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_580 = { .name = "ecdh_brainpoolp256r1_580", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_580_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_580_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP256t1, tcId is 291 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 581 for ECDH, tcId is 293 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_581_peerpubkey[] = { 0x2e, 0x0f, 0x44, 0x1d, 0x25, 0x8b, 0x51, 0xe9, 0xf0, 0x20, 0x35, 0xb7, 0x2d, 0xc9, 0x2d, 0x19, 0xfd, 0x7f, 0x86, 0x1b, 0x1d, 0xc2, 0x29, 0x59, 0xc4, 0x52, 0x5a, 0xaf, 0x7d, 0x92, 0x3e, 0xa6, 0x1f, 0xcb, 0xb7, 0xb5, 0xa4, 0xff, 0xf1, 0x9b, 0x19, 0xc3, 0x16, 0xfb, 0x21, 0x26, 0xb9, 0xe2, 0x32, 0x55, 0x73, 0xdf, 0x3c, 0x68, 0x86, 0xb1, 0xd8, 0x7c, 0x8b, 0x7c, 0xe1, 0xe3, 0x23, 0xb0, }; static const unsigned char ecdh_brainpoolp256r1_581_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_581 = { .name = "ecdh_brainpoolp256r1_581", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_581_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_581_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 293 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 582 for ECDH, tcId is 296 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_582_peerpubkey[] = { 0x62, 0x8c, 0xd8, 0x6e, 0x06, 0x86, 0xa0, 0xf8, 0x39, 0x00, 0xea, 0x56, 0x50, 0xc9, 0x50, 0xa2, 0x41, 0xbc, 0xfb, 0x58, 0x5b, 0x58, 0x59, 0x1b, 0xbd, 0x60, 0xd4, 0x74, 0xb3, 0x30, 0xee, 0x43, 0x5d, 0x4e, 0x5b, 0xc1, 0x11, 0xde, 0x4e, 0x07, 0xf4, 0xf2, 0xff, 0xc4, 0x0e, 0x00, 0x9b, 0x97, 0x80, 0xa9, 0x56, 0x5c, 0x15, 0x21, 0xda, 0x78, 0x54, 0x7e, 0xf3, 0x61, 0x92, 0xc5, 0x4c, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_582_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_582 = { .name = "ecdh_brainpoolp256r1_582", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_582_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_582_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 296 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 583 for ECDH, tcId is 303 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_583_peerpubkey[] = { 0x59, 0xe7, 0xf5, 0x22, 0x0b, 0x13, 0x26, 0x95, 0x49, 0xd1, 0x1a, 0x10, 0x52, 0xc9, 0xea, 0x85, 0x2e, 0xee, 0x4c, 0x98, 0xdf, 0x59, 0x8d, 0x0c, 0x43, 0x82, 0x4a, 0xea, 0xf4, 0x53, 0x40, 0xfd, 0x5a, 0x5a, 0xa6, 0x95, 0x0b, 0x94, 0xd6, 0xb0, 0x55, 0xef, 0x7b, 0x01, 0x1a, 0x50, 0x6a, 0x2b, 0x12, 0x77, 0xee, 0x50, 0xe2, 0x15, 0xef, 0xa1, 0x62, 0x46, 0xa2, 0x31, 0xf0, 0xbe, 0x64, 0xdf, }; static const unsigned char ecdh_brainpoolp256r1_583_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_583 = { .name = "ecdh_brainpoolp256r1_583", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_583_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_583_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 303 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 584 for ECDH, tcId is 307 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_584_peerpubkey[] = { 0x9c, 0xf2, 0x57, 0x45, 0xa7, 0xec, 0x04, 0xb3, 0xc0, 0x0e, 0x79, 0x5c, 0x7e, 0x8f, 0x8d, 0x7d, 0xa3, 0x3f, 0x55, 0x73, 0x20, 0x03, 0xbe, 0x4f, 0xd4, 0x09, 0x4d, 0x84, 0x2e, 0xa8, 0x2d, 0x8c, }; static const unsigned char ecdh_brainpoolp256r1_584_privkey[] = { 0x25, 0xd4, 0x05, 0xa4, 0x6c, 0xcd, 0x1e, 0x34, 0x65, 0x8b, 0x9b, 0xe7, 0x42, 0x3e, 0x8f, 0xce, 0x7a, 0x99, 0x71, 0x20, 0xdb, 0x96, 0x39, 0x33, 0x54, 0x5d, 0x19, 0x76, 0x2c, 0x71, 0xd8, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_584 = { .name = "ecdh_brainpoolp256r1_584", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_584_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_584_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 307 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 585 for ECDH, tcId is 308 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_585_peerpubkey[] = { 0x0a, 0x89, 0x44, 0xf9, 0x6d, 0xe0, 0xfe, 0x0d, 0x82, 0x48, 0x9c, 0xbc, 0x7e, 0x71, 0xf2, 0xf5, 0x29, 0xcf, 0xcf, 0xea, 0x03, 0xca, 0x59, 0x3d, 0x91, 0x46, 0x22, 0x78, 0x73, 0x1e, 0x19, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_585_privkey[] = { 0x66, 0x00, 0x8d, 0x35, 0xe3, 0x4a, 0xb5, 0xf8, 0x75, 0xc3, 0xfd, 0x81, 0x15, 0xc3, 0x35, 0xcd, 0x9b, 0x5f, 0x76, 0x43, 0x23, 0xdb, 0xe4, 0x45, 0x70, 0x96, 0x01, 0x55, 0x57, 0x0e, 0x71, 0xdb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_585 = { .name = "ecdh_brainpoolp256r1_585", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_585_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_585_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 308 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 586 for ECDH, tcId is 309 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_586_peerpubkey[] = { 0x57, 0x58, 0x62, 0xa7, 0xc5, 0xfc, 0x68, 0xe9, 0xff, 0xcd, 0x58, 0xce, 0x9b, 0xd0, 0xef, 0x78, 0xc0, 0xa2, 0x6a, 0x3a, 0x22, 0xee, 0x96, 0xb0, 0xbe, 0x16, 0xb3, 0x99, 0xad, 0xb3, 0xac, 0x4a, }; static const unsigned char ecdh_brainpoolp256r1_586_privkey[] = { 0x62, 0x28, 0x53, 0x93, 0x8b, 0xb5, 0xdc, 0x82, 0x71, 0x6c, 0xd8, 0xd6, 0xd0, 0x76, 0xae, 0x69, 0x55, 0xda, 0x30, 0x7b, 0xb1, 0x45, 0x34, 0xae, 0x56, 0xfd, 0x6d, 0xfe, 0xfd, 0x5e, 0xd2, 0x70, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_586 = { .name = "ecdh_brainpoolp256r1_586", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_586_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_586_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 309 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 587 for ECDH, tcId is 310 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_587_peerpubkey[] = { 0x57, 0x58, 0x62, 0xa7, 0xc5, 0xfc, 0x68, 0xe9, 0xff, 0xcd, 0x58, 0xce, 0x9b, 0xd0, 0xef, 0x78, 0xc0, 0xa2, 0x6a, 0x3a, 0x22, 0xee, 0x96, 0xb0, 0xbe, 0x16, 0xb3, 0x99, 0xad, 0xb3, 0xac, 0x4a, }; static const unsigned char ecdh_brainpoolp256r1_587_privkey[] = { 0x62, 0x28, 0x53, 0x93, 0x8b, 0xb5, 0xdc, 0x82, 0x71, 0x6c, 0xd8, 0xd6, 0xd0, 0x76, 0xae, 0x69, 0x55, 0xda, 0x30, 0x7b, 0xb1, 0x45, 0x34, 0xae, 0x56, 0xfd, 0x6d, 0xfe, 0xfd, 0x5e, 0xd2, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_587 = { .name = "ecdh_brainpoolp256r1_587", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_587_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_587_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 310 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 588 for ECDH, tcId is 311 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_588_peerpubkey[] = { 0x0a, 0x89, 0x44, 0xf9, 0x6d, 0xe0, 0xfe, 0x0d, 0x82, 0x48, 0x9c, 0xbc, 0x7e, 0x71, 0xf2, 0xf5, 0x29, 0xcf, 0xcf, 0xea, 0x03, 0xca, 0x59, 0x3d, 0x91, 0x46, 0x22, 0x78, 0x73, 0x1e, 0x19, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_588_privkey[] = { 0x66, 0x00, 0x8d, 0x35, 0xe3, 0x4a, 0xb5, 0xf8, 0x75, 0xc3, 0xfd, 0x81, 0x15, 0xc3, 0x35, 0xcd, 0x9b, 0x5f, 0x76, 0x43, 0x23, 0xdb, 0xe4, 0x45, 0x70, 0x96, 0x01, 0x55, 0x57, 0x0e, 0x71, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_588 = { .name = "ecdh_brainpoolp256r1_588", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_588_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_588_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 311 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 589 for ECDH, tcId is 312 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_589_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_589_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_589_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_589 = { .name = "ecdh_brainpoolp256r1_589", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_589_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_589_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_589_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 312 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 590 for ECDH, tcId is 313 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_590_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_590_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_590_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_590 = { .name = "ecdh_brainpoolp256r1_590", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_590_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_590_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_590_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 313 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 591 for ECDH, tcId is 314 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_591_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_591_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_591_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_591 = { .name = "ecdh_brainpoolp256r1_591", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_591_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_591_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_591_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 314 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 592 for ECDH, tcId is 315 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_592_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_592_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_592_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_592 = { .name = "ecdh_brainpoolp256r1_592", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_592_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_592_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_592_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 315 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 593 for ECDH, tcId is 349 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_593_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_593_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_593_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_593 = { .name = "ecdh_brainpoolp256r1_593", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_593_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_593_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_593_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 349 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 594 for ECDH, tcId is 350 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_594_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_594_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_594_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_594 = { .name = "ecdh_brainpoolp256r1_594", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_594_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_594_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_594_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 350 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 595 for ECDH, tcId is 379 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_595_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_595_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_595_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_595 = { .name = "ecdh_brainpoolp256r1_595", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_595_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_595_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_595_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing sequence with NULL, tcId is 379 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 596 for ECDH, tcId is 382 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_596_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_596_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_596_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_596 = { .name = "ecdh_brainpoolp256r1_596", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_596_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_596_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_596_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 382 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 597 for ECDH, tcId is 387 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_597_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_597_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_597_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_597 = { .name = "ecdh_brainpoolp256r1_597", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_597_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_597_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_597_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 387 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 598 for ECDH, tcId is 391 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_598_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_598_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_598_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_598 = { .name = "ecdh_brainpoolp256r1_598", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_598_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_598_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_598_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "dropping value of sequence, tcId is 391 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 599 for ECDH, tcId is 409 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_599_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_599_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_599_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_599 = { .name = "ecdh_brainpoolp256r1_599", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_599_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_599_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_599_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepend empty sequence, tcId is 409 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 600 for ECDH, tcId is 410 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_600_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_600_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_600_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_600 = { .name = "ecdh_brainpoolp256r1_600", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_600_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_600_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_600_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 410 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 601 for ECDH, tcId is 411 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_601_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_601_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_601_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_601 = { .name = "ecdh_brainpoolp256r1_601", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_601_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_601_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_601_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 411 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 602 for ECDH, tcId is 415 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_602_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_602_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_602_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_602 = { .name = "ecdh_brainpoolp256r1_602", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_602_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_602_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_602_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "sequence of sequence, tcId is 415 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 603 for ECDH, tcId is 417 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_603_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_603_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_603_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_603 = { .name = "ecdh_brainpoolp256r1_603", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_603_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_603_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_603_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 417 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 604 for ECDH, tcId is 418 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_604_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_604_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_604_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_604 = { .name = "ecdh_brainpoolp256r1_604", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_604_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_604_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_604_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 418 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 605 for ECDH, tcId is 419 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_605_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_605_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_605_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_605 = { .name = "ecdh_brainpoolp256r1_605", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_605_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_605_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_605_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 419 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 606 for ECDH, tcId is 420 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_606_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_606_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_606_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_606 = { .name = "ecdh_brainpoolp256r1_606", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_606_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_606_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_606_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 420 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 607 for ECDH, tcId is 421 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_607_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_607_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_607_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_607 = { .name = "ecdh_brainpoolp256r1_607", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_607_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_607_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_607_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 421 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 608 for ECDH, tcId is 422 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_608_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_608_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_608_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_608 = { .name = "ecdh_brainpoolp256r1_608", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_608_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_608_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_608_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 422 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 609 for ECDH, tcId is 423 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_609_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_609_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_609_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_609 = { .name = "ecdh_brainpoolp256r1_609", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_609_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_609_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_609_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 423 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 610 for ECDH, tcId is 442 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_610_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_610_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_610_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_610 = { .name = "ecdh_brainpoolp256r1_610", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_610_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_610_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_610_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "removing oid, tcId is 442 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 611 for ECDH, tcId is 445 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_611_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_611_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_611_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_611 = { .name = "ecdh_brainpoolp256r1_611", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_611_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_611_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_611_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 445 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 612 for ECDH, tcId is 446 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_612_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_612_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_612_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_612 = { .name = "ecdh_brainpoolp256r1_612", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_612_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_612_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_612_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 446 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 613 for ECDH, tcId is 447 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_613_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_613_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_613_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_613 = { .name = "ecdh_brainpoolp256r1_613", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_613_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_613_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_613_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 447 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 614 for ECDH, tcId is 448 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_614_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_614_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_614_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_614 = { .name = "ecdh_brainpoolp256r1_614", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_614_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_614_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_614_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 448 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 615 for ECDH, tcId is 450 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_615_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_615_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_615_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_615 = { .name = "ecdh_brainpoolp256r1_615", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_615_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_615_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_615_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 450 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 616 for ECDH, tcId is 451 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_616_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_616_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_616_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_616 = { .name = "ecdh_brainpoolp256r1_616", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_616_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_616_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_616_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 451 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 617 for ECDH, tcId is 454 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_617_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_617_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_617_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_617 = { .name = "ecdh_brainpoolp256r1_617", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_617_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_617_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_617_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 454 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 618 for ECDH, tcId is 455 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_618_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_618_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_618_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_618 = { .name = "ecdh_brainpoolp256r1_618", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_618_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_618_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_618_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 455 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 619 for ECDH, tcId is 456 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_619_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_619_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_619_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_619 = { .name = "ecdh_brainpoolp256r1_619", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_619_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_619_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_619_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 456 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 620 for ECDH, tcId is 458 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_620_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_620_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_620_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_620 = { .name = "ecdh_brainpoolp256r1_620", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_620_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_620_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_620_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 458 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 621 for ECDH, tcId is 461 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_621_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_621_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_621_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_621 = { .name = "ecdh_brainpoolp256r1_621", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_621_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_621_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_621_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 461 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 622 for ECDH, tcId is 463 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_622_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_622_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_622_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_622 = { .name = "ecdh_brainpoolp256r1_622", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_622_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_622_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_622_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 463 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 623 for ECDH, tcId is 468 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_623_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_623_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_623_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_623 = { .name = "ecdh_brainpoolp256r1_623", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_623_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_623_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_623_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 468 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 624 for ECDH, tcId is 469 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_624_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_624_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_624_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_624 = { .name = "ecdh_brainpoolp256r1_624", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_624_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_624_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_624_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 469 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 625 for ECDH, tcId is 472 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_625_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_625_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_625_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_625 = { .name = "ecdh_brainpoolp256r1_625", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_625_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_625_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_625_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 472 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 626 for ECDH, tcId is 473 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_626_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_626_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_626_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_626 = { .name = "ecdh_brainpoolp256r1_626", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_626_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_626_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_626_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 473 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 627 for ECDH, tcId is 474 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_627_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_627_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_627_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_627 = { .name = "ecdh_brainpoolp256r1_627", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_627_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_627_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_627_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 474 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 628 for ECDH, tcId is 475 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_628_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_628_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_628_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_628 = { .name = "ecdh_brainpoolp256r1_628", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_628_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_628_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_628_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 475 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 629 for ECDH, tcId is 476 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_629_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_629_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_629_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_629 = { .name = "ecdh_brainpoolp256r1_629", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_629_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_629_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_629_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 476 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 630 for ECDH, tcId is 477 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_630_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_630_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_630_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_630 = { .name = "ecdh_brainpoolp256r1_630", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_630_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_630_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_630_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 477 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 631 for ECDH, tcId is 478 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_631_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_631_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_631_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_631 = { .name = "ecdh_brainpoolp256r1_631", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_631_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_631_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_631_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 478 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 632 for ECDH, tcId is 479 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_632_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_632_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_632_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_632 = { .name = "ecdh_brainpoolp256r1_632", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_632_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_632_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_632_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 479 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 633 for ECDH, tcId is 480 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_633_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_633_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_633_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_633 = { .name = "ecdh_brainpoolp256r1_633", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_633_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_633_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_633_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 480 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 634 for ECDH, tcId is 481 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_634_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_634_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_634_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_634 = { .name = "ecdh_brainpoolp256r1_634", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_634_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_634_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_634_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 481 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 635 for ECDH, tcId is 482 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_635_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_635_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_635_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_635 = { .name = "ecdh_brainpoolp256r1_635", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_635_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_635_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_635_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 482 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 636 for ECDH, tcId is 483 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_636_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_636_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_636_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_636 = { .name = "ecdh_brainpoolp256r1_636", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_636_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_636_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_636_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 483 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 637 for ECDH, tcId is 484 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_637_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_637_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_637_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_637 = { .name = "ecdh_brainpoolp256r1_637", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_637_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_637_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_637_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 484 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 638 for ECDH, tcId is 485 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_638_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_638_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_638_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_638 = { .name = "ecdh_brainpoolp256r1_638", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_638_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_638_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_638_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 485 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 639 for ECDH, tcId is 486 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_639_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_639_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_639_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_639 = { .name = "ecdh_brainpoolp256r1_639", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_639_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_639_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_639_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 486 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 640 for ECDH, tcId is 487 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_640_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_640_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_640_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_640 = { .name = "ecdh_brainpoolp256r1_640", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_640_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_640_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_640_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 487 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 641 for ECDH, tcId is 492 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_641_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_641_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_641_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_641 = { .name = "ecdh_brainpoolp256r1_641", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_641_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_641_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_641_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of bit string, tcId is 492 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 642 for ECDH, tcId is 493 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_642_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_642_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_642_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_642 = { .name = "ecdh_brainpoolp256r1_642", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_642_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_642_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_642_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of bit string contains leading 0, tcId is 493 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 643 for ECDH, tcId is 505 in file ecdh_brainpoolP256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_643_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_643_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_643_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_643 = { .name = "ecdh_brainpoolp256r1_643", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_643_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_643_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_643_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to bit string, tcId is 505 in file ecdh_brainpoolP256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 644 for ECDH, tcId is 516 in file ecdh_brainpoolP256r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_644_peerpubkey[] = { 0x0b, 0xc9, 0xc9, 0x6c, 0x6a, 0x1a, 0x53, 0xa6, 0x82, 0xd0, 0x47, 0xde, 0x92, 0xf6, 0x85, 0x03, 0xd8, 0x18, 0x3d, 0xbf, 0xd0, 0x28, 0x9a, 0x23, 0xf1, 0x22, 0x32, 0x8a, 0x02, 0x13, 0x9e, 0xb4, 0x70, 0xf3, 0x5f, 0x5d, 0x9f, 0x07, 0x19, 0x46, 0x61, 0x38, 0xc0, 0xf0, 0x3a, 0xf1, 0x83, 0x2c, 0xae, 0x9f, 0xaf, 0xfd, 0xc5, 0x7b, 0x23, 0xfd, 0xd3, 0x23, 0xa4, 0xa1, 0xcd, 0x99, 0xe6, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_644_privkey[] = { 0x06, 0x88, 0x6a, 0x22, 0xd9, 0x9d, 0x63, 0xe4, 0xde, 0xf9, 0x32, 0xf8, 0xc0, 0x50, 0x56, 0x04, 0x52, 0xc1, 0x10, 0x97, 0x5f, 0x8c, 0xff, 0xee, 0x64, 0x82, 0xdf, 0x73, 0x2f, 0xd1, 0x16, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_644_sharedsecret[] = { 0x2b, 0x55, 0xca, 0x46, 0xc5, 0x2f, 0x0d, 0x48, 0xef, 0xc1, 0x70, 0x19, 0x4f, 0x6f, 0xcc, 0xd3, 0x8f, 0xe9, 0x50, 0x5f, 0x27, 0x65, 0xf6, 0x42, 0x32, 0xee, 0xf3, 0xaf, 0x9e, 0xd4, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_644 = { .name = "ecdh_brainpoolp256r1_644", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_644_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_644_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_644_sharedsecret, .sharedsecretlen = 32, .result = -1, .comment = "modify last byte of bit string, tcId is 516 in file ecdh_brainpoolP256r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 645 for ECDH, tcId is 1 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_645_peerpubkey[] = { 0xb7, 0xfc, 0x57, 0x20, 0xd4, 0xb3, 0x25, 0xc0, 0x80, 0x5c, 0xc2, 0x13, 0xc1, 0xb9, 0xcc, 0xbd, 0x9e, 0x4f, 0x38, 0x0a, 0x12, 0x1f, 0xbc, 0x00, 0x78, 0x4c, 0x82, 0x1b, 0xcd, 0x7f, 0x0d, 0x61, 0x8b, 0x70, 0xd3, 0x9f, 0xbd, 0xce, 0xae, 0x55, 0x3d, 0x9d, 0xe4, 0xf9, 0x06, 0x83, 0xeb, 0x9f, 0x00, 0x04, 0x63, 0xc7, 0xbd, 0x1d, 0x32, 0xdb, 0x8c, 0xfa, 0xd2, 0xb4, 0x08, 0x62, 0xcc, 0xac, 0x05, 0x03, 0x0e, 0x93, 0xfc, 0x66, 0x94, 0xc0, 0x71, 0xe8, 0xe1, 0x42, 0x7b, 0x30, 0x50, 0x06, }; static const unsigned char ecdh_brainpoolp320r1_645_privkey[] = { 0x12, 0xd0, 0x6c, 0x51, 0xde, 0xda, 0x15, 0x95, 0xd8, 0xc4, 0x3e, 0x7c, 0x14, 0x6f, 0x89, 0x8f, 0x71, 0x41, 0xc0, 0x83, 0x65, 0x22, 0x93, 0x10, 0x49, 0xaf, 0xe6, 0x13, 0x33, 0xae, 0x2c, 0x03, 0xe3, 0x50, 0xb6, 0x1a, 0xeb, 0xa5, 0x40, 0xbf, }; static const unsigned char ecdh_brainpoolp320r1_645_sharedsecret[] = { 0x94, 0x98, 0x2d, 0x50, 0xb2, 0x9f, 0xae, 0xda, 0xa7, 0xed, 0x09, 0x88, 0xfd, 0x57, 0xb9, 0x03, 0x03, 0xb0, 0x32, 0xce, 0x39, 0x8e, 0xc7, 0x0a, 0xf6, 0xd1, 0x94, 0xbc, 0xfd, 0x7f, 0x90, 0x08, 0xd1, 0x4e, 0x09, 0x42, 0x55, 0x02, 0xb7, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_645 = { .name = "ecdh_brainpoolp320r1_645", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_645_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_645_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_645_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 646 for ECDH, tcId is 2 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_646_peerpubkey[] = { 0xb7, 0xfc, 0x57, 0x20, 0xd4, 0xb3, 0x25, 0xc0, 0x80, 0x5c, 0xc2, 0x13, 0xc1, 0xb9, 0xcc, 0xbd, 0x9e, 0x4f, 0x38, 0x0a, 0x12, 0x1f, 0xbc, 0x00, 0x78, 0x4c, 0x82, 0x1b, 0xcd, 0x7f, 0x0d, 0x61, 0x8b, 0x70, 0xd3, 0x9f, 0xbd, 0xce, 0xae, 0x55, }; static const unsigned char ecdh_brainpoolp320r1_646_privkey[] = { 0x12, 0xd0, 0x6c, 0x51, 0xde, 0xda, 0x15, 0x95, 0xd8, 0xc4, 0x3e, 0x7c, 0x14, 0x6f, 0x89, 0x8f, 0x71, 0x41, 0xc0, 0x83, 0x65, 0x22, 0x93, 0x10, 0x49, 0xaf, 0xe6, 0x13, 0x33, 0xae, 0x2c, 0x03, 0xe3, 0x50, 0xb6, 0x1a, 0xeb, 0xa5, 0x40, 0xbf, }; static const unsigned char ecdh_brainpoolp320r1_646_sharedsecret[] = { 0x94, 0x98, 0x2d, 0x50, 0xb2, 0x9f, 0xae, 0xda, 0xa7, 0xed, 0x09, 0x88, 0xfd, 0x57, 0xb9, 0x03, 0x03, 0xb0, 0x32, 0xce, 0x39, 0x8e, 0xc7, 0x0a, 0xf6, 0xd1, 0x94, 0xbc, 0xfd, 0x7f, 0x90, 0x08, 0xd1, 0x4e, 0x09, 0x42, 0x55, 0x02, 0xb7, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_646 = { .name = "ecdh_brainpoolp320r1_646", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_646_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_646_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_646_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 647 for ECDH, tcId is 3 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_647_peerpubkey[] = { 0x43, 0x0d, 0xd3, 0x0b, 0x26, 0x35, 0x0b, 0xc6, 0x6c, 0x41, 0xc7, 0x17, 0x69, 0xdd, 0x61, 0xb7, 0x40, 0xd7, 0x10, 0x08, 0xb5, 0x9e, 0x45, 0x5c, 0x17, 0x95, 0xeb, 0xbd, 0xc6, 0xbb, 0x1f, 0x0c, 0x8a, 0xfa, 0xab, 0x41, 0x58, 0x50, 0x14, 0x2f, 0x15, 0x57, 0xfe, 0xb7, 0xbe, 0xf5, 0xfd, 0x39, 0x37, 0xf0, 0x88, 0xcc, 0xb4, 0xd3, 0xff, 0x8d, 0xc7, 0x43, 0x1e, 0xec, 0xc9, 0xdc, 0xe6, 0xf5, 0x7c, 0x45, 0x03, 0x5c, 0xa9, 0x7d, 0xd0, 0xd7, 0xde, 0x99, 0x91, 0x74, 0x2a, 0x39, 0xad, 0x20, }; static const unsigned char ecdh_brainpoolp320r1_647_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_647_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_647 = { .name = "ecdh_brainpoolp320r1_647", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_647_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_647_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_647_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 648 for ECDH, tcId is 4 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_648_peerpubkey[] = { 0x7b, 0xad, 0x53, 0xf5, 0x0a, 0x36, 0x93, 0x71, 0xb9, 0x74, 0x29, 0x52, 0xb3, 0x7f, 0x6a, 0x17, 0x9f, 0xfb, 0x0f, 0x7f, 0x46, 0x89, 0x43, 0x21, 0xf1, 0xb3, 0x48, 0x54, 0x53, 0xb7, 0xbb, 0x58, 0xb9, 0xe6, 0x1e, 0x1a, 0xd0, 0x69, 0x13, 0x24, 0x72, 0x87, 0x97, 0x61, 0x10, 0xd2, 0x2b, 0xba, 0xf1, 0x7d, 0xad, 0x58, 0x4c, 0xd1, 0x04, 0xbc, 0xa6, 0x60, 0x1d, 0xaa, 0x0b, 0x66, 0x33, 0xba, 0x88, 0x97, 0x93, 0xf9, 0x31, 0xef, 0x61, 0xf8, 0x89, 0xa4, 0x91, 0xbf, 0xc3, 0x77, 0x62, 0x56, }; static const unsigned char ecdh_brainpoolp320r1_648_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_648_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_648 = { .name = "ecdh_brainpoolp320r1_648", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_648_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_648_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_648_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 649 for ECDH, tcId is 5 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_649_peerpubkey[] = { 0x39, 0xa0, 0x05, 0x0a, 0xd1, 0x00, 0x06, 0x27, 0xff, 0xeb, 0x7b, 0xd1, 0xc4, 0xfa, 0x9f, 0xc3, 0x36, 0x50, 0x7c, 0x4d, 0x1c, 0x2a, 0x55, 0xf4, 0xe3, 0x67, 0x2c, 0x15, 0xda, 0xbc, 0x8d, 0xc9, 0x56, 0x7e, 0x32, 0x6e, 0x74, 0x0c, 0x54, 0xc7, 0x99, 0xc1, 0xb0, 0x5b, 0xcd, 0x6f, 0xc5, 0xb4, 0x3c, 0x69, 0x35, 0x69, 0xc0, 0x58, 0x3a, 0x19, 0xe5, 0xa0, 0xaf, 0xf1, 0xb4, 0x13, 0x5d, 0xf4, 0x61, 0xe6, 0x26, 0xe8, 0x1f, 0xb0, 0x98, 0xbe, 0x2e, 0xef, 0xbf, 0x9e, 0xc1, 0x07, 0x5a, 0x53, }; static const unsigned char ecdh_brainpoolp320r1_649_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_649_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_649 = { .name = "ecdh_brainpoolp320r1_649", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_649_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_649_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_649_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 650 for ECDH, tcId is 6 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_650_peerpubkey[] = { 0x88, 0x7c, 0x70, 0xea, 0xdd, 0xf1, 0xe6, 0x7b, 0x2e, 0x05, 0xe0, 0x61, 0x31, 0x54, 0xb6, 0x1c, 0xac, 0x59, 0x25, 0x68, 0x64, 0x1c, 0x53, 0x32, 0xa2, 0x18, 0xa8, 0x7c, 0xeb, 0xba, 0x63, 0xb2, 0x51, 0x8e, 0x6c, 0x1c, 0xc1, 0xca, 0x40, 0x36, 0xa4, 0xa6, 0x2b, 0xbe, 0x99, 0xf7, 0xca, 0xb9, 0x5e, 0xb1, 0xfd, 0x6b, 0x0a, 0xcc, 0x85, 0xd4, 0x95, 0xc9, 0xb8, 0x2e, 0xd1, 0xce, 0x04, 0x7d, 0xb8, 0x9a, 0xb3, 0xc0, 0x8f, 0x95, 0x3c, 0x13, 0xab, 0x35, 0x12, 0x86, 0x38, 0x92, 0x1b, 0x09, }; static const unsigned char ecdh_brainpoolp320r1_650_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_650_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_650 = { .name = "ecdh_brainpoolp320r1_650", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_650_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_650_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_650_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 651 for ECDH, tcId is 7 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_651_peerpubkey[] = { 0x04, 0xd1, 0x14, 0x97, 0x7a, 0xe6, 0x4c, 0xbc, 0xa7, 0x24, 0xfc, 0x51, 0x7d, 0x6b, 0x7b, 0xaf, 0xaf, 0x7c, 0x9e, 0xec, 0x36, 0xd6, 0x82, 0xc1, 0xfd, 0x02, 0xe9, 0xf9, 0xbc, 0xa3, 0x02, 0xb1, 0x49, 0x79, 0x35, 0x82, 0xb3, 0x01, 0xc8, 0xa9, 0x5a, 0xca, 0xb7, 0x75, 0xa1, 0xf9, 0xc6, 0x3d, 0x1e, 0xab, 0x8f, 0x1e, 0x67, 0x42, 0x1c, 0x7d, 0x8d, 0xe1, 0x6f, 0x01, 0x28, 0x16, 0x7a, 0x2f, 0x7e, 0xf8, 0xae, 0x55, 0xfd, 0xa1, 0xb8, 0x3e, 0x97, 0x50, 0x3b, 0x83, 0x23, 0x34, 0x3a, 0x92, }; static const unsigned char ecdh_brainpoolp320r1_651_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_651_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_651 = { .name = "ecdh_brainpoolp320r1_651", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_651_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_651_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_651_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 652 for ECDH, tcId is 8 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_652_peerpubkey[] = { 0x2e, 0x78, 0x93, 0x5c, 0x77, 0xd5, 0xfc, 0x19, 0x59, 0x28, 0x84, 0x9d, 0x98, 0xb8, 0x1c, 0x79, 0xc8, 0xdc, 0x40, 0x7b, 0xf1, 0x13, 0xbd, 0x1e, 0x3f, 0x49, 0x96, 0x7d, 0x28, 0x8d, 0x7b, 0xf8, 0xc1, 0xcd, 0x85, 0x3a, 0x9a, 0x5f, 0xd8, 0x07, 0x88, 0xe3, 0xe8, 0xeb, 0xdf, 0x07, 0xf7, 0x0c, 0x44, 0x07, 0x5b, 0x8a, 0xd2, 0x17, 0x12, 0x3e, 0x2e, 0xf4, 0x4a, 0xe5, 0x3f, 0x43, 0x06, 0xd0, 0xf1, 0x95, 0x8f, 0x13, 0x11, 0xd0, 0x50, 0x9e, 0x1c, 0x77, 0x54, 0xa6, 0x8a, 0xfd, 0xf7, 0xeb, }; static const unsigned char ecdh_brainpoolp320r1_652_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_652_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_652 = { .name = "ecdh_brainpoolp320r1_652", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_652_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_652_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_652_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 653 for ECDH, tcId is 9 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_653_peerpubkey[] = { 0x8f, 0x93, 0xa6, 0x51, 0x97, 0x29, 0x32, 0x08, 0x05, 0x29, 0x1a, 0x17, 0x92, 0x5e, 0x6d, 0x42, 0xba, 0x23, 0xdd, 0x25, 0xac, 0xb3, 0xee, 0xa2, 0x9c, 0x18, 0xf1, 0xe5, 0x50, 0xc7, 0xdf, 0xb4, 0x11, 0x82, 0xa9, 0xfd, 0x75, 0x74, 0x7d, 0xf7, 0x71, 0x91, 0xf1, 0x50, 0xaf, 0xa9, 0x79, 0x03, 0x1f, 0x54, 0x62, 0x22, 0xbb, 0xdc, 0x1a, 0xfc, 0x44, 0x8c, 0x66, 0x13, 0xd2, 0x19, 0xa1, 0x09, 0xa0, 0x18, 0xad, 0x34, 0x1b, 0x6b, 0xb5, 0xff, 0xf6, 0x19, 0x39, 0xa2, 0x42, 0xb4, 0x29, 0x68, }; static const unsigned char ecdh_brainpoolp320r1_653_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_653_sharedsecret[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_653 = { .name = "ecdh_brainpoolp320r1_653", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_653_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_653_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_653_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 654 for ECDH, tcId is 10 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_654_peerpubkey[] = { 0x73, 0xa8, 0x10, 0x1f, 0x25, 0x69, 0x33, 0x7b, 0x61, 0x23, 0x7b, 0x94, 0x10, 0x5f, 0x02, 0xaf, 0x62, 0xaf, 0x56, 0xfe, 0x03, 0x64, 0xa8, 0xb0, 0x6c, 0xfd, 0x0c, 0x65, 0xad, 0x26, 0x89, 0x80, 0x34, 0x82, 0x8d, 0xbd, 0xa0, 0x3b, 0x90, 0xe7, 0x39, 0x4b, 0x1a, 0x51, 0xf0, 0xc3, 0x2e, 0xff, 0xa8, 0x6c, 0x58, 0xc2, 0x8c, 0x5a, 0xe2, 0xef, 0xce, 0x2a, 0x14, 0x7e, 0xb6, 0x95, 0x80, 0x51, 0x9f, 0x31, 0xa5, 0x7a, 0x69, 0x7d, 0x9c, 0x06, 0x9b, 0x97, 0xef, 0x9c, 0x02, 0xf4, 0xbb, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_654_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_654_sharedsecret[] = { 0x2e, 0x55, 0x44, 0xfd, 0x7d, 0x84, 0x3f, 0x5d, 0xf8, 0x7b, 0xad, 0x44, 0x22, 0xee, 0x2f, 0x10, 0x13, 0x97, 0x48, 0xeb, 0x00, 0x49, 0x74, 0xc3, 0x85, 0x8f, 0x8a, 0x7a, 0x68, 0x9d, 0xf7, 0x92, 0xae, 0x0a, 0xf0, 0x8d, 0xc4, 0x34, 0x14, 0xd9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_654 = { .name = "ecdh_brainpoolp320r1_654", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_654_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_654_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_654_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 655 for ECDH, tcId is 11 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_655_peerpubkey[] = { 0xa8, 0x3d, 0xf8, 0xe6, 0xd9, 0x32, 0x6d, 0x0f, 0x6e, 0x39, 0x9d, 0xb9, 0x09, 0x4f, 0x81, 0xab, 0x8a, 0xf8, 0x46, 0x09, 0x1f, 0x5d, 0x50, 0xf2, 0x20, 0xd2, 0xdc, 0x94, 0xa2, 0x68, 0xc6, 0xa8, 0xd1, 0x1a, 0xde, 0x13, 0xe2, 0x48, 0x4b, 0x25, 0x3a, 0x77, 0x02, 0x79, 0x83, 0xc3, 0xd8, 0xb2, 0xd0, 0xa4, 0xcb, 0x9e, 0xe9, 0x00, 0x8c, 0xbd, 0x8d, 0x34, 0xc5, 0x0f, 0xc6, 0x5a, 0x5a, 0xad, 0x5c, 0x21, 0xf3, 0x32, 0x78, 0x8f, 0x71, 0x98, 0x97, 0xc4, 0x44, 0x47, 0xe0, 0xf1, 0x13, 0x70, }; static const unsigned char ecdh_brainpoolp320r1_655_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_655_sharedsecret[] = { 0x2e, 0x62, 0xb0, 0x07, 0xe0, 0xe8, 0x33, 0xa4, 0xfe, 0x3a, 0x6b, 0x52, 0x7a, 0x4f, 0xe8, 0x8f, 0x6b, 0xbd, 0x0c, 0xe2, 0x0e, 0x6a, 0x37, 0x4f, 0xb6, 0x47, 0x4d, 0x56, 0x95, 0x6b, 0x6a, 0x0f, 0x80, 0x7f, 0x68, 0x65, 0x2c, 0x8b, 0x0d, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_655 = { .name = "ecdh_brainpoolp320r1_655", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_655_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_655_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_655_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 656 for ECDH, tcId is 12 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_656_peerpubkey[] = { 0xbe, 0xf5, 0x4b, 0x0f, 0xe9, 0x7b, 0x66, 0xcb, 0xfc, 0x62, 0x73, 0x16, 0x45, 0xfe, 0x3c, 0x6f, 0xc1, 0xd5, 0x82, 0xdf, 0xc1, 0x8f, 0xe4, 0x19, 0xfe, 0xfb, 0x8c, 0xbd, 0xb0, 0xc5, 0xfa, 0x17, 0xa3, 0x63, 0xf3, 0x52, 0xed, 0x7b, 0x6b, 0xfa, 0x37, 0xe2, 0x4f, 0x93, 0xec, 0x8d, 0xa5, 0x00, 0x62, 0x93, 0x78, 0x23, 0xba, 0xab, 0x3c, 0x13, 0x8c, 0xf1, 0x33, 0x5e, 0x07, 0xbb, 0x50, 0xc8, 0xa0, 0x5e, 0xd6, 0xa9, 0xbb, 0x9f, 0x82, 0x63, 0x1c, 0x95, 0xf5, 0x00, 0xaa, 0x9f, 0x36, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_656_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_656_sharedsecret[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_656 = { .name = "ecdh_brainpoolp320r1_656", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_656_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_656_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_656_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 657 for ECDH, tcId is 13 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_657_peerpubkey[] = { 0xab, 0x49, 0xdd, 0x4a, 0x73, 0xe9, 0xf8, 0xe0, 0x59, 0x5b, 0xd8, 0xca, 0x16, 0x55, 0xe2, 0xbc, 0xa6, 0x1f, 0xa2, 0xe1, 0xa3, 0xcc, 0x87, 0x63, 0x5a, 0xe7, 0xa6, 0x1f, 0xdb, 0x7c, 0x9b, 0xd5, 0xa8, 0xe4, 0xe3, 0x4a, 0xa2, 0xb9, 0x28, 0xc9, 0x30, 0x73, 0x2c, 0xcb, 0x23, 0xd3, 0xf5, 0x12, 0xae, 0xda, 0x14, 0x96, 0xa8, 0x4e, 0x7e, 0x75, 0x30, 0x3b, 0x0e, 0xe6, 0x62, 0xd6, 0x11, 0x07, 0xda, 0x8c, 0x67, 0xfe, 0x71, 0x93, 0xde, 0x7c, 0x29, 0x25, 0x14, 0x23, 0x50, 0x1d, 0xf2, 0x09, }; static const unsigned char ecdh_brainpoolp320r1_657_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_657_sharedsecret[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_657 = { .name = "ecdh_brainpoolp320r1_657", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_657_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_657_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_657_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 658 for ECDH, tcId is 14 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_658_peerpubkey[] = { 0x8f, 0x56, 0x59, 0x11, 0x6b, 0x4a, 0xf2, 0xd0, 0x3d, 0xd2, 0xb3, 0xe7, 0x2c, 0x0d, 0x78, 0xd7, 0x76, 0x77, 0xfe, 0xfb, 0x4e, 0x27, 0x7b, 0xee, 0x2a, 0x49, 0x66, 0xbb, 0xa8, 0x35, 0x4f, 0x85, 0xd8, 0x38, 0x45, 0xb3, 0x3a, 0x43, 0x1a, 0x69, 0x07, 0x92, 0x15, 0x55, 0xc1, 0xac, 0x47, 0x1e, 0x51, 0xe2, 0x6a, 0x0c, 0xc6, 0x7f, 0xb4, 0x14, 0x6d, 0xa0, 0x50, 0x2f, 0xce, 0xe3, 0x8f, 0x5e, 0xf5, 0x02, 0xfc, 0xd4, 0xf9, 0xa3, 0x80, 0xb0, 0x86, 0xaf, 0x5c, 0x40, 0x33, 0x96, 0xc4, 0xf7, }; static const unsigned char ecdh_brainpoolp320r1_658_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_658_sharedsecret[] = { 0x69, 0x46, 0xec, 0x9b, 0xdd, 0xda, 0xc3, 0x0d, 0xc5, 0x06, 0x0f, 0x5b, 0xdb, 0x41, 0xd2, 0x14, 0x0d, 0x57, 0x06, 0x67, 0x58, 0xe3, 0xb7, 0x3f, 0x0c, 0x50, 0xb5, 0x59, 0x0a, 0xc4, 0x5e, 0x9c, 0x3a, 0x48, 0x30, 0x16, 0xc9, 0x7d, 0x40, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_658 = { .name = "ecdh_brainpoolp320r1_658", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_658_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_658_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_658_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 659 for ECDH, tcId is 15 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_659_peerpubkey[] = { 0x24, 0x3b, 0xd4, 0x50, 0xe7, 0x57, 0xa6, 0xa5, 0x30, 0x8c, 0xb3, 0x66, 0xf8, 0x7c, 0x35, 0x9b, 0x95, 0x3c, 0xb4, 0x2c, 0x6c, 0x61, 0xde, 0x92, 0x3a, 0x24, 0x24, 0x72, 0x17, 0x97, 0x4d, 0x6c, 0xcb, 0x3f, 0x88, 0x69, 0xe8, 0x32, 0x22, 0x7c, 0x64, 0x03, 0x5c, 0x20, 0x66, 0xf2, 0x44, 0x23, 0xfe, 0xe0, 0x04, 0x1a, 0xb5, 0xef, 0x36, 0x1d, 0x1c, 0xa4, 0xbd, 0x19, 0xf3, 0x4f, 0x98, 0x02, 0xf1, 0xfb, 0xcd, 0x2c, 0xc1, 0x32, 0x08, 0x7d, 0x8f, 0x4f, 0x3d, 0x5b, 0x32, 0xe1, 0xb0, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_659_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_659_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_659 = { .name = "ecdh_brainpoolp320r1_659", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_659_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_659_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_659_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 660 for ECDH, tcId is 16 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_660_peerpubkey[] = { 0x65, 0x67, 0x7d, 0xff, 0x00, 0xf5, 0x89, 0x9c, 0x51, 0x00, 0xc5, 0xce, 0xae, 0xef, 0x38, 0x3d, 0xe4, 0x90, 0x12, 0xe0, 0x05, 0xe8, 0xf7, 0x36, 0x56, 0xca, 0xff, 0x3e, 0x95, 0xdd, 0x12, 0x54, 0xbb, 0xbf, 0xfa, 0x84, 0x0e, 0x20, 0x6e, 0x96, 0x29, 0x35, 0xd7, 0x33, 0x93, 0x0d, 0xbe, 0x01, 0x30, 0x71, 0x47, 0x61, 0xa1, 0xa2, 0x6b, 0xf9, 0xa5, 0x9c, 0xd3, 0x7d, 0xb1, 0x31, 0x1b, 0xae, 0x7a, 0xb2, 0xf9, 0xae, 0x3f, 0x08, 0x27, 0xaa, 0x0a, 0xe2, 0x40, 0xb3, 0x4c, 0xef, 0xb9, 0x7c, }; static const unsigned char ecdh_brainpoolp320r1_660_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_660_sharedsecret[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_660 = { .name = "ecdh_brainpoolp320r1_660", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_660_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_660_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_660_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 661 for ECDH, tcId is 17 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_661_peerpubkey[] = { 0x63, 0x94, 0xde, 0xfc, 0x20, 0x11, 0x1c, 0xd8, 0xcd, 0xdc, 0x2b, 0x85, 0x45, 0xb9, 0x20, 0x0f, 0x08, 0x07, 0x36, 0xbf, 0x64, 0x38, 0xf2, 0x1c, 0x6f, 0xe0, 0xbc, 0x24, 0x6e, 0x4b, 0xb0, 0xbd, 0xce, 0x1f, 0x11, 0x07, 0xd6, 0xdc, 0x55, 0xb5, 0x36, 0xd0, 0x25, 0x46, 0x1e, 0xfe, 0xf8, 0xec, 0x5d, 0xfa, 0x7f, 0x08, 0x8f, 0xc0, 0x30, 0x70, 0xef, 0xe5, 0x61, 0x58, 0x05, 0x0a, 0xc3, 0x04, 0x2d, 0x12, 0x85, 0xaa, 0x9e, 0xa4, 0x02, 0x15, 0xdf, 0xe5, 0x54, 0x2e, 0x6d, 0x55, 0x90, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_661_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_661_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_661 = { .name = "ecdh_brainpoolp320r1_661", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_661_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_661_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_661_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 662 for ECDH, tcId is 18 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_662_peerpubkey[] = { 0x0c, 0x11, 0x42, 0xed, 0xac, 0xae, 0x66, 0xff, 0xa6, 0x99, 0x3b, 0xca, 0x13, 0x4c, 0xd4, 0x45, 0x0b, 0x5a, 0xdf, 0x0d, 0x5f, 0x5c, 0x32, 0xe2, 0x14, 0x79, 0xf2, 0x41, 0x9a, 0x90, 0x00, 0xaf, 0xe9, 0x22, 0x67, 0x49, 0xf2, 0x7b, 0xca, 0xd1, 0x13, 0xbe, 0xe3, 0x19, 0xea, 0xc4, 0xe6, 0xc6, 0x92, 0x7d, 0xee, 0xf9, 0x99, 0xd2, 0x50, 0x17, 0x89, 0x0e, 0x95, 0xa6, 0x15, 0xbd, 0x22, 0x27, 0x20, 0xec, 0xbb, 0x22, 0xeb, 0xe2, 0xed, 0x9a, 0xaf, 0xb9, 0x61, 0x0b, 0xfa, 0x7e, 0x77, 0xf9, }; static const unsigned char ecdh_brainpoolp320r1_662_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_662_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_662 = { .name = "ecdh_brainpoolp320r1_662", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_662_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_662_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_662_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 663 for ECDH, tcId is 19 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_663_peerpubkey[] = { 0x77, 0x02, 0x98, 0x80, 0x7f, 0xbf, 0xc4, 0xf0, 0x84, 0x21, 0x0a, 0x36, 0x14, 0x03, 0xc6, 0xdd, 0x3c, 0x3f, 0x2c, 0x31, 0xbb, 0xf2, 0x0e, 0xc8, 0x51, 0xe1, 0x01, 0x44, 0xfc, 0x83, 0x40, 0xae, 0x7a, 0x77, 0xce, 0xad, 0x74, 0x2b, 0x5d, 0x1d, 0xc4, 0xa9, 0xa8, 0x55, 0xdf, 0x56, 0xa2, 0x13, 0x62, 0x61, 0x40, 0x44, 0xae, 0x94, 0x57, 0x39, 0xc7, 0x07, 0xc0, 0xc8, 0x9b, 0x65, 0xa4, 0x3f, 0xb0, 0x91, 0x06, 0x9b, 0xd4, 0xf6, 0x95, 0xb5, 0x53, 0xc5, 0x83, 0xf5, 0x38, 0x20, 0x6c, 0x35, }; static const unsigned char ecdh_brainpoolp320r1_663_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_663_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_663 = { .name = "ecdh_brainpoolp320r1_663", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_663_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_663_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_663_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 664 for ECDH, tcId is 20 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_664_peerpubkey[] = { 0xa7, 0x19, 0xed, 0x2e, 0x9f, 0xf2, 0xde, 0xba, 0xc0, 0x71, 0x3b, 0xc4, 0x80, 0x61, 0x81, 0x73, 0x68, 0x85, 0x73, 0x6f, 0x18, 0x3b, 0xe2, 0x41, 0x75, 0xce, 0xd5, 0x14, 0xeb, 0xb7, 0x6a, 0x0e, 0x49, 0xb2, 0x0f, 0x7a, 0x47, 0xbe, 0xc0, 0x44, 0x77, 0x40, 0x55, 0x70, 0x75, 0x8b, 0xb4, 0xa1, 0x83, 0x5f, 0x71, 0x33, 0x8d, 0x39, 0x4a, 0xc7, 0x99, 0xd3, 0x89, 0xa9, 0xa2, 0xb0, 0xaa, 0xb5, 0x61, 0x71, 0x7a, 0x06, 0x42, 0xc6, 0x68, 0xdd, 0x7e, 0x88, 0x52, 0x1f, 0xc0, 0x88, 0x4d, 0xb9, }; static const unsigned char ecdh_brainpoolp320r1_664_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_664_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_664 = { .name = "ecdh_brainpoolp320r1_664", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_664_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_664_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_664_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 20 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 665 for ECDH, tcId is 21 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_665_peerpubkey[] = { 0x23, 0xc0, 0x25, 0x91, 0xb8, 0xee, 0x77, 0x8c, 0x57, 0x80, 0xed, 0x4c, 0x78, 0x39, 0x74, 0xdd, 0xd5, 0xaa, 0x52, 0x11, 0x7d, 0x68, 0xcd, 0xda, 0x1c, 0x37, 0x5c, 0xb7, 0x7d, 0xc3, 0x6f, 0x5f, 0xbe, 0xa9, 0x70, 0x9e, 0x44, 0x61, 0x28, 0x98, 0xc1, 0xf5, 0xfc, 0xb6, 0x7b, 0xd6, 0xb2, 0xbc, 0xc6, 0xff, 0x0b, 0x01, 0x00, 0x3b, 0xe7, 0x55, 0x9c, 0x1c, 0xd0, 0x82, 0x78, 0x47, 0xde, 0x59, 0x43, 0xd5, 0xad, 0xde, 0x9b, 0x85, 0x19, 0xa5, 0x56, 0x75, 0x97, 0x00, 0x51, 0x65, 0x9a, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_665_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_665_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_665 = { .name = "ecdh_brainpoolp320r1_665", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_665_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_665_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_665_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 21 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 666 for ECDH, tcId is 22 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_666_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x29, 0x11, 0x02, 0x53, 0xd5, 0x2c, 0xf3, 0xc5, 0xfc, 0x33, 0x82, 0xfc, 0xa9, 0x3d, 0x18, 0xad, 0xf7, 0xb9, 0x79, 0x99, 0x02, 0x87, 0x67, 0xb9, 0x72, 0x23, 0x81, 0xdb, 0x68, 0xfe, 0x3a, 0x41, 0x79, 0x3b, 0x7d, 0x99, 0x52, 0xc6, 0x17, 0x7f, }; static const unsigned char ecdh_brainpoolp320r1_666_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_666_sharedsecret[] = { 0x2b, 0xab, 0x46, 0x7e, 0xfa, 0x3a, 0xdf, 0x78, 0x23, 0x24, 0x56, 0x3a, 0x4d, 0x8f, 0x19, 0x01, 0x8c, 0xa4, 0x44, 0x58, 0xf6, 0x97, 0x31, 0x8a, 0x11, 0xf3, 0xe3, 0xc2, 0x26, 0x92, 0x75, 0xc7, 0xb1, 0xae, 0xc4, 0x4c, 0xe8, 0x3c, 0xce, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_666 = { .name = "ecdh_brainpoolp320r1_666", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_666_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_666_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_666_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 667 for ECDH, tcId is 23 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_667_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0d, 0x1a, 0x18, 0xc0, 0xb2, 0x5d, 0x0d, 0x32, 0xd9, 0xc4, 0x24, 0x9a, 0x52, 0x3c, 0xfc, 0xc1, 0x2a, 0x20, 0xc2, 0xea, 0xd5, 0x96, 0x60, 0x7d, 0x73, 0x26, 0x08, 0x95, 0x67, 0x63, 0x15, 0xa7, 0x0a, 0xd0, 0x98, 0xe8, 0xb5, 0x1d, 0x25, 0xa8, }; static const unsigned char ecdh_brainpoolp320r1_667_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_667_sharedsecret[] = { 0x82, 0x9a, 0x5f, 0x7c, 0x66, 0x4d, 0xce, 0x62, 0x1b, 0xa1, 0x37, 0x3c, 0x07, 0x58, 0xd3, 0xd2, 0xb2, 0x98, 0x4d, 0x85, 0xc3, 0x84, 0xcf, 0x00, 0x77, 0x93, 0x0a, 0xe4, 0x90, 0x9f, 0x60, 0x72, 0x73, 0x15, 0x72, 0xec, 0xc3, 0xe4, 0xa1, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_667 = { .name = "ecdh_brainpoolp320r1_667", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_667_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_667_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_667_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 668 for ECDH, tcId is 24 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_668_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x63, 0x8b, 0x53, 0xe2, 0xa2, 0xf4, 0x1d, 0xc6, 0xd6, 0xdc, 0x7b, 0x36, 0x11, 0xa6, 0xdd, 0xe5, 0x4f, 0x7e, 0x8a, 0x7b, 0xb2, 0x68, 0x1a, 0xfa, 0x20, 0x60, 0x10, 0x00, 0x74, 0xe5, 0x12, 0x89, 0xd1, 0x3d, 0x79, 0x25, 0x1d, 0x16, 0x8d, 0xa2, }; static const unsigned char ecdh_brainpoolp320r1_668_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_668_sharedsecret[] = { 0x81, 0x31, 0xf9, 0x53, 0x88, 0xbd, 0x0c, 0x74, 0xd3, 0xfe, 0xdc, 0x30, 0x77, 0xd7, 0x50, 0x38, 0x2e, 0x90, 0xf7, 0x65, 0xc8, 0x20, 0xe6, 0x08, 0x29, 0x2f, 0xe9, 0x23, 0xc4, 0xf3, 0xc7, 0x6a, 0xc7, 0x7d, 0x6c, 0x2c, 0x05, 0x86, 0x2c, 0x7a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_668 = { .name = "ecdh_brainpoolp320r1_668", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_668_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_668_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_668_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 669 for ECDH, tcId is 25 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_669_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x13, 0xb6, 0x59, 0x9c, 0xb2, 0xe9, 0x90, 0xa4, 0xfe, 0xe4, 0x90, 0xdf, 0xf2, 0x67, 0x36, 0x29, 0x78, 0xa0, 0xe7, 0x6f, 0x57, 0xc5, 0x3b, 0x4e, 0xe8, 0x5f, 0xc3, 0x9c, 0x79, 0x0f, 0x4c, 0x69, 0x69, 0x97, 0x8f, 0xc4, 0x62, 0xe5, 0xa8, 0x47, }; static const unsigned char ecdh_brainpoolp320r1_669_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_669_sharedsecret[] = { 0x20, 0x3a, 0xb4, 0x8d, 0x6e, 0x3a, 0x11, 0xaf, 0xcb, 0x44, 0x14, 0x0f, 0x0b, 0x65, 0x96, 0xcc, 0x85, 0xdf, 0xe3, 0x9e, 0x58, 0x9d, 0x64, 0xb6, 0x99, 0xdd, 0xb5, 0x47, 0x0e, 0xe2, 0xac, 0x5c, 0xf6, 0x1d, 0x6e, 0xc8, 0x53, 0x4a, 0xac, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_669 = { .name = "ecdh_brainpoolp320r1_669", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_669_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_669_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_669_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 670 for ECDH, tcId is 26 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_670_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, 0x3a, 0x91, 0xee, 0x30, 0xc6, 0x3e, 0xb1, 0x5b, 0x1c, 0x0f, 0x21, 0x02, 0xc6, 0xcf, 0x34, 0x38, 0xdd, 0x75, 0xca, 0x71, 0x63, 0x62, 0x38, 0xf8, 0x91, 0xe3, 0x67, 0xc1, 0x05, 0xf0, 0xb7, 0x81, 0xd0, 0x2d, 0xe6, 0x48, 0x39, 0x97, 0x12, 0xa0, }; static const unsigned char ecdh_brainpoolp320r1_670_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_670_sharedsecret[] = { 0x0f, 0x5a, 0x4a, 0x66, 0x07, 0xbf, 0xd9, 0x3a, 0xa3, 0xd1, 0xed, 0x5a, 0x4a, 0xa5, 0xed, 0x3d, 0x97, 0x35, 0x47, 0xcc, 0x97, 0x82, 0x65, 0x64, 0x9c, 0xc4, 0x7d, 0xae, 0x0c, 0xd3, 0x2b, 0xfe, 0xee, 0xf0, 0x58, 0xe4, 0xe2, 0xed, 0x42, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_670 = { .name = "ecdh_brainpoolp320r1_670", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_670_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_670_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_670_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 671 for ECDH, tcId is 27 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_671_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x30, 0x8f, 0x36, 0xab, 0x8f, 0x37, 0xe9, 0x77, 0x23, 0xb0, 0xaa, 0xdd, 0x7e, 0xe4, 0xdd, 0x58, 0x5b, 0x9e, 0x68, 0xdc, 0x00, 0xdb, 0x42, 0x42, 0xf6, 0xc3, 0xcf, 0x7b, 0x0e, 0xc1, 0x49, 0x7a, 0x26, 0xe6, 0x29, 0xb2, 0x4a, 0x61, 0x3b, 0x3a, }; static const unsigned char ecdh_brainpoolp320r1_671_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_671_sharedsecret[] = { 0xa6, 0xb0, 0x76, 0x1c, 0x5f, 0xe6, 0x0e, 0x1e, 0x4c, 0x63, 0x70, 0x4e, 0xcb, 0x8a, 0x0d, 0xa1, 0xa9, 0xb8, 0x9c, 0xd5, 0x02, 0xb2, 0x09, 0x1e, 0xb3, 0x7a, 0x41, 0x41, 0x81, 0xaf, 0x99, 0xc4, 0xb4, 0x21, 0xf1, 0x07, 0x86, 0x5a, 0x39, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_671 = { .name = "ecdh_brainpoolp320r1_671", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_671_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_671_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_671_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 672 for ECDH, tcId is 28 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_672_peerpubkey[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x23, 0x1f, 0x9a, 0xef, 0x9b, 0x1a, 0x7c, 0x14, 0x34, 0x85, 0xf6, 0x01, 0x98, 0x0b, 0xfa, 0x4f, 0x7b, 0xc7, 0xb3, 0x12, 0xb0, 0x14, 0x00, 0xbd, 0x1d, 0x15, 0x66, 0x91, 0x97, 0xe0, 0x7f, 0x2e, 0xdf, 0x39, 0xcd, 0x08, 0xc9, 0x05, 0xe2, 0x80, }; static const unsigned char ecdh_brainpoolp320r1_672_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_672_sharedsecret[] = { 0x8c, 0xcf, 0xba, 0x75, 0x20, 0x52, 0xd1, 0x5c, 0x8c, 0xca, 0x18, 0x1a, 0xbd, 0x9f, 0xde, 0xd4, 0xcb, 0x0c, 0x17, 0x6d, 0xba, 0xdc, 0xca, 0xfe, 0x44, 0xcf, 0x1c, 0xc1, 0x90, 0x7f, 0xc9, 0xba, 0x35, 0x6c, 0x7e, 0x7c, 0x32, 0x89, 0xe1, 0x9e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_672 = { .name = "ecdh_brainpoolp320r1_672", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_672_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_672_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_672_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 673 for ECDH, tcId is 29 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_673_peerpubkey[] = { 0x2e, 0x55, 0x44, 0xfd, 0x7d, 0x84, 0x3f, 0x5d, 0xf8, 0x7b, 0xad, 0x44, 0x22, 0xee, 0x2f, 0x10, 0x13, 0x97, 0x48, 0xeb, 0x00, 0x49, 0x74, 0xc3, 0x85, 0x8f, 0x8a, 0x7a, 0x68, 0x9d, 0xf7, 0x92, 0xae, 0x0a, 0xf0, 0x8d, 0xc4, 0x34, 0x14, 0xd9, 0x2c, 0x64, 0xec, 0xa7, 0x6e, 0x21, 0x96, 0xd0, 0x18, 0x99, 0xac, 0xac, 0x18, 0x24, 0xef, 0xfa, 0x5a, 0x9b, 0x4b, 0x31, 0x67, 0xb2, 0x13, 0x14, 0x77, 0x38, 0x60, 0x06, 0xfc, 0x3a, 0x0f, 0x62, 0x4d, 0x96, 0x84, 0xc9, 0x00, 0xdf, 0x7b, 0x78, }; static const unsigned char ecdh_brainpoolp320r1_673_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_673_sharedsecret[] = { 0x5e, 0x7e, 0x6b, 0xa6, 0x02, 0xaa, 0x22, 0x08, 0xb1, 0x60, 0x7f, 0x87, 0x96, 0x35, 0xd6, 0xe3, 0xc2, 0x85, 0x68, 0xa7, 0xf7, 0x54, 0xda, 0xe4, 0x48, 0xcf, 0xc7, 0x93, 0xa8, 0x06, 0x00, 0x80, 0x9a, 0xc1, 0x33, 0x81, 0xbc, 0x80, 0x0a, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_673 = { .name = "ecdh_brainpoolp320r1_673", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_673_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_673_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_673_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 674 for ECDH, tcId is 30 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_674_peerpubkey[] = { 0x2e, 0x62, 0xb0, 0x07, 0xe0, 0xe8, 0x33, 0xa4, 0xfe, 0x3a, 0x6b, 0x52, 0x7a, 0x4f, 0xe8, 0x8f, 0x6b, 0xbd, 0x0c, 0xe2, 0x0e, 0x6a, 0x37, 0x4f, 0xb6, 0x47, 0x4d, 0x56, 0x95, 0x6b, 0x6a, 0x0f, 0x80, 0x7f, 0x68, 0x65, 0x2c, 0x8b, 0x0d, 0xed, 0x5b, 0x05, 0x54, 0xbd, 0x70, 0x1c, 0x2b, 0x9e, 0x66, 0x87, 0xe1, 0xb0, 0x13, 0x5d, 0xff, 0x71, 0x5d, 0x53, 0xda, 0xe8, 0x58, 0xfa, 0x77, 0xdf, 0x8e, 0x7e, 0x56, 0x6e, 0xd6, 0x38, 0xf9, 0x72, 0x6a, 0xde, 0x9e, 0xa2, 0xdb, 0x60, 0x10, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_674_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_674_sharedsecret[] = { 0x9f, 0x60, 0x59, 0xcb, 0xad, 0xa9, 0x7a, 0xb9, 0xf0, 0x82, 0x6b, 0x6a, 0x1b, 0xed, 0xfe, 0x79, 0xb9, 0xc7, 0x5d, 0xa5, 0x1f, 0xc2, 0xfe, 0x26, 0x20, 0x43, 0x6b, 0xff, 0x79, 0xb1, 0x5a, 0xc4, 0x16, 0xb9, 0xed, 0x1a, 0x02, 0x51, 0x36, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_674 = { .name = "ecdh_brainpoolp320r1_674", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_674_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_674_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_674_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 675 for ECDH, tcId is 31 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_675_peerpubkey[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, 0x13, 0xef, 0xf0, 0xc8, 0x30, 0x08, 0x73, 0x14, 0x68, 0x78, 0x9c, 0x78, 0x65, 0xe5, 0xc1, 0x7d, 0x5d, 0xe2, 0xda, 0x06, 0x5c, 0x8f, 0x03, 0x9a, 0x74, 0x75, 0xcd, 0x75, 0x88, 0xe0, 0x3e, 0x9a, 0x68, 0xca, 0x08, 0x41, 0xf6, 0xf8, 0x42, 0x9f, }; static const unsigned char ecdh_brainpoolp320r1_675_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_675_sharedsecret[] = { 0x1a, 0x05, 0x05, 0x8f, 0x31, 0x6d, 0x94, 0xef, 0xa0, 0x82, 0x9e, 0x12, 0xc6, 0x5c, 0x32, 0xa0, 0x12, 0x02, 0xb2, 0x4a, 0x9c, 0xf9, 0x7b, 0x9f, 0x64, 0x99, 0x0a, 0x39, 0xf6, 0x43, 0x45, 0x6d, 0xfb, 0x5a, 0x89, 0x64, 0x9a, 0x8f, 0x68, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_675 = { .name = "ecdh_brainpoolp320r1_675", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_675_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_675_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_675_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 676 for ECDH, tcId is 32 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_676_peerpubkey[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, 0x0e, 0x75, 0xf2, 0x18, 0xe1, 0x22, 0xda, 0xc1, 0xd4, 0x6f, 0x0c, 0x09, 0xe4, 0x9b, 0x92, 0xc1, 0x67, 0x79, 0x8a, 0x6b, 0x45, 0x8e, 0x66, 0x60, 0xc8, 0xc1, 0x0f, 0xb3, 0x85, 0x8d, 0x89, 0xa5, 0xf5, 0x46, 0xa3, 0x01, 0x40, 0x6d, 0x45, 0x6f, }; static const unsigned char ecdh_brainpoolp320r1_676_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_676_sharedsecret[] = { 0x1f, 0x9a, 0xe2, 0x4d, 0x00, 0x82, 0xd8, 0xa1, 0x03, 0x84, 0x20, 0x86, 0xfa, 0xe9, 0x1d, 0xa6, 0x16, 0xc1, 0xb0, 0xd2, 0x60, 0x07, 0xdb, 0x2f, 0x75, 0x5a, 0x8f, 0xb0, 0xdd, 0x17, 0x20, 0x20, 0x58, 0x95, 0xa1, 0xea, 0xd8, 0x8b, 0x2a, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_676 = { .name = "ecdh_brainpoolp320r1_676", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_676_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_676_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_676_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 677 for ECDH, tcId is 33 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_677_peerpubkey[] = { 0x69, 0x46, 0xec, 0x9b, 0xdd, 0xda, 0xc3, 0x0d, 0xc5, 0x06, 0x0f, 0x5b, 0xdb, 0x41, 0xd2, 0x14, 0x0d, 0x57, 0x06, 0x67, 0x58, 0xe3, 0xb7, 0x3f, 0x0c, 0x50, 0xb5, 0x59, 0x0a, 0xc4, 0x5e, 0x9c, 0x3a, 0x48, 0x30, 0x16, 0xc9, 0x7d, 0x40, 0x9d, 0x0e, 0xce, 0x7c, 0x2c, 0xf1, 0xc5, 0xa4, 0x6c, 0x15, 0xc6, 0xff, 0x81, 0x4b, 0x12, 0x52, 0x59, 0x3c, 0xb5, 0x32, 0x62, 0x1f, 0xe1, 0x4c, 0x7f, 0x55, 0x77, 0x62, 0x91, 0x1a, 0x16, 0x6e, 0x46, 0xb9, 0xb7, 0xa3, 0xd4, 0xb9, 0xaa, 0x9f, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_677_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_677_sharedsecret[] = { 0x01, 0x98, 0x03, 0x73, 0xc0, 0xa3, 0xa0, 0x0b, 0xe8, 0xb3, 0x0b, 0x1a, 0xfb, 0x81, 0x23, 0xb0, 0x32, 0xa7, 0x05, 0x4b, 0x16, 0xb5, 0x10, 0x16, 0xbe, 0x94, 0xf5, 0xd9, 0xf5, 0xdd, 0x8a, 0x5a, 0x5f, 0x19, 0xe0, 0x80, 0x7f, 0x6c, 0x27, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_677 = { .name = "ecdh_brainpoolp320r1_677", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_677_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_677_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_677_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 678 for ECDH, tcId is 34 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_678_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x02, 0x53, 0x68, 0xd4, 0x4d, 0x77, 0x06, 0x40, 0x8e, 0x18, 0x11, 0x8e, 0x83, 0x38, 0xb5, 0xa8, 0xf6, 0x5d, 0xcb, 0x4f, 0x7a, 0xc1, 0x88, 0x4d, 0x97, 0xa4, 0x4d, 0x23, 0x5b, 0x8c, 0x89, 0xe5, 0xc2, 0x40, 0x57, 0x66, 0x80, 0xe6, 0xde, 0xf6, }; static const unsigned char ecdh_brainpoolp320r1_678_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_678_sharedsecret[] = { 0x8c, 0x14, 0xfa, 0x61, 0xbe, 0x79, 0xee, 0x09, 0x6d, 0xcf, 0x6a, 0x2c, 0xd3, 0x1a, 0xaa, 0xb4, 0x22, 0xb9, 0x81, 0x61, 0x47, 0x6c, 0x02, 0xe7, 0x1a, 0x18, 0x16, 0x8e, 0xaf, 0x31, 0x85, 0xac, 0x51, 0x5f, 0x6e, 0x45, 0x1a, 0xf5, 0xe2, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_678 = { .name = "ecdh_brainpoolp320r1_678", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_678_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_678_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_678_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 679 for ECDH, tcId is 35 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_679_peerpubkey[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x1a, 0x2b, 0x8d, 0x3c, 0x67, 0x30, 0x5d, 0xe2, 0x15, 0x01, 0xcd, 0x7c, 0x43, 0xad, 0x4c, 0xd9, 0xa5, 0x74, 0x59, 0xc4, 0x2e, 0x6f, 0xda, 0xc1, 0xe2, 0xcb, 0x37, 0x95, 0x27, 0x03, 0xff, 0xdc, 0xcd, 0x18, 0xfc, 0xb3, 0x26, 0xa2, 0xe0, 0xc7, }; static const unsigned char ecdh_brainpoolp320r1_679_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_679_sharedsecret[] = { 0x61, 0x48, 0x2d, 0x66, 0x7b, 0xe2, 0xa2, 0xd7, 0xbf, 0xcb, 0xd7, 0x5b, 0x9e, 0x81, 0x40, 0xea, 0x37, 0x81, 0x3e, 0xde, 0x1f, 0xd4, 0x4e, 0xb0, 0x46, 0xf4, 0x36, 0xa4, 0xd6, 0x72, 0x78, 0x46, 0x43, 0xd0, 0xd8, 0x4b, 0x1c, 0x82, 0xf5, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_679 = { .name = "ecdh_brainpoolp320r1_679", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_679_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_679_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_679_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 680 for ECDH, tcId is 36 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_680_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x25, 0xa0, 0xdc, 0x38, 0x9b, 0xcd, 0xc8, 0x5d, 0x84, 0x34, 0xb2, 0xc6, 0x15, 0xd1, 0x09, 0x2b, 0x54, 0x6d, 0x78, 0x08, 0x97, 0x8f, 0x2d, 0x0c, 0xd3, 0xb3, 0xf1, 0x7f, 0x57, 0xa2, 0x77, 0x4c, 0x88, 0x3f, 0xc5, 0xfa, 0xd7, 0x9e, 0xd3, 0x2d, }; static const unsigned char ecdh_brainpoolp320r1_680_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_680_sharedsecret[] = { 0xc5, 0x86, 0x15, 0x2d, 0x74, 0x16, 0xca, 0x85, 0xeb, 0x55, 0x48, 0x6e, 0xc2, 0x91, 0x4a, 0x78, 0xa3, 0xd9, 0x9a, 0x24, 0x0d, 0x7d, 0x26, 0x57, 0xd5, 0x4a, 0x2c, 0x8c, 0x15, 0x40, 0xb3, 0x49, 0x38, 0x0a, 0x15, 0x1c, 0x96, 0x69, 0xa1, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_680 = { .name = "ecdh_brainpoolp320r1_680", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_680_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_680_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_680_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 681 for ECDH, tcId is 37 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_681_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x01, 0x03, 0x04, 0x32, 0x04, 0x4d, 0xdf, 0x1b, 0x15, 0x86, 0xc5, 0x1d, 0xee, 0xc0, 0x30, 0x6d, 0x02, 0xd8, 0x8e, 0x54, 0xbc, 0x2a, 0x2d, 0xc6, 0xc7, 0xe6, 0x58, 0x95, 0x89, 0x16, 0x33, 0xf8, 0x66, 0xad, 0xdb, 0x9d, 0xe1, 0xad, 0x32, 0xa8, 0xbc, }; static const unsigned char ecdh_brainpoolp320r1_681_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_681_sharedsecret[] = { 0xc1, 0x1b, 0x2d, 0xca, 0x66, 0x72, 0x80, 0x2c, 0x85, 0x28, 0xaf, 0x2c, 0x84, 0xb1, 0xa0, 0x4e, 0x59, 0xc9, 0xa2, 0x2b, 0xb2, 0x71, 0xbd, 0x6d, 0x75, 0x68, 0x09, 0x2b, 0xab, 0xd2, 0xf2, 0x3e, 0xfc, 0x06, 0x3a, 0xb2, 0x48, 0xa2, 0x71, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_681 = { .name = "ecdh_brainpoolp320r1_681", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_681_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_681_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_681_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 682 for ECDH, tcId is 38 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_682_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x65, 0xf8, 0x97, 0x31, 0xc0, 0x26, 0x3d, 0x13, 0xaa, 0xa8, 0xca, 0x7b, 0x3d, 0xad, 0xea, 0x10, 0xc4, 0x6d, 0x72, 0x43, 0x88, 0x3d, 0x7c, 0xab, 0x72, 0x6d, 0x46, 0x3b, 0x25, 0x4d, 0xf6, 0xef, 0x72, 0x8b, 0x52, 0xd8, 0xbb, 0xfb, 0x06, 0xee, }; static const unsigned char ecdh_brainpoolp320r1_682_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_682_sharedsecret[] = { 0xaa, 0x2e, 0x1b, 0xa6, 0xb5, 0x08, 0x02, 0x6b, 0x96, 0x7a, 0xb3, 0x55, 0xb9, 0x93, 0x18, 0xbc, 0x39, 0x4f, 0xc0, 0xd3, 0xcf, 0xab, 0xbb, 0x24, 0x68, 0x04, 0xdd, 0xb5, 0xf9, 0x13, 0xe6, 0xef, 0x6b, 0xc0, 0xa2, 0x28, 0x31, 0x1b, 0xed, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_682 = { .name = "ecdh_brainpoolp320r1_682", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_682_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_682_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_682_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 683 for ECDH, tcId is 39 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_683_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x8c, 0x04, 0x47, 0x7f, 0x42, 0xd1, 0x65, 0xe4, 0xd4, 0x74, 0x24, 0x8d, 0x09, 0x1a, 0xd7, 0x42, 0x20, 0xde, 0x20, 0x21, 0xd0, 0xca, 0x8f, 0x9f, 0x72, 0x95, 0xc7, 0xcc, 0x19, 0xc7, 0x87, 0xf9, 0x4e, 0xc3, 0x3a, 0x2e, 0x4d, 0x51, 0xee, }; static const unsigned char ecdh_brainpoolp320r1_683_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_683_sharedsecret[] = { 0x53, 0x97, 0xc3, 0xd5, 0x66, 0x3f, 0x5f, 0xcc, 0x47, 0x05, 0xec, 0xeb, 0xa8, 0x25, 0x5e, 0x89, 0xce, 0xa1, 0x74, 0x7a, 0xd0, 0xd0, 0x8d, 0x40, 0xb7, 0xa1, 0xae, 0xe0, 0x11, 0x93, 0xb5, 0xdf, 0x95, 0x93, 0xf8, 0x01, 0x3c, 0x5d, 0xfb, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_683 = { .name = "ecdh_brainpoolp320r1_683", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_683_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_683_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_683_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 684 for ECDH, tcId is 40 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_684_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x04, 0xf2, 0x45, 0x5c, 0xdb, 0x03, 0x5b, 0x0c, 0xd4, 0x42, 0x2a, 0x3c, 0xa0, 0x6b, 0xb1, 0x9b, 0xf0, 0x18, 0xd1, 0xa5, 0xcb, 0x84, 0xeb, 0x12, 0x44, 0x6d, 0x47, 0xf7, 0xf7, 0xa1, 0x6c, 0x03, 0x5c, 0x70, 0x95, 0x1b, 0x4b, 0x6b, 0xad, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_684_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_684_sharedsecret[] = { 0x20, 0xc7, 0x90, 0xcf, 0x41, 0x72, 0x3c, 0x9d, 0x57, 0x57, 0xb1, 0xee, 0xc1, 0xff, 0x88, 0xef, 0x16, 0xcb, 0xb6, 0x32, 0x87, 0x9c, 0xdc, 0xe4, 0x7f, 0xcb, 0x58, 0x32, 0x62, 0xa7, 0xa6, 0x77, 0x5c, 0x44, 0x86, 0xdf, 0x30, 0x1d, 0xf5, 0xf5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_684 = { .name = "ecdh_brainpoolp320r1_684", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_684_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_684_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_684_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 685 for ECDH, tcId is 41 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_685_peerpubkey[] = { 0xc3, 0xc0, 0xa0, 0xcb, 0x3e, 0x5a, 0x3e, 0x6a, 0xc7, 0x94, 0xa0, 0xd7, 0x32, 0x6c, 0xd9, 0x8c, 0x56, 0x5c, 0x56, 0x55, 0x36, 0xa6, 0x8d, 0x35, 0x78, 0xb3, 0x69, 0xa9, 0x98, 0x48, 0xd7, 0x48, 0x75, 0x48, 0xc6, 0x48, 0xc7, 0xce, 0x43, 0xa7, 0x62, 0xb9, 0xc8, 0x3b, 0x6a, 0xad, 0xea, 0x1e, 0x64, 0xe3, 0xf6, 0x9d, 0xf7, 0x61, 0xf2, 0x0c, 0x61, 0x74, 0x54, 0xa4, 0x0a, 0x57, 0xb7, 0x50, 0xb0, 0xf6, 0x60, 0x4a, 0xed, 0x46, 0x83, 0x63, 0x80, 0x5e, 0x54, 0x1c, 0xde, 0x79, 0xca, 0x8a, }; static const unsigned char ecdh_brainpoolp320r1_685_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_685_sharedsecret[] = { 0xad, 0x83, 0x78, 0x1e, 0x75, 0x9c, 0xcc, 0x60, 0x6d, 0xa1, 0x8b, 0xa8, 0x77, 0x13, 0xf9, 0x0e, 0x91, 0x20, 0xe6, 0x6a, 0xa6, 0x63, 0xc3, 0x93, 0x94, 0xcd, 0x40, 0xf7, 0x25, 0x67, 0xbe, 0xf9, 0xb8, 0xe7, 0xa2, 0x47, 0x5d, 0xb7, 0xe1, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_685 = { .name = "ecdh_brainpoolp320r1_685", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_685_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_685_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_685_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 41 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 686 for ECDH, tcId is 42 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_686_peerpubkey[] = { 0xc4, 0xc6, 0xb5, 0x08, 0x12, 0x1d, 0xf7, 0xc4, 0xff, 0xb9, 0x47, 0xfe, 0xd3, 0x0b, 0xa4, 0xd1, 0x7c, 0xb7, 0x8f, 0x55, 0x6b, 0x23, 0x73, 0xcf, 0x48, 0x95, 0x74, 0x32, 0xa8, 0xea, 0xd5, 0x28, 0x4a, 0xe9, 0x78, 0xf7, 0x9e, 0x7a, 0x30, 0xc8, 0x55, 0xaf, 0x67, 0xcd, 0x8d, 0x37, 0xb0, 0x54, 0x19, 0x5e, 0x8a, 0xc6, 0xdb, 0x76, 0xa5, 0x87, 0xc2, 0x80, 0x67, 0xd7, 0x3f, 0x9f, 0xf9, 0x51, 0x77, 0x1f, 0x11, 0xd7, 0x88, 0xc0, 0x97, 0xcc, 0xfb, 0x18, 0x49, 0x17, 0xe1, 0x5c, 0x78, 0x74, }; static const unsigned char ecdh_brainpoolp320r1_686_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_686_sharedsecret[] = { 0x75, 0x06, 0x24, 0x91, 0xbe, 0xcc, 0xe0, 0x1b, 0x25, 0xf5, 0x80, 0x85, 0xe0, 0x33, 0x0f, 0xcd, 0x22, 0xec, 0x1a, 0xfc, 0x61, 0xdf, 0x92, 0xc8, 0x58, 0x4e, 0xbe, 0x9c, 0x84, 0xcd, 0x30, 0x8a, 0x36, 0x19, 0xa9, 0xa0, 0x0c, 0xd6, 0xf0, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_686 = { .name = "ecdh_brainpoolp320r1_686", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_686_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_686_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_686_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 42 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 687 for ECDH, tcId is 43 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_687_peerpubkey[] = { 0x17, 0x30, 0x99, 0x37, 0xc5, 0x0a, 0x7b, 0x08, 0x09, 0x01, 0xda, 0xdf, 0xad, 0x0f, 0xef, 0x03, 0xe6, 0xec, 0xd2, 0x53, 0x20, 0x03, 0xa4, 0x65, 0x1d, 0xab, 0x6c, 0x3c, 0x9e, 0x0b, 0x9d, 0x50, 0xd7, 0xb1, 0xfe, 0xec, 0x3a, 0x34, 0x2c, 0x42, 0x5a, 0xfc, 0xd8, 0xd9, 0x79, 0xd9, 0xaf, 0x01, 0xac, 0x08, 0xd8, 0xad, 0x86, 0x82, 0x6e, 0xe0, 0x95, 0xe6, 0x47, 0xac, 0x40, 0x6f, 0x39, 0xf0, 0x5b, 0xc3, 0x4e, 0x6a, 0xca, 0x15, 0x9b, 0x5f, 0xca, 0x94, 0xba, 0x98, 0x82, 0x9e, 0x50, 0x5e, }; static const unsigned char ecdh_brainpoolp320r1_687_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_687_sharedsecret[] = { 0x76, 0xe9, 0xc8, 0x6c, 0x1c, 0x5f, 0x0a, 0xab, 0x62, 0x9c, 0x26, 0xb6, 0x55, 0x9d, 0x76, 0x44, 0x77, 0x7a, 0x39, 0xd4, 0x67, 0xc3, 0xcf, 0x0d, 0xed, 0x0e, 0xec, 0xb2, 0xc0, 0xe2, 0x11, 0xce, 0xd1, 0x04, 0xff, 0xb9, 0x94, 0xe0, 0x19, 0xc8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_687 = { .name = "ecdh_brainpoolp320r1_687", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_687_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_687_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_687_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 43 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 688 for ECDH, tcId is 44 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_688_peerpubkey[] = { 0x61, 0x69, 0x6b, 0x1d, 0x26, 0x3a, 0x26, 0x7e, 0xe0, 0xcd, 0xf8, 0xff, 0x89, 0x64, 0x84, 0xcb, 0x8e, 0x4e, 0xe9, 0x99, 0x1e, 0xc7, 0x31, 0x61, 0xa9, 0x65, 0x96, 0x7f, 0xcc, 0x3b, 0xb1, 0xd4, 0xc8, 0xc1, 0x6f, 0xe2, 0xe9, 0x75, 0xd9, 0x63, 0x8d, 0x45, 0xa2, 0x39, 0xb3, 0x09, 0x75, 0x0f, 0xd2, 0xd8, 0x4f, 0x5b, 0x55, 0xa4, 0x90, 0x90, 0xfe, 0x7e, 0x76, 0x0a, 0x66, 0xd0, 0xd0, 0x85, 0xf1, 0x8d, 0xa3, 0x21, 0x33, 0xc1, 0x63, 0xb3, 0x62, 0x9e, 0xa9, 0x7d, 0xeb, 0xba, 0x49, 0x99, }; static const unsigned char ecdh_brainpoolp320r1_688_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_688_sharedsecret[] = { 0x10, 0xca, 0xef, 0xa6, 0x0c, 0xbe, 0x1d, 0x9f, 0x15, 0xe7, 0x21, 0x9f, 0x90, 0x65, 0x4c, 0x32, 0xc0, 0x63, 0x22, 0x75, 0x41, 0xf3, 0xd1, 0xba, 0x0c, 0xde, 0x2c, 0x15, 0x7e, 0x82, 0x3d, 0x0a, 0xe4, 0x0a, 0xa1, 0xf5, 0x7b, 0xef, 0x66, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_688 = { .name = "ecdh_brainpoolp320r1_688", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_688_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_688_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_688_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 44 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 689 for ECDH, tcId is 45 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_689_peerpubkey[] = { 0x3a, 0xce, 0x87, 0x48, 0xbf, 0x11, 0xb1, 0x43, 0x9e, 0xe7, 0x6a, 0x36, 0x14, 0x69, 0xc8, 0x0c, 0xc6, 0xd9, 0x99, 0x72, 0x64, 0x09, 0xd5, 0x59, 0x7e, 0xea, 0x79, 0x84, 0xbf, 0x8b, 0xda, 0xda, 0x5d, 0x62, 0x97, 0x38, 0x48, 0xf0, 0x21, 0xf4, 0x4a, 0x64, 0x79, 0x92, 0x35, 0x39, 0x36, 0x6b, 0x5a, 0x48, 0x1c, 0xaf, 0x09, 0x40, 0x78, 0xe9, 0xe5, 0x1c, 0x56, 0xe6, 0x8b, 0x49, 0x12, 0xae, 0x07, 0x2c, 0x65, 0x31, 0xe5, 0xe1, 0xd0, 0xd9, 0x24, 0x9b, 0x6b, 0xaf, 0xc4, 0x15, 0xa7, 0x0c, }; static const unsigned char ecdh_brainpoolp320r1_689_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_689_sharedsecret[] = { 0x0e, 0x13, 0x79, 0xe1, 0xf9, 0x68, 0x71, 0x95, 0x71, 0xc4, 0xd2, 0x77, 0xf3, 0x6c, 0x83, 0xc5, 0xfe, 0x4c, 0x6c, 0xea, 0xdf, 0xa9, 0x97, 0x5d, 0xc7, 0x7d, 0x7a, 0xc4, 0x9d, 0x8a, 0x4f, 0x0c, 0xc3, 0xd4, 0xc4, 0x73, 0x6d, 0xe0, 0x25, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_689 = { .name = "ecdh_brainpoolp320r1_689", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_689_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_689_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_689_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 45 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 690 for ECDH, tcId is 46 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_690_peerpubkey[] = { 0x33, 0x67, 0xb7, 0x9c, 0xa5, 0x53, 0xef, 0xbe, 0xa2, 0x3f, 0x54, 0x47, 0xb2, 0xe2, 0x87, 0xfe, 0x90, 0x83, 0x62, 0xe2, 0xde, 0x5a, 0xe1, 0x2f, 0x63, 0x51, 0xa5, 0x85, 0x1c, 0x7a, 0xbb, 0x27, 0x99, 0xc5, 0xe7, 0x81, 0x1a, 0x3d, 0xfc, 0xda, 0x9d, 0x6f, 0x29, 0x28, 0xe9, 0x21, 0x31, 0x03, 0x09, 0x32, 0xd1, 0xd5, 0x3d, 0xac, 0xd6, 0x06, 0x5c, 0xc1, 0xfb, 0x74, 0x14, 0x42, 0x15, 0xb1, 0x40, 0xf1, 0xca, 0x4f, 0x7e, 0x63, 0x97, 0xe7, 0x44, 0xa9, 0x53, 0x29, 0x32, 0x35, 0x0d, 0xaa, }; static const unsigned char ecdh_brainpoolp320r1_690_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_690_sharedsecret[] = { 0x94, 0xf4, 0x25, 0x11, 0x39, 0xac, 0xf4, 0xd8, 0xea, 0x84, 0x5e, 0x08, 0xf6, 0x6c, 0x66, 0x02, 0x46, 0x83, 0xa8, 0x72, 0xfe, 0x3d, 0xb3, 0x23, 0xdb, 0xa4, 0x3c, 0x3a, 0x0a, 0x4d, 0xd2, 0xb4, 0x79, 0xf3, 0xa3, 0xf5, 0x2b, 0xda, 0xd1, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_690 = { .name = "ecdh_brainpoolp320r1_690", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_690_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_690_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_690_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 46 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 691 for ECDH, tcId is 47 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_691_peerpubkey[] = { 0x0a, 0xb3, 0xe0, 0x41, 0xdc, 0xe7, 0x8e, 0x43, 0xa0, 0xd7, 0x31, 0x22, 0xf0, 0x5c, 0xce, 0x75, 0xfa, 0xc5, 0x6d, 0xf8, 0x29, 0x68, 0x5f, 0xec, 0x71, 0xda, 0xa4, 0x97, 0xa1, 0xf8, 0x08, 0xc1, 0xa8, 0xee, 0x89, 0x3e, 0x56, 0x01, 0x03, 0xb3, 0x0f, 0x4b, 0xe3, 0x3b, 0x0a, 0x5d, 0xd3, 0x19, 0xac, 0xc8, 0xe6, 0xe0, 0xa4, 0x61, 0xb2, 0x30, 0x5a, 0x31, 0x2e, 0x76, 0xe2, 0xe8, 0x49, 0x1d, 0x57, 0xe2, 0xc9, 0xd1, 0x58, 0x64, 0x00, 0x97, 0xed, 0x62, 0xf0, 0x0b, 0x32, 0x5f, 0xf3, 0x6b, }; static const unsigned char ecdh_brainpoolp320r1_691_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_691_sharedsecret[] = { 0x22, 0xab, 0x7b, 0xa4, 0x79, 0x9d, 0x1d, 0x5d, 0x57, 0x16, 0x14, 0x67, 0x51, 0xae, 0x36, 0x8c, 0xe7, 0x87, 0x38, 0x53, 0x82, 0xb6, 0x2d, 0xf4, 0xba, 0xc7, 0x77, 0x7c, 0xed, 0x19, 0xb5, 0x83, 0x91, 0x09, 0xbb, 0x89, 0x62, 0x2e, 0xd6, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_691 = { .name = "ecdh_brainpoolp320r1_691", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_691_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_691_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_691_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 47 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 692 for ECDH, tcId is 48 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_692_peerpubkey[] = { 0x90, 0xdd, 0xd0, 0xf5, 0x58, 0x0f, 0xe5, 0xf8, 0x7e, 0x8f, 0x21, 0xc9, 0x94, 0x47, 0xd5, 0x4c, 0x41, 0x27, 0x16, 0x55, 0xb9, 0x71, 0xc4, 0x40, 0x93, 0x80, 0x84, 0x8e, 0xe7, 0xe3, 0x31, 0xef, 0xa0, 0x63, 0x9a, 0xdf, 0xcd, 0x1e, 0x48, 0xc1, 0xad, 0x3b, 0xee, 0x32, 0xcb, 0xdf, 0x0a, 0xd5, 0x13, 0xf3, 0x57, 0xb5, 0x49, 0x0c, 0x39, 0xba, 0x2c, 0x17, 0x01, 0xb5, 0x90, 0xb4, 0x4c, 0x9a, 0x84, 0xad, 0xe1, 0x28, 0xfb, 0xb3, 0xc2, 0x01, 0x5b, 0x48, 0x48, 0x07, 0x39, 0xc0, 0x35, 0xb2, }; static const unsigned char ecdh_brainpoolp320r1_692_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_692_sharedsecret[] = { 0x9b, 0x89, 0x5a, 0xd9, 0x9a, 0xc4, 0xfe, 0x1a, 0x3e, 0xeb, 0x53, 0x37, 0xb0, 0x35, 0xbb, 0x64, 0xf5, 0x81, 0xc0, 0xf3, 0xca, 0x27, 0x1c, 0xca, 0xdd, 0xdf, 0xd8, 0x8a, 0x9d, 0x08, 0x92, 0x66, 0x0b, 0xdb, 0x4f, 0x9a, 0xd1, 0x90, 0x8b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_692 = { .name = "ecdh_brainpoolp320r1_692", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_692_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_692_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_692_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 48 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 693 for ECDH, tcId is 49 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_693_peerpubkey[] = { 0x04, 0xc0, 0xc9, 0x43, 0xbb, 0xdf, 0xcd, 0xc1, 0x2e, 0x8b, 0x4b, 0xce, 0x80, 0xd2, 0x58, 0xcf, 0x5b, 0xcc, 0x9a, 0x0d, 0xd7, 0x2a, 0x7e, 0x83, 0xe2, 0x00, 0xf8, 0xd6, 0x37, 0x6c, 0x10, 0x0f, 0xd4, 0x1d, 0xfb, 0x69, 0x1e, 0x65, 0xf3, 0x83, 0x4e, 0x74, 0x75, 0x9c, 0x85, 0x69, 0x98, 0xe7, 0xe5, 0x5b, 0x8b, 0x57, 0xa3, 0x85, 0x5b, 0xff, 0x6c, 0xa9, 0xea, 0x63, 0x6c, 0xb7, 0x6a, 0xad, 0x77, 0xa9, 0xa0, 0xf4, 0xf7, 0xf9, 0xdd, 0xf0, 0x40, 0x03, 0xc7, 0xc0, 0x2f, 0x36, 0xf6, 0x04, }; static const unsigned char ecdh_brainpoolp320r1_693_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_693_sharedsecret[] = { 0x8b, 0x21, 0x88, 0xcb, 0xa5, 0x24, 0x10, 0xb3, 0xd1, 0xe1, 0xaf, 0xcd, 0xa1, 0xc1, 0xf7, 0x18, 0xb2, 0xe8, 0x2b, 0x90, 0x4e, 0xb9, 0xc0, 0xd0, 0x06, 0x53, 0xeb, 0x12, 0x1d, 0xce, 0xaa, 0xf8, 0x42, 0x96, 0xca, 0x73, 0x6b, 0xa4, 0x47, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_693 = { .name = "ecdh_brainpoolp320r1_693", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_693_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_693_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_693_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 49 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 694 for ECDH, tcId is 50 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_694_peerpubkey[] = { 0x23, 0x74, 0x9d, 0x53, 0xf0, 0xa7, 0x31, 0x19, 0xb7, 0xbc, 0xc0, 0x84, 0xa1, 0xda, 0x7d, 0x22, 0x98, 0x90, 0x72, 0x53, 0x28, 0x2a, 0x4a, 0x94, 0xa8, 0x2c, 0xd5, 0x98, 0x73, 0x4f, 0x8f, 0x2f, 0xab, 0x7b, 0x32, 0x70, 0xf0, 0xa9, 0xc5, 0xc2, 0x6a, 0xbe, 0xb4, 0x6f, 0x96, 0xf9, 0x07, 0x44, 0xa3, 0x55, 0xac, 0xf9, 0x82, 0xa2, 0x24, 0xfd, 0xfc, 0xf5, 0x6a, 0x98, 0xea, 0xf0, 0xf6, 0xe1, 0x49, 0x7f, 0xd9, 0x3e, 0xab, 0x65, 0x03, 0x7b, 0x59, 0x41, 0x5b, 0x63, 0xed, 0x61, 0x0f, 0x16, }; static const unsigned char ecdh_brainpoolp320r1_694_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_694_sharedsecret[] = { 0x42, 0xc2, 0x11, 0xfa, 0x06, 0x15, 0x65, 0xfe, 0x17, 0xa8, 0x5e, 0x71, 0x6f, 0x5e, 0xae, 0x22, 0x2b, 0x96, 0x0b, 0x60, 0xde, 0x85, 0x65, 0x7f, 0xdc, 0x6e, 0x26, 0x48, 0x84, 0xb8, 0xdf, 0x79, 0x02, 0xa5, 0x3e, 0x90, 0x26, 0xe4, 0x19, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_694 = { .name = "ecdh_brainpoolp320r1_694", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_694_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_694_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_694_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 50 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 695 for ECDH, tcId is 51 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_695_peerpubkey[] = { 0x7d, 0x87, 0x1d, 0xf2, 0x17, 0xeb, 0x2f, 0xb0, 0x73, 0x3e, 0xbf, 0x22, 0x2e, 0xe4, 0x76, 0x45, 0x53, 0xf7, 0x83, 0xeb, 0xa5, 0x87, 0x21, 0x22, 0x5f, 0xed, 0x5f, 0xbb, 0x1b, 0xcc, 0x65, 0x42, 0x35, 0xd2, 0x90, 0xf6, 0x2a, 0x61, 0xf0, 0x2f, 0xb2, 0xb3, 0xc2, 0x41, 0xe2, 0x21, 0x92, 0xab, 0x7b, 0x70, 0x5c, 0x44, 0xe0, 0xed, 0x33, 0xe9, 0xb5, 0x89, 0x30, 0x11, 0x4b, 0x4e, 0x43, 0x42, 0xff, 0x86, 0x5f, 0x2b, 0x39, 0xfd, 0xe6, 0xc2, 0xf8, 0x6f, 0xd2, 0xb4, 0xc1, 0xf3, 0x0c, 0x8e, }; static const unsigned char ecdh_brainpoolp320r1_695_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_695_sharedsecret[] = { 0x21, 0x52, 0xa8, 0x57, 0xbf, 0x30, 0xe1, 0x18, 0x94, 0xa8, 0xdc, 0xde, 0x94, 0x2e, 0x0b, 0x4c, 0x4f, 0x22, 0x64, 0x9c, 0xc6, 0x7c, 0x62, 0x4c, 0xc1, 0x2d, 0xf9, 0x60, 0x02, 0xc0, 0x2d, 0x04, 0x32, 0xf7, 0x29, 0xc1, 0x32, 0x11, 0x72, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_695 = { .name = "ecdh_brainpoolp320r1_695", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_695_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_695_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_695_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 51 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 696 for ECDH, tcId is 52 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_696_peerpubkey[] = { 0xca, 0x34, 0xb0, 0x92, 0x18, 0xd1, 0x38, 0xb4, 0x68, 0xdd, 0x6e, 0x71, 0x42, 0x29, 0x6b, 0x61, 0xbd, 0x68, 0xd0, 0x81, 0x5e, 0x90, 0x56, 0x04, 0xcc, 0x0b, 0x5e, 0x84, 0x2d, 0x4e, 0x9c, 0x48, 0x63, 0x81, 0xa8, 0xbc, 0xae, 0x35, 0x3e, 0xb8, 0x98, 0xaa, 0x04, 0xf8, 0x0e, 0xf9, 0xcc, 0x89, 0xec, 0x4c, 0x12, 0x3c, 0x09, 0x00, 0xbc, 0xf1, 0x3b, 0xeb, 0x65, 0x58, 0x04, 0xbc, 0xb8, 0x95, 0xf2, 0xd7, 0x00, 0x93, 0x78, 0xd5, 0x97, 0x88, 0x20, 0x25, 0x0f, 0x7b, 0xeb, 0x87, 0x4e, 0xf1, }; static const unsigned char ecdh_brainpoolp320r1_696_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_696_sharedsecret[] = { 0x55, 0x3f, 0x62, 0x20, 0x97, 0xc5, 0x3e, 0x89, 0x5a, 0x8b, 0x7e, 0xbe, 0xbd, 0x36, 0x02, 0xd1, 0xc8, 0x39, 0x0e, 0xa8, 0x5b, 0x42, 0x40, 0x87, 0x8f, 0x23, 0x3e, 0x10, 0xae, 0x95, 0x64, 0xc0, 0xf5, 0x2d, 0x31, 0xf5, 0x7f, 0x90, 0x2a, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_696 = { .name = "ecdh_brainpoolp320r1_696", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_696_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_696_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_696_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 52 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 697 for ECDH, tcId is 53 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_697_peerpubkey[] = { 0x16, 0xe1, 0x9b, 0x73, 0x77, 0x30, 0xc3, 0x4e, 0x15, 0xb3, 0x87, 0x35, 0xaf, 0xa3, 0x3f, 0x86, 0x7d, 0x3d, 0x2c, 0x71, 0xcd, 0xf4, 0x55, 0xc7, 0x0a, 0xa4, 0x00, 0x03, 0x4a, 0xc6, 0x5d, 0x8f, 0xfa, 0x7f, 0x81, 0xe7, 0x98, 0x7d, 0xf3, 0x80, 0x93, 0x04, 0xec, 0x72, 0x8d, 0x3c, 0xe6, 0xf3, 0x61, 0x64, 0x6f, 0x18, 0x57, 0x37, 0x6a, 0xce, 0xd7, 0xc3, 0xd7, 0xd6, 0xe8, 0x10, 0x81, 0xbe, 0xcb, 0x08, 0x86, 0xd1, 0x1b, 0xaa, 0xb5, 0x0a, 0x4f, 0x39, 0x2f, 0x5f, 0x4d, 0x93, 0xfe, 0x0f, }; static const unsigned char ecdh_brainpoolp320r1_697_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_697_sharedsecret[] = { 0x5d, 0x58, 0x3d, 0x61, 0xcd, 0xcf, 0x95, 0x17, 0xda, 0x03, 0x85, 0x18, 0x69, 0xce, 0x31, 0x40, 0x3e, 0x65, 0x13, 0x41, 0xb3, 0x88, 0xc0, 0x82, 0x6c, 0xd7, 0x63, 0xb1, 0xb7, 0x52, 0x13, 0x96, 0x53, 0x36, 0x73, 0x0f, 0x40, 0x20, 0x6b, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_697 = { .name = "ecdh_brainpoolp320r1_697", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_697_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_697_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_697_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 53 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 698 for ECDH, tcId is 54 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_698_peerpubkey[] = { 0x58, 0x7c, 0xab, 0xfc, 0x69, 0xb1, 0xbc, 0x3e, 0x7d, 0x29, 0xe4, 0xee, 0x25, 0xb6, 0x45, 0xd3, 0x57, 0xde, 0xe7, 0xf2, 0x45, 0xfd, 0x5f, 0x8a, 0x9a, 0x08, 0xba, 0x0a, 0x03, 0x25, 0x60, 0xa2, 0x3e, 0x3e, 0xa8, 0x8a, 0xe3, 0x40, 0x58, 0x9b, 0xcd, 0xa5, 0x75, 0xf3, 0xc6, 0x6f, 0x2c, 0xf7, 0x4a, 0xd0, 0xac, 0x25, 0xda, 0x28, 0x29, 0xa6, 0x81, 0x01, 0xbc, 0x26, 0x95, 0x35, 0x3b, 0xec, 0xe6, 0xa3, 0x37, 0x47, 0x83, 0x3d, 0x01, 0xea, 0x99, 0x63, 0x60, 0x0b, 0x0f, 0x70, 0xbe, 0xfc, }; static const unsigned char ecdh_brainpoolp320r1_698_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_698_sharedsecret[] = { 0x19, 0xb5, 0x78, 0xaf, 0xe0, 0x10, 0x35, 0x96, 0xb1, 0x69, 0xfa, 0x47, 0x98, 0x4d, 0x3a, 0x6a, 0x10, 0xda, 0x05, 0x3e, 0x56, 0x4b, 0x46, 0x7d, 0xc6, 0xfc, 0xca, 0x1f, 0xa8, 0x3b, 0x61, 0x40, 0xac, 0x07, 0xf4, 0x7c, 0x93, 0xb4, 0xd4, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_698 = { .name = "ecdh_brainpoolp320r1_698", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_698_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_698_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_698_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 54 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 699 for ECDH, tcId is 55 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_699_peerpubkey[] = { 0x05, 0xe8, 0x53, 0x79, 0x74, 0x39, 0x17, 0x2a, 0xa2, 0x72, 0xa8, 0xf4, 0x3a, 0xb9, 0xda, 0xb9, 0x92, 0x4b, 0x51, 0xf6, 0x7f, 0x58, 0x7b, 0x89, 0xe3, 0x03, 0xef, 0x91, 0x31, 0xc1, 0x3e, 0xe6, 0x4a, 0xad, 0x1c, 0x07, 0x45, 0xbf, 0xb3, 0xcf, 0x6f, 0x1f, 0x04, 0x77, 0x5d, 0x3c, 0x25, 0x54, 0x41, 0x7e, 0x13, 0xf8, 0x83, 0x62, 0xe3, 0x13, 0x8b, 0x53, 0xa8, 0xf8, 0xbe, 0xd6, 0xf9, 0x62, 0x9c, 0x13, 0x78, 0xc9, 0x2b, 0x5a, 0x73, 0xff, 0xb2, 0x0b, 0x2f, 0x61, 0x98, 0xc7, 0x45, 0xf8, }; static const unsigned char ecdh_brainpoolp320r1_699_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_699_sharedsecret[] = { 0x14, 0x00, 0xcc, 0x44, 0x6a, 0xf3, 0x9e, 0x09, 0x77, 0xc5, 0xe2, 0xd4, 0x52, 0x93, 0xfa, 0x99, 0x55, 0x38, 0x63, 0x3a, 0xb6, 0xbe, 0xde, 0x31, 0x60, 0x8f, 0xdd, 0xf0, 0x34, 0x62, 0xe0, 0x34, 0xe2, 0x87, 0x8e, 0x6a, 0x09, 0x4f, 0xba, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_699 = { .name = "ecdh_brainpoolp320r1_699", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_699_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_699_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_699_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 55 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 700 for ECDH, tcId is 56 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_700_peerpubkey[] = { 0xd0, 0xeb, 0xc8, 0x5c, 0xbe, 0xcc, 0x65, 0xe5, 0x64, 0xf1, 0x87, 0x31, 0xb6, 0xb4, 0xac, 0x16, 0x03, 0xac, 0x51, 0x9f, 0xa5, 0x71, 0x6b, 0xe3, 0xb6, 0x5c, 0xf2, 0xbd, 0xe0, 0x7c, 0xa1, 0xf6, 0xde, 0x0c, 0x85, 0x32, 0x9d, 0x9b, 0x74, 0x54, 0xc8, 0xb7, 0xe5, 0x4c, 0x5d, 0xa5, 0x9a, 0x77, 0x9c, 0x00, 0xa5, 0x0d, 0xdd, 0xb7, 0xa0, 0x6c, 0x9e, 0x0e, 0x1b, 0x79, 0xdf, 0xfd, 0x3b, 0x73, 0x92, 0x50, 0x30, 0x88, 0x8c, 0xac, 0x08, 0x61, 0x63, 0x46, 0x08, 0x18, 0x13, 0xca, 0xd4, 0x9d, }; static const unsigned char ecdh_brainpoolp320r1_700_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_700_sharedsecret[] = { 0x0e, 0xdd, 0x79, 0xe8, 0xb9, 0xd6, 0x7a, 0x0b, 0xa4, 0x75, 0xbf, 0xf4, 0x61, 0x41, 0xfb, 0xbc, 0xb2, 0x57, 0xec, 0x77, 0xbd, 0x2d, 0xd1, 0x49, 0x40, 0xb6, 0x6a, 0xd4, 0xaa, 0x14, 0xfd, 0x7c, 0x9c, 0x1f, 0x8e, 0xfc, 0xf6, 0x8d, 0xd1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_700 = { .name = "ecdh_brainpoolp320r1_700", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_700_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_700_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_700_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 56 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 701 for ECDH, tcId is 57 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_701_peerpubkey[] = { 0x6c, 0xfa, 0x92, 0xd0, 0x82, 0x3a, 0xb6, 0x2f, 0x32, 0xd3, 0x2d, 0xd6, 0x26, 0xc3, 0xec, 0x99, 0x96, 0x54, 0xeb, 0xb4, 0x47, 0x17, 0xf8, 0xac, 0x66, 0xea, 0x30, 0xc7, 0x1a, 0xa8, 0x39, 0x36, 0x92, 0xbc, 0x4f, 0xa8, 0xe0, 0x34, 0x72, 0x83, 0x5c, 0x7d, 0xee, 0x56, 0x2e, 0x45, 0x29, 0x20, 0x9b, 0x47, 0xa3, 0xce, 0x7b, 0x59, 0x8a, 0xcc, 0x0b, 0xb9, 0x46, 0x83, 0x70, 0x4f, 0x12, 0xd0, 0x5f, 0xa2, 0x62, 0xcd, 0x03, 0x7c, 0xbf, 0x5d, 0x5c, 0x30, 0x15, 0xe8, 0x23, 0x41, 0x21, 0x38, }; static const unsigned char ecdh_brainpoolp320r1_701_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_701_sharedsecret[] = { 0x59, 0x86, 0x74, 0x2c, 0xb7, 0xab, 0x5f, 0xa0, 0x59, 0xc3, 0xce, 0x98, 0xee, 0xd8, 0x88, 0x95, 0xe2, 0xc8, 0xa5, 0x4b, 0x4e, 0x8a, 0xbb, 0x4d, 0x6c, 0x61, 0x17, 0xb5, 0x2d, 0x6d, 0x4d, 0x1e, 0xfb, 0x51, 0xf7, 0x16, 0x5d, 0xa6, 0x18, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_701 = { .name = "ecdh_brainpoolp320r1_701", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_701_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_701_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_701_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 57 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 702 for ECDH, tcId is 58 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_702_peerpubkey[] = { 0x53, 0x02, 0x49, 0xb8, 0xb2, 0xb1, 0xc0, 0x90, 0xdf, 0x7d, 0x54, 0x65, 0xfd, 0x06, 0x4a, 0x72, 0x5c, 0xdc, 0xdd, 0xc3, 0xa1, 0xbd, 0x23, 0xfa, 0x60, 0xd0, 0xa9, 0x00, 0x80, 0x8a, 0x30, 0xfc, 0x44, 0xbb, 0x4f, 0x86, 0x80, 0x66, 0x25, 0x00, 0xba, 0xf7, 0xc8, 0xbb, 0xc5, 0x41, 0x7a, 0x87, 0xfd, 0xde, 0x94, 0xfc, 0x39, 0x9f, 0x0a, 0x9d, 0xf3, 0x4c, 0xad, 0x24, 0xc3, 0x0e, 0x0f, 0x62, 0xc7, 0x30, 0x21, 0xd0, 0x27, 0xf6, 0x4d, 0x46, 0x0c, 0x9d, 0x25, 0xd6, 0x3d, 0xc7, 0xb4, 0x87, }; static const unsigned char ecdh_brainpoolp320r1_702_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_702_sharedsecret[] = { 0xa4, 0xdc, 0x0f, 0xc3, 0x7a, 0x25, 0x26, 0xf1, 0xe8, 0xac, 0xd1, 0x29, 0xba, 0x2e, 0x4b, 0x1c, 0x8e, 0x51, 0x00, 0x38, 0x36, 0x05, 0x07, 0xb8, 0xac, 0xb6, 0xbb, 0x83, 0x28, 0x18, 0xae, 0x75, 0xf0, 0x4b, 0x0d, 0xa2, 0x10, 0x6b, 0xc1, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_702 = { .name = "ecdh_brainpoolp320r1_702", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_702_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_702_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_702_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 58 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 703 for ECDH, tcId is 59 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_703_peerpubkey[] = { 0x41, 0xe8, 0x8d, 0xe6, 0x85, 0x7d, 0x88, 0x60, 0x1f, 0x52, 0xc9, 0x6f, 0x6d, 0x14, 0xd9, 0xe5, 0x7e, 0xf5, 0x60, 0x4e, 0x2e, 0xf5, 0xca, 0xfc, 0xbd, 0x4c, 0x05, 0x28, 0x23, 0xbc, 0xa1, 0x40, 0xb9, 0xeb, 0x50, 0x46, 0xd8, 0x24, 0x83, 0xd2, 0x98, 0x56, 0xaf, 0x41, 0x00, 0x32, 0x3d, 0xf9, 0x35, 0x63, 0x46, 0x89, 0xe8, 0x7f, 0x8f, 0x06, 0x54, 0x07, 0xc5, 0xb9, 0x7f, 0x8f, 0xf0, 0x4b, 0xea, 0x2f, 0xd2, 0xd5, 0x1e, 0xde, 0xe9, 0xd7, 0x37, 0x0e, 0xf5, 0x1f, 0x9f, 0x33, 0x98, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_703_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_703_sharedsecret[] = { 0x90, 0x92, 0x67, 0xc8, 0xa3, 0x7f, 0xa7, 0x2f, 0xb4, 0xab, 0xbb, 0x96, 0x0e, 0xbb, 0xab, 0x97, 0xa8, 0xbd, 0x8e, 0x0d, 0xd5, 0xd7, 0x21, 0x8d, 0x2a, 0x2e, 0xea, 0xb2, 0x81, 0x61, 0x6e, 0x34, 0xb4, 0x67, 0xa6, 0xc1, 0x4f, 0x5b, 0xb1, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_703 = { .name = "ecdh_brainpoolp320r1_703", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_703_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_703_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_703_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 59 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 704 for ECDH, tcId is 60 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_704_peerpubkey[] = { 0x12, 0x40, 0x07, 0x44, 0x27, 0xdb, 0xa7, 0xcc, 0xa8, 0xf9, 0xe3, 0x9f, 0x02, 0xa2, 0x1b, 0x09, 0x1a, 0x99, 0x0b, 0xf7, 0x47, 0xf7, 0xae, 0x62, 0x61, 0x7e, 0x35, 0x95, 0xcc, 0x7c, 0xd3, 0x13, 0xe8, 0x3c, 0xce, 0x1f, 0x47, 0x26, 0x76, 0x60, 0x96, 0xb0, 0x96, 0x9c, 0xbd, 0x33, 0x16, 0x17, 0x6a, 0x5b, 0x9f, 0x3e, 0x4e, 0x86, 0xf0, 0x16, 0x64, 0x0a, 0x62, 0xd8, 0x49, 0xb1, 0xee, 0xe8, 0x42, 0xe1, 0xc5, 0xc3, 0x4c, 0xab, 0x79, 0x0a, 0xf9, 0xfb, 0x52, 0x8e, 0xe7, 0xc0, 0xe7, 0xda, }; static const unsigned char ecdh_brainpoolp320r1_704_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_704_sharedsecret[] = { 0x89, 0x26, 0x92, 0x46, 0xe1, 0xaf, 0x79, 0x38, 0x19, 0x52, 0x1d, 0xcd, 0x86, 0xe6, 0x4f, 0xd1, 0xc6, 0x58, 0xd3, 0xd7, 0x0c, 0xb3, 0x68, 0x74, 0xea, 0xc0, 0x1b, 0x4d, 0xe3, 0x08, 0x65, 0x65, 0xda, 0xa8, 0xe9, 0x22, 0x4c, 0xff, 0x7c, 0x3a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_704 = { .name = "ecdh_brainpoolp320r1_704", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_704_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_704_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_704_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 60 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 705 for ECDH, tcId is 61 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_705_peerpubkey[] = { 0xad, 0xda, 0x30, 0x7c, 0x9e, 0x3c, 0xb7, 0x97, 0x37, 0x33, 0xc8, 0x18, 0x28, 0xd1, 0x4c, 0xe8, 0x2e, 0xb6, 0x19, 0x19, 0xe6, 0xb0, 0xa6, 0xa7, 0xd1, 0xd5, 0x28, 0x67, 0x6c, 0xda, 0x2b, 0x97, 0xb5, 0xbb, 0xd3, 0x02, 0x18, 0xfc, 0x08, 0xeb, 0x84, 0xe0, 0x8e, 0xfd, 0xd2, 0x8b, 0xb5, 0x88, 0x7b, 0x39, 0x16, 0x27, 0x9f, 0x3f, 0xbd, 0xd6, 0x8e, 0x08, 0x6b, 0x62, 0x13, 0xf9, 0x4a, 0xb6, 0x51, 0xa9, 0x82, 0xf4, 0x6d, 0xb8, 0xa1, 0x71, 0x20, 0x9b, 0xc7, 0xae, 0x0b, 0xad, 0x05, 0xe0, }; static const unsigned char ecdh_brainpoolp320r1_705_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_705_sharedsecret[] = { 0x25, 0xa3, 0x5a, 0xc0, 0x9f, 0xd8, 0x51, 0xc0, 0x99, 0x72, 0x7f, 0xed, 0xa6, 0x3e, 0xac, 0xca, 0xc1, 0x20, 0x96, 0xc3, 0xa6, 0x96, 0x5b, 0xe3, 0xae, 0xd1, 0x64, 0x2c, 0x17, 0x35, 0x28, 0x3c, 0xb3, 0x70, 0x75, 0xa8, 0xa9, 0x0a, 0x74, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_705 = { .name = "ecdh_brainpoolp320r1_705", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_705_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_705_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_705_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 61 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 706 for ECDH, tcId is 62 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_706_peerpubkey[] = { 0x59, 0x62, 0x46, 0x46, 0x0a, 0x65, 0x1d, 0xcd, 0xfb, 0x75, 0x4e, 0x9d, 0xc7, 0x29, 0xc1, 0x02, 0xa7, 0xdc, 0xa0, 0xea, 0x91, 0x8c, 0xba, 0x83, 0x63, 0x15, 0x29, 0x02, 0xea, 0xc2, 0x66, 0x66, 0x12, 0x11, 0xbc, 0x2d, 0xea, 0x39, 0x48, 0x37, 0xad, 0x20, 0x33, 0xca, 0x24, 0x7f, 0xcf, 0x87, 0x06, 0x88, 0x52, 0x7f, 0x0e, 0x6c, 0x78, 0x50, 0x73, 0x47, 0x5d, 0x6c, 0xb3, 0xa5, 0x4d, 0x6e, 0x7a, 0xe9, 0x0c, 0x38, 0x73, 0x2e, 0x61, 0xe0, 0xb6, 0x35, 0x43, 0x49, 0x78, 0x01, 0xc2, 0x1a, }; static const unsigned char ecdh_brainpoolp320r1_706_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_706_sharedsecret[] = { 0xb6, 0x7e, 0x4e, 0xc5, 0x57, 0xa1, 0x08, 0x01, 0xb9, 0xc7, 0xf2, 0xdc, 0x18, 0xf5, 0xb6, 0xc8, 0xcb, 0xc6, 0x69, 0x91, 0x86, 0x40, 0xc5, 0xe9, 0xab, 0x13, 0x20, 0x2f, 0x67, 0xd2, 0x7f, 0x2c, 0x3f, 0xb1, 0x61, 0x2d, 0x66, 0x52, 0x8e, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_706 = { .name = "ecdh_brainpoolp320r1_706", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_706_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_706_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_706_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 62 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 707 for ECDH, tcId is 63 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_707_peerpubkey[] = { 0x88, 0xeb, 0x56, 0x16, 0x3b, 0x06, 0x12, 0xa2, 0xb4, 0xa6, 0xcf, 0x7d, 0x3b, 0xa4, 0x6f, 0xd4, 0x6d, 0x81, 0xe9, 0x61, 0xec, 0x27, 0x71, 0x68, 0x52, 0xa1, 0x9c, 0x6d, 0xac, 0x84, 0x4c, 0x5c, 0xc3, 0xb7, 0x54, 0x37, 0x6c, 0x14, 0x7f, 0x87, 0x02, 0x71, 0x13, 0x07, 0x98, 0x15, 0xc7, 0xa2, 0x24, 0x06, 0x01, 0x3c, 0x54, 0xa5, 0xcf, 0xb6, 0x8b, 0xe4, 0x66, 0xf4, 0x83, 0x32, 0x13, 0x5b, 0xbe, 0xee, 0x59, 0x2f, 0xfd, 0x64, 0x91, 0x36, 0x32, 0x25, 0x49, 0xd4, 0x21, 0x67, 0x1c, 0x93, }; static const unsigned char ecdh_brainpoolp320r1_707_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_707_sharedsecret[] = { 0x80, 0xe1, 0x9c, 0x54, 0x68, 0x78, 0x6f, 0x33, 0xda, 0x3c, 0xa6, 0xb7, 0xc4, 0xc0, 0x2a, 0x4b, 0x28, 0xfd, 0xe8, 0x57, 0xa4, 0x07, 0x62, 0x2f, 0xf5, 0x1b, 0xde, 0x6f, 0x75, 0x07, 0x14, 0xfd, 0xab, 0x01, 0xb3, 0xdc, 0x8d, 0x2f, 0x32, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_707 = { .name = "ecdh_brainpoolp320r1_707", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_707_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_707_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_707_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 63 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 708 for ECDH, tcId is 64 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_708_peerpubkey[] = { 0x84, 0x2b, 0xb9, 0x9f, 0xff, 0x91, 0x3e, 0x76, 0x4f, 0x2d, 0xbb, 0x37, 0x70, 0x8a, 0x3d, 0x6e, 0xb4, 0x64, 0x31, 0x8f, 0x86, 0x2b, 0x9f, 0x07, 0xc0, 0x51, 0x90, 0xe4, 0xa6, 0x88, 0x74, 0xe9, 0xde, 0xcf, 0xe0, 0xfa, 0xea, 0xdf, 0x22, 0x81, 0x71, 0x4b, 0x1f, 0x0d, 0xe6, 0x9e, 0x5f, 0x7a, 0x58, 0xc5, 0xda, 0xa3, 0x07, 0x4f, 0x47, 0x53, 0x77, 0xba, 0x10, 0x84, 0x39, 0x49, 0xb4, 0xe5, 0xe2, 0x14, 0x19, 0xfd, 0xcd, 0x4c, 0x8c, 0x0d, 0x29, 0x55, 0xe9, 0xe8, 0x40, 0x70, 0xac, 0x51, }; static const unsigned char ecdh_brainpoolp320r1_708_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_708_sharedsecret[] = { 0x15, 0x7f, 0x71, 0xf1, 0xea, 0x01, 0xef, 0xe0, 0x8b, 0x61, 0xcb, 0xde, 0xfa, 0x2b, 0x84, 0xdf, 0x5a, 0x3b, 0x24, 0x1f, 0x42, 0x8d, 0xa0, 0x99, 0xda, 0xde, 0x6d, 0x3f, 0x6b, 0x09, 0x95, 0xe0, 0xcf, 0xbf, 0xc6, 0x8d, 0xa3, 0x01, 0x57, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_708 = { .name = "ecdh_brainpoolp320r1_708", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_708_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_708_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_708_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 64 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 709 for ECDH, tcId is 65 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_709_peerpubkey[] = { 0x5d, 0xc7, 0x33, 0x65, 0x7a, 0x02, 0x17, 0x4b, 0x19, 0xd3, 0xac, 0x4f, 0x51, 0x4d, 0x1b, 0x6a, 0x8c, 0xb6, 0x0a, 0x08, 0xec, 0xa9, 0x82, 0x89, 0xb2, 0x5f, 0x34, 0x4f, 0xd6, 0x67, 0xb1, 0xa7, 0xd2, 0x1e, 0x42, 0x9a, 0x50, 0xb2, 0x37, 0x88, 0x2c, 0x8c, 0x16, 0xdd, 0x42, 0x6c, 0xff, 0xa8, 0xfe, 0xfe, 0xe7, 0xe7, 0xb6, 0x3e, 0x4b, 0x58, 0xcf, 0x2a, 0xa7, 0x6f, 0x41, 0x50, 0x3a, 0xb1, 0xb6, 0x43, 0x1f, 0x59, 0x9e, 0xb8, 0x16, 0x2f, 0x01, 0xa6, 0x79, 0x98, 0x1d, 0x3b, 0x1f, 0x8c, }; static const unsigned char ecdh_brainpoolp320r1_709_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_709_sharedsecret[] = { 0xbd, 0xae, 0xd3, 0xe4, 0xf7, 0xf2, 0x0e, 0x5b, 0xa8, 0x17, 0x0f, 0x73, 0x8a, 0x8c, 0x2a, 0xb4, 0xa5, 0x73, 0x84, 0xe1, 0x3b, 0x43, 0xe7, 0x53, 0xe4, 0x52, 0xb6, 0x7d, 0x40, 0x54, 0x8d, 0x4d, 0x43, 0x04, 0xca, 0x85, 0xfa, 0x47, 0x4c, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_709 = { .name = "ecdh_brainpoolp320r1_709", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_709_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_709_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_709_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 65 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 710 for ECDH, tcId is 66 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_710_peerpubkey[] = { 0xb4, 0x7b, 0xdd, 0x0c, 0x25, 0xe5, 0x6d, 0x99, 0x91, 0x4f, 0xec, 0x42, 0x82, 0x53, 0x0f, 0x61, 0xe5, 0xdb, 0x1b, 0x81, 0x00, 0x7e, 0xa1, 0x14, 0x1a, 0x2a, 0xe0, 0x9c, 0x17, 0x1e, 0xc5, 0xce, 0xa4, 0xce, 0xb1, 0x45, 0xbc, 0xeb, 0x6e, 0xec, 0xcb, 0x8a, 0xd5, 0x79, 0x2d, 0x9c, 0x06, 0x8f, 0xb6, 0xca, 0x30, 0xfe, 0xdd, 0x3b, 0xf5, 0xb3, 0x35, 0x31, 0xc1, 0x20, 0x0f, 0x6e, 0x1a, 0x7c, 0x29, 0xfa, 0x75, 0xa5, 0xcb, 0xc5, 0xde, 0x94, 0x99, 0x3a, 0x85, 0x40, 0xdf, 0x48, 0xe5, 0x42, }; static const unsigned char ecdh_brainpoolp320r1_710_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_710_sharedsecret[] = { 0xcc, 0xa5, 0xda, 0xc5, 0xb7, 0xb1, 0xe7, 0x5a, 0xe0, 0x95, 0xda, 0x73, 0x80, 0xdd, 0x00, 0xad, 0x4e, 0xb1, 0x1e, 0xb3, 0xae, 0xeb, 0xc6, 0xb6, 0xcd, 0x39, 0x77, 0xff, 0x37, 0xa6, 0x70, 0xa5, 0x28, 0x26, 0xb3, 0x0e, 0x7a, 0x65, 0x9a, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_710 = { .name = "ecdh_brainpoolp320r1_710", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_710_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_710_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_710_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 66 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 711 for ECDH, tcId is 67 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_711_peerpubkey[] = { 0x95, 0x94, 0x85, 0x3b, 0x1d, 0x27, 0xb6, 0x7e, 0x21, 0xa8, 0x07, 0x30, 0x74, 0x76, 0xe5, 0x97, 0xcc, 0x62, 0x84, 0x6a, 0x52, 0x4a, 0x6c, 0xef, 0xe3, 0x3d, 0x05, 0xee, 0x09, 0xd0, 0x24, 0xa7, 0xed, 0x6d, 0x78, 0xf7, 0x37, 0x75, 0x77, 0x89, 0x02, 0x95, 0xa8, 0x6a, 0xf9, 0x5c, 0x63, 0xaf, 0xd7, 0x1e, 0x7c, 0x0c, 0x09, 0xc5, 0x54, 0xb9, 0x5d, 0x87, 0x43, 0xdb, 0xde, 0x99, 0x7e, 0xa7, 0x98, 0x0b, 0xc8, 0x40, 0x22, 0xf4, 0x7a, 0x00, 0x9f, 0xf6, 0x5e, 0xa1, 0x46, 0xf1, 0xd6, 0xa6, }; static const unsigned char ecdh_brainpoolp320r1_711_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_711_sharedsecret[] = { 0x78, 0x05, 0x1e, 0xaa, 0xe9, 0x2c, 0xed, 0x6c, 0x02, 0xa3, 0x81, 0x43, 0x1b, 0xda, 0x64, 0x14, 0xe6, 0xfd, 0x74, 0x6a, 0x8c, 0x82, 0x24, 0x33, 0x0a, 0xae, 0x11, 0x0a, 0xb7, 0x7d, 0x2d, 0x85, 0x80, 0xcf, 0xc8, 0x95, 0x88, 0x59, 0x7c, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_711 = { .name = "ecdh_brainpoolp320r1_711", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_711_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_711_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_711_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 67 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 712 for ECDH, tcId is 68 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_712_peerpubkey[] = { 0xa1, 0x74, 0xc7, 0xbe, 0x59, 0xd5, 0x9f, 0x20, 0x41, 0xb5, 0x74, 0xd8, 0xe7, 0xa4, 0xcc, 0x40, 0xb3, 0xcb, 0xba, 0x31, 0x4a, 0x81, 0x44, 0x4c, 0x54, 0xb9, 0x8e, 0x04, 0xfe, 0x27, 0x78, 0x3b, 0xc3, 0x23, 0x73, 0xa0, 0x95, 0x98, 0x28, 0x65, 0x74, 0x92, 0xbd, 0xd1, 0xeb, 0x73, 0xe6, 0xa5, 0xa9, 0xc8, 0x7f, 0x6e, 0x8b, 0x09, 0xfa, 0x86, 0xf1, 0x42, 0xab, 0x6b, 0xde, 0x7d, 0xec, 0x82, 0x42, 0xfe, 0x41, 0xbe, 0x25, 0xa4, 0x09, 0xde, 0x91, 0x6a, 0x99, 0xd2, 0xe4, 0x66, 0xe6, 0x98, }; static const unsigned char ecdh_brainpoolp320r1_712_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_712_sharedsecret[] = { 0x90, 0x08, 0x42, 0xfa, 0x0e, 0x7b, 0x34, 0xb3, 0x57, 0x9d, 0xe3, 0x05, 0x9a, 0xc2, 0x10, 0x67, 0xd9, 0xf9, 0x80, 0xdc, 0xe8, 0x77, 0xc0, 0x24, 0x94, 0x14, 0x89, 0xd6, 0x8d, 0xb5, 0x6e, 0xab, 0x88, 0xb3, 0x60, 0xc0, 0x38, 0xac, 0x05, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_712 = { .name = "ecdh_brainpoolp320r1_712", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_712_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_712_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_712_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 68 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 713 for ECDH, tcId is 69 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_713_peerpubkey[] = { 0xc9, 0x5d, 0x5f, 0xf1, 0x8d, 0x3a, 0x64, 0xff, 0x86, 0xd5, 0xe2, 0x93, 0x4d, 0x91, 0x2f, 0x49, 0x43, 0x89, 0x92, 0x4b, 0x46, 0x00, 0xe3, 0x2c, 0x36, 0x65, 0xea, 0xbc, 0x80, 0xf2, 0x1e, 0x6f, 0xca, 0xc3, 0x0e, 0xdd, 0x82, 0xba, 0x1b, 0xaa, 0x4f, 0xc9, 0x18, 0xef, 0xa5, 0x99, 0x9d, 0xef, 0x4c, 0x65, 0xa7, 0x44, 0x21, 0x3a, 0x08, 0x34, 0x8e, 0x6a, 0x03, 0x5b, 0xc0, 0xee, 0xcf, 0x58, 0xb8, 0x3e, 0x7f, 0xda, 0x4d, 0xa0, 0x41, 0xd0, 0x4a, 0x78, 0x33, 0x9b, 0x4d, 0x1f, 0x12, 0x69, }; static const unsigned char ecdh_brainpoolp320r1_713_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_713_sharedsecret[] = { 0x3b, 0x0d, 0xce, 0x55, 0x4d, 0x3f, 0x5a, 0xd6, 0x23, 0xab, 0xca, 0xb7, 0x19, 0x12, 0x3c, 0xce, 0x23, 0xbb, 0xe0, 0xab, 0x0b, 0xc5, 0x37, 0x18, 0x78, 0xd9, 0x10, 0x36, 0x39, 0x66, 0x85, 0x01, 0xea, 0xfb, 0x1c, 0xb2, 0xf7, 0xf0, 0x83, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_713 = { .name = "ecdh_brainpoolp320r1_713", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_713_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_713_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_713_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 69 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 714 for ECDH, tcId is 70 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_714_peerpubkey[] = { 0x24, 0x58, 0x89, 0x69, 0xa0, 0x0e, 0x89, 0x74, 0x19, 0x59, 0x6d, 0x7b, 0xa8, 0xf4, 0x4f, 0x28, 0x68, 0x8b, 0x20, 0xd8, 0x02, 0x5f, 0xe6, 0x6c, 0x9e, 0x18, 0xc4, 0x43, 0xf0, 0xbc, 0xba, 0xf4, 0x11, 0x22, 0x4a, 0x25, 0x0f, 0xcd, 0x88, 0x95, 0xbb, 0xe4, 0x03, 0x0e, 0xc0, 0xf7, 0x40, 0xf6, 0x2f, 0xb3, 0x7e, 0xda, 0x0f, 0x8b, 0xe0, 0x39, 0xf9, 0x84, 0x29, 0x16, 0xcb, 0x81, 0x57, 0x32, 0x1d, 0x40, 0x51, 0xf2, 0xb9, 0x2f, 0x28, 0xe6, 0xcf, 0x6b, 0x45, 0xf4, 0x96, 0x1e, 0x37, 0x6b, }; static const unsigned char ecdh_brainpoolp320r1_714_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_714_sharedsecret[] = { 0x55, 0x1c, 0x46, 0x8b, 0x85, 0x75, 0x8b, 0xab, 0x5d, 0x0e, 0x0c, 0xc8, 0x41, 0x0b, 0xa2, 0xb7, 0x12, 0x66, 0x2c, 0x86, 0x06, 0xe4, 0x85, 0x01, 0xa0, 0xfb, 0xa3, 0xfe, 0x76, 0x27, 0xf0, 0x32, 0xc2, 0x73, 0x98, 0xb8, 0x77, 0xac, 0xdf, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_714 = { .name = "ecdh_brainpoolp320r1_714", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_714_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_714_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_714_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 70 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 715 for ECDH, tcId is 71 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_715_peerpubkey[] = { 0x2a, 0x47, 0x5b, 0xb4, 0xc5, 0x09, 0x16, 0xaf, 0x01, 0x1b, 0x31, 0x0b, 0xa5, 0x44, 0x86, 0x83, 0x1c, 0x6c, 0xdf, 0xae, 0xd6, 0x29, 0xb7, 0x68, 0xb5, 0x8a, 0x45, 0xea, 0xc8, 0x03, 0xa1, 0x35, 0xc4, 0xd4, 0x6c, 0xbc, 0xf8, 0xd2, 0xb9, 0x5d, 0x24, 0x4e, 0x74, 0xed, 0xd7, 0x0c, 0x33, 0xea, 0xf4, 0x54, 0xb5, 0x5d, 0x85, 0xba, 0xb9, 0x7f, 0xf3, 0x62, 0x66, 0x3c, 0xf8, 0x07, 0xd1, 0xfe, 0x0e, 0x4e, 0xd1, 0xfb, 0xe5, 0xe5, 0x12, 0xce, 0x4f, 0xfb, 0x01, 0xc6, 0x33, 0x32, 0xaf, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_715_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_715_sharedsecret[] = { 0x77, 0x94, 0xd2, 0xfc, 0x01, 0xd4, 0x57, 0x42, 0x1a, 0xba, 0x85, 0x92, 0x0d, 0x29, 0x63, 0xe9, 0xf4, 0x24, 0x50, 0xf9, 0xdb, 0x39, 0x4a, 0x1a, 0xa7, 0xeb, 0xa6, 0x21, 0x64, 0x73, 0xfa, 0x00, 0x99, 0xc2, 0xa1, 0x9b, 0x3f, 0xa6, 0x8c, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_715 = { .name = "ecdh_brainpoolp320r1_715", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_715_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_715_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_715_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 71 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 716 for ECDH, tcId is 72 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_716_peerpubkey[] = { 0x78, 0xc0, 0x5a, 0x9d, 0xf4, 0xed, 0xd6, 0x6f, 0x78, 0xd0, 0x4f, 0x06, 0x11, 0x7a, 0xe3, 0x17, 0xaf, 0xba, 0xb1, 0xa2, 0x19, 0x15, 0xe3, 0x5b, 0x69, 0x54, 0x50, 0x60, 0xd8, 0x68, 0xfc, 0xc0, 0xa7, 0x13, 0xe9, 0xce, 0xa2, 0xbb, 0x85, 0x6b, 0x03, 0xb8, 0xcc, 0xc6, 0x38, 0x25, 0x44, 0xac, 0x89, 0x05, 0x58, 0x5b, 0xce, 0x98, 0x0f, 0xdb, 0x58, 0xf5, 0x13, 0x9e, 0xd0, 0x3a, 0x13, 0xfd, 0x1e, 0xd3, 0x34, 0x3a, 0x0b, 0x38, 0x3c, 0x4e, 0x02, 0xde, 0xfd, 0x14, 0x31, 0x3f, 0xa8, 0xa5, }; static const unsigned char ecdh_brainpoolp320r1_716_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_716_sharedsecret[] = { 0x33, 0xa9, 0x55, 0x74, 0xcd, 0x53, 0xab, 0xbc, 0x11, 0xfa, 0xf0, 0x8c, 0x8d, 0xd6, 0x63, 0x43, 0xec, 0x41, 0xee, 0xc7, 0x93, 0x94, 0x29, 0x07, 0xc7, 0xc0, 0xf3, 0xc4, 0x32, 0x52, 0x87, 0x2b, 0x70, 0xa2, 0x55, 0x27, 0x23, 0x45, 0x7d, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_716 = { .name = "ecdh_brainpoolp320r1_716", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_716_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_716_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_716_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 72 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 717 for ECDH, tcId is 73 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_717_peerpubkey[] = { 0x8c, 0x38, 0x20, 0x92, 0x53, 0xfa, 0x06, 0xac, 0x47, 0x39, 0xe5, 0x11, 0x58, 0xf5, 0xeb, 0x1b, 0xeb, 0x84, 0x65, 0xe1, 0x0b, 0x05, 0xec, 0x2e, 0xc9, 0x1c, 0xd2, 0xcf, 0x55, 0xdb, 0x23, 0xc4, 0x53, 0x73, 0xc3, 0xd8, 0x26, 0xb3, 0xdf, 0xd0, 0xa0, 0x59, 0x4e, 0x48, 0x3f, 0x0d, 0xcd, 0x20, 0xad, 0x88, 0xfd, 0xe9, 0x0a, 0x88, 0xdf, 0xf0, 0x26, 0xbe, 0x0a, 0xf9, 0xfe, 0x10, 0x35, 0x3e, 0x9e, 0x95, 0xa5, 0x8f, 0x86, 0xfe, 0x19, 0xdf, 0x30, 0x81, 0xbc, 0x57, 0x67, 0x85, 0xaf, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_717_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_717_sharedsecret[] = { 0x9f, 0x44, 0xca, 0x6b, 0xc2, 0xb7, 0x3a, 0x65, 0x4d, 0xe2, 0x0c, 0x42, 0x15, 0x90, 0x43, 0x42, 0xee, 0x7f, 0x07, 0x76, 0x03, 0x1b, 0x5c, 0x72, 0x5d, 0xc0, 0xd2, 0xfc, 0x7d, 0xba, 0x6b, 0x1c, 0xe3, 0xb2, 0xf8, 0x0a, 0x53, 0x1c, 0xa1, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_717 = { .name = "ecdh_brainpoolp320r1_717", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_717_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_717_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_717_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 73 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 718 for ECDH, tcId is 74 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_718_peerpubkey[] = { 0x00, 0x14, 0x92, 0xc1, 0x38, 0xae, 0x8f, 0xcd, 0x30, 0xc6, 0xff, 0xe9, 0x3f, 0x1e, 0xa8, 0x3f, 0xa6, 0xb8, 0xe5, 0x99, 0x88, 0xf4, 0x14, 0xa7, 0x7d, 0x4e, 0x04, 0x84, 0x1e, 0x9f, 0x4f, 0x60, 0xf4, 0x80, 0x4b, 0xd9, 0x5b, 0x51, 0xd2, 0x61, 0x27, 0x20, 0x85, 0x47, 0xba, 0x9c, 0x9c, 0xe8, 0x28, 0x90, 0x14, 0x4a, 0x1a, 0xe1, 0x73, 0x03, 0xe8, 0x39, 0x7a, 0x65, 0x4a, 0x26, 0xbe, 0xe0, 0x32, 0x44, 0x35, 0xef, 0xd7, 0x89, 0x5d, 0x55, 0x19, 0x5e, 0x43, 0x9a, 0x53, 0x53, 0x69, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_718_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_718_sharedsecret[] = { 0x20, 0xf2, 0xb1, 0x0b, 0x9f, 0x2c, 0x3a, 0xb0, 0x13, 0x90, 0xc6, 0x53, 0xa0, 0xd4, 0xee, 0xec, 0x3a, 0xea, 0x52, 0x69, 0x36, 0x0c, 0x6b, 0x22, 0x1b, 0x4b, 0xc1, 0x92, 0xc0, 0x12, 0xab, 0x2b, 0xef, 0xe4, 0xb5, 0xc2, 0x44, 0x2d, 0x38, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_718 = { .name = "ecdh_brainpoolp320r1_718", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_718_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_718_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_718_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 74 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 719 for ECDH, tcId is 75 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_719_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x29, 0x11, 0x02, 0x53, 0xd5, 0x2c, 0xf3, 0xc5, 0xfc, 0x33, 0x82, 0xfc, 0xa9, 0x3d, 0x18, 0xad, 0xf7, 0xb9, 0x79, 0x99, 0x02, 0x87, 0x67, 0xb9, 0x72, 0x23, 0x81, 0xdb, 0x68, 0xfe, 0x3a, 0x41, 0x79, 0x3b, 0x7d, 0x99, 0x52, 0xc6, 0x17, 0x7f, }; static const unsigned char ecdh_brainpoolp320r1_719_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_719_sharedsecret[] = { 0x14, 0x3c, 0xe0, 0xd0, 0xa4, 0xa2, 0xe5, 0xc5, 0xbe, 0x7b, 0xa1, 0xa1, 0xb5, 0x0d, 0xd0, 0x64, 0x6a, 0xd1, 0xfd, 0x89, 0x96, 0xbe, 0x20, 0xeb, 0x5a, 0x3a, 0x6c, 0x7c, 0xec, 0x52, 0xdc, 0x74, 0x85, 0x64, 0xd1, 0x73, 0x14, 0xf7, 0xe8, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_719 = { .name = "ecdh_brainpoolp320r1_719", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_719_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_719_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_719_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 75 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 720 for ECDH, tcId is 76 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_720_peerpubkey[] = { 0x59, 0xf0, 0xf2, 0xc7, 0x4c, 0xfe, 0xf6, 0xe0, 0x85, 0x68, 0x7c, 0x74, 0x18, 0x7c, 0xd8, 0x39, 0xc9, 0xe1, 0xd8, 0x4c, 0xa4, 0x5c, 0x93, 0xe0, 0x66, 0x13, 0xbc, 0x9e, 0x0d, 0xfe, 0x64, 0x19, 0x2e, 0x5a, 0xef, 0x12, 0x82, 0x58, 0x34, 0xa8, 0x56, 0x3a, 0x39, 0xd9, 0xea, 0xfa, 0x5f, 0xa4, 0x4b, 0x01, 0xd4, 0xa1, 0xff, 0xa8, 0x55, 0xa7, 0x94, 0x80, 0xdd, 0x4a, 0x68, 0xcd, 0x52, 0x93, 0xa4, 0x02, 0xd9, 0x48, 0x24, 0xcc, 0x22, 0x03, 0xf5, 0x87, 0x0a, 0x73, 0xf5, 0x3c, 0xb7, 0x4f, }; static const unsigned char ecdh_brainpoolp320r1_720_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_720_sharedsecret[] = { 0x38, 0x37, 0x42, 0x87, 0x3a, 0x1e, 0xdb, 0x45, 0xd5, 0x78, 0x44, 0xdd, 0xef, 0xfc, 0xeb, 0x5a, 0xaa, 0x00, 0x86, 0x7a, 0x29, 0xc5, 0x8f, 0xd6, 0x3a, 0x1c, 0x21, 0x71, 0xd5, 0x71, 0xd6, 0xc5, 0xa2, 0xf1, 0xb9, 0x1b, 0x9c, 0xfe, 0x61, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_720 = { .name = "ecdh_brainpoolp320r1_720", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_720_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_720_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_720_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 76 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 721 for ECDH, tcId is 77 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_721_peerpubkey[] = { 0x27, 0x94, 0x1f, 0x0a, 0x31, 0x1c, 0x29, 0xb4, 0x99, 0x57, 0x09, 0x53, 0x33, 0x81, 0x54, 0x41, 0x93, 0xf5, 0xcb, 0xa6, 0x6f, 0x57, 0x96, 0xd9, 0x4d, 0xf9, 0x5f, 0x82, 0xb5, 0xab, 0x60, 0xe2, 0xe7, 0xc1, 0x2b, 0x14, 0x88, 0xbb, 0xc6, 0x25, 0xc1, 0xaf, 0x47, 0xf7, 0xd5, 0x0a, 0x31, 0x94, 0x06, 0x81, 0x6e, 0xdd, 0xcd, 0x7e, 0x66, 0x72, 0x9b, 0xc9, 0x6b, 0x58, 0x06, 0xea, 0x4b, 0xf1, 0xe7, 0x43, 0x38, 0x12, 0x0f, 0x5b, 0x77, 0x7d, 0xc7, 0x16, 0x70, 0xad, 0xe1, 0x49, 0x28, 0x6d, }; static const unsigned char ecdh_brainpoolp320r1_721_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_721_sharedsecret[] = { 0xc0, 0xb3, 0x4d, 0x5f, 0x21, 0x4b, 0xfc, 0x5f, 0xbb, 0x6a, 0x24, 0xca, 0x42, 0x57, 0x0e, 0x11, 0xa0, 0x48, 0xed, 0x81, 0xfe, 0xfe, 0x9b, 0xed, 0xae, 0xd0, 0x7f, 0xcd, 0xa2, 0xce, 0xb9, 0x7a, 0xe9, 0x69, 0x97, 0xb1, 0x0e, 0xcb, 0xd8, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_721 = { .name = "ecdh_brainpoolp320r1_721", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_721_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_721_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_721_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 77 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 722 for ECDH, tcId is 78 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_722_peerpubkey[] = { 0x9a, 0x75, 0x6d, 0x91, 0x31, 0xf1, 0xa6, 0xc7, 0x5a, 0x11, 0x31, 0xc7, 0x70, 0xa8, 0xc2, 0x2c, 0x83, 0x39, 0x01, 0x8d, 0xfe, 0xeb, 0x1a, 0xf1, 0xac, 0xa6, 0x3e, 0x38, 0x68, 0x3c, 0x87, 0x89, 0x1e, 0x47, 0xd8, 0xd4, 0x73, 0xcb, 0x1c, 0xcb, 0x89, 0xc4, 0x84, 0xb3, 0xa9, 0x0d, 0xb1, 0xe6, 0xaa, 0x94, 0x53, 0xad, 0xf9, 0x67, 0x64, 0x20, 0x3c, 0xa6, 0xe4, 0xe2, 0x77, 0x21, 0x46, 0xe4, 0x95, 0xa3, 0xea, 0x9b, 0xbf, 0x38, 0x77, 0x39, 0x5b, 0xd2, 0x34, 0x27, 0x16, 0x01, 0x03, 0x37, }; static const unsigned char ecdh_brainpoolp320r1_722_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_722_sharedsecret[] = { 0x13, 0x17, 0xfa, 0xa0, 0xf6, 0x1e, 0xba, 0x0f, 0xac, 0x66, 0x5d, 0xee, 0x99, 0xe2, 0xc7, 0xc2, 0xf2, 0x6c, 0xff, 0xc4, 0xe6, 0x43, 0x54, 0x82, 0xbb, 0x64, 0xbf, 0x1e, 0x80, 0x94, 0x96, 0xe1, 0x7e, 0xb6, 0x31, 0x3e, 0x84, 0x16, 0xe2, 0x08, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_722 = { .name = "ecdh_brainpoolp320r1_722", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_722_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_722_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_722_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 78 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 723 for ECDH, tcId is 79 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_723_peerpubkey[] = { 0x36, 0x7b, 0x07, 0xe1, 0xd9, 0x3a, 0xd4, 0x8f, 0xe6, 0xc5, 0xe5, 0xb4, 0x37, 0x66, 0x81, 0x37, 0xbd, 0x83, 0x26, 0x5d, 0x74, 0xda, 0x9a, 0x84, 0x03, 0x20, 0xe7, 0x17, 0xc5, 0x38, 0xaa, 0x7e, 0xfe, 0xb1, 0xe8, 0xe0, 0x43, 0xb6, 0xf6, 0x6b, 0x59, 0x0a, 0xbf, 0xf4, 0xd0, 0xec, 0x83, 0xaa, 0xff, 0xa3, 0xbb, 0xea, 0xa4, 0x6b, 0xd1, 0x05, 0x81, 0x8f, 0x4e, 0x3c, 0xc8, 0x0c, 0xbb, 0xf8, 0xdd, 0x06, 0xc5, 0x65, 0x26, 0xd5, 0xb7, 0xc6, 0x52, 0x62, 0x7c, 0xe1, 0x06, 0x6b, 0x0e, 0x6d, }; static const unsigned char ecdh_brainpoolp320r1_723_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_723_sharedsecret[] = { 0x53, 0x80, 0x54, 0x9d, 0xe6, 0xdb, 0x72, 0xe9, 0x75, 0xdf, 0xd7, 0x3e, 0x99, 0xa1, 0x13, 0xf2, 0xe6, 0xa3, 0xc5, 0xda, 0x54, 0x8c, 0x2f, 0xac, 0xc0, 0xe8, 0xf1, 0x49, 0xf0, 0x32, 0x22, 0xac, 0x19, 0x18, 0x7a, 0x72, 0x7f, 0xe1, 0x2c, 0x5a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_723 = { .name = "ecdh_brainpoolp320r1_723", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_723_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_723_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_723_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 79 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 724 for ECDH, tcId is 80 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_724_peerpubkey[] = { 0x5d, 0x69, 0xdc, 0x51, 0xa2, 0x96, 0x85, 0xec, 0xff, 0x8a, 0x16, 0x5d, 0x00, 0x42, 0xf3, 0x3b, 0x2b, 0x77, 0x13, 0x00, 0x58, 0x71, 0xd5, 0xf4, 0xba, 0x0c, 0xdb, 0x79, 0xdf, 0x7d, 0x53, 0xfb, 0x2b, 0xaa, 0x9c, 0x08, 0x92, 0x12, 0xc6, 0xaa, 0x45, 0x5f, 0xd5, 0xb7, 0xef, 0x29, 0xbc, 0x89, 0x28, 0xb0, 0x55, 0xbf, 0x2c, 0xfc, 0xa7, 0x86, 0xdc, 0x84, 0x7b, 0x31, 0xc6, 0x23, 0x1a, 0x69, 0x39, 0xbf, 0xa4, 0x98, 0xdb, 0x93, 0xe9, 0x0e, 0xe8, 0x92, 0xd3, 0x7a, 0xc1, 0xeb, 0xcd, 0x6c, }; static const unsigned char ecdh_brainpoolp320r1_724_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_724_sharedsecret[] = { 0x87, 0x3a, 0x0b, 0x76, 0x48, 0x90, 0xb4, 0x93, 0x61, 0xfd, 0x65, 0x27, 0xb4, 0xdf, 0x81, 0x85, 0x6d, 0xcd, 0xcb, 0x61, 0x9a, 0x5c, 0x55, 0xae, 0x7b, 0x05, 0xab, 0x2e, 0xfa, 0xae, 0x9e, 0x75, 0xc3, 0x66, 0x0c, 0x66, 0xf0, 0xc4, 0xc4, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_724 = { .name = "ecdh_brainpoolp320r1_724", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_724_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_724_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_724_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 80 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 725 for ECDH, tcId is 81 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_725_peerpubkey[] = { 0xbd, 0xf1, 0xc0, 0x58, 0x79, 0xc2, 0x46, 0x10, 0x61, 0xa3, 0x51, 0xb3, 0x05, 0x26, 0x9f, 0x63, 0x09, 0x96, 0x8e, 0x57, 0x53, 0x5a, 0x2a, 0x75, 0x74, 0xa6, 0x12, 0x67, 0xee, 0xf4, 0x97, 0x9f, 0xd0, 0x01, 0x20, 0x9b, 0xce, 0x02, 0xc4, 0x14, 0x65, 0xb0, 0xe8, 0xc4, 0x0f, 0x92, 0xf0, 0x15, 0xd3, 0xc0, 0x3d, 0xe0, 0xf6, 0x4a, 0x63, 0xeb, 0xb5, 0x25, 0xfa, 0x5a, 0x19, 0x75, 0x91, 0x0c, 0x74, 0x46, 0xe1, 0x25, 0x65, 0x95, 0x42, 0x21, 0x08, 0xfe, 0x0e, 0x67, 0x15, 0x09, 0xc1, 0x7a, }; static const unsigned char ecdh_brainpoolp320r1_725_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_725_sharedsecret[] = { 0x86, 0x5d, 0xe8, 0x38, 0x15, 0x41, 0x90, 0x9f, 0x5d, 0xd4, 0x28, 0x3a, 0xde, 0x9e, 0x28, 0xc2, 0xb6, 0xf1, 0x55, 0xb3, 0xf7, 0x68, 0x81, 0xff, 0xf0, 0x39, 0x53, 0x99, 0x9b, 0xce, 0x3a, 0x45, 0xd4, 0xfc, 0x76, 0xe2, 0x65, 0xdf, 0x88, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_725 = { .name = "ecdh_brainpoolp320r1_725", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_725_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_725_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_725_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 81 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 726 for ECDH, tcId is 82 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_726_peerpubkey[] = { 0x89, 0x7c, 0xb2, 0x39, 0x9e, 0xac, 0xeb, 0xcf, 0xf9, 0x7f, 0x30, 0x5d, 0xdd, 0x7d, 0xfb, 0x63, 0x13, 0xd4, 0x44, 0xdb, 0x2f, 0x3a, 0x83, 0x1a, 0x5a, 0x3d, 0x0b, 0xc9, 0xbd, 0x82, 0x5e, 0x36, 0x05, 0x7f, 0x1a, 0xfe, 0xd7, 0xbb, 0x12, 0x98, 0xc9, 0xfe, 0x5a, 0x3c, 0xf0, 0xcd, 0xd2, 0xab, 0xfd, 0x99, 0x51, 0xa5, 0xcf, 0xb2, 0x0b, 0xdc, 0x41, 0x92, 0xd4, 0xda, 0x4c, 0x69, 0x39, 0x3e, 0x1a, 0x76, 0x73, 0x10, 0x05, 0xac, 0xb9, 0xad, 0x81, 0x97, 0xbb, 0x27, 0xdd, 0x8b, 0xd9, 0x1f, }; static const unsigned char ecdh_brainpoolp320r1_726_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_726_sharedsecret[] = { 0x63, 0xb1, 0x25, 0xd2, 0x7e, 0xaa, 0xd2, 0xc7, 0xb4, 0xd7, 0xe7, 0xf8, 0x90, 0xdb, 0x35, 0x5e, 0xe1, 0xd9, 0xd9, 0x11, 0x54, 0xcd, 0xbb, 0xd7, 0x27, 0xb4, 0x9f, 0xdd, 0x45, 0xec, 0x58, 0x92, 0xdc, 0x24, 0x24, 0x33, 0x0a, 0x28, 0xbb, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_726 = { .name = "ecdh_brainpoolp320r1_726", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_726_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_726_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_726_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 82 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 727 for ECDH, tcId is 83 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_727_peerpubkey[] = { 0xb4, 0xd6, 0xea, 0xbb, 0x91, 0xa7, 0xd5, 0x43, 0x37, 0x79, 0x33, 0xec, 0x92, 0x71, 0x67, 0x09, 0x73, 0x37, 0x83, 0x91, 0xb6, 0x89, 0xd9, 0x52, 0x6c, 0x23, 0x45, 0xa4, 0x83, 0xf2, 0x39, 0xee, 0x30, 0x5e, 0x2c, 0x10, 0xf3, 0x37, 0xad, 0xf2, 0x7d, 0xd0, 0x3a, 0x14, 0xba, 0x16, 0xbe, 0x16, 0xdc, 0x89, 0xfc, 0xaf, 0x23, 0xa3, 0xdf, 0xbc, 0xc7, 0x85, 0x80, 0xb7, 0x06, 0xda, 0x81, 0x7c, 0x3b, 0x10, 0xb1, 0xfe, 0x8b, 0x6d, 0x27, 0x5c, 0x90, 0xac, 0xeb, 0xcd, 0xd2, 0xad, 0xc3, 0x3a, }; static const unsigned char ecdh_brainpoolp320r1_727_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_727_sharedsecret[] = { 0x2a, 0xf9, 0xa7, 0xc4, 0x79, 0x4a, 0xad, 0xc2, 0x36, 0x46, 0x69, 0xd6, 0x88, 0x5a, 0x0c, 0x4d, 0x60, 0xaf, 0x8d, 0x1a, 0xf8, 0xfc, 0xad, 0xa0, 0xd2, 0x73, 0xbd, 0xc5, 0x2c, 0x65, 0x0f, 0xcd, 0xb3, 0x92, 0xab, 0x5b, 0x75, 0xe4, 0x42, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_727 = { .name = "ecdh_brainpoolp320r1_727", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_727_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_727_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_727_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 83 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 728 for ECDH, tcId is 84 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_728_peerpubkey[] = { 0x43, 0x32, 0xe6, 0xd2, 0xbf, 0x32, 0x86, 0xe9, 0xbb, 0x1b, 0xc5, 0xc3, 0xa1, 0x24, 0x98, 0x8b, 0x97, 0x36, 0x50, 0x6d, 0xa3, 0xc4, 0x01, 0x75, 0x11, 0xf5, 0x83, 0x68, 0xe7, 0xce, 0x15, 0xd0, 0x87, 0x8c, 0x26, 0xb1, 0x8d, 0xa7, 0xd6, 0x8a, 0x44, 0xef, 0x6c, 0xde, 0xc0, 0xa1, 0xff, 0x81, 0xb5, 0xc5, 0xbd, 0xa3, 0xb7, 0x73, 0xae, 0xc6, 0x5b, 0x95, 0xd7, 0xed, 0x94, 0xd8, 0x95, 0xd2, 0xbf, 0x96, 0x9b, 0xc2, 0x4d, 0x20, 0x62, 0xe7, 0xa5, 0xa3, 0xc8, 0xf4, 0xb8, 0x1c, 0x07, 0xb7, }; static const unsigned char ecdh_brainpoolp320r1_728_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_728_sharedsecret[] = { 0x5f, 0x1e, 0xa3, 0x8f, 0xbd, 0xd4, 0xe1, 0xaf, 0x0d, 0x41, 0x04, 0xa7, 0x49, 0xb3, 0x72, 0xcb, 0xc9, 0x6d, 0x06, 0x15, 0xbf, 0x07, 0x5f, 0xa0, 0x5e, 0xa4, 0x5d, 0x1f, 0x90, 0x14, 0x8a, 0xe9, 0x98, 0x2c, 0x4a, 0xed, 0xc0, 0x0b, 0x59, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_728 = { .name = "ecdh_brainpoolp320r1_728", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_728_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_728_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_728_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 84 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 729 for ECDH, tcId is 85 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_729_peerpubkey[] = { 0x6b, 0xb2, 0x7b, 0x19, 0xb7, 0x0a, 0xe5, 0x14, 0xe8, 0x98, 0x4f, 0xfb, 0x26, 0x4c, 0x11, 0x9b, 0xc3, 0x7b, 0x61, 0x62, 0xc4, 0x6f, 0x9c, 0x24, 0xef, 0xe8, 0xf5, 0xc1, 0xd9, 0xc6, 0x85, 0xb4, 0xad, 0xf6, 0xd2, 0x3f, 0xe6, 0x99, 0xe6, 0x33, 0x8a, 0x2a, 0x21, 0xd9, 0xc0, 0x26, 0xb8, 0x4a, 0x3a, 0x8b, 0xc0, 0x8c, 0x50, 0x47, 0x90, 0xf4, 0xf4, 0x9f, 0xe8, 0x43, 0xc5, 0x65, 0x32, 0x9b, 0x79, 0x77, 0x32, 0xe6, 0x42, 0xae, 0x9b, 0xa5, 0xf2, 0xe2, 0x2a, 0xc8, 0x7e, 0xd9, 0xee, 0x97, }; static const unsigned char ecdh_brainpoolp320r1_729_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_729_sharedsecret[] = { 0x1a, 0xaf, 0x0f, 0xdf, 0x25, 0x0b, 0x2c, 0x4d, 0x58, 0x14, 0x0e, 0x5f, 0x26, 0x40, 0x11, 0x59, 0x87, 0x7f, 0xb6, 0xf4, 0xc7, 0x81, 0x76, 0x68, 0x85, 0x0e, 0xc4, 0x16, 0x81, 0xa6, 0x0c, 0x39, 0x73, 0xde, 0x26, 0x22, 0xbd, 0xa9, 0xd6, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_729 = { .name = "ecdh_brainpoolp320r1_729", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_729_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_729_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_729_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 85 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 730 for ECDH, tcId is 86 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_730_peerpubkey[] = { 0xb0, 0xe1, 0x5a, 0xf4, 0xe8, 0x49, 0xe1, 0x02, 0xa6, 0x93, 0x7c, 0xde, 0x7d, 0x1e, 0x3d, 0xa5, 0x11, 0xd4, 0xdc, 0x26, 0x8c, 0x4a, 0x03, 0x5f, 0x57, 0xb8, 0xa4, 0x08, 0x8b, 0x17, 0x25, 0xf2, 0x33, 0xdf, 0xaa, 0xa3, 0x52, 0x7f, 0xc8, 0xf2, 0x44, 0xa5, 0x41, 0x6d, 0x65, 0xcc, 0xde, 0xb7, 0x80, 0x8c, 0x5c, 0xfe, 0x26, 0xb5, 0x97, 0x54, 0x01, 0x49, 0xf6, 0x82, 0x46, 0xa3, 0x6f, 0x3f, 0x61, 0x29, 0xb9, 0x42, 0x51, 0xb7, 0xdb, 0x49, 0x97, 0x09, 0xe6, 0x36, 0xc1, 0xb2, 0x39, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_730_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_730_sharedsecret[] = { 0x82, 0xec, 0x7d, 0xc3, 0x4b, 0x0a, 0x25, 0x84, 0xd3, 0x2e, 0x58, 0x3d, 0x2a, 0x60, 0xc4, 0xc5, 0x38, 0x5a, 0x5e, 0x65, 0x9f, 0x8c, 0x60, 0x84, 0x4d, 0x38, 0xc1, 0xfa, 0xd5, 0x37, 0x08, 0xcd, 0xf6, 0x9b, 0x8f, 0x2c, 0x38, 0x5d, 0x1d, 0x81, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_730 = { .name = "ecdh_brainpoolp320r1_730", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_730_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_730_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_730_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 86 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 731 for ECDH, tcId is 87 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_731_peerpubkey[] = { 0x91, 0xd2, 0x43, 0x3e, 0xab, 0x88, 0x8f, 0xc7, 0x49, 0x05, 0xc6, 0xfe, 0xd7, 0x5d, 0x33, 0x79, 0xc8, 0x70, 0xb1, 0xa6, 0x3c, 0xe9, 0xaa, 0x03, 0x0a, 0x44, 0x1e, 0x3f, 0x62, 0xc7, 0xc1, 0x7b, 0x20, 0x7b, 0x11, 0x22, 0x21, 0xd2, 0xdd, 0x3c, 0x76, 0x52, 0xda, 0x13, 0x23, 0xf5, 0x35, 0xec, 0xc0, 0x31, 0x05, 0xc0, 0x56, 0x2b, 0xc8, 0x6d, 0x71, 0x64, 0x1a, 0x8e, 0xb4, 0x9a, 0x17, 0x4f, 0x23, 0xcd, 0xa2, 0x8f, 0x1a, 0xc8, 0xc6, 0xbb, 0xd8, 0x62, 0x5a, 0x9e, 0x70, 0xf3, 0xeb, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_731_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_731_sharedsecret[] = { 0x84, 0xc4, 0x04, 0x4c, 0x00, 0x60, 0x96, 0xa7, 0x3b, 0x72, 0x0d, 0x61, 0x4e, 0x1c, 0x71, 0x30, 0x58, 0xc2, 0x3e, 0xdd, 0x86, 0xf2, 0xe8, 0x20, 0xbc, 0x7c, 0xec, 0x1e, 0x28, 0xa0, 0x86, 0x2a, 0x22, 0x1f, 0xce, 0xee, 0x2c, 0x9b, 0x79, 0x34, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_731 = { .name = "ecdh_brainpoolp320r1_731", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_731_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_731_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_731_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 87 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 732 for ECDH, tcId is 88 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_732_peerpubkey[] = { 0xc6, 0x48, 0x62, 0xbd, 0x82, 0x56, 0xe3, 0x6a, 0x5f, 0x1a, 0x9b, 0x3a, 0x39, 0x64, 0xb9, 0xde, 0x6e, 0x04, 0xd6, 0xfd, 0x3d, 0xaf, 0x9a, 0xcc, 0xa7, 0x6f, 0x73, 0x1f, 0x59, 0xca, 0xe7, 0x2d, 0x0b, 0x67, 0x11, 0x9c, 0x97, 0xa2, 0x01, 0x09, 0xb5, 0x9a, 0xdd, 0xb3, 0x7d, 0x16, 0x19, 0x41, 0x6a, 0x48, 0x42, 0x52, 0x32, 0x23, 0x2a, 0x35, 0xed, 0xa5, 0xe5, 0x90, 0x57, 0xf0, 0xaf, 0xe0, 0x30, 0x59, 0x42, 0x62, 0x1b, 0xe7, 0x6f, 0xcc, 0xdc, 0x70, 0x18, 0x78, 0x60, 0x4c, 0xb0, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_732_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_732_sharedsecret[] = { 0x73, 0xae, 0x02, 0x43, 0x8e, 0x60, 0x78, 0x8c, 0x51, 0xb4, 0xce, 0xa1, 0xe9, 0x75, 0x32, 0xf1, 0xee, 0x0a, 0x1f, 0x93, 0xd2, 0x6c, 0xb2, 0x9b, 0x7a, 0x8a, 0xa6, 0xe4, 0x55, 0x32, 0xde, 0xdf, 0xf0, 0xaf, 0x61, 0x46, 0xa1, 0x77, 0x26, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_732 = { .name = "ecdh_brainpoolp320r1_732", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_732_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_732_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_732_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 88 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 733 for ECDH, tcId is 89 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_733_peerpubkey[] = { 0x0b, 0xac, 0x6a, 0xfc, 0xac, 0xa3, 0x8f, 0xf3, 0xd3, 0x45, 0xaa, 0x77, 0x71, 0x1e, 0xdf, 0x00, 0xea, 0x72, 0xef, 0x7d, 0x73, 0xc6, 0xe4, 0x3a, 0xdc, 0x5b, 0x6e, 0xbe, 0xb5, 0x79, 0x79, 0x7a, 0x11, 0x02, 0x96, 0xd1, 0x9f, 0xc1, 0xa1, 0x10, 0x46, 0x4b, 0xde, 0x0d, 0x4d, 0x00, 0xfe, 0xd9, 0x05, 0xeb, 0x7f, 0xa4, 0xc0, 0xb0, 0x55, 0xd4, 0x86, 0x16, 0xa6, 0x60, 0x8b, 0x91, 0x10, 0x97, 0x27, 0xf1, 0xcb, 0xe2, 0x43, 0xcf, 0xaa, 0x0e, 0x5f, 0x14, 0xeb, 0xcf, 0xfc, 0x73, 0x40, 0xc7, }; static const unsigned char ecdh_brainpoolp320r1_733_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_733_sharedsecret[] = { 0x36, 0x6c, 0x18, 0x79, 0x47, 0x9f, 0x24, 0xc8, 0xb3, 0xd7, 0xb4, 0x9d, 0x08, 0x8e, 0x9b, 0xfd, 0xdf, 0xeb, 0x0e, 0x59, 0x72, 0x8e, 0x7b, 0x09, 0x84, 0xd4, 0x07, 0x22, 0x75, 0x84, 0x3e, 0x7e, 0x02, 0xba, 0x01, 0x0d, 0x3a, 0xf8, 0x7b, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_733 = { .name = "ecdh_brainpoolp320r1_733", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_733_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_733_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_733_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 89 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 734 for ECDH, tcId is 90 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_734_peerpubkey[] = { 0x4b, 0xb4, 0xf7, 0x6c, 0xa8, 0x9b, 0x92, 0x34, 0xbc, 0x94, 0xed, 0xda, 0xf1, 0x95, 0x9e, 0x01, 0xf3, 0xd2, 0x84, 0xe5, 0x3f, 0x43, 0xd7, 0xbd, 0xb1, 0x7a, 0xa0, 0x07, 0xbb, 0xa3, 0xb1, 0xfa, 0xbf, 0xbd, 0x27, 0x39, 0xb2, 0x69, 0x8d, 0xbe, 0x2a, 0x7c, 0xb6, 0xe4, 0x61, 0xd3, 0x98, 0xdc, 0xbe, 0xe3, 0x0e, 0x57, 0xaf, 0x79, 0xc1, 0x19, 0x43, 0xed, 0xa4, 0x2c, 0x9a, 0x1b, 0xa8, 0xa6, 0xe5, 0x73, 0x64, 0x0e, 0x16, 0x37, 0x76, 0xd8, 0x0a, 0x9c, 0xcb, 0x74, 0x28, 0x86, 0x70, 0x14, }; static const unsigned char ecdh_brainpoolp320r1_734_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_734_sharedsecret[] = { 0xb2, 0x09, 0x92, 0x88, 0x4d, 0x78, 0xf3, 0x47, 0xb5, 0x15, 0x80, 0xa3, 0x01, 0x3e, 0x94, 0x7e, 0x82, 0x24, 0xbf, 0xce, 0x90, 0x15, 0x89, 0x02, 0x78, 0x2a, 0x2a, 0xef, 0x6d, 0x69, 0xe6, 0x7b, 0x99, 0x70, 0x39, 0x59, 0xda, 0x29, 0x5a, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_734 = { .name = "ecdh_brainpoolp320r1_734", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_734_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_734_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_734_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 90 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 735 for ECDH, tcId is 91 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_735_peerpubkey[] = { 0xc8, 0x30, 0xd7, 0xda, 0x94, 0xab, 0x15, 0x78, 0x99, 0x6d, 0x59, 0x0f, 0xa8, 0x59, 0xf1, 0xe4, 0x4f, 0x85, 0xc0, 0xcf, 0x6d, 0xd1, 0x44, 0x38, 0x6b, 0xe2, 0x96, 0x5c, 0xf8, 0x7a, 0x5c, 0x3e, 0x58, 0xd6, 0xb4, 0x84, 0x8e, 0x7b, 0x6e, 0xed, 0x86, 0xbe, 0xa6, 0x59, 0x01, 0x54, 0x91, 0x27, 0x97, 0x3c, 0x94, 0xc9, 0x89, 0xd8, 0xcd, 0xbf, 0xec, 0x26, 0x98, 0xfe, 0x26, 0xcf, 0x66, 0x31, 0x5b, 0xf7, 0xef, 0xae, 0xc9, 0x8d, 0x28, 0x70, 0xb4, 0x81, 0x39, 0x08, 0x21, 0x3b, 0xf7, 0x62, }; static const unsigned char ecdh_brainpoolp320r1_735_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_735_sharedsecret[] = { 0x55, 0xf3, 0xc8, 0x56, 0x97, 0x69, 0x2d, 0x34, 0x4b, 0x63, 0xa1, 0x42, 0x5a, 0xf1, 0x1f, 0x94, 0x89, 0x53, 0xa6, 0x5b, 0x7d, 0xed, 0x49, 0x7a, 0x61, 0x88, 0xb9, 0x83, 0xc4, 0xe6, 0xd6, 0x39, 0x1f, 0x14, 0xae, 0x76, 0x31, 0xd0, 0x50, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_735 = { .name = "ecdh_brainpoolp320r1_735", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_735_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_735_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_735_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 91 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 736 for ECDH, tcId is 92 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_736_peerpubkey[] = { 0x60, 0x45, 0x44, 0x23, 0x48, 0xeb, 0x3e, 0x83, 0xac, 0xf2, 0x7d, 0xac, 0xf9, 0xbc, 0x84, 0xf0, 0xbe, 0x84, 0x4e, 0xbb, 0x3d, 0x37, 0x4b, 0xbe, 0x77, 0x1b, 0x72, 0xe4, 0xcc, 0x79, 0xb5, 0xdc, 0x85, 0x7b, 0x1d, 0x13, 0x16, 0xec, 0xcd, 0x5b, 0x48, 0xa4, 0x51, 0xae, 0xfa, 0xae, 0xe8, 0x12, 0x60, 0x40, 0x2e, 0x26, 0x85, 0xf2, 0xf9, 0x2c, 0x74, 0x36, 0x51, 0xf6, 0x00, 0x42, 0x4c, 0x55, 0xaa, 0x87, 0x0f, 0x58, 0x77, 0x0b, 0xbd, 0xf4, 0xbf, 0xd5, 0x74, 0x05, 0xbe, 0xb8, 0x7c, 0x5c, }; static const unsigned char ecdh_brainpoolp320r1_736_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_736_sharedsecret[] = { 0xb1, 0x76, 0x05, 0xa7, 0x0c, 0x14, 0x25, 0x48, 0xfe, 0xf6, 0x26, 0x5d, 0x2c, 0x0e, 0xb0, 0x23, 0x51, 0x58, 0xfc, 0x34, 0x28, 0xc8, 0x24, 0xdb, 0x37, 0xd0, 0x2c, 0xcc, 0x69, 0xbf, 0x33, 0x2d, 0xab, 0x71, 0x42, 0x8f, 0xd6, 0x90, 0xbb, 0x52, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_736 = { .name = "ecdh_brainpoolp320r1_736", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_736_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_736_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_736_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 92 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 737 for ECDH, tcId is 93 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_737_peerpubkey[] = { 0x72, 0x07, 0x7f, 0xe3, 0x71, 0xec, 0x06, 0x65, 0x01, 0x9c, 0xfd, 0x1d, 0x72, 0x35, 0x47, 0x5b, 0xc0, 0xcc, 0xaa, 0xd6, 0x42, 0x22, 0x20, 0xe7, 0x55, 0x4f, 0x64, 0xed, 0x9c, 0xd1, 0xdf, 0x5c, 0x4a, 0x71, 0xdf, 0x5a, 0x21, 0x65, 0x92, 0x76, 0xb6, 0x13, 0x72, 0xf9, 0x07, 0xd6, 0xb7, 0xaf, 0xda, 0xc6, 0xc9, 0x6e, 0x64, 0x16, 0xba, 0xa9, 0xc6, 0xb0, 0x6b, 0xf6, 0xc4, 0x6b, 0x91, 0x9a, 0xbd, 0xaf, 0xb1, 0xa4, 0xd8, 0x28, 0x97, 0x9c, 0xf2, 0x82, 0xcc, 0x96, 0x23, 0x3d, 0x60, 0x9b, }; static const unsigned char ecdh_brainpoolp320r1_737_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_737_sharedsecret[] = { 0x22, 0x0c, 0x92, 0xcd, 0x3b, 0x7f, 0xf1, 0xa8, 0xfe, 0xb2, 0x18, 0xf2, 0xc5, 0x67, 0x07, 0x31, 0xfd, 0x45, 0x61, 0xcc, 0xe1, 0x52, 0xfc, 0x1f, 0x5a, 0x9b, 0xcb, 0xdf, 0x50, 0x98, 0x0c, 0x9d, 0x23, 0xe6, 0xe9, 0x15, 0xc8, 0x50, 0x10, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_737 = { .name = "ecdh_brainpoolp320r1_737", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_737_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_737_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_737_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 93 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 738 for ECDH, tcId is 94 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_738_peerpubkey[] = { 0x90, 0xbb, 0xc7, 0xf7, 0x44, 0x2d, 0x4a, 0x65, 0x40, 0x12, 0x3b, 0xd3, 0x20, 0x50, 0x39, 0xbe, 0x57, 0x2c, 0x3d, 0x05, 0xc7, 0x44, 0x13, 0xeb, 0x4f, 0x8e, 0xe8, 0xc9, 0xe1, 0xbc, 0xa0, 0xf8, 0xb3, 0x87, 0xfe, 0xcb, 0x4c, 0x75, 0xbe, 0x28, 0xbd, 0x38, 0x79, 0x62, 0xa5, 0x50, 0xc7, 0xac, 0xb1, 0xc3, 0x90, 0x05, 0x4b, 0x89, 0xaa, 0x38, 0x1d, 0xbb, 0xfe, 0xdc, 0xdb, 0xaf, 0x48, 0x03, 0x57, 0x27, 0xb2, 0x37, 0x73, 0xa7, 0x78, 0xfe, 0xf7, 0x54, 0x67, 0x97, 0xa6, 0x84, 0xd9, 0x28, }; static const unsigned char ecdh_brainpoolp320r1_738_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_738_sharedsecret[] = { 0x3f, 0xe2, 0x91, 0x3d, 0x84, 0xae, 0x9e, 0x33, 0xa2, 0x08, 0xaf, 0x3a, 0x9d, 0x2c, 0xfb, 0x5c, 0xf6, 0x51, 0x8f, 0x8b, 0x14, 0x67, 0x05, 0x99, 0x5c, 0xee, 0x08, 0x7e, 0xad, 0xdb, 0x41, 0x00, 0x0b, 0x1a, 0x18, 0xfc, 0x89, 0x40, 0x8d, 0x70, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_738 = { .name = "ecdh_brainpoolp320r1_738", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_738_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_738_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_738_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 94 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 739 for ECDH, tcId is 95 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_739_peerpubkey[] = { 0x77, 0x82, 0xc1, 0xea, 0x46, 0xa6, 0x2b, 0x8d, 0x2f, 0x60, 0x00, 0x70, 0x25, 0x78, 0x25, 0x4b, 0xaf, 0x1e, 0x4d, 0x5f, 0xfc, 0x61, 0xf4, 0x18, 0xa6, 0xef, 0x7a, 0xa9, 0x16, 0xca, 0x0f, 0x6e, 0x15, 0xf2, 0x5d, 0xa5, 0xa4, 0x89, 0xb1, 0x96, 0x38, 0xcf, 0xd2, 0xd2, 0x6f, 0xb2, 0x5f, 0xf9, 0x6f, 0xde, 0x59, 0xff, 0x3e, 0xb3, 0xc7, 0x8e, 0x08, 0x78, 0xfa, 0xda, 0x9f, 0xf0, 0xa1, 0x8c, 0xd9, 0x13, 0xe6, 0x93, 0x38, 0x9a, 0xaf, 0x45, 0xef, 0x1e, 0x6a, 0x30, 0xd0, 0xeb, 0x12, 0x02, }; static const unsigned char ecdh_brainpoolp320r1_739_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_739_sharedsecret[] = { 0x43, 0x75, 0x53, 0xab, 0x52, 0x30, 0xfc, 0x92, 0x1a, 0x80, 0x48, 0x49, 0xd9, 0xfd, 0x61, 0x4d, 0xa3, 0x07, 0xb9, 0x42, 0x35, 0xe6, 0x8f, 0xb4, 0xc5, 0x6c, 0xb0, 0x33, 0xad, 0xb5, 0x0c, 0xbe, 0x05, 0x29, 0x96, 0x7b, 0x45, 0xc9, 0xd1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_739 = { .name = "ecdh_brainpoolp320r1_739", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_739_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_739_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_739_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 95 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 740 for ECDH, tcId is 96 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_740_peerpubkey[] = { 0x28, 0xe4, 0x12, 0xeb, 0x78, 0xd9, 0x71, 0x4a, 0xb7, 0x67, 0xa7, 0x98, 0x73, 0x6e, 0xf8, 0x73, 0x2a, 0x9e, 0xfe, 0xd0, 0x45, 0x32, 0xd4, 0x8d, 0x31, 0xa3, 0x4f, 0x73, 0x75, 0xbf, 0xa9, 0x4b, 0x67, 0x2b, 0x66, 0x1c, 0xed, 0xac, 0xa4, 0x2f, 0x28, 0x0e, 0x69, 0xef, 0x2a, 0x21, 0x6b, 0x49, 0xc9, 0xd9, 0x34, 0x4a, 0xef, 0x11, 0x92, 0x65, 0x38, 0x11, 0x6e, 0x91, 0xf8, 0x4c, 0x9e, 0x54, 0xcd, 0x09, 0x83, 0xd7, 0x19, 0x04, 0x0d, 0xaa, 0x9a, 0x9b, 0x1a, 0xaa, 0x77, 0x83, 0xed, 0x9f, }; static const unsigned char ecdh_brainpoolp320r1_740_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_740_sharedsecret[] = { 0x4a, 0x6e, 0x09, 0xfc, 0xd8, 0x73, 0x77, 0xc3, 0xcc, 0xf2, 0x09, 0x18, 0x7a, 0x2c, 0x79, 0x86, 0x57, 0xdd, 0x78, 0x25, 0x76, 0xf4, 0x3f, 0x5c, 0xb3, 0x6e, 0x28, 0x1d, 0x6b, 0x14, 0x7c, 0xbf, 0x24, 0x90, 0x32, 0xa0, 0x21, 0x76, 0xe1, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_740 = { .name = "ecdh_brainpoolp320r1_740", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_740_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_740_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_740_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 96 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 741 for ECDH, tcId is 97 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_741_peerpubkey[] = { 0xb7, 0xc5, 0x9b, 0x18, 0xe1, 0xa2, 0x97, 0x3d, 0xb0, 0xd1, 0x9e, 0x1a, 0x99, 0xcd, 0xbb, 0x65, 0xa0, 0x05, 0xe9, 0xcf, 0x91, 0xa2, 0xc3, 0x43, 0xe4, 0xf8, 0x5b, 0x47, 0xc8, 0xd3, 0x52, 0xf0, 0xb8, 0xf5, 0xbc, 0x63, 0xeb, 0xdb, 0xf8, 0x42, 0xd0, 0xc5, 0x30, 0x32, 0x9b, 0x6a, 0x9c, 0x46, 0x6b, 0xc2, 0x44, 0x69, 0x8e, 0x34, 0xa7, 0x63, 0xbc, 0x7b, 0x02, 0x2c, 0xfe, 0x67, 0x1e, 0x3e, 0x13, 0xca, 0x64, 0xd5, 0xe0, 0x73, 0xe8, 0xd1, 0x42, 0xc7, 0xdf, 0x00, 0x0e, 0x3d, 0x3a, 0x4e, }; static const unsigned char ecdh_brainpoolp320r1_741_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_741_sharedsecret[] = { 0xc4, 0xe0, 0xac, 0x86, 0xed, 0x19, 0x42, 0x59, 0x93, 0xb3, 0x37, 0x00, 0x91, 0xd6, 0x80, 0xfa, 0xe0, 0x72, 0xa8, 0x7d, 0xa5, 0xe3, 0x6e, 0x09, 0x55, 0xc9, 0x7b, 0x0a, 0x5c, 0xd7, 0x65, 0xcb, 0xa3, 0x2e, 0x41, 0x19, 0x95, 0xc3, 0xe6, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_741 = { .name = "ecdh_brainpoolp320r1_741", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_741_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_741_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_741_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 97 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 742 for ECDH, tcId is 98 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_742_peerpubkey[] = { 0x79, 0x09, 0x9f, 0x04, 0x9d, 0x51, 0xb2, 0x9d, 0x3e, 0x19, 0xac, 0xd5, 0x48, 0x6d, 0x3d, 0x15, 0x31, 0x6a, 0x66, 0xab, 0x59, 0xe9, 0x15, 0xbb, 0xac, 0x2c, 0x9e, 0xb8, 0x4b, 0x67, 0xdd, 0x4f, 0x65, 0xf2, 0x01, 0x42, 0x8b, 0xa3, 0xce, 0x2f, 0x4b, 0x22, 0xec, 0x67, 0xc9, 0xd9, 0xc9, 0x5a, 0xcb, 0x0a, 0xec, 0xdc, 0xe2, 0x20, 0xbb, 0xe2, 0x6c, 0xc3, 0x6b, 0x09, 0x10, 0xaf, 0x61, 0xac, 0x92, 0x08, 0xaa, 0xe5, 0xef, 0x71, 0x96, 0xbc, 0x8b, 0x3d, 0xbf, 0x3c, 0xca, 0x45, 0x67, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_742_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_742_sharedsecret[] = { 0x06, 0x81, 0x6d, 0xba, 0xe7, 0x2d, 0xfb, 0x90, 0xff, 0x66, 0xd8, 0xeb, 0x72, 0x15, 0x20, 0x20, 0x0c, 0xf8, 0x4d, 0xae, 0x6a, 0xa7, 0xbd, 0xa5, 0x7f, 0x0c, 0x7a, 0x84, 0x84, 0x30, 0xe7, 0x4a, 0x6b, 0xb7, 0xde, 0xec, 0xb2, 0x68, 0x71, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_742 = { .name = "ecdh_brainpoolp320r1_742", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_742_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_742_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_742_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 98 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 743 for ECDH, tcId is 99 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_743_peerpubkey[] = { 0xb4, 0xec, 0x81, 0xbf, 0x86, 0x59, 0x03, 0xff, 0x50, 0x75, 0xa3, 0xc0, 0x07, 0xf8, 0x26, 0x24, 0xcf, 0x6b, 0x41, 0xf7, 0xe9, 0x88, 0x0c, 0x27, 0xc0, 0xe1, 0x57, 0xbf, 0x4c, 0xc4, 0x0d, 0x01, 0x9a, 0x78, 0x04, 0x36, 0x97, 0x83, 0xd3, 0xcd, 0xd2, 0xe3, 0xd0, 0xca, 0x81, 0xe6, 0x98, 0x18, 0xe8, 0x83, 0x91, 0x3b, 0x31, 0x4f, 0x5a, 0x7c, 0xc2, 0xb7, 0xd0, 0xdc, 0x42, 0x9f, 0x3f, 0xd7, 0xf7, 0x37, 0x0c, 0xb8, 0x50, 0x09, 0x32, 0x66, 0x89, 0x33, 0x45, 0x39, 0x01, 0x6b, 0x10, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_743_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_743_sharedsecret[] = { 0x1d, 0xfa, 0xdf, 0x57, 0x91, 0x16, 0x89, 0x56, 0xfd, 0x92, 0xbc, 0x5b, 0x34, 0x09, 0x33, 0x54, 0x76, 0x53, 0xd1, 0x1a, 0x70, 0x28, 0x1c, 0xa9, 0xd1, 0x6e, 0xb3, 0x21, 0x7f, 0xf9, 0xf0, 0x58, 0x87, 0x9c, 0x2f, 0xc6, 0xf4, 0x6e, 0x42, 0x93, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_743 = { .name = "ecdh_brainpoolp320r1_743", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_743_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_743_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_743_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 99 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 744 for ECDH, tcId is 100 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_744_peerpubkey[] = { 0x5c, 0xa4, 0x85, 0x8a, 0x04, 0xe6, 0xf1, 0x89, 0xc8, 0xe7, 0x9f, 0xba, 0x97, 0x3c, 0x60, 0x4d, 0x3c, 0x0e, 0xcb, 0x10, 0x12, 0x6f, 0x04, 0xc1, 0xe1, 0x33, 0x24, 0x54, 0xfe, 0x1d, 0x92, 0x42, 0xad, 0x18, 0x25, 0x59, 0xe2, 0xdb, 0xcc, 0x10, 0x21, 0xee, 0x09, 0x73, 0x46, 0xca, 0x8e, 0x7c, 0xef, 0x9f, 0x23, 0x57, 0x77, 0x43, 0xfb, 0x05, 0x00, 0xcb, 0x55, 0xc9, 0x82, 0x0c, 0x59, 0x23, 0xdc, 0x7a, 0xab, 0x9b, 0x47, 0xfc, 0xdb, 0x9f, 0xb9, 0x35, 0x25, 0x01, 0x7f, 0xc1, 0xac, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_744_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_744_sharedsecret[] = { 0x29, 0x1d, 0x8a, 0x69, 0x23, 0x5e, 0x62, 0x6a, 0x97, 0x8e, 0xd4, 0x3c, 0x3f, 0xbe, 0x2f, 0xfd, 0x70, 0xb1, 0x6b, 0x40, 0x26, 0x0c, 0xdb, 0xc9, 0xb7, 0xff, 0xa4, 0x67, 0xa5, 0x5c, 0xd0, 0xab, 0xcd, 0x7e, 0x74, 0x51, 0x08, 0x8b, 0xdb, 0xa5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_744 = { .name = "ecdh_brainpoolp320r1_744", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_744_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_744_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_744_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 100 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 745 for ECDH, tcId is 101 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_745_peerpubkey[] = { 0x82, 0x3e, 0x37, 0x5a, 0xae, 0x80, 0x5d, 0xc0, 0x4b, 0xda, 0x02, 0xe9, 0xc5, 0x0f, 0x41, 0x80, 0x82, 0xfe, 0xbf, 0x28, 0x0c, 0xbe, 0xcf, 0x00, 0x3f, 0xb6, 0xc5, 0x08, 0x8a, 0xa1, 0x27, 0x67, 0x9a, 0xe5, 0xfd, 0x1c, 0xcb, 0xb6, 0x4c, 0x82, 0xcf, 0x01, 0xeb, 0x94, 0x52, 0x5b, 0x20, 0x33, 0x85, 0xf0, 0x3a, 0xe0, 0x1c, 0x1c, 0x4b, 0xc8, 0x1e, 0xee, 0x21, 0x5c, 0xd7, 0xe4, 0xc2, 0xf9, 0x17, 0xf4, 0xcd, 0x0b, 0x43, 0x5c, 0xaf, 0xc5, 0x18, 0x25, 0xb6, 0xc8, 0x75, 0x74, 0x75, 0xbd, }; static const unsigned char ecdh_brainpoolp320r1_745_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_745_sharedsecret[] = { 0x94, 0xa6, 0x88, 0x3a, 0xc5, 0xec, 0xa7, 0x04, 0x58, 0xbd, 0xeb, 0x51, 0x3e, 0x47, 0x1e, 0x67, 0xc5, 0x6e, 0x9a, 0x54, 0x7d, 0x2f, 0x1e, 0x78, 0x86, 0x7a, 0x05, 0xe1, 0xd0, 0x2b, 0x9f, 0xb3, 0xcc, 0x5b, 0x20, 0x65, 0xfe, 0xe4, 0x52, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_745 = { .name = "ecdh_brainpoolp320r1_745", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_745_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_745_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_745_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 101 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 746 for ECDH, tcId is 102 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_746_peerpubkey[] = { 0x1d, 0x71, 0x94, 0xd7, 0x0d, 0xdf, 0x8f, 0xb7, 0x9b, 0x1e, 0xe1, 0x22, 0x3e, 0x4f, 0xd7, 0x04, 0xed, 0x37, 0xda, 0xeb, 0x4d, 0x68, 0x25, 0x88, 0xcc, 0xff, 0x21, 0xef, 0x00, 0x14, 0x78, 0xcd, 0x84, 0xac, 0xf8, 0xc9, 0xc3, 0x6c, 0x6c, 0x3e, 0xba, 0x8e, 0x73, 0x46, 0x9d, 0x65, 0x4a, 0x37, 0x90, 0x36, 0xa1, 0xea, 0x8b, 0xf6, 0x21, 0xf3, 0xc3, 0x9e, 0x2a, 0x41, 0xd5, 0x8c, 0x5b, 0x95, 0xe9, 0x88, 0x24, 0x94, 0xa4, 0x91, 0x24, 0x15, 0xd1, 0xa9, 0xa3, 0x1c, 0x20, 0x53, 0x1b, 0x2b, }; static const unsigned char ecdh_brainpoolp320r1_746_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_746_sharedsecret[] = { 0x79, 0xe8, 0x20, 0x02, 0x70, 0x93, 0x0c, 0xa2, 0x20, 0xdc, 0xe4, 0xa2, 0x97, 0xd5, 0x46, 0x17, 0xfa, 0xa4, 0xb2, 0x58, 0xdc, 0xb1, 0x35, 0x95, 0x94, 0x96, 0x24, 0xc6, 0x70, 0x5b, 0x83, 0xae, 0xc1, 0x14, 0x98, 0x14, 0x56, 0x30, 0x32, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_746 = { .name = "ecdh_brainpoolp320r1_746", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_746_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_746_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_746_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 102 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 747 for ECDH, tcId is 103 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_747_peerpubkey[] = { 0xb0, 0xad, 0x13, 0xdb, 0x12, 0x9c, 0x0c, 0x91, 0x4f, 0x60, 0x71, 0xf7, 0x87, 0x4a, 0xe3, 0x9e, 0x69, 0xdd, 0x89, 0x87, 0x18, 0x54, 0xe9, 0x7b, 0x18, 0x91, 0xa4, 0xa2, 0xab, 0x57, 0x90, 0x27, 0xd9, 0xbd, 0x37, 0x51, 0x0f, 0xc8, 0x3f, 0x21, 0x02, 0xfa, 0x3d, 0xd8, 0xd8, 0xd3, 0x33, 0x34, 0x48, 0x85, 0xbc, 0xe0, 0x6d, 0x57, 0x7e, 0xba, 0x0b, 0x9c, 0xc6, 0x08, 0xd2, 0x8f, 0x1d, 0x3d, 0x68, 0x28, 0x44, 0xab, 0x20, 0xd9, 0x4d, 0x0b, 0x77, 0xd0, 0x48, 0x73, 0x7a, 0xd2, 0x7e, 0xeb, }; static const unsigned char ecdh_brainpoolp320r1_747_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_747_sharedsecret[] = { 0x62, 0xf6, 0x19, 0x2f, 0xee, 0x3a, 0xe1, 0xa8, 0x4a, 0xfe, 0xb4, 0x7f, 0x38, 0x38, 0xa9, 0xfc, 0xad, 0x9b, 0xa9, 0x37, 0x39, 0x1a, 0x9b, 0xa2, 0x46, 0x74, 0x02, 0x9e, 0xbc, 0x7b, 0x0a, 0x00, 0x12, 0x60, 0x13, 0xb5, 0xaa, 0xb6, 0x3a, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_747 = { .name = "ecdh_brainpoolp320r1_747", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_747_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_747_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_747_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 103 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 748 for ECDH, tcId is 104 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_748_peerpubkey[] = { 0x4f, 0xc4, 0xba, 0xaa, 0xcc, 0x52, 0x1e, 0xb5, 0xd1, 0x18, 0x10, 0xd8, 0x33, 0x90, 0xab, 0x54, 0xfd, 0xea, 0xfc, 0x56, 0x8f, 0x51, 0x26, 0x6b, 0xa3, 0x36, 0x6e, 0xfb, 0x51, 0x1f, 0x4c, 0x4c, 0x85, 0x9f, 0xdd, 0x72, 0xa9, 0x77, 0xa9, 0x90, 0x14, 0xd7, 0x74, 0x3d, 0x1a, 0xca, 0xa0, 0x52, 0xef, 0x3f, 0xa7, 0x70, 0xfa, 0x16, 0x70, 0x75, 0xf8, 0x2e, 0xea, 0xc3, 0x60, 0x85, 0x18, 0x50, 0xb0, 0xf2, 0x28, 0xf6, 0x1a, 0x99, 0x7c, 0xf6, 0x3f, 0x14, 0x24, 0x0e, 0xfb, 0x9b, 0x7c, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_748_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_748_sharedsecret[] = { 0x08, 0xfa, 0xc3, 0xfb, 0xac, 0xde, 0x79, 0x83, 0xe0, 0x40, 0x87, 0x1e, 0x7e, 0x3e, 0xaa, 0x7d, 0xe3, 0x16, 0xf8, 0x48, 0x2d, 0x78, 0xad, 0xd4, 0x9b, 0x95, 0x4f, 0xe0, 0x27, 0xcd, 0xa7, 0x84, 0x39, 0x48, 0xb3, 0xa8, 0x78, 0x92, 0x7d, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_748 = { .name = "ecdh_brainpoolp320r1_748", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_748_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_748_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_748_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 104 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 749 for ECDH, tcId is 105 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_749_peerpubkey[] = { 0x72, 0x6a, 0x13, 0x3f, 0x9b, 0xd2, 0xba, 0x99, 0xd2, 0x69, 0xd5, 0xe2, 0x21, 0x78, 0xfe, 0xc4, 0x0b, 0xa2, 0x3c, 0xc5, 0x4f, 0xfc, 0xe3, 0xa6, 0xad, 0x9d, 0x0a, 0xbf, 0xf0, 0x12, 0x21, 0x64, 0xd7, 0xde, 0x68, 0xbf, 0x01, 0xae, 0x42, 0x3b, 0x7a, 0xb1, 0x5e, 0x12, 0x5b, 0xd1, 0xbd, 0x03, 0x20, 0x66, 0xf4, 0x0e, 0x8a, 0xe1, 0x80, 0x4f, 0x16, 0xc0, 0x3b, 0x75, 0x2a, 0x7d, 0x2a, 0xfa, 0xb9, 0x34, 0x16, 0x59, 0x2b, 0x92, 0x97, 0xa0, 0x59, 0x41, 0xfa, 0x5e, 0x21, 0x0b, 0x92, 0x41, }; static const unsigned char ecdh_brainpoolp320r1_749_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_749_sharedsecret[] = { 0x48, 0x56, 0x92, 0xc5, 0xc5, 0xd7, 0xdf, 0x7d, 0x6a, 0x55, 0x88, 0xfd, 0xdc, 0x46, 0x1a, 0x3c, 0x85, 0x05, 0x0b, 0xc5, 0x6d, 0x22, 0x75, 0x75, 0x1f, 0x80, 0x73, 0x2e, 0x52, 0x24, 0x4e, 0xf4, 0x1b, 0x0d, 0x63, 0x6b, 0x48, 0xc5, 0x89, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_749 = { .name = "ecdh_brainpoolp320r1_749", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_749_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_749_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_749_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 105 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 750 for ECDH, tcId is 106 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_750_peerpubkey[] = { 0x65, 0xc1, 0x0c, 0xd1, 0x61, 0x29, 0xbe, 0x18, 0xfc, 0x8f, 0x5b, 0x62, 0x72, 0xfe, 0x34, 0x9d, 0xf1, 0x8c, 0x45, 0xae, 0xb3, 0xb4, 0x91, 0x7a, 0x26, 0x94, 0xac, 0x17, 0xbd, 0x5a, 0x90, 0x37, 0x18, 0xef, 0x23, 0x08, 0x11, 0xb5, 0x8c, 0x62, 0x7b, 0x0c, 0x05, 0x4c, 0xac, 0x52, 0x6f, 0x1b, 0xcf, 0x60, 0x7c, 0x2a, 0x3a, 0xca, 0x41, 0x9c, 0x24, 0xb0, 0x85, 0x1c, 0x5a, 0xa6, 0x6a, 0x38, 0x92, 0x9b, 0x83, 0xad, 0x28, 0xd8, 0xe3, 0x84, 0x5f, 0x16, 0x41, 0xfb, 0xaa, 0xe7, 0x9d, 0xd6, }; static const unsigned char ecdh_brainpoolp320r1_750_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_750_sharedsecret[] = { 0x84, 0x36, 0x1f, 0x6a, 0xa6, 0xf1, 0x35, 0x52, 0x11, 0x63, 0x2f, 0x86, 0x7d, 0x65, 0x72, 0x84, 0xd6, 0x81, 0xf2, 0xde, 0xda, 0xf9, 0x72, 0x91, 0x76, 0x73, 0xab, 0x92, 0x94, 0xdb, 0x2f, 0x7d, 0xa1, 0x04, 0xb5, 0xc8, 0x32, 0xe3, 0xf4, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_750 = { .name = "ecdh_brainpoolp320r1_750", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_750_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_750_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_750_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 106 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 751 for ECDH, tcId is 107 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_751_peerpubkey[] = { 0x55, 0x10, 0xba, 0x07, 0x31, 0x14, 0x3c, 0x2c, 0xa2, 0x60, 0x8a, 0x4a, 0xf2, 0xd3, 0x57, 0x07, 0xe8, 0xfe, 0x67, 0x77, 0x7c, 0xe5, 0x93, 0xac, 0xfd, 0xdd, 0x0b, 0xbd, 0x0b, 0xf6, 0x34, 0xd0, 0x1b, 0x0d, 0x2d, 0x13, 0x2c, 0xab, 0x5f, 0x25, 0x6b, 0x55, 0x20, 0x9c, 0x4b, 0xf8, 0x24, 0xaa, 0x88, 0x7c, 0xfb, 0x70, 0xec, 0x0e, 0x00, 0x26, 0x0d, 0xf5, 0x5f, 0x5d, 0xb7, 0x63, 0x3b, 0xe6, 0x16, 0x47, 0xed, 0x07, 0x39, 0x06, 0x30, 0x45, 0xef, 0x6d, 0xc1, 0xa3, 0x68, 0x52, 0xcd, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_751_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_751_sharedsecret[] = { 0x59, 0xdb, 0xac, 0x04, 0x96, 0x0d, 0x46, 0x4f, 0x4d, 0xf5, 0x1a, 0xdd, 0x3c, 0x33, 0x64, 0x5c, 0xb4, 0xc9, 0xab, 0xe4, 0x92, 0x71, 0x95, 0x56, 0x71, 0x75, 0x21, 0xd1, 0x6a, 0x09, 0x13, 0xf4, 0xca, 0x63, 0xa5, 0x9c, 0x58, 0xc3, 0xe1, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_751 = { .name = "ecdh_brainpoolp320r1_751", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_751_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_751_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_751_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 107 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 752 for ECDH, tcId is 108 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_752_peerpubkey[] = { 0x82, 0xb4, 0xb2, 0x82, 0x77, 0x8b, 0xfb, 0x21, 0x9f, 0x1f, 0xf9, 0x93, 0xf9, 0x29, 0x48, 0x71, 0x73, 0x1d, 0xab, 0xfc, 0xb4, 0xff, 0x41, 0xfa, 0x70, 0x25, 0xf2, 0xfd, 0x11, 0x65, 0x6b, 0x5f, 0x19, 0x28, 0x55, 0xb1, 0xa7, 0xc1, 0x78, 0x97, 0xbf, 0x74, 0xb6, 0x17, 0x16, 0x07, 0xae, 0x31, 0xe4, 0x1a, 0xf7, 0xe7, 0xd6, 0x83, 0x8d, 0x20, 0x82, 0x03, 0xed, 0x46, 0x5b, 0xa8, 0x55, 0x58, 0x06, 0x14, 0xbe, 0x16, 0x47, 0xe6, 0xb5, 0xab, 0xf7, 0x8a, 0x70, 0x45, 0x4b, 0xb6, 0x16, 0x63, }; static const unsigned char ecdh_brainpoolp320r1_752_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_752_sharedsecret[] = { 0x0c, 0xe0, 0xbf, 0x73, 0xc6, 0x14, 0x94, 0x93, 0x39, 0xd7, 0xd1, 0xc4, 0x14, 0xd1, 0x8a, 0x3a, 0x0a, 0x9d, 0x23, 0xf0, 0x85, 0xa3, 0xcb, 0x5c, 0x37, 0x19, 0x5c, 0x6e, 0x62, 0xc0, 0xdf, 0xd0, 0x41, 0x5e, 0xee, 0x2b, 0x2e, 0x46, 0xcd, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_752 = { .name = "ecdh_brainpoolp320r1_752", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_752_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_752_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_752_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 108 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 753 for ECDH, tcId is 109 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_753_peerpubkey[] = { 0x8a, 0xae, 0xff, 0x56, 0x37, 0xcc, 0xf7, 0xdb, 0xec, 0xb7, 0xc5, 0xc9, 0xfa, 0xdb, 0xf7, 0xf3, 0xd5, 0xef, 0x6b, 0xbc, 0xa3, 0xa6, 0x43, 0xbf, 0xd4, 0x99, 0xf3, 0x80, 0x15, 0x93, 0x66, 0x87, 0x4a, 0x52, 0x93, 0xb2, 0x4b, 0x93, 0x0c, 0x71, 0x07, 0xe6, 0x8a, 0x6c, 0x7b, 0x65, 0x4b, 0x1b, 0x60, 0x88, 0x8f, 0x32, 0x5a, 0x36, 0x4e, 0x33, 0xbc, 0x74, 0x96, 0xbc, 0x79, 0x29, 0x84, 0x68, 0xfe, 0x64, 0xe5, 0x8b, 0x36, 0x0b, 0x56, 0x90, 0xaf, 0xa8, 0xeb, 0x44, 0x28, 0x8c, 0x45, 0xb4, }; static const unsigned char ecdh_brainpoolp320r1_753_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_753_sharedsecret[] = { 0x81, 0xe3, 0x14, 0x73, 0xf8, 0x0d, 0x6c, 0xc1, 0x75, 0x19, 0x32, 0xff, 0x8c, 0x48, 0xce, 0xf7, 0xef, 0xf5, 0xd7, 0xf5, 0xc7, 0xbd, 0x08, 0x72, 0x4c, 0x95, 0xb8, 0x22, 0xca, 0xfa, 0xa3, 0xa9, 0x3b, 0xaf, 0x6a, 0x0d, 0x15, 0x2a, 0x10, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_753 = { .name = "ecdh_brainpoolp320r1_753", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_753_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_753_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_753_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 109 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 754 for ECDH, tcId is 110 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_754_peerpubkey[] = { 0x65, 0x43, 0x63, 0x3f, 0x3e, 0x4e, 0x1d, 0x90, 0x97, 0xb8, 0x82, 0x7c, 0x8e, 0xe4, 0xd5, 0x82, 0x48, 0x42, 0x18, 0xc9, 0x38, 0x3f, 0x0c, 0xcc, 0xdb, 0x63, 0xc9, 0xf1, 0x7e, 0x8a, 0x11, 0x1d, 0x43, 0x78, 0x01, 0x63, 0xfa, 0xdc, 0xc1, 0xcb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_754_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_754_sharedsecret[] = { 0x1f, 0x53, 0x8c, 0x5e, 0x7f, 0x1c, 0x96, 0x23, 0xfb, 0x6f, 0xf0, 0x01, 0x36, 0x26, 0xa8, 0xbf, 0x39, 0x9e, 0xfc, 0x9a, 0xba, 0x65, 0xfd, 0xd3, 0xb7, 0x11, 0xdf, 0xd6, 0xe1, 0x4d, 0xa0, 0x8b, 0x52, 0xc9, 0x0c, 0x2f, 0xb3, 0xf8, 0x48, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_754 = { .name = "ecdh_brainpoolp320r1_754", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_754_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_754_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_754_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 110 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 755 for ECDH, tcId is 111 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_755_peerpubkey[] = { 0x8f, 0x65, 0xac, 0xe8, 0x98, 0x45, 0xbc, 0xf5, 0xe0, 0x74, 0xb7, 0x7e, 0xa5, 0x0f, 0x2d, 0xa1, 0x34, 0x3d, 0xfa, 0x1f, 0xe2, 0x70, 0x46, 0xfc, 0x60, 0xd1, 0x5e, 0xac, 0x32, 0xbc, 0xdf, 0x51, 0x31, 0xf8, 0x3d, 0xf8, 0xc9, 0x92, 0x7a, 0xcf, 0x46, 0x4c, 0x15, 0x62, 0x1e, 0xf3, 0x20, 0xc3, 0xd1, 0x71, 0x21, 0xa6, 0x03, 0x53, 0x9b, 0xb4, 0xab, 0x8c, 0xf5, 0xbe, 0xff, 0x24, 0xc5, 0x9e, 0x7f, 0x14, 0x46, 0xd5, 0xed, 0x00, 0x03, 0x2c, 0xef, 0x59, 0x55, 0x56, 0x0b, 0x2f, 0x3f, 0x58, }; static const unsigned char ecdh_brainpoolp320r1_755_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_755_sharedsecret[] = { 0x65, 0x2f, 0x22, 0x04, 0xc3, 0xd1, 0xc2, 0x8e, 0x59, 0x78, 0x76, 0xd8, 0x68, 0x83, 0xbc, 0x44, 0x63, 0x19, 0x36, 0x04, 0xe6, 0x6b, 0xa5, 0x30, 0xe4, 0xb0, 0x3e, 0x5e, 0x0d, 0x25, 0x13, 0x52, 0x8a, 0xa2, 0x06, 0x5c, 0x17, 0x74, 0x43, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_755 = { .name = "ecdh_brainpoolp320r1_755", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_755_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_755_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_755_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 111 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 756 for ECDH, tcId is 112 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_756_peerpubkey[] = { 0x28, 0xd6, 0x23, 0xfe, 0xdb, 0x49, 0xa4, 0x5d, 0xd2, 0x75, 0xef, 0x5d, 0x06, 0x4e, 0x7e, 0xa9, 0x2c, 0xd9, 0xe7, 0x44, 0x3f, 0x9a, 0x00, 0x05, 0x70, 0x36, 0xe1, 0x2c, 0x1d, 0x8d, 0xaf, 0x62, 0x1c, 0xad, 0xb9, 0x6d, 0x37, 0xfa, 0x32, 0x92, 0xbb, 0x13, 0xf2, 0x51, 0x52, 0x19, 0xe4, 0x35, 0x1d, 0x8a, 0xf8, 0x61, 0xe2, 0x97, 0xb2, 0x28, 0x78, 0x62, 0x31, 0x39, 0xf3, 0xce, 0xdb, 0x8a, 0x82, 0x3d, 0x7c, 0x76, 0xb4, 0x9e, 0x8c, 0x8d, 0xa1, 0xe0, 0x62, 0xf0, 0x5b, 0xd8, 0xe8, 0x44, }; static const unsigned char ecdh_brainpoolp320r1_756_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_756_sharedsecret[] = { 0x85, 0x83, 0x68, 0xca, 0x05, 0x2f, 0xd7, 0x35, 0x4f, 0x6a, 0x94, 0xed, 0x35, 0x98, 0x30, 0xee, 0x7b, 0xd6, 0xeb, 0xb0, 0xc8, 0xcc, 0x5b, 0x38, 0x1a, 0x80, 0xad, 0x61, 0x21, 0x42, 0x29, 0x73, 0xbd, 0xc0, 0x7c, 0x2c, 0xe3, 0x11, 0xd2, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_756 = { .name = "ecdh_brainpoolp320r1_756", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_756_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_756_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_756_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 112 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 757 for ECDH, tcId is 113 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_757_peerpubkey[] = { 0xac, 0xce, 0x56, 0xaa, 0x39, 0xbc, 0x76, 0x17, 0xbf, 0xf1, 0x9c, 0xbc, 0x4e, 0xc8, 0xab, 0xd2, 0xb4, 0x62, 0x04, 0xd7, 0xdc, 0xcb, 0xcb, 0x18, 0x32, 0x63, 0x25, 0x49, 0x3f, 0x43, 0x30, 0x2a, 0x46, 0xf4, 0xc1, 0x31, 0x89, 0x5b, 0x8a, 0x26, 0x84, 0x58, 0x77, 0x21, 0x7f, 0xf3, 0x60, 0x93, 0x46, 0x1d, 0xe2, 0x20, 0xfe, 0xd2, 0x18, 0x82, 0x71, 0x21, 0x98, 0x2d, 0x48, 0xd9, 0x7b, 0xfd, 0xf5, 0xfa, 0x0b, 0x59, 0xf7, 0xb2, 0x37, 0x95, 0xa6, 0x6c, 0x03, 0xab, 0x17, 0x7a, 0xd3, 0x51, }; static const unsigned char ecdh_brainpoolp320r1_757_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_757_sharedsecret[] = { 0x65, 0x52, 0xc8, 0xdd, 0x12, 0x5c, 0x16, 0x9b, 0xe6, 0x11, 0x96, 0x16, 0x66, 0xe6, 0xab, 0x80, 0x35, 0x86, 0x98, 0xe4, 0x24, 0x16, 0x09, 0x5a, 0xa5, 0xc6, 0xa0, 0xae, 0x20, 0x58, 0xb1, 0x62, 0xf1, 0x67, 0x45, 0x46, 0xf1, 0x0f, 0x9c, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_757 = { .name = "ecdh_brainpoolp320r1_757", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_757_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_757_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_757_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 113 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 758 for ECDH, tcId is 114 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_758_peerpubkey[] = { 0x98, 0xe8, 0xf8, 0x5b, 0xef, 0x00, 0x40, 0xa5, 0x7e, 0xeb, 0xf9, 0xd2, 0x97, 0xde, 0x46, 0x0d, 0x33, 0x43, 0x74, 0xb5, 0x1b, 0xa3, 0xc6, 0xa7, 0x72, 0xf0, 0x02, 0xd6, 0x9b, 0x57, 0x92, 0xaa, 0xd8, 0xe3, 0x76, 0x35, 0xe7, 0x2c, 0xea, 0x5b, 0x39, 0x35, 0x56, 0xfc, 0xad, 0x83, 0x5b, 0xac, 0xc9, 0xd8, 0xeb, 0x1c, 0x4e, 0x97, 0x75, 0x10, 0xfb, 0x5b, 0x59, 0x44, 0x0e, 0x1f, 0x14, 0x43, 0x66, 0xd1, 0xd5, 0x25, 0x47, 0xd4, 0xb7, 0x5a, 0xae, 0x18, 0x58, 0x4b, 0xbf, 0xfa, 0x2a, 0xb8, }; static const unsigned char ecdh_brainpoolp320r1_758_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_758_sharedsecret[] = { 0x3d, 0x5f, 0x8d, 0xa8, 0xb5, 0xbd, 0x68, 0x75, 0x16, 0x28, 0x40, 0x9a, 0x56, 0xba, 0xf1, 0x66, 0xc1, 0xdb, 0xce, 0xa8, 0x90, 0xa9, 0x41, 0x4d, 0xb7, 0xd3, 0xb8, 0x36, 0xdd, 0x45, 0xce, 0xdb, 0x34, 0xec, 0x7e, 0xf1, 0x95, 0xbf, 0x0b, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_758 = { .name = "ecdh_brainpoolp320r1_758", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_758_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_758_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_758_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 114 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 759 for ECDH, tcId is 115 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_759_peerpubkey[] = { 0xbd, 0x25, 0xab, 0x21, 0x2e, 0x2e, 0xab, 0x51, 0xec, 0x83, 0x79, 0xa1, 0x68, 0xaa, 0x1e, 0x3f, 0xee, 0x7b, 0xb7, 0x69, 0x02, 0x4f, 0x70, 0x22, 0xd4, 0x39, 0xde, 0x6a, 0x42, 0x5c, 0x91, 0xa8, 0xff, 0x2e, 0x2c, 0x36, 0xe5, 0xef, 0x52, 0xb4, 0x03, 0xc6, 0x0f, 0x9f, 0x99, 0xcf, 0xc4, 0x39, 0x66, 0x42, 0xe6, 0x44, 0x00, 0xe9, 0x9e, 0x62, 0x3c, 0xa3, 0x05, 0xa6, 0xb6, 0xa6, 0xd3, 0xd9, 0x6f, 0x90, 0x37, 0x1b, 0xf1, 0x6d, 0xbb, 0x73, 0xef, 0xb8, 0xd4, 0xc8, 0x53, 0xa8, 0x13, 0x69, }; static const unsigned char ecdh_brainpoolp320r1_759_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_759_sharedsecret[] = { 0x1f, 0x9c, 0x6f, 0xde, 0x54, 0xb1, 0x94, 0xee, 0x8d, 0x73, 0x07, 0x98, 0x44, 0x9f, 0x2a, 0x15, 0x0e, 0x42, 0xf2, 0x40, 0x0b, 0x9a, 0x27, 0xf8, 0xe0, 0xb7, 0xda, 0xaa, 0xbb, 0xa3, 0x58, 0x3e, 0x21, 0xb7, 0x76, 0x9d, 0xac, 0x0f, 0xe1, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_759 = { .name = "ecdh_brainpoolp320r1_759", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_759_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_759_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_759_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 115 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 760 for ECDH, tcId is 116 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_760_peerpubkey[] = { 0xaa, 0x2c, 0xff, 0x40, 0xa6, 0x31, 0x38, 0x7c, 0x01, 0x84, 0xd0, 0x89, 0x8e, 0x3d, 0x38, 0xcb, 0x33, 0x0c, 0x40, 0x09, 0x17, 0x7a, 0x17, 0x2c, 0x48, 0x0f, 0x4a, 0x3a, 0x56, 0x9a, 0x3c, 0x91, 0x73, 0xdd, 0x73, 0xf4, 0x2e, 0x85, 0x62, 0xa4, 0x01, 0x44, 0x8b, 0xbb, 0x27, 0x6b, 0x8f, 0x88, 0xcb, 0x37, 0xec, 0x61, 0xd6, 0x2a, 0xb4, 0x0e, 0x60, 0xb4, 0xf3, 0x0e, 0xe3, 0xd1, 0xc8, 0xc4, 0x55, 0x42, 0x19, 0x81, 0xc7, 0xb3, 0xd7, 0xef, 0x06, 0x7e, 0xac, 0x42, 0x6a, 0x96, 0xa6, 0x87, }; static const unsigned char ecdh_brainpoolp320r1_760_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_760_sharedsecret[] = { 0xc4, 0xb0, 0x74, 0x53, 0x90, 0x25, 0x06, 0x6a, 0xdb, 0x03, 0xe2, 0xbe, 0x9c, 0x70, 0x50, 0x77, 0x82, 0x3f, 0x4c, 0x46, 0x88, 0xe5, 0x53, 0xa1, 0xe0, 0x7a, 0x56, 0xfd, 0x2d, 0x0b, 0x0d, 0x57, 0x5b, 0xac, 0x86, 0xdb, 0xda, 0x5e, 0x5c, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_760 = { .name = "ecdh_brainpoolp320r1_760", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_760_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_760_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_760_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 116 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 761 for ECDH, tcId is 117 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_761_peerpubkey[] = { 0x59, 0x22, 0x97, 0x84, 0xae, 0xba, 0x81, 0x18, 0x0a, 0xa7, 0x0b, 0x39, 0xa4, 0x53, 0xe6, 0x95, 0x71, 0xc1, 0x6e, 0x74, 0x74, 0x65, 0x6b, 0x6b, 0x59, 0xb6, 0x64, 0xf0, 0xb5, 0x9c, 0x1b, 0xe0, 0xaa, 0x9d, 0x6f, 0xa3, 0x9f, 0xb6, 0xdb, 0x73, 0x9d, 0xdd, 0x45, 0xe8, 0x42, 0x64, 0x50, 0x28, 0xf9, 0x86, 0xec, 0xfd, 0x2d, 0x8d, 0xbf, 0x19, 0xa2, 0xa2, 0x52, 0x4c, 0xaf, 0x5a, 0xa5, 0x78, 0x50, 0x08, 0x41, 0x03, 0x2d, 0xa0, 0xba, 0x3d, 0x21, 0xc1, 0x9f, 0x30, 0x51, 0x85, 0x6f, 0xfc, }; static const unsigned char ecdh_brainpoolp320r1_761_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_761_sharedsecret[] = { 0xb3, 0xf7, 0x4e, 0xd2, 0x16, 0xc4, 0x33, 0x4b, 0x03, 0x7e, 0x94, 0xa1, 0xf8, 0xde, 0x09, 0xb6, 0x15, 0xec, 0xe4, 0xd6, 0xab, 0xa0, 0x21, 0x72, 0x67, 0xca, 0xc8, 0x66, 0x98, 0xf6, 0x04, 0xdb, 0x53, 0x63, 0x2b, 0xc5, 0x29, 0xb9, 0xd5, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_761 = { .name = "ecdh_brainpoolp320r1_761", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_761_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_761_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_761_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 117 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 762 for ECDH, tcId is 118 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_762_peerpubkey[] = { 0xa7, 0x0b, 0xf7, 0xe4, 0xc2, 0x28, 0x1f, 0x8e, 0x0a, 0x5d, 0x53, 0x48, 0x5d, 0xbc, 0xa4, 0x88, 0x70, 0x8b, 0x53, 0x21, 0x65, 0xb7, 0xc0, 0x2c, 0xca, 0x29, 0x43, 0xc8, 0xb6, 0x96, 0x09, 0xf8, 0x75, 0x2f, 0x11, 0x00, 0x56, 0x91, 0xb4, 0x8b, 0x25, 0x4d, 0x72, 0xd5, 0x72, 0x72, 0xe8, 0xd1, 0xe7, 0x8c, 0xc3, 0xe3, 0x2b, 0xc3, 0xa7, 0x3b, 0x50, 0x04, 0xc9, 0x03, 0xa6, 0x5e, 0x23, 0x1e, 0xe0, 0xe1, 0x4d, 0x8e, 0x76, 0xfe, 0x2d, 0x27, 0xd4, 0x6a, 0x30, 0xc3, 0x96, 0xbe, 0xd6, 0xfd, }; static const unsigned char ecdh_brainpoolp320r1_762_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_762_sharedsecret[] = { 0x05, 0xda, 0xc6, 0x7f, 0x72, 0xea, 0x4b, 0xf4, 0xdc, 0xe6, 0xf6, 0xef, 0x19, 0x71, 0xe8, 0x4c, 0x47, 0x11, 0x88, 0xf7, 0x79, 0xb1, 0x5d, 0x5a, 0x04, 0x56, 0xbb, 0xa8, 0x29, 0xc7, 0x56, 0x81, 0x69, 0x21, 0x0d, 0x58, 0x3e, 0x4b, 0xd1, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_762 = { .name = "ecdh_brainpoolp320r1_762", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_762_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_762_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_762_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 118 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 763 for ECDH, tcId is 119 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_763_peerpubkey[] = { 0x09, 0x49, 0x95, 0x76, 0x89, 0xf8, 0xf7, 0x52, 0x19, 0x51, 0x6a, 0xec, 0x73, 0xb0, 0xb9, 0x04, 0x16, 0x9d, 0x42, 0xef, 0xbe, 0xe6, 0xb0, 0x3b, 0x1b, 0x03, 0xb4, 0x64, 0xaf, 0xcc, 0x51, 0xa6, 0xbb, 0x37, 0xc5, 0x3c, 0x7d, 0x65, 0x46, 0xa4, 0x5e, 0x52, 0x29, 0x98, 0x1f, 0x05, 0x3f, 0xea, 0x58, 0xd2, 0x51, 0x7b, 0x8f, 0xb6, 0xe9, 0x9d, 0x18, 0xb4, 0xb3, 0xf6, 0x94, 0x4b, 0x5e, 0x50, 0x3c, 0x94, 0x74, 0x6b, 0xe9, 0xbd, 0x0d, 0xda, 0x39, 0xf4, 0xc9, 0x17, 0x60, 0x5d, 0x2e, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_763_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_763_sharedsecret[] = { 0x24, 0x6a, 0x61, 0xf2, 0x92, 0xdd, 0x51, 0xb3, 0xf1, 0x68, 0xac, 0xd5, 0x0d, 0x44, 0x00, 0x2a, 0xe6, 0x31, 0x7f, 0x9a, 0x1a, 0x21, 0xe2, 0xb3, 0x2f, 0x39, 0x33, 0x3e, 0xde, 0xad, 0x71, 0x09, 0x2d, 0x5b, 0xc5, 0x45, 0x0d, 0x10, 0x5d, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_763 = { .name = "ecdh_brainpoolp320r1_763", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_763_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_763_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_763_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 119 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 764 for ECDH, tcId is 120 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_764_peerpubkey[] = { 0xb0, 0x93, 0xc4, 0x86, 0x7d, 0x6f, 0x9a, 0xd7, 0x14, 0x50, 0x4b, 0x0e, 0x43, 0x66, 0xb7, 0x93, 0x4a, 0xa4, 0xbe, 0x02, 0x02, 0xc5, 0x56, 0xd6, 0x2b, 0xd7, 0x26, 0xa0, 0xf3, 0x7d, 0x89, 0xf5, 0x66, 0x3d, 0x1d, 0x4b, 0xbc, 0x82, 0x73, 0x15, 0xbb, 0xb8, 0x29, 0x3b, 0x93, 0x70, 0xcb, 0x66, 0x24, 0x27, 0x47, 0x6c, 0x5f, 0xb4, 0x39, 0x99, 0x8f, 0x90, 0xe7, 0xee, 0xad, 0x78, 0xdb, 0xfd, 0xac, 0xe1, 0x02, 0x11, 0x3d, 0x7d, 0xab, 0xaf, 0x3b, 0xca, 0xc8, 0xcc, 0x56, 0xb8, 0x90, 0xb3, }; static const unsigned char ecdh_brainpoolp320r1_764_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_764_sharedsecret[] = { 0x32, 0xc3, 0xed, 0x94, 0x54, 0xd7, 0x8a, 0xe4, 0x62, 0x14, 0x7c, 0x01, 0x0c, 0x88, 0xaf, 0xf6, 0x91, 0xc4, 0x79, 0xd6, 0xde, 0xc5, 0x5b, 0x19, 0xcf, 0xf8, 0x56, 0x68, 0x00, 0x17, 0xa1, 0x64, 0xe4, 0x5c, 0x57, 0xd9, 0x0d, 0x5a, 0xef, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_764 = { .name = "ecdh_brainpoolp320r1_764", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_764_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_764_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_764_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 120 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 765 for ECDH, tcId is 121 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_765_peerpubkey[] = { 0x2e, 0xff, 0x93, 0xa7, 0x30, 0xbd, 0x79, 0xbb, 0x0a, 0xcd, 0xa8, 0xff, 0xbc, 0x7c, 0x92, 0x7b, 0x58, 0x4e, 0x11, 0xac, 0xd5, 0xb5, 0xaf, 0x72, 0x6c, 0x96, 0x5e, 0x49, 0x67, 0x01, 0xae, 0x8f, 0x4f, 0xd5, 0xa4, 0x9e, 0x54, 0x67, 0xfc, 0xd0, 0x89, 0xd1, 0x6b, 0xe5, 0xea, 0xfe, 0x7e, 0xcb, 0x7d, 0xcb, 0x7b, 0x2f, 0xa4, 0x02, 0x69, 0xc3, 0x89, 0x08, 0x4b, 0x2d, 0xc0, 0x68, 0xf0, 0x39, 0xe6, 0x49, 0x71, 0x58, 0xfe, 0xa7, 0xbf, 0x53, 0xb9, 0x13, 0xc1, 0xac, 0x66, 0xe8, 0x39, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_765_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_765_sharedsecret[] = { 0xce, 0x5d, 0xbd, 0x12, 0x18, 0x6c, 0xbd, 0x20, 0x25, 0xa7, 0x1e, 0x85, 0x88, 0xc3, 0x8f, 0x8a, 0x77, 0x84, 0x1a, 0x24, 0x9d, 0xad, 0x66, 0x16, 0x85, 0x23, 0xe7, 0xac, 0x2f, 0xb9, 0xa2, 0x21, 0xc1, 0xb5, 0xbd, 0x44, 0x62, 0x82, 0xb1, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_765 = { .name = "ecdh_brainpoolp320r1_765", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_765_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_765_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_765_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 121 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 766 for ECDH, tcId is 122 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_766_peerpubkey[] = { 0x9d, 0x27, 0xcb, 0x21, 0x1f, 0xfe, 0x7b, 0x55, 0x30, 0x2e, 0x92, 0x25, 0x47, 0xda, 0xe1, 0xbd, 0x22, 0xe7, 0x89, 0x1f, 0x6a, 0xfe, 0x0a, 0x63, 0x90, 0x31, 0xc9, 0x3a, 0x51, 0x92, 0xc9, 0x2c, 0x24, 0xd2, 0xa5, 0x67, 0xdf, 0x5a, 0xd1, 0x14, 0x25, 0xb3, 0xb1, 0xb2, 0x5c, 0x40, 0x8a, 0x81, 0x8e, 0xd2, 0xd8, 0x19, 0x14, 0x92, 0x29, 0x93, 0xbb, 0xf1, 0x05, 0x7c, 0xee, 0x48, 0xb9, 0x34, 0x02, 0x11, 0xbb, 0x55, 0x74, 0x31, 0xc0, 0x37, 0xf8, 0x40, 0x24, 0x2a, 0x18, 0x25, 0xd6, 0xa8, }; static const unsigned char ecdh_brainpoolp320r1_766_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_766_sharedsecret[] = { 0x03, 0x17, 0x7b, 0xee, 0x62, 0x7f, 0x3b, 0x12, 0xc2, 0x22, 0x02, 0x89, 0xba, 0x53, 0x9c, 0x67, 0x0d, 0x4e, 0x44, 0xb8, 0x8d, 0xc6, 0xb2, 0x27, 0xde, 0xbe, 0x69, 0x69, 0x7c, 0xdb, 0xb6, 0x21, 0xec, 0xc3, 0x5f, 0xa2, 0x38, 0x47, 0x8c, 0x10, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_766 = { .name = "ecdh_brainpoolp320r1_766", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_766_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_766_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_766_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 122 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 767 for ECDH, tcId is 123 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_767_peerpubkey[] = { 0x28, 0xc2, 0x76, 0x0e, 0x46, 0x43, 0x95, 0x49, 0x83, 0xdf, 0x25, 0xc1, 0x66, 0x9e, 0x7f, 0x60, 0x07, 0x5a, 0x35, 0xc2, 0xa0, 0xa6, 0xb5, 0x1e, 0xdc, 0x66, 0xaa, 0x9b, 0x5c, 0xde, 0x31, 0x11, 0x27, 0xeb, 0xec, 0xde, 0x55, 0x39, 0x1d, 0xf8, 0x38, 0xdf, 0xee, 0x3e, 0xe6, 0x44, 0x67, 0x45, 0x71, 0x59, 0x18, 0xba, 0x6d, 0xf2, 0x3e, 0xef, 0x3f, 0x71, 0x83, 0xb7, 0xde, 0xe1, 0xa1, 0xf1, 0x1f, 0x11, 0xeb, 0x20, 0x99, 0xf5, 0x14, 0x82, 0x3c, 0x2c, 0x89, 0x17, 0xce, 0xb7, 0x6b, 0x53, }; static const unsigned char ecdh_brainpoolp320r1_767_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_767_sharedsecret[] = { 0xa9, 0x8d, 0x99, 0x62, 0xcb, 0x3e, 0x53, 0x18, 0x04, 0x8d, 0x4d, 0xcb, 0x4c, 0xdf, 0x0c, 0x7d, 0xf4, 0x5a, 0x69, 0x7a, 0x34, 0xea, 0xf4, 0xdc, 0x8a, 0x74, 0x09, 0x58, 0xc0, 0x11, 0xa9, 0x73, 0x6b, 0xd9, 0x2c, 0xbd, 0x6b, 0x3b, 0x57, 0x05, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_767 = { .name = "ecdh_brainpoolp320r1_767", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_767_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_767_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_767_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 123 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 768 for ECDH, tcId is 124 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_768_peerpubkey[] = { 0xa9, 0xa7, 0x77, 0x9e, 0x78, 0xac, 0xc3, 0x09, 0xc0, 0xb3, 0x63, 0x62, 0xde, 0xf7, 0xb7, 0x54, 0x1d, 0x6e, 0x47, 0x27, 0xc5, 0xb1, 0xf2, 0x42, 0x7d, 0xd2, 0x22, 0x6f, 0xe5, 0x6f, 0x3a, 0x1f, 0xaf, 0xf7, 0xea, 0x73, 0x74, 0x64, 0xfd, 0xc0, 0x30, 0x05, 0x1f, 0x5d, 0x43, 0xf9, 0xcd, 0x49, 0x87, 0xe1, 0xf4, 0x94, 0x9b, 0x25, 0x02, 0x39, 0x0c, 0x44, 0x0a, 0x61, 0xc4, 0xe9, 0x07, 0xb5, 0xaf, 0x70, 0xcf, 0x54, 0xee, 0xad, 0x28, 0x0f, 0xf6, 0xca, 0xe5, 0x14, 0x0d, 0xae, 0x92, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_768_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_768_sharedsecret[] = { 0x42, 0xb7, 0x06, 0x59, 0x7f, 0xcf, 0x1c, 0x64, 0xf6, 0x10, 0x7d, 0x42, 0x42, 0xd2, 0x36, 0xe7, 0xfe, 0x76, 0x17, 0x22, 0xfa, 0xf0, 0x5f, 0x1b, 0xf3, 0xf4, 0xc3, 0x66, 0x2a, 0xa2, 0xf3, 0x97, 0x64, 0x40, 0x1d, 0x12, 0xc7, 0x68, 0x58, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_768 = { .name = "ecdh_brainpoolp320r1_768", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_768_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_768_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_768_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 124 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 769 for ECDH, tcId is 125 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_769_peerpubkey[] = { 0x5a, 0xf8, 0x3d, 0x09, 0x71, 0xa0, 0xf7, 0x3a, 0x0e, 0xd0, 0x28, 0x3d, 0x8c, 0x46, 0xab, 0x2f, 0x98, 0x0f, 0xa4, 0x0d, 0xba, 0xbb, 0x57, 0x5b, 0x27, 0xf7, 0x76, 0x29, 0x89, 0x44, 0xf3, 0x83, 0xae, 0xff, 0x4c, 0x37, 0x5a, 0xc4, 0x5a, 0x7c, 0x32, 0xae, 0x96, 0x6a, 0xee, 0x37, 0x30, 0x4e, 0xde, 0xaa, 0x85, 0x4c, 0x19, 0x49, 0xba, 0x0b, 0x65, 0x94, 0xf9, 0x62, 0x38, 0xa8, 0x48, 0x59, 0x8c, 0xe6, 0x06, 0xb7, 0xee, 0x12, 0x5f, 0x12, 0x1d, 0xa5, 0x07, 0xcc, 0x1c, 0x3b, 0x63, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_769_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_769_sharedsecret[] = { 0x52, 0xd0, 0xcc, 0xf9, 0x03, 0x33, 0xce, 0x0c, 0xad, 0x89, 0xa3, 0xa5, 0xc1, 0x0e, 0x1c, 0x83, 0x59, 0x4d, 0x48, 0x1d, 0xcf, 0x16, 0xfb, 0x11, 0x5e, 0x40, 0xcf, 0xd1, 0xc6, 0x71, 0xb7, 0xfd, 0xac, 0x82, 0x7b, 0x54, 0x98, 0x2a, 0x42, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_769 = { .name = "ecdh_brainpoolp320r1_769", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_769_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_769_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_769_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 125 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 770 for ECDH, tcId is 126 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_770_peerpubkey[] = { 0x2b, 0x75, 0x2c, 0xd4, 0x79, 0x82, 0xc0, 0x56, 0x78, 0x69, 0xf0, 0x85, 0xfa, 0x32, 0x59, 0x1f, 0x91, 0xd1, 0x53, 0x5d, 0xd2, 0x46, 0x71, 0x4a, 0x9a, 0x44, 0x43, 0xcd, 0x4a, 0x65, 0xcd, 0x12, 0x7e, 0x65, 0x84, 0xda, 0x98, 0x2f, 0xbf, 0x44, 0x5a, 0xd3, 0x59, 0x97, 0x67, 0xf9, 0xa6, 0xf0, 0x19, 0x3c, 0xd6, 0x16, 0x72, 0x52, 0x1e, 0x4c, 0xec, 0x02, 0x61, 0x5b, 0x84, 0xa8, 0x92, 0x54, 0xa1, 0x71, 0xdd, 0x6e, 0x1b, 0x3c, 0x06, 0x24, 0x3c, 0xd7, 0xe8, 0xe5, 0x4f, 0x93, 0x0c, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_770_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_770_sharedsecret[] = { 0x77, 0x72, 0x04, 0xf2, 0x20, 0xbc, 0x76, 0xd5, 0x7a, 0xc4, 0xe8, 0xbc, 0x15, 0xc6, 0x5d, 0x27, 0x5e, 0xcd, 0xe4, 0xb1, 0xcb, 0x8f, 0xaf, 0x22, 0x79, 0x47, 0x6d, 0x4b, 0x79, 0x3c, 0xed, 0x8f, 0x4d, 0x97, 0x83, 0xd4, 0xb0, 0x48, 0x3d, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_770 = { .name = "ecdh_brainpoolp320r1_770", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_770_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_770_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_770_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 126 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 771 for ECDH, tcId is 127 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_771_peerpubkey[] = { 0x6c, 0x9b, 0x89, 0x42, 0xaf, 0xbf, 0xe5, 0x96, 0x87, 0x16, 0x8e, 0x8e, 0x52, 0x02, 0x3e, 0x18, 0xcb, 0xeb, 0xdc, 0x7f, 0xb4, 0x68, 0x28, 0x77, 0x88, 0xc9, 0x8b, 0xc6, 0xa6, 0x5e, 0xeb, 0x6a, 0xa0, 0xfb, 0x49, 0x20, 0x92, 0x67, 0xa0, 0xb9, 0xcf, 0x33, 0xa3, 0x27, 0x70, 0xab, 0x0f, 0xc7, 0xdd, 0x30, 0x70, 0xff, 0xc5, 0x4b, 0x1c, 0xb1, 0xca, 0x42, 0x61, 0xa1, 0x81, 0x03, 0xba, 0xd2, 0xae, 0xf4, 0x03, 0x33, 0x2e, 0x76, 0xf3, 0x8c, 0xa3, 0xa4, 0xae, 0x44, 0x37, 0xef, 0xf3, 0x3c, }; static const unsigned char ecdh_brainpoolp320r1_771_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_771_sharedsecret[] = { 0x5e, 0x11, 0xf8, 0x85, 0x88, 0x54, 0x94, 0x8e, 0x62, 0x01, 0x44, 0x38, 0x5e, 0x68, 0x07, 0x16, 0x9c, 0xa5, 0x9f, 0xd9, 0x72, 0x81, 0x77, 0xf9, 0x81, 0x32, 0x50, 0x26, 0x88, 0x7c, 0xdd, 0x80, 0x3e, 0x7a, 0xe2, 0x76, 0x8f, 0x43, 0x65, 0xd5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_771 = { .name = "ecdh_brainpoolp320r1_771", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_771_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_771_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_771_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 127 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 772 for ECDH, tcId is 128 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_772_peerpubkey[] = { 0x88, 0x01, 0x0d, 0x2b, 0x02, 0x55, 0x9e, 0xb9, 0xd5, 0x68, 0x10, 0xe0, 0xf4, 0x8b, 0xf0, 0x0e, 0x5f, 0x19, 0xd3, 0x06, 0xa1, 0x82, 0xd3, 0x6a, 0xd4, 0xe6, 0x2d, 0x3d, 0xa9, 0xdc, 0x38, 0x38, 0xe3, 0xc1, 0x8b, 0x0a, 0x0c, 0x4f, 0xee, 0x2c, 0x28, 0x08, 0xbb, 0xe0, 0x33, 0xa1, 0x65, 0xe8, 0xce, 0x26, 0xa6, 0x55, 0x55, 0x99, 0x7b, 0x7e, 0x61, 0x67, 0x85, 0xe8, 0xe3, 0xa9, 0x1e, 0x19, 0x8e, 0x38, 0x9f, 0xf9, 0x35, 0xa3, 0x29, 0x1d, 0x55, 0x66, 0xa9, 0xd9, 0x1a, 0xc6, 0x9c, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_772_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_772_sharedsecret[] = { 0x97, 0x4e, 0x8a, 0x57, 0x2c, 0xe6, 0x61, 0x1e, 0x81, 0x0c, 0x3d, 0x1d, 0xc2, 0xbf, 0x6b, 0xc7, 0x65, 0x1a, 0x28, 0x92, 0xf9, 0x61, 0xfa, 0x38, 0x64, 0x60, 0xe6, 0xc9, 0x3d, 0xed, 0x71, 0x11, 0xd0, 0x61, 0x25, 0x9d, 0x9a, 0x0d, 0x22, 0x85, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_772 = { .name = "ecdh_brainpoolp320r1_772", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_772_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_772_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_772_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 128 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 773 for ECDH, tcId is 129 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_773_peerpubkey[] = { 0x4f, 0x3e, 0x53, 0xc8, 0xc4, 0xba, 0x00, 0x7a, 0x2f, 0x12, 0x50, 0x5f, 0xe8, 0x7a, 0x24, 0xef, 0x96, 0x50, 0x4b, 0x36, 0x45, 0x5d, 0x9e, 0x81, 0x5f, 0x24, 0x60, 0x00, 0x35, 0xb1, 0xfa, 0xe5, 0x5f, 0x32, 0x9c, 0x39, 0xbf, 0xdd, 0x2e, 0x41, 0x2b, 0x99, 0x84, 0xf1, 0xd2, 0x35, 0xdb, 0x69, 0x0c, 0x39, 0x48, 0xb0, 0x35, 0x82, 0xb0, 0xc9, 0x57, 0x0a, 0xfd, 0xa9, 0xa9, 0x30, 0x51, 0xd0, 0xe8, 0x0b, 0xba, 0x76, 0x88, 0x8e, 0x8f, 0x32, 0x11, 0xd6, 0x26, 0x07, 0xe6, 0x7a, 0x67, 0x44, }; static const unsigned char ecdh_brainpoolp320r1_773_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_773_sharedsecret[] = { 0x03, 0x81, 0x50, 0xbc, 0x16, 0x8d, 0x71, 0xb4, 0xc9, 0x9d, 0x9e, 0x6b, 0x08, 0xaa, 0x88, 0x2a, 0x64, 0x41, 0x5d, 0xd0, 0x4e, 0x69, 0x51, 0xc6, 0x09, 0xdb, 0x35, 0x55, 0xb7, 0xca, 0xe2, 0x20, 0x2b, 0x91, 0x90, 0xe8, 0x01, 0x9c, 0x21, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_773 = { .name = "ecdh_brainpoolp320r1_773", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_773_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_773_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_773_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 129 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 774 for ECDH, tcId is 130 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_774_peerpubkey[] = { 0x71, 0xd3, 0x8f, 0x28, 0xbd, 0x5b, 0x00, 0x3e, 0x6b, 0xf7, 0x24, 0x19, 0xaa, 0xef, 0x28, 0x36, 0x39, 0x60, 0x2e, 0x24, 0x08, 0xb7, 0x81, 0xb2, 0x3e, 0xd3, 0x19, 0x38, 0x02, 0x13, 0xff, 0xd9, 0xd0, 0x72, 0x7e, 0x63, 0xce, 0xd7, 0x4e, 0x12, 0xc2, 0x18, 0x74, 0x72, 0x4b, 0xd0, 0xb0, 0x96, 0x9e, 0x12, 0xca, 0x09, 0x3a, 0xbf, 0x43, 0x70, 0x4f, 0xdf, 0x3f, 0x53, 0x98, 0x7a, 0x6f, 0x67, 0x58, 0x49, 0xcf, 0x2f, 0xa1, 0x97, 0x5a, 0x77, 0xc1, 0x43, 0x19, 0x7e, 0xe2, 0x1b, 0xc4, 0x82, }; static const unsigned char ecdh_brainpoolp320r1_774_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_774_sharedsecret[] = { 0x9f, 0x09, 0x28, 0x11, 0xff, 0xeb, 0x10, 0xfb, 0xb3, 0x3d, 0x6a, 0xbf, 0xc0, 0x0e, 0xeb, 0x07, 0xe1, 0x81, 0xb0, 0x90, 0x0d, 0xfe, 0x97, 0x77, 0x81, 0x8a, 0x42, 0x25, 0x85, 0xd5, 0x50, 0x99, 0xc1, 0xd4, 0xe2, 0x13, 0xe6, 0xbd, 0xc5, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_774 = { .name = "ecdh_brainpoolp320r1_774", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_774_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_774_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_774_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 130 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 775 for ECDH, tcId is 131 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_775_peerpubkey[] = { 0xc1, 0x01, 0x39, 0xc8, 0xc3, 0xf0, 0x46, 0x84, 0x4c, 0xac, 0x36, 0xd7, 0xdc, 0x70, 0x50, 0xfa, 0x25, 0x00, 0x04, 0x19, 0x00, 0x28, 0xfd, 0xd0, 0x1c, 0x04, 0xf2, 0xce, 0xf1, 0x3f, 0x91, 0xa6, 0x78, 0xc5, 0x8e, 0xd8, 0x9e, 0x3f, 0x54, 0x96, 0x7e, 0x60, 0x11, 0x7e, 0x9e, 0xa2, 0xf3, 0x94, 0xc5, 0x93, 0x26, 0xd6, 0x20, 0xa9, 0xa6, 0x8b, 0xb0, 0xa6, 0x27, 0x45, 0xcf, 0xe7, 0x01, 0x86, 0x26, 0xbf, 0x50, 0x01, 0x27, 0xfb, 0x0d, 0xb2, 0x2a, 0x01, 0xe1, 0x3b, 0xd7, 0xe6, 0x99, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_775_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_775_sharedsecret[] = { 0x1a, 0x67, 0xf7, 0x84, 0xf6, 0x4a, 0xdb, 0xc3, 0xcf, 0xd0, 0xbc, 0x19, 0xe2, 0x72, 0xbc, 0x3b, 0xac, 0x59, 0xd8, 0x03, 0x5b, 0x1e, 0x51, 0x52, 0x55, 0x0d, 0x77, 0x25, 0x62, 0xe5, 0x28, 0x67, 0xcb, 0xa8, 0x52, 0x3f, 0x8b, 0x36, 0x48, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_775 = { .name = "ecdh_brainpoolp320r1_775", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_775_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_775_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_775_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 131 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 776 for ECDH, tcId is 132 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_776_peerpubkey[] = { 0x3b, 0x81, 0xb6, 0x5e, 0xbd, 0x78, 0xfe, 0xfb, 0xf0, 0x39, 0x06, 0x08, 0x8d, 0x3d, 0x70, 0x26, 0x57, 0xb1, 0x37, 0x48, 0x1e, 0x55, 0xce, 0xad, 0x9b, 0xe8, 0xb8, 0xed, 0xf3, 0xe7, 0x40, 0x8f, 0x23, 0xf0, 0x33, 0x83, 0x13, 0x70, 0x71, 0x03, 0x5d, 0x31, 0x53, 0x64, 0xd3, 0x3b, 0x4d, 0x4b, 0xf0, 0x70, 0xe9, 0xaa, 0xd6, 0x52, 0xf3, 0xdc, 0x36, 0xff, 0x82, 0x51, 0x7b, 0x04, 0xd4, 0x49, 0xdd, 0x50, 0x72, 0xc9, 0x96, 0xd9, 0x5e, 0x44, 0x41, 0xdf, 0x6f, 0x8a, 0xde, 0x68, 0xbb, 0xd4, }; static const unsigned char ecdh_brainpoolp320r1_776_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_776_sharedsecret[] = { 0x3e, 0x0f, 0xfd, 0xfe, 0x18, 0x1c, 0x1b, 0x80, 0xe0, 0x69, 0x49, 0x00, 0xa5, 0xf5, 0xeb, 0x80, 0x1c, 0x36, 0x2a, 0x52, 0x98, 0xb1, 0xbe, 0xf5, 0xb4, 0xbb, 0xb0, 0xc9, 0x40, 0x58, 0xa8, 0xc5, 0xb5, 0x04, 0x37, 0x06, 0xc7, 0x0e, 0x38, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_776 = { .name = "ecdh_brainpoolp320r1_776", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_776_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_776_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_776_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 132 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 777 for ECDH, tcId is 133 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_777_peerpubkey[] = { 0x89, 0x68, 0x2b, 0x24, 0xfd, 0x24, 0x78, 0x10, 0x22, 0x17, 0x9e, 0x62, 0x9e, 0x0a, 0x6d, 0x1a, 0xba, 0x82, 0x86, 0xbc, 0x66, 0x28, 0xad, 0x4e, 0x2e, 0xed, 0xe3, 0x9c, 0x1e, 0xa8, 0x23, 0x3f, 0xbe, 0x73, 0x1e, 0x81, 0xfe, 0xc8, 0xdf, 0x42, 0x00, 0x2e, 0xeb, 0xe9, 0x5a, 0xf2, 0x15, 0xeb, 0x4d, 0xad, 0x23, 0xda, 0x30, 0x3c, 0x20, 0x66, 0x37, 0xda, 0x35, 0x51, 0x89, 0x0f, 0xae, 0x98, 0xd0, 0x3e, 0x06, 0x86, 0x17, 0x7a, 0x2d, 0x5b, 0x2b, 0x09, 0x3a, 0x48, 0x27, 0xe8, 0xd1, 0x8a, }; static const unsigned char ecdh_brainpoolp320r1_777_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_777_sharedsecret[] = { 0x85, 0x8e, 0x55, 0xfc, 0x4a, 0x59, 0xe7, 0x3b, 0x57, 0x67, 0x64, 0x01, 0xbf, 0xb4, 0xe1, 0x11, 0x74, 0x7a, 0x79, 0xcd, 0xa9, 0xda, 0x06, 0xcd, 0x8b, 0xad, 0x8d, 0x17, 0x0e, 0x1a, 0x43, 0xe5, 0xfd, 0x2d, 0x5d, 0xe7, 0xdb, 0xbf, 0xd4, 0x2a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_777 = { .name = "ecdh_brainpoolp320r1_777", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_777_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_777_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_777_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 133 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 778 for ECDH, tcId is 134 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_778_peerpubkey[] = { 0xa2, 0x3a, 0x49, 0x09, 0x4f, 0x11, 0x97, 0x3a, 0xe2, 0x32, 0x05, 0x57, 0xcb, 0x05, 0xa3, 0x3d, 0xdb, 0xb4, 0x97, 0x04, 0x95, 0x69, 0xf2, 0x3e, 0xaf, 0xf1, 0x24, 0xb3, 0x4e, 0x41, 0xba, 0x5f, 0x3c, 0x0a, 0x3d, 0x19, 0xb3, 0x6a, 0x31, 0xa5, 0x44, 0x38, 0xcf, 0xcd, 0xee, 0xab, 0x3f, 0xe3, 0xfc, 0x36, 0x53, 0x71, 0xa7, 0x15, 0xef, 0x59, 0xa2, 0x15, 0x89, 0x9a, 0xf2, 0xe7, 0xdb, 0xe2, 0xc1, 0x8f, 0xaa, 0xef, 0x86, 0xca, 0xf6, 0x48, 0xb6, 0x40, 0x22, 0xa8, 0xff, 0xaa, 0xf1, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_778_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_778_sharedsecret[] = { 0x00, 0xa8, 0x93, 0x77, 0xa8, 0x15, 0x24, 0xb3, 0x09, 0x80, 0xbf, 0x46, 0x34, 0xad, 0x67, 0x0f, 0x21, 0x9a, 0x29, 0x09, 0x8a, 0xb5, 0xcb, 0x29, 0x1c, 0x42, 0xd8, 0x4a, 0x20, 0xfc, 0x8b, 0xd7, 0x69, 0x22, 0xed, 0xea, 0x9a, 0xa6, 0x22, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_778 = { .name = "ecdh_brainpoolp320r1_778", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_778_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_778_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_778_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 134 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 779 for ECDH, tcId is 135 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_779_peerpubkey[] = { 0x91, 0x4c, 0xb4, 0x6a, 0x05, 0x44, 0xee, 0x31, 0xff, 0x1a, 0xc5, 0x1a, 0xd5, 0x92, 0x80, 0x18, 0xd7, 0x19, 0x98, 0xb4, 0xd9, 0x88, 0xcd, 0xfd, 0xee, 0x1b, 0x8f, 0x02, 0x4d, 0x8f, 0xa9, 0xdf, 0xcd, 0x80, 0x2e, 0xcd, 0xd6, 0x93, 0xb3, 0x24, 0x5e, 0x5a, 0x10, 0x56, 0xb9, 0xbc, 0x41, 0x04, 0xae, 0x13, 0x74, 0xc5, 0x9b, 0xa4, 0x4a, 0xb8, 0x88, 0xba, 0xd4, 0xdd, 0xbd, 0x42, 0xda, 0xe8, 0x1b, 0x22, 0x9c, 0x75, 0x04, 0xf7, 0x97, 0xe2, 0x49, 0xe5, 0xe6, 0x61, 0xac, 0x06, 0xf3, 0xaa, }; static const unsigned char ecdh_brainpoolp320r1_779_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_779_sharedsecret[] = { 0x80, 0x59, 0x7c, 0xc6, 0x45, 0xe9, 0x46, 0xd6, 0x12, 0x08, 0xa8, 0x05, 0x47, 0x55, 0x8a, 0x08, 0xbb, 0x18, 0x93, 0x65, 0xda, 0xcb, 0x2d, 0x90, 0x91, 0x41, 0xe7, 0x0d, 0x37, 0xc3, 0x1a, 0xde, 0x6f, 0xd8, 0x89, 0xa9, 0x0b, 0xa7, 0xf3, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_779 = { .name = "ecdh_brainpoolp320r1_779", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_779_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_779_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_779_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 135 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 780 for ECDH, tcId is 136 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_780_peerpubkey[] = { 0x8e, 0xae, 0x8e, 0x5e, 0x03, 0x53, 0x08, 0x7a, 0xf1, 0x5c, 0x71, 0x1e, 0x77, 0xf8, 0x10, 0x04, 0x66, 0x4d, 0xdf, 0x99, 0x3e, 0x85, 0x5f, 0x64, 0x4c, 0x6b, 0x47, 0x17, 0x20, 0xca, 0x39, 0x92, 0x5f, 0x63, 0xec, 0xf6, 0x4a, 0x83, 0x14, 0xb0, 0xab, 0xc1, 0x2c, 0x6c, 0x75, 0xfc, 0xf5, 0x98, 0xff, 0xb0, 0x03, 0x9d, 0xad, 0xbb, 0xf3, 0x19, 0xcf, 0xd7, 0x3c, 0x88, 0xf2, 0xaf, 0x2b, 0x90, 0x7d, 0x9d, 0x0b, 0x29, 0x41, 0x43, 0x56, 0x6a, 0x55, 0xd8, 0x5d, 0x2a, 0xa7, 0x67, 0x69, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_780_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_780_sharedsecret[] = { 0x2c, 0x7a, 0x43, 0x36, 0x2a, 0xad, 0x6a, 0xf4, 0xf7, 0x04, 0x7f, 0x10, 0xe0, 0x74, 0x03, 0x19, 0x37, 0x70, 0x81, 0xf1, 0xd8, 0xf1, 0x3d, 0x07, 0x80, 0xf5, 0x94, 0x24, 0x74, 0x39, 0x9b, 0xd3, 0x09, 0xfa, 0xe8, 0xc5, 0x66, 0x76, 0x18, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_780 = { .name = "ecdh_brainpoolp320r1_780", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_780_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_780_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_780_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 136 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 781 for ECDH, tcId is 137 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_781_peerpubkey[] = { 0x38, 0x63, 0x5c, 0xdd, 0xd7, 0x89, 0x2c, 0x35, 0xb4, 0x69, 0xef, 0xe3, 0x3b, 0x9e, 0x92, 0x82, 0x61, 0xc3, 0xdf, 0xb3, 0x76, 0x44, 0x95, 0xae, 0xd9, 0x0b, 0x66, 0x8c, 0x73, 0x18, 0xfa, 0x72, 0x1a, 0x4e, 0xbe, 0x27, 0xb5, 0x31, 0xde, 0xd6, 0x4d, 0xeb, 0xf1, 0x04, 0xc2, 0xa5, 0x0b, 0x09, 0x8b, 0xff, 0x46, 0x2c, 0xb7, 0x3f, 0x63, 0x74, 0x40, 0x79, 0xa8, 0x13, 0x84, 0x70, 0xab, 0xd0, 0x4c, 0x9c, 0xf9, 0xca, 0x44, 0x36, 0x39, 0x8b, 0xac, 0x5a, 0x66, 0x65, 0xf8, 0x78, 0x4f, 0xa4, }; static const unsigned char ecdh_brainpoolp320r1_781_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_781_sharedsecret[] = { 0x53, 0xa1, 0x37, 0x0f, 0xd4, 0xc1, 0x5c, 0xd2, 0x6c, 0x65, 0xca, 0x1e, 0x8e, 0x36, 0xa0, 0x96, 0x08, 0xf1, 0x2a, 0x6c, 0x1f, 0x9c, 0x67, 0xd9, 0xe5, 0x86, 0x30, 0x06, 0x4a, 0x2c, 0xf4, 0x41, 0x2f, 0x8a, 0x17, 0xc8, 0xff, 0x45, 0x52, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_781 = { .name = "ecdh_brainpoolp320r1_781", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_781_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_781_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_781_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 137 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 782 for ECDH, tcId is 138 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_782_peerpubkey[] = { 0x11, 0x0d, 0x13, 0x75, 0xad, 0xbd, 0xe1, 0x4d, 0xbf, 0xd1, 0xc4, 0xa9, 0xe3, 0xa0, 0x46, 0xe4, 0x4c, 0x06, 0xbf, 0xc1, 0x34, 0x53, 0x94, 0x0c, 0xcf, 0x66, 0x13, 0x00, 0x0e, 0xc7, 0xd4, 0x1e, 0x9d, 0xc4, 0x1a, 0x32, 0x25, 0x2f, 0xd2, 0xdc, 0x89, 0xbc, 0x34, 0xa8, 0x5e, 0xff, 0x53, 0xb3, 0x5b, 0xc5, 0xf9, 0x1c, 0x00, 0xad, 0x29, 0xee, 0x8e, 0x28, 0x95, 0x55, 0x1c, 0xcd, 0x3d, 0x9a, 0xea, 0x2b, 0x65, 0x90, 0x32, 0x95, 0xb5, 0x2c, 0xa9, 0xfe, 0xfe, 0x63, 0x48, 0x64, 0xbc, 0xbc, }; static const unsigned char ecdh_brainpoolp320r1_782_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_782_sharedsecret[] = { 0xb4, 0x6d, 0x2b, 0xd5, 0x2c, 0x81, 0x63, 0x9b, 0x91, 0x5d, 0xf0, 0x91, 0x35, 0x12, 0x92, 0x23, 0x3e, 0x27, 0x0a, 0x91, 0x8f, 0x74, 0x68, 0xb4, 0xa1, 0xec, 0x62, 0xbf, 0xe5, 0x04, 0xc8, 0x60, 0x45, 0x39, 0x8e, 0xa0, 0xdc, 0x9f, 0x68, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_782 = { .name = "ecdh_brainpoolp320r1_782", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_782_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_782_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_782_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 138 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 783 for ECDH, tcId is 139 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_783_peerpubkey[] = { 0x2d, 0x10, 0x75, 0x3a, 0x97, 0x80, 0x47, 0xcb, 0x3d, 0xe8, 0x04, 0x66, 0xcc, 0x0d, 0xb5, 0x7b, 0x2e, 0xcf, 0xd2, 0x1d, 0xce, 0xfb, 0xba, 0x5b, 0x1c, 0xf4, 0x87, 0x2c, 0x10, 0x84, 0x1e, 0x64, 0x79, 0x2f, 0x2f, 0x99, 0xd6, 0xf1, 0xa9, 0x01, 0xb5, 0x7a, 0x84, 0x35, 0xa2, 0x38, 0x99, 0x3a, 0xfc, 0x65, 0x50, 0x89, 0x3c, 0x7b, 0xf5, 0x4e, 0x25, 0xd0, 0x49, 0x97, 0x13, 0xa2, 0x47, 0xe6, 0x73, 0xb0, 0x56, 0xd4, 0xb1, 0xd1, 0x21, 0x2f, 0x74, 0xfa, 0x52, 0xfd, 0x8a, 0x68, 0x68, 0x42, }; static const unsigned char ecdh_brainpoolp320r1_783_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_783_sharedsecret[] = { 0x20, 0x0e, 0xd1, 0x9b, 0x08, 0x79, 0xa6, 0x5d, 0x46, 0x51, 0x6a, 0x0c, 0xde, 0x86, 0xeb, 0xfe, 0x6b, 0xe4, 0xf9, 0x0c, 0xc4, 0x5a, 0xdf, 0x7a, 0xf3, 0x84, 0xaa, 0x8a, 0xdf, 0x12, 0x67, 0x03, 0x94, 0xf8, 0x45, 0x5d, 0xf5, 0x40, 0xdf, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_783 = { .name = "ecdh_brainpoolp320r1_783", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_783_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_783_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_783_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 139 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 784 for ECDH, tcId is 140 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_784_peerpubkey[] = { 0x4e, 0xe8, 0xe1, 0x87, 0xe9, 0xea, 0x40, 0x88, 0x07, 0xf5, 0xfb, 0xfc, 0x11, 0x90, 0x9f, 0x9b, 0x3c, 0x44, 0x2a, 0x1e, 0x7d, 0x8e, 0xa9, 0x84, 0x74, 0xf8, 0xad, 0xa3, 0x37, 0x07, 0x80, 0x17, 0x80, 0x1d, 0x5f, 0xe9, 0x29, 0x3b, 0xbc, 0x50, 0xc7, 0xbf, 0xd2, 0x4b, 0x22, 0x0f, 0x48, 0xd7, 0xb5, 0x1d, 0xaa, 0x7f, 0xbb, 0xd6, 0x37, 0xc1, 0x15, 0xe1, 0xb4, 0xd5, 0x36, 0x64, 0x1c, 0xec, 0xd5, 0x29, 0x3b, 0x44, 0x14, 0x53, 0xe2, 0xf4, 0xa1, 0x38, 0xac, 0x19, 0x55, 0x74, 0xd3, 0x8b, }; static const unsigned char ecdh_brainpoolp320r1_784_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_784_sharedsecret[] = { 0xc7, 0x0c, 0x53, 0x73, 0x68, 0xf2, 0x31, 0xac, 0x41, 0xeb, 0x58, 0x9c, 0x49, 0x56, 0xd5, 0xf3, 0x0a, 0xff, 0xc0, 0x4e, 0x83, 0x3a, 0x7b, 0x6c, 0xde, 0x3f, 0xee, 0x89, 0x92, 0x1e, 0x9a, 0x28, 0x9d, 0xed, 0xc7, 0x89, 0x94, 0xb3, 0x74, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_784 = { .name = "ecdh_brainpoolp320r1_784", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_784_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_784_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_784_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 140 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 785 for ECDH, tcId is 141 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_785_peerpubkey[] = { 0x96, 0xa4, 0x04, 0x31, 0x24, 0x85, 0x1c, 0xac, 0x3e, 0x29, 0x06, 0x30, 0xa0, 0x7b, 0x69, 0x44, 0xf9, 0xf0, 0x50, 0x98, 0x95, 0xa8, 0xfe, 0xe4, 0x92, 0x02, 0x27, 0xdb, 0x5c, 0x60, 0xa1, 0x1f, 0x96, 0x93, 0xf2, 0x6f, 0x3c, 0x94, 0xc1, 0xa9, 0x26, 0x0b, 0xb9, 0x6d, 0x75, 0x20, 0xcd, 0x0d, 0x15, 0xcf, 0x9d, 0xc4, 0x0d, 0xe0, 0xb7, 0x2b, 0xd3, 0x40, 0x05, 0x00, 0x93, 0x6b, 0x9a, 0x77, 0x31, 0x72, 0xd3, 0x3c, 0xb8, 0xbb, 0xa0, 0x31, 0xe6, 0x08, 0xe7, 0x2c, 0x60, 0xd5, 0xe7, 0x04, }; static const unsigned char ecdh_brainpoolp320r1_785_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_785_sharedsecret[] = { 0x65, 0xf0, 0x0b, 0x9c, 0xf9, 0xa0, 0x06, 0x2a, 0x16, 0xa0, 0x8e, 0xd9, 0x92, 0xed, 0xb2, 0x1a, 0x64, 0xf7, 0xc4, 0x1e, 0x73, 0x35, 0x47, 0xde, 0x4a, 0xd4, 0x19, 0xd1, 0x67, 0xf5, 0x4c, 0x0f, 0xe1, 0x60, 0x65, 0xba, 0x2e, 0x10, 0x86, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_785 = { .name = "ecdh_brainpoolp320r1_785", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_785_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_785_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_785_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 141 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 786 for ECDH, tcId is 142 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_786_peerpubkey[] = { 0x1a, 0xc2, 0x7b, 0xfc, 0x8d, 0x07, 0x02, 0x17, 0x48, 0x37, 0x00, 0xd1, 0x87, 0xee, 0x89, 0xd5, 0x0b, 0xe1, 0x62, 0x55, 0x79, 0xdb, 0x9c, 0x65, 0x25, 0x56, 0x94, 0x99, 0xe9, 0xd1, 0x66, 0x6b, 0x09, 0x99, 0xf8, 0x26, 0xba, 0xba, 0xc5, 0x7e, 0x0b, 0x93, 0x59, 0x5b, 0x26, 0xca, 0x72, 0x28, 0x4a, 0x4a, 0x45, 0x98, 0xaa, 0xa5, 0x56, 0x75, 0xcc, 0xfa, 0x4b, 0x58, 0xba, 0xb2, 0x87, 0xf5, 0x69, 0x18, 0xf3, 0xaf, 0x3e, 0x6e, 0x83, 0xc9, 0x59, 0xd8, 0xe7, 0x86, 0x98, 0xec, 0xbc, 0x48, }; static const unsigned char ecdh_brainpoolp320r1_786_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_786_sharedsecret[] = { 0x3e, 0x21, 0xfb, 0x8c, 0x5d, 0xe6, 0xbb, 0x3f, 0xa0, 0x96, 0xe5, 0xbf, 0x73, 0xa2, 0x70, 0xba, 0xd1, 0x64, 0x47, 0xb5, 0x5d, 0xcd, 0xca, 0x39, 0xe3, 0xd9, 0x92, 0x3f, 0x3f, 0xd0, 0x4b, 0xf6, 0x4e, 0xe7, 0x05, 0x24, 0x7d, 0x04, 0x72, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_786 = { .name = "ecdh_brainpoolp320r1_786", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_786_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_786_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_786_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 142 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 787 for ECDH, tcId is 143 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_787_peerpubkey[] = { 0x7d, 0xd1, 0x40, 0x80, 0xbe, 0xa4, 0xfb, 0x4c, 0xb7, 0x11, 0x2e, 0xc8, 0xc4, 0xc3, 0x03, 0x24, 0x25, 0x36, 0xf6, 0x9d, 0x28, 0xd3, 0xa5, 0x86, 0xce, 0x65, 0xc4, 0xbe, 0x96, 0x16, 0x7a, 0xd5, 0x2a, 0x1b, 0x96, 0x33, 0xe1, 0x5c, 0x59, 0x7b, 0x8c, 0x05, 0x97, 0xf2, 0x72, 0x71, 0xcc, 0xb3, 0x40, 0x91, 0xc0, 0x1e, 0x7b, 0x7c, 0xf3, 0x67, 0x57, 0xf5, 0x73, 0x9f, 0x57, 0x63, 0x11, 0x1e, 0x94, 0xba, 0x8a, 0xda, 0x9d, 0x6e, 0x1a, 0x09, 0x5c, 0x66, 0xb5, 0xb4, 0x5e, 0x56, 0x2a, 0xac, }; static const unsigned char ecdh_brainpoolp320r1_787_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_787_sharedsecret[] = { 0xd2, 0xfe, 0x12, 0x75, 0xbb, 0x63, 0x9f, 0x44, 0x65, 0xcb, 0x95, 0xed, 0x3b, 0x6a, 0xc4, 0x33, 0xa9, 0x8c, 0xb1, 0xe1, 0x9b, 0x51, 0x6e, 0x85, 0x44, 0x51, 0xf9, 0xda, 0x98, 0xec, 0xe3, 0x2e, 0x2a, 0x67, 0x3c, 0x0a, 0xb3, 0x0b, 0xda, 0xd6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_787 = { .name = "ecdh_brainpoolp320r1_787", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_787_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_787_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_787_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 143 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 788 for ECDH, tcId is 144 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_788_peerpubkey[] = { 0xc9, 0xdc, 0xe0, 0x10, 0x2a, 0x72, 0x2b, 0x5e, 0x0f, 0x9d, 0x4f, 0x41, 0xa3, 0x65, 0x9c, 0x63, 0xca, 0xc0, 0x15, 0x37, 0xf5, 0x2a, 0x37, 0x4a, 0xa6, 0x3e, 0x8f, 0x47, 0xe4, 0xa9, 0xa7, 0xd9, 0x22, 0x41, 0x18, 0xe6, 0x20, 0x52, 0x1d, 0x1e, 0x07, 0x1e, 0x20, 0xc4, 0x36, 0x97, 0xe0, 0x82, 0x83, 0x1d, 0x16, 0x71, 0x71, 0x3b, 0x54, 0x40, 0x2a, 0x67, 0x6e, 0xa5, 0x87, 0xce, 0xca, 0xee, 0x75, 0x00, 0x89, 0xf5, 0x96, 0x17, 0x2a, 0xec, 0xad, 0xbd, 0xc3, 0xaa, 0xc9, 0x29, 0x7e, 0x83, }; static const unsigned char ecdh_brainpoolp320r1_788_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_788_sharedsecret[] = { 0x80, 0xd7, 0x84, 0xeb, 0x18, 0xec, 0x8f, 0xa5, 0xb5, 0x99, 0xbd, 0xf0, 0x0a, 0xd2, 0xf7, 0x99, 0xb3, 0x79, 0x60, 0xae, 0x14, 0x43, 0xd8, 0xf8, 0x94, 0x64, 0xf0, 0x9b, 0xa5, 0x1d, 0xea, 0x84, 0x6c, 0x54, 0x8d, 0x86, 0xa1, 0x5e, 0x94, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_788 = { .name = "ecdh_brainpoolp320r1_788", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_788_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_788_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_788_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 144 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 789 for ECDH, tcId is 145 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_789_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_789_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_789_sharedsecret[] = { 0xa3, 0xe8, 0x67, 0x77, 0xa4, 0x26, 0x3b, 0x46, 0x56, 0x73, 0x3a, 0x65, 0xbf, 0x32, 0x2d, 0x39, 0x71, 0x99, 0xcd, 0xa9, 0x03, 0x58, 0x8f, 0xc3, 0x75, 0x4c, 0xb0, 0xe2, 0x79, 0x01, 0xf5, 0xe2, 0x9f, 0x11, 0x5b, 0x51, 0x1b, 0x94, 0xc8, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_789 = { .name = "ecdh_brainpoolp320r1_789", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_789_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_789_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_789_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 145 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 790 for ECDH, tcId is 146 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_790_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_790_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_790_sharedsecret[] = { 0x93, 0xcd, 0x46, 0x5d, 0x33, 0x2e, 0x25, 0xbb, 0xec, 0x7b, 0x19, 0x5b, 0x37, 0xf7, 0xe3, 0xa1, 0x26, 0xf1, 0xd6, 0x7c, 0xdb, 0x94, 0x6c, 0xb9, 0xb2, 0xc4, 0x5a, 0x36, 0xa5, 0xc4, 0xd7, 0xe9, 0x17, 0x1f, 0x3d, 0x3f, 0xde, 0xd2, 0x0e, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_790 = { .name = "ecdh_brainpoolp320r1_790", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_790_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_790_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_790_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 146 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 791 for ECDH, tcId is 147 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_791_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_791_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_791_sharedsecret[] = { 0x6c, 0xc6, 0x52, 0x0a, 0x3d, 0x34, 0xec, 0x73, 0xbd, 0xc0, 0x64, 0x83, 0x90, 0xa8, 0xbe, 0x67, 0x36, 0xc1, 0x04, 0xa6, 0x65, 0x1c, 0x7a, 0x35, 0xfa, 0xce, 0x31, 0x0f, 0xd0, 0xbf, 0x69, 0xb1, 0x51, 0xae, 0xcf, 0x45, 0x7e, 0xf5, 0x84, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_791 = { .name = "ecdh_brainpoolp320r1_791", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_791_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_791_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_791_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 147 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 792 for ECDH, tcId is 148 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_792_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_792_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_792_sharedsecret[] = { 0x78, 0xb7, 0xd0, 0x48, 0x61, 0x46, 0x0c, 0xbf, 0x14, 0x1f, 0x6d, 0x41, 0x64, 0x87, 0x42, 0xad, 0xf4, 0x59, 0xb5, 0xf3, 0x69, 0x5b, 0xa2, 0x44, 0x9c, 0xe7, 0x62, 0x10, 0x49, 0x4c, 0xe5, 0x40, 0x06, 0x9e, 0x15, 0x36, 0xc0, 0x31, 0x00, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_792 = { .name = "ecdh_brainpoolp320r1_792", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_792_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_792_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_792_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 148 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 793 for ECDH, tcId is 149 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_793_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_793_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_793_sharedsecret[] = { 0x8f, 0x21, 0xe6, 0x98, 0xa1, 0xe1, 0xbc, 0x66, 0xac, 0xc0, 0x8a, 0xdb, 0x5b, 0x92, 0x3e, 0x4b, 0x2a, 0x01, 0x2d, 0xfe, 0x81, 0x45, 0x63, 0x7e, 0x70, 0x23, 0x51, 0xf1, 0x61, 0x68, 0x8f, 0x0b, 0x57, 0x2c, 0x57, 0xd4, 0xd1, 0xb6, 0xb4, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_793 = { .name = "ecdh_brainpoolp320r1_793", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_793_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_793_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_793_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 149 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 794 for ECDH, tcId is 150 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_794_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_794_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe8, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_794_sharedsecret[] = { 0x15, 0x1b, 0x2e, 0x82, 0xd0, 0x09, 0xa1, 0x8b, 0x4b, 0x7e, 0x46, 0xdf, 0x2a, 0xd0, 0xe3, 0x0d, 0x15, 0x1d, 0x32, 0x1b, 0xd6, 0x4e, 0xf2, 0xf1, 0xff, 0x6a, 0x36, 0x78, 0x1a, 0xe4, 0x48, 0xb9, 0x9e, 0xf4, 0x43, 0xac, 0x7d, 0x1b, 0x09, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_794 = { .name = "ecdh_brainpoolp320r1_794", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_794_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_794_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_794_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 150 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 795 for ECDH, tcId is 151 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_795_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_795_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x81, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_795_sharedsecret[] = { 0xd0, 0x4a, 0x5e, 0x44, 0x82, 0x81, 0x63, 0xfc, 0xb6, 0x6f, 0x9e, 0x60, 0x1d, 0x93, 0x3b, 0xa2, 0xf4, 0x31, 0xca, 0xda, 0x91, 0x25, 0x68, 0x61, 0xe3, 0x67, 0x65, 0xf6, 0x09, 0x8e, 0x23, 0x40, 0x05, 0xf4, 0x8b, 0xb0, 0x39, 0xa2, 0x88, 0xef, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_795 = { .name = "ecdh_brainpoolp320r1_795", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_795_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_795_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_795_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 151 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 796 for ECDH, tcId is 152 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_796_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_796_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x89, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_796_sharedsecret[] = { 0x94, 0x02, 0x34, 0x19, 0x38, 0x2f, 0xbd, 0xca, 0xcb, 0x99, 0xfc, 0x0c, 0x37, 0xb7, 0x3b, 0xe7, 0x71, 0xbb, 0xcb, 0x8b, 0x2e, 0xfd, 0xc6, 0xdd, 0x32, 0x4f, 0x03, 0x28, 0xe1, 0x6b, 0x75, 0x5b, 0xb2, 0x7a, 0x2a, 0xb4, 0x40, 0xed, 0x6c, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_796 = { .name = "ecdh_brainpoolp320r1_796", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_796_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_796_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_796_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 152 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 797 for ECDH, tcId is 153 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_797_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_797_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5a, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_797_sharedsecret[] = { 0xaa, 0x46, 0x4b, 0x77, 0x9d, 0x45, 0x1b, 0xeb, 0x21, 0xba, 0x7f, 0x63, 0xb6, 0x5d, 0xb0, 0x44, 0x2c, 0x52, 0xb9, 0xac, 0x32, 0xf0, 0xa2, 0xad, 0xdc, 0xd0, 0x86, 0x9c, 0x7e, 0xbd, 0xdf, 0xf4, 0x79, 0xd4, 0x74, 0x61, 0xb8, 0x32, 0x25, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_797 = { .name = "ecdh_brainpoolp320r1_797", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_797_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_797_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_797_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 153 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 798 for ECDH, tcId is 154 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_798_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_798_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x33, }; static const unsigned char ecdh_brainpoolp320r1_798_sharedsecret[] = { 0xc0, 0x03, 0x8d, 0xa8, 0x58, 0x44, 0x1f, 0x55, 0x9a, 0x86, 0x4d, 0xcd, 0x6c, 0x45, 0x58, 0x43, 0x7f, 0x9a, 0xd0, 0x91, 0xa6, 0x7c, 0x3f, 0xda, 0x69, 0xa9, 0xe0, 0xcb, 0x6f, 0x44, 0x6a, 0x8b, 0x47, 0xae, 0x95, 0xed, 0xc2, 0xf4, 0xea, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_798 = { .name = "ecdh_brainpoolp320r1_798", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_798_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_798_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_798_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 154 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 799 for ECDH, tcId is 155 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_799_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_799_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xb3, }; static const unsigned char ecdh_brainpoolp320r1_799_sharedsecret[] = { 0x82, 0x58, 0x13, 0x1a, 0x80, 0xbc, 0x9f, 0x2b, 0x8b, 0xa5, 0x32, 0xef, 0x12, 0x53, 0xef, 0x39, 0xdc, 0xe2, 0x5e, 0x6d, 0xeb, 0x85, 0x22, 0x7c, 0x67, 0x02, 0x73, 0x52, 0x1c, 0x31, 0x1d, 0xbb, 0x9b, 0xf1, 0xa5, 0x6d, 0xd2, 0x91, 0x07, 0xb3, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_799 = { .name = "ecdh_brainpoolp320r1_799", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_799_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_799_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_799_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 155 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 800 for ECDH, tcId is 156 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_800_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_800_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xf3, }; static const unsigned char ecdh_brainpoolp320r1_800_sharedsecret[] = { 0xae, 0x75, 0x2e, 0x75, 0x68, 0x4a, 0x9a, 0xdf, 0xc6, 0x19, 0x8e, 0x6c, 0x1c, 0xe9, 0x24, 0x9d, 0x26, 0x74, 0x31, 0x04, 0xe8, 0xb0, 0xbd, 0x04, 0x17, 0x99, 0x8c, 0x62, 0x98, 0x26, 0x22, 0xea, 0x2f, 0xdf, 0x69, 0x17, 0x41, 0x3d, 0x54, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_800 = { .name = "ecdh_brainpoolp320r1_800", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_800_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_800_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_800_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 156 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 801 for ECDH, tcId is 157 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_801_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_801_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_801_sharedsecret[] = { 0x37, 0xbf, 0xbb, 0x63, 0x7f, 0xce, 0x27, 0xee, 0x80, 0xb3, 0xaf, 0x32, 0x65, 0x46, 0x30, 0x3e, 0x0b, 0xd8, 0xaf, 0x01, 0xb7, 0x2f, 0x59, 0x18, 0x30, 0xa5, 0x48, 0x60, 0x90, 0x55, 0xbd, 0xa4, 0x89, 0xd9, 0xa4, 0xe6, 0xb5, 0xe3, 0xf4, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_801 = { .name = "ecdh_brainpoolp320r1_801", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_801_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_801_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_801_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 157 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 802 for ECDH, tcId is 158 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_802_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_802_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0b, }; static const unsigned char ecdh_brainpoolp320r1_802_sharedsecret[] = { 0x85, 0x4c, 0xe9, 0x51, 0x6e, 0x73, 0xc6, 0xcc, 0x8d, 0x0d, 0x6c, 0xe3, 0xcd, 0xf9, 0x33, 0x54, 0x1a, 0x71, 0x95, 0x78, 0x71, 0x24, 0x40, 0xf0, 0x2a, 0x86, 0x82, 0x9a, 0xf1, 0x39, 0x8f, 0xca, 0xb2, 0xbb, 0x09, 0x49, 0xc1, 0xd6, 0x31, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_802 = { .name = "ecdh_brainpoolp320r1_802", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_802_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_802_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_802_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 158 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 803 for ECDH, tcId is 159 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_803_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_803_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const unsigned char ecdh_brainpoolp320r1_803_sharedsecret[] = { 0xa3, 0xe8, 0x67, 0x77, 0xa4, 0x26, 0x3b, 0x46, 0x56, 0x73, 0x3a, 0x65, 0xbf, 0x32, 0x2d, 0x39, 0x71, 0x99, 0xcd, 0xa9, 0x03, 0x58, 0x8f, 0xc3, 0x75, 0x4c, 0xb0, 0xe2, 0x79, 0x01, 0xf5, 0xe2, 0x9f, 0x11, 0x5b, 0x51, 0x1b, 0x94, 0xc8, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_803 = { .name = "ecdh_brainpoolp320r1_803", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_803_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_803_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_803_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 159 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 804 for ECDH, tcId is 160 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_804_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_804_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, }; static const unsigned char ecdh_brainpoolp320r1_804_sharedsecret[] = { 0x7d, 0xfd, 0x07, 0xc1, 0xcf, 0xe7, 0x0d, 0xb4, 0x77, 0x2c, 0xf9, 0xf6, 0xbb, 0x6b, 0x58, 0xa1, 0x0b, 0xbc, 0x95, 0x09, 0xe5, 0xce, 0x86, 0x65, 0x1d, 0x5c, 0x39, 0x5f, 0x35, 0x44, 0xf6, 0x2d, 0x6d, 0x8f, 0x81, 0x09, 0xed, 0xba, 0x44, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_804 = { .name = "ecdh_brainpoolp320r1_804", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_804_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_804_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_804_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 160 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 805 for ECDH, tcId is 161 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_805_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_805_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_805 = { .name = "ecdh_brainpoolp320r1_805", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_805_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_805_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 161 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 806 for ECDH, tcId is 162 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_806_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_806_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_806 = { .name = "ecdh_brainpoolp320r1_806", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_806_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_806_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 162 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 807 for ECDH, tcId is 163 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_807_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_807_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_807 = { .name = "ecdh_brainpoolp320r1_807", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_807_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_807_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 163 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 808 for ECDH, tcId is 164 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_808_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_808_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_808 = { .name = "ecdh_brainpoolp320r1_808", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_808_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_808_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 164 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 809 for ECDH, tcId is 165 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_809_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_809_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_809 = { .name = "ecdh_brainpoolp320r1_809", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_809_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_809_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 165 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 810 for ECDH, tcId is 166 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_810_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_810_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_810 = { .name = "ecdh_brainpoolp320r1_810", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_810_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_810_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 166 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 811 for ECDH, tcId is 167 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_811_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_811_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_811 = { .name = "ecdh_brainpoolp320r1_811", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_811_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_811_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 167 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 812 for ECDH, tcId is 168 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_812_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_812_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_812 = { .name = "ecdh_brainpoolp320r1_812", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_812_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_812_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 168 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 813 for ECDH, tcId is 169 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_813_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_813_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_813 = { .name = "ecdh_brainpoolp320r1_813", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_813_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_813_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 169 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 814 for ECDH, tcId is 170 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_814_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_814_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_814 = { .name = "ecdh_brainpoolp320r1_814", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_814_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_814_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 170 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 815 for ECDH, tcId is 171 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_815_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_815_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_815 = { .name = "ecdh_brainpoolp320r1_815", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_815_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_815_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 171 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 816 for ECDH, tcId is 172 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_816_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_816_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_816 = { .name = "ecdh_brainpoolp320r1_816", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_816_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_816_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 172 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 817 for ECDH, tcId is 173 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_817_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_817_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_817 = { .name = "ecdh_brainpoolp320r1_817", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_817_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_817_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 173 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 818 for ECDH, tcId is 174 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_818_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_818_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_818 = { .name = "ecdh_brainpoolp320r1_818", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_818_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_818_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 174 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 819 for ECDH, tcId is 175 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_819_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_819_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_819 = { .name = "ecdh_brainpoolp320r1_819", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_819_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_819_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 175 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 820 for ECDH, tcId is 176 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_820_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_820_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_820 = { .name = "ecdh_brainpoolp320r1_820", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_820_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_820_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 176 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 821 for ECDH, tcId is 178 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_821_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x8b, }; static const unsigned char ecdh_brainpoolp320r1_821_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_821 = { .name = "ecdh_brainpoolp320r1_821", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_821_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_821_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 178 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 822 for ECDH, tcId is 179 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_822_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_822_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_822 = { .name = "ecdh_brainpoolp320r1_822", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_822_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_822_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 179 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 823 for ECDH, tcId is 182 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_823_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_823_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_823_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_823 = { .name = "ecdh_brainpoolp320r1_823", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_823_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_823_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_823_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 1, tcId is 182 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 824 for ECDH, tcId is 183 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_824_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_824_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_824_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_824 = { .name = "ecdh_brainpoolp320r1_824", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_824_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_824_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_824_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 410618568360611413177547474029944166748205379750040840301822434183392856467013123528027, tcId is 183 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 825 for ECDH, tcId is 184 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_825_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_825_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_825_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_825 = { .name = "ecdh_brainpoolp320r1_825", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_825_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_825_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_825_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator = (0,0), tcId is 184 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 826 for ECDH, tcId is 185 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_826_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_826_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_826_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_826 = { .name = "ecdh_brainpoolp320r1_826", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_826_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_826_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_826_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator not on curve, tcId is 185 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 827 for ECDH, tcId is 188 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_827_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_827_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_827_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_827 = { .name = "ecdh_brainpoolp320r1_827", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_827_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_827_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_827_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = 2, tcId is 188 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 828 for ECDH, tcId is 190 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_828_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_828_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_828_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_828 = { .name = "ecdh_brainpoolp320r1_828", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_828_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_828_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_828_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = None, tcId is 190 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 829 for ECDH, tcId is 195 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_829_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_829_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_829_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_829 = { .name = "ecdh_brainpoolp320r1_829", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_829_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_829_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_829_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "a = 0, tcId is 195 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 830 for ECDH, tcId is 209 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_830_peerpubkey[] = { 0x2d, 0xdf, 0xda, 0x6a, 0x53, 0xe3, 0xaa, 0x31, 0x33, 0xa0, 0x4c, 0x2e, 0xd9, 0xa3, 0xc3, 0x6d, 0x3f, 0x39, 0x07, 0x10, 0xae, 0x78, 0x1e, 0x29, 0x75, 0xc8, 0x37, 0x01, 0xea, 0x35, 0x2f, 0x00, 0x7b, 0x4f, 0x7a, 0x97, 0x6b, 0xa3, 0x22, 0x41, 0x9d, 0x20, 0xd7, 0x53, 0x00, 0xcd, 0xcf, 0x19, 0x0a, 0x58, 0x94, 0x2f, 0x9a, 0xab, 0x22, 0x9a, 0x3d, 0xbf, 0xee, 0x18, 0x5c, 0x3a, 0xdb, 0x6c, 0xe9, 0xa4, 0x90, 0x7b, 0x90, 0xca, 0xc0, 0xfa, 0x64, 0x9c, 0x22, 0xcc, 0x2e, 0x17, 0xd4, 0x8f, }; static const unsigned char ecdh_brainpoolp320r1_830_privkey[] = { 0x70, 0xd5, 0xb6, 0x5d, 0x90, 0xe6, 0xab, 0x58, 0xa9, 0x1b, 0x5a, 0x75, 0x07, 0x3a, 0x34, 0x7d, 0x08, 0x63, 0xcf, 0xc8, 0xa9, 0x6e, 0x7d, 0xb7, 0x8e, 0x09, 0x8d, 0xfb, 0x50, 0xc4, 0x26, 0x2f, 0x40, 0x1a, 0xf3, 0xc3, 0x6c, 0x43, 0xc7, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_830 = { .name = "ecdh_brainpoolp320r1_830", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_830_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_830_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP320t1, tcId is 209 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 831 for ECDH, tcId is 212 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_831_peerpubkey[] = { 0x27, 0xf2, 0xf8, 0xf1, 0xcb, 0xc7, 0xee, 0x44, 0x0c, 0x16, 0x7d, 0x52, 0x78, 0x2f, 0x50, 0x9b, 0x98, 0x0e, 0x1d, 0xa0, 0x34, 0xc2, 0x59, 0xf0, 0x79, 0xff, 0xf6, 0x53, 0x30, 0x1a, 0xe2, 0x8a, 0x88, 0x51, 0x1e, 0x50, 0x18, 0x36, 0xa7, 0xd6, }; static const unsigned char ecdh_brainpoolp320r1_831_privkey[] = { 0xcd, 0xea, 0xa0, 0x17, 0x57, 0x95, 0x4b, 0xf8, 0x13, 0xfa, 0xfe, 0xc8, 0x35, 0x69, 0x23, 0x51, 0x8e, 0x41, 0x0c, 0xc8, 0x77, 0x8d, 0x88, 0xea, 0xc1, 0xa0, 0x7f, 0x90, 0xb7, 0xfb, 0x4d, 0x20, 0xdb, 0x28, 0x67, 0x0e, 0x17, 0x8b, 0x94, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_831 = { .name = "ecdh_brainpoolp320r1_831", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_831_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_831_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 212 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 832 for ECDH, tcId is 213 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_832_peerpubkey[] = { 0xcd, 0x87, 0x37, 0x25, 0xad, 0x5a, 0x0c, 0xb4, 0x28, 0xee, 0x17, 0x0b, 0xbe, 0xa7, 0x60, 0x9f, 0x8e, 0x15, 0x6a, 0x73, 0xc4, 0xab, 0x18, 0xfd, 0x32, 0xba, 0xb9, 0xe4, 0x1a, 0xf3, 0xd3, 0x6e, 0xaa, 0x53, 0x13, 0xa8, 0x1f, 0x74, 0xe8, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_832_privkey[] = { 0xb5, 0x8e, 0xeb, 0x16, 0xa7, 0xf2, 0x2f, 0x45, 0x62, 0x16, 0x1e, 0xd8, 0xea, 0x68, 0xac, 0x86, 0x32, 0x2d, 0x3d, 0xb6, 0xe5, 0xd4, 0xfe, 0xc5, 0x0a, 0xae, 0x16, 0xd0, 0x11, 0x29, 0xbf, 0x8c, 0x4d, 0x75, 0x30, 0xff, 0x4d, 0x94, 0xa1, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_832 = { .name = "ecdh_brainpoolp320r1_832", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_832_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_832_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 213 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 833 for ECDH, tcId is 214 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_833_peerpubkey[] = { 0x3f, 0xef, 0x76, 0x6e, 0xf6, 0x18, 0xb7, 0x74, 0xa7, 0x8e, 0x4d, 0x81, 0xe1, 0x6e, 0x5a, 0x9a, 0xfe, 0xa0, 0x65, 0x00, 0xeb, 0x0e, 0x36, 0x63, 0x77, 0xd8, 0x39, 0xbf, 0xfc, 0xee, 0xed, 0x1c, 0x74, 0xe6, 0xca, 0xec, 0xdc, 0x9f, 0xbb, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_833_privkey[] = { 0xbd, 0xbe, 0xe1, 0x3a, 0x7e, 0xac, 0x09, 0x6b, 0x33, 0xfe, 0x43, 0xb8, 0xad, 0xc4, 0xc0, 0xe5, 0xba, 0xb4, 0x38, 0xfa, 0xa6, 0x33, 0x35, 0x70, 0xff, 0xde, 0xb0, 0x5d, 0x2b, 0x3e, 0x95, 0x96, 0x1f, 0x9d, 0x59, 0x1f, 0x36, 0x88, 0x20, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_833 = { .name = "ecdh_brainpoolp320r1_833", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_833_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_833_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 214 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 834 for ECDH, tcId is 215 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_834_peerpubkey[] = { 0x3f, 0xef, 0x76, 0x6e, 0xf6, 0x18, 0xb7, 0x74, 0xa7, 0x8e, 0x4d, 0x81, 0xe1, 0x6e, 0x5a, 0x9a, 0xfe, 0xa0, 0x65, 0x00, 0xeb, 0x0e, 0x36, 0x63, 0x77, 0xd8, 0x39, 0xbf, 0xfc, 0xee, 0xed, 0x1c, 0x74, 0xe6, 0xca, 0xec, 0xdc, 0x9f, 0xbb, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_834_privkey[] = { 0xbd, 0xbe, 0xe1, 0x3a, 0x7e, 0xac, 0x09, 0x6b, 0x33, 0xfe, 0x43, 0xb8, 0xad, 0xc4, 0xc0, 0xe5, 0xba, 0xb4, 0x38, 0xfa, 0xa6, 0x33, 0x35, 0x70, 0xff, 0xde, 0xb0, 0x5d, 0x2b, 0x3e, 0x95, 0x96, 0x1f, 0x9d, 0x59, 0x1f, 0x36, 0x88, 0x20, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_834 = { .name = "ecdh_brainpoolp320r1_834", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_834_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_834_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 215 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 835 for ECDH, tcId is 216 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_835_peerpubkey[] = { 0xcd, 0x87, 0x37, 0x25, 0xad, 0x5a, 0x0c, 0xb4, 0x28, 0xee, 0x17, 0x0b, 0xbe, 0xa7, 0x60, 0x9f, 0x8e, 0x15, 0x6a, 0x73, 0xc4, 0xab, 0x18, 0xfd, 0x32, 0xba, 0xb9, 0xe4, 0x1a, 0xf3, 0xd3, 0x6e, 0xaa, 0x53, 0x13, 0xa8, 0x1f, 0x74, 0xe8, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_835_privkey[] = { 0xb5, 0x8e, 0xeb, 0x16, 0xa7, 0xf2, 0x2f, 0x45, 0x62, 0x16, 0x1e, 0xd8, 0xea, 0x68, 0xac, 0x86, 0x32, 0x2d, 0x3d, 0xb6, 0xe5, 0xd4, 0xfe, 0xc5, 0x0a, 0xae, 0x16, 0xd0, 0x11, 0x29, 0xbf, 0x8c, 0x4d, 0x75, 0x30, 0xff, 0x4d, 0x94, 0xa1, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_835 = { .name = "ecdh_brainpoolp320r1_835", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_835_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_835_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 216 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 836 for ECDH, tcId is 217 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_836_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_836_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_836_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_836 = { .name = "ecdh_brainpoolp320r1_836", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_836_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_836_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_836_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "long form encoding of length of sequence, tcId is 217 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 837 for ECDH, tcId is 218 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_837_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_837_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_837_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_837 = { .name = "ecdh_brainpoolp320r1_837", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_837_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_837_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_837_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "long form encoding of length of sequence, tcId is 218 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 838 for ECDH, tcId is 219 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_838_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_838_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_838_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_838 = { .name = "ecdh_brainpoolp320r1_838", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_838_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_838_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_838_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "length of sequence contains leading 0, tcId is 219 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 839 for ECDH, tcId is 220 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_839_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_839_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_839_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_839 = { .name = "ecdh_brainpoolp320r1_839", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_839_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_839_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_839_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "length of sequence contains leading 0, tcId is 220 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 840 for ECDH, tcId is 254 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_840_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_840_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_840_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_840 = { .name = "ecdh_brainpoolp320r1_840", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_840_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_840_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_840_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending null value to sequence, tcId is 254 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 841 for ECDH, tcId is 255 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_841_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_841_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_841_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_841 = { .name = "ecdh_brainpoolp320r1_841", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_841_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_841_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_841_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending null value to sequence, tcId is 255 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 842 for ECDH, tcId is 284 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_842_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_842_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_842_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_842 = { .name = "ecdh_brainpoolp320r1_842", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_842_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_842_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_842_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "Replacing sequence with NULL, tcId is 284 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 843 for ECDH, tcId is 287 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_843_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_843_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_843_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_843 = { .name = "ecdh_brainpoolp320r1_843", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_843_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_843_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_843_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of sequence, tcId is 287 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 844 for ECDH, tcId is 292 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_844_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_844_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_844_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_844 = { .name = "ecdh_brainpoolp320r1_844", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_844_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_844_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_844_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of sequence, tcId is 292 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 845 for ECDH, tcId is 296 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_845_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_845_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_845_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_845 = { .name = "ecdh_brainpoolp320r1_845", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_845_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_845_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_845_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "dropping value of sequence, tcId is 296 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 846 for ECDH, tcId is 314 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_846_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_846_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_846_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_846 = { .name = "ecdh_brainpoolp320r1_846", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_846_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_846_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_846_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "prepend empty sequence, tcId is 314 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 847 for ECDH, tcId is 315 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_847_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_847_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_847_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_847 = { .name = "ecdh_brainpoolp320r1_847", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_847_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_847_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_847_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "append empty sequence, tcId is 315 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 848 for ECDH, tcId is 316 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_848_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_848_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_848_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_848 = { .name = "ecdh_brainpoolp320r1_848", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_848_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_848_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_848_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "append empty sequence, tcId is 316 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 849 for ECDH, tcId is 320 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_849_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_849_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_849_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_849 = { .name = "ecdh_brainpoolp320r1_849", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_849_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_849_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_849_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "sequence of sequence, tcId is 320 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 850 for ECDH, tcId is 322 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_850_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_850_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_850_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_850 = { .name = "ecdh_brainpoolp320r1_850", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_850_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_850_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_850_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 322 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 851 for ECDH, tcId is 323 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_851_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_851_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_851_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_851 = { .name = "ecdh_brainpoolp320r1_851", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_851_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_851_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_851_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "repeating element in sequence, tcId is 323 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 852 for ECDH, tcId is 324 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_852_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_852_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_852_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_852 = { .name = "ecdh_brainpoolp320r1_852", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_852_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_852_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_852_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "repeating element in sequence, tcId is 324 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 853 for ECDH, tcId is 325 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_853_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_853_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_853_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_853 = { .name = "ecdh_brainpoolp320r1_853", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_853_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_853_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_853_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "long form encoding of length of oid, tcId is 325 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 854 for ECDH, tcId is 326 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_854_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_854_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_854_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_854 = { .name = "ecdh_brainpoolp320r1_854", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_854_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_854_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_854_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "long form encoding of length of oid, tcId is 326 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 855 for ECDH, tcId is 327 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_855_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_855_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_855_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_855 = { .name = "ecdh_brainpoolp320r1_855", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_855_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_855_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_855_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "length of oid contains leading 0, tcId is 327 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 856 for ECDH, tcId is 328 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_856_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_856_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_856_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_856 = { .name = "ecdh_brainpoolp320r1_856", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_856_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_856_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_856_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "length of oid contains leading 0, tcId is 328 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 857 for ECDH, tcId is 347 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_857_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_857_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_857_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_857 = { .name = "ecdh_brainpoolp320r1_857", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_857_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_857_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_857_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "removing oid, tcId is 347 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 858 for ECDH, tcId is 350 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_858_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_858_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_858_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_858 = { .name = "ecdh_brainpoolp320r1_858", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_858_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_858_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_858_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending 0's to oid, tcId is 350 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 859 for ECDH, tcId is 351 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_859_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_859_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_859_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_859 = { .name = "ecdh_brainpoolp320r1_859", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_859_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_859_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_859_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending 0's to oid, tcId is 351 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 860 for ECDH, tcId is 352 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_860_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_860_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_860_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_860 = { .name = "ecdh_brainpoolp320r1_860", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_860_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_860_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_860_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "prepending 0's to oid, tcId is 352 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 861 for ECDH, tcId is 353 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_861_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_861_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_861_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_861 = { .name = "ecdh_brainpoolp320r1_861", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_861_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_861_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_861_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "prepending 0's to oid, tcId is 353 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 862 for ECDH, tcId is 355 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_862_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_862_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_862_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_862 = { .name = "ecdh_brainpoolp320r1_862", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_862_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_862_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_862_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending null value to oid, tcId is 355 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 863 for ECDH, tcId is 356 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_863_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_863_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_863_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_863 = { .name = "ecdh_brainpoolp320r1_863", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_863_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_863_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_863_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "appending null value to oid, tcId is 356 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 864 for ECDH, tcId is 359 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_864_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_864_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_864_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_864 = { .name = "ecdh_brainpoolp320r1_864", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_864_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_864_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_864_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "Replacing oid with NULL, tcId is 359 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 865 for ECDH, tcId is 360 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_865_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_865_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_865_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_865 = { .name = "ecdh_brainpoolp320r1_865", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_865_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_865_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_865_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "Replacing oid with NULL, tcId is 360 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 866 for ECDH, tcId is 361 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_866_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_866_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_866_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_866 = { .name = "ecdh_brainpoolp320r1_866", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_866_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_866_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_866_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of oid, tcId is 361 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 867 for ECDH, tcId is 363 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_867_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_867_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_867_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_867 = { .name = "ecdh_brainpoolp320r1_867", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_867_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_867_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_867_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of oid, tcId is 363 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 868 for ECDH, tcId is 366 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_868_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_868_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_868_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_868 = { .name = "ecdh_brainpoolp320r1_868", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_868_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_868_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_868_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of oid, tcId is 366 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 869 for ECDH, tcId is 368 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_869_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_869_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_869_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_869 = { .name = "ecdh_brainpoolp320r1_869", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_869_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_869_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_869_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "changing tag value of oid, tcId is 368 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 870 for ECDH, tcId is 373 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_870_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_870_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_870_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_870 = { .name = "ecdh_brainpoolp320r1_870", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_870_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_870_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_870_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "modify first byte of oid, tcId is 373 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 871 for ECDH, tcId is 374 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_871_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_871_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_871_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_871 = { .name = "ecdh_brainpoolp320r1_871", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_871_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_871_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_871_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "modify first byte of oid, tcId is 374 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 872 for ECDH, tcId is 377 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_872_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_872_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_872_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_872 = { .name = "ecdh_brainpoolp320r1_872", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_872_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_872_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_872_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "truncated oid, tcId is 377 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 873 for ECDH, tcId is 378 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_873_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_873_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_873_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_873 = { .name = "ecdh_brainpoolp320r1_873", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_873_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_873_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_873_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "truncated oid, tcId is 378 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 874 for ECDH, tcId is 379 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_874_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_874_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_874_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_874 = { .name = "ecdh_brainpoolp320r1_874", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_874_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_874_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_874_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "truncated oid, tcId is 379 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 875 for ECDH, tcId is 380 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_875_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_875_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_875_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_875 = { .name = "ecdh_brainpoolp320r1_875", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_875_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_875_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_875_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "truncated oid, tcId is 380 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 876 for ECDH, tcId is 381 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_876_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_876_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_876_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_876 = { .name = "ecdh_brainpoolp320r1_876", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_876_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_876_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_876_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "wrong oid, tcId is 381 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 877 for ECDH, tcId is 382 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_877_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_877_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_877_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_877 = { .name = "ecdh_brainpoolp320r1_877", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_877_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_877_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_877_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "wrong oid, tcId is 382 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 878 for ECDH, tcId is 383 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_878_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_878_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_878_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_878 = { .name = "ecdh_brainpoolp320r1_878", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_878_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_878_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_878_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "wrong oid, tcId is 383 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 879 for ECDH, tcId is 384 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_879_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_879_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_879_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_879 = { .name = "ecdh_brainpoolp320r1_879", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_879_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_879_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_879_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "wrong oid, tcId is 384 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 880 for ECDH, tcId is 385 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_880_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_880_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_880_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_880 = { .name = "ecdh_brainpoolp320r1_880", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_880_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_880_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_880_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "longer oid, tcId is 385 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 881 for ECDH, tcId is 386 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_881_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_881_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_881_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_881 = { .name = "ecdh_brainpoolp320r1_881", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_881_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_881_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_881_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "longer oid, tcId is 386 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 882 for ECDH, tcId is 387 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_882_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_882_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_882_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_882 = { .name = "ecdh_brainpoolp320r1_882", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_882_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_882_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_882_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "oid with modified node, tcId is 387 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 883 for ECDH, tcId is 388 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_883_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_883_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_883_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_883 = { .name = "ecdh_brainpoolp320r1_883", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_883_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_883_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_883_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "oid with modified node, tcId is 388 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 884 for ECDH, tcId is 389 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_884_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_884_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_884_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_884 = { .name = "ecdh_brainpoolp320r1_884", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_884_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_884_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_884_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "oid with modified node, tcId is 389 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 885 for ECDH, tcId is 390 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_885_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_885_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_885_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_885 = { .name = "ecdh_brainpoolp320r1_885", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_885_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_885_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_885_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "oid with modified node, tcId is 390 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 886 for ECDH, tcId is 391 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_886_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_886_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_886_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_886 = { .name = "ecdh_brainpoolp320r1_886", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_886_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_886_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_886_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "large integer in oid, tcId is 391 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 887 for ECDH, tcId is 392 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_887_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_887_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_887_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_887 = { .name = "ecdh_brainpoolp320r1_887", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_887_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_887_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_887_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "large integer in oid, tcId is 392 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 888 for ECDH, tcId is 397 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_888_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_888_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_888_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_888 = { .name = "ecdh_brainpoolp320r1_888", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_888_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_888_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_888_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "long form encoding of length of bit string, tcId is 397 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 889 for ECDH, tcId is 398 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_889_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_889_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_889_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_889 = { .name = "ecdh_brainpoolp320r1_889", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_889_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_889_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_889_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "length of bit string contains leading 0, tcId is 398 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 890 for ECDH, tcId is 410 in file ecdh_brainpoolP320r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_890_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0xc9, }; static const unsigned char ecdh_brainpoolp320r1_890_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_890_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_890 = { .name = "ecdh_brainpoolp320r1_890", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_890_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_890_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_890_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "prepending 0's to bit string, tcId is 410 in file ecdh_brainpoolP320r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 891 for ECDH, tcId is 421 in file ecdh_brainpoolP320r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_891_peerpubkey[] = { 0xac, 0x31, 0x1d, 0xf3, 0xfe, 0x43, 0xc5, 0x02, 0x23, 0x9a, 0xad, 0x07, 0xf7, 0xdb, 0x6a, 0x5e, 0xc6, 0x22, 0x61, 0x20, 0x69, 0xc2, 0x25, 0xa6, 0x26, 0xed, 0x93, 0x4f, 0x3e, 0x2b, 0x8b, 0xe0, 0x1b, 0x11, 0x53, 0xf2, 0xb3, 0x00, 0x93, 0xb6, 0x99, 0xfc, 0xbf, 0x3f, 0xd4, 0x04, 0x98, 0xd7, 0x9e, 0x3d, 0x43, 0x66, 0x2c, 0x49, 0x71, 0xe5, 0xff, 0xd7, 0xa5, 0xda, 0xe2, 0x03, 0x93, 0xae, 0xad, 0x65, 0x62, 0x46, 0xf1, 0x14, 0x47, 0x92, 0x0d, 0xcb, 0xdb, 0x83, 0x50, 0xfa, 0xdb, 0x49, }; static const unsigned char ecdh_brainpoolp320r1_891_privkey[] = { 0x0f, 0x1b, 0xa6, 0xba, 0x37, 0x85, 0xbe, 0x04, 0x66, 0xf0, 0x50, 0xc1, 0x7d, 0x4c, 0x93, 0x5a, 0xcd, 0x46, 0x94, 0xed, 0x1d, 0x28, 0x3c, 0x8d, 0xf7, 0xa2, 0xcf, 0xb0, 0x0f, 0x2e, 0x92, 0xd1, 0x59, 0x21, 0x3a, 0x5d, 0x5e, 0x5e, 0x25, 0xd2, }; static const unsigned char ecdh_brainpoolp320r1_891_sharedsecret[] = { 0x50, 0xe7, 0x5c, 0xe3, 0x82, 0x35, 0xc8, 0x05, 0x2e, 0x15, 0x9f, 0xb3, 0x14, 0x21, 0xa4, 0x86, 0xc9, 0x43, 0x52, 0x07, 0xe3, 0x6a, 0xc6, 0x8d, 0xa9, 0xe0, 0xeb, 0xf0, 0xdf, 0x0b, 0x94, 0xaa, 0xfd, 0xd5, 0x7b, 0x25, 0xc6, 0xee, 0x2f, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_891 = { .name = "ecdh_brainpoolp320r1_891", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_891_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_891_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_891_sharedsecret, .sharedsecretlen = 40, .result = -1, .comment = "modify last byte of bit string, tcId is 421 in file ecdh_brainpoolP320r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 892 for ECDH, tcId is 1 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_892_peerpubkey[] = { 0x70, 0xff, 0xb3, 0x50, 0x17, 0x32, 0x56, 0xeb, 0x43, 0x7b, 0x14, 0x03, 0x65, 0x84, 0x23, 0x97, 0xeb, 0xaf, 0x36, 0x11, 0xb6, 0x38, 0x95, 0x96, 0xc1, 0xf1, 0x7c, 0x5f, 0xf5, 0xce, 0x52, 0x01, 0xf2, 0x4f, 0x69, 0x85, 0xb8, 0xfe, 0x08, 0x90, 0xdc, 0xae, 0x54, 0xb2, 0x60, 0x3d, 0xfb, 0x40, 0x87, 0x24, 0x2a, 0xaf, 0x7b, 0x2d, 0x95, 0xb3, 0x19, 0x9b, 0xfa, 0x03, 0xe8, 0xfc, 0xe5, 0x4e, 0xf6, 0x80, 0xb5, 0x71, 0x09, 0x84, 0x72, 0x74, 0xdb, 0x3b, 0x3a, 0x65, 0x51, 0x2b, 0x7f, 0x83, 0x22, 0x48, 0xe7, 0x0b, 0x10, 0x30, 0xe9, 0x5d, 0xb6, 0x42, 0x95, 0x89, 0x77, 0x5c, 0x33, 0x46, }; static const unsigned char ecdh_brainpoolp384r1_892_privkey[] = { 0x24, 0xdd, 0xf0, 0xfb, 0xb4, 0x1c, 0x28, 0x36, 0x5d, 0x30, 0x2d, 0xd9, 0xd2, 0x6f, 0xf9, 0xc3, 0x2c, 0x76, 0xc8, 0x5f, 0xa8, 0xb9, 0x13, 0x8a, 0x3e, 0xc6, 0x21, 0xd0, 0xca, 0xff, 0x6d, 0xe8, 0xa7, 0x24, 0xb4, 0x5d, 0x6f, 0xe0, 0xd9, 0x18, 0x00, 0x44, 0x24, 0x2b, 0x9f, 0x41, 0xc8, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_892_sharedsecret[] = { 0x22, 0x52, 0x27, 0x60, 0xed, 0xc3, 0x92, 0x80, 0xff, 0x32, 0x77, 0xb1, 0x21, 0xe1, 0x7e, 0x75, 0x39, 0x16, 0x5e, 0x7c, 0x67, 0x7a, 0x65, 0xc8, 0xd0, 0xdc, 0x81, 0x59, 0x11, 0x1f, 0x8e, 0x5d, 0x3d, 0xf7, 0x03, 0x5f, 0xe8, 0xce, 0x33, 0xac, 0x0a, 0x0e, 0x04, 0x7e, 0xd0, 0x84, 0x2a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_892 = { .name = "ecdh_brainpoolp384r1_892", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_892_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_892_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_892_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 893 for ECDH, tcId is 2 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_893_peerpubkey[] = { 0x70, 0xff, 0xb3, 0x50, 0x17, 0x32, 0x56, 0xeb, 0x43, 0x7b, 0x14, 0x03, 0x65, 0x84, 0x23, 0x97, 0xeb, 0xaf, 0x36, 0x11, 0xb6, 0x38, 0x95, 0x96, 0xc1, 0xf1, 0x7c, 0x5f, 0xf5, 0xce, 0x52, 0x01, 0xf2, 0x4f, 0x69, 0x85, 0xb8, 0xfe, 0x08, 0x90, 0xdc, 0xae, 0x54, 0xb2, 0x60, 0x3d, 0xfb, 0x40, }; static const unsigned char ecdh_brainpoolp384r1_893_privkey[] = { 0x24, 0xdd, 0xf0, 0xfb, 0xb4, 0x1c, 0x28, 0x36, 0x5d, 0x30, 0x2d, 0xd9, 0xd2, 0x6f, 0xf9, 0xc3, 0x2c, 0x76, 0xc8, 0x5f, 0xa8, 0xb9, 0x13, 0x8a, 0x3e, 0xc6, 0x21, 0xd0, 0xca, 0xff, 0x6d, 0xe8, 0xa7, 0x24, 0xb4, 0x5d, 0x6f, 0xe0, 0xd9, 0x18, 0x00, 0x44, 0x24, 0x2b, 0x9f, 0x41, 0xc8, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_893_sharedsecret[] = { 0x22, 0x52, 0x27, 0x60, 0xed, 0xc3, 0x92, 0x80, 0xff, 0x32, 0x77, 0xb1, 0x21, 0xe1, 0x7e, 0x75, 0x39, 0x16, 0x5e, 0x7c, 0x67, 0x7a, 0x65, 0xc8, 0xd0, 0xdc, 0x81, 0x59, 0x11, 0x1f, 0x8e, 0x5d, 0x3d, 0xf7, 0x03, 0x5f, 0xe8, 0xce, 0x33, 0xac, 0x0a, 0x0e, 0x04, 0x7e, 0xd0, 0x84, 0x2a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_893 = { .name = "ecdh_brainpoolp384r1_893", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_893_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_893_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_893_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 894 for ECDH, tcId is 3 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_894_peerpubkey[] = { 0x56, 0xb0, 0xe0, 0x05, 0x39, 0xa3, 0x04, 0xe1, 0xdc, 0xae, 0xf0, 0x0d, 0x90, 0xe1, 0xe8, 0x51, 0x00, 0x2c, 0x5c, 0xbb, 0x2e, 0x7a, 0x0c, 0xdd, 0xe3, 0x47, 0x00, 0xf2, 0x42, 0xd5, 0x2d, 0x60, 0x7c, 0xd4, 0x84, 0x98, 0xfe, 0x76, 0x68, 0xee, 0xff, 0xad, 0xcf, 0x24, 0x18, 0xea, 0x89, 0x8e, 0x57, 0x67, 0x7f, 0xe6, 0x70, 0x39, 0x11, 0xe5, 0xde, 0x7c, 0x45, 0xf3, 0xe0, 0x3e, 0xb1, 0x79, 0xe3, 0x24, 0x80, 0x08, 0xef, 0xf9, 0xf5, 0xad, 0x58, 0x60, 0xc7, 0x4d, 0x58, 0xa4, 0x5b, 0x29, 0x1c, 0x23, 0xbf, 0x8d, 0x5b, 0xe2, 0x85, 0xec, 0x6e, 0x9f, 0xd6, 0x7e, 0xce, 0x9b, 0x66, 0x92, }; static const unsigned char ecdh_brainpoolp384r1_894_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_894_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_894 = { .name = "ecdh_brainpoolp384r1_894", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_894_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_894_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_894_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 895 for ECDH, tcId is 4 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_895_peerpubkey[] = { 0x03, 0x8c, 0x59, 0xd9, 0x09, 0x15, 0x56, 0x3e, 0xb3, 0xfc, 0xb7, 0xf8, 0xf0, 0xb9, 0xb4, 0xcf, 0xcd, 0x27, 0x9a, 0x25, 0x91, 0x69, 0x5b, 0x5a, 0x3c, 0x64, 0xe3, 0xa1, 0xbd, 0xa0, 0xea, 0xa7, 0x8e, 0x8f, 0x06, 0x07, 0x27, 0x85, 0x8f, 0xb0, 0x74, 0xf2, 0xac, 0xc9, 0x8e, 0xfa, 0x48, 0x23, 0x0e, 0x90, 0xa6, 0x19, 0x97, 0x13, 0xcc, 0x07, 0xfc, 0x84, 0x5d, 0x61, 0x74, 0x45, 0x64, 0xce, 0xbf, 0xb1, 0xd1, 0x57, 0xc3, 0x9c, 0x4a, 0x01, 0x80, 0x7b, 0xbf, 0x81, 0xa6, 0x9c, 0xaa, 0xe6, 0x9d, 0x6a, 0x9e, 0xf6, 0xc8, 0x54, 0x72, 0x13, 0xca, 0x98, 0x23, 0x7f, 0x51, 0x40, 0x6f, 0x90, }; static const unsigned char ecdh_brainpoolp384r1_895_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_895_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_895 = { .name = "ecdh_brainpoolp384r1_895", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_895_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_895_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_895_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 896 for ECDH, tcId is 5 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_896_peerpubkey[] = { 0x27, 0xa5, 0x70, 0x91, 0x66, 0x84, 0xce, 0xa7, 0x84, 0xb2, 0x70, 0x82, 0xb3, 0x1d, 0xcb, 0x14, 0x9b, 0x40, 0xc9, 0xa0, 0x51, 0x37, 0x94, 0xdb, 0x6c, 0xc4, 0x95, 0x18, 0x58, 0xd8, 0xb2, 0xd2, 0xa3, 0x0c, 0x5b, 0xf0, 0x9d, 0x59, 0x0b, 0x2f, 0x17, 0xe5, 0xc1, 0x40, 0x6e, 0x96, 0xe1, 0xcb, 0x04, 0x7d, 0xba, 0x72, 0x0e, 0x25, 0xf5, 0x72, 0x99, 0x03, 0xe7, 0x16, 0x4b, 0x2c, 0x73, 0x90, 0x7d, 0xb1, 0x48, 0xbc, 0xf8, 0xaf, 0xf6, 0x49, 0xaa, 0x80, 0x71, 0x5b, 0x06, 0x7d, 0x88, 0xce, 0x1b, 0xd2, 0xf3, 0x80, 0xb5, 0x57, 0x05, 0xcf, 0xc3, 0x68, 0xd5, 0xa5, 0x15, 0xbf, 0x6f, 0x91, }; static const unsigned char ecdh_brainpoolp384r1_896_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_896_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_896 = { .name = "ecdh_brainpoolp384r1_896", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_896_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_896_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_896_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 897 for ECDH, tcId is 6 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_897_peerpubkey[] = { 0x27, 0x9f, 0xfd, 0x6f, 0x54, 0xfe, 0x38, 0x47, 0xd3, 0x46, 0x4b, 0x64, 0x5a, 0x6f, 0x42, 0x43, 0xc4, 0x91, 0x69, 0xb3, 0x49, 0x4c, 0x61, 0xe2, 0x0a, 0x04, 0x57, 0xce, 0x93, 0xd6, 0xaa, 0x85, 0x35, 0xde, 0x70, 0xb5, 0xca, 0x78, 0xfd, 0x7e, 0xff, 0x05, 0xfe, 0xce, 0x3a, 0xc2, 0x53, 0xc5, 0x63, 0xe7, 0x53, 0xd5, 0x31, 0xfb, 0x07, 0x0f, 0xac, 0xb6, 0x84, 0x18, 0x90, 0x00, 0x16, 0xd6, 0x6e, 0x16, 0x87, 0xe2, 0xda, 0xf8, 0xeb, 0x4b, 0x63, 0xb7, 0x49, 0xa4, 0x28, 0x38, 0x38, 0x69, 0x4d, 0x3d, 0xee, 0xac, 0x3e, 0x79, 0xb9, 0x70, 0x6e, 0x85, 0x6f, 0xb7, 0x35, 0x8f, 0xa0, 0xa2, }; static const unsigned char ecdh_brainpoolp384r1_897_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_897_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_897 = { .name = "ecdh_brainpoolp384r1_897", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_897_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_897_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_897_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 898 for ECDH, tcId is 7 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_898_peerpubkey[] = { 0x79, 0x08, 0xc8, 0xd8, 0x95, 0xed, 0x9e, 0xf9, 0xa9, 0x02, 0x95, 0x1a, 0x3a, 0x45, 0x38, 0x3d, 0x24, 0xd5, 0x7e, 0x3b, 0xeb, 0x47, 0xf8, 0x4c, 0x58, 0x63, 0x6a, 0xbd, 0x64, 0x6b, 0x90, 0x50, 0x87, 0xb2, 0xa0, 0x6e, 0x13, 0x04, 0x28, 0xf5, 0x90, 0x07, 0x86, 0x6a, 0x2a, 0x63, 0x8a, 0xbd, 0x4a, 0xf0, 0x80, 0x91, 0xe7, 0x58, 0x9d, 0xcf, 0xbe, 0x7e, 0x63, 0x8f, 0x10, 0xb4, 0x30, 0xa8, 0x9e, 0xa2, 0x6a, 0xd9, 0x30, 0x01, 0x9a, 0x22, 0x70, 0x40, 0xca, 0x43, 0xaa, 0x4d, 0x08, 0x65, 0x1b, 0x7c, 0x09, 0x04, 0xc5, 0x1a, 0x32, 0xf8, 0xd2, 0x14, 0xb2, 0xf0, 0xf4, 0x34, 0xe8, 0x5d, }; static const unsigned char ecdh_brainpoolp384r1_898_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_898_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_898 = { .name = "ecdh_brainpoolp384r1_898", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_898_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_898_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_898_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 899 for ECDH, tcId is 8 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_899_peerpubkey[] = { 0x40, 0x2f, 0x58, 0xfa, 0xf1, 0x5b, 0x56, 0xdc, 0x44, 0x8b, 0xb6, 0xeb, 0x75, 0x25, 0x02, 0xd0, 0x37, 0x83, 0xd7, 0xbe, 0xcc, 0xc3, 0xaf, 0xdb, 0x5c, 0x44, 0xc0, 0xe3, 0x05, 0x76, 0x51, 0x09, 0xc9, 0x52, 0x27, 0xe9, 0xd7, 0xe2, 0xe9, 0xc5, 0x21, 0x77, 0xde, 0x0e, 0xd2, 0xf9, 0x5b, 0xaa, 0x06, 0x2e, 0x40, 0x0b, 0xfa, 0xe4, 0x74, 0x4a, 0x06, 0x11, 0x99, 0xb3, 0x35, 0x80, 0x30, 0x19, 0x4e, 0x7f, 0x28, 0xd3, 0xba, 0x74, 0x8f, 0xf0, 0x26, 0x0b, 0x1f, 0xee, 0x5d, 0x08, 0x44, 0xf8, 0xce, 0x44, 0x6d, 0xac, 0x26, 0x3a, 0x54, 0xbe, 0x95, 0x0d, 0x38, 0x9e, 0x03, 0x41, 0xb5, 0x75, }; static const unsigned char ecdh_brainpoolp384r1_899_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_899_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_899 = { .name = "ecdh_brainpoolp384r1_899", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_899_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_899_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_899_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 900 for ECDH, tcId is 9 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_900_peerpubkey[] = { 0x64, 0xa1, 0x7f, 0xfb, 0x46, 0xef, 0x3a, 0x32, 0x1b, 0xa2, 0x3f, 0x97, 0x74, 0x0e, 0x48, 0x9e, 0xd2, 0x6e, 0x6f, 0x76, 0xb5, 0x86, 0x34, 0x4f, 0x69, 0xcc, 0x5c, 0x05, 0x65, 0x6d, 0xae, 0xa3, 0x57, 0x19, 0xc8, 0xc6, 0xb4, 0xcb, 0x5d, 0x1c, 0x5d, 0x8e, 0xec, 0x6d, 0x67, 0x05, 0xef, 0xe4, 0x77, 0x39, 0x6a, 0x92, 0x65, 0xb9, 0xc7, 0x1a, 0xd1, 0x11, 0x85, 0x5d, 0x87, 0x95, 0x98, 0xce, 0x31, 0xe9, 0xe9, 0x5c, 0xe9, 0x39, 0x5b, 0x75, 0x15, 0x88, 0xc5, 0xd9, 0x2a, 0x3a, 0xac, 0xb6, 0x0d, 0x41, 0x3c, 0x1b, 0xcc, 0x66, 0xe7, 0xb9, 0xcf, 0x66, 0x3d, 0x30, 0xb8, 0xb0, 0x0a, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_900_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_900_sharedsecret[] = { 0x17, 0xcf, 0xae, 0x6c, 0x38, 0x51, 0xf2, 0xc5, 0xca, 0x6b, 0xad, 0xbb, 0xe2, 0xcf, 0x88, 0x56, 0x62, 0xd6, 0xf7, 0xf0, 0x9e, 0x74, 0x37, 0x4f, 0x1c, 0x7c, 0x22, 0x45, 0x04, 0x5c, 0x02, 0x44, 0x3e, 0xeb, 0x57, 0xd8, 0xb4, 0x3b, 0x46, 0x3d, 0xab, 0xcc, 0x02, 0x21, 0xbc, 0x82, 0xab, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_900 = { .name = "ecdh_brainpoolp384r1_900", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_900_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_900_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_900_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 901 for ECDH, tcId is 10 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_901_peerpubkey[] = { 0x5d, 0x86, 0xd2, 0x27, 0x5f, 0x8e, 0x2c, 0x9d, 0x7c, 0x92, 0x32, 0xc4, 0x8b, 0x41, 0x15, 0x9b, 0x1e, 0x8e, 0x84, 0x8d, 0x5e, 0x09, 0x86, 0x41, 0x9c, 0x3b, 0x40, 0xb4, 0xa9, 0xb9, 0x3d, 0x3d, 0x86, 0x3e, 0xfb, 0xad, 0x99, 0xc9, 0x81, 0xc4, 0x5b, 0xdd, 0x40, 0xbf, 0x3f, 0xd3, 0xe2, 0xb2, 0x62, 0xba, 0x8a, 0x5c, 0x36, 0xe3, 0xd9, 0x48, 0xf2, 0xe9, 0xfb, 0xc4, 0x68, 0x7f, 0xb5, 0xde, 0x4f, 0x4f, 0xb5, 0x9e, 0x38, 0xba, 0xc3, 0xbc, 0xa2, 0xe6, 0x11, 0x79, 0xe0, 0x81, 0x35, 0xe3, 0x46, 0xe1, 0xfe, 0xbc, 0xf9, 0xbe, 0xbe, 0x9b, 0xcd, 0x80, 0x76, 0x88, 0x18, 0x80, 0x6a, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_901_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_901_sharedsecret[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_901 = { .name = "ecdh_brainpoolp384r1_901", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_901_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_901_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_901_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 902 for ECDH, tcId is 11 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_902_peerpubkey[] = { 0x5c, 0x1b, 0x95, 0x13, 0x76, 0x6f, 0x01, 0x7a, 0x40, 0x1f, 0xed, 0x11, 0xa4, 0x35, 0xa3, 0xec, 0x55, 0xa8, 0x18, 0x0d, 0xc2, 0x80, 0xd7, 0xcc, 0xf7, 0xda, 0xb8, 0x9f, 0x79, 0x49, 0x9d, 0xba, 0x8e, 0x22, 0x93, 0x61, 0xc2, 0xbc, 0x0f, 0x64, 0x06, 0x55, 0x8d, 0xb0, 0x72, 0x18, 0xe2, 0xd3, 0x61, 0xaa, 0x06, 0x5e, 0x64, 0xca, 0xbb, 0x09, 0x7b, 0x9d, 0xa8, 0xac, 0x73, 0xb5, 0x68, 0xb4, 0xbc, 0xdd, 0xb4, 0xe3, 0xd6, 0xac, 0xae, 0x8f, 0x68, 0x1f, 0x68, 0xb0, 0x2b, 0xbf, 0xe4, 0x23, 0xc9, 0x8a, 0x2d, 0x3e, 0x1d, 0x99, 0xea, 0xce, 0xde, 0xc4, 0xbf, 0x79, 0xbf, 0x27, 0x85, 0x07, }; static const unsigned char ecdh_brainpoolp384r1_902_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_902_sharedsecret[] = { 0x2d, 0x06, 0xd2, 0x05, 0xcb, 0xa6, 0xe2, 0x0e, 0x97, 0x61, 0x6b, 0x25, 0x73, 0x0e, 0xfc, 0x50, 0x43, 0x3f, 0xb2, 0x46, 0xda, 0x15, 0x64, 0x25, 0x08, 0xf0, 0x8d, 0xd4, 0xdc, 0x34, 0x8e, 0x83, 0x79, 0x37, 0x15, 0x88, 0xac, 0x25, 0xfa, 0x39, 0x69, 0x69, 0x68, 0xbf, 0xff, 0x4c, 0x76, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_902 = { .name = "ecdh_brainpoolp384r1_902", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_902_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_902_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_902_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 903 for ECDH, tcId is 12 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_903_peerpubkey[] = { 0x47, 0xad, 0x56, 0x55, 0x22, 0x9b, 0x6c, 0x8d, 0x3f, 0x32, 0x8f, 0x00, 0xa1, 0x0c, 0xb7, 0x19, 0xc6, 0x4c, 0x8a, 0x99, 0x42, 0xac, 0xaa, 0x66, 0x00, 0xda, 0x6f, 0x0d, 0xa2, 0x79, 0xd5, 0xe8, 0x30, 0xfb, 0xe2, 0x5c, 0x28, 0x91, 0x74, 0x0b, 0x17, 0xdc, 0xbb, 0x22, 0xe5, 0x25, 0x5a, 0x93, 0x14, 0xda, 0x41, 0x0d, 0x40, 0x28, 0x54, 0xff, 0x72, 0xdd, 0x49, 0x7e, 0xa0, 0xac, 0xcb, 0xd3, 0x67, 0xde, 0x04, 0xb2, 0xfc, 0x0c, 0x7b, 0x33, 0x78, 0xf2, 0xbb, 0x95, 0x7e, 0x16, 0x38, 0x82, 0x0f, 0x7e, 0xc3, 0xdd, 0x48, 0x3f, 0xc8, 0x0d, 0x7e, 0xe6, 0x50, 0xea, 0xd7, 0xf0, 0xd0, 0x6a, }; static const unsigned char ecdh_brainpoolp384r1_903_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_903_sharedsecret[] = { 0x33, 0xa2, 0x8d, 0xf9, 0x28, 0x42, 0xcc, 0x0a, 0x0d, 0x43, 0xe5, 0xd3, 0x3e, 0x2d, 0x35, 0x1e, 0x64, 0x12, 0x58, 0xd5, 0x05, 0xcb, 0xca, 0x1a, 0x68, 0x6a, 0x2f, 0x8c, 0x51, 0x3d, 0x7f, 0x94, 0x5e, 0x78, 0x18, 0x7e, 0xae, 0x18, 0x8e, 0x65, 0x96, 0x32, 0x70, 0xa0, 0x75, 0x05, 0x6e, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_903 = { .name = "ecdh_brainpoolp384r1_903", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_903_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_903_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_903_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 904 for ECDH, tcId is 13 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_904_peerpubkey[] = { 0x36, 0x73, 0xcc, 0x8f, 0x64, 0xb4, 0xf6, 0x65, 0x1c, 0xe2, 0xb6, 0x9e, 0x05, 0x7d, 0xb0, 0x5f, 0x24, 0xc4, 0xc1, 0x18, 0xe6, 0x96, 0x65, 0xd8, 0xbf, 0x6e, 0x57, 0x74, 0xd0, 0xb2, 0xba, 0x96, 0xcc, 0xc7, 0x96, 0xf5, 0x47, 0xcf, 0x29, 0x83, 0xb5, 0xd4, 0xc2, 0x05, 0x5e, 0xca, 0xb7, 0x5e, 0x51, 0xf4, 0xc4, 0xe9, 0x95, 0x39, 0x74, 0x7d, 0xf8, 0xcb, 0x4a, 0xb3, 0x67, 0x45, 0xfd, 0x3c, 0x60, 0xf1, 0x6c, 0x7e, 0x83, 0xa1, 0xd3, 0xe1, 0x5b, 0x44, 0xcf, 0xca, 0x19, 0x53, 0x92, 0x9e, 0xad, 0x6a, 0xf8, 0x39, 0x8c, 0x43, 0x58, 0x9e, 0x91, 0x3e, 0xbc, 0x64, 0x75, 0x3e, 0xdb, 0x16, }; static const unsigned char ecdh_brainpoolp384r1_904_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_904_sharedsecret[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_904 = { .name = "ecdh_brainpoolp384r1_904", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_904_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_904_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_904_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 905 for ECDH, tcId is 14 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_905_peerpubkey[] = { 0x8c, 0x58, 0x3d, 0x04, 0x13, 0xb2, 0x4e, 0xaa, 0xc4, 0xec, 0x48, 0x43, 0x48, 0xa3, 0xeb, 0x70, 0x59, 0xe3, 0x7e, 0x85, 0x75, 0xdc, 0x26, 0x57, 0xef, 0x2c, 0x0a, 0x1b, 0x03, 0xd3, 0x20, 0xee, 0x36, 0x38, 0x30, 0x70, 0x22, 0x19, 0x7e, 0xb4, 0x0c, 0xfa, 0xa6, 0xc2, 0x46, 0x5e, 0x7b, 0x27, 0x2f, 0x02, 0x7a, 0xfa, 0xd1, 0x8d, 0xa3, 0xd1, 0x44, 0x09, 0x15, 0x69, 0x11, 0x03, 0x24, 0x70, 0x7a, 0x84, 0x99, 0x90, 0x2d, 0x32, 0x7f, 0x97, 0xe3, 0x29, 0x5f, 0xee, 0xb2, 0x75, 0x2c, 0x0a, 0x69, 0x46, 0xde, 0xdf, 0x08, 0xe9, 0x77, 0xd8, 0x30, 0xc8, 0xe1, 0x35, 0xf9, 0xec, 0xc0, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_905_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_905_sharedsecret[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_905 = { .name = "ecdh_brainpoolp384r1_905", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_905_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_905_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_905_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 906 for ECDH, tcId is 15 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_906_peerpubkey[] = { 0x34, 0x9c, 0x8a, 0x1b, 0x4e, 0x98, 0x6d, 0x3f, 0x81, 0x4a, 0x0b, 0x14, 0xeb, 0xc4, 0x16, 0xe5, 0x8e, 0xb6, 0x0c, 0x69, 0x7a, 0xf8, 0x89, 0xd9, 0xea, 0xc3, 0x92, 0x7e, 0x53, 0x79, 0x1b, 0x58, 0x9d, 0x10, 0x68, 0xb5, 0x59, 0x02, 0x60, 0x5c, 0x67, 0x5f, 0xfb, 0xc1, 0xf1, 0x1c, 0xef, 0xe5, 0x76, 0xa8, 0xa0, 0x77, 0xf4, 0xe5, 0x67, 0x6b, 0x07, 0xa2, 0xe7, 0x01, 0xad, 0xbd, 0xd1, 0x5f, 0x78, 0xa3, 0xc0, 0x4d, 0x36, 0x5e, 0x65, 0x40, 0x55, 0xee, 0x88, 0xc4, 0xd0, 0x07, 0xa9, 0x7f, 0x5e, 0x66, 0x74, 0xe6, 0x47, 0x50, 0x48, 0x2c, 0x9d, 0xed, 0xcd, 0x24, 0xae, 0x26, 0x3e, 0x50, }; static const unsigned char ecdh_brainpoolp384r1_906_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_906_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_906 = { .name = "ecdh_brainpoolp384r1_906", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_906_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_906_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_906_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 907 for ECDH, tcId is 16 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_907_peerpubkey[] = { 0x57, 0x2e, 0xd4, 0x7e, 0x9e, 0xe3, 0x1d, 0x2b, 0x21, 0x81, 0xf5, 0xc5, 0x56, 0x28, 0x52, 0xc7, 0xf8, 0xff, 0x70, 0x50, 0xf8, 0x7d, 0xc6, 0x88, 0xa6, 0x4b, 0xc1, 0xba, 0x0b, 0xf2, 0x80, 0xfe, 0x55, 0x11, 0x8f, 0x8f, 0x8c, 0x7f, 0x9c, 0x0d, 0xb1, 0xe5, 0x12, 0x68, 0x08, 0x76, 0xe7, 0xae, 0x87, 0xdd, 0xb0, 0x17, 0x4b, 0xe3, 0xd7, 0x1c, 0xe5, 0xbd, 0xa9, 0xcc, 0x02, 0x4d, 0x04, 0xc8, 0xa8, 0x2c, 0x00, 0x24, 0x91, 0xb8, 0x34, 0x15, 0x04, 0x3b, 0xfb, 0xb1, 0xb3, 0x72, 0xfb, 0xfa, 0xca, 0x27, 0xe0, 0xfb, 0xe9, 0x76, 0x8f, 0xec, 0x5e, 0xc6, 0x7c, 0x5f, 0xd7, 0x54, 0x48, 0x17, }; static const unsigned char ecdh_brainpoolp384r1_907_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_907_sharedsecret[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_907 = { .name = "ecdh_brainpoolp384r1_907", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_907_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_907_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_907_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 908 for ECDH, tcId is 17 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_908_peerpubkey[] = { 0x4e, 0xf2, 0xb0, 0x5b, 0xf7, 0x0e, 0x82, 0x7c, 0x1f, 0xe6, 0x4e, 0xdd, 0xcc, 0x04, 0xcf, 0x1a, 0x41, 0x6c, 0x03, 0x2d, 0x15, 0x5d, 0x39, 0x46, 0xbf, 0xf2, 0x27, 0x07, 0x01, 0xfe, 0xce, 0x2e, 0xc1, 0xae, 0x97, 0x25, 0x91, 0x2c, 0xc4, 0xed, 0x9a, 0x97, 0xf5, 0x2b, 0x10, 0xa9, 0x8a, 0xc1, 0x2a, 0xe6, 0xe9, 0x4b, 0xab, 0x91, 0x6c, 0x57, 0x63, 0x81, 0x24, 0x35, 0xf2, 0x5a, 0x74, 0xbe, 0x83, 0xae, 0xa5, 0x08, 0xf5, 0x37, 0xf9, 0xf8, 0xd6, 0x7f, 0xe6, 0x6f, 0x0e, 0x30, 0xed, 0x3f, 0xc9, 0x6c, 0xcb, 0xa7, 0x5d, 0x6f, 0xf4, 0x62, 0x21, 0x81, 0x6d, 0x8f, 0xca, 0x2b, 0x48, 0x4c, }; static const unsigned char ecdh_brainpoolp384r1_908_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_908_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_908 = { .name = "ecdh_brainpoolp384r1_908", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_908_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_908_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_908_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 909 for ECDH, tcId is 18 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_909_peerpubkey[] = { 0x8c, 0x4c, 0xe7, 0x5c, 0x1f, 0xb2, 0x3e, 0x25, 0x3d, 0x0f, 0xb0, 0xa1, 0xbe, 0x67, 0xdd, 0xe4, 0xb4, 0x5a, 0x4e, 0x67, 0x63, 0xae, 0x07, 0x94, 0xb5, 0xd2, 0x4a, 0x37, 0x20, 0x9b, 0x25, 0xac, 0x2e, 0x95, 0x20, 0x8b, 0xa3, 0x97, 0xbd, 0xb0, 0x1b, 0x45, 0x9a, 0x11, 0xfc, 0x4c, 0xd8, 0x9c, 0x07, 0xf4, 0x3a, 0x66, 0x4e, 0xa0, 0xfc, 0xa1, 0x16, 0xb6, 0x61, 0x24, 0xa4, 0xfa, 0xdc, 0x0b, 0x34, 0x1c, 0xc3, 0xd7, 0xec, 0x2d, 0xa1, 0x4b, 0xd5, 0x58, 0x96, 0x42, 0x01, 0x6f, 0x10, 0x76, 0x76, 0x2a, 0x53, 0x51, 0x45, 0xb6, 0xcd, 0xa3, 0xf8, 0xbb, 0xce, 0x24, 0xc0, 0xed, 0x96, 0x37, }; static const unsigned char ecdh_brainpoolp384r1_909_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_909_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_909 = { .name = "ecdh_brainpoolp384r1_909", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_909_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_909_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_909_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 910 for ECDH, tcId is 19 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_910_peerpubkey[] = { 0x70, 0xc6, 0xe0, 0xdc, 0xea, 0xf6, 0x3c, 0x5b, 0x92, 0xc4, 0x5b, 0x5f, 0x33, 0xf9, 0xff, 0x04, 0x95, 0x84, 0xb0, 0xb4, 0x1e, 0xc1, 0xc4, 0x76, 0xe5, 0x06, 0x51, 0xd5, 0xec, 0x56, 0x06, 0x94, 0x90, 0xdb, 0x56, 0x1d, 0x97, 0xb1, 0xa2, 0xc2, 0xbe, 0xbc, 0xb7, 0xb4, 0x3c, 0x80, 0x01, 0xeb, 0x52, 0xb9, 0xfe, 0xdd, 0xb9, 0x92, 0xf6, 0x9e, 0x9e, 0x56, 0x6c, 0xca, 0xbb, 0x69, 0x35, 0x2c, 0xea, 0x29, 0x4e, 0x1d, 0x26, 0x83, 0xd7, 0x04, 0x6b, 0x98, 0x58, 0x56, 0x9a, 0xb7, 0x35, 0x76, 0xf2, 0xb4, 0x2f, 0x11, 0xad, 0x19, 0xcb, 0x41, 0xa9, 0x6e, 0xa3, 0xd5, 0x95, 0xfd, 0x01, 0x14, }; static const unsigned char ecdh_brainpoolp384r1_910_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_910_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_910 = { .name = "ecdh_brainpoolp384r1_910", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_910_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_910_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_910_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 911 for ECDH, tcId is 20 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_911_peerpubkey[] = { 0x71, 0x61, 0x3b, 0x39, 0xcc, 0x9c, 0xad, 0x25, 0xb5, 0xc6, 0x77, 0xdc, 0xf0, 0x71, 0xde, 0x63, 0x08, 0x41, 0x1a, 0x0f, 0x2c, 0x10, 0x66, 0xde, 0x80, 0x3b, 0xfb, 0x68, 0xc5, 0xbf, 0xf5, 0x5c, 0x26, 0xe3, 0x2a, 0xfa, 0xd0, 0xaa, 0xcd, 0xbb, 0xc3, 0x2a, 0xf5, 0xdc, 0x5f, 0xf7, 0x1b, 0x7e, 0x24, 0x68, 0x4b, 0x4f, 0x59, 0xf7, 0xe8, 0x20, 0x53, 0xd5, 0xc2, 0xec, 0xa4, 0x5e, 0x19, 0x63, 0xd5, 0x94, 0xcf, 0xfe, 0x28, 0x29, 0x46, 0x06, 0x59, 0x39, 0x7e, 0x3e, 0x97, 0x8b, 0x30, 0x4d, 0xaf, 0x78, 0x5e, 0x81, 0xf1, 0x56, 0x6b, 0xce, 0x2c, 0xad, 0xc4, 0x9f, 0xde, 0xca, 0xf3, 0x7b, }; static const unsigned char ecdh_brainpoolp384r1_911_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_911_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_911 = { .name = "ecdh_brainpoolp384r1_911", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_911_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_911_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_911_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 20 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 912 for ECDH, tcId is 21 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_912_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0xe5, 0x43, 0x65, 0x09, 0x16, 0x51, 0xee, 0xbe, 0x3a, 0xa1, 0xe1, 0x3a, 0x14, 0xec, 0x2c, 0x0d, 0xd1, 0xb1, 0xad, 0x37, 0x78, 0xf6, 0x9d, 0x58, 0x6d, 0x07, 0x8d, 0x75, 0x54, 0xc1, 0x16, 0xa7, 0x1e, 0x42, 0x2a, 0xdd, 0x51, 0xce, 0xa4, 0x77, 0xce, 0x15, 0x4c, 0xe8, 0x73, 0x94, 0x0e, }; static const unsigned char ecdh_brainpoolp384r1_912_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_912_sharedsecret[] = { 0x55, 0xb4, 0xe8, 0x9b, 0x8c, 0xa6, 0xcd, 0x39, 0x91, 0xc3, 0x57, 0x8f, 0x8a, 0x97, 0x04, 0x89, 0xd5, 0xfb, 0x1b, 0xd7, 0xb9, 0x79, 0xcb, 0xfd, 0xad, 0xd1, 0x86, 0x4b, 0x28, 0x1a, 0xfa, 0x73, 0x79, 0x2c, 0x6e, 0x7b, 0xaf, 0x93, 0x80, 0x53, 0xfb, 0xac, 0xee, 0xdd, 0xaa, 0x53, 0x25, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_912 = { .name = "ecdh_brainpoolp384r1_912", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_912_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_912_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_912_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 913 for ECDH, tcId is 22 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_913_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x16, 0xe6, 0x51, 0x9b, 0xec, 0x6c, 0x43, 0x06, 0x08, 0x42, 0x53, 0x6d, 0xad, 0x3a, 0x68, 0x98, 0x8e, 0x84, 0x27, 0x53, 0x0b, 0x0f, 0x98, 0x76, 0x5b, 0x9d, 0x02, 0x85, 0xee, 0xbd, 0xf4, 0x61, 0x27, 0x0a, 0x2c, 0xcb, 0xd4, 0xd0, 0xb3, 0x52, 0xd4, 0x26, 0x3b, 0x97, 0x28, 0x1a, 0x15, 0xfa, }; static const unsigned char ecdh_brainpoolp384r1_913_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_913_sharedsecret[] = { 0x87, 0xcc, 0x93, 0x42, 0x65, 0x15, 0x1b, 0x4f, 0xec, 0x13, 0x35, 0x79, 0x3e, 0x6a, 0x7d, 0xe9, 0x84, 0x32, 0xd9, 0x14, 0xb7, 0x32, 0x1e, 0x2b, 0xa8, 0x7b, 0xb2, 0x15, 0xe4, 0xb8, 0x58, 0x9e, 0x01, 0xd3, 0xd4, 0x27, 0x07, 0x95, 0x9c, 0x0f, 0x24, 0x34, 0x74, 0xfe, 0x92, 0x30, 0x51, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_913 = { .name = "ecdh_brainpoolp384r1_913", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_913_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_913_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_913_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 914 for ECDH, tcId is 23 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_914_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0b, 0x8c, 0xe8, 0x4c, 0x25, 0x21, 0x9c, 0x7e, 0x4f, 0xf3, 0x7a, 0x37, 0x28, 0xfb, 0xcd, 0xea, 0x68, 0x3c, 0x45, 0xb1, 0x56, 0xf4, 0x15, 0x84, 0x23, 0x31, 0x4f, 0xa8, 0x79, 0xe9, 0xd4, 0x9a, 0x02, 0xe1, 0xec, 0x2e, 0x30, 0x5d, 0x7f, 0x2f, 0x01, 0x16, 0x2d, 0x2c, 0x60, 0xe2, 0xad, 0x06, }; static const unsigned char ecdh_brainpoolp384r1_914_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_914_sharedsecret[] = { 0x04, 0x3e, 0xda, 0xde, 0x91, 0xd4, 0x03, 0x0b, 0xe3, 0x40, 0x9d, 0x8c, 0x98, 0x9c, 0xf3, 0xaa, 0x79, 0xfb, 0x09, 0xef, 0xeb, 0x16, 0x87, 0x7b, 0x18, 0x55, 0x8d, 0xca, 0xf4, 0x6c, 0x1d, 0x2f, 0x73, 0x69, 0xf8, 0x58, 0x3c, 0xa8, 0x35, 0x00, 0x03, 0xe3, 0x83, 0x65, 0x54, 0xaf, 0x3a, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_914 = { .name = "ecdh_brainpoolp384r1_914", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_914_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_914_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_914_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 915 for ECDH, tcId is 24 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_915_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x3e, 0x52, 0x8e, 0x60, 0x4d, 0xc0, 0x3d, 0x7c, 0x65, 0x8e, 0x1f, 0x5c, 0x41, 0x02, 0xe1, 0xd3, 0x1d, 0xde, 0xff, 0xaf, 0xcc, 0x2f, 0x7d, 0x7a, 0x48, 0x16, 0xce, 0xc4, 0x97, 0xa0, 0x9a, 0x85, 0x1f, 0x40, 0xad, 0x61, 0x66, 0x93, 0x01, 0x30, 0x38, 0xc0, 0x07, 0x69, 0x79, 0x96, 0xde, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_915_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_915_sharedsecret[] = { 0x79, 0x5e, 0xf5, 0xcc, 0x47, 0xdf, 0xbd, 0x54, 0x4e, 0x16, 0x92, 0x80, 0x9d, 0x7c, 0x85, 0x3d, 0x8a, 0xfa, 0x10, 0x4d, 0x7d, 0x44, 0x38, 0xed, 0xe5, 0x3b, 0xea, 0x15, 0xf6, 0xc6, 0x0d, 0x23, 0x62, 0x1e, 0x0a, 0xe2, 0x48, 0xea, 0x2a, 0x6c, 0x4e, 0x3a, 0x91, 0x9e, 0x45, 0x5c, 0x00, 0xa4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_915 = { .name = "ecdh_brainpoolp384r1_915", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_915_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_915_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_915_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 916 for ECDH, tcId is 25 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_916_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x20, 0x06, 0x80, 0xb0, 0x02, 0xd9, 0xad, 0xf1, 0xe0, 0x53, 0xdb, 0xf0, 0x4a, 0xdd, 0xdd, 0xf8, 0xc5, 0x8d, 0xe9, 0x20, 0x54, 0x3e, 0x06, 0x14, 0xc9, 0x76, 0x44, 0x6d, 0xb3, 0x42, 0x69, 0xd5, 0xe2, 0x18, 0xc1, 0x21, 0x70, 0x4a, 0x0a, 0xcf, 0x35, 0xd7, 0x76, 0xd0, 0xa1, 0x4e, 0x29, 0x4d, }; static const unsigned char ecdh_brainpoolp384r1_916_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_916_sharedsecret[] = { 0x60, 0x6d, 0xc0, 0x6d, 0xcd, 0x00, 0x83, 0x0b, 0xd4, 0x28, 0x04, 0xdc, 0x43, 0xcb, 0x94, 0xee, 0x78, 0xc1, 0xa5, 0xa3, 0x59, 0x96, 0xca, 0x4b, 0x49, 0xfb, 0x72, 0x54, 0x33, 0xbd, 0x07, 0x2e, 0x4b, 0x04, 0xe1, 0xc0, 0x52, 0xd7, 0x34, 0x05, 0x42, 0xcd, 0x08, 0xf1, 0xdb, 0xd7, 0x9f, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_916 = { .name = "ecdh_brainpoolp384r1_916", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_916_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_916_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_916_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 917 for ECDH, tcId is 26 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_917_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, 0x04, 0xf1, 0x79, 0x9a, 0xad, 0xa7, 0xab, 0xdd, 0xe3, 0x28, 0x0f, 0x96, 0x38, 0xbe, 0xcb, 0x24, 0x0b, 0xe6, 0x01, 0x23, 0xc9, 0x1a, 0xd1, 0x4c, 0xf1, 0xf7, 0xd7, 0x7e, 0x83, 0x33, 0x05, 0x19, 0xa6, 0x8a, 0x9d, 0xd6, 0x1a, 0x8d, 0x63, 0x9e, 0x12, 0xa4, 0x1a, 0xb9, 0x30, 0xbc, 0x27, 0x8b, }; static const unsigned char ecdh_brainpoolp384r1_917_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_917_sharedsecret[] = { 0x82, 0xa6, 0xb7, 0xb9, 0x74, 0x0a, 0x9e, 0x61, 0xa5, 0xf5, 0xd9, 0x77, 0xdf, 0xcc, 0x65, 0x50, 0x47, 0xeb, 0x41, 0x5c, 0xbb, 0x98, 0x93, 0x5f, 0xc2, 0x40, 0x86, 0xb6, 0x3f, 0xbc, 0x98, 0x0b, 0x75, 0x0e, 0xae, 0xcb, 0x52, 0x32, 0xee, 0x97, 0xf7, 0x70, 0xd1, 0xed, 0xe5, 0x1e, 0xd8, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_917 = { .name = "ecdh_brainpoolp384r1_917", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_917_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_917_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_917_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 918 for ECDH, tcId is 27 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_918_peerpubkey[] = { 0x17, 0xcf, 0xae, 0x6c, 0x38, 0x51, 0xf2, 0xc5, 0xca, 0x6b, 0xad, 0xbb, 0xe2, 0xcf, 0x88, 0x56, 0x62, 0xd6, 0xf7, 0xf0, 0x9e, 0x74, 0x37, 0x4f, 0x1c, 0x7c, 0x22, 0x45, 0x04, 0x5c, 0x02, 0x44, 0x3e, 0xeb, 0x57, 0xd8, 0xb4, 0x3b, 0x46, 0x3d, 0xab, 0xcc, 0x02, 0x21, 0xbc, 0x82, 0xab, 0xaa, 0x20, 0x6c, 0xe3, 0x2b, 0xa9, 0xa9, 0xc8, 0x3e, 0xc7, 0x9f, 0x07, 0xa8, 0xe6, 0x1a, 0x7a, 0x29, 0x54, 0x86, 0xcb, 0x79, 0xc4, 0x79, 0x42, 0xef, 0xd3, 0x23, 0xcd, 0x9d, 0xbe, 0x14, 0x02, 0x85, 0xbd, 0x0b, 0x06, 0x4f, 0xcd, 0xe0, 0xdc, 0x6e, 0x32, 0x03, 0x60, 0x43, 0xe4, 0x00, 0xcd, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_918_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_918_sharedsecret[] = { 0x40, 0xd2, 0xf6, 0x75, 0xaf, 0x9b, 0x7b, 0xcd, 0x5b, 0x8a, 0x76, 0x83, 0xf6, 0x00, 0xe0, 0x98, 0xb5, 0xdf, 0xc2, 0x68, 0x1c, 0x0c, 0xe8, 0x1a, 0x8c, 0x8d, 0x9a, 0xb0, 0xa1, 0x5a, 0xf1, 0x57, 0xc4, 0xeb, 0xf3, 0xd0, 0x4f, 0x52, 0xfa, 0x22, 0x42, 0xf0, 0x5e, 0xb5, 0xcd, 0xb1, 0x88, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_918 = { .name = "ecdh_brainpoolp384r1_918", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_918_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_918_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_918_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 919 for ECDH, tcId is 28 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_919_peerpubkey[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, 0x1f, 0x4e, 0xa0, 0x2c, 0x39, 0xfc, 0xbb, 0xbb, 0xfe, 0xd4, 0xb8, 0x80, 0x95, 0xf4, 0xdc, 0x0b, 0xe2, 0x1f, 0x36, 0x0f, 0x5b, 0xbb, 0x6e, 0xeb, 0xbe, 0x31, 0x8c, 0x56, 0x67, 0xa2, 0xca, 0xe0, 0xdb, 0x94, 0xa4, 0x54, 0xdb, 0x55, 0x57, 0x85, 0x51, 0x61, 0x6a, 0x2b, 0xde, 0xc4, 0x61, 0xd7, }; static const unsigned char ecdh_brainpoolp384r1_919_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_919_sharedsecret[] = { 0x85, 0x8b, 0x9c, 0x88, 0xc4, 0xce, 0xb5, 0x7e, 0xa7, 0x19, 0x5c, 0xa4, 0xfe, 0xf5, 0x91, 0x1d, 0xe0, 0xb1, 0x8c, 0x3b, 0xd6, 0xa4, 0x6c, 0x23, 0x07, 0x7c, 0x4d, 0xcb, 0x70, 0xc0, 0x85, 0x34, 0xf5, 0x0d, 0x44, 0xdf, 0xc1, 0xa2, 0xd2, 0xb8, 0x05, 0x20, 0x5e, 0x9d, 0x03, 0x38, 0x2a, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_919 = { .name = "ecdh_brainpoolp384r1_919", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_919_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_919_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_919_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 920 for ECDH, tcId is 29 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_920_peerpubkey[] = { 0x2d, 0x06, 0xd2, 0x05, 0xcb, 0xa6, 0xe2, 0x0e, 0x97, 0x61, 0x6b, 0x25, 0x73, 0x0e, 0xfc, 0x50, 0x43, 0x3f, 0xb2, 0x46, 0xda, 0x15, 0x64, 0x25, 0x08, 0xf0, 0x8d, 0xd4, 0xdc, 0x34, 0x8e, 0x83, 0x79, 0x37, 0x15, 0x88, 0xac, 0x25, 0xfa, 0x39, 0x69, 0x69, 0x68, 0xbf, 0xff, 0x4c, 0x76, 0xf6, 0x07, 0xeb, 0x10, 0x7e, 0x35, 0xde, 0x14, 0x3e, 0x39, 0x25, 0x1c, 0x7f, 0xa5, 0x93, 0x85, 0x39, 0x52, 0xc5, 0x5a, 0xc7, 0x6c, 0x48, 0x89, 0x9d, 0xe9, 0xa6, 0xe0, 0x3d, 0x98, 0x4b, 0x24, 0x61, 0x7f, 0xa8, 0x9d, 0xa4, 0xb6, 0x0b, 0x8e, 0x8c, 0x70, 0xad, 0x2a, 0xd5, 0x0e, 0xa1, 0xd0, 0x63, }; static const unsigned char ecdh_brainpoolp384r1_920_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_920_sharedsecret[] = { 0x78, 0x17, 0xe8, 0x22, 0x30, 0x1b, 0xa6, 0x8e, 0x0c, 0xe6, 0x44, 0xac, 0xd4, 0x5a, 0xba, 0x1b, 0x16, 0x8d, 0xdd, 0x59, 0x95, 0xb9, 0x7e, 0xb1, 0x1f, 0xd1, 0xa2, 0x23, 0x99, 0xbb, 0x8b, 0x84, 0xda, 0xf3, 0x02, 0xf3, 0x3e, 0xcf, 0xb8, 0x70, 0x28, 0xdd, 0x80, 0x11, 0xee, 0xcb, 0xf9, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_920 = { .name = "ecdh_brainpoolp384r1_920", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_920_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_920_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_920_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 921 for ECDH, tcId is 30 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_921_peerpubkey[] = { 0x33, 0xa2, 0x8d, 0xf9, 0x28, 0x42, 0xcc, 0x0a, 0x0d, 0x43, 0xe5, 0xd3, 0x3e, 0x2d, 0x35, 0x1e, 0x64, 0x12, 0x58, 0xd5, 0x05, 0xcb, 0xca, 0x1a, 0x68, 0x6a, 0x2f, 0x8c, 0x51, 0x3d, 0x7f, 0x94, 0x5e, 0x78, 0x18, 0x7e, 0xae, 0x18, 0x8e, 0x65, 0x96, 0x32, 0x70, 0xa0, 0x75, 0x05, 0x6e, 0x35, 0x44, 0xe7, 0xe6, 0x0c, 0xc0, 0x4b, 0xcd, 0x88, 0x54, 0xcd, 0x27, 0x56, 0x5e, 0xeb, 0xe1, 0xc3, 0x66, 0x08, 0x15, 0x51, 0x80, 0x0a, 0x3f, 0xee, 0x83, 0x1d, 0x14, 0x93, 0xd4, 0xba, 0xe3, 0x3e, 0x1c, 0x22, 0xdc, 0xbb, 0x9d, 0xc6, 0x96, 0x60, 0x3d, 0xed, 0x84, 0xa4, 0x31, 0x8b, 0xea, 0x0a, }; static const unsigned char ecdh_brainpoolp384r1_921_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_921_sharedsecret[] = { 0x64, 0x70, 0x54, 0x03, 0xb5, 0x40, 0x48, 0x83, 0x88, 0x9c, 0xda, 0xfa, 0x36, 0x6e, 0xb7, 0x37, 0x97, 0xae, 0x97, 0xba, 0xd2, 0x83, 0xd2, 0xbd, 0xdc, 0xd9, 0xbb, 0x26, 0x07, 0xee, 0xfe, 0xe3, 0x92, 0xcb, 0x9d, 0x04, 0xb4, 0xe9, 0x97, 0x01, 0xfd, 0xbb, 0x0d, 0x27, 0xc1, 0x45, 0x7a, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_921 = { .name = "ecdh_brainpoolp384r1_921", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_921_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_921_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_921_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 922 for ECDH, tcId is 31 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_922_peerpubkey[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, 0x00, 0xd0, 0x23, 0x5d, 0xf6, 0xf4, 0x6e, 0x9f, 0xda, 0x7c, 0x16, 0x2c, 0xdb, 0x7e, 0xd5, 0x20, 0x22, 0x45, 0x46, 0xe6, 0x14, 0x69, 0xc0, 0x11, 0xb6, 0xe8, 0xcf, 0xd7, 0x0e, 0x17, 0x9e, 0x85, 0xdd, 0x90, 0x44, 0x96, 0x64, 0xcd, 0x8e, 0x79, 0xbd, 0x9f, 0xcf, 0xf6, 0x1b, 0xbe, 0x9b, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_922_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_922_sharedsecret[] = { 0x4e, 0x5c, 0x21, 0x9e, 0x6f, 0x94, 0xa5, 0x24, 0x17, 0x54, 0x15, 0xe6, 0xaa, 0x60, 0xd1, 0x75, 0x78, 0x71, 0xd7, 0xb6, 0xcc, 0x6b, 0x2c, 0x50, 0x1e, 0x05, 0x30, 0x54, 0xf3, 0x81, 0xb9, 0x2d, 0xc4, 0xf5, 0xac, 0x0a, 0xda, 0xf6, 0x3e, 0x8f, 0x67, 0x39, 0x81, 0x4e, 0x43, 0x02, 0xe8, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_922 = { .name = "ecdh_brainpoolp384r1_922", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_922_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_922_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_922_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 923 for ECDH, tcId is 32 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_923_peerpubkey[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x2b, 0x8c, 0x71, 0x0e, 0x16, 0x0b, 0x3f, 0xda, 0xcf, 0xfc, 0xa4, 0x6b, 0xc2, 0x2b, 0x0b, 0x7b, 0x58, 0x34, 0x9a, 0xb2, 0xa4, 0x18, 0x39, 0x31, 0xfd, 0xf9, 0xe0, 0x50, 0x46, 0x85, 0xdb, 0x3c, 0x40, 0xaa, 0x85, 0x36, 0x07, 0xfb, 0xac, 0x52, 0xb3, 0x56, 0x3e, 0x7c, 0x74, 0x51, 0x6d, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_923_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_923_sharedsecret[] = { 0x71, 0x4b, 0x4e, 0xfb, 0xc1, 0x2f, 0xe0, 0x46, 0x0f, 0xd2, 0x96, 0xc9, 0x86, 0x8f, 0xea, 0xc5, 0x01, 0xd0, 0x0b, 0x05, 0x36, 0xaa, 0x92, 0x69, 0x80, 0x62, 0x08, 0xba, 0x7f, 0xbd, 0x4f, 0x73, 0xed, 0x0a, 0x26, 0xc8, 0x9a, 0x08, 0x54, 0xe6, 0x70, 0xe0, 0x1d, 0xb8, 0x08, 0x8c, 0x3f, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_923 = { .name = "ecdh_brainpoolp384r1_923", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_923_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_923_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_923_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 924 for ECDH, tcId is 33 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_924_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x3e, 0x39, 0x43, 0xf5, 0xe9, 0x2e, 0x4b, 0xff, 0x7f, 0x85, 0xac, 0x91, 0x5b, 0xdc, 0xc0, 0x86, 0x5c, 0x97, 0xd0, 0xcc, 0xe2, 0x6f, 0x05, 0x4d, 0xf1, 0xb2, 0x9c, 0x28, 0x3a, 0x8f, 0x8e, 0x43, 0xd9, 0x64, 0xb5, 0x28, 0xdb, 0xcd, 0x88, 0x76, 0x8b, 0x34, 0x29, 0x95, 0xff, 0x51, 0x7f, 0x07, }; static const unsigned char ecdh_brainpoolp384r1_924_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_924_sharedsecret[] = { 0x43, 0xda, 0x55, 0x6c, 0x9e, 0x9e, 0x29, 0x94, 0x02, 0x53, 0x31, 0x0d, 0x94, 0xca, 0x57, 0x07, 0xca, 0x84, 0xa0, 0x4e, 0x2c, 0xab, 0x89, 0x0c, 0xa4, 0x9f, 0x39, 0x17, 0x47, 0xc5, 0xbe, 0x28, 0x3f, 0x0f, 0x45, 0x93, 0x24, 0x7b, 0xce, 0x6f, 0x00, 0x27, 0xc2, 0xe2, 0xdf, 0xda, 0x8d, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_924 = { .name = "ecdh_brainpoolp384r1_924", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_924_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_924_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_924_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 925 for ECDH, tcId is 34 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_925_peerpubkey[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x42, 0x14, 0xf5, 0x3b, 0x46, 0x99, 0x61, 0x83, 0x01, 0x60, 0x65, 0xc6, 0x15, 0x03, 0x7a, 0x34, 0xf8, 0xbd, 0x34, 0x68, 0x48, 0xd1, 0x3c, 0x87, 0x0e, 0x6f, 0x74, 0xa2, 0x6e, 0x3c, 0xee, 0x63, 0x1d, 0x4d, 0x68, 0x92, 0x44, 0xa6, 0x15, 0x98, 0x3f, 0x6f, 0x8b, 0x9a, 0x48, 0x80, 0xf5, 0x08, }; static const unsigned char ecdh_brainpoolp384r1_925_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_925_sharedsecret[] = { 0x30, 0x22, 0x9a, 0x31, 0x4a, 0xa8, 0xed, 0x9c, 0xeb, 0x2a, 0x9c, 0x35, 0x77, 0x55, 0x8f, 0x6a, 0x9b, 0xd8, 0x57, 0x74, 0x7c, 0xb6, 0x0a, 0x59, 0x81, 0x5d, 0x20, 0x55, 0xbe, 0xde, 0x53, 0xa5, 0x70, 0xb4, 0x61, 0x86, 0x12, 0x29, 0xd8, 0x32, 0xcf, 0x08, 0x64, 0x2e, 0x90, 0x78, 0xd6, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_925 = { .name = "ecdh_brainpoolp384r1_925", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_925_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_925_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_925_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 926 for ECDH, tcId is 35 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_926_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x3c, 0x12, 0x34, 0xbe, 0x10, 0x22, 0xb8, 0x9c, 0x3a, 0x64, 0xf0, 0x41, 0x02, 0x65, 0x8f, 0xb8, 0xc3, 0x19, 0xb6, 0x93, 0x2e, 0xdb, 0xce, 0x6b, 0x78, 0xb0, 0x5f, 0x86, 0x84, 0x1e, 0xde, 0x7e, 0xec, 0xcc, 0x2d, 0x09, 0x1e, 0xd8, 0x67, 0xc2, 0x52, 0xf5, 0x9a, 0x77, 0x3c, 0x27, 0x1e, 0x8f, }; static const unsigned char ecdh_brainpoolp384r1_926_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_926_sharedsecret[] = { 0x2c, 0xce, 0xf9, 0xba, 0x30, 0xb1, 0x6e, 0x50, 0x66, 0x3b, 0xb4, 0xe4, 0x00, 0x6d, 0xe0, 0x4d, 0x5d, 0x68, 0x7e, 0xb6, 0xf4, 0x2d, 0x3d, 0xd8, 0x21, 0xc8, 0xfc, 0xb2, 0xf5, 0x7d, 0x67, 0xcf, 0x86, 0x4c, 0x34, 0x5f, 0xdf, 0x2d, 0xe1, 0xfd, 0xc5, 0x5f, 0xa4, 0x86, 0xa1, 0x66, 0x29, 0xf5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_926 = { .name = "ecdh_brainpoolp384r1_926", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_926_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_926_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_926_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 927 for ECDH, tcId is 36 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_927_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x05, 0x87, 0xff, 0x6f, 0x77, 0xb0, 0xab, 0xaf, 0x25, 0x3e, 0xe3, 0x63, 0x58, 0x1e, 0x52, 0xb9, 0xaa, 0x55, 0xb5, 0x0a, 0x59, 0xe2, 0x23, 0x84, 0x14, 0x82, 0x7e, 0x05, 0xc8, 0x38, 0x61, 0xfd, 0x12, 0x35, 0x6b, 0xe4, 0x54, 0x7b, 0x23, 0x44, 0x39, 0x12, 0xac, 0xf0, 0x7a, 0x02, 0xed, 0xc4, }; static const unsigned char ecdh_brainpoolp384r1_927_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_927_sharedsecret[] = { 0x70, 0x38, 0x24, 0x33, 0xca, 0x76, 0x83, 0x74, 0x1b, 0xa8, 0x36, 0xdf, 0xb5, 0x98, 0x3d, 0x3c, 0x80, 0x76, 0x0b, 0xb7, 0xa9, 0x85, 0x49, 0x9d, 0x27, 0xac, 0x7c, 0x71, 0x5f, 0x8b, 0x76, 0x18, 0x87, 0x7f, 0x65, 0x1f, 0x8f, 0xf8, 0xd1, 0xbd, 0x7c, 0x1b, 0x12, 0x06, 0xf9, 0x37, 0x54, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_927 = { .name = "ecdh_brainpoolp384r1_927", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_927_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_927_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_927_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 928 for ECDH, tcId is 37 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_928_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x21, 0x51, 0x0c, 0xae, 0x0c, 0x66, 0x04, 0x90, 0x01, 0x4d, 0xd6, 0x08, 0x33, 0x7b, 0x3f, 0x3a, 0xfc, 0xd9, 0x7a, 0xaa, 0x7d, 0x79, 0x2e, 0x18, 0x63, 0x75, 0xf1, 0x2a, 0x7a, 0x1f, 0xca, 0x38, 0x12, 0x6e, 0xc4, 0x20, 0x03, 0x4b, 0xd1, 0x2d, 0xa0, 0xcd, 0x05, 0x1d, 0x22, 0x55, 0xf9, 0x22, }; static const unsigned char ecdh_brainpoolp384r1_928_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_928_sharedsecret[] = { 0x5b, 0xc2, 0x6e, 0xbe, 0x1f, 0xdb, 0xa6, 0x61, 0xbd, 0x31, 0x25, 0xe2, 0xc6, 0x81, 0xf5, 0x91, 0xdb, 0x5b, 0xfc, 0x63, 0xca, 0x27, 0xe6, 0xad, 0x49, 0xdd, 0x4f, 0x42, 0xe4, 0x95, 0x61, 0x94, 0x90, 0x46, 0x39, 0x5c, 0x7b, 0x0f, 0xcb, 0x3e, 0x97, 0x56, 0x89, 0xcc, 0x60, 0x2d, 0xfb, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_928 = { .name = "ecdh_brainpoolp384r1_928", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_928_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_928_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_928_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 929 for ECDH, tcId is 38 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_929_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x21, 0x34, 0x01, 0x8a, 0x6f, 0x7b, 0xb0, 0x75, 0xef, 0x67, 0x61, 0x7a, 0xba, 0xfd, 0x66, 0xa2, 0x2e, 0xd8, 0xb5, 0x14, 0x64, 0x08, 0xaa, 0x52, 0xfc, 0x17, 0xcf, 0x52, 0x51, 0x0b, 0x85, 0xf0, 0x8b, 0x73, 0xac, 0xd0, 0xb4, 0x30, 0x1e, 0x99, 0x67, 0xb3, 0xcc, 0x20, 0xb9, 0x14, 0xf8, 0x05, }; static const unsigned char ecdh_brainpoolp384r1_929_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_929_sharedsecret[] = { 0x17, 0x0a, 0x1a, 0x6e, 0x30, 0x92, 0xff, 0x87, 0x47, 0xb2, 0x9d, 0x72, 0x4b, 0xf7, 0x94, 0xa8, 0x39, 0xf2, 0xc0, 0x6f, 0x3a, 0x71, 0xc3, 0x23, 0x32, 0x3f, 0x10, 0xcc, 0x48, 0xfa, 0xdc, 0x55, 0x62, 0x10, 0x11, 0x71, 0xf4, 0xf7, 0xa9, 0xe4, 0x16, 0x38, 0x01, 0x3c, 0x07, 0xa4, 0xfc, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_929 = { .name = "ecdh_brainpoolp384r1_929", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_929_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_929_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_929_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 930 for ECDH, tcId is 39 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_930_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0xe5, 0x43, 0x65, 0x09, 0x16, 0x51, 0xee, 0xbe, 0x3a, 0xa1, 0xe1, 0x3a, 0x14, 0xec, 0x2c, 0x0d, 0xd1, 0xb1, 0xad, 0x37, 0x78, 0xf6, 0x9d, 0x58, 0x6d, 0x07, 0x8d, 0x75, 0x54, 0xc1, 0x16, 0xa7, 0x1e, 0x42, 0x2a, 0xdd, 0x51, 0xce, 0xa4, 0x77, 0xce, 0x15, 0x4c, 0xe8, 0x73, 0x94, 0x0e, }; static const unsigned char ecdh_brainpoolp384r1_930_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_930_sharedsecret[] = { 0x71, 0x3d, 0x5e, 0xe3, 0x9b, 0x34, 0xed, 0x19, 0x41, 0x78, 0x83, 0x7d, 0x7f, 0xea, 0xdd, 0xdd, 0x77, 0x43, 0x6a, 0x8c, 0xa8, 0x26, 0xb6, 0x62, 0xd8, 0xa2, 0x16, 0xf7, 0xd1, 0x3a, 0x4a, 0x3f, 0xfd, 0x2c, 0xc1, 0x5c, 0x31, 0x89, 0x44, 0xcd, 0x16, 0x0f, 0x93, 0xc1, 0x18, 0xd4, 0xca, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_930 = { .name = "ecdh_brainpoolp384r1_930", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_930_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_930_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_930_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1, tcId is 39 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 931 for ECDH, tcId is 40 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_931_peerpubkey[] = { 0x0a, 0xe1, 0x03, 0xa3, 0x5e, 0x58, 0xc7, 0x3f, 0x01, 0x2d, 0x45, 0x53, 0x6b, 0x1c, 0xe2, 0x14, 0x04, 0xbe, 0xcc, 0x3b, 0xff, 0xc5, 0x2f, 0x2c, 0xe4, 0x89, 0xaa, 0x11, 0xbb, 0x23, 0x46, 0xfe, 0xd3, 0x9a, 0x8d, 0x07, 0x7f, 0xdb, 0xb8, 0x71, 0xa8, 0xa0, 0x8c, 0xc5, 0x9f, 0x68, 0x4e, 0x47, 0x3e, 0x95, 0x32, 0x50, 0x99, 0x0f, 0x79, 0xc1, 0x62, 0x17, 0x7b, 0xbd, 0x6a, 0xe8, 0xc5, 0x09, 0xdf, 0x91, 0x53, 0xa7, 0x64, 0x62, 0x32, 0x27, 0x81, 0x4d, 0xa4, 0x49, 0x18, 0x1b, 0xc2, 0xa2, 0xfa, 0x4b, 0x5a, 0x76, 0x9e, 0x5d, 0xbb, 0xb0, 0x82, 0xec, 0x15, 0x23, 0x7f, 0xd8, 0x76, 0xee, }; static const unsigned char ecdh_brainpoolp384r1_931_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_931_sharedsecret[] = { 0x3c, 0xe1, 0x8b, 0xf6, 0x8d, 0x20, 0x3f, 0xd1, 0xc6, 0x68, 0x66, 0xb9, 0x33, 0xf2, 0x98, 0x39, 0x0f, 0xb0, 0x6d, 0xae, 0x11, 0x8b, 0x3f, 0x8d, 0x28, 0x4d, 0x56, 0xe1, 0xef, 0xa4, 0x8a, 0x1e, 0xc4, 0x35, 0x1d, 0xa1, 0x94, 0xdd, 0x34, 0x5f, 0xa5, 0xfc, 0xe5, 0x58, 0x30, 0x0d, 0x23, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_931 = { .name = "ecdh_brainpoolp384r1_931", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_931_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_931_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_931_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1, tcId is 40 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 932 for ECDH, tcId is 41 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_932_peerpubkey[] = { 0x0d, 0xe1, 0xfa, 0x4b, 0xf6, 0x69, 0xea, 0x9f, 0xa8, 0x73, 0x5e, 0xff, 0x9a, 0xac, 0xd2, 0xdd, 0x4e, 0x26, 0x28, 0x80, 0xc2, 0x64, 0x51, 0x91, 0x48, 0xdc, 0x2a, 0x70, 0x88, 0x6c, 0xae, 0x72, 0x00, 0xe1, 0x18, 0xbf, 0x0b, 0x7a, 0x81, 0x59, 0xba, 0x3a, 0xa9, 0xef, 0xe9, 0x41, 0x03, 0x01, 0x3e, 0x27, 0x78, 0x75, 0x41, 0x2d, 0x3d, 0x06, 0x42, 0x0f, 0xc0, 0x71, 0xb4, 0x83, 0x3a, 0x45, 0xae, 0x3c, 0x33, 0x33, 0xa0, 0x3c, 0x86, 0x88, 0xcb, 0x4c, 0xf4, 0xdc, 0x14, 0xcd, 0xfe, 0x29, 0x9d, 0xc6, 0xcc, 0x4f, 0xad, 0xf1, 0x34, 0xe5, 0x63, 0xe8, 0x4c, 0x22, 0xa4, 0x90, 0x49, 0x93, }; static const unsigned char ecdh_brainpoolp384r1_932_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_932_sharedsecret[] = { 0x39, 0xe3, 0xe4, 0xb8, 0xd1, 0xe3, 0x38, 0x17, 0xd5, 0x54, 0xed, 0x19, 0x5b, 0xe9, 0x64, 0xf8, 0x90, 0x9a, 0x16, 0x37, 0x2e, 0xe3, 0x9d, 0x7c, 0x54, 0x5e, 0x8c, 0xd2, 0xed, 0x65, 0xcb, 0x14, 0x54, 0x8a, 0x17, 0x9a, 0x53, 0xc1, 0x0d, 0x17, 0x3f, 0xf2, 0x93, 0x4d, 0x8f, 0x76, 0x60, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_932 = { .name = "ecdh_brainpoolp384r1_932", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_932_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_932_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_932_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 41 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 933 for ECDH, tcId is 42 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_933_peerpubkey[] = { 0x38, 0x09, 0x36, 0x08, 0x77, 0xde, 0xe7, 0x42, 0xa1, 0x69, 0x9c, 0xda, 0x91, 0x0d, 0xab, 0x1b, 0x82, 0x82, 0xc9, 0x5a, 0x75, 0x98, 0x9f, 0xc8, 0xd3, 0xcb, 0x47, 0xc9, 0x67, 0x76, 0x19, 0x20, 0xb3, 0x20, 0x18, 0x16, 0xe0, 0xfd, 0x5c, 0xa0, 0x1f, 0xba, 0xc3, 0xc7, 0x40, 0x8e, 0x58, 0x33, 0x3d, 0xc8, 0x8f, 0xda, 0xe7, 0x89, 0x9a, 0xff, 0xcd, 0x63, 0xa1, 0xa0, 0x15, 0x62, 0xfb, 0xe2, 0x34, 0x1e, 0x94, 0x80, 0xb5, 0xae, 0x92, 0xc6, 0x03, 0x10, 0xac, 0x49, 0xa4, 0xdc, 0xf3, 0x67, 0xf4, 0x83, 0xb2, 0x3a, 0x67, 0xca, 0xba, 0xac, 0xbe, 0xa3, 0xab, 0x0e, 0x87, 0x94, 0xde, 0xab, }; static const unsigned char ecdh_brainpoolp384r1_933_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_933_sharedsecret[] = { 0x22, 0xd3, 0x84, 0x0b, 0x4c, 0xad, 0x42, 0x62, 0x2f, 0x65, 0x12, 0x00, 0xe0, 0x88, 0x3c, 0x86, 0xcf, 0xe7, 0x99, 0xdc, 0x9f, 0xe0, 0xe7, 0x94, 0x37, 0xed, 0x47, 0xb0, 0x82, 0x91, 0x05, 0xc0, 0x64, 0x09, 0x90, 0x9c, 0xab, 0xcc, 0x1c, 0x4b, 0xba, 0xf4, 0x70, 0x80, 0x77, 0xcc, 0x30, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_933 = { .name = "ecdh_brainpoolp384r1_933", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_933_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_933_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_933_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 42 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 934 for ECDH, tcId is 43 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_934_peerpubkey[] = { 0x58, 0x58, 0x38, 0xfb, 0x9d, 0x9c, 0x68, 0xe9, 0x54, 0xff, 0xf3, 0x31, 0xce, 0x1c, 0x00, 0x13, 0xe1, 0x30, 0xd4, 0x67, 0x65, 0xe3, 0xec, 0x1d, 0x19, 0x0a, 0xca, 0xa4, 0x7f, 0xfb, 0x49, 0x98, 0x11, 0xe8, 0xda, 0x06, 0x30, 0xf0, 0xa9, 0xf8, 0xb4, 0x92, 0xff, 0xa0, 0xd1, 0x94, 0x15, 0x1d, 0x20, 0xfd, 0x86, 0xd8, 0xd6, 0x0d, 0x60, 0xb2, 0xaf, 0x2a, 0xd1, 0x14, 0xe3, 0x0c, 0xa6, 0xcf, 0x3f, 0x8d, 0xb4, 0x42, 0x29, 0xb3, 0x17, 0x09, 0xd9, 0xde, 0x21, 0x9c, 0xc2, 0x62, 0x83, 0xbf, 0x6d, 0x76, 0xb6, 0xea, 0x96, 0x5b, 0x8d, 0x42, 0x45, 0x00, 0x04, 0x11, 0x0a, 0xa8, 0xbf, 0x8c, }; static const unsigned char ecdh_brainpoolp384r1_934_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_934_sharedsecret[] = { 0x24, 0x5b, 0x4c, 0x40, 0xd4, 0xb7, 0x32, 0x72, 0xec, 0x66, 0xa3, 0xaf, 0x79, 0x68, 0x6f, 0xb1, 0x48, 0x0d, 0xb5, 0x5b, 0xb7, 0x46, 0xd4, 0x25, 0x60, 0xf3, 0xab, 0x2c, 0x11, 0xf1, 0xf8, 0x5a, 0x9a, 0x16, 0xb0, 0x50, 0x6b, 0xb5, 0x77, 0xaf, 0x69, 0x46, 0xec, 0x8b, 0x58, 0xeb, 0xc0, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_934 = { .name = "ecdh_brainpoolp384r1_934", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_934_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_934_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_934_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 43 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 935 for ECDH, tcId is 44 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_935_peerpubkey[] = { 0x26, 0x28, 0x12, 0xf0, 0x92, 0xfe, 0x67, 0xad, 0x00, 0xe1, 0x0e, 0xb9, 0xf8, 0x84, 0x91, 0x7f, 0x26, 0xd4, 0x6c, 0xe5, 0xc5, 0x29, 0x86, 0xec, 0xf8, 0xc0, 0x70, 0xb5, 0x42, 0x1e, 0x16, 0xaa, 0x69, 0x82, 0x5e, 0xaa, 0x99, 0x0f, 0x0a, 0xe7, 0x0a, 0x94, 0xcc, 0xff, 0xb1, 0x00, 0xa2, 0x97, 0x4d, 0x4a, 0xd6, 0xa0, 0x03, 0xa0, 0xa0, 0xc6, 0x69, 0xdf, 0x2a, 0x8d, 0x25, 0x78, 0x33, 0xa5, 0x1b, 0x54, 0x18, 0x23, 0xc7, 0xe8, 0xc0, 0x3c, 0x01, 0xf3, 0xc5, 0xc3, 0xbf, 0x11, 0xcb, 0x95, 0x33, 0xb7, 0xc1, 0xb2, 0x5f, 0x7d, 0x7f, 0xda, 0x54, 0x71, 0xd6, 0x2d, 0xfd, 0x89, 0x71, 0xd9, }; static const unsigned char ecdh_brainpoolp384r1_935_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_935_sharedsecret[] = { 0x67, 0x85, 0x59, 0xf0, 0x24, 0xdd, 0xba, 0xf6, 0x46, 0xfd, 0x4c, 0x83, 0x8c, 0x9e, 0x5c, 0x8e, 0x7b, 0xf9, 0x91, 0x0b, 0xe6, 0x52, 0x26, 0xfb, 0xc8, 0x2b, 0xa8, 0x1d, 0x0a, 0x1d, 0x34, 0xf9, 0xce, 0x78, 0x21, 0xcc, 0x49, 0x7f, 0xf0, 0x3a, 0xd0, 0x2c, 0xe4, 0xbf, 0x1c, 0x3a, 0x86, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_935 = { .name = "ecdh_brainpoolp384r1_935", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_935_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_935_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_935_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 44 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 936 for ECDH, tcId is 45 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_936_peerpubkey[] = { 0x25, 0x86, 0x19, 0x65, 0xc5, 0x57, 0x07, 0xc1, 0x48, 0xfa, 0x18, 0x80, 0xa4, 0x24, 0x63, 0xfd, 0x5f, 0xe3, 0x37, 0xf7, 0xc9, 0x04, 0xb2, 0x85, 0x54, 0xce, 0xa7, 0xdc, 0xb2, 0xd4, 0x23, 0x5a, 0x86, 0x86, 0xac, 0x36, 0x2d, 0xcd, 0x0d, 0x73, 0x1a, 0xd7, 0x4f, 0x50, 0x6b, 0xe8, 0x8b, 0x45, 0x24, 0xb4, 0x9d, 0xfc, 0x1f, 0x57, 0x1e, 0x5a, 0x61, 0xe9, 0x5e, 0x03, 0x04, 0x5f, 0x3a, 0xce, 0x23, 0x37, 0x64, 0xa9, 0xbc, 0x99, 0xf7, 0xfc, 0xa6, 0x3b, 0x1a, 0x70, 0x10, 0xf9, 0xd2, 0x85, 0x53, 0x28, 0x29, 0x0c, 0xf6, 0x74, 0xf2, 0x43, 0x42, 0xff, 0xf3, 0xb6, 0x5a, 0xe1, 0x37, 0x27, }; static const unsigned char ecdh_brainpoolp384r1_936_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_936_sharedsecret[] = { 0x5f, 0xf2, 0x22, 0x08, 0xd0, 0xd5, 0xc9, 0x5a, 0x13, 0x53, 0x69, 0x06, 0x47, 0xe6, 0xb4, 0x3b, 0x17, 0x47, 0x9e, 0xe4, 0xa1, 0x91, 0xd4, 0x56, 0xa1, 0x77, 0x28, 0x1a, 0x1e, 0x16, 0xc0, 0x4d, 0xf4, 0x8c, 0x48, 0xdd, 0xe7, 0x33, 0xb6, 0x18, 0x8e, 0x56, 0xb6, 0x9c, 0x2c, 0xac, 0x14, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_936 = { .name = "ecdh_brainpoolp384r1_936", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_936_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_936_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_936_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 45 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 937 for ECDH, tcId is 46 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_937_peerpubkey[] = { 0x69, 0x3d, 0x59, 0xdc, 0x3c, 0x13, 0xb5, 0x39, 0x68, 0x57, 0x10, 0xba, 0x0e, 0x78, 0xaa, 0xba, 0x96, 0xde, 0x32, 0xdb, 0xbc, 0xed, 0xa9, 0x07, 0x0f, 0x6f, 0xd3, 0xce, 0xfc, 0x31, 0x3e, 0x29, 0xfd, 0x8d, 0x67, 0x2f, 0x5b, 0x2a, 0x73, 0xad, 0xcd, 0xae, 0xe0, 0xdf, 0x33, 0x69, 0xc8, 0x3c, 0x79, 0x33, 0xb4, 0x11, 0x09, 0x15, 0x36, 0x07, 0x6b, 0x80, 0x78, 0x8f, 0x41, 0x9a, 0xd4, 0xb1, 0xb4, 0x0b, 0x7e, 0x2b, 0x36, 0x20, 0xaa, 0x10, 0x59, 0x94, 0xe2, 0x81, 0x04, 0x49, 0xd0, 0x22, 0x73, 0x2f, 0x3e, 0xfb, 0x9d, 0xb8, 0xa2, 0x64, 0x1c, 0xe1, 0x2a, 0x46, 0xe7, 0xe4, 0x3b, 0x2d, }; static const unsigned char ecdh_brainpoolp384r1_937_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_937_sharedsecret[] = { 0x25, 0x3c, 0x02, 0x8d, 0xb4, 0xe9, 0xc7, 0xeb, 0x45, 0x2f, 0x86, 0x6d, 0xe4, 0x10, 0x1f, 0x36, 0xba, 0xf9, 0xed, 0x50, 0x61, 0x6d, 0x6f, 0x0c, 0xce, 0x80, 0x32, 0xa9, 0x3d, 0x4b, 0x09, 0xc8, 0x53, 0x01, 0x21, 0xb4, 0x8b, 0xc6, 0xad, 0x68, 0x10, 0xad, 0x3f, 0x16, 0x11, 0x98, 0x27, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_937 = { .name = "ecdh_brainpoolp384r1_937", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_937_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_937_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_937_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 46 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 938 for ECDH, tcId is 47 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_938_peerpubkey[] = { 0x77, 0xd9, 0x93, 0x98, 0x0c, 0x54, 0x63, 0x80, 0xf8, 0xcc, 0xee, 0x9b, 0x99, 0xdc, 0x17, 0xa3, 0xed, 0x2d, 0x05, 0x6f, 0x4c, 0xdc, 0x39, 0x11, 0x59, 0x86, 0xaa, 0x0f, 0x8e, 0xfd, 0xdf, 0x64, 0x2b, 0x1b, 0x0a, 0x77, 0x68, 0xf8, 0x43, 0x1b, 0x06, 0x86, 0x5e, 0x02, 0x86, 0x85, 0x9b, 0x83, 0x01, 0xea, 0xb7, 0x7c, 0xf1, 0x6f, 0x71, 0x11, 0x68, 0x15, 0x02, 0x68, 0xe2, 0x15, 0x1f, 0xaf, 0xb7, 0x1d, 0x1f, 0x8d, 0xec, 0x1d, 0xd7, 0x1c, 0x65, 0x58, 0xcc, 0x53, 0xd4, 0x8c, 0x7e, 0xae, 0xd7, 0x67, 0x93, 0x69, 0xa8, 0x95, 0x40, 0xcb, 0xed, 0x73, 0x8d, 0xde, 0xb8, 0x87, 0x92, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_938_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_938_sharedsecret[] = { 0x71, 0xb0, 0x0e, 0x50, 0x2a, 0xd1, 0x94, 0x2b, 0x81, 0x64, 0x84, 0x14, 0x07, 0x21, 0xbb, 0xa4, 0xf9, 0xf7, 0x27, 0xce, 0xa8, 0x6f, 0xb1, 0x01, 0xa2, 0xa1, 0xaa, 0x65, 0xdb, 0x72, 0xb5, 0xa6, 0x65, 0xb9, 0xb1, 0xb8, 0xc9, 0x75, 0x85, 0xf5, 0x87, 0x06, 0xdf, 0xa0, 0x1e, 0xb9, 0xb8, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_938 = { .name = "ecdh_brainpoolp384r1_938", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_938_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_938_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_938_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 47 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 939 for ECDH, tcId is 48 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_939_peerpubkey[] = { 0x57, 0xe9, 0x31, 0xf7, 0xff, 0xf2, 0x65, 0x37, 0x9e, 0x3c, 0x8e, 0x2d, 0xb8, 0x42, 0x20, 0x11, 0x84, 0xfc, 0x35, 0x48, 0x1c, 0x9c, 0xb0, 0x29, 0x3c, 0x67, 0x30, 0x16, 0x02, 0x46, 0x1a, 0x3d, 0x03, 0xf0, 0xd3, 0xdd, 0xfa, 0xd0, 0x6a, 0xaf, 0xf0, 0xee, 0x0c, 0xc4, 0xba, 0x34, 0x33, 0x8c, 0x82, 0x9f, 0x56, 0x7b, 0x55, 0x9a, 0x8b, 0x02, 0x4c, 0xac, 0xe2, 0xdf, 0x3b, 0x4c, 0xe3, 0xa4, 0xe3, 0x89, 0xe2, 0xd6, 0x4a, 0xdb, 0x6f, 0x09, 0x29, 0xaf, 0xbb, 0xaa, 0x0f, 0x37, 0x83, 0x4e, 0xd3, 0xb6, 0xe1, 0x04, 0x83, 0xd7, 0x5a, 0x71, 0xc2, 0xf9, 0x2d, 0x9b, 0x79, 0x6a, 0x0e, 0x70, }; static const unsigned char ecdh_brainpoolp384r1_939_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_939_sharedsecret[] = { 0x1a, 0x55, 0x4b, 0x13, 0xbe, 0x9a, 0x48, 0x63, 0xe9, 0x2a, 0x3c, 0x5d, 0xfd, 0xaf, 0xc0, 0x28, 0x65, 0x5d, 0x09, 0x41, 0x5b, 0xdd, 0x48, 0x0c, 0x74, 0xb9, 0x7e, 0xb0, 0x3d, 0x7b, 0x6c, 0x55, 0x7c, 0xc1, 0x1b, 0x7f, 0x52, 0x20, 0x98, 0xf1, 0xd0, 0x1c, 0x1d, 0x95, 0x8a, 0x52, 0xe0, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_939 = { .name = "ecdh_brainpoolp384r1_939", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_939_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_939_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_939_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 48 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 940 for ECDH, tcId is 49 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_940_peerpubkey[] = { 0x2e, 0x0c, 0xd3, 0x39, 0xb1, 0x3f, 0xcd, 0x63, 0xdf, 0xa6, 0x52, 0x38, 0xc1, 0xd5, 0xcd, 0xfa, 0x98, 0x1e, 0xde, 0x08, 0x0f, 0xd0, 0x84, 0x45, 0x07, 0x7c, 0xf0, 0x65, 0x9a, 0x64, 0x7d, 0x6f, 0x36, 0xd2, 0xbc, 0x30, 0xf8, 0x3d, 0xc6, 0x5d, 0xe5, 0x29, 0xab, 0xeb, 0xf0, 0xfa, 0x4b, 0xa3, 0x3c, 0xb8, 0x8a, 0xe4, 0x71, 0xc9, 0x0e, 0x41, 0xa3, 0xed, 0xed, 0x6f, 0xcb, 0xf6, 0xee, 0xc0, 0xfb, 0xf3, 0xcf, 0x31, 0x9f, 0x4f, 0x0f, 0x89, 0xd4, 0xfb, 0xe7, 0x71, 0xaa, 0x67, 0x5e, 0xe5, 0xa8, 0x18, 0xbc, 0xda, 0x39, 0xdc, 0x87, 0x46, 0xca, 0x6c, 0xfc, 0xe0, 0x4a, 0xbb, 0x8d, 0x0f, }; static const unsigned char ecdh_brainpoolp384r1_940_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_940_sharedsecret[] = { 0x13, 0xed, 0x93, 0x84, 0x01, 0x57, 0x4b, 0xe2, 0x19, 0x8b, 0xf5, 0x04, 0x2a, 0x44, 0x6a, 0xcb, 0x4f, 0x65, 0x63, 0x96, 0x83, 0x0b, 0x5e, 0x6e, 0xa1, 0xc7, 0x27, 0x09, 0xa2, 0x4e, 0xab, 0x18, 0x1b, 0xc3, 0x64, 0x8d, 0xc7, 0x65, 0xe7, 0x0e, 0x20, 0x70, 0x11, 0xa3, 0x66, 0x80, 0x37, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_940 = { .name = "ecdh_brainpoolp384r1_940", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_940_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_940_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_940_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 49 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 941 for ECDH, tcId is 50 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_941_peerpubkey[] = { 0x2b, 0x30, 0xc0, 0x3a, 0xef, 0x0c, 0x4c, 0x2f, 0xc3, 0x6f, 0x3e, 0xee, 0x7d, 0x08, 0xcc, 0xf3, 0x02, 0xf4, 0xc1, 0x8c, 0xee, 0x68, 0xc3, 0x76, 0x6f, 0x77, 0x78, 0x98, 0x81, 0x3d, 0x7e, 0xef, 0x20, 0xac, 0x9a, 0x34, 0x1f, 0xf7, 0x87, 0x5a, 0xc4, 0x97, 0x1d, 0x3d, 0xf2, 0x43, 0x1d, 0xda, 0x36, 0xfe, 0x86, 0x97, 0xba, 0xa9, 0xee, 0x49, 0xba, 0x40, 0xc7, 0xb3, 0x8e, 0x2a, 0x7f, 0x29, 0x22, 0xc8, 0xc1, 0x63, 0xba, 0x83, 0x22, 0xc2, 0xaa, 0x3a, 0xfe, 0xaf, 0x03, 0x49, 0x89, 0x46, 0xc9, 0x76, 0x9b, 0x00, 0x29, 0x98, 0x29, 0x90, 0x00, 0x61, 0x28, 0xc5, 0xda, 0xaa, 0xca, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_941_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_941_sharedsecret[] = { 0x54, 0xf3, 0x6a, 0x1c, 0xc9, 0xdb, 0xdc, 0x63, 0x1a, 0x50, 0xec, 0x35, 0xa0, 0xac, 0xfa, 0x84, 0x4b, 0xb1, 0x9c, 0x91, 0x0b, 0x07, 0xc0, 0xa1, 0x19, 0x65, 0x09, 0x6e, 0x86, 0x91, 0x51, 0x94, 0x3a, 0x41, 0xc6, 0x78, 0xba, 0x2e, 0x39, 0x7a, 0xd3, 0x52, 0x5c, 0x26, 0x2e, 0x6d, 0x9b, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_941 = { .name = "ecdh_brainpoolp384r1_941", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_941_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_941_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_941_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 50 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 942 for ECDH, tcId is 51 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_942_peerpubkey[] = { 0x25, 0xc7, 0xa0, 0x75, 0x00, 0x58, 0xc2, 0x26, 0xd9, 0x38, 0x8f, 0xa6, 0xc3, 0x68, 0xc9, 0xa7, 0x2e, 0x2c, 0xd3, 0x35, 0x46, 0x18, 0x49, 0x3c, 0xe5, 0x7b, 0x80, 0xbb, 0x78, 0x9b, 0x62, 0x04, 0xd6, 0x74, 0x76, 0x49, 0x24, 0x74, 0x81, 0xc3, 0x33, 0x97, 0x52, 0x9c, 0xf5, 0x4c, 0x7d, 0xbd, 0x53, 0xac, 0x0b, 0xfd, 0x18, 0x6b, 0x50, 0x1e, 0xd9, 0xdd, 0xcc, 0x56, 0x3a, 0x4f, 0x73, 0xb7, 0x9d, 0x31, 0x1c, 0x53, 0xf5, 0xf1, 0x50, 0x09, 0x59, 0x2f, 0xac, 0xaa, 0x93, 0x46, 0xcf, 0x88, 0x74, 0x8b, 0x77, 0x80, 0xb3, 0xca, 0x9d, 0x0d, 0xcd, 0x4c, 0xd7, 0x14, 0x14, 0x6c, 0xf3, 0xb5, }; static const unsigned char ecdh_brainpoolp384r1_942_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_942_sharedsecret[] = { 0x24, 0xf4, 0x4b, 0xa0, 0xf0, 0x6d, 0x24, 0xbd, 0xfa, 0xc7, 0xeb, 0xfb, 0x97, 0x12, 0x3d, 0xd2, 0x8b, 0x6b, 0x22, 0x02, 0xca, 0x25, 0x0e, 0x95, 0x5d, 0x51, 0x1f, 0x24, 0xef, 0x06, 0xe6, 0x05, 0x06, 0x51, 0xe7, 0xe7, 0x06, 0x70, 0xad, 0xe0, 0x5e, 0x19, 0x46, 0x63, 0x91, 0xa7, 0xc7, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_942 = { .name = "ecdh_brainpoolp384r1_942", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_942_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_942_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_942_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 51 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 943 for ECDH, tcId is 52 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_943_peerpubkey[] = { 0x88, 0x0a, 0x7f, 0x98, 0x08, 0x14, 0x31, 0x7d, 0x34, 0xed, 0xee, 0xf2, 0xbe, 0x20, 0x3a, 0x33, 0x76, 0x8e, 0xd3, 0xc2, 0x60, 0xed, 0xe1, 0x2c, 0x9c, 0xaa, 0x85, 0x60, 0x89, 0x74, 0x2d, 0x50, 0x06, 0x23, 0xf1, 0xb3, 0x86, 0x00, 0x9a, 0xfa, 0xbd, 0xa1, 0x50, 0xe8, 0x00, 0x0f, 0x06, 0xe0, 0x5d, 0x21, 0xb8, 0x48, 0x7f, 0xd5, 0xaa, 0x76, 0x04, 0x1d, 0xda, 0x59, 0xc0, 0xc0, 0xe7, 0x7d, 0x6d, 0x4f, 0xce, 0xd1, 0x9e, 0xbb, 0x13, 0xee, 0xb6, 0x43, 0x78, 0xb5, 0x9a, 0xa2, 0x47, 0x8b, 0xa1, 0x30, 0x74, 0x5d, 0xce, 0xe0, 0x03, 0xc7, 0x82, 0x9a, 0x5d, 0x01, 0xe8, 0xf4, 0xbb, 0xc6, }; static const unsigned char ecdh_brainpoolp384r1_943_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_943_sharedsecret[] = { 0x4f, 0x46, 0xf4, 0x7f, 0x21, 0x8c, 0xbb, 0x17, 0x6c, 0x17, 0x05, 0x19, 0x25, 0x9a, 0xe5, 0x1a, 0xc6, 0x7a, 0x6c, 0xc6, 0x9b, 0xef, 0x02, 0x40, 0xc5, 0xe9, 0x84, 0x57, 0x17, 0x34, 0x6e, 0x2c, 0x0e, 0x49, 0xa4, 0xce, 0x5a, 0xc9, 0xbd, 0x4c, 0xa0, 0xa6, 0x83, 0xfc, 0xd9, 0x53, 0x90, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_943 = { .name = "ecdh_brainpoolp384r1_943", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_943_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_943_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_943_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 52 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 944 for ECDH, tcId is 53 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_944_peerpubkey[] = { 0x40, 0x6f, 0x7a, 0x3b, 0xac, 0xac, 0xdf, 0xf3, 0x5f, 0xac, 0x87, 0xee, 0x47, 0x8c, 0xe5, 0x00, 0x6b, 0x39, 0xec, 0x58, 0xb5, 0x64, 0xf3, 0x14, 0x05, 0xbb, 0x69, 0x6e, 0xdd, 0xe7, 0xc5, 0x84, 0xeb, 0xeb, 0xe5, 0xde, 0x02, 0x9b, 0xb7, 0xbd, 0xc7, 0xa3, 0x5d, 0x10, 0x6f, 0x4f, 0x6e, 0xb8, 0x66, 0xb5, 0xfd, 0xef, 0x09, 0xee, 0xd0, 0x14, 0x6f, 0xc2, 0x4a, 0xe1, 0xa7, 0xc8, 0x91, 0x2d, 0x8e, 0x4d, 0xdf, 0x84, 0xc9, 0xaf, 0x13, 0x17, 0xf8, 0x13, 0xb0, 0x9e, 0xc1, 0x9c, 0x84, 0x34, 0x3f, 0x13, 0xa5, 0xd7, 0x94, 0x81, 0xf3, 0x78, 0x8b, 0xee, 0xce, 0x2d, 0x55, 0xaf, 0xfc, 0x1d, }; static const unsigned char ecdh_brainpoolp384r1_944_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_944_sharedsecret[] = { 0x29, 0x24, 0x60, 0xe9, 0x5a, 0x1f, 0xaa, 0x2f, 0x19, 0x37, 0xfc, 0x79, 0xc3, 0x2a, 0xed, 0x32, 0x87, 0x3d, 0xfe, 0xaf, 0x16, 0xc8, 0xc4, 0x68, 0x77, 0xd9, 0x4e, 0xde, 0x01, 0x1e, 0xee, 0x9a, 0x45, 0x0c, 0x99, 0xdc, 0x47, 0x7c, 0x1f, 0x08, 0x11, 0x7b, 0xaf, 0xb7, 0x4a, 0xc2, 0xe7, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_944 = { .name = "ecdh_brainpoolp384r1_944", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_944_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_944_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_944_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 53 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 945 for ECDH, tcId is 54 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_945_peerpubkey[] = { 0x72, 0x93, 0x14, 0xf8, 0x40, 0x9c, 0xe1, 0xcc, 0x4f, 0xe2, 0xfe, 0x2a, 0xa2, 0xf6, 0xc3, 0x58, 0x68, 0x6e, 0x01, 0x23, 0x3a, 0x2e, 0xf8, 0xfd, 0xf8, 0xa2, 0x06, 0x2a, 0x38, 0xb0, 0x2c, 0xaa, 0x49, 0x3c, 0x97, 0x9d, 0x68, 0x07, 0x38, 0x0c, 0x2f, 0x79, 0xb5, 0x3d, 0xf1, 0xd6, 0x10, 0x7e, 0x12, 0x85, 0xcb, 0xb1, 0x1a, 0x81, 0xc5, 0x78, 0xf8, 0x81, 0x8d, 0x3f, 0xa5, 0x34, 0x71, 0x9e, 0xec, 0x7b, 0x90, 0xfd, 0x01, 0xbf, 0x36, 0x7f, 0x38, 0x3b, 0x02, 0x30, 0x33, 0x23, 0xb4, 0x5a, 0xbe, 0x11, 0x48, 0x5a, 0x08, 0x61, 0x98, 0xc3, 0xb0, 0xd1, 0xd9, 0x29, 0xe7, 0x39, 0x28, 0x1e, }; static const unsigned char ecdh_brainpoolp384r1_945_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_945_sharedsecret[] = { 0x5f, 0x6d, 0x27, 0x22, 0x23, 0xa1, 0xa2, 0xce, 0x53, 0x3c, 0x44, 0x4c, 0xc3, 0x65, 0x57, 0x49, 0xc4, 0x31, 0x06, 0xe0, 0x38, 0xb7, 0x90, 0x44, 0x64, 0x3b, 0x41, 0x46, 0x6b, 0xec, 0x45, 0x70, 0x35, 0x15, 0xab, 0xf9, 0xb5, 0x28, 0x68, 0x0d, 0x7e, 0xf3, 0xa0, 0x74, 0x42, 0x94, 0x48, 0x86, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_945 = { .name = "ecdh_brainpoolp384r1_945", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_945_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_945_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_945_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 54 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 946 for ECDH, tcId is 55 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_946_peerpubkey[] = { 0x26, 0xe6, 0x96, 0xc1, 0xc3, 0xd1, 0xd5, 0x04, 0x9f, 0xa1, 0x67, 0x72, 0x0c, 0x32, 0x9b, 0x22, 0xf5, 0xb6, 0xe6, 0xbe, 0x12, 0x21, 0x33, 0x24, 0xdd, 0xb3, 0x3b, 0x37, 0x80, 0x7d, 0xca, 0x1c, 0x59, 0x2a, 0xe5, 0x4d, 0xa6, 0xa2, 0xaf, 0x7d, 0x02, 0x85, 0x77, 0x05, 0x31, 0x81, 0xc3, 0x8b, 0x19, 0x99, 0xb0, 0x8f, 0x06, 0xbd, 0x4b, 0x35, 0x34, 0xd8, 0xa6, 0x3c, 0x9c, 0x49, 0x06, 0x8c, 0x1d, 0x82, 0x05, 0x44, 0xcc, 0x3e, 0xc9, 0x06, 0xa0, 0x60, 0x5f, 0x34, 0xff, 0x49, 0xe9, 0x54, 0xa8, 0x75, 0xb4, 0xea, 0x34, 0x3c, 0x30, 0xaf, 0xf2, 0x37, 0x3e, 0x0e, 0xd3, 0xe9, 0xa3, 0x36, }; static const unsigned char ecdh_brainpoolp384r1_946_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_946_sharedsecret[] = { 0x70, 0xbc, 0x30, 0x24, 0x7b, 0xa2, 0xfe, 0x40, 0x12, 0x2a, 0xe6, 0xb9, 0x8f, 0x6d, 0xc0, 0x51, 0x42, 0xc8, 0x91, 0x24, 0xf0, 0x81, 0xa5, 0x6e, 0x53, 0x43, 0xbd, 0xcb, 0xc8, 0xa0, 0xd3, 0x51, 0x57, 0xd1, 0x9e, 0xcc, 0xc1, 0x00, 0xa8, 0xb2, 0x0d, 0xe6, 0x87, 0xea, 0x37, 0xed, 0x85, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_946 = { .name = "ecdh_brainpoolp384r1_946", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_946_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_946_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_946_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 55 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 947 for ECDH, tcId is 56 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_947_peerpubkey[] = { 0x08, 0x4b, 0x6e, 0x03, 0xd2, 0x15, 0xba, 0xa0, 0x61, 0x04, 0x9d, 0x64, 0x7f, 0xd6, 0x12, 0xea, 0x0f, 0x2f, 0x6d, 0x11, 0x89, 0x74, 0xb7, 0x1d, 0x2b, 0x9c, 0xf2, 0xb4, 0xb2, 0xfa, 0xe8, 0xb5, 0xc8, 0x24, 0x22, 0x04, 0x14, 0x67, 0x58, 0x68, 0x64, 0x95, 0x57, 0x4c, 0xe1, 0xa3, 0x64, 0x60, 0x0a, 0x88, 0xb0, 0xef, 0x01, 0x4d, 0x2a, 0x6a, 0xe9, 0x4d, 0xe7, 0xfe, 0x68, 0x66, 0x38, 0xd6, 0x79, 0x8a, 0x60, 0x41, 0xf2, 0x20, 0xb3, 0x31, 0xff, 0xdf, 0xea, 0x84, 0xa9, 0x1e, 0xd7, 0x3d, 0x66, 0xdf, 0xc7, 0xc9, 0x1b, 0x07, 0x95, 0x85, 0x43, 0x5e, 0x12, 0x83, 0xc3, 0x0a, 0x29, 0x15, }; static const unsigned char ecdh_brainpoolp384r1_947_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_947_sharedsecret[] = { 0x57, 0x63, 0x3d, 0x31, 0xd9, 0x20, 0x30, 0x29, 0x77, 0xb5, 0x33, 0xa7, 0xef, 0x9f, 0x82, 0x66, 0xd7, 0x29, 0x40, 0xaa, 0xf7, 0x0a, 0x44, 0xf5, 0x62, 0x4f, 0xac, 0xd0, 0xbe, 0xfb, 0x88, 0xc1, 0xcc, 0x74, 0x34, 0x1c, 0x8a, 0xf6, 0xbb, 0x11, 0x25, 0xb3, 0xaf, 0x14, 0xf5, 0x56, 0x69, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_947 = { .name = "ecdh_brainpoolp384r1_947", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_947_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_947_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_947_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 56 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 948 for ECDH, tcId is 57 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_948_peerpubkey[] = { 0x17, 0x19, 0xfc, 0xdb, 0x9e, 0xf4, 0xe2, 0x76, 0xa2, 0xbb, 0xc2, 0xa9, 0xa4, 0xc5, 0xd8, 0x2c, 0xc3, 0xc9, 0x49, 0xa1, 0xe6, 0x1f, 0xeb, 0x7f, 0x7d, 0x4b, 0xb2, 0xfd, 0xad, 0x00, 0x0a, 0x94, 0x15, 0x64, 0x4e, 0x48, 0xd6, 0xe0, 0xb2, 0xf6, 0x8e, 0x10, 0x8f, 0xc1, 0xb9, 0xd8, 0x15, 0x45, 0x76, 0xc2, 0xb5, 0x50, 0xb5, 0xea, 0x31, 0xb2, 0x35, 0x4f, 0xaf, 0x8c, 0x18, 0xf7, 0x38, 0x97, 0xeb, 0xfd, 0x77, 0x3d, 0x81, 0xf9, 0xed, 0x15, 0xa4, 0x00, 0x08, 0xbe, 0x16, 0x4a, 0xdc, 0x78, 0x11, 0xb4, 0x35, 0x2b, 0x5c, 0xce, 0x47, 0x8a, 0x50, 0x5e, 0x38, 0x31, 0x9f, 0xa4, 0xec, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_948_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_948_sharedsecret[] = { 0x3b, 0x63, 0x15, 0x7b, 0x68, 0x89, 0xc8, 0x75, 0x57, 0x2c, 0xe5, 0xf2, 0x45, 0x7b, 0xfc, 0x33, 0xca, 0xe9, 0xa4, 0xca, 0x77, 0xe7, 0x63, 0xb2, 0x45, 0xc4, 0x79, 0x8a, 0x67, 0xb7, 0xf7, 0x9b, 0x26, 0xb5, 0xad, 0xf9, 0x12, 0x96, 0x65, 0x45, 0xb1, 0x17, 0x5e, 0x0c, 0xfb, 0x6f, 0x48, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_948 = { .name = "ecdh_brainpoolp384r1_948", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_948_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_948_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_948_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 57 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 949 for ECDH, tcId is 58 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_949_peerpubkey[] = { 0x6f, 0x30, 0x28, 0xd8, 0x79, 0x0a, 0x69, 0x6c, 0xf8, 0xaf, 0x0c, 0x4c, 0xb6, 0x35, 0x81, 0x04, 0xbb, 0x28, 0xf6, 0xa5, 0x83, 0x3d, 0x6a, 0x27, 0x7d, 0x1e, 0x2d, 0x5b, 0xd6, 0x6d, 0x29, 0xee, 0x4d, 0x7d, 0x3b, 0x06, 0x17, 0x07, 0x4e, 0xe0, 0x86, 0xc2, 0x3a, 0x74, 0xd5, 0x65, 0x46, 0x82, 0x8a, 0xbd, 0xb5, 0x55, 0xcd, 0x20, 0xbf, 0xcd, 0xa2, 0x4d, 0xff, 0xbb, 0x61, 0x19, 0xce, 0x60, 0x08, 0xd7, 0xd1, 0x19, 0xd5, 0x20, 0x31, 0x30, 0x24, 0x63, 0x4d, 0x52, 0x93, 0xfc, 0x0b, 0x69, 0x1b, 0xc5, 0x4b, 0x45, 0x85, 0x2e, 0xd3, 0x86, 0x43, 0x07, 0x16, 0x50, 0x0e, 0xac, 0x89, 0xe9, }; static const unsigned char ecdh_brainpoolp384r1_949_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_949_sharedsecret[] = { 0x37, 0x1f, 0x51, 0xf2, 0xe5, 0x88, 0xdb, 0xc1, 0x0f, 0xaa, 0x24, 0x63, 0xea, 0xf3, 0xb2, 0x69, 0x3c, 0x3c, 0x5d, 0xce, 0xf8, 0x20, 0xdb, 0x57, 0x23, 0x16, 0x8f, 0xa4, 0x02, 0xc9, 0xc4, 0xed, 0x68, 0x76, 0x08, 0x52, 0x13, 0xae, 0xa9, 0x4e, 0x86, 0x18, 0xa2, 0x09, 0x2e, 0xec, 0x36, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_949 = { .name = "ecdh_brainpoolp384r1_949", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_949_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_949_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_949_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 58 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 950 for ECDH, tcId is 59 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_950_peerpubkey[] = { 0x5e, 0x18, 0xae, 0xee, 0xba, 0x96, 0x4e, 0x19, 0x03, 0x09, 0x5b, 0x9b, 0x54, 0xc3, 0xb6, 0x01, 0x3e, 0xca, 0xc2, 0xe7, 0x96, 0x18, 0xe8, 0x50, 0x94, 0xad, 0x18, 0x77, 0x41, 0x54, 0x24, 0xe1, 0x97, 0x5c, 0x15, 0x45, 0x57, 0x40, 0x13, 0x88, 0x18, 0x81, 0x83, 0x66, 0x59, 0x12, 0x0b, 0x2d, 0x36, 0x31, 0xa9, 0xca, 0x28, 0x8d, 0x16, 0xd0, 0xc5, 0x9d, 0xf9, 0xfb, 0x4f, 0x0b, 0xf4, 0x2d, 0x66, 0x18, 0x70, 0x6f, 0x0f, 0x81, 0x08, 0x0e, 0xbb, 0x91, 0x11, 0x51, 0xfc, 0x86, 0xbb, 0x1a, 0x50, 0xa7, 0x51, 0xd5, 0xf0, 0x34, 0xcd, 0xe6, 0xf6, 0x2f, 0x18, 0x3c, 0x23, 0xd7, 0xb0, 0x1d, }; static const unsigned char ecdh_brainpoolp384r1_950_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_950_sharedsecret[] = { 0x52, 0x44, 0xa4, 0x1b, 0xe0, 0xb1, 0x8d, 0x62, 0x62, 0xe9, 0xa9, 0x58, 0xc2, 0x65, 0x38, 0x44, 0x6d, 0xe7, 0x54, 0xdb, 0xcf, 0xea, 0xc4, 0xda, 0x7e, 0xc1, 0x72, 0xca, 0x59, 0x33, 0x77, 0xc7, 0x2e, 0x1c, 0x1e, 0x7f, 0x8c, 0x4b, 0xfa, 0x72, 0x7a, 0x2d, 0x11, 0x53, 0x92, 0xc2, 0x34, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_950 = { .name = "ecdh_brainpoolp384r1_950", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_950_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_950_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_950_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 59 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 951 for ECDH, tcId is 60 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_951_peerpubkey[] = { 0x0c, 0x67, 0x62, 0x37, 0xf1, 0x7d, 0xd2, 0x91, 0xdc, 0x07, 0x2b, 0xd1, 0x02, 0xc3, 0x93, 0x84, 0x2b, 0x5a, 0x1a, 0x87, 0x07, 0x14, 0x51, 0x7c, 0x03, 0x51, 0xc4, 0x1d, 0xed, 0xff, 0x5a, 0xea, 0xf9, 0xe6, 0x83, 0x12, 0x21, 0xc7, 0xaa, 0x2e, 0x06, 0x4e, 0xc6, 0x76, 0x04, 0x7b, 0x3e, 0x14, 0x0c, 0x84, 0x8e, 0x5e, 0x22, 0x18, 0x9c, 0x3f, 0x49, 0x74, 0xc4, 0xe6, 0xb0, 0x94, 0xa9, 0x3e, 0x0d, 0x4d, 0x5e, 0xf5, 0xc5, 0xb0, 0x1f, 0xba, 0xe2, 0x87, 0x0f, 0x51, 0x36, 0x3f, 0x89, 0xe0, 0x2d, 0x98, 0x16, 0x52, 0xab, 0xcf, 0x13, 0x07, 0x87, 0x9f, 0x46, 0xe6, 0x70, 0x7f, 0xb6, 0xb8, }; static const unsigned char ecdh_brainpoolp384r1_951_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_951_sharedsecret[] = { 0x56, 0xc6, 0x9c, 0x37, 0xfc, 0x29, 0x0c, 0x5d, 0xf1, 0x0a, 0xfa, 0x2d, 0xb1, 0x9c, 0x0e, 0x37, 0xa6, 0xdb, 0x5a, 0x03, 0x20, 0x50, 0xf4, 0xfb, 0x4c, 0xa0, 0x5d, 0xc0, 0x71, 0xac, 0x46, 0xe4, 0xb6, 0xef, 0x47, 0xf9, 0x07, 0xc3, 0xd0, 0xfc, 0x98, 0xa2, 0x6b, 0x04, 0x1f, 0xcd, 0xd4, 0x14, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_951 = { .name = "ecdh_brainpoolp384r1_951", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_951_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_951_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_951_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 60 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 952 for ECDH, tcId is 61 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_952_peerpubkey[] = { 0x31, 0x09, 0x8a, 0x43, 0x98, 0xb2, 0xc8, 0x9c, 0x61, 0xb8, 0x43, 0x5b, 0xb3, 0x2b, 0xa3, 0xad, 0xf5, 0xf5, 0x64, 0x29, 0xcd, 0x9c, 0xb8, 0xdc, 0xcd, 0xf5, 0x16, 0x4c, 0x8b, 0x7d, 0x80, 0x82, 0x79, 0x06, 0x55, 0xbc, 0xef, 0x6a, 0xa1, 0xa3, 0xc3, 0x11, 0x3f, 0x68, 0xb9, 0x0c, 0x38, 0x60, 0x29, 0x04, 0x53, 0xaa, 0xa8, 0x92, 0xd6, 0x48, 0xc5, 0x1f, 0x4a, 0x6c, 0x12, 0x3d, 0x20, 0x02, 0x7c, 0x8e, 0xfc, 0x57, 0x4a, 0xb9, 0x38, 0xef, 0xc8, 0xb5, 0x48, 0xda, 0xb9, 0xa3, 0xfb, 0x87, 0x7f, 0x83, 0x27, 0xc2, 0x8b, 0x27, 0x2c, 0x5b, 0xe8, 0x2f, 0x8a, 0xb8, 0xda, 0x0e, 0x22, 0x11, }; static const unsigned char ecdh_brainpoolp384r1_952_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_952_sharedsecret[] = { 0x7d, 0x0b, 0x53, 0x39, 0x15, 0xea, 0x63, 0x95, 0x24, 0xbe, 0x18, 0x79, 0xc8, 0xda, 0xe0, 0x38, 0x30, 0x4a, 0xfa, 0xbc, 0x38, 0x39, 0x8c, 0x11, 0x8d, 0x59, 0xfe, 0xda, 0xf2, 0x95, 0x69, 0xc7, 0xad, 0xa5, 0x7b, 0xf1, 0x3d, 0x53, 0x0a, 0xc9, 0x95, 0x05, 0xd6, 0x40, 0x89, 0x67, 0x88, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_952 = { .name = "ecdh_brainpoolp384r1_952", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_952_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_952_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_952_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 61 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 953 for ECDH, tcId is 62 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_953_peerpubkey[] = { 0x52, 0x5f, 0xd4, 0xea, 0x91, 0x34, 0x40, 0x41, 0x64, 0x76, 0x92, 0x95, 0xa9, 0xfa, 0xb7, 0xbe, 0x32, 0x34, 0x0d, 0x78, 0x4a, 0xdd, 0x07, 0xd4, 0x8a, 0x7e, 0x93, 0xda, 0x4d, 0xaf, 0x75, 0x80, 0xfd, 0xfe, 0x4b, 0xb0, 0x68, 0x5a, 0x87, 0xfc, 0x42, 0x14, 0x35, 0x45, 0xda, 0x9d, 0x1a, 0xf1, 0x77, 0xc0, 0x03, 0xb2, 0x4d, 0x51, 0x35, 0x22, 0xb2, 0x59, 0x8c, 0x08, 0x23, 0xa3, 0x84, 0x7f, 0xad, 0x60, 0x0e, 0x69, 0xc4, 0xcc, 0x91, 0x0e, 0x73, 0x8d, 0x82, 0xfb, 0x8d, 0x0e, 0x94, 0xbb, 0x9b, 0x31, 0x01, 0x09, 0x50, 0xa3, 0x2c, 0xfb, 0x1e, 0x03, 0x97, 0x3a, 0x4f, 0x5f, 0x67, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_953_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_953_sharedsecret[] = { 0x3d, 0xdd, 0x57, 0x8a, 0x61, 0x24, 0x55, 0xab, 0x8b, 0x8f, 0x89, 0xdc, 0xd3, 0xfe, 0x5e, 0x40, 0x5c, 0x70, 0xb0, 0x4a, 0xb3, 0x58, 0x07, 0x07, 0x2a, 0x69, 0x1b, 0xfe, 0x1b, 0x01, 0xd1, 0xd1, 0x79, 0x2b, 0x67, 0x72, 0xcd, 0xe4, 0xfe, 0x3a, 0x1a, 0x36, 0x9e, 0x66, 0xdc, 0x95, 0xb2, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_953 = { .name = "ecdh_brainpoolp384r1_953", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_953_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_953_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_953_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 62 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 954 for ECDH, tcId is 63 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_954_peerpubkey[] = { 0x55, 0xb4, 0x68, 0x4b, 0x07, 0xf3, 0x65, 0x08, 0xb6, 0x43, 0xcd, 0xec, 0x9e, 0x1c, 0xc4, 0x6d, 0xbd, 0x13, 0x52, 0x13, 0xcf, 0xde, 0xb5, 0x36, 0x1b, 0xc8, 0x13, 0x2a, 0x4e, 0xbc, 0x26, 0x08, 0xda, 0xb1, 0xcf, 0x1d, 0x21, 0x15, 0x1a, 0x9d, 0xeb, 0x2b, 0x78, 0xdd, 0x95, 0xd0, 0x3d, 0xda, 0x0e, 0x90, 0xc4, 0x73, 0xf4, 0xf9, 0xec, 0x8c, 0xb7, 0x99, 0xb0, 0xaa, 0x80, 0x6c, 0xd5, 0x26, 0x2b, 0x07, 0x61, 0xd3, 0xf2, 0x3f, 0x31, 0xac, 0x8d, 0x2b, 0x5d, 0x2d, 0xd7, 0x54, 0xaa, 0x93, 0x16, 0x82, 0x04, 0x0b, 0x14, 0xab, 0xa2, 0xbf, 0x50, 0xab, 0xba, 0x99, 0x8a, 0xbc, 0xe8, 0x44, }; static const unsigned char ecdh_brainpoolp384r1_954_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_954_sharedsecret[] = { 0x5c, 0x9a, 0xc3, 0x91, 0xf6, 0xb6, 0xb4, 0xfc, 0x04, 0x81, 0x09, 0x8f, 0x53, 0xf5, 0x45, 0x3f, 0x18, 0x03, 0x12, 0x22, 0x61, 0x96, 0xfb, 0xf5, 0x8e, 0xec, 0xa4, 0x58, 0x58, 0xef, 0x5c, 0x59, 0xe8, 0x1a, 0x2b, 0x25, 0xc8, 0x92, 0x6b, 0xf0, 0x0e, 0x13, 0x56, 0x8c, 0x94, 0x20, 0x59, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_954 = { .name = "ecdh_brainpoolp384r1_954", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_954_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_954_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_954_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 63 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 955 for ECDH, tcId is 64 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_955_peerpubkey[] = { 0x28, 0x92, 0x66, 0xbe, 0x4d, 0xa8, 0x44, 0xac, 0x9f, 0x8d, 0xa4, 0xc1, 0x7e, 0xcf, 0xe9, 0xe1, 0x02, 0xa7, 0x2f, 0x3f, 0x2d, 0xd5, 0x38, 0x2d, 0xe0, 0xcc, 0x46, 0x73, 0xb9, 0x2d, 0xa7, 0x6e, 0x6c, 0x1e, 0x92, 0x26, 0x8f, 0xd3, 0x44, 0xec, 0xbd, 0x52, 0xc8, 0x61, 0x52, 0x32, 0x35, 0x7c, 0x6d, 0xbc, 0x76, 0xf3, 0x15, 0xff, 0x9d, 0x8d, 0x56, 0xd4, 0x0b, 0x73, 0x5b, 0x24, 0x06, 0xd1, 0x77, 0x36, 0x02, 0xc2, 0x9f, 0x66, 0x35, 0x4f, 0xa1, 0x15, 0xde, 0x6c, 0x46, 0x8f, 0x76, 0x38, 0xc4, 0xf2, 0x38, 0x37, 0x21, 0x83, 0xcd, 0xa1, 0x41, 0xdb, 0x33, 0x86, 0x7b, 0x1b, 0x72, 0x8f, }; static const unsigned char ecdh_brainpoolp384r1_955_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_955_sharedsecret[] = { 0x2f, 0x0d, 0x8b, 0x9c, 0x02, 0xea, 0x3a, 0xe6, 0xf9, 0xd0, 0x21, 0xa8, 0xed, 0x06, 0x22, 0xfe, 0x7d, 0x5d, 0x0a, 0xf0, 0xea, 0x6a, 0x7a, 0xde, 0xbf, 0x64, 0x09, 0x84, 0xac, 0x06, 0x05, 0x43, 0xb4, 0xcf, 0x8c, 0x7c, 0xe3, 0xfc, 0x3a, 0x5e, 0xd3, 0x5d, 0x79, 0x69, 0x2b, 0x54, 0x7a, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_955 = { .name = "ecdh_brainpoolp384r1_955", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_955_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_955_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_955_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 64 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 956 for ECDH, tcId is 65 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_956_peerpubkey[] = { 0x82, 0x88, 0xfc, 0xd9, 0x22, 0x95, 0x55, 0x12, 0xe7, 0x51, 0x35, 0x58, 0x8a, 0x90, 0xc5, 0x49, 0xfd, 0x17, 0x88, 0xf3, 0x63, 0x0a, 0x05, 0xbe, 0xc1, 0x6d, 0x74, 0xf5, 0x75, 0xa3, 0x3c, 0x35, 0x46, 0x00, 0x54, 0x0e, 0x49, 0x80, 0x3f, 0xb8, 0x24, 0xa1, 0x59, 0x4b, 0x34, 0xf9, 0xbf, 0x38, 0x2f, 0xb2, 0xad, 0x4d, 0xd4, 0xcc, 0x5c, 0xf7, 0x31, 0xba, 0x8b, 0xce, 0xd2, 0xa9, 0x61, 0xde, 0xca, 0x16, 0xaa, 0xd3, 0x4b, 0xae, 0x31, 0xf9, 0x9a, 0xd2, 0x6d, 0x5b, 0x73, 0x76, 0xea, 0xdf, 0x75, 0xae, 0xd2, 0x9a, 0x51, 0x43, 0x47, 0xb4, 0x2a, 0x04, 0x2c, 0x4c, 0x54, 0xe1, 0xc0, 0x2d, }; static const unsigned char ecdh_brainpoolp384r1_956_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_956_sharedsecret[] = { 0x61, 0xd1, 0xc4, 0x98, 0x8e, 0x07, 0x62, 0x8e, 0x03, 0x6c, 0xc9, 0x95, 0x6c, 0x54, 0xde, 0xb1, 0x7e, 0xc6, 0xf0, 0x15, 0x95, 0x58, 0x05, 0x8f, 0x3a, 0x20, 0xe7, 0x8f, 0x16, 0x02, 0x94, 0x36, 0x1f, 0xfa, 0xbd, 0x25, 0x66, 0xbf, 0xff, 0x16, 0xdc, 0xfe, 0x02, 0xc3, 0x6c, 0xc0, 0x12, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_956 = { .name = "ecdh_brainpoolp384r1_956", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_956_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_956_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_956_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 65 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 957 for ECDH, tcId is 66 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_957_peerpubkey[] = { 0x09, 0xdc, 0xa2, 0xc2, 0x43, 0x3e, 0x31, 0x5b, 0xd1, 0xf2, 0x56, 0x26, 0x85, 0xce, 0x83, 0x37, 0x0a, 0x10, 0x32, 0x6d, 0x60, 0x8a, 0x15, 0xee, 0x2a, 0xf0, 0x86, 0xb3, 0x5d, 0x2b, 0x7f, 0xdb, 0x1f, 0x9a, 0x46, 0xbe, 0x4a, 0x77, 0x0a, 0x2a, 0x21, 0xeb, 0xa5, 0x38, 0x38, 0x42, 0x86, 0x54, 0x27, 0x71, 0x84, 0xec, 0x7e, 0xe7, 0x24, 0xfc, 0xd8, 0x1c, 0xf8, 0x23, 0xbd, 0x37, 0x87, 0xe3, 0xea, 0x45, 0xd6, 0x56, 0xf3, 0xc9, 0xd5, 0xea, 0x3b, 0x23, 0x02, 0x7d, 0xb3, 0xda, 0x5b, 0x76, 0xe6, 0x7b, 0x24, 0xba, 0x6a, 0xf8, 0x3a, 0xb0, 0xa5, 0x83, 0x0b, 0x20, 0x53, 0xde, 0xf0, 0x5f, }; static const unsigned char ecdh_brainpoolp384r1_957_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_957_sharedsecret[] = { 0x4c, 0x51, 0x62, 0xb4, 0x0c, 0x7c, 0xe2, 0x32, 0x2d, 0x8a, 0x0c, 0x2f, 0x45, 0xad, 0x7f, 0x8f, 0xdb, 0xde, 0x67, 0xeb, 0x2d, 0x6b, 0x1c, 0xf9, 0xc9, 0x29, 0x74, 0xfb, 0x64, 0x0b, 0x3b, 0x82, 0x56, 0x5c, 0x6e, 0xf0, 0x97, 0x56, 0x24, 0xda, 0xb2, 0xd4, 0x90, 0x26, 0x3e, 0x76, 0x45, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_957 = { .name = "ecdh_brainpoolp384r1_957", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_957_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_957_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_957_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 66 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 958 for ECDH, tcId is 67 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_958_peerpubkey[] = { 0x4c, 0x2d, 0x1c, 0xbc, 0x86, 0x70, 0x87, 0xf8, 0x88, 0x37, 0x25, 0xb5, 0x37, 0x4d, 0x5b, 0x64, 0xb7, 0xa8, 0x0f, 0x61, 0x45, 0x37, 0xb5, 0x3d, 0x86, 0x7e, 0xed, 0xe5, 0xa0, 0x10, 0x9c, 0xfe, 0xe3, 0x6f, 0x5f, 0xc7, 0x6a, 0xd0, 0x17, 0x53, 0x70, 0x2a, 0x01, 0x87, 0x6e, 0xe4, 0xdb, 0x56, 0x8a, 0x8c, 0x79, 0x2a, 0xec, 0x40, 0x9a, 0xa3, 0xf2, 0x30, 0xef, 0xfa, 0x37, 0xb4, 0xc8, 0x4d, 0x8e, 0x7c, 0x28, 0x90, 0x8c, 0xd1, 0x48, 0x02, 0x83, 0x03, 0xa5, 0xc3, 0xae, 0x82, 0x8e, 0x79, 0xe2, 0xa5, 0xdd, 0x09, 0xdc, 0x3a, 0xf4, 0xf9, 0x2d, 0x9a, 0xbc, 0xe7, 0xb1, 0xf9, 0x9e, 0xbe, }; static const unsigned char ecdh_brainpoolp384r1_958_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_958_sharedsecret[] = { 0x5a, 0x5a, 0x90, 0xb5, 0x9c, 0xec, 0xfb, 0x65, 0x7a, 0x7a, 0xad, 0x25, 0xc8, 0x15, 0x08, 0x7f, 0x4a, 0xc4, 0x37, 0x11, 0xe9, 0x50, 0xfd, 0xe2, 0xd0, 0xc0, 0xfa, 0xb0, 0xb8, 0x2a, 0x4a, 0xde, 0xa8, 0x4a, 0x5f, 0x23, 0xf0, 0xdb, 0x0a, 0x0c, 0x35, 0xfa, 0x55, 0x9a, 0xc0, 0x71, 0x5b, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_958 = { .name = "ecdh_brainpoolp384r1_958", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_958_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_958_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_958_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 67 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 959 for ECDH, tcId is 68 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_959_peerpubkey[] = { 0x77, 0x65, 0xa6, 0x67, 0xdc, 0xb0, 0x07, 0x8a, 0x7d, 0xe2, 0xa8, 0x7c, 0x09, 0x55, 0xc1, 0x3c, 0xc4, 0xec, 0xd7, 0x95, 0xd1, 0x3b, 0xae, 0xd9, 0x30, 0xa1, 0xf3, 0xf6, 0x9d, 0xb8, 0xe2, 0x12, 0x64, 0xc6, 0x86, 0xb0, 0x35, 0x9f, 0x70, 0xa1, 0xf4, 0xc3, 0x07, 0xcf, 0x85, 0x10, 0x22, 0x43, 0x0e, 0x1c, 0x7d, 0x62, 0x29, 0xee, 0x61, 0x42, 0x2a, 0xde, 0x58, 0xff, 0x8e, 0x06, 0xad, 0x67, 0xa6, 0xbb, 0x4d, 0x66, 0xba, 0xe8, 0x1f, 0xb6, 0xb7, 0x00, 0xf6, 0x1a, 0xe2, 0x71, 0x3e, 0xfd, 0xa9, 0x53, 0x81, 0xce, 0xa3, 0x7d, 0x54, 0xbb, 0x74, 0x82, 0x46, 0xe6, 0x35, 0xef, 0xa7, 0x86, }; static const unsigned char ecdh_brainpoolp384r1_959_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_959_sharedsecret[] = { 0x0e, 0xe9, 0x8c, 0xb0, 0x55, 0x14, 0x19, 0xfe, 0x86, 0x60, 0x7e, 0x72, 0x75, 0x5e, 0x63, 0xd4, 0x00, 0x47, 0x9a, 0x3a, 0xcb, 0x4b, 0xdf, 0xd9, 0xd8, 0x53, 0x9e, 0x53, 0x3c, 0x47, 0xb4, 0x77, 0x84, 0x10, 0xa7, 0x51, 0x6e, 0x88, 0x86, 0x73, 0x90, 0xae, 0x51, 0x1e, 0xc0, 0xc2, 0x29, 0xd1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_959 = { .name = "ecdh_brainpoolp384r1_959", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_959_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_959_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_959_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 68 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 960 for ECDH, tcId is 69 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_960_peerpubkey[] = { 0x5a, 0x96, 0xc2, 0x68, 0x3d, 0xfa, 0xf1, 0x26, 0x3a, 0x2b, 0xfe, 0xa4, 0xf4, 0x19, 0xc6, 0x6f, 0x79, 0x71, 0xb7, 0x69, 0x98, 0xe4, 0x47, 0x14, 0xca, 0x1c, 0x75, 0xe9, 0x06, 0x68, 0xa2, 0x18, 0x1a, 0x3a, 0x9f, 0xfc, 0xc6, 0x57, 0x8d, 0x93, 0x4b, 0xf7, 0x27, 0x1b, 0xc7, 0x6b, 0xb9, 0x14, 0x44, 0x08, 0x28, 0xcb, 0x6a, 0x6e, 0x19, 0xd0, 0xd1, 0xd5, 0x1e, 0xc1, 0x25, 0x4d, 0x5b, 0x1c, 0x79, 0x0f, 0xcd, 0x2d, 0x86, 0x76, 0x92, 0x24, 0xaf, 0xb4, 0x40, 0x4a, 0x90, 0x96, 0x24, 0x31, 0xf8, 0x31, 0xba, 0xa3, 0xb2, 0x6a, 0x2b, 0x48, 0xad, 0xf7, 0xdf, 0xc8, 0x1d, 0x5b, 0x8d, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_960_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_960_sharedsecret[] = { 0x33, 0xd7, 0x64, 0x98, 0x01, 0x79, 0x9b, 0x4d, 0x8c, 0x4e, 0x0f, 0xa5, 0x97, 0x6b, 0x52, 0x52, 0xde, 0x4b, 0x48, 0x89, 0x98, 0x3b, 0x5a, 0x4c, 0x76, 0xd7, 0x80, 0x90, 0xc3, 0x8a, 0x27, 0xdf, 0x20, 0x58, 0xd9, 0x05, 0x61, 0x1e, 0xae, 0x06, 0x2c, 0x75, 0xf3, 0xc8, 0xfe, 0x31, 0xa0, 0xa4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_960 = { .name = "ecdh_brainpoolp384r1_960", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_960_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_960_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_960_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 69 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 961 for ECDH, tcId is 70 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_961_peerpubkey[] = { 0x46, 0xc6, 0xcc, 0x67, 0x31, 0x07, 0x14, 0x48, 0x7e, 0x26, 0x2e, 0x5e, 0xe5, 0x40, 0x79, 0xb7, 0xd0, 0xb1, 0xdc, 0x0c, 0x30, 0x01, 0xa1, 0x3f, 0x99, 0x6c, 0xaf, 0x42, 0x80, 0x18, 0xbc, 0x3f, 0x65, 0xcf, 0xce, 0x14, 0x64, 0xf3, 0xd3, 0x4a, 0x48, 0xdf, 0x1e, 0x7e, 0x4b, 0x44, 0xa8, 0xd2, 0x89, 0x76, 0x0f, 0xb4, 0x50, 0x7a, 0xff, 0xf7, 0x77, 0xaa, 0x44, 0x4f, 0x94, 0xd4, 0x52, 0xf1, 0x55, 0xe3, 0xb1, 0xaf, 0x5b, 0xda, 0x32, 0x94, 0x6f, 0xcd, 0x72, 0xb2, 0x79, 0xe7, 0xe8, 0x4f, 0xad, 0x3f, 0x45, 0x21, 0xa0, 0xd2, 0x03, 0xfa, 0x61, 0xd4, 0xaf, 0xe5, 0xd8, 0x5a, 0x2a, 0x2f, }; static const unsigned char ecdh_brainpoolp384r1_961_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_961_sharedsecret[] = { 0x5e, 0x58, 0x9b, 0x53, 0x87, 0x4c, 0xf2, 0xa2, 0xe6, 0x0f, 0x76, 0xb4, 0xff, 0xcd, 0x04, 0xc4, 0x88, 0xea, 0x7b, 0x12, 0xe9, 0x72, 0x40, 0x00, 0x98, 0x52, 0x83, 0x7b, 0x8b, 0xca, 0xe6, 0xfb, 0x67, 0x88, 0x0e, 0x18, 0x85, 0xb1, 0xf0, 0x49, 0x14, 0xbc, 0x6f, 0x6f, 0x48, 0x29, 0x17, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_961 = { .name = "ecdh_brainpoolp384r1_961", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_961_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_961_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_961_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 70 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 962 for ECDH, tcId is 71 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_962_peerpubkey[] = { 0x13, 0xdb, 0x7e, 0xe8, 0xcf, 0x1d, 0xcc, 0x6b, 0xc3, 0x7e, 0x0f, 0x5c, 0x9a, 0xa9, 0x99, 0x0c, 0xca, 0xba, 0x51, 0xfe, 0x14, 0x0c, 0x2b, 0xfc, 0x80, 0xda, 0x8b, 0x5b, 0x36, 0x53, 0x97, 0x22, 0x5f, 0xf4, 0xcc, 0xd8, 0xe1, 0x36, 0x69, 0xbf, 0xbb, 0x7d, 0xf6, 0x10, 0xcf, 0x2e, 0x07, 0xcb, 0x80, 0x5e, 0x15, 0x81, 0x36, 0x62, 0xb3, 0x6b, 0x68, 0x8a, 0xfb, 0x28, 0x23, 0x87, 0xf5, 0x8d, 0x17, 0x07, 0x45, 0xa5, 0xf7, 0x27, 0x81, 0x88, 0x80, 0x9d, 0x0f, 0x52, 0x64, 0xad, 0xd8, 0x32, 0x1b, 0x5b, 0x89, 0xb9, 0xc1, 0x62, 0xba, 0xed, 0x22, 0x51, 0xee, 0xdb, 0xcf, 0x95, 0x21, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_962_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_962_sharedsecret[] = { 0x41, 0xb2, 0xb8, 0x9d, 0xf1, 0xb8, 0xc1, 0x93, 0xe7, 0x63, 0xca, 0x2f, 0x88, 0x6f, 0xe5, 0xc1, 0x2e, 0x8f, 0xe0, 0x85, 0xb6, 0xe8, 0x6b, 0xd5, 0x68, 0x9e, 0xb7, 0xc3, 0xa1, 0x4a, 0x46, 0x95, 0x24, 0x89, 0x7b, 0x89, 0xf2, 0x01, 0x98, 0x00, 0x39, 0xd8, 0x7d, 0x6a, 0x24, 0xa8, 0x40, 0x04, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_962 = { .name = "ecdh_brainpoolp384r1_962", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_962_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_962_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_962_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 71 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 963 for ECDH, tcId is 72 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_963_peerpubkey[] = { 0x32, 0xee, 0x82, 0xa7, 0x41, 0xf7, 0x57, 0x16, 0x46, 0x27, 0x43, 0x78, 0x20, 0x26, 0xd5, 0xb9, 0xa1, 0xa0, 0x93, 0x95, 0x47, 0x44, 0x59, 0xbf, 0xbd, 0xce, 0xc0, 0xe6, 0x8e, 0x18, 0xa7, 0x06, 0x05, 0x1f, 0xa5, 0x24, 0x80, 0x2b, 0xb5, 0x6a, 0x06, 0x11, 0x56, 0x48, 0xf4, 0x40, 0x3d, 0x9c, 0x24, 0x8e, 0xbc, 0xdd, 0x7a, 0xef, 0x8a, 0x9d, 0x65, 0x10, 0xb9, 0x10, 0xf3, 0xf3, 0xe6, 0xdf, 0x65, 0x7f, 0x81, 0x18, 0xf1, 0xda, 0x97, 0x10, 0xe4, 0x6c, 0x80, 0xed, 0x3c, 0x43, 0x28, 0x0c, 0x9c, 0x06, 0x32, 0x5b, 0xb8, 0xe6, 0xfc, 0xfe, 0xc7, 0x28, 0x8a, 0x34, 0x4d, 0x6a, 0xbd, 0x4d, }; static const unsigned char ecdh_brainpoolp384r1_963_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_963_sharedsecret[] = { 0x1b, 0xdf, 0xc2, 0xc3, 0x62, 0x29, 0xf8, 0xcb, 0xd7, 0x3d, 0x9f, 0x73, 0x22, 0xf2, 0x3f, 0x41, 0xfd, 0xcc, 0x48, 0x99, 0x70, 0xc4, 0x48, 0x7f, 0x56, 0x39, 0xfa, 0xac, 0x07, 0x55, 0x26, 0xa9, 0x3d, 0x70, 0x9c, 0xa6, 0x58, 0xca, 0x5d, 0xc4, 0x72, 0xad, 0x5a, 0x4c, 0xea, 0x5d, 0xfa, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_963 = { .name = "ecdh_brainpoolp384r1_963", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_963_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_963_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_963_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 72 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 964 for ECDH, tcId is 73 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_964_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_964_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp384r1_964_sharedsecret[] = { 0x1a, 0x13, 0x6d, 0xb8, 0x3c, 0x88, 0xec, 0x1a, 0x70, 0x5d, 0xb7, 0x0c, 0x31, 0x0e, 0x68, 0x51, 0x64, 0xac, 0xf6, 0x89, 0x0c, 0x56, 0x28, 0xfb, 0x40, 0x04, 0x52, 0x07, 0x39, 0xa3, 0x0a, 0x01, 0x55, 0x57, 0xd3, 0xd0, 0xfa, 0x86, 0x52, 0xd2, 0x6a, 0xf3, 0x62, 0x1d, 0x8c, 0xfa, 0xc5, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_964 = { .name = "ecdh_brainpoolp384r1_964", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_964_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_964_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_964_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 73 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 965 for ECDH, tcId is 74 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_965_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_965_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384r1_965_sharedsecret[] = { 0x45, 0x18, 0xe5, 0x9c, 0x33, 0x25, 0xde, 0x9f, 0xf9, 0xba, 0x51, 0x76, 0xcc, 0xe0, 0x2c, 0x2f, 0xdc, 0x5d, 0x47, 0xc4, 0xd7, 0x1d, 0x7b, 0xc7, 0xf3, 0xce, 0x1a, 0x86, 0x01, 0x31, 0xf3, 0x9a, 0x00, 0xb1, 0xc9, 0x80, 0x6f, 0xe9, 0x2f, 0xee, 0xa4, 0xe1, 0x5b, 0x50, 0x5d, 0xbf, 0xa7, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_965 = { .name = "ecdh_brainpoolp384r1_965", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_965_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_965_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_965_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 74 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 966 for ECDH, tcId is 75 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_966_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_966_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_966_sharedsecret[] = { 0x03, 0x2c, 0xe3, 0xf0, 0x60, 0x54, 0x5b, 0xf8, 0x9e, 0x05, 0xef, 0x6c, 0xc0, 0x3f, 0x04, 0xfd, 0xaf, 0x66, 0xad, 0x01, 0xa9, 0x3c, 0xc2, 0x87, 0x67, 0x5e, 0x2a, 0xdc, 0xd6, 0x04, 0x4e, 0xca, 0x1d, 0xa4, 0x10, 0x8d, 0x91, 0xe4, 0xc2, 0x2d, 0xf2, 0x76, 0xd9, 0xad, 0x7d, 0xc2, 0x35, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_966 = { .name = "ecdh_brainpoolp384r1_966", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_966_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_966_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_966_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 75 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 967 for ECDH, tcId is 76 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_967_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_967_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384r1_967_sharedsecret[] = { 0x5b, 0xf3, 0x77, 0x8b, 0xd7, 0x33, 0x5d, 0xb8, 0x43, 0xdc, 0xbf, 0x4f, 0xae, 0x46, 0xf1, 0x84, 0xb1, 0x8d, 0x95, 0xfc, 0xe6, 0xaf, 0xde, 0x98, 0xb4, 0x7f, 0x62, 0xc8, 0x9f, 0x61, 0xee, 0x64, 0xbe, 0xf7, 0xf7, 0xb2, 0x73, 0xe4, 0xb3, 0x91, 0x47, 0x1d, 0x2c, 0x33, 0xe4, 0x6b, 0xda, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_967 = { .name = "ecdh_brainpoolp384r1_967", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_967_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_967_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_967_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 76 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 968 for ECDH, tcId is 77 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_968_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_968_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_968_sharedsecret[] = { 0x2d, 0x57, 0x51, 0xd2, 0x84, 0x14, 0xa7, 0x3a, 0x5e, 0x20, 0x49, 0xac, 0x38, 0xc0, 0x1c, 0xbd, 0xb5, 0x92, 0xe9, 0x0a, 0xd4, 0xf1, 0xf2, 0x16, 0x8c, 0x9a, 0xde, 0x2b, 0x8c, 0xa3, 0x36, 0xbc, 0x96, 0x5e, 0xe7, 0xb8, 0xcd, 0xd6, 0x32, 0x07, 0xb3, 0xa8, 0x76, 0x8c, 0x81, 0xfd, 0xae, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_968 = { .name = "ecdh_brainpoolp384r1_968", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_968_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_968_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_968_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 77 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 969 for ECDH, tcId is 78 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_969_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_969_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x0f, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_969_sharedsecret[] = { 0x1c, 0xa7, 0x53, 0xeb, 0x1a, 0x6f, 0x3a, 0x73, 0x5f, 0x45, 0x9a, 0x26, 0xc1, 0x1c, 0x1c, 0x6f, 0x52, 0x3d, 0x40, 0x91, 0x8a, 0x41, 0xb1, 0x19, 0x3b, 0x93, 0x42, 0xe0, 0xcd, 0x81, 0xc4, 0x0a, 0x62, 0x5c, 0x4c, 0x9c, 0xbb, 0x4d, 0x87, 0x5b, 0x55, 0xdb, 0x49, 0x8b, 0x37, 0x0b, 0x7b, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_969 = { .name = "ecdh_brainpoolp384r1_969", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_969_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_969_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_969_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 78 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 970 for ECDH, tcId is 79 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_970_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_970_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x78, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_970_sharedsecret[] = { 0x4b, 0xe8, 0xf1, 0x6a, 0xe1, 0xff, 0x3c, 0xdb, 0x12, 0x0f, 0x32, 0xc0, 0x8e, 0x0a, 0x1c, 0x2c, 0x17, 0x8e, 0x2d, 0xd7, 0xd9, 0xbe, 0xba, 0x9f, 0xd1, 0x7b, 0xab, 0x19, 0x94, 0xb4, 0x4e, 0x21, 0x07, 0xaa, 0x24, 0x8d, 0xa4, 0xa1, 0x8d, 0x45, 0x61, 0x28, 0x91, 0xbd, 0x8a, 0x59, 0x9b, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_970 = { .name = "ecdh_brainpoolp384r1_970", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_970_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_970_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_970_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 79 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 971 for ECDH, tcId is 80 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_971_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_971_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x80, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_971_sharedsecret[] = { 0x7b, 0x96, 0x79, 0xe9, 0xef, 0x47, 0x70, 0x0a, 0x48, 0x4d, 0x65, 0x63, 0x7a, 0x03, 0x83, 0x4a, 0x2f, 0xa8, 0x55, 0x7d, 0xaf, 0xe5, 0xf4, 0x70, 0xe4, 0x74, 0x7b, 0xf5, 0xac, 0x30, 0x8e, 0xc5, 0x3b, 0x16, 0xf8, 0x37, 0x89, 0xee, 0x63, 0xab, 0xd0, 0xae, 0x70, 0x78, 0x42, 0x24, 0x40, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_971 = { .name = "ecdh_brainpoolp384r1_971", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_971_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_971_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_971_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 80 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 972 for ECDH, tcId is 81 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_972_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_972_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x01, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_972_sharedsecret[] = { 0x67, 0x8f, 0xe1, 0x0e, 0x74, 0xbc, 0xb4, 0x5a, 0xcc, 0x01, 0x46, 0x33, 0x44, 0x18, 0xc1, 0xff, 0x75, 0x12, 0x81, 0x5f, 0x05, 0x14, 0x6c, 0xcc, 0xc1, 0x47, 0xa7, 0x33, 0x24, 0xde, 0x04, 0xc5, 0x8c, 0xb8, 0x7c, 0xbb, 0x00, 0x73, 0x5c, 0xdc, 0x26, 0x95, 0xe7, 0x60, 0x39, 0x98, 0xa0, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_972 = { .name = "ecdh_brainpoolp384r1_972", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_972_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_972_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_972_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 81 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 973 for ECDH, tcId is 82 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_973_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_973_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x2f, }; static const unsigned char ecdh_brainpoolp384r1_973_sharedsecret[] = { 0x37, 0x29, 0xbc, 0xd2, 0x15, 0xb4, 0x1c, 0x65, 0x8b, 0x83, 0x26, 0x86, 0xc8, 0x13, 0x62, 0xb3, 0x48, 0x5d, 0x75, 0xb0, 0x94, 0x78, 0xc6, 0xdd, 0xe3, 0xb5, 0xe2, 0x78, 0x56, 0x4e, 0xf4, 0x16, 0x2b, 0xdd, 0x6f, 0xf6, 0x5a, 0xfc, 0x6e, 0x82, 0x13, 0xbb, 0xa9, 0xb6, 0xc5, 0x4b, 0xa1, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_973 = { .name = "ecdh_brainpoolp384r1_973", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_973_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_973_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_973_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 82 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 974 for ECDH, tcId is 83 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_974_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_974_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x4f, }; static const unsigned char ecdh_brainpoolp384r1_974_sharedsecret[] = { 0x12, 0xba, 0x46, 0x22, 0xda, 0xf1, 0xf2, 0xf9, 0x50, 0xaa, 0xd6, 0xd5, 0x4a, 0xaa, 0xb8, 0x21, 0x88, 0x5a, 0x47, 0xa9, 0x85, 0x73, 0xaf, 0xea, 0x49, 0xbc, 0x18, 0x96, 0x04, 0x1e, 0xe9, 0x50, 0x1a, 0xce, 0xf8, 0x28, 0x10, 0xf3, 0x75, 0x5f, 0xf2, 0x84, 0xe1, 0x66, 0x65, 0xbd, 0x0f, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_974 = { .name = "ecdh_brainpoolp384r1_974", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_974_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_974_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_974_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 83 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 975 for ECDH, tcId is 84 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_975_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_975_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x5f, }; static const unsigned char ecdh_brainpoolp384r1_975_sharedsecret[] = { 0x7f, 0xb5, 0x39, 0x85, 0x19, 0x85, 0x7f, 0x2c, 0x17, 0xcd, 0xdd, 0x0a, 0x9d, 0x2c, 0x16, 0x60, 0xac, 0x35, 0xb4, 0x72, 0x3e, 0x4a, 0x04, 0x9b, 0xa5, 0xc5, 0x8c, 0x45, 0x8b, 0x74, 0x2d, 0xfa, 0x81, 0x3a, 0x5c, 0x71, 0x75, 0xe1, 0xc0, 0x97, 0x4b, 0x51, 0x4b, 0xfa, 0xeb, 0x00, 0x39, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_975 = { .name = "ecdh_brainpoolp384r1_975", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_975_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_975_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_975_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 84 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 976 for ECDH, tcId is 85 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_976_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_976_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const unsigned char ecdh_brainpoolp384r1_976_sharedsecret[] = { 0x1a, 0x13, 0x6d, 0xb8, 0x3c, 0x88, 0xec, 0x1a, 0x70, 0x5d, 0xb7, 0x0c, 0x31, 0x0e, 0x68, 0x51, 0x64, 0xac, 0xf6, 0x89, 0x0c, 0x56, 0x28, 0xfb, 0x40, 0x04, 0x52, 0x07, 0x39, 0xa3, 0x0a, 0x01, 0x55, 0x57, 0xd3, 0xd0, 0xfa, 0x86, 0x52, 0xd2, 0x6a, 0xf3, 0x62, 0x1d, 0x8c, 0xfa, 0xc5, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_976 = { .name = "ecdh_brainpoolp384r1_976", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_976_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_976_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_976_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 85 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 977 for ECDH, tcId is 86 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_977_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_977_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const unsigned char ecdh_brainpoolp384r1_977_sharedsecret[] = { 0x0f, 0x0a, 0x1d, 0x20, 0xba, 0x6a, 0x7b, 0x2c, 0x48, 0x15, 0x4b, 0x43, 0x87, 0x0b, 0xe4, 0x89, 0x09, 0x79, 0xd9, 0x26, 0x19, 0x50, 0x73, 0x6d, 0xe9, 0x6c, 0x29, 0xf3, 0x71, 0x23, 0x3b, 0x1e, 0xf9, 0x4a, 0x79, 0xc2, 0xab, 0x69, 0x88, 0x68, 0xf0, 0x0c, 0xea, 0x7e, 0x91, 0x2d, 0xeb, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_977 = { .name = "ecdh_brainpoolp384r1_977", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_977_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_977_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_977_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 86 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 978 for ECDH, tcId is 87 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_978_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_978_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_978 = { .name = "ecdh_brainpoolp384r1_978", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_978_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_978_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 87 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 979 for ECDH, tcId is 88 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_979_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_979_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_979 = { .name = "ecdh_brainpoolp384r1_979", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_979_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_979_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 88 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 980 for ECDH, tcId is 89 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_980_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_980_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_980 = { .name = "ecdh_brainpoolp384r1_980", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_980_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_980_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 89 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 981 for ECDH, tcId is 90 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_981_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_981_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_981 = { .name = "ecdh_brainpoolp384r1_981", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_981_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_981_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 90 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 982 for ECDH, tcId is 91 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_982_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_982_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_982 = { .name = "ecdh_brainpoolp384r1_982", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_982_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_982_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 91 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 983 for ECDH, tcId is 92 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_983_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_983_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_983 = { .name = "ecdh_brainpoolp384r1_983", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_983_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_983_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 92 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 984 for ECDH, tcId is 93 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_984_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_984_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_984 = { .name = "ecdh_brainpoolp384r1_984", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_984_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_984_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 93 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 985 for ECDH, tcId is 94 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_985_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_985_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_985 = { .name = "ecdh_brainpoolp384r1_985", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_985_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_985_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 94 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 986 for ECDH, tcId is 95 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_986_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_986_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_986 = { .name = "ecdh_brainpoolp384r1_986", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_986_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_986_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 95 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 987 for ECDH, tcId is 96 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_987_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_987_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_987 = { .name = "ecdh_brainpoolp384r1_987", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_987_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_987_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 96 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 988 for ECDH, tcId is 97 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_988_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_988_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_988 = { .name = "ecdh_brainpoolp384r1_988", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_988_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_988_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 97 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 989 for ECDH, tcId is 98 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_989_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_989_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_989 = { .name = "ecdh_brainpoolp384r1_989", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_989_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_989_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 98 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 990 for ECDH, tcId is 99 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_990_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_990_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_990 = { .name = "ecdh_brainpoolp384r1_990", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_990_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_990_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 99 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 991 for ECDH, tcId is 100 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_991_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_991_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_991 = { .name = "ecdh_brainpoolp384r1_991", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_991_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_991_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 100 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 992 for ECDH, tcId is 101 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_992_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_992_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_992 = { .name = "ecdh_brainpoolp384r1_992", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_992_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_992_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 101 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 993 for ECDH, tcId is 102 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_993_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_993_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_993 = { .name = "ecdh_brainpoolp384r1_993", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_993_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_993_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 102 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 994 for ECDH, tcId is 104 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_994_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xca, }; static const unsigned char ecdh_brainpoolp384r1_994_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_994 = { .name = "ecdh_brainpoolp384r1_994", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_994_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_994_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 104 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 995 for ECDH, tcId is 105 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_995_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_995_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_995 = { .name = "ecdh_brainpoolp384r1_995", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_995_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_995_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 105 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 996 for ECDH, tcId is 108 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_996_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_996_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_996_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_996 = { .name = "ecdh_brainpoolp384r1_996", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_996_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_996_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_996_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 1, tcId is 108 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 997 for ECDH, tcId is 109 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_997_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_997_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_997_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_997 = { .name = "ecdh_brainpoolp384r1_997", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_997_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_997_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_997_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 5042941954480324912133914614639385831494842746066313376667826733277554507683616955290244686736004252971522, tcId is 109 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 998 for ECDH, tcId is 110 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_998_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_998_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_998_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_998 = { .name = "ecdh_brainpoolp384r1_998", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_998_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_998_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_998_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator = (0,0), tcId is 110 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 999 for ECDH, tcId is 111 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_999_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_999_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_999_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_999 = { .name = "ecdh_brainpoolp384r1_999", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_999_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_999_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_999_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator not on curve, tcId is 111 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1000 for ECDH, tcId is 114 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1000_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_1000_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1000_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1000 = { .name = "ecdh_brainpoolp384r1_1000", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1000_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1000_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1000_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = 2, tcId is 114 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1001 for ECDH, tcId is 116 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1001_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_1001_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1001_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1001 = { .name = "ecdh_brainpoolp384r1_1001", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1001_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1001_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1001_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = None, tcId is 116 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1002 for ECDH, tcId is 121 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1002_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_1002_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1002_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1002 = { .name = "ecdh_brainpoolp384r1_1002", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1002_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1002_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1002_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "a = 0, tcId is 121 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1003 for ECDH, tcId is 123 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1003_peerpubkey[] = { 0x6a, 0x2a, 0xac, 0x18, 0x63, 0x56, 0xf6, 0x87, 0x86, 0xc8, 0xca, 0x5b, 0xe5, 0xe5, 0x6c, 0x95, 0x1d, 0x29, 0x92, 0x56, 0x1b, 0xbd, 0x09, 0x4d, 0x67, 0x96, 0x73, 0x0f, 0xf6, 0x7b, 0x33, 0x24, 0x9a, 0x93, 0xa5, 0x34, 0x55, 0xf8, 0x29, 0x1e, 0x11, 0x21, 0x99, 0xa1, 0x0f, 0xa7, 0xfd, 0x2d, 0x8c, 0x4b, 0x85, 0xd6, 0x44, 0x68, 0x87, 0x24, 0xdf, 0xd1, 0x72, 0x6f, 0x1e, 0x36, 0x84, 0x55, 0xe5, 0xeb, 0x30, 0x0f, 0x47, 0x9a, 0x2f, 0xfc, 0x55, 0x6c, 0x53, 0xbc, 0xe3, 0xee, 0x3b, 0x7d, 0x52, 0x2d, 0xb8, 0x13, 0x03, 0xea, 0x97, 0xff, 0x13, 0xf6, 0xe7, 0xf2, 0x81, 0x2b, 0x1e, 0xbb, }; static const unsigned char ecdh_brainpoolp384r1_1003_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1003 = { .name = "ecdh_brainpoolp384r1_1003", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1003_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1003_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP384t1, tcId is 123 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1004 for ECDH, tcId is 126 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1004_peerpubkey[] = { 0x59, 0xe0, 0xd3, 0xa3, 0x9a, 0x02, 0x51, 0xcc, 0x1b, 0xcd, 0xe0, 0x5e, 0x33, 0x0e, 0x6e, 0xe8, 0xa2, 0x4a, 0x21, 0x75, 0xb8, 0x5f, 0x67, 0xee, 0xc5, 0x4d, 0x2f, 0x4c, 0x82, 0xd9, 0x65, 0x50, 0x13, 0xbd, 0x53, 0xd4, 0xb4, 0xaa, 0xf5, 0x37, 0x74, 0x9e, 0x62, 0x3c, 0x19, 0x49, 0x79, 0x50, 0x4e, 0x6a, 0xbb, 0xa9, 0x54, 0x70, 0x65, 0xce, 0x75, 0x9e, 0x95, 0x28, 0x2e, 0xdd, 0x69, 0x0c, 0x56, 0x9d, 0xdb, 0xda, 0xe4, 0x60, 0xb6, 0x07, 0x51, 0x07, 0x15, 0xba, 0x17, 0xdc, 0x43, 0x23, 0x14, 0x4d, 0x94, 0x92, 0xd6, 0x5d, 0x0c, 0x0f, 0xc1, 0xa9, 0x3f, 0xc9, 0x2b, 0x34, 0xaf, 0x08, }; static const unsigned char ecdh_brainpoolp384r1_1004_privkey[] = { 0x8c, 0x3b, 0xc6, 0x58, 0xc0, 0xb6, 0x1a, 0x0c, 0xc1, 0xc4, 0x68, 0xe8, 0x68, 0xa4, 0xd0, 0xd0, 0xb2, 0xca, 0xeb, 0xf3, 0x50, 0xcc, 0x35, 0x5d, 0xb9, 0xf3, 0xb5, 0xe1, 0x6b, 0x54, 0xdb, 0x12, 0x0e, 0xc0, 0x07, 0xfb, 0xf6, 0x83, 0xf5, 0xb0, 0x30, 0x1a, 0x81, 0x22, 0x1c, 0x9c, 0xba, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1004 = { .name = "ecdh_brainpoolp384r1_1004", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1004_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1004_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 126 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1005 for ECDH, tcId is 137 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1005_peerpubkey[] = { 0x11, 0x14, 0x42, 0x03, 0xa5, 0x58, 0x05, 0x01, 0xcf, 0x22, 0x29, 0x96, 0x72, 0x82, 0x25, 0x1f, 0x35, 0xcc, 0x66, 0xeb, 0xb9, 0x78, 0xc8, 0xc5, 0xdf, 0x82, 0x1b, 0x11, 0xe3, 0x6f, 0x95, 0xd6, 0xba, 0xc1, 0xc6, 0xf9, 0x7b, 0x8e, 0x8d, 0x02, 0x6e, 0x88, 0xcc, 0x2a, 0x24, 0xfe, 0xc1, 0x6b, 0x43, 0x71, 0x4b, 0x10, 0xba, 0xa0, 0x62, 0xa0, 0x67, 0x12, 0x89, 0x87, 0x30, 0x54, 0x8a, 0x9a, 0x22, 0x90, 0xa9, 0x84, 0xef, 0x9a, 0x85, 0xd2, 0xef, 0xf1, 0x28, 0x90, 0x1d, 0xc0, 0xf1, 0x6b, 0xc5, 0x72, 0x31, 0xd2, 0x1d, 0xe6, 0x5e, 0x42, 0xf8, 0x4e, 0x42, 0xa4, 0x09, 0x42, 0x8e, 0xeb, }; static const unsigned char ecdh_brainpoolp384r1_1005_privkey[] = { 0x8c, 0x3b, 0xc6, 0x58, 0xc0, 0xb6, 0x1a, 0x0c, 0xc1, 0xc4, 0x68, 0xe8, 0x68, 0xa4, 0xd0, 0xd0, 0xb2, 0xca, 0xeb, 0xf3, 0x50, 0xcc, 0x35, 0x5d, 0xb9, 0xf3, 0xb5, 0xe1, 0x6b, 0x54, 0xdb, 0x12, 0x0e, 0xc0, 0x07, 0xfb, 0xf6, 0x83, 0xf5, 0xb0, 0x30, 0x1a, 0x81, 0x22, 0x1c, 0x9c, 0xba, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1005 = { .name = "ecdh_brainpoolp384r1_1005", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1005_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1005_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384t1, tcId is 137 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1006 for ECDH, tcId is 139 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1006_peerpubkey[] = { 0x66, 0xb8, 0x7a, 0x19, 0xf4, 0x7d, 0x77, 0x21, 0x30, 0x85, 0x5c, 0x64, 0xf1, 0xc1, 0xe4, 0x45, 0xb1, 0x9d, 0xe6, 0xf9, 0x17, 0xbb, 0x1c, 0x74, 0x19, 0x8e, 0xcd, 0xa9, 0x24, 0x71, 0x4d, 0x8c, 0x48, 0xe0, 0xcb, 0xea, 0xa7, 0x17, 0x45, 0x34, 0x08, 0xc3, 0x1c, 0x22, 0x0a, 0x67, 0x76, 0x93, }; static const unsigned char ecdh_brainpoolp384r1_1006_privkey[] = { 0x3c, 0x9f, 0x97, 0x0f, 0x25, 0xe6, 0x95, 0x1b, 0x29, 0x53, 0xdc, 0x37, 0xf5, 0x45, 0x8d, 0x5e, 0x11, 0x17, 0x6f, 0xb7, 0x94, 0xbb, 0x44, 0x3c, 0x67, 0x7a, 0xb6, 0x63, 0x8d, 0x00, 0x8e, 0xb3, 0x5a, 0xcf, 0xe8, 0x5d, 0x09, 0xfe, 0x70, 0x40, 0x0c, 0xd5, 0x2b, 0xb4, 0x7d, 0xa1, 0x3e, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1006 = { .name = "ecdh_brainpoolp384r1_1006", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1006_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1006_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 139 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1007 for ECDH, tcId is 140 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1007_peerpubkey[] = { 0x87, 0x86, 0x63, 0xe0, 0xdb, 0x7b, 0x8f, 0x0b, 0xf1, 0xf6, 0xf2, 0x4f, 0x15, 0x16, 0x0f, 0x05, 0x89, 0xda, 0x8f, 0x8f, 0x92, 0xec, 0x00, 0x0a, 0x57, 0x65, 0x73, 0x21, 0xc6, 0xe3, 0xc4, 0xec, 0x84, 0x5c, 0x97, 0x53, 0x6f, 0xd1, 0x0c, 0xad, 0x1a, 0xdc, 0x6e, 0x13, 0x41, 0x96, 0x8d, 0xd0, }; static const unsigned char ecdh_brainpoolp384r1_1007_privkey[] = { 0x84, 0xa6, 0xfb, 0x1f, 0x3f, 0x3c, 0x58, 0x3d, 0x09, 0x22, 0x49, 0x65, 0xf5, 0xa9, 0x6d, 0x7f, 0xb9, 0xb4, 0x4b, 0xfd, 0xaa, 0x15, 0xd0, 0x2a, 0x5c, 0xf7, 0xc9, 0x0e, 0x32, 0x11, 0x78, 0x01, 0x8a, 0x5c, 0xde, 0xe9, 0x3f, 0x61, 0x4e, 0xad, 0x73, 0x16, 0x92, 0xe7, 0x19, 0x18, 0xdb, 0xf3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1007 = { .name = "ecdh_brainpoolp384r1_1007", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1007_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1007_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 140 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1008 for ECDH, tcId is 141 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1008_peerpubkey[] = { 0x86, 0x7e, 0x44, 0xd4, 0x86, 0x46, 0x5a, 0x25, 0xb8, 0x27, 0x99, 0x2e, 0x1d, 0xe4, 0x0c, 0xd6, 0xea, 0xa2, 0x76, 0xab, 0xbc, 0xaa, 0x85, 0x2d, 0xb4, 0x23, 0x4b, 0xb3, 0xc5, 0xfa, 0x9f, 0x1c, 0x69, 0x56, 0xda, 0xf8, 0x46, 0x84, 0x5f, 0xe4, 0x86, 0x2c, 0x02, 0x58, 0x82, 0x87, 0x87, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_1008_privkey[] = { 0x58, 0xc9, 0xaf, 0xa8, 0x2e, 0x35, 0xc6, 0x43, 0x57, 0xc1, 0x3f, 0x5f, 0x2e, 0xfc, 0x4f, 0x9c, 0xbd, 0x0e, 0x65, 0xf7, 0x18, 0xe7, 0x0a, 0x9c, 0x6c, 0x77, 0xe7, 0x3b, 0xd7, 0xf9, 0x05, 0xab, 0x7d, 0xff, 0xc4, 0xc8, 0x23, 0x16, 0xa8, 0x87, 0xe1, 0xbd, 0x62, 0x5f, 0xa4, 0xfb, 0x71, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1008 = { .name = "ecdh_brainpoolp384r1_1008", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1008_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1008_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 141 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1009 for ECDH, tcId is 142 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1009_peerpubkey[] = { 0x04, 0x18, 0x49, 0x13, 0x9e, 0x19, 0x17, 0x47, 0xf1, 0x5e, 0x6b, 0x8f, 0x92, 0x46, 0x2e, 0x73, 0x1a, 0xe0, 0xc5, 0x7c, 0x40, 0x8b, 0x1e, 0x12, 0xab, 0x1b, 0xff, 0xe4, 0x34, 0x08, 0x10, 0x33, 0x78, 0x0b, 0x92, 0xb5, 0xac, 0x81, 0x86, 0x22, 0x63, 0x11, 0x7a, 0x08, 0x36, 0xd1, 0x80, 0xf5, }; static const unsigned char ecdh_brainpoolp384r1_1009_privkey[] = { 0x0c, 0x7b, 0x75, 0x97, 0xb1, 0xfc, 0x8f, 0x4f, 0x69, 0xb9, 0x0c, 0xb1, 0x64, 0xa4, 0x29, 0x5d, 0xd5, 0xb8, 0xbb, 0x3d, 0x7f, 0xee, 0x45, 0x88, 0xfc, 0xee, 0x79, 0xf2, 0xfa, 0x62, 0xc0, 0x7c, 0x2c, 0xc3, 0x5a, 0xc6, 0x87, 0x14, 0x38, 0x9e, 0x17, 0xc3, 0xa4, 0xb8, 0xe8, 0xa0, 0x7d, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1009 = { .name = "ecdh_brainpoolp384r1_1009", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1009_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1009_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 142 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1010 for ECDH, tcId is 143 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1010_peerpubkey[] = { 0x04, 0x18, 0x49, 0x13, 0x9e, 0x19, 0x17, 0x47, 0xf1, 0x5e, 0x6b, 0x8f, 0x92, 0x46, 0x2e, 0x73, 0x1a, 0xe0, 0xc5, 0x7c, 0x40, 0x8b, 0x1e, 0x12, 0xab, 0x1b, 0xff, 0xe4, 0x34, 0x08, 0x10, 0x33, 0x78, 0x0b, 0x92, 0xb5, 0xac, 0x81, 0x86, 0x22, 0x63, 0x11, 0x7a, 0x08, 0x36, 0xd1, 0x80, 0xf5, }; static const unsigned char ecdh_brainpoolp384r1_1010_privkey[] = { 0x0c, 0x7b, 0x75, 0x97, 0xb1, 0xfc, 0x8f, 0x4f, 0x69, 0xb9, 0x0c, 0xb1, 0x64, 0xa4, 0x29, 0x5d, 0xd5, 0xb8, 0xbb, 0x3d, 0x7f, 0xee, 0x45, 0x88, 0xfc, 0xee, 0x79, 0xf2, 0xfa, 0x62, 0xc0, 0x7c, 0x2c, 0xc3, 0x5a, 0xc6, 0x87, 0x14, 0x38, 0x9e, 0x17, 0xc3, 0xa4, 0xb8, 0xe8, 0xa0, 0x7d, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1010 = { .name = "ecdh_brainpoolp384r1_1010", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1010_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1010_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 143 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1011 for ECDH, tcId is 144 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1011_peerpubkey[] = { 0x86, 0x7e, 0x44, 0xd4, 0x86, 0x46, 0x5a, 0x25, 0xb8, 0x27, 0x99, 0x2e, 0x1d, 0xe4, 0x0c, 0xd6, 0xea, 0xa2, 0x76, 0xab, 0xbc, 0xaa, 0x85, 0x2d, 0xb4, 0x23, 0x4b, 0xb3, 0xc5, 0xfa, 0x9f, 0x1c, 0x69, 0x56, 0xda, 0xf8, 0x46, 0x84, 0x5f, 0xe4, 0x86, 0x2c, 0x02, 0x58, 0x82, 0x87, 0x87, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_1011_privkey[] = { 0x58, 0xc9, 0xaf, 0xa8, 0x2e, 0x35, 0xc6, 0x43, 0x57, 0xc1, 0x3f, 0x5f, 0x2e, 0xfc, 0x4f, 0x9c, 0xbd, 0x0e, 0x65, 0xf7, 0x18, 0xe7, 0x0a, 0x9c, 0x6c, 0x77, 0xe7, 0x3b, 0xd7, 0xf9, 0x05, 0xab, 0x7d, 0xff, 0xc4, 0xc8, 0x23, 0x16, 0xa8, 0x87, 0xe1, 0xbd, 0x62, 0x5f, 0xa4, 0xfb, 0x71, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1011 = { .name = "ecdh_brainpoolp384r1_1011", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1011_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1011_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 144 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1012 for ECDH, tcId is 145 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1012_peerpubkey[] = { 0x87, 0x86, 0x63, 0xe0, 0xdb, 0x7b, 0x8f, 0x0b, 0xf1, 0xf6, 0xf2, 0x4f, 0x15, 0x16, 0x0f, 0x05, 0x89, 0xda, 0x8f, 0x8f, 0x92, 0xec, 0x00, 0x0a, 0x57, 0x65, 0x73, 0x21, 0xc6, 0xe3, 0xc4, 0xec, 0x84, 0x5c, 0x97, 0x53, 0x6f, 0xd1, 0x0c, 0xad, 0x1a, 0xdc, 0x6e, 0x13, 0x41, 0x96, 0x8d, 0xd0, }; static const unsigned char ecdh_brainpoolp384r1_1012_privkey[] = { 0x84, 0xa6, 0xfb, 0x1f, 0x3f, 0x3c, 0x58, 0x3d, 0x09, 0x22, 0x49, 0x65, 0xf5, 0xa9, 0x6d, 0x7f, 0xb9, 0xb4, 0x4b, 0xfd, 0xaa, 0x15, 0xd0, 0x2a, 0x5c, 0xf7, 0xc9, 0x0e, 0x32, 0x11, 0x78, 0x01, 0x8a, 0x5c, 0xde, 0xe9, 0x3f, 0x61, 0x4e, 0xad, 0x73, 0x16, 0x92, 0xe7, 0x19, 0x18, 0xdb, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1012 = { .name = "ecdh_brainpoolp384r1_1012", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1012_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1012_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 145 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1013 for ECDH, tcId is 146 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1013_peerpubkey[] = { 0x7d, 0x96, 0x5d, 0x60, 0x4a, 0xad, 0x48, 0x77, 0x4b, 0x0c, 0x68, 0xab, 0xb9, 0xfe, 0xbf, 0xf3, 0xca, 0xb8, 0x18, 0xea, 0x48, 0x90, 0xbc, 0xb6, 0x16, 0x93, 0x85, 0x56, 0x82, 0x8a, 0xb7, 0x7d, 0xea, 0x4a, 0x08, 0x47, 0xad, 0x8d, 0x61, 0xeb, 0x43, 0xd8, 0x45, 0xc9, 0xec, 0x24, 0x1c, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_1013_privkey[] = { 0x37, 0xfb, 0x98, 0x4a, 0x7a, 0x82, 0x1d, 0x5a, 0x36, 0x60, 0xa9, 0x51, 0xb1, 0x9f, 0x88, 0xb2, 0xa9, 0x5d, 0xfc, 0x68, 0x84, 0xe0, 0x29, 0xbc, 0x5d, 0x99, 0x25, 0x1d, 0x9b, 0x2d, 0x1f, 0xf8, 0x8c, 0x57, 0xe0, 0xf9, 0xda, 0xb9, 0x4b, 0xd0, 0xfa, 0x13, 0x22, 0x1a, 0x15, 0x40, 0xca, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1013 = { .name = "ecdh_brainpoolp384r1_1013", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1013_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1013_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 146 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1014 for ECDH, tcId is 147 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1014_peerpubkey[] = { 0x11, 0x45, 0x5b, 0x9d, 0x35, 0x69, 0x78, 0x75, 0x15, 0x48, 0xed, 0x9b, 0xa3, 0x61, 0xf6, 0x72, 0xc4, 0x02, 0x15, 0xfe, 0x87, 0x3e, 0x5b, 0x27, 0x77, 0x0e, 0xce, 0x7d, 0x60, 0x70, 0x1f, 0xbf, 0x07, 0xe3, 0xf9, 0x5a, 0xb3, 0x88, 0x57, 0xeb, 0x87, 0x85, 0xde, 0x02, 0xb6, 0x9c, 0x35, 0x6c, }; static const unsigned char ecdh_brainpoolp384r1_1014_privkey[] = { 0x5e, 0x7b, 0xa1, 0xf7, 0x81, 0x20, 0x05, 0x95, 0x32, 0x91, 0xc6, 0xe5, 0xa7, 0x23, 0x6a, 0xbf, 0x5d, 0xcb, 0x32, 0xad, 0xdc, 0x97, 0xfa, 0x40, 0xd0, 0x6a, 0x6f, 0xc7, 0xa2, 0xa1, 0x99, 0x9a, 0x93, 0xb1, 0xd2, 0x24, 0xef, 0x85, 0xe3, 0x32, 0x7d, 0x7d, 0x2b, 0x3f, 0x7d, 0x90, 0x9e, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1014 = { .name = "ecdh_brainpoolp384r1_1014", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1014_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1014_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 147 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1015 for ECDH, tcId is 148 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1015_peerpubkey[] = { 0x53, 0x49, 0x86, 0x01, 0x44, 0xee, 0x64, 0x85, 0x9a, 0x8b, 0x01, 0x74, 0xc9, 0x5e, 0x5f, 0x91, 0xf3, 0x57, 0xcd, 0x38, 0xb2, 0x6d, 0x2b, 0xaf, 0xeb, 0x49, 0xdb, 0xd9, 0x12, 0xcd, 0x48, 0x04, 0xf1, 0xdc, 0x04, 0xc0, 0x70, 0x71, 0x99, 0xe1, 0x13, 0x08, 0x9f, 0x1d, 0xf2, 0x53, 0xa6, 0x29, }; static const unsigned char ecdh_brainpoolp384r1_1015_privkey[] = { 0x6f, 0xc5, 0x80, 0x97, 0x44, 0x37, 0x28, 0x3e, 0xa6, 0x08, 0x99, 0xaa, 0x7d, 0x4c, 0x81, 0x7e, 0xa8, 0x1d, 0x53, 0x32, 0xa8, 0x6b, 0xd9, 0xaf, 0x5b, 0xa2, 0xfb, 0x0e, 0x0c, 0x7c, 0x41, 0xb7, 0xa5, 0x23, 0xcc, 0xdd, 0xca, 0x46, 0xdd, 0xe6, 0x1b, 0x18, 0x09, 0xc9, 0x70, 0xf1, 0x72, 0x21, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1015 = { .name = "ecdh_brainpoolp384r1_1015", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1015_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1015_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 148 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1016 for ECDH, tcId is 149 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1016_peerpubkey[] = { 0x70, 0x59, 0x65, 0x40, 0x9e, 0xc3, 0x74, 0xf7, 0x4c, 0x51, 0xea, 0xd3, 0x60, 0x94, 0x43, 0xce, 0xf7, 0xdb, 0x7c, 0x87, 0x9c, 0x41, 0xdb, 0x0e, 0x28, 0xe1, 0x65, 0x6e, 0x26, 0xb2, 0x36, 0xb7, 0x4b, 0x99, 0xf9, 0x50, 0x68, 0x9f, 0xfa, 0xb7, 0x17, 0xd2, 0x4c, 0x8f, 0x97, 0x9f, 0x52, 0x31, }; static const unsigned char ecdh_brainpoolp384r1_1016_privkey[] = { 0x80, 0x6f, 0x6e, 0xb8, 0x07, 0xa2, 0x13, 0x93, 0x0b, 0x60, 0x44, 0x3b, 0xa0, 0x16, 0x4d, 0x22, 0x98, 0x5b, 0x70, 0xa2, 0x03, 0x4e, 0xdb, 0x59, 0xc3, 0x56, 0x39, 0xf5, 0x2d, 0x8e, 0x4d, 0xd9, 0x3e, 0xc5, 0x89, 0xa8, 0x3e, 0xe9, 0x00, 0x0e, 0x88, 0x13, 0xda, 0x13, 0x1f, 0x59, 0xa4, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1016 = { .name = "ecdh_brainpoolp384r1_1016", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1016_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1016_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 149 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1017 for ECDH, tcId is 150 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1017_peerpubkey[] = { 0x8a, 0xf7, 0x04, 0xd3, 0x91, 0x1f, 0xa5, 0xa7, 0xa5, 0xf6, 0xce, 0x54, 0x85, 0x64, 0x65, 0xca, 0xe4, 0xf2, 0xea, 0xc6, 0x9c, 0x84, 0xd2, 0xdf, 0xb1, 0xae, 0x16, 0x0b, 0x8d, 0xcd, 0x3b, 0x57, 0x79, 0x49, 0xc9, 0x72, 0x39, 0xe2, 0xe4, 0x20, 0x89, 0x64, 0x81, 0xc7, 0x6b, 0x5a, 0x44, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_1017_privkey[] = { 0x2e, 0x59, 0xb6, 0xc0, 0xee, 0x75, 0x13, 0x5d, 0x8d, 0xf1, 0x2b, 0x95, 0x37, 0xd6, 0xf0, 0x0b, 0x52, 0x81, 0x58, 0x51, 0x66, 0xa7, 0x70, 0x75, 0x85, 0x8c, 0x5e, 0x90, 0x58, 0xa8, 0xdb, 0xdc, 0x4a, 0x4b, 0x8d, 0x7c, 0xdb, 0x23, 0xcd, 0xa2, 0x42, 0x9e, 0x06, 0x9a, 0xd1, 0x9b, 0xe3, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1017 = { .name = "ecdh_brainpoolp384r1_1017", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1017_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1017_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 150 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1018 for ECDH, tcId is 151 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1018_peerpubkey[] = { 0x8a, 0xf7, 0x04, 0xd3, 0x91, 0x1f, 0xa5, 0xa7, 0xa5, 0xf6, 0xce, 0x54, 0x85, 0x64, 0x65, 0xca, 0xe4, 0xf2, 0xea, 0xc6, 0x9c, 0x84, 0xd2, 0xdf, 0xb1, 0xae, 0x16, 0x0b, 0x8d, 0xcd, 0x3b, 0x57, 0x79, 0x49, 0xc9, 0x72, 0x39, 0xe2, 0xe4, 0x20, 0x89, 0x64, 0x81, 0xc7, 0x6b, 0x5a, 0x44, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_1018_privkey[] = { 0x2e, 0x59, 0xb6, 0xc0, 0xee, 0x75, 0x13, 0x5d, 0x8d, 0xf1, 0x2b, 0x95, 0x37, 0xd6, 0xf0, 0x0b, 0x52, 0x81, 0x58, 0x51, 0x66, 0xa7, 0x70, 0x75, 0x85, 0x8c, 0x5e, 0x90, 0x58, 0xa8, 0xdb, 0xdc, 0x4a, 0x4b, 0x8d, 0x7c, 0xdb, 0x23, 0xcd, 0xa2, 0x42, 0x9e, 0x06, 0x9a, 0xd1, 0x9b, 0xe3, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1018 = { .name = "ecdh_brainpoolp384r1_1018", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1018_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1018_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 151 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1019 for ECDH, tcId is 152 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1019_peerpubkey[] = { 0x70, 0x59, 0x65, 0x40, 0x9e, 0xc3, 0x74, 0xf7, 0x4c, 0x51, 0xea, 0xd3, 0x60, 0x94, 0x43, 0xce, 0xf7, 0xdb, 0x7c, 0x87, 0x9c, 0x41, 0xdb, 0x0e, 0x28, 0xe1, 0x65, 0x6e, 0x26, 0xb2, 0x36, 0xb7, 0x4b, 0x99, 0xf9, 0x50, 0x68, 0x9f, 0xfa, 0xb7, 0x17, 0xd2, 0x4c, 0x8f, 0x97, 0x9f, 0x52, 0x31, }; static const unsigned char ecdh_brainpoolp384r1_1019_privkey[] = { 0x80, 0x6f, 0x6e, 0xb8, 0x07, 0xa2, 0x13, 0x93, 0x0b, 0x60, 0x44, 0x3b, 0xa0, 0x16, 0x4d, 0x22, 0x98, 0x5b, 0x70, 0xa2, 0x03, 0x4e, 0xdb, 0x59, 0xc3, 0x56, 0x39, 0xf5, 0x2d, 0x8e, 0x4d, 0xd9, 0x3e, 0xc5, 0x89, 0xa8, 0x3e, 0xe9, 0x00, 0x0e, 0x88, 0x13, 0xda, 0x13, 0x1f, 0x59, 0xa4, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1019 = { .name = "ecdh_brainpoolp384r1_1019", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1019_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1019_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 152 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1020 for ECDH, tcId is 153 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1020_peerpubkey[] = { 0x53, 0x49, 0x86, 0x01, 0x44, 0xee, 0x64, 0x85, 0x9a, 0x8b, 0x01, 0x74, 0xc9, 0x5e, 0x5f, 0x91, 0xf3, 0x57, 0xcd, 0x38, 0xb2, 0x6d, 0x2b, 0xaf, 0xeb, 0x49, 0xdb, 0xd9, 0x12, 0xcd, 0x48, 0x04, 0xf1, 0xdc, 0x04, 0xc0, 0x70, 0x71, 0x99, 0xe1, 0x13, 0x08, 0x9f, 0x1d, 0xf2, 0x53, 0xa6, 0x29, }; static const unsigned char ecdh_brainpoolp384r1_1020_privkey[] = { 0x6f, 0xc5, 0x80, 0x97, 0x44, 0x37, 0x28, 0x3e, 0xa6, 0x08, 0x99, 0xaa, 0x7d, 0x4c, 0x81, 0x7e, 0xa8, 0x1d, 0x53, 0x32, 0xa8, 0x6b, 0xd9, 0xaf, 0x5b, 0xa2, 0xfb, 0x0e, 0x0c, 0x7c, 0x41, 0xb7, 0xa5, 0x23, 0xcc, 0xdd, 0xca, 0x46, 0xdd, 0xe6, 0x1b, 0x18, 0x09, 0xc9, 0x70, 0xf1, 0x72, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1020 = { .name = "ecdh_brainpoolp384r1_1020", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1020_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1020_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 153 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1021 for ECDH, tcId is 154 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1021_peerpubkey[] = { 0x11, 0x45, 0x5b, 0x9d, 0x35, 0x69, 0x78, 0x75, 0x15, 0x48, 0xed, 0x9b, 0xa3, 0x61, 0xf6, 0x72, 0xc4, 0x02, 0x15, 0xfe, 0x87, 0x3e, 0x5b, 0x27, 0x77, 0x0e, 0xce, 0x7d, 0x60, 0x70, 0x1f, 0xbf, 0x07, 0xe3, 0xf9, 0x5a, 0xb3, 0x88, 0x57, 0xeb, 0x87, 0x85, 0xde, 0x02, 0xb6, 0x9c, 0x35, 0x6c, }; static const unsigned char ecdh_brainpoolp384r1_1021_privkey[] = { 0x5e, 0x7b, 0xa1, 0xf7, 0x81, 0x20, 0x05, 0x95, 0x32, 0x91, 0xc6, 0xe5, 0xa7, 0x23, 0x6a, 0xbf, 0x5d, 0xcb, 0x32, 0xad, 0xdc, 0x97, 0xfa, 0x40, 0xd0, 0x6a, 0x6f, 0xc7, 0xa2, 0xa1, 0x99, 0x9a, 0x93, 0xb1, 0xd2, 0x24, 0xef, 0x85, 0xe3, 0x32, 0x7d, 0x7d, 0x2b, 0x3f, 0x7d, 0x90, 0x9e, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1021 = { .name = "ecdh_brainpoolp384r1_1021", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1021_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1021_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 154 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1022 for ECDH, tcId is 155 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1022_peerpubkey[] = { 0x7d, 0x96, 0x5d, 0x60, 0x4a, 0xad, 0x48, 0x77, 0x4b, 0x0c, 0x68, 0xab, 0xb9, 0xfe, 0xbf, 0xf3, 0xca, 0xb8, 0x18, 0xea, 0x48, 0x90, 0xbc, 0xb6, 0x16, 0x93, 0x85, 0x56, 0x82, 0x8a, 0xb7, 0x7d, 0xea, 0x4a, 0x08, 0x47, 0xad, 0x8d, 0x61, 0xeb, 0x43, 0xd8, 0x45, 0xc9, 0xec, 0x24, 0x1c, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_1022_privkey[] = { 0x37, 0xfb, 0x98, 0x4a, 0x7a, 0x82, 0x1d, 0x5a, 0x36, 0x60, 0xa9, 0x51, 0xb1, 0x9f, 0x88, 0xb2, 0xa9, 0x5d, 0xfc, 0x68, 0x84, 0xe0, 0x29, 0xbc, 0x5d, 0x99, 0x25, 0x1d, 0x9b, 0x2d, 0x1f, 0xf8, 0x8c, 0x57, 0xe0, 0xf9, 0xda, 0xb9, 0x4b, 0xd0, 0xfa, 0x13, 0x22, 0x1a, 0x15, 0x40, 0xca, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1022 = { .name = "ecdh_brainpoolp384r1_1022", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1022_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1022_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 155 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1023 for ECDH, tcId is 156 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1023_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1023_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1023_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1023 = { .name = "ecdh_brainpoolp384r1_1023", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1023_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1023_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1023_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of sequence, tcId is 156 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1024 for ECDH, tcId is 157 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1024_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1024_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1024_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1024 = { .name = "ecdh_brainpoolp384r1_1024", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1024_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1024_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1024_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of sequence, tcId is 157 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1025 for ECDH, tcId is 158 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1025_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1025_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1025_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1025 = { .name = "ecdh_brainpoolp384r1_1025", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1025_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1025_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1025_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of sequence contains leading 0, tcId is 158 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1026 for ECDH, tcId is 159 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1026_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1026_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1026_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1026 = { .name = "ecdh_brainpoolp384r1_1026", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1026_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1026_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1026_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of sequence contains leading 0, tcId is 159 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1027 for ECDH, tcId is 193 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1027_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1027_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1027_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1027 = { .name = "ecdh_brainpoolp384r1_1027", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1027_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1027_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1027_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to sequence, tcId is 193 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1028 for ECDH, tcId is 194 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1028_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1028_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1028_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1028 = { .name = "ecdh_brainpoolp384r1_1028", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1028_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1028_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1028_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to sequence, tcId is 194 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1029 for ECDH, tcId is 223 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1029_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1029_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1029_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1029 = { .name = "ecdh_brainpoolp384r1_1029", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1029_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1029_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1029_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing sequence with NULL, tcId is 223 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1030 for ECDH, tcId is 226 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1030_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1030_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1030_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1030 = { .name = "ecdh_brainpoolp384r1_1030", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1030_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1030_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1030_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of sequence, tcId is 226 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1031 for ECDH, tcId is 231 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1031_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1031_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1031_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1031 = { .name = "ecdh_brainpoolp384r1_1031", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1031_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1031_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1031_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of sequence, tcId is 231 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1032 for ECDH, tcId is 235 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1032_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1032_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1032_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1032 = { .name = "ecdh_brainpoolp384r1_1032", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1032_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1032_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1032_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "dropping value of sequence, tcId is 235 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1033 for ECDH, tcId is 253 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1033_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1033_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1033_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1033 = { .name = "ecdh_brainpoolp384r1_1033", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1033_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1033_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1033_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepend empty sequence, tcId is 253 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1034 for ECDH, tcId is 254 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1034_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1034_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1034_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1034 = { .name = "ecdh_brainpoolp384r1_1034", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1034_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1034_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1034_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "append empty sequence, tcId is 254 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1035 for ECDH, tcId is 255 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1035_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1035_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1035_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1035 = { .name = "ecdh_brainpoolp384r1_1035", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1035_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1035_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1035_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "append empty sequence, tcId is 255 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1036 for ECDH, tcId is 259 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1036_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1036_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1036_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1036 = { .name = "ecdh_brainpoolp384r1_1036", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1036_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1036_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1036_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "sequence of sequence, tcId is 259 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1037 for ECDH, tcId is 261 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1037_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1037_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1037_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1037 = { .name = "ecdh_brainpoolp384r1_1037", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1037_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1037_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1037_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 261 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1038 for ECDH, tcId is 262 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1038_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1038_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1038_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1038 = { .name = "ecdh_brainpoolp384r1_1038", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1038_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1038_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1038_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "repeating element in sequence, tcId is 262 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1039 for ECDH, tcId is 263 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1039_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1039_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1039_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1039 = { .name = "ecdh_brainpoolp384r1_1039", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1039_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1039_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1039_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "repeating element in sequence, tcId is 263 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1040 for ECDH, tcId is 264 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1040_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1040_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1040_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1040 = { .name = "ecdh_brainpoolp384r1_1040", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1040_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1040_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1040_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of oid, tcId is 264 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1041 for ECDH, tcId is 265 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1041_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1041_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1041_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1041 = { .name = "ecdh_brainpoolp384r1_1041", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1041_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1041_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1041_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of oid, tcId is 265 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1042 for ECDH, tcId is 266 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1042_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1042_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1042_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1042 = { .name = "ecdh_brainpoolp384r1_1042", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1042_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1042_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1042_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of oid contains leading 0, tcId is 266 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1043 for ECDH, tcId is 267 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1043_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1043_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1043_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1043 = { .name = "ecdh_brainpoolp384r1_1043", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1043_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1043_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1043_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of oid contains leading 0, tcId is 267 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1044 for ECDH, tcId is 286 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1044_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1044_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1044_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1044 = { .name = "ecdh_brainpoolp384r1_1044", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1044_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1044_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1044_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "removing oid, tcId is 286 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1045 for ECDH, tcId is 289 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1045_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1045_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1045_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1045 = { .name = "ecdh_brainpoolp384r1_1045", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1045_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1045_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1045_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending 0's to oid, tcId is 289 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1046 for ECDH, tcId is 290 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1046_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1046_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1046_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1046 = { .name = "ecdh_brainpoolp384r1_1046", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1046_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1046_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1046_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending 0's to oid, tcId is 290 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1047 for ECDH, tcId is 291 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1047_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1047_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1047_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1047 = { .name = "ecdh_brainpoolp384r1_1047", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1047_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1047_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1047_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to oid, tcId is 291 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1048 for ECDH, tcId is 292 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1048_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1048_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1048_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1048 = { .name = "ecdh_brainpoolp384r1_1048", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1048_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1048_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1048_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to oid, tcId is 292 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1049 for ECDH, tcId is 294 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1049_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1049_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1049_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1049 = { .name = "ecdh_brainpoolp384r1_1049", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1049_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1049_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1049_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to oid, tcId is 294 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1050 for ECDH, tcId is 295 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1050_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1050_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1050_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1050 = { .name = "ecdh_brainpoolp384r1_1050", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1050_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1050_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1050_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to oid, tcId is 295 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1051 for ECDH, tcId is 298 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1051_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1051_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1051_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1051 = { .name = "ecdh_brainpoolp384r1_1051", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1051_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1051_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1051_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing oid with NULL, tcId is 298 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1052 for ECDH, tcId is 299 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1052_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1052_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1052_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1052 = { .name = "ecdh_brainpoolp384r1_1052", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1052_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1052_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1052_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing oid with NULL, tcId is 299 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1053 for ECDH, tcId is 300 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1053_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1053_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1053_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1053 = { .name = "ecdh_brainpoolp384r1_1053", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1053_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1053_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1053_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 300 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1054 for ECDH, tcId is 302 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1054_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1054_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1054_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1054 = { .name = "ecdh_brainpoolp384r1_1054", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1054_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1054_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1054_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 302 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1055 for ECDH, tcId is 305 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1055_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1055_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1055_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1055 = { .name = "ecdh_brainpoolp384r1_1055", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1055_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1055_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1055_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 305 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1056 for ECDH, tcId is 307 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1056_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1056_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1056_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1056 = { .name = "ecdh_brainpoolp384r1_1056", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1056_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1056_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1056_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 307 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1057 for ECDH, tcId is 312 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1057_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1057_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1057_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1057 = { .name = "ecdh_brainpoolp384r1_1057", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1057_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1057_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1057_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "modify first byte of oid, tcId is 312 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1058 for ECDH, tcId is 313 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1058_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1058_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1058_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1058 = { .name = "ecdh_brainpoolp384r1_1058", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1058_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1058_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1058_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "modify first byte of oid, tcId is 313 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1059 for ECDH, tcId is 316 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1059_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1059_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1059_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1059 = { .name = "ecdh_brainpoolp384r1_1059", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1059_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1059_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1059_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 316 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1060 for ECDH, tcId is 317 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1060_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1060_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1060_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1060 = { .name = "ecdh_brainpoolp384r1_1060", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1060_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1060_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1060_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 317 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1061 for ECDH, tcId is 318 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1061_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1061_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1061_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1061 = { .name = "ecdh_brainpoolp384r1_1061", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1061_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1061_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1061_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 318 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1062 for ECDH, tcId is 319 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1062_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1062_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1062_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1062 = { .name = "ecdh_brainpoolp384r1_1062", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1062_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1062_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1062_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 319 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1063 for ECDH, tcId is 320 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1063_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1063_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1063_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1063 = { .name = "ecdh_brainpoolp384r1_1063", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1063_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1063_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1063_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 320 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1064 for ECDH, tcId is 321 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1064_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1064_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1064_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1064 = { .name = "ecdh_brainpoolp384r1_1064", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1064_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1064_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1064_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 321 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1065 for ECDH, tcId is 322 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1065_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1065_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1065_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1065 = { .name = "ecdh_brainpoolp384r1_1065", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1065_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1065_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1065_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 322 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1066 for ECDH, tcId is 323 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1066_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1066_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1066_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1066 = { .name = "ecdh_brainpoolp384r1_1066", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1066_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1066_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1066_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 323 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1067 for ECDH, tcId is 324 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1067_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1067_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1067_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1067 = { .name = "ecdh_brainpoolp384r1_1067", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1067_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1067_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1067_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "longer oid, tcId is 324 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1068 for ECDH, tcId is 325 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1068_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1068_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1068_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1068 = { .name = "ecdh_brainpoolp384r1_1068", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1068_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1068_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1068_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "longer oid, tcId is 325 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1069 for ECDH, tcId is 326 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1069_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1069_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1069_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1069 = { .name = "ecdh_brainpoolp384r1_1069", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1069_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1069_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1069_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 326 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1070 for ECDH, tcId is 327 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1070_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1070_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1070_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1070 = { .name = "ecdh_brainpoolp384r1_1070", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1070_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1070_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1070_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 327 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1071 for ECDH, tcId is 328 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1071_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1071_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1071_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1071 = { .name = "ecdh_brainpoolp384r1_1071", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1071_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1071_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1071_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 328 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1072 for ECDH, tcId is 329 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1072_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1072_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1072_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1072 = { .name = "ecdh_brainpoolp384r1_1072", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1072_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1072_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1072_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 329 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1073 for ECDH, tcId is 330 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1073_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1073_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1073_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1073 = { .name = "ecdh_brainpoolp384r1_1073", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1073_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1073_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1073_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "large integer in oid, tcId is 330 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1074 for ECDH, tcId is 331 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1074_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1074_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1074_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1074 = { .name = "ecdh_brainpoolp384r1_1074", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1074_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1074_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1074_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "large integer in oid, tcId is 331 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1075 for ECDH, tcId is 336 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1075_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1075_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1075_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1075 = { .name = "ecdh_brainpoolp384r1_1075", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1075_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1075_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1075_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of bit string, tcId is 336 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1076 for ECDH, tcId is 337 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1076_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1076_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1076_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1076 = { .name = "ecdh_brainpoolp384r1_1076", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1076_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1076_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1076_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of bit string contains leading 0, tcId is 337 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1077 for ECDH, tcId is 349 in file ecdh_brainpoolP384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1077_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_1077_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1077_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1077 = { .name = "ecdh_brainpoolp384r1_1077", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1077_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1077_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1077_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to bit string, tcId is 349 in file ecdh_brainpoolP384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1078 for ECDH, tcId is 360 in file ecdh_brainpoolP384r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_1078_peerpubkey[] = { 0x8a, 0x9d, 0x9c, 0x6e, 0x35, 0x56, 0xad, 0x8a, 0x5e, 0x9a, 0xe1, 0xe3, 0x8a, 0xd4, 0x77, 0x7e, 0x1b, 0xa2, 0x7a, 0x48, 0xcb, 0xa5, 0x3e, 0x62, 0x0d, 0x50, 0xe5, 0x5d, 0xab, 0xe5, 0xf5, 0xac, 0x35, 0x78, 0x0e, 0x9b, 0xab, 0xdb, 0x17, 0xc9, 0x0c, 0x01, 0xcb, 0x3c, 0x7f, 0x43, 0x34, 0x11, 0x61, 0xe7, 0x84, 0x07, 0x51, 0x44, 0x73, 0x0d, 0xd2, 0x06, 0xc8, 0x83, 0x68, 0x0a, 0x43, 0x94, 0x0a, 0xf6, 0x66, 0x20, 0x7a, 0x46, 0x6c, 0x51, 0x24, 0x36, 0xe5, 0x3b, 0x5c, 0xa7, 0xf7, 0x71, 0x3b, 0x9d, 0x97, 0xed, 0x9b, 0x1a, 0x6c, 0xb0, 0xa4, 0xe5, 0x59, 0xa4, 0x36, 0x37, 0x16, 0x4d, }; static const unsigned char ecdh_brainpoolp384r1_1078_privkey[] = { 0x14, 0xe3, 0x81, 0x48, 0x32, 0x0c, 0x86, 0x93, 0x1a, 0x22, 0xf9, 0x9e, 0x6b, 0xd5, 0xdd, 0x86, 0xd3, 0x0e, 0x3b, 0xa9, 0x37, 0xd3, 0x74, 0x5d, 0xf4, 0x0d, 0x50, 0xfa, 0xfb, 0x73, 0x81, 0x25, 0xde, 0x9b, 0xed, 0x33, 0x84, 0xce, 0xcc, 0x32, 0x17, 0x69, 0x24, 0xbb, 0x58, 0x58, 0x74, 0xe6, }; static const unsigned char ecdh_brainpoolp384r1_1078_sharedsecret[] = { 0x27, 0x67, 0xd7, 0x62, 0xb1, 0x03, 0x0a, 0x78, 0x75, 0xc8, 0xa0, 0x8e, 0x8c, 0x3a, 0xf1, 0x26, 0xb2, 0xa9, 0x8b, 0x46, 0xde, 0x1a, 0xf2, 0xdc, 0xa4, 0x58, 0x72, 0x69, 0xdb, 0x4c, 0xc6, 0xeb, 0xa2, 0xa5, 0x01, 0x36, 0x0c, 0x4d, 0x58, 0x57, 0xcd, 0x0d, 0xce, 0xe8, 0x29, 0x06, 0x8f, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_1078 = { .name = "ecdh_brainpoolp384r1_1078", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_1078_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_1078_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_1078_sharedsecret, .sharedsecretlen = 48, .result = -1, .comment = "modify last byte of bit string, tcId is 360 in file ecdh_brainpoolP384r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 1079 for ECDH, tcId is 1 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1079_peerpubkey[] = { 0x8a, 0x73, 0xa6, 0x66, 0x05, 0xa5, 0xdb, 0x25, 0x2e, 0xf4, 0x18, 0xff, 0x2c, 0x43, 0x96, 0x9b, 0xd4, 0x12, 0x81, 0x87, 0xce, 0x43, 0x1c, 0x36, 0xa3, 0x3d, 0x3f, 0xf3, 0x03, 0x4c, 0xf8, 0x91, 0x0f, 0xb0, 0x02, 0x1c, 0xe8, 0x49, 0x72, 0x36, 0x21, 0x19, 0x9d, 0x0d, 0x7e, 0xa4, 0x80, 0x5f, 0x3c, 0xda, 0xb8, 0x2f, 0x6c, 0x90, 0x92, 0x57, 0x76, 0x2d, 0xa2, 0xa9, 0x7e, 0x26, 0x30, 0x5b, 0x07, 0x8c, 0x1f, 0xd7, 0x91, 0xfa, 0x95, 0x7e, 0x97, 0x5e, 0x30, 0xdf, 0x5b, 0x87, 0x60, 0x54, 0x75, 0x82, 0x67, 0x12, 0x9e, 0x49, 0x74, 0xa0, 0x83, 0x37, 0x2b, 0x0c, 0xe0, 0x71, 0x18, 0x0d, 0x05, 0xe1, 0x97, 0x8b, 0xd9, 0x0b, 0x84, 0x07, 0xc0, 0xa7, 0xff, 0x7f, 0x66, 0x51, 0xbd, 0x3f, 0xfc, 0xf1, 0xa5, 0x74, 0xdf, 0xe9, 0x5a, 0x2e, 0x8a, 0xf3, 0x86, 0x6c, 0xbb, 0x38, 0x5d, 0x21, }; static const unsigned char ecdh_brainpoolp512r1_1079_privkey[] = { 0x62, 0x80, 0xeb, 0x95, 0x40, 0x5f, 0xa8, 0xc0, 0xe9, 0xd9, 0x70, 0x54, 0x73, 0x01, 0xbb, 0xef, 0xb1, 0x52, 0xc8, 0xc8, 0x11, 0x4a, 0xbc, 0x73, 0x0c, 0x89, 0xbf, 0x6d, 0xb3, 0xf7, 0xd9, 0x49, 0xfc, 0xfd, 0x7e, 0xbb, 0x82, 0xfd, 0x2d, 0xbd, 0x43, 0xd2, 0x8d, 0x47, 0xbf, 0x4e, 0xd9, 0x5d, 0xe9, 0x7b, 0xae, 0xd1, 0x9f, 0x7d, 0x08, 0x7c, 0xf3, 0x03, 0xd2, 0xb0, 0xcd, 0x41, 0x37, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_1079_sharedsecret[] = { 0x96, 0x90, 0x12, 0x0e, 0xdf, 0x3c, 0x58, 0x3f, 0x62, 0x77, 0x74, 0xac, 0x28, 0x37, 0xf7, 0x92, 0xe1, 0x04, 0x9b, 0x37, 0x68, 0x19, 0x9e, 0x3c, 0xc6, 0x8c, 0x75, 0xcc, 0x16, 0xf7, 0x3d, 0x4e, 0xca, 0x82, 0x8f, 0x87, 0x88, 0x0d, 0xe9, 0x1e, 0x2f, 0xbe, 0x06, 0x71, 0xb7, 0x06, 0x6f, 0xcc, 0x81, 0x4c, 0xb2, 0xe1, 0x90, 0x83, 0x2a, 0xda, 0xe3, 0xa6, 0xdc, 0x7d, 0x9d, 0x9e, 0x71, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1079 = { .name = "ecdh_brainpoolp512r1_1079", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1079_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1079_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1079_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1080 for ECDH, tcId is 2 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1080_peerpubkey[] = { 0x8a, 0x73, 0xa6, 0x66, 0x05, 0xa5, 0xdb, 0x25, 0x2e, 0xf4, 0x18, 0xff, 0x2c, 0x43, 0x96, 0x9b, 0xd4, 0x12, 0x81, 0x87, 0xce, 0x43, 0x1c, 0x36, 0xa3, 0x3d, 0x3f, 0xf3, 0x03, 0x4c, 0xf8, 0x91, 0x0f, 0xb0, 0x02, 0x1c, 0xe8, 0x49, 0x72, 0x36, 0x21, 0x19, 0x9d, 0x0d, 0x7e, 0xa4, 0x80, 0x5f, 0x3c, 0xda, 0xb8, 0x2f, 0x6c, 0x90, 0x92, 0x57, 0x76, 0x2d, 0xa2, 0xa9, 0x7e, 0x26, 0x30, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_1080_privkey[] = { 0x62, 0x80, 0xeb, 0x95, 0x40, 0x5f, 0xa8, 0xc0, 0xe9, 0xd9, 0x70, 0x54, 0x73, 0x01, 0xbb, 0xef, 0xb1, 0x52, 0xc8, 0xc8, 0x11, 0x4a, 0xbc, 0x73, 0x0c, 0x89, 0xbf, 0x6d, 0xb3, 0xf7, 0xd9, 0x49, 0xfc, 0xfd, 0x7e, 0xbb, 0x82, 0xfd, 0x2d, 0xbd, 0x43, 0xd2, 0x8d, 0x47, 0xbf, 0x4e, 0xd9, 0x5d, 0xe9, 0x7b, 0xae, 0xd1, 0x9f, 0x7d, 0x08, 0x7c, 0xf3, 0x03, 0xd2, 0xb0, 0xcd, 0x41, 0x37, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_1080_sharedsecret[] = { 0x96, 0x90, 0x12, 0x0e, 0xdf, 0x3c, 0x58, 0x3f, 0x62, 0x77, 0x74, 0xac, 0x28, 0x37, 0xf7, 0x92, 0xe1, 0x04, 0x9b, 0x37, 0x68, 0x19, 0x9e, 0x3c, 0xc6, 0x8c, 0x75, 0xcc, 0x16, 0xf7, 0x3d, 0x4e, 0xca, 0x82, 0x8f, 0x87, 0x88, 0x0d, 0xe9, 0x1e, 0x2f, 0xbe, 0x06, 0x71, 0xb7, 0x06, 0x6f, 0xcc, 0x81, 0x4c, 0xb2, 0xe1, 0x90, 0x83, 0x2a, 0xda, 0xe3, 0xa6, 0xdc, 0x7d, 0x9d, 0x9e, 0x71, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1080 = { .name = "ecdh_brainpoolp512r1_1080", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1080_peerpubkey, .peerpubkeylen = 64, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1080_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1080_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1081 for ECDH, tcId is 3 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1081_peerpubkey[] = { 0x1c, 0x32, 0x35, 0x10, 0x25, 0x8b, 0x85, 0x8d, 0x9a, 0x99, 0x6f, 0xe6, 0x44, 0xe2, 0xd1, 0x16, 0xca, 0x36, 0x07, 0x26, 0xc5, 0x1a, 0x54, 0xe0, 0xaa, 0x69, 0xe8, 0x8e, 0xf8, 0x16, 0xf2, 0x05, 0x77, 0x34, 0x9a, 0xe1, 0xf2, 0xf2, 0x02, 0xff, 0x40, 0xc4, 0x99, 0xbd, 0xae, 0x42, 0x74, 0xbc, 0xfd, 0x50, 0x2f, 0x73, 0x6c, 0xf8, 0x2f, 0x43, 0xac, 0xfc, 0xa5, 0x56, 0x49, 0xe9, 0xfa, 0xaa, 0x88, 0x26, 0x3c, 0xd1, 0x61, 0xa1, 0xa6, 0x55, 0x5e, 0xe0, 0x24, 0x93, 0x63, 0xb5, 0x37, 0xc8, 0xf2, 0xe2, 0xee, 0x80, 0x94, 0x3f, 0x4b, 0x16, 0x28, 0x93, 0xfc, 0x96, 0x40, 0xd5, 0x4a, 0x8e, 0x7b, 0x99, 0x7a, 0xd2, 0x02, 0xa9, 0xb7, 0x23, 0xc3, 0xa0, 0x89, 0x29, 0xd5, 0x72, 0x07, 0x6e, 0x3c, 0x85, 0xad, 0xec, 0x08, 0x9d, 0xa1, 0x50, 0x78, 0x61, 0x75, 0x8d, 0x47, 0xe4, 0x1e, 0xc2, }; static const unsigned char ecdh_brainpoolp512r1_1081_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1081_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1081 = { .name = "ecdh_brainpoolp512r1_1081", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1081_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1081_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1081_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1082 for ECDH, tcId is 4 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1082_peerpubkey[] = { 0x38, 0xa0, 0xc7, 0x65, 0x40, 0x91, 0x00, 0xf0, 0xa8, 0x31, 0x38, 0x7b, 0xa4, 0x6f, 0xbc, 0xda, 0x63, 0x95, 0x6d, 0xf0, 0xf0, 0x0e, 0x77, 0x61, 0x5b, 0x33, 0x24, 0x9e, 0x1a, 0x73, 0xd1, 0x31, 0x0b, 0xb2, 0x27, 0x84, 0xe0, 0x9e, 0x3f, 0xae, 0xce, 0x0b, 0xfa, 0x6e, 0xd5, 0xc0, 0xfa, 0x07, 0x7c, 0x8a, 0x62, 0x66, 0x42, 0x21, 0xcc, 0xb5, 0x96, 0xc9, 0xef, 0xa2, 0xae, 0xbe, 0xb3, 0xea, 0x93, 0x7d, 0xac, 0xea, 0x2e, 0xe4, 0xfc, 0x26, 0x1e, 0x29, 0xaf, 0x0b, 0x64, 0xec, 0x5b, 0x4a, 0x8f, 0x0f, 0xba, 0xfe, 0x74, 0x70, 0xd7, 0x15, 0xc1, 0xef, 0xfd, 0x46, 0x3e, 0xca, 0x68, 0x34, 0x4e, 0xa7, 0x44, 0x6a, 0x88, 0xe5, 0x87, 0x4e, 0xbb, 0x1a, 0x0f, 0xaa, 0xb7, 0xec, 0x0d, 0x36, 0xd2, 0x03, 0xbe, 0xce, 0x10, 0x5a, 0x11, 0xed, 0xad, 0xb0, 0x0e, 0x93, 0xab, 0x0d, 0xd8, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_1082_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1082_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1082 = { .name = "ecdh_brainpoolp512r1_1082", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1082_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1082_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1082_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1083 for ECDH, tcId is 5 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1083_peerpubkey[] = { 0x5f, 0x65, 0xb9, 0x86, 0x16, 0x10, 0x9b, 0x88, 0xfe, 0xcb, 0x4c, 0xc1, 0xe6, 0x39, 0xe9, 0x8d, 0x21, 0x09, 0xbd, 0x69, 0x6a, 0x14, 0xb9, 0x21, 0xa2, 0x45, 0xf2, 0x65, 0xee, 0xad, 0x9c, 0x44, 0xee, 0xe4, 0xd1, 0x9d, 0x16, 0x2e, 0xbb, 0x97, 0x2e, 0xec, 0xdb, 0xba, 0xe1, 0xc3, 0xb5, 0xd6, 0x83, 0xe8, 0xa2, 0x16, 0x38, 0x61, 0x26, 0x77, 0x95, 0x84, 0x0e, 0x79, 0xbd, 0x4e, 0x08, 0xfb, 0x25, 0xa4, 0x72, 0x71, 0x7d, 0x16, 0x75, 0x87, 0x16, 0x50, 0x60, 0x00, 0x3c, 0x77, 0xf8, 0xd3, 0x33, 0x9b, 0x90, 0x86, 0x13, 0x06, 0x3e, 0x5c, 0xd1, 0xab, 0xf0, 0xe2, 0x0f, 0x41, 0x72, 0xfd, 0x30, 0x99, 0xf8, 0xbb, 0x96, 0xbc, 0x26, 0xa8, 0x41, 0x37, 0xbe, 0x2f, 0x34, 0x1e, 0xd6, 0xc1, 0xd9, 0x1c, 0x11, 0xef, 0x31, 0x11, 0xb4, 0xcf, 0x75, 0x17, 0x0d, 0x2d, 0xb5, 0x9b, 0xd7, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_1083_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1083_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1083 = { .name = "ecdh_brainpoolp512r1_1083", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1083_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1083_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1083_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1084 for ECDH, tcId is 6 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1084_peerpubkey[] = { 0x40, 0x69, 0xf3, 0xa9, 0x4d, 0xed, 0x3b, 0xc3, 0x7d, 0x32, 0xcd, 0x2c, 0xba, 0xc2, 0x9e, 0xcb, 0x33, 0xb3, 0xaa, 0xd1, 0x95, 0xd9, 0xac, 0x57, 0x96, 0x51, 0x28, 0xa5, 0xa8, 0xa4, 0xec, 0x27, 0x28, 0xdb, 0x23, 0xe8, 0x5b, 0x42, 0x13, 0xc6, 0x0d, 0xb4, 0x09, 0xa7, 0x76, 0x61, 0xf6, 0x07, 0x56, 0xab, 0xe7, 0xd9, 0xed, 0xd7, 0x05, 0x7a, 0x12, 0x45, 0x3a, 0x19, 0x20, 0x2c, 0x54, 0x28, 0x8b, 0xa5, 0x86, 0x59, 0xb7, 0xb3, 0x7d, 0x74, 0xa8, 0x01, 0x09, 0xfc, 0x48, 0x4e, 0xfd, 0xf9, 0x16, 0x8c, 0x21, 0x21, 0xb7, 0xae, 0xad, 0x8f, 0x5f, 0xe0, 0x2d, 0x48, 0x3b, 0x51, 0xf1, 0xf2, 0x13, 0x38, 0x41, 0x89, 0x92, 0x4b, 0x63, 0x05, 0x0f, 0xcd, 0xad, 0x57, 0xd2, 0xc4, 0xdb, 0xc5, 0xc3, 0x1c, 0x4c, 0x15, 0xe1, 0x90, 0x1b, 0x51, 0x92, 0x70, 0x84, 0x10, 0xe1, 0x60, 0xc3, 0x56, }; static const unsigned char ecdh_brainpoolp512r1_1084_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1084_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1084 = { .name = "ecdh_brainpoolp512r1_1084", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1084_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1084_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1084_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1085 for ECDH, tcId is 7 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1085_peerpubkey[] = { 0x28, 0xe7, 0x87, 0x8a, 0x20, 0xa0, 0x24, 0x12, 0x1e, 0x36, 0x33, 0x9b, 0xb0, 0xcc, 0x67, 0xe6, 0xe4, 0xca, 0xac, 0xd5, 0x4e, 0x13, 0xed, 0xe6, 0xd7, 0xad, 0x4c, 0x73, 0x38, 0x5b, 0x61, 0x25, 0xbf, 0xef, 0xe8, 0xf8, 0xe1, 0xce, 0x95, 0xd2, 0xd3, 0x2b, 0x95, 0x61, 0x32, 0xa9, 0x1d, 0x7c, 0x2e, 0x09, 0xc3, 0x99, 0xab, 0x93, 0x82, 0x28, 0xaa, 0x16, 0xfd, 0xd2, 0xd7, 0x48, 0x75, 0x2c, 0x0a, 0x87, 0xe5, 0x83, 0x38, 0x4d, 0x45, 0x31, 0xd1, 0x6f, 0x5e, 0x59, 0xde, 0xbb, 0x36, 0x91, 0xfc, 0xdc, 0x91, 0xe3, 0x5e, 0x9a, 0x9a, 0x6c, 0x4a, 0xdc, 0xd0, 0x20, 0xf3, 0xde, 0xf3, 0x93, 0x1b, 0x53, 0x9c, 0xba, 0xe2, 0x41, 0x4b, 0xdc, 0xc4, 0xe3, 0x56, 0x88, 0x37, 0x9f, 0xfd, 0xe0, 0x7a, 0x09, 0x91, 0x73, 0x0c, 0x57, 0x83, 0x14, 0x1a, 0xf7, 0xf8, 0x7f, 0xdd, 0xae, 0x07, 0x0a, }; static const unsigned char ecdh_brainpoolp512r1_1085_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1085_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1085 = { .name = "ecdh_brainpoolp512r1_1085", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1085_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1085_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1085_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1086 for ECDH, tcId is 8 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1086_peerpubkey[] = { 0x28, 0x30, 0xff, 0x4e, 0x16, 0x15, 0x0d, 0xed, 0x71, 0x67, 0x83, 0x3c, 0x6b, 0xdb, 0x7d, 0xaf, 0x11, 0xde, 0x99, 0x44, 0x8f, 0x4e, 0x60, 0xe0, 0xc7, 0x75, 0xf4, 0x6e, 0x3a, 0x44, 0xb8, 0x55, 0x99, 0x14, 0x8f, 0x94, 0x4f, 0xb6, 0xeb, 0xd8, 0x60, 0x9e, 0xb2, 0x34, 0x2c, 0xc8, 0x65, 0x24, 0xe9, 0x89, 0x72, 0x6e, 0xe6, 0xb9, 0xf0, 0x27, 0x8f, 0xfc, 0x36, 0x80, 0x4b, 0x77, 0x5e, 0x85, 0x88, 0x1a, 0xee, 0xa8, 0x38, 0x83, 0x1b, 0x2d, 0x0a, 0x70, 0x2a, 0x88, 0x7b, 0xa5, 0xb5, 0x49, 0xb8, 0x2c, 0xe5, 0x54, 0x38, 0x57, 0x33, 0x9f, 0xee, 0x34, 0x25, 0x36, 0x87, 0x59, 0xca, 0xd4, 0x14, 0x32, 0x12, 0x9a, 0x18, 0x7d, 0xc3, 0x7e, 0x6a, 0x28, 0x74, 0x3f, 0xd1, 0xdd, 0xa1, 0x02, 0x8f, 0xcc, 0xd9, 0xb8, 0xf2, 0xc0, 0xd4, 0x4f, 0x8f, 0x91, 0x46, 0xe4, 0x84, 0x01, 0xb8, 0x98, }; static const unsigned char ecdh_brainpoolp512r1_1086_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1086_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1086 = { .name = "ecdh_brainpoolp512r1_1086", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1086_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1086_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1086_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1087 for ECDH, tcId is 9 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1087_peerpubkey[] = { 0x03, 0xd1, 0xfa, 0x25, 0x62, 0xf3, 0xb6, 0xc6, 0x3a, 0x86, 0x73, 0x1c, 0x25, 0x19, 0x95, 0x6a, 0xab, 0x59, 0x9d, 0x17, 0x00, 0x3d, 0xee, 0xdf, 0xd6, 0x7b, 0x7f, 0x3e, 0xed, 0x74, 0x90, 0x36, 0xaa, 0xe5, 0xc0, 0xa1, 0x10, 0xe9, 0xbc, 0x76, 0x74, 0x63, 0x09, 0x3e, 0x59, 0x7e, 0x61, 0xe3, 0xbd, 0xc2, 0x40, 0x78, 0x28, 0x6e, 0x87, 0xe6, 0x84, 0xda, 0x1c, 0x4a, 0x05, 0x14, 0xb1, 0x68, 0x68, 0xda, 0x15, 0x6d, 0x11, 0x22, 0xb4, 0x7f, 0x01, 0xf6, 0x3f, 0xad, 0x23, 0x4f, 0x09, 0x46, 0x0f, 0x8f, 0x36, 0xf3, 0x1a, 0xca, 0x05, 0x99, 0x91, 0x75, 0x1e, 0xf7, 0xa5, 0x53, 0x36, 0x58, 0x42, 0xea, 0xe9, 0x81, 0x4c, 0x26, 0x32, 0x49, 0xc0, 0x09, 0x3c, 0x91, 0x96, 0x22, 0xa2, 0xd4, 0xf9, 0x6b, 0x7f, 0x59, 0x14, 0x95, 0x56, 0x78, 0x88, 0xd1, 0x0d, 0x0b, 0x1b, 0xb8, 0x0f, 0x82, }; static const unsigned char ecdh_brainpoolp512r1_1087_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1087_sharedsecret[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1087 = { .name = "ecdh_brainpoolp512r1_1087", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1087_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1087_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1087_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1088 for ECDH, tcId is 10 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1088_peerpubkey[] = { 0x9a, 0x4e, 0xf2, 0x96, 0x67, 0x8f, 0x88, 0xe8, 0x48, 0xa9, 0x39, 0xe3, 0xb5, 0xe9, 0x3f, 0x94, 0x8e, 0x82, 0x1c, 0xbe, 0x3c, 0x5e, 0xc2, 0x03, 0x6d, 0x43, 0x57, 0x86, 0x76, 0x21, 0x2b, 0xc4, 0x99, 0x7f, 0x47, 0x9a, 0x22, 0x55, 0x13, 0x99, 0x02, 0xf0, 0x3a, 0x97, 0x7e, 0x30, 0x42, 0x82, 0xb0, 0x67, 0x78, 0xe8, 0x6a, 0xc5, 0xe3, 0xe5, 0xea, 0x71, 0xe6, 0xfc, 0x43, 0x01, 0x59, 0x74, 0x55, 0x5d, 0xe2, 0x94, 0xd1, 0x22, 0x7f, 0xa3, 0x16, 0x5f, 0xcd, 0x83, 0x94, 0x98, 0xdf, 0xc4, 0xa6, 0xdc, 0x73, 0xca, 0xb0, 0x31, 0x3e, 0x92, 0x41, 0xa0, 0x26, 0xa0, 0x76, 0x82, 0x32, 0x86, 0xac, 0xb9, 0x5b, 0x3b, 0x4b, 0x29, 0x33, 0x84, 0x48, 0xdf, 0x31, 0xe9, 0xf9, 0x1a, 0x96, 0x9a, 0xe9, 0x84, 0x49, 0xff, 0xd8, 0x71, 0xba, 0x27, 0x34, 0x42, 0xb6, 0xee, 0xc0, 0xc9, 0x21, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1088_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1088_sharedsecret[] = { 0x30, 0x91, 0x81, 0x9f, 0x59, 0x96, 0x71, 0xa0, 0xd2, 0x1d, 0x86, 0x6e, 0xba, 0x2d, 0x54, 0x0a, 0xe0, 0xa4, 0x72, 0xbe, 0x02, 0x52, 0xd3, 0x79, 0x2b, 0xc5, 0xbb, 0x98, 0x4d, 0x20, 0xa8, 0xdf, 0xaa, 0x18, 0x75, 0xe6, 0xd0, 0x52, 0x64, 0x61, 0x55, 0x45, 0xd2, 0xae, 0x78, 0xb9, 0xb5, 0xac, 0xb6, 0x96, 0xfd, 0xf1, 0x68, 0x0a, 0x05, 0xcd, 0x38, 0x2d, 0x83, 0xec, 0xef, 0x25, 0x28, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1088 = { .name = "ecdh_brainpoolp512r1_1088", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1088_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1088_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1088_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1089 for ECDH, tcId is 11 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1089_peerpubkey[] = { 0x9e, 0x4b, 0x91, 0x45, 0x04, 0x41, 0x11, 0x31, 0x7c, 0x7b, 0xf1, 0x69, 0x7b, 0x94, 0x28, 0xf7, 0x16, 0xb0, 0x22, 0xd1, 0x03, 0x5b, 0x1c, 0x87, 0x81, 0xcb, 0xd7, 0xcd, 0x35, 0x27, 0xb1, 0x36, 0xf0, 0xf9, 0x5d, 0xf1, 0xbe, 0x06, 0x27, 0x72, 0x1a, 0x4f, 0x6a, 0x56, 0xc0, 0x04, 0x14, 0x9f, 0x34, 0x00, 0xc8, 0xb0, 0xcc, 0xc1, 0x42, 0xcd, 0x38, 0x2d, 0x60, 0xca, 0x25, 0x0d, 0xb1, 0xf0, 0x41, 0x0b, 0x69, 0x75, 0xe5, 0xea, 0x63, 0x35, 0x8f, 0x5d, 0x1e, 0xa1, 0x63, 0xf4, 0x2a, 0xe3, 0x74, 0x4e, 0x89, 0xca, 0x9d, 0x22, 0xe2, 0x4d, 0xbc, 0x4d, 0xc7, 0xa0, 0x5e, 0xc4, 0x30, 0x04, 0x66, 0xfb, 0x43, 0x6a, 0x18, 0x58, 0x07, 0xb3, 0x33, 0x83, 0x48, 0x4c, 0x56, 0x2d, 0x5b, 0x65, 0xcd, 0x57, 0xf6, 0xf0, 0x6f, 0xbf, 0xf3, 0xee, 0xe8, 0xe8, 0x32, 0xf8, 0x16, 0xca, 0xe5, 0x3d, }; static const unsigned char ecdh_brainpoolp512r1_1089_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1089_sharedsecret[] = { 0x33, 0x9f, 0x77, 0xdb, 0x58, 0xbb, 0x17, 0xaf, 0xd4, 0x05, 0x95, 0x55, 0xb0, 0x59, 0x21, 0x48, 0x89, 0x77, 0x19, 0x82, 0xd9, 0x6f, 0x13, 0x19, 0xc9, 0x95, 0x14, 0x04, 0xc6, 0x09, 0x09, 0xbc, 0x10, 0xbc, 0xec, 0x2f, 0x7d, 0xc6, 0xe5, 0x6d, 0xf4, 0x48, 0x89, 0xc1, 0x92, 0x4a, 0x30, 0x4b, 0xdf, 0xa7, 0xaa, 0x19, 0xd5, 0x62, 0xf4, 0x9c, 0xfb, 0x3a, 0xcd, 0x40, 0x91, 0x00, 0xba, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1089 = { .name = "ecdh_brainpoolp512r1_1089", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1089_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1089_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1089_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1090 for ECDH, tcId is 12 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1090_peerpubkey[] = { 0x36, 0xa0, 0xb2, 0x25, 0x06, 0xa1, 0x3c, 0x46, 0xfb, 0x9c, 0x8d, 0x52, 0xd1, 0x12, 0xd9, 0x04, 0xd6, 0xd9, 0x3e, 0x26, 0x0d, 0xfd, 0xd6, 0x1f, 0x68, 0x0d, 0x32, 0x2d, 0x5a, 0xd6, 0xdc, 0x13, 0x0d, 0x9d, 0xf4, 0x48, 0xee, 0xde, 0x20, 0xff, 0x73, 0xce, 0x94, 0xdb, 0xc7, 0xca, 0x10, 0xa8, 0x9a, 0x49, 0xf5, 0x4c, 0x76, 0xc3, 0x0e, 0x77, 0x18, 0x51, 0xf0, 0xa4, 0x1d, 0x6d, 0x52, 0x5f, 0x18, 0x30, 0x41, 0x37, 0xd7, 0x91, 0xf2, 0x23, 0xbe, 0x08, 0x81, 0x38, 0x63, 0x65, 0x23, 0xbd, 0xe5, 0xc1, 0x36, 0x68, 0x5a, 0xb6, 0xbb, 0x2b, 0xfa, 0xea, 0xcf, 0x95, 0x78, 0x41, 0x0b, 0x3b, 0xa9, 0xe2, 0x60, 0x83, 0xb8, 0x0b, 0x36, 0xa2, 0x3b, 0x7e, 0x27, 0xed, 0x30, 0x70, 0x69, 0x29, 0x95, 0xe4, 0x50, 0x04, 0xd5, 0xd4, 0xba, 0xc4, 0xed, 0x40, 0x9c, 0xec, 0x36, 0xfc, 0xa2, 0xed, }; static const unsigned char ecdh_brainpoolp512r1_1090_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1090_sharedsecret[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1090 = { .name = "ecdh_brainpoolp512r1_1090", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1090_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1090_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1090_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1091 for ECDH, tcId is 13 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1091_peerpubkey[] = { 0x95, 0x50, 0x69, 0xed, 0xb4, 0xb6, 0x2d, 0xc4, 0x8e, 0x0c, 0x41, 0x92, 0x4f, 0x96, 0x44, 0xbf, 0x85, 0xaf, 0x18, 0x01, 0xb2, 0x17, 0x32, 0xa6, 0x4c, 0xbf, 0xcf, 0x7c, 0xc3, 0xbf, 0xec, 0x91, 0x4d, 0x0c, 0xd8, 0xbf, 0xc8, 0xfb, 0x33, 0x4a, 0x94, 0xfd, 0x34, 0x88, 0xc4, 0x4d, 0xfc, 0xe0, 0xe5, 0xee, 0xe3, 0x24, 0xda, 0x83, 0xcb, 0x90, 0x3b, 0x71, 0xed, 0x47, 0xac, 0xdd, 0x13, 0x65, 0x88, 0x1e, 0xde, 0x88, 0x2c, 0x97, 0x8e, 0xc5, 0x41, 0xf3, 0x9f, 0x4b, 0x29, 0xd5, 0x15, 0xef, 0x83, 0x6c, 0x77, 0xd0, 0x4b, 0x51, 0x2c, 0xdc, 0x45, 0xbd, 0xff, 0x50, 0x5b, 0xff, 0xa3, 0x9d, 0x39, 0xe2, 0xe9, 0xe3, 0xc4, 0xa6, 0x56, 0x6b, 0x83, 0x5c, 0x32, 0x61, 0x06, 0xc7, 0x63, 0x8e, 0x3d, 0x07, 0xe7, 0xdd, 0xdb, 0x33, 0x31, 0xc5, 0xd3, 0x7d, 0x7f, 0xda, 0xae, 0xdf, 0xeb, 0x49, }; static const unsigned char ecdh_brainpoolp512r1_1091_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1091_sharedsecret[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1091 = { .name = "ecdh_brainpoolp512r1_1091", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1091_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1091_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1091_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1092 for ECDH, tcId is 14 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1092_peerpubkey[] = { 0x6e, 0xcd, 0x48, 0xb1, 0x71, 0x54, 0x8d, 0x97, 0xb3, 0x68, 0xa7, 0x78, 0x39, 0x5b, 0x74, 0x84, 0xec, 0x4c, 0x97, 0x10, 0x96, 0x3a, 0x6f, 0xdb, 0x10, 0x73, 0x22, 0xa9, 0x36, 0xdf, 0xcf, 0xde, 0xef, 0x2c, 0x5d, 0x1b, 0xaa, 0xb8, 0x1e, 0x7d, 0xa6, 0x3a, 0x3f, 0x67, 0xa7, 0x13, 0x89, 0xb8, 0x36, 0x4a, 0xad, 0xdc, 0xa6, 0xf6, 0x5b, 0xfb, 0xe0, 0xd8, 0x88, 0x7f, 0x8c, 0x5b, 0xb7, 0x16, 0x81, 0x1c, 0x8f, 0xfe, 0xae, 0x8c, 0xd3, 0x9e, 0x3c, 0x6a, 0xc2, 0xa0, 0xd8, 0xab, 0x9e, 0x51, 0x11, 0x35, 0xc2, 0x34, 0x3a, 0xb0, 0xe0, 0xfa, 0xe8, 0xa0, 0x7f, 0xd9, 0x97, 0x92, 0x63, 0x77, 0xbb, 0xd7, 0x3c, 0x03, 0x08, 0x82, 0x09, 0xd0, 0x99, 0xcd, 0x33, 0x60, 0x9a, 0x17, 0x07, 0xa3, 0xeb, 0x1a, 0xd0, 0xab, 0xdc, 0x68, 0xb9, 0xb8, 0x2c, 0x65, 0x9c, 0x2e, 0x51, 0xd2, 0xec, 0xd1, }; static const unsigned char ecdh_brainpoolp512r1_1092_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1092_sharedsecret[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1092 = { .name = "ecdh_brainpoolp512r1_1092", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1092_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1092_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1092_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1093 for ECDH, tcId is 15 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1093_peerpubkey[] = { 0x11, 0x6e, 0x13, 0xc1, 0x3a, 0xd7, 0x1c, 0x9f, 0x85, 0x28, 0x28, 0x95, 0x53, 0xbb, 0x71, 0xf8, 0xfe, 0xeb, 0x05, 0xd0, 0xb1, 0xb2, 0x1d, 0xca, 0xd5, 0xb9, 0xe4, 0xc0, 0x02, 0x63, 0x9d, 0xd9, 0xd8, 0x34, 0xf8, 0x0d, 0x49, 0x7e, 0xb2, 0xaf, 0x64, 0x3c, 0xae, 0xb2, 0x8f, 0x9e, 0x82, 0xb6, 0xdb, 0xb1, 0xe2, 0xcd, 0x5a, 0x78, 0x5a, 0xff, 0x8f, 0x14, 0x49, 0x44, 0xb6, 0xab, 0xff, 0x18, 0x8b, 0xf2, 0x86, 0xae, 0xba, 0x04, 0x57, 0xea, 0x25, 0x6e, 0x1d, 0xca, 0x33, 0x2b, 0xbe, 0xc2, 0xd4, 0x64, 0x73, 0x51, 0x94, 0x28, 0xd2, 0x98, 0x00, 0x2a, 0x51, 0x85, 0x14, 0xd9, 0xc9, 0xeb, 0x8f, 0x08, 0x78, 0xf9, 0xaf, 0xe0, 0xff, 0x1b, 0xb2, 0x96, 0x94, 0x49, 0xbe, 0x2a, 0x7e, 0xbb, 0x11, 0x5f, 0x6a, 0x75, 0x3e, 0x5e, 0xde, 0xad, 0x6d, 0x7e, 0x01, 0x51, 0x4b, 0x71, 0x8c, 0x36, }; static const unsigned char ecdh_brainpoolp512r1_1093_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1093_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1093 = { .name = "ecdh_brainpoolp512r1_1093", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1093_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1093_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1093_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1094 for ECDH, tcId is 16 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1094_peerpubkey[] = { 0x63, 0x87, 0xf1, 0x4a, 0x6d, 0xb2, 0xec, 0x86, 0xd9, 0xdc, 0xf4, 0x56, 0x18, 0xce, 0xde, 0x48, 0x61, 0x87, 0x04, 0x5a, 0x33, 0xfe, 0xc8, 0x5f, 0xe1, 0x1c, 0xab, 0xeb, 0x93, 0xa6, 0x12, 0x42, 0x68, 0x2a, 0x93, 0x9b, 0xa6, 0xc7, 0x82, 0x1e, 0x4d, 0xa3, 0x60, 0x3a, 0x0f, 0xfb, 0x5e, 0x9d, 0x4f, 0x81, 0xee, 0x96, 0x62, 0xfb, 0x3e, 0x62, 0xd8, 0x65, 0xf1, 0x09, 0x03, 0xc6, 0x9e, 0xb5, 0x51, 0x77, 0xcc, 0x26, 0x37, 0x14, 0xf0, 0x91, 0x51, 0x18, 0x42, 0xb7, 0x71, 0x5c, 0x43, 0x4b, 0x8a, 0xad, 0x1b, 0x32, 0x27, 0x3a, 0xf5, 0x74, 0xcf, 0xff, 0x44, 0x01, 0x8c, 0xe7, 0x8a, 0xd8, 0x1e, 0x69, 0x9c, 0x44, 0x03, 0x36, 0x3e, 0xd5, 0xc3, 0x92, 0xbd, 0x6a, 0xf7, 0xd2, 0xc0, 0xa9, 0x07, 0xb5, 0x75, 0x89, 0x3f, 0x8e, 0xad, 0x5c, 0xa9, 0xfb, 0xfb, 0x12, 0x62, 0x7f, 0xb3, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_1094_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1094_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1094 = { .name = "ecdh_brainpoolp512r1_1094", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1094_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1094_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1094_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1095 for ECDH, tcId is 17 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1095_peerpubkey[] = { 0x27, 0x38, 0x95, 0xea, 0x59, 0x7f, 0xb3, 0x30, 0xf9, 0xef, 0x29, 0xc6, 0x16, 0x79, 0xd5, 0x7b, 0x49, 0x4a, 0xba, 0x7a, 0x22, 0xef, 0x54, 0xf8, 0xed, 0xba, 0xc8, 0xa8, 0xb6, 0x5a, 0xd6, 0xf9, 0x1b, 0x44, 0xc2, 0xa8, 0xc5, 0xf8, 0x62, 0xf4, 0x2f, 0xad, 0xf6, 0x8b, 0x44, 0xfc, 0x7a, 0x08, 0x6b, 0x12, 0xe8, 0xd4, 0xeb, 0x7a, 0x61, 0xd6, 0x3f, 0x77, 0x10, 0x89, 0x29, 0xf6, 0xab, 0xf4, 0x2d, 0x69, 0xe7, 0x3c, 0x49, 0xc1, 0xb4, 0xd8, 0xcb, 0xa5, 0xfd, 0x20, 0x06, 0x32, 0x39, 0x1d, 0x7b, 0x33, 0xc6, 0x86, 0xb2, 0x00, 0x35, 0x81, 0xbc, 0x65, 0x68, 0xea, 0xe8, 0xd0, 0xd7, 0xb7, 0xfa, 0x6c, 0x69, 0xdc, 0x73, 0x24, 0x94, 0xa5, 0xc1, 0x6e, 0xa7, 0x60, 0x5f, 0xf2, 0x4b, 0xb6, 0x81, 0x8a, 0x49, 0xca, 0xab, 0x16, 0x1a, 0x4d, 0xd5, 0x38, 0x76, 0xa6, 0x46, 0x64, 0x4f, 0x4d, }; static const unsigned char ecdh_brainpoolp512r1_1095_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_1095_sharedsecret[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1095 = { .name = "ecdh_brainpoolp512r1_1095", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1095_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1095_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1095_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1096 for ECDH, tcId is 18 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1096_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x5d, 0xd3, 0xad, 0x1b, 0x6a, 0x38, 0x0e, 0xff, 0x32, 0xbc, 0xcd, 0x94, 0x79, 0x57, 0xf3, 0xac, 0xd6, 0x0d, 0x5a, 0x6d, 0xf1, 0x8e, 0xd9, 0xa4, 0xd6, 0x76, 0xc1, 0x92, 0x41, 0x23, 0x57, 0x6c, 0x95, 0x9a, 0xe8, 0x47, 0x3d, 0xe2, 0x24, 0xca, 0x26, 0x2d, 0x45, 0x6e, 0x8d, 0x51, 0xf6, 0xda, 0x36, 0xea, 0xae, 0x8e, 0x3d, 0xfc, 0x0e, 0x91, 0x4a, 0xfd, 0xb1, 0xbc, 0x55, 0x27, 0x96, }; static const unsigned char ecdh_brainpoolp512r1_1096_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1096_sharedsecret[] = { 0xa4, 0x67, 0xeb, 0x14, 0xc4, 0x6a, 0x4f, 0x70, 0xea, 0x53, 0xaa, 0xf9, 0xe0, 0xb6, 0x42, 0xac, 0xc3, 0x8f, 0x2e, 0x3f, 0x26, 0x4f, 0xed, 0xd8, 0x4b, 0xdd, 0x08, 0x2b, 0xab, 0x3b, 0x64, 0xe1, 0xc7, 0xcd, 0xaa, 0x52, 0x1c, 0x9b, 0xcc, 0x66, 0x39, 0x1a, 0x7b, 0x88, 0x39, 0xe6, 0x2a, 0xfe, 0xba, 0x33, 0x25, 0xc6, 0xd1, 0x23, 0x86, 0xa4, 0xfd, 0x8f, 0xe0, 0x5d, 0xc5, 0x42, 0x47, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1096 = { .name = "ecdh_brainpoolp512r1_1096", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1096_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1096_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1096_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 18 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1097 for ECDH, tcId is 19 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1097_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x52, 0x01, 0x52, 0x6a, 0xc9, 0xed, 0x34, 0xd5, 0x12, 0x82, 0xdf, 0x1a, 0x59, 0x4a, 0x55, 0x3b, 0xf6, 0xf0, 0x7a, 0x90, 0xe3, 0x26, 0x8f, 0xca, 0x9a, 0x9b, 0x3a, 0x77, 0x43, 0x24, 0xb0, 0xe3, 0xee, 0x55, 0xc3, 0x51, 0x74, 0x8a, 0xc1, 0x8f, 0x73, 0x01, 0xbc, 0x56, 0x06, 0x23, 0xae, 0x78, 0x46, 0xf9, 0x7f, 0x57, 0x6c, 0xce, 0x3c, 0xa8, 0x16, 0x98, 0x02, 0x9c, 0x38, 0x95, 0x62, }; static const unsigned char ecdh_brainpoolp512r1_1097_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1097_sharedsecret[] = { 0x13, 0x62, 0xfe, 0xfd, 0xf9, 0x17, 0x31, 0x62, 0xca, 0xe5, 0xe7, 0xa0, 0x29, 0xe3, 0x77, 0x4f, 0xbe, 0xf0, 0x08, 0x2c, 0x33, 0xb5, 0xd1, 0x99, 0x59, 0xb2, 0xa4, 0xb5, 0x65, 0x3a, 0xcc, 0x9f, 0x61, 0x59, 0x17, 0x05, 0x81, 0x96, 0xf1, 0xc5, 0x9c, 0x29, 0xce, 0x05, 0x4e, 0x4c, 0x2e, 0x5b, 0x03, 0x5b, 0xe7, 0x27, 0x99, 0x1e, 0x61, 0x86, 0x04, 0x56, 0x2e, 0x83, 0x7a, 0x45, 0x2f, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1097 = { .name = "ecdh_brainpoolp512r1_1097", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1097_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1097_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1097_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 19 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1098 for ECDH, tcId is 20 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1098_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x51, 0x06, 0xe9, 0x12, 0xf8, 0x12, 0x4a, 0x95, 0x9d, 0xfc, 0x5c, 0xcb, 0xb9, 0x97, 0x86, 0xd5, 0x4a, 0xf8, 0x77, 0xfe, 0x53, 0x9e, 0x66, 0x4a, 0xa0, 0x36, 0x2a, 0x4d, 0x41, 0x7d, 0x1c, 0x4a, 0xe6, 0x47, 0xdd, 0xf4, 0x0c, 0x8c, 0x2c, 0xc6, 0xac, 0x6b, 0x0f, 0x35, 0x16, 0x4e, 0x24, 0xa1, 0xc6, 0x4a, 0x5f, 0x23, 0x0f, 0xc6, 0x1e, 0x23, 0x18, 0xc9, 0x38, 0x7f, 0xc1, 0x54, 0x7c, 0x4c, }; static const unsigned char ecdh_brainpoolp512r1_1098_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1098_sharedsecret[] = { 0x60, 0x96, 0x6e, 0x75, 0x0b, 0xcc, 0x09, 0x81, 0x07, 0xe6, 0xa6, 0x6e, 0x8f, 0x5a, 0x07, 0x41, 0xe7, 0xee, 0xc2, 0xc7, 0xe7, 0x65, 0x53, 0xdf, 0x95, 0x69, 0xfb, 0xe0, 0xd2, 0x8a, 0xfd, 0x8c, 0xb1, 0xba, 0x80, 0xa6, 0xaa, 0x8e, 0x7a, 0x84, 0xbe, 0x66, 0x8d, 0xc6, 0xe2, 0x34, 0x63, 0xd0, 0x88, 0x32, 0xb8, 0x9b, 0xd0, 0x92, 0xa4, 0xae, 0x83, 0x8f, 0xd2, 0x28, 0x43, 0x6c, 0x14, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1098 = { .name = "ecdh_brainpoolp512r1_1098", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1098_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1098_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1098_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 20 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1099 for ECDH, tcId is 21 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1099_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc8, 0x6f, 0x4f, 0xd8, 0xb1, 0x38, 0xac, 0x55, 0x09, 0xa4, 0x17, 0x4b, 0xd4, 0x99, 0x8e, 0x1b, 0x4d, 0x3d, 0x49, 0xde, 0x88, 0xd3, 0x7e, 0x38, 0xdc, 0xaa, 0x74, 0xf9, 0xc4, 0x2f, 0x3e, 0x37, 0xb7, 0xf7, 0xbe, 0x77, 0xcf, 0x53, 0x22, 0x51, 0x4a, 0x87, 0x99, 0x84, 0xe4, 0x4b, 0x4a, 0x3c, 0xae, 0xd5, 0x66, 0xab, 0x68, 0x74, 0xb1, 0xa7, 0x81, 0x29, 0x2e, 0x7e, 0xf7, 0x91, 0xa6, }; static const unsigned char ecdh_brainpoolp512r1_1099_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1099_sharedsecret[] = { 0x22, 0x69, 0x45, 0x87, 0xdd, 0xf8, 0xe8, 0xc6, 0x7a, 0x98, 0x9e, 0xd4, 0xc1, 0x38, 0x6f, 0x92, 0x78, 0x97, 0xa6, 0xb9, 0x66, 0x4a, 0xa4, 0xc9, 0x39, 0xd7, 0x4a, 0x59, 0x7e, 0xc5, 0xe6, 0x62, 0xf1, 0x8a, 0x28, 0xc0, 0xd7, 0x46, 0xa4, 0x18, 0x36, 0x1c, 0xcf, 0x95, 0xd8, 0xd5, 0x02, 0xe0, 0x90, 0x1b, 0x94, 0x65, 0xa6, 0xcf, 0x82, 0x26, 0xa4, 0xf7, 0x30, 0xf1, 0x66, 0x02, 0x1a, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1099 = { .name = "ecdh_brainpoolp512r1_1099", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1099_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1099_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1099_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1100 for ECDH, tcId is 22 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1100_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x3a, 0xa5, 0xdb, 0xaa, 0xa0, 0x57, 0xf9, 0x98, 0x7e, 0x2e, 0x49, 0x5a, 0x2d, 0xa3, 0x49, 0xf5, 0xd3, 0x0b, 0x64, 0x49, 0x9c, 0xf5, 0x05, 0xe1, 0xa5, 0x1b, 0xe9, 0xa8, 0x2d, 0xb1, 0xb7, 0x5c, 0xee, 0x63, 0x96, 0x05, 0xd9, 0x8f, 0x67, 0x2c, 0x42, 0x95, 0x50, 0x7e, 0x77, 0x8b, 0x2c, 0xe1, 0x6d, 0x22, 0x9c, 0x5f, 0xb3, 0x3d, 0xa4, 0xf5, 0xa3, 0x7c, 0x0c, 0x97, 0xa0, 0x28, 0xfb, 0xde, }; static const unsigned char ecdh_brainpoolp512r1_1100_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1100_sharedsecret[] = { 0x4c, 0xbf, 0x67, 0xa6, 0xee, 0xed, 0x2d, 0x8b, 0xa1, 0xdb, 0x4f, 0x9a, 0xe2, 0xcf, 0xfe, 0x04, 0xf1, 0x95, 0xe4, 0xca, 0xc0, 0x01, 0x5b, 0x69, 0x4f, 0x22, 0x8e, 0xfb, 0xc4, 0xd6, 0x39, 0x6d, 0xd2, 0x1b, 0x75, 0xea, 0x58, 0x74, 0x26, 0xcf, 0x04, 0x3f, 0x16, 0x5a, 0xec, 0x50, 0x55, 0x35, 0xe4, 0xb2, 0x12, 0x5c, 0xdb, 0xf2, 0x0f, 0x56, 0xb7, 0xe0, 0x58, 0xcf, 0x97, 0x1a, 0x61, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1100 = { .name = "ecdh_brainpoolp512r1_1100", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1100_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1100_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1100_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1101 for ECDH, tcId is 23 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1101_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x3e, 0x35, 0xce, 0x50, 0x92, 0x1f, 0xe7, 0xb4, 0x5a, 0x53, 0x45, 0x26, 0x90, 0xea, 0x83, 0x98, 0x10, 0x9e, 0x90, 0xb0, 0x98, 0x57, 0x38, 0xe7, 0x75, 0xee, 0x45, 0xc5, 0x26, 0x6b, 0x13, 0x85, 0xdc, 0x19, 0x98, 0x95, 0x6a, 0xe6, 0xe9, 0x27, 0xa0, 0x62, 0xf9, 0x9d, 0x37, 0x29, 0x01, 0x2c, 0x14, 0xf5, 0x52, 0xdc, 0x17, 0x26, 0x7f, 0xcc, 0xdf, 0x63, 0x4d, 0x0d, 0x3e, 0xb3, 0xac, 0xf1, }; static const unsigned char ecdh_brainpoolp512r1_1101_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1101_sharedsecret[] = { 0xa9, 0xcd, 0x01, 0x9a, 0xa0, 0x8a, 0x87, 0x49, 0x34, 0xc6, 0xfc, 0x28, 0xb0, 0xf3, 0x49, 0x82, 0xe3, 0xd1, 0x0e, 0x3a, 0x3a, 0x7a, 0xc5, 0x24, 0x25, 0xc8, 0x0d, 0xb1, 0xd4, 0x70, 0x5f, 0x0c, 0x2b, 0x73, 0x3a, 0xc5, 0x4b, 0xaf, 0x1e, 0x56, 0xcf, 0xa6, 0xe7, 0x57, 0xa5, 0xbc, 0x01, 0xf5, 0x4a, 0xc3, 0x9a, 0x83, 0xd4, 0x2a, 0xa6, 0xe8, 0xbc, 0x5c, 0x65, 0x4a, 0x60, 0xa7, 0xe5, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1101 = { .name = "ecdh_brainpoolp512r1_1101", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1101_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1101_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1101_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1102 for ECDH, tcId is 24 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1102_peerpubkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1b, 0x4c, 0x36, 0x39, 0x42, 0x58, 0x38, 0x11, 0xe0, 0xbb, 0xa8, 0xed, 0x31, 0x54, 0x02, 0x62, 0xb8, 0xbe, 0x88, 0xf6, 0x9b, 0x9f, 0xc4, 0xb1, 0x29, 0x2f, 0xb6, 0x8a, 0xeb, 0xae, 0x1f, 0x9a, 0xc9, 0x61, 0xfc, 0x40, 0xb8, 0x5b, 0x5d, 0x09, 0x77, 0x21, 0x43, 0x06, 0x6d, 0x17, 0xc2, 0x25, 0x9a, 0x88, 0x27, 0x69, 0x1d, 0x81, 0x79, 0x92, 0xc8, 0x00, 0xc4, 0xa5, 0xa1, 0x88, 0xe4, 0xc9, }; static const unsigned char ecdh_brainpoolp512r1_1102_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1102_sharedsecret[] = { 0x36, 0x4e, 0x65, 0x73, 0x5b, 0x2b, 0x23, 0x53, 0xb1, 0xb9, 0xdd, 0xfc, 0x4a, 0x5e, 0x23, 0x3b, 0x30, 0xb0, 0xdd, 0x91, 0xe8, 0x01, 0x99, 0x05, 0xbf, 0xfa, 0xcb, 0x6d, 0x59, 0x4b, 0x32, 0xca, 0x79, 0xdf, 0xf5, 0x93, 0xb6, 0x26, 0x9d, 0xdc, 0x7e, 0x80, 0x27, 0x8d, 0xaa, 0xab, 0xa3, 0x41, 0xc3, 0xc3, 0x8f, 0x06, 0x34, 0xa1, 0xae, 0x28, 0x60, 0x37, 0xf1, 0x67, 0x7d, 0xb0, 0xa3, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1102 = { .name = "ecdh_brainpoolp512r1_1102", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1102_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1102_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1102_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1103 for ECDH, tcId is 25 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1103_peerpubkey[] = { 0x30, 0x91, 0x81, 0x9f, 0x59, 0x96, 0x71, 0xa0, 0xd2, 0x1d, 0x86, 0x6e, 0xba, 0x2d, 0x54, 0x0a, 0xe0, 0xa4, 0x72, 0xbe, 0x02, 0x52, 0xd3, 0x79, 0x2b, 0xc5, 0xbb, 0x98, 0x4d, 0x20, 0xa8, 0xdf, 0xaa, 0x18, 0x75, 0xe6, 0xd0, 0x52, 0x64, 0x61, 0x55, 0x45, 0xd2, 0xae, 0x78, 0xb9, 0xb5, 0xac, 0xb6, 0x96, 0xfd, 0xf1, 0x68, 0x0a, 0x05, 0xcd, 0x38, 0x2d, 0x83, 0xec, 0xef, 0x25, 0x28, 0x54, 0x1f, 0x79, 0xf9, 0xf1, 0x41, 0x41, 0x25, 0x8d, 0x70, 0xe4, 0x1c, 0x8a, 0x0a, 0x09, 0xcd, 0xba, 0xf2, 0xff, 0xac, 0x9f, 0xcf, 0x0d, 0x38, 0xf4, 0xae, 0xc2, 0x4a, 0x5e, 0xc3, 0x6c, 0xa7, 0x92, 0xc4, 0xfb, 0x3e, 0x25, 0xdb, 0xd5, 0xc1, 0xaa, 0x1a, 0xa2, 0xde, 0x57, 0x86, 0x58, 0x0f, 0x58, 0xd2, 0x86, 0x68, 0x3c, 0xd6, 0xfc, 0xe1, 0x57, 0xe1, 0x80, 0x12, 0x8d, 0xc0, 0x76, 0x32, 0x34, }; static const unsigned char ecdh_brainpoolp512r1_1103_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1103_sharedsecret[] = { 0x49, 0x6b, 0xab, 0x46, 0x0c, 0x5a, 0x1e, 0x76, 0x2d, 0xff, 0x6d, 0x9a, 0x7c, 0x7e, 0x4f, 0xd6, 0xb4, 0x97, 0x3b, 0x92, 0x1a, 0x60, 0xbf, 0x08, 0x19, 0x2a, 0x9b, 0xf5, 0xfb, 0x1e, 0xb5, 0xae, 0x99, 0x3b, 0xe0, 0xb4, 0xb6, 0xff, 0x8c, 0x44, 0x1d, 0x29, 0xf5, 0x91, 0x8f, 0x6f, 0xf5, 0x73, 0x8b, 0xb0, 0xef, 0x79, 0x53, 0xf0, 0x31, 0xdc, 0xe4, 0x9e, 0x76, 0x68, 0x89, 0xff, 0x75, 0x10, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1103 = { .name = "ecdh_brainpoolp512r1_1103", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1103_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1103_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1103_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1104 for ECDH, tcId is 26 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1104_peerpubkey[] = { 0x33, 0x9f, 0x77, 0xdb, 0x58, 0xbb, 0x17, 0xaf, 0xd4, 0x05, 0x95, 0x55, 0xb0, 0x59, 0x21, 0x48, 0x89, 0x77, 0x19, 0x82, 0xd9, 0x6f, 0x13, 0x19, 0xc9, 0x95, 0x14, 0x04, 0xc6, 0x09, 0x09, 0xbc, 0x10, 0xbc, 0xec, 0x2f, 0x7d, 0xc6, 0xe5, 0x6d, 0xf4, 0x48, 0x89, 0xc1, 0x92, 0x4a, 0x30, 0x4b, 0xdf, 0xa7, 0xaa, 0x19, 0xd5, 0x62, 0xf4, 0x9c, 0xfb, 0x3a, 0xcd, 0x40, 0x91, 0x00, 0xba, 0xe2, 0x2a, 0x19, 0xd2, 0x98, 0xcd, 0x84, 0x6c, 0xf9, 0xce, 0x03, 0xa6, 0xd7, 0xd1, 0x8c, 0x16, 0x5b, 0x2b, 0x3c, 0x18, 0xb7, 0x05, 0x14, 0xa4, 0x02, 0x0d, 0xae, 0x6e, 0x3d, 0xa6, 0x79, 0xae, 0x54, 0x1d, 0xf2, 0xfb, 0xcd, 0x20, 0xe8, 0x65, 0xbe, 0xcb, 0x54, 0xd3, 0x9c, 0x71, 0xf9, 0x02, 0x84, 0xa5, 0x0c, 0x2c, 0x74, 0x63, 0xa0, 0x43, 0x51, 0xc4, 0xe0, 0xb0, 0x1d, 0x6a, 0x07, 0x78, 0x08, }; static const unsigned char ecdh_brainpoolp512r1_1104_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1104_sharedsecret[] = { 0x07, 0xa4, 0xf5, 0xd7, 0x35, 0xa2, 0x80, 0x94, 0x0f, 0x6e, 0x57, 0xe6, 0xac, 0x6a, 0x1f, 0x73, 0x5a, 0xe4, 0xc4, 0xe2, 0x5d, 0xe6, 0xf5, 0x45, 0x06, 0xc2, 0x2c, 0x19, 0xe6, 0xa3, 0x2f, 0xa9, 0xdb, 0x54, 0x31, 0x58, 0x6d, 0x4f, 0x44, 0x23, 0x24, 0xeb, 0x69, 0x6e, 0x5b, 0xc4, 0x4f, 0x80, 0xa4, 0xa6, 0x72, 0xd7, 0xb7, 0x99, 0xc6, 0x05, 0x45, 0x0f, 0x1d, 0xd9, 0x18, 0xdf, 0xa3, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1104 = { .name = "ecdh_brainpoolp512r1_1104", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1104_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1104_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1104_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1105 for ECDH, tcId is 27 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1105_peerpubkey[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x28, 0x54, 0x14, 0x90, 0x62, 0xfd, 0x69, 0x2e, 0xec, 0xc2, 0x30, 0x27, 0x47, 0xcc, 0x08, 0xbe, 0x85, 0x4c, 0x64, 0xc4, 0xf9, 0xab, 0xe8, 0x6c, 0x46, 0x7f, 0x16, 0x14, 0x96, 0xb1, 0x9a, 0x52, 0xbb, 0xb5, 0xa4, 0xda, 0x84, 0x39, 0x25, 0x73, 0xd7, 0xe9, 0x63, 0x2a, 0x04, 0x0e, 0x9d, 0xd7, 0x37, 0xbc, 0x90, 0x89, 0xae, 0xdf, 0x5b, 0x0c, 0x15, 0x48, 0x8e, 0x9f, 0x1b, 0x08, 0x3a, 0x7a, }; static const unsigned char ecdh_brainpoolp512r1_1105_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1105_sharedsecret[] = { 0x6b, 0x3d, 0x87, 0xc9, 0x62, 0x32, 0x1b, 0xed, 0x12, 0xa8, 0x67, 0x18, 0x0b, 0x3d, 0xee, 0x7d, 0x4b, 0x31, 0xa0, 0x69, 0x2d, 0x36, 0xe6, 0x0e, 0x73, 0x64, 0x89, 0x86, 0x74, 0x2c, 0x42, 0xb1, 0x87, 0xf9, 0x6a, 0x22, 0x08, 0x8b, 0x15, 0x39, 0xa8, 0xad, 0x83, 0x2c, 0xc5, 0x32, 0xad, 0xc9, 0x54, 0x70, 0xb4, 0x7e, 0x62, 0x3c, 0x65, 0xc6, 0x1f, 0xf5, 0xda, 0x8c, 0xef, 0xfc, 0x10, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1105 = { .name = "ecdh_brainpoolp512r1_1105", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1105_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1105_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1105_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1106 for ECDH, tcId is 28 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1106_peerpubkey[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x4b, 0x98, 0x46, 0x88, 0x7f, 0x87, 0x52, 0x42, 0x7b, 0xeb, 0x39, 0xfb, 0xad, 0x36, 0xf0, 0xa0, 0x17, 0x0e, 0x3f, 0x22, 0x5a, 0x7b, 0x0c, 0x1f, 0xc0, 0x52, 0x8c, 0x9e, 0xe8, 0xf4, 0x95, 0x7f, 0xb3, 0x23, 0xfa, 0xa8, 0xa5, 0xa3, 0x29, 0xc0, 0x3c, 0x0f, 0xe2, 0xb8, 0xdf, 0x08, 0x20, 0x9d, 0x3a, 0xd7, 0x8f, 0x8b, 0x16, 0x17, 0x45, 0x14, 0x4b, 0x41, 0x8c, 0x4e, 0x26, 0xf3, 0xb2, 0x76, }; static const unsigned char ecdh_brainpoolp512r1_1106_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1106_sharedsecret[] = { 0x97, 0xd1, 0xca, 0xa3, 0xbb, 0x77, 0x45, 0x6f, 0x5e, 0xa8, 0x14, 0x2f, 0x85, 0xe5, 0xe2, 0x29, 0x31, 0xb5, 0x59, 0xc8, 0x19, 0x47, 0xa0, 0xf2, 0xc9, 0xce, 0x5b, 0x23, 0x98, 0x0d, 0x9b, 0xde, 0x1a, 0x9f, 0x42, 0xc2, 0x4b, 0x74, 0xe2, 0x26, 0x6d, 0xbf, 0x26, 0x5f, 0x8a, 0x6f, 0x94, 0x9f, 0xc2, 0x2b, 0x5d, 0x75, 0xb9, 0x3b, 0xbb, 0x1c, 0x32, 0x55, 0x7d, 0x9e, 0xac, 0xf7, 0xe2, 0x79, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1106 = { .name = "ecdh_brainpoolp512r1_1106", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1106_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1106_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1106_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1107 for ECDH, tcId is 29 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1107_peerpubkey[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x09, 0xa3, 0x71, 0x14, 0xd6, 0xa5, 0xc9, 0xee, 0x64, 0x37, 0x1c, 0x57, 0xbd, 0xd2, 0x64, 0xe1, 0x76, 0x4e, 0xdd, 0xa6, 0x4f, 0x44, 0x9c, 0xbd, 0x0e, 0xe1, 0xa7, 0x20, 0x09, 0x89, 0x02, 0x67, 0xfc, 0x1a, 0xe7, 0xd2, 0xee, 0x5d, 0xdf, 0xbb, 0x5b, 0x16, 0x93, 0xbd, 0xa1, 0xa0, 0xb5, 0x49, 0x4c, 0x86, 0x2e, 0x0e, 0xd1, 0xdf, 0x03, 0xb7, 0x02, 0xf2, 0xf2, 0xc2, 0x06, 0xe4, 0xc5, 0x2c, }; static const unsigned char ecdh_brainpoolp512r1_1107_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1107_sharedsecret[] = { 0x7e, 0xbb, 0x50, 0x24, 0xc3, 0x6f, 0x9f, 0x24, 0x9f, 0x16, 0x4e, 0x6b, 0x8f, 0xcb, 0xbb, 0xa3, 0xec, 0x25, 0x5d, 0x5f, 0x8e, 0x27, 0x97, 0x65, 0xb9, 0x86, 0x9c, 0xf9, 0x73, 0x11, 0x41, 0x1c, 0x35, 0x90, 0x84, 0xfe, 0x6b, 0x76, 0x95, 0x6e, 0xfa, 0x55, 0xc1, 0xd6, 0x08, 0xf0, 0x13, 0x42, 0x33, 0x97, 0x17, 0x86, 0x17, 0x93, 0x5e, 0xa1, 0x10, 0xc9, 0x36, 0xff, 0xb7, 0x33, 0x17, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1107 = { .name = "ecdh_brainpoolp512r1_1107", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1107_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1107_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1107_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1108 for ECDH, tcId is 30 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1108_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x27, 0xcd, 0x77, 0x71, 0x2e, 0x0d, 0xb1, 0x97, 0x81, 0x86, 0xe9, 0xd6, 0xfe, 0xb6, 0xea, 0xa0, 0x34, 0x31, 0x8f, 0xbf, 0xba, 0xb7, 0xfa, 0x33, 0x42, 0xa9, 0xe4, 0x3e, 0xee, 0xa0, 0x4c, 0x28, 0xdd, 0xde, 0x02, 0x19, 0x16, 0xd5, 0xfc, 0xfe, 0x2d, 0x1b, 0x43, 0x74, 0x3c, 0xa1, 0xec, 0x2b, 0x52, 0x88, 0xcd, 0x55, 0x39, 0x01, 0x82, 0x5e, 0x46, 0x52, 0xcf, 0x4c, 0xf5, 0x24, 0xbc, 0xb4, }; static const unsigned char ecdh_brainpoolp512r1_1108_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1108_sharedsecret[] = { 0x38, 0x09, 0x86, 0xa2, 0xfb, 0xf3, 0xd5, 0xc6, 0xd3, 0x8a, 0xc5, 0xea, 0x19, 0x1f, 0x7e, 0xf4, 0x68, 0x1f, 0x06, 0x8b, 0x47, 0x5b, 0x61, 0xbf, 0xd9, 0x09, 0xa6, 0xc3, 0xa3, 0x0c, 0x73, 0x1c, 0x30, 0xcf, 0xe9, 0xac, 0x0e, 0x7d, 0xda, 0x52, 0x1e, 0x57, 0x4f, 0xbb, 0x6c, 0xaf, 0x9d, 0xc5, 0x2e, 0xb3, 0xeb, 0xe3, 0x10, 0x6a, 0x45, 0x7f, 0x5b, 0xda, 0x96, 0x98, 0xd2, 0x52, 0xd8, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1108 = { .name = "ecdh_brainpoolp512r1_1108", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1108_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1108_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1108_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1109 for ECDH, tcId is 31 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1109_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x6c, 0x17, 0x23, 0x80, 0x34, 0xc8, 0x37, 0x22, 0x17, 0xa8, 0xcd, 0x9a, 0x23, 0x4e, 0xcb, 0x7d, 0xeb, 0xde, 0xc5, 0x65, 0x9b, 0x7e, 0x3f, 0x0c, 0x6e, 0x70, 0xba, 0x22, 0x68, 0x24, 0xf5, 0x6a, 0xcc, 0xe0, 0x25, 0xae, 0x65, 0xda, 0x8b, 0x0a, 0xeb, 0xc2, 0xef, 0xe2, 0xef, 0x73, 0xdd, 0x82, 0x6c, 0xea, 0x15, 0x1b, 0x20, 0x1b, 0x2f, 0x5b, 0x4f, 0x76, 0x23, 0xf2, 0xfb, 0xe3, 0x32, }; static const unsigned char ecdh_brainpoolp512r1_1109_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1109_sharedsecret[] = { 0xa5, 0x02, 0xa7, 0xd0, 0xee, 0x20, 0x77, 0xa3, 0xd4, 0xb4, 0x84, 0xb0, 0x2e, 0x2e, 0xd2, 0xd0, 0xd1, 0x32, 0xeb, 0xd4, 0x8c, 0x2c, 0x7d, 0x99, 0xf1, 0x46, 0x1e, 0x1b, 0x44, 0x28, 0xce, 0x97, 0xa3, 0x17, 0xe2, 0x6e, 0xf9, 0x04, 0x62, 0xe7, 0x04, 0x36, 0x78, 0x9c, 0xbc, 0xc2, 0x79, 0x86, 0xd6, 0x44, 0xe7, 0x95, 0x06, 0x50, 0x61, 0x2d, 0x9f, 0xa2, 0xbe, 0x50, 0xd0, 0x7e, 0xa5, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1109 = { .name = "ecdh_brainpoolp512r1_1109", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1109_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1109_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1109_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1110 for ECDH, tcId is 32 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1110_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x12, 0x78, 0x0a, 0xe4, 0xd2, 0xfa, 0xd1, 0x16, 0x3e, 0x2a, 0x51, 0x3d, 0x72, 0xad, 0x6e, 0x3c, 0x22, 0x11, 0xf8, 0x07, 0x9c, 0xcb, 0xdd, 0xeb, 0x9b, 0x1e, 0x95, 0x6b, 0x2e, 0xe3, 0x61, 0x73, 0xab, 0xe8, 0x44, 0x64, 0xb0, 0xc7, 0x8d, 0xca, 0x8d, 0xb2, 0x1f, 0x69, 0x64, 0xe9, 0xa1, 0x39, 0x8a, 0x5a, 0x0f, 0x6e, 0x1e, 0x71, 0x7d, 0xdf, 0x4e, 0xac, 0x51, 0x70, 0x32, 0x87, 0x92, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_1110_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_1110_sharedsecret[] = { 0x7b, 0xd3, 0xf0, 0x2e, 0x85, 0x46, 0x41, 0x63, 0x81, 0x58, 0x04, 0xeb, 0x8f, 0x5c, 0xdf, 0x3c, 0xea, 0x25, 0x8b, 0x52, 0x0e, 0xf5, 0x64, 0xd8, 0x13, 0xee, 0x41, 0x02, 0xa3, 0x9e, 0x93, 0xf6, 0x04, 0xd1, 0xc5, 0x37, 0xbb, 0x93, 0xac, 0x7b, 0x9d, 0x0f, 0xff, 0xcf, 0x89, 0x17, 0x7f, 0x45, 0x86, 0xea, 0x69, 0x0b, 0xfe, 0x93, 0xa9, 0x63, 0x2c, 0x64, 0x50, 0x38, 0xa4, 0x7e, 0x82, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1110 = { .name = "ecdh_brainpoolp512r1_1110", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1110_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1110_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1110_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1111 for ECDH, tcId is 33 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1111_peerpubkey[] = { 0x32, 0x3b, 0xb8, 0x3b, 0x14, 0xb2, 0xef, 0xcb, 0xa8, 0x7d, 0xd6, 0x05, 0x98, 0xa6, 0xaf, 0xdd, 0xc6, 0x9b, 0x89, 0xf1, 0x82, 0x0c, 0xc1, 0x74, 0xfa, 0xed, 0xae, 0xdd, 0x5f, 0xd1, 0xdd, 0xcf, 0x96, 0x79, 0xe3, 0x7a, 0xd8, 0xaa, 0x0c, 0x71, 0x21, 0x3e, 0xf2, 0xa7, 0xc5, 0x83, 0x3a, 0x4b, 0x50, 0x91, 0xda, 0x99, 0x45, 0x9d, 0xc6, 0xc1, 0xaa, 0x5a, 0xea, 0xd7, 0xc6, 0x46, 0x85, 0x74, 0x12, 0x85, 0xe6, 0xb2, 0xa0, 0x1a, 0xf2, 0x1b, 0x80, 0x53, 0x72, 0x82, 0x7e, 0x25, 0x14, 0x92, 0xcf, 0x6a, 0x5a, 0xc6, 0x52, 0xa0, 0x67, 0xce, 0x0f, 0xba, 0x82, 0x0a, 0xea, 0xbe, 0xac, 0xfb, 0x0a, 0x8c, 0xd5, 0xc6, 0x70, 0x93, 0x28, 0x65, 0x28, 0xdc, 0xff, 0xe4, 0xa9, 0xfe, 0x4d, 0x76, 0xf4, 0xbc, 0x06, 0x08, 0x59, 0x82, 0x8b, 0xdb, 0x1b, 0x2c, 0x4c, 0xf7, 0xf2, 0xb5, 0xe9, 0x25, }; static const unsigned char ecdh_brainpoolp512r1_1111_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1111_sharedsecret[] = { 0x2f, 0x70, 0xb9, 0x39, 0x18, 0x26, 0xc4, 0xa0, 0xdc, 0xa8, 0xd4, 0x2b, 0xe8, 0xe0, 0x50, 0xb5, 0xaf, 0x9f, 0x63, 0xb4, 0xba, 0x7d, 0x1a, 0x3d, 0xcf, 0xa2, 0xa7, 0x69, 0xcd, 0x6a, 0xb2, 0xe7, 0xa9, 0xe9, 0x18, 0x83, 0x93, 0x41, 0x24, 0x85, 0xe9, 0x0c, 0xc4, 0x60, 0xae, 0xf6, 0x35, 0xca, 0xf0, 0x91, 0x83, 0x59, 0xd7, 0x7c, 0x21, 0x01, 0xc9, 0x84, 0x82, 0xa1, 0xe0, 0x29, 0xfa, 0x2a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1111 = { .name = "ecdh_brainpoolp512r1_1111", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1111_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1111_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1111_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 33 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1112 for ECDH, tcId is 34 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1112_peerpubkey[] = { 0x3b, 0xcd, 0xa6, 0x90, 0xd9, 0x57, 0x70, 0x05, 0xb4, 0x68, 0x7c, 0x4f, 0x0e, 0x34, 0xf0, 0xb5, 0xb3, 0x35, 0x2c, 0xa1, 0x01, 0x75, 0x24, 0x6d, 0x3d, 0xa5, 0x51, 0x4a, 0x0e, 0xb7, 0xa8, 0x77, 0xc5, 0x1e, 0xdc, 0x43, 0x0c, 0x0e, 0x5e, 0x7b, 0x56, 0xc8, 0x98, 0x7e, 0x51, 0xfa, 0xcd, 0x90, 0xd6, 0x6c, 0xa0, 0x97, 0xa6, 0xa0, 0x0e, 0xbe, 0x7c, 0x35, 0x28, 0x61, 0xfa, 0xbb, 0x5d, 0xbe, 0x4c, 0x4e, 0x8d, 0xb0, 0x47, 0x45, 0xf9, 0x4a, 0xf5, 0xfb, 0x37, 0x92, 0xd9, 0x7c, 0x37, 0x39, 0x65, 0x70, 0x77, 0xf4, 0x48, 0x13, 0x0b, 0xe7, 0x95, 0x8c, 0x57, 0x60, 0xb3, 0x13, 0xd9, 0xd3, 0x7b, 0x33, 0x10, 0xb8, 0x49, 0x8f, 0x66, 0x7a, 0x09, 0x34, 0x53, 0xce, 0x61, 0x22, 0x2c, 0x0c, 0x0d, 0x68, 0xac, 0x2d, 0x28, 0x3a, 0x40, 0x33, 0xf4, 0x54, 0xef, 0x22, 0x50, 0xe9, 0x4a, 0xbe, }; static const unsigned char ecdh_brainpoolp512r1_1112_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1112_sharedsecret[] = { 0x06, 0xe9, 0xb8, 0x63, 0x6e, 0xad, 0xb7, 0x25, 0x61, 0xb2, 0x15, 0xd9, 0x98, 0x70, 0x38, 0x25, 0xbb, 0x7c, 0xe8, 0x08, 0xe2, 0x3a, 0x10, 0x98, 0x70, 0x14, 0xe3, 0x9f, 0x2c, 0x5b, 0x38, 0x14, 0x03, 0x2b, 0x64, 0x3c, 0x9c, 0x10, 0xbe, 0x08, 0x61, 0xd8, 0x5a, 0x0b, 0x50, 0x8f, 0x43, 0x42, 0xad, 0x65, 0xfa, 0xc6, 0xa1, 0x29, 0x61, 0xdf, 0xd9, 0xe4, 0x0f, 0xe3, 0x03, 0x99, 0xda, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1112 = { .name = "ecdh_brainpoolp512r1_1112", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1112_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1112_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1112_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 34 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1113 for ECDH, tcId is 35 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1113_peerpubkey[] = { 0x0d, 0xad, 0x6a, 0x11, 0x5d, 0xf7, 0x8f, 0x04, 0xc4, 0x34, 0x9f, 0x6d, 0x00, 0x16, 0xe0, 0x56, 0x97, 0x77, 0x91, 0xa9, 0x5b, 0x56, 0x8b, 0x2f, 0x0d, 0xa5, 0x21, 0x87, 0xc0, 0x4f, 0xea, 0x30, 0xbf, 0x37, 0xb4, 0x76, 0xf0, 0xab, 0xf1, 0x89, 0x13, 0xc1, 0xac, 0xaa, 0x8e, 0xe6, 0xb2, 0x41, 0x91, 0xc7, 0x97, 0xa2, 0x6a, 0x61, 0x36, 0x70, 0xb6, 0xfc, 0x10, 0x3c, 0x88, 0x0e, 0xe5, 0x41, 0x27, 0xb9, 0x4a, 0x5c, 0x65, 0x74, 0xb6, 0xe7, 0xec, 0x5f, 0x6f, 0x93, 0x24, 0xb1, 0x08, 0x4a, 0xde, 0xbc, 0xcb, 0x00, 0x95, 0x78, 0x0a, 0xe9, 0xea, 0x5f, 0x59, 0x6c, 0x1b, 0x6e, 0xae, 0x4a, 0x39, 0x98, 0xcf, 0xfc, 0xb8, 0x1e, 0xa6, 0x5b, 0xa2, 0x31, 0x37, 0x50, 0x82, 0x01, 0x3f, 0xaf, 0x24, 0xae, 0x31, 0x21, 0xc8, 0x6c, 0xfc, 0x19, 0xdf, 0xaf, 0xaf, 0xfe, 0x2e, 0xbc, 0x55, 0x1b, }; static const unsigned char ecdh_brainpoolp512r1_1113_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1113_sharedsecret[] = { 0x54, 0x05, 0xb3, 0x4c, 0x5f, 0xf1, 0x66, 0xd5, 0xa1, 0xb3, 0x73, 0x25, 0x83, 0x92, 0x14, 0x0c, 0x6d, 0x95, 0x64, 0xdc, 0x06, 0xb2, 0x6c, 0x06, 0x86, 0x68, 0x8d, 0xa1, 0x61, 0x89, 0x12, 0xa3, 0xf0, 0xf3, 0x87, 0xb4, 0x59, 0xb8, 0x7d, 0x33, 0x62, 0x5d, 0xe1, 0xbc, 0xd3, 0x10, 0xcf, 0xf2, 0x20, 0x6f, 0x72, 0xdf, 0xd4, 0xdb, 0xfc, 0x3b, 0xe7, 0x9a, 0x24, 0x3e, 0xa0, 0xaf, 0xba, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1113 = { .name = "ecdh_brainpoolp512r1_1113", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1113_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1113_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1113_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 35 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1114 for ECDH, tcId is 36 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1114_peerpubkey[] = { 0x51, 0x6f, 0x58, 0x98, 0xa5, 0x57, 0x32, 0x31, 0x5c, 0x92, 0x92, 0xb8, 0xe1, 0xd4, 0x38, 0x04, 0x74, 0x97, 0x4e, 0x25, 0x1a, 0xf9, 0xec, 0x41, 0x3c, 0x3d, 0x64, 0x27, 0x48, 0x8e, 0x56, 0x34, 0xf6, 0x00, 0x4c, 0xe3, 0x50, 0xbd, 0x3c, 0x74, 0xa5, 0x1f, 0x1e, 0xe0, 0xe3, 0x71, 0x9c, 0xa8, 0x04, 0x55, 0x98, 0x99, 0x7d, 0x22, 0x71, 0xef, 0x2f, 0x53, 0x95, 0x76, 0xad, 0x52, 0x73, 0x23, 0x98, 0x9f, 0xa0, 0x04, 0xb6, 0xa6, 0x8c, 0xc2, 0x75, 0xe9, 0xd9, 0x1c, 0x54, 0xf8, 0xe1, 0xa8, 0xd0, 0xe5, 0x6e, 0xd2, 0xab, 0x50, 0xaf, 0xe7, 0xa8, 0xa5, 0x4f, 0x7e, 0xdd, 0x04, 0x17, 0x40, 0xb8, 0xd4, 0x4c, 0x09, 0x09, 0xcf, 0x00, 0xc5, 0x93, 0x7c, 0x64, 0x2d, 0x50, 0xbd, 0x7d, 0xf7, 0x06, 0x02, 0x2d, 0x66, 0x6d, 0x32, 0x40, 0x6c, 0x9a, 0xfe, 0x18, 0xc3, 0xaa, 0xc2, 0xfc, 0xa4, }; static const unsigned char ecdh_brainpoolp512r1_1114_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1114_sharedsecret[] = { 0xaa, 0xcc, 0xb2, 0xb2, 0x17, 0xab, 0x92, 0xd5, 0xd6, 0x8e, 0xc9, 0x39, 0x7a, 0x4a, 0x59, 0xef, 0xa2, 0xee, 0x92, 0xb2, 0xa1, 0x94, 0x10, 0x94, 0x2d, 0x52, 0xa3, 0x40, 0x61, 0x1a, 0x9f, 0xbc, 0xb7, 0x34, 0x87, 0x83, 0x92, 0xde, 0x16, 0xb4, 0x38, 0x23, 0xbf, 0x9f, 0xd5, 0xe6, 0xe1, 0x08, 0x5a, 0xd3, 0x4f, 0xfb, 0x2d, 0x94, 0xbd, 0x6e, 0xc0, 0x73, 0x8a, 0x5d, 0xf1, 0xd9, 0x38, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1114 = { .name = "ecdh_brainpoolp512r1_1114", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1114_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1114_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1114_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 36 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1115 for ECDH, tcId is 37 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1115_peerpubkey[] = { 0x06, 0xe9, 0xcc, 0xbf, 0x93, 0x09, 0x71, 0x9c, 0x1b, 0x22, 0xe6, 0xa0, 0x36, 0x81, 0x07, 0xc3, 0xc2, 0xa1, 0x1e, 0xb2, 0x0a, 0x0e, 0xf4, 0x0b, 0xc2, 0xbe, 0x53, 0x4a, 0x75, 0x56, 0x59, 0xd9, 0xf2, 0x89, 0xf8, 0xb3, 0x49, 0x6d, 0x62, 0x33, 0x8d, 0x8c, 0xc8, 0x5a, 0x83, 0xeb, 0xd4, 0x76, 0x6c, 0x46, 0x5f, 0x82, 0x2b, 0x93, 0xb4, 0xd6, 0x60, 0x35, 0xb7, 0xfc, 0xd4, 0xe7, 0xe7, 0xda, 0x90, 0x42, 0x03, 0xc4, 0x03, 0xdf, 0x9e, 0x84, 0xfa, 0x1d, 0xc0, 0xcd, 0x36, 0x13, 0xde, 0x20, 0x69, 0xb3, 0x00, 0x9e, 0xfd, 0x80, 0xca, 0x88, 0x07, 0xbf, 0x46, 0x68, 0x57, 0xa7, 0x1f, 0x29, 0x8b, 0x95, 0xe7, 0x94, 0x06, 0x87, 0x63, 0xea, 0x84, 0x02, 0x18, 0xf2, 0x76, 0xf4, 0x23, 0xa9, 0x5d, 0x36, 0xff, 0x98, 0x86, 0xa8, 0x99, 0xa4, 0x46, 0xaf, 0xf1, 0xaa, 0xdd, 0x6a, 0x77, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_1115_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1115_sharedsecret[] = { 0x97, 0x46, 0x10, 0x4b, 0xba, 0xf2, 0xd5, 0x03, 0x66, 0x88, 0xb7, 0x29, 0xa0, 0xe3, 0x1b, 0xd9, 0x70, 0x07, 0xef, 0x26, 0x6b, 0x0b, 0xfb, 0x20, 0x09, 0xfc, 0x3c, 0xfa, 0x3f, 0x84, 0x2b, 0xa8, 0xee, 0x0a, 0x92, 0xff, 0xf6, 0x00, 0x8f, 0xf7, 0xf0, 0xeb, 0x84, 0x9c, 0xb0, 0x93, 0x69, 0x59, 0x1b, 0x72, 0x60, 0xac, 0xcb, 0xff, 0x8a, 0xe3, 0xa8, 0x78, 0x88, 0x0c, 0xec, 0xdb, 0x00, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1115 = { .name = "ecdh_brainpoolp512r1_1115", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1115_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1115_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1115_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 37 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1116 for ECDH, tcId is 38 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1116_peerpubkey[] = { 0x18, 0x82, 0x2f, 0x6e, 0x17, 0x09, 0x4b, 0x31, 0x55, 0xef, 0xb2, 0xb8, 0xb1, 0x08, 0x30, 0x29, 0xd4, 0x6c, 0x36, 0x41, 0xde, 0x5b, 0xfb, 0xe8, 0xe5, 0x06, 0xaa, 0x96, 0xf6, 0xa3, 0xca, 0x8e, 0x4a, 0xa9, 0x6f, 0xe7, 0x57, 0xbc, 0x5c, 0x01, 0xe9, 0x18, 0x09, 0xe9, 0xcb, 0xac, 0xa6, 0x35, 0xce, 0x7f, 0x5b, 0x20, 0x9a, 0x56, 0x8f, 0x64, 0xc9, 0xe6, 0xe9, 0x0d, 0x06, 0x1a, 0x45, 0xc7, 0x4b, 0x02, 0xae, 0x03, 0x10, 0x10, 0x8f, 0xb3, 0xb5, 0x29, 0x1b, 0x60, 0xc8, 0x5b, 0xef, 0x56, 0x9c, 0x02, 0xab, 0x17, 0xef, 0x95, 0xbe, 0xe2, 0x62, 0xb0, 0x96, 0x80, 0x7e, 0x99, 0x20, 0x11, 0xbd, 0xac, 0x9e, 0x59, 0xbf, 0xd9, 0x49, 0x9c, 0x8c, 0x9a, 0x3a, 0x9e, 0x48, 0x80, 0x2c, 0x6e, 0x48, 0xe0, 0xa5, 0x87, 0x54, 0x1d, 0xfd, 0xb5, 0x43, 0x96, 0x1f, 0xfc, 0x12, 0x9f, 0x20, 0xa4, }; static const unsigned char ecdh_brainpoolp512r1_1116_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1116_sharedsecret[] = { 0x5c, 0x23, 0xec, 0xbb, 0xf1, 0x58, 0xd2, 0x0b, 0xac, 0xc9, 0xaf, 0x5d, 0xcc, 0xf4, 0x6c, 0x6a, 0x21, 0x24, 0xff, 0x56, 0xfb, 0xf2, 0x3d, 0xa0, 0x31, 0x74, 0xed, 0xf1, 0x04, 0x3e, 0x48, 0x1d, 0x49, 0x3c, 0x29, 0xb0, 0x7d, 0x24, 0x48, 0x6a, 0x54, 0x48, 0xfc, 0x82, 0x16, 0x06, 0xf7, 0xdf, 0x5b, 0x65, 0x9a, 0xf3, 0x67, 0xa6, 0x55, 0xc8, 0xa2, 0x1d, 0x7e, 0x69, 0xf7, 0xd9, 0x34, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1116 = { .name = "ecdh_brainpoolp512r1_1116", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1116_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1116_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1116_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 38 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1117 for ECDH, tcId is 39 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1117_peerpubkey[] = { 0x43, 0x8b, 0xc0, 0x54, 0x18, 0xdc, 0xd9, 0x23, 0x82, 0x22, 0x4d, 0xe3, 0x70, 0xc3, 0x7e, 0x22, 0xb2, 0xce, 0x99, 0xde, 0x4a, 0xcf, 0x3b, 0xf6, 0x3e, 0xd9, 0x81, 0x46, 0x76, 0x30, 0x8e, 0xb0, 0x6b, 0x1a, 0x7f, 0x2d, 0xb2, 0x46, 0xf2, 0x49, 0x80, 0x95, 0x00, 0x13, 0xb9, 0x46, 0xc9, 0x0b, 0x70, 0xe3, 0x6e, 0x35, 0xf7, 0x83, 0x63, 0x3c, 0x83, 0x52, 0xfd, 0x40, 0x77, 0xa4, 0x5f, 0xfc, 0xaa, 0x6e, 0xdd, 0xa0, 0x4f, 0x5f, 0xbd, 0xb4, 0x4d, 0xae, 0xc5, 0x7d, 0xf7, 0x38, 0x07, 0x64, 0x4c, 0xe6, 0x82, 0x8f, 0xc5, 0xb2, 0x21, 0x77, 0x39, 0x72, 0x38, 0x6d, 0x7c, 0x5e, 0x0b, 0x54, 0xce, 0x87, 0x6b, 0x12, 0xe1, 0x2b, 0xcd, 0xe8, 0x8c, 0xa6, 0x7d, 0x4a, 0x9e, 0x0f, 0x9f, 0x68, 0x3b, 0x55, 0x2d, 0x24, 0xc8, 0x14, 0xf8, 0xc3, 0xf9, 0x20, 0x34, 0x0b, 0xb5, 0x26, 0x24, 0xbf, }; static const unsigned char ecdh_brainpoolp512r1_1117_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1117_sharedsecret[] = { 0x67, 0x58, 0x13, 0xfa, 0x3c, 0x09, 0xb1, 0x0a, 0x1e, 0xf8, 0x73, 0x63, 0x0c, 0x63, 0xc8, 0xfc, 0xeb, 0xc6, 0xc3, 0x03, 0x7f, 0xde, 0x15, 0x11, 0xbd, 0xac, 0x26, 0x73, 0x6e, 0xf9, 0xd1, 0x8b, 0x53, 0x71, 0x3c, 0x79, 0x15, 0xe8, 0xba, 0x12, 0x5d, 0xc3, 0xe1, 0x23, 0xb8, 0x5b, 0xaf, 0xd4, 0x72, 0x7a, 0xbb, 0xcb, 0x53, 0x42, 0x58, 0x9b, 0xf7, 0xa4, 0xa6, 0xb7, 0x6d, 0x3b, 0x1e, 0x21, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1117 = { .name = "ecdh_brainpoolp512r1_1117", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1117_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1117_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1117_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 39 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1118 for ECDH, tcId is 40 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1118_peerpubkey[] = { 0x5d, 0x73, 0x0e, 0x9f, 0xba, 0x92, 0x72, 0x81, 0xb1, 0x82, 0x7e, 0x19, 0x1a, 0x67, 0x77, 0xc9, 0xfe, 0x8b, 0x70, 0x9c, 0x22, 0xbf, 0x88, 0x56, 0x27, 0x78, 0x1a, 0x37, 0x96, 0xf3, 0x4d, 0xec, 0xf2, 0x4d, 0x77, 0xb4, 0x53, 0x59, 0x1b, 0x4a, 0x9c, 0x01, 0xde, 0x23, 0xc6, 0x74, 0xea, 0xcd, 0x5e, 0x17, 0xe0, 0xc0, 0xf1, 0x6f, 0x69, 0xa8, 0x51, 0x4a, 0x65, 0x76, 0xb9, 0xd8, 0xb4, 0x65, 0x85, 0x66, 0xbe, 0x61, 0x03, 0x8b, 0xc8, 0x65, 0x71, 0x5a, 0xdd, 0x8d, 0x9f, 0xa8, 0xf0, 0x66, 0xff, 0x4c, 0x2b, 0xba, 0xe0, 0x3d, 0x62, 0x05, 0xa2, 0x2c, 0xfd, 0x35, 0xde, 0x5c, 0xf6, 0x36, 0xdc, 0xc1, 0x73, 0x80, 0x60, 0x2b, 0x11, 0x56, 0xb5, 0xa6, 0x91, 0xae, 0x6b, 0x66, 0x28, 0x60, 0xcb, 0x30, 0x87, 0x9b, 0x39, 0xc4, 0xc0, 0x28, 0x74, 0x6d, 0x13, 0x4a, 0x6c, 0xf3, 0x5b, 0xa6, }; static const unsigned char ecdh_brainpoolp512r1_1118_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1118_sharedsecret[] = { 0x08, 0x6f, 0x5a, 0xd6, 0x77, 0xf2, 0x88, 0xf8, 0x8a, 0x31, 0xd3, 0x43, 0xf3, 0x4c, 0xe2, 0x32, 0x2b, 0x05, 0x23, 0xd2, 0xad, 0xfb, 0x0e, 0x15, 0x9d, 0x02, 0x69, 0xd5, 0xb0, 0x44, 0x88, 0x3a, 0xdf, 0x44, 0x9f, 0xb6, 0x7a, 0x6c, 0x1c, 0xe4, 0x59, 0x08, 0x5b, 0x12, 0xe1, 0x89, 0x2e, 0x51, 0x9f, 0x27, 0x58, 0xd1, 0xd9, 0x9e, 0xcd, 0xe3, 0xc6, 0x95, 0xa6, 0xaa, 0xbf, 0xb4, 0x0d, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1118 = { .name = "ecdh_brainpoolp512r1_1118", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1118_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1118_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1118_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 40 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1119 for ECDH, tcId is 41 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1119_peerpubkey[] = { 0x7c, 0xa8, 0xf4, 0x44, 0x36, 0x42, 0x62, 0x0f, 0xc1, 0x47, 0xf3, 0x3c, 0x02, 0x9b, 0x2f, 0x00, 0xff, 0xb8, 0x18, 0x74, 0x7d, 0xe0, 0xdd, 0x35, 0x26, 0xca, 0xcc, 0x54, 0x31, 0xcc, 0x54, 0xf3, 0xb9, 0x8c, 0x36, 0xf1, 0x2a, 0xe7, 0xfa, 0xd2, 0x44, 0x02, 0x44, 0xe8, 0xec, 0x29, 0x04, 0x6a, 0x40, 0x1e, 0x03, 0xc2, 0xfa, 0xcb, 0x8a, 0x05, 0xd6, 0xcb, 0x8e, 0x75, 0x4d, 0xed, 0x17, 0x91, 0x1c, 0x33, 0x0d, 0x53, 0xed, 0x47, 0x95, 0x27, 0x69, 0xc7, 0x80, 0x11, 0xdc, 0x32, 0xeb, 0x6a, 0xdc, 0x7d, 0x64, 0xd3, 0xc8, 0xdb, 0xe1, 0xd0, 0xc5, 0xf9, 0xac, 0xec, 0x72, 0x9c, 0xd1, 0x61, 0xe6, 0x1b, 0x26, 0x31, 0xac, 0xd8, 0xc9, 0x38, 0x58, 0x72, 0x9b, 0xcb, 0x3c, 0xc9, 0x7f, 0x69, 0xc8, 0xda, 0xf2, 0x83, 0xd6, 0x20, 0x73, 0xf4, 0x8f, 0x50, 0x86, 0xb6, 0xe8, 0x7c, 0x90, 0x24, }; static const unsigned char ecdh_brainpoolp512r1_1119_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1119_sharedsecret[] = { 0x90, 0xe5, 0xcd, 0xdd, 0x38, 0x74, 0x00, 0x5f, 0x30, 0x1f, 0x67, 0xa9, 0x3b, 0x83, 0xdd, 0x9a, 0x95, 0xfe, 0xa2, 0xb7, 0x17, 0x20, 0xeb, 0x4b, 0x19, 0xf6, 0x67, 0x11, 0x45, 0x85, 0x8f, 0xec, 0xe7, 0xa7, 0x07, 0xf7, 0xe8, 0xed, 0x7c, 0xd1, 0xba, 0xc0, 0xc7, 0x04, 0x0c, 0x0f, 0xd8, 0xd9, 0xc6, 0x20, 0x12, 0x08, 0x80, 0x4d, 0x9b, 0x31, 0x12, 0x63, 0x96, 0x1a, 0xbf, 0x87, 0xe3, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1119 = { .name = "ecdh_brainpoolp512r1_1119", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1119_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1119_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1119_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 41 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1120 for ECDH, tcId is 42 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1120_peerpubkey[] = { 0x2f, 0x16, 0xfc, 0x68, 0x9b, 0x19, 0x83, 0xf7, 0xbd, 0x12, 0xb5, 0x7c, 0x2b, 0x24, 0xf0, 0x0a, 0xf4, 0xa9, 0xc3, 0x7b, 0xb5, 0x27, 0xd7, 0xa5, 0xfe, 0x1d, 0x6c, 0xa9, 0x91, 0x5d, 0x6b, 0x0c, 0x26, 0x58, 0x47, 0x33, 0xe8, 0xaf, 0x82, 0xf3, 0x63, 0x0f, 0xc5, 0x35, 0xc6, 0x0f, 0x29, 0xc7, 0x76, 0x59, 0x0e, 0xb4, 0xad, 0xe5, 0xbf, 0x9f, 0x4c, 0xb0, 0x64, 0x4f, 0xe3, 0x91, 0x74, 0x36, 0xa4, 0x09, 0xda, 0xbd, 0x3d, 0x32, 0xa5, 0x41, 0x3c, 0x86, 0x7f, 0xda, 0x83, 0x21, 0x38, 0x49, 0xfd, 0xd6, 0x5f, 0xb8, 0x22, 0xfd, 0xdc, 0x0a, 0xa4, 0x5f, 0x04, 0xbc, 0x32, 0x5b, 0xb8, 0x04, 0xc3, 0xb6, 0x65, 0xbc, 0xf2, 0x00, 0x75, 0x30, 0x97, 0x19, 0xb9, 0x72, 0xbd, 0x57, 0x5f, 0x24, 0x99, 0x3b, 0x3e, 0x40, 0xfb, 0x6d, 0xce, 0x37, 0x61, 0xb9, 0xbf, 0x96, 0x0f, 0x5c, 0x31, 0xba, }; static const unsigned char ecdh_brainpoolp512r1_1120_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1120_sharedsecret[] = { 0x41, 0x96, 0x6b, 0xd8, 0x9d, 0x45, 0x45, 0x02, 0x55, 0x83, 0x67, 0x6a, 0xf0, 0xc8, 0xc8, 0x38, 0xaf, 0x53, 0x73, 0xb8, 0x37, 0xa5, 0x74, 0x05, 0x0d, 0x29, 0x64, 0xee, 0xdf, 0x5f, 0xab, 0x53, 0x90, 0x7b, 0xf4, 0xda, 0x49, 0x5c, 0xcd, 0x36, 0x22, 0xfc, 0x43, 0x26, 0xd7, 0x7f, 0x1c, 0x0c, 0x4c, 0x4d, 0x53, 0x78, 0xc9, 0x60, 0x77, 0x2e, 0x00, 0x82, 0xfe, 0xfe, 0x76, 0x8d, 0xed, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1120 = { .name = "ecdh_brainpoolp512r1_1120", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1120_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1120_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1120_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 42 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1121 for ECDH, tcId is 43 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1121_peerpubkey[] = { 0x54, 0x20, 0x57, 0xf0, 0xb1, 0x6b, 0x30, 0x85, 0x38, 0xbd, 0xc1, 0x2f, 0x67, 0x0a, 0xb3, 0x6c, 0xdd, 0x69, 0xf5, 0x9c, 0x8e, 0xe0, 0x67, 0xc3, 0x4b, 0x8f, 0xab, 0xb3, 0xcf, 0x4c, 0x12, 0x4b, 0xd0, 0xf5, 0x94, 0x45, 0x53, 0x63, 0x0c, 0x6d, 0x50, 0x29, 0x1a, 0x23, 0x89, 0x06, 0xad, 0xfb, 0xe1, 0xd4, 0xbc, 0x5d, 0xec, 0x43, 0xc4, 0x53, 0x91, 0xa4, 0x00, 0x5b, 0x0d, 0x73, 0xbc, 0x97, 0x9a, 0x6c, 0xd1, 0x6e, 0x79, 0xfe, 0x65, 0x8d, 0x02, 0x2b, 0x72, 0xba, 0x1d, 0x49, 0x27, 0xeb, 0xeb, 0x30, 0x2d, 0x4d, 0x80, 0xc9, 0xd4, 0x4c, 0x7a, 0xb1, 0xc4, 0x8c, 0x83, 0x34, 0x58, 0x56, 0x9d, 0xd1, 0xef, 0xcc, 0xf7, 0xf9, 0x76, 0x48, 0x43, 0x29, 0x16, 0xd8, 0x79, 0x01, 0xa7, 0x95, 0x11, 0xa1, 0x5c, 0xe1, 0x53, 0x6b, 0xc6, 0x13, 0xe5, 0x99, 0x22, 0x55, 0x3d, 0x89, 0x87, 0x02, }; static const unsigned char ecdh_brainpoolp512r1_1121_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1121_sharedsecret[] = { 0x5a, 0x7a, 0xca, 0xd6, 0x1a, 0x20, 0xa8, 0x00, 0x5a, 0xc8, 0x72, 0x0f, 0x34, 0xba, 0x5c, 0xf7, 0x58, 0x3f, 0x16, 0xd9, 0x62, 0x21, 0x03, 0xf8, 0x64, 0xd1, 0xdb, 0xc2, 0x9a, 0xc4, 0x6c, 0xb4, 0x86, 0x93, 0xf5, 0xe7, 0x77, 0x16, 0x55, 0x2d, 0x85, 0x27, 0x07, 0x92, 0x36, 0x3a, 0x66, 0xb8, 0xd9, 0xd7, 0x57, 0xf1, 0x52, 0x01, 0x9c, 0x50, 0xc9, 0x7b, 0x9c, 0x03, 0x97, 0x05, 0x3e, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1121 = { .name = "ecdh_brainpoolp512r1_1121", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1121_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1121_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1121_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 43 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1122 for ECDH, tcId is 44 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1122_peerpubkey[] = { 0x1c, 0xa7, 0x8b, 0x22, 0xed, 0xd4, 0x71, 0xb9, 0xfd, 0x03, 0xd8, 0xf3, 0x8c, 0x74, 0xcf, 0x55, 0x9a, 0x57, 0x17, 0x20, 0x1b, 0xe2, 0x38, 0x2a, 0x85, 0xf9, 0xa5, 0xce, 0x5a, 0x16, 0x45, 0x96, 0xe0, 0x61, 0xc3, 0xdb, 0xf8, 0x03, 0x55, 0x1e, 0x5a, 0xbf, 0xb4, 0xc9, 0x79, 0x80, 0x98, 0x2c, 0xcc, 0xe7, 0xa3, 0xd8, 0x89, 0xef, 0x0d, 0x44, 0x7c, 0x45, 0xba, 0x6c, 0x37, 0xf6, 0x79, 0xf3, 0x21, 0xf1, 0x68, 0xe3, 0x5c, 0x9e, 0x6f, 0xe9, 0x89, 0xdf, 0x47, 0x23, 0x6f, 0xbd, 0x91, 0x92, 0xc1, 0xd9, 0x11, 0xd0, 0x84, 0xb8, 0x76, 0x22, 0x2f, 0x24, 0x53, 0xa2, 0x04, 0xd4, 0xc3, 0x5f, 0xc1, 0x8a, 0x72, 0x24, 0x88, 0x36, 0x6d, 0xf4, 0x33, 0xa7, 0xd0, 0x8d, 0x29, 0x9d, 0xba, 0xb1, 0x2d, 0x62, 0x6d, 0x62, 0xe6, 0xc9, 0x18, 0x8a, 0xe8, 0x23, 0xe6, 0x04, 0x10, 0x97, 0x46, 0xee, }; static const unsigned char ecdh_brainpoolp512r1_1122_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1122_sharedsecret[] = { 0x05, 0x5b, 0xcd, 0xa8, 0xe4, 0x98, 0x06, 0xa9, 0xaf, 0xe3, 0x75, 0x64, 0xe6, 0x32, 0x73, 0x03, 0x9e, 0x7d, 0xe3, 0x43, 0xf1, 0x87, 0xbb, 0x03, 0xed, 0xab, 0xde, 0x48, 0x01, 0xed, 0xc3, 0xb6, 0x18, 0x6e, 0xd0, 0xa8, 0x6a, 0x7d, 0xb1, 0x78, 0xa7, 0x5c, 0xe5, 0x56, 0xbe, 0xc7, 0xdc, 0x44, 0x6b, 0xdf, 0x04, 0x15, 0x7e, 0x7b, 0x20, 0x59, 0xcb, 0x28, 0x5e, 0xf2, 0xd1, 0x7f, 0x04, 0x91, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1122 = { .name = "ecdh_brainpoolp512r1_1122", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1122_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1122_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1122_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 44 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1123 for ECDH, tcId is 45 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1123_peerpubkey[] = { 0xa5, 0x67, 0x21, 0x45, 0xe2, 0xc8, 0xdf, 0x5d, 0x7a, 0xdc, 0x4f, 0x0b, 0x4e, 0x1d, 0x6e, 0x75, 0xb3, 0x13, 0x11, 0xdf, 0xd2, 0x61, 0xb3, 0xdc, 0x34, 0x38, 0x80, 0xee, 0xd6, 0x0e, 0x5f, 0x4c, 0x23, 0xa4, 0x6e, 0x7f, 0x8f, 0x86, 0xae, 0x85, 0x11, 0xcf, 0xb9, 0x02, 0x0d, 0x74, 0x6f, 0x76, 0xc8, 0x86, 0x82, 0x2e, 0xb5, 0x81, 0xa8, 0x4d, 0xcd, 0x3c, 0x9b, 0xef, 0xbd, 0x8c, 0x72, 0xdd, 0x81, 0x5d, 0xc8, 0xb1, 0x8e, 0xea, 0x1c, 0xd8, 0xa6, 0xb3, 0x5e, 0x3d, 0x34, 0x50, 0xd7, 0xac, 0xa2, 0x07, 0xb5, 0x03, 0x7f, 0xc5, 0x83, 0x39, 0xb0, 0xc2, 0xa1, 0x76, 0x87, 0xac, 0x7f, 0xbf, 0x26, 0xf3, 0xdc, 0xf9, 0xc7, 0xb7, 0xe8, 0x73, 0xb1, 0x90, 0xc6, 0x5f, 0xc6, 0x2a, 0x91, 0xb1, 0x48, 0x81, 0x0e, 0xe4, 0x12, 0xb8, 0xc9, 0x3a, 0x76, 0x02, 0x8a, 0xa6, 0x5d, 0xf9, 0xe2, 0x1a, }; static const unsigned char ecdh_brainpoolp512r1_1123_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1123_sharedsecret[] = { 0x57, 0xa3, 0x9d, 0xcb, 0x7e, 0x42, 0x18, 0xd7, 0x2d, 0xb9, 0x94, 0x78, 0x59, 0x08, 0xc0, 0xc4, 0x1e, 0x5c, 0xb1, 0x79, 0x4f, 0xca, 0xad, 0x33, 0x0a, 0x15, 0x8f, 0xa5, 0x91, 0xbf, 0x46, 0xc7, 0xc5, 0x1f, 0x76, 0x55, 0xb2, 0x0f, 0x87, 0x61, 0xc1, 0xae, 0x05, 0x96, 0x66, 0x8c, 0x11, 0x4c, 0xba, 0x0f, 0x9e, 0xa4, 0xcf, 0x7d, 0x39, 0xab, 0x36, 0x01, 0x47, 0x9f, 0x79, 0x05, 0x98, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1123 = { .name = "ecdh_brainpoolp512r1_1123", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1123_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1123_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1123_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 45 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1124 for ECDH, tcId is 46 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1124_peerpubkey[] = { 0x8b, 0x91, 0x0e, 0xd3, 0x6a, 0x33, 0x59, 0x10, 0x3d, 0xf8, 0x7b, 0x55, 0xe3, 0x26, 0xda, 0x45, 0x8d, 0x1c, 0xb3, 0xdd, 0xaf, 0x9c, 0xd6, 0x3a, 0x78, 0x4f, 0x3d, 0x49, 0xad, 0xf9, 0xa2, 0x2a, 0x68, 0x5a, 0xb3, 0xe3, 0x75, 0x2a, 0x2c, 0x33, 0x68, 0x37, 0x7b, 0x04, 0xc4, 0x17, 0x24, 0xf1, 0x9f, 0xd5, 0x86, 0x57, 0x8a, 0x67, 0x42, 0x40, 0x38, 0x16, 0xcd, 0x5c, 0x1d, 0x64, 0x7b, 0x12, 0x78, 0xf0, 0xd5, 0xc0, 0xc2, 0xe5, 0x91, 0xbd, 0x35, 0x89, 0x54, 0x16, 0x78, 0x7f, 0x1e, 0x91, 0xff, 0x91, 0xa6, 0x92, 0x8c, 0x76, 0x3a, 0x87, 0xc1, 0xa3, 0xc8, 0xe5, 0x08, 0x29, 0x8a, 0x80, 0xb1, 0xbc, 0x6b, 0x33, 0xf5, 0x0f, 0x71, 0x25, 0xbd, 0x38, 0x55, 0x6d, 0x30, 0xdc, 0xc7, 0x61, 0xd9, 0xd5, 0xca, 0x97, 0xd6, 0x45, 0xcd, 0x89, 0x8a, 0xb5, 0xe4, 0x67, 0x73, 0x45, 0x33, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_1124_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1124_sharedsecret[] = { 0x65, 0xc0, 0xb8, 0xa5, 0x0d, 0x18, 0x83, 0xe0, 0x43, 0xb9, 0x5f, 0x7e, 0x7b, 0xe9, 0xbc, 0x38, 0x99, 0x33, 0xa6, 0xee, 0x49, 0xa5, 0xda, 0x47, 0xef, 0x76, 0x95, 0x17, 0x53, 0xe7, 0x51, 0x19, 0xb1, 0xd0, 0x08, 0xe4, 0x31, 0x01, 0xd6, 0x52, 0x57, 0x57, 0x09, 0x44, 0xe3, 0x1c, 0x42, 0x32, 0x92, 0x47, 0x8b, 0x47, 0x0c, 0x01, 0x93, 0xf5, 0x6c, 0x01, 0x7e, 0xfe, 0x4c, 0xa6, 0xcd, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1124 = { .name = "ecdh_brainpoolp512r1_1124", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1124_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1124_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1124_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 46 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1125 for ECDH, tcId is 47 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1125_peerpubkey[] = { 0x0e, 0xa7, 0xf9, 0xba, 0x1e, 0xa7, 0x69, 0x01, 0x62, 0x64, 0xa8, 0xd5, 0xc9, 0x33, 0x2a, 0xe4, 0xbf, 0xf5, 0x0b, 0x08, 0x01, 0x73, 0x97, 0xbf, 0xf7, 0xf8, 0x06, 0xe3, 0xd8, 0x2e, 0x5a, 0x52, 0x5b, 0xa8, 0x43, 0xde, 0x2a, 0x66, 0xd7, 0x14, 0x8f, 0x49, 0xad, 0x50, 0xd2, 0xe6, 0xe9, 0xd2, 0x0d, 0xfb, 0xe2, 0x76, 0xa2, 0xb4, 0x3f, 0x16, 0x1d, 0x99, 0xff, 0xdb, 0x58, 0x3a, 0x56, 0xcd, 0x4c, 0x00, 0x13, 0xce, 0xdc, 0x87, 0x6c, 0xcd, 0x02, 0x7f, 0xee, 0xfb, 0x09, 0xda, 0x8d, 0x94, 0x9f, 0x93, 0x48, 0x00, 0x5b, 0x06, 0xb0, 0xa0, 0x66, 0x74, 0xa9, 0xf8, 0xd0, 0xd3, 0x4f, 0x98, 0x45, 0x63, 0x63, 0xfb, 0x5e, 0x14, 0x85, 0x93, 0x7f, 0xad, 0xee, 0x8c, 0x09, 0x9b, 0xa7, 0x93, 0xc8, 0xe6, 0xcd, 0xf0, 0x2c, 0x88, 0xd1, 0x8e, 0xe8, 0x59, 0x39, 0x52, 0xc1, 0x44, 0xae, 0x89, }; static const unsigned char ecdh_brainpoolp512r1_1125_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1125_sharedsecret[] = { 0x99, 0x86, 0x11, 0xb5, 0x10, 0x38, 0xc3, 0x52, 0x18, 0xda, 0xb0, 0x11, 0xb0, 0x19, 0xd4, 0x71, 0x43, 0xa6, 0x65, 0x28, 0xbe, 0x67, 0xbc, 0x02, 0x06, 0x65, 0x75, 0x05, 0x5e, 0x50, 0xd8, 0x0c, 0xbe, 0x5a, 0x38, 0x60, 0xc6, 0xf0, 0xb5, 0x7f, 0xd4, 0x48, 0x5a, 0x40, 0x9c, 0x70, 0xda, 0xa4, 0x54, 0x65, 0x79, 0x2f, 0x6c, 0x4d, 0xf8, 0xa5, 0x7a, 0x9e, 0x3e, 0xce, 0xe1, 0x64, 0x06, 0xd4, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1125 = { .name = "ecdh_brainpoolp512r1_1125", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1125_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1125_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1125_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 47 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1126 for ECDH, tcId is 48 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1126_peerpubkey[] = { 0x76, 0x79, 0x44, 0x3e, 0xda, 0x5f, 0x2d, 0xc6, 0xe7, 0xa5, 0x2d, 0x4b, 0x4e, 0x72, 0xd8, 0xe2, 0x8b, 0xce, 0x4e, 0xed, 0xea, 0x07, 0x6d, 0x3c, 0x81, 0x5d, 0x60, 0x07, 0x0c, 0xfd, 0x99, 0xd9, 0x86, 0x20, 0x3e, 0x42, 0x18, 0x7e, 0x2a, 0xe3, 0xd3, 0x96, 0xe3, 0xc3, 0xb6, 0x14, 0x62, 0xec, 0x42, 0x12, 0xfa, 0x47, 0x95, 0xb6, 0xde, 0x94, 0x76, 0xb6, 0x94, 0x0c, 0x16, 0x4f, 0x93, 0x0c, 0x53, 0xe6, 0x50, 0x91, 0xf9, 0x22, 0xbd, 0xa0, 0x3e, 0xfb, 0x73, 0x2d, 0x78, 0x1b, 0x06, 0xae, 0x3f, 0xd4, 0x73, 0x97, 0x31, 0x93, 0xad, 0xb9, 0x72, 0xb4, 0xbd, 0x8d, 0xfc, 0x28, 0x2d, 0x49, 0xf6, 0x91, 0xe9, 0xdd, 0x9e, 0x33, 0xae, 0xd5, 0x98, 0xd6, 0xe6, 0x2a, 0x4b, 0xc2, 0x9c, 0x7e, 0xda, 0x48, 0xba, 0xac, 0xa9, 0xa7, 0x21, 0x73, 0x0d, 0xb4, 0xb9, 0xe2, 0x1e, 0x09, 0x6f, 0x05, }; static const unsigned char ecdh_brainpoolp512r1_1126_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1126_sharedsecret[] = { 0x8c, 0xe3, 0xae, 0x14, 0xcc, 0x19, 0x9f, 0xac, 0x0c, 0xb3, 0x88, 0x2f, 0x61, 0xee, 0x20, 0xa4, 0x53, 0xa4, 0x45, 0x85, 0xce, 0x52, 0x7d, 0xf9, 0x8d, 0xad, 0x4f, 0x8a, 0x06, 0x74, 0x25, 0x80, 0x39, 0xcf, 0x61, 0x12, 0x8c, 0x66, 0xe5, 0x69, 0xab, 0x5e, 0x87, 0xa0, 0xc0, 0xfd, 0x2b, 0x1a, 0x8e, 0x8c, 0xd9, 0x10, 0xb3, 0xc6, 0x51, 0x94, 0x64, 0x42, 0x03, 0x83, 0xcf, 0x36, 0x0e, 0x7b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1126 = { .name = "ecdh_brainpoolp512r1_1126", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1126_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1126_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1126_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 48 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1127 for ECDH, tcId is 49 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1127_peerpubkey[] = { 0x74, 0x98, 0x1a, 0x31, 0x48, 0xc1, 0xd1, 0x39, 0x66, 0x0c, 0x73, 0xfb, 0x14, 0x56, 0x2f, 0xc7, 0x0c, 0xeb, 0x03, 0xa1, 0xec, 0x0c, 0x7f, 0xca, 0x24, 0x40, 0x3a, 0x46, 0x33, 0xa4, 0x19, 0x87, 0x39, 0x37, 0x4f, 0x18, 0x88, 0x46, 0x0e, 0xdd, 0xac, 0xb7, 0x33, 0xd4, 0x1a, 0xba, 0xa0, 0x69, 0xe8, 0x26, 0x5a, 0x63, 0x62, 0xce, 0xac, 0x08, 0x06, 0x90, 0x10, 0xc1, 0x92, 0x43, 0xda, 0xe8, 0x59, 0xf5, 0x22, 0xe3, 0xed, 0xa2, 0xbb, 0x57, 0xf7, 0xd2, 0xf7, 0xb3, 0x8f, 0xa5, 0xe0, 0xbd, 0x85, 0xa9, 0x1a, 0x1e, 0x10, 0xdf, 0x85, 0xd0, 0xcc, 0x48, 0xd9, 0x38, 0x45, 0x5f, 0x50, 0xf3, 0xf8, 0x16, 0x39, 0xdf, 0x15, 0x44, 0xce, 0x1a, 0xed, 0xa3, 0xa9, 0xd5, 0xf9, 0x1a, 0xa0, 0x81, 0xbb, 0x61, 0xb3, 0xe2, 0x96, 0x90, 0xcc, 0xf7, 0xb0, 0xaa, 0x75, 0xa2, 0x43, 0x54, 0x70, 0x7b, }; static const unsigned char ecdh_brainpoolp512r1_1127_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1127_sharedsecret[] = { 0x99, 0xe3, 0x39, 0xf5, 0x37, 0x74, 0x81, 0xee, 0x47, 0x8b, 0x5e, 0xa9, 0xc6, 0x3b, 0xe1, 0xdb, 0x8c, 0x81, 0x62, 0x4d, 0x3a, 0x1c, 0x07, 0xf3, 0xb2, 0x84, 0x44, 0x73, 0x65, 0x2e, 0xe8, 0x23, 0xb6, 0xe4, 0x66, 0xa4, 0x99, 0x56, 0x4c, 0x7f, 0x33, 0x5a, 0xb6, 0xbc, 0xd4, 0xe0, 0xb4, 0x8f, 0x9c, 0x06, 0xba, 0x14, 0x98, 0xae, 0x6e, 0xfe, 0xaf, 0x9d, 0x43, 0xfb, 0xd3, 0x6e, 0xd1, 0x04, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1127 = { .name = "ecdh_brainpoolp512r1_1127", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1127_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1127_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1127_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 49 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1128 for ECDH, tcId is 50 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1128_peerpubkey[] = { 0x0b, 0x4e, 0xf0, 0x5f, 0x54, 0xc8, 0x98, 0xf2, 0xa5, 0xe6, 0x46, 0xef, 0x65, 0xf7, 0xfd, 0xd3, 0xe0, 0xe9, 0x3d, 0x80, 0x78, 0x0c, 0x4f, 0x81, 0x4d, 0x63, 0xfd, 0xf0, 0xd1, 0x9d, 0x24, 0x23, 0x23, 0x3d, 0x03, 0x16, 0x76, 0xb8, 0xd5, 0xa8, 0x6b, 0x36, 0x4b, 0x77, 0x10, 0x52, 0xbd, 0x3a, 0x5a, 0x82, 0xc2, 0x49, 0x11, 0x8d, 0x20, 0x40, 0xdf, 0xf3, 0x1a, 0x21, 0x07, 0xfb, 0xb6, 0xdf, 0x67, 0xd7, 0x75, 0x71, 0x5d, 0x20, 0xb0, 0xd5, 0x0c, 0x83, 0x29, 0xee, 0x77, 0x11, 0xe7, 0x69, 0x55, 0x70, 0x7b, 0x60, 0x16, 0x25, 0x7b, 0x63, 0x6b, 0x2b, 0xa8, 0x97, 0xa7, 0x8b, 0x5e, 0x32, 0xc2, 0x5d, 0xe3, 0x24, 0x9f, 0x85, 0xd7, 0x3f, 0x66, 0xcf, 0x19, 0x80, 0x57, 0xbe, 0x27, 0x89, 0x4f, 0xdb, 0x89, 0xde, 0x94, 0x67, 0x2c, 0xbf, 0x4d, 0x97, 0xc6, 0xfe, 0xc4, 0x2a, 0xe0, 0xdf, }; static const unsigned char ecdh_brainpoolp512r1_1128_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1128_sharedsecret[] = { 0x7c, 0x81, 0x13, 0xe4, 0x0d, 0x3b, 0x64, 0xdb, 0x61, 0x72, 0x55, 0xdd, 0xe1, 0x92, 0x22, 0xeb, 0xa2, 0x46, 0xf0, 0x84, 0x78, 0xd1, 0x61, 0xeb, 0x5f, 0x41, 0xa4, 0x06, 0x93, 0x69, 0x32, 0x16, 0x3b, 0x5c, 0xb2, 0xcd, 0x49, 0xcb, 0x09, 0xd1, 0xe2, 0x4c, 0x91, 0xe0, 0x2f, 0xdc, 0x1f, 0xc2, 0xc5, 0x8b, 0xda, 0xd4, 0xee, 0xbd, 0xba, 0xad, 0x72, 0xe9, 0x93, 0xfd, 0x29, 0xdc, 0x54, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1128 = { .name = "ecdh_brainpoolp512r1_1128", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1128_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1128_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1128_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 50 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1129 for ECDH, tcId is 51 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1129_peerpubkey[] = { 0x9b, 0x81, 0x8a, 0x5e, 0x19, 0x72, 0x65, 0xec, 0xee, 0x05, 0x74, 0x66, 0x3e, 0x53, 0xc1, 0x57, 0x30, 0x2c, 0x1d, 0x6c, 0x48, 0x23, 0xd5, 0x4a, 0x3a, 0x3d, 0xe5, 0x6c, 0x65, 0x60, 0x4b, 0xb3, 0xc1, 0xb5, 0x83, 0xd8, 0x4e, 0x36, 0x53, 0x60, 0x8f, 0x20, 0x0e, 0x9b, 0x40, 0xd3, 0x94, 0x31, 0x80, 0x4b, 0x36, 0x99, 0x5c, 0xc9, 0x8a, 0xb9, 0x27, 0x01, 0xa5, 0xdb, 0x62, 0x09, 0xdf, 0x28, 0x69, 0x0b, 0x8c, 0x65, 0x4b, 0x22, 0x1d, 0x70, 0xca, 0xeb, 0xa5, 0xb2, 0xea, 0xe3, 0xe8, 0x24, 0x03, 0x48, 0xbc, 0x3f, 0x1d, 0xcf, 0xa9, 0x8c, 0x99, 0xa1, 0xf3, 0x1c, 0xe0, 0xc0, 0x80, 0x30, 0x54, 0xff, 0x4b, 0x41, 0xc5, 0x98, 0x02, 0x86, 0x8c, 0x80, 0xfe, 0x08, 0xe7, 0xd2, 0x08, 0xf0, 0xad, 0x2c, 0xb9, 0x81, 0xa3, 0xdc, 0x28, 0x59, 0x40, 0xb4, 0xe3, 0x16, 0x3e, 0x78, 0x8a, 0xdf, }; static const unsigned char ecdh_brainpoolp512r1_1129_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1129_sharedsecret[] = { 0x71, 0xc4, 0xf5, 0xda, 0xcd, 0x1d, 0x02, 0xc0, 0xb8, 0xa8, 0xa4, 0xe1, 0x88, 0x52, 0x8e, 0xa9, 0x19, 0x39, 0x7b, 0x9b, 0x2a, 0xf0, 0xff, 0x74, 0xde, 0x60, 0x8a, 0xa4, 0xdc, 0x7a, 0x1e, 0xfd, 0xad, 0x5c, 0xb0, 0xd1, 0x93, 0xb1, 0xd5, 0xf0, 0xdc, 0xe5, 0x1e, 0x02, 0x21, 0x12, 0xd9, 0x8f, 0x63, 0xce, 0xd5, 0x74, 0x3b, 0x45, 0xab, 0x26, 0x6d, 0xe2, 0xc6, 0x18, 0xec, 0x0a, 0x58, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1129 = { .name = "ecdh_brainpoolp512r1_1129", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1129_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1129_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1129_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 51 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1130 for ECDH, tcId is 52 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1130_peerpubkey[] = { 0x20, 0xc4, 0xde, 0xca, 0xa9, 0x67, 0x32, 0x5b, 0x80, 0x38, 0xb4, 0x08, 0xae, 0x9c, 0xf5, 0x63, 0x4c, 0x81, 0x1d, 0x11, 0x67, 0x55, 0x83, 0x75, 0x39, 0x36, 0x7f, 0x4e, 0x72, 0xa2, 0x76, 0x7e, 0xe3, 0xb4, 0xba, 0xbc, 0x3c, 0x57, 0xe8, 0x2e, 0x07, 0x29, 0x6a, 0xb6, 0xd4, 0xb3, 0x44, 0x62, 0x61, 0xe7, 0xd0, 0x1f, 0xbc, 0xa7, 0xc4, 0x74, 0xf1, 0xa1, 0x57, 0xee, 0x69, 0x43, 0x61, 0xa0, 0x4d, 0x28, 0x75, 0x31, 0xb8, 0xbc, 0x54, 0xce, 0x97, 0xe1, 0xd3, 0x2c, 0xfb, 0x19, 0x1d, 0x8e, 0xde, 0x90, 0xef, 0xd9, 0x15, 0xc3, 0x0b, 0xcc, 0x06, 0x34, 0xcc, 0xaf, 0x81, 0x99, 0x80, 0xfb, 0x76, 0xe3, 0x33, 0x2d, 0x99, 0x1d, 0x67, 0xe7, 0x21, 0x18, 0x97, 0x13, 0xef, 0xa6, 0x88, 0x0d, 0xd7, 0xb3, 0x86, 0xaa, 0x01, 0xb3, 0xf4, 0x4b, 0xde, 0x0f, 0x4d, 0x04, 0x76, 0x5a, 0x4f, 0x65, }; static const unsigned char ecdh_brainpoolp512r1_1130_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1130_sharedsecret[] = { 0xa3, 0xec, 0xa8, 0x54, 0x8f, 0xb5, 0x99, 0x55, 0x33, 0x1f, 0x31, 0xcb, 0x62, 0xd4, 0x23, 0x1e, 0xa1, 0x0b, 0xb7, 0x16, 0x4c, 0x0e, 0x00, 0x97, 0xcc, 0x80, 0xe8, 0x2d, 0x35, 0xb4, 0xb0, 0x33, 0xcf, 0xf9, 0xb6, 0x0b, 0x46, 0xdf, 0xb2, 0x27, 0xd1, 0xcb, 0x6c, 0x33, 0xef, 0x2c, 0x99, 0x47, 0x59, 0x15, 0x14, 0x22, 0xc5, 0x91, 0x3c, 0xf9, 0x89, 0xd5, 0x4b, 0x00, 0xb9, 0x0f, 0x5f, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1130 = { .name = "ecdh_brainpoolp512r1_1130", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1130_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1130_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1130_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 52 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1131 for ECDH, tcId is 53 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1131_peerpubkey[] = { 0xa9, 0x7a, 0x6d, 0x9c, 0x85, 0x4f, 0x6a, 0x11, 0x24, 0x51, 0x23, 0x18, 0x45, 0x5e, 0x94, 0x15, 0x14, 0x61, 0x3f, 0x07, 0x96, 0x01, 0x5d, 0x32, 0xf7, 0xe7, 0x27, 0x54, 0xe3, 0x84, 0xf1, 0x70, 0x18, 0xf5, 0x99, 0x2c, 0xa0, 0x4e, 0x48, 0x4a, 0x08, 0x06, 0xb5, 0x3a, 0x17, 0xca, 0xb8, 0xbf, 0x7f, 0x3f, 0x79, 0xf1, 0x9d, 0x6a, 0x4e, 0x77, 0x3e, 0x09, 0xef, 0x8b, 0xb3, 0x97, 0xb7, 0x1a, 0x63, 0xbb, 0x67, 0xe4, 0x41, 0x7d, 0xe7, 0xd4, 0x7f, 0xdd, 0x72, 0x9a, 0x94, 0x3d, 0x85, 0xa3, 0x63, 0x8a, 0x10, 0x93, 0x88, 0x4c, 0x9e, 0x11, 0x33, 0x0b, 0x60, 0x89, 0x42, 0x6d, 0x3a, 0xf5, 0x32, 0x64, 0x76, 0x1f, 0x70, 0xd4, 0x4a, 0x88, 0x7e, 0x4b, 0x07, 0x5f, 0x3c, 0xfd, 0x54, 0x95, 0x9e, 0xb0, 0x0f, 0xcb, 0x35, 0x19, 0x9f, 0x60, 0xe7, 0x50, 0x3b, 0x01, 0xe9, 0x2d, 0xc7, 0xf9, }; static const unsigned char ecdh_brainpoolp512r1_1131_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1131_sharedsecret[] = { 0xa5, 0x8e, 0x93, 0x60, 0x82, 0x8c, 0x56, 0x0d, 0x57, 0xab, 0x3b, 0xbe, 0xab, 0x10, 0x62, 0x11, 0x56, 0xeb, 0x85, 0xba, 0xc4, 0x2f, 0xdc, 0x4c, 0x7d, 0x2a, 0x39, 0xb5, 0xdb, 0x0b, 0x1c, 0x6d, 0xb6, 0x1f, 0x24, 0xe5, 0xf6, 0xaa, 0xc2, 0x5b, 0x31, 0xd3, 0x02, 0x19, 0x9e, 0x1e, 0x6a, 0x37, 0x56, 0xd3, 0xc7, 0x3c, 0x9c, 0xa0, 0x3a, 0x3b, 0x22, 0x69, 0xd0, 0xf6, 0x1c, 0x38, 0x6f, 0xa5, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1131 = { .name = "ecdh_brainpoolp512r1_1131", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1131_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1131_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1131_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 53 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1132 for ECDH, tcId is 54 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1132_peerpubkey[] = { 0x48, 0x1d, 0x9e, 0x35, 0xd8, 0xb9, 0xdc, 0x17, 0xdd, 0x15, 0xd6, 0x91, 0x58, 0xe6, 0xfc, 0xe2, 0x54, 0x17, 0x60, 0xf8, 0xe2, 0x68, 0xb0, 0x75, 0xd0, 0xfb, 0x9e, 0xc8, 0xd5, 0x47, 0x80, 0x76, 0x84, 0x9b, 0xfb, 0x90, 0x10, 0xc5, 0x16, 0xf4, 0x44, 0xaf, 0xdb, 0x2e, 0xd0, 0x37, 0x5e, 0xcf, 0x8f, 0x31, 0x3a, 0x1f, 0x41, 0x5e, 0x4e, 0xc5, 0xa9, 0xc8, 0x7a, 0x4d, 0x5a, 0x0b, 0xc6, 0x77, 0x9f, 0x98, 0x57, 0x92, 0xb9, 0x41, 0x84, 0x77, 0xbd, 0x28, 0x7b, 0x7b, 0xee, 0x27, 0x16, 0x51, 0xab, 0xa0, 0x8b, 0xdb, 0x56, 0xb6, 0x00, 0xf0, 0x10, 0x75, 0xe7, 0x53, 0x48, 0x1e, 0xc4, 0xc1, 0x13, 0x17, 0xfb, 0x32, 0xae, 0x65, 0x1b, 0xb9, 0x49, 0x48, 0x63, 0xb1, 0xa2, 0x22, 0x3b, 0xa2, 0x57, 0xd7, 0x76, 0x83, 0x85, 0xea, 0xda, 0x9a, 0x80, 0xed, 0x4f, 0x16, 0x1b, 0xd0, 0x68, 0x82, }; static const unsigned char ecdh_brainpoolp512r1_1132_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1132_sharedsecret[] = { 0x19, 0x99, 0xae, 0xc9, 0x4a, 0x8f, 0xb5, 0x38, 0xf5, 0x27, 0x47, 0x56, 0x81, 0xf5, 0x4d, 0x2e, 0xf0, 0xea, 0x33, 0xaf, 0x2a, 0x8c, 0xd0, 0x77, 0x3c, 0xf7, 0x0e, 0xfd, 0xb2, 0x2e, 0x36, 0x8b, 0xde, 0x20, 0x4b, 0xf7, 0xb1, 0x9a, 0x77, 0xce, 0xf7, 0x9a, 0x83, 0x5a, 0xe2, 0xda, 0xb1, 0x52, 0x1f, 0x40, 0x71, 0x9d, 0xc2, 0x28, 0x4d, 0xf5, 0x0f, 0x14, 0x42, 0x4d, 0x9c, 0x79, 0x4a, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1132 = { .name = "ecdh_brainpoolp512r1_1132", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1132_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1132_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1132_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 54 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1133 for ECDH, tcId is 55 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1133_peerpubkey[] = { 0x28, 0x06, 0xe9, 0x6f, 0x85, 0x7a, 0x59, 0xdc, 0x3e, 0xa3, 0x4e, 0x6b, 0x7f, 0x30, 0x02, 0xa8, 0xef, 0xe9, 0x1a, 0xb1, 0xb9, 0x5b, 0x01, 0xf6, 0xf5, 0x07, 0x16, 0xce, 0xfd, 0x58, 0x16, 0x6e, 0xe4, 0xb0, 0x7a, 0xdb, 0x9e, 0x7e, 0x5c, 0xec, 0x05, 0xbb, 0x08, 0xbf, 0x2a, 0xe5, 0xc4, 0x2d, 0x89, 0x8c, 0x0b, 0x35, 0xd6, 0xc5, 0xa9, 0x5f, 0x0b, 0x70, 0xf4, 0x4f, 0x0a, 0xc3, 0x9d, 0xa2, 0x9d, 0xfd, 0x67, 0x16, 0x48, 0xcf, 0x4d, 0xa8, 0x43, 0x66, 0x6c, 0x50, 0xda, 0xc3, 0x3f, 0x40, 0x18, 0x3b, 0x57, 0xf2, 0x8c, 0x9a, 0xff, 0xd7, 0xa1, 0xb2, 0xce, 0xcf, 0xe1, 0x6c, 0xa6, 0x9e, 0x5c, 0x48, 0x90, 0x64, 0x48, 0xc3, 0x65, 0x84, 0x32, 0xb0, 0x87, 0xf8, 0x30, 0xa8, 0xf5, 0x64, 0x09, 0x52, 0x07, 0xbe, 0xc0, 0xb4, 0x35, 0xb2, 0xe7, 0xa9, 0x18, 0x88, 0x78, 0xda, 0xfa, 0xdd, }; static const unsigned char ecdh_brainpoolp512r1_1133_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1133_sharedsecret[] = { 0x57, 0x3e, 0xc1, 0x4a, 0x4f, 0x6b, 0xdf, 0x01, 0x4d, 0xbf, 0x2a, 0x90, 0x16, 0x6a, 0x7c, 0x00, 0xcf, 0x72, 0x9c, 0xaa, 0x4a, 0x3e, 0x4d, 0xff, 0x73, 0x9f, 0xe8, 0xf4, 0xce, 0xbd, 0x7e, 0x11, 0x06, 0xe6, 0x8d, 0xc8, 0xaf, 0xf4, 0x1a, 0xc1, 0xfd, 0x14, 0x6f, 0x16, 0x5c, 0x7d, 0xbf, 0x63, 0x6d, 0x29, 0x9b, 0x94, 0x27, 0x3a, 0xf2, 0x03, 0xe2, 0x61, 0x15, 0xc8, 0xa3, 0xef, 0x61, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1133 = { .name = "ecdh_brainpoolp512r1_1133", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1133_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1133_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1133_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 55 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1134 for ECDH, tcId is 56 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1134_peerpubkey[] = { 0x06, 0xca, 0x8b, 0x4c, 0x9e, 0x08, 0xdf, 0x7c, 0xc9, 0xed, 0xc7, 0xd3, 0x0f, 0x03, 0x28, 0x29, 0xb5, 0xab, 0xe1, 0xb7, 0xc4, 0x87, 0x75, 0x0c, 0x99, 0x70, 0xdb, 0xf2, 0x0c, 0x3f, 0x15, 0x01, 0xf6, 0x3d, 0xef, 0xfb, 0xe7, 0x82, 0xd3, 0xa9, 0xb0, 0x80, 0x9b, 0x11, 0x01, 0x23, 0xd1, 0x19, 0x0a, 0xd9, 0x42, 0xef, 0x06, 0x03, 0x0d, 0x27, 0x60, 0xd3, 0xac, 0x59, 0x50, 0xac, 0xa3, 0x9f, 0x25, 0x8b, 0x6d, 0x44, 0x58, 0xed, 0x7d, 0x73, 0xe8, 0x68, 0xe7, 0x05, 0xdd, 0xf6, 0x1d, 0x52, 0x03, 0xd6, 0x8d, 0xc8, 0xf5, 0x30, 0xa4, 0x37, 0x39, 0x51, 0xc1, 0x38, 0xae, 0xf0, 0x78, 0x39, 0x69, 0xa2, 0xf8, 0x37, 0x7b, 0x4c, 0x39, 0xdd, 0xf8, 0xe2, 0x72, 0x68, 0x0f, 0x10, 0xac, 0xd8, 0x21, 0x03, 0x37, 0x98, 0xcd, 0xa9, 0x90, 0x4d, 0x33, 0x83, 0x6a, 0x13, 0x60, 0x51, 0x66, 0x62, }; static const unsigned char ecdh_brainpoolp512r1_1134_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_1134_sharedsecret[] = { 0x0c, 0xc8, 0x20, 0xeb, 0x4f, 0x25, 0x43, 0x5d, 0x50, 0xee, 0x9d, 0xaa, 0x4b, 0x0f, 0xd1, 0x7d, 0x5e, 0xfb, 0x64, 0xfe, 0x33, 0xfa, 0xdd, 0xc7, 0xfc, 0x1a, 0x3f, 0x0f, 0x82, 0x10, 0x42, 0xb1, 0x4a, 0x26, 0x73, 0x61, 0x94, 0xb2, 0x24, 0x11, 0xb7, 0xff, 0xd1, 0x39, 0xf4, 0x8b, 0x34, 0x21, 0x0b, 0xf0, 0xf6, 0x85, 0x41, 0xc7, 0x59, 0x9a, 0xb8, 0x93, 0x8d, 0x40, 0x5c, 0xe4, 0x1c, 0x0f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1134 = { .name = "ecdh_brainpoolp512r1_1134", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1134_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1134_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1134_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 56 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1135 for ECDH, tcId is 57 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1135_peerpubkey[] = { 0x94, 0x1c, 0xfb, 0xed, 0x5d, 0x51, 0x9b, 0x77, 0xdf, 0x0f, 0x0d, 0x1b, 0x33, 0x3f, 0x94, 0x18, 0x49, 0xd2, 0x25, 0x3a, 0x04, 0x57, 0x80, 0x70, 0x01, 0xd1, 0xd8, 0x0e, 0x3f, 0x9a, 0x65, 0x01, 0x9c, 0x7a, 0x9f, 0x30, 0xea, 0x58, 0x3c, 0x1e, 0x84, 0x70, 0xe4, 0xa1, 0xd1, 0xc2, 0x32, 0x1c, 0xb7, 0xd4, 0x7b, 0x96, 0xf0, 0x62, 0x9e, 0xd7, 0xcb, 0xae, 0x28, 0x4c, 0xb3, 0x02, 0xb8, 0x2e, 0x12, 0xa4, 0x41, 0x18, 0x0a, 0xf4, 0x13, 0x79, 0xb9, 0x8f, 0x22, 0xdc, 0xf0, 0x60, 0xc5, 0x9a, 0x8f, 0xa5, 0x08, 0x2d, 0x9e, 0xd9, 0xe6, 0x79, 0x2b, 0xfc, 0x4e, 0x6e, 0xc3, 0x7a, 0xef, 0xf8, 0x1b, 0xb8, 0xe9, 0xed, 0x0c, 0x51, 0x65, 0x5d, 0x02, 0x57, 0xdb, 0x60, 0x76, 0xa8, 0xef, 0xf6, 0x9c, 0xdf, 0x64, 0xd7, 0x76, 0xcd, 0xd0, 0x3b, 0x00, 0x7e, 0xed, 0x5a, 0x3b, 0x79, 0x95, 0x97, }; static const unsigned char ecdh_brainpoolp512r1_1135_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1135_sharedsecret[] = { 0x26, 0xb6, 0x8c, 0x56, 0xf0, 0xfa, 0x97, 0xcd, 0x01, 0x2f, 0xbc, 0x97, 0x9f, 0x03, 0x75, 0x73, 0x1f, 0xcd, 0xda, 0xd4, 0x2c, 0xd6, 0x26, 0x45, 0xb4, 0x23, 0xbf, 0xcc, 0x7a, 0x36, 0x56, 0x79, 0x5b, 0x1f, 0x9e, 0xa5, 0x4b, 0x7f, 0x21, 0xa0, 0xdd, 0x03, 0x01, 0xf1, 0x13, 0x85, 0x8b, 0x9c, 0xd2, 0xf0, 0x39, 0xb1, 0x62, 0x75, 0xf7, 0xcf, 0x42, 0xdf, 0x86, 0x1c, 0x84, 0xd8, 0x62, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1135 = { .name = "ecdh_brainpoolp512r1_1135", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1135_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1135_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1135_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 57 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1136 for ECDH, tcId is 58 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1136_peerpubkey[] = { 0x20, 0x55, 0x5d, 0x95, 0xe2, 0x98, 0x64, 0x0c, 0x85, 0xbd, 0xf2, 0x38, 0x05, 0x91, 0x04, 0x7b, 0xcf, 0x34, 0x85, 0x4d, 0x0a, 0xb7, 0x27, 0x98, 0x72, 0xd5, 0x12, 0xce, 0xc2, 0x9a, 0x05, 0x63, 0x82, 0x64, 0x9f, 0xd9, 0xfa, 0x48, 0xab, 0x4e, 0x93, 0x50, 0xf9, 0x26, 0xf2, 0xed, 0x80, 0x0b, 0x56, 0x4b, 0xf7, 0xe6, 0x10, 0xff, 0x67, 0x2d, 0xcc, 0xf3, 0x13, 0x87, 0x8b, 0xf2, 0xb0, 0x42, 0x36, 0xb3, 0x03, 0x60, 0x13, 0x72, 0x88, 0xd6, 0xbb, 0xbb, 0xc8, 0xf4, 0x7d, 0x75, 0x52, 0x87, 0x1b, 0x48, 0x11, 0xac, 0x82, 0xc3, 0x13, 0x22, 0xf6, 0x6d, 0x64, 0x9c, 0x15, 0x2e, 0xee, 0xf6, 0xbf, 0x77, 0x22, 0xaf, 0xf8, 0x6c, 0xe8, 0x80, 0x75, 0x0f, 0x0a, 0xf9, 0x98, 0xce, 0xc4, 0x1a, 0x56, 0x16, 0xee, 0xf3, 0x96, 0xf7, 0x00, 0xb6, 0x63, 0x5a, 0x6f, 0x30, 0xa2, 0x8a, 0x2f, 0xc4, }; static const unsigned char ecdh_brainpoolp512r1_1136_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1136_sharedsecret[] = { 0x1d, 0xc2, 0x89, 0x16, 0xba, 0xd4, 0x75, 0x0e, 0x17, 0xa3, 0x39, 0xfd, 0xc5, 0x6f, 0x3b, 0xca, 0x05, 0xb7, 0x19, 0x10, 0x37, 0xcd, 0x7a, 0xbe, 0xe1, 0x7f, 0xfb, 0x3c, 0x36, 0xfb, 0x21, 0xc0, 0x95, 0xff, 0xa2, 0xa6, 0xf9, 0x6e, 0x85, 0x6b, 0x24, 0x21, 0xcc, 0x7f, 0xec, 0xee, 0xb2, 0xc5, 0x9a, 0xe8, 0xd6, 0x2e, 0x70, 0xbc, 0xc8, 0x2c, 0x8b, 0x44, 0xc4, 0xbd, 0x5c, 0xb6, 0xf0, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1136 = { .name = "ecdh_brainpoolp512r1_1136", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1136_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1136_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1136_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 58 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1137 for ECDH, tcId is 59 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1137_peerpubkey[] = { 0x2f, 0x50, 0x77, 0xa7, 0x80, 0x32, 0xbe, 0xb8, 0x1a, 0xed, 0x45, 0x46, 0x9f, 0x99, 0x93, 0x63, 0x99, 0x56, 0x35, 0xcf, 0xc6, 0x03, 0xba, 0xe6, 0x97, 0x66, 0x16, 0x51, 0xc7, 0x40, 0x3e, 0x99, 0x8a, 0x44, 0x1b, 0xcd, 0x94, 0xf5, 0xf4, 0xc3, 0x4e, 0x6c, 0x1c, 0x71, 0x4e, 0xa2, 0xa5, 0xc5, 0xd9, 0x5d, 0xad, 0x39, 0xdb, 0x80, 0xac, 0xdd, 0xf2, 0xcc, 0x7d, 0x30, 0xd6, 0x22, 0xc6, 0x6b, 0x1c, 0xf2, 0x5e, 0x6d, 0xdb, 0xdd, 0x67, 0xf7, 0xa9, 0xb4, 0xc4, 0x98, 0xbc, 0xc9, 0xfe, 0x67, 0xbf, 0xf0, 0xda, 0x7a, 0xeb, 0x4a, 0x93, 0xee, 0x29, 0x2c, 0xc4, 0x97, 0xd7, 0x2b, 0xfa, 0x56, 0x34, 0xe7, 0xfc, 0x6f, 0x47, 0x5e, 0x28, 0x69, 0xd9, 0x12, 0x43, 0xdd, 0x68, 0x00, 0x08, 0x4c, 0x69, 0x6e, 0x05, 0xc3, 0xe7, 0x9b, 0xb0, 0xc8, 0xfd, 0x10, 0xf2, 0xbf, 0x2e, 0xe6, 0x4f, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1137_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1137_sharedsecret[] = { 0x5b, 0x55, 0x33, 0x1a, 0x65, 0xc8, 0xd2, 0xd4, 0xf9, 0x6e, 0x8b, 0xa0, 0xa0, 0xfc, 0x7e, 0xfa, 0x05, 0x05, 0x7b, 0xeb, 0x49, 0x7f, 0x67, 0x70, 0x31, 0x82, 0x58, 0x44, 0x03, 0x1d, 0x5f, 0x14, 0x66, 0xa0, 0xf8, 0x3e, 0x3f, 0x9a, 0xa6, 0xfc, 0xda, 0x4f, 0xf4, 0x58, 0x88, 0x20, 0xfe, 0x25, 0x19, 0xb6, 0x82, 0x8d, 0x1d, 0xa4, 0xef, 0x49, 0xe9, 0x71, 0xdc, 0x17, 0x03, 0x5e, 0x68, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1137 = { .name = "ecdh_brainpoolp512r1_1137", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1137_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1137_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1137_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 59 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1138 for ECDH, tcId is 60 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1138_peerpubkey[] = { 0x10, 0xc0, 0xb2, 0xe6, 0x26, 0x98, 0x57, 0x5d, 0x6d, 0x4a, 0xb0, 0x1e, 0x43, 0x1d, 0x39, 0x3f, 0x41, 0xc9, 0xa3, 0x87, 0xeb, 0x0f, 0x86, 0x19, 0xed, 0x1a, 0x81, 0x0f, 0xaf, 0xdf, 0xf7, 0x43, 0xa3, 0x3c, 0x02, 0xf4, 0xdd, 0xfa, 0x36, 0x58, 0xa2, 0x88, 0xdc, 0x63, 0x83, 0x32, 0x1b, 0x0f, 0x66, 0x82, 0xa5, 0x50, 0x4d, 0x27, 0xea, 0xa4, 0x00, 0x9e, 0xb3, 0x30, 0xe7, 0x40, 0x9f, 0x76, 0x43, 0x30, 0x0c, 0x28, 0x6b, 0x85, 0xc1, 0xb5, 0xe0, 0x0f, 0xb9, 0xca, 0x7e, 0xa5, 0x6e, 0x45, 0x72, 0x99, 0xa9, 0x4e, 0x99, 0x2e, 0x4b, 0x23, 0x38, 0xd5, 0xf9, 0x7f, 0xe6, 0xf3, 0xb1, 0x9c, 0xf6, 0xfc, 0xab, 0x98, 0x6c, 0x2c, 0x1c, 0xe3, 0x60, 0x4b, 0x94, 0x84, 0xbb, 0xf8, 0x1f, 0xe1, 0xef, 0x9e, 0xa2, 0x19, 0x1c, 0xa9, 0xcb, 0x56, 0x00, 0x8b, 0xfa, 0x89, 0x29, 0x6c, 0xd9, 0x58, }; static const unsigned char ecdh_brainpoolp512r1_1138_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1138_sharedsecret[] = { 0x7e, 0x11, 0x65, 0xf1, 0xc0, 0xb8, 0xf8, 0x94, 0x40, 0x67, 0x2b, 0xa6, 0x26, 0x66, 0x48, 0xbe, 0x4c, 0x0e, 0xa9, 0xe6, 0xa3, 0x2e, 0x9a, 0x9c, 0x8b, 0xae, 0x75, 0x1b, 0xf8, 0x67, 0xf3, 0xa9, 0x92, 0x4a, 0x3b, 0x3c, 0x5c, 0x4e, 0xd5, 0xd3, 0x61, 0xed, 0xcf, 0x82, 0xce, 0x61, 0xfe, 0xe3, 0x6f, 0xb2, 0x69, 0xa8, 0x31, 0x5f, 0x8f, 0x82, 0xa5, 0xd3, 0x49, 0x19, 0xd1, 0xec, 0x01, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1138 = { .name = "ecdh_brainpoolp512r1_1138", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1138_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1138_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1138_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 60 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1139 for ECDH, tcId is 61 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1139_peerpubkey[] = { 0x08, 0xd6, 0xac, 0xb7, 0x5b, 0x28, 0x16, 0xe4, 0x71, 0x71, 0x57, 0x5e, 0xac, 0x0a, 0x10, 0x9b, 0x42, 0xb9, 0x89, 0xab, 0xe1, 0xae, 0x1d, 0x81, 0xa7, 0x78, 0xfb, 0x2c, 0x38, 0x7e, 0x08, 0x92, 0x10, 0x34, 0xac, 0x15, 0x71, 0x47, 0xa8, 0xc9, 0xff, 0x3a, 0x64, 0x3b, 0x65, 0x37, 0x69, 0xa9, 0xec, 0x60, 0xa0, 0x52, 0x94, 0x31, 0xb0, 0x5a, 0x98, 0x4a, 0x9f, 0x4b, 0x32, 0x55, 0xc6, 0xca, 0x1c, 0x99, 0x17, 0x58, 0x3f, 0x28, 0x91, 0xda, 0x9d, 0xee, 0xcf, 0x19, 0x0e, 0x24, 0x7e, 0x62, 0x6f, 0xa4, 0x1a, 0x6b, 0x7f, 0xd1, 0xaf, 0x6e, 0xd7, 0x57, 0x57, 0xbc, 0x60, 0x07, 0x3c, 0xe4, 0x24, 0x3b, 0xf4, 0xe7, 0x76, 0x3d, 0xb6, 0x3c, 0xe7, 0x9d, 0x7b, 0x4d, 0x0d, 0xb3, 0x0d, 0xf8, 0x70, 0xa6, 0x64, 0x3e, 0x8d, 0x23, 0xe2, 0xd5, 0x29, 0x0e, 0x59, 0x3a, 0x15, 0x45, 0xd5, 0xed, }; static const unsigned char ecdh_brainpoolp512r1_1139_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1139_sharedsecret[] = { 0x02, 0x49, 0xcf, 0x29, 0x82, 0xbf, 0x64, 0xd6, 0x11, 0xec, 0xa9, 0x01, 0x93, 0x0b, 0x8d, 0x0c, 0x96, 0x78, 0xa9, 0x33, 0x21, 0xe1, 0xec, 0x60, 0x1b, 0xda, 0x6d, 0x46, 0x7f, 0xb8, 0x8d, 0xc9, 0x7d, 0xb3, 0xcb, 0xa6, 0x55, 0x81, 0xcb, 0xcc, 0xe7, 0xe1, 0x18, 0xbd, 0x9e, 0x12, 0x32, 0x32, 0x56, 0x15, 0x69, 0x1f, 0x74, 0xf9, 0xe6, 0xce, 0xcf, 0x2e, 0xe5, 0x6b, 0x5b, 0xbd, 0xcc, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1139 = { .name = "ecdh_brainpoolp512r1_1139", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1139_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1139_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1139_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 61 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1140 for ECDH, tcId is 62 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1140_peerpubkey[] = { 0x7e, 0xe6, 0x16, 0x5f, 0x53, 0xce, 0x4b, 0xa5, 0xfb, 0x2f, 0x2a, 0xe9, 0xfc, 0xd7, 0x29, 0x62, 0xc7, 0xb0, 0xd3, 0x47, 0x2c, 0x22, 0x9a, 0xa4, 0xa1, 0xa4, 0xe1, 0x77, 0x9b, 0xd7, 0xc6, 0xe0, 0x44, 0xcf, 0xbd, 0x12, 0x98, 0x02, 0xc3, 0x66, 0x95, 0x15, 0x4d, 0x13, 0x6d, 0xa4, 0x12, 0xcd, 0xa5, 0x75, 0x14, 0x9c, 0x1d, 0xa4, 0x24, 0xeb, 0xe1, 0xfd, 0xf6, 0x0c, 0x75, 0x3b, 0x9f, 0xc5, 0x6e, 0x0d, 0xd1, 0xd1, 0xe6, 0xf8, 0xda, 0xe7, 0x6c, 0xd3, 0xc5, 0x43, 0xe5, 0x45, 0x67, 0x91, 0xbe, 0xf6, 0xf8, 0x07, 0xd0, 0x79, 0x4d, 0x6e, 0x2a, 0xe7, 0xe3, 0x95, 0x32, 0x40, 0x18, 0x89, 0x23, 0x1b, 0x8d, 0xc0, 0x97, 0x35, 0x1f, 0x47, 0x3c, 0x77, 0x90, 0xbd, 0xca, 0xac, 0x7b, 0x1f, 0xc6, 0xcc, 0x05, 0x03, 0xcc, 0x78, 0xb2, 0x81, 0x07, 0x4f, 0xf0, 0x3d, 0xc8, 0xef, 0x95, 0xd0, }; static const unsigned char ecdh_brainpoolp512r1_1140_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1140_sharedsecret[] = { 0xa9, 0x72, 0xe3, 0xfe, 0xfe, 0xbd, 0x67, 0xb1, 0xd9, 0xd1, 0x57, 0xc2, 0xb3, 0xbd, 0x1c, 0x83, 0xd8, 0x7b, 0x7f, 0xdc, 0x4f, 0xe6, 0x2b, 0x9b, 0x58, 0xb9, 0xd7, 0x2d, 0x45, 0x58, 0x13, 0xff, 0x06, 0x4f, 0xf3, 0x16, 0xe8, 0x00, 0x8d, 0x2b, 0x4c, 0x2d, 0xd4, 0x8e, 0xb0, 0x54, 0x4b, 0xa4, 0x02, 0xbe, 0xdb, 0x54, 0x95, 0xf3, 0xda, 0x94, 0xb7, 0x67, 0x49, 0x2a, 0x35, 0xb1, 0x17, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1140 = { .name = "ecdh_brainpoolp512r1_1140", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1140_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1140_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1140_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 62 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1141 for ECDH, tcId is 63 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1141_peerpubkey[] = { 0x45, 0xbb, 0xb6, 0xd5, 0x13, 0xff, 0x8a, 0xdd, 0x7c, 0xa9, 0xb4, 0xad, 0x00, 0xb9, 0xaa, 0x57, 0x73, 0x6c, 0xb9, 0xb3, 0x43, 0x0c, 0x3b, 0x82, 0xef, 0xe8, 0x1d, 0xe9, 0xd2, 0xf2, 0x88, 0x70, 0x68, 0xfe, 0xa6, 0x9a, 0x53, 0x2a, 0x40, 0xb5, 0xa1, 0xf0, 0x1d, 0x05, 0x3d, 0xe5, 0x3f, 0xad, 0xe6, 0xd0, 0x7e, 0x88, 0x69, 0xa3, 0xb2, 0x46, 0x7b, 0xe4, 0xda, 0x2e, 0x9c, 0x11, 0x64, 0x26, 0x65, 0x7c, 0x3d, 0x69, 0xdd, 0xc7, 0xc4, 0xa8, 0x72, 0xe6, 0xda, 0xb2, 0x47, 0x2a, 0x6b, 0x7d, 0xde, 0x2b, 0x37, 0x1a, 0x46, 0xc2, 0x2a, 0xda, 0x28, 0xbc, 0x53, 0x90, 0x73, 0xe9, 0x96, 0x20, 0x4d, 0x0b, 0xe2, 0xc8, 0x2b, 0x85, 0x39, 0x4a, 0x97, 0x71, 0xdb, 0xd5, 0xa9, 0x2b, 0x2f, 0x9a, 0x65, 0x47, 0x25, 0xf5, 0x95, 0x8d, 0xca, 0xb9, 0xa1, 0xa0, 0x79, 0xb4, 0x73, 0x9f, 0x40, 0x12, }; static const unsigned char ecdh_brainpoolp512r1_1141_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1141_sharedsecret[] = { 0xa2, 0x28, 0xf8, 0x85, 0xf6, 0xae, 0xe5, 0x61, 0x19, 0x78, 0x2d, 0xc8, 0x72, 0xa9, 0x5a, 0xfb, 0x6d, 0x35, 0xa5, 0x97, 0x6e, 0xa3, 0xd7, 0x03, 0x65, 0x97, 0x96, 0xb4, 0x48, 0x61, 0xd1, 0xf6, 0x11, 0x23, 0xcb, 0xb7, 0x4a, 0xb0, 0x9e, 0x24, 0x91, 0x16, 0x53, 0x78, 0xa3, 0xf9, 0xbf, 0x8d, 0xf6, 0xdc, 0x3b, 0xf5, 0x91, 0x90, 0x68, 0x1a, 0x98, 0xbd, 0x54, 0xcc, 0x01, 0xa2, 0x80, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1141 = { .name = "ecdh_brainpoolp512r1_1141", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1141_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1141_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1141_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 63 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1142 for ECDH, tcId is 64 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1142_peerpubkey[] = { 0x19, 0xc2, 0x07, 0x66, 0xa9, 0x08, 0x45, 0x5a, 0xa9, 0xc3, 0x3c, 0xb0, 0x15, 0xc0, 0x84, 0x4f, 0x7f, 0xec, 0x4d, 0x71, 0x41, 0x82, 0xee, 0xa1, 0x3b, 0xb6, 0x63, 0xb9, 0x12, 0x76, 0x8d, 0x6e, 0xa2, 0x00, 0xa7, 0x89, 0xb6, 0x89, 0xaf, 0xf8, 0x69, 0xd6, 0x4b, 0x74, 0xbf, 0xb7, 0xd0, 0x41, 0xa7, 0xb2, 0xa2, 0x93, 0x27, 0xa7, 0x69, 0xa9, 0x6e, 0x29, 0x0b, 0x75, 0x72, 0xce, 0xa4, 0xc8, 0x0f, 0x4b, 0xfc, 0x49, 0x44, 0xae, 0x59, 0x21, 0xe9, 0x43, 0x74, 0x9d, 0xcb, 0x1c, 0x54, 0x94, 0x11, 0xfe, 0xef, 0x71, 0xea, 0x07, 0xdd, 0xf5, 0xfc, 0x11, 0x32, 0xbb, 0x4c, 0xf9, 0x9f, 0xce, 0x98, 0xff, 0xc5, 0xbc, 0xe7, 0xad, 0x87, 0xb7, 0xe1, 0x55, 0x4b, 0xc5, 0x2a, 0x16, 0xee, 0x4b, 0xac, 0xcc, 0xba, 0x6f, 0x93, 0x7d, 0xe4, 0xac, 0x0f, 0x1f, 0xe5, 0x2c, 0x15, 0xac, 0xae, 0x3f, }; static const unsigned char ecdh_brainpoolp512r1_1142_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1142_sharedsecret[] = { 0x53, 0x22, 0xb4, 0x95, 0x72, 0x6f, 0xcd, 0xc2, 0xab, 0xa2, 0xcc, 0x77, 0xde, 0x55, 0xae, 0x96, 0x9a, 0xfe, 0x6c, 0x28, 0xd2, 0xe2, 0x23, 0x82, 0x5b, 0x0e, 0xd0, 0x52, 0x03, 0xd5, 0x35, 0x1d, 0x6b, 0x67, 0x55, 0x10, 0x00, 0x07, 0x7a, 0x40, 0xe5, 0x5c, 0xbd, 0xee, 0x99, 0x32, 0x73, 0x2d, 0x9a, 0x76, 0x0c, 0xe4, 0x0d, 0x20, 0x8b, 0x24, 0x84, 0xf0, 0x6f, 0xe1, 0x0b, 0x6e, 0xb1, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1142 = { .name = "ecdh_brainpoolp512r1_1142", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1142_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1142_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1142_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 64 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1143 for ECDH, tcId is 65 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1143_peerpubkey[] = { 0x70, 0x14, 0x9e, 0xec, 0xd4, 0x4e, 0x43, 0x1e, 0x70, 0xa3, 0xb0, 0x86, 0x95, 0xaf, 0xda, 0x4d, 0x93, 0x5d, 0xc2, 0x59, 0xd0, 0x5c, 0x00, 0xee, 0x73, 0xed, 0x79, 0x45, 0xf3, 0x2d, 0x99, 0x5a, 0xf1, 0x07, 0x7c, 0x07, 0xda, 0xeb, 0xa0, 0x22, 0x0e, 0x5d, 0x08, 0xb4, 0x1e, 0xcb, 0x8b, 0x11, 0x67, 0xce, 0xfa, 0xbf, 0x89, 0x90, 0x38, 0x2f, 0xd0, 0x29, 0x2f, 0xc2, 0x89, 0x95, 0xba, 0x9d, 0x06, 0xe7, 0xb0, 0x86, 0xdc, 0x33, 0x9e, 0x73, 0xb0, 0x51, 0xf9, 0x53, 0xfa, 0x5a, 0xd5, 0x93, 0x59, 0x01, 0x2e, 0x3c, 0xdf, 0xfe, 0x3b, 0x1b, 0x3c, 0x47, 0x6d, 0x92, 0xc3, 0x83, 0x37, 0xd4, 0x12, 0x8e, 0x22, 0x1a, 0x38, 0x0f, 0xf0, 0xb8, 0x2c, 0x57, 0xd7, 0x58, 0x89, 0xd7, 0x98, 0x44, 0xfa, 0x48, 0x1f, 0x33, 0xef, 0x60, 0xad, 0x87, 0x54, 0x98, 0x7d, 0x70, 0x38, 0x03, 0x34, 0xa9, }; static const unsigned char ecdh_brainpoolp512r1_1143_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1143_sharedsecret[] = { 0x92, 0x9a, 0xa0, 0xdc, 0xdc, 0x96, 0x6e, 0xdb, 0xfa, 0x08, 0x13, 0xde, 0xb5, 0xb6, 0xc0, 0x0a, 0x89, 0x9f, 0xdc, 0xdf, 0x9b, 0xd8, 0xe2, 0x25, 0x5c, 0x34, 0x68, 0x22, 0xf2, 0xc3, 0xe7, 0x64, 0xfd, 0x72, 0xae, 0x88, 0x8c, 0x5e, 0x4c, 0x50, 0xe5, 0x67, 0xe2, 0x67, 0x40, 0x5d, 0x8c, 0xc7, 0xaa, 0x03, 0xd5, 0xa3, 0x11, 0x73, 0xc1, 0x6d, 0x3d, 0x3e, 0x64, 0xaf, 0xca, 0xa9, 0x9e, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1143 = { .name = "ecdh_brainpoolp512r1_1143", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1143_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1143_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1143_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 65 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1144 for ECDH, tcId is 66 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1144_peerpubkey[] = { 0x16, 0xf5, 0x95, 0xeb, 0x77, 0xc4, 0x23, 0xd5, 0x1e, 0xa2, 0x67, 0xdb, 0x4f, 0xba, 0x12, 0x8a, 0x51, 0xd0, 0xb2, 0xfa, 0x9d, 0xb8, 0x0f, 0x3c, 0xa5, 0x02, 0xbf, 0xe2, 0xf2, 0x01, 0x15, 0x36, 0x58, 0x53, 0x31, 0xf8, 0xc6, 0x40, 0x4e, 0xc6, 0x58, 0xdc, 0x51, 0xb1, 0xda, 0x51, 0x8c, 0xa8, 0xed, 0xbc, 0x7c, 0x45, 0xd9, 0x32, 0xb0, 0x6e, 0x99, 0xb6, 0xd5, 0x60, 0x9a, 0xba, 0xb4, 0x8b, 0x61, 0x5c, 0xd2, 0x64, 0xcd, 0x0c, 0x23, 0xed, 0x6c, 0xde, 0x63, 0x27, 0xad, 0x73, 0x52, 0xf4, 0x22, 0x12, 0x0d, 0x84, 0xd7, 0xe5, 0xb6, 0xe9, 0x4b, 0x32, 0xa9, 0x66, 0x8f, 0x72, 0x07, 0x64, 0xcd, 0x68, 0x31, 0xfc, 0xa4, 0x44, 0xe6, 0xe2, 0x56, 0x79, 0x46, 0xfe, 0x5b, 0x4b, 0x7f, 0x1f, 0x99, 0xca, 0xcc, 0xef, 0x82, 0x49, 0x8c, 0x26, 0x70, 0x90, 0x1a, 0xd2, 0x93, 0x3e, 0x32, 0x27, }; static const unsigned char ecdh_brainpoolp512r1_1144_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1144_sharedsecret[] = { 0x29, 0x40, 0xaf, 0x4b, 0x96, 0xf5, 0x1a, 0x65, 0xa3, 0xdd, 0xbd, 0x16, 0x18, 0x69, 0xf1, 0xf4, 0xa0, 0xd8, 0xad, 0x1f, 0x92, 0x08, 0x05, 0xf1, 0xa9, 0x3c, 0xc0, 0x5d, 0x98, 0x72, 0x8b, 0x67, 0x04, 0x1c, 0x0b, 0xb0, 0xed, 0x4d, 0x7c, 0xcf, 0x60, 0x7b, 0x7d, 0x65, 0xfb, 0x11, 0xce, 0xb6, 0x2f, 0x89, 0x8c, 0x30, 0x56, 0xb4, 0x8d, 0xdf, 0x27, 0x7a, 0xb9, 0x6e, 0xe8, 0x02, 0xb2, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1144 = { .name = "ecdh_brainpoolp512r1_1144", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1144_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1144_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1144_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 66 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1145 for ECDH, tcId is 67 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1145_peerpubkey[] = { 0x18, 0xd6, 0x57, 0x2d, 0xed, 0x88, 0x9a, 0x0a, 0xf4, 0x37, 0x75, 0x45, 0x95, 0xfe, 0x9e, 0x64, 0x38, 0x8a, 0x38, 0x98, 0x20, 0x6c, 0x0d, 0x0c, 0x9a, 0xe5, 0xed, 0x98, 0x31, 0x50, 0xcc, 0xf3, 0xf3, 0x50, 0x7f, 0x42, 0x44, 0xcd, 0x7f, 0x09, 0x7d, 0xde, 0x83, 0x9b, 0x2e, 0xe9, 0x4e, 0x8c, 0x66, 0x13, 0xda, 0xb5, 0xbc, 0x97, 0x49, 0xb6, 0x47, 0xe6, 0xc7, 0x72, 0xdf, 0x38, 0x04, 0xc7, 0x4c, 0xe9, 0x93, 0xf2, 0x1a, 0xc5, 0xf8, 0x39, 0x35, 0x52, 0xf0, 0x6f, 0xd8, 0x43, 0x11, 0xc6, 0x5b, 0xcd, 0xce, 0x35, 0x8d, 0x1f, 0xc2, 0x17, 0x1b, 0x1c, 0xdf, 0xaa, 0x14, 0x34, 0x27, 0x50, 0x8d, 0x99, 0xc9, 0x4d, 0x69, 0xd8, 0x2c, 0x5f, 0xc8, 0x79, 0xa3, 0x5c, 0xdb, 0x33, 0x75, 0x16, 0xf2, 0xbe, 0x16, 0x15, 0xbd, 0x23, 0x83, 0xe8, 0x9b, 0xd9, 0x4d, 0x7d, 0x5b, 0xde, 0x6c, 0xe5, }; static const unsigned char ecdh_brainpoolp512r1_1145_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1145_sharedsecret[] = { 0x46, 0x07, 0xce, 0x62, 0x08, 0xf6, 0x66, 0xf9, 0x99, 0xd9, 0x48, 0xb1, 0x5f, 0x53, 0xfe, 0x52, 0xeb, 0xd5, 0x32, 0xd4, 0x93, 0x7e, 0xb6, 0xec, 0x7c, 0x3e, 0xc5, 0xb0, 0xc3, 0x9d, 0x0b, 0xc8, 0xaa, 0xb1, 0xd4, 0x75, 0x79, 0xc1, 0x81, 0x86, 0xdb, 0x92, 0xc2, 0xbe, 0x7b, 0x2a, 0x73, 0x42, 0x57, 0x06, 0x59, 0x65, 0x1c, 0xa1, 0x5a, 0x1d, 0x0a, 0x10, 0x40, 0xad, 0x6c, 0x4c, 0xf2, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1145 = { .name = "ecdh_brainpoolp512r1_1145", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1145_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1145_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1145_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 67 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1146 for ECDH, tcId is 68 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1146_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x12, 0x78, 0x0a, 0xe4, 0xd2, 0xfa, 0xd1, 0x16, 0x3e, 0x2a, 0x51, 0x3d, 0x72, 0xad, 0x6e, 0x3c, 0x22, 0x11, 0xf8, 0x07, 0x9c, 0xcb, 0xdd, 0xeb, 0x9b, 0x1e, 0x95, 0x6b, 0x2e, 0xe3, 0x61, 0x73, 0xab, 0xe8, 0x44, 0x64, 0xb0, 0xc7, 0x8d, 0xca, 0x8d, 0xb2, 0x1f, 0x69, 0x64, 0xe9, 0xa1, 0x39, 0x8a, 0x5a, 0x0f, 0x6e, 0x1e, 0x71, 0x7d, 0xdf, 0x4e, 0xac, 0x51, 0x70, 0x32, 0x87, 0x92, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_1146_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1146_sharedsecret[] = { 0x3d, 0x82, 0xc6, 0x6c, 0x53, 0x22, 0x0a, 0xfa, 0x0b, 0x77, 0x87, 0x58, 0x08, 0xf2, 0xbc, 0x37, 0xc2, 0x1a, 0x4b, 0x64, 0xee, 0xe1, 0x9c, 0x54, 0x2a, 0xe1, 0x9a, 0xfc, 0x2e, 0x8a, 0xd5, 0x56, 0xf9, 0xd2, 0x51, 0x06, 0x7b, 0x4a, 0x5f, 0xbe, 0x6c, 0xb4, 0x4b, 0xb7, 0x6c, 0x32, 0x9d, 0xb5, 0xe1, 0xaf, 0x60, 0x84, 0xf0, 0xbc, 0x66, 0x0c, 0x4f, 0xae, 0x4e, 0x26, 0x93, 0x64, 0x83, 0x4d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1146 = { .name = "ecdh_brainpoolp512r1_1146", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1146_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1146_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1146_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1, tcId is 68 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1147 for ECDH, tcId is 69 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1147_peerpubkey[] = { 0x48, 0xf4, 0xdc, 0xca, 0x13, 0xd2, 0x9c, 0x67, 0xeb, 0x7c, 0xbf, 0xaa, 0x95, 0x23, 0x34, 0xec, 0xa4, 0xd5, 0xb7, 0xfd, 0x3e, 0xbd, 0x53, 0x89, 0xaa, 0x43, 0xba, 0x7e, 0x86, 0x0e, 0x05, 0xcc, 0xbb, 0x40, 0xd3, 0xb4, 0xbd, 0x87, 0xd3, 0xa4, 0xd2, 0x6b, 0x0f, 0x13, 0x1a, 0x05, 0x20, 0xf3, 0x89, 0x0c, 0x9a, 0x3e, 0xd4, 0xc3, 0xb5, 0x22, 0x13, 0xdf, 0xa1, 0xe5, 0x9a, 0x50, 0x20, 0xb7, 0x38, 0xf7, 0x05, 0x66, 0xa8, 0x40, 0xe9, 0x07, 0x96, 0xf8, 0x3d, 0xcd, 0xe7, 0x2e, 0xf6, 0x19, 0xb4, 0x9e, 0x7c, 0x53, 0xd9, 0x54, 0x3a, 0xf9, 0xb2, 0x16, 0x8a, 0xa9, 0x0a, 0xf1, 0x54, 0x48, 0xda, 0x61, 0x0c, 0x3f, 0x68, 0x0b, 0x51, 0x37, 0xf7, 0xbb, 0xfa, 0x8b, 0xc6, 0x2d, 0xfb, 0x57, 0xb9, 0x53, 0xc2, 0xc7, 0x30, 0xd7, 0xa7, 0x3d, 0x3c, 0x47, 0x49, 0x4c, 0x23, 0xde, 0x44, 0x41, }; static const unsigned char ecdh_brainpoolp512r1_1147_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1147_sharedsecret[] = { 0x39, 0xa7, 0x7e, 0x42, 0x18, 0x1a, 0x6a, 0xa4, 0xe8, 0xbc, 0x4c, 0x93, 0x5a, 0x31, 0x09, 0xfe, 0x9e, 0x5d, 0xe3, 0x7f, 0x45, 0x4c, 0xc7, 0x90, 0x65, 0x0e, 0xe6, 0x53, 0x6c, 0xe0, 0x16, 0x6d, 0xbd, 0x52, 0xfc, 0x45, 0x4b, 0xb4, 0x9a, 0x6b, 0xa4, 0x26, 0x52, 0x3c, 0xe4, 0xbe, 0xc1, 0xdb, 0x2b, 0x55, 0x7e, 0xa2, 0xe1, 0x32, 0x12, 0x38, 0xd6, 0xb3, 0xe3, 0x66, 0x25, 0x24, 0xbf, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1147 = { .name = "ecdh_brainpoolp512r1_1147", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1147_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1147_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1147_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1, tcId is 69 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1148 for ECDH, tcId is 70 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1148_peerpubkey[] = { 0x00, 0x5d, 0x7b, 0xb2, 0x2b, 0x2f, 0x7f, 0xfd, 0x5c, 0xfe, 0xdf, 0x91, 0x98, 0x2b, 0x85, 0x9f, 0x4e, 0xc1, 0xaf, 0x6f, 0xea, 0xca, 0x7f, 0xc0, 0x4a, 0x3b, 0xeb, 0x87, 0xf9, 0x3c, 0xa7, 0xcd, 0x8b, 0xe2, 0x30, 0x12, 0x96, 0x5b, 0x53, 0xe8, 0xd7, 0x1e, 0xe6, 0x62, 0xa6, 0xf1, 0x2e, 0x91, 0x36, 0xb4, 0x70, 0x17, 0x79, 0x88, 0x6b, 0x26, 0x20, 0x79, 0x86, 0x98, 0x1a, 0x37, 0x2e, 0x51, 0x4c, 0x33, 0x40, 0x2b, 0x60, 0xe7, 0xa6, 0x93, 0x96, 0x01, 0xb9, 0x39, 0x8a, 0xa0, 0x32, 0x0f, 0x25, 0xda, 0x04, 0xae, 0x55, 0xba, 0x63, 0xe3, 0x4c, 0x71, 0xb1, 0x74, 0xa2, 0x21, 0xa0, 0xa6, 0x07, 0xcb, 0x62, 0x64, 0x96, 0xb6, 0x27, 0xfa, 0x95, 0xe0, 0xcd, 0xac, 0xd0, 0x59, 0x7c, 0xbc, 0x79, 0xd2, 0xc7, 0x6a, 0xeb, 0xa5, 0x4b, 0x34, 0x87, 0xdc, 0xdb, 0x70, 0x38, 0x50, 0x8a, 0xa7, }; static const unsigned char ecdh_brainpoolp512r1_1148_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1148_sharedsecret[] = { 0x3d, 0x4f, 0x15, 0x04, 0xf3, 0x32, 0x2c, 0xbc, 0xa5, 0xd1, 0xd7, 0xbb, 0x0f, 0xcf, 0xd9, 0x4f, 0xe3, 0x67, 0xc3, 0x3c, 0x1b, 0x54, 0xe4, 0x8d, 0x86, 0x3d, 0xf6, 0x6b, 0x5e, 0x56, 0x52, 0x06, 0xa1, 0xb1, 0x27, 0xbc, 0x2a, 0xcd, 0x68, 0xfb, 0xce, 0x9c, 0xfb, 0x73, 0xa5, 0x6e, 0x29, 0x24, 0x65, 0xb8, 0xa5, 0x35, 0x25, 0x41, 0xc4, 0xcb, 0xb5, 0x62, 0x29, 0x49, 0x30, 0x32, 0xa1, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1148 = { .name = "ecdh_brainpoolp512r1_1148", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1148_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1148_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1148_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 70 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1149 for ECDH, tcId is 71 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1149_peerpubkey[] = { 0x16, 0x03, 0xae, 0x0d, 0xc0, 0x6b, 0x20, 0x31, 0x47, 0xb1, 0x22, 0x11, 0x4a, 0x14, 0x9d, 0xb4, 0x4c, 0xe2, 0x38, 0x0a, 0xc0, 0x46, 0x22, 0x83, 0x04, 0xd5, 0xfd, 0xd9, 0x50, 0x08, 0x3e, 0x58, 0xe9, 0xb0, 0xc4, 0x9f, 0x72, 0xa9, 0xbb, 0xf0, 0xa1, 0x40, 0x55, 0xd2, 0x0f, 0xf5, 0x0e, 0x74, 0x41, 0x72, 0xb8, 0x7e, 0x18, 0xd7, 0x57, 0x15, 0x77, 0xee, 0xa4, 0x35, 0x5d, 0x7a, 0xc1, 0x9e, 0x59, 0x09, 0x03, 0xba, 0xb5, 0x63, 0x3f, 0xaa, 0xfe, 0xfb, 0x76, 0x57, 0x2f, 0x08, 0x59, 0x7f, 0x09, 0x24, 0x2c, 0x86, 0xb3, 0x98, 0x91, 0xfd, 0x6a, 0xe4, 0x21, 0xcf, 0x6b, 0x7c, 0xab, 0xd8, 0x3d, 0xb7, 0xd7, 0x00, 0x40, 0x88, 0xf5, 0x00, 0x7e, 0x28, 0xa5, 0xfd, 0xd2, 0x78, 0x80, 0x98, 0x06, 0x98, 0x62, 0x07, 0xc8, 0x4d, 0x0d, 0x28, 0x17, 0x55, 0xfa, 0xf6, 0xad, 0x9f, 0x2e, 0xd8, }; static const unsigned char ecdh_brainpoolp512r1_1149_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1149_sharedsecret[] = { 0x3c, 0x35, 0x75, 0x24, 0x39, 0x84, 0x54, 0x71, 0x2c, 0xc9, 0x0b, 0x9a, 0x07, 0x52, 0x2e, 0x53, 0xd6, 0x8f, 0xd9, 0x8d, 0xed, 0x2a, 0xbb, 0x17, 0x6d, 0x12, 0xd0, 0x1e, 0xf9, 0x4a, 0xa9, 0x40, 0xc0, 0x77, 0x81, 0xad, 0x3c, 0x95, 0x67, 0x90, 0x47, 0xae, 0xb5, 0xe8, 0xf7, 0x1c, 0xae, 0xb2, 0xb1, 0x35, 0x9f, 0x37, 0xdd, 0x59, 0x6c, 0xd4, 0x61, 0xbd, 0x43, 0x8a, 0x39, 0xb6, 0x35, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1149 = { .name = "ecdh_brainpoolp512r1_1149", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1149_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1149_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1149_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 71 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1150 for ECDH, tcId is 72 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1150_peerpubkey[] = { 0x73, 0x47, 0xef, 0xa7, 0xf8, 0x96, 0x0a, 0x82, 0xd2, 0xd0, 0xf3, 0xf4, 0x70, 0x4f, 0xfa, 0xe1, 0x56, 0x9e, 0x6d, 0xcf, 0x10, 0xec, 0xf1, 0x0e, 0x71, 0x3a, 0x55, 0x53, 0x20, 0x50, 0xba, 0x0e, 0x1c, 0x5c, 0xec, 0xb8, 0xcd, 0x92, 0xe5, 0xa4, 0x76, 0x7b, 0x03, 0x9a, 0xb5, 0x6e, 0xe3, 0xe2, 0xdd, 0x1b, 0xa5, 0xcf, 0x23, 0xcc, 0xac, 0x13, 0xf2, 0xff, 0xcf, 0x39, 0xc1, 0x12, 0x50, 0x82, 0x2d, 0x1a, 0x34, 0xd8, 0x4a, 0xf9, 0x19, 0x77, 0xa7, 0x45, 0x1c, 0xda, 0x4a, 0x0a, 0xe5, 0xf6, 0xd3, 0x47, 0xef, 0x1f, 0xfa, 0x1f, 0x74, 0x9c, 0x8f, 0xc6, 0x3e, 0xd7, 0x9d, 0xdc, 0x8d, 0xa3, 0x9f, 0x9a, 0xb0, 0xd7, 0x45, 0xa9, 0x26, 0xb0, 0x36, 0x21, 0x4d, 0x84, 0x0c, 0xec, 0x25, 0x19, 0xaa, 0x6a, 0xaa, 0x7c, 0x6b, 0x97, 0x47, 0xa9, 0xab, 0x4f, 0xe7, 0xec, 0x15, 0x8b, 0x59, 0xab, }; static const unsigned char ecdh_brainpoolp512r1_1150_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1150_sharedsecret[] = { 0x62, 0xf3, 0xa7, 0xe9, 0x4e, 0x99, 0x31, 0x88, 0x28, 0x10, 0x05, 0x7d, 0xce, 0xad, 0x55, 0x4a, 0xfb, 0x07, 0x15, 0x8c, 0x9c, 0x51, 0x13, 0xe8, 0x99, 0x45, 0x40, 0xe0, 0x5c, 0xfd, 0x50, 0xfe, 0x14, 0xdb, 0x6f, 0x96, 0x74, 0x09, 0x11, 0x67, 0x3b, 0x88, 0xfe, 0xb0, 0xe3, 0x79, 0x7c, 0xcc, 0xe5, 0xbf, 0xf8, 0x76, 0xe1, 0x38, 0x21, 0xd9, 0x49, 0x35, 0x6a, 0x7b, 0x1b, 0xef, 0x6a, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1150 = { .name = "ecdh_brainpoolp512r1_1150", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1150_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1150_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1150_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 72 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1151 for ECDH, tcId is 73 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1151_peerpubkey[] = { 0x4e, 0x92, 0x1e, 0xda, 0x9c, 0x9a, 0x99, 0x73, 0x79, 0xb3, 0xd5, 0x3a, 0x8e, 0xe0, 0x21, 0x5c, 0x13, 0x04, 0x6c, 0x7b, 0x4c, 0xc6, 0x20, 0xa1, 0x17, 0x07, 0x98, 0x53, 0xdb, 0x10, 0x2a, 0x49, 0x3f, 0x9d, 0x7d, 0xdd, 0x5c, 0xdd, 0x87, 0x93, 0x90, 0x53, 0x09, 0x4b, 0x05, 0xe4, 0xf3, 0x6f, 0xdc, 0x03, 0xc2, 0x64, 0x5a, 0xf1, 0x3b, 0x77, 0x8f, 0xd9, 0x18, 0xc9, 0xd8, 0x3a, 0x13, 0xf5, 0x1b, 0xbb, 0x56, 0xc9, 0xa5, 0x75, 0xe2, 0xbf, 0xfb, 0xf0, 0x1e, 0xe1, 0xbf, 0x85, 0x57, 0x24, 0x5b, 0x5d, 0xf6, 0xeb, 0x05, 0x30, 0x49, 0x19, 0xa2, 0xd9, 0x39, 0xb9, 0xdd, 0x41, 0x21, 0x2f, 0xf9, 0x65, 0xa5, 0x0e, 0x75, 0x0c, 0x76, 0x56, 0xb3, 0xc9, 0xf1, 0x31, 0x7f, 0xd4, 0xb3, 0xbd, 0xaf, 0x7e, 0x79, 0xba, 0x12, 0xb1, 0xe4, 0xdb, 0xd3, 0xe7, 0x2b, 0x26, 0x0c, 0x97, 0x7f, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_1151_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1151_sharedsecret[] = { 0xa2, 0x10, 0x06, 0x1c, 0x47, 0x38, 0xde, 0x61, 0x75, 0x7e, 0x69, 0x82, 0x6e, 0xdd, 0xe1, 0xa4, 0xb8, 0xd6, 0xb1, 0xd3, 0x51, 0xaa, 0x22, 0x21, 0xeb, 0x8f, 0xcc, 0xfa, 0x66, 0x9a, 0x5e, 0xee, 0x37, 0xe4, 0xfa, 0x4a, 0xa2, 0x85, 0x37, 0xbe, 0x2b, 0x63, 0x49, 0x67, 0xd1, 0x3b, 0x8a, 0xb7, 0x0f, 0x65, 0x18, 0x66, 0xc4, 0x0b, 0x45, 0x30, 0x9d, 0xf7, 0xcc, 0xed, 0xd4, 0x76, 0x1a, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1151 = { .name = "ecdh_brainpoolp512r1_1151", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1151_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1151_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1151_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 73 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1152 for ECDH, tcId is 74 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1152_peerpubkey[] = { 0x4f, 0xb9, 0x4c, 0x6a, 0x37, 0xd9, 0x0c, 0x88, 0x1d, 0x6a, 0x34, 0x3a, 0xd4, 0x8f, 0x99, 0x17, 0x70, 0x8b, 0x2e, 0x20, 0x78, 0x6b, 0x22, 0x46, 0x7f, 0x26, 0x1d, 0x83, 0x4b, 0xf8, 0x25, 0x1a, 0xba, 0x6b, 0x7f, 0x49, 0x02, 0xd7, 0x87, 0xf2, 0xa9, 0x3c, 0x8a, 0x24, 0x64, 0x0d, 0x71, 0x13, 0xc0, 0x79, 0x84, 0xc6, 0xf1, 0x39, 0x9a, 0x63, 0xcf, 0x29, 0x8f, 0x5b, 0x2c, 0x18, 0x76, 0x86, 0x50, 0xe6, 0x6f, 0x30, 0x7b, 0xe1, 0x2e, 0x39, 0xcd, 0xf9, 0x55, 0x27, 0x82, 0x3c, 0x36, 0xdf, 0xae, 0x5d, 0xc5, 0x33, 0x86, 0xc1, 0xe6, 0x50, 0xf4, 0x02, 0x55, 0x75, 0x8f, 0x59, 0xac, 0x69, 0x99, 0x42, 0x8a, 0xb2, 0x01, 0x8c, 0xe5, 0xa3, 0x2a, 0xb7, 0x4f, 0x2b, 0x63, 0xe3, 0x3b, 0x94, 0xab, 0x76, 0x54, 0x99, 0x20, 0x24, 0x0a, 0xd4, 0xc1, 0x37, 0x10, 0xfd, 0xa8, 0xd9, 0x61, 0x64, }; static const unsigned char ecdh_brainpoolp512r1_1152_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1152_sharedsecret[] = { 0x24, 0x47, 0x7d, 0xef, 0x8f, 0xac, 0xaf, 0x5b, 0xc5, 0x56, 0xa7, 0xb3, 0x91, 0x96, 0xcc, 0x0b, 0xf3, 0x95, 0x2f, 0xb0, 0xfe, 0xde, 0x0f, 0x77, 0xa3, 0xbc, 0x3c, 0x93, 0x5b, 0xc6, 0x55, 0x1d, 0x05, 0xe1, 0xe7, 0x13, 0x2f, 0xb4, 0xba, 0x8a, 0x45, 0xd0, 0x7b, 0x7b, 0x8b, 0x9f, 0x5c, 0x3e, 0xab, 0xda, 0xc4, 0x5a, 0xff, 0x6a, 0x97, 0x4c, 0xba, 0x4a, 0x65, 0x95, 0xb2, 0x57, 0x0d, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1152 = { .name = "ecdh_brainpoolp512r1_1152", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1152_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1152_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1152_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 74 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1153 for ECDH, tcId is 75 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1153_peerpubkey[] = { 0xa8, 0x1d, 0x3d, 0xe6, 0xd9, 0x9b, 0x4f, 0xbc, 0x7f, 0x2c, 0x3a, 0x6f, 0x03, 0xd4, 0x77, 0x85, 0x61, 0x24, 0x08, 0x15, 0xf8, 0x31, 0xf6, 0x7e, 0xe1, 0x52, 0x65, 0xb9, 0x5d, 0xf3, 0x23, 0x3c, 0xbf, 0x09, 0xa8, 0x9d, 0xab, 0x9e, 0xaf, 0xf1, 0x2d, 0x23, 0xa3, 0x81, 0xa2, 0x3a, 0x14, 0xe2, 0x2e, 0x37, 0xef, 0x20, 0xb1, 0xda, 0x0a, 0xa9, 0x6d, 0x97, 0x21, 0x41, 0x14, 0x77, 0x08, 0x5e, 0x04, 0x24, 0x55, 0xa2, 0x36, 0x71, 0xfd, 0x3d, 0xc7, 0x22, 0x9b, 0x55, 0xab, 0xbe, 0x53, 0x7f, 0xcb, 0x64, 0xf0, 0x8e, 0x26, 0x95, 0x7e, 0xd4, 0xb5, 0xe4, 0x1d, 0x97, 0x89, 0x62, 0xdd, 0x33, 0x6f, 0xf3, 0x18, 0x1c, 0x43, 0x4e, 0x3a, 0xa5, 0x03, 0x5f, 0xff, 0xfb, 0x64, 0x75, 0x5f, 0xcb, 0xb6, 0x6d, 0x27, 0xce, 0x23, 0xf3, 0xbe, 0x68, 0xa3, 0x3e, 0xed, 0xa1, 0xff, 0x69, 0x42, 0x3e, }; static const unsigned char ecdh_brainpoolp512r1_1153_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1153_sharedsecret[] = { 0x6d, 0x38, 0xb4, 0xc4, 0x0a, 0xa7, 0x82, 0xab, 0x72, 0x10, 0x1b, 0xeb, 0xf9, 0xa7, 0xe3, 0xa9, 0x45, 0x7c, 0x3b, 0x30, 0x0d, 0x80, 0xa9, 0x54, 0x99, 0xad, 0xa3, 0xd9, 0xd3, 0x10, 0x37, 0x3c, 0xa4, 0x2a, 0xaa, 0xf6, 0x90, 0x5b, 0x03, 0x9c, 0x93, 0x62, 0x97, 0x0e, 0x17, 0xec, 0xf2, 0x34, 0x92, 0x18, 0x57, 0x62, 0x17, 0x69, 0x69, 0x7e, 0xa2, 0xe5, 0xc9, 0x5f, 0x4b, 0x3a, 0x7a, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1153 = { .name = "ecdh_brainpoolp512r1_1153", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1153_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1153_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1153_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 75 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1154 for ECDH, tcId is 76 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1154_peerpubkey[] = { 0x21, 0x22, 0x87, 0x0f, 0xdb, 0x88, 0xcc, 0xc9, 0xec, 0x71, 0x9f, 0x62, 0xb2, 0xbe, 0x35, 0xa4, 0xf2, 0xd4, 0x36, 0xa7, 0xfb, 0x78, 0x66, 0xd5, 0x1c, 0x1e, 0x31, 0xb4, 0x21, 0x60, 0xdf, 0x4f, 0x87, 0xe7, 0x93, 0x23, 0x83, 0x79, 0xd1, 0x2c, 0xba, 0xcd, 0xdd, 0x2f, 0x1d, 0x60, 0xfb, 0xa7, 0xad, 0x3c, 0xd7, 0x6d, 0x83, 0x6c, 0x27, 0x4a, 0xdf, 0xd2, 0xa7, 0x0b, 0xa4, 0x91, 0xae, 0x97, 0x95, 0x02, 0x68, 0xcd, 0x96, 0x33, 0xf5, 0x20, 0xb6, 0xcb, 0x7d, 0x02, 0x2e, 0x9c, 0x6c, 0xb9, 0x9e, 0xb0, 0x7c, 0x24, 0x30, 0x06, 0x2d, 0xcb, 0x88, 0xc6, 0x7f, 0xc9, 0x65, 0x26, 0xcd, 0x21, 0x1f, 0x1d, 0xfb, 0x4b, 0x6d, 0x9b, 0x79, 0x7a, 0xae, 0xed, 0x48, 0x19, 0x6f, 0x0a, 0xbb, 0x75, 0x75, 0x9f, 0xac, 0x8b, 0x5b, 0xf1, 0xae, 0xd8, 0x98, 0x12, 0x3d, 0x6a, 0xc3, 0xcb, 0x57, 0x24, }; static const unsigned char ecdh_brainpoolp512r1_1154_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1154_sharedsecret[] = { 0x66, 0xd8, 0x4f, 0x76, 0x3a, 0xde, 0x48, 0x25, 0xee, 0x88, 0xea, 0xef, 0xdb, 0xd3, 0xfe, 0x4d, 0x91, 0x86, 0x6e, 0x43, 0xaa, 0xab, 0x33, 0xa0, 0x80, 0xb2, 0x51, 0xb5, 0x29, 0x0d, 0xe2, 0x58, 0x4e, 0x76, 0x82, 0x25, 0xe9, 0x81, 0xa4, 0x19, 0x35, 0xb5, 0x6f, 0x97, 0xcc, 0x73, 0xbb, 0x9c, 0x14, 0x8b, 0x83, 0x9c, 0xc9, 0x61, 0x0f, 0x22, 0xa0, 0xb5, 0x7a, 0xc1, 0xaf, 0x84, 0x48, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1154 = { .name = "ecdh_brainpoolp512r1_1154", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1154_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1154_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1154_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 76 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1155 for ECDH, tcId is 77 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1155_peerpubkey[] = { 0x21, 0x0e, 0xac, 0x5b, 0x42, 0xbe, 0xab, 0x95, 0x9a, 0x5b, 0xe4, 0x34, 0x70, 0xe0, 0xc2, 0x7c, 0x5e, 0x62, 0x68, 0x2d, 0x93, 0x9d, 0x6f, 0x8c, 0xcd, 0x37, 0xa3, 0x1d, 0xcb, 0xb2, 0xa6, 0xa0, 0x15, 0xc0, 0x09, 0x1e, 0x77, 0x4c, 0x38, 0x7d, 0x7a, 0xcf, 0x05, 0x9c, 0x57, 0xb9, 0x25, 0xe4, 0x13, 0x4c, 0x50, 0x49, 0x30, 0xf2, 0x0b, 0x56, 0x48, 0x4b, 0x87, 0x09, 0xba, 0xaf, 0x61, 0xf7, 0x4c, 0xa4, 0x9a, 0x24, 0x2e, 0x83, 0xcb, 0xfc, 0xd6, 0x69, 0x65, 0xcd, 0x20, 0xde, 0x86, 0x73, 0xac, 0xdf, 0x2c, 0xe7, 0x74, 0xb3, 0x8a, 0x72, 0x18, 0x44, 0x0f, 0x1c, 0x00, 0x43, 0xd3, 0xa9, 0xbf, 0xf6, 0xb3, 0x12, 0x63, 0x84, 0xf4, 0x37, 0x47, 0x80, 0x0d, 0x45, 0xff, 0x3f, 0x89, 0x81, 0xba, 0x34, 0x13, 0xa8, 0x5f, 0x0f, 0xe2, 0x12, 0xa1, 0xcd, 0x8f, 0x3b, 0x2e, 0x19, 0x98, 0xe9, }; static const unsigned char ecdh_brainpoolp512r1_1155_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1155_sharedsecret[] = { 0x4b, 0xa0, 0x13, 0xdd, 0x72, 0xe3, 0x08, 0xa5, 0x03, 0xbe, 0x59, 0x5f, 0xd5, 0x33, 0x79, 0x31, 0x46, 0xcc, 0x4e, 0x63, 0x2a, 0x31, 0xb2, 0x43, 0xab, 0xe6, 0xd4, 0xf6, 0x78, 0xd1, 0x2c, 0xd4, 0x07, 0xa8, 0x0e, 0x5c, 0x02, 0xf9, 0x4e, 0x02, 0x26, 0x7b, 0x12, 0x89, 0x17, 0x8a, 0x38, 0xb7, 0x77, 0xe7, 0x29, 0xc0, 0x8e, 0x29, 0xe3, 0x0d, 0x97, 0x3d, 0x0e, 0x5e, 0x50, 0x42, 0x23, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1155 = { .name = "ecdh_brainpoolp512r1_1155", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1155_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1155_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1155_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 77 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1156 for ECDH, tcId is 78 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1156_peerpubkey[] = { 0x82, 0x28, 0xcf, 0x60, 0x53, 0x2a, 0xed, 0x0f, 0x44, 0xe3, 0x21, 0xbc, 0x0d, 0x93, 0x4a, 0x6b, 0x61, 0xec, 0xca, 0xb6, 0x6b, 0x8b, 0xa0, 0x01, 0xe0, 0x03, 0x83, 0x59, 0xe6, 0xbf, 0x1a, 0xf4, 0xe4, 0x74, 0xd0, 0x7f, 0x0d, 0xf7, 0xb0, 0x6d, 0x4b, 0x77, 0xef, 0xe4, 0xfa, 0xb2, 0x53, 0x1e, 0x34, 0xdf, 0x9d, 0x11, 0x10, 0xcd, 0xe8, 0x3b, 0x89, 0x78, 0x69, 0x63, 0x22, 0x88, 0x67, 0xb9, 0x65, 0x4c, 0x32, 0xf3, 0x60, 0xa9, 0xb9, 0x7b, 0x2a, 0xf9, 0x53, 0x03, 0xd8, 0xa1, 0x32, 0xfd, 0x13, 0x7c, 0x8f, 0x2e, 0x6f, 0x86, 0x43, 0xc9, 0x91, 0x34, 0xc4, 0xef, 0xc5, 0x98, 0xc6, 0x3f, 0x41, 0x03, 0xc9, 0x86, 0x85, 0x35, 0xe5, 0xf4, 0x33, 0x29, 0xbb, 0xa9, 0x46, 0x4f, 0x0e, 0xdb, 0x47, 0xce, 0xd4, 0xc7, 0x7d, 0xb4, 0x18, 0x5e, 0x6a, 0xef, 0xf7, 0xa0, 0xee, 0xb4, 0xc4, 0xef, }; static const unsigned char ecdh_brainpoolp512r1_1156_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1156_sharedsecret[] = { 0x27, 0xa7, 0xf0, 0xc4, 0x7a, 0x05, 0xbd, 0xd8, 0x9a, 0x3e, 0x7b, 0xfc, 0x9b, 0x0e, 0xdf, 0x09, 0x22, 0x62, 0xb3, 0xf3, 0x96, 0xf0, 0x6d, 0xc2, 0x2c, 0x60, 0xe7, 0xa9, 0x80, 0x6a, 0x9e, 0x50, 0x96, 0xf9, 0x4f, 0x21, 0xea, 0x4e, 0x3c, 0x71, 0x40, 0xd5, 0x70, 0xfa, 0x81, 0xf2, 0x85, 0xf2, 0xfc, 0x55, 0xa2, 0xb1, 0xbb, 0x6f, 0xb5, 0x75, 0xd1, 0x8a, 0x8d, 0x1f, 0x9b, 0x36, 0x48, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1156 = { .name = "ecdh_brainpoolp512r1_1156", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1156_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1156_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1156_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 78 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1157 for ECDH, tcId is 79 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1157_peerpubkey[] = { 0x52, 0xea, 0x7a, 0x4a, 0xab, 0x26, 0x66, 0x7e, 0xb2, 0x8c, 0x45, 0xca, 0x32, 0x41, 0xb3, 0xca, 0xcf, 0x64, 0xd2, 0x10, 0xf7, 0x1b, 0xcc, 0xa7, 0x19, 0x8b, 0xd1, 0xe1, 0x94, 0x8e, 0xc4, 0xde, 0xb2, 0x07, 0xc9, 0xec, 0xd8, 0x37, 0x36, 0x87, 0x34, 0x6f, 0x06, 0x72, 0x2c, 0x8d, 0xe3, 0xed, 0xb1, 0x02, 0x55, 0xfe, 0x2b, 0x01, 0xbe, 0x15, 0x29, 0xbe, 0x8b, 0x2e, 0x54, 0xc4, 0xb9, 0xe1, 0x4f, 0xc1, 0xc2, 0xe0, 0xd2, 0xfe, 0x59, 0x20, 0x6f, 0x88, 0x9d, 0x22, 0x6f, 0xcc, 0xf7, 0xe2, 0x90, 0x16, 0xef, 0x37, 0xb6, 0x0c, 0x0c, 0x22, 0x98, 0xf6, 0xc8, 0x76, 0xfc, 0x3f, 0xff, 0x2d, 0xd8, 0x1d, 0xf9, 0x3a, 0x51, 0x69, 0x8e, 0x4d, 0x24, 0x63, 0x8a, 0xd0, 0xd6, 0xd0, 0x11, 0x56, 0x6f, 0x90, 0x77, 0x61, 0x1c, 0x29, 0x09, 0xba, 0x21, 0xe2, 0x39, 0x7b, 0x4c, 0x79, 0xc3, 0x15, }; static const unsigned char ecdh_brainpoolp512r1_1157_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1157_sharedsecret[] = { 0x5e, 0xfe, 0x99, 0xae, 0x81, 0x7f, 0x36, 0x06, 0x54, 0x92, 0x23, 0x75, 0x5a, 0x44, 0x51, 0x19, 0xc5, 0x76, 0x79, 0x4c, 0xd7, 0x83, 0x9e, 0x6b, 0x9e, 0x53, 0x14, 0x44, 0x6f, 0x3b, 0xc3, 0x10, 0x7c, 0x17, 0xef, 0x20, 0x54, 0xaf, 0x1a, 0xae, 0x64, 0xe7, 0x68, 0x51, 0xd2, 0x5e, 0xf4, 0x14, 0x47, 0x7b, 0xf2, 0x48, 0x11, 0xdb, 0x99, 0x49, 0x52, 0x7d, 0xb1, 0xf8, 0xf5, 0x15, 0xf7, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1157 = { .name = "ecdh_brainpoolp512r1_1157", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1157_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1157_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1157_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 79 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1158 for ECDH, tcId is 80 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1158_peerpubkey[] = { 0x32, 0x36, 0x24, 0x73, 0x06, 0xfc, 0x89, 0x15, 0xd7, 0x59, 0x25, 0x50, 0x63, 0xaf, 0x10, 0x92, 0x29, 0x2b, 0xa0, 0xd4, 0xaa, 0x0b, 0xaa, 0x62, 0xbf, 0xda, 0xda, 0x67, 0xcf, 0x30, 0x6a, 0x59, 0x1f, 0x08, 0x59, 0xf6, 0xca, 0x23, 0x19, 0x19, 0x27, 0x49, 0xd7, 0x9d, 0x48, 0x83, 0x37, 0x3c, 0x45, 0xa7, 0x6e, 0x37, 0x6e, 0x38, 0x18, 0xd9, 0x7e, 0xd0, 0xdd, 0xee, 0xd7, 0x00, 0x30, 0x4c, 0x8b, 0x7e, 0x80, 0x54, 0x43, 0x4d, 0xe2, 0xcf, 0xce, 0x81, 0xe6, 0xda, 0x3b, 0xc1, 0x8e, 0xcf, 0x60, 0x5e, 0x0d, 0xbe, 0xfb, 0x04, 0x52, 0xc0, 0xe0, 0xfd, 0x35, 0x51, 0x32, 0x5e, 0xa7, 0xab, 0x01, 0x4e, 0x54, 0x20, 0xc8, 0xdf, 0x37, 0x35, 0x28, 0x32, 0x24, 0x2c, 0x04, 0x20, 0xdb, 0xdc, 0xcc, 0x86, 0xdb, 0x42, 0xb4, 0xda, 0xa7, 0xbd, 0x3e, 0xe4, 0x84, 0xf8, 0xd8, 0x4b, 0x2c, 0x43, }; static const unsigned char ecdh_brainpoolp512r1_1158_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1158_sharedsecret[] = { 0x5b, 0x5d, 0xbb, 0x97, 0x1e, 0xcb, 0xfa, 0x04, 0x45, 0xa1, 0x99, 0x95, 0xa0, 0x18, 0x63, 0xd7, 0x12, 0x00, 0xea, 0x23, 0xb4, 0xbd, 0xf5, 0xbe, 0xbf, 0xaa, 0x80, 0x93, 0x84, 0xba, 0xdb, 0x06, 0x2d, 0x22, 0x9a, 0x1f, 0xb3, 0x30, 0x23, 0xfe, 0x28, 0xfa, 0xd2, 0xe9, 0xdc, 0xb1, 0xe2, 0x28, 0x08, 0x5b, 0xae, 0x76, 0xb6, 0x28, 0x52, 0x5a, 0x10, 0x29, 0x07, 0xd7, 0xaa, 0x2f, 0x11, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1158 = { .name = "ecdh_brainpoolp512r1_1158", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1158_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1158_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1158_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 80 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1159 for ECDH, tcId is 81 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1159_peerpubkey[] = { 0x57, 0x33, 0x54, 0xe9, 0x9b, 0x2e, 0x99, 0x97, 0x48, 0x55, 0x1b, 0x1c, 0x60, 0x9d, 0xc8, 0x37, 0x20, 0x86, 0x45, 0xf0, 0x5b, 0x1f, 0xdc, 0x1c, 0xa3, 0xef, 0xb5, 0x56, 0x5e, 0x4d, 0x86, 0xab, 0xe6, 0xcc, 0xde, 0x83, 0xce, 0xf6, 0xf9, 0xe6, 0xe2, 0x4b, 0xa5, 0x95, 0x53, 0xca, 0xff, 0xc1, 0x57, 0x14, 0x16, 0x0d, 0x76, 0x57, 0xb2, 0xbe, 0xa5, 0xdc, 0xcb, 0x5d, 0x34, 0x7f, 0x5e, 0x03, 0x6f, 0xa6, 0xa1, 0x32, 0x9e, 0x48, 0x09, 0x95, 0x48, 0x89, 0x7f, 0x66, 0x45, 0x44, 0x8a, 0x38, 0x9d, 0x96, 0x26, 0xd9, 0x2c, 0xde, 0x4a, 0xa3, 0x48, 0xd0, 0x45, 0x58, 0x55, 0xd2, 0x6d, 0x0d, 0xb0, 0x81, 0x0c, 0xf2, 0xd0, 0x20, 0xbd, 0xb3, 0x3d, 0x0d, 0xa8, 0x88, 0x19, 0xfc, 0x36, 0x90, 0x69, 0xd7, 0xd9, 0x68, 0x2f, 0xf1, 0xef, 0x83, 0xf7, 0x39, 0x65, 0x5b, 0xcd, 0xff, 0xb9, 0x1d, }; static const unsigned char ecdh_brainpoolp512r1_1159_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1159_sharedsecret[] = { 0x63, 0x98, 0x49, 0x64, 0xbd, 0x71, 0xbd, 0x27, 0x5d, 0x06, 0x1e, 0x43, 0x96, 0xb9, 0xf0, 0x45, 0x02, 0xc8, 0x73, 0x55, 0x54, 0x7d, 0x0f, 0x2a, 0x18, 0x2b, 0x31, 0xde, 0xc2, 0x64, 0xe3, 0x2f, 0x66, 0xe1, 0x28, 0x63, 0x31, 0x66, 0x09, 0x11, 0x92, 0x2d, 0x7a, 0x59, 0x19, 0x03, 0x6d, 0x7d, 0x65, 0xb7, 0x6d, 0x7d, 0x5f, 0x63, 0x55, 0x68, 0x9d, 0xee, 0xfb, 0x07, 0x44, 0x4e, 0x1c, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1159 = { .name = "ecdh_brainpoolp512r1_1159", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1159_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1159_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1159_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 81 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1160 for ECDH, tcId is 82 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1160_peerpubkey[] = { 0xa4, 0xba, 0xfe, 0xf2, 0x7a, 0x4a, 0x2d, 0xfc, 0xb5, 0xc9, 0xad, 0xeb, 0xdb, 0xcb, 0xcf, 0x16, 0x5c, 0x09, 0xf2, 0x82, 0x4f, 0x56, 0x99, 0xc9, 0x4b, 0xa4, 0xe6, 0x08, 0x4f, 0x67, 0x70, 0x97, 0x1f, 0x61, 0x9d, 0x33, 0xe5, 0x1a, 0x72, 0x48, 0xa1, 0x16, 0x0c, 0x50, 0x9e, 0xf7, 0xa1, 0x44, 0x92, 0xc9, 0x79, 0x7b, 0x27, 0x96, 0x63, 0xcb, 0x22, 0x5a, 0x4e, 0xcf, 0x09, 0xc2, 0x8a, 0x5c, 0xa9, 0x1e, 0x31, 0x8b, 0x91, 0x01, 0x2d, 0x63, 0xdc, 0x23, 0xca, 0x00, 0x0e, 0xd2, 0x15, 0x5e, 0x0d, 0x34, 0x7d, 0x0f, 0x0b, 0x2a, 0x33, 0x14, 0x81, 0x98, 0x87, 0x00, 0x8f, 0x93, 0xf8, 0x5c, 0x79, 0xfa, 0x77, 0x0c, 0x82, 0xc9, 0x20, 0xc4, 0xc4, 0xcd, 0x28, 0x56, 0xc0, 0x3d, 0x27, 0x49, 0xca, 0x13, 0x2c, 0x35, 0x0c, 0xdd, 0x30, 0x3d, 0x0b, 0xb5, 0xdb, 0x0f, 0xe3, 0x73, 0xd9, 0x5f, }; static const unsigned char ecdh_brainpoolp512r1_1160_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1160_sharedsecret[] = { 0x0e, 0x0c, 0xb9, 0x5c, 0x1f, 0xdd, 0x38, 0xa4, 0xef, 0x7a, 0x8d, 0x86, 0x1f, 0x3a, 0xf5, 0x9c, 0x1f, 0x5b, 0xb2, 0x6f, 0xc1, 0x91, 0x3f, 0xc6, 0x2e, 0x07, 0x2d, 0xc2, 0xa7, 0x8c, 0x15, 0xbe, 0x30, 0xdf, 0x89, 0xa5, 0xc2, 0xaa, 0xc3, 0xa4, 0x36, 0x4a, 0xba, 0xdb, 0xda, 0xbc, 0x36, 0xf4, 0x56, 0x58, 0x61, 0xf2, 0xeb, 0x8e, 0x72, 0x3f, 0x43, 0xcb, 0x36, 0x3c, 0xd8, 0x97, 0xbb, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1160 = { .name = "ecdh_brainpoolp512r1_1160", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1160_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1160_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1160_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 82 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1161 for ECDH, tcId is 83 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1161_peerpubkey[] = { 0x0c, 0x16, 0xde, 0x7a, 0xd2, 0x0f, 0x54, 0x59, 0xc9, 0x2d, 0x46, 0xcd, 0x3c, 0xc6, 0x94, 0xb5, 0x39, 0xb3, 0xa9, 0x11, 0x8a, 0x85, 0x49, 0x6a, 0x6a, 0xde, 0x42, 0xff, 0x83, 0x2a, 0x91, 0x94, 0xee, 0x79, 0xa4, 0x53, 0x79, 0x23, 0x3b, 0x31, 0x05, 0xd2, 0xb7, 0xdc, 0xfd, 0x31, 0xa3, 0x1c, 0x23, 0x84, 0x46, 0x28, 0x4f, 0x5c, 0x71, 0x59, 0x83, 0x68, 0x35, 0x3a, 0x66, 0x05, 0x14, 0x15, 0x59, 0xf0, 0xb6, 0x00, 0x5b, 0x42, 0x3c, 0x4c, 0x8f, 0xe2, 0x58, 0x8f, 0x30, 0x35, 0xdd, 0x4d, 0x87, 0x2a, 0xb4, 0x12, 0xc5, 0x1f, 0x8c, 0x1e, 0x0c, 0x97, 0xa4, 0xb2, 0xd7, 0xde, 0xb9, 0x0c, 0xe1, 0xce, 0xe4, 0xa7, 0x41, 0x58, 0x1c, 0x19, 0x29, 0x3c, 0x4f, 0x53, 0x76, 0x65, 0xa0, 0xb8, 0x53, 0x86, 0x13, 0xf0, 0x57, 0xb4, 0x4c, 0xd8, 0x86, 0x23, 0x21, 0x8b, 0x17, 0xc6, 0x68, 0xee, }; static const unsigned char ecdh_brainpoolp512r1_1161_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1161_sharedsecret[] = { 0x12, 0xaf, 0x21, 0x7a, 0x00, 0x42, 0x46, 0xd9, 0x7b, 0xc1, 0x13, 0x7e, 0x6e, 0x47, 0xb3, 0x48, 0x4d, 0xf5, 0x81, 0xc8, 0x6e, 0x8e, 0x26, 0xe8, 0x63, 0x80, 0x43, 0x9d, 0x8d, 0x01, 0xe5, 0x64, 0x67, 0x29, 0xd6, 0x78, 0xa8, 0x36, 0xa1, 0x76, 0xb3, 0xf4, 0xca, 0x08, 0xd6, 0x37, 0x26, 0x3a, 0x84, 0xac, 0x65, 0xd9, 0x05, 0xf3, 0x2b, 0xd4, 0x5a, 0x06, 0x18, 0x34, 0x17, 0x47, 0xb9, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1161 = { .name = "ecdh_brainpoolp512r1_1161", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1161_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1161_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1161_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 83 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1162 for ECDH, tcId is 84 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1162_peerpubkey[] = { 0x1d, 0xe0, 0x97, 0x9d, 0xbc, 0x8a, 0x51, 0xbc, 0x11, 0x02, 0x08, 0xec, 0xdf, 0xbc, 0xf7, 0x63, 0x47, 0x55, 0x17, 0xf4, 0xa0, 0xf7, 0x97, 0x5c, 0xf1, 0xce, 0x51, 0x9f, 0x0b, 0x80, 0x05, 0xe6, 0xc9, 0xba, 0xb4, 0xdc, 0x7c, 0x84, 0xfd, 0x03, 0x06, 0xe3, 0xcc, 0xfc, 0x15, 0x8d, 0xca, 0x58, 0x55, 0xd5, 0xdb, 0x1f, 0xfb, 0x7f, 0x55, 0x0d, 0x88, 0x95, 0xdb, 0x1f, 0x74, 0x30, 0xc6, 0x23, 0x84, 0x9a, 0xe3, 0x5f, 0x6b, 0xa0, 0xbf, 0x57, 0x2e, 0x48, 0x75, 0x3f, 0xcb, 0xe1, 0x03, 0x00, 0xca, 0x2c, 0xb0, 0xc6, 0x3e, 0x14, 0x52, 0x9d, 0x2d, 0x7b, 0x31, 0x0c, 0xd0, 0x31, 0x0c, 0x98, 0xd4, 0x0e, 0x26, 0xf0, 0xba, 0x50, 0x48, 0x9e, 0x3e, 0xee, 0x5b, 0xee, 0x5d, 0xb1, 0x80, 0xf5, 0xc4, 0xe1, 0xb8, 0x27, 0xc0, 0x42, 0x3b, 0xd0, 0x1f, 0x2d, 0xca, 0x6b, 0x7e, 0x5c, 0x9b, 0x73, }; static const unsigned char ecdh_brainpoolp512r1_1162_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1162_sharedsecret[] = { 0x6d, 0xc7, 0x29, 0x05, 0xef, 0x89, 0xc1, 0xb2, 0x60, 0x2b, 0x04, 0x90, 0xac, 0xad, 0xdf, 0xc0, 0x3a, 0x44, 0x69, 0x78, 0x3a, 0x19, 0x86, 0xd1, 0x63, 0x19, 0x7b, 0x60, 0xa1, 0xdd, 0xa4, 0x92, 0xe3, 0xf0, 0xc3, 0xc3, 0x69, 0xed, 0x36, 0x06, 0xc4, 0x43, 0x46, 0xee, 0x6b, 0x1c, 0x90, 0x36, 0x9d, 0x49, 0x95, 0xab, 0xb4, 0xff, 0xb0, 0x44, 0xbd, 0xa1, 0x9b, 0xad, 0xb3, 0x58, 0xe6, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1162 = { .name = "ecdh_brainpoolp512r1_1162", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1162_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1162_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1162_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 84 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1163 for ECDH, tcId is 85 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1163_peerpubkey[] = { 0x78, 0x97, 0xbd, 0xd3, 0xd5, 0xee, 0x9f, 0x45, 0xfd, 0xb9, 0x35, 0xaa, 0x56, 0x5f, 0x53, 0x37, 0x3e, 0x28, 0x6f, 0xeb, 0x78, 0xbd, 0xbc, 0xe0, 0x67, 0x06, 0x4f, 0x21, 0x24, 0xe1, 0xa7, 0x61, 0xd2, 0x13, 0x33, 0x15, 0x49, 0x7a, 0x96, 0x4c, 0x6e, 0x9f, 0x78, 0x5e, 0x61, 0x40, 0xed, 0x07, 0xe6, 0x35, 0x02, 0xd8, 0xb8, 0x64, 0xe2, 0xb5, 0xe7, 0x06, 0xae, 0xe6, 0x78, 0xf1, 0x2f, 0xbd, 0x62, 0x7e, 0x3a, 0x94, 0xf6, 0x3a, 0x62, 0x4c, 0x48, 0x6c, 0xb9, 0xde, 0x71, 0x1a, 0x9d, 0xdb, 0xbe, 0x5b, 0xf8, 0x7a, 0xb1, 0x5b, 0x6c, 0xfd, 0x3e, 0x4b, 0x45, 0x03, 0x76, 0x86, 0xd1, 0xd2, 0x0e, 0x0e, 0xed, 0xa2, 0xa0, 0xdf, 0xf9, 0x35, 0x36, 0x06, 0x06, 0x06, 0x2b, 0xbc, 0x8c, 0xc1, 0xa6, 0xef, 0x28, 0x04, 0x10, 0x4f, 0x12, 0x0b, 0xc7, 0x5f, 0x44, 0x93, 0x58, 0x3f, 0x58, 0x30, }; static const unsigned char ecdh_brainpoolp512r1_1163_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1163_sharedsecret[] = { 0x26, 0xd4, 0x5c, 0x46, 0x42, 0x0a, 0x79, 0x17, 0xb9, 0x95, 0x1a, 0x11, 0xdf, 0xaa, 0x58, 0xb6, 0x27, 0x6d, 0xee, 0x72, 0x12, 0xe0, 0xba, 0x9f, 0xa6, 0x8e, 0x04, 0xe3, 0xde, 0x9c, 0x4e, 0xcd, 0x88, 0x45, 0xe8, 0x77, 0x04, 0xb0, 0xf3, 0x39, 0x37, 0xd3, 0x7e, 0xba, 0x94, 0x5b, 0xa6, 0x98, 0x07, 0x84, 0x2e, 0xc6, 0xe1, 0x3c, 0x79, 0xcf, 0x9a, 0xde, 0x94, 0x48, 0x61, 0x85, 0x76, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1163 = { .name = "ecdh_brainpoolp512r1_1163", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1163_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1163_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1163_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 85 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1164 for ECDH, tcId is 86 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1164_peerpubkey[] = { 0x68, 0x11, 0xdc, 0xc6, 0xa9, 0xa6, 0xa4, 0x72, 0x86, 0x47, 0x1b, 0x70, 0x60, 0x97, 0x70, 0xd8, 0x56, 0x04, 0x3c, 0xa9, 0xf0, 0x65, 0x14, 0x84, 0xc5, 0x6b, 0xcd, 0xa2, 0x1c, 0x73, 0x9a, 0x1c, 0x90, 0x50, 0x8b, 0x3a, 0x07, 0x32, 0x7c, 0x37, 0x60, 0x30, 0xba, 0xea, 0xb5, 0xf8, 0x81, 0xd4, 0x29, 0x0a, 0x2b, 0xb2, 0xe6, 0x90, 0xfd, 0x1d, 0x07, 0x27, 0x43, 0x90, 0xe9, 0x0c, 0x09, 0xe2, 0x9c, 0x77, 0xcc, 0xd2, 0xb6, 0xae, 0x56, 0x4b, 0x87, 0x63, 0x81, 0x3c, 0x97, 0xff, 0xa4, 0x73, 0xf2, 0x58, 0x9f, 0x57, 0x4c, 0x26, 0x0e, 0x6f, 0x76, 0x89, 0xc0, 0x14, 0x03, 0x4e, 0xbf, 0x35, 0xef, 0x18, 0xdf, 0x2e, 0x42, 0xf5, 0xd5, 0x34, 0x57, 0xc5, 0x0a, 0x68, 0xa6, 0x56, 0x16, 0x95, 0xd4, 0xe8, 0xd8, 0x45, 0xc3, 0x05, 0xb8, 0xd1, 0x71, 0xf8, 0x26, 0x68, 0x96, 0x34, 0x68, 0x88, }; static const unsigned char ecdh_brainpoolp512r1_1164_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1164_sharedsecret[] = { 0x30, 0x75, 0x01, 0x1d, 0x90, 0x96, 0x07, 0x60, 0xac, 0x14, 0x88, 0x18, 0x1e, 0xea, 0xec, 0x53, 0xfb, 0x39, 0xd4, 0xe0, 0xf9, 0x7a, 0x8d, 0x53, 0xcc, 0x65, 0x47, 0x7b, 0x41, 0x54, 0x55, 0xce, 0xaa, 0xdf, 0x56, 0xac, 0x14, 0x84, 0xd7, 0xa9, 0x6d, 0xb1, 0x6d, 0x34, 0x0f, 0xd6, 0x36, 0x46, 0xf1, 0x7b, 0x43, 0x88, 0xbf, 0xd2, 0xa0, 0x2a, 0x46, 0x88, 0x9b, 0x56, 0xbe, 0xfc, 0x2f, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1164 = { .name = "ecdh_brainpoolp512r1_1164", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1164_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1164_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1164_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 86 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1165 for ECDH, tcId is 87 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1165_peerpubkey[] = { 0x62, 0x15, 0x92, 0x66, 0x0c, 0x1d, 0x90, 0x6d, 0x18, 0x2d, 0x5d, 0xe7, 0x8c, 0xd9, 0x11, 0x8a, 0xb3, 0x31, 0x9e, 0xef, 0xb4, 0xf3, 0xc2, 0xa8, 0x4b, 0x89, 0x38, 0xde, 0x08, 0x1f, 0x1f, 0x5f, 0x63, 0x64, 0x32, 0x18, 0xd9, 0xb9, 0xda, 0x71, 0x9a, 0xea, 0x02, 0x5f, 0x58, 0x97, 0x55, 0xfb, 0xe8, 0x7d, 0x78, 0x56, 0x3e, 0x62, 0x4a, 0x06, 0x74, 0xd9, 0x69, 0x55, 0x58, 0x57, 0x83, 0xeb, 0x51, 0xf4, 0x09, 0x4a, 0x86, 0x5b, 0x6d, 0x46, 0x1c, 0x06, 0x7e, 0x14, 0x7e, 0x46, 0x21, 0xb5, 0x27, 0xe0, 0x4d, 0x39, 0x7c, 0xdd, 0xe5, 0xc2, 0x53, 0x49, 0x73, 0x6c, 0xa6, 0x5a, 0x29, 0xd7, 0xdc, 0xd8, 0x93, 0x25, 0x9a, 0x52, 0xf3, 0x5a, 0xb9, 0x4f, 0xc4, 0x88, 0x8b, 0xbb, 0x7e, 0xc6, 0xba, 0x00, 0xd7, 0x6c, 0xcd, 0xc4, 0xa5, 0x7a, 0x96, 0xed, 0x77, 0x99, 0x88, 0x0d, 0x38, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_1165_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1165_sharedsecret[] = { 0x76, 0xac, 0x90, 0x11, 0x93, 0x28, 0x41, 0x4f, 0xe6, 0x28, 0xc1, 0x0a, 0xb9, 0x50, 0xb0, 0x14, 0xa0, 0xcd, 0xd3, 0x4e, 0xae, 0xf5, 0x2f, 0x5d, 0x98, 0x15, 0x11, 0x11, 0x80, 0xbc, 0x9c, 0x82, 0xc3, 0xef, 0x25, 0x8f, 0x63, 0x14, 0xc7, 0xc8, 0x7f, 0x38, 0x7c, 0x3f, 0x55, 0xd3, 0x35, 0x5f, 0xfc, 0x95, 0x26, 0x54, 0xaf, 0xcf, 0x81, 0x71, 0x5d, 0xe2, 0xc9, 0x2d, 0xaf, 0x22, 0x53, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1165 = { .name = "ecdh_brainpoolp512r1_1165", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1165_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1165_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1165_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 87 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1166 for ECDH, tcId is 88 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1166_peerpubkey[] = { 0x1f, 0x35, 0x03, 0x29, 0xae, 0x37, 0xad, 0xc4, 0x01, 0x38, 0x80, 0xd6, 0x1a, 0xff, 0x90, 0x2d, 0xc5, 0xc2, 0x46, 0x86, 0x2f, 0x08, 0x9b, 0xcd, 0xfb, 0xa6, 0xc5, 0x97, 0x48, 0x49, 0xde, 0x08, 0x65, 0x52, 0x9b, 0x88, 0xdf, 0x43, 0x7b, 0x6a, 0xc1, 0xf4, 0xb0, 0xa6, 0xca, 0x58, 0x7d, 0x21, 0x9f, 0x45, 0x8d, 0x51, 0x65, 0xaf, 0xfa, 0xe7, 0xc8, 0x49, 0xf2, 0x49, 0x28, 0xd1, 0xdd, 0xdb, 0x69, 0x22, 0x16, 0x14, 0x1b, 0xee, 0xcc, 0xb5, 0x98, 0x34, 0x81, 0x16, 0x26, 0x8a, 0x04, 0xf5, 0xf3, 0xfd, 0x9f, 0x74, 0x3b, 0xab, 0x57, 0x3a, 0x03, 0x87, 0xff, 0x2e, 0xaf, 0xf0, 0x59, 0xc8, 0x45, 0x13, 0x51, 0xbd, 0xbb, 0xb9, 0x10, 0xc8, 0xe6, 0x3f, 0x4d, 0x69, 0x5f, 0x2e, 0xd9, 0x27, 0x3c, 0x71, 0xbd, 0xcf, 0x3f, 0x22, 0xcd, 0xb9, 0xc0, 0xa9, 0xd3, 0xbd, 0x66, 0x72, 0xcc, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_1166_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1166_sharedsecret[] = { 0x56, 0x4a, 0xc5, 0xc9, 0x1a, 0x0f, 0xf4, 0x92, 0x22, 0xa9, 0x56, 0xcd, 0xc5, 0xb7, 0xb9, 0xc7, 0xeb, 0x5e, 0x9a, 0xaf, 0x01, 0x91, 0x16, 0x96, 0xd6, 0xad, 0x01, 0x65, 0x58, 0xaa, 0xad, 0xa9, 0xab, 0xf8, 0x62, 0x08, 0xb0, 0xf8, 0x09, 0x5e, 0xf8, 0x18, 0xac, 0xe8, 0x48, 0x9f, 0xa9, 0x47, 0x59, 0x34, 0x3c, 0xfa, 0xb6, 0x68, 0x64, 0x72, 0x41, 0xfa, 0xe5, 0x40, 0xbe, 0xb1, 0x41, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1166 = { .name = "ecdh_brainpoolp512r1_1166", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1166_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1166_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1166_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 88 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1167 for ECDH, tcId is 89 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1167_peerpubkey[] = { 0x9a, 0x0a, 0x8a, 0x91, 0x77, 0x65, 0x8c, 0x5b, 0x18, 0xc1, 0x92, 0xff, 0x59, 0x6b, 0xa4, 0xe9, 0x9c, 0xc6, 0x84, 0x06, 0x59, 0xb1, 0x68, 0x14, 0x53, 0xbf, 0x85, 0xd6, 0xa2, 0x98, 0x35, 0x1b, 0x4f, 0xd8, 0x01, 0x0a, 0x8b, 0x25, 0x77, 0x37, 0x5c, 0x4c, 0xc9, 0x0c, 0xc8, 0xee, 0x60, 0xc2, 0x2c, 0x7c, 0x1a, 0x92, 0xc9, 0x0a, 0xe3, 0xad, 0x88, 0xc0, 0x3c, 0xcc, 0xe1, 0xfa, 0xac, 0x68, 0x9f, 0x00, 0x54, 0xfa, 0x3d, 0x0b, 0x5c, 0xb5, 0x54, 0x01, 0xe8, 0xfa, 0x07, 0x2c, 0xd9, 0x66, 0x12, 0xb1, 0xb6, 0x5d, 0xfa, 0x65, 0x65, 0x75, 0x01, 0xd7, 0x70, 0x3c, 0x9a, 0x23, 0x5c, 0x95, 0xc5, 0x8a, 0xb8, 0xe1, 0x0a, 0x6d, 0x2f, 0x90, 0xee, 0x83, 0x3f, 0xa8, 0xe3, 0xa1, 0xe5, 0xef, 0x8a, 0xb0, 0x4f, 0x52, 0x03, 0xbf, 0xce, 0xb5, 0xae, 0x7c, 0xc8, 0xc9, 0x5c, 0x6a, 0xde, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_1167_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1167_sharedsecret[] = { 0x78, 0xa8, 0x1c, 0x3f, 0x3c, 0xf0, 0x47, 0x89, 0x24, 0xc2, 0xba, 0xe2, 0x71, 0x79, 0x93, 0xfa, 0x16, 0xe4, 0x22, 0xbf, 0x0f, 0xeb, 0xff, 0x38, 0x9d, 0x5a, 0x0f, 0x52, 0x1d, 0xb3, 0x05, 0x0d, 0xc3, 0x44, 0xf9, 0x13, 0x21, 0x7b, 0x6d, 0x44, 0x58, 0x4e, 0xc3, 0x2e, 0x6e, 0x06, 0xe1, 0x5b, 0xb8, 0xff, 0xec, 0x5a, 0xac, 0x07, 0x30, 0x7f, 0x9d, 0x3d, 0xb5, 0x86, 0xde, 0x2e, 0x23, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1167 = { .name = "ecdh_brainpoolp512r1_1167", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1167_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1167_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1167_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 89 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1168 for ECDH, tcId is 90 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1168_peerpubkey[] = { 0x46, 0x85, 0x55, 0x5a, 0x52, 0x60, 0xec, 0x3a, 0x4c, 0x7b, 0x0a, 0x2a, 0x40, 0xad, 0x39, 0x41, 0x36, 0x36, 0xaa, 0xb7, 0x0b, 0x91, 0x44, 0x2f, 0xed, 0xbc, 0xc7, 0x88, 0x59, 0x49, 0x62, 0xd3, 0xe5, 0xd4, 0x4c, 0xfa, 0x94, 0x7a, 0xf3, 0x58, 0xc0, 0x0e, 0x29, 0xa1, 0x19, 0x56, 0x62, 0x6c, 0x2d, 0xef, 0x4a, 0x20, 0xb3, 0x3a, 0xc6, 0x84, 0x78, 0x26, 0x60, 0x4a, 0xd9, 0xef, 0x87, 0x88, 0x57, 0x98, 0xe6, 0xcd, 0xdf, 0xce, 0xec, 0x79, 0x71, 0x49, 0x92, 0x51, 0x12, 0xc2, 0xf0, 0x07, 0x93, 0xf6, 0x63, 0x29, 0x40, 0x83, 0xcc, 0x19, 0xb8, 0x94, 0x20, 0xe3, 0xaa, 0x8d, 0x68, 0xe1, 0x1d, 0x14, 0x40, 0x1a, 0x06, 0xfd, 0x75, 0x8a, 0x9a, 0x6d, 0x67, 0xc8, 0x49, 0xea, 0x2c, 0x59, 0x1e, 0xaf, 0x64, 0x83, 0xec, 0x8e, 0xc9, 0xca, 0x1e, 0xa1, 0xf5, 0x3d, 0xcb, 0x2a, 0x4d, 0xdd, }; static const unsigned char ecdh_brainpoolp512r1_1168_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1168_sharedsecret[] = { 0x28, 0xa6, 0xb5, 0x94, 0x4f, 0xba, 0xcb, 0x59, 0x31, 0xa8, 0xdc, 0x2d, 0x58, 0x68, 0xb7, 0x12, 0xef, 0xfa, 0x30, 0xaf, 0x77, 0x51, 0x23, 0xe8, 0x87, 0xbb, 0xcb, 0x6e, 0xd0, 0x0c, 0xd1, 0xfb, 0xbd, 0xbe, 0x81, 0xcc, 0x48, 0x9f, 0x5d, 0x34, 0x2d, 0xef, 0xff, 0x21, 0xdb, 0x34, 0xbe, 0xa2, 0xd0, 0x2b, 0xad, 0xf1, 0xa0, 0x15, 0x5f, 0xd0, 0xa3, 0xa4, 0xff, 0xa4, 0x76, 0x8b, 0x5a, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1168 = { .name = "ecdh_brainpoolp512r1_1168", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1168_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1168_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1168_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 90 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1169 for ECDH, tcId is 91 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1169_peerpubkey[] = { 0x92, 0xc3, 0x7b, 0xd0, 0xa0, 0xf6, 0x65, 0x1d, 0x3a, 0xa5, 0x2b, 0xdd, 0x41, 0x45, 0x74, 0xc2, 0xe2, 0xd1, 0x29, 0xdf, 0x5c, 0xbf, 0x29, 0x80, 0xb2, 0x4b, 0x4d, 0xda, 0x51, 0x2e, 0x94, 0x75, 0xc9, 0x9b, 0x0e, 0x36, 0x45, 0x05, 0x03, 0xeb, 0xc9, 0x2c, 0x31, 0xec, 0xd6, 0x03, 0x1b, 0x8a, 0xcb, 0x6b, 0xb9, 0xa4, 0x73, 0x16, 0x72, 0x21, 0xbd, 0x07, 0x71, 0x2e, 0x8e, 0x2d, 0x27, 0x19, 0x27, 0xdf, 0x0a, 0x73, 0xd9, 0xef, 0x4a, 0x34, 0x79, 0x6b, 0x84, 0x62, 0x4b, 0x20, 0x27, 0xac, 0xe5, 0x57, 0x79, 0x80, 0x1d, 0x48, 0x1d, 0x41, 0xab, 0xcc, 0x47, 0xc2, 0x20, 0xf6, 0x83, 0x6d, 0x77, 0xe7, 0x19, 0xaa, 0xeb, 0x85, 0x58, 0xc3, 0xed, 0xc6, 0xb6, 0xdb, 0x95, 0x16, 0x48, 0x6d, 0x48, 0xe9, 0x9f, 0x8b, 0x3c, 0x86, 0x58, 0xf8, 0xaa, 0x77, 0x9f, 0xe2, 0x54, 0x97, 0xb0, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_1169_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1169_sharedsecret[] = { 0x72, 0xa0, 0x53, 0x29, 0xdd, 0x20, 0x5d, 0x0b, 0x46, 0xd9, 0xd3, 0xd1, 0x95, 0x8a, 0x24, 0xfd, 0x50, 0x80, 0xe7, 0x3c, 0x85, 0x58, 0xb7, 0x87, 0xdb, 0x78, 0x17, 0x0c, 0xd8, 0xbc, 0xc7, 0xd3, 0x0a, 0xf0, 0xfd, 0xad, 0xd1, 0x28, 0x14, 0x71, 0x92, 0x85, 0x6f, 0xbd, 0x5e, 0x98, 0x65, 0x7d, 0x04, 0x34, 0x9b, 0xfd, 0xd7, 0x68, 0x49, 0xbc, 0x71, 0x4f, 0x2f, 0xb5, 0xa3, 0x7c, 0x17, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1169 = { .name = "ecdh_brainpoolp512r1_1169", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1169_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1169_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1169_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 91 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1170 for ECDH, tcId is 92 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1170_peerpubkey[] = { 0x49, 0x9f, 0x38, 0x69, 0x20, 0x54, 0x15, 0xd7, 0x81, 0x4d, 0xf6, 0x49, 0x4d, 0x72, 0x7a, 0x49, 0x9e, 0xba, 0xd0, 0x02, 0x8b, 0xe4, 0xc1, 0xdd, 0xcc, 0xcd, 0x66, 0x54, 0x71, 0x35, 0xab, 0x6c, 0x42, 0x52, 0x16, 0x4a, 0xf2, 0x74, 0x27, 0x23, 0xc4, 0x43, 0xac, 0x22, 0x61, 0x91, 0xf1, 0x84, 0x4b, 0xe9, 0x92, 0xc0, 0xe1, 0x4f, 0x0d, 0x72, 0x37, 0x31, 0x08, 0x5c, 0x59, 0xda, 0xd9, 0x45, 0x83, 0x38, 0x75, 0x97, 0x7f, 0x3e, 0xbd, 0x80, 0xed, 0xf9, 0x55, 0xf0, 0x35, 0x10, 0x49, 0x5b, 0xa5, 0x4e, 0xc1, 0x27, 0x86, 0xe5, 0xc6, 0x92, 0x02, 0xe0, 0xbc, 0x48, 0xf1, 0x23, 0x3f, 0xfe, 0x1f, 0xb0, 0x03, 0xaf, 0x6b, 0xda, 0x4d, 0x4c, 0xa0, 0x87, 0xeb, 0x6a, 0x1b, 0x10, 0xb9, 0xc2, 0x4a, 0xf7, 0xbe, 0xd3, 0xce, 0xd6, 0x38, 0x31, 0xff, 0xa1, 0xcc, 0x21, 0xb7, 0xda, 0x84, 0x06, }; static const unsigned char ecdh_brainpoolp512r1_1170_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1170_sharedsecret[] = { 0x91, 0xac, 0x9b, 0x32, 0x28, 0xc6, 0x30, 0x2a, 0x66, 0xda, 0x57, 0xad, 0xfb, 0x9b, 0x0f, 0xdb, 0x3f, 0x29, 0x3f, 0x3d, 0xb3, 0x56, 0xb3, 0x2d, 0x83, 0xc3, 0xe8, 0x99, 0xb9, 0x6d, 0xe4, 0x12, 0x1e, 0x45, 0x7d, 0xb2, 0x6f, 0xfc, 0xbd, 0xa1, 0xb1, 0xd2, 0x51, 0xd7, 0xda, 0x99, 0xfd, 0x3e, 0xff, 0xf7, 0xaa, 0x2c, 0x34, 0xa1, 0xaa, 0x34, 0x51, 0xf5, 0xcf, 0xc9, 0x32, 0x8c, 0x2c, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1170 = { .name = "ecdh_brainpoolp512r1_1170", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1170_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1170_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1170_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 92 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1171 for ECDH, tcId is 93 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1171_peerpubkey[] = { 0x9e, 0xe1, 0x0b, 0xd9, 0xfd, 0xac, 0x55, 0x59, 0xc6, 0xea, 0x9d, 0x86, 0x06, 0xf6, 0xc1, 0x41, 0x86, 0x16, 0x57, 0x56, 0xd9, 0x0b, 0x96, 0x8a, 0x99, 0x2f, 0x49, 0xb0, 0x49, 0x45, 0x3b, 0x25, 0xe1, 0x2c, 0x2f, 0x7c, 0x8d, 0xe5, 0x78, 0x14, 0xb3, 0xb6, 0x02, 0xe4, 0x67, 0xf7, 0xec, 0x01, 0x8b, 0x5d, 0xb7, 0xe5, 0xff, 0x89, 0x6f, 0xe8, 0x67, 0x4c, 0xdd, 0x7f, 0xe4, 0x91, 0xab, 0xa9, 0x76, 0xa4, 0x81, 0x41, 0xf9, 0x36, 0xfb, 0xda, 0xff, 0x64, 0x3d, 0x34, 0x32, 0x64, 0x06, 0xe8, 0x2d, 0x30, 0x0e, 0x84, 0xb1, 0x36, 0x8c, 0x71, 0x8d, 0x53, 0x95, 0x7e, 0x27, 0xe6, 0xb7, 0x7b, 0xde, 0xc9, 0x10, 0xa1, 0xd6, 0x89, 0x47, 0x5b, 0xe3, 0x82, 0xec, 0xe6, 0x54, 0x1c, 0x60, 0x6f, 0x87, 0x1f, 0x1d, 0x79, 0x2b, 0x23, 0x52, 0xb0, 0x2a, 0xc1, 0x74, 0x36, 0xe9, 0xb3, 0xd6, 0x1b, }; static const unsigned char ecdh_brainpoolp512r1_1171_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1171_sharedsecret[] = { 0x44, 0xdb, 0xa3, 0x20, 0x26, 0x7e, 0x28, 0x48, 0xb0, 0xc8, 0xde, 0xa9, 0xd9, 0x79, 0xba, 0xea, 0x3e, 0xa6, 0xfe, 0x59, 0xd1, 0x87, 0x6f, 0x53, 0xff, 0xb8, 0xa7, 0x28, 0x1e, 0x91, 0x49, 0xc2, 0x7b, 0x69, 0x0e, 0xfd, 0x24, 0x96, 0x89, 0xda, 0xb1, 0x9b, 0xfe, 0x86, 0x93, 0x2c, 0x19, 0x70, 0xd1, 0x08, 0x54, 0x29, 0x97, 0x04, 0xe7, 0xe7, 0xa7, 0xe1, 0x16, 0x20, 0xd5, 0xae, 0x7d, 0x52, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1171 = { .name = "ecdh_brainpoolp512r1_1171", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1171_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1171_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1171_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 93 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1172 for ECDH, tcId is 94 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1172_peerpubkey[] = { 0x1e, 0xd6, 0x36, 0xa9, 0x68, 0x74, 0x9c, 0x68, 0x20, 0xea, 0x48, 0x5a, 0xb3, 0xbe, 0x73, 0x70, 0x32, 0x2b, 0x1f, 0x8b, 0xd3, 0xbe, 0xde, 0x14, 0xc8, 0x75, 0x64, 0x27, 0x03, 0xf6, 0x3d, 0x4d, 0x9e, 0x06, 0xf0, 0x53, 0x20, 0x09, 0xa8, 0xe2, 0x45, 0xd1, 0x45, 0xfd, 0x2f, 0xae, 0xa3, 0xf2, 0x2b, 0x27, 0x99, 0x37, 0x75, 0x94, 0x6a, 0x63, 0xdb, 0xc5, 0x6b, 0x7d, 0xff, 0xfd, 0xcd, 0x97, 0x91, 0x7d, 0xf7, 0x11, 0xe7, 0x49, 0xfe, 0x22, 0xb6, 0x45, 0xc1, 0x66, 0xd9, 0x1a, 0x28, 0x80, 0x12, 0x58, 0xfa, 0x45, 0x6f, 0x6f, 0xb1, 0xf7, 0xbd, 0xc0, 0x92, 0xe1, 0x64, 0x14, 0x64, 0xe2, 0x15, 0x2a, 0xf4, 0x0a, 0x43, 0x2f, 0x3d, 0xc1, 0x40, 0x24, 0x2a, 0x7a, 0xca, 0xa6, 0x1a, 0x4a, 0x1f, 0xb0, 0xe8, 0x40, 0xfa, 0x17, 0xc8, 0x26, 0xd3, 0x79, 0x39, 0xa0, 0x2c, 0x77, 0xf1, 0x21, }; static const unsigned char ecdh_brainpoolp512r1_1172_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1172_sharedsecret[] = { 0x10, 0xf2, 0x8c, 0x90, 0x2d, 0x0f, 0x64, 0x10, 0x11, 0x1d, 0x8a, 0x9d, 0x2c, 0x3e, 0x83, 0xbd, 0xe0, 0x99, 0xe6, 0x3b, 0x67, 0xb5, 0x5a, 0x57, 0xd6, 0x39, 0x55, 0x63, 0x0d, 0xf7, 0x9c, 0x18, 0xc8, 0x8c, 0x6c, 0xff, 0x7d, 0x60, 0xd1, 0xfb, 0xed, 0x3d, 0xa8, 0x3f, 0xa5, 0xf5, 0xe9, 0xcb, 0x0a, 0x07, 0x75, 0xf4, 0x7f, 0xb6, 0x10, 0x8c, 0xd0, 0x57, 0x7b, 0xb0, 0xb2, 0xa0, 0xed, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1172 = { .name = "ecdh_brainpoolp512r1_1172", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1172_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1172_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1172_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 94 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1173 for ECDH, tcId is 95 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1173_peerpubkey[] = { 0xa5, 0x02, 0x4d, 0x95, 0x8e, 0x89, 0x88, 0x09, 0xd1, 0xf3, 0x96, 0xfb, 0xf5, 0x5d, 0x09, 0x30, 0xec, 0x0a, 0xa1, 0x7f, 0xd7, 0xf2, 0xba, 0x42, 0xc1, 0x76, 0xbc, 0x33, 0x0a, 0x2d, 0x17, 0x79, 0xcb, 0x64, 0x22, 0x74, 0x13, 0x54, 0x68, 0x3f, 0x8f, 0xec, 0x4a, 0xed, 0x2a, 0x3a, 0x59, 0x5f, 0xe2, 0x99, 0xdc, 0xad, 0x75, 0xb5, 0x51, 0x6b, 0x0d, 0xf8, 0x54, 0x71, 0x96, 0x39, 0xa2, 0x51, 0x94, 0x7d, 0x0a, 0xd6, 0x68, 0x86, 0x13, 0x83, 0xc9, 0x33, 0xdb, 0xf9, 0xca, 0x3c, 0xa3, 0x58, 0x51, 0xaf, 0x68, 0xb7, 0xe4, 0xb9, 0x8d, 0x33, 0xad, 0x24, 0xd5, 0x42, 0x51, 0x92, 0x35, 0x7f, 0x8e, 0xdf, 0xc0, 0x54, 0xda, 0x34, 0xf9, 0xd3, 0xda, 0x7a, 0xb8, 0xd5, 0x12, 0x0c, 0xaa, 0x9d, 0x12, 0x5d, 0x45, 0x96, 0x72, 0xff, 0x49, 0xa7, 0x19, 0x8a, 0x27, 0x21, 0x14, 0xef, 0xd7, 0x03, }; static const unsigned char ecdh_brainpoolp512r1_1173_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1173_sharedsecret[] = { 0x88, 0x42, 0x85, 0x3b, 0x17, 0x60, 0xdc, 0x13, 0x50, 0x10, 0xa3, 0xeb, 0x55, 0x07, 0x3f, 0xac, 0xc5, 0x31, 0x0b, 0x58, 0xcb, 0x86, 0xe3, 0xe8, 0x4c, 0xcd, 0x01, 0xe8, 0x19, 0x88, 0x16, 0x76, 0xd9, 0xc1, 0x6f, 0x77, 0xc1, 0x88, 0xb4, 0x7c, 0xa6, 0xc9, 0x7e, 0x74, 0xb8, 0x9b, 0xb4, 0x3c, 0x5a, 0xed, 0xa6, 0xf0, 0x92, 0x44, 0xc3, 0xe8, 0x5f, 0x0e, 0x21, 0x0f, 0xee, 0x5e, 0xc6, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1173 = { .name = "ecdh_brainpoolp512r1_1173", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1173_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1173_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1173_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 95 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1174 for ECDH, tcId is 96 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1174_peerpubkey[] = { 0xaa, 0x8c, 0x20, 0xa5, 0x44, 0xeb, 0x9e, 0x78, 0xe2, 0x0b, 0x79, 0x6c, 0x8f, 0x6e, 0x64, 0x86, 0x18, 0xc5, 0xd0, 0x66, 0x10, 0xc1, 0x71, 0x0d, 0x3c, 0x2b, 0x07, 0x6b, 0x76, 0x4a, 0xf5, 0x30, 0xfa, 0x2f, 0x49, 0x9c, 0xb4, 0x36, 0x49, 0x8b, 0xce, 0x92, 0xb1, 0x26, 0x5d, 0x60, 0x97, 0x3f, 0x1c, 0x95, 0x40, 0x62, 0x82, 0xdb, 0x5c, 0x06, 0x37, 0x21, 0x0a, 0x21, 0xd5, 0x64, 0xf7, 0x4a, 0x31, 0x43, 0x7c, 0x9c, 0x0a, 0xd3, 0x76, 0x31, 0xe9, 0xa4, 0x1c, 0x22, 0xc0, 0xef, 0x77, 0xa9, 0x70, 0xa2, 0xa1, 0xda, 0xb5, 0x25, 0xcd, 0x18, 0xd7, 0x11, 0x1b, 0xe3, 0x6b, 0x9d, 0xf4, 0xe6, 0x4b, 0xc3, 0xda, 0x05, 0x5b, 0x9b, 0x3d, 0xd2, 0x7a, 0xf5, 0x15, 0xf5, 0x76, 0x9d, 0xce, 0xad, 0x32, 0xb2, 0xa5, 0xea, 0x50, 0xf2, 0x00, 0x48, 0x66, 0x2d, 0xdf, 0x50, 0x27, 0x57, 0xe7, 0xb2, }; static const unsigned char ecdh_brainpoolp512r1_1174_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1174_sharedsecret[] = { 0x83, 0x88, 0xfe, 0xd4, 0x8b, 0xf8, 0x8d, 0x4a, 0x2c, 0x36, 0x20, 0xff, 0x4d, 0x86, 0x62, 0x5d, 0xe5, 0x1e, 0xb4, 0x7f, 0x0a, 0x2b, 0x09, 0x4c, 0xb1, 0xcc, 0x4a, 0x6d, 0x7d, 0x7f, 0xf1, 0x26, 0x38, 0x39, 0xd2, 0xb7, 0x48, 0xf7, 0xaf, 0x54, 0x19, 0x24, 0x99, 0x34, 0xf4, 0xe5, 0x1c, 0xe3, 0xfc, 0x14, 0x67, 0x5b, 0xab, 0x39, 0xb0, 0xd9, 0x08, 0x95, 0x67, 0x93, 0x44, 0xec, 0xae, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1174 = { .name = "ecdh_brainpoolp512r1_1174", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1174_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1174_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1174_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 96 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1175 for ECDH, tcId is 97 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1175_peerpubkey[] = { 0x3b, 0x23, 0x61, 0x00, 0xc2, 0xf2, 0x8e, 0xbb, 0x75, 0x6d, 0xaa, 0x51, 0xc4, 0x2a, 0x26, 0x57, 0xf3, 0xcd, 0xc3, 0xff, 0x5f, 0xdb, 0xf3, 0x40, 0x8e, 0x8c, 0xea, 0x33, 0xd7, 0x62, 0x29, 0x2f, 0x70, 0xc4, 0xbf, 0x7f, 0x77, 0x4e, 0xc6, 0xcf, 0x63, 0xb0, 0xbc, 0xfa, 0xc2, 0xa0, 0xfe, 0x10, 0x93, 0x7d, 0xb8, 0xf6, 0x7c, 0xea, 0x84, 0x8a, 0x2d, 0x4b, 0x25, 0x11, 0xe4, 0xd2, 0x1c, 0xf8, 0x4b, 0x74, 0x39, 0x5b, 0x1b, 0xf1, 0x32, 0xda, 0xfe, 0x78, 0xa9, 0x37, 0xaf, 0xc1, 0x83, 0x0e, 0x86, 0x1e, 0xb0, 0x31, 0xa2, 0x79, 0x2e, 0x91, 0x75, 0x77, 0x9c, 0xaf, 0x02, 0x93, 0x10, 0x81, 0x7f, 0x96, 0xa9, 0x9d, 0x55, 0x30, 0xb0, 0x00, 0x3d, 0x3c, 0xb3, 0xba, 0x7c, 0x68, 0xf5, 0x30, 0x21, 0xb2, 0x54, 0xfa, 0x1c, 0x60, 0x2a, 0x40, 0xb9, 0x5a, 0xfe, 0x03, 0x2c, 0xa4, 0xa6, 0xf6, }; static const unsigned char ecdh_brainpoolp512r1_1175_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1175_sharedsecret[] = { 0x43, 0x74, 0x4b, 0x7b, 0x4f, 0xf4, 0x3a, 0x84, 0x80, 0xd5, 0xf5, 0x70, 0x5a, 0xa8, 0xb1, 0x2d, 0x9b, 0xf5, 0x15, 0xd4, 0x01, 0x63, 0xf8, 0x76, 0xc3, 0x27, 0x68, 0xc0, 0xbd, 0x55, 0x4f, 0x16, 0x08, 0xca, 0x8e, 0x55, 0xeb, 0x06, 0xfa, 0xaf, 0xc3, 0x90, 0xde, 0x8d, 0x37, 0xd4, 0xb7, 0xcd, 0x9f, 0x03, 0x69, 0xda, 0xff, 0x19, 0x39, 0x14, 0x02, 0x0f, 0xdb, 0x15, 0x8c, 0xaf, 0x0e, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1175 = { .name = "ecdh_brainpoolp512r1_1175", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1175_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1175_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1175_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 97 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1176 for ECDH, tcId is 98 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1176_peerpubkey[] = { 0x81, 0x21, 0x28, 0xb5, 0x4c, 0x8d, 0x25, 0xca, 0x7a, 0xf6, 0x4d, 0xe8, 0x8c, 0xa4, 0xf7, 0x04, 0x37, 0x58, 0x54, 0x6f, 0xe2, 0x38, 0xaf, 0x7f, 0xc7, 0x06, 0xfe, 0xce, 0x60, 0x28, 0x64, 0x43, 0xb8, 0x29, 0x16, 0x96, 0x92, 0xeb, 0xdf, 0xf6, 0x89, 0x8c, 0x63, 0xd5, 0xff, 0x5d, 0xa9, 0x29, 0x29, 0x7b, 0x70, 0xe0, 0x26, 0x8d, 0x6f, 0x98, 0x30, 0x5a, 0xca, 0x7f, 0x54, 0xd0, 0xf3, 0x8e, 0x90, 0x06, 0x5d, 0x17, 0x4b, 0x10, 0x66, 0x54, 0xac, 0xed, 0xef, 0xf4, 0x4b, 0xa3, 0x63, 0x35, 0x63, 0xa5, 0xdd, 0xb8, 0xd4, 0x08, 0x40, 0x69, 0x9b, 0x3d, 0xaa, 0x63, 0x3b, 0x0e, 0x87, 0x9e, 0x40, 0x95, 0xf0, 0xe0, 0xed, 0x8b, 0xad, 0x14, 0xa3, 0x07, 0xe7, 0x47, 0xc1, 0x3a, 0xcb, 0xc9, 0x89, 0x03, 0x9f, 0xdb, 0xd4, 0x2b, 0xf4, 0xa0, 0xf3, 0xc4, 0xc4, 0x8a, 0x63, 0xde, 0x2f, 0xc4, }; static const unsigned char ecdh_brainpoolp512r1_1176_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1176_sharedsecret[] = { 0x4f, 0x63, 0x94, 0xd3, 0x0f, 0x77, 0x04, 0x1b, 0x61, 0x9e, 0x60, 0xa7, 0x71, 0xe2, 0x7d, 0x2b, 0x22, 0xe1, 0xe8, 0xa8, 0x83, 0x1d, 0x5f, 0x2d, 0xd3, 0xed, 0x9b, 0xf9, 0x50, 0x02, 0xf0, 0xef, 0x6e, 0x6f, 0x63, 0x4e, 0xa7, 0x4a, 0xfb, 0x96, 0xfa, 0xc4, 0x5a, 0x48, 0x4e, 0xc8, 0x98, 0xe1, 0xe5, 0xfd, 0x33, 0xcd, 0x61, 0xed, 0x1a, 0x2b, 0x3d, 0x9f, 0x7e, 0xa8, 0xbe, 0x95, 0xac, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1176 = { .name = "ecdh_brainpoolp512r1_1176", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1176_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1176_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1176_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 98 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1177 for ECDH, tcId is 99 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1177_peerpubkey[] = { 0x1b, 0xd9, 0x8f, 0x8f, 0xc8, 0x38, 0x40, 0x05, 0xfd, 0x70, 0x5c, 0xa2, 0x41, 0x72, 0xc9, 0x01, 0x4b, 0xc2, 0x40, 0xda, 0x52, 0xb7, 0x90, 0x93, 0x0d, 0xf7, 0xa0, 0xde, 0x86, 0x69, 0x90, 0x75, 0xf6, 0x58, 0x00, 0xf5, 0x9d, 0x2b, 0xbb, 0x22, 0xee, 0x30, 0xd5, 0xa3, 0x0e, 0xa5, 0x05, 0x20, 0xaf, 0x63, 0x57, 0x60, 0xfb, 0x6a, 0x39, 0xe0, 0x2b, 0x5f, 0x54, 0xfd, 0x9f, 0x82, 0x8a, 0x54, 0x9e, 0x67, 0x09, 0xb1, 0xe2, 0x49, 0x27, 0xb9, 0x45, 0x30, 0x03, 0x36, 0x87, 0xb1, 0x2d, 0x0e, 0x59, 0x95, 0xaf, 0xd6, 0xa9, 0xd9, 0x42, 0x80, 0xfe, 0x38, 0x98, 0x5f, 0x05, 0xa6, 0xbc, 0xa1, 0x27, 0x7d, 0x5f, 0x82, 0xeb, 0x9a, 0x60, 0x2b, 0x29, 0x48, 0xb9, 0x76, 0x00, 0xae, 0x74, 0x8b, 0x05, 0xee, 0xa2, 0x64, 0x5c, 0x42, 0x3e, 0x2b, 0xdb, 0xfc, 0xb0, 0xb8, 0x56, 0xf4, 0x94, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_1177_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1177_sharedsecret[] = { 0x98, 0xc9, 0x71, 0x8c, 0x0b, 0xf3, 0xbc, 0xc9, 0xeb, 0xa9, 0xf4, 0xa6, 0x85, 0x4e, 0x24, 0xf7, 0x26, 0xb3, 0x6c, 0x70, 0x92, 0xb4, 0x83, 0x80, 0x19, 0x03, 0xed, 0xf3, 0xc3, 0xb3, 0xd4, 0xcb, 0x1e, 0x42, 0xd9, 0x0b, 0xb1, 0xc0, 0x64, 0x6f, 0x17, 0xb6, 0x85, 0x12, 0x20, 0xc7, 0xb6, 0x2e, 0x15, 0x42, 0x93, 0x13, 0x72, 0xb6, 0x8b, 0xe4, 0xc8, 0x59, 0x15, 0xa1, 0x3e, 0x3f, 0x82, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1177 = { .name = "ecdh_brainpoolp512r1_1177", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1177_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1177_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1177_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 99 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1178 for ECDH, tcId is 100 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1178_peerpubkey[] = { 0x41, 0xd7, 0xa8, 0xea, 0x3f, 0xd2, 0xa2, 0x1e, 0x73, 0xdf, 0xa4, 0x3f, 0x62, 0x67, 0x20, 0xb8, 0x5e, 0xbc, 0xee, 0xeb, 0x58, 0x28, 0x4c, 0x82, 0xe9, 0x40, 0xaf, 0x97, 0xb9, 0x37, 0x3b, 0xe7, 0xfe, 0x3b, 0xa1, 0xe8, 0x00, 0x16, 0x0e, 0xe6, 0x95, 0x55, 0x1a, 0x86, 0x3f, 0x77, 0xcd, 0x05, 0xfc, 0x70, 0x2f, 0x25, 0xa7, 0xb1, 0xf8, 0x01, 0x1a, 0x1c, 0xea, 0x8b, 0xd6, 0x2b, 0x80, 0x5b, 0x1f, 0x2d, 0x70, 0xa4, 0x89, 0x68, 0xac, 0x82, 0xa8, 0xe0, 0x9f, 0xb1, 0xad, 0xb1, 0x4e, 0x55, 0x68, 0x5e, 0xd0, 0x14, 0x40, 0x94, 0x51, 0x39, 0x47, 0x82, 0xd6, 0xed, 0x86, 0xe8, 0x33, 0x38, 0x3b, 0x02, 0x9a, 0xc5, 0x5f, 0x25, 0x7d, 0x5c, 0x74, 0x1a, 0x3a, 0x5e, 0x2b, 0x8c, 0x69, 0x3b, 0xda, 0x74, 0xf7, 0xdc, 0x5b, 0xd6, 0x14, 0xec, 0x80, 0x2d, 0x87, 0xb9, 0xe0, 0xb7, 0xbe, 0x1d, }; static const unsigned char ecdh_brainpoolp512r1_1178_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1178_sharedsecret[] = { 0x30, 0x96, 0x79, 0x69, 0x14, 0xa3, 0x55, 0x18, 0xd5, 0xdd, 0x2f, 0xd7, 0x9b, 0x2f, 0x75, 0x2d, 0xa0, 0x1c, 0x30, 0x23, 0x42, 0xd5, 0x62, 0xfb, 0xde, 0x28, 0x34, 0x9c, 0xa4, 0xa1, 0xe5, 0x06, 0xb6, 0x73, 0x0b, 0x39, 0x45, 0xb1, 0x7d, 0x26, 0xab, 0x75, 0xfa, 0xc5, 0x5a, 0x60, 0x82, 0x04, 0x98, 0x05, 0xac, 0xf3, 0x7f, 0x97, 0x14, 0x48, 0x5d, 0x25, 0xf5, 0x6f, 0x27, 0xf3, 0x5f, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1178 = { .name = "ecdh_brainpoolp512r1_1178", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1178_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1178_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1178_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 100 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1179 for ECDH, tcId is 101 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1179_peerpubkey[] = { 0x25, 0xa5, 0xff, 0x3e, 0x00, 0x1b, 0x4b, 0x4c, 0x9e, 0x59, 0xdf, 0xe3, 0x7b, 0xc8, 0x66, 0x48, 0x77, 0xf7, 0x15, 0x7c, 0xdd, 0x9c, 0x92, 0x08, 0x83, 0xee, 0x0d, 0xa1, 0x26, 0x38, 0x7a, 0xd7, 0x4c, 0x21, 0xa4, 0x65, 0xfe, 0xdb, 0x6f, 0xb7, 0xea, 0x84, 0xde, 0xb3, 0x77, 0x1c, 0xde, 0xd1, 0x8d, 0xae, 0xb9, 0xb3, 0x04, 0x6c, 0xdb, 0xd2, 0x37, 0x1f, 0xdb, 0xcd, 0x50, 0x2b, 0x30, 0xad, 0x82, 0xf3, 0x7e, 0x30, 0x86, 0xac, 0xb9, 0xe4, 0x4d, 0x32, 0xc2, 0x83, 0xbc, 0x10, 0xbb, 0x9e, 0x28, 0xf0, 0x64, 0x9a, 0xe3, 0x91, 0x60, 0x3c, 0x54, 0xe3, 0x10, 0xa4, 0xb2, 0xbe, 0x0f, 0x88, 0xe8, 0x2e, 0x60, 0xae, 0xfb, 0x55, 0x22, 0xb4, 0xc9, 0xc5, 0xd8, 0x91, 0x1a, 0x3f, 0x25, 0xaa, 0xf8, 0xd6, 0x9d, 0xed, 0x86, 0x4e, 0x9e, 0x3f, 0x38, 0xb6, 0x1a, 0x78, 0x95, 0x66, 0x28, 0x61, }; static const unsigned char ecdh_brainpoolp512r1_1179_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1179_sharedsecret[] = { 0xa4, 0xb4, 0x09, 0x18, 0xe6, 0xda, 0x26, 0xdd, 0x11, 0x21, 0xed, 0x9a, 0x3a, 0xb2, 0xeb, 0x46, 0x31, 0xc2, 0x5f, 0x7c, 0x89, 0xde, 0x53, 0xbf, 0xf2, 0xb8, 0xae, 0x74, 0xe2, 0xc4, 0xa2, 0xfc, 0xdf, 0xe7, 0xda, 0x1a, 0xe1, 0x24, 0xa5, 0xcd, 0xba, 0x7c, 0x54, 0x15, 0x25, 0x81, 0x2d, 0x2c, 0xf1, 0xaf, 0xd3, 0x6a, 0x33, 0x66, 0x1b, 0x55, 0xe4, 0x22, 0x44, 0xbb, 0xe1, 0xce, 0x78, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1179 = { .name = "ecdh_brainpoolp512r1_1179", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1179_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1179_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1179_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 101 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1180 for ECDH, tcId is 102 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1180_peerpubkey[] = { 0x36, 0xb5, 0x6b, 0xe0, 0xd3, 0xdc, 0x2c, 0xc2, 0x11, 0x5c, 0xdd, 0xb8, 0x95, 0x15, 0xe1, 0x9e, 0x80, 0x8d, 0xc0, 0x54, 0x1b, 0x8a, 0xf7, 0x62, 0xfb, 0xbe, 0xad, 0xfd, 0xbc, 0x87, 0x65, 0xd6, 0x80, 0x87, 0x71, 0x50, 0xf1, 0x0d, 0xd6, 0x95, 0x6d, 0xe3, 0x7b, 0x37, 0x64, 0x31, 0x7f, 0x50, 0x7d, 0x61, 0xf8, 0x42, 0x17, 0xf2, 0x73, 0x2f, 0x73, 0xff, 0x12, 0x6e, 0xa6, 0xec, 0x69, 0x96, 0x1a, 0xa1, 0x96, 0xa1, 0xbd, 0xee, 0x60, 0x9e, 0xbd, 0x76, 0xdc, 0xaf, 0xe1, 0xcd, 0xe6, 0x7d, 0xb1, 0x68, 0x13, 0x4e, 0x7d, 0x1e, 0x2f, 0x63, 0x97, 0xba, 0x9c, 0xef, 0x8e, 0xe2, 0xb0, 0x42, 0x24, 0xa3, 0xed, 0xfa, 0x1d, 0xf1, 0xe9, 0x8b, 0xd1, 0xfc, 0x24, 0xe7, 0xb0, 0x44, 0xc1, 0xf4, 0xd3, 0x8c, 0x98, 0xdf, 0x44, 0xd0, 0x16, 0x36, 0xd9, 0x6f, 0xe8, 0xe1, 0xd1, 0xfc, 0x3f, 0xfb, }; static const unsigned char ecdh_brainpoolp512r1_1180_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_1180_sharedsecret[] = { 0x32, 0xbb, 0x39, 0x31, 0x73, 0xeb, 0x87, 0xa0, 0xc2, 0x7c, 0x03, 0xbc, 0xd4, 0x84, 0xc1, 0xc6, 0xc0, 0x7b, 0x60, 0x65, 0xc1, 0x6c, 0x47, 0xe4, 0x82, 0xc0, 0x07, 0x0f, 0x88, 0xc6, 0x11, 0x82, 0xd9, 0xc6, 0x33, 0xed, 0x16, 0x48, 0x98, 0x19, 0x13, 0xec, 0x11, 0xcb, 0x12, 0xf5, 0xcd, 0x70, 0xa3, 0xd6, 0xdf, 0x97, 0xb9, 0xec, 0x9a, 0x83, 0x3f, 0x03, 0x91, 0x19, 0xbe, 0xeb, 0x74, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1180 = { .name = "ecdh_brainpoolp512r1_1180", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1180_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1180_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1180_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 102 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1181 for ECDH, tcId is 103 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1181_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1181_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp512r1_1181_sharedsecret[] = { 0x47, 0xed, 0x91, 0x5c, 0xa6, 0x4a, 0xac, 0x75, 0x27, 0x24, 0xaa, 0x06, 0xb3, 0x11, 0xd1, 0x71, 0xdc, 0x14, 0xb9, 0xc5, 0x54, 0x21, 0xff, 0x61, 0xc6, 0x41, 0x3b, 0x3f, 0xc7, 0x31, 0x3e, 0xcd, 0xa0, 0x3c, 0x0a, 0xdd, 0xd0, 0xd6, 0xdb, 0xda, 0xcd, 0x5e, 0xa0, 0x61, 0x90, 0x54, 0x61, 0x46, 0x10, 0xd0, 0x7c, 0xd7, 0x8f, 0x9e, 0xd4, 0xd6, 0xdf, 0x02, 0x4c, 0x78, 0x1a, 0xf3, 0xef, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1181 = { .name = "ecdh_brainpoolp512r1_1181", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1181_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1181_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1181_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 103 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1182 for ECDH, tcId is 104 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1182_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1182_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_1182_sharedsecret[] = { 0x78, 0x1a, 0x3b, 0xd7, 0xf9, 0x9a, 0xe1, 0x45, 0x69, 0x87, 0x83, 0x49, 0x5f, 0x1f, 0x4a, 0xac, 0x51, 0x89, 0xd5, 0x46, 0x57, 0xc3, 0x4f, 0x76, 0xc8, 0x84, 0x7c, 0xd5, 0x17, 0x7d, 0x6a, 0x08, 0xa2, 0xc8, 0x37, 0x50, 0x13, 0x51, 0xe0, 0x98, 0xba, 0x57, 0x0a, 0x3f, 0x30, 0x0c, 0xca, 0x47, 0xf2, 0x40, 0x7f, 0xf9, 0x17, 0x2b, 0x29, 0x54, 0xae, 0xf4, 0x6f, 0xdb, 0xec, 0x84, 0x29, 0xb7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1182 = { .name = "ecdh_brainpoolp512r1_1182", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1182_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1182_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1182_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 104 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1183 for ECDH, tcId is 105 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1183_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1183_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1183_sharedsecret[] = { 0x33, 0x48, 0x51, 0x76, 0xaa, 0x26, 0xcf, 0xd1, 0x7a, 0x66, 0xe1, 0xda, 0x3c, 0x39, 0x73, 0xf4, 0x68, 0xbc, 0x32, 0xa1, 0x52, 0x8a, 0x67, 0xf9, 0xd3, 0x3b, 0x7c, 0xa2, 0x9b, 0xfd, 0x6f, 0xa5, 0x36, 0xba, 0xc3, 0x11, 0x2b, 0xb8, 0xf2, 0xc2, 0xea, 0x19, 0x8f, 0x2f, 0x7d, 0xf5, 0xa5, 0x6d, 0xda, 0x57, 0x09, 0x31, 0xb7, 0x85, 0x2b, 0x32, 0x24, 0xc4, 0x03, 0xa1, 0xd0, 0x8f, 0x3d, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1183 = { .name = "ecdh_brainpoolp512r1_1183", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1183_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1183_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1183_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 105 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1184 for ECDH, tcId is 106 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1184_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1184_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_1184_sharedsecret[] = { 0x9c, 0x49, 0x71, 0xc8, 0x9a, 0x22, 0xda, 0x14, 0xab, 0xac, 0x13, 0x04, 0xb6, 0x22, 0x8c, 0x5d, 0x64, 0x7f, 0x8d, 0xd8, 0xa1, 0x1b, 0x13, 0x48, 0xc4, 0x19, 0xf4, 0x30, 0x73, 0x3e, 0x84, 0x99, 0x57, 0xfb, 0x03, 0x78, 0x65, 0xef, 0xa8, 0x5f, 0x95, 0x85, 0xed, 0x0f, 0xfe, 0x8c, 0x6e, 0xa2, 0xc7, 0xc3, 0x9a, 0xc8, 0xbb, 0xee, 0xdc, 0x84, 0x71, 0x7f, 0x8a, 0x6b, 0xe9, 0x60, 0x3f, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1184 = { .name = "ecdh_brainpoolp512r1_1184", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1184_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1184_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1184_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 106 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1185 for ECDH, tcId is 107 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1185_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1185_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1185_sharedsecret[] = { 0x58, 0xbe, 0x41, 0x43, 0x07, 0xcd, 0x76, 0x11, 0x43, 0xc4, 0x92, 0x24, 0xf3, 0x0a, 0xc4, 0x75, 0xe6, 0xb8, 0xfd, 0xbf, 0x43, 0xbe, 0x3f, 0x13, 0x0b, 0x71, 0xff, 0x8d, 0x89, 0xaf, 0x5d, 0x3b, 0x91, 0x34, 0x28, 0x98, 0x38, 0x8d, 0x16, 0x28, 0xf5, 0x63, 0x22, 0xd3, 0x27, 0xf5, 0xf0, 0x75, 0xca, 0x3a, 0x76, 0x6d, 0x94, 0x21, 0x3f, 0x8f, 0xf6, 0x70, 0x76, 0xca, 0xa2, 0x53, 0x93, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1185 = { .name = "ecdh_brainpoolp512r1_1185", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1185_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1185_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1185_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 107 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1186 for ECDH, tcId is 108 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1186_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1186_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdc, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_1186_sharedsecret[] = { 0x2e, 0x03, 0x30, 0x2f, 0x29, 0x44, 0xb3, 0xbc, 0x90, 0x2e, 0x5f, 0xe6, 0xb7, 0xd1, 0xca, 0x39, 0x91, 0xbf, 0x9f, 0xd8, 0x0b, 0xaf, 0xa8, 0xdf, 0x4d, 0x4e, 0x85, 0xa9, 0x8f, 0x33, 0xd9, 0x56, 0x28, 0x0b, 0xa0, 0x07, 0x81, 0x78, 0xb5, 0x4e, 0xd1, 0xaa, 0x03, 0x57, 0x1f, 0xfa, 0xc2, 0xd4, 0x76, 0xc7, 0x24, 0x6a, 0xb6, 0x8e, 0xbb, 0x94, 0x34, 0xfa, 0xc5, 0x64, 0x45, 0x5f, 0x39, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1186 = { .name = "ecdh_brainpoolp512r1_1186", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1186_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1186_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1186_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 108 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1187 for ECDH, tcId is 109 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1187_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1187_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x77, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_1187_sharedsecret[] = { 0x0d, 0xcd, 0x1e, 0x56, 0x3a, 0x94, 0xfd, 0x8e, 0xdc, 0x83, 0xe4, 0x7e, 0xbb, 0xc9, 0x29, 0x6d, 0x1c, 0x27, 0xd1, 0xaf, 0xf3, 0x7b, 0x02, 0x51, 0x2c, 0x03, 0x37, 0xca, 0x67, 0x2f, 0xf8, 0x4a, 0xc7, 0x3a, 0x61, 0x8f, 0xa5, 0x4f, 0x2b, 0x96, 0x31, 0x82, 0xba, 0x14, 0x1a, 0xe5, 0x96, 0xc5, 0x6f, 0x83, 0xd0, 0xec, 0xb4, 0xde, 0xb7, 0x80, 0x55, 0xcc, 0x8e, 0xa4, 0x76, 0xd0, 0x9b, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1187 = { .name = "ecdh_brainpoolp512r1_1187", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1187_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1187_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1187_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 109 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1188 for ECDH, tcId is 110 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1188_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1188_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x7f, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_1188_sharedsecret[] = { 0xaa, 0x9a, 0xc6, 0xd3, 0x34, 0x3f, 0xb7, 0xaa, 0xd7, 0x12, 0x88, 0x55, 0xa2, 0x2c, 0xb2, 0x5f, 0x6c, 0xd9, 0xb4, 0x6e, 0xa0, 0x2f, 0x2a, 0x15, 0xc7, 0xcd, 0xec, 0xdc, 0x68, 0x1f, 0x3c, 0xa3, 0x8f, 0x18, 0x60, 0x29, 0x09, 0x71, 0x85, 0x2d, 0xe9, 0x4c, 0xc6, 0x88, 0x10, 0xd4, 0x1d, 0x14, 0x60, 0x7f, 0x55, 0x8e, 0x38, 0x58, 0x39, 0x4c, 0xef, 0x8b, 0x16, 0x6a, 0xbe, 0xe0, 0x23, 0xa2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1188 = { .name = "ecdh_brainpoolp512r1_1188", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1188_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1188_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1188_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 110 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1189 for ECDH, tcId is 111 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1189_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1189_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x81, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_1189_sharedsecret[] = { 0x5f, 0x15, 0x5d, 0x9d, 0x14, 0x68, 0x0a, 0xa5, 0xef, 0xb4, 0xed, 0x59, 0xf6, 0x70, 0xf6, 0xef, 0xc5, 0x9c, 0x15, 0xbb, 0x03, 0xb5, 0x9b, 0x3a, 0x2c, 0xf1, 0xa4, 0xa1, 0x54, 0x6b, 0x7e, 0x35, 0xbf, 0xd9, 0x91, 0x94, 0xcf, 0xe7, 0x2e, 0x79, 0x21, 0x6c, 0x1d, 0xae, 0xbd, 0xcd, 0x24, 0x7e, 0x93, 0x4e, 0xab, 0x45, 0x7c, 0xa9, 0x0d, 0x4d, 0x2c, 0x38, 0xb6, 0x45, 0x17, 0xe0, 0xcc, 0xe0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1189 = { .name = "ecdh_brainpoolp512r1_1189", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1189_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1189_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1189_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 111 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1190 for ECDH, tcId is 112 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1190_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1190_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x3b, }; static const unsigned char ecdh_brainpoolp512r1_1190_sharedsecret[] = { 0x19, 0x48, 0x71, 0x64, 0x5b, 0xbf, 0xc3, 0x09, 0xeb, 0xa9, 0x2c, 0x56, 0x13, 0xca, 0x7c, 0x6a, 0xa5, 0x66, 0xfd, 0xab, 0x45, 0x63, 0x5f, 0x65, 0x61, 0x48, 0xec, 0x71, 0x22, 0xd7, 0x1c, 0x82, 0x5f, 0x36, 0x85, 0x2f, 0x52, 0x72, 0x2e, 0xa9, 0x49, 0xc2, 0x57, 0x2d, 0xbb, 0x6b, 0x89, 0x4a, 0x21, 0xf9, 0x6a, 0x05, 0xc9, 0xbe, 0xe0, 0xdf, 0x6c, 0x6b, 0x4f, 0xaa, 0x31, 0x97, 0x07, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1190 = { .name = "ecdh_brainpoolp512r1_1190", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1190_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1190_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1190_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 112 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1191 for ECDH, tcId is 113 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1191_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1191_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_1191_sharedsecret[] = { 0x3a, 0x6e, 0x57, 0x85, 0x8d, 0x4e, 0x61, 0xc7, 0xed, 0x2c, 0xb9, 0x3c, 0x12, 0x42, 0x21, 0x21, 0x02, 0x93, 0xa3, 0x45, 0xb4, 0x7f, 0x76, 0x44, 0x91, 0x05, 0x43, 0xac, 0x03, 0x11, 0x7f, 0x48, 0xb0, 0x34, 0x3d, 0xde, 0xbd, 0x2c, 0xf9, 0x92, 0x5e, 0x3d, 0xc5, 0xe1, 0xea, 0x59, 0x07, 0x39, 0xed, 0x2c, 0x23, 0x72, 0xe1, 0x14, 0x6f, 0x84, 0xfd, 0x26, 0x2a, 0xc7, 0xd8, 0xee, 0xba, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1191 = { .name = "ecdh_brainpoolp512r1_1191", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1191_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1191_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1191_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 113 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1192 for ECDH, tcId is 114 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1192_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1192_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x63, }; static const unsigned char ecdh_brainpoolp512r1_1192_sharedsecret[] = { 0x8e, 0x0a, 0x18, 0x6a, 0x51, 0xea, 0xe0, 0x8a, 0x86, 0xfd, 0xd4, 0x76, 0xbc, 0xfd, 0x96, 0x1d, 0x02, 0xbe, 0x74, 0x96, 0x6c, 0xe3, 0xc2, 0xd9, 0x37, 0xc8, 0x08, 0xdb, 0x51, 0x8f, 0x2d, 0xdc, 0x47, 0x60, 0xbf, 0xc9, 0x24, 0xaf, 0x72, 0xf8, 0x5e, 0xb1, 0x88, 0xeb, 0xc7, 0x0e, 0xdd, 0xe6, 0xd1, 0x2f, 0x40, 0x27, 0x35, 0xf5, 0x8b, 0x90, 0x06, 0xf8, 0xb8, 0xe2, 0x83, 0xef, 0x9f, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1192 = { .name = "ecdh_brainpoolp512r1_1192", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1192_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1192_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1192_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 114 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1193 for ECDH, tcId is 115 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1193_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1193_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_1193_sharedsecret[] = { 0x47, 0xed, 0x91, 0x5c, 0xa6, 0x4a, 0xac, 0x75, 0x27, 0x24, 0xaa, 0x06, 0xb3, 0x11, 0xd1, 0x71, 0xdc, 0x14, 0xb9, 0xc5, 0x54, 0x21, 0xff, 0x61, 0xc6, 0x41, 0x3b, 0x3f, 0xc7, 0x31, 0x3e, 0xcd, 0xa0, 0x3c, 0x0a, 0xdd, 0xd0, 0xd6, 0xdb, 0xda, 0xcd, 0x5e, 0xa0, 0x61, 0x90, 0x54, 0x61, 0x46, 0x10, 0xd0, 0x7c, 0xd7, 0x8f, 0x9e, 0xd4, 0xd6, 0xdf, 0x02, 0x4c, 0x78, 0x1a, 0xf3, 0xef, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1193 = { .name = "ecdh_brainpoolp512r1_1193", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1193_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1193_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1193_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 115 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1194 for ECDH, tcId is 116 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1194_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_1194_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_1194_sharedsecret[] = { 0x30, 0x0b, 0x1d, 0x80, 0xd9, 0xdc, 0x55, 0x87, 0x07, 0x6b, 0x7d, 0x85, 0x0c, 0xcd, 0x00, 0xcf, 0x89, 0x61, 0xf3, 0x89, 0xc4, 0xde, 0xd6, 0x0b, 0xf9, 0x10, 0xd9, 0x8f, 0x19, 0x6f, 0x67, 0xc3, 0x83, 0x9d, 0x21, 0x97, 0x10, 0x16, 0x07, 0x61, 0x2b, 0x33, 0x58, 0x71, 0xa8, 0x18, 0xd5, 0x0d, 0x8f, 0x4b, 0xb6, 0x16, 0x3c, 0xc8, 0x39, 0xcf, 0x41, 0xaf, 0x0b, 0x74, 0x2c, 0x72, 0x54, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1194 = { .name = "ecdh_brainpoolp512r1_1194", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1194_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1194_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1194_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 116 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1195 for ECDH, tcId is 117 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1195_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1195_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1195 = { .name = "ecdh_brainpoolp512r1_1195", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1195_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1195_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 117 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1196 for ECDH, tcId is 118 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1196_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_1196_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1196 = { .name = "ecdh_brainpoolp512r1_1196", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1196_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1196_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 118 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1197 for ECDH, tcId is 119 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1197_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_1197_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1197 = { .name = "ecdh_brainpoolp512r1_1197", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1197_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1197_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 119 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1198 for ECDH, tcId is 120 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1198_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1198_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1198 = { .name = "ecdh_brainpoolp512r1_1198", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1198_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1198_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 120 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1199 for ECDH, tcId is 121 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1199_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1199_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1199 = { .name = "ecdh_brainpoolp512r1_1199", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1199_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1199_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 121 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1200 for ECDH, tcId is 122 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1200_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_1200_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1200 = { .name = "ecdh_brainpoolp512r1_1200", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1200_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1200_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 122 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1201 for ECDH, tcId is 123 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1201_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_1201_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1201 = { .name = "ecdh_brainpoolp512r1_1201", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1201_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1201_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 123 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1202 for ECDH, tcId is 124 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1202_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1202_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1202 = { .name = "ecdh_brainpoolp512r1_1202", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1202_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1202_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 124 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1203 for ECDH, tcId is 125 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1203_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1203_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1203 = { .name = "ecdh_brainpoolp512r1_1203", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1203_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1203_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 125 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1204 for ECDH, tcId is 126 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1204_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_1204_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1204 = { .name = "ecdh_brainpoolp512r1_1204", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1204_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1204_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 126 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1205 for ECDH, tcId is 127 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1205_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_1205_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1205 = { .name = "ecdh_brainpoolp512r1_1205", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1205_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1205_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 127 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1206 for ECDH, tcId is 128 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1206_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1206_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1206 = { .name = "ecdh_brainpoolp512r1_1206", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1206_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1206_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 128 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1207 for ECDH, tcId is 129 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1207_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1207_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1207 = { .name = "ecdh_brainpoolp512r1_1207", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1207_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1207_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 129 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1208 for ECDH, tcId is 130 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1208_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_1208_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1208 = { .name = "ecdh_brainpoolp512r1_1208", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1208_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1208_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 130 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1209 for ECDH, tcId is 131 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1209_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_1209_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1209 = { .name = "ecdh_brainpoolp512r1_1209", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1209_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1209_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 131 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1210 for ECDH, tcId is 132 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1210_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1210_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1210 = { .name = "ecdh_brainpoolp512r1_1210", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1210_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1210_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 132 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1211 for ECDH, tcId is 134 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1211_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x95, }; static const unsigned char ecdh_brainpoolp512r1_1211_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1211 = { .name = "ecdh_brainpoolp512r1_1211", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1211_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1211_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 134 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1212 for ECDH, tcId is 135 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1212_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_1212_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1212 = { .name = "ecdh_brainpoolp512r1_1212", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1212_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1212_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 135 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1213 for ECDH, tcId is 138 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1213_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1213_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1213_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1213 = { .name = "ecdh_brainpoolp512r1_1213", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1213_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1213_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1213_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 1, tcId is 138 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1214 for ECDH, tcId is 139 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1214_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1214_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1214_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1214 = { .name = "ecdh_brainpoolp512r1_1214", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1214_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1214_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1214_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 2083592630841357761914050861997332755048435564175796348448981807380927961881602771668457829077617488768289656930144243078095422967775269405300354, tcId is 139 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1215 for ECDH, tcId is 140 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1215_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1215_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1215_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1215 = { .name = "ecdh_brainpoolp512r1_1215", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1215_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1215_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1215_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator = (0,0), tcId is 140 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1216 for ECDH, tcId is 141 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1216_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1216_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1216_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1216 = { .name = "ecdh_brainpoolp512r1_1216", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1216_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1216_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1216_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator not on curve, tcId is 141 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1217 for ECDH, tcId is 144 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1217_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1217_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1217_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1217 = { .name = "ecdh_brainpoolp512r1_1217", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1217_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1217_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1217_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = 2, tcId is 144 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1218 for ECDH, tcId is 146 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1218_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1218_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1218_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1218 = { .name = "ecdh_brainpoolp512r1_1218", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1218_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1218_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1218_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = None, tcId is 146 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1219 for ECDH, tcId is 151 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1219_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_1219_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_1219_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1219 = { .name = "ecdh_brainpoolp512r1_1219", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1219_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1219_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1219_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "a = 0, tcId is 151 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1220 for ECDH, tcId is 153 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1220_peerpubkey[] = { 0x55, 0x2e, 0x0f, 0x40, 0x3a, 0x37, 0xa5, 0x3c, 0xab, 0x04, 0x8d, 0x6c, 0x66, 0x16, 0x97, 0x3f, 0xb8, 0x0c, 0xcb, 0xeb, 0xb7, 0x88, 0xa5, 0xd7, 0x43, 0xf6, 0xbd, 0x48, 0xb2, 0x7e, 0x81, 0x91, 0x00, 0xac, 0xd5, 0x3c, 0x86, 0xa9, 0x54, 0x20, 0xe5, 0x2c, 0xfa, 0x18, 0xd9, 0x58, 0xbc, 0xb7, 0x84, 0x4f, 0x05, 0xe4, 0x08, 0x24, 0xb5, 0xeb, 0x38, 0xc8, 0x27, 0x45, 0x6e, 0x9b, 0x41, 0x0c, 0x67, 0x87, 0xba, 0xfb, 0x0c, 0xf8, 0x73, 0xf5, 0x35, 0xc8, 0x23, 0x81, 0xc8, 0x1b, 0xbe, 0xa8, 0xe7, 0x29, 0x1b, 0x68, 0xf9, 0x3e, 0x58, 0xf5, 0x65, 0x7a, 0xf4, 0x03, 0x33, 0xae, 0xfc, 0x23, 0xcd, 0xac, 0xae, 0xdf, 0xf7, 0xb3, 0xee, 0xfd, 0x8c, 0xba, 0x64, 0x4b, 0xb7, 0x2e, 0x97, 0x46, 0xc3, 0xba, 0xca, 0xec, 0x3f, 0xf1, 0x4a, 0x95, 0x0d, 0xc6, 0xe1, 0xff, 0xb0, 0x37, 0x89, 0xab, }; static const unsigned char ecdh_brainpoolp512r1_1220_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1220 = { .name = "ecdh_brainpoolp512r1_1220", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1220_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1220_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP512t1, tcId is 153 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1221 for ECDH, tcId is 168 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1221_peerpubkey[] = { 0x1b, 0xdd, 0xcd, 0x40, 0x74, 0x61, 0xd8, 0x21, 0xe5, 0x87, 0x9e, 0xb6, 0xb2, 0x77, 0x36, 0xdc, 0x11, 0x12, 0xc3, 0xc9, 0x17, 0x7f, 0xc3, 0xcf, 0x1a, 0x1b, 0xbd, 0x39, 0x65, 0x45, 0x14, 0xd7, 0xc8, 0x29, 0x50, 0xe9, 0xf6, 0x74, 0xa4, 0xce, 0x4c, 0x7f, 0xc9, 0xf9, 0x41, 0x0c, 0x5e, 0xd9, 0xb1, 0x94, 0xc9, 0x26, 0xc1, 0xfb, 0x0c, 0x17, 0x89, 0x40, 0xe4, 0x6d, 0xc4, 0xfc, 0xf1, 0x2c, 0x22, 0x2d, 0x62, 0xb9, 0xc3, 0xf7, 0x6b, 0xa4, 0x59, 0xf8, 0xea, 0xe7, 0x2d, 0x5b, 0x2c, 0x8d, 0xf5, 0xa2, 0xce, 0xcf, 0x34, 0xdc, 0xc6, 0x61, 0x08, 0x53, 0x8a, 0x0f, 0x6a, 0xed, 0xd8, 0xe2, 0xe9, 0xc5, 0x15, 0x15, 0xa2, 0x90, 0xf2, 0x44, 0xe3, 0xe4, 0x0e, 0x35, 0x2a, 0x6e, 0x86, 0xa5, 0x8a, 0xf4, 0x1c, 0xd8, 0x9f, 0x7d, 0xee, 0x16, 0x19, 0x9b, 0xc8, 0x4d, 0x20, 0x51, 0xc4, 0x3e, }; static const unsigned char ecdh_brainpoolp512r1_1221_privkey[] = { 0x02, 0x15, 0xf8, 0x98, 0xba, 0x48, 0x2b, 0xa7, 0x68, 0xa4, 0xaa, 0x8a, 0x5a, 0x1d, 0x01, 0x86, 0x2c, 0x0f, 0x18, 0x4a, 0xb9, 0x2c, 0xed, 0xd1, 0x49, 0x28, 0x1f, 0x72, 0x2b, 0xd0, 0x3f, 0xfe, 0x6a, 0xac, 0xf3, 0x3e, 0xd8, 0x81, 0x0f, 0x98, 0xc7, 0x57, 0x5f, 0x99, 0xfb, 0x35, 0x54, 0x8f, 0x93, 0xb3, 0xa8, 0x28, 0xdc, 0xda, 0x3d, 0xae, 0x7d, 0x91, 0xb9, 0x13, 0xc4, 0x0a, 0x94, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1221 = { .name = "ecdh_brainpoolp512r1_1221", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1221_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1221_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP512t1, tcId is 168 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1222 for ECDH, tcId is 169 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1222_peerpubkey[] = { 0x25, 0x64, 0xec, 0xe7, 0x69, 0x89, 0xd8, 0x22, 0x65, 0xea, 0x79, 0xfe, 0x5b, 0x41, 0xb2, 0xdf, 0xad, 0x22, 0x68, 0xe2, 0x7d, 0xf8, 0xee, 0x72, 0x60, 0xd9, 0x37, 0x43, 0x5d, 0xa3, 0x77, 0x7a, 0x51, 0x06, 0x55, 0x7d, 0xfb, 0xdb, 0x64, 0xd1, 0x06, 0xc2, 0xad, 0x46, 0xe6, 0x4d, 0xc6, 0x3e, 0x0e, 0xaa, 0x22, 0xe8, 0x1a, 0x03, 0xd2, 0x5b, 0x87, 0x05, 0x78, 0xd8, 0x6b, 0x0f, 0x14, 0x32, }; static const unsigned char ecdh_brainpoolp512r1_1222_privkey[] = { 0x57, 0x08, 0x7c, 0x2e, 0x66, 0xe2, 0x22, 0x1d, 0x06, 0x18, 0x07, 0x72, 0x07, 0xce, 0xd3, 0xfe, 0x31, 0x62, 0x7f, 0x83, 0xaf, 0xe4, 0xea, 0x3d, 0x39, 0x99, 0xa2, 0x6d, 0x97, 0x37, 0xfa, 0x8a, 0xce, 0x4f, 0x50, 0xb9, 0x68, 0x93, 0x0c, 0xae, 0x8b, 0xbf, 0x55, 0xb4, 0x22, 0x33, 0x5f, 0x22, 0xd8, 0x5a, 0x23, 0x58, 0x2b, 0x07, 0x6c, 0x28, 0x36, 0xe0, 0x60, 0xcd, 0x11, 0x57, 0xcf, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1222 = { .name = "ecdh_brainpoolp512r1_1222", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1222_peerpubkey, .peerpubkeylen = 64, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1222_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 169 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1223 for ECDH, tcId is 170 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1223_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1223_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1223_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1223 = { .name = "ecdh_brainpoolp512r1_1223", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1223_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1223_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1223_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 170 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1224 for ECDH, tcId is 171 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1224_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1224_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1224_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1224 = { .name = "ecdh_brainpoolp512r1_1224", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1224_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1224_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1224_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "length of sequence contains leading 0, tcId is 171 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1225 for ECDH, tcId is 205 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1225_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1225_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1225_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1225 = { .name = "ecdh_brainpoolp512r1_1225", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1225_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1225_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1225_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending null value to sequence, tcId is 205 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1226 for ECDH, tcId is 206 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1226_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1226_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1226_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1226 = { .name = "ecdh_brainpoolp512r1_1226", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1226_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1226_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1226_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending null value to sequence, tcId is 206 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1227 for ECDH, tcId is 235 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1227_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1227_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1227_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1227 = { .name = "ecdh_brainpoolp512r1_1227", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1227_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1227_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1227_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "Replacing sequence with NULL, tcId is 235 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1228 for ECDH, tcId is 238 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1228_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1228_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1228_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1228 = { .name = "ecdh_brainpoolp512r1_1228", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1228_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1228_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1228_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of sequence, tcId is 238 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1229 for ECDH, tcId is 243 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1229_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1229_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1229_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1229 = { .name = "ecdh_brainpoolp512r1_1229", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1229_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1229_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1229_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of sequence, tcId is 243 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1230 for ECDH, tcId is 247 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1230_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1230_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1230_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1230 = { .name = "ecdh_brainpoolp512r1_1230", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1230_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1230_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1230_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "dropping value of sequence, tcId is 247 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1231 for ECDH, tcId is 265 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1231_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1231_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1231_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1231 = { .name = "ecdh_brainpoolp512r1_1231", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1231_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1231_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1231_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "prepend empty sequence, tcId is 265 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1232 for ECDH, tcId is 266 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1232_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1232_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1232_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1232 = { .name = "ecdh_brainpoolp512r1_1232", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1232_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1232_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1232_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "append empty sequence, tcId is 266 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1233 for ECDH, tcId is 267 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1233_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1233_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1233_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1233 = { .name = "ecdh_brainpoolp512r1_1233", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1233_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1233_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1233_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "append empty sequence, tcId is 267 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1234 for ECDH, tcId is 271 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1234_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1234_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1234_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1234 = { .name = "ecdh_brainpoolp512r1_1234", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1234_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1234_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1234_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "sequence of sequence, tcId is 271 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1235 for ECDH, tcId is 273 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1235_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1235_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1235_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1235 = { .name = "ecdh_brainpoolp512r1_1235", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1235_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1235_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1235_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 273 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1236 for ECDH, tcId is 274 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1236_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1236_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1236_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1236 = { .name = "ecdh_brainpoolp512r1_1236", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1236_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1236_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1236_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "repeating element in sequence, tcId is 274 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1237 for ECDH, tcId is 275 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1237_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1237_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1237_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1237 = { .name = "ecdh_brainpoolp512r1_1237", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1237_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1237_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1237_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "repeating element in sequence, tcId is 275 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1238 for ECDH, tcId is 276 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1238_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1238_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1238_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1238 = { .name = "ecdh_brainpoolp512r1_1238", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1238_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1238_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1238_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "long form encoding of length of sequence, tcId is 276 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1239 for ECDH, tcId is 277 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1239_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1239_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1239_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1239 = { .name = "ecdh_brainpoolp512r1_1239", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1239_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1239_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1239_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "long form encoding of length of oid, tcId is 277 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1240 for ECDH, tcId is 278 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1240_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1240_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1240_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1240 = { .name = "ecdh_brainpoolp512r1_1240", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1240_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1240_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1240_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "long form encoding of length of oid, tcId is 278 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1241 for ECDH, tcId is 279 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1241_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1241_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1241_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1241 = { .name = "ecdh_brainpoolp512r1_1241", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1241_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1241_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1241_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "length of oid contains leading 0, tcId is 279 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1242 for ECDH, tcId is 280 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1242_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1242_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1242_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1242 = { .name = "ecdh_brainpoolp512r1_1242", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1242_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1242_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1242_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "length of oid contains leading 0, tcId is 280 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1243 for ECDH, tcId is 299 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1243_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1243_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1243_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1243 = { .name = "ecdh_brainpoolp512r1_1243", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1243_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1243_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1243_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "removing oid, tcId is 299 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1244 for ECDH, tcId is 302 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1244_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1244_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1244_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1244 = { .name = "ecdh_brainpoolp512r1_1244", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1244_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1244_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1244_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending 0's to oid, tcId is 302 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1245 for ECDH, tcId is 303 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1245_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1245_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1245_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1245 = { .name = "ecdh_brainpoolp512r1_1245", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1245_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1245_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1245_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending 0's to oid, tcId is 303 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1246 for ECDH, tcId is 304 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1246_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1246_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1246_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1246 = { .name = "ecdh_brainpoolp512r1_1246", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1246_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1246_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1246_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "prepending 0's to oid, tcId is 304 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1247 for ECDH, tcId is 305 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1247_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1247_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1247_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1247 = { .name = "ecdh_brainpoolp512r1_1247", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1247_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1247_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1247_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "prepending 0's to oid, tcId is 305 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1248 for ECDH, tcId is 307 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1248_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1248_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1248_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1248 = { .name = "ecdh_brainpoolp512r1_1248", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1248_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1248_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1248_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending null value to oid, tcId is 307 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1249 for ECDH, tcId is 308 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1249_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1249_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1249_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1249 = { .name = "ecdh_brainpoolp512r1_1249", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1249_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1249_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1249_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "appending null value to oid, tcId is 308 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1250 for ECDH, tcId is 311 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1250_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1250_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1250_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1250 = { .name = "ecdh_brainpoolp512r1_1250", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1250_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1250_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1250_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "Replacing oid with NULL, tcId is 311 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1251 for ECDH, tcId is 312 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1251_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1251_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1251_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1251 = { .name = "ecdh_brainpoolp512r1_1251", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1251_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1251_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1251_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "Replacing oid with NULL, tcId is 312 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1252 for ECDH, tcId is 313 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1252_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1252_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1252_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1252 = { .name = "ecdh_brainpoolp512r1_1252", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1252_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1252_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1252_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of oid, tcId is 313 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1253 for ECDH, tcId is 315 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1253_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1253_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1253_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1253 = { .name = "ecdh_brainpoolp512r1_1253", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1253_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1253_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1253_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of oid, tcId is 315 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1254 for ECDH, tcId is 318 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1254_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1254_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1254_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1254 = { .name = "ecdh_brainpoolp512r1_1254", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1254_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1254_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1254_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of oid, tcId is 318 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1255 for ECDH, tcId is 320 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1255_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1255_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1255_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1255 = { .name = "ecdh_brainpoolp512r1_1255", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1255_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1255_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1255_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "changing tag value of oid, tcId is 320 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1256 for ECDH, tcId is 325 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1256_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1256_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1256_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1256 = { .name = "ecdh_brainpoolp512r1_1256", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1256_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1256_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1256_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "modify first byte of oid, tcId is 325 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1257 for ECDH, tcId is 326 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1257_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1257_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1257_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1257 = { .name = "ecdh_brainpoolp512r1_1257", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1257_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1257_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1257_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "modify first byte of oid, tcId is 326 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1258 for ECDH, tcId is 329 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1258_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1258_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1258_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1258 = { .name = "ecdh_brainpoolp512r1_1258", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1258_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1258_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1258_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "truncated oid, tcId is 329 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1259 for ECDH, tcId is 330 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1259_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1259_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1259_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1259 = { .name = "ecdh_brainpoolp512r1_1259", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1259_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1259_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1259_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "truncated oid, tcId is 330 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1260 for ECDH, tcId is 331 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1260_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1260_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1260_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1260 = { .name = "ecdh_brainpoolp512r1_1260", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1260_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1260_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1260_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "truncated oid, tcId is 331 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1261 for ECDH, tcId is 332 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1261_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1261_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1261_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1261 = { .name = "ecdh_brainpoolp512r1_1261", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1261_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1261_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1261_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "truncated oid, tcId is 332 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1262 for ECDH, tcId is 333 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1262_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1262_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1262_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1262 = { .name = "ecdh_brainpoolp512r1_1262", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1262_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1262_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1262_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "wrong oid, tcId is 333 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1263 for ECDH, tcId is 334 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1263_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1263_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1263_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1263 = { .name = "ecdh_brainpoolp512r1_1263", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1263_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1263_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1263_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "wrong oid, tcId is 334 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1264 for ECDH, tcId is 335 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1264_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1264_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1264_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1264 = { .name = "ecdh_brainpoolp512r1_1264", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1264_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1264_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1264_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "wrong oid, tcId is 335 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1265 for ECDH, tcId is 336 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1265_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1265_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1265_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1265 = { .name = "ecdh_brainpoolp512r1_1265", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1265_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1265_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1265_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "wrong oid, tcId is 336 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1266 for ECDH, tcId is 337 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1266_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1266_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1266_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1266 = { .name = "ecdh_brainpoolp512r1_1266", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1266_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1266_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1266_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "longer oid, tcId is 337 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1267 for ECDH, tcId is 338 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1267_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1267_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1267_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1267 = { .name = "ecdh_brainpoolp512r1_1267", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1267_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1267_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1267_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "longer oid, tcId is 338 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1268 for ECDH, tcId is 339 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1268_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1268_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1268_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1268 = { .name = "ecdh_brainpoolp512r1_1268", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1268_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1268_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1268_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "oid with modified node, tcId is 339 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1269 for ECDH, tcId is 340 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1269_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1269_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1269_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1269 = { .name = "ecdh_brainpoolp512r1_1269", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1269_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1269_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1269_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "oid with modified node, tcId is 340 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1270 for ECDH, tcId is 341 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1270_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1270_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1270_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1270 = { .name = "ecdh_brainpoolp512r1_1270", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1270_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1270_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1270_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "oid with modified node, tcId is 341 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1271 for ECDH, tcId is 342 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1271_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1271_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1271_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1271 = { .name = "ecdh_brainpoolp512r1_1271", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1271_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1271_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1271_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "oid with modified node, tcId is 342 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1272 for ECDH, tcId is 343 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1272_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1272_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1272_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1272 = { .name = "ecdh_brainpoolp512r1_1272", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1272_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1272_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1272_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "large integer in oid, tcId is 343 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1273 for ECDH, tcId is 344 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1273_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1273_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1273_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1273 = { .name = "ecdh_brainpoolp512r1_1273", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1273_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1273_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1273_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "large integer in oid, tcId is 344 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1274 for ECDH, tcId is 349 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1274_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1274_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1274_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1274 = { .name = "ecdh_brainpoolp512r1_1274", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1274_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1274_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1274_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "length of bit string contains leading 0, tcId is 349 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1275 for ECDH, tcId is 361 in file ecdh_brainpoolP512r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1275_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_1275_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1275_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1275 = { .name = "ecdh_brainpoolp512r1_1275", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1275_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1275_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1275_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "prepending 0's to bit string, tcId is 361 in file ecdh_brainpoolP512r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1276 for ECDH, tcId is 372 in file ecdh_brainpoolP512r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_1276_peerpubkey[] = { 0x77, 0x0e, 0xda, 0xe4, 0x34, 0x9a, 0xfd, 0x54, 0xef, 0x98, 0xde, 0xc6, 0x89, 0x72, 0x53, 0x2e, 0xa2, 0x9e, 0x32, 0xae, 0xa9, 0x60, 0xbd, 0x5b, 0x56, 0x32, 0x3c, 0x79, 0x95, 0x1f, 0xf0, 0x88, 0x9d, 0x1f, 0xa2, 0xdc, 0xe7, 0xd2, 0x83, 0x99, 0x5b, 0xbc, 0x5a, 0x00, 0xeb, 0xa2, 0x0e, 0x89, 0xe2, 0x6f, 0x2f, 0xe8, 0xd2, 0x53, 0x09, 0x0d, 0xc8, 0x32, 0x38, 0xda, 0x24, 0x91, 0x03, 0x49, 0x7c, 0xcc, 0x96, 0x26, 0x97, 0x34, 0x43, 0x2d, 0xf9, 0xc7, 0xff, 0x8e, 0xc7, 0x58, 0xfc, 0x1b, 0xbe, 0x95, 0xe9, 0x4a, 0x97, 0xad, 0x1d, 0xdf, 0xb3, 0x39, 0xbc, 0x9c, 0x27, 0x4c, 0x0b, 0x14, 0x5e, 0xac, 0xe7, 0x5d, 0xae, 0x38, 0x77, 0x37, 0x95, 0x00, 0x2e, 0xa0, 0x3b, 0xb1, 0x09, 0xac, 0x21, 0x23, 0xa2, 0xc0, 0x45, 0xef, 0x7c, 0x3b, 0xbf, 0xb7, 0x35, 0xf5, 0x7c, 0xd3, 0x93, 0x73, }; static const unsigned char ecdh_brainpoolp512r1_1276_privkey[] = { 0x99, 0xd3, 0x43, 0x08, 0xf0, 0xfc, 0x8f, 0x61, 0xd0, 0x00, 0x9d, 0x4d, 0x7b, 0x28, 0xf5, 0x0c, 0x02, 0xfd, 0xaa, 0xa2, 0x66, 0x97, 0xb9, 0x3e, 0xd0, 0xe3, 0x3d, 0x0f, 0x99, 0xe8, 0xb9, 0x6c, 0x9a, 0x06, 0xc8, 0x10, 0xd2, 0x87, 0x2b, 0x23, 0x73, 0xed, 0x7d, 0xc6, 0xb5, 0x18, 0x0b, 0xca, 0xa6, 0x3d, 0x8d, 0xb6, 0xb4, 0x96, 0x04, 0x89, 0x5a, 0x94, 0xfd, 0xdc, 0xf0, 0x6c, 0xb2, 0x19, }; static const unsigned char ecdh_brainpoolp512r1_1276_sharedsecret[] = { 0xa9, 0xab, 0x63, 0x1e, 0xb8, 0x1b, 0xe9, 0xad, 0x96, 0x61, 0xae, 0x01, 0x2c, 0x84, 0x71, 0x9d, 0x87, 0x63, 0x2b, 0xd6, 0x23, 0x34, 0x3f, 0x0f, 0x4a, 0x85, 0x00, 0x4b, 0xef, 0xaf, 0xb5, 0xca, 0xfd, 0xc6, 0xfd, 0x33, 0xf5, 0xc4, 0x08, 0x15, 0x46, 0x45, 0xf4, 0x58, 0xc5, 0x41, 0xbe, 0x32, 0x0c, 0x7b, 0xaa, 0x12, 0x15, 0x5d, 0x9e, 0xd8, 0x58, 0xcd, 0xc9, 0x16, 0xf5, 0x15, 0xd0, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_1276 = { .name = "ecdh_brainpoolp512r1_1276", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_1276_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_1276_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_1276_sharedsecret, .sharedsecretlen = 64, .result = -1, .comment = "modify last byte of bit string, tcId is 372 in file ecdh_brainpoolP512r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 1277 for ECDH, tcId is 1 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1277_peerpubkey[] = { 0x7d, 0x8a, 0xc2, 0x11, 0xe1, 0x22, 0x8e, 0xb0, 0x94, 0xe2, 0x85, 0xa9, 0x57, 0xd9, 0x91, 0x2e, 0x93, 0xde, 0xee, 0x43, 0x3e, 0xd7, 0x77, 0x44, 0x0a, 0xe9, 0xfc, 0x71, 0x9b, 0x01, 0xd0, 0x50, 0xdf, 0xbe, 0x65, 0x3e, 0x72, 0xf3, 0x94, 0x91, 0xbe, 0x87, 0xfb, 0x1a, 0x27, 0x42, 0xda, 0xa6, 0xe0, 0xa2, 0xaa, 0xda, 0x98, 0xbb, 0x1a, 0xca, }; static const unsigned char ecdh_secp224r1_1277_privkey[] = { 0x56, 0x55, 0x77, 0xa4, 0x94, 0x15, 0xca, 0x76, 0x1a, 0x03, 0x22, 0xad, 0x54, 0xe4, 0xad, 0x0a, 0xe7, 0x62, 0x51, 0x74, 0xba, 0xf3, 0x72, 0xc2, 0x81, 0x6f, 0x53, 0x28, }; static const unsigned char ecdh_secp224r1_1277_sharedsecret[] = { 0xb8, 0xec, 0xdb, 0x55, 0x2d, 0x39, 0x22, 0x8e, 0xe3, 0x32, 0xba, 0xfe, 0x48, 0x86, 0xdb, 0xff, 0x27, 0x2f, 0x71, 0x09, 0xed, 0xf9, 0x33, 0xbc, 0x75, 0x42, 0xbd, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1277 = { .name = "ecdh_secp224r1_1277", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1277_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1277_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1277_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1278 for ECDH, tcId is 2 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1278_peerpubkey[] = { 0x7d, 0x8a, 0xc2, 0x11, 0xe1, 0x22, 0x8e, 0xb0, 0x94, 0xe2, 0x85, 0xa9, 0x57, 0xd9, 0x91, 0x2e, 0x93, 0xde, 0xee, 0x43, 0x3e, 0xd7, 0x77, 0x44, 0x0a, 0xe9, 0xfc, 0x71, }; static const unsigned char ecdh_secp224r1_1278_privkey[] = { 0x56, 0x55, 0x77, 0xa4, 0x94, 0x15, 0xca, 0x76, 0x1a, 0x03, 0x22, 0xad, 0x54, 0xe4, 0xad, 0x0a, 0xe7, 0x62, 0x51, 0x74, 0xba, 0xf3, 0x72, 0xc2, 0x81, 0x6f, 0x53, 0x28, }; static const unsigned char ecdh_secp224r1_1278_sharedsecret[] = { 0xb8, 0xec, 0xdb, 0x55, 0x2d, 0x39, 0x22, 0x8e, 0xe3, 0x32, 0xba, 0xfe, 0x48, 0x86, 0xdb, 0xff, 0x27, 0x2f, 0x71, 0x09, 0xed, 0xf9, 0x33, 0xbc, 0x75, 0x42, 0xbd, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1278 = { .name = "ecdh_secp224r1_1278", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1278_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1278_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1278_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1279 for ECDH, tcId is 3 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1279_peerpubkey[] = { 0xe7, 0x3a, 0x6c, 0xa7, 0x2f, 0x3a, 0x2f, 0xae, 0x6e, 0x0a, 0x01, 0xa0, 0xed, 0x03, 0xbf, 0xa3, 0x05, 0x8b, 0x04, 0x57, 0x69, 0x42, 0xea, 0xf0, 0x63, 0x09, 0x5e, 0x62, 0xca, 0x16, 0xfd, 0x31, 0xfa, 0x0f, 0x38, 0xee, 0xb5, 0x92, 0xcb, 0xee, 0xa1, 0x14, 0x77, 0x51, 0xfd, 0xd2, 0xa5, 0xb6, 0xcc, 0x0e, 0xad, 0x40, 0x44, 0x67, 0xa5, 0xb6, }; static const unsigned char ecdh_secp224r1_1279_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1279_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp224r1_1279 = { .name = "ecdh_secp224r1_1279", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1279_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1279_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1279_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1280 for ECDH, tcId is 4 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1280_peerpubkey[] = { 0x57, 0x63, 0xfa, 0x2a, 0xe1, 0x63, 0x67, 0xad, 0x23, 0xd4, 0x71, 0xcc, 0x9a, 0x52, 0x46, 0x6f, 0x0d, 0x81, 0xd8, 0x64, 0xe5, 0x64, 0x0c, 0xef, 0xe3, 0x84, 0x11, 0x45, 0x94, 0xd9, 0xfe, 0xcf, 0xbe, 0xd4, 0xf2, 0x54, 0x50, 0x5a, 0xc8, 0xb4, 0x1d, 0x25, 0x32, 0x05, 0x5a, 0x07, 0xf0, 0x24, 0x1c, 0x48, 0x18, 0xb5, 0x52, 0xcb, 0xb6, 0x36, }; static const unsigned char ecdh_secp224r1_1280_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1280_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_1280 = { .name = "ecdh_secp224r1_1280", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1280_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1280_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1280_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1281 for ECDH, tcId is 5 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1281_peerpubkey[] = { 0x14, 0x2c, 0x1f, 0xd8, 0x0f, 0xa2, 0x12, 0x1a, 0x59, 0xaa, 0x89, 0x81, 0x44, 0x08, 0x4e, 0xc0, 0x33, 0xf7, 0xa5, 0x6a, 0x34, 0xee, 0xe0, 0xb4, 0x99, 0xe2, 0x9a, 0xe5, 0x1c, 0x6d, 0x8c, 0x1b, 0xbb, 0x1e, 0xf2, 0xa7, 0x6d, 0x56, 0x58, 0x99, 0xfe, 0x44, 0xff, 0xc1, 0x20, 0x7d, 0x53, 0x0d, 0x7f, 0x59, 0x8f, 0xb7, 0x7f, 0x4b, 0xb7, 0x6b, }; static const unsigned char ecdh_secp224r1_1281_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1281_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_1281 = { .name = "ecdh_secp224r1_1281", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1281_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1281_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1281_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1282 for ECDH, tcId is 6 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1282_peerpubkey[] = { 0xed, 0x6f, 0x79, 0x3e, 0x10, 0xc8, 0x0d, 0x12, 0xd8, 0x71, 0xcf, 0x89, 0x88, 0x39, 0x9c, 0x48, 0x98, 0xa9, 0xbf, 0x9f, 0xfd, 0x8f, 0x27, 0x39, 0x9f, 0x63, 0xde, 0x25, 0xf0, 0x05, 0x1c, 0xdf, 0x4e, 0xec, 0x7f, 0x36, 0x8f, 0x92, 0x2c, 0xfc, 0xd9, 0x48, 0x89, 0x3c, 0xec, 0xa0, 0xc9, 0x2e, 0x54, 0x0c, 0xc4, 0x36, 0x7a, 0x99, 0xa6, 0x6a, }; static const unsigned char ecdh_secp224r1_1282_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1282_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_1282 = { .name = "ecdh_secp224r1_1282", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1282_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1282_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1282_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1283 for ECDH, tcId is 7 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1283_peerpubkey[] = { 0x08, 0xfc, 0xfc, 0x1a, 0x63, 0xc8, 0x28, 0x60, 0xbe, 0x12, 0xe4, 0x13, 0x74, 0x33, 0xdf, 0xc4, 0x0b, 0xe9, 0xac, 0xdd, 0x24, 0x5f, 0x9a, 0x8c, 0x4e, 0x56, 0xbe, 0x61, 0xa3, 0x85, 0xfc, 0x09, 0xf8, 0x08, 0x38, 0x33, 0x83, 0xf4, 0xb1, 0xd0, 0xd5, 0x36, 0x5b, 0x6e, 0x5d, 0xcf, 0xac, 0xdc, 0x19, 0xbc, 0x7b, 0xcf, 0xed, 0x22, 0x12, 0x74, }; static const unsigned char ecdh_secp224r1_1283_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1283_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1283 = { .name = "ecdh_secp224r1_1283", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1283_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1283_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1283_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1284 for ECDH, tcId is 8 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1284_peerpubkey[] = { 0xd8, 0x83, 0xed, 0x77, 0xf1, 0x86, 0x1e, 0x87, 0x12, 0x80, 0x0d, 0x31, 0xdf, 0x67, 0x88, 0x8f, 0xe3, 0x9f, 0x15, 0x0c, 0x79, 0xa2, 0x7a, 0xa8, 0x8c, 0xae, 0xda, 0x6b, 0x18, 0x0f, 0x3f, 0x62, 0x3e, 0x2f, 0xf3, 0xab, 0x53, 0x70, 0xcf, 0x81, 0x79, 0x16, 0x5b, 0x08, 0x5a, 0xf3, 0xdd, 0x45, 0x02, 0x85, 0x0c, 0x01, 0x04, 0xca, 0xed, 0x9a, }; static const unsigned char ecdh_secp224r1_1284_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1284_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_1284 = { .name = "ecdh_secp224r1_1284", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1284_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1284_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1284_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1285 for ECDH, tcId is 9 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1285_peerpubkey[] = { 0x2b, 0x8b, 0x27, 0x9b, 0x85, 0xee, 0x3f, 0x3d, 0x2c, 0x0a, 0xbe, 0xb3, 0x6f, 0xdf, 0xc5, 0xaa, 0xd6, 0x15, 0x7d, 0x65, 0x2d, 0x26, 0x48, 0x93, 0x81, 0xa3, 0x2c, 0xd7, 0x32, 0x24, 0xbd, 0x75, 0x7e, 0xf7, 0x94, 0xac, 0xc9, 0x2b, 0x0b, 0x3b, 0x9e, 0x79, 0x90, 0x61, 0x8b, 0xb3, 0x43, 0xa9, 0xa0, 0x9b, 0xdb, 0x9d, 0x36, 0x16, 0xef, 0xf6, }; static const unsigned char ecdh_secp224r1_1285_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1285_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_1285 = { .name = "ecdh_secp224r1_1285", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1285_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1285_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1285_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1286 for ECDH, tcId is 10 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1286_peerpubkey[] = { 0x8b, 0xd5, 0xf0, 0x33, 0x91, 0xee, 0xea, 0xe1, 0x74, 0x4e, 0x8f, 0xc5, 0x3d, 0x31, 0x4e, 0xff, 0xfa, 0xfa, 0x4d, 0x3f, 0xa4, 0xf1, 0xb9, 0x5c, 0x33, 0x88, 0xa9, 0xcd, 0x7c, 0x86, 0x35, 0x8b, 0x27, 0x31, 0x19, 0xc5, 0x37, 0x13, 0x3e, 0xb5, 0x5e, 0x79, 0xc6, 0xac, 0x51, 0x0b, 0x10, 0x98, 0x0b, 0x37, 0x9b, 0x91, 0x9c, 0xcf, 0x2e, 0x2f, }; static const unsigned char ecdh_secp224r1_1286_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1286_sharedsecret[] = { 0x0a, 0x15, 0xc1, 0x12, 0xff, 0x78, 0x4b, 0x14, 0x45, 0xe8, 0x89, 0xf9, 0x55, 0xbe, 0x7e, 0x3f, 0xfd, 0xf4, 0x51, 0xa2, 0xc0, 0xe7, 0x6a, 0xb5, 0xcb, 0x32, 0xcf, 0x41, }; static const wycheproof_ecdh_test ecdh_secp224r1_1286 = { .name = "ecdh_secp224r1_1286", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1286_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1286_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1286_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1287 for ECDH, tcId is 11 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1287_peerpubkey[] = { 0xce, 0x96, 0x31, 0xb6, 0xa1, 0x62, 0x27, 0x77, 0x86, 0x25, 0xc8, 0xe5, 0x42, 0x1a, 0xe0, 0x83, 0xcd, 0xd9, 0x13, 0xab, 0xef, 0xde, 0x01, 0xdb, 0xe6, 0x9f, 0x6c, 0x2b, 0x95, 0x38, 0x6a, 0xff, 0x2b, 0x48, 0x3b, 0x2c, 0x47, 0x15, 0x1c, 0xfa, 0xab, 0xfd, 0x00, 0x06, 0x14, 0xc6, 0x83, 0xce, 0x2e, 0x17, 0x78, 0x22, 0x1a, 0xe4, 0x2c, 0x1b, }; static const unsigned char ecdh_secp224r1_1287_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1287_sharedsecret[] = { 0x62, 0x98, 0x9e, 0xaa, 0xa2, 0x6a, 0x16, 0xf0, 0x73, 0x30, 0xc3, 0xc5, 0x1e, 0x0a, 0x46, 0x31, 0xfd, 0x01, 0x6b, 0xfc, 0xed, 0xe2, 0x65, 0x52, 0x81, 0x6a, 0xee, 0x39, }; static const wycheproof_ecdh_test ecdh_secp224r1_1287 = { .name = "ecdh_secp224r1_1287", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1287_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1287_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1287_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1288 for ECDH, tcId is 12 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1288_peerpubkey[] = { 0x1f, 0x44, 0x1c, 0x98, 0xed, 0xa9, 0x56, 0xa6, 0xa7, 0xfd, 0xbf, 0xd8, 0xd2, 0x19, 0x10, 0x86, 0x0a, 0xb5, 0x9d, 0x16, 0xc3, 0xe5, 0x2f, 0x8e, 0x7f, 0xad, 0x6c, 0xa5, 0xdf, 0x61, 0xa5, 0x5f, 0xc5, 0x08, 0xfc, 0x04, 0x99, 0xc5, 0x54, 0x92, 0xf1, 0xe8, 0x7b, 0xb2, 0xfa, 0xa0, 0xcb, 0x41, 0x70, 0xb7, 0x9f, 0x3a, 0x85, 0xec, 0x2f, 0x3d, }; static const unsigned char ecdh_secp224r1_1288_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1288_sharedsecret[] = { 0x66, 0x1a, 0xc9, 0x58, 0xc0, 0xfe, 0xbb, 0xc7, 0x18, 0xcc, 0xf3, 0x9c, 0xef, 0xc6, 0xb6, 0x6c, 0x42, 0x31, 0xfb, 0xb9, 0xa7, 0x6f, 0x35, 0x22, 0x8a, 0x3b, 0xf5, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp224r1_1288 = { .name = "ecdh_secp224r1_1288", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1288_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1288_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1288_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1289 for ECDH, tcId is 13 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1289_peerpubkey[] = { 0xbe, 0x74, 0x58, 0x3c, 0xb9, 0xd3, 0xa0, 0x5a, 0xe5, 0x49, 0x23, 0x62, 0x4e, 0x47, 0x8a, 0x32, 0x9a, 0x69, 0x7d, 0x84, 0x2d, 0xfa, 0xe3, 0x31, 0x41, 0xc8, 0x44, 0xd7, 0xd9, 0xba, 0x4f, 0xc9, 0x6e, 0x0f, 0xe7, 0x16, 0xac, 0x05, 0x42, 0xe8, 0x73, 0x68, 0x66, 0x2f, 0xc2, 0xf0, 0xcb, 0x9b, 0x0a, 0xe5, 0x79, 0x36, 0xdd, 0xec, 0x71, 0x90, }; static const unsigned char ecdh_secp224r1_1289_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1289_sharedsecret[] = { 0x6d, 0x7e, 0x41, 0x82, 0x1a, 0xbe, 0x10, 0x94, 0xd4, 0x30, 0x23, 0x79, 0x23, 0xd2, 0xa5, 0x0d, 0xe3, 0x17, 0x68, 0xab, 0x51, 0xb1, 0x2d, 0xce, 0x8a, 0x09, 0xe3, 0x4c, }; static const wycheproof_ecdh_test ecdh_secp224r1_1289 = { .name = "ecdh_secp224r1_1289", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1289_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1289_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1289_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1290 for ECDH, tcId is 14 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1290_peerpubkey[] = { 0xa2, 0x81, 0xad, 0x99, 0x2b, 0x36, 0x35, 0x97, 0xac, 0x93, 0xff, 0x0d, 0xe8, 0xab, 0x1f, 0x7e, 0x51, 0xa6, 0x67, 0x2d, 0xcb, 0xb5, 0x8f, 0x9d, 0x73, 0x9b, 0xa4, 0x30, 0xce, 0x01, 0x92, 0x87, 0x40, 0x38, 0xda, 0xef, 0xc3, 0x13, 0x0e, 0xec, 0x65, 0x81, 0x1c, 0x72, 0x55, 0xda, 0x70, 0xfe, 0xa6, 0x5c, 0x10, 0x03, 0xf6, 0x89, 0x2f, 0xaa, }; static const unsigned char ecdh_secp224r1_1290_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1290_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1290 = { .name = "ecdh_secp224r1_1290", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1290_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1290_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1290_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1291 for ECDH, tcId is 15 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1291_peerpubkey[] = { 0xbe, 0x3e, 0x22, 0x13, 0x3f, 0x51, 0x20, 0x3f, 0x63, 0x1b, 0x81, 0xdd, 0xe8, 0xc0, 0x20, 0xcd, 0xea, 0x5d, 0xaa, 0x1f, 0x99, 0xcf, 0xc0, 0x5c, 0x88, 0xfa, 0xd2, 0xdc, 0x0f, 0x24, 0x37, 0x98, 0xd6, 0xe7, 0x2d, 0x1d, 0xe9, 0xe3, 0xcd, 0xca, 0x41, 0x44, 0xe0, 0xa6, 0xc0, 0xf2, 0xa5, 0x84, 0xd0, 0x75, 0x89, 0x00, 0x69, 0x72, 0xc1, 0x97, }; static const unsigned char ecdh_secp224r1_1291_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1291_sharedsecret[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_1291 = { .name = "ecdh_secp224r1_1291", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1291_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1291_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1291_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1292 for ECDH, tcId is 16 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1292_peerpubkey[] = { 0xaf, 0x14, 0x54, 0x7c, 0x20, 0xaf, 0xbd, 0x91, 0xbf, 0xe6, 0x4e, 0xa0, 0x3d, 0x45, 0xa7, 0x6a, 0x71, 0x24, 0x1f, 0x23, 0x52, 0x0e, 0xf8, 0x97, 0xff, 0x91, 0xef, 0xf1, 0xb5, 0x4c, 0xa6, 0xca, 0x8c, 0x25, 0xfd, 0x73, 0x85, 0x2e, 0xc6, 0x65, 0x46, 0x17, 0x43, 0x4e, 0xff, 0x7f, 0x02, 0x25, 0x68, 0x4d, 0x4d, 0xea, 0x7a, 0x4f, 0x8a, 0x97, }; static const unsigned char ecdh_secp224r1_1292_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1292_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1292 = { .name = "ecdh_secp224r1_1292", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1292_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1292_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1292_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1293 for ECDH, tcId is 17 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1293_peerpubkey[] = { 0xb1, 0xe4, 0x84, 0x92, 0x50, 0x18, 0x72, 0x99, 0x26, 0xac, 0xda, 0x56, 0xff, 0x3e, 0x2f, 0x6c, 0x1e, 0x7e, 0x8f, 0x16, 0x2b, 0x17, 0x8d, 0x8e, 0x8a, 0xfb, 0x45, 0x56, 0x4f, 0xce, 0xaa, 0x6d, 0xa5, 0xd9, 0x98, 0xfe, 0x26, 0xb6, 0xb2, 0x6a, 0x05, 0x51, 0x69, 0x06, 0x3a, 0x5a, 0xb6, 0x90, 0x88, 0x52, 0xca, 0x8b, 0x54, 0xe2, 0xde, 0x6c, }; static const unsigned char ecdh_secp224r1_1293_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1293_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1293 = { .name = "ecdh_secp224r1_1293", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1293_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1293_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1293_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1294 for ECDH, tcId is 18 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1294_peerpubkey[] = { 0x93, 0x7e, 0xb0, 0x9f, 0xb1, 0x45, 0xc8, 0x82, 0x9c, 0xb7, 0xdf, 0x20, 0xa4, 0xcb, 0xee, 0xd3, 0x96, 0x79, 0x13, 0x73, 0xde, 0x27, 0x78, 0x71, 0xd6, 0xc5, 0xf9, 0xcc, 0x3b, 0x5b, 0x4f, 0xd5, 0x64, 0x64, 0xa7, 0x1f, 0xc4, 0xa2, 0xa6, 0xaf, 0x3b, 0xd2, 0x51, 0x95, 0x2b, 0xff, 0xa8, 0x29, 0x48, 0x9e, 0x68, 0xa8, 0xd0, 0x6f, 0x96, 0xb6, }; static const unsigned char ecdh_secp224r1_1294_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_1294_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1294 = { .name = "ecdh_secp224r1_1294", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1294_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1294_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1294_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1295 for ECDH, tcId is 19 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1295_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x7c, 0xac, 0x26, 0x9c, 0x67, 0xbd, 0x55, 0xea, 0x14, 0xef, 0xff, 0x4e, 0xad, 0xef, 0xe5, 0xe7, 0x49, 0x78, 0x51, 0x4a, 0xf1, 0x4c, 0x88, 0xfa, 0xb4, 0x6e, 0xc0, 0x46, }; static const unsigned char ecdh_secp224r1_1295_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1295_sharedsecret[] = { 0x3f, 0xa0, 0xb9, 0xff, 0x70, 0xb8, 0x84, 0xf9, 0xf5, 0x7b, 0xb8, 0x4f, 0x7a, 0x95, 0x32, 0xd9, 0x3f, 0x6b, 0xa8, 0x03, 0xf8, 0x9d, 0xd8, 0xff, 0x00, 0x81, 0x77, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1295 = { .name = "ecdh_secp224r1_1295", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1295_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1295_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1295_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 19 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1296 for ECDH, tcId is 20 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1296_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x2e, 0xa2, 0xf4, 0x91, 0x7b, 0xdf, 0xdb, 0x00, 0x83, 0x06, 0xcc, 0x10, 0xa1, 0x8e, 0x25, 0x57, 0x63, 0x3b, 0xa8, 0x61, 0x00, 0x18, 0x29, 0xdc, 0xbf, 0xb9, 0x6f, 0xba, }; static const unsigned char ecdh_secp224r1_1296_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1296_sharedsecret[] = { 0xbe, 0x1d, 0xed, 0x8c, 0xb7, 0xff, 0x8a, 0x58, 0x51, 0x81, 0xf9, 0x6d, 0x68, 0x1e, 0x31, 0xb3, 0x32, 0xfe, 0x27, 0xdc, 0xae, 0x92, 0x2d, 0xca, 0x23, 0x10, 0x30, 0x0d, }; static const wycheproof_ecdh_test ecdh_secp224r1_1296 = { .name = "ecdh_secp224r1_1296", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1296_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1296_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1296_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 20 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1297 for ECDH, tcId is 21 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1297_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0xca, 0x5f, 0x8f, 0x10, 0x49, 0x97, 0xa2, 0x39, 0x9e, 0x0c, 0x7f, 0x25, 0xe7, 0x2a, 0x75, 0xec, 0x29, 0xfc, 0x45, 0x42, 0x53, 0x3d, 0x3f, 0xea, 0x89, 0xa3, 0x3a, }; static const unsigned char ecdh_secp224r1_1297_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1297_sharedsecret[] = { 0xa2, 0xe8, 0x6a, 0x26, 0x0e, 0x13, 0x51, 0x59, 0x18, 0xa0, 0xca, 0xfd, 0xd8, 0x78, 0x55, 0xf2, 0x31, 0xb5, 0x62, 0x4c, 0x56, 0x0f, 0x97, 0x61, 0x59, 0xe0, 0x6a, 0x75, }; static const wycheproof_ecdh_test ecdh_secp224r1_1297 = { .name = "ecdh_secp224r1_1297", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1297_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1297_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1297_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1298 for ECDH, tcId is 22 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1298_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xe6, 0x80, 0x5f, 0x59, 0xb1, 0x9b, 0x0d, 0xd3, 0x89, 0x45, 0x2a, 0x1d, 0x4a, 0x42, 0x0b, 0xfe, 0xb6, 0xc3, 0x69, 0xcf, 0x6f, 0xed, 0x5b, 0x12, 0xe6, 0xe6, 0x54, }; static const unsigned char ecdh_secp224r1_1298_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1298_sharedsecret[] = { 0x31, 0xef, 0x7c, 0x8d, 0x10, 0x40, 0x4a, 0x00, 0x46, 0x99, 0x4f, 0x31, 0x3a, 0x70, 0x57, 0x4b, 0x02, 0x7e, 0x87, 0xf9, 0x02, 0x8e, 0xca, 0x24, 0x2c, 0x1b, 0x5b, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp224r1_1298 = { .name = "ecdh_secp224r1_1298", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1298_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1298_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1298_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1299 for ECDH, tcId is 23 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1299_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x77, 0xc5, 0xcf, 0xa4, 0xe2, 0xc3, 0x84, 0x93, 0x8d, 0x48, 0xbd, 0x8d, 0xd9, 0x8f, 0x54, 0xc8, 0x6b, 0x27, 0x9f, 0x1d, 0xf8, 0xc0, 0xa1, 0xf6, 0x69, 0x24, 0x39, 0xc9, }; static const unsigned char ecdh_secp224r1_1299_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1299_sharedsecret[] = { 0xd1, 0x97, 0x6a, 0x8e, 0xf5, 0xf5, 0x4f, 0x24, 0xf5, 0xa2, 0x69, 0xad, 0x50, 0x4f, 0xdc, 0xa8, 0x49, 0xfc, 0x9c, 0x28, 0x58, 0x7b, 0xa2, 0x94, 0xef, 0x26, 0x73, 0x96, }; static const wycheproof_ecdh_test ecdh_secp224r1_1299 = { .name = "ecdh_secp224r1_1299", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1299_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1299_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1299_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1300 for ECDH, tcId is 24 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1300_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x01, 0xf0, 0x82, 0x81, 0x36, 0x01, 0x6b, 0xb9, 0x74, 0x45, 0x46, 0x1b, 0xc5, 0x9f, 0x21, 0x75, 0xd8, 0xd2, 0x35, 0x57, 0xd6, 0xb9, 0x38, 0x1f, 0x26, 0x13, 0x6e, 0x3d, }; static const unsigned char ecdh_secp224r1_1300_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1300_sharedsecret[] = { 0xce, 0x78, 0x90, 0xd1, 0x08, 0xdd, 0xb2, 0xe5, 0x47, 0x4e, 0x64, 0x17, 0xfc, 0xf7, 0xa9, 0xf2, 0xb3, 0xbd, 0x01, 0x88, 0x16, 0x06, 0x2f, 0x48, 0x35, 0x26, 0x0d, 0xc8, }; static const wycheproof_ecdh_test ecdh_secp224r1_1300 = { .name = "ecdh_secp224r1_1300", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1300_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1300_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1300_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1301 for ECDH, tcId is 25 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1301_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x2d, 0x8a, 0xcc, 0xa6, 0xf1, 0x99, 0xd4, 0xa9, 0x4b, 0x93, 0x3b, 0xa1, 0xaa, 0x71, 0x3a, 0x7d, 0xeb, 0xde, 0x8a, 0xc5, 0x7b, 0x92, 0x8f, 0x59, 0x6a, 0xe6, 0x6a, 0x66, }; static const unsigned char ecdh_secp224r1_1301_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1301_sharedsecret[] = { 0x30, 0xb6, 0xff, 0x6e, 0x80, 0x51, 0xda, 0xe5, 0x1e, 0x4f, 0xe3, 0x4b, 0x2d, 0x9a, 0x0b, 0x18, 0x79, 0x15, 0x3e, 0x00, 0x7e, 0xb0, 0xb5, 0xbd, 0xf1, 0x79, 0x1a, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp224r1_1301 = { .name = "ecdh_secp224r1_1301", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1301_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1301_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1301_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1302 for ECDH, tcId is 26 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1302_peerpubkey[] = { 0x0a, 0x15, 0xc1, 0x12, 0xff, 0x78, 0x4b, 0x14, 0x45, 0xe8, 0x89, 0xf9, 0x55, 0xbe, 0x7e, 0x3f, 0xfd, 0xf4, 0x51, 0xa2, 0xc0, 0xe7, 0x6a, 0xb5, 0xcb, 0x32, 0xcf, 0x41, 0x3d, 0x4d, 0xf9, 0x73, 0xc5, 0x63, 0xc6, 0xde, 0xcd, 0xd4, 0x35, 0xe4, 0xf8, 0x64, 0x55, 0x7e, 0x4c, 0x27, 0x30, 0x96, 0xd9, 0x94, 0x1c, 0xa4, 0x26, 0x0a, 0x26, 0x6e, }; static const unsigned char ecdh_secp224r1_1302_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1302_sharedsecret[] = { 0x77, 0xec, 0x66, 0x8a, 0x00, 0xf7, 0x2d, 0x85, 0xaa, 0x52, 0x76, 0x24, 0xab, 0xb1, 0x6c, 0x03, 0x9f, 0xe4, 0x90, 0xd1, 0x7d, 0xd6, 0xc4, 0x55, 0xa1, 0xed, 0x7f, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp224r1_1302 = { .name = "ecdh_secp224r1_1302", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1302_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1302_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1302_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1303 for ECDH, tcId is 27 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1303_peerpubkey[] = { 0x62, 0x98, 0x9e, 0xaa, 0xa2, 0x6a, 0x16, 0xf0, 0x73, 0x30, 0xc3, 0xc5, 0x1e, 0x0a, 0x46, 0x31, 0xfd, 0x01, 0x6b, 0xfc, 0xed, 0xe2, 0x65, 0x52, 0x81, 0x6a, 0xee, 0x39, 0x38, 0x9e, 0xe9, 0x43, 0x6d, 0x61, 0x6c, 0xab, 0x90, 0x03, 0x29, 0x31, 0xaa, 0x7f, 0xbb, 0xfc, 0xfc, 0x13, 0x30, 0x9f, 0x61, 0xe2, 0x42, 0x3c, 0xc8, 0xda, 0xb9, 0x3c, }; static const unsigned char ecdh_secp224r1_1303_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1303_sharedsecret[] = { 0xa3, 0xf4, 0x32, 0xf6, 0xab, 0xa9, 0xa9, 0x2f, 0x49, 0xa5, 0xea, 0x64, 0xff, 0xe7, 0x05, 0x9a, 0x9d, 0x9b, 0x48, 0x7a, 0x0b, 0x52, 0x23, 0xdd, 0xc9, 0x88, 0x20, 0x8b, }; static const wycheproof_ecdh_test ecdh_secp224r1_1303 = { .name = "ecdh_secp224r1_1303", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1303_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1303_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1303_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1304 for ECDH, tcId is 28 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1304_peerpubkey[] = { 0x66, 0x1a, 0xc9, 0x58, 0xc0, 0xfe, 0xbb, 0xc7, 0x18, 0xcc, 0xf3, 0x9c, 0xef, 0xc6, 0xb6, 0x6c, 0x42, 0x31, 0xfb, 0xb9, 0xa7, 0x6f, 0x35, 0x22, 0x8a, 0x3b, 0xf5, 0xc3, 0x10, 0x3b, 0x80, 0x40, 0xe3, 0xcb, 0x41, 0x96, 0x6f, 0xc6, 0x4a, 0x68, 0xca, 0xcb, 0x0c, 0x14, 0x05, 0x3f, 0x87, 0xd2, 0x7e, 0x8e, 0xd7, 0xbf, 0x2d, 0x7f, 0xe5, 0x1b, }; static const unsigned char ecdh_secp224r1_1304_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1304_sharedsecret[] = { 0x15, 0x30, 0xfd, 0x9c, 0xaf, 0x03, 0x73, 0x7a, 0xf3, 0x4a, 0x4b, 0xa7, 0x16, 0xb5, 0x58, 0xcb, 0xec, 0xbc, 0x35, 0xd1, 0x84, 0x02, 0x53, 0x5a, 0x0a, 0x14, 0x23, 0x13, }; static const wycheproof_ecdh_test ecdh_secp224r1_1304 = { .name = "ecdh_secp224r1_1304", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1304_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1304_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1304_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1305 for ECDH, tcId is 29 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1305_peerpubkey[] = { 0x6d, 0x7e, 0x41, 0x82, 0x1a, 0xbe, 0x10, 0x94, 0xd4, 0x30, 0x23, 0x79, 0x23, 0xd2, 0xa5, 0x0d, 0xe3, 0x17, 0x68, 0xab, 0x51, 0xb1, 0x2d, 0xce, 0x8a, 0x09, 0xe3, 0x4c, 0x27, 0x6c, 0xf2, 0x73, 0xd7, 0x5d, 0x36, 0x78, 0x20, 0xdd, 0x55, 0x61, 0x82, 0xde, 0xf0, 0x95, 0x7a, 0xf0, 0xa3, 0x14, 0xf4, 0x8f, 0xed, 0x22, 0x7c, 0x29, 0x8d, 0xc0, }; static const unsigned char ecdh_secp224r1_1305_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1305_sharedsecret[] = { 0xcf, 0xc3, 0x9c, 0xca, 0xcb, 0x94, 0xad, 0x0e, 0x05, 0x52, 0xb2, 0xe4, 0x71, 0x12, 0xf6, 0x0f, 0xbb, 0xe7, 0xae, 0x0d, 0xc3, 0x22, 0x30, 0xb9, 0x27, 0x3d, 0xd2, 0x10, }; static const wycheproof_ecdh_test ecdh_secp224r1_1305 = { .name = "ecdh_secp224r1_1305", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1305_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1305_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1305_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1306 for ECDH, tcId is 30 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1306_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7d, 0x8d, 0xbc, 0xa3, 0x6c, 0x56, 0xbc, 0xaa, 0xe9, 0x2e, 0x34, 0x75, 0xf7, 0x99, 0x29, 0x4f, 0x30, 0x76, 0x80, 0x38, 0xe8, 0x16, 0xa7, 0xd5, 0xf7, 0xf0, 0x7d, 0x77, }; static const unsigned char ecdh_secp224r1_1306_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1306_sharedsecret[] = { 0x73, 0xbd, 0x63, 0xbd, 0x38, 0x4a, 0x0f, 0xaa, 0xfb, 0x75, 0xcf, 0xed, 0x3e, 0x95, 0xd3, 0x89, 0x2c, 0xba, 0xcf, 0x0d, 0xb1, 0x0f, 0x28, 0x2c, 0x3b, 0x64, 0x47, 0x71, }; static const wycheproof_ecdh_test ecdh_secp224r1_1306 = { .name = "ecdh_secp224r1_1306", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1306_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1306_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1306_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1307 for ECDH, tcId is 31 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1307_peerpubkey[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, 0x74, 0xf1, 0xff, 0x5e, 0xa7, 0xfb, 0xc7, 0x2b, 0x92, 0xf6, 0x1e, 0x06, 0x55, 0x6c, 0x26, 0xba, 0xb8, 0x4c, 0x0b, 0x08, 0x2d, 0xd6, 0x40, 0x0c, 0xa1, 0xc1, 0xeb, 0x6d, }; static const unsigned char ecdh_secp224r1_1307_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1307_sharedsecret[] = { 0x85, 0xb0, 0x79, 0xc6, 0x2e, 0x1f, 0x5b, 0x0f, 0xd6, 0x84, 0x1d, 0xfa, 0x16, 0x02, 0x6e, 0x15, 0xb6, 0x41, 0xf6, 0x5e, 0x13, 0xa1, 0x40, 0x42, 0x56, 0x71, 0x66, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp224r1_1307 = { .name = "ecdh_secp224r1_1307", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1307_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1307_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1307_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1308 for ECDH, tcId is 32 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1308_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x01, 0x26, 0xfd, 0xd5, 0xfc, 0xcd, 0x0b, 0x5a, 0xa7, 0xfd, 0x5b, 0xb5, 0xb1, 0x30, 0x85, 0x84, 0xb3, 0x05, 0x56, 0x24, 0x8c, 0xec, 0x80, 0x20, 0x8a, 0x2f, 0xe9, 0x62, }; static const unsigned char ecdh_secp224r1_1308_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1308_sharedsecret[] = { 0x8a, 0x83, 0x4f, 0xf4, 0x0e, 0x3f, 0xc9, 0xf9, 0xd4, 0x12, 0xa4, 0x81, 0xe1, 0x85, 0x37, 0xea, 0x79, 0x95, 0x36, 0xc5, 0x52, 0x0c, 0x6c, 0x7b, 0xaa, 0xf1, 0x21, 0x66, }; static const wycheproof_ecdh_test ecdh_secp224r1_1308 = { .name = "ecdh_secp224r1_1308", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1308_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1308_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1308_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1309 for ECDH, tcId is 33 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1309_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x20, 0xcf, 0xa2, 0x30, 0x77, 0xac, 0xc9, 0xfb, 0xcb, 0x71, 0x33, 0x9c, 0x65, 0x88, 0x0c, 0xd0, 0xb9, 0x66, 0xb8, 0xa9, 0x49, 0x7e, 0x65, 0xab, 0xed, 0x17, 0xf0, 0xb5, }; static const unsigned char ecdh_secp224r1_1309_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1309_sharedsecret[] = { 0xa0, 0x88, 0x72, 0x69, 0x76, 0x6e, 0x6e, 0xfc, 0xbc, 0x81, 0xd2, 0xb3, 0x8f, 0x2d, 0x46, 0x38, 0x66, 0x3f, 0x12, 0x37, 0x74, 0x68, 0xa2, 0x34, 0x21, 0x04, 0x41, 0x88, }; static const wycheproof_ecdh_test ecdh_secp224r1_1309 = { .name = "ecdh_secp224r1_1309", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1309_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1309_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1309_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1310 for ECDH, tcId is 34 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1310_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x1c, 0x05, 0xac, 0x2d, 0x4f, 0x10, 0xb6, 0x98, 0x77, 0xc3, 0x24, 0x3d, 0x51, 0xf8, 0x87, 0x27, 0x7b, 0x7b, 0xf7, 0x35, 0xc3, 0x26, 0xab, 0x2f, 0x0d, 0x70, 0xda, 0x8c, }; static const unsigned char ecdh_secp224r1_1310_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_1310_sharedsecret[] = { 0xc6, 0x5d, 0x19, 0x11, 0xbc, 0x07, 0x6a, 0x74, 0x58, 0x8d, 0x87, 0x93, 0xce, 0x7a, 0x0d, 0xca, 0xbf, 0x57, 0x93, 0x46, 0x0c, 0xd2, 0xeb, 0xb0, 0x27, 0x54, 0xa1, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp224r1_1310 = { .name = "ecdh_secp224r1_1310", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1310_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1310_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1310_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1311 for ECDH, tcId is 35 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1311_peerpubkey[] = { 0x3b, 0x58, 0x89, 0x35, 0x2d, 0xdf, 0x74, 0x68, 0xbf, 0x8c, 0x07, 0x29, 0x21, 0x2a, 0xa1, 0xb2, 0xa3, 0xfc, 0xb1, 0xa8, 0x44, 0xb8, 0xbe, 0x91, 0xab, 0xb7, 0x53, 0xd5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1311_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1311_sharedsecret[] = { 0xe9, 0x73, 0xc4, 0x13, 0xcc, 0x7d, 0xd3, 0x4d, 0x4e, 0x36, 0x37, 0x52, 0x2b, 0x2e, 0x03, 0x3c, 0x20, 0x81, 0x54, 0x12, 0xb6, 0x75, 0x74, 0xa1, 0xf2, 0xf6, 0xbd, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1311 = { .name = "ecdh_secp224r1_1311", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1311_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1311_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1311_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 35 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1312 for ECDH, tcId is 36 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1312_peerpubkey[] = { 0xbf, 0x09, 0xe2, 0x68, 0x94, 0x25, 0x55, 0xc7, 0x3c, 0xe9, 0xe0, 0x0d, 0x27, 0x2c, 0x9b, 0x12, 0xbf, 0x0c, 0x3f, 0xc1, 0x3a, 0x63, 0x9a, 0xcc, 0x79, 0x11, 0x67, 0xf6, 0xb0, 0x5d, 0xf0, 0x02, 0x3c, 0x9b, 0xd4, 0x1d, 0x0b, 0x0c, 0x46, 0x18, 0x54, 0x58, 0x2d, 0x06, 0x01, 0x18, 0x22, 0x13, 0xf2, 0x21, 0x9d, 0x44, 0xea, 0x44, 0x91, 0x4a, }; static const unsigned char ecdh_secp224r1_1312_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1312_sharedsecret[] = { 0xec, 0x85, 0x6e, 0x80, 0x78, 0x08, 0xa9, 0xc5, 0x33, 0x2e, 0x88, 0x67, 0x59, 0xe0, 0x3f, 0x01, 0xbe, 0x02, 0x43, 0x7c, 0xfe, 0x02, 0x14, 0x61, 0x3e, 0x4e, 0x7d, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1312 = { .name = "ecdh_secp224r1_1312", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1312_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1312_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1312_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 36 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1313 for ECDH, tcId is 37 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1313_peerpubkey[] = { 0x7b, 0x66, 0x4c, 0xff, 0x2e, 0xef, 0x0a, 0x4f, 0x7d, 0xce, 0x24, 0x78, 0x01, 0x13, 0x43, 0x2f, 0x66, 0xfe, 0xb2, 0x5c, 0xb0, 0x93, 0x1d, 0x03, 0x3d, 0x63, 0x91, 0x0f, 0x54, 0x8e, 0xe5, 0x14, 0xf6, 0xfd, 0xf1, 0xcb, 0x6f, 0x57, 0x09, 0x58, 0x1c, 0x19, 0x7d, 0x76, 0xa5, 0xeb, 0x21, 0x8a, 0xfa, 0xed, 0x19, 0xf2, 0x05, 0xf4, 0xab, 0x80, }; static const unsigned char ecdh_secp224r1_1313_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1313_sharedsecret[] = { 0x91, 0xd4, 0x24, 0xe1, 0x22, 0xc9, 0xc0, 0x17, 0x20, 0xbb, 0xed, 0x6b, 0x53, 0xec, 0x1b, 0x37, 0xa8, 0x69, 0x96, 0xfa, 0x4f, 0xcf, 0x74, 0xbf, 0xd3, 0x0f, 0x72, 0x3d, }; static const wycheproof_ecdh_test ecdh_secp224r1_1313 = { .name = "ecdh_secp224r1_1313", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1313_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1313_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1313_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 37 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1314 for ECDH, tcId is 38 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1314_peerpubkey[] = { 0x5a, 0x2b, 0x3e, 0xc1, 0x05, 0x33, 0x90, 0x55, 0x0b, 0x58, 0x75, 0x57, 0x71, 0x2b, 0xcc, 0x0b, 0xf8, 0x56, 0x54, 0xd2, 0x30, 0x99, 0x42, 0x01, 0x54, 0x87, 0x7e, 0xc4, 0x13, 0x83, 0x22, 0xca, 0x02, 0xe5, 0xfc, 0xea, 0xe8, 0x70, 0x22, 0x7a, 0x43, 0xae, 0x89, 0x82, 0xb6, 0x72, 0x76, 0xf6, 0xd8, 0xf1, 0xdd, 0x7e, 0x12, 0x69, 0x24, 0x74, }; static const unsigned char ecdh_secp224r1_1314_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1314_sharedsecret[] = { 0x01, 0x28, 0x79, 0xa1, 0xff, 0x45, 0x6a, 0xcb, 0x87, 0x26, 0x45, 0x58, 0x36, 0xbc, 0x4f, 0x50, 0x4c, 0x1b, 0xd7, 0x99, 0xa4, 0xd9, 0x6f, 0x51, 0x4b, 0x37, 0x30, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_1314 = { .name = "ecdh_secp224r1_1314", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1314_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1314_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1314_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 38 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1315 for ECDH, tcId is 39 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1315_peerpubkey[] = { 0xfc, 0x22, 0x9b, 0xb1, 0xdf, 0x3e, 0x11, 0x35, 0x1e, 0x7e, 0x42, 0x24, 0xf6, 0x8f, 0x40, 0xc0, 0xd0, 0xe1, 0x94, 0x02, 0x3c, 0x6e, 0x08, 0x40, 0xcd, 0x45, 0xee, 0x5c, 0xa2, 0x42, 0x11, 0x2f, 0xba, 0xb5, 0x73, 0x6e, 0x82, 0x1d, 0xad, 0x26, 0x49, 0x3e, 0x40, 0x06, 0xe2, 0xc6, 0x12, 0x53, 0x42, 0xe7, 0xd9, 0xbc, 0x25, 0x27, 0x28, 0x56, }; static const unsigned char ecdh_secp224r1_1315_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1315_sharedsecret[] = { 0xfd, 0x6e, 0x5e, 0xdb, 0x54, 0xd7, 0xdd, 0x55, 0x4f, 0x87, 0x47, 0xec, 0x87, 0xb8, 0x03, 0x12, 0x58, 0xfc, 0x0b, 0xf1, 0xd2, 0x40, 0x4b, 0x64, 0xdb, 0x45, 0x40, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp224r1_1315 = { .name = "ecdh_secp224r1_1315", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1315_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1315_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1315_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 39 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1316 for ECDH, tcId is 40 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1316_peerpubkey[] = { 0x69, 0xa6, 0x5f, 0x62, 0xd4, 0x15, 0x92, 0x35, 0x80, 0x1a, 0x24, 0x6f, 0x2d, 0x13, 0xe4, 0x5c, 0x89, 0x83, 0xa3, 0x36, 0x2d, 0xa4, 0x80, 0xe7, 0xa5, 0x1d, 0x42, 0xa6, 0x5b, 0x70, 0x47, 0xab, 0xfc, 0x2a, 0x17, 0x9d, 0x94, 0x3b, 0xb1, 0x96, 0xfe, 0xde, 0x7a, 0xc3, 0xad, 0x8a, 0x4f, 0xca, 0xcd, 0x4c, 0x4c, 0xaa, 0x71, 0x7b, 0x6b, 0x26, }; static const unsigned char ecdh_secp224r1_1316_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1316_sharedsecret[] = { 0x16, 0x4e, 0x95, 0xbf, 0xa2, 0xa9, 0xc3, 0xa1, 0xf9, 0x59, 0xfe, 0xb8, 0x87, 0x20, 0xbb, 0x7a, 0x37, 0xf9, 0x88, 0xa0, 0x81, 0x24, 0x63, 0x9d, 0x8a, 0xdf, 0x86, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp224r1_1316 = { .name = "ecdh_secp224r1_1316", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1316_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1316_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1316_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 40 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1317 for ECDH, tcId is 41 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1317_peerpubkey[] = { 0xdc, 0x68, 0xeb, 0x94, 0x55, 0x28, 0xaf, 0x00, 0x51, 0xcb, 0xf2, 0x3e, 0x3e, 0xea, 0x43, 0xb2, 0xbc, 0x4c, 0x72, 0x89, 0x76, 0x23, 0x1e, 0x70, 0x31, 0xe6, 0x3a, 0x27, 0x44, 0xba, 0x65, 0xa4, 0xe1, 0xe3, 0x4e, 0x8e, 0xc5, 0x0c, 0xf7, 0xe8, 0xdf, 0x44, 0x58, 0x58, 0x2b, 0x16, 0x41, 0x3a, 0xb8, 0x3f, 0x56, 0x85, 0x08, 0xc5, 0x90, 0x37, }; static const unsigned char ecdh_secp224r1_1317_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1317_sharedsecret[] = { 0xb0, 0xff, 0xd5, 0x5f, 0xa1, 0x12, 0xaa, 0x48, 0xed, 0xdc, 0x96, 0x0d, 0xb4, 0xa1, 0x20, 0x0d, 0x40, 0x6e, 0x14, 0x4a, 0xac, 0x9e, 0x10, 0x9a, 0xd9, 0x89, 0x2b, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp224r1_1317 = { .name = "ecdh_secp224r1_1317", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1317_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1317_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1317_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 41 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1318 for ECDH, tcId is 42 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1318_peerpubkey[] = { 0x81, 0xc8, 0x93, 0x69, 0xd7, 0xbe, 0x25, 0x29, 0x20, 0xe0, 0x8e, 0x2d, 0x6c, 0x68, 0x41, 0xb8, 0x87, 0xef, 0xb4, 0xfc, 0x74, 0x7d, 0xb3, 0x1d, 0xd1, 0x03, 0x0b, 0x19, 0x19, 0xbf, 0x8c, 0xcb, 0x62, 0x9b, 0x58, 0xfe, 0xa6, 0x23, 0x4e, 0x39, 0x81, 0x20, 0x83, 0xfb, 0x08, 0x33, 0xa0, 0xc9, 0x37, 0xe3, 0x48, 0xed, 0xa2, 0x2e, 0xa0, 0xc0, }; static const unsigned char ecdh_secp224r1_1318_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1318_sharedsecret[] = { 0xd6, 0xab, 0x45, 0x67, 0xef, 0xf2, 0x12, 0x77, 0x28, 0x4b, 0xe0, 0x82, 0xd9, 0xe0, 0x9e, 0xb0, 0x8b, 0xb8, 0x06, 0x85, 0xf4, 0x92, 0x9d, 0xc3, 0xdc, 0xa4, 0xb3, 0x33, }; static const wycheproof_ecdh_test ecdh_secp224r1_1318 = { .name = "ecdh_secp224r1_1318", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1318_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1318_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1318_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 42 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1319 for ECDH, tcId is 43 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1319_peerpubkey[] = { 0x51, 0xd8, 0x30, 0xf7, 0x92, 0x79, 0x54, 0x09, 0xf1, 0xee, 0x97, 0x2d, 0x3b, 0x94, 0x28, 0x9f, 0x59, 0x20, 0x6f, 0xe0, 0x9e, 0x12, 0x16, 0x69, 0x20, 0x73, 0x9a, 0x73, 0xd2, 0xf1, 0x83, 0x1b, 0x26, 0x67, 0x79, 0x01, 0xbf, 0xaf, 0x83, 0x23, 0xf8, 0x2b, 0x81, 0xe1, 0x01, 0x2d, 0x9d, 0x3f, 0x1c, 0x92, 0x96, 0xc5, 0x9c, 0x97, 0x97, 0x0f, }; static const unsigned char ecdh_secp224r1_1319_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1319_sharedsecret[] = { 0xb4, 0x3d, 0xe1, 0x29, 0x12, 0xb4, 0x0c, 0xbd, 0xd5, 0x6e, 0x30, 0xfd, 0xfe, 0x9a, 0x2c, 0x24, 0xfb, 0x72, 0x68, 0x71, 0x68, 0xc9, 0xcf, 0xe6, 0xb7, 0x47, 0x69, 0x66, }; static const wycheproof_ecdh_test ecdh_secp224r1_1319 = { .name = "ecdh_secp224r1_1319", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1319_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1319_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1319_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 43 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1320 for ECDH, tcId is 44 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1320_peerpubkey[] = { 0xab, 0x63, 0xce, 0x55, 0x14, 0x58, 0x42, 0x14, 0x9f, 0x99, 0x02, 0x3f, 0x37, 0xa0, 0xa8, 0x9b, 0x9f, 0xc4, 0xae, 0x6a, 0x87, 0x8f, 0xda, 0xe8, 0xca, 0xf3, 0x1d, 0x17, 0xff, 0xd0, 0xd5, 0x58, 0x30, 0xee, 0xd4, 0x6f, 0x82, 0x55, 0xf9, 0x4b, 0x6d, 0xcf, 0x98, 0xa2, 0x2f, 0x1f, 0xf2, 0x6d, 0xab, 0xf7, 0x73, 0xd5, 0x56, 0x78, 0x88, 0x81, }; static const unsigned char ecdh_secp224r1_1320_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1320_sharedsecret[] = { 0x58, 0x8e, 0xe0, 0xaf, 0x3b, 0xc6, 0x01, 0x18, 0xa7, 0x15, 0x32, 0x5c, 0x6d, 0x56, 0xc8, 0x50, 0xf7, 0x30, 0x67, 0xdc, 0xb3, 0x7b, 0x75, 0x96, 0xd0, 0xcf, 0xda, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1320 = { .name = "ecdh_secp224r1_1320", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1320_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1320_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1320_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 44 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1321 for ECDH, tcId is 45 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1321_peerpubkey[] = { 0x1d, 0x64, 0x53, 0x5d, 0x54, 0xbf, 0xcc, 0xcb, 0x38, 0x16, 0x5a, 0xcb, 0xfa, 0xc0, 0x1a, 0xe3, 0x3d, 0xb2, 0x0e, 0x80, 0x2c, 0x56, 0x87, 0x34, 0x3c, 0xb2, 0x1b, 0x7e, 0xb5, 0x9d, 0x86, 0xf1, 0x89, 0x2a, 0x97, 0x47, 0x41, 0x92, 0x56, 0x24, 0x47, 0x7e, 0xef, 0x21, 0xf4, 0xe7, 0x2f, 0xa0, 0x4e, 0xe6, 0xce, 0x35, 0xdf, 0xff, 0xe5, 0xf2, }; static const unsigned char ecdh_secp224r1_1321_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1321_sharedsecret[] = { 0x72, 0x19, 0xef, 0x73, 0xac, 0x9e, 0x47, 0xac, 0x2e, 0x03, 0xde, 0xad, 0x23, 0xfa, 0x83, 0x82, 0xae, 0x89, 0x8e, 0x24, 0x15, 0x01, 0x7c, 0xde, 0xb4, 0x73, 0x9f, 0x0f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1321 = { .name = "ecdh_secp224r1_1321", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1321_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1321_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1321_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 45 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1322 for ECDH, tcId is 46 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1322_peerpubkey[] = { 0xd9, 0xd7, 0x84, 0x36, 0xa3, 0xf9, 0xc1, 0xfa, 0x20, 0xe8, 0xc2, 0x31, 0x8e, 0x61, 0xe6, 0x2b, 0x94, 0x62, 0x3e, 0x23, 0xa0, 0xab, 0x74, 0x6c, 0x5a, 0xc0, 0xcb, 0xc3, 0x82, 0x62, 0xbd, 0x66, 0xc1, 0x75, 0x15, 0xd3, 0x04, 0x89, 0x44, 0xda, 0xe4, 0x3b, 0x2b, 0xd6, 0xdd, 0x9d, 0x7c, 0x7a, 0x0f, 0x70, 0x42, 0xde, 0x2d, 0x10, 0x01, 0xc6, }; static const unsigned char ecdh_secp224r1_1322_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1322_sharedsecret[] = { 0x26, 0x7b, 0x06, 0x9a, 0xac, 0x5d, 0x76, 0x8a, 0x72, 0x0a, 0xcc, 0x62, 0xc9, 0x2f, 0x20, 0xb7, 0x86, 0xfc, 0x48, 0xc7, 0xda, 0x42, 0xf1, 0xf5, 0x67, 0x74, 0x24, 0xee, }; static const wycheproof_ecdh_test ecdh_secp224r1_1322 = { .name = "ecdh_secp224r1_1322", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1322_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1322_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1322_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 46 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1323 for ECDH, tcId is 47 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1323_peerpubkey[] = { 0x65, 0xeb, 0x37, 0x50, 0xc6, 0x40, 0x13, 0x39, 0xca, 0xa6, 0x9e, 0xbe, 0x6d, 0xec, 0x86, 0xdf, 0xc4, 0xd7, 0x9b, 0xf6, 0x57, 0xd6, 0x8b, 0xbd, 0xd0, 0x82, 0xc5, 0xa0, 0x3e, 0xb8, 0x1e, 0x85, 0x93, 0x13, 0x52, 0xff, 0x33, 0x8c, 0xcb, 0xc3, 0xa1, 0xd3, 0x32, 0xe2, 0xd8, 0xbc, 0x84, 0x34, 0x2d, 0x51, 0x6d, 0xa0, 0x6b, 0xef, 0x22, 0x0f, }; static const unsigned char ecdh_secp224r1_1323_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1323_sharedsecret[] = { 0xbb, 0xdd, 0x4a, 0xc5, 0x89, 0x0b, 0x9c, 0x04, 0x12, 0xe4, 0xef, 0x31, 0x35, 0xf6, 0x66, 0xe5, 0xb3, 0xdd, 0xb6, 0x58, 0xec, 0x83, 0x76, 0x91, 0xe8, 0x12, 0x9b, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp224r1_1323 = { .name = "ecdh_secp224r1_1323", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1323_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1323_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1323_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 47 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1324 for ECDH, tcId is 48 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1324_peerpubkey[] = { 0xe9, 0x2d, 0x3b, 0xe1, 0x61, 0x45, 0x55, 0xae, 0x17, 0xa9, 0x06, 0x47, 0x97, 0x9f, 0xbb, 0x37, 0x46, 0x8c, 0x55, 0xa1, 0xff, 0xf9, 0xe1, 0x5f, 0x37, 0x6d, 0x49, 0x99, 0x4e, 0x47, 0x0f, 0x51, 0x5b, 0x7b, 0x3f, 0xe5, 0x0c, 0xb5, 0x5d, 0xef, 0x16, 0x14, 0x2d, 0xf5, 0x94, 0xc3, 0xe4, 0x6d, 0x9d, 0x13, 0x54, 0x73, 0x07, 0x78, 0xf9, 0xe8, }; static const unsigned char ecdh_secp224r1_1324_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1324_sharedsecret[] = { 0xf7, 0x93, 0xff, 0x0d, 0x14, 0xbd, 0x76, 0x90, 0x84, 0x0c, 0x73, 0x31, 0x62, 0xb5, 0x89, 0xcd, 0x34, 0x13, 0xd8, 0xc4, 0x1f, 0x44, 0x88, 0xb4, 0x27, 0xda, 0x49, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1324 = { .name = "ecdh_secp224r1_1324", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1324_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1324_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1324_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 48 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1325 for ECDH, tcId is 49 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1325_peerpubkey[] = { 0x3c, 0x92, 0x71, 0x0c, 0x9a, 0x7f, 0x6f, 0x98, 0xbb, 0xec, 0x9d, 0x2a, 0x4f, 0xa6, 0x17, 0xcc, 0x70, 0xe9, 0x6b, 0xc9, 0x6e, 0xcd, 0x45, 0x97, 0xe3, 0x29, 0x14, 0x3f, 0x47, 0x50, 0xa0, 0x27, 0xc6, 0x97, 0x24, 0x59, 0xc0, 0x91, 0xab, 0x02, 0xc0, 0xe2, 0xa3, 0x08, 0x2f, 0xcc, 0xec, 0x42, 0x9a, 0x38, 0xd3, 0x59, 0x6e, 0x7a, 0xff, 0x2b, }; static const unsigned char ecdh_secp224r1_1325_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1325_sharedsecret[] = { 0x56, 0xc7, 0x03, 0xd4, 0x71, 0x62, 0x39, 0xc9, 0x54, 0x10, 0x9b, 0x9b, 0x84, 0x1d, 0xb7, 0x5b, 0x04, 0xa7, 0x90, 0xf1, 0xf7, 0x2a, 0xa9, 0x66, 0xae, 0xce, 0x34, 0x94, }; static const wycheproof_ecdh_test ecdh_secp224r1_1325 = { .name = "ecdh_secp224r1_1325", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1325_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1325_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1325_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 49 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1326 for ECDH, tcId is 50 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1326_peerpubkey[] = { 0x56, 0x8d, 0xfb, 0xfa, 0x42, 0xef, 0xc9, 0x4c, 0xe2, 0x07, 0x32, 0x2e, 0x63, 0x7b, 0x4c, 0x94, 0xf3, 0x7a, 0x56, 0x68, 0xad, 0x23, 0x0e, 0x98, 0x7a, 0x91, 0xd0, 0x48, 0xdc, 0xad, 0xd2, 0x44, 0xfc, 0x05, 0x9c, 0xff, 0xab, 0x5f, 0xa8, 0x82, 0x0a, 0x96, 0x93, 0x53, 0x62, 0x0e, 0x70, 0x8e, 0x85, 0xbd, 0x5e, 0xec, 0x8a, 0x0c, 0x68, 0xec, }; static const unsigned char ecdh_secp224r1_1326_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1326_sharedsecret[] = { 0x78, 0x23, 0xfe, 0x7e, 0xb6, 0x42, 0xd5, 0x09, 0x84, 0xfb, 0x32, 0xf9, 0x11, 0xef, 0x28, 0x94, 0x19, 0xd8, 0x53, 0x30, 0xc3, 0x39, 0x84, 0x23, 0xd0, 0xed, 0xa0, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1326 = { .name = "ecdh_secp224r1_1326", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1326_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1326_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1326_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 50 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1327 for ECDH, tcId is 51 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1327_peerpubkey[] = { 0xec, 0x10, 0x83, 0x7e, 0x49, 0x5b, 0x64, 0x49, 0x04, 0xdb, 0xa5, 0x8d, 0x8d, 0xd8, 0x21, 0x33, 0xc9, 0x05, 0xa2, 0x85, 0xae, 0x7c, 0x2a, 0x06, 0xd5, 0xcc, 0xaf, 0x6b, 0xf0, 0xfb, 0xf0, 0x0d, 0x13, 0xe2, 0x1a, 0x39, 0x9d, 0xc9, 0x5a, 0xe5, 0x52, 0x4a, 0x1a, 0x37, 0x04, 0x41, 0x93, 0xe9, 0x4e, 0x33, 0x00, 0x25, 0x9b, 0x70, 0xe0, 0x58, }; static const unsigned char ecdh_secp224r1_1327_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1327_sharedsecret[] = { 0xf7, 0x01, 0x4d, 0x38, 0xf4, 0x60, 0x83, 0x6a, 0x51, 0x07, 0x5c, 0xce, 0x96, 0x67, 0xb5, 0x6b, 0x88, 0x51, 0xba, 0x19, 0x01, 0x1c, 0x8b, 0x02, 0x74, 0xb7, 0x4a, 0x4b, }; static const wycheproof_ecdh_test ecdh_secp224r1_1327 = { .name = "ecdh_secp224r1_1327", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1327_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1327_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1327_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 51 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1328 for ECDH, tcId is 52 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1328_peerpubkey[] = { 0xbe, 0xe2, 0xf9, 0x35, 0x2f, 0x42, 0xce, 0xeb, 0x3b, 0xf3, 0x10, 0x9e, 0x90, 0xe6, 0x57, 0x8d, 0x0b, 0xd4, 0x88, 0x84, 0x58, 0xdf, 0x7d, 0x17, 0x9d, 0x74, 0x69, 0x77, 0xe5, 0x0e, 0x53, 0x50, 0x3d, 0xee, 0x83, 0xec, 0xa1, 0x82, 0x4a, 0x29, 0x05, 0x66, 0x58, 0x8f, 0xa3, 0x59, 0x16, 0x45, 0xb1, 0xa2, 0xd5, 0x68, 0x61, 0xbd, 0xa7, 0x60, }; static const unsigned char ecdh_secp224r1_1328_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1328_sharedsecret[] = { 0x77, 0x7f, 0x99, 0xf2, 0xbd, 0xaa, 0x72, 0xa1, 0x18, 0x53, 0x88, 0x46, 0x5d, 0xdd, 0xa1, 0xd0, 0x59, 0x87, 0x2a, 0xd0, 0x43, 0xc7, 0xcb, 0x85, 0xb9, 0x4e, 0x28, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp224r1_1328 = { .name = "ecdh_secp224r1_1328", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1328_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1328_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1328_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 52 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1329 for ECDH, tcId is 53 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1329_peerpubkey[] = { 0x54, 0x6f, 0xac, 0xbc, 0xaa, 0x8b, 0x55, 0x1c, 0x51, 0x71, 0x5a, 0x9a, 0xdd, 0x5e, 0xdc, 0x3c, 0x8a, 0x66, 0xdc, 0xc4, 0x7a, 0x62, 0x23, 0xf6, 0x05, 0x61, 0x4c, 0xf7, 0xaf, 0x6d, 0x92, 0xf5, 0xbd, 0xeb, 0xea, 0x73, 0x86, 0x58, 0xa4, 0x2c, 0x62, 0x31, 0xe5, 0x3c, 0x08, 0x23, 0x7c, 0xcf, 0x52, 0xf7, 0x93, 0x99, 0x57, 0x9b, 0x2d, 0xcc, }; static const unsigned char ecdh_secp224r1_1329_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1329_sharedsecret[] = { 0xa1, 0xdb, 0x17, 0x8b, 0x71, 0x6e, 0x51, 0xe0, 0xfa, 0x46, 0xc1, 0xd7, 0x4a, 0x26, 0x03, 0x00, 0x53, 0x26, 0xbc, 0xa7, 0xe8, 0x11, 0x70, 0xd4, 0xb3, 0x3a, 0x3d, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp224r1_1329 = { .name = "ecdh_secp224r1_1329", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1329_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1329_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1329_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 53 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1330 for ECDH, tcId is 54 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1330_peerpubkey[] = { 0x23, 0xb1, 0x81, 0x1f, 0xee, 0x89, 0x1a, 0xdb, 0x33, 0xc8, 0xbf, 0xee, 0x28, 0x99, 0x64, 0xe9, 0x2a, 0x9d, 0x33, 0x58, 0xda, 0xf9, 0x75, 0xd0, 0xef, 0xb7, 0x3e, 0x22, 0x9a, 0x33, 0x32, 0x66, 0x8b, 0x7d, 0x6d, 0xa2, 0x90, 0xa2, 0xed, 0xc9, 0x41, 0xe8, 0xbd, 0x6f, 0x2e, 0x33, 0x74, 0x5f, 0xc6, 0x06, 0x75, 0x6e, 0xdd, 0xc0, 0x13, 0xbb, }; static const unsigned char ecdh_secp224r1_1330_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_1330_sharedsecret[] = { 0xf4, 0x55, 0xc8, 0x27, 0x34, 0x16, 0x19, 0x95, 0x05, 0x01, 0x98, 0x61, 0x26, 0x6d, 0xdb, 0x9b, 0xcd, 0xe7, 0xbe, 0xe3, 0xc3, 0xf1, 0x5a, 0x98, 0xee, 0x54, 0x60, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp224r1_1330 = { .name = "ecdh_secp224r1_1330", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1330_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1330_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1330_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 54 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1331 for ECDH, tcId is 55 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1331_peerpubkey[] = { 0x58, 0xf5, 0x3d, 0x67, 0x33, 0x24, 0x15, 0xfe, 0x5b, 0x4b, 0x81, 0x99, 0x9f, 0x83, 0x32, 0xfb, 0x6d, 0xcd, 0xb9, 0x65, 0xd9, 0x6d, 0xbc, 0xba, 0xb0, 0xfa, 0xc3, 0x75, 0xf2, 0x9e, 0xfe, 0xf7, 0xab, 0x4d, 0x94, 0xbb, 0x2d, 0x25, 0xd2, 0x52, 0x05, 0xea, 0xe2, 0x9f, 0xe8, 0xd9, 0xa8, 0x5b, 0x81, 0x11, 0x14, 0xa5, 0x0f, 0x6c, 0x68, 0x59, }; static const unsigned char ecdh_secp224r1_1331_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1331_sharedsecret[] = { 0xd3, 0xaf, 0x18, 0x57, 0xac, 0xa1, 0x68, 0x95, 0x14, 0xfc, 0xfe, 0xe8, 0xd8, 0xc4, 0x0b, 0x86, 0x37, 0xd4, 0x04, 0x52, 0xae, 0x35, 0xc4, 0x04, 0xf9, 0xe6, 0x74, 0x94, }; static const wycheproof_ecdh_test ecdh_secp224r1_1331 = { .name = "ecdh_secp224r1_1331", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1331_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1331_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1331_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 55 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1332 for ECDH, tcId is 56 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1332_peerpubkey[] = { 0xf2, 0xd6, 0xe5, 0x8f, 0xcd, 0x3e, 0xd3, 0xf6, 0x56, 0xa9, 0xbc, 0x68, 0x7f, 0xe4, 0xc7, 0x89, 0xba, 0x96, 0x14, 0xd0, 0x35, 0x99, 0x67, 0xbc, 0x04, 0x68, 0xea, 0xbf, 0xa1, 0x65, 0x8a, 0x14, 0xef, 0x06, 0x33, 0xf2, 0x48, 0x5e, 0x29, 0x14, 0x1e, 0x2c, 0x4a, 0x13, 0xbd, 0x32, 0x8e, 0xc9, 0xbf, 0x6a, 0xf4, 0xc7, 0xa7, 0x74, 0x13, 0x1b, }; static const unsigned char ecdh_secp224r1_1332_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1332_sharedsecret[] = { 0x93, 0x3c, 0x38, 0x5d, 0x5f, 0xad, 0xb5, 0x7d, 0xe5, 0x3e, 0x4a, 0x5d, 0x38, 0x51, 0x18, 0xfc, 0xe8, 0x30, 0x43, 0x07, 0x03, 0xc3, 0xf5, 0x85, 0xa5, 0xd4, 0xd0, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp224r1_1332 = { .name = "ecdh_secp224r1_1332", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1332_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1332_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1332_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 56 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1333 for ECDH, tcId is 57 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1333_peerpubkey[] = { 0x02, 0xca, 0x5d, 0x1b, 0x76, 0x38, 0xb7, 0xb8, 0x8a, 0xd0, 0x21, 0x76, 0xbd, 0x10, 0xff, 0x1c, 0xfe, 0x88, 0x12, 0xa6, 0x2f, 0x97, 0x69, 0xa6, 0xd6, 0x2e, 0x0c, 0x6c, 0x78, 0x7b, 0x3e, 0x3b, 0x2a, 0x06, 0x39, 0x40, 0x91, 0x1b, 0xf9, 0x87, 0xfc, 0x38, 0xde, 0xeb, 0xf5, 0x42, 0x40, 0x0b, 0x8b, 0xbd, 0x9d, 0xfe, 0xb7, 0xd9, 0x0a, 0x8a, }; static const unsigned char ecdh_secp224r1_1333_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1333_sharedsecret[] = { 0x75, 0xae, 0xa7, 0x9d, 0x99, 0xe5, 0xc7, 0xed, 0xaa, 0xb0, 0x28, 0x44, 0x43, 0xb5, 0x48, 0x84, 0x33, 0x71, 0xd1, 0xd9, 0xb5, 0x5f, 0x2d, 0x73, 0xa1, 0xa9, 0x09, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1333 = { .name = "ecdh_secp224r1_1333", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1333_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1333_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1333_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 57 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1334 for ECDH, tcId is 58 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1334_peerpubkey[] = { 0xa3, 0x94, 0xd8, 0xbf, 0x9b, 0x47, 0x9e, 0xc3, 0xc7, 0xac, 0x3f, 0xc6, 0xa6, 0x31, 0xd0, 0x1d, 0x57, 0xd3, 0x38, 0xb9, 0xfb, 0x5a, 0x0e, 0xd6, 0xe5, 0x13, 0x0e, 0x05, 0x0c, 0xfc, 0x60, 0x0c, 0xfb, 0x08, 0xe6, 0x77, 0x27, 0xac, 0x5a, 0x33, 0x34, 0x5e, 0xc1, 0xd4, 0x8d, 0x4a, 0x9a, 0x18, 0x51, 0x6c, 0x22, 0x03, 0xac, 0xbd, 0x26, 0x67, }; static const unsigned char ecdh_secp224r1_1334_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1334_sharedsecret[] = { 0x8c, 0x1d, 0x08, 0x50, 0x69, 0x1c, 0xda, 0x75, 0x23, 0xff, 0xcc, 0xf1, 0xcb, 0xa4, 0x4b, 0x4d, 0x47, 0x21, 0x93, 0xe6, 0xa3, 0xbb, 0x07, 0x27, 0xe4, 0x90, 0xa8, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp224r1_1334 = { .name = "ecdh_secp224r1_1334", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1334_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1334_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1334_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 58 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1335 for ECDH, tcId is 59 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1335_peerpubkey[] = { 0x64, 0x2e, 0x26, 0x42, 0x1e, 0x96, 0xfa, 0x88, 0xf9, 0x56, 0xd0, 0x98, 0xac, 0x26, 0xf0, 0x2f, 0x1d, 0x6f, 0xaa, 0x80, 0xe4, 0x60, 0xe7, 0x01, 0xa3, 0x78, 0x9a, 0x66, 0xc3, 0x8d, 0xd9, 0x5c, 0x6b, 0x33, 0xde, 0x87, 0x68, 0xc8, 0x5c, 0xbe, 0x68, 0x79, 0xd0, 0xd7, 0x7e, 0x29, 0xfe, 0x5a, 0x18, 0xb2, 0x6a, 0x35, 0xcb, 0x60, 0xc0, 0xb6, }; static const unsigned char ecdh_secp224r1_1335_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1335_sharedsecret[] = { 0x50, 0xb9, 0xed, 0x4d, 0x99, 0xe2, 0xf2, 0x4e, 0x00, 0x96, 0xea, 0xed, 0xed, 0x0b, 0x55, 0x2c, 0xf8, 0xde, 0xff, 0x5c, 0xa8, 0xf9, 0x76, 0x96, 0x4a, 0xe4, 0x7e, 0x92, }; static const wycheproof_ecdh_test ecdh_secp224r1_1335 = { .name = "ecdh_secp224r1_1335", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1335_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1335_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1335_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 59 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1336 for ECDH, tcId is 60 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1336_peerpubkey[] = { 0xf9, 0x74, 0xd1, 0xcb, 0xbf, 0x41, 0x71, 0xd4, 0x77, 0x3c, 0x3e, 0x84, 0xea, 0xb8, 0x0b, 0xc3, 0xc6, 0xc2, 0x85, 0x8d, 0xad, 0xcf, 0xbd, 0x11, 0xd6, 0x43, 0x16, 0x90, 0x5d, 0xf3, 0x6f, 0xbe, 0x34, 0x5f, 0x28, 0xa3, 0xef, 0x66, 0x31, 0x25, 0x64, 0x94, 0x74, 0xc6, 0xfc, 0x1e, 0xbe, 0x17, 0x5c, 0x38, 0x65, 0xc4, 0x46, 0x9e, 0x19, 0x2b, }; static const unsigned char ecdh_secp224r1_1336_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1336_sharedsecret[] = { 0x56, 0x16, 0xee, 0x3e, 0x63, 0xdf, 0xb4, 0x24, 0xd3, 0x29, 0xc2, 0xb9, 0xb5, 0x0c, 0xf3, 0x78, 0xbb, 0x77, 0xa8, 0xbd, 0x7e, 0x31, 0x4a, 0x24, 0x1b, 0x59, 0x42, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1336 = { .name = "ecdh_secp224r1_1336", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1336_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1336_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1336_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 60 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1337 for ECDH, tcId is 61 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1337_peerpubkey[] = { 0x55, 0x56, 0x1d, 0xb3, 0xcc, 0x8f, 0xb0, 0x8a, 0x71, 0x65, 0x4e, 0xe9, 0x57, 0x3a, 0x1a, 0x36, 0xa4, 0x4f, 0x09, 0x13, 0xca, 0x8a, 0xd7, 0x58, 0x2c, 0xfa, 0xfb, 0xfc, 0x62, 0xb3, 0x1e, 0x5e, 0x78, 0xbe, 0x98, 0xad, 0x8c, 0x8c, 0xea, 0xb4, 0xbb, 0x82, 0xe8, 0xef, 0xc0, 0xac, 0xb2, 0x9f, 0x1a, 0x8d, 0x03, 0x1e, 0xd0, 0x44, 0x04, 0x6c, }; static const unsigned char ecdh_secp224r1_1337_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1337_sharedsecret[] = { 0xb1, 0xda, 0x14, 0x50, 0x7b, 0x5c, 0x05, 0x15, 0x9e, 0x15, 0xf7, 0x7d, 0x08, 0x5c, 0x01, 0x7a, 0xcd, 0x89, 0xf1, 0x58, 0x01, 0x13, 0x57, 0xa9, 0x78, 0x02, 0x85, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp224r1_1337 = { .name = "ecdh_secp224r1_1337", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1337_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1337_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1337_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 61 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1338 for ECDH, tcId is 62 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1338_peerpubkey[] = { 0xa3, 0x63, 0xbc, 0xb9, 0xbd, 0xdd, 0x5d, 0xe8, 0x4a, 0x2f, 0x44, 0x33, 0xc0, 0x39, 0xf7, 0xbe, 0x3f, 0xce, 0x60, 0x57, 0xb0, 0xd3, 0xb4, 0xa3, 0x45, 0x9e, 0x54, 0xa2, 0xba, 0x32, 0x30, 0x28, 0x71, 0xe7, 0xba, 0x5c, 0x3d, 0xd7, 0xec, 0x9b, 0x76, 0x94, 0x6c, 0xdc, 0x70, 0x2c, 0x15, 0xa8, 0xd9, 0xec, 0x0f, 0x4a, 0x04, 0xe7, 0xaf, 0xb6, }; static const unsigned char ecdh_secp224r1_1338_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1338_sharedsecret[] = { 0x2f, 0x1b, 0xd4, 0xa5, 0xa4, 0x97, 0x48, 0x1c, 0x4a, 0x21, 0x22, 0x23, 0x20, 0xff, 0x61, 0xf3, 0x26, 0x74, 0xa9, 0x5d, 0x54, 0x0c, 0xc3, 0xf4, 0xf3, 0xca, 0x58, 0x49, }; static const wycheproof_ecdh_test ecdh_secp224r1_1338 = { .name = "ecdh_secp224r1_1338", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1338_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1338_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1338_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 62 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1339 for ECDH, tcId is 63 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1339_peerpubkey[] = { 0x3a, 0x65, 0x6d, 0x0e, 0x25, 0xbc, 0xe2, 0x72, 0x82, 0xf2, 0x56, 0xb1, 0x21, 0xfb, 0xfc, 0xde, 0x0a, 0x18, 0x0c, 0xcd, 0x7a, 0xa6, 0x01, 0xa5, 0x92, 0x9f, 0xc7, 0x40, 0x02, 0xf8, 0x9e, 0x45, 0xb4, 0xdc, 0xb8, 0x73, 0xc5, 0x6d, 0xa5, 0xd1, 0xa2, 0x8f, 0xbc, 0xa3, 0x3a, 0x12, 0x61, 0x77, 0xb2, 0x17, 0xa0, 0x98, 0xe0, 0x95, 0x2e, 0x62, }; static const unsigned char ecdh_secp224r1_1339_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1339_sharedsecret[] = { 0x8c, 0x80, 0x7d, 0x65, 0xba, 0x7b, 0x9f, 0xd3, 0x06, 0x1d, 0xff, 0xef, 0x26, 0xc0, 0x25, 0xa8, 0x95, 0x24, 0xa2, 0x6b, 0x94, 0x2e, 0xdd, 0x3a, 0x98, 0x4f, 0xe5, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp224r1_1339 = { .name = "ecdh_secp224r1_1339", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1339_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1339_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1339_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 63 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1340 for ECDH, tcId is 64 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1340_peerpubkey[] = { 0xbf, 0x5f, 0x49, 0xba, 0x00, 0x86, 0xee, 0xc2, 0x89, 0xb0, 0x68, 0xb7, 0x83, 0x43, 0x8e, 0xf2, 0x4b, 0x6f, 0x28, 0x13, 0x0b, 0xb1, 0xed, 0x96, 0x9e, 0xf8, 0xb0, 0x41, 0xf1, 0x1b, 0x0d, 0xe9, 0x5f, 0x15, 0xed, 0xcd, 0x83, 0x5f, 0x01, 0xba, 0xb1, 0xf5, 0xfa, 0xaa, 0x17, 0x49, 0xc2, 0xca, 0x4f, 0x16, 0xa7, 0xd9, 0x9d, 0x91, 0x6f, 0xf4, }; static const unsigned char ecdh_secp224r1_1340_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1340_sharedsecret[] = { 0x8f, 0xda, 0x76, 0xf4, 0xd1, 0x24, 0xe6, 0x72, 0x7f, 0x85, 0x5e, 0x5f, 0x49, 0x21, 0xcc, 0x05, 0xc4, 0x8e, 0x2a, 0x8e, 0xd0, 0xfe, 0xe7, 0xc7, 0x5d, 0x6a, 0x80, 0x47, }; static const wycheproof_ecdh_test ecdh_secp224r1_1340 = { .name = "ecdh_secp224r1_1340", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1340_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1340_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1340_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 64 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1341 for ECDH, tcId is 65 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1341_peerpubkey[] = { 0xa5, 0x72, 0x32, 0x56, 0x0d, 0x9d, 0x60, 0x46, 0x55, 0x18, 0x1f, 0x77, 0x58, 0x59, 0xb0, 0x72, 0x3d, 0x4e, 0x01, 0xa4, 0xc8, 0x67, 0x84, 0x4e, 0xb9, 0xd8, 0x1d, 0xab, 0xb5, 0xd1, 0x95, 0x07, 0xbb, 0xe9, 0xcd, 0xa3, 0x34, 0x6b, 0xad, 0x7c, 0x18, 0x4d, 0xaa, 0x43, 0x2e, 0x7f, 0x79, 0x4a, 0x5b, 0x9b, 0x8b, 0x8d, 0x4e, 0x55, 0xbe, 0x3a, }; static const unsigned char ecdh_secp224r1_1341_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_1341_sharedsecret[] = { 0xda, 0xf3, 0x5b, 0xb7, 0xbf, 0x3a, 0x05, 0x6b, 0xb6, 0x2b, 0xb0, 0x1b, 0xa0, 0x0f, 0x58, 0x1c, 0x10, 0x7f, 0x64, 0xde, 0x85, 0x84, 0x2b, 0x3a, 0x49, 0xbc, 0x2a, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp224r1_1341 = { .name = "ecdh_secp224r1_1341", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1341_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1341_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1341_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 65 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1342 for ECDH, tcId is 66 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1342_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1342_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp224r1_1342_sharedsecret[] = { 0xe7, 0x1f, 0x21, 0x57, 0xbf, 0xe3, 0x76, 0x97, 0xea, 0x51, 0x93, 0xd4, 0x73, 0x2d, 0xcc, 0x6e, 0x54, 0x12, 0xfa, 0x9d, 0x38, 0x38, 0x7e, 0xac, 0xd3, 0x91, 0xc1, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_1342 = { .name = "ecdh_secp224r1_1342", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1342_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1342_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1342_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 66 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1343 for ECDH, tcId is 67 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1343_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1343_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224r1_1343_sharedsecret[] = { 0xfa, 0x26, 0x64, 0x71, 0x7c, 0x7f, 0xa0, 0x16, 0x1e, 0xc2, 0xc6, 0x69, 0xb2, 0xc0, 0x98, 0x6c, 0xdc, 0x20, 0x45, 0x6a, 0x6e, 0x54, 0x06, 0x30, 0x2b, 0xb5, 0x3c, 0x77, }; static const wycheproof_ecdh_test ecdh_secp224r1_1343 = { .name = "ecdh_secp224r1_1343", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1343_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1343_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1343_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 67 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1344 for ECDH, tcId is 68 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1344_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1344_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1344_sharedsecret[] = { 0xaf, 0x6e, 0x5a, 0xd3, 0x44, 0x97, 0xba, 0xe0, 0x74, 0x5f, 0x53, 0xad, 0x78, 0xce, 0x8b, 0x28, 0x5d, 0x79, 0xf4, 0x00, 0xd5, 0xc6, 0xe6, 0xa0, 0x71, 0xf8, 0xe6, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp224r1_1344 = { .name = "ecdh_secp224r1_1344", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1344_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1344_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1344_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 68 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1345 for ECDH, tcId is 69 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1345_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1345_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224r1_1345_sharedsecret[] = { 0x12, 0xfd, 0x30, 0x2f, 0xf8, 0xc1, 0x3c, 0x55, 0xa9, 0xc1, 0x11, 0xf8, 0xbb, 0x6b, 0x0a, 0x13, 0xec, 0xf8, 0x82, 0x99, 0xc0, 0xae, 0x30, 0x32, 0xce, 0x2b, 0xca, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_1345 = { .name = "ecdh_secp224r1_1345", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1345_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1345_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1345_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 69 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1346 for ECDH, tcId is 70 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1346_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1346_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1346_sharedsecret[] = { 0x73, 0xf1, 0xa3, 0x95, 0xb8, 0x42, 0xf1, 0xa6, 0x75, 0x2a, 0xe4, 0x17, 0xe2, 0xc3, 0xdc, 0x90, 0xca, 0xfc, 0x44, 0x76, 0xd1, 0xd8, 0x61, 0xb7, 0xe6, 0x8a, 0xd0, 0x30, }; static const wycheproof_ecdh_test ecdh_secp224r1_1346 = { .name = "ecdh_secp224r1_1346", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1346_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1346_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1346_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 70 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1347 for ECDH, tcId is 71 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1347_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1347_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3d, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_1347_sharedsecret[] = { 0xb3, 0x29, 0xc2, 0x0d, 0xdb, 0x7c, 0x78, 0xee, 0x4e, 0x62, 0x2b, 0xb2, 0x3a, 0x98, 0x4c, 0x0d, 0x27, 0x3b, 0xa3, 0x4b, 0x62, 0x69, 0xf3, 0xd9, 0xe8, 0xf8, 0x9f, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp224r1_1347 = { .name = "ecdh_secp224r1_1347", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1347_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1347_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1347_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 71 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1348 for ECDH, tcId is 72 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1348_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1348_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xcd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_1348_sharedsecret[] = { 0x6f, 0x48, 0x34, 0x52, 0x09, 0xb2, 0x90, 0xff, 0xc5, 0xab, 0xbe, 0x75, 0x4a, 0x20, 0x14, 0x79, 0xe5, 0xd6, 0x67, 0xa2, 0x09, 0x46, 0x80, 0x80, 0xd0, 0x61, 0x97, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp224r1_1348 = { .name = "ecdh_secp224r1_1348", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1348_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1348_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1348_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 72 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1349 for ECDH, tcId is 73 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1349_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1349_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xd5, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_1349_sharedsecret[] = { 0x9f, 0x6e, 0x30, 0xc1, 0xc9, 0xda, 0xd4, 0x2a, 0x15, 0x3a, 0xac, 0xd4, 0xb4, 0x9a, 0x8e, 0x5c, 0x72, 0x1d, 0x08, 0x5c, 0xd0, 0x7b, 0x5d, 0x5a, 0xec, 0x24, 0x4f, 0xc1, }; static const wycheproof_ecdh_test ecdh_secp224r1_1349 = { .name = "ecdh_secp224r1_1349", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1349_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1349_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1349_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 73 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1350 for ECDH, tcId is 74 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1350_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1350_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x44, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_1350_sharedsecret[] = { 0x8c, 0xad, 0xfb, 0x19, 0xa8, 0x09, 0x49, 0xe6, 0x1b, 0xd5, 0xb8, 0x29, 0xad, 0x0e, 0x76, 0xd1, 0x8a, 0x5b, 0xb2, 0xee, 0xb9, 0xed, 0x7f, 0xe2, 0xb9, 0x01, 0xce, 0xcd, }; static const wycheproof_ecdh_test ecdh_secp224r1_1350 = { .name = "ecdh_secp224r1_1350", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1350_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1350_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1350_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 74 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1351 for ECDH, tcId is 75 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1351_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1351_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xb7, }; static const unsigned char ecdh_secp224r1_1351_sharedsecret[] = { 0x47, 0x5f, 0xd9, 0x6e, 0x0e, 0xb8, 0xcb, 0x8f, 0x10, 0x0a, 0x5d, 0x7f, 0xe0, 0x43, 0xa7, 0xa6, 0x85, 0x1d, 0x1d, 0x61, 0x1d, 0xa2, 0x64, 0x3a, 0x3c, 0x6a, 0xe7, 0x08, }; static const wycheproof_ecdh_test ecdh_secp224r1_1351 = { .name = "ecdh_secp224r1_1351", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1351_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1351_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1351_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 75 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1352 for ECDH, tcId is 76 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1352_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1352_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x37, }; static const unsigned char ecdh_secp224r1_1352_sharedsecret[] = { 0x41, 0xef, 0x93, 0x1d, 0x66, 0x9d, 0x1f, 0x57, 0xd8, 0xbb, 0x95, 0xa0, 0x1a, 0x92, 0x32, 0x1d, 0xa7, 0x4b, 0xe8, 0xc6, 0xcb, 0xc3, 0xbb, 0xe0, 0xb2, 0xe7, 0x3e, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp224r1_1352 = { .name = "ecdh_secp224r1_1352", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1352_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1352_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1352_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 76 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1353 for ECDH, tcId is 77 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1353_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1353_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const unsigned char ecdh_secp224r1_1353_sharedsecret[] = { 0xe7, 0x1f, 0x21, 0x57, 0xbf, 0xe3, 0x76, 0x97, 0xea, 0x51, 0x93, 0xd4, 0x73, 0x2d, 0xcc, 0x6e, 0x54, 0x12, 0xfa, 0x9d, 0x38, 0x38, 0x7e, 0xac, 0xd3, 0x91, 0xc1, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_1353 = { .name = "ecdh_secp224r1_1353", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1353_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1353_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1353_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 77 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1354 for ECDH, tcId is 78 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1354_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_1354_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const unsigned char ecdh_secp224r1_1354_sharedsecret[] = { 0x11, 0xff, 0x15, 0x12, 0x64, 0x11, 0x29, 0x9c, 0xbd, 0x49, 0xe2, 0xb7, 0x54, 0x2e, 0x69, 0xe9, 0x1e, 0xf1, 0x32, 0xe2, 0x55, 0x1a, 0x16, 0xec, 0xfe, 0xbb, 0x23, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp224r1_1354 = { .name = "ecdh_secp224r1_1354", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1354_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1354_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1354_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 78 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1355 for ECDH, tcId is 79 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1355_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1355_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1355 = { .name = "ecdh_secp224r1_1355", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1355_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1355_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 79 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1356 for ECDH, tcId is 80 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1356_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1356_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1356 = { .name = "ecdh_secp224r1_1356", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1356_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1356_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 80 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1357 for ECDH, tcId is 81 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1357_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1357_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1357 = { .name = "ecdh_secp224r1_1357", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1357_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1357_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 81 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1358 for ECDH, tcId is 82 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1358_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1358_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1358 = { .name = "ecdh_secp224r1_1358", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1358_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1358_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 82 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1359 for ECDH, tcId is 83 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1359_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1359_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1359 = { .name = "ecdh_secp224r1_1359", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1359_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1359_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 83 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1360 for ECDH, tcId is 84 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1360_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1360_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1360 = { .name = "ecdh_secp224r1_1360", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1360_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1360_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 84 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1361 for ECDH, tcId is 85 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1361_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1361_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1361 = { .name = "ecdh_secp224r1_1361", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1361_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1361_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 85 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1362 for ECDH, tcId is 86 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1362_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1362_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1362 = { .name = "ecdh_secp224r1_1362", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1362_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1362_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 86 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1363 for ECDH, tcId is 87 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1363_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1363_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1363 = { .name = "ecdh_secp224r1_1363", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1363_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1363_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 87 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1364 for ECDH, tcId is 88 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1364_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1364_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1364 = { .name = "ecdh_secp224r1_1364", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1364_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1364_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 88 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1365 for ECDH, tcId is 89 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1365_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1365_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1365 = { .name = "ecdh_secp224r1_1365", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1365_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1365_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 89 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1366 for ECDH, tcId is 90 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1366_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1366_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1366 = { .name = "ecdh_secp224r1_1366", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1366_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1366_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 90 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1367 for ECDH, tcId is 91 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1367_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1367_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1367 = { .name = "ecdh_secp224r1_1367", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1367_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1367_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 91 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1368 for ECDH, tcId is 92 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1368_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1368_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1368 = { .name = "ecdh_secp224r1_1368", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1368_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1368_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 92 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1369 for ECDH, tcId is 93 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1369_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1369_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1369 = { .name = "ecdh_secp224r1_1369", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1369_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1369_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 93 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1370 for ECDH, tcId is 94 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1370_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_1370_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_1370 = { .name = "ecdh_secp224r1_1370", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1370_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1370_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 94 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1371 for ECDH, tcId is 96 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1371_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5d, }; static const unsigned char ecdh_secp224r1_1371_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const wycheproof_ecdh_test ecdh_secp224r1_1371 = { .name = "ecdh_secp224r1_1371", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1371_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1371_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 96 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1372 for ECDH, tcId is 97 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1372_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_1372_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const wycheproof_ecdh_test ecdh_secp224r1_1372 = { .name = "ecdh_secp224r1_1372", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1372_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1372_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 97 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1373 for ECDH, tcId is 100 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1373_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1373_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1373_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1373 = { .name = "ecdh_secp224r1_1373", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1373_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1373_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1373_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 100 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1374 for ECDH, tcId is 101 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1374_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1374_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1374_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1374 = { .name = "ecdh_secp224r1_1374", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1374_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1374_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1374_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 6277101735386680763835789423207665314073163949517624387909, tcId is 101 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1375 for ECDH, tcId is 102 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1375_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1375_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1375_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1375 = { .name = "ecdh_secp224r1_1375", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1375_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1375_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1375_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 102 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1376 for ECDH, tcId is 103 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1376_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1376_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1376_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1376 = { .name = "ecdh_secp224r1_1376", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1376_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1376_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1376_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 103 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1377 for ECDH, tcId is 106 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1377_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1377_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1377_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1377 = { .name = "ecdh_secp224r1_1377", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1377_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1377_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1377_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 106 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1378 for ECDH, tcId is 108 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1378_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1378_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1378_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1378 = { .name = "ecdh_secp224r1_1378", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1378_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1378_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1378_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 108 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1379 for ECDH, tcId is 112 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1379_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_1379_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_1379_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_1379 = { .name = "ecdh_secp224r1_1379", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1379_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1379_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1379_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 112 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1380 for ECDH, tcId is 118 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1380_peerpubkey[] = { 0x73, 0xe8, 0x33, 0xae, 0xe7, 0x5c, 0x67, 0xa3, 0x4c, 0xc4, 0x97, 0xfd, 0x01, 0x27, 0x53, 0x72, 0xd0, 0x9e, 0x3e, 0x8f, 0x2f, 0xf0, 0x54, 0xc8, 0xc2, 0x9e, 0x40, 0x5e, 0xf3, 0xe3, 0x5d, 0x69, 0x91, 0x90, 0xa4, 0x48, 0x07, 0x9c, 0x05, 0x80, 0x22, 0x51, 0x2f, 0xa9, 0x97, 0x6e, 0x50, 0x4e, 0x29, 0x8b, 0xae, 0xe3, 0x40, 0xd5, 0x64, 0x8b, }; static const unsigned char ecdh_secp224r1_1380_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_1380 = { .name = "ecdh_secp224r1_1380", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1380_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1380_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224k1, tcId is 118 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1381 for ECDH, tcId is 119 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1381_peerpubkey[] = { 0x6c, 0xaa, 0x3d, 0x6d, 0x86, 0xf7, 0x92, 0xdf, 0x7b, 0x29, 0xe4, 0x1e, 0xb4, 0x20, 0x31, 0x50, 0xf6, 0x0f, 0x4f, 0xca, 0x10, 0xf5, 0x7d, 0x0b, 0x24, 0x54, 0xab, 0xfb, 0x20, 0x1f, 0x9f, 0x7e, 0x6d, 0xcb, 0xb9, 0x2b, 0xdc, 0xfb, 0x92, 0x40, 0xdc, 0x86, 0xbc, 0xae, 0xaf, 0x15, 0x7c, 0x77, 0xbc, 0xa2, 0x2b, 0x2e, 0xc8, 0x6e, 0xe8, 0xd6, }; static const unsigned char ecdh_secp224r1_1381_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_1381 = { .name = "ecdh_secp224r1_1381", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1381_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1381_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224r1, tcId is 119 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1382 for ECDH, tcId is 124 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1382_peerpubkey[] = { 0x7c, 0x59, 0x2e, 0xcb, 0x89, 0x08, 0x35, 0x5d, 0x1e, 0xbf, 0x8d, 0x59, 0xb3, 0x61, 0x92, 0x75, 0xdb, 0xe3, 0x66, 0x62, 0x09, 0xb7, 0x2c, 0xed, 0x6a, 0x3c, 0x88, 0x74, 0x04, 0x56, 0xce, 0x61, 0xd6, 0xa8, 0x4e, 0x05, 0x42, 0xd7, 0xcd, 0x10, 0xdd, 0x88, 0x04, 0xaf, 0xb8, 0xc7, 0x84, 0xd5, 0xdf, 0xfd, 0x94, 0x80, 0xd8, 0xcf, 0xdc, 0x95, }; static const unsigned char ecdh_secp224r1_1382_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_1382 = { .name = "ecdh_secp224r1_1382", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1382_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1382_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224t1, tcId is 124 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1383 for ECDH, tcId is 129 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1383_peerpubkey[] = { 0x0c, 0xa7, 0x53, 0xdb, 0x5d, 0xde, 0xca, 0x47, 0x42, 0x41, 0xf8, 0xd2, 0xda, 0xfc, 0x08, 0x44, 0x34, 0x3f, 0xd0, 0xe3, 0x7e, 0xde, 0xd2, 0xf0, 0x19, 0x2d, 0x51, 0xb2, }; static const unsigned char ecdh_secp224r1_1383_privkey[] = { 0xfc, 0x28, 0xa0, 0xca, 0x0f, 0x8e, 0x36, 0xb0, 0xd4, 0xf7, 0x14, 0x21, 0x84, 0x51, 0x35, 0xa2, 0x2a, 0xef, 0x54, 0x3b, 0x9f, 0xdd, 0xf8, 0xc7, 0x75, 0xb2, 0xd1, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp224r1_1383 = { .name = "ecdh_secp224r1_1383", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1383_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1383_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 129 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1384 for ECDH, tcId is 130 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1384_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1384_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1384_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1384 = { .name = "ecdh_secp224r1_1384", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1384_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1384_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1384_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of sequence, tcId is 130 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1385 for ECDH, tcId is 131 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1385_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1385_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1385_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1385 = { .name = "ecdh_secp224r1_1385", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1385_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1385_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1385_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of sequence, tcId is 131 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1386 for ECDH, tcId is 132 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1386_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1386_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1386_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1386 = { .name = "ecdh_secp224r1_1386", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1386_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1386_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1386_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of sequence contains leading 0, tcId is 132 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1387 for ECDH, tcId is 133 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1387_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1387_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1387_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1387 = { .name = "ecdh_secp224r1_1387", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1387_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1387_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1387_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of sequence contains leading 0, tcId is 133 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1388 for ECDH, tcId is 167 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1388_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1388_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1388_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1388 = { .name = "ecdh_secp224r1_1388", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1388_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1388_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1388_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to sequence, tcId is 167 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1389 for ECDH, tcId is 168 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1389_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1389_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1389_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1389 = { .name = "ecdh_secp224r1_1389", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1389_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1389_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1389_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to sequence, tcId is 168 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1390 for ECDH, tcId is 197 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1390_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1390_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1390_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1390 = { .name = "ecdh_secp224r1_1390", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1390_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1390_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1390_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing sequence with NULL, tcId is 197 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1391 for ECDH, tcId is 200 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1391_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1391_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1391_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1391 = { .name = "ecdh_secp224r1_1391", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1391_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1391_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1391_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of sequence, tcId is 200 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1392 for ECDH, tcId is 205 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1392_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1392_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1392_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1392 = { .name = "ecdh_secp224r1_1392", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1392_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1392_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1392_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of sequence, tcId is 205 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1393 for ECDH, tcId is 209 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1393_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1393_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1393_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1393 = { .name = "ecdh_secp224r1_1393", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1393_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1393_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1393_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "dropping value of sequence, tcId is 209 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1394 for ECDH, tcId is 227 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1394_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1394_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1394_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1394 = { .name = "ecdh_secp224r1_1394", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1394_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1394_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1394_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepend empty sequence, tcId is 227 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1395 for ECDH, tcId is 228 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1395_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1395_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1395_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1395 = { .name = "ecdh_secp224r1_1395", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1395_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1395_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1395_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "append empty sequence, tcId is 228 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1396 for ECDH, tcId is 229 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1396_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1396_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1396_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1396 = { .name = "ecdh_secp224r1_1396", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1396_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1396_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1396_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "append empty sequence, tcId is 229 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1397 for ECDH, tcId is 233 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1397_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1397_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1397_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1397 = { .name = "ecdh_secp224r1_1397", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1397_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1397_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1397_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "sequence of sequence, tcId is 233 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1398 for ECDH, tcId is 235 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1398_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1398_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1398_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1398 = { .name = "ecdh_secp224r1_1398", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1398_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1398_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1398_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 235 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1399 for ECDH, tcId is 236 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1399_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1399_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1399_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1399 = { .name = "ecdh_secp224r1_1399", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1399_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1399_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1399_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "repeating element in sequence, tcId is 236 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1400 for ECDH, tcId is 237 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1400_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1400_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1400_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1400 = { .name = "ecdh_secp224r1_1400", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1400_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1400_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1400_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "repeating element in sequence, tcId is 237 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1401 for ECDH, tcId is 238 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1401_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1401_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1401_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1401 = { .name = "ecdh_secp224r1_1401", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1401_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1401_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1401_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of oid, tcId is 238 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1402 for ECDH, tcId is 239 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1402_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1402_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1402_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1402 = { .name = "ecdh_secp224r1_1402", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1402_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1402_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1402_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of oid, tcId is 239 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1403 for ECDH, tcId is 240 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1403_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1403_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1403_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1403 = { .name = "ecdh_secp224r1_1403", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1403_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1403_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1403_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of oid contains leading 0, tcId is 240 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1404 for ECDH, tcId is 241 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1404_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1404_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1404_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1404 = { .name = "ecdh_secp224r1_1404", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1404_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1404_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1404_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of oid contains leading 0, tcId is 241 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1405 for ECDH, tcId is 260 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1405_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1405_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1405_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1405 = { .name = "ecdh_secp224r1_1405", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1405_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1405_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1405_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "removing oid, tcId is 260 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1406 for ECDH, tcId is 261 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1406_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1406_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1406_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1406 = { .name = "ecdh_secp224r1_1406", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1406_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1406_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1406_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "lonely oid tag, tcId is 261 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1407 for ECDH, tcId is 263 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1407_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1407_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1407_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1407 = { .name = "ecdh_secp224r1_1407", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1407_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1407_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1407_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending 0's to oid, tcId is 263 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1408 for ECDH, tcId is 264 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1408_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1408_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1408_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1408 = { .name = "ecdh_secp224r1_1408", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1408_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1408_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1408_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending 0's to oid, tcId is 264 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1409 for ECDH, tcId is 265 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1409_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1409_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1409_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1409 = { .name = "ecdh_secp224r1_1409", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1409_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1409_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1409_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to oid, tcId is 265 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1410 for ECDH, tcId is 266 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1410_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1410_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1410_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1410 = { .name = "ecdh_secp224r1_1410", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1410_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1410_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1410_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to oid, tcId is 266 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1411 for ECDH, tcId is 268 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1411_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1411_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1411_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1411 = { .name = "ecdh_secp224r1_1411", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1411_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1411_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1411_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to oid, tcId is 268 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1412 for ECDH, tcId is 269 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1412_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1412_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1412_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1412 = { .name = "ecdh_secp224r1_1412", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1412_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1412_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1412_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "appending null value to oid, tcId is 269 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1413 for ECDH, tcId is 270 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1413_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1413_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1413_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1413 = { .name = "ecdh_secp224r1_1413", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1413_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1413_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1413_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated length of oid, tcId is 270 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1414 for ECDH, tcId is 272 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1414_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1414_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1414_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1414 = { .name = "ecdh_secp224r1_1414", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1414_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1414_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1414_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing oid with NULL, tcId is 272 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1415 for ECDH, tcId is 273 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1415_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1415_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1415_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1415 = { .name = "ecdh_secp224r1_1415", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1415_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1415_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1415_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "Replacing oid with NULL, tcId is 273 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1416 for ECDH, tcId is 274 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1416_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1416_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1416_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1416 = { .name = "ecdh_secp224r1_1416", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1416_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1416_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1416_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 274 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1417 for ECDH, tcId is 276 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1417_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1417_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1417_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1417 = { .name = "ecdh_secp224r1_1417", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1417_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1417_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1417_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 276 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1418 for ECDH, tcId is 279 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1418_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1418_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1418_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1418 = { .name = "ecdh_secp224r1_1418", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1418_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1418_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1418_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 279 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1419 for ECDH, tcId is 281 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1419_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1419_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1419_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1419 = { .name = "ecdh_secp224r1_1419", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1419_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1419_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1419_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "changing tag value of oid, tcId is 281 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1420 for ECDH, tcId is 286 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1420_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1420_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1420_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1420 = { .name = "ecdh_secp224r1_1420", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1420_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1420_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1420_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "modify first byte of oid, tcId is 286 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1421 for ECDH, tcId is 287 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1421_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1421_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1421_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1421 = { .name = "ecdh_secp224r1_1421", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1421_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1421_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1421_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "modify first byte of oid, tcId is 287 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1422 for ECDH, tcId is 290 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1422_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1422_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1422_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1422 = { .name = "ecdh_secp224r1_1422", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1422_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1422_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1422_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 290 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1423 for ECDH, tcId is 291 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1423_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1423_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1423_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1423 = { .name = "ecdh_secp224r1_1423", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1423_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1423_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1423_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 291 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1424 for ECDH, tcId is 292 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1424_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1424_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1424_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1424 = { .name = "ecdh_secp224r1_1424", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1424_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1424_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1424_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 292 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1425 for ECDH, tcId is 293 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1425_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1425_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1425_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1425 = { .name = "ecdh_secp224r1_1425", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1425_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1425_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1425_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "truncated oid, tcId is 293 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1426 for ECDH, tcId is 294 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1426_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1426_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1426_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1426 = { .name = "ecdh_secp224r1_1426", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1426_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1426_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1426_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 294 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1427 for ECDH, tcId is 295 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1427_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1427_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1427_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1427 = { .name = "ecdh_secp224r1_1427", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1427_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1427_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1427_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 295 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1428 for ECDH, tcId is 296 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1428_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1428_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1428_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1428 = { .name = "ecdh_secp224r1_1428", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1428_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1428_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1428_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 296 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1429 for ECDH, tcId is 297 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1429_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1429_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1429_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1429 = { .name = "ecdh_secp224r1_1429", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1429_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1429_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1429_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "wrong oid, tcId is 297 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1430 for ECDH, tcId is 298 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1430_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1430_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1430_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1430 = { .name = "ecdh_secp224r1_1430", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1430_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1430_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1430_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "longer oid, tcId is 298 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1431 for ECDH, tcId is 299 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1431_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1431_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1431_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1431 = { .name = "ecdh_secp224r1_1431", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1431_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1431_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1431_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "longer oid, tcId is 299 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1432 for ECDH, tcId is 300 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1432_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1432_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1432_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1432 = { .name = "ecdh_secp224r1_1432", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1432_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1432_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1432_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 300 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1433 for ECDH, tcId is 301 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1433_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1433_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1433_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1433 = { .name = "ecdh_secp224r1_1433", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1433_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1433_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1433_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 301 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1434 for ECDH, tcId is 302 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1434_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1434_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1434_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1434 = { .name = "ecdh_secp224r1_1434", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1434_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1434_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1434_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 302 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1435 for ECDH, tcId is 303 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1435_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1435_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1435_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1435 = { .name = "ecdh_secp224r1_1435", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1435_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1435_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1435_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "oid with modified node, tcId is 303 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1436 for ECDH, tcId is 304 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1436_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1436_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1436_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1436 = { .name = "ecdh_secp224r1_1436", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1436_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1436_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1436_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "large integer in oid, tcId is 304 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1437 for ECDH, tcId is 305 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1437_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1437_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1437_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1437 = { .name = "ecdh_secp224r1_1437", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1437_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1437_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1437_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "large integer in oid, tcId is 305 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1438 for ECDH, tcId is 310 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1438_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1438_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1438_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1438 = { .name = "ecdh_secp224r1_1438", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1438_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1438_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1438_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "long form encoding of length of bit string, tcId is 310 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1439 for ECDH, tcId is 311 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1439_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1439_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1439_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1439 = { .name = "ecdh_secp224r1_1439", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1439_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1439_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1439_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "length of bit string contains leading 0, tcId is 311 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1440 for ECDH, tcId is 323 in file ecdh_secp224r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1440_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0x62, }; static const unsigned char ecdh_secp224r1_1440_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1440_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1440 = { .name = "ecdh_secp224r1_1440", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1440_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1440_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1440_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "prepending 0's to bit string, tcId is 323 in file ecdh_secp224r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1441 for ECDH, tcId is 334 in file ecdh_secp224r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_1441_peerpubkey[] = { 0x86, 0xe2, 0xf7, 0x2b, 0xcc, 0xd9, 0x74, 0xa3, 0xf1, 0xa4, 0xfc, 0x2c, 0xdc, 0xf2, 0x20, 0x43, 0xea, 0xf8, 0xbe, 0x04, 0x7d, 0xe6, 0xbe, 0x72, 0x6b, 0x62, 0x00, 0x1f, 0xda, 0x6f, 0x50, 0xf6, 0xdf, 0x0b, 0x51, 0xbe, 0xe9, 0x91, 0x95, 0xd8, 0xa1, 0xa1, 0xc9, 0x7e, 0x59, 0xe7, 0x2f, 0xa4, 0xfc, 0xf8, 0xc1, 0xd2, 0x1c, 0xb3, 0xda, 0xe2, }; static const unsigned char ecdh_secp224r1_1441_privkey[] = { 0xa1, 0xb9, 0x44, 0x4f, 0x59, 0x64, 0x2d, 0x42, 0x8e, 0x2f, 0x29, 0x90, 0x55, 0x00, 0x41, 0x65, 0xa3, 0x4c, 0x3b, 0x87, 0x96, 0xc5, 0x05, 0x7a, 0xe8, 0xa1, 0xa5, 0x72, }; static const unsigned char ecdh_secp224r1_1441_sharedsecret[] = { 0x85, 0xa7, 0x0f, 0xc4, 0xdf, 0xc8, 0x50, 0x9f, 0xb9, 0xba, 0x1c, 0xfc, 0xf1, 0x87, 0x94, 0x43, 0xe2, 0xce, 0x17, 0x6d, 0x79, 0x42, 0x28, 0x02, 0x9b, 0x10, 0xda, 0x63, }; static const wycheproof_ecdh_test ecdh_secp224r1_1441 = { .name = "ecdh_secp224r1_1441", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_1441_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_1441_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_1441_sharedsecret, .sharedsecretlen = 28, .result = -1, .comment = "modify last byte of bit string, tcId is 334 in file ecdh_secp224r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 1442 for ECDH, tcId is 1 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1442_peerpubkey[] = { 0xd8, 0x09, 0x6a, 0xf8, 0xa1, 0x1e, 0x0b, 0x80, 0x03, 0x7e, 0x1e, 0xe6, 0x82, 0x46, 0xb5, 0xdc, 0xbb, 0x0a, 0xeb, 0x1c, 0xf1, 0x24, 0x4f, 0xd7, 0x67, 0xdb, 0x80, 0xf3, 0xfa, 0x27, 0xda, 0x2b, 0x39, 0x68, 0x12, 0xea, 0x16, 0x86, 0xe7, 0x47, 0x2e, 0x96, 0x92, 0xea, 0xf3, 0xe9, 0x58, 0xe5, 0x0e, 0x95, 0x00, 0xd3, 0xb4, 0xc7, 0x72, 0x43, 0xdb, 0x1f, 0x2a, 0xcd, 0x67, 0xba, 0x9c, 0xc4, }; static const unsigned char ecdh_secp256k1_1442_privkey[] = { 0xf4, 0xb7, 0xff, 0x7c, 0xcc, 0xc9, 0x88, 0x13, 0xa6, 0x9f, 0xae, 0x3d, 0xf2, 0x22, 0xbf, 0xe3, 0xf4, 0xe2, 0x8f, 0x76, 0x4b, 0xf9, 0x1b, 0x4a, 0x10, 0xd8, 0x09, 0x6c, 0xe4, 0x46, 0xb2, 0x54, }; static const unsigned char ecdh_secp256k1_1442_sharedsecret[] = { 0x54, 0x4d, 0xfa, 0xe2, 0x2a, 0xf6, 0xaf, 0x93, 0x90, 0x42, 0xb1, 0xd8, 0x5b, 0x71, 0xa1, 0xe4, 0x9e, 0x9a, 0x56, 0x14, 0x12, 0x3c, 0x4d, 0x6a, 0xd0, 0xc8, 0xaf, 0x65, 0xba, 0xf8, 0x7d, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256k1_1442 = { .name = "ecdh_secp256k1_1442", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1442_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1442_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1442_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1443 for ECDH, tcId is 2 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1443_peerpubkey[] = { 0xd8, 0x09, 0x6a, 0xf8, 0xa1, 0x1e, 0x0b, 0x80, 0x03, 0x7e, 0x1e, 0xe6, 0x82, 0x46, 0xb5, 0xdc, 0xbb, 0x0a, 0xeb, 0x1c, 0xf1, 0x24, 0x4f, 0xd7, 0x67, 0xdb, 0x80, 0xf3, 0xfa, 0x27, 0xda, 0x2b, }; static const unsigned char ecdh_secp256k1_1443_privkey[] = { 0xf4, 0xb7, 0xff, 0x7c, 0xcc, 0xc9, 0x88, 0x13, 0xa6, 0x9f, 0xae, 0x3d, 0xf2, 0x22, 0xbf, 0xe3, 0xf4, 0xe2, 0x8f, 0x76, 0x4b, 0xf9, 0x1b, 0x4a, 0x10, 0xd8, 0x09, 0x6c, 0xe4, 0x46, 0xb2, 0x54, }; static const unsigned char ecdh_secp256k1_1443_sharedsecret[] = { 0x54, 0x4d, 0xfa, 0xe2, 0x2a, 0xf6, 0xaf, 0x93, 0x90, 0x42, 0xb1, 0xd8, 0x5b, 0x71, 0xa1, 0xe4, 0x9e, 0x9a, 0x56, 0x14, 0x12, 0x3c, 0x4d, 0x6a, 0xd0, 0xc8, 0xaf, 0x65, 0xba, 0xf8, 0x7d, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256k1_1443 = { .name = "ecdh_secp256k1_1443", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1443_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1443_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1443_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1444 for ECDH, tcId is 3 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1444_peerpubkey[] = { 0x96, 0x5f, 0xf4, 0x2d, 0x65, 0x4e, 0x05, 0x8e, 0xe7, 0x31, 0x7c, 0xce, 0xd7, 0xca, 0xf0, 0x93, 0xfb, 0xb1, 0x80, 0xd8, 0xd3, 0xa7, 0x4b, 0x0d, 0xcd, 0x9d, 0x8c, 0xd4, 0x7a, 0x39, 0xd5, 0xcb, 0x9c, 0x2a, 0xa4, 0xda, 0xac, 0x01, 0xa4, 0xbe, 0x37, 0xc2, 0x04, 0x67, 0xed, 0xe9, 0x64, 0x66, 0x2f, 0x12, 0x98, 0x3e, 0x0b, 0x52, 0x72, 0xa4, 0x7a, 0x5f, 0x27, 0x85, 0x68, 0x5d, 0x80, 0x87, }; static const unsigned char ecdh_secp256k1_1444_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1444_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_1444 = { .name = "ecdh_secp256k1_1444", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1444_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1444_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1444_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1445 for ECDH, tcId is 4 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1445_peerpubkey[] = { 0x06, 0xc4, 0xb8, 0x7b, 0xa7, 0x6c, 0x6d, 0xcb, 0x10, 0x1f, 0x54, 0xa0, 0x50, 0xa0, 0x86, 0xaa, 0x2c, 0xb0, 0x72, 0x2f, 0x03, 0x13, 0x7d, 0xf5, 0xa9, 0x22, 0x47, 0x2f, 0x1b, 0xdc, 0x11, 0xb9, 0x82, 0xe3, 0xc7, 0x35, 0xc4, 0xb6, 0xc4, 0x81, 0xd0, 0x92, 0x69, 0x55, 0x9f, 0x08, 0x0a, 0xd0, 0x86, 0x32, 0xf3, 0x70, 0xa0, 0x54, 0xaf, 0x12, 0xc1, 0xfd, 0x1e, 0xce, 0xd2, 0xea, 0x92, 0x11, }; static const unsigned char ecdh_secp256k1_1445_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1445_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_1445 = { .name = "ecdh_secp256k1_1445", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1445_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1445_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1445_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1446 for ECDH, tcId is 5 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1446_peerpubkey[] = { 0xbb, 0xa3, 0x0e, 0xef, 0x79, 0x67, 0xa2, 0xf2, 0xf0, 0x8a, 0x2f, 0xfa, 0xda, 0xc0, 0xe4, 0x1f, 0xd4, 0xdb, 0x12, 0xa9, 0x3c, 0xef, 0x0b, 0x04, 0x5b, 0x57, 0x06, 0xf2, 0x85, 0x38, 0x21, 0xe6, 0xd5, 0x0b, 0x2b, 0xf8, 0xcb, 0xf5, 0x30, 0xe6, 0x19, 0x86, 0x9e, 0x07, 0xc0, 0x21, 0xef, 0x16, 0xf6, 0x93, 0xcf, 0xc0, 0xa4, 0xb0, 0xd4, 0xed, 0x5a, 0x8f, 0x46, 0x46, 0x92, 0xbf, 0x3d, 0x6e, }; static const unsigned char ecdh_secp256k1_1446_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1446_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_1446 = { .name = "ecdh_secp256k1_1446", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1446_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1446_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1446_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1447 for ECDH, tcId is 6 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1447_peerpubkey[] = { 0x16, 0x6a, 0xed, 0x3b, 0xc2, 0x81, 0x70, 0x54, 0x44, 0xf9, 0x33, 0x91, 0x3f, 0x67, 0x09, 0x57, 0xa1, 0x18, 0xf8, 0xda, 0x2c, 0x71, 0xbd, 0x30, 0x1a, 0x90, 0x92, 0x97, 0x43, 0xe2, 0xca, 0x58, 0x35, 0x14, 0xa7, 0x97, 0x2e, 0x33, 0xd6, 0xfe, 0xa1, 0xe3, 0x77, 0xef, 0x41, 0x84, 0x93, 0x7f, 0x67, 0xb3, 0x7e, 0x41, 0xef, 0x30, 0x99, 0xc2, 0x28, 0xa8, 0x8f, 0x5b, 0xfb, 0x67, 0xe5, 0xb9, }; static const unsigned char ecdh_secp256k1_1447_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1447_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1447 = { .name = "ecdh_secp256k1_1447", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1447_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1447_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1447_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1448 for ECDH, tcId is 7 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1448_peerpubkey[] = { 0x36, 0xe1, 0xe7, 0x6f, 0xfd, 0xbe, 0x85, 0x77, 0x52, 0x0b, 0x07, 0x16, 0xeb, 0x88, 0xc1, 0x8e, 0xa7, 0x2a, 0x49, 0xe5, 0xa4, 0xe5, 0x68, 0x0a, 0x7d, 0x29, 0x00, 0x93, 0xf8, 0x41, 0xcb, 0x6e, 0x73, 0x10, 0x72, 0x8b, 0x59, 0xc7, 0x57, 0x2c, 0x4b, 0x35, 0xfb, 0x6c, 0x29, 0xc3, 0x6e, 0xba, 0xbf, 0xc5, 0x35, 0x53, 0xc0, 0x6e, 0xcf, 0x74, 0x7f, 0xcf, 0xbe, 0xfc, 0xf6, 0x11, 0x4e, 0x1c, }; static const unsigned char ecdh_secp256k1_1448_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1448_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1448 = { .name = "ecdh_secp256k1_1448", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1448_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1448_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1449 for ECDH, tcId is 8 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1449_peerpubkey[] = { 0x72, 0x8e, 0x15, 0xd5, 0x78, 0x21, 0x2b, 0xc4, 0x22, 0x87, 0xc0, 0x11, 0x8c, 0x82, 0xc8, 0x4b, 0x12, 0x6f, 0x97, 0xd5, 0x49, 0x22, 0x3c, 0x10, 0xad, 0x07, 0xf4, 0xe9, 0x8a, 0xf9, 0x12, 0x38, 0x5d, 0x23, 0xb1, 0xa6, 0xe7, 0x16, 0x92, 0x58, 0x55, 0xa2, 0x47, 0xb1, 0x6e, 0xff, 0xe9, 0x27, 0x73, 0x31, 0x52, 0x41, 0xac, 0x95, 0x1c, 0xdf, 0xef, 0xdf, 0xac, 0x0e, 0xd1, 0x64, 0x67, 0xf6, }; static const unsigned char ecdh_secp256k1_1449_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1449_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1449 = { .name = "ecdh_secp256k1_1449", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1449_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1449_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1449_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1450 for ECDH, tcId is 9 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1450_peerpubkey[] = { 0xca, 0x03, 0xff, 0x8e, 0x99, 0xe2, 0x69, 0x57, 0x6c, 0xf7, 0x56, 0x45, 0x45, 0xc8, 0x92, 0x68, 0xeb, 0x41, 0x5f, 0xf4, 0x57, 0x78, 0x73, 0x25, 0x29, 0xfa, 0x59, 0x97, 0xcc, 0x2b, 0x23, 0x09, 0x50, 0xd6, 0xb8, 0x4b, 0x72, 0x9b, 0xc0, 0x7f, 0x9b, 0x2d, 0x92, 0x75, 0x42, 0x81, 0xcd, 0xc0, 0xd2, 0x89, 0xd2, 0x45, 0x33, 0x85, 0xae, 0xf7, 0x7e, 0x4b, 0xdc, 0x69, 0xbf, 0x15, 0x5c, 0x5f, }; static const unsigned char ecdh_secp256k1_1450_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1450_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1450 = { .name = "ecdh_secp256k1_1450", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1450_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1450_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1450_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1451 for ECDH, tcId is 10 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1451_peerpubkey[] = { 0x51, 0xbe, 0x66, 0x13, 0x7e, 0x39, 0xbb, 0xf3, 0x5a, 0x91, 0xc6, 0xdb, 0x5b, 0xa6, 0x91, 0x9f, 0xf4, 0x71, 0xd8, 0x85, 0xca, 0x94, 0x46, 0x2e, 0xaa, 0xa6, 0x5b, 0x1e, 0xac, 0x36, 0x6b, 0xaa, 0x59, 0x10, 0xde, 0x70, 0xb6, 0xe0, 0x9e, 0x97, 0xaa, 0x00, 0x62, 0x1e, 0xf1, 0x8f, 0x28, 0x01, 0x71, 0x9b, 0x19, 0x9b, 0x3e, 0x77, 0x69, 0xfd, 0xab, 0x2b, 0xd9, 0x09, 0xb2, 0xf3, 0x40, 0xd7, }; static const unsigned char ecdh_secp256k1_1451_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1451_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_1451 = { .name = "ecdh_secp256k1_1451", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1451_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1451_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1451_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1452 for ECDH, tcId is 11 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1452_peerpubkey[] = { 0x23, 0x55, 0x65, 0x64, 0x85, 0x0c, 0x50, 0xfb, 0xa5, 0x1f, 0x1e, 0x64, 0xef, 0x98, 0x37, 0x8e, 0xf5, 0xc2, 0x2f, 0xea, 0xfa, 0x29, 0x49, 0x9c, 0xa2, 0x76, 0x00, 0xc4, 0x73, 0xca, 0xce, 0x88, 0x9d, 0x56, 0x79, 0xe9, 0x17, 0xda, 0xa7, 0xf4, 0xc7, 0x89, 0x95, 0x17, 0xd3, 0x78, 0x26, 0x28, 0x4f, 0x03, 0x1d, 0xe0, 0x1a, 0x60, 0xbc, 0x81, 0x36, 0x96, 0x41, 0x4d, 0x04, 0x53, 0x1a, 0x21, }; static const unsigned char ecdh_secp256k1_1452_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1452_sharedsecret[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_1452 = { .name = "ecdh_secp256k1_1452", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1452_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1452_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1452_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1453 for ECDH, tcId is 12 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1453_peerpubkey[] = { 0xdd, 0xbf, 0x80, 0x7e, 0x22, 0xc5, 0x6a, 0x19, 0xcf, 0x6c, 0x47, 0x28, 0x29, 0x15, 0x03, 0x50, 0x78, 0x10, 0x34, 0xa5, 0xed, 0xde, 0xc3, 0x65, 0x69, 0x4d, 0x4b, 0xd5, 0xc8, 0x65, 0xea, 0xd1, 0x4e, 0x67, 0x41, 0x27, 0x02, 0x8c, 0x91, 0xd3, 0x39, 0x4c, 0xac, 0x37, 0x29, 0x3a, 0x86, 0x60, 0x55, 0xd1, 0x0f, 0x0f, 0x40, 0xa3, 0x70, 0x6a, 0xd1, 0x6b, 0x64, 0xfc, 0x9d, 0x59, 0x98, 0xbd, }; static const unsigned char ecdh_secp256k1_1453_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1453_sharedsecret[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_1453 = { .name = "ecdh_secp256k1_1453", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1453_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1453_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1454 for ECDH, tcId is 13 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1454_peerpubkey[] = { 0x59, 0x5e, 0x46, 0xee, 0x7c, 0x2d, 0x71, 0x83, 0xff, 0x2e, 0xa7, 0x60, 0xff, 0xd8, 0x47, 0x2f, 0xb8, 0x34, 0xec, 0x89, 0xc0, 0x8b, 0x6e, 0xf4, 0x8f, 0xf9, 0x2b, 0x44, 0xa1, 0x3a, 0x6e, 0x1a, 0xe5, 0x63, 0xe2, 0x39, 0x53, 0xc9, 0x7c, 0x26, 0x44, 0x13, 0x23, 0xd2, 0x50, 0x0c, 0x84, 0xe8, 0xce, 0xe0, 0x4c, 0x15, 0xd4, 0xd5, 0xd2, 0xcc, 0x45, 0x87, 0x03, 0xd1, 0xf2, 0xd0, 0x2d, 0x31, }; static const unsigned char ecdh_secp256k1_1454_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1454_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1454 = { .name = "ecdh_secp256k1_1454", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1454_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1454_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1455 for ECDH, tcId is 14 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1455_peerpubkey[] = { 0xe4, 0x26, 0xe2, 0xf5, 0x10, 0x83, 0x33, 0x11, 0x75, 0x87, 0x97, 0x5f, 0x18, 0xd8, 0xcc, 0x07, 0x8d, 0x41, 0xe5, 0x6b, 0x7d, 0x6b, 0x82, 0xf5, 0x85, 0xd7, 0x5b, 0x0d, 0x73, 0x47, 0x9f, 0xfd, 0x75, 0x80, 0x0f, 0xd4, 0x12, 0x36, 0xa5, 0x60, 0x34, 0xbe, 0xd9, 0xab, 0xc5, 0x5d, 0x82, 0xcf, 0x05, 0x9a, 0x14, 0xd6, 0x3c, 0x07, 0xcd, 0x07, 0x50, 0x93, 0x17, 0x14, 0x73, 0x1a, 0x1c, 0xa1, }; static const unsigned char ecdh_secp256k1_1455_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1455_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1455 = { .name = "ecdh_secp256k1_1455", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1455_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1455_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1456 for ECDH, tcId is 15 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1456_peerpubkey[] = { 0xe1, 0xc7, 0x07, 0x6c, 0xaf, 0x26, 0x01, 0x0b, 0x17, 0x67, 0xf1, 0xa9, 0xc4, 0x15, 0x6b, 0x5b, 0x42, 0x36, 0x36, 0x8d, 0x5d, 0x90, 0xde, 0xce, 0x34, 0x41, 0xb7, 0x34, 0xe8, 0x68, 0x4e, 0xe6, 0xb3, 0x53, 0x4c, 0x3c, 0x54, 0xe6, 0x14, 0xe5, 0x94, 0xdc, 0xe6, 0xca, 0x43, 0x8b, 0x87, 0xc4, 0x24, 0xc8, 0xe8, 0x0f, 0x8f, 0xae, 0x22, 0x6b, 0xbd, 0xf5, 0x0e, 0x49, 0x06, 0xc1, 0x3f, 0x6b, }; static const unsigned char ecdh_secp256k1_1456_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1456_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_1456 = { .name = "ecdh_secp256k1_1456", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1456_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1456_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1456_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1457 for ECDH, tcId is 16 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1457_peerpubkey[] = { 0x66, 0x3c, 0xea, 0x10, 0x63, 0xc9, 0x91, 0x6b, 0x75, 0xe8, 0x5f, 0xc8, 0x15, 0xd8, 0xa2, 0x37, 0x0e, 0xc0, 0xa0, 0x2a, 0xce, 0xef, 0x3d, 0xb0, 0x22, 0xe3, 0x95, 0xdb, 0x8b, 0x03, 0xbf, 0x3f, 0x18, 0x87, 0x87, 0xf4, 0x04, 0x7d, 0xc1, 0x06, 0x80, 0x75, 0x26, 0x50, 0x2c, 0x7a, 0xe8, 0x80, 0xe4, 0x71, 0xc9, 0x29, 0xb9, 0x2e, 0x23, 0x84, 0x48, 0x9c, 0x80, 0x70, 0xb5, 0xbc, 0xc1, 0x09, }; static const unsigned char ecdh_secp256k1_1457_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1457_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1457 = { .name = "ecdh_secp256k1_1457", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1457_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1457_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1457_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1458 for ECDH, tcId is 17 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1458_peerpubkey[] = { 0x24, 0x17, 0x5c, 0x07, 0x8e, 0x30, 0x5d, 0x31, 0x39, 0xe5, 0xda, 0xb7, 0x27, 0xa6, 0xab, 0x85, 0x87, 0xb2, 0x6d, 0xaa, 0x47, 0x0a, 0x52, 0x9a, 0x23, 0xc1, 0x05, 0x85, 0xcb, 0x56, 0xc0, 0x38, 0xbf, 0x1f, 0x2b, 0x93, 0x7a, 0xe0, 0x74, 0xff, 0x94, 0xb1, 0x5f, 0x5c, 0xb5, 0xe6, 0x0e, 0xb5, 0xd3, 0x2a, 0xfb, 0xa2, 0x07, 0x75, 0x39, 0xdb, 0x79, 0x42, 0x94, 0xbc, 0xaa, 0xb7, 0x1a, 0x81, }; static const unsigned char ecdh_secp256k1_1458_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1458_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1458 = { .name = "ecdh_secp256k1_1458", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1458_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1458_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1458_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1459 for ECDH, tcId is 18 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1459_peerpubkey[] = { 0x00, 0x8d, 0x71, 0xc7, 0x12, 0xdd, 0x95, 0x88, 0x1c, 0xd1, 0x40, 0x0d, 0xbe, 0x76, 0x83, 0xac, 0xbd, 0x8e, 0x26, 0x9d, 0x25, 0x26, 0x1b, 0x08, 0xf1, 0xf4, 0x91, 0xb4, 0x5e, 0x3b, 0x56, 0x21, 0x77, 0x81, 0x82, 0xa2, 0x41, 0x98, 0xb0, 0xf2, 0x35, 0x02, 0xd0, 0x6e, 0x24, 0xc4, 0x51, 0x22, 0xe1, 0xf4, 0x20, 0xaf, 0x48, 0xdc, 0x1e, 0x17, 0xb1, 0xea, 0x92, 0x33, 0x86, 0xa3, 0x30, 0x62, }; static const unsigned char ecdh_secp256k1_1459_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1459_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1459 = { .name = "ecdh_secp256k1_1459", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1459_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1459_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1460 for ECDH, tcId is 19 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1460_peerpubkey[] = { 0x56, 0xba, 0xf1, 0xd7, 0x26, 0x06, 0xc7, 0xaf, 0x5a, 0x5f, 0xa1, 0x08, 0x62, 0x0b, 0x08, 0x39, 0xe2, 0xc7, 0xdd, 0x40, 0xb8, 0x32, 0xef, 0x84, 0x7e, 0x5b, 0x64, 0xc8, 0x6e, 0xfe, 0x1a, 0xa5, 0x63, 0xe5, 0x86, 0xa6, 0x67, 0xa6, 0x5b, 0xbb, 0x56, 0x92, 0x50, 0x0d, 0xf1, 0xff, 0x84, 0x03, 0x73, 0x68, 0x38, 0xb3, 0x0e, 0xa9, 0x79, 0x1d, 0x9d, 0x39, 0x0e, 0x3d, 0xc6, 0x68, 0x9e, 0x2c, }; static const unsigned char ecdh_secp256k1_1460_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1460_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1460 = { .name = "ecdh_secp256k1_1460", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1460_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1460_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1460_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 19 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1461 for ECDH, tcId is 20 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1461_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0x5a, 0x5e, 0x4a, 0xf1, 0x1c, 0xf6, 0x3c, 0xea, 0xaa, 0x42, 0xa6, 0xdc, 0x9e, 0x4c, 0xcb, 0x39, 0x48, 0x52, 0xcf, 0x84, 0x28, 0x4e, 0x8d, 0x26, 0x27, 0x57, 0x2f, 0xbf, 0x22, 0xc0, 0xba, 0x88, }; static const unsigned char ecdh_secp256k1_1461_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1461_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1461 = { .name = "ecdh_secp256k1_1461", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1461_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1461_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1461_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 20 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1462 for ECDH, tcId is 21 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1462_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0x07, 0xeb, 0x78, 0xd3, 0x87, 0x70, 0xfe, 0xa1, 0xa4, 0x4f, 0x4d, 0xa7, 0x2c, 0x26, 0xf8, 0x5b, 0x17, 0xf3, 0x50, 0x1a, 0x4f, 0x93, 0x94, 0xfe, 0x29, 0x85, 0x6c, 0xcb, 0xf1, 0x5f, 0xd2, 0x84, }; static const unsigned char ecdh_secp256k1_1462_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1462_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1462 = { .name = "ecdh_secp256k1_1462", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1462_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1462_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1462_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 21 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1463 for ECDH, tcId is 22 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1463_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0xa5, 0xa1, 0xb5, 0x0e, 0xe3, 0x09, 0xc3, 0x15, 0x55, 0xbd, 0x59, 0x23, 0x61, 0xb3, 0x34, 0xc6, 0xb7, 0xad, 0x30, 0x7b, 0xd7, 0xb1, 0x72, 0xd9, 0xd8, 0xa8, 0xd0, 0x3f, 0xdd, 0x3f, 0x41, 0xa7, }; static const unsigned char ecdh_secp256k1_1463_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1463_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1463 = { .name = "ecdh_secp256k1_1463", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1463_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1463_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1463_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 22 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1464 for ECDH, tcId is 23 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1464_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0xf8, 0x14, 0x87, 0x2c, 0x78, 0x8f, 0x01, 0x5e, 0x5b, 0xb0, 0xb2, 0x58, 0xd3, 0xd9, 0x07, 0xa4, 0xe8, 0x0c, 0xaf, 0xe5, 0xb0, 0x6c, 0x6b, 0x01, 0xd6, 0x7a, 0x93, 0x33, 0x0e, 0xa0, 0x29, 0xab, }; static const unsigned char ecdh_secp256k1_1464_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1464_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1464 = { .name = "ecdh_secp256k1_1464", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1464_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1464_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1464_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 23 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1465 for ECDH, tcId is 24 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1465_peerpubkey[] = { 0x54, 0x50, 0xca, 0xce, 0x04, 0x38, 0x6a, 0xdc, 0x54, 0xa1, 0x43, 0x50, 0x79, 0x3e, 0x83, 0xbd, 0xc5, 0xf2, 0x65, 0xd6, 0xc2, 0x92, 0x87, 0xec, 0xd0, 0x7f, 0x79, 0x1a, 0xd2, 0x78, 0x4c, 0x4c, 0xeb, 0xd3, 0xc2, 0x44, 0x51, 0x32, 0x23, 0x34, 0xd8, 0xd5, 0x10, 0x33, 0xe9, 0xd3, 0x4b, 0x6b, 0xb5, 0x92, 0xb1, 0x99, 0x5d, 0x07, 0x86, 0x78, 0x63, 0xd1, 0x04, 0x4b, 0xd5, 0x9d, 0x75, 0x01, }; static const unsigned char ecdh_secp256k1_1465_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_1465_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1465 = { .name = "ecdh_secp256k1_1465", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1465_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1465_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1465_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 24 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1466 for ECDH, tcId is 25 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1466_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_1466_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1466_sharedsecret[] = { 0x12, 0xc2, 0xad, 0x36, 0xa5, 0x9f, 0xda, 0x5a, 0xc4, 0xf7, 0xe9, 0x7f, 0xf6, 0x11, 0x72, 0x8d, 0x07, 0x48, 0xac, 0x35, 0x9f, 0xca, 0x9b, 0x12, 0xf6, 0xd4, 0xf4, 0x35, 0x19, 0x51, 0x64, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256k1_1466 = { .name = "ecdh_secp256k1_1466", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1466_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1466_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1466_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1467 for ECDH, tcId is 26 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1467_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x66, 0xfb, 0xe7, 0x27, 0xb2, 0xba, 0x09, 0xe0, 0x9f, 0x5a, 0x98, 0xd7, 0x0a, 0x5e, 0xfc, 0xe8, 0x42, 0x4c, 0x5f, 0xa4, 0x25, 0xbb, 0xda, 0x1c, 0x51, 0x1f, 0x86, 0x06, 0x57, 0xb8, 0x53, 0x5e, }; static const unsigned char ecdh_secp256k1_1467_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1467_sharedsecret[] = { 0x45, 0xaa, 0x96, 0x66, 0x75, 0x78, 0x15, 0xe9, 0x97, 0x41, 0x40, 0xd1, 0xb5, 0x71, 0x91, 0xc9, 0x2c, 0x58, 0x8f, 0x6e, 0x56, 0x81, 0x13, 0x1e, 0x0d, 0xf9, 0xb3, 0xd2, 0x41, 0x83, 0x1a, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_1467 = { .name = "ecdh_secp256k1_1467", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1467_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1467_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1467_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1468 for ECDH, tcId is 27 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1468_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x2f, 0x23, 0x33, 0x95, 0xc8, 0xb0, 0x7a, 0x38, 0x34, 0xa0, 0xe5, 0x9b, 0xda, 0x43, 0x94, 0x4b, 0x5d, 0xf3, 0x78, 0x85, 0x2e, 0x56, 0x0e, 0xbc, 0x0f, 0x22, 0x87, 0x7e, 0x9f, 0x49, 0xbb, 0x4b, }; static const unsigned char ecdh_secp256k1_1468_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1468_sharedsecret[] = { 0xb9, 0x09, 0x64, 0xc0, 0x5e, 0x46, 0x4c, 0x23, 0xac, 0xb7, 0x47, 0xa4, 0xc8, 0x35, 0x11, 0xe9, 0x30, 0x07, 0xf7, 0x49, 0x9b, 0x06, 0x5c, 0x8e, 0x8e, 0xcc, 0xec, 0x95, 0x5d, 0x87, 0x31, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256k1_1468 = { .name = "ecdh_secp256k1_1468", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1468_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1468_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1468_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1469 for ECDH, tcId is 28 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1469_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0xb7, 0x72, 0xad, 0x92, 0xdb, 0x86, 0x99, 0xce, 0xac, 0x1a, 0x3c, 0x30, 0xe1, 0x26, 0xb8, 0x66, 0xc4, 0xfe, 0xfe, 0x29, 0x2c, 0xf0, 0xc1, 0x79, 0x0e, 0x55, 0xce, 0xe8, 0x41, 0x4f, 0x18, }; static const unsigned char ecdh_secp256k1_1469_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1469_sharedsecret[] = { 0x81, 0x63, 0xc9, 0xdc, 0xe8, 0x35, 0x6f, 0x1d, 0xf7, 0x2b, 0x69, 0x8f, 0x2f, 0x04, 0xa1, 0x4d, 0xb0, 0x26, 0x3a, 0x84, 0x02, 0x90, 0x5e, 0xee, 0x87, 0x94, 0x1b, 0x00, 0xd8, 0xd6, 0x77, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1469 = { .name = "ecdh_secp256k1_1469", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1469_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1469_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1470 for ECDH, tcId is 29 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1470_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x31, 0xcf, 0x13, 0x67, 0x1b, 0x57, 0x4e, 0x31, 0x3c, 0x35, 0x21, 0x75, 0x66, 0xf1, 0x8b, 0xd2, 0xc5, 0xf7, 0x58, 0xc1, 0x40, 0xd2, 0x4e, 0x94, 0xe6, 0xa4, 0xfd, 0xa7, 0xf4, 0xc7, 0xb1, 0x2b, }; static const unsigned char ecdh_secp256k1_1470_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1470_sharedsecret[] = { 0x1a, 0x32, 0x74, 0x9d, 0xcf, 0x04, 0x7a, 0x7e, 0x06, 0x19, 0x4c, 0xcb, 0x34, 0xd7, 0xc9, 0x53, 0x8a, 0x16, 0xdd, 0xab, 0xee, 0xed, 0xe7, 0x4b, 0xea, 0x5f, 0x7e, 0xf0, 0x49, 0x79, 0xf7, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_1470 = { .name = "ecdh_secp256k1_1470", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1470_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1470_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1471 for ECDH, tcId is 30 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1471_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x73, 0xb0, 0x88, 0x64, 0x96, 0xae, 0xd7, 0x0d, 0xb3, 0x71, 0xe2, 0xe4, 0x9d, 0xb6, 0x40, 0xab, 0xba, 0x54, 0x7e, 0x5e, 0x0c, 0x27, 0x63, 0xb7, 0x3a, 0x0a, 0x42, 0xf8, 0x43, 0x48, 0xa6, 0xb1, }; static const unsigned char ecdh_secp256k1_1471_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1471_sharedsecret[] = { 0xab, 0x43, 0x91, 0x7a, 0x64, 0xc1, 0xb0, 0x10, 0x15, 0x96, 0x43, 0xc1, 0x8e, 0x2e, 0xb0, 0x6d, 0x25, 0xee, 0xda, 0xe5, 0xb7, 0x8d, 0x02, 0xfa, 0x9b, 0x3d, 0xeb, 0xac, 0xbf, 0x31, 0xb7, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_1471 = { .name = "ecdh_secp256k1_1471", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1471_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1471_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1471_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1472 for ECDH, tcId is 31 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1472_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0f, 0x4d, 0x81, 0x57, 0x5c, 0x8e, 0x32, 0x82, 0x85, 0x63, 0x3c, 0xcf, 0xd8, 0x62, 0x3f, 0x04, 0xdd, 0x4e, 0xd6, 0x1e, 0x18, 0x7b, 0x3a, 0x6d, 0x7e, 0xac, 0x55, 0x3a, 0xed, 0xe7, 0xf8, 0x50, }; static const unsigned char ecdh_secp256k1_1472_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1472_sharedsecret[] = { 0x16, 0x48, 0x32, 0x1c, 0x70, 0x66, 0x51, 0xad, 0xf0, 0x66, 0x43, 0xfc, 0x4a, 0xe0, 0x60, 0x41, 0xdc, 0xe6, 0x4a, 0x82, 0x63, 0x2a, 0xd4, 0x41, 0x28, 0x06, 0x12, 0x16, 0xcc, 0x98, 0x27, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1472 = { .name = "ecdh_secp256k1_1472", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1472_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1472_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1472_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1473 for ECDH, tcId is 32 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1473_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, 0x42, 0x21, 0x7b, 0x70, 0x59, 0xb3, 0xdd, 0xeb, 0xc6, 0x8e, 0x95, 0x44, 0x3f, 0x6c, 0x10, 0x93, 0x69, 0xe1, 0xf9, 0x32, 0x3d, 0xd2, 0x48, 0x52, 0xac, 0x76, 0x12, 0x99, 0x6b, 0x6e, 0x56, 0x01, }; static const unsigned char ecdh_secp256k1_1473_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1473_sharedsecret[] = { 0xfb, 0x86, 0x6b, 0x2e, 0x4b, 0x1f, 0x9e, 0xd6, 0xb3, 0x78, 0x47, 0xfc, 0x80, 0xa1, 0x9a, 0x52, 0xe1, 0xe9, 0x1b, 0x75, 0xd7, 0x13, 0xb0, 0xd4, 0xf6, 0xb9, 0x95, 0xd2, 0xd3, 0xc7, 0x5c, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256k1_1473 = { .name = "ecdh_secp256k1_1473", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1473_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1473_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1473_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1474 for ECDH, tcId is 33 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1474_peerpubkey[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, 0x5f, 0x45, 0x0d, 0xbb, 0xf7, 0x18, 0xa4, 0xf6, 0x58, 0x2d, 0x7a, 0xf8, 0x39, 0x53, 0x17, 0x0b, 0x30, 0x37, 0xfb, 0x81, 0xa4, 0x50, 0xa5, 0xca, 0x5a, 0xcb, 0xec, 0x74, 0xad, 0x6c, 0xac, 0x89, }; static const unsigned char ecdh_secp256k1_1474_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1474_sharedsecret[] = { 0x19, 0x08, 0xae, 0x93, 0x6f, 0x53, 0xb9, 0xa8, 0xa2, 0xd0, 0x97, 0x07, 0xae, 0x41, 0x40, 0x84, 0x09, 0x0b, 0x17, 0x53, 0x65, 0x40, 0x14, 0x25, 0x47, 0x9b, 0x10, 0xb8, 0xc3, 0xe8, 0xd1, 0xba, }; static const wycheproof_ecdh_test ecdh_secp256k1_1474 = { .name = "ecdh_secp256k1_1474", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1474_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1474_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1474_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1475 for ECDH, tcId is 34 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1475_peerpubkey[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, 0x37, 0x26, 0x9a, 0x64, 0xbb, 0xcf, 0x3a, 0x3f, 0x22, 0x76, 0x31, 0xc7, 0xa8, 0xce, 0x53, 0x2c, 0x77, 0x24, 0x5a, 0x1c, 0x0d, 0xb4, 0x34, 0x3f, 0x16, 0xaa, 0x1d, 0x33, 0x9f, 0xd2, 0x59, 0x1a, }; static const unsigned char ecdh_secp256k1_1475_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1475_sharedsecret[] = { 0x5e, 0x13, 0xb3, 0xdc, 0x04, 0xe3, 0x3f, 0x18, 0xd1, 0x28, 0x6c, 0x60, 0x6c, 0xb0, 0x19, 0x17, 0x85, 0xf6, 0x94, 0xe8, 0x2e, 0x17, 0x79, 0x61, 0x45, 0xc9, 0xe7, 0xb4, 0x9b, 0xc2, 0xaf, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_1475 = { .name = "ecdh_secp256k1_1475", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1475_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1475_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1475_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1476 for ECDH, tcId is 35 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1476_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x4b, 0x66, 0x00, 0x3c, 0x74, 0x82, 0xd0, 0xf2, 0xfd, 0x7b, 0x1c, 0xb2, 0xb0, 0xb7, 0x07, 0x8c, 0xd1, 0x99, 0xf2, 0x20, 0x8f, 0xc3, 0x7e, 0xb2, 0xef, 0x28, 0x6c, 0xcb, 0x2f, 0x12, 0x24, 0xe7, }; static const unsigned char ecdh_secp256k1_1476_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1476_sharedsecret[] = { 0x31, 0x35, 0xa6, 0x28, 0x3b, 0x97, 0xe7, 0x53, 0x7a, 0x8b, 0xc2, 0x08, 0xa3, 0x55, 0xc2, 0xa8, 0x54, 0xb8, 0xee, 0x6e, 0x42, 0x27, 0x20, 0x67, 0x30, 0xe6, 0xd7, 0x25, 0xda, 0x04, 0x4d, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_1476 = { .name = "ecdh_secp256k1_1476", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1476_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1476_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1476_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1477 for ECDH, tcId is 36 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1477_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x69, 0xd3, 0xcd, 0x0c, 0x70, 0xf1, 0x48, 0x4d, 0x4b, 0x3b, 0xbb, 0xd6, 0x80, 0x67, 0x9e, 0xf4, 0x77, 0xa2, 0x2a, 0x07, 0xdf, 0x08, 0x56, 0x34, 0xf1, 0x17, 0xc4, 0x1c, 0x08, 0xbf, 0x12, 0x30, }; static const unsigned char ecdh_secp256k1_1477_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1477_sharedsecret[] = { 0x62, 0x95, 0x90, 0x89, 0xa7, 0xed, 0x47, 0x7c, 0x22, 0xcb, 0x4f, 0x1c, 0x77, 0x87, 0x32, 0x73, 0x18, 0xfc, 0xcc, 0xa2, 0x5e, 0x5a, 0xa3, 0xe4, 0x46, 0x88, 0xa2, 0x82, 0x93, 0x1a, 0xb0, 0x49, }; static const wycheproof_ecdh_test ecdh_secp256k1_1477 = { .name = "ecdh_secp256k1_1477", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1477_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1477_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1477_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1478 for ECDH, tcId is 37 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1478_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x30, 0xf6, 0x9b, 0x6e, 0x95, 0xa3, 0x30, 0x32, 0x14, 0xa7, 0x3a, 0xd9, 0x82, 0xa1, 0xf3, 0xee, 0x16, 0x9d, 0x7e, 0xcf, 0x95, 0x8d, 0xe7, 0xb0, 0xbc, 0xa8, 0xa9, 0xff, 0xa3, 0xb8, 0xe8, 0xb3, }; static const unsigned char ecdh_secp256k1_1478_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1478_sharedsecret[] = { 0x04, 0xfd, 0xa5, 0xc0, 0x0a, 0x39, 0x6f, 0xad, 0x6b, 0x80, 0x9a, 0x88, 0x43, 0xde, 0x57, 0x3e, 0x86, 0xb0, 0x40, 0x3d, 0x64, 0x49, 0x95, 0xc8, 0x33, 0x13, 0xda, 0x51, 0xfb, 0x1f, 0x58, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256k1_1478 = { .name = "ecdh_secp256k1_1478", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1478_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1478_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1478_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1479 for ECDH, tcId is 38 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1479_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x56, 0x95, 0x1e, 0xad, 0x86, 0x1a, 0xa8, 0xec, 0x7a, 0x31, 0x4f, 0xcd, 0x54, 0xf9, 0x05, 0xbd, 0x92, 0xc9, 0x10, 0x78, 0x63, 0x75, 0xeb, 0x7e, 0xe5, 0xf3, 0xa5, 0x5f, 0x8a, 0xa8, 0x78, 0x84, }; static const unsigned char ecdh_secp256k1_1479_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1479_sharedsecret[] = { 0xbb, 0xd9, 0x93, 0x7b, 0xb5, 0x1d, 0x27, 0xf9, 0x4e, 0xca, 0xea, 0x29, 0x71, 0x7d, 0xf7, 0x89, 0xaf, 0xea, 0xc4, 0x41, 0x4e, 0x3e, 0xf2, 0x7b, 0xb2, 0xe6, 0xfa, 0x72, 0x59, 0x18, 0x2e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256k1_1479 = { .name = "ecdh_secp256k1_1479", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1479_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1479_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1479_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1480 for ECDH, tcId is 39 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1480_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x63, 0xa8, 0x8b, 0x2e, 0x0c, 0x89, 0x87, 0xc6, 0x31, 0x0c, 0xf8, 0x1d, 0x0c, 0x93, 0x5f, 0x00, 0x21, 0x3f, 0x98, 0xa3, 0xda, 0xd2, 0xf4, 0x3c, 0x81, 0x28, 0xfa, 0x31, 0x3a, 0x90, 0xd5, 0x5b, }; static const unsigned char ecdh_secp256k1_1480_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1480_sharedsecret[] = { 0xbb, 0xd9, 0xd3, 0x05, 0xb9, 0x9f, 0xf3, 0xdb, 0x56, 0xf7, 0x7f, 0xea, 0x9e, 0x89, 0xf3, 0x22, 0x60, 0xee, 0x73, 0x26, 0x04, 0x00, 0x67, 0xce, 0x05, 0xdd, 0x15, 0xe0, 0xdc, 0xc1, 0x3e, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256k1_1480 = { .name = "ecdh_secp256k1_1480", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1480_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1480_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1480_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1481 for ECDH, tcId is 40 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1481_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0xa4, 0x45, 0x6c, 0xa6, 0xd4, 0x05, 0x4d, 0x13, 0xb2, 0x09, 0xf6, 0xd2, 0x62, 0xe6, 0x05, 0x7a, 0xd7, 0x12, 0x56, 0x6f, 0x46, 0xe9, 0xe2, 0x38, 0xe8, 0x94, 0xde, 0xeb, 0xe3, 0xd3, 0xaa, }; static const unsigned char ecdh_secp256k1_1481_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1481_sharedsecret[] = { 0x4f, 0xfb, 0x2c, 0x79, 0x62, 0xe3, 0x2d, 0x53, 0x65, 0xf9, 0x8f, 0x66, 0xbe, 0x62, 0x86, 0x72, 0x4d, 0x40, 0xd5, 0xf0, 0x33, 0x3b, 0xa4, 0xfc, 0x94, 0x3c, 0x0f, 0x0f, 0x06, 0xcd, 0xbb, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256k1_1481 = { .name = "ecdh_secp256k1_1481", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1481_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1481_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1481_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1482 for ECDH, tcId is 41 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1482_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xed, 0x35, 0x3c, 0x9f, 0x10, 0x39, 0xed, 0xcc, 0x9c, 0xc5, 0x33, 0x6c, 0x03, 0x4d, 0xc1, 0x31, 0xa4, 0x08, 0x76, 0x92, 0xc2, 0xe5, 0x6b, 0xc1, 0xdd, 0x19, 0x04, 0xe3, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_1482_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1482_sharedsecret[] = { 0x7c, 0x07, 0xb1, 0x99, 0xb6, 0xa6, 0x2e, 0x7a, 0xc6, 0x46, 0xc7, 0xe1, 0xde, 0xe9, 0x4a, 0xca, 0x55, 0xde, 0x1a, 0x97, 0x25, 0x1d, 0xdf, 0x92, 0xfc, 0xd4, 0xfe, 0x01, 0x45, 0xb4, 0x0f, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_1482 = { .name = "ecdh_secp256k1_1482", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1482_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1482_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1482_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 41 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1483 for ECDH, tcId is 42 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1483_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x03, 0x1a, 0x6b, 0xf3, 0x44, 0xb8, 0x67, 0x30, 0xac, 0x5c, 0x54, 0xa7, 0x75, 0x1a, 0xef, 0xdb, 0xa1, 0x35, 0x75, 0x9b, 0x9d, 0x53, 0x5c, 0xa6, 0x41, 0x11, 0xf2, 0x98, 0xa3, 0x8d, }; static const unsigned char ecdh_secp256k1_1483_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1483_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_1483 = { .name = "ecdh_secp256k1_1483", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1483_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1483_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1483_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 42 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1484 for ECDH, tcId is 43 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1484_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe5, 0x94, 0x0c, 0xbb, 0x47, 0x98, 0xcf, 0x53, 0xa3, 0xab, 0x58, 0x8a, 0xe5, 0x10, 0x24, 0x5e, 0xca, 0x8a, 0x64, 0x62, 0xac, 0xa3, 0x59, 0xbe, 0xed, 0x0d, 0x67, 0x58, 0xa2, }; static const unsigned char ecdh_secp256k1_1484_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1484_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_1484 = { .name = "ecdh_secp256k1_1484", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1484_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1484_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1484_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 43 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1485 for ECDH, tcId is 44 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1485_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x41, 0x06, 0xa3, 0x69, 0x06, 0x8d, 0x45, 0x4e, 0xa4, 0xb9, 0xc3, 0xac, 0x61, 0x77, 0xf8, 0x7f, 0xc8, 0xfd, 0x3a, 0xa2, 0x40, 0xb2, 0xcc, 0xb4, 0x88, 0x2b, 0xdc, 0xcb, 0xd4, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1485_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1485_sharedsecret[] = { 0xe5, 0x9d, 0xdc, 0x76, 0x46, 0xe4, 0xae, 0xf0, 0x62, 0x3c, 0x71, 0xc4, 0x86, 0xf2, 0x4d, 0x5d, 0x32, 0xf7, 0x25, 0x7e, 0xf3, 0xda, 0xb8, 0xfa, 0x52, 0x4b, 0x39, 0x4e, 0xae, 0x19, 0xeb, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp256k1_1485 = { .name = "ecdh_secp256k1_1485", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1485_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1485_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1485_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 44 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1486 for ECDH, tcId is 45 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1486_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x3b, 0xc6, 0xf0, 0x84, 0x31, 0xe7, 0x29, 0xed, 0x28, 0x63, 0xf2, 0xf4, 0xac, 0x8a, 0x30, 0x27, 0x96, 0x95, 0xc8, 0x10, 0x9c, 0x34, 0x0a, 0x39, 0xfa, 0x86, 0xf4, 0x51, 0xcd, }; static const unsigned char ecdh_secp256k1_1486_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1486_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_1486 = { .name = "ecdh_secp256k1_1486", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1486_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1486_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1486_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 45 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1487 for ECDH, tcId is 46 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1487_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc4, 0x39, 0x0f, 0x7b, 0xce, 0x18, 0xd6, 0x12, 0xd7, 0x9c, 0x0d, 0x0b, 0x53, 0x75, 0xcf, 0xd8, 0x69, 0x6a, 0x37, 0xef, 0x63, 0xcb, 0xf5, 0xc6, 0x04, 0x79, 0x0b, 0xaa, 0x62, }; static const unsigned char ecdh_secp256k1_1487_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_1487_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_1487 = { .name = "ecdh_secp256k1_1487", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1487_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1487_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1487_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 46 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1488 for ECDH, tcId is 47 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1488_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_1488_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1488_sharedsecret[] = { 0xf3, 0x62, 0x28, 0x9d, 0x3a, 0x80, 0x3d, 0x56, 0x8a, 0x0a, 0x42, 0x76, 0x70, 0x70, 0xd7, 0x93, 0xbd, 0x70, 0x89, 0x1f, 0xb5, 0xe0, 0x3b, 0x01, 0x41, 0x3b, 0x6d, 0x3f, 0x1e, 0xb5, 0x2f, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_1488 = { .name = "ecdh_secp256k1_1488", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1488_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1488_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1488_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 47 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1489 for ECDH, tcId is 48 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1489_peerpubkey[] = { 0x22, 0xb9, 0x61, 0xed, 0x14, 0xf6, 0x36, 0x89, 0x03, 0xfe, 0xeb, 0x42, 0xd6, 0x3d, 0x37, 0xbd, 0x11, 0x30, 0x28, 0x93, 0xe8, 0xff, 0x64, 0xc1, 0xa8, 0xe7, 0xfd, 0x07, 0x31, 0x43, 0x9b, 0xb6, 0x98, 0x1a, 0x71, 0x20, 0x63, 0xbf, 0xba, 0x34, 0xd1, 0x77, 0x41, 0x2b, 0xb2, 0x84, 0xc4, 0x36, 0x19, 0x53, 0xde, 0xcf, 0x29, 0xbb, 0xde, 0x01, 0x85, 0xa5, 0x8b, 0xd0, 0x2f, 0x3b, 0xe4, 0x30, }; static const unsigned char ecdh_secp256k1_1489_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1489_sharedsecret[] = { 0xba, 0xe2, 0x29, 0xe6, 0xd0, 0x01, 0xfd, 0x47, 0x74, 0x1a, 0xee, 0xe8, 0x60, 0x04, 0x8a, 0x85, 0x54, 0x32, 0x07, 0x6f, 0xe2, 0x70, 0xf6, 0x32, 0xf4, 0x6d, 0x13, 0x01, 0x02, 0x2b, 0x64, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_1489 = { .name = "ecdh_secp256k1_1489", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1489_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1489_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1489_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 48 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1490 for ECDH, tcId is 49 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1490_peerpubkey[] = { 0x2f, 0x92, 0x45, 0xba, 0xc6, 0xfa, 0x95, 0x9b, 0x4f, 0x02, 0x77, 0x3e, 0x21, 0x41, 0x1f, 0x48, 0xb7, 0x4f, 0x98, 0x06, 0xfe, 0x4d, 0x32, 0xe3, 0x6b, 0xdf, 0x9a, 0xb0, 0x28, 0x14, 0xf3, 0x53, 0x57, 0x45, 0xda, 0x33, 0x4d, 0x06, 0xba, 0xfe, 0x2d, 0x83, 0xc2, 0x35, 0xf0, 0xc7, 0xa2, 0x9f, 0x8f, 0x04, 0x27, 0x22, 0xec, 0x34, 0xe5, 0x3a, 0xa9, 0x6d, 0x97, 0xa3, 0x31, 0xa7, 0x33, 0xef, }; static const unsigned char ecdh_secp256k1_1490_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1490_sharedsecret[] = { 0xe9, 0x0b, 0x9e, 0x81, 0xbd, 0x01, 0x3d, 0x34, 0x9f, 0x70, 0xfd, 0xe1, 0xb5, 0x1b, 0xad, 0x04, 0xc5, 0x81, 0x01, 0x1c, 0x68, 0xf0, 0xc2, 0x05, 0x3a, 0xc9, 0x1d, 0xc8, 0x18, 0x7a, 0xbb, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1490 = { .name = "ecdh_secp256k1_1490", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1490_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1490_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1490_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 49 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1491 for ECDH, tcId is 50 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1491_peerpubkey[] = { 0x1e, 0x39, 0x6a, 0x25, 0x25, 0xbc, 0x3f, 0xb0, 0x0a, 0xf8, 0x98, 0xb0, 0x6b, 0xb8, 0x7c, 0x1d, 0x67, 0x4f, 0xc0, 0x66, 0x2b, 0x86, 0x7f, 0xfa, 0xc0, 0x8e, 0xb0, 0xdb, 0xa2, 0x14, 0x6c, 0x21, 0xa8, 0xb8, 0x42, 0x9f, 0x11, 0x80, 0x36, 0x49, 0xbe, 0x34, 0xae, 0x51, 0x5c, 0x17, 0x3a, 0x43, 0xba, 0x74, 0xf1, 0x3e, 0xbb, 0xd0, 0xe2, 0x61, 0x01, 0x1c, 0x16, 0x2e, 0x57, 0x35, 0x99, 0xb4, }; static const unsigned char ecdh_secp256k1_1491_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1491_sharedsecret[] = { 0xde, 0x7c, 0xde, 0x6b, 0x58, 0x06, 0xa3, 0x25, 0xda, 0x84, 0x5e, 0x9a, 0x19, 0x1e, 0x18, 0x37, 0x78, 0x68, 0x63, 0x6e, 0x5e, 0xf1, 0xf5, 0xfa, 0x08, 0xe7, 0x56, 0xc0, 0x2d, 0x6f, 0xd4, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_1491 = { .name = "ecdh_secp256k1_1491", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1491_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1491_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1491_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 50 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1492 for ECDH, tcId is 51 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1492_peerpubkey[] = { 0x45, 0x21, 0x58, 0x30, 0x3b, 0x37, 0xff, 0x9b, 0xeb, 0xca, 0x72, 0x0e, 0xa1, 0x08, 0x5e, 0xfa, 0xa4, 0xf8, 0x59, 0xdb, 0x95, 0x0a, 0x99, 0xfc, 0xcd, 0x9d, 0x2d, 0x17, 0x92, 0x73, 0xab, 0xb1, 0x08, 0xa9, 0x08, 0x3f, 0x80, 0x75, 0x00, 0x59, 0x43, 0xbd, 0x68, 0xc5, 0x66, 0xec, 0x1f, 0x2f, 0x06, 0x76, 0x64, 0xda, 0x92, 0x12, 0xec, 0x18, 0x33, 0x79, 0x9b, 0xba, 0x88, 0x1d, 0x8e, 0x8b, }; static const unsigned char ecdh_secp256k1_1492_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1492_sharedsecret[] = { 0x96, 0x32, 0x8f, 0xa8, 0x40, 0x38, 0xa6, 0x3c, 0x81, 0x7e, 0xf7, 0xcd, 0x13, 0xb7, 0x97, 0x94, 0xa2, 0xdb, 0x46, 0x7d, 0xd3, 0xbd, 0x87, 0x69, 0xdf, 0x78, 0x2a, 0xda, 0xce, 0x3c, 0x82, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_1492 = { .name = "ecdh_secp256k1_1492", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1492_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1492_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1492_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 51 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1493 for ECDH, tcId is 52 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1493_peerpubkey[] = { 0x5a, 0x2a, 0x40, 0x16, 0x66, 0xe0, 0xf1, 0x97, 0x8c, 0x6f, 0x30, 0xae, 0xc5, 0x3f, 0xee, 0x58, 0xb4, 0xc4, 0xf7, 0x5e, 0x7c, 0x1a, 0x00, 0x15, 0x6a, 0x36, 0xad, 0x27, 0xc0, 0xa5, 0xa2, 0x95, 0x65, 0x85, 0x77, 0xe6, 0x57, 0x22, 0x3b, 0x8c, 0x20, 0xc8, 0x26, 0x24, 0x3b, 0x5a, 0xe2, 0xca, 0x0f, 0x61, 0x48, 0xc2, 0x52, 0x9e, 0xc6, 0xd6, 0x0e, 0xc2, 0x60, 0x91, 0x66, 0x41, 0xd8, 0xfa, }; static const unsigned char ecdh_secp256k1_1493_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1493_sharedsecret[] = { 0xb6, 0x69, 0x9f, 0xe9, 0xa1, 0x8c, 0x2d, 0x0d, 0x14, 0xe9, 0x54, 0x05, 0x13, 0x3e, 0x00, 0x0b, 0x16, 0x7d, 0xc2, 0xe5, 0x45, 0x1d, 0xcd, 0xf0, 0x9a, 0xde, 0x49, 0xba, 0x0d, 0xb2, 0x13, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_1493 = { .name = "ecdh_secp256k1_1493", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1493_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1493_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1493_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 52 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1494 for ECDH, tcId is 53 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1494_peerpubkey[] = { 0xb2, 0xcd, 0x03, 0x95, 0x00, 0xbc, 0xf4, 0x60, 0xe2, 0x4f, 0xd8, 0x03, 0x83, 0xb6, 0x0e, 0xb8, 0x1a, 0x56, 0xf4, 0x67, 0x07, 0x7e, 0x76, 0x82, 0x31, 0x55, 0x3a, 0x0f, 0xa0, 0xda, 0xfc, 0xc8, 0x1d, 0x4a, 0x1b, 0x8f, 0xd8, 0x8b, 0x3b, 0x23, 0xf2, 0xd5, 0x03, 0x28, 0x5c, 0x9d, 0x72, 0xbb, 0xa4, 0x48, 0xc1, 0x5b, 0xc0, 0x16, 0xc6, 0x20, 0xf7, 0x07, 0x59, 0x9a, 0x12, 0x95, 0x46, 0xae, }; static const unsigned char ecdh_secp256k1_1494_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1494_sharedsecret[] = { 0x7a, 0x23, 0xae, 0xe5, 0xb0, 0xfe, 0xd1, 0x66, 0x38, 0xf0, 0xe2, 0xeb, 0x05, 0xfb, 0xa1, 0xfd, 0x44, 0x16, 0x7d, 0x49, 0x6e, 0xbe, 0xb2, 0x74, 0xdb, 0x21, 0x85, 0x93, 0xb4, 0xea, 0x20, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1494 = { .name = "ecdh_secp256k1_1494", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1494_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1494_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1494_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 53 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1495 for ECDH, tcId is 54 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1495_peerpubkey[] = { 0x03, 0xcf, 0x50, 0x0d, 0x83, 0x8c, 0x9f, 0xcb, 0x97, 0xd8, 0xdd, 0xba, 0x24, 0x66, 0xec, 0x6e, 0x47, 0x44, 0x98, 0x31, 0x5d, 0x6c, 0x2a, 0x43, 0x11, 0x03, 0x08, 0xf2, 0x24, 0x59, 0xd4, 0x9b, 0x07, 0x87, 0x5a, 0xae, 0xd2, 0xed, 0xab, 0xed, 0x84, 0x2f, 0xb1, 0x60, 0x8c, 0xa7, 0x06, 0xbd, 0x39, 0xd6, 0x02, 0x1a, 0x60, 0xbc, 0x27, 0x09, 0x47, 0xc1, 0x20, 0x53, 0xc9, 0xdb, 0xaf, 0xa1, }; static const unsigned char ecdh_secp256k1_1495_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1495_sharedsecret[] = { 0xd8, 0xae, 0xf4, 0xc5, 0xc8, 0xb6, 0x08, 0x86, 0xd7, 0xf3, 0x3c, 0xdd, 0x23, 0x90, 0xc2, 0x13, 0x11, 0xe6, 0x9f, 0x60, 0x6d, 0xc7, 0x77, 0xdc, 0x41, 0xc4, 0x3a, 0x46, 0x19, 0x95, 0xc3, 0x15, }; static const wycheproof_ecdh_test ecdh_secp256k1_1495 = { .name = "ecdh_secp256k1_1495", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1495_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1495_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1495_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 54 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1496 for ECDH, tcId is 55 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1496_peerpubkey[] = { 0x0b, 0x6f, 0x2c, 0xb6, 0x29, 0x54, 0xf9, 0x94, 0x56, 0x4e, 0x14, 0x19, 0xcf, 0x9d, 0x59, 0x82, 0xec, 0x65, 0x11, 0xe7, 0xfa, 0x7e, 0x17, 0xf9, 0x68, 0x5e, 0x01, 0x99, 0x49, 0x90, 0x6d, 0xf2, 0xfb, 0x42, 0x9b, 0x05, 0x54, 0xa2, 0x5a, 0x4a, 0x0c, 0x51, 0x02, 0x70, 0xd3, 0xcc, 0x73, 0xe6, 0xcf, 0xec, 0x9b, 0xc2, 0xe6, 0x3c, 0xbd, 0x2b, 0x7a, 0xa0, 0xdb, 0x98, 0xe1, 0xf3, 0x30, 0xcd, }; static const unsigned char ecdh_secp256k1_1496_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1496_sharedsecret[] = { 0x4c, 0x08, 0x92, 0xba, 0xcd, 0x98, 0x3e, 0xc0, 0x01, 0x3f, 0x47, 0x7d, 0x94, 0xd8, 0xfb, 0x85, 0x05, 0x85, 0xef, 0xf2, 0x19, 0x7b, 0x53, 0xd5, 0x66, 0xa9, 0x92, 0x6b, 0xd8, 0x98, 0xd9, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_1496 = { .name = "ecdh_secp256k1_1496", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1496_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1496_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1496_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 55 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1497 for ECDH, tcId is 56 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1497_peerpubkey[] = { 0x30, 0x25, 0xb0, 0x46, 0xf4, 0xa7, 0x0e, 0x06, 0x33, 0x0f, 0x3b, 0x14, 0xc4, 0xfa, 0x3e, 0xc1, 0xe0, 0x4f, 0xe1, 0x9e, 0xd8, 0xc9, 0x03, 0x52, 0xdc, 0x6f, 0xf5, 0x62, 0x7c, 0xa7, 0xb3, 0xb3, 0xa2, 0x64, 0xd5, 0xad, 0x9f, 0x06, 0xd8, 0x48, 0x74, 0x30, 0xf6, 0x54, 0xf7, 0xdd, 0x8f, 0x67, 0x35, 0xfc, 0x83, 0x6e, 0xf4, 0x8d, 0x6d, 0x4d, 0x49, 0x96, 0xa9, 0xc2, 0x0a, 0xf3, 0x20, 0xee, }; static const unsigned char ecdh_secp256k1_1497_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1497_sharedsecret[] = { 0x6e, 0x21, 0x19, 0x93, 0x5a, 0x5c, 0x25, 0x21, 0x18, 0x2a, 0x70, 0x1d, 0x5a, 0x13, 0x21, 0x5a, 0x7d, 0xfb, 0x8a, 0x1f, 0x00, 0x1b, 0x38, 0x87, 0xe8, 0xae, 0x51, 0xbf, 0x25, 0x9b, 0x18, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_1497 = { .name = "ecdh_secp256k1_1497", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1497_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1497_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1497_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 56 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1498 for ECDH, tcId is 57 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1498_peerpubkey[] = { 0x7d, 0x3b, 0x84, 0x28, 0xc8, 0x02, 0x99, 0xa4, 0xff, 0x1d, 0x96, 0xed, 0x75, 0xa5, 0xa4, 0x46, 0x29, 0xfd, 0x03, 0x13, 0xc0, 0x97, 0xc4, 0x78, 0xe5, 0x5f, 0x2f, 0xa0, 0xae, 0x45, 0xb6, 0x91, 0xbb, 0x49, 0x63, 0xb5, 0xcc, 0x09, 0x5a, 0xbe, 0x5d, 0xcf, 0xe9, 0x83, 0x99, 0x31, 0x7f, 0xd5, 0xad, 0x59, 0xf3, 0x67, 0x4c, 0x07, 0x06, 0x3a, 0x91, 0x23, 0xa2, 0xaa, 0x24, 0x81, 0x45, 0x85, }; static const unsigned char ecdh_secp256k1_1498_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1498_sharedsecret[] = { 0x2b, 0x8b, 0x0d, 0x4e, 0xee, 0x83, 0xd1, 0xc4, 0xb1, 0xf2, 0xa6, 0x71, 0x44, 0xfe, 0xf7, 0x8e, 0x7f, 0xaa, 0x86, 0xe6, 0xd5, 0xd6, 0xa8, 0xb7, 0x2b, 0x35, 0x9c, 0x4f, 0x37, 0x3a, 0xdb, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256k1_1498 = { .name = "ecdh_secp256k1_1498", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1498_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1498_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1498_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 57 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1499 for ECDH, tcId is 58 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1499_peerpubkey[] = { 0xfb, 0x77, 0x84, 0x18, 0x84, 0xd3, 0x0f, 0xa5, 0xb7, 0x3a, 0xd2, 0x1d, 0x0a, 0x5a, 0xe4, 0x0c, 0x53, 0xa9, 0xfa, 0xa5, 0xd3, 0x25, 0x69, 0x94, 0x36, 0x33, 0x8c, 0xee, 0x4b, 0xa2, 0x13, 0x69, 0x7b, 0xd7, 0x32, 0xd4, 0x7c, 0x86, 0xdc, 0xd6, 0x36, 0x91, 0x09, 0x7b, 0x19, 0x99, 0xc9, 0xf0, 0xa6, 0x60, 0xa9, 0xc3, 0xd6, 0x13, 0x67, 0x10, 0x39, 0xcf, 0x17, 0x63, 0x46, 0x7d, 0x81, 0x40, }; static const unsigned char ecdh_secp256k1_1499_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1499_sharedsecret[] = { 0x58, 0xdb, 0xf6, 0xad, 0x5e, 0x79, 0x19, 0x56, 0xe8, 0x63, 0x54, 0x27, 0x25, 0x2c, 0xf5, 0xe5, 0x18, 0xbd, 0x10, 0xed, 0x2a, 0x93, 0x6a, 0x1f, 0x37, 0x47, 0xba, 0x4e, 0xa7, 0x98, 0x32, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_1499 = { .name = "ecdh_secp256k1_1499", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1499_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1499_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1499_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 58 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1500 for ECDH, tcId is 59 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1500_peerpubkey[] = { 0x9a, 0xef, 0x51, 0x38, 0x3a, 0x55, 0x6c, 0xf3, 0x17, 0xfe, 0x68, 0xbe, 0xa6, 0xa8, 0x5a, 0x25, 0x48, 0x25, 0xec, 0x5b, 0x3f, 0x13, 0x58, 0xae, 0xa2, 0x09, 0xa4, 0x3c, 0xa3, 0x8c, 0x66, 0x35, 0x1a, 0xee, 0x1a, 0x91, 0xae, 0xb2, 0xa4, 0xdc, 0xad, 0x73, 0x97, 0x22, 0xf4, 0x4c, 0x43, 0x7d, 0xfd, 0x32, 0x73, 0x1f, 0x08, 0x62, 0xdd, 0x75, 0x1b, 0x80, 0xbd, 0x88, 0xd0, 0x96, 0x9b, 0xd6, }; static const unsigned char ecdh_secp256k1_1500_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1500_sharedsecret[] = { 0x12, 0x3b, 0x49, 0x40, 0x58, 0xde, 0xc3, 0x2f, 0xb7, 0x4f, 0xde, 0xb1, 0xaa, 0x9a, 0x4d, 0x52, 0xbf, 0xdd, 0xf2, 0xd9, 0x0b, 0x9b, 0x46, 0xed, 0xbc, 0xf4, 0xcc, 0x95, 0xea, 0x73, 0x62, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256k1_1500 = { .name = "ecdh_secp256k1_1500", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1500_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1500_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1500_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 59 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1501 for ECDH, tcId is 60 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1501_peerpubkey[] = { 0x27, 0x69, 0xdf, 0x33, 0x51, 0x32, 0xf2, 0x02, 0x5e, 0x64, 0x10, 0x48, 0x04, 0x67, 0x87, 0x37, 0x86, 0x0e, 0xe6, 0x6e, 0x07, 0xe6, 0x75, 0xf7, 0x20, 0xe7, 0xd4, 0xef, 0x5c, 0x38, 0xa2, 0xc2, 0x81, 0xf8, 0x0c, 0x3b, 0x6d, 0x47, 0xdb, 0x0a, 0x41, 0x2e, 0x6e, 0xdd, 0x3c, 0x5b, 0xf4, 0x8a, 0xcc, 0xac, 0x14, 0x97, 0xb5, 0x9e, 0x13, 0xb1, 0x5d, 0xfc, 0x2c, 0xd1, 0x5e, 0x6a, 0xe4, 0x7a, }; static const unsigned char ecdh_secp256k1_1501_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1501_sharedsecret[] = { 0xaf, 0x4b, 0x79, 0xef, 0xc4, 0x50, 0x63, 0x0b, 0x8c, 0x02, 0x76, 0x97, 0xe2, 0x37, 0x6f, 0x14, 0x84, 0x2b, 0xab, 0xad, 0x81, 0xbd, 0x68, 0x59, 0x2c, 0x37, 0x27, 0x9a, 0x9f, 0xc4, 0x1a, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_1501 = { .name = "ecdh_secp256k1_1501", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1501_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1501_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1501_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 60 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1502 for ECDH, tcId is 61 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1502_peerpubkey[] = { 0x61, 0xb8, 0xc4, 0x87, 0x50, 0x73, 0x5a, 0x6b, 0x5c, 0xc4, 0x5b, 0x69, 0x19, 0x06, 0xe5, 0xcc, 0x29, 0x2d, 0x59, 0x69, 0xbb, 0x1d, 0x6f, 0xf9, 0x0f, 0xf4, 0x46, 0xd9, 0x48, 0x11, 0xce, 0x7c, 0x28, 0x53, 0x97, 0x74, 0x19, 0xcb, 0xa2, 0xb9, 0x2c, 0xc5, 0x74, 0xab, 0xce, 0x03, 0x04, 0x73, 0xeb, 0x00, 0x83, 0x50, 0x56, 0x6d, 0x7e, 0xaa, 0x24, 0xcb, 0x9d, 0xaa, 0xd7, 0x07, 0x10, 0xed, }; static const unsigned char ecdh_secp256k1_1502_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1502_sharedsecret[] = { 0x08, 0xb4, 0x32, 0x6b, 0x42, 0xd8, 0x17, 0xe2, 0xf8, 0xbc, 0x09, 0xf2, 0x6f, 0x49, 0xb7, 0x20, 0xaf, 0xce, 0xde, 0x10, 0x23, 0x6d, 0x0a, 0x25, 0xe7, 0xe9, 0x51, 0x8e, 0xac, 0x96, 0xe3, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_1502 = { .name = "ecdh_secp256k1_1502", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1502_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1502_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1502_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 61 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1503 for ECDH, tcId is 62 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1503_peerpubkey[] = { 0x16, 0xee, 0xab, 0xc8, 0x02, 0xe3, 0x40, 0x9b, 0x7c, 0x7b, 0x3e, 0x76, 0x07, 0xb7, 0x16, 0x62, 0x43, 0xfc, 0x17, 0x46, 0x29, 0x49, 0x48, 0xfc, 0x81, 0x23, 0xb3, 0x99, 0xcf, 0xb8, 0x99, 0x62, 0xfc, 0xbf, 0x0b, 0xf8, 0xa5, 0x19, 0x1c, 0xe9, 0x58, 0xdd, 0x5e, 0xa3, 0xab, 0x63, 0x3c, 0x09, 0x0d, 0x12, 0x59, 0xfb, 0xd9, 0xa9, 0x77, 0xfd, 0xe0, 0xcc, 0x21, 0x2d, 0x5b, 0x3b, 0x98, 0x58, }; static const unsigned char ecdh_secp256k1_1503_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1503_sharedsecret[] = { 0x52, 0x50, 0x5b, 0xfe, 0xa9, 0xd0, 0x66, 0xf0, 0xaa, 0x90, 0x08, 0xe8, 0x38, 0x23, 0x82, 0xc7, 0xd4, 0x84, 0x60, 0xd7, 0x6f, 0x29, 0x62, 0xe5, 0x09, 0x48, 0x2b, 0x6e, 0xb5, 0x6e, 0x0a, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1503 = { .name = "ecdh_secp256k1_1503", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1503_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1503_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1503_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 62 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1504 for ECDH, tcId is 63 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1504_peerpubkey[] = { 0x63, 0xb1, 0xd9, 0x94, 0x91, 0xb4, 0x6c, 0xee, 0x7e, 0x18, 0x6a, 0x24, 0x3b, 0xce, 0x1c, 0xc3, 0x86, 0x29, 0x75, 0x71, 0x85, 0x0a, 0x10, 0xd9, 0xa2, 0x96, 0x2d, 0x76, 0x9a, 0x41, 0x1c, 0x61, 0x63, 0x45, 0xe2, 0x85, 0x32, 0xca, 0xc3, 0x99, 0x60, 0xa2, 0xf1, 0x2b, 0xbd, 0x03, 0x20, 0x5b, 0x77, 0x46, 0x4a, 0x80, 0xa0, 0x41, 0x64, 0x46, 0xe6, 0xff, 0x85, 0x85, 0x1a, 0x00, 0x9f, 0x64, }; static const unsigned char ecdh_secp256k1_1504_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1504_sharedsecret[] = { 0x1e, 0x64, 0x64, 0xf7, 0x8f, 0xbe, 0xde, 0xcd, 0x82, 0x1a, 0x4f, 0xa0, 0x4d, 0x7e, 0x8f, 0x13, 0x64, 0xd3, 0x24, 0xbe, 0x24, 0xd1, 0x22, 0x12, 0x99, 0x46, 0x83, 0xfc, 0x2b, 0x6b, 0xb1, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1504 = { .name = "ecdh_secp256k1_1504", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1504_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1504_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1504_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 63 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1505 for ECDH, tcId is 64 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1505_peerpubkey[] = { 0x75, 0xc7, 0x8a, 0xe9, 0xc9, 0x46, 0x13, 0xdd, 0x05, 0x1e, 0xed, 0x7d, 0xd7, 0xdf, 0x66, 0xa0, 0x81, 0xcd, 0x0a, 0xc2, 0x7c, 0xf6, 0x5e, 0x4e, 0xf0, 0xea, 0x82, 0x62, 0x76, 0xc5, 0xef, 0xcf, 0xa9, 0x2e, 0xd1, 0xc4, 0xff, 0xbb, 0x84, 0x30, 0x1f, 0x5b, 0xb1, 0xc6, 0xbc, 0x9e, 0x14, 0xc6, 0xe6, 0xda, 0xd1, 0xe0, 0x4a, 0x28, 0x78, 0x26, 0x52, 0x84, 0x78, 0xf9, 0xae, 0x16, 0x09, 0xc2, }; static const unsigned char ecdh_secp256k1_1505_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1505_sharedsecret[] = { 0xb4, 0xfc, 0xb7, 0x2d, 0x1f, 0x81, 0xdb, 0x21, 0x1d, 0xd9, 0x40, 0x39, 0xa1, 0x36, 0x8c, 0x2c, 0x4e, 0xff, 0xd1, 0xef, 0xe8, 0x32, 0xf1, 0xa1, 0xdb, 0x2d, 0xae, 0x52, 0x53, 0xc2, 0x73, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_1505 = { .name = "ecdh_secp256k1_1505", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1505_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1505_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1505_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 64 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1506 for ECDH, tcId is 65 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1506_peerpubkey[] = { 0x07, 0x28, 0x38, 0xe4, 0xf9, 0x72, 0xd4, 0xa6, 0x5d, 0x25, 0x8d, 0xbc, 0x32, 0xa5, 0x30, 0xfd, 0xe2, 0xe8, 0x73, 0x53, 0x7b, 0x5a, 0x4a, 0xa7, 0x07, 0xcf, 0x81, 0xce, 0xcc, 0x0f, 0x7f, 0xf1, 0x2e, 0x4b, 0x60, 0x8b, 0x9e, 0x32, 0x1c, 0x9d, 0xb7, 0x2c, 0xf4, 0xd9, 0xba, 0x4b, 0x3c, 0x2c, 0x13, 0x75, 0x60, 0x40, 0xd7, 0x7a, 0xf6, 0xbd, 0x25, 0x1b, 0xc2, 0x4c, 0xf1, 0x86, 0x76, 0xf1, }; static const unsigned char ecdh_secp256k1_1506_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_1506_sharedsecret[] = { 0xf4, 0xf4, 0x92, 0x6b, 0x6f, 0x64, 0xe4, 0x7a, 0xbe, 0xad, 0xbd, 0xc5, 0xa8, 0xa6, 0x77, 0x06, 0xa4, 0x2e, 0x00, 0x77, 0x4e, 0x1c, 0xc5, 0xaf, 0xda, 0x7d, 0x57, 0xce, 0xd6, 0x42, 0x3b, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256k1_1506 = { .name = "ecdh_secp256k1_1506", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1506_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1506_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1506_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 65 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1507 for ECDH, tcId is 66 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1507_peerpubkey[] = { 0x43, 0x01, 0xf5, 0x4b, 0x35, 0x92, 0xd1, 0xea, 0x2a, 0x40, 0x98, 0x9c, 0x94, 0x26, 0x1d, 0x2b, 0x1d, 0x1f, 0xe2, 0x97, 0xed, 0x6e, 0xd6, 0x41, 0x25, 0xee, 0x24, 0x1d, 0xe0, 0x5d, 0x00, 0x4b, 0xc7, 0x90, 0x14, 0xf1, 0x56, 0xe9, 0xb7, 0xbf, 0xb3, 0x6b, 0x8a, 0xd2, 0xd6, 0x6d, 0x55, 0xf3, 0xa7, 0x53, 0x82, 0x9a, 0x9d, 0xdb, 0x86, 0x05, 0x5b, 0xb9, 0x16, 0x6d, 0xd3, 0xaf, 0xf4, 0x57, }; static const unsigned char ecdh_secp256k1_1507_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1507_sharedsecret[] = { 0xfd, 0xc1, 0x5a, 0x26, 0xab, 0xba, 0xde, 0x34, 0x16, 0xe1, 0x20, 0x1a, 0x6d, 0x73, 0x71, 0x28, 0xa2, 0xf8, 0x97, 0xf0, 0xd8, 0x81, 0x08, 0x64, 0x54, 0x53, 0xa1, 0xb3, 0xdd, 0xd0, 0x56, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256k1_1507 = { .name = "ecdh_secp256k1_1507", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1507_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1507_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1507_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 66 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1508 for ECDH, tcId is 67 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1508_peerpubkey[] = { 0x36, 0xb0, 0xf6, 0x6b, 0xf5, 0xf9, 0xfd, 0x4b, 0x2d, 0xf9, 0xcd, 0xae, 0x2a, 0xf8, 0x73, 0xa0, 0x75, 0xc5, 0x54, 0x97, 0xd7, 0xfe, 0xc4, 0x73, 0x7a, 0x7c, 0x96, 0x43, 0xc2, 0xc7, 0x6f, 0xe5, 0xda, 0x9f, 0x72, 0x87, 0xb3, 0xcd, 0x4e, 0x5f, 0x05, 0xb9, 0xa1, 0xa4, 0xf6, 0x4e, 0x8a, 0x8d, 0x96, 0xc3, 0x16, 0xe4, 0x52, 0x59, 0x4d, 0x02, 0xa4, 0x59, 0x2a, 0x21, 0x07, 0xec, 0xe9, 0x0b, }; static const unsigned char ecdh_secp256k1_1508_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1508_sharedsecret[] = { 0xe3, 0x63, 0x48, 0xe3, 0xa4, 0x64, 0xbc, 0x51, 0x83, 0x84, 0x80, 0x6c, 0x54, 0x8e, 0x15, 0x6e, 0xdd, 0x99, 0x4c, 0xb6, 0x94, 0x64, 0x73, 0xc2, 0x65, 0xa2, 0x49, 0x14, 0xd5, 0x55, 0x9f, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1508 = { .name = "ecdh_secp256k1_1508", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1508_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1508_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1508_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 67 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1509 for ECDH, tcId is 68 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1509_peerpubkey[] = { 0x82, 0xab, 0xb5, 0x8a, 0xfb, 0x62, 0xd2, 0x61, 0x87, 0x8b, 0xde, 0xe1, 0x26, 0x64, 0xdf, 0x14, 0x99, 0xb8, 0x24, 0xf1, 0xd6, 0x0f, 0xb0, 0x28, 0x11, 0x64, 0x2c, 0xb0, 0x2f, 0x4a, 0xff, 0x5d, 0x30, 0x71, 0x98, 0x35, 0xd9, 0x6f, 0x32, 0xdc, 0x03, 0xc4, 0x9d, 0x81, 0x5f, 0xfa, 0x21, 0x28, 0x57, 0x33, 0x13, 0x7f, 0x50, 0x7c, 0xe3, 0x16, 0xce, 0xc6, 0x5c, 0xa5, 0x62, 0xce, 0x2a, 0xd0, }; static const unsigned char ecdh_secp256k1_1509_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1509_sharedsecret[] = { 0x7d, 0x65, 0x68, 0x4b, 0xdc, 0xe4, 0xac, 0x95, 0xdb, 0x00, 0x2f, 0xba, 0x35, 0x0d, 0xc8, 0x9d, 0x0d, 0x0f, 0xc9, 0xe1, 0x22, 0x60, 0xd0, 0x18, 0x68, 0x54, 0x3f, 0x2a, 0x6c, 0x8c, 0x5b, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1509 = { .name = "ecdh_secp256k1_1509", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1509_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1509_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1509_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 68 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1510 for ECDH, tcId is 69 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1510_peerpubkey[] = { 0x7d, 0xe7, 0xb7, 0xcf, 0x5c, 0x5f, 0xf4, 0x24, 0x0d, 0xaf, 0x31, 0xa5, 0x0a, 0xc6, 0xcf, 0x6b, 0x16, 0x9a, 0xad, 0x07, 0xd2, 0xc5, 0x93, 0x6c, 0x73, 0xb8, 0x3e, 0xe3, 0x98, 0x7e, 0x22, 0xa1, 0x94, 0x0c, 0x1b, 0xd7, 0x8e, 0x4b, 0xe6, 0x69, 0x25, 0x85, 0xc9, 0x9d, 0xc9, 0x2b, 0x47, 0x67, 0x1e, 0x2c, 0xcb, 0xcf, 0x12, 0xa9, 0xa9, 0x85, 0x4c, 0x66, 0x07, 0xf9, 0x82, 0x13, 0xc1, 0x08, }; static const unsigned char ecdh_secp256k1_1510_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1510_sharedsecret[] = { 0x6e, 0xc6, 0xba, 0x23, 0x74, 0xab, 0x0a, 0x9a, 0xe6, 0x63, 0xf3, 0xf7, 0x36, 0x71, 0x15, 0x8a, 0xaa, 0xba, 0xc3, 0xac, 0x68, 0x9d, 0x6c, 0x27, 0x02, 0xeb, 0xdf, 0x41, 0x86, 0x59, 0x7a, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256k1_1510 = { .name = "ecdh_secp256k1_1510", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1510_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1510_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1510_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 69 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1511 for ECDH, tcId is 70 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1511_peerpubkey[] = { 0x06, 0xfa, 0x93, 0x52, 0x72, 0x94, 0xc8, 0x53, 0x3a, 0xa4, 0x01, 0xce, 0x4e, 0x6c, 0x8a, 0xeb, 0x05, 0xa6, 0x92, 0x1b, 0xc4, 0x87, 0x98, 0xa8, 0xe2, 0x0a, 0x0f, 0x84, 0xa5, 0x08, 0x5a, 0xf4, 0xec, 0x48, 0x28, 0xf8, 0x39, 0x4d, 0x22, 0xde, 0x43, 0x04, 0x31, 0x17, 0xb8, 0x59, 0x5f, 0xb1, 0x13, 0x24, 0x5f, 0x72, 0x85, 0xcb, 0x35, 0x43, 0x93, 0x89, 0xe8, 0x54, 0x7a, 0x10, 0x50, 0x39, }; static const unsigned char ecdh_secp256k1_1511_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1511_sharedsecret[] = { 0x6d, 0x6e, 0x87, 0x78, 0x7d, 0x0a, 0x94, 0x7e, 0xcf, 0xbf, 0x79, 0x62, 0x14, 0x2f, 0xde, 0x8f, 0xf9, 0xb5, 0x90, 0xe4, 0x72, 0xc0, 0xc4, 0x6b, 0xbc, 0x5d, 0x39, 0x02, 0x0e, 0x4f, 0x78, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256k1_1511 = { .name = "ecdh_secp256k1_1511", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1511_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1511_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1511_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 70 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1512 for ECDH, tcId is 71 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1512_peerpubkey[] = { 0x8a, 0x4f, 0x62, 0x52, 0x10, 0xb4, 0x48, 0xdc, 0x84, 0x6a, 0xd2, 0x39, 0x9b, 0x31, 0xcd, 0x1b, 0xc3, 0xf1, 0x78, 0x8c, 0x7b, 0xed, 0x69, 0xcc, 0x1c, 0xb7, 0xaa, 0xc8, 0xab, 0x28, 0xd5, 0x39, 0x30, 0x07, 0xc6, 0xf1, 0x1f, 0x3e, 0x24, 0x8d, 0xe6, 0x51, 0xc6, 0x62, 0x2d, 0xe3, 0x08, 0xee, 0x55, 0x76, 0xbe, 0x84, 0xef, 0x1e, 0xd8, 0xed, 0x91, 0xfd, 0x24, 0x4f, 0x14, 0xfc, 0x20, 0x53, }; static const unsigned char ecdh_secp256k1_1512_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1512_sharedsecret[] = { 0x56, 0xea, 0x43, 0x82, 0xf8, 0xe1, 0xab, 0xfc, 0xb2, 0x11, 0x98, 0x9f, 0x50, 0x06, 0x76, 0x44, 0x9a, 0xbc, 0xeb, 0xfe, 0x2c, 0xd2, 0x20, 0x4d, 0xd8, 0x92, 0x3d, 0xeb, 0x53, 0x0a, 0x6c, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256k1_1512 = { .name = "ecdh_secp256k1_1512", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1512_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1512_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1512_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 71 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1513 for ECDH, tcId is 72 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1513_peerpubkey[] = { 0x88, 0x5e, 0x45, 0x2c, 0xbb, 0x0e, 0x4b, 0x2a, 0x97, 0x68, 0xb7, 0x59, 0x6c, 0x15, 0x31, 0x98, 0xa9, 0x22, 0xda, 0xbb, 0xb8, 0xd0, 0xca, 0x1d, 0xc3, 0xfa, 0xf4, 0xf0, 0x97, 0xf0, 0x91, 0x13, 0xbe, 0x9a, 0xaa, 0x63, 0x09, 0x18, 0xd5, 0x05, 0x60, 0x53, 0xec, 0xf7, 0x38, 0x8f, 0x44, 0x8b, 0x91, 0x2d, 0x9c, 0xcf, 0xbe, 0xd8, 0x0d, 0x7c, 0xa2, 0x3c, 0x0e, 0x79, 0x91, 0xa3, 0x49, 0x01, }; static const unsigned char ecdh_secp256k1_1513_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1513_sharedsecret[] = { 0x2c, 0x36, 0x2c, 0x27, 0xb3, 0x10, 0x7e, 0xa8, 0xa0, 0x42, 0xc0, 0x5c, 0xc5, 0x0c, 0x4a, 0x8d, 0xda, 0xae, 0x8c, 0xdc, 0x33, 0xd0, 0x58, 0x49, 0x29, 0x51, 0xa0, 0x3f, 0x8d, 0x8f, 0x81, 0x94, }; static const wycheproof_ecdh_test ecdh_secp256k1_1513 = { .name = "ecdh_secp256k1_1513", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1513_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1513_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1513_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 72 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1514 for ECDH, tcId is 73 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1514_peerpubkey[] = { 0xe2, 0x26, 0xdf, 0x1f, 0xcf, 0x7c, 0x13, 0x7a, 0x41, 0xc9, 0x20, 0xff, 0x74, 0xd6, 0x20, 0x4f, 0xaa, 0x20, 0x93, 0xee, 0xff, 0xc4, 0xa9, 0xee, 0x0a, 0x23, 0xfb, 0x2e, 0x99, 0x40, 0x41, 0xc3, 0x45, 0x71, 0x07, 0x44, 0x2c, 0xc4, 0xb3, 0xaf, 0x63, 0x1c, 0x4d, 0xfb, 0x5f, 0x53, 0xe2, 0xc5, 0x60, 0x8b, 0xed, 0x04, 0xff, 0x66, 0x53, 0xb7, 0x71, 0xf7, 0xcd, 0x46, 0x70, 0xf8, 0x10, 0x34, }; static const unsigned char ecdh_secp256k1_1514_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1514_sharedsecret[] = { 0x01, 0x88, 0xda, 0x28, 0x9c, 0xe8, 0x97, 0x4a, 0x4f, 0x44, 0x52, 0x09, 0x60, 0xfa, 0xe8, 0xb3, 0x53, 0x75, 0x0a, 0xca, 0x78, 0x92, 0x72, 0xe9, 0xf9, 0x0d, 0x12, 0x15, 0xba, 0xcd, 0xd8, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_1514 = { .name = "ecdh_secp256k1_1514", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1514_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1514_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1514_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 73 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1515 for ECDH, tcId is 74 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1515_peerpubkey[] = { 0xf5, 0x3e, 0xad, 0x95, 0x75, 0xee, 0xbb, 0xa3, 0xb0, 0xeb, 0x0d, 0x03, 0x3a, 0xcb, 0x7e, 0x99, 0x38, 0x8e, 0x85, 0x90, 0xb4, 0xad, 0x2d, 0xb5, 0xea, 0x4f, 0x6b, 0xd9, 0xbd, 0xe1, 0x69, 0x95, 0xb5, 0xf3, 0xab, 0x15, 0xf9, 0x73, 0xca, 0x9e, 0x3a, 0xa9, 0xdf, 0xe2, 0x91, 0x4e, 0xeb, 0xbd, 0x2e, 0x11, 0x01, 0x0b, 0x45, 0x55, 0x13, 0x90, 0x79, 0x08, 0x80, 0x03, 0x96, 0xfb, 0x9d, 0x1a, }; static const unsigned char ecdh_secp256k1_1515_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1515_sharedsecret[] = { 0xf7, 0x8b, 0xd7, 0xff, 0x89, 0x9c, 0x81, 0xb8, 0x66, 0xbe, 0x17, 0xc0, 0xa9, 0x4b, 0xec, 0x59, 0x28, 0x38, 0xd7, 0x8d, 0x1f, 0x0c, 0x0c, 0xf5, 0x32, 0x82, 0x9b, 0x6c, 0x46, 0x4c, 0x28, 0xac, }; static const wycheproof_ecdh_test ecdh_secp256k1_1515 = { .name = "ecdh_secp256k1_1515", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1515_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1515_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1515_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 74 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1516 for ECDH, tcId is 75 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1516_peerpubkey[] = { 0x88, 0x27, 0x73, 0xec, 0x7e, 0x10, 0x60, 0x5c, 0x8f, 0x9e, 0x2e, 0x3b, 0x87, 0x00, 0x94, 0x3b, 0xe2, 0x6b, 0xcc, 0x4c, 0x9d, 0x1f, 0xed, 0xf2, 0xbd, 0xcf, 0xb3, 0x69, 0x94, 0xf2, 0x3c, 0x7f, 0x8e, 0x5d, 0x05, 0xb2, 0xfd, 0xd2, 0x95, 0x4b, 0x61, 0x88, 0x73, 0x6e, 0xbe, 0x3f, 0x56, 0x46, 0x60, 0x2a, 0x58, 0xd9, 0x78, 0xb7, 0x16, 0xb5, 0x30, 0x4e, 0xa5, 0x67, 0x77, 0x69, 0x1d, 0xb3, }; static const unsigned char ecdh_secp256k1_1516_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1516_sharedsecret[] = { 0x99, 0xf6, 0x15, 0x1f, 0xba, 0x28, 0x06, 0x7e, 0xac, 0x73, 0x35, 0x49, 0x20, 0xfc, 0xc1, 0xfa, 0x17, 0xfe, 0xa6, 0x32, 0x25, 0xa5, 0x83, 0x32, 0x3c, 0xb6, 0xc3, 0xd4, 0x05, 0x4e, 0xca, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_1516 = { .name = "ecdh_secp256k1_1516", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1516_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1516_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1516_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 75 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1517 for ECDH, tcId is 76 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1517_peerpubkey[] = { 0xa6, 0x0b, 0x64, 0x58, 0x25, 0x6b, 0x38, 0xd4, 0x64, 0x44, 0x51, 0xb4, 0x90, 0xbd, 0x35, 0x7f, 0xea, 0xde, 0x7b, 0xb6, 0xb8, 0x45, 0x3c, 0x1f, 0xc8, 0x97, 0x94, 0xd5, 0xa4, 0x5f, 0x76, 0x8d, 0x81, 0xee, 0xe9, 0x05, 0x48, 0xa5, 0x9e, 0x5d, 0x2c, 0xec, 0xd7, 0x2d, 0x4b, 0x0b, 0x5e, 0x65, 0x74, 0xd6, 0x5a, 0x9d, 0x83, 0x7c, 0x7c, 0x59, 0x0d, 0x1d, 0x12, 0x5e, 0xe3, 0x7c, 0x4d, 0x51, }; static const unsigned char ecdh_secp256k1_1517_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1517_sharedsecret[] = { 0x68, 0xca, 0x39, 0xde, 0x0c, 0xec, 0x22, 0x97, 0x52, 0x9f, 0x56, 0x87, 0x6b, 0xc3, 0xde, 0x7b, 0xe3, 0x70, 0xf3, 0x00, 0xe8, 0x7c, 0x2b, 0x09, 0xcd, 0xbb, 0x51, 0x20, 0x38, 0x2d, 0x69, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_1517 = { .name = "ecdh_secp256k1_1517", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1517_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1517_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1517_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 76 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1518 for ECDH, tcId is 77 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1518_peerpubkey[] = { 0xcb, 0xb0, 0xde, 0xab, 0x12, 0x57, 0x54, 0xf1, 0xfd, 0xb2, 0x03, 0x8b, 0x04, 0x34, 0xed, 0x9c, 0xb3, 0xfb, 0x53, 0xab, 0x73, 0x53, 0x91, 0x12, 0x99, 0x94, 0xa5, 0x35, 0xd9, 0x25, 0xf6, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1518_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1518_sharedsecret[] = { 0xaf, 0x30, 0x6c, 0x99, 0x3d, 0xee, 0x0d, 0xcf, 0xc4, 0x41, 0xeb, 0xe5, 0x33, 0x60, 0xb5, 0x69, 0xe2, 0x1f, 0x18, 0x60, 0x52, 0xdb, 0x81, 0x97, 0xf4, 0xa1, 0x24, 0xfa, 0x77, 0xb9, 0x81, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_1518 = { .name = "ecdh_secp256k1_1518", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1518_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1518_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1518_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 77 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1519 for ECDH, tcId is 78 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1519_peerpubkey[] = { 0x24, 0x80, 0x0d, 0xea, 0xc3, 0xfe, 0x4c, 0x76, 0x5b, 0x6d, 0xec, 0x80, 0xea, 0x29, 0x9d, 0x77, 0x1a, 0xda, 0x4f, 0x30, 0xe4, 0xe1, 0x56, 0xb3, 0xac, 0xb7, 0x20, 0xdb, 0xa3, 0x73, 0x94, 0x71, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_1519_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1519_sharedsecret[] = { 0xaa, 0x7f, 0xc9, 0xfe, 0x60, 0x44, 0x5e, 0xac, 0x24, 0x51, 0xec, 0x24, 0xc1, 0xa4, 0x49, 0x09, 0x84, 0x2f, 0xa1, 0x40, 0x25, 0xf2, 0xa1, 0xd3, 0xdd, 0x7f, 0x31, 0x01, 0x9f, 0x96, 0x2b, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1519 = { .name = "ecdh_secp256k1_1519", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1519_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1519_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1519_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 78 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1520 for ECDH, tcId is 79 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1520_peerpubkey[] = { 0x8f, 0x33, 0x65, 0x2f, 0x5b, 0xda, 0x2c, 0x32, 0x95, 0x3e, 0xbf, 0x2d, 0x2e, 0xca, 0x95, 0xe0, 0x5b, 0x17, 0xc8, 0xab, 0x7d, 0x99, 0x60, 0x1b, 0xee, 0x44, 0x5d, 0xf8, 0x44, 0xd4, 0x6a, 0x36, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_1520_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1520_sharedsecret[] = { 0x08, 0x2a, 0x43, 0xa8, 0x41, 0x77, 0x82, 0xa7, 0x95, 0xc8, 0xd4, 0xc7, 0x0f, 0x43, 0xed, 0xca, 0xbb, 0xc2, 0x45, 0xa8, 0x82, 0x0a, 0xc0, 0x1b, 0xe9, 0x0c, 0x1a, 0xcf, 0x03, 0x43, 0xba, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256k1_1520 = { .name = "ecdh_secp256k1_1520", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1520_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1520_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1520_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 79 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1521 for ECDH, tcId is 80 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1521_peerpubkey[] = { 0x14, 0x6d, 0x3b, 0x65, 0xad, 0xd9, 0xf5, 0x4c, 0xcc, 0xa2, 0x85, 0x33, 0xc8, 0x8e, 0x2c, 0xbc, 0x63, 0xf7, 0x44, 0x3e, 0x16, 0x58, 0x78, 0x3a, 0xb4, 0x1f, 0x8e, 0xf9, 0x7c, 0x2a, 0x10, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1521_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1521_sharedsecret[] = { 0x70, 0x81, 0x0b, 0x47, 0x80, 0xa6, 0x3c, 0x86, 0x04, 0x27, 0xd3, 0xa0, 0x26, 0x9f, 0x6c, 0x9d, 0x3c, 0x2e, 0xa3, 0x34, 0x94, 0xc5, 0x0e, 0x58, 0xa2, 0x0b, 0x94, 0x80, 0x03, 0x4b, 0xc7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1521 = { .name = "ecdh_secp256k1_1521", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1521_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1521_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1521_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 80 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1522 for ECDH, tcId is 81 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1522_peerpubkey[] = { 0xb0, 0x34, 0x44, 0x18, 0xa4, 0x50, 0x4c, 0x07, 0xe7, 0x92, 0x1e, 0xd9, 0xf0, 0x07, 0x14, 0xb5, 0xd3, 0x90, 0xe5, 0xcb, 0x5e, 0x79, 0x3b, 0xb1, 0x46, 0x5f, 0x73, 0x17, 0x4f, 0x6c, 0x26, 0xfe, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_1522_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1522_sharedsecret[] = { 0xa7, 0xd3, 0x4e, 0xe2, 0x5f, 0xbb, 0x35, 0x4f, 0x86, 0x38, 0xd3, 0x18, 0x50, 0xda, 0xb4, 0x1e, 0x4b, 0x08, 0x68, 0x86, 0xf7, 0xed, 0x3f, 0x2d, 0x6e, 0x03, 0x5b, 0xce, 0xb8, 0xca, 0xb8, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1522 = { .name = "ecdh_secp256k1_1522", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1522_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1522_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1522_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 81 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1523 for ECDH, tcId is 82 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1523_peerpubkey[] = { 0x8a, 0x98, 0xc1, 0xbc, 0x6b, 0xe7, 0x5c, 0x57, 0x96, 0xbe, 0x4b, 0x29, 0xdd, 0x88, 0x5c, 0x34, 0x85, 0xe7, 0x5e, 0x37, 0xb4, 0xcc, 0xac, 0x9b, 0x37, 0x25, 0x1e, 0x67, 0x17, 0x5f, 0xf0, 0xd6, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_1523_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1523_sharedsecret[] = { 0x3f, 0x09, 0xcb, 0xc1, 0x2e, 0xd1, 0x70, 0x1f, 0x59, 0xdd, 0x5a, 0xa8, 0x3d, 0xae, 0xf5, 0xe6, 0x67, 0x6a, 0xdf, 0x7f, 0xd2, 0x35, 0xc5, 0x3f, 0x69, 0xae, 0xb5, 0xd5, 0xb6, 0x77, 0x99, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1523 = { .name = "ecdh_secp256k1_1523", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1523_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1523_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1523_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 82 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1524 for ECDH, tcId is 83 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1524_peerpubkey[] = { 0x1f, 0xe1, 0xe5, 0xef, 0x3f, 0xce, 0xb5, 0xc1, 0x35, 0xab, 0x77, 0x41, 0x33, 0x3c, 0xe5, 0xa6, 0xe8, 0x0d, 0x68, 0x16, 0x76, 0x53, 0xf6, 0xb2, 0xb2, 0x4b, 0xcb, 0xcf, 0xaa, 0xaf, 0xf5, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1524_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1524_sharedsecret[] = { 0xe0, 0x4e, 0x88, 0x1f, 0x41, 0x6b, 0xb5, 0xaa, 0x37, 0x96, 0x40, 0x7a, 0xa5, 0xff, 0xdd, 0xf8, 0xe1, 0xb2, 0x44, 0x6b, 0x18, 0x5f, 0x70, 0x0f, 0x69, 0x53, 0x46, 0x83, 0x84, 0xfa, 0xaf, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256k1_1524 = { .name = "ecdh_secp256k1_1524", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1524_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1524_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1524_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 83 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1525 for ECDH, tcId is 84 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1525_peerpubkey[] = { 0x2b, 0x4b, 0xad, 0xfc, 0x97, 0xb1, 0x67, 0x81, 0xbc, 0xff, 0xf4, 0xa5, 0x25, 0xcf, 0x4d, 0xd3, 0x11, 0x94, 0xcb, 0x03, 0xbc, 0xa5, 0x6d, 0x9b, 0x0c, 0xe9, 0x6c, 0x0c, 0x0d, 0x20, 0x40, 0xc0, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_1525_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1525_sharedsecret[] = { 0xad, 0xac, 0xe7, 0x1f, 0x40, 0x00, 0x6c, 0x04, 0x55, 0x75, 0x40, 0xc2, 0xed, 0x81, 0x02, 0xd8, 0x30, 0xc7, 0xf6, 0x38, 0xe2, 0x20, 0x1e, 0xfe, 0xb4, 0x7d, 0x73, 0x2d, 0xa7, 0x9f, 0x13, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256k1_1525 = { .name = "ecdh_secp256k1_1525", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1525_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1525_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1525_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 84 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1526 for ECDH, tcId is 85 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1526_peerpubkey[] = { 0xe6, 0x33, 0xd9, 0x14, 0x38, 0x3e, 0x77, 0x75, 0xd4, 0x02, 0xf5, 0xa8, 0xf3, 0xad, 0x0d, 0xeb, 0x1f, 0x00, 0xd9, 0x1c, 0xcd, 0x99, 0xf3, 0x48, 0xda, 0x96, 0x83, 0x9e, 0xa3, 0xcb, 0x9d, 0x52, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_1526_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1526_sharedsecret[] = { 0xb8, 0xcb, 0xf0, 0x96, 0x8f, 0xb7, 0x0d, 0x39, 0x10, 0x59, 0xd0, 0x90, 0xb3, 0x0d, 0x1c, 0x4e, 0xdc, 0xd2, 0xda, 0xd7, 0xab, 0xbf, 0x7a, 0xa4, 0xad, 0x45, 0x2f, 0x5a, 0x46, 0x44, 0xa7, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp256k1_1526 = { .name = "ecdh_secp256k1_1526", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1526_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1526_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1526_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 85 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1527 for ECDH, tcId is 86 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1527_peerpubkey[] = { 0xd1, 0xc1, 0xb5, 0x09, 0xc9, 0xdd, 0xb7, 0x62, 0x21, 0xa0, 0x66, 0xa2, 0x2a, 0x3c, 0x33, 0x3f, 0xee, 0x5e, 0x1d, 0x2d, 0x1a, 0x4b, 0xab, 0xde, 0x4a, 0x1d, 0x33, 0xec, 0x24, 0x7a, 0x7e, 0xa3, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_1527_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1527_sharedsecret[] = { 0x07, 0x25, 0x72, 0x45, 0xda, 0x4b, 0xc2, 0x66, 0x96, 0xe2, 0x45, 0x53, 0x1c, 0x7a, 0x97, 0xc2, 0xb5, 0x29, 0xf1, 0xca, 0x2d, 0x8c, 0x05, 0x16, 0x26, 0x52, 0x0e, 0x6b, 0x83, 0xd7, 0xfa, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1527 = { .name = "ecdh_secp256k1_1527", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1527_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1527_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1527_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 86 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1528 for ECDH, tcId is 87 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1528_peerpubkey[] = { 0x75, 0x5d, 0x88, 0x45, 0xe7, 0xb4, 0xfd, 0x27, 0x03, 0x53, 0xf6, 0x99, 0x9e, 0x97, 0x24, 0x22, 0x24, 0x01, 0x55, 0x27, 0xbf, 0x3f, 0x94, 0xcc, 0x2c, 0x69, 0x3d, 0x1b, 0x6b, 0xa1, 0x22, 0x98, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_1528_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1528_sharedsecret[] = { 0xd6, 0xaa, 0x40, 0x1b, 0x9c, 0xe1, 0x7e, 0xcf, 0x7d, 0xd7, 0xb0, 0x86, 0x1d, 0xfe, 0xb3, 0x6b, 0xb1, 0x74, 0x9d, 0x12, 0x53, 0x39, 0x91, 0xe6, 0x6c, 0x0d, 0x94, 0x22, 0x81, 0xae, 0x13, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_1528 = { .name = "ecdh_secp256k1_1528", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1528_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1528_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1528_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 87 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1529 for ECDH, tcId is 88 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1529_peerpubkey[] = { 0xc6, 0xf9, 0xfc, 0x86, 0x44, 0xba, 0x5c, 0x9e, 0xa9, 0xbe, 0xb1, 0x2c, 0xe2, 0xcb, 0x91, 0x1c, 0x54, 0x87, 0xe8, 0xb1, 0xbe, 0x91, 0xd5, 0xa1, 0x68, 0x31, 0x8f, 0x4a, 0xe4, 0x4d, 0x66, 0x80, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_1529_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1529_sharedsecret[] = { 0xf4, 0x3b, 0xfe, 0x4e, 0xcc, 0xc2, 0x4e, 0xbf, 0x6e, 0x36, 0xc5, 0xbc, 0xac, 0xa4, 0x7b, 0x77, 0x0c, 0x17, 0xbc, 0xb5, 0x9e, 0xa7, 0x88, 0xb1, 0x5c, 0x74, 0xae, 0x6c, 0x9d, 0xd0, 0x55, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256k1_1529 = { .name = "ecdh_secp256k1_1529", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1529_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1529_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1529_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 88 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1530 for ECDH, tcId is 89 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1530_peerpubkey[] = { 0xd3, 0x17, 0x9f, 0xce, 0x57, 0x81, 0xd0, 0xc4, 0x9c, 0xe8, 0x48, 0x0a, 0x81, 0x1f, 0x6f, 0x08, 0xe3, 0xf1, 0x23, 0xd9, 0xf6, 0x01, 0x0f, 0xbf, 0x61, 0x9b, 0x5d, 0x86, 0x8a, 0x8e, 0xa8, 0x33, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_1530_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1530_sharedsecret[] = { 0x00, 0x9b, 0xc3, 0xab, 0xb3, 0xcf, 0x0a, 0xca, 0x21, 0x4f, 0x0e, 0x8d, 0xb5, 0x08, 0x8d, 0x52, 0x0b, 0x3d, 0x4a, 0xad, 0xb1, 0xd4, 0x4c, 0x4a, 0x2b, 0xe7, 0xf0, 0x31, 0x46, 0x1c, 0x94, 0x20, }; static const wycheproof_ecdh_test ecdh_secp256k1_1530 = { .name = "ecdh_secp256k1_1530", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1530_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1530_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1530_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 89 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1531 for ECDH, tcId is 90 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1531_peerpubkey[] = { 0x9e, 0x09, 0x80, 0x95, 0x46, 0x3c, 0x91, 0xac, 0x71, 0x07, 0xa9, 0x20, 0xcc, 0xb2, 0x76, 0xd4, 0x5e, 0x1f, 0x72, 0x40, 0xef, 0x2b, 0x93, 0xb9, 0x57, 0xee, 0x09, 0x39, 0x3d, 0x32, 0xe0, 0x01, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_1531_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1531_sharedsecret[] = { 0x8b, 0xcb, 0x07, 0xa3, 0xd0, 0xfa, 0x82, 0xaf, 0x60, 0xc8, 0x8a, 0x8d, 0x67, 0x81, 0x0e, 0xbc, 0xa0, 0xea, 0x27, 0x54, 0x83, 0x84, 0xe9, 0x6d, 0x34, 0x83, 0x31, 0x02, 0x12, 0x21, 0x93, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_1531 = { .name = "ecdh_secp256k1_1531", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1531_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1531_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1531_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 90 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1532 for ECDH, tcId is 91 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1532_peerpubkey[] = { 0xbf, 0x30, 0x34, 0xa9, 0x93, 0x51, 0x82, 0xda, 0x36, 0x25, 0x70, 0x31, 0x50, 0x11, 0x54, 0x4a, 0xc2, 0xce, 0x8a, 0x9c, 0x22, 0x77, 0x7c, 0x2f, 0xc7, 0x67, 0xac, 0x9c, 0x5c, 0x0d, 0xae, 0xeb, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_1532_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1532_sharedsecret[] = { 0xa0, 0x9d, 0xdc, 0x7c, 0xfe, 0x02, 0x3a, 0xcd, 0x95, 0x71, 0xef, 0x07, 0x54, 0x01, 0x02, 0x89, 0xc8, 0x04, 0x67, 0x8c, 0x04, 0x3f, 0x90, 0x0f, 0x26, 0x91, 0xdd, 0x80, 0x1b, 0x94, 0x2e, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_1532 = { .name = "ecdh_secp256k1_1532", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1532_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1532_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1532_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 91 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1533 for ECDH, tcId is 92 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1533_peerpubkey[] = { 0x70, 0x9c, 0x71, 0x79, 0xc2, 0xbb, 0x27, 0xce, 0x39, 0x85, 0xba, 0x42, 0xfe, 0xb8, 0x70, 0xf0, 0x69, 0xda, 0xce, 0xad, 0x92, 0x94, 0xc8, 0x05, 0x57, 0xbe, 0x88, 0x2f, 0xb5, 0x77, 0x90, 0x48, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_1533_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1533_sharedsecret[] = { 0xda, 0x98, 0x05, 0x4d, 0x51, 0xac, 0x96, 0x15, 0xe9, 0xd4, 0xf5, 0xce, 0xda, 0x1f, 0x1b, 0xad, 0x40, 0x30, 0x2a, 0xc1, 0x16, 0x03, 0x43, 0x1e, 0xfe, 0xc1, 0x3a, 0xb5, 0x0e, 0x32, 0xfc, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1533 = { .name = "ecdh_secp256k1_1533", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1533_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1533_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1533_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 92 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1534 for ECDH, tcId is 93 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1534_peerpubkey[] = { 0x26, 0x4c, 0x00, 0xa2, 0xd9, 0x25, 0x14, 0xa6, 0xdb, 0xe6, 0x55, 0xde, 0x3c, 0x71, 0xa5, 0x74, 0x0c, 0xec, 0x4f, 0xcb, 0x25, 0x1a, 0xa4, 0x8c, 0xa6, 0x74, 0x5d, 0xbe, 0xa6, 0xf5, 0xf7, 0xcf, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_1534_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1534_sharedsecret[] = { 0xd6, 0x07, 0x95, 0xd8, 0xf3, 0x10, 0xb1, 0x55, 0x72, 0x65, 0x34, 0xb8, 0xbe, 0x3d, 0x0b, 0x8a, 0x7b, 0xc2, 0xce, 0xd4, 0x68, 0xc6, 0xe6, 0x4c, 0x8b, 0x9a, 0xe0, 0x87, 0xb3, 0x3e, 0xe0, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_1534 = { .name = "ecdh_secp256k1_1534", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1534_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1534_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1534_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 93 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1535 for ECDH, tcId is 94 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1535_peerpubkey[] = { 0xa1, 0x21, 0x24, 0x60, 0x6b, 0xcb, 0xbb, 0x33, 0xce, 0xce, 0xc7, 0xfc, 0x8d, 0x78, 0xb3, 0x89, 0x71, 0x92, 0xca, 0x85, 0x15, 0x60, 0xc5, 0x39, 0xe4, 0x7d, 0xd2, 0x76, 0xc6, 0x3b, 0xd3, 0xc2, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_1535_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1535_sharedsecret[] = { 0x67, 0x5f, 0xef, 0x8f, 0x56, 0x80, 0xbf, 0x76, 0x22, 0x0e, 0x91, 0x36, 0x26, 0x13, 0x94, 0x40, 0x99, 0x04, 0x6b, 0x0b, 0xa0, 0x7e, 0x58, 0x24, 0xe9, 0x3f, 0x3e, 0x3c, 0xc2, 0xcc, 0x27, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_1535 = { .name = "ecdh_secp256k1_1535", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1535_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1535_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1535_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 94 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1536 for ECDH, tcId is 95 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1536_peerpubkey[] = { 0x24, 0x4b, 0x7a, 0xfe, 0x7f, 0x31, 0x28, 0x9f, 0x9d, 0x6a, 0xae, 0xb7, 0xf7, 0x0d, 0x29, 0xa7, 0xb4, 0x9a, 0x22, 0x8c, 0x7b, 0xb2, 0x02, 0x76, 0x4a, 0xba, 0x94, 0xda, 0xaa, 0xa3, 0x33, 0x22, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_1536_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1536_sharedsecret[] = { 0x76, 0xb4, 0x39, 0xf8, 0xea, 0x7b, 0x42, 0xf1, 0x1c, 0xd5, 0x9e, 0x6d, 0x91, 0xb2, 0xd2, 0xa7, 0x25, 0x77, 0xc1, 0x85, 0x38, 0x6b, 0x6a, 0xf6, 0x63, 0x9b, 0xe8, 0xe3, 0x86, 0x4a, 0x7f, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_1536 = { .name = "ecdh_secp256k1_1536", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1536_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1536_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1536_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 95 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1537 for ECDH, tcId is 96 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1537_peerpubkey[] = { 0x2a, 0xc2, 0x9d, 0xb2, 0xeb, 0xc4, 0xfa, 0x94, 0x73, 0xb4, 0x2b, 0xd3, 0x35, 0xa6, 0x02, 0x26, 0x57, 0x9c, 0xc1, 0x86, 0xb2, 0xc6, 0x76, 0xa3, 0xb0, 0x1b, 0xc6, 0x0e, 0x58, 0x96, 0x16, 0x16, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_1537_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1537_sharedsecret[] = { 0x56, 0xe6, 0x3f, 0xa7, 0x88, 0x12, 0x1d, 0x5e, 0xfa, 0x0c, 0xe3, 0xca, 0xf4, 0x60, 0x5a, 0xf1, 0x8d, 0x48, 0xc6, 0x31, 0x49, 0x6c, 0xdf, 0xa8, 0x62, 0xc4, 0x3e, 0xcf, 0x5e, 0x5f, 0xc1, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_1537 = { .name = "ecdh_secp256k1_1537", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1537_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1537_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1537_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 96 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1538 for ECDH, tcId is 97 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1538_peerpubkey[] = { 0xe6, 0x2a, 0xee, 0x52, 0x05, 0xa8, 0x06, 0x3e, 0x3a, 0xe4, 0x01, 0xd5, 0x3e, 0x93, 0x43, 0x00, 0x1e, 0x55, 0xeb, 0x5f, 0x4e, 0x4d, 0x6b, 0x70, 0xe2, 0xb8, 0x41, 0x59, 0xcf, 0x31, 0x57, 0xe6, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_1538_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1538_sharedsecret[] = { 0xcf, 0xf3, 0xb5, 0xe1, 0x9e, 0xd6, 0x7e, 0x51, 0x11, 0xdd, 0x76, 0xe3, 0x10, 0xa1, 0xf1, 0x1d, 0x7f, 0x99, 0xa9, 0x3f, 0xbe, 0x9c, 0xc5, 0xc6, 0xf3, 0x38, 0x40, 0x86, 0xca, 0xcd, 0x11, 0x42, }; static const wycheproof_ecdh_test ecdh_secp256k1_1538 = { .name = "ecdh_secp256k1_1538", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1538_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1538_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1538_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 97 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1539 for ECDH, tcId is 98 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1539_peerpubkey[] = { 0x31, 0xdc, 0xe6, 0xde, 0x74, 0x1f, 0x10, 0x26, 0x7f, 0x2e, 0x8f, 0x3d, 0x57, 0x2a, 0x4f, 0x49, 0xbe, 0x5f, 0xe5, 0x2f, 0xf7, 0xbf, 0xf3, 0xc3, 0xb4, 0x64, 0x6f, 0x38, 0x07, 0x6c, 0x06, 0x75, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_1539_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1539_sharedsecret[] = { 0xe2, 0x94, 0x83, 0x88, 0x4a, 0x74, 0xfb, 0x84, 0xf4, 0x60, 0x16, 0x54, 0x88, 0x5a, 0x0f, 0x57, 0x46, 0x91, 0x39, 0x4f, 0x06, 0x4e, 0xa6, 0x93, 0x7a, 0x84, 0x61, 0x75, 0xef, 0x08, 0x1f, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1539 = { .name = "ecdh_secp256k1_1539", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1539_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1539_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1539_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 98 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1540 for ECDH, tcId is 99 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1540_peerpubkey[] = { 0x65, 0x18, 0xcd, 0x66, 0xb1, 0xd8, 0x41, 0xe6, 0x89, 0xd5, 0xdc, 0x66, 0x74, 0xc7, 0xcc, 0x7d, 0x96, 0x45, 0x74, 0xd1, 0x49, 0x0f, 0xff, 0x79, 0x06, 0xbd, 0x37, 0x34, 0x94, 0x79, 0x15, 0x99, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_1540_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1540_sharedsecret[] = { 0x9c, 0x6a, 0x4b, 0xcb, 0x2f, 0xc0, 0x86, 0xac, 0xa8, 0x72, 0x6d, 0x85, 0x0f, 0xa7, 0x99, 0x20, 0x21, 0x4a, 0xf4, 0xc1, 0x51, 0xac, 0xea, 0x0f, 0xcf, 0x12, 0xa7, 0x69, 0xad, 0x1f, 0x35, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_1540 = { .name = "ecdh_secp256k1_1540", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1540_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1540_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1540_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 99 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1541 for ECDH, tcId is 100 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1541_peerpubkey[] = { 0x95, 0x2a, 0x88, 0xce, 0x31, 0xad, 0x4c, 0xb0, 0x86, 0x97, 0x8e, 0x6c, 0x56, 0x21, 0xc3, 0xd8, 0x02, 0x3b, 0x2c, 0x11, 0x41, 0x8d, 0x6f, 0xd0, 0xdc, 0xef, 0x8d, 0xe7, 0x21, 0x23, 0xef, 0xc1, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_1541_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1541_sharedsecret[] = { 0x34, 0xb7, 0xab, 0xc3, 0xf3, 0xe3, 0x6e, 0x37, 0xe2, 0xd5, 0x72, 0x8a, 0x87, 0x0a, 0x29, 0x3a, 0x16, 0x40, 0x31, 0x46, 0xca, 0x67, 0xff, 0x91, 0xcb, 0xab, 0xee, 0xe2, 0xbb, 0x2e, 0x03, 0x8b, }; static const wycheproof_ecdh_test ecdh_secp256k1_1541 = { .name = "ecdh_secp256k1_1541", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1541_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1541_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1541_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 100 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1542 for ECDH, tcId is 101 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1542_peerpubkey[] = { 0x2a, 0x43, 0xf3, 0x35, 0x73, 0xb6, 0x19, 0x71, 0x90, 0x99, 0xcf, 0x54, 0xf6, 0xcc, 0xcb, 0x28, 0xd1, 0x6d, 0xf3, 0x99, 0x22, 0x39, 0xfa, 0xdf, 0x79, 0xc7, 0xac, 0xb9, 0xc6, 0x4f, 0x7a, 0xf0, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_1542_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1542_sharedsecret[] = { 0x9b, 0xd1, 0x28, 0x4f, 0x1b, 0xcb, 0x19, 0x34, 0xd4, 0x83, 0x83, 0x4c, 0xae, 0x41, 0xa7, 0x7d, 0xb2, 0x8c, 0xd9, 0x55, 0x38, 0x69, 0x38, 0x47, 0x55, 0xb6, 0x98, 0x3f, 0x4f, 0x38, 0x48, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1542 = { .name = "ecdh_secp256k1_1542", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1542_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1542_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1542_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 101 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1543 for ECDH, tcId is 102 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1543_peerpubkey[] = { 0x1b, 0x1b, 0x0c, 0x75, 0x40, 0x87, 0x85, 0xe8, 0x47, 0x27, 0xb0, 0xe5, 0x5e, 0x4b, 0xa2, 0x0d, 0x0f, 0x25, 0x99, 0xc4, 0xed, 0x08, 0x48, 0x2d, 0xc1, 0xf3, 0xb5, 0xdf, 0x54, 0x56, 0x91, 0x38, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_1543_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1543_sharedsecret[] = { 0x16, 0x7e, 0x3d, 0xb6, 0xa9, 0x12, 0xac, 0x61, 0x17, 0x64, 0x45, 0x25, 0x91, 0x1f, 0xc8, 0x87, 0x2e, 0xd3, 0x3b, 0x8e, 0x0b, 0xbd, 0x50, 0x07, 0x3d, 0xd3, 0xc1, 0x7a, 0x74, 0x4e, 0x61, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1543 = { .name = "ecdh_secp256k1_1543", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1543_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1543_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1543_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 102 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1544 for ECDH, tcId is 103 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1544_peerpubkey[] = { 0x4d, 0xd1, 0x28, 0x3b, 0xcc, 0xd3, 0x6c, 0xc3, 0x40, 0x2f, 0x3a, 0x81, 0xe2, 0xe9, 0xb0, 0xd6, 0xa2, 0xb2, 0xb1, 0xde, 0xbb, 0xbd, 0x44, 0xff, 0xc1, 0xf1, 0x79, 0xbd, 0x49, 0xcf, 0x0a, 0x7e, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_1544_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1544_sharedsecret[] = { 0x7c, 0x30, 0x20, 0xe2, 0x79, 0xcb, 0x5a, 0xf1, 0x41, 0x84, 0xb4, 0x65, 0x3c, 0xc8, 0x7c, 0x1d, 0xdd, 0x7f, 0x49, 0xcd, 0x31, 0xcd, 0x37, 0x1a, 0xe8, 0x13, 0x68, 0x1d, 0xd6, 0x61, 0x7d, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256k1_1544 = { .name = "ecdh_secp256k1_1544", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1544_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1544_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1544_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 103 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1545 for ECDH, tcId is 104 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1545_peerpubkey[] = { 0xa4, 0x99, 0xdb, 0xf7, 0x32, 0xe4, 0x38, 0xbe, 0x0e, 0xb0, 0x84, 0xb9, 0xe6, 0xad, 0x87, 0x9d, 0xd7, 0xa2, 0x90, 0x4b, 0xbb, 0x00, 0x4b, 0x40, 0x02, 0x79, 0x69, 0xa1, 0x71, 0xf2, 0xd4, 0x26, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_1545_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1545_sharedsecret[] = { 0xac, 0xfd, 0xff, 0x56, 0x6b, 0x8b, 0x55, 0x31, 0x88, 0x69, 0xfa, 0x64, 0x6f, 0x78, 0x9f, 0x80, 0x36, 0xd4, 0x0b, 0x90, 0xf0, 0xfc, 0x52, 0x0a, 0xe2, 0xa5, 0xa2, 0x75, 0x44, 0xf9, 0x62, 0xc0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1545 = { .name = "ecdh_secp256k1_1545", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1545_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1545_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1545_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 104 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1546 for ECDH, tcId is 105 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1546_peerpubkey[] = { 0xad, 0xcf, 0x0f, 0xfb, 0xa9, 0xcb, 0x6e, 0xf0, 0xc8, 0x03, 0x1c, 0x42, 0x91, 0xa4, 0x34, 0xb1, 0x8d, 0x78, 0xf4, 0x2e, 0x45, 0xe6, 0x2b, 0xa0, 0x1f, 0xbe, 0x91, 0xf9, 0x27, 0x3f, 0x0a, 0xd1, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_1546_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1546_sharedsecret[] = { 0x5c, 0x6b, 0x01, 0xcf, 0xf4, 0xe6, 0xce, 0x81, 0xa6, 0x30, 0x23, 0x8b, 0x5d, 0xb3, 0x66, 0x2e, 0x77, 0xfb, 0x88, 0xbf, 0xfd, 0xde, 0x61, 0x44, 0x3a, 0x7d, 0x85, 0x54, 0xba, 0x00, 0x1e, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1546 = { .name = "ecdh_secp256k1_1546", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1546_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1546_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1546_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 105 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1547 for ECDH, tcId is 106 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1547_peerpubkey[] = { 0x21, 0x71, 0x27, 0x25, 0xd9, 0x80, 0x6a, 0xcf, 0x54, 0xd3, 0xa6, 0xc8, 0x2b, 0xf9, 0x3c, 0x0f, 0xe2, 0x49, 0x26, 0x8c, 0xa9, 0xf4, 0x2e, 0xce, 0xac, 0x19, 0xe9, 0x3a, 0x5e, 0xab, 0x80, 0x56, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_1547_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1547_sharedsecret[] = { 0xe7, 0x28, 0x1d, 0x12, 0xb7, 0x4b, 0x06, 0xee, 0xcb, 0x27, 0x3e, 0xc3, 0xe0, 0xd8, 0xfe, 0x66, 0x3e, 0x9e, 0xc1, 0xd5, 0xa5, 0x0c, 0x2b, 0x6c, 0x68, 0xec, 0x8b, 0x36, 0x93, 0xf2, 0x3c, 0x4c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1547 = { .name = "ecdh_secp256k1_1547", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1547_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1547_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1547_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 106 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1548 for ECDH, tcId is 107 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1548_peerpubkey[] = { 0x1e, 0x02, 0x17, 0x68, 0x24, 0xbd, 0x31, 0xea, 0xbd, 0xce, 0x03, 0xa9, 0x40, 0x3c, 0x7d, 0x3c, 0x2a, 0xc6, 0x31, 0xf9, 0xb0, 0xe8, 0x8d, 0x9a, 0x92, 0x47, 0x01, 0xc1, 0xb2, 0xf2, 0x9b, 0x85, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_1548_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1548_sharedsecret[] = { 0x80, 0x64, 0x3e, 0xd8, 0xb9, 0x05, 0x2a, 0x2e, 0x74, 0x6a, 0x26, 0xd9, 0x17, 0x8f, 0xe2, 0xcc, 0xff, 0x35, 0xed, 0xbb, 0x81, 0xf6, 0x0c, 0xd7, 0x80, 0x04, 0xfb, 0x8d, 0x5f, 0x14, 0x3a, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_1548 = { .name = "ecdh_secp256k1_1548", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1548_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1548_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1548_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 107 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1549 for ECDH, tcId is 108 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1549_peerpubkey[] = { 0x63, 0xe7, 0xa1, 0xaf, 0x36, 0xd6, 0xb5, 0x40, 0xa4, 0x92, 0x76, 0xaa, 0xc3, 0xfe, 0xc9, 0xcb, 0x45, 0xed, 0x6b, 0xab, 0x16, 0x7c, 0x06, 0xb0, 0x41, 0x9a, 0x77, 0xb9, 0x13, 0x99, 0xf6, 0x18, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_1549_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1549_sharedsecret[] = { 0x75, 0x87, 0x3a, 0xc5, 0x44, 0xad, 0x69, 0xd3, 0xdd, 0xc5, 0xc9, 0xcf, 0xfe, 0x38, 0x4d, 0x27, 0x5e, 0x9d, 0xa2, 0x94, 0x9d, 0x69, 0x82, 0xda, 0x4b, 0x99, 0x0f, 0x8b, 0xf2, 0xb7, 0x64, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_1549 = { .name = "ecdh_secp256k1_1549", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1549_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1549_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1549_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 108 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1550 for ECDH, tcId is 109 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1550_peerpubkey[] = { 0x1e, 0x26, 0x5a, 0xb5, 0xb7, 0xf7, 0x19, 0x94, 0x70, 0xe5, 0x32, 0x65, 0x3d, 0x2a, 0x7b, 0x9a, 0x8b, 0x72, 0x89, 0x70, 0xb8, 0x38, 0x13, 0x7c, 0x96, 0x92, 0xed, 0x06, 0x92, 0x89, 0x7b, 0x2a, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_1550_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1550_sharedsecret[] = { 0x35, 0x5c, 0x9f, 0xac, 0xa2, 0x9c, 0xf7, 0xcc, 0x96, 0x88, 0x53, 0xee, 0x29, 0xff, 0xe6, 0x2d, 0x11, 0x27, 0xfc, 0xc1, 0xdc, 0x57, 0xe9, 0xdd, 0xaf, 0x0e, 0x0f, 0x44, 0x71, 0x46, 0x06, 0x4e, }; static const wycheproof_ecdh_test ecdh_secp256k1_1550 = { .name = "ecdh_secp256k1_1550", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1550_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1550_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1550_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 109 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1551 for ECDH, tcId is 110 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1551_peerpubkey[] = { 0x54, 0xd2, 0xa4, 0x39, 0x4c, 0x10, 0x9f, 0xcb, 0xd3, 0xcb, 0x98, 0x86, 0xfe, 0xc3, 0xad, 0xd5, 0x1b, 0xa4, 0xd2, 0xe4, 0x4e, 0x1d, 0x56, 0x76, 0xe4, 0xb9, 0x8f, 0x0c, 0x13, 0x65, 0x5f, 0xc5, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_1551_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1551_sharedsecret[] = { 0xfc, 0x17, 0x5a, 0x5e, 0xf1, 0x85, 0x95, 0xb6, 0x9e, 0x45, 0xbe, 0x2c, 0xda, 0x8a, 0xe0, 0x0d, 0x9c, 0x8b, 0xdb, 0xef, 0xbc, 0xf7, 0xf6, 0x92, 0xf9, 0x1c, 0xef, 0xdc, 0x56, 0x0e, 0x47, 0x22, }; static const wycheproof_ecdh_test ecdh_secp256k1_1551 = { .name = "ecdh_secp256k1_1551", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1551_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1551_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1551_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 110 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1552 for ECDH, tcId is 111 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1552_peerpubkey[] = { 0x93, 0xf1, 0x45, 0x92, 0x07, 0xfb, 0x09, 0xc6, 0xf0, 0xa8, 0x8c, 0x39, 0x8a, 0xc8, 0x0d, 0x10, 0x52, 0xa4, 0xcd, 0x33, 0xe7, 0xee, 0xf5, 0x68, 0x7d, 0xa9, 0x9a, 0xb9, 0x7c, 0x60, 0x24, 0xb7, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_1552_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1552_sharedsecret[] = { 0x46, 0x55, 0x91, 0x46, 0xa9, 0x3a, 0xae, 0x90, 0x4d, 0xbc, 0xaa, 0xaa, 0x07, 0xe6, 0xcd, 0x1b, 0xb4, 0x50, 0xf1, 0xb3, 0x7c, 0x83, 0x92, 0x9a, 0x99, 0x4b, 0x45, 0x79, 0x23, 0x33, 0xd5, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp256k1_1552 = { .name = "ecdh_secp256k1_1552", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1552_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1552_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1552_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 111 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1553 for ECDH, tcId is 112 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1553_peerpubkey[] = { 0x1f, 0xa0, 0x49, 0xa1, 0x89, 0x2b, 0x67, 0x98, 0x57, 0xc6, 0xdf, 0xf0, 0x8a, 0xf1, 0x9d, 0xb7, 0x0c, 0xbc, 0x99, 0xb6, 0xf2, 0xd7, 0xbc, 0x51, 0xa3, 0x41, 0xfe, 0x79, 0xd1, 0x64, 0x7f, 0x4a, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_1553_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1553_sharedsecret[] = { 0xc6, 0x4b, 0x07, 0x11, 0x90, 0x54, 0xa3, 0x79, 0x61, 0xc0, 0xa1, 0x77, 0x15, 0x82, 0x56, 0x08, 0x1b, 0x38, 0xb0, 0x08, 0x7b, 0x30, 0x7e, 0x0c, 0xad, 0x7e, 0x30, 0xd7, 0x90, 0xce, 0xb0, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_1553 = { .name = "ecdh_secp256k1_1553", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1553_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1553_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1553_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 112 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1554 for ECDH, tcId is 113 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1554_peerpubkey[] = { 0x84, 0xe0, 0xb1, 0x92, 0xd6, 0x0a, 0xbf, 0x53, 0x1e, 0x82, 0x8e, 0x88, 0x7d, 0x36, 0x6d, 0x86, 0x9e, 0x10, 0x33, 0xa1, 0x6e, 0x9c, 0x7f, 0x11, 0x67, 0x45, 0x8c, 0x81, 0x34, 0xc1, 0x0f, 0xba, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_1554_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1554_sharedsecret[] = { 0xbe, 0xa8, 0xcf, 0xc0, 0xbe, 0xe8, 0x57, 0x1c, 0xcf, 0x0c, 0x52, 0x56, 0x54, 0xef, 0x26, 0xd1, 0xfc, 0x78, 0x2b, 0xb2, 0x2d, 0xec, 0xcf, 0x67, 0xea, 0x4e, 0xa0, 0x80, 0x3d, 0xc1, 0x5d, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp256k1_1554 = { .name = "ecdh_secp256k1_1554", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1554_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1554_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1554_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 113 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1555 for ECDH, tcId is 114 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1555_peerpubkey[] = { 0x2f, 0x97, 0x07, 0xc6, 0x71, 0x18, 0x72, 0x41, 0x11, 0xef, 0xbb, 0xbb, 0xf0, 0x6b, 0x62, 0x3a, 0xb2, 0xff, 0xd9, 0x25, 0x9d, 0xdc, 0x35, 0x4f, 0xca, 0xaf, 0x81, 0xba, 0x01, 0xf6, 0xfa, 0x7b, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_1555_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1555_sharedsecret[] = { 0x60, 0x45, 0x1d, 0xa4, 0xad, 0xfe, 0x5b, 0xb3, 0x93, 0x10, 0x90, 0x69, 0xef, 0xdc, 0x84, 0x41, 0x5e, 0xc8, 0xa2, 0xc4, 0x29, 0x95, 0x5c, 0xbf, 0x22, 0xa4, 0x34, 0x0f, 0x8f, 0xc4, 0x89, 0x36, }; static const wycheproof_ecdh_test ecdh_secp256k1_1555 = { .name = "ecdh_secp256k1_1555", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1555_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1555_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1555_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 114 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1556 for ECDH, tcId is 115 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1556_peerpubkey[] = { 0xac, 0x1f, 0xbb, 0xe4, 0x22, 0x93, 0xa9, 0xf9, 0xae, 0x10, 0x4e, 0xe2, 0xda, 0x0b, 0x0a, 0x9b, 0x34, 0x64, 0xd5, 0xd8, 0xb1, 0xe8, 0x54, 0xdf, 0x19, 0xd3, 0xc4, 0x45, 0x6a, 0xf8, 0xf9, 0xa6, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_1556_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1556_sharedsecret[] = { 0xd6, 0x8e, 0x74, 0x6f, 0x3d, 0x43, 0xfe, 0xac, 0x5f, 0xd4, 0x89, 0x8d, 0xe9, 0x43, 0xdc, 0x38, 0x20, 0x5a, 0xf7, 0xe2, 0x63, 0x1e, 0xd7, 0x32, 0x07, 0x9b, 0xbf, 0xc8, 0xab, 0x52, 0x51, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1556 = { .name = "ecdh_secp256k1_1556", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1556_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1556_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1556_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 115 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1557 for ECDH, tcId is 116 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1557_peerpubkey[] = { 0xba, 0xe1, 0x0c, 0xf9, 0x3f, 0xf7, 0xb7, 0x2d, 0x6e, 0xd9, 0x85, 0x19, 0x60, 0x2e, 0x9f, 0x03, 0xaa, 0x40, 0x30, 0x3f, 0xa0, 0x67, 0x4f, 0xb3, 0xdd, 0xee, 0x7d, 0x2d, 0xb1, 0xc9, 0x2b, 0xb2, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_1557_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1557_sharedsecret[] = { 0x28, 0xda, 0xea, 0xad, 0xc6, 0x09, 0x38, 0x6d, 0x77, 0x0d, 0xff, 0x4c, 0x71, 0x20, 0xb2, 0xa8, 0x7c, 0xab, 0x3e, 0x21, 0xfd, 0xb8, 0xa6, 0xe4, 0xdc, 0x12, 0x40, 0xa5, 0x1d, 0x12, 0xe5, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1557 = { .name = "ecdh_secp256k1_1557", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1557_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1557_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1557_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 116 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1558 for ECDH, tcId is 117 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1558_peerpubkey[] = { 0xed, 0xb4, 0x28, 0x8c, 0xf5, 0x56, 0x76, 0x73, 0xd5, 0x0a, 0x1c, 0xd9, 0xe6, 0xbe, 0xa4, 0x53, 0x17, 0x82, 0x3f, 0x30, 0x38, 0x3f, 0x60, 0xd9, 0xbc, 0x3b, 0x9e, 0xe4, 0x2a, 0xc2, 0x98, 0x71, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_1558_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1558_sharedsecret[] = { 0xbb, 0x41, 0x10, 0xb7, 0x34, 0xc8, 0xef, 0x8a, 0x08, 0xbb, 0x60, 0x11, 0xac, 0xb3, 0x5c, 0xbd, 0xa9, 0xae, 0x8e, 0x2e, 0xf6, 0xc4, 0xd0, 0x86, 0x25, 0x76, 0xa6, 0x87, 0x92, 0x66, 0x7b, 0xb9, }; static const wycheproof_ecdh_test ecdh_secp256k1_1558 = { .name = "ecdh_secp256k1_1558", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1558_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1558_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1558_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 117 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1559 for ECDH, tcId is 118 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1559_peerpubkey[] = { 0x13, 0x23, 0x3e, 0x80, 0xf5, 0x9a, 0xc2, 0xb5, 0x97, 0x37, 0xe8, 0x78, 0x77, 0x78, 0x2a, 0xb3, 0x02, 0x7c, 0x49, 0x0d, 0xf8, 0xac, 0x0b, 0xf3, 0xf3, 0xef, 0x16, 0x33, 0x87, 0x2e, 0xec, 0x54, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_1559_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1559_sharedsecret[] = { 0xe2, 0x5c, 0x50, 0x03, 0x7c, 0xa1, 0x91, 0x38, 0x51, 0xb9, 0x75, 0x87, 0x52, 0x65, 0x9f, 0xb6, 0x1c, 0x02, 0xd2, 0xa7, 0xc6, 0xb6, 0xaa, 0xe2, 0x9b, 0xda, 0x30, 0x19, 0x07, 0xd9, 0x9f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1559 = { .name = "ecdh_secp256k1_1559", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1559_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1559_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1559_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 118 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1560 for ECDH, tcId is 119 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1560_peerpubkey[] = { 0x3c, 0xd1, 0x4f, 0x7e, 0x4b, 0x77, 0x96, 0x15, 0xbc, 0x7c, 0xce, 0xe4, 0x7e, 0x7f, 0x2b, 0x07, 0x39, 0x4b, 0xf8, 0xf9, 0x85, 0x03, 0x26, 0x34, 0x11, 0xa5, 0x49, 0x26, 0x4a, 0x8f, 0xcf, 0x19, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_1560_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1560_sharedsecret[] = { 0xad, 0x25, 0x9f, 0x01, 0xe9, 0x53, 0x26, 0x3f, 0x40, 0xa3, 0x9b, 0x14, 0xa5, 0x38, 0xd0, 0x76, 0x71, 0x0c, 0x19, 0x20, 0x7a, 0xf9, 0x36, 0xfe, 0xab, 0xdf, 0x03, 0xbd, 0xa7, 0xf0, 0x67, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1560 = { .name = "ecdh_secp256k1_1560", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1560_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1560_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1560_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 119 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1561 for ECDH, tcId is 120 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1561_peerpubkey[] = { 0x94, 0x6c, 0x27, 0x82, 0x88, 0x61, 0x6a, 0xa3, 0x47, 0x90, 0xca, 0x19, 0x36, 0x86, 0xe7, 0x45, 0xd3, 0xd5, 0x87, 0x02, 0x86, 0x6d, 0xdf, 0x1e, 0x95, 0x55, 0x07, 0x11, 0xa9, 0xbf, 0xbd, 0xb8, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_1561_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1561_sharedsecret[] = { 0x5e, 0xc6, 0x02, 0x5a, 0xc7, 0xb2, 0x5c, 0x0f, 0x09, 0x5f, 0x3f, 0xde, 0xe3, 0xe2, 0xe5, 0x08, 0xbd, 0x14, 0x37, 0xb9, 0x70, 0x5c, 0x25, 0x43, 0xc0, 0xe5, 0xaf, 0x1c, 0x1d, 0x36, 0x3f, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp256k1_1561 = { .name = "ecdh_secp256k1_1561", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1561_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1561_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1561_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 120 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1562 for ECDH, tcId is 121 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1562_peerpubkey[] = { 0x7f, 0x19, 0x50, 0x35, 0xfe, 0xb2, 0xc0, 0x4a, 0x9b, 0x14, 0x9b, 0xb2, 0xed, 0x3c, 0x5c, 0x45, 0x8e, 0x95, 0xe7, 0xf7, 0xc4, 0x18, 0xc4, 0xa0, 0x7e, 0xa6, 0x10, 0x7e, 0x4e, 0x32, 0x45, 0x5a, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_1562_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1562_sharedsecret[] = { 0xa2, 0xf9, 0x3a, 0x84, 0x57, 0x4a, 0x26, 0xb4, 0x38, 0x80, 0xcd, 0xe6, 0xed, 0x44, 0x0c, 0x7f, 0x7c, 0xc7, 0x2c, 0x92, 0x50, 0x4d, 0x52, 0x71, 0x99, 0x9a, 0x8a, 0x78, 0xff, 0xe3, 0x49, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1562 = { .name = "ecdh_secp256k1_1562", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1562_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1562_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1562_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 121 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1563 for ECDH, tcId is 122 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1563_peerpubkey[] = { 0x40, 0x85, 0x58, 0x44, 0xe0, 0x43, 0x03, 0x84, 0x3a, 0x24, 0xb0, 0x17, 0x07, 0x54, 0x4d, 0x1b, 0xbf, 0x97, 0x67, 0x32, 0x66, 0xe0, 0x3d, 0x77, 0xfb, 0xf8, 0x0d, 0x8b, 0x64, 0x21, 0x9b, 0xd8, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_1563_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1563_sharedsecret[] = { 0x8d, 0x0c, 0xdb, 0x49, 0x77, 0xba, 0x76, 0x61, 0xd4, 0x10, 0x36, 0xae, 0xb7, 0xa5, 0xf2, 0xdd, 0x20, 0x77, 0x16, 0xd5, 0xd7, 0x6e, 0xeb, 0x26, 0x62, 0x90, 0x43, 0xc5, 0x59, 0xec, 0x29, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1563 = { .name = "ecdh_secp256k1_1563", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1563_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1563_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1563_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 122 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1564 for ECDH, tcId is 123 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1564_peerpubkey[] = { 0x22, 0xcd, 0xb3, 0xee, 0x47, 0xf1, 0x4b, 0x3b, 0x0c, 0x0c, 0x8c, 0x25, 0x6f, 0xb2, 0x2e, 0x79, 0x12, 0x6b, 0x43, 0x6a, 0x2c, 0x9f, 0xf6, 0x35, 0xa6, 0x51, 0x51, 0xa0, 0xf0, 0xff, 0xb1, 0xbf, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_1564_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1564_sharedsecret[] = { 0xde, 0xfd, 0xe4, 0xaa, 0x48, 0xf8, 0x9b, 0x03, 0xf6, 0x23, 0xea, 0x1f, 0x94, 0x6f, 0x1a, 0xa9, 0x38, 0xc5, 0xaa, 0xb8, 0x79, 0xca, 0x63, 0x19, 0x59, 0x69, 0x26, 0xf0, 0x85, 0x57, 0x8e, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256k1_1564 = { .name = "ecdh_secp256k1_1564", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1564_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1564_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1564_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 123 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1565 for ECDH, tcId is 124 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1565_peerpubkey[] = { 0x2b, 0x7b, 0xec, 0xd7, 0x06, 0x6e, 0x22, 0xf1, 0x21, 0xe7, 0xcf, 0x12, 0x3d, 0x48, 0xc5, 0x44, 0x50, 0x37, 0xc5, 0xa7, 0x56, 0xef, 0x31, 0x4a, 0x66, 0xa7, 0x00, 0x16, 0x36, 0xee, 0x75, 0xcf, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_1565_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1565_sharedsecret[] = { 0xaf, 0xe0, 0xbf, 0xed, 0x69, 0xa6, 0x00, 0x16, 0x38, 0x65, 0x40, 0x61, 0x27, 0xa8, 0x97, 0x2b, 0x61, 0x32, 0x32, 0xaa, 0x4c, 0x93, 0x3a, 0x06, 0xb5, 0xa5, 0xb5, 0xbc, 0xff, 0x15, 0x96, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_1565 = { .name = "ecdh_secp256k1_1565", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1565_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1565_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1565_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 124 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1566 for ECDH, tcId is 125 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1566_peerpubkey[] = { 0xbb, 0x8d, 0xa4, 0xa7, 0x6e, 0xe3, 0xd1, 0xc4, 0xb3, 0x34, 0x77, 0xbc, 0x86, 0x63, 0xde, 0xf1, 0x67, 0xa1, 0x26, 0xc4, 0x22, 0xad, 0x47, 0xf6, 0xc2, 0xf8, 0xb5, 0x39, 0xc6, 0x80, 0x89, 0x36, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_1566_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1566_sharedsecret[] = { 0xf4, 0x9b, 0xca, 0x7a, 0x6a, 0x52, 0x56, 0xdd, 0xf7, 0x12, 0x77, 0x59, 0x17, 0xc3, 0x0e, 0x48, 0x73, 0x15, 0x34, 0x69, 0xba, 0xe1, 0x2f, 0xd5, 0xc5, 0x57, 0x10, 0x31, 0xdb, 0x7b, 0x12, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_1566 = { .name = "ecdh_secp256k1_1566", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1566_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1566_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1566_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 125 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1567 for ECDH, tcId is 126 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1567_peerpubkey[] = { 0x0a, 0x0c, 0x37, 0x66, 0x48, 0x23, 0xa5, 0x00, 0x5d, 0x65, 0x9f, 0x7c, 0x73, 0xc3, 0x9e, 0xa1, 0x72, 0xc8, 0x62, 0x96, 0x9c, 0x81, 0xe4, 0x4f, 0x36, 0xc8, 0x9e, 0x7c, 0x26, 0x5e, 0xc8, 0xa8, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_1567_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1567_sharedsecret[] = { 0x9c, 0x88, 0xb6, 0x11, 0xb7, 0xf9, 0xaa, 0xd3, 0x3f, 0xab, 0xb0, 0x9c, 0xff, 0x61, 0x8b, 0xb1, 0xca, 0x6f, 0xb9, 0x04, 0xa2, 0x89, 0xb1, 0x48, 0x1d, 0xa3, 0xd1, 0xe4, 0xe7, 0x25, 0x89, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256k1_1567 = { .name = "ecdh_secp256k1_1567", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1567_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1567_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1567_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 126 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1568 for ECDH, tcId is 127 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1568_peerpubkey[] = { 0x47, 0xc3, 0x3f, 0x6f, 0x78, 0xd3, 0xcd, 0x99, 0x71, 0xec, 0xc5, 0x0e, 0x7e, 0x2a, 0xc9, 0x47, 0xf8, 0xc1, 0x10, 0x3f, 0x9c, 0x5f, 0x08, 0x21, 0x37, 0x9b, 0xd0, 0x6a, 0xd8, 0xfc, 0xa4, 0x56, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_1568_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1568_sharedsecret[] = { 0x42, 0xf6, 0x34, 0xc0, 0x6c, 0x4a, 0x0e, 0x7e, 0x95, 0x6d, 0xb6, 0xe8, 0x66, 0x66, 0x60, 0x3d, 0x26, 0x37, 0x4c, 0xc7, 0x4b, 0x11, 0x02, 0x6f, 0x03, 0x18, 0xd1, 0xa2, 0x56, 0x81, 0xa7, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_1568 = { .name = "ecdh_secp256k1_1568", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1568_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1568_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1568_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 127 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1569 for ECDH, tcId is 128 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1569_peerpubkey[] = { 0xb5, 0x9d, 0x18, 0xab, 0x8b, 0x0f, 0x9d, 0xd3, 0x34, 0x84, 0xf4, 0x3c, 0x3f, 0x68, 0x60, 0x22, 0x9b, 0xa6, 0xa4, 0xc2, 0x5a, 0x61, 0xcd, 0x0a, 0xac, 0xa2, 0x3b, 0x76, 0xd6, 0x05, 0x66, 0xcf, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_1569_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1569_sharedsecret[] = { 0xe2, 0xce, 0xb9, 0x46, 0xe7, 0x99, 0x3f, 0x27, 0xa4, 0x32, 0x7a, 0xbd, 0xf6, 0x1d, 0x4f, 0x06, 0x57, 0x7e, 0x89, 0xc6, 0x3b, 0x62, 0xa2, 0x4a, 0xef, 0xbd, 0x90, 0x57, 0x10, 0xd1, 0x86, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256k1_1569 = { .name = "ecdh_secp256k1_1569", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1569_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1569_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1569_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 128 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1570 for ECDH, tcId is 129 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1570_peerpubkey[] = { 0x94, 0xf4, 0x60, 0x1b, 0x24, 0x4d, 0x3a, 0x6e, 0xa6, 0x99, 0x6f, 0xa2, 0x44, 0x36, 0x4f, 0x79, 0x43, 0x99, 0xe0, 0xff, 0x43, 0x16, 0x15, 0x7d, 0xb6, 0x02, 0x32, 0x22, 0xfc, 0x0d, 0x90, 0xbe, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_1570_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1570_sharedsecret[] = { 0x71, 0x63, 0x7a, 0x5d, 0xa2, 0x41, 0x2a, 0x92, 0x1f, 0x16, 0x36, 0xc6, 0x9a, 0x6e, 0xe8, 0x10, 0x83, 0xee, 0x2b, 0x0e, 0x13, 0x76, 0x6a, 0xd1, 0x22, 0x79, 0x1e, 0xf6, 0xf7, 0x71, 0x89, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1570 = { .name = "ecdh_secp256k1_1570", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1570_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1570_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1570_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 129 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1571 for ECDH, tcId is 130 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1571_peerpubkey[] = { 0x9e, 0x8c, 0x11, 0x5b, 0x1a, 0xc8, 0x7d, 0x98, 0x6e, 0xe1, 0xb5, 0x06, 0xb8, 0x6a, 0x4e, 0x7b, 0x8e, 0xa0, 0x41, 0xaa, 0x6a, 0x63, 0xd6, 0xec, 0x80, 0xec, 0x0f, 0x0c, 0xf6, 0x9c, 0xfb, 0x3f, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_1571_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1571_sharedsecret[] = { 0xbd, 0x26, 0x5e, 0xd3, 0x07, 0x8c, 0xa8, 0xc7, 0x78, 0x8f, 0x59, 0x41, 0x87, 0xc9, 0x6c, 0x67, 0x5a, 0xa6, 0x23, 0xec, 0xd0, 0x1b, 0xfc, 0xad, 0x62, 0xd7, 0x6a, 0x78, 0x81, 0x33, 0x4f, 0x63, }; static const wycheproof_ecdh_test ecdh_secp256k1_1571 = { .name = "ecdh_secp256k1_1571", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1571_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1571_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1571_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 130 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1572 for ECDH, tcId is 131 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1572_peerpubkey[] = { 0xee, 0xc7, 0x76, 0xb5, 0x2b, 0x94, 0x14, 0x1f, 0xc8, 0x19, 0xd4, 0xb6, 0xb1, 0x2d, 0x28, 0xe7, 0x35, 0x55, 0xb5, 0x56, 0x05, 0x07, 0xab, 0xa7, 0xdf, 0x6f, 0x04, 0x84, 0x00, 0x8d, 0xe9, 0x1f, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_1572_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1572_sharedsecret[] = { 0x8d, 0x07, 0x3f, 0xc5, 0x92, 0xfb, 0x7a, 0xa6, 0xf7, 0xb9, 0x08, 0xed, 0x07, 0x14, 0x8a, 0xa7, 0xbe, 0x5a, 0x13, 0x5c, 0x4b, 0x34, 0x3e, 0xbe, 0x29, 0x51, 0x98, 0xcb, 0xa7, 0x8e, 0x71, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_1572 = { .name = "ecdh_secp256k1_1572", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1572_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1572_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1572_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 131 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1573 for ECDH, tcId is 132 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1573_peerpubkey[] = { 0xaf, 0xf4, 0x6a, 0x38, 0x8e, 0x5a, 0xfc, 0x22, 0x0a, 0x8e, 0xec, 0x7a, 0x49, 0xaf, 0x9d, 0x24, 0x53, 0x84, 0xa3, 0xaf, 0x1e, 0x0b, 0x40, 0x7b, 0x45, 0x21, 0xf4, 0xe9, 0x2d, 0x12, 0xdc, 0xeb, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_1573_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1573_sharedsecret[] = { 0xa2, 0x6d, 0x69, 0x8e, 0x46, 0x13, 0x59, 0x5a, 0xa6, 0x1c, 0x8e, 0x29, 0x07, 0xd5, 0x24, 0x1d, 0x6d, 0x14, 0x90, 0x97, 0x37, 0xdf, 0x59, 0x89, 0x58, 0x41, 0xd0, 0x77, 0x27, 0xbf, 0x13, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_1573 = { .name = "ecdh_secp256k1_1573", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1573_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1573_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1573_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 132 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1574 for ECDH, tcId is 133 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1574_peerpubkey[] = { 0xe8, 0x07, 0xe4, 0x3d, 0x96, 0xf3, 0x70, 0x1a, 0x9a, 0x5c, 0x13, 0xd1, 0x22, 0x74, 0x90, 0x84, 0x17, 0x0f, 0xcd, 0x36, 0xa5, 0x86, 0xa4, 0x46, 0xc9, 0xfc, 0xb4, 0x60, 0x0e, 0xed, 0xe4, 0xfd, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_1574_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1574_sharedsecret[] = { 0xa8, 0xed, 0xc6, 0xf9, 0xaf, 0x6b, 0xf7, 0x41, 0x22, 0xc1, 0x1c, 0xa1, 0xa5, 0x0a, 0xfb, 0xc4, 0xa3, 0xc4, 0x98, 0x7b, 0xd0, 0xd1, 0xf7, 0x32, 0x84, 0xd2, 0xc1, 0x37, 0x1e, 0x61, 0x34, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_1574 = { .name = "ecdh_secp256k1_1574", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1574_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1574_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1574_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 133 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1575 for ECDH, tcId is 134 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1575_peerpubkey[] = { 0x79, 0x88, 0x68, 0xa5, 0x69, 0x16, 0xd3, 0x41, 0xe7, 0xd6, 0xf9, 0x63, 0x59, 0xae, 0x36, 0x58, 0x83, 0x6e, 0x22, 0x14, 0x59, 0xf4, 0xf7, 0xb7, 0xb6, 0x36, 0x94, 0xde, 0x18, 0xa5, 0xe9, 0x24, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_1575_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1575_sharedsecret[] = { 0x17, 0x96, 0x3d, 0xe0, 0x78, 0x99, 0x6e, 0xb8, 0x50, 0x3c, 0x7c, 0xc3, 0xe1, 0xa2, 0xd5, 0x14, 0x7d, 0x7f, 0x0b, 0xfb, 0x25, 0x1a, 0x02, 0x0b, 0x43, 0x92, 0x03, 0x30, 0x63, 0x58, 0x7c, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1575 = { .name = "ecdh_secp256k1_1575", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1575_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1575_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1575_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 134 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1576 for ECDH, tcId is 135 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1576_peerpubkey[] = { 0xff, 0x41, 0x99, 0x09, 0xd8, 0xa8, 0xce, 0x0a, 0x94, 0x16, 0x05, 0x1f, 0x4e, 0x25, 0x62, 0x08, 0xc1, 0xdc, 0x03, 0x55, 0x81, 0xa5, 0x33, 0x12, 0xd5, 0x66, 0x13, 0x7e, 0x22, 0x10, 0x4e, 0x98, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_1576_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1576_sharedsecret[] = { 0x06, 0x27, 0x99, 0xa1, 0x95, 0x45, 0xd3, 0x1b, 0x3e, 0xd7, 0x22, 0x53, 0xbc, 0xde, 0x59, 0x76, 0x2a, 0xa6, 0x10, 0x4a, 0x88, 0xac, 0x5e, 0x2f, 0xb6, 0x89, 0x26, 0xb0, 0xf7, 0x14, 0x66, 0x98, }; static const wycheproof_ecdh_test ecdh_secp256k1_1576 = { .name = "ecdh_secp256k1_1576", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1576_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1576_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1576_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 135 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1577 for ECDH, tcId is 136 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1577_peerpubkey[] = { 0x8b, 0x48, 0x11, 0x9d, 0x70, 0x89, 0xd3, 0xb9, 0x5c, 0xd2, 0xea, 0xf8, 0xc8, 0x55, 0x84, 0xfa, 0x8f, 0x5e, 0x56, 0xc4, 0xc4, 0xcc, 0xee, 0x70, 0x37, 0xd7, 0x4c, 0xdb, 0xf8, 0x8e, 0x57, 0x17, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_1577_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1577_sharedsecret[] = { 0x9f, 0x42, 0xdd, 0x8f, 0xce, 0x13, 0xf8, 0x10, 0x3b, 0x3b, 0x2b, 0xc1, 0x5e, 0x61, 0x24, 0x2e, 0x68, 0x20, 0xfe, 0x13, 0x25, 0xa2, 0x0e, 0xf4, 0x60, 0xfe, 0x64, 0xd9, 0xeb, 0x12, 0xb2, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256k1_1577 = { .name = "ecdh_secp256k1_1577", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1577_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1577_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1577_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 136 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1578 for ECDH, tcId is 137 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1578_peerpubkey[] = { 0xe2, 0x88, 0x81, 0x19, 0x37, 0x9b, 0x5b, 0x21, 0x51, 0xbd, 0x78, 0x85, 0x05, 0xde, 0xf1, 0xd6, 0xbd, 0x78, 0x63, 0x29, 0x43, 0x1c, 0xaf, 0x39, 0x70, 0x5d, 0x9c, 0xbf, 0x96, 0xa4, 0x2e, 0xa4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_1578_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1578_sharedsecret[] = { 0xd1, 0xb2, 0x04, 0xe5, 0x2d, 0x1f, 0xac, 0x6d, 0x50, 0x41, 0x32, 0xc7, 0x6c, 0xa2, 0x33, 0xc8, 0x7e, 0x37, 0x7d, 0xcc, 0x79, 0xc8, 0x93, 0xc9, 0x70, 0xdd, 0xbb, 0x9f, 0x87, 0xb2, 0x7f, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1578 = { .name = "ecdh_secp256k1_1578", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1578_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1578_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1578_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 137 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1579 for ECDH, tcId is 138 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1579_peerpubkey[] = { 0x6d, 0xcc, 0x39, 0x71, 0xbd, 0x20, 0x91, 0x3d, 0x59, 0xa9, 0x1f, 0x20, 0xd9, 0x12, 0xf5, 0x6d, 0x07, 0xe7, 0xf0, 0x14, 0x20, 0x6b, 0xef, 0x4a, 0x65, 0x3d, 0xdf, 0xe5, 0xd1, 0x28, 0x42, 0xc3, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_1579_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1579_sharedsecret[] = { 0xc8, 0xd6, 0xbd, 0x28, 0xc1, 0xe6, 0x5a, 0xe7, 0xc7, 0xa5, 0xde, 0xbe, 0x67, 0xa7, 0xdf, 0xaf, 0x92, 0xb4, 0x29, 0xed, 0xe3, 0x68, 0xef, 0xc9, 0xda, 0x7d, 0x57, 0x8a, 0x53, 0x9b, 0x70, 0x54, }; static const wycheproof_ecdh_test ecdh_secp256k1_1579 = { .name = "ecdh_secp256k1_1579", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1579_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1579_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1579_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 138 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1580 for ECDH, tcId is 139 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1580_peerpubkey[] = { 0x7e, 0xbe, 0xa4, 0x58, 0x54, 0x56, 0x9a, 0x1f, 0x7e, 0xa6, 0xb9, 0x5b, 0x82, 0xd6, 0xbe, 0xfe, 0xfb, 0xf6, 0x29, 0x6e, 0xbc, 0x87, 0xc8, 0x10, 0xb6, 0xcb, 0xa9, 0x3c, 0x0c, 0x12, 0x20, 0xb2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_1580_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1580_sharedsecret[] = { 0x0d, 0x1f, 0x90, 0x5c, 0xc7, 0x47, 0x20, 0xbd, 0xe6, 0x7a, 0xe8, 0x4f, 0x58, 0x27, 0x28, 0x58, 0x8c, 0x75, 0x44, 0x4c, 0x27, 0x3d, 0xae, 0x41, 0x06, 0xfa, 0x20, 0xd1, 0xd6, 0x94, 0x64, 0x30, }; static const wycheproof_ecdh_test ecdh_secp256k1_1580 = { .name = "ecdh_secp256k1_1580", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1580_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1580_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1580_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 139 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1581 for ECDH, tcId is 140 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1581_peerpubkey[] = { 0xce, 0xab, 0x59, 0x37, 0x90, 0x0d, 0x34, 0xfa, 0x88, 0x37, 0x8d, 0x37, 0x1f, 0x4a, 0xca, 0xa7, 0xc6, 0xa2, 0x02, 0x8b, 0x61, 0x43, 0x21, 0x34, 0x13, 0xf1, 0x6b, 0xa2, 0xdc, 0x71, 0x47, 0x87, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_1581_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1581_sharedsecret[] = { 0x3f, 0x01, 0x4e, 0x30, 0x91, 0x92, 0x58, 0x8f, 0xa8, 0x3e, 0x47, 0xd4, 0xac, 0x96, 0x85, 0xd2, 0x04, 0x12, 0x04, 0xe2, 0xea, 0xf6, 0x33, 0xa1, 0x31, 0x28, 0x12, 0xe5, 0x1a, 0xe7, 0x4c, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_1581 = { .name = "ecdh_secp256k1_1581", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1581_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1581_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1581_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 140 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1582 for ECDH, tcId is 141 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1582_peerpubkey[] = { 0xa4, 0xff, 0xea, 0x5e, 0x25, 0xf7, 0x5e, 0x4f, 0x68, 0x9c, 0x81, 0x08, 0x4a, 0x35, 0xc1, 0x22, 0x0e, 0x8e, 0x6b, 0x91, 0x4c, 0x48, 0x2f, 0x4a, 0x2e, 0x8f, 0x93, 0xcf, 0xfc, 0xa6, 0x96, 0x47, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_1582_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1582_sharedsecret[] = { 0x68, 0xb4, 0x04, 0xd5, 0x56, 0xc8, 0x20, 0x04, 0xc6, 0xc4, 0xbb, 0xa4, 0x51, 0x8e, 0xc0, 0x0b, 0x1d, 0x4f, 0x11, 0x61, 0xca, 0xfe, 0x6c, 0x89, 0xae, 0xb8, 0x49, 0x4a, 0x9b, 0xa0, 0x9d, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1582 = { .name = "ecdh_secp256k1_1582", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1582_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1582_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1582_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 141 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1583 for ECDH, tcId is 142 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1583_peerpubkey[] = { 0xde, 0x88, 0x09, 0xea, 0x0e, 0xcc, 0xe1, 0xd2, 0x4a, 0x04, 0x31, 0x42, 0x95, 0x10, 0x38, 0x3a, 0x6f, 0x6e, 0x5a, 0x1c, 0x51, 0xce, 0xa3, 0x2d, 0x83, 0x0c, 0x6c, 0x35, 0x30, 0x42, 0x60, 0x3e, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_1583_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1583_sharedsecret[] = { 0xc3, 0x31, 0xad, 0xe7, 0xa4, 0x57, 0xdf, 0x7f, 0x12, 0xa2, 0xf5, 0xc4, 0x3d, 0x7e, 0xa9, 0x48, 0x6c, 0x15, 0x63, 0xb8, 0x1c, 0xd8, 0xa0, 0xf2, 0x3f, 0x92, 0x3c, 0x1a, 0x9f, 0xa6, 0x12, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256k1_1583 = { .name = "ecdh_secp256k1_1583", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1583_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1583_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1583_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 142 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1584 for ECDH, tcId is 143 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1584_peerpubkey[] = { 0x56, 0x62, 0x09, 0xf1, 0x74, 0xd6, 0xbf, 0x79, 0x72, 0x0b, 0x70, 0xed, 0xb2, 0x7e, 0x51, 0x35, 0x0b, 0xee, 0xb2, 0xb0, 0xbc, 0xd0, 0x83, 0xbb, 0xae, 0x72, 0x14, 0xf7, 0x1c, 0xf8, 0x24, 0xd4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_1584_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1584_sharedsecret[] = { 0x17, 0xb5, 0xc7, 0xa3, 0x11, 0xee, 0xa9, 0xd2, 0xab, 0x75, 0x71, 0xf8, 0xb9, 0xf8, 0x48, 0xd4, 0x70, 0x59, 0x97, 0xcf, 0x3e, 0xaf, 0x9b, 0xdc, 0xbe, 0x0e, 0x34, 0xa6, 0x70, 0xf8, 0x1f, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256k1_1584 = { .name = "ecdh_secp256k1_1584", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1584_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1584_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1584_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 143 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1585 for ECDH, tcId is 144 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1585_peerpubkey[] = { 0xcc, 0x31, 0x81, 0xc0, 0x12, 0x71, 0x37, 0x53, 0x6c, 0xee, 0xc9, 0x4f, 0xd4, 0x59, 0x96, 0x65, 0x7d, 0xf7, 0x2e, 0x0f, 0x97, 0xc4, 0x4b, 0x9d, 0xad, 0x14, 0x76, 0x3c, 0xe5, 0x06, 0xe9, 0xdc, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_1585_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1585_sharedsecret[] = { 0x2f, 0x0e, 0x4e, 0xcc, 0xbc, 0x45, 0x18, 0xac, 0xe5, 0x58, 0xe0, 0x66, 0x04, 0xf9, 0xbf, 0xf4, 0x78, 0x7f, 0x5b, 0x01, 0x94, 0x37, 0xb5, 0x21, 0x95, 0xec, 0xb6, 0xb8, 0x21, 0x91, 0xa6, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_1585 = { .name = "ecdh_secp256k1_1585", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1585_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1585_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1585_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 144 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1586 for ECDH, tcId is 145 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1586_peerpubkey[] = { 0xd7, 0x05, 0x2a, 0x1e, 0xea, 0xfc, 0x0e, 0x78, 0xd7, 0x9e, 0x7f, 0x26, 0x00, 0x3a, 0xa0, 0xa4, 0x09, 0x28, 0x7c, 0xf4, 0x76, 0x00, 0x7d, 0xf2, 0x8d, 0x28, 0x1b, 0x14, 0x2b, 0xe1, 0xa0, 0xe2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_1586_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1586_sharedsecret[] = { 0x74, 0x94, 0xd8, 0x64, 0xcb, 0x6e, 0xa9, 0xc5, 0xd9, 0x82, 0xd4, 0x0a, 0x5f, 0x10, 0x37, 0x00, 0xd0, 0x2d, 0xc9, 0x82, 0x63, 0x77, 0x53, 0xcf, 0xc7, 0xd8, 0xaf, 0xe1, 0xbe, 0xaf, 0xff, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_1586 = { .name = "ecdh_secp256k1_1586", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1586_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1586_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1586_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 145 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1587 for ECDH, tcId is 146 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1587_peerpubkey[] = { 0xb7, 0xcc, 0x3e, 0x23, 0x06, 0xdb, 0xf7, 0xc3, 0x8f, 0xf1, 0x79, 0x65, 0x87, 0x06, 0xfe, 0xff, 0xb5, 0xef, 0xdb, 0x60, 0x44, 0xc7, 0xe7, 0x14, 0x35, 0xd7, 0xff, 0x7d, 0x0a, 0xe8, 0xc7, 0xb3, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_1587_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1587_sharedsecret[] = { 0xa9, 0x68, 0x73, 0xee, 0xf5, 0xd4, 0x38, 0xb8, 0x07, 0x85, 0x3b, 0x67, 0x71, 0xc6, 0xa5, 0x19, 0x7e, 0x6e, 0xef, 0x21, 0xef, 0xef, 0xca, 0x53, 0x8b, 0x45, 0xe9, 0xe9, 0x81, 0xc0, 0x32, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1587 = { .name = "ecdh_secp256k1_1587", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1587_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1587_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1587_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 146 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1588 for ECDH, tcId is 147 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1588_peerpubkey[] = { 0x5b, 0xbe, 0x7c, 0x98, 0x01, 0x5f, 0xd3, 0xa6, 0x03, 0x4d, 0x79, 0xd8, 0x67, 0xa4, 0xdc, 0xd5, 0x2f, 0x95, 0x91, 0x19, 0x32, 0x12, 0x9d, 0xa2, 0xfc, 0x0a, 0x58, 0xaf, 0xe1, 0x49, 0x13, 0x7f, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_1588_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1588_sharedsecret[] = { 0x91, 0x24, 0x61, 0x89, 0x13, 0xf2, 0x0c, 0xdf, 0xfa, 0x64, 0x22, 0x07, 0xf1, 0x92, 0xe6, 0x7e, 0xb8, 0x0a, 0xde, 0x53, 0xac, 0x55, 0x35, 0x46, 0x9a, 0xbe, 0x90, 0x03, 0x6d, 0x4a, 0xf7, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1588 = { .name = "ecdh_secp256k1_1588", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1588_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1588_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1588_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 147 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1589 for ECDH, tcId is 148 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1589_peerpubkey[] = { 0x96, 0x2f, 0xe4, 0x78, 0x80, 0xa9, 0x4a, 0x74, 0x59, 0x28, 0xe3, 0xc4, 0xa2, 0x9a, 0x42, 0xcb, 0x01, 0x33, 0x4f, 0x1e, 0xe9, 0x64, 0x6e, 0x62, 0x45, 0x1c, 0x46, 0xec, 0xd7, 0x2f, 0x41, 0x09, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_1589_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1589_sharedsecret[] = { 0x9d, 0x8b, 0x74, 0x88, 0x8d, 0x94, 0x28, 0x70, 0xb2, 0x21, 0xde, 0x7a, 0x64, 0x20, 0x32, 0x89, 0x2b, 0xc9, 0x9e, 0x34, 0xbd, 0x85, 0x50, 0x19, 0x5f, 0x6f, 0x5f, 0x09, 0x75, 0x47, 0x33, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1589 = { .name = "ecdh_secp256k1_1589", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1589_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1589_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1589_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 148 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1590 for ECDH, tcId is 149 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1590_peerpubkey[] = { 0xc7, 0x15, 0x74, 0xf5, 0x53, 0x8d, 0xe5, 0x65, 0x3c, 0x37, 0x16, 0x8d, 0x47, 0xa2, 0xbc, 0xf4, 0x36, 0x98, 0xea, 0x26, 0x00, 0x12, 0xcd, 0x0a, 0xe1, 0x30, 0x4e, 0x47, 0x4c, 0x63, 0xa4, 0xe6, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_1590_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1590_sharedsecret[] = { 0x16, 0x98, 0x33, 0x77, 0xc0, 0xf1, 0xa9, 0xc0, 0x04, 0x49, 0x5b, 0x3f, 0xd9, 0x65, 0x83, 0x63, 0x11, 0x6e, 0xea, 0x64, 0x47, 0x87, 0xd0, 0x59, 0xd1, 0x14, 0x0f, 0xb9, 0x07, 0x55, 0x5d, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1590 = { .name = "ecdh_secp256k1_1590", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1590_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1590_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1590_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 149 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1591 for ECDH, tcId is 150 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1591_peerpubkey[] = { 0xc6, 0x02, 0x44, 0xce, 0x30, 0x6e, 0x37, 0x6f, 0x39, 0x68, 0x17, 0x8f, 0x52, 0x93, 0x74, 0x2d, 0x7a, 0x20, 0xe1, 0xdc, 0x47, 0xcf, 0xc5, 0x17, 0xed, 0xad, 0xa9, 0xdb, 0x49, 0xd0, 0xcb, 0xbf, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_1591_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1591_sharedsecret[] = { 0x08, 0x1a, 0xf4, 0x0a, 0x81, 0xd4, 0x8c, 0x6b, 0x53, 0x01, 0x40, 0xdb, 0x93, 0x5e, 0x60, 0x5b, 0xf4, 0xcc, 0x7b, 0x10, 0x88, 0x5f, 0x5b, 0x14, 0x8f, 0x95, 0xf1, 0xbc, 0x8a, 0xd2, 0xe5, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1591 = { .name = "ecdh_secp256k1_1591", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1591_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1591_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1591_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 150 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1592 for ECDH, tcId is 151 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1592_peerpubkey[] = { 0xaa, 0x3c, 0x31, 0x88, 0xc0, 0xad, 0x57, 0x67, 0xa9, 0xba, 0xc7, 0x7e, 0x7c, 0xee, 0xa0, 0x5c, 0xfa, 0xe1, 0x59, 0x9c, 0xcd, 0x77, 0xb9, 0xfc, 0xbc, 0x0c, 0x3b, 0xad, 0xc8, 0x0c, 0x36, 0xca, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_1592_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1592_sharedsecret[] = { 0x7e, 0x4b, 0x97, 0x3e, 0x6d, 0x4a, 0x35, 0x7c, 0x40, 0x02, 0x43, 0xa6, 0x48, 0xc8, 0xa0, 0xa6, 0xa3, 0x5c, 0xf2, 0x31, 0x75, 0x4a, 0xfd, 0xef, 0x31, 0x2d, 0x2f, 0x4b, 0x6a, 0xbb, 0x98, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp256k1_1592 = { .name = "ecdh_secp256k1_1592", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1592_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1592_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1592_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 151 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1593 for ECDH, tcId is 152 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1593_peerpubkey[] = { 0x2c, 0xce, 0x8d, 0xdf, 0xe4, 0x82, 0x7d, 0xc0, 0x30, 0xdd, 0xf3, 0x8f, 0x99, 0x8b, 0x3f, 0x2e, 0xd5, 0xe0, 0x62, 0x1d, 0x0b, 0x38, 0x05, 0x66, 0x6d, 0xaf, 0x48, 0xc8, 0xc3, 0x1e, 0x75, 0xe5, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_1593_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1593_sharedsecret[] = { 0x0f, 0x02, 0x35, 0xda, 0x2a, 0x06, 0xc8, 0xd4, 0x08, 0xc2, 0x71, 0x51, 0xf3, 0xf1, 0x53, 0x42, 0xed, 0x8c, 0x19, 0x45, 0xaa, 0xf8, 0x4e, 0xd1, 0x49, 0x93, 0x78, 0x6d, 0x6a, 0xc5, 0xf5, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_1593 = { .name = "ecdh_secp256k1_1593", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1593_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1593_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1593_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 152 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1594 for ECDH, tcId is 153 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1594_peerpubkey[] = { 0x14, 0xbf, 0xc3, 0xe5, 0xa4, 0x6b, 0x69, 0x88, 0x1a, 0x9a, 0x34, 0x6d, 0x95, 0x89, 0x44, 0x18, 0x61, 0x4e, 0xd9, 0x14, 0x76, 0xa1, 0xdd, 0xce, 0x48, 0x67, 0x6b, 0x7c, 0xba, 0xb9, 0xba, 0x02, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_1594_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1594_sharedsecret[] = { 0x56, 0x22, 0xc2, 0xfb, 0xe8, 0xaf, 0x5a, 0xd6, 0xce, 0xf7, 0x2a, 0x01, 0xbe, 0x18, 0x6e, 0x55, 0x48, 0x47, 0x57, 0x61, 0x06, 0xf8, 0x97, 0x97, 0x72, 0xfa, 0x56, 0x11, 0x4d, 0x11, 0x60, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_1594 = { .name = "ecdh_secp256k1_1594", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1594_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1594_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1594_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 153 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1595 for ECDH, tcId is 154 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1595_peerpubkey[] = { 0xbd, 0x44, 0x2f, 0xa5, 0xa2, 0xa8, 0xd7, 0x2e, 0x13, 0xe4, 0x4f, 0xd2, 0x22, 0x2c, 0x85, 0xa0, 0x06, 0xf0, 0x33, 0x75, 0xe0, 0x21, 0x1b, 0x27, 0x2f, 0x55, 0x50, 0x52, 0xb0, 0x3d, 0xb7, 0x50, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_1595_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1595_sharedsecret[] = { 0xbb, 0x95, 0xe0, 0xd0, 0xfb, 0xaa, 0xd8, 0x6c, 0x5b, 0xd8, 0x7b, 0x95, 0x94, 0x6c, 0x77, 0xff, 0x1d, 0x65, 0x32, 0x2a, 0x17, 0x5c, 0xcf, 0x16, 0x41, 0x91, 0x02, 0xc0, 0xa1, 0x7f, 0x5a, 0x72, }; static const wycheproof_ecdh_test ecdh_secp256k1_1595 = { .name = "ecdh_secp256k1_1595", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1595_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1595_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1595_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 154 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1596 for ECDH, tcId is 155 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1596_peerpubkey[] = { 0x0d, 0x7a, 0x3f, 0xf4, 0x9b, 0xda, 0x6a, 0x58, 0x7e, 0xd0, 0x76, 0x91, 0x45, 0x04, 0x25, 0xaa, 0x02, 0xd2, 0x53, 0xba, 0x57, 0x3a, 0x16, 0xad, 0x86, 0xc6, 0x1a, 0xf4, 0x12, 0xdd, 0x3c, 0x77, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_1596_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1596_sharedsecret[] = { 0x45, 0x10, 0x68, 0x3c, 0x7b, 0xfa, 0x25, 0x1f, 0x0c, 0xb5, 0x6b, 0xba, 0x7e, 0x0a, 0xb7, 0x4d, 0x90, 0xf5, 0xe2, 0xca, 0x01, 0xe9, 0x1e, 0x7c, 0xa9, 0x93, 0x12, 0xcc, 0xff, 0x2d, 0x90, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_1596 = { .name = "ecdh_secp256k1_1596", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1596_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1596_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1596_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 155 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1597 for ECDH, tcId is 156 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1597_peerpubkey[] = { 0xbd, 0xea, 0x5d, 0x2a, 0x3a, 0xdd, 0xe7, 0xdf, 0x2e, 0x83, 0x9f, 0xf6, 0x3f, 0x62, 0x53, 0x4b, 0x3f, 0x27, 0xcb, 0x19, 0x1b, 0xb5, 0x4d, 0xfa, 0x1d, 0x39, 0xcb, 0xff, 0x71, 0x3b, 0xa9, 0xed, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_1597_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1597_sharedsecret[] = { 0x02, 0x54, 0x85, 0x14, 0x2c, 0xa1, 0xce, 0xd7, 0x52, 0x28, 0x9f, 0x77, 0x21, 0x30, 0xfc, 0x10, 0xc7, 0x5a, 0x45, 0x08, 0xc4, 0x6b, 0xff, 0xde, 0xf9, 0x29, 0x0a, 0xd3, 0xe7, 0xba, 0xf9, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_1597 = { .name = "ecdh_secp256k1_1597", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1597_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1597_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1597_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 156 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1598 for ECDH, tcId is 157 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1598_peerpubkey[] = { 0xd4, 0xc0, 0x63, 0xe3, 0xc0, 0x36, 0xf4, 0x7c, 0x92, 0xf6, 0xf5, 0x47, 0x0a, 0x26, 0xa8, 0x35, 0xe1, 0xa2, 0x45, 0x05, 0xb1, 0x4d, 0x1b, 0x29, 0x27, 0x90, 0x62, 0xa1, 0x6c, 0xf6, 0xf4, 0x89, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_1598_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1598_sharedsecret[] = { 0x90, 0x67, 0x93, 0x21, 0x50, 0x72, 0x49, 0x65, 0xaa, 0x47, 0x9c, 0x1e, 0xf1, 0xbe, 0x55, 0x54, 0x4b, 0xed, 0x9f, 0xa9, 0x45, 0x00, 0xa3, 0xb6, 0x78, 0x87, 0xed, 0x91, 0xae, 0x3b, 0x81, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1598 = { .name = "ecdh_secp256k1_1598", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1598_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1598_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1598_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 157 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1599 for ECDH, tcId is 158 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1599_peerpubkey[] = { 0x3c, 0xb9, 0xf0, 0x79, 0x97, 0x75, 0x68, 0x59, 0xe9, 0xb9, 0xa8, 0x5b, 0x68, 0x1f, 0xa5, 0x0e, 0xe2, 0x03, 0x57, 0xf5, 0x35, 0xc1, 0xb3, 0x11, 0xc4, 0x63, 0x7d, 0x16, 0xb7, 0x6b, 0x9e, 0xbf, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_1599_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1599_sharedsecret[] = { 0xf8, 0x08, 0x4a, 0x89, 0xad, 0xcc, 0xdc, 0x3a, 0xef, 0x89, 0xe5, 0x09, 0x1a, 0x0f, 0x07, 0xd6, 0x16, 0x0a, 0x66, 0xcb, 0x95, 0x75, 0x24, 0x11, 0x00, 0xc1, 0xd3, 0x9b, 0xf0, 0x54, 0x9a, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1599 = { .name = "ecdh_secp256k1_1599", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1599_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1599_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1599_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 158 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1600 for ECDH, tcId is 159 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1600_peerpubkey[] = { 0x79, 0x34, 0x12, 0xff, 0x63, 0x6c, 0x08, 0xa2, 0xd0, 0xf6, 0xd6, 0x0c, 0xc6, 0x08, 0xe9, 0xa9, 0x09, 0x83, 0x49, 0xa2, 0x50, 0x1f, 0x91, 0xc9, 0x5f, 0x69, 0x20, 0x10, 0xbc, 0x12, 0x38, 0xb2, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_1600_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1600_sharedsecret[] = { 0x44, 0x62, 0x55, 0x8c, 0x89, 0x90, 0x21, 0x17, 0x05, 0x1c, 0xb2, 0xc5, 0x99, 0xad, 0x66, 0xf0, 0x08, 0x87, 0xb5, 0x4c, 0xae, 0x3d, 0xa9, 0xc0, 0x4d, 0x31, 0x7a, 0x5b, 0x2a, 0xfb, 0x46, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp256k1_1600 = { .name = "ecdh_secp256k1_1600", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1600_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1600_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1600_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 159 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1601 for ECDH, tcId is 160 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1601_peerpubkey[] = { 0xbd, 0x1e, 0xb0, 0x84, 0x9e, 0x2e, 0x6a, 0x13, 0xd5, 0x4b, 0x76, 0x51, 0x8f, 0x11, 0xba, 0x87, 0x75, 0xc2, 0xd7, 0x63, 0x4d, 0x85, 0x15, 0x25, 0x34, 0xbc, 0x7c, 0x3a, 0xf4, 0x16, 0x1e, 0xfa, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_1601_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1601_sharedsecret[] = { 0x30, 0xb4, 0x74, 0x1a, 0x64, 0xf8, 0x7d, 0x28, 0xec, 0x00, 0x29, 0xbd, 0x19, 0x6b, 0x5a, 0x74, 0x55, 0x5f, 0x2c, 0x9a, 0x97, 0x6a, 0x46, 0xd6, 0x28, 0x57, 0x24, 0x74, 0x46, 0x6a, 0x63, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1601 = { .name = "ecdh_secp256k1_1601", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1601_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1601_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1601_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 160 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1602 for ECDH, tcId is 161 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1602_peerpubkey[] = { 0x62, 0x4b, 0x3b, 0x4b, 0xa9, 0x93, 0xa8, 0xb9, 0x38, 0x12, 0x56, 0x89, 0xf6, 0xcf, 0x75, 0x73, 0x92, 0xee, 0x39, 0x0d, 0x14, 0xa9, 0x0f, 0xea, 0x6d, 0xb9, 0x44, 0xb5, 0xa8, 0xde, 0xb8, 0xd0, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_1602_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1602_sharedsecret[] = { 0x3a, 0xfc, 0x04, 0xac, 0x92, 0x11, 0x7e, 0x50, 0xb0, 0x91, 0x3b, 0x09, 0xdb, 0xbb, 0x4e, 0x6c, 0x78, 0x0c, 0x05, 0x15, 0x00, 0x20, 0x1f, 0xad, 0x51, 0x2b, 0x79, 0x08, 0x0b, 0xff, 0x39, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_1602 = { .name = "ecdh_secp256k1_1602", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1602_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1602_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1602_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 161 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1603 for ECDH, tcId is 162 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1603_peerpubkey[] = { 0xfe, 0x71, 0x0e, 0x3c, 0x5b, 0x46, 0x8d, 0xc3, 0x3c, 0x2b, 0x17, 0x29, 0x5c, 0x4e, 0x18, 0x9b, 0x48, 0x7d, 0x58, 0xdd, 0x43, 0x7a, 0xdf, 0x70, 0x6a, 0xc0, 0x54, 0x93, 0xcf, 0xea, 0x8d, 0xf0, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_1603_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1603_sharedsecret[] = { 0x60, 0x96, 0x37, 0x04, 0x85, 0x86, 0xed, 0xc6, 0x4c, 0xf5, 0xf2, 0x8f, 0x1a, 0x50, 0x57, 0x68, 0xc6, 0x86, 0x47, 0x11, 0x10, 0x07, 0x0d, 0x78, 0x3d, 0xe4, 0x99, 0xff, 0xe6, 0xfe, 0x84, 0xda, }; static const wycheproof_ecdh_test ecdh_secp256k1_1603 = { .name = "ecdh_secp256k1_1603", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1603_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1603_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1603_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 162 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1604 for ECDH, tcId is 163 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1604_peerpubkey[] = { 0xae, 0x86, 0x4b, 0xa0, 0xc4, 0x1f, 0x2e, 0x1d, 0xfb, 0xac, 0x23, 0x37, 0x02, 0x57, 0x16, 0xd8, 0xbc, 0xad, 0xce, 0xf6, 0x53, 0x9c, 0x6f, 0x1f, 0xf3, 0x35, 0x17, 0x6b, 0x8d, 0xda, 0xa3, 0x6e, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_1604_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1604_sharedsecret[] = { 0xb1, 0xd4, 0xf2, 0x7a, 0x69, 0x83, 0xc8, 0xee, 0x41, 0x7e, 0xf0, 0xf5, 0x27, 0xd8, 0x89, 0xd4, 0xa1, 0xae, 0x41, 0xd3, 0x63, 0x92, 0x44, 0x57, 0x8c, 0x43, 0xd6, 0x50, 0xc2, 0x99, 0xfc, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp256k1_1604 = { .name = "ecdh_secp256k1_1604", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1604_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1604_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1604_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 163 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1605 for ECDH, tcId is 164 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1605_peerpubkey[] = { 0xc9, 0x87, 0xbd, 0x5a, 0xf9, 0xeb, 0x20, 0x2f, 0x1b, 0x24, 0xda, 0x21, 0x17, 0xca, 0x90, 0xb6, 0xef, 0x8c, 0x82, 0xe7, 0xcf, 0xbf, 0x53, 0x0f, 0x71, 0x41, 0x8f, 0x9a, 0x93, 0xb0, 0x08, 0x5c, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_1605_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1605_sharedsecret[] = { 0x00, 0x07, 0xc9, 0xa2, 0x7a, 0xc5, 0x06, 0x7c, 0x9f, 0x0a, 0xd1, 0xa4, 0xd1, 0xe6, 0x21, 0x10, 0xda, 0x13, 0x18, 0x89, 0x3a, 0x65, 0x87, 0x29, 0x71, 0x3d, 0x82, 0xe3, 0x33, 0x85, 0x5b, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_1605 = { .name = "ecdh_secp256k1_1605", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1605_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1605_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1605_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 164 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1606 for ECDH, tcId is 165 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1606_peerpubkey[] = { 0x35, 0x67, 0x0f, 0x86, 0xc5, 0xf7, 0x2b, 0x93, 0xab, 0xe4, 0x13, 0x1d, 0x2b, 0xea, 0x1f, 0xce, 0x87, 0x6a, 0xd4, 0xe2, 0x5b, 0x40, 0xd4, 0x2d, 0x44, 0x7d, 0x68, 0xcf, 0xf9, 0x0c, 0xa0, 0xbe, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_1606_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1606_sharedsecret[] = { 0x8a, 0x3b, 0x23, 0xa9, 0x1f, 0x0d, 0x5d, 0xb8, 0x07, 0x4a, 0x6a, 0x88, 0x68, 0x89, 0xee, 0x3e, 0x19, 0xaa, 0xf0, 0x9b, 0x66, 0xac, 0x9a, 0xad, 0x2e, 0x15, 0xc8, 0xbd, 0xba, 0x68, 0x08, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_1606 = { .name = "ecdh_secp256k1_1606", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1606_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1606_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1606_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 165 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1607 for ECDH, tcId is 166 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1607_peerpubkey[] = { 0xdf, 0xca, 0x67, 0x8a, 0x1b, 0x8e, 0x6f, 0x67, 0x99, 0x6a, 0x09, 0x7f, 0xc9, 0xce, 0x37, 0x41, 0x2d, 0xe9, 0xfb, 0xd9, 0xcf, 0xa1, 0xa2, 0x1b, 0x75, 0x0c, 0xef, 0x48, 0xe5, 0xe5, 0x95, 0xa1, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_1607_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_1607_sharedsecret[] = { 0xc2, 0xaf, 0x76, 0x3f, 0x41, 0x4c, 0xb2, 0xd7, 0xfd, 0x46, 0x25, 0x7f, 0x03, 0x13, 0xb5, 0x82, 0xc0, 0x99, 0xb5, 0xe2, 0x3b, 0x73, 0xe0, 0x73, 0xb5, 0xab, 0x7c, 0x23, 0x0c, 0x45, 0xc8, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_1607 = { .name = "ecdh_secp256k1_1607", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1607_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1607_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1607_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 166 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1608 for ECDH, tcId is 167 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1608_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1608_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256k1_1608_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_1608 = { .name = "ecdh_secp256k1_1608", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1608_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1608_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1608_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 167 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1609 for ECDH, tcId is 168 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1609_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1609_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_1609_sharedsecret[] = { 0x58, 0x41, 0xac, 0xd3, 0xcf, 0xf2, 0xd6, 0x28, 0x61, 0xbb, 0xe1, 0x10, 0x84, 0x73, 0x80, 0x06, 0xd6, 0x8c, 0xcf, 0x35, 0xac, 0xae, 0x61, 0x5e, 0xe9, 0x52, 0x47, 0x26, 0xe9, 0x3d, 0x0d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_1609 = { .name = "ecdh_secp256k1_1609", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1609_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1609_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1609_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 168 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1610 for ECDH, tcId is 169 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1610_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1610_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1610_sharedsecret[] = { 0x43, 0x48, 0xe4, 0xcb, 0xa3, 0x71, 0xea, 0xd0, 0x39, 0x82, 0x01, 0x8a, 0xbc, 0x9a, 0xac, 0xec, 0xae, 0xbf, 0xd6, 0x36, 0xdd, 0xa8, 0x2e, 0x60, 0x9f, 0xd2, 0x98, 0x94, 0x7f, 0x90, 0x7d, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp256k1_1610 = { .name = "ecdh_secp256k1_1610", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1610_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1610_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1610_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 169 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1611 for ECDH, tcId is 170 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1611_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1611_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_1611_sharedsecret[] = { 0xe5, 0x62, 0x21, 0xc2, 0xb0, 0xdc, 0x33, 0xb9, 0x8b, 0x90, 0xdf, 0xd3, 0x23, 0x9a, 0x2c, 0x0c, 0xb1, 0xe4, 0xad, 0x03, 0x99, 0xa3, 0xaa, 0xef, 0x3f, 0x9d, 0x47, 0xfb, 0x10, 0x3d, 0xae, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256k1_1611 = { .name = "ecdh_secp256k1_1611", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1611_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1611_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1611_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 170 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1612 for ECDH, tcId is 171 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1612_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1612_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1612_sharedsecret[] = { 0x5b, 0x34, 0xa2, 0x9b, 0x1c, 0x4d, 0xdc, 0xb2, 0x10, 0x11, 0x62, 0xd3, 0x4b, 0xed, 0x9f, 0x07, 0x02, 0x36, 0x1f, 0xe5, 0xaf, 0x50, 0x5d, 0xf3, 0x15, 0xef, 0xf7, 0xbe, 0xfd, 0x0e, 0x47, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256k1_1612 = { .name = "ecdh_secp256k1_1612", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1612_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1612_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1612_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 171 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1613 for ECDH, tcId is 172 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1613_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1613_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3a, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_1613_sharedsecret[] = { 0xce, 0xce, 0x52, 0x1b, 0x8b, 0x5a, 0x32, 0xbb, 0xee, 0x38, 0x93, 0x6b, 0xa7, 0xd6, 0x45, 0x82, 0x4f, 0x23, 0x8e, 0x56, 0x17, 0x01, 0xa3, 0x86, 0xfb, 0x88, 0x8e, 0x01, 0x0d, 0xb5, 0x4b, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_1613 = { .name = "ecdh_secp256k1_1613", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1613_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1613_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1613_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 172 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1614 for ECDH, tcId is 173 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1614_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1614_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xc2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_1614_sharedsecret[] = { 0x82, 0x95, 0x21, 0xb7, 0x9d, 0x71, 0xf5, 0x01, 0x1e, 0x07, 0x97, 0x56, 0xb8, 0x51, 0xa0, 0xd5, 0xc8, 0x35, 0x57, 0x86, 0x61, 0x89, 0xa6, 0x25, 0x8c, 0x1e, 0x78, 0xa1, 0x70, 0x0c, 0x69, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256k1_1614 = { .name = "ecdh_secp256k1_1614", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1614_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1614_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1614_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 173 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1615 for ECDH, tcId is 174 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1615_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1615_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xca, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_1615_sharedsecret[] = { 0x8c, 0x59, 0x34, 0x79, 0x35, 0x05, 0xa6, 0xa1, 0xf8, 0x4d, 0x41, 0x28, 0x33, 0x41, 0x68, 0x0c, 0x49, 0x23, 0xf1, 0xf4, 0xd5, 0x62, 0x98, 0x9a, 0x11, 0xcc, 0x62, 0x6f, 0xea, 0x5e, 0xda, 0x5a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1615 = { .name = "ecdh_secp256k1_1615", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1615_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1615_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1615_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 174 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1616 for ECDH, tcId is 175 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1616_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1616_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8b, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_1616_sharedsecret[] = { 0x35, 0x6c, 0xae, 0xe7, 0xe7, 0xee, 0xe0, 0x31, 0xa1, 0x5e, 0x54, 0xc3, 0xa5, 0xc4, 0xe7, 0x2f, 0x9c, 0x74, 0xbb, 0x28, 0x7c, 0xe6, 0x01, 0x61, 0x9e, 0xf8, 0x5e, 0xb9, 0x6c, 0x28, 0x94, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_1616 = { .name = "ecdh_secp256k1_1616", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1616_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1616_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1616_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 175 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1617 for ECDH, tcId is 176 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1617_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1617_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc3, }; static const unsigned char ecdh_secp256k1_1617_sharedsecret[] = { 0x09, 0xc7, 0x33, 0x7d, 0xf6, 0xc2, 0xb3, 0x5e, 0xdf, 0x3a, 0x21, 0x38, 0x25, 0x11, 0xcc, 0x5a, 0xdd, 0x1a, 0x71, 0xa8, 0x4c, 0xbf, 0x8d, 0x33, 0x96, 0xa5, 0xbe, 0x54, 0x8d, 0x92, 0xfa, 0x67, }; static const wycheproof_ecdh_test ecdh_secp256k1_1617 = { .name = "ecdh_secp256k1_1617", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1617_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1617_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1617_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 176 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1618 for ECDH, tcId is 177 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1618_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1618_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x03, }; static const unsigned char ecdh_secp256k1_1618_sharedsecret[] = { 0xd1, 0x6c, 0xae, 0xdd, 0x25, 0x79, 0x36, 0x66, 0xf9, 0xe2, 0x6f, 0x53, 0x31, 0x38, 0x21, 0x06, 0xf5, 0x40, 0x95, 0xb3, 0xd2, 0x0d, 0x40, 0xc7, 0x45, 0xb6, 0x8c, 0xa7, 0x6c, 0x0e, 0x69, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_1618 = { .name = "ecdh_secp256k1_1618", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1618_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1618_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1618_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 177 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1619 for ECDH, tcId is 178 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1619_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1619_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x23, }; static const unsigned char ecdh_secp256k1_1619_sharedsecret[] = { 0xb8, 0xae, 0x1e, 0x21, 0xd8, 0xb3, 0x4c, 0xe4, 0xca, 0xff, 0xed, 0x71, 0x67, 0xa2, 0x68, 0x68, 0xec, 0x80, 0xa7, 0xd4, 0xa6, 0xa9, 0x8b, 0x63, 0x9d, 0x4d, 0x05, 0xcd, 0x22, 0x65, 0x04, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_1619 = { .name = "ecdh_secp256k1_1619", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1619_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1619_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1619_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 178 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1620 for ECDH, tcId is 179 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1620_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1620_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x33, }; static const unsigned char ecdh_secp256k1_1620_sharedsecret[] = { 0x02, 0x77, 0x63, 0x15, 0xfe, 0x14, 0x7a, 0x36, 0xa4, 0xb0, 0x98, 0x74, 0x92, 0xb6, 0x50, 0x3a, 0xcd, 0xea, 0x60, 0xf9, 0x26, 0x45, 0x0e, 0x5e, 0xdd, 0xb9, 0xf8, 0x8f, 0xc8, 0x21, 0x78, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp256k1_1620 = { .name = "ecdh_secp256k1_1620", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1620_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1620_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1620_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 179 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1621 for ECDH, tcId is 180 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1621_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1621_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3b, }; static const unsigned char ecdh_secp256k1_1621_sharedsecret[] = { 0x39, 0x88, 0xc9, 0xc7, 0x05, 0x0a, 0x28, 0x79, 0x49, 0x34, 0xe5, 0xbd, 0x67, 0x62, 0x9b, 0x55, 0x6d, 0x97, 0xa4, 0x85, 0x8d, 0x22, 0x81, 0x28, 0x35, 0xf4, 0xa3, 0x7d, 0xca, 0x35, 0x19, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256k1_1621 = { .name = "ecdh_secp256k1_1621", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1621_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1621_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1621_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 180 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1622 for ECDH, tcId is 181 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1622_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1622_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const unsigned char ecdh_secp256k1_1622_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_1622 = { .name = "ecdh_secp256k1_1622", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1622_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1622_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1622_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 181 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1623 for ECDH, tcId is 182 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1623_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_1623_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, }; static const unsigned char ecdh_secp256k1_1623_sharedsecret[] = { 0x4b, 0x52, 0x25, 0x7d, 0x8b, 0x3b, 0xa3, 0x87, 0x79, 0x7f, 0xdf, 0x7a, 0x75, 0x2f, 0x19, 0x5d, 0xdc, 0x4f, 0x7d, 0x76, 0x26, 0x3d, 0xe6, 0x1d, 0x0d, 0x52, 0xa5, 0xec, 0x14, 0xa3, 0x6c, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp256k1_1623 = { .name = "ecdh_secp256k1_1623", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1623_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1623_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1623_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 182 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1624 for ECDH, tcId is 183 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1624_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1624_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1624 = { .name = "ecdh_secp256k1_1624", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1624_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1624_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 183 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1625 for ECDH, tcId is 184 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1625_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1625_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1625 = { .name = "ecdh_secp256k1_1625", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1625_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1625_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 184 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1626 for ECDH, tcId is 185 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1626_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_1626_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1626 = { .name = "ecdh_secp256k1_1626", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1626_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1626_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 185 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1627 for ECDH, tcId is 186 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1627_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_1627_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1627 = { .name = "ecdh_secp256k1_1627", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1627_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1627_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 186 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1628 for ECDH, tcId is 187 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1628_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1628_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1628 = { .name = "ecdh_secp256k1_1628", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1628_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1628_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 187 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1629 for ECDH, tcId is 188 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1629_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1629_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1629 = { .name = "ecdh_secp256k1_1629", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1629_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1629_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 188 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1630 for ECDH, tcId is 189 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1630_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_1630_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1630 = { .name = "ecdh_secp256k1_1630", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1630_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1630_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 189 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1631 for ECDH, tcId is 190 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1631_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_1631_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1631 = { .name = "ecdh_secp256k1_1631", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1631_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1631_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 190 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1632 for ECDH, tcId is 191 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1632_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1632_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1632 = { .name = "ecdh_secp256k1_1632", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1632_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1632_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 191 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1633 for ECDH, tcId is 192 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1633_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1633_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1633 = { .name = "ecdh_secp256k1_1633", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1633_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1633_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 192 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1634 for ECDH, tcId is 193 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1634_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_1634_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1634 = { .name = "ecdh_secp256k1_1634", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1634_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1634_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 193 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1635 for ECDH, tcId is 194 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1635_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_1635_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1635 = { .name = "ecdh_secp256k1_1635", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1635_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1635_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 194 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1636 for ECDH, tcId is 195 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1636_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1636_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1636 = { .name = "ecdh_secp256k1_1636", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1636_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1636_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 195 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1637 for ECDH, tcId is 196 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1637_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_1637_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1637 = { .name = "ecdh_secp256k1_1637", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1637_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1637_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 196 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1638 for ECDH, tcId is 197 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1638_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_1638_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1638 = { .name = "ecdh_secp256k1_1638", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1638_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1638_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 197 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1639 for ECDH, tcId is 198 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1639_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_1639_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1639 = { .name = "ecdh_secp256k1_1639", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1639_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1639_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 198 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1640 for ECDH, tcId is 200 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1640_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe4, }; static const unsigned char ecdh_secp256k1_1640_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1640 = { .name = "ecdh_secp256k1_1640", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1640_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1640_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 200 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1641 for ECDH, tcId is 201 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1641_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1641_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1641 = { .name = "ecdh_secp256k1_1641", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1641_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1641_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 201 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1642 for ECDH, tcId is 204 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1642_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1642_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1642_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1642 = { .name = "ecdh_secp256k1_1642", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1642_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1642_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1642_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 204 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1643 for ECDH, tcId is 205 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1643_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1643_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1643_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1643 = { .name = "ecdh_secp256k1_1643", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1643_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1643_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1643_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 26959946667150639794667015087019630673536463705607434823784316690060, tcId is 205 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1644 for ECDH, tcId is 206 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1644_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1644_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1644_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1644 = { .name = "ecdh_secp256k1_1644", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1644_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1644_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1644_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 206 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1645 for ECDH, tcId is 207 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1645_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1645_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1645_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1645 = { .name = "ecdh_secp256k1_1645", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1645_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1645_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1645_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 207 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1646 for ECDH, tcId is 210 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1646_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1646_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1646_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1646 = { .name = "ecdh_secp256k1_1646", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1646_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1646_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1646_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 210 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1647 for ECDH, tcId is 212 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1647_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1647_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1647_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1647 = { .name = "ecdh_secp256k1_1647", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1647_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1647_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1647_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 212 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1648 for ECDH, tcId is 215 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1648_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_secp256k1_1648_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_1648 = { .name = "ecdh_secp256k1_1648", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1648_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1648_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 215 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1649 for ECDH, tcId is 216 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1649_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_1649_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_1649_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1649 = { .name = "ecdh_secp256k1_1649", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1649_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1649_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1649_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 216 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1650 for ECDH, tcId is 219 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1650_peerpubkey[] = { 0x06, 0x37, 0x28, 0x52, 0x58, 0x40, 0x37, 0x72, 0x2a, 0x7f, 0x9b, 0xfa, 0xad, 0x56, 0x61, 0xac, 0xb6, 0x23, 0x16, 0x2d, 0x45, 0xf7, 0x0a, 0x55, 0x2c, 0x61, 0x7f, 0x40, 0x80, 0xe8, 0x73, 0xaa, 0x43, 0x60, 0x92, 0x75, 0xdf, 0xf6, 0xdc, 0xaa, 0xa1, 0x22, 0xa7, 0x45, 0xd0, 0xf1, 0x54, 0x68, 0x1f, 0x9c, 0x77, 0x26, 0x86, 0x7b, 0x43, 0xe7, 0x52, 0x3b, 0x7f, 0x5a, 0xb5, 0xea, 0x96, 0x3e, }; static const unsigned char ecdh_secp256k1_1650_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1650 = { .name = "ecdh_secp256k1_1650", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1650_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1650_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 219 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1651 for ECDH, tcId is 224 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1651_peerpubkey[] = { 0x12, 0x0e, 0x4d, 0xb8, 0x49, 0xe5, 0xd9, 0x60, 0x74, 0x1c, 0x7d, 0x22, 0x1a, 0xa8, 0x0f, 0xe6, 0xe4, 0xfc, 0xd5, 0x78, 0x19, 0x1b, 0x7f, 0x84, 0x5a, 0x68, 0xa6, 0xfc, 0xb8, 0x64, 0x77, 0x19, 0xa6, 0xff, 0xfb, 0x61, 0x65, 0xd8, 0xec, 0x39, 0x38, 0x9e, 0xec, 0xc5, 0x30, 0x83, 0x9c, 0x32, 0x1b, 0x2e, 0x90, 0x40, 0x02, 0x7f, 0xba, 0x5d, 0x9c, 0xb9, 0x31, 0x1d, 0xf7, 0xcd, 0x3d, 0x4d, }; static const unsigned char ecdh_secp256k1_1651_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1651 = { .name = "ecdh_secp256k1_1651", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1651_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1651_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256r1, tcId is 224 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1652 for ECDH, tcId is 229 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1652_peerpubkey[] = { 0x11, 0x15, 0x79, 0x79, 0xc0, 0x8b, 0xcd, 0x17, 0x5d, 0x34, 0x57, 0x22, 0x09, 0xa8, 0x5f, 0x3f, 0x5d, 0x60, 0x2e, 0x35, 0xbd, 0xc3, 0xb5, 0x53, 0xb0, 0xf1, 0x93, 0x07, 0x67, 0x2b, 0x31, 0xba, 0x69, 0xd0, 0x55, 0x6b, 0xce, 0x48, 0xc4, 0x3e, 0x2e, 0x7e, 0x61, 0x77, 0x05, 0x52, 0x21, 0xa4, 0xc4, 0xb7, 0xeb, 0x17, 0xee, 0x97, 0x08, 0xf4, 0x92, 0x16, 0xde, 0x76, 0xd6, 0xe9, 0x2a, 0xb8, }; static const unsigned char ecdh_secp256k1_1652_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_1652 = { .name = "ecdh_secp256k1_1652", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1652_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1652_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 229 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1653 for ECDH, tcId is 233 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1653_peerpubkey[] = { 0x97, 0x7c, 0xb7, 0xfb, 0x9a, 0x0e, 0xc5, 0xb2, 0x08, 0xe8, 0x11, 0xd6, 0xa0, 0x79, 0x5e, 0xb7, 0x8d, 0x76, 0x42, 0xe3, 0xca, 0xc4, 0x2a, 0x80, 0x1b, 0xcc, 0x8f, 0xc0, 0xf0, 0x64, 0x72, 0xd4, }; static const unsigned char ecdh_secp256k1_1653_privkey[] = { 0xd0, 0x91, 0x82, 0xa4, 0xd0, 0xc9, 0x4b, 0xa8, 0x5f, 0x82, 0xef, 0xf9, 0xfc, 0x1b, 0xdd, 0xb0, 0xb0, 0x7d, 0x3f, 0x2a, 0xf8, 0x63, 0x2f, 0xc1, 0xc7, 0x3a, 0x36, 0x04, 0xe8, 0xf0, 0xb3, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256k1_1653 = { .name = "ecdh_secp256k1_1653", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1653_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1653_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 233 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1654 for ECDH, tcId is 234 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1654_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1654_privkey[] = { 0x98, 0xb5, 0xc2, 0x23, 0xcf, 0x9c, 0xc0, 0x92, 0x0a, 0x51, 0x45, 0xba, 0x1f, 0xd2, 0xf6, 0xaf, 0xee, 0x7e, 0x1f, 0x66, 0xd0, 0x12, 0x0b, 0x85, 0x36, 0x68, 0x5f, 0xdf, 0x05, 0xeb, 0xb3, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_1654 = { .name = "ecdh_secp256k1_1654", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1654_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1654_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 234 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1655 for ECDH, tcId is 235 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1655_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_1655_privkey[] = { 0x98, 0xb5, 0xc2, 0x23, 0xcf, 0x9c, 0xc0, 0x92, 0x0a, 0x51, 0x45, 0xba, 0x1f, 0xd2, 0xf6, 0xaf, 0xee, 0x7e, 0x1f, 0x66, 0xd0, 0x12, 0x0b, 0x85, 0x36, 0x68, 0x5f, 0xdf, 0x05, 0xeb, 0xb2, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_1655 = { .name = "ecdh_secp256k1_1655", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1655_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1655_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 235 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1656 for ECDH, tcId is 236 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1656_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1656_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1656_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1656 = { .name = "ecdh_secp256k1_1656", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1656_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1656_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1656_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 236 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1657 for ECDH, tcId is 237 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1657_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1657_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1657_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1657 = { .name = "ecdh_secp256k1_1657", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1657_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1657_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1657_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 237 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1658 for ECDH, tcId is 238 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1658_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1658_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1658_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1658 = { .name = "ecdh_secp256k1_1658", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1658_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1658_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1658_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 238 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1659 for ECDH, tcId is 239 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1659_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1659_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1659_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1659 = { .name = "ecdh_secp256k1_1659", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1659_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1659_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1659_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 239 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1660 for ECDH, tcId is 273 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1660_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1660_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1660_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1660 = { .name = "ecdh_secp256k1_1660", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1660_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1660_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1660_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 273 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1661 for ECDH, tcId is 274 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1661_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1661_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1661_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1661 = { .name = "ecdh_secp256k1_1661", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1661_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1661_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1661_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 274 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1662 for ECDH, tcId is 303 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1662_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1662_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1662_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1662 = { .name = "ecdh_secp256k1_1662", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1662_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1662_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1662_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing sequence with NULL, tcId is 303 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1663 for ECDH, tcId is 306 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1663_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1663_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1663_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1663 = { .name = "ecdh_secp256k1_1663", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1663_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1663_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1663_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 306 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1664 for ECDH, tcId is 311 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1664_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1664_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1664_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1664 = { .name = "ecdh_secp256k1_1664", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1664_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1664_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1664_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 311 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1665 for ECDH, tcId is 315 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1665_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1665_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1665_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1665 = { .name = "ecdh_secp256k1_1665", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1665_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1665_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1665_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "dropping value of sequence, tcId is 315 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1666 for ECDH, tcId is 333 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1666_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1666_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1666_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1666 = { .name = "ecdh_secp256k1_1666", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1666_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1666_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1666_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepend empty sequence, tcId is 333 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1667 for ECDH, tcId is 334 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1667_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1667_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1667_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1667 = { .name = "ecdh_secp256k1_1667", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1667_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1667_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1667_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 334 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1668 for ECDH, tcId is 335 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1668_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1668_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1668_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1668 = { .name = "ecdh_secp256k1_1668", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1668_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1668_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1668_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 335 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1669 for ECDH, tcId is 339 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1669_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1669_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1669_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1669 = { .name = "ecdh_secp256k1_1669", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1669_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1669_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1669_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "sequence of sequence, tcId is 339 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1670 for ECDH, tcId is 341 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1670_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1670_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1670_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1670 = { .name = "ecdh_secp256k1_1670", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1670_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1670_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1670_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 341 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1671 for ECDH, tcId is 342 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1671_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1671_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1671_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1671 = { .name = "ecdh_secp256k1_1671", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1671_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1671_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1671_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 342 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1672 for ECDH, tcId is 343 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1672_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1672_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1672_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1672 = { .name = "ecdh_secp256k1_1672", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1672_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1672_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1672_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 343 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1673 for ECDH, tcId is 344 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1673_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1673_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1673_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1673 = { .name = "ecdh_secp256k1_1673", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1673_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1673_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1673_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 344 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1674 for ECDH, tcId is 345 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1674_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1674_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1674_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1674 = { .name = "ecdh_secp256k1_1674", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1674_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1674_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1674_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 345 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1675 for ECDH, tcId is 346 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1675_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1675_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1675_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1675 = { .name = "ecdh_secp256k1_1675", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1675_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1675_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1675_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 346 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1676 for ECDH, tcId is 347 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1676_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1676_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1676_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1676 = { .name = "ecdh_secp256k1_1676", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1676_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1676_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1676_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 347 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1677 for ECDH, tcId is 366 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1677_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1677_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1677_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1677 = { .name = "ecdh_secp256k1_1677", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1677_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1677_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1677_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "removing oid, tcId is 366 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1678 for ECDH, tcId is 367 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1678_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1678_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1678_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1678 = { .name = "ecdh_secp256k1_1678", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1678_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1678_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1678_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "lonely oid tag, tcId is 367 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1679 for ECDH, tcId is 369 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1679_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1679_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1679_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1679 = { .name = "ecdh_secp256k1_1679", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1679_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1679_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1679_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 369 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1680 for ECDH, tcId is 370 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1680_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1680_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1680_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1680 = { .name = "ecdh_secp256k1_1680", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1680_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1680_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1680_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 370 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1681 for ECDH, tcId is 371 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1681_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1681_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1681_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1681 = { .name = "ecdh_secp256k1_1681", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1681_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1681_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1681_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 371 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1682 for ECDH, tcId is 372 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1682_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1682_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1682_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1682 = { .name = "ecdh_secp256k1_1682", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1682_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1682_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1682_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 372 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1683 for ECDH, tcId is 374 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1683_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1683_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1683_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1683 = { .name = "ecdh_secp256k1_1683", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1683_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1683_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1683_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 374 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1684 for ECDH, tcId is 375 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1684_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1684_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1684_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1684 = { .name = "ecdh_secp256k1_1684", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1684_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1684_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1684_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 375 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1685 for ECDH, tcId is 376 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1685_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1685_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1685_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1685 = { .name = "ecdh_secp256k1_1685", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1685_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1685_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1685_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated length of oid, tcId is 376 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1686 for ECDH, tcId is 378 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1686_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1686_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1686_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1686 = { .name = "ecdh_secp256k1_1686", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1686_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1686_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1686_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 378 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1687 for ECDH, tcId is 379 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1687_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1687_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1687_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1687 = { .name = "ecdh_secp256k1_1687", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1687_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1687_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1687_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 379 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1688 for ECDH, tcId is 380 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1688_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1688_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1688_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1688 = { .name = "ecdh_secp256k1_1688", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1688_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1688_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1688_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 380 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1689 for ECDH, tcId is 382 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1689_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1689_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1689_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1689 = { .name = "ecdh_secp256k1_1689", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1689_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1689_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1689_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 382 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1690 for ECDH, tcId is 385 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1690_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1690_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1690_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1690 = { .name = "ecdh_secp256k1_1690", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1690_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1690_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1690_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 385 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1691 for ECDH, tcId is 387 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1691_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1691_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1691_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1691 = { .name = "ecdh_secp256k1_1691", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1691_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1691_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1691_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 387 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1692 for ECDH, tcId is 392 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1692_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1692_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1692_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1692 = { .name = "ecdh_secp256k1_1692", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1692_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1692_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1692_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 392 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1693 for ECDH, tcId is 393 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1693_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1693_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1693_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1693 = { .name = "ecdh_secp256k1_1693", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1693_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1693_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1693_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 393 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1694 for ECDH, tcId is 396 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1694_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1694_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1694_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1694 = { .name = "ecdh_secp256k1_1694", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1694_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1694_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1694_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 396 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1695 for ECDH, tcId is 397 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1695_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1695_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1695_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1695 = { .name = "ecdh_secp256k1_1695", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1695_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1695_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1695_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 397 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1696 for ECDH, tcId is 398 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1696_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1696_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1696_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1696 = { .name = "ecdh_secp256k1_1696", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1696_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1696_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1696_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 398 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1697 for ECDH, tcId is 399 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1697_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1697_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1697_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1697 = { .name = "ecdh_secp256k1_1697", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1697_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1697_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1697_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 399 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1698 for ECDH, tcId is 400 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1698_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1698_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1698_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1698 = { .name = "ecdh_secp256k1_1698", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1698_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1698_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1698_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 400 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1699 for ECDH, tcId is 401 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1699_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1699_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1699_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1699 = { .name = "ecdh_secp256k1_1699", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1699_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1699_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1699_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 401 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1700 for ECDH, tcId is 402 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1700_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1700_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1700_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1700 = { .name = "ecdh_secp256k1_1700", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1700_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1700_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1700_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 402 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1701 for ECDH, tcId is 403 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1701_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1701_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1701_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1701 = { .name = "ecdh_secp256k1_1701", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1701_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1701_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1701_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 403 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1702 for ECDH, tcId is 404 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1702_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1702_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1702_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1702 = { .name = "ecdh_secp256k1_1702", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1702_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1702_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1702_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 404 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1703 for ECDH, tcId is 405 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1703_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1703_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1703_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1703 = { .name = "ecdh_secp256k1_1703", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1703_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1703_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1703_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 405 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1704 for ECDH, tcId is 406 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1704_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1704_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1704_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1704 = { .name = "ecdh_secp256k1_1704", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1704_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1704_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1704_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 406 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1705 for ECDH, tcId is 407 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1705_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1705_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1705_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1705 = { .name = "ecdh_secp256k1_1705", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1705_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1705_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1705_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 407 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1706 for ECDH, tcId is 408 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1706_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1706_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1706_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1706 = { .name = "ecdh_secp256k1_1706", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1706_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1706_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1706_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 408 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1707 for ECDH, tcId is 409 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1707_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1707_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1707_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1707 = { .name = "ecdh_secp256k1_1707", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1707_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1707_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1707_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 409 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1708 for ECDH, tcId is 410 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1708_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1708_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1708_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1708 = { .name = "ecdh_secp256k1_1708", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1708_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1708_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1708_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 410 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1709 for ECDH, tcId is 411 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1709_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1709_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1709_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1709 = { .name = "ecdh_secp256k1_1709", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1709_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1709_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1709_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 411 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1710 for ECDH, tcId is 416 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1710_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1710_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1710_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1710 = { .name = "ecdh_secp256k1_1710", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1710_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1710_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1710_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of bit string, tcId is 416 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1711 for ECDH, tcId is 417 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1711_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1711_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1711_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1711 = { .name = "ecdh_secp256k1_1711", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1711_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1711_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1711_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of bit string contains leading 0, tcId is 417 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1712 for ECDH, tcId is 429 in file ecdh_secp256k1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1712_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0x67, }; static const unsigned char ecdh_secp256k1_1712_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1712_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1712 = { .name = "ecdh_secp256k1_1712", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1712_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1712_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1712_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to bit string, tcId is 429 in file ecdh_secp256k1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1713 for ECDH, tcId is 440 in file ecdh_secp256k1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_1713_peerpubkey[] = { 0xe0, 0x3f, 0xac, 0xa4, 0x2a, 0x8b, 0x81, 0x17, 0x59, 0x21, 0x1d, 0x49, 0xb6, 0x9d, 0xd0, 0xe0, 0xa6, 0x86, 0xb2, 0x8f, 0xf7, 0xb5, 0x81, 0x77, 0x89, 0xa2, 0xf8, 0x00, 0x50, 0x79, 0x13, 0x35, 0xbf, 0x34, 0xcf, 0x49, 0x50, 0x29, 0x07, 0x5d, 0xe2, 0x56, 0x03, 0xfd, 0x56, 0xdd, 0x3c, 0xef, 0x36, 0xee, 0x85, 0x03, 0xb9, 0xf3, 0xb0, 0xc1, 0x34, 0x0c, 0x8e, 0x40, 0x12, 0xda, 0x32, 0xe7, }; static const unsigned char ecdh_secp256k1_1713_privkey[] = { 0x04, 0x95, 0x80, 0x0a, 0x83, 0xe6, 0xc1, 0xd6, 0x18, 0x86, 0xd3, 0x32, 0xe2, 0x61, 0x3a, 0xa3, 0xf7, 0x0d, 0xf2, 0x28, 0x65, 0xb0, 0x38, 0x7c, 0xa6, 0xca, 0x19, 0x5c, 0xfc, 0xd2, 0xb2, 0xb1, }; static const unsigned char ecdh_secp256k1_1713_sharedsecret[] = { 0xeb, 0xdc, 0xa7, 0x4d, 0xbf, 0x2c, 0x8e, 0xf6, 0x3a, 0xf8, 0xd8, 0x6e, 0x0e, 0x0e, 0xe4, 0x51, 0x13, 0x99, 0xbc, 0x08, 0xa3, 0x95, 0xc4, 0xea, 0x05, 0x0b, 0xab, 0x43, 0xa2, 0x9d, 0x26, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256k1_1713 = { .name = "ecdh_secp256k1_1713", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_1713_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_1713_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_1713_sharedsecret, .sharedsecretlen = 32, .result = -1, .comment = "modify last byte of bit string, tcId is 440 in file ecdh_secp256k1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 1714 for ECDH, tcId is 1 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1714_peerpubkey[] = { 0x62, 0xd5, 0xbd, 0x33, 0x72, 0xaf, 0x75, 0xfe, 0x85, 0xa0, 0x40, 0x71, 0x5d, 0x0f, 0x50, 0x24, 0x28, 0xe0, 0x70, 0x46, 0x86, 0x8b, 0x0b, 0xfd, 0xfa, 0x61, 0xd7, 0x31, 0xaf, 0xe4, 0x4f, 0x26, 0xac, 0x33, 0x3a, 0x93, 0xa9, 0xe7, 0x0a, 0x81, 0xcd, 0x5a, 0x95, 0xb5, 0xbf, 0x8d, 0x13, 0x99, 0x0e, 0xb7, 0x41, 0xc8, 0xc3, 0x88, 0x72, 0xb4, 0xa0, 0x7d, 0x27, 0x5a, 0x01, 0x4e, 0x30, 0xcf, }; static const unsigned char ecdh_secp256r1_1714_privkey[] = { 0x06, 0x12, 0x46, 0x5c, 0x89, 0xa0, 0x23, 0xab, 0x17, 0x85, 0x5b, 0x0a, 0x6b, 0xce, 0xbf, 0xd3, 0xfe, 0xbb, 0x53, 0xae, 0xf8, 0x41, 0x38, 0x64, 0x7b, 0x53, 0x52, 0xe0, 0x2c, 0x10, 0xc3, 0x46, }; static const unsigned char ecdh_secp256r1_1714_sharedsecret[] = { 0x53, 0x02, 0x0d, 0x90, 0x8b, 0x02, 0x19, 0x32, 0x8b, 0x65, 0x8b, 0x52, 0x5f, 0x26, 0x78, 0x0e, 0x3a, 0xe1, 0x2b, 0xcd, 0x95, 0x2b, 0xb2, 0x5a, 0x93, 0xbc, 0x08, 0x95, 0xe1, 0x71, 0x42, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256r1_1714 = { .name = "ecdh_secp256r1_1714", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1714_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1714_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1714_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1715 for ECDH, tcId is 2 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1715_peerpubkey[] = { 0x62, 0xd5, 0xbd, 0x33, 0x72, 0xaf, 0x75, 0xfe, 0x85, 0xa0, 0x40, 0x71, 0x5d, 0x0f, 0x50, 0x24, 0x28, 0xe0, 0x70, 0x46, 0x86, 0x8b, 0x0b, 0xfd, 0xfa, 0x61, 0xd7, 0x31, 0xaf, 0xe4, 0x4f, 0x26, }; static const unsigned char ecdh_secp256r1_1715_privkey[] = { 0x06, 0x12, 0x46, 0x5c, 0x89, 0xa0, 0x23, 0xab, 0x17, 0x85, 0x5b, 0x0a, 0x6b, 0xce, 0xbf, 0xd3, 0xfe, 0xbb, 0x53, 0xae, 0xf8, 0x41, 0x38, 0x64, 0x7b, 0x53, 0x52, 0xe0, 0x2c, 0x10, 0xc3, 0x46, }; static const unsigned char ecdh_secp256r1_1715_sharedsecret[] = { 0x53, 0x02, 0x0d, 0x90, 0x8b, 0x02, 0x19, 0x32, 0x8b, 0x65, 0x8b, 0x52, 0x5f, 0x26, 0x78, 0x0e, 0x3a, 0xe1, 0x2b, 0xcd, 0x95, 0x2b, 0xb2, 0x5a, 0x93, 0xbc, 0x08, 0x95, 0xe1, 0x71, 0x42, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256r1_1715 = { .name = "ecdh_secp256r1_1715", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1715_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1715_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1715_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1716 for ECDH, tcId is 3 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1716_peerpubkey[] = { 0x58, 0xfd, 0x41, 0x68, 0xa8, 0x77, 0x95, 0x60, 0x3e, 0x2b, 0x04, 0x39, 0x02, 0x85, 0xbd, 0xca, 0x6e, 0x57, 0xde, 0x60, 0x27, 0xfe, 0x21, 0x1d, 0xd9, 0xd2, 0x5e, 0x22, 0x12, 0xd2, 0x9e, 0x62, 0x08, 0x0d, 0x36, 0xbd, 0x22, 0x4d, 0x74, 0x05, 0x50, 0x92, 0x95, 0xee, 0xd0, 0x2a, 0x17, 0x15, 0x0e, 0x03, 0xb3, 0x14, 0xf9, 0x6d, 0xa3, 0x74, 0x45, 0xb0, 0xd1, 0xd2, 0x93, 0x77, 0xd1, 0x2c, }; static const unsigned char ecdh_secp256r1_1716_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1716_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1716 = { .name = "ecdh_secp256r1_1716", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1716_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1716_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1716_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1717 for ECDH, tcId is 4 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1717_peerpubkey[] = { 0x0f, 0x6d, 0x20, 0xc0, 0x42, 0x61, 0xec, 0xc3, 0xe9, 0x28, 0x46, 0xac, 0xad, 0x48, 0xdc, 0x8e, 0xc5, 0xee, 0x35, 0xae, 0x08, 0x83, 0xf0, 0xd2, 0xea, 0x71, 0x21, 0x69, 0x06, 0xee, 0x1c, 0x47, 0xc0, 0x42, 0x68, 0x9a, 0x99, 0x6d, 0xd1, 0x28, 0x30, 0xae, 0x45, 0x93, 0x82, 0xe9, 0x4a, 0xac, 0x56, 0xb7, 0x17, 0xaf, 0x2e, 0x20, 0x80, 0x21, 0x5f, 0x9e, 0x41, 0x94, 0x9b, 0x1f, 0x52, 0xbe, }; static const unsigned char ecdh_secp256r1_1717_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1717_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1717 = { .name = "ecdh_secp256r1_1717", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1717_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1717_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1717_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1718 for ECDH, tcId is 5 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1718_peerpubkey[] = { 0x00, 0xc7, 0xde, 0xfe, 0xb1, 0xa1, 0x62, 0x36, 0x73, 0x8e, 0x9a, 0x11, 0x23, 0xba, 0x62, 0x1b, 0xc8, 0xe9, 0xa3, 0xf2, 0x48, 0x5b, 0x3f, 0x8f, 0xfd, 0xe7, 0xf9, 0xce, 0x98, 0xf5, 0xa8, 0xa1, 0xcb, 0x33, 0x8c, 0x39, 0x12, 0xb1, 0x79, 0x2f, 0x60, 0xc2, 0xb0, 0x6e, 0xc5, 0x23, 0x1e, 0x2d, 0x84, 0xb0, 0xe5, 0x96, 0xe9, 0xb7, 0x6d, 0x41, 0x9c, 0xe1, 0x05, 0xec, 0xe3, 0x79, 0x1d, 0xbc, }; static const unsigned char ecdh_secp256r1_1718_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1718_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_1718 = { .name = "ecdh_secp256r1_1718", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1718_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1718_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1718_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1719 for ECDH, tcId is 6 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1719_peerpubkey[] = { 0xe9, 0xb9, 0x8f, 0xb2, 0xc0, 0xac, 0x04, 0x5f, 0x8c, 0x76, 0x12, 0x5f, 0xfd, 0x99, 0xeb, 0x8a, 0x51, 0x57, 0xbe, 0x1d, 0x7d, 0xb3, 0xe8, 0x5d, 0x65, 0x5e, 0xc1, 0xd8, 0x21, 0x02, 0x88, 0xcf, 0x21, 0x8d, 0xf2, 0x4f, 0xd2, 0xc2, 0x74, 0x6b, 0xe5, 0x9d, 0xf4, 0x12, 0x62, 0xef, 0x3a, 0x97, 0xd9, 0x86, 0x74, 0x4b, 0x28, 0x36, 0x74, 0x8a, 0x74, 0x86, 0x23, 0x0a, 0x31, 0x9f, 0xfe, 0xc0, }; static const unsigned char ecdh_secp256r1_1719_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1719_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1719 = { .name = "ecdh_secp256r1_1719", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1719_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1719_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1719_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1720 for ECDH, tcId is 7 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1720_peerpubkey[] = { 0xe9, 0x48, 0x4e, 0x58, 0xf3, 0x33, 0x1b, 0x66, 0xff, 0xed, 0x6d, 0x90, 0xcb, 0x1c, 0x78, 0x06, 0x5f, 0xa2, 0x8c, 0xfb, 0xa5, 0xc7, 0xdd, 0x43, 0x52, 0x01, 0x3d, 0x32, 0x52, 0xee, 0x42, 0x77, 0xbd, 0x75, 0x03, 0xb0, 0x45, 0xa3, 0x8b, 0x4b, 0x24, 0x7b, 0x32, 0xc5, 0x95, 0x93, 0x58, 0x0f, 0x39, 0xe6, 0xab, 0xfa, 0x37, 0x6c, 0x3d, 0xca, 0x20, 0xcf, 0x7f, 0x9c, 0xfb, 0x65, 0x9e, 0x13, }; static const unsigned char ecdh_secp256r1_1720_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1720_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1720 = { .name = "ecdh_secp256r1_1720", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1720_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1720_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1720_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1721 for ECDH, tcId is 8 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1721_peerpubkey[] = { 0x76, 0x7d, 0x7f, 0xbb, 0x84, 0xaa, 0x6a, 0x4d, 0xb1, 0x07, 0x93, 0x72, 0x64, 0x4e, 0x42, 0xec, 0xb2, 0xfe, 0xc2, 0x00, 0xc1, 0x78, 0x82, 0x23, 0x92, 0xcb, 0x8b, 0x95, 0x0f, 0xfd, 0xd0, 0xc9, 0x1c, 0x86, 0x85, 0x3c, 0xaf, 0xd0, 0x9b, 0x52, 0xba, 0x2f, 0x28, 0x7f, 0x0e, 0xba, 0xa2, 0x64, 0x15, 0xa3, 0xcf, 0xab, 0xaf, 0x92, 0xc6, 0xa6, 0x17, 0xa1, 0x99, 0x88, 0x56, 0x3d, 0x9d, 0xea, }; static const unsigned char ecdh_secp256r1_1721_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1721_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_1721 = { .name = "ecdh_secp256r1_1721", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1721_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1721_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1721_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1722 for ECDH, tcId is 9 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1722_peerpubkey[] = { 0xc7, 0x4d, 0x54, 0x6f, 0x2f, 0xcc, 0x6d, 0xd3, 0x92, 0xf8, 0x5e, 0x5b, 0xe1, 0x67, 0xe3, 0x58, 0xde, 0x90, 0x87, 0x56, 0xb0, 0xc0, 0xbb, 0x01, 0xcb, 0x69, 0xd8, 0x64, 0xca, 0x08, 0x3e, 0x1c, 0x93, 0xf9, 0x59, 0xee, 0xce, 0x6e, 0x10, 0xee, 0x11, 0xbd, 0x39, 0x34, 0x20, 0x7d, 0x65, 0xae, 0x28, 0xaf, 0x68, 0xb0, 0x92, 0x58, 0x5a, 0x15, 0x09, 0x26, 0x0e, 0xce, 0xb3, 0x9b, 0x92, 0xef, }; static const unsigned char ecdh_secp256r1_1722_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1722_sharedsecret[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1722 = { .name = "ecdh_secp256r1_1722", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1722_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1722_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1722_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1723 for ECDH, tcId is 10 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1723_peerpubkey[] = { 0x34, 0xfc, 0x9f, 0x1e, 0x7a, 0x09, 0x4c, 0xd2, 0x95, 0x98, 0xd1, 0x84, 0x1f, 0xa9, 0x61, 0x3d, 0xbe, 0x82, 0x31, 0x3d, 0x63, 0x3a, 0x51, 0xd6, 0x3f, 0xb6, 0xef, 0xf0, 0x74, 0xcc, 0x9b, 0x9a, 0x4e, 0xcf, 0xd9, 0xf2, 0x58, 0xc5, 0xc4, 0xd4, 0x21, 0x0b, 0x49, 0x75, 0x12, 0x13, 0xa2, 0x4c, 0x59, 0x69, 0x82, 0xbd, 0x1d, 0x54, 0xe0, 0x44, 0x54, 0x43, 0xf2, 0x1e, 0xf1, 0x54, 0x92, 0xa5, }; static const unsigned char ecdh_secp256r1_1723_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1723_sharedsecret[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1723 = { .name = "ecdh_secp256r1_1723", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1723_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1723_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1723_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1724 for ECDH, tcId is 11 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1724_peerpubkey[] = { 0xd5, 0xc9, 0x6e, 0xfd, 0x19, 0x07, 0xfd, 0x48, 0xde, 0x2a, 0xd7, 0x15, 0xac, 0xf8, 0x2e, 0xae, 0x5c, 0x66, 0x90, 0xfe, 0x3e, 0xfe, 0x16, 0xa7, 0x8d, 0x61, 0xc6, 0x8d, 0x3b, 0xfd, 0x10, 0xdf, 0x03, 0xea, 0xc8, 0x16, 0xb9, 0xe7, 0xb7, 0x76, 0x19, 0x2a, 0x3f, 0x50, 0x75, 0x88, 0x7c, 0x0e, 0x22, 0x56, 0x17, 0x50, 0x58, 0x33, 0xca, 0x99, 0x7c, 0xda, 0x32, 0xfd, 0x0f, 0x67, 0x3c, 0x5e, }; static const unsigned char ecdh_secp256r1_1724_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1724_sharedsecret[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_1724 = { .name = "ecdh_secp256r1_1724", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1724_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1724_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1724_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1725 for ECDH, tcId is 12 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1725_peerpubkey[] = { 0xf4, 0x75, 0xf5, 0x03, 0xa7, 0x70, 0xdf, 0x72, 0xc4, 0x5a, 0xed, 0xfe, 0x42, 0xc0, 0x08, 0xf5, 0x9a, 0xa5, 0x7e, 0x72, 0xb2, 0x32, 0xf2, 0x66, 0x00, 0xbd, 0xd0, 0x35, 0x39, 0x57, 0xcb, 0x20, 0xbd, 0xb8, 0xf6, 0x40, 0x5b, 0x49, 0x18, 0x05, 0x0a, 0x35, 0x49, 0xf4, 0x4c, 0x07, 0xa8, 0xeb, 0xa8, 0x20, 0xcd, 0xce, 0x4e, 0xce, 0x69, 0x98, 0x88, 0xc6, 0x38, 0xdf, 0x66, 0xf5, 0x4f, 0x7c, }; static const unsigned char ecdh_secp256r1_1725_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1725_sharedsecret[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_1725 = { .name = "ecdh_secp256r1_1725", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1725_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1725_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1725_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1726 for ECDH, tcId is 13 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1726_peerpubkey[] = { 0xf3, 0xcb, 0x67, 0x54, 0xb7, 0xe2, 0xa8, 0x6d, 0x06, 0x4d, 0xfb, 0x9f, 0x90, 0x31, 0x85, 0xaa, 0xa4, 0xc9, 0x2b, 0x48, 0x1c, 0x2c, 0x1a, 0x1f, 0xf2, 0x76, 0x30, 0x3b, 0xbc, 0x41, 0x83, 0xe4, 0x9c, 0x31, 0x85, 0x99, 0xb0, 0x98, 0x4c, 0x35, 0x63, 0xdf, 0x33, 0x93, 0x11, 0xfe, 0x14, 0x3a, 0x7d, 0x92, 0x1e, 0xe7, 0x5b, 0x75, 0x5a, 0x52, 0xc6, 0xf8, 0x04, 0xf8, 0x97, 0xb8, 0x09, 0xf7, }; static const unsigned char ecdh_secp256r1_1726_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1726_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1726 = { .name = "ecdh_secp256r1_1726", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1726_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1726_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1726_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1727 for ECDH, tcId is 14 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1727_peerpubkey[] = { 0xcc, 0xe1, 0x3f, 0xbd, 0xc9, 0x6a, 0x94, 0x6d, 0xfb, 0x8c, 0x6d, 0x9e, 0xd7, 0x62, 0xdb, 0xd1, 0x73, 0x16, 0x30, 0x45, 0x56, 0x89, 0xf5, 0x7a, 0x43, 0x7f, 0xee, 0x12, 0x4d, 0xd5, 0x4c, 0xec, 0xae, 0xf7, 0x80, 0x26, 0xc6, 0x53, 0x03, 0x0c, 0xf2, 0xf3, 0x14, 0xa6, 0x70, 0x64, 0x23, 0x6b, 0x0a, 0x35, 0x4d, 0xef, 0xeb, 0xc5, 0xe9, 0x0c, 0x94, 0x12, 0x4e, 0x9b, 0xf5, 0xc4, 0xfc, 0x24, }; static const unsigned char ecdh_secp256r1_1727_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1727_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256r1_1727 = { .name = "ecdh_secp256r1_1727", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1727_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1727_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1727_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1728 for ECDH, tcId is 15 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1728_peerpubkey[] = { 0x76, 0x33, 0xdf, 0xd0, 0xad, 0x06, 0x76, 0x50, 0x97, 0xbc, 0x11, 0xbd, 0x50, 0x22, 0xb2, 0x00, 0xdf, 0x31, 0xf2, 0x8c, 0x4f, 0xf0, 0x62, 0x54, 0x21, 0x22, 0x1a, 0xc7, 0xee, 0xb6, 0xe6, 0xf4, 0xcb, 0x9c, 0x67, 0x69, 0x36, 0x09, 0xdd, 0xd6, 0xf9, 0x23, 0x43, 0xa5, 0xa1, 0xc6, 0x35, 0x40, 0x82, 0x40, 0xf4, 0xf8, 0xe2, 0x71, 0x20, 0xc1, 0x25, 0x54, 0xc7, 0xff, 0x8c, 0x76, 0xe2, 0xfe, }; static const unsigned char ecdh_secp256r1_1728_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1728_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1728 = { .name = "ecdh_secp256r1_1728", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1728_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1728_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1728_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1729 for ECDH, tcId is 16 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1729_peerpubkey[] = { 0xa3, 0x86, 0xac, 0xe5, 0x73, 0xf8, 0x75, 0x58, 0xa6, 0x8e, 0xad, 0x2a, 0x20, 0x08, 0x8e, 0x3f, 0xe9, 0x28, 0xbd, 0xae, 0x9e, 0x10, 0x94, 0x46, 0xf9, 0x3a, 0x07, 0x8c, 0x15, 0x74, 0x1f, 0x04, 0x21, 0x26, 0x1e, 0x6d, 0xb2, 0xbf, 0x12, 0x10, 0x6e, 0x4c, 0x6b, 0xf8, 0x5b, 0x95, 0x81, 0xb4, 0xc0, 0x30, 0x2a, 0x52, 0x62, 0x22, 0xf9, 0x0a, 0xbc, 0x5a, 0x54, 0x92, 0x06, 0xb1, 0x10, 0x11, }; static const unsigned char ecdh_secp256r1_1729_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1729_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1729 = { .name = "ecdh_secp256r1_1729", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1729_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1729_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1729_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1730 for ECDH, tcId is 17 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1730_peerpubkey[] = { 0x8e, 0x7b, 0x50, 0xf7, 0xd8, 0xc4, 0x4d, 0x5d, 0x34, 0x96, 0xc4, 0x31, 0x41, 0xa5, 0x02, 0xf4, 0xa4, 0x3f, 0x15, 0x3d, 0x03, 0xad, 0x43, 0xed, 0xa8, 0xe3, 0x95, 0x97, 0xf1, 0xd4, 0x77, 0xb8, 0x64, 0x7f, 0x3d, 0xa6, 0x79, 0x69, 0xb7, 0xf9, 0x89, 0xff, 0x4a, 0xdd, 0xc3, 0x93, 0x51, 0x5a, 0xf4, 0x0c, 0x82, 0x08, 0x5c, 0xe1, 0xf2, 0xee, 0x19, 0x54, 0x12, 0xc6, 0xf5, 0x83, 0x77, 0x4f, }; static const unsigned char ecdh_secp256r1_1730_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1730_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1730 = { .name = "ecdh_secp256r1_1730", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1730_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1730_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1730_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1731 for ECDH, tcId is 18 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1731_peerpubkey[] = { 0xc8, 0x27, 0xfb, 0x93, 0x0f, 0xd5, 0x1d, 0x92, 0x60, 0x86, 0x19, 0x1b, 0x50, 0x2a, 0xf8, 0x3a, 0xbb, 0x5f, 0x71, 0x7d, 0xeb, 0xc8, 0xde, 0x29, 0x89, 0x7a, 0x39, 0x34, 0xb2, 0x57, 0x1c, 0xa0, 0x59, 0x90, 0xc0, 0x59, 0x7b, 0x0b, 0x7a, 0x2e, 0x42, 0xfe, 0xbd, 0x56, 0xb1, 0x32, 0x35, 0xd1, 0xd4, 0x08, 0xd7, 0x6e, 0xd2, 0xc9, 0x3b, 0x3f, 0xac, 0xf5, 0x14, 0xd9, 0x02, 0xf6, 0x91, 0x0a, }; static const unsigned char ecdh_secp256r1_1731_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1731_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1731 = { .name = "ecdh_secp256r1_1731", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1731_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1731_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1731_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1732 for ECDH, tcId is 19 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1732_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0x4f, 0xde, 0x0a, 0x4e, 0xf9, 0x38, 0x87, 0x46, 0x97, 0x93, 0x27, 0x0e, 0xb2, 0xff, 0x14, 0x82, 0x87, 0xda, 0x92, 0x65, 0xb0, 0x33, 0x4f, 0x9e, 0x26, 0x09, 0xaa, 0xc1, 0x6e, 0x8a, 0xd5, 0x03, }; static const unsigned char ecdh_secp256r1_1732_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1732_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1732 = { .name = "ecdh_secp256r1_1732", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1732_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1732_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1732_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 19 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1733 for ECDH, tcId is 20 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1733_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0x18, 0xab, 0xe6, 0x6f, 0x57, 0x5e, 0xe8, 0xa2, 0xf1, 0xc4, 0xa8, 0x0e, 0x35, 0x26, 0x0a, 0xe8, 0x2a, 0xd7, 0xd6, 0xf6, 0x61, 0xd1, 0x5f, 0x06, 0x96, 0x79, 0x30, 0xa5, 0x85, 0x09, 0x7e, 0xf7, }; static const unsigned char ecdh_secp256r1_1733_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1733_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1733 = { .name = "ecdh_secp256r1_1733", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1733_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1733_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1733_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 20 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1734 for ECDH, tcId is 21 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1734_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x89, 0x4e, 0x90, 0xf0, 0xdf, 0x1b, 0x0e, 0x6c, 0xad, 0xb0, 0x3b, 0x9d, 0xe2, 0x4f, 0x6a, 0x22, 0xd1, 0xbd, 0x0a, 0x4a, 0x58, 0xcd, 0x64, 0x5c, 0x27, 0x3c, 0xae, 0x1c, 0x61, 0x9b, 0xfd, 0x61, }; static const unsigned char ecdh_secp256r1_1734_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1734_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1734 = { .name = "ecdh_secp256r1_1734", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1734_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1734_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1734_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 21 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1735 for ECDH, tcId is 22 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1735_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0xb0, 0x21, 0xf5, 0xb0, 0x06, 0xc7, 0x78, 0xba, 0x68, 0x6c, 0xd8, 0xf1, 0x4d, 0x00, 0xeb, 0x7d, 0x78, 0x25, 0x6d, 0x9b, 0x4f, 0xcc, 0xb0, 0x61, 0xd9, 0xf6, 0x55, 0x3e, 0x91, 0x75, 0x2a, 0xfc, }; static const unsigned char ecdh_secp256r1_1735_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1735_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1735 = { .name = "ecdh_secp256r1_1735", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1735_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1735_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1735_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 22 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1736 for ECDH, tcId is 23 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1736_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0xe7, 0x54, 0x19, 0x8f, 0xa8, 0xa1, 0x17, 0x5e, 0x0e, 0x3b, 0x57, 0xf1, 0xca, 0xd9, 0xf5, 0x17, 0xd5, 0x28, 0x29, 0x0a, 0x9e, 0x2e, 0xa0, 0xf9, 0x69, 0x86, 0xcf, 0x5a, 0x7a, 0xf6, 0x81, 0x08, }; static const unsigned char ecdh_secp256r1_1736_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1736_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1736 = { .name = "ecdh_secp256r1_1736", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1736_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1736_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1736_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 23 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1737 for ECDH, tcId is 24 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1737_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x76, 0xb1, 0x6f, 0x0e, 0x20, 0xe4, 0xf1, 0x94, 0x52, 0x4f, 0xc4, 0x62, 0x1d, 0xb0, 0x95, 0xdd, 0x2e, 0x42, 0xf5, 0xb6, 0xa7, 0x32, 0x9b, 0xa3, 0xd8, 0xc3, 0x51, 0xe3, 0x9e, 0x64, 0x02, 0x9e, }; static const unsigned char ecdh_secp256r1_1737_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1737_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1737 = { .name = "ecdh_secp256r1_1737", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1737_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1737_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1737_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 24 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1738 for ECDH, tcId is 25 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1738_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0xb0, 0x2c, 0x82, 0xf3, 0xa6, 0x1a, 0x37, 0x6d, 0xb7, 0x95, 0x62, 0x6e, 0x94, 0x00, 0x55, 0x71, 0x12, 0x27, 0x3a, 0x36, 0xcd, 0xdb, 0x08, 0xca, 0xaa, 0x43, 0x95, 0x39, 0x65, 0x45, 0x47, 0x30, }; static const unsigned char ecdh_secp256r1_1738_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1738_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1738 = { .name = "ecdh_secp256r1_1738", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1738_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1738_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1738_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 25 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1739 for ECDH, tcId is 26 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1739_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x8e, 0xa7, 0xa0, 0x70, 0x23, 0xef, 0x67, 0x67, 0x70, 0x24, 0xbd, 0x38, 0x41, 0xe1, 0x87, 0xc6, 0x4b, 0x30, 0xa3, 0x0a, 0x37, 0x50, 0xeb, 0x2e, 0xe8, 0x73, 0xfb, 0xe5, 0x8f, 0xa1, 0x35, 0x7b, }; static const unsigned char ecdh_secp256r1_1739_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1739_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1739 = { .name = "ecdh_secp256r1_1739", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1739_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1739_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1739_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 26 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1740 for ECDH, tcId is 27 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1740_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0x11, 0x81, 0x82, 0xb8, 0x5e, 0xf4, 0x66, 0xeb, 0x9a, 0x8e, 0x87, 0xf9, 0x66, 0x1f, 0x7d, 0x01, 0x79, 0x84, 0xc1, 0x5e, 0xa8, 0x20, 0x43, 0xf5, 0x36, 0xd1, 0xee, 0x6a, 0x6d, 0x95, 0xb5, 0x09, }; static const unsigned char ecdh_secp256r1_1740_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1740_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1740 = { .name = "ecdh_secp256r1_1740", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1740_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1740_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1740_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 27 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1741 for ECDH, tcId is 28 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1741_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0x4f, 0xd3, 0x7d, 0x0b, 0x59, 0xe5, 0xc8, 0x93, 0x48, 0x6a, 0x9d, 0x91, 0x6b, 0xff, 0xaa, 0x8e, 0xed, 0xd8, 0xc5, 0xca, 0x32, 0x24, 0xf7, 0x35, 0x55, 0xbc, 0x6a, 0xc6, 0x9a, 0xba, 0xb8, 0xcf, }; static const unsigned char ecdh_secp256r1_1741_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1741_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1741 = { .name = "ecdh_secp256r1_1741", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1741_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1741_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1741_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 28 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1742 for ECDH, tcId is 29 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1742_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x71, 0x58, 0x5f, 0x8e, 0xdc, 0x10, 0x98, 0x99, 0x8f, 0xdb, 0x42, 0xc7, 0xbe, 0x1e, 0x78, 0x39, 0xb4, 0xcf, 0x5c, 0xf6, 0xc8, 0xaf, 0x14, 0xd1, 0x17, 0x8c, 0x04, 0x1a, 0x70, 0x5e, 0xca, 0x84, }; static const unsigned char ecdh_secp256r1_1742_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1742_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_1742 = { .name = "ecdh_secp256r1_1742", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1742_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1742_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1742_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 29 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1743 for ECDH, tcId is 30 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1743_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0xee, 0x7e, 0x7d, 0x46, 0xa1, 0x0b, 0x99, 0x15, 0x65, 0x71, 0x78, 0x06, 0x99, 0xe0, 0x82, 0xfe, 0x86, 0x7b, 0x3e, 0xa2, 0x57, 0xdf, 0xbc, 0x0a, 0xc9, 0x2e, 0x11, 0x95, 0x92, 0x6a, 0x4a, 0xf6, }; static const unsigned char ecdh_secp256r1_1743_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_1743_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_1743 = { .name = "ecdh_secp256r1_1743", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1743_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1743_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1743_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 30 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1744 for ECDH, tcId is 31 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1744_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_1744_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1744_sharedsecret[] = { 0xcf, 0xe4, 0x07, 0x7c, 0x87, 0x30, 0xb1, 0xc9, 0x38, 0x45, 0x81, 0xd3, 0x6b, 0xff, 0x55, 0x42, 0xbc, 0x41, 0x7c, 0x9e, 0xff, 0x5c, 0x2a, 0xfc, 0xb9, 0x8c, 0xc8, 0x82, 0x9b, 0x2c, 0xe8, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256r1_1744 = { .name = "ecdh_secp256r1_1744", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1744_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1744_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1744_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1745 for ECDH, tcId is 32 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1745_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0x2b, 0x92, 0xb4, 0xc5, 0x96, 0xa5, 0xa4, 0x7f, 0x8b, 0x04, 0x1d, 0x2d, 0xea, 0x60, 0x43, 0x02, 0x1a, 0xc7, 0x7b, 0x9a, 0x80, 0xb1, 0x34, 0x3a, 0xc9, 0xd7, 0x78, 0xf4, 0xf8, 0xf7, 0x33, }; static const unsigned char ecdh_secp256r1_1745_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1745_sharedsecret[] = { 0x49, 0xae, 0x50, 0xfe, 0x09, 0x6a, 0x6c, 0xd2, 0x66, 0x98, 0xb7, 0x83, 0x56, 0xb2, 0xc8, 0xad, 0xf1, 0xf6, 0xa3, 0x49, 0x0f, 0x14, 0xe3, 0x64, 0x62, 0x9f, 0x7a, 0x06, 0x39, 0x44, 0x25, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_1745 = { .name = "ecdh_secp256r1_1745", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1745_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1745_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1745_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1746 for ECDH, tcId is 33 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1746_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x12, 0x0b, 0xe6, 0xab, 0x31, 0xed, 0xfa, 0x34, 0x76, 0x8c, 0x43, 0x87, 0xd2, 0xf8, 0x4f, 0xb4, 0xb0, 0xbe, 0x8a, 0x9a, 0x98, 0x58, 0x64, 0xa1, 0x57, 0x5f, 0x44, 0x36, 0xbb, 0x37, 0xb0, }; static const unsigned char ecdh_secp256r1_1746_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1746_sharedsecret[] = { 0x5a, 0x13, 0x34, 0x57, 0x2b, 0x2a, 0x71, 0x1e, 0xad, 0x8b, 0x46, 0x53, 0xeb, 0x31, 0x0c, 0xd8, 0xd9, 0xfd, 0x11, 0x43, 0x99, 0x37, 0x9a, 0x8f, 0x6b, 0x87, 0x2e, 0x3b, 0x8f, 0xdd, 0xa2, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256r1_1746 = { .name = "ecdh_secp256r1_1746", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1746_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1746_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1746_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1747 for ECDH, tcId is 34 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1747_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x46, 0x2c, 0x04, 0x66, 0xe4, 0x18, 0x02, 0x23, 0x8d, 0x6c, 0x92, 0x5e, 0xcb, 0xef, 0xc7, 0x47, 0xcf, 0xe5, 0x05, 0xea, 0x19, 0x6a, 0xf9, 0xa2, 0xd1, 0x1b, 0x62, 0x85, 0x0f, 0xce, 0x94, 0x6e, }; static const unsigned char ecdh_secp256r1_1747_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1747_sharedsecret[] = { 0xc7, 0x37, 0x55, 0x13, 0x3b, 0x6b, 0x9b, 0x4b, 0x2a, 0x00, 0x63, 0x1c, 0xbc, 0x79, 0x40, 0xec, 0xbe, 0x6e, 0xc0, 0x8f, 0x20, 0x44, 0x80, 0x71, 0x42, 0x2e, 0x33, 0x62, 0xf2, 0x55, 0x68, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_1747 = { .name = "ecdh_secp256r1_1747", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1747_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1747_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1747_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1748 for ECDH, tcId is 35 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1748_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x15, 0x82, 0xfa, 0x32, 0xe2, 0xd4, 0xa8, 0x9d, 0xfc, 0xfb, 0x3d, 0x0b, 0x14, 0x9f, 0x66, 0x7d, 0xba, 0x33, 0x29, 0x49, 0x0f, 0x4d, 0x64, 0xee, 0x2a, 0xd5, 0x86, 0xc0, 0xc9, 0xe8, 0xc5, 0x08, }; static const unsigned char ecdh_secp256r1_1748_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1748_sharedsecret[] = { 0x06, 0xfa, 0x10, 0x59, 0x93, 0x5e, 0x47, 0xa9, 0xfd, 0x66, 0x7e, 0x13, 0xf4, 0x69, 0x61, 0x4e, 0xb2, 0x57, 0xcc, 0x9a, 0x7e, 0x3f, 0xc5, 0x99, 0xbf, 0xb9, 0x27, 0x80, 0xd5, 0x9b, 0x14, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1748 = { .name = "ecdh_secp256r1_1748", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1748_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1748_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1748_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1749 for ECDH, tcId is 36 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1749_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, 0x68, 0x4c, 0x8a, 0x95, 0x86, 0xed, 0x6f, 0x9c, 0xbe, 0x44, 0x70, 0x58, 0xa7, 0xda, 0x21, 0x08, 0xba, 0xb1, 0xe5, 0xe0, 0xa6, 0x0d, 0x1f, 0x73, 0xe4, 0xe2, 0xe7, 0x13, 0xf0, 0xa3, 0xdf, 0xe0, }; static const unsigned char ecdh_secp256r1_1749_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1749_sharedsecret[] = { 0xf2, 0x37, 0xdf, 0x4c, 0x10, 0xbd, 0x3e, 0x35, 0x79, 0x71, 0xbb, 0x2b, 0x16, 0xb2, 0x93, 0x56, 0x6b, 0x7e, 0x35, 0x5b, 0xdc, 0x81, 0x41, 0xd6, 0xc9, 0x2c, 0xab, 0xc6, 0x82, 0x98, 0x3c, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_1749 = { .name = "ecdh_secp256r1_1749", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1749_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1749_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1749_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1750 for ECDH, tcId is 37 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1750_peerpubkey[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, 0x78, 0x59, 0xf9, 0x7c, 0xb6, 0xe2, 0x03, 0xf4, 0x6b, 0xf3, 0x43, 0x8f, 0x61, 0x28, 0x23, 0x25, 0xe9, 0x4e, 0x68, 0x1b, 0x60, 0xb5, 0x66, 0x97, 0x88, 0xae, 0xb0, 0x65, 0x5b, 0xf1, 0x9d, 0x38, }; static const unsigned char ecdh_secp256r1_1750_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1750_sharedsecret[] = { 0xd8, 0x74, 0xb5, 0x56, 0x78, 0xd0, 0xa0, 0x4d, 0x21, 0x6c, 0x31, 0xb0, 0x2f, 0x3a, 0xd1, 0xf3, 0x0c, 0x92, 0xca, 0xaf, 0x16, 0x8f, 0x34, 0xe3, 0xa7, 0x43, 0x35, 0x6d, 0x92, 0x76, 0xe9, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_1750 = { .name = "ecdh_secp256r1_1750", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1750_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1750_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1750_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1751 for ECDH, tcId is 38 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1751_peerpubkey[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, 0x21, 0xb8, 0x34, 0x2e, 0xf0, 0x77, 0xbc, 0x67, 0x24, 0x11, 0x24, 0x03, 0xea, 0xee, 0x5a, 0x15, 0xb4, 0xc3, 0x1a, 0x71, 0x58, 0x9f, 0x02, 0xde, 0xd0, 0x9c, 0xd9, 0x9c, 0xc5, 0xdb, 0x9c, 0x83, }; static const unsigned char ecdh_secp256r1_1751_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1751_sharedsecret[] = { 0x11, 0xa8, 0x58, 0x20, 0x57, 0x46, 0x3f, 0xc7, 0x6f, 0xda, 0x3a, 0xb8, 0x08, 0x7e, 0xb0, 0xa4, 0x20, 0xb0, 0xd6, 0x01, 0xbb, 0x31, 0x34, 0x16, 0x5a, 0x36, 0x96, 0x46, 0x93, 0x1e, 0x52, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_1751 = { .name = "ecdh_secp256r1_1751", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1751_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1751_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1751_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1752 for ECDH, tcId is 39 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1752_peerpubkey[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, 0x46, 0x19, 0xd6, 0x9f, 0x99, 0x40, 0xf5, 0x16, 0x63, 0xaa, 0x12, 0x38, 0x1b, 0xc7, 0xcf, 0x67, 0x8b, 0xd1, 0xa7, 0x2a, 0x49, 0xfb, 0xc1, 0x1b, 0x0b, 0x69, 0xcb, 0x22, 0xd1, 0xaf, 0x9f, 0x2d, }; static const unsigned char ecdh_secp256r1_1752_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1752_sharedsecret[] = { 0x4e, 0x17, 0x3a, 0x80, 0x90, 0x7f, 0x36, 0x1f, 0xe5, 0xa5, 0xd3, 0x35, 0xba, 0x76, 0x85, 0xd5, 0xeb, 0xa9, 0x3e, 0x9d, 0xfc, 0x8d, 0x8f, 0xcd, 0xb1, 0xdc, 0xd2, 0xd2, 0xbd, 0xe2, 0x75, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_1752 = { .name = "ecdh_secp256r1_1752", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1752_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1752_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1752_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1753 for ECDH, tcId is 40 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1753_peerpubkey[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, 0x62, 0xca, 0x11, 0x03, 0xf7, 0x0a, 0x20, 0x06, 0xcd, 0x1f, 0x67, 0xf5, 0xf6, 0xa3, 0x58, 0x0b, 0x29, 0xdc, 0x44, 0x6a, 0xbc, 0x90, 0xe0, 0xe9, 0x10, 0xc1, 0xe0, 0x5a, 0x9a, 0xa7, 0x88, 0xcd, }; static const unsigned char ecdh_secp256r1_1753_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1753_sharedsecret[] = { 0x73, 0x22, 0x04, 0x71, 0xec, 0x8b, 0xad, 0x99, 0xa2, 0x97, 0xdb, 0x48, 0x8a, 0x34, 0xa2, 0x59, 0xf9, 0xbc, 0x89, 0x1f, 0xfa, 0xf0, 0x99, 0x22, 0xe6, 0xb5, 0x00, 0x1f, 0x5d, 0xf6, 0x70, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_1753 = { .name = "ecdh_secp256r1_1753", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1753_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1753_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1753_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1754 for ECDH, tcId is 41 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1754_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x2e, 0x22, 0x13, 0xca, 0xf0, 0x30, 0x33, 0xe0, 0xfd, 0x0f, 0x79, 0x51, 0x15, 0x4f, 0x6e, 0x6c, 0x3a, 0x92, 0x44, 0xa7, 0x2f, 0xac, 0xa6, 0x5e, 0x9c, 0xe9, 0xee, 0xb5, 0xc8, 0xe1, 0xce, 0xa9, }; static const unsigned char ecdh_secp256r1_1754_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1754_sharedsecret[] = { 0x55, 0xd0, 0xa2, 0x03, 0xe2, 0x2f, 0xfb, 0x52, 0x3c, 0x8d, 0x27, 0x05, 0x06, 0x0c, 0xee, 0x9d, 0x28, 0x30, 0x8b, 0x51, 0xf1, 0x84, 0xbe, 0xef, 0xc5, 0x18, 0xcf, 0xf6, 0x90, 0xba, 0xd3, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256r1_1754 = { .name = "ecdh_secp256r1_1754", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1754_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1754_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1754_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 41 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1755 for ECDH, tcId is 42 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1755_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x2b, 0xe8, 0x78, 0x9d, 0xb8, 0x1b, 0xb4, 0x87, 0x0a, 0x9e, 0x60, 0xc5, 0xc1, 0x8c, 0x80, 0xc8, 0x3d, 0xe4, 0x64, 0x27, 0x72, 0x81, 0xf1, 0xaf, 0x1e, 0x64, 0x08, 0x43, 0xa1, 0xa3, 0x14, 0x8e, }; static const unsigned char ecdh_secp256r1_1755_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1755_sharedsecret[] = { 0x25, 0x18, 0xd8, 0x46, 0xe5, 0x77, 0xd9, 0x5e, 0x9e, 0x7b, 0xc7, 0x66, 0xcd, 0xe7, 0x99, 0x7c, 0xb8, 0x87, 0xfb, 0x26, 0x6d, 0x3a, 0x6c, 0xb5, 0x98, 0xa8, 0x39, 0xfd, 0x54, 0xaa, 0x2f, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1755 = { .name = "ecdh_secp256r1_1755", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1755_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1755_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1755_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 42 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1756 for ECDH, tcId is 43 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1756_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x72, 0x25, 0x40, 0xf8, 0xa4, 0x71, 0xc3, 0x79, 0x08, 0x3c, 0x60, 0x0b, 0x58, 0xfd, 0xe4, 0xd9, 0x5c, 0x7d, 0xca, 0xd5, 0x09, 0x5f, 0x42, 0x19, 0xfc, 0x5e, 0x9b, 0xdd, 0xe3, 0xc5, 0xcd, 0x39, }; static const unsigned char ecdh_secp256r1_1756_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1756_sharedsecret[] = { 0xbd, 0xb4, 0x9f, 0x4b, 0xdf, 0x42, 0xac, 0x64, 0x50, 0x4e, 0x9c, 0xe6, 0x77, 0xb3, 0xec, 0x5c, 0x0a, 0x03, 0x82, 0x8c, 0x5b, 0x3e, 0xfa, 0xd7, 0x26, 0x00, 0x56, 0x92, 0xd3, 0x5c, 0x0f, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_1756 = { .name = "ecdh_secp256r1_1756", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1756_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1756_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1756_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 43 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1757 for ECDH, tcId is 44 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1757_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x5d, 0xf8, 0x0f, 0xc6, 0xca, 0xe2, 0x6b, 0x6c, 0x19, 0x52, 0xfb, 0xd0, 0x0e, 0xd1, 0x74, 0xee, 0x12, 0x09, 0xd0, 0x69, 0x33, 0x5f, 0x5b, 0x48, 0x58, 0x8e, 0x29, 0xe8, 0x0b, 0x91, 0x91, 0xad, }; static const unsigned char ecdh_secp256r1_1757_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1757_sharedsecret[] = { 0xf5, 0x03, 0xac, 0x65, 0x63, 0x7e, 0x0f, 0x17, 0xcb, 0x44, 0x08, 0x96, 0x1c, 0xb8, 0x82, 0xc8, 0x75, 0xe4, 0xc6, 0xef, 0x7a, 0x54, 0x8d, 0x2d, 0x52, 0xd8, 0xc2, 0xf6, 0x81, 0x83, 0x8c, 0x55, }; static const wycheproof_ecdh_test ecdh_secp256r1_1757 = { .name = "ecdh_secp256r1_1757", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1757_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1757_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1757_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 44 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1758 for ECDH, tcId is 45 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1758_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x2c, 0x63, 0x65, 0x0e, 0x6a, 0x5d, 0x33, 0x2e, 0x29, 0x87, 0xdd, 0x09, 0xa7, 0x90, 0x08, 0xe8, 0xfa, 0xab, 0xbd, 0x37, 0xe4, 0x9c, 0xb0, 0x16, 0xbf, 0xb9, 0x2c, 0x8c, 0xd0, 0xf5, 0xda, 0x77, }; static const unsigned char ecdh_secp256r1_1758_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1758_sharedsecret[] = { 0xe3, 0xc1, 0x8e, 0x7d, 0x73, 0x77, 0xdc, 0x54, 0x0b, 0xc4, 0x5c, 0x08, 0xd3, 0x89, 0xbd, 0xbe, 0x25, 0x5f, 0xa8, 0x0c, 0xa8, 0xfa, 0xf1, 0xef, 0x6b, 0x94, 0xd5, 0x20, 0x49, 0x98, 0x7d, 0x21, }; static const wycheproof_ecdh_test ecdh_secp256r1_1758 = { .name = "ecdh_secp256r1_1758", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1758_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1758_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1758_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 45 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1759 for ECDH, tcId is 46 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1759_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7a, 0x11, 0x6c, 0x96, 0x4a, 0x4c, 0xd6, 0x06, 0x68, 0xbf, 0x89, 0xcf, 0xfe, 0x15, 0x77, 0x14, 0xa3, 0xce, 0x21, 0xb9, 0x3b, 0x3c, 0xa6, 0x07, 0xc8, 0xa5, 0xb9, 0x3a, 0xc5, 0x4f, 0xfc, 0x0a, }; static const unsigned char ecdh_secp256r1_1759_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1759_sharedsecret[] = { 0x51, 0x6d, 0x6d, 0x32, 0x9b, 0x09, 0x5a, 0x7c, 0x7e, 0x93, 0xb4, 0x02, 0x3d, 0x4d, 0x05, 0x02, 0x0c, 0x14, 0x45, 0xef, 0x1d, 0xdc, 0xb3, 0x34, 0x7b, 0x3a, 0x27, 0xd7, 0xd7, 0xf5, 0x72, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256r1_1759 = { .name = "ecdh_secp256r1_1759", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1759_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1759_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1759_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 46 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1760 for ECDH, tcId is 47 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1760_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xc7, 0xc3, 0x06, 0x43, 0xab, 0xed, 0x0a, 0xf0, 0xa4, 0x9f, 0xe3, 0x52, 0xcb, 0x48, 0x3f, 0xf9, 0xb9, 0x7d, 0xcc, 0xdf, 0x42, 0x7c, 0x65, 0x8e, 0x87, 0x93, 0x24, 0x0d, }; static const unsigned char ecdh_secp256r1_1760_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1760_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1760 = { .name = "ecdh_secp256r1_1760", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1760_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1760_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1760_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 47 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1761 for ECDH, tcId is 48 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1761_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x38, 0x3c, 0xf9, 0xbd, 0x54, 0x12, 0xf5, 0x0f, 0x5b, 0x60, 0x1c, 0xad, 0x34, 0xb7, 0xc0, 0x07, 0x46, 0x82, 0x33, 0x20, 0xbd, 0x83, 0x9a, 0x71, 0x78, 0x6c, 0xdb, 0xf2, }; static const unsigned char ecdh_secp256r1_1761_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1761_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1761 = { .name = "ecdh_secp256r1_1761", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1761_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1761_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1761_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 48 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1762 for ECDH, tcId is 49 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1762_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x26, 0x7b, 0xfd, 0xf8, 0xa6, 0x11, 0x48, 0xde, 0xcd, 0x80, 0x28, 0x37, 0x32, 0xdd, 0x4c, 0x10, 0x95, 0xe4, 0xbb, 0x40, 0xb9, 0x65, 0x84, 0x08, 0x20, 0x8d, 0xc1, 0x14, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1762_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1762_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1762 = { .name = "ecdh_secp256r1_1762", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1762_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1762_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1762_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 49 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1763 for ECDH, tcId is 50 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1763_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd9, 0x84, 0x02, 0x06, 0x59, 0xee, 0xb7, 0x22, 0x32, 0x7f, 0xd7, 0xc8, 0xcd, 0x22, 0xb3, 0xef, 0x6a, 0x1b, 0x44, 0xc0, 0x46, 0x9a, 0x7b, 0xf7, 0xdf, 0x72, 0x3e, 0xeb, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1763_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1763_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1763 = { .name = "ecdh_secp256r1_1763", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1763_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1763_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1763_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 50 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1764 for ECDH, tcId is 51 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1764_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x12, 0xd3, 0x81, 0xb0, 0x76, 0x0b, 0x1c, 0x50, 0xbe, 0x8a, 0xcf, 0x85, 0x93, 0x85, 0x05, 0x2c, 0x7f, 0x53, 0xcd, 0xe6, 0x7c, 0xe1, 0x37, 0x59, 0xde, 0x31, 0x23, 0xa0, }; static const unsigned char ecdh_secp256r1_1764_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1764_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_1764 = { .name = "ecdh_secp256r1_1764", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1764_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1764_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1764_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 51 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1765 for ECDH, tcId is 52 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1765_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf1, 0xed, 0x2c, 0x7e, 0x50, 0x89, 0xf4, 0xe3, 0xaf, 0x41, 0x75, 0x30, 0x7a, 0x6c, 0x7a, 0xfa, 0xd4, 0x80, 0xac, 0x32, 0x19, 0x83, 0x1e, 0xc8, 0xa6, 0x21, 0xce, 0xdc, 0x5f, }; static const unsigned char ecdh_secp256r1_1765_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1765_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_1765 = { .name = "ecdh_secp256r1_1765", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1765_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1765_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1765_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 52 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1766 for ECDH, tcId is 53 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1766_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x96, 0xed, 0xd6, 0x87, 0x1c, 0x32, 0x0c, 0xb8, 0xa9, 0xf4, 0x53, 0x17, 0x51, 0x10, 0x5c, 0x97, 0xb4, 0xc2, 0x57, 0x81, 0x1b, 0xbc, 0x32, 0x96, 0x3e, 0xaf, 0x39, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1766_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1766_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1766 = { .name = "ecdh_secp256r1_1766", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1766_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1766_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1766_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 53 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1767 for ECDH, tcId is 54 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1767_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x69, 0x12, 0x28, 0x78, 0xe3, 0xcd, 0xf4, 0x47, 0x56, 0x0b, 0xac, 0xe8, 0xae, 0xef, 0xa3, 0x68, 0x4b, 0x3d, 0xa9, 0x7e, 0xe4, 0x43, 0xcd, 0x69, 0xc1, 0x50, 0xc6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1767_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1767_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1767 = { .name = "ecdh_secp256r1_1767", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1767_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1767_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1767_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 54 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1768 for ECDH, tcId is 55 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1768_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7a, 0xfb, 0xc0, 0xb3, 0x25, 0xe8, 0x20, 0x64, 0x6d, 0xec, 0x62, 0x2f, 0xb5, 0x58, 0xa5, 0x1c, 0x34, 0x2a, 0xa2, 0x57, 0xf4, 0xb6, 0xa8, 0xec, 0x5d, 0xdf, 0x14, 0x4f, }; static const unsigned char ecdh_secp256r1_1768_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1768_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1768 = { .name = "ecdh_secp256r1_1768", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1768_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1768_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1768_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 55 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1769 for ECDH, tcId is 56 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1769_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x85, 0x04, 0x3f, 0x4d, 0xda, 0x17, 0xdf, 0x9b, 0x92, 0x13, 0x9d, 0xd0, 0x4a, 0xa7, 0x5a, 0xe4, 0xcb, 0xd5, 0x5d, 0xa8, 0x0b, 0x49, 0x57, 0x13, 0xa2, 0x20, 0xeb, 0xb0, }; static const unsigned char ecdh_secp256r1_1769_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1769_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1769 = { .name = "ecdh_secp256r1_1769", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1769_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1769_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1769_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 56 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1770 for ECDH, tcId is 57 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1770_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x15, 0x2c, 0x1a, 0x22, 0xd8, 0x23, 0xa2, 0x78, 0x55, 0xed, 0x03, 0xf8, 0xe2, 0xab, 0x50, 0x38, 0xbb, 0x1d, 0xf4, 0xd8, 0x7e, 0x43, 0x86, 0x5f, 0x2d, 0xaf, 0x69, 0x48, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1770_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1770_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1770 = { .name = "ecdh_secp256r1_1770", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1770_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1770_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1770_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 57 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1771 for ECDH, tcId is 58 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1771_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0xd3, 0xe5, 0xdc, 0x27, 0xdc, 0x5d, 0x88, 0xaa, 0x12, 0xfc, 0x07, 0x1d, 0x54, 0xaf, 0xc7, 0x44, 0xe2, 0x0b, 0x28, 0x81, 0xbc, 0x79, 0xa0, 0xd2, 0x50, 0x96, 0xb7, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1771_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_1771_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1771 = { .name = "ecdh_secp256r1_1771", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1771_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1771_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1771_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 58 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1772 for ECDH, tcId is 59 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1772_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_1772_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1772_sharedsecret[] = { 0xd1, 0x1c, 0x64, 0x0b, 0x43, 0x82, 0xe6, 0x0e, 0xc8, 0xd2, 0x54, 0xee, 0x76, 0xf0, 0x9b, 0x8f, 0xac, 0x57, 0x65, 0x1a, 0xb7, 0x3b, 0x6d, 0xd3, 0xfd, 0xc9, 0x35, 0xa6, 0x15, 0x64, 0xa3, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp256r1_1772 = { .name = "ecdh_secp256r1_1772", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1772_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1772_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1772_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 59 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1773 for ECDH, tcId is 60 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1773_peerpubkey[] = { 0x10, 0x01, 0x21, 0xf1, 0xa0, 0x94, 0x43, 0x85, 0x1c, 0x9a, 0xa2, 0xab, 0x6e, 0xe6, 0x44, 0x0e, 0x2a, 0xc5, 0xe1, 0xbe, 0x64, 0x82, 0x74, 0xbd, 0x5d, 0x26, 0xc1, 0x2f, 0xb3, 0xba, 0x3f, 0x7f, 0x03, 0x2a, 0x1c, 0x21, 0x9f, 0xa1, 0x45, 0x7c, 0xb2, 0x05, 0x88, 0x29, 0x7e, 0x05, 0x13, 0xcf, 0xd4, 0x90, 0x1f, 0x9a, 0x95, 0x41, 0x4f, 0x7e, 0x91, 0x4f, 0x91, 0x79, 0xf3, 0x85, 0x67, 0xa6, }; static const unsigned char ecdh_secp256r1_1773_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1773_sharedsecret[] = { 0x90, 0xe7, 0x12, 0xe2, 0xaf, 0xd1, 0x41, 0x71, 0xc1, 0x94, 0x67, 0xa2, 0xbf, 0xe7, 0xab, 0xf1, 0xc4, 0x77, 0xd1, 0xf4, 0x0f, 0x66, 0x75, 0xf0, 0x0e, 0x62, 0x2f, 0xd5, 0x60, 0x4f, 0xa1, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1773 = { .name = "ecdh_secp256r1_1773", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1773_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1773_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1773_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 60 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1774 for ECDH, tcId is 61 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1774_peerpubkey[] = { 0xca, 0xd0, 0x2a, 0xb5, 0x37, 0xc8, 0x08, 0x31, 0xcc, 0xdd, 0x39, 0x51, 0x29, 0xfc, 0x4b, 0xfe, 0x4a, 0x89, 0xae, 0x0c, 0x86, 0x6f, 0x66, 0x19, 0xa3, 0xe1, 0x41, 0x46, 0xd3, 0x69, 0x16, 0x94, 0x68, 0x9d, 0x47, 0x70, 0x65, 0xb4, 0x0f, 0x14, 0x0e, 0xd8, 0x7b, 0x37, 0xad, 0x04, 0x1e, 0x28, 0x22, 0x9b, 0x0f, 0x79, 0xa6, 0xb3, 0xc9, 0x92, 0x68, 0x99, 0x54, 0xc9, 0x7f, 0x73, 0x36, 0xd0, }; static const unsigned char ecdh_secp256r1_1774_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1774_sharedsecret[] = { 0x15, 0x95, 0x83, 0x10, 0x3d, 0x83, 0xf6, 0x35, 0x38, 0xbd, 0x4e, 0x20, 0x36, 0x07, 0xd7, 0x34, 0x89, 0x90, 0xbb, 0x7f, 0x84, 0x7f, 0xfb, 0xc9, 0xe5, 0xe5, 0x09, 0xc7, 0xe3, 0x4d, 0x39, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1774 = { .name = "ecdh_secp256r1_1774", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1774_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1774_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1774_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 61 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1775 for ECDH, tcId is 62 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1775_peerpubkey[] = { 0xab, 0xd1, 0x2e, 0xed, 0x4d, 0x65, 0x4b, 0xaa, 0x7d, 0x96, 0x86, 0x33, 0x77, 0x0f, 0x4a, 0x58, 0x2f, 0x17, 0x3d, 0x66, 0x33, 0x90, 0x60, 0x00, 0xed, 0x8a, 0xcf, 0x62, 0x33, 0xc6, 0x36, 0x5f, 0x09, 0x12, 0xf3, 0x0b, 0xb9, 0x8e, 0x7c, 0xb5, 0x25, 0x89, 0x0d, 0x5e, 0xa1, 0xe2, 0x17, 0x14, 0x9d, 0x52, 0xa6, 0xc5, 0x9f, 0x78, 0x02, 0xa9, 0xf3, 0x07, 0xe8, 0x0d, 0x2a, 0x9f, 0xee, 0x3a, }; static const unsigned char ecdh_secp256r1_1775_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1775_sharedsecret[] = { 0x54, 0x6a, 0x2d, 0xfa, 0xdb, 0x1d, 0x60, 0x14, 0x0b, 0xec, 0xac, 0x2d, 0xc2, 0xe6, 0x2d, 0x20, 0xc7, 0x89, 0x03, 0x77, 0x55, 0xad, 0x5a, 0x49, 0xe3, 0x7e, 0x48, 0xf2, 0xca, 0x1b, 0x76, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256r1_1775 = { .name = "ecdh_secp256r1_1775", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1775_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1775_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1775_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 62 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1776 for ECDH, tcId is 63 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1776_peerpubkey[] = { 0xa5, 0x62, 0xc1, 0xad, 0x9a, 0x72, 0x21, 0x7d, 0xf0, 0x01, 0x47, 0xc7, 0xd2, 0xce, 0xaf, 0xc6, 0x5a, 0x16, 0x20, 0xa1, 0x46, 0x9c, 0x94, 0x7e, 0x14, 0xfe, 0x43, 0x00, 0x3a, 0xc5, 0x37, 0x1b, 0x7a, 0xd1, 0xd3, 0x3c, 0x01, 0xf0, 0xeb, 0x92, 0xb7, 0x79, 0xed, 0x6e, 0x46, 0x0d, 0x03, 0x34, 0x44, 0x70, 0x75, 0xa3, 0xcf, 0x66, 0xb2, 0xff, 0xbd, 0xae, 0x31, 0xb4, 0x38, 0xdf, 0x6d, 0x7b, }; static const unsigned char ecdh_secp256r1_1776_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1776_sharedsecret[] = { 0xe5, 0x85, 0x9c, 0x78, 0x11, 0xc5, 0xc3, 0xac, 0xa6, 0xc2, 0x36, 0xab, 0x49, 0x9c, 0xca, 0xd1, 0x03, 0x01, 0xc7, 0xc5, 0xee, 0x91, 0x3c, 0xe9, 0x1b, 0xb6, 0x64, 0x28, 0xcd, 0xe1, 0x1e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1776 = { .name = "ecdh_secp256r1_1776", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1776_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1776_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1776_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 63 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1777 for ECDH, tcId is 64 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1777_peerpubkey[] = { 0x8c, 0xdb, 0xeb, 0xe9, 0xd0, 0x7d, 0x2e, 0xbc, 0x4e, 0x41, 0xb1, 0xd7, 0x2a, 0x9b, 0xac, 0x29, 0x74, 0xcf, 0xc4, 0xcf, 0x73, 0x8d, 0x8b, 0x6d, 0xe7, 0x1a, 0x40, 0xed, 0xe9, 0x92, 0x0d, 0x88, 0xdc, 0x24, 0x39, 0xee, 0x00, 0x03, 0xfb, 0xde, 0x7b, 0x0a, 0x3a, 0xe4, 0x17, 0x10, 0xc6, 0x4b, 0x17, 0xb0, 0x8a, 0x88, 0x41, 0xe9, 0x7a, 0x39, 0x0e, 0x48, 0x2c, 0x97, 0x68, 0xfe, 0x01, 0xea, }; static const unsigned char ecdh_secp256r1_1777_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1777_sharedsecret[] = { 0x65, 0x75, 0x4a, 0xb4, 0x59, 0xa1, 0x04, 0x71, 0xaf, 0x00, 0x94, 0x3f, 0x41, 0x4f, 0x28, 0xde, 0x1b, 0xc3, 0x79, 0x68, 0xb0, 0x97, 0xad, 0x28, 0x45, 0xfe, 0x11, 0x14, 0x20, 0x85, 0x50, 0x08, }; static const wycheproof_ecdh_test ecdh_secp256r1_1777 = { .name = "ecdh_secp256r1_1777", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1777_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1777_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1777_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 64 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1778 for ECDH, tcId is 65 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1778_peerpubkey[] = { 0xf0, 0xcd, 0x7c, 0xd8, 0x33, 0x46, 0x78, 0x30, 0x8c, 0xfe, 0xb7, 0x85, 0xa6, 0x8a, 0x15, 0x04, 0xa9, 0x14, 0x18, 0xd4, 0x44, 0x1c, 0x4d, 0x4c, 0x74, 0x0c, 0x57, 0x48, 0x8b, 0x9a, 0xaf, 0xb0, 0x79, 0xd8, 0xa8, 0xd2, 0x99, 0x73, 0xeb, 0x50, 0x22, 0x67, 0xec, 0xcf, 0x6e, 0xda, 0x32, 0x66, 0x26, 0xfc, 0x6e, 0x02, 0x5d, 0x53, 0x2b, 0x85, 0xe9, 0xf7, 0x11, 0xf8, 0xce, 0x69, 0x71, 0xbb, }; static const unsigned char ecdh_secp256r1_1778_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1778_sharedsecret[] = { 0x86, 0x31, 0xfe, 0xde, 0xe6, 0xce, 0xb3, 0x38, 0x6a, 0xc4, 0x2e, 0xdf, 0x32, 0x2c, 0x18, 0x88, 0x24, 0x89, 0x3d, 0x26, 0x7d, 0x61, 0x08, 0xf0, 0xcf, 0x5d, 0xe6, 0x96, 0x4b, 0x88, 0x33, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1778 = { .name = "ecdh_secp256r1_1778", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1778_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1778_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1778_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 65 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1779 for ECDH, tcId is 66 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1779_peerpubkey[] = { 0x8a, 0xd0, 0xaf, 0x23, 0xb9, 0x0e, 0x03, 0x41, 0xb4, 0xe2, 0xa5, 0xa9, 0x63, 0xc8, 0x52, 0x2f, 0xe0, 0x11, 0xac, 0xe1, 0x9b, 0x1b, 0x86, 0x10, 0xcb, 0xe7, 0x92, 0x7a, 0x17, 0xa7, 0x24, 0x97, 0x36, 0xb8, 0x7a, 0xb9, 0x90, 0x72, 0x89, 0xa2, 0x3a, 0x0f, 0xb2, 0x0c, 0xa4, 0xbe, 0x42, 0xd4, 0x21, 0xfe, 0x38, 0xd3, 0x5a, 0xf0, 0x9d, 0x79, 0xcb, 0xe6, 0xe6, 0xa4, 0xe9, 0x5a, 0x1a, 0x8b, }; static const unsigned char ecdh_secp256r1_1779_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1779_sharedsecret[] = { 0x68, 0xc5, 0x85, 0x99, 0xc1, 0x23, 0xbe, 0x6d, 0x37, 0xd3, 0x43, 0xbd, 0x41, 0xb1, 0x1c, 0xec, 0xc5, 0xf8, 0x4b, 0x26, 0x35, 0x66, 0x11, 0x63, 0x65, 0x6f, 0x76, 0xd7, 0xfb, 0x04, 0xb4, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_1779 = { .name = "ecdh_secp256r1_1779", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1779_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1779_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1779_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 66 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1780 for ECDH, tcId is 67 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1780_peerpubkey[] = { 0x59, 0xc9, 0xcc, 0x2d, 0x72, 0x97, 0xdd, 0xb0, 0xbe, 0x63, 0x04, 0xc9, 0x4c, 0xeb, 0xf4, 0x2d, 0x81, 0x3e, 0x97, 0x0c, 0x50, 0xf4, 0x52, 0x87, 0x75, 0x3b, 0x8e, 0x9c, 0xb0, 0xc6, 0xdb, 0x45, 0xf5, 0x71, 0xd9, 0x86, 0x99, 0x08, 0x97, 0x85, 0x1f, 0xc8, 0xe1, 0xdb, 0x67, 0xc9, 0x97, 0x59, 0xe8, 0x97, 0x9c, 0x3d, 0x9d, 0xdf, 0xd0, 0x2f, 0x63, 0x3c, 0xf1, 0xea, 0x5b, 0x6c, 0x48, 0xab, }; static const unsigned char ecdh_secp256r1_1780_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1780_sharedsecret[] = { 0xb5, 0x8d, 0x00, 0x52, 0x5c, 0x4c, 0x4b, 0x4f, 0x46, 0x56, 0x28, 0x52, 0xc1, 0x5c, 0xe2, 0xe4, 0x8d, 0xbe, 0x23, 0xa3, 0xbe, 0x37, 0x54, 0x1e, 0x04, 0x84, 0x46, 0xef, 0xf5, 0x15, 0x2e, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp256r1_1780 = { .name = "ecdh_secp256r1_1780", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1780_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1780_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1780_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 67 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1781 for ECDH, tcId is 68 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1781_peerpubkey[] = { 0xe9, 0x70, 0x80, 0xda, 0x72, 0x63, 0xa2, 0x9c, 0x30, 0x72, 0xa6, 0x51, 0x78, 0xb7, 0xb3, 0x15, 0x87, 0xa5, 0xdf, 0xfc, 0x19, 0x75, 0x4c, 0x56, 0x1e, 0x32, 0xfc, 0x53, 0x19, 0x92, 0x34, 0xf0, 0x4e, 0x0b, 0x9b, 0x70, 0xc9, 0x7b, 0x60, 0xe9, 0x40, 0xd5, 0x62, 0x9f, 0x22, 0x66, 0xd1, 0xa8, 0xe2, 0x42, 0xde, 0xb7, 0x1e, 0xb7, 0xf0, 0xb2, 0xb2, 0xda, 0x2e, 0x30, 0x44, 0x73, 0x8a, 0xb0, }; static const unsigned char ecdh_secp256r1_1781_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1781_sharedsecret[] = { 0x4b, 0xaa, 0x01, 0xc2, 0x11, 0xaf, 0x8f, 0x94, 0xac, 0xa8, 0x95, 0x48, 0x90, 0x2a, 0x71, 0xf7, 0xb5, 0x3f, 0x78, 0x14, 0xbb, 0xce, 0xb3, 0xd4, 0xbe, 0xf3, 0x1b, 0x37, 0x6e, 0x34, 0xb4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_1781 = { .name = "ecdh_secp256r1_1781", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1781_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1781_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1781_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 68 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1782 for ECDH, tcId is 69 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1782_peerpubkey[] = { 0x44, 0xf6, 0x00, 0xda, 0x71, 0x60, 0xb9, 0x75, 0xa0, 0x23, 0x2c, 0xb6, 0xa4, 0xa9, 0xe7, 0x28, 0x03, 0xfd, 0x77, 0xca, 0xac, 0x84, 0x35, 0x20, 0x39, 0xce, 0x9f, 0x4a, 0x67, 0xa1, 0xda, 0x77, 0x62, 0x60, 0x45, 0x59, 0x93, 0x81, 0xe5, 0x99, 0xeb, 0x9c, 0xd0, 0x3f, 0x28, 0x2e, 0x26, 0x7b, 0x8c, 0xfd, 0x3b, 0xa9, 0x8d, 0xab, 0xbb, 0x0f, 0x29, 0xab, 0x1c, 0x09, 0x44, 0x27, 0x0f, 0x3f, }; static const unsigned char ecdh_secp256r1_1782_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1782_sharedsecret[] = { 0xe1, 0x9f, 0xe9, 0xd1, 0x29, 0x4c, 0xca, 0x94, 0xa6, 0x38, 0x88, 0x25, 0x24, 0x9e, 0x6b, 0x37, 0x93, 0x1a, 0x23, 0x1e, 0xb9, 0x17, 0xcf, 0xec, 0xb2, 0x92, 0x79, 0x2d, 0x0c, 0x18, 0xf1, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_1782 = { .name = "ecdh_secp256r1_1782", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1782_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1782_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1782_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 69 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1783 for ECDH, tcId is 70 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1783_peerpubkey[] = { 0x71, 0xe3, 0xe9, 0xbe, 0x0e, 0x0e, 0xe4, 0x44, 0x9a, 0x19, 0xd2, 0xef, 0x79, 0x19, 0x26, 0x68, 0x14, 0xa0, 0xfa, 0xfd, 0x04, 0xfb, 0x67, 0x7e, 0xdc, 0x32, 0x65, 0x6e, 0x6a, 0x46, 0xe4, 0xd2, 0xbc, 0x5f, 0x40, 0x4c, 0x5b, 0x54, 0xf0, 0x3e, 0x29, 0x4b, 0xe2, 0x2e, 0x88, 0x20, 0xa7, 0x1b, 0x4d, 0x4a, 0xc0, 0x4a, 0x70, 0x8e, 0x13, 0xcd, 0x71, 0xfd, 0xb0, 0x04, 0x1e, 0x7e, 0x96, 0x98, }; static const unsigned char ecdh_secp256r1_1783_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1783_sharedsecret[] = { 0xdd, 0xc1, 0xf4, 0x66, 0x3b, 0x92, 0x8a, 0xdd, 0x06, 0xb1, 0xe5, 0x7c, 0x48, 0xdb, 0x98, 0xea, 0x08, 0xc4, 0xd3, 0x3c, 0x3c, 0x21, 0x06, 0x37, 0x14, 0x07, 0xf3, 0x84, 0x8a, 0x9d, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256r1_1783 = { .name = "ecdh_secp256r1_1783", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1783_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1783_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1783_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 70 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1784 for ECDH, tcId is 71 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1784_peerpubkey[] = { 0x27, 0xb6, 0x93, 0x61, 0x01, 0x54, 0xd5, 0xb7, 0xf0, 0x80, 0x94, 0xe4, 0x6f, 0xf2, 0xa2, 0xac, 0x1c, 0x01, 0xd3, 0xcd, 0x82, 0x6e, 0x32, 0x08, 0xe5, 0x25, 0x44, 0x36, 0xed, 0x27, 0x99, 0x60, 0xf2, 0x36, 0x4e, 0x3a, 0x60, 0x4f, 0x3b, 0x59, 0x2e, 0x19, 0x26, 0x2a, 0x1b, 0x22, 0xb1, 0xa1, 0x48, 0xe3, 0x8c, 0xd8, 0x2c, 0x9e, 0x54, 0xf1, 0x08, 0xef, 0x8f, 0x83, 0x36, 0x83, 0xf8, 0xb4, }; static const unsigned char ecdh_secp256r1_1784_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1784_sharedsecret[] = { 0x91, 0xdf, 0xa9, 0x5e, 0xd1, 0xea, 0xcb, 0xea, 0x41, 0x91, 0x56, 0x47, 0x1a, 0x8d, 0xdb, 0xb6, 0xcb, 0x93, 0xdd, 0x45, 0x64, 0x33, 0xe1, 0x86, 0x33, 0xd2, 0x68, 0x17, 0x61, 0x1b, 0x9c, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_1784 = { .name = "ecdh_secp256r1_1784", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1784_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1784_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1784_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 71 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1785 for ECDH, tcId is 72 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1785_peerpubkey[] = { 0xc3, 0x2a, 0x52, 0xaf, 0x6d, 0xac, 0x36, 0x9b, 0x6a, 0x49, 0x9a, 0x49, 0xd3, 0xe3, 0x8e, 0x7c, 0x95, 0x34, 0xbb, 0x91, 0x39, 0xf5, 0x7d, 0x49, 0x84, 0xb1, 0xd3, 0xc0, 0x4a, 0xb8, 0x22, 0x06, 0x53, 0xcd, 0xc2, 0xda, 0xef, 0xac, 0x83, 0xcf, 0x43, 0xc0, 0xd6, 0x46, 0x04, 0xe5, 0xf9, 0xd8, 0x5b, 0x55, 0xdd, 0xe6, 0x2b, 0x69, 0x2c, 0xd3, 0x6a, 0xf9, 0x9e, 0xbf, 0xf4, 0x14, 0x0c, 0x39, }; static const unsigned char ecdh_secp256r1_1785_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1785_sharedsecret[] = { 0x9f, 0x91, 0xa9, 0x63, 0x3d, 0xaa, 0x4c, 0x56, 0x46, 0x5e, 0x9f, 0xbe, 0xf4, 0x43, 0x1e, 0x13, 0x04, 0x1f, 0x68, 0x91, 0x0f, 0xb5, 0xba, 0x89, 0xf8, 0xda, 0x93, 0x81, 0xd6, 0x8a, 0x0d, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256r1_1785 = { .name = "ecdh_secp256r1_1785", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1785_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1785_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1785_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 72 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1786 for ECDH, tcId is 73 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1786_peerpubkey[] = { 0x6f, 0x4e, 0x2f, 0x72, 0xf3, 0x2a, 0xe6, 0x6f, 0x1f, 0x46, 0x10, 0x96, 0x60, 0x04, 0xc4, 0x36, 0xaa, 0x0d, 0x90, 0xb7, 0xdf, 0x07, 0xce, 0x9c, 0x4a, 0xca, 0x52, 0xb0, 0x2d, 0x46, 0xb4, 0xd0, 0xc6, 0xa3, 0xec, 0x76, 0xbf, 0x32, 0x1b, 0x7f, 0xe5, 0x20, 0x3c, 0xf3, 0xd6, 0x6e, 0x2d, 0x52, 0xe3, 0xee, 0x04, 0x95, 0xec, 0x76, 0x6d, 0x57, 0x9a, 0x45, 0x11, 0x17, 0x5e, 0x01, 0xbc, 0x4d, }; static const unsigned char ecdh_secp256r1_1786_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1786_sharedsecret[] = { 0x01, 0x4a, 0xe8, 0x14, 0x42, 0xf8, 0xcb, 0x6d, 0xf5, 0x8f, 0xf4, 0x1e, 0x6d, 0xb2, 0x03, 0xdb, 0x40, 0xea, 0x95, 0x1b, 0x91, 0xbe, 0xbf, 0x86, 0xd4, 0x2c, 0xda, 0x7b, 0xe3, 0x3f, 0xea, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_1786 = { .name = "ecdh_secp256r1_1786", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1786_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1786_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1786_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 73 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1787 for ECDH, tcId is 74 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1787_peerpubkey[] = { 0x2e, 0x06, 0x59, 0x75, 0xdf, 0x64, 0x2f, 0xcf, 0xda, 0xfe, 0x2f, 0xa5, 0xaf, 0xfc, 0x18, 0xb2, 0xc6, 0x83, 0x71, 0x79, 0x6f, 0x9d, 0x96, 0x3d, 0x89, 0xc4, 0xf5, 0xac, 0x5c, 0xce, 0xa2, 0x8b, 0x99, 0x0f, 0x31, 0x52, 0x2f, 0xbb, 0x26, 0x5c, 0x3f, 0x4d, 0x5c, 0x4b, 0xb8, 0x2e, 0xbf, 0x5d, 0xdf, 0xf5, 0xa8, 0xea, 0x58, 0x8d, 0xb4, 0xd2, 0x82, 0xac, 0xdc, 0xa7, 0xa6, 0xcc, 0xf4, 0x28, }; static const unsigned char ecdh_secp256r1_1787_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1787_sharedsecret[] = { 0x78, 0xe8, 0x1e, 0x85, 0x73, 0xc3, 0xae, 0x60, 0x89, 0xdf, 0x7d, 0xb1, 0xfb, 0x29, 0xd7, 0xbe, 0x12, 0xdc, 0x11, 0xf1, 0x5b, 0xb2, 0x5b, 0xff, 0x2a, 0xf8, 0x02, 0xe1, 0x5d, 0xdc, 0x13, 0x6e, }; static const wycheproof_ecdh_test ecdh_secp256r1_1787 = { .name = "ecdh_secp256r1_1787", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1787_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1787_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1787_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 74 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1788 for ECDH, tcId is 75 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1788_peerpubkey[] = { 0xe1, 0x33, 0x1e, 0xee, 0x03, 0xc5, 0x0c, 0xc2, 0xb9, 0x09, 0x44, 0xdd, 0xfc, 0x0d, 0x3a, 0x7d, 0xd8, 0x18, 0x5e, 0x6c, 0x21, 0xc7, 0x5f, 0xa9, 0x2a, 0x0c, 0x14, 0xb0, 0xf1, 0x94, 0x9a, 0xc9, 0x15, 0x4d, 0x78, 0x3f, 0x45, 0x47, 0xdc, 0xf5, 0x50, 0x8b, 0xbd, 0x86, 0xc3, 0xdd, 0x8c, 0x3b, 0x17, 0xb6, 0x19, 0x89, 0xf9, 0x3d, 0xb5, 0x49, 0x0e, 0xc0, 0x2a, 0x46, 0xa1, 0x00, 0x5c, 0x2c, }; static const unsigned char ecdh_secp256r1_1788_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1788_sharedsecret[] = { 0xed, 0x67, 0x19, 0x5a, 0x27, 0x2c, 0x63, 0xc5, 0x02, 0x05, 0xab, 0xf2, 0x74, 0x39, 0x29, 0x11, 0x34, 0xff, 0xa1, 0xe8, 0xec, 0x59, 0x7f, 0x3b, 0x30, 0x27, 0x16, 0xd9, 0x36, 0x32, 0xe9, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1788 = { .name = "ecdh_secp256r1_1788", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1788_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1788_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1788_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 75 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1789 for ECDH, tcId is 76 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1789_peerpubkey[] = { 0xe0, 0xc5, 0x6d, 0x48, 0x6e, 0x9c, 0x01, 0x16, 0x3e, 0xd6, 0xc3, 0xff, 0x25, 0xde, 0x3c, 0xdf, 0x57, 0x44, 0xdb, 0xf9, 0xe0, 0xe0, 0x0b, 0xdc, 0xf1, 0x99, 0x65, 0xdf, 0x4b, 0xa1, 0xf3, 0x11, 0xbd, 0x5e, 0x44, 0x43, 0x06, 0x65, 0x82, 0x3d, 0x8c, 0x0b, 0x34, 0xeb, 0xec, 0x0a, 0x6a, 0xab, 0x5e, 0xa9, 0x6c, 0xf2, 0x39, 0xde, 0x21, 0x4f, 0xd0, 0x11, 0xe6, 0xf9, 0xec, 0x50, 0x1d, 0xd4, }; static const unsigned char ecdh_secp256r1_1789_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1789_sharedsecret[] = { 0x50, 0x77, 0x43, 0x47, 0x84, 0x88, 0x28, 0xee, 0xb6, 0x23, 0x0f, 0x49, 0x7c, 0xd1, 0x81, 0xf8, 0xc5, 0x7f, 0xbd, 0x18, 0xff, 0xbf, 0x83, 0x28, 0xcd, 0x00, 0x83, 0x21, 0xa1, 0xc3, 0x7c, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256r1_1789 = { .name = "ecdh_secp256r1_1789", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1789_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1789_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1789_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 76 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1790 for ECDH, tcId is 77 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1790_peerpubkey[] = { 0x88, 0x5e, 0xad, 0x6c, 0x07, 0x4f, 0x8d, 0x75, 0x1a, 0x76, 0x7e, 0x91, 0x8c, 0x4e, 0x89, 0x21, 0x0a, 0x58, 0x7c, 0x4b, 0x19, 0xd4, 0x22, 0x44, 0xae, 0x07, 0x02, 0x7e, 0x36, 0x18, 0x31, 0x05, 0x3e, 0x80, 0x77, 0x2b, 0xe5, 0x7f, 0xbd, 0x74, 0x49, 0x55, 0xa2, 0xe8, 0x52, 0x30, 0x63, 0xcc, 0x61, 0x36, 0xf2, 0xbb, 0x37, 0xbe, 0xfb, 0xef, 0x7a, 0x68, 0x1d, 0x3b, 0xbb, 0xc5, 0x77, 0x88, }; static const unsigned char ecdh_secp256r1_1790_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_1790_sharedsecret[] = { 0x91, 0x3d, 0xa7, 0x10, 0x44, 0xb8, 0x02, 0x1a, 0x86, 0xc8, 0xfc, 0xaf, 0x4f, 0x63, 0x4d, 0x0d, 0x62, 0x5f, 0xf9, 0x1e, 0xe1, 0xc8, 0x47, 0x4d, 0x54, 0x8b, 0xd1, 0x08, 0x88, 0x96, 0x4f, 0xb1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1790 = { .name = "ecdh_secp256r1_1790", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1790_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1790_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1790_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 77 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1791 for ECDH, tcId is 78 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1791_peerpubkey[] = { 0x41, 0xe9, 0xd4, 0xcf, 0xa8, 0xef, 0xe8, 0x0b, 0x89, 0x5a, 0x8c, 0xbc, 0xce, 0x25, 0x68, 0xe2, 0x51, 0xdb, 0x7e, 0xcd, 0xfd, 0x20, 0xa7, 0xad, 0x71, 0x0d, 0x4a, 0x4b, 0xf2, 0xad, 0xdc, 0x6b, 0x5e, 0xc3, 0x6a, 0x83, 0x39, 0x16, 0x8a, 0x03, 0xf1, 0x5b, 0x8c, 0x80, 0xf2, 0xa2, 0xa8, 0x28, 0xf1, 0x51, 0xd3, 0x87, 0x91, 0x58, 0x48, 0x53, 0xba, 0x2f, 0xf4, 0x4a, 0x2a, 0x04, 0x60, 0xa1, }; static const unsigned char ecdh_secp256r1_1791_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1791_sharedsecret[] = { 0xb4, 0x8e, 0x11, 0x9d, 0x29, 0xee, 0xf7, 0xdb, 0xb7, 0x6b, 0x64, 0x21, 0x8e, 0x72, 0x8d, 0xdb, 0xf6, 0xec, 0x60, 0x05, 0x05, 0xec, 0x7c, 0xed, 0x6a, 0xb6, 0xfb, 0x87, 0x63, 0x30, 0x8d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1791 = { .name = "ecdh_secp256r1_1791", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1791_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1791_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1791_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 78 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1792 for ECDH, tcId is 79 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1792_peerpubkey[] = { 0x77, 0x6a, 0xef, 0x1a, 0xcb, 0x82, 0xb6, 0x28, 0xe1, 0x32, 0xcc, 0x29, 0x44, 0x09, 0x88, 0xf0, 0xa1, 0x5d, 0x4c, 0xc2, 0xb4, 0xf3, 0x28, 0xae, 0xcb, 0x06, 0x3c, 0x9b, 0x86, 0xe5, 0x01, 0x8e, 0x6e, 0x44, 0xdf, 0xc6, 0x04, 0x44, 0xfa, 0xa9, 0xc4, 0xe3, 0x6b, 0xc2, 0x17, 0x45, 0x1f, 0x7a, 0xc2, 0x95, 0x6c, 0xb3, 0xb2, 0xe9, 0xbb, 0xd6, 0x55, 0xeb, 0xa2, 0x97, 0x16, 0x3d, 0x1f, 0x34, }; static const unsigned char ecdh_secp256r1_1792_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1792_sharedsecret[] = { 0x28, 0xa8, 0x8b, 0x6b, 0x25, 0x8f, 0x23, 0x30, 0x20, 0xba, 0x6f, 0xa9, 0xc0, 0x0d, 0x1d, 0x72, 0x83, 0x1f, 0x45, 0x15, 0xb8, 0x69, 0x66, 0xa9, 0x78, 0x2f, 0x52, 0x13, 0x15, 0xe1, 0x8a, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256r1_1792 = { .name = "ecdh_secp256r1_1792", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1792_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1792_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1792_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 79 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1793 for ECDH, tcId is 80 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1793_peerpubkey[] = { 0x9e, 0xc0, 0x6b, 0x0b, 0x08, 0x66, 0x2c, 0x0e, 0x1d, 0xd9, 0x11, 0x16, 0x96, 0xa6, 0x3a, 0x16, 0x01, 0xcc, 0x83, 0xce, 0xe2, 0x06, 0x95, 0x77, 0x8a, 0xdf, 0x84, 0xd4, 0x30, 0x64, 0xfc, 0x90, 0x15, 0x60, 0x01, 0xf0, 0x84, 0xcd, 0x3c, 0x1d, 0xf1, 0xa0, 0x87, 0xf6, 0x26, 0x53, 0x3b, 0x65, 0x72, 0x58, 0x48, 0x89, 0xbd, 0x3d, 0x5c, 0x2c, 0x99, 0xf0, 0xe3, 0x11, 0xe2, 0x2b, 0x41, 0xe6, }; static const unsigned char ecdh_secp256r1_1793_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1793_sharedsecret[] = { 0xc4, 0xff, 0x86, 0x5f, 0xf3, 0xdc, 0x49, 0x53, 0xea, 0x78, 0xd9, 0x2a, 0x02, 0xf3, 0x34, 0x5a, 0x53, 0xbd, 0xb6, 0x05, 0x0c, 0xfd, 0x8f, 0x41, 0xba, 0xa4, 0x39, 0x5e, 0xcb, 0x6a, 0xca, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_1793 = { .name = "ecdh_secp256r1_1793", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1793_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1793_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1793_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 80 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1794 for ECDH, tcId is 81 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1794_peerpubkey[] = { 0xfa, 0x51, 0xd1, 0x28, 0xad, 0xc2, 0x00, 0x0f, 0x09, 0xff, 0x12, 0xc6, 0xfd, 0x8e, 0x25, 0xaa, 0x08, 0x55, 0x6d, 0x70, 0x8b, 0xf6, 0xb0, 0xff, 0xff, 0x9e, 0x8e, 0xaa, 0xd4, 0x78, 0x3f, 0x0d, 0xe2, 0x2b, 0xf5, 0x29, 0xe5, 0x16, 0xe1, 0xf6, 0x4b, 0x8e, 0x0d, 0x09, 0xf9, 0x8f, 0xad, 0x4e, 0x50, 0x16, 0x95, 0xa9, 0x30, 0xa1, 0xb2, 0x20, 0x76, 0x65, 0x9d, 0xa7, 0x07, 0xe3, 0xcc, 0xd0, }; static const unsigned char ecdh_secp256r1_1794_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1794_sharedsecret[] = { 0xde, 0x10, 0x69, 0xf0, 0x51, 0x63, 0x7e, 0x10, 0x16, 0x65, 0x59, 0xce, 0xf4, 0x46, 0x88, 0xaf, 0xc8, 0x09, 0x34, 0x18, 0x55, 0x26, 0x12, 0x15, 0xc4, 0xf3, 0x81, 0xd9, 0xd7, 0xda, 0x76, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_1794 = { .name = "ecdh_secp256r1_1794", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1794_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1794_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1794_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 81 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1795 for ECDH, tcId is 82 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1795_peerpubkey[] = { 0x61, 0x4d, 0xcf, 0xbe, 0xa4, 0x78, 0x9a, 0x3f, 0x3e, 0xb4, 0xa8, 0xe2, 0xf1, 0x11, 0xc8, 0x87, 0xf0, 0x24, 0x8d, 0x93, 0x16, 0xb9, 0x9d, 0x08, 0x64, 0xc9, 0x27, 0xa0, 0x45, 0xd6, 0x94, 0x17, 0x53, 0xa0, 0x73, 0xbe, 0xfe, 0x08, 0x49, 0x1a, 0x80, 0x50, 0xa4, 0xd9, 0x6d, 0x08, 0xba, 0x47, 0x90, 0xae, 0x18, 0xdb, 0x3e, 0xf7, 0xf0, 0xea, 0xcc, 0xf5, 0x9c, 0xe1, 0x09, 0x5a, 0xfc, 0x54, }; static const unsigned char ecdh_secp256r1_1795_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1795_sharedsecret[] = { 0x42, 0x07, 0xbf, 0x41, 0x59, 0xfa, 0xa0, 0xe5, 0x0e, 0xd2, 0x38, 0xb9, 0xc0, 0xff, 0x46, 0x19, 0x4a, 0x53, 0x9a, 0x1b, 0xa0, 0x3a, 0x5a, 0x4c, 0x8d, 0x68, 0xf3, 0x69, 0xae, 0xcd, 0x31, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1795 = { .name = "ecdh_secp256r1_1795", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1795_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1795_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1795_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 82 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1796 for ECDH, tcId is 83 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1796_peerpubkey[] = { 0xef, 0xe7, 0x75, 0x4e, 0xd4, 0xc0, 0xb3, 0xc1, 0xdd, 0x30, 0x1b, 0xc1, 0xed, 0x69, 0x80, 0x0a, 0xa2, 0xff, 0x5d, 0x51, 0xfb, 0x85, 0x93, 0x77, 0x15, 0xe6, 0x0d, 0x2e, 0x7b, 0xca, 0xda, 0x8e, 0xb1, 0x58, 0x1a, 0xb7, 0x5f, 0xb3, 0xc7, 0x97, 0xef, 0x94, 0xa9, 0xdb, 0xa3, 0xd8, 0x25, 0x68, 0xc8, 0x46, 0x17, 0xea, 0xf3, 0xfa, 0x04, 0xf2, 0x79, 0xfb, 0xfd, 0x89, 0x8f, 0x70, 0x46, 0x04, }; static const unsigned char ecdh_secp256r1_1796_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1796_sharedsecret[] = { 0xb5, 0xa0, 0xec, 0x92, 0xae, 0xcc, 0x30, 0x10, 0xd2, 0x7d, 0x22, 0x63, 0xd3, 0xda, 0x66, 0xe3, 0xd2, 0xf3, 0x39, 0x5d, 0x23, 0x94, 0x70, 0x24, 0xa3, 0xf4, 0x74, 0x44, 0x54, 0x62, 0x20, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256r1_1796 = { .name = "ecdh_secp256r1_1796", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1796_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1796_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1796_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 83 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1797 for ECDH, tcId is 84 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1797_peerpubkey[] = { 0xd8, 0xe1, 0x3f, 0xbd, 0x01, 0x7f, 0x1f, 0x9a, 0x26, 0xbe, 0x35, 0xc6, 0x11, 0xd7, 0xb2, 0x29, 0x9f, 0x5d, 0x10, 0xde, 0x3c, 0x8a, 0x26, 0x36, 0x22, 0x73, 0xff, 0xfb, 0x85, 0x23, 0x8f, 0x3e, 0xd1, 0x42, 0x6b, 0x74, 0x8c, 0x1f, 0x87, 0xe3, 0xaf, 0xa2, 0xc1, 0xe7, 0xa0, 0x22, 0x43, 0x10, 0xc9, 0x80, 0x65, 0x5e, 0x07, 0x39, 0x95, 0x90, 0xd1, 0x49, 0x4d, 0x6d, 0x6b, 0xea, 0x03, 0x96, }; static const unsigned char ecdh_secp256r1_1797_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1797_sharedsecret[] = { 0xd2, 0xa5, 0xbc, 0x66, 0x49, 0x8c, 0x60, 0x36, 0xae, 0xcd, 0xfa, 0xad, 0x04, 0x1c, 0xef, 0x73, 0x2a, 0x89, 0x3d, 0xe1, 0x90, 0xa0, 0xa5, 0xb4, 0x2f, 0xf7, 0x1e, 0x13, 0xf0, 0x92, 0x80, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_1797 = { .name = "ecdh_secp256r1_1797", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1797_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1797_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1797_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 84 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1798 for ECDH, tcId is 85 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1798_peerpubkey[] = { 0x5a, 0x10, 0x27, 0x66, 0x6a, 0x0e, 0x37, 0x24, 0x81, 0xfe, 0xc0, 0xb3, 0x90, 0x1e, 0x05, 0x8d, 0x60, 0x10, 0x7c, 0x07, 0xb1, 0x11, 0x55, 0x50, 0xce, 0xb0, 0x57, 0x89, 0xb5, 0x5a, 0x6d, 0x35, 0x06, 0x3d, 0x4c, 0x8e, 0xe6, 0x6e, 0xd4, 0x5f, 0xf3, 0xe1, 0xdf, 0xdc, 0xfd, 0x73, 0xed, 0x96, 0xa9, 0xe8, 0x31, 0x93, 0x88, 0x4a, 0xdb, 0xca, 0xa5, 0x74, 0xb2, 0xdd, 0x11, 0x8a, 0x69, 0x2b, }; static const unsigned char ecdh_secp256r1_1798_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1798_sharedsecret[] = { 0x1f, 0x81, 0x23, 0x13, 0xdd, 0xcf, 0x36, 0xbc, 0x38, 0x07, 0x1d, 0x0e, 0x51, 0xa7, 0x41, 0x00, 0xd6, 0x30, 0xc8, 0xe2, 0x0c, 0xc4, 0x14, 0x32, 0x6e, 0xef, 0xa4, 0x2e, 0xcb, 0x1b, 0x5f, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp256r1_1798 = { .name = "ecdh_secp256r1_1798", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1798_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1798_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1798_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 85 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1799 for ECDH, tcId is 86 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1799_peerpubkey[] = { 0x79, 0x37, 0xb9, 0xc4, 0x09, 0x86, 0xdd, 0x75, 0x5a, 0x06, 0x56, 0x20, 0x30, 0x89, 0x78, 0x25, 0x83, 0xda, 0x7d, 0x81, 0x13, 0xa4, 0x41, 0x90, 0x76, 0x2a, 0xb4, 0x74, 0xa2, 0x0b, 0xcf, 0x60, 0xef, 0xcb, 0xc1, 0x52, 0x5a, 0xed, 0x5b, 0x4a, 0xd8, 0xe6, 0x87, 0xcb, 0x02, 0xc2, 0xef, 0x88, 0x87, 0x09, 0x5c, 0xad, 0xca, 0x56, 0xc7, 0x65, 0xb4, 0x1b, 0x4a, 0x95, 0x44, 0xff, 0x2f, 0xe8, }; static const unsigned char ecdh_secp256r1_1799_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1799_sharedsecret[] = { 0xf2, 0x84, 0x08, 0x9b, 0xdd, 0xd5, 0xe2, 0xe1, 0xbe, 0x3f, 0x82, 0x64, 0x0e, 0xfa, 0x06, 0x58, 0x46, 0x8f, 0xa1, 0xf1, 0x0b, 0x28, 0x19, 0x63, 0xa3, 0xca, 0x19, 0x0c, 0x39, 0x82, 0xfd, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_1799 = { .name = "ecdh_secp256r1_1799", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1799_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1799_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1799_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 86 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1800 for ECDH, tcId is 87 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1800_peerpubkey[] = { 0x93, 0x68, 0x06, 0x6a, 0x07, 0x48, 0x86, 0x7a, 0x7b, 0x87, 0x02, 0x44, 0xf5, 0xc9, 0xf8, 0x2e, 0xa8, 0xbd, 0x51, 0x55, 0x29, 0x59, 0xdd, 0x55, 0x0b, 0xb7, 0x39, 0x44, 0x97, 0x15, 0x9a, 0x5d, 0x40, 0x76, 0x4a, 0xdd, 0x1a, 0xe2, 0x4c, 0x8e, 0x3f, 0x43, 0x2e, 0xe0, 0x11, 0xbe, 0x97, 0xd3, 0x13, 0x07, 0x18, 0xfe, 0x0a, 0x6a, 0x90, 0xed, 0x8b, 0x10, 0x11, 0xb2, 0x03, 0x4d, 0x09, 0xa0, }; static const unsigned char ecdh_secp256r1_1800_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1800_sharedsecret[] = { 0x45, 0x29, 0xf4, 0xb6, 0x31, 0xc9, 0x98, 0x4a, 0xb2, 0x16, 0xa6, 0x80, 0x12, 0x81, 0xfc, 0x4f, 0xd8, 0x73, 0x1a, 0x58, 0xb6, 0x5c, 0xa8, 0xd0, 0x7b, 0xff, 0x07, 0x81, 0x11, 0x16, 0x37, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1800 = { .name = "ecdh_secp256r1_1800", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1800_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1800_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1800_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 87 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1801 for ECDH, tcId is 88 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1801_peerpubkey[] = { 0x98, 0x1d, 0x74, 0x49, 0xbd, 0xf0, 0x01, 0x3f, 0x5e, 0xed, 0xdb, 0xb7, 0xe4, 0x2c, 0x44, 0x2f, 0x7c, 0xcd, 0xd9, 0x42, 0x7b, 0xd2, 0x6d, 0x7b, 0x38, 0x87, 0x55, 0xaa, 0x5e, 0x26, 0xf4, 0x6a, 0x12, 0x92, 0xb8, 0x8f, 0xa6, 0xbf, 0x5d, 0xff, 0xca, 0x05, 0x4d, 0xd4, 0x2e, 0xd3, 0x59, 0x42, 0x77, 0xb5, 0x93, 0xdc, 0xc4, 0x02, 0xd8, 0x03, 0x40, 0xfb, 0x78, 0x16, 0xe4, 0xdc, 0xab, 0x37, }; static const unsigned char ecdh_secp256r1_1801_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1801_sharedsecret[] = { 0x64, 0xbb, 0xc9, 0xfd, 0xd7, 0x36, 0x43, 0xeb, 0x29, 0x54, 0xf4, 0xab, 0x64, 0x03, 0x81, 0xb9, 0x38, 0xc5, 0xe6, 0x01, 0x84, 0x6a, 0x0c, 0x6b, 0x69, 0x54, 0x96, 0x6e, 0x0d, 0xc7, 0x3e, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1801 = { .name = "ecdh_secp256r1_1801", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1801_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1801_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1801_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 88 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1802 for ECDH, tcId is 89 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1802_peerpubkey[] = { 0x09, 0xe7, 0x8d, 0x4e, 0xf6, 0x0d, 0x05, 0xf7, 0x50, 0xf6, 0x63, 0x62, 0x09, 0x09, 0x2b, 0xc4, 0x3c, 0xbd, 0xd6, 0xb4, 0x7e, 0x11, 0xa9, 0xde, 0x20, 0xa9, 0xfe, 0xb2, 0xa5, 0x0b, 0xb9, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1802_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1802_sharedsecret[] = { 0x28, 0xf6, 0x77, 0x57, 0xac, 0xc2, 0x8b, 0x16, 0x84, 0xba, 0x76, 0xff, 0xd5, 0x34, 0xae, 0xd4, 0x2d, 0x45, 0xb8, 0xb3, 0xf1, 0x0b, 0x82, 0xa5, 0x69, 0x94, 0x16, 0xef, 0xf7, 0x19, 0x9a, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256r1_1802 = { .name = "ecdh_secp256r1_1802", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1802_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1802_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1802_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 89 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1803 for ECDH, tcId is 90 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1803_peerpubkey[] = { 0x53, 0x84, 0xd6, 0xc0, 0xde, 0xf7, 0x89, 0x60, 0xdb, 0x96, 0x7b, 0x80, 0x96, 0xd3, 0x54, 0x77, 0xc5, 0xa5, 0xce, 0x30, 0xef, 0x0c, 0x6d, 0x88, 0x79, 0xa5, 0x56, 0x8c, 0xa8, 0x7e, 0x97, 0x94, 0x01, 0xee, 0x56, 0xc4, 0x58, 0x17, 0x22, 0x61, 0x0b, 0x43, 0xf3, 0xcb, 0xfc, 0xf3, 0x86, 0x2c, 0x08, 0x2a, 0x6e, 0x36, 0xba, 0xa3, 0x6f, 0xd6, 0xf7, 0x84, 0x03, 0xc0, 0xe3, 0x99, 0xfa, 0xa5, }; static const unsigned char ecdh_secp256r1_1803_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1803_sharedsecret[] = { 0x9e, 0xe6, 0x53, 0xcd, 0xa4, 0x6d, 0xb6, 0x76, 0x12, 0x76, 0x0c, 0xe3, 0x5b, 0xac, 0x84, 0x50, 0xbb, 0xf4, 0x8d, 0xbf, 0x74, 0x45, 0x1e, 0xd9, 0x3a, 0xbb, 0x6d, 0xb4, 0x08, 0xa9, 0xfe, 0x10, }; static const wycheproof_ecdh_test ecdh_secp256r1_1803 = { .name = "ecdh_secp256r1_1803", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1803_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1803_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1803_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 90 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1804 for ECDH, tcId is 91 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1804_peerpubkey[] = { 0x4e, 0xca, 0x76, 0x41, 0xa4, 0xaf, 0xd5, 0xea, 0xb0, 0xb2, 0x14, 0x65, 0x7f, 0xf3, 0xbd, 0xcb, 0xfc, 0x66, 0xf1, 0x55, 0x1a, 0x53, 0xbb, 0x59, 0x49, 0x3b, 0xc3, 0x8e, 0xd7, 0x8f, 0xf3, 0x96, 0x14, 0xa0, 0xca, 0xdf, 0xf1, 0x4c, 0x14, 0x73, 0x6e, 0xdb, 0xdc, 0xda, 0xb5, 0x10, 0xcb, 0xa0, 0x7a, 0x89, 0x24, 0xff, 0xd0, 0x49, 0x0e, 0xe5, 0x14, 0xae, 0xdf, 0xaa, 0xdb, 0x64, 0x8b, 0x01, }; static const unsigned char ecdh_secp256r1_1804_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1804_sharedsecret[] = { 0x97, 0x36, 0xad, 0x6b, 0x2a, 0x2e, 0xf1, 0x7e, 0xc3, 0xf8, 0xc8, 0xdc, 0x2e, 0x35, 0x71, 0x5f, 0xb1, 0xc0, 0x6f, 0x28, 0xd8, 0x2e, 0x4e, 0x26, 0x87, 0x6f, 0x02, 0x14, 0x58, 0x81, 0x65, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1804 = { .name = "ecdh_secp256r1_1804", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1804_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1804_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1804_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 91 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1805 for ECDH, tcId is 92 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1805_peerpubkey[] = { 0x8d, 0x01, 0x77, 0xeb, 0xab, 0x9c, 0x6e, 0x9e, 0x10, 0xdb, 0x6d, 0xd0, 0x95, 0xdb, 0xac, 0x0d, 0x63, 0x75, 0xe8, 0xa9, 0x7b, 0x70, 0xf6, 0x11, 0x87, 0x5d, 0x87, 0x7f, 0x00, 0x69, 0xd2, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1805_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1805_sharedsecret[] = { 0x74, 0x8f, 0xa4, 0xf5, 0xa3, 0x99, 0x32, 0x03, 0x82, 0xdc, 0x92, 0x00, 0x26, 0x93, 0x86, 0x94, 0xc4, 0x1a, 0x26, 0xfe, 0x2a, 0xaa, 0x31, 0x8c, 0x5e, 0x71, 0x01, 0x98, 0xdd, 0x71, 0xc7, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_1805 = { .name = "ecdh_secp256r1_1805", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1805_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1805_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1805_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 92 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1806 for ECDH, tcId is 93 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1806_peerpubkey[] = { 0x5f, 0xdb, 0x7f, 0x0c, 0xff, 0xb8, 0xb5, 0xb1, 0x14, 0x2d, 0x24, 0x69, 0x8a, 0x4b, 0xda, 0x76, 0xbf, 0x98, 0x27, 0xd6, 0x3b, 0x1a, 0x6b, 0xd8, 0x5a, 0x4e, 0x2f, 0x9b, 0x59, 0xc5, 0x10, 0xcf, 0xbc, 0xb3, 0x5b, 0xa9, 0xc9, 0x87, 0x10, 0x8b, 0x6d, 0x43, 0x37, 0xad, 0x53, 0x93, 0xf9, 0xf9, 0x10, 0xec, 0x92, 0x41, 0x0c, 0x23, 0x08, 0x69, 0xd6, 0x65, 0x28, 0xed, 0x88, 0xc1, 0xb9, 0x8a, }; static const unsigned char ecdh_secp256r1_1806_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1806_sharedsecret[] = { 0x7f, 0x97, 0xdb, 0x83, 0xb4, 0xd8, 0x6f, 0x04, 0xfe, 0x28, 0x60, 0x41, 0xee, 0x21, 0xe8, 0x0e, 0xc3, 0xd5, 0x9f, 0x3c, 0xe8, 0x2c, 0xde, 0xea, 0xf3, 0x62, 0x01, 0x6f, 0xc8, 0x7a, 0x3e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_1806 = { .name = "ecdh_secp256r1_1806", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1806_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1806_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1806_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 93 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1807 for ECDH, tcId is 94 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1807_peerpubkey[] = { 0x53, 0x0b, 0x22, 0x93, 0xe6, 0x0c, 0x6b, 0x6f, 0x14, 0xc7, 0x5c, 0x90, 0xb1, 0xef, 0x8b, 0x9f, 0x9f, 0xa6, 0xb2, 0x15, 0x1b, 0x8d, 0x98, 0x55, 0x79, 0x2e, 0xb2, 0xb3, 0xdc, 0x69, 0xf0, 0x7a, 0x0d, 0xb4, 0x24, 0x40, 0xe7, 0x3f, 0xd7, 0xd6, 0xdf, 0x04, 0xae, 0xd5, 0x02, 0x2f, 0xbe, 0x21, 0xce, 0xae, 0xc3, 0x3c, 0x5f, 0xba, 0xde, 0x1b, 0xd6, 0xad, 0x32, 0x1e, 0xf2, 0xe1, 0x0d, 0x0b, }; static const unsigned char ecdh_secp256r1_1807_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1807_sharedsecret[] = { 0x21, 0x79, 0x4c, 0xf2, 0x4f, 0x56, 0x27, 0x3f, 0xa4, 0x46, 0x3c, 0xc7, 0xae, 0x42, 0x32, 0xfa, 0x34, 0xdb, 0xe0, 0xf1, 0x8b, 0x73, 0x61, 0x3b, 0x8a, 0xe9, 0xcb, 0xfb, 0x9c, 0x36, 0xab, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256r1_1807 = { .name = "ecdh_secp256r1_1807", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1807_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1807_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1807_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 94 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1808 for ECDH, tcId is 95 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1808_peerpubkey[] = { 0x69, 0x16, 0xfa, 0xc4, 0x5e, 0x56, 0x8b, 0x6b, 0x9e, 0x2e, 0x2e, 0xcd, 0x61, 0x1b, 0x28, 0x2e, 0x5f, 0xcc, 0x40, 0xa3, 0x06, 0x7d, 0x60, 0x10, 0x57, 0xf8, 0x79, 0xce, 0x5a, 0x8a, 0x73, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1808_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1808_sharedsecret[] = { 0x91, 0x51, 0x06, 0xd0, 0x78, 0x16, 0xe8, 0x79, 0xe7, 0x64, 0x3f, 0x00, 0xab, 0xf6, 0xd7, 0x9f, 0xb8, 0xf1, 0xcb, 0x78, 0xbf, 0x64, 0xa6, 0xa3, 0x82, 0x7f, 0x91, 0xa7, 0xb0, 0xef, 0x0f, 0x41, }; static const wycheproof_ecdh_test ecdh_secp256r1_1808 = { .name = "ecdh_secp256r1_1808", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1808_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1808_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1808_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 95 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1809 for ECDH, tcId is 96 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1809_peerpubkey[] = { 0xed, 0x95, 0x68, 0xc8, 0x5b, 0xc5, 0x2a, 0x6b, 0x45, 0x73, 0x36, 0x18, 0xc3, 0x60, 0x21, 0x07, 0xc1, 0xfd, 0xac, 0xf2, 0x3b, 0x1a, 0x38, 0xe4, 0x86, 0xaf, 0x95, 0x97, 0x8a, 0x21, 0x4e, 0x2e, 0xfa, 0x0d, 0x71, 0xd5, 0xe7, 0x37, 0x89, 0x1c, 0x42, 0x76, 0xe2, 0x47, 0x58, 0x1e, 0xe6, 0x13, 0x90, 0x11, 0xca, 0x14, 0x60, 0xdb, 0x9b, 0x1e, 0x20, 0xb3, 0x64, 0xd9, 0x27, 0x56, 0x83, 0xe2, }; static const unsigned char ecdh_secp256r1_1809_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1809_sharedsecret[] = { 0x2f, 0xcc, 0xe5, 0x52, 0x31, 0x08, 0x19, 0xdd, 0x77, 0x5a, 0xb7, 0xba, 0x9f, 0xf0, 0xf9, 0x6a, 0x1f, 0xca, 0xdd, 0x25, 0xa0, 0xc7, 0x09, 0x70, 0x3c, 0xef, 0x04, 0xbb, 0x6e, 0x1a, 0x7b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256r1_1809 = { .name = "ecdh_secp256r1_1809", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1809_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1809_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1809_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 96 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1810 for ECDH, tcId is 97 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1810_peerpubkey[] = { 0x9f, 0xf7, 0x73, 0x1c, 0x00, 0xf2, 0xaa, 0x88, 0xb3, 0xfc, 0x17, 0x4a, 0xba, 0x90, 0x7a, 0xd1, 0x75, 0x95, 0xe6, 0x02, 0xe7, 0x68, 0xa5, 0xf1, 0xe9, 0x46, 0x2a, 0x6d, 0x4b, 0x89, 0xb2, 0xd2, 0x3f, 0x17, 0x8a, 0x70, 0xb9, 0xbb, 0x3e, 0xdc, 0xe2, 0x89, 0x11, 0x83, 0x38, 0xa3, 0x3d, 0xf3, 0x0c, 0x43, 0x2c, 0x34, 0x7f, 0x12, 0xa3, 0xde, 0x0a, 0x2b, 0x03, 0xb3, 0x53, 0x87, 0x8d, 0x96, }; static const unsigned char ecdh_secp256r1_1810_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1810_sharedsecret[] = { 0x75, 0x7d, 0x92, 0x6a, 0x26, 0x93, 0xbc, 0x8a, 0x3d, 0x2d, 0x8c, 0x05, 0x54, 0xa1, 0x35, 0x79, 0xef, 0x9e, 0x55, 0x91, 0x86, 0x57, 0x89, 0x11, 0xf3, 0x7e, 0xdc, 0x88, 0xb2, 0xf5, 0xe6, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1810 = { .name = "ecdh_secp256r1_1810", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1810_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1810_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1810_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 97 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1811 for ECDH, tcId is 98 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1811_peerpubkey[] = { 0x82, 0x70, 0xf8, 0x17, 0x9d, 0x57, 0x43, 0x6b, 0x34, 0xdf, 0xc0, 0xbd, 0xf7, 0xd4, 0x17, 0xa5, 0xc8, 0x95, 0x11, 0x6b, 0x90, 0xcb, 0x51, 0xae, 0xc7, 0x18, 0x61, 0x4f, 0x86, 0x4a, 0x63, 0x5d, 0x17, 0x48, 0x04, 0xe0, 0xc0, 0xe0, 0x6e, 0x3d, 0x68, 0xd3, 0x14, 0x9e, 0x0b, 0x95, 0x66, 0x21, 0xc6, 0xaa, 0x2b, 0xde, 0x83, 0xf4, 0xd1, 0x7d, 0x03, 0xd2, 0x8e, 0xf8, 0xaa, 0x38, 0x9f, 0xff, }; static const unsigned char ecdh_secp256r1_1811_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1811_sharedsecret[] = { 0x3d, 0xb2, 0x9e, 0xc6, 0xf9, 0x78, 0xd2, 0x26, 0x9e, 0x92, 0xe9, 0xc7, 0xeb, 0x5c, 0x8b, 0x5a, 0x8e, 0x56, 0xc2, 0x22, 0x8a, 0x4f, 0xb9, 0xe4, 0x83, 0xfe, 0xca, 0x50, 0xaa, 0x3e, 0x45, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1811 = { .name = "ecdh_secp256r1_1811", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1811_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1811_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1811_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 98 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1812 for ECDH, tcId is 99 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1812_peerpubkey[] = { 0xc6, 0x17, 0x50, 0xe9, 0x8a, 0xba, 0xf2, 0x02, 0x25, 0xa8, 0x81, 0xdb, 0xfd, 0x35, 0x10, 0x53, 0x2c, 0xfc, 0x3d, 0xf9, 0x71, 0xbb, 0xbc, 0xa4, 0xa2, 0xbd, 0x52, 0xf9, 0x1a, 0xcc, 0x9c, 0x59, 0xd0, 0xfe, 0x79, 0x34, 0x20, 0x97, 0xf8, 0x8a, 0xe7, 0x8f, 0xc7, 0x9a, 0x80, 0x32, 0x24, 0x5f, 0xdd, 0x2c, 0x30, 0xcc, 0x64, 0xac, 0xea, 0xaa, 0x9f, 0xd5, 0x7b, 0x08, 0x25, 0x69, 0x25, 0x31, }; static const unsigned char ecdh_secp256r1_1812_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1812_sharedsecret[] = { 0x72, 0xc5, 0x7c, 0x2e, 0x10, 0xd7, 0x73, 0x18, 0xb3, 0xa7, 0x96, 0x09, 0x7b, 0xbf, 0x76, 0x8c, 0x63, 0x66, 0x14, 0x2d, 0x80, 0xf9, 0x8c, 0x90, 0xa9, 0x37, 0x80, 0xa8, 0x41, 0x07, 0x5f, 0x32, }; static const wycheproof_ecdh_test ecdh_secp256r1_1812 = { .name = "ecdh_secp256r1_1812", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1812_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1812_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1812_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 99 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1813 for ECDH, tcId is 100 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1813_peerpubkey[] = { 0x9c, 0x5d, 0x3b, 0xb5, 0x46, 0x50, 0xd9, 0x55, 0x0e, 0x1e, 0xe2, 0xef, 0xa3, 0xea, 0x43, 0xc1, 0x4a, 0xb9, 0x9d, 0x18, 0xbb, 0x04, 0x9f, 0x37, 0xb4, 0x2a, 0x6d, 0xac, 0x48, 0x23, 0x2f, 0x0b, 0xd3, 0xa2, 0x76, 0x0d, 0x83, 0xd3, 0x3a, 0xfe, 0x4c, 0xe6, 0xf1, 0xd1, 0x24, 0x54, 0x89, 0xc5, 0x09, 0xbd, 0x26, 0xb0, 0x25, 0x1f, 0x30, 0x8f, 0x8c, 0x99, 0x6e, 0x80, 0xf7, 0xa3, 0xf8, 0xeb, }; static const unsigned char ecdh_secp256r1_1813_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1813_sharedsecret[] = { 0xa9, 0x6b, 0x07, 0x94, 0x4e, 0x9e, 0xb2, 0xb2, 0x2a, 0x9a, 0x36, 0x57, 0x5e, 0xff, 0x1f, 0x4f, 0x63, 0x63, 0xb4, 0xaa, 0x3a, 0x53, 0xb1, 0x00, 0xb8, 0x51, 0x8a, 0x67, 0xba, 0x54, 0x05, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_1813 = { .name = "ecdh_secp256r1_1813", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1813_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1813_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1813_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 100 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1814 for ECDH, tcId is 101 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1814_peerpubkey[] = { 0xf1, 0x72, 0x4e, 0xfd, 0x48, 0x1a, 0xd4, 0x5a, 0x55, 0x79, 0x5f, 0x06, 0x12, 0x6b, 0x1f, 0x5e, 0xd2, 0x8e, 0x7d, 0x9b, 0xb4, 0xfe, 0xe9, 0x10, 0xaf, 0x2a, 0xd8, 0xc1, 0x37, 0x3b, 0x18, 0xff, 0x77, 0xed, 0xbc, 0x34, 0xda, 0x6c, 0x78, 0x7e, 0xc7, 0x34, 0x30, 0x34, 0x7f, 0x4d, 0xa8, 0x68, 0x10, 0x03, 0x2d, 0x88, 0xf7, 0x47, 0x5f, 0x6c, 0x42, 0xf1, 0x59, 0x14, 0x07, 0x9d, 0x17, 0x9e, }; static const unsigned char ecdh_secp256r1_1814_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1814_sharedsecret[] = { 0x85, 0x58, 0x83, 0x31, 0x6b, 0x6d, 0x09, 0x7a, 0xe5, 0xea, 0xb6, 0xc6, 0x7e, 0x84, 0x11, 0xa1, 0x39, 0x73, 0x49, 0xa0, 0x9b, 0x9d, 0x7d, 0x8f, 0x09, 0x6b, 0x2b, 0xa1, 0xbd, 0x03, 0xea, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256r1_1814 = { .name = "ecdh_secp256r1_1814", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1814_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1814_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1814_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 101 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1815 for ECDH, tcId is 102 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1815_peerpubkey[] = { 0xfc, 0x36, 0x80, 0xaf, 0x52, 0xfa, 0x89, 0xff, 0xcd, 0x19, 0x3e, 0xcc, 0x0b, 0x07, 0x14, 0x46, 0x6f, 0xe5, 0xdb, 0x27, 0x7e, 0xe5, 0x87, 0x28, 0x46, 0xc5, 0x20, 0xbf, 0x4e, 0x37, 0x21, 0xd9, 0x27, 0x26, 0x0a, 0x0e, 0x22, 0x5a, 0x3d, 0x37, 0x7e, 0x67, 0x23, 0xec, 0xb6, 0xbe, 0xf8, 0xd4, 0x49, 0x3c, 0x2d, 0xa7, 0x8a, 0x22, 0xa3, 0x07, 0xfc, 0xca, 0x8f, 0x88, 0xf4, 0x52, 0x72, 0x08, }; static const unsigned char ecdh_secp256r1_1815_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1815_sharedsecret[] = { 0x5a, 0x75, 0xbb, 0x7a, 0x0c, 0x96, 0xb8, 0x34, 0x0d, 0x08, 0x42, 0xbc, 0xcc, 0xf1, 0x19, 0x74, 0xe1, 0xa5, 0xa2, 0xc8, 0xf4, 0xbc, 0x22, 0xb3, 0x33, 0x43, 0x3c, 0xce, 0x64, 0x6b, 0x6a, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1815 = { .name = "ecdh_secp256r1_1815", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1815_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1815_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1815_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 102 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1816 for ECDH, tcId is 103 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1816_peerpubkey[] = { 0x10, 0x6b, 0x6f, 0x81, 0xe3, 0x48, 0x2d, 0xb1, 0x8d, 0x74, 0x02, 0x92, 0x91, 0x82, 0x1a, 0xe4, 0x48, 0xc3, 0x88, 0x44, 0xef, 0x78, 0x3b, 0xf1, 0xd6, 0x99, 0x9a, 0x40, 0x44, 0x01, 0xf6, 0x3f, 0x6a, 0x57, 0x53, 0xf0, 0xed, 0xc6, 0x8a, 0x62, 0xcf, 0xd6, 0xa0, 0xb1, 0x81, 0xbb, 0x25, 0x99, 0xe1, 0xf3, 0xba, 0xc5, 0xfa, 0x88, 0x24, 0xaf, 0x16, 0x0d, 0xe7, 0x9e, 0xd8, 0x67, 0xc3, 0x50, }; static const unsigned char ecdh_secp256r1_1816_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1816_sharedsecret[] = { 0xd9, 0x64, 0x12, 0xe3, 0x1c, 0xf4, 0xd2, 0x61, 0x95, 0x92, 0x0c, 0xac, 0x95, 0x2f, 0xb7, 0x9e, 0xa2, 0x5f, 0x6c, 0x50, 0xab, 0xc7, 0x9b, 0x5e, 0xd0, 0xef, 0x80, 0x26, 0xa6, 0xe8, 0x33, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256r1_1816 = { .name = "ecdh_secp256r1_1816", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1816_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1816_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1816_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 103 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1817 for ECDH, tcId is 104 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1817_peerpubkey[] = { 0x09, 0x3c, 0xb5, 0x19, 0x3a, 0x4f, 0x94, 0xcd, 0x18, 0xed, 0xaa, 0x20, 0xa9, 0x73, 0xb8, 0x7f, 0xf7, 0x9b, 0x0c, 0x03, 0x68, 0x4c, 0x79, 0x48, 0x7e, 0xcf, 0xee, 0x34, 0x7e, 0x53, 0x54, 0xeb, 0x04, 0xfc, 0xb5, 0x75, 0x25, 0x39, 0x17, 0x07, 0x77, 0x93, 0x2b, 0xe1, 0x5c, 0xd8, 0x4c, 0x97, 0xf0, 0x38, 0x15, 0xff, 0xee, 0x8b, 0x60, 0xb6, 0x47, 0xc1, 0x78, 0xee, 0xbb, 0x8e, 0x14, 0xd4, }; static const unsigned char ecdh_secp256r1_1817_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1817_sharedsecret[] = { 0x2b, 0x0e, 0xed, 0x9b, 0xad, 0xc9, 0x2a, 0x10, 0x68, 0x19, 0x6d, 0xfe, 0xc1, 0x24, 0xfe, 0x8f, 0x9d, 0x3f, 0x45, 0x1e, 0x29, 0x4d, 0x32, 0x2e, 0xb8, 0x81, 0xcc, 0xe0, 0x2f, 0x28, 0x60, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_1817 = { .name = "ecdh_secp256r1_1817", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1817_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1817_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1817_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 104 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1818 for ECDH, tcId is 105 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1818_peerpubkey[] = { 0xd6, 0xc3, 0x8f, 0x44, 0x8b, 0x96, 0x4e, 0x27, 0xb5, 0xb4, 0x50, 0xcc, 0x38, 0xd3, 0xcf, 0x41, 0xef, 0x9d, 0xf8, 0x3d, 0x8a, 0x95, 0x97, 0x71, 0xeb, 0x9c, 0x21, 0x85, 0x5c, 0xb3, 0x64, 0x45, 0xdf, 0x63, 0x8a, 0xef, 0x46, 0xa2, 0xae, 0xb1, 0x31, 0x99, 0x28, 0x1e, 0x1a, 0x26, 0xd1, 0x2f, 0xe6, 0x1b, 0x02, 0x9e, 0xc7, 0xf6, 0x8b, 0x90, 0xfa, 0xa8, 0x9f, 0x88, 0xc7, 0xa9, 0x59, 0x42, }; static const unsigned char ecdh_secp256r1_1818_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1818_sharedsecret[] = { 0xed, 0x0b, 0x1d, 0x8d, 0xfd, 0x27, 0xa6, 0x1f, 0xce, 0x91, 0xdc, 0x64, 0x05, 0xbf, 0xc5, 0x3b, 0x6d, 0x48, 0xa8, 0xc1, 0x3b, 0xa5, 0x41, 0xc9, 0x6e, 0xf3, 0xdc, 0xf3, 0x1d, 0x7c, 0xdb, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_1818 = { .name = "ecdh_secp256r1_1818", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1818_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1818_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1818_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 105 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1819 for ECDH, tcId is 106 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1819_peerpubkey[] = { 0x8a, 0x74, 0x8d, 0x61, 0xf5, 0x9c, 0x3b, 0x6a, 0x29, 0xb7, 0x33, 0xb0, 0xd5, 0x54, 0xb2, 0x49, 0x2e, 0x7f, 0x76, 0xfa, 0xd7, 0xca, 0xe1, 0xc1, 0x7f, 0x2a, 0xc3, 0xde, 0x9e, 0x4a, 0x65, 0xd2, 0xee, 0xdb, 0xe6, 0xc2, 0x6b, 0x6f, 0xd2, 0x2b, 0xfc, 0x03, 0xc1, 0x68, 0x75, 0x55, 0xd2, 0xf0, 0xa3, 0x8e, 0x02, 0xad, 0xee, 0x55, 0x70, 0x68, 0x61, 0x71, 0xab, 0xfe, 0xc6, 0x68, 0x19, 0x17, }; static const unsigned char ecdh_secp256r1_1819_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1819_sharedsecret[] = { 0xa7, 0x96, 0xdd, 0x14, 0x4f, 0x21, 0xba, 0x33, 0x18, 0xf9, 0xe1, 0x08, 0x28, 0xec, 0xef, 0xc9, 0xc0, 0xf6, 0xef, 0x2c, 0x42, 0x7a, 0xe3, 0x13, 0x51, 0xc1, 0x6c, 0x2f, 0xbf, 0xa3, 0xcf, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_1819 = { .name = "ecdh_secp256r1_1819", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1819_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1819_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1819_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 106 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1820 for ECDH, tcId is 107 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1820_peerpubkey[] = { 0xf1, 0x05, 0x26, 0x99, 0xd8, 0x7e, 0x56, 0x77, 0xc7, 0x5e, 0x26, 0xb2, 0xab, 0xe7, 0x19, 0x31, 0x06, 0x48, 0xd8, 0x20, 0xa9, 0x6e, 0x5b, 0x38, 0x1f, 0xff, 0x58, 0xb3, 0x92, 0x40, 0x15, 0x81, 0xb1, 0xbb, 0x16, 0xae, 0x8b, 0x68, 0xcb, 0xb7, 0x6a, 0x32, 0x56, 0x87, 0x0b, 0xad, 0x1e, 0xe5, 0xa3, 0x0f, 0xf9, 0xfd, 0x66, 0x2f, 0xd4, 0xf8, 0xd1, 0xfe, 0x5b, 0x5f, 0x1f, 0x98, 0xff, 0x46, }; static const unsigned char ecdh_secp256r1_1820_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1820_sharedsecret[] = { 0x1f, 0x3a, 0x96, 0x15, 0xb0, 0x74, 0x50, 0x46, 0xa9, 0x72, 0xba, 0xd5, 0xd5, 0x97, 0x94, 0xa0, 0xb6, 0x0b, 0x03, 0x2b, 0x4a, 0xc9, 0x4f, 0xe8, 0x5f, 0x77, 0xdf, 0xb3, 0x80, 0xd1, 0xf3, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1820 = { .name = "ecdh_secp256r1_1820", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1820_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1820_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1820_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 107 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1821 for ECDH, tcId is 108 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1821_peerpubkey[] = { 0x12, 0x19, 0xaf, 0x52, 0x30, 0x06, 0x4e, 0xe9, 0x77, 0x86, 0x67, 0x22, 0x5f, 0x0e, 0x00, 0x9c, 0xdb, 0x96, 0x13, 0x30, 0xe3, 0x86, 0xed, 0xb3, 0x4e, 0x4f, 0xa9, 0xfd, 0xdd, 0x0e, 0x5b, 0xe7, 0xe2, 0xa1, 0x25, 0x54, 0x22, 0x7f, 0x61, 0x3a, 0xaa, 0xa7, 0x89, 0x38, 0xdd, 0xbb, 0xc9, 0x9b, 0x92, 0x3f, 0x9d, 0x18, 0x1b, 0x81, 0x92, 0xdc, 0x4b, 0x81, 0x65, 0x77, 0xe8, 0xf3, 0xb7, 0xe9, }; static const unsigned char ecdh_secp256r1_1821_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1821_sharedsecret[] = { 0xca, 0xf9, 0x14, 0x1d, 0x1f, 0xca, 0x4d, 0x0f, 0x10, 0x68, 0x3b, 0x5e, 0x86, 0xd2, 0xb4, 0x1a, 0xf5, 0x60, 0x2f, 0x01, 0x79, 0x91, 0xfe, 0x73, 0x48, 0xd4, 0x4e, 0x8d, 0x70, 0x14, 0x11, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1821 = { .name = "ecdh_secp256r1_1821", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1821_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1821_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1821_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 108 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1822 for ECDH, tcId is 109 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1822_peerpubkey[] = { 0x60, 0xde, 0xf1, 0x30, 0xf1, 0x90, 0xe6, 0xdc, 0x44, 0xf5, 0xeb, 0x8a, 0x59, 0xe1, 0x2e, 0x7e, 0xfb, 0x27, 0xdb, 0x96, 0x8c, 0x7f, 0xa6, 0xcc, 0x6d, 0x31, 0x78, 0x5f, 0x06, 0x6b, 0x41, 0xb1, 0xf1, 0xbb, 0x55, 0x6a, 0xc4, 0xcd, 0x77, 0x03, 0x3e, 0x7a, 0xa6, 0xc5, 0xba, 0x16, 0xf4, 0x7e, 0xba, 0xfb, 0x14, 0x97, 0x5a, 0x7f, 0xd7, 0x2d, 0xd9, 0xb7, 0xfe, 0x23, 0x11, 0x6b, 0xca, 0x55, }; static const unsigned char ecdh_secp256r1_1822_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1822_sharedsecret[] = { 0x65, 0x39, 0xec, 0x1c, 0x98, 0xfa, 0x75, 0x19, 0x7b, 0xa0, 0x7c, 0x67, 0x8b, 0x26, 0x30, 0x0b, 0x3d, 0xa1, 0xfe, 0x40, 0x7d, 0xd4, 0xc6, 0x8b, 0x89, 0x45, 0x7e, 0xd6, 0x69, 0x08, 0x2e, 0x06, }; static const wycheproof_ecdh_test ecdh_secp256r1_1822 = { .name = "ecdh_secp256r1_1822", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1822_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1822_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1822_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 109 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1823 for ECDH, tcId is 110 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1823_peerpubkey[] = { 0xf2, 0x3f, 0x09, 0xbd, 0xb7, 0xd1, 0x72, 0x89, 0xeb, 0x00, 0x59, 0x75, 0xa7, 0x57, 0xa3, 0x93, 0x25, 0xb4, 0xdf, 0x9b, 0x29, 0xe5, 0x5b, 0xa2, 0xca, 0x67, 0x9b, 0x5e, 0xc0, 0x97, 0x3a, 0xe9, 0x18, 0xc8, 0x81, 0xf3, 0xc7, 0xb6, 0xc1, 0x2b, 0xed, 0x1e, 0xc5, 0x4b, 0x83, 0x7d, 0x08, 0xc5, 0x90, 0x8e, 0x89, 0xbd, 0xce, 0xdd, 0x84, 0xb9, 0x17, 0x77, 0x20, 0x37, 0x8f, 0x78, 0x96, 0x00, }; static const unsigned char ecdh_secp256r1_1823_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1823_sharedsecret[] = { 0x0b, 0x66, 0x19, 0x82, 0x7c, 0xfa, 0x94, 0x8d, 0x63, 0xf0, 0x21, 0xe9, 0xed, 0xdb, 0x92, 0xf8, 0x84, 0xfb, 0x5c, 0xe8, 0xa4, 0x04, 0xbf, 0xe0, 0x59, 0xe9, 0x93, 0xfc, 0x23, 0x44, 0x7a, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256r1_1823 = { .name = "ecdh_secp256r1_1823", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1823_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1823_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1823_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 110 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1824 for ECDH, tcId is 111 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1824_peerpubkey[] = { 0x5d, 0xbe, 0xc0, 0x98, 0xc1, 0xb7, 0xde, 0x3e, 0x3e, 0x2e, 0x73, 0xd0, 0xb6, 0x2c, 0xd4, 0x9c, 0x87, 0x7e, 0x1a, 0x01, 0x30, 0xa1, 0xb3, 0x9e, 0xb2, 0xfd, 0x4d, 0xbd, 0x44, 0x26, 0xaa, 0x4c, 0xcb, 0xee, 0xe2, 0x17, 0x59, 0x1a, 0x8d, 0x76, 0xcc, 0x8d, 0xea, 0xf1, 0x4d, 0xde, 0x52, 0xe3, 0xf4, 0x01, 0xe5, 0x3b, 0x30, 0xcb, 0xb9, 0xc1, 0x80, 0x79, 0x10, 0xd8, 0x27, 0xd0, 0x04, 0x1d, }; static const unsigned char ecdh_secp256r1_1824_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1824_sharedsecret[] = { 0x2a, 0x53, 0xa5, 0x61, 0xac, 0xf5, 0xca, 0xec, 0x6e, 0xb0, 0xd8, 0xaa, 0x40, 0x72, 0x79, 0x42, 0x88, 0x1a, 0x75, 0xd1, 0x36, 0x89, 0x9d, 0xfb, 0xff, 0x91, 0x52, 0x82, 0x36, 0x92, 0x6c, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256r1_1824 = { .name = "ecdh_secp256r1_1824", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1824_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1824_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1824_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 111 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1825 for ECDH, tcId is 112 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1825_peerpubkey[] = { 0x1e, 0x70, 0x73, 0x0d, 0xc4, 0xf3, 0x9c, 0x89, 0x70, 0x18, 0x2e, 0x1a, 0x29, 0xcc, 0x83, 0x6b, 0x9e, 0x9d, 0x6c, 0xbd, 0x6f, 0xca, 0xa8, 0xc0, 0xdc, 0x10, 0x62, 0xfe, 0xd9, 0xa8, 0x49, 0x69, 0x3e, 0x7b, 0x91, 0x51, 0xf9, 0xc8, 0xa3, 0x34, 0x53, 0x66, 0xf8, 0x22, 0x1c, 0x8f, 0xb7, 0x00, 0xe8, 0xc3, 0xa9, 0xaa, 0x7f, 0x0c, 0xc4, 0x6a, 0x48, 0x86, 0x4e, 0x16, 0x05, 0x59, 0x20, 0x94, }; static const unsigned char ecdh_secp256r1_1825_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1825_sharedsecret[] = { 0x9b, 0x37, 0x77, 0x16, 0xff, 0x1d, 0x05, 0x6d, 0xac, 0x8e, 0x39, 0x22, 0x49, 0xea, 0xec, 0x74, 0x0d, 0x2f, 0x5a, 0xa6, 0x23, 0x03, 0xf4, 0xba, 0xf6, 0xbb, 0x1b, 0x03, 0xb2, 0xa2, 0x76, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1825 = { .name = "ecdh_secp256r1_1825", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1825_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1825_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1825_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 112 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1826 for ECDH, tcId is 113 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1826_peerpubkey[] = { 0xf4, 0x28, 0xc9, 0xae, 0x3e, 0x23, 0xea, 0xf9, 0xc2, 0xa5, 0xb9, 0xa7, 0xe4, 0x1e, 0xfd, 0x1c, 0xff, 0xbf, 0x35, 0xf8, 0x81, 0xbf, 0xc3, 0x56, 0x94, 0xd9, 0xc0, 0x5d, 0x1e, 0x31, 0x2b, 0x10, 0xef, 0x6d, 0xa9, 0x02, 0x3c, 0xfd, 0x2d, 0xd0, 0xcb, 0x7b, 0x9e, 0x2a, 0x77, 0xd6, 0x44, 0xaf, 0xfe, 0x62, 0xa6, 0x3f, 0xb0, 0xf2, 0x9d, 0x45, 0x29, 0x1c, 0x68, 0x61, 0xaa, 0x06, 0x3c, 0x5c, }; static const unsigned char ecdh_secp256r1_1826_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1826_sharedsecret[] = { 0x0c, 0x0c, 0x68, 0x67, 0x66, 0x97, 0x43, 0x08, 0x25, 0x47, 0xaa, 0x94, 0x45, 0x1f, 0xeb, 0x36, 0x2f, 0xa2, 0x9f, 0xba, 0xf2, 0x28, 0xdf, 0xb3, 0xea, 0xf3, 0x75, 0xf1, 0xa5, 0xec, 0x2f, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1826 = { .name = "ecdh_secp256r1_1826", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1826_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1826_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1826_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 113 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1827 for ECDH, tcId is 114 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1827_peerpubkey[] = { 0xb9, 0xa1, 0x6d, 0x9a, 0x5b, 0x85, 0xa7, 0x14, 0xe2, 0xbb, 0x2a, 0xa2, 0x2b, 0x08, 0x6a, 0x17, 0x40, 0x4c, 0x7a, 0x3f, 0xf6, 0x24, 0x52, 0x73, 0x23, 0x47, 0x41, 0x9c, 0x99, 0xe9, 0x0b, 0xda, 0xd5, 0x78, 0xb4, 0x62, 0xf5, 0x23, 0x99, 0x43, 0x04, 0xb6, 0xaf, 0xcf, 0x69, 0x44, 0xa9, 0xcc, 0x5d, 0x0a, 0xd1, 0xaf, 0xad, 0x95, 0x64, 0x75, 0xc8, 0xf2, 0x95, 0x3c, 0x06, 0xb0, 0x6b, 0x97, }; static const unsigned char ecdh_secp256r1_1827_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1827_sharedsecret[] = { 0xd1, 0x1f, 0x9e, 0x32, 0x58, 0x7f, 0xd3, 0xb6, 0xf4, 0xa2, 0x35, 0x48, 0x12, 0x61, 0x8b, 0x4b, 0x3b, 0x4a, 0x75, 0x39, 0xb8, 0xa2, 0x23, 0xb3, 0x88, 0xbb, 0x74, 0x37, 0xf8, 0xd1, 0x38, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1827 = { .name = "ecdh_secp256r1_1827", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1827_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1827_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1827_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 114 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1828 for ECDH, tcId is 115 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1828_peerpubkey[] = { 0x8f, 0x65, 0x9a, 0x16, 0x3a, 0x58, 0xe9, 0xf9, 0x00, 0xc1, 0xe9, 0xb3, 0x4f, 0xb1, 0xcd, 0x61, 0xff, 0xc9, 0x89, 0x02, 0x67, 0xbe, 0x34, 0x17, 0xc8, 0xaf, 0xe7, 0x9d, 0x57, 0x21, 0x4d, 0xa0, 0x5c, 0xd5, 0xcb, 0x68, 0xa2, 0xb9, 0x3d, 0xa0, 0xdb, 0xe5, 0x6c, 0x1c, 0xfc, 0x0d, 0xce, 0x8b, 0x6c, 0x32, 0x60, 0xe0, 0xc4, 0x83, 0x79, 0xc6, 0xd2, 0x09, 0x1f, 0x16, 0xb3, 0x92, 0x21, 0xc0, }; static const unsigned char ecdh_secp256r1_1828_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1828_sharedsecret[] = { 0x4b, 0xab, 0xf6, 0x36, 0x8e, 0x03, 0x59, 0xb7, 0x86, 0x14, 0x06, 0x02, 0x41, 0xec, 0xe4, 0x6f, 0xac, 0xca, 0x3f, 0x52, 0xf5, 0xbb, 0xc4, 0x7a, 0xc0, 0xb4, 0x6a, 0x07, 0x5b, 0x5d, 0xd3, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256r1_1828 = { .name = "ecdh_secp256r1_1828", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1828_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1828_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1828_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 115 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1829 for ECDH, tcId is 116 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1829_peerpubkey[] = { 0xd2, 0x57, 0xf1, 0x33, 0xf0, 0x0a, 0x07, 0x9f, 0x4e, 0x67, 0x78, 0xea, 0x4a, 0x9b, 0xf4, 0x2b, 0x9f, 0x23, 0x12, 0x90, 0x43, 0x1b, 0x5b, 0x93, 0xd7, 0xe8, 0xb0, 0xe3, 0x5b, 0x48, 0x01, 0x06, 0x50, 0xd6, 0xc6, 0xb4, 0x65, 0x74, 0xd1, 0xef, 0xce, 0x03, 0x51, 0x0b, 0x8d, 0xb4, 0xa0, 0x98, 0x1c, 0xe1, 0x38, 0xc5, 0xbd, 0x8f, 0xe0, 0xe5, 0x4c, 0x98, 0x8c, 0x40, 0xc5, 0xfc, 0x92, 0x00, }; static const unsigned char ecdh_secp256r1_1829_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1829_sharedsecret[] = { 0x96, 0x27, 0xcc, 0x5c, 0x8d, 0x8b, 0x72, 0x27, 0x8b, 0xe8, 0x9c, 0x32, 0xb5, 0x22, 0x10, 0x17, 0x3e, 0x6f, 0x4b, 0x8e, 0x2f, 0x48, 0xe4, 0x60, 0xc6, 0x42, 0x9f, 0x46, 0xf9, 0xf4, 0x69, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256r1_1829 = { .name = "ecdh_secp256r1_1829", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1829_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1829_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1829_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 116 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1830 for ECDH, tcId is 117 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1830_peerpubkey[] = { 0x5e, 0xf2, 0xac, 0x57, 0xc4, 0xe9, 0x3c, 0xf7, 0x8d, 0x8f, 0x86, 0xc3, 0x5d, 0x41, 0x3b, 0x98, 0xdc, 0x19, 0x02, 0xdd, 0x24, 0x5a, 0xff, 0xde, 0x5c, 0x16, 0x03, 0x4a, 0xfc, 0x7e, 0xa4, 0x55, 0x47, 0xb3, 0xe9, 0xf7, 0x7f, 0xbc, 0x50, 0x75, 0xba, 0xd0, 0x3c, 0x41, 0x80, 0x94, 0xf1, 0xae, 0xc1, 0xd0, 0x3e, 0xde, 0xaf, 0xa1, 0x67, 0xfa, 0x6a, 0xf8, 0x35, 0x26, 0x55, 0x2f, 0x70, 0x34, }; static const unsigned char ecdh_secp256r1_1830_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1830_sharedsecret[] = { 0xd2, 0xb1, 0x78, 0xbc, 0x9b, 0xb1, 0x6b, 0x5a, 0x91, 0xa1, 0x00, 0xbb, 0x72, 0xe1, 0x5a, 0x96, 0x39, 0xe0, 0x50, 0xc0, 0x34, 0x34, 0x60, 0x61, 0x41, 0x3e, 0xc2, 0x0c, 0x4f, 0xcc, 0x9b, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1830 = { .name = "ecdh_secp256r1_1830", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1830_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1830_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1830_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 117 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1831 for ECDH, tcId is 118 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1831_peerpubkey[] = { 0xa7, 0xb5, 0x13, 0xf9, 0x62, 0x66, 0x41, 0x4f, 0xa6, 0xff, 0x43, 0x9a, 0x35, 0xd8, 0xf0, 0x9a, 0xb6, 0x15, 0xdb, 0x0b, 0xb6, 0xa3, 0xb1, 0xa1, 0x20, 0xc2, 0x17, 0x68, 0x3f, 0x72, 0x4b, 0x23, 0x42, 0x00, 0x7a, 0x2c, 0x9f, 0xea, 0xbc, 0xd6, 0x24, 0x9a, 0x0d, 0x17, 0xac, 0xec, 0xd9, 0x95, 0xe2, 0xa2, 0x17, 0xfb, 0x5f, 0x07, 0xbe, 0xc9, 0x69, 0x38, 0x01, 0x6e, 0x29, 0x7e, 0xfa, 0x52, }; static const unsigned char ecdh_secp256r1_1831_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1831_sharedsecret[] = { 0x6c, 0xdc, 0xa0, 0xa7, 0x31, 0xaf, 0xf1, 0xcc, 0xfb, 0x19, 0x04, 0xa7, 0x69, 0xce, 0xf7, 0x9e, 0xba, 0x96, 0x5f, 0xba, 0xb1, 0xcc, 0x64, 0xd2, 0x04, 0x9d, 0x0d, 0xf4, 0x5d, 0xcc, 0xd2, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_1831 = { .name = "ecdh_secp256r1_1831", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1831_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1831_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1831_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 118 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1832 for ECDH, tcId is 119 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1832_peerpubkey[] = { 0x77, 0x43, 0xab, 0x72, 0x48, 0xda, 0xe5, 0xf1, 0xa5, 0x9a, 0xc6, 0xb0, 0xa1, 0x36, 0xe9, 0xf1, 0xe5, 0x1a, 0xff, 0x8b, 0xd4, 0x57, 0x95, 0xac, 0xe5, 0xf8, 0x18, 0x7a, 0x13, 0xed, 0xf9, 0xad, 0xbd, 0x96, 0x42, 0x07, 0x83, 0x78, 0xba, 0xb5, 0xc6, 0xd4, 0x84, 0xf9, 0xe1, 0xce, 0x39, 0x67, 0x5b, 0x72, 0x17, 0x0b, 0xf3, 0x9a, 0xbc, 0x9b, 0xe7, 0x94, 0x2f, 0xc0, 0x1f, 0xc4, 0x35, 0xd7, }; static const unsigned char ecdh_secp256r1_1832_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1832_sharedsecret[] = { 0xbd, 0x15, 0xe9, 0x7a, 0x7f, 0x49, 0xaa, 0x33, 0xe5, 0x7b, 0x54, 0x14, 0x0a, 0x75, 0xff, 0xfc, 0xe7, 0x1b, 0x78, 0x8c, 0xe0, 0xfa, 0xa3, 0x34, 0xcf, 0x8b, 0x45, 0x62, 0x3d, 0xcc, 0x81, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1832 = { .name = "ecdh_secp256r1_1832", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1832_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1832_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1832_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 119 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1833 for ECDH, tcId is 120 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1833_peerpubkey[] = { 0x0e, 0x3a, 0xa9, 0x71, 0xba, 0xcd, 0xac, 0xe3, 0x50, 0xdc, 0x09, 0x57, 0xfa, 0x5b, 0xde, 0x09, 0x46, 0x32, 0x4e, 0xb1, 0x39, 0x93, 0x9d, 0x7f, 0xc1, 0x99, 0x7c, 0x70, 0x1e, 0xff, 0xd0, 0x4a, 0x4e, 0x6c, 0x36, 0x25, 0xd9, 0x56, 0x41, 0x68, 0xd3, 0xa7, 0x52, 0x96, 0x12, 0x21, 0xa1, 0xde, 0x8c, 0xf5, 0xf3, 0xd6, 0x03, 0x75, 0x2a, 0x8c, 0x2e, 0x62, 0x77, 0xac, 0x3a, 0x91, 0x8c, 0x25, }; static const unsigned char ecdh_secp256r1_1833_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1833_sharedsecret[] = { 0xc8, 0xb5, 0xe8, 0xe7, 0x48, 0x88, 0x57, 0xa2, 0xdd, 0xe6, 0x2c, 0x5f, 0xc2, 0x1e, 0x45, 0x25, 0xeb, 0xab, 0xa0, 0xe0, 0x6b, 0x5b, 0xe8, 0x3e, 0xc6, 0xe7, 0xdd, 0x77, 0x1e, 0x15, 0xa0, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1833 = { .name = "ecdh_secp256r1_1833", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1833_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1833_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1833_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 120 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1834 for ECDH, tcId is 121 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1834_peerpubkey[] = { 0x0f, 0x56, 0x3e, 0x21, 0xbf, 0x9b, 0x24, 0x01, 0x5a, 0x7c, 0xdb, 0xb6, 0xf0, 0x00, 0xa6, 0x92, 0x78, 0x4a, 0xc2, 0xe4, 0xbc, 0x27, 0x15, 0xc7, 0x6f, 0x68, 0x42, 0x64, 0xa8, 0x99, 0xc8, 0x24, 0x0c, 0xab, 0x0d, 0x76, 0xe6, 0xb0, 0x1c, 0xab, 0xe4, 0xf3, 0x27, 0x42, 0x9d, 0x11, 0xbe, 0x11, 0x5e, 0xd6, 0xdc, 0x0c, 0xa7, 0x4f, 0x02, 0xc1, 0xb9, 0x87, 0xa0, 0x82, 0xf5, 0xaf, 0x43, 0xa8, }; static const unsigned char ecdh_secp256r1_1834_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1834_sharedsecret[] = { 0x1c, 0x63, 0xa4, 0x57, 0x50, 0x9b, 0x14, 0x82, 0x72, 0x68, 0x7e, 0x6e, 0x44, 0x2b, 0xde, 0x51, 0x98, 0x2d, 0x41, 0xb0, 0x08, 0x0d, 0x8c, 0x0c, 0x5e, 0xb7, 0x14, 0x25, 0x7a, 0xf9, 0x71, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_1834 = { .name = "ecdh_secp256r1_1834", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1834_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1834_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1834_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 121 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1835 for ECDH, tcId is 122 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1835_peerpubkey[] = { 0x5d, 0xa4, 0x9f, 0x10, 0x24, 0x9e, 0x4d, 0xf3, 0xdb, 0xb4, 0xe3, 0x1e, 0xce, 0x0b, 0x0e, 0xe9, 0xaa, 0x07, 0x3f, 0x25, 0x88, 0x19, 0x5a, 0xaa, 0xe6, 0x3e, 0x74, 0xf6, 0x56, 0x7a, 0x77, 0x48, 0x10, 0xb5, 0xdd, 0x61, 0xb6, 0xbf, 0x21, 0x9e, 0x9e, 0xab, 0x30, 0xef, 0x09, 0xc1, 0x3f, 0xc1, 0x84, 0xb3, 0xd0, 0x9f, 0xf7, 0xa4, 0xe1, 0x92, 0xbc, 0xa8, 0xf5, 0x11, 0x1c, 0x41, 0x63, 0xc7, }; static const unsigned char ecdh_secp256r1_1835_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1835_sharedsecret[] = { 0x73, 0xa1, 0xac, 0x9e, 0xce, 0x35, 0x4a, 0x93, 0x0d, 0xfd, 0x9c, 0x77, 0x57, 0x7b, 0x4f, 0x50, 0xac, 0xc0, 0xa7, 0x89, 0x64, 0xea, 0x0d, 0x77, 0x75, 0x63, 0x1d, 0x64, 0xc7, 0x09, 0xc4, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256r1_1835 = { .name = "ecdh_secp256r1_1835", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1835_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1835_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1835_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 122 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1836 for ECDH, tcId is 123 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1836_peerpubkey[] = { 0x6f, 0x72, 0xe6, 0xe5, 0xc6, 0x30, 0x06, 0x79, 0xd3, 0xf1, 0x4f, 0x0f, 0x6e, 0x59, 0x06, 0x65, 0x64, 0x35, 0x76, 0xae, 0x8b, 0xbc, 0xb7, 0xc0, 0x5b, 0x2f, 0x4a, 0x83, 0xe7, 0x5e, 0x6a, 0xc3, 0xe7, 0x12, 0xcb, 0x05, 0x6f, 0xf0, 0x34, 0xda, 0x34, 0x05, 0x43, 0xc5, 0xda, 0x69, 0x97, 0xe6, 0x5a, 0x3a, 0xb4, 0xcd, 0x39, 0xe9, 0x97, 0x89, 0x2b, 0xb9, 0x2e, 0xe2, 0xc2, 0x2b, 0x81, 0x67, }; static const unsigned char ecdh_secp256r1_1836_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1836_sharedsecret[] = { 0xfc, 0xaa, 0x40, 0x63, 0x29, 0xbb, 0x74, 0xf9, 0x95, 0x86, 0x2c, 0xea, 0x7c, 0xec, 0xc7, 0x42, 0x5c, 0x6b, 0xd4, 0x14, 0x8e, 0xf1, 0xa9, 0xf4, 0x6b, 0x5d, 0x42, 0xda, 0x59, 0x94, 0x55, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1836 = { .name = "ecdh_secp256r1_1836", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1836_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1836_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1836_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 123 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1837 for ECDH, tcId is 124 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1837_peerpubkey[] = { 0x6b, 0x54, 0x4d, 0xf9, 0x16, 0x8e, 0x77, 0x87, 0xdb, 0x28, 0x2e, 0x2a, 0xe0, 0x1d, 0xd7, 0x23, 0x06, 0xd9, 0xc9, 0xbc, 0x80, 0xf5, 0xab, 0x38, 0xce, 0x59, 0x47, 0x66, 0xc3, 0xd9, 0x29, 0xe9, 0x67, 0x49, 0x3f, 0xf6, 0x01, 0xca, 0x60, 0x86, 0x2b, 0x47, 0xd3, 0xa0, 0x78, 0x5c, 0x91, 0x7e, 0x44, 0x58, 0x40, 0x44, 0xe3, 0x60, 0x23, 0xa5, 0x44, 0x24, 0x01, 0x5e, 0x58, 0xbe, 0x50, 0x40, }; static const unsigned char ecdh_secp256r1_1837_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1837_sharedsecret[] = { 0xe4, 0x9f, 0xf1, 0x1d, 0x46, 0xb6, 0xc4, 0xb5, 0xdd, 0xe5, 0x28, 0xb0, 0x41, 0x32, 0xd1, 0x5c, 0x04, 0x0e, 0x79, 0xf9, 0xb7, 0x15, 0x1f, 0xbc, 0x65, 0x00, 0x30, 0x98, 0x80, 0x28, 0xcb, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_1837 = { .name = "ecdh_secp256r1_1837", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1837_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1837_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1837_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 124 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1838 for ECDH, tcId is 125 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1838_peerpubkey[] = { 0x1c, 0x31, 0x38, 0x5b, 0x9d, 0xb9, 0xb3, 0x74, 0xe9, 0x24, 0x99, 0x93, 0x9a, 0xb0, 0xfd, 0x7e, 0x7e, 0xda, 0x46, 0x45, 0x61, 0xeb, 0xa8, 0x9f, 0xcd, 0x7b, 0x47, 0x69, 0x81, 0x4a, 0x86, 0x38, 0xa4, 0x76, 0x4c, 0xf8, 0xce, 0x97, 0xb5, 0xd1, 0x43, 0xbb, 0x8e, 0xeb, 0x9e, 0x1b, 0x27, 0x28, 0x7f, 0x2b, 0x73, 0x94, 0x2e, 0xcd, 0xbc, 0x63, 0x59, 0xaa, 0xfb, 0x1e, 0xe7, 0xa1, 0x52, 0xc2, }; static const unsigned char ecdh_secp256r1_1838_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1838_sharedsecret[] = { 0xfc, 0x8f, 0x64, 0xea, 0xc1, 0xc7, 0xe6, 0x88, 0xc5, 0x2c, 0x46, 0x71, 0x85, 0xde, 0x21, 0x91, 0x4e, 0x8b, 0x25, 0x30, 0x56, 0xd9, 0xe4, 0xbe, 0x01, 0x0e, 0xd0, 0x12, 0x8f, 0x92, 0xa8, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_1838 = { .name = "ecdh_secp256r1_1838", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1838_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1838_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1838_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 125 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1839 for ECDH, tcId is 126 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1839_peerpubkey[] = { 0xaa, 0xbc, 0xf8, 0xb1, 0x44, 0x3d, 0x6c, 0xbb, 0x1d, 0xe1, 0x29, 0xa0, 0xff, 0xe0, 0x9f, 0x60, 0xb2, 0x3f, 0xd9, 0xd0, 0xa4, 0x4b, 0x6b, 0xdf, 0x25, 0xbe, 0xd7, 0x37, 0x3f, 0xdb, 0xfd, 0x1d, 0xb7, 0x16, 0xbd, 0xe7, 0xfe, 0x9f, 0x2f, 0x46, 0xde, 0x0b, 0x68, 0x8e, 0x30, 0x25, 0xe0, 0x29, 0xcf, 0xf1, 0x52, 0x44, 0x42, 0x9a, 0xd4, 0xf8, 0x34, 0x84, 0xf5, 0xde, 0xa4, 0xaf, 0x85, 0x83, }; static const unsigned char ecdh_secp256r1_1839_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1839_sharedsecret[] = { 0x6b, 0x56, 0xd8, 0xa0, 0x1a, 0x88, 0x43, 0x19, 0xab, 0x5f, 0xb9, 0xd8, 0x90, 0xca, 0xcf, 0xc7, 0xaa, 0xbd, 0x81, 0xad, 0x93, 0x8c, 0xb5, 0xea, 0xae, 0x20, 0x7c, 0x8c, 0x1a, 0xa0, 0x6e, 0xfb, }; static const wycheproof_ecdh_test ecdh_secp256r1_1839 = { .name = "ecdh_secp256r1_1839", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1839_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1839_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1839_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 126 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1840 for ECDH, tcId is 127 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1840_peerpubkey[] = { 0xe7, 0xcd, 0x58, 0x0b, 0xd9, 0x57, 0x91, 0x5d, 0x52, 0x70, 0x56, 0x83, 0x2e, 0x37, 0x79, 0x3a, 0xb3, 0xb0, 0x82, 0xdd, 0xfa, 0xd9, 0x37, 0x24, 0x12, 0xe1, 0x90, 0x8e, 0x5c, 0x16, 0xbb, 0xb6, 0x20, 0x86, 0x01, 0xa9, 0x70, 0xd5, 0x84, 0x4b, 0x78, 0x0d, 0x92, 0x46, 0xe9, 0x58, 0x3e, 0xb3, 0x59, 0x18, 0xc4, 0x2e, 0xd6, 0x95, 0xc0, 0x7d, 0x52, 0x24, 0x40, 0x37, 0xf0, 0xe3, 0x1d, 0xb5, }; static const unsigned char ecdh_secp256r1_1840_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1840_sharedsecret[] = { 0x2f, 0x64, 0xb5, 0xc8, 0x04, 0x6d, 0x41, 0xa4, 0xe1, 0xd6, 0x31, 0xff, 0x23, 0x84, 0x6b, 0xff, 0x95, 0x6a, 0x49, 0x25, 0xa4, 0x7f, 0x85, 0x34, 0x49, 0x0a, 0x20, 0xb4, 0xb1, 0x91, 0x8b, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1840 = { .name = "ecdh_secp256r1_1840", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1840_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1840_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1840_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 127 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1841 for ECDH, tcId is 128 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1841_peerpubkey[] = { 0x2a, 0x52, 0xdb, 0x1f, 0xe2, 0x46, 0xb7, 0x1c, 0x79, 0xc0, 0xd0, 0xac, 0x49, 0xa7, 0xd3, 0x8d, 0xe6, 0x7b, 0x20, 0x29, 0x95, 0xef, 0xbb, 0xd2, 0xa9, 0xcc, 0x52, 0x5f, 0x6f, 0x36, 0x01, 0x03, 0x68, 0xf4, 0x94, 0xbe, 0x27, 0xe0, 0x59, 0x3e, 0x2d, 0x61, 0x2f, 0x1f, 0xa1, 0x0a, 0x92, 0x11, 0x43, 0x7e, 0x6a, 0xa1, 0x6e, 0x65, 0xd9, 0x77, 0x35, 0x01, 0x40, 0x72, 0xf0, 0xdc, 0xec, 0x94, }; static const unsigned char ecdh_secp256r1_1841_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1841_sharedsecret[] = { 0x63, 0xac, 0x31, 0xe7, 0x18, 0xb9, 0xa7, 0x80, 0xa8, 0x5f, 0x06, 0x70, 0xe1, 0xd3, 0x68, 0x5b, 0xbe, 0x30, 0x6e, 0x5f, 0x06, 0xfe, 0xe2, 0x82, 0xa8, 0x78, 0x47, 0x00, 0xb5, 0x03, 0xc1, 0x24, }; static const wycheproof_ecdh_test ecdh_secp256r1_1841 = { .name = "ecdh_secp256r1_1841", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1841_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1841_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1841_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 128 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1842 for ECDH, tcId is 129 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1842_peerpubkey[] = { 0x1c, 0x50, 0xdc, 0x49, 0xfe, 0xf7, 0x08, 0xc4, 0xcd, 0xd6, 0x2e, 0x76, 0x6f, 0x9b, 0x60, 0xf7, 0x84, 0xd5, 0x1a, 0xfe, 0xe1, 0x7a, 0x8f, 0xe9, 0xf3, 0x70, 0x1b, 0x2f, 0xae, 0x55, 0xb7, 0xa5, 0xd1, 0x0f, 0x0d, 0x96, 0x39, 0xd8, 0x3d, 0xce, 0x8f, 0x26, 0xa8, 0x69, 0x70, 0x5a, 0x6d, 0x6d, 0x38, 0xe6, 0xd3, 0x28, 0xf5, 0x68, 0x55, 0x81, 0x14, 0x2a, 0xec, 0x0d, 0xcd, 0x1f, 0x90, 0xe7, }; static const unsigned char ecdh_secp256r1_1842_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1842_sharedsecret[] = { 0x55, 0x5c, 0x19, 0x17, 0xb7, 0x70, 0xce, 0xbe, 0x6a, 0x98, 0x33, 0x7a, 0x00, 0x8a, 0xe3, 0xd8, 0xd0, 0x4f, 0x57, 0x15, 0x65, 0x32, 0x7c, 0x93, 0xde, 0xbf, 0x61, 0xef, 0x90, 0xdd, 0xdd, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256r1_1842 = { .name = "ecdh_secp256r1_1842", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1842_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1842_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1842_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 129 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1843 for ECDH, tcId is 130 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1843_peerpubkey[] = { 0x6d, 0x0a, 0xa1, 0xbc, 0x1c, 0xee, 0x6d, 0x07, 0xd0, 0x45, 0x00, 0x2c, 0x13, 0x29, 0x0d, 0x0c, 0xa2, 0x5c, 0xa3, 0xc8, 0x78, 0x33, 0x43, 0xa5, 0x25, 0xfa, 0xc7, 0x04, 0x72, 0xb9, 0x2c, 0x62, 0xd6, 0xfb, 0xa7, 0x11, 0x74, 0x44, 0x8b, 0x47, 0x2c, 0xf1, 0x72, 0xb0, 0xca, 0x9e, 0x37, 0x7f, 0x1a, 0x26, 0x03, 0xba, 0x7a, 0xe1, 0x27, 0x6d, 0x15, 0x3b, 0x20, 0xc6, 0x3e, 0x7d, 0x24, 0xbf, }; static const unsigned char ecdh_secp256r1_1843_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1843_sharedsecret[] = { 0x3a, 0x65, 0xa9, 0x20, 0x0f, 0x8f, 0x96, 0x63, 0x59, 0x12, 0xfa, 0xa5, 0xe7, 0x85, 0x9f, 0xa3, 0x03, 0xa7, 0x6a, 0x1c, 0x2a, 0x41, 0xea, 0x97, 0xef, 0x61, 0xaa, 0x39, 0x28, 0x77, 0x00, 0xa9, }; static const wycheproof_ecdh_test ecdh_secp256r1_1843 = { .name = "ecdh_secp256r1_1843", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1843_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1843_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1843_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 130 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1844 for ECDH, tcId is 131 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1844_peerpubkey[] = { 0xf0, 0x7e, 0x3d, 0x8b, 0xe2, 0xba, 0x54, 0xc6, 0x08, 0x41, 0x41, 0xe1, 0xfd, 0x2b, 0x29, 0xcf, 0xd0, 0x0d, 0x4e, 0x6d, 0xd6, 0xff, 0xb1, 0x15, 0xed, 0x83, 0x9b, 0x10, 0xbd, 0x8a, 0x42, 0x2f, 0x42, 0x99, 0x2c, 0xb9, 0xa5, 0x24, 0x38, 0x97, 0xd5, 0x54, 0x08, 0xe9, 0xbb, 0x55, 0x60, 0x43, 0x31, 0x8d, 0x87, 0x34, 0x9a, 0xf3, 0x5d, 0xcc, 0x09, 0x75, 0xed, 0x80, 0x5c, 0x8f, 0xa2, 0xc9, }; static const unsigned char ecdh_secp256r1_1844_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1844_sharedsecret[] = { 0xbb, 0x7b, 0xb5, 0x2d, 0xa5, 0x70, 0xba, 0x58, 0xe0, 0x5f, 0xd3, 0x22, 0xf8, 0x2d, 0x55, 0x6c, 0x2d, 0x65, 0xb3, 0x65, 0xdb, 0x30, 0x81, 0x58, 0x79, 0xf6, 0x7f, 0x23, 0x3b, 0x08, 0x9b, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_1844 = { .name = "ecdh_secp256r1_1844", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1844_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1844_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1844_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 131 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1845 for ECDH, tcId is 132 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1845_peerpubkey[] = { 0x43, 0xa9, 0xb9, 0x02, 0x74, 0xdb, 0xd5, 0xf3, 0x6d, 0xd2, 0x90, 0x46, 0xfc, 0x83, 0x90, 0x00, 0x8d, 0xde, 0x74, 0x51, 0x3c, 0xe4, 0xc3, 0xe8, 0x89, 0x2b, 0x23, 0x6e, 0xff, 0xf8, 0x0c, 0x9d, 0xc7, 0x15, 0x47, 0x15, 0x2a, 0x58, 0x97, 0xdb, 0xe1, 0x69, 0x57, 0xbd, 0x15, 0xd1, 0xa8, 0x7d, 0x77, 0x04, 0x96, 0xf8, 0x14, 0xfe, 0x29, 0x21, 0xc8, 0xf3, 0x3d, 0xf0, 0x43, 0x93, 0xc7, 0xf8, }; static const unsigned char ecdh_secp256r1_1845_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1845_sharedsecret[] = { 0xe8, 0xca, 0xe9, 0x94, 0x42, 0x33, 0xb8, 0x67, 0xee, 0xdf, 0x59, 0x02, 0xfc, 0x49, 0xec, 0xd0, 0x7e, 0x4c, 0x81, 0xc4, 0x62, 0x79, 0x53, 0x1e, 0x89, 0x52, 0x0b, 0x74, 0xba, 0x53, 0x70, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1845 = { .name = "ecdh_secp256r1_1845", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1845_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1845_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1845_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 132 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1846 for ECDH, tcId is 133 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1846_peerpubkey[] = { 0xe9, 0xaf, 0x8e, 0x8c, 0x19, 0xda, 0x9d, 0x5c, 0x2f, 0x3b, 0x3c, 0x03, 0xb8, 0xe9, 0x27, 0xc3, 0xcb, 0xe2, 0xd7, 0x17, 0xf9, 0x8f, 0x50, 0x09, 0x72, 0xe5, 0x6d, 0x82, 0xeb, 0x07, 0xc2, 0xb1, 0x4e, 0x83, 0xfc, 0xaa, 0xca, 0xdc, 0x26, 0xf8, 0xbb, 0x5e, 0x7b, 0x94, 0x74, 0x1f, 0xe5, 0x4f, 0x31, 0x27, 0x5e, 0xbd, 0x6e, 0x1c, 0x96, 0x9d, 0x7e, 0xc2, 0xfe, 0xce, 0xad, 0x8a, 0x0d, 0xae, }; static const unsigned char ecdh_secp256r1_1846_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1846_sharedsecret[] = { 0xe7, 0x2a, 0xd0, 0xcd, 0xb2, 0x5f, 0x43, 0x07, 0xd1, 0xd8, 0x34, 0xa5, 0xf7, 0x92, 0xe9, 0xaf, 0x64, 0xfd, 0x1b, 0x69, 0xa4, 0x70, 0x41, 0xec, 0x8f, 0xa4, 0x6d, 0x52, 0x6f, 0x41, 0x9e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1846 = { .name = "ecdh_secp256r1_1846", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1846_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1846_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1846_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 133 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1847 for ECDH, tcId is 134 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1847_peerpubkey[] = { 0x33, 0xd9, 0x58, 0x2b, 0x56, 0x7a, 0xad, 0xbe, 0x59, 0x60, 0x6f, 0xa6, 0xff, 0xc1, 0x18, 0x48, 0xe4, 0x94, 0x7b, 0x51, 0x79, 0x59, 0x73, 0x17, 0x77, 0x63, 0x17, 0xb2, 0xb4, 0xff, 0x65, 0xd0, 0xb4, 0xd8, 0x56, 0x8d, 0xc8, 0x43, 0x31, 0x9c, 0xc0, 0x4f, 0x4b, 0xf1, 0x10, 0x49, 0x6d, 0xee, 0x7c, 0x92, 0x29, 0xfc, 0x68, 0xcb, 0x09, 0x58, 0xf3, 0xcb, 0xd3, 0x7e, 0xcc, 0xa6, 0x99, 0x0f, }; static const unsigned char ecdh_secp256r1_1847_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1847_sharedsecret[] = { 0x00, 0x01, 0x97, 0xfb, 0xc2, 0x60, 0xa8, 0x4d, 0xbc, 0xbf, 0x88, 0x13, 0x6a, 0xea, 0xa7, 0x9b, 0x03, 0xbb, 0x89, 0x49, 0xae, 0xfd, 0x24, 0x16, 0xbe, 0xf6, 0x39, 0x29, 0xef, 0x78, 0x9b, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1847 = { .name = "ecdh_secp256r1_1847", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1847_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1847_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1847_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 134 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1848 for ECDH, tcId is 135 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1848_peerpubkey[] = { 0xe2, 0x1c, 0x02, 0x82, 0xad, 0xb1, 0xb2, 0x05, 0x5f, 0xda, 0x74, 0x46, 0x44, 0xc6, 0x86, 0x12, 0xcf, 0xb0, 0xc6, 0x8a, 0x70, 0xb9, 0x81, 0x2d, 0x00, 0x7f, 0x21, 0xa7, 0x8f, 0x1a, 0xdc, 0x48, 0x49, 0xf3, 0xe7, 0x64, 0x4b, 0xc6, 0x63, 0x3e, 0x27, 0x73, 0xa2, 0xf3, 0xcc, 0x52, 0x14, 0xfa, 0x72, 0x08, 0xe3, 0x0a, 0xfb, 0x3d, 0xe9, 0x92, 0xf0, 0x77, 0xee, 0x32, 0x15, 0x69, 0xdc, 0x48, }; static const unsigned char ecdh_secp256r1_1848_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1848_sharedsecret[] = { 0xcd, 0xb1, 0x8b, 0xf6, 0x26, 0x70, 0xa8, 0x53, 0x48, 0x8c, 0xa5, 0x10, 0xd8, 0xf5, 0x5b, 0xab, 0x29, 0x18, 0x99, 0x14, 0x24, 0x92, 0x5b, 0xd9, 0xb7, 0x4a, 0x82, 0x1d, 0x2c, 0x6e, 0x7e, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1848 = { .name = "ecdh_secp256r1_1848", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1848_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1848_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1848_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 135 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1849 for ECDH, tcId is 136 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1849_peerpubkey[] = { 0xaf, 0x27, 0xde, 0x0d, 0xa6, 0x55, 0x6e, 0x4e, 0x64, 0x58, 0x8c, 0x96, 0x94, 0xaf, 0xee, 0x9a, 0x84, 0xe1, 0xcb, 0xd0, 0xc3, 0x88, 0x97, 0x2d, 0xf3, 0xa9, 0x97, 0xf7, 0x60, 0xbb, 0xcd, 0x90, 0x3c, 0x5a, 0x02, 0xe1, 0x61, 0x55, 0x1f, 0x33, 0x3d, 0x77, 0x05, 0x59, 0xab, 0x1a, 0xf4, 0x9b, 0xf8, 0xb6, 0x82, 0x74, 0x89, 0x65, 0x90, 0x93, 0x9c, 0xe9, 0x56, 0xd9, 0x91, 0x3b, 0x67, 0x6f, }; static const unsigned char ecdh_secp256r1_1849_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1849_sharedsecret[] = { 0x16, 0x73, 0x03, 0x50, 0x5d, 0x22, 0xcf, 0x9e, 0xf7, 0x8c, 0x5b, 0x96, 0x87, 0xa5, 0x41, 0x8f, 0xa9, 0xfb, 0x28, 0x4f, 0x2b, 0x0f, 0xf6, 0x83, 0x16, 0x28, 0x8e, 0xcd, 0x7f, 0x2e, 0x2e, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_1849 = { .name = "ecdh_secp256r1_1849", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1849_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1849_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1849_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 136 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1850 for ECDH, tcId is 137 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1850_peerpubkey[] = { 0x0d, 0xa4, 0x1b, 0x82, 0x55, 0x0b, 0x35, 0x8f, 0xf4, 0x74, 0x91, 0x5d, 0x83, 0x10, 0x4d, 0x41, 0xa8, 0x3a, 0x12, 0xef, 0x70, 0x58, 0x9b, 0x9d, 0x39, 0x2f, 0x0f, 0x30, 0xdc, 0x32, 0x42, 0x9e, 0xdc, 0x76, 0x16, 0x3c, 0x8f, 0xe0, 0x7a, 0x3f, 0x70, 0x9c, 0xbd, 0x92, 0xda, 0x0b, 0xbf, 0xc5, 0x04, 0x5f, 0x3d, 0xb8, 0x2a, 0xa5, 0x34, 0x4c, 0xf1, 0xfd, 0x5b, 0x27, 0xfc, 0xd2, 0xf7, 0xa6, }; static const unsigned char ecdh_secp256r1_1850_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1850_sharedsecret[] = { 0x85, 0x60, 0x0f, 0xf2, 0x3c, 0x3c, 0xde, 0x26, 0x00, 0x9f, 0xea, 0x9b, 0x65, 0x39, 0x66, 0x4b, 0xf0, 0x45, 0x05, 0x68, 0x83, 0x72, 0x8a, 0xb0, 0xd4, 0x49, 0x8e, 0xa0, 0xa8, 0xf4, 0xa4, 0x53, }; static const wycheproof_ecdh_test ecdh_secp256r1_1850 = { .name = "ecdh_secp256r1_1850", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1850_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1850_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1850_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 137 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1851 for ECDH, tcId is 138 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1851_peerpubkey[] = { 0x19, 0xc8, 0x44, 0xb8, 0xc7, 0x20, 0x90, 0x26, 0xa0, 0x99, 0x6a, 0x78, 0x29, 0x83, 0xe1, 0xbd, 0x0f, 0x0d, 0xe9, 0x25, 0x5b, 0x86, 0x73, 0x9b, 0xe9, 0xbe, 0xf0, 0x8e, 0xa5, 0x47, 0x5c, 0xc6, 0x69, 0xa7, 0x79, 0xdd, 0xf5, 0x77, 0x47, 0xcf, 0x7d, 0x9a, 0x22, 0xf0, 0x0e, 0xd8, 0xef, 0xc6, 0xe8, 0x18, 0xaf, 0x58, 0x27, 0xb7, 0x50, 0xd6, 0x65, 0xfe, 0xe6, 0xd6, 0xd5, 0x8a, 0x22, 0xe8, }; static const unsigned char ecdh_secp256r1_1851_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1851_sharedsecret[] = { 0xa3, 0x25, 0x0a, 0x2b, 0xfb, 0x14, 0x5c, 0xe8, 0x6e, 0x70, 0x6a, 0xc3, 0xab, 0x2b, 0xf5, 0x03, 0xa6, 0x64, 0x86, 0xac, 0x0b, 0x2f, 0x75, 0x22, 0x60, 0x1c, 0x12, 0x4b, 0x0e, 0x0f, 0x9c, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1851 = { .name = "ecdh_secp256r1_1851", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1851_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1851_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1851_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 138 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1852 for ECDH, tcId is 139 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1852_peerpubkey[] = { 0xbd, 0x07, 0xbd, 0x43, 0x26, 0xcd, 0xca, 0xbf, 0x42, 0x90, 0x5e, 0xfa, 0x45, 0x59, 0xa3, 0x0e, 0x68, 0xcb, 0x21, 0x5d, 0x40, 0xc9, 0xaf, 0xb6, 0x0c, 0xe0, 0x2d, 0x4f, 0xda, 0x61, 0x75, 0x79, 0xb9, 0x27, 0xb5, 0xcb, 0xa0, 0x2d, 0x24, 0xfb, 0x9a, 0xaf, 0xe1, 0xd4, 0x29, 0x35, 0x1e, 0x48, 0xba, 0xe9, 0xdd, 0x92, 0xd7, 0xbc, 0x7b, 0xe1, 0x5e, 0x5b, 0x8a, 0x30, 0xa8, 0x6b, 0xe1, 0x3d, }; static const unsigned char ecdh_secp256r1_1852_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1852_sharedsecret[] = { 0x2d, 0x70, 0xcc, 0x8c, 0x8a, 0xf0, 0x13, 0x66, 0x05, 0x1c, 0xc8, 0x35, 0x9c, 0x2f, 0xc8, 0xf2, 0x58, 0x75, 0x7e, 0x26, 0x01, 0xfd, 0x8f, 0x3e, 0x08, 0x42, 0x2a, 0x7b, 0x23, 0xbf, 0xef, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1852 = { .name = "ecdh_secp256r1_1852", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1852_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1852_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1852_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 139 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1853 for ECDH, tcId is 140 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1853_peerpubkey[] = { 0x00, 0x89, 0xde, 0xe2, 0x7a, 0x60, 0xd0, 0x71, 0xda, 0xbb, 0xaf, 0x58, 0xf3, 0xe5, 0x66, 0x14, 0xda, 0xd3, 0xb7, 0xf9, 0xa8, 0x03, 0x07, 0x69, 0xfd, 0x04, 0x63, 0xb3, 0xe6, 0xe0, 0xf0, 0x3a, 0x14, 0x7b, 0x4d, 0x6e, 0x7e, 0x7f, 0xd9, 0x39, 0xb9, 0xb5, 0x4d, 0xab, 0x45, 0x8f, 0xd5, 0x56, 0xad, 0x8f, 0xda, 0xf4, 0xda, 0x6c, 0x39, 0x09, 0x58, 0x8c, 0x4e, 0x05, 0x0c, 0xa7, 0x4a, 0x67, }; static const unsigned char ecdh_secp256r1_1853_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1853_sharedsecret[] = { 0xcb, 0xe0, 0xc5, 0x71, 0xd1, 0x08, 0x0e, 0xa3, 0x4e, 0xe2, 0x0a, 0xd1, 0xbf, 0xd2, 0x1e, 0xa5, 0xec, 0xc4, 0x42, 0xea, 0xd7, 0x33, 0xfb, 0x4e, 0xee, 0x3c, 0x0d, 0x7b, 0x0c, 0xce, 0x99, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256r1_1853 = { .name = "ecdh_secp256r1_1853", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1853_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1853_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1853_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 140 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1854 for ECDH, tcId is 141 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1854_peerpubkey[] = { 0x42, 0xed, 0xe1, 0x06, 0xcf, 0x85, 0xae, 0xf4, 0x6d, 0xf7, 0xe5, 0xdb, 0xa8, 0xa8, 0xb0, 0x04, 0x59, 0x31, 0x7d, 0x9e, 0x76, 0x6a, 0x7b, 0x77, 0xc2, 0x99, 0xaa, 0x0e, 0x17, 0xde, 0xa1, 0x42, 0xb6, 0xe9, 0xa8, 0x6f, 0x4f, 0xc3, 0xe9, 0x45, 0xd4, 0x32, 0x3b, 0xa8, 0xe4, 0x59, 0xf6, 0xb7, 0xb1, 0x4c, 0x56, 0x3a, 0x69, 0x8c, 0x75, 0x7a, 0x2d, 0x5f, 0x7b, 0x0b, 0xc3, 0x01, 0xed, 0xe2, }; static const unsigned char ecdh_secp256r1_1854_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1854_sharedsecret[] = { 0x33, 0x32, 0x0f, 0xc7, 0x91, 0x7f, 0xe4, 0xe1, 0x92, 0x80, 0xbf, 0xbf, 0xe1, 0x6f, 0x22, 0x3c, 0x03, 0x7f, 0x7c, 0x2d, 0xc3, 0x0c, 0x0f, 0xda, 0x98, 0x31, 0x07, 0x40, 0xf5, 0x7f, 0xe2, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_1854 = { .name = "ecdh_secp256r1_1854", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1854_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1854_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1854_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 141 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1855 for ECDH, tcId is 142 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1855_peerpubkey[] = { 0x97, 0x4b, 0x43, 0x16, 0xc5, 0xe7, 0xd1, 0x34, 0x8b, 0x28, 0xdb, 0xc4, 0xfd, 0x61, 0xd8, 0xd3, 0x47, 0x0d, 0xe7, 0x44, 0xc3, 0x0f, 0x5b, 0xe2, 0x37, 0xf8, 0x5f, 0x29, 0x96, 0x9d, 0xea, 0x77, 0xb5, 0xf0, 0x0b, 0x58, 0xb8, 0x3c, 0xfc, 0x7b, 0xc5, 0x16, 0x55, 0x46, 0x5b, 0x4a, 0x28, 0xab, 0xe1, 0xed, 0x3d, 0xbe, 0xc2, 0x0c, 0x6b, 0x46, 0x43, 0xae, 0xc8, 0x5b, 0x95, 0xa5, 0xbe, 0xc6, }; static const unsigned char ecdh_secp256r1_1855_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1855_sharedsecret[] = { 0x35, 0xc7, 0x26, 0xea, 0xd6, 0x6c, 0x39, 0x41, 0x4f, 0xe0, 0xc2, 0x46, 0x04, 0xdf, 0x78, 0x38, 0xe5, 0x72, 0x5d, 0x2f, 0xc1, 0xbd, 0x08, 0x53, 0x26, 0x1e, 0x1d, 0xe3, 0x33, 0x8e, 0xcb, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1855 = { .name = "ecdh_secp256r1_1855", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1855_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1855_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1855_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 142 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1856 for ECDH, tcId is 143 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1856_peerpubkey[] = { 0x59, 0x87, 0x3d, 0x75, 0x23, 0x93, 0x6a, 0x12, 0x1b, 0x62, 0x9e, 0x98, 0x70, 0xf9, 0x30, 0x41, 0x9f, 0x25, 0x3a, 0x57, 0x67, 0xb9, 0xd0, 0xdc, 0x49, 0x71, 0x6f, 0x2c, 0x50, 0xe1, 0x7b, 0xd0, 0x16, 0x3b, 0x71, 0xf2, 0xbf, 0x43, 0x18, 0xfb, 0xde, 0x1c, 0xea, 0xa5, 0x85, 0x45, 0x00, 0x80, 0xee, 0xc2, 0x84, 0x74, 0xcd, 0x18, 0xbf, 0x7c, 0x21, 0xd2, 0xd1, 0xbf, 0xde, 0x4f, 0xf6, 0x77, }; static const unsigned char ecdh_secp256r1_1856_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1856_sharedsecret[] = { 0x66, 0xea, 0x42, 0xfe, 0x6f, 0xd8, 0x74, 0x1b, 0x37, 0x59, 0x9b, 0xbd, 0xad, 0xa3, 0xec, 0x0e, 0x6b, 0x08, 0xc0, 0xb5, 0x2e, 0xa6, 0x7c, 0x29, 0xa3, 0x31, 0x72, 0xf7, 0x27, 0x42, 0x58, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1856 = { .name = "ecdh_secp256r1_1856", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1856_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1856_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1856_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 143 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1857 for ECDH, tcId is 144 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1857_peerpubkey[] = { 0xbd, 0x85, 0xa7, 0x9f, 0x81, 0xc4, 0xf9, 0x61, 0x3e, 0x64, 0xfa, 0x34, 0x78, 0x86, 0x43, 0x78, 0x56, 0xc7, 0x35, 0x8d, 0x1b, 0x69, 0xcf, 0x1e, 0x92, 0x3d, 0x77, 0x42, 0xd8, 0x2f, 0x9b, 0x67, 0x67, 0xd2, 0x69, 0x18, 0xea, 0xa8, 0xac, 0xb1, 0x13, 0xa1, 0xda, 0xad, 0xae, 0xdc, 0x70, 0x97, 0x42, 0x45, 0x73, 0x03, 0xeb, 0xc2, 0x3c, 0xdd, 0xa5, 0x57, 0x26, 0x13, 0xdc, 0x82, 0x77, 0x03, }; static const unsigned char ecdh_secp256r1_1857_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1857_sharedsecret[] = { 0x2f, 0x8a, 0x50, 0x2e, 0x4f, 0x44, 0x01, 0x33, 0xe8, 0x4f, 0xb6, 0x25, 0x29, 0x2c, 0xbe, 0xab, 0xe2, 0xcb, 0x79, 0xda, 0x73, 0x98, 0x7c, 0x76, 0xd4, 0xfe, 0xd8, 0x64, 0xd1, 0xb1, 0xb7, 0x62, }; static const wycheproof_ecdh_test ecdh_secp256r1_1857 = { .name = "ecdh_secp256r1_1857", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1857_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1857_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1857_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 144 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1858 for ECDH, tcId is 145 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1858_peerpubkey[] = { 0x3e, 0x6a, 0x4e, 0xff, 0xc4, 0x7c, 0x2f, 0x59, 0x26, 0xbb, 0x6b, 0x4a, 0xcf, 0x2e, 0xac, 0x48, 0xb9, 0x52, 0x4c, 0x47, 0xd5, 0x11, 0xf8, 0x16, 0x97, 0x67, 0x96, 0x77, 0x86, 0x00, 0xd6, 0xc5, 0xbf, 0xce, 0x59, 0x32, 0x42, 0xa5, 0x98, 0x5a, 0x97, 0x75, 0x90, 0xf8, 0xd7, 0x48, 0x5d, 0xf3, 0xf9, 0x53, 0x35, 0x29, 0x57, 0xf3, 0xc1, 0x7c, 0x13, 0xe9, 0x45, 0x83, 0xd9, 0xc0, 0xe7, 0xb9, }; static const unsigned char ecdh_secp256r1_1858_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1858_sharedsecret[] = { 0x06, 0x43, 0x68, 0x17, 0xd8, 0x92, 0x8b, 0x77, 0xb7, 0x3d, 0x16, 0xc5, 0xc3, 0xb3, 0x5e, 0x24, 0x3a, 0xd3, 0xef, 0x2a, 0xb5, 0x9a, 0xd0, 0x47, 0x14, 0x2c, 0x67, 0xa6, 0xd0, 0x92, 0x3c, 0x84, }; static const wycheproof_ecdh_test ecdh_secp256r1_1858 = { .name = "ecdh_secp256r1_1858", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1858_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1858_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1858_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 145 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1859 for ECDH, tcId is 146 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1859_peerpubkey[] = { 0x9a, 0x44, 0x87, 0xfc, 0xfc, 0xe8, 0x39, 0x66, 0x88, 0xe7, 0x44, 0x9e, 0x09, 0x5f, 0xe8, 0x03, 0xca, 0xa2, 0x53, 0xd4, 0xbd, 0x7c, 0x66, 0xdb, 0xc6, 0x26, 0x1c, 0xc9, 0xd9, 0xf8, 0x83, 0xa5, 0x0e, 0x52, 0x51, 0xba, 0xe2, 0x9c, 0x5a, 0x5c, 0xdf, 0xa3, 0x1b, 0xc6, 0x11, 0x05, 0x67, 0x1a, 0x88, 0xa0, 0x18, 0x46, 0x73, 0x98, 0x15, 0x8d, 0x35, 0xb8, 0x88, 0x29, 0x23, 0x7c, 0x0b, 0xff, }; static const unsigned char ecdh_secp256r1_1859_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1859_sharedsecret[] = { 0x7e, 0x83, 0xfd, 0x2c, 0x3d, 0x71, 0x3b, 0xc8, 0x5d, 0x6d, 0x85, 0xd9, 0x07, 0x8b, 0x3a, 0x08, 0x42, 0x82, 0x4d, 0x41, 0x0e, 0x8a, 0xbd, 0xe0, 0x4d, 0xa0, 0xfd, 0x71, 0xc7, 0xd9, 0x47, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256r1_1859 = { .name = "ecdh_secp256r1_1859", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1859_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1859_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1859_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 146 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1860 for ECDH, tcId is 147 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1860_peerpubkey[] = { 0xfe, 0xd6, 0xce, 0x12, 0x72, 0x90, 0xc1, 0x29, 0x1c, 0xa5, 0xce, 0x64, 0xac, 0xb4, 0xe0, 0xf2, 0xf8, 0x90, 0x56, 0x54, 0xd1, 0xd2, 0x5b, 0xa5, 0x7c, 0x1f, 0x74, 0xab, 0x52, 0xf2, 0x1f, 0x42, 0x96, 0x3d, 0x31, 0x67, 0x1c, 0x06, 0xb8, 0x02, 0x16, 0x99, 0x29, 0x52, 0x5c, 0x4a, 0x1f, 0xde, 0xff, 0x5b, 0x1e, 0xaf, 0xab, 0x91, 0x9d, 0xc2, 0xdf, 0x6c, 0x52, 0xbe, 0x84, 0xdf, 0xae, 0xf3, }; static const unsigned char ecdh_secp256r1_1860_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1860_sharedsecret[] = { 0x0e, 0x3d, 0xfd, 0xab, 0x60, 0x6e, 0xbd, 0xc6, 0x42, 0x82, 0x82, 0xac, 0xd4, 0x43, 0xf1, 0x89, 0xc9, 0x9b, 0x3b, 0x48, 0x3a, 0xa1, 0x01, 0xfd, 0x8d, 0x6b, 0xed, 0x38, 0xae, 0xc5, 0x9e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_1860 = { .name = "ecdh_secp256r1_1860", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1860_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1860_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1860_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 147 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1861 for ECDH, tcId is 148 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1861_peerpubkey[] = { 0xf7, 0xce, 0xe5, 0xb5, 0x5f, 0x18, 0x69, 0xf1, 0x37, 0xdd, 0x70, 0x7c, 0x8f, 0x8f, 0xb8, 0x96, 0x5a, 0x2b, 0xe5, 0x84, 0x0c, 0x31, 0x49, 0xfb, 0x75, 0x96, 0x95, 0xa4, 0x66, 0x1b, 0x9c, 0x0d, 0x23, 0xc7, 0x8c, 0x4e, 0x96, 0x47, 0xb0, 0xd6, 0xcb, 0x2f, 0x26, 0x02, 0xbe, 0x73, 0xff, 0x25, 0xcf, 0x3d, 0x09, 0xc9, 0x6d, 0x89, 0x2b, 0x57, 0x45, 0xfe, 0x5e, 0xca, 0x81, 0x4a, 0xec, 0x91, }; static const unsigned char ecdh_secp256r1_1861_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1861_sharedsecret[] = { 0xf4, 0x89, 0xf2, 0xbd, 0x93, 0xf7, 0x6b, 0x8e, 0x41, 0xfc, 0x6b, 0x9f, 0x21, 0x1b, 0xc5, 0x99, 0xd4, 0x9d, 0xb1, 0xf1, 0x7a, 0x38, 0xe9, 0x5b, 0xab, 0x1d, 0x31, 0xb2, 0xa2, 0xb5, 0x58, 0x29, }; static const wycheproof_ecdh_test ecdh_secp256r1_1861 = { .name = "ecdh_secp256r1_1861", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1861_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1861_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1861_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 148 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1862 for ECDH, tcId is 149 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1862_peerpubkey[] = { 0x2b, 0xaa, 0xae, 0xc3, 0xb3, 0xe8, 0xd5, 0x4a, 0x4e, 0x18, 0xf0, 0x96, 0x0b, 0x94, 0x7d, 0xa2, 0x53, 0x5e, 0x3c, 0xfc, 0xca, 0x2c, 0xfa, 0x8b, 0x71, 0x13, 0xaa, 0xd8, 0xe3, 0xb6, 0x62, 0x6f, 0x72, 0xf7, 0x1e, 0x7c, 0x9e, 0x96, 0x04, 0x2c, 0x1d, 0x39, 0xcc, 0x8f, 0x11, 0x39, 0xd5, 0x14, 0x7c, 0x6f, 0x4f, 0xe6, 0x2e, 0x23, 0xcf, 0x6d, 0xf3, 0x64, 0xb5, 0xf4, 0xd8, 0x99, 0xf8, 0x42, }; static const unsigned char ecdh_secp256r1_1862_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1862_sharedsecret[] = { 0xcc, 0x57, 0x38, 0xb4, 0x9d, 0x30, 0xd5, 0xd0, 0x2c, 0xf7, 0xe0, 0xc5, 0x4a, 0x3d, 0xe0, 0x9b, 0x5b, 0x6f, 0x3c, 0x4d, 0xea, 0x91, 0xdd, 0x06, 0x79, 0x07, 0x2a, 0x35, 0x62, 0x44, 0x4c, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_1862 = { .name = "ecdh_secp256r1_1862", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1862_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1862_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1862_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 149 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1863 for ECDH, tcId is 150 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1863_peerpubkey[] = { 0xa5, 0x1a, 0xb1, 0x23, 0x8b, 0xc1, 0xbe, 0xd2, 0x52, 0x47, 0xe7, 0xd1, 0x79, 0xc8, 0x3a, 0x61, 0xae, 0x2d, 0x4a, 0x9f, 0xe2, 0x28, 0x8c, 0x36, 0x3a, 0xe0, 0xeb, 0x7a, 0x77, 0xde, 0x43, 0x2a, 0x3c, 0x6d, 0x35, 0xd8, 0x2b, 0xa8, 0x01, 0x7e, 0x6c, 0xa9, 0x04, 0x1c, 0xc7, 0x85, 0xa3, 0x07, 0x03, 0xf7, 0xbc, 0x44, 0x27, 0x50, 0x6e, 0x62, 0x4a, 0xc5, 0x97, 0x9d, 0x71, 0x54, 0x21, 0xdd, }; static const unsigned char ecdh_secp256r1_1863_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1863_sharedsecret[] = { 0x89, 0xa1, 0x11, 0x77, 0xd6, 0x90, 0x7a, 0x81, 0xd4, 0x74, 0x67, 0x09, 0x3b, 0xf6, 0xa3, 0xcc, 0x8b, 0xa5, 0x5d, 0xee, 0x05, 0x23, 0x9b, 0x16, 0x0a, 0x31, 0xa3, 0x00, 0x0f, 0x5d, 0x80, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1863 = { .name = "ecdh_secp256r1_1863", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1863_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1863_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1863_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 150 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1864 for ECDH, tcId is 151 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1864_peerpubkey[] = { 0x8b, 0x5a, 0xe8, 0xa0, 0xe5, 0x5f, 0x30, 0xf5, 0x09, 0x06, 0x13, 0x15, 0xab, 0xae, 0x79, 0xac, 0x48, 0x0f, 0x88, 0xb4, 0x46, 0x55, 0xf7, 0x26, 0x9a, 0x38, 0x5c, 0x81, 0x52, 0x68, 0x84, 0xbe, 0x26, 0x29, 0x74, 0xa3, 0x1a, 0x0e, 0x23, 0x22, 0x12, 0x6c, 0x2d, 0x77, 0xb2, 0x6b, 0x10, 0x8a, 0xbd, 0x81, 0xf8, 0xb9, 0x52, 0xc4, 0x58, 0xcc, 0xc9, 0x5d, 0x46, 0xfb, 0x49, 0x24, 0xc7, 0xc0, }; static const unsigned char ecdh_secp256r1_1864_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1864_sharedsecret[] = { 0x2c, 0xb0, 0x3c, 0x30, 0xb2, 0x00, 0x37, 0xa5, 0xcf, 0x4d, 0x5b, 0x33, 0x57, 0x4f, 0x3a, 0xba, 0xc8, 0x95, 0xbf, 0xab, 0x37, 0x86, 0x7e, 0xb2, 0xeb, 0xed, 0x26, 0x0e, 0x09, 0x29, 0x05, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1864 = { .name = "ecdh_secp256r1_1864", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1864_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1864_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1864_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 151 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1865 for ECDH, tcId is 152 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1865_peerpubkey[] = { 0x5f, 0x60, 0xc7, 0x7e, 0x47, 0x4d, 0xd6, 0x6c, 0x81, 0x35, 0xee, 0x3d, 0xaf, 0xc7, 0x5b, 0xa6, 0x44, 0x64, 0x98, 0x24, 0xc7, 0x27, 0x37, 0x54, 0x20, 0x91, 0xad, 0x46, 0x9a, 0xdb, 0xb6, 0x85, 0x31, 0x2c, 0x09, 0xc6, 0x9b, 0x62, 0x9d, 0x04, 0x36, 0xbf, 0x3b, 0xd6, 0xc6, 0x08, 0x3f, 0xf2, 0xa8, 0x7b, 0xe4, 0x84, 0xa7, 0x3e, 0xf3, 0xa5, 0xd2, 0xc3, 0xe0, 0x6b, 0x5d, 0x9b, 0x21, 0xb3, }; static const unsigned char ecdh_secp256r1_1865_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1865_sharedsecret[] = { 0xe5, 0x4d, 0x48, 0x7d, 0x0c, 0x4b, 0x12, 0xfe, 0x52, 0x2a, 0xf3, 0xe6, 0x63, 0xce, 0x31, 0x6e, 0x63, 0x2b, 0xa9, 0xd6, 0x3a, 0x1f, 0x02, 0xa3, 0x6f, 0xc5, 0xa8, 0x2b, 0xf8, 0x27, 0x31, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1865 = { .name = "ecdh_secp256r1_1865", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1865_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1865_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1865_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 152 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1866 for ECDH, tcId is 153 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1866_peerpubkey[] = { 0xe0, 0x6e, 0xaa, 0x73, 0xf6, 0xfe, 0xae, 0x45, 0x41, 0x7d, 0x85, 0x9b, 0xba, 0xd4, 0xbc, 0x40, 0x4b, 0x28, 0x85, 0xbc, 0xd2, 0x13, 0xeb, 0xac, 0xe5, 0x94, 0xe1, 0x6f, 0x49, 0x70, 0xe0, 0xc4, 0x11, 0xed, 0x33, 0x23, 0xa3, 0xd7, 0xaf, 0xc7, 0x07, 0x62, 0x39, 0x88, 0x43, 0x07, 0xf9, 0x18, 0x49, 0xed, 0x5f, 0x5e, 0x36, 0xb6, 0x17, 0x1d, 0x30, 0x9c, 0x81, 0x34, 0x4c, 0x53, 0xe0, 0x6d, }; static const unsigned char ecdh_secp256r1_1866_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1866_sharedsecret[] = { 0xcc, 0xea, 0x96, 0x9d, 0x40, 0xfa, 0x42, 0x93, 0x3f, 0x4f, 0xbd, 0xc4, 0xca, 0xbe, 0x21, 0x85, 0xf8, 0xa4, 0x52, 0x99, 0x62, 0x54, 0xc1, 0xf4, 0xe0, 0xdd, 0xe5, 0xe1, 0x4f, 0xee, 0xea, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1866 = { .name = "ecdh_secp256r1_1866", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1866_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1866_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1866_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 153 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1867 for ECDH, tcId is 154 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1867_peerpubkey[] = { 0x0f, 0x1c, 0x1b, 0x89, 0xe9, 0xfc, 0x6f, 0xc0, 0xfa, 0xef, 0xc9, 0x10, 0x9f, 0xc4, 0xa1, 0x24, 0x7d, 0x9f, 0x54, 0xc7, 0x49, 0x7b, 0x6c, 0xc9, 0x75, 0xe6, 0xa5, 0x45, 0x5b, 0xef, 0x41, 0x08, 0x36, 0xcb, 0x38, 0x18, 0x54, 0x8a, 0xc9, 0xb4, 0x1e, 0x2b, 0x83, 0x36, 0xc3, 0xeb, 0x8d, 0x97, 0x07, 0x5a, 0xe4, 0x7e, 0x18, 0x27, 0xfa, 0x1f, 0xf9, 0x3d, 0x43, 0x41, 0xd4, 0x3c, 0x0c, 0x1d, }; static const unsigned char ecdh_secp256r1_1867_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1867_sharedsecret[] = { 0xea, 0xae, 0x0e, 0x18, 0x8c, 0x94, 0x27, 0xbf, 0x3c, 0x8b, 0x3d, 0xed, 0x77, 0x21, 0x22, 0x20, 0x4c, 0x32, 0x8d, 0x59, 0x41, 0xe3, 0x89, 0xd8, 0x08, 0xe2, 0x72, 0x46, 0x38, 0xf9, 0xaf, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256r1_1867 = { .name = "ecdh_secp256r1_1867", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1867_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1867_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1867_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 154 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1868 for ECDH, tcId is 155 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1868_peerpubkey[] = { 0x57, 0x70, 0x69, 0xe8, 0x28, 0x4a, 0x95, 0xf5, 0x1d, 0xca, 0xb9, 0x19, 0xb0, 0x53, 0x66, 0x57, 0x05, 0x89, 0x71, 0xda, 0xb7, 0x62, 0x17, 0xf8, 0xd3, 0xae, 0x72, 0x2a, 0x64, 0x09, 0x2e, 0x26, 0xe5, 0x1f, 0x68, 0xa7, 0x22, 0xcc, 0x03, 0x97, 0xf4, 0x80, 0x14, 0x01, 0x77, 0x1e, 0x9a, 0x3d, 0x19, 0x88, 0xd4, 0xaf, 0x76, 0xf1, 0x4f, 0x9e, 0x2f, 0x9c, 0x36, 0xe0, 0x77, 0x3e, 0x29, 0xc2, }; static const unsigned char ecdh_secp256r1_1868_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1868_sharedsecret[] = { 0xfe, 0xa0, 0xcc, 0xe1, 0x35, 0x8f, 0x1f, 0xf4, 0x0f, 0xfe, 0xaa, 0xff, 0xbf, 0x91, 0xb2, 0xe8, 0xd4, 0x26, 0xd4, 0xe3, 0x1e, 0x96, 0x27, 0x73, 0x1a, 0xce, 0x3a, 0x12, 0x2e, 0xab, 0x6b, 0x0d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1868 = { .name = "ecdh_secp256r1_1868", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1868_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1868_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1868_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 155 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1869 for ECDH, tcId is 156 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1869_peerpubkey[] = { 0x24, 0x06, 0xa2, 0x75, 0x90, 0x50, 0xb9, 0x25, 0xdd, 0x4f, 0x81, 0x4c, 0x50, 0x33, 0xe3, 0x55, 0x54, 0x8f, 0x42, 0xbb, 0xf1, 0xaf, 0xb7, 0x91, 0xc1, 0x10, 0xf0, 0x03, 0x1f, 0x29, 0xf6, 0x80, 0x99, 0xd5, 0xf4, 0xb0, 0x05, 0xde, 0x39, 0x27, 0xf1, 0x65, 0xab, 0xef, 0xf1, 0x96, 0xa2, 0x8c, 0x72, 0x17, 0xfa, 0xb1, 0xbe, 0x2b, 0x52, 0x09, 0xc3, 0x24, 0xe7, 0xd6, 0x2d, 0x2d, 0xd6, 0x87, }; static const unsigned char ecdh_secp256r1_1869_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1869_sharedsecret[] = { 0x83, 0x76, 0x21, 0xea, 0x48, 0x27, 0xbb, 0xa0, 0x37, 0x6a, 0xaa, 0x8a, 0xa6, 0x6c, 0xfe, 0x14, 0x4a, 0x2f, 0xf1, 0xe3, 0x59, 0xdc, 0x61, 0x9a, 0x06, 0x44, 0x1d, 0x3e, 0x05, 0x5f, 0x97, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256r1_1869 = { .name = "ecdh_secp256r1_1869", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1869_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1869_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1869_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 156 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1870 for ECDH, tcId is 157 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1870_peerpubkey[] = { 0xcc, 0xaa, 0xc6, 0x1f, 0x35, 0xa2, 0x78, 0x61, 0x18, 0x36, 0x21, 0x64, 0x2b, 0xc5, 0x73, 0xaf, 0x91, 0x33, 0x56, 0xfb, 0x47, 0xcf, 0x58, 0x2f, 0x0b, 0x52, 0x99, 0x09, 0x9d, 0x6f, 0x6c, 0x69, 0x91, 0xf7, 0x27, 0x2b, 0x83, 0xb7, 0x38, 0xa7, 0xa5, 0xd3, 0x04, 0x47, 0xc8, 0x7f, 0x12, 0x6a, 0x7d, 0x98, 0xec, 0x72, 0xfa, 0x26, 0x09, 0xd0, 0x93, 0x9d, 0x18, 0xdb, 0x7e, 0xa7, 0xeb, 0x3a, }; static const unsigned char ecdh_secp256r1_1870_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1870_sharedsecret[] = { 0x63, 0x97, 0x4c, 0xe6, 0x15, 0x37, 0x62, 0xe5, 0xb3, 0x64, 0x52, 0x3c, 0xea, 0xd9, 0x3e, 0x8c, 0xe8, 0xbc, 0xc7, 0x7d, 0xda, 0x56, 0x36, 0x5d, 0x67, 0x61, 0x36, 0x16, 0x9f, 0xc4, 0xe3, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1870 = { .name = "ecdh_secp256r1_1870", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1870_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1870_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1870_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 157 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1871 for ECDH, tcId is 158 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1871_peerpubkey[] = { 0x01, 0x41, 0x59, 0x17, 0x27, 0x2f, 0x19, 0x84, 0xe7, 0x21, 0x7a, 0x36, 0xfb, 0x31, 0x1f, 0xd2, 0x90, 0x4d, 0x41, 0xa6, 0xb1, 0x39, 0x73, 0xf9, 0x2a, 0xae, 0x3b, 0x90, 0xe8, 0x5e, 0x4d, 0x56, 0xd9, 0x7c, 0x82, 0x2e, 0xb7, 0xb2, 0x1a, 0x84, 0xd0, 0xd1, 0xbe, 0x48, 0x67, 0x40, 0x4a, 0x80, 0xc3, 0x48, 0x67, 0xf4, 0x31, 0x39, 0xda, 0xdc, 0xc3, 0x61, 0x9e, 0x10, 0xb2, 0x22, 0x56, 0x2b, }; static const unsigned char ecdh_secp256r1_1871_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1871_sharedsecret[] = { 0x0a, 0x04, 0x88, 0x14, 0x4b, 0xc3, 0x6d, 0x69, 0x0b, 0x62, 0x14, 0x8a, 0xc3, 0x07, 0x60, 0x47, 0xd4, 0x6d, 0x48, 0xf7, 0xad, 0xbb, 0x0f, 0x34, 0xfe, 0xe9, 0xa6, 0x36, 0x29, 0x5f, 0xe7, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_1871 = { .name = "ecdh_secp256r1_1871", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1871_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1871_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1871_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 158 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1872 for ECDH, tcId is 159 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1872_peerpubkey[] = { 0xb2, 0x57, 0x5d, 0x10, 0x0c, 0x6f, 0xa0, 0x56, 0xbc, 0xd1, 0x37, 0xab, 0x11, 0x1b, 0x53, 0x15, 0xa8, 0x90, 0x8c, 0x29, 0x24, 0x3b, 0x84, 0xf3, 0xdc, 0x99, 0x6d, 0x0e, 0x45, 0x76, 0x4b, 0x91, 0x66, 0xca, 0xbe, 0xb4, 0x18, 0x85, 0x58, 0x8e, 0xc0, 0x8b, 0x47, 0x25, 0x7d, 0xf5, 0x8b, 0xd5, 0x8f, 0x7d, 0xcd, 0x9e, 0x01, 0x2e, 0x26, 0x69, 0xfa, 0x2f, 0x52, 0xe2, 0x57, 0x67, 0xfc, 0x4c, }; static const unsigned char ecdh_secp256r1_1872_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1872_sharedsecret[] = { 0x12, 0x32, 0x16, 0x55, 0x38, 0xa4, 0x42, 0x68, 0xaa, 0x7c, 0x19, 0x9c, 0x54, 0xd6, 0xd2, 0x07, 0xc4, 0xef, 0x3f, 0x5a, 0xa7, 0x90, 0xc1, 0x0c, 0x92, 0x6a, 0x20, 0x75, 0x2c, 0xa6, 0x45, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256r1_1872 = { .name = "ecdh_secp256r1_1872", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1872_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1872_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1872_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 159 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1873 for ECDH, tcId is 160 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1873_peerpubkey[] = { 0xc1, 0x73, 0x55, 0xed, 0x30, 0xcc, 0xd6, 0x42, 0x7f, 0x96, 0x85, 0x70, 0x90, 0x21, 0xb2, 0x5c, 0x11, 0xed, 0x17, 0x6e, 0x96, 0x10, 0xc4, 0x79, 0xbc, 0xc4, 0xcc, 0x75, 0x52, 0xa7, 0x38, 0xe6, 0x1f, 0x75, 0x11, 0x47, 0x61, 0xdb, 0xa0, 0xec, 0x60, 0xcd, 0x26, 0x4b, 0xba, 0xb7, 0x63, 0xc5, 0xd5, 0xab, 0xcc, 0x75, 0xcd, 0x8f, 0xb5, 0x65, 0x1d, 0x06, 0x45, 0x17, 0x99, 0x88, 0xcc, 0x6d, }; static const unsigned char ecdh_secp256r1_1873_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1873_sharedsecret[] = { 0xdc, 0xab, 0x5e, 0x87, 0x4e, 0x4f, 0xb7, 0x6b, 0xc4, 0x31, 0x25, 0x28, 0xe9, 0xd7, 0x6d, 0xfa, 0xe5, 0x61, 0x45, 0x92, 0x25, 0x33, 0x08, 0x97, 0x34, 0x11, 0x0b, 0xf5, 0x65, 0x3f, 0x4d, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256r1_1873 = { .name = "ecdh_secp256r1_1873", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1873_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1873_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1873_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 160 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1874 for ECDH, tcId is 161 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1874_peerpubkey[] = { 0x34, 0x15, 0x92, 0x39, 0x0c, 0xcc, 0xe4, 0x85, 0xde, 0x88, 0x80, 0xf3, 0xd7, 0x27, 0xf6, 0x64, 0xc3, 0x81, 0x91, 0x4a, 0x1b, 0xec, 0xec, 0x38, 0x3b, 0x35, 0x58, 0x67, 0x51, 0xfc, 0x81, 0xc2, 0xad, 0xd7, 0x18, 0x52, 0xb8, 0x70, 0x16, 0xe1, 0x01, 0x9c, 0xae, 0x7a, 0x90, 0x80, 0xe7, 0x5c, 0xe0, 0xb0, 0xb8, 0xaa, 0xc1, 0x75, 0xd6, 0x92, 0xd5, 0xe7, 0xb4, 0xda, 0xd0, 0x88, 0xf5, 0xcc, }; static const unsigned char ecdh_secp256r1_1874_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1874_sharedsecret[] = { 0x4c, 0xe2, 0x70, 0x1b, 0x2b, 0xe6, 0x3a, 0x00, 0x83, 0xa4, 0xc5, 0x3f, 0x7a, 0x0b, 0xf0, 0x4c, 0xf8, 0x71, 0x65, 0x4f, 0x5e, 0xdb, 0x6f, 0x62, 0x5e, 0x3e, 0xa5, 0xe7, 0xd0, 0xbd, 0xcc, 0x90, }; static const wycheproof_ecdh_test ecdh_secp256r1_1874 = { .name = "ecdh_secp256r1_1874", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1874_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1874_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1874_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 161 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1875 for ECDH, tcId is 162 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1875_peerpubkey[] = { 0xfa, 0x76, 0x4b, 0x6b, 0x76, 0xa8, 0x6c, 0x3b, 0x76, 0x21, 0x20, 0x82, 0x5d, 0x35, 0x3a, 0x24, 0x76, 0x62, 0x08, 0xc1, 0xf5, 0xcc, 0x0f, 0xe3, 0xfe, 0x79, 0x98, 0x02, 0x6a, 0x2e, 0xc5, 0xc4, 0x3b, 0xb2, 0xf9, 0x48, 0xfd, 0x94, 0xcd, 0xaa, 0x58, 0x69, 0xb1, 0xe0, 0xe7, 0x3a, 0x4d, 0x97, 0x03, 0x5c, 0xc4, 0x93, 0x57, 0xfb, 0x7b, 0x74, 0xd7, 0xed, 0x0a, 0x2c, 0x5b, 0x8d, 0x54, 0xeb, }; static const unsigned char ecdh_secp256r1_1875_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1875_sharedsecret[] = { 0x7a, 0xbe, 0xf9, 0x76, 0x5c, 0xca, 0x72, 0x13, 0x20, 0xfb, 0xf8, 0xed, 0xcb, 0xef, 0x6d, 0x2b, 0xa2, 0x5d, 0x17, 0xb7, 0x0f, 0xfa, 0x17, 0x76, 0x02, 0x9b, 0xc3, 0x8f, 0xe6, 0x77, 0xa1, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1875 = { .name = "ecdh_secp256r1_1875", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1875_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1875_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1875_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 162 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1876 for ECDH, tcId is 163 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1876_peerpubkey[] = { 0xa7, 0x1f, 0xbb, 0x61, 0x71, 0x99, 0xbd, 0x58, 0x5b, 0x4b, 0x66, 0x21, 0x2c, 0xa3, 0x3c, 0xa9, 0xe0, 0x93, 0x70, 0xe6, 0xbf, 0x15, 0xc8, 0xea, 0x0a, 0xce, 0xfd, 0x9c, 0x8e, 0x94, 0x5d, 0x06, 0x84, 0x0f, 0x05, 0x88, 0x63, 0x07, 0x8e, 0x74, 0x3e, 0x22, 0x0f, 0xf9, 0x9f, 0x23, 0xbb, 0xc1, 0xda, 0xa3, 0x68, 0x35, 0xd4, 0xb1, 0x26, 0x9f, 0x0a, 0x75, 0x36, 0xe6, 0x3f, 0x06, 0xd8, 0x53, }; static const unsigned char ecdh_secp256r1_1876_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1876_sharedsecret[] = { 0x5f, 0x61, 0x40, 0x4d, 0xbb, 0xbc, 0x28, 0x67, 0xdf, 0xf9, 0x5c, 0x1f, 0x37, 0xed, 0x44, 0xf4, 0xcb, 0x8f, 0xab, 0xcd, 0x22, 0x3b, 0x03, 0x73, 0x9d, 0x88, 0x83, 0x08, 0xd1, 0x3b, 0xc4, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_1876 = { .name = "ecdh_secp256r1_1876", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1876_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1876_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1876_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 163 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1877 for ECDH, tcId is 164 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1877_peerpubkey[] = { 0x13, 0xc8, 0x29, 0x2d, 0x85, 0x4d, 0x39, 0x45, 0x1c, 0x0c, 0x63, 0xa8, 0x02, 0xb8, 0xc0, 0x3e, 0x4f, 0xcb, 0x87, 0x5e, 0xf0, 0x12, 0x39, 0x89, 0x62, 0x95, 0xba, 0x1c, 0x0f, 0x38, 0x69, 0x75, 0xf8, 0x2d, 0xf1, 0x97, 0x08, 0x6f, 0xd8, 0x60, 0x32, 0xcb, 0x36, 0xb6, 0x9a, 0x27, 0x87, 0x6d, 0xd7, 0x5a, 0x8e, 0x96, 0x79, 0xf3, 0x6f, 0xfc, 0x22, 0x10, 0xed, 0xb1, 0x28, 0xd4, 0xbe, 0x13, }; static const unsigned char ecdh_secp256r1_1877_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1877_sharedsecret[] = { 0x8d, 0x67, 0x3a, 0x57, 0x7e, 0x35, 0xbf, 0x9d, 0x5d, 0x00, 0x67, 0x6c, 0x08, 0xb2, 0xc7, 0x39, 0x61, 0x7c, 0x46, 0xa0, 0x52, 0x18, 0x84, 0x03, 0xaa, 0x06, 0xdc, 0x71, 0x4a, 0xf6, 0xac, 0xc1, }; static const wycheproof_ecdh_test ecdh_secp256r1_1877 = { .name = "ecdh_secp256r1_1877", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1877_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1877_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1877_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 164 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1878 for ECDH, tcId is 165 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1878_peerpubkey[] = { 0x0c, 0xd9, 0xdf, 0x41, 0x5a, 0xcc, 0x0c, 0x32, 0xfd, 0x4e, 0x3d, 0x69, 0x24, 0xce, 0x53, 0x07, 0x5b, 0x04, 0x52, 0xbf, 0x91, 0x9a, 0x2a, 0xb2, 0xeb, 0xe2, 0x65, 0x97, 0x57, 0x0f, 0x1e, 0xcd, 0x59, 0x85, 0xd8, 0xd2, 0xc5, 0xdf, 0x78, 0xfc, 0x10, 0x0f, 0x87, 0xef, 0xb6, 0xdf, 0xa9, 0x54, 0x37, 0x57, 0xbd, 0xff, 0xec, 0xf0, 0x83, 0xdf, 0xcd, 0x1e, 0xcb, 0x38, 0xde, 0x6c, 0x23, 0xf8, }; static const unsigned char ecdh_secp256r1_1878_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1878_sharedsecret[] = { 0xa7, 0x83, 0x5f, 0xfe, 0xe0, 0xf2, 0xa6, 0x9d, 0xfc, 0xf7, 0x0d, 0x4e, 0x79, 0x8d, 0xbe, 0x3e, 0xd3, 0x2b, 0xa0, 0x3c, 0xfd, 0xda, 0xe5, 0xdd, 0xd1, 0x1d, 0x8c, 0x0a, 0xc3, 0xd7, 0x4f, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_1878 = { .name = "ecdh_secp256r1_1878", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1878_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1878_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1878_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 165 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1879 for ECDH, tcId is 166 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1879_peerpubkey[] = { 0xd2, 0xdb, 0xea, 0x40, 0x46, 0xb2, 0x3f, 0xd2, 0xb2, 0x33, 0xd1, 0xce, 0x31, 0xdc, 0xed, 0xdb, 0x89, 0xb2, 0x5f, 0x26, 0xc0, 0x62, 0x7a, 0x9d, 0x2d, 0xb3, 0xc5, 0x60, 0x5c, 0x9c, 0xc9, 0x95, 0x35, 0xbd, 0xc8, 0xde, 0x74, 0x51, 0xc1, 0xe2, 0x7e, 0x97, 0xaa, 0x91, 0x40, 0x2c, 0xce, 0x38, 0x82, 0xc7, 0x12, 0x69, 0xd9, 0xcb, 0xdc, 0xb5, 0xd7, 0xac, 0x0c, 0xeb, 0x91, 0x1b, 0x9b, 0x6d, }; static const unsigned char ecdh_secp256r1_1879_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1879_sharedsecret[] = { 0xe9, 0x8e, 0xa2, 0x22, 0x09, 0xcd, 0x39, 0x7e, 0xdb, 0x6c, 0x31, 0x96, 0x48, 0xc1, 0xeb, 0x24, 0xbc, 0x4d, 0x39, 0x59, 0x8a, 0xb1, 0x19, 0x95, 0x57, 0x19, 0x26, 0x68, 0x4c, 0xe2, 0xce, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_1879 = { .name = "ecdh_secp256r1_1879", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1879_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1879_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1879_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 166 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1880 for ECDH, tcId is 167 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1880_peerpubkey[] = { 0x88, 0x8f, 0xb0, 0x44, 0xfb, 0x2b, 0x6c, 0xaa, 0x60, 0x36, 0x6b, 0xfa, 0x66, 0x2a, 0xdb, 0xa4, 0x79, 0xb8, 0x36, 0x5a, 0x65, 0x55, 0xa2, 0x98, 0x87, 0xd5, 0x80, 0xf5, 0x87, 0x08, 0x6b, 0xa8, 0x48, 0x2f, 0x4e, 0xc2, 0x40, 0x82, 0xa4, 0x8d, 0x64, 0x02, 0xaf, 0xa1, 0x62, 0x21, 0x43, 0xf2, 0x6e, 0x61, 0xd9, 0x1b, 0x7e, 0x30, 0xd6, 0xa4, 0xb2, 0x23, 0x63, 0x0e, 0xe1, 0x0f, 0x70, 0xfb, }; static const unsigned char ecdh_secp256r1_1880_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1880_sharedsecret[] = { 0x91, 0xb6, 0x57, 0x33, 0x86, 0x0b, 0x1b, 0xdb, 0x95, 0x41, 0xd9, 0xf5, 0x58, 0x95, 0xa3, 0xdb, 0xb3, 0xf1, 0x3c, 0x19, 0x92, 0x51, 0xd3, 0x30, 0x06, 0xb6, 0xdc, 0xf9, 0x0a, 0xc3, 0x49, 0xed, }; static const wycheproof_ecdh_test ecdh_secp256r1_1880 = { .name = "ecdh_secp256r1_1880", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1880_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1880_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1880_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 167 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1881 for ECDH, tcId is 168 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1881_peerpubkey[] = { 0x2e, 0x2b, 0xec, 0x13, 0x42, 0x49, 0x37, 0x9d, 0x57, 0x70, 0x03, 0x01, 0xf3, 0xa5, 0x8e, 0x4b, 0x39, 0x5a, 0x4d, 0x28, 0x37, 0x0d, 0x2a, 0x06, 0xe6, 0x5e, 0x7a, 0xc8, 0x9e, 0xd7, 0x6a, 0xc6, 0x97, 0xdc, 0x96, 0x0b, 0xd7, 0x95, 0xcd, 0xf4, 0xfb, 0xcf, 0xdd, 0x75, 0x14, 0x90, 0x57, 0xb8, 0xe0, 0x22, 0x33, 0x1c, 0x7b, 0x54, 0x61, 0xf3, 0x83, 0xac, 0x58, 0x9d, 0x76, 0x4d, 0xf3, 0x33, }; static const unsigned char ecdh_secp256r1_1881_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1881_sharedsecret[] = { 0x1f, 0xdf, 0x7c, 0x5c, 0x48, 0x04, 0x7a, 0x11, 0x3e, 0x5e, 0x5d, 0x1b, 0x7e, 0xd5, 0x93, 0x33, 0x7e, 0x76, 0x92, 0x31, 0xcc, 0xa5, 0xc7, 0x11, 0x01, 0x60, 0xe0, 0xc1, 0xb9, 0x7f, 0x42, 0x56, }; static const wycheproof_ecdh_test ecdh_secp256r1_1881 = { .name = "ecdh_secp256r1_1881", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1881_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1881_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1881_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 168 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1882 for ECDH, tcId is 169 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1882_peerpubkey[] = { 0xc7, 0x8c, 0xda, 0x7e, 0x3b, 0x9e, 0x17, 0x72, 0xeb, 0xed, 0x30, 0xb2, 0xb5, 0x1d, 0xcf, 0x15, 0x5a, 0x69, 0xa0, 0xfc, 0x50, 0x45, 0x57, 0x83, 0x6e, 0x25, 0x14, 0x7c, 0xfb, 0x81, 0x27, 0xd2, 0xf8, 0x28, 0x9c, 0xf3, 0x8b, 0x03, 0x3d, 0x37, 0x63, 0xc8, 0xf9, 0xf6, 0xc0, 0x91, 0x78, 0x7a, 0x31, 0x42, 0xfb, 0x83, 0xdf, 0xf5, 0x71, 0x95, 0x90, 0x28, 0x2c, 0x6f, 0x85, 0x2e, 0x01, 0x05, }; static const unsigned char ecdh_secp256r1_1882_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1882_sharedsecret[] = { 0xba, 0x0a, 0xbc, 0x3e, 0x71, 0x72, 0x6c, 0xb5, 0x13, 0x30, 0x48, 0x91, 0x76, 0x35, 0x7b, 0x81, 0xb8, 0x07, 0x4d, 0x76, 0x90, 0xe4, 0xe8, 0x2e, 0x9a, 0x3c, 0x00, 0x15, 0x1e, 0x1f, 0xa3, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_1882 = { .name = "ecdh_secp256r1_1882", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1882_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1882_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1882_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 169 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1883 for ECDH, tcId is 170 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1883_peerpubkey[] = { 0x1e, 0x3d, 0xf4, 0xdd, 0x7f, 0xb7, 0x71, 0x8c, 0xb0, 0xaa, 0x0d, 0xd7, 0x2f, 0x8a, 0x25, 0xc8, 0x3c, 0x4e, 0x80, 0x4e, 0x7c, 0xbd, 0x48, 0xc5, 0xe9, 0x65, 0x65, 0x1f, 0x9e, 0x23, 0xbf, 0x4e, 0xf0, 0xff, 0x40, 0xdd, 0x97, 0x96, 0xe4, 0xa9, 0xa5, 0xed, 0xdd, 0x2c, 0x4c, 0xa4, 0xeb, 0xd1, 0x09, 0x90, 0xd8, 0xfb, 0x89, 0x18, 0xd1, 0x2d, 0x53, 0xc7, 0x60, 0x01, 0xaf, 0xa9, 0xde, 0x7f, }; static const unsigned char ecdh_secp256r1_1883_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1883_sharedsecret[] = { 0x16, 0xe6, 0x32, 0xf9, 0x75, 0x2d, 0x36, 0x60, 0x2c, 0x95, 0xec, 0x27, 0x4b, 0x32, 0xad, 0x59, 0x4f, 0x39, 0xf6, 0xac, 0x3b, 0xd4, 0xb0, 0xb2, 0x0f, 0x86, 0x37, 0x39, 0x21, 0x42, 0xce, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1883 = { .name = "ecdh_secp256r1_1883", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1883_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1883_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1883_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 170 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1884 for ECDH, tcId is 171 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1884_peerpubkey[] = { 0xe5, 0xc5, 0xdc, 0x3f, 0xd8, 0x8d, 0x85, 0x66, 0x8b, 0x3b, 0x70, 0x9f, 0xd6, 0xb4, 0x23, 0x2f, 0x1f, 0x80, 0x94, 0x9c, 0xbc, 0xcb, 0x55, 0x88, 0x36, 0x3e, 0x6c, 0x21, 0x7a, 0x2b, 0x3e, 0xd8, 0x8d, 0xbd, 0x0d, 0x6e, 0x3c, 0xc9, 0x7f, 0x30, 0x81, 0xd1, 0x66, 0x02, 0xaa, 0x3d, 0x1b, 0x65, 0x5e, 0xe0, 0x79, 0x1c, 0x87, 0xfc, 0xb5, 0xab, 0xe6, 0x21, 0x7d, 0x8c, 0x85, 0x13, 0x80, 0x7e, }; static const unsigned char ecdh_secp256r1_1884_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1884_sharedsecret[] = { 0x9e, 0xed, 0x4b, 0x96, 0x56, 0x9f, 0x60, 0x4a, 0x4d, 0x3f, 0x5a, 0xf9, 0x74, 0x99, 0x80, 0x71, 0x11, 0xfc, 0x98, 0x88, 0xc4, 0x58, 0xec, 0xe2, 0xe3, 0x00, 0x0e, 0x24, 0x5c, 0x2c, 0x02, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp256r1_1884 = { .name = "ecdh_secp256r1_1884", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1884_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1884_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1884_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 171 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1885 for ECDH, tcId is 172 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1885_peerpubkey[] = { 0x02, 0x1c, 0x41, 0xec, 0xee, 0xc2, 0x4e, 0x0f, 0xba, 0x89, 0x4a, 0xd7, 0x41, 0x5a, 0x95, 0x98, 0xcb, 0xcd, 0x14, 0xfa, 0x6c, 0xa4, 0x6e, 0x25, 0x57, 0x52, 0x68, 0xa1, 0xd8, 0xe5, 0xbb, 0xc6, 0x3f, 0x84, 0x6c, 0x6a, 0x18, 0x5f, 0xa3, 0xf2, 0x3b, 0xb9, 0x2c, 0x14, 0xe7, 0xe2, 0xcb, 0xa8, 0xc7, 0x40, 0x47, 0xc0, 0x9a, 0xf7, 0x66, 0xf5, 0x5e, 0xf0, 0xc9, 0x07, 0xc8, 0x0d, 0x94, 0x51, }; static const unsigned char ecdh_secp256r1_1885_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1885_sharedsecret[] = { 0x21, 0xac, 0x32, 0x01, 0x38, 0x38, 0x81, 0x26, 0x21, 0xdb, 0xb5, 0x84, 0x96, 0x5b, 0xde, 0xd6, 0xfc, 0x85, 0x1d, 0x3a, 0x02, 0x98, 0x10, 0x67, 0x9b, 0xc5, 0x7b, 0x23, 0x81, 0xbb, 0x7a, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1885 = { .name = "ecdh_secp256r1_1885", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1885_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1885_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1885_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 172 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1886 for ECDH, tcId is 173 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1886_peerpubkey[] = { 0x8e, 0x24, 0x19, 0x2c, 0xd3, 0x33, 0x35, 0xa1, 0x14, 0xf5, 0x07, 0x02, 0x66, 0xc0, 0x14, 0xcb, 0x0d, 0x8c, 0x70, 0x4d, 0x16, 0xd6, 0x04, 0x2e, 0x89, 0xc1, 0x75, 0x97, 0xbc, 0xd4, 0xe7, 0x7e, 0xbd, 0xb4, 0xc5, 0x17, 0x17, 0x04, 0xc2, 0xc0, 0x92, 0x75, 0xc2, 0x2a, 0x31, 0x0e, 0x0c, 0x4f, 0xe0, 0x92, 0xe4, 0x08, 0x48, 0x56, 0xda, 0x99, 0xb9, 0x4a, 0xbb, 0xfa, 0x9f, 0x46, 0x9f, 0x48, }; static const unsigned char ecdh_secp256r1_1886_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1886_sharedsecret[] = { 0xfc, 0x59, 0x78, 0xda, 0x01, 0xca, 0x83, 0xe1, 0x27, 0xdd, 0xdf, 0x98, 0x9a, 0x03, 0x58, 0x87, 0x1b, 0x3c, 0x4c, 0xe0, 0x75, 0x5b, 0xfb, 0x02, 0x06, 0x33, 0xdb, 0x46, 0x7e, 0x21, 0xa5, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1886 = { .name = "ecdh_secp256r1_1886", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1886_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1886_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1886_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 173 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1887 for ECDH, tcId is 174 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1887_peerpubkey[] = { 0x31, 0xc9, 0x0a, 0xe4, 0x7a, 0x93, 0xd0, 0x9a, 0x23, 0x52, 0xb6, 0xf3, 0x67, 0x7e, 0x79, 0x75, 0xea, 0x62, 0xaa, 0xde, 0xdb, 0x56, 0xc1, 0x18, 0xeb, 0x8b, 0x9f, 0x77, 0x1e, 0x2d, 0xd9, 0xf5, 0xf2, 0x60, 0x1f, 0xb9, 0xcc, 0xa2, 0x30, 0x4e, 0x59, 0x44, 0x23, 0xcf, 0x48, 0x06, 0x4d, 0xbe, 0xd1, 0x7a, 0xe4, 0x04, 0x52, 0xf1, 0x8b, 0xe6, 0xae, 0x01, 0x83, 0x21, 0x91, 0x1e, 0x8c, 0xb3, }; static const unsigned char ecdh_secp256r1_1887_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1887_sharedsecret[] = { 0x9f, 0x41, 0x73, 0x41, 0x26, 0x1a, 0xa4, 0x5d, 0x39, 0x6b, 0x0c, 0xcf, 0x2a, 0x3d, 0xee, 0x7a, 0x46, 0x6c, 0xa4, 0x7e, 0x3c, 0xe8, 0x6e, 0xcd, 0x20, 0x71, 0xd9, 0xc4, 0xdb, 0x08, 0x82, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256r1_1887 = { .name = "ecdh_secp256r1_1887", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1887_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1887_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1887_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 174 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1888 for ECDH, tcId is 175 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1888_peerpubkey[] = { 0xd2, 0xf2, 0x11, 0xcf, 0xab, 0x84, 0xe0, 0x1c, 0x8e, 0x55, 0x44, 0x03, 0x62, 0x34, 0xde, 0xbe, 0x35, 0xae, 0x10, 0x3b, 0xb8, 0x78, 0xd7, 0xab, 0xce, 0xa6, 0x82, 0x5f, 0x75, 0x3e, 0x03, 0xa3, 0x85, 0xf7, 0xf1, 0x87, 0x0e, 0x64, 0xf1, 0x26, 0x2a, 0xf6, 0x7a, 0x25, 0xef, 0x98, 0x80, 0x41, 0x9f, 0x45, 0x60, 0x8e, 0x7f, 0x9d, 0xa6, 0xde, 0xe8, 0x3f, 0x5f, 0x46, 0xce, 0xb5, 0x3d, 0xcb, }; static const unsigned char ecdh_secp256r1_1888_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_1888_sharedsecret[] = { 0xf4, 0x19, 0xfe, 0xbb, 0x32, 0xc2, 0x54, 0x61, 0x1a, 0xdf, 0x56, 0x9c, 0x2d, 0x58, 0x3b, 0x17, 0x54, 0x2b, 0x15, 0x38, 0xca, 0xa0, 0x00, 0x19, 0x67, 0xf0, 0xa4, 0xbc, 0x34, 0xb8, 0xb7, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_1888 = { .name = "ecdh_secp256r1_1888", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1888_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1888_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1888_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 175 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1889 for ECDH, tcId is 176 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1889_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1889_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256r1_1889_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_1889 = { .name = "ecdh_secp256r1_1889", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1889_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1889_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1889_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 176 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1890 for ECDH, tcId is 177 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1890_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1890_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1890_sharedsecret[] = { 0xa3, 0x29, 0xa7, 0xd8, 0x04, 0x24, 0xea, 0x2d, 0x6c, 0x90, 0x43, 0x93, 0x80, 0x8e, 0x51, 0x0d, 0xfb, 0xb2, 0x81, 0x55, 0x09, 0x2f, 0x1b, 0xac, 0x28, 0x4d, 0xce, 0xda, 0x1f, 0x13, 0xaf, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1890 = { .name = "ecdh_secp256r1_1890", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1890_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1890_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1890_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 177 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1891 for ECDH, tcId is 178 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1891_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1891_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1891_sharedsecret[] = { 0xbd, 0x26, 0xd0, 0x29, 0x3e, 0x88, 0x51, 0xc5, 0x1e, 0xbe, 0x0d, 0x42, 0x63, 0x45, 0x68, 0x3a, 0xe9, 0x40, 0x26, 0xac, 0xa5, 0x45, 0x28, 0x2a, 0x47, 0x59, 0xfa, 0xa8, 0x5f, 0xde, 0x66, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_1891 = { .name = "ecdh_secp256r1_1891", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1891_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1891_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1891_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 178 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1892 for ECDH, tcId is 179 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1892_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1892_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1892_sharedsecret[] = { 0xea, 0x93, 0x50, 0xb2, 0x49, 0x0a, 0x20, 0x10, 0xc7, 0xab, 0xf4, 0x3f, 0xb1, 0xa3, 0x8b, 0xe7, 0x29, 0xa2, 0xde, 0x37, 0x5e, 0xa7, 0xa6, 0xac, 0x34, 0xff, 0x58, 0xcc, 0x87, 0xe5, 0x1b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1892 = { .name = "ecdh_secp256r1_1892", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1892_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1892_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1892_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 179 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1893 for ECDH, tcId is 180 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1893_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1893_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1893_sharedsecret[] = { 0x34, 0xee, 0xd3, 0xf6, 0x67, 0x3d, 0x34, 0x0b, 0x6f, 0x71, 0x69, 0x13, 0xf6, 0xdf, 0xa3, 0x6b, 0x5a, 0xc8, 0x5f, 0xa6, 0x67, 0x79, 0x1e, 0x2d, 0x6a, 0x21, 0x7b, 0x0c, 0x0b, 0x7b, 0xa8, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_1893 = { .name = "ecdh_secp256r1_1893", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1893_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1893_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1893_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 180 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1894 for ECDH, tcId is 181 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1894_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1894_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x83, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_1894_sharedsecret[] = { 0x13, 0x54, 0xce, 0x66, 0x92, 0xc9, 0xdf, 0x7b, 0x6f, 0xc3, 0x11, 0x9d, 0x47, 0xc5, 0x63, 0x38, 0xaf, 0xbe, 0xdc, 0xcb, 0x62, 0xfa, 0xa5, 0x46, 0xc0, 0xfe, 0x6e, 0xd4, 0x95, 0x9e, 0x41, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1894 = { .name = "ecdh_secp256r1_1894", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1894_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1894_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1894_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 181 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1895 for ECDH, tcId is 182 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1895_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1895_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xa9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_1895_sharedsecret[] = { 0xfe, 0x74, 0x96, 0xc3, 0x0d, 0x53, 0x49, 0x95, 0xf0, 0xbf, 0x42, 0x8b, 0x54, 0x71, 0xc2, 0x15, 0x85, 0xaa, 0xaf, 0xc8, 0x17, 0x33, 0x91, 0x6f, 0x01, 0x65, 0x59, 0x7a, 0x55, 0xd1, 0x2c, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1895 = { .name = "ecdh_secp256r1_1895", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1895_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1895_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1895_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 182 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1896 for ECDH, tcId is 183 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1896_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1896_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb1, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_1896_sharedsecret[] = { 0x34, 0x8b, 0xf8, 0x04, 0x2e, 0x4e, 0xdf, 0x1d, 0x03, 0xc8, 0xb3, 0x6a, 0xb8, 0x15, 0x15, 0x6e, 0x77, 0xc2, 0x01, 0xb7, 0x64, 0xed, 0x45, 0x62, 0xcf, 0xe2, 0xee, 0x90, 0x63, 0x8f, 0xfe, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1896 = { .name = "ecdh_secp256r1_1896", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1896_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1896_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1896_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 183 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1897 for ECDH, tcId is 184 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1897_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1897_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc1, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_1897_sharedsecret[] = { 0x6e, 0x4e, 0xc5, 0x47, 0x9a, 0x7c, 0x20, 0xa5, 0x37, 0x50, 0x17, 0x00, 0x48, 0x4f, 0x6f, 0x43, 0x3a, 0x8a, 0x8f, 0xe5, 0x3c, 0x28, 0x8f, 0x7a, 0x25, 0xc8, 0xe8, 0xc9, 0x2d, 0x39, 0xe8, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_1897 = { .name = "ecdh_secp256r1_1897", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1897_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1897_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1897_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 184 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1898 for ECDH, tcId is 185 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1898_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1898_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xf3, }; static const unsigned char ecdh_secp256r1_1898_sharedsecret[] = { 0xf7, 0x40, 0x7d, 0x61, 0xfd, 0xf5, 0x81, 0xbe, 0x4f, 0x56, 0x46, 0x21, 0xd5, 0x90, 0xca, 0x9b, 0x7b, 0xa3, 0x7f, 0x31, 0x39, 0x61, 0x50, 0xf9, 0x92, 0x2f, 0x15, 0x01, 0xda, 0x8c, 0x83, 0xef, }; static const wycheproof_ecdh_test ecdh_secp256r1_1898 = { .name = "ecdh_secp256r1_1898", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1898_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1898_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1898_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 185 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1899 for ECDH, tcId is 186 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1899_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1899_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x33, }; static const unsigned char ecdh_secp256r1_1899_sharedsecret[] = { 0x82, 0x23, 0x6f, 0xd2, 0x72, 0x20, 0x86, 0x93, 0xe0, 0x57, 0x45, 0x55, 0xca, 0x46, 0x5c, 0x6c, 0xc5, 0x12, 0x16, 0x34, 0x86, 0x08, 0x4f, 0xa5, 0x7f, 0x5e, 0x1b, 0xd2, 0xe2, 0xcc, 0xc0, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1899 = { .name = "ecdh_secp256r1_1899", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1899_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1899_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1899_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 186 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1900 for ECDH, tcId is 187 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1900_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1900_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x43, }; static const unsigned char ecdh_secp256r1_1900_sharedsecret[] = { 0x06, 0x53, 0x71, 0x49, 0x66, 0x4d, 0xba, 0x1a, 0x99, 0x24, 0x65, 0x4c, 0xb7, 0xf7, 0x87, 0xed, 0x22, 0x48, 0x51, 0xb0, 0xdf, 0x25, 0xef, 0x53, 0xfc, 0xf5, 0x4f, 0x8f, 0x26, 0xcd, 0x5f, 0x3f, }; static const wycheproof_ecdh_test ecdh_secp256r1_1900 = { .name = "ecdh_secp256r1_1900", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1900_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1900_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1900_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 187 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1901 for ECDH, tcId is 188 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1901_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1901_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4b, }; static const unsigned char ecdh_secp256r1_1901_sharedsecret[] = { 0xf2, 0xb3, 0x85, 0x39, 0xbc, 0xe9, 0x95, 0xd4, 0x43, 0xc7, 0xbf, 0xee, 0xef, 0xad, 0xc9, 0xe4, 0x2c, 0xc2, 0xc8, 0x9c, 0x60, 0xbf, 0x4e, 0x86, 0xea, 0xc9, 0x5d, 0x51, 0x98, 0x7b, 0xd1, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_1901 = { .name = "ecdh_secp256r1_1901", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1901_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1901_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1901_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 188 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1902 for ECDH, tcId is 189 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1902_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1902_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const unsigned char ecdh_secp256r1_1902_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_1902 = { .name = "ecdh_secp256r1_1902", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1902_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1902_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1902_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 189 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1903 for ECDH, tcId is 190 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1903_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_1903_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, }; static const unsigned char ecdh_secp256r1_1903_sharedsecret[] = { 0x02, 0x7b, 0x01, 0x3a, 0x6f, 0x16, 0x6d, 0xb6, 0x55, 0xd6, 0x9d, 0x64, 0x3c, 0x12, 0x7e, 0xf8, 0xac, 0xe1, 0x75, 0x31, 0x1e, 0x66, 0x7d, 0xff, 0x25, 0x20, 0xf5, 0xb5, 0xc7, 0x5b, 0x76, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256r1_1903 = { .name = "ecdh_secp256r1_1903", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1903_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1903_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1903_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 190 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1904 for ECDH, tcId is 191 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1904_peerpubkey[] = { 0x02, 0x38, 0x19, 0x81, 0x3a, 0xc9, 0x69, 0x84, 0x70, 0x59, 0x02, 0x8e, 0xa8, 0x8a, 0x1f, 0x30, 0xdf, 0xbc, 0xde, 0x03, 0xfc, 0x79, 0x1d, 0x3a, 0x25, 0x2c, 0x6b, 0x41, 0x21, 0x18, 0x82, 0xea, 0xf9, 0x3e, 0x4a, 0xe4, 0x33, 0xcc, 0x12, 0xcf, 0x2a, 0x43, 0xfc, 0x0e, 0xf2, 0x64, 0x00, 0xc0, 0xe1, 0x25, 0x50, 0x82, 0x24, 0xcd, 0xb6, 0x49, 0x38, 0x0f, 0x25, 0x47, 0x91, 0x48, 0xa4, 0xad, }; static const unsigned char ecdh_secp256r1_1904_privkey[] = { 0x2a, 0x26, 0x5f, 0x8b, 0xcb, 0xdc, 0xaf, 0x94, 0xd5, 0x85, 0x19, 0x14, 0x1e, 0x57, 0x81, 0x24, 0xcb, 0x40, 0xd6, 0x4a, 0x50, 0x1f, 0xba, 0x9c, 0x11, 0x84, 0x7b, 0x28, 0x96, 0x5b, 0xc7, 0x37, }; static const unsigned char ecdh_secp256r1_1904_sharedsecret[] = { 0x4d, 0x4d, 0xe8, 0x0f, 0x15, 0x34, 0x85, 0x0d, 0x26, 0x10, 0x75, 0x99, 0x7e, 0x30, 0x49, 0x32, 0x1a, 0x08, 0x64, 0x08, 0x2d, 0x24, 0xa9, 0x17, 0x86, 0x33, 0x66, 0xc0, 0x72, 0x4f, 0x5a, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256r1_1904 = { .name = "ecdh_secp256r1_1904", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1904_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1904_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1904_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 191 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1905 for ECDH, tcId is 192 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1905_peerpubkey[] = { 0xcc, 0x11, 0x88, 0x7b, 0x2d, 0x66, 0xcb, 0xae, 0x8f, 0x4d, 0x30, 0x66, 0x27, 0x19, 0x25, 0x22, 0x93, 0x21, 0x46, 0xb4, 0x2f, 0x01, 0xd3, 0xc6, 0xf9, 0x2b, 0xd5, 0xc8, 0xba, 0x73, 0x9b, 0x06, 0xa2, 0xf0, 0x8a, 0x02, 0x9c, 0xd0, 0x6b, 0x46, 0x18, 0x30, 0x85, 0xba, 0xe9, 0x24, 0x8b, 0x0e, 0xd1, 0x5b, 0x70, 0x28, 0x0c, 0x7e, 0xf1, 0x3a, 0x45, 0x7f, 0x5a, 0xf3, 0x82, 0x42, 0x60, 0x31, }; static const unsigned char ecdh_secp256r1_1905_privkey[] = { 0x31, 0x3f, 0x72, 0xff, 0x9f, 0xe8, 0x11, 0xbf, 0x57, 0x31, 0x76, 0x23, 0x1b, 0x28, 0x6a, 0x3b, 0xdb, 0x6f, 0x1b, 0x14, 0xe0, 0x5c, 0x40, 0x14, 0x65, 0x90, 0x72, 0x7a, 0x71, 0xc3, 0xbc, 0xcd, }; static const unsigned char ecdh_secp256r1_1905_sharedsecret[] = { 0x83, 0x1c, 0x3f, 0x6b, 0x5f, 0x76, 0x2d, 0x2f, 0x46, 0x19, 0x01, 0x57, 0x7a, 0xf4, 0x13, 0x54, 0xac, 0x5f, 0x22, 0x8c, 0x25, 0x91, 0xf8, 0x4f, 0x8a, 0x6e, 0x51, 0xe2, 0xe3, 0xf1, 0x79, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256r1_1905 = { .name = "ecdh_secp256r1_1905", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1905_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1905_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1905_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 192 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1906 for ECDH, tcId is 193 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1906_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1906_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1906 = { .name = "ecdh_secp256r1_1906", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1906_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1906_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 193 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1907 for ECDH, tcId is 194 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1907_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1907_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1907 = { .name = "ecdh_secp256r1_1907", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1907_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1907_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 194 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1908 for ECDH, tcId is 195 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1908_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_1908_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1908 = { .name = "ecdh_secp256r1_1908", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1908_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1908_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 195 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1909 for ECDH, tcId is 196 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1909_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1909_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1909 = { .name = "ecdh_secp256r1_1909", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1909_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1909_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 196 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1910 for ECDH, tcId is 197 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1910_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1910_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1910 = { .name = "ecdh_secp256r1_1910", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1910_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1910_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 197 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1911 for ECDH, tcId is 198 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1911_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1911_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1911 = { .name = "ecdh_secp256r1_1911", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1911_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1911_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 198 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1912 for ECDH, tcId is 199 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1912_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_1912_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1912 = { .name = "ecdh_secp256r1_1912", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1912_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1912_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 199 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1913 for ECDH, tcId is 200 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1913_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1913_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1913 = { .name = "ecdh_secp256r1_1913", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1913_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1913_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 200 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1914 for ECDH, tcId is 201 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1914_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1914_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1914 = { .name = "ecdh_secp256r1_1914", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1914_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1914_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 201 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1915 for ECDH, tcId is 202 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1915_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1915_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1915 = { .name = "ecdh_secp256r1_1915", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1915_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1915_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 202 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1916 for ECDH, tcId is 203 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1916_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_1916_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1916 = { .name = "ecdh_secp256r1_1916", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1916_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1916_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 203 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1917 for ECDH, tcId is 204 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1917_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1917_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1917 = { .name = "ecdh_secp256r1_1917", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1917_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1917_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 204 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1918 for ECDH, tcId is 205 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1918_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1918_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1918 = { .name = "ecdh_secp256r1_1918", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1918_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1918_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 205 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1919 for ECDH, tcId is 206 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1919_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_1919_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1919 = { .name = "ecdh_secp256r1_1919", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1919_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1919_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 206 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1920 for ECDH, tcId is 207 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1920_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_1920_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1920 = { .name = "ecdh_secp256r1_1920", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1920_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1920_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 207 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1921 for ECDH, tcId is 208 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1921_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_1921_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_1921 = { .name = "ecdh_secp256r1_1921", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1921_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1921_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 208 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1922 for ECDH, tcId is 210 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1922_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4c, }; static const unsigned char ecdh_secp256r1_1922_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1922 = { .name = "ecdh_secp256r1_1922", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1922_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1922_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 210 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1923 for ECDH, tcId is 211 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1923_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_1923_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1923 = { .name = "ecdh_secp256r1_1923", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1923_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1923_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 211 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1924 for ECDH, tcId is 214 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1924_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1924_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1924_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1924 = { .name = "ecdh_secp256r1_1924", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1924_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1924_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1924_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 214 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1925 for ECDH, tcId is 215 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1925_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1925_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1925_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1925 = { .name = "ecdh_secp256r1_1925", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1925_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1925_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1925_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 26959946660873538060741835960514744168612397095220107664918121663170, tcId is 215 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1926 for ECDH, tcId is 216 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1926_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1926_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1926_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1926 = { .name = "ecdh_secp256r1_1926", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1926_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1926_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1926_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 216 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1927 for ECDH, tcId is 217 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1927_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1927_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1927_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1927 = { .name = "ecdh_secp256r1_1927", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1927_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1927_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1927_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 217 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1928 for ECDH, tcId is 220 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1928_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1928_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1928_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1928 = { .name = "ecdh_secp256r1_1928", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1928_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1928_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1928_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 220 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1929 for ECDH, tcId is 222 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1929_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1929_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1929_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1929 = { .name = "ecdh_secp256r1_1929", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1929_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1929_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1929_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 222 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1930 for ECDH, tcId is 225 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1930_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_secp256r1_1930_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_1930 = { .name = "ecdh_secp256r1_1930", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1930_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1930_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 225 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1931 for ECDH, tcId is 226 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1931_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_1931_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_1931_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_1931 = { .name = "ecdh_secp256r1_1931", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1931_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1931_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1931_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 226 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1932 for ECDH, tcId is 231 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1932_peerpubkey[] = { 0x80, 0x28, 0xd1, 0x60, 0x82, 0xb0, 0x76, 0x96, 0xd4, 0xaa, 0x4a, 0xab, 0x9d, 0x6b, 0x1f, 0x14, 0x63, 0x43, 0x5a, 0xc0, 0x97, 0x90, 0x06, 0x31, 0x10, 0x8f, 0x98, 0x88, 0xe1, 0x3d, 0xa6, 0x7c, 0x48, 0x41, 0xfd, 0x8d, 0xd3, 0xce, 0xd6, 0xe7, 0xad, 0x8c, 0x6f, 0xc6, 0x56, 0x62, 0x1c, 0x2f, 0x93, 0xd3, 0xdb, 0x0e, 0xb2, 0x9d, 0x48, 0xd1, 0x42, 0x31, 0x54, 0x51, 0x98, 0x65, 0xdb, 0xc1, }; static const unsigned char ecdh_secp256r1_1932_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_1932 = { .name = "ecdh_secp256r1_1932", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1932_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1932_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 231 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1933 for ECDH, tcId is 234 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1933_peerpubkey[] = { 0x5d, 0x3d, 0xdb, 0xbb, 0x9b, 0xc0, 0x71, 0xd8, 0xb5, 0x98, 0x55, 0xc7, 0x4b, 0xdf, 0x35, 0x41, 0xae, 0x4c, 0xb6, 0xc1, 0xa2, 0x4e, 0xc4, 0x39, 0x03, 0x4d, 0xf7, 0xab, 0xde, 0x16, 0xa3, 0x46, 0x52, 0x3e, 0xdf, 0x6a, 0x67, 0x89, 0x6b, 0x30, 0x4c, 0xb2, 0xcd, 0x2a, 0x08, 0x3e, 0xec, 0x2b, 0x16, 0x93, 0x5b, 0xbc, 0x91, 0x0e, 0x85, 0xec, 0x6e, 0xae, 0x38, 0xb5, 0x02, 0x30, 0xbf, 0x70, }; static const unsigned char ecdh_secp256r1_1933_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_1933 = { .name = "ecdh_secp256r1_1933", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1933_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1933_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256r1, tcId is 234 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1934 for ECDH, tcId is 239 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1934_peerpubkey[] = { 0x30, 0x37, 0xc0, 0x1b, 0x4a, 0x5a, 0xc5, 0x37, 0x42, 0xe3, 0xf5, 0x52, 0x8d, 0xff, 0xb0, 0xf0, 0x10, 0xab, 0x6e, 0xbe, 0xb0, 0x8d, 0x79, 0x2b, 0x32, 0xe1, 0x9e, 0x90, 0x06, 0xca, 0x33, 0x1a, 0x02, 0x4b, 0x67, 0x69, 0x8d, 0x7c, 0xf4, 0xb5, 0x75, 0xcc, 0xd9, 0x38, 0x94, 0x41, 0xd5, 0xc6, 0x40, 0xb7, 0x7c, 0x63, 0x77, 0x1c, 0xef, 0x1b, 0xd8, 0x56, 0x75, 0x36, 0x1c, 0x66, 0x02, 0xa4, }; static const unsigned char ecdh_secp256r1_1934_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_1934 = { .name = "ecdh_secp256r1_1934", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1934_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1934_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 239 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1935 for ECDH, tcId is 243 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1935_peerpubkey[] = { 0xfd, 0x4b, 0xf6, 0x17, 0x63, 0xb4, 0x65, 0x81, 0xfd, 0x91, 0x74, 0xd6, 0x23, 0x51, 0x6c, 0xf3, 0xc8, 0x1e, 0xdd, 0x40, 0xe2, 0x9f, 0xfa, 0x27, 0x77, 0xfb, 0x6c, 0xb0, 0xae, 0x3c, 0xe5, 0x35, }; static const unsigned char ecdh_secp256r1_1935_privkey[] = { 0x6f, 0x95, 0x3f, 0xaf, 0xf3, 0x59, 0x9e, 0x6c, 0x76, 0x2d, 0x7f, 0x4c, 0xab, 0xfe, 0xed, 0x09, 0x2d, 0xe2, 0xad, 0xd1, 0xdf, 0x1b, 0xc5, 0x74, 0x8c, 0x6c, 0xbb, 0x72, 0x5c, 0xf3, 0x54, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256r1_1935 = { .name = "ecdh_secp256r1_1935", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1935_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1935_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 243 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1936 for ECDH, tcId is 244 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1936_peerpubkey[] = { 0xef, 0xdd, 0xe3, 0xb3, 0x28, 0x72, 0xa9, 0xef, 0xfc, 0xf3, 0xb9, 0x4c, 0xbf, 0x73, 0xaa, 0x7b, 0x39, 0xf9, 0x68, 0x3e, 0xce, 0x91, 0x21, 0xb9, 0x85, 0x21, 0x67, 0xf4, 0xe3, 0xda, 0x60, 0x9b, }; static const unsigned char ecdh_secp256r1_1936_privkey[] = { 0xd2, 0x7e, 0xdf, 0x0f, 0xf5, 0xb6, 0xb6, 0xb4, 0x65, 0x75, 0x3e, 0x71, 0x58, 0x37, 0x03, 0x32, 0xc1, 0x53, 0xb4, 0x68, 0xa1, 0xbe, 0x08, 0x7a, 0xd0, 0xf4, 0x90, 0xbd, 0xb9, 0x9e, 0x5f, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_1936 = { .name = "ecdh_secp256r1_1936", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1936_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1936_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 244 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1937 for ECDH, tcId is 245 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1937_peerpubkey[] = { 0xef, 0xdd, 0xe3, 0xb3, 0x28, 0x72, 0xa9, 0xef, 0xfc, 0xf3, 0xb9, 0x4c, 0xbf, 0x73, 0xaa, 0x7b, 0x39, 0xf9, 0x68, 0x3e, 0xce, 0x91, 0x21, 0xb9, 0x85, 0x21, 0x67, 0xf4, 0xe3, 0xda, 0x60, 0x9b, }; static const unsigned char ecdh_secp256r1_1937_privkey[] = { 0xd2, 0x7e, 0xdf, 0x0f, 0xf5, 0xb6, 0xb6, 0xb4, 0x65, 0x75, 0x3e, 0x71, 0x58, 0x37, 0x03, 0x32, 0xc1, 0x53, 0xb4, 0x68, 0xa1, 0xbe, 0x08, 0x7a, 0xd0, 0xf4, 0x90, 0xbd, 0xb9, 0x9e, 0x5f, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256r1_1937 = { .name = "ecdh_secp256r1_1937", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1937_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1937_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 245 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1938 for ECDH, tcId is 246 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1938_peerpubkey[] = { 0xc4, 0x95, 0x24, 0xb2, 0xad, 0xfd, 0x8f, 0x5f, 0x97, 0x2e, 0xf5, 0x54, 0x65, 0x28, 0x36, 0xe2, 0xef, 0xb2, 0xd3, 0x06, 0xc6, 0xd3, 0xb0, 0x68, 0x92, 0x34, 0xce, 0xc9, 0x3a, 0xe7, 0x3d, 0xb5, }; static const unsigned char ecdh_secp256r1_1938_privkey[] = { 0x95, 0xea, 0xd8, 0x45, 0x40, 0xc2, 0xd0, 0x27, 0xaa, 0x31, 0x30, 0xff, 0x1b, 0x47, 0x88, 0x8c, 0xc1, 0xed, 0x67, 0xe8, 0xdd, 0xa4, 0x61, 0x56, 0xe7, 0x1c, 0xe0, 0x99, 0x17, 0x91, 0xe8, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256r1_1938 = { .name = "ecdh_secp256r1_1938", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1938_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1938_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 246 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1939 for ECDH, tcId is 247 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1939_peerpubkey[] = { 0x18, 0xf9, 0xba, 0xe7, 0x74, 0x7c, 0xd8, 0x44, 0xe9, 0x85, 0x25, 0xb7, 0xcc, 0xd0, 0xda, 0xf6, 0xe1, 0xd2, 0x0a, 0x81, 0x8b, 0x21, 0x75, 0xa9, 0xa9, 0x1e, 0x4e, 0xae, 0x53, 0x43, 0xbc, 0x98, }; static const unsigned char ecdh_secp256r1_1939_privkey[] = { 0xa8, 0x68, 0x1e, 0xf6, 0x7f, 0xb1, 0xf1, 0x89, 0x64, 0x7d, 0x95, 0xe8, 0xdb, 0x00, 0xc5, 0x2c, 0xee, 0xf6, 0xd4, 0x1a, 0x85, 0xba, 0x0a, 0x5b, 0xd7, 0x4c, 0x44, 0xe8, 0xe6, 0x2c, 0x8a, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1939 = { .name = "ecdh_secp256r1_1939", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1939_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1939_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 247 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1940 for ECDH, tcId is 248 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1940_peerpubkey[] = { 0x18, 0xf9, 0xba, 0xe7, 0x74, 0x7c, 0xd8, 0x44, 0xe9, 0x85, 0x25, 0xb7, 0xcc, 0xd0, 0xda, 0xf6, 0xe1, 0xd2, 0x0a, 0x81, 0x8b, 0x21, 0x75, 0xa9, 0xa9, 0x1e, 0x4e, 0xae, 0x53, 0x43, 0xbc, 0x98, }; static const unsigned char ecdh_secp256r1_1940_privkey[] = { 0xa8, 0x68, 0x1e, 0xf6, 0x7f, 0xb1, 0xf1, 0x89, 0x64, 0x7d, 0x95, 0xe8, 0xdb, 0x00, 0xc5, 0x2c, 0xee, 0xf6, 0xd4, 0x1a, 0x85, 0xba, 0x0a, 0x5b, 0xd7, 0x4c, 0x44, 0xe8, 0xe6, 0x2c, 0x8a, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_1940 = { .name = "ecdh_secp256r1_1940", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1940_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1940_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 248 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1941 for ECDH, tcId is 249 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1941_peerpubkey[] = { 0xc4, 0x95, 0x24, 0xb2, 0xad, 0xfd, 0x8f, 0x5f, 0x97, 0x2e, 0xf5, 0x54, 0x65, 0x28, 0x36, 0xe2, 0xef, 0xb2, 0xd3, 0x06, 0xc6, 0xd3, 0xb0, 0x68, 0x92, 0x34, 0xce, 0xc9, 0x3a, 0xe7, 0x3d, 0xb5, }; static const unsigned char ecdh_secp256r1_1941_privkey[] = { 0x95, 0xea, 0xd8, 0x45, 0x40, 0xc2, 0xd0, 0x27, 0xaa, 0x31, 0x30, 0xff, 0x1b, 0x47, 0x88, 0x8c, 0xc1, 0xed, 0x67, 0xe8, 0xdd, 0xa4, 0x61, 0x56, 0xe7, 0x1c, 0xe0, 0x99, 0x17, 0x91, 0xe8, 0x34, }; static const wycheproof_ecdh_test ecdh_secp256r1_1941 = { .name = "ecdh_secp256r1_1941", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1941_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1941_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 249 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1942 for ECDH, tcId is 250 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1942_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1942_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1942_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1942 = { .name = "ecdh_secp256r1_1942", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1942_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1942_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1942_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 250 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1943 for ECDH, tcId is 251 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1943_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1943_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1943_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1943 = { .name = "ecdh_secp256r1_1943", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1943_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1943_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1943_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of sequence, tcId is 251 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1944 for ECDH, tcId is 252 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1944_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1944_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1944_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1944 = { .name = "ecdh_secp256r1_1944", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1944_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1944_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1944_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 252 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1945 for ECDH, tcId is 253 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1945_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1945_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1945_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1945 = { .name = "ecdh_secp256r1_1945", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1945_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1945_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1945_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of sequence contains leading 0, tcId is 253 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1946 for ECDH, tcId is 287 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1946_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1946_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1946_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1946 = { .name = "ecdh_secp256r1_1946", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1946_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1946_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1946_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 287 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1947 for ECDH, tcId is 288 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1947_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1947_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1947_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1947 = { .name = "ecdh_secp256r1_1947", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1947_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1947_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1947_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to sequence, tcId is 288 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1948 for ECDH, tcId is 317 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1948_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1948_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1948_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1948 = { .name = "ecdh_secp256r1_1948", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1948_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1948_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1948_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing sequence with NULL, tcId is 317 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1949 for ECDH, tcId is 320 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1949_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1949_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1949_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1949 = { .name = "ecdh_secp256r1_1949", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1949_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1949_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1949_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 320 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1950 for ECDH, tcId is 325 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1950_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1950_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1950_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1950 = { .name = "ecdh_secp256r1_1950", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1950_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1950_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1950_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of sequence, tcId is 325 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1951 for ECDH, tcId is 329 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1951_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1951_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1951_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1951 = { .name = "ecdh_secp256r1_1951", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1951_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1951_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1951_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "dropping value of sequence, tcId is 329 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1952 for ECDH, tcId is 347 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1952_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1952_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1952_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1952 = { .name = "ecdh_secp256r1_1952", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1952_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1952_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1952_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepend empty sequence, tcId is 347 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1953 for ECDH, tcId is 348 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1953_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1953_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1953_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1953 = { .name = "ecdh_secp256r1_1953", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1953_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1953_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1953_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 348 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1954 for ECDH, tcId is 349 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1954_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1954_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1954_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1954 = { .name = "ecdh_secp256r1_1954", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1954_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1954_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1954_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "append empty sequence, tcId is 349 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1955 for ECDH, tcId is 353 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1955_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1955_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1955_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1955 = { .name = "ecdh_secp256r1_1955", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1955_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1955_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1955_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "sequence of sequence, tcId is 353 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1956 for ECDH, tcId is 355 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1956_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1956_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1956_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1956 = { .name = "ecdh_secp256r1_1956", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1956_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1956_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1956_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 355 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1957 for ECDH, tcId is 356 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1957_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1957_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1957_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1957 = { .name = "ecdh_secp256r1_1957", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1957_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1957_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1957_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 356 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1958 for ECDH, tcId is 357 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1958_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1958_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1958_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1958 = { .name = "ecdh_secp256r1_1958", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1958_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1958_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1958_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "repeating element in sequence, tcId is 357 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1959 for ECDH, tcId is 358 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1959_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1959_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1959_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1959 = { .name = "ecdh_secp256r1_1959", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1959_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1959_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1959_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 358 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1960 for ECDH, tcId is 359 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1960_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1960_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1960_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1960 = { .name = "ecdh_secp256r1_1960", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1960_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1960_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1960_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of oid, tcId is 359 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1961 for ECDH, tcId is 360 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1961_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1961_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1961_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1961 = { .name = "ecdh_secp256r1_1961", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1961_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1961_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1961_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 360 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1962 for ECDH, tcId is 361 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1962_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1962_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1962_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1962 = { .name = "ecdh_secp256r1_1962", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1962_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1962_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1962_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of oid contains leading 0, tcId is 361 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1963 for ECDH, tcId is 380 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1963_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1963_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1963_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1963 = { .name = "ecdh_secp256r1_1963", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1963_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1963_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1963_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "removing oid, tcId is 380 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1964 for ECDH, tcId is 381 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1964_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1964_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1964_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1964 = { .name = "ecdh_secp256r1_1964", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1964_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1964_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1964_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "lonely oid tag, tcId is 381 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1965 for ECDH, tcId is 383 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1965_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1965_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1965_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1965 = { .name = "ecdh_secp256r1_1965", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1965_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1965_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1965_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 383 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1966 for ECDH, tcId is 384 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1966_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1966_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1966_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1966 = { .name = "ecdh_secp256r1_1966", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1966_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1966_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1966_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending 0's to oid, tcId is 384 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1967 for ECDH, tcId is 385 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1967_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1967_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1967_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1967 = { .name = "ecdh_secp256r1_1967", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1967_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1967_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1967_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 385 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1968 for ECDH, tcId is 386 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1968_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1968_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1968_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1968 = { .name = "ecdh_secp256r1_1968", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1968_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1968_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1968_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to oid, tcId is 386 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1969 for ECDH, tcId is 388 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1969_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1969_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1969_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1969 = { .name = "ecdh_secp256r1_1969", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1969_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1969_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1969_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 388 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1970 for ECDH, tcId is 389 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1970_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1970_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1970_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1970 = { .name = "ecdh_secp256r1_1970", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1970_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1970_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1970_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "appending null value to oid, tcId is 389 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1971 for ECDH, tcId is 390 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1971_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1971_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1971_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1971 = { .name = "ecdh_secp256r1_1971", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1971_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1971_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1971_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated length of oid, tcId is 390 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1972 for ECDH, tcId is 392 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1972_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1972_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1972_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1972 = { .name = "ecdh_secp256r1_1972", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1972_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1972_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1972_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 392 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1973 for ECDH, tcId is 393 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1973_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1973_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1973_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1973 = { .name = "ecdh_secp256r1_1973", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1973_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1973_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1973_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "Replacing oid with NULL, tcId is 393 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1974 for ECDH, tcId is 394 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1974_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1974_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1974_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1974 = { .name = "ecdh_secp256r1_1974", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1974_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1974_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1974_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 394 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1975 for ECDH, tcId is 396 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1975_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1975_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1975_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1975 = { .name = "ecdh_secp256r1_1975", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1975_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1975_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1975_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 396 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1976 for ECDH, tcId is 399 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1976_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1976_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1976_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1976 = { .name = "ecdh_secp256r1_1976", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1976_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1976_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1976_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 399 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1977 for ECDH, tcId is 401 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1977_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1977_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1977_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1977 = { .name = "ecdh_secp256r1_1977", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1977_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1977_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1977_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "changing tag value of oid, tcId is 401 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1978 for ECDH, tcId is 406 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1978_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1978_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1978_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1978 = { .name = "ecdh_secp256r1_1978", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1978_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1978_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1978_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 406 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1979 for ECDH, tcId is 407 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1979_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1979_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1979_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1979 = { .name = "ecdh_secp256r1_1979", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1979_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1979_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1979_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "modify first byte of oid, tcId is 407 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1980 for ECDH, tcId is 410 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1980_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1980_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1980_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1980 = { .name = "ecdh_secp256r1_1980", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1980_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1980_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1980_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 410 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1981 for ECDH, tcId is 411 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1981_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1981_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1981_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1981 = { .name = "ecdh_secp256r1_1981", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1981_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1981_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1981_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 411 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1982 for ECDH, tcId is 412 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1982_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1982_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1982_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1982 = { .name = "ecdh_secp256r1_1982", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1982_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1982_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1982_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 412 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1983 for ECDH, tcId is 413 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1983_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1983_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1983_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1983 = { .name = "ecdh_secp256r1_1983", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1983_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1983_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1983_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "truncated oid, tcId is 413 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1984 for ECDH, tcId is 414 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1984_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1984_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1984_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1984 = { .name = "ecdh_secp256r1_1984", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1984_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1984_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1984_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 414 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1985 for ECDH, tcId is 415 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1985_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1985_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1985_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1985 = { .name = "ecdh_secp256r1_1985", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1985_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1985_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1985_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 415 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1986 for ECDH, tcId is 416 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1986_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1986_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1986_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1986 = { .name = "ecdh_secp256r1_1986", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1986_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1986_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1986_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 416 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1987 for ECDH, tcId is 417 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1987_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1987_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1987_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1987 = { .name = "ecdh_secp256r1_1987", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1987_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1987_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1987_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "wrong oid, tcId is 417 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1988 for ECDH, tcId is 418 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1988_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1988_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1988_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1988 = { .name = "ecdh_secp256r1_1988", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1988_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1988_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1988_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 418 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1989 for ECDH, tcId is 419 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1989_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1989_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1989_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1989 = { .name = "ecdh_secp256r1_1989", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1989_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1989_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1989_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "longer oid, tcId is 419 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1990 for ECDH, tcId is 420 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1990_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1990_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1990_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1990 = { .name = "ecdh_secp256r1_1990", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1990_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1990_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1990_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 420 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1991 for ECDH, tcId is 421 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1991_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1991_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1991_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1991 = { .name = "ecdh_secp256r1_1991", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1991_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1991_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1991_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 421 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1992 for ECDH, tcId is 422 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1992_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1992_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1992_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1992 = { .name = "ecdh_secp256r1_1992", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1992_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1992_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1992_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 422 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1993 for ECDH, tcId is 423 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1993_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1993_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1993_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1993 = { .name = "ecdh_secp256r1_1993", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1993_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1993_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1993_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "oid with modified node, tcId is 423 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1994 for ECDH, tcId is 424 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1994_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1994_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1994_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1994 = { .name = "ecdh_secp256r1_1994", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1994_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1994_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1994_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 424 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1995 for ECDH, tcId is 425 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1995_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1995_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1995_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1995 = { .name = "ecdh_secp256r1_1995", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1995_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1995_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1995_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "large integer in oid, tcId is 425 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1996 for ECDH, tcId is 430 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1996_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1996_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1996_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1996 = { .name = "ecdh_secp256r1_1996", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1996_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1996_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1996_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "long form encoding of length of bit string, tcId is 430 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1997 for ECDH, tcId is 431 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1997_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1997_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1997_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1997 = { .name = "ecdh_secp256r1_1997", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1997_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1997_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1997_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "length of bit string contains leading 0, tcId is 431 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1998 for ECDH, tcId is 443 in file ecdh_secp256r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1998_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0x6b, }; static const unsigned char ecdh_secp256r1_1998_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1998_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1998 = { .name = "ecdh_secp256r1_1998", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1998_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1998_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1998_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "prepending 0's to bit string, tcId is 443 in file ecdh_secp256r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 1999 for ECDH, tcId is 454 in file ecdh_secp256r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_1999_peerpubkey[] = { 0x29, 0x98, 0x70, 0x5a, 0x9a, 0x71, 0xc7, 0x83, 0xe1, 0xcf, 0x43, 0x97, 0xdb, 0xed, 0x93, 0x75, 0xa4, 0x4e, 0x4c, 0xb8, 0x80, 0x53, 0x59, 0x4b, 0x0e, 0xa9, 0x82, 0x20, 0x3b, 0x63, 0x63, 0xb0, 0x63, 0xd0, 0xaf, 0x49, 0x71, 0xd1, 0xc3, 0x81, 0x3d, 0xb3, 0xc7, 0x79, 0x9f, 0x9f, 0x93, 0x24, 0xcb, 0xe1, 0xb9, 0x00, 0x54, 0xc8, 0x1b, 0x51, 0x0f, 0xf6, 0x29, 0x71, 0x60, 0xad, 0xd6, 0xeb, }; static const unsigned char ecdh_secp256r1_1999_privkey[] = { 0xc9, 0x55, 0x1f, 0xfe, 0x53, 0xce, 0x60, 0xd7, 0x3c, 0xbf, 0x8a, 0xf5, 0x53, 0xd0, 0xcb, 0x5f, 0x76, 0x32, 0xec, 0xe4, 0x99, 0x59, 0x01, 0x82, 0xc2, 0x8c, 0xb6, 0xdb, 0x2e, 0x39, 0x78, 0xd2, }; static const unsigned char ecdh_secp256r1_1999_sharedsecret[] = { 0xf0, 0xb6, 0xd8, 0x51, 0xdc, 0xd8, 0xe9, 0xa8, 0xc4, 0x74, 0xd6, 0x95, 0x13, 0x79, 0x62, 0xf0, 0x82, 0xc4, 0xf2, 0xa1, 0xa2, 0xee, 0xfb, 0x18, 0x2d, 0xf5, 0x8d, 0x88, 0xa7, 0x28, 0x29, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256r1_1999 = { .name = "ecdh_secp256r1_1999", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_1999_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_1999_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_1999_sharedsecret, .sharedsecretlen = 32, .result = -1, .comment = "modify last byte of bit string, tcId is 454 in file ecdh_secp256r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2000 for ECDH, tcId is 1 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2000_peerpubkey[] = { 0x79, 0x0a, 0x6e, 0x05, 0x9e, 0xf9, 0xa5, 0x94, 0x01, 0x63, 0x18, 0x3d, 0x4a, 0x78, 0x09, 0x13, 0x5d, 0x29, 0x79, 0x16, 0x43, 0xfc, 0x43, 0xa2, 0xf1, 0x7e, 0xe8, 0xbf, 0x67, 0x7a, 0xb8, 0x4f, 0x79, 0x1b, 0x64, 0xa6, 0xbe, 0x15, 0x96, 0x9f, 0xfa, 0x01, 0x2d, 0xd9, 0x18, 0x5d, 0x87, 0x96, 0xd9, 0xb9, 0x54, 0xba, 0xa8, 0xa7, 0x5e, 0x82, 0xdf, 0x71, 0x1b, 0x3b, 0x56, 0xea, 0xdf, 0xf6, 0xb0, 0xf6, 0x68, 0xc3, 0xb2, 0x6b, 0x4b, 0x1a, 0xeb, 0x30, 0x8a, 0x1f, 0xcc, 0x1c, 0x68, 0x0d, 0x32, 0x9a, 0x67, 0x05, 0x02, 0x5f, 0x1c, 0x98, 0xa0, 0xb5, 0xe5, 0xbf, 0xcb, 0x16, 0x3c, 0xaa, }; static const unsigned char ecdh_secp384r1_2000_privkey[] = { 0x76, 0x6e, 0x61, 0x42, 0x5b, 0x2d, 0xa9, 0xf8, 0x46, 0xc0, 0x9f, 0xc3, 0x56, 0x4b, 0x93, 0xa6, 0xf8, 0x60, 0x3b, 0x73, 0x92, 0xc7, 0x85, 0x16, 0x5b, 0xf2, 0x0d, 0xa9, 0x48, 0xc4, 0x9f, 0xd1, 0xfb, 0x1d, 0xee, 0x4e, 0xdd, 0x64, 0x35, 0x6b, 0x9f, 0x21, 0xc5, 0x88, 0xb7, 0x5d, 0xfd, 0x81, }; static const unsigned char ecdh_secp384r1_2000_sharedsecret[] = { 0x64, 0x61, 0xde, 0xfb, 0x95, 0xd9, 0x96, 0xb2, 0x42, 0x96, 0xf5, 0xa1, 0x83, 0x2b, 0x34, 0xdb, 0x05, 0xed, 0x03, 0x11, 0x14, 0xfb, 0xe7, 0xd9, 0x8d, 0x09, 0x8f, 0x93, 0x85, 0x98, 0x66, 0xe4, 0xde, 0x1e, 0x22, 0x9d, 0xa7, 0x1f, 0xef, 0x0c, 0x77, 0xfe, 0x49, 0xb2, 0x49, 0x19, 0x01, 0x35, }; static const wycheproof_ecdh_test ecdh_secp384r1_2000 = { .name = "ecdh_secp384r1_2000", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2000_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2000_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2000_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2001 for ECDH, tcId is 2 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2001_peerpubkey[] = { 0x79, 0x0a, 0x6e, 0x05, 0x9e, 0xf9, 0xa5, 0x94, 0x01, 0x63, 0x18, 0x3d, 0x4a, 0x78, 0x09, 0x13, 0x5d, 0x29, 0x79, 0x16, 0x43, 0xfc, 0x43, 0xa2, 0xf1, 0x7e, 0xe8, 0xbf, 0x67, 0x7a, 0xb8, 0x4f, 0x79, 0x1b, 0x64, 0xa6, 0xbe, 0x15, 0x96, 0x9f, 0xfa, 0x01, 0x2d, 0xd9, 0x18, 0x5d, 0x87, 0x96, }; static const unsigned char ecdh_secp384r1_2001_privkey[] = { 0x76, 0x6e, 0x61, 0x42, 0x5b, 0x2d, 0xa9, 0xf8, 0x46, 0xc0, 0x9f, 0xc3, 0x56, 0x4b, 0x93, 0xa6, 0xf8, 0x60, 0x3b, 0x73, 0x92, 0xc7, 0x85, 0x16, 0x5b, 0xf2, 0x0d, 0xa9, 0x48, 0xc4, 0x9f, 0xd1, 0xfb, 0x1d, 0xee, 0x4e, 0xdd, 0x64, 0x35, 0x6b, 0x9f, 0x21, 0xc5, 0x88, 0xb7, 0x5d, 0xfd, 0x81, }; static const unsigned char ecdh_secp384r1_2001_sharedsecret[] = { 0x64, 0x61, 0xde, 0xfb, 0x95, 0xd9, 0x96, 0xb2, 0x42, 0x96, 0xf5, 0xa1, 0x83, 0x2b, 0x34, 0xdb, 0x05, 0xed, 0x03, 0x11, 0x14, 0xfb, 0xe7, 0xd9, 0x8d, 0x09, 0x8f, 0x93, 0x85, 0x98, 0x66, 0xe4, 0xde, 0x1e, 0x22, 0x9d, 0xa7, 0x1f, 0xef, 0x0c, 0x77, 0xfe, 0x49, 0xb2, 0x49, 0x19, 0x01, 0x35, }; static const wycheproof_ecdh_test ecdh_secp384r1_2001 = { .name = "ecdh_secp384r1_2001", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2001_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2001_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2001_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2002 for ECDH, tcId is 3 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2002_peerpubkey[] = { 0x49, 0x0e, 0x96, 0xd1, 0x7f, 0x4c, 0x6c, 0xec, 0xcd, 0x45, 0xde, 0xf4, 0x08, 0xce, 0xa3, 0x3e, 0x97, 0x04, 0xa5, 0xf1, 0xb0, 0x1a, 0x3d, 0xe2, 0xea, 0xaa, 0x34, 0x09, 0xfd, 0x16, 0x0d, 0x78, 0xd3, 0x95, 0xd6, 0xb3, 0xb0, 0x03, 0xd7, 0x1f, 0xd1, 0xf5, 0x90, 0xfa, 0xd9, 0x5b, 0xf1, 0xc9, 0xd8, 0x66, 0x5e, 0xfc, 0x20, 0x70, 0xd0, 0x59, 0xaa, 0x84, 0x71, 0x25, 0xc2, 0xf7, 0x07, 0x43, 0x59, 0x55, 0x53, 0x5c, 0x7c, 0x5d, 0xf6, 0xd6, 0xc0, 0x79, 0xec, 0x80, 0x6d, 0xce, 0x6b, 0x68, 0x49, 0xd3, 0x37, 0x14, 0x0d, 0xb7, 0xca, 0x50, 0x61, 0x6f, 0x94, 0x56, 0xde, 0x13, 0x23, 0xc4, }; static const unsigned char ecdh_secp384r1_2002_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2002_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2002 = { .name = "ecdh_secp384r1_2002", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2002_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2002_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2002_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2003 for ECDH, tcId is 4 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2003_peerpubkey[] = { 0x01, 0x61, 0x32, 0x89, 0x09, 0x67, 0x52, 0x13, 0xe3, 0x20, 0x98, 0xd3, 0x5a, 0x6b, 0x83, 0x08, 0xa8, 0xd5, 0x00, 0xcc, 0xa3, 0x9d, 0xce, 0xe5, 0xe8, 0x04, 0xe7, 0x3b, 0xdb, 0x8d, 0xea, 0xf0, 0x6f, 0xe4, 0x17, 0x29, 0x1f, 0xd9, 0x79, 0x3b, 0x23, 0x1e, 0xf5, 0xfe, 0x86, 0x94, 0x54, 0x44, 0xa9, 0x7a, 0x01, 0xf3, 0xae, 0x3a, 0x83, 0x10, 0xc4, 0xaf, 0x49, 0xb5, 0x92, 0xcb, 0x29, 0x1e, 0xf7, 0x0e, 0xe5, 0xbc, 0x7f, 0x55, 0x34, 0xd3, 0xc2, 0x3d, 0xc9, 0xee, 0xfd, 0xe2, 0x30, 0x48, 0x42, 0xc7, 0x73, 0x7a, 0xe9, 0x37, 0xcc, 0xf9, 0xbd, 0x21, 0x5c, 0x28, 0x10, 0x3e, 0x9f, 0xe2, }; static const unsigned char ecdh_secp384r1_2003_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2003_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2003 = { .name = "ecdh_secp384r1_2003", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2003_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2003_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2003_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2004 for ECDH, tcId is 5 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2004_peerpubkey[] = { 0xaf, 0x4a, 0xe9, 0x64, 0xe3, 0xbc, 0xbd, 0x92, 0x3a, 0xcc, 0xda, 0x5d, 0xa3, 0x17, 0x5d, 0x41, 0x1f, 0xd6, 0x2d, 0x17, 0xdd, 0x3c, 0x3a, 0x1c, 0x41, 0x0b, 0xef, 0x17, 0x30, 0x98, 0x5a, 0x62, 0x65, 0xd9, 0x0e, 0x95, 0x0a, 0xc0, 0xfc, 0x50, 0x74, 0x3b, 0x1e, 0xd7, 0x71, 0x90, 0x6f, 0xf3, 0x3b, 0x68, 0xcf, 0x4d, 0x3d, 0x83, 0xa8, 0x85, 0xa8, 0x70, 0x97, 0xfd, 0xd3, 0x29, 0xce, 0x83, 0xb1, 0x89, 0xf9, 0x8c, 0xec, 0x5b, 0xe4, 0x4c, 0x31, 0xd1, 0xa3, 0xa2, 0xbb, 0xa1, 0x0f, 0x47, 0x19, 0x63, 0x23, 0x2b, 0x8b, 0xa7, 0x61, 0x0f, 0xa8, 0xc7, 0x21, 0x79, 0x05, 0x0e, 0xb8, 0x6d, }; static const unsigned char ecdh_secp384r1_2004_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2004_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp384r1_2004 = { .name = "ecdh_secp384r1_2004", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2004_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2004_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2004_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2005 for ECDH, tcId is 6 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2005_peerpubkey[] = { 0x14, 0x78, 0xab, 0x6e, 0x03, 0x2b, 0x95, 0x45, 0xed, 0xa9, 0xac, 0x2c, 0x26, 0x4e, 0x57, 0xa1, 0x1f, 0x08, 0xac, 0xbc, 0x76, 0xd1, 0x6a, 0x0a, 0xb7, 0x7b, 0x04, 0xdb, 0xda, 0xf2, 0x0f, 0x21, 0x5c, 0x41, 0x83, 0x43, 0x7b, 0x32, 0xaf, 0xc4, 0x71, 0xea, 0xa6, 0x03, 0xd1, 0x4c, 0x7c, 0x5d, 0x8a, 0x4c, 0x84, 0xee, 0x0e, 0x89, 0x5b, 0xec, 0x5c, 0x37, 0xf0, 0xa1, 0xca, 0x07, 0x5e, 0x10, 0x6f, 0xf6, 0xbf, 0x38, 0x80, 0x1b, 0x5c, 0x69, 0x74, 0x09, 0xd3, 0x96, 0x75, 0x23, 0x11, 0x08, 0xd3, 0x3c, 0x4a, 0x5e, 0xa6, 0x5a, 0xaa, 0x8c, 0x03, 0xe9, 0x39, 0xc9, 0x5d, 0x96, 0xc4, 0xc4, }; static const unsigned char ecdh_secp384r1_2005_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2005_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_2005 = { .name = "ecdh_secp384r1_2005", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2005_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2005_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2005_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2006 for ECDH, tcId is 7 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2006_peerpubkey[] = { 0xf6, 0x32, 0x08, 0xe3, 0x4e, 0x7e, 0x90, 0xbb, 0x5f, 0xb0, 0x36, 0x43, 0x24, 0x67, 0xa8, 0x99, 0x81, 0x44, 0x40, 0x10, 0x66, 0x3b, 0x85, 0x33, 0xb4, 0x7b, 0xfa, 0x94, 0xbd, 0x2b, 0xc1, 0x6f, 0x38, 0xaa, 0x51, 0x6b, 0x93, 0x0a, 0x47, 0x26, 0xe3, 0x87, 0x6d, 0x30, 0x91, 0xbf, 0xb7, 0x2e, 0xc7, 0x83, 0xed, 0x4d, 0xa0, 0xca, 0xc0, 0x63, 0x20, 0x81, 0x7d, 0xc8, 0xbc, 0x64, 0xf5, 0x9c, 0xcf, 0x06, 0xf4, 0x8a, 0xbc, 0x43, 0x86, 0xa1, 0x50, 0x91, 0x3f, 0xa9, 0x57, 0x43, 0xa7, 0xb4, 0x60, 0x11, 0x90, 0xe1, 0xc6, 0xee, 0x8f, 0x8b, 0xf6, 0x35, 0x4b, 0x25, 0x4e, 0xca, 0xce, 0x45, }; static const unsigned char ecdh_secp384r1_2006_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2006_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2006 = { .name = "ecdh_secp384r1_2006", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2006_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2006_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2006_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2007 for ECDH, tcId is 8 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2007_peerpubkey[] = { 0x03, 0x32, 0x71, 0xef, 0x42, 0xd9, 0x2a, 0xd4, 0x7b, 0x27, 0x3b, 0x09, 0xea, 0x2f, 0x45, 0x40, 0x11, 0x61, 0xba, 0xa5, 0x26, 0x96, 0x59, 0x0d, 0x0e, 0x17, 0x5f, 0xf2, 0xd1, 0xc0, 0xdf, 0xa3, 0xfe, 0xa4, 0x0e, 0x42, 0x66, 0xd4, 0x46, 0x54, 0x6c, 0x05, 0xe4, 0x80, 0xd5, 0x7f, 0xab, 0xec, 0x78, 0x89, 0xf1, 0x6a, 0x8b, 0xcc, 0x17, 0x66, 0x02, 0xf6, 0xd4, 0x65, 0x61, 0x61, 0x4a, 0x2f, 0x42, 0x84, 0xab, 0xe6, 0x97, 0xb7, 0xcb, 0x9c, 0xe7, 0x9f, 0x7e, 0x2e, 0x71, 0xb1, 0x55, 0xcb, 0x1f, 0x15, 0x5c, 0xe9, 0x25, 0xd1, 0x63, 0x91, 0xa6, 0x80, 0xed, 0xa2, 0x31, 0x52, 0xe6, 0xe1, }; static const unsigned char ecdh_secp384r1_2007_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2007_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2007 = { .name = "ecdh_secp384r1_2007", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2007_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2007_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2007_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2008 for ECDH, tcId is 9 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2008_peerpubkey[] = { 0x73, 0x7e, 0x84, 0x37, 0xe1, 0x86, 0x83, 0xde, 0x24, 0x55, 0xb6, 0x89, 0x45, 0xbb, 0xa3, 0x1d, 0xae, 0xc3, 0xe7, 0x54, 0xd7, 0x2f, 0x0a, 0x07, 0x76, 0xd3, 0x19, 0x2b, 0x2f, 0x92, 0x98, 0xbb, 0x95, 0xca, 0x14, 0x64, 0xba, 0xa6, 0x68, 0x7a, 0xab, 0xb6, 0x79, 0xf8, 0x04, 0xcf, 0x6e, 0xc6, 0xc2, 0xb4, 0xd4, 0x7d, 0x61, 0xa6, 0x04, 0x04, 0xdf, 0x63, 0xb1, 0xe9, 0xac, 0x09, 0x54, 0xb3, 0x41, 0x9b, 0xbc, 0x2a, 0xd5, 0x2a, 0x04, 0x09, 0xae, 0xeb, 0x82, 0xf4, 0x70, 0x37, 0x58, 0x58, 0x80, 0x59, 0x16, 0x5b, 0x20, 0x36, 0x7d, 0xcb, 0x4b, 0x23, 0x5b, 0x0c, 0xaf, 0x71, 0xd7, 0x27, }; static const unsigned char ecdh_secp384r1_2008_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2008_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2008 = { .name = "ecdh_secp384r1_2008", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2008_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2008_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2008_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2009 for ECDH, tcId is 10 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2009_peerpubkey[] = { 0x37, 0xf9, 0x00, 0x49, 0x83, 0x15, 0x6b, 0xbd, 0x9c, 0x47, 0x89, 0x1e, 0x75, 0x23, 0x7b, 0xb1, 0x30, 0x16, 0xbd, 0x7f, 0xe6, 0xf4, 0xe0, 0xf7, 0x1c, 0xef, 0x0e, 0x63, 0xf1, 0x6a, 0x67, 0x2f, 0x0d, 0x3b, 0x0e, 0x20, 0x16, 0x5c, 0x33, 0x40, 0x7e, 0x14, 0x6b, 0x6a, 0x4a, 0xe6, 0x96, 0x2d, 0xd3, 0xb5, 0x7c, 0xcb, 0x99, 0xe7, 0xaa, 0xf1, 0x30, 0x32, 0x40, 0x51, 0x6d, 0x0e, 0xbe, 0x08, 0xe5, 0x85, 0x51, 0x3e, 0x36, 0x95, 0xd4, 0x2c, 0x46, 0x7d, 0xca, 0xb5, 0x34, 0x0e, 0xf7, 0x61, 0x99, 0x0c, 0xad, 0xc8, 0xd8, 0x84, 0x0a, 0xac, 0xc9, 0x44, 0x48, 0x14, 0x15, 0xc0, 0x7f, 0xeb, }; static const unsigned char ecdh_secp384r1_2009_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2009_sharedsecret[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp384r1_2009 = { .name = "ecdh_secp384r1_2009", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2009_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2009_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2009_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2010 for ECDH, tcId is 11 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2010_peerpubkey[] = { 0x96, 0x55, 0xd8, 0xe5, 0x62, 0x27, 0x18, 0xb3, 0x17, 0xcf, 0xbc, 0x09, 0x89, 0x43, 0x57, 0xf7, 0x5a, 0x6b, 0x13, 0xfa, 0x51, 0x6b, 0xcd, 0x66, 0x30, 0x72, 0x1b, 0x86, 0x9a, 0x62, 0x01, 0x96, 0xcf, 0x0c, 0x3d, 0xec, 0x88, 0x60, 0xb3, 0x2d, 0x27, 0xed, 0x9b, 0xac, 0x2c, 0xf2, 0x63, 0xaf, 0x17, 0x32, 0x16, 0x98, 0x11, 0x6d, 0x7d, 0x81, 0x1a, 0xe8, 0xda, 0x9b, 0x9c, 0xbb, 0xf9, 0x38, 0x2c, 0x1e, 0x36, 0xe2, 0xb6, 0x7d, 0x6c, 0x6a, 0xf9, 0xbc, 0xea, 0x7d, 0x9d, 0xe0, 0x0c, 0xa7, 0x2b, 0x39, 0x86, 0x06, 0xc0, 0x98, 0xa0, 0xa0, 0xf0, 0xc4, 0xb8, 0x94, 0x19, 0x43, 0xed, 0x65, }; static const unsigned char ecdh_secp384r1_2010_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2010_sharedsecret[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2010 = { .name = "ecdh_secp384r1_2010", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2010_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2010_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2010_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2011 for ECDH, tcId is 12 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2011_peerpubkey[] = { 0xcc, 0xb1, 0x3d, 0x42, 0x7b, 0x3c, 0x4b, 0xb3, 0x3d, 0xd4, 0xf2, 0x0c, 0xdd, 0xab, 0xc6, 0x86, 0x00, 0xea, 0xf9, 0x7e, 0xeb, 0x2c, 0x81, 0xe8, 0xc2, 0x18, 0xae, 0x90, 0x74, 0x3e, 0x74, 0xff, 0x38, 0xca, 0x56, 0xf0, 0xc0, 0x22, 0x43, 0x79, 0xdb, 0x46, 0x4d, 0xcf, 0x4a, 0x40, 0xf0, 0x43, 0x50, 0xcd, 0x7a, 0x65, 0x9b, 0x2c, 0x48, 0x51, 0xa5, 0xdc, 0xf8, 0xc9, 0x90, 0xfc, 0x92, 0x0c, 0x07, 0xd4, 0xd5, 0xaa, 0x50, 0xa2, 0x18, 0x57, 0x50, 0xe6, 0xb8, 0x4c, 0x42, 0xe8, 0x3c, 0xff, 0x63, 0x50, 0x50, 0x48, 0x2d, 0xec, 0xb4, 0x78, 0x0f, 0x81, 0x2e, 0x4c, 0x49, 0xfc, 0x74, 0x04, }; static const unsigned char ecdh_secp384r1_2011_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2011_sharedsecret[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, }; static const wycheproof_ecdh_test ecdh_secp384r1_2011 = { .name = "ecdh_secp384r1_2011", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2011_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2011_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2011_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2012 for ECDH, tcId is 13 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2012_peerpubkey[] = { 0x26, 0x64, 0x62, 0x43, 0x07, 0xc0, 0x2e, 0xf4, 0x87, 0x03, 0x0a, 0x63, 0x21, 0x62, 0xc5, 0x15, 0xf8, 0x41, 0xd1, 0x5e, 0xa3, 0x15, 0x2d, 0x98, 0xff, 0x23, 0x64, 0x23, 0x2d, 0x7a, 0xab, 0x39, 0x34, 0x3d, 0x5f, 0x70, 0x3a, 0x4d, 0x5a, 0x31, 0x09, 0x2a, 0xa7, 0x35, 0x6c, 0x3a, 0x2f, 0x67, 0x1c, 0x1c, 0xd6, 0x03, 0xad, 0xdf, 0xd8, 0xb5, 0x47, 0x75, 0x52, 0xa3, 0xb3, 0x2a, 0x18, 0xed, 0xaf, 0x3e, 0x33, 0xbe, 0xc2, 0x2e, 0xe2, 0x16, 0x7f, 0x9d, 0xa7, 0x29, 0x63, 0x60, 0x02, 0xa7, 0x97, 0x4e, 0xae, 0xb5, 0xff, 0x08, 0x2b, 0x2a, 0xab, 0xf8, 0xc7, 0x05, 0x6b, 0x84, 0xc3, 0xab, }; static const unsigned char ecdh_secp384r1_2012_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2012_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2012 = { .name = "ecdh_secp384r1_2012", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2012_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2012_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2012_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2013 for ECDH, tcId is 14 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2013_peerpubkey[] = { 0x66, 0x5f, 0x1f, 0x32, 0x0b, 0x6a, 0xb1, 0xc1, 0xb5, 0x2d, 0x14, 0x4e, 0x52, 0xd8, 0x7a, 0x15, 0x4c, 0x2b, 0x44, 0x89, 0x83, 0x8c, 0x91, 0x19, 0xde, 0x62, 0x2c, 0x2d, 0x1b, 0x52, 0xb6, 0x5b, 0x0a, 0x39, 0x55, 0xe4, 0x4e, 0x0d, 0x48, 0x59, 0x17, 0x53, 0x60, 0xc0, 0xf6, 0x3d, 0xee, 0x81, 0x3f, 0x14, 0xf6, 0x99, 0x72, 0xf1, 0x8c, 0xae, 0xd7, 0x91, 0x6c, 0x94, 0xa4, 0xd2, 0x0e, 0xc3, 0x44, 0x59, 0x1e, 0x75, 0x36, 0xa4, 0xa7, 0xa4, 0xd8, 0xc9, 0x83, 0x28, 0x18, 0xc9, 0x6d, 0x60, 0xb1, 0xa8, 0x1f, 0xab, 0xe6, 0x4e, 0xa0, 0x2c, 0x5f, 0x64, 0x7e, 0x36, 0x1b, 0xf5, 0xb6, 0x0f, }; static const unsigned char ecdh_secp384r1_2013_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2013_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2013 = { .name = "ecdh_secp384r1_2013", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2013_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2013_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2013_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2014 for ECDH, tcId is 15 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2014_peerpubkey[] = { 0x91, 0x35, 0x7c, 0xa8, 0x7d, 0xbb, 0x08, 0xe8, 0x5d, 0x7b, 0x1a, 0xce, 0xcf, 0xd1, 0xe0, 0x86, 0x07, 0x8a, 0x82, 0xd1, 0x9f, 0x81, 0x47, 0x4d, 0xa3, 0x89, 0x36, 0x4a, 0x39, 0xfe, 0x25, 0x43, 0xeb, 0x93, 0x4b, 0x44, 0x01, 0x73, 0xc3, 0x8e, 0x61, 0xa1, 0xd9, 0x40, 0x78, 0x55, 0xb5, 0xd8, 0x9e, 0xf0, 0xd9, 0xe9, 0x20, 0x76, 0x4b, 0x6d, 0x77, 0x65, 0xb0, 0x84, 0xcf, 0x95, 0x41, 0xda, 0xcc, 0x43, 0xd1, 0xda, 0xba, 0xa3, 0x90, 0xb0, 0xfb, 0x85, 0x60, 0x97, 0xb0, 0xc0, 0x0a, 0x85, 0x56, 0xf4, 0xe3, 0x84, 0x85, 0x68, 0xab, 0x4a, 0xe7, 0x90, 0xc3, 0xd3, 0x46, 0xca, 0x01, 0xb6, }; static const unsigned char ecdh_secp384r1_2014_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2014_sharedsecret[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2014 = { .name = "ecdh_secp384r1_2014", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2014_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2014_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2014_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2015 for ECDH, tcId is 16 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2015_peerpubkey[] = { 0xd5, 0xa8, 0x33, 0xba, 0xe3, 0x3b, 0x2d, 0x10, 0xfd, 0xff, 0x6d, 0xb7, 0xc5, 0x47, 0x7a, 0xdb, 0x61, 0x4b, 0x19, 0x1c, 0x70, 0xd9, 0x7c, 0x6f, 0x13, 0x0a, 0x14, 0xe9, 0x39, 0x31, 0xcc, 0x1d, 0xc0, 0x58, 0x05, 0x3f, 0xee, 0x54, 0xa2, 0x64, 0xa0, 0x0f, 0xdd, 0x16, 0xd3, 0x16, 0x6f, 0xdc, 0x42, 0x99, 0x22, 0x76, 0xb7, 0x99, 0x25, 0xba, 0xfc, 0xd1, 0x83, 0xb0, 0x3e, 0xd1, 0x82, 0x35, 0x35, 0x09, 0x80, 0xab, 0xfe, 0x67, 0xb8, 0x14, 0xc6, 0xc1, 0x10, 0x74, 0xc3, 0x8f, 0x74, 0xcd, 0x4e, 0x73, 0x4a, 0xd5, 0x8c, 0xdb, 0x49, 0xd9, 0xfc, 0xd2, 0x18, 0x1d, 0x1b, 0x8f, 0x11, 0x19, }; static const unsigned char ecdh_secp384r1_2015_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2015_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2015 = { .name = "ecdh_secp384r1_2015", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2015_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2015_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2015_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2016 for ECDH, tcId is 17 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2016_peerpubkey[] = { 0x67, 0x54, 0x7c, 0xda, 0x7f, 0xbe, 0x8f, 0x16, 0xbe, 0x5a, 0x44, 0x77, 0xcb, 0xb0, 0x29, 0x79, 0xf1, 0xaf, 0x72, 0xfc, 0x0f, 0x39, 0x30, 0x27, 0x73, 0x55, 0x2f, 0xbc, 0xf4, 0x66, 0x7a, 0x8e, 0x23, 0xab, 0xc0, 0xe1, 0x28, 0x56, 0xee, 0x62, 0x34, 0xde, 0xec, 0xa5, 0xf2, 0x2a, 0xe0, 0x50, 0x3a, 0x4d, 0xf7, 0xc0, 0x68, 0xe7, 0x43, 0x24, 0x17, 0x26, 0x0c, 0xb9, 0xfe, 0x0d, 0x68, 0xb9, 0xc7, 0xfc, 0xf7, 0xe1, 0x6a, 0x2a, 0xda, 0x05, 0x68, 0x7d, 0x8f, 0x89, 0x00, 0xb8, 0x47, 0x23, 0x10, 0x3e, 0xdb, 0xff, 0x0a, 0x42, 0xb2, 0x75, 0x17, 0xda, 0x27, 0x60, 0xb7, 0xd3, 0x88, 0x43, }; static const unsigned char ecdh_secp384r1_2016_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2016_sharedsecret[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2016 = { .name = "ecdh_secp384r1_2016", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2016_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2016_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2016_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2017 for ECDH, tcId is 18 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2017_peerpubkey[] = { 0x13, 0x63, 0xe3, 0xb9, 0x90, 0x08, 0xe0, 0x9b, 0xb3, 0xf0, 0x85, 0x94, 0x9b, 0x9b, 0x6e, 0xa2, 0x6a, 0x31, 0x8f, 0x49, 0x6d, 0xe5, 0x68, 0xa9, 0x66, 0x30, 0xfd, 0xb9, 0xd4, 0xc7, 0x2c, 0x28, 0x14, 0xdf, 0x30, 0x87, 0xa1, 0x74, 0x1f, 0x32, 0xf2, 0x49, 0x89, 0xb4, 0x28, 0x16, 0x7f, 0x93, 0xc6, 0x53, 0xcb, 0x3a, 0xe8, 0xc3, 0xec, 0xfa, 0xec, 0x57, 0xef, 0xd5, 0x4b, 0xb8, 0xce, 0x9d, 0x79, 0xc7, 0xbf, 0x6c, 0xc7, 0x0f, 0xb1, 0x11, 0x4f, 0x93, 0x9b, 0xe8, 0xf1, 0xa9, 0x9b, 0xf1, 0xe4, 0x2b, 0x97, 0x43, 0x11, 0x24, 0xef, 0x9f, 0xa3, 0x34, 0x50, 0xfa, 0xa4, 0xe7, 0x68, 0x39, }; static const unsigned char ecdh_secp384r1_2017_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2017_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_2017 = { .name = "ecdh_secp384r1_2017", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2017_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2017_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2017_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2018 for ECDH, tcId is 19 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2018_peerpubkey[] = { 0xba, 0x2b, 0xe8, 0xd7, 0x14, 0x7e, 0x24, 0x17, 0xc2, 0xec, 0x80, 0xb2, 0x4b, 0x4c, 0x1a, 0xa9, 0x44, 0x64, 0xff, 0xd0, 0xaa, 0xe1, 0xfa, 0x2e, 0x07, 0x8b, 0x3a, 0xfb, 0xc7, 0x7c, 0x14, 0x44, 0x89, 0xca, 0x9d, 0x06, 0x4a, 0xcb, 0xb7, 0xa9, 0xcf, 0xa6, 0x19, 0x6d, 0x0f, 0x46, 0x7b, 0x7e, 0x65, 0xee, 0x1c, 0xa1, 0xeb, 0x13, 0x51, 0xff, 0x99, 0x68, 0xf5, 0x53, 0xdf, 0xe2, 0xe4, 0xc5, 0x9f, 0xf8, 0xba, 0x34, 0xc2, 0x2a, 0x42, 0xb3, 0xba, 0xa1, 0x3a, 0x9a, 0x1a, 0xdc, 0x7f, 0x13, 0xab, 0xd4, 0x0f, 0x1f, 0xd2, 0x5d, 0x46, 0xbc, 0x53, 0x30, 0x85, 0x2b, 0x93, 0x71, 0x96, 0x6a, }; static const unsigned char ecdh_secp384r1_2018_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2018_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2018 = { .name = "ecdh_secp384r1_2018", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2018_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2018_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2018_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2019 for ECDH, tcId is 20 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2019_peerpubkey[] = { 0xd6, 0x98, 0x50, 0xcc, 0xba, 0xcc, 0x47, 0x36, 0xea, 0x20, 0x0f, 0xf2, 0xf8, 0x48, 0x8f, 0x26, 0x24, 0x79, 0x45, 0xa2, 0xab, 0x48, 0xdd, 0x37, 0x08, 0xf4, 0x94, 0xb2, 0x93, 0xd8, 0xcb, 0xa8, 0x34, 0x17, 0xf4, 0x89, 0x74, 0x88, 0x1c, 0x7f, 0xb0, 0x38, 0x54, 0x08, 0x9b, 0xbf, 0x66, 0xcc, 0x1c, 0x77, 0x3e, 0xc0, 0x3c, 0xb8, 0xcd, 0x5f, 0x00, 0x7e, 0xc3, 0xb0, 0x3b, 0xdd, 0x05, 0xa4, 0x09, 0xb3, 0x52, 0x10, 0x3f, 0x0d, 0xec, 0xf2, 0x5b, 0x41, 0x67, 0x3a, 0xb8, 0xca, 0x3d, 0x04, 0x33, 0x4b, 0xab, 0xee, 0x01, 0x21, 0x9f, 0x15, 0x70, 0x1f, 0x2b, 0xca, 0x22, 0xd4, 0x0b, 0x37, }; static const unsigned char ecdh_secp384r1_2019_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2019_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_2019 = { .name = "ecdh_secp384r1_2019", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2019_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2019_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2019_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 20 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2020 for ECDH, tcId is 21 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2020_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x82, 0x6f, 0xde, 0x2e, 0xd9, 0xf5, 0x64, 0x9c, 0x11, 0xcf, 0x84, 0x65, 0xf8, 0xbf, 0x8a, 0xd5, 0x0f, 0x68, 0x91, 0x49, 0x36, 0xfc, 0x39, 0x66, 0x6f, 0x68, 0x21, 0x9d, 0x06, 0x65, 0x06, 0xbe, 0xa4, 0x00, 0x1f, 0xdc, 0x81, 0x6c, 0x9a, 0x90, 0xe7, 0xe2, 0xaf, 0xb1, 0x9b, 0xea, 0x08, 0x5f, }; static const unsigned char ecdh_secp384r1_2020_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2020_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2020 = { .name = "ecdh_secp384r1_2020", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2020_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2020_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2020_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 21 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2021 for ECDH, tcId is 22 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2021_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x7d, 0x90, 0x21, 0xd1, 0x26, 0x0a, 0x9b, 0x63, 0xee, 0x30, 0x7b, 0x9a, 0x07, 0x40, 0x75, 0x2a, 0xf0, 0x97, 0x6e, 0xb6, 0xc9, 0x03, 0xc6, 0x99, 0x90, 0x97, 0xde, 0x62, 0xf9, 0x9a, 0xf9, 0x40, 0x5b, 0xff, 0xe0, 0x22, 0x7e, 0x93, 0x65, 0x6f, 0x18, 0x1d, 0x50, 0x4f, 0x64, 0x15, 0xf7, 0xa0, }; static const unsigned char ecdh_secp384r1_2021_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2021_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2021 = { .name = "ecdh_secp384r1_2021", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2021_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2021_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2021_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 22 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2022 for ECDH, tcId is 23 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2022_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0xfd, 0x2e, 0x55, 0xec, 0x41, 0xfd, 0xfe, 0x8c, 0xab, 0xbb, 0xb7, 0xbc, 0xd8, 0x16, 0x36, 0x45, 0xa1, 0x9e, 0x9d, 0xac, 0x59, 0x63, 0x0f, 0x3f, 0xe9, 0x3b, 0x20, 0x80, 0x94, 0xff, 0x87, 0xcd, 0x46, 0x1b, 0x53, 0xce, 0xf5, 0x34, 0x82, 0xe7, 0x0e, 0x2e, 0x8e, 0xa8, 0x72, 0x00, 0xcc, 0x3f, }; static const unsigned char ecdh_secp384r1_2022_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2022_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2022 = { .name = "ecdh_secp384r1_2022", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2022_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2022_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2022_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 23 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2023 for ECDH, tcId is 24 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2023_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0x02, 0xd1, 0xaa, 0x13, 0xbe, 0x02, 0x01, 0x73, 0x54, 0x44, 0x48, 0x43, 0x27, 0xe9, 0xc9, 0xba, 0x5e, 0x61, 0x62, 0x53, 0xa6, 0x9c, 0xf0, 0xc0, 0x16, 0xc4, 0xdf, 0x7f, 0x6b, 0x00, 0x78, 0x31, 0xb9, 0xe4, 0xac, 0x30, 0x0a, 0xcb, 0x7d, 0x18, 0xf1, 0xd1, 0x71, 0x58, 0x8d, 0xff, 0x33, 0xc0, }; static const unsigned char ecdh_secp384r1_2023_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2023_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2023 = { .name = "ecdh_secp384r1_2023", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2023_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2023_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2023_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 24 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2024 for ECDH, tcId is 25 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2024_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2024_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2024_sharedsecret[] = { 0x60, 0x92, 0xa1, 0x75, 0x7d, 0xdd, 0x43, 0xa0, 0x4e, 0x18, 0x5f, 0xf9, 0x47, 0x2a, 0x0d, 0x18, 0xc7, 0xf7, 0xa7, 0xdc, 0x80, 0x2f, 0x7e, 0x05, 0x9e, 0x0c, 0x69, 0xae, 0x16, 0xc8, 0x02, 0x65, 0x17, 0x19, 0x40, 0x6e, 0x04, 0xde, 0x27, 0x65, 0x2f, 0xf8, 0x3d, 0xa4, 0xa7, 0x80, 0xef, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2024 = { .name = "ecdh_secp384r1_2024", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2024_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2024_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2024_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2025 for ECDH, tcId is 26 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2025_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2025_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2025_sharedsecret[] = { 0x89, 0xc8, 0x04, 0xcb, 0x81, 0x44, 0x33, 0x86, 0xb1, 0x85, 0xbc, 0xd9, 0xe2, 0xe6, 0xc3, 0x5e, 0xe6, 0x17, 0x7c, 0x3b, 0x90, 0x29, 0x89, 0x85, 0xc4, 0xe8, 0x1a, 0x89, 0xd5, 0x20, 0xcc, 0xeb, 0x17, 0xd7, 0x29, 0x54, 0x0e, 0x56, 0xec, 0xc3, 0x43, 0xc2, 0x6b, 0xf3, 0x14, 0xf2, 0xd0, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_2025 = { .name = "ecdh_secp384r1_2025", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2025_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2025_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2025_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2026 for ECDH, tcId is 27 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2026_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x66, 0x60, 0x04, 0x1b, 0x1c, 0x79, 0x84, 0x62, 0x0e, 0x8d, 0x7f, 0xd7, 0xcc, 0xdb, 0x50, 0xcc, 0x3b, 0xa8, 0x16, 0xda, 0x14, 0xd4, 0x1a, 0x4d, 0x8a, 0xff, 0xab, 0xa8, 0x48, 0x88, 0x67, 0xf0, 0xca, 0x5a, 0x24, 0xf8, 0xd4, 0x2d, 0xd7, 0xe4, 0x4b, 0x53, 0x0a, 0x27, 0xdc, 0x5b, 0x58, 0xda, }; static const unsigned char ecdh_secp384r1_2026_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2026_sharedsecret[] = { 0x35, 0x51, 0x31, 0x57, 0xe8, 0x04, 0xbd, 0x91, 0x8d, 0x04, 0xde, 0x20, 0x27, 0x78, 0xb8, 0x1a, 0x6f, 0xc7, 0xad, 0x8a, 0xa5, 0x41, 0xee, 0x94, 0x11, 0x6a, 0x0f, 0x18, 0x46, 0x67, 0x25, 0xd7, 0x5e, 0x71, 0xc6, 0x94, 0x2b, 0xf0, 0x44, 0xb1, 0xb0, 0xec, 0xba, 0x19, 0xdb, 0x33, 0xe0, 0xde, }; static const wycheproof_ecdh_test ecdh_secp384r1_2026 = { .name = "ecdh_secp384r1_2026", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2026_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2026_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2026_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2027 for ECDH, tcId is 28 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2027_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x14, 0x1b, 0x9e, 0xe5, 0x31, 0x0e, 0xa8, 0x17, 0x01, 0x31, 0xb6, 0x04, 0x48, 0x4a, 0x6d, 0x67, 0x7e, 0xd4, 0x25, 0x76, 0x04, 0x5b, 0x71, 0x43, 0xc0, 0x26, 0x71, 0x0a, 0xe9, 0x2b, 0x27, 0x7a, 0xfb, 0xbe, 0xa0, 0xc4, 0x45, 0x8c, 0x22, 0x0d, 0x56, 0x1e, 0x69, 0x40, 0x4d, 0xc7, 0xd8, 0x88, }; static const unsigned char ecdh_secp384r1_2027_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2027_sharedsecret[] = { 0x10, 0x20, 0x80, 0xc0, 0x47, 0x88, 0x1d, 0x19, 0xae, 0xfb, 0x01, 0xc2, 0x9c, 0x82, 0xa4, 0xfb, 0x32, 0x8a, 0x8e, 0xa6, 0xe6, 0xd6, 0xc9, 0x14, 0xaf, 0x73, 0x10, 0x05, 0x07, 0xc8, 0xee, 0x49, 0x97, 0x99, 0xaa, 0xa6, 0x46, 0xde, 0x0e, 0xa8, 0xc2, 0x72, 0x7c, 0x0b, 0x5e, 0xd2, 0x43, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2027 = { .name = "ecdh_secp384r1_2027", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2027_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2027_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2027_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2028 for ECDH, tcId is 29 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2028_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x70, 0x37, 0x03, 0x85, 0x41, 0x3d, 0x3e, 0xff, 0x6f, 0xa3, 0x40, 0x7b, 0xa2, 0x4f, 0x68, 0x2c, 0x2b, 0x01, 0xb5, 0x14, 0x45, 0xdb, 0xdf, 0x5e, 0xf7, 0xb0, 0xdd, 0x09, 0x79, 0xf1, 0x7e, 0x71, 0x3e, 0x09, 0x08, 0x15, 0x71, 0xf1, 0xe9, 0x4d, 0xfb, 0x66, 0xbf, 0x28, 0x20, 0x02, 0xf3, 0x9f, }; static const unsigned char ecdh_secp384r1_2028_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2028_sharedsecret[] = { 0xf6, 0x89, 0xf6, 0xe4, 0x75, 0xb4, 0xe1, 0x51, 0x62, 0x52, 0x1a, 0xca, 0xb4, 0x63, 0x7a, 0x3c, 0xdb, 0x9c, 0xb4, 0x2a, 0xa9, 0x2f, 0x91, 0x14, 0xb0, 0xee, 0x30, 0x0d, 0xda, 0xe8, 0x9d, 0x5e, 0xaf, 0xff, 0x34, 0x63, 0xa1, 0xf5, 0x00, 0x4a, 0x2a, 0x1b, 0xd4, 0xae, 0xff, 0xa4, 0x7b, 0x78, }; static const wycheproof_ecdh_test ecdh_secp384r1_2028 = { .name = "ecdh_secp384r1_2028", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2028_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2028_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2028_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2029 for ECDH, tcId is 30 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2029_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x11, 0x2e, 0x19, 0x1f, 0x1f, 0x78, 0xbb, 0xc5, 0x4b, 0x6c, 0xc4, 0xf0, 0xb1, 0xe5, 0x9a, 0xe8, 0xc6, 0xff, 0x1a, 0x07, 0xf5, 0x12, 0x8e, 0x41, 0xdf, 0xa2, 0x82, 0x8e, 0x1b, 0x65, 0x38, 0xd4, 0xfa, 0x2c, 0xa2, 0x39, 0x4c, 0x6a, 0xab, 0x34, 0x49, 0xdc, 0xb3, 0xfc, 0x4e, 0xb4, 0x4c, 0x09, }; static const unsigned char ecdh_secp384r1_2029_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2029_sharedsecret[] = { 0xf3, 0x48, 0x62, 0x44, 0x11, 0x9b, 0x36, 0x32, 0xfd, 0x55, 0xbe, 0x9e, 0x69, 0x51, 0xeb, 0x5d, 0x9c, 0x8c, 0x62, 0xf6, 0xa2, 0x70, 0x42, 0xf9, 0x4b, 0x92, 0x41, 0x55, 0xec, 0xfd, 0x4f, 0xf8, 0x74, 0x4b, 0xa3, 0xd2, 0x5b, 0xcf, 0x85, 0xa7, 0xb9, 0x25, 0xbd, 0x28, 0xa1, 0x2b, 0x89, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2029 = { .name = "ecdh_secp384r1_2029", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2029_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2029_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2029_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2030 for ECDH, tcId is 31 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2030_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x02, 0x8a, 0x4c, 0x8d, 0xa5, 0xa0, 0x51, 0x12, 0xfe, 0x60, 0x25, 0xef, 0x41, 0x90, 0x89, 0x69, 0xde, 0x20, 0xd0, 0x5d, 0x96, 0x68, 0xe5, 0xc8, 0x52, 0xef, 0x2d, 0x49, 0x21, 0x72, 0xdd, 0xc2, 0xa0, 0xa6, 0x22, 0xfc, 0x48, 0x81, 0x64, 0xfc, 0xc1, 0xa0, 0x76, 0xb8, 0x72, 0x94, 0x2a, 0xf2, }; static const unsigned char ecdh_secp384r1_2030_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2030_sharedsecret[] = { 0x81, 0x71, 0xb7, 0xc8, 0x0d, 0x4c, 0x90, 0xbb, 0x58, 0xae, 0x54, 0x39, 0x39, 0x21, 0xab, 0x9c, 0x5c, 0x0b, 0x31, 0x96, 0xf0, 0x45, 0xe9, 0xfe, 0x5c, 0x8b, 0x16, 0x8f, 0x0e, 0x5f, 0x6a, 0x77, 0xe1, 0xaa, 0x34, 0xec, 0xed, 0xc5, 0x48, 0x1c, 0xe5, 0x5a, 0xb3, 0x4c, 0x14, 0xe0, 0xf2, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp384r1_2030 = { .name = "ecdh_secp384r1_2030", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2030_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2030_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2030_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2031 for ECDH, tcId is 32 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2031_peerpubkey[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, 0x7b, 0x7f, 0x0f, 0x28, 0xd5, 0x5e, 0x2f, 0x3a, 0x50, 0xf1, 0xf1, 0xbe, 0xf3, 0x97, 0x68, 0x34, 0xa0, 0x5b, 0x43, 0x41, 0x8e, 0x97, 0x93, 0x03, 0xbc, 0x03, 0x63, 0xed, 0x16, 0xd2, 0xd0, 0xb4, 0x01, 0x1c, 0xc3, 0x7b, 0x3c, 0x06, 0xad, 0x73, 0x15, 0x4f, 0xae, 0xab, 0x79, 0x15, 0xcd, 0x87, }; static const unsigned char ecdh_secp384r1_2031_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2031_sharedsecret[] = { 0x1f, 0xe6, 0xfe, 0xa5, 0xf0, 0x0d, 0x30, 0x05, 0xab, 0xaa, 0xe2, 0x26, 0x7f, 0xf1, 0x8e, 0x43, 0x09, 0x15, 0x83, 0x8d, 0x87, 0x90, 0x9a, 0xb5, 0x03, 0x88, 0x5e, 0xdf, 0x38, 0xbe, 0x76, 0x18, 0xec, 0xb3, 0x21, 0xf0, 0xa4, 0xdf, 0x71, 0xb0, 0x91, 0x3f, 0xbf, 0x12, 0xc7, 0x6f, 0xc1, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2031 = { .name = "ecdh_secp384r1_2031", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2031_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2031_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2031_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2032 for ECDH, tcId is 33 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2032_peerpubkey[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2032_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2032_sharedsecret[] = { 0xf5, 0x8a, 0xdc, 0x13, 0xff, 0x99, 0x7d, 0x38, 0x38, 0x39, 0x10, 0xdb, 0x7b, 0xef, 0xb1, 0x76, 0x70, 0x39, 0x3a, 0x33, 0xd9, 0x5b, 0x04, 0x9c, 0x2a, 0xa1, 0x9d, 0x76, 0x0c, 0x8e, 0x72, 0x8e, 0xce, 0xdd, 0x32, 0x16, 0x84, 0x76, 0xb9, 0x0b, 0x26, 0xa3, 0x74, 0x2d, 0xcc, 0x12, 0x1b, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_2032 = { .name = "ecdh_secp384r1_2032", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2032_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2032_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2032_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2033 for ECDH, tcId is 34 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2033_peerpubkey[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, 0x56, 0x2e, 0xe0, 0xc5, 0x7e, 0x71, 0xd9, 0x6c, 0xef, 0xe3, 0x1b, 0x4c, 0x40, 0x45, 0xbd, 0x40, 0x86, 0xa3, 0x8e, 0x8a, 0xb9, 0xad, 0xf2, 0xd5, 0x56, 0x7b, 0xe3, 0x18, 0x05, 0x1d, 0x70, 0xf3, 0xaa, 0x68, 0xb7, 0x53, 0xf2, 0x71, 0xab, 0x03, 0x2b, 0x6a, 0xbc, 0xce, 0x91, 0x9e, 0x29, 0x62, }; static const unsigned char ecdh_secp384r1_2033_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2033_sharedsecret[] = { 0x56, 0x29, 0x96, 0x84, 0xec, 0x5c, 0xeb, 0x09, 0xba, 0x4d, 0x94, 0xd1, 0x23, 0x10, 0x05, 0xa8, 0x26, 0xc9, 0xc0, 0x8a, 0x52, 0x19, 0xc7, 0x57, 0xe0, 0x13, 0x6c, 0xbe, 0x8b, 0x64, 0x30, 0xba, 0xdd, 0x49, 0x25, 0x17, 0x2f, 0x29, 0x39, 0x89, 0x1d, 0xa7, 0xc7, 0x89, 0x38, 0x50, 0x51, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2033 = { .name = "ecdh_secp384r1_2033", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2033_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2033_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2033_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2034 for ECDH, tcId is 35 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2034_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x44, 0x80, 0xab, 0x33, 0xcb, 0x4b, 0xf7, 0xcb, 0x79, 0xc0, 0x24, 0xee, 0xad, 0xe3, 0xfd, 0x64, 0x1e, 0x2f, 0x30, 0x03, 0x69, 0x84, 0x00, 0xe8, 0x98, 0x6a, 0x73, 0x43, 0xa5, 0xda, 0x59, 0xa3, 0xb2, 0x6e, 0xea, 0x4b, 0x41, 0x76, 0xe5, 0x32, 0x39, 0x37, 0x14, 0x37, 0xd8, 0x34, 0xa1, 0xa7, }; static const unsigned char ecdh_secp384r1_2034_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2034_sharedsecret[] = { 0x19, 0x11, 0xa0, 0xee, 0x6a, 0xeb, 0xe2, 0x63, 0xfd, 0xcf, 0x3d, 0xb0, 0x73, 0xf2, 0x59, 0x8c, 0xda, 0xfa, 0xbe, 0xc2, 0x12, 0x3a, 0x2f, 0x24, 0xa2, 0x8c, 0x3d, 0x91, 0x51, 0xc8, 0x71, 0xf3, 0x2d, 0x6d, 0xc2, 0xf3, 0x1d, 0x25, 0xaf, 0x9c, 0x49, 0x8f, 0xd6, 0x8d, 0xa2, 0x3e, 0x5b, 0xef, }; static const wycheproof_ecdh_test ecdh_secp384r1_2034 = { .name = "ecdh_secp384r1_2034", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2034_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2034_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2034_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2035 for ECDH, tcId is 36 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2035_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x97, 0xda, 0x4c, 0x07, 0x51, 0xce, 0xd1, 0x6d, 0xe8, 0x0d, 0x16, 0xab, 0x7c, 0x65, 0x4a, 0x5d, 0xc2, 0x7d, 0x09, 0x26, 0x26, 0xd0, 0x86, 0x5a, 0x19, 0x2a, 0x1c, 0x5e, 0xa7, 0xc1, 0xb8, 0x8c, 0x9f, 0xca, 0xb0, 0x57, 0x94, 0x67, 0x41, 0xe4, 0x1c, 0xc2, 0x8c, 0x80, 0xec, 0x0b, 0x9a, }; static const unsigned char ecdh_secp384r1_2035_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2035_sharedsecret[] = { 0x15, 0x90, 0x06, 0x43, 0xe2, 0xe0, 0x58, 0x39, 0x76, 0x97, 0x4b, 0x05, 0xf8, 0x3c, 0x7a, 0x96, 0x61, 0x14, 0x25, 0xf7, 0xc4, 0xa6, 0xeb, 0x51, 0x91, 0x6a, 0xb9, 0x58, 0xa0, 0x37, 0xfd, 0x9c, 0xc1, 0x72, 0xbd, 0xcf, 0xff, 0x45, 0x40, 0xa2, 0xff, 0x3c, 0xe6, 0x4e, 0x65, 0x05, 0x55, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2035 = { .name = "ecdh_secp384r1_2035", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2035_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2035_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2035_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2036 for ECDH, tcId is 37 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2036_peerpubkey[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x6c, 0x70, 0x89, 0x8a, 0xe6, 0xfb, 0x31, 0xfa, 0x2f, 0x08, 0x65, 0x62, 0xaf, 0x2d, 0x10, 0x48, 0x6b, 0xa4, 0xc6, 0xfd, 0x5e, 0x41, 0xdf, 0xe4, 0xaa, 0x61, 0x59, 0x8b, 0x47, 0x07, 0xa3, 0xbc, 0x27, 0x6a, 0x62, 0xfe, 0xb1, 0xb9, 0x85, 0x57, 0xe3, 0xb1, 0x7c, 0x02, 0x5f, 0x7a, 0xdf, 0x4e, }; static const unsigned char ecdh_secp384r1_2036_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2036_sharedsecret[] = { 0x88, 0xa5, 0x44, 0xa7, 0x69, 0xd5, 0xc3, 0x4a, 0x05, 0x14, 0x16, 0xbd, 0x50, 0x9d, 0xfa, 0xc9, 0x11, 0x86, 0x3f, 0x60, 0x4c, 0x83, 0xea, 0x84, 0x4b, 0xf0, 0xe4, 0xc5, 0xc2, 0x72, 0xde, 0xc8, 0x6d, 0x05, 0x7a, 0x88, 0xb1, 0x52, 0xa9, 0x27, 0x47, 0x01, 0x93, 0x8c, 0x70, 0x59, 0x00, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2036 = { .name = "ecdh_secp384r1_2036", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2036_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2036_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2036_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2037 for ECDH, tcId is 38 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2037_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0e, 0xb1, 0x59, 0x28, 0x58, 0xb6, 0xe6, 0xe3, 0xa1, 0x99, 0xc0, 0xf3, 0xe7, 0xc5, 0xf0, 0xb4, 0xa9, 0x29, 0x15, 0x93, 0x6e, 0xfb, 0x8b, 0xc0, 0x40, 0x76, 0x80, 0xeb, 0x72, 0x74, 0xbe, 0x74, 0x22, 0x15, 0x6c, 0xe8, 0xcf, 0xc8, 0xb5, 0x05, 0xb2, 0xd9, 0x02, 0xc3, 0x99, 0x92, 0x38, 0x0f, }; static const unsigned char ecdh_secp384r1_2037_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2037_sharedsecret[] = { 0xb7, 0xdb, 0x26, 0xb2, 0x86, 0xe7, 0x52, 0x7c, 0xb1, 0xf4, 0x54, 0x78, 0x2f, 0xe5, 0x41, 0x86, 0x2f, 0xf0, 0xf8, 0xd7, 0xee, 0xd9, 0x60, 0xe2, 0x28, 0x55, 0xde, 0xb7, 0xac, 0x2a, 0x69, 0x61, 0x16, 0x68, 0xc7, 0x77, 0xc5, 0x3b, 0xb7, 0x4c, 0x2b, 0xcd, 0x40, 0xed, 0xfb, 0xf7, 0x94, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2037 = { .name = "ecdh_secp384r1_2037", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2037_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2037_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2037_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2038 for ECDH, tcId is 39 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2038_peerpubkey[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x49, 0x87, 0xab, 0xae, 0x41, 0x28, 0x09, 0xc2, 0xfa, 0x48, 0xfd, 0x23, 0xb1, 0xbd, 0xf9, 0xe6, 0x22, 0xf5, 0xa6, 0x06, 0xc4, 0x41, 0x17, 0x21, 0x5f, 0xfa, 0x61, 0xb1, 0x8e, 0xf4, 0x6e, 0x54, 0xa7, 0xfb, 0xbf, 0x11, 0xf9, 0xa6, 0xba, 0x59, 0xc9, 0x91, 0xb4, 0xae, 0x50, 0x1f, 0xed, 0xce, }; static const unsigned char ecdh_secp384r1_2038_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2038_sharedsecret[] = { 0xb1, 0xe8, 0xaa, 0xb1, 0xaa, 0x63, 0x3d, 0x98, 0xdc, 0x6b, 0x76, 0x85, 0x94, 0xe1, 0xe3, 0xed, 0xb8, 0x01, 0xa9, 0xef, 0x48, 0x3f, 0x28, 0x7c, 0x83, 0xe1, 0x97, 0x44, 0xd2, 0xad, 0x34, 0x3a, 0xd3, 0xde, 0xbd, 0xc4, 0xdc, 0x17, 0x82, 0x13, 0xad, 0x68, 0x76, 0xb5, 0x22, 0x84, 0xf5, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_2038 = { .name = "ecdh_secp384r1_2038", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2038_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2038_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2038_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2039 for ECDH, tcId is 40 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2039_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x36, 0x91, 0xfe, 0x49, 0x3d, 0x4d, 0x28, 0xbf, 0x8e, 0xe1, 0xdf, 0xec, 0x81, 0x2d, 0x6c, 0x30, 0x6e, 0xae, 0x08, 0x42, 0x91, 0x9e, 0xda, 0x6d, 0xc5, 0x25, 0xf0, 0xd4, 0x9a, 0xc2, 0xd2, 0x6a, 0x99, 0x22, 0x51, 0x91, 0x21, 0x39, 0xa2, 0x93, 0x68, 0x49, 0xf9, 0xd6, 0xfa, 0x94, 0x9a, 0x68, }; static const unsigned char ecdh_secp384r1_2039_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2039_sharedsecret[] = { 0xb0, 0xde, 0x00, 0x6f, 0x80, 0xf6, 0xf8, 0x9e, 0x4e, 0xea, 0x6e, 0x46, 0xdf, 0xe3, 0x05, 0x15, 0x30, 0x05, 0x61, 0x2d, 0x1e, 0x90, 0x31, 0x71, 0xec, 0x28, 0x86, 0x23, 0x09, 0x71, 0x96, 0x1b, 0x52, 0x02, 0xa9, 0xf3, 0x18, 0x7b, 0xda, 0xc4, 0x13, 0xac, 0x24, 0xc8, 0x36, 0xad, 0xf7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2039 = { .name = "ecdh_secp384r1_2039", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2039_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2039_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2039_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2040 for ECDH, tcId is 41 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2040_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x61, 0x58, 0x42, 0xaa, 0x06, 0xb0, 0x6f, 0x78, 0xf0, 0xa6, 0x6f, 0x7b, 0xea, 0x88, 0xd4, 0xb6, 0xee, 0x59, 0x65, 0x3e, 0xea, 0xa0, 0x0d, 0xc5, 0xe0, 0xa2, 0xb6, 0x58, 0xf9, 0x69, 0xb7, 0x1a, 0xf9, 0x0c, 0x9b, 0x4e, 0x96, 0xbd, 0x3c, 0xa3, 0x38, 0x46, 0x95, 0x5b, 0xdc, 0xcb, 0xd3, 0x59, }; static const unsigned char ecdh_secp384r1_2040_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2040_sharedsecret[] = { 0xca, 0x8c, 0xfa, 0x42, 0xc5, 0xe3, 0x74, 0x91, 0x4c, 0x14, 0xd6, 0x40, 0x2b, 0x1a, 0x99, 0x20, 0x8e, 0x47, 0xe0, 0x2e, 0xc4, 0x98, 0x18, 0x91, 0x36, 0x94, 0xea, 0x08, 0x22, 0xa2, 0xcc, 0x6c, 0x31, 0x02, 0x59, 0xa8, 0xf3, 0xab, 0x75, 0x59, 0xb9, 0x97, 0x4b, 0xc4, 0xc2, 0xfa, 0x33, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2040 = { .name = "ecdh_secp384r1_2040", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2040_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2040_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2040_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 41 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2041 for ECDH, tcId is 42 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2041_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2041_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2041_sharedsecret[] = { 0xed, 0xf0, 0x40, 0xba, 0xce, 0x18, 0xd9, 0x0b, 0xf9, 0xce, 0x72, 0x0d, 0xf2, 0xa3, 0xb3, 0x1d, 0x76, 0xd9, 0x5b, 0x7e, 0xd9, 0x53, 0x0a, 0x15, 0x9a, 0xc0, 0xb2, 0x4e, 0x82, 0xa8, 0x71, 0x03, 0x3e, 0xad, 0xa4, 0x05, 0x52, 0xf9, 0xe6, 0x06, 0xf7, 0x11, 0x5e, 0x6a, 0x78, 0x92, 0x75, 0x11, }; static const wycheproof_ecdh_test ecdh_secp384r1_2041 = { .name = "ecdh_secp384r1_2041", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2041_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2041_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2041_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 42 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2042 for ECDH, tcId is 43 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2042_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x71, 0xbd, 0x1e, 0x70, 0x0c, 0x34, 0x07, 0x5c, 0x3c, 0xad, 0xe8, 0xce, 0x29, 0xd3, 0x37, 0x24, 0xaf, 0x68, 0xa7, 0x67, 0x2b, 0x26, 0x5a, 0x4e, 0x15, 0x70, 0x55, 0x36, 0x04, 0x40, 0xab, 0x7c, 0x46, 0x1b, 0x8e, 0x9a, 0xc8, 0x02, 0x4e, 0x63, 0xa8, 0xb9, 0xc1, 0x7c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2042_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2042_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2042 = { .name = "ecdh_secp384r1_2042", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2042_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2042_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2042_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 43 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2043 for ECDH, tcId is 44 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2043_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x42, 0xe1, 0x8f, 0xf3, 0xcb, 0xf8, 0xa3, 0xc3, 0x52, 0x17, 0x31, 0xd6, 0x2c, 0xc8, 0xdb, 0x50, 0x97, 0x58, 0x98, 0xd4, 0xd9, 0xa5, 0xb1, 0xea, 0x8f, 0xaa, 0xc9, 0xfb, 0xbf, 0x54, 0x82, 0xb9, 0xe4, 0x71, 0x64, 0x37, 0xfd, 0xb1, 0x9c, 0x57, 0x46, 0x3e, 0x84, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2043_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2043_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2043 = { .name = "ecdh_secp384r1_2043", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2043_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2043_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2043_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 44 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2044 for ECDH, tcId is 45 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2044_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x57, 0xb6, 0x9a, 0x01, 0x47, 0x83, 0xdb, 0xfa, 0x49, 0x67, 0xb2, 0xf9, 0xcf, 0xa6, 0x78, 0xa6, 0xf0, 0xb6, 0xe9, 0xcf, 0xd4, 0x16, 0x48, 0xce, 0xc5, 0xb3, 0xc4, 0x98, 0xe7, 0x21, 0x52, 0xda, 0x3f, 0x82, 0xd3, 0xda, 0x2e, 0x8e, 0x9f, 0x8e, 0xf3, 0x7b, 0x11, }; static const unsigned char ecdh_secp384r1_2044_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2044_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2044 = { .name = "ecdh_secp384r1_2044", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2044_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2044_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2044_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 45 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2045 for ECDH, tcId is 46 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2045_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x80, 0xa8, 0x49, 0x65, 0xfe, 0xb8, 0x7c, 0x24, 0x05, 0xb6, 0x98, 0x4d, 0x06, 0x30, 0x59, 0x87, 0x59, 0x0f, 0x49, 0x16, 0x30, 0x2b, 0xe9, 0xb7, 0x31, 0x3a, 0x4c, 0x3a, 0x67, 0x18, 0xde, 0xac, 0x25, 0xc0, 0x7d, 0x2c, 0x25, 0xd1, 0x71, 0x61, 0x71, 0x0c, 0x84, 0xee, }; static const unsigned char ecdh_secp384r1_2045_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2045_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2045 = { .name = "ecdh_secp384r1_2045", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2045_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2045_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2045_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 46 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2046 for ECDH, tcId is 47 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2046_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2046_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2046_sharedsecret[] = { 0xc3, 0xd3, 0x84, 0x50, 0xa5, 0xdf, 0xdb, 0xe6, 0x4f, 0x4b, 0x5d, 0xa3, 0xad, 0xd4, 0xac, 0x13, 0x15, 0xf8, 0x7d, 0x11, 0x72, 0x0f, 0x29, 0xbe, 0xb6, 0xf3, 0x61, 0x6a, 0x65, 0xeb, 0xca, 0x1d, 0x56, 0x9c, 0x0f, 0xae, 0x5c, 0x5b, 0xbb, 0x6d, 0x14, 0x6b, 0xf9, 0x10, 0x3e, 0x64, 0x5b, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2046 = { .name = "ecdh_secp384r1_2046", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2046_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2046_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2046_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 47 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2047 for ECDH, tcId is 48 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2047_peerpubkey[] = { 0x18, 0x3c, 0x0d, 0x36, 0x50, 0xd3, 0x5a, 0x33, 0x42, 0x3c, 0x0d, 0x00, 0x89, 0x6a, 0xa0, 0xaf, 0x9f, 0x34, 0x02, 0x17, 0xf4, 0x20, 0x86, 0xba, 0x51, 0x20, 0x3d, 0x15, 0x8a, 0x60, 0xfa, 0x91, 0xee, 0x83, 0xb5, 0x20, 0x34, 0xee, 0x61, 0x67, 0xc6, 0x59, 0x3c, 0xe6, 0x7a, 0x31, 0xc3, 0x8a, 0x20, 0x81, 0x3d, 0x9e, 0x7e, 0xea, 0x71, 0x8d, 0x46, 0x48, 0x56, 0x50, 0x42, 0x03, 0x66, 0xdc, 0xc1, 0xcf, 0xdb, 0x5c, 0xde, 0x93, 0xea, 0xb2, 0x83, 0x08, 0xde, 0xf7, 0x58, 0xba, 0x4c, 0x3b, 0xa3, 0x86, 0x13, 0x9d, 0x4a, 0x3a, 0x3b, 0xda, 0xd6, 0x4c, 0x54, 0x19, 0x2f, 0x2b, 0xde, 0x32, }; static const unsigned char ecdh_secp384r1_2047_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2047_sharedsecret[] = { 0x18, 0x15, 0x09, 0x61, 0x85, 0x9e, 0x3e, 0xfa, 0xd6, 0x26, 0x75, 0x82, 0xf9, 0x74, 0x17, 0xf1, 0x9e, 0xd8, 0xe7, 0xe5, 0x37, 0xb6, 0x92, 0xb9, 0x10, 0x50, 0x94, 0x4a, 0x6f, 0xab, 0x80, 0x30, 0x41, 0x1d, 0xd9, 0x2e, 0x94, 0x13, 0x57, 0xc7, 0x49, 0x4a, 0xf0, 0x11, 0x88, 0x40, 0xa6, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_2047 = { .name = "ecdh_secp384r1_2047", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2047_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2047_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2047_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 48 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2048 for ECDH, tcId is 49 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2048_peerpubkey[] = { 0xce, 0x5a, 0xd8, 0x11, 0xe7, 0xeb, 0x08, 0x02, 0x4e, 0x40, 0xe3, 0x0c, 0x1c, 0xb2, 0x9c, 0xac, 0xdf, 0xc8, 0xf8, 0x09, 0xf7, 0xf0, 0x11, 0x0e, 0x6b, 0x22, 0x5c, 0x6d, 0x83, 0x36, 0xf6, 0x0c, 0x30, 0xa5, 0x73, 0xef, 0x1b, 0x91, 0x2f, 0x5f, 0xd3, 0x00, 0xb0, 0x61, 0x5e, 0x9f, 0xdf, 0x1f, 0x63, 0x1b, 0xa9, 0x74, 0xbe, 0xb9, 0x54, 0x4b, 0x4a, 0x8c, 0x99, 0x45, 0xf7, 0x2f, 0x3e, 0x5f, 0xc5, 0x69, 0x43, 0x8c, 0x43, 0x03, 0x67, 0x22, 0x79, 0xfa, 0xfa, 0x90, 0x0e, 0x53, 0x69, 0x0a, 0xff, 0x75, 0x3d, 0xa9, 0x2f, 0x40, 0x0a, 0xb6, 0x2d, 0xe8, 0x06, 0x7d, 0xa9, 0x9f, 0xe3, 0x7b, }; static const unsigned char ecdh_secp384r1_2048_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2048_sharedsecret[] = { 0xcd, 0xfc, 0x94, 0x63, 0xaf, 0x89, 0x16, 0x82, 0xc5, 0x1b, 0x6f, 0x4c, 0x96, 0x56, 0x55, 0x1c, 0x33, 0xb8, 0x07, 0x39, 0xf1, 0x77, 0x61, 0x2f, 0x27, 0xa4, 0xb1, 0xf3, 0x7c, 0x97, 0xfd, 0x80, 0x23, 0x49, 0x5b, 0x0b, 0xc1, 0x5c, 0x68, 0x8a, 0xb1, 0x9b, 0x7f, 0x98, 0x80, 0xef, 0xc8, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2048 = { .name = "ecdh_secp384r1_2048", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2048_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2048_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2048_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 49 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2049 for ECDH, tcId is 50 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2049_peerpubkey[] = { 0x42, 0xfa, 0xac, 0x2a, 0xe2, 0xbb, 0xad, 0x43, 0xa6, 0xe4, 0x5a, 0x79, 0x6f, 0x1d, 0xcc, 0x70, 0xca, 0xc4, 0x44, 0xec, 0x15, 0x70, 0xac, 0x76, 0x9d, 0x6e, 0x86, 0x20, 0x74, 0x43, 0xdb, 0x8c, 0x03, 0xa3, 0x3b, 0xa0, 0x78, 0x62, 0xfc, 0xc6, 0x19, 0xce, 0xc8, 0x06, 0xce, 0x88, 0x26, 0xc2, 0x77, 0x6e, 0x31, 0xdd, 0x08, 0x6c, 0x1b, 0x19, 0x32, 0x3b, 0x58, 0x08, 0x45, 0x53, 0xbb, 0x08, 0x25, 0xd0, 0x91, 0xff, 0xb1, 0x23, 0xd2, 0x65, 0xaf, 0xa5, 0x97, 0x0c, 0xb7, 0x2c, 0x2e, 0x68, 0x04, 0xab, 0x32, 0x78, 0x34, 0x29, 0x96, 0x41, 0xe7, 0x0f, 0xf1, 0x42, 0x91, 0x97, 0x5b, 0xb1, }; static const unsigned char ecdh_secp384r1_2049_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2049_sharedsecret[] = { 0xbe, 0xe4, 0x6c, 0x55, 0x18, 0xe8, 0xe2, 0xf5, 0xc7, 0xfa, 0x23, 0xf2, 0xab, 0x8f, 0xc4, 0x3f, 0x5a, 0x74, 0x19, 0xf7, 0x03, 0x73, 0xda, 0xa1, 0xa6, 0x74, 0x63, 0x0b, 0x16, 0x1e, 0xa3, 0x9c, 0x38, 0x1a, 0x1e, 0xaa, 0xa9, 0x0e, 0xfd, 0x34, 0xae, 0xfa, 0x9a, 0xc6, 0xed, 0xb5, 0x3c, 0x75, }; static const wycheproof_ecdh_test ecdh_secp384r1_2049 = { .name = "ecdh_secp384r1_2049", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2049_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2049_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2049_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 50 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2050 for ECDH, tcId is 51 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2050_peerpubkey[] = { 0x6a, 0xd6, 0x6f, 0x67, 0x3d, 0x83, 0x2f, 0x8a, 0x86, 0xcf, 0xd7, 0xa6, 0x6d, 0x21, 0x6d, 0x23, 0xa2, 0x65, 0x83, 0x23, 0x5c, 0x28, 0xec, 0xb7, 0xb5, 0x98, 0xff, 0x8d, 0xd1, 0x13, 0x2b, 0xc6, 0xcf, 0x0d, 0xc4, 0x6a, 0x98, 0xc8, 0x64, 0x66, 0x5f, 0x19, 0x5a, 0x99, 0x65, 0x63, 0xe5, 0x77, 0x70, 0xaa, 0xaa, 0xdc, 0xbf, 0x36, 0x53, 0x1a, 0x31, 0x8d, 0xa9, 0x51, 0x20, 0xd9, 0xa8, 0x00, 0x22, 0x6a, 0xc9, 0xfb, 0xff, 0x06, 0xf4, 0x78, 0x37, 0x91, 0x1c, 0x7b, 0x95, 0xf5, 0x18, 0x7c, 0x43, 0xef, 0x95, 0x9a, 0x4e, 0xa3, 0xe1, 0x17, 0xb8, 0x47, 0xf1, 0xdd, 0x1f, 0x8c, 0xc4, 0xb2, }; static const unsigned char ecdh_secp384r1_2050_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2050_sharedsecret[] = { 0x1e, 0xf2, 0xe4, 0x85, 0x53, 0x1e, 0x26, 0xd6, 0x9a, 0xb7, 0xc7, 0xb8, 0xc2, 0x7c, 0x1b, 0x4b, 0xe1, 0x52, 0x72, 0x89, 0x61, 0x87, 0x56, 0x81, 0x04, 0x26, 0x83, 0x67, 0x8c, 0x7b, 0xb4, 0xef, 0x8b, 0x59, 0xc7, 0xc1, 0xd6, 0x2a, 0xdb, 0x5f, 0x03, 0x4b, 0xb2, 0x88, 0x6f, 0xf6, 0x91, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2050 = { .name = "ecdh_secp384r1_2050", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2050_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2050_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2050_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 51 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2051 for ECDH, tcId is 52 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2051_peerpubkey[] = { 0xf8, 0x42, 0xe8, 0xf4, 0x71, 0x51, 0x94, 0x9b, 0x5c, 0xb6, 0xcd, 0xe4, 0xac, 0xc7, 0xa8, 0x3d, 0x90, 0x11, 0x73, 0xae, 0x31, 0x6e, 0xc4, 0x23, 0xe1, 0xc9, 0x66, 0xc8, 0xa3, 0x96, 0x38, 0xff, 0xa6, 0xde, 0xf3, 0x16, 0x0f, 0x7b, 0xea, 0x66, 0x49, 0x82, 0xb9, 0x63, 0x6f, 0x63, 0x9f, 0x72, 0x70, 0x2f, 0xe1, 0xd5, 0x93, 0x45, 0x4f, 0x73, 0xd0, 0x60, 0x50, 0x65, 0x5e, 0x28, 0xec, 0xb8, 0xcf, 0xdf, 0xe1, 0x3d, 0xcc, 0x77, 0x52, 0xbd, 0xe3, 0x8f, 0xe0, 0x07, 0x0b, 0x43, 0xbd, 0xa5, 0xe6, 0xb7, 0x20, 0x3b, 0x45, 0x07, 0x74, 0x71, 0x82, 0x5d, 0xf1, 0xb8, 0x16, 0xa4, 0x28, 0xc9, }; static const unsigned char ecdh_secp384r1_2051_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2051_sharedsecret[] = { 0xa8, 0x57, 0x3b, 0x49, 0x00, 0x63, 0x62, 0xd9, 0xb7, 0x36, 0x3c, 0x50, 0x29, 0x69, 0xb2, 0x23, 0x3b, 0x2f, 0xc5, 0x73, 0x0c, 0xf5, 0x75, 0xd4, 0x14, 0xc5, 0x0a, 0x45, 0xf0, 0xa5, 0xb4, 0xd5, 0x18, 0xbd, 0x45, 0x02, 0x88, 0xc8, 0x9e, 0x81, 0xd5, 0x17, 0x1e, 0xfa, 0xdb, 0xce, 0x59, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2051 = { .name = "ecdh_secp384r1_2051", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2051_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2051_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2051_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 52 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2052 for ECDH, tcId is 53 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2052_peerpubkey[] = { 0x64, 0xe6, 0x8d, 0x8a, 0x8e, 0x6d, 0x44, 0x14, 0x2f, 0xd0, 0xb3, 0x35, 0x32, 0x75, 0xdf, 0x4b, 0xe9, 0x5b, 0x0f, 0xf9, 0x46, 0x5d, 0x11, 0x4a, 0x18, 0xff, 0x23, 0x8f, 0xa4, 0xd3, 0x94, 0x7f, 0xf4, 0xe3, 0xfc, 0x66, 0x97, 0x0d, 0x85, 0x73, 0x1d, 0x78, 0x4b, 0x0a, 0x17, 0x15, 0x78, 0x87, 0xcb, 0x96, 0x1c, 0xf6, 0x36, 0xc0, 0xe8, 0xd4, 0xb5, 0xf8, 0xdb, 0x00, 0x60, 0xc2, 0xb6, 0x99, 0xed, 0x75, 0x0e, 0x92, 0xa0, 0x5a, 0xc4, 0xda, 0x49, 0x78, 0x0b, 0x8a, 0x48, 0x72, 0x9c, 0x6c, 0x2b, 0x86, 0x6c, 0x75, 0x75, 0x4a, 0xfb, 0x2c, 0x7c, 0x2d, 0x66, 0x1e, 0xcf, 0x64, 0x0c, 0xc2, }; static const unsigned char ecdh_secp384r1_2052_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2052_sharedsecret[] = { 0x33, 0xf9, 0xaa, 0x30, 0x84, 0x45, 0xcd, 0xc2, 0xd1, 0x59, 0xcd, 0x39, 0xc3, 0x3b, 0x49, 0x53, 0x82, 0xff, 0x8b, 0x9e, 0x21, 0xb6, 0xd1, 0xb1, 0x60, 0x57, 0x7a, 0x4b, 0x3c, 0x5d, 0xaf, 0x00, 0xb8, 0xda, 0xd3, 0xc8, 0x38, 0x52, 0xf1, 0x8f, 0x27, 0xa4, 0x40, 0x2c, 0xe9, 0x44, 0x21, 0xee, }; static const wycheproof_ecdh_test ecdh_secp384r1_2052 = { .name = "ecdh_secp384r1_2052", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2052_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2052_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2052_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 53 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2053 for ECDH, tcId is 54 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2053_peerpubkey[] = { 0x23, 0x7e, 0x5a, 0x05, 0xa3, 0xb9, 0xdd, 0x16, 0xf2, 0x7d, 0x1c, 0xc0, 0x4d, 0x16, 0xf1, 0x9e, 0xc3, 0xd2, 0x78, 0x81, 0xb9, 0x0c, 0x20, 0x49, 0xfd, 0x26, 0x65, 0xce, 0xc7, 0xea, 0xae, 0x1c, 0xac, 0xde, 0xd4, 0xe0, 0xf8, 0xab, 0xba, 0x5a, 0x64, 0xd4, 0x18, 0x3a, 0x71, 0x44, 0x9d, 0x9b, 0x74, 0x10, 0x73, 0xdc, 0x25, 0x94, 0xd0, 0x2a, 0xc9, 0xa8, 0x89, 0x88, 0xe5, 0x1d, 0x7b, 0xee, 0x22, 0x11, 0x19, 0x62, 0xf6, 0x37, 0x48, 0xef, 0xdc, 0x8c, 0x31, 0x1f, 0x63, 0x1a, 0xe8, 0x68, 0x0c, 0x89, 0x96, 0x02, 0x8d, 0xa4, 0xe9, 0x56, 0xac, 0x12, 0x84, 0xd0, 0xc0, 0x16, 0x14, 0xf5, }; static const unsigned char ecdh_secp384r1_2053_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2053_sharedsecret[] = { 0xdd, 0xf7, 0xfe, 0xa5, 0x2b, 0x92, 0xe1, 0x54, 0x4f, 0xb1, 0xc7, 0xce, 0x22, 0x74, 0x40, 0x9b, 0xca, 0x17, 0x04, 0xf4, 0x4b, 0xc0, 0xae, 0x1a, 0x6a, 0x8b, 0x38, 0x8e, 0xaf, 0x31, 0x6c, 0x90, 0xbc, 0xe9, 0x9b, 0x0c, 0x20, 0x3f, 0x75, 0x56, 0xe5, 0xba, 0xaa, 0x26, 0xc6, 0xb7, 0xad, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2053 = { .name = "ecdh_secp384r1_2053", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2053_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2053_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2053_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 54 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2054 for ECDH, tcId is 55 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2054_peerpubkey[] = { 0x81, 0x0f, 0xac, 0xe9, 0x95, 0x12, 0xbe, 0xc2, 0x59, 0xd5, 0x75, 0x22, 0x9d, 0x95, 0x86, 0x79, 0x1b, 0xdf, 0xb1, 0xb2, 0x21, 0xd2, 0x3c, 0x17, 0x38, 0xe4, 0xf9, 0xaf, 0x04, 0x98, 0xf5, 0x4b, 0x18, 0xcc, 0x0c, 0xbb, 0x01, 0xb6, 0x4c, 0xf3, 0x41, 0x1e, 0xc4, 0xb6, 0x84, 0x80, 0xdb, 0x6d, 0x6c, 0x06, 0xe6, 0x20, 0x91, 0x88, 0xf3, 0x54, 0x32, 0x3b, 0x4d, 0xb6, 0xf5, 0x4f, 0x2b, 0x1d, 0xfc, 0x5c, 0x1c, 0x3d, 0xd4, 0xfe, 0xf0, 0xcb, 0x37, 0x9a, 0x7d, 0x7e, 0xa0, 0x85, 0xac, 0xda, 0xc9, 0xe6, 0x0e, 0x04, 0xf8, 0xdb, 0x48, 0x8b, 0xe9, 0x7f, 0x81, 0xde, 0xd6, 0x6e, 0xa3, 0x3e, }; static const unsigned char ecdh_secp384r1_2054_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2054_sharedsecret[] = { 0xd2, 0x28, 0x7c, 0xcb, 0x64, 0x2a, 0x76, 0xe0, 0x01, 0x12, 0x4d, 0xba, 0x6c, 0x6c, 0xe1, 0x9e, 0x82, 0x53, 0x66, 0x90, 0xab, 0xf5, 0x42, 0x10, 0x4c, 0xbd, 0x45, 0xc8, 0x70, 0x8e, 0x46, 0x2d, 0x8c, 0xe0, 0x6e, 0x05, 0xad, 0x2a, 0x0f, 0xea, 0x4d, 0x68, 0x49, 0x2f, 0xcf, 0x37, 0x6a, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_2054 = { .name = "ecdh_secp384r1_2054", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2054_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2054_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2054_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 55 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2055 for ECDH, tcId is 56 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2055_peerpubkey[] = { 0xf0, 0xb0, 0x02, 0x71, 0xa2, 0xbd, 0xde, 0x4b, 0xdd, 0xbd, 0xac, 0x00, 0x40, 0x6a, 0xdf, 0x05, 0x6d, 0x32, 0xb9, 0xb0, 0x3f, 0x4b, 0xd2, 0x9c, 0xc6, 0x60, 0x93, 0xdf, 0x22, 0xe5, 0xda, 0x09, 0xfe, 0x48, 0xca, 0xbf, 0xc8, 0xd4, 0x4b, 0xf1, 0x36, 0xb5, 0xbe, 0x27, 0x5c, 0x7f, 0x53, 0xf6, 0x6c, 0xcd, 0xd0, 0xd0, 0x03, 0x54, 0xa3, 0x07, 0xfe, 0xa0, 0x09, 0x10, 0x70, 0xb6, 0x1f, 0xa9, 0xe2, 0xda, 0x1e, 0x2f, 0x32, 0x9f, 0xad, 0x68, 0x01, 0x34, 0x49, 0xec, 0xf4, 0x77, 0xfe, 0x33, 0x45, 0x80, 0x39, 0xba, 0xc9, 0x11, 0x10, 0x4d, 0xa6, 0x2c, 0x29, 0xc0, 0x81, 0x92, 0xa3, 0x15, }; static const unsigned char ecdh_secp384r1_2055_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2055_sharedsecret[] = { 0x36, 0x15, 0x1b, 0x0d, 0x1c, 0x1b, 0x28, 0xac, 0x06, 0x2e, 0x08, 0x29, 0xf4, 0x1b, 0xd5, 0x50, 0x44, 0xda, 0xe6, 0xf1, 0xda, 0xf3, 0x0a, 0xb3, 0xff, 0x41, 0x48, 0xa8, 0x3c, 0xcb, 0xcc, 0xf5, 0x07, 0xbe, 0xf7, 0x34, 0x0c, 0x95, 0x44, 0xf0, 0x47, 0xf5, 0x54, 0xc7, 0x12, 0x72, 0xae, 0x24, }; static const wycheproof_ecdh_test ecdh_secp384r1_2055 = { .name = "ecdh_secp384r1_2055", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2055_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2055_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2055_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 56 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2056 for ECDH, tcId is 57 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2056_peerpubkey[] = { 0xf8, 0x2c, 0xbb, 0xaf, 0x1c, 0x9b, 0x60, 0x63, 0xa1, 0xb5, 0x05, 0x58, 0x07, 0x66, 0xb1, 0x44, 0x6b, 0x6b, 0x5a, 0x99, 0x01, 0x51, 0x70, 0x3e, 0x7a, 0xfd, 0x8a, 0x31, 0x75, 0x38, 0x7f, 0xae, 0x56, 0x70, 0x81, 0x01, 0x9e, 0x0f, 0xdb, 0xa7, 0x96, 0x4e, 0xd6, 0xc0, 0xe4, 0xd0, 0xe4, 0x5e, 0xcf, 0x37, 0x9b, 0xc1, 0xed, 0xa3, 0x0c, 0xe4, 0xfa, 0x56, 0x01, 0x06, 0xb3, 0xd0, 0x9b, 0xf3, 0x8e, 0x9f, 0xcb, 0xec, 0x3e, 0xad, 0xc9, 0xe1, 0x2c, 0x56, 0x22, 0xc0, 0x11, 0x30, 0xc8, 0x70, 0xc6, 0x13, 0x64, 0x98, 0xf5, 0x2b, 0xf6, 0x2f, 0x39, 0x87, 0xde, 0xfd, 0x29, 0x4d, 0xf3, 0x3c, }; static const unsigned char ecdh_secp384r1_2056_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2056_sharedsecret[] = { 0x24, 0x51, 0xfd, 0x97, 0x98, 0x64, 0x16, 0x94, 0x62, 0xa7, 0x7d, 0x74, 0x2a, 0xdb, 0x6f, 0x45, 0x05, 0xf2, 0xdb, 0x95, 0x6d, 0x2d, 0x2d, 0xea, 0x5b, 0x05, 0xe4, 0x0f, 0x40, 0xf2, 0x65, 0x4f, 0xc1, 0x7d, 0x1c, 0xd1, 0xd3, 0xb3, 0x53, 0x32, 0x2b, 0xf0, 0xd1, 0xf3, 0xcf, 0x82, 0x8c, 0x49, }; static const wycheproof_ecdh_test ecdh_secp384r1_2056 = { .name = "ecdh_secp384r1_2056", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2056_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2056_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2056_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 57 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2057 for ECDH, tcId is 58 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2057_peerpubkey[] = { 0xcc, 0xec, 0x11, 0x70, 0x25, 0xee, 0xce, 0x29, 0xe0, 0xed, 0x07, 0x7d, 0x98, 0x67, 0x87, 0x38, 0xfd, 0x1a, 0x5c, 0xca, 0x20, 0xe4, 0x0b, 0xb3, 0x22, 0xa4, 0x05, 0x66, 0x83, 0x12, 0x43, 0xda, 0xc8, 0x06, 0x55, 0x5b, 0x85, 0x08, 0xf4, 0xea, 0xa6, 0x8b, 0xeb, 0x4e, 0x78, 0xed, 0x91, 0x76, 0x86, 0x41, 0x5f, 0x11, 0x23, 0x2c, 0x5e, 0xcb, 0x9f, 0x80, 0x5b, 0x0d, 0xcc, 0x6c, 0xe0, 0x6b, 0x57, 0xfd, 0xf4, 0xe4, 0xae, 0x4e, 0x6d, 0x82, 0x24, 0x72, 0xd6, 0x72, 0x5a, 0x9c, 0x1d, 0xa4, 0x1c, 0x2f, 0xee, 0x15, 0x19, 0x58, 0x6c, 0x50, 0x2b, 0xbb, 0x1a, 0x4c, 0xe2, 0x58, 0x28, 0x63, }; static const unsigned char ecdh_secp384r1_2057_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2057_sharedsecret[] = { 0x0b, 0x3c, 0x06, 0xfb, 0x8c, 0x7c, 0x31, 0xa9, 0x6f, 0xa6, 0xdc, 0x80, 0x25, 0x01, 0x43, 0xe3, 0x9a, 0xf9, 0xe5, 0xc2, 0x01, 0xfd, 0xbe, 0x92, 0x24, 0x57, 0x71, 0xe3, 0x45, 0xcf, 0x78, 0x7f, 0x99, 0x23, 0x4e, 0xcc, 0x1d, 0x68, 0x70, 0x59, 0x9a, 0xd5, 0x0a, 0x1c, 0xad, 0xf6, 0x87, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2057 = { .name = "ecdh_secp384r1_2057", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2057_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2057_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2057_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 58 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2058 for ECDH, tcId is 59 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2058_peerpubkey[] = { 0x1e, 0x82, 0x9b, 0xdb, 0xd8, 0xa2, 0xc1, 0x32, 0x1d, 0x04, 0x93, 0x2a, 0xac, 0xd4, 0x29, 0x72, 0xf5, 0xb2, 0xac, 0x5b, 0x6a, 0x61, 0xb0, 0x41, 0x21, 0x6c, 0xa9, 0x48, 0x1b, 0xb0, 0xda, 0x8a, 0xbf, 0x6d, 0x5c, 0x1b, 0x63, 0xe8, 0x68, 0x47, 0x9f, 0x88, 0xd9, 0x13, 0x45, 0xcb, 0x91, 0x53, 0xfc, 0xa2, 0xc5, 0x69, 0x8f, 0xd5, 0xb4, 0x04, 0xc9, 0xbc, 0x12, 0x5b, 0xdc, 0x3c, 0x60, 0x8f, 0xe3, 0x85, 0x36, 0x7e, 0xe2, 0xb6, 0x84, 0x08, 0xe9, 0x59, 0xb8, 0x3e, 0xc8, 0xbc, 0x3e, 0xc1, 0xe0, 0x5a, 0x6f, 0xb9, 0x84, 0xfe, 0xdb, 0x25, 0x65, 0x74, 0x88, 0x5f, 0x5d, 0xd9, 0x89, 0x40, }; static const unsigned char ecdh_secp384r1_2058_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2058_sharedsecret[] = { 0x53, 0x88, 0x90, 0x5a, 0xee, 0x7f, 0x82, 0x6b, 0x9a, 0x5b, 0x46, 0xfa, 0xef, 0xfe, 0x26, 0xd4, 0x9f, 0x85, 0x66, 0xc7, 0xa8, 0xe8, 0xaf, 0x5a, 0x16, 0x53, 0xfc, 0xfb, 0xff, 0x7c, 0x0d, 0xfd, 0xe5, 0x66, 0xf0, 0x43, 0x40, 0x12, 0x48, 0x48, 0x6f, 0xf9, 0x1c, 0x39, 0x0f, 0x5c, 0xc6, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_2058 = { .name = "ecdh_secp384r1_2058", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2058_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2058_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2058_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 59 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2059 for ECDH, tcId is 60 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2059_peerpubkey[] = { 0x4d, 0xd1, 0xe1, 0xb4, 0x54, 0x81, 0x4f, 0x3b, 0xe1, 0xc6, 0x2e, 0xb8, 0x7c, 0x12, 0x07, 0x72, 0xc2, 0x06, 0x2a, 0x3d, 0x7e, 0x54, 0x61, 0xd5, 0x55, 0x4b, 0x39, 0x63, 0xa9, 0xfb, 0x11, 0x90, 0xdb, 0x96, 0x56, 0x95, 0xca, 0xf5, 0x55, 0xa4, 0x5a, 0xe2, 0x5b, 0xe7, 0x3e, 0x47, 0xc3, 0x74, 0x5b, 0xaa, 0x93, 0xfe, 0x2b, 0xfb, 0x09, 0x4f, 0xe7, 0x18, 0xc8, 0xc9, 0xbd, 0x8e, 0x1e, 0x6e, 0x86, 0xcd, 0x62, 0x9d, 0xca, 0x0b, 0xb9, 0x1e, 0xe9, 0x34, 0xe9, 0x34, 0x69, 0xd4, 0xff, 0xf3, 0x2a, 0x41, 0xdf, 0xd7, 0x8c, 0x27, 0xba, 0x53, 0x4a, 0x3d, 0x59, 0x70, 0xc3, 0x88, 0xef, 0xfb, }; static const unsigned char ecdh_secp384r1_2059_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2059_sharedsecret[] = { 0xb9, 0x20, 0x29, 0x9b, 0xa2, 0x60, 0x75, 0xd2, 0x64, 0x7c, 0xcb, 0x97, 0x8d, 0x15, 0xa5, 0x4e, 0xf4, 0x83, 0x30, 0xdb, 0x3a, 0x87, 0x94, 0xd8, 0x68, 0xae, 0x02, 0xbf, 0x15, 0x2b, 0x3c, 0x24, 0xff, 0xa9, 0x66, 0x89, 0x3e, 0xa9, 0xeb, 0x5d, 0x3c, 0xce, 0x83, 0xe0, 0x23, 0x9b, 0xe0, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2059 = { .name = "ecdh_secp384r1_2059", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2059_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2059_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2059_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 60 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2060 for ECDH, tcId is 61 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2060_peerpubkey[] = { 0x94, 0x71, 0xab, 0xf4, 0xfd, 0x1b, 0x89, 0xd1, 0x4d, 0xf2, 0x32, 0x5c, 0xb0, 0xa6, 0xbc, 0x92, 0xe7, 0x3c, 0x8e, 0xc8, 0xe0, 0x6c, 0x47, 0xb0, 0x97, 0x8d, 0x93, 0xe9, 0x22, 0x5a, 0xdf, 0x08, 0x9d, 0x3e, 0xe4, 0xe2, 0x5c, 0x22, 0x2b, 0x60, 0xd0, 0x21, 0x99, 0xc1, 0xb5, 0x80, 0x04, 0xc1, 0xd1, 0xb3, 0x5b, 0xc1, 0x47, 0x5c, 0xfc, 0xf3, 0xe3, 0xa6, 0x11, 0x65, 0x93, 0xe2, 0xca, 0x5a, 0x70, 0x34, 0x41, 0x27, 0xad, 0x90, 0x7a, 0x4a, 0xa1, 0xd0, 0xc6, 0x61, 0x39, 0xf2, 0x87, 0xa7, 0xfe, 0x48, 0xce, 0xa5, 0x84, 0x4a, 0x20, 0xdf, 0x5a, 0x68, 0x8b, 0x89, 0x21, 0x1f, 0x19, 0xc3, }; static const unsigned char ecdh_secp384r1_2060_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2060_sharedsecret[] = { 0x70, 0x54, 0x21, 0xb3, 0x66, 0x18, 0x11, 0x5f, 0xcc, 0xb7, 0xce, 0x6d, 0xb8, 0x57, 0x5f, 0xc4, 0xb3, 0xf0, 0xa2, 0x78, 0x0c, 0xe0, 0x2a, 0x34, 0x87, 0xe4, 0x05, 0x5d, 0xd0, 0xd5, 0x18, 0x34, 0x00, 0x62, 0x70, 0xe9, 0x92, 0xe0, 0xaf, 0xaa, 0x4c, 0x7c, 0xe0, 0xf6, 0x99, 0xf7, 0xfe, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2060 = { .name = "ecdh_secp384r1_2060", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2060_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2060_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2060_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 61 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2061 for ECDH, tcId is 62 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2061_peerpubkey[] = { 0x97, 0x04, 0x6c, 0x44, 0x38, 0xb0, 0x40, 0x31, 0x5b, 0xe3, 0x9e, 0xe3, 0x86, 0x9f, 0x3e, 0x87, 0x11, 0xc3, 0x19, 0x67, 0x58, 0x47, 0x6f, 0x2b, 0x4d, 0x90, 0xcd, 0x43, 0x99, 0x66, 0x5c, 0x8c, 0x5c, 0x87, 0xf9, 0xcf, 0x64, 0x28, 0x9c, 0x2b, 0xb0, 0x11, 0x66, 0x74, 0x2e, 0x1a, 0xe0, 0x36, 0xb2, 0x81, 0x92, 0x2e, 0x88, 0x72, 0xb4, 0x8b, 0x7d, 0x3e, 0x13, 0x84, 0xab, 0x4d, 0x0a, 0x92, 0xc6, 0x02, 0xac, 0xe7, 0xdf, 0x3a, 0x93, 0xa4, 0x7d, 0xc5, 0x0c, 0x8c, 0x2e, 0x5e, 0x8a, 0x87, 0x5d, 0x2d, 0x92, 0x7f, 0x72, 0x01, 0xce, 0x11, 0xfd, 0x8d, 0xf8, 0x12, 0xba, 0xa1, 0xe4, 0xf8, }; static const unsigned char ecdh_secp384r1_2061_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2061_sharedsecret[] = { 0x3c, 0x51, 0x00, 0x06, 0xf8, 0x65, 0x8f, 0x3f, 0xa4, 0x14, 0xfe, 0xf9, 0x72, 0x3d, 0x63, 0x4a, 0x17, 0x9d, 0xb7, 0xaa, 0xf0, 0xb7, 0x06, 0x8b, 0x76, 0x96, 0xcf, 0xf9, 0x3f, 0x88, 0xe0, 0x41, 0x36, 0xdf, 0xda, 0xc6, 0x83, 0x49, 0x78, 0x1b, 0xf0, 0x5a, 0x78, 0x7a, 0xe1, 0x9e, 0x90, 0x21, }; static const wycheproof_ecdh_test ecdh_secp384r1_2061 = { .name = "ecdh_secp384r1_2061", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2061_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2061_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2061_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 62 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2062 for ECDH, tcId is 63 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2062_peerpubkey[] = { 0x8e, 0x3d, 0xae, 0x50, 0x0f, 0xe2, 0xc6, 0x45, 0xaa, 0xb1, 0x53, 0x79, 0x17, 0x06, 0x82, 0x50, 0x31, 0x54, 0xaf, 0x1f, 0xd0, 0xa2, 0x1f, 0xfd, 0x2e, 0x34, 0xf0, 0x50, 0x1c, 0x51, 0x85, 0x07, 0xe0, 0xeb, 0xf4, 0x5d, 0x7c, 0xb8, 0x65, 0x3f, 0xd5, 0x7b, 0xf1, 0xf8, 0x94, 0xf2, 0xa5, 0x52, 0xcb, 0x69, 0xaf, 0x7e, 0x00, 0x9d, 0x43, 0xbd, 0x6e, 0x68, 0x8b, 0xf2, 0x8f, 0x5e, 0x28, 0x15, 0xf3, 0xc9, 0xf4, 0xfa, 0xb1, 0xd8, 0x29, 0xd2, 0x9f, 0x05, 0x31, 0x2b, 0xad, 0x99, 0xd7, 0x5c, 0x25, 0x18, 0xd2, 0xa3, 0x01, 0xa7, 0x4d, 0x5e, 0xce, 0xe1, 0x33, 0x35, 0x82, 0xd7, 0x9c, 0x14, }; static const unsigned char ecdh_secp384r1_2062_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2062_sharedsecret[] = { 0x24, 0x89, 0x67, 0xaf, 0xa3, 0x63, 0x86, 0xcf, 0xea, 0xa2, 0x21, 0x48, 0x47, 0xc7, 0xc8, 0xc3, 0x2a, 0x89, 0x1a, 0x24, 0x38, 0xb8, 0x36, 0x65, 0xf9, 0x9e, 0x5f, 0xe7, 0xab, 0x6d, 0xd8, 0x63, 0x53, 0xff, 0x7a, 0x8b, 0x15, 0xd4, 0xbe, 0x4e, 0x12, 0x77, 0xc7, 0x21, 0xd6, 0x9c, 0xbb, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_2062 = { .name = "ecdh_secp384r1_2062", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2062_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2062_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2062_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 63 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2063 for ECDH, tcId is 64 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2063_peerpubkey[] = { 0x1f, 0xca, 0x8f, 0x96, 0x95, 0x65, 0x0a, 0x02, 0xd6, 0xfb, 0x80, 0x49, 0xb1, 0x53, 0x1a, 0x37, 0x83, 0xe4, 0x49, 0xdf, 0x75, 0xa9, 0x8d, 0x45, 0x99, 0x9f, 0xb9, 0x85, 0x7c, 0x3e, 0x75, 0x62, 0x19, 0xd4, 0x8b, 0x2c, 0x84, 0xd5, 0x14, 0x3f, 0x08, 0xc2, 0xab, 0x09, 0x7b, 0x36, 0x5a, 0x33, 0x45, 0xaa, 0x19, 0x7e, 0x10, 0xc6, 0x59, 0xd9, 0xc5, 0x3f, 0xa7, 0x54, 0xf1, 0x12, 0xd7, 0x79, 0x73, 0x10, 0x7e, 0xe3, 0x5c, 0x3a, 0xee, 0x3b, 0x0b, 0x13, 0x22, 0xb3, 0x62, 0xfa, 0x08, 0x49, 0x7c, 0x09, 0x7c, 0x18, 0x81, 0x93, 0x4e, 0x36, 0xce, 0xbd, 0x5e, 0x18, 0xe9, 0x24, 0x0c, 0xb6, }; static const unsigned char ecdh_secp384r1_2063_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2063_sharedsecret[] = { 0xa4, 0x54, 0xff, 0x4d, 0x94, 0x45, 0x87, 0xa1, 0x88, 0xe7, 0xeb, 0xac, 0xcd, 0x97, 0x64, 0x9a, 0xb0, 0xcf, 0x83, 0xf8, 0xf8, 0xd1, 0x9b, 0x36, 0x53, 0xa2, 0xe6, 0x21, 0x20, 0x6d, 0x39, 0x92, 0x86, 0x8b, 0x5a, 0x57, 0x65, 0xd1, 0xfa, 0x76, 0x2f, 0x0e, 0x3b, 0x01, 0x61, 0xa6, 0x80, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2063 = { .name = "ecdh_secp384r1_2063", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2063_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2063_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2063_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 64 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2064 for ECDH, tcId is 65 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2064_peerpubkey[] = { 0x73, 0x1b, 0xa7, 0x84, 0xe2, 0xed, 0x21, 0xf4, 0xa4, 0xa2, 0xb4, 0xdd, 0x48, 0x77, 0xae, 0xc2, 0xfc, 0xd5, 0x90, 0x31, 0xf8, 0x01, 0x93, 0xb9, 0x55, 0x8b, 0xbc, 0x1c, 0xf7, 0xfe, 0x67, 0x04, 0x46, 0x94, 0x43, 0xfc, 0x7f, 0x39, 0x8e, 0x8b, 0xec, 0x40, 0x86, 0xf8, 0x8a, 0xa7, 0x6a, 0xa2, 0x6c, 0x38, 0x9a, 0xcf, 0xd5, 0x1f, 0x69, 0xc8, 0x9a, 0x15, 0x3b, 0xfa, 0xdb, 0x5d, 0x70, 0x3a, 0x36, 0xcb, 0x12, 0xa4, 0xd8, 0x5f, 0x55, 0x17, 0xcf, 0x46, 0x2b, 0xf5, 0xd0, 0x2a, 0xbf, 0x7d, 0x19, 0x72, 0x2f, 0x48, 0x0e, 0xaf, 0x1a, 0x26, 0x17, 0xcb, 0xa1, 0x94, 0x1e, 0x1c, 0x76, 0xb6, }; static const unsigned char ecdh_secp384r1_2064_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2064_sharedsecret[] = { 0x99, 0x78, 0x0e, 0xd2, 0x15, 0xdc, 0x41, 0x7f, 0x79, 0x8c, 0x24, 0x32, 0x7c, 0x3c, 0xaf, 0x22, 0xf3, 0x68, 0x5e, 0x5c, 0xf2, 0xab, 0x83, 0x5f, 0xc5, 0x4b, 0x42, 0x81, 0x17, 0xb7, 0xd1, 0x7f, 0x0f, 0xeb, 0x63, 0xf1, 0x75, 0x54, 0x68, 0x15, 0x7f, 0x32, 0x37, 0xb8, 0x11, 0x7d, 0xff, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2064 = { .name = "ecdh_secp384r1_2064", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2064_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2064_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2064_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 65 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2065 for ECDH, tcId is 66 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2065_peerpubkey[] = { 0x87, 0x25, 0xcb, 0x75, 0x4b, 0x55, 0x27, 0xa3, 0xb0, 0x53, 0xd6, 0x3e, 0x0c, 0x4b, 0x09, 0x7e, 0x4c, 0x34, 0xc5, 0xd7, 0x31, 0xab, 0x5c, 0xd4, 0x72, 0x86, 0x50, 0xa6, 0x18, 0xb4, 0xde, 0xd4, 0xbf, 0x92, 0x14, 0xd7, 0x93, 0xad, 0x74, 0xcf, 0xc4, 0x70, 0xe3, 0x5c, 0x54, 0x93, 0xa4, 0xb4, 0x20, 0xa3, 0xc5, 0x00, 0x49, 0xa4, 0x27, 0x91, 0x72, 0x1b, 0xc5, 0x0d, 0x5f, 0x60, 0x8c, 0xb2, 0x72, 0xb6, 0x0a, 0x55, 0x45, 0xdb, 0x06, 0x08, 0x85, 0x5b, 0xac, 0x8f, 0xbf, 0xa9, 0x39, 0x90, 0xd6, 0xb8, 0x0e, 0x30, 0x41, 0x77, 0x3e, 0x10, 0x93, 0x7d, 0x83, 0x70, 0x10, 0xca, 0xe6, 0x40, }; static const unsigned char ecdh_secp384r1_2065_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2065_sharedsecret[] = { 0xd7, 0x38, 0xb7, 0x37, 0x3f, 0xe9, 0x78, 0xf2, 0x7b, 0x19, 0x4f, 0x69, 0xed, 0xd5, 0xc4, 0x21, 0xb9, 0x89, 0x22, 0xf5, 0xe3, 0x13, 0xb7, 0x68, 0x59, 0xa9, 0x35, 0x7a, 0x1f, 0xaf, 0x42, 0xed, 0x0e, 0x06, 0xdc, 0x13, 0xd5, 0x58, 0x43, 0x35, 0x75, 0x38, 0xce, 0x7f, 0x41, 0x27, 0xce, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_2065 = { .name = "ecdh_secp384r1_2065", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2065_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2065_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2065_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 66 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2066 for ECDH, tcId is 67 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2066_peerpubkey[] = { 0x9c, 0x7a, 0x59, 0x4e, 0xaf, 0x2d, 0xdf, 0x3c, 0x8a, 0xb6, 0xc6, 0xe9, 0x4f, 0x1e, 0xc0, 0x11, 0xda, 0xc9, 0xfa, 0x42, 0xbd, 0x27, 0xdf, 0x2f, 0xbe, 0x40, 0x2a, 0xc9, 0x49, 0xd3, 0xa2, 0xc6, 0x76, 0xb6, 0x84, 0xa2, 0x4c, 0x99, 0xf7, 0xd1, 0xb7, 0xe8, 0x9e, 0x9f, 0x8a, 0x06, 0x34, 0xeb, 0x3b, 0x83, 0x09, 0x5c, 0x7a, 0x1c, 0xd6, 0xaa, 0x93, 0x32, 0x46, 0x0e, 0xcb, 0xf2, 0x57, 0xf7, 0xaf, 0xa4, 0x49, 0x60, 0x8b, 0x9e, 0x0d, 0xdd, 0x15, 0x29, 0x2b, 0x87, 0x5a, 0xd2, 0xfd, 0x06, 0x9d, 0xc9, 0x27, 0xce, 0x00, 0xa4, 0xb5, 0xe6, 0x79, 0x33, 0x80, 0x23, 0xbd, 0x3a, 0x4e, 0x6c, }; static const unsigned char ecdh_secp384r1_2066_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2066_sharedsecret[] = { 0xd9, 0xcc, 0x86, 0x1d, 0xb3, 0x05, 0xb0, 0x4a, 0x27, 0x3d, 0x6b, 0x55, 0x34, 0x8e, 0xf9, 0xf0, 0xa0, 0xa2, 0xae, 0xdf, 0x8b, 0x3d, 0x04, 0x1a, 0x19, 0xe2, 0x63, 0xed, 0x6a, 0xe2, 0xe0, 0x1e, 0x43, 0x9a, 0x46, 0x82, 0x30, 0x98, 0xf2, 0xaa, 0xa4, 0x86, 0x7d, 0x4f, 0x08, 0x89, 0x1e, 0x36, }; static const wycheproof_ecdh_test ecdh_secp384r1_2066 = { .name = "ecdh_secp384r1_2066", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2066_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2066_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2066_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 67 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2067 for ECDH, tcId is 68 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2067_peerpubkey[] = { 0x21, 0xb1, 0xaa, 0x35, 0x9d, 0x72, 0xff, 0x33, 0xa8, 0x4e, 0xc9, 0x62, 0x14, 0x83, 0xe6, 0x58, 0x81, 0xd4, 0xfa, 0x8c, 0xe6, 0xdf, 0x36, 0x69, 0xe0, 0xab, 0xbb, 0x9f, 0x6b, 0xf8, 0xd0, 0xee, 0x3d, 0x98, 0x62, 0xa7, 0xdf, 0xb4, 0x52, 0x13, 0xe3, 0x9f, 0xfa, 0xc7, 0xb3, 0xe1, 0xed, 0x87, 0x1f, 0x5e, 0x59, 0xcd, 0xa5, 0xa5, 0xb8, 0x61, 0xab, 0x3e, 0xb8, 0x6c, 0xaa, 0x7c, 0x6e, 0x85, 0x93, 0x36, 0x76, 0xef, 0xe6, 0x60, 0xdf, 0xf8, 0xac, 0x56, 0x25, 0xec, 0x8a, 0x76, 0x30, 0xa9, 0xcb, 0xa9, 0xeb, 0x3f, 0xc1, 0x49, 0xd3, 0xef, 0x37, 0x9d, 0x4a, 0x5e, 0xc1, 0x74, 0xd2, 0x37, }; static const unsigned char ecdh_secp384r1_2067_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2067_sharedsecret[] = { 0xc5, 0x92, 0x81, 0xd0, 0x9f, 0x44, 0xf6, 0x79, 0x29, 0x4a, 0xee, 0x56, 0x68, 0xeb, 0x53, 0x8d, 0x50, 0x3e, 0xf2, 0x5a, 0xac, 0x59, 0x16, 0x14, 0xb4, 0x6f, 0x52, 0x5d, 0x8c, 0x0b, 0x10, 0x9a, 0xb1, 0x29, 0x67, 0x49, 0x63, 0x50, 0x0a, 0xd7, 0xb6, 0x26, 0x89, 0x41, 0xa2, 0x8c, 0x00, 0x67, }; static const wycheproof_ecdh_test ecdh_secp384r1_2067 = { .name = "ecdh_secp384r1_2067", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2067_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2067_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2067_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 68 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2068 for ECDH, tcId is 69 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2068_peerpubkey[] = { 0xe1, 0xad, 0x2b, 0x68, 0xfa, 0x69, 0x45, 0x65, 0x74, 0xde, 0x95, 0xb1, 0xe0, 0x48, 0xb0, 0x71, 0x50, 0x09, 0x40, 0x9e, 0xf5, 0xcc, 0x27, 0x0b, 0xe5, 0x1f, 0xdd, 0x40, 0xb4, 0xf6, 0x5b, 0x1a, 0xde, 0x67, 0x93, 0x8a, 0x6a, 0x6d, 0x72, 0x5b, 0x01, 0x31, 0x0f, 0x22, 0x53, 0xa3, 0x8c, 0xf4, 0x44, 0xf7, 0x26, 0xb3, 0xeb, 0x5c, 0x5d, 0xdc, 0x25, 0x7d, 0x6d, 0x9b, 0xda, 0x9b, 0xfa, 0x60, 0xbe, 0xc6, 0xa0, 0x7f, 0xe0, 0x7d, 0xae, 0x96, 0x75, 0x11, 0x31, 0x43, 0x70, 0xd3, 0xa4, 0xe0, 0x41, 0xc3, 0x4f, 0x1c, 0xb4, 0x9f, 0xe6, 0xb7, 0x06, 0x63, 0xf0, 0x20, 0x48, 0x8e, 0x98, 0xa8, }; static const unsigned char ecdh_secp384r1_2068_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2068_sharedsecret[] = { 0x9e, 0xb7, 0x0f, 0x89, 0x49, 0x86, 0x1c, 0x30, 0xf2, 0x45, 0x69, 0x90, 0xab, 0xe4, 0xd3, 0x45, 0x55, 0x00, 0x08, 0xb8, 0x53, 0x19, 0x01, 0x52, 0x13, 0x61, 0xaa, 0xa1, 0x72, 0x96, 0xdb, 0xca, 0x06, 0xfb, 0x3c, 0x87, 0xe8, 0xf4, 0x59, 0x2b, 0x7d, 0xc5, 0xd1, 0x99, 0x7c, 0x58, 0xc0, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_2068 = { .name = "ecdh_secp384r1_2068", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2068_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2068_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2068_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 69 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2069 for ECDH, tcId is 70 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2069_peerpubkey[] = { 0x0b, 0xad, 0x67, 0xea, 0x0c, 0xca, 0x96, 0x0e, 0xd3, 0xea, 0x05, 0x88, 0xd5, 0xee, 0xef, 0x36, 0x6c, 0x24, 0x34, 0x2a, 0xb3, 0xe4, 0x66, 0x02, 0x89, 0x1d, 0x1a, 0xdb, 0x4d, 0x85, 0xd8, 0x0d, 0xd2, 0x42, 0x96, 0x2c, 0x56, 0x54, 0xbd, 0x6a, 0xf5, 0x91, 0x3a, 0xea, 0xef, 0xab, 0x27, 0xad, 0x9a, 0x07, 0xb4, 0x19, 0x71, 0x80, 0xc9, 0x86, 0x9a, 0xf7, 0x95, 0xf6, 0x96, 0xfd, 0xf6, 0xf2, 0x5c, 0xdc, 0x66, 0x46, 0x9f, 0x4c, 0xa7, 0xca, 0x89, 0xc5, 0xc9, 0x04, 0x63, 0x6d, 0x85, 0xf6, 0xb9, 0xa1, 0x9e, 0x7b, 0xcf, 0x05, 0x40, 0x83, 0x1c, 0xa7, 0xaa, 0x40, 0x44, 0x6d, 0xd8, 0xe1, }; static const unsigned char ecdh_secp384r1_2069_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2069_sharedsecret[] = { 0x45, 0xb0, 0x2f, 0xd4, 0xdd, 0x76, 0x49, 0x67, 0x01, 0xbe, 0x3b, 0x37, 0xe6, 0x32, 0x05, 0x6c, 0xf7, 0xf6, 0x3e, 0x98, 0x08, 0xf6, 0x27, 0xfa, 0x85, 0x8e, 0xec, 0xc5, 0xba, 0xc1, 0x6a, 0x01, 0xa9, 0x49, 0x74, 0x1b, 0x4d, 0xe1, 0x51, 0xfe, 0x35, 0xe7, 0x74, 0xc6, 0xd1, 0xe3, 0x89, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2069 = { .name = "ecdh_secp384r1_2069", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2069_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2069_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2069_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 70 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2070 for ECDH, tcId is 71 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2070_peerpubkey[] = { 0x2c, 0x40, 0x69, 0xbc, 0x80, 0x78, 0x23, 0x6e, 0xb2, 0x3a, 0x8c, 0x4d, 0x57, 0x5b, 0xde, 0x9b, 0x53, 0x7b, 0x13, 0xb7, 0x99, 0x89, 0x68, 0x8c, 0x40, 0xd8, 0x9d, 0x89, 0x8a, 0x8c, 0x29, 0xbd, 0x7a, 0xc6, 0x17, 0x45, 0x79, 0x7b, 0x7e, 0xe5, 0x5a, 0xca, 0x60, 0xea, 0x7d, 0x6c, 0x2a, 0x84, 0x30, 0xfc, 0xfb, 0xed, 0x18, 0xa2, 0x50, 0x46, 0x61, 0xe0, 0x25, 0x3c, 0x43, 0xe4, 0x7b, 0xe0, 0x19, 0x40, 0xe8, 0x1f, 0xcb, 0x2d, 0x65, 0xa5, 0xe5, 0x01, 0x11, 0x19, 0x78, 0x05, 0x99, 0x49, 0xc5, 0xd2, 0x5b, 0x0b, 0x60, 0xde, 0x78, 0x21, 0x47, 0x6b, 0x88, 0xa8, 0x34, 0x2a, 0x0b, 0xdf, }; static const unsigned char ecdh_secp384r1_2070_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2070_sharedsecret[] = { 0x6c, 0xe9, 0xbf, 0xfb, 0x89, 0x01, 0xba, 0xa8, 0x01, 0xd1, 0xb1, 0x9e, 0x92, 0xb5, 0xe5, 0xf4, 0x7f, 0x5b, 0xee, 0x10, 0xc1, 0x5f, 0xe4, 0x4b, 0x82, 0x09, 0x97, 0x75, 0x72, 0xcc, 0x8b, 0xd7, 0x90, 0x2c, 0xcf, 0xc0, 0xd7, 0xae, 0x98, 0xf6, 0xb5, 0x8b, 0xb8, 0x7f, 0x31, 0x6a, 0x57, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_2070 = { .name = "ecdh_secp384r1_2070", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2070_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2070_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2070_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 71 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2071 for ECDH, tcId is 72 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2071_peerpubkey[] = { 0x44, 0xbc, 0x1c, 0xb2, 0xd4, 0x2f, 0xf9, 0x74, 0xe7, 0x2b, 0xc8, 0x83, 0xdf, 0xf7, 0x84, 0xe8, 0x69, 0x78, 0x50, 0x1f, 0x91, 0x8e, 0xef, 0x4d, 0x96, 0xd6, 0xe5, 0x24, 0x2d, 0xa6, 0xf5, 0x65, 0x1a, 0x29, 0xcf, 0x52, 0x05, 0xc3, 0xdc, 0x3b, 0xe3, 0x33, 0x32, 0xfa, 0x2d, 0xef, 0xc3, 0x47, 0x88, 0xf8, 0x8f, 0x54, 0x9e, 0xd7, 0x87, 0x32, 0x06, 0x30, 0x20, 0xdd, 0x3f, 0xcb, 0x87, 0x25, 0x15, 0xb2, 0x5e, 0x08, 0x87, 0x00, 0xe3, 0xea, 0xcb, 0x92, 0x5d, 0xe7, 0x67, 0xe9, 0xed, 0xf6, 0xe8, 0x9f, 0x08, 0x9c, 0x4f, 0x9e, 0x0f, 0x4d, 0x88, 0x46, 0x98, 0x03, 0x93, 0x66, 0x7f, 0x6d, }; static const unsigned char ecdh_secp384r1_2071_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2071_sharedsecret[] = { 0xc6, 0xdd, 0x2d, 0x37, 0x2d, 0x5a, 0x51, 0x73, 0xac, 0x63, 0xf6, 0xd5, 0xab, 0x5d, 0xec, 0x97, 0x2e, 0x8a, 0xe4, 0x4d, 0x56, 0x6c, 0x7f, 0x82, 0x6b, 0xeb, 0x7f, 0x26, 0x93, 0xe2, 0x00, 0xc4, 0x70, 0xdd, 0xed, 0xb1, 0xc9, 0x92, 0x9c, 0x11, 0xed, 0x86, 0xd1, 0x35, 0xf4, 0x4c, 0x97, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2071 = { .name = "ecdh_secp384r1_2071", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2071_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2071_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2071_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 72 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2072 for ECDH, tcId is 73 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2072_peerpubkey[] = { 0xb8, 0x24, 0xeb, 0x72, 0xc4, 0x3e, 0xdb, 0x5b, 0x3c, 0xe9, 0xaf, 0x94, 0xeb, 0xbd, 0x33, 0xb4, 0x46, 0xb4, 0xa7, 0x23, 0x3b, 0x89, 0xaf, 0xfe, 0x1c, 0xfa, 0x3b, 0xeb, 0x53, 0xcd, 0x19, 0x9f, 0xb1, 0x19, 0xa3, 0x56, 0x77, 0x2b, 0xfe, 0xc1, 0x78, 0xc0, 0x3b, 0x07, 0x7d, 0xf1, 0x2f, 0x53, 0xf9, 0x98, 0x51, 0xfb, 0xeb, 0x99, 0x71, 0xff, 0xcf, 0x29, 0xad, 0x61, 0xba, 0x48, 0x4b, 0xd0, 0x58, 0x00, 0x36, 0xdc, 0xaa, 0x59, 0xf4, 0x07, 0xbc, 0x88, 0xa4, 0x71, 0xcd, 0x86, 0x2b, 0x80, 0xa1, 0x63, 0xc9, 0x1a, 0x6f, 0x64, 0x60, 0x2b, 0x6f, 0x71, 0x39, 0x59, 0xb2, 0xf6, 0xc2, 0xfd, }; static const unsigned char ecdh_secp384r1_2072_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2072_sharedsecret[] = { 0x02, 0x99, 0xb7, 0xfc, 0x3e, 0x55, 0x06, 0x92, 0x6f, 0xea, 0x66, 0xd2, 0x0f, 0x65, 0xb9, 0x79, 0x1f, 0xb6, 0xc8, 0x8c, 0x71, 0x79, 0xf7, 0xd4, 0x70, 0x1d, 0x68, 0xc1, 0x34, 0x27, 0xab, 0x56, 0xac, 0x0f, 0x9e, 0x1d, 0xa9, 0x6c, 0x1d, 0x5f, 0x3d, 0x1a, 0x65, 0xff, 0x31, 0x22, 0xc1, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_2072 = { .name = "ecdh_secp384r1_2072", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2072_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2072_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2072_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 73 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2073 for ECDH, tcId is 74 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2073_peerpubkey[] = { 0x92, 0x70, 0xb8, 0xce, 0xfb, 0x61, 0xa5, 0xd5, 0x2f, 0xbb, 0x5e, 0x6b, 0x3b, 0x62, 0x36, 0x1f, 0x3a, 0xfa, 0x5d, 0x1a, 0x6b, 0x01, 0x41, 0x9d, 0xb9, 0x26, 0x6e, 0x2d, 0xba, 0xba, 0xb3, 0x6a, 0xea, 0x5b, 0x19, 0x61, 0x31, 0x8e, 0xaf, 0x8f, 0x0b, 0xd7, 0xcc, 0xa7, 0x5f, 0xf2, 0xdf, 0x5b, 0x7e, 0x53, 0x8c, 0x63, 0x01, 0x2a, 0x73, 0xf7, 0x77, 0xb2, 0x5e, 0x17, 0x37, 0xd4, 0x4f, 0xdb, 0xc2, 0x99, 0xa7, 0x62, 0x88, 0xd7, 0xbc, 0xb5, 0x7c, 0x84, 0x84, 0xc7, 0x1c, 0x9b, 0xb6, 0x45, 0x32, 0x45, 0xf2, 0x39, 0xb6, 0xc6, 0xdf, 0x32, 0x89, 0x84, 0x24, 0x38, 0x3b, 0x4c, 0x03, 0x09, }; static const unsigned char ecdh_secp384r1_2073_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2073_sharedsecret[] = { 0x13, 0xd7, 0x8b, 0x7a, 0x4d, 0xaf, 0x8d, 0xdd, 0x62, 0xe3, 0x47, 0xba, 0x23, 0x5c, 0x36, 0x48, 0x6f, 0xb2, 0xeb, 0x4a, 0x75, 0xa3, 0xe1, 0x7a, 0x13, 0x7e, 0xc6, 0xc2, 0xde, 0x37, 0xab, 0xaf, 0x45, 0xda, 0x92, 0xd1, 0xcf, 0x1b, 0x29, 0x66, 0xde, 0xd8, 0xd5, 0x38, 0x1f, 0xd2, 0x31, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2073 = { .name = "ecdh_secp384r1_2073", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2073_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2073_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2073_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 74 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2074 for ECDH, tcId is 75 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2074_peerpubkey[] = { 0x19, 0xe5, 0xc2, 0x86, 0x57, 0x47, 0x9e, 0xb4, 0x1d, 0x37, 0x18, 0xf6, 0x3e, 0x06, 0x78, 0xbe, 0x0d, 0xaa, 0x58, 0x50, 0x2a, 0x54, 0x06, 0xd6, 0x59, 0x13, 0x56, 0x7d, 0xf7, 0xb8, 0x6a, 0xb2, 0x5e, 0x90, 0x5e, 0xc8, 0x46, 0x78, 0x95, 0x30, 0xd8, 0x1d, 0x8d, 0x1f, 0xc2, 0xa8, 0xca, 0xde, 0x4a, 0xaf, 0x13, 0x1a, 0x0c, 0xcf, 0xc7, 0x9a, 0x24, 0xbc, 0x88, 0x9c, 0x95, 0x32, 0x49, 0xee, 0x85, 0xb4, 0x9e, 0x2a, 0x1b, 0xfa, 0x52, 0x16, 0x7f, 0xe2, 0x0d, 0xe2, 0x96, 0xe6, 0x49, 0x7e, 0xf9, 0x01, 0x4c, 0x2c, 0xd0, 0xa0, 0x2a, 0xfb, 0xad, 0x1f, 0x9d, 0x00, 0xac, 0x3d, 0x92, 0x4d, }; static const unsigned char ecdh_secp384r1_2074_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2074_sharedsecret[] = { 0x7b, 0x08, 0x63, 0xfc, 0x6d, 0x72, 0xc4, 0xbd, 0x05, 0x85, 0x76, 0xcf, 0xf7, 0xa4, 0xae, 0xdf, 0x86, 0x48, 0x2d, 0x3d, 0x9b, 0xc9, 0xc5, 0xfc, 0x55, 0xbd, 0x8f, 0xac, 0x84, 0x10, 0x7d, 0xd0, 0xbf, 0x9f, 0x27, 0xd7, 0xe8, 0xd6, 0x24, 0xed, 0xb0, 0xaa, 0x6e, 0xf1, 0xb9, 0xcc, 0x22, 0x46, }; static const wycheproof_ecdh_test ecdh_secp384r1_2074 = { .name = "ecdh_secp384r1_2074", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2074_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2074_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2074_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 75 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2075 for ECDH, tcId is 76 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2075_peerpubkey[] = { 0x59, 0x66, 0x6d, 0xf4, 0x47, 0xda, 0xbc, 0x38, 0x6d, 0x8d, 0xdd, 0xae, 0x93, 0x54, 0x3d, 0xc7, 0x61, 0x51, 0xf7, 0xc1, 0xc0, 0x48, 0x58, 0x66, 0x0d, 0x9c, 0xa8, 0xe0, 0x65, 0x5b, 0x51, 0xa7, 0x2f, 0xef, 0xfb, 0x70, 0x85, 0xba, 0xcb, 0xde, 0x15, 0x3f, 0xea, 0x75, 0xb5, 0x71, 0x6a, 0xb5, 0xc3, 0xc7, 0x81, 0x1d, 0x0c, 0x74, 0x35, 0xbe, 0x9e, 0x36, 0xdb, 0x00, 0xcd, 0x29, 0xc6, 0xca, 0x87, 0x9e, 0xf9, 0x91, 0xad, 0xb1, 0x57, 0xa6, 0xb4, 0xbf, 0x56, 0xe3, 0xde, 0x5c, 0xb3, 0x45, 0x98, 0xb7, 0x9a, 0x68, 0x4c, 0xc3, 0xd4, 0xe2, 0x3f, 0x22, 0xd1, 0x00, 0x63, 0xe8, 0xd1, 0x9c, }; static const unsigned char ecdh_secp384r1_2075_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2075_sharedsecret[] = { 0xfb, 0xa2, 0xbd, 0xfb, 0x54, 0xe4, 0x68, 0xa4, 0xff, 0x5a, 0xfb, 0xaa, 0x54, 0xc7, 0x03, 0x74, 0x00, 0xd7, 0x64, 0x14, 0xc9, 0x8e, 0xaf, 0xaa, 0x41, 0x9a, 0xda, 0xb0, 0xdf, 0x50, 0xc9, 0x69, 0x2a, 0xac, 0x67, 0xd4, 0x4a, 0x9e, 0xfb, 0xd0, 0x0d, 0x4f, 0x9c, 0xfc, 0x20, 0x6d, 0x53, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2075 = { .name = "ecdh_secp384r1_2075", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2075_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2075_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2075_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 76 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2076 for ECDH, tcId is 77 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2076_peerpubkey[] = { 0x3b, 0xaf, 0xce, 0x9b, 0x32, 0x61, 0x6f, 0x3b, 0xde, 0x17, 0xfc, 0x98, 0x9f, 0x1e, 0x55, 0x6f, 0x92, 0xfa, 0xf5, 0xc3, 0x0e, 0x2c, 0xdd, 0xeb, 0xc2, 0xab, 0xa4, 0x4e, 0xdf, 0x36, 0xae, 0x39, 0x57, 0xc9, 0xc6, 0x10, 0xa3, 0x45, 0x21, 0xe6, 0xac, 0x45, 0x46, 0x52, 0xaa, 0x59, 0x78, 0x11, 0x82, 0x7b, 0x4f, 0xf4, 0x5f, 0x99, 0x1f, 0x94, 0x05, 0xf2, 0xd8, 0xcf, 0x45, 0xd5, 0xd0, 0x87, 0x6a, 0x26, 0x0e, 0xf0, 0xde, 0xb6, 0xe8, 0x60, 0x90, 0xc5, 0xb4, 0x5f, 0x5b, 0x7b, 0x17, 0x86, 0x10, 0x53, 0x24, 0xf4, 0x0a, 0x0d, 0x2b, 0x43, 0xde, 0xd5, 0x78, 0x68, 0xb3, 0x8b, 0x43, 0xef, }; static const unsigned char ecdh_secp384r1_2076_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2076_sharedsecret[] = { 0xba, 0x9b, 0x68, 0xd1, 0xc0, 0x0a, 0xa1, 0x24, 0x6e, 0xda, 0xfb, 0x70, 0xdb, 0x6d, 0xda, 0xed, 0x85, 0x70, 0xc4, 0x65, 0xd9, 0xa5, 0x83, 0x6d, 0x41, 0x56, 0xa1, 0xac, 0x7f, 0xda, 0x2a, 0x20, 0x9c, 0x25, 0x47, 0x1a, 0x0d, 0xf6, 0xd7, 0xde, 0x93, 0xf9, 0x80, 0xc8, 0x9c, 0x84, 0x16, 0x20, }; static const wycheproof_ecdh_test ecdh_secp384r1_2076 = { .name = "ecdh_secp384r1_2076", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2076_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2076_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2076_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 77 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2077 for ECDH, tcId is 78 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2077_peerpubkey[] = { 0x53, 0x38, 0x5b, 0x93, 0x03, 0xd2, 0xc5, 0xd1, 0xea, 0x83, 0xe7, 0x70, 0x0b, 0x3e, 0x81, 0x1a, 0x7c, 0x90, 0x5d, 0x17, 0x75, 0xc3, 0x79, 0xa4, 0x4e, 0x9e, 0x5c, 0x96, 0x82, 0x15, 0x59, 0x70, 0x0b, 0x49, 0x2e, 0xe2, 0x86, 0x8c, 0x5a, 0x01, 0x95, 0x0a, 0xa4, 0xe2, 0xb0, 0x59, 0x32, 0xee, 0x8f, 0xa1, 0xbd, 0x83, 0x03, 0x5a, 0xab, 0xba, 0xbc, 0x2b, 0xe7, 0xb6, 0x1f, 0x38, 0x8f, 0x78, 0xb8, 0x04, 0x6d, 0x36, 0xbe, 0xe9, 0x9b, 0x54, 0x89, 0xba, 0xfb, 0x3a, 0x86, 0xde, 0xde, 0x29, 0xc1, 0x4d, 0x53, 0x73, 0xed, 0x9b, 0xac, 0x72, 0xa9, 0x2a, 0xb8, 0xe7, 0xc3, 0x1f, 0xb8, 0x6a, }; static const unsigned char ecdh_secp384r1_2077_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2077_sharedsecret[] = { 0x33, 0xc6, 0xc7, 0xe2, 0xc8, 0x05, 0x88, 0x9c, 0xaa, 0xe5, 0x67, 0x9a, 0xa0, 0x24, 0xdd, 0x79, 0xf5, 0x44, 0x56, 0xf7, 0x98, 0xef, 0xf0, 0xa0, 0xdd, 0xcc, 0x1b, 0x28, 0xd8, 0xad, 0x30, 0x2d, 0x2f, 0x67, 0x09, 0x22, 0x75, 0xff, 0x55, 0xf8, 0xf4, 0xd9, 0x93, 0x57, 0xac, 0x86, 0xce, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_2077 = { .name = "ecdh_secp384r1_2077", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2077_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2077_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2077_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 78 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2078 for ECDH, tcId is 79 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2078_peerpubkey[] = { 0x9e, 0xbf, 0x8d, 0x31, 0x3d, 0xa3, 0xe5, 0xba, 0x23, 0x7e, 0xe3, 0x3e, 0x6d, 0xd5, 0xbe, 0x77, 0x03, 0x90, 0xf8, 0x37, 0xc9, 0x52, 0x8f, 0xbd, 0xd4, 0x40, 0xa9, 0xeb, 0x2b, 0xa1, 0xcf, 0xfb, 0x27, 0x83, 0x7d, 0x86, 0x5c, 0xbe, 0x1b, 0x32, 0xff, 0x9c, 0x79, 0x95, 0xd5, 0xdd, 0x51, 0x1c, 0xaa, 0x41, 0x25, 0xec, 0x25, 0x8d, 0x18, 0x2e, 0xe7, 0xf7, 0x17, 0x3c, 0xa1, 0xd1, 0x71, 0x39, 0xae, 0x13, 0xe6, 0x07, 0x2a, 0xcd, 0x97, 0x0b, 0xa5, 0x6f, 0x6d, 0x50, 0x34, 0xe9, 0xf4, 0x5d, 0xa3, 0x6b, 0x2e, 0xc7, 0x74, 0x34, 0x9b, 0xe2, 0x16, 0x8f, 0x32, 0xbb, 0xf0, 0x4f, 0x9a, 0x31, }; static const unsigned char ecdh_secp384r1_2078_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2078_sharedsecret[] = { 0x0d, 0xee, 0xb0, 0x1d, 0xec, 0xaa, 0xe0, 0xee, 0xe5, 0x5e, 0x2c, 0x29, 0x50, 0x1c, 0xdd, 0x9c, 0xf7, 0xd4, 0xdb, 0x2f, 0x16, 0x79, 0xfb, 0x72, 0xef, 0xca, 0xa5, 0xdb, 0x6e, 0x05, 0xcc, 0x4a, 0x65, 0x84, 0x80, 0x24, 0x5c, 0x59, 0xfe, 0xc9, 0x98, 0x4c, 0x61, 0x35, 0x01, 0x41, 0x1b, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_2078 = { .name = "ecdh_secp384r1_2078", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2078_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2078_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2078_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 79 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2079 for ECDH, tcId is 80 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2079_peerpubkey[] = { 0xd4, 0xcd, 0x22, 0xe8, 0xdf, 0xa6, 0x20, 0xca, 0x7d, 0x68, 0xe2, 0x90, 0x45, 0x1b, 0x09, 0x28, 0x52, 0x98, 0xa1, 0xdb, 0x5a, 0x7c, 0xa0, 0x0e, 0xa8, 0x30, 0xd6, 0xe9, 0xec, 0x9c, 0xc4, 0xd0, 0x3f, 0x5c, 0xd4, 0x3f, 0xb2, 0xa9, 0xaa, 0xaa, 0x14, 0x2f, 0xe4, 0xc6, 0xe2, 0x26, 0x9c, 0xdc, 0x74, 0x7e, 0x0c, 0xa0, 0x7e, 0x38, 0xf4, 0xc5, 0xb4, 0x12, 0xe5, 0x2c, 0xb7, 0x93, 0x0c, 0x38, 0x11, 0x00, 0xd2, 0xaa, 0xfe, 0x54, 0xb6, 0x19, 0xeb, 0xf7, 0x2e, 0x81, 0xa4, 0x6e, 0x11, 0x49, 0x63, 0x5d, 0x25, 0xa3, 0x7f, 0xa6, 0x6e, 0x2d, 0x1b, 0xc9, 0xac, 0x25, 0xfc, 0x1a, 0x83, 0xf3, }; static const unsigned char ecdh_secp384r1_2079_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2079_sharedsecret[] = { 0xd3, 0x60, 0x75, 0x3c, 0x56, 0x86, 0x98, 0xd7, 0xf7, 0xb2, 0x61, 0xdd, 0x2f, 0x50, 0x64, 0xff, 0xc8, 0xaa, 0x9f, 0x03, 0x34, 0x3a, 0x22, 0x91, 0xb9, 0x67, 0x63, 0x26, 0x46, 0xd5, 0x15, 0x70, 0x56, 0x2f, 0x1a, 0xe8, 0x77, 0x75, 0x64, 0x8e, 0x74, 0xf9, 0xf3, 0x0e, 0x96, 0x6e, 0x73, 0x80, }; static const wycheproof_ecdh_test ecdh_secp384r1_2079 = { .name = "ecdh_secp384r1_2079", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2079_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2079_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2079_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 80 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2080 for ECDH, tcId is 81 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2080_peerpubkey[] = { 0x21, 0xb9, 0x1b, 0x9c, 0x37, 0x4e, 0xcf, 0x5c, 0xed, 0xc6, 0xd7, 0x34, 0x22, 0xc6, 0x53, 0x9b, 0x22, 0xae, 0x5d, 0xb6, 0x1b, 0xfd, 0xb0, 0x6b, 0x9c, 0x89, 0xe6, 0x81, 0x12, 0xf6, 0x43, 0x3e, 0x9d, 0x49, 0x71, 0x5f, 0x47, 0x45, 0x34, 0xfb, 0x9c, 0xd6, 0xc2, 0xcb, 0xfc, 0xde, 0xf9, 0x4f, 0xb5, 0xd4, 0xfe, 0x30, 0x6d, 0x59, 0x02, 0x5a, 0xf4, 0xe8, 0x8f, 0x8c, 0xb3, 0xdd, 0xc3, 0xd6, 0x4f, 0x70, 0x7e, 0x68, 0x20, 0xb4, 0x1c, 0xdf, 0xc0, 0x55, 0xcd, 0x67, 0x62, 0xda, 0x23, 0xde, 0x01, 0xc1, 0xb3, 0x11, 0xf1, 0xa5, 0xbf, 0x70, 0x10, 0xc4, 0xff, 0x4e, 0xd0, 0xa7, 0xe8, 0x4c, }; static const unsigned char ecdh_secp384r1_2080_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2080_sharedsecret[] = { 0x59, 0x6a, 0xf7, 0x12, 0x09, 0xcd, 0xd2, 0x3c, 0x38, 0x6b, 0xb8, 0x61, 0xed, 0xbd, 0x17, 0x1e, 0xa9, 0xbc, 0x6a, 0x85, 0x89, 0x93, 0x11, 0x0c, 0x93, 0x33, 0xa9, 0x56, 0xb3, 0xa0, 0x3f, 0xc0, 0xf5, 0x53, 0x93, 0xca, 0x46, 0xbb, 0x15, 0xbc, 0xf9, 0xf1, 0x2b, 0x49, 0x64, 0x59, 0xc4, 0xe6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2080 = { .name = "ecdh_secp384r1_2080", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2080_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2080_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2080_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 81 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2081 for ECDH, tcId is 82 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2081_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2081_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2081_sharedsecret[] = { 0x96, 0x87, 0x6e, 0x9e, 0xd8, 0x9e, 0xdf, 0x3e, 0x3d, 0xfd, 0x8e, 0xad, 0x06, 0xdc, 0xba, 0x0a, 0xcd, 0xce, 0x77, 0x63, 0xeb, 0x98, 0xad, 0xed, 0x82, 0x97, 0x6f, 0xa3, 0x61, 0x81, 0xc7, 0x9a, 0xc4, 0xe8, 0x33, 0xdf, 0x38, 0x5a, 0xf5, 0xee, 0x86, 0x0c, 0xa1, 0xf2, 0x0d, 0xf4, 0xcb, 0x72, }; static const wycheproof_ecdh_test ecdh_secp384r1_2081 = { .name = "ecdh_secp384r1_2081", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2081_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2081_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2081_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 82 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2082 for ECDH, tcId is 83 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2082_peerpubkey[] = { 0xdd, 0x60, 0x7e, 0x95, 0x45, 0x56, 0xc6, 0x2e, 0x39, 0xb4, 0x32, 0xd1, 0xf1, 0xb2, 0xfe, 0x66, 0x52, 0xd7, 0x5a, 0x1f, 0xe3, 0x3c, 0xd1, 0x5c, 0x79, 0x9f, 0xfa, 0xc9, 0xd1, 0x3d, 0x5d, 0x52, 0x18, 0x99, 0xd2, 0x59, 0x40, 0xda, 0x65, 0x3d, 0x08, 0x24, 0xad, 0x84, 0x56, 0xdd, 0xfb, 0x62, 0x9f, 0x41, 0x42, 0xe0, 0x8a, 0x3b, 0xd1, 0xd8, 0x7b, 0xf6, 0x11, 0x9a, 0x9e, 0xf4, 0xb0, 0xa8, 0x0d, 0xc7, 0x12, 0xa4, 0xd6, 0xc0, 0x01, 0xbc, 0xb2, 0x79, 0x4c, 0x4d, 0x1a, 0x03, 0xb1, 0xf1, 0xd3, 0x92, 0xdc, 0x08, 0x8c, 0x89, 0xef, 0x84, 0x4f, 0x93, 0xad, 0xb1, 0x39, 0xd9, 0x56, 0xb8, }; static const unsigned char ecdh_secp384r1_2082_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2082_sharedsecret[] = { 0x60, 0xd5, 0x97, 0xa9, 0x9c, 0x86, 0xa4, 0x32, 0xe1, 0x44, 0xbc, 0x2b, 0x0e, 0x0a, 0x89, 0xb9, 0x1c, 0x4a, 0x72, 0xf3, 0xe1, 0xff, 0x8e, 0x56, 0xe7, 0xf0, 0x7d, 0x53, 0xb2, 0xe5, 0x63, 0xe9, 0x79, 0xc0, 0x9e, 0x27, 0xb3, 0x4b, 0xe9, 0x8b, 0xb1, 0x98, 0x65, 0xe8, 0x08, 0xd4, 0x29, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2082 = { .name = "ecdh_secp384r1_2082", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2082_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2082_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2082_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 83 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2083 for ECDH, tcId is 84 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2083_peerpubkey[] = { 0x82, 0x6d, 0x71, 0xae, 0x4f, 0x7b, 0x3e, 0xcb, 0xb2, 0xa9, 0xbd, 0xf5, 0x95, 0x12, 0x94, 0x95, 0x42, 0xd0, 0x11, 0x6f, 0x61, 0x64, 0x40, 0xa5, 0x50, 0x16, 0x8f, 0x4b, 0x58, 0x81, 0x2f, 0xd6, 0xc1, 0xab, 0x94, 0xf3, 0x10, 0x38, 0x5f, 0xdf, 0x24, 0x6d, 0xb5, 0xef, 0xc0, 0xfd, 0x13, 0x99, 0x5d, 0xe0, 0x99, 0xbd, 0xfc, 0xea, 0x35, 0x5e, 0xe6, 0x38, 0x27, 0xcf, 0x2a, 0x2e, 0x2d, 0x86, 0x8f, 0x5c, 0xf0, 0xb4, 0x87, 0xe4, 0x12, 0x45, 0xdf, 0x54, 0xfd, 0xc7, 0x35, 0xee, 0xd6, 0xeb, 0x72, 0x6c, 0xfc, 0x92, 0x8b, 0xd5, 0xb4, 0xd0, 0x17, 0x19, 0xd1, 0x64, 0x49, 0x67, 0xed, 0x1f, }; static const unsigned char ecdh_secp384r1_2083_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2083_sharedsecret[] = { 0x85, 0x96, 0x19, 0x06, 0xed, 0xaa, 0x9a, 0xdf, 0xa9, 0xc9, 0xb8, 0x27, 0x9d, 0xa6, 0x61, 0x58, 0xf5, 0x7f, 0xb3, 0x50, 0xff, 0x9b, 0x15, 0xdc, 0x4d, 0x75, 0xb8, 0xca, 0xb6, 0x4b, 0x9d, 0x34, 0xf5, 0xce, 0x91, 0x2f, 0x1a, 0xa5, 0x12, 0xa5, 0x4c, 0x71, 0x82, 0x1c, 0x6e, 0x31, 0xff, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2083 = { .name = "ecdh_secp384r1_2083", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2083_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2083_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2083_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 84 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2084 for ECDH, tcId is 85 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2084_peerpubkey[] = { 0xfa, 0x89, 0x19, 0xe4, 0x52, 0x4e, 0x70, 0x40, 0x48, 0x9c, 0xc1, 0x7a, 0xa3, 0xd6, 0x20, 0xf8, 0x82, 0x76, 0xef, 0x24, 0x8d, 0x1e, 0xcd, 0x1e, 0x9a, 0x66, 0x37, 0xc7, 0xa0, 0x67, 0x65, 0xf6, 0xf1, 0xd5, 0x93, 0xb1, 0xfe, 0xbe, 0x33, 0x1b, 0x9f, 0x69, 0x6e, 0x82, 0xc5, 0xbe, 0x61, 0xa4, 0xa0, 0x74, 0xa9, 0x12, 0x30, 0x96, 0x62, 0xf4, 0x4c, 0xe0, 0x82, 0x5b, 0xf1, 0x34, 0x58, 0x21, 0x16, 0xca, 0xc3, 0x31, 0x05, 0x77, 0xd5, 0xa0, 0x07, 0x22, 0xba, 0x51, 0x3e, 0x63, 0x34, 0xcc, 0x17, 0x10, 0x10, 0x91, 0x22, 0x33, 0x46, 0xdb, 0x67, 0x06, 0x3c, 0xf6, 0xe7, 0xbf, 0xfb, 0xff, }; static const unsigned char ecdh_secp384r1_2084_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2084_sharedsecret[] = { 0x43, 0x48, 0x4d, 0xcf, 0x01, 0x49, 0x2e, 0xab, 0x68, 0x4d, 0x39, 0x88, 0x19, 0x08, 0xda, 0x7f, 0x40, 0x11, 0x9f, 0xe7, 0x18, 0x3b, 0xba, 0x62, 0x5c, 0x32, 0xfd, 0xc1, 0x4d, 0xa3, 0xc4, 0x23, 0x6d, 0xc3, 0x39, 0x72, 0x34, 0xe7, 0xdb, 0x41, 0x85, 0x74, 0x95, 0xcd, 0x0d, 0x09, 0x49, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2084 = { .name = "ecdh_secp384r1_2084", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2084_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2084_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2084_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 85 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2085 for ECDH, tcId is 86 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2085_peerpubkey[] = { 0xae, 0xcb, 0x8f, 0x15, 0xab, 0x87, 0x57, 0x9a, 0x03, 0xf5, 0xb8, 0xfc, 0xf3, 0x3a, 0xa0, 0x94, 0x33, 0x7e, 0x4c, 0x36, 0x23, 0x59, 0xc9, 0xf2, 0x72, 0x76, 0x34, 0x90, 0x9c, 0x69, 0x13, 0xc3, 0x21, 0xbe, 0x69, 0xf3, 0xf8, 0xae, 0xd6, 0x93, 0xa3, 0x10, 0x59, 0x98, 0x99, 0x97, 0xfb, 0x32, 0xd4, 0xf4, 0xa3, 0x7f, 0xf2, 0x36, 0xd8, 0xf6, 0x23, 0x71, 0x86, 0xa3, 0xa7, 0x21, 0xa8, 0x2a, 0x2b, 0xa2, 0x2f, 0x8a, 0x62, 0x8d, 0x72, 0x73, 0xef, 0x31, 0x73, 0xe2, 0x1e, 0xcc, 0x69, 0x96, 0x9a, 0x47, 0xe6, 0x69, 0x38, 0x3e, 0xcf, 0x0c, 0xf5, 0x39, 0x6e, 0xb0, 0x2f, 0x46, 0xc3, 0xed, }; static const unsigned char ecdh_secp384r1_2085_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2085_sharedsecret[] = { 0x65, 0xe6, 0x13, 0x39, 0x29, 0xc8, 0xb0, 0x61, 0xc2, 0x5f, 0xe0, 0xbe, 0xc9, 0x14, 0x2c, 0x93, 0xd5, 0x2c, 0x9f, 0x16, 0x95, 0x06, 0x1b, 0x10, 0x5f, 0x6c, 0x7d, 0xa1, 0x34, 0x7a, 0x96, 0x7b, 0x5a, 0x3f, 0x11, 0x83, 0x56, 0x56, 0x45, 0xf7, 0xb8, 0xfa, 0xd8, 0x86, 0x3f, 0x9a, 0x63, 0x45, }; static const wycheproof_ecdh_test ecdh_secp384r1_2085 = { .name = "ecdh_secp384r1_2085", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2085_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2085_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2085_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 86 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2086 for ECDH, tcId is 87 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2086_peerpubkey[] = { 0x40, 0xdc, 0x66, 0xd8, 0x1c, 0x4e, 0x15, 0xe1, 0xa4, 0xc0, 0x09, 0xc6, 0x0c, 0x34, 0x41, 0x72, 0x5f, 0xff, 0x08, 0xb2, 0x54, 0x37, 0x73, 0xb0, 0xdd, 0xe0, 0x0d, 0xb2, 0x31, 0xf4, 0x4b, 0xad, 0xd7, 0x7a, 0x8b, 0xc9, 0x61, 0x94, 0x79, 0xbd, 0x52, 0x88, 0xe4, 0x0d, 0xa1, 0x53, 0xb8, 0xdd, 0xc3, 0xd5, 0x30, 0x26, 0x2b, 0x16, 0x9a, 0x6f, 0xa7, 0x00, 0xee, 0x32, 0xa5, 0xcd, 0x05, 0x7b, 0xaf, 0x43, 0xd2, 0x96, 0x27, 0xf3, 0x42, 0xfd, 0xa8, 0xf6, 0xf0, 0xfb, 0x21, 0xb1, 0xfa, 0x35, 0xbe, 0x96, 0xa4, 0x52, 0xab, 0x48, 0x81, 0xf4, 0x17, 0xc9, 0xa4, 0xe4, 0x13, 0x6b, 0x1e, 0x6d, }; static const unsigned char ecdh_secp384r1_2086_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2086_sharedsecret[] = { 0x07, 0x73, 0x67, 0x3d, 0xae, 0x33, 0x7a, 0x16, 0x88, 0xc2, 0xc3, 0x1d, 0x1a, 0x60, 0x0c, 0x0e, 0xd7, 0x26, 0x04, 0xa1, 0x71, 0xc6, 0x65, 0xb5, 0x30, 0x7e, 0xba, 0xf7, 0x40, 0xfd, 0x51, 0x8e, 0x4a, 0x7c, 0x5c, 0x91, 0xe4, 0xf8, 0x6f, 0x65, 0x90, 0x56, 0x40, 0xee, 0x37, 0xf4, 0xf8, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_2086 = { .name = "ecdh_secp384r1_2086", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2086_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2086_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2086_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 87 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2087 for ECDH, tcId is 88 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2087_peerpubkey[] = { 0x53, 0xb5, 0x87, 0x47, 0x38, 0x27, 0x5a, 0x2e, 0x1d, 0x73, 0x4e, 0x51, 0xf8, 0x36, 0x36, 0xf8, 0x91, 0x79, 0xc1, 0x6f, 0xe8, 0x9f, 0x46, 0xf4, 0xd8, 0xe7, 0x1f, 0x52, 0x1c, 0x59, 0x47, 0x69, 0xd3, 0x17, 0x25, 0xf6, 0x40, 0x41, 0x22, 0xf2, 0x11, 0x12, 0x94, 0x3a, 0x1a, 0x22, 0xff, 0x07, 0x58, 0x6b, 0x41, 0xbb, 0x24, 0xbf, 0x30, 0x3a, 0xe8, 0x54, 0x5b, 0x25, 0xf7, 0xb9, 0x84, 0x25, 0xea, 0x62, 0xc4, 0xd3, 0xbf, 0x51, 0xd2, 0x3d, 0x9d, 0x85, 0xe0, 0x77, 0x19, 0xb8, 0x28, 0x77, 0x7e, 0xfa, 0x0a, 0x28, 0xfb, 0x30, 0xf3, 0x3b, 0x89, 0x99, 0x80, 0xde, 0x3c, 0x53, 0x26, 0x11, }; static const unsigned char ecdh_secp384r1_2087_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2087_sharedsecret[] = { 0xea, 0x25, 0xb0, 0x7a, 0x16, 0x1f, 0x31, 0x8a, 0x81, 0xa6, 0x93, 0xf6, 0x60, 0x48, 0x10, 0xb8, 0x14, 0x28, 0x43, 0xc4, 0xfd, 0x26, 0x65, 0x8d, 0x9b, 0x64, 0xfe, 0xdb, 0x58, 0xa5, 0xeb, 0xa5, 0x8c, 0x21, 0x7c, 0x41, 0x76, 0x56, 0x9c, 0xf3, 0x3f, 0xa4, 0x7a, 0xc9, 0xf2, 0xb3, 0xd7, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2087 = { .name = "ecdh_secp384r1_2087", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2087_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2087_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2087_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 88 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2088 for ECDH, tcId is 89 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2088_peerpubkey[] = { 0x29, 0x88, 0xad, 0xdf, 0x62, 0x14, 0x9e, 0x6a, 0xc0, 0x82, 0x19, 0xd2, 0xf0, 0x36, 0xd3, 0xf5, 0x72, 0x0a, 0xa8, 0x62, 0x90, 0x5c, 0xf3, 0xfe, 0x7b, 0xdf, 0x13, 0x6d, 0xc0, 0x8b, 0x84, 0x5e, 0x8a, 0x61, 0xbe, 0x43, 0xdb, 0x86, 0xd7, 0x1a, 0x26, 0xdc, 0x17, 0xbf, 0x55, 0x37, 0x4a, 0x9d, 0x53, 0xac, 0x99, 0xc5, 0xd0, 0x7d, 0xe1, 0x0c, 0xe7, 0x4e, 0xd3, 0xb1, 0xc4, 0x13, 0x68, 0x6e, 0xbb, 0xa7, 0x00, 0xf4, 0x92, 0x60, 0xb0, 0x83, 0x57, 0xf9, 0x5d, 0xaf, 0x5b, 0x31, 0xa5, 0x55, 0x34, 0x5c, 0x07, 0x60, 0x79, 0xf2, 0x5d, 0x86, 0x90, 0xfc, 0x1a, 0xc2, 0x0c, 0x71, 0x52, 0x8d, }; static const unsigned char ecdh_secp384r1_2088_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2088_sharedsecret[] = { 0xa8, 0xd4, 0x24, 0x06, 0x8f, 0xb7, 0x84, 0x6b, 0x0d, 0x43, 0xa5, 0xcc, 0x13, 0x02, 0x9d, 0x05, 0x4b, 0x11, 0xc9, 0x7e, 0x50, 0x8e, 0xe0, 0xf9, 0x2e, 0x73, 0xd3, 0x5a, 0xc8, 0x35, 0x1a, 0x46, 0x2e, 0xed, 0xfc, 0x9d, 0xa9, 0xdd, 0x12, 0x79, 0xf1, 0x28, 0x12, 0xba, 0x46, 0xc0, 0x60, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_2088 = { .name = "ecdh_secp384r1_2088", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2088_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2088_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2088_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 89 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2089 for ECDH, tcId is 90 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2089_peerpubkey[] = { 0x49, 0x4b, 0x59, 0xde, 0x1b, 0x69, 0x53, 0x4b, 0x4b, 0x62, 0xd7, 0x58, 0x10, 0xee, 0x3d, 0xad, 0x05, 0xa1, 0x9a, 0xfa, 0x41, 0xc7, 0x83, 0x6d, 0xb5, 0xca, 0x78, 0x63, 0x02, 0x08, 0xa8, 0x00, 0x38, 0x8d, 0x04, 0x03, 0x4b, 0xaf, 0x29, 0x23, 0xad, 0x5a, 0xf6, 0xac, 0x72, 0xee, 0x05, 0xf9, 0x89, 0xdf, 0x6d, 0x08, 0xf9, 0xa6, 0x40, 0x08, 0x58, 0xd0, 0x84, 0xfe, 0x77, 0x0c, 0x0d, 0xdd, 0xe2, 0x98, 0x96, 0x6c, 0xdc, 0x56, 0xa9, 0x21, 0xa4, 0x31, 0x84, 0x38, 0x4d, 0x5a, 0x13, 0xf3, 0x1c, 0x1e, 0xb4, 0xe8, 0x34, 0xe2, 0x3b, 0xed, 0x30, 0x69, 0xc1, 0x0d, 0xfe, 0xd6, 0xb6, 0x3c, }; static const unsigned char ecdh_secp384r1_2089_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2089_sharedsecret[] = { 0x29, 0x6f, 0x5d, 0x6f, 0xe4, 0xdd, 0xd8, 0xc3, 0xc7, 0x30, 0x4b, 0xea, 0xdd, 0x45, 0xf6, 0xcd, 0x3e, 0x3f, 0xcd, 0x42, 0x30, 0xc9, 0xd2, 0xba, 0x1a, 0x13, 0xbd, 0x9b, 0x94, 0x98, 0xa3, 0xc8, 0xd1, 0xef, 0x0a, 0xb6, 0xee, 0x2a, 0x45, 0x0b, 0x0c, 0x68, 0xe8, 0x9a, 0x83, 0x71, 0x1f, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2089 = { .name = "ecdh_secp384r1_2089", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2089_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2089_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2089_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 90 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2090 for ECDH, tcId is 91 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2090_peerpubkey[] = { 0xb6, 0x4c, 0x49, 0xdd, 0xf1, 0x8b, 0xce, 0x79, 0xcf, 0xf3, 0xb8, 0xcb, 0x7b, 0x0e, 0x58, 0xd4, 0x84, 0x21, 0xeb, 0x67, 0x39, 0xf5, 0x9d, 0x27, 0x1f, 0xc4, 0xf5, 0x4d, 0xd2, 0xfc, 0xb1, 0xcf, 0x56, 0xdd, 0x3b, 0x3c, 0x69, 0x17, 0x3a, 0x5e, 0xab, 0x50, 0xab, 0x1a, 0x2e, 0x06, 0x16, 0xd0, 0x5d, 0x92, 0xb8, 0x64, 0xcb, 0xc9, 0xe4, 0xa3, 0xf7, 0x56, 0x50, 0xef, 0xf3, 0x9e, 0x0e, 0xac, 0xbf, 0x87, 0xc4, 0xc0, 0x10, 0x08, 0x8f, 0x33, 0x38, 0x84, 0x2c, 0xd9, 0x78, 0x32, 0x72, 0x4f, 0x79, 0xbb, 0x15, 0x98, 0x6b, 0xd3, 0xfa, 0x85, 0x25, 0x58, 0x16, 0x35, 0x04, 0x73, 0xbb, 0xd3, }; static const unsigned char ecdh_secp384r1_2090_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2090_sharedsecret[] = { 0xdb, 0x1e, 0xdb, 0xbb, 0x1f, 0x3a, 0xc6, 0xdf, 0x9f, 0x46, 0x12, 0x88, 0x12, 0xbc, 0xe7, 0x81, 0x8b, 0x5d, 0x74, 0x5c, 0x75, 0x32, 0x2a, 0x9a, 0xbe, 0x89, 0x98, 0x3b, 0xe8, 0x68, 0xaa, 0x1a, 0xac, 0x55, 0x5f, 0x4d, 0x60, 0xec, 0x27, 0x27, 0x30, 0xbb, 0x4a, 0xd9, 0x49, 0xa5, 0x3d, 0x38, }; static const wycheproof_ecdh_test ecdh_secp384r1_2090 = { .name = "ecdh_secp384r1_2090", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2090_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2090_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2090_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 91 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2091 for ECDH, tcId is 92 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2091_peerpubkey[] = { 0xa4, 0x0b, 0x1c, 0xa1, 0xa5, 0x1a, 0x8e, 0xe6, 0xbe, 0xf5, 0xb5, 0x8a, 0xaa, 0xbc, 0xff, 0xe2, 0xe1, 0x5f, 0x74, 0xa3, 0x08, 0x7e, 0xdb, 0x26, 0x20, 0x88, 0x5d, 0x7d, 0x93, 0x3e, 0x4f, 0x50, 0xd6, 0x25, 0xea, 0xad, 0x93, 0xb8, 0x7b, 0x8d, 0xff, 0x58, 0xf0, 0x56, 0x57, 0x92, 0xb1, 0x74, 0xab, 0x89, 0x71, 0x7f, 0xfe, 0x87, 0xcd, 0x29, 0xff, 0xbf, 0x3c, 0xd7, 0xd9, 0x38, 0xb1, 0x17, 0x37, 0x47, 0xbf, 0xc0, 0x31, 0x1b, 0x78, 0x72, 0x36, 0x84, 0xd7, 0xc9, 0xa1, 0xc2, 0xbe, 0x3b, 0x59, 0x7b, 0xf9, 0x23, 0x6e, 0xed, 0x09, 0x00, 0x28, 0xed, 0xa2, 0x14, 0x6c, 0x47, 0x7e, 0x65, }; static const unsigned char ecdh_secp384r1_2091_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2091_sharedsecret[] = { 0x1f, 0x84, 0xc6, 0x41, 0xad, 0xe1, 0x62, 0xa2, 0x74, 0xab, 0x2e, 0xfc, 0x7c, 0xf6, 0x58, 0x2f, 0x5a, 0x5d, 0x91, 0xce, 0x79, 0x93, 0xaf, 0x69, 0x56, 0xd5, 0x5e, 0xea, 0x0e, 0x1b, 0x7f, 0xbf, 0x04, 0x0d, 0xa9, 0x75, 0x04, 0x86, 0xb0, 0xfb, 0xb2, 0xbd, 0x70, 0xd9, 0xcc, 0xab, 0xb7, 0x85, }; static const wycheproof_ecdh_test ecdh_secp384r1_2091 = { .name = "ecdh_secp384r1_2091", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2091_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2091_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2091_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 92 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2092 for ECDH, tcId is 93 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2092_peerpubkey[] = { 0x4e, 0x7a, 0x82, 0xad, 0x74, 0xa1, 0xb7, 0x85, 0x19, 0x95, 0xf6, 0xe1, 0xa1, 0x81, 0x41, 0xbb, 0x45, 0x84, 0xac, 0x22, 0xe8, 0x39, 0xd4, 0xd9, 0x16, 0x01, 0x8b, 0x15, 0x0f, 0xed, 0x9c, 0xd0, 0xcc, 0xe4, 0x27, 0xbd, 0x44, 0x67, 0x98, 0x52, 0x27, 0x44, 0xd3, 0x95, 0xe9, 0x0e, 0xe4, 0xb6, 0x34, 0x45, 0xc1, 0xa6, 0xa4, 0xcd, 0x46, 0x7c, 0x20, 0xcd, 0xb2, 0x98, 0x85, 0x4f, 0x1e, 0x27, 0x0a, 0xfb, 0xea, 0x05, 0x3b, 0x77, 0x84, 0x97, 0x6b, 0x50, 0x4d, 0x0e, 0x13, 0x39, 0xc5, 0xc8, 0x60, 0x07, 0xce, 0xc3, 0x63, 0x83, 0x99, 0x58, 0xa1, 0xfa, 0x51, 0xe9, 0x48, 0x3d, 0xe5, 0x61, }; static const unsigned char ecdh_secp384r1_2092_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2092_sharedsecret[] = { 0x54, 0xef, 0xb9, 0xbb, 0x72, 0x69, 0xd8, 0x6b, 0x06, 0x28, 0x2b, 0x1d, 0x7d, 0xc2, 0x8a, 0x94, 0x0c, 0xd7, 0x78, 0x9c, 0xa4, 0xe1, 0x04, 0xc4, 0xbb, 0x7c, 0x5e, 0x57, 0x36, 0x67, 0x6c, 0x3e, 0x53, 0x70, 0xcf, 0xd9, 0x78, 0x49, 0xe1, 0x20, 0x0a, 0x03, 0x1b, 0x66, 0x83, 0x88, 0xd8, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2092 = { .name = "ecdh_secp384r1_2092", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2092_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2092_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2092_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 93 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2093 for ECDH, tcId is 94 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2093_peerpubkey[] = { 0x9b, 0x54, 0x67, 0x8f, 0x85, 0x81, 0xce, 0x66, 0x51, 0x08, 0xab, 0xeb, 0x0c, 0x09, 0xcb, 0x79, 0x85, 0xbb, 0x5d, 0xd8, 0x58, 0xbb, 0xb7, 0x1c, 0x88, 0xe0, 0x53, 0x44, 0xde, 0x5b, 0x45, 0xb4, 0xe6, 0x7f, 0x33, 0xab, 0x58, 0xd3, 0x59, 0xdc, 0xa2, 0xda, 0x8d, 0xf1, 0x14, 0x9d, 0xd1, 0xbb, 0xd0, 0x9b, 0xa7, 0xf6, 0x3a, 0x8d, 0x35, 0x84, 0x8b, 0x40, 0x74, 0x6e, 0xd5, 0xfe, 0xc7, 0x94, 0x4e, 0xd4, 0x4f, 0xd9, 0xa9, 0xa2, 0xfc, 0x3d, 0x13, 0xeb, 0xc5, 0xc0, 0x5f, 0xf9, 0x4d, 0x5f, 0x50, 0x0e, 0xe1, 0x50, 0x72, 0xd1, 0xb4, 0xc1, 0x37, 0x5f, 0xd6, 0xec, 0x4f, 0x32, 0x12, 0x5c, }; static const unsigned char ecdh_secp384r1_2093_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2093_sharedsecret[] = { 0x1e, 0x96, 0xc8, 0x29, 0xcc, 0x8a, 0x79, 0xd7, 0x3f, 0xa6, 0x43, 0x4b, 0xc1, 0x59, 0xdc, 0x43, 0x2c, 0x2a, 0xce, 0x3b, 0x49, 0xad, 0x2e, 0x74, 0x38, 0x0e, 0x7b, 0x02, 0xfe, 0xb5, 0x3b, 0x33, 0x93, 0x44, 0x6a, 0x03, 0x31, 0xb9, 0x74, 0xf2, 0xbf, 0x21, 0x9a, 0xe9, 0x5d, 0x2b, 0x23, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp384r1_2093 = { .name = "ecdh_secp384r1_2093", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2093_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2093_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2093_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 94 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2094 for ECDH, tcId is 95 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2094_peerpubkey[] = { 0x86, 0xcb, 0x7a, 0x3f, 0xf3, 0xae, 0xdb, 0x2f, 0x39, 0xae, 0x22, 0xf2, 0xe8, 0x28, 0xec, 0x08, 0x17, 0xd9, 0x4b, 0x83, 0x1a, 0xe6, 0x54, 0xdd, 0x66, 0xaf, 0xf3, 0x1a, 0x4d, 0x84, 0xb3, 0x3f, 0xab, 0x46, 0xfe, 0xc1, 0xab, 0xe1, 0xa9, 0xe6, 0xbb, 0xfa, 0xc5, 0xc9, 0x95, 0x65, 0xfd, 0x3b, 0xb2, 0xf7, 0x2d, 0x56, 0x5d, 0x2f, 0xf5, 0xc5, 0xc2, 0x4f, 0x37, 0x54, 0x48, 0xdd, 0x7b, 0xb4, 0x42, 0xdf, 0xdc, 0xb6, 0x1e, 0x07, 0x3e, 0x48, 0x40, 0x27, 0x07, 0xbb, 0xcc, 0x26, 0xad, 0x43, 0xd4, 0x78, 0x8a, 0x9f, 0x44, 0x71, 0x5f, 0x1b, 0x8e, 0x5b, 0x62, 0xbf, 0x49, 0xce, 0xca, 0x65, }; static const unsigned char ecdh_secp384r1_2094_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2094_sharedsecret[] = { 0x84, 0xe7, 0xaf, 0x17, 0x6d, 0xdb, 0xa3, 0xec, 0x3c, 0xe7, 0xb7, 0xfc, 0x43, 0xdf, 0x1e, 0xd5, 0x9b, 0x4e, 0x32, 0x28, 0xfa, 0x3f, 0x6f, 0xb4, 0x1a, 0x01, 0xf4, 0x13, 0xb0, 0xa6, 0xc7, 0x40, 0x4e, 0x43, 0xf7, 0x74, 0x71, 0x18, 0xba, 0x26, 0x4b, 0x7b, 0x02, 0x6d, 0x71, 0x4e, 0x90, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2094 = { .name = "ecdh_secp384r1_2094", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2094_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2094_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2094_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 95 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2095 for ECDH, tcId is 96 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2095_peerpubkey[] = { 0xcc, 0xf5, 0xa5, 0xb8, 0x0d, 0xeb, 0xa6, 0x31, 0x8b, 0x85, 0xf5, 0x7a, 0x0d, 0x56, 0x3e, 0x95, 0x76, 0x5c, 0x7f, 0xe3, 0x0d, 0xf5, 0xac, 0x88, 0x83, 0x7f, 0x35, 0x32, 0x9d, 0xd5, 0x10, 0x70, 0xe2, 0x98, 0x96, 0xf4, 0xd9, 0x6e, 0xf4, 0x0b, 0xcc, 0xcf, 0x36, 0x24, 0x4d, 0xf8, 0x35, 0x61, 0x4e, 0x87, 0x85, 0xf8, 0x06, 0x5f, 0x81, 0xc5, 0xe9, 0x27, 0x0f, 0xd5, 0x59, 0xb6, 0xa3, 0x80, 0xb4, 0x83, 0x87, 0x4d, 0x29, 0x8d, 0x0d, 0x38, 0x2e, 0xee, 0x1e, 0xdb, 0x6a, 0x59, 0xd9, 0xc1, 0x63, 0x29, 0x6a, 0xb7, 0xa0, 0x68, 0x18, 0x6b, 0x0d, 0x23, 0xf3, 0x37, 0x37, 0xdd, 0x0e, 0xed, }; static const unsigned char ecdh_secp384r1_2095_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2095_sharedsecret[] = { 0x82, 0x86, 0x4e, 0xf4, 0xd5, 0xfd, 0x25, 0x20, 0x4a, 0xe1, 0x59, 0x1c, 0x61, 0x9f, 0x3e, 0xd8, 0x13, 0xc7, 0x62, 0xba, 0xa0, 0x09, 0xba, 0x3b, 0x49, 0xac, 0x38, 0xc5, 0x7b, 0x2f, 0x46, 0x65, 0x2f, 0x71, 0x9a, 0xdc, 0xea, 0xbf, 0xbc, 0xaf, 0x98, 0x5b, 0x29, 0x95, 0x8d, 0x1f, 0x42, 0x0c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2095 = { .name = "ecdh_secp384r1_2095", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2095_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2095_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2095_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 96 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2096 for ECDH, tcId is 97 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2096_peerpubkey[] = { 0xc7, 0xf7, 0x7a, 0xd2, 0x86, 0xc6, 0x8b, 0x88, 0xff, 0xa6, 0x4f, 0xef, 0xe4, 0xaa, 0xab, 0x3d, 0xee, 0x1f, 0x9b, 0xae, 0x37, 0xb7, 0xd0, 0x69, 0xbb, 0x92, 0xbe, 0xa8, 0x20, 0x89, 0xe8, 0x31, 0xa7, 0x0d, 0xd9, 0xed, 0x00, 0x7b, 0xa6, 0xdc, 0xe1, 0x4f, 0x9c, 0x6d, 0x5e, 0x74, 0x4e, 0xcc, 0xb3, 0x19, 0xad, 0x6e, 0xc1, 0x34, 0x37, 0x6c, 0xb0, 0x59, 0xa1, 0xc8, 0x69, 0x84, 0xea, 0x8b, 0xd1, 0x54, 0xd8, 0x26, 0xed, 0x3d, 0xba, 0xe8, 0xd8, 0xd8, 0xe0, 0x6a, 0xa0, 0xcb, 0xe0, 0x12, 0x7d, 0xdf, 0xc3, 0x26, 0x21, 0xbb, 0xc1, 0xf7, 0x31, 0xf9, 0xd9, 0x0e, 0x68, 0x7a, 0x7c, 0xf5, }; static const unsigned char ecdh_secp384r1_2096_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2096_sharedsecret[] = { 0x1d, 0x0d, 0x3e, 0xd8, 0xc1, 0xe0, 0xd2, 0x8f, 0x5e, 0x37, 0x66, 0xf1, 0x93, 0xda, 0x7b, 0xdc, 0xa1, 0xcc, 0x08, 0x37, 0x62, 0x93, 0xf9, 0xbb, 0xde, 0x7b, 0xde, 0x0e, 0x9b, 0x1e, 0xbc, 0xf4, 0xcf, 0xa3, 0xc6, 0x83, 0xdc, 0x63, 0xbc, 0xb4, 0x2b, 0x2d, 0x9e, 0xde, 0x54, 0x24, 0x2b, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2096 = { .name = "ecdh_secp384r1_2096", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2096_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2096_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2096_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 97 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2097 for ECDH, tcId is 98 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2097_peerpubkey[] = { 0xaa, 0xc3, 0xb4, 0xd2, 0x80, 0xfc, 0x70, 0xa9, 0xfe, 0x17, 0x5e, 0x18, 0x82, 0xa6, 0x9e, 0xac, 0xa2, 0x48, 0x2a, 0x0c, 0x9d, 0xed, 0x92, 0x00, 0x44, 0x40, 0x28, 0xca, 0x3d, 0xbf, 0x50, 0x1f, 0xc3, 0x61, 0xf7, 0x65, 0x8b, 0xff, 0xec, 0x32, 0x1a, 0xd5, 0x77, 0xb4, 0x8c, 0x97, 0x86, 0xb0, 0x7f, 0x59, 0x6b, 0xd8, 0x68, 0xd5, 0x1e, 0x73, 0xf0, 0xf7, 0xc2, 0x5d, 0xb9, 0x56, 0xb1, 0x21, 0x71, 0xcf, 0xab, 0x11, 0xab, 0xd4, 0xab, 0xb0, 0x0a, 0x59, 0xac, 0x43, 0x2c, 0x0b, 0x0f, 0x05, 0x8f, 0x4c, 0xca, 0x44, 0xfb, 0x58, 0x1b, 0xc5, 0x80, 0x3e, 0x47, 0x2a, 0x05, 0x30, 0x5f, 0x33, }; static const unsigned char ecdh_secp384r1_2097_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2097_sharedsecret[] = { 0xbf, 0x19, 0x54, 0x8b, 0xb1, 0xd7, 0x33, 0x3f, 0x46, 0xcf, 0xf4, 0xd9, 0xd2, 0xa8, 0x1d, 0xbb, 0x48, 0xca, 0x82, 0xa5, 0x2f, 0xae, 0xc2, 0xb2, 0x0c, 0x3b, 0x27, 0xbd, 0xe3, 0x92, 0xa6, 0x6b, 0x8e, 0x44, 0x78, 0x0c, 0x20, 0x98, 0xa7, 0xb5, 0x25, 0x31, 0x57, 0xb0, 0x14, 0xb4, 0x0e, 0x51, }; static const wycheproof_ecdh_test ecdh_secp384r1_2097 = { .name = "ecdh_secp384r1_2097", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2097_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2097_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2097_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 98 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2098 for ECDH, tcId is 99 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2098_peerpubkey[] = { 0x74, 0x7e, 0xfb, 0x59, 0x5d, 0x03, 0xdc, 0x05, 0xdd, 0x50, 0xc1, 0x71, 0x55, 0xe1, 0x01, 0x8c, 0xa1, 0x47, 0x15, 0x05, 0x45, 0x92, 0x90, 0x6e, 0x67, 0x1a, 0x2e, 0x22, 0x04, 0xac, 0xae, 0x55, 0x2b, 0x6f, 0x5d, 0x34, 0x5d, 0x3f, 0xcf, 0x9b, 0x41, 0x71, 0x89, 0x2a, 0xfb, 0x3e, 0x55, 0x87, 0xd8, 0xe7, 0x09, 0xb0, 0x83, 0xa8, 0xb5, 0x36, 0x36, 0x63, 0x49, 0x2f, 0x8a, 0x2a, 0x9a, 0xf6, 0x4c, 0x3a, 0xd0, 0x1c, 0x64, 0xd8, 0xfa, 0x47, 0x64, 0xd6, 0x1f, 0x43, 0xe6, 0x90, 0x1a, 0x24, 0x45, 0xce, 0x94, 0xb5, 0x86, 0xf6, 0x09, 0x0a, 0xe0, 0x68, 0x7a, 0xf0, 0x09, 0x0f, 0xcd, 0x47, }; static const unsigned char ecdh_secp384r1_2098_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2098_sharedsecret[] = { 0x32, 0xd5, 0x69, 0x31, 0x0f, 0x61, 0xaf, 0x47, 0x5b, 0x6c, 0x6d, 0x07, 0x55, 0x99, 0x62, 0x5a, 0x33, 0x81, 0xb0, 0xa5, 0xb6, 0xa0, 0xb8, 0xc2, 0x7c, 0x71, 0x65, 0xd0, 0x0e, 0x2f, 0xd4, 0xdc, 0x8b, 0x2c, 0xf8, 0xe3, 0xb3, 0x3e, 0x28, 0xad, 0x40, 0x05, 0x52, 0x53, 0x84, 0x22, 0x7f, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp384r1_2098 = { .name = "ecdh_secp384r1_2098", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2098_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2098_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2098_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 99 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2099 for ECDH, tcId is 100 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2099_peerpubkey[] = { 0xab, 0x14, 0x76, 0x4b, 0xf2, 0x4f, 0x83, 0x13, 0xb1, 0xc4, 0x9c, 0x4b, 0xd6, 0xe3, 0x67, 0x23, 0x12, 0x75, 0xb3, 0x03, 0xc6, 0x01, 0xc6, 0x6f, 0x7e, 0x8b, 0x31, 0x05, 0xc6, 0xb0, 0x2a, 0x90, 0xb6, 0x0f, 0x38, 0x74, 0x5d, 0x75, 0x5c, 0xe4, 0xdd, 0x40, 0x68, 0x1e, 0xd1, 0x5a, 0x1a, 0xc9, 0x3e, 0x14, 0xcf, 0x2f, 0xa7, 0x08, 0x30, 0x0a, 0x2b, 0x27, 0x9f, 0x2c, 0x37, 0xfb, 0xc0, 0xda, 0x71, 0x75, 0xc9, 0x2c, 0x11, 0x14, 0xc5, 0x7e, 0xf2, 0x51, 0x46, 0x7f, 0x6f, 0x3d, 0xe7, 0x9f, 0xbc, 0x38, 0xcb, 0x1e, 0x3d, 0xb7, 0x0e, 0x4d, 0x95, 0x22, 0x5f, 0xbd, 0x8a, 0xd9, 0x68, 0x89, }; static const unsigned char ecdh_secp384r1_2099_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2099_sharedsecret[] = { 0x26, 0x6b, 0x26, 0x1b, 0x6d, 0xd9, 0xeb, 0x51, 0x77, 0x0f, 0x6c, 0x4c, 0x11, 0xb8, 0x71, 0x34, 0xab, 0xff, 0x16, 0x29, 0xb6, 0x51, 0x71, 0x10, 0x7a, 0x9b, 0x20, 0xe0, 0xc7, 0xd1, 0x68, 0xe1, 0xef, 0xc3, 0xcb, 0xc4, 0x02, 0x46, 0x4f, 0x36, 0xae, 0xb3, 0xc0, 0x27, 0xb9, 0x19, 0x8e, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_2099 = { .name = "ecdh_secp384r1_2099", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2099_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2099_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2099_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 100 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2100 for ECDH, tcId is 101 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2100_peerpubkey[] = { 0x1e, 0x1f, 0xe9, 0x73, 0x0f, 0xcd, 0x5b, 0x87, 0xb0, 0x65, 0xfa, 0x90, 0xa6, 0x95, 0x34, 0x03, 0x6b, 0xe4, 0x57, 0x58, 0x51, 0x34, 0x43, 0xf7, 0x9c, 0x64, 0x27, 0xdb, 0xc3, 0x1f, 0xc4, 0x03, 0xe8, 0x94, 0x04, 0x3f, 0xb9, 0xc7, 0xf9, 0xf5, 0x8c, 0x0a, 0x36, 0x70, 0xb1, 0xc0, 0xd8, 0x03, 0x59, 0xdb, 0x8f, 0x6a, 0x48, 0x97, 0x0c, 0xcb, 0x99, 0x18, 0xce, 0xf0, 0x4f, 0x35, 0x2a, 0x4d, 0x91, 0xa2, 0x04, 0x50, 0x21, 0x19, 0xb2, 0xb7, 0xef, 0xc6, 0xc6, 0x71, 0xa6, 0xba, 0x45, 0x37, 0xe8, 0x2c, 0x19, 0x6e, 0x6d, 0x42, 0x68, 0x5c, 0x5a, 0x6f, 0x55, 0x9e, 0x4e, 0x8a, 0xf7, 0x04, }; static const unsigned char ecdh_secp384r1_2100_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2100_sharedsecret[] = { 0xfa, 0x9f, 0x20, 0x8d, 0xce, 0xde, 0xe5, 0x97, 0xf5, 0x11, 0x22, 0xe6, 0x27, 0x4b, 0x86, 0x71, 0x0e, 0x36, 0x56, 0x1f, 0x23, 0x61, 0xe7, 0x61, 0x86, 0xfc, 0xb7, 0x3d, 0x1d, 0x7f, 0x29, 0x28, 0x42, 0x6d, 0x98, 0xc3, 0xf6, 0x9e, 0x4c, 0xf4, 0x8d, 0x30, 0x01, 0xd6, 0x49, 0x70, 0x42, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2100 = { .name = "ecdh_secp384r1_2100", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2100_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2100_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2100_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 101 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2101 for ECDH, tcId is 102 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2101_peerpubkey[] = { 0x83, 0xfc, 0xea, 0x20, 0x8c, 0x79, 0x22, 0x7c, 0xbd, 0x97, 0x31, 0x9a, 0x86, 0x59, 0x7f, 0x85, 0xcb, 0xfc, 0x19, 0xef, 0x60, 0xc5, 0xba, 0x7a, 0x92, 0xfc, 0x52, 0x1c, 0x68, 0x5e, 0x20, 0x8c, 0xec, 0x77, 0x35, 0xbe, 0x9b, 0xe2, 0x7c, 0x73, 0x7d, 0x3f, 0x9d, 0x2f, 0xaa, 0x1c, 0x3f, 0x46, 0x95, 0xa3, 0x21, 0x84, 0xd5, 0x8f, 0xc9, 0x00, 0x14, 0x02, 0x43, 0x6c, 0xe0, 0x0b, 0x52, 0xb8, 0x88, 0x5b, 0xb1, 0x15, 0x0f, 0x61, 0xe6, 0x60, 0xec, 0xeb, 0xa1, 0x07, 0x68, 0xd0, 0xf4, 0x1d, 0x5e, 0x4e, 0x7c, 0x21, 0xd4, 0xfd, 0x90, 0x9a, 0xce, 0xaf, 0x61, 0xa7, 0x45, 0x5d, 0xd0, 0xc6, }; static const unsigned char ecdh_secp384r1_2101_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2101_sharedsecret[] = { 0x9a, 0x1d, 0xdf, 0x3d, 0x9f, 0xeb, 0x19, 0x0a, 0x26, 0xf2, 0x0e, 0xd9, 0x25, 0xff, 0xbd, 0x35, 0xdf, 0x10, 0x17, 0xc4, 0xa4, 0xc9, 0x48, 0x5d, 0x34, 0x4c, 0xb8, 0xf8, 0x1c, 0x7f, 0x45, 0x2b, 0x2f, 0xf3, 0xae, 0xc4, 0x4b, 0xaf, 0x34, 0xe5, 0x08, 0x86, 0xf1, 0x83, 0x48, 0x0b, 0x63, 0x25, }; static const wycheproof_ecdh_test ecdh_secp384r1_2101 = { .name = "ecdh_secp384r1_2101", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2101_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2101_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2101_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 102 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2102 for ECDH, tcId is 103 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2102_peerpubkey[] = { 0x2b, 0xf2, 0x69, 0x36, 0xc9, 0x16, 0x4b, 0xa1, 0x07, 0x25, 0x44, 0xc4, 0x10, 0x75, 0x76, 0x30, 0xb9, 0x7d, 0x4e, 0x85, 0x3f, 0xdb, 0x78, 0x44, 0xf1, 0x81, 0x15, 0x07, 0xd0, 0x4a, 0x68, 0x7d, 0x95, 0x1f, 0xa6, 0x5a, 0x34, 0x36, 0x4e, 0x89, 0x4c, 0xf8, 0xb0, 0x81, 0x5d, 0xb9, 0x5f, 0x5e, 0x10, 0x66, 0x46, 0x27, 0xbf, 0x6f, 0x72, 0x33, 0x0a, 0x2d, 0x6f, 0x21, 0x23, 0x61, 0xa2, 0x33, 0x15, 0x5a, 0xbb, 0x79, 0xda, 0x54, 0x34, 0x3b, 0x85, 0x72, 0xe3, 0x0e, 0xac, 0xe8, 0xc8, 0xf5, 0x48, 0x02, 0x00, 0xe7, 0x51, 0xc2, 0x10, 0x20, 0x78, 0x52, 0x88, 0x12, 0xc8, 0x3f, 0x3c, 0xf4, }; static const unsigned char ecdh_secp384r1_2102_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2102_sharedsecret[] = { 0x47, 0xe4, 0x60, 0x8e, 0x9b, 0xcc, 0xf6, 0xa3, 0x29, 0x6e, 0x41, 0xfe, 0x34, 0xeb, 0x71, 0x81, 0xa1, 0xb5, 0xec, 0x30, 0x6a, 0x93, 0xaa, 0xbd, 0x5f, 0xb3, 0x8e, 0x75, 0xe3, 0xd7, 0x5e, 0x8e, 0x2e, 0xe4, 0xc1, 0xc4, 0x4a, 0x7d, 0x08, 0x66, 0x06, 0x81, 0xb9, 0xfa, 0x66, 0x64, 0x29, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_2102 = { .name = "ecdh_secp384r1_2102", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2102_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2102_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2102_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 103 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2103 for ECDH, tcId is 104 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2103_peerpubkey[] = { 0xbb, 0x58, 0x3d, 0xa5, 0xde, 0x4c, 0x35, 0x2e, 0x8a, 0x4f, 0xad, 0x31, 0xe9, 0xf7, 0x12, 0x97, 0xbc, 0x96, 0x31, 0x34, 0xec, 0x18, 0x2e, 0x96, 0x37, 0x9c, 0x6b, 0x28, 0xa1, 0x1d, 0x25, 0xfa, 0x4b, 0x77, 0xa4, 0xa0, 0xf9, 0x47, 0x08, 0x5d, 0xb3, 0x3b, 0x0e, 0xa7, 0x7b, 0x9d, 0xa0, 0x9b, 0xe1, 0xa0, 0xbd, 0x13, 0x00, 0x38, 0x3e, 0xbd, 0x60, 0xb5, 0xaa, 0x6e, 0xeb, 0x20, 0xf0, 0x3d, 0x56, 0xdd, 0x14, 0xdf, 0x46, 0x15, 0x74, 0x65, 0x14, 0x62, 0x78, 0x53, 0x6e, 0xbc, 0x28, 0xc5, 0x47, 0x1a, 0x94, 0xf0, 0x95, 0x55, 0x4c, 0x4c, 0x08, 0x5a, 0xc9, 0xdc, 0xeb, 0x1d, 0xa5, 0x5f, }; static const unsigned char ecdh_secp384r1_2103_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2103_sharedsecret[] = { 0x83, 0x93, 0xa2, 0x68, 0x9b, 0x37, 0x6a, 0x22, 0x8f, 0x32, 0x33, 0xac, 0x61, 0x57, 0x8b, 0xe1, 0xaa, 0x2d, 0xe1, 0xdb, 0xfb, 0xb2, 0x8b, 0x03, 0xad, 0x24, 0xf1, 0x1a, 0xd9, 0xd7, 0x7f, 0x85, 0x43, 0xe0, 0x97, 0x7a, 0xea, 0x9a, 0x76, 0x1d, 0x84, 0xe1, 0x15, 0xb6, 0x15, 0x07, 0xae, 0x59, }; static const wycheproof_ecdh_test ecdh_secp384r1_2103 = { .name = "ecdh_secp384r1_2103", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2103_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2103_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2103_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 104 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2104 for ECDH, tcId is 105 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2104_peerpubkey[] = { 0xe3, 0x77, 0x91, 0x59, 0x5b, 0x54, 0xe9, 0xb1, 0x7c, 0xc3, 0x07, 0x26, 0xd2, 0x42, 0x5e, 0xea, 0xcc, 0x96, 0x72, 0xf5, 0xfb, 0xc9, 0x1f, 0xc1, 0x08, 0xcf, 0x8c, 0x84, 0xff, 0xf9, 0xb6, 0x6e, 0xa6, 0x54, 0x83, 0x84, 0x1b, 0x76, 0x18, 0x69, 0x48, 0x15, 0xe1, 0xa4, 0x15, 0x18, 0x6b, 0xa7, 0x27, 0xaf, 0x3a, 0xe6, 0xc6, 0x58, 0xeb, 0x8c, 0x48, 0x5d, 0x6a, 0xd8, 0xe4, 0x9c, 0x1e, 0xad, 0xe7, 0x51, 0x45, 0x75, 0x62, 0xd6, 0x00, 0x3d, 0xe7, 0x5c, 0xd1, 0xf1, 0xe1, 0x3e, 0xc1, 0x5e, 0xa1, 0xd0, 0x41, 0x36, 0x02, 0xed, 0x7f, 0x6a, 0x6b, 0x7b, 0x84, 0xef, 0xd8, 0xa3, 0x05, 0x6e, }; static const unsigned char ecdh_secp384r1_2104_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2104_sharedsecret[] = { 0x20, 0x94, 0x17, 0xda, 0x72, 0x1b, 0x49, 0xd6, 0x4d, 0xfa, 0x09, 0x98, 0x3a, 0x86, 0x83, 0x52, 0x0e, 0x5e, 0x30, 0x0a, 0x52, 0xb2, 0xe8, 0xf1, 0x67, 0x77, 0x72, 0xee, 0x3c, 0x08, 0x6b, 0x33, 0x9a, 0x1d, 0xa2, 0x5c, 0xab, 0x2b, 0xe6, 0xe4, 0x4d, 0xe4, 0x52, 0x6c, 0x31, 0xf4, 0xeb, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp384r1_2104 = { .name = "ecdh_secp384r1_2104", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2104_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2104_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2104_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 105 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2105 for ECDH, tcId is 106 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2105_peerpubkey[] = { 0x7f, 0x12, 0xcb, 0x98, 0x7b, 0x08, 0xc2, 0x35, 0x52, 0x34, 0x65, 0x14, 0x6b, 0x42, 0x25, 0x85, 0x84, 0x39, 0x80, 0x62, 0xa1, 0x07, 0x42, 0x9c, 0xe4, 0x86, 0xb4, 0xb2, 0xf2, 0x6a, 0x96, 0x28, 0x29, 0x3a, 0xe4, 0xd3, 0x0a, 0xa6, 0x1c, 0x64, 0xbf, 0x92, 0xf9, 0x7e, 0x6c, 0x08, 0xae, 0xa8, 0xd6, 0x62, 0x1c, 0xfc, 0xe5, 0x27, 0x0c, 0xd7, 0xfa, 0x69, 0xdc, 0xb0, 0x38, 0xed, 0x8b, 0xa4, 0x28, 0xaf, 0xd7, 0x7d, 0x52, 0x8c, 0x23, 0x0f, 0x8e, 0x5c, 0x9b, 0x83, 0xef, 0x65, 0x9c, 0x7e, 0x57, 0x3f, 0x66, 0x71, 0xa1, 0x8d, 0x8b, 0x8c, 0x4c, 0xeb, 0x20, 0xf2, 0xd7, 0x60, 0x85, 0x8e, }; static const unsigned char ecdh_secp384r1_2105_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2105_sharedsecret[] = { 0xe7, 0xea, 0xc4, 0x60, 0xea, 0xda, 0x6e, 0xb9, 0x99, 0x88, 0xcc, 0x39, 0xf6, 0x12, 0x9a, 0x74, 0xd9, 0x51, 0x0d, 0x2e, 0xc3, 0x96, 0x01, 0xad, 0xae, 0x76, 0xb2, 0xb8, 0xfd, 0x61, 0x22, 0x40, 0x7b, 0x79, 0x41, 0x1f, 0x8e, 0x7a, 0xdf, 0xbc, 0x4f, 0x0d, 0xc5, 0x0d, 0xa9, 0xf2, 0xb8, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2105 = { .name = "ecdh_secp384r1_2105", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2105_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2105_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2105_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 106 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2106 for ECDH, tcId is 107 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2106_peerpubkey[] = { 0xdc, 0x4f, 0x06, 0xd6, 0x71, 0xd8, 0x60, 0x12, 0xcd, 0x5c, 0xe1, 0x03, 0x77, 0xff, 0xef, 0xbd, 0xe6, 0x57, 0xda, 0x08, 0xfa, 0x92, 0x59, 0xe4, 0xae, 0xff, 0xe6, 0x21, 0x1a, 0xc5, 0x7f, 0x6e, 0x1c, 0x5b, 0xf8, 0x73, 0x29, 0x89, 0xd4, 0x4c, 0x13, 0x42, 0xa8, 0x4f, 0xa6, 0xfd, 0x7f, 0xba, 0x27, 0x14, 0xce, 0x23, 0xcc, 0x0f, 0x8e, 0x0a, 0x8b, 0xda, 0x59, 0x3e, 0xc2, 0xb4, 0xb5, 0x29, 0x4f, 0xfc, 0x03, 0x63, 0xe6, 0xe8, 0x94, 0x03, 0xd4, 0x48, 0x2f, 0x35, 0x37, 0xdb, 0xa9, 0xe4, 0xf3, 0x6b, 0xe6, 0x8d, 0x8e, 0x2e, 0xda, 0xfd, 0x8c, 0xc2, 0xc0, 0x1f, 0x5f, 0x7d, 0xce, 0xc4, }; static const unsigned char ecdh_secp384r1_2106_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2106_sharedsecret[] = { 0x5a, 0x19, 0x7a, 0x9a, 0x87, 0x93, 0xd9, 0x4d, 0x8b, 0x84, 0x08, 0x4c, 0x6d, 0xc3, 0x6c, 0x36, 0xa2, 0x93, 0xac, 0x90, 0x33, 0x7a, 0x1c, 0xf6, 0xa2, 0x65, 0x34, 0x35, 0xd0, 0x5e, 0x2f, 0x56, 0x3b, 0xfd, 0x29, 0x33, 0xf2, 0x3e, 0xd3, 0xae, 0xfd, 0x75, 0x55, 0x5e, 0xad, 0x76, 0xe8, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_2106 = { .name = "ecdh_secp384r1_2106", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2106_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2106_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2106_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 107 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2107 for ECDH, tcId is 108 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2107_peerpubkey[] = { 0xca, 0x1e, 0xc6, 0x79, 0x8c, 0x56, 0x67, 0x81, 0x3b, 0xfc, 0x45, 0xdd, 0x18, 0x15, 0xe8, 0x2b, 0xec, 0x93, 0xea, 0xa7, 0x08, 0x10, 0x69, 0x76, 0x7b, 0xec, 0x36, 0x85, 0xcd, 0xfa, 0x56, 0x26, 0x7f, 0xc2, 0x4d, 0xa6, 0xc1, 0x86, 0xd8, 0xb3, 0x27, 0x16, 0x27, 0xa8, 0x52, 0x56, 0x0c, 0x5a, 0x09, 0x7d, 0x7c, 0x41, 0xe6, 0x10, 0xe5, 0x26, 0x7d, 0xab, 0xf5, 0x25, 0x76, 0x3f, 0x4a, 0x4a, 0x74, 0x78, 0xc5, 0xf9, 0xae, 0x4b, 0x80, 0xba, 0xa1, 0xe6, 0x20, 0xac, 0x1f, 0x22, 0xd8, 0x68, 0x9b, 0x07, 0xed, 0x9a, 0x99, 0xdc, 0xe0, 0xcd, 0x4a, 0x11, 0x68, 0x2f, 0x07, 0x22, 0x7f, 0xc4, }; static const unsigned char ecdh_secp384r1_2107_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2107_sharedsecret[] = { 0x8b, 0xf5, 0x20, 0x33, 0x7d, 0xe6, 0xe5, 0xc6, 0xf2, 0x70, 0x05, 0x16, 0x1b, 0x3b, 0x2f, 0x1c, 0xf0, 0x87, 0x59, 0x52, 0x7c, 0x8f, 0xc7, 0x93, 0x5e, 0x36, 0x21, 0xf6, 0x89, 0x36, 0xf1, 0x91, 0xac, 0x6e, 0x93, 0x1b, 0x79, 0x42, 0x78, 0xd3, 0xca, 0x1e, 0x37, 0x72, 0xdb, 0xfb, 0x19, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp384r1_2107 = { .name = "ecdh_secp384r1_2107", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2107_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2107_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2107_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 108 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2108 for ECDH, tcId is 109 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2108_peerpubkey[] = { 0x44, 0xb9, 0xe9, 0x76, 0xb9, 0xe8, 0x9a, 0xa3, 0x15, 0x19, 0xfc, 0x0a, 0x35, 0x28, 0x8c, 0x55, 0xe2, 0xd7, 0x63, 0x0a, 0x1c, 0xd1, 0xff, 0xfd, 0x28, 0x8c, 0xda, 0xc8, 0xc7, 0x4b, 0xc2, 0xed, 0xcb, 0x0f, 0xf8, 0x78, 0xfc, 0xcc, 0xeb, 0xbb, 0x78, 0xdf, 0x9e, 0x7e, 0xb0, 0xaf, 0xa6, 0xb1, 0x38, 0x47, 0x82, 0xb8, 0xa1, 0x13, 0x89, 0x46, 0x59, 0x4d, 0x8f, 0xd3, 0xb6, 0xc9, 0xb4, 0x95, 0x4e, 0x73, 0xd8, 0xc0, 0x40, 0xa7, 0xa1, 0x53, 0xf3, 0xda, 0x5a, 0x40, 0xf9, 0xfd, 0xaf, 0x3b, 0xf3, 0x1a, 0x45, 0x22, 0x41, 0x6c, 0x31, 0x6f, 0x10, 0xdc, 0x7c, 0xd8, 0xaf, 0xc2, 0x84, 0x9b, }; static const unsigned char ecdh_secp384r1_2108_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2108_sharedsecret[] = { 0x1e, 0x56, 0xdc, 0x30, 0xda, 0xd3, 0x3e, 0x34, 0x27, 0x35, 0x35, 0x68, 0x86, 0x05, 0xbb, 0x98, 0xad, 0x7c, 0x6d, 0xd5, 0x1d, 0x92, 0x67, 0xc9, 0x0a, 0x62, 0x56, 0x2d, 0x08, 0xe4, 0x7d, 0xd6, 0x84, 0x18, 0x0d, 0x4a, 0xb7, 0xab, 0xb6, 0xcc, 0x14, 0xae, 0x4c, 0x9b, 0xd6, 0xae, 0x9e, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_2108 = { .name = "ecdh_secp384r1_2108", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2108_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2108_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2108_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 109 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2109 for ECDH, tcId is 110 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2109_peerpubkey[] = { 0xcf, 0x66, 0x1b, 0x71, 0xc2, 0xb8, 0x73, 0x4f, 0x7c, 0xf5, 0x14, 0x2a, 0x66, 0xed, 0xf7, 0x87, 0xc5, 0x6a, 0x33, 0x17, 0x43, 0x03, 0xc2, 0x07, 0x41, 0xf0, 0x7e, 0x0c, 0x34, 0x8e, 0x1b, 0x54, 0x25, 0x70, 0x5d, 0x9e, 0xbb, 0xb4, 0x59, 0x96, 0x76, 0x21, 0xde, 0xd6, 0xeb, 0x56, 0xd7, 0x10, 0x37, 0x33, 0x7a, 0xa1, 0x6e, 0x1c, 0xf6, 0xe5, 0x03, 0x18, 0x21, 0x84, 0xc9, 0x45, 0x1f, 0x9b, 0xa4, 0x57, 0xd8, 0x1a, 0x03, 0x13, 0xfb, 0x98, 0x73, 0x43, 0xb8, 0xb3, 0x93, 0x44, 0xf3, 0x69, 0x32, 0x98, 0x01, 0x0c, 0xd5, 0xb7, 0x3e, 0x38, 0xbc, 0xde, 0xce, 0x66, 0xc6, 0x7f, 0xa5, 0x08, }; static const unsigned char ecdh_secp384r1_2109_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2109_sharedsecret[] = { 0x14, 0xe3, 0xa9, 0x7e, 0x9e, 0xe6, 0x90, 0x89, 0x41, 0x0b, 0x72, 0x45, 0x98, 0x70, 0x49, 0x5a, 0x03, 0x7d, 0x40, 0x77, 0xbb, 0xa0, 0x27, 0xef, 0xf4, 0xc4, 0x99, 0x56, 0x7d, 0x7e, 0x7f, 0x1a, 0xf2, 0x72, 0x0e, 0x1f, 0xed, 0xd0, 0x7b, 0xd7, 0x80, 0x50, 0x9a, 0x45, 0x16, 0xfa, 0x5c, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_2109 = { .name = "ecdh_secp384r1_2109", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2109_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2109_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2109_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 110 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2110 for ECDH, tcId is 111 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2110_peerpubkey[] = { 0x50, 0x79, 0x09, 0x08, 0xc0, 0x43, 0x34, 0x4e, 0x1c, 0xf4, 0x2b, 0x27, 0xe4, 0xdc, 0x33, 0xa3, 0x5d, 0x68, 0xa0, 0xb9, 0x3b, 0xe0, 0xec, 0x2b, 0xe0, 0x57, 0x45, 0xb3, 0xc8, 0x3c, 0x35, 0xf0, 0xa3, 0xec, 0xc3, 0xed, 0x27, 0xfb, 0x31, 0x88, 0xa5, 0xed, 0x9f, 0x24, 0xcd, 0xbd, 0x29, 0xd1, 0xb0, 0xf0, 0x3f, 0xf8, 0x5f, 0xd7, 0xfc, 0xad, 0x4e, 0xa5, 0xbb, 0xd8, 0xbd, 0x4c, 0x42, 0x93, 0x5f, 0x09, 0x57, 0xca, 0x80, 0x11, 0xcf, 0xc9, 0x3e, 0xbe, 0xb7, 0x89, 0xc4, 0x72, 0x14, 0xe6, 0x0e, 0x5d, 0xa1, 0x6e, 0x4d, 0xd8, 0x7a, 0x53, 0x54, 0x7e, 0xed, 0xee, 0x47, 0x9b, 0x09, 0x78, }; static const unsigned char ecdh_secp384r1_2110_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2110_sharedsecret[] = { 0x85, 0xa8, 0xdd, 0xb9, 0x99, 0x7e, 0x25, 0x25, 0xcd, 0x55, 0x57, 0x21, 0xf2, 0xd5, 0xf3, 0xb1, 0x99, 0xff, 0x76, 0xb5, 0x7e, 0x91, 0xee, 0xc6, 0xfc, 0x7d, 0x2c, 0x95, 0x70, 0x3a, 0x1a, 0x32, 0xf4, 0x6e, 0x3d, 0x46, 0x95, 0x2a, 0x90, 0xb5, 0x10, 0x54, 0xc5, 0xfd, 0x04, 0x6b, 0x31, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_2110 = { .name = "ecdh_secp384r1_2110", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2110_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2110_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2110_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 111 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2111 for ECDH, tcId is 112 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2111_peerpubkey[] = { 0x23, 0x95, 0xd0, 0x07, 0x79, 0xb6, 0xc7, 0xd4, 0xda, 0xd8, 0xcc, 0x9a, 0x89, 0x18, 0x49, 0x6c, 0x28, 0xb2, 0xd4, 0x07, 0x7e, 0x68, 0x86, 0xd0, 0xa1, 0xbe, 0xf5, 0x15, 0xe3, 0x12, 0x5d, 0xdd, 0x81, 0x3e, 0x5a, 0x9e, 0xa0, 0xf1, 0x85, 0xcd, 0x00, 0x9a, 0x69, 0xea, 0x92, 0x21, 0x01, 0x74, 0xb6, 0x76, 0x77, 0x5f, 0x76, 0x31, 0x83, 0xc8, 0x6f, 0x6f, 0xa5, 0x05, 0x51, 0xba, 0x13, 0x7d, 0x79, 0xa8, 0x3e, 0x8e, 0x32, 0xff, 0x2f, 0xc0, 0x9a, 0x2c, 0x28, 0xcd, 0xf8, 0x0c, 0xdd, 0xaf, 0xcc, 0x0f, 0x40, 0x69, 0x3e, 0x39, 0x85, 0xf2, 0x8f, 0xe5, 0xc7, 0xdf, 0xe2, 0xd8, 0xb2, 0x75, }; static const unsigned char ecdh_secp384r1_2111_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2111_sharedsecret[] = { 0xc2, 0x69, 0x46, 0x5c, 0xfb, 0x33, 0x6e, 0xd8, 0xc7, 0xe9, 0xc0, 0x37, 0x73, 0x49, 0x19, 0x3a, 0xa4, 0xdb, 0xdb, 0x92, 0xa9, 0xf4, 0x67, 0x0d, 0xbf, 0x7f, 0xa7, 0xa1, 0xf7, 0x55, 0x6e, 0x8e, 0x4b, 0x24, 0x0d, 0x5b, 0x70, 0xed, 0xee, 0xdd, 0x1b, 0xf5, 0xce, 0x76, 0x9c, 0xb8, 0x41, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2111 = { .name = "ecdh_secp384r1_2111", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2111_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2111_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2111_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 112 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2112 for ECDH, tcId is 113 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2112_peerpubkey[] = { 0x56, 0x34, 0xee, 0x15, 0x52, 0x63, 0xc0, 0x7d, 0x7d, 0x1e, 0x34, 0x6b, 0x86, 0x8d, 0xdd, 0x80, 0xe9, 0xa2, 0x82, 0xfc, 0xef, 0x93, 0xbf, 0x6d, 0xf8, 0xe8, 0xbc, 0x4e, 0xa3, 0x4f, 0xf0, 0x2e, 0x11, 0x9a, 0x9f, 0x70, 0x78, 0x16, 0xd0, 0x63, 0x68, 0xcc, 0xb9, 0x4c, 0x6e, 0x48, 0x02, 0xfb, 0xaa, 0xdc, 0x33, 0x99, 0x15, 0x74, 0xdd, 0xe8, 0x51, 0xe5, 0x47, 0xe4, 0x70, 0x27, 0xf5, 0x43, 0x53, 0xe0, 0x2d, 0x70, 0xbe, 0x6b, 0xfa, 0x9f, 0x73, 0x95, 0x3c, 0xa2, 0x59, 0x01, 0x1f, 0x23, 0xa4, 0xa8, 0x0c, 0xbb, 0xaa, 0xe8, 0x80, 0x5d, 0x9d, 0x09, 0x4e, 0xf1, 0x50, 0xe0, 0xc5, 0x4a, }; static const unsigned char ecdh_secp384r1_2112_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2112_sharedsecret[] = { 0x6a, 0x21, 0xf2, 0x44, 0x47, 0x25, 0x22, 0x38, 0x9f, 0x08, 0x4e, 0x2e, 0x4a, 0xe9, 0x9b, 0x74, 0x7b, 0x39, 0xcb, 0xee, 0x99, 0x6c, 0xe9, 0xa3, 0xfa, 0x05, 0x35, 0x32, 0x19, 0xb6, 0x0c, 0x20, 0xfa, 0x38, 0x34, 0xd3, 0x9b, 0x0b, 0x82, 0x6f, 0x10, 0x96, 0xb7, 0xa4, 0x67, 0xe8, 0xa2, 0x18, }; static const wycheproof_ecdh_test ecdh_secp384r1_2112 = { .name = "ecdh_secp384r1_2112", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2112_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2112_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2112_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 113 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2113 for ECDH, tcId is 114 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2113_peerpubkey[] = { 0x63, 0xaa, 0x6c, 0x3c, 0x24, 0x9a, 0x32, 0xeb, 0xbc, 0xcc, 0xe6, 0x5f, 0xfa, 0x1c, 0x56, 0xa2, 0x05, 0x64, 0x4b, 0x2c, 0x40, 0xb9, 0x31, 0xb1, 0xec, 0x9b, 0x04, 0x2b, 0x52, 0xc1, 0xe9, 0x9c, 0xd0, 0x7e, 0x53, 0x82, 0x99, 0xfb, 0x83, 0x7f, 0xe6, 0x75, 0x86, 0xaa, 0xe7, 0x1b, 0x47, 0x06, 0x16, 0x6a, 0xc4, 0x50, 0xfb, 0xd6, 0xd4, 0x92, 0x1b, 0x44, 0x2a, 0x11, 0x67, 0x9f, 0x77, 0x86, 0xba, 0x5a, 0x77, 0x2a, 0xb3, 0x3d, 0xb0, 0x05, 0x43, 0xa9, 0x41, 0xbb, 0xc0, 0x15, 0xe2, 0x35, 0x81, 0xba, 0x62, 0x5a, 0x72, 0xc0, 0xe4, 0xeb, 0x44, 0x83, 0x8e, 0x5f, 0x40, 0x6c, 0xa1, 0xdc, }; static const unsigned char ecdh_secp384r1_2113_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2113_sharedsecret[] = { 0xc4, 0x69, 0x91, 0x9f, 0x58, 0xd8, 0x0b, 0x1e, 0x45, 0xd5, 0xd5, 0x3e, 0xe2, 0x8d, 0x61, 0x6b, 0xdf, 0x82, 0x7a, 0x88, 0xe0, 0xb2, 0xf4, 0x99, 0x29, 0x1e, 0xc4, 0xf7, 0x6c, 0x3c, 0x89, 0xf2, 0x76, 0x77, 0x6e, 0xa9, 0x6a, 0x6b, 0x90, 0x53, 0xcf, 0x02, 0x77, 0x66, 0x98, 0x86, 0x45, 0x26, }; static const wycheproof_ecdh_test ecdh_secp384r1_2113 = { .name = "ecdh_secp384r1_2113", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2113_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2113_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2113_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 114 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2114 for ECDH, tcId is 115 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2114_peerpubkey[] = { 0xa2, 0x87, 0xbd, 0x74, 0xd5, 0x01, 0xc2, 0x9d, 0xf2, 0x3d, 0x78, 0x6b, 0x7c, 0x34, 0xea, 0x0d, 0xaf, 0x10, 0xe4, 0xb3, 0xfc, 0xe7, 0x1d, 0x72, 0x0f, 0x61, 0xa2, 0x72, 0xf2, 0x21, 0x51, 0xdb, 0x2c, 0x59, 0x14, 0x86, 0x74, 0x93, 0x02, 0x8c, 0x01, 0xe1, 0x03, 0x82, 0x0b, 0x0b, 0xa6, 0xb1, 0x21, 0xcb, 0x29, 0x8f, 0xf8, 0x97, 0x7e, 0xcf, 0x21, 0xfe, 0xa8, 0xee, 0x1b, 0x6b, 0xa7, 0xd9, 0xb9, 0x8d, 0xac, 0xc2, 0xa4, 0x5d, 0x75, 0xc6, 0x3e, 0xc8, 0x32, 0x30, 0x01, 0xa9, 0xbf, 0x5f, 0x5b, 0xa4, 0xd3, 0xcb, 0xfe, 0xe8, 0x04, 0x82, 0xca, 0x13, 0x33, 0xf4, 0xde, 0x90, 0xa1, 0x4a, }; static const unsigned char ecdh_secp384r1_2114_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2114_sharedsecret[] = { 0x18, 0xdd, 0x1d, 0x7b, 0x6b, 0xbc, 0x63, 0x11, 0xaf, 0xe5, 0x38, 0x3d, 0x79, 0x6a, 0x5f, 0xec, 0x13, 0x84, 0x4b, 0xae, 0x25, 0x70, 0x87, 0x25, 0x55, 0x4d, 0xe0, 0xb5, 0xf0, 0x3e, 0xc0, 0xf7, 0xd2, 0xe6, 0x3b, 0x64, 0xdb, 0x5f, 0x83, 0xd4, 0xee, 0x98, 0x90, 0xc6, 0x1e, 0x44, 0x2c, 0x41, }; static const wycheproof_ecdh_test ecdh_secp384r1_2114 = { .name = "ecdh_secp384r1_2114", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2114_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2114_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2114_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 115 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2115 for ECDH, tcId is 116 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2115_peerpubkey[] = { 0xba, 0x40, 0x6b, 0x46, 0xc1, 0xd9, 0x2d, 0x4b, 0xa3, 0xf4, 0x0b, 0x7b, 0x1f, 0xcf, 0x1e, 0x18, 0x22, 0x89, 0xb8, 0x4c, 0xdb, 0x38, 0x7f, 0x28, 0xe5, 0xad, 0x20, 0xf1, 0xed, 0x8c, 0x43, 0xfe, 0x5f, 0xfa, 0x37, 0x12, 0x84, 0x62, 0x76, 0x30, 0x51, 0xe8, 0x7f, 0x0d, 0x5e, 0xbf, 0xcd, 0x9d, 0x9d, 0xd4, 0x10, 0x7c, 0xe4, 0xd9, 0x2d, 0x78, 0x3d, 0x0f, 0x0f, 0x81, 0xd7, 0xa9, 0x98, 0xb7, 0x60, 0x60, 0x73, 0x5b, 0x6f, 0xd6, 0x3b, 0xfc, 0xd9, 0x71, 0xca, 0x70, 0x13, 0x2f, 0xe6, 0xdc, 0x9f, 0xbf, 0x85, 0x34, 0xec, 0xc7, 0x4b, 0x50, 0x1e, 0xa0, 0x1c, 0xd2, 0xe4, 0xf6, 0xc5, 0x64, }; static const unsigned char ecdh_secp384r1_2115_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2115_sharedsecret[] = { 0xd6, 0x39, 0xb9, 0xc3, 0x1a, 0xd3, 0xce, 0xdd, 0xda, 0x77, 0x45, 0xd1, 0x9e, 0x82, 0xfd, 0xe2, 0x72, 0xa8, 0x6d, 0x31, 0xf8, 0xe6, 0xc2, 0x03, 0xee, 0xd5, 0x3b, 0xcb, 0x70, 0x5e, 0x9f, 0xf5, 0x8d, 0x65, 0x9f, 0x8e, 0x9d, 0x66, 0xaa, 0x04, 0x92, 0xda, 0x54, 0x5a, 0x39, 0x92, 0x94, 0xec, }; static const wycheproof_ecdh_test ecdh_secp384r1_2115 = { .name = "ecdh_secp384r1_2115", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2115_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2115_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2115_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 116 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2116 for ECDH, tcId is 117 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2116_peerpubkey[] = { 0x22, 0x61, 0xb2, 0xbf, 0x60, 0x5c, 0x22, 0xf2, 0xf3, 0xae, 0xf6, 0x33, 0x87, 0x19, 0xb2, 0xc4, 0x86, 0x38, 0x8a, 0xd5, 0x24, 0x07, 0x19, 0xa5, 0x25, 0x73, 0x15, 0x96, 0x9e, 0xf0, 0x1b, 0xa2, 0x7f, 0x0a, 0x10, 0x4c, 0x89, 0x70, 0x47, 0x73, 0xa8, 0x1f, 0xda, 0xbe, 0xe6, 0xab, 0x5c, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_2116_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2116_sharedsecret[] = { 0xc9, 0x23, 0xfb, 0x0d, 0x4b, 0x24, 0xe9, 0x96, 0xe5, 0xe0, 0xd5, 0xdf, 0x15, 0x1d, 0x3c, 0x26, 0xb1, 0xf6, 0x1c, 0x05, 0xb1, 0x7b, 0x7f, 0xb3, 0x9f, 0xc8, 0x59, 0x0b, 0x47, 0xee, 0xaf, 0xf3, 0x47, 0x09, 0xf6, 0xf7, 0x32, 0x89, 0x23, 0xbd, 0xca, 0xf7, 0xe8, 0xe4, 0x13, 0xd7, 0x7d, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp384r1_2116 = { .name = "ecdh_secp384r1_2116", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2116_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2116_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2116_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 117 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2117 for ECDH, tcId is 118 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2117_peerpubkey[] = { 0xd3, 0x9c, 0x38, 0xaa, 0xfa, 0x09, 0x52, 0x33, 0xef, 0x1a, 0xf8, 0xc0, 0xf4, 0xaa, 0xf3, 0x57, 0xdd, 0x68, 0x41, 0x31, 0xb4, 0xac, 0x58, 0xa5, 0x34, 0xf3, 0xd9, 0x44, 0x61, 0x96, 0xb6, 0x00, 0x92, 0x07, 0x2d, 0xc7, 0xe5, 0x38, 0x10, 0x6b, 0x7b, 0x2e, 0x66, 0xdc, 0x33, 0xca, 0xc7, 0x28, 0x3a, 0x1b, 0x20, 0x3f, 0xca, 0x47, 0x82, 0x8e, 0x6f, 0x7a, 0x09, 0xaf, 0x64, 0x5a, 0xf0, 0xf7, 0x29, 0x80, 0x2c, 0xa2, 0xf4, 0x00, 0x0c, 0x4b, 0x97, 0x73, 0xb0, 0x8c, 0x5a, 0xf4, 0x0e, 0x20, 0x1a, 0x27, 0x49, 0x3a, 0xb3, 0xeb, 0xa9, 0xca, 0xd7, 0xda, 0x15, 0x7f, 0x89, 0xf1, 0x4a, 0x2c, }; static const unsigned char ecdh_secp384r1_2117_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2117_sharedsecret[] = { 0xaf, 0x39, 0x04, 0xf8, 0x3b, 0x9a, 0x0e, 0x95, 0xee, 0x0b, 0x86, 0xb0, 0x61, 0x55, 0x99, 0x3a, 0xe5, 0x98, 0xd1, 0x48, 0x98, 0x36, 0x6e, 0x5d, 0xcf, 0xc6, 0x43, 0xde, 0x9d, 0x5a, 0xb7, 0x2f, 0xc5, 0xfb, 0xef, 0x17, 0xd0, 0xa8, 0xfb, 0x36, 0xeb, 0xfd, 0xdc, 0xe4, 0x6e, 0x5d, 0x44, 0x55, }; static const wycheproof_ecdh_test ecdh_secp384r1_2117 = { .name = "ecdh_secp384r1_2117", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2117_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2117_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2117_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 118 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2118 for ECDH, tcId is 119 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2118_peerpubkey[] = { 0x86, 0xda, 0x57, 0x85, 0x67, 0x78, 0x8e, 0xa3, 0xcc, 0x0f, 0x2a, 0x9d, 0xa8, 0xd1, 0x39, 0x3e, 0xd3, 0xa4, 0x44, 0x7a, 0x75, 0xc1, 0x8e, 0xa8, 0x6a, 0xf9, 0xd8, 0x4b, 0x0c, 0xac, 0xc3, 0xb0, 0x37, 0x49, 0x19, 0x98, 0x90, 0xef, 0x8e, 0x5d, 0x31, 0x88, 0xd4, 0xf1, 0xd0, 0x41, 0xd4, 0x6e, 0x43, 0x3a, 0xcd, 0x5d, 0x9f, 0x55, 0x42, 0x43, 0x9e, 0xb2, 0x38, 0x4e, 0xc1, 0xde, 0x08, 0x47, 0xd0, 0x56, 0x05, 0x8e, 0xa9, 0x24, 0x89, 0xa7, 0x4e, 0x08, 0x3f, 0xfd, 0x6e, 0x03, 0x0d, 0x06, 0x0f, 0xad, 0x67, 0x4f, 0x6a, 0x2a, 0x9a, 0x7c, 0x21, 0x98, 0xb8, 0xbe, 0x9e, 0x46, 0x5b, 0xae, }; static const unsigned char ecdh_secp384r1_2118_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2118_sharedsecret[] = { 0x11, 0x24, 0xbe, 0xdd, 0x4c, 0x53, 0x8a, 0xe7, 0x12, 0x93, 0x08, 0x5f, 0x2c, 0x95, 0xcf, 0x6b, 0x13, 0xcf, 0xe7, 0x41, 0xf2, 0x1d, 0x62, 0xc1, 0xf0, 0x2a, 0x1e, 0x91, 0x16, 0x67, 0xd5, 0x34, 0x8b, 0x16, 0xd8, 0xaf, 0xb5, 0x44, 0x02, 0x1a, 0xcd, 0xc3, 0xcb, 0x74, 0x48, 0xd4, 0xd3, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_2118 = { .name = "ecdh_secp384r1_2118", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2118_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2118_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2118_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 119 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2119 for ECDH, tcId is 120 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2119_peerpubkey[] = { 0x11, 0x14, 0x47, 0xd2, 0x42, 0xf6, 0xb4, 0x21, 0xca, 0x91, 0xf5, 0x61, 0xd0, 0x4b, 0x2f, 0x1d, 0x2f, 0x0d, 0x92, 0x12, 0xd9, 0x18, 0xbb, 0x4a, 0x0f, 0xfb, 0x1a, 0xe6, 0x45, 0x9d, 0x07, 0x8e, 0x21, 0xa3, 0x12, 0xb2, 0xa1, 0x25, 0x94, 0xfc, 0x8c, 0x78, 0xfe, 0x94, 0x4c, 0x81, 0xd5, 0x13, 0xd3, 0xc9, 0x81, 0xd5, 0xe9, 0xcd, 0xa0, 0x6c, 0x43, 0x80, 0xd1, 0xa8, 0x42, 0xca, 0x5b, 0xb5, 0x1e, 0xd3, 0xa7, 0x12, 0xb0, 0x49, 0xdd, 0xa3, 0xa5, 0x0c, 0xe1, 0x0a, 0x9f, 0xbd, 0x0b, 0x69, 0xdf, 0xff, 0xaf, 0xf0, 0x78, 0x7c, 0x74, 0xd8, 0x32, 0x37, 0xba, 0x9c, 0x46, 0x86, 0xa0, 0x1e, }; static const unsigned char ecdh_secp384r1_2119_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2119_sharedsecret[] = { 0x69, 0x42, 0x61, 0x58, 0xa2, 0x99, 0x71, 0xef, 0x44, 0xb1, 0x17, 0x83, 0xef, 0x55, 0x9e, 0xf4, 0x29, 0x72, 0x46, 0x61, 0x1c, 0x99, 0x4d, 0x48, 0x15, 0x63, 0x71, 0x28, 0x86, 0x9d, 0x5f, 0x6a, 0x02, 0x02, 0x63, 0x2f, 0xe9, 0xb5, 0xad, 0x7c, 0x36, 0x5b, 0x63, 0x05, 0x0c, 0x9f, 0x2d, 0x08, }; static const wycheproof_ecdh_test ecdh_secp384r1_2119 = { .name = "ecdh_secp384r1_2119", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2119_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2119_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2119_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 120 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2120 for ECDH, tcId is 121 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2120_peerpubkey[] = { 0xd7, 0xcd, 0x50, 0x24, 0xc4, 0x48, 0x1e, 0x27, 0xd1, 0x65, 0x35, 0x66, 0x15, 0x2e, 0xfb, 0xa3, 0x28, 0x4b, 0x50, 0xba, 0x2a, 0x14, 0x1b, 0x26, 0x43, 0xff, 0xda, 0x18, 0xf3, 0x00, 0xfa, 0x64, 0xb8, 0x1b, 0x23, 0x4b, 0x8f, 0x64, 0x6c, 0xab, 0x47, 0x28, 0xb4, 0xe7, 0xa9, 0x70, 0x24, 0xd7, 0x68, 0x50, 0xae, 0xc0, 0xa2, 0xd1, 0x31, 0xc6, 0xac, 0xd5, 0xb2, 0x98, 0xb6, 0xf9, 0x05, 0xcd, 0xba, 0x18, 0xe6, 0x85, 0x64, 0xbc, 0x31, 0xf8, 0x82, 0xfe, 0xd5, 0x1b, 0x28, 0x78, 0x6a, 0x2e, 0x72, 0xf8, 0x81, 0x26, 0x68, 0xc9, 0x76, 0xf9, 0xdd, 0xc0, 0x42, 0x69, 0x55, 0x95, 0xfc, 0x6f, }; static const unsigned char ecdh_secp384r1_2120_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2120_sharedsecret[] = { 0x65, 0x97, 0x40, 0x1c, 0x83, 0x7f, 0xb4, 0x98, 0xef, 0x07, 0x80, 0xa3, 0x82, 0xde, 0xcd, 0x4a, 0x0d, 0xd5, 0x80, 0xe1, 0xaf, 0x5f, 0x24, 0xc4, 0x4a, 0xc1, 0x64, 0xe2, 0x56, 0xa4, 0x88, 0x4a, 0xd5, 0xbd, 0x2f, 0xb1, 0xf6, 0xc9, 0x64, 0x68, 0x2c, 0xb0, 0xbf, 0x79, 0xe2, 0xc7, 0xa6, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2120 = { .name = "ecdh_secp384r1_2120", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2120_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2120_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2120_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 121 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2121 for ECDH, tcId is 122 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2121_peerpubkey[] = { 0xe3, 0x14, 0x87, 0x54, 0x80, 0x37, 0xc0, 0x42, 0x3e, 0x57, 0x10, 0xfc, 0x60, 0xe7, 0x46, 0xab, 0x6e, 0x47, 0x35, 0x25, 0x61, 0xe4, 0x16, 0xb5, 0x83, 0x12, 0x3a, 0x6d, 0x45, 0xca, 0xa9, 0x11, 0x76, 0x2c, 0xd8, 0x8a, 0x60, 0xbc, 0xe5, 0x7b, 0x29, 0xa2, 0xec, 0x1a, 0x1d, 0xc9, 0x7f, 0xc1, 0xbd, 0x4b, 0x60, 0x40, 0x38, 0xe6, 0xac, 0x01, 0x6d, 0xbd, 0xd4, 0x8f, 0x0e, 0x6b, 0xd9, 0xf4, 0xb5, 0xda, 0xad, 0x8d, 0x68, 0xfc, 0x28, 0x83, 0x8c, 0x6a, 0xb4, 0xa4, 0xeb, 0x5a, 0xb0, 0xea, 0xea, 0x2c, 0xbd, 0xef, 0xa6, 0x1d, 0xc5, 0x7a, 0x3e, 0x04, 0xae, 0x71, 0x24, 0x29, 0x38, 0xb6, }; static const unsigned char ecdh_secp384r1_2121_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2121_sharedsecret[] = { 0x89, 0x41, 0x1d, 0x9c, 0x81, 0x49, 0xb9, 0x51, 0xfa, 0x0d, 0x5b, 0xea, 0x1e, 0x14, 0x1b, 0xdf, 0xc2, 0xbe, 0x7e, 0xd5, 0x6d, 0x5e, 0x61, 0x47, 0x39, 0x35, 0x78, 0x90, 0x16, 0xbf, 0xd2, 0xda, 0xf6, 0xa4, 0x0a, 0xc7, 0xbf, 0x5b, 0x1b, 0x0c, 0x0c, 0x02, 0xcd, 0x3a, 0xa0, 0xb2, 0xd9, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2121 = { .name = "ecdh_secp384r1_2121", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2121_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2121_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2121_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 122 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2122 for ECDH, tcId is 123 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2122_peerpubkey[] = { 0x1e, 0x17, 0xe1, 0x73, 0xd3, 0x7a, 0xb9, 0x83, 0x82, 0x83, 0xf8, 0x4f, 0x24, 0xa0, 0xa2, 0x5c, 0xaa, 0xa6, 0x0c, 0x41, 0x1f, 0xbf, 0xea, 0x58, 0x2c, 0x44, 0xf8, 0xfb, 0xa2, 0x56, 0x0e, 0xce, 0x02, 0x8c, 0xbe, 0x39, 0x7b, 0x0e, 0xda, 0x69, 0xfc, 0x87, 0x2d, 0x80, 0xd9, 0xeb, 0xe0, 0x65, 0x78, 0x9c, 0x07, 0x23, 0xea, 0xfc, 0xc9, 0xe9, 0xa2, 0xba, 0xd4, 0x31, 0xb1, 0x1c, 0xaf, 0x7c, 0x5d, 0x75, 0x98, 0xca, 0x99, 0x90, 0x74, 0x05, 0x6b, 0xa8, 0x08, 0xa5, 0xd0, 0x79, 0x77, 0xc6, 0x78, 0xf9, 0x53, 0x4d, 0xe1, 0x52, 0xff, 0xda, 0xca, 0x3f, 0x63, 0xcb, 0xa3, 0xf9, 0x78, 0x94, }; static const unsigned char ecdh_secp384r1_2122_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2122_sharedsecret[] = { 0x6f, 0x0a, 0xa1, 0x1a, 0xb7, 0x4a, 0xe5, 0x03, 0x4e, 0x23, 0x1e, 0xf2, 0x63, 0x0b, 0xc7, 0x6c, 0xda, 0x6e, 0xed, 0x26, 0x32, 0x5d, 0x12, 0x36, 0x42, 0xfc, 0xe6, 0xa9, 0x50, 0xb5, 0x0f, 0x90, 0x4b, 0xc0, 0x26, 0x9f, 0x8f, 0x58, 0x9b, 0xc4, 0xd3, 0x81, 0x07, 0x33, 0x2b, 0x14, 0xda, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_2122 = { .name = "ecdh_secp384r1_2122", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2122_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2122_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2122_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 123 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2123 for ECDH, tcId is 124 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2123_peerpubkey[] = { 0x76, 0xef, 0xcc, 0x83, 0x22, 0xf0, 0xaf, 0x8d, 0x62, 0xe7, 0x36, 0xa0, 0xe1, 0x10, 0xf6, 0x6b, 0x3a, 0xad, 0x5c, 0x87, 0xbf, 0x7a, 0x77, 0x33, 0x3f, 0xce, 0x86, 0x4f, 0x4b, 0xa6, 0xe8, 0xdf, 0xdc, 0x16, 0xd6, 0xad, 0xd2, 0xc5, 0x42, 0xc4, 0x80, 0x55, 0x89, 0xa7, 0x1f, 0x0e, 0x48, 0xa3, 0xc2, 0x68, 0xfe, 0xab, 0x02, 0x71, 0x4c, 0x89, 0x2f, 0x82, 0x66, 0x22, 0xb2, 0x5b, 0xd2, 0x1c, 0xe2, 0xa3, 0x35, 0x14, 0xb1, 0x6c, 0x9e, 0xe8, 0x4c, 0x72, 0x2b, 0x52, 0x3b, 0x19, 0xec, 0x5f, 0xc3, 0x4d, 0x87, 0x41, 0x33, 0x08, 0x0e, 0x15, 0x89, 0x81, 0x84, 0x93, 0x55, 0xe1, 0xf5, 0x0d, }; static const unsigned char ecdh_secp384r1_2123_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2123_sharedsecret[] = { 0x7e, 0xb9, 0x96, 0x2e, 0x04, 0x49, 0xcc, 0xd2, 0xe6, 0x0b, 0x4f, 0x80, 0x94, 0xd5, 0xa7, 0xb4, 0x61, 0xd0, 0xd4, 0xb0, 0x6a, 0xf0, 0xba, 0x30, 0x6b, 0x74, 0xab, 0x0d, 0x60, 0xad, 0x5c, 0xf8, 0x94, 0xfb, 0xfc, 0x28, 0x2a, 0xc8, 0xdc, 0xa3, 0xda, 0x19, 0x6d, 0x7a, 0x29, 0x6b, 0xaa, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_2123 = { .name = "ecdh_secp384r1_2123", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2123_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2123_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2123_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 124 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2124 for ECDH, tcId is 125 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2124_peerpubkey[] = { 0xc1, 0x47, 0xd6, 0xc2, 0x35, 0xd7, 0x40, 0xb3, 0x88, 0xe6, 0xd2, 0xaf, 0xaf, 0xcf, 0x85, 0xd5, 0xb7, 0x16, 0x6e, 0x0d, 0xf4, 0xea, 0x21, 0x29, 0x40, 0x88, 0xe3, 0x04, 0x9b, 0x5c, 0x27, 0xd7, 0x63, 0x3c, 0x93, 0xd3, 0x0f, 0xdc, 0xf2, 0xb9, 0x37, 0x5e, 0x18, 0x14, 0xf5, 0x1b, 0x57, 0xbb, 0xef, 0xb2, 0xc1, 0x25, 0x75, 0xc2, 0x23, 0x4e, 0xe1, 0xf6, 0xb1, 0x47, 0xb2, 0xe0, 0x4c, 0x10, 0x4a, 0x4d, 0x2b, 0x29, 0xcd, 0x84, 0x58, 0xf5, 0x9b, 0x57, 0xbf, 0xf7, 0x5c, 0xab, 0x9b, 0x6a, 0xcb, 0xe8, 0x54, 0xfc, 0x4d, 0x96, 0xfb, 0x73, 0x37, 0x2d, 0x60, 0x54, 0xbb, 0x76, 0x83, 0x90, }; static const unsigned char ecdh_secp384r1_2124_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2124_sharedsecret[] = { 0x79, 0x02, 0x95, 0xbe, 0xd6, 0x9f, 0x53, 0x47, 0xec, 0xaa, 0xe9, 0xbe, 0xfe, 0x15, 0xcd, 0x34, 0x99, 0x75, 0x9c, 0xdf, 0xbe, 0x51, 0x97, 0x4b, 0x1f, 0x1c, 0x4b, 0xc5, 0x76, 0xe7, 0xd8, 0x81, 0xce, 0xfa, 0x93, 0xd5, 0xe8, 0xbf, 0x2c, 0x21, 0xeb, 0xb9, 0x82, 0x69, 0x8e, 0x1c, 0x7a, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp384r1_2124 = { .name = "ecdh_secp384r1_2124", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2124_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2124_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2124_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 125 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2125 for ECDH, tcId is 126 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2125_peerpubkey[] = { 0x84, 0x9c, 0x98, 0xff, 0xf5, 0xe3, 0x1b, 0x10, 0x8a, 0xef, 0xb1, 0x6c, 0xc5, 0xcf, 0x5c, 0x7e, 0x88, 0x43, 0x9d, 0x8b, 0x3e, 0xf1, 0x88, 0xf2, 0xa5, 0xbc, 0x53, 0xf3, 0x09, 0x01, 0xde, 0xdf, 0xe2, 0x94, 0xab, 0xb3, 0x8f, 0xb8, 0xcb, 0x46, 0x54, 0x7a, 0x23, 0xcf, 0xe4, 0x79, 0x09, 0xd6, 0x56, 0x44, 0x9f, 0x8a, 0x09, 0xaa, 0x88, 0xf8, 0xe2, 0x60, 0x59, 0x8e, 0xa2, 0x77, 0x2d, 0xf7, 0x4d, 0x26, 0xa4, 0x43, 0x1a, 0x03, 0x78, 0x59, 0x34, 0x37, 0x3b, 0xe7, 0xb0, 0xec, 0x91, 0x87, 0xb8, 0x21, 0x59, 0x65, 0x76, 0x17, 0x23, 0xe7, 0x95, 0x91, 0x17, 0x69, 0x60, 0xea, 0xc0, 0x14, }; static const unsigned char ecdh_secp384r1_2125_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2125_sharedsecret[] = { 0x58, 0xa1, 0x1a, 0x17, 0xc4, 0xad, 0xa4, 0xd4, 0x46, 0xc0, 0x8b, 0x83, 0xaa, 0x05, 0x68, 0x7f, 0xee, 0x8f, 0xd6, 0xe7, 0x83, 0x03, 0x64, 0x8b, 0x85, 0x83, 0x26, 0x21, 0x97, 0xf8, 0x7b, 0xe9, 0x7d, 0xbe, 0x0b, 0xbd, 0x27, 0x4e, 0x44, 0x4a, 0x38, 0x4e, 0x22, 0x16, 0x96, 0x53, 0x0f, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2125 = { .name = "ecdh_secp384r1_2125", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2125_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2125_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2125_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 126 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2126 for ECDH, tcId is 127 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2126_peerpubkey[] = { 0x57, 0xcf, 0x64, 0x55, 0x78, 0xdd, 0x24, 0x2c, 0x71, 0x4d, 0x10, 0x0d, 0xd2, 0x35, 0x68, 0xb1, 0x6d, 0x37, 0x45, 0xda, 0x80, 0x97, 0x08, 0xd0, 0x1e, 0xb6, 0xa7, 0x16, 0x8e, 0x6f, 0x71, 0xde, 0xc2, 0x07, 0x4c, 0x5a, 0x6c, 0x23, 0xbd, 0x05, 0x52, 0x3d, 0xfc, 0xcc, 0x97, 0xde, 0xa6, 0xf0, 0x8d, 0xa1, 0x95, 0xda, 0xa2, 0x05, 0x6d, 0xa0, 0x57, 0x6b, 0xbc, 0x0f, 0xfb, 0x5e, 0x73, 0xbb, 0xda, 0xd0, 0x3b, 0x04, 0xd2, 0x3b, 0x4b, 0x60, 0x24, 0x51, 0xa5, 0xba, 0x91, 0xb1, 0x7d, 0xce, 0x30, 0x2f, 0x4a, 0xd1, 0x64, 0xc6, 0xa4, 0xa2, 0xb5, 0x8e, 0x3f, 0x02, 0x53, 0xa5, 0xe9, 0xd6, }; static const unsigned char ecdh_secp384r1_2126_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2126_sharedsecret[] = { 0x92, 0x60, 0x48, 0x3a, 0x16, 0x56, 0x90, 0xd5, 0x4c, 0x10, 0xcb, 0x86, 0x7a, 0x9f, 0x89, 0x6b, 0xbd, 0x12, 0x3d, 0x47, 0x68, 0xa1, 0x8d, 0x32, 0x23, 0x00, 0xd4, 0x20, 0xaa, 0xc8, 0x8a, 0xe2, 0x0f, 0x18, 0x8b, 0x57, 0xf8, 0xe9, 0x7a, 0xfa, 0xd5, 0x5e, 0xbb, 0x81, 0x57, 0x28, 0xf4, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp384r1_2126 = { .name = "ecdh_secp384r1_2126", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2126_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2126_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2126_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 127 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2127 for ECDH, tcId is 128 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2127_peerpubkey[] = { 0xca, 0xb2, 0xd9, 0xd3, 0x6c, 0x8e, 0xc0, 0x9f, 0x18, 0xba, 0xa0, 0xab, 0xb5, 0x21, 0x37, 0x2a, 0x5c, 0xc2, 0xf6, 0x24, 0x84, 0x8f, 0x95, 0x46, 0x0a, 0x86, 0x15, 0x23, 0x8e, 0x68, 0xc1, 0x1c, 0x1b, 0x43, 0xd2, 0x2b, 0x84, 0xd1, 0xe5, 0x35, 0xec, 0x1d, 0x85, 0x56, 0x0d, 0xe2, 0x93, 0xce, 0x1f, 0xd5, 0xe6, 0xe7, 0xac, 0x7e, 0xb6, 0xf1, 0x73, 0xad, 0x27, 0xb6, 0x39, 0x85, 0xfc, 0xc8, 0x3b, 0x95, 0x32, 0xaa, 0x56, 0xf2, 0xb5, 0x9b, 0x53, 0xa9, 0xd1, 0x16, 0x09, 0x8f, 0xda, 0x9a, 0xba, 0x49, 0xd5, 0x7c, 0x1e, 0xed, 0x0f, 0x06, 0x3b, 0xcc, 0x70, 0x1b, 0xb1, 0x0f, 0x6c, 0x2b, }; static const unsigned char ecdh_secp384r1_2127_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2127_sharedsecret[] = { 0xb4, 0x67, 0x9a, 0xf8, 0x0a, 0x2a, 0xd3, 0x4e, 0xf8, 0x6e, 0xac, 0xf2, 0xc2, 0x19, 0x15, 0x56, 0xbc, 0x02, 0x40, 0xc7, 0x91, 0x3f, 0xb1, 0x4c, 0x4c, 0x1f, 0x86, 0x23, 0xb5, 0xdb, 0x41, 0xb8, 0x54, 0xd6, 0x30, 0xdc, 0x65, 0x73, 0x8d, 0x1f, 0xaf, 0x54, 0x4a, 0xa4, 0x29, 0x79, 0xae, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2127 = { .name = "ecdh_secp384r1_2127", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2127_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2127_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2127_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 128 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2128 for ECDH, tcId is 129 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2128_peerpubkey[] = { 0xd7, 0x1d, 0xf4, 0x09, 0x5c, 0x13, 0x85, 0x23, 0x34, 0x0a, 0x40, 0x10, 0xcf, 0xa9, 0x76, 0xb3, 0xb2, 0x7a, 0xf4, 0x8c, 0xa8, 0x3e, 0x8c, 0x6b, 0xb4, 0x59, 0x6f, 0x9f, 0x8e, 0x8f, 0x13, 0xe3, 0x8d, 0xe4, 0xe2, 0x5c, 0xe1, 0xd3, 0x79, 0xb4, 0x1a, 0x95, 0xf9, 0xd7, 0xf8, 0xa8, 0x46, 0x06, 0xb2, 0x8c, 0x69, 0x70, 0x4b, 0x68, 0x78, 0x8e, 0xb6, 0xa3, 0x5c, 0x8b, 0xca, 0xa7, 0xd9, 0x71, 0x8e, 0x00, 0xc9, 0xbc, 0x56, 0x7a, 0xcd, 0xc4, 0x58, 0xb6, 0x73, 0x2a, 0xa8, 0x70, 0x41, 0xd2, 0x7b, 0x6a, 0x57, 0x4d, 0x51, 0xe9, 0x54, 0x37, 0x85, 0x5b, 0xdc, 0x86, 0x74, 0x8c, 0x5c, 0xac, }; static const unsigned char ecdh_secp384r1_2128_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2128_sharedsecret[] = { 0x8a, 0x34, 0xde, 0x8b, 0xeb, 0x88, 0x43, 0x64, 0xb5, 0x83, 0xc9, 0xcb, 0xce, 0x39, 0x09, 0x69, 0x96, 0x7c, 0xc2, 0xa5, 0x00, 0x90, 0xee, 0x13, 0x2a, 0xcb, 0xd4, 0x9b, 0xf7, 0x80, 0xad, 0x7f, 0x09, 0x2a, 0xe3, 0xeb, 0xd4, 0x68, 0x6a, 0x70, 0xba, 0x55, 0x4e, 0xfd, 0xd6, 0xac, 0xd4, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_2128 = { .name = "ecdh_secp384r1_2128", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2128_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2128_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2128_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 129 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2129 for ECDH, tcId is 130 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2129_peerpubkey[] = { 0xa5, 0x76, 0x17, 0x75, 0x85, 0x0a, 0x25, 0x98, 0x5a, 0x32, 0x43, 0x04, 0x42, 0xd6, 0x60, 0xaa, 0xdf, 0x9e, 0x1e, 0x38, 0x8b, 0x57, 0xe6, 0xe1, 0xbf, 0xe4, 0x14, 0x95, 0xb9, 0xa0, 0x5a, 0x82, 0x40, 0xf7, 0x7f, 0x33, 0x97, 0xc5, 0xcd, 0xb0, 0xc8, 0x3d, 0x73, 0x94, 0x59, 0x84, 0xab, 0xed, 0xd2, 0xc7, 0xcf, 0xa5, 0xd5, 0xd9, 0x17, 0x38, 0xc6, 0x57, 0x76, 0x46, 0x65, 0x8c, 0x04, 0x48, 0xf0, 0x15, 0x5b, 0x5b, 0xf8, 0x39, 0x57, 0x5a, 0x36, 0xd1, 0xb2, 0x6d, 0x87, 0xd1, 0xb2, 0xb3, 0xaf, 0xb4, 0xf6, 0x86, 0x53, 0xa6, 0xbf, 0xa5, 0xed, 0xfc, 0x57, 0xaa, 0x85, 0x29, 0xe6, 0x22, }; static const unsigned char ecdh_secp384r1_2129_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2129_sharedsecret[] = { 0x79, 0x0d, 0xfc, 0xff, 0x47, 0x21, 0xef, 0x17, 0x01, 0xe3, 0xff, 0x52, 0x1e, 0x42, 0x21, 0xbe, 0x51, 0xae, 0x24, 0x2f, 0x95, 0x16, 0x6b, 0x92, 0x92, 0xc7, 0xaa, 0x2f, 0xa3, 0xc9, 0xb7, 0x99, 0xaf, 0xd3, 0x53, 0x98, 0x7a, 0x53, 0x56, 0x90, 0xff, 0x20, 0xd6, 0x6f, 0x57, 0x8f, 0x38, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp384r1_2129 = { .name = "ecdh_secp384r1_2129", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2129_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2129_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2129_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 130 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2130 for ECDH, tcId is 131 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2130_peerpubkey[] = { 0x54, 0xfc, 0x2f, 0x89, 0xcd, 0xe6, 0xf6, 0xe8, 0x6b, 0x6c, 0xf3, 0x28, 0x61, 0x98, 0xf9, 0xa9, 0xe3, 0x3c, 0x8d, 0x66, 0x2c, 0x21, 0x51, 0x20, 0x5d, 0xdc, 0xff, 0x12, 0xe2, 0xd3, 0x2f, 0xa8, 0x91, 0xee, 0xc2, 0x35, 0x9b, 0xc0, 0x72, 0x24, 0xd6, 0x4c, 0x5e, 0x33, 0x9f, 0xf9, 0xd5, 0x89, 0x18, 0xa3, 0xb7, 0x93, 0x72, 0xd1, 0x42, 0xfb, 0x34, 0x1d, 0xf3, 0xb1, 0x5b, 0x54, 0xb3, 0x0e, 0x8f, 0x95, 0x6b, 0x07, 0x9b, 0x12, 0x78, 0x27, 0x6a, 0x33, 0xb4, 0xd8, 0x50, 0x89, 0x20, 0x94, 0x0c, 0xa6, 0x3f, 0xb8, 0xe9, 0x70, 0xff, 0x98, 0xf9, 0x1e, 0xcc, 0x79, 0x86, 0x27, 0x5e, 0xdb, }; static const unsigned char ecdh_secp384r1_2130_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2130_sharedsecret[] = { 0xcb, 0x86, 0x10, 0x53, 0xc1, 0xd6, 0x85, 0x19, 0x4e, 0xa5, 0x84, 0x13, 0xd8, 0xf9, 0x98, 0x1e, 0x07, 0x14, 0x5b, 0xc5, 0x73, 0xba, 0x92, 0x4b, 0xdb, 0xa2, 0xe2, 0x9c, 0x5f, 0x98, 0xe9, 0xe7, 0x0e, 0xa0, 0xcd, 0x04, 0x12, 0xd6, 0xc3, 0x87, 0x44, 0x9e, 0x9a, 0xe7, 0x67, 0xdc, 0x43, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_2130 = { .name = "ecdh_secp384r1_2130", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2130_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2130_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2130_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 131 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2131 for ECDH, tcId is 132 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2131_peerpubkey[] = { 0xbf, 0xbf, 0x3f, 0xab, 0x1a, 0xcb, 0x39, 0xce, 0x28, 0xf0, 0x63, 0xd7, 0x8c, 0xf2, 0x50, 0x77, 0x2b, 0xd0, 0x0b, 0xdc, 0xa9, 0x8b, 0x76, 0x9e, 0x1f, 0x1f, 0xd4, 0x42, 0xb7, 0x7f, 0x42, 0x70, 0x10, 0x6a, 0x5f, 0x7d, 0x91, 0x3c, 0x19, 0x05, 0xbe, 0xa0, 0xdc, 0x75, 0xb3, 0x1f, 0x87, 0xa1, 0x15, 0xc5, 0x66, 0xdb, 0xff, 0x0c, 0xd1, 0x07, 0x33, 0x25, 0x45, 0x0a, 0x91, 0x09, 0x6f, 0xe5, 0xf5, 0xd6, 0x01, 0xa6, 0x36, 0x40, 0x7c, 0xfb, 0xc4, 0xf5, 0x72, 0x0f, 0x39, 0x6f, 0xa6, 0xcb, 0x16, 0x98, 0x73, 0x70, 0xce, 0x70, 0xe2, 0x9b, 0xb7, 0xed, 0x2f, 0x44, 0x74, 0x25, 0xf1, 0x0a, }; static const unsigned char ecdh_secp384r1_2131_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2131_sharedsecret[] = { 0x37, 0x5f, 0xfb, 0x90, 0xad, 0x6c, 0x51, 0x86, 0x68, 0xe5, 0xd2, 0x59, 0x41, 0xac, 0xd5, 0xf9, 0xc0, 0x17, 0x34, 0x6d, 0x06, 0xf8, 0x93, 0xcf, 0x95, 0x75, 0x22, 0x58, 0xbc, 0xc5, 0xf9, 0xa2, 0x59, 0x96, 0xa8, 0x0f, 0x42, 0xe0, 0x47, 0x5a, 0x80, 0x44, 0x3d, 0xc4, 0x19, 0x7b, 0xba, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2131 = { .name = "ecdh_secp384r1_2131", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2131_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2131_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2131_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 132 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2132 for ECDH, tcId is 133 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2132_peerpubkey[] = { 0x57, 0x57, 0x57, 0x74, 0x80, 0xf3, 0x2a, 0xed, 0xac, 0x6e, 0x19, 0x76, 0x5f, 0x91, 0x97, 0xcc, 0x27, 0x8c, 0xb0, 0xb1, 0xa2, 0x1f, 0xc6, 0xb6, 0x42, 0x3c, 0x8f, 0x6c, 0x6c, 0xde, 0xa1, 0xd3, 0x24, 0xc9, 0x3e, 0xea, 0x8b, 0xd7, 0xdc, 0xca, 0x8f, 0xd2, 0x93, 0xd6, 0x98, 0x76, 0x52, 0x43, 0x60, 0xb1, 0xa4, 0x82, 0x55, 0x22, 0xac, 0xd8, 0x33, 0xd3, 0x8d, 0xbd, 0x61, 0x50, 0x85, 0x47, 0x35, 0x8a, 0x2f, 0x5c, 0x28, 0x1b, 0x49, 0x6a, 0xbd, 0x57, 0x07, 0x2a, 0xb1, 0x4f, 0x9a, 0x22, 0x35, 0xbc, 0xa0, 0x25, 0x45, 0xe0, 0x42, 0x75, 0x26, 0xbc, 0x2b, 0xbc, 0x92, 0x68, 0x34, 0x9f, }; static const unsigned char ecdh_secp384r1_2132_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2132_sharedsecret[] = { 0xd1, 0xa0, 0x2a, 0x26, 0x4a, 0xb1, 0x5a, 0xef, 0x52, 0xa5, 0x34, 0xeb, 0x50, 0x00, 0xe2, 0x94, 0x3d, 0x8c, 0xf1, 0xf7, 0x72, 0x55, 0xa2, 0x7f, 0x84, 0x5e, 0x96, 0xe1, 0xf8, 0x1d, 0xf4, 0x7e, 0xe9, 0x03, 0xc3, 0xe9, 0x21, 0x53, 0x9d, 0x77, 0xd7, 0x2f, 0x55, 0xb7, 0xef, 0xc9, 0xdf, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp384r1_2132 = { .name = "ecdh_secp384r1_2132", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2132_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2132_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2132_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 133 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2133 for ECDH, tcId is 134 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2133_peerpubkey[] = { 0x14, 0x52, 0xf5, 0xea, 0xfb, 0xb5, 0xcc, 0x56, 0x3f, 0x2c, 0x7c, 0xa4, 0x03, 0xb8, 0x03, 0xf6, 0xf8, 0xd6, 0x64, 0x79, 0x06, 0x25, 0x08, 0xa2, 0x25, 0x8a, 0x8d, 0x98, 0x8a, 0x76, 0x9b, 0x80, 0xe0, 0x77, 0x73, 0x5b, 0x45, 0xef, 0xab, 0x1f, 0x29, 0x7c, 0xee, 0xbd, 0x74, 0x34, 0x7f, 0x58, 0x4f, 0x2b, 0xad, 0xbc, 0xa5, 0x54, 0x57, 0x40, 0x48, 0x66, 0xba, 0xef, 0xab, 0xfa, 0x99, 0xb7, 0x0f, 0xbf, 0x10, 0x5d, 0x17, 0xf3, 0x52, 0x34, 0x7f, 0x67, 0x99, 0x64, 0x74, 0x48, 0x70, 0x8f, 0x78, 0x8f, 0x8a, 0x14, 0x5b, 0xdd, 0x96, 0xd4, 0xaf, 0x2d, 0x7e, 0x65, 0x4b, 0xe7, 0xe5, 0xf1, }; static const unsigned char ecdh_secp384r1_2133_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2133_sharedsecret[] = { 0xcc, 0xaa, 0x37, 0x76, 0x9d, 0x03, 0x51, 0x70, 0xbb, 0x5c, 0x19, 0xc1, 0x35, 0xda, 0x22, 0x91, 0x44, 0x6e, 0xfd, 0x7e, 0xcd, 0x3b, 0xe9, 0x00, 0x86, 0x12, 0xb8, 0xcc, 0xc2, 0x9f, 0x6e, 0x9d, 0x7a, 0x45, 0xdd, 0x4e, 0x04, 0x79, 0x12, 0x3f, 0x03, 0xe7, 0xe3, 0x04, 0xf3, 0x47, 0x29, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2133 = { .name = "ecdh_secp384r1_2133", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2133_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2133_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2133_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 134 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2134 for ECDH, tcId is 135 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2134_peerpubkey[] = { 0xad, 0x27, 0xa3, 0x65, 0xe4, 0xb6, 0x99, 0x4c, 0x5e, 0xd1, 0x35, 0xfc, 0x47, 0x94, 0xd7, 0x3e, 0xb7, 0x1e, 0xc2, 0x6d, 0x78, 0x7f, 0xec, 0x10, 0xf1, 0x38, 0x2b, 0x19, 0xc1, 0xb5, 0xcd, 0x1d, 0x67, 0x29, 0x99, 0xfe, 0xee, 0x86, 0xd5, 0xf3, 0x05, 0x51, 0x6d, 0x60, 0x1f, 0xd1, 0xc6, 0xaa, 0xf8, 0x66, 0x48, 0x58, 0x98, 0x8f, 0x02, 0xf3, 0x6c, 0x88, 0x8f, 0x71, 0x87, 0x20, 0x07, 0x87, 0x0b, 0xb3, 0x26, 0x54, 0xaa, 0x75, 0x53, 0x0f, 0xc3, 0xb7, 0xa2, 0x35, 0xf7, 0xfd, 0x2b, 0xcd, 0x81, 0x5e, 0x30, 0x34, 0x45, 0x52, 0x69, 0x60, 0xf6, 0xff, 0xcd, 0xd6, 0x1d, 0x2d, 0x13, 0x40, }; static const unsigned char ecdh_secp384r1_2134_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2134_sharedsecret[] = { 0x4a, 0xe9, 0x4d, 0x3e, 0xda, 0x58, 0x39, 0xf4, 0xb8, 0xb9, 0xff, 0xe6, 0xd5, 0x10, 0x14, 0x4c, 0xf2, 0x8b, 0xde, 0x98, 0x58, 0x1e, 0x82, 0x72, 0x6f, 0x2d, 0x76, 0xd9, 0x33, 0x91, 0x9a, 0xda, 0xb7, 0x1d, 0x2c, 0xdf, 0x4c, 0x43, 0x10, 0xf8, 0xab, 0xcc, 0x74, 0xd7, 0x0e, 0xba, 0x3a, 0x33, }; static const wycheproof_ecdh_test ecdh_secp384r1_2134 = { .name = "ecdh_secp384r1_2134", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2134_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2134_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2134_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 135 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2135 for ECDH, tcId is 136 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2135_peerpubkey[] = { 0x73, 0x30, 0x41, 0xf3, 0xa6, 0x04, 0x68, 0xbc, 0x07, 0x11, 0xd5, 0xa5, 0x07, 0x3a, 0x71, 0xef, 0x60, 0x62, 0xd0, 0xae, 0x70, 0x70, 0x6a, 0xf5, 0x13, 0x16, 0x03, 0x35, 0x80, 0xca, 0xe0, 0x58, 0xfc, 0x4a, 0xc9, 0x9e, 0xbb, 0xa8, 0x23, 0xb1, 0x9f, 0x48, 0xf3, 0x09, 0xe3, 0x4f, 0xb0, 0x29, 0x33, 0x67, 0x0d, 0xcc, 0x75, 0xed, 0x47, 0x74, 0x47, 0x71, 0xf6, 0x02, 0x38, 0xcc, 0xeb, 0xcd, 0xdc, 0xcd, 0x42, 0xd6, 0x4e, 0x41, 0x04, 0x5f, 0xd8, 0xeb, 0xc3, 0x5b, 0xba, 0xe0, 0xa3, 0x7b, 0x43, 0x38, 0x8d, 0xdb, 0x87, 0x35, 0x6c, 0xbb, 0x52, 0x5a, 0x13, 0xd5, 0x7f, 0x47, 0xa2, 0xcd, }; static const unsigned char ecdh_secp384r1_2135_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2135_sharedsecret[] = { 0x06, 0x2b, 0x8a, 0x96, 0x8e, 0x45, 0x43, 0x5c, 0x2b, 0x5b, 0x54, 0xb4, 0x17, 0xf5, 0x5e, 0x89, 0xf9, 0x35, 0xb6, 0x6d, 0xec, 0x44, 0x88, 0x2c, 0x06, 0xab, 0x8d, 0x6c, 0xda, 0x8d, 0xcf, 0xb5, 0x53, 0xa7, 0x83, 0x61, 0xd3, 0x82, 0xa9, 0x21, 0x11, 0x91, 0x87, 0x1e, 0x9a, 0x34, 0x22, 0x0f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2135 = { .name = "ecdh_secp384r1_2135", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2135_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2135_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2135_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 136 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2136 for ECDH, tcId is 137 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2136_peerpubkey[] = { 0x81, 0x88, 0x58, 0x04, 0xee, 0x93, 0x19, 0x88, 0xcf, 0xf3, 0xf2, 0x18, 0xc9, 0xaf, 0x14, 0x29, 0x57, 0x3c, 0xcf, 0x8c, 0x8f, 0x3d, 0xf4, 0x0c, 0x69, 0x8d, 0x97, 0x6e, 0x8b, 0xc7, 0xc1, 0x28, 0x81, 0x95, 0x34, 0x45, 0xdd, 0xc4, 0xf1, 0x90, 0x2b, 0x2f, 0x2f, 0x31, 0x53, 0x30, 0x4e, 0x82, 0xd7, 0x09, 0x4b, 0x67, 0x3b, 0x76, 0xbe, 0xeb, 0xfa, 0x5d, 0x84, 0xc4, 0x9b, 0x01, 0xce, 0x16, 0x8c, 0x45, 0x92, 0x01, 0xcb, 0x81, 0x92, 0xef, 0x96, 0xd8, 0x91, 0x01, 0x0e, 0x4b, 0xc8, 0x8f, 0x0a, 0xcc, 0x4f, 0xbb, 0x40, 0xad, 0x61, 0x96, 0x6e, 0x78, 0x7b, 0x9a, 0x29, 0x8a, 0x2b, 0xba, }; static const unsigned char ecdh_secp384r1_2136_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2136_sharedsecret[] = { 0xba, 0x41, 0xc3, 0x8d, 0x33, 0xb2, 0xae, 0x34, 0x27, 0x97, 0xee, 0x69, 0x72, 0x3f, 0x04, 0x2a, 0x71, 0xdd, 0x7f, 0xb1, 0x5f, 0x3d, 0xc8, 0x0d, 0xae, 0x40, 0x3d, 0x4f, 0x88, 0xac, 0xae, 0x28, 0xe2, 0xe5, 0x1f, 0x2c, 0xa9, 0xd5, 0x2b, 0x4a, 0xa4, 0xe2, 0xb3, 0xe5, 0x82, 0x57, 0xe2, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2136 = { .name = "ecdh_secp384r1_2136", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2136_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2136_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2136_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 137 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2137 for ECDH, tcId is 138 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2137_peerpubkey[] = { 0x16, 0x79, 0x15, 0xd9, 0x62, 0xa4, 0x05, 0xf8, 0xd0, 0x4d, 0x6d, 0x64, 0x94, 0x27, 0x0d, 0x88, 0x3f, 0xe7, 0x59, 0x4e, 0x9a, 0x21, 0xf7, 0xb5, 0x77, 0x15, 0x75, 0x0f, 0x8d, 0x78, 0xec, 0x07, 0x14, 0xf0, 0xfb, 0x85, 0xa9, 0xfe, 0x5a, 0xee, 0x4e, 0x6d, 0x10, 0x34, 0x4e, 0x4b, 0x12, 0xf9, 0x1f, 0x00, 0x44, 0x1c, 0x8b, 0xf5, 0x67, 0xff, 0x84, 0xe6, 0xee, 0x42, 0x98, 0xb9, 0xd3, 0x39, 0x2c, 0x78, 0xfb, 0x32, 0x46, 0x19, 0x58, 0x10, 0x2e, 0x1d, 0x29, 0xd2, 0xf4, 0xc4, 0x73, 0x21, 0x04, 0x24, 0x2c, 0xc4, 0xbf, 0xee, 0x22, 0xaa, 0x8f, 0x4a, 0x17, 0x2a, 0xa5, 0x10, 0xac, 0x88, }; static const unsigned char ecdh_secp384r1_2137_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2137_sharedsecret[] = { 0xc6, 0xaf, 0x4e, 0xae, 0x59, 0x99, 0xe0, 0xd0, 0x65, 0x85, 0x05, 0xcb, 0x4b, 0x39, 0x5e, 0x9d, 0x73, 0x59, 0x2a, 0x3d, 0x9d, 0x0b, 0x3c, 0x07, 0xca, 0xeb, 0x2b, 0xef, 0x1b, 0x03, 0xca, 0x4d, 0x60, 0x3b, 0x33, 0xe6, 0xf6, 0xbb, 0xd9, 0x0f, 0x94, 0x16, 0xc4, 0xaa, 0x00, 0x22, 0xe5, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_2137 = { .name = "ecdh_secp384r1_2137", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2137_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2137_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2137_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 138 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2138 for ECDH, tcId is 139 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2138_peerpubkey[] = { 0x66, 0xe1, 0xfe, 0x89, 0x3f, 0x72, 0xff, 0xea, 0x5e, 0x24, 0xea, 0x5a, 0x4f, 0x0d, 0x65, 0x58, 0xfd, 0xbd, 0x32, 0x22, 0xdb, 0xa6, 0xe3, 0x34, 0x07, 0x53, 0xc8, 0x29, 0x79, 0xac, 0x59, 0x53, 0x0d, 0xbd, 0x37, 0xfa, 0xc2, 0xf5, 0x13, 0x55, 0x46, 0x5d, 0x56, 0xaf, 0xe1, 0xde, 0x58, 0x2b, 0xea, 0xca, 0x91, 0x04, 0xad, 0x26, 0x9b, 0x0f, 0x84, 0x8d, 0x8b, 0x4d, 0x71, 0x18, 0x2a, 0xfc, 0x30, 0x12, 0x91, 0x47, 0x36, 0x9a, 0x74, 0x19, 0x3d, 0xdf, 0x4d, 0xdb, 0x3b, 0x6f, 0xf1, 0x28, 0xf9, 0x41, 0x68, 0xce, 0x0b, 0xc6, 0x0e, 0x77, 0x91, 0xb4, 0xb1, 0xca, 0x2e, 0x29, 0x43, 0x1b, }; static const unsigned char ecdh_secp384r1_2138_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2138_sharedsecret[] = { 0x9e, 0x36, 0x4a, 0xdc, 0xb7, 0x2b, 0x15, 0xa4, 0x2c, 0xbd, 0x6f, 0xa7, 0x91, 0x14, 0x88, 0x9e, 0x22, 0xb9, 0x3b, 0x53, 0x3b, 0x01, 0x19, 0xaf, 0xd9, 0x09, 0x14, 0xb1, 0x81, 0x12, 0x81, 0x51, 0xb8, 0xa1, 0x7d, 0xb4, 0x90, 0x04, 0xec, 0x39, 0xad, 0x5d, 0xb5, 0x60, 0x3f, 0xb9, 0x71, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2138 = { .name = "ecdh_secp384r1_2138", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2138_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2138_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2138_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 139 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2139 for ECDH, tcId is 140 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2139_peerpubkey[] = { 0x62, 0xeb, 0xaa, 0xbf, 0xf2, 0xa0, 0x7a, 0x85, 0x2a, 0xf9, 0xaa, 0xb8, 0x12, 0x6e, 0x93, 0xc3, 0x11, 0x09, 0xe8, 0x93, 0xcc, 0x61, 0xb3, 0x54, 0xa7, 0x2a, 0x17, 0x44, 0xcb, 0x40, 0x9a, 0x02, 0xce, 0xc6, 0xe6, 0x19, 0x58, 0x45, 0x95, 0x7a, 0x53, 0xbd, 0xe9, 0x7d, 0xec, 0x7a, 0x87, 0xc2, 0x5e, 0xa1, 0x1b, 0x00, 0x3a, 0x69, 0x4e, 0x37, 0x1c, 0x2b, 0xe1, 0xcf, 0x5d, 0xb5, 0xb7, 0xfb, 0xa2, 0x78, 0xf6, 0x96, 0x8f, 0x54, 0xc5, 0xfb, 0x66, 0x77, 0x98, 0x7b, 0xbb, 0x6b, 0x55, 0xdd, 0x90, 0x72, 0xe8, 0x32, 0x5b, 0x36, 0x5c, 0x25, 0x26, 0x2c, 0x50, 0x24, 0xf6, 0x8b, 0x2e, 0x5b, }; static const unsigned char ecdh_secp384r1_2139_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2139_sharedsecret[] = { 0x23, 0x10, 0x48, 0x06, 0xdb, 0xd8, 0x5f, 0x71, 0xd8, 0xfc, 0x38, 0x10, 0x1b, 0x0c, 0xd0, 0xbb, 0xcd, 0x60, 0x33, 0x1d, 0x8f, 0x74, 0x86, 0x9f, 0x06, 0x43, 0x11, 0x6a, 0xc3, 0x62, 0xb5, 0xe9, 0x33, 0xdb, 0x87, 0x43, 0xff, 0x80, 0xdf, 0xcc, 0x2d, 0xf5, 0xcb, 0xcb, 0xf0, 0x27, 0x18, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2139 = { .name = "ecdh_secp384r1_2139", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2139_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2139_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2139_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 140 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2140 for ECDH, tcId is 141 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2140_peerpubkey[] = { 0x27, 0x6a, 0x5a, 0x27, 0x4b, 0x46, 0xa0, 0xa3, 0x6f, 0x81, 0x1c, 0xf6, 0x4b, 0xc7, 0xa6, 0x44, 0xd5, 0xad, 0x9c, 0x12, 0x4b, 0xe0, 0x02, 0xa6, 0xfd, 0xd1, 0xcc, 0x11, 0x18, 0x80, 0x65, 0x5c, 0x8d, 0x29, 0x87, 0x67, 0x4e, 0xa4, 0x9e, 0x7d, 0x70, 0xd2, 0xa0, 0xae, 0x82, 0x0d, 0x1a, 0x7d, 0x4e, 0xc3, 0xba, 0xe2, 0xdd, 0x1d, 0x77, 0xaf, 0x08, 0x2f, 0xab, 0xcd, 0x68, 0xac, 0x20, 0xf2, 0x09, 0xe8, 0xfa, 0x44, 0x64, 0x78, 0x79, 0x42, 0x23, 0xbe, 0x1d, 0x63, 0xd7, 0x19, 0x87, 0xe9, 0x64, 0xe4, 0x5f, 0x0b, 0xcf, 0x6a, 0x2e, 0xa0, 0xa1, 0x2c, 0x63, 0x34, 0x45, 0x28, 0x5a, 0x46, }; static const unsigned char ecdh_secp384r1_2140_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2140_sharedsecret[] = { 0x28, 0x35, 0x02, 0x35, 0x5b, 0x21, 0x18, 0x9f, 0x73, 0x61, 0xe8, 0x94, 0x57, 0x55, 0x09, 0x74, 0xf8, 0x6a, 0xe2, 0xb6, 0x6d, 0x02, 0x55, 0x06, 0x89, 0x9c, 0x15, 0xb3, 0x90, 0xda, 0x24, 0x8e, 0x14, 0xfd, 0x1b, 0x4f, 0x25, 0xc8, 0x58, 0x4d, 0x1a, 0x71, 0xe7, 0xf8, 0xc9, 0x3f, 0xa9, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_2140 = { .name = "ecdh_secp384r1_2140", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2140_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2140_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2140_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 141 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2141 for ECDH, tcId is 142 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2141_peerpubkey[] = { 0x98, 0xfe, 0xe3, 0x14, 0xcf, 0xb3, 0xc0, 0x1c, 0xc2, 0xd9, 0xfd, 0x7c, 0x25, 0x68, 0x33, 0x60, 0x27, 0x84, 0x00, 0x08, 0xbc, 0xfb, 0xfc, 0x82, 0x92, 0x42, 0x1e, 0xd6, 0xb0, 0x72, 0x7f, 0xa2, 0x0b, 0x70, 0x02, 0xa5, 0x72, 0x6a, 0x68, 0x5d, 0x44, 0x96, 0x3a, 0xd8, 0xf7, 0x4c, 0x69, 0x5d, 0xa2, 0x5a, 0x54, 0x2b, 0x8e, 0x0b, 0xb9, 0xa4, 0x85, 0x8b, 0xe6, 0x4f, 0x70, 0x80, 0x0d, 0xa9, 0x3a, 0xf6, 0x77, 0x6b, 0xb7, 0x95, 0xbb, 0x16, 0x9f, 0x4c, 0x9d, 0x15, 0x17, 0x95, 0xf3, 0xa5, 0xa3, 0x7a, 0x3c, 0x82, 0x26, 0x4c, 0xf6, 0x87, 0x0c, 0x4d, 0xed, 0x68, 0x4a, 0x71, 0x26, 0x9b, }; static const unsigned char ecdh_secp384r1_2141_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2141_sharedsecret[] = { 0x90, 0x44, 0xbe, 0x70, 0x56, 0x66, 0x64, 0xed, 0x91, 0xda, 0xb8, 0x5a, 0xa5, 0xff, 0x64, 0x4d, 0x7a, 0x34, 0x68, 0x10, 0xd2, 0x67, 0x8d, 0x27, 0x75, 0x19, 0x17, 0xc3, 0x82, 0x0c, 0x4c, 0x82, 0x50, 0x34, 0xb7, 0x8a, 0x95, 0x7b, 0x8f, 0xd1, 0xd4, 0x7e, 0x86, 0xe6, 0x7e, 0x5b, 0xa9, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp384r1_2141 = { .name = "ecdh_secp384r1_2141", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2141_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2141_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2141_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 142 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2142 for ECDH, tcId is 143 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2142_peerpubkey[] = { 0xd1, 0x6d, 0x0b, 0x11, 0xd0, 0xa3, 0x26, 0xbb, 0x27, 0x25, 0xb3, 0xc9, 0xcd, 0x59, 0x87, 0x46, 0xaf, 0x11, 0x92, 0x4f, 0x61, 0x72, 0xce, 0x53, 0xb1, 0x9a, 0x94, 0x2b, 0x96, 0x55, 0x62, 0xc2, 0xa2, 0x87, 0x5f, 0xd1, 0x5c, 0xe1, 0xf4, 0x86, 0x91, 0x56, 0xd5, 0xcf, 0x08, 0x78, 0x0c, 0x74, 0xd4, 0xc4, 0x92, 0x7c, 0xa1, 0x75, 0xb5, 0x32, 0x7c, 0x9f, 0x32, 0x1c, 0xd2, 0xa7, 0xb1, 0xac, 0xb5, 0x8f, 0xce, 0x35, 0x11, 0x60, 0xda, 0xea, 0x5d, 0x5c, 0x64, 0xd7, 0x6d, 0x38, 0xd3, 0xab, 0x17, 0xf7, 0xc1, 0x43, 0x20, 0x93, 0xad, 0x4d, 0x62, 0x00, 0x53, 0xf6, 0xf6, 0x75, 0x86, 0x4a, }; static const unsigned char ecdh_secp384r1_2142_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2142_sharedsecret[] = { 0x1f, 0xa4, 0xc8, 0xe6, 0xde, 0xc8, 0x90, 0x88, 0xa8, 0xfe, 0x72, 0x55, 0x30, 0xf5, 0xc1, 0x54, 0x67, 0x2e, 0x84, 0x48, 0x8b, 0xaa, 0xf7, 0x0a, 0x08, 0xb2, 0xe9, 0x65, 0x65, 0x96, 0x26, 0x53, 0x57, 0x74, 0x02, 0x16, 0x14, 0x24, 0x29, 0x4b, 0x7f, 0x37, 0x72, 0x08, 0xfc, 0x93, 0x61, 0x39, }; static const wycheproof_ecdh_test ecdh_secp384r1_2142 = { .name = "ecdh_secp384r1_2142", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2142_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2142_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2142_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 143 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2143 for ECDH, tcId is 144 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2143_peerpubkey[] = { 0x10, 0x52, 0x6e, 0x3b, 0x09, 0x7a, 0x99, 0xea, 0x50, 0x7b, 0xa6, 0x79, 0x5e, 0xa1, 0xf7, 0x77, 0x18, 0x69, 0x04, 0x60, 0x11, 0x7b, 0xfa, 0xc9, 0xed, 0x95, 0xbe, 0xe3, 0x11, 0xdb, 0x5f, 0x8a, 0x1a, 0x27, 0x67, 0xc1, 0x34, 0xb1, 0x9d, 0xb3, 0xc3, 0x87, 0xa1, 0xfb, 0x45, 0xbe, 0x70, 0x29, 0x31, 0x2c, 0x75, 0xd7, 0xbb, 0xee, 0xee, 0x48, 0xbc, 0x15, 0xb5, 0x5d, 0xfb, 0x71, 0x65, 0x11, 0xc5, 0x63, 0x4d, 0x71, 0x9d, 0x26, 0x90, 0x3b, 0xca, 0xce, 0x1c, 0x60, 0xa8, 0xe0, 0x30, 0x49, 0x61, 0x56, 0xd9, 0xcc, 0xac, 0x97, 0xca, 0xc7, 0x24, 0xe0, 0x93, 0x57, 0x4a, 0xe4, 0xbc, 0x83, }; static const unsigned char ecdh_secp384r1_2143_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2143_sharedsecret[] = { 0x04, 0xf4, 0x02, 0x9d, 0x37, 0x23, 0x32, 0xb4, 0xb2, 0x26, 0xc9, 0xf3, 0x25, 0x21, 0xea, 0x39, 0xa5, 0x8b, 0x65, 0x5d, 0x24, 0xe3, 0x51, 0x90, 0xce, 0x04, 0xd5, 0x8f, 0x0c, 0x04, 0x81, 0x4b, 0xe7, 0xf6, 0xff, 0xcb, 0x8a, 0x4a, 0x15, 0x13, 0x42, 0x24, 0x13, 0x4f, 0x02, 0x9e, 0xda, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2143 = { .name = "ecdh_secp384r1_2143", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2143_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2143_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2143_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 144 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2144 for ECDH, tcId is 145 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2144_peerpubkey[] = { 0xe6, 0x32, 0xcb, 0x20, 0x12, 0x88, 0xb6, 0x43, 0xf2, 0x35, 0x53, 0x3c, 0x44, 0x84, 0x6b, 0x11, 0xa2, 0x87, 0x40, 0xee, 0x41, 0x37, 0xa2, 0x2c, 0xff, 0x7f, 0x54, 0x20, 0x54, 0xd6, 0x33, 0x7f, 0x46, 0x36, 0x38, 0x49, 0xc8, 0x31, 0x0e, 0x20, 0xd8, 0xb2, 0x9b, 0xad, 0xdb, 0x31, 0x09, 0xff, 0x94, 0x8d, 0x42, 0xae, 0x95, 0x9c, 0x3a, 0xe1, 0x43, 0xd4, 0xf0, 0x2d, 0x26, 0x87, 0x26, 0xbc, 0x2b, 0x66, 0xba, 0xfe, 0xd7, 0x65, 0x7b, 0x1a, 0x53, 0xe2, 0x3e, 0xed, 0x48, 0x09, 0x4c, 0x5c, 0xa8, 0xd2, 0x8d, 0x16, 0x12, 0x1a, 0xa6, 0x23, 0x7d, 0x81, 0x50, 0xad, 0x6c, 0x32, 0x66, 0x55, }; static const unsigned char ecdh_secp384r1_2144_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2144_sharedsecret[] = { 0xf4, 0x1f, 0x91, 0x21, 0x65, 0x82, 0x7c, 0xea, 0x27, 0xab, 0x81, 0x47, 0xa4, 0x6a, 0xbe, 0xb3, 0x0c, 0x1b, 0xc7, 0x3c, 0xfe, 0x05, 0x20, 0xd7, 0xd8, 0x69, 0x8d, 0xf8, 0xf9, 0x52, 0x9a, 0xfe, 0x26, 0xea, 0xc7, 0x07, 0x34, 0x0f, 0x38, 0xb4, 0x9e, 0xc5, 0xe7, 0x41, 0xd6, 0x46, 0xb9, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_2144 = { .name = "ecdh_secp384r1_2144", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2144_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2144_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2144_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 145 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2145 for ECDH, tcId is 146 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2145_peerpubkey[] = { 0x08, 0x83, 0x30, 0x38, 0x06, 0x13, 0xad, 0xb0, 0xb8, 0xe5, 0x31, 0x64, 0x98, 0x09, 0xfb, 0xea, 0x34, 0x0e, 0xdb, 0xdf, 0x59, 0x8a, 0xf0, 0x28, 0xe7, 0x4b, 0xa0, 0xb4, 0xf1, 0x8e, 0x2d, 0x50, 0x11, 0x85, 0x31, 0xb9, 0xa9, 0x2b, 0x07, 0x75, 0x3b, 0x2c, 0x13, 0xce, 0xb8, 0x7d, 0x3c, 0x8e, 0x38, 0xe6, 0x25, 0xb5, 0x00, 0xf4, 0xb9, 0xbd, 0x2d, 0xc7, 0x81, 0x89, 0x2f, 0xff, 0x96, 0xd8, 0x92, 0x71, 0x90, 0x9d, 0x3e, 0x56, 0x1a, 0x63, 0xe4, 0x15, 0x46, 0x7d, 0x6d, 0x45, 0x5d, 0x0a, 0x4c, 0x19, 0xc3, 0x6f, 0x16, 0xdc, 0xc2, 0x41, 0x7a, 0x34, 0x25, 0xc2, 0xad, 0xda, 0x90, 0x34, }; static const unsigned char ecdh_secp384r1_2145_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2145_sharedsecret[] = { 0x6e, 0x43, 0x7e, 0x26, 0x31, 0x6e, 0xb2, 0x59, 0x64, 0x00, 0xd8, 0xfd, 0xda, 0x5b, 0xe9, 0x0c, 0xaa, 0x94, 0xd6, 0x2c, 0x42, 0x5f, 0x27, 0xdf, 0x5c, 0xa6, 0x78, 0x98, 0xa8, 0xff, 0xdf, 0x3c, 0xde, 0x57, 0x7c, 0x4d, 0x2d, 0x66, 0xf6, 0x52, 0x24, 0x98, 0xf0, 0xb2, 0x95, 0xd7, 0x7a, 0x2e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2145 = { .name = "ecdh_secp384r1_2145", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2145_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2145_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2145_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 146 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2146 for ECDH, tcId is 147 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2146_peerpubkey[] = { 0xd9, 0xa9, 0xd1, 0xe0, 0xaa, 0xca, 0xef, 0x4a, 0xec, 0xf2, 0x41, 0xd6, 0x90, 0xee, 0x41, 0x01, 0xdf, 0x74, 0xd7, 0xa3, 0x7f, 0x18, 0xce, 0x31, 0x81, 0x12, 0x8f, 0x8d, 0x42, 0x55, 0xcd, 0x34, 0x70, 0x2b, 0x17, 0xf1, 0x16, 0xb2, 0x50, 0x6c, 0xb8, 0xf5, 0x77, 0xd9, 0x35, 0x7e, 0x36, 0x29, 0x96, 0x6e, 0x62, 0xe6, 0xf9, 0x5c, 0x9e, 0xb7, 0x83, 0x3c, 0xcc, 0x1f, 0x22, 0x95, 0x6a, 0x1e, 0x25, 0x99, 0xa8, 0x75, 0xf8, 0x13, 0x9d, 0x9a, 0x2b, 0x31, 0xe2, 0x00, 0x06, 0x11, 0xb4, 0xd6, 0xdb, 0x1d, 0x23, 0xe7, 0xf0, 0xdb, 0x5b, 0x5c, 0x17, 0xbb, 0x44, 0xe1, 0x50, 0xea, 0x26, 0x95, }; static const unsigned char ecdh_secp384r1_2146_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2146_sharedsecret[] = { 0x85, 0x47, 0x72, 0xb9, 0xb7, 0x7d, 0x46, 0x87, 0x57, 0x1f, 0x19, 0x34, 0x06, 0x1d, 0xbc, 0xe0, 0x01, 0x6d, 0x47, 0xb9, 0x0a, 0x8b, 0x5d, 0x38, 0x22, 0x94, 0x75, 0xc2, 0x13, 0xcd, 0x5d, 0xf2, 0x5f, 0x96, 0x0b, 0x77, 0x5a, 0xe7, 0x29, 0x09, 0xcc, 0xcc, 0x5b, 0xa1, 0x4d, 0xd0, 0x34, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_2146 = { .name = "ecdh_secp384r1_2146", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2146_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2146_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2146_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 147 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2147 for ECDH, tcId is 148 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2147_peerpubkey[] = { 0x53, 0x5d, 0x22, 0xf3, 0x9c, 0x8a, 0x55, 0x91, 0xe7, 0xa1, 0xde, 0xef, 0x7a, 0x6c, 0x34, 0x96, 0x5f, 0xb5, 0xd1, 0xe6, 0x16, 0xf1, 0x4b, 0xb1, 0x2a, 0x7e, 0x63, 0x10, 0xd5, 0x20, 0x35, 0x0f, 0x2f, 0x75, 0x83, 0x6f, 0x9c, 0x81, 0x89, 0xec, 0x45, 0x03, 0xef, 0x74, 0xa0, 0xb8, 0x50, 0xd4, 0xab, 0xb0, 0x5a, 0xb1, 0xe5, 0xc6, 0x06, 0x18, 0x84, 0xd1, 0xef, 0xf3, 0xd2, 0xbe, 0x78, 0xc7, 0x67, 0x59, 0xb9, 0x86, 0xdd, 0xe7, 0x05, 0x52, 0xaa, 0x1e, 0x97, 0xbc, 0x01, 0x4f, 0x33, 0x3c, 0x0d, 0x5a, 0xf8, 0xb4, 0x6d, 0x61, 0xe1, 0xae, 0x06, 0x77, 0x4e, 0x2f, 0x86, 0x26, 0x73, 0x12, }; static const unsigned char ecdh_secp384r1_2147_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2147_sharedsecret[] = { 0x03, 0x7d, 0x45, 0x9a, 0x54, 0xfe, 0x6b, 0x69, 0xd8, 0x93, 0xf4, 0xd3, 0x09, 0x4a, 0x5e, 0x0a, 0x93, 0x25, 0x1d, 0x52, 0x54, 0xce, 0xf5, 0xb0, 0x22, 0xe7, 0x06, 0x5f, 0xdf, 0x52, 0xe3, 0xbe, 0x81, 0x27, 0xf2, 0xae, 0x2e, 0x33, 0x6e, 0x26, 0x1a, 0x71, 0xf6, 0xe4, 0x1a, 0xac, 0xb2, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_2147 = { .name = "ecdh_secp384r1_2147", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2147_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2147_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2147_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 148 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2148 for ECDH, tcId is 149 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2148_peerpubkey[] = { 0x89, 0x40, 0x2a, 0x14, 0x3d, 0x57, 0xec, 0x58, 0x5a, 0xee, 0x12, 0x43, 0xd3, 0xa7, 0xad, 0xfa, 0x87, 0xeb, 0x80, 0xc6, 0x0b, 0xd0, 0x9c, 0xbb, 0x56, 0xb6, 0x4e, 0xb0, 0xa1, 0xb7, 0xf5, 0x92, 0x73, 0x18, 0xd8, 0x57, 0x3c, 0x62, 0x39, 0xc6, 0xfe, 0xea, 0xa5, 0x8d, 0xc2, 0xae, 0x2e, 0x40, 0xd6, 0x05, 0x18, 0x9a, 0xc4, 0xa6, 0x6b, 0xd6, 0xb9, 0xe7, 0x08, 0xbd, 0xbc, 0xcc, 0x46, 0x47, 0x54, 0x3c, 0x0d, 0xd1, 0xd3, 0xc6, 0x4a, 0x2c, 0x16, 0x0c, 0x32, 0xf7, 0x29, 0xf2, 0xb1, 0x5d, 0xd9, 0x58, 0x52, 0xc9, 0xb2, 0x07, 0x50, 0x86, 0x51, 0xd7, 0x74, 0x63, 0x95, 0xa5, 0xa4, 0x90, }; static const unsigned char ecdh_secp384r1_2148_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2148_sharedsecret[] = { 0xe8, 0xd0, 0x3d, 0xff, 0xea, 0xd2, 0xe4, 0x0e, 0xa9, 0x15, 0xdb, 0x4c, 0x9c, 0x67, 0xab, 0xb4, 0x5a, 0xa6, 0x09, 0x92, 0x42, 0x2b, 0x70, 0x37, 0x42, 0x39, 0xca, 0xf5, 0x8b, 0x96, 0xf8, 0x67, 0x16, 0x60, 0x0c, 0x1c, 0xc4, 0x44, 0x93, 0x62, 0xdc, 0x56, 0xca, 0x05, 0x7b, 0xfc, 0x5e, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2148 = { .name = "ecdh_secp384r1_2148", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2148_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2148_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2148_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 149 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2149 for ECDH, tcId is 150 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2149_peerpubkey[] = { 0xc2, 0xa9, 0xc5, 0x2a, 0x59, 0x36, 0x91, 0x0c, 0x05, 0xc4, 0x14, 0x43, 0x15, 0x12, 0x7b, 0xf6, 0x62, 0xc2, 0x92, 0xb8, 0xf0, 0x68, 0x18, 0x11, 0xc2, 0xbf, 0x8f, 0x4f, 0x9c, 0xc5, 0xbd, 0x7a, 0xb6, 0x93, 0xf7, 0xcb, 0xdd, 0xb5, 0x72, 0x4e, 0x7e, 0x29, 0xdd, 0x02, 0x3d, 0x15, 0x5f, 0xfd, 0x33, 0x5e, 0x8b, 0x87, 0x2a, 0xe1, 0xb7, 0xa9, 0x12, 0x93, 0xae, 0x9c, 0xc8, 0xf6, 0x54, 0xf0, 0x5f, 0xf4, 0x76, 0x7d, 0xb2, 0x08, 0xb7, 0x6c, 0x73, 0xb6, 0xb3, 0x4c, 0x56, 0x26, 0x51, 0x2e, 0x6b, 0xa9, 0x2b, 0xcc, 0x93, 0x7c, 0x9b, 0xcc, 0xa9, 0x44, 0x7d, 0xbe, 0xc2, 0x2f, 0xf1, 0x06, }; static const unsigned char ecdh_secp384r1_2149_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2149_sharedsecret[] = { 0xe8, 0x20, 0xf9, 0x97, 0x92, 0x8a, 0x71, 0x18, 0x6c, 0xe0, 0x9b, 0x96, 0x92, 0x3c, 0x31, 0x7c, 0xc1, 0x28, 0xcb, 0x76, 0x1c, 0x87, 0xe9, 0x70, 0x73, 0xa8, 0x51, 0x61, 0x0c, 0xa1, 0x2f, 0x21, 0x99, 0x37, 0x93, 0x87, 0x89, 0xbd, 0x22, 0x7a, 0x8d, 0x72, 0xb2, 0xb4, 0x06, 0xc4, 0x71, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp384r1_2149 = { .name = "ecdh_secp384r1_2149", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2149_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2149_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2149_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 150 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2150 for ECDH, tcId is 151 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2150_peerpubkey[] = { 0xdc, 0xd0, 0x22, 0x4a, 0xd2, 0x21, 0x9d, 0xc3, 0xaf, 0x05, 0xee, 0xa5, 0xd2, 0x79, 0x74, 0xa7, 0x5f, 0xb1, 0x96, 0x0d, 0x0d, 0x72, 0x1c, 0x39, 0xf1, 0x07, 0xbf, 0x45, 0x34, 0x62, 0x20, 0x99, 0x4e, 0x52, 0x0c, 0xa5, 0xa6, 0x46, 0x70, 0x1e, 0x93, 0x19, 0xce, 0xb0, 0x80, 0x17, 0xa3, 0x02, 0xe0, 0xb1, 0xbe, 0xe2, 0x92, 0xcd, 0x1c, 0xb9, 0x9f, 0x14, 0x5e, 0xad, 0x3d, 0x12, 0x28, 0x59, 0x03, 0xb1, 0xe5, 0x49, 0xfc, 0xce, 0x75, 0x91, 0xa1, 0x01, 0xa1, 0x67, 0x5f, 0xb9, 0xb6, 0xe3, 0x0e, 0x67, 0x80, 0x37, 0xf4, 0xd5, 0x8d, 0x22, 0x0c, 0x1e, 0x36, 0xa4, 0xe7, 0x9f, 0x88, 0x3c, }; static const unsigned char ecdh_secp384r1_2150_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2150_sharedsecret[] = { 0x0a, 0xed, 0x8a, 0xc7, 0xd0, 0x4a, 0xf0, 0x70, 0xb7, 0x3a, 0x03, 0xf3, 0x7e, 0xf7, 0x11, 0x29, 0x6d, 0xb8, 0xac, 0x64, 0xba, 0xb1, 0x3e, 0x15, 0x41, 0x8d, 0xf6, 0x37, 0x3a, 0xad, 0x81, 0xd8, 0xe0, 0xfa, 0x78, 0x9b, 0x92, 0x92, 0x93, 0x3d, 0x7f, 0x11, 0xb8, 0x61, 0x40, 0x76, 0xe0, 0x74, }; static const wycheproof_ecdh_test ecdh_secp384r1_2150 = { .name = "ecdh_secp384r1_2150", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2150_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2150_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2150_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 151 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2151 for ECDH, tcId is 152 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2151_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2151_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp384r1_2151_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2151 = { .name = "ecdh_secp384r1_2151", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2151_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2151_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2151_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 152 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2152 for ECDH, tcId is 153 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2152_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2152_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2152_sharedsecret[] = { 0xdb, 0x1d, 0x8e, 0xf1, 0x11, 0x72, 0x82, 0x87, 0x0d, 0xb8, 0x11, 0x3a, 0xa4, 0xf5, 0x87, 0x23, 0xc7, 0x56, 0xce, 0x59, 0x86, 0x86, 0xeb, 0x8e, 0xa5, 0x31, 0xaa, 0x4d, 0x39, 0xab, 0xb1, 0xb9, 0x82, 0xb1, 0xe7, 0xbb, 0x26, 0x48, 0xa6, 0xc2, 0x68, 0xd2, 0xd3, 0x51, 0x20, 0x4d, 0xb8, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2152 = { .name = "ecdh_secp384r1_2152", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2152_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2152_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2152_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 153 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2153 for ECDH, tcId is 154 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2153_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2153_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2153_sharedsecret[] = { 0xe9, 0x80, 0x62, 0xdf, 0x47, 0xef, 0x88, 0x4c, 0x94, 0x11, 0xe1, 0x64, 0x66, 0xaf, 0x84, 0xad, 0x27, 0x1d, 0x58, 0x60, 0x08, 0xb1, 0xfb, 0xc5, 0x0a, 0xeb, 0x3b, 0x36, 0x83, 0x6a, 0x35, 0xa7, 0x70, 0xdd, 0x42, 0xe0, 0xdb, 0x84, 0xd3, 0x9b, 0x26, 0xf4, 0xdc, 0xd2, 0xdc, 0x03, 0xd9, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2153 = { .name = "ecdh_secp384r1_2153", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2153_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2153_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2153_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 154 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2154 for ECDH, tcId is 155 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2154_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2154_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2154_sharedsecret[] = { 0x89, 0x8a, 0xae, 0x0e, 0xbf, 0x1c, 0xb4, 0x9f, 0xb6, 0xb1, 0x23, 0x4d, 0x60, 0xf5, 0x90, 0x06, 0x32, 0x54, 0x21, 0x04, 0x9a, 0x8a, 0x32, 0x08, 0x20, 0xe1, 0xad, 0x6a, 0xf6, 0x59, 0x3c, 0xdc, 0x22, 0x29, 0xa0, 0x8c, 0x50, 0x0a, 0xa5, 0x5c, 0xa0, 0x59, 0x99, 0xd1, 0x28, 0x29, 0xdb, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2154 = { .name = "ecdh_secp384r1_2154", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2154_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2154_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2154_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 155 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2155 for ECDH, tcId is 156 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2155_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2155_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2155_sharedsecret[] = { 0x83, 0xf8, 0x62, 0xf4, 0x96, 0xab, 0x8a, 0xf1, 0x2b, 0x82, 0xa8, 0xa0, 0xc0, 0x47, 0xd8, 0x36, 0xbd, 0xfa, 0x36, 0x28, 0x13, 0x24, 0xb3, 0xa1, 0xeb, 0x2e, 0x9c, 0x1d, 0x46, 0x69, 0x9d, 0x81, 0xcb, 0x12, 0x5c, 0xbe, 0x4b, 0x93, 0x93, 0x9f, 0xd8, 0x4e, 0x1a, 0xe8, 0x6d, 0x8a, 0x83, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_2155 = { .name = "ecdh_secp384r1_2155", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2155_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2155_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2155_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 156 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2156 for ECDH, tcId is 157 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2156_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2156_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x79, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_2156_sharedsecret[] = { 0x9a, 0x26, 0x89, 0x48, 0x87, 0xa0, 0x34, 0x2c, 0xa5, 0x59, 0xa7, 0x4a, 0x4d, 0x4a, 0x8e, 0x1d, 0x6b, 0x20, 0x84, 0xf0, 0x2e, 0x1c, 0x65, 0xb3, 0x09, 0x71, 0x21, 0xa9, 0xa9, 0xaf, 0x04, 0x7d, 0x88, 0x10, 0xfb, 0x94, 0x5d, 0xc2, 0x5b, 0xbf, 0x02, 0x22, 0x2b, 0x3b, 0x62, 0x5f, 0x1e, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_2156 = { .name = "ecdh_secp384r1_2156", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2156_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2156_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2156_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 157 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2157 for ECDH, tcId is 158 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2157_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2157_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xdc, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_2157_sharedsecret[] = { 0x8a, 0x8d, 0x9d, 0xc1, 0x94, 0xa2, 0x69, 0x10, 0xcb, 0xda, 0xe7, 0x90, 0x8d, 0x18, 0x5b, 0x6a, 0xd0, 0x4b, 0x62, 0x0c, 0x94, 0xc5, 0xee, 0x33, 0x1e, 0x58, 0x4e, 0xd8, 0x04, 0xe4, 0x95, 0xbe, 0xbc, 0x22, 0x90, 0xa2, 0xd7, 0x00, 0x6a, 0x06, 0xe6, 0x5b, 0x9b, 0xca, 0xce, 0x86, 0xc6, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2157 = { .name = "ecdh_secp384r1_2157", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2157_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2157_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2157_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 158 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2158 for ECDH, tcId is 159 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2158_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2158_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xe4, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_2158_sharedsecret[] = { 0xd5, 0x7f, 0x6a, 0xa1, 0x2d, 0x3f, 0x07, 0xe8, 0x95, 0x84, 0x99, 0xf2, 0x49, 0xe5, 0x2c, 0xfb, 0xe5, 0xbe, 0x58, 0x48, 0x2e, 0x14, 0x6c, 0x54, 0x14, 0xdb, 0xbf, 0x98, 0x4f, 0xc5, 0x33, 0x37, 0x10, 0x35, 0x0e, 0x2c, 0xe9, 0x6b, 0x33, 0xbe, 0xb7, 0x67, 0x83, 0x81, 0xf4, 0x0f, 0x1d, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_2158 = { .name = "ecdh_secp384r1_2158", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2158_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2158_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2158_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 159 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2159 for ECDH, tcId is 160 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2159_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2159_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x69, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_2159_sharedsecret[] = { 0x18, 0x8e, 0x80, 0x41, 0xd9, 0xa5, 0xf0, 0xb6, 0xcf, 0xda, 0xd3, 0x15, 0xad, 0xa4, 0x82, 0x3b, 0xed, 0xa0, 0x14, 0x67, 0x74, 0xfa, 0xd6, 0x5b, 0x50, 0x0e, 0x6e, 0xf9, 0x43, 0x76, 0xeb, 0xf8, 0xaf, 0x7a, 0x40, 0xff, 0x6f, 0x6b, 0x45, 0x01, 0x9a, 0x09, 0xdd, 0xe7, 0xd7, 0xfb, 0x55, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_2159 = { .name = "ecdh_secp384r1_2159", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2159_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2159_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2159_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 160 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2160 for ECDH, tcId is 161 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2160_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2160_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x59, }; static const unsigned char ecdh_secp384r1_2160_sharedsecret[] = { 0x2e, 0xcf, 0x9d, 0xc4, 0x7e, 0x8b, 0x07, 0xae, 0x61, 0xdd, 0xbd, 0x16, 0x80, 0xea, 0xd0, 0x26, 0x98, 0xe9, 0xe8, 0x46, 0x9f, 0x78, 0xd5, 0xa2, 0x83, 0x28, 0xe4, 0x8d, 0x0c, 0x9d, 0x7a, 0x2a, 0xc7, 0x87, 0xe5, 0x0c, 0xba, 0x58, 0xcc, 0x44, 0xa3, 0x2f, 0xb1, 0x23, 0x5d, 0x2d, 0x70, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_2160 = { .name = "ecdh_secp384r1_2160", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2160_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2160_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2160_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 161 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2161 for ECDH, tcId is 162 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2161_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2161_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x69, }; static const unsigned char ecdh_secp384r1_2161_sharedsecret[] = { 0x06, 0xee, 0x9f, 0x55, 0x07, 0x9d, 0x3d, 0x3c, 0x18, 0xc6, 0x83, 0xba, 0x33, 0xe0, 0xd2, 0x52, 0x1b, 0xe9, 0x7c, 0x4f, 0xbf, 0x79, 0x17, 0xbf, 0x3b, 0x62, 0x87, 0xd5, 0x8f, 0xfc, 0xde, 0x2d, 0xf8, 0x88, 0x42, 0xe3, 0xf5, 0x53, 0x0b, 0x39, 0x54, 0x9a, 0xc2, 0x09, 0x74, 0xb1, 0xb6, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2161 = { .name = "ecdh_secp384r1_2161", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2161_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2161_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2161_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 162 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2162 for ECDH, tcId is 163 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2162_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2162_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const unsigned char ecdh_secp384r1_2162_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2162 = { .name = "ecdh_secp384r1_2162", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2162_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2162_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2162_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 163 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2163 for ECDH, tcId is 164 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2163_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_2163_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const unsigned char ecdh_secp384r1_2163_sharedsecret[] = { 0x02, 0x4c, 0x52, 0x81, 0x48, 0x72, 0x16, 0x05, 0x82, 0x70, 0xcd, 0x1c, 0xfe, 0x25, 0x9e, 0x94, 0x83, 0x10, 0xe4, 0xad, 0xc2, 0x63, 0xa9, 0xed, 0xaa, 0x4d, 0xa0, 0xbc, 0x3f, 0x5f, 0x8c, 0xe8, 0xff, 0xc8, 0x8a, 0xe4, 0x1b, 0x2c, 0x05, 0x0b, 0xf6, 0xdd, 0x9c, 0x8c, 0x66, 0x85, 0x72, 0x37, }; static const wycheproof_ecdh_test ecdh_secp384r1_2163 = { .name = "ecdh_secp384r1_2163", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2163_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2163_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2163_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 164 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2164 for ECDH, tcId is 165 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2164_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2164_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2164 = { .name = "ecdh_secp384r1_2164", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2164_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2164_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 165 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2165 for ECDH, tcId is 166 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2165_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_2165_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2165 = { .name = "ecdh_secp384r1_2165", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2165_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2165_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 166 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2166 for ECDH, tcId is 167 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2166_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_2166_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2166 = { .name = "ecdh_secp384r1_2166", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2166_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2166_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 167 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2167 for ECDH, tcId is 168 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2167_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2167_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2167 = { .name = "ecdh_secp384r1_2167", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2167_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2167_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 168 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2168 for ECDH, tcId is 169 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2168_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2168_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2168 = { .name = "ecdh_secp384r1_2168", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2168_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2168_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 169 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2169 for ECDH, tcId is 170 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2169_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_2169_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2169 = { .name = "ecdh_secp384r1_2169", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2169_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2169_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 170 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2170 for ECDH, tcId is 171 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2170_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_2170_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2170 = { .name = "ecdh_secp384r1_2170", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2170_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2170_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 171 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2171 for ECDH, tcId is 172 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2171_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2171_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2171 = { .name = "ecdh_secp384r1_2171", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2171_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2171_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 172 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2172 for ECDH, tcId is 173 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2172_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2172_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2172 = { .name = "ecdh_secp384r1_2172", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2172_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2172_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 173 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2173 for ECDH, tcId is 174 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2173_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_2173_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2173 = { .name = "ecdh_secp384r1_2173", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2173_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2173_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 174 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2174 for ECDH, tcId is 175 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2174_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_2174_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2174 = { .name = "ecdh_secp384r1_2174", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2174_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2174_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 175 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2175 for ECDH, tcId is 176 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2175_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2175_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2175 = { .name = "ecdh_secp384r1_2175", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2175_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2175_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 176 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2176 for ECDH, tcId is 177 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2176_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2176_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2176 = { .name = "ecdh_secp384r1_2176", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2176_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2176_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 177 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2177 for ECDH, tcId is 178 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2177_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_2177_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2177 = { .name = "ecdh_secp384r1_2177", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2177_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2177_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 178 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2178 for ECDH, tcId is 179 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2178_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_2178_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2178 = { .name = "ecdh_secp384r1_2178", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2178_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2178_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 179 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2179 for ECDH, tcId is 180 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2179_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2179_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_2179 = { .name = "ecdh_secp384r1_2179", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2179_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2179_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 180 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2180 for ECDH, tcId is 182 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2180_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc8, }; static const unsigned char ecdh_secp384r1_2180_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2180 = { .name = "ecdh_secp384r1_2180", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2180_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2180_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 182 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2181 for ECDH, tcId is 183 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2181_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2181_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2181 = { .name = "ecdh_secp384r1_2181", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2181_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2181_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 183 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2182 for ECDH, tcId is 186 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2182_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2182_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2182_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2182 = { .name = "ecdh_secp384r1_2182", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2182_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2182_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2182_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 1, tcId is 186 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2183 for ECDH, tcId is 187 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2183_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2183_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2183_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2183 = { .name = "ecdh_secp384r1_2183", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2183_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2183_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2183_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 9173994463960286046443283581208347763186259956673124494950032159599396260248791326163093631191247821216106, tcId is 187 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2184 for ECDH, tcId is 188 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2184_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2184_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2184_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2184 = { .name = "ecdh_secp384r1_2184", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2184_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2184_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2184_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator = (0,0), tcId is 188 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2185 for ECDH, tcId is 189 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2185_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2185_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2185_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2185 = { .name = "ecdh_secp384r1_2185", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2185_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2185_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2185_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator not on curve, tcId is 189 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2186 for ECDH, tcId is 192 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2186_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2186_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2186_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2186 = { .name = "ecdh_secp384r1_2186", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2186_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2186_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2186_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = 2, tcId is 192 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2187 for ECDH, tcId is 194 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2187_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2187_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2187_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2187 = { .name = "ecdh_secp384r1_2187", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2187_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2187_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2187_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = None, tcId is 194 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2188 for ECDH, tcId is 199 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2188_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_2188_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_2188_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2188 = { .name = "ecdh_secp384r1_2188", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2188_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2188_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2188_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "a = 0, tcId is 199 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2189 for ECDH, tcId is 209 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2189_peerpubkey[] = { 0x19, 0xd3, 0xc8, 0x11, 0xc0, 0x4c, 0x5c, 0x09, 0x90, 0xd0, 0x25, 0x83, 0x86, 0x19, 0x5b, 0x2e, 0x29, 0xfd, 0xab, 0xa5, 0x8d, 0x3f, 0x12, 0xb0, 0xba, 0xc8, 0xd3, 0xd5, 0x38, 0x28, 0xc6, 0x6c, 0x7a, 0x35, 0xe3, 0xd1, 0xeb, 0x0b, 0xdf, 0x2c, 0x08, 0xf2, 0x3d, 0x0e, 0x4a, 0xb6, 0xa3, 0x24, 0x6e, 0x45, 0x6b, 0xf0, 0xfb, 0x86, 0x3d, 0x03, 0x42, 0x3d, 0xbe, 0x43, 0x1b, 0xaf, 0x79, 0x96, 0x57, 0xc7, 0x81, 0x6a, 0x61, 0x96, 0x62, 0xfe, 0x5b, 0x90, 0x0b, 0x75, 0x41, 0x07, 0xba, 0x5c, 0xc0, 0x6b, 0x1d, 0x62, 0xc9, 0xa9, 0x27, 0x89, 0x1e, 0xfe, 0xe1, 0xa1, 0xfd, 0x40, 0x4d, 0x7e, }; static const unsigned char ecdh_secp384r1_2189_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_2189 = { .name = "ecdh_secp384r1_2189", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2189_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2189_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384r1, tcId is 209 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2190 for ECDH, tcId is 214 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2190_peerpubkey[] = { 0x33, 0x45, 0xdf, 0xfd, 0xed, 0x3c, 0x33, 0xf7, 0xdc, 0xc1, 0x9b, 0xb8, 0x99, 0x7a, 0x39, 0xf2, 0xd6, 0x23, 0x0a, 0xbc, 0xb7, 0x65, 0xd6, 0x14, 0x2c, 0x30, 0xbf, 0x32, 0x0c, 0x1f, 0xad, 0xff, 0x53, 0x5f, 0xea, 0xfd, 0x85, 0x05, 0xeb, 0x3e, 0x61, 0x4d, 0xb7, 0x18, 0x26, 0xc1, 0xe2, 0x58, 0x07, 0x7a, 0x1e, 0x60, 0x57, 0xad, 0xd7, 0x47, 0x4f, 0x6d, 0x35, 0xdc, 0xe6, 0x84, 0x17, 0x81, 0x2e, 0x7b, 0x91, 0x9b, 0x1c, 0x67, 0x30, 0x32, 0xb2, 0x8c, 0x45, 0xd0, 0xa9, 0x25, 0x1c, 0x43, 0xa2, 0xa7, 0x3a, 0xb1, 0x52, 0xf6, 0x4f, 0xf8, 0xeb, 0xa4, 0xea, 0xb3, 0x12, 0xfa, 0x73, 0xbd, }; static const unsigned char ecdh_secp384r1_2190_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_2190 = { .name = "ecdh_secp384r1_2190", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2190_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2190_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384t1, tcId is 214 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2191 for ECDH, tcId is 216 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2191_peerpubkey[] = { 0x44, 0x24, 0x53, 0x0e, 0xa7, 0x0b, 0xac, 0xe9, 0x06, 0x01, 0xf8, 0xd5, 0x86, 0x9e, 0x41, 0x79, 0xa6, 0xcd, 0x68, 0x9b, 0x6a, 0x18, 0xfd, 0xfe, 0xc5, 0x0c, 0xec, 0xf1, 0x7c, 0xb8, 0x36, 0xd2, 0x48, 0x20, 0x21, 0x1a, 0xda, 0x67, 0x81, 0x5b, 0x42, 0xc2, 0xc2, 0x60, 0x63, 0x03, 0xf6, 0x9e, }; static const unsigned char ecdh_secp384r1_2191_privkey[] = { 0x2b, 0x9e, 0x57, 0x57, 0x2d, 0xa6, 0xcf, 0x4f, 0xb5, 0x8c, 0xb9, 0x4e, 0xab, 0x8d, 0xf1, 0x93, 0x83, 0xa1, 0x36, 0xf2, 0x19, 0xf2, 0xa5, 0x15, 0x77, 0x6a, 0x8b, 0xf4, 0x8e, 0x15, 0x38, 0xdd, 0x1d, 0x81, 0x19, 0x46, 0xc1, 0x6d, 0x9f, 0x01, 0x84, 0xc9, 0xce, 0x5c, 0xdf, 0x1d, 0xac, 0x51, }; static const wycheproof_ecdh_test ecdh_secp384r1_2191 = { .name = "ecdh_secp384r1_2191", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2191_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2191_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 216 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2192 for ECDH, tcId is 217 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2192_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2192_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2192_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2192 = { .name = "ecdh_secp384r1_2192", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2192_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2192_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2192_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of sequence, tcId is 217 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2193 for ECDH, tcId is 218 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2193_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2193_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2193_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2193 = { .name = "ecdh_secp384r1_2193", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2193_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2193_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2193_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of sequence, tcId is 218 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2194 for ECDH, tcId is 219 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2194_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2194_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2194_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2194 = { .name = "ecdh_secp384r1_2194", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2194_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2194_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2194_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of sequence contains leading 0, tcId is 219 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2195 for ECDH, tcId is 220 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2195_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2195_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2195_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2195 = { .name = "ecdh_secp384r1_2195", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2195_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2195_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2195_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of sequence contains leading 0, tcId is 220 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2196 for ECDH, tcId is 254 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2196_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2196_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2196_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2196 = { .name = "ecdh_secp384r1_2196", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2196_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2196_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2196_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to sequence, tcId is 254 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2197 for ECDH, tcId is 255 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2197_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2197_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2197_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2197 = { .name = "ecdh_secp384r1_2197", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2197_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2197_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2197_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to sequence, tcId is 255 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2198 for ECDH, tcId is 284 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2198_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2198_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2198_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2198 = { .name = "ecdh_secp384r1_2198", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2198_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2198_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2198_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing sequence with NULL, tcId is 284 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2199 for ECDH, tcId is 287 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2199_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2199_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2199_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2199 = { .name = "ecdh_secp384r1_2199", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2199_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2199_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2199_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of sequence, tcId is 287 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2200 for ECDH, tcId is 292 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2200_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2200_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2200_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2200 = { .name = "ecdh_secp384r1_2200", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2200_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2200_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2200_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of sequence, tcId is 292 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2201 for ECDH, tcId is 296 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2201_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2201_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2201_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2201 = { .name = "ecdh_secp384r1_2201", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2201_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2201_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2201_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "dropping value of sequence, tcId is 296 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2202 for ECDH, tcId is 314 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2202_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2202_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2202_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2202 = { .name = "ecdh_secp384r1_2202", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2202_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2202_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2202_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepend empty sequence, tcId is 314 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2203 for ECDH, tcId is 315 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2203_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2203_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2203_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2203 = { .name = "ecdh_secp384r1_2203", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2203_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2203_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2203_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "append empty sequence, tcId is 315 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2204 for ECDH, tcId is 316 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2204_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2204_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2204_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2204 = { .name = "ecdh_secp384r1_2204", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2204_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2204_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2204_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "append empty sequence, tcId is 316 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2205 for ECDH, tcId is 320 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2205_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2205_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2205_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2205 = { .name = "ecdh_secp384r1_2205", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2205_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2205_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2205_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "sequence of sequence, tcId is 320 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2206 for ECDH, tcId is 322 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2206_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2206_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2206_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2206 = { .name = "ecdh_secp384r1_2206", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2206_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2206_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2206_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 322 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2207 for ECDH, tcId is 323 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2207_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2207_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2207_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2207 = { .name = "ecdh_secp384r1_2207", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2207_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2207_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2207_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "repeating element in sequence, tcId is 323 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2208 for ECDH, tcId is 324 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2208_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2208_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2208_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2208 = { .name = "ecdh_secp384r1_2208", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2208_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2208_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2208_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "repeating element in sequence, tcId is 324 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2209 for ECDH, tcId is 325 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2209_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2209_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2209_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2209 = { .name = "ecdh_secp384r1_2209", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2209_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2209_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2209_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of oid, tcId is 325 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2210 for ECDH, tcId is 326 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2210_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2210_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2210_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2210 = { .name = "ecdh_secp384r1_2210", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2210_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2210_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2210_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of oid, tcId is 326 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2211 for ECDH, tcId is 327 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2211_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2211_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2211_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2211 = { .name = "ecdh_secp384r1_2211", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2211_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2211_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2211_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of oid contains leading 0, tcId is 327 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2212 for ECDH, tcId is 328 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2212_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2212_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2212_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2212 = { .name = "ecdh_secp384r1_2212", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2212_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2212_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2212_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of oid contains leading 0, tcId is 328 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2213 for ECDH, tcId is 347 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2213_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2213_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2213_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2213 = { .name = "ecdh_secp384r1_2213", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2213_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2213_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2213_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "removing oid, tcId is 347 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2214 for ECDH, tcId is 348 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2214_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2214_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2214_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2214 = { .name = "ecdh_secp384r1_2214", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2214_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2214_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2214_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "lonely oid tag, tcId is 348 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2215 for ECDH, tcId is 350 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2215_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2215_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2215_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2215 = { .name = "ecdh_secp384r1_2215", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2215_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2215_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2215_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending 0's to oid, tcId is 350 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2216 for ECDH, tcId is 351 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2216_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2216_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2216_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2216 = { .name = "ecdh_secp384r1_2216", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2216_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2216_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2216_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending 0's to oid, tcId is 351 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2217 for ECDH, tcId is 352 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2217_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2217_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2217_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2217 = { .name = "ecdh_secp384r1_2217", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2217_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2217_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2217_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to oid, tcId is 352 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2218 for ECDH, tcId is 353 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2218_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2218_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2218_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2218 = { .name = "ecdh_secp384r1_2218", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2218_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2218_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2218_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to oid, tcId is 353 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2219 for ECDH, tcId is 355 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2219_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2219_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2219_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2219 = { .name = "ecdh_secp384r1_2219", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2219_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2219_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2219_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to oid, tcId is 355 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2220 for ECDH, tcId is 356 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2220_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2220_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2220_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2220 = { .name = "ecdh_secp384r1_2220", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2220_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2220_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2220_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "appending null value to oid, tcId is 356 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2221 for ECDH, tcId is 357 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2221_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2221_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2221_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2221 = { .name = "ecdh_secp384r1_2221", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2221_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2221_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2221_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated length of oid, tcId is 357 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2222 for ECDH, tcId is 359 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2222_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2222_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2222_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2222 = { .name = "ecdh_secp384r1_2222", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2222_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2222_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2222_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing oid with NULL, tcId is 359 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2223 for ECDH, tcId is 360 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2223_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2223_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2223_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2223 = { .name = "ecdh_secp384r1_2223", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2223_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2223_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2223_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "Replacing oid with NULL, tcId is 360 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2224 for ECDH, tcId is 361 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2224_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2224_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2224_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2224 = { .name = "ecdh_secp384r1_2224", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2224_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2224_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2224_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 361 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2225 for ECDH, tcId is 363 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2225_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2225_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2225_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2225 = { .name = "ecdh_secp384r1_2225", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2225_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2225_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2225_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 363 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2226 for ECDH, tcId is 366 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2226_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2226_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2226_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2226 = { .name = "ecdh_secp384r1_2226", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2226_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2226_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2226_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 366 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2227 for ECDH, tcId is 368 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2227_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2227_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2227_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2227 = { .name = "ecdh_secp384r1_2227", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2227_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2227_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2227_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "changing tag value of oid, tcId is 368 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2228 for ECDH, tcId is 373 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2228_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2228_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2228_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2228 = { .name = "ecdh_secp384r1_2228", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2228_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2228_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2228_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "modify first byte of oid, tcId is 373 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2229 for ECDH, tcId is 374 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2229_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2229_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2229_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2229 = { .name = "ecdh_secp384r1_2229", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2229_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2229_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2229_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "modify first byte of oid, tcId is 374 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2230 for ECDH, tcId is 377 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2230_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2230_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2230_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2230 = { .name = "ecdh_secp384r1_2230", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2230_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2230_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2230_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 377 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2231 for ECDH, tcId is 378 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2231_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2231_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2231_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2231 = { .name = "ecdh_secp384r1_2231", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2231_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2231_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2231_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 378 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2232 for ECDH, tcId is 379 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2232_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2232_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2232_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2232 = { .name = "ecdh_secp384r1_2232", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2232_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2232_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2232_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 379 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2233 for ECDH, tcId is 380 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2233_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2233_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2233_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2233 = { .name = "ecdh_secp384r1_2233", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2233_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2233_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2233_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "truncated oid, tcId is 380 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2234 for ECDH, tcId is 381 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2234_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2234_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2234_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2234 = { .name = "ecdh_secp384r1_2234", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2234_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2234_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2234_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 381 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2235 for ECDH, tcId is 382 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2235_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2235_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2235_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2235 = { .name = "ecdh_secp384r1_2235", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2235_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2235_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2235_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 382 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2236 for ECDH, tcId is 383 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2236_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2236_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2236_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2236 = { .name = "ecdh_secp384r1_2236", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2236_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2236_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2236_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 383 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2237 for ECDH, tcId is 384 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2237_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2237_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2237_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2237 = { .name = "ecdh_secp384r1_2237", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2237_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2237_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2237_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "wrong oid, tcId is 384 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2238 for ECDH, tcId is 385 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2238_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2238_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2238_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2238 = { .name = "ecdh_secp384r1_2238", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2238_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2238_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2238_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "longer oid, tcId is 385 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2239 for ECDH, tcId is 386 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2239_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2239_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2239_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2239 = { .name = "ecdh_secp384r1_2239", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2239_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2239_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2239_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "longer oid, tcId is 386 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2240 for ECDH, tcId is 387 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2240_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2240_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2240_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2240 = { .name = "ecdh_secp384r1_2240", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2240_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2240_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2240_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 387 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2241 for ECDH, tcId is 388 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2241_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2241_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2241_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2241 = { .name = "ecdh_secp384r1_2241", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2241_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2241_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2241_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 388 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2242 for ECDH, tcId is 389 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2242_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2242_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2242_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2242 = { .name = "ecdh_secp384r1_2242", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2242_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2242_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2242_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 389 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2243 for ECDH, tcId is 390 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2243_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2243_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2243_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2243 = { .name = "ecdh_secp384r1_2243", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2243_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2243_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2243_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "oid with modified node, tcId is 390 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2244 for ECDH, tcId is 391 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2244_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2244_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2244_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2244 = { .name = "ecdh_secp384r1_2244", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2244_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2244_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2244_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "large integer in oid, tcId is 391 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2245 for ECDH, tcId is 392 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2245_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2245_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2245_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2245 = { .name = "ecdh_secp384r1_2245", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2245_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2245_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2245_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "large integer in oid, tcId is 392 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2246 for ECDH, tcId is 397 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2246_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2246_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2246_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2246 = { .name = "ecdh_secp384r1_2246", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2246_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2246_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2246_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "long form encoding of length of bit string, tcId is 397 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2247 for ECDH, tcId is 398 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2247_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2247_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2247_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2247 = { .name = "ecdh_secp384r1_2247", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2247_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2247_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2247_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "length of bit string contains leading 0, tcId is 398 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2248 for ECDH, tcId is 410 in file ecdh_secp384r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2248_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0x51, }; static const unsigned char ecdh_secp384r1_2248_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2248_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2248 = { .name = "ecdh_secp384r1_2248", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2248_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2248_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2248_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "prepending 0's to bit string, tcId is 410 in file ecdh_secp384r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2249 for ECDH, tcId is 421 in file ecdh_secp384r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2249_peerpubkey[] = { 0xc2, 0xbe, 0xd4, 0x8c, 0x5e, 0x15, 0xe8, 0x20, 0x84, 0x11, 0xb1, 0xa1, 0x4c, 0x77, 0xc4, 0x40, 0xb9, 0xa8, 0xc3, 0xb6, 0xb2, 0xaf, 0x6e, 0xef, 0x05, 0xe4, 0xfb, 0xae, 0x13, 0xcf, 0xe7, 0xba, 0x5e, 0x9a, 0xf2, 0x08, 0xc5, 0x4e, 0x30, 0x35, 0xe3, 0xb4, 0x55, 0x9f, 0x97, 0xb0, 0xf2, 0x79, 0x8d, 0xbe, 0x52, 0x2a, 0x47, 0xee, 0x95, 0x04, 0x19, 0xb5, 0xfa, 0xa2, 0x73, 0xd2, 0x4f, 0xf2, 0x74, 0x8a, 0x83, 0x49, 0xc5, 0x91, 0xcc, 0x80, 0x87, 0x1a, 0xcf, 0x3c, 0x67, 0x02, 0xcc, 0xe1, 0x29, 0xc6, 0x83, 0x51, 0xa7, 0x13, 0x20, 0x7a, 0x69, 0xf0, 0x2b, 0x5b, 0xed, 0x03, 0x12, 0xd1, }; static const unsigned char ecdh_secp384r1_2249_privkey[] = { 0x4b, 0x06, 0x5d, 0x2d, 0xbb, 0xad, 0x95, 0xd7, 0xee, 0xbe, 0xd0, 0x0a, 0x3e, 0x79, 0xf7, 0x72, 0xcc, 0xdd, 0xfd, 0x93, 0x10, 0x1c, 0x1b, 0x1f, 0x39, 0x3e, 0x8a, 0xdc, 0x46, 0x5d, 0x94, 0xbc, 0x21, 0x34, 0x6d, 0x8f, 0x34, 0x19, 0x07, 0xa3, 0xc2, 0x7a, 0x25, 0x62, 0xdc, 0xb4, 0x9a, 0x3a, }; static const unsigned char ecdh_secp384r1_2249_sharedsecret[] = { 0x40, 0xc3, 0x44, 0xfb, 0x11, 0x85, 0xa5, 0xa9, 0x7d, 0xd0, 0x0b, 0x11, 0x4f, 0x1b, 0x9c, 0x5c, 0xe4, 0x00, 0x9f, 0x90, 0xc5, 0x93, 0xf2, 0x36, 0xfe, 0x46, 0x55, 0x18, 0xf9, 0xff, 0x27, 0x32, 0x6a, 0x42, 0x1e, 0x05, 0xb5, 0xbc, 0x1b, 0xfe, 0x37, 0x68, 0xd5, 0xbe, 0xcb, 0x9e, 0xc7, 0x97, }; static const wycheproof_ecdh_test ecdh_secp384r1_2249 = { .name = "ecdh_secp384r1_2249", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2249_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2249_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2249_sharedsecret, .sharedsecretlen = 48, .result = -1, .comment = "modify last byte of bit string, tcId is 421 in file ecdh_secp384r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2250 for ECDH, tcId is 1 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2250_peerpubkey[] = { 0x00, 0x64, 0xda, 0x3e, 0x94, 0x73, 0x3d, 0xb5, 0x36, 0xa7, 0x4a, 0x0d, 0x8a, 0x5c, 0xb2, 0x26, 0x5a, 0x31, 0xc5, 0x4a, 0x1d, 0xa6, 0x52, 0x9a, 0x19, 0x83, 0x77, 0xfb, 0xd3, 0x85, 0x75, 0xd9, 0xd7, 0x97, 0x69, 0xca, 0x2b, 0xdf, 0x2d, 0x4c, 0x97, 0x26, 0x42, 0x92, 0x6d, 0x44, 0x48, 0x91, 0xa6, 0x52, 0xe7, 0xf4, 0x92, 0x33, 0x72, 0x51, 0xad, 0xf1, 0x61, 0x3c, 0xf3, 0x07, 0x79, 0x99, 0xb5, 0xce, 0x00, 0xe0, 0x4a, 0xd1, 0x9c, 0xf9, 0xfd, 0x47, 0x22, 0xb0, 0xc8, 0x24, 0xc0, 0x69, 0xf7, 0x0c, 0x3c, 0x0e, 0x7e, 0xbc, 0x52, 0x88, 0x94, 0x0d, 0xfa, 0x92, 0x42, 0x21, 0x52, 0xae, 0x4a, 0x4f, 0x79, 0x18, 0x3c, 0xed, 0x37, 0x5a, 0xfb, 0x54, 0xdb, 0x14, 0x09, 0xdd, 0xf3, 0x38, 0xb8, 0x5b, 0xb6, 0xdb, 0xfc, 0x59, 0x50, 0x16, 0x33, 0x46, 0xbb, 0x63, 0xa9, 0x0a, 0x70, 0xc5, 0xab, 0xa0, 0x98, 0xf7, }; static const unsigned char ecdh_secp521r1_2250_privkey[] = { 0x01, 0x93, 0x99, 0x82, 0xb5, 0x29, 0x59, 0x6c, 0xe7, 0x7a, 0x94, 0xbc, 0x6e, 0xfd, 0x03, 0xe9, 0x2c, 0x21, 0xa8, 0x49, 0xeb, 0x4f, 0x87, 0xb8, 0xf6, 0x19, 0xd5, 0x06, 0xef, 0xc9, 0xbb, 0x22, 0xe7, 0xc6, 0x16, 0x40, 0xc9, 0x0d, 0x59, 0x8f, 0x79, 0x5b, 0x64, 0x56, 0x6d, 0xc6, 0xdf, 0x43, 0x99, 0x2a, 0xe3, 0x4a, 0x13, 0x41, 0xd4, 0x58, 0x57, 0x44, 0x40, 0xa7, 0x37, 0x1f, 0x61, 0x1c, 0x7d, 0xcd, }; static const unsigned char ecdh_secp521r1_2250_sharedsecret[] = { 0x01, 0xf1, 0xe4, 0x10, 0xf2, 0xc6, 0x26, 0x2b, 0xce, 0x68, 0x79, 0xa3, 0xf4, 0x6d, 0xfb, 0x7d, 0xd1, 0x1d, 0x30, 0xee, 0xee, 0x9a, 0xb4, 0x98, 0x52, 0x10, 0x2e, 0x18, 0x92, 0x20, 0x1d, 0xd1, 0x0f, 0x27, 0x26, 0x6c, 0x2c, 0xf7, 0xcb, 0xcc, 0xc7, 0xf6, 0x88, 0x50, 0x99, 0x04, 0x3d, 0xad, 0x80, 0xff, 0x57, 0xf0, 0xdf, 0x96, 0xac, 0xf2, 0x83, 0xfb, 0x09, 0x0d, 0xe5, 0x3d, 0xf9, 0x5f, 0x7d, 0x87, }; static const wycheproof_ecdh_test ecdh_secp521r1_2250 = { .name = "ecdh_secp521r1_2250", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2250_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2250_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2250_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2251 for ECDH, tcId is 2 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2251_peerpubkey[] = { 0x00, 0x64, 0xda, 0x3e, 0x94, 0x73, 0x3d, 0xb5, 0x36, 0xa7, 0x4a, 0x0d, 0x8a, 0x5c, 0xb2, 0x26, 0x5a, 0x31, 0xc5, 0x4a, 0x1d, 0xa6, 0x52, 0x9a, 0x19, 0x83, 0x77, 0xfb, 0xd3, 0x85, 0x75, 0xd9, 0xd7, 0x97, 0x69, 0xca, 0x2b, 0xdf, 0x2d, 0x4c, 0x97, 0x26, 0x42, 0x92, 0x6d, 0x44, 0x48, 0x91, 0xa6, 0x52, 0xe7, 0xf4, 0x92, 0x33, 0x72, 0x51, 0xad, 0xf1, 0x61, 0x3c, 0xf3, 0x07, 0x79, 0x99, 0xb5, 0xce, }; static const unsigned char ecdh_secp521r1_2251_privkey[] = { 0x01, 0x93, 0x99, 0x82, 0xb5, 0x29, 0x59, 0x6c, 0xe7, 0x7a, 0x94, 0xbc, 0x6e, 0xfd, 0x03, 0xe9, 0x2c, 0x21, 0xa8, 0x49, 0xeb, 0x4f, 0x87, 0xb8, 0xf6, 0x19, 0xd5, 0x06, 0xef, 0xc9, 0xbb, 0x22, 0xe7, 0xc6, 0x16, 0x40, 0xc9, 0x0d, 0x59, 0x8f, 0x79, 0x5b, 0x64, 0x56, 0x6d, 0xc6, 0xdf, 0x43, 0x99, 0x2a, 0xe3, 0x4a, 0x13, 0x41, 0xd4, 0x58, 0x57, 0x44, 0x40, 0xa7, 0x37, 0x1f, 0x61, 0x1c, 0x7d, 0xcd, }; static const unsigned char ecdh_secp521r1_2251_sharedsecret[] = { 0x01, 0xf1, 0xe4, 0x10, 0xf2, 0xc6, 0x26, 0x2b, 0xce, 0x68, 0x79, 0xa3, 0xf4, 0x6d, 0xfb, 0x7d, 0xd1, 0x1d, 0x30, 0xee, 0xee, 0x9a, 0xb4, 0x98, 0x52, 0x10, 0x2e, 0x18, 0x92, 0x20, 0x1d, 0xd1, 0x0f, 0x27, 0x26, 0x6c, 0x2c, 0xf7, 0xcb, 0xcc, 0xc7, 0xf6, 0x88, 0x50, 0x99, 0x04, 0x3d, 0xad, 0x80, 0xff, 0x57, 0xf0, 0xdf, 0x96, 0xac, 0xf2, 0x83, 0xfb, 0x09, 0x0d, 0xe5, 0x3d, 0xf9, 0x5f, 0x7d, 0x87, }; static const wycheproof_ecdh_test ecdh_secp521r1_2251 = { .name = "ecdh_secp521r1_2251", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2251_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2251_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2251_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2252 for ECDH, tcId is 3 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2252_peerpubkey[] = { 0x01, 0x4c, 0x64, 0x33, 0x29, 0x69, 0x1b, 0xa2, 0x74, 0x59, 0xa4, 0x0d, 0xfe, 0x7c, 0x4c, 0xe1, 0x7b, 0x3e, 0xa1, 0x4d, 0x0c, 0xd7, 0xaa, 0x47, 0xb0, 0x1f, 0x13, 0x15, 0x40, 0x4d, 0xb5, 0x14, 0x36, 0xfb, 0xbf, 0xe6, 0xde, 0x08, 0x42, 0xe0, 0xf7, 0xe1, 0x26, 0x5f, 0x6f, 0xf3, 0xac, 0xa2, 0x87, 0x50, 0x67, 0x7d, 0x33, 0x70, 0xb2, 0xfb, 0x2a, 0x6e, 0xf4, 0x97, 0x35, 0x6f, 0x4b, 0x95, 0x81, 0x12, 0x01, 0x05, 0x1b, 0x14, 0x17, 0x86, 0x39, 0xa0, 0x9a, 0x41, 0x46, 0x5c, 0x72, 0xd3, 0x74, 0x34, 0x36, 0xee, 0x1c, 0x19, 0x1f, 0xf7, 0x38, 0x8a, 0x40, 0x14, 0x0b, 0x34, 0xd5, 0x31, 0x7d, 0xe5, 0x91, 0x1e, 0xa0, 0x3c, 0xdb, 0xb0, 0x32, 0x9f, 0xde, 0xb4, 0x46, 0x69, 0x5a, 0x3b, 0x92, 0xd4, 0x37, 0x27, 0x1a, 0x9f, 0x3c, 0x31, 0x8b, 0x02, 0xde, 0xc4, 0xd4, 0x73, 0x90, 0x81, 0x58, 0x14, 0x0e, 0x97, }; static const unsigned char ecdh_secp521r1_2252_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2252_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2252 = { .name = "ecdh_secp521r1_2252", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2252_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2252_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2252_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2253 for ECDH, tcId is 4 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2253_peerpubkey[] = { 0x00, 0x29, 0xcd, 0x32, 0x12, 0x5c, 0x23, 0xa4, 0x1a, 0xf2, 0x4f, 0xd4, 0xb7, 0x29, 0xda, 0x0f, 0xaa, 0xcb, 0xc3, 0x55, 0x16, 0xef, 0x0b, 0xa5, 0x90, 0x96, 0x60, 0x25, 0x71, 0x69, 0x3c, 0xd2, 0x82, 0xe2, 0x6d, 0x67, 0xe1, 0x8e, 0xf4, 0x64, 0x3d, 0x0f, 0x6f, 0x15, 0x8d, 0x73, 0x70, 0xd3, 0x39, 0x4c, 0xa9, 0xa8, 0xde, 0x79, 0x38, 0x03, 0x2a, 0xc1, 0x78, 0xc6, 0xfd, 0x34, 0xe3, 0x70, 0x2b, 0x8d, 0x00, 0x86, 0x49, 0x83, 0x4e, 0x2b, 0x41, 0xbe, 0x3a, 0x8b, 0x75, 0x10, 0xbf, 0xe5, 0x70, 0xf4, 0xc6, 0x70, 0x75, 0x94, 0x3c, 0xd0, 0xcb, 0xb9, 0xd9, 0xe1, 0xd1, 0xda, 0x52, 0x61, 0x8b, 0x5b, 0x96, 0xd6, 0xae, 0xc9, 0xb6, 0x50, 0xda, 0xf1, 0xca, 0x66, 0x24, 0xc1, 0x3e, 0x51, 0x16, 0x30, 0x2b, 0x9c, 0x79, 0xc8, 0xc4, 0xd3, 0xd3, 0x51, 0x91, 0x5d, 0x1e, 0x8e, 0x1a, 0xb6, 0xad, 0x76, 0x09, 0x8e, }; static const unsigned char ecdh_secp521r1_2253_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2253_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_2253 = { .name = "ecdh_secp521r1_2253", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2253_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2253_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2253_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2254 for ECDH, tcId is 5 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2254_peerpubkey[] = { 0x00, 0x32, 0xc6, 0xf0, 0x6c, 0xe6, 0xa1, 0x5e, 0xa0, 0x64, 0x46, 0x4d, 0x35, 0xaa, 0x36, 0x8d, 0x29, 0x9c, 0x9a, 0x9e, 0x1e, 0x36, 0x8f, 0x69, 0x4a, 0xef, 0xb6, 0x03, 0x87, 0x62, 0x48, 0xf8, 0x98, 0xf2, 0x23, 0xce, 0x02, 0x17, 0xbe, 0xf3, 0x7d, 0x61, 0xeb, 0x09, 0xb2, 0x7c, 0x93, 0x18, 0x7c, 0xf8, 0xe6, 0x1b, 0xa7, 0xb1, 0x4e, 0x3c, 0x9b, 0xee, 0x69, 0x2b, 0x06, 0xac, 0x6d, 0x95, 0xf8, 0x36, 0x01, 0x9f, 0xd1, 0x9f, 0x84, 0x80, 0xe2, 0x1c, 0x63, 0x21, 0x1d, 0x48, 0xd4, 0x5f, 0x96, 0xf6, 0x36, 0x5c, 0xf5, 0x5f, 0x95, 0x8e, 0x1a, 0x0f, 0xe7, 0xea, 0x6b, 0x6b, 0x9f, 0xf2, 0x30, 0xa8, 0x7b, 0x70, 0xbb, 0x1b, 0x14, 0xd3, 0xa5, 0xfb, 0x66, 0x69, 0xa9, 0x16, 0x41, 0xc6, 0xac, 0xf4, 0x57, 0x0c, 0x1d, 0x3a, 0x9e, 0x70, 0x99, 0x13, 0xb7, 0xfe, 0x6b, 0x35, 0xff, 0x81, 0xc3, 0x94, 0xd6, 0xa7, }; static const unsigned char ecdh_secp521r1_2254_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2254_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_2254 = { .name = "ecdh_secp521r1_2254", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2254_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2254_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2254_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2255 for ECDH, tcId is 6 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2255_peerpubkey[] = { 0x01, 0xf7, 0xeb, 0x96, 0xe6, 0x4b, 0x1a, 0x62, 0xda, 0xf9, 0xe0, 0x80, 0x1b, 0xfd, 0x96, 0xa0, 0xb1, 0x5b, 0x68, 0xe5, 0xf5, 0xcb, 0x3e, 0x90, 0xb4, 0x34, 0x49, 0x5a, 0x47, 0x39, 0x07, 0x33, 0x8e, 0x53, 0x09, 0x8e, 0x1c, 0x2e, 0x49, 0x33, 0x35, 0xd0, 0x9c, 0x6a, 0xae, 0x6f, 0xdd, 0xa0, 0x34, 0x5b, 0x98, 0xaa, 0xed, 0x58, 0x8f, 0x2a, 0xbe, 0x82, 0x91, 0x07, 0x13, 0xfb, 0x6c, 0x20, 0x25, 0x29, 0x01, 0x39, 0x6b, 0x17, 0xcf, 0x25, 0x0b, 0xc0, 0x18, 0xf4, 0xce, 0xad, 0x09, 0x7e, 0x7e, 0x09, 0x86, 0x3f, 0x14, 0xcf, 0x12, 0x39, 0xb0, 0x65, 0xe5, 0x7d, 0x88, 0x49, 0x49, 0xee, 0xe1, 0x41, 0x92, 0x6f, 0x7e, 0x7c, 0x9f, 0x7f, 0x34, 0xcf, 0x05, 0x36, 0x36, 0x87, 0x67, 0xbc, 0x0e, 0x1a, 0xb5, 0x14, 0x28, 0x77, 0x29, 0x3a, 0x4c, 0x72, 0x26, 0x93, 0xa7, 0x3f, 0xe1, 0x4a, 0x53, 0x90, 0xaf, 0x93, }; static const unsigned char ecdh_secp521r1_2255_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2255_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2255 = { .name = "ecdh_secp521r1_2255", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2255_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2255_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2255_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2256 for ECDH, tcId is 7 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2256_peerpubkey[] = { 0x00, 0x6d, 0xdf, 0x9b, 0x10, 0x96, 0x5d, 0x5f, 0xc1, 0x29, 0xe9, 0x6f, 0x7a, 0x37, 0x66, 0x7c, 0xcf, 0x66, 0xcc, 0x44, 0x38, 0x47, 0x72, 0x90, 0x6f, 0xed, 0xb2, 0x1f, 0x9d, 0xe4, 0x62, 0x9e, 0x01, 0xaa, 0xa0, 0x9a, 0xc7, 0xc9, 0x86, 0x61, 0x12, 0x06, 0x4b, 0xbc, 0x9b, 0xd5, 0x8e, 0xbc, 0x12, 0x3a, 0xb2, 0xfe, 0x19, 0xd8, 0xfe, 0xd1, 0xa0, 0x56, 0xd2, 0x7b, 0xfe, 0xf0, 0x63, 0x05, 0x09, 0xc7, 0x00, 0x1c, 0x44, 0x13, 0x11, 0xef, 0x20, 0xa1, 0x63, 0x46, 0x33, 0x2e, 0xa4, 0x2d, 0x5c, 0x65, 0x78, 0x8d, 0x68, 0xf6, 0x81, 0x7b, 0x02, 0x67, 0xfc, 0xab, 0x11, 0xea, 0x9c, 0x94, 0x8e, 0xd1, 0x08, 0x11, 0x5d, 0xda, 0x8e, 0x82, 0x3a, 0x38, 0x0b, 0x60, 0x14, 0x60, 0x74, 0x2d, 0x37, 0x72, 0xd6, 0x42, 0x4c, 0x67, 0xb2, 0x40, 0xda, 0x24, 0x77, 0x2f, 0xf0, 0xd2, 0xcc, 0xd9, 0xa1, 0xe0, 0xce, 0xa6, }; static const unsigned char ecdh_secp521r1_2256_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2256_sharedsecret[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2256 = { .name = "ecdh_secp521r1_2256", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2256_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2256_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2256_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2257 for ECDH, tcId is 8 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2257_peerpubkey[] = { 0x00, 0x7a, 0x8c, 0x54, 0x72, 0x68, 0xc9, 0x48, 0xb6, 0x26, 0xda, 0x63, 0x6c, 0xf5, 0x44, 0x28, 0xea, 0x2a, 0xb2, 0x38, 0x61, 0xd4, 0x99, 0xa8, 0x4a, 0xd7, 0xbe, 0x1c, 0xf6, 0x91, 0xb9, 0x28, 0x72, 0xa0, 0x6e, 0x26, 0xc6, 0xdb, 0xa0, 0x8c, 0xa9, 0xed, 0x38, 0x6f, 0x83, 0xd3, 0x96, 0x15, 0x6d, 0x5f, 0xa0, 0x23, 0xf5, 0x7d, 0x5e, 0xa6, 0x44, 0x0e, 0xc7, 0x40, 0x1d, 0xad, 0x2c, 0x08, 0xad, 0x70, 0x01, 0x8c, 0x38, 0x15, 0xb1, 0xb9, 0xa2, 0xe4, 0x25, 0x55, 0x41, 0x9a, 0x6c, 0x19, 0x04, 0x3f, 0xa2, 0xb0, 0xdd, 0xcc, 0x4b, 0x5a, 0x6e, 0x37, 0x2f, 0xee, 0x9f, 0xcb, 0x22, 0x7d, 0x85, 0xba, 0xd7, 0x04, 0x68, 0x7e, 0x7e, 0x1a, 0x81, 0x8b, 0x61, 0x2d, 0x5c, 0x04, 0x6c, 0xd7, 0x59, 0x72, 0xf7, 0xa2, 0xdd, 0x5c, 0x9a, 0x20, 0x0a, 0xc5, 0x58, 0x2c, 0xd5, 0x9f, 0xec, 0x47, 0xac, 0x52, 0x5e, 0xcf, }; static const unsigned char ecdh_secp521r1_2257_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2257_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2257 = { .name = "ecdh_secp521r1_2257", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2257_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2257_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2257_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2258 for ECDH, tcId is 9 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2258_peerpubkey[] = { 0x00, 0x29, 0x15, 0x3c, 0xf0, 0x62, 0xf8, 0x8f, 0x30, 0x3e, 0x5d, 0x6f, 0x9a, 0xac, 0x96, 0x8b, 0xd9, 0x01, 0x07, 0x6d, 0x59, 0x94, 0xea, 0x7f, 0x83, 0x18, 0x33, 0xb1, 0xe6, 0x9b, 0x67, 0xe9, 0xe9, 0xfe, 0x20, 0xcf, 0x9c, 0x56, 0x23, 0xe0, 0x0e, 0x0b, 0x9e, 0x35, 0x92, 0xfc, 0xa2, 0xa0, 0x33, 0x24, 0xb5, 0xdf, 0x7c, 0x93, 0x18, 0x6a, 0xff, 0x69, 0x7a, 0xca, 0x86, 0x46, 0x00, 0xd4, 0x4e, 0xcc, 0x00, 0x28, 0x01, 0xa6, 0x2e, 0x2f, 0x41, 0x06, 0xf3, 0x41, 0x06, 0xda, 0x23, 0xdc, 0x93, 0xd5, 0x0e, 0x3e, 0x97, 0x5a, 0x1d, 0x47, 0x51, 0x00, 0x21, 0x83, 0x52, 0x90, 0x64, 0x9b, 0x7a, 0x41, 0x25, 0x10, 0x9f, 0x65, 0x6b, 0x6b, 0x0b, 0x5b, 0xd0, 0x0b, 0x24, 0xd8, 0x4e, 0xa1, 0xba, 0x4e, 0x1e, 0xd4, 0x9e, 0x61, 0xc5, 0x26, 0xfb, 0x10, 0x11, 0x00, 0x51, 0x31, 0xca, 0xee, 0x7e, 0xe0, 0x50, 0x1e, }; static const unsigned char ecdh_secp521r1_2258_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2258_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2258 = { .name = "ecdh_secp521r1_2258", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2258_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2258_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2258_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2259 for ECDH, tcId is 10 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2259_peerpubkey[] = { 0x00, 0xa6, 0x1e, 0xb9, 0x94, 0xe2, 0x87, 0x22, 0xc5, 0x9b, 0x3c, 0x60, 0x07, 0xdf, 0xdf, 0x8b, 0x37, 0x89, 0x3f, 0x63, 0x50, 0xf4, 0x61, 0xb2, 0x6a, 0x00, 0xe1, 0xa4, 0x51, 0x04, 0x31, 0x4a, 0xae, 0x99, 0x89, 0xda, 0x87, 0xe4, 0xfa, 0xcb, 0x2c, 0x4e, 0xf7, 0x21, 0x18, 0x5b, 0x7d, 0x96, 0xd9, 0xa4, 0x5a, 0x28, 0xa1, 0x02, 0x75, 0x65, 0x01, 0xa1, 0xac, 0xc5, 0xd3, 0x29, 0xa2, 0x1b, 0xbf, 0x73, 0x01, 0x0e, 0x8d, 0x0e, 0x12, 0xf5, 0xa9, 0xa4, 0x0e, 0x0d, 0x59, 0xc9, 0x0c, 0xe7, 0x30, 0x43, 0xd3, 0x97, 0x30, 0xae, 0xad, 0xd3, 0x78, 0x8e, 0x31, 0xd7, 0xc2, 0xbb, 0x62, 0xa1, 0x16, 0x61, 0x61, 0x99, 0x46, 0x64, 0xaf, 0xa6, 0x58, 0xce, 0x2e, 0x60, 0xa1, 0x3f, 0x45, 0xf2, 0x7f, 0x91, 0x43, 0x07, 0xc8, 0xd6, 0xf8, 0xd4, 0xed, 0x16, 0xab, 0x04, 0x1b, 0x8f, 0x69, 0x90, 0x8a, 0x62, 0x78, 0x2f, }; static const unsigned char ecdh_secp521r1_2259_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2259_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2259 = { .name = "ecdh_secp521r1_2259", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2259_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2259_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2259_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2260 for ECDH, tcId is 11 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2260_peerpubkey[] = { 0x01, 0x1d, 0xd4, 0x97, 0xb3, 0x0c, 0x73, 0x70, 0x99, 0x06, 0xb1, 0x64, 0xa9, 0xa7, 0x9d, 0xc7, 0xf2, 0xa9, 0x8c, 0x01, 0x48, 0xed, 0x63, 0x01, 0x6b, 0xb9, 0x52, 0x43, 0x83, 0x4f, 0xbc, 0xdf, 0x8e, 0xb7, 0x4b, 0x0f, 0xf6, 0x52, 0xd5, 0x4f, 0x59, 0xf3, 0x1a, 0xef, 0x51, 0xda, 0x6e, 0x89, 0x74, 0xd3, 0x63, 0x65, 0x5b, 0x1d, 0xa1, 0x38, 0xdc, 0x4d, 0xe0, 0xf2, 0xa8, 0xd8, 0x00, 0xf4, 0x75, 0xae, 0x00, 0x57, 0xbd, 0x4b, 0x84, 0x60, 0x74, 0x00, 0xd8, 0x63, 0xff, 0xbf, 0x45, 0xa3, 0xcf, 0x58, 0x99, 0x9e, 0xe2, 0x4b, 0xa0, 0x5e, 0x93, 0xec, 0xa7, 0xb0, 0xe4, 0xae, 0x76, 0x0e, 0xb1, 0x73, 0x35, 0x59, 0xa4, 0x5d, 0x15, 0x57, 0x9d, 0x33, 0x70, 0xd7, 0x16, 0xff, 0xa3, 0xec, 0x4b, 0xfd, 0xae, 0x41, 0x8e, 0x32, 0xfb, 0x06, 0x13, 0x8d, 0xfc, 0xa2, 0x13, 0x72, 0x0a, 0x93, 0x85, 0x77, 0x61, 0x0e, }; static const unsigned char ecdh_secp521r1_2260_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2260_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2260 = { .name = "ecdh_secp521r1_2260", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2260_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2260_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2260_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2261 for ECDH, tcId is 12 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2261_peerpubkey[] = { 0x01, 0x28, 0x3e, 0xb9, 0x3f, 0xa3, 0x69, 0xfe, 0x70, 0x12, 0xb6, 0x47, 0xd2, 0x1e, 0x0a, 0x97, 0xcf, 0x99, 0x50, 0xe5, 0xfb, 0xed, 0x81, 0x9e, 0xf5, 0x61, 0x58, 0xf2, 0x0c, 0x8a, 0x94, 0x73, 0xa4, 0x18, 0xec, 0xcb, 0xca, 0x4d, 0xc2, 0xb4, 0x7f, 0x4c, 0xb6, 0xd3, 0x22, 0xf9, 0x17, 0x00, 0x58, 0x59, 0xbf, 0x22, 0x1e, 0x84, 0xac, 0x98, 0x27, 0xca, 0xb8, 0x2a, 0x80, 0x1c, 0x62, 0x7f, 0xb1, 0xec, 0x00, 0x75, 0xc4, 0x80, 0xcb, 0xaf, 0xb3, 0x52, 0xfc, 0xaf, 0x93, 0xba, 0xf2, 0x3a, 0x14, 0x05, 0xfd, 0x81, 0xfe, 0xbe, 0x09, 0x72, 0x9a, 0x90, 0x8d, 0x10, 0x77, 0xe1, 0x77, 0xdd, 0x89, 0x93, 0xd9, 0x4b, 0x25, 0x1a, 0x0d, 0x52, 0x65, 0x2d, 0xa3, 0xed, 0xb6, 0xfd, 0xf8, 0x64, 0xe8, 0x0c, 0xd5, 0x15, 0x40, 0xe7, 0x3d, 0x0b, 0x51, 0x07, 0xe3, 0x43, 0x35, 0x76, 0xdc, 0xaa, 0x4e, 0x18, 0xdb, 0x43, }; static const unsigned char ecdh_secp521r1_2261_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2261_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2261 = { .name = "ecdh_secp521r1_2261", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2261_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2261_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2261_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2262 for ECDH, tcId is 13 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2262_peerpubkey[] = { 0x00, 0x17, 0x3b, 0xee, 0xfe, 0x35, 0xee, 0x86, 0x8d, 0x49, 0x7f, 0xf6, 0x60, 0x16, 0x28, 0xf6, 0x5c, 0xe1, 0x8a, 0x15, 0x91, 0xf7, 0xe4, 0xa3, 0xa4, 0x06, 0x62, 0x2f, 0x3f, 0x50, 0x8e, 0x2d, 0xa6, 0x8f, 0x10, 0x1e, 0xd0, 0x2f, 0xeb, 0xc3, 0x84, 0x18, 0xc6, 0xdd, 0xfc, 0x26, 0xa5, 0xec, 0x98, 0x48, 0xc4, 0x27, 0x92, 0x46, 0x3b, 0x1e, 0x94, 0x5f, 0x9e, 0x16, 0x7d, 0xb3, 0x4b, 0xdf, 0x2d, 0x66, 0x00, 0x53, 0x07, 0x06, 0x47, 0xab, 0xa7, 0xcd, 0x60, 0xeb, 0x29, 0x5a, 0xb8, 0x1a, 0x26, 0x8a, 0x39, 0x03, 0xf3, 0x93, 0xc5, 0xd2, 0x8b, 0xbc, 0x5e, 0x02, 0x23, 0x51, 0xc3, 0x77, 0xcd, 0x84, 0xf0, 0x2c, 0x19, 0xde, 0xb3, 0x64, 0x42, 0x37, 0x2c, 0xae, 0x13, 0x32, 0xe9, 0x2f, 0x95, 0xba, 0x60, 0xb6, 0xc8, 0x52, 0xe0, 0xde, 0x07, 0x18, 0xe8, 0x9d, 0x24, 0xe4, 0x3c, 0xd4, 0x79, 0xc9, 0xfb, 0x11, }; static const unsigned char ecdh_secp521r1_2262_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2262_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2262 = { .name = "ecdh_secp521r1_2262", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2262_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2262_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2262_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2263 for ECDH, tcId is 14 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2263_peerpubkey[] = { 0x00, 0x98, 0x29, 0xcd, 0x54, 0x32, 0x68, 0x77, 0x39, 0xab, 0x6a, 0xe1, 0x0a, 0xf8, 0xea, 0x73, 0xd2, 0xcb, 0x53, 0xb8, 0x1e, 0xbb, 0x06, 0xb5, 0x96, 0x1b, 0x7b, 0xad, 0xc1, 0x67, 0x6b, 0x3e, 0xf7, 0xb0, 0x04, 0x54, 0xf7, 0xcd, 0xe5, 0x67, 0x74, 0xa0, 0x13, 0x12, 0xd5, 0x74, 0xa9, 0x19, 0x3c, 0x1a, 0x5f, 0xe5, 0x33, 0x6f, 0xbe, 0x62, 0x62, 0x3a, 0xd9, 0xbf, 0x81, 0x14, 0x37, 0x89, 0xf9, 0xf9, 0x00, 0x12, 0xf9, 0x55, 0x69, 0x7e, 0xd5, 0x78, 0x20, 0x71, 0x97, 0xbf, 0x9a, 0xac, 0x38, 0x96, 0x52, 0x16, 0x15, 0xdb, 0xac, 0xc8, 0xdc, 0x66, 0x5d, 0x4f, 0x17, 0x15, 0xb0, 0x84, 0x39, 0xf4, 0x9c, 0x2a, 0xa6, 0xed, 0x33, 0x70, 0x23, 0xff, 0xcc, 0xc5, 0x07, 0x5a, 0x85, 0x94, 0x49, 0x36, 0x82, 0x6d, 0xb9, 0x2f, 0x91, 0x97, 0x37, 0xca, 0x3a, 0xfe, 0xad, 0xba, 0x18, 0x47, 0x08, 0x4b, 0xde, 0xf7, }; static const unsigned char ecdh_secp521r1_2263_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2263_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2263 = { .name = "ecdh_secp521r1_2263", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2263_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2263_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2263_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2264 for ECDH, tcId is 15 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2264_peerpubkey[] = { 0x01, 0x26, 0xe3, 0xc9, 0x59, 0xcd, 0x41, 0x12, 0x0b, 0xb8, 0x36, 0x93, 0xb1, 0xd6, 0xa0, 0x34, 0xb3, 0x85, 0x13, 0x7c, 0x1b, 0xb3, 0x21, 0x3b, 0x77, 0x61, 0x22, 0xfe, 0xd9, 0x60, 0x56, 0xe3, 0x29, 0x88, 0x57, 0x18, 0xa7, 0x3b, 0xee, 0x63, 0x9c, 0x0b, 0xa4, 0xb6, 0x88, 0x18, 0x68, 0x2f, 0x49, 0x8c, 0xe5, 0x49, 0x69, 0x25, 0x00, 0x2b, 0xd7, 0x65, 0x25, 0x16, 0x40, 0x5f, 0xcc, 0x4f, 0xec, 0xad, 0x00, 0x73, 0xa9, 0xc6, 0xe3, 0xb0, 0xc6, 0x94, 0xbf, 0x7c, 0xc8, 0xcc, 0xbb, 0xd0, 0x98, 0x00, 0xe8, 0x1e, 0x35, 0x48, 0xba, 0x44, 0xa0, 0xc2, 0x38, 0x1c, 0xef, 0x0b, 0x07, 0xbf, 0x70, 0x2a, 0x19, 0x05, 0x4b, 0xb5, 0xd7, 0x17, 0xa1, 0xb7, 0x92, 0x94, 0x60, 0x9c, 0xbd, 0xaf, 0xd4, 0xe2, 0x01, 0x80, 0x64, 0xf7, 0xb2, 0xc4, 0xc2, 0x04, 0xd8, 0x18, 0xeb, 0x7c, 0xe5, 0x21, 0xc3, 0x26, 0x8c, 0xe5, }; static const unsigned char ecdh_secp521r1_2264_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2264_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_2264 = { .name = "ecdh_secp521r1_2264", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2264_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2264_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2264_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2265 for ECDH, tcId is 16 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2265_peerpubkey[] = { 0x01, 0x53, 0xdc, 0x48, 0x1a, 0xb3, 0xc5, 0xdc, 0x8d, 0xec, 0xd2, 0x4c, 0xea, 0xee, 0x1b, 0xec, 0x77, 0xf5, 0x9f, 0x21, 0xf7, 0xf3, 0x1c, 0x19, 0x53, 0x8a, 0xf0, 0x47, 0xd2, 0x81, 0xac, 0x9e, 0x25, 0x67, 0x93, 0x3f, 0xd3, 0xd2, 0x10, 0x96, 0xb1, 0x85, 0xd4, 0x09, 0x89, 0x19, 0x57, 0x19, 0x31, 0xbb, 0x9b, 0x0b, 0xe7, 0x19, 0x79, 0x95, 0xe2, 0xfb, 0xaf, 0x21, 0xc8, 0xa1, 0x00, 0x07, 0xad, 0xe0, 0x01, 0xad, 0x69, 0xf0, 0x8f, 0xca, 0xe1, 0x64, 0x39, 0x0b, 0xe8, 0x26, 0x25, 0x6b, 0x50, 0xfa, 0xe4, 0x75, 0x02, 0xce, 0x0e, 0x9c, 0xa4, 0x6a, 0xf0, 0xc4, 0x90, 0xcb, 0x40, 0x33, 0xc8, 0x86, 0xf8, 0x86, 0x61, 0xa9, 0x9f, 0xf2, 0xbd, 0x3c, 0x9c, 0x8e, 0x7d, 0xa3, 0x0f, 0xaf, 0x2b, 0x4c, 0x76, 0x9e, 0xdc, 0x58, 0x31, 0x81, 0x0a, 0xc0, 0x50, 0x54, 0xc9, 0x7e, 0x41, 0x06, 0x3f, 0x49, 0x6e, 0x1f, }; static const unsigned char ecdh_secp521r1_2265_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2265_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2265 = { .name = "ecdh_secp521r1_2265", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2265_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2265_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2265_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2266 for ECDH, tcId is 17 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2266_peerpubkey[] = { 0x01, 0xf5, 0x86, 0x61, 0x1c, 0x87, 0x15, 0x02, 0x88, 0xc3, 0xe8, 0x61, 0x16, 0xc5, 0xdb, 0x94, 0xa2, 0x67, 0x18, 0x97, 0x88, 0x29, 0xd7, 0x01, 0xdd, 0xac, 0x05, 0xe9, 0xb0, 0xce, 0x22, 0xde, 0xe4, 0xb1, 0x8e, 0x95, 0xf6, 0x0c, 0xba, 0x78, 0x3e, 0xd3, 0x38, 0x4d, 0xa3, 0x73, 0xde, 0xae, 0xfc, 0x57, 0xb8, 0x26, 0x5d, 0x3a, 0x34, 0xee, 0xb4, 0x58, 0xbf, 0x24, 0xb9, 0xd8, 0x2b, 0xe3, 0x28, 0x19, 0x00, 0x84, 0x56, 0xe0, 0xf1, 0xd8, 0x04, 0x92, 0xef, 0x00, 0x78, 0xcc, 0x24, 0x6d, 0x32, 0xfc, 0x7c, 0x7f, 0xb6, 0x72, 0x0b, 0x4d, 0x45, 0x8b, 0x51, 0xb2, 0x09, 0x8d, 0x35, 0x74, 0x67, 0x52, 0xb0, 0xef, 0x03, 0x45, 0xbd, 0x0d, 0x34, 0x2d, 0xfe, 0xe6, 0xdd, 0x2f, 0x12, 0xed, 0x12, 0xb3, 0x4b, 0xd9, 0x5d, 0x05, 0x8c, 0x28, 0x11, 0xfd, 0x47, 0x9d, 0x2d, 0xde, 0x32, 0x18, 0x0e, 0x6c, 0x9e, 0xf2, }; static const unsigned char ecdh_secp521r1_2266_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2266_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_2266 = { .name = "ecdh_secp521r1_2266", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2266_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2266_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2266_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2267 for ECDH, tcId is 18 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2267_peerpubkey[] = { 0x01, 0x5e, 0xdc, 0x87, 0xfd, 0x49, 0x9a, 0x73, 0xea, 0xbf, 0xfd, 0x14, 0xd2, 0xb6, 0xa7, 0x0a, 0x8f, 0xb6, 0x9b, 0x6a, 0x39, 0xd0, 0xd9, 0xc4, 0xdd, 0xa2, 0x33, 0x7b, 0x53, 0xcc, 0x72, 0xe4, 0x9a, 0x9e, 0x3d, 0x5a, 0x2d, 0x9e, 0x89, 0x30, 0xcf, 0xa1, 0x18, 0x52, 0xda, 0xc3, 0x34, 0x43, 0x22, 0x7f, 0xba, 0x66, 0x84, 0xbd, 0x74, 0x73, 0x2e, 0x68, 0x79, 0x88, 0x4b, 0x6e, 0xf9, 0xda, 0xe9, 0x8f, 0x01, 0x0e, 0xeb, 0x8d, 0x2e, 0x33, 0x60, 0xea, 0x97, 0x26, 0x62, 0x80, 0x85, 0x26, 0x8a, 0xf3, 0xf2, 0xa0, 0x5a, 0xd4, 0x12, 0x35, 0xd0, 0xa8, 0x92, 0x09, 0x8b, 0xd6, 0x61, 0xb6, 0x36, 0xf7, 0xef, 0x0a, 0x82, 0x02, 0x82, 0x90, 0x6e, 0xda, 0x3f, 0x1f, 0xf1, 0x98, 0x0b, 0x98, 0xfb, 0x59, 0x37, 0x22, 0x8e, 0x9e, 0xdc, 0xd6, 0x33, 0x2e, 0x36, 0x41, 0x21, 0x6c, 0x73, 0x07, 0xe7, 0xf3, 0xf4, 0x52, }; static const unsigned char ecdh_secp521r1_2267_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2267_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_2267 = { .name = "ecdh_secp521r1_2267", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2267_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2267_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2267_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2268 for ECDH, tcId is 19 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2268_peerpubkey[] = { 0x01, 0x31, 0xb4, 0x30, 0x02, 0xf7, 0xe6, 0x87, 0xee, 0xc1, 0xec, 0xf6, 0xa2, 0x53, 0xc2, 0xcc, 0xc9, 0xe4, 0x8f, 0x04, 0xd8, 0x6f, 0xcc, 0xd1, 0x8f, 0xee, 0x0d, 0x2d, 0x22, 0x19, 0x1f, 0x1e, 0xa5, 0x39, 0xc4, 0x0d, 0x52, 0x19, 0x70, 0xb4, 0x70, 0x9d, 0xc0, 0x39, 0x86, 0xf6, 0x47, 0xe0, 0xe8, 0xbb, 0x33, 0x40, 0xcf, 0x8a, 0x3e, 0x64, 0x3a, 0x35, 0x41, 0x03, 0x54, 0x37, 0xcf, 0x25, 0xf0, 0x15, 0x00, 0xb2, 0x7a, 0x55, 0xac, 0x45, 0xf0, 0x29, 0x6f, 0x8c, 0x96, 0x56, 0xbc, 0xfd, 0x52, 0xb5, 0xce, 0xa9, 0xf4, 0x11, 0x5c, 0x06, 0xe4, 0xc6, 0x43, 0x19, 0x60, 0x98, 0x47, 0xd4, 0x5e, 0x92, 0x41, 0x84, 0x00, 0xe7, 0x86, 0x86, 0x72, 0xc0, 0xd3, 0xe6, 0xe5, 0xe6, 0xe0, 0x04, 0xa7, 0x19, 0x04, 0x76, 0xed, 0x77, 0xcf, 0xc3, 0x3a, 0xd1, 0x9a, 0x4b, 0xd2, 0xc6, 0x15, 0xad, 0x99, 0x50, 0xf3, 0x74, }; static const unsigned char ecdh_secp521r1_2268_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_2268_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp521r1_2268 = { .name = "ecdh_secp521r1_2268", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2268_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2268_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2268_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 19 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2269 for ECDH, tcId is 20 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2269_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_2269_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2269_sharedsecret[] = { 0x00, 0x53, 0xbf, 0x13, 0x7f, 0xee, 0x89, 0x22, 0x76, 0x9f, 0x8d, 0x0f, 0xe2, 0x79, 0xca, 0xa4, 0xda, 0xc9, 0xc6, 0x05, 0x4a, 0xd0, 0x46, 0x09, 0x95, 0x58, 0x8a, 0x84, 0x5d, 0x0a, 0x95, 0x9e, 0x24, 0xbc, 0x0f, 0xc2, 0x39, 0x1a, 0x2b, 0x92, 0xf7, 0xbd, 0x40, 0x0f, 0x50, 0xa1, 0x1a, 0x9d, 0xb3, 0x7f, 0x07, 0xbe, 0xf7, 0xfa, 0x8d, 0xad, 0x2a, 0x90, 0x3f, 0xcf, 0x53, 0x4a, 0xbc, 0x87, 0x36, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2269 = { .name = "ecdh_secp521r1_2269", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2269_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2269_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2269_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 20 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2270 for ECDH, tcId is 21 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2270_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_2270_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2270_sharedsecret[] = { 0x01, 0xc9, 0x5a, 0xc4, 0x17, 0xc9, 0x0a, 0x52, 0x01, 0x49, 0xb2, 0x91, 0x05, 0xcd, 0xab, 0x36, 0xf5, 0x28, 0xa2, 0x3e, 0xfb, 0x56, 0x21, 0x52, 0x0d, 0xbd, 0xaf, 0xea, 0x95, 0xa7, 0xd4, 0x34, 0x99, 0xc4, 0xc8, 0xbe, 0x02, 0xcd, 0x1c, 0x2d, 0xe0, 0x00, 0xda, 0x18, 0x10, 0x4f, 0xa8, 0x4a, 0x1e, 0x9e, 0xce, 0x63, 0x86, 0xf0, 0xe0, 0xef, 0xa5, 0x23, 0x4a, 0x24, 0x59, 0x5d, 0x7c, 0x4c, 0x96, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp521r1_2270 = { .name = "ecdh_secp521r1_2270", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2270_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2270_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2270_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2271 for ECDH, tcId is 22 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2271_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_2271_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2271_sharedsecret[] = { 0x01, 0xb4, 0x7e, 0xc4, 0x1e, 0x3a, 0x5a, 0xbd, 0x9d, 0xd9, 0x80, 0x8f, 0xc0, 0x4d, 0x90, 0x78, 0xcb, 0xed, 0x72, 0xb9, 0xeb, 0xa9, 0x8d, 0x3c, 0x1d, 0xed, 0x70, 0xa2, 0x99, 0x38, 0xf0, 0xef, 0xd5, 0xa2, 0x7a, 0x71, 0x13, 0xff, 0x72, 0x1f, 0x12, 0x2c, 0xb1, 0x74, 0x11, 0xde, 0x30, 0x7a, 0x35, 0x5c, 0x68, 0x50, 0x74, 0xf5, 0x76, 0x6b, 0x6d, 0x1a, 0x03, 0x3d, 0x2f, 0xa1, 0x88, 0xc9, 0x45, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2271 = { .name = "ecdh_secp521r1_2271", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2271_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2271_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2271_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2272 for ECDH, tcId is 23 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2272_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f, 0x88, 0x0f, 0x50, 0xec, 0x94, 0xbf, 0xac, 0x66, 0x58, 0xfa, 0x2f, 0xce, 0x05, 0x94, 0x5c, 0x6a, 0x36, 0xb2, 0x66, 0x40, 0x7b, 0x6f, 0xbd, 0x54, 0x37, 0xa8, 0x3e, 0x2f, 0x2f, 0x9b, 0x9c, 0x50, 0xa7, 0x34, 0x87, 0x2e, 0x48, 0xe7, 0x0d, 0xf6, 0x54, 0x57, 0xf1, 0x3e, 0x47, 0xd0, 0x6c, 0x6b, 0x8b, 0x29, 0xf4, 0x73, 0x5a, 0xcf, 0x10, 0x5e, 0xa6, 0x3e, 0x05, 0x19, 0x04, 0xd1, 0x8a, 0xea, }; static const unsigned char ecdh_secp521r1_2272_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2272_sharedsecret[] = { 0x01, 0x3a, 0xef, 0xe3, 0x24, 0x57, 0x28, 0xa0, 0x8c, 0x90, 0x4f, 0xe7, 0xd6, 0x1c, 0xd9, 0xc2, 0xfd, 0xac, 0x63, 0xf2, 0x9c, 0xf6, 0x64, 0xd8, 0xf1, 0x61, 0xbe, 0xba, 0xcb, 0x93, 0xf8, 0xa7, 0x10, 0xe9, 0x69, 0x2f, 0x96, 0x89, 0x48, 0x0a, 0xd4, 0x98, 0xde, 0x00, 0xf0, 0x00, 0x61, 0xe4, 0x0e, 0x46, 0xe7, 0x6e, 0x47, 0x54, 0xc1, 0x13, 0x0e, 0xf4, 0x21, 0x7a, 0x58, 0x93, 0x3e, 0x0b, 0x1d, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2272 = { .name = "ecdh_secp521r1_2272", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2272_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2272_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2272_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2273 for ECDH, tcId is 24 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2273_peerpubkey[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x3f, 0xfc, 0x45, 0xda, 0x3e, 0xac, 0x1b, 0xaa, 0xb7, 0x27, 0xab, 0x8f, 0xd3, 0x55, 0xcf, 0xa1, 0x34, 0xc4, 0x20, 0x47, 0xd5, 0x52, 0x62, 0x65, 0x16, 0x54, 0xfb, 0x50, 0xdf, 0x7e, 0x9a, 0x5a, 0x75, 0xf1, 0x79, 0xc8, 0xc8, 0x6c, 0x43, 0x88, 0x21, 0x3b, 0x56, 0x87, 0xdc, 0x43, 0xdf, 0xeb, 0xb3, 0x7f, 0x30, 0x12, 0x87, 0x03, 0xc4, 0x4c, 0xcd, 0x5c, 0x32, 0x84, 0x83, 0x3b, 0x87, 0x17, }; static const unsigned char ecdh_secp521r1_2273_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2273_sharedsecret[] = { 0x01, 0x68, 0xdf, 0x27, 0x2d, 0x53, 0xe3, 0x16, 0x19, 0x26, 0x16, 0x8c, 0x4a, 0xea, 0xb5, 0xf3, 0x55, 0xb8, 0xd2, 0xa6, 0x68, 0x9c, 0xfd, 0x56, 0x7f, 0x2b, 0x6e, 0xb2, 0x01, 0x1a, 0x18, 0xc7, 0x75, 0xac, 0x2a, 0x21, 0xf8, 0xdd, 0x49, 0x7f, 0x69, 0x57, 0x21, 0x70, 0x20, 0xb3, 0xb1, 0xaf, 0xcb, 0x70, 0x21, 0xf2, 0x4f, 0xcc, 0xc2, 0x52, 0x3b, 0xe7, 0x6a, 0x2b, 0xff, 0x44, 0x59, 0x6e, 0x5a, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_2273 = { .name = "ecdh_secp521r1_2273", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2273_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2273_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2273_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2274 for ECDH, tcId is 25 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2274_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0xcd, 0x28, 0x39, 0xd8, 0x57, 0xb4, 0x69, 0x9f, 0x5c, 0x8e, 0x8a, 0x01, 0x94, 0x78, 0x6e, 0x26, 0xa8, 0x62, 0xf0, 0x86, 0xb4, 0xba, 0x80, 0x74, 0x6a, 0xe5, 0x22, 0x5e, 0xd3, 0xaa, 0x68, 0xf9, 0x6b, 0x7a, 0xae, 0xc5, 0x52, 0x25, 0x83, 0x0b, 0xb9, 0x8f, 0x52, 0xd7, 0x52, 0x21, 0x14, 0x18, 0x97, 0xba, 0x49, 0xd7, 0xa3, 0x1e, 0xbb, 0xf0, 0xb6, 0xd7, 0xd3, 0x13, 0x52, 0xe5, 0x26, 0x61, 0x90, }; static const unsigned char ecdh_secp521r1_2274_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2274_sharedsecret[] = { 0x01, 0x3d, 0xb1, 0xb9, 0x24, 0x1b, 0x23, 0xd3, 0x38, 0x60, 0xd3, 0x2d, 0xec, 0x37, 0xa7, 0x9e, 0x45, 0x46, 0xa4, 0x1a, 0xfd, 0xfd, 0xd9, 0xc4, 0x38, 0xd0, 0x4e, 0x1f, 0x8b, 0x56, 0x6a, 0xc8, 0xd9, 0xd3, 0xf5, 0x72, 0xc2, 0x93, 0xe9, 0x69, 0x43, 0x72, 0x2a, 0x4e, 0xe2, 0x90, 0xe1, 0x13, 0xff, 0xfa, 0xa8, 0x2a, 0x61, 0x86, 0x7d, 0x9c, 0xa2, 0x8d, 0x34, 0x99, 0x82, 0x35, 0x4c, 0x9b, 0x25, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2274 = { .name = "ecdh_secp521r1_2274", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2274_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2274_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2274_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2275 for ECDH, tcId is 26 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2275_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x13, 0xd9, 0x82, 0x91, 0x19, 0xf4, 0x2f, 0xfa, 0x95, 0xfe, 0xa8, 0xba, 0x9e, 0x81, 0xe4, 0xcd, 0x6a, 0x6c, 0xa9, 0x7f, 0xb0, 0x77, 0x8e, 0x12, 0xe5, 0xf5, 0xdf, 0xe3, 0x52, 0x01, 0xdd, 0x4c, 0xca, 0x8e, 0xca, 0x0d, 0x2e, 0x39, 0x55, 0x55, 0x99, 0x70, 0x41, 0x38, 0x1e, 0x6a, 0xc1, 0xf1, 0x8d, 0xdf, 0x4c, 0x74, 0xe0, 0xb6, 0xe9, 0x04, 0x1c, 0xfd, 0xca, 0x1d, 0x1c, 0x10, 0x30, 0x91, }; static const unsigned char ecdh_secp521r1_2275_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2275_sharedsecret[] = { 0x01, 0xd2, 0xbb, 0xe9, 0xf7, 0x54, 0x58, 0x4e, 0xbb, 0xc7, 0xc7, 0xad, 0x74, 0x13, 0x6d, 0x1c, 0x8a, 0x14, 0x49, 0x48, 0x94, 0x8a, 0xa8, 0xbe, 0x49, 0x98, 0x9d, 0xd9, 0xb4, 0xc5, 0x14, 0xdb, 0x2e, 0x2a, 0xb1, 0xe0, 0x71, 0x3a, 0xd1, 0x69, 0x9f, 0x63, 0x2d, 0xd2, 0xce, 0xa5, 0x3d, 0xa2, 0x18, 0xed, 0x54, 0x9f, 0x03, 0x0a, 0x11, 0x3e, 0x28, 0x2f, 0xd9, 0xe3, 0xbe, 0x46, 0x2d, 0x9a, 0xba, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_2275 = { .name = "ecdh_secp521r1_2275", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2275_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2275_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2275_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2276 for ECDH, tcId is 27 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2276_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x87, 0x8a, 0xd5, 0x97, 0xd2, 0x90, 0xdb, 0x2c, 0xf6, 0x60, 0x59, 0x4a, 0xee, 0xd0, 0xf9, 0xb7, 0xc8, 0xdd, 0x68, 0x45, 0x1d, 0x2d, 0x1b, 0x2c, 0xbc, 0x81, 0x6b, 0x1e, 0xc4, 0xf3, 0x54, 0x65, 0xb3, 0x96, 0x4a, 0xff, 0x2e, 0xdf, 0x12, 0x55, 0x16, 0x3f, 0x5f, 0xca, 0x58, 0x01, 0x32, 0xf8, 0x5c, 0xad, 0xe2, 0x88, 0x7a, 0x01, 0x7e, 0x7c, 0xd0, 0xb3, 0x71, 0x96, 0xad, 0x85, 0x22, 0x11, 0x07, }; static const unsigned char ecdh_secp521r1_2276_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2276_sharedsecret[] = { 0x00, 0x0f, 0x37, 0xa2, 0xe2, 0xca, 0xef, 0x54, 0xff, 0xf4, 0x12, 0x6c, 0x0f, 0xa9, 0x6e, 0x7c, 0x47, 0xf0, 0xca, 0xd7, 0x46, 0x26, 0xef, 0x91, 0xe5, 0x89, 0xe1, 0x2d, 0x2e, 0x1e, 0x8c, 0x22, 0x1b, 0xe7, 0x29, 0x5b, 0xe9, 0xdc, 0x27, 0x12, 0xb8, 0x7b, 0xb0, 0xaa, 0x0f, 0x58, 0x80, 0xb7, 0x38, 0xbc, 0x12, 0x42, 0xf2, 0xba, 0x77, 0x3b, 0xf9, 0xeb, 0x2a, 0x54, 0xe3, 0xc1, 0xca, 0x47, 0x58, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2276 = { .name = "ecdh_secp521r1_2276", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2276_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2276_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2276_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2277 for ECDH, tcId is 28 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2277_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xe1, 0x19, 0x1b, 0x44, 0x9f, 0xa1, 0xeb, 0xdb, 0xd6, 0x77, 0xda, 0xa4, 0x8f, 0x90, 0xe2, 0xd1, 0xd6, 0xc0, 0x58, 0xc8, 0x77, 0x08, 0x7c, 0xaf, 0xd9, 0x36, 0x4d, 0x99, 0xdb, 0xb2, 0x83, 0xc6, 0x84, 0x02, 0xe6, 0xe6, 0xc5, 0xf5, 0x41, 0x1b, 0x2e, 0xd4, 0x28, 0x24, 0xd8, 0xb2, 0x80, 0xce, 0xb9, 0x10, 0xab, 0xa6, 0x84, 0x78, 0x83, 0xa7, 0xe3, 0x78, 0x0e, 0x21, 0x32, 0xaf, 0x41, 0xc1, }; static const unsigned char ecdh_secp521r1_2277_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2277_sharedsecret[] = { 0x01, 0x7a, 0xeb, 0x25, 0x4d, 0x9c, 0x8c, 0x8e, 0xe0, 0x62, 0x15, 0xff, 0x33, 0x81, 0x13, 0x57, 0xda, 0x73, 0xbf, 0x7f, 0x6d, 0xd6, 0xd7, 0xf8, 0xf1, 0x76, 0xd6, 0x2c, 0x06, 0x5a, 0x88, 0xa9, 0x00, 0x5f, 0x68, 0x0c, 0x63, 0x0e, 0x9f, 0x27, 0x63, 0x58, 0x5e, 0xa2, 0xee, 0x76, 0xb6, 0xe4, 0xab, 0x45, 0xe6, 0x73, 0xf8, 0x14, 0xeb, 0xfa, 0x95, 0x94, 0x7c, 0x0c, 0x63, 0xfb, 0x24, 0xfa, 0x6e, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_2277 = { .name = "ecdh_secp521r1_2277", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2277_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2277_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2277_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2278 for ECDH, tcId is 29 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2278_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x75, 0x13, 0xd6, 0x15, 0x65, 0x6a, 0x1c, 0xc7, 0x50, 0x5c, 0x18, 0xaa, 0x21, 0xb0, 0x8e, 0x2b, 0x1d, 0x5a, 0x84, 0x1d, 0xe0, 0x81, 0x6c, 0xc2, 0x9c, 0x00, 0x4e, 0xfd, 0xb2, 0xd9, 0x02, 0xac, 0x1a, 0x7b, 0xb0, 0x5e, 0x20, 0x72, 0x2b, 0x57, 0x6b, 0x64, 0xa3, 0xdd, 0xf4, 0xd2, 0x48, 0x64, 0x21, 0xac, 0x70, 0x6b, 0xf4, 0xa4, 0x24, 0xf2, 0x52, 0x38, 0x63, 0x68, 0xa5, 0x34, 0x0f, 0xb6, }; static const unsigned char ecdh_secp521r1_2278_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2278_sharedsecret[] = { 0x00, 0x61, 0xbe, 0xd4, 0x22, 0x48, 0xa3, 0x7b, 0x46, 0x25, 0xef, 0x04, 0xc4, 0xf9, 0xc7, 0xef, 0x69, 0xee, 0x3c, 0x6f, 0x95, 0x03, 0x37, 0x83, 0x51, 0xfc, 0xab, 0x1b, 0x8c, 0xe1, 0x34, 0x32, 0x06, 0x99, 0x7e, 0xec, 0x1b, 0x88, 0x44, 0x9e, 0xb6, 0xf7, 0x35, 0x57, 0x11, 0xea, 0x1a, 0x81, 0x8a, 0x48, 0x6e, 0xe3, 0x0a, 0x24, 0x12, 0x62, 0x41, 0xa7, 0xe2, 0x28, 0x92, 0x67, 0xcf, 0x5d, 0xd6, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2278 = { .name = "ecdh_secp521r1_2278", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2278_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2278_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2278_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2279 for ECDH, tcId is 30 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2279_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x1f, 0xe8, 0x00, 0xc5, 0x0e, 0x54, 0x01, 0x2b, 0x75, 0xa3, 0x3e, 0x4b, 0xe7, 0xd0, 0x7c, 0x8d, 0x60, 0xf2, 0x96, 0x80, 0xa3, 0x95, 0xe9, 0x51, 0xa6, 0xa3, 0x1c, 0x50, 0x96, 0xb0, 0xea, 0x92, 0x8f, 0xc2, 0xcb, 0xf3, 0x27, 0xdd, 0x78, 0x4d, 0xc0, 0xa7, 0xca, 0x46, 0xea, 0x73, 0x99, 0x2b, 0x75, 0x8b, 0x56, 0x41, 0x36, 0x4b, 0x4a, 0xba, 0x39, 0xe9, 0x37, 0x98, 0xa4, 0xd9, 0x25, 0xa0, 0x08, }; static const unsigned char ecdh_secp521r1_2279_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2279_sharedsecret[] = { 0x00, 0x10, 0x67, 0xd9, 0x10, 0x4e, 0x29, 0x6e, 0xf4, 0x2b, 0x94, 0x45, 0x87, 0xde, 0x11, 0xb1, 0x0d, 0xf0, 0x5d, 0x2d, 0x95, 0x9e, 0xd4, 0x4c, 0xac, 0x9e, 0x7e, 0xf1, 0xc7, 0xa0, 0x5d, 0x90, 0x81, 0x9c, 0x43, 0xbc, 0x79, 0xc7, 0x39, 0x79, 0x18, 0xf9, 0x57, 0xcc, 0x98, 0xdb, 0x93, 0x17, 0x63, 0xbb, 0xeb, 0x1b, 0xdf, 0xc3, 0x58, 0x65, 0xe8, 0xa3, 0x59, 0xa0, 0x13, 0xf1, 0x3d, 0x60, 0xc4, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_2279 = { .name = "ecdh_secp521r1_2279", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2279_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2279_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2279_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2280 for ECDH, tcId is 31 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2280_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8d, 0xd1, 0x8a, 0x1f, 0x5e, 0x48, 0x21, 0x40, 0xbe, 0x79, 0xbb, 0x65, 0xa2, 0x1a, 0xd6, 0x0c, 0x89, 0x87, 0xe5, 0x32, 0xc8, 0x43, 0x45, 0xf0, 0x13, 0x5a, 0xff, 0xd4, 0x6e, 0xc7, 0x1e, 0xf0, 0x2b, 0x1c, 0xa3, 0xad, 0x56, 0xf3, 0x01, 0xd9, 0x55, 0xfa, 0x30, 0x6c, 0x12, 0x2d, 0x44, 0x1d, 0x6f, 0xed, 0xcf, 0x8b, 0x85, 0x5e, 0xf2, 0x56, 0x35, 0x0b, 0xf6, 0x9d, 0x23, 0xa7, 0x20, 0x7a, 0xd9, }; static const unsigned char ecdh_secp521r1_2280_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2280_sharedsecret[] = { 0x00, 0xb7, 0x79, 0xd8, 0x30, 0x35, 0xcf, 0x7b, 0xb0, 0xbb, 0x04, 0xc7, 0xb2, 0xf4, 0x6d, 0x08, 0xf6, 0x79, 0x1f, 0x0d, 0x15, 0x42, 0xc9, 0xbc, 0xce, 0x72, 0x50, 0xe7, 0x72, 0xb1, 0x2a, 0xd8, 0xe3, 0x8f, 0xce, 0x1d, 0x2b, 0x06, 0x3a, 0x06, 0xf0, 0xfa, 0x3a, 0x1b, 0x07, 0x2d, 0xd9, 0x76, 0xf5, 0xf8, 0x54, 0x29, 0x79, 0x90, 0x30, 0x75, 0x16, 0x2f, 0x1f, 0x5c, 0x6b, 0xa3, 0xb7, 0x6c, 0xc4, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2280 = { .name = "ecdh_secp521r1_2280", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2280_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2280_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2280_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2281 for ECDH, tcId is 32 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2281_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x00, 0x56, 0x62, 0x03, 0xdd, 0x32, 0x5a, 0x08, 0x1c, 0x44, 0x41, 0xf0, 0x01, 0xf7, 0x80, 0x36, 0x58, 0x74, 0xfd, 0x3d, 0x0c, 0x9b, 0xc4, 0x72, 0x27, 0x48, 0x1a, 0xfe, 0x76, 0xa9, 0x3a, 0xe1, 0xbf, 0xde, 0x63, 0xaf, 0x97, 0x22, 0x03, 0xab, 0xfe, 0x22, 0xc6, 0x3b, 0x80, 0xe8, 0x3f, 0x7c, 0xc2, 0x18, 0x4c, 0x3c, 0xb8, 0xcf, 0xd0, 0x15, 0x2c, 0x54, 0x32, 0x4c, 0x47, 0x59, 0xfd, 0x1f, 0x9a, 0x50, }; static const unsigned char ecdh_secp521r1_2281_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2281_sharedsecret[] = { 0x01, 0xaf, 0xe5, 0xd2, 0x37, 0x33, 0x72, 0x8b, 0x79, 0xc7, 0x43, 0x93, 0x3b, 0x9b, 0xa7, 0xdf, 0xec, 0x5e, 0xd1, 0x9b, 0x77, 0x37, 0xe3, 0x93, 0x90, 0x8a, 0x1d, 0x00, 0x09, 0x18, 0xaa, 0x79, 0x5d, 0x1c, 0xe0, 0xad, 0x53, 0x39, 0x83, 0xd0, 0x18, 0xf9, 0x27, 0xb3, 0x5d, 0x2a, 0xf6, 0x46, 0x33, 0x56, 0x57, 0x3f, 0x38, 0x7f, 0xeb, 0xd7, 0x59, 0x11, 0xa4, 0x94, 0x86, 0x20, 0x2c, 0xa6, 0x9d, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2281 = { .name = "ecdh_secp521r1_2281", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2281_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2281_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2281_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2282 for ECDH, tcId is 33 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2282_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0xb1, 0x1c, 0x66, 0x8f, 0xbd, 0x54, 0x9f, 0x36, 0x88, 0x9f, 0x7b, 0x63, 0x43, 0x40, 0x51, 0xda, 0x26, 0xf1, 0x57, 0x05, 0x83, 0x91, 0x36, 0xb1, 0xb1, 0x4a, 0x09, 0x15, 0x2d, 0x7a, 0x18, 0x2e, 0xa7, 0x80, 0x6c, 0x35, 0x47, 0x8a, 0x32, 0xd3, 0xaa, 0x3c, 0x9c, 0x16, 0x27, 0xa6, 0x15, 0x19, 0xeb, 0xec, 0x71, 0xb3, 0x6f, 0xa7, 0x74, 0x49, 0x02, 0x5b, 0x88, 0x29, 0xe2, 0x7f, 0x30, 0x78, 0x34, }; static const unsigned char ecdh_secp521r1_2282_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2282_sharedsecret[] = { 0x01, 0x96, 0x12, 0xae, 0xb3, 0x86, 0xfe, 0xbb, 0x1a, 0x28, 0x09, 0x6f, 0xe5, 0xb2, 0xf6, 0x82, 0xde, 0xad, 0x02, 0x38, 0x97, 0x85, 0x22, 0x5b, 0x80, 0xa2, 0x7d, 0xf4, 0x39, 0x51, 0x0d, 0x08, 0x34, 0x9a, 0x19, 0x38, 0x39, 0x52, 0x5f, 0x24, 0x8b, 0x7f, 0x9b, 0xca, 0xbf, 0xd3, 0xdc, 0x8d, 0xa8, 0xcc, 0x17, 0x24, 0x02, 0x22, 0x99, 0xb7, 0xb5, 0xe7, 0x23, 0x99, 0xd8, 0x94, 0x64, 0xb8, 0x2e, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_2282 = { .name = "ecdh_secp521r1_2282", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2282_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2282_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2282_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2283 for ECDH, tcId is 34 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2283_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x00, 0xaa, 0x75, 0xef, 0xc0, 0xa8, 0xda, 0xac, 0x1d, 0x73, 0xf3, 0x2c, 0x9c, 0x55, 0x24, 0x14, 0xbc, 0xcf, 0x44, 0xaf, 0x8e, 0x74, 0x33, 0x1b, 0x47, 0x43, 0x9e, 0x7d, 0xcc, 0x49, 0xa1, 0x35, 0xb3, 0xee, 0x61, 0xe9, 0xf6, 0x97, 0x17, 0xd8, 0x9b, 0x4b, 0xba, 0x35, 0x67, 0xa1, 0x95, 0xae, 0xda, 0x13, 0xfb, 0xec, 0x63, 0x4b, 0xf2, 0x98, 0x4b, 0x5e, 0xc6, 0xb6, 0xf8, 0x0f, 0x59, 0x78, 0xed, 0x5a, }; static const unsigned char ecdh_secp521r1_2283_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2283_sharedsecret[] = { 0x00, 0x57, 0x06, 0x73, 0xf8, 0x7a, 0xdc, 0xef, 0x49, 0xc1, 0xf0, 0x11, 0xe8, 0xb9, 0xf1, 0xe1, 0x1f, 0x7f, 0xd3, 0xb3, 0xc9, 0x31, 0x14, 0xd0, 0x8d, 0x3f, 0x51, 0x5a, 0xa4, 0xa8, 0x95, 0xa6, 0xc7, 0x01, 0xc5, 0x23, 0x06, 0x3b, 0xdc, 0x13, 0xad, 0x1d, 0xb0, 0xa5, 0x4f, 0x6e, 0x7b, 0x47, 0x6f, 0xe1, 0x0d, 0xb2, 0x07, 0x04, 0x41, 0xbe, 0xfc, 0x58, 0xc8, 0xcf, 0xf3, 0xc0, 0x8e, 0xf7, 0x6e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_2283 = { .name = "ecdh_secp521r1_2283", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2283_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2283_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2283_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2284 for ECDH, tcId is 35 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2284_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_2284_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2284_sharedsecret[] = { 0x00, 0x16, 0xaa, 0xf2, 0x28, 0xb0, 0xae, 0xc1, 0x90, 0xd4, 0xe4, 0xe5, 0xb8, 0x13, 0x8f, 0xf9, 0xcc, 0x46, 0xd7, 0x05, 0xda, 0x1b, 0xf0, 0x02, 0x90, 0x1c, 0x6a, 0xb4, 0x20, 0xf5, 0x93, 0x14, 0xd5, 0xb6, 0x41, 0x71, 0x2b, 0x14, 0xef, 0x3e, 0x4f, 0xb1, 0x25, 0x65, 0x2c, 0x47, 0x88, 0x86, 0x76, 0x80, 0x4f, 0xb5, 0x57, 0x5b, 0x74, 0x1a, 0x84, 0x08, 0xc5, 0x62, 0x5b, 0xfc, 0xcf, 0xf4, 0xfd, 0xda, }; static const wycheproof_ecdh_test ecdh_secp521r1_2284 = { .name = "ecdh_secp521r1_2284", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2284_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2284_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2284_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2285 for ECDH, tcId is 36 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2285_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_2285_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_2285_sharedsecret[] = { 0x00, 0xa5, 0xd6, 0xdf, 0xda, 0x2b, 0x26, 0x9f, 0x4a, 0xb8, 0x95, 0xa4, 0x1c, 0x3b, 0x71, 0xb6, 0xba, 0x10, 0xd5, 0xc9, 0xf0, 0xd9, 0xb3, 0xe7, 0x30, 0x27, 0x53, 0x45, 0xe4, 0x72, 0x15, 0x94, 0xab, 0xfd, 0x39, 0x46, 0x4c, 0x22, 0x77, 0x16, 0xde, 0xd8, 0xef, 0x3e, 0x60, 0xbb, 0x1c, 0xa0, 0xb5, 0x51, 0x71, 0x6e, 0x3f, 0x6e, 0xeb, 0xb4, 0x8d, 0x5c, 0xe8, 0xe0, 0xab, 0x58, 0xcb, 0x1b, 0x73, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_2285 = { .name = "ecdh_secp521r1_2285", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2285_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2285_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2285_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2286 for ECDH, tcId is 37 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2286_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_2286_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2286_sharedsecret[] = { 0x00, 0x8f, 0x61, 0xe1, 0x5e, 0x8c, 0x85, 0x45, 0xdc, 0xda, 0xb1, 0x88, 0xf1, 0x0b, 0xa9, 0x11, 0x1b, 0x63, 0x45, 0xd5, 0x29, 0xd9, 0xc5, 0x47, 0x06, 0x77, 0x34, 0x2d, 0xf7, 0xef, 0x54, 0xc5, 0x6a, 0x1f, 0xb9, 0xfb, 0xe8, 0xde, 0xa7, 0x6a, 0xfb, 0xe8, 0xf2, 0xdd, 0x4c, 0x3c, 0xfb, 0x4d, 0x5b, 0x74, 0x9d, 0x74, 0x39, 0x44, 0xc9, 0x6d, 0x74, 0xfb, 0x47, 0xbc, 0x4b, 0xf6, 0x01, 0xe5, 0xdc, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2286 = { .name = "ecdh_secp521r1_2286", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2286_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2286_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2286_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 37 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2287 for ECDH, tcId is 38 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2287_peerpubkey[] = { 0x00, 0x4d, 0xc1, 0x6c, 0xaf, 0xca, 0x98, 0x33, 0xee, 0xb9, 0x7c, 0x13, 0x6c, 0x15, 0x4f, 0x3a, 0xe3, 0x90, 0x83, 0x0f, 0x26, 0xd3, 0x00, 0xed, 0xef, 0x06, 0xf8, 0x67, 0xef, 0xab, 0x1c, 0x42, 0x14, 0xf5, 0x63, 0xc2, 0x5e, 0x1c, 0x81, 0xe1, 0x6a, 0x86, 0xea, 0xac, 0x82, 0x72, 0x89, 0x2d, 0x1b, 0x65, 0xb2, 0xee, 0x7f, 0xb2, 0xb6, 0x9b, 0xa1, 0x11, 0x0b, 0x08, 0x3b, 0xbe, 0xb6, 0xb8, 0x87, 0x3a, 0x01, 0x0d, 0xbb, 0x70, 0x12, 0x66, 0xa8, 0xdf, 0x32, 0xd1, 0x7b, 0xd5, 0x8b, 0xea, 0x36, 0x5c, 0x26, 0x37, 0xd6, 0x86, 0x27, 0x29, 0x00, 0xa5, 0xea, 0x7a, 0x19, 0xff, 0x98, 0xdb, 0x3b, 0xf9, 0x24, 0x25, 0xa4, 0x83, 0xc7, 0x0f, 0xdd, 0x9d, 0xb2, 0x5b, 0x6e, 0xe6, 0x99, 0x81, 0xcb, 0x69, 0xdc, 0xc9, 0xc4, 0x18, 0xc3, 0x29, 0x89, 0xe7, 0x3f, 0x0a, 0x5f, 0xd7, 0xf3, 0xc3, 0xba, 0x44, 0xb0, 0x51, }; static const unsigned char ecdh_secp521r1_2287_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2287_sharedsecret[] = { 0x01, 0x7e, 0x7e, 0xec, 0xdb, 0x0f, 0x52, 0xe3, 0xb8, 0xae, 0xdd, 0x0f, 0x55, 0x50, 0xf2, 0x6c, 0xd5, 0xe2, 0x7e, 0x71, 0x1d, 0x68, 0x60, 0xc5, 0x4f, 0x88, 0xcf, 0xd3, 0xff, 0x07, 0x5d, 0xf8, 0xd3, 0x63, 0xee, 0x3b, 0xe4, 0xda, 0xc2, 0xf4, 0x2d, 0x03, 0x6b, 0x7c, 0x64, 0xe2, 0xb5, 0x0d, 0x90, 0x76, 0x4a, 0xb4, 0xee, 0xf0, 0xb9, 0xd6, 0x8c, 0x29, 0x68, 0x2b, 0x97, 0x07, 0xd4, 0x5e, 0xc2, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_2287 = { .name = "ecdh_secp521r1_2287", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2287_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2287_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2287_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 38 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2288 for ECDH, tcId is 39 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2288_peerpubkey[] = { 0x01, 0x82, 0x55, 0xc0, 0x14, 0xf2, 0x53, 0x3a, 0xd9, 0x30, 0xe4, 0x32, 0x02, 0x16, 0x49, 0x6a, 0x3f, 0x4e, 0x0d, 0x78, 0xb5, 0x0f, 0xa2, 0x7d, 0x42, 0x20, 0x9e, 0x27, 0x0e, 0x39, 0xba, 0xf4, 0x80, 0xa9, 0x87, 0xa2, 0xc8, 0x40, 0x98, 0xee, 0xe5, 0x38, 0x89, 0xea, 0x8b, 0x6c, 0xc9, 0x03, 0x6d, 0xde, 0xeb, 0xef, 0xc0, 0x0b, 0x55, 0x42, 0xd2, 0x42, 0x5f, 0xaf, 0xd5, 0xe1, 0xba, 0xba, 0xe8, 0x41, 0x01, 0xdb, 0x81, 0x7b, 0x33, 0x2b, 0x29, 0x7a, 0x00, 0x3c, 0xff, 0xc4, 0x25, 0x1b, 0x58, 0xd9, 0xc7, 0xce, 0x0b, 0x90, 0x30, 0x1e, 0xf5, 0xc6, 0x5e, 0x8a, 0xc0, 0xf8, 0x25, 0x17, 0xfd, 0x17, 0x30, 0xa1, 0x67, 0xd8, 0x3a, 0xf5, 0x0d, 0x92, 0xf7, 0xe2, 0x5e, 0x08, 0x78, 0x71, 0x30, 0x61, 0x89, 0x20, 0x34, 0x5c, 0x43, 0x53, 0x37, 0xef, 0x45, 0xeb, 0x2e, 0x9b, 0x1a, 0xce, 0x53, 0x0d, 0x0e, 0xaf, }; static const unsigned char ecdh_secp521r1_2288_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2288_sharedsecret[] = { 0x01, 0x15, 0xba, 0x7f, 0xc1, 0xef, 0x5d, 0x15, 0x47, 0xbb, 0x25, 0x9d, 0x73, 0x02, 0xcf, 0x84, 0x40, 0x01, 0x60, 0xa5, 0x99, 0xa3, 0xfd, 0x1d, 0x36, 0x8e, 0x4d, 0x8f, 0x13, 0x68, 0x48, 0xbc, 0x32, 0xb3, 0x45, 0xa7, 0x92, 0x6b, 0x95, 0x14, 0x0c, 0x31, 0x9d, 0xb3, 0x9d, 0x3d, 0x89, 0x47, 0x9d, 0x44, 0xae, 0xac, 0xc0, 0x5c, 0x8a, 0xf3, 0x7d, 0x55, 0x45, 0x0c, 0x1a, 0xe1, 0x14, 0xbe, 0xb5, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_2288 = { .name = "ecdh_secp521r1_2288", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2288_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2288_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2288_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 39 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2289 for ECDH, tcId is 40 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2289_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_2289_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2289_sharedsecret[] = { 0x01, 0xd6, 0x39, 0x65, 0xc1, 0x50, 0xdc, 0xc6, 0xc8, 0x34, 0xdd, 0x2a, 0x94, 0x46, 0xa9, 0x00, 0x6e, 0x01, 0x1a, 0xff, 0xb8, 0x24, 0x1a, 0x38, 0xe3, 0x40, 0x97, 0x52, 0xb7, 0xf4, 0x78, 0xd3, 0x2c, 0x6d, 0x46, 0x1f, 0x97, 0x82, 0x96, 0xa5, 0x73, 0x39, 0xff, 0x4a, 0xb1, 0xa3, 0x08, 0xf8, 0xfd, 0x03, 0x30, 0xa9, 0x32, 0x97, 0x9b, 0x3f, 0xc2, 0x36, 0x3d, 0x04, 0x53, 0x8e, 0x72, 0x51, 0x01, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_2289 = { .name = "ecdh_secp521r1_2289", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2289_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2289_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2289_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 40 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2290 for ECDH, tcId is 41 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2290_peerpubkey[] = { 0x01, 0x73, 0xde, 0x99, 0x09, 0x78, 0xda, 0x53, 0xa0, 0x5c, 0x46, 0x3a, 0x56, 0x73, 0x04, 0x72, 0x7b, 0xbc, 0x9d, 0xbe, 0xd8, 0xd5, 0xda, 0xb3, 0xba, 0xd1, 0x1d, 0x18, 0x04, 0xde, 0xa8, 0x64, 0xfb, 0xed, 0x5b, 0xbe, 0xc8, 0x07, 0xc1, 0x3e, 0x41, 0x28, 0x74, 0x9c, 0xf8, 0xc1, 0x17, 0x27, 0xa4, 0xc5, 0x28, 0xf9, 0x1f, 0xf0, 0x21, 0x7f, 0x95, 0x3a, 0x30, 0x48, 0xde, 0x5b, 0xa7, 0xa2, 0xb9, 0xad, 0x00, 0xf0, 0x21, 0x3d, 0x03, 0x2c, 0xc6, 0x74, 0xe1, 0x02, 0x9c, 0x71, 0xd1, 0x0c, 0xb3, 0xf9, 0x1d, 0xe5, 0x37, 0x53, 0xa0, 0x1d, 0x6d, 0xdc, 0x41, 0x06, 0x40, 0x36, 0xa4, 0x3d, 0x61, 0x3f, 0x2b, 0xb8, 0x3f, 0xb9, 0x99, 0x87, 0x4a, 0x0f, 0xad, 0xcf, 0x8a, 0x6d, 0x40, 0xb9, 0x17, 0x13, 0xcc, 0x91, 0x14, 0xbd, 0x44, 0xc0, 0xf1, 0x33, 0x3e, 0xf9, 0x8f, 0x0e, 0xfb, 0x63, 0x72, 0xa9, 0xa4, 0x53, }; static const unsigned char ecdh_secp521r1_2290_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2290_sharedsecret[] = { 0x00, 0x81, 0x5a, 0x61, 0xf2, 0xc7, 0x62, 0x2d, 0x1b, 0x9e, 0x33, 0x10, 0x10, 0x4a, 0x41, 0xc5, 0x76, 0x83, 0x5a, 0x29, 0xcf, 0x3a, 0x87, 0x5e, 0x3b, 0x10, 0x62, 0xe4, 0x58, 0x87, 0x16, 0xd2, 0x57, 0x77, 0xf0, 0xa9, 0x0f, 0xa6, 0xa9, 0x9a, 0x95, 0x22, 0x63, 0x20, 0xba, 0x22, 0x5b, 0x89, 0x65, 0xd0, 0xef, 0x5a, 0xf6, 0x74, 0xfb, 0xa6, 0x9a, 0x8a, 0xcb, 0x85, 0x0b, 0x77, 0x73, 0xbe, 0x0c, 0x82, }; static const wycheproof_ecdh_test ecdh_secp521r1_2290 = { .name = "ecdh_secp521r1_2290", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2290_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2290_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2290_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 41 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2291 for ECDH, tcId is 42 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2291_peerpubkey[] = { 0x01, 0x0f, 0x43, 0x66, 0x2f, 0x4b, 0xad, 0x61, 0x87, 0xad, 0x22, 0xa4, 0x1d, 0xfc, 0x83, 0x1d, 0xcb, 0xa2, 0x55, 0xaf, 0x6c, 0x4b, 0x5f, 0x1c, 0x14, 0xb2, 0xed, 0x54, 0x47, 0xf8, 0x8b, 0x65, 0xd6, 0x90, 0xb8, 0x75, 0x84, 0x8e, 0xa7, 0xa0, 0xc4, 0xef, 0xe5, 0x5b, 0x82, 0x14, 0x88, 0xd1, 0xb0, 0xf8, 0x5c, 0xda, 0x6e, 0x71, 0x73, 0xd8, 0x7e, 0x0d, 0x76, 0x44, 0x1a, 0xaf, 0x60, 0xe9, 0x60, 0xd1, 0x00, 0x17, 0xfa, 0x4b, 0x51, 0x09, 0x7c, 0x5e, 0xf9, 0xcb, 0x66, 0xd6, 0xc3, 0xeb, 0x85, 0x1e, 0x1a, 0x8a, 0x41, 0x10, 0x24, 0x52, 0xbd, 0x3f, 0x89, 0x02, 0xf1, 0x7e, 0xe7, 0x2a, 0xb0, 0x77, 0x22, 0x41, 0x51, 0x01, 0x44, 0x67, 0x46, 0x86, 0x41, 0x9c, 0x7c, 0xd5, 0x5a, 0x93, 0x09, 0x51, 0x16, 0x5b, 0xa0, 0x7d, 0x34, 0xc2, 0xc2, 0x0c, 0x42, 0x10, 0x69, 0xc1, 0xfe, 0x3d, 0x97, 0x67, 0x37, 0xa4, }; static const unsigned char ecdh_secp521r1_2291_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2291_sharedsecret[] = { 0x01, 0x10, 0xea, 0x8a, 0xf7, 0x65, 0x67, 0x35, 0x17, 0x66, 0xd7, 0xdd, 0xcb, 0x73, 0x43, 0xee, 0x04, 0xed, 0xd9, 0x50, 0x35, 0xf7, 0x27, 0xe6, 0xba, 0xe0, 0xd8, 0x9d, 0x50, 0x17, 0x01, 0x9a, 0x3d, 0xf7, 0x95, 0x54, 0xd1, 0xd0, 0xe8, 0x4f, 0xe3, 0x39, 0xa7, 0xc0, 0xfd, 0x79, 0x82, 0x9c, 0xda, 0xe1, 0x37, 0x2e, 0x5d, 0x99, 0x00, 0xa0, 0xdc, 0x8b, 0xac, 0x63, 0xae, 0x33, 0x06, 0x6d, 0x3f, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_2291 = { .name = "ecdh_secp521r1_2291", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2291_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2291_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2291_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 42 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2292 for ECDH, tcId is 43 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2292_peerpubkey[] = { 0x01, 0x21, 0x83, 0xff, 0xf5, 0x77, 0x7e, 0x31, 0x9e, 0x8c, 0xd2, 0x3a, 0xb5, 0x39, 0x2b, 0xaa, 0x9d, 0x4b, 0x1d, 0x43, 0xc7, 0xf8, 0xb0, 0x1f, 0x78, 0xf2, 0x95, 0xc0, 0xc3, 0x7d, 0x4a, 0x3a, 0x12, 0x2f, 0x88, 0xc1, 0x63, 0xa8, 0xf9, 0x64, 0x8d, 0x9d, 0xa2, 0x3b, 0x38, 0x9b, 0xa5, 0x6e, 0x8e, 0x9c, 0xa0, 0x22, 0xc2, 0xfe, 0x9c, 0x27, 0x3f, 0x25, 0x85, 0x42, 0x9a, 0x2d, 0xe4, 0x32, 0x95, 0xb9, 0x01, 0xe1, 0x8e, 0x9e, 0xaa, 0xf8, 0xa4, 0x06, 0xf1, 0x0b, 0x1d, 0xcb, 0xaa, 0x68, 0x47, 0x43, 0xa4, 0x3d, 0x20, 0x3f, 0x6c, 0xdd, 0xd8, 0x70, 0x9d, 0xb9, 0x0f, 0x43, 0xfe, 0x7b, 0x8b, 0x38, 0x15, 0xea, 0xd2, 0x04, 0x6b, 0x6b, 0x37, 0x23, 0x9e, 0x06, 0x5d, 0xa6, 0x2d, 0x79, 0x7c, 0xd0, 0xa7, 0x31, 0x22, 0xee, 0x9b, 0xf1, 0xbd, 0x00, 0xb0, 0xd8, 0x01, 0x29, 0x7a, 0x3d, 0x2b, 0xce, 0xfd, 0x0d, }; static const unsigned char ecdh_secp521r1_2292_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2292_sharedsecret[] = { 0x01, 0xf3, 0xc9, 0xb4, 0x4f, 0xaf, 0x75, 0x4b, 0xe2, 0x50, 0xc2, 0xed, 0x75, 0x65, 0x41, 0xc2, 0x61, 0xcb, 0x53, 0x79, 0x5a, 0x55, 0x5e, 0x92, 0x47, 0x82, 0xdc, 0x4f, 0x2c, 0x1d, 0xd4, 0xa3, 0x85, 0x5c, 0x82, 0x3f, 0x33, 0xbd, 0xfc, 0xb0, 0xf0, 0x50, 0x3e, 0xa3, 0xf9, 0xa9, 0x11, 0xe2, 0x42, 0x35, 0x37, 0x5a, 0x69, 0xda, 0x21, 0xa9, 0xae, 0x4c, 0x64, 0x77, 0x38, 0xb7, 0xe5, 0xc5, 0x29, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_2292 = { .name = "ecdh_secp521r1_2292", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2292_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2292_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2292_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 43 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2293 for ECDH, tcId is 44 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2293_peerpubkey[] = { 0x00, 0x96, 0x06, 0x8a, 0x51, 0x2e, 0x31, 0x7e, 0xc6, 0x35, 0x88, 0xff, 0x28, 0xd3, 0x80, 0xa8, 0xd7, 0xc9, 0x1e, 0x3a, 0x59, 0x27, 0x9c, 0x85, 0xf5, 0x41, 0x6e, 0x8e, 0xd3, 0x21, 0x74, 0x7b, 0x05, 0xd5, 0x37, 0xd1, 0x9d, 0x79, 0x73, 0x64, 0xaf, 0xce, 0x0e, 0x54, 0x8b, 0xfb, 0x75, 0x8e, 0x33, 0xcc, 0x6d, 0x75, 0x1b, 0x5c, 0x21, 0x79, 0x72, 0xde, 0x2e, 0xc4, 0xff, 0x00, 0x0c, 0xc1, 0x5d, 0xee, 0x00, 0x85, 0xaf, 0xf0, 0xf0, 0x25, 0x2a, 0xb4, 0x6f, 0xf8, 0x0d, 0x84, 0x9e, 0x14, 0x94, 0x3d, 0xe8, 0x14, 0x5d, 0xbb, 0x30, 0x7b, 0x4b, 0xc4, 0x5c, 0x9e, 0xed, 0xe7, 0x8c, 0x04, 0x0a, 0x08, 0x36, 0xd8, 0x04, 0x06, 0x77, 0x0c, 0x7c, 0x94, 0x59, 0xc0, 0x65, 0xc5, 0x33, 0x67, 0xe6, 0x83, 0x12, 0x8e, 0x8f, 0xc1, 0xdd, 0x89, 0x19, 0x0e, 0x74, 0x78, 0x93, 0xd9, 0xf2, 0x7e, 0x49, 0x61, 0x0b, 0xfb, }; static const unsigned char ecdh_secp521r1_2293_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2293_sharedsecret[] = { 0x01, 0xf5, 0x67, 0xd0, 0x11, 0x52, 0xc9, 0x06, 0x44, 0xbe, 0x34, 0xfc, 0x7f, 0x4d, 0xcd, 0xac, 0xda, 0x02, 0xe1, 0xe1, 0x4d, 0x80, 0xcd, 0xb3, 0x77, 0x61, 0x1a, 0x8c, 0x9a, 0x7a, 0x4d, 0x0f, 0xa5, 0x41, 0x3b, 0x9d, 0x41, 0x54, 0x10, 0xc9, 0xac, 0x6f, 0xf1, 0x46, 0x7c, 0xf3, 0x72, 0x35, 0xe5, 0x88, 0xd1, 0x14, 0xa5, 0x4e, 0x6f, 0x9e, 0x0a, 0x65, 0xb6, 0xd0, 0x2c, 0xdb, 0x82, 0x88, 0x98, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_2293 = { .name = "ecdh_secp521r1_2293", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2293_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2293_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2293_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 44 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2294 for ECDH, tcId is 45 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2294_peerpubkey[] = { 0x01, 0xbf, 0xd8, 0xc3, 0xe3, 0x46, 0xef, 0x88, 0x4b, 0x4b, 0x1c, 0x01, 0xfd, 0x27, 0x3e, 0x98, 0x2f, 0xed, 0x38, 0xb5, 0xc8, 0x04, 0x61, 0x65, 0xcc, 0x1e, 0x0d, 0xe8, 0x76, 0x78, 0x76, 0x90, 0xc1, 0x9c, 0x4e, 0xc2, 0x46, 0x06, 0xbc, 0x8e, 0x1e, 0xd8, 0x3a, 0x4c, 0xe1, 0x0b, 0x7a, 0x42, 0xe6, 0xdb, 0x19, 0xc7, 0xaa, 0x5e, 0x99, 0x71, 0x65, 0x4e, 0x57, 0x84, 0x2d, 0x41, 0xe7, 0x09, 0x85, 0xa3, 0x00, 0xb3, 0x57, 0x35, 0x14, 0x99, 0x60, 0x05, 0x60, 0xba, 0xfa, 0xa2, 0x5e, 0x24, 0x3a, 0xff, 0x7b, 0x33, 0x60, 0x2c, 0xf4, 0x1d, 0x35, 0x18, 0x49, 0x9e, 0x1b, 0x43, 0xba, 0x1e, 0x81, 0x4a, 0x0b, 0x45, 0xec, 0x01, 0xfe, 0x69, 0x47, 0x89, 0xe0, 0x15, 0x7a, 0x3c, 0x28, 0x1d, 0x17, 0xfa, 0x00, 0xe7, 0x01, 0x9f, 0x47, 0xae, 0x7a, 0x10, 0xce, 0x40, 0xed, 0x0c, 0xb7, 0xca, 0x56, 0xb4, 0x1e, 0x26, }; static const unsigned char ecdh_secp521r1_2294_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2294_sharedsecret[] = { 0x01, 0x81, 0x9c, 0xd3, 0xa3, 0xb3, 0x68, 0x83, 0xc4, 0x80, 0xc2, 0x70, 0xdb, 0x13, 0x9a, 0x94, 0xd7, 0xf9, 0x4a, 0xfd, 0x88, 0x79, 0xb3, 0x4e, 0xf6, 0x5a, 0x30, 0x4d, 0x0b, 0x9a, 0x62, 0x01, 0xa1, 0xdb, 0xcf, 0xcb, 0x8e, 0xe5, 0xc4, 0xe6, 0x66, 0x98, 0xd9, 0x8d, 0xd0, 0xe8, 0xbd, 0xd5, 0x3e, 0x56, 0x36, 0x28, 0xb1, 0x5a, 0xfe, 0x05, 0xf4, 0x82, 0x30, 0xfa, 0x1c, 0x52, 0x95, 0x2d, 0x89, 0x89, }; static const wycheproof_ecdh_test ecdh_secp521r1_2294 = { .name = "ecdh_secp521r1_2294", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2294_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2294_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2294_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 45 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2295 for ECDH, tcId is 46 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2295_peerpubkey[] = { 0x00, 0x0c, 0xc8, 0xc8, 0x4d, 0x1d, 0xb7, 0x1f, 0xb9, 0x15, 0x95, 0xf0, 0x07, 0x03, 0xdf, 0x25, 0x7f, 0x2a, 0x03, 0x05, 0x78, 0x47, 0xb4, 0xb9, 0x50, 0x6d, 0x3b, 0x26, 0x15, 0xa8, 0xb7, 0x24, 0x06, 0x2d, 0x93, 0xa6, 0x29, 0x54, 0x21, 0x9d, 0xf9, 0xec, 0x98, 0x62, 0x61, 0xfb, 0x77, 0x08, 0xea, 0xa1, 0x39, 0x54, 0x18, 0x2e, 0x10, 0x5e, 0x8e, 0x93, 0xc1, 0x11, 0xc0, 0xd2, 0xa8, 0xbd, 0xc5, 0x1d, 0x00, 0xe2, 0x0c, 0xc6, 0x48, 0x8c, 0x77, 0x61, 0xf3, 0x1a, 0x3e, 0x76, 0x26, 0x98, 0x55, 0x3e, 0x5f, 0x2b, 0xf4, 0x9b, 0x41, 0xa3, 0xa9, 0x5a, 0xc5, 0xb4, 0x82, 0x3c, 0x29, 0x75, 0x9c, 0x73, 0x81, 0x51, 0xc3, 0x01, 0x9c, 0xe9, 0xd3, 0xd9, 0xee, 0x74, 0x11, 0xa4, 0x10, 0x6d, 0x58, 0x10, 0xc8, 0xb8, 0xaa, 0xfd, 0x37, 0xf5, 0x44, 0xf1, 0xca, 0xf3, 0x7f, 0x6f, 0x5f, 0xad, 0x59, 0x2e, 0x59, 0xbd, }; static const unsigned char ecdh_secp521r1_2295_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2295_sharedsecret[] = { 0x00, 0x80, 0x85, 0x9c, 0x07, 0xca, 0xe1, 0x91, 0x1b, 0x75, 0x39, 0x64, 0xee, 0x17, 0x5c, 0x88, 0x84, 0xbd, 0x19, 0xab, 0xad, 0x66, 0x6e, 0x2e, 0x47, 0x2e, 0xd6, 0x32, 0x9e, 0x71, 0xf9, 0x51, 0x53, 0x42, 0x27, 0xb2, 0x74, 0x28, 0x05, 0xc6, 0xe6, 0x31, 0x0f, 0x6e, 0xa3, 0x23, 0x0b, 0xd4, 0x03, 0xc2, 0x26, 0x0e, 0x97, 0xb0, 0xd7, 0xf1, 0x27, 0x40, 0x27, 0xf7, 0xe6, 0x9f, 0xc7, 0xb8, 0x12, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_2295 = { .name = "ecdh_secp521r1_2295", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2295_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2295_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2295_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 46 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2296 for ECDH, tcId is 47 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2296_peerpubkey[] = { 0x00, 0x54, 0x94, 0x02, 0x37, 0x09, 0xee, 0x6a, 0xe3, 0x9d, 0x0c, 0x5b, 0x67, 0xd9, 0x59, 0xf5, 0xf8, 0xcb, 0xd1, 0xbe, 0xa9, 0x64, 0x42, 0x93, 0x3a, 0x89, 0x29, 0xe3, 0x32, 0xb7, 0x04, 0xf7, 0x14, 0x6e, 0xcc, 0x68, 0x9b, 0x7f, 0xdb, 0x85, 0xc8, 0x3f, 0x3a, 0x60, 0x84, 0x6e, 0x69, 0x2d, 0xde, 0x0c, 0x27, 0x48, 0xcd, 0x7b, 0xec, 0xbb, 0x0d, 0x6b, 0x4c, 0x7c, 0x0c, 0x0f, 0x79, 0x3f, 0x3a, 0xde, 0x01, 0xa7, 0x7d, 0x75, 0xc2, 0x60, 0x06, 0x87, 0x24, 0x18, 0x43, 0xe2, 0xeb, 0x6a, 0xc8, 0x1a, 0xb1, 0x9d, 0x0f, 0x8a, 0x97, 0x47, 0x98, 0x8c, 0x03, 0xf2, 0xc7, 0x70, 0x59, 0x3d, 0xfa, 0x48, 0x04, 0x8f, 0x28, 0x16, 0xe3, 0x85, 0x6c, 0x5f, 0x11, 0xce, 0x3c, 0xdc, 0xca, 0x3a, 0xe0, 0xe1, 0xf1, 0x37, 0x18, 0xc2, 0xc5, 0xdb, 0x2c, 0x1c, 0x85, 0x9f, 0x7c, 0xae, 0xff, 0xff, 0xdf, 0xd6, 0x29, 0xfc, }; static const unsigned char ecdh_secp521r1_2296_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2296_sharedsecret[] = { 0x00, 0x9d, 0x53, 0x2a, 0xf8, 0xd9, 0x9d, 0xfc, 0x0c, 0xe9, 0x3e, 0x2b, 0x63, 0x30, 0x5b, 0x1f, 0x05, 0x5c, 0x42, 0xaf, 0xff, 0x3f, 0xa9, 0x01, 0x11, 0xb0, 0x71, 0x34, 0x1c, 0xca, 0xd4, 0x5b, 0xa6, 0x3a, 0xd9, 0xed, 0x3a, 0x14, 0x1e, 0x95, 0xc0, 0xcd, 0x0d, 0x70, 0xe7, 0x8a, 0x7e, 0xbd, 0x82, 0xc2, 0x2e, 0x68, 0xfa, 0xc4, 0x6a, 0xa5, 0xc9, 0x33, 0x5a, 0x95, 0x56, 0x31, 0xf9, 0xb7, 0xc6, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2296 = { .name = "ecdh_secp521r1_2296", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2296_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2296_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2296_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 47 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2297 for ECDH, tcId is 48 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2297_peerpubkey[] = { 0x00, 0x91, 0x28, 0x09, 0xb7, 0x3f, 0x50, 0x47, 0x5a, 0x3b, 0x97, 0xe9, 0x60, 0x2b, 0x75, 0x7e, 0xb2, 0xe9, 0x4f, 0xd2, 0x45, 0xe4, 0x83, 0x04, 0x0e, 0x16, 0x7b, 0x83, 0x38, 0x40, 0xa6, 0x2d, 0xf2, 0x79, 0x12, 0xa9, 0xc2, 0xe0, 0x31, 0x7d, 0xbf, 0xe5, 0x8d, 0xc4, 0x3b, 0xa2, 0x05, 0x3d, 0xee, 0xde, 0x5e, 0xca, 0x2b, 0x22, 0xbd, 0x06, 0x79, 0x20, 0x01, 0xdb, 0xca, 0xa7, 0xea, 0x6b, 0x70, 0x00, 0x00, 0x43, 0x8e, 0x5b, 0xb8, 0x4f, 0x3e, 0xf7, 0x86, 0x51, 0x52, 0xb2, 0x31, 0x7d, 0x8d, 0xf0, 0xc6, 0x91, 0xc3, 0xd2, 0xbe, 0xd2, 0x46, 0x7d, 0x5e, 0x75, 0x07, 0x26, 0x8a, 0x7b, 0xa9, 0x8c, 0xab, 0x4e, 0x46, 0x08, 0xce, 0xa0, 0xf5, 0xfb, 0xf5, 0x0f, 0xd0, 0xa4, 0x87, 0xd0, 0x05, 0xb3, 0x81, 0x90, 0x5c, 0x95, 0xaa, 0xf6, 0xa1, 0x8c, 0xd1, 0xa2, 0xdb, 0xd6, 0x74, 0x2b, 0x5b, 0x05, 0xba, 0x71, }; static const unsigned char ecdh_secp521r1_2297_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2297_sharedsecret[] = { 0x00, 0x1b, 0x01, 0x8f, 0xec, 0xf2, 0xc0, 0x78, 0x11, 0xa5, 0x4b, 0x43, 0xa0, 0xb2, 0x84, 0xc9, 0x96, 0xee, 0xcc, 0x77, 0x42, 0x21, 0x02, 0x69, 0x37, 0x3c, 0x39, 0xdb, 0xa2, 0x99, 0xd1, 0xab, 0x91, 0xc7, 0x78, 0xb0, 0xdf, 0x40, 0xaa, 0xa5, 0x25, 0x30, 0x76, 0x66, 0x50, 0xff, 0x11, 0x78, 0xde, 0x05, 0xb6, 0x9c, 0x3b, 0xc4, 0x6b, 0x29, 0xd1, 0xaf, 0x19, 0x34, 0x33, 0xfa, 0x12, 0x5e, 0xb9, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2297 = { .name = "ecdh_secp521r1_2297", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2297_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2297_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2297_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 48 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2298 for ECDH, tcId is 49 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2298_peerpubkey[] = { 0x00, 0x43, 0xcf, 0xe2, 0xc3, 0x0d, 0x3f, 0x9f, 0x0f, 0xf9, 0x6e, 0x0e, 0x37, 0xf6, 0x1e, 0xb2, 0xde, 0xa3, 0x81, 0x69, 0x99, 0xc9, 0x1c, 0x5b, 0x77, 0x95, 0x7e, 0xf9, 0x2b, 0x0e, 0xcd, 0xe0, 0x92, 0xc7, 0x50, 0x4b, 0xa5, 0x74, 0x06, 0xea, 0xdd, 0x74, 0x43, 0x81, 0x90, 0x63, 0x37, 0xcd, 0x13, 0xae, 0x45, 0x55, 0xe5, 0x0a, 0x9e, 0xb2, 0x57, 0x16, 0x8c, 0x21, 0x40, 0xe8, 0x28, 0xa4, 0x6a, 0xd3, 0x00, 0x05, 0xc1, 0x29, 0xfa, 0x97, 0x25, 0xa8, 0x2d, 0x3e, 0x6d, 0xa7, 0x21, 0xec, 0x0d, 0x14, 0x12, 0xff, 0x6d, 0x6a, 0x2d, 0x8f, 0x75, 0xbf, 0xc7, 0xb2, 0xb6, 0xaa, 0xdc, 0x5f, 0xad, 0x86, 0xfc, 0x1a, 0x8a, 0x67, 0xcd, 0x7e, 0x6b, 0x7a, 0xab, 0x42, 0xa5, 0x46, 0x17, 0x9c, 0x6e, 0x05, 0x60, 0x55, 0x4d, 0xb5, 0xf6, 0x13, 0x8a, 0x7e, 0xf2, 0xdc, 0x79, 0xd2, 0xbe, 0x38, 0x53, 0x56, 0xc9, 0xea, }; static const unsigned char ecdh_secp521r1_2298_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2298_sharedsecret[] = { 0x00, 0x14, 0x50, 0xd8, 0x40, 0x2f, 0x26, 0x9d, 0xfb, 0x63, 0x64, 0x99, 0xf1, 0x64, 0x54, 0x45, 0x10, 0x6c, 0x3d, 0x95, 0xf9, 0x30, 0x80, 0xc9, 0x94, 0x72, 0x6d, 0xb7, 0xe4, 0x3f, 0xb6, 0x84, 0x88, 0xf7, 0x43, 0x0f, 0x6d, 0x17, 0x15, 0x43, 0xa1, 0x27, 0x03, 0x8c, 0x93, 0x02, 0x64, 0xe6, 0x0d, 0xbf, 0x0f, 0x48, 0xd3, 0x32, 0xaf, 0x21, 0x0e, 0xcd, 0x32, 0x32, 0x0b, 0x1c, 0xb9, 0x0a, 0xcf, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_2298 = { .name = "ecdh_secp521r1_2298", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2298_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2298_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2298_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 49 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2299 for ECDH, tcId is 50 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2299_peerpubkey[] = { 0x01, 0x2e, 0xda, 0x90, 0x20, 0xc6, 0x65, 0xae, 0x69, 0xa5, 0x06, 0xac, 0x6b, 0x32, 0x87, 0x46, 0x5e, 0x0f, 0xc0, 0x13, 0x7b, 0x21, 0x07, 0x5c, 0xfb, 0x6c, 0x69, 0x96, 0x3d, 0x9a, 0xcb, 0x39, 0xa2, 0x6c, 0xa9, 0x40, 0xc3, 0xa3, 0x9e, 0x0d, 0x94, 0xc0, 0x54, 0x67, 0x2f, 0xfc, 0x17, 0x61, 0xe5, 0x6d, 0xed, 0x3c, 0x18, 0x0f, 0x00, 0x68, 0x57, 0xd1, 0x31, 0xdc, 0x34, 0xa5, 0xac, 0xe7, 0xfd, 0x50, 0x01, 0x70, 0x9e, 0x8a, 0x2c, 0xd9, 0x9e, 0x1e, 0x20, 0x16, 0xc2, 0x4f, 0x1c, 0x54, 0x85, 0xe3, 0xc4, 0x79, 0x47, 0xbc, 0xc6, 0xef, 0xbe, 0xbd, 0x22, 0x11, 0xc0, 0xd5, 0x29, 0xa8, 0x3d, 0x09, 0x7a, 0xc6, 0x11, 0xaa, 0x50, 0xd7, 0x87, 0x99, 0x79, 0xf4, 0xbe, 0x2d, 0x9c, 0xec, 0xc1, 0x63, 0x60, 0xfe, 0x4b, 0x94, 0x9e, 0xa9, 0x97, 0x0f, 0x10, 0x75, 0xcb, 0xf9, 0x57, 0xf0, 0x31, 0xcc, 0xfd, 0xb2, }; static const unsigned char ecdh_secp521r1_2299_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2299_sharedsecret[] = { 0x00, 0x78, 0x46, 0xa2, 0x0b, 0x43, 0xa4, 0x98, 0x27, 0x79, 0x04, 0x68, 0x6f, 0x37, 0x66, 0xb9, 0xa3, 0xad, 0x99, 0x4d, 0xc6, 0x13, 0x29, 0xdb, 0x3a, 0xe9, 0xd9, 0x76, 0x18, 0xb8, 0x13, 0x0c, 0x2b, 0xbe, 0xce, 0x0d, 0xa7, 0xe2, 0xc7, 0x9d, 0xbd, 0x0e, 0x1d, 0xc8, 0x30, 0x3a, 0xe5, 0xf9, 0x90, 0x3d, 0x97, 0x15, 0x7d, 0x0a, 0x74, 0xdb, 0x7f, 0x46, 0x5a, 0xbe, 0x99, 0x65, 0xcf, 0xa8, 0x3e, 0xee, }; static const wycheproof_ecdh_test ecdh_secp521r1_2299 = { .name = "ecdh_secp521r1_2299", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2299_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2299_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2299_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 50 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2300 for ECDH, tcId is 51 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2300_peerpubkey[] = { 0x00, 0x08, 0x4b, 0xa1, 0xcb, 0x8f, 0x33, 0xcf, 0xba, 0x89, 0xd1, 0xc1, 0x4e, 0xd2, 0xb5, 0x0d, 0xa7, 0x37, 0xa0, 0x5a, 0xe0, 0xa4, 0xca, 0x35, 0xfe, 0xde, 0x3b, 0x26, 0x32, 0x4d, 0x3b, 0xe7, 0x4f, 0x5e, 0x33, 0x20, 0xa9, 0x0b, 0xf3, 0x88, 0xbc, 0xf8, 0xbb, 0xcc, 0x4c, 0x3c, 0x1c, 0x88, 0xed, 0x52, 0x10, 0x3c, 0xc7, 0xc5, 0xca, 0x2b, 0x59, 0xcc, 0xd3, 0xe7, 0xdf, 0xab, 0x6d, 0x2f, 0x4b, 0xdc, 0x01, 0xa3, 0xf1, 0x75, 0xc3, 0xc8, 0xa8, 0x9d, 0x4f, 0xda, 0x95, 0xd4, 0x7b, 0x2d, 0x4f, 0x30, 0x47, 0xae, 0xbc, 0x75, 0xca, 0x7e, 0xa4, 0x16, 0xed, 0x76, 0xd8, 0xe6, 0x89, 0xd7, 0xeb, 0xe7, 0xe9, 0x77, 0x73, 0x7b, 0xc6, 0xef, 0xf9, 0x73, 0x3e, 0x6a, 0x6c, 0x05, 0x93, 0x48, 0x6e, 0x62, 0x83, 0x4f, 0xf4, 0x61, 0x21, 0xb7, 0x2f, 0xde, 0x5b, 0x33, 0x59, 0xfa, 0x70, 0x7f, 0xba, 0x6d, 0x67, 0xcc, }; static const unsigned char ecdh_secp521r1_2300_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2300_sharedsecret[] = { 0x01, 0x8e, 0x64, 0x5f, 0xbe, 0xdd, 0x9f, 0x12, 0xd4, 0x47, 0x4d, 0xb1, 0x20, 0x6a, 0xa6, 0x70, 0x57, 0xe0, 0x8d, 0xf5, 0x67, 0xc1, 0xee, 0xcb, 0xda, 0x39, 0x5e, 0xdb, 0x20, 0x49, 0xf7, 0x70, 0x90, 0x8e, 0x35, 0x15, 0xcc, 0xe7, 0x79, 0xe3, 0x71, 0x69, 0xeb, 0xc0, 0x26, 0xeb, 0x5c, 0x35, 0x30, 0x40, 0x05, 0x8d, 0xa8, 0x5f, 0xba, 0xbd, 0x67, 0x4c, 0x8d, 0x52, 0xa7, 0x8a, 0x39, 0x72, 0x31, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_2300 = { .name = "ecdh_secp521r1_2300", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2300_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2300_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2300_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 51 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2301 for ECDH, tcId is 52 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2301_peerpubkey[] = { 0x01, 0xea, 0x36, 0xce, 0x4e, 0x51, 0xbb, 0xb3, 0x33, 0xea, 0x94, 0x2a, 0x53, 0x25, 0xe1, 0x41, 0x08, 0x96, 0xe7, 0x36, 0x52, 0xc2, 0x83, 0x3b, 0x46, 0x22, 0x62, 0xda, 0x5d, 0x79, 0x1b, 0x18, 0x35, 0x53, 0x8b, 0x06, 0xcd, 0x9d, 0x7b, 0x97, 0x41, 0xf3, 0x41, 0x4d, 0x52, 0x0d, 0xa8, 0x7f, 0x8b, 0xe0, 0xbe, 0x21, 0x80, 0x43, 0xb0, 0x5c, 0xad, 0x61, 0xb9, 0x3b, 0x0b, 0xc0, 0x48, 0x4e, 0x0b, 0x28, 0x01, 0xec, 0xe2, 0x8d, 0xf4, 0xd9, 0xca, 0x3f, 0xfb, 0x23, 0xd6, 0x9c, 0x36, 0x96, 0x6c, 0xc2, 0x6b, 0x49, 0x2f, 0x70, 0x10, 0xdf, 0xac, 0xa6, 0x7b, 0x4b, 0xde, 0xd7, 0x1c, 0xf7, 0x4c, 0x2b, 0x0a, 0x86, 0xe6, 0x1b, 0xc7, 0x79, 0x03, 0x39, 0x7e, 0xb8, 0xa4, 0x36, 0x23, 0x79, 0xf0, 0x94, 0x92, 0xaa, 0x63, 0xd9, 0xc9, 0xf5, 0xff, 0x30, 0xd1, 0x05, 0xb5, 0x30, 0xc0, 0x1f, 0x46, 0xcd, 0x7c, 0xdc, }; static const unsigned char ecdh_secp521r1_2301_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2301_sharedsecret[] = { 0x01, 0x91, 0x2a, 0xa1, 0x77, 0xea, 0x8f, 0x88, 0x78, 0x44, 0x7b, 0x4a, 0x19, 0xda, 0x17, 0xd4, 0x82, 0x35, 0x7a, 0x27, 0x2d, 0xea, 0x19, 0xb5, 0x42, 0x39, 0x8a, 0x6b, 0xb4, 0x8b, 0x80, 0x59, 0x87, 0x54, 0xae, 0x27, 0xc7, 0x39, 0x58, 0x04, 0x6a, 0xaa, 0x1c, 0x69, 0x95, 0x13, 0x02, 0x72, 0x7d, 0xdd, 0xaa, 0xf9, 0x66, 0xf0, 0x3f, 0xf5, 0xb7, 0x23, 0xac, 0xb7, 0xdb, 0x7f, 0xcc, 0xf3, 0xa6, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp521r1_2301 = { .name = "ecdh_secp521r1_2301", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2301_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2301_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2301_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 52 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2302 for ECDH, tcId is 53 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2302_peerpubkey[] = { 0x00, 0x9c, 0x96, 0x02, 0x4f, 0xac, 0x77, 0xe6, 0x4b, 0x84, 0x6f, 0x14, 0x1c, 0xd1, 0x01, 0x1f, 0x2a, 0xd5, 0x2e, 0x3a, 0xa5, 0x51, 0x10, 0x3b, 0x96, 0xe3, 0x5b, 0x43, 0x9c, 0xf8, 0x9c, 0x03, 0x04, 0x29, 0x3f, 0x1b, 0xfb, 0x52, 0x2f, 0x98, 0x1f, 0xbb, 0x56, 0x92, 0x1d, 0xb8, 0x71, 0x51, 0xe7, 0x97, 0xd0, 0x7f, 0x11, 0x27, 0xa0, 0x1c, 0x3f, 0x3d, 0xe5, 0x6d, 0xd4, 0x99, 0x65, 0x6c, 0x10, 0x3b, 0x01, 0x77, 0xb6, 0x7f, 0xb2, 0x67, 0x8b, 0x72, 0x0d, 0x08, 0xed, 0x05, 0xa5, 0xc0, 0x6b, 0xcf, 0x88, 0x13, 0x42, 0x01, 0xc1, 0x92, 0x99, 0x7f, 0xc6, 0xdc, 0x15, 0xf8, 0x20, 0xb6, 0x0b, 0xcc, 0x0f, 0x77, 0x7d, 0x06, 0x61, 0xbd, 0x8f, 0x81, 0xcf, 0xed, 0x59, 0xde, 0xec, 0x33, 0xcd, 0x69, 0x6e, 0x1c, 0x1e, 0xf7, 0x2c, 0x76, 0x66, 0xcd, 0x5a, 0xed, 0x49, 0xeb, 0x32, 0x57, 0x14, 0x73, 0x9b, 0xed, }; static const unsigned char ecdh_secp521r1_2302_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2302_sharedsecret[] = { 0x00, 0x6a, 0x5b, 0x0c, 0x09, 0xa7, 0xbd, 0xef, 0x31, 0x6d, 0x25, 0xf3, 0x95, 0x79, 0x27, 0x9e, 0x28, 0x6b, 0x78, 0x1c, 0x2e, 0x43, 0x0f, 0x20, 0x1c, 0x54, 0xcf, 0xc9, 0xe1, 0x54, 0xa3, 0x8e, 0xc3, 0x1e, 0xee, 0x9d, 0x09, 0xf6, 0xd5, 0xae, 0xd4, 0x50, 0x56, 0xc5, 0xb7, 0xbb, 0x44, 0x21, 0x3c, 0x63, 0x57, 0xc7, 0x49, 0x2d, 0x1f, 0xd9, 0xb1, 0xc7, 0xdb, 0xa1, 0x16, 0xfa, 0x51, 0xd2, 0x1c, 0xfa, }; static const wycheproof_ecdh_test ecdh_secp521r1_2302 = { .name = "ecdh_secp521r1_2302", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2302_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2302_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2302_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 53 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2303 for ECDH, tcId is 54 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2303_peerpubkey[] = { 0x00, 0x8d, 0x4d, 0x67, 0x7a, 0xaa, 0xef, 0x39, 0x25, 0xa1, 0xd4, 0x1f, 0xce, 0x4d, 0x30, 0x54, 0x3a, 0x1f, 0xa3, 0x3a, 0x2b, 0x30, 0x51, 0xb3, 0x67, 0xcf, 0xdf, 0x1b, 0x8d, 0xa7, 0xcd, 0x1a, 0xb6, 0x7c, 0xe9, 0xbb, 0x25, 0x5e, 0x60, 0x47, 0x56, 0x84, 0x44, 0x3c, 0xf1, 0x9e, 0xa2, 0xe1, 0xf0, 0x1e, 0x58, 0xfd, 0x79, 0xf4, 0x77, 0x25, 0x66, 0x1b, 0xe2, 0x08, 0x76, 0x7c, 0xb2, 0xa1, 0x75, 0x30, 0x01, 0x0b, 0xe1, 0x75, 0xe2, 0x4d, 0x3b, 0xbf, 0x27, 0xdc, 0xad, 0x25, 0x96, 0xb8, 0x09, 0x0c, 0x7f, 0x2e, 0x00, 0x59, 0x01, 0x03, 0x86, 0x57, 0x28, 0x4a, 0x80, 0xff, 0x77, 0xd3, 0x89, 0x4a, 0x29, 0xee, 0x2d, 0x7d, 0xaa, 0x58, 0x80, 0xb3, 0xba, 0x05, 0x22, 0x61, 0xe4, 0x79, 0x6f, 0x13, 0x2d, 0xb9, 0xe8, 0xa9, 0x78, 0x1f, 0xac, 0xb3, 0x2b, 0xd8, 0xa0, 0x9b, 0xab, 0xd9, 0xe0, 0xcb, 0xa9, 0x18, }; static const unsigned char ecdh_secp521r1_2303_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2303_sharedsecret[] = { 0x00, 0x65, 0x2f, 0xba, 0xa4, 0x11, 0xad, 0x31, 0x6d, 0xea, 0x40, 0xa3, 0x7d, 0x37, 0x98, 0xd0, 0xc0, 0x3c, 0xa7, 0xca, 0x59, 0x0d, 0x8e, 0xea, 0xee, 0x45, 0x4c, 0x7d, 0x24, 0xff, 0x1c, 0x4e, 0xc7, 0xdf, 0xfd, 0x5e, 0xf3, 0xe9, 0x07, 0x62, 0xd5, 0x53, 0x9c, 0x5a, 0x57, 0xe7, 0x45, 0xb9, 0xc0, 0xf8, 0x8e, 0x18, 0xff, 0xf6, 0xf7, 0x37, 0x72, 0x9e, 0x67, 0x60, 0x6d, 0xdf, 0xe3, 0xa7, 0x75, 0x19, }; static const wycheproof_ecdh_test ecdh_secp521r1_2303 = { .name = "ecdh_secp521r1_2303", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2303_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2303_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2303_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 54 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2304 for ECDH, tcId is 55 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2304_peerpubkey[] = { 0x00, 0x9b, 0x76, 0xbf, 0xa3, 0x96, 0xb3, 0x70, 0x63, 0x81, 0x55, 0x2a, 0xd0, 0x8f, 0xb3, 0xb9, 0xf9, 0x2b, 0x49, 0x2c, 0x43, 0xd6, 0x10, 0x2b, 0x7c, 0x02, 0xcc, 0xa4, 0x01, 0x77, 0x18, 0xe0, 0x64, 0x34, 0x78, 0xc0, 0xd7, 0x37, 0x65, 0xc2, 0x79, 0x58, 0x13, 0x8c, 0x7f, 0x6d, 0x23, 0xb4, 0xe8, 0x3b, 0xaa, 0xf2, 0x7e, 0xaf, 0x21, 0x7e, 0xd5, 0x65, 0xe6, 0x60, 0x2b, 0x4d, 0x08, 0x02, 0x00, 0xb1, 0x01, 0x7b, 0xa7, 0xae, 0xfc, 0x45, 0x67, 0x7b, 0x8c, 0x4d, 0x4c, 0xa4, 0x68, 0xe8, 0xa9, 0xf5, 0xa2, 0xfc, 0x41, 0x1a, 0x4a, 0xf4, 0xff, 0x45, 0x93, 0xa9, 0xb7, 0x81, 0xf1, 0x35, 0x7a, 0xae, 0x46, 0x98, 0x86, 0x42, 0xa1, 0x25, 0x4d, 0x6c, 0xf5, 0x88, 0x70, 0x8e, 0xfe, 0x60, 0xb2, 0xdf, 0xab, 0x15, 0xd3, 0x71, 0xba, 0x4f, 0x4d, 0x9e, 0x09, 0xe6, 0x1f, 0x06, 0xd4, 0xd2, 0x43, 0xe5, 0xec, 0x57, }; static const unsigned char ecdh_secp521r1_2304_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2304_sharedsecret[] = { 0x00, 0xb1, 0xae, 0x05, 0xc2, 0xa9, 0x1f, 0x7e, 0x1e, 0x9d, 0x62, 0x6b, 0x1a, 0x46, 0xbe, 0xd2, 0x00, 0x9d, 0xd6, 0x66, 0x2e, 0x71, 0x24, 0x16, 0xe1, 0x9c, 0x1b, 0xe9, 0xe5, 0xe5, 0x12, 0xec, 0x73, 0x41, 0x27, 0xad, 0xaf, 0xe6, 0x12, 0x9a, 0x83, 0xd7, 0x4b, 0xa7, 0xa7, 0x97, 0xf4, 0x1a, 0xfc, 0x4b, 0x11, 0x45, 0xa1, 0x6f, 0x6e, 0x38, 0x91, 0x69, 0xc8, 0xb6, 0x59, 0x2b, 0xf6, 0x28, 0xf7, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_2304 = { .name = "ecdh_secp521r1_2304", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2304_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2304_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2304_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 55 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2305 for ECDH, tcId is 56 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2305_peerpubkey[] = { 0x01, 0x00, 0x89, 0x19, 0x0e, 0x9b, 0x63, 0xf5, 0xa2, 0x9e, 0x41, 0xb5, 0xa1, 0x83, 0x7d, 0x9b, 0xf4, 0x1c, 0x0b, 0x2c, 0xa1, 0x07, 0xd6, 0xd0, 0x88, 0xf4, 0xc1, 0xd4, 0x68, 0x77, 0x31, 0x50, 0xd7, 0xd1, 0x45, 0xcc, 0xe7, 0x0a, 0x24, 0x08, 0x27, 0x26, 0x83, 0x71, 0x14, 0x4e, 0x4a, 0xcd, 0xda, 0x79, 0xd0, 0x9a, 0x51, 0xb3, 0x1c, 0xa2, 0x0b, 0xac, 0x11, 0x97, 0xe6, 0x19, 0xd1, 0xa8, 0x4f, 0x4d, 0x01, 0x22, 0xc6, 0x38, 0xc0, 0x69, 0x12, 0x58, 0x65, 0x80, 0xc7, 0xa7, 0xde, 0xe4, 0x29, 0xb1, 0xba, 0x00, 0x0f, 0x62, 0x85, 0xb7, 0xfd, 0xa4, 0x41, 0x38, 0x8c, 0x32, 0x3c, 0x08, 0x95, 0xff, 0x90, 0x44, 0x3f, 0x06, 0x15, 0x01, 0x1c, 0xaa, 0x33, 0x26, 0x22, 0xe6, 0x7e, 0xde, 0x86, 0x7a, 0x8c, 0x44, 0x53, 0x35, 0x44, 0x4e, 0xa1, 0x12, 0xe8, 0x05, 0x32, 0xd5, 0xf6, 0xdf, 0x14, 0x08, 0xe7, 0x2b, }; static const unsigned char ecdh_secp521r1_2305_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2305_sharedsecret[] = { 0x00, 0x03, 0x7d, 0x3e, 0x43, 0x59, 0xc3, 0x26, 0xf7, 0x4a, 0x8c, 0xdc, 0xc4, 0xbb, 0x82, 0x09, 0x0e, 0x93, 0xbd, 0x48, 0x75, 0x7b, 0x6c, 0xaf, 0x74, 0x9f, 0xb3, 0x9a, 0x83, 0xf9, 0x92, 0xa7, 0xfa, 0x96, 0x76, 0xad, 0x46, 0x6c, 0x8d, 0x71, 0x93, 0x90, 0x22, 0x14, 0xda, 0xbc, 0xfc, 0x10, 0x4b, 0xc8, 0x66, 0x4e, 0xb9, 0x34, 0xa2, 0xdf, 0x64, 0x8b, 0x2e, 0x1f, 0x40, 0x1d, 0x74, 0x5e, 0x16, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2305 = { .name = "ecdh_secp521r1_2305", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2305_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2305_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2305_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 56 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2306 for ECDH, tcId is 57 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2306_peerpubkey[] = { 0x00, 0x70, 0x55, 0x05, 0x37, 0xe3, 0x85, 0xe4, 0x60, 0x14, 0x90, 0xac, 0x5a, 0x78, 0x34, 0x8e, 0xf2, 0x66, 0x78, 0xa4, 0xab, 0x3a, 0x74, 0x69, 0xf2, 0x99, 0xdc, 0x49, 0x3b, 0xd2, 0x97, 0x64, 0x16, 0xf6, 0x49, 0xee, 0x3e, 0x3c, 0xdd, 0x77, 0x19, 0x1d, 0x8f, 0x8f, 0x9d, 0x60, 0x0e, 0x8c, 0xb9, 0xfd, 0xe3, 0xaf, 0xe6, 0x35, 0xe2, 0x24, 0x63, 0x5b, 0x70, 0xfa, 0x79, 0xeb, 0x10, 0x53, 0x74, 0x4f, 0x00, 0x0a, 0x54, 0x69, 0x59, 0xae, 0x4a, 0xbc, 0xda, 0x82, 0x74, 0x29, 0xa4, 0x7a, 0x8c, 0xbc, 0x6a, 0xfe, 0x42, 0xfa, 0x0f, 0x83, 0x91, 0x29, 0x3d, 0xa7, 0x78, 0xbe, 0x29, 0x6c, 0x72, 0x2e, 0x02, 0xc7, 0xff, 0x55, 0xe2, 0x0c, 0x11, 0x95, 0x31, 0xd2, 0x11, 0x17, 0x3f, 0x02, 0xeb, 0x10, 0x8f, 0xe1, 0xb8, 0xbb, 0x10, 0xd4, 0x65, 0xc7, 0x15, 0x8d, 0xd3, 0xcb, 0x2d, 0x9f, 0x32, 0x0d, 0x17, 0x11, }; static const unsigned char ecdh_secp521r1_2306_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2306_sharedsecret[] = { 0x01, 0x8e, 0x22, 0xa6, 0x3d, 0xfe, 0xb1, 0x4f, 0x28, 0xd4, 0xf3, 0x38, 0xb7, 0x84, 0x55, 0x87, 0x78, 0x51, 0xe9, 0x5b, 0x34, 0x97, 0x96, 0x24, 0x5e, 0xff, 0xa8, 0x30, 0xe2, 0x9e, 0xa1, 0x97, 0x84, 0x99, 0xf0, 0x7a, 0xd9, 0x70, 0x4b, 0x35, 0x27, 0x46, 0xda, 0xc3, 0x0b, 0xfb, 0xb8, 0x27, 0xe1, 0xf0, 0x0b, 0x97, 0x9f, 0x64, 0x2b, 0xb8, 0x86, 0xf1, 0x56, 0xb5, 0x38, 0xac, 0x6b, 0xe9, 0x17, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_2306 = { .name = "ecdh_secp521r1_2306", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2306_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2306_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2306_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 57 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2307 for ECDH, tcId is 58 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2307_peerpubkey[] = { 0x00, 0x01, 0xb6, 0x69, 0x58, 0x93, 0x1e, 0xf3, 0x0c, 0x54, 0xf8, 0x31, 0x95, 0xcc, 0x40, 0x53, 0x0c, 0x0e, 0x44, 0xba, 0xa2, 0x23, 0xd2, 0x8d, 0x8b, 0xfa, 0xab, 0xf1, 0x0d, 0x16, 0x30, 0x2f, 0x3a, 0x19, 0x60, 0x1f, 0xb7, 0x4e, 0xfc, 0xbe, 0xfc, 0x1b, 0x71, 0xd1, 0xe8, 0x1a, 0xe4, 0xf6, 0x0b, 0x3f, 0x8d, 0x7c, 0x21, 0xde, 0x1d, 0xfa, 0xfd, 0x5c, 0xf1, 0x9c, 0x94, 0xb3, 0x96, 0x41, 0x0c, 0x39, 0x00, 0x8f, 0x13, 0xc4, 0x2f, 0xf4, 0x6d, 0x1a, 0x18, 0xf3, 0xd9, 0x75, 0xfd, 0xbc, 0x0b, 0xbb, 0x43, 0xc3, 0x1d, 0xa9, 0x42, 0x3f, 0xa9, 0x35, 0xf4, 0xc2, 0x11, 0x43, 0x55, 0x18, 0xa0, 0x14, 0x37, 0xbf, 0xae, 0xb6, 0xaa, 0xf0, 0x31, 0xf9, 0x2b, 0x0c, 0x37, 0xd7, 0x62, 0x90, 0xff, 0x68, 0x23, 0x78, 0xc2, 0x65, 0x1c, 0xd9, 0x75, 0xea, 0xc1, 0x92, 0xcd, 0x65, 0x82, 0xdb, 0xbe, 0xc0, 0x99, 0x74, }; static const unsigned char ecdh_secp521r1_2307_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2307_sharedsecret[] = { 0x00, 0x32, 0x28, 0x4e, 0xd3, 0xe1, 0x5d, 0x5e, 0x9d, 0xed, 0xa5, 0x3c, 0xea, 0xf5, 0xaf, 0xf2, 0x1c, 0x23, 0x0e, 0x60, 0x38, 0xe6, 0xd7, 0xe5, 0xca, 0xae, 0x2a, 0x71, 0x5a, 0x52, 0x88, 0xbc, 0xb8, 0x46, 0x9c, 0xe2, 0xbe, 0xfa, 0xaf, 0x3b, 0x41, 0x84, 0xea, 0xb3, 0x48, 0x69, 0x14, 0x40, 0x95, 0x66, 0x17, 0x88, 0xd3, 0xfd, 0xf4, 0x1a, 0xc6, 0x1e, 0xf1, 0x25, 0x68, 0x90, 0xdc, 0x7a, 0x0b, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_2307 = { .name = "ecdh_secp521r1_2307", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2307_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2307_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2307_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 58 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2308 for ECDH, tcId is 59 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2308_peerpubkey[] = { 0x00, 0x50, 0x57, 0x11, 0x67, 0xdc, 0x9f, 0x3b, 0x1f, 0x4a, 0xe3, 0x01, 0xdd, 0x1f, 0xac, 0x47, 0x00, 0x2d, 0x90, 0x13, 0x98, 0x82, 0x3f, 0x2e, 0x3d, 0xea, 0x43, 0x38, 0x28, 0x8d, 0xe8, 0xa8, 0xfb, 0x43, 0x2a, 0x68, 0x3b, 0xd5, 0x2b, 0xfa, 0x38, 0x07, 0x00, 0xb2, 0x7a, 0x90, 0x4a, 0xd6, 0x0a, 0x5a, 0x4d, 0x36, 0x39, 0x51, 0xff, 0xe7, 0x45, 0x40, 0xd5, 0x4d, 0xe8, 0xe7, 0xd4, 0x8e, 0xa1, 0x6c, 0x00, 0x85, 0xf6, 0xa7, 0xa7, 0x43, 0x96, 0x9a, 0xe2, 0x7e, 0x9a, 0x96, 0xbc, 0x60, 0x37, 0x03, 0x9a, 0x87, 0xd9, 0x7c, 0x69, 0x6a, 0xed, 0x99, 0xa3, 0x9f, 0x6e, 0x2d, 0x56, 0xac, 0xe5, 0x58, 0x07, 0x4d, 0x49, 0x54, 0x6e, 0x41, 0x7d, 0x79, 0x1a, 0xa5, 0xff, 0x04, 0x9c, 0x9d, 0x30, 0xc3, 0x05, 0x02, 0xf4, 0x00, 0x20, 0xae, 0x41, 0xe7, 0xa5, 0x12, 0x67, 0x1c, 0xdc, 0xc4, 0x9b, 0x60, 0x79, 0xb5, }; static const unsigned char ecdh_secp521r1_2308_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2308_sharedsecret[] = { 0x01, 0xdf, 0xb4, 0x6a, 0xfe, 0x0b, 0xf0, 0x64, 0xdf, 0xf0, 0xb4, 0x17, 0x7f, 0x7f, 0xd2, 0x7f, 0xa2, 0xee, 0x08, 0x32, 0xaf, 0x7c, 0xdc, 0x92, 0x1f, 0x66, 0xc0, 0xe5, 0xbe, 0x30, 0xc8, 0x06, 0x30, 0xc4, 0x1e, 0x09, 0x20, 0x2e, 0xa2, 0xf3, 0x70, 0xf5, 0xbb, 0xd0, 0x2e, 0xd2, 0x98, 0xb0, 0x88, 0x20, 0xce, 0x86, 0xe2, 0xcb, 0x72, 0x4a, 0x19, 0x62, 0xc6, 0xe7, 0xb1, 0x06, 0x2f, 0x50, 0x32, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp521r1_2308 = { .name = "ecdh_secp521r1_2308", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2308_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2308_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2308_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 59 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2309 for ECDH, tcId is 60 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2309_peerpubkey[] = { 0x01, 0x7e, 0x4f, 0x40, 0x2b, 0x1c, 0xe2, 0x09, 0xf6, 0x73, 0xdd, 0xf5, 0x0a, 0xe8, 0x7b, 0x9e, 0xf6, 0x1d, 0x81, 0x4d, 0x51, 0xe1, 0x4f, 0x43, 0xda, 0x3c, 0x23, 0xf4, 0x0f, 0xac, 0x42, 0x2f, 0x10, 0x58, 0xfd, 0x89, 0x30, 0xdf, 0xaf, 0x11, 0x71, 0x0c, 0x41, 0xa7, 0xf6, 0xb7, 0x92, 0x55, 0xe1, 0xc2, 0xcf, 0xba, 0xd6, 0x9d, 0x25, 0x7a, 0x0e, 0xcc, 0x10, 0x2f, 0x5e, 0x38, 0xe1, 0x40, 0x7f, 0x9d, 0x00, 0xe1, 0x0a, 0x67, 0xd1, 0x75, 0xb3, 0x99, 0xbf, 0x19, 0x41, 0xbd, 0x0f, 0xc1, 0x31, 0x27, 0xf7, 0xeb, 0x11, 0x2e, 0x1a, 0x86, 0x81, 0xac, 0xc2, 0xcf, 0xae, 0x0d, 0xc2, 0x95, 0x9e, 0x82, 0x37, 0x48, 0x81, 0x46, 0x28, 0x1c, 0xa3, 0xdf, 0x2b, 0x1e, 0x60, 0x56, 0xee, 0x93, 0x2f, 0xeb, 0x1a, 0xc6, 0xe6, 0xe9, 0xdf, 0x3f, 0x7a, 0x6e, 0xe6, 0x02, 0x15, 0x78, 0xa0, 0xff, 0xdb, 0x50, 0xec, 0xa2, }; static const unsigned char ecdh_secp521r1_2309_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2309_sharedsecret[] = { 0x00, 0x17, 0xb9, 0x9f, 0xab, 0x0e, 0xe0, 0xd7, 0xf9, 0x3f, 0x73, 0x09, 0xff, 0xdc, 0x91, 0x49, 0xba, 0x3c, 0xb6, 0x83, 0x04, 0x2f, 0xb3, 0xd0, 0x2b, 0xd5, 0x31, 0x9e, 0xb4, 0x26, 0x78, 0xac, 0x7a, 0xc7, 0xde, 0x21, 0x4e, 0x5c, 0x0f, 0x84, 0x73, 0x62, 0x7e, 0xf1, 0x51, 0x12, 0xc0, 0xd1, 0xa3, 0x19, 0x42, 0x84, 0xb6, 0xfc, 0xcc, 0xf5, 0x61, 0xd0, 0xd2, 0x52, 0xad, 0x25, 0xfc, 0xc9, 0x39, 0x53, }; static const wycheproof_ecdh_test ecdh_secp521r1_2309 = { .name = "ecdh_secp521r1_2309", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2309_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2309_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2309_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 60 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2310 for ECDH, tcId is 61 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2310_peerpubkey[] = { 0x00, 0x04, 0xcd, 0x97, 0xe1, 0x2d, 0x06, 0x2b, 0x74, 0x90, 0xbe, 0x45, 0xd8, 0x5e, 0x85, 0xbd, 0x40, 0x1c, 0x17, 0x91, 0xfb, 0xb4, 0x4e, 0x74, 0xa4, 0x54, 0x38, 0xa8, 0x31, 0x7c, 0x7e, 0xc9, 0xf0, 0x25, 0xb3, 0x4c, 0x59, 0x5b, 0x47, 0x69, 0xc7, 0xb3, 0x7f, 0x44, 0x29, 0x6b, 0x4b, 0x8f, 0x73, 0xd5, 0x64, 0x1d, 0xa2, 0x81, 0xfe, 0x35, 0x50, 0x8a, 0x23, 0xad, 0x50, 0x3d, 0xa9, 0x1e, 0xe7, 0xdb, 0x01, 0x7c, 0x4e, 0xd0, 0xd8, 0x4b, 0x40, 0x1d, 0xab, 0x74, 0x88, 0xda, 0x83, 0x9b, 0x20, 0xb5, 0x78, 0x09, 0xfe, 0x71, 0x27, 0xfa, 0x66, 0xef, 0x94, 0xdc, 0x02, 0x9e, 0x44, 0xb2, 0x50, 0x85, 0x7b, 0x30, 0x9a, 0x11, 0xc9, 0x1f, 0x73, 0x6a, 0x76, 0xf3, 0xc8, 0x9d, 0x9a, 0xde, 0xd9, 0x7f, 0x5b, 0x0b, 0xee, 0xc9, 0x3a, 0x7b, 0x6d, 0x78, 0x82, 0xe4, 0x28, 0xbe, 0xfc, 0xc2, 0x0d, 0x90, 0xdf, 0x15, }; static const unsigned char ecdh_secp521r1_2310_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2310_sharedsecret[] = { 0x01, 0xb6, 0x6a, 0x06, 0x5e, 0x62, 0xca, 0x0e, 0xa4, 0x9c, 0x25, 0xfe, 0x2a, 0x37, 0x79, 0x9b, 0x46, 0x86, 0x7e, 0x27, 0x4f, 0x8b, 0x85, 0x3a, 0x53, 0x4d, 0xd6, 0xcd, 0x1a, 0xd8, 0x1c, 0xc1, 0x3d, 0x27, 0xf2, 0x79, 0xd1, 0xee, 0x5b, 0xc2, 0xd9, 0x6d, 0x0b, 0x77, 0x01, 0xab, 0xb2, 0xd2, 0x13, 0xfa, 0x37, 0x83, 0x6b, 0xbc, 0xd2, 0xd1, 0xd8, 0x93, 0x7b, 0x6d, 0x20, 0xdc, 0xb3, 0x5b, 0x53, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_2310 = { .name = "ecdh_secp521r1_2310", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2310_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2310_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2310_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 61 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2311 for ECDH, tcId is 62 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2311_peerpubkey[] = { 0x01, 0xb2, 0x3c, 0x60, 0xee, 0xfd, 0xbd, 0xe0, 0x7c, 0xe9, 0x75, 0x1d, 0x9f, 0x99, 0x39, 0xbf, 0x75, 0x45, 0x8e, 0x6f, 0x2a, 0xf0, 0xaf, 0xa3, 0xd9, 0x0f, 0xa1, 0x76, 0x2d, 0x01, 0xa6, 0xd6, 0xe3, 0xfa, 0x40, 0x82, 0xc3, 0x7a, 0xd6, 0xbf, 0x03, 0xba, 0x8f, 0xf1, 0x79, 0x19, 0xe8, 0xb9, 0x62, 0x5b, 0x5a, 0x90, 0x9c, 0x92, 0x5d, 0x9f, 0xeb, 0x7c, 0x3e, 0xe1, 0x9a, 0x04, 0x25, 0x38, 0x5c, 0xea, 0x00, 0x0d, 0xf6, 0x84, 0x06, 0xc6, 0x74, 0xbe, 0x5e, 0x1f, 0x42, 0xd1, 0x4b, 0xf5, 0x0c, 0x19, 0x46, 0x0a, 0xee, 0xbd, 0xde, 0x37, 0x9a, 0xd3, 0x13, 0x0a, 0x33, 0x2e, 0x8f, 0xbe, 0xea, 0x15, 0x69, 0xd3, 0x14, 0xd5, 0x07, 0xb3, 0x7f, 0x1d, 0xcd, 0x28, 0x3b, 0x1c, 0x17, 0x15, 0x85, 0x2b, 0xd3, 0x9b, 0x81, 0xc4, 0xed, 0xca, 0xe0, 0xf2, 0xe1, 0xce, 0x53, 0x58, 0xc6, 0x59, 0x8b, 0x8c, 0x97, 0x0a, }; static const unsigned char ecdh_secp521r1_2311_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2311_sharedsecret[] = { 0x00, 0x59, 0xa3, 0x20, 0x50, 0x1b, 0xde, 0x6b, 0x9b, 0x26, 0x82, 0x36, 0xf9, 0x66, 0xac, 0x88, 0x1d, 0xed, 0xe9, 0x8c, 0xe6, 0x35, 0x6a, 0x7a, 0x90, 0x0a, 0x45, 0x2c, 0x59, 0xcb, 0xf8, 0xd8, 0xd2, 0x06, 0x30, 0x32, 0x16, 0x25, 0xc6, 0x89, 0xc7, 0x9d, 0xff, 0xff, 0xae, 0x7f, 0x87, 0x0a, 0x7f, 0xbf, 0x29, 0x86, 0x95, 0x89, 0x6c, 0xac, 0xdd, 0x2d, 0x0e, 0x13, 0xb7, 0x02, 0xf2, 0x2e, 0x7e, 0x43, }; static const wycheproof_ecdh_test ecdh_secp521r1_2311 = { .name = "ecdh_secp521r1_2311", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2311_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2311_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2311_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 62 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2312 for ECDH, tcId is 63 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2312_peerpubkey[] = { 0x00, 0x68, 0x36, 0x15, 0x44, 0x77, 0xdb, 0x9d, 0xb0, 0x3b, 0xb8, 0xa4, 0x04, 0xc5, 0x94, 0x2d, 0x32, 0xe1, 0xcd, 0xea, 0x20, 0x35, 0x4e, 0xda, 0x96, 0x93, 0xc3, 0x33, 0x39, 0x14, 0xb5, 0x19, 0x0c, 0x9d, 0x63, 0xa0, 0x43, 0x3a, 0x43, 0x06, 0x2b, 0x88, 0x60, 0xd5, 0xe5, 0x9c, 0x0f, 0x27, 0xac, 0x63, 0x30, 0x38, 0x49, 0x1d, 0x46, 0xb9, 0x1f, 0xc1, 0x1e, 0xce, 0xf8, 0x32, 0x6e, 0x75, 0xb5, 0x0e, 0x01, 0x41, 0x78, 0xe1, 0xbb, 0xf0, 0x84, 0x73, 0xee, 0x5b, 0xa8, 0x56, 0x85, 0x64, 0x16, 0xe6, 0x32, 0x6c, 0xaf, 0xe6, 0xf7, 0x42, 0x27, 0x76, 0x8e, 0x83, 0x5c, 0x25, 0xc5, 0x20, 0xba, 0xe0, 0x5d, 0x1d, 0x45, 0x1f, 0x63, 0x91, 0x58, 0xdc, 0xca, 0xa2, 0x93, 0x64, 0x2a, 0x57, 0x2a, 0xc7, 0x61, 0x2d, 0x60, 0xe9, 0x6d, 0xf4, 0xc6, 0x73, 0xab, 0x8f, 0x2a, 0x4e, 0xd8, 0x2e, 0x5e, 0x2a, 0xf3, 0x0b, }; static const unsigned char ecdh_secp521r1_2312_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2312_sharedsecret[] = { 0x00, 0x20, 0x4c, 0xcc, 0x53, 0x56, 0x21, 0x9b, 0xee, 0xf3, 0xb6, 0xd9, 0x0e, 0xa2, 0xef, 0x37, 0x85, 0xf7, 0x6f, 0x14, 0xaa, 0x3b, 0x84, 0xca, 0x04, 0xf6, 0xb2, 0xa5, 0xe9, 0x07, 0x00, 0x59, 0x64, 0x31, 0x54, 0x6e, 0x10, 0x4e, 0x77, 0x88, 0x30, 0x71, 0x47, 0x31, 0x2c, 0xa8, 0x90, 0x98, 0x4f, 0x76, 0xb5, 0x3c, 0x48, 0x9d, 0xe0, 0x4c, 0xc7, 0x28, 0xef, 0x00, 0x3d, 0x24, 0x6f, 0xdd, 0xb3, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_2312 = { .name = "ecdh_secp521r1_2312", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2312_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2312_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2312_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 63 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2313 for ECDH, tcId is 64 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2313_peerpubkey[] = { 0x01, 0x9c, 0x26, 0xd8, 0x15, 0xbb, 0xe9, 0x23, 0x58, 0xe1, 0xec, 0xd0, 0x21, 0x45, 0xa5, 0xf4, 0x5e, 0x1f, 0x8f, 0x46, 0xcb, 0x90, 0xba, 0xe1, 0x31, 0xee, 0x58, 0x9e, 0x51, 0xbb, 0x09, 0x3d, 0x84, 0x10, 0x20, 0x65, 0x85, 0xc0, 0x3e, 0xd7, 0xc5, 0xb3, 0x97, 0x54, 0x45, 0xba, 0x07, 0xfb, 0x7d, 0xd6, 0x68, 0xa8, 0xe5, 0x8c, 0x27, 0xe0, 0x1d, 0xd0, 0x0b, 0x08, 0xfe, 0x40, 0x9b, 0x44, 0x40, 0xe7, 0x00, 0x9f, 0xe8, 0x59, 0xe9, 0xd2, 0x2b, 0xb1, 0x65, 0x2e, 0x38, 0x4d, 0x5a, 0xe5, 0x79, 0xe4, 0x4a, 0x0f, 0x8c, 0x5c, 0x82, 0xe5, 0x9b, 0x46, 0x39, 0xd4, 0x2a, 0x9b, 0x27, 0xcb, 0x14, 0x05, 0x99, 0xc1, 0x23, 0x6e, 0x93, 0x23, 0x38, 0xdc, 0xe0, 0x3d, 0xe4, 0x6a, 0x60, 0xfb, 0xec, 0xe6, 0x1f, 0xd3, 0x4b, 0x8e, 0xce, 0x7d, 0xa9, 0x37, 0xb5, 0xcc, 0x1e, 0x3e, 0x7c, 0xeb, 0xcc, 0xe3, 0x39, 0xee, }; static const unsigned char ecdh_secp521r1_2313_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2313_sharedsecret[] = { 0x01, 0x7a, 0x82, 0x40, 0x3f, 0x78, 0xf8, 0xa5, 0x17, 0x29, 0xe8, 0xbc, 0x63, 0xc5, 0xde, 0x9b, 0x67, 0xc5, 0x72, 0xd4, 0x1f, 0x2a, 0xac, 0x28, 0xbd, 0xd9, 0x57, 0x92, 0xe6, 0x58, 0x33, 0x8f, 0x19, 0xbd, 0xdc, 0x45, 0xa6, 0xa1, 0xcb, 0x1b, 0xb2, 0x75, 0xf8, 0xa9, 0x10, 0xfa, 0x64, 0xda, 0xae, 0x25, 0x02, 0x60, 0x0a, 0xa9, 0x7b, 0x71, 0xf4, 0x9b, 0x28, 0x98, 0x1b, 0x71, 0x8f, 0x6a, 0xe0, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_2313 = { .name = "ecdh_secp521r1_2313", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2313_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2313_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2313_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 64 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2314 for ECDH, tcId is 65 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2314_peerpubkey[] = { 0x01, 0xdd, 0x2a, 0xe9, 0x57, 0x64, 0x07, 0x84, 0x96, 0x80, 0x45, 0x29, 0xa5, 0xee, 0xd0, 0xda, 0x61, 0x82, 0xbe, 0x0f, 0x08, 0x5c, 0x95, 0x78, 0x9a, 0x26, 0x34, 0xa9, 0x56, 0x9f, 0x00, 0x80, 0x86, 0x1b, 0x18, 0x3c, 0xef, 0xd1, 0xa1, 0x48, 0x9d, 0x0f, 0x90, 0x46, 0x53, 0x53, 0xb9, 0x72, 0xc8, 0x45, 0x0c, 0x2a, 0xeb, 0x5f, 0xd8, 0x0b, 0xe6, 0x4f, 0x15, 0xa7, 0x19, 0xd0, 0x87, 0x3e, 0x0a, 0x16, 0x00, 0xe1, 0x09, 0x8d, 0xd4, 0xb3, 0x0f, 0x78, 0xe3, 0xfe, 0x6c, 0x1a, 0xaf, 0x00, 0x48, 0xb1, 0x5b, 0x1d, 0x0f, 0x98, 0xff, 0x07, 0x44, 0xc1, 0xc8, 0x88, 0x64, 0x1d, 0x17, 0xac, 0x21, 0x63, 0x29, 0x37, 0x6b, 0xe7, 0x11, 0x3e, 0x93, 0x21, 0xca, 0x7f, 0x9f, 0x7e, 0x19, 0x35, 0xdf, 0xf6, 0x61, 0xbc, 0xe9, 0xff, 0xbe, 0x86, 0xae, 0xdb, 0xc9, 0x33, 0xf2, 0x43, 0x8f, 0xc4, 0x82, 0xc4, 0x62, 0xbf, }; static const unsigned char ecdh_secp521r1_2314_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2314_sharedsecret[] = { 0x00, 0x88, 0x79, 0x7d, 0x31, 0xf9, 0xb6, 0x6f, 0xae, 0xe9, 0x7e, 0xeb, 0x9a, 0x69, 0x5c, 0xf6, 0x68, 0xc7, 0x96, 0x0f, 0x49, 0xbd, 0xce, 0x05, 0x1b, 0x2f, 0xc2, 0x73, 0xd5, 0xea, 0x6d, 0x86, 0xc7, 0x86, 0x88, 0xee, 0x3e, 0xf4, 0xbe, 0x14, 0xea, 0xb0, 0x65, 0x9c, 0x57, 0xcc, 0xec, 0xb2, 0xbd, 0xb1, 0x90, 0xe5, 0x0b, 0xe0, 0x4f, 0x65, 0x07, 0x99, 0x50, 0xc5, 0xeb, 0x90, 0xd6, 0x76, 0xee, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_2314 = { .name = "ecdh_secp521r1_2314", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2314_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2314_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2314_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 65 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2315 for ECDH, tcId is 66 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2315_peerpubkey[] = { 0x00, 0x71, 0x24, 0xed, 0x9d, 0x26, 0x1b, 0xc3, 0xe5, 0xd2, 0x99, 0x47, 0xff, 0x49, 0xcc, 0x44, 0x20, 0xdb, 0x90, 0xd3, 0xaf, 0xac, 0x7e, 0xb6, 0xab, 0x91, 0xbb, 0xab, 0x09, 0x0b, 0xd8, 0x4f, 0xfc, 0xc3, 0xef, 0x33, 0xe9, 0x63, 0xbc, 0xc0, 0x56, 0x85, 0x91, 0x0e, 0xe6, 0x3b, 0x06, 0x3b, 0xb9, 0xad, 0xae, 0x7f, 0xce, 0xa4, 0x11, 0x99, 0x61, 0x99, 0x88, 0xd3, 0x4d, 0x64, 0x77, 0xd1, 0x1e, 0xa9, 0x00, 0x39, 0x73, 0x8e, 0xd5, 0x52, 0x9f, 0x31, 0xa5, 0x57, 0x97, 0x0f, 0x89, 0xe6, 0xc9, 0x27, 0xfe, 0x0b, 0xdd, 0x64, 0x13, 0xdc, 0x31, 0x23, 0x7e, 0x75, 0x27, 0x0f, 0xee, 0x8e, 0x3b, 0xa6, 0xf3, 0xa2, 0x4e, 0xe5, 0x65, 0x16, 0xec, 0xe1, 0x17, 0x73, 0x3c, 0x38, 0x5a, 0x8b, 0xb7, 0x59, 0xe5, 0x7e, 0xe7, 0x95, 0x33, 0xf3, 0xc8, 0x57, 0x32, 0x7b, 0x75, 0x42, 0x67, 0x7d, 0x83, 0x4b, 0x8d, 0xfb, }; static const unsigned char ecdh_secp521r1_2315_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2315_sharedsecret[] = { 0x00, 0x2b, 0xa2, 0x5d, 0x01, 0x69, 0x89, 0xea, 0x24, 0xd5, 0x5f, 0xcd, 0xd9, 0xda, 0xe6, 0x9b, 0xc7, 0x67, 0xa4, 0xf3, 0x28, 0x19, 0x35, 0xf5, 0x06, 0x62, 0x03, 0x81, 0x29, 0x77, 0x73, 0x7b, 0x6a, 0x25, 0x6a, 0xe8, 0x39, 0xcd, 0xe9, 0xb2, 0x73, 0x28, 0x16, 0x72, 0xd7, 0xd8, 0x5d, 0xfb, 0x40, 0xca, 0x89, 0x5f, 0xc1, 0x44, 0x9c, 0xe4, 0x28, 0x3f, 0x74, 0x16, 0xcd, 0x91, 0x3a, 0x56, 0xd8, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_2315 = { .name = "ecdh_secp521r1_2315", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2315_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2315_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2315_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 66 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2316 for ECDH, tcId is 67 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2316_peerpubkey[] = { 0x00, 0x42, 0x20, 0xb1, 0x64, 0x2d, 0xb6, 0x38, 0x10, 0xf9, 0x6c, 0xf5, 0x4f, 0x93, 0xba, 0x6c, 0x3c, 0x9b, 0x16, 0xba, 0xa8, 0xab, 0x42, 0xec, 0xac, 0xc2, 0x81, 0xa2, 0xfc, 0xa3, 0x68, 0xbe, 0x87, 0x60, 0x24, 0xb6, 0xae, 0x18, 0xa8, 0xaa, 0xf9, 0xe4, 0x33, 0x79, 0x9f, 0xb4, 0x3c, 0x0f, 0xa1, 0x75, 0xd4, 0xca, 0x4a, 0x5e, 0x12, 0x17, 0x39, 0xc7, 0x24, 0x9e, 0x9a, 0x26, 0xfc, 0x90, 0x44, 0xd7, 0x01, 0xb0, 0x6a, 0xe5, 0x8d, 0xc3, 0xf7, 0xb7, 0x73, 0x01, 0x3e, 0x2d, 0xc8, 0x00, 0xe0, 0x01, 0x22, 0x0b, 0xad, 0x2e, 0x68, 0x11, 0x5c, 0xa6, 0x75, 0x16, 0xe9, 0xc8, 0x17, 0x63, 0xd1, 0x7e, 0xad, 0xfa, 0xd2, 0xc6, 0xd3, 0x82, 0x26, 0xf6, 0x66, 0x23, 0xa2, 0xd5, 0xc1, 0x17, 0x86, 0xe0, 0x7f, 0xac, 0xe4, 0x2d, 0x7b, 0x0a, 0x1d, 0xf9, 0x6d, 0x09, 0x5b, 0xbb, 0xed, 0xfc, 0xd3, 0x48, 0xe4, 0xd6, }; static const unsigned char ecdh_secp521r1_2316_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_2316_sharedsecret[] = { 0x01, 0xf5, 0x64, 0x6e, 0x72, 0x4f, 0x63, 0x7e, 0x1d, 0x4e, 0xa8, 0x99, 0x7c, 0xc6, 0x72, 0x68, 0xda, 0x3f, 0x74, 0x1b, 0x9a, 0xf6, 0xd2, 0x1f, 0x30, 0x77, 0x5a, 0x9a, 0x9b, 0x09, 0x77, 0xed, 0x75, 0xbf, 0xa0, 0xca, 0x5a, 0x80, 0xdb, 0x2d, 0x44, 0x82, 0x2d, 0xe4, 0x94, 0xd1, 0x5c, 0x87, 0xd3, 0x92, 0xcf, 0xf4, 0xac, 0xec, 0xfb, 0x50, 0x60, 0x9b, 0x43, 0xd7, 0x84, 0x59, 0x28, 0x28, 0x65, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_2316 = { .name = "ecdh_secp521r1_2316", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2316_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2316_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2316_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 67 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2317 for ECDH, tcId is 68 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2317_peerpubkey[] = { 0x00, 0x6d, 0xb3, 0xdb, 0xd1, 0xaf, 0x24, 0x99, 0x80, 0xef, 0xfd, 0x62, 0x4e, 0x9f, 0x50, 0x0e, 0x4d, 0x9f, 0xa4, 0x46, 0xc9, 0xbe, 0x94, 0xe3, 0x9b, 0x48, 0x60, 0x76, 0x7b, 0x55, 0xb1, 0x31, 0x08, 0x89, 0xe1, 0x78, 0xca, 0xf6, 0xc8, 0x59, 0xf6, 0x0f, 0xfb, 0x0d, 0x87, 0x61, 0x2c, 0x57, 0x90, 0x83, 0x3c, 0xad, 0x16, 0x0a, 0x5b, 0x23, 0xf7, 0x41, 0x22, 0x1a, 0x12, 0x3e, 0x36, 0xf0, 0xee, 0xb7, 0x00, 0x2c, 0xe8, 0x39, 0xf2, 0xba, 0x30, 0x72, 0x91, 0x92, 0x97, 0xee, 0x5a, 0x68, 0x29, 0xb8, 0x74, 0x6a, 0xf3, 0x9f, 0xbc, 0xe9, 0xfa, 0x70, 0xdb, 0xbf, 0x59, 0xbd, 0x20, 0x9b, 0xb5, 0x00, 0xd6, 0x12, 0x94, 0x19, 0xba, 0x96, 0x02, 0x0a, 0x25, 0x50, 0xbe, 0x0a, 0x19, 0x42, 0x6e, 0xe9, 0xe1, 0x11, 0xe6, 0x98, 0x7a, 0xf0, 0xc3, 0x26, 0xe1, 0xae, 0x1d, 0xa4, 0x36, 0x5d, 0x15, 0xa7, 0xbb, 0xf5, }; static const unsigned char ecdh_secp521r1_2317_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2317_sharedsecret[] = { 0x01, 0x77, 0x70, 0x17, 0x49, 0xc0, 0xc5, 0x4b, 0xd6, 0xd5, 0x4a, 0xda, 0x39, 0xaa, 0x22, 0x22, 0xe5, 0xb4, 0xd3, 0x22, 0x73, 0xea, 0x16, 0x59, 0x41, 0xd1, 0xa9, 0xa6, 0x11, 0x4d, 0x2c, 0xbe, 0x60, 0x9e, 0xe6, 0x2c, 0x23, 0x06, 0xbc, 0x5c, 0x1a, 0xba, 0xbe, 0x08, 0x22, 0x72, 0x15, 0x7f, 0xda, 0xc8, 0xdd, 0xa3, 0x9c, 0x7b, 0x45, 0x28, 0x20, 0xc9, 0x43, 0xdb, 0x42, 0x67, 0xfe, 0xd8, 0xc2, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_2317 = { .name = "ecdh_secp521r1_2317", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2317_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2317_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2317_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 68 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2318 for ECDH, tcId is 69 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2318_peerpubkey[] = { 0x00, 0x0d, 0x2f, 0xca, 0xb6, 0x2b, 0x46, 0x7f, 0x97, 0x8a, 0x02, 0x67, 0xff, 0x35, 0x98, 0xe6, 0xfd, 0xff, 0x08, 0x7d, 0x32, 0x37, 0xf8, 0xfb, 0x00, 0xc1, 0x7d, 0x0f, 0x5a, 0xcc, 0xbb, 0x4e, 0xde, 0xd3, 0xc4, 0xc4, 0x85, 0x8d, 0x45, 0x53, 0x03, 0x3e, 0x59, 0x94, 0x60, 0x30, 0xc6, 0xf5, 0x22, 0x37, 0x79, 0xa2, 0x12, 0x05, 0xba, 0x2a, 0x49, 0xb4, 0x54, 0x5b, 0xe5, 0x96, 0xb7, 0x6f, 0x91, 0xb2, 0x00, 0x57, 0xc9, 0x75, 0xda, 0x05, 0x20, 0xe1, 0xdc, 0xaa, 0x51, 0x89, 0x51, 0xdb, 0x05, 0x78, 0x64, 0x96, 0x6c, 0x81, 0x8e, 0x4e, 0x64, 0xfa, 0x91, 0x0a, 0x0c, 0x0c, 0x7f, 0x9b, 0x89, 0x4c, 0x06, 0x46, 0x1f, 0xed, 0x9b, 0x44, 0xf7, 0xec, 0x43, 0xb7, 0x0e, 0x33, 0x39, 0xda, 0x0f, 0x56, 0x6a, 0xac, 0x07, 0xfd, 0xe5, 0x01, 0xbb, 0xf2, 0x28, 0x71, 0x45, 0x2d, 0xba, 0x5c, 0x93, 0xe5, 0xd6, 0x23, }; static const unsigned char ecdh_secp521r1_2318_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2318_sharedsecret[] = { 0x00, 0xf5, 0x24, 0xb1, 0x72, 0x6e, 0x88, 0x9d, 0x14, 0xd5, 0xfd, 0x70, 0xbb, 0xfc, 0x76, 0xfb, 0x2e, 0xb3, 0x2d, 0xc2, 0x42, 0x5f, 0x11, 0x2a, 0x5f, 0xca, 0x52, 0x03, 0x30, 0x54, 0x16, 0xb8, 0x56, 0x09, 0xf3, 0x37, 0xcf, 0x87, 0xef, 0x87, 0x8e, 0x64, 0xe3, 0x75, 0xfa, 0x29, 0xeb, 0x32, 0xf9, 0xf1, 0x39, 0xbf, 0x77, 0x5c, 0x0d, 0x32, 0x29, 0xa7, 0x2c, 0x2e, 0x88, 0x09, 0x79, 0xf8, 0x22, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2318 = { .name = "ecdh_secp521r1_2318", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2318_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2318_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2318_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 69 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2319 for ECDH, tcId is 70 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2319_peerpubkey[] = { 0x00, 0x2c, 0xca, 0x1f, 0x37, 0xdd, 0x94, 0xa0, 0xa4, 0x7c, 0x81, 0x68, 0xac, 0xea, 0x47, 0x3f, 0xb0, 0x57, 0x65, 0x27, 0x13, 0x01, 0x5e, 0x58, 0x57, 0x43, 0xc9, 0xd3, 0x3f, 0x5b, 0x7d, 0x01, 0xd6, 0x38, 0xbc, 0x0d, 0x03, 0x91, 0x47, 0x58, 0x1a, 0x5f, 0x30, 0x96, 0x13, 0x9e, 0x5e, 0xe8, 0xed, 0x38, 0xbd, 0xcb, 0x72, 0xcd, 0xe4, 0x93, 0x92, 0x47, 0x76, 0x57, 0x9b, 0xcb, 0xb2, 0x52, 0x29, 0x61, 0x01, 0x5b, 0xd4, 0x85, 0x9c, 0x20, 0x15, 0xc0, 0x81, 0x69, 0x6a, 0xb1, 0x05, 0xb8, 0x92, 0x2c, 0x1f, 0x81, 0xce, 0x4a, 0x61, 0x04, 0xe5, 0xb5, 0x6b, 0x3c, 0xd9, 0x9c, 0xcc, 0x3c, 0x50, 0x66, 0xcb, 0xc3, 0x39, 0xae, 0x68, 0x5a, 0x90, 0x4d, 0xf5, 0xdd, 0x15, 0x48, 0x5c, 0xc3, 0xca, 0x72, 0xd2, 0xc8, 0x4f, 0x15, 0xf6, 0x25, 0x39, 0x7f, 0x46, 0x05, 0x90, 0x5b, 0x36, 0x17, 0x01, 0xe0, 0x0d, 0x2b, }; static const unsigned char ecdh_secp521r1_2319_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2319_sharedsecret[] = { 0x01, 0xca, 0x20, 0xd5, 0x56, 0xbf, 0x1b, 0xaf, 0x10, 0x15, 0x3e, 0x2c, 0x1d, 0x99, 0xb5, 0x8f, 0xa8, 0xd8, 0xf2, 0x1c, 0xd7, 0xee, 0xf3, 0x0a, 0xfc, 0x94, 0xef, 0xb4, 0x7d, 0x38, 0xbb, 0x36, 0x4a, 0xbd, 0xb5, 0x9a, 0x32, 0x6d, 0xff, 0xc4, 0x1f, 0xc0, 0x56, 0xef, 0xb7, 0x14, 0x38, 0x4b, 0x5d, 0x3f, 0x09, 0x27, 0x0b, 0x48, 0x06, 0xfc, 0xb0, 0xe2, 0x71, 0x38, 0x3c, 0xda, 0xec, 0x02, 0x3b, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2319 = { .name = "ecdh_secp521r1_2319", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2319_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2319_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2319_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 70 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2320 for ECDH, tcId is 71 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2320_peerpubkey[] = { 0x01, 0xb5, 0x38, 0x6f, 0xc6, 0x15, 0x97, 0x30, 0x76, 0x32, 0xb3, 0xf2, 0xc9, 0x84, 0xfe, 0x0e, 0xe8, 0xe2, 0x2c, 0x5f, 0xd9, 0x04, 0xb1, 0xd1, 0x4b, 0x35, 0x68, 0xe9, 0xeb, 0x76, 0x50, 0x03, 0x79, 0xd9, 0x17, 0xf2, 0x43, 0x0b, 0x7f, 0x2f, 0x55, 0xe0, 0xba, 0xc3, 0x56, 0xe7, 0x46, 0x72, 0xa2, 0x3d, 0xf2, 0xa5, 0xdd, 0xd4, 0x6f, 0xc0, 0xa5, 0x8f, 0x9f, 0x54, 0x07, 0x09, 0x37, 0x26, 0xc2, 0x5d, 0x00, 0x9c, 0xbf, 0x98, 0x33, 0x03, 0xfc, 0xbe, 0x0b, 0x5a, 0x92, 0x6e, 0x28, 0xc0, 0x65, 0x4e, 0xd4, 0x57, 0x43, 0x7e, 0x40, 0x10, 0xcc, 0xc1, 0xd1, 0xe0, 0x2e, 0x28, 0x68, 0x8c, 0x9f, 0x21, 0x0c, 0x76, 0xaf, 0x02, 0xed, 0x0d, 0xf6, 0xb7, 0x27, 0xfb, 0x18, 0xb9, 0x38, 0x71, 0x8e, 0x9d, 0xcc, 0x2c, 0x24, 0x21, 0xa6, 0x39, 0xd7, 0x32, 0xa6, 0x17, 0x11, 0xa5, 0xa4, 0x5f, 0xaa, 0x1b, 0xa1, 0x44, }; static const unsigned char ecdh_secp521r1_2320_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2320_sharedsecret[] = { 0x01, 0x20, 0x6d, 0x9b, 0xc7, 0x47, 0xf0, 0xe7, 0x59, 0x1d, 0xbe, 0x7a, 0x88, 0x95, 0x0a, 0x78, 0xdb, 0x27, 0x70, 0xce, 0xba, 0xc4, 0xe9, 0x1f, 0x71, 0xb3, 0x05, 0x2a, 0x33, 0x6b, 0xd1, 0x9f, 0x0f, 0x90, 0x6b, 0x72, 0x98, 0xeb, 0x92, 0x79, 0x0b, 0xe7, 0xbd, 0xa3, 0x3c, 0x28, 0x21, 0x6b, 0x28, 0x16, 0xb1, 0x00, 0xfe, 0x31, 0xba, 0x8a, 0x74, 0x89, 0xa9, 0xec, 0xa3, 0xba, 0x82, 0xb9, 0xd1, 0x98, }; static const wycheproof_ecdh_test ecdh_secp521r1_2320 = { .name = "ecdh_secp521r1_2320", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2320_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2320_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2320_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 71 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2321 for ECDH, tcId is 72 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2321_peerpubkey[] = { 0x00, 0x12, 0xd9, 0xeb, 0xd3, 0xfe, 0xb5, 0x43, 0xb4, 0x3c, 0xf3, 0x8f, 0x7b, 0xab, 0xa9, 0xc2, 0x0f, 0xcd, 0x5f, 0xe2, 0xde, 0xe9, 0x04, 0x9c, 0xa8, 0x85, 0x41, 0x84, 0xa2, 0xea, 0xd6, 0x4a, 0xa5, 0x40, 0x5e, 0x16, 0x9a, 0xe8, 0x27, 0x41, 0x37, 0x25, 0x95, 0x83, 0x07, 0x93, 0x9e, 0xe2, 0x44, 0x0c, 0x21, 0xb8, 0xda, 0x58, 0xb3, 0xff, 0x51, 0x6a, 0xe5, 0x69, 0x95, 0x3c, 0xf4, 0x87, 0x37, 0xee, 0x00, 0xcd, 0x5b, 0xec, 0x6c, 0xf7, 0x28, 0x63, 0x2d, 0x31, 0xe3, 0xa1, 0x99, 0xa2, 0x98, 0x24, 0x0d, 0xde, 0xd0, 0xab, 0x5d, 0x2b, 0x35, 0x13, 0xbc, 0xb2, 0xd1, 0x14, 0xc6, 0xb8, 0xf2, 0x79, 0xa0, 0x75, 0xff, 0x0c, 0x56, 0xa3, 0xee, 0x9e, 0x40, 0x58, 0xac, 0xec, 0x89, 0x36, 0xbf, 0x86, 0xbb, 0x28, 0x44, 0xba, 0x13, 0x07, 0xa4, 0x34, 0xfb, 0x43, 0xd2, 0x89, 0x74, 0x66, 0x62, 0xa8, 0x3d, 0xd5, }; static const unsigned char ecdh_secp521r1_2321_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2321_sharedsecret[] = { 0x01, 0x28, 0xdd, 0xe1, 0x34, 0x1c, 0xa1, 0x7b, 0x37, 0xef, 0xb3, 0x4b, 0x30, 0xee, 0x47, 0x9b, 0x76, 0x3e, 0x87, 0x8d, 0xc8, 0x00, 0x6c, 0x8c, 0xee, 0x43, 0x5c, 0x0b, 0xd2, 0x10, 0x73, 0xc5, 0xbb, 0x3d, 0xf5, 0x28, 0x65, 0xbd, 0x41, 0x31, 0xf5, 0xce, 0xc4, 0x15, 0x88, 0xef, 0x77, 0x8e, 0xf1, 0x4a, 0xf4, 0xca, 0x47, 0xdc, 0x49, 0xa1, 0x6d, 0x5b, 0x70, 0x08, 0xed, 0xe0, 0xb6, 0xe6, 0xb1, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2321 = { .name = "ecdh_secp521r1_2321", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2321_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2321_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2321_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 72 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2322 for ECDH, tcId is 73 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2322_peerpubkey[] = { 0x00, 0xf3, 0xaa, 0x49, 0xfe, 0xaf, 0x68, 0x6f, 0xcf, 0xfe, 0x3a, 0x0a, 0x36, 0x06, 0x92, 0xef, 0x02, 0xfe, 0xb1, 0x4d, 0xe6, 0xe0, 0xfd, 0x8d, 0xc9, 0x22, 0x85, 0x7b, 0x29, 0xd6, 0x83, 0x7a, 0x59, 0xce, 0x40, 0x13, 0xbe, 0xe9, 0x9b, 0xf8, 0x7f, 0x83, 0x23, 0xc3, 0xab, 0x7f, 0x57, 0xe0, 0x2e, 0x7b, 0x0a, 0x0d, 0xfa, 0xa0, 0x72, 0xbf, 0x1a, 0xda, 0x48, 0x36, 0xbe, 0x49, 0x08, 0xdd, 0xae, 0x49, 0x00, 0x6a, 0xf8, 0x1a, 0xb3, 0xe3, 0x05, 0xfb, 0xe5, 0xce, 0x8a, 0x81, 0x9f, 0x81, 0x68, 0xa8, 0xb4, 0x4e, 0x40, 0xb1, 0x6e, 0xae, 0x82, 0x68, 0xa6, 0x0e, 0xa5, 0xd6, 0x6c, 0x0f, 0x28, 0x43, 0x65, 0xe6, 0x09, 0xa1, 0x91, 0x23, 0x37, 0x0b, 0xee, 0xe4, 0x20, 0xd0, 0xf0, 0x19, 0xa1, 0x98, 0x41, 0x56, 0xce, 0x29, 0xad, 0xe4, 0x95, 0x10, 0xe7, 0xa3, 0x16, 0x37, 0x05, 0x33, 0x3b, 0x85, 0x89, 0x14, }; static const unsigned char ecdh_secp521r1_2322_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2322_sharedsecret[] = { 0x00, 0x58, 0xbd, 0x4d, 0x20, 0x6d, 0xf1, 0xcf, 0xb3, 0xfe, 0x34, 0x9c, 0xda, 0x27, 0xb0, 0x13, 0xd5, 0x9d, 0xd6, 0xf5, 0x07, 0xc0, 0x66, 0xc0, 0xb6, 0xcf, 0x45, 0x8a, 0xa5, 0x4a, 0x1c, 0x13, 0x83, 0x25, 0x54, 0xc6, 0x6f, 0xf2, 0x7f, 0x61, 0x75, 0xf1, 0xbf, 0x40, 0x58, 0x37, 0x8c, 0x9f, 0x7c, 0x7a, 0x9d, 0x8b, 0x81, 0x0e, 0x40, 0xa3, 0xa8, 0xaf, 0x19, 0xfe, 0x0e, 0x48, 0xc7, 0x28, 0x4e, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2322 = { .name = "ecdh_secp521r1_2322", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2322_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2322_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2322_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 73 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2323 for ECDH, tcId is 74 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2323_peerpubkey[] = { 0x00, 0x54, 0x68, 0x2c, 0x18, 0x6f, 0x9b, 0x80, 0xc4, 0xc7, 0x6d, 0x70, 0x50, 0xf6, 0xa1, 0x80, 0xfa, 0xd9, 0xfc, 0x85, 0x19, 0x41, 0x95, 0x74, 0xbf, 0xaf, 0xca, 0x96, 0x78, 0xc5, 0x9c, 0xa9, 0x5e, 0x22, 0x53, 0x34, 0x8e, 0x0b, 0x15, 0x79, 0x49, 0x46, 0x1e, 0x95, 0x51, 0xca, 0x7d, 0xdf, 0xb9, 0xfa, 0xe8, 0xfd, 0x7f, 0xd2, 0x3a, 0x88, 0x55, 0xd9, 0x96, 0x29, 0x13, 0xc6, 0x6f, 0x2f, 0xce, 0x54, 0x00, 0xf4, 0x05, 0x29, 0x73, 0x10, 0xed, 0x41, 0x23, 0x9c, 0x56, 0x5c, 0x04, 0x4c, 0xfc, 0x4c, 0xad, 0x28, 0x68, 0x12, 0x6d, 0x44, 0x4b, 0x37, 0x3d, 0x52, 0xe0, 0x51, 0x82, 0x45, 0x60, 0x0a, 0x99, 0xc4, 0x0f, 0x1b, 0xfa, 0x5c, 0xca, 0x7d, 0x1f, 0x39, 0x7c, 0x18, 0xea, 0xd3, 0x3c, 0x4d, 0x3f, 0xd4, 0xd4, 0x31, 0xef, 0x84, 0xf1, 0x12, 0x92, 0x38, 0xe2, 0x96, 0xe3, 0xed, 0x7b, 0xe0, 0xf9, 0x9e, }; static const unsigned char ecdh_secp521r1_2323_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2323_sharedsecret[] = { 0x01, 0x61, 0x2e, 0xba, 0xcb, 0x6c, 0x31, 0xaf, 0x20, 0x08, 0xaa, 0x26, 0x4c, 0x45, 0xd1, 0xce, 0xe7, 0xaa, 0x53, 0x3d, 0x78, 0xe1, 0xfc, 0xf4, 0x80, 0xa3, 0x11, 0x8d, 0x23, 0x41, 0x8e, 0x23, 0x62, 0x1f, 0x0c, 0xe9, 0xc7, 0x50, 0x9f, 0x71, 0x82, 0xbf, 0x23, 0xa0, 0x2a, 0x65, 0x30, 0x65, 0x9b, 0xa6, 0x2c, 0x5f, 0x16, 0xf8, 0x63, 0x4a, 0x4f, 0x74, 0xd4, 0xc3, 0x2b, 0x26, 0xc6, 0xee, 0xcc, 0x27, }; static const wycheproof_ecdh_test ecdh_secp521r1_2323 = { .name = "ecdh_secp521r1_2323", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2323_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2323_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2323_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 74 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2324 for ECDH, tcId is 75 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2324_peerpubkey[] = { 0x01, 0xea, 0xbf, 0x31, 0x92, 0x53, 0xf8, 0x83, 0x41, 0x7a, 0x0c, 0xe2, 0x65, 0xd3, 0x14, 0x23, 0x96, 0xa7, 0x5f, 0x83, 0x0f, 0x33, 0x58, 0x94, 0x86, 0x88, 0x9b, 0xbd, 0x4e, 0x20, 0x91, 0xb8, 0x27, 0xfe, 0xf6, 0x09, 0x0a, 0xb6, 0x57, 0x68, 0xa3, 0x8f, 0xfb, 0x3a, 0x9c, 0x97, 0x79, 0x64, 0x64, 0x63, 0x4d, 0x07, 0x06, 0x22, 0xad, 0xbc, 0x3e, 0x9a, 0xf1, 0x98, 0xef, 0xb9, 0xd7, 0x29, 0xd7, 0xca, 0x00, 0x02, 0xfa, 0x30, 0x58, 0x1a, 0x7b, 0x26, 0x81, 0xf7, 0xe2, 0x24, 0xea, 0xd1, 0x35, 0xec, 0x7a, 0x61, 0x63, 0xaf, 0x4f, 0x40, 0xaa, 0x33, 0x30, 0x43, 0xa2, 0xba, 0xde, 0xce, 0xac, 0x13, 0x53, 0xab, 0x5f, 0xfb, 0xee, 0xf9, 0x29, 0x60, 0x91, 0x37, 0xcd, 0x43, 0x7e, 0x8a, 0xcc, 0xc0, 0xb0, 0x24, 0x11, 0x60, 0x39, 0x59, 0xd6, 0x1c, 0x7a, 0x70, 0xf1, 0x39, 0x1a, 0x7a, 0x99, 0x23, 0x27, 0xa7, }; static const unsigned char ecdh_secp521r1_2324_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2324_sharedsecret[] = { 0x00, 0x6a, 0x32, 0x35, 0xdf, 0x6b, 0x85, 0x34, 0x3e, 0xab, 0x82, 0x35, 0x06, 0x20, 0x88, 0x9f, 0xeb, 0xa2, 0x73, 0x60, 0x4e, 0x59, 0xeb, 0x98, 0xd7, 0x8f, 0xe6, 0x3b, 0xd4, 0x41, 0xce, 0x39, 0x41, 0x1e, 0xad, 0x84, 0x02, 0xe2, 0x50, 0x7f, 0xe1, 0x0a, 0x03, 0xfa, 0xd9, 0x56, 0x2c, 0x3b, 0xe4, 0x48, 0x83, 0x78, 0xcf, 0x2a, 0x1f, 0x4c, 0x42, 0x78, 0x5e, 0x7d, 0x93, 0x21, 0x8d, 0x99, 0xfe, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2324 = { .name = "ecdh_secp521r1_2324", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2324_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2324_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2324_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 75 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2325 for ECDH, tcId is 76 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2325_peerpubkey[] = { 0x01, 0xd3, 0x6e, 0x69, 0x6a, 0xad, 0xbb, 0xc4, 0x09, 0xb4, 0x73, 0x3f, 0xc3, 0xc8, 0x6d, 0xcb, 0x2e, 0x98, 0x0a, 0x1b, 0x7d, 0x01, 0x58, 0xf8, 0x2a, 0x27, 0xe5, 0xb1, 0x33, 0x7f, 0xd2, 0x27, 0x2e, 0x52, 0xa2, 0x7f, 0xe6, 0x7c, 0xc5, 0x87, 0x2b, 0x5b, 0x46, 0x04, 0x0d, 0x88, 0x32, 0x5b, 0x2b, 0x52, 0x4a, 0x2d, 0x5b, 0x87, 0x3b, 0xc5, 0x4f, 0xf0, 0x51, 0xc1, 0xd1, 0x6c, 0x99, 0xd9, 0xbc, 0x81, 0x00, 0x3e, 0x3f, 0x6b, 0x1a, 0x73, 0x7d, 0xa1, 0x68, 0x02, 0x43, 0x0f, 0x80, 0x9e, 0x08, 0x4c, 0xd8, 0xb3, 0x42, 0x00, 0x19, 0xc2, 0xf9, 0xf1, 0xb9, 0x78, 0xa1, 0x12, 0x8f, 0xfc, 0xb9, 0x00, 0xb9, 0xc4, 0xfa, 0xf1, 0x77, 0xa7, 0x87, 0x7e, 0x4a, 0x83, 0x84, 0x72, 0x8a, 0x1c, 0x30, 0x9d, 0x2b, 0xcf, 0xb4, 0x12, 0xfa, 0x98, 0x39, 0x82, 0xae, 0x6b, 0x45, 0x9f, 0xe0, 0x7e, 0xb9, 0xc7, 0x9e, 0xdd, }; static const unsigned char ecdh_secp521r1_2325_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2325_sharedsecret[] = { 0x00, 0x09, 0xca, 0x92, 0x9a, 0x3a, 0xd9, 0x52, 0x5d, 0x0a, 0xe1, 0x9d, 0x36, 0xb4, 0x0d, 0xc5, 0x43, 0xd2, 0x34, 0x8f, 0x8b, 0x0d, 0x95, 0xc5, 0x9c, 0x42, 0x07, 0xf8, 0x6a, 0x89, 0x88, 0x49, 0x85, 0x8e, 0x93, 0x9b, 0x44, 0x58, 0xb5, 0x68, 0xf5, 0x7c, 0x05, 0x4e, 0xe9, 0xd9, 0x56, 0x32, 0xaa, 0x24, 0xc5, 0xd5, 0xf1, 0xd4, 0xea, 0xa8, 0x9f, 0xaf, 0x8f, 0xac, 0x4d, 0x11, 0xda, 0x28, 0xdd, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_2325 = { .name = "ecdh_secp521r1_2325", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2325_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2325_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2325_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 76 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2326 for ECDH, tcId is 77 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2326_peerpubkey[] = { 0x01, 0x06, 0x1a, 0xa8, 0x9a, 0x31, 0x7c, 0x63, 0xb8, 0x24, 0xf7, 0xeb, 0xfc, 0x8b, 0xd9, 0x53, 0x4e, 0x29, 0x7d, 0xf9, 0xba, 0xcf, 0x80, 0xb8, 0x35, 0x0c, 0xbd, 0x94, 0xcd, 0xc4, 0xd3, 0xd8, 0x12, 0x7a, 0x80, 0xdb, 0x95, 0x55, 0xb7, 0x7d, 0x50, 0xea, 0x82, 0xc9, 0x9e, 0x66, 0x7f, 0x6f, 0xe5, 0x37, 0x9a, 0x77, 0xc9, 0x07, 0x8b, 0xf9, 0xc7, 0xcc, 0x04, 0x9a, 0xbe, 0x9e, 0xac, 0x7f, 0x17, 0x4c, 0x00, 0xa9, 0xab, 0xfc, 0x2a, 0x89, 0x2f, 0x10, 0x4e, 0x30, 0xcb, 0x20, 0xcc, 0x2b, 0xfb, 0xa6, 0xb9, 0x48, 0xc6, 0x63, 0x7a, 0xc0, 0x62, 0xe8, 0x3a, 0xe4, 0x78, 0xf0, 0x96, 0x86, 0x9f, 0x17, 0xdc, 0x1b, 0xb4, 0xea, 0xf5, 0x2f, 0x7d, 0x63, 0x51, 0x80, 0x31, 0xed, 0xec, 0xb2, 0x20, 0xec, 0x14, 0xb0, 0x65, 0x2e, 0x6c, 0x96, 0xe0, 0x23, 0x49, 0x0d, 0x5e, 0xd0, 0x8f, 0xb4, 0x25, 0x9d, 0xa9, 0xfa, }; static const unsigned char ecdh_secp521r1_2326_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2326_sharedsecret[] = { 0x01, 0x39, 0x50, 0xdd, 0xb6, 0xb9, 0x15, 0x45, 0x41, 0x25, 0xe3, 0x7a, 0x03, 0x84, 0x57, 0x94, 0xfe, 0x32, 0x03, 0x7e, 0xdd, 0xc0, 0x41, 0x43, 0xd9, 0x1c, 0xbf, 0x2a, 0xb8, 0x42, 0x49, 0x50, 0x12, 0x89, 0x64, 0x60, 0xd3, 0x82, 0x43, 0x74, 0xb2, 0x14, 0xec, 0xe1, 0x0f, 0x39, 0xd2, 0xac, 0x60, 0x6b, 0xb4, 0xb2, 0xf9, 0xb2, 0x75, 0x48, 0xe2, 0x17, 0x20, 0xae, 0x13, 0x26, 0x6d, 0x14, 0xbe, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_2326 = { .name = "ecdh_secp521r1_2326", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2326_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2326_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2326_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 77 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2327 for ECDH, tcId is 78 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2327_peerpubkey[] = { 0x00, 0xdf, 0x58, 0xf1, 0x93, 0xb6, 0xd4, 0xfd, 0xba, 0x1d, 0x61, 0xa4, 0xe0, 0x73, 0xa3, 0x05, 0xc9, 0x5d, 0xba, 0x4c, 0xa0, 0xfd, 0xd5, 0x8f, 0x86, 0xee, 0x32, 0xa9, 0x30, 0x4a, 0x62, 0x09, 0x7a, 0xc3, 0xc0, 0xd1, 0xfa, 0xe3, 0x2c, 0xf2, 0xe4, 0xe6, 0x5b, 0xa4, 0xef, 0xc6, 0xd0, 0x40, 0x87, 0x25, 0xf5, 0x72, 0x74, 0xf9, 0xbc, 0x22, 0x89, 0xed, 0x42, 0x6e, 0xc2, 0x70, 0x79, 0xae, 0x0b, 0x6e, 0x01, 0xf0, 0x7d, 0x98, 0xe2, 0xab, 0xa8, 0xd3, 0x8e, 0x6d, 0x54, 0xb1, 0x49, 0x6d, 0x68, 0x25, 0x10, 0x04, 0x54, 0x7f, 0x50, 0x78, 0x97, 0x54, 0xc4, 0x09, 0x76, 0x62, 0x82, 0x7b, 0xc8, 0x3f, 0x2c, 0xf5, 0x91, 0x92, 0xeb, 0x9e, 0x09, 0x01, 0x1b, 0x30, 0xc5, 0x4c, 0xad, 0x9f, 0x92, 0x41, 0xc0, 0x92, 0x41, 0x5a, 0x36, 0x6f, 0xfe, 0x5b, 0x6b, 0xdb, 0x4c, 0xfc, 0xbc, 0xdc, 0x46, 0xed, 0xcc, 0x12, }; static const unsigned char ecdh_secp521r1_2327_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2327_sharedsecret[] = { 0x01, 0xa1, 0xbc, 0x2b, 0x5e, 0x8e, 0x0a, 0x62, 0x10, 0xef, 0x8a, 0x51, 0x4d, 0xed, 0x99, 0xee, 0xe3, 0x0a, 0xc8, 0xe9, 0xaa, 0x77, 0x58, 0xad, 0xec, 0xc4, 0x91, 0x03, 0x01, 0xfc, 0x62, 0x6a, 0x56, 0x66, 0xe4, 0x54, 0x1c, 0xea, 0x03, 0xa9, 0x0f, 0x1e, 0x59, 0xfd, 0x82, 0xb8, 0xcd, 0x87, 0x08, 0x6f, 0x26, 0x10, 0x52, 0x12, 0x4c, 0xd4, 0x3b, 0x1c, 0x89, 0xfd, 0x04, 0x8d, 0xad, 0x5f, 0x29, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_2327 = { .name = "ecdh_secp521r1_2327", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2327_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2327_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2327_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 78 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2328 for ECDH, tcId is 79 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2328_peerpubkey[] = { 0x00, 0x73, 0xb9, 0x17, 0xa3, 0x56, 0xc0, 0xde, 0x8f, 0xef, 0x14, 0x59, 0x3f, 0x66, 0xd5, 0xda, 0xb1, 0xf0, 0xd5, 0x6b, 0x04, 0x2b, 0xa6, 0x5d, 0x20, 0x3e, 0xc1, 0x39, 0xc6, 0xcb, 0x71, 0xd9, 0x0b, 0xb7, 0xdc, 0x04, 0x44, 0xd0, 0xe3, 0xb0, 0x1b, 0xed, 0x97, 0xa5, 0xc6, 0x9f, 0x27, 0x54, 0x9c, 0x92, 0xe9, 0x5b, 0xbc, 0x7e, 0x8e, 0x0c, 0xe9, 0x32, 0xe6, 0xc4, 0x3a, 0x75, 0x55, 0x0e, 0x86, 0xec, 0x00, 0x9f, 0x20, 0x14, 0xe2, 0x9a, 0xcb, 0x2b, 0x25, 0x5b, 0xf6, 0xec, 0x91, 0x18, 0xbe, 0xbe, 0x73, 0x25, 0xe1, 0xf1, 0x1f, 0xf7, 0x88, 0x5d, 0x1a, 0x2e, 0x14, 0x29, 0x45, 0xcb, 0x74, 0x1e, 0x26, 0xb4, 0xff, 0xc6, 0xde, 0x72, 0xb7, 0x15, 0xa1, 0x48, 0xb8, 0x40, 0xdf, 0x54, 0x9b, 0x49, 0xc9, 0xa0, 0x5f, 0x88, 0x27, 0xf3, 0xef, 0x05, 0xdb, 0x98, 0xa4, 0xf6, 0x64, 0xf6, 0xdd, 0x84, 0x78, 0xf0, }; static const unsigned char ecdh_secp521r1_2328_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2328_sharedsecret[] = { 0x00, 0xf3, 0x4f, 0x3b, 0x8a, 0xe2, 0xf0, 0xfe, 0xc3, 0x68, 0x39, 0x66, 0x33, 0xf5, 0x81, 0xb9, 0x3c, 0x38, 0xe3, 0x29, 0x77, 0x00, 0x85, 0xa5, 0x1a, 0x93, 0x45, 0x70, 0x87, 0xf8, 0x11, 0x63, 0x86, 0xd5, 0x8d, 0xea, 0x54, 0xb9, 0x9c, 0xe5, 0x6a, 0x80, 0x89, 0x6a, 0xad, 0x40, 0xc2, 0xdf, 0xe6, 0x9b, 0x2d, 0xfe, 0x12, 0x6b, 0xe1, 0x7b, 0xf1, 0x5a, 0xb7, 0xf1, 0x9c, 0xe6, 0x67, 0xbf, 0xf4, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2328 = { .name = "ecdh_secp521r1_2328", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2328_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2328_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2328_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 79 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2329 for ECDH, tcId is 80 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2329_peerpubkey[] = { 0x01, 0xd8, 0x60, 0xab, 0xb5, 0xc6, 0x5f, 0x6d, 0x17, 0x91, 0xbc, 0x3f, 0xd6, 0x26, 0xe3, 0xda, 0x1c, 0xe8, 0x90, 0x51, 0x44, 0x17, 0xd6, 0x7b, 0x40, 0x71, 0x68, 0xdc, 0x7f, 0xc9, 0x66, 0x41, 0xfd, 0xa5, 0x6f, 0xb1, 0x83, 0x0f, 0x36, 0x95, 0xab, 0x01, 0x71, 0xd7, 0x86, 0x67, 0x30, 0x74, 0x7b, 0x3d, 0xce, 0x3d, 0xe6, 0x1c, 0xe7, 0x0f, 0x83, 0x1a, 0xf8, 0x5e, 0x5c, 0x6e, 0xae, 0x0b, 0x7c, 0x77, 0x01, 0xb1, 0xeb, 0xa9, 0x2b, 0x65, 0xba, 0x7e, 0xe9, 0x69, 0x1d, 0x90, 0x8a, 0x14, 0xad, 0x0a, 0x11, 0x6a, 0x4e, 0x09, 0xb4, 0x0c, 0x9e, 0xa4, 0x19, 0x7e, 0x60, 0xc0, 0xb5, 0x4f, 0x94, 0x84, 0x22, 0xba, 0xa9, 0x7d, 0x80, 0xb4, 0xcc, 0xaf, 0x7b, 0x35, 0xbe, 0x68, 0x1d, 0xed, 0x0a, 0xec, 0xdd, 0x8b, 0xdd, 0x30, 0x59, 0x05, 0x4a, 0xf8, 0x38, 0x05, 0x78, 0x88, 0x48, 0x9c, 0x00, 0xa3, 0xb7, 0x59, }; static const unsigned char ecdh_secp521r1_2329_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2329_sharedsecret[] = { 0x01, 0x20, 0x3d, 0xf6, 0x0d, 0xb3, 0x97, 0x32, 0x20, 0x7b, 0xd8, 0xdb, 0x87, 0x50, 0x1b, 0xcd, 0x84, 0x81, 0x66, 0x4a, 0x91, 0x11, 0xc8, 0xc6, 0x5b, 0x46, 0xf0, 0x02, 0xb0, 0xb8, 0x31, 0x59, 0x96, 0x0e, 0x47, 0x10, 0xeb, 0xa5, 0x48, 0xf0, 0x03, 0x9d, 0xb2, 0x4f, 0x66, 0x19, 0x0c, 0x56, 0x05, 0x33, 0x70, 0xb3, 0xc9, 0x88, 0x4d, 0x44, 0x59, 0x71, 0xa1, 0x29, 0x6d, 0xa4, 0xd6, 0x56, 0xf9, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2329 = { .name = "ecdh_secp521r1_2329", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2329_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2329_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2329_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 80 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2330 for ECDH, tcId is 81 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2330_peerpubkey[] = { 0x01, 0xb3, 0x41, 0xa7, 0xb5, 0x81, 0x22, 0xc7, 0x0b, 0x72, 0xe7, 0x0b, 0x05, 0x1a, 0x33, 0x51, 0x86, 0xc8, 0x9f, 0xe4, 0x7b, 0x8f, 0x68, 0xc3, 0x5d, 0x09, 0x9b, 0x77, 0x59, 0xfb, 0x62, 0x08, 0x71, 0x88, 0x75, 0xd8, 0xcd, 0x8c, 0x45, 0xd1, 0x15, 0x1a, 0x37, 0x02, 0x01, 0xa1, 0xb0, 0x47, 0x00, 0x2f, 0x61, 0x9b, 0x05, 0xca, 0xfe, 0x39, 0xd4, 0x94, 0xb6, 0xa6, 0x9a, 0x52, 0xb4, 0x26, 0x53, 0x33, 0x01, 0x27, 0xe7, 0x0b, 0x8f, 0xc8, 0x40, 0x89, 0x13, 0x95, 0xaf, 0xd3, 0xb0, 0x37, 0x32, 0xd0, 0xa5, 0x2f, 0x47, 0x77, 0x65, 0x1c, 0x3d, 0x8a, 0x85, 0x79, 0xd6, 0x65, 0x85, 0x10, 0xd8, 0x68, 0xb6, 0x9f, 0x14, 0x3c, 0x7e, 0xec, 0xd2, 0xbe, 0x41, 0x2e, 0x0a, 0xd2, 0xb2, 0xd7, 0xae, 0xf0, 0x71, 0x77, 0x96, 0xf3, 0xf8, 0x48, 0x0f, 0xa9, 0x24, 0xb0, 0x9d, 0xf9, 0x01, 0x88, 0xde, 0xbe, 0x51, 0xbb, }; static const unsigned char ecdh_secp521r1_2330_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2330_sharedsecret[] = { 0x00, 0xb2, 0x2d, 0x94, 0xb5, 0x3f, 0xb0, 0x0d, 0x48, 0xe1, 0x2f, 0x12, 0x56, 0x0e, 0xaf, 0xcd, 0xec, 0x7e, 0xa1, 0x57, 0xc9, 0xb0, 0x42, 0x43, 0x6f, 0xc6, 0x66, 0x81, 0xde, 0x96, 0xaf, 0x98, 0xba, 0x98, 0xad, 0xb7, 0xfa, 0xf7, 0x9d, 0x12, 0xb3, 0x99, 0xe9, 0x01, 0xec, 0x7b, 0xc9, 0xd5, 0x11, 0x78, 0x83, 0xda, 0x20, 0x5a, 0xc2, 0x6b, 0x38, 0xf7, 0x88, 0xa7, 0x88, 0x5d, 0x43, 0x4b, 0x6e, 0x18, }; static const wycheproof_ecdh_test ecdh_secp521r1_2330 = { .name = "ecdh_secp521r1_2330", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2330_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2330_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2330_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 81 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2331 for ECDH, tcId is 82 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2331_peerpubkey[] = { 0x00, 0x01, 0xff, 0x24, 0x9a, 0xab, 0xa8, 0x06, 0xd8, 0x38, 0xc1, 0xa1, 0xd0, 0x0d, 0x9d, 0x22, 0x59, 0xe6, 0x0e, 0xa1, 0xe8, 0xee, 0xc6, 0x68, 0x64, 0x05, 0x46, 0x2a, 0xb2, 0x2a, 0x32, 0xa5, 0xb6, 0x73, 0x93, 0x2b, 0xbf, 0x63, 0xfd, 0x74, 0xea, 0xb3, 0xf6, 0x33, 0x48, 0xa6, 0xc2, 0x2e, 0x0d, 0x6e, 0x59, 0x4b, 0x25, 0x3f, 0x01, 0xea, 0x21, 0x1b, 0xb7, 0x6f, 0x0b, 0x9d, 0xce, 0x66, 0xd6, 0x71, 0x00, 0x50, 0x52, 0xc1, 0xf4, 0x4d, 0x17, 0xc3, 0x34, 0xe5, 0x22, 0xa0, 0xd8, 0xe3, 0xd9, 0x9a, 0xe3, 0x2f, 0xa4, 0x8d, 0xf6, 0xfb, 0x91, 0x17, 0xbe, 0xe4, 0x31, 0xb7, 0xa3, 0x74, 0x40, 0x31, 0x09, 0x85, 0xe5, 0xfd, 0xd8, 0x21, 0x70, 0x81, 0x7b, 0x0f, 0x68, 0xc0, 0xbb, 0x73, 0x00, 0xd2, 0x17, 0x85, 0x4e, 0x45, 0xfb, 0x69, 0x4b, 0x46, 0xf5, 0xf5, 0x03, 0x00, 0x62, 0x73, 0x90, 0x90, 0x00, 0x87, }; static const unsigned char ecdh_secp521r1_2331_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2331_sharedsecret[] = { 0x00, 0xe1, 0x7a, 0x9e, 0xbd, 0x3c, 0xe6, 0xa1, 0x9e, 0x5e, 0xaa, 0xf8, 0x89, 0xb1, 0x20, 0xac, 0x1e, 0x38, 0x77, 0x8e, 0x1c, 0x11, 0x29, 0xc3, 0x83, 0xfe, 0xc2, 0xbf, 0x97, 0x80, 0xd1, 0xc4, 0x12, 0xeb, 0xc8, 0xfb, 0xc2, 0x9b, 0x06, 0x46, 0xd7, 0x7b, 0x84, 0xe4, 0x54, 0x93, 0x37, 0x6e, 0x99, 0x1d, 0x59, 0x54, 0xce, 0x3b, 0x3c, 0xaf, 0x47, 0x9c, 0xf8, 0xf7, 0x01, 0xd8, 0x83, 0x51, 0xae, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp521r1_2331 = { .name = "ecdh_secp521r1_2331", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2331_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2331_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2331_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 82 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2332 for ECDH, tcId is 83 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2332_peerpubkey[] = { 0x00, 0xd2, 0xcb, 0x24, 0x3b, 0xdf, 0xc5, 0xff, 0xb2, 0xba, 0xcb, 0xf4, 0x37, 0x16, 0x1f, 0x02, 0xcf, 0x22, 0x97, 0x1d, 0x8b, 0x7f, 0x9c, 0xd0, 0xe6, 0x5c, 0x17, 0x49, 0x89, 0xf5, 0xed, 0x7c, 0x9c, 0xc7, 0x52, 0xa0, 0xc6, 0xa7, 0x71, 0x9d, 0xc1, 0xbf, 0x3c, 0xbb, 0x67, 0xaf, 0x5c, 0xd6, 0x02, 0x5e, 0x31, 0x3a, 0x4b, 0x0c, 0x46, 0x42, 0x9e, 0xac, 0x13, 0x20, 0xa6, 0xce, 0xb2, 0x79, 0xda, 0xc2, 0x01, 0x80, 0x93, 0xc8, 0xff, 0xb1, 0x76, 0x7b, 0x2b, 0x50, 0x10, 0x9e, 0x40, 0xf1, 0x8d, 0xbe, 0x74, 0x8a, 0x35, 0x7d, 0xe1, 0xe2, 0x84, 0x66, 0x4a, 0xa7, 0xb1, 0x0a, 0x8d, 0xf3, 0x09, 0x2a, 0x81, 0xed, 0xc1, 0x88, 0x9d, 0x15, 0x39, 0x65, 0xeb, 0x2e, 0x4f, 0x7b, 0x31, 0x48, 0x27, 0x51, 0x2b, 0x01, 0x8b, 0xaa, 0xf3, 0x92, 0x58, 0x1e, 0x2a, 0x49, 0x94, 0x1f, 0x60, 0x61, 0x35, 0x64, 0x8f, 0x8c, }; static const unsigned char ecdh_secp521r1_2332_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2332_sharedsecret[] = { 0x00, 0xff, 0x5c, 0xaf, 0x7f, 0xd6, 0xda, 0x41, 0xa1, 0xa8, 0xbb, 0x47, 0xde, 0x3a, 0x08, 0x38, 0x83, 0xe2, 0xe3, 0x82, 0x47, 0x7c, 0x1f, 0xf1, 0xd6, 0xec, 0xaa, 0x44, 0xa1, 0x63, 0xe7, 0xbd, 0x37, 0x5b, 0x67, 0xd7, 0x01, 0x37, 0x63, 0xa7, 0x76, 0xdf, 0x38, 0xe7, 0x96, 0x62, 0x31, 0x0a, 0x74, 0x87, 0x3a, 0x4c, 0xe6, 0x12, 0x6d, 0x2e, 0xc6, 0xf6, 0x82, 0x63, 0xf2, 0x48, 0x79, 0x69, 0x97, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2332 = { .name = "ecdh_secp521r1_2332", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2332_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2332_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2332_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 83 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2333 for ECDH, tcId is 84 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2333_peerpubkey[] = { 0x01, 0xda, 0x72, 0x33, 0x0f, 0xd0, 0x0e, 0xba, 0xf4, 0xe6, 0xff, 0x8a, 0x30, 0x3d, 0x25, 0xc2, 0x52, 0x7d, 0xff, 0x19, 0xd1, 0x0d, 0x8e, 0x8a, 0xad, 0x05, 0xfd, 0x75, 0x9d, 0x98, 0x07, 0x3f, 0x26, 0x2e, 0x69, 0x3c, 0xe2, 0xfc, 0x49, 0x74, 0x7a, 0xed, 0x29, 0xe2, 0x7e, 0x32, 0x3e, 0x53, 0x5d, 0x46, 0x9f, 0x0f, 0xcd, 0x1a, 0x8a, 0x1d, 0x08, 0x60, 0x4f, 0xaf, 0xe0, 0x0d, 0x1b, 0xad, 0xc4, 0xb3, 0x00, 0xb7, 0xde, 0x13, 0xe7, 0xdc, 0xed, 0xb7, 0x37, 0x60, 0x04, 0xa9, 0xf5, 0x89, 0x92, 0x2f, 0x18, 0x7b, 0xd1, 0xbe, 0x72, 0xe2, 0xde, 0x78, 0x93, 0x87, 0x3d, 0x23, 0x92, 0xbb, 0xb8, 0x4a, 0xa8, 0x71, 0x10, 0x0f, 0x8b, 0x95, 0x54, 0x8f, 0x5d, 0xf8, 0x96, 0x62, 0xe9, 0x8b, 0x63, 0x1c, 0x4e, 0xe4, 0xd0, 0x55, 0x80, 0x96, 0xd4, 0x17, 0x0b, 0xe0, 0xc1, 0xe2, 0x1c, 0xc0, 0x59, 0x55, 0x82, 0x3b, }; static const unsigned char ecdh_secp521r1_2333_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2333_sharedsecret[] = { 0x01, 0xa6, 0x4d, 0xa0, 0x50, 0x3e, 0x2d, 0xf5, 0xd3, 0x83, 0x83, 0x7d, 0x05, 0xcd, 0x43, 0x6e, 0xa6, 0x27, 0x38, 0x1e, 0x48, 0xe3, 0x69, 0x58, 0x91, 0x17, 0x5a, 0xc8, 0xed, 0xe9, 0x16, 0x9d, 0xdf, 0x57, 0x3b, 0x66, 0x72, 0x6c, 0x28, 0x13, 0x22, 0x77, 0xbe, 0xda, 0x84, 0xbb, 0x47, 0xf2, 0x79, 0x2b, 0x41, 0x11, 0x3a, 0x0d, 0x2a, 0xca, 0x71, 0x08, 0x46, 0x18, 0xf5, 0x5d, 0xaa, 0xe5, 0x5f, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_2333 = { .name = "ecdh_secp521r1_2333", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2333_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2333_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2333_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 84 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2334 for ECDH, tcId is 85 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2334_peerpubkey[] = { 0x00, 0x77, 0xfe, 0x79, 0x58, 0x11, 0x95, 0x35, 0xca, 0x6c, 0x1a, 0x7c, 0x87, 0xbb, 0x4d, 0xc9, 0xb9, 0x36, 0x67, 0x8a, 0xb3, 0xb7, 0x57, 0xe7, 0x81, 0x69, 0x38, 0xbc, 0x85, 0x76, 0x43, 0x60, 0x6e, 0x61, 0x64, 0x7d, 0x23, 0x1b, 0x9d, 0xad, 0x3e, 0x03, 0xfc, 0x4d, 0xd2, 0x9a, 0xce, 0x5f, 0xc8, 0x23, 0xe1, 0x5f, 0x34, 0x64, 0xd8, 0xe2, 0x36, 0xd5, 0x86, 0x2b, 0x1f, 0x62, 0x80, 0xc8, 0x36, 0x92, 0x00, 0x61, 0xba, 0x73, 0x6c, 0x11, 0xff, 0xa6, 0xd0, 0xfa, 0xe6, 0xbc, 0x8f, 0x3e, 0x66, 0xba, 0xbd, 0x3c, 0x6d, 0x79, 0xb8, 0x9e, 0xe6, 0x39, 0x45, 0x9e, 0xc6, 0x5a, 0x71, 0xf1, 0x2e, 0xab, 0xcd, 0xac, 0xa4, 0x47, 0xa9, 0x93, 0x12, 0x1d, 0xc6, 0x3d, 0xde, 0x6a, 0xe0, 0xcc, 0xeb, 0xe4, 0x15, 0xf4, 0xbf, 0xe6, 0x0f, 0xe3, 0xfe, 0xc3, 0xd2, 0xf4, 0x8a, 0x08, 0x4b, 0x75, 0x9f, 0x07, 0x8a, 0xc4, }; static const unsigned char ecdh_secp521r1_2334_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2334_sharedsecret[] = { 0x01, 0x40, 0x95, 0x2c, 0x27, 0x3a, 0xb5, 0x12, 0xe3, 0xa5, 0x89, 0x34, 0xe3, 0x75, 0x4f, 0x27, 0x24, 0x63, 0x40, 0x7e, 0x61, 0x89, 0xb9, 0xc1, 0xe2, 0x59, 0xc2, 0x7f, 0x6d, 0x43, 0x3c, 0x48, 0x27, 0x53, 0x2d, 0xf6, 0x27, 0x74, 0x5a, 0xcd, 0xa6, 0x4f, 0xd1, 0x79, 0x93, 0x50, 0x8b, 0xfd, 0xef, 0x54, 0x71, 0x1f, 0x57, 0x5c, 0xff, 0xad, 0x61, 0xc7, 0x29, 0xe8, 0xd6, 0xdd, 0x87, 0x84, 0x20, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2334 = { .name = "ecdh_secp521r1_2334", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2334_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2334_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2334_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 85 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2335 for ECDH, tcId is 86 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2335_peerpubkey[] = { 0x01, 0x1d, 0x3f, 0xf1, 0x4f, 0x89, 0x06, 0xdb, 0x60, 0xc7, 0xbc, 0x09, 0xc7, 0x86, 0xbe, 0x68, 0x47, 0x76, 0x8b, 0x86, 0x84, 0x95, 0x7b, 0xf3, 0x92, 0x8c, 0x55, 0x6b, 0xf5, 0xce, 0x7a, 0x8c, 0xc8, 0x2f, 0x9a, 0xb0, 0xe6, 0x3b, 0x4b, 0xd7, 0xeb, 0x87, 0x76, 0x7b, 0x3d, 0xb2, 0x62, 0x49, 0x57, 0xc3, 0xf1, 0x03, 0xe8, 0x7b, 0x5c, 0x19, 0x7d, 0xc8, 0xc6, 0xd2, 0x50, 0x73, 0x33, 0xea, 0x56, 0x9d, 0x00, 0x4a, 0xb9, 0xee, 0xee, 0xab, 0x95, 0x00, 0x86, 0xe0, 0x30, 0xfc, 0x60, 0xb6, 0xb2, 0xe4, 0x79, 0x73, 0x58, 0x2a, 0x28, 0x2e, 0x3b, 0x01, 0x9e, 0x62, 0x74, 0x4f, 0x19, 0xc6, 0x0c, 0xa0, 0x20, 0x8e, 0x3a, 0x53, 0x7d, 0x6c, 0xa3, 0x53, 0x2c, 0x59, 0xa7, 0x7c, 0x54, 0x0b, 0xce, 0x03, 0x99, 0x98, 0x87, 0x48, 0x3d, 0xdd, 0xdf, 0xd5, 0x24, 0xb6, 0xf9, 0xd7, 0xbf, 0xb6, 0xb1, 0x13, 0x9b, 0xba, }; static const unsigned char ecdh_secp521r1_2335_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2335_sharedsecret[] = { 0x00, 0x1a, 0x3a, 0x43, 0x43, 0xa4, 0x29, 0x5b, 0x07, 0xd4, 0xb2, 0x8f, 0x71, 0x69, 0x7c, 0xaf, 0x7e, 0x36, 0x3e, 0x2f, 0x3c, 0xa2, 0x05, 0xeb, 0xb8, 0x28, 0xc4, 0x4d, 0xeb, 0x2f, 0x5b, 0xb3, 0xd9, 0x51, 0x16, 0xf3, 0x6e, 0x25, 0xe9, 0x0e, 0xb0, 0x04, 0x24, 0xc9, 0x88, 0x0b, 0x45, 0x53, 0x55, 0x4f, 0xf0, 0x1f, 0x38, 0xb5, 0x2c, 0xb3, 0x4d, 0xa6, 0x43, 0x20, 0x7d, 0x6f, 0x29, 0x31, 0x2f, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_2335 = { .name = "ecdh_secp521r1_2335", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2335_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2335_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2335_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 86 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2336 for ECDH, tcId is 87 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2336_peerpubkey[] = { 0x00, 0x9c, 0x9e, 0xb4, 0xcc, 0x6b, 0xed, 0x68, 0x9d, 0xa8, 0x15, 0xf0, 0x5e, 0x3c, 0xcd, 0x26, 0x75, 0x47, 0x3c, 0x42, 0x7d, 0x31, 0x15, 0x8f, 0x12, 0x10, 0xfd, 0x8a, 0x6a, 0xfc, 0xfb, 0x27, 0x29, 0x71, 0xef, 0x0a, 0x06, 0x96, 0xe4, 0x8f, 0xc0, 0x1e, 0xd9, 0xd8, 0x2c, 0x9b, 0x1d, 0x4b, 0xe0, 0x86, 0xfa, 0x5a, 0x13, 0x63, 0x70, 0x27, 0x80, 0x83, 0x8d, 0xa4, 0xfb, 0xd6, 0x48, 0x15, 0x36, 0xd3, 0x00, 0xb3, 0x87, 0xbd, 0xba, 0x82, 0xa5, 0xfe, 0x57, 0x73, 0x2e, 0xbe, 0xd2, 0x6a, 0x48, 0x7d, 0x03, 0x15, 0x72, 0xc2, 0x23, 0x40, 0x3c, 0x06, 0x30, 0x39, 0x61, 0x7f, 0x8e, 0x5c, 0x27, 0x02, 0xf6, 0x02, 0xe4, 0xb8, 0x75, 0x24, 0xf2, 0x98, 0x39, 0x2a, 0xe1, 0xd5, 0x86, 0x2f, 0xa0, 0xff, 0x99, 0x2e, 0x51, 0xfc, 0xe7, 0xf1, 0x45, 0x7a, 0x09, 0x91, 0xbf, 0x25, 0xf6, 0x6c, 0xf8, 0x45, 0x63, 0x9e, }; static const unsigned char ecdh_secp521r1_2336_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2336_sharedsecret[] = { 0x00, 0x10, 0x3e, 0xda, 0x70, 0x7b, 0x4d, 0x5e, 0x9a, 0x4a, 0xdc, 0x17, 0xb8, 0x8c, 0xc3, 0x41, 0x96, 0x67, 0x98, 0xb6, 0x4c, 0x24, 0x2c, 0xd1, 0x3a, 0xbd, 0xf3, 0x19, 0xb7, 0x7c, 0xb9, 0xef, 0x2f, 0x06, 0x81, 0x6e, 0xe8, 0x20, 0x89, 0x82, 0x35, 0x19, 0x8f, 0x62, 0x07, 0x1e, 0xe8, 0xb5, 0xc1, 0x73, 0x5e, 0x28, 0x8d, 0xd7, 0x5b, 0xb0, 0xe5, 0xd5, 0x47, 0x92, 0x87, 0xa0, 0x2d, 0x21, 0xe8, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_2336 = { .name = "ecdh_secp521r1_2336", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2336_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2336_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2336_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 87 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2337 for ECDH, tcId is 88 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2337_peerpubkey[] = { 0x01, 0x99, 0x3d, 0x74, 0xf0, 0xa4, 0xa1, 0x2d, 0x28, 0x04, 0xbf, 0x9e, 0x25, 0x75, 0x2f, 0xab, 0x9d, 0xc0, 0xae, 0x60, 0xab, 0xc6, 0x77, 0x2d, 0xfe, 0x10, 0xaf, 0xb0, 0x56, 0xb3, 0x26, 0x1f, 0x14, 0xfc, 0x51, 0x58, 0x4b, 0xaf, 0x25, 0x63, 0x40, 0xb3, 0x65, 0x21, 0x20, 0xf2, 0x4f, 0xac, 0x70, 0x0b, 0x72, 0x9d, 0xed, 0xec, 0x97, 0xb4, 0x21, 0xa1, 0xe9, 0x31, 0xc1, 0x7c, 0x52, 0x8d, 0x5a, 0x43, 0x00, 0x90, 0x3f, 0x97, 0x78, 0x2e, 0xc1, 0xc5, 0xaa, 0xcd, 0x7c, 0x3a, 0xb0, 0x20, 0x82, 0xd7, 0xa2, 0xf6, 0x31, 0xd9, 0x94, 0x4d, 0xc5, 0x2c, 0x9a, 0xd4, 0xe0, 0x25, 0x8a, 0x89, 0x9e, 0xfb, 0x33, 0xbd, 0x81, 0x06, 0x8a, 0xd4, 0x3d, 0x7d, 0xc6, 0x43, 0xb4, 0xd7, 0xf2, 0x39, 0xa7, 0xac, 0x42, 0xa2, 0x6f, 0x4d, 0x27, 0x80, 0x21, 0x5a, 0x68, 0x49, 0x5f, 0x79, 0xed, 0xa8, 0x1e, 0x8e, 0xad, 0x64, }; static const unsigned char ecdh_secp521r1_2337_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2337_sharedsecret[] = { 0x01, 0x08, 0x7a, 0xd9, 0x7d, 0x71, 0x21, 0x92, 0x8c, 0x8e, 0x35, 0xe2, 0xfe, 0x91, 0x5f, 0x8c, 0x90, 0xf3, 0x45, 0x0d, 0xee, 0x09, 0xd3, 0xf6, 0x76, 0x1c, 0x29, 0x04, 0x26, 0xc7, 0x43, 0x18, 0xe8, 0x8f, 0xd0, 0x44, 0x64, 0xc0, 0xfc, 0xc0, 0x43, 0x21, 0x71, 0x66, 0x7b, 0x57, 0x1d, 0x83, 0x4a, 0xe7, 0x7e, 0xcc, 0xa8, 0xa4, 0x10, 0x37, 0x96, 0x85, 0xd3, 0x0b, 0x8c, 0xd2, 0x8d, 0xc0, 0x4b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2337 = { .name = "ecdh_secp521r1_2337", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2337_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2337_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2337_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 88 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2338 for ECDH, tcId is 89 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2338_peerpubkey[] = { 0x01, 0x07, 0xd8, 0xb6, 0x3b, 0xc0, 0x95, 0x85, 0x10, 0xed, 0xda, 0xb9, 0xf1, 0x1f, 0xa3, 0x5a, 0xe4, 0xe5, 0xd9, 0x7c, 0x92, 0x30, 0x40, 0x38, 0xd8, 0xec, 0x27, 0xf6, 0xe9, 0x70, 0x05, 0xd0, 0x14, 0x3e, 0x96, 0x9c, 0x54, 0x19, 0xe8, 0x2e, 0xba, 0x50, 0x93, 0x36, 0xe2, 0x34, 0x98, 0xc5, 0xb7, 0x3e, 0x8f, 0x0b, 0x21, 0xe3, 0xd9, 0xf5, 0xcb, 0x56, 0x16, 0x09, 0x66, 0x9e, 0xf6, 0x78, 0xc7, 0xd4, 0x01, 0x96, 0xc5, 0x35, 0xb6, 0x23, 0xbe, 0x6e, 0xfa, 0x50, 0x4e, 0x96, 0x9e, 0xa7, 0x1c, 0xb9, 0x25, 0x28, 0x76, 0x08, 0x74, 0x0d, 0x04, 0xac, 0xb3, 0x42, 0xb4, 0x13, 0x58, 0x82, 0x78, 0x3d, 0xb8, 0xd2, 0x55, 0xa6, 0xd5, 0x56, 0xff, 0xc1, 0x65, 0x24, 0xba, 0xbe, 0xee, 0x06, 0xd1, 0xf2, 0x80, 0xab, 0x81, 0x71, 0x84, 0x8e, 0x7d, 0xb5, 0x4b, 0x76, 0xa3, 0xb3, 0x1e, 0x41, 0x57, 0x21, 0x96, 0x14, }; static const unsigned char ecdh_secp521r1_2338_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2338_sharedsecret[] = { 0x00, 0x74, 0xc3, 0x32, 0xbe, 0xc2, 0x02, 0x83, 0x72, 0xda, 0xc8, 0x2b, 0xb7, 0x4c, 0x3f, 0x3b, 0x4b, 0xd0, 0xf0, 0xa6, 0x52, 0x1d, 0xfd, 0xf0, 0xcc, 0xe8, 0x77, 0xb1, 0xa9, 0x9e, 0x50, 0x6e, 0xf0, 0xe4, 0xfd, 0x9b, 0xce, 0xfd, 0x33, 0x65, 0x42, 0x8f, 0x25, 0x7e, 0xd1, 0x59, 0x5d, 0xce, 0xdb, 0xef, 0xe9, 0x99, 0x28, 0xe7, 0xfa, 0x7a, 0xf8, 0x91, 0xfd, 0xc1, 0xb6, 0xff, 0x9d, 0xe1, 0x25, 0x36, }; static const wycheproof_ecdh_test ecdh_secp521r1_2338 = { .name = "ecdh_secp521r1_2338", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2338_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2338_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2338_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 89 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2339 for ECDH, tcId is 90 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2339_peerpubkey[] = { 0x01, 0xd3, 0xf5, 0x70, 0x4d, 0xbc, 0x67, 0xfe, 0x3e, 0x9e, 0xc3, 0xa0, 0x26, 0x12, 0xed, 0xf0, 0x4a, 0x82, 0xfc, 0xf9, 0xd5, 0xa4, 0x1c, 0x5a, 0x33, 0x0f, 0x4d, 0xc6, 0x5b, 0x7c, 0x1e, 0x8a, 0x92, 0x7f, 0xed, 0xf3, 0x1a, 0x52, 0xb2, 0x8b, 0xfe, 0x2b, 0x84, 0xe0, 0x8f, 0x9d, 0xd9, 0x8a, 0x26, 0x89, 0x44, 0x05, 0x53, 0xdd, 0x89, 0x19, 0xfd, 0xdd, 0x56, 0xed, 0x73, 0x6b, 0x9d, 0x06, 0x4c, 0xc3, 0x00, 0x01, 0x79, 0xaa, 0xda, 0x23, 0x20, 0x04, 0x9f, 0x18, 0x43, 0x0d, 0x32, 0xa6, 0x58, 0x89, 0xab, 0x5a, 0x98, 0x40, 0xff, 0x43, 0x38, 0x8f, 0x7e, 0x22, 0x53, 0xbe, 0x3e, 0x0e, 0xa4, 0x1d, 0x6a, 0xbe, 0x9e, 0x33, 0xb0, 0xc8, 0xa8, 0x05, 0xc8, 0x0c, 0x52, 0xfa, 0x66, 0xda, 0xb4, 0x5f, 0x7e, 0xd2, 0x04, 0x39, 0x00, 0xe3, 0xad, 0xa8, 0xd0, 0x25, 0x64, 0x8c, 0x48, 0x22, 0x74, 0x3b, 0x51, 0x94, }; static const unsigned char ecdh_secp521r1_2339_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2339_sharedsecret[] = { 0x01, 0x8d, 0x9f, 0x7f, 0x73, 0x20, 0x23, 0xd2, 0xf8, 0x70, 0x97, 0xc6, 0xf5, 0x8a, 0xfc, 0x7c, 0xee, 0x91, 0xc6, 0x7b, 0x3d, 0xf3, 0xb3, 0x18, 0x51, 0x7b, 0xbb, 0x40, 0x26, 0x64, 0xf5, 0x82, 0x94, 0x08, 0xd9, 0x11, 0xb0, 0xa9, 0xb4, 0x1c, 0xb2, 0xf7, 0xdc, 0xb9, 0x6d, 0x4f, 0xba, 0x36, 0xd9, 0x0f, 0x02, 0x75, 0xe0, 0xbf, 0x6b, 0x12, 0x53, 0xd1, 0x7c, 0xe3, 0xf2, 0x67, 0xa7, 0xb5, 0x6b, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_2339 = { .name = "ecdh_secp521r1_2339", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2339_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2339_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2339_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 90 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2340 for ECDH, tcId is 91 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2340_peerpubkey[] = { 0x00, 0xd3, 0xdc, 0x62, 0xa0, 0x70, 0xaf, 0x81, 0xad, 0x1d, 0xbe, 0x02, 0xff, 0x07, 0x58, 0x68, 0xaa, 0x35, 0xe3, 0xc3, 0xb5, 0x55, 0xf5, 0x8d, 0xa4, 0x48, 0x5e, 0x15, 0xbd, 0xe7, 0x89, 0xb6, 0x80, 0x2b, 0x57, 0x98, 0x87, 0xd7, 0x53, 0xaa, 0x13, 0x58, 0x91, 0x67, 0xdd, 0x26, 0xb1, 0x24, 0x89, 0x73, 0x4e, 0x80, 0xa3, 0x49, 0x41, 0xc6, 0x38, 0xc1, 0x02, 0xfa, 0x5c, 0x19, 0x9e, 0x4d, 0x11, 0x18, 0x01, 0x90, 0xa3, 0x53, 0x41, 0x20, 0xb8, 0xff, 0x4c, 0xf7, 0xa9, 0x38, 0x61, 0x85, 0xcd, 0x2c, 0x7a, 0xee, 0x66, 0x67, 0xf1, 0x30, 0xcf, 0xf1, 0xb0, 0x60, 0x24, 0x2d, 0x34, 0x00, 0x29, 0xc1, 0x5e, 0xb7, 0xd5, 0x21, 0xe1, 0xf6, 0xa9, 0x66, 0x3f, 0x19, 0xb2, 0xfe, 0x74, 0x0b, 0x43, 0x84, 0xbf, 0x34, 0x80, 0xe7, 0x6c, 0xbd, 0xee, 0x1d, 0xa7, 0x7b, 0x8f, 0x1c, 0x45, 0xb9, 0xe9, 0x26, 0x88, 0x4f, }; static const unsigned char ecdh_secp521r1_2340_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2340_sharedsecret[] = { 0x01, 0x6f, 0x12, 0x95, 0x31, 0xc6, 0x71, 0x38, 0x80, 0x10, 0xd4, 0x1c, 0x93, 0x4a, 0x25, 0x92, 0xd5, 0x7d, 0xe3, 0x37, 0x6d, 0xe7, 0xab, 0xfd, 0x32, 0xdb, 0x1b, 0x42, 0xb3, 0x4f, 0xdb, 0x13, 0xe5, 0xc8, 0x37, 0x1d, 0xb8, 0xc3, 0x61, 0x01, 0xea, 0x35, 0xe2, 0x6d, 0x04, 0xe1, 0x9b, 0xa8, 0x91, 0xb0, 0x81, 0x6a, 0x82, 0x1c, 0x51, 0x03, 0xa1, 0xf6, 0x8c, 0x9d, 0xc3, 0x99, 0xb1, 0xe4, 0xed, 0x50, }; static const wycheproof_ecdh_test ecdh_secp521r1_2340 = { .name = "ecdh_secp521r1_2340", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2340_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2340_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2340_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 91 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2341 for ECDH, tcId is 92 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2341_peerpubkey[] = { 0x00, 0xd5, 0x1e, 0x31, 0x63, 0x49, 0x26, 0x26, 0x9b, 0x2a, 0x08, 0x85, 0xc8, 0x28, 0xa5, 0xab, 0x76, 0xb1, 0xfe, 0x4e, 0x5e, 0x3d, 0x94, 0x1d, 0x96, 0x78, 0xe4, 0xbb, 0x07, 0x90, 0x02, 0xbd, 0x3c, 0x8e, 0x6c, 0x1f, 0x15, 0x7e, 0x63, 0xc2, 0x75, 0x73, 0x1d, 0x57, 0x37, 0x91, 0x42, 0xa8, 0xdf, 0x95, 0x87, 0xd1, 0x0b, 0x75, 0xff, 0xe6, 0x2e, 0xb4, 0x53, 0x0e, 0x75, 0xd7, 0x63, 0x40, 0x26, 0xd7, 0x00, 0x07, 0x80, 0xe8, 0xbc, 0xea, 0x8d, 0x13, 0x99, 0x94, 0x3f, 0x5b, 0xd0, 0xf4, 0xfd, 0x18, 0x37, 0xdb, 0x2f, 0x9b, 0xe7, 0xfc, 0x46, 0x69, 0xd0, 0x42, 0x2c, 0x42, 0x8c, 0x22, 0x3d, 0xa5, 0x3b, 0x95, 0x66, 0xef, 0x0d, 0x27, 0xbb, 0x64, 0xca, 0xe0, 0x1d, 0x9f, 0x94, 0x9d, 0x1a, 0x74, 0x4e, 0x8b, 0x0e, 0x79, 0x27, 0x80, 0xd1, 0xa2, 0x43, 0xa0, 0x79, 0x39, 0x54, 0x18, 0x16, 0x6d, 0x17, 0x6b, }; static const unsigned char ecdh_secp521r1_2341_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2341_sharedsecret[] = { 0x00, 0xf5, 0x55, 0x04, 0xf1, 0x71, 0x4e, 0x07, 0x70, 0x2a, 0xcb, 0x1c, 0x59, 0x4d, 0xd2, 0x46, 0x60, 0x3f, 0xb7, 0x1f, 0x11, 0xe4, 0x9d, 0xe5, 0x90, 0x6a, 0xcf, 0x6d, 0xc3, 0xbe, 0xf6, 0xa2, 0x40, 0x2e, 0x1c, 0x5d, 0xad, 0x88, 0x31, 0xaa, 0x18, 0x89, 0x45, 0x31, 0xca, 0xe0, 0x87, 0xa2, 0xdd, 0xa4, 0x0f, 0xe2, 0xdb, 0x58, 0x2d, 0x3c, 0x20, 0xd6, 0x02, 0xaf, 0x62, 0xdc, 0x12, 0xb7, 0xe2, 0x95, }; static const wycheproof_ecdh_test ecdh_secp521r1_2341 = { .name = "ecdh_secp521r1_2341", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2341_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2341_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2341_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 92 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2342 for ECDH, tcId is 93 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2342_peerpubkey[] = { 0x01, 0x9d, 0x77, 0x70, 0xd5, 0xd9, 0xdb, 0xe5, 0x07, 0x86, 0xec, 0x90, 0x9d, 0x07, 0x1f, 0x12, 0xd0, 0xb6, 0xd1, 0x0c, 0x8b, 0x1d, 0xdb, 0xf5, 0x46, 0xd0, 0xe6, 0xf4, 0xa3, 0xff, 0x7e, 0x04, 0x76, 0xf0, 0x44, 0x72, 0xee, 0xe3, 0x3d, 0x87, 0x75, 0x58, 0x65, 0x04, 0xf0, 0x05, 0xe8, 0x23, 0x29, 0xcd, 0x6b, 0x6c, 0xae, 0x3f, 0x63, 0x01, 0x2a, 0x37, 0xab, 0x16, 0xc4, 0x7f, 0x27, 0xce, 0xb3, 0x6c, 0x00, 0x9d, 0x6b, 0x67, 0x0e, 0xb3, 0x3f, 0xef, 0xca, 0xfa, 0x11, 0x85, 0x7f, 0x5c, 0x3b, 0xab, 0x4f, 0xbe, 0x41, 0xc1, 0x74, 0x65, 0x0e, 0x25, 0xe4, 0x9c, 0x65, 0xac, 0x63, 0xcd, 0xd2, 0xc2, 0xa8, 0xf8, 0xf6, 0x05, 0xd7, 0xe2, 0x67, 0xec, 0x20, 0x23, 0xf3, 0x99, 0x96, 0xb8, 0xe8, 0x25, 0xdd, 0x04, 0x31, 0x82, 0x21, 0x08, 0xe2, 0xc0, 0x1f, 0xf0, 0x77, 0x57, 0xd2, 0x49, 0x58, 0x05, 0xb4, 0x4b, }; static const unsigned char ecdh_secp521r1_2342_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2342_sharedsecret[] = { 0x01, 0xb6, 0x3a, 0x08, 0xa8, 0xfe, 0xa8, 0x20, 0xed, 0x8c, 0x01, 0xf0, 0xb8, 0x48, 0x25, 0x49, 0xa1, 0x36, 0x06, 0xbd, 0x95, 0xa7, 0xf3, 0x68, 0x9f, 0xdf, 0xca, 0x6c, 0x3f, 0x4e, 0x3d, 0x34, 0x9c, 0x7d, 0x41, 0x84, 0x7f, 0x13, 0x4d, 0x06, 0xfa, 0xbc, 0x01, 0x2b, 0xff, 0xe9, 0x8c, 0xc6, 0xe1, 0x6e, 0xf5, 0x73, 0xb5, 0x34, 0xb3, 0xd6, 0x47, 0x92, 0xd1, 0x2d, 0x0c, 0xd3, 0xf1, 0xcc, 0xf1, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2342 = { .name = "ecdh_secp521r1_2342", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2342_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2342_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2342_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 93 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2343 for ECDH, tcId is 94 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2343_peerpubkey[] = { 0x01, 0xf3, 0x83, 0xca, 0x1f, 0xa8, 0xfb, 0xa4, 0xec, 0x01, 0x31, 0x92, 0x7e, 0x66, 0x88, 0xa3, 0x74, 0xf1, 0xfb, 0xf0, 0x4f, 0x2e, 0x79, 0x3b, 0x6b, 0x06, 0x31, 0xd1, 0x9c, 0x24, 0xec, 0x6c, 0xd7, 0x5c, 0x52, 0xd0, 0xb1, 0x9e, 0xc2, 0x7c, 0x37, 0x7a, 0x4a, 0xc4, 0x83, 0x4b, 0xc9, 0x90, 0x01, 0x62, 0x42, 0x04, 0x55, 0x21, 0x54, 0xbe, 0xa2, 0x98, 0x56, 0x63, 0x00, 0x64, 0x3c, 0x63, 0x28, 0x7c, 0x00, 0xbd, 0x95, 0x61, 0x7d, 0x16, 0x55, 0xdc, 0xcc, 0x5b, 0x8a, 0xd5, 0x0f, 0xe7, 0xb1, 0xc0, 0x0b, 0xd5, 0x11, 0x1b, 0x00, 0x33, 0x8d, 0x6e, 0x59, 0x87, 0xa0, 0x74, 0x2f, 0x60, 0x8b, 0x74, 0xa9, 0x35, 0x02, 0xb1, 0x26, 0x0f, 0xd1, 0x93, 0xb3, 0xbd, 0x3a, 0x90, 0xc8, 0x43, 0xc1, 0x34, 0x4a, 0xf1, 0x63, 0x87, 0x73, 0x18, 0x90, 0x36, 0x63, 0x7c, 0x3d, 0x75, 0x04, 0xd5, 0x0e, 0x80, 0x65, 0x55, }; static const unsigned char ecdh_secp521r1_2343_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2343_sharedsecret[] = { 0x01, 0x53, 0x53, 0xc0, 0x8c, 0xa7, 0xc4, 0x84, 0xe2, 0x7a, 0x3e, 0x04, 0xc1, 0xd8, 0xdf, 0xee, 0xec, 0xac, 0x17, 0x3c, 0x2b, 0x6e, 0x2a, 0x5d, 0xbc, 0xb0, 0xda, 0x52, 0x23, 0xe6, 0x34, 0xbd, 0x2d, 0x52, 0x7d, 0x8b, 0x34, 0xba, 0x0e, 0x59, 0x2c, 0xaf, 0x9d, 0x62, 0x34, 0xfc, 0x54, 0x45, 0x2c, 0x5f, 0xb5, 0x05, 0x83, 0x3a, 0x97, 0x70, 0x8c, 0xcb, 0x8d, 0xeb, 0xc4, 0xdf, 0x5d, 0xca, 0xcb, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2343 = { .name = "ecdh_secp521r1_2343", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2343_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2343_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2343_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 94 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2344 for ECDH, tcId is 95 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2344_peerpubkey[] = { 0x00, 0x5d, 0x11, 0xff, 0xc0, 0x3c, 0x08, 0xae, 0x32, 0x3c, 0xb9, 0x38, 0xfb, 0x6f, 0x2a, 0x33, 0xef, 0xbc, 0xbd, 0x61, 0xa6, 0x58, 0x40, 0xc3, 0x3b, 0x20, 0x72, 0x65, 0xec, 0x8a, 0xdd, 0x07, 0x64, 0xd5, 0x9e, 0x58, 0x40, 0xa8, 0x5a, 0x06, 0x2b, 0xfb, 0x1f, 0x70, 0x55, 0x59, 0xc1, 0x95, 0x4a, 0xee, 0x96, 0xe2, 0x3c, 0x88, 0x8e, 0x0a, 0xb6, 0x70, 0x4f, 0x36, 0x2b, 0xf5, 0xc5, 0x88, 0x82, 0xf7, 0x01, 0x3d, 0x7a, 0x4a, 0xf3, 0xb3, 0xa5, 0x8a, 0xd1, 0x96, 0x12, 0xa1, 0xc3, 0x71, 0x23, 0x43, 0x88, 0xd8, 0xc0, 0x6f, 0x53, 0xf0, 0x3b, 0x39, 0xe8, 0x4c, 0x22, 0x55, 0x7c, 0xc6, 0x64, 0x1a, 0x55, 0x80, 0x68, 0x7b, 0xb0, 0x86, 0x32, 0xee, 0xd3, 0x1e, 0x0c, 0xc1, 0x14, 0xd1, 0x79, 0xda, 0x68, 0x65, 0x37, 0x6a, 0x9d, 0x9b, 0x0e, 0xec, 0x67, 0xc1, 0xc5, 0x98, 0xee, 0x97, 0x2b, 0x77, 0x1b, 0x6e, }; static const unsigned char ecdh_secp521r1_2344_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2344_sharedsecret[] = { 0x01, 0x74, 0x0f, 0x76, 0xc8, 0xd2, 0xbb, 0xd7, 0x17, 0x9f, 0xbe, 0xd6, 0x14, 0x12, 0x3f, 0xe2, 0xfd, 0xbb, 0x85, 0xfe, 0x82, 0x20, 0x30, 0x0b, 0x40, 0xcb, 0xbb, 0x53, 0x9d, 0x47, 0x54, 0xc5, 0xef, 0x63, 0xf7, 0xb2, 0xbc, 0x27, 0xe1, 0x29, 0x47, 0x8e, 0x7a, 0xce, 0xec, 0x83, 0x47, 0x13, 0xce, 0xba, 0x27, 0xe2, 0xf6, 0x79, 0x53, 0x44, 0x37, 0x2d, 0x3c, 0x4d, 0x93, 0x5a, 0x9c, 0x9e, 0x46, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_2344 = { .name = "ecdh_secp521r1_2344", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2344_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2344_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2344_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 95 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2345 for ECDH, tcId is 96 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2345_peerpubkey[] = { 0x01, 0xe9, 0xe3, 0x95, 0xfe, 0x1b, 0x0b, 0x16, 0x62, 0x25, 0x6a, 0x4b, 0x59, 0x53, 0xe9, 0x89, 0x71, 0xdc, 0xee, 0xe0, 0x98, 0xb3, 0x4f, 0x9f, 0xaa, 0x87, 0xc0, 0x7a, 0x15, 0xe2, 0xd9, 0x61, 0x8e, 0x71, 0x3f, 0x98, 0xcc, 0x4f, 0x8e, 0x89, 0xd6, 0x6e, 0x06, 0xbf, 0x7f, 0x6b, 0x5b, 0x2e, 0x01, 0x24, 0x91, 0x85, 0x1b, 0x11, 0xd7, 0x11, 0x41, 0x38, 0x5f, 0xa9, 0xb4, 0x33, 0x47, 0xc4, 0x82, 0x3f, 0x00, 0x82, 0x05, 0xa3, 0x91, 0xbb, 0x03, 0x75, 0x0c, 0x79, 0x51, 0xf4, 0x10, 0x69, 0x1d, 0xd4, 0x2c, 0xf3, 0xd7, 0x1d, 0xf5, 0xf7, 0x6b, 0x98, 0xc0, 0xd0, 0x82, 0x46, 0x0c, 0x21, 0xf9, 0x63, 0x61, 0x01, 0x39, 0x52, 0x22, 0x4d, 0xda, 0x74, 0x63, 0xcd, 0xe1, 0x6f, 0x24, 0x2c, 0x34, 0xc6, 0x26, 0x73, 0xd9, 0x15, 0x6a, 0xed, 0x72, 0x60, 0xe7, 0xb0, 0x17, 0x57, 0xee, 0xe6, 0xbe, 0xa6, 0x0e, 0xe5, }; static const unsigned char ecdh_secp521r1_2345_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2345_sharedsecret[] = { 0x01, 0x73, 0x42, 0x53, 0xe8, 0xd5, 0xe9, 0x30, 0x8c, 0xd5, 0x1b, 0xf0, 0x41, 0x04, 0xee, 0x08, 0xd1, 0x63, 0xac, 0xb5, 0x90, 0xb1, 0xa9, 0x55, 0x89, 0x64, 0x47, 0xb8, 0xa2, 0x55, 0xfc, 0xd3, 0xc1, 0x25, 0x6b, 0x4e, 0x86, 0xb9, 0xf3, 0x16, 0xef, 0xf4, 0xd7, 0x61, 0x3b, 0x38, 0x29, 0xf5, 0x78, 0x59, 0x61, 0xed, 0xa4, 0xee, 0x9e, 0xdd, 0xed, 0xa4, 0xdb, 0x4d, 0x60, 0xaf, 0x19, 0xe3, 0x19, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_2345 = { .name = "ecdh_secp521r1_2345", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2345_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2345_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2345_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 96 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2346 for ECDH, tcId is 97 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2346_peerpubkey[] = { 0x01, 0x64, 0x01, 0x6e, 0x2b, 0xc3, 0x6f, 0xa9, 0xef, 0x56, 0x71, 0x3d, 0xa8, 0x9a, 0xcf, 0x0b, 0x04, 0x80, 0x82, 0xdc, 0x63, 0x11, 0x56, 0x74, 0x0e, 0xc8, 0xec, 0xd2, 0x2c, 0x12, 0x38, 0x48, 0x83, 0x71, 0x28, 0x43, 0x45, 0xa9, 0x6e, 0xce, 0xf6, 0xdc, 0xdd, 0xa2, 0xe1, 0x3b, 0x4f, 0x2b, 0x94, 0x91, 0xc3, 0x86, 0x27, 0x48, 0x97, 0xfa, 0x13, 0xc6, 0xb2, 0x31, 0x3c, 0x50, 0x00, 0x41, 0x97, 0x55, 0x01, 0xc9, 0x0a, 0x40, 0x54, 0x31, 0x00, 0x55, 0x32, 0x37, 0x7c, 0x20, 0x4b, 0xac, 0x9a, 0x0d, 0x9d, 0x22, 0x65, 0x42, 0x58, 0x4f, 0xbe, 0x3c, 0x89, 0xf7, 0x85, 0xc7, 0x08, 0xa2, 0x33, 0x99, 0xa1, 0xbd, 0x14, 0xda, 0xa3, 0xe6, 0x8c, 0xc7, 0x6a, 0xed, 0x9f, 0x5f, 0xd4, 0xbf, 0xbe, 0x4e, 0xec, 0xab, 0x4a, 0x7a, 0xd2, 0xa0, 0x01, 0x70, 0xda, 0xd3, 0x7e, 0x6f, 0xe5, 0x6e, 0x92, 0x5e, 0x6b, 0xfe, }; static const unsigned char ecdh_secp521r1_2346_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2346_sharedsecret[] = { 0x00, 0x9c, 0x62, 0x34, 0x17, 0x1b, 0x4c, 0x43, 0xf7, 0x9f, 0xf0, 0xad, 0x95, 0x81, 0x2e, 0x36, 0xb0, 0x78, 0x4a, 0xd5, 0x92, 0x53, 0xd2, 0x0e, 0xa0, 0xcb, 0x98, 0x63, 0x3f, 0xb0, 0x63, 0xff, 0xd8, 0xaa, 0x22, 0xa2, 0xdc, 0xba, 0x29, 0xd4, 0x11, 0x6c, 0xd7, 0x07, 0x37, 0xc1, 0xb1, 0xf6, 0xeb, 0xab, 0x47, 0x31, 0xc5, 0xb8, 0xa4, 0x55, 0x78, 0x85, 0x97, 0xa6, 0x07, 0xb5, 0xa4, 0x5b, 0xd5, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_2346 = { .name = "ecdh_secp521r1_2346", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2346_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2346_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2346_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 97 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2347 for ECDH, tcId is 98 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2347_peerpubkey[] = { 0x01, 0xd3, 0x6d, 0x2b, 0x3e, 0xc4, 0x25, 0xa6, 0xc2, 0x50, 0x7c, 0x4d, 0xdf, 0xb5, 0xb4, 0xa1, 0x0e, 0xc4, 0xd4, 0xa1, 0x50, 0xc5, 0xc2, 0xb8, 0x0a, 0x26, 0x3b, 0xad, 0xde, 0xbd, 0x31, 0x98, 0x79, 0x7e, 0x97, 0xed, 0x7d, 0x0c, 0xca, 0x81, 0x8c, 0xf4, 0xdd, 0xd4, 0x7f, 0x61, 0x34, 0xb7, 0xa6, 0xd2, 0xb0, 0xa1, 0x5e, 0xe6, 0x09, 0x73, 0xf9, 0xd7, 0xda, 0x22, 0x0f, 0x62, 0x80, 0x0c, 0x54, 0x67, 0x01, 0x1b, 0xbb, 0x5f, 0x8e, 0x9d, 0xf6, 0x5b, 0x9b, 0x2c, 0x10, 0x5e, 0x4d, 0x8f, 0x6d, 0xbd, 0xc4, 0xf2, 0x3f, 0x25, 0x6b, 0x53, 0xb4, 0x7b, 0xc2, 0x89, 0x2c, 0x29, 0x5e, 0x7c, 0xbd, 0xb4, 0xaa, 0xe8, 0x18, 0x58, 0xba, 0x66, 0x44, 0x32, 0x55, 0x65, 0x9b, 0xea, 0xa3, 0x08, 0xae, 0xa4, 0xc5, 0x09, 0xc9, 0x9d, 0x57, 0x8f, 0xdf, 0xb8, 0x73, 0xf5, 0x1f, 0xf5, 0x36, 0x81, 0xae, 0xa6, 0x22, 0xe0, }; static const unsigned char ecdh_secp521r1_2347_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2347_sharedsecret[] = { 0x01, 0xce, 0xc1, 0xf0, 0x27, 0xa1, 0x0d, 0xe4, 0xa6, 0x90, 0x5e, 0xa3, 0x2f, 0x53, 0x48, 0x51, 0xa2, 0xf2, 0x3d, 0xdc, 0x9e, 0x7e, 0xcd, 0x3d, 0x24, 0xb8, 0xb8, 0x8b, 0xe0, 0x1f, 0x76, 0x39, 0xca, 0xc7, 0x84, 0x7c, 0x9a, 0xbd, 0xbe, 0x74, 0x6c, 0x17, 0x1a, 0x91, 0x3d, 0x67, 0x19, 0xd7, 0xc2, 0xa0, 0xc0, 0x35, 0x9c, 0x40, 0x36, 0x36, 0x0b, 0xe1, 0xe7, 0x5e, 0x8b, 0x2f, 0x7a, 0xaa, 0x67, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2347 = { .name = "ecdh_secp521r1_2347", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2347_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2347_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2347_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 98 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2348 for ECDH, tcId is 99 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2348_peerpubkey[] = { 0x00, 0xdb, 0x63, 0xbd, 0x5a, 0xee, 0x53, 0xbd, 0x63, 0xfc, 0xe0, 0x54, 0x06, 0x3d, 0xc3, 0x64, 0xaa, 0xe4, 0xf3, 0x20, 0xf7, 0xad, 0x2d, 0xf2, 0x94, 0x14, 0x04, 0x31, 0xad, 0x15, 0x50, 0xc7, 0xea, 0xb3, 0x71, 0xa1, 0x3d, 0x4d, 0xbb, 0x78, 0xf6, 0x3d, 0x71, 0x88, 0xe6, 0x1d, 0xc8, 0xe2, 0x68, 0x88, 0x8d, 0x93, 0x19, 0x90, 0x6a, 0x28, 0xf3, 0x60, 0xbf, 0x7c, 0xe8, 0x68, 0xeb, 0x67, 0xd0, 0xc7, 0x00, 0x7d, 0x66, 0x37, 0x11, 0x52, 0x95, 0x4f, 0x48, 0x58, 0x1d, 0xb9, 0x1c, 0x15, 0x33, 0xdd, 0xf3, 0xb1, 0x48, 0xb7, 0xe9, 0x6a, 0x5e, 0x99, 0x64, 0xf7, 0x06, 0xcb, 0x3f, 0x6e, 0xe8, 0x05, 0x79, 0x3f, 0xd7, 0xc5, 0x76, 0x7e, 0x79, 0xf4, 0x26, 0x23, 0x33, 0x08, 0xc8, 0xef, 0xfc, 0x1d, 0xa7, 0x1e, 0xc7, 0x37, 0x44, 0xa4, 0x9a, 0x69, 0xfb, 0x5f, 0x66, 0x24, 0x07, 0xff, 0x54, 0xd9, 0x48, 0x79, }; static const unsigned char ecdh_secp521r1_2348_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2348_sharedsecret[] = { 0x00, 0x5f, 0x90, 0x0e, 0xfb, 0xba, 0xd4, 0x97, 0xee, 0x90, 0x4b, 0x80, 0xfc, 0xe0, 0x70, 0x29, 0xad, 0x3f, 0x97, 0x9c, 0xb3, 0x42, 0x3d, 0xc7, 0xd1, 0x6c, 0x9c, 0xf0, 0x85, 0x3f, 0x89, 0xa4, 0x87, 0xdf, 0xdc, 0x5c, 0xc3, 0x45, 0x30, 0xaf, 0xa8, 0xcc, 0xdf, 0x5a, 0x0e, 0x37, 0x6e, 0x27, 0x8a, 0x09, 0x1b, 0xd4, 0xf6, 0x07, 0x7c, 0x94, 0x1d, 0xed, 0x6f, 0x1b, 0x0f, 0xc8, 0x84, 0x01, 0x00, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2348 = { .name = "ecdh_secp521r1_2348", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2348_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2348_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2348_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 99 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2349 for ECDH, tcId is 100 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2349_peerpubkey[] = { 0x01, 0x56, 0x81, 0xf7, 0x78, 0x6b, 0x77, 0x07, 0x9c, 0x6a, 0xa9, 0xcc, 0xda, 0xa5, 0x8f, 0x39, 0xe9, 0xec, 0x4e, 0x14, 0xe2, 0x4d, 0x1b, 0xb3, 0xf0, 0xd6, 0xcb, 0x56, 0xbf, 0x7b, 0x78, 0x76, 0x1c, 0x3b, 0xf5, 0x8c, 0x7f, 0xb7, 0x6a, 0x22, 0x94, 0x3b, 0xb2, 0x5d, 0xb8, 0x0e, 0xb0, 0xaf, 0x74, 0x10, 0xd6, 0x07, 0x15, 0x4e, 0xf9, 0x27, 0x15, 0x2a, 0x89, 0x21, 0xfd, 0xef, 0xe7, 0x28, 0x8d, 0xba, 0x01, 0xe5, 0xb1, 0x9c, 0x82, 0x7b, 0x28, 0x85, 0x58, 0xda, 0x2d, 0xf5, 0xf9, 0xfc, 0xa3, 0x13, 0x7e, 0xd0, 0x69, 0x40, 0x78, 0xd3, 0xf6, 0x00, 0xaa, 0x7a, 0x49, 0x5f, 0xe2, 0x8f, 0x41, 0x8d, 0x45, 0x8b, 0xc5, 0x52, 0x76, 0xbf, 0x7d, 0x29, 0x69, 0xac, 0x24, 0x29, 0xe2, 0xaf, 0x8d, 0x05, 0xd4, 0x11, 0x2e, 0xdb, 0xe9, 0x3b, 0x04, 0x1f, 0x2d, 0x5d, 0x56, 0xa4, 0xfe, 0xe5, 0xfb, 0x91, 0x8b, 0x69, }; static const unsigned char ecdh_secp521r1_2349_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2349_sharedsecret[] = { 0x01, 0x24, 0xc2, 0x3c, 0x00, 0xd3, 0x03, 0x29, 0x06, 0x56, 0x11, 0x07, 0x5b, 0x02, 0xe5, 0x5c, 0x3c, 0x66, 0x7b, 0xbe, 0x3d, 0x65, 0x16, 0x0f, 0xa1, 0x89, 0x12, 0x8a, 0xf4, 0x55, 0x24, 0x0e, 0xb6, 0x77, 0xa1, 0xee, 0x07, 0xca, 0x87, 0x89, 0xbe, 0x7a, 0x8e, 0xd0, 0x74, 0xce, 0x17, 0x50, 0x4a, 0x59, 0x03, 0xd9, 0xa7, 0x52, 0x68, 0x1a, 0xfe, 0x63, 0x42, 0xb0, 0x54, 0x86, 0x6c, 0xbb, 0xf1, 0x99, }; static const wycheproof_ecdh_test ecdh_secp521r1_2349 = { .name = "ecdh_secp521r1_2349", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2349_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2349_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2349_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 100 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2350 for ECDH, tcId is 101 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2350_peerpubkey[] = { 0x00, 0xb3, 0xe7, 0xc9, 0x77, 0x4c, 0x52, 0x3b, 0xbe, 0xf8, 0x57, 0xd5, 0x9f, 0x8c, 0xce, 0xcd, 0x06, 0x7f, 0xd1, 0x8c, 0x7d, 0x77, 0x77, 0xc8, 0x2c, 0x68, 0x14, 0x6b, 0x33, 0x8e, 0x14, 0xc5, 0xd0, 0x99, 0x8b, 0x3b, 0x96, 0x23, 0x54, 0xd9, 0xb1, 0x07, 0x33, 0x7a, 0xfd, 0x41, 0x37, 0x23, 0x30, 0x47, 0xad, 0xb3, 0x52, 0xb8, 0xb1, 0xe2, 0x15, 0xfc, 0xac, 0x25, 0xf1, 0xe3, 0x39, 0x59, 0x40, 0x77, 0x01, 0x48, 0xe5, 0xce, 0xd5, 0x84, 0x10, 0x18, 0x3d, 0x15, 0xc7, 0x19, 0xf8, 0xae, 0x4c, 0x19, 0xd9, 0x5f, 0x91, 0x0f, 0x35, 0x83, 0xde, 0x6e, 0x0b, 0x63, 0xb9, 0x38, 0xe2, 0xd5, 0xec, 0x67, 0x07, 0x55, 0xdc, 0x24, 0xcb, 0xf0, 0x8f, 0x93, 0x40, 0xf9, 0x14, 0xc5, 0x53, 0x4b, 0xf7, 0xf1, 0x48, 0x39, 0x47, 0xb6, 0xb4, 0x06, 0x26, 0xf1, 0xc7, 0xfe, 0x0e, 0x4d, 0x8e, 0xd8, 0x43, 0x02, 0x7b, 0x14, }; static const unsigned char ecdh_secp521r1_2350_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2350_sharedsecret[] = { 0x01, 0x7a, 0x94, 0x0d, 0xca, 0x15, 0xb1, 0xdb, 0x9a, 0x1e, 0x3f, 0x54, 0xc0, 0xaa, 0x8e, 0xb0, 0x72, 0xdc, 0xe1, 0x16, 0x50, 0xed, 0x92, 0x0a, 0x29, 0x31, 0xc6, 0x8b, 0x93, 0x0c, 0x34, 0xb5, 0x81, 0x1d, 0x07, 0x6c, 0x0a, 0x3d, 0x10, 0x39, 0x7a, 0x18, 0xbd, 0x0a, 0x7a, 0x87, 0xfa, 0xa7, 0x8a, 0x6d, 0x98, 0x4f, 0xb4, 0x8b, 0x3e, 0xe5, 0x3d, 0x20, 0xbc, 0xda, 0x84, 0xcb, 0x2e, 0xa7, 0xba, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_2350 = { .name = "ecdh_secp521r1_2350", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2350_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2350_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2350_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 101 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2351 for ECDH, tcId is 102 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2351_peerpubkey[] = { 0x00, 0xaf, 0xf0, 0xe5, 0x21, 0x6e, 0xe7, 0xcd, 0x11, 0x5c, 0xc6, 0x30, 0x90, 0x9d, 0x20, 0xfd, 0x3c, 0x38, 0x23, 0x57, 0xf0, 0x74, 0x44, 0x80, 0xd8, 0x6b, 0x17, 0x7a, 0xf4, 0xff, 0x94, 0x71, 0xa1, 0xe3, 0x60, 0x53, 0x2a, 0x92, 0xa5, 0x82, 0x52, 0xd9, 0x3d, 0x1e, 0xa1, 0x6a, 0xb4, 0x7f, 0x4c, 0x09, 0x0b, 0x6a, 0xef, 0xdc, 0x6a, 0x7a, 0x37, 0x78, 0xd1, 0x5c, 0x68, 0xa8, 0x66, 0x75, 0x8b, 0x9a, 0x00, 0x98, 0xe2, 0x3c, 0x43, 0x72, 0x37, 0x2a, 0x52, 0x7b, 0xe2, 0xc6, 0xc3, 0x11, 0x73, 0x80, 0xb4, 0x83, 0x6d, 0x5e, 0xbd, 0x08, 0x07, 0xb8, 0x0c, 0xd9, 0xc6, 0xef, 0xd9, 0x6a, 0x7c, 0xf0, 0x75, 0x7c, 0x2a, 0x63, 0x5b, 0x9a, 0xd6, 0xdf, 0xe0, 0x11, 0x57, 0xff, 0x92, 0xde, 0xd3, 0x13, 0xa7, 0x8c, 0xad, 0x96, 0x80, 0x82, 0xaf, 0x33, 0xd1, 0x36, 0x87, 0x3f, 0x80, 0x8d, 0x8e, 0x49, 0x16, 0x26, }; static const unsigned char ecdh_secp521r1_2351_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2351_sharedsecret[] = { 0x01, 0xb9, 0x84, 0x47, 0xf0, 0xc3, 0xa5, 0x7d, 0xef, 0x59, 0x2c, 0xc0, 0x59, 0x9c, 0xe7, 0x40, 0x6f, 0x14, 0x81, 0x86, 0xf9, 0x4c, 0xd3, 0x07, 0xbf, 0x87, 0xe4, 0xab, 0x27, 0x3d, 0x3a, 0x9b, 0x5a, 0xe6, 0x36, 0x9b, 0x26, 0x69, 0x2c, 0xab, 0x5c, 0x24, 0xbc, 0xe5, 0x9c, 0x13, 0x95, 0x98, 0x44, 0x07, 0x77, 0x83, 0xec, 0xfe, 0xb7, 0x77, 0xfc, 0xf3, 0xce, 0x99, 0x8f, 0x65, 0x6a, 0x23, 0x82, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2351 = { .name = "ecdh_secp521r1_2351", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2351_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2351_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2351_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 102 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2352 for ECDH, tcId is 103 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2352_peerpubkey[] = { 0x01, 0xad, 0x13, 0xaf, 0x79, 0xe8, 0xbd, 0xa3, 0x31, 0x20, 0xa2, 0xa9, 0x24, 0xb4, 0x81, 0x00, 0x11, 0x17, 0x47, 0x9c, 0x8f, 0xbe, 0xcc, 0xd0, 0xa6, 0xaf, 0x4f, 0x50, 0xed, 0xbf, 0x7d, 0xf8, 0xe3, 0x95, 0xe3, 0x2f, 0xf6, 0xa1, 0xe5, 0xb2, 0xc1, 0xb8, 0x74, 0x33, 0x6c, 0x44, 0xc6, 0x5e, 0x1e, 0xed, 0x20, 0x9e, 0x54, 0x7b, 0x3c, 0x57, 0x61, 0xca, 0xb9, 0x6f, 0x56, 0xda, 0xf1, 0x7b, 0xc6, 0x93, 0x00, 0x28, 0x6b, 0xd6, 0xb0, 0x20, 0x6c, 0xbc, 0xc7, 0xa9, 0x9e, 0x78, 0x07, 0xf1, 0x5d, 0xf0, 0xff, 0x83, 0xcc, 0x17, 0xe4, 0x47, 0x4f, 0x17, 0x69, 0xc4, 0x73, 0xe7, 0x14, 0x1c, 0x38, 0x4b, 0x8a, 0x39, 0xf5, 0xb5, 0xab, 0xcd, 0xcf, 0xc7, 0x04, 0x97, 0x05, 0x7a, 0xe7, 0xe0, 0x9b, 0x70, 0x7a, 0xc3, 0xa7, 0x1b, 0x82, 0x4a, 0x55, 0xd4, 0xd8, 0x64, 0x8c, 0x5a, 0x95, 0xd6, 0x3b, 0xd8, 0x22, 0x41, }; static const unsigned char ecdh_secp521r1_2352_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2352_sharedsecret[] = { 0x00, 0xa3, 0xcd, 0x90, 0x0b, 0x98, 0x85, 0x62, 0x9a, 0xe8, 0xd8, 0x3f, 0xd8, 0x14, 0x3e, 0x7d, 0x8a, 0x29, 0x1c, 0xd9, 0x33, 0x16, 0x3b, 0xc6, 0x58, 0xf3, 0x79, 0x13, 0x51, 0x18, 0x37, 0x35, 0x50, 0x82, 0xd5, 0xf3, 0x94, 0x25, 0xea, 0x32, 0x2b, 0x19, 0xd6, 0x1d, 0xb3, 0xdd, 0xa0, 0x5f, 0x25, 0x5e, 0x14, 0x0e, 0xec, 0x4e, 0x98, 0xa7, 0xa1, 0x01, 0x21, 0xeb, 0x29, 0x18, 0xdc, 0xf1, 0x26, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2352 = { .name = "ecdh_secp521r1_2352", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2352_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2352_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2352_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 103 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2353 for ECDH, tcId is 104 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2353_peerpubkey[] = { 0x00, 0xd4, 0xd7, 0x6b, 0x40, 0xd9, 0x70, 0x46, 0xcc, 0xf0, 0x2d, 0x5b, 0xd1, 0x31, 0xa5, 0x45, 0x2d, 0x91, 0x19, 0x5a, 0x13, 0x20, 0x4b, 0x6e, 0xb4, 0xf7, 0x1a, 0x5d, 0xa9, 0xdc, 0x91, 0x56, 0xf6, 0x19, 0xaf, 0x8b, 0xfa, 0xe8, 0xfb, 0xac, 0xed, 0x47, 0x5c, 0x27, 0xca, 0x89, 0x45, 0x6f, 0x35, 0xe5, 0x47, 0x68, 0x8a, 0x6d, 0x0d, 0x99, 0x48, 0xfe, 0xa4, 0x9e, 0xf4, 0xb7, 0x5b, 0x5e, 0x83, 0x9c, 0x01, 0x73, 0x8d, 0xb8, 0xb3, 0xd3, 0xff, 0xfb, 0x1a, 0xb6, 0x97, 0xfb, 0xc8, 0x14, 0x6a, 0x70, 0xcd, 0xd6, 0x57, 0xd3, 0x07, 0xa6, 0xe6, 0xca, 0x8a, 0x33, 0x86, 0x61, 0xa0, 0x81, 0x31, 0xe0, 0x5c, 0x68, 0x0e, 0xe9, 0xda, 0x4c, 0x88, 0xa9, 0x0f, 0xde, 0x96, 0xc5, 0x63, 0x02, 0x27, 0xc2, 0xfd, 0x43, 0x23, 0xf3, 0x02, 0xd5, 0x3a, 0x0b, 0x51, 0x21, 0x16, 0x3c, 0xcc, 0x40, 0xbe, 0xfa, 0xf5, 0x33, }; static const unsigned char ecdh_secp521r1_2353_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2353_sharedsecret[] = { 0x00, 0x93, 0x1d, 0x8a, 0xa3, 0x8c, 0x53, 0x0d, 0xb8, 0xd5, 0xe7, 0x7d, 0xaa, 0x40, 0x6d, 0x16, 0x61, 0x69, 0xc9, 0xce, 0xb7, 0x4c, 0xcf, 0x70, 0x20, 0x96, 0x56, 0x73, 0xd0, 0x91, 0x33, 0x25, 0x3c, 0xa2, 0x30, 0x28, 0x7e, 0xc9, 0x99, 0x74, 0x47, 0xf1, 0xcc, 0xbb, 0xbb, 0xe8, 0x68, 0xcb, 0x73, 0xea, 0x0e, 0x28, 0xf4, 0xb6, 0x7e, 0xd4, 0x91, 0x32, 0x99, 0x5e, 0x75, 0xf4, 0x17, 0x83, 0x8d, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_2353 = { .name = "ecdh_secp521r1_2353", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2353_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2353_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2353_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 104 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2354 for ECDH, tcId is 105 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2354_peerpubkey[] = { 0x01, 0x03, 0xf3, 0x6e, 0xc4, 0x25, 0xdd, 0x88, 0xe5, 0xd8, 0x2d, 0x1f, 0x8d, 0x74, 0x7c, 0x93, 0xee, 0xcc, 0x4b, 0x46, 0xac, 0x98, 0xcd, 0x36, 0x4f, 0xc6, 0x78, 0xbc, 0x0d, 0x6c, 0x79, 0xf8, 0xbf, 0x1f, 0xe0, 0xbd, 0x28, 0x23, 0x5e, 0xe4, 0x3f, 0xbd, 0x0d, 0xc2, 0x37, 0x33, 0x2c, 0xc2, 0xed, 0x6e, 0xba, 0x8c, 0x7a, 0x56, 0x10, 0xb5, 0x65, 0x1c, 0x9e, 0x0f, 0x26, 0x44, 0x58, 0x7c, 0xa3, 0xbc, 0x01, 0x4d, 0xde, 0x8f, 0xbe, 0x83, 0xb5, 0x69, 0x73, 0x9b, 0x86, 0x0d, 0x7b, 0x1e, 0xda, 0xdc, 0x7b, 0xf7, 0x3f, 0x7f, 0x0e, 0x7a, 0x87, 0x02, 0xeb, 0x48, 0x8d, 0x23, 0x0d, 0xa2, 0x84, 0x32, 0x2c, 0xe0, 0x20, 0xe9, 0xc8, 0x83, 0x12, 0x98, 0xda, 0x14, 0x18, 0x0a, 0xb0, 0x08, 0x46, 0x5e, 0x6d, 0xed, 0x1f, 0x1e, 0xba, 0xf6, 0x56, 0x40, 0xd9, 0x2c, 0xcf, 0x29, 0xab, 0xb6, 0x75, 0x1a, 0x6f, 0x6c, }; static const unsigned char ecdh_secp521r1_2354_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2354_sharedsecret[] = { 0x01, 0x27, 0x0c, 0xfe, 0x9b, 0x86, 0x9d, 0x88, 0xe7, 0xdf, 0xf6, 0xd4, 0x5f, 0xc7, 0x52, 0xa4, 0xac, 0x72, 0xcc, 0xde, 0x73, 0xcf, 0x12, 0xec, 0x22, 0x7c, 0x27, 0x43, 0x28, 0xb0, 0x01, 0xa9, 0xf2, 0x4d, 0x92, 0xb0, 0x0c, 0xa0, 0x32, 0x6f, 0xe1, 0x9d, 0x69, 0x57, 0x3d, 0x5b, 0x3e, 0x35, 0xf8, 0x22, 0xcc, 0xbf, 0x4c, 0x83, 0xa3, 0xb3, 0xbf, 0x6e, 0x31, 0x53, 0xf0, 0x98, 0x42, 0x81, 0xb3, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2354 = { .name = "ecdh_secp521r1_2354", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2354_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2354_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2354_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 105 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2355 for ECDH, tcId is 106 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2355_peerpubkey[] = { 0x01, 0x3f, 0x8c, 0xc5, 0x56, 0x93, 0x46, 0xbf, 0x33, 0x25, 0xd8, 0x40, 0x5f, 0xdd, 0xe9, 0xfd, 0xe7, 0x1d, 0xd1, 0xe9, 0x53, 0xc1, 0x0e, 0xd6, 0x21, 0x5b, 0x4f, 0x40, 0x10, 0xf5, 0xbb, 0xe1, 0x73, 0x71, 0x8a, 0x8e, 0x2e, 0x6d, 0x9f, 0x80, 0x27, 0x26, 0xcd, 0x91, 0x6e, 0x16, 0xea, 0x1c, 0xd3, 0x14, 0x8c, 0x87, 0x9f, 0x0a, 0xce, 0xbd, 0x8d, 0xb2, 0x62, 0x8f, 0x58, 0x9c, 0x19, 0xaa, 0xa5, 0xbe, 0x01, 0x59, 0x5d, 0x66, 0x9c, 0xfa, 0x78, 0x6b, 0xfe, 0xb9, 0xdc, 0xda, 0xce, 0xdf, 0x56, 0x3d, 0x04, 0x05, 0x98, 0x67, 0x89, 0x8f, 0x42, 0xe8, 0xa1, 0x57, 0xc9, 0x11, 0x33, 0xc9, 0x52, 0xa9, 0x7d, 0x90, 0x38, 0x98, 0x91, 0xb3, 0x64, 0x78, 0x75, 0xc8, 0x22, 0xeb, 0x48, 0xf7, 0x61, 0x93, 0x0a, 0xfe, 0xf9, 0xb0, 0x68, 0x85, 0x3e, 0xfe, 0xc0, 0xd2, 0x60, 0xd8, 0xe5, 0x1d, 0xbc, 0xb6, 0xd2, 0x4b, }; static const unsigned char ecdh_secp521r1_2355_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2355_sharedsecret[] = { 0x01, 0x4d, 0xf0, 0x4e, 0x39, 0xe8, 0xbf, 0x5f, 0x6c, 0x34, 0x47, 0x2f, 0x94, 0xf6, 0xf4, 0x28, 0x96, 0x2a, 0xc8, 0xa3, 0x9d, 0x27, 0x33, 0x77, 0xd0, 0x00, 0x72, 0x31, 0xfa, 0x7f, 0x5f, 0x79, 0xed, 0x89, 0x62, 0x69, 0xf6, 0x5b, 0xf8, 0x4e, 0xca, 0x44, 0xe0, 0x73, 0x9c, 0xd8, 0xb9, 0x9f, 0x2e, 0x67, 0x97, 0x7e, 0xef, 0xd7, 0x68, 0x55, 0x3d, 0x46, 0x4c, 0x79, 0xe7, 0xd4, 0xd9, 0x0a, 0x0c, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_2355 = { .name = "ecdh_secp521r1_2355", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2355_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2355_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2355_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 106 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2356 for ECDH, tcId is 107 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2356_peerpubkey[] = { 0x01, 0x37, 0x5c, 0xc4, 0xe1, 0xa9, 0x28, 0x51, 0x35, 0x98, 0x08, 0x1a, 0xc4, 0xe4, 0xc0, 0x63, 0x2c, 0x24, 0xbd, 0x19, 0x97, 0xe4, 0x85, 0x0d, 0x14, 0x72, 0x50, 0x7b, 0xc7, 0x14, 0x22, 0xfc, 0xcb, 0x64, 0xcd, 0x82, 0x3d, 0x33, 0x65, 0xc0, 0x6e, 0x3f, 0x08, 0xc9, 0xfd, 0x6e, 0x6e, 0x47, 0x6a, 0x68, 0x12, 0x0f, 0x20, 0x3e, 0xf6, 0x9c, 0xa1, 0x1c, 0x70, 0x88, 0x9e, 0x38, 0x09, 0xeb, 0x75, 0xdc, 0x00, 0xd1, 0xed, 0x8d, 0x7a, 0xb7, 0x4a, 0x72, 0x46, 0x23, 0x67, 0xcb, 0x93, 0xe8, 0x43, 0xc6, 0x03, 0x89, 0xbf, 0xce, 0xeb, 0x2f, 0x86, 0x9a, 0xa3, 0x34, 0x91, 0x96, 0x1c, 0x4b, 0x83, 0x89, 0x23, 0x8f, 0x5d, 0xb1, 0xf7, 0x8b, 0x39, 0xfc, 0x09, 0x23, 0xa5, 0x4d, 0x9a, 0x7e, 0x0b, 0xe8, 0xed, 0xcb, 0x95, 0x72, 0xb2, 0xdb, 0xff, 0x0a, 0x72, 0x95, 0x85, 0x38, 0x2b, 0xff, 0xa6, 0x90, 0x19, 0x25, }; static const unsigned char ecdh_secp521r1_2356_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2356_sharedsecret[] = { 0x01, 0xd3, 0x77, 0x2b, 0x25, 0x2c, 0x9b, 0xa3, 0x5f, 0xf3, 0x47, 0x2b, 0x28, 0x0a, 0x76, 0x35, 0xca, 0x04, 0x51, 0x3e, 0xd0, 0x2e, 0x4d, 0x8c, 0x25, 0x59, 0x6c, 0x90, 0x0c, 0x37, 0x99, 0x4d, 0x26, 0xea, 0x77, 0x47, 0x37, 0xd9, 0xa9, 0xa8, 0xf8, 0x61, 0x8a, 0x6e, 0xf0, 0xc1, 0x01, 0x93, 0x44, 0xcb, 0x3f, 0x96, 0x56, 0xa6, 0x36, 0x9d, 0xfb, 0x1d, 0x8f, 0x2a, 0x3f, 0x28, 0xb4, 0xf0, 0x59, 0xcc, }; static const wycheproof_ecdh_test ecdh_secp521r1_2356 = { .name = "ecdh_secp521r1_2356", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2356_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2356_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2356_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 107 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2357 for ECDH, tcId is 108 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2357_peerpubkey[] = { 0x00, 0x6b, 0x6c, 0x41, 0x49, 0xce, 0x3b, 0x4f, 0xa6, 0x19, 0xe3, 0x60, 0xf0, 0x97, 0x94, 0x27, 0xd2, 0xc6, 0xbf, 0xeb, 0x3f, 0xa4, 0x12, 0x05, 0xa0, 0xce, 0xd3, 0xa4, 0x37, 0x28, 0x7c, 0x71, 0x1c, 0xc6, 0xe5, 0x87, 0x59, 0x92, 0xce, 0xa3, 0x13, 0xae, 0x3d, 0x2e, 0xc0, 0xdf, 0x6e, 0x42, 0x17, 0xc8, 0xc4, 0x2b, 0xbc, 0xff, 0xa7, 0x32, 0xc4, 0x03, 0xe7, 0xb4, 0x47, 0x1d, 0x0c, 0xf3, 0x95, 0x33, 0x00, 0xad, 0x7f, 0x74, 0xc6, 0x9b, 0x73, 0x08, 0xb7, 0x87, 0x47, 0xf7, 0x3b, 0x4e, 0x3e, 0x66, 0xe3, 0x3b, 0xfe, 0x4b, 0x21, 0xd4, 0x5a, 0xc8, 0x2a, 0x0b, 0x29, 0x3b, 0x0f, 0x63, 0x5a, 0xdd, 0xbe, 0xe4, 0x2a, 0x71, 0x8b, 0x72, 0x6a, 0xee, 0xb9, 0xdf, 0x13, 0x55, 0x70, 0x04, 0x97, 0x90, 0x0d, 0x9c, 0xdd, 0x0a, 0x42, 0xe0, 0x22, 0x8c, 0xd1, 0x79, 0x4f, 0x76, 0x7d, 0x3b, 0xff, 0xb1, 0xc7, 0xa7, }; static const unsigned char ecdh_secp521r1_2357_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2357_sharedsecret[] = { 0x01, 0xc5, 0x48, 0xcb, 0xdf, 0xdb, 0x40, 0x54, 0x1d, 0xab, 0x74, 0x4c, 0xbe, 0x5c, 0x45, 0xd9, 0x6a, 0x4f, 0x0d, 0x1c, 0xf2, 0xe5, 0x37, 0xd3, 0x3a, 0x9f, 0xb4, 0xe4, 0x67, 0x5c, 0x1e, 0xf5, 0x45, 0x82, 0xc1, 0x92, 0x94, 0xfd, 0x17, 0xc5, 0xfa, 0xe2, 0xc5, 0x1a, 0x9b, 0x18, 0xc3, 0x71, 0x95, 0xe0, 0xea, 0xc0, 0xd9, 0xb5, 0xff, 0x47, 0xa6, 0x43, 0xdf, 0x37, 0x5a, 0x70, 0x8d, 0xec, 0x71, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp521r1_2357 = { .name = "ecdh_secp521r1_2357", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2357_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2357_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2357_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 108 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2358 for ECDH, tcId is 109 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2358_peerpubkey[] = { 0x01, 0xa7, 0xba, 0xe0, 0x87, 0x25, 0xb9, 0x7e, 0x8a, 0xd3, 0xd9, 0x18, 0x43, 0xa4, 0x71, 0x4d, 0x92, 0x05, 0x00, 0x0d, 0xed, 0xea, 0x86, 0x07, 0x61, 0x05, 0x33, 0x07, 0x30, 0xbd, 0x8b, 0x6e, 0x5a, 0x68, 0x30, 0x49, 0x49, 0x6c, 0xd9, 0xf0, 0x8b, 0x32, 0x1c, 0xb2, 0xf3, 0xf8, 0xa0, 0x5b, 0xad, 0xf2, 0x37, 0x0b, 0xb9, 0x0e, 0xa1, 0xa4, 0x92, 0x36, 0xe3, 0xfe, 0xfd, 0x91, 0xb9, 0xc3, 0xd7, 0x6c, 0x00, 0x8c, 0x50, 0x24, 0x40, 0x40, 0xc6, 0x5b, 0xcb, 0x86, 0xcd, 0xbe, 0x19, 0x3e, 0xaf, 0x6d, 0xaa, 0xae, 0x2b, 0xa3, 0xa3, 0x28, 0xad, 0xeb, 0xc6, 0xb7, 0x2c, 0x12, 0x73, 0x66, 0x08, 0xab, 0xaf, 0x9c, 0x1d, 0xe7, 0xe7, 0xb3, 0x51, 0xc8, 0xe7, 0x5d, 0x4a, 0xb8, 0x01, 0xff, 0xdd, 0x6e, 0x84, 0xb7, 0xe4, 0x6b, 0x50, 0x97, 0x62, 0x47, 0xc3, 0x25, 0x15, 0xbf, 0x91, 0xce, 0xa3, 0x34, 0x89, 0x06, }; static const unsigned char ecdh_secp521r1_2358_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2358_sharedsecret[] = { 0x00, 0x52, 0xc6, 0xc1, 0xb8, 0x2b, 0x8e, 0x26, 0xf7, 0xed, 0xe7, 0x05, 0xa8, 0xb4, 0x84, 0x06, 0x8b, 0x50, 0x1a, 0x8d, 0xa4, 0x69, 0xca, 0xa5, 0xc2, 0x03, 0xbe, 0x01, 0x81, 0x43, 0x61, 0x8d, 0x98, 0x4f, 0xa9, 0x42, 0x1b, 0x13, 0x5e, 0x1a, 0xe2, 0x21, 0x2a, 0x27, 0xcb, 0xbb, 0xce, 0x3a, 0x74, 0x57, 0x80, 0xd1, 0x84, 0x70, 0x59, 0xd5, 0x6c, 0x3c, 0x3d, 0xda, 0x47, 0x48, 0x62, 0xa7, 0x90, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2358 = { .name = "ecdh_secp521r1_2358", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2358_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2358_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2358_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 109 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2359 for ECDH, tcId is 110 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2359_peerpubkey[] = { 0x00, 0x90, 0xf7, 0x4a, 0x2c, 0x8a, 0x5d, 0x2a, 0x99, 0x0c, 0xdf, 0x38, 0xb1, 0x85, 0xc7, 0x17, 0x6b, 0x37, 0xee, 0x50, 0xb7, 0x05, 0x59, 0xed, 0x85, 0xda, 0xff, 0x2f, 0xd4, 0x5b, 0x94, 0xb7, 0xf9, 0xdf, 0x34, 0xce, 0x57, 0xee, 0xa6, 0x54, 0x42, 0x7b, 0xfa, 0xd8, 0x99, 0x1f, 0x6a, 0x5d, 0x38, 0x53, 0x42, 0xaf, 0x3a, 0x56, 0x88, 0xb1, 0xf8, 0xc7, 0x24, 0xfb, 0x7e, 0x78, 0xdc, 0x18, 0xf2, 0x0e, 0x01, 0x61, 0x41, 0xf2, 0xb7, 0xbc, 0x94, 0x22, 0x86, 0xdb, 0xe8, 0x34, 0x4b, 0x68, 0xe0, 0xf9, 0xa2, 0xd0, 0x95, 0x0d, 0xa6, 0x51, 0x91, 0xf4, 0x7e, 0xba, 0x73, 0x8a, 0xbe, 0xf2, 0x0b, 0x9d, 0x10, 0x7c, 0xc0, 0xcc, 0xcf, 0x60, 0xbc, 0x92, 0x99, 0xb7, 0x5f, 0x0d, 0x14, 0x14, 0x7a, 0x6c, 0x7a, 0x7d, 0x5a, 0xe6, 0x7a, 0x00, 0x87, 0xeb, 0x1f, 0x4b, 0x48, 0xa2, 0x78, 0x0e, 0xc0, 0x86, 0x42, 0x8b, }; static const unsigned char ecdh_secp521r1_2359_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2359_sharedsecret[] = { 0x01, 0x13, 0xde, 0x20, 0xae, 0xa6, 0x91, 0xf5, 0xd3, 0x8b, 0x80, 0xba, 0xd9, 0x3c, 0x80, 0xd9, 0x23, 0x77, 0xeb, 0xb7, 0x30, 0x20, 0x14, 0xf6, 0x4c, 0xcd, 0x89, 0x3f, 0xa9, 0xe6, 0x7d, 0x38, 0x4a, 0x4e, 0xd1, 0xa5, 0xe3, 0xfc, 0xe2, 0xc8, 0x4b, 0xa5, 0xfc, 0x37, 0x9a, 0x0a, 0x6b, 0xda, 0xcd, 0xb6, 0x17, 0x65, 0x94, 0xdf, 0x87, 0x6d, 0x3d, 0x13, 0xfd, 0xf1, 0xdc, 0x82, 0x4d, 0xa8, 0x25, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2359 = { .name = "ecdh_secp521r1_2359", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2359_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2359_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2359_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 110 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2360 for ECDH, tcId is 111 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2360_peerpubkey[] = { 0x01, 0xf7, 0xbe, 0x22, 0x9d, 0xcb, 0x35, 0xe4, 0x44, 0xd3, 0xd8, 0x91, 0xbb, 0x04, 0xff, 0x5a, 0xaf, 0x27, 0x0e, 0x8f, 0x8d, 0x90, 0xaf, 0xd6, 0x5a, 0xfb, 0x1c, 0x56, 0xf8, 0xc7, 0x7e, 0xab, 0x3d, 0x32, 0xe5, 0x5d, 0xaa, 0x31, 0xda, 0x9a, 0xeb, 0xda, 0x76, 0xfb, 0x67, 0x29, 0x8e, 0x3a, 0x1b, 0xb7, 0x15, 0x05, 0xd3, 0xa5, 0xb6, 0xc5, 0xaf, 0x37, 0x36, 0x6c, 0x88, 0x04, 0x10, 0x90, 0xe9, 0x6e, 0x00, 0xcf, 0x3e, 0x13, 0x2f, 0xd8, 0x83, 0x84, 0xfa, 0xe8, 0x75, 0x3a, 0xe3, 0x2b, 0xa6, 0x69, 0xe9, 0x67, 0x93, 0xb6, 0x9d, 0x6a, 0x81, 0x53, 0x65, 0x38, 0x7c, 0xd9, 0xd4, 0xd2, 0x1a, 0xd2, 0x86, 0x2e, 0x4b, 0x2f, 0xfc, 0xa1, 0xfa, 0x8e, 0xa0, 0x5e, 0x34, 0x27, 0x5f, 0xea, 0x95, 0xff, 0x1d, 0xcc, 0xab, 0x75, 0x0b, 0xc7, 0x42, 0xde, 0x12, 0x61, 0x1c, 0xc3, 0xa1, 0x35, 0xa9, 0xda, 0xf9, 0xc0, }; static const unsigned char ecdh_secp521r1_2360_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2360_sharedsecret[] = { 0x01, 0x20, 0x90, 0x84, 0x72, 0x93, 0xba, 0x80, 0xdc, 0x7a, 0x8a, 0x4d, 0x50, 0x38, 0xad, 0x6f, 0x3e, 0xd4, 0x36, 0xb5, 0xa8, 0x2e, 0x7a, 0x4a, 0x6d, 0x7c, 0xfa, 0xea, 0x1c, 0x19, 0xd6, 0xc7, 0x4d, 0x3f, 0x70, 0x7f, 0xa0, 0xff, 0xc9, 0xf1, 0x5a, 0x8c, 0x95, 0xc3, 0xe0, 0x40, 0xb4, 0xf1, 0xb5, 0xd2, 0xb5, 0xee, 0x08, 0xb9, 0x43, 0x64, 0x10, 0xe3, 0x6f, 0xda, 0x20, 0x3f, 0xd6, 0xc5, 0xfc, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2360 = { .name = "ecdh_secp521r1_2360", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2360_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2360_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2360_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 111 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2361 for ECDH, tcId is 112 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2361_peerpubkey[] = { 0x01, 0xd8, 0x57, 0x8b, 0x22, 0x20, 0x92, 0x10, 0x3b, 0xb1, 0x77, 0x64, 0xfd, 0xa3, 0x34, 0x97, 0x4b, 0x12, 0x13, 0x05, 0xc4, 0xc1, 0xcf, 0xae, 0xe7, 0xd8, 0x6e, 0x81, 0x4d, 0xee, 0x33, 0x05, 0x7a, 0x03, 0xbe, 0xa2, 0x34, 0x54, 0x66, 0x05, 0xcf, 0x7f, 0xba, 0x50, 0xd2, 0xd5, 0x7a, 0xbd, 0x08, 0x08, 0x76, 0x0a, 0x4f, 0x8d, 0x23, 0xf7, 0x24, 0xc0, 0x0f, 0x9f, 0x5d, 0xd4, 0xb0, 0x26, 0xf6, 0x28, 0x01, 0x92, 0x33, 0x25, 0xa3, 0x7b, 0x03, 0x14, 0xc7, 0xa1, 0xd1, 0x85, 0x17, 0x3b, 0x48, 0xc1, 0x40, 0x51, 0xbc, 0x0e, 0xfc, 0x9b, 0xf3, 0xe5, 0x7a, 0xe7, 0x78, 0xba, 0x53, 0x7e, 0x90, 0xc8, 0x2c, 0xc0, 0xd4, 0x2d, 0xd9, 0x8e, 0x9f, 0xf5, 0xa8, 0x23, 0x5e, 0xde, 0x5c, 0x42, 0x86, 0x7e, 0x96, 0x1d, 0xef, 0x8f, 0x9f, 0x66, 0xa6, 0x31, 0x16, 0x8c, 0x2e, 0x3a, 0x10, 0x99, 0xc9, 0xc2, 0xde, 0x06, }; static const unsigned char ecdh_secp521r1_2361_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2361_sharedsecret[] = { 0x01, 0x99, 0xaa, 0xaf, 0x77, 0x7a, 0x6c, 0x29, 0xb8, 0x5e, 0x0e, 0xc9, 0x90, 0x2f, 0x4f, 0x8d, 0x00, 0x4a, 0x29, 0x7b, 0x45, 0x70, 0xdd, 0x46, 0x77, 0x62, 0x23, 0x05, 0xf4, 0x33, 0x9e, 0xc7, 0x26, 0xaf, 0xb9, 0x8b, 0x55, 0x41, 0x75, 0xb9, 0x9b, 0x8b, 0x32, 0x43, 0xf1, 0x2a, 0x60, 0xb7, 0x9f, 0xfe, 0x25, 0x94, 0x71, 0x05, 0x3e, 0x14, 0xc7, 0x68, 0xa1, 0x8c, 0xbf, 0x9a, 0xe5, 0x9e, 0x14, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_2361 = { .name = "ecdh_secp521r1_2361", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2361_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2361_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2361_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 112 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2362 for ECDH, tcId is 113 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2362_peerpubkey[] = { 0x01, 0xba, 0xdf, 0x6a, 0x41, 0x1a, 0x40, 0x56, 0x52, 0xd3, 0xe5, 0x4b, 0x8f, 0xb2, 0xc5, 0xaa, 0xed, 0x8e, 0xb9, 0xad, 0xa9, 0xf0, 0x6e, 0xff, 0xc2, 0xe6, 0x52, 0x99, 0x05, 0x3b, 0x8a, 0x32, 0x16, 0xe0, 0xb5, 0xee, 0x7b, 0x25, 0x65, 0x61, 0xdf, 0xa1, 0x77, 0x99, 0x70, 0x54, 0x7b, 0x10, 0x72, 0x42, 0x4b, 0x86, 0xbb, 0x6e, 0xf4, 0x08, 0xce, 0xf5, 0x75, 0xbd, 0xb0, 0x2b, 0x79, 0xde, 0x35, 0xd4, 0x01, 0x4e, 0xf3, 0xa4, 0x7c, 0x25, 0x26, 0x5b, 0x1c, 0xb2, 0xf2, 0x8d, 0x59, 0x63, 0xf5, 0x33, 0xf7, 0xac, 0xfb, 0xde, 0x34, 0xd4, 0x5f, 0xa1, 0xae, 0x5f, 0xae, 0x77, 0xb4, 0xc4, 0xe0, 0xc8, 0x94, 0x28, 0x02, 0x47, 0x66, 0x4a, 0xad, 0x91, 0xc3, 0x1a, 0x01, 0x1f, 0xba, 0x50, 0xeb, 0x6e, 0x34, 0xbd, 0xfd, 0xf2, 0x8f, 0x3e, 0x40, 0x6a, 0x60, 0x2c, 0x50, 0x71, 0xee, 0xbb, 0x63, 0x2c, 0xdb, 0xe5, }; static const unsigned char ecdh_secp521r1_2362_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2362_sharedsecret[] = { 0x01, 0x6b, 0x74, 0xca, 0x4a, 0x58, 0x8f, 0xa4, 0x8c, 0xc5, 0xfe, 0x73, 0x8a, 0xa8, 0x49, 0x52, 0xe7, 0xd4, 0x90, 0x8e, 0xf9, 0xfb, 0x69, 0xa4, 0xbc, 0x47, 0x0e, 0xb7, 0x2e, 0xd8, 0x6b, 0x1c, 0x6b, 0xca, 0x0b, 0x63, 0x14, 0x93, 0x9c, 0x31, 0x1b, 0x0e, 0x3d, 0xae, 0x7f, 0xed, 0xd8, 0xda, 0xf9, 0x6a, 0x37, 0xb7, 0x42, 0x0d, 0xc5, 0x56, 0xac, 0x2b, 0xbc, 0xbd, 0x0d, 0xfd, 0xda, 0x28, 0x17, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_2362 = { .name = "ecdh_secp521r1_2362", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2362_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2362_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2362_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 113 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2363 for ECDH, tcId is 114 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2363_peerpubkey[] = { 0x01, 0x8b, 0x92, 0x37, 0x72, 0x3c, 0x02, 0x9c, 0x55, 0x1b, 0x1e, 0x14, 0x49, 0x24, 0x60, 0xe7, 0xd2, 0xe4, 0x95, 0x7d, 0xce, 0xee, 0x53, 0x6d, 0xec, 0x92, 0xbb, 0x35, 0xfe, 0x8e, 0xde, 0x36, 0xe6, 0xb1, 0xcc, 0xe1, 0x55, 0xb6, 0x9a, 0x0d, 0x72, 0x12, 0xc2, 0xb4, 0xf0, 0xba, 0x89, 0xd3, 0xf6, 0xfc, 0x0e, 0x7f, 0x67, 0x77, 0xff, 0x5c, 0x2e, 0xed, 0x8c, 0x71, 0xef, 0xf3, 0xc4, 0x4d, 0xa8, 0x48, 0x01, 0x25, 0xbe, 0xe7, 0x80, 0x39, 0xfb, 0xd3, 0xc3, 0x39, 0xa5, 0x8b, 0xbf, 0x62, 0x5e, 0x50, 0x34, 0x6a, 0x3e, 0x8a, 0x9c, 0x73, 0x46, 0x0e, 0xc6, 0x8f, 0xb0, 0x28, 0xfd, 0x4d, 0x14, 0xcd, 0x63, 0x15, 0x31, 0x0e, 0x03, 0x11, 0xa0, 0xec, 0x4f, 0x39, 0xfb, 0x34, 0x08, 0x51, 0x93, 0x77, 0xdd, 0x4e, 0xa9, 0xd5, 0x77, 0x79, 0x00, 0x38, 0x62, 0xc3, 0x12, 0xbf, 0xd0, 0x9a, 0x9a, 0x1f, 0x96, 0x59, }; static const unsigned char ecdh_secp521r1_2363_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2363_sharedsecret[] = { 0x01, 0xd8, 0x1c, 0x81, 0x2e, 0x14, 0x80, 0x4d, 0x56, 0x2e, 0x4a, 0x89, 0xe9, 0xee, 0xa7, 0xd2, 0x63, 0x02, 0xcf, 0xd7, 0x55, 0xfe, 0x92, 0x21, 0xfc, 0xa5, 0x77, 0xe3, 0x2f, 0xd5, 0xbc, 0x53, 0x4e, 0x3f, 0xb2, 0xd8, 0x1b, 0x17, 0x01, 0xaf, 0xa0, 0xb4, 0xd9, 0xf2, 0x5b, 0xbd, 0x1b, 0x2d, 0x7e, 0xc9, 0x84, 0xda, 0x40, 0x40, 0x14, 0xb5, 0xc2, 0x3d, 0x8b, 0x29, 0x58, 0xae, 0xd8, 0x64, 0xdb, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2363 = { .name = "ecdh_secp521r1_2363", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2363_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2363_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2363_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 114 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2364 for ECDH, tcId is 115 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2364_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_2364_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2364_sharedsecret[] = { 0x01, 0x7f, 0xde, 0xde, 0x94, 0x70, 0x80, 0x15, 0x68, 0x29, 0x8e, 0x0a, 0x94, 0xcd, 0x49, 0xa0, 0xe8, 0x17, 0x02, 0xb6, 0xf4, 0xef, 0x91, 0x69, 0x83, 0xff, 0x89, 0xe4, 0xf0, 0x1a, 0xde, 0x2e, 0xe1, 0x30, 0x01, 0xc6, 0xea, 0xa6, 0x77, 0x49, 0x9a, 0x9d, 0xe7, 0xa4, 0x8b, 0x7c, 0x79, 0x56, 0xfa, 0xac, 0x58, 0x0e, 0x63, 0x93, 0x38, 0x53, 0x13, 0x4d, 0xc9, 0x68, 0x52, 0x26, 0x4f, 0xb2, 0x3f, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2364 = { .name = "ecdh_secp521r1_2364", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2364_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2364_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2364_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 115 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2365 for ECDH, tcId is 116 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2365_peerpubkey[] = { 0x01, 0x99, 0xff, 0x89, 0xac, 0xaa, 0x60, 0xd0, 0xe4, 0x79, 0xc8, 0x16, 0x87, 0x36, 0xa7, 0x79, 0x5e, 0xe0, 0xc1, 0xb5, 0xc0, 0xb2, 0x1f, 0x6c, 0xbf, 0x90, 0xe3, 0x06, 0x82, 0xcf, 0x44, 0x64, 0xdf, 0x92, 0x32, 0x34, 0x3c, 0x91, 0xf3, 0x65, 0x0c, 0xf0, 0x1f, 0x7b, 0xc2, 0xb1, 0x48, 0xd8, 0xf3, 0xb7, 0x07, 0xfd, 0x2e, 0x3d, 0xff, 0x50, 0x2b, 0xca, 0x0c, 0x03, 0x94, 0x1a, 0x9a, 0xfe, 0x63, 0x1c, 0x00, 0x84, 0xe2, 0x71, 0x55, 0xc0, 0x90, 0x3d, 0xfe, 0x65, 0xd7, 0xb5, 0xd8, 0xb1, 0xbd, 0xec, 0x24, 0x56, 0xca, 0x50, 0xc9, 0x77, 0xa4, 0x3f, 0x44, 0xe4, 0xfc, 0x4d, 0xd7, 0x0d, 0x94, 0xb2, 0x9c, 0x44, 0x69, 0x65, 0x59, 0x81, 0xaf, 0x4f, 0x0c, 0x21, 0x81, 0xf1, 0x9d, 0xc4, 0x48, 0x13, 0x07, 0xe6, 0x9e, 0x20, 0x6d, 0x4e, 0x0a, 0x59, 0xd4, 0x8e, 0x43, 0xf5, 0x58, 0x09, 0x13, 0x9a, 0xda, 0x7c, }; static const unsigned char ecdh_secp521r1_2365_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2365_sharedsecret[] = { 0x00, 0x5f, 0xf9, 0xd0, 0xe3, 0x3b, 0x19, 0xa1, 0xed, 0x65, 0x40, 0x82, 0x54, 0x95, 0x7a, 0x43, 0xc0, 0x05, 0x0b, 0x19, 0x5d, 0xfd, 0x8f, 0xeb, 0x56, 0x47, 0x2d, 0x3f, 0xef, 0xc4, 0x63, 0xd9, 0x59, 0x10, 0x86, 0x2f, 0x9b, 0xb0, 0xa3, 0x2d, 0x98, 0x05, 0x37, 0x63, 0x33, 0x3f, 0x92, 0x33, 0x26, 0x37, 0xda, 0xbe, 0x2a, 0x4f, 0x9e, 0xeb, 0xcf, 0x48, 0xa4, 0x63, 0x0e, 0xc5, 0x0b, 0xbf, 0x13, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2365 = { .name = "ecdh_secp521r1_2365", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2365_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2365_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2365_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 116 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2366 for ECDH, tcId is 117 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2366_peerpubkey[] = { 0x01, 0x43, 0x69, 0xb6, 0xe6, 0x71, 0x7e, 0x08, 0x54, 0x38, 0x08, 0x33, 0xd9, 0x74, 0xbe, 0xea, 0x9c, 0xcc, 0xc0, 0x1d, 0x7f, 0xbc, 0xc3, 0x92, 0x45, 0xbc, 0x14, 0x27, 0x10, 0x4c, 0x21, 0x43, 0x26, 0x80, 0x9f, 0xd1, 0xa6, 0x78, 0xf8, 0x96, 0x12, 0xd0, 0x87, 0xdf, 0x5e, 0x3d, 0x5a, 0xb1, 0x85, 0x51, 0x78, 0xe0, 0x1f, 0xbc, 0x67, 0x12, 0x48, 0x2b, 0x34, 0x43, 0xcd, 0xbb, 0xfe, 0xc3, 0xc7, 0x7a, 0x00, 0x7e, 0x5a, 0x87, 0x86, 0xaa, 0xca, 0xe7, 0x5f, 0x9f, 0x7e, 0x59, 0xb3, 0xb0, 0x0c, 0xf1, 0x36, 0xac, 0xda, 0xc4, 0x2f, 0xf0, 0xda, 0x06, 0xa0, 0xde, 0x82, 0xd5, 0xe3, 0xc4, 0x16, 0x9a, 0x9b, 0x5d, 0x63, 0xcd, 0x7c, 0x0c, 0x68, 0x30, 0x85, 0x85, 0xf6, 0xf3, 0x1a, 0x30, 0x0d, 0x33, 0xc0, 0x10, 0x04, 0x2b, 0x44, 0xcd, 0xd0, 0xe6, 0xa8, 0x11, 0xad, 0x61, 0x4e, 0xf1, 0x8b, 0x6d, 0x4e, 0x06, }; static const unsigned char ecdh_secp521r1_2366_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2366_sharedsecret[] = { 0x00, 0x01, 0x4a, 0x36, 0xb9, 0x8a, 0xb5, 0x7d, 0x1d, 0x59, 0x93, 0x51, 0x27, 0x2b, 0x31, 0x31, 0xfd, 0x12, 0xe1, 0x8c, 0xb0, 0xf6, 0x65, 0xcc, 0x98, 0x05, 0xb2, 0x40, 0x2c, 0x67, 0x0e, 0xe3, 0x09, 0xa8, 0x5b, 0x6e, 0x0c, 0x2a, 0x9c, 0xca, 0x28, 0xd5, 0xa4, 0x58, 0x3c, 0xcc, 0xcd, 0xe7, 0xb8, 0xd5, 0xaa, 0xf3, 0x0c, 0x67, 0x80, 0xce, 0xdf, 0x8a, 0x0b, 0x9a, 0x4f, 0x6a, 0x49, 0xe9, 0xc1, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_2366 = { .name = "ecdh_secp521r1_2366", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2366_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2366_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2366_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 117 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2367 for ECDH, tcId is 118 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2367_peerpubkey[] = { 0x00, 0xb0, 0x8d, 0xf0, 0x61, 0x2d, 0xdb, 0xbd, 0x8a, 0xbe, 0x1c, 0xad, 0xf6, 0x54, 0xf7, 0xb1, 0x50, 0x09, 0x42, 0x97, 0x1c, 0xb1, 0x7f, 0xb6, 0x39, 0x36, 0x75, 0x03, 0x08, 0xbd, 0xf3, 0xe9, 0x1d, 0xab, 0xa0, 0xe2, 0x00, 0x55, 0x75, 0xde, 0x7e, 0x70, 0x38, 0xf8, 0x37, 0x9e, 0x99, 0x75, 0x96, 0xd6, 0x69, 0x6e, 0x57, 0x22, 0x48, 0x9f, 0x7f, 0xd5, 0xf4, 0x1a, 0x85, 0xf9, 0xb2, 0x7b, 0x20, 0x6e, 0x00, 0x6d, 0x4f, 0x35, 0x58, 0xec, 0x85, 0x8e, 0x8b, 0x7b, 0x8f, 0x31, 0xaf, 0x48, 0x0a, 0x80, 0x48, 0x42, 0x23, 0xa6, 0xf3, 0x65, 0x28, 0x68, 0xa3, 0x6d, 0x8a, 0xa0, 0x41, 0x2e, 0x79, 0xd5, 0x7c, 0x5d, 0x32, 0x29, 0x7d, 0x80, 0xb5, 0x08, 0xbf, 0x5a, 0x1b, 0xb5, 0x2f, 0xb4, 0x39, 0x16, 0x3a, 0xcc, 0x26, 0xb4, 0x73, 0x03, 0x3d, 0xc2, 0x48, 0x34, 0xe0, 0xa4, 0x4d, 0xfa, 0x43, 0x48, 0x0a, 0x9e, }; static const unsigned char ecdh_secp521r1_2367_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2367_sharedsecret[] = { 0x01, 0x54, 0x15, 0xd5, 0x4a, 0xbd, 0xb8, 0x53, 0x6e, 0x1a, 0xe2, 0xac, 0x00, 0x05, 0x1e, 0x2a, 0xf3, 0xc0, 0x42, 0xa8, 0x21, 0x53, 0x01, 0x65, 0xd1, 0xfe, 0xbb, 0x6e, 0xbd, 0xd7, 0x47, 0x81, 0xeb, 0xd3, 0x38, 0x7f, 0x9d, 0xd8, 0x84, 0x5d, 0x31, 0xa0, 0x33, 0x1e, 0x4e, 0xb5, 0x42, 0x08, 0x5b, 0x61, 0xf0, 0xf9, 0xf4, 0x08, 0xba, 0x5b, 0x46, 0x35, 0xdd, 0x24, 0xda, 0xba, 0xda, 0xef, 0x47, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_2367 = { .name = "ecdh_secp521r1_2367", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2367_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2367_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2367_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 118 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2368 for ECDH, tcId is 119 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2368_peerpubkey[] = { 0x00, 0xb5, 0x74, 0xf6, 0xdf, 0x47, 0x93, 0x2a, 0x18, 0x27, 0xe3, 0x6c, 0x94, 0x41, 0xe9, 0xa6, 0x16, 0x70, 0x96, 0x98, 0x17, 0x73, 0x56, 0x32, 0xf1, 0xec, 0x8f, 0xcd, 0xe6, 0x05, 0x09, 0xf6, 0xcc, 0x99, 0xa5, 0xc6, 0x53, 0x0a, 0x96, 0x00, 0x3d, 0x03, 0x3f, 0x4a, 0xb6, 0x38, 0x36, 0xca, 0x29, 0x26, 0x52, 0xb8, 0x60, 0x64, 0x1a, 0x2b, 0x98, 0xdf, 0x83, 0xce, 0xff, 0x2b, 0xf2, 0x41, 0x9f, 0x7d, 0x01, 0x6c, 0x80, 0x74, 0x2e, 0x03, 0x92, 0xdd, 0xe7, 0x01, 0x6b, 0x10, 0x6e, 0x3f, 0xb9, 0x76, 0xbd, 0x5d, 0x8f, 0x46, 0xa8, 0xf0, 0xe7, 0x4b, 0x90, 0x0a, 0x8d, 0x26, 0xf6, 0x92, 0x8b, 0x02, 0xd4, 0xfc, 0x1a, 0x97, 0xd8, 0x48, 0x44, 0xc2, 0x38, 0x0f, 0x6f, 0xd6, 0x24, 0x9b, 0xeb, 0xbb, 0xa6, 0xe5, 0xf8, 0x7f, 0xc5, 0xea, 0x2e, 0xdc, 0x13, 0x62, 0xd7, 0x7e, 0x1c, 0x24, 0x66, 0x51, 0xa5, 0x6c, }; static const unsigned char ecdh_secp521r1_2368_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2368_sharedsecret[] = { 0x00, 0xe5, 0xa3, 0x3a, 0xa0, 0xd3, 0x46, 0xba, 0x57, 0x86, 0x67, 0x41, 0xf9, 0x90, 0x11, 0xf1, 0x45, 0xad, 0xbf, 0x2d, 0xfc, 0xc1, 0x0c, 0xbc, 0x98, 0x8c, 0x86, 0xe8, 0xa2, 0x6e, 0x97, 0x7b, 0x41, 0x9a, 0xc7, 0x48, 0xb1, 0x06, 0xf1, 0x4f, 0xf2, 0xfd, 0xee, 0x5a, 0x32, 0x66, 0x16, 0xab, 0x53, 0xcc, 0xbe, 0x2d, 0x80, 0xe8, 0x09, 0x81, 0x13, 0x77, 0xfe, 0x9a, 0xf2, 0x03, 0x2c, 0xa1, 0x84, 0x64, }; static const wycheproof_ecdh_test ecdh_secp521r1_2368 = { .name = "ecdh_secp521r1_2368", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2368_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2368_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2368_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 119 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2369 for ECDH, tcId is 120 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2369_peerpubkey[] = { 0x00, 0x31, 0x74, 0xc3, 0xd3, 0x40, 0x77, 0xf9, 0x46, 0xf8, 0x98, 0x6a, 0xf2, 0x18, 0xca, 0x01, 0xf3, 0x1e, 0xfe, 0x57, 0xa2, 0x36, 0x71, 0x8e, 0xb8, 0x8d, 0xf2, 0x6a, 0x3c, 0xcc, 0xb2, 0x4b, 0x30, 0xf1, 0xf8, 0xe9, 0xd4, 0xfb, 0xba, 0x2b, 0x95, 0x3e, 0x16, 0x1b, 0xd1, 0x94, 0x47, 0x03, 0x9d, 0xba, 0xf1, 0xbc, 0xe0, 0x4c, 0x34, 0x60, 0xe1, 0xe3, 0xa2, 0x17, 0x0e, 0x26, 0x73, 0x02, 0xd2, 0xdf, 0x00, 0x10, 0xcf, 0xe1, 0x8a, 0xe6, 0xcb, 0x53, 0x6a, 0xc3, 0xe1, 0x4b, 0x3e, 0x60, 0xcc, 0xbe, 0x52, 0xb2, 0x9a, 0x19, 0x52, 0xa4, 0x7b, 0x5b, 0x3b, 0x1f, 0x4c, 0x26, 0x37, 0xad, 0xa5, 0x34, 0xb6, 0x1a, 0x5d, 0x94, 0xf6, 0x58, 0xfc, 0x38, 0x6b, 0xee, 0xd6, 0x12, 0x46, 0x7f, 0x3d, 0xd1, 0xcb, 0xd8, 0xe4, 0xd6, 0xd1, 0x54, 0x56, 0x6a, 0xb9, 0x94, 0x32, 0x8d, 0x2a, 0x58, 0xe6, 0x9c, 0xa7, 0xa8, }; static const unsigned char ecdh_secp521r1_2369_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2369_sharedsecret[] = { 0x01, 0x87, 0x79, 0xcb, 0xba, 0x17, 0x18, 0xbd, 0x2b, 0x7f, 0xc2, 0xac, 0x5c, 0xb4, 0x71, 0x30, 0x85, 0x76, 0x25, 0x0a, 0xd4, 0x12, 0xa5, 0xf9, 0x8e, 0x28, 0xd1, 0x4d, 0x76, 0xda, 0xfe, 0xcb, 0x84, 0x55, 0x60, 0x3b, 0xb2, 0x45, 0x91, 0xb8, 0xe8, 0x3e, 0x8a, 0x5c, 0x2c, 0x55, 0x05, 0x60, 0x94, 0x45, 0xbf, 0x7a, 0x01, 0x9a, 0x22, 0x98, 0x61, 0x35, 0x1d, 0x16, 0x58, 0x01, 0x28, 0x5b, 0x19, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_2369 = { .name = "ecdh_secp521r1_2369", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2369_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2369_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2369_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 120 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2370 for ECDH, tcId is 121 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2370_peerpubkey[] = { 0x00, 0xf8, 0x7b, 0xb7, 0x4f, 0x77, 0xe9, 0xbb, 0x46, 0x11, 0xaf, 0x79, 0xdc, 0x58, 0x2e, 0x36, 0x8a, 0x51, 0xf4, 0x5e, 0x6b, 0xa1, 0xe0, 0xf3, 0xa5, 0x6f, 0xf2, 0x5a, 0x60, 0x0a, 0x5a, 0xfe, 0x0a, 0x20, 0xed, 0xf6, 0x49, 0x62, 0x04, 0xfb, 0xd2, 0xe7, 0x3a, 0x9a, 0x54, 0xd9, 0xc8, 0x80, 0x7f, 0xc0, 0xb9, 0x53, 0x01, 0xdf, 0x19, 0xca, 0x7d, 0x67, 0x29, 0x9f, 0x44, 0xb2, 0x80, 0xbc, 0x69, 0x63, 0x01, 0x44, 0xcd, 0x54, 0x35, 0x8b, 0x30, 0x1b, 0xf3, 0x41, 0xe7, 0xb0, 0xdb, 0x7e, 0xff, 0xf4, 0xb0, 0x01, 0x0f, 0x17, 0x92, 0x62, 0xe5, 0xfa, 0x18, 0x1b, 0x30, 0xd1, 0x91, 0x39, 0x12, 0x9f, 0x42, 0x46, 0x4b, 0x71, 0xea, 0x2e, 0x06, 0x88, 0xba, 0x32, 0x44, 0xd4, 0xf7, 0xcb, 0xe2, 0xf7, 0xa8, 0xc2, 0xa2, 0xb3, 0x79, 0xc6, 0x4a, 0x72, 0xd6, 0xbf, 0xbf, 0x87, 0xf6, 0xf1, 0xa8, 0x7b, 0xc0, 0x6b, }; static const unsigned char ecdh_secp521r1_2370_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2370_sharedsecret[] = { 0x01, 0xf4, 0x55, 0x81, 0x6a, 0xcb, 0x59, 0xe6, 0x18, 0x9e, 0x6c, 0x14, 0xda, 0xd7, 0xa7, 0x79, 0x95, 0x8b, 0x9b, 0x60, 0xa9, 0x54, 0x97, 0x28, 0xd6, 0x28, 0xb0, 0xaf, 0x1a, 0x38, 0xbe, 0xe0, 0x29, 0xa7, 0x17, 0xb3, 0x11, 0xfb, 0x2b, 0x6c, 0xea, 0x5f, 0xf3, 0xc8, 0xae, 0xa0, 0x96, 0x23, 0x6c, 0x67, 0xc6, 0xa3, 0xac, 0xe0, 0x42, 0x64, 0xac, 0x7e, 0xd1, 0xbe, 0xea, 0x2a, 0x4f, 0x5e, 0x90, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_2370 = { .name = "ecdh_secp521r1_2370", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2370_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2370_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2370_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 121 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2371 for ECDH, tcId is 122 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2371_peerpubkey[] = { 0x00, 0x58, 0x20, 0xa1, 0x2b, 0x52, 0x9a, 0xa3, 0x90, 0x6a, 0xfb, 0x06, 0x12, 0x03, 0xc1, 0x24, 0xd3, 0xb8, 0x1f, 0x39, 0x9b, 0x67, 0xf4, 0x8f, 0x5c, 0xc3, 0xb5, 0xfd, 0x45, 0x90, 0x70, 0x51, 0xce, 0x05, 0x36, 0xdb, 0xde, 0xeb, 0x4b, 0x3e, 0x4e, 0xa3, 0xe2, 0xc3, 0x79, 0x91, 0xbf, 0x68, 0xbe, 0x9a, 0x1a, 0x1c, 0x60, 0x9a, 0x2e, 0xc7, 0xb4, 0xab, 0x55, 0xdc, 0x00, 0x6e, 0xae, 0x44, 0x0d, 0xda, 0x01, 0xcb, 0x77, 0xd7, 0xdf, 0x78, 0xb9, 0x87, 0x44, 0x70, 0xc3, 0xdd, 0x26, 0x8e, 0x91, 0x99, 0xf9, 0x8f, 0x83, 0x29, 0x53, 0xae, 0xb7, 0xb0, 0x74, 0x49, 0xd3, 0x79, 0x04, 0x05, 0x4c, 0x9d, 0xd2, 0x17, 0xda, 0xf2, 0xf0, 0xae, 0x6d, 0xb0, 0x58, 0x97, 0x51, 0x23, 0xc9, 0xea, 0xf9, 0xd8, 0x86, 0xd5, 0xc3, 0xd6, 0x03, 0x69, 0x07, 0xa5, 0xcf, 0xf3, 0xc7, 0x1c, 0x7a, 0x7a, 0x85, 0xf6, 0x2f, 0x0b, }; static const unsigned char ecdh_secp521r1_2371_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2371_sharedsecret[] = { 0x00, 0x20, 0x07, 0xfd, 0x98, 0xb4, 0xe3, 0x34, 0xd9, 0xdd, 0x76, 0x86, 0xae, 0x5d, 0xa3, 0x79, 0xc3, 0xc3, 0xa0, 0x51, 0x22, 0x32, 0x84, 0x4f, 0xa0, 0x0e, 0xce, 0x76, 0xea, 0x94, 0x21, 0x17, 0x8b, 0x9c, 0x15, 0x49, 0x42, 0xc0, 0x98, 0x1c, 0xa2, 0xb8, 0x18, 0x71, 0x61, 0xd5, 0x9a, 0xd3, 0x6a, 0xb2, 0xda, 0xf1, 0x75, 0x3e, 0x3b, 0x59, 0xd8, 0xfa, 0x5b, 0x4c, 0x9b, 0xf2, 0x24, 0xa7, 0x37, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2371 = { .name = "ecdh_secp521r1_2371", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2371_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2371_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2371_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 122 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2372 for ECDH, tcId is 123 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2372_peerpubkey[] = { 0x00, 0x58, 0xe0, 0xd2, 0x0d, 0x8a, 0x18, 0x8d, 0x48, 0xca, 0x57, 0xd4, 0xb7, 0x3e, 0xa4, 0xe9, 0xf4, 0x53, 0xa3, 0x89, 0xd5, 0xd8, 0xfb, 0x94, 0x87, 0x37, 0xef, 0x55, 0xee, 0xc3, 0x0a, 0xb6, 0x0f, 0xad, 0x58, 0x0d, 0x9e, 0x12, 0xbb, 0x84, 0x0f, 0x82, 0xe7, 0x49, 0x50, 0xda, 0x3d, 0x12, 0xbe, 0x72, 0x66, 0x45, 0x7b, 0xbd, 0xd9, 0x43, 0xb8, 0x31, 0xf8, 0xad, 0x0d, 0x3b, 0x57, 0xe6, 0x24, 0x34, 0x00, 0xd7, 0x0c, 0x27, 0xab, 0x9c, 0xb2, 0x9f, 0x9d, 0x75, 0x39, 0x67, 0xff, 0xaf, 0xd2, 0x75, 0x51, 0xc7, 0x8a, 0x1b, 0xae, 0x47, 0x44, 0x1a, 0xd3, 0x82, 0x04, 0x13, 0x4f, 0x83, 0x49, 0x5d, 0xeb, 0x19, 0x82, 0x47, 0xd8, 0x75, 0xf1, 0x9a, 0xf9, 0x93, 0x22, 0xc2, 0x93, 0x73, 0x90, 0x34, 0x0b, 0x32, 0x7d, 0x9e, 0x6a, 0x58, 0xb4, 0x1c, 0x76, 0xa3, 0x26, 0xc6, 0xef, 0xbe, 0xc0, 0x2c, 0x99, 0x56, }; static const unsigned char ecdh_secp521r1_2372_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2372_sharedsecret[] = { 0x00, 0x19, 0x9e, 0x65, 0xe0, 0x6f, 0x7c, 0x56, 0xf3, 0xc4, 0x7a, 0xaf, 0x9f, 0xb6, 0x65, 0x1f, 0x5d, 0x2f, 0xce, 0x23, 0xfa, 0x4b, 0x93, 0xa2, 0x1d, 0xbb, 0xff, 0x96, 0x55, 0x9b, 0x49, 0x1b, 0xb4, 0xa6, 0x0c, 0xb2, 0xb9, 0xf3, 0x5b, 0x7b, 0x45, 0xc3, 0xa8, 0x38, 0x82, 0x8a, 0x53, 0xc5, 0x47, 0x54, 0x36, 0x56, 0xc6, 0x57, 0xc9, 0x16, 0x59, 0x7a, 0xc0, 0x4c, 0xc0, 0x05, 0xb0, 0x20, 0x5b, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_2372 = { .name = "ecdh_secp521r1_2372", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2372_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2372_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2372_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 123 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2373 for ECDH, tcId is 124 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2373_peerpubkey[] = { 0x00, 0x14, 0x25, 0x1e, 0x9b, 0x87, 0xce, 0x81, 0xf7, 0xf1, 0x49, 0x77, 0x0c, 0x00, 0x7f, 0x1d, 0x63, 0x20, 0xb2, 0xd8, 0x13, 0xd2, 0x75, 0x45, 0x77, 0x3c, 0xcf, 0xf4, 0xce, 0x74, 0x84, 0x35, 0x4f, 0xdf, 0xd1, 0x9f, 0x93, 0x80, 0xde, 0x8c, 0xce, 0x76, 0xce, 0xab, 0xd6, 0x53, 0x0a, 0x0c, 0x81, 0x2a, 0x34, 0xe4, 0x40, 0x4b, 0xd8, 0x22, 0x69, 0xcd, 0x01, 0x2e, 0x1a, 0x17, 0xc7, 0x1c, 0x9d, 0x66, 0x00, 0xfb, 0xcd, 0x44, 0x30, 0x52, 0xcf, 0xaf, 0x03, 0x76, 0x0b, 0xd5, 0x36, 0x63, 0x78, 0x30, 0x8f, 0xdd, 0x6b, 0xf2, 0x93, 0x79, 0xf9, 0xb6, 0xb6, 0x77, 0xc9, 0xe8, 0x8b, 0x03, 0x6e, 0xf2, 0x6a, 0x3a, 0x27, 0x6b, 0x64, 0xa7, 0x51, 0x9e, 0x0d, 0x01, 0x9a, 0x00, 0x76, 0x0f, 0xef, 0x38, 0x7d, 0xd4, 0x83, 0xd0, 0xd5, 0x8a, 0xb3, 0xd3, 0x01, 0x58, 0xcd, 0x18, 0xb2, 0x60, 0xe5, 0x04, 0x15, 0x89, }; static const unsigned char ecdh_secp521r1_2373_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2373_sharedsecret[] = { 0x00, 0x2e, 0xe3, 0x0b, 0xb0, 0x81, 0xa0, 0x4b, 0x7c, 0x58, 0x5d, 0x12, 0xcf, 0x2e, 0x0d, 0xcc, 0xe9, 0x49, 0x38, 0xde, 0xb0, 0xb7, 0x2a, 0x5f, 0xba, 0x80, 0x16, 0x08, 0x63, 0x85, 0x4c, 0xbf, 0x74, 0x95, 0xfc, 0x4e, 0x83, 0x99, 0xad, 0x06, 0xaa, 0x6e, 0xa0, 0x59, 0x57, 0xb7, 0x62, 0x81, 0x05, 0x7f, 0x07, 0x01, 0x19, 0x6b, 0x98, 0x33, 0x71, 0xae, 0xec, 0x0e, 0x4e, 0x31, 0xf6, 0xb4, 0x2b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2373 = { .name = "ecdh_secp521r1_2373", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2373_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2373_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2373_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 124 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2374 for ECDH, tcId is 125 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2374_peerpubkey[] = { 0x01, 0xf5, 0x18, 0x38, 0xae, 0xe3, 0x6d, 0x1d, 0xfb, 0xb0, 0x00, 0xc0, 0xa3, 0xdd, 0x84, 0x75, 0x5a, 0x87, 0xd6, 0xdc, 0xc5, 0xee, 0x5c, 0x78, 0xc8, 0x8b, 0x30, 0xd3, 0xfe, 0x15, 0x49, 0xa8, 0x91, 0x82, 0x04, 0xaf, 0xbb, 0x74, 0x2a, 0xcd, 0x9b, 0x51, 0x20, 0xf1, 0x09, 0xdb, 0xfd, 0xf9, 0xe1, 0x6f, 0x0e, 0xae, 0x84, 0xbc, 0x82, 0xca, 0xf4, 0x13, 0x49, 0x25, 0x2f, 0xa9, 0x81, 0x2a, 0x94, 0x41, 0x01, 0xe0, 0xb3, 0xa7, 0x66, 0x9b, 0xb3, 0xae, 0xe5, 0x4e, 0x64, 0xbb, 0x03, 0xb6, 0x8a, 0x62, 0x28, 0x31, 0x15, 0x07, 0x19, 0xa2, 0x1d, 0x43, 0x28, 0xf7, 0x32, 0xa6, 0x49, 0x66, 0x6a, 0x25, 0x98, 0xd5, 0xad, 0x0f, 0x62, 0xb0, 0x0a, 0x26, 0x5a, 0x9e, 0x08, 0xf5, 0xec, 0x0b, 0x7b, 0x6f, 0x9e, 0x1f, 0x8c, 0xad, 0xa0, 0x43, 0x78, 0x58, 0x0b, 0x4a, 0x28, 0x7a, 0x3a, 0xf4, 0xae, 0x39, 0x53, 0x15, }; static const unsigned char ecdh_secp521r1_2374_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2374_sharedsecret[] = { 0x01, 0x89, 0x78, 0x67, 0x00, 0x90, 0x2c, 0xf0, 0xc1, 0xf5, 0x47, 0x9d, 0x83, 0x9e, 0xe4, 0xe2, 0x40, 0x1b, 0xd2, 0x49, 0xf4, 0x13, 0xc0, 0x4a, 0xa3, 0x01, 0x87, 0x32, 0xfc, 0x5f, 0xf9, 0xc4, 0x6a, 0x63, 0x74, 0x79, 0xf9, 0x34, 0x27, 0xe0, 0x30, 0xfa, 0x47, 0x46, 0x60, 0xe1, 0x8b, 0x2c, 0xab, 0x46, 0xf6, 0xae, 0x78, 0xf3, 0x31, 0xc5, 0xbd, 0x35, 0x1c, 0xbf, 0x32, 0xea, 0x67, 0x91, 0xfe, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp521r1_2374 = { .name = "ecdh_secp521r1_2374", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2374_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2374_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2374_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 125 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2375 for ECDH, tcId is 126 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2375_peerpubkey[] = { 0x00, 0xa8, 0xbb, 0x7b, 0x5f, 0x42, 0x57, 0xa3, 0x31, 0x9c, 0x6d, 0xcb, 0x1d, 0xf5, 0x89, 0x88, 0xcd, 0xf6, 0x04, 0x53, 0xe4, 0x39, 0xd2, 0x30, 0xf4, 0x25, 0x16, 0x32, 0xff, 0x92, 0xb2, 0x42, 0x4b, 0x14, 0x7c, 0xa4, 0x08, 0x24, 0xb2, 0x5e, 0x6e, 0xc5, 0xf7, 0x15, 0x99, 0xcc, 0xfd, 0x13, 0xea, 0x62, 0x13, 0x9e, 0x0e, 0xad, 0xf2, 0x50, 0xc0, 0xd0, 0xda, 0x62, 0x6f, 0x4f, 0x1e, 0xf0, 0xcc, 0xbe, 0x00, 0x49, 0x4f, 0xa6, 0x59, 0x39, 0xd5, 0xf5, 0xd1, 0x44, 0xce, 0xa5, 0x42, 0xde, 0xa2, 0x7d, 0x7b, 0x26, 0xdc, 0xb5, 0xd5, 0xd6, 0xe8, 0x13, 0xbc, 0x53, 0x07, 0x75, 0x3b, 0x61, 0x84, 0x10, 0x46, 0x5b, 0x1b, 0x96, 0xbe, 0xd7, 0x9c, 0x98, 0xb6, 0xa6, 0x0b, 0x58, 0xa0, 0xbd, 0xf8, 0x36, 0x08, 0xc8, 0x1a, 0x9e, 0xd3, 0x62, 0xb6, 0x6a, 0x4c, 0x61, 0x32, 0x3b, 0x34, 0xd2, 0xa6, 0x41, 0x6c, 0x83, }; static const unsigned char ecdh_secp521r1_2375_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2375_sharedsecret[] = { 0x00, 0x70, 0x68, 0x31, 0x1b, 0x5c, 0x58, 0x39, 0x7c, 0x16, 0x37, 0xbd, 0x9a, 0xf3, 0x8b, 0x6b, 0xa8, 0x7f, 0x10, 0x85, 0x1e, 0xee, 0x67, 0x5c, 0xba, 0xdc, 0x27, 0x86, 0x0e, 0x78, 0xd4, 0x48, 0xab, 0xf3, 0x3d, 0xec, 0x17, 0x4d, 0x98, 0x2d, 0xab, 0x6d, 0x10, 0x0d, 0x31, 0x5c, 0x55, 0x78, 0x72, 0xbc, 0x8f, 0x7a, 0xff, 0x2b, 0xa0, 0xff, 0xd5, 0x08, 0x2e, 0xe2, 0x03, 0x84, 0x0a, 0x7d, 0x64, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2375 = { .name = "ecdh_secp521r1_2375", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2375_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2375_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2375_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 126 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2376 for ECDH, tcId is 127 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2376_peerpubkey[] = { 0x01, 0xec, 0x49, 0xde, 0x21, 0xd6, 0x92, 0xfc, 0xd7, 0x08, 0x42, 0x80, 0x46, 0x0d, 0xc1, 0x41, 0x0b, 0x5c, 0xe1, 0x48, 0x55, 0xf5, 0x30, 0x21, 0x44, 0x47, 0xb6, 0xf5, 0x3d, 0x03, 0xb0, 0x19, 0xb8, 0xe1, 0xfa, 0x7a, 0x86, 0x2e, 0xae, 0x55, 0xfa, 0x90, 0x18, 0xfc, 0x93, 0x57, 0x99, 0x36, 0x74, 0x7c, 0x96, 0x59, 0x2c, 0x98, 0xee, 0xc6, 0x25, 0x71, 0x57, 0x2e, 0x4b, 0x40, 0xac, 0x81, 0x65, 0xe1, 0x01, 0x45, 0x73, 0xce, 0xe6, 0x5c, 0xae, 0x4d, 0x54, 0x38, 0x9e, 0x8d, 0x74, 0xe1, 0x20, 0xb3, 0x08, 0x29, 0x8f, 0x15, 0xb0, 0x75, 0xa4, 0x4e, 0xd0, 0xf5, 0x0e, 0xcf, 0x3e, 0x4a, 0xb0, 0x81, 0xac, 0xa1, 0x52, 0xc6, 0x14, 0xc5, 0x1a, 0x7b, 0x31, 0x21, 0x17, 0xdf, 0x7f, 0xc6, 0x07, 0xa8, 0x61, 0xd2, 0xda, 0xd1, 0x02, 0x37, 0x9b, 0xba, 0xbb, 0x8d, 0x72, 0xfc, 0x83, 0x6e, 0xc2, 0xc8, 0x23, 0x0c, }; static const unsigned char ecdh_secp521r1_2376_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2376_sharedsecret[] = { 0x00, 0x4e, 0x26, 0xf4, 0x6b, 0x52, 0x04, 0xc8, 0xea, 0x45, 0xf8, 0x01, 0x15, 0x74, 0x1a, 0xc6, 0xb0, 0xad, 0x0f, 0xbc, 0x34, 0xae, 0x30, 0xd8, 0x9b, 0x85, 0xc1, 0xa3, 0x90, 0xca, 0x28, 0xb6, 0xb8, 0x3d, 0xcd, 0x74, 0x48, 0xcd, 0x41, 0x3a, 0x00, 0x57, 0x28, 0x3d, 0xae, 0x28, 0x56, 0x25, 0xbe, 0xc2, 0x93, 0x2e, 0x93, 0x3f, 0xf3, 0x48, 0x09, 0x98, 0x21, 0x58, 0x7b, 0xee, 0xd6, 0x5d, 0x37, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2376 = { .name = "ecdh_secp521r1_2376", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2376_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2376_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2376_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 127 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2377 for ECDH, tcId is 128 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2377_peerpubkey[] = { 0x00, 0x55, 0x85, 0x82, 0x56, 0x8f, 0xf6, 0x81, 0x75, 0xce, 0xca, 0xa0, 0x65, 0x2b, 0xef, 0x37, 0x3d, 0x68, 0x75, 0xa1, 0x96, 0xa3, 0x0d, 0x77, 0x71, 0x56, 0x38, 0xcd, 0x45, 0x05, 0x9e, 0x9c, 0x20, 0x75, 0x95, 0xf9, 0x2b, 0xa5, 0xa0, 0x29, 0x90, 0xa9, 0xb7, 0xa0, 0x5f, 0xc8, 0x64, 0x93, 0x65, 0x51, 0x8c, 0xef, 0xea, 0x24, 0x60, 0x1e, 0xc1, 0x18, 0x7a, 0x9b, 0x6a, 0x6f, 0xd3, 0x7d, 0x3e, 0x82, 0x00, 0x2c, 0x25, 0x24, 0x98, 0x3d, 0x5c, 0x3d, 0x4c, 0x09, 0x35, 0x99, 0xf0, 0x0f, 0x96, 0xa7, 0xa3, 0x88, 0xe2, 0xdc, 0xd1, 0x8d, 0xdd, 0x24, 0x92, 0x3a, 0xb6, 0xf8, 0x23, 0x6d, 0xfc, 0xd5, 0x44, 0x72, 0x1f, 0xd2, 0x2c, 0xda, 0xf2, 0x0f, 0xa5, 0x1e, 0x1b, 0xf9, 0xf9, 0xa9, 0xe9, 0x98, 0xf3, 0x41, 0x54, 0xf2, 0x66, 0x24, 0x82, 0x7c, 0xd2, 0xcf, 0xa1, 0xb0, 0xe6, 0x34, 0xc8, 0x30, 0x56, 0xd9, }; static const unsigned char ecdh_secp521r1_2377_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2377_sharedsecret[] = { 0x01, 0x59, 0xf2, 0xd6, 0x52, 0x3e, 0xd3, 0xf3, 0x73, 0xf2, 0xf9, 0x55, 0xbb, 0x30, 0x2b, 0xb9, 0x4e, 0xfb, 0x74, 0x2c, 0x39, 0xfc, 0x08, 0x1d, 0xa1, 0xb9, 0x6b, 0x36, 0xce, 0x5f, 0x3f, 0xe0, 0x7b, 0xff, 0x07, 0xfb, 0xd2, 0x25, 0xdb, 0xa9, 0xea, 0x2a, 0x82, 0xc3, 0xbf, 0xf8, 0x93, 0x9b, 0x3c, 0xff, 0xec, 0xb5, 0x84, 0x4b, 0xe0, 0xec, 0xe9, 0xab, 0xe5, 0xc5, 0x1d, 0xbf, 0x02, 0x12, 0x64, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2377 = { .name = "ecdh_secp521r1_2377", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2377_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2377_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2377_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 128 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2378 for ECDH, tcId is 129 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2378_peerpubkey[] = { 0x01, 0x88, 0xdc, 0xd8, 0xcd, 0xf3, 0x85, 0x5c, 0xf7, 0xcf, 0x7f, 0x62, 0x25, 0x11, 0xc6, 0x49, 0xaa, 0x96, 0x82, 0x4b, 0xdc, 0xfe, 0x31, 0x84, 0x85, 0x97, 0x0a, 0xb2, 0xee, 0xb2, 0x42, 0x8e, 0x49, 0xae, 0x46, 0xe2, 0x79, 0xe3, 0xb0, 0x21, 0x10, 0x83, 0x9d, 0x5a, 0x44, 0x71, 0xf6, 0xa2, 0x36, 0xad, 0xee, 0x76, 0x03, 0x61, 0x04, 0x3b, 0x31, 0x06, 0x48, 0x84, 0x88, 0xcc, 0xbd, 0x2c, 0xaf, 0xb8, 0x00, 0x4b, 0x58, 0x4a, 0xc1, 0xd3, 0x22, 0x3c, 0x7a, 0x01, 0xa7, 0x25, 0xc3, 0x8c, 0x18, 0x2b, 0x4c, 0xa9, 0x28, 0x58, 0xdd, 0x2e, 0x76, 0x9f, 0x83, 0x05, 0x1d, 0xb9, 0x53, 0xe2, 0x0c, 0x63, 0xd4, 0x5d, 0x69, 0x72, 0xc6, 0x65, 0x9f, 0xca, 0x66, 0x4d, 0x97, 0x08, 0xb6, 0x97, 0x39, 0x05, 0xe7, 0x30, 0x4c, 0x39, 0x6c, 0x5f, 0x73, 0x9a, 0x0f, 0xc6, 0x68, 0x13, 0xac, 0xaa, 0xc1, 0xec, 0x1b, 0x0c, }; static const unsigned char ecdh_secp521r1_2378_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2378_sharedsecret[] = { 0x01, 0x5b, 0x29, 0xe3, 0x3f, 0x79, 0x59, 0xe2, 0xca, 0x91, 0xf5, 0x8a, 0x7e, 0x9e, 0x4b, 0x13, 0x2a, 0x09, 0x89, 0x68, 0x7f, 0x5a, 0x39, 0xf8, 0xbd, 0x61, 0xf7, 0xf4, 0x22, 0x75, 0xcc, 0x25, 0x60, 0x59, 0xa0, 0x4f, 0x05, 0xa5, 0xa7, 0xa3, 0x86, 0xed, 0xf0, 0x71, 0xf7, 0xc9, 0x81, 0x23, 0x5c, 0x3d, 0x05, 0x2f, 0xf7, 0x33, 0x84, 0x3b, 0xc9, 0x73, 0x8f, 0xa1, 0x04, 0xb9, 0xde, 0xb9, 0x24, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2378 = { .name = "ecdh_secp521r1_2378", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2378_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2378_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2378_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 129 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2379 for ECDH, tcId is 130 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2379_peerpubkey[] = { 0x01, 0x13, 0xc7, 0x1c, 0xb3, 0xb6, 0xb3, 0x2f, 0x6d, 0x20, 0x87, 0x97, 0x8f, 0x3f, 0x0a, 0xee, 0x36, 0xea, 0x8c, 0xb1, 0xf0, 0x28, 0xd2, 0xd9, 0x81, 0x61, 0xf7, 0x75, 0x8b, 0xbb, 0xee, 0xb3, 0xb9, 0x65, 0x88, 0xaf, 0x97, 0xbc, 0xb4, 0xf3, 0xff, 0xfc, 0x45, 0x7b, 0x90, 0xb5, 0x17, 0x39, 0xe7, 0x89, 0x4f, 0x23, 0x81, 0x16, 0xe9, 0x85, 0xca, 0xac, 0xff, 0x3e, 0x75, 0x1b, 0x56, 0x51, 0x8b, 0x3b, 0x00, 0x5b, 0x71, 0xf5, 0x23, 0x05, 0x98, 0x68, 0x9e, 0x62, 0x54, 0x78, 0x8b, 0x89, 0x40, 0x03, 0xdc, 0x91, 0xeb, 0xd9, 0x53, 0xa2, 0xfe, 0xdb, 0xed, 0x23, 0xa0, 0x68, 0xb9, 0xf9, 0x43, 0x79, 0x8b, 0xfe, 0x4d, 0x04, 0x5f, 0x7b, 0x0b, 0xad, 0x53, 0x67, 0x27, 0xa7, 0x3a, 0x66, 0xf2, 0x50, 0x13, 0x6f, 0x8f, 0x50, 0x06, 0x75, 0x3f, 0xf0, 0x4b, 0x00, 0xa1, 0x48, 0xaf, 0xbe, 0x70, 0xef, 0xc1, 0x43, }; static const unsigned char ecdh_secp521r1_2379_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2379_sharedsecret[] = { 0x00, 0x39, 0xcf, 0x50, 0x09, 0xc6, 0x41, 0x1a, 0x5b, 0x71, 0xb0, 0x45, 0x3f, 0x85, 0xb4, 0x1f, 0x50, 0x6b, 0x72, 0xdc, 0xcb, 0x33, 0xf3, 0x44, 0xad, 0x25, 0x72, 0x44, 0xdc, 0xf9, 0xc5, 0x24, 0xca, 0xa8, 0xfd, 0xd3, 0x76, 0xb5, 0x23, 0x48, 0x0b, 0xa2, 0x25, 0x31, 0x90, 0x42, 0x15, 0xd2, 0x6c, 0x8a, 0x81, 0x8b, 0x8f, 0x80, 0xa4, 0xaa, 0x1d, 0xd1, 0x11, 0xac, 0xd8, 0xee, 0x84, 0xcd, 0x45, 0x3d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2379 = { .name = "ecdh_secp521r1_2379", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2379_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2379_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2379_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 130 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2380 for ECDH, tcId is 131 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2380_peerpubkey[] = { 0x01, 0x75, 0x75, 0xa3, 0xf8, 0x58, 0x34, 0xca, 0x48, 0x32, 0xbf, 0x64, 0xc5, 0x9d, 0xf1, 0xbf, 0x30, 0xac, 0x83, 0x04, 0x29, 0x1c, 0x81, 0x53, 0x97, 0xdd, 0x9d, 0x90, 0xc0, 0x2a, 0xe0, 0x55, 0x96, 0x41, 0x10, 0x81, 0x4b, 0x15, 0x8f, 0x02, 0x9d, 0x40, 0xb3, 0x6b, 0x2a, 0x85, 0xa9, 0x56, 0x86, 0x79, 0xfb, 0x56, 0xa5, 0xab, 0x49, 0x73, 0x06, 0x8d, 0x9e, 0xdd, 0x80, 0xed, 0xb7, 0xa6, 0xa7, 0x6a, 0x00, 0xef, 0xa3, 0xca, 0x31, 0x01, 0x15, 0x86, 0x94, 0xba, 0x59, 0x9d, 0x27, 0xb4, 0xed, 0x0c, 0x43, 0x99, 0x77, 0xd2, 0x85, 0x5d, 0xd5, 0x7d, 0xd4, 0xbd, 0x31, 0x1a, 0xcc, 0x38, 0x82, 0xb0, 0x99, 0x67, 0xaf, 0x64, 0xfa, 0x34, 0xab, 0x08, 0xca, 0xf2, 0x4d, 0x2a, 0xca, 0xaf, 0x32, 0xd9, 0x3c, 0xac, 0x88, 0x39, 0xd3, 0x91, 0xaa, 0xc5, 0x1e, 0x2c, 0xd0, 0x67, 0xf4, 0x04, 0x6b, 0x5f, 0x87, 0xd3, }; static const unsigned char ecdh_secp521r1_2380_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2380_sharedsecret[] = { 0x01, 0xba, 0x06, 0x92, 0x54, 0xa9, 0x51, 0xa9, 0x61, 0xaa, 0xde, 0x06, 0x6f, 0xf0, 0x47, 0x97, 0xbf, 0xc9, 0xcd, 0xfe, 0xbf, 0x2a, 0x19, 0xe4, 0xf4, 0xb7, 0x24, 0x02, 0x4e, 0x31, 0x6e, 0x8a, 0xfd, 0x9e, 0xd4, 0x8b, 0x63, 0x6a, 0x4a, 0x0d, 0x78, 0xcc, 0x4d, 0x37, 0xd9, 0x40, 0x2a, 0xd1, 0xc9, 0x81, 0x64, 0x0f, 0x90, 0xd2, 0x8f, 0x4e, 0x56, 0x6c, 0xea, 0xc9, 0xb6, 0x6c, 0x40, 0x00, 0xd3, 0xef, }; static const wycheproof_ecdh_test ecdh_secp521r1_2380 = { .name = "ecdh_secp521r1_2380", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2380_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2380_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2380_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 131 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2381 for ECDH, tcId is 132 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2381_peerpubkey[] = { 0x00, 0x6d, 0xd0, 0xee, 0x8e, 0x43, 0xf6, 0x15, 0xe3, 0x0b, 0x63, 0xdc, 0x45, 0x57, 0x01, 0x66, 0x1c, 0x9d, 0xec, 0x69, 0xdf, 0xde, 0x65, 0xab, 0x7c, 0xf9, 0x72, 0x10, 0x39, 0xe3, 0xe5, 0xd3, 0xcc, 0x5c, 0x12, 0xf8, 0xe4, 0xc0, 0xb6, 0xa3, 0x42, 0x2b, 0xf1, 0x3d, 0x32, 0xe4, 0x10, 0x82, 0x55, 0x29, 0x0f, 0x9c, 0xc9, 0xd6, 0xe4, 0xcf, 0xb9, 0xc9, 0xea, 0x16, 0x5f, 0x93, 0x45, 0xe1, 0x75, 0x9c, 0x00, 0x46, 0x49, 0xf0, 0x3b, 0x78, 0xe5, 0xdf, 0xfa, 0xbb, 0xa7, 0x0e, 0x74, 0xe9, 0x6c, 0x53, 0x62, 0xfa, 0x83, 0x18, 0x6b, 0xdc, 0x44, 0x82, 0x0b, 0xb0, 0xea, 0xf1, 0xbb, 0xd1, 0xa5, 0x19, 0x76, 0xcb, 0xbc, 0xfc, 0x03, 0xa9, 0x86, 0xbd, 0xdf, 0x93, 0x99, 0x6d, 0x96, 0x0f, 0xa7, 0x7a, 0xac, 0x46, 0xf9, 0xb7, 0xa5, 0xc3, 0x2c, 0x62, 0xc3, 0x40, 0x2c, 0x40, 0x0b, 0x31, 0x65, 0xc1, 0xba, 0x21, }; static const unsigned char ecdh_secp521r1_2381_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2381_sharedsecret[] = { 0x01, 0x6c, 0x4b, 0xfe, 0x17, 0xc9, 0x1c, 0x3a, 0xb2, 0xc6, 0x0e, 0x5c, 0x9c, 0x2f, 0xac, 0x1b, 0xe4, 0x89, 0x3f, 0x80, 0xfc, 0xa0, 0x56, 0x47, 0xc3, 0x4c, 0x82, 0xee, 0x8e, 0xe5, 0xe3, 0xb3, 0xc8, 0x9c, 0x6e, 0x87, 0xbc, 0x3a, 0xf4, 0x44, 0xdf, 0xdd, 0x1d, 0x69, 0x2a, 0x3d, 0xa4, 0x5a, 0x45, 0x97, 0x5b, 0xd5, 0x07, 0x74, 0x47, 0x13, 0x13, 0xd5, 0xb7, 0xd1, 0x49, 0xa5, 0x39, 0x5b, 0xa7, 0xed, }; static const wycheproof_ecdh_test ecdh_secp521r1_2381 = { .name = "ecdh_secp521r1_2381", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2381_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2381_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2381_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 132 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2382 for ECDH, tcId is 133 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2382_peerpubkey[] = { 0x01, 0xa6, 0xd5, 0xd0, 0x68, 0xb1, 0x90, 0x81, 0x77, 0xa1, 0xb1, 0x8f, 0xe0, 0x78, 0xdf, 0x8f, 0x89, 0x94, 0x58, 0x70, 0xca, 0x88, 0x11, 0x69, 0x5b, 0x44, 0x70, 0x04, 0x8c, 0xe0, 0xc3, 0x44, 0x43, 0xb9, 0xa7, 0xf9, 0x5f, 0x8a, 0xf9, 0xfb, 0x6a, 0x4c, 0xa0, 0x28, 0x5d, 0x17, 0x91, 0xce, 0x97, 0x5a, 0xd5, 0xa6, 0x5a, 0x5c, 0x9f, 0x6b, 0x3d, 0xf8, 0x05, 0xcc, 0x69, 0xb3, 0x98, 0x4e, 0xfe, 0xd4, 0x01, 0x02, 0x53, 0x39, 0xe4, 0x0a, 0x26, 0xa3, 0xf6, 0xf4, 0xfe, 0x54, 0x10, 0x17, 0x06, 0xb7, 0xf6, 0xd4, 0x75, 0xb9, 0x0f, 0x58, 0xf7, 0xca, 0x58, 0x17, 0xab, 0x5c, 0x3d, 0xf4, 0xd8, 0x38, 0x44, 0xf4, 0x29, 0x79, 0xdc, 0xc8, 0x8d, 0xab, 0x07, 0x85, 0xea, 0x24, 0x26, 0x43, 0x15, 0x95, 0x29, 0xbd, 0x1c, 0xee, 0xd9, 0xbe, 0x4e, 0xee, 0xb2, 0x30, 0x2f, 0xac, 0xc6, 0xb4, 0x40, 0xb5, 0x82, 0x64, }; static const unsigned char ecdh_secp521r1_2382_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2382_sharedsecret[] = { 0x00, 0x51, 0x91, 0x84, 0x91, 0x04, 0xcd, 0xe5, 0xbe, 0x25, 0x63, 0xc0, 0x13, 0x30, 0x65, 0xff, 0xcb, 0xf4, 0xbf, 0x41, 0x1a, 0xf3, 0x2e, 0x09, 0x86, 0x59, 0x89, 0xb3, 0x94, 0xec, 0x75, 0xe8, 0x2b, 0x4e, 0x46, 0x49, 0xd3, 0x31, 0x25, 0x03, 0x4f, 0x2b, 0x8c, 0xae, 0x1c, 0x29, 0x59, 0x2a, 0xaa, 0x9e, 0x50, 0x70, 0x0d, 0xa7, 0x4c, 0x08, 0x83, 0x18, 0xd7, 0x20, 0xa6, 0x8f, 0x58, 0x65, 0x3e, 0x12, }; static const wycheproof_ecdh_test ecdh_secp521r1_2382 = { .name = "ecdh_secp521r1_2382", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2382_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2382_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2382_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 133 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2383 for ECDH, tcId is 134 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2383_peerpubkey[] = { 0x01, 0xbd, 0x7d, 0x67, 0x37, 0x9b, 0x30, 0x96, 0x72, 0x8a, 0x36, 0x67, 0x96, 0xf7, 0x01, 0x49, 0x77, 0xd1, 0x1e, 0xff, 0x92, 0xf1, 0xfd, 0x30, 0x98, 0x3c, 0x74, 0x52, 0xb8, 0x2f, 0xea, 0x61, 0xf7, 0x7a, 0xe4, 0xa4, 0x31, 0x87, 0x3e, 0x2c, 0x55, 0x88, 0x95, 0x1b, 0x66, 0x35, 0x04, 0x61, 0x0d, 0x13, 0x91, 0xb8, 0xf9, 0x12, 0x2f, 0xd7, 0x89, 0x6e, 0xd4, 0x5b, 0x27, 0xd2, 0x32, 0x03, 0x82, 0xa3, 0x01, 0x95, 0x47, 0x26, 0x0a, 0x02, 0x1b, 0xd8, 0x6b, 0xb1, 0x49, 0x03, 0x2b, 0xad, 0x3c, 0x6a, 0xe1, 0x94, 0x44, 0x58, 0x99, 0x57, 0x3c, 0x40, 0x07, 0xf4, 0x4c, 0xec, 0x88, 0xe2, 0x32, 0xe4, 0x3d, 0x02, 0x7a, 0x36, 0x2c, 0xf5, 0x9c, 0xf1, 0x28, 0x36, 0x7c, 0xdd, 0x59, 0x53, 0x60, 0xe0, 0xbb, 0xc2, 0xa2, 0x5a, 0xca, 0x86, 0x3b, 0x09, 0x77, 0x57, 0x16, 0x7d, 0xe4, 0x41, 0x0d, 0x26, 0x1b, 0x16, }; static const unsigned char ecdh_secp521r1_2383_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2383_sharedsecret[] = { 0x00, 0x1f, 0x8e, 0x92, 0x5d, 0x5b, 0x2d, 0x22, 0xf7, 0xd1, 0xd7, 0xfd, 0xda, 0xa3, 0x57, 0x5f, 0xa3, 0x2d, 0x44, 0x6f, 0x99, 0xe7, 0x74, 0xdb, 0x28, 0x2c, 0x93, 0xd0, 0x0b, 0xee, 0xca, 0xbd, 0xa9, 0xaa, 0xcf, 0xc6, 0x44, 0xb9, 0xce, 0xcd, 0x76, 0xe7, 0xf1, 0x22, 0x51, 0x5b, 0x6e, 0xbe, 0xf3, 0xb5, 0x60, 0x75, 0xf7, 0xa2, 0x10, 0x1f, 0x9c, 0x49, 0x2e, 0x83, 0xe6, 0x21, 0x47, 0xd0, 0x9b, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_2383 = { .name = "ecdh_secp521r1_2383", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2383_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2383_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2383_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 134 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2384 for ECDH, tcId is 135 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2384_peerpubkey[] = { 0x00, 0x91, 0x43, 0xdc, 0xc8, 0xd4, 0x45, 0xd7, 0xf6, 0x64, 0x48, 0x1f, 0xba, 0xce, 0x68, 0x90, 0x04, 0x53, 0x94, 0x95, 0x37, 0xfa, 0xd7, 0x37, 0x56, 0xd8, 0x18, 0x56, 0x1e, 0x59, 0x44, 0x8f, 0xfb, 0x49, 0x02, 0x2b, 0x73, 0x7f, 0xc3, 0xe7, 0x25, 0xd6, 0xc1, 0xc4, 0x5b, 0xb0, 0xb0, 0x68, 0x80, 0x92, 0x28, 0xb0, 0xfd, 0x89, 0x61, 0xee, 0xf2, 0x20, 0x61, 0x2b, 0xe0, 0x50, 0x40, 0xc5, 0x40, 0x2e, 0x01, 0xf8, 0xbd, 0x05, 0x6f, 0x5f, 0x9f, 0xb3, 0x08, 0x3e, 0x90, 0x83, 0x37, 0x48, 0x64, 0x73, 0x1d, 0x75, 0x44, 0x1a, 0x1d, 0xc5, 0x2b, 0x41, 0x90, 0x4d, 0x6b, 0x2e, 0xaa, 0xb8, 0x05, 0x03, 0x0b, 0x04, 0xcd, 0xa6, 0xfb, 0x42, 0xea, 0xcc, 0xc7, 0xc9, 0xd5, 0x06, 0x56, 0xf0, 0xa8, 0x52, 0x25, 0x12, 0x0a, 0x06, 0x71, 0xb1, 0x89, 0x2f, 0x2c, 0x11, 0x8e, 0x7b, 0x53, 0x8e, 0x5c, 0x55, 0xaa, 0x64, }; static const unsigned char ecdh_secp521r1_2384_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2384_sharedsecret[] = { 0x00, 0x72, 0xa7, 0xf9, 0x9e, 0x29, 0x1a, 0x15, 0xc4, 0x5b, 0xc7, 0x8c, 0x48, 0x4e, 0x4f, 0xe9, 0x49, 0x03, 0xa9, 0x58, 0x04, 0x81, 0x26, 0xf3, 0xc2, 0x40, 0x5c, 0x5f, 0xf8, 0xba, 0xc7, 0xdd, 0x07, 0xdd, 0x96, 0xd4, 0x50, 0xb0, 0x17, 0xf6, 0xcb, 0xf6, 0xac, 0xf6, 0x9f, 0xe1, 0x13, 0xfb, 0x7a, 0x67, 0x66, 0xde, 0x8a, 0x95, 0x6e, 0xc0, 0x6f, 0x77, 0x2c, 0x15, 0xc8, 0x4d, 0xe9, 0xf4, 0xd4, 0x62, }; static const wycheproof_ecdh_test ecdh_secp521r1_2384 = { .name = "ecdh_secp521r1_2384", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2384_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2384_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2384_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 135 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2385 for ECDH, tcId is 136 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2385_peerpubkey[] = { 0x00, 0x80, 0xfa, 0xa5, 0x68, 0x5c, 0x19, 0xf0, 0x85, 0x10, 0x1f, 0x01, 0x0e, 0x83, 0xb2, 0xf0, 0x10, 0x09, 0x62, 0xa1, 0x84, 0x78, 0xc9, 0xb5, 0x1a, 0xa0, 0xd7, 0x52, 0xbd, 0x0e, 0x43, 0x95, 0x37, 0x89, 0x2a, 0x10, 0x7c, 0x34, 0xa5, 0x53, 0xc1, 0x8d, 0xb4, 0xf7, 0x51, 0x5f, 0x2e, 0xf3, 0x8c, 0xaf, 0x82, 0x53, 0xad, 0x2a, 0xf8, 0xc5, 0x9d, 0x84, 0xb7, 0xf7, 0x91, 0x72, 0xcf, 0x2e, 0xb4, 0xcb, 0x01, 0xe9, 0xc0, 0x32, 0x82, 0x70, 0xb7, 0x61, 0xa0, 0xc9, 0x15, 0xa6, 0xed, 0x29, 0xee, 0x22, 0x31, 0x33, 0xeb, 0x46, 0x6e, 0xfe, 0x23, 0x17, 0xc6, 0xf8, 0xad, 0x2b, 0x3c, 0x8d, 0x88, 0x79, 0x4e, 0x4a, 0xba, 0x3f, 0x96, 0x6b, 0x4a, 0xca, 0x55, 0x94, 0xc9, 0xa7, 0x4b, 0x37, 0xb4, 0x50, 0x3e, 0xe5, 0xa0, 0x79, 0x4d, 0x59, 0xc1, 0x08, 0x66, 0x68, 0x97, 0xf5, 0xec, 0x9b, 0xc7, 0xbb, 0xcb, 0xd1, }; static const unsigned char ecdh_secp521r1_2385_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2385_sharedsecret[] = { 0x00, 0xfe, 0x7b, 0x90, 0xed, 0xa1, 0xf7, 0x23, 0xc5, 0xe4, 0x42, 0x01, 0x7d, 0xad, 0xde, 0x8a, 0xff, 0xe3, 0xca, 0x80, 0xaf, 0xc9, 0xf4, 0x70, 0x32, 0x67, 0x62, 0x6f, 0x47, 0x74, 0xf0, 0x6e, 0x2c, 0x21, 0xa5, 0xd9, 0xc6, 0x47, 0x28, 0x82, 0xea, 0x88, 0x06, 0xa9, 0x13, 0x9c, 0x4a, 0x74, 0x0f, 0x26, 0x54, 0xd1, 0x0c, 0xaa, 0x5e, 0x3d, 0x7b, 0xbb, 0x7e, 0x59, 0x71, 0x3f, 0xa0, 0x32, 0xb9, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_2385 = { .name = "ecdh_secp521r1_2385", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2385_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2385_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2385_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 136 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2386 for ECDH, tcId is 137 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2386_peerpubkey[] = { 0x01, 0x4d, 0x6f, 0x8f, 0xa1, 0x57, 0xee, 0xbe, 0xa8, 0xbc, 0x27, 0x28, 0x62, 0xd9, 0xf8, 0xfb, 0xee, 0x63, 0xda, 0x5b, 0xe9, 0x53, 0xe3, 0x33, 0xd0, 0x6b, 0x74, 0x43, 0xcb, 0xb9, 0x6d, 0x0c, 0x46, 0x4a, 0x17, 0x19, 0x43, 0xb8, 0x25, 0x65, 0xea, 0x71, 0x0c, 0x12, 0x64, 0x98, 0xae, 0xb7, 0x97, 0x98, 0x23, 0xb2, 0xeb, 0x1e, 0x81, 0xbe, 0xd3, 0xff, 0xdd, 0x6e, 0x40, 0xf4, 0x52, 0x1e, 0x6c, 0xb9, 0x00, 0x70, 0x1b, 0xcf, 0x9e, 0x45, 0xd6, 0xae, 0x48, 0x99, 0xd9, 0x6e, 0xd5, 0x9a, 0x80, 0x15, 0xc4, 0x54, 0x73, 0x5f, 0x9e, 0xfd, 0xdb, 0x47, 0x59, 0x8f, 0xbe, 0x04, 0x7e, 0x8c, 0x40, 0x21, 0xd7, 0x86, 0xdb, 0x35, 0x39, 0xda, 0x79, 0x76, 0x03, 0x58, 0xc0, 0xf9, 0x28, 0xb2, 0xb7, 0x2c, 0xb9, 0x36, 0xcb, 0x66, 0xe4, 0xfc, 0x81, 0xff, 0x07, 0x9e, 0xcd, 0xe8, 0xe1, 0x89, 0x89, 0xe8, 0x79, 0x50, }; static const unsigned char ecdh_secp521r1_2386_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2386_sharedsecret[] = { 0x01, 0x40, 0x63, 0xb3, 0xdc, 0xe4, 0xc9, 0x9f, 0x5f, 0x53, 0xe5, 0xf3, 0x60, 0x87, 0x5c, 0x02, 0xbd, 0x45, 0x34, 0xa8, 0x3b, 0xbb, 0x77, 0x9b, 0xe9, 0xeb, 0x05, 0xe6, 0x70, 0x59, 0x5e, 0x57, 0xa7, 0x08, 0x69, 0x1c, 0x5d, 0xf0, 0xa0, 0x06, 0x2b, 0x43, 0xd0, 0xfa, 0x34, 0x9d, 0xb2, 0x01, 0xd6, 0x27, 0x9c, 0x13, 0x1d, 0x84, 0xe9, 0x66, 0x2c, 0xf8, 0x2f, 0xbe, 0xea, 0xb6, 0xea, 0x02, 0x94, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2386 = { .name = "ecdh_secp521r1_2386", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2386_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2386_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2386_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 137 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2387 for ECDH, tcId is 138 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2387_peerpubkey[] = { 0x01, 0x63, 0x61, 0xd1, 0x92, 0x07, 0xfa, 0xd3, 0xb9, 0xcf, 0x68, 0xa0, 0xd7, 0xcb, 0x22, 0x47, 0x44, 0xda, 0xf5, 0xc1, 0x8c, 0x0d, 0x79, 0xf0, 0x60, 0xab, 0x13, 0x69, 0xd7, 0xf0, 0x26, 0xc2, 0x1d, 0xa2, 0xde, 0xa0, 0x98, 0x73, 0x9f, 0xc7, 0x9e, 0x66, 0x4b, 0xce, 0xed, 0x06, 0xbd, 0x8b, 0x8f, 0x29, 0x47, 0x19, 0x07, 0x75, 0x43, 0x19, 0xce, 0xfd, 0x9f, 0x21, 0x6f, 0x32, 0x26, 0xa4, 0xa8, 0x7b, 0x00, 0xb7, 0x00, 0x7b, 0x2d, 0xf9, 0xa1, 0x23, 0xdd, 0x81, 0xdf, 0x4f, 0x5d, 0x52, 0x13, 0x58, 0x0c, 0x17, 0x4f, 0xd6, 0x8a, 0xa5, 0xde, 0x23, 0xe5, 0x38, 0x6c, 0x1f, 0x76, 0xbc, 0x67, 0x11, 0xba, 0xbf, 0xab, 0x72, 0xcf, 0x9b, 0xfa, 0x32, 0x8e, 0x97, 0xfb, 0xe9, 0xa3, 0xb7, 0x9a, 0xd0, 0xd3, 0x9a, 0x77, 0x8e, 0x3c, 0x64, 0xb7, 0x4a, 0x34, 0x31, 0x9a, 0xea, 0x04, 0x23, 0xfa, 0x27, 0x00, 0x67, }; static const unsigned char ecdh_secp521r1_2387_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2387_sharedsecret[] = { 0x00, 0x76, 0x51, 0x88, 0xff, 0x6d, 0x0d, 0xb1, 0x90, 0x91, 0x4b, 0x3e, 0xe9, 0xcb, 0xf6, 0x33, 0xe9, 0xe5, 0xc2, 0x60, 0x7b, 0x73, 0x23, 0xe7, 0x0e, 0x76, 0xc3, 0xcf, 0x3e, 0x2b, 0x3f, 0x1c, 0xdc, 0xed, 0xa6, 0x2b, 0x50, 0x75, 0xa8, 0xd4, 0x3b, 0x30, 0x6f, 0xc8, 0x3e, 0x5e, 0x43, 0x94, 0xcb, 0xa6, 0xbe, 0x00, 0x98, 0x87, 0x7b, 0x20, 0x00, 0x38, 0x55, 0x08, 0xd0, 0x94, 0x2c, 0xdb, 0xa4, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2387 = { .name = "ecdh_secp521r1_2387", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2387_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2387_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2387_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 138 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2388 for ECDH, tcId is 139 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2388_peerpubkey[] = { 0x01, 0x12, 0x3d, 0x8b, 0xb1, 0x7d, 0x84, 0x76, 0x0c, 0xeb, 0x4e, 0x3e, 0xc9, 0x83, 0x87, 0x47, 0x8f, 0x95, 0x87, 0xdc, 0xc0, 0x5b, 0x47, 0x20, 0xd8, 0x83, 0x4f, 0xfc, 0xd8, 0x2c, 0x06, 0xf5, 0x9a, 0xba, 0x27, 0x83, 0x65, 0xe8, 0x34, 0xbc, 0xa2, 0x73, 0x6e, 0xd6, 0x33, 0x37, 0x57, 0xf5, 0x79, 0x20, 0x25, 0x6b, 0xd9, 0xe1, 0xb1, 0xbf, 0x3d, 0x43, 0xb6, 0x20, 0x89, 0x6d, 0xbf, 0xd8, 0x77, 0xa3, 0x01, 0x21, 0x35, 0xf5, 0x87, 0xed, 0x6a, 0x6b, 0xd6, 0xb0, 0x95, 0xd4, 0x1c, 0x7a, 0xbc, 0x2a, 0x70, 0xc9, 0xd4, 0x94, 0x61, 0xd3, 0xed, 0x7c, 0xf4, 0xe7, 0x81, 0xc8, 0x20, 0x05, 0x83, 0xa0, 0xe8, 0xe9, 0x4a, 0xb8, 0xa0, 0x0b, 0x52, 0xa7, 0xd0, 0xbb, 0xf1, 0x82, 0xcb, 0x3b, 0xc0, 0x83, 0x2f, 0xe8, 0x2c, 0xca, 0x18, 0xe5, 0x3e, 0x78, 0xb0, 0x49, 0xbf, 0x9e, 0xa6, 0xac, 0x60, 0x17, 0xe3, 0xd8, }; static const unsigned char ecdh_secp521r1_2388_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2388_sharedsecret[] = { 0x01, 0xb1, 0xc9, 0xe8, 0xa4, 0x74, 0x8e, 0x6e, 0x1a, 0xea, 0x3d, 0xab, 0xf3, 0x7a, 0xe7, 0x4b, 0xaf, 0x28, 0x61, 0xe4, 0x82, 0xaf, 0x32, 0x30, 0x9d, 0xc9, 0x3e, 0x7c, 0x7e, 0xac, 0xea, 0xa5, 0x84, 0x41, 0x64, 0x45, 0xa1, 0xec, 0x4f, 0x0f, 0x24, 0xb3, 0x93, 0x8e, 0x11, 0x81, 0x91, 0xa5, 0xbf, 0x9e, 0x72, 0x88, 0x5b, 0xba, 0x5c, 0x28, 0x22, 0x75, 0xc4, 0x9f, 0x5e, 0x4b, 0xd8, 0x2e, 0x25, 0x67, }; static const wycheproof_ecdh_test ecdh_secp521r1_2388 = { .name = "ecdh_secp521r1_2388", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2388_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2388_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2388_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 139 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2389 for ECDH, tcId is 140 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2389_peerpubkey[] = { 0x00, 0x61, 0xaa, 0x4a, 0xa6, 0x80, 0xe5, 0xa3, 0x27, 0xee, 0x04, 0x95, 0xbe, 0xff, 0x81, 0xc9, 0xa9, 0x60, 0x1a, 0x4a, 0x42, 0xa8, 0x30, 0x72, 0x55, 0x38, 0xf9, 0x94, 0x0d, 0x23, 0x4f, 0x8f, 0xec, 0x38, 0xff, 0xd2, 0x15, 0x37, 0x09, 0x44, 0x92, 0xb5, 0x8e, 0xcc, 0x41, 0x02, 0xed, 0xdf, 0xe1, 0x8e, 0xe8, 0xf5, 0x94, 0x7c, 0x47, 0x36, 0xdc, 0x60, 0x06, 0x6f, 0xa8, 0xd9, 0xb8, 0x23, 0x0f, 0x40, 0x01, 0x73, 0x02, 0x96, 0xbd, 0x1d, 0x13, 0xab, 0x65, 0xe8, 0x5a, 0xdc, 0x69, 0xc0, 0x82, 0x2e, 0x20, 0xe7, 0xdd, 0x73, 0x97, 0x55, 0xbc, 0x28, 0xd7, 0x23, 0x1e, 0x79, 0xba, 0x1c, 0x31, 0x25, 0x0c, 0x19, 0x72, 0x25, 0x2c, 0x28, 0x08, 0x96, 0xf3, 0x0a, 0x26, 0xc8, 0x80, 0xa3, 0x48, 0x04, 0x1b, 0x09, 0x58, 0xee, 0x04, 0x43, 0xc2, 0xe4, 0x03, 0xeb, 0x98, 0x28, 0x59, 0x9c, 0xda, 0x90, 0xf7, 0xa8, }; static const unsigned char ecdh_secp521r1_2389_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2389_sharedsecret[] = { 0x01, 0x53, 0xa4, 0x70, 0x9f, 0xc4, 0x74, 0x47, 0x6e, 0x76, 0x94, 0x8b, 0x04, 0xd4, 0x30, 0xc2, 0xed, 0x70, 0x8a, 0xb6, 0x97, 0xbb, 0x54, 0x58, 0x9d, 0x35, 0xa7, 0xc9, 0x6d, 0x33, 0x63, 0x20, 0x72, 0xb4, 0xa3, 0x7d, 0xee, 0xa3, 0x42, 0x8d, 0x8d, 0x0a, 0x93, 0x3c, 0x7b, 0xff, 0xed, 0x06, 0x8d, 0x92, 0xa9, 0x06, 0x1f, 0x0f, 0xa3, 0x9e, 0x62, 0xe7, 0xd5, 0x52, 0xb3, 0x1e, 0x4a, 0x15, 0x05, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_2389 = { .name = "ecdh_secp521r1_2389", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2389_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2389_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2389_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 140 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2390 for ECDH, tcId is 141 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2390_peerpubkey[] = { 0x00, 0x86, 0xb5, 0xbc, 0xf4, 0xbb, 0xd0, 0x5a, 0x5b, 0x56, 0x51, 0xbc, 0xa9, 0x79, 0x1e, 0x55, 0x0f, 0xec, 0x3e, 0x9b, 0x2f, 0xf0, 0xd6, 0xbb, 0x25, 0x5b, 0x2d, 0x91, 0x90, 0xf5, 0x94, 0x64, 0x39, 0xb5, 0x3f, 0x95, 0x13, 0xa1, 0x22, 0xe5, 0xca, 0x0a, 0x9f, 0xf1, 0x2e, 0x33, 0x86, 0xb7, 0x52, 0x4e, 0x46, 0xd7, 0xf5, 0x61, 0x67, 0xca, 0x61, 0x27, 0xce, 0x83, 0xe6, 0x7b, 0xf5, 0xdc, 0xe6, 0xce, 0x00, 0x86, 0x5b, 0x20, 0x83, 0xd5, 0xc0, 0x20, 0x02, 0x85, 0xee, 0x7f, 0xf4, 0x95, 0x09, 0x22, 0xa8, 0xab, 0xd4, 0xee, 0xf9, 0x3d, 0x8d, 0xed, 0x25, 0xb5, 0x3c, 0xf9, 0xaf, 0x32, 0x7e, 0x6e, 0x4c, 0x30, 0xc4, 0x43, 0x8e, 0xd2, 0xc4, 0x0c, 0x67, 0xe8, 0x78, 0x35, 0x51, 0x83, 0x61, 0xc9, 0x8f, 0xd7, 0x43, 0xd8, 0x59, 0xf6, 0xc1, 0x73, 0xa9, 0x51, 0xa9, 0x5a, 0x99, 0x40, 0x9e, 0x83, 0x19, 0x59, }; static const unsigned char ecdh_secp521r1_2390_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2390_sharedsecret[] = { 0x01, 0x67, 0xd0, 0xda, 0x4c, 0x5d, 0xad, 0xd2, 0x5f, 0x87, 0x87, 0xa8, 0x4a, 0x96, 0x44, 0x5c, 0x25, 0x4d, 0x8e, 0x17, 0xfe, 0xee, 0xb7, 0xd2, 0x1a, 0xf6, 0x71, 0x2e, 0x30, 0x7c, 0xd7, 0x35, 0x1e, 0xbe, 0x18, 0x5c, 0x0a, 0x52, 0x74, 0x02, 0xa5, 0xfe, 0xda, 0xa1, 0xb2, 0x6a, 0xce, 0x55, 0x49, 0xab, 0x13, 0xb2, 0x08, 0x15, 0x6d, 0x14, 0x38, 0x9f, 0xd8, 0x13, 0x3c, 0x6f, 0x4f, 0xe3, 0x1e, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2390 = { .name = "ecdh_secp521r1_2390", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2390_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2390_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2390_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 141 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2391 for ECDH, tcId is 142 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2391_peerpubkey[] = { 0x01, 0xa0, 0x9a, 0xca, 0x76, 0x5c, 0x94, 0x9b, 0x65, 0x6a, 0xbd, 0xb5, 0x96, 0x80, 0x55, 0x31, 0x63, 0x84, 0x24, 0x5a, 0xb7, 0x75, 0xe8, 0x58, 0x41, 0x19, 0x40, 0x5c, 0x85, 0xab, 0x79, 0xfd, 0xc7, 0xef, 0x1e, 0x07, 0x9a, 0x35, 0xbd, 0x29, 0x9a, 0xe1, 0x49, 0xd6, 0x5f, 0x15, 0xab, 0x0d, 0x64, 0x91, 0x2c, 0x5c, 0x9a, 0x62, 0xbc, 0xa4, 0x1b, 0xdb, 0x58, 0x67, 0x82, 0xe8, 0xeb, 0x0c, 0xff, 0x96, 0x00, 0x25, 0x8a, 0x50, 0xf1, 0xbb, 0x54, 0x2d, 0xd1, 0x64, 0xb8, 0x94, 0x3b, 0xde, 0x1f, 0x20, 0x78, 0xea, 0x7d, 0x3e, 0x89, 0x18, 0x1e, 0xfa, 0xb2, 0x42, 0xda, 0x30, 0xb1, 0xa1, 0x25, 0x62, 0x18, 0x41, 0x04, 0x44, 0x9e, 0x4d, 0x75, 0x9d, 0xae, 0x9c, 0xb9, 0xd0, 0x75, 0xc3, 0x04, 0x56, 0xb1, 0xa4, 0xe4, 0x87, 0x40, 0xdc, 0xca, 0xd7, 0xb5, 0x9b, 0x17, 0xdc, 0x1c, 0x81, 0xd5, 0x17, 0xf2, 0xcd, }; static const unsigned char ecdh_secp521r1_2391_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2391_sharedsecret[] = { 0x01, 0x52, 0x8f, 0x5a, 0xb7, 0x58, 0xd9, 0xb6, 0x11, 0x2f, 0x19, 0xe1, 0x02, 0x1f, 0x50, 0x89, 0xd5, 0x26, 0xcc, 0x50, 0x91, 0x10, 0x26, 0xe2, 0x7d, 0x44, 0xca, 0x6d, 0x77, 0x22, 0x0c, 0x81, 0x6b, 0x23, 0x26, 0xa2, 0xdd, 0x6b, 0x91, 0x52, 0x40, 0x88, 0x13, 0xbf, 0x8d, 0x39, 0x99, 0x06, 0xcb, 0x1a, 0xe3, 0x3a, 0x52, 0xcf, 0x67, 0xe7, 0x47, 0x09, 0xd7, 0x96, 0xc7, 0x07, 0x01, 0x71, 0x04, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_2391 = { .name = "ecdh_secp521r1_2391", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2391_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2391_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2391_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 142 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2392 for ECDH, tcId is 143 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2392_peerpubkey[] = { 0x00, 0xa6, 0xe2, 0x16, 0xa0, 0x9b, 0x63, 0x60, 0x32, 0xf3, 0x9e, 0xea, 0x55, 0x21, 0x92, 0xc2, 0x42, 0xbe, 0x7f, 0xf5, 0x47, 0x8f, 0x7f, 0x7f, 0x9b, 0x0c, 0xaa, 0x25, 0xb8, 0xae, 0xed, 0xea, 0xde, 0xd3, 0x3b, 0xa6, 0x6b, 0x5f, 0xee, 0xc7, 0xe7, 0x5b, 0x0d, 0xe3, 0xe7, 0xfe, 0xe1, 0x42, 0xf2, 0x50, 0xe6, 0xcb, 0x4c, 0x7b, 0x09, 0xa1, 0x68, 0x6c, 0xa0, 0xbd, 0x9c, 0xf2, 0xd2, 0xd4, 0x8b, 0xae, 0x00, 0xfc, 0xfa, 0xfc, 0xa2, 0x39, 0x1a, 0x55, 0xad, 0xe0, 0xa7, 0x7f, 0xb9, 0xa3, 0x81, 0xcb, 0x0a, 0xf1, 0x62, 0x53, 0xcd, 0x3b, 0xc5, 0x87, 0x23, 0xf8, 0x52, 0x76, 0x70, 0xb5, 0x95, 0x67, 0x69, 0x8e, 0x7f, 0xc3, 0xa1, 0x7e, 0x6d, 0x26, 0xb3, 0xa8, 0xa4, 0xa6, 0x17, 0xe2, 0xb1, 0x2e, 0x6d, 0x60, 0x39, 0x1f, 0x50, 0x31, 0x17, 0xfe, 0xa2, 0xdd, 0xb4, 0x69, 0x78, 0xb6, 0xd2, 0xd3, 0x0a, 0x26, }; static const unsigned char ecdh_secp521r1_2392_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2392_sharedsecret[] = { 0x01, 0xd9, 0x37, 0xdb, 0x2f, 0xca, 0xae, 0x79, 0x5f, 0x4a, 0xec, 0x63, 0x65, 0xbe, 0x81, 0xa5, 0x14, 0x93, 0x9c, 0x54, 0x83, 0x57, 0xc6, 0x14, 0x00, 0x75, 0xdb, 0x4a, 0x07, 0x6b, 0xe8, 0xc0, 0xd3, 0xa6, 0x12, 0x6b, 0x72, 0x0b, 0x10, 0x5b, 0x3d, 0x9c, 0xf6, 0xa8, 0x30, 0x73, 0x46, 0xcb, 0x83, 0x2f, 0xbe, 0x3a, 0x93, 0x60, 0x17, 0xa6, 0xe6, 0x20, 0x59, 0xba, 0xb6, 0x72, 0x3e, 0x88, 0x51, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_2392 = { .name = "ecdh_secp521r1_2392", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2392_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2392_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2392_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 143 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2393 for ECDH, tcId is 144 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2393_peerpubkey[] = { 0x00, 0x50, 0xb8, 0x62, 0xa8, 0x2a, 0x0b, 0xa9, 0x2a, 0xb4, 0x5b, 0x39, 0x6c, 0x51, 0xaa, 0x51, 0x9a, 0xa4, 0x4d, 0x11, 0x7f, 0x55, 0x76, 0x0e, 0x5a, 0x4f, 0x1f, 0x17, 0x7d, 0xfb, 0x5b, 0xcd, 0xf0, 0xd5, 0x4f, 0xb9, 0x95, 0x65, 0xe9, 0xf7, 0xd6, 0x75, 0x7c, 0x04, 0xf4, 0x94, 0x56, 0xae, 0xa8, 0x70, 0x75, 0x56, 0x0b, 0x1d, 0xc5, 0x14, 0x5b, 0xfa, 0x40, 0x68, 0x68, 0x4b, 0x04, 0x17, 0x8a, 0x85, 0x01, 0xe1, 0xc6, 0x8a, 0x57, 0xb3, 0x8e, 0x22, 0x81, 0x80, 0x6f, 0x3d, 0xb7, 0xb0, 0xaf, 0x0e, 0x3c, 0x2b, 0x5e, 0x52, 0xd5, 0xd5, 0xd4, 0x89, 0x0c, 0x5b, 0x9f, 0x5d, 0x73, 0x7d, 0xf9, 0xa7, 0x06, 0xe6, 0x31, 0xe4, 0x45, 0x3f, 0x6e, 0x79, 0xcb, 0xc2, 0x8d, 0x57, 0xbd, 0xc6, 0x04, 0xae, 0xa8, 0x01, 0x0e, 0xb4, 0x91, 0xf5, 0xc0, 0x9f, 0xeb, 0x20, 0xe3, 0xbc, 0x0c, 0x0e, 0xd4, 0xae, 0x44, 0xbf, }; static const unsigned char ecdh_secp521r1_2393_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2393_sharedsecret[] = { 0x00, 0xcb, 0xeb, 0x5c, 0x9d, 0xf0, 0xbb, 0x30, 0xa8, 0xb4, 0x5b, 0xc1, 0x7a, 0x5b, 0xd2, 0x55, 0xe2, 0xc8, 0x24, 0x9d, 0xbf, 0x91, 0x33, 0x70, 0x5b, 0xf1, 0xe5, 0x02, 0xd4, 0xe7, 0x30, 0xed, 0xd3, 0x13, 0x1c, 0x8d, 0x37, 0x0a, 0xa7, 0xfc, 0x78, 0xd4, 0x6b, 0x22, 0x91, 0x18, 0x1b, 0xb4, 0x0c, 0xa8, 0x5e, 0x7a, 0x0a, 0xc6, 0x07, 0x7c, 0xf4, 0x36, 0x79, 0x27, 0xd8, 0xc5, 0xb6, 0x74, 0x43, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_2393 = { .name = "ecdh_secp521r1_2393", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2393_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2393_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2393_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 144 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2394 for ECDH, tcId is 145 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2394_peerpubkey[] = { 0x00, 0x57, 0xf2, 0x7c, 0xc7, 0x40, 0x0b, 0x6f, 0x9b, 0xb3, 0xa0, 0xf7, 0x23, 0xbc, 0x06, 0x70, 0x93, 0x8f, 0xf8, 0x88, 0xf8, 0x79, 0x17, 0x10, 0x0a, 0x93, 0x21, 0x15, 0xb1, 0x27, 0x53, 0xa1, 0xfb, 0xb0, 0x86, 0xe5, 0xb2, 0x25, 0x20, 0x9b, 0x4f, 0x70, 0x70, 0x3a, 0xba, 0x37, 0x44, 0x43, 0xf1, 0x1f, 0xcb, 0xcf, 0x87, 0x79, 0x49, 0x1e, 0x22, 0x97, 0xfb, 0xae, 0x7f, 0x18, 0xbe, 0x2d, 0x4f, 0x23, 0x00, 0x06, 0xa7, 0xf0, 0x4e, 0x4d, 0xe3, 0x74, 0x14, 0x9d, 0xcf, 0x59, 0x6d, 0x94, 0xa6, 0xd7, 0xef, 0x8d, 0x30, 0xd9, 0x88, 0x8b, 0xc7, 0x50, 0x02, 0x26, 0xed, 0x7b, 0xc8, 0x56, 0x07, 0x29, 0xb7, 0xc4, 0xb4, 0xbf, 0x28, 0xf4, 0xf9, 0x2d, 0x7f, 0x3b, 0x25, 0xa5, 0xac, 0xe8, 0x86, 0xe8, 0xbe, 0x3e, 0xd0, 0x1a, 0xf0, 0x21, 0x69, 0xca, 0xea, 0x76, 0x5d, 0xc7, 0x63, 0xd0, 0xda, 0x94, 0x95, 0xc7, }; static const unsigned char ecdh_secp521r1_2394_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2394_sharedsecret[] = { 0x01, 0xa2, 0x6a, 0xa9, 0x92, 0x22, 0xe4, 0x4e, 0xa4, 0xd6, 0xdc, 0xee, 0x22, 0x9f, 0x21, 0xf4, 0x0f, 0x72, 0x3b, 0x5c, 0xbb, 0xe9, 0x2d, 0x56, 0x56, 0x12, 0x52, 0xe7, 0xb0, 0x9f, 0x96, 0xeb, 0x27, 0x1a, 0xd9, 0x2b, 0x3e, 0x16, 0x46, 0x46, 0x08, 0x74, 0x56, 0x15, 0x18, 0x2f, 0xbb, 0x70, 0x50, 0xe2, 0x99, 0x1b, 0x0a, 0xfc, 0x04, 0x0f, 0x27, 0xca, 0x74, 0xe3, 0x58, 0x34, 0x64, 0x66, 0xcb, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2394 = { .name = "ecdh_secp521r1_2394", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2394_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2394_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2394_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 145 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2395 for ECDH, tcId is 146 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2395_peerpubkey[] = { 0x00, 0xe0, 0x4a, 0x04, 0xd1, 0xe2, 0xbf, 0xa1, 0xa5, 0xf6, 0xf3, 0x78, 0x67, 0xec, 0x25, 0x14, 0x50, 0xd4, 0x6e, 0x6b, 0xd2, 0x80, 0x67, 0xcb, 0x99, 0xa6, 0x12, 0xf6, 0xef, 0xab, 0xf1, 0xf7, 0x2c, 0x70, 0xea, 0xf7, 0x2d, 0x70, 0xda, 0xab, 0x53, 0x89, 0x0d, 0x54, 0x80, 0x6c, 0x46, 0x04, 0x77, 0x66, 0x29, 0x3d, 0xe0, 0x85, 0xf0, 0xf4, 0x04, 0x62, 0xb2, 0xf5, 0x6a, 0xc4, 0xfc, 0x68, 0x11, 0xbb, 0x00, 0xa2, 0x0f, 0xa0, 0x0f, 0xe8, 0xcc, 0xd8, 0xb0, 0x07, 0xef, 0xdd, 0x6d, 0xaf, 0xbd, 0xaf, 0x91, 0xb1, 0x09, 0x24, 0xc0, 0xb8, 0xd5, 0x83, 0xce, 0x82, 0x92, 0x02, 0xc8, 0x53, 0x3e, 0x98, 0x15, 0x45, 0x17, 0x19, 0xf1, 0x2c, 0xaf, 0xef, 0xc3, 0xd3, 0xbd, 0xca, 0x5d, 0x51, 0x02, 0x47, 0xd5, 0x9f, 0xfd, 0x20, 0xd5, 0x39, 0xe2, 0x21, 0x65, 0xf1, 0x1b, 0x5d, 0x10, 0xe9, 0x12, 0xf1, 0xf9, 0xe4, }; static const unsigned char ecdh_secp521r1_2395_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2395_sharedsecret[] = { 0x00, 0x9a, 0x6c, 0x01, 0x7d, 0xae, 0x44, 0x95, 0x7d, 0xb6, 0xab, 0x34, 0x76, 0xa9, 0xdb, 0xeb, 0x66, 0x0e, 0xa5, 0x4e, 0x20, 0xab, 0x78, 0x5d, 0x5a, 0x34, 0x1e, 0x0e, 0x02, 0x65, 0x05, 0x0f, 0xde, 0x21, 0x79, 0x00, 0x71, 0x89, 0x08, 0xe1, 0x76, 0x3e, 0xeb, 0x66, 0x53, 0x04, 0x75, 0xfc, 0x0d, 0x0a, 0x13, 0x46, 0xc6, 0xc3, 0xbc, 0x29, 0x52, 0xda, 0x7c, 0xf0, 0x34, 0xdf, 0x18, 0x65, 0x06, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_2395 = { .name = "ecdh_secp521r1_2395", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2395_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2395_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2395_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 146 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2396 for ECDH, tcId is 147 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2396_peerpubkey[] = { 0x00, 0x8d, 0x3e, 0x0c, 0x98, 0x20, 0xd2, 0xb4, 0x97, 0x11, 0x78, 0x08, 0x49, 0xab, 0x93, 0x49, 0xde, 0x29, 0x58, 0x51, 0xb6, 0x9a, 0xc0, 0xff, 0x6b, 0x2e, 0xda, 0x1f, 0xdd, 0xc1, 0x7e, 0x97, 0xc7, 0xac, 0x26, 0x95, 0xf2, 0x8e, 0xf6, 0xdd, 0xc1, 0xe1, 0x60, 0x62, 0xee, 0x48, 0x29, 0x5f, 0xff, 0x57, 0x11, 0xcd, 0x87, 0x19, 0x92, 0xa8, 0xa1, 0x84, 0xb8, 0xe5, 0xb4, 0x9d, 0x71, 0x78, 0xb5, 0xff, 0x01, 0x70, 0x9e, 0x43, 0x5e, 0xe6, 0xc7, 0xcc, 0xfe, 0x66, 0x92, 0xc7, 0xf1, 0x69, 0xae, 0x35, 0x7e, 0x94, 0xfe, 0xeb, 0xca, 0xd5, 0xd6, 0xff, 0x0d, 0xa7, 0xff, 0x55, 0xa1, 0x9d, 0x14, 0x09, 0x00, 0x6a, 0xa6, 0x08, 0x3f, 0x89, 0x78, 0x24, 0xde, 0x4c, 0x0c, 0x59, 0xbc, 0x80, 0xd4, 0x06, 0x07, 0xa9, 0xbc, 0xfd, 0xf6, 0x66, 0xb9, 0xaa, 0x38, 0x8f, 0xa3, 0xb8, 0x65, 0xd7, 0x6c, 0x49, 0x29, 0x16, }; static const unsigned char ecdh_secp521r1_2396_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2396_sharedsecret[] = { 0x01, 0xef, 0xd3, 0xfe, 0xff, 0xad, 0x8d, 0x28, 0x37, 0x3d, 0xff, 0xc0, 0xe3, 0xa9, 0xcd, 0x54, 0x40, 0x85, 0xff, 0xc2, 0x8f, 0x5b, 0xb8, 0x06, 0x97, 0x80, 0x1d, 0xb4, 0xcc, 0xb9, 0x83, 0xfa, 0x23, 0x28, 0x22, 0x2a, 0x42, 0x9e, 0x7d, 0x63, 0x67, 0xdd, 0xd4, 0xa4, 0x08, 0x11, 0xac, 0x2a, 0xdc, 0x8f, 0xbd, 0x8e, 0xa0, 0x6e, 0xa4, 0x08, 0x80, 0x9d, 0x5b, 0x82, 0xfb, 0xed, 0x3c, 0x8a, 0x95, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp521r1_2396 = { .name = "ecdh_secp521r1_2396", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2396_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2396_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2396_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 147 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2397 for ECDH, tcId is 148 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2397_peerpubkey[] = { 0x01, 0xc0, 0x2e, 0xbd, 0x54, 0x76, 0x5a, 0x38, 0x25, 0xd7, 0xbf, 0xad, 0x56, 0x35, 0xa9, 0x8d, 0x97, 0xf7, 0x3c, 0xfb, 0x57, 0xda, 0x9c, 0x42, 0xc1, 0xf4, 0x64, 0x20, 0x5f, 0xac, 0x01, 0xcd, 0x89, 0x9f, 0x7e, 0x09, 0x5a, 0x10, 0x39, 0xb4, 0x7e, 0x0f, 0xcb, 0xeb, 0xd6, 0x5b, 0x6e, 0xa2, 0xc4, 0x86, 0xa7, 0xbd, 0xe4, 0x90, 0x0e, 0x95, 0x48, 0xd8, 0xa6, 0x4a, 0x0e, 0x6f, 0x39, 0xd6, 0x1c, 0x95, 0x01, 0xf5, 0xeb, 0x9d, 0x24, 0x91, 0xb4, 0x2e, 0x3d, 0x02, 0xc2, 0x0f, 0xf8, 0x53, 0x08, 0x0a, 0xa2, 0xdb, 0x82, 0x3f, 0x60, 0x91, 0xa6, 0x2a, 0x2a, 0x6b, 0xb5, 0x2d, 0x09, 0xd3, 0xc1, 0x62, 0xa3, 0xad, 0x02, 0xe0, 0x24, 0x2d, 0x24, 0x3a, 0x61, 0xce, 0x00, 0x63, 0xff, 0x8f, 0x8e, 0x93, 0xec, 0x21, 0xae, 0xca, 0x4a, 0xe2, 0xb1, 0x52, 0xb8, 0xf6, 0x8d, 0x40, 0xdd, 0x87, 0x6f, 0x80, 0xe7, 0xc3, }; static const unsigned char ecdh_secp521r1_2397_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2397_sharedsecret[] = { 0x01, 0x42, 0x47, 0x84, 0xd1, 0xfc, 0xa3, 0xb4, 0xc7, 0x81, 0x10, 0x83, 0x85, 0x5f, 0xbf, 0x86, 0x62, 0xe1, 0xf0, 0xee, 0x52, 0xb5, 0xff, 0xaa, 0xa0, 0xcf, 0x89, 0x0b, 0xb9, 0x04, 0x15, 0x05, 0x12, 0xa7, 0x5a, 0x10, 0x77, 0xea, 0xd3, 0x9a, 0xe3, 0x7e, 0xc6, 0x7d, 0x5a, 0x3c, 0x03, 0xd2, 0xfc, 0xb5, 0xf9, 0xf6, 0x95, 0xf9, 0x91, 0x8c, 0xf4, 0x87, 0x2c, 0x5b, 0x4a, 0x75, 0x7d, 0x1d, 0x0f, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_2397 = { .name = "ecdh_secp521r1_2397", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2397_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2397_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2397_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 148 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2398 for ECDH, tcId is 149 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2398_peerpubkey[] = { 0x00, 0x4b, 0x04, 0xd3, 0xd1, 0xc6, 0xc4, 0x70, 0x69, 0xc0, 0xbd, 0x44, 0x97, 0x3e, 0x75, 0xac, 0x75, 0x3c, 0x9f, 0x28, 0x4b, 0x0b, 0x1d, 0x52, 0x30, 0x8b, 0xcd, 0xd9, 0xa1, 0xe0, 0x63, 0x07, 0xa8, 0xce, 0x7a, 0xf0, 0x93, 0x62, 0xf8, 0xcc, 0x6a, 0x2b, 0x5b, 0x4b, 0x23, 0x49, 0xe2, 0x83, 0x09, 0x56, 0xab, 0xb1, 0x19, 0x1c, 0x7e, 0x84, 0x58, 0x2d, 0xb1, 0x22, 0x8c, 0x2e, 0xc2, 0x50, 0x21, 0xcc, 0x00, 0xc2, 0xaf, 0x05, 0xe5, 0xc3, 0x10, 0x38, 0x8c, 0x8a, 0x16, 0x83, 0x5d, 0x06, 0x04, 0x2e, 0x49, 0x0a, 0x9e, 0xa8, 0xc4, 0xc9, 0xbc, 0x53, 0x2c, 0x2e, 0x7d, 0x46, 0xf2, 0x00, 0x10, 0x7a, 0x97, 0xe0, 0xfb, 0xc5, 0xd9, 0xfa, 0xca, 0x9d, 0xcb, 0x22, 0x49, 0x51, 0x0e, 0x19, 0x98, 0x96, 0xac, 0x36, 0xe0, 0x39, 0x9b, 0x0f, 0x17, 0x65, 0x04, 0x85, 0xeb, 0x74, 0x8e, 0x1f, 0xff, 0x9c, 0x77, 0xfa, }; static const unsigned char ecdh_secp521r1_2398_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2398_sharedsecret[] = { 0x01, 0x32, 0xb9, 0x76, 0x32, 0xe5, 0x7b, 0xe5, 0x55, 0x86, 0xe8, 0x87, 0xd2, 0x6d, 0xad, 0x41, 0xe5, 0x00, 0xbf, 0xfc, 0xfa, 0x96, 0x36, 0x84, 0x84, 0x55, 0x7f, 0x34, 0x7c, 0x4b, 0xe8, 0x21, 0x30, 0x2d, 0xe8, 0xf3, 0xf7, 0x2b, 0x98, 0x65, 0x83, 0x4d, 0x57, 0x9c, 0xf6, 0x96, 0x40, 0x61, 0x45, 0xea, 0xb5, 0x12, 0xe2, 0xf9, 0x6d, 0x2a, 0xa5, 0x89, 0x74, 0x8f, 0x64, 0x42, 0x08, 0x69, 0x12, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2398 = { .name = "ecdh_secp521r1_2398", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2398_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2398_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2398_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 149 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2399 for ECDH, tcId is 150 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2399_peerpubkey[] = { 0x00, 0xcd, 0xa2, 0xdb, 0x7f, 0xc4, 0xf9, 0xd4, 0xc1, 0xce, 0x36, 0xba, 0x82, 0xa1, 0x84, 0xb2, 0xfb, 0xfe, 0xe2, 0x06, 0xd9, 0xa5, 0xd0, 0x50, 0xd2, 0xbf, 0x1b, 0x2f, 0xc9, 0x2c, 0x0d, 0x0b, 0x78, 0xec, 0xa3, 0xb5, 0x1d, 0x72, 0x4a, 0xa5, 0xfa, 0x48, 0xf6, 0x66, 0x97, 0x2b, 0x47, 0x3a, 0xcc, 0xed, 0xc4, 0x97, 0x24, 0xac, 0x2b, 0x3e, 0x77, 0x9d, 0x4c, 0x89, 0x41, 0x98, 0xd9, 0xab, 0x93, 0x7c, 0x00, 0xcd, 0x13, 0x85, 0x7d, 0x84, 0x87, 0x18, 0x37, 0xf7, 0x7a, 0x54, 0xf0, 0xba, 0x9d, 0x18, 0xf6, 0xe9, 0x42, 0xd1, 0xd6, 0xd2, 0xe7, 0x16, 0x7f, 0xb5, 0x3e, 0x35, 0x85, 0xb2, 0x49, 0x43, 0x82, 0x89, 0xab, 0xc6, 0x89, 0x27, 0xac, 0x8c, 0x29, 0xd6, 0x53, 0x77, 0xcc, 0x73, 0xf8, 0x5d, 0x11, 0x35, 0x11, 0xf2, 0x62, 0x2b, 0xff, 0x69, 0x74, 0x65, 0x29, 0x4f, 0x5c, 0xd1, 0xa3, 0x77, 0x28, 0x39, }; static const unsigned char ecdh_secp521r1_2399_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2399_sharedsecret[] = { 0x01, 0xba, 0xef, 0xf7, 0x27, 0x53, 0x0d, 0xed, 0x5f, 0x90, 0x3b, 0x20, 0x90, 0xf9, 0x22, 0xb4, 0x79, 0xc4, 0x63, 0x1a, 0xfc, 0xed, 0x97, 0xef, 0x17, 0x80, 0x98, 0x4d, 0x9d, 0x98, 0xfe, 0x06, 0xa4, 0x7e, 0xf0, 0x71, 0x4e, 0xe4, 0xf2, 0xa3, 0x2f, 0x08, 0xaf, 0xac, 0x5a, 0x58, 0x3a, 0x51, 0x62, 0x29, 0x53, 0x9c, 0x2c, 0x4c, 0x82, 0xf3, 0x61, 0xb6, 0xf1, 0x59, 0x22, 0x2d, 0x5c, 0x13, 0x76, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_2399 = { .name = "ecdh_secp521r1_2399", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2399_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2399_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2399_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 150 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2400 for ECDH, tcId is 151 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2400_peerpubkey[] = { 0x00, 0x3a, 0xb4, 0xdb, 0x21, 0xd5, 0x64, 0x5f, 0x42, 0xbb, 0xf1, 0x62, 0x2e, 0x26, 0xcf, 0xe7, 0x60, 0x3b, 0xf2, 0x22, 0xaf, 0x84, 0x54, 0x9d, 0xd4, 0x84, 0xa6, 0x2e, 0x98, 0xff, 0xef, 0x26, 0xc1, 0x3d, 0xa6, 0x1a, 0xeb, 0x51, 0x57, 0xa9, 0x1d, 0x70, 0xa8, 0x28, 0xe9, 0x68, 0x73, 0xe2, 0x5f, 0x06, 0xc4, 0x5d, 0x65, 0x25, 0x09, 0x30, 0x7b, 0x0c, 0x99, 0x83, 0x91, 0xf9, 0x51, 0xd6, 0x11, 0xdd, 0x01, 0x4e, 0x59, 0x9e, 0x94, 0xf3, 0x27, 0x5c, 0xe6, 0x01, 0x90, 0xaa, 0x63, 0xbd, 0x8c, 0x8b, 0x6e, 0xdd, 0x7e, 0xd1, 0x1e, 0xeb, 0x13, 0x85, 0xd0, 0xd1, 0x13, 0x71, 0x68, 0x62, 0x4e, 0xb6, 0xd8, 0x12, 0x5a, 0xe9, 0xb8, 0x54, 0x61, 0x18, 0x72, 0x01, 0x98, 0x8c, 0xc1, 0x1b, 0xc5, 0x57, 0x68, 0x0d, 0x5b, 0xbb, 0xb4, 0xf5, 0x4c, 0x27, 0xb4, 0x54, 0x98, 0x31, 0xb7, 0xb6, 0xf1, 0xe5, 0x9e, 0x93, }; static const unsigned char ecdh_secp521r1_2400_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2400_sharedsecret[] = { 0x01, 0x85, 0x5a, 0x66, 0x85, 0xdb, 0x05, 0xfe, 0xe3, 0xee, 0xc9, 0xdd, 0x11, 0x75, 0x0d, 0x31, 0x44, 0x9e, 0x40, 0x69, 0x6e, 0x8e, 0x1c, 0x6a, 0x5e, 0x63, 0x34, 0x3d, 0xe2, 0xda, 0xe8, 0x31, 0x47, 0xfa, 0xd3, 0x37, 0xad, 0x90, 0x20, 0xea, 0x13, 0x1f, 0xab, 0x8c, 0x4c, 0xa3, 0x0f, 0x4a, 0x03, 0xe0, 0xbc, 0x62, 0x8a, 0x4a, 0x5a, 0xb7, 0x8a, 0x09, 0xe0, 0x71, 0xfe, 0xad, 0x71, 0x15, 0x43, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp521r1_2400 = { .name = "ecdh_secp521r1_2400", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2400_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2400_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2400_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 151 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2401 for ECDH, tcId is 152 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2401_peerpubkey[] = { 0x00, 0xbc, 0xaf, 0x9d, 0xf5, 0x98, 0x6e, 0xfa, 0x54, 0x2d, 0x7c, 0xe9, 0xee, 0xa0, 0x5e, 0x55, 0x7c, 0x39, 0x3a, 0x3a, 0x3e, 0x3d, 0xdf, 0xab, 0xeb, 0x47, 0x54, 0x9e, 0xf9, 0xa2, 0x92, 0x4e, 0xbf, 0xf5, 0x8f, 0x7f, 0xb5, 0x98, 0x9d, 0x40, 0x42, 0x58, 0x79, 0x16, 0x59, 0xcf, 0x42, 0x1c, 0xd9, 0xd2, 0xeb, 0x1e, 0xf6, 0xcf, 0x21, 0xfe, 0x42, 0x81, 0x82, 0xac, 0xb7, 0x2a, 0xad, 0xb3, 0xfd, 0xc0, 0x00, 0x3d, 0x63, 0x8e, 0xfe, 0x16, 0x36, 0x3a, 0x8a, 0xf8, 0x69, 0xee, 0x85, 0xda, 0xd1, 0xc6, 0xf0, 0x03, 0xd4, 0xf4, 0xf8, 0x27, 0xa7, 0xa1, 0x8c, 0x75, 0xbd, 0x7f, 0xeb, 0x33, 0x01, 0x33, 0xe5, 0xbd, 0x29, 0x7a, 0xbf, 0x56, 0x15, 0x9c, 0x50, 0xc0, 0xd0, 0x4a, 0xa2, 0xe3, 0xb0, 0x19, 0x4d, 0x8d, 0xe2, 0xe7, 0xd0, 0xfe, 0x4d, 0x6d, 0x7a, 0x89, 0x01, 0xfd, 0x36, 0x2e, 0x31, 0x0e, 0xd4, 0xe6, }; static const unsigned char ecdh_secp521r1_2401_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2401_sharedsecret[] = { 0x00, 0xa5, 0x7b, 0xff, 0xf0, 0x31, 0x40, 0x61, 0x1b, 0xe2, 0x3a, 0xd5, 0x2b, 0x3f, 0x0d, 0x52, 0x5a, 0xbc, 0x85, 0x4f, 0x83, 0x0d, 0x3e, 0x48, 0x35, 0xd8, 0x01, 0xfa, 0x97, 0x54, 0xe1, 0xcf, 0xc1, 0x2a, 0x4e, 0x60, 0x18, 0x95, 0x8b, 0x44, 0xba, 0x82, 0x80, 0x87, 0xec, 0xfa, 0xb3, 0xae, 0x91, 0x7a, 0xba, 0x09, 0x0b, 0xe1, 0x46, 0x41, 0x54, 0xac, 0xe5, 0x5d, 0x4c, 0x48, 0x1a, 0xd8, 0x31, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_2401 = { .name = "ecdh_secp521r1_2401", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2401_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2401_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2401_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 152 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2402 for ECDH, tcId is 153 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2402_peerpubkey[] = { 0x00, 0x11, 0x8c, 0x04, 0xc3, 0x2a, 0x75, 0xb0, 0x77, 0x02, 0x32, 0x3c, 0xa2, 0x26, 0xa4, 0xac, 0xe0, 0x54, 0x42, 0x4b, 0x1a, 0x6e, 0x6e, 0xdc, 0xd4, 0x01, 0x1a, 0x03, 0x5f, 0x4b, 0xc0, 0x78, 0x9f, 0x61, 0x51, 0xff, 0x84, 0x9e, 0xff, 0x89, 0x49, 0x55, 0x4f, 0xe4, 0xd5, 0x42, 0xaf, 0x1f, 0x03, 0xc7, 0x9b, 0x36, 0x9f, 0xf4, 0xc3, 0x8d, 0x1d, 0x29, 0xb4, 0xa3, 0xbc, 0x41, 0xd5, 0xe0, 0x5b, 0xb2, 0x01, 0x0f, 0x4b, 0x8d, 0x51, 0x1a, 0xc5, 0xb1, 0xa6, 0x53, 0x4a, 0xac, 0x9d, 0xd2, 0x48, 0x6b, 0x8c, 0xd0, 0x7c, 0xf3, 0xd5, 0xba, 0xbc, 0x24, 0xf7, 0x4f, 0x53, 0x7b, 0x04, 0x11, 0x5a, 0x0a, 0x8f, 0x6d, 0x79, 0x77, 0x98, 0xfc, 0x80, 0x7f, 0xb0, 0x02, 0x74, 0x6b, 0x27, 0x89, 0x2a, 0xe3, 0x0f, 0x75, 0x10, 0x34, 0xb6, 0x80, 0xb1, 0x72, 0x3c, 0x2e, 0xe8, 0x59, 0xbd, 0xae, 0xd0, 0x54, 0x0e, 0x77, }; static const unsigned char ecdh_secp521r1_2402_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2402_sharedsecret[] = { 0x01, 0x51, 0x9b, 0xa4, 0x17, 0x9e, 0xf8, 0x5a, 0x4b, 0x51, 0xb3, 0x0d, 0xb2, 0xf6, 0xe9, 0xe2, 0xf3, 0xd4, 0x9b, 0x1f, 0x3e, 0x86, 0x11, 0xc9, 0xba, 0x32, 0x86, 0xd7, 0x8c, 0xa6, 0x45, 0xd2, 0x9d, 0x7a, 0x16, 0x30, 0x55, 0xfe, 0x44, 0xac, 0xcf, 0xc7, 0x24, 0x09, 0x1d, 0x08, 0x42, 0x08, 0x1a, 0x0f, 0xc3, 0x9f, 0x0f, 0xf7, 0xb7, 0xd7, 0x42, 0x34, 0x6e, 0xf2, 0x93, 0xe5, 0x1a, 0x1d, 0x71, 0x07, }; static const wycheproof_ecdh_test ecdh_secp521r1_2402 = { .name = "ecdh_secp521r1_2402", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2402_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2402_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2402_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 153 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2403 for ECDH, tcId is 154 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2403_peerpubkey[] = { 0x00, 0xd9, 0xcb, 0x7a, 0x32, 0xda, 0xb3, 0x42, 0xf8, 0x63, 0xed, 0xb3, 0x40, 0xf3, 0xea, 0x61, 0xdd, 0xf8, 0x33, 0xe7, 0x55, 0xce, 0x66, 0xbb, 0x1a, 0x91, 0x8a, 0x42, 0x71, 0x4b, 0xa0, 0x5b, 0xcd, 0xf4, 0xff, 0x10, 0x99, 0x4f, 0x61, 0x6a, 0x9d, 0x80, 0xcd, 0x0b, 0x48, 0xb3, 0x26, 0xe3, 0xa8, 0xa2, 0xa8, 0xf5, 0x63, 0x4d, 0x82, 0x48, 0x75, 0xb6, 0xe7, 0x1f, 0xb7, 0xcd, 0xdd, 0x7b, 0x50, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_2403_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2403_sharedsecret[] = { 0x01, 0xb4, 0x3c, 0xd9, 0x28, 0x0f, 0xaf, 0xf2, 0x42, 0xc6, 0xeb, 0x21, 0x24, 0x3f, 0x54, 0x47, 0x7a, 0x0d, 0xd9, 0x1f, 0xf1, 0xb0, 0xb1, 0xa3, 0x1d, 0x60, 0x11, 0xac, 0xb9, 0x21, 0x1b, 0xd7, 0xc4, 0xe7, 0x60, 0x2e, 0x48, 0x8d, 0x4c, 0xd3, 0x84, 0xfa, 0xce, 0x2a, 0xa2, 0x43, 0xdb, 0x2c, 0xf8, 0xc8, 0x22, 0x0c, 0x56, 0x6d, 0xcf, 0x95, 0x11, 0xfe, 0xad, 0xe8, 0xfc, 0x26, 0xb0, 0x7b, 0x1d, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_2403 = { .name = "ecdh_secp521r1_2403", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2403_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2403_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2403_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 154 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2404 for ECDH, tcId is 155 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2404_peerpubkey[] = { 0x00, 0x70, 0x3d, 0xde, 0x20, 0x2e, 0xa0, 0x3d, 0x1d, 0x67, 0x37, 0x35, 0x00, 0x2c, 0xc6, 0x2c, 0xc7, 0x40, 0x53, 0x61, 0x04, 0xd8, 0x1f, 0xc9, 0xfd, 0x8e, 0xbd, 0xb7, 0xdf, 0xa9, 0x08, 0xf5, 0x99, 0xd8, 0xfe, 0xa4, 0x6d, 0xeb, 0xc1, 0x90, 0xa5, 0xb2, 0xef, 0x5f, 0x44, 0x93, 0xf9, 0xb5, 0xec, 0xd8, 0xda, 0x94, 0x07, 0xbf, 0x4f, 0xc8, 0xe1, 0x73, 0x28, 0x03, 0xa7, 0x4e, 0xe6, 0x5f, 0x74, 0x7b, 0x01, 0x7c, 0x9b, 0x03, 0x8d, 0x86, 0xaf, 0xc9, 0x41, 0x40, 0x3f, 0xac, 0xaa, 0x1e, 0x2a, 0x63, 0x76, 0xde, 0xc0, 0x75, 0xc0, 0x35, 0xab, 0x2c, 0x1f, 0x42, 0xdb, 0x5f, 0xcd, 0xa3, 0xad, 0x3f, 0xec, 0x67, 0xbc, 0xf2, 0x2b, 0xaf, 0x6c, 0x81, 0xb4, 0x24, 0x1b, 0x4a, 0x92, 0x57, 0xf8, 0xc2, 0x12, 0x68, 0x80, 0xe1, 0xd6, 0xa6, 0x9a, 0x3e, 0x5a, 0xc7, 0xe9, 0x87, 0x10, 0xfb, 0x24, 0xd5, 0x05, 0xdf, }; static const unsigned char ecdh_secp521r1_2404_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2404_sharedsecret[] = { 0x01, 0xb2, 0x48, 0xdb, 0xd8, 0xdf, 0xa6, 0x67, 0xa1, 0x0a, 0xb3, 0x2a, 0xf6, 0x8f, 0xa8, 0x96, 0x7c, 0x69, 0x49, 0x6e, 0xbf, 0x80, 0xc1, 0x1f, 0xd0, 0xef, 0xb7, 0x69, 0xea, 0x93, 0xf8, 0x4f, 0x5a, 0x29, 0x68, 0xb7, 0xed, 0x81, 0xb2, 0xfd, 0x9a, 0xa9, 0x13, 0xac, 0xce, 0xc7, 0x01, 0xdd, 0xce, 0x0d, 0x1f, 0x8b, 0x43, 0xb1, 0xc6, 0x71, 0xf5, 0x47, 0x82, 0x2f, 0x79, 0x6e, 0xfb, 0x12, 0xd5, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_2404 = { .name = "ecdh_secp521r1_2404", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2404_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2404_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2404_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 155 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2405 for ECDH, tcId is 156 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2405_peerpubkey[] = { 0x00, 0x04, 0xfa, 0xbe, 0x53, 0xe6, 0x31, 0x93, 0x57, 0x1d, 0x44, 0x52, 0x1d, 0x36, 0xc4, 0xb6, 0x46, 0xe2, 0x99, 0xb3, 0x90, 0xef, 0xe5, 0x0e, 0x5f, 0xa1, 0xa7, 0x38, 0xe7, 0x00, 0x58, 0x6f, 0xe4, 0x1b, 0xf5, 0x43, 0xb0, 0x7f, 0xe4, 0xfa, 0xfc, 0xb7, 0x24, 0x30, 0x12, 0x46, 0xe8, 0xc0, 0x96, 0xc4, 0x99, 0xb8, 0xa5, 0xd0, 0x63, 0x23, 0x3a, 0xa7, 0x48, 0xdb, 0x9d, 0x21, 0x63, 0xd1, 0x00, 0x04, 0x00, 0x92, 0x8a, 0x59, 0xf3, 0xe4, 0xbe, 0xc0, 0x46, 0x4f, 0x02, 0x1c, 0x5a, 0xd0, 0x86, 0x45, 0x62, 0x31, 0xa4, 0xe4, 0x4f, 0x16, 0x2f, 0xe6, 0xae, 0xfa, 0x7a, 0x2c, 0xae, 0xf9, 0x03, 0x1b, 0xa8, 0x37, 0x68, 0xb5, 0x47, 0x62, 0xef, 0x90, 0xb1, 0xe5, 0x08, 0xed, 0xdb, 0xef, 0x69, 0xe5, 0x3f, 0x3f, 0x9a, 0xe2, 0x15, 0xd4, 0xa0, 0x61, 0x2f, 0x73, 0x7d, 0x16, 0x09, 0x6d, 0xdd, 0xa3, 0x22, 0xaa, }; static const unsigned char ecdh_secp521r1_2405_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2405_sharedsecret[] = { 0x01, 0x08, 0x1c, 0x5a, 0x32, 0x89, 0x35, 0x4d, 0xb2, 0x0a, 0x92, 0x9f, 0xa3, 0xd9, 0x60, 0x7c, 0x2a, 0xc5, 0x8c, 0xab, 0x7b, 0x1f, 0xfb, 0x28, 0x02, 0xe6, 0xa7, 0x78, 0xaf, 0x1b, 0x79, 0xca, 0x7a, 0x68, 0xc7, 0xbc, 0x1b, 0xd3, 0x7a, 0x05, 0x77, 0x2e, 0xf8, 0xc2, 0x8f, 0x46, 0x09, 0x55, 0x7f, 0x43, 0x38, 0x7b, 0x27, 0x1f, 0xb5, 0xa2, 0x74, 0xae, 0x3e, 0x88, 0x14, 0xc7, 0x50, 0x54, 0x44, 0xc4, }; static const wycheproof_ecdh_test ecdh_secp521r1_2405 = { .name = "ecdh_secp521r1_2405", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2405_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2405_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2405_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 156 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2406 for ECDH, tcId is 157 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2406_peerpubkey[] = { 0x00, 0xb1, 0x08, 0xb6, 0xcb, 0x1e, 0x04, 0x34, 0x14, 0x73, 0x64, 0x6c, 0x80, 0xf8, 0xc9, 0xc5, 0x10, 0x14, 0xce, 0xc7, 0xf0, 0x79, 0xf9, 0x68, 0x11, 0x0a, 0xb3, 0x5c, 0x0f, 0x05, 0xb2, 0x4e, 0xa7, 0x72, 0x23, 0x27, 0xb5, 0xeb, 0x5b, 0xca, 0x74, 0x8c, 0x35, 0xc7, 0x71, 0xab, 0xa6, 0x7b, 0x23, 0x2c, 0x82, 0x0e, 0xd5, 0x44, 0xf9, 0xd4, 0xef, 0xd4, 0x3d, 0x37, 0xec, 0x49, 0x96, 0x0d, 0xb2, 0xd7, 0x00, 0xac, 0x75, 0x8a, 0x1e, 0x22, 0x5e, 0x3d, 0xb1, 0x9a, 0x1f, 0x3e, 0xa9, 0x58, 0x3a, 0xd9, 0xea, 0x6e, 0x99, 0x45, 0x68, 0xf6, 0xdd, 0xc1, 0x24, 0xb8, 0xda, 0xb4, 0x9b, 0xae, 0x83, 0x57, 0xb3, 0xc7, 0x05, 0x37, 0x40, 0x4e, 0xd4, 0xd0, 0x23, 0x70, 0xe1, 0x63, 0x7e, 0xd5, 0x91, 0x6b, 0x43, 0x33, 0x48, 0x59, 0xec, 0xe3, 0xdb, 0xe6, 0xdd, 0x26, 0x06, 0x5c, 0x24, 0xdf, 0x11, 0xb8, 0xf2, 0x81, }; static const unsigned char ecdh_secp521r1_2406_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2406_sharedsecret[] = { 0x01, 0x0e, 0x64, 0xa6, 0xdd, 0x87, 0x61, 0x0b, 0xfb, 0x99, 0xa1, 0x34, 0x03, 0x9b, 0x51, 0x8c, 0x8c, 0xc8, 0x70, 0x19, 0xed, 0x5a, 0x2f, 0xa0, 0xb3, 0xf9, 0x8b, 0xe8, 0xfb, 0x3b, 0x2d, 0x90, 0x03, 0x81, 0xa5, 0x07, 0x55, 0x73, 0x9b, 0xff, 0x48, 0x3e, 0x40, 0x0e, 0x5a, 0xd9, 0x2c, 0x01, 0x6e, 0xe3, 0x17, 0x4d, 0xf8, 0xd5, 0x28, 0xfd, 0xc0, 0x8a, 0x17, 0x6d, 0x60, 0x80, 0xc1, 0x83, 0xe0, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_2406 = { .name = "ecdh_secp521r1_2406", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2406_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2406_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2406_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 157 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2407 for ECDH, tcId is 158 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2407_peerpubkey[] = { 0x01, 0x24, 0x50, 0x8b, 0x18, 0x2d, 0xcc, 0xea, 0x6a, 0xce, 0x21, 0x36, 0xe5, 0x3a, 0x2d, 0x9b, 0x61, 0x49, 0xdd, 0x0a, 0xe4, 0x50, 0x83, 0x06, 0x66, 0xf0, 0xa9, 0xc8, 0x44, 0x91, 0x8f, 0x0f, 0xb3, 0xeb, 0x87, 0xf7, 0xf3, 0xf7, 0x70, 0x7a, 0xdd, 0xd7, 0x7b, 0xb1, 0x2c, 0xd1, 0xe5, 0x52, 0xef, 0x12, 0x10, 0x5c, 0x68, 0x67, 0xa4, 0xfe, 0x81, 0xcd, 0x1f, 0x6a, 0x40, 0x01, 0xc3, 0xfe, 0x6e, 0x08, 0x01, 0x57, 0x6d, 0x60, 0xd0, 0x7c, 0x02, 0xb2, 0x55, 0x9c, 0xd1, 0x89, 0xab, 0xaa, 0x70, 0x3e, 0x36, 0xe2, 0x9c, 0x66, 0xd3, 0xda, 0x18, 0xd3, 0x49, 0x26, 0xae, 0x82, 0x1b, 0xd2, 0x16, 0x94, 0xe1, 0x53, 0x19, 0x09, 0x3d, 0xb2, 0x5f, 0x62, 0x0b, 0x64, 0x80, 0xe0, 0x4a, 0x4c, 0x6c, 0x53, 0xb1, 0xfa, 0x38, 0x8f, 0x95, 0x9b, 0x65, 0xfb, 0xf8, 0xa8, 0x82, 0x9b, 0x3b, 0x26, 0x2f, 0x55, 0xe4, 0xf2, }; static const unsigned char ecdh_secp521r1_2407_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2407_sharedsecret[] = { 0x00, 0x4a, 0xf5, 0x56, 0xf0, 0x9b, 0x9d, 0x7a, 0x02, 0x4c, 0x4d, 0xc9, 0x41, 0x93, 0x1d, 0x65, 0x5d, 0x22, 0x31, 0x93, 0x2e, 0xa0, 0x45, 0xa7, 0xfa, 0xf3, 0x22, 0xb1, 0x4f, 0x97, 0x34, 0x19, 0x99, 0xa5, 0xa5, 0x60, 0x5c, 0x7d, 0x31, 0xb2, 0xe9, 0x3d, 0x56, 0xf9, 0xd8, 0x13, 0x63, 0x06, 0xa8, 0x99, 0xd8, 0x2b, 0xbe, 0x2b, 0x61, 0xb3, 0x6a, 0xf2, 0x33, 0x6a, 0x0e, 0xde, 0x70, 0xdc, 0xd3, 0x92, }; static const wycheproof_ecdh_test ecdh_secp521r1_2407 = { .name = "ecdh_secp521r1_2407", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2407_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2407_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2407_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 158 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2408 for ECDH, tcId is 159 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2408_peerpubkey[] = { 0x00, 0xe2, 0xb5, 0xd2, 0xbc, 0xd2, 0xb4, 0x83, 0x87, 0x1b, 0x7d, 0x83, 0xc2, 0xdb, 0x0e, 0x95, 0x7e, 0xf2, 0x23, 0xf6, 0x5b, 0x30, 0xf4, 0x5d, 0x4a, 0xda, 0x33, 0x72, 0x53, 0x73, 0x78, 0x5c, 0x0d, 0x66, 0x4a, 0x8c, 0xa2, 0xc3, 0x5b, 0xc3, 0x5a, 0x95, 0x2f, 0xd8, 0x22, 0xb0, 0x07, 0x2a, 0x96, 0x0c, 0x60, 0xe3, 0x19, 0xf4, 0xe0, 0x6d, 0xe6, 0xc7, 0x85, 0xfd, 0x8d, 0xdc, 0xbb, 0xea, 0x18, 0xd2, 0x00, 0x30, 0x02, 0x34, 0x47, 0x1a, 0x92, 0xac, 0x2c, 0x5f, 0x77, 0x8c, 0xba, 0x8a, 0x97, 0xf3, 0xb3, 0xc4, 0x5c, 0xc8, 0xea, 0xc1, 0xd8, 0x15, 0xb4, 0x5d, 0xc0, 0x2f, 0x9b, 0x74, 0x07, 0x9a, 0xc5, 0x66, 0x49, 0x09, 0x3d, 0x43, 0x61, 0x30, 0x05, 0x86, 0x7b, 0x38, 0xf3, 0xf6, 0x69, 0x5d, 0x50, 0x27, 0x3e, 0xa2, 0xf6, 0x8f, 0xfa, 0x81, 0x00, 0x0c, 0x78, 0x95, 0xe9, 0x1e, 0xc5, 0x38, 0x56, 0xe3, }; static const unsigned char ecdh_secp521r1_2408_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2408_sharedsecret[] = { 0x01, 0x84, 0x77, 0x1f, 0x10, 0x89, 0x1b, 0x6d, 0xab, 0x95, 0x36, 0x63, 0xdc, 0x41, 0x60, 0x0b, 0xb7, 0xb2, 0xbc, 0xd0, 0xcc, 0x6b, 0xd3, 0x19, 0x79, 0x5b, 0xc8, 0x9c, 0xe2, 0xcc, 0xa1, 0x88, 0x3c, 0xf9, 0x2f, 0xd6, 0xfa, 0x7b, 0x16, 0xfb, 0x39, 0xc3, 0x73, 0x74, 0x54, 0xbd, 0x3c, 0x22, 0xf4, 0xfb, 0x2c, 0x2e, 0x86, 0x91, 0x4d, 0xb4, 0x18, 0xb6, 0x53, 0xa9, 0xe0, 0xdc, 0xe3, 0xbe, 0x5e, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2408 = { .name = "ecdh_secp521r1_2408", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2408_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2408_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2408_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 159 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2409 for ECDH, tcId is 160 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2409_peerpubkey[] = { 0x00, 0xae, 0xe0, 0xe3, 0x09, 0x74, 0x41, 0xd5, 0x01, 0x38, 0x80, 0x3f, 0xf9, 0xb1, 0x78, 0x06, 0xbf, 0xca, 0x10, 0x64, 0xfe, 0xec, 0x20, 0x9f, 0xd0, 0xb5, 0xae, 0x57, 0xc6, 0xd8, 0x7d, 0x9e, 0x5e, 0xb3, 0x2c, 0xb0, 0x67, 0x0f, 0x12, 0xfb, 0xde, 0x06, 0xc3, 0xf3, 0xed, 0x8b, 0x18, 0x61, 0xb6, 0xd1, 0x8f, 0x6b, 0xc6, 0xa2, 0x55, 0x22, 0x66, 0xa2, 0x40, 0x68, 0x6c, 0x52, 0x9f, 0x04, 0x4f, 0x57, 0x01, 0x00, 0x89, 0x8b, 0x3c, 0x65, 0x01, 0xeb, 0xaa, 0x81, 0xe6, 0x9e, 0xe0, 0x19, 0xb8, 0x79, 0xd6, 0xee, 0x37, 0x15, 0xd5, 0x09, 0x6d, 0xf8, 0x39, 0x61, 0xe1, 0x0b, 0xc8, 0x05, 0xd5, 0xc6, 0x74, 0xca, 0xa9, 0x8a, 0x1b, 0xa2, 0x9e, 0xd0, 0x04, 0x80, 0x89, 0x31, 0xa9, 0x61, 0x5d, 0xfe, 0xda, 0x86, 0x73, 0xcf, 0x39, 0xf0, 0xce, 0x4a, 0x61, 0x8d, 0x18, 0x1c, 0x04, 0xa8, 0x66, 0x18, 0x90, 0x37, }; static const unsigned char ecdh_secp521r1_2409_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2409_sharedsecret[] = { 0x00, 0x24, 0xf7, 0x92, 0x51, 0xc8, 0x6e, 0x06, 0xac, 0x18, 0xe6, 0x40, 0x4c, 0xd3, 0x03, 0xc2, 0xfa, 0xbc, 0xaa, 0x95, 0x64, 0x21, 0x8c, 0x16, 0x0c, 0x1f, 0xb7, 0xa9, 0x9f, 0xb2, 0xc6, 0x99, 0xb3, 0xae, 0x65, 0xca, 0x2d, 0xa8, 0xf6, 0x6a, 0xd9, 0xd7, 0x5c, 0xee, 0x42, 0xf1, 0x9f, 0x1d, 0x77, 0xf1, 0x94, 0xfd, 0xf2, 0xad, 0x78, 0x54, 0x18, 0x6b, 0x97, 0x7b, 0xa2, 0x6c, 0x0e, 0x87, 0xcd, 0xab, }; static const wycheproof_ecdh_test ecdh_secp521r1_2409 = { .name = "ecdh_secp521r1_2409", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2409_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2409_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2409_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 160 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2410 for ECDH, tcId is 161 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2410_peerpubkey[] = { 0x00, 0x47, 0xad, 0x26, 0x4a, 0x37, 0x3c, 0x49, 0x94, 0xf9, 0x42, 0xad, 0x09, 0x42, 0xda, 0xe8, 0xb2, 0x3a, 0x32, 0x9f, 0xb7, 0xa4, 0x6e, 0x98, 0x7c, 0xb9, 0x21, 0xc2, 0x8b, 0xca, 0xed, 0x4a, 0xed, 0x60, 0xe5, 0xea, 0x6f, 0xcc, 0xed, 0x4b, 0x3e, 0xce, 0x4a, 0xb7, 0xd9, 0x1b, 0x34, 0x9e, 0x3e, 0x45, 0xab, 0xce, 0x93, 0xe9, 0x76, 0x5e, 0xe2, 0xfe, 0x9f, 0x13, 0xd5, 0xf2, 0x30, 0x71, 0x5a, 0x23, 0x00, 0x59, 0x65, 0x40, 0x10, 0xa5, 0x7f, 0x0e, 0x9d, 0x1e, 0xd4, 0x6a, 0xfa, 0xc4, 0xaa, 0xf5, 0xb3, 0x22, 0x87, 0x63, 0xed, 0x2c, 0xb2, 0xb4, 0xd7, 0x8a, 0x13, 0x16, 0x36, 0xbd, 0x13, 0x33, 0xf1, 0x27, 0x99, 0x77, 0x9a, 0x9f, 0x0f, 0xec, 0x3e, 0xf2, 0x44, 0x52, 0xc5, 0x1e, 0x8e, 0x4f, 0x31, 0xef, 0x6d, 0xc1, 0x12, 0x9a, 0x45, 0x4f, 0x07, 0x92, 0x58, 0xea, 0xc1, 0x0a, 0xdf, 0x88, 0x79, 0xaf, }; static const unsigned char ecdh_secp521r1_2410_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2410_sharedsecret[] = { 0x01, 0x64, 0x6e, 0x6e, 0xd9, 0x5c, 0x47, 0xf6, 0x08, 0x51, 0xb1, 0x6b, 0x8d, 0xa1, 0x21, 0xb7, 0xa0, 0x27, 0xae, 0x9b, 0x05, 0xfa, 0xcb, 0x08, 0xbf, 0x52, 0xef, 0x17, 0xe6, 0x7a, 0x0e, 0xfb, 0x1c, 0x49, 0xef, 0x90, 0x3d, 0xe8, 0x90, 0x82, 0xd3, 0xb3, 0x4a, 0xca, 0xcc, 0x5c, 0xfb, 0x63, 0xeb, 0x6a, 0x62, 0x0d, 0x0e, 0x14, 0x98, 0x72, 0x0e, 0x04, 0x55, 0x9e, 0xe4, 0x76, 0xbb, 0x9a, 0x75, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2410 = { .name = "ecdh_secp521r1_2410", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2410_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2410_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2410_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 161 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2411 for ECDH, tcId is 162 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2411_peerpubkey[] = { 0x00, 0x07, 0x5d, 0xaa, 0x66, 0xc8, 0xb4, 0x29, 0x8a, 0x8a, 0x8c, 0xd3, 0x95, 0x02, 0x2b, 0xf2, 0xf2, 0x7e, 0x52, 0x83, 0x08, 0x68, 0xb1, 0x3b, 0x17, 0x60, 0xf2, 0x2b, 0xc2, 0x9c, 0x99, 0x66, 0x6f, 0x39, 0x23, 0x85, 0x80, 0x5b, 0x94, 0x90, 0xec, 0xa4, 0x76, 0xde, 0xfd, 0xf7, 0xdf, 0x0d, 0x6b, 0x49, 0x18, 0x1c, 0x37, 0x23, 0x77, 0x09, 0x33, 0xc8, 0x27, 0x61, 0xa2, 0xf7, 0xd3, 0xce, 0xa3, 0x9a, 0x01, 0xbd, 0x89, 0xc2, 0xff, 0xbb, 0xfb, 0x46, 0x1f, 0x21, 0x2d, 0x16, 0xe9, 0xa9, 0x04, 0x72, 0x53, 0xcd, 0xcd, 0xf1, 0x79, 0xce, 0x76, 0x3f, 0xd4, 0x91, 0x72, 0xf8, 0xbf, 0xee, 0xb6, 0x8d, 0x1c, 0x1f, 0xd6, 0xe2, 0xfd, 0x6e, 0x64, 0x16, 0xa8, 0xb0, 0x15, 0x51, 0x32, 0x22, 0x73, 0x43, 0x60, 0xf5, 0x12, 0x80, 0xce, 0xf5, 0xf3, 0x9e, 0xc5, 0xff, 0xdc, 0x75, 0x6e, 0x44, 0xa5, 0x94, 0x27, 0x64, }; static const unsigned char ecdh_secp521r1_2411_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2411_sharedsecret[] = { 0x01, 0x29, 0xe9, 0x2c, 0x8b, 0xcf, 0x5e, 0x73, 0x57, 0x32, 0xa7, 0xf8, 0x76, 0x32, 0x1a, 0xeb, 0x26, 0x55, 0xe8, 0xd2, 0x26, 0xc2, 0x28, 0xe5, 0x1d, 0x5a, 0xb6, 0xfc, 0x7c, 0x05, 0xb6, 0x3c, 0xa9, 0x40, 0x0a, 0x0c, 0x25, 0xbf, 0xa1, 0x2b, 0x0a, 0x7e, 0xbc, 0x84, 0xef, 0xd6, 0x2f, 0x69, 0x5d, 0xa7, 0xcd, 0x44, 0xc1, 0xce, 0xd1, 0xed, 0x5c, 0xb7, 0x88, 0xc4, 0xde, 0x12, 0xa5, 0x17, 0xf1, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2411 = { .name = "ecdh_secp521r1_2411", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2411_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2411_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2411_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 162 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2412 for ECDH, tcId is 163 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2412_peerpubkey[] = { 0x00, 0x4a, 0xbc, 0xd8, 0x46, 0x9f, 0x19, 0x4d, 0x0c, 0xcc, 0x0d, 0xb4, 0x64, 0x92, 0xcd, 0xdf, 0xb0, 0x55, 0x2b, 0xc1, 0x30, 0x62, 0xb7, 0x48, 0x7a, 0xcc, 0x38, 0xf5, 0x9a, 0x07, 0x4f, 0x68, 0x20, 0x01, 0xdb, 0x1a, 0xdd, 0xef, 0x6b, 0x28, 0xc5, 0x47, 0x9e, 0xaf, 0x5d, 0x6b, 0x95, 0xb3, 0x7c, 0x39, 0x4e, 0xb9, 0x1e, 0xcf, 0xe0, 0x2f, 0x00, 0x87, 0xfc, 0x63, 0x97, 0x00, 0xb4, 0x90, 0xed, 0xdf, 0x01, 0x21, 0x39, 0x86, 0x73, 0xaf, 0x0d, 0x63, 0x91, 0x91, 0xe3, 0x12, 0x2d, 0xec, 0x7b, 0x58, 0x52, 0x6d, 0xf7, 0x05, 0x46, 0x27, 0xf6, 0x96, 0xa5, 0x69, 0x89, 0x28, 0x51, 0xf9, 0x04, 0x38, 0x2d, 0xbf, 0xf7, 0xb6, 0x1e, 0xd4, 0xab, 0x19, 0x53, 0x91, 0x0d, 0x27, 0xaa, 0x35, 0x60, 0x95, 0xa2, 0xca, 0x45, 0x95, 0x64, 0x56, 0xc8, 0xd4, 0xe1, 0xac, 0x56, 0xb1, 0xff, 0xec, 0x95, 0xfb, 0xe8, 0xcf, }; static const unsigned char ecdh_secp521r1_2412_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2412_sharedsecret[] = { 0x00, 0xce, 0xe0, 0x32, 0x8e, 0x75, 0xf0, 0x16, 0xd0, 0x56, 0x98, 0x6b, 0x4c, 0x7f, 0xce, 0xee, 0x76, 0x10, 0x23, 0x7f, 0x69, 0xdc, 0x2c, 0xbb, 0xb6, 0x26, 0x66, 0x59, 0x53, 0x55, 0x41, 0x26, 0x9f, 0x85, 0x1e, 0x36, 0xe0, 0x88, 0x8d, 0x63, 0x5b, 0x50, 0x6b, 0x8c, 0x00, 0xa8, 0xde, 0xe7, 0xd9, 0x87, 0x74, 0x5d, 0x8d, 0x06, 0x51, 0x9d, 0x15, 0xbc, 0x75, 0x2b, 0xd5, 0x75, 0x6f, 0xe3, 0x27, 0xaa, }; static const wycheproof_ecdh_test ecdh_secp521r1_2412 = { .name = "ecdh_secp521r1_2412", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2412_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2412_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2412_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 163 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2413 for ECDH, tcId is 164 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2413_peerpubkey[] = { 0x01, 0xbd, 0x16, 0x39, 0x89, 0xc4, 0x07, 0xd5, 0xf8, 0xf9, 0xfd, 0x2e, 0x08, 0x7b, 0x14, 0x73, 0x71, 0x0c, 0x4b, 0xc2, 0xd6, 0xa9, 0x7d, 0x28, 0x19, 0x84, 0xc1, 0x2c, 0xbb, 0x06, 0x15, 0xbe, 0x9a, 0xc8, 0x06, 0xc2, 0x92, 0xc9, 0xd9, 0x0c, 0xf3, 0x5f, 0xfe, 0xc6, 0x65, 0x76, 0x01, 0x93, 0xb1, 0xd7, 0x68, 0x1c, 0x47, 0xf8, 0xbd, 0xae, 0x37, 0xac, 0x50, 0xd8, 0xa4, 0x07, 0x60, 0xa0, 0x47, 0xfc, 0x01, 0x67, 0xcc, 0xe4, 0xdc, 0x54, 0xe6, 0x7e, 0xbf, 0x56, 0x40, 0x7a, 0xec, 0x33, 0xa5, 0xaa, 0x20, 0xba, 0x86, 0x7c, 0x85, 0x6f, 0x92, 0x9f, 0xad, 0x77, 0x8b, 0x39, 0xb0, 0xdc, 0x51, 0x24, 0x9d, 0x24, 0xe3, 0x90, 0xd7, 0xe3, 0x3c, 0x72, 0x38, 0x2c, 0x4a, 0x1d, 0x02, 0xbf, 0x73, 0xd6, 0x05, 0x94, 0x8a, 0x73, 0xa4, 0x81, 0xbd, 0xf3, 0x29, 0xef, 0x7b, 0x7f, 0x04, 0xcf, 0x3a, 0x33, 0x3c, 0x76, }; static const unsigned char ecdh_secp521r1_2413_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2413_sharedsecret[] = { 0x00, 0x1e, 0x87, 0x2a, 0x53, 0x4b, 0xd0, 0x79, 0x55, 0x0d, 0x50, 0xa2, 0xde, 0xf1, 0xd4, 0x39, 0x08, 0x3b, 0xb3, 0x42, 0x3a, 0x58, 0xa9, 0x23, 0xde, 0xd2, 0xed, 0x7d, 0xe7, 0x68, 0x02, 0x29, 0x81, 0xb7, 0xcf, 0xc7, 0x5c, 0x97, 0x0c, 0xaa, 0x2c, 0xbb, 0xf2, 0xc4, 0xc7, 0xcf, 0xd9, 0xcf, 0x98, 0x46, 0x84, 0x4e, 0x9c, 0x54, 0x00, 0x35, 0x67, 0x00, 0x08, 0x0a, 0x70, 0x97, 0xf0, 0x0e, 0x15, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_2413 = { .name = "ecdh_secp521r1_2413", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2413_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2413_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2413_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 164 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2414 for ECDH, tcId is 165 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2414_peerpubkey[] = { 0x01, 0xf3, 0xd6, 0x59, 0x37, 0x89, 0x97, 0xa7, 0x5e, 0x45, 0x6f, 0x77, 0x0f, 0x34, 0xbf, 0xac, 0x63, 0x8f, 0x1d, 0x38, 0x77, 0x7c, 0xd0, 0xa7, 0x72, 0x07, 0xcb, 0xc4, 0x2b, 0x54, 0x0c, 0x1f, 0xcb, 0xad, 0x58, 0x3b, 0x93, 0x87, 0x31, 0x63, 0x42, 0x6e, 0xb9, 0x16, 0x99, 0xf8, 0xc0, 0x83, 0x4b, 0x13, 0x69, 0x54, 0x00, 0xde, 0x49, 0x79, 0x67, 0x88, 0xc5, 0x92, 0x41, 0x0c, 0x52, 0x0e, 0x85, 0x9f, 0x01, 0x94, 0x62, 0x25, 0xc7, 0x1e, 0x24, 0x1a, 0x3a, 0x78, 0x5d, 0x26, 0xd1, 0x21, 0xd5, 0x61, 0x45, 0xea, 0x8f, 0x97, 0x68, 0xf3, 0xa0, 0x09, 0xa2, 0xe3, 0xc5, 0x4f, 0x9c, 0x87, 0x6b, 0x89, 0x9e, 0x81, 0xab, 0x12, 0x61, 0xb2, 0xbd, 0x5e, 0xf9, 0x9f, 0x54, 0xf4, 0x45, 0x35, 0xf9, 0xcc, 0x76, 0xbf, 0x0f, 0x44, 0xe9, 0x1a, 0x5f, 0x13, 0x9e, 0x99, 0x27, 0xb8, 0x8d, 0x16, 0xdc, 0xcc, 0x4b, 0x39, }; static const unsigned char ecdh_secp521r1_2414_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2414_sharedsecret[] = { 0x01, 0xf9, 0x71, 0x7e, 0x8a, 0x71, 0xcf, 0xa9, 0x4b, 0x94, 0x3d, 0x41, 0xbf, 0x12, 0xc7, 0x0b, 0xcf, 0x51, 0x43, 0x74, 0x19, 0xb2, 0xda, 0x0b, 0x6e, 0x16, 0x0d, 0x06, 0xa3, 0x18, 0x7d, 0x78, 0x17, 0x69, 0xc7, 0x5d, 0x2a, 0x9f, 0x97, 0xa8, 0x49, 0x9e, 0x39, 0x60, 0x69, 0xa0, 0x59, 0x72, 0x5f, 0x47, 0xa1, 0x01, 0x03, 0xb7, 0x8e, 0x56, 0x8e, 0x07, 0x68, 0x49, 0x91, 0x12, 0xf2, 0xf1, 0x6b, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_2414 = { .name = "ecdh_secp521r1_2414", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2414_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2414_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2414_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 165 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2415 for ECDH, tcId is 166 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2415_peerpubkey[] = { 0x00, 0x05, 0x20, 0xd4, 0xf9, 0x3a, 0xd1, 0x5b, 0xd8, 0x39, 0x96, 0x97, 0xda, 0x58, 0xb2, 0x03, 0xa5, 0x81, 0xa3, 0x86, 0x8c, 0x55, 0xc8, 0xad, 0x9a, 0xf9, 0xae, 0xf6, 0x13, 0xe2, 0x14, 0x04, 0x6e, 0x56, 0xf2, 0xa8, 0x23, 0x82, 0xfd, 0x9e, 0xaf, 0xb1, 0xf5, 0x28, 0x1e, 0x6f, 0x6e, 0x9f, 0x0b, 0xcb, 0xb4, 0x38, 0x6f, 0xfd, 0x8c, 0xdf, 0x5d, 0xce, 0x09, 0x25, 0x7c, 0xad, 0xab, 0x97, 0xa0, 0x10, 0x01, 0x1b, 0x42, 0x58, 0x53, 0xcc, 0xf7, 0x98, 0x7d, 0xe7, 0x24, 0x59, 0x6b, 0xe0, 0xc2, 0x3f, 0x1d, 0x5e, 0x1c, 0x7d, 0x09, 0x32, 0xd2, 0xfe, 0x72, 0xc5, 0xf2, 0x23, 0xb9, 0xd0, 0x3a, 0x78, 0xb8, 0x8c, 0xb0, 0x9e, 0xba, 0x6c, 0x42, 0x45, 0x24, 0x0f, 0x85, 0x49, 0xc7, 0x21, 0x6e, 0x53, 0xa8, 0x79, 0xc9, 0x66, 0x68, 0xcd, 0xdc, 0x01, 0xd5, 0x1c, 0x7a, 0x52, 0xdb, 0x20, 0x1a, 0xb7, 0x7b, 0x89, }; static const unsigned char ecdh_secp521r1_2415_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2415_sharedsecret[] = { 0x01, 0x91, 0xc0, 0x56, 0x5f, 0xdd, 0x56, 0x12, 0x98, 0x75, 0x56, 0x20, 0xd9, 0xa7, 0x69, 0x3c, 0xfc, 0xe1, 0x85, 0xc5, 0x7b, 0x63, 0x91, 0xe4, 0xf9, 0xb9, 0x0f, 0x7b, 0x22, 0x28, 0x8b, 0x4f, 0x3e, 0xa3, 0xd9, 0x5d, 0xd4, 0xd9, 0x1b, 0x73, 0x16, 0x15, 0x64, 0x6a, 0xa9, 0xcf, 0x66, 0xdb, 0x8a, 0xa0, 0xc3, 0x02, 0xff, 0x07, 0x03, 0x02, 0x6c, 0x30, 0x3a, 0x8c, 0x3b, 0x1f, 0x3e, 0x15, 0xec, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_2415 = { .name = "ecdh_secp521r1_2415", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2415_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2415_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2415_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 166 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2416 for ECDH, tcId is 167 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2416_peerpubkey[] = { 0x00, 0x56, 0x8a, 0x78, 0xce, 0x5d, 0x2d, 0x03, 0x0f, 0xf8, 0x50, 0x87, 0x9e, 0xe0, 0x3c, 0x20, 0x1e, 0x4d, 0xc6, 0x4c, 0x58, 0x58, 0x8d, 0x2c, 0x8f, 0xeb, 0x3b, 0xa9, 0xb2, 0xd0, 0x38, 0x57, 0xaf, 0x3c, 0x29, 0xcf, 0xbd, 0x78, 0x9b, 0x79, 0x7f, 0x8d, 0xba, 0x4b, 0x74, 0x70, 0xf0, 0xc8, 0x41, 0x21, 0x23, 0x1f, 0x35, 0x6b, 0x63, 0xe6, 0x13, 0xd0, 0xff, 0xf5, 0xf8, 0xaa, 0xea, 0x8c, 0x86, 0xf9, 0x00, 0x3d, 0x67, 0xdd, 0x0b, 0xbb, 0x1d, 0x85, 0x88, 0xf1, 0x8c, 0xcf, 0x31, 0xcb, 0xe5, 0xcd, 0x28, 0x64, 0x22, 0xb7, 0x08, 0xc3, 0x86, 0xc1, 0xf8, 0x10, 0x08, 0x64, 0x7c, 0x82, 0x4f, 0x69, 0x4c, 0x11, 0x53, 0x55, 0x30, 0x09, 0x77, 0x3c, 0x65, 0x7b, 0x2b, 0x84, 0xcd, 0xae, 0x98, 0xe5, 0x2f, 0xb6, 0x24, 0x08, 0x72, 0xa3, 0x1b, 0xfb, 0x0f, 0xee, 0x3f, 0x2d, 0x8a, 0x94, 0xe5, 0x31, 0x9e, 0x49, }; static const unsigned char ecdh_secp521r1_2416_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2416_sharedsecret[] = { 0x01, 0xf8, 0x6b, 0x35, 0x03, 0x8a, 0xf9, 0x37, 0x1a, 0x84, 0x12, 0xd7, 0x5e, 0x5d, 0x46, 0xa4, 0xfa, 0x76, 0xed, 0xa9, 0xd7, 0xbe, 0x74, 0x0b, 0x14, 0xe8, 0xcf, 0x19, 0x41, 0x6f, 0xd5, 0xdf, 0x2a, 0x4c, 0xed, 0x30, 0x64, 0xfc, 0x38, 0x46, 0xae, 0x99, 0x54, 0x24, 0x88, 0xd6, 0x9e, 0x38, 0x79, 0x61, 0x9f, 0xa9, 0x07, 0x8c, 0xb9, 0x87, 0xdd, 0x0d, 0x14, 0x86, 0x0b, 0x72, 0x4d, 0xa9, 0x33, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp521r1_2416 = { .name = "ecdh_secp521r1_2416", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2416_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2416_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2416_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 167 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2417 for ECDH, tcId is 168 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2417_peerpubkey[] = { 0x00, 0xd7, 0x24, 0xed, 0x03, 0xce, 0xa8, 0x0c, 0x57, 0x94, 0xc0, 0xf0, 0x77, 0xb8, 0x06, 0x06, 0x62, 0xdd, 0x74, 0x4e, 0x4e, 0x8d, 0x41, 0x90, 0xf7, 0xf3, 0x13, 0xc4, 0x05, 0x97, 0xfe, 0x94, 0xbd, 0x2a, 0xa7, 0x0b, 0x20, 0xf7, 0x3a, 0xc4, 0xdc, 0xef, 0x99, 0x31, 0x36, 0x08, 0xc2, 0x03, 0x1c, 0x73, 0xf1, 0x3e, 0xd1, 0xf5, 0xd9, 0xac, 0xe8, 0x37, 0xc5, 0x80, 0xfd, 0x02, 0xa4, 0xf2, 0xd6, 0xd5, 0x01, 0x55, 0xff, 0x55, 0x6f, 0x04, 0x66, 0x57, 0xee, 0x5f, 0x50, 0x75, 0x7b, 0x90, 0x78, 0xc5, 0x46, 0x7f, 0xec, 0x8a, 0x0f, 0x75, 0x66, 0xac, 0x15, 0xdb, 0x16, 0x8a, 0xfe, 0xcb, 0x7f, 0x51, 0x45, 0x41, 0xd2, 0xd1, 0xff, 0x87, 0xc5, 0xf6, 0x7c, 0x51, 0x1a, 0x4f, 0x61, 0xa9, 0x1c, 0x57, 0x99, 0x91, 0x48, 0x9a, 0xd5, 0xa1, 0xc8, 0xc0, 0xc5, 0x54, 0xd9, 0xb3, 0x6d, 0x14, 0x86, 0xb2, 0x7e, 0x72, }; static const unsigned char ecdh_secp521r1_2417_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2417_sharedsecret[] = { 0x01, 0xd1, 0x04, 0x7b, 0xf7, 0xe6, 0x22, 0xcd, 0x42, 0x8e, 0x1c, 0x76, 0xaa, 0x2c, 0x04, 0x4a, 0x20, 0x58, 0xa2, 0xd9, 0xf4, 0xb5, 0xc1, 0x79, 0xcf, 0x9c, 0x9d, 0x46, 0x07, 0x00, 0x81, 0x81, 0xb1, 0x59, 0xc1, 0x56, 0x47, 0x3e, 0x7d, 0x25, 0xfe, 0x49, 0xdd, 0x63, 0xad, 0x15, 0x00, 0x73, 0xcb, 0xc2, 0xde, 0x2f, 0xa9, 0xca, 0xd5, 0x0d, 0xba, 0xd9, 0xa0, 0x8d, 0x56, 0xeb, 0x22, 0xd8, 0xd3, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_2417 = { .name = "ecdh_secp521r1_2417", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2417_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2417_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2417_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 168 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2418 for ECDH, tcId is 169 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2418_peerpubkey[] = { 0x00, 0x93, 0x39, 0xef, 0x1c, 0x1f, 0x93, 0xca, 0x5f, 0xed, 0xec, 0x1f, 0xf5, 0xfe, 0x30, 0x33, 0x4e, 0xb1, 0x23, 0xc3, 0x0e, 0x6a, 0x17, 0xc7, 0xb6, 0x5f, 0x3a, 0xc8, 0x46, 0x1f, 0xb7, 0x79, 0x07, 0x5f, 0xe6, 0x98, 0x89, 0xa4, 0x28, 0x37, 0xb0, 0x1e, 0xaf, 0x44, 0xbb, 0x7f, 0xf8, 0x98, 0x4c, 0x0b, 0xed, 0xa0, 0xe1, 0xb5, 0x27, 0x8a, 0x62, 0xc0, 0x7e, 0xc1, 0x28, 0xca, 0xaf, 0x52, 0xd8, 0xbd, 0x00, 0x19, 0xc0, 0x95, 0xff, 0xad, 0x69, 0xed, 0x80, 0x0e, 0x22, 0x3a, 0x8b, 0xfa, 0x55, 0xd2, 0x1f, 0x58, 0x8d, 0xc7, 0xf9, 0xf4, 0x1b, 0x9d, 0x75, 0xdc, 0x01, 0x07, 0x92, 0xb6, 0xfe, 0x24, 0x3d, 0x23, 0x08, 0xf1, 0x2d, 0xfc, 0xd3, 0x12, 0x72, 0x9e, 0xbe, 0xf9, 0xcc, 0x40, 0x74, 0x43, 0xc0, 0x4b, 0x0c, 0xdb, 0xe5, 0x77, 0x14, 0x61, 0x52, 0x41, 0xda, 0xb8, 0x74, 0x5c, 0xf6, 0x48, 0x7b, 0xc9, }; static const unsigned char ecdh_secp521r1_2418_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2418_sharedsecret[] = { 0x00, 0x3e, 0xef, 0x53, 0x52, 0x75, 0xe1, 0x5f, 0x77, 0x9e, 0xc1, 0x3e, 0x5c, 0xc7, 0xff, 0x93, 0x9c, 0x3d, 0xc1, 0x52, 0xe7, 0x9a, 0xad, 0x0c, 0x32, 0xa0, 0x3b, 0x8c, 0xb9, 0xf8, 0xc4, 0x49, 0xb4, 0xd9, 0x46, 0x9b, 0x36, 0x2e, 0x95, 0x98, 0x87, 0xc5, 0xa6, 0xf2, 0x09, 0x62, 0x78, 0x3c, 0x66, 0x7b, 0x32, 0xb3, 0x79, 0x1f, 0xa7, 0x01, 0xed, 0x52, 0xe8, 0x2d, 0x1e, 0x3d, 0x22, 0x29, 0x73, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp521r1_2418 = { .name = "ecdh_secp521r1_2418", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2418_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2418_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2418_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 169 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2419 for ECDH, tcId is 170 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2419_peerpubkey[] = { 0x00, 0xc2, 0x5a, 0x90, 0x65, 0x37, 0x7d, 0x2d, 0x84, 0x37, 0x25, 0x80, 0xa2, 0x68, 0x76, 0x67, 0xcd, 0xce, 0xce, 0xa5, 0x80, 0xbe, 0x1a, 0x5e, 0x72, 0xe1, 0xfd, 0x2a, 0xdb, 0x42, 0xeb, 0xda, 0x8d, 0x6a, 0x70, 0xac, 0x05, 0x3e, 0x49, 0xda, 0x48, 0x57, 0x32, 0xbf, 0x13, 0x43, 0x02, 0x82, 0xfa, 0x4c, 0xed, 0xac, 0x64, 0xe1, 0xb0, 0x69, 0x30, 0x51, 0xd1, 0x35, 0x4d, 0x8d, 0x6e, 0xfc, 0xec, 0x12, 0x01, 0xe2, 0xd2, 0xbf, 0xb7, 0xb4, 0x4f, 0x53, 0x5b, 0x87, 0x31, 0x2a, 0xe6, 0x7b, 0xea, 0x3d, 0x62, 0x80, 0x0b, 0x69, 0xd4, 0x34, 0x22, 0xfc, 0xd3, 0x68, 0x9a, 0x1b, 0xce, 0xca, 0x6f, 0xcf, 0xe4, 0x39, 0x9b, 0x7c, 0x31, 0x8a, 0x56, 0x88, 0xd0, 0xb4, 0xd2, 0x33, 0x39, 0x22, 0xd5, 0x95, 0xcf, 0x81, 0x42, 0x58, 0x4f, 0xa8, 0x98, 0xc6, 0x94, 0x26, 0xf4, 0xbc, 0x47, 0x85, 0x76, 0xed, 0xc8, 0xbf, }; static const unsigned char ecdh_secp521r1_2419_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2419_sharedsecret[] = { 0x01, 0x90, 0x34, 0x89, 0x6a, 0xfa, 0x68, 0x1f, 0xdc, 0xfb, 0x11, 0xee, 0x0c, 0x03, 0xe5, 0xc5, 0x88, 0xa6, 0x52, 0x39, 0xbe, 0x8e, 0x55, 0x5a, 0x89, 0x28, 0x0b, 0x7a, 0x98, 0x14, 0x17, 0x42, 0x54, 0xfd, 0xb4, 0x96, 0xec, 0x0f, 0xae, 0xb2, 0xa1, 0xd6, 0x81, 0x6d, 0x27, 0x6a, 0xce, 0xaa, 0x98, 0xa5, 0x3e, 0x09, 0xef, 0xe8, 0x4a, 0x75, 0x2c, 0x09, 0xc5, 0x01, 0xb2, 0xba, 0xca, 0xba, 0x69, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp521r1_2419 = { .name = "ecdh_secp521r1_2419", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2419_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2419_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2419_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 170 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2420 for ECDH, tcId is 171 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2420_peerpubkey[] = { 0x01, 0xc2, 0x40, 0x2f, 0x34, 0x1b, 0x4e, 0x1c, 0x97, 0x55, 0xb3, 0xe1, 0x02, 0x22, 0x3c, 0x80, 0x56, 0x3c, 0x61, 0xc4, 0x1a, 0x64, 0xcb, 0x11, 0x99, 0x58, 0xc4, 0x1b, 0xec, 0x2d, 0xd9, 0x51, 0x9a, 0x47, 0x5a, 0xb8, 0x4b, 0xaa, 0xfb, 0x70, 0x83, 0x97, 0x00, 0x0b, 0x80, 0xb9, 0xd2, 0x75, 0xc1, 0x3d, 0x7c, 0xdb, 0x49, 0x12, 0x7e, 0x1e, 0xb2, 0x9a, 0x65, 0xd2, 0xd3, 0x74, 0x90, 0x4d, 0x09, 0x0b, 0x01, 0x9e, 0x06, 0xc3, 0xda, 0x4e, 0x88, 0x4d, 0x6e, 0xd9, 0x35, 0xc4, 0xb9, 0x2c, 0x84, 0xbc, 0x63, 0xe9, 0x1c, 0xbd, 0x66, 0x5c, 0xee, 0x86, 0xcc, 0x15, 0x13, 0x44, 0xa3, 0xa3, 0x63, 0xfa, 0x75, 0xad, 0x56, 0xa9, 0xb8, 0x04, 0xb4, 0x65, 0x1e, 0xd8, 0x56, 0x63, 0x11, 0x41, 0x88, 0xe6, 0x3c, 0xeb, 0xb2, 0xc1, 0x88, 0x7f, 0x96, 0x99, 0x4d, 0xb9, 0x70, 0x3c, 0x1d, 0x06, 0x43, 0x81, 0x2c, 0xd6, }; static const unsigned char ecdh_secp521r1_2420_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2420_sharedsecret[] = { 0x00, 0x28, 0x65, 0x55, 0x1b, 0xa9, 0x5f, 0xcc, 0xdb, 0x0c, 0x81, 0x4b, 0x14, 0x5b, 0x5a, 0x57, 0xc8, 0x08, 0xb4, 0x7d, 0x5b, 0x08, 0x25, 0x9e, 0xe4, 0x11, 0x74, 0x77, 0x0a, 0x73, 0x02, 0xd7, 0x4a, 0x2c, 0xc7, 0x8c, 0x78, 0x22, 0xa6, 0xed, 0xfa, 0x19, 0xb2, 0x2e, 0x8a, 0x0d, 0x61, 0x62, 0x60, 0xf1, 0x85, 0x1e, 0x0d, 0x5d, 0xba, 0x50, 0xa9, 0x18, 0x8e, 0x45, 0xaf, 0xcb, 0x7d, 0xbb, 0xab, 0x40, }; static const wycheproof_ecdh_test ecdh_secp521r1_2420 = { .name = "ecdh_secp521r1_2420", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2420_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2420_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2420_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 171 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2421 for ECDH, tcId is 172 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2421_peerpubkey[] = { 0x00, 0x83, 0xf9, 0x9c, 0xf2, 0x76, 0x7c, 0xe0, 0xcc, 0x88, 0x98, 0xe4, 0x61, 0xf9, 0x10, 0x40, 0x60, 0xa9, 0xc9, 0xea, 0x13, 0x42, 0xa2, 0xaf, 0xf7, 0x05, 0x61, 0x04, 0x69, 0x28, 0x65, 0x92, 0xaa, 0x41, 0xf3, 0x19, 0xc5, 0x0c, 0x83, 0x52, 0x48, 0x81, 0xfc, 0x42, 0x16, 0x9d, 0x07, 0x25, 0x50, 0x82, 0x5c, 0xf9, 0x2e, 0x5a, 0xd1, 0x10, 0xab, 0xd7, 0x7e, 0x8e, 0xcd, 0xd8, 0xca, 0x09, 0xf9, 0x5e, 0x00, 0x37, 0xaf, 0x6a, 0x24, 0xd6, 0xdb, 0xc9, 0xc8, 0x5d, 0xfa, 0xad, 0xa6, 0xc5, 0xa9, 0x45, 0xdd, 0x63, 0x49, 0xb9, 0xf1, 0xd1, 0xee, 0x10, 0xf2, 0x5f, 0x8d, 0xfc, 0xf0, 0x52, 0x2f, 0x36, 0x23, 0x33, 0x7b, 0xfc, 0xba, 0x20, 0x4e, 0x7e, 0x8e, 0x08, 0xc2, 0x55, 0x64, 0xb4, 0xfe, 0x93, 0x3c, 0xb6, 0xfc, 0x14, 0x5f, 0xfe, 0xf8, 0x2b, 0xaa, 0x2f, 0xd0, 0x3a, 0x89, 0x67, 0x8f, 0xfb, 0x75, 0x85, }; static const unsigned char ecdh_secp521r1_2421_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2421_sharedsecret[] = { 0x01, 0xb3, 0x84, 0xb4, 0x84, 0x05, 0x39, 0x6f, 0xdc, 0xb2, 0xc5, 0x7f, 0x68, 0x0b, 0xe5, 0x2f, 0x91, 0xb7, 0xc8, 0x85, 0x22, 0x5e, 0xcf, 0xb4, 0xf7, 0x86, 0xce, 0x6c, 0x14, 0x90, 0x16, 0x2b, 0x3c, 0x15, 0xeb, 0xd8, 0xe6, 0x75, 0x5e, 0x46, 0x9a, 0x7f, 0xfc, 0xb9, 0x1c, 0xfd, 0x74, 0x06, 0xcf, 0x0a, 0xb9, 0x34, 0xa4, 0x64, 0x5c, 0x3a, 0x03, 0x99, 0x41, 0xe7, 0xd8, 0xcd, 0xc0, 0x7d, 0xda, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_2421 = { .name = "ecdh_secp521r1_2421", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2421_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2421_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2421_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 172 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2422 for ECDH, tcId is 173 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2422_peerpubkey[] = { 0x00, 0xd7, 0xfb, 0x4d, 0x55, 0x92, 0xe7, 0xcf, 0x72, 0x4e, 0x57, 0xe6, 0xab, 0x95, 0xe1, 0x58, 0xd8, 0x18, 0xf1, 0x97, 0xf7, 0x40, 0x31, 0x31, 0x8d, 0xc8, 0x3d, 0x3c, 0x2b, 0xec, 0x5c, 0xd8, 0x48, 0x64, 0x81, 0xfa, 0xc9, 0x7a, 0xd6, 0xb4, 0x81, 0xe8, 0x37, 0xab, 0xbf, 0x35, 0x2b, 0x99, 0x2c, 0x22, 0x64, 0xb1, 0x6f, 0x56, 0x3f, 0x84, 0x42, 0x52, 0x6b, 0xc6, 0xdd, 0x05, 0xa6, 0x37, 0x4d, 0xf8, 0x01, 0x61, 0xdd, 0x90, 0xc9, 0x08, 0xf5, 0x52, 0x4e, 0xe6, 0xb1, 0x57, 0xa8, 0x6f, 0x67, 0x34, 0xa2, 0x5e, 0x14, 0x06, 0x38, 0xbd, 0xd8, 0x39, 0x27, 0x6f, 0xb0, 0x9b, 0x3f, 0xad, 0x93, 0xe7, 0xba, 0x89, 0x9d, 0x6b, 0x6b, 0x3e, 0xd2, 0x4f, 0xff, 0x8d, 0x49, 0x9a, 0xd9, 0x8c, 0xc4, 0x5a, 0x35, 0xd6, 0x2b, 0x8c, 0x46, 0x1f, 0x7c, 0xc2, 0x56, 0x99, 0x72, 0x3a, 0x03, 0x3e, 0x5b, 0x1d, 0xbb, 0x03, }; static const unsigned char ecdh_secp521r1_2422_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2422_sharedsecret[] = { 0x00, 0x8b, 0x00, 0xb6, 0x5c, 0xbd, 0x72, 0xa5, 0x1c, 0x27, 0x9d, 0x1b, 0x59, 0x62, 0x8d, 0x4e, 0x7a, 0x1a, 0x84, 0x72, 0x77, 0xf6, 0xd8, 0xbd, 0x53, 0x11, 0xe5, 0xea, 0xe9, 0x45, 0xc8, 0x87, 0xe4, 0xc8, 0x02, 0x4d, 0xc4, 0x12, 0xeb, 0x42, 0x05, 0xc7, 0x61, 0x03, 0xea, 0x49, 0x3e, 0x25, 0xdf, 0x4c, 0xdf, 0x00, 0x11, 0x61, 0x9e, 0x3e, 0xfb, 0x29, 0x0d, 0x1c, 0xea, 0x8c, 0x29, 0x05, 0x81, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2422 = { .name = "ecdh_secp521r1_2422", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2422_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2422_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2422_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 173 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2423 for ECDH, tcId is 174 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2423_peerpubkey[] = { 0x00, 0x58, 0x49, 0x93, 0x15, 0xbb, 0x22, 0x97, 0xd7, 0x8f, 0x8e, 0x74, 0xd3, 0x63, 0x4b, 0xbf, 0x83, 0xbd, 0xc1, 0x0e, 0xae, 0x30, 0x6d, 0x82, 0x60, 0xad, 0x0c, 0x62, 0xa4, 0x1c, 0xbf, 0x78, 0x92, 0x91, 0x44, 0xbb, 0xb6, 0x93, 0x71, 0xac, 0x92, 0x18, 0xd1, 0x8e, 0xee, 0x59, 0xfe, 0x82, 0x00, 0xc1, 0x01, 0x73, 0xd3, 0x80, 0xcd, 0x78, 0x43, 0x80, 0x8e, 0xb1, 0x6b, 0x2c, 0x4c, 0xdc, 0x56, 0xdc, 0x00, 0x4e, 0xcd, 0xec, 0xaf, 0xe5, 0x9b, 0x4a, 0xee, 0xd0, 0x84, 0xd2, 0xd7, 0x3a, 0xf0, 0x91, 0x1a, 0x7d, 0x54, 0x47, 0x48, 0x74, 0x68, 0x9b, 0xd6, 0xf7, 0x71, 0x6c, 0x16, 0xee, 0x5f, 0x4f, 0x29, 0x3f, 0x72, 0xba, 0x7d, 0x26, 0x98, 0x9e, 0x55, 0x1a, 0xda, 0xc0, 0x56, 0x8c, 0xd3, 0x45, 0xc5, 0xc9, 0x48, 0x23, 0x1d, 0x5e, 0x49, 0xbc, 0x26, 0x29, 0x01, 0x15, 0x18, 0x6b, 0x18, 0x5b, 0x5d, 0xed, }; static const unsigned char ecdh_secp521r1_2423_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2423_sharedsecret[] = { 0x00, 0x7d, 0xf5, 0x3f, 0x8d, 0x32, 0xa1, 0xea, 0x1f, 0x57, 0x34, 0xb5, 0x94, 0x56, 0x56, 0x4c, 0xac, 0x46, 0x1f, 0x1c, 0x3a, 0x94, 0x9d, 0x4f, 0xed, 0xff, 0x5e, 0xa9, 0x69, 0x28, 0xe7, 0xf2, 0xb4, 0x75, 0x35, 0x20, 0x33, 0x47, 0x60, 0xf1, 0x4e, 0xde, 0x15, 0xea, 0xa9, 0x64, 0xf6, 0xa0, 0xe5, 0x20, 0x34, 0x6c, 0x4f, 0x6b, 0x3b, 0x40, 0x1b, 0xa6, 0xe3, 0x01, 0xb5, 0x81, 0xdd, 0x49, 0xbd, 0x21, }; static const wycheproof_ecdh_test ecdh_secp521r1_2423 = { .name = "ecdh_secp521r1_2423", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2423_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2423_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2423_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 174 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2424 for ECDH, tcId is 175 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2424_peerpubkey[] = { 0x01, 0x1d, 0x26, 0x60, 0xb0, 0xf8, 0xfa, 0x5b, 0xba, 0xae, 0xb0, 0xe1, 0xd9, 0xe2, 0xa9, 0x64, 0x25, 0x58, 0x96, 0x9f, 0x13, 0xcd, 0x08, 0xc5, 0x1c, 0x57, 0x25, 0xb1, 0x9f, 0x18, 0x48, 0x1a, 0xf2, 0xbe, 0x6e, 0xdf, 0x0b, 0xc2, 0xce, 0x59, 0x06, 0x5b, 0xbe, 0xd4, 0xb1, 0xf3, 0x83, 0xf3, 0x2f, 0x52, 0xfc, 0x55, 0x91, 0x74, 0xf2, 0xa4, 0x02, 0x27, 0x5e, 0xe9, 0x51, 0xad, 0xea, 0x00, 0x09, 0x1d, 0x00, 0x5a, 0x34, 0x26, 0x94, 0x5e, 0x6c, 0xb7, 0x06, 0xb8, 0xe4, 0x20, 0x10, 0xa6, 0x9a, 0x47, 0xc0, 0x99, 0x48, 0xfe, 0xc3, 0xf2, 0xc5, 0x5f, 0x8d, 0xa5, 0xce, 0xf5, 0xec, 0xbf, 0x3f, 0x0e, 0xa3, 0xdc, 0x2c, 0xde, 0x92, 0xcb, 0xe2, 0xee, 0xb7, 0x6d, 0xc7, 0xfd, 0x33, 0x82, 0x54, 0x35, 0xee, 0x54, 0x57, 0xbe, 0xb7, 0xa6, 0x06, 0x9e, 0x3e, 0x34, 0x8d, 0x26, 0xed, 0x33, 0xe0, 0x7d, 0xcd, 0xb8, }; static const unsigned char ecdh_secp521r1_2424_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2424_sharedsecret[] = { 0x00, 0x72, 0x5e, 0x7b, 0x5b, 0x8f, 0x0d, 0x7e, 0xb2, 0xd4, 0xfc, 0x60, 0x45, 0xd6, 0x1b, 0x5b, 0x85, 0x05, 0xa1, 0x56, 0xfe, 0xf8, 0xfa, 0x4b, 0x1a, 0x2e, 0x35, 0x17, 0x60, 0xb2, 0xf6, 0x35, 0xa1, 0x83, 0x7f, 0x23, 0xa4, 0xc6, 0xb7, 0x24, 0xdf, 0x07, 0x6b, 0x21, 0x87, 0xb7, 0xe2, 0x13, 0xda, 0x63, 0x6b, 0x06, 0x25, 0x0c, 0x66, 0x19, 0x3a, 0x23, 0x5a, 0x4e, 0x3c, 0x90, 0xed, 0x86, 0xeb, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp521r1_2424 = { .name = "ecdh_secp521r1_2424", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2424_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2424_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2424_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 175 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2425 for ECDH, tcId is 176 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2425_peerpubkey[] = { 0x00, 0x9c, 0x93, 0x06, 0x5d, 0x67, 0xcd, 0x83, 0x91, 0x87, 0x23, 0x3f, 0xbf, 0xb3, 0x3f, 0x80, 0x8f, 0x7a, 0x6c, 0xd4, 0x44, 0x92, 0x4e, 0xe4, 0xea, 0x0f, 0xd4, 0xbb, 0x9b, 0x3d, 0xbc, 0x8b, 0x4a, 0xff, 0xa7, 0xd3, 0xc8, 0xe3, 0xac, 0x2a, 0xbf, 0x82, 0x44, 0x9d, 0x7c, 0xf4, 0x16, 0x6c, 0x6c, 0x18, 0x1b, 0x4f, 0x60, 0x9f, 0xe0, 0x9e, 0x3f, 0xf7, 0xa2, 0xb6, 0x64, 0x0f, 0x81, 0x63, 0xb0, 0x81, 0x00, 0xb5, 0xf4, 0x4a, 0x94, 0x7b, 0x7d, 0x9b, 0xc7, 0x80, 0x69, 0xd1, 0x5d, 0x50, 0x49, 0xac, 0x1e, 0xe9, 0xda, 0x21, 0xe7, 0x81, 0x31, 0x52, 0x3e, 0xba, 0x4d, 0x9c, 0x9e, 0xe6, 0x72, 0x6d, 0x32, 0xbd, 0x4a, 0xd8, 0x49, 0xdb, 0xd7, 0x12, 0x70, 0x71, 0x0c, 0xcc, 0xb3, 0xcb, 0x88, 0xd2, 0x43, 0x18, 0x8f, 0xd0, 0x4a, 0xc3, 0x94, 0xc1, 0x25, 0xdc, 0xb6, 0x27, 0x35, 0x57, 0x0e, 0x12, 0x38, 0x90, }; static const unsigned char ecdh_secp521r1_2425_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2425_sharedsecret[] = { 0x00, 0x71, 0x8e, 0x90, 0x0a, 0x7e, 0xf9, 0x93, 0xd6, 0x71, 0xab, 0x0d, 0xc5, 0x41, 0x7c, 0x98, 0xf6, 0x1f, 0x6e, 0xb0, 0x73, 0x16, 0x41, 0xe5, 0x52, 0xff, 0x48, 0xfa, 0x4f, 0x93, 0x31, 0x8b, 0x8b, 0xff, 0xfa, 0xff, 0x2a, 0x1c, 0xfa, 0x4b, 0x75, 0x9d, 0x35, 0x1e, 0x56, 0x03, 0x6a, 0x61, 0xdd, 0x10, 0x61, 0xd8, 0x5c, 0x3d, 0x14, 0x4b, 0x8a, 0x88, 0x2f, 0x46, 0x98, 0x10, 0xc5, 0x8e, 0x06, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_2425 = { .name = "ecdh_secp521r1_2425", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2425_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2425_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2425_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 176 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2426 for ECDH, tcId is 177 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2426_peerpubkey[] = { 0x00, 0x3c, 0x1f, 0x1b, 0xe4, 0x61, 0xd3, 0xcf, 0x43, 0x02, 0xcf, 0x1f, 0xa8, 0xeb, 0x92, 0x1e, 0x5c, 0x28, 0x06, 0xfe, 0x56, 0x73, 0xf2, 0x7f, 0x6d, 0xa3, 0xa5, 0xbc, 0x2b, 0x3d, 0x78, 0xa8, 0xaa, 0xe7, 0xba, 0x41, 0x02, 0x36, 0xdd, 0x9e, 0x65, 0x09, 0x42, 0xcc, 0xdb, 0x11, 0x04, 0x23, 0xab, 0xf5, 0x3c, 0x5d, 0x13, 0x16, 0x76, 0x38, 0xff, 0x81, 0x62, 0xb4, 0xb9, 0x31, 0xa0, 0xbc, 0xbb, 0xa9, 0x00, 0x60, 0x8d, 0x65, 0x17, 0x00, 0x9d, 0x99, 0xfc, 0x3b, 0xf1, 0x16, 0x5e, 0x81, 0x99, 0x22, 0x1a, 0x79, 0x89, 0xf2, 0xeb, 0xda, 0x3b, 0x73, 0x9a, 0x74, 0x8c, 0xc9, 0x38, 0xd2, 0xdb, 0x3e, 0x69, 0x7c, 0x5f, 0x75, 0xc3, 0x2d, 0xd5, 0xbc, 0xc5, 0x57, 0x8e, 0x54, 0x9e, 0x42, 0x9f, 0x45, 0x4a, 0x03, 0x95, 0x79, 0xea, 0x1e, 0x79, 0x68, 0x51, 0xe7, 0x57, 0x8e, 0xfd, 0x28, 0x08, 0x58, 0xcc, 0x96, }; static const unsigned char ecdh_secp521r1_2426_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2426_sharedsecret[] = { 0x01, 0x61, 0xc8, 0x4c, 0x64, 0xcb, 0xd6, 0x5e, 0x71, 0x8a, 0xbf, 0xab, 0x1f, 0x82, 0x7a, 0xf3, 0x30, 0x64, 0xe7, 0x02, 0x9a, 0xe6, 0xfe, 0xeb, 0x11, 0xe0, 0x57, 0x18, 0x1b, 0x4b, 0x7f, 0xf3, 0xdb, 0xce, 0x4d, 0x85, 0x68, 0x62, 0xb4, 0x9a, 0xbb, 0xc0, 0xb9, 0x23, 0x16, 0x43, 0x61, 0x72, 0x8f, 0x62, 0x74, 0xd8, 0x90, 0x60, 0x3b, 0x7c, 0xe1, 0x87, 0xd7, 0xcc, 0xfc, 0x3f, 0xf1, 0x57, 0xb4, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2426 = { .name = "ecdh_secp521r1_2426", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2426_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2426_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2426_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 177 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2427 for ECDH, tcId is 178 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2427_peerpubkey[] = { 0x01, 0x0b, 0x7b, 0x6f, 0xad, 0xa1, 0xf6, 0x02, 0xc9, 0xe9, 0x7d, 0xa4, 0xac, 0xd7, 0xeb, 0xfd, 0x2f, 0x9f, 0x8e, 0x30, 0xe0, 0xb3, 0x0b, 0x77, 0xfb, 0x39, 0x54, 0xde, 0xaa, 0xfa, 0xa2, 0xae, 0x26, 0x28, 0xba, 0x04, 0x2b, 0x92, 0x57, 0xa0, 0xb6, 0x11, 0xdf, 0x77, 0x0a, 0x7a, 0xd7, 0x0d, 0xa7, 0xb9, 0xa2, 0x0b, 0xf4, 0xd6, 0xf8, 0x05, 0x12, 0xce, 0xe7, 0x4b, 0xa2, 0x14, 0xc6, 0x1c, 0x6d, 0x66, 0x00, 0x20, 0x61, 0xf8, 0x90, 0xcd, 0x81, 0xb9, 0xb4, 0x9c, 0x91, 0x00, 0x7a, 0x32, 0x5d, 0xdb, 0x67, 0xc4, 0x60, 0x62, 0xbb, 0x64, 0x26, 0x6d, 0x3e, 0x72, 0x93, 0x42, 0x49, 0xcb, 0x72, 0x62, 0xb8, 0xb9, 0x2a, 0x73, 0x72, 0x34, 0xf6, 0xe8, 0x5b, 0x74, 0xf8, 0x18, 0xb9, 0x54, 0xab, 0xbc, 0x35, 0x29, 0xda, 0x11, 0x6c, 0x03, 0x21, 0xf8, 0x2e, 0x21, 0xdd, 0x25, 0xe5, 0x3c, 0x07, 0x3a, 0xbb, 0xe1, }; static const unsigned char ecdh_secp521r1_2427_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2427_sharedsecret[] = { 0x01, 0x72, 0xbd, 0xb2, 0x4a, 0xc7, 0xef, 0x74, 0x1a, 0x94, 0xc1, 0x5a, 0xcc, 0x7e, 0x20, 0x8d, 0x8d, 0x01, 0x18, 0x3b, 0xe1, 0xc4, 0x5f, 0x5e, 0x51, 0x0d, 0xa1, 0xc0, 0x80, 0x91, 0x02, 0xa9, 0x60, 0x3f, 0xe3, 0x0d, 0xcb, 0xb0, 0x33, 0x25, 0x08, 0x6a, 0xed, 0x94, 0xba, 0x23, 0x42, 0x2b, 0xe9, 0x40, 0x42, 0x87, 0xcd, 0xea, 0xe4, 0xa2, 0x88, 0xaf, 0xdd, 0xc2, 0xaa, 0xa0, 0xe8, 0xcb, 0xc4, 0x15, }; static const wycheproof_ecdh_test ecdh_secp521r1_2427 = { .name = "ecdh_secp521r1_2427", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2427_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2427_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2427_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 178 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2428 for ECDH, tcId is 179 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2428_peerpubkey[] = { 0x01, 0x1d, 0x28, 0xb1, 0xa9, 0x5f, 0xbf, 0x27, 0xa4, 0xad, 0x21, 0xef, 0x46, 0x13, 0xe1, 0x98, 0x3c, 0xce, 0x35, 0x4c, 0x01, 0x8a, 0xa7, 0x57, 0x33, 0x0f, 0xe1, 0x35, 0x72, 0xf8, 0x48, 0xab, 0xfa, 0x25, 0x58, 0x98, 0xd1, 0x39, 0x8f, 0x13, 0xce, 0xb0, 0x6b, 0x3b, 0x53, 0x29, 0x2d, 0x00, 0x0e, 0x87, 0xdd, 0x20, 0xdd, 0x19, 0x54, 0x76, 0x3a, 0x94, 0xfd, 0xce, 0xb1, 0x28, 0xfe, 0x63, 0xaf, 0x1b, 0x01, 0x11, 0xff, 0xc1, 0xb2, 0x68, 0x66, 0xdc, 0xff, 0x9e, 0x42, 0x10, 0x4a, 0x12, 0x1a, 0x24, 0xef, 0x5a, 0x15, 0xd7, 0x81, 0x41, 0xcc, 0x93, 0xc2, 0x61, 0x67, 0x39, 0x89, 0x75, 0x91, 0x6e, 0xaf, 0xc8, 0xad, 0x8b, 0xaa, 0xe1, 0x3f, 0x59, 0xdf, 0x23, 0xfe, 0x79, 0xaa, 0xfb, 0x6e, 0x20, 0x78, 0xba, 0x46, 0x5c, 0x6b, 0x14, 0xe4, 0x4c, 0x06, 0x0e, 0xea, 0xaa, 0x1a, 0xe6, 0xf4, 0xc7, 0xc9, 0x79, }; static const unsigned char ecdh_secp521r1_2428_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2428_sharedsecret[] = { 0x01, 0x24, 0xea, 0xcf, 0xd5, 0x98, 0xb6, 0xfc, 0x20, 0xb9, 0xf0, 0x18, 0x73, 0xed, 0x3c, 0x55, 0xb0, 0xdb, 0xb3, 0xf9, 0xdb, 0xc1, 0x8a, 0x05, 0x23, 0x3e, 0x59, 0xa4, 0xec, 0x72, 0x70, 0xd0, 0x12, 0xb7, 0x90, 0x84, 0x0d, 0x22, 0x05, 0x1c, 0x4f, 0x1c, 0x55, 0xa2, 0x52, 0xe8, 0xad, 0xb1, 0x0d, 0xae, 0x85, 0x55, 0x99, 0xe2, 0x2a, 0xbc, 0xb3, 0xe2, 0x39, 0x04, 0xaa, 0x07, 0x67, 0xe3, 0xcc, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_2428 = { .name = "ecdh_secp521r1_2428", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2428_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2428_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2428_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 179 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2429 for ECDH, tcId is 180 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2429_peerpubkey[] = { 0x01, 0x87, 0xb3, 0x11, 0x1a, 0x71, 0x8b, 0x18, 0x07, 0x7d, 0x97, 0x89, 0x12, 0x5e, 0xbd, 0xb6, 0xfd, 0xec, 0x77, 0x89, 0x08, 0x75, 0x44, 0x0d, 0x36, 0x69, 0x2e, 0x30, 0x15, 0x9b, 0x4c, 0xfb, 0xde, 0x18, 0x07, 0xb3, 0xeb, 0xb1, 0xb1, 0xa8, 0xc7, 0xdb, 0x00, 0xc1, 0xfa, 0x66, 0xcf, 0x32, 0xc5, 0xf9, 0xae, 0x0f, 0x59, 0x41, 0xe3, 0x2d, 0x7c, 0x7d, 0x2a, 0xf0, 0xfa, 0x98, 0x83, 0x2f, 0x01, 0xba, 0x00, 0x8f, 0x7d, 0xef, 0x20, 0x63, 0xa7, 0x79, 0x76, 0x25, 0x23, 0x67, 0x97, 0xfb, 0xea, 0xf8, 0xd0, 0x7d, 0x74, 0xe0, 0x7d, 0x13, 0x9e, 0x6d, 0x73, 0x58, 0x3d, 0x2d, 0x45, 0x0a, 0x77, 0x94, 0xa8, 0xf7, 0x12, 0xff, 0x78, 0x52, 0xaa, 0xa2, 0x3d, 0xa6, 0xee, 0x81, 0x42, 0xd9, 0xb6, 0x97, 0x56, 0x8f, 0x7f, 0x4a, 0x63, 0xa8, 0x7f, 0x97, 0xd6, 0x35, 0x4f, 0xc4, 0x69, 0x59, 0x64, 0x06, 0x92, 0x6c, }; static const unsigned char ecdh_secp521r1_2429_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2429_sharedsecret[] = { 0x01, 0x2f, 0xdc, 0xff, 0x44, 0xa9, 0xaf, 0x94, 0xf1, 0x8b, 0x50, 0xf4, 0x9c, 0x19, 0xa1, 0xe0, 0xe6, 0xf9, 0x99, 0x96, 0x4d, 0x5c, 0xa4, 0x32, 0x7f, 0x28, 0x0b, 0x2e, 0xdb, 0xab, 0xf8, 0x23, 0x5d, 0x2e, 0x2b, 0xa2, 0xe1, 0x01, 0xb3, 0x91, 0xd0, 0xdc, 0x1a, 0xa0, 0x67, 0xd3, 0x59, 0x3c, 0xaf, 0xb3, 0xc5, 0xa9, 0x9c, 0x05, 0x31, 0x65, 0xfa, 0x28, 0xd6, 0x77, 0x99, 0x0e, 0xa8, 0x86, 0xfc, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2429 = { .name = "ecdh_secp521r1_2429", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2429_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2429_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2429_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 180 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2430 for ECDH, tcId is 181 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2430_peerpubkey[] = { 0x00, 0x9a, 0x64, 0xba, 0x8c, 0x66, 0x62, 0xbb, 0x51, 0x55, 0x3f, 0x85, 0x60, 0x8a, 0xa2, 0xe5, 0x22, 0xbb, 0xff, 0xd1, 0xb4, 0x4e, 0xf6, 0x46, 0xde, 0x09, 0x38, 0xf6, 0x26, 0x79, 0x90, 0xdd, 0x9d, 0x7f, 0x52, 0x50, 0x51, 0x36, 0xb6, 0x76, 0x20, 0xaf, 0xc1, 0xf6, 0xd2, 0x5a, 0xcf, 0x6d, 0x1d, 0xc3, 0x97, 0x2c, 0x3a, 0x88, 0x49, 0x3a, 0xe3, 0x92, 0x72, 0x30, 0x22, 0x5c, 0x03, 0xa8, 0x13, 0x5d, 0x00, 0x89, 0x52, 0xc1, 0x5d, 0xc9, 0x44, 0x61, 0x87, 0x3c, 0x23, 0x2a, 0x2f, 0xbe, 0xb4, 0xa7, 0xa4, 0x68, 0x7e, 0x64, 0x1d, 0x10, 0xb3, 0x34, 0x8d, 0x17, 0xa3, 0x1e, 0xa3, 0xfb, 0xf1, 0x7c, 0xed, 0x90, 0x65, 0xbf, 0xcd, 0xdf, 0xd9, 0x2a, 0xc7, 0x42, 0xce, 0xe6, 0x1d, 0x5b, 0xf5, 0x82, 0xb9, 0x58, 0xd2, 0x53, 0xe9, 0x39, 0xce, 0x5c, 0xf9, 0x2c, 0xe7, 0x96, 0x15, 0x43, 0x3d, 0x06, 0x9d, 0x8d, }; static const unsigned char ecdh_secp521r1_2430_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2430_sharedsecret[] = { 0x01, 0xcd, 0xf3, 0xf0, 0xc8, 0x13, 0xba, 0xdf, 0x74, 0x54, 0xde, 0x52, 0x0d, 0x12, 0x48, 0xb2, 0x98, 0x50, 0x21, 0x94, 0x50, 0x4a, 0xfd, 0x59, 0x04, 0x08, 0x09, 0x41, 0xcb, 0x85, 0xa3, 0x71, 0x56, 0x28, 0x48, 0xe4, 0x75, 0x60, 0x11, 0x71, 0x35, 0x93, 0xaf, 0x46, 0x14, 0x5d, 0x06, 0x52, 0xb2, 0xed, 0xce, 0x18, 0xd5, 0xc9, 0xe4, 0xa4, 0xcd, 0x55, 0x37, 0x0b, 0xcd, 0x60, 0x83, 0x99, 0x06, 0x28, }; static const wycheproof_ecdh_test ecdh_secp521r1_2430 = { .name = "ecdh_secp521r1_2430", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2430_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2430_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2430_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 181 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2431 for ECDH, tcId is 182 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2431_peerpubkey[] = { 0x00, 0x39, 0x3b, 0xd8, 0xfe, 0x3c, 0x49, 0xf7, 0x88, 0x5e, 0xfb, 0xca, 0xb8, 0x79, 0x62, 0xef, 0x12, 0x45, 0x8c, 0x18, 0xf2, 0x55, 0xf0, 0x1a, 0x24, 0xa1, 0xab, 0x79, 0x5c, 0xbf, 0xe2, 0xb4, 0xdd, 0xf6, 0xe8, 0xac, 0x25, 0x3e, 0x4f, 0xd9, 0x48, 0x43, 0x77, 0xf5, 0x9d, 0xdc, 0x7c, 0x08, 0x79, 0x96, 0x38, 0x6e, 0xd9, 0xa1, 0x65, 0xcc, 0xa8, 0x1f, 0x85, 0x3c, 0x91, 0x8b, 0xe1, 0xc9, 0xd3, 0x99, 0x00, 0x7c, 0x47, 0xac, 0xa4, 0xae, 0xe1, 0x79, 0x5d, 0x41, 0x4c, 0x43, 0x34, 0xce, 0x4b, 0xfe, 0xca, 0xfa, 0xbf, 0x3c, 0x33, 0x91, 0xa0, 0x2e, 0x93, 0x32, 0xd7, 0xf1, 0x7e, 0xc1, 0xb5, 0xc5, 0x42, 0x00, 0x9f, 0x98, 0x0f, 0xba, 0xf3, 0xea, 0xdc, 0xc1, 0x92, 0xf4, 0x00, 0xb9, 0xad, 0x24, 0x00, 0x22, 0x0c, 0x09, 0x0a, 0x75, 0x87, 0x84, 0xdb, 0xa6, 0x6d, 0xe4, 0x06, 0x00, 0xc6, 0x26, 0xe4, 0xa1, }; static const unsigned char ecdh_secp521r1_2431_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2431_sharedsecret[] = { 0x01, 0xd1, 0x08, 0x25, 0xbb, 0x71, 0xd0, 0x94, 0xea, 0x2b, 0x01, 0x85, 0x55, 0x83, 0xa8, 0x22, 0x68, 0x71, 0xeb, 0xe7, 0xd6, 0xbc, 0xae, 0x06, 0x42, 0x27, 0xbd, 0xd8, 0x41, 0x78, 0x8d, 0x1c, 0x48, 0x9b, 0x94, 0xdb, 0x20, 0xc3, 0x95, 0x62, 0x45, 0x0d, 0xb8, 0x47, 0x35, 0xf9, 0x28, 0x52, 0x59, 0xb3, 0x4c, 0x5d, 0x3b, 0x43, 0xa4, 0x87, 0xf0, 0x70, 0x86, 0x32, 0xb7, 0x5d, 0xe2, 0xeb, 0xe1, 0x04, }; static const wycheproof_ecdh_test ecdh_secp521r1_2431 = { .name = "ecdh_secp521r1_2431", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2431_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2431_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2431_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 182 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2432 for ECDH, tcId is 183 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2432_peerpubkey[] = { 0x01, 0xb4, 0xb1, 0x9a, 0x12, 0x5b, 0xc0, 0xcb, 0xd0, 0x60, 0x60, 0x64, 0xa0, 0x51, 0xaf, 0x4a, 0xb1, 0x7f, 0x79, 0x18, 0x80, 0x47, 0x5f, 0x00, 0xa1, 0xfb, 0xcd, 0x4a, 0x79, 0x7b, 0x40, 0x1b, 0xda, 0x39, 0x0e, 0xf7, 0x82, 0x6f, 0xa0, 0x16, 0x82, 0x65, 0x1d, 0x72, 0xcb, 0x13, 0x53, 0x70, 0x4d, 0x7a, 0x18, 0x02, 0x7c, 0x4d, 0x60, 0x93, 0x34, 0xb2, 0xe8, 0xc5, 0xd4, 0xde, 0xf8, 0x6e, 0xa0, 0xe4, 0x01, 0x90, 0xe4, 0xcd, 0x6a, 0x4e, 0x0b, 0xa9, 0xea, 0x45, 0xd3, 0xb7, 0x14, 0x4f, 0x74, 0xaa, 0xf1, 0x98, 0x64, 0x62, 0x55, 0x8c, 0x8b, 0x3a, 0x10, 0x50, 0x18, 0x82, 0xc2, 0x66, 0x9e, 0xc2, 0x65, 0xef, 0xc1, 0x52, 0xf5, 0x51, 0x0f, 0x3e, 0x99, 0x0d, 0x67, 0x21, 0x84, 0x71, 0xca, 0xfc, 0x66, 0xc8, 0x45, 0xcf, 0x69, 0xe5, 0xef, 0xf6, 0xe0, 0x30, 0x8c, 0xc5, 0x9a, 0xc5, 0x9a, 0x40, 0x76, 0x67, }; static const unsigned char ecdh_secp521r1_2432_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2432_sharedsecret[] = { 0x00, 0x31, 0xeb, 0x14, 0x66, 0x16, 0xd7, 0xbc, 0x61, 0xff, 0xb5, 0x53, 0xb7, 0xca, 0x85, 0x22, 0xa5, 0xb6, 0x08, 0x8d, 0x23, 0xd5, 0xca, 0x6e, 0x30, 0xb2, 0x01, 0xb8, 0x6d, 0xa2, 0x37, 0x5d, 0x1f, 0x6c, 0xc4, 0x8e, 0x88, 0xa2, 0x4b, 0x52, 0xb0, 0xe2, 0x20, 0x45, 0xca, 0x7c, 0x50, 0x6c, 0x20, 0x69, 0x30, 0x61, 0x9c, 0x28, 0x9f, 0xc4, 0xa6, 0x88, 0x43, 0x2a, 0xde, 0xe4, 0x70, 0x28, 0x80, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2432 = { .name = "ecdh_secp521r1_2432", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2432_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2432_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2432_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 183 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2433 for ECDH, tcId is 184 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2433_peerpubkey[] = { 0x00, 0xe7, 0xfa, 0x4a, 0xc2, 0x36, 0x5a, 0xf9, 0x37, 0x8d, 0xd2, 0xc8, 0x1f, 0x32, 0xf9, 0xef, 0x55, 0xd4, 0xd3, 0x41, 0xac, 0x32, 0x4e, 0xb4, 0x69, 0x23, 0xec, 0x7f, 0x15, 0x44, 0x8c, 0x37, 0xef, 0x60, 0x7c, 0x97, 0x5c, 0x35, 0x27, 0x54, 0xf4, 0x72, 0x87, 0x3e, 0x46, 0x9f, 0x8d, 0x37, 0xd3, 0x8d, 0x97, 0xd1, 0x61, 0xa7, 0xb9, 0xb1, 0xda, 0xe2, 0xe9, 0x65, 0xfd, 0xcc, 0x95, 0x97, 0x47, 0xba, 0x01, 0xe6, 0xc0, 0x96, 0x39, 0x72, 0x94, 0x99, 0xb6, 0x07, 0x33, 0x0d, 0x7d, 0xab, 0xa2, 0xb5, 0xc1, 0xef, 0xae, 0x4f, 0x12, 0x1e, 0x54, 0x0b, 0xf7, 0xe6, 0x91, 0x80, 0x9a, 0x05, 0x55, 0x42, 0x28, 0x4c, 0xb5, 0xee, 0x87, 0x47, 0x55, 0x89, 0xce, 0xc6, 0x63, 0xb5, 0x3f, 0x21, 0xb9, 0x12, 0x31, 0xa6, 0x38, 0xd8, 0x40, 0x2e, 0x35, 0x8f, 0xd1, 0x69, 0x95, 0x34, 0x91, 0xab, 0x39, 0x53, 0x12, 0x2a, }; static const unsigned char ecdh_secp521r1_2433_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2433_sharedsecret[] = { 0x00, 0xa8, 0xf2, 0xda, 0xd7, 0x49, 0xea, 0x1e, 0x15, 0x67, 0x35, 0x86, 0xbb, 0x67, 0xb5, 0xc8, 0x5f, 0xf8, 0xf4, 0x5c, 0x72, 0xef, 0x84, 0x47, 0xef, 0xef, 0x3e, 0xfc, 0x62, 0x6a, 0x6a, 0x10, 0xca, 0x88, 0x45, 0x16, 0x43, 0xb4, 0x34, 0xa2, 0x51, 0x76, 0xcb, 0xae, 0x77, 0x89, 0x9a, 0x3e, 0x32, 0xa4, 0x48, 0x47, 0x81, 0xb7, 0x00, 0xe0, 0x38, 0x57, 0xbd, 0xd1, 0x58, 0xad, 0x3c, 0xfb, 0xf2, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_2433 = { .name = "ecdh_secp521r1_2433", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2433_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2433_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2433_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 184 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2434 for ECDH, tcId is 185 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2434_peerpubkey[] = { 0x01, 0x04, 0xf4, 0x3f, 0xfb, 0xb3, 0x7c, 0xe5, 0xd0, 0xea, 0x95, 0x61, 0x71, 0xc0, 0x70, 0xd6, 0x14, 0x7a, 0xcf, 0xa9, 0x51, 0x9b, 0x88, 0x79, 0x95, 0x83, 0x2a, 0x0e, 0xb8, 0x01, 0xe0, 0xdb, 0xc6, 0x68, 0x96, 0xdf, 0xaf, 0xf9, 0x44, 0x09, 0xb4, 0x97, 0xf4, 0xa4, 0x16, 0xcc, 0xd8, 0x27, 0x50, 0xda, 0x47, 0xa5, 0x20, 0xb8, 0x70, 0xdf, 0xe6, 0xcd, 0x37, 0x64, 0xf0, 0xe3, 0xc0, 0xf1, 0xbc, 0x3b, 0x00, 0xa5, 0xf3, 0xdb, 0x99, 0x39, 0xc2, 0x11, 0x47, 0xab, 0x44, 0x88, 0xc8, 0x12, 0x8b, 0xa0, 0x56, 0x4f, 0x19, 0x2f, 0x27, 0x88, 0x56, 0x01, 0x45, 0xd2, 0xb1, 0x4a, 0x85, 0x28, 0x16, 0xb4, 0x85, 0x1e, 0xf6, 0x9a, 0x46, 0x2c, 0x98, 0x54, 0xba, 0xce, 0x72, 0x0e, 0x46, 0x29, 0xed, 0x55, 0xaf, 0x9d, 0x2c, 0x7d, 0xa7, 0x4c, 0xd3, 0x09, 0xfc, 0x55, 0x66, 0xe1, 0x16, 0x30, 0x74, 0x6a, 0x35, 0x22, }; static const unsigned char ecdh_secp521r1_2434_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2434_sharedsecret[] = { 0x01, 0xee, 0x85, 0xa3, 0xb6, 0xd3, 0x5d, 0x0d, 0xf6, 0xa4, 0x45, 0x59, 0x3c, 0x94, 0x60, 0x99, 0x32, 0x53, 0x0e, 0x25, 0xee, 0x71, 0x90, 0x9c, 0x56, 0x81, 0xae, 0x39, 0x8a, 0x38, 0x30, 0x9e, 0x86, 0x99, 0xe9, 0x4e, 0x0f, 0x23, 0xf5, 0x6c, 0x64, 0xa0, 0xd0, 0x4f, 0xc1, 0x0e, 0x28, 0x96, 0xc5, 0x0f, 0x21, 0x3f, 0x12, 0xc6, 0x85, 0x15, 0x1f, 0xa4, 0x0f, 0x18, 0xac, 0x6d, 0x8e, 0xd8, 0x59, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_2434 = { .name = "ecdh_secp521r1_2434", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2434_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2434_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2434_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 185 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2435 for ECDH, tcId is 186 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2435_peerpubkey[] = { 0x01, 0x25, 0x0e, 0xca, 0xd8, 0x94, 0xd3, 0xfd, 0xff, 0xb5, 0x80, 0x09, 0x9c, 0x2c, 0x30, 0x5b, 0xd5, 0xd9, 0x03, 0xfe, 0xdd, 0x2e, 0x53, 0x2e, 0xa5, 0x8d, 0x29, 0xd6, 0x3c, 0x32, 0x81, 0xb3, 0x9e, 0x6f, 0x47, 0xa1, 0x1b, 0x3b, 0xe9, 0x7c, 0x1c, 0x04, 0xe0, 0x42, 0xd3, 0xf1, 0x9b, 0xd0, 0xcb, 0xe0, 0xef, 0x41, 0x21, 0xa2, 0x57, 0x27, 0x9b, 0xbd, 0x76, 0xc6, 0x6a, 0x05, 0xe8, 0xd2, 0x22, 0xd0, 0x01, 0xa2, 0xb3, 0xce, 0x41, 0xca, 0x09, 0xb5, 0xb6, 0x28, 0x7b, 0x4c, 0x32, 0x8a, 0x31, 0x5d, 0xca, 0x24, 0x3c, 0x72, 0x6e, 0x86, 0x16, 0x62, 0x9d, 0x2b, 0x37, 0x50, 0x6b, 0x7e, 0xb3, 0x1e, 0xb7, 0x6f, 0x51, 0x3d, 0xec, 0xb0, 0xab, 0x20, 0xa5, 0x2c, 0x0c, 0x26, 0x0a, 0x92, 0x0e, 0x92, 0xae, 0x1a, 0x62, 0x9f, 0xb8, 0x17, 0xdf, 0x5a, 0xd6, 0xd7, 0xe6, 0x23, 0x67, 0xac, 0x5e, 0x8e, 0xe5, 0xf0, }; static const unsigned char ecdh_secp521r1_2435_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2435_sharedsecret[] = { 0x01, 0x1e, 0x7d, 0x52, 0x9d, 0xc9, 0x61, 0x52, 0x09, 0x16, 0x24, 0x01, 0xab, 0x2b, 0xb7, 0x17, 0x37, 0x81, 0x09, 0xd8, 0x7a, 0x1a, 0xc8, 0x6b, 0x98, 0xb7, 0x95, 0x4e, 0xa9, 0x1b, 0x96, 0x0b, 0x08, 0xfa, 0x93, 0x74, 0xea, 0x72, 0x70, 0x35, 0x19, 0xc3, 0x9c, 0x69, 0x79, 0x72, 0x40, 0xc9, 0x77, 0x81, 0x7e, 0x2b, 0x34, 0xb5, 0x32, 0x26, 0x65, 0xdd, 0x51, 0x82, 0x51, 0xbc, 0xc1, 0xfa, 0x97, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp521r1_2435 = { .name = "ecdh_secp521r1_2435", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2435_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2435_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2435_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 186 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2436 for ECDH, tcId is 187 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2436_peerpubkey[] = { 0x00, 0x19, 0xf6, 0xff, 0xd8, 0x1d, 0x01, 0x2b, 0x70, 0x80, 0x4c, 0x30, 0x85, 0x94, 0xb4, 0x70, 0x66, 0x51, 0x6b, 0xbb, 0x33, 0x9b, 0x44, 0xab, 0xad, 0xb4, 0xda, 0x19, 0x43, 0x99, 0xd1, 0xb4, 0xd5, 0xfc, 0x98, 0xdd, 0x9d, 0x0d, 0xc3, 0x63, 0xa9, 0xbc, 0xb1, 0x43, 0x96, 0x32, 0x7f, 0xfa, 0xdb, 0x39, 0xf9, 0xb3, 0x57, 0xb7, 0xe6, 0x31, 0xa8, 0x4b, 0x23, 0x03, 0x93, 0x96, 0xf1, 0xcc, 0x96, 0xf1, 0x01, 0xa6, 0xa8, 0xc0, 0xaf, 0x8e, 0x08, 0x3a, 0x9f, 0x8c, 0x19, 0xcb, 0x0f, 0xba, 0xe7, 0xb4, 0x52, 0x3c, 0x4c, 0x54, 0xfc, 0x9f, 0xfe, 0xfb, 0x73, 0x51, 0x13, 0xf5, 0x28, 0xf7, 0xa3, 0xe9, 0x66, 0x25, 0x71, 0x06, 0x08, 0x61, 0xdd, 0x6c, 0x9c, 0x71, 0xb3, 0x3d, 0x99, 0xb5, 0x3d, 0x71, 0x6c, 0x36, 0xa8, 0xa9, 0x02, 0xbc, 0xa6, 0x4c, 0x46, 0xc7, 0xe3, 0x4a, 0x2e, 0x88, 0xdb, 0xc9, 0x6b, 0x6d, }; static const unsigned char ecdh_secp521r1_2436_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2436_sharedsecret[] = { 0x00, 0x6b, 0x46, 0xbb, 0xda, 0x9f, 0x37, 0x96, 0x1a, 0xec, 0x9e, 0xfc, 0xd6, 0xfc, 0xba, 0xf4, 0xe2, 0x5b, 0x66, 0x74, 0xea, 0x37, 0xf8, 0xd8, 0x2c, 0xa2, 0xed, 0xcc, 0x06, 0x35, 0x3e, 0x24, 0xd0, 0x9e, 0xa5, 0xd8, 0x61, 0x36, 0xfe, 0xde, 0xe3, 0x4e, 0x0c, 0x39, 0x1b, 0x85, 0x90, 0x72, 0xab, 0x91, 0x91, 0x8b, 0x51, 0xd0, 0x80, 0x0a, 0xb2, 0x02, 0x55, 0xf4, 0x38, 0xc6, 0x60, 0x88, 0x2e, 0x91, }; static const wycheproof_ecdh_test ecdh_secp521r1_2436 = { .name = "ecdh_secp521r1_2436", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2436_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2436_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2436_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 187 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2437 for ECDH, tcId is 188 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2437_peerpubkey[] = { 0x00, 0x77, 0xd8, 0x97, 0xcf, 0xf6, 0xa2, 0xa3, 0x44, 0x6f, 0xb3, 0x85, 0x28, 0xad, 0x80, 0xcf, 0x3c, 0xc5, 0x03, 0xad, 0x93, 0xda, 0x06, 0xc7, 0xc5, 0xa5, 0x25, 0xcf, 0x9a, 0x7b, 0xba, 0x33, 0xd7, 0x9d, 0x68, 0x6a, 0x0c, 0x53, 0x29, 0x0a, 0x45, 0x94, 0x24, 0x05, 0x40, 0xa0, 0x2a, 0x85, 0xcf, 0x14, 0x33, 0x6a, 0x23, 0xda, 0x56, 0xef, 0xdb, 0x56, 0x2b, 0x06, 0x56, 0x80, 0x0f, 0xf3, 0x96, 0xa4, 0x01, 0x20, 0x77, 0x9a, 0xe0, 0xdf, 0x7c, 0x1d, 0x92, 0x8c, 0xa1, 0x8d, 0x63, 0xfc, 0xab, 0xf0, 0xd2, 0x1b, 0xd4, 0x37, 0xc8, 0x6e, 0x40, 0x96, 0x6b, 0xae, 0x8c, 0x9f, 0xef, 0x2a, 0xc7, 0x27, 0x38, 0xa7, 0x5b, 0xe4, 0x99, 0x38, 0xab, 0x99, 0x17, 0x03, 0x4a, 0x25, 0x36, 0xc0, 0x23, 0x69, 0x5e, 0x82, 0x1f, 0x70, 0xb4, 0x58, 0x33, 0x9b, 0xd8, 0xde, 0x21, 0x8a, 0x5c, 0xf7, 0x41, 0xe5, 0x5a, 0x7d, }; static const unsigned char ecdh_secp521r1_2437_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2437_sharedsecret[] = { 0x01, 0x10, 0x99, 0x89, 0xb6, 0x2a, 0x37, 0x93, 0x97, 0x23, 0x2c, 0x23, 0x8c, 0xf5, 0x7d, 0x81, 0x88, 0x4b, 0xab, 0xb3, 0x9b, 0x04, 0x1f, 0xbf, 0x0f, 0x0b, 0x48, 0xbb, 0x7d, 0x79, 0x49, 0x44, 0xf9, 0xa3, 0x02, 0xde, 0x0e, 0xcc, 0xaa, 0x9a, 0x56, 0x25, 0xb2, 0x22, 0xc6, 0x69, 0x2d, 0x24, 0x07, 0x76, 0x54, 0xf1, 0x98, 0x36, 0xb8, 0xf1, 0x4d, 0x86, 0x22, 0xba, 0x14, 0xee, 0xac, 0xe2, 0x74, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_2437 = { .name = "ecdh_secp521r1_2437", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2437_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2437_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2437_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 188 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2438 for ECDH, tcId is 189 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2438_peerpubkey[] = { 0x01, 0xa0, 0x27, 0x19, 0x24, 0x4d, 0xf8, 0x07, 0x86, 0x47, 0x07, 0xfb, 0xc6, 0xc5, 0x28, 0x5d, 0xa7, 0x84, 0x30, 0x1d, 0xab, 0xff, 0xb8, 0x58, 0x53, 0xda, 0xf9, 0x46, 0xf8, 0xd7, 0x15, 0x98, 0xfa, 0x95, 0xf7, 0xc9, 0x0a, 0x3d, 0x5f, 0x06, 0xe4, 0x50, 0x51, 0x79, 0x9c, 0x16, 0xf9, 0xaf, 0x0a, 0xfe, 0x27, 0x5f, 0xf4, 0xf5, 0x1e, 0x83, 0xe1, 0xbf, 0xab, 0xc1, 0x81, 0x76, 0xf2, 0xbc, 0x4a, 0x74, 0x01, 0x54, 0xde, 0x99, 0xc7, 0x4d, 0xd2, 0x63, 0x45, 0x60, 0x34, 0xab, 0xdf, 0x5b, 0x2a, 0x17, 0x3e, 0x31, 0x84, 0x42, 0xd1, 0x32, 0x00, 0xf4, 0x09, 0x0a, 0xaa, 0x27, 0x14, 0x52, 0x4c, 0x43, 0xa8, 0x5e, 0xc5, 0xf6, 0x07, 0xd5, 0xf3, 0x55, 0x20, 0x5f, 0xef, 0x0f, 0x4a, 0xa3, 0xb4, 0x1b, 0x2f, 0xf7, 0x9e, 0xca, 0x36, 0x1f, 0xc2, 0x88, 0x78, 0xfd, 0x4e, 0x26, 0xbc, 0xc5, 0x7a, 0xc0, 0x14, 0xd8, }; static const unsigned char ecdh_secp521r1_2438_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2438_sharedsecret[] = { 0x01, 0x05, 0x4b, 0x61, 0x91, 0xcb, 0x25, 0x7e, 0x0f, 0x18, 0xd0, 0x9c, 0xf4, 0x54, 0xfc, 0xa4, 0xc4, 0x57, 0x16, 0xea, 0x00, 0xf1, 0x67, 0xb2, 0xfb, 0xd2, 0xd0, 0x28, 0xb6, 0x6c, 0x90, 0x3b, 0x5e, 0x75, 0x1a, 0x6c, 0xaa, 0xcc, 0xf4, 0xed, 0x18, 0xe2, 0x86, 0x35, 0xd8, 0x45, 0x4e, 0xd3, 0x81, 0x1e, 0x1c, 0x4b, 0x36, 0x38, 0xeb, 0x42, 0x0a, 0xd2, 0x1e, 0xa4, 0xfd, 0xbd, 0xba, 0xda, 0xe8, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_2438 = { .name = "ecdh_secp521r1_2438", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2438_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2438_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2438_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 189 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2439 for ECDH, tcId is 190 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2439_peerpubkey[] = { 0x01, 0x8a, 0x82, 0xcb, 0x60, 0x81, 0x2f, 0xd3, 0x6c, 0xcc, 0xb2, 0x9e, 0x47, 0x47, 0xd2, 0x05, 0x79, 0xac, 0x9a, 0xc6, 0xb5, 0xef, 0x64, 0x90, 0x32, 0x6b, 0x30, 0xc5, 0xf0, 0x77, 0xe9, 0xd7, 0x84, 0x1e, 0xd1, 0x89, 0xad, 0x17, 0x21, 0x40, 0x05, 0x5d, 0x7e, 0xe6, 0xb0, 0x15, 0xe0, 0x2b, 0x1e, 0xbb, 0x9f, 0xc1, 0x7d, 0x6a, 0xcd, 0x8b, 0xb4, 0xc0, 0x8d, 0x2d, 0xdb, 0x45, 0x41, 0xbb, 0x88, 0xf4, 0x00, 0x77, 0x50, 0xfe, 0x26, 0x40, 0xe5, 0x90, 0xf1, 0x54, 0x26, 0xd6, 0x4e, 0x23, 0x34, 0xcb, 0x2a, 0xd5, 0x97, 0x34, 0x0c, 0x44, 0x5a, 0x42, 0x37, 0x9f, 0xc1, 0x94, 0xef, 0x74, 0xd7, 0xe0, 0x6a, 0x22, 0x0a, 0xad, 0xb8, 0xe6, 0x9e, 0x36, 0x1b, 0x49, 0x60, 0xdd, 0xe7, 0x0f, 0x08, 0x5e, 0x92, 0x43, 0x19, 0xde, 0xa0, 0xdf, 0x1d, 0x4c, 0x12, 0xc4, 0x15, 0x19, 0x53, 0x57, 0x02, 0x67, 0x0e, 0xa8, }; static const unsigned char ecdh_secp521r1_2439_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2439_sharedsecret[] = { 0x00, 0x71, 0x13, 0xf5, 0xf3, 0xc5, 0x47, 0xa2, 0xbd, 0xee, 0x4a, 0xf7, 0x62, 0x5b, 0xf1, 0x61, 0xad, 0x98, 0x40, 0xe8, 0x3f, 0x2c, 0x3b, 0x87, 0x1b, 0x18, 0xbe, 0x0c, 0x9d, 0xb5, 0x68, 0x6c, 0xaf, 0xd3, 0x94, 0x8c, 0x83, 0x1a, 0x25, 0x1a, 0x46, 0x49, 0x99, 0x91, 0x93, 0x85, 0x26, 0x50, 0xe6, 0xdc, 0x8a, 0x9f, 0x82, 0xcc, 0x69, 0x6a, 0xd5, 0x7c, 0x71, 0x81, 0xac, 0x9a, 0x9e, 0xc2, 0x20, 0xec, }; static const wycheproof_ecdh_test ecdh_secp521r1_2439 = { .name = "ecdh_secp521r1_2439", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2439_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2439_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2439_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 190 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2440 for ECDH, tcId is 191 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2440_peerpubkey[] = { 0x00, 0x27, 0x3b, 0x9b, 0xf3, 0x81, 0x8c, 0x12, 0x9c, 0xc2, 0x72, 0x27, 0x0b, 0x5b, 0xb0, 0xb8, 0xb7, 0xe5, 0x57, 0xca, 0x8c, 0x54, 0x8a, 0x6f, 0x32, 0x05, 0xe3, 0x7b, 0x61, 0x19, 0x62, 0xb1, 0x4d, 0x9b, 0xe3, 0x17, 0xdc, 0x44, 0xfe, 0x82, 0xb2, 0xd2, 0x50, 0x49, 0x84, 0xdb, 0x98, 0xa9, 0x02, 0xe7, 0xea, 0x2a, 0x5a, 0xfe, 0x58, 0x4d, 0xc2, 0xb2, 0x99, 0x0e, 0x5a, 0x79, 0x0f, 0xd5, 0x5b, 0x19, 0x00, 0xb9, 0x21, 0x1f, 0xbf, 0xa2, 0x21, 0xe3, 0xc2, 0x4b, 0xc3, 0xde, 0x2f, 0x70, 0xe8, 0xf0, 0xe8, 0x4f, 0x4b, 0x05, 0xc2, 0xd2, 0xbc, 0x5e, 0x98, 0xda, 0x3e, 0x37, 0x9e, 0x80, 0xbe, 0xcd, 0x53, 0xd2, 0x21, 0x13, 0x6a, 0xd7, 0x40, 0xb2, 0x73, 0x2e, 0xcb, 0xc3, 0xc7, 0xe0, 0x6c, 0x07, 0xe0, 0x64, 0xd5, 0xde, 0x69, 0xe6, 0xa6, 0xd5, 0x67, 0x71, 0x3f, 0x64, 0x4e, 0x8a, 0xc2, 0x5a, 0x1d, 0x93, }; static const unsigned char ecdh_secp521r1_2440_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2440_sharedsecret[] = { 0x01, 0x91, 0x88, 0x47, 0x8c, 0x62, 0x34, 0x92, 0x99, 0xba, 0x2f, 0x12, 0xae, 0xc3, 0xc7, 0xef, 0x65, 0x85, 0x8f, 0x50, 0x39, 0x53, 0x80, 0xed, 0x0e, 0x7e, 0x70, 0xe7, 0x31, 0xd7, 0xc4, 0x78, 0x85, 0xcf, 0xb1, 0x83, 0xec, 0xca, 0x22, 0xfc, 0x71, 0xf0, 0xaf, 0xd0, 0x62, 0x12, 0x43, 0x75, 0x07, 0x86, 0x96, 0x9a, 0x00, 0x97, 0xb3, 0x6a, 0x52, 0x1e, 0xf4, 0x1d, 0xf9, 0xf0, 0x8f, 0x9a, 0x45, 0x58, }; static const wycheproof_ecdh_test ecdh_secp521r1_2440 = { .name = "ecdh_secp521r1_2440", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2440_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2440_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2440_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 191 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2441 for ECDH, tcId is 192 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2441_peerpubkey[] = { 0x00, 0xb9, 0xd4, 0x03, 0xdf, 0x5b, 0x1d, 0xac, 0xbe, 0xf2, 0xba, 0xec, 0xe8, 0x8a, 0x0b, 0x10, 0xfa, 0xbc, 0x5d, 0x72, 0x97, 0x53, 0xf4, 0xe9, 0x36, 0x01, 0x5a, 0xfb, 0x96, 0xb9, 0x29, 0x39, 0x2a, 0x9e, 0xeb, 0x03, 0x46, 0x09, 0x68, 0xed, 0x18, 0x86, 0x87, 0x14, 0xca, 0xac, 0x2d, 0xc1, 0x6c, 0x07, 0x24, 0x5a, 0x9e, 0xf4, 0x83, 0x2a, 0xc4, 0x18, 0xe3, 0x29, 0x0d, 0x1f, 0x8d, 0x0d, 0x10, 0x2e, 0x00, 0x84, 0x94, 0xf4, 0x44, 0x2d, 0x00, 0xfd, 0xca, 0x67, 0xd3, 0x1b, 0x3e, 0xb6, 0x56, 0xc8, 0xa0, 0x6b, 0xd5, 0x21, 0x04, 0x6c, 0x1a, 0xf0, 0x75, 0xb0, 0xed, 0x26, 0xc2, 0x6d, 0x5b, 0xdd, 0x8b, 0x80, 0x04, 0x93, 0xc6, 0x8c, 0xf4, 0x93, 0x51, 0x60, 0x27, 0xed, 0xe7, 0x71, 0xae, 0xe3, 0xed, 0x8b, 0x5f, 0xb9, 0x47, 0xe9, 0xd6, 0x00, 0xcc, 0x0a, 0x82, 0xc3, 0xf2, 0x07, 0x6d, 0x96, 0xaa, 0xc0, }; static const unsigned char ecdh_secp521r1_2441_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_2441_sharedsecret[] = { 0x01, 0xad, 0xf7, 0x24, 0xcf, 0x47, 0xae, 0x31, 0x97, 0x91, 0xa3, 0xdb, 0xe3, 0x36, 0xb2, 0xf5, 0x4a, 0x4d, 0x74, 0xbc, 0x28, 0xff, 0x8a, 0x23, 0xc2, 0xf3, 0x33, 0xe2, 0xa5, 0xa3, 0x6b, 0xbe, 0x73, 0xdd, 0x6c, 0x9d, 0xe7, 0x26, 0x16, 0xad, 0x5b, 0x77, 0x9e, 0x51, 0x63, 0x6d, 0x08, 0xf7, 0xce, 0xc5, 0x8f, 0xf1, 0x8b, 0x71, 0x27, 0xe3, 0x96, 0x85, 0x6b, 0xc1, 0x3d, 0x39, 0x09, 0x44, 0x10, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2441 = { .name = "ecdh_secp521r1_2441", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2441_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2441_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2441_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 192 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2442 for ECDH, tcId is 193 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2442_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2442_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp521r1_2442_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2442 = { .name = "ecdh_secp521r1_2442", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2442_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2442_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2442_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 193 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2443 for ECDH, tcId is 194 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2443_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2443_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2443_sharedsecret[] = { 0x00, 0x34, 0x7c, 0x51, 0xf5, 0x87, 0xc7, 0x26, 0x07, 0x0b, 0xde, 0xb9, 0x17, 0x3d, 0x0a, 0x54, 0x74, 0x27, 0xea, 0xd3, 0xf2, 0xc8, 0xde, 0x62, 0xd9, 0xec, 0xc3, 0x01, 0x32, 0x85, 0xf6, 0x45, 0xd2, 0x20, 0x93, 0x15, 0x20, 0xbc, 0xef, 0x85, 0xd0, 0x8c, 0xfb, 0x67, 0x86, 0x04, 0x57, 0x45, 0xfb, 0xfb, 0xfb, 0x19, 0x24, 0xc4, 0x4a, 0x89, 0xd0, 0x66, 0x76, 0x13, 0x1a, 0x96, 0x56, 0x77, 0x27, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_2443 = { .name = "ecdh_secp521r1_2443", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2443_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2443_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2443_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 194 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2444 for ECDH, tcId is 195 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2444_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2444_privkey[] = { 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2444_sharedsecret[] = { 0x01, 0xc4, 0x1d, 0xc4, 0x43, 0x7c, 0x2f, 0x2b, 0x94, 0xa9, 0x40, 0x71, 0x1b, 0x3a, 0x69, 0x17, 0x23, 0x39, 0x7a, 0x1f, 0x83, 0xd6, 0xbc, 0x0c, 0x67, 0xdd, 0xc7, 0xa6, 0x57, 0x16, 0x09, 0x25, 0xc7, 0xf8, 0x5b, 0xb4, 0xeb, 0x38, 0x42, 0xb6, 0x0b, 0x26, 0x10, 0xdd, 0xb7, 0xc0, 0xb8, 0x67, 0x62, 0x67, 0x71, 0x0e, 0x58, 0x35, 0x9a, 0x87, 0x50, 0x84, 0x3c, 0x6d, 0x8e, 0x25, 0xd4, 0x8d, 0x1c, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp521r1_2444 = { .name = "ecdh_secp521r1_2444", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2444_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2444_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2444_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 195 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2445 for ECDH, tcId is 196 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2445_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2445_privkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2445_sharedsecret[] = { 0x00, 0x6a, 0x23, 0x9c, 0xdb, 0x7a, 0x78, 0x38, 0x40, 0x65, 0x8d, 0x5f, 0x31, 0x4b, 0xfe, 0x5c, 0x51, 0xe8, 0x06, 0xa4, 0xbf, 0x12, 0x36, 0xf8, 0x42, 0x12, 0x65, 0xbc, 0xc5, 0x03, 0xc6, 0x73, 0xeb, 0x16, 0xc5, 0xc2, 0xb3, 0x8b, 0x57, 0x17, 0xfa, 0x04, 0xee, 0x7d, 0xbc, 0xde, 0xb1, 0x5c, 0x87, 0x17, 0x11, 0x50, 0x7a, 0xbb, 0x75, 0x57, 0xa8, 0xa8, 0xc7, 0xb3, 0x25, 0x01, 0x41, 0xe8, 0x54, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2445 = { .name = "ecdh_secp521r1_2445", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2445_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2445_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2445_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 196 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2446 for ECDH, tcId is 197 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2446_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2446_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2446_sharedsecret[] = { 0x01, 0x12, 0xdb, 0xf9, 0x71, 0x3a, 0xad, 0xd4, 0x78, 0xe4, 0xf2, 0xeb, 0xcb, 0x05, 0x8f, 0x05, 0xb5, 0x12, 0xb1, 0x95, 0x9c, 0x7d, 0xa1, 0x99, 0x4f, 0x85, 0x1f, 0x37, 0x3c, 0xe8, 0xc3, 0x41, 0xd3, 0x9c, 0x68, 0x43, 0x37, 0x3f, 0x6f, 0xe5, 0x59, 0x90, 0x59, 0x53, 0xe1, 0x14, 0x76, 0x40, 0x15, 0x94, 0x37, 0x95, 0x3c, 0x57, 0x19, 0x61, 0xc0, 0x9b, 0xad, 0x15, 0x7a, 0x8e, 0x1a, 0x5b, 0xf4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_2446 = { .name = "ecdh_secp521r1_2446", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2446_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2446_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2446_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 197 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2447 for ECDH, tcId is 198 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2447_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2447_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xad, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_2447_sharedsecret[] = { 0x00, 0x3e, 0xca, 0x22, 0x10, 0xc8, 0x62, 0x31, 0x05, 0x08, 0x5a, 0xa2, 0x84, 0xd1, 0x19, 0xf3, 0xd7, 0x16, 0x73, 0x05, 0x95, 0xc6, 0x29, 0x1a, 0xa8, 0x9b, 0xf3, 0x2a, 0x95, 0xe8, 0xa5, 0xfd, 0xc6, 0x4f, 0x3d, 0x76, 0xe9, 0x24, 0x94, 0xa4, 0x3a, 0x9d, 0xce, 0xd1, 0x2d, 0x05, 0xb6, 0xdc, 0xa4, 0xff, 0xe6, 0x49, 0xb3, 0x2a, 0xc1, 0x2c, 0xb0, 0x20, 0x2e, 0x70, 0x2d, 0xc8, 0x3a, 0x2c, 0xb2, 0x77, }; static const wycheproof_ecdh_test ecdh_secp521r1_2447 = { .name = "ecdh_secp521r1_2447", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2447_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2447_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2447_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 198 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2448 for ECDH, tcId is 199 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2448_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2448_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x5f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_2448_sharedsecret[] = { 0x01, 0xc4, 0xca, 0xe9, 0xfb, 0xfd, 0xd4, 0x5d, 0xe5, 0x1d, 0x85, 0x25, 0xe8, 0x44, 0x7a, 0x75, 0x53, 0xc3, 0x5c, 0xf3, 0x58, 0xf1, 0x34, 0x6f, 0x1d, 0x79, 0x66, 0x68, 0x87, 0xbb, 0x74, 0x9a, 0x3b, 0xa0, 0xde, 0x62, 0xe1, 0x86, 0x6b, 0x47, 0xa4, 0x47, 0xd5, 0x3b, 0x6f, 0x1c, 0xa5, 0xa3, 0x3e, 0xc9, 0x45, 0x07, 0xe2, 0xcf, 0xb6, 0x55, 0x44, 0xf5, 0xa1, 0x19, 0x5f, 0xc6, 0xb4, 0xdc, 0x58, 0x10, }; static const wycheproof_ecdh_test ecdh_secp521r1_2448 = { .name = "ecdh_secp521r1_2448", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2448_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2448_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2448_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 199 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2449 for ECDH, tcId is 200 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2449_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2449_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x67, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_2449_sharedsecret[] = { 0x00, 0x80, 0x73, 0xb4, 0x79, 0x6e, 0x74, 0x8f, 0x3d, 0x0d, 0xe5, 0xe8, 0x5b, 0x22, 0xae, 0xd4, 0x63, 0xf1, 0xa6, 0xae, 0xcd, 0xb3, 0x36, 0xbc, 0x28, 0x7b, 0x50, 0xd1, 0x39, 0xe3, 0x59, 0x1e, 0xf5, 0xf8, 0x6b, 0x78, 0xc3, 0xf6, 0x05, 0x14, 0x67, 0x75, 0x5f, 0x05, 0x9f, 0x29, 0x5d, 0x75, 0x80, 0x75, 0x34, 0x7d, 0x65, 0x7a, 0xaa, 0xe0, 0x23, 0x83, 0x83, 0x8b, 0xb9, 0x60, 0x71, 0xea, 0xcb, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp521r1_2449 = { .name = "ecdh_secp521r1_2449", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2449_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2449_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2449_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 200 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2450 for ECDH, tcId is 201 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2450_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2450_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1d, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_2450_sharedsecret[] = { 0x01, 0xf1, 0x1f, 0xf8, 0x98, 0x37, 0x92, 0xd4, 0xa7, 0x90, 0xd0, 0xde, 0x4b, 0x56, 0xd0, 0x78, 0xb9, 0x03, 0x3a, 0xd6, 0x31, 0x8a, 0x44, 0x0e, 0x81, 0x19, 0x34, 0x29, 0x37, 0xcc, 0x48, 0xa3, 0x93, 0x75, 0x15, 0x0a, 0xb2, 0xcf, 0x98, 0x27, 0x3b, 0x0f, 0xe3, 0x5d, 0x5a, 0x3a, 0xf5, 0xd8, 0x43, 0x22, 0xa6, 0x85, 0xe8, 0x9f, 0x2c, 0xb3, 0x78, 0xa9, 0x9b, 0x9b, 0x7b, 0xac, 0x87, 0xe4, 0x49, 0x52, }; static const wycheproof_ecdh_test ecdh_secp521r1_2450 = { .name = "ecdh_secp521r1_2450", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2450_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2450_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2450_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 201 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2451 for ECDH, tcId is 202 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2451_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2451_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x1b, }; static const unsigned char ecdh_secp521r1_2451_sharedsecret[] = { 0x00, 0x28, 0x6c, 0xef, 0xaa, 0xf3, 0x8c, 0xa4, 0xc6, 0x65, 0x7e, 0xb9, 0xb1, 0x87, 0xd8, 0x61, 0x4d, 0x51, 0x77, 0x5f, 0xd7, 0x1c, 0x1a, 0x79, 0xb4, 0xc0, 0xef, 0x1a, 0x0d, 0x4c, 0xe7, 0x2b, 0x6f, 0x5b, 0x2b, 0xc8, 0x54, 0xa4, 0xe7, 0x82, 0x83, 0x53, 0x09, 0x42, 0xa3, 0xf4, 0xfd, 0x2a, 0x85, 0x86, 0xd5, 0xea, 0x51, 0x51, 0x3c, 0x89, 0xd3, 0xd2, 0x9d, 0xe5, 0xde, 0x06, 0x32, 0x1e, 0x11, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2451 = { .name = "ecdh_secp521r1_2451", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2451_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2451_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2451_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 202 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2452 for ECDH, tcId is 203 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2452_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2452_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x9b, }; static const unsigned char ecdh_secp521r1_2452_sharedsecret[] = { 0x01, 0x47, 0x90, 0xde, 0x14, 0xc4, 0x81, 0xf1, 0x33, 0x6f, 0xcb, 0x7d, 0x33, 0xa8, 0xbf, 0x8e, 0x23, 0xeb, 0x59, 0x4c, 0xc4, 0x86, 0x08, 0xe9, 0xed, 0xfe, 0x0e, 0x32, 0x6e, 0x10, 0x6b, 0x67, 0xe7, 0xea, 0xa3, 0xf0, 0x4e, 0xc9, 0x98, 0x55, 0x99, 0x17, 0x8f, 0x63, 0x2a, 0x5e, 0xe6, 0x41, 0x9e, 0x11, 0x21, 0x70, 0x60, 0xe9, 0xfc, 0xd5, 0x95, 0x8a, 0x43, 0x88, 0x2b, 0xf8, 0xcd, 0x3b, 0xe6, 0xba, }; static const wycheproof_ecdh_test ecdh_secp521r1_2452 = { .name = "ecdh_secp521r1_2452", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2452_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2452_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2452_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 203 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2453 for ECDH, tcId is 204 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2453_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2453_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xdb, }; static const unsigned char ecdh_secp521r1_2453_sharedsecret[] = { 0x01, 0xae, 0x77, 0x5d, 0xbc, 0x40, 0x96, 0xa3, 0xae, 0xa7, 0x97, 0x7b, 0x1a, 0x0a, 0xf4, 0xb2, 0x83, 0x0e, 0xcf, 0x9c, 0xa9, 0x27, 0xa6, 0x24, 0x7f, 0xba, 0x4c, 0xcc, 0xb4, 0x6b, 0x3f, 0x71, 0xd0, 0xe7, 0xab, 0xb8, 0xdd, 0xa7, 0x2d, 0x1c, 0x1e, 0xe7, 0xbb, 0x5b, 0x87, 0x5b, 0x47, 0x73, 0xcc, 0x8d, 0xf4, 0x0f, 0x73, 0x28, 0x19, 0xc4, 0x14, 0x7d, 0xa3, 0x30, 0x77, 0x5d, 0x17, 0x42, 0xea, 0x35, }; static const wycheproof_ecdh_test ecdh_secp521r1_2453 = { .name = "ecdh_secp521r1_2453", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2453_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2453_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2453_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 204 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2454 for ECDH, tcId is 205 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2454_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2454_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xfb, }; static const unsigned char ecdh_secp521r1_2454_sharedsecret[] = { 0x01, 0x97, 0x9f, 0xb0, 0x5e, 0x06, 0x8a, 0x12, 0xa3, 0xf2, 0x0c, 0xfd, 0xfb, 0x9e, 0xae, 0xe9, 0xf2, 0x2b, 0x35, 0x6e, 0xdc, 0xc7, 0x65, 0x53, 0x83, 0xed, 0x38, 0x12, 0x4b, 0x86, 0x81, 0x4f, 0x86, 0xa6, 0xf2, 0x21, 0x6a, 0x34, 0xf3, 0xfc, 0x22, 0x99, 0xd4, 0x03, 0xee, 0x42, 0x40, 0x8f, 0x95, 0xd0, 0x8c, 0x5c, 0x6c, 0xd1, 0x1d, 0xb7, 0x2c, 0xbf, 0x29, 0x9a, 0x4a, 0x3c, 0x25, 0x45, 0xbe, 0x25, }; static const wycheproof_ecdh_test ecdh_secp521r1_2454 = { .name = "ecdh_secp521r1_2454", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2454_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2454_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2454_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 205 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2455 for ECDH, tcId is 206 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2455_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2455_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x03, }; static const unsigned char ecdh_secp521r1_2455_sharedsecret[] = { 0x01, 0x97, 0xeb, 0xe2, 0x67, 0x98, 0xbf, 0x67, 0xf0, 0x6f, 0xf0, 0x28, 0x27, 0x73, 0xaf, 0x75, 0x11, 0x55, 0x31, 0xf4, 0x1d, 0x94, 0xc0, 0x93, 0xd8, 0x74, 0x81, 0xb7, 0x6b, 0xef, 0x70, 0x7b, 0xc2, 0x22, 0xf2, 0xd6, 0x67, 0x2f, 0x84, 0xa0, 0x0f, 0xa2, 0x0c, 0x5e, 0xd2, 0x70, 0x27, 0xab, 0x40, 0x06, 0xb6, 0x8d, 0x93, 0xee, 0x21, 0x51, 0x01, 0x6c, 0x9d, 0xdb, 0xe0, 0x14, 0x34, 0x62, 0x72, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_2455 = { .name = "ecdh_secp521r1_2455", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2455_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2455_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2455_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 206 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2456 for ECDH, tcId is 207 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2456_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2456_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const unsigned char ecdh_secp521r1_2456_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_2456 = { .name = "ecdh_secp521r1_2456", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2456_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2456_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2456_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 207 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2457 for ECDH, tcId is 208 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2457_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_2457_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, }; static const unsigned char ecdh_secp521r1_2457_sharedsecret[] = { 0x01, 0xc1, 0x68, 0x31, 0x4c, 0xdc, 0x85, 0x75, 0x7a, 0xde, 0x34, 0xa5, 0x2a, 0x9e, 0x53, 0x79, 0xff, 0xa5, 0x96, 0x8f, 0x08, 0x4b, 0x7e, 0x40, 0x49, 0x39, 0xa8, 0x03, 0x3a, 0x0f, 0xc6, 0x98, 0xe2, 0x62, 0x11, 0x75, 0x4b, 0x9b, 0x2c, 0x04, 0xcf, 0x8a, 0x14, 0x20, 0xab, 0xe6, 0xe9, 0x86, 0xef, 0x1a, 0x23, 0x8b, 0xbb, 0x91, 0xdd, 0x40, 0x2b, 0x72, 0xe0, 0xed, 0x50, 0xa8, 0x76, 0xf1, 0xa8, 0x3e, }; static const wycheproof_ecdh_test ecdh_secp521r1_2457 = { .name = "ecdh_secp521r1_2457", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2457_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2457_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2457_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 208 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2458 for ECDH, tcId is 209 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2458_peerpubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdh_secp521r1_2458_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xf7, }; static const unsigned char ecdh_secp521r1_2458_sharedsecret[] = { 0x01, 0xbc, 0x33, 0x42, 0x5e, 0x72, 0xa1, 0x27, 0x79, 0xea, 0xcb, 0x2e, 0xdc, 0xc5, 0xb6, 0x3d, 0x12, 0x81, 0xf7, 0xe8, 0x6d, 0xbc, 0x7b, 0xf9, 0x9a, 0x7a, 0xbd, 0x0c, 0xfe, 0x36, 0x7d, 0xe4, 0x66, 0x6d, 0x6e, 0xdb, 0xb8, 0x52, 0x5b, 0xff, 0xe5, 0x22, 0x2f, 0x07, 0x02, 0xc3, 0x09, 0x6d, 0xec, 0x08, 0x84, 0xce, 0x57, 0x2f, 0x5a, 0x15, 0xc4, 0x23, 0xfd, 0xf4, 0x4d, 0x01, 0xdd, 0x99, 0xc6, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_2458 = { .name = "ecdh_secp521r1_2458", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2458_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2458_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2458_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "CVE-2017-10176: Issue with elliptic curve addition, tcId is 209 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2459 for ECDH, tcId is 210 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2459_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2459_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2459 = { .name = "ecdh_secp521r1_2459", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2459_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2459_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 210 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2460 for ECDH, tcId is 211 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2460_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_2460_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2460 = { .name = "ecdh_secp521r1_2460", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2460_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2460_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 211 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2461 for ECDH, tcId is 212 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2461_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_2461_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2461 = { .name = "ecdh_secp521r1_2461", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2461_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2461_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 212 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2462 for ECDH, tcId is 213 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2462_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2462_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2462 = { .name = "ecdh_secp521r1_2462", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2462_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2462_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 213 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2463 for ECDH, tcId is 214 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2463_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2463_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2463 = { .name = "ecdh_secp521r1_2463", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2463_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2463_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 214 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2464 for ECDH, tcId is 215 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2464_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_2464_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2464 = { .name = "ecdh_secp521r1_2464", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2464_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2464_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 215 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2465 for ECDH, tcId is 216 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2465_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_2465_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2465 = { .name = "ecdh_secp521r1_2465", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2465_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2465_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 216 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2466 for ECDH, tcId is 217 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2466_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2466_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2466 = { .name = "ecdh_secp521r1_2466", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2466_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2466_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 217 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2467 for ECDH, tcId is 218 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2467_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2467_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2467 = { .name = "ecdh_secp521r1_2467", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2467_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2467_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 218 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2468 for ECDH, tcId is 219 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2468_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_2468_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2468 = { .name = "ecdh_secp521r1_2468", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2468_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2468_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 219 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2469 for ECDH, tcId is 220 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2469_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_2469_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2469 = { .name = "ecdh_secp521r1_2469", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2469_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2469_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 220 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2470 for ECDH, tcId is 221 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2470_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2470_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2470 = { .name = "ecdh_secp521r1_2470", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2470_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2470_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 221 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2471 for ECDH, tcId is 222 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2471_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2471_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2471 = { .name = "ecdh_secp521r1_2471", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2471_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2471_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 222 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2472 for ECDH, tcId is 223 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2472_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_2472_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2472 = { .name = "ecdh_secp521r1_2472", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2472_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2472_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 223 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2473 for ECDH, tcId is 224 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2473_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_2473_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2473 = { .name = "ecdh_secp521r1_2473", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2473_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2473_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 224 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2474 for ECDH, tcId is 225 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2474_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_2474_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_2474 = { .name = "ecdh_secp521r1_2474", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2474_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2474_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 225 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2475 for ECDH, tcId is 227 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2475_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xe1, }; static const unsigned char ecdh_secp521r1_2475_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2475 = { .name = "ecdh_secp521r1_2475", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2475_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2475_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 227 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2476 for ECDH, tcId is 228 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2476_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_2476_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_2476 = { .name = "ecdh_secp521r1_2476", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2476_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2476_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 228 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2477 for ECDH, tcId is 231 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2477_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2477_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2477_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2477 = { .name = "ecdh_secp521r1_2477", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2477_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2477_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2477_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "order = 1, tcId is 231 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2478 for ECDH, tcId is 232 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2478_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2478_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2478_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2478 = { .name = "ecdh_secp521r1_2478", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2478_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2478_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2478_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "order = 1598335257761788022467377781654101148543282249044465229239888363328190330275719844327554513312228302828260696579553960150541916632196023208175974174, tcId is 232 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2479 for ECDH, tcId is 233 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2479_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2479_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2479_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2479 = { .name = "ecdh_secp521r1_2479", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2479_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2479_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2479_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "generator = (0,0), tcId is 233 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2480 for ECDH, tcId is 234 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2480_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2480_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2480_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2480 = { .name = "ecdh_secp521r1_2480", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2480_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2480_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2480_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "generator not on curve, tcId is 234 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2481 for ECDH, tcId is 237 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2481_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2481_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2481_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2481 = { .name = "ecdh_secp521r1_2481", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2481_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2481_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2481_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "cofactor = 2, tcId is 237 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2482 for ECDH, tcId is 239 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2482_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2482_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2482_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2482 = { .name = "ecdh_secp521r1_2482", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2482_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2482_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2482_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "cofactor = None, tcId is 239 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2483 for ECDH, tcId is 244 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2483_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_2483_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_2483_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_2483 = { .name = "ecdh_secp521r1_2483", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2483_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2483_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2483_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "a = 0, tcId is 244 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2484 for ECDH, tcId is 261 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2484_peerpubkey[] = { 0x00, 0x42, 0x9c, 0xb4, 0x31, 0xc1, 0x8f, 0x5f, 0x4e, 0x4e, 0x50, 0x2f, 0x74, 0x21, 0x4e, 0x6a, 0xc5, 0xec, 0x2c, 0x3f, 0x86, 0xb8, 0x30, 0xba, 0xc2, 0x4d, 0xe9, 0x5f, 0xea, 0xe1, 0x42, 0xca, 0x7d, 0x9a, 0xa8, 0xaa, 0x5b, 0x34, 0xf5, 0x5a, 0xf4, 0xb2, 0x84, 0x8f, 0x2e, 0x6b, 0xa6, 0xdf, 0x4c, 0x3e, 0xcd, 0x40, 0x1a, 0x1d, 0x7b, 0x2a, 0x82, 0x87, 0xa3, 0x32, 0xb2, 0x02, 0x19, 0x6f, 0xad, 0xbb, }; static const unsigned char ecdh_secp521r1_2484_privkey[] = { 0x01, 0xc1, 0xfb, 0x2c, 0xac, 0x90, 0x87, 0xa3, 0x39, 0x78, 0x14, 0xb1, 0x98, 0xa8, 0x0e, 0x2e, 0xa5, 0xb4, 0x37, 0xaa, 0xc1, 0xb4, 0x1e, 0x8a, 0x2b, 0xd8, 0xfe, 0xf8, 0x70, 0x0e, 0x48, 0x12, 0xaa, 0x81, 0x73, 0x20, 0xe6, 0xe1, 0xe3, 0x86, 0x5b, 0xd2, 0xcf, 0x75, 0xe4, 0x3a, 0x78, 0xbe, 0x5c, 0x27, 0xff, 0x1c, 0x4b, 0x5f, 0x50, 0x19, 0x33, 0x3c, 0xb3, 0x7d, 0x0c, 0x9c, 0x4f, 0xf3, 0xec, 0x61, }; static const wycheproof_ecdh_test ecdh_secp521r1_2484 = { .name = "ecdh_secp521r1_2484", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2484_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2484_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 261 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2485 for ECDH, tcId is 262 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2485_peerpubkey[] = { 0x01, 0x08, 0xcb, 0xf3, 0xc9, 0xbf, 0x8e, 0x42, 0x13, 0x5d, 0x87, 0x12, 0x75, 0x56, 0x83, 0x10, 0x76, 0xd8, 0x4d, 0x5e, 0x54, 0x9e, 0x64, 0x5a, 0xfd, 0xa8, 0xa0, 0x99, 0x24, 0x92, 0x31, 0xb5, 0x9b, 0x6c, 0x50, 0x8d, 0xee, 0x4e, 0x91, 0xc9, 0xa5, 0x43, 0xe9, 0x0e, 0xbc, 0x82, 0x61, 0x3f, 0x86, 0xcb, 0x12, 0x90, 0xe2, 0x91, 0x02, 0xa0, 0xf2, 0xfd, 0xeb, 0x57, 0xbf, 0x41, 0x93, 0xfb, 0x46, 0x39, }; static const unsigned char ecdh_secp521r1_2485_privkey[] = { 0x00, 0x66, 0x19, 0x64, 0x41, 0x55, 0xc4, 0x49, 0x75, 0x8f, 0x65, 0xe2, 0xdf, 0xe7, 0xba, 0x89, 0xde, 0xe1, 0xe0, 0x90, 0xc1, 0xd6, 0x8b, 0x63, 0x42, 0xf4, 0x3c, 0xb1, 0xac, 0x00, 0x00, 0x90, 0xa7, 0xf0, 0x40, 0x81, 0x38, 0xc1, 0xde, 0x21, 0x79, 0x90, 0xbb, 0x01, 0x5c, 0xd1, 0xd9, 0x5f, 0x1d, 0x88, 0x4c, 0xf6, 0x59, 0xf7, 0x32, 0x4f, 0x2f, 0xe2, 0x1e, 0xeb, 0xa6, 0x3e, 0xa9, 0x88, 0xaa, 0xcd, }; static const wycheproof_ecdh_test ecdh_secp521r1_2485 = { .name = "ecdh_secp521r1_2485", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2485_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2485_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 262 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2486 for ECDH, tcId is 263 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2486_peerpubkey[] = { 0x01, 0x1f, 0x2d, 0xca, 0x6b, 0x68, 0x6e, 0x21, 0x41, 0xc1, 0x18, 0x22, 0xe2, 0xd5, 0x43, 0x92, 0x61, 0x58, 0x3c, 0xe9, 0x8c, 0xd6, 0xc4, 0x04, 0x1c, 0x6d, 0x1b, 0xe9, 0xe1, 0x7d, 0xee, 0x33, 0xea, 0x4a, 0x65, 0xc3, 0xe8, 0xcc, 0xa6, 0xde, 0x50, 0xa3, 0x0a, 0x39, 0xc7, 0x88, 0xa5, 0x85, 0xf1, 0x18, 0x8b, 0xef, 0x06, 0x80, 0xa9, 0xc0, 0x26, 0x4b, 0x3c, 0x8d, 0xcf, 0x49, 0x4d, 0x0e, 0xb9, 0x48, }; static const unsigned char ecdh_secp521r1_2486_privkey[] = { 0x00, 0xa2, 0x57, 0xd9, 0x7a, 0xa4, 0xe5, 0x19, 0x5e, 0x29, 0x19, 0xc1, 0x47, 0xc1, 0x63, 0x9b, 0xb0, 0xda, 0x0c, 0xce, 0x47, 0x9a, 0x03, 0x64, 0x89, 0x00, 0x6b, 0x7b, 0x8e, 0x7e, 0x88, 0x50, 0x96, 0x06, 0x6e, 0x5a, 0xdc, 0x8f, 0xe7, 0xc4, 0x59, 0x40, 0xc5, 0xa6, 0xb9, 0x4d, 0x50, 0x65, 0xb9, 0x66, 0xa4, 0x5f, 0x09, 0x9a, 0x0c, 0xec, 0xfe, 0x9c, 0xce, 0x1b, 0x3e, 0x99, 0xdc, 0xa4, 0x79, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp521r1_2486 = { .name = "ecdh_secp521r1_2486", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2486_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2486_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 263 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2487 for ECDH, tcId is 264 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2487_peerpubkey[] = { 0x01, 0x1f, 0x2d, 0xca, 0x6b, 0x68, 0x6e, 0x21, 0x41, 0xc1, 0x18, 0x22, 0xe2, 0xd5, 0x43, 0x92, 0x61, 0x58, 0x3c, 0xe9, 0x8c, 0xd6, 0xc4, 0x04, 0x1c, 0x6d, 0x1b, 0xe9, 0xe1, 0x7d, 0xee, 0x33, 0xea, 0x4a, 0x65, 0xc3, 0xe8, 0xcc, 0xa6, 0xde, 0x50, 0xa3, 0x0a, 0x39, 0xc7, 0x88, 0xa5, 0x85, 0xf1, 0x18, 0x8b, 0xef, 0x06, 0x80, 0xa9, 0xc0, 0x26, 0x4b, 0x3c, 0x8d, 0xcf, 0x49, 0x4d, 0x0e, 0xb9, 0x48, }; static const unsigned char ecdh_secp521r1_2487_privkey[] = { 0x00, 0xa2, 0x57, 0xd9, 0x7a, 0xa4, 0xe5, 0x19, 0x5e, 0x29, 0x19, 0xc1, 0x47, 0xc1, 0x63, 0x9b, 0xb0, 0xda, 0x0c, 0xce, 0x47, 0x9a, 0x03, 0x64, 0x89, 0x00, 0x6b, 0x7b, 0x8e, 0x7e, 0x88, 0x50, 0x96, 0x06, 0x6e, 0x5a, 0xdc, 0x8f, 0xe7, 0xc4, 0x59, 0x40, 0xc5, 0xa6, 0xb9, 0x4d, 0x50, 0x65, 0xb9, 0x66, 0xa4, 0x5f, 0x09, 0x9a, 0x0c, 0xec, 0xfe, 0x9c, 0xce, 0x1b, 0x3e, 0x99, 0xdc, 0xa4, 0x79, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp521r1_2487 = { .name = "ecdh_secp521r1_2487", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2487_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2487_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 264 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2488 for ECDH, tcId is 265 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2488_peerpubkey[] = { 0x01, 0x08, 0xcb, 0xf3, 0xc9, 0xbf, 0x8e, 0x42, 0x13, 0x5d, 0x87, 0x12, 0x75, 0x56, 0x83, 0x10, 0x76, 0xd8, 0x4d, 0x5e, 0x54, 0x9e, 0x64, 0x5a, 0xfd, 0xa8, 0xa0, 0x99, 0x24, 0x92, 0x31, 0xb5, 0x9b, 0x6c, 0x50, 0x8d, 0xee, 0x4e, 0x91, 0xc9, 0xa5, 0x43, 0xe9, 0x0e, 0xbc, 0x82, 0x61, 0x3f, 0x86, 0xcb, 0x12, 0x90, 0xe2, 0x91, 0x02, 0xa0, 0xf2, 0xfd, 0xeb, 0x57, 0xbf, 0x41, 0x93, 0xfb, 0x46, 0x39, }; static const unsigned char ecdh_secp521r1_2488_privkey[] = { 0x00, 0x66, 0x19, 0x64, 0x41, 0x55, 0xc4, 0x49, 0x75, 0x8f, 0x65, 0xe2, 0xdf, 0xe7, 0xba, 0x89, 0xde, 0xe1, 0xe0, 0x90, 0xc1, 0xd6, 0x8b, 0x63, 0x42, 0xf4, 0x3c, 0xb1, 0xac, 0x00, 0x00, 0x90, 0xa7, 0xf0, 0x40, 0x81, 0x38, 0xc1, 0xde, 0x21, 0x79, 0x90, 0xbb, 0x01, 0x5c, 0xd1, 0xd9, 0x5f, 0x1d, 0x88, 0x4c, 0xf6, 0x59, 0xf7, 0x32, 0x4f, 0x2f, 0xe2, 0x1e, 0xeb, 0xa6, 0x3e, 0xa9, 0x88, 0xaa, 0xcc, }; static const wycheproof_ecdh_test ecdh_secp521r1_2488 = { .name = "ecdh_secp521r1_2488", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2488_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2488_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 265 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2489 for ECDH, tcId is 266 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2489_peerpubkey[] = { 0x00, 0x09, 0xcc, 0x73, 0x14, 0x1c, 0xf1, 0x84, 0x3d, 0x2b, 0x2c, 0x95, 0xdc, 0x5c, 0xbc, 0x4d, 0x61, 0x5c, 0x6d, 0xa4, 0x81, 0x4c, 0x1c, 0x72, 0x08, 0x61, 0x5d, 0x8e, 0x78, 0xc7, 0xa8, 0x66, 0x6a, 0xba, 0x18, 0x52, 0xfa, 0xaa, 0x45, 0xa4, 0x5d, 0x32, 0xbd, 0x0f, 0xde, 0x6e, 0xa7, 0x8f, 0x26, 0x2a, 0x96, 0xbf, 0x1e, 0x02, 0x94, 0x9c, 0xea, 0x48, 0xc3, 0x3c, 0x69, 0x51, 0x03, 0x68, 0x30, 0x48, }; static const unsigned char ecdh_secp521r1_2489_privkey[] = { 0x00, 0x2a, 0x35, 0x25, 0x87, 0x87, 0xf9, 0x1a, 0xd0, 0xbd, 0x34, 0x32, 0xc3, 0x02, 0x2e, 0x4d, 0x3e, 0xd3, 0x49, 0xc8, 0x76, 0x8a, 0x7e, 0x7c, 0xaa, 0x18, 0x36, 0x02, 0x2f, 0xc0, 0xc8, 0x9a, 0x90, 0x73, 0xf6, 0xce, 0x14, 0xd0, 0x99, 0x0d, 0x5b, 0x7b, 0xb4, 0x13, 0x06, 0x1c, 0x71, 0x60, 0xe7, 0xbd, 0x56, 0x6a, 0x5c, 0x89, 0xf1, 0x49, 0x01, 0xb2, 0xcc, 0x19, 0xf1, 0xad, 0x53, 0x1f, 0x41, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_2489 = { .name = "ecdh_secp521r1_2489", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2489_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2489_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 266 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2490 for ECDH, tcId is 267 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2490_peerpubkey[] = { 0x00, 0x47, 0xb9, 0xcf, 0x28, 0xe0, 0x4b, 0x38, 0x79, 0x68, 0x58, 0x54, 0x5d, 0x60, 0xd6, 0x13, 0x3f, 0xbd, 0xc2, 0x0e, 0xde, 0x08, 0x6e, 0x5d, 0x95, 0x11, 0x1c, 0x98, 0x2b, 0x8c, 0x27, 0x66, 0x28, 0x23, 0x5e, 0x53, 0x6c, 0x07, 0x56, 0x37, 0xa9, 0x7c, 0x0a, 0x6c, 0x30, 0xd0, 0x2b, 0x83, 0xb1, 0x9e, 0x57, 0x82, 0x03, 0x47, 0x3e, 0xea, 0x16, 0xdf, 0xde, 0xae, 0xcc, 0xb1, 0xdc, 0x0d, 0x9b, 0x19, }; static const unsigned char ecdh_secp521r1_2490_privkey[] = { 0x01, 0xaf, 0xe5, 0xc7, 0x7a, 0x62, 0x61, 0x61, 0xfb, 0x2c, 0x25, 0x96, 0x4c, 0x78, 0x95, 0xb9, 0xff, 0xf7, 0x87, 0x09, 0x9d, 0xb8, 0x3f, 0x07, 0x7f, 0x05, 0xa4, 0xbf, 0xa3, 0x20, 0xfb, 0x61, 0xf9, 0x31, 0x5b, 0xb4, 0x4d, 0x3f, 0xb9, 0xdd, 0x72, 0x22, 0x5d, 0x9d, 0x99, 0x3a, 0x18, 0xdf, 0x82, 0xac, 0x53, 0xfb, 0x4a, 0x5f, 0x86, 0xb2, 0x3c, 0xb6, 0x50, 0xe5, 0xe4, 0x77, 0x80, 0x66, 0xf6, 0x77, }; static const wycheproof_ecdh_test ecdh_secp521r1_2490 = { .name = "ecdh_secp521r1_2490", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2490_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2490_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 267 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2491 for ECDH, tcId is 268 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2491_peerpubkey[] = { 0x00, 0xc1, 0x84, 0x10, 0xf5, 0x72, 0x7e, 0xe0, 0x10, 0x1a, 0x52, 0xef, 0x95, 0xc0, 0xac, 0x45, 0x5c, 0xbc, 0x65, 0xbf, 0x99, 0x67, 0xf0, 0xa2, 0xc4, 0x19, 0xaa, 0x0a, 0x29, 0x1c, 0xab, 0xad, 0x56, 0x9f, 0x23, 0x37, 0xe1, 0x02, 0xd0, 0xa9, 0x12, 0x8f, 0x42, 0x12, 0xdb, 0xf9, 0xfa, 0x9e, 0x5a, 0x8f, 0x14, 0xca, 0x7f, 0x28, 0xe8, 0x29, 0x77, 0x28, 0x1f, 0xac, 0xdd, 0x9c, 0xa7, 0xa9, 0x2c, 0x78, }; static const unsigned char ecdh_secp521r1_2491_privkey[] = { 0x00, 0x24, 0xae, 0x70, 0x9e, 0x16, 0x44, 0xe3, 0x08, 0x7b, 0x52, 0x47, 0x0c, 0x56, 0x52, 0x68, 0xbe, 0xcb, 0xdb, 0xf9, 0x7d, 0xe5, 0x99, 0x16, 0x76, 0x35, 0x07, 0xd1, 0x09, 0xc2, 0xe5, 0xb7, 0xc2, 0x17, 0x27, 0xc6, 0x4e, 0x9b, 0x56, 0x0a, 0xa2, 0x48, 0xd7, 0xbc, 0x9f, 0xe0, 0xac, 0x95, 0x72, 0x0d, 0x50, 0x72, 0x63, 0xb7, 0xb2, 0x85, 0x9b, 0x05, 0x6e, 0xa1, 0x65, 0x30, 0x1c, 0xd5, 0x99, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2491 = { .name = "ecdh_secp521r1_2491", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2491_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2491_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 268 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2492 for ECDH, tcId is 269 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2492_peerpubkey[] = { 0x00, 0xc1, 0x84, 0x10, 0xf5, 0x72, 0x7e, 0xe0, 0x10, 0x1a, 0x52, 0xef, 0x95, 0xc0, 0xac, 0x45, 0x5c, 0xbc, 0x65, 0xbf, 0x99, 0x67, 0xf0, 0xa2, 0xc4, 0x19, 0xaa, 0x0a, 0x29, 0x1c, 0xab, 0xad, 0x56, 0x9f, 0x23, 0x37, 0xe1, 0x02, 0xd0, 0xa9, 0x12, 0x8f, 0x42, 0x12, 0xdb, 0xf9, 0xfa, 0x9e, 0x5a, 0x8f, 0x14, 0xca, 0x7f, 0x28, 0xe8, 0x29, 0x77, 0x28, 0x1f, 0xac, 0xdd, 0x9c, 0xa7, 0xa9, 0x2c, 0x78, }; static const unsigned char ecdh_secp521r1_2492_privkey[] = { 0x00, 0x24, 0xae, 0x70, 0x9e, 0x16, 0x44, 0xe3, 0x08, 0x7b, 0x52, 0x47, 0x0c, 0x56, 0x52, 0x68, 0xbe, 0xcb, 0xdb, 0xf9, 0x7d, 0xe5, 0x99, 0x16, 0x76, 0x35, 0x07, 0xd1, 0x09, 0xc2, 0xe5, 0xb7, 0xc2, 0x17, 0x27, 0xc6, 0x4e, 0x9b, 0x56, 0x0a, 0xa2, 0x48, 0xd7, 0xbc, 0x9f, 0xe0, 0xac, 0x95, 0x72, 0x0d, 0x50, 0x72, 0x63, 0xb7, 0xb2, 0x85, 0x9b, 0x05, 0x6e, 0xa1, 0x65, 0x30, 0x1c, 0xd5, 0x99, 0xd6, }; static const wycheproof_ecdh_test ecdh_secp521r1_2492 = { .name = "ecdh_secp521r1_2492", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2492_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2492_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 269 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2493 for ECDH, tcId is 270 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2493_peerpubkey[] = { 0x00, 0x47, 0xb9, 0xcf, 0x28, 0xe0, 0x4b, 0x38, 0x79, 0x68, 0x58, 0x54, 0x5d, 0x60, 0xd6, 0x13, 0x3f, 0xbd, 0xc2, 0x0e, 0xde, 0x08, 0x6e, 0x5d, 0x95, 0x11, 0x1c, 0x98, 0x2b, 0x8c, 0x27, 0x66, 0x28, 0x23, 0x5e, 0x53, 0x6c, 0x07, 0x56, 0x37, 0xa9, 0x7c, 0x0a, 0x6c, 0x30, 0xd0, 0x2b, 0x83, 0xb1, 0x9e, 0x57, 0x82, 0x03, 0x47, 0x3e, 0xea, 0x16, 0xdf, 0xde, 0xae, 0xcc, 0xb1, 0xdc, 0x0d, 0x9b, 0x19, }; static const unsigned char ecdh_secp521r1_2493_privkey[] = { 0x01, 0xaf, 0xe5, 0xc7, 0x7a, 0x62, 0x61, 0x61, 0xfb, 0x2c, 0x25, 0x96, 0x4c, 0x78, 0x95, 0xb9, 0xff, 0xf7, 0x87, 0x09, 0x9d, 0xb8, 0x3f, 0x07, 0x7f, 0x05, 0xa4, 0xbf, 0xa3, 0x20, 0xfb, 0x61, 0xf9, 0x31, 0x5b, 0xb4, 0x4d, 0x3f, 0xb9, 0xdd, 0x72, 0x22, 0x5d, 0x9d, 0x99, 0x3a, 0x18, 0xdf, 0x82, 0xac, 0x53, 0xfb, 0x4a, 0x5f, 0x86, 0xb2, 0x3c, 0xb6, 0x50, 0xe5, 0xe4, 0x77, 0x80, 0x66, 0xf6, 0x78, }; static const wycheproof_ecdh_test ecdh_secp521r1_2493 = { .name = "ecdh_secp521r1_2493", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2493_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2493_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 270 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2494 for ECDH, tcId is 271 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2494_peerpubkey[] = { 0x00, 0x09, 0xcc, 0x73, 0x14, 0x1c, 0xf1, 0x84, 0x3d, 0x2b, 0x2c, 0x95, 0xdc, 0x5c, 0xbc, 0x4d, 0x61, 0x5c, 0x6d, 0xa4, 0x81, 0x4c, 0x1c, 0x72, 0x08, 0x61, 0x5d, 0x8e, 0x78, 0xc7, 0xa8, 0x66, 0x6a, 0xba, 0x18, 0x52, 0xfa, 0xaa, 0x45, 0xa4, 0x5d, 0x32, 0xbd, 0x0f, 0xde, 0x6e, 0xa7, 0x8f, 0x26, 0x2a, 0x96, 0xbf, 0x1e, 0x02, 0x94, 0x9c, 0xea, 0x48, 0xc3, 0x3c, 0x69, 0x51, 0x03, 0x68, 0x30, 0x48, }; static const unsigned char ecdh_secp521r1_2494_privkey[] = { 0x00, 0x2a, 0x35, 0x25, 0x87, 0x87, 0xf9, 0x1a, 0xd0, 0xbd, 0x34, 0x32, 0xc3, 0x02, 0x2e, 0x4d, 0x3e, 0xd3, 0x49, 0xc8, 0x76, 0x8a, 0x7e, 0x7c, 0xaa, 0x18, 0x36, 0x02, 0x2f, 0xc0, 0xc8, 0x9a, 0x90, 0x73, 0xf6, 0xce, 0x14, 0xd0, 0x99, 0x0d, 0x5b, 0x7b, 0xb4, 0x13, 0x06, 0x1c, 0x71, 0x60, 0xe7, 0xbd, 0x56, 0x6a, 0x5c, 0x89, 0xf1, 0x49, 0x01, 0xb2, 0xcc, 0x19, 0xf1, 0xad, 0x53, 0x1f, 0x41, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp521r1_2494 = { .name = "ecdh_secp521r1_2494", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2494_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2494_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 271 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2495 for ECDH, tcId is 272 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2495_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2495_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2495_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2495 = { .name = "ecdh_secp521r1_2495", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2495_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2495_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2495_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "length of sequence contains leading 0, tcId is 272 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2496 for ECDH, tcId is 273 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2496_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2496_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2496_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2496 = { .name = "ecdh_secp521r1_2496", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2496_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2496_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2496_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "length of sequence contains leading 0, tcId is 273 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2497 for ECDH, tcId is 307 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2497_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2497_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2497_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2497 = { .name = "ecdh_secp521r1_2497", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2497_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2497_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2497_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending null value to sequence, tcId is 307 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2498 for ECDH, tcId is 308 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2498_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2498_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2498_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2498 = { .name = "ecdh_secp521r1_2498", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2498_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2498_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2498_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending null value to sequence, tcId is 308 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2499 for ECDH, tcId is 337 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2499_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2499_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2499_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2499 = { .name = "ecdh_secp521r1_2499", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2499_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2499_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2499_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "Replacing sequence with NULL, tcId is 337 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2500 for ECDH, tcId is 340 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2500_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2500_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2500_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2500 = { .name = "ecdh_secp521r1_2500", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2500_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2500_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2500_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of sequence, tcId is 340 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2501 for ECDH, tcId is 345 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2501_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2501_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2501_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2501 = { .name = "ecdh_secp521r1_2501", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2501_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2501_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2501_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of sequence, tcId is 345 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2502 for ECDH, tcId is 349 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2502_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2502_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2502_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2502 = { .name = "ecdh_secp521r1_2502", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2502_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2502_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2502_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "dropping value of sequence, tcId is 349 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2503 for ECDH, tcId is 367 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2503_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2503_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2503_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2503 = { .name = "ecdh_secp521r1_2503", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2503_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2503_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2503_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "prepend empty sequence, tcId is 367 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2504 for ECDH, tcId is 368 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2504_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2504_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2504_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2504 = { .name = "ecdh_secp521r1_2504", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2504_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2504_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2504_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "append empty sequence, tcId is 368 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2505 for ECDH, tcId is 369 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2505_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2505_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2505_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2505 = { .name = "ecdh_secp521r1_2505", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2505_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2505_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2505_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "append empty sequence, tcId is 369 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2506 for ECDH, tcId is 373 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2506_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2506_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2506_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2506 = { .name = "ecdh_secp521r1_2506", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2506_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2506_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2506_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "sequence of sequence, tcId is 373 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2507 for ECDH, tcId is 375 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2507_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2507_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2507_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2507 = { .name = "ecdh_secp521r1_2507", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2507_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2507_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2507_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated sequence: removed last 1 elements, tcId is 375 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2508 for ECDH, tcId is 376 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2508_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2508_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2508_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2508 = { .name = "ecdh_secp521r1_2508", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2508_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2508_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2508_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "repeating element in sequence, tcId is 376 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2509 for ECDH, tcId is 377 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2509_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2509_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2509_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2509 = { .name = "ecdh_secp521r1_2509", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2509_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2509_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2509_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "repeating element in sequence, tcId is 377 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2510 for ECDH, tcId is 378 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2510_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2510_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2510_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2510 = { .name = "ecdh_secp521r1_2510", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2510_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2510_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2510_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "long form encoding of length of sequence, tcId is 378 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2511 for ECDH, tcId is 379 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2511_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2511_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2511_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2511 = { .name = "ecdh_secp521r1_2511", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2511_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2511_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2511_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "long form encoding of length of oid, tcId is 379 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2512 for ECDH, tcId is 380 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2512_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2512_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2512_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2512 = { .name = "ecdh_secp521r1_2512", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2512_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2512_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2512_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "long form encoding of length of oid, tcId is 380 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2513 for ECDH, tcId is 381 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2513_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2513_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2513_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2513 = { .name = "ecdh_secp521r1_2513", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2513_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2513_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2513_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "length of oid contains leading 0, tcId is 381 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2514 for ECDH, tcId is 382 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2514_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2514_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2514_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2514 = { .name = "ecdh_secp521r1_2514", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2514_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2514_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2514_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "length of oid contains leading 0, tcId is 382 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2515 for ECDH, tcId is 401 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2515_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2515_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2515_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2515 = { .name = "ecdh_secp521r1_2515", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2515_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2515_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2515_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "removing oid, tcId is 401 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2516 for ECDH, tcId is 402 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2516_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2516_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2516_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2516 = { .name = "ecdh_secp521r1_2516", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2516_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2516_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2516_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "lonely oid tag, tcId is 402 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2517 for ECDH, tcId is 404 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2517_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2517_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2517_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2517 = { .name = "ecdh_secp521r1_2517", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2517_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2517_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2517_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending 0's to oid, tcId is 404 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2518 for ECDH, tcId is 405 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2518_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2518_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2518_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2518 = { .name = "ecdh_secp521r1_2518", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2518_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2518_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2518_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending 0's to oid, tcId is 405 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2519 for ECDH, tcId is 406 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2519_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2519_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2519_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2519 = { .name = "ecdh_secp521r1_2519", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2519_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2519_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2519_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "prepending 0's to oid, tcId is 406 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2520 for ECDH, tcId is 407 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2520_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2520_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2520_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2520 = { .name = "ecdh_secp521r1_2520", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2520_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2520_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2520_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "prepending 0's to oid, tcId is 407 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2521 for ECDH, tcId is 409 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2521_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2521_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2521_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2521 = { .name = "ecdh_secp521r1_2521", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2521_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2521_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2521_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending null value to oid, tcId is 409 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2522 for ECDH, tcId is 410 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2522_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2522_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2522_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2522 = { .name = "ecdh_secp521r1_2522", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2522_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2522_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2522_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "appending null value to oid, tcId is 410 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2523 for ECDH, tcId is 411 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2523_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2523_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2523_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2523 = { .name = "ecdh_secp521r1_2523", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2523_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2523_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2523_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated length of oid, tcId is 411 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2524 for ECDH, tcId is 413 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2524_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2524_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2524_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2524 = { .name = "ecdh_secp521r1_2524", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2524_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2524_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2524_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "Replacing oid with NULL, tcId is 413 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2525 for ECDH, tcId is 414 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2525_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2525_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2525_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2525 = { .name = "ecdh_secp521r1_2525", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2525_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2525_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2525_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "Replacing oid with NULL, tcId is 414 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2526 for ECDH, tcId is 415 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2526_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2526_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2526_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2526 = { .name = "ecdh_secp521r1_2526", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2526_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2526_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2526_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of oid, tcId is 415 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2527 for ECDH, tcId is 417 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2527_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2527_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2527_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2527 = { .name = "ecdh_secp521r1_2527", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2527_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2527_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2527_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of oid, tcId is 417 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2528 for ECDH, tcId is 420 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2528_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2528_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2528_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2528 = { .name = "ecdh_secp521r1_2528", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2528_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2528_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2528_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of oid, tcId is 420 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2529 for ECDH, tcId is 422 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2529_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2529_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2529_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2529 = { .name = "ecdh_secp521r1_2529", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2529_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2529_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2529_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "changing tag value of oid, tcId is 422 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2530 for ECDH, tcId is 427 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2530_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2530_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2530_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2530 = { .name = "ecdh_secp521r1_2530", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2530_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2530_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2530_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "modify first byte of oid, tcId is 427 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2531 for ECDH, tcId is 428 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2531_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2531_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2531_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2531 = { .name = "ecdh_secp521r1_2531", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2531_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2531_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2531_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "modify first byte of oid, tcId is 428 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2532 for ECDH, tcId is 431 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2532_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2532_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2532_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2532 = { .name = "ecdh_secp521r1_2532", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2532_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2532_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2532_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated oid, tcId is 431 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2533 for ECDH, tcId is 432 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2533_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2533_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2533_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2533 = { .name = "ecdh_secp521r1_2533", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2533_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2533_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2533_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated oid, tcId is 432 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2534 for ECDH, tcId is 433 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2534_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2534_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2534_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2534 = { .name = "ecdh_secp521r1_2534", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2534_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2534_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2534_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated oid, tcId is 433 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2535 for ECDH, tcId is 434 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2535_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2535_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2535_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2535 = { .name = "ecdh_secp521r1_2535", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2535_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2535_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2535_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "truncated oid, tcId is 434 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2536 for ECDH, tcId is 435 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2536_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2536_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2536_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2536 = { .name = "ecdh_secp521r1_2536", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2536_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2536_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2536_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "wrong oid, tcId is 435 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2537 for ECDH, tcId is 436 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2537_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2537_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2537_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2537 = { .name = "ecdh_secp521r1_2537", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2537_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2537_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2537_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "wrong oid, tcId is 436 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2538 for ECDH, tcId is 437 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2538_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2538_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2538_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2538 = { .name = "ecdh_secp521r1_2538", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2538_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2538_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2538_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "wrong oid, tcId is 437 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2539 for ECDH, tcId is 438 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2539_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2539_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2539_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2539 = { .name = "ecdh_secp521r1_2539", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2539_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2539_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2539_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "wrong oid, tcId is 438 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2540 for ECDH, tcId is 439 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2540_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2540_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2540_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2540 = { .name = "ecdh_secp521r1_2540", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2540_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2540_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2540_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "longer oid, tcId is 439 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2541 for ECDH, tcId is 440 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2541_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2541_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2541_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2541 = { .name = "ecdh_secp521r1_2541", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2541_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2541_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2541_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "longer oid, tcId is 440 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2542 for ECDH, tcId is 441 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2542_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2542_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2542_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2542 = { .name = "ecdh_secp521r1_2542", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2542_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2542_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2542_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "oid with modified node, tcId is 441 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2543 for ECDH, tcId is 442 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2543_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2543_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2543_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2543 = { .name = "ecdh_secp521r1_2543", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2543_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2543_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2543_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "oid with modified node, tcId is 442 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2544 for ECDH, tcId is 443 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2544_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2544_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2544_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2544 = { .name = "ecdh_secp521r1_2544", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2544_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2544_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2544_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "oid with modified node, tcId is 443 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2545 for ECDH, tcId is 444 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2545_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2545_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2545_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2545 = { .name = "ecdh_secp521r1_2545", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2545_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2545_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2545_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "oid with modified node, tcId is 444 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2546 for ECDH, tcId is 445 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2546_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2546_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2546_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2546 = { .name = "ecdh_secp521r1_2546", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2546_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2546_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2546_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "large integer in oid, tcId is 445 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2547 for ECDH, tcId is 446 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2547_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2547_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2547_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2547 = { .name = "ecdh_secp521r1_2547", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2547_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2547_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2547_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "large integer in oid, tcId is 446 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2548 for ECDH, tcId is 451 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2548_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2548_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2548_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2548 = { .name = "ecdh_secp521r1_2548", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2548_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2548_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2548_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "length of bit string contains leading 0, tcId is 451 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2549 for ECDH, tcId is 463 in file ecdh_secp521r1_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2549_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0x50, }; static const unsigned char ecdh_secp521r1_2549_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2549_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2549 = { .name = "ecdh_secp521r1_2549", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2549_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2549_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2549_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "prepending 0's to bit string, tcId is 463 in file ecdh_secp521r1_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2550 for ECDH, tcId is 474 in file ecdh_secp521r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error] */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_2550_peerpubkey[] = { 0x01, 0x7e, 0xe1, 0x69, 0x85, 0xc3, 0x67, 0x82, 0x34, 0xd2, 0x72, 0x91, 0x36, 0x82, 0xa7, 0xc1, 0x22, 0xb3, 0x5c, 0x1c, 0x50, 0x11, 0xd1, 0x93, 0x3b, 0xb7, 0xb0, 0x8c, 0x8b, 0x88, 0x3a, 0xfc, 0xf4, 0x69, 0x45, 0x30, 0x79, 0xe2, 0xef, 0x02, 0xa7, 0x24, 0xa6, 0xdd, 0xbe, 0x25, 0xee, 0x3b, 0x2e, 0x63, 0x00, 0x7d, 0xd2, 0x83, 0x8c, 0x5b, 0xb0, 0x0f, 0xa1, 0xff, 0x8f, 0xd1, 0x8c, 0xf8, 0x1e, 0xaa, 0x01, 0x11, 0x6c, 0xe0, 0x49, 0xd6, 0x3f, 0x22, 0xf7, 0x1c, 0x7d, 0x11, 0xc0, 0xac, 0xd6, 0x7c, 0xac, 0xd1, 0xb4, 0xea, 0x01, 0x25, 0xbd, 0x48, 0xe8, 0x72, 0xdc, 0x5c, 0xc9, 0xfc, 0x40, 0x73, 0xb7, 0xc8, 0x44, 0xc4, 0xb4, 0x22, 0x23, 0x48, 0x3b, 0x4a, 0xa8, 0x40, 0x2b, 0x19, 0x8d, 0x98, 0x1d, 0xc8, 0xb7, 0xab, 0xa0, 0x48, 0x74, 0x9b, 0x4a, 0x04, 0x96, 0xe2, 0x53, 0x7d, 0x3c, 0xc3, 0x2d, 0xd0, }; static const unsigned char ecdh_secp521r1_2550_privkey[] = { 0x01, 0x8c, 0x3c, 0x38, 0x43, 0x68, 0x13, 0x3e, 0x46, 0xc9, 0x9a, 0xd2, 0x42, 0x1f, 0xf4, 0x4e, 0xed, 0x45, 0x9b, 0x5d, 0x20, 0x9c, 0xb2, 0xaa, 0x70, 0xb0, 0x9b, 0xd7, 0xd3, 0x8c, 0xc6, 0x22, 0x51, 0x64, 0xa9, 0x81, 0x5d, 0xff, 0x6d, 0x69, 0xaf, 0xbf, 0x49, 0xf8, 0x0d, 0xa2, 0x2f, 0x6e, 0xa3, 0x34, 0x54, 0xb6, 0x54, 0x4b, 0x69, 0xb3, 0x33, 0x00, 0x08, 0xc6, 0xa2, 0x22, 0x59, 0xf9, 0xf9, 0xe5, }; static const unsigned char ecdh_secp521r1_2550_sharedsecret[] = { 0x00, 0xd3, 0x97, 0x25, 0x28, 0x13, 0xd3, 0x73, 0x29, 0xb9, 0xe2, 0x77, 0x82, 0x3e, 0x2d, 0xfc, 0xcd, 0xd1, 0xee, 0x51, 0x9f, 0x0c, 0x32, 0xcc, 0xbb, 0x3f, 0x5f, 0xc6, 0x20, 0x62, 0xe8, 0xc0, 0x7d, 0xbf, 0x3f, 0xb8, 0x60, 0x85, 0x73, 0x61, 0x15, 0xb7, 0x0f, 0x86, 0xf4, 0x4a, 0xd8, 0x52, 0xf3, 0x48, 0x8e, 0xcb, 0xb5, 0xe7, 0xec, 0x31, 0xe9, 0x61, 0xe8, 0x69, 0xb4, 0x0b, 0x6a, 0xdd, 0x05, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp521r1_2550 = { .name = "ecdh_secp521r1_2550", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_2550_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_2550_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_2550_sharedsecret, .sharedsecretlen = 66, .result = -1, .comment = "modify last byte of bit string, tcId is 474 in file ecdh_secp521r1_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid' due to an error]", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 2551 for ECDH, tcId is 1 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2551_peerpubkey[] = { 0x7d, 0x8a, 0xc2, 0x11, 0xe1, 0x22, 0x8e, 0xb0, 0x94, 0xe2, 0x85, 0xa9, 0x57, 0xd9, 0x91, 0x2e, 0x93, 0xde, 0xee, 0x43, 0x3e, 0xd7, 0x77, 0x44, 0x0a, 0xe9, 0xfc, 0x71, 0x9b, 0x01, 0xd0, 0x50, 0xdf, 0xbe, 0x65, 0x3e, 0x72, 0xf3, 0x94, 0x91, 0xbe, 0x87, 0xfb, 0x1a, 0x27, 0x42, 0xda, 0xa6, 0xe0, 0xa2, 0xaa, 0xda, 0x98, 0xbb, 0x1a, 0xca, }; static const unsigned char ecdh_secp224r1_2551_privkey[] = { 0x56, 0x55, 0x77, 0xa4, 0x94, 0x15, 0xca, 0x76, 0x1a, 0x03, 0x22, 0xad, 0x54, 0xe4, 0xad, 0x0a, 0xe7, 0x62, 0x51, 0x74, 0xba, 0xf3, 0x72, 0xc2, 0x81, 0x6f, 0x53, 0x28, }; static const unsigned char ecdh_secp224r1_2551_sharedsecret[] = { 0xb8, 0xec, 0xdb, 0x55, 0x2d, 0x39, 0x22, 0x8e, 0xe3, 0x32, 0xba, 0xfe, 0x48, 0x86, 0xdb, 0xff, 0x27, 0x2f, 0x71, 0x09, 0xed, 0xf9, 0x33, 0xbc, 0x75, 0x42, 0xbd, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2551 = { .name = "ecdh_secp224r1_2551", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2551_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2551_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2551_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2552 for ECDH, tcId is 2 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2552_peerpubkey[] = { 0x7d, 0x8a, 0xc2, 0x11, 0xe1, 0x22, 0x8e, 0xb0, 0x94, 0xe2, 0x85, 0xa9, 0x57, 0xd9, 0x91, 0x2e, 0x93, 0xde, 0xee, 0x43, 0x3e, 0xd7, 0x77, 0x44, 0x0a, 0xe9, 0xfc, 0x71, }; static const unsigned char ecdh_secp224r1_2552_privkey[] = { 0x56, 0x55, 0x77, 0xa4, 0x94, 0x15, 0xca, 0x76, 0x1a, 0x03, 0x22, 0xad, 0x54, 0xe4, 0xad, 0x0a, 0xe7, 0x62, 0x51, 0x74, 0xba, 0xf3, 0x72, 0xc2, 0x81, 0x6f, 0x53, 0x28, }; static const unsigned char ecdh_secp224r1_2552_sharedsecret[] = { 0xb8, 0xec, 0xdb, 0x55, 0x2d, 0x39, 0x22, 0x8e, 0xe3, 0x32, 0xba, 0xfe, 0x48, 0x86, 0xdb, 0xff, 0x27, 0x2f, 0x71, 0x09, 0xed, 0xf9, 0x33, 0xbc, 0x75, 0x42, 0xbd, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2552 = { .name = "ecdh_secp224r1_2552", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2552_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2552_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2552_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 2 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2553 for ECDH, tcId is 3 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2553_peerpubkey[] = { 0xe7, 0x3a, 0x6c, 0xa7, 0x2f, 0x3a, 0x2f, 0xae, 0x6e, 0x0a, 0x01, 0xa0, 0xed, 0x03, 0xbf, 0xa3, 0x05, 0x8b, 0x04, 0x57, 0x69, 0x42, 0xea, 0xf0, 0x63, 0x09, 0x5e, 0x62, 0xca, 0x16, 0xfd, 0x31, 0xfa, 0x0f, 0x38, 0xee, 0xb5, 0x92, 0xcb, 0xee, 0xa1, 0x14, 0x77, 0x51, 0xfd, 0xd2, 0xa5, 0xb6, 0xcc, 0x0e, 0xad, 0x40, 0x44, 0x67, 0xa5, 0xb6, }; static const unsigned char ecdh_secp224r1_2553_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2553_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp224r1_2553 = { .name = "ecdh_secp224r1_2553", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2553_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2553_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2553_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2554 for ECDH, tcId is 4 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2554_peerpubkey[] = { 0x57, 0x63, 0xfa, 0x2a, 0xe1, 0x63, 0x67, 0xad, 0x23, 0xd4, 0x71, 0xcc, 0x9a, 0x52, 0x46, 0x6f, 0x0d, 0x81, 0xd8, 0x64, 0xe5, 0x64, 0x0c, 0xef, 0xe3, 0x84, 0x11, 0x45, 0x94, 0xd9, 0xfe, 0xcf, 0xbe, 0xd4, 0xf2, 0x54, 0x50, 0x5a, 0xc8, 0xb4, 0x1d, 0x25, 0x32, 0x05, 0x5a, 0x07, 0xf0, 0x24, 0x1c, 0x48, 0x18, 0xb5, 0x52, 0xcb, 0xb6, 0x36, }; static const unsigned char ecdh_secp224r1_2554_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2554_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_2554 = { .name = "ecdh_secp224r1_2554", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2554_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2554_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2554_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2555 for ECDH, tcId is 5 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2555_peerpubkey[] = { 0x14, 0x2c, 0x1f, 0xd8, 0x0f, 0xa2, 0x12, 0x1a, 0x59, 0xaa, 0x89, 0x81, 0x44, 0x08, 0x4e, 0xc0, 0x33, 0xf7, 0xa5, 0x6a, 0x34, 0xee, 0xe0, 0xb4, 0x99, 0xe2, 0x9a, 0xe5, 0x1c, 0x6d, 0x8c, 0x1b, 0xbb, 0x1e, 0xf2, 0xa7, 0x6d, 0x56, 0x58, 0x99, 0xfe, 0x44, 0xff, 0xc1, 0x20, 0x7d, 0x53, 0x0d, 0x7f, 0x59, 0x8f, 0xb7, 0x7f, 0x4b, 0xb7, 0x6b, }; static const unsigned char ecdh_secp224r1_2555_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2555_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_2555 = { .name = "ecdh_secp224r1_2555", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2555_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2555_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2555_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2556 for ECDH, tcId is 6 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2556_peerpubkey[] = { 0xed, 0x6f, 0x79, 0x3e, 0x10, 0xc8, 0x0d, 0x12, 0xd8, 0x71, 0xcf, 0x89, 0x88, 0x39, 0x9c, 0x48, 0x98, 0xa9, 0xbf, 0x9f, 0xfd, 0x8f, 0x27, 0x39, 0x9f, 0x63, 0xde, 0x25, 0xf0, 0x05, 0x1c, 0xdf, 0x4e, 0xec, 0x7f, 0x36, 0x8f, 0x92, 0x2c, 0xfc, 0xd9, 0x48, 0x89, 0x3c, 0xec, 0xa0, 0xc9, 0x2e, 0x54, 0x0c, 0xc4, 0x36, 0x7a, 0x99, 0xa6, 0x6a, }; static const unsigned char ecdh_secp224r1_2556_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2556_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_2556 = { .name = "ecdh_secp224r1_2556", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2556_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2556_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2556_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2557 for ECDH, tcId is 7 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2557_peerpubkey[] = { 0x08, 0xfc, 0xfc, 0x1a, 0x63, 0xc8, 0x28, 0x60, 0xbe, 0x12, 0xe4, 0x13, 0x74, 0x33, 0xdf, 0xc4, 0x0b, 0xe9, 0xac, 0xdd, 0x24, 0x5f, 0x9a, 0x8c, 0x4e, 0x56, 0xbe, 0x61, 0xa3, 0x85, 0xfc, 0x09, 0xf8, 0x08, 0x38, 0x33, 0x83, 0xf4, 0xb1, 0xd0, 0xd5, 0x36, 0x5b, 0x6e, 0x5d, 0xcf, 0xac, 0xdc, 0x19, 0xbc, 0x7b, 0xcf, 0xed, 0x22, 0x12, 0x74, }; static const unsigned char ecdh_secp224r1_2557_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2557_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2557 = { .name = "ecdh_secp224r1_2557", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2557_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2557_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2557_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2558 for ECDH, tcId is 8 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2558_peerpubkey[] = { 0xd8, 0x83, 0xed, 0x77, 0xf1, 0x86, 0x1e, 0x87, 0x12, 0x80, 0x0d, 0x31, 0xdf, 0x67, 0x88, 0x8f, 0xe3, 0x9f, 0x15, 0x0c, 0x79, 0xa2, 0x7a, 0xa8, 0x8c, 0xae, 0xda, 0x6b, 0x18, 0x0f, 0x3f, 0x62, 0x3e, 0x2f, 0xf3, 0xab, 0x53, 0x70, 0xcf, 0x81, 0x79, 0x16, 0x5b, 0x08, 0x5a, 0xf3, 0xdd, 0x45, 0x02, 0x85, 0x0c, 0x01, 0x04, 0xca, 0xed, 0x9a, }; static const unsigned char ecdh_secp224r1_2558_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2558_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224r1_2558 = { .name = "ecdh_secp224r1_2558", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2558_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2558_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2558_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2559 for ECDH, tcId is 9 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2559_peerpubkey[] = { 0x2b, 0x8b, 0x27, 0x9b, 0x85, 0xee, 0x3f, 0x3d, 0x2c, 0x0a, 0xbe, 0xb3, 0x6f, 0xdf, 0xc5, 0xaa, 0xd6, 0x15, 0x7d, 0x65, 0x2d, 0x26, 0x48, 0x93, 0x81, 0xa3, 0x2c, 0xd7, 0x32, 0x24, 0xbd, 0x75, 0x7e, 0xf7, 0x94, 0xac, 0xc9, 0x2b, 0x0b, 0x3b, 0x9e, 0x79, 0x90, 0x61, 0x8b, 0xb3, 0x43, 0xa9, 0xa0, 0x9b, 0xdb, 0x9d, 0x36, 0x16, 0xef, 0xf6, }; static const unsigned char ecdh_secp224r1_2559_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2559_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_2559 = { .name = "ecdh_secp224r1_2559", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2559_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2559_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2559_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2560 for ECDH, tcId is 10 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2560_peerpubkey[] = { 0x8b, 0xd5, 0xf0, 0x33, 0x91, 0xee, 0xea, 0xe1, 0x74, 0x4e, 0x8f, 0xc5, 0x3d, 0x31, 0x4e, 0xff, 0xfa, 0xfa, 0x4d, 0x3f, 0xa4, 0xf1, 0xb9, 0x5c, 0x33, 0x88, 0xa9, 0xcd, 0x7c, 0x86, 0x35, 0x8b, 0x27, 0x31, 0x19, 0xc5, 0x37, 0x13, 0x3e, 0xb5, 0x5e, 0x79, 0xc6, 0xac, 0x51, 0x0b, 0x10, 0x98, 0x0b, 0x37, 0x9b, 0x91, 0x9c, 0xcf, 0x2e, 0x2f, }; static const unsigned char ecdh_secp224r1_2560_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2560_sharedsecret[] = { 0x0a, 0x15, 0xc1, 0x12, 0xff, 0x78, 0x4b, 0x14, 0x45, 0xe8, 0x89, 0xf9, 0x55, 0xbe, 0x7e, 0x3f, 0xfd, 0xf4, 0x51, 0xa2, 0xc0, 0xe7, 0x6a, 0xb5, 0xcb, 0x32, 0xcf, 0x41, }; static const wycheproof_ecdh_test ecdh_secp224r1_2560 = { .name = "ecdh_secp224r1_2560", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2560_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2560_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2560_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2561 for ECDH, tcId is 11 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2561_peerpubkey[] = { 0xce, 0x96, 0x31, 0xb6, 0xa1, 0x62, 0x27, 0x77, 0x86, 0x25, 0xc8, 0xe5, 0x42, 0x1a, 0xe0, 0x83, 0xcd, 0xd9, 0x13, 0xab, 0xef, 0xde, 0x01, 0xdb, 0xe6, 0x9f, 0x6c, 0x2b, 0x95, 0x38, 0x6a, 0xff, 0x2b, 0x48, 0x3b, 0x2c, 0x47, 0x15, 0x1c, 0xfa, 0xab, 0xfd, 0x00, 0x06, 0x14, 0xc6, 0x83, 0xce, 0x2e, 0x17, 0x78, 0x22, 0x1a, 0xe4, 0x2c, 0x1b, }; static const unsigned char ecdh_secp224r1_2561_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2561_sharedsecret[] = { 0x62, 0x98, 0x9e, 0xaa, 0xa2, 0x6a, 0x16, 0xf0, 0x73, 0x30, 0xc3, 0xc5, 0x1e, 0x0a, 0x46, 0x31, 0xfd, 0x01, 0x6b, 0xfc, 0xed, 0xe2, 0x65, 0x52, 0x81, 0x6a, 0xee, 0x39, }; static const wycheproof_ecdh_test ecdh_secp224r1_2561 = { .name = "ecdh_secp224r1_2561", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2561_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2561_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2561_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2562 for ECDH, tcId is 12 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2562_peerpubkey[] = { 0x1f, 0x44, 0x1c, 0x98, 0xed, 0xa9, 0x56, 0xa6, 0xa7, 0xfd, 0xbf, 0xd8, 0xd2, 0x19, 0x10, 0x86, 0x0a, 0xb5, 0x9d, 0x16, 0xc3, 0xe5, 0x2f, 0x8e, 0x7f, 0xad, 0x6c, 0xa5, 0xdf, 0x61, 0xa5, 0x5f, 0xc5, 0x08, 0xfc, 0x04, 0x99, 0xc5, 0x54, 0x92, 0xf1, 0xe8, 0x7b, 0xb2, 0xfa, 0xa0, 0xcb, 0x41, 0x70, 0xb7, 0x9f, 0x3a, 0x85, 0xec, 0x2f, 0x3d, }; static const unsigned char ecdh_secp224r1_2562_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2562_sharedsecret[] = { 0x66, 0x1a, 0xc9, 0x58, 0xc0, 0xfe, 0xbb, 0xc7, 0x18, 0xcc, 0xf3, 0x9c, 0xef, 0xc6, 0xb6, 0x6c, 0x42, 0x31, 0xfb, 0xb9, 0xa7, 0x6f, 0x35, 0x22, 0x8a, 0x3b, 0xf5, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp224r1_2562 = { .name = "ecdh_secp224r1_2562", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2562_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2562_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2562_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2563 for ECDH, tcId is 13 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2563_peerpubkey[] = { 0xbe, 0x74, 0x58, 0x3c, 0xb9, 0xd3, 0xa0, 0x5a, 0xe5, 0x49, 0x23, 0x62, 0x4e, 0x47, 0x8a, 0x32, 0x9a, 0x69, 0x7d, 0x84, 0x2d, 0xfa, 0xe3, 0x31, 0x41, 0xc8, 0x44, 0xd7, 0xd9, 0xba, 0x4f, 0xc9, 0x6e, 0x0f, 0xe7, 0x16, 0xac, 0x05, 0x42, 0xe8, 0x73, 0x68, 0x66, 0x2f, 0xc2, 0xf0, 0xcb, 0x9b, 0x0a, 0xe5, 0x79, 0x36, 0xdd, 0xec, 0x71, 0x90, }; static const unsigned char ecdh_secp224r1_2563_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2563_sharedsecret[] = { 0x6d, 0x7e, 0x41, 0x82, 0x1a, 0xbe, 0x10, 0x94, 0xd4, 0x30, 0x23, 0x79, 0x23, 0xd2, 0xa5, 0x0d, 0xe3, 0x17, 0x68, 0xab, 0x51, 0xb1, 0x2d, 0xce, 0x8a, 0x09, 0xe3, 0x4c, }; static const wycheproof_ecdh_test ecdh_secp224r1_2563 = { .name = "ecdh_secp224r1_2563", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2563_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2563_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2563_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2564 for ECDH, tcId is 14 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2564_peerpubkey[] = { 0xa2, 0x81, 0xad, 0x99, 0x2b, 0x36, 0x35, 0x97, 0xac, 0x93, 0xff, 0x0d, 0xe8, 0xab, 0x1f, 0x7e, 0x51, 0xa6, 0x67, 0x2d, 0xcb, 0xb5, 0x8f, 0x9d, 0x73, 0x9b, 0xa4, 0x30, 0xce, 0x01, 0x92, 0x87, 0x40, 0x38, 0xda, 0xef, 0xc3, 0x13, 0x0e, 0xec, 0x65, 0x81, 0x1c, 0x72, 0x55, 0xda, 0x70, 0xfe, 0xa6, 0x5c, 0x10, 0x03, 0xf6, 0x89, 0x2f, 0xaa, }; static const unsigned char ecdh_secp224r1_2564_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2564_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2564 = { .name = "ecdh_secp224r1_2564", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2564_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2564_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2564_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2565 for ECDH, tcId is 15 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2565_peerpubkey[] = { 0xbe, 0x3e, 0x22, 0x13, 0x3f, 0x51, 0x20, 0x3f, 0x63, 0x1b, 0x81, 0xdd, 0xe8, 0xc0, 0x20, 0xcd, 0xea, 0x5d, 0xaa, 0x1f, 0x99, 0xcf, 0xc0, 0x5c, 0x88, 0xfa, 0xd2, 0xdc, 0x0f, 0x24, 0x37, 0x98, 0xd6, 0xe7, 0x2d, 0x1d, 0xe9, 0xe3, 0xcd, 0xca, 0x41, 0x44, 0xe0, 0xa6, 0xc0, 0xf2, 0xa5, 0x84, 0xd0, 0x75, 0x89, 0x00, 0x69, 0x72, 0xc1, 0x97, }; static const unsigned char ecdh_secp224r1_2565_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2565_sharedsecret[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, }; static const wycheproof_ecdh_test ecdh_secp224r1_2565 = { .name = "ecdh_secp224r1_2565", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2565_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2565_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2565_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2566 for ECDH, tcId is 16 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2566_peerpubkey[] = { 0xaf, 0x14, 0x54, 0x7c, 0x20, 0xaf, 0xbd, 0x91, 0xbf, 0xe6, 0x4e, 0xa0, 0x3d, 0x45, 0xa7, 0x6a, 0x71, 0x24, 0x1f, 0x23, 0x52, 0x0e, 0xf8, 0x97, 0xff, 0x91, 0xef, 0xf1, 0xb5, 0x4c, 0xa6, 0xca, 0x8c, 0x25, 0xfd, 0x73, 0x85, 0x2e, 0xc6, 0x65, 0x46, 0x17, 0x43, 0x4e, 0xff, 0x7f, 0x02, 0x25, 0x68, 0x4d, 0x4d, 0xea, 0x7a, 0x4f, 0x8a, 0x97, }; static const unsigned char ecdh_secp224r1_2566_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2566_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2566 = { .name = "ecdh_secp224r1_2566", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2566_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2566_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2566_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2567 for ECDH, tcId is 17 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2567_peerpubkey[] = { 0xb1, 0xe4, 0x84, 0x92, 0x50, 0x18, 0x72, 0x99, 0x26, 0xac, 0xda, 0x56, 0xff, 0x3e, 0x2f, 0x6c, 0x1e, 0x7e, 0x8f, 0x16, 0x2b, 0x17, 0x8d, 0x8e, 0x8a, 0xfb, 0x45, 0x56, 0x4f, 0xce, 0xaa, 0x6d, 0xa5, 0xd9, 0x98, 0xfe, 0x26, 0xb6, 0xb2, 0x6a, 0x05, 0x51, 0x69, 0x06, 0x3a, 0x5a, 0xb6, 0x90, 0x88, 0x52, 0xca, 0x8b, 0x54, 0xe2, 0xde, 0x6c, }; static const unsigned char ecdh_secp224r1_2567_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2567_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2567 = { .name = "ecdh_secp224r1_2567", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2567_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2567_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2567_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2568 for ECDH, tcId is 18 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2568_peerpubkey[] = { 0x93, 0x7e, 0xb0, 0x9f, 0xb1, 0x45, 0xc8, 0x82, 0x9c, 0xb7, 0xdf, 0x20, 0xa4, 0xcb, 0xee, 0xd3, 0x96, 0x79, 0x13, 0x73, 0xde, 0x27, 0x78, 0x71, 0xd6, 0xc5, 0xf9, 0xcc, 0x3b, 0x5b, 0x4f, 0xd5, 0x64, 0x64, 0xa7, 0x1f, 0xc4, 0xa2, 0xa6, 0xaf, 0x3b, 0xd2, 0x51, 0x95, 0x2b, 0xff, 0xa8, 0x29, 0x48, 0x9e, 0x68, 0xa8, 0xd0, 0x6f, 0x96, 0xb6, }; static const unsigned char ecdh_secp224r1_2568_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf9, 0x20, 0x1b, 0x56, 0x75, 0x80, 0x34, 0xd2, 0x00, 0x9b, 0xe6, 0x4b, 0x0a, 0xb7, 0xc0, 0x2d, 0x7e, 0x39, 0x8c, 0xac, 0x96, 0x65, 0xd6, }; static const unsigned char ecdh_secp224r1_2568_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2568 = { .name = "ecdh_secp224r1_2568", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2568_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2568_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2568_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 18 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2569 for ECDH, tcId is 19 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2569_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x7c, 0xac, 0x26, 0x9c, 0x67, 0xbd, 0x55, 0xea, 0x14, 0xef, 0xff, 0x4e, 0xad, 0xef, 0xe5, 0xe7, 0x49, 0x78, 0x51, 0x4a, 0xf1, 0x4c, 0x88, 0xfa, 0xb4, 0x6e, 0xc0, 0x46, }; static const unsigned char ecdh_secp224r1_2569_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2569_sharedsecret[] = { 0x3f, 0xa0, 0xb9, 0xff, 0x70, 0xb8, 0x84, 0xf9, 0xf5, 0x7b, 0xb8, 0x4f, 0x7a, 0x95, 0x32, 0xd9, 0x3f, 0x6b, 0xa8, 0x03, 0xf8, 0x9d, 0xd8, 0xff, 0x00, 0x81, 0x77, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2569 = { .name = "ecdh_secp224r1_2569", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2569_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2569_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2569_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 19 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2570 for ECDH, tcId is 20 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2570_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x2e, 0xa2, 0xf4, 0x91, 0x7b, 0xdf, 0xdb, 0x00, 0x83, 0x06, 0xcc, 0x10, 0xa1, 0x8e, 0x25, 0x57, 0x63, 0x3b, 0xa8, 0x61, 0x00, 0x18, 0x29, 0xdc, 0xbf, 0xb9, 0x6f, 0xba, }; static const unsigned char ecdh_secp224r1_2570_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2570_sharedsecret[] = { 0xbe, 0x1d, 0xed, 0x8c, 0xb7, 0xff, 0x8a, 0x58, 0x51, 0x81, 0xf9, 0x6d, 0x68, 0x1e, 0x31, 0xb3, 0x32, 0xfe, 0x27, 0xdc, 0xae, 0x92, 0x2d, 0xca, 0x23, 0x10, 0x30, 0x0d, }; static const wycheproof_ecdh_test ecdh_secp224r1_2570 = { .name = "ecdh_secp224r1_2570", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2570_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2570_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2570_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 20 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2571 for ECDH, tcId is 21 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2571_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x73, 0xca, 0x5f, 0x8f, 0x10, 0x49, 0x97, 0xa2, 0x39, 0x9e, 0x0c, 0x7f, 0x25, 0xe7, 0x2a, 0x75, 0xec, 0x29, 0xfc, 0x45, 0x42, 0x53, 0x3d, 0x3f, 0xea, 0x89, 0xa3, 0x3a, }; static const unsigned char ecdh_secp224r1_2571_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2571_sharedsecret[] = { 0xa2, 0xe8, 0x6a, 0x26, 0x0e, 0x13, 0x51, 0x59, 0x18, 0xa0, 0xca, 0xfd, 0xd8, 0x78, 0x55, 0xf2, 0x31, 0xb5, 0x62, 0x4c, 0x56, 0x0f, 0x97, 0x61, 0x59, 0xe0, 0x6a, 0x75, }; static const wycheproof_ecdh_test ecdh_secp224r1_2571 = { .name = "ecdh_secp224r1_2571", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2571_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2571_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2571_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 21 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2572 for ECDH, tcId is 22 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2572_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xe6, 0x80, 0x5f, 0x59, 0xb1, 0x9b, 0x0d, 0xd3, 0x89, 0x45, 0x2a, 0x1d, 0x4a, 0x42, 0x0b, 0xfe, 0xb6, 0xc3, 0x69, 0xcf, 0x6f, 0xed, 0x5b, 0x12, 0xe6, 0xe6, 0x54, }; static const unsigned char ecdh_secp224r1_2572_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2572_sharedsecret[] = { 0x31, 0xef, 0x7c, 0x8d, 0x10, 0x40, 0x4a, 0x00, 0x46, 0x99, 0x4f, 0x31, 0x3a, 0x70, 0x57, 0x4b, 0x02, 0x7e, 0x87, 0xf9, 0x02, 0x8e, 0xca, 0x24, 0x2c, 0x1b, 0x5b, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp224r1_2572 = { .name = "ecdh_secp224r1_2572", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2572_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2572_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2572_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 22 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2573 for ECDH, tcId is 23 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2573_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x77, 0xc5, 0xcf, 0xa4, 0xe2, 0xc3, 0x84, 0x93, 0x8d, 0x48, 0xbd, 0x8d, 0xd9, 0x8f, 0x54, 0xc8, 0x6b, 0x27, 0x9f, 0x1d, 0xf8, 0xc0, 0xa1, 0xf6, 0x69, 0x24, 0x39, 0xc9, }; static const unsigned char ecdh_secp224r1_2573_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2573_sharedsecret[] = { 0xd1, 0x97, 0x6a, 0x8e, 0xf5, 0xf5, 0x4f, 0x24, 0xf5, 0xa2, 0x69, 0xad, 0x50, 0x4f, 0xdc, 0xa8, 0x49, 0xfc, 0x9c, 0x28, 0x58, 0x7b, 0xa2, 0x94, 0xef, 0x26, 0x73, 0x96, }; static const wycheproof_ecdh_test ecdh_secp224r1_2573 = { .name = "ecdh_secp224r1_2573", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2573_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2573_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2573_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 23 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2574 for ECDH, tcId is 24 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2574_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x01, 0xf0, 0x82, 0x81, 0x36, 0x01, 0x6b, 0xb9, 0x74, 0x45, 0x46, 0x1b, 0xc5, 0x9f, 0x21, 0x75, 0xd8, 0xd2, 0x35, 0x57, 0xd6, 0xb9, 0x38, 0x1f, 0x26, 0x13, 0x6e, 0x3d, }; static const unsigned char ecdh_secp224r1_2574_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2574_sharedsecret[] = { 0xce, 0x78, 0x90, 0xd1, 0x08, 0xdd, 0xb2, 0xe5, 0x47, 0x4e, 0x64, 0x17, 0xfc, 0xf7, 0xa9, 0xf2, 0xb3, 0xbd, 0x01, 0x88, 0x16, 0x06, 0x2f, 0x48, 0x35, 0x26, 0x0d, 0xc8, }; static const wycheproof_ecdh_test ecdh_secp224r1_2574 = { .name = "ecdh_secp224r1_2574", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2574_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2574_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2574_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 24 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2575 for ECDH, tcId is 25 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2575_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x2d, 0x8a, 0xcc, 0xa6, 0xf1, 0x99, 0xd4, 0xa9, 0x4b, 0x93, 0x3b, 0xa1, 0xaa, 0x71, 0x3a, 0x7d, 0xeb, 0xde, 0x8a, 0xc5, 0x7b, 0x92, 0x8f, 0x59, 0x6a, 0xe6, 0x6a, 0x66, }; static const unsigned char ecdh_secp224r1_2575_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2575_sharedsecret[] = { 0x30, 0xb6, 0xff, 0x6e, 0x80, 0x51, 0xda, 0xe5, 0x1e, 0x4f, 0xe3, 0x4b, 0x2d, 0x9a, 0x0b, 0x18, 0x79, 0x15, 0x3e, 0x00, 0x7e, 0xb0, 0xb5, 0xbd, 0xf1, 0x79, 0x1a, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp224r1_2575 = { .name = "ecdh_secp224r1_2575", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2575_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2575_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2575_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 25 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2576 for ECDH, tcId is 26 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2576_peerpubkey[] = { 0x0a, 0x15, 0xc1, 0x12, 0xff, 0x78, 0x4b, 0x14, 0x45, 0xe8, 0x89, 0xf9, 0x55, 0xbe, 0x7e, 0x3f, 0xfd, 0xf4, 0x51, 0xa2, 0xc0, 0xe7, 0x6a, 0xb5, 0xcb, 0x32, 0xcf, 0x41, 0x3d, 0x4d, 0xf9, 0x73, 0xc5, 0x63, 0xc6, 0xde, 0xcd, 0xd4, 0x35, 0xe4, 0xf8, 0x64, 0x55, 0x7e, 0x4c, 0x27, 0x30, 0x96, 0xd9, 0x94, 0x1c, 0xa4, 0x26, 0x0a, 0x26, 0x6e, }; static const unsigned char ecdh_secp224r1_2576_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2576_sharedsecret[] = { 0x77, 0xec, 0x66, 0x8a, 0x00, 0xf7, 0x2d, 0x85, 0xaa, 0x52, 0x76, 0x24, 0xab, 0xb1, 0x6c, 0x03, 0x9f, 0xe4, 0x90, 0xd1, 0x7d, 0xd6, 0xc4, 0x55, 0xa1, 0xed, 0x7f, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp224r1_2576 = { .name = "ecdh_secp224r1_2576", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2576_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2576_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2576_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 26 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2577 for ECDH, tcId is 27 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2577_peerpubkey[] = { 0x62, 0x98, 0x9e, 0xaa, 0xa2, 0x6a, 0x16, 0xf0, 0x73, 0x30, 0xc3, 0xc5, 0x1e, 0x0a, 0x46, 0x31, 0xfd, 0x01, 0x6b, 0xfc, 0xed, 0xe2, 0x65, 0x52, 0x81, 0x6a, 0xee, 0x39, 0x38, 0x9e, 0xe9, 0x43, 0x6d, 0x61, 0x6c, 0xab, 0x90, 0x03, 0x29, 0x31, 0xaa, 0x7f, 0xbb, 0xfc, 0xfc, 0x13, 0x30, 0x9f, 0x61, 0xe2, 0x42, 0x3c, 0xc8, 0xda, 0xb9, 0x3c, }; static const unsigned char ecdh_secp224r1_2577_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2577_sharedsecret[] = { 0xa3, 0xf4, 0x32, 0xf6, 0xab, 0xa9, 0xa9, 0x2f, 0x49, 0xa5, 0xea, 0x64, 0xff, 0xe7, 0x05, 0x9a, 0x9d, 0x9b, 0x48, 0x7a, 0x0b, 0x52, 0x23, 0xdd, 0xc9, 0x88, 0x20, 0x8b, }; static const wycheproof_ecdh_test ecdh_secp224r1_2577 = { .name = "ecdh_secp224r1_2577", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2577_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2577_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2577_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 27 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2578 for ECDH, tcId is 28 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2578_peerpubkey[] = { 0x66, 0x1a, 0xc9, 0x58, 0xc0, 0xfe, 0xbb, 0xc7, 0x18, 0xcc, 0xf3, 0x9c, 0xef, 0xc6, 0xb6, 0x6c, 0x42, 0x31, 0xfb, 0xb9, 0xa7, 0x6f, 0x35, 0x22, 0x8a, 0x3b, 0xf5, 0xc3, 0x10, 0x3b, 0x80, 0x40, 0xe3, 0xcb, 0x41, 0x96, 0x6f, 0xc6, 0x4a, 0x68, 0xca, 0xcb, 0x0c, 0x14, 0x05, 0x3f, 0x87, 0xd2, 0x7e, 0x8e, 0xd7, 0xbf, 0x2d, 0x7f, 0xe5, 0x1b, }; static const unsigned char ecdh_secp224r1_2578_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2578_sharedsecret[] = { 0x15, 0x30, 0xfd, 0x9c, 0xaf, 0x03, 0x73, 0x7a, 0xf3, 0x4a, 0x4b, 0xa7, 0x16, 0xb5, 0x58, 0xcb, 0xec, 0xbc, 0x35, 0xd1, 0x84, 0x02, 0x53, 0x5a, 0x0a, 0x14, 0x23, 0x13, }; static const wycheproof_ecdh_test ecdh_secp224r1_2578 = { .name = "ecdh_secp224r1_2578", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2578_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2578_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2578_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 28 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2579 for ECDH, tcId is 29 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2579_peerpubkey[] = { 0x6d, 0x7e, 0x41, 0x82, 0x1a, 0xbe, 0x10, 0x94, 0xd4, 0x30, 0x23, 0x79, 0x23, 0xd2, 0xa5, 0x0d, 0xe3, 0x17, 0x68, 0xab, 0x51, 0xb1, 0x2d, 0xce, 0x8a, 0x09, 0xe3, 0x4c, 0x27, 0x6c, 0xf2, 0x73, 0xd7, 0x5d, 0x36, 0x78, 0x20, 0xdd, 0x55, 0x61, 0x82, 0xde, 0xf0, 0x95, 0x7a, 0xf0, 0xa3, 0x14, 0xf4, 0x8f, 0xed, 0x22, 0x7c, 0x29, 0x8d, 0xc0, }; static const unsigned char ecdh_secp224r1_2579_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2579_sharedsecret[] = { 0xcf, 0xc3, 0x9c, 0xca, 0xcb, 0x94, 0xad, 0x0e, 0x05, 0x52, 0xb2, 0xe4, 0x71, 0x12, 0xf6, 0x0f, 0xbb, 0xe7, 0xae, 0x0d, 0xc3, 0x22, 0x30, 0xb9, 0x27, 0x3d, 0xd2, 0x10, }; static const wycheproof_ecdh_test ecdh_secp224r1_2579 = { .name = "ecdh_secp224r1_2579", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2579_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2579_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2579_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 29 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2580 for ECDH, tcId is 30 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2580_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7d, 0x8d, 0xbc, 0xa3, 0x6c, 0x56, 0xbc, 0xaa, 0xe9, 0x2e, 0x34, 0x75, 0xf7, 0x99, 0x29, 0x4f, 0x30, 0x76, 0x80, 0x38, 0xe8, 0x16, 0xa7, 0xd5, 0xf7, 0xf0, 0x7d, 0x77, }; static const unsigned char ecdh_secp224r1_2580_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2580_sharedsecret[] = { 0x73, 0xbd, 0x63, 0xbd, 0x38, 0x4a, 0x0f, 0xaa, 0xfb, 0x75, 0xcf, 0xed, 0x3e, 0x95, 0xd3, 0x89, 0x2c, 0xba, 0xcf, 0x0d, 0xb1, 0x0f, 0x28, 0x2c, 0x3b, 0x64, 0x47, 0x71, }; static const wycheproof_ecdh_test ecdh_secp224r1_2580 = { .name = "ecdh_secp224r1_2580", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2580_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2580_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2580_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2581 for ECDH, tcId is 31 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2581_peerpubkey[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, 0x74, 0xf1, 0xff, 0x5e, 0xa7, 0xfb, 0xc7, 0x2b, 0x92, 0xf6, 0x1e, 0x06, 0x55, 0x6c, 0x26, 0xba, 0xb8, 0x4c, 0x0b, 0x08, 0x2d, 0xd6, 0x40, 0x0c, 0xa1, 0xc1, 0xeb, 0x6d, }; static const unsigned char ecdh_secp224r1_2581_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2581_sharedsecret[] = { 0x85, 0xb0, 0x79, 0xc6, 0x2e, 0x1f, 0x5b, 0x0f, 0xd6, 0x84, 0x1d, 0xfa, 0x16, 0x02, 0x6e, 0x15, 0xb6, 0x41, 0xf6, 0x5e, 0x13, 0xa1, 0x40, 0x42, 0x56, 0x71, 0x66, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp224r1_2581 = { .name = "ecdh_secp224r1_2581", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2581_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2581_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2581_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2582 for ECDH, tcId is 32 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2582_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x01, 0x26, 0xfd, 0xd5, 0xfc, 0xcd, 0x0b, 0x5a, 0xa7, 0xfd, 0x5b, 0xb5, 0xb1, 0x30, 0x85, 0x84, 0xb3, 0x05, 0x56, 0x24, 0x8c, 0xec, 0x80, 0x20, 0x8a, 0x2f, 0xe9, 0x62, }; static const unsigned char ecdh_secp224r1_2582_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2582_sharedsecret[] = { 0x8a, 0x83, 0x4f, 0xf4, 0x0e, 0x3f, 0xc9, 0xf9, 0xd4, 0x12, 0xa4, 0x81, 0xe1, 0x85, 0x37, 0xea, 0x79, 0x95, 0x36, 0xc5, 0x52, 0x0c, 0x6c, 0x7b, 0xaa, 0xf1, 0x21, 0x66, }; static const wycheproof_ecdh_test ecdh_secp224r1_2582 = { .name = "ecdh_secp224r1_2582", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2582_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2582_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2582_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2583 for ECDH, tcId is 33 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2583_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x20, 0xcf, 0xa2, 0x30, 0x77, 0xac, 0xc9, 0xfb, 0xcb, 0x71, 0x33, 0x9c, 0x65, 0x88, 0x0c, 0xd0, 0xb9, 0x66, 0xb8, 0xa9, 0x49, 0x7e, 0x65, 0xab, 0xed, 0x17, 0xf0, 0xb5, }; static const unsigned char ecdh_secp224r1_2583_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2583_sharedsecret[] = { 0xa0, 0x88, 0x72, 0x69, 0x76, 0x6e, 0x6e, 0xfc, 0xbc, 0x81, 0xd2, 0xb3, 0x8f, 0x2d, 0x46, 0x38, 0x66, 0x3f, 0x12, 0x37, 0x74, 0x68, 0xa2, 0x34, 0x21, 0x04, 0x41, 0x88, }; static const wycheproof_ecdh_test ecdh_secp224r1_2583 = { .name = "ecdh_secp224r1_2583", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2583_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2583_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2583_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2584 for ECDH, tcId is 34 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2584_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x1c, 0x05, 0xac, 0x2d, 0x4f, 0x10, 0xb6, 0x98, 0x77, 0xc3, 0x24, 0x3d, 0x51, 0xf8, 0x87, 0x27, 0x7b, 0x7b, 0xf7, 0x35, 0xc3, 0x26, 0xab, 0x2f, 0x0d, 0x70, 0xda, 0x8c, }; static const unsigned char ecdh_secp224r1_2584_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1f, 0x4e, 0x15, 0xbb, 0xad, 0x38, 0x7b, 0x50, 0x6d, 0xf6, 0x47, 0x98, 0x9e, 0x54, 0x78, 0x16, 0x0b, 0xe8, 0x62, 0xf8, 0xc2, 0x69, 0x69, }; static const unsigned char ecdh_secp224r1_2584_sharedsecret[] = { 0xc6, 0x5d, 0x19, 0x11, 0xbc, 0x07, 0x6a, 0x74, 0x58, 0x8d, 0x87, 0x93, 0xce, 0x7a, 0x0d, 0xca, 0xbf, 0x57, 0x93, 0x46, 0x0c, 0xd2, 0xeb, 0xb0, 0x27, 0x54, 0xa1, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp224r1_2584 = { .name = "ecdh_secp224r1_2584", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2584_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2584_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2584_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2585 for ECDH, tcId is 35 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2585_peerpubkey[] = { 0x3b, 0x58, 0x89, 0x35, 0x2d, 0xdf, 0x74, 0x68, 0xbf, 0x8c, 0x07, 0x29, 0x21, 0x2a, 0xa1, 0xb2, 0xa3, 0xfc, 0xb1, 0xa8, 0x44, 0xb8, 0xbe, 0x91, 0xab, 0xb7, 0x53, 0xd5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2585_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2585_sharedsecret[] = { 0xe9, 0x73, 0xc4, 0x13, 0xcc, 0x7d, 0xd3, 0x4d, 0x4e, 0x36, 0x37, 0x52, 0x2b, 0x2e, 0x03, 0x3c, 0x20, 0x81, 0x54, 0x12, 0xb6, 0x75, 0x74, 0xa1, 0xf2, 0xf6, 0xbd, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2585 = { .name = "ecdh_secp224r1_2585", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2585_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2585_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2585_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 35 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2586 for ECDH, tcId is 36 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2586_peerpubkey[] = { 0xbf, 0x09, 0xe2, 0x68, 0x94, 0x25, 0x55, 0xc7, 0x3c, 0xe9, 0xe0, 0x0d, 0x27, 0x2c, 0x9b, 0x12, 0xbf, 0x0c, 0x3f, 0xc1, 0x3a, 0x63, 0x9a, 0xcc, 0x79, 0x11, 0x67, 0xf6, 0xb0, 0x5d, 0xf0, 0x02, 0x3c, 0x9b, 0xd4, 0x1d, 0x0b, 0x0c, 0x46, 0x18, 0x54, 0x58, 0x2d, 0x06, 0x01, 0x18, 0x22, 0x13, 0xf2, 0x21, 0x9d, 0x44, 0xea, 0x44, 0x91, 0x4a, }; static const unsigned char ecdh_secp224r1_2586_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2586_sharedsecret[] = { 0xec, 0x85, 0x6e, 0x80, 0x78, 0x08, 0xa9, 0xc5, 0x33, 0x2e, 0x88, 0x67, 0x59, 0xe0, 0x3f, 0x01, 0xbe, 0x02, 0x43, 0x7c, 0xfe, 0x02, 0x14, 0x61, 0x3e, 0x4e, 0x7d, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2586 = { .name = "ecdh_secp224r1_2586", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2586_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2586_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2586_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 36 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2587 for ECDH, tcId is 37 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2587_peerpubkey[] = { 0x7b, 0x66, 0x4c, 0xff, 0x2e, 0xef, 0x0a, 0x4f, 0x7d, 0xce, 0x24, 0x78, 0x01, 0x13, 0x43, 0x2f, 0x66, 0xfe, 0xb2, 0x5c, 0xb0, 0x93, 0x1d, 0x03, 0x3d, 0x63, 0x91, 0x0f, 0x54, 0x8e, 0xe5, 0x14, 0xf6, 0xfd, 0xf1, 0xcb, 0x6f, 0x57, 0x09, 0x58, 0x1c, 0x19, 0x7d, 0x76, 0xa5, 0xeb, 0x21, 0x8a, 0xfa, 0xed, 0x19, 0xf2, 0x05, 0xf4, 0xab, 0x80, }; static const unsigned char ecdh_secp224r1_2587_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2587_sharedsecret[] = { 0x91, 0xd4, 0x24, 0xe1, 0x22, 0xc9, 0xc0, 0x17, 0x20, 0xbb, 0xed, 0x6b, 0x53, 0xec, 0x1b, 0x37, 0xa8, 0x69, 0x96, 0xfa, 0x4f, 0xcf, 0x74, 0xbf, 0xd3, 0x0f, 0x72, 0x3d, }; static const wycheproof_ecdh_test ecdh_secp224r1_2587 = { .name = "ecdh_secp224r1_2587", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2587_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2587_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2587_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 37 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2588 for ECDH, tcId is 38 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2588_peerpubkey[] = { 0x5a, 0x2b, 0x3e, 0xc1, 0x05, 0x33, 0x90, 0x55, 0x0b, 0x58, 0x75, 0x57, 0x71, 0x2b, 0xcc, 0x0b, 0xf8, 0x56, 0x54, 0xd2, 0x30, 0x99, 0x42, 0x01, 0x54, 0x87, 0x7e, 0xc4, 0x13, 0x83, 0x22, 0xca, 0x02, 0xe5, 0xfc, 0xea, 0xe8, 0x70, 0x22, 0x7a, 0x43, 0xae, 0x89, 0x82, 0xb6, 0x72, 0x76, 0xf6, 0xd8, 0xf1, 0xdd, 0x7e, 0x12, 0x69, 0x24, 0x74, }; static const unsigned char ecdh_secp224r1_2588_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2588_sharedsecret[] = { 0x01, 0x28, 0x79, 0xa1, 0xff, 0x45, 0x6a, 0xcb, 0x87, 0x26, 0x45, 0x58, 0x36, 0xbc, 0x4f, 0x50, 0x4c, 0x1b, 0xd7, 0x99, 0xa4, 0xd9, 0x6f, 0x51, 0x4b, 0x37, 0x30, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_2588 = { .name = "ecdh_secp224r1_2588", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2588_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2588_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2588_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 38 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2589 for ECDH, tcId is 39 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2589_peerpubkey[] = { 0xfc, 0x22, 0x9b, 0xb1, 0xdf, 0x3e, 0x11, 0x35, 0x1e, 0x7e, 0x42, 0x24, 0xf6, 0x8f, 0x40, 0xc0, 0xd0, 0xe1, 0x94, 0x02, 0x3c, 0x6e, 0x08, 0x40, 0xcd, 0x45, 0xee, 0x5c, 0xa2, 0x42, 0x11, 0x2f, 0xba, 0xb5, 0x73, 0x6e, 0x82, 0x1d, 0xad, 0x26, 0x49, 0x3e, 0x40, 0x06, 0xe2, 0xc6, 0x12, 0x53, 0x42, 0xe7, 0xd9, 0xbc, 0x25, 0x27, 0x28, 0x56, }; static const unsigned char ecdh_secp224r1_2589_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2589_sharedsecret[] = { 0xfd, 0x6e, 0x5e, 0xdb, 0x54, 0xd7, 0xdd, 0x55, 0x4f, 0x87, 0x47, 0xec, 0x87, 0xb8, 0x03, 0x12, 0x58, 0xfc, 0x0b, 0xf1, 0xd2, 0x40, 0x4b, 0x64, 0xdb, 0x45, 0x40, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp224r1_2589 = { .name = "ecdh_secp224r1_2589", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2589_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2589_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2589_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 39 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2590 for ECDH, tcId is 40 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2590_peerpubkey[] = { 0x69, 0xa6, 0x5f, 0x62, 0xd4, 0x15, 0x92, 0x35, 0x80, 0x1a, 0x24, 0x6f, 0x2d, 0x13, 0xe4, 0x5c, 0x89, 0x83, 0xa3, 0x36, 0x2d, 0xa4, 0x80, 0xe7, 0xa5, 0x1d, 0x42, 0xa6, 0x5b, 0x70, 0x47, 0xab, 0xfc, 0x2a, 0x17, 0x9d, 0x94, 0x3b, 0xb1, 0x96, 0xfe, 0xde, 0x7a, 0xc3, 0xad, 0x8a, 0x4f, 0xca, 0xcd, 0x4c, 0x4c, 0xaa, 0x71, 0x7b, 0x6b, 0x26, }; static const unsigned char ecdh_secp224r1_2590_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2590_sharedsecret[] = { 0x16, 0x4e, 0x95, 0xbf, 0xa2, 0xa9, 0xc3, 0xa1, 0xf9, 0x59, 0xfe, 0xb8, 0x87, 0x20, 0xbb, 0x7a, 0x37, 0xf9, 0x88, 0xa0, 0x81, 0x24, 0x63, 0x9d, 0x8a, 0xdf, 0x86, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp224r1_2590 = { .name = "ecdh_secp224r1_2590", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2590_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2590_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2590_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 40 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2591 for ECDH, tcId is 41 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2591_peerpubkey[] = { 0xdc, 0x68, 0xeb, 0x94, 0x55, 0x28, 0xaf, 0x00, 0x51, 0xcb, 0xf2, 0x3e, 0x3e, 0xea, 0x43, 0xb2, 0xbc, 0x4c, 0x72, 0x89, 0x76, 0x23, 0x1e, 0x70, 0x31, 0xe6, 0x3a, 0x27, 0x44, 0xba, 0x65, 0xa4, 0xe1, 0xe3, 0x4e, 0x8e, 0xc5, 0x0c, 0xf7, 0xe8, 0xdf, 0x44, 0x58, 0x58, 0x2b, 0x16, 0x41, 0x3a, 0xb8, 0x3f, 0x56, 0x85, 0x08, 0xc5, 0x90, 0x37, }; static const unsigned char ecdh_secp224r1_2591_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2591_sharedsecret[] = { 0xb0, 0xff, 0xd5, 0x5f, 0xa1, 0x12, 0xaa, 0x48, 0xed, 0xdc, 0x96, 0x0d, 0xb4, 0xa1, 0x20, 0x0d, 0x40, 0x6e, 0x14, 0x4a, 0xac, 0x9e, 0x10, 0x9a, 0xd9, 0x89, 0x2b, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp224r1_2591 = { .name = "ecdh_secp224r1_2591", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2591_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2591_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2591_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 41 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2592 for ECDH, tcId is 42 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2592_peerpubkey[] = { 0x81, 0xc8, 0x93, 0x69, 0xd7, 0xbe, 0x25, 0x29, 0x20, 0xe0, 0x8e, 0x2d, 0x6c, 0x68, 0x41, 0xb8, 0x87, 0xef, 0xb4, 0xfc, 0x74, 0x7d, 0xb3, 0x1d, 0xd1, 0x03, 0x0b, 0x19, 0x19, 0xbf, 0x8c, 0xcb, 0x62, 0x9b, 0x58, 0xfe, 0xa6, 0x23, 0x4e, 0x39, 0x81, 0x20, 0x83, 0xfb, 0x08, 0x33, 0xa0, 0xc9, 0x37, 0xe3, 0x48, 0xed, 0xa2, 0x2e, 0xa0, 0xc0, }; static const unsigned char ecdh_secp224r1_2592_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2592_sharedsecret[] = { 0xd6, 0xab, 0x45, 0x67, 0xef, 0xf2, 0x12, 0x77, 0x28, 0x4b, 0xe0, 0x82, 0xd9, 0xe0, 0x9e, 0xb0, 0x8b, 0xb8, 0x06, 0x85, 0xf4, 0x92, 0x9d, 0xc3, 0xdc, 0xa4, 0xb3, 0x33, }; static const wycheproof_ecdh_test ecdh_secp224r1_2592 = { .name = "ecdh_secp224r1_2592", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2592_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2592_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2592_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 42 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2593 for ECDH, tcId is 43 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2593_peerpubkey[] = { 0x51, 0xd8, 0x30, 0xf7, 0x92, 0x79, 0x54, 0x09, 0xf1, 0xee, 0x97, 0x2d, 0x3b, 0x94, 0x28, 0x9f, 0x59, 0x20, 0x6f, 0xe0, 0x9e, 0x12, 0x16, 0x69, 0x20, 0x73, 0x9a, 0x73, 0xd2, 0xf1, 0x83, 0x1b, 0x26, 0x67, 0x79, 0x01, 0xbf, 0xaf, 0x83, 0x23, 0xf8, 0x2b, 0x81, 0xe1, 0x01, 0x2d, 0x9d, 0x3f, 0x1c, 0x92, 0x96, 0xc5, 0x9c, 0x97, 0x97, 0x0f, }; static const unsigned char ecdh_secp224r1_2593_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2593_sharedsecret[] = { 0xb4, 0x3d, 0xe1, 0x29, 0x12, 0xb4, 0x0c, 0xbd, 0xd5, 0x6e, 0x30, 0xfd, 0xfe, 0x9a, 0x2c, 0x24, 0xfb, 0x72, 0x68, 0x71, 0x68, 0xc9, 0xcf, 0xe6, 0xb7, 0x47, 0x69, 0x66, }; static const wycheproof_ecdh_test ecdh_secp224r1_2593 = { .name = "ecdh_secp224r1_2593", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2593_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2593_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2593_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 43 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2594 for ECDH, tcId is 44 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2594_peerpubkey[] = { 0xab, 0x63, 0xce, 0x55, 0x14, 0x58, 0x42, 0x14, 0x9f, 0x99, 0x02, 0x3f, 0x37, 0xa0, 0xa8, 0x9b, 0x9f, 0xc4, 0xae, 0x6a, 0x87, 0x8f, 0xda, 0xe8, 0xca, 0xf3, 0x1d, 0x17, 0xff, 0xd0, 0xd5, 0x58, 0x30, 0xee, 0xd4, 0x6f, 0x82, 0x55, 0xf9, 0x4b, 0x6d, 0xcf, 0x98, 0xa2, 0x2f, 0x1f, 0xf2, 0x6d, 0xab, 0xf7, 0x73, 0xd5, 0x56, 0x78, 0x88, 0x81, }; static const unsigned char ecdh_secp224r1_2594_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2594_sharedsecret[] = { 0x58, 0x8e, 0xe0, 0xaf, 0x3b, 0xc6, 0x01, 0x18, 0xa7, 0x15, 0x32, 0x5c, 0x6d, 0x56, 0xc8, 0x50, 0xf7, 0x30, 0x67, 0xdc, 0xb3, 0x7b, 0x75, 0x96, 0xd0, 0xcf, 0xda, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2594 = { .name = "ecdh_secp224r1_2594", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2594_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2594_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2594_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 44 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2595 for ECDH, tcId is 45 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2595_peerpubkey[] = { 0x1d, 0x64, 0x53, 0x5d, 0x54, 0xbf, 0xcc, 0xcb, 0x38, 0x16, 0x5a, 0xcb, 0xfa, 0xc0, 0x1a, 0xe3, 0x3d, 0xb2, 0x0e, 0x80, 0x2c, 0x56, 0x87, 0x34, 0x3c, 0xb2, 0x1b, 0x7e, 0xb5, 0x9d, 0x86, 0xf1, 0x89, 0x2a, 0x97, 0x47, 0x41, 0x92, 0x56, 0x24, 0x47, 0x7e, 0xef, 0x21, 0xf4, 0xe7, 0x2f, 0xa0, 0x4e, 0xe6, 0xce, 0x35, 0xdf, 0xff, 0xe5, 0xf2, }; static const unsigned char ecdh_secp224r1_2595_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2595_sharedsecret[] = { 0x72, 0x19, 0xef, 0x73, 0xac, 0x9e, 0x47, 0xac, 0x2e, 0x03, 0xde, 0xad, 0x23, 0xfa, 0x83, 0x82, 0xae, 0x89, 0x8e, 0x24, 0x15, 0x01, 0x7c, 0xde, 0xb4, 0x73, 0x9f, 0x0f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2595 = { .name = "ecdh_secp224r1_2595", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2595_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2595_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2595_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 45 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2596 for ECDH, tcId is 46 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2596_peerpubkey[] = { 0xd9, 0xd7, 0x84, 0x36, 0xa3, 0xf9, 0xc1, 0xfa, 0x20, 0xe8, 0xc2, 0x31, 0x8e, 0x61, 0xe6, 0x2b, 0x94, 0x62, 0x3e, 0x23, 0xa0, 0xab, 0x74, 0x6c, 0x5a, 0xc0, 0xcb, 0xc3, 0x82, 0x62, 0xbd, 0x66, 0xc1, 0x75, 0x15, 0xd3, 0x04, 0x89, 0x44, 0xda, 0xe4, 0x3b, 0x2b, 0xd6, 0xdd, 0x9d, 0x7c, 0x7a, 0x0f, 0x70, 0x42, 0xde, 0x2d, 0x10, 0x01, 0xc6, }; static const unsigned char ecdh_secp224r1_2596_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2596_sharedsecret[] = { 0x26, 0x7b, 0x06, 0x9a, 0xac, 0x5d, 0x76, 0x8a, 0x72, 0x0a, 0xcc, 0x62, 0xc9, 0x2f, 0x20, 0xb7, 0x86, 0xfc, 0x48, 0xc7, 0xda, 0x42, 0xf1, 0xf5, 0x67, 0x74, 0x24, 0xee, }; static const wycheproof_ecdh_test ecdh_secp224r1_2596 = { .name = "ecdh_secp224r1_2596", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2596_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2596_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2596_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 46 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2597 for ECDH, tcId is 47 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2597_peerpubkey[] = { 0x65, 0xeb, 0x37, 0x50, 0xc6, 0x40, 0x13, 0x39, 0xca, 0xa6, 0x9e, 0xbe, 0x6d, 0xec, 0x86, 0xdf, 0xc4, 0xd7, 0x9b, 0xf6, 0x57, 0xd6, 0x8b, 0xbd, 0xd0, 0x82, 0xc5, 0xa0, 0x3e, 0xb8, 0x1e, 0x85, 0x93, 0x13, 0x52, 0xff, 0x33, 0x8c, 0xcb, 0xc3, 0xa1, 0xd3, 0x32, 0xe2, 0xd8, 0xbc, 0x84, 0x34, 0x2d, 0x51, 0x6d, 0xa0, 0x6b, 0xef, 0x22, 0x0f, }; static const unsigned char ecdh_secp224r1_2597_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2597_sharedsecret[] = { 0xbb, 0xdd, 0x4a, 0xc5, 0x89, 0x0b, 0x9c, 0x04, 0x12, 0xe4, 0xef, 0x31, 0x35, 0xf6, 0x66, 0xe5, 0xb3, 0xdd, 0xb6, 0x58, 0xec, 0x83, 0x76, 0x91, 0xe8, 0x12, 0x9b, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp224r1_2597 = { .name = "ecdh_secp224r1_2597", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2597_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2597_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2597_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 47 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2598 for ECDH, tcId is 48 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2598_peerpubkey[] = { 0xe9, 0x2d, 0x3b, 0xe1, 0x61, 0x45, 0x55, 0xae, 0x17, 0xa9, 0x06, 0x47, 0x97, 0x9f, 0xbb, 0x37, 0x46, 0x8c, 0x55, 0xa1, 0xff, 0xf9, 0xe1, 0x5f, 0x37, 0x6d, 0x49, 0x99, 0x4e, 0x47, 0x0f, 0x51, 0x5b, 0x7b, 0x3f, 0xe5, 0x0c, 0xb5, 0x5d, 0xef, 0x16, 0x14, 0x2d, 0xf5, 0x94, 0xc3, 0xe4, 0x6d, 0x9d, 0x13, 0x54, 0x73, 0x07, 0x78, 0xf9, 0xe8, }; static const unsigned char ecdh_secp224r1_2598_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2598_sharedsecret[] = { 0xf7, 0x93, 0xff, 0x0d, 0x14, 0xbd, 0x76, 0x90, 0x84, 0x0c, 0x73, 0x31, 0x62, 0xb5, 0x89, 0xcd, 0x34, 0x13, 0xd8, 0xc4, 0x1f, 0x44, 0x88, 0xb4, 0x27, 0xda, 0x49, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2598 = { .name = "ecdh_secp224r1_2598", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2598_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2598_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2598_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 48 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2599 for ECDH, tcId is 49 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2599_peerpubkey[] = { 0x3c, 0x92, 0x71, 0x0c, 0x9a, 0x7f, 0x6f, 0x98, 0xbb, 0xec, 0x9d, 0x2a, 0x4f, 0xa6, 0x17, 0xcc, 0x70, 0xe9, 0x6b, 0xc9, 0x6e, 0xcd, 0x45, 0x97, 0xe3, 0x29, 0x14, 0x3f, 0x47, 0x50, 0xa0, 0x27, 0xc6, 0x97, 0x24, 0x59, 0xc0, 0x91, 0xab, 0x02, 0xc0, 0xe2, 0xa3, 0x08, 0x2f, 0xcc, 0xec, 0x42, 0x9a, 0x38, 0xd3, 0x59, 0x6e, 0x7a, 0xff, 0x2b, }; static const unsigned char ecdh_secp224r1_2599_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2599_sharedsecret[] = { 0x56, 0xc7, 0x03, 0xd4, 0x71, 0x62, 0x39, 0xc9, 0x54, 0x10, 0x9b, 0x9b, 0x84, 0x1d, 0xb7, 0x5b, 0x04, 0xa7, 0x90, 0xf1, 0xf7, 0x2a, 0xa9, 0x66, 0xae, 0xce, 0x34, 0x94, }; static const wycheproof_ecdh_test ecdh_secp224r1_2599 = { .name = "ecdh_secp224r1_2599", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2599_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2599_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2599_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 49 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2600 for ECDH, tcId is 50 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2600_peerpubkey[] = { 0x56, 0x8d, 0xfb, 0xfa, 0x42, 0xef, 0xc9, 0x4c, 0xe2, 0x07, 0x32, 0x2e, 0x63, 0x7b, 0x4c, 0x94, 0xf3, 0x7a, 0x56, 0x68, 0xad, 0x23, 0x0e, 0x98, 0x7a, 0x91, 0xd0, 0x48, 0xdc, 0xad, 0xd2, 0x44, 0xfc, 0x05, 0x9c, 0xff, 0xab, 0x5f, 0xa8, 0x82, 0x0a, 0x96, 0x93, 0x53, 0x62, 0x0e, 0x70, 0x8e, 0x85, 0xbd, 0x5e, 0xec, 0x8a, 0x0c, 0x68, 0xec, }; static const unsigned char ecdh_secp224r1_2600_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2600_sharedsecret[] = { 0x78, 0x23, 0xfe, 0x7e, 0xb6, 0x42, 0xd5, 0x09, 0x84, 0xfb, 0x32, 0xf9, 0x11, 0xef, 0x28, 0x94, 0x19, 0xd8, 0x53, 0x30, 0xc3, 0x39, 0x84, 0x23, 0xd0, 0xed, 0xa0, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2600 = { .name = "ecdh_secp224r1_2600", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2600_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2600_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2600_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 50 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2601 for ECDH, tcId is 51 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2601_peerpubkey[] = { 0xec, 0x10, 0x83, 0x7e, 0x49, 0x5b, 0x64, 0x49, 0x04, 0xdb, 0xa5, 0x8d, 0x8d, 0xd8, 0x21, 0x33, 0xc9, 0x05, 0xa2, 0x85, 0xae, 0x7c, 0x2a, 0x06, 0xd5, 0xcc, 0xaf, 0x6b, 0xf0, 0xfb, 0xf0, 0x0d, 0x13, 0xe2, 0x1a, 0x39, 0x9d, 0xc9, 0x5a, 0xe5, 0x52, 0x4a, 0x1a, 0x37, 0x04, 0x41, 0x93, 0xe9, 0x4e, 0x33, 0x00, 0x25, 0x9b, 0x70, 0xe0, 0x58, }; static const unsigned char ecdh_secp224r1_2601_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2601_sharedsecret[] = { 0xf7, 0x01, 0x4d, 0x38, 0xf4, 0x60, 0x83, 0x6a, 0x51, 0x07, 0x5c, 0xce, 0x96, 0x67, 0xb5, 0x6b, 0x88, 0x51, 0xba, 0x19, 0x01, 0x1c, 0x8b, 0x02, 0x74, 0xb7, 0x4a, 0x4b, }; static const wycheproof_ecdh_test ecdh_secp224r1_2601 = { .name = "ecdh_secp224r1_2601", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2601_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2601_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2601_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 51 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2602 for ECDH, tcId is 52 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2602_peerpubkey[] = { 0xbe, 0xe2, 0xf9, 0x35, 0x2f, 0x42, 0xce, 0xeb, 0x3b, 0xf3, 0x10, 0x9e, 0x90, 0xe6, 0x57, 0x8d, 0x0b, 0xd4, 0x88, 0x84, 0x58, 0xdf, 0x7d, 0x17, 0x9d, 0x74, 0x69, 0x77, 0xe5, 0x0e, 0x53, 0x50, 0x3d, 0xee, 0x83, 0xec, 0xa1, 0x82, 0x4a, 0x29, 0x05, 0x66, 0x58, 0x8f, 0xa3, 0x59, 0x16, 0x45, 0xb1, 0xa2, 0xd5, 0x68, 0x61, 0xbd, 0xa7, 0x60, }; static const unsigned char ecdh_secp224r1_2602_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2602_sharedsecret[] = { 0x77, 0x7f, 0x99, 0xf2, 0xbd, 0xaa, 0x72, 0xa1, 0x18, 0x53, 0x88, 0x46, 0x5d, 0xdd, 0xa1, 0xd0, 0x59, 0x87, 0x2a, 0xd0, 0x43, 0xc7, 0xcb, 0x85, 0xb9, 0x4e, 0x28, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp224r1_2602 = { .name = "ecdh_secp224r1_2602", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2602_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2602_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2602_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 52 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2603 for ECDH, tcId is 53 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2603_peerpubkey[] = { 0x54, 0x6f, 0xac, 0xbc, 0xaa, 0x8b, 0x55, 0x1c, 0x51, 0x71, 0x5a, 0x9a, 0xdd, 0x5e, 0xdc, 0x3c, 0x8a, 0x66, 0xdc, 0xc4, 0x7a, 0x62, 0x23, 0xf6, 0x05, 0x61, 0x4c, 0xf7, 0xaf, 0x6d, 0x92, 0xf5, 0xbd, 0xeb, 0xea, 0x73, 0x86, 0x58, 0xa4, 0x2c, 0x62, 0x31, 0xe5, 0x3c, 0x08, 0x23, 0x7c, 0xcf, 0x52, 0xf7, 0x93, 0x99, 0x57, 0x9b, 0x2d, 0xcc, }; static const unsigned char ecdh_secp224r1_2603_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2603_sharedsecret[] = { 0xa1, 0xdb, 0x17, 0x8b, 0x71, 0x6e, 0x51, 0xe0, 0xfa, 0x46, 0xc1, 0xd7, 0x4a, 0x26, 0x03, 0x00, 0x53, 0x26, 0xbc, 0xa7, 0xe8, 0x11, 0x70, 0xd4, 0xb3, 0x3a, 0x3d, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp224r1_2603 = { .name = "ecdh_secp224r1_2603", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2603_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2603_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2603_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 53 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2604 for ECDH, tcId is 54 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2604_peerpubkey[] = { 0x23, 0xb1, 0x81, 0x1f, 0xee, 0x89, 0x1a, 0xdb, 0x33, 0xc8, 0xbf, 0xee, 0x28, 0x99, 0x64, 0xe9, 0x2a, 0x9d, 0x33, 0x58, 0xda, 0xf9, 0x75, 0xd0, 0xef, 0xb7, 0x3e, 0x22, 0x9a, 0x33, 0x32, 0x66, 0x8b, 0x7d, 0x6d, 0xa2, 0x90, 0xa2, 0xed, 0xc9, 0x41, 0xe8, 0xbd, 0x6f, 0x2e, 0x33, 0x74, 0x5f, 0xc6, 0x06, 0x75, 0x6e, 0xdd, 0xc0, 0x13, 0xbb, }; static const unsigned char ecdh_secp224r1_2604_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xdb, 0xdb, 0x99, 0x93, 0xa1, 0x87, 0xa0, 0xe9, 0xb9, 0xf0, 0xde, 0xf0, 0x35, 0xfb, 0xc5, 0x2a, 0xd5, 0x9f, 0xc5, 0x04, 0x21, }; static const unsigned char ecdh_secp224r1_2604_sharedsecret[] = { 0xf4, 0x55, 0xc8, 0x27, 0x34, 0x16, 0x19, 0x95, 0x05, 0x01, 0x98, 0x61, 0x26, 0x6d, 0xdb, 0x9b, 0xcd, 0xe7, 0xbe, 0xe3, 0xc3, 0xf1, 0x5a, 0x98, 0xee, 0x54, 0x60, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp224r1_2604 = { .name = "ecdh_secp224r1_2604", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2604_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2604_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2604_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 54 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2605 for ECDH, tcId is 55 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2605_peerpubkey[] = { 0x58, 0xf5, 0x3d, 0x67, 0x33, 0x24, 0x15, 0xfe, 0x5b, 0x4b, 0x81, 0x99, 0x9f, 0x83, 0x32, 0xfb, 0x6d, 0xcd, 0xb9, 0x65, 0xd9, 0x6d, 0xbc, 0xba, 0xb0, 0xfa, 0xc3, 0x75, 0xf2, 0x9e, 0xfe, 0xf7, 0xab, 0x4d, 0x94, 0xbb, 0x2d, 0x25, 0xd2, 0x52, 0x05, 0xea, 0xe2, 0x9f, 0xe8, 0xd9, 0xa8, 0x5b, 0x81, 0x11, 0x14, 0xa5, 0x0f, 0x6c, 0x68, 0x59, }; static const unsigned char ecdh_secp224r1_2605_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2605_sharedsecret[] = { 0xd3, 0xaf, 0x18, 0x57, 0xac, 0xa1, 0x68, 0x95, 0x14, 0xfc, 0xfe, 0xe8, 0xd8, 0xc4, 0x0b, 0x86, 0x37, 0xd4, 0x04, 0x52, 0xae, 0x35, 0xc4, 0x04, 0xf9, 0xe6, 0x74, 0x94, }; static const wycheproof_ecdh_test ecdh_secp224r1_2605 = { .name = "ecdh_secp224r1_2605", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2605_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2605_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2605_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 55 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2606 for ECDH, tcId is 56 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2606_peerpubkey[] = { 0xf2, 0xd6, 0xe5, 0x8f, 0xcd, 0x3e, 0xd3, 0xf6, 0x56, 0xa9, 0xbc, 0x68, 0x7f, 0xe4, 0xc7, 0x89, 0xba, 0x96, 0x14, 0xd0, 0x35, 0x99, 0x67, 0xbc, 0x04, 0x68, 0xea, 0xbf, 0xa1, 0x65, 0x8a, 0x14, 0xef, 0x06, 0x33, 0xf2, 0x48, 0x5e, 0x29, 0x14, 0x1e, 0x2c, 0x4a, 0x13, 0xbd, 0x32, 0x8e, 0xc9, 0xbf, 0x6a, 0xf4, 0xc7, 0xa7, 0x74, 0x13, 0x1b, }; static const unsigned char ecdh_secp224r1_2606_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2606_sharedsecret[] = { 0x93, 0x3c, 0x38, 0x5d, 0x5f, 0xad, 0xb5, 0x7d, 0xe5, 0x3e, 0x4a, 0x5d, 0x38, 0x51, 0x18, 0xfc, 0xe8, 0x30, 0x43, 0x07, 0x03, 0xc3, 0xf5, 0x85, 0xa5, 0xd4, 0xd0, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp224r1_2606 = { .name = "ecdh_secp224r1_2606", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2606_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2606_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2606_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 56 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2607 for ECDH, tcId is 57 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2607_peerpubkey[] = { 0x02, 0xca, 0x5d, 0x1b, 0x76, 0x38, 0xb7, 0xb8, 0x8a, 0xd0, 0x21, 0x76, 0xbd, 0x10, 0xff, 0x1c, 0xfe, 0x88, 0x12, 0xa6, 0x2f, 0x97, 0x69, 0xa6, 0xd6, 0x2e, 0x0c, 0x6c, 0x78, 0x7b, 0x3e, 0x3b, 0x2a, 0x06, 0x39, 0x40, 0x91, 0x1b, 0xf9, 0x87, 0xfc, 0x38, 0xde, 0xeb, 0xf5, 0x42, 0x40, 0x0b, 0x8b, 0xbd, 0x9d, 0xfe, 0xb7, 0xd9, 0x0a, 0x8a, }; static const unsigned char ecdh_secp224r1_2607_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2607_sharedsecret[] = { 0x75, 0xae, 0xa7, 0x9d, 0x99, 0xe5, 0xc7, 0xed, 0xaa, 0xb0, 0x28, 0x44, 0x43, 0xb5, 0x48, 0x84, 0x33, 0x71, 0xd1, 0xd9, 0xb5, 0x5f, 0x2d, 0x73, 0xa1, 0xa9, 0x09, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2607 = { .name = "ecdh_secp224r1_2607", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2607_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2607_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2607_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 57 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2608 for ECDH, tcId is 58 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2608_peerpubkey[] = { 0xa3, 0x94, 0xd8, 0xbf, 0x9b, 0x47, 0x9e, 0xc3, 0xc7, 0xac, 0x3f, 0xc6, 0xa6, 0x31, 0xd0, 0x1d, 0x57, 0xd3, 0x38, 0xb9, 0xfb, 0x5a, 0x0e, 0xd6, 0xe5, 0x13, 0x0e, 0x05, 0x0c, 0xfc, 0x60, 0x0c, 0xfb, 0x08, 0xe6, 0x77, 0x27, 0xac, 0x5a, 0x33, 0x34, 0x5e, 0xc1, 0xd4, 0x8d, 0x4a, 0x9a, 0x18, 0x51, 0x6c, 0x22, 0x03, 0xac, 0xbd, 0x26, 0x67, }; static const unsigned char ecdh_secp224r1_2608_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2608_sharedsecret[] = { 0x8c, 0x1d, 0x08, 0x50, 0x69, 0x1c, 0xda, 0x75, 0x23, 0xff, 0xcc, 0xf1, 0xcb, 0xa4, 0x4b, 0x4d, 0x47, 0x21, 0x93, 0xe6, 0xa3, 0xbb, 0x07, 0x27, 0xe4, 0x90, 0xa8, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp224r1_2608 = { .name = "ecdh_secp224r1_2608", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2608_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2608_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2608_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 58 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2609 for ECDH, tcId is 59 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2609_peerpubkey[] = { 0x64, 0x2e, 0x26, 0x42, 0x1e, 0x96, 0xfa, 0x88, 0xf9, 0x56, 0xd0, 0x98, 0xac, 0x26, 0xf0, 0x2f, 0x1d, 0x6f, 0xaa, 0x80, 0xe4, 0x60, 0xe7, 0x01, 0xa3, 0x78, 0x9a, 0x66, 0xc3, 0x8d, 0xd9, 0x5c, 0x6b, 0x33, 0xde, 0x87, 0x68, 0xc8, 0x5c, 0xbe, 0x68, 0x79, 0xd0, 0xd7, 0x7e, 0x29, 0xfe, 0x5a, 0x18, 0xb2, 0x6a, 0x35, 0xcb, 0x60, 0xc0, 0xb6, }; static const unsigned char ecdh_secp224r1_2609_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2609_sharedsecret[] = { 0x50, 0xb9, 0xed, 0x4d, 0x99, 0xe2, 0xf2, 0x4e, 0x00, 0x96, 0xea, 0xed, 0xed, 0x0b, 0x55, 0x2c, 0xf8, 0xde, 0xff, 0x5c, 0xa8, 0xf9, 0x76, 0x96, 0x4a, 0xe4, 0x7e, 0x92, }; static const wycheproof_ecdh_test ecdh_secp224r1_2609 = { .name = "ecdh_secp224r1_2609", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2609_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2609_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2609_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 59 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2610 for ECDH, tcId is 60 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2610_peerpubkey[] = { 0xf9, 0x74, 0xd1, 0xcb, 0xbf, 0x41, 0x71, 0xd4, 0x77, 0x3c, 0x3e, 0x84, 0xea, 0xb8, 0x0b, 0xc3, 0xc6, 0xc2, 0x85, 0x8d, 0xad, 0xcf, 0xbd, 0x11, 0xd6, 0x43, 0x16, 0x90, 0x5d, 0xf3, 0x6f, 0xbe, 0x34, 0x5f, 0x28, 0xa3, 0xef, 0x66, 0x31, 0x25, 0x64, 0x94, 0x74, 0xc6, 0xfc, 0x1e, 0xbe, 0x17, 0x5c, 0x38, 0x65, 0xc4, 0x46, 0x9e, 0x19, 0x2b, }; static const unsigned char ecdh_secp224r1_2610_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2610_sharedsecret[] = { 0x56, 0x16, 0xee, 0x3e, 0x63, 0xdf, 0xb4, 0x24, 0xd3, 0x29, 0xc2, 0xb9, 0xb5, 0x0c, 0xf3, 0x78, 0xbb, 0x77, 0xa8, 0xbd, 0x7e, 0x31, 0x4a, 0x24, 0x1b, 0x59, 0x42, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2610 = { .name = "ecdh_secp224r1_2610", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2610_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2610_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2610_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 60 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2611 for ECDH, tcId is 61 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2611_peerpubkey[] = { 0x55, 0x56, 0x1d, 0xb3, 0xcc, 0x8f, 0xb0, 0x8a, 0x71, 0x65, 0x4e, 0xe9, 0x57, 0x3a, 0x1a, 0x36, 0xa4, 0x4f, 0x09, 0x13, 0xca, 0x8a, 0xd7, 0x58, 0x2c, 0xfa, 0xfb, 0xfc, 0x62, 0xb3, 0x1e, 0x5e, 0x78, 0xbe, 0x98, 0xad, 0x8c, 0x8c, 0xea, 0xb4, 0xbb, 0x82, 0xe8, 0xef, 0xc0, 0xac, 0xb2, 0x9f, 0x1a, 0x8d, 0x03, 0x1e, 0xd0, 0x44, 0x04, 0x6c, }; static const unsigned char ecdh_secp224r1_2611_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2611_sharedsecret[] = { 0xb1, 0xda, 0x14, 0x50, 0x7b, 0x5c, 0x05, 0x15, 0x9e, 0x15, 0xf7, 0x7d, 0x08, 0x5c, 0x01, 0x7a, 0xcd, 0x89, 0xf1, 0x58, 0x01, 0x13, 0x57, 0xa9, 0x78, 0x02, 0x85, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp224r1_2611 = { .name = "ecdh_secp224r1_2611", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2611_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2611_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2611_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 61 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2612 for ECDH, tcId is 62 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2612_peerpubkey[] = { 0xa3, 0x63, 0xbc, 0xb9, 0xbd, 0xdd, 0x5d, 0xe8, 0x4a, 0x2f, 0x44, 0x33, 0xc0, 0x39, 0xf7, 0xbe, 0x3f, 0xce, 0x60, 0x57, 0xb0, 0xd3, 0xb4, 0xa3, 0x45, 0x9e, 0x54, 0xa2, 0xba, 0x32, 0x30, 0x28, 0x71, 0xe7, 0xba, 0x5c, 0x3d, 0xd7, 0xec, 0x9b, 0x76, 0x94, 0x6c, 0xdc, 0x70, 0x2c, 0x15, 0xa8, 0xd9, 0xec, 0x0f, 0x4a, 0x04, 0xe7, 0xaf, 0xb6, }; static const unsigned char ecdh_secp224r1_2612_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2612_sharedsecret[] = { 0x2f, 0x1b, 0xd4, 0xa5, 0xa4, 0x97, 0x48, 0x1c, 0x4a, 0x21, 0x22, 0x23, 0x20, 0xff, 0x61, 0xf3, 0x26, 0x74, 0xa9, 0x5d, 0x54, 0x0c, 0xc3, 0xf4, 0xf3, 0xca, 0x58, 0x49, }; static const wycheproof_ecdh_test ecdh_secp224r1_2612 = { .name = "ecdh_secp224r1_2612", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2612_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2612_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2612_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 62 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2613 for ECDH, tcId is 63 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2613_peerpubkey[] = { 0x3a, 0x65, 0x6d, 0x0e, 0x25, 0xbc, 0xe2, 0x72, 0x82, 0xf2, 0x56, 0xb1, 0x21, 0xfb, 0xfc, 0xde, 0x0a, 0x18, 0x0c, 0xcd, 0x7a, 0xa6, 0x01, 0xa5, 0x92, 0x9f, 0xc7, 0x40, 0x02, 0xf8, 0x9e, 0x45, 0xb4, 0xdc, 0xb8, 0x73, 0xc5, 0x6d, 0xa5, 0xd1, 0xa2, 0x8f, 0xbc, 0xa3, 0x3a, 0x12, 0x61, 0x77, 0xb2, 0x17, 0xa0, 0x98, 0xe0, 0x95, 0x2e, 0x62, }; static const unsigned char ecdh_secp224r1_2613_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2613_sharedsecret[] = { 0x8c, 0x80, 0x7d, 0x65, 0xba, 0x7b, 0x9f, 0xd3, 0x06, 0x1d, 0xff, 0xef, 0x26, 0xc0, 0x25, 0xa8, 0x95, 0x24, 0xa2, 0x6b, 0x94, 0x2e, 0xdd, 0x3a, 0x98, 0x4f, 0xe5, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp224r1_2613 = { .name = "ecdh_secp224r1_2613", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2613_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2613_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2613_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 63 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2614 for ECDH, tcId is 64 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2614_peerpubkey[] = { 0xbf, 0x5f, 0x49, 0xba, 0x00, 0x86, 0xee, 0xc2, 0x89, 0xb0, 0x68, 0xb7, 0x83, 0x43, 0x8e, 0xf2, 0x4b, 0x6f, 0x28, 0x13, 0x0b, 0xb1, 0xed, 0x96, 0x9e, 0xf8, 0xb0, 0x41, 0xf1, 0x1b, 0x0d, 0xe9, 0x5f, 0x15, 0xed, 0xcd, 0x83, 0x5f, 0x01, 0xba, 0xb1, 0xf5, 0xfa, 0xaa, 0x17, 0x49, 0xc2, 0xca, 0x4f, 0x16, 0xa7, 0xd9, 0x9d, 0x91, 0x6f, 0xf4, }; static const unsigned char ecdh_secp224r1_2614_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2614_sharedsecret[] = { 0x8f, 0xda, 0x76, 0xf4, 0xd1, 0x24, 0xe6, 0x72, 0x7f, 0x85, 0x5e, 0x5f, 0x49, 0x21, 0xcc, 0x05, 0xc4, 0x8e, 0x2a, 0x8e, 0xd0, 0xfe, 0xe7, 0xc7, 0x5d, 0x6a, 0x80, 0x47, }; static const wycheproof_ecdh_test ecdh_secp224r1_2614 = { .name = "ecdh_secp224r1_2614", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2614_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2614_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2614_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 64 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2615 for ECDH, tcId is 65 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2615_peerpubkey[] = { 0xa5, 0x72, 0x32, 0x56, 0x0d, 0x9d, 0x60, 0x46, 0x55, 0x18, 0x1f, 0x77, 0x58, 0x59, 0xb0, 0x72, 0x3d, 0x4e, 0x01, 0xa4, 0xc8, 0x67, 0x84, 0x4e, 0xb9, 0xd8, 0x1d, 0xab, 0xb5, 0xd1, 0x95, 0x07, 0xbb, 0xe9, 0xcd, 0xa3, 0x34, 0x6b, 0xad, 0x7c, 0x18, 0x4d, 0xaa, 0x43, 0x2e, 0x7f, 0x79, 0x4a, 0x5b, 0x9b, 0x8b, 0x8d, 0x4e, 0x55, 0xbe, 0x3a, }; static const unsigned char ecdh_secp224r1_2615_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0xaf, 0x3f, 0xb5, 0x0d, 0x54, 0xc5, 0x54, 0xa6, 0x7b, 0xd7, 0x5d, 0x25, 0xca, 0x79, 0x6f, 0x04, 0x86, 0xe3, 0xfa, 0x84, 0xf9, }; static const unsigned char ecdh_secp224r1_2615_sharedsecret[] = { 0xda, 0xf3, 0x5b, 0xb7, 0xbf, 0x3a, 0x05, 0x6b, 0xb6, 0x2b, 0xb0, 0x1b, 0xa0, 0x0f, 0x58, 0x1c, 0x10, 0x7f, 0x64, 0xde, 0x85, 0x84, 0x2b, 0x3a, 0x49, 0xbc, 0x2a, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp224r1_2615 = { .name = "ecdh_secp224r1_2615", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2615_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2615_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2615_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 65 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2616 for ECDH, tcId is 66 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2616_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2616_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp224r1_2616_sharedsecret[] = { 0xe7, 0x1f, 0x21, 0x57, 0xbf, 0xe3, 0x76, 0x97, 0xea, 0x51, 0x93, 0xd4, 0x73, 0x2d, 0xcc, 0x6e, 0x54, 0x12, 0xfa, 0x9d, 0x38, 0x38, 0x7e, 0xac, 0xd3, 0x91, 0xc1, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_2616 = { .name = "ecdh_secp224r1_2616", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2616_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2616_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2616_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 66 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2617 for ECDH, tcId is 67 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2617_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2617_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224r1_2617_sharedsecret[] = { 0xfa, 0x26, 0x64, 0x71, 0x7c, 0x7f, 0xa0, 0x16, 0x1e, 0xc2, 0xc6, 0x69, 0xb2, 0xc0, 0x98, 0x6c, 0xdc, 0x20, 0x45, 0x6a, 0x6e, 0x54, 0x06, 0x30, 0x2b, 0xb5, 0x3c, 0x77, }; static const wycheproof_ecdh_test ecdh_secp224r1_2617 = { .name = "ecdh_secp224r1_2617", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2617_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2617_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2617_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 67 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2618 for ECDH, tcId is 68 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2618_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2618_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2618_sharedsecret[] = { 0xaf, 0x6e, 0x5a, 0xd3, 0x44, 0x97, 0xba, 0xe0, 0x74, 0x5f, 0x53, 0xad, 0x78, 0xce, 0x8b, 0x28, 0x5d, 0x79, 0xf4, 0x00, 0xd5, 0xc6, 0xe6, 0xa0, 0x71, 0xf8, 0xe6, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp224r1_2618 = { .name = "ecdh_secp224r1_2618", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2618_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2618_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2618_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 68 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2619 for ECDH, tcId is 69 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2619_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2619_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224r1_2619_sharedsecret[] = { 0x12, 0xfd, 0x30, 0x2f, 0xf8, 0xc1, 0x3c, 0x55, 0xa9, 0xc1, 0x11, 0xf8, 0xbb, 0x6b, 0x0a, 0x13, 0xec, 0xf8, 0x82, 0x99, 0xc0, 0xae, 0x30, 0x32, 0xce, 0x2b, 0xca, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224r1_2619 = { .name = "ecdh_secp224r1_2619", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2619_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2619_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2619_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 69 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2620 for ECDH, tcId is 70 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2620_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2620_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2620_sharedsecret[] = { 0x73, 0xf1, 0xa3, 0x95, 0xb8, 0x42, 0xf1, 0xa6, 0x75, 0x2a, 0xe4, 0x17, 0xe2, 0xc3, 0xdc, 0x90, 0xca, 0xfc, 0x44, 0x76, 0xd1, 0xd8, 0x61, 0xb7, 0xe6, 0x8a, 0xd0, 0x30, }; static const wycheproof_ecdh_test ecdh_secp224r1_2620 = { .name = "ecdh_secp224r1_2620", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2620_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2620_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2620_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 70 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2621 for ECDH, tcId is 71 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2621_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2621_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3d, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_2621_sharedsecret[] = { 0xb3, 0x29, 0xc2, 0x0d, 0xdb, 0x7c, 0x78, 0xee, 0x4e, 0x62, 0x2b, 0xb2, 0x3a, 0x98, 0x4c, 0x0d, 0x27, 0x3b, 0xa3, 0x4b, 0x62, 0x69, 0xf3, 0xd9, 0xe8, 0xf8, 0x9f, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp224r1_2621 = { .name = "ecdh_secp224r1_2621", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2621_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2621_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2621_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 71 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2622 for ECDH, tcId is 72 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2622_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2622_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xcd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_2622_sharedsecret[] = { 0x6f, 0x48, 0x34, 0x52, 0x09, 0xb2, 0x90, 0xff, 0xc5, 0xab, 0xbe, 0x75, 0x4a, 0x20, 0x14, 0x79, 0xe5, 0xd6, 0x67, 0xa2, 0x09, 0x46, 0x80, 0x80, 0xd0, 0x61, 0x97, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp224r1_2622 = { .name = "ecdh_secp224r1_2622", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2622_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2622_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2622_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 72 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2623 for ECDH, tcId is 73 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2623_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2623_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xd5, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_2623_sharedsecret[] = { 0x9f, 0x6e, 0x30, 0xc1, 0xc9, 0xda, 0xd4, 0x2a, 0x15, 0x3a, 0xac, 0xd4, 0xb4, 0x9a, 0x8e, 0x5c, 0x72, 0x1d, 0x08, 0x5c, 0xd0, 0x7b, 0x5d, 0x5a, 0xec, 0x24, 0x4f, 0xc1, }; static const wycheproof_ecdh_test ecdh_secp224r1_2623 = { .name = "ecdh_secp224r1_2623", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2623_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2623_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2623_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 73 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2624 for ECDH, tcId is 74 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2624_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2624_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x44, 0x5c, 0x5c, 0x2a, 0x3d, }; static const unsigned char ecdh_secp224r1_2624_sharedsecret[] = { 0x8c, 0xad, 0xfb, 0x19, 0xa8, 0x09, 0x49, 0xe6, 0x1b, 0xd5, 0xb8, 0x29, 0xad, 0x0e, 0x76, 0xd1, 0x8a, 0x5b, 0xb2, 0xee, 0xb9, 0xed, 0x7f, 0xe2, 0xb9, 0x01, 0xce, 0xcd, }; static const wycheproof_ecdh_test ecdh_secp224r1_2624 = { .name = "ecdh_secp224r1_2624", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2624_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2624_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2624_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 74 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2625 for ECDH, tcId is 75 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2625_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2625_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x29, 0xb7, }; static const unsigned char ecdh_secp224r1_2625_sharedsecret[] = { 0x47, 0x5f, 0xd9, 0x6e, 0x0e, 0xb8, 0xcb, 0x8f, 0x10, 0x0a, 0x5d, 0x7f, 0xe0, 0x43, 0xa7, 0xa6, 0x85, 0x1d, 0x1d, 0x61, 0x1d, 0xa2, 0x64, 0x3a, 0x3c, 0x6a, 0xe7, 0x08, }; static const wycheproof_ecdh_test ecdh_secp224r1_2625 = { .name = "ecdh_secp224r1_2625", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2625_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2625_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2625_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 75 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2626 for ECDH, tcId is 76 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2626_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2626_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x37, }; static const unsigned char ecdh_secp224r1_2626_sharedsecret[] = { 0x41, 0xef, 0x93, 0x1d, 0x66, 0x9d, 0x1f, 0x57, 0xd8, 0xbb, 0x95, 0xa0, 0x1a, 0x92, 0x32, 0x1d, 0xa7, 0x4b, 0xe8, 0xc6, 0xcb, 0xc3, 0xbb, 0xe0, 0xb2, 0xe7, 0x3e, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp224r1_2626 = { .name = "ecdh_secp224r1_2626", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2626_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2626_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2626_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 76 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2627 for ECDH, tcId is 77 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2627_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2627_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3a, }; static const unsigned char ecdh_secp224r1_2627_sharedsecret[] = { 0xe7, 0x1f, 0x21, 0x57, 0xbf, 0xe3, 0x76, 0x97, 0xea, 0x51, 0x93, 0xd4, 0x73, 0x2d, 0xcc, 0x6e, 0x54, 0x12, 0xfa, 0x9d, 0x38, 0x38, 0x7e, 0xac, 0xd3, 0x91, 0xc1, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224r1_2627 = { .name = "ecdh_secp224r1_2627", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2627_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2627_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2627_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 77 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2628 for ECDH, tcId is 78 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2628_peerpubkey[] = { 0x47, 0x8e, 0x73, 0x46, 0x5b, 0xb1, 0x18, 0x35, 0x83, 0xf4, 0x06, 0x4e, 0x67, 0xe8, 0xb4, 0x34, 0x3a, 0xf4, 0xa0, 0x5d, 0x29, 0xdf, 0xc0, 0x4e, 0xb6, 0x0a, 0xc2, 0x30, 0x2e, 0x5b, 0x9a, 0x3a, 0x1b, 0x32, 0xe4, 0x20, 0x8d, 0x4c, 0x28, 0x4f, 0xf2, 0x68, 0x22, 0xe0, 0x9c, 0x3a, 0x9a, 0x46, 0x83, 0x44, 0x3e, 0x4a, 0x35, 0x17, 0x55, 0x04, }; static const unsigned char ecdh_secp224r1_2628_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x16, 0xa2, 0xe0, 0xb8, 0xf0, 0x3e, 0x13, 0xdd, 0x29, 0x45, 0x5c, 0x5c, 0x2a, 0x3b, }; static const unsigned char ecdh_secp224r1_2628_sharedsecret[] = { 0x11, 0xff, 0x15, 0x12, 0x64, 0x11, 0x29, 0x9c, 0xbd, 0x49, 0xe2, 0xb7, 0x54, 0x2e, 0x69, 0xe9, 0x1e, 0xf1, 0x32, 0xe2, 0x55, 0x1a, 0x16, 0xec, 0xfe, 0xbb, 0x23, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp224r1_2628 = { .name = "ecdh_secp224r1_2628", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2628_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2628_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2628_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 78 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2629 for ECDH, tcId is 79 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2629_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2629_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2629 = { .name = "ecdh_secp224r1_2629", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2629_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2629_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 79 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2630 for ECDH, tcId is 80 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2630_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2630_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2630 = { .name = "ecdh_secp224r1_2630", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2630_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2630_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 80 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2631 for ECDH, tcId is 81 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2631_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2631_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2631 = { .name = "ecdh_secp224r1_2631", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2631_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2631_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 81 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2632 for ECDH, tcId is 82 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2632_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2632_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2632 = { .name = "ecdh_secp224r1_2632", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2632_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2632_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 82 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2633 for ECDH, tcId is 83 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2633_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2633_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2633 = { .name = "ecdh_secp224r1_2633", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2633_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2633_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 83 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2634 for ECDH, tcId is 84 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2634_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2634_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2634 = { .name = "ecdh_secp224r1_2634", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2634_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2634_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 84 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2635 for ECDH, tcId is 85 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2635_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2635_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2635 = { .name = "ecdh_secp224r1_2635", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2635_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2635_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 85 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2636 for ECDH, tcId is 86 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2636_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2636_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2636 = { .name = "ecdh_secp224r1_2636", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2636_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2636_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 86 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2637 for ECDH, tcId is 87 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2637_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2637_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2637 = { .name = "ecdh_secp224r1_2637", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2637_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2637_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 87 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2638 for ECDH, tcId is 88 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2638_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2638_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2638 = { .name = "ecdh_secp224r1_2638", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2638_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2638_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 88 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2639 for ECDH, tcId is 89 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2639_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2639_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2639 = { .name = "ecdh_secp224r1_2639", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2639_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2639_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 89 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2640 for ECDH, tcId is 90 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2640_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2640_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2640 = { .name = "ecdh_secp224r1_2640", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2640_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2640_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 90 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2641 for ECDH, tcId is 91 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2641_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2641_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2641 = { .name = "ecdh_secp224r1_2641", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2641_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2641_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 91 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2642 for ECDH, tcId is 92 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2642_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2642_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2642 = { .name = "ecdh_secp224r1_2642", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2642_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2642_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 92 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2643 for ECDH, tcId is 93 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2643_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2643_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2643 = { .name = "ecdh_secp224r1_2643", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2643_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2643_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 93 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2644 for ECDH, tcId is 94 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2644_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224r1_2644_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0xb5, 0xed, 0x4b, 0x99, 0x1c, 0xbb, 0xfb, 0xc2, 0x8c, 0x18, 0xf6, 0xdf, 0x20, 0x8b, 0x6d, 0x05, 0xe7, 0xa2, 0xe6, 0x66, 0x80, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224r1_2644 = { .name = "ecdh_secp224r1_2644", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2644_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2644_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 94 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2645 for ECDH, tcId is 96 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2645_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5d, }; static const unsigned char ecdh_secp224r1_2645_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const wycheproof_ecdh_test ecdh_secp224r1_2645 = { .name = "ecdh_secp224r1_2645", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2645_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2645_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 96 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2646 for ECDH, tcId is 97 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2646_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224r1_2646_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const wycheproof_ecdh_test ecdh_secp224r1_2646 = { .name = "ecdh_secp224r1_2646", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2646_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2646_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 97 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2647 for ECDH, tcId is 100 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2647_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2647_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2647_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2647 = { .name = "ecdh_secp224r1_2647", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2647_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2647_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2647_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 100 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2648 for ECDH, tcId is 101 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2648_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2648_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2648_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2648 = { .name = "ecdh_secp224r1_2648", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2648_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2648_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2648_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 6277101735386680763835789423207665314073163949517624387909, tcId is 101 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2649 for ECDH, tcId is 102 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2649_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2649_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2649_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2649 = { .name = "ecdh_secp224r1_2649", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2649_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2649_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2649_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 102 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2650 for ECDH, tcId is 103 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2650_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2650_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2650_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2650 = { .name = "ecdh_secp224r1_2650", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2650_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2650_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2650_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 103 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2651 for ECDH, tcId is 106 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2651_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2651_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2651_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2651 = { .name = "ecdh_secp224r1_2651", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2651_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2651_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2651_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 106 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2652 for ECDH, tcId is 108 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2652_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2652_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2652_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2652 = { .name = "ecdh_secp224r1_2652", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2652_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2652_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2652_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 108 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2653 for ECDH, tcId is 112 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2653_peerpubkey[] = { 0xa1, 0x0f, 0xb7, 0xbf, 0x22, 0xd2, 0x99, 0xfc, 0x5b, 0xc4, 0x3b, 0xd2, 0xd0, 0xe8, 0xda, 0x28, 0xaf, 0x28, 0xac, 0xe8, 0x43, 0x0b, 0xee, 0x28, 0xf9, 0xe5, 0xb5, 0x75, 0x54, 0x27, 0x5c, 0x06, 0x15, 0xd8, 0xd9, 0xa3, 0x01, 0x1d, 0x7b, 0xc4, 0xc1, 0xc4, 0xcf, 0x4a, 0x83, 0x4c, 0x8d, 0xc4, 0x6f, 0x25, 0xb9, 0x88, 0x54, 0x40, 0x1a, 0x5b, }; static const unsigned char ecdh_secp224r1_2653_privkey[] = { 0xd0, 0x76, 0x29, 0xeb, 0x65, 0x3a, 0x16, 0x9a, 0xe3, 0x23, 0x1e, 0xa1, 0x03, 0x0f, 0xaa, 0xf3, 0xe7, 0xf8, 0xff, 0xe3, 0x88, 0x03, 0x0e, 0xe3, 0x15, 0xd0, 0xa1, 0xd2, }; static const unsigned char ecdh_secp224r1_2653_sharedsecret[] = { 0x9b, 0x99, 0x2d, 0xad, 0x1c, 0x2b, 0x5d, 0xad, 0xd3, 0xb5, 0xae, 0xb8, 0x4b, 0x7a, 0x91, 0xfb, 0x6f, 0xe5, 0xf4, 0x6e, 0x02, 0xab, 0x2c, 0x7f, 0xa3, 0x26, 0x96, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp224r1_2653 = { .name = "ecdh_secp224r1_2653", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2653_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2653_privkey, .privkeylen = 28, .sharedsecret = ecdh_secp224r1_2653_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 112 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2654 for ECDH, tcId is 118 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2654_peerpubkey[] = { 0x73, 0xe8, 0x33, 0xae, 0xe7, 0x5c, 0x67, 0xa3, 0x4c, 0xc4, 0x97, 0xfd, 0x01, 0x27, 0x53, 0x72, 0xd0, 0x9e, 0x3e, 0x8f, 0x2f, 0xf0, 0x54, 0xc8, 0xc2, 0x9e, 0x40, 0x5e, 0xf3, 0xe3, 0x5d, 0x69, 0x91, 0x90, 0xa4, 0x48, 0x07, 0x9c, 0x05, 0x80, 0x22, 0x51, 0x2f, 0xa9, 0x97, 0x6e, 0x50, 0x4e, 0x29, 0x8b, 0xae, 0xe3, 0x40, 0xd5, 0x64, 0x8b, }; static const unsigned char ecdh_secp224r1_2654_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_2654 = { .name = "ecdh_secp224r1_2654", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2654_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2654_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224k1, tcId is 118 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2655 for ECDH, tcId is 119 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2655_peerpubkey[] = { 0x6c, 0xaa, 0x3d, 0x6d, 0x86, 0xf7, 0x92, 0xdf, 0x7b, 0x29, 0xe4, 0x1e, 0xb4, 0x20, 0x31, 0x50, 0xf6, 0x0f, 0x4f, 0xca, 0x10, 0xf5, 0x7d, 0x0b, 0x24, 0x54, 0xab, 0xfb, 0x20, 0x1f, 0x9f, 0x7e, 0x6d, 0xcb, 0xb9, 0x2b, 0xdc, 0xfb, 0x92, 0x40, 0xdc, 0x86, 0xbc, 0xae, 0xaf, 0x15, 0x7c, 0x77, 0xbc, 0xa2, 0x2b, 0x2e, 0xc8, 0x6e, 0xe8, 0xd6, }; static const unsigned char ecdh_secp224r1_2655_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_2655 = { .name = "ecdh_secp224r1_2655", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2655_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2655_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224r1, tcId is 119 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2656 for ECDH, tcId is 124 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2656_peerpubkey[] = { 0x7c, 0x59, 0x2e, 0xcb, 0x89, 0x08, 0x35, 0x5d, 0x1e, 0xbf, 0x8d, 0x59, 0xb3, 0x61, 0x92, 0x75, 0xdb, 0xe3, 0x66, 0x62, 0x09, 0xb7, 0x2c, 0xed, 0x6a, 0x3c, 0x88, 0x74, 0x04, 0x56, 0xce, 0x61, 0xd6, 0xa8, 0x4e, 0x05, 0x42, 0xd7, 0xcd, 0x10, 0xdd, 0x88, 0x04, 0xaf, 0xb8, 0xc7, 0x84, 0xd5, 0xdf, 0xfd, 0x94, 0x80, 0xd8, 0xcf, 0xdc, 0x95, }; static const unsigned char ecdh_secp224r1_2656_privkey[] = { 0x2d, 0xdd, 0x06, 0xcb, 0x77, 0xca, 0x2e, 0xae, 0x52, 0x66, 0xa3, 0x4a, 0x10, 0x7b, 0x49, 0xe5, 0x6f, 0xfb, 0x4c, 0x2d, 0x39, 0x52, 0x11, 0x2d, 0xa2, 0xdf, 0x90, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp224r1_2656 = { .name = "ecdh_secp224r1_2656", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2656_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2656_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224t1, tcId is 124 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2657 for ECDH, tcId is 129 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) static const unsigned char ecdh_secp224r1_2657_peerpubkey[] = { 0x0c, 0xa7, 0x53, 0xdb, 0x5d, 0xde, 0xca, 0x47, 0x42, 0x41, 0xf8, 0xd2, 0xda, 0xfc, 0x08, 0x44, 0x34, 0x3f, 0xd0, 0xe3, 0x7e, 0xde, 0xd2, 0xf0, 0x19, 0x2d, 0x51, 0xb2, }; static const unsigned char ecdh_secp224r1_2657_privkey[] = { 0xfc, 0x28, 0xa0, 0xca, 0x0f, 0x8e, 0x36, 0xb0, 0xd4, 0xf7, 0x14, 0x21, 0x84, 0x51, 0x35, 0xa2, 0x2a, 0xef, 0x54, 0x3b, 0x9f, 0xdd, 0xf8, 0xc7, 0x75, 0xb2, 0xd1, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp224r1_2657 = { .name = "ecdh_secp224r1_2657", .ecdh_alg = ECCCDH, .curve = &secp224r1_str_params, .peerpubkey = ecdh_secp224r1_2657_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224r1_2657_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 129 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) */ /* Test 2658 for ECDH, tcId is 130 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2658_peerpubkey[] = { 0x62, 0xd5, 0xbd, 0x33, 0x72, 0xaf, 0x75, 0xfe, 0x85, 0xa0, 0x40, 0x71, 0x5d, 0x0f, 0x50, 0x24, 0x28, 0xe0, 0x70, 0x46, 0x86, 0x8b, 0x0b, 0xfd, 0xfa, 0x61, 0xd7, 0x31, 0xaf, 0xe4, 0x4f, 0x26, 0xac, 0x33, 0x3a, 0x93, 0xa9, 0xe7, 0x0a, 0x81, 0xcd, 0x5a, 0x95, 0xb5, 0xbf, 0x8d, 0x13, 0x99, 0x0e, 0xb7, 0x41, 0xc8, 0xc3, 0x88, 0x72, 0xb4, 0xa0, 0x7d, 0x27, 0x5a, 0x01, 0x4e, 0x30, 0xcf, }; static const unsigned char ecdh_secp256r1_2658_privkey[] = { 0x06, 0x12, 0x46, 0x5c, 0x89, 0xa0, 0x23, 0xab, 0x17, 0x85, 0x5b, 0x0a, 0x6b, 0xce, 0xbf, 0xd3, 0xfe, 0xbb, 0x53, 0xae, 0xf8, 0x41, 0x38, 0x64, 0x7b, 0x53, 0x52, 0xe0, 0x2c, 0x10, 0xc3, 0x46, }; static const unsigned char ecdh_secp256r1_2658_sharedsecret[] = { 0x53, 0x02, 0x0d, 0x90, 0x8b, 0x02, 0x19, 0x32, 0x8b, 0x65, 0x8b, 0x52, 0x5f, 0x26, 0x78, 0x0e, 0x3a, 0xe1, 0x2b, 0xcd, 0x95, 0x2b, 0xb2, 0x5a, 0x93, 0xbc, 0x08, 0x95, 0xe1, 0x71, 0x42, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256r1_2658 = { .name = "ecdh_secp256r1_2658", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2658_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2658_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2658_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 130 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2659 for ECDH, tcId is 131 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2659_peerpubkey[] = { 0x62, 0xd5, 0xbd, 0x33, 0x72, 0xaf, 0x75, 0xfe, 0x85, 0xa0, 0x40, 0x71, 0x5d, 0x0f, 0x50, 0x24, 0x28, 0xe0, 0x70, 0x46, 0x86, 0x8b, 0x0b, 0xfd, 0xfa, 0x61, 0xd7, 0x31, 0xaf, 0xe4, 0x4f, 0x26, }; static const unsigned char ecdh_secp256r1_2659_privkey[] = { 0x06, 0x12, 0x46, 0x5c, 0x89, 0xa0, 0x23, 0xab, 0x17, 0x85, 0x5b, 0x0a, 0x6b, 0xce, 0xbf, 0xd3, 0xfe, 0xbb, 0x53, 0xae, 0xf8, 0x41, 0x38, 0x64, 0x7b, 0x53, 0x52, 0xe0, 0x2c, 0x10, 0xc3, 0x46, }; static const unsigned char ecdh_secp256r1_2659_sharedsecret[] = { 0x53, 0x02, 0x0d, 0x90, 0x8b, 0x02, 0x19, 0x32, 0x8b, 0x65, 0x8b, 0x52, 0x5f, 0x26, 0x78, 0x0e, 0x3a, 0xe1, 0x2b, 0xcd, 0x95, 0x2b, 0xb2, 0x5a, 0x93, 0xbc, 0x08, 0x95, 0xe1, 0x71, 0x42, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256r1_2659 = { .name = "ecdh_secp256r1_2659", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2659_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2659_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2659_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 131 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2660 for ECDH, tcId is 132 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2660_peerpubkey[] = { 0x58, 0xfd, 0x41, 0x68, 0xa8, 0x77, 0x95, 0x60, 0x3e, 0x2b, 0x04, 0x39, 0x02, 0x85, 0xbd, 0xca, 0x6e, 0x57, 0xde, 0x60, 0x27, 0xfe, 0x21, 0x1d, 0xd9, 0xd2, 0x5e, 0x22, 0x12, 0xd2, 0x9e, 0x62, 0x08, 0x0d, 0x36, 0xbd, 0x22, 0x4d, 0x74, 0x05, 0x50, 0x92, 0x95, 0xee, 0xd0, 0x2a, 0x17, 0x15, 0x0e, 0x03, 0xb3, 0x14, 0xf9, 0x6d, 0xa3, 0x74, 0x45, 0xb0, 0xd1, 0xd2, 0x93, 0x77, 0xd1, 0x2c, }; static const unsigned char ecdh_secp256r1_2660_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2660_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2660 = { .name = "ecdh_secp256r1_2660", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2660_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2660_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2660_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 132 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2661 for ECDH, tcId is 133 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2661_peerpubkey[] = { 0x0f, 0x6d, 0x20, 0xc0, 0x42, 0x61, 0xec, 0xc3, 0xe9, 0x28, 0x46, 0xac, 0xad, 0x48, 0xdc, 0x8e, 0xc5, 0xee, 0x35, 0xae, 0x08, 0x83, 0xf0, 0xd2, 0xea, 0x71, 0x21, 0x69, 0x06, 0xee, 0x1c, 0x47, 0xc0, 0x42, 0x68, 0x9a, 0x99, 0x6d, 0xd1, 0x28, 0x30, 0xae, 0x45, 0x93, 0x82, 0xe9, 0x4a, 0xac, 0x56, 0xb7, 0x17, 0xaf, 0x2e, 0x20, 0x80, 0x21, 0x5f, 0x9e, 0x41, 0x94, 0x9b, 0x1f, 0x52, 0xbe, }; static const unsigned char ecdh_secp256r1_2661_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2661_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2661 = { .name = "ecdh_secp256r1_2661", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2661_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2661_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2661_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 133 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2662 for ECDH, tcId is 134 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2662_peerpubkey[] = { 0x00, 0xc7, 0xde, 0xfe, 0xb1, 0xa1, 0x62, 0x36, 0x73, 0x8e, 0x9a, 0x11, 0x23, 0xba, 0x62, 0x1b, 0xc8, 0xe9, 0xa3, 0xf2, 0x48, 0x5b, 0x3f, 0x8f, 0xfd, 0xe7, 0xf9, 0xce, 0x98, 0xf5, 0xa8, 0xa1, 0xcb, 0x33, 0x8c, 0x39, 0x12, 0xb1, 0x79, 0x2f, 0x60, 0xc2, 0xb0, 0x6e, 0xc5, 0x23, 0x1e, 0x2d, 0x84, 0xb0, 0xe5, 0x96, 0xe9, 0xb7, 0x6d, 0x41, 0x9c, 0xe1, 0x05, 0xec, 0xe3, 0x79, 0x1d, 0xbc, }; static const unsigned char ecdh_secp256r1_2662_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2662_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_2662 = { .name = "ecdh_secp256r1_2662", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2662_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2662_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2662_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 134 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2663 for ECDH, tcId is 135 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2663_peerpubkey[] = { 0xe9, 0xb9, 0x8f, 0xb2, 0xc0, 0xac, 0x04, 0x5f, 0x8c, 0x76, 0x12, 0x5f, 0xfd, 0x99, 0xeb, 0x8a, 0x51, 0x57, 0xbe, 0x1d, 0x7d, 0xb3, 0xe8, 0x5d, 0x65, 0x5e, 0xc1, 0xd8, 0x21, 0x02, 0x88, 0xcf, 0x21, 0x8d, 0xf2, 0x4f, 0xd2, 0xc2, 0x74, 0x6b, 0xe5, 0x9d, 0xf4, 0x12, 0x62, 0xef, 0x3a, 0x97, 0xd9, 0x86, 0x74, 0x4b, 0x28, 0x36, 0x74, 0x8a, 0x74, 0x86, 0x23, 0x0a, 0x31, 0x9f, 0xfe, 0xc0, }; static const unsigned char ecdh_secp256r1_2663_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2663_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2663 = { .name = "ecdh_secp256r1_2663", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2663_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2663_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2663_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 135 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2664 for ECDH, tcId is 136 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2664_peerpubkey[] = { 0xe9, 0x48, 0x4e, 0x58, 0xf3, 0x33, 0x1b, 0x66, 0xff, 0xed, 0x6d, 0x90, 0xcb, 0x1c, 0x78, 0x06, 0x5f, 0xa2, 0x8c, 0xfb, 0xa5, 0xc7, 0xdd, 0x43, 0x52, 0x01, 0x3d, 0x32, 0x52, 0xee, 0x42, 0x77, 0xbd, 0x75, 0x03, 0xb0, 0x45, 0xa3, 0x8b, 0x4b, 0x24, 0x7b, 0x32, 0xc5, 0x95, 0x93, 0x58, 0x0f, 0x39, 0xe6, 0xab, 0xfa, 0x37, 0x6c, 0x3d, 0xca, 0x20, 0xcf, 0x7f, 0x9c, 0xfb, 0x65, 0x9e, 0x13, }; static const unsigned char ecdh_secp256r1_2664_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2664_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2664 = { .name = "ecdh_secp256r1_2664", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2664_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2664_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2664_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 136 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2665 for ECDH, tcId is 137 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2665_peerpubkey[] = { 0x76, 0x7d, 0x7f, 0xbb, 0x84, 0xaa, 0x6a, 0x4d, 0xb1, 0x07, 0x93, 0x72, 0x64, 0x4e, 0x42, 0xec, 0xb2, 0xfe, 0xc2, 0x00, 0xc1, 0x78, 0x82, 0x23, 0x92, 0xcb, 0x8b, 0x95, 0x0f, 0xfd, 0xd0, 0xc9, 0x1c, 0x86, 0x85, 0x3c, 0xaf, 0xd0, 0x9b, 0x52, 0xba, 0x2f, 0x28, 0x7f, 0x0e, 0xba, 0xa2, 0x64, 0x15, 0xa3, 0xcf, 0xab, 0xaf, 0x92, 0xc6, 0xa6, 0x17, 0xa1, 0x99, 0x88, 0x56, 0x3d, 0x9d, 0xea, }; static const unsigned char ecdh_secp256r1_2665_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2665_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_2665 = { .name = "ecdh_secp256r1_2665", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2665_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2665_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2665_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 137 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2666 for ECDH, tcId is 138 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2666_peerpubkey[] = { 0xc7, 0x4d, 0x54, 0x6f, 0x2f, 0xcc, 0x6d, 0xd3, 0x92, 0xf8, 0x5e, 0x5b, 0xe1, 0x67, 0xe3, 0x58, 0xde, 0x90, 0x87, 0x56, 0xb0, 0xc0, 0xbb, 0x01, 0xcb, 0x69, 0xd8, 0x64, 0xca, 0x08, 0x3e, 0x1c, 0x93, 0xf9, 0x59, 0xee, 0xce, 0x6e, 0x10, 0xee, 0x11, 0xbd, 0x39, 0x34, 0x20, 0x7d, 0x65, 0xae, 0x28, 0xaf, 0x68, 0xb0, 0x92, 0x58, 0x5a, 0x15, 0x09, 0x26, 0x0e, 0xce, 0xb3, 0x9b, 0x92, 0xef, }; static const unsigned char ecdh_secp256r1_2666_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2666_sharedsecret[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2666 = { .name = "ecdh_secp256r1_2666", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2666_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2666_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2666_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 138 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2667 for ECDH, tcId is 139 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2667_peerpubkey[] = { 0x34, 0xfc, 0x9f, 0x1e, 0x7a, 0x09, 0x4c, 0xd2, 0x95, 0x98, 0xd1, 0x84, 0x1f, 0xa9, 0x61, 0x3d, 0xbe, 0x82, 0x31, 0x3d, 0x63, 0x3a, 0x51, 0xd6, 0x3f, 0xb6, 0xef, 0xf0, 0x74, 0xcc, 0x9b, 0x9a, 0x4e, 0xcf, 0xd9, 0xf2, 0x58, 0xc5, 0xc4, 0xd4, 0x21, 0x0b, 0x49, 0x75, 0x12, 0x13, 0xa2, 0x4c, 0x59, 0x69, 0x82, 0xbd, 0x1d, 0x54, 0xe0, 0x44, 0x54, 0x43, 0xf2, 0x1e, 0xf1, 0x54, 0x92, 0xa5, }; static const unsigned char ecdh_secp256r1_2667_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2667_sharedsecret[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2667 = { .name = "ecdh_secp256r1_2667", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2667_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2667_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2667_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 139 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2668 for ECDH, tcId is 140 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2668_peerpubkey[] = { 0xd5, 0xc9, 0x6e, 0xfd, 0x19, 0x07, 0xfd, 0x48, 0xde, 0x2a, 0xd7, 0x15, 0xac, 0xf8, 0x2e, 0xae, 0x5c, 0x66, 0x90, 0xfe, 0x3e, 0xfe, 0x16, 0xa7, 0x8d, 0x61, 0xc6, 0x8d, 0x3b, 0xfd, 0x10, 0xdf, 0x03, 0xea, 0xc8, 0x16, 0xb9, 0xe7, 0xb7, 0x76, 0x19, 0x2a, 0x3f, 0x50, 0x75, 0x88, 0x7c, 0x0e, 0x22, 0x56, 0x17, 0x50, 0x58, 0x33, 0xca, 0x99, 0x7c, 0xda, 0x32, 0xfd, 0x0f, 0x67, 0x3c, 0x5e, }; static const unsigned char ecdh_secp256r1_2668_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2668_sharedsecret[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_2668 = { .name = "ecdh_secp256r1_2668", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2668_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2668_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2668_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 140 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2669 for ECDH, tcId is 141 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2669_peerpubkey[] = { 0xf4, 0x75, 0xf5, 0x03, 0xa7, 0x70, 0xdf, 0x72, 0xc4, 0x5a, 0xed, 0xfe, 0x42, 0xc0, 0x08, 0xf5, 0x9a, 0xa5, 0x7e, 0x72, 0xb2, 0x32, 0xf2, 0x66, 0x00, 0xbd, 0xd0, 0x35, 0x39, 0x57, 0xcb, 0x20, 0xbd, 0xb8, 0xf6, 0x40, 0x5b, 0x49, 0x18, 0x05, 0x0a, 0x35, 0x49, 0xf4, 0x4c, 0x07, 0xa8, 0xeb, 0xa8, 0x20, 0xcd, 0xce, 0x4e, 0xce, 0x69, 0x98, 0x88, 0xc6, 0x38, 0xdf, 0x66, 0xf5, 0x4f, 0x7c, }; static const unsigned char ecdh_secp256r1_2669_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2669_sharedsecret[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_2669 = { .name = "ecdh_secp256r1_2669", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2669_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2669_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2669_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 141 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2670 for ECDH, tcId is 142 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2670_peerpubkey[] = { 0xf3, 0xcb, 0x67, 0x54, 0xb7, 0xe2, 0xa8, 0x6d, 0x06, 0x4d, 0xfb, 0x9f, 0x90, 0x31, 0x85, 0xaa, 0xa4, 0xc9, 0x2b, 0x48, 0x1c, 0x2c, 0x1a, 0x1f, 0xf2, 0x76, 0x30, 0x3b, 0xbc, 0x41, 0x83, 0xe4, 0x9c, 0x31, 0x85, 0x99, 0xb0, 0x98, 0x4c, 0x35, 0x63, 0xdf, 0x33, 0x93, 0x11, 0xfe, 0x14, 0x3a, 0x7d, 0x92, 0x1e, 0xe7, 0x5b, 0x75, 0x5a, 0x52, 0xc6, 0xf8, 0x04, 0xf8, 0x97, 0xb8, 0x09, 0xf7, }; static const unsigned char ecdh_secp256r1_2670_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2670_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2670 = { .name = "ecdh_secp256r1_2670", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2670_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2670_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2670_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 142 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2671 for ECDH, tcId is 143 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2671_peerpubkey[] = { 0xcc, 0xe1, 0x3f, 0xbd, 0xc9, 0x6a, 0x94, 0x6d, 0xfb, 0x8c, 0x6d, 0x9e, 0xd7, 0x62, 0xdb, 0xd1, 0x73, 0x16, 0x30, 0x45, 0x56, 0x89, 0xf5, 0x7a, 0x43, 0x7f, 0xee, 0x12, 0x4d, 0xd5, 0x4c, 0xec, 0xae, 0xf7, 0x80, 0x26, 0xc6, 0x53, 0x03, 0x0c, 0xf2, 0xf3, 0x14, 0xa6, 0x70, 0x64, 0x23, 0x6b, 0x0a, 0x35, 0x4d, 0xef, 0xeb, 0xc5, 0xe9, 0x0c, 0x94, 0x12, 0x4e, 0x9b, 0xf5, 0xc4, 0xfc, 0x24, }; static const unsigned char ecdh_secp256r1_2671_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2671_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256r1_2671 = { .name = "ecdh_secp256r1_2671", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2671_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2671_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2671_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 143 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2672 for ECDH, tcId is 144 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2672_peerpubkey[] = { 0x76, 0x33, 0xdf, 0xd0, 0xad, 0x06, 0x76, 0x50, 0x97, 0xbc, 0x11, 0xbd, 0x50, 0x22, 0xb2, 0x00, 0xdf, 0x31, 0xf2, 0x8c, 0x4f, 0xf0, 0x62, 0x54, 0x21, 0x22, 0x1a, 0xc7, 0xee, 0xb6, 0xe6, 0xf4, 0xcb, 0x9c, 0x67, 0x69, 0x36, 0x09, 0xdd, 0xd6, 0xf9, 0x23, 0x43, 0xa5, 0xa1, 0xc6, 0x35, 0x40, 0x82, 0x40, 0xf4, 0xf8, 0xe2, 0x71, 0x20, 0xc1, 0x25, 0x54, 0xc7, 0xff, 0x8c, 0x76, 0xe2, 0xfe, }; static const unsigned char ecdh_secp256r1_2672_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2672_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2672 = { .name = "ecdh_secp256r1_2672", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2672_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2672_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2672_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 144 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2673 for ECDH, tcId is 145 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2673_peerpubkey[] = { 0xa3, 0x86, 0xac, 0xe5, 0x73, 0xf8, 0x75, 0x58, 0xa6, 0x8e, 0xad, 0x2a, 0x20, 0x08, 0x8e, 0x3f, 0xe9, 0x28, 0xbd, 0xae, 0x9e, 0x10, 0x94, 0x46, 0xf9, 0x3a, 0x07, 0x8c, 0x15, 0x74, 0x1f, 0x04, 0x21, 0x26, 0x1e, 0x6d, 0xb2, 0xbf, 0x12, 0x10, 0x6e, 0x4c, 0x6b, 0xf8, 0x5b, 0x95, 0x81, 0xb4, 0xc0, 0x30, 0x2a, 0x52, 0x62, 0x22, 0xf9, 0x0a, 0xbc, 0x5a, 0x54, 0x92, 0x06, 0xb1, 0x10, 0x11, }; static const unsigned char ecdh_secp256r1_2673_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2673_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2673 = { .name = "ecdh_secp256r1_2673", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2673_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2673_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2673_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 145 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2674 for ECDH, tcId is 146 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2674_peerpubkey[] = { 0x8e, 0x7b, 0x50, 0xf7, 0xd8, 0xc4, 0x4d, 0x5d, 0x34, 0x96, 0xc4, 0x31, 0x41, 0xa5, 0x02, 0xf4, 0xa4, 0x3f, 0x15, 0x3d, 0x03, 0xad, 0x43, 0xed, 0xa8, 0xe3, 0x95, 0x97, 0xf1, 0xd4, 0x77, 0xb8, 0x64, 0x7f, 0x3d, 0xa6, 0x79, 0x69, 0xb7, 0xf9, 0x89, 0xff, 0x4a, 0xdd, 0xc3, 0x93, 0x51, 0x5a, 0xf4, 0x0c, 0x82, 0x08, 0x5c, 0xe1, 0xf2, 0xee, 0x19, 0x54, 0x12, 0xc6, 0xf5, 0x83, 0x77, 0x4f, }; static const unsigned char ecdh_secp256r1_2674_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2674_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2674 = { .name = "ecdh_secp256r1_2674", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2674_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2674_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2674_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 146 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2675 for ECDH, tcId is 147 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2675_peerpubkey[] = { 0xc8, 0x27, 0xfb, 0x93, 0x0f, 0xd5, 0x1d, 0x92, 0x60, 0x86, 0x19, 0x1b, 0x50, 0x2a, 0xf8, 0x3a, 0xbb, 0x5f, 0x71, 0x7d, 0xeb, 0xc8, 0xde, 0x29, 0x89, 0x7a, 0x39, 0x34, 0xb2, 0x57, 0x1c, 0xa0, 0x59, 0x90, 0xc0, 0x59, 0x7b, 0x0b, 0x7a, 0x2e, 0x42, 0xfe, 0xbd, 0x56, 0xb1, 0x32, 0x35, 0xd1, 0xd4, 0x08, 0xd7, 0x6e, 0xd2, 0xc9, 0x3b, 0x3f, 0xac, 0xf5, 0x14, 0xd9, 0x02, 0xf6, 0x91, 0x0a, }; static const unsigned char ecdh_secp256r1_2675_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2675_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2675 = { .name = "ecdh_secp256r1_2675", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2675_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2675_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2675_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 147 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2676 for ECDH, tcId is 148 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2676_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0x4f, 0xde, 0x0a, 0x4e, 0xf9, 0x38, 0x87, 0x46, 0x97, 0x93, 0x27, 0x0e, 0xb2, 0xff, 0x14, 0x82, 0x87, 0xda, 0x92, 0x65, 0xb0, 0x33, 0x4f, 0x9e, 0x26, 0x09, 0xaa, 0xc1, 0x6e, 0x8a, 0xd5, 0x03, }; static const unsigned char ecdh_secp256r1_2676_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2676_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2676 = { .name = "ecdh_secp256r1_2676", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2676_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2676_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2676_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 148 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2677 for ECDH, tcId is 149 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2677_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0x18, 0xab, 0xe6, 0x6f, 0x57, 0x5e, 0xe8, 0xa2, 0xf1, 0xc4, 0xa8, 0x0e, 0x35, 0x26, 0x0a, 0xe8, 0x2a, 0xd7, 0xd6, 0xf6, 0x61, 0xd1, 0x5f, 0x06, 0x96, 0x79, 0x30, 0xa5, 0x85, 0x09, 0x7e, 0xf7, }; static const unsigned char ecdh_secp256r1_2677_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2677_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2677 = { .name = "ecdh_secp256r1_2677", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2677_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2677_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2677_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 149 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2678 for ECDH, tcId is 150 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2678_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x89, 0x4e, 0x90, 0xf0, 0xdf, 0x1b, 0x0e, 0x6c, 0xad, 0xb0, 0x3b, 0x9d, 0xe2, 0x4f, 0x6a, 0x22, 0xd1, 0xbd, 0x0a, 0x4a, 0x58, 0xcd, 0x64, 0x5c, 0x27, 0x3c, 0xae, 0x1c, 0x61, 0x9b, 0xfd, 0x61, }; static const unsigned char ecdh_secp256r1_2678_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2678_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2678 = { .name = "ecdh_secp256r1_2678", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2678_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2678_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2678_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 150 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2679 for ECDH, tcId is 151 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2679_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0xb0, 0x21, 0xf5, 0xb0, 0x06, 0xc7, 0x78, 0xba, 0x68, 0x6c, 0xd8, 0xf1, 0x4d, 0x00, 0xeb, 0x7d, 0x78, 0x25, 0x6d, 0x9b, 0x4f, 0xcc, 0xb0, 0x61, 0xd9, 0xf6, 0x55, 0x3e, 0x91, 0x75, 0x2a, 0xfc, }; static const unsigned char ecdh_secp256r1_2679_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2679_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2679 = { .name = "ecdh_secp256r1_2679", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2679_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2679_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2679_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 151 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2680 for ECDH, tcId is 152 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2680_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0xe7, 0x54, 0x19, 0x8f, 0xa8, 0xa1, 0x17, 0x5e, 0x0e, 0x3b, 0x57, 0xf1, 0xca, 0xd9, 0xf5, 0x17, 0xd5, 0x28, 0x29, 0x0a, 0x9e, 0x2e, 0xa0, 0xf9, 0x69, 0x86, 0xcf, 0x5a, 0x7a, 0xf6, 0x81, 0x08, }; static const unsigned char ecdh_secp256r1_2680_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2680_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2680 = { .name = "ecdh_secp256r1_2680", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2680_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2680_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2680_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 152 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2681 for ECDH, tcId is 153 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2681_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x76, 0xb1, 0x6f, 0x0e, 0x20, 0xe4, 0xf1, 0x94, 0x52, 0x4f, 0xc4, 0x62, 0x1d, 0xb0, 0x95, 0xdd, 0x2e, 0x42, 0xf5, 0xb6, 0xa7, 0x32, 0x9b, 0xa3, 0xd8, 0xc3, 0x51, 0xe3, 0x9e, 0x64, 0x02, 0x9e, }; static const unsigned char ecdh_secp256r1_2681_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2681_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2681 = { .name = "ecdh_secp256r1_2681", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2681_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2681_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2681_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 153 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2682 for ECDH, tcId is 154 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2682_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0xb0, 0x2c, 0x82, 0xf3, 0xa6, 0x1a, 0x37, 0x6d, 0xb7, 0x95, 0x62, 0x6e, 0x94, 0x00, 0x55, 0x71, 0x12, 0x27, 0x3a, 0x36, 0xcd, 0xdb, 0x08, 0xca, 0xaa, 0x43, 0x95, 0x39, 0x65, 0x45, 0x47, 0x30, }; static const unsigned char ecdh_secp256r1_2682_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2682_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2682 = { .name = "ecdh_secp256r1_2682", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2682_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2682_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2682_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 154 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2683 for ECDH, tcId is 155 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2683_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x8e, 0xa7, 0xa0, 0x70, 0x23, 0xef, 0x67, 0x67, 0x70, 0x24, 0xbd, 0x38, 0x41, 0xe1, 0x87, 0xc6, 0x4b, 0x30, 0xa3, 0x0a, 0x37, 0x50, 0xeb, 0x2e, 0xe8, 0x73, 0xfb, 0xe5, 0x8f, 0xa1, 0x35, 0x7b, }; static const unsigned char ecdh_secp256r1_2683_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2683_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2683 = { .name = "ecdh_secp256r1_2683", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2683_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2683_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2683_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 155 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2684 for ECDH, tcId is 156 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2684_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0x11, 0x81, 0x82, 0xb8, 0x5e, 0xf4, 0x66, 0xeb, 0x9a, 0x8e, 0x87, 0xf9, 0x66, 0x1f, 0x7d, 0x01, 0x79, 0x84, 0xc1, 0x5e, 0xa8, 0x20, 0x43, 0xf5, 0x36, 0xd1, 0xee, 0x6a, 0x6d, 0x95, 0xb5, 0x09, }; static const unsigned char ecdh_secp256r1_2684_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2684_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2684 = { .name = "ecdh_secp256r1_2684", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2684_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2684_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2684_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 156 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2685 for ECDH, tcId is 157 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2685_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0x4f, 0xd3, 0x7d, 0x0b, 0x59, 0xe5, 0xc8, 0x93, 0x48, 0x6a, 0x9d, 0x91, 0x6b, 0xff, 0xaa, 0x8e, 0xed, 0xd8, 0xc5, 0xca, 0x32, 0x24, 0xf7, 0x35, 0x55, 0xbc, 0x6a, 0xc6, 0x9a, 0xba, 0xb8, 0xcf, }; static const unsigned char ecdh_secp256r1_2685_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2685_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2685 = { .name = "ecdh_secp256r1_2685", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2685_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2685_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2685_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 157 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2686 for ECDH, tcId is 158 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2686_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x71, 0x58, 0x5f, 0x8e, 0xdc, 0x10, 0x98, 0x99, 0x8f, 0xdb, 0x42, 0xc7, 0xbe, 0x1e, 0x78, 0x39, 0xb4, 0xcf, 0x5c, 0xf6, 0xc8, 0xaf, 0x14, 0xd1, 0x17, 0x8c, 0x04, 0x1a, 0x70, 0x5e, 0xca, 0x84, }; static const unsigned char ecdh_secp256r1_2686_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2686_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_2686 = { .name = "ecdh_secp256r1_2686", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2686_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2686_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2686_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 158 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2687 for ECDH, tcId is 159 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2687_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0xee, 0x7e, 0x7d, 0x46, 0xa1, 0x0b, 0x99, 0x15, 0x65, 0x71, 0x78, 0x06, 0x99, 0xe0, 0x82, 0xfe, 0x86, 0x7b, 0x3e, 0xa2, 0x57, 0xdf, 0xbc, 0x0a, 0xc9, 0x2e, 0x11, 0x95, 0x92, 0x6a, 0x4a, 0xf6, }; static const unsigned char ecdh_secp256r1_2687_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_2687_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_2687 = { .name = "ecdh_secp256r1_2687", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2687_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2687_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2687_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 159 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2688 for ECDH, tcId is 160 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2688_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_2688_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2688_sharedsecret[] = { 0xcf, 0xe4, 0x07, 0x7c, 0x87, 0x30, 0xb1, 0xc9, 0x38, 0x45, 0x81, 0xd3, 0x6b, 0xff, 0x55, 0x42, 0xbc, 0x41, 0x7c, 0x9e, 0xff, 0x5c, 0x2a, 0xfc, 0xb9, 0x8c, 0xc8, 0x82, 0x9b, 0x2c, 0xe8, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256r1_2688 = { .name = "ecdh_secp256r1_2688", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2688_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2688_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2688_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 160 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2689 for ECDH, tcId is 161 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2689_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0x2b, 0x92, 0xb4, 0xc5, 0x96, 0xa5, 0xa4, 0x7f, 0x8b, 0x04, 0x1d, 0x2d, 0xea, 0x60, 0x43, 0x02, 0x1a, 0xc7, 0x7b, 0x9a, 0x80, 0xb1, 0x34, 0x3a, 0xc9, 0xd7, 0x78, 0xf4, 0xf8, 0xf7, 0x33, }; static const unsigned char ecdh_secp256r1_2689_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2689_sharedsecret[] = { 0x49, 0xae, 0x50, 0xfe, 0x09, 0x6a, 0x6c, 0xd2, 0x66, 0x98, 0xb7, 0x83, 0x56, 0xb2, 0xc8, 0xad, 0xf1, 0xf6, 0xa3, 0x49, 0x0f, 0x14, 0xe3, 0x64, 0x62, 0x9f, 0x7a, 0x06, 0x39, 0x44, 0x25, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_2689 = { .name = "ecdh_secp256r1_2689", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2689_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2689_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2689_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 161 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2690 for ECDH, tcId is 162 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2690_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x12, 0x0b, 0xe6, 0xab, 0x31, 0xed, 0xfa, 0x34, 0x76, 0x8c, 0x43, 0x87, 0xd2, 0xf8, 0x4f, 0xb4, 0xb0, 0xbe, 0x8a, 0x9a, 0x98, 0x58, 0x64, 0xa1, 0x57, 0x5f, 0x44, 0x36, 0xbb, 0x37, 0xb0, }; static const unsigned char ecdh_secp256r1_2690_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2690_sharedsecret[] = { 0x5a, 0x13, 0x34, 0x57, 0x2b, 0x2a, 0x71, 0x1e, 0xad, 0x8b, 0x46, 0x53, 0xeb, 0x31, 0x0c, 0xd8, 0xd9, 0xfd, 0x11, 0x43, 0x99, 0x37, 0x9a, 0x8f, 0x6b, 0x87, 0x2e, 0x3b, 0x8f, 0xdd, 0xa2, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256r1_2690 = { .name = "ecdh_secp256r1_2690", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2690_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2690_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2690_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 162 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2691 for ECDH, tcId is 163 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2691_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x46, 0x2c, 0x04, 0x66, 0xe4, 0x18, 0x02, 0x23, 0x8d, 0x6c, 0x92, 0x5e, 0xcb, 0xef, 0xc7, 0x47, 0xcf, 0xe5, 0x05, 0xea, 0x19, 0x6a, 0xf9, 0xa2, 0xd1, 0x1b, 0x62, 0x85, 0x0f, 0xce, 0x94, 0x6e, }; static const unsigned char ecdh_secp256r1_2691_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2691_sharedsecret[] = { 0xc7, 0x37, 0x55, 0x13, 0x3b, 0x6b, 0x9b, 0x4b, 0x2a, 0x00, 0x63, 0x1c, 0xbc, 0x79, 0x40, 0xec, 0xbe, 0x6e, 0xc0, 0x8f, 0x20, 0x44, 0x80, 0x71, 0x42, 0x2e, 0x33, 0x62, 0xf2, 0x55, 0x68, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_2691 = { .name = "ecdh_secp256r1_2691", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2691_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2691_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2691_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 163 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2692 for ECDH, tcId is 164 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2692_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x15, 0x82, 0xfa, 0x32, 0xe2, 0xd4, 0xa8, 0x9d, 0xfc, 0xfb, 0x3d, 0x0b, 0x14, 0x9f, 0x66, 0x7d, 0xba, 0x33, 0x29, 0x49, 0x0f, 0x4d, 0x64, 0xee, 0x2a, 0xd5, 0x86, 0xc0, 0xc9, 0xe8, 0xc5, 0x08, }; static const unsigned char ecdh_secp256r1_2692_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2692_sharedsecret[] = { 0x06, 0xfa, 0x10, 0x59, 0x93, 0x5e, 0x47, 0xa9, 0xfd, 0x66, 0x7e, 0x13, 0xf4, 0x69, 0x61, 0x4e, 0xb2, 0x57, 0xcc, 0x9a, 0x7e, 0x3f, 0xc5, 0x99, 0xbf, 0xb9, 0x27, 0x80, 0xd5, 0x9b, 0x14, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2692 = { .name = "ecdh_secp256r1_2692", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2692_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2692_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2692_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 164 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2693 for ECDH, tcId is 165 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2693_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, 0x68, 0x4c, 0x8a, 0x95, 0x86, 0xed, 0x6f, 0x9c, 0xbe, 0x44, 0x70, 0x58, 0xa7, 0xda, 0x21, 0x08, 0xba, 0xb1, 0xe5, 0xe0, 0xa6, 0x0d, 0x1f, 0x73, 0xe4, 0xe2, 0xe7, 0x13, 0xf0, 0xa3, 0xdf, 0xe0, }; static const unsigned char ecdh_secp256r1_2693_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2693_sharedsecret[] = { 0xf2, 0x37, 0xdf, 0x4c, 0x10, 0xbd, 0x3e, 0x35, 0x79, 0x71, 0xbb, 0x2b, 0x16, 0xb2, 0x93, 0x56, 0x6b, 0x7e, 0x35, 0x5b, 0xdc, 0x81, 0x41, 0xd6, 0xc9, 0x2c, 0xab, 0xc6, 0x82, 0x98, 0x3c, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_2693 = { .name = "ecdh_secp256r1_2693", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2693_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2693_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2693_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 165 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2694 for ECDH, tcId is 166 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2694_peerpubkey[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, 0x78, 0x59, 0xf9, 0x7c, 0xb6, 0xe2, 0x03, 0xf4, 0x6b, 0xf3, 0x43, 0x8f, 0x61, 0x28, 0x23, 0x25, 0xe9, 0x4e, 0x68, 0x1b, 0x60, 0xb5, 0x66, 0x97, 0x88, 0xae, 0xb0, 0x65, 0x5b, 0xf1, 0x9d, 0x38, }; static const unsigned char ecdh_secp256r1_2694_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2694_sharedsecret[] = { 0xd8, 0x74, 0xb5, 0x56, 0x78, 0xd0, 0xa0, 0x4d, 0x21, 0x6c, 0x31, 0xb0, 0x2f, 0x3a, 0xd1, 0xf3, 0x0c, 0x92, 0xca, 0xaf, 0x16, 0x8f, 0x34, 0xe3, 0xa7, 0x43, 0x35, 0x6d, 0x92, 0x76, 0xe9, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_2694 = { .name = "ecdh_secp256r1_2694", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2694_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2694_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2694_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 166 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2695 for ECDH, tcId is 167 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2695_peerpubkey[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, 0x21, 0xb8, 0x34, 0x2e, 0xf0, 0x77, 0xbc, 0x67, 0x24, 0x11, 0x24, 0x03, 0xea, 0xee, 0x5a, 0x15, 0xb4, 0xc3, 0x1a, 0x71, 0x58, 0x9f, 0x02, 0xde, 0xd0, 0x9c, 0xd9, 0x9c, 0xc5, 0xdb, 0x9c, 0x83, }; static const unsigned char ecdh_secp256r1_2695_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2695_sharedsecret[] = { 0x11, 0xa8, 0x58, 0x20, 0x57, 0x46, 0x3f, 0xc7, 0x6f, 0xda, 0x3a, 0xb8, 0x08, 0x7e, 0xb0, 0xa4, 0x20, 0xb0, 0xd6, 0x01, 0xbb, 0x31, 0x34, 0x16, 0x5a, 0x36, 0x96, 0x46, 0x93, 0x1e, 0x52, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_2695 = { .name = "ecdh_secp256r1_2695", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2695_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2695_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2695_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 167 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2696 for ECDH, tcId is 168 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2696_peerpubkey[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, 0x46, 0x19, 0xd6, 0x9f, 0x99, 0x40, 0xf5, 0x16, 0x63, 0xaa, 0x12, 0x38, 0x1b, 0xc7, 0xcf, 0x67, 0x8b, 0xd1, 0xa7, 0x2a, 0x49, 0xfb, 0xc1, 0x1b, 0x0b, 0x69, 0xcb, 0x22, 0xd1, 0xaf, 0x9f, 0x2d, }; static const unsigned char ecdh_secp256r1_2696_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2696_sharedsecret[] = { 0x4e, 0x17, 0x3a, 0x80, 0x90, 0x7f, 0x36, 0x1f, 0xe5, 0xa5, 0xd3, 0x35, 0xba, 0x76, 0x85, 0xd5, 0xeb, 0xa9, 0x3e, 0x9d, 0xfc, 0x8d, 0x8f, 0xcd, 0xb1, 0xdc, 0xd2, 0xd2, 0xbd, 0xe2, 0x75, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_2696 = { .name = "ecdh_secp256r1_2696", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2696_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2696_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2696_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 168 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2697 for ECDH, tcId is 169 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2697_peerpubkey[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, 0x62, 0xca, 0x11, 0x03, 0xf7, 0x0a, 0x20, 0x06, 0xcd, 0x1f, 0x67, 0xf5, 0xf6, 0xa3, 0x58, 0x0b, 0x29, 0xdc, 0x44, 0x6a, 0xbc, 0x90, 0xe0, 0xe9, 0x10, 0xc1, 0xe0, 0x5a, 0x9a, 0xa7, 0x88, 0xcd, }; static const unsigned char ecdh_secp256r1_2697_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2697_sharedsecret[] = { 0x73, 0x22, 0x04, 0x71, 0xec, 0x8b, 0xad, 0x99, 0xa2, 0x97, 0xdb, 0x48, 0x8a, 0x34, 0xa2, 0x59, 0xf9, 0xbc, 0x89, 0x1f, 0xfa, 0xf0, 0x99, 0x22, 0xe6, 0xb5, 0x00, 0x1f, 0x5d, 0xf6, 0x70, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_2697 = { .name = "ecdh_secp256r1_2697", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2697_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2697_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2697_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 169 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2698 for ECDH, tcId is 170 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2698_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x2e, 0x22, 0x13, 0xca, 0xf0, 0x30, 0x33, 0xe0, 0xfd, 0x0f, 0x79, 0x51, 0x15, 0x4f, 0x6e, 0x6c, 0x3a, 0x92, 0x44, 0xa7, 0x2f, 0xac, 0xa6, 0x5e, 0x9c, 0xe9, 0xee, 0xb5, 0xc8, 0xe1, 0xce, 0xa9, }; static const unsigned char ecdh_secp256r1_2698_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2698_sharedsecret[] = { 0x55, 0xd0, 0xa2, 0x03, 0xe2, 0x2f, 0xfb, 0x52, 0x3c, 0x8d, 0x27, 0x05, 0x06, 0x0c, 0xee, 0x9d, 0x28, 0x30, 0x8b, 0x51, 0xf1, 0x84, 0xbe, 0xef, 0xc5, 0x18, 0xcf, 0xf6, 0x90, 0xba, 0xd3, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256r1_2698 = { .name = "ecdh_secp256r1_2698", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2698_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2698_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2698_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 170 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2699 for ECDH, tcId is 171 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2699_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x2b, 0xe8, 0x78, 0x9d, 0xb8, 0x1b, 0xb4, 0x87, 0x0a, 0x9e, 0x60, 0xc5, 0xc1, 0x8c, 0x80, 0xc8, 0x3d, 0xe4, 0x64, 0x27, 0x72, 0x81, 0xf1, 0xaf, 0x1e, 0x64, 0x08, 0x43, 0xa1, 0xa3, 0x14, 0x8e, }; static const unsigned char ecdh_secp256r1_2699_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2699_sharedsecret[] = { 0x25, 0x18, 0xd8, 0x46, 0xe5, 0x77, 0xd9, 0x5e, 0x9e, 0x7b, 0xc7, 0x66, 0xcd, 0xe7, 0x99, 0x7c, 0xb8, 0x87, 0xfb, 0x26, 0x6d, 0x3a, 0x6c, 0xb5, 0x98, 0xa8, 0x39, 0xfd, 0x54, 0xaa, 0x2f, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2699 = { .name = "ecdh_secp256r1_2699", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2699_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2699_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2699_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 171 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2700 for ECDH, tcId is 172 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2700_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x72, 0x25, 0x40, 0xf8, 0xa4, 0x71, 0xc3, 0x79, 0x08, 0x3c, 0x60, 0x0b, 0x58, 0xfd, 0xe4, 0xd9, 0x5c, 0x7d, 0xca, 0xd5, 0x09, 0x5f, 0x42, 0x19, 0xfc, 0x5e, 0x9b, 0xdd, 0xe3, 0xc5, 0xcd, 0x39, }; static const unsigned char ecdh_secp256r1_2700_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2700_sharedsecret[] = { 0xbd, 0xb4, 0x9f, 0x4b, 0xdf, 0x42, 0xac, 0x64, 0x50, 0x4e, 0x9c, 0xe6, 0x77, 0xb3, 0xec, 0x5c, 0x0a, 0x03, 0x82, 0x8c, 0x5b, 0x3e, 0xfa, 0xd7, 0x26, 0x00, 0x56, 0x92, 0xd3, 0x5c, 0x0f, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_2700 = { .name = "ecdh_secp256r1_2700", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2700_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2700_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2700_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 172 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2701 for ECDH, tcId is 173 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2701_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x5d, 0xf8, 0x0f, 0xc6, 0xca, 0xe2, 0x6b, 0x6c, 0x19, 0x52, 0xfb, 0xd0, 0x0e, 0xd1, 0x74, 0xee, 0x12, 0x09, 0xd0, 0x69, 0x33, 0x5f, 0x5b, 0x48, 0x58, 0x8e, 0x29, 0xe8, 0x0b, 0x91, 0x91, 0xad, }; static const unsigned char ecdh_secp256r1_2701_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2701_sharedsecret[] = { 0xf5, 0x03, 0xac, 0x65, 0x63, 0x7e, 0x0f, 0x17, 0xcb, 0x44, 0x08, 0x96, 0x1c, 0xb8, 0x82, 0xc8, 0x75, 0xe4, 0xc6, 0xef, 0x7a, 0x54, 0x8d, 0x2d, 0x52, 0xd8, 0xc2, 0xf6, 0x81, 0x83, 0x8c, 0x55, }; static const wycheproof_ecdh_test ecdh_secp256r1_2701 = { .name = "ecdh_secp256r1_2701", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2701_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2701_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2701_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 173 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2702 for ECDH, tcId is 174 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2702_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x2c, 0x63, 0x65, 0x0e, 0x6a, 0x5d, 0x33, 0x2e, 0x29, 0x87, 0xdd, 0x09, 0xa7, 0x90, 0x08, 0xe8, 0xfa, 0xab, 0xbd, 0x37, 0xe4, 0x9c, 0xb0, 0x16, 0xbf, 0xb9, 0x2c, 0x8c, 0xd0, 0xf5, 0xda, 0x77, }; static const unsigned char ecdh_secp256r1_2702_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2702_sharedsecret[] = { 0xe3, 0xc1, 0x8e, 0x7d, 0x73, 0x77, 0xdc, 0x54, 0x0b, 0xc4, 0x5c, 0x08, 0xd3, 0x89, 0xbd, 0xbe, 0x25, 0x5f, 0xa8, 0x0c, 0xa8, 0xfa, 0xf1, 0xef, 0x6b, 0x94, 0xd5, 0x20, 0x49, 0x98, 0x7d, 0x21, }; static const wycheproof_ecdh_test ecdh_secp256r1_2702 = { .name = "ecdh_secp256r1_2702", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2702_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2702_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2702_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 174 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2703 for ECDH, tcId is 175 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2703_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7a, 0x11, 0x6c, 0x96, 0x4a, 0x4c, 0xd6, 0x06, 0x68, 0xbf, 0x89, 0xcf, 0xfe, 0x15, 0x77, 0x14, 0xa3, 0xce, 0x21, 0xb9, 0x3b, 0x3c, 0xa6, 0x07, 0xc8, 0xa5, 0xb9, 0x3a, 0xc5, 0x4f, 0xfc, 0x0a, }; static const unsigned char ecdh_secp256r1_2703_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2703_sharedsecret[] = { 0x51, 0x6d, 0x6d, 0x32, 0x9b, 0x09, 0x5a, 0x7c, 0x7e, 0x93, 0xb4, 0x02, 0x3d, 0x4d, 0x05, 0x02, 0x0c, 0x14, 0x45, 0xef, 0x1d, 0xdc, 0xb3, 0x34, 0x7b, 0x3a, 0x27, 0xd7, 0xd7, 0xf5, 0x72, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256r1_2703 = { .name = "ecdh_secp256r1_2703", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2703_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2703_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2703_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 175 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2704 for ECDH, tcId is 176 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2704_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xc7, 0xc3, 0x06, 0x43, 0xab, 0xed, 0x0a, 0xf0, 0xa4, 0x9f, 0xe3, 0x52, 0xcb, 0x48, 0x3f, 0xf9, 0xb9, 0x7d, 0xcc, 0xdf, 0x42, 0x7c, 0x65, 0x8e, 0x87, 0x93, 0x24, 0x0d, }; static const unsigned char ecdh_secp256r1_2704_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2704_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2704 = { .name = "ecdh_secp256r1_2704", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2704_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2704_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2704_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 176 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2705 for ECDH, tcId is 177 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2705_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x38, 0x3c, 0xf9, 0xbd, 0x54, 0x12, 0xf5, 0x0f, 0x5b, 0x60, 0x1c, 0xad, 0x34, 0xb7, 0xc0, 0x07, 0x46, 0x82, 0x33, 0x20, 0xbd, 0x83, 0x9a, 0x71, 0x78, 0x6c, 0xdb, 0xf2, }; static const unsigned char ecdh_secp256r1_2705_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2705_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2705 = { .name = "ecdh_secp256r1_2705", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2705_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2705_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2705_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 177 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2706 for ECDH, tcId is 178 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2706_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x26, 0x7b, 0xfd, 0xf8, 0xa6, 0x11, 0x48, 0xde, 0xcd, 0x80, 0x28, 0x37, 0x32, 0xdd, 0x4c, 0x10, 0x95, 0xe4, 0xbb, 0x40, 0xb9, 0x65, 0x84, 0x08, 0x20, 0x8d, 0xc1, 0x14, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2706_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2706_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2706 = { .name = "ecdh_secp256r1_2706", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2706_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2706_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2706_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 178 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2707 for ECDH, tcId is 179 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2707_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd9, 0x84, 0x02, 0x06, 0x59, 0xee, 0xb7, 0x22, 0x32, 0x7f, 0xd7, 0xc8, 0xcd, 0x22, 0xb3, 0xef, 0x6a, 0x1b, 0x44, 0xc0, 0x46, 0x9a, 0x7b, 0xf7, 0xdf, 0x72, 0x3e, 0xeb, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2707_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2707_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2707 = { .name = "ecdh_secp256r1_2707", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2707_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2707_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2707_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 179 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2708 for ECDH, tcId is 180 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2708_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x12, 0xd3, 0x81, 0xb0, 0x76, 0x0b, 0x1c, 0x50, 0xbe, 0x8a, 0xcf, 0x85, 0x93, 0x85, 0x05, 0x2c, 0x7f, 0x53, 0xcd, 0xe6, 0x7c, 0xe1, 0x37, 0x59, 0xde, 0x31, 0x23, 0xa0, }; static const unsigned char ecdh_secp256r1_2708_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2708_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_2708 = { .name = "ecdh_secp256r1_2708", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2708_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2708_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2708_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 180 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2709 for ECDH, tcId is 181 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2709_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf1, 0xed, 0x2c, 0x7e, 0x50, 0x89, 0xf4, 0xe3, 0xaf, 0x41, 0x75, 0x30, 0x7a, 0x6c, 0x7a, 0xfa, 0xd4, 0x80, 0xac, 0x32, 0x19, 0x83, 0x1e, 0xc8, 0xa6, 0x21, 0xce, 0xdc, 0x5f, }; static const unsigned char ecdh_secp256r1_2709_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2709_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_2709 = { .name = "ecdh_secp256r1_2709", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2709_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2709_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2709_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 181 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2710 for ECDH, tcId is 182 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2710_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x96, 0xed, 0xd6, 0x87, 0x1c, 0x32, 0x0c, 0xb8, 0xa9, 0xf4, 0x53, 0x17, 0x51, 0x10, 0x5c, 0x97, 0xb4, 0xc2, 0x57, 0x81, 0x1b, 0xbc, 0x32, 0x96, 0x3e, 0xaf, 0x39, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2710_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2710_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2710 = { .name = "ecdh_secp256r1_2710", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2710_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2710_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2710_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 182 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2711 for ECDH, tcId is 183 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2711_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x69, 0x12, 0x28, 0x78, 0xe3, 0xcd, 0xf4, 0x47, 0x56, 0x0b, 0xac, 0xe8, 0xae, 0xef, 0xa3, 0x68, 0x4b, 0x3d, 0xa9, 0x7e, 0xe4, 0x43, 0xcd, 0x69, 0xc1, 0x50, 0xc6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2711_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2711_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2711 = { .name = "ecdh_secp256r1_2711", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2711_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2711_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2711_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 183 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2712 for ECDH, tcId is 184 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2712_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7a, 0xfb, 0xc0, 0xb3, 0x25, 0xe8, 0x20, 0x64, 0x6d, 0xec, 0x62, 0x2f, 0xb5, 0x58, 0xa5, 0x1c, 0x34, 0x2a, 0xa2, 0x57, 0xf4, 0xb6, 0xa8, 0xec, 0x5d, 0xdf, 0x14, 0x4f, }; static const unsigned char ecdh_secp256r1_2712_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2712_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2712 = { .name = "ecdh_secp256r1_2712", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2712_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2712_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2712_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 184 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2713 for ECDH, tcId is 185 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2713_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x85, 0x04, 0x3f, 0x4d, 0xda, 0x17, 0xdf, 0x9b, 0x92, 0x13, 0x9d, 0xd0, 0x4a, 0xa7, 0x5a, 0xe4, 0xcb, 0xd5, 0x5d, 0xa8, 0x0b, 0x49, 0x57, 0x13, 0xa2, 0x20, 0xeb, 0xb0, }; static const unsigned char ecdh_secp256r1_2713_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2713_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2713 = { .name = "ecdh_secp256r1_2713", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2713_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2713_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2713_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 185 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2714 for ECDH, tcId is 186 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2714_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x15, 0x2c, 0x1a, 0x22, 0xd8, 0x23, 0xa2, 0x78, 0x55, 0xed, 0x03, 0xf8, 0xe2, 0xab, 0x50, 0x38, 0xbb, 0x1d, 0xf4, 0xd8, 0x7e, 0x43, 0x86, 0x5f, 0x2d, 0xaf, 0x69, 0x48, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2714_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2714_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2714 = { .name = "ecdh_secp256r1_2714", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2714_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2714_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2714_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 186 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2715 for ECDH, tcId is 187 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2715_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0xd3, 0xe5, 0xdc, 0x27, 0xdc, 0x5d, 0x88, 0xaa, 0x12, 0xfc, 0x07, 0x1d, 0x54, 0xaf, 0xc7, 0x44, 0xe2, 0x0b, 0x28, 0x81, 0xbc, 0x79, 0xa0, 0xd2, 0x50, 0x96, 0xb7, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2715_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_2715_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2715 = { .name = "ecdh_secp256r1_2715", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2715_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2715_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2715_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 187 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2716 for ECDH, tcId is 188 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2716_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_2716_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2716_sharedsecret[] = { 0xd1, 0x1c, 0x64, 0x0b, 0x43, 0x82, 0xe6, 0x0e, 0xc8, 0xd2, 0x54, 0xee, 0x76, 0xf0, 0x9b, 0x8f, 0xac, 0x57, 0x65, 0x1a, 0xb7, 0x3b, 0x6d, 0xd3, 0xfd, 0xc9, 0x35, 0xa6, 0x15, 0x64, 0xa3, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp256r1_2716 = { .name = "ecdh_secp256r1_2716", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2716_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2716_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2716_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 188 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2717 for ECDH, tcId is 189 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2717_peerpubkey[] = { 0x10, 0x01, 0x21, 0xf1, 0xa0, 0x94, 0x43, 0x85, 0x1c, 0x9a, 0xa2, 0xab, 0x6e, 0xe6, 0x44, 0x0e, 0x2a, 0xc5, 0xe1, 0xbe, 0x64, 0x82, 0x74, 0xbd, 0x5d, 0x26, 0xc1, 0x2f, 0xb3, 0xba, 0x3f, 0x7f, 0x03, 0x2a, 0x1c, 0x21, 0x9f, 0xa1, 0x45, 0x7c, 0xb2, 0x05, 0x88, 0x29, 0x7e, 0x05, 0x13, 0xcf, 0xd4, 0x90, 0x1f, 0x9a, 0x95, 0x41, 0x4f, 0x7e, 0x91, 0x4f, 0x91, 0x79, 0xf3, 0x85, 0x67, 0xa6, }; static const unsigned char ecdh_secp256r1_2717_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2717_sharedsecret[] = { 0x90, 0xe7, 0x12, 0xe2, 0xaf, 0xd1, 0x41, 0x71, 0xc1, 0x94, 0x67, 0xa2, 0xbf, 0xe7, 0xab, 0xf1, 0xc4, 0x77, 0xd1, 0xf4, 0x0f, 0x66, 0x75, 0xf0, 0x0e, 0x62, 0x2f, 0xd5, 0x60, 0x4f, 0xa1, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2717 = { .name = "ecdh_secp256r1_2717", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2717_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2717_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2717_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 189 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2718 for ECDH, tcId is 190 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2718_peerpubkey[] = { 0xca, 0xd0, 0x2a, 0xb5, 0x37, 0xc8, 0x08, 0x31, 0xcc, 0xdd, 0x39, 0x51, 0x29, 0xfc, 0x4b, 0xfe, 0x4a, 0x89, 0xae, 0x0c, 0x86, 0x6f, 0x66, 0x19, 0xa3, 0xe1, 0x41, 0x46, 0xd3, 0x69, 0x16, 0x94, 0x68, 0x9d, 0x47, 0x70, 0x65, 0xb4, 0x0f, 0x14, 0x0e, 0xd8, 0x7b, 0x37, 0xad, 0x04, 0x1e, 0x28, 0x22, 0x9b, 0x0f, 0x79, 0xa6, 0xb3, 0xc9, 0x92, 0x68, 0x99, 0x54, 0xc9, 0x7f, 0x73, 0x36, 0xd0, }; static const unsigned char ecdh_secp256r1_2718_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2718_sharedsecret[] = { 0x15, 0x95, 0x83, 0x10, 0x3d, 0x83, 0xf6, 0x35, 0x38, 0xbd, 0x4e, 0x20, 0x36, 0x07, 0xd7, 0x34, 0x89, 0x90, 0xbb, 0x7f, 0x84, 0x7f, 0xfb, 0xc9, 0xe5, 0xe5, 0x09, 0xc7, 0xe3, 0x4d, 0x39, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2718 = { .name = "ecdh_secp256r1_2718", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2718_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2718_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2718_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 190 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2719 for ECDH, tcId is 191 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2719_peerpubkey[] = { 0xab, 0xd1, 0x2e, 0xed, 0x4d, 0x65, 0x4b, 0xaa, 0x7d, 0x96, 0x86, 0x33, 0x77, 0x0f, 0x4a, 0x58, 0x2f, 0x17, 0x3d, 0x66, 0x33, 0x90, 0x60, 0x00, 0xed, 0x8a, 0xcf, 0x62, 0x33, 0xc6, 0x36, 0x5f, 0x09, 0x12, 0xf3, 0x0b, 0xb9, 0x8e, 0x7c, 0xb5, 0x25, 0x89, 0x0d, 0x5e, 0xa1, 0xe2, 0x17, 0x14, 0x9d, 0x52, 0xa6, 0xc5, 0x9f, 0x78, 0x02, 0xa9, 0xf3, 0x07, 0xe8, 0x0d, 0x2a, 0x9f, 0xee, 0x3a, }; static const unsigned char ecdh_secp256r1_2719_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2719_sharedsecret[] = { 0x54, 0x6a, 0x2d, 0xfa, 0xdb, 0x1d, 0x60, 0x14, 0x0b, 0xec, 0xac, 0x2d, 0xc2, 0xe6, 0x2d, 0x20, 0xc7, 0x89, 0x03, 0x77, 0x55, 0xad, 0x5a, 0x49, 0xe3, 0x7e, 0x48, 0xf2, 0xca, 0x1b, 0x76, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256r1_2719 = { .name = "ecdh_secp256r1_2719", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2719_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2719_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2719_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 191 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2720 for ECDH, tcId is 192 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2720_peerpubkey[] = { 0xa5, 0x62, 0xc1, 0xad, 0x9a, 0x72, 0x21, 0x7d, 0xf0, 0x01, 0x47, 0xc7, 0xd2, 0xce, 0xaf, 0xc6, 0x5a, 0x16, 0x20, 0xa1, 0x46, 0x9c, 0x94, 0x7e, 0x14, 0xfe, 0x43, 0x00, 0x3a, 0xc5, 0x37, 0x1b, 0x7a, 0xd1, 0xd3, 0x3c, 0x01, 0xf0, 0xeb, 0x92, 0xb7, 0x79, 0xed, 0x6e, 0x46, 0x0d, 0x03, 0x34, 0x44, 0x70, 0x75, 0xa3, 0xcf, 0x66, 0xb2, 0xff, 0xbd, 0xae, 0x31, 0xb4, 0x38, 0xdf, 0x6d, 0x7b, }; static const unsigned char ecdh_secp256r1_2720_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2720_sharedsecret[] = { 0xe5, 0x85, 0x9c, 0x78, 0x11, 0xc5, 0xc3, 0xac, 0xa6, 0xc2, 0x36, 0xab, 0x49, 0x9c, 0xca, 0xd1, 0x03, 0x01, 0xc7, 0xc5, 0xee, 0x91, 0x3c, 0xe9, 0x1b, 0xb6, 0x64, 0x28, 0xcd, 0xe1, 0x1e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2720 = { .name = "ecdh_secp256r1_2720", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2720_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2720_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2720_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 192 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2721 for ECDH, tcId is 193 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2721_peerpubkey[] = { 0x8c, 0xdb, 0xeb, 0xe9, 0xd0, 0x7d, 0x2e, 0xbc, 0x4e, 0x41, 0xb1, 0xd7, 0x2a, 0x9b, 0xac, 0x29, 0x74, 0xcf, 0xc4, 0xcf, 0x73, 0x8d, 0x8b, 0x6d, 0xe7, 0x1a, 0x40, 0xed, 0xe9, 0x92, 0x0d, 0x88, 0xdc, 0x24, 0x39, 0xee, 0x00, 0x03, 0xfb, 0xde, 0x7b, 0x0a, 0x3a, 0xe4, 0x17, 0x10, 0xc6, 0x4b, 0x17, 0xb0, 0x8a, 0x88, 0x41, 0xe9, 0x7a, 0x39, 0x0e, 0x48, 0x2c, 0x97, 0x68, 0xfe, 0x01, 0xea, }; static const unsigned char ecdh_secp256r1_2721_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2721_sharedsecret[] = { 0x65, 0x75, 0x4a, 0xb4, 0x59, 0xa1, 0x04, 0x71, 0xaf, 0x00, 0x94, 0x3f, 0x41, 0x4f, 0x28, 0xde, 0x1b, 0xc3, 0x79, 0x68, 0xb0, 0x97, 0xad, 0x28, 0x45, 0xfe, 0x11, 0x14, 0x20, 0x85, 0x50, 0x08, }; static const wycheproof_ecdh_test ecdh_secp256r1_2721 = { .name = "ecdh_secp256r1_2721", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2721_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2721_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2721_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 193 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2722 for ECDH, tcId is 194 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2722_peerpubkey[] = { 0xf0, 0xcd, 0x7c, 0xd8, 0x33, 0x46, 0x78, 0x30, 0x8c, 0xfe, 0xb7, 0x85, 0xa6, 0x8a, 0x15, 0x04, 0xa9, 0x14, 0x18, 0xd4, 0x44, 0x1c, 0x4d, 0x4c, 0x74, 0x0c, 0x57, 0x48, 0x8b, 0x9a, 0xaf, 0xb0, 0x79, 0xd8, 0xa8, 0xd2, 0x99, 0x73, 0xeb, 0x50, 0x22, 0x67, 0xec, 0xcf, 0x6e, 0xda, 0x32, 0x66, 0x26, 0xfc, 0x6e, 0x02, 0x5d, 0x53, 0x2b, 0x85, 0xe9, 0xf7, 0x11, 0xf8, 0xce, 0x69, 0x71, 0xbb, }; static const unsigned char ecdh_secp256r1_2722_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2722_sharedsecret[] = { 0x86, 0x31, 0xfe, 0xde, 0xe6, 0xce, 0xb3, 0x38, 0x6a, 0xc4, 0x2e, 0xdf, 0x32, 0x2c, 0x18, 0x88, 0x24, 0x89, 0x3d, 0x26, 0x7d, 0x61, 0x08, 0xf0, 0xcf, 0x5d, 0xe6, 0x96, 0x4b, 0x88, 0x33, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2722 = { .name = "ecdh_secp256r1_2722", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2722_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2722_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2722_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 194 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2723 for ECDH, tcId is 195 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2723_peerpubkey[] = { 0x8a, 0xd0, 0xaf, 0x23, 0xb9, 0x0e, 0x03, 0x41, 0xb4, 0xe2, 0xa5, 0xa9, 0x63, 0xc8, 0x52, 0x2f, 0xe0, 0x11, 0xac, 0xe1, 0x9b, 0x1b, 0x86, 0x10, 0xcb, 0xe7, 0x92, 0x7a, 0x17, 0xa7, 0x24, 0x97, 0x36, 0xb8, 0x7a, 0xb9, 0x90, 0x72, 0x89, 0xa2, 0x3a, 0x0f, 0xb2, 0x0c, 0xa4, 0xbe, 0x42, 0xd4, 0x21, 0xfe, 0x38, 0xd3, 0x5a, 0xf0, 0x9d, 0x79, 0xcb, 0xe6, 0xe6, 0xa4, 0xe9, 0x5a, 0x1a, 0x8b, }; static const unsigned char ecdh_secp256r1_2723_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2723_sharedsecret[] = { 0x68, 0xc5, 0x85, 0x99, 0xc1, 0x23, 0xbe, 0x6d, 0x37, 0xd3, 0x43, 0xbd, 0x41, 0xb1, 0x1c, 0xec, 0xc5, 0xf8, 0x4b, 0x26, 0x35, 0x66, 0x11, 0x63, 0x65, 0x6f, 0x76, 0xd7, 0xfb, 0x04, 0xb4, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_2723 = { .name = "ecdh_secp256r1_2723", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2723_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2723_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2723_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 195 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2724 for ECDH, tcId is 196 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2724_peerpubkey[] = { 0x59, 0xc9, 0xcc, 0x2d, 0x72, 0x97, 0xdd, 0xb0, 0xbe, 0x63, 0x04, 0xc9, 0x4c, 0xeb, 0xf4, 0x2d, 0x81, 0x3e, 0x97, 0x0c, 0x50, 0xf4, 0x52, 0x87, 0x75, 0x3b, 0x8e, 0x9c, 0xb0, 0xc6, 0xdb, 0x45, 0xf5, 0x71, 0xd9, 0x86, 0x99, 0x08, 0x97, 0x85, 0x1f, 0xc8, 0xe1, 0xdb, 0x67, 0xc9, 0x97, 0x59, 0xe8, 0x97, 0x9c, 0x3d, 0x9d, 0xdf, 0xd0, 0x2f, 0x63, 0x3c, 0xf1, 0xea, 0x5b, 0x6c, 0x48, 0xab, }; static const unsigned char ecdh_secp256r1_2724_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2724_sharedsecret[] = { 0xb5, 0x8d, 0x00, 0x52, 0x5c, 0x4c, 0x4b, 0x4f, 0x46, 0x56, 0x28, 0x52, 0xc1, 0x5c, 0xe2, 0xe4, 0x8d, 0xbe, 0x23, 0xa3, 0xbe, 0x37, 0x54, 0x1e, 0x04, 0x84, 0x46, 0xef, 0xf5, 0x15, 0x2e, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp256r1_2724 = { .name = "ecdh_secp256r1_2724", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2724_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2724_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2724_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 196 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2725 for ECDH, tcId is 197 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2725_peerpubkey[] = { 0xe9, 0x70, 0x80, 0xda, 0x72, 0x63, 0xa2, 0x9c, 0x30, 0x72, 0xa6, 0x51, 0x78, 0xb7, 0xb3, 0x15, 0x87, 0xa5, 0xdf, 0xfc, 0x19, 0x75, 0x4c, 0x56, 0x1e, 0x32, 0xfc, 0x53, 0x19, 0x92, 0x34, 0xf0, 0x4e, 0x0b, 0x9b, 0x70, 0xc9, 0x7b, 0x60, 0xe9, 0x40, 0xd5, 0x62, 0x9f, 0x22, 0x66, 0xd1, 0xa8, 0xe2, 0x42, 0xde, 0xb7, 0x1e, 0xb7, 0xf0, 0xb2, 0xb2, 0xda, 0x2e, 0x30, 0x44, 0x73, 0x8a, 0xb0, }; static const unsigned char ecdh_secp256r1_2725_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2725_sharedsecret[] = { 0x4b, 0xaa, 0x01, 0xc2, 0x11, 0xaf, 0x8f, 0x94, 0xac, 0xa8, 0x95, 0x48, 0x90, 0x2a, 0x71, 0xf7, 0xb5, 0x3f, 0x78, 0x14, 0xbb, 0xce, 0xb3, 0xd4, 0xbe, 0xf3, 0x1b, 0x37, 0x6e, 0x34, 0xb4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_2725 = { .name = "ecdh_secp256r1_2725", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2725_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2725_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2725_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 197 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2726 for ECDH, tcId is 198 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2726_peerpubkey[] = { 0x44, 0xf6, 0x00, 0xda, 0x71, 0x60, 0xb9, 0x75, 0xa0, 0x23, 0x2c, 0xb6, 0xa4, 0xa9, 0xe7, 0x28, 0x03, 0xfd, 0x77, 0xca, 0xac, 0x84, 0x35, 0x20, 0x39, 0xce, 0x9f, 0x4a, 0x67, 0xa1, 0xda, 0x77, 0x62, 0x60, 0x45, 0x59, 0x93, 0x81, 0xe5, 0x99, 0xeb, 0x9c, 0xd0, 0x3f, 0x28, 0x2e, 0x26, 0x7b, 0x8c, 0xfd, 0x3b, 0xa9, 0x8d, 0xab, 0xbb, 0x0f, 0x29, 0xab, 0x1c, 0x09, 0x44, 0x27, 0x0f, 0x3f, }; static const unsigned char ecdh_secp256r1_2726_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2726_sharedsecret[] = { 0xe1, 0x9f, 0xe9, 0xd1, 0x29, 0x4c, 0xca, 0x94, 0xa6, 0x38, 0x88, 0x25, 0x24, 0x9e, 0x6b, 0x37, 0x93, 0x1a, 0x23, 0x1e, 0xb9, 0x17, 0xcf, 0xec, 0xb2, 0x92, 0x79, 0x2d, 0x0c, 0x18, 0xf1, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_2726 = { .name = "ecdh_secp256r1_2726", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2726_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2726_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2726_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 198 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2727 for ECDH, tcId is 199 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2727_peerpubkey[] = { 0x71, 0xe3, 0xe9, 0xbe, 0x0e, 0x0e, 0xe4, 0x44, 0x9a, 0x19, 0xd2, 0xef, 0x79, 0x19, 0x26, 0x68, 0x14, 0xa0, 0xfa, 0xfd, 0x04, 0xfb, 0x67, 0x7e, 0xdc, 0x32, 0x65, 0x6e, 0x6a, 0x46, 0xe4, 0xd2, 0xbc, 0x5f, 0x40, 0x4c, 0x5b, 0x54, 0xf0, 0x3e, 0x29, 0x4b, 0xe2, 0x2e, 0x88, 0x20, 0xa7, 0x1b, 0x4d, 0x4a, 0xc0, 0x4a, 0x70, 0x8e, 0x13, 0xcd, 0x71, 0xfd, 0xb0, 0x04, 0x1e, 0x7e, 0x96, 0x98, }; static const unsigned char ecdh_secp256r1_2727_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2727_sharedsecret[] = { 0xdd, 0xc1, 0xf4, 0x66, 0x3b, 0x92, 0x8a, 0xdd, 0x06, 0xb1, 0xe5, 0x7c, 0x48, 0xdb, 0x98, 0xea, 0x08, 0xc4, 0xd3, 0x3c, 0x3c, 0x21, 0x06, 0x37, 0x14, 0x07, 0xf3, 0x84, 0x8a, 0x9d, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256r1_2727 = { .name = "ecdh_secp256r1_2727", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2727_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2727_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2727_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 199 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2728 for ECDH, tcId is 200 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2728_peerpubkey[] = { 0x27, 0xb6, 0x93, 0x61, 0x01, 0x54, 0xd5, 0xb7, 0xf0, 0x80, 0x94, 0xe4, 0x6f, 0xf2, 0xa2, 0xac, 0x1c, 0x01, 0xd3, 0xcd, 0x82, 0x6e, 0x32, 0x08, 0xe5, 0x25, 0x44, 0x36, 0xed, 0x27, 0x99, 0x60, 0xf2, 0x36, 0x4e, 0x3a, 0x60, 0x4f, 0x3b, 0x59, 0x2e, 0x19, 0x26, 0x2a, 0x1b, 0x22, 0xb1, 0xa1, 0x48, 0xe3, 0x8c, 0xd8, 0x2c, 0x9e, 0x54, 0xf1, 0x08, 0xef, 0x8f, 0x83, 0x36, 0x83, 0xf8, 0xb4, }; static const unsigned char ecdh_secp256r1_2728_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2728_sharedsecret[] = { 0x91, 0xdf, 0xa9, 0x5e, 0xd1, 0xea, 0xcb, 0xea, 0x41, 0x91, 0x56, 0x47, 0x1a, 0x8d, 0xdb, 0xb6, 0xcb, 0x93, 0xdd, 0x45, 0x64, 0x33, 0xe1, 0x86, 0x33, 0xd2, 0x68, 0x17, 0x61, 0x1b, 0x9c, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_2728 = { .name = "ecdh_secp256r1_2728", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2728_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2728_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2728_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 200 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2729 for ECDH, tcId is 201 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2729_peerpubkey[] = { 0xc3, 0x2a, 0x52, 0xaf, 0x6d, 0xac, 0x36, 0x9b, 0x6a, 0x49, 0x9a, 0x49, 0xd3, 0xe3, 0x8e, 0x7c, 0x95, 0x34, 0xbb, 0x91, 0x39, 0xf5, 0x7d, 0x49, 0x84, 0xb1, 0xd3, 0xc0, 0x4a, 0xb8, 0x22, 0x06, 0x53, 0xcd, 0xc2, 0xda, 0xef, 0xac, 0x83, 0xcf, 0x43, 0xc0, 0xd6, 0x46, 0x04, 0xe5, 0xf9, 0xd8, 0x5b, 0x55, 0xdd, 0xe6, 0x2b, 0x69, 0x2c, 0xd3, 0x6a, 0xf9, 0x9e, 0xbf, 0xf4, 0x14, 0x0c, 0x39, }; static const unsigned char ecdh_secp256r1_2729_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2729_sharedsecret[] = { 0x9f, 0x91, 0xa9, 0x63, 0x3d, 0xaa, 0x4c, 0x56, 0x46, 0x5e, 0x9f, 0xbe, 0xf4, 0x43, 0x1e, 0x13, 0x04, 0x1f, 0x68, 0x91, 0x0f, 0xb5, 0xba, 0x89, 0xf8, 0xda, 0x93, 0x81, 0xd6, 0x8a, 0x0d, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256r1_2729 = { .name = "ecdh_secp256r1_2729", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2729_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2729_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2729_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 201 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2730 for ECDH, tcId is 202 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2730_peerpubkey[] = { 0x6f, 0x4e, 0x2f, 0x72, 0xf3, 0x2a, 0xe6, 0x6f, 0x1f, 0x46, 0x10, 0x96, 0x60, 0x04, 0xc4, 0x36, 0xaa, 0x0d, 0x90, 0xb7, 0xdf, 0x07, 0xce, 0x9c, 0x4a, 0xca, 0x52, 0xb0, 0x2d, 0x46, 0xb4, 0xd0, 0xc6, 0xa3, 0xec, 0x76, 0xbf, 0x32, 0x1b, 0x7f, 0xe5, 0x20, 0x3c, 0xf3, 0xd6, 0x6e, 0x2d, 0x52, 0xe3, 0xee, 0x04, 0x95, 0xec, 0x76, 0x6d, 0x57, 0x9a, 0x45, 0x11, 0x17, 0x5e, 0x01, 0xbc, 0x4d, }; static const unsigned char ecdh_secp256r1_2730_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2730_sharedsecret[] = { 0x01, 0x4a, 0xe8, 0x14, 0x42, 0xf8, 0xcb, 0x6d, 0xf5, 0x8f, 0xf4, 0x1e, 0x6d, 0xb2, 0x03, 0xdb, 0x40, 0xea, 0x95, 0x1b, 0x91, 0xbe, 0xbf, 0x86, 0xd4, 0x2c, 0xda, 0x7b, 0xe3, 0x3f, 0xea, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_2730 = { .name = "ecdh_secp256r1_2730", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2730_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2730_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2730_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 202 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2731 for ECDH, tcId is 203 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2731_peerpubkey[] = { 0x2e, 0x06, 0x59, 0x75, 0xdf, 0x64, 0x2f, 0xcf, 0xda, 0xfe, 0x2f, 0xa5, 0xaf, 0xfc, 0x18, 0xb2, 0xc6, 0x83, 0x71, 0x79, 0x6f, 0x9d, 0x96, 0x3d, 0x89, 0xc4, 0xf5, 0xac, 0x5c, 0xce, 0xa2, 0x8b, 0x99, 0x0f, 0x31, 0x52, 0x2f, 0xbb, 0x26, 0x5c, 0x3f, 0x4d, 0x5c, 0x4b, 0xb8, 0x2e, 0xbf, 0x5d, 0xdf, 0xf5, 0xa8, 0xea, 0x58, 0x8d, 0xb4, 0xd2, 0x82, 0xac, 0xdc, 0xa7, 0xa6, 0xcc, 0xf4, 0x28, }; static const unsigned char ecdh_secp256r1_2731_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2731_sharedsecret[] = { 0x78, 0xe8, 0x1e, 0x85, 0x73, 0xc3, 0xae, 0x60, 0x89, 0xdf, 0x7d, 0xb1, 0xfb, 0x29, 0xd7, 0xbe, 0x12, 0xdc, 0x11, 0xf1, 0x5b, 0xb2, 0x5b, 0xff, 0x2a, 0xf8, 0x02, 0xe1, 0x5d, 0xdc, 0x13, 0x6e, }; static const wycheproof_ecdh_test ecdh_secp256r1_2731 = { .name = "ecdh_secp256r1_2731", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2731_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2731_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2731_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 203 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2732 for ECDH, tcId is 204 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2732_peerpubkey[] = { 0xe1, 0x33, 0x1e, 0xee, 0x03, 0xc5, 0x0c, 0xc2, 0xb9, 0x09, 0x44, 0xdd, 0xfc, 0x0d, 0x3a, 0x7d, 0xd8, 0x18, 0x5e, 0x6c, 0x21, 0xc7, 0x5f, 0xa9, 0x2a, 0x0c, 0x14, 0xb0, 0xf1, 0x94, 0x9a, 0xc9, 0x15, 0x4d, 0x78, 0x3f, 0x45, 0x47, 0xdc, 0xf5, 0x50, 0x8b, 0xbd, 0x86, 0xc3, 0xdd, 0x8c, 0x3b, 0x17, 0xb6, 0x19, 0x89, 0xf9, 0x3d, 0xb5, 0x49, 0x0e, 0xc0, 0x2a, 0x46, 0xa1, 0x00, 0x5c, 0x2c, }; static const unsigned char ecdh_secp256r1_2732_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2732_sharedsecret[] = { 0xed, 0x67, 0x19, 0x5a, 0x27, 0x2c, 0x63, 0xc5, 0x02, 0x05, 0xab, 0xf2, 0x74, 0x39, 0x29, 0x11, 0x34, 0xff, 0xa1, 0xe8, 0xec, 0x59, 0x7f, 0x3b, 0x30, 0x27, 0x16, 0xd9, 0x36, 0x32, 0xe9, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2732 = { .name = "ecdh_secp256r1_2732", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2732_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2732_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2732_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 204 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2733 for ECDH, tcId is 205 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2733_peerpubkey[] = { 0xe0, 0xc5, 0x6d, 0x48, 0x6e, 0x9c, 0x01, 0x16, 0x3e, 0xd6, 0xc3, 0xff, 0x25, 0xde, 0x3c, 0xdf, 0x57, 0x44, 0xdb, 0xf9, 0xe0, 0xe0, 0x0b, 0xdc, 0xf1, 0x99, 0x65, 0xdf, 0x4b, 0xa1, 0xf3, 0x11, 0xbd, 0x5e, 0x44, 0x43, 0x06, 0x65, 0x82, 0x3d, 0x8c, 0x0b, 0x34, 0xeb, 0xec, 0x0a, 0x6a, 0xab, 0x5e, 0xa9, 0x6c, 0xf2, 0x39, 0xde, 0x21, 0x4f, 0xd0, 0x11, 0xe6, 0xf9, 0xec, 0x50, 0x1d, 0xd4, }; static const unsigned char ecdh_secp256r1_2733_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2733_sharedsecret[] = { 0x50, 0x77, 0x43, 0x47, 0x84, 0x88, 0x28, 0xee, 0xb6, 0x23, 0x0f, 0x49, 0x7c, 0xd1, 0x81, 0xf8, 0xc5, 0x7f, 0xbd, 0x18, 0xff, 0xbf, 0x83, 0x28, 0xcd, 0x00, 0x83, 0x21, 0xa1, 0xc3, 0x7c, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256r1_2733 = { .name = "ecdh_secp256r1_2733", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2733_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2733_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2733_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 205 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2734 for ECDH, tcId is 206 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2734_peerpubkey[] = { 0x88, 0x5e, 0xad, 0x6c, 0x07, 0x4f, 0x8d, 0x75, 0x1a, 0x76, 0x7e, 0x91, 0x8c, 0x4e, 0x89, 0x21, 0x0a, 0x58, 0x7c, 0x4b, 0x19, 0xd4, 0x22, 0x44, 0xae, 0x07, 0x02, 0x7e, 0x36, 0x18, 0x31, 0x05, 0x3e, 0x80, 0x77, 0x2b, 0xe5, 0x7f, 0xbd, 0x74, 0x49, 0x55, 0xa2, 0xe8, 0x52, 0x30, 0x63, 0xcc, 0x61, 0x36, 0xf2, 0xbb, 0x37, 0xbe, 0xfb, 0xef, 0x7a, 0x68, 0x1d, 0x3b, 0xbb, 0xc5, 0x77, 0x88, }; static const unsigned char ecdh_secp256r1_2734_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_2734_sharedsecret[] = { 0x91, 0x3d, 0xa7, 0x10, 0x44, 0xb8, 0x02, 0x1a, 0x86, 0xc8, 0xfc, 0xaf, 0x4f, 0x63, 0x4d, 0x0d, 0x62, 0x5f, 0xf9, 0x1e, 0xe1, 0xc8, 0x47, 0x4d, 0x54, 0x8b, 0xd1, 0x08, 0x88, 0x96, 0x4f, 0xb1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2734 = { .name = "ecdh_secp256r1_2734", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2734_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2734_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2734_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 206 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2735 for ECDH, tcId is 207 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2735_peerpubkey[] = { 0x41, 0xe9, 0xd4, 0xcf, 0xa8, 0xef, 0xe8, 0x0b, 0x89, 0x5a, 0x8c, 0xbc, 0xce, 0x25, 0x68, 0xe2, 0x51, 0xdb, 0x7e, 0xcd, 0xfd, 0x20, 0xa7, 0xad, 0x71, 0x0d, 0x4a, 0x4b, 0xf2, 0xad, 0xdc, 0x6b, 0x5e, 0xc3, 0x6a, 0x83, 0x39, 0x16, 0x8a, 0x03, 0xf1, 0x5b, 0x8c, 0x80, 0xf2, 0xa2, 0xa8, 0x28, 0xf1, 0x51, 0xd3, 0x87, 0x91, 0x58, 0x48, 0x53, 0xba, 0x2f, 0xf4, 0x4a, 0x2a, 0x04, 0x60, 0xa1, }; static const unsigned char ecdh_secp256r1_2735_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2735_sharedsecret[] = { 0xb4, 0x8e, 0x11, 0x9d, 0x29, 0xee, 0xf7, 0xdb, 0xb7, 0x6b, 0x64, 0x21, 0x8e, 0x72, 0x8d, 0xdb, 0xf6, 0xec, 0x60, 0x05, 0x05, 0xec, 0x7c, 0xed, 0x6a, 0xb6, 0xfb, 0x87, 0x63, 0x30, 0x8d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2735 = { .name = "ecdh_secp256r1_2735", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2735_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2735_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2735_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 207 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2736 for ECDH, tcId is 208 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2736_peerpubkey[] = { 0x77, 0x6a, 0xef, 0x1a, 0xcb, 0x82, 0xb6, 0x28, 0xe1, 0x32, 0xcc, 0x29, 0x44, 0x09, 0x88, 0xf0, 0xa1, 0x5d, 0x4c, 0xc2, 0xb4, 0xf3, 0x28, 0xae, 0xcb, 0x06, 0x3c, 0x9b, 0x86, 0xe5, 0x01, 0x8e, 0x6e, 0x44, 0xdf, 0xc6, 0x04, 0x44, 0xfa, 0xa9, 0xc4, 0xe3, 0x6b, 0xc2, 0x17, 0x45, 0x1f, 0x7a, 0xc2, 0x95, 0x6c, 0xb3, 0xb2, 0xe9, 0xbb, 0xd6, 0x55, 0xeb, 0xa2, 0x97, 0x16, 0x3d, 0x1f, 0x34, }; static const unsigned char ecdh_secp256r1_2736_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2736_sharedsecret[] = { 0x28, 0xa8, 0x8b, 0x6b, 0x25, 0x8f, 0x23, 0x30, 0x20, 0xba, 0x6f, 0xa9, 0xc0, 0x0d, 0x1d, 0x72, 0x83, 0x1f, 0x45, 0x15, 0xb8, 0x69, 0x66, 0xa9, 0x78, 0x2f, 0x52, 0x13, 0x15, 0xe1, 0x8a, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256r1_2736 = { .name = "ecdh_secp256r1_2736", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2736_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2736_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2736_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 208 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2737 for ECDH, tcId is 209 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2737_peerpubkey[] = { 0x9e, 0xc0, 0x6b, 0x0b, 0x08, 0x66, 0x2c, 0x0e, 0x1d, 0xd9, 0x11, 0x16, 0x96, 0xa6, 0x3a, 0x16, 0x01, 0xcc, 0x83, 0xce, 0xe2, 0x06, 0x95, 0x77, 0x8a, 0xdf, 0x84, 0xd4, 0x30, 0x64, 0xfc, 0x90, 0x15, 0x60, 0x01, 0xf0, 0x84, 0xcd, 0x3c, 0x1d, 0xf1, 0xa0, 0x87, 0xf6, 0x26, 0x53, 0x3b, 0x65, 0x72, 0x58, 0x48, 0x89, 0xbd, 0x3d, 0x5c, 0x2c, 0x99, 0xf0, 0xe3, 0x11, 0xe2, 0x2b, 0x41, 0xe6, }; static const unsigned char ecdh_secp256r1_2737_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2737_sharedsecret[] = { 0xc4, 0xff, 0x86, 0x5f, 0xf3, 0xdc, 0x49, 0x53, 0xea, 0x78, 0xd9, 0x2a, 0x02, 0xf3, 0x34, 0x5a, 0x53, 0xbd, 0xb6, 0x05, 0x0c, 0xfd, 0x8f, 0x41, 0xba, 0xa4, 0x39, 0x5e, 0xcb, 0x6a, 0xca, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_2737 = { .name = "ecdh_secp256r1_2737", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2737_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2737_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2737_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 209 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2738 for ECDH, tcId is 210 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2738_peerpubkey[] = { 0xfa, 0x51, 0xd1, 0x28, 0xad, 0xc2, 0x00, 0x0f, 0x09, 0xff, 0x12, 0xc6, 0xfd, 0x8e, 0x25, 0xaa, 0x08, 0x55, 0x6d, 0x70, 0x8b, 0xf6, 0xb0, 0xff, 0xff, 0x9e, 0x8e, 0xaa, 0xd4, 0x78, 0x3f, 0x0d, 0xe2, 0x2b, 0xf5, 0x29, 0xe5, 0x16, 0xe1, 0xf6, 0x4b, 0x8e, 0x0d, 0x09, 0xf9, 0x8f, 0xad, 0x4e, 0x50, 0x16, 0x95, 0xa9, 0x30, 0xa1, 0xb2, 0x20, 0x76, 0x65, 0x9d, 0xa7, 0x07, 0xe3, 0xcc, 0xd0, }; static const unsigned char ecdh_secp256r1_2738_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2738_sharedsecret[] = { 0xde, 0x10, 0x69, 0xf0, 0x51, 0x63, 0x7e, 0x10, 0x16, 0x65, 0x59, 0xce, 0xf4, 0x46, 0x88, 0xaf, 0xc8, 0x09, 0x34, 0x18, 0x55, 0x26, 0x12, 0x15, 0xc4, 0xf3, 0x81, 0xd9, 0xd7, 0xda, 0x76, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_2738 = { .name = "ecdh_secp256r1_2738", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2738_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2738_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2738_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 210 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2739 for ECDH, tcId is 211 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2739_peerpubkey[] = { 0x61, 0x4d, 0xcf, 0xbe, 0xa4, 0x78, 0x9a, 0x3f, 0x3e, 0xb4, 0xa8, 0xe2, 0xf1, 0x11, 0xc8, 0x87, 0xf0, 0x24, 0x8d, 0x93, 0x16, 0xb9, 0x9d, 0x08, 0x64, 0xc9, 0x27, 0xa0, 0x45, 0xd6, 0x94, 0x17, 0x53, 0xa0, 0x73, 0xbe, 0xfe, 0x08, 0x49, 0x1a, 0x80, 0x50, 0xa4, 0xd9, 0x6d, 0x08, 0xba, 0x47, 0x90, 0xae, 0x18, 0xdb, 0x3e, 0xf7, 0xf0, 0xea, 0xcc, 0xf5, 0x9c, 0xe1, 0x09, 0x5a, 0xfc, 0x54, }; static const unsigned char ecdh_secp256r1_2739_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2739_sharedsecret[] = { 0x42, 0x07, 0xbf, 0x41, 0x59, 0xfa, 0xa0, 0xe5, 0x0e, 0xd2, 0x38, 0xb9, 0xc0, 0xff, 0x46, 0x19, 0x4a, 0x53, 0x9a, 0x1b, 0xa0, 0x3a, 0x5a, 0x4c, 0x8d, 0x68, 0xf3, 0x69, 0xae, 0xcd, 0x31, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2739 = { .name = "ecdh_secp256r1_2739", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2739_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2739_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2739_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 211 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2740 for ECDH, tcId is 212 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2740_peerpubkey[] = { 0xef, 0xe7, 0x75, 0x4e, 0xd4, 0xc0, 0xb3, 0xc1, 0xdd, 0x30, 0x1b, 0xc1, 0xed, 0x69, 0x80, 0x0a, 0xa2, 0xff, 0x5d, 0x51, 0xfb, 0x85, 0x93, 0x77, 0x15, 0xe6, 0x0d, 0x2e, 0x7b, 0xca, 0xda, 0x8e, 0xb1, 0x58, 0x1a, 0xb7, 0x5f, 0xb3, 0xc7, 0x97, 0xef, 0x94, 0xa9, 0xdb, 0xa3, 0xd8, 0x25, 0x68, 0xc8, 0x46, 0x17, 0xea, 0xf3, 0xfa, 0x04, 0xf2, 0x79, 0xfb, 0xfd, 0x89, 0x8f, 0x70, 0x46, 0x04, }; static const unsigned char ecdh_secp256r1_2740_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2740_sharedsecret[] = { 0xb5, 0xa0, 0xec, 0x92, 0xae, 0xcc, 0x30, 0x10, 0xd2, 0x7d, 0x22, 0x63, 0xd3, 0xda, 0x66, 0xe3, 0xd2, 0xf3, 0x39, 0x5d, 0x23, 0x94, 0x70, 0x24, 0xa3, 0xf4, 0x74, 0x44, 0x54, 0x62, 0x20, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256r1_2740 = { .name = "ecdh_secp256r1_2740", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2740_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2740_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2740_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 212 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2741 for ECDH, tcId is 213 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2741_peerpubkey[] = { 0xd8, 0xe1, 0x3f, 0xbd, 0x01, 0x7f, 0x1f, 0x9a, 0x26, 0xbe, 0x35, 0xc6, 0x11, 0xd7, 0xb2, 0x29, 0x9f, 0x5d, 0x10, 0xde, 0x3c, 0x8a, 0x26, 0x36, 0x22, 0x73, 0xff, 0xfb, 0x85, 0x23, 0x8f, 0x3e, 0xd1, 0x42, 0x6b, 0x74, 0x8c, 0x1f, 0x87, 0xe3, 0xaf, 0xa2, 0xc1, 0xe7, 0xa0, 0x22, 0x43, 0x10, 0xc9, 0x80, 0x65, 0x5e, 0x07, 0x39, 0x95, 0x90, 0xd1, 0x49, 0x4d, 0x6d, 0x6b, 0xea, 0x03, 0x96, }; static const unsigned char ecdh_secp256r1_2741_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2741_sharedsecret[] = { 0xd2, 0xa5, 0xbc, 0x66, 0x49, 0x8c, 0x60, 0x36, 0xae, 0xcd, 0xfa, 0xad, 0x04, 0x1c, 0xef, 0x73, 0x2a, 0x89, 0x3d, 0xe1, 0x90, 0xa0, 0xa5, 0xb4, 0x2f, 0xf7, 0x1e, 0x13, 0xf0, 0x92, 0x80, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_2741 = { .name = "ecdh_secp256r1_2741", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2741_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2741_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2741_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 213 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2742 for ECDH, tcId is 214 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2742_peerpubkey[] = { 0x5a, 0x10, 0x27, 0x66, 0x6a, 0x0e, 0x37, 0x24, 0x81, 0xfe, 0xc0, 0xb3, 0x90, 0x1e, 0x05, 0x8d, 0x60, 0x10, 0x7c, 0x07, 0xb1, 0x11, 0x55, 0x50, 0xce, 0xb0, 0x57, 0x89, 0xb5, 0x5a, 0x6d, 0x35, 0x06, 0x3d, 0x4c, 0x8e, 0xe6, 0x6e, 0xd4, 0x5f, 0xf3, 0xe1, 0xdf, 0xdc, 0xfd, 0x73, 0xed, 0x96, 0xa9, 0xe8, 0x31, 0x93, 0x88, 0x4a, 0xdb, 0xca, 0xa5, 0x74, 0xb2, 0xdd, 0x11, 0x8a, 0x69, 0x2b, }; static const unsigned char ecdh_secp256r1_2742_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2742_sharedsecret[] = { 0x1f, 0x81, 0x23, 0x13, 0xdd, 0xcf, 0x36, 0xbc, 0x38, 0x07, 0x1d, 0x0e, 0x51, 0xa7, 0x41, 0x00, 0xd6, 0x30, 0xc8, 0xe2, 0x0c, 0xc4, 0x14, 0x32, 0x6e, 0xef, 0xa4, 0x2e, 0xcb, 0x1b, 0x5f, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp256r1_2742 = { .name = "ecdh_secp256r1_2742", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2742_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2742_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2742_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 214 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2743 for ECDH, tcId is 215 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2743_peerpubkey[] = { 0x79, 0x37, 0xb9, 0xc4, 0x09, 0x86, 0xdd, 0x75, 0x5a, 0x06, 0x56, 0x20, 0x30, 0x89, 0x78, 0x25, 0x83, 0xda, 0x7d, 0x81, 0x13, 0xa4, 0x41, 0x90, 0x76, 0x2a, 0xb4, 0x74, 0xa2, 0x0b, 0xcf, 0x60, 0xef, 0xcb, 0xc1, 0x52, 0x5a, 0xed, 0x5b, 0x4a, 0xd8, 0xe6, 0x87, 0xcb, 0x02, 0xc2, 0xef, 0x88, 0x87, 0x09, 0x5c, 0xad, 0xca, 0x56, 0xc7, 0x65, 0xb4, 0x1b, 0x4a, 0x95, 0x44, 0xff, 0x2f, 0xe8, }; static const unsigned char ecdh_secp256r1_2743_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2743_sharedsecret[] = { 0xf2, 0x84, 0x08, 0x9b, 0xdd, 0xd5, 0xe2, 0xe1, 0xbe, 0x3f, 0x82, 0x64, 0x0e, 0xfa, 0x06, 0x58, 0x46, 0x8f, 0xa1, 0xf1, 0x0b, 0x28, 0x19, 0x63, 0xa3, 0xca, 0x19, 0x0c, 0x39, 0x82, 0xfd, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_2743 = { .name = "ecdh_secp256r1_2743", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2743_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2743_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2743_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 215 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2744 for ECDH, tcId is 216 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2744_peerpubkey[] = { 0x93, 0x68, 0x06, 0x6a, 0x07, 0x48, 0x86, 0x7a, 0x7b, 0x87, 0x02, 0x44, 0xf5, 0xc9, 0xf8, 0x2e, 0xa8, 0xbd, 0x51, 0x55, 0x29, 0x59, 0xdd, 0x55, 0x0b, 0xb7, 0x39, 0x44, 0x97, 0x15, 0x9a, 0x5d, 0x40, 0x76, 0x4a, 0xdd, 0x1a, 0xe2, 0x4c, 0x8e, 0x3f, 0x43, 0x2e, 0xe0, 0x11, 0xbe, 0x97, 0xd3, 0x13, 0x07, 0x18, 0xfe, 0x0a, 0x6a, 0x90, 0xed, 0x8b, 0x10, 0x11, 0xb2, 0x03, 0x4d, 0x09, 0xa0, }; static const unsigned char ecdh_secp256r1_2744_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2744_sharedsecret[] = { 0x45, 0x29, 0xf4, 0xb6, 0x31, 0xc9, 0x98, 0x4a, 0xb2, 0x16, 0xa6, 0x80, 0x12, 0x81, 0xfc, 0x4f, 0xd8, 0x73, 0x1a, 0x58, 0xb6, 0x5c, 0xa8, 0xd0, 0x7b, 0xff, 0x07, 0x81, 0x11, 0x16, 0x37, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2744 = { .name = "ecdh_secp256r1_2744", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2744_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2744_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2744_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 216 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2745 for ECDH, tcId is 217 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2745_peerpubkey[] = { 0x98, 0x1d, 0x74, 0x49, 0xbd, 0xf0, 0x01, 0x3f, 0x5e, 0xed, 0xdb, 0xb7, 0xe4, 0x2c, 0x44, 0x2f, 0x7c, 0xcd, 0xd9, 0x42, 0x7b, 0xd2, 0x6d, 0x7b, 0x38, 0x87, 0x55, 0xaa, 0x5e, 0x26, 0xf4, 0x6a, 0x12, 0x92, 0xb8, 0x8f, 0xa6, 0xbf, 0x5d, 0xff, 0xca, 0x05, 0x4d, 0xd4, 0x2e, 0xd3, 0x59, 0x42, 0x77, 0xb5, 0x93, 0xdc, 0xc4, 0x02, 0xd8, 0x03, 0x40, 0xfb, 0x78, 0x16, 0xe4, 0xdc, 0xab, 0x37, }; static const unsigned char ecdh_secp256r1_2745_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2745_sharedsecret[] = { 0x64, 0xbb, 0xc9, 0xfd, 0xd7, 0x36, 0x43, 0xeb, 0x29, 0x54, 0xf4, 0xab, 0x64, 0x03, 0x81, 0xb9, 0x38, 0xc5, 0xe6, 0x01, 0x84, 0x6a, 0x0c, 0x6b, 0x69, 0x54, 0x96, 0x6e, 0x0d, 0xc7, 0x3e, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2745 = { .name = "ecdh_secp256r1_2745", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2745_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2745_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2745_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 217 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2746 for ECDH, tcId is 218 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2746_peerpubkey[] = { 0x09, 0xe7, 0x8d, 0x4e, 0xf6, 0x0d, 0x05, 0xf7, 0x50, 0xf6, 0x63, 0x62, 0x09, 0x09, 0x2b, 0xc4, 0x3c, 0xbd, 0xd6, 0xb4, 0x7e, 0x11, 0xa9, 0xde, 0x20, 0xa9, 0xfe, 0xb2, 0xa5, 0x0b, 0xb9, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2746_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2746_sharedsecret[] = { 0x28, 0xf6, 0x77, 0x57, 0xac, 0xc2, 0x8b, 0x16, 0x84, 0xba, 0x76, 0xff, 0xd5, 0x34, 0xae, 0xd4, 0x2d, 0x45, 0xb8, 0xb3, 0xf1, 0x0b, 0x82, 0xa5, 0x69, 0x94, 0x16, 0xef, 0xf7, 0x19, 0x9a, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256r1_2746 = { .name = "ecdh_secp256r1_2746", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2746_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2746_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2746_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 218 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2747 for ECDH, tcId is 219 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2747_peerpubkey[] = { 0x53, 0x84, 0xd6, 0xc0, 0xde, 0xf7, 0x89, 0x60, 0xdb, 0x96, 0x7b, 0x80, 0x96, 0xd3, 0x54, 0x77, 0xc5, 0xa5, 0xce, 0x30, 0xef, 0x0c, 0x6d, 0x88, 0x79, 0xa5, 0x56, 0x8c, 0xa8, 0x7e, 0x97, 0x94, 0x01, 0xee, 0x56, 0xc4, 0x58, 0x17, 0x22, 0x61, 0x0b, 0x43, 0xf3, 0xcb, 0xfc, 0xf3, 0x86, 0x2c, 0x08, 0x2a, 0x6e, 0x36, 0xba, 0xa3, 0x6f, 0xd6, 0xf7, 0x84, 0x03, 0xc0, 0xe3, 0x99, 0xfa, 0xa5, }; static const unsigned char ecdh_secp256r1_2747_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2747_sharedsecret[] = { 0x9e, 0xe6, 0x53, 0xcd, 0xa4, 0x6d, 0xb6, 0x76, 0x12, 0x76, 0x0c, 0xe3, 0x5b, 0xac, 0x84, 0x50, 0xbb, 0xf4, 0x8d, 0xbf, 0x74, 0x45, 0x1e, 0xd9, 0x3a, 0xbb, 0x6d, 0xb4, 0x08, 0xa9, 0xfe, 0x10, }; static const wycheproof_ecdh_test ecdh_secp256r1_2747 = { .name = "ecdh_secp256r1_2747", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2747_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2747_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2747_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 219 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2748 for ECDH, tcId is 220 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2748_peerpubkey[] = { 0x4e, 0xca, 0x76, 0x41, 0xa4, 0xaf, 0xd5, 0xea, 0xb0, 0xb2, 0x14, 0x65, 0x7f, 0xf3, 0xbd, 0xcb, 0xfc, 0x66, 0xf1, 0x55, 0x1a, 0x53, 0xbb, 0x59, 0x49, 0x3b, 0xc3, 0x8e, 0xd7, 0x8f, 0xf3, 0x96, 0x14, 0xa0, 0xca, 0xdf, 0xf1, 0x4c, 0x14, 0x73, 0x6e, 0xdb, 0xdc, 0xda, 0xb5, 0x10, 0xcb, 0xa0, 0x7a, 0x89, 0x24, 0xff, 0xd0, 0x49, 0x0e, 0xe5, 0x14, 0xae, 0xdf, 0xaa, 0xdb, 0x64, 0x8b, 0x01, }; static const unsigned char ecdh_secp256r1_2748_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2748_sharedsecret[] = { 0x97, 0x36, 0xad, 0x6b, 0x2a, 0x2e, 0xf1, 0x7e, 0xc3, 0xf8, 0xc8, 0xdc, 0x2e, 0x35, 0x71, 0x5f, 0xb1, 0xc0, 0x6f, 0x28, 0xd8, 0x2e, 0x4e, 0x26, 0x87, 0x6f, 0x02, 0x14, 0x58, 0x81, 0x65, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2748 = { .name = "ecdh_secp256r1_2748", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2748_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2748_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2748_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 220 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2749 for ECDH, tcId is 221 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2749_peerpubkey[] = { 0x8d, 0x01, 0x77, 0xeb, 0xab, 0x9c, 0x6e, 0x9e, 0x10, 0xdb, 0x6d, 0xd0, 0x95, 0xdb, 0xac, 0x0d, 0x63, 0x75, 0xe8, 0xa9, 0x7b, 0x70, 0xf6, 0x11, 0x87, 0x5d, 0x87, 0x7f, 0x00, 0x69, 0xd2, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2749_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2749_sharedsecret[] = { 0x74, 0x8f, 0xa4, 0xf5, 0xa3, 0x99, 0x32, 0x03, 0x82, 0xdc, 0x92, 0x00, 0x26, 0x93, 0x86, 0x94, 0xc4, 0x1a, 0x26, 0xfe, 0x2a, 0xaa, 0x31, 0x8c, 0x5e, 0x71, 0x01, 0x98, 0xdd, 0x71, 0xc7, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_2749 = { .name = "ecdh_secp256r1_2749", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2749_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2749_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2749_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 221 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2750 for ECDH, tcId is 222 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2750_peerpubkey[] = { 0x5f, 0xdb, 0x7f, 0x0c, 0xff, 0xb8, 0xb5, 0xb1, 0x14, 0x2d, 0x24, 0x69, 0x8a, 0x4b, 0xda, 0x76, 0xbf, 0x98, 0x27, 0xd6, 0x3b, 0x1a, 0x6b, 0xd8, 0x5a, 0x4e, 0x2f, 0x9b, 0x59, 0xc5, 0x10, 0xcf, 0xbc, 0xb3, 0x5b, 0xa9, 0xc9, 0x87, 0x10, 0x8b, 0x6d, 0x43, 0x37, 0xad, 0x53, 0x93, 0xf9, 0xf9, 0x10, 0xec, 0x92, 0x41, 0x0c, 0x23, 0x08, 0x69, 0xd6, 0x65, 0x28, 0xed, 0x88, 0xc1, 0xb9, 0x8a, }; static const unsigned char ecdh_secp256r1_2750_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2750_sharedsecret[] = { 0x7f, 0x97, 0xdb, 0x83, 0xb4, 0xd8, 0x6f, 0x04, 0xfe, 0x28, 0x60, 0x41, 0xee, 0x21, 0xe8, 0x0e, 0xc3, 0xd5, 0x9f, 0x3c, 0xe8, 0x2c, 0xde, 0xea, 0xf3, 0x62, 0x01, 0x6f, 0xc8, 0x7a, 0x3e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_2750 = { .name = "ecdh_secp256r1_2750", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2750_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2750_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2750_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 222 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2751 for ECDH, tcId is 223 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2751_peerpubkey[] = { 0x53, 0x0b, 0x22, 0x93, 0xe6, 0x0c, 0x6b, 0x6f, 0x14, 0xc7, 0x5c, 0x90, 0xb1, 0xef, 0x8b, 0x9f, 0x9f, 0xa6, 0xb2, 0x15, 0x1b, 0x8d, 0x98, 0x55, 0x79, 0x2e, 0xb2, 0xb3, 0xdc, 0x69, 0xf0, 0x7a, 0x0d, 0xb4, 0x24, 0x40, 0xe7, 0x3f, 0xd7, 0xd6, 0xdf, 0x04, 0xae, 0xd5, 0x02, 0x2f, 0xbe, 0x21, 0xce, 0xae, 0xc3, 0x3c, 0x5f, 0xba, 0xde, 0x1b, 0xd6, 0xad, 0x32, 0x1e, 0xf2, 0xe1, 0x0d, 0x0b, }; static const unsigned char ecdh_secp256r1_2751_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2751_sharedsecret[] = { 0x21, 0x79, 0x4c, 0xf2, 0x4f, 0x56, 0x27, 0x3f, 0xa4, 0x46, 0x3c, 0xc7, 0xae, 0x42, 0x32, 0xfa, 0x34, 0xdb, 0xe0, 0xf1, 0x8b, 0x73, 0x61, 0x3b, 0x8a, 0xe9, 0xcb, 0xfb, 0x9c, 0x36, 0xab, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256r1_2751 = { .name = "ecdh_secp256r1_2751", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2751_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2751_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2751_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 223 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2752 for ECDH, tcId is 224 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2752_peerpubkey[] = { 0x69, 0x16, 0xfa, 0xc4, 0x5e, 0x56, 0x8b, 0x6b, 0x9e, 0x2e, 0x2e, 0xcd, 0x61, 0x1b, 0x28, 0x2e, 0x5f, 0xcc, 0x40, 0xa3, 0x06, 0x7d, 0x60, 0x10, 0x57, 0xf8, 0x79, 0xce, 0x5a, 0x8a, 0x73, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2752_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2752_sharedsecret[] = { 0x91, 0x51, 0x06, 0xd0, 0x78, 0x16, 0xe8, 0x79, 0xe7, 0x64, 0x3f, 0x00, 0xab, 0xf6, 0xd7, 0x9f, 0xb8, 0xf1, 0xcb, 0x78, 0xbf, 0x64, 0xa6, 0xa3, 0x82, 0x7f, 0x91, 0xa7, 0xb0, 0xef, 0x0f, 0x41, }; static const wycheproof_ecdh_test ecdh_secp256r1_2752 = { .name = "ecdh_secp256r1_2752", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2752_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2752_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2752_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 224 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2753 for ECDH, tcId is 225 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2753_peerpubkey[] = { 0xed, 0x95, 0x68, 0xc8, 0x5b, 0xc5, 0x2a, 0x6b, 0x45, 0x73, 0x36, 0x18, 0xc3, 0x60, 0x21, 0x07, 0xc1, 0xfd, 0xac, 0xf2, 0x3b, 0x1a, 0x38, 0xe4, 0x86, 0xaf, 0x95, 0x97, 0x8a, 0x21, 0x4e, 0x2e, 0xfa, 0x0d, 0x71, 0xd5, 0xe7, 0x37, 0x89, 0x1c, 0x42, 0x76, 0xe2, 0x47, 0x58, 0x1e, 0xe6, 0x13, 0x90, 0x11, 0xca, 0x14, 0x60, 0xdb, 0x9b, 0x1e, 0x20, 0xb3, 0x64, 0xd9, 0x27, 0x56, 0x83, 0xe2, }; static const unsigned char ecdh_secp256r1_2753_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2753_sharedsecret[] = { 0x2f, 0xcc, 0xe5, 0x52, 0x31, 0x08, 0x19, 0xdd, 0x77, 0x5a, 0xb7, 0xba, 0x9f, 0xf0, 0xf9, 0x6a, 0x1f, 0xca, 0xdd, 0x25, 0xa0, 0xc7, 0x09, 0x70, 0x3c, 0xef, 0x04, 0xbb, 0x6e, 0x1a, 0x7b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256r1_2753 = { .name = "ecdh_secp256r1_2753", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2753_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2753_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2753_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 225 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2754 for ECDH, tcId is 226 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2754_peerpubkey[] = { 0x9f, 0xf7, 0x73, 0x1c, 0x00, 0xf2, 0xaa, 0x88, 0xb3, 0xfc, 0x17, 0x4a, 0xba, 0x90, 0x7a, 0xd1, 0x75, 0x95, 0xe6, 0x02, 0xe7, 0x68, 0xa5, 0xf1, 0xe9, 0x46, 0x2a, 0x6d, 0x4b, 0x89, 0xb2, 0xd2, 0x3f, 0x17, 0x8a, 0x70, 0xb9, 0xbb, 0x3e, 0xdc, 0xe2, 0x89, 0x11, 0x83, 0x38, 0xa3, 0x3d, 0xf3, 0x0c, 0x43, 0x2c, 0x34, 0x7f, 0x12, 0xa3, 0xde, 0x0a, 0x2b, 0x03, 0xb3, 0x53, 0x87, 0x8d, 0x96, }; static const unsigned char ecdh_secp256r1_2754_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2754_sharedsecret[] = { 0x75, 0x7d, 0x92, 0x6a, 0x26, 0x93, 0xbc, 0x8a, 0x3d, 0x2d, 0x8c, 0x05, 0x54, 0xa1, 0x35, 0x79, 0xef, 0x9e, 0x55, 0x91, 0x86, 0x57, 0x89, 0x11, 0xf3, 0x7e, 0xdc, 0x88, 0xb2, 0xf5, 0xe6, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2754 = { .name = "ecdh_secp256r1_2754", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2754_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2754_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2754_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 226 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2755 for ECDH, tcId is 227 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2755_peerpubkey[] = { 0x82, 0x70, 0xf8, 0x17, 0x9d, 0x57, 0x43, 0x6b, 0x34, 0xdf, 0xc0, 0xbd, 0xf7, 0xd4, 0x17, 0xa5, 0xc8, 0x95, 0x11, 0x6b, 0x90, 0xcb, 0x51, 0xae, 0xc7, 0x18, 0x61, 0x4f, 0x86, 0x4a, 0x63, 0x5d, 0x17, 0x48, 0x04, 0xe0, 0xc0, 0xe0, 0x6e, 0x3d, 0x68, 0xd3, 0x14, 0x9e, 0x0b, 0x95, 0x66, 0x21, 0xc6, 0xaa, 0x2b, 0xde, 0x83, 0xf4, 0xd1, 0x7d, 0x03, 0xd2, 0x8e, 0xf8, 0xaa, 0x38, 0x9f, 0xff, }; static const unsigned char ecdh_secp256r1_2755_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2755_sharedsecret[] = { 0x3d, 0xb2, 0x9e, 0xc6, 0xf9, 0x78, 0xd2, 0x26, 0x9e, 0x92, 0xe9, 0xc7, 0xeb, 0x5c, 0x8b, 0x5a, 0x8e, 0x56, 0xc2, 0x22, 0x8a, 0x4f, 0xb9, 0xe4, 0x83, 0xfe, 0xca, 0x50, 0xaa, 0x3e, 0x45, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2755 = { .name = "ecdh_secp256r1_2755", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2755_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2755_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2755_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 227 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2756 for ECDH, tcId is 228 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2756_peerpubkey[] = { 0xc6, 0x17, 0x50, 0xe9, 0x8a, 0xba, 0xf2, 0x02, 0x25, 0xa8, 0x81, 0xdb, 0xfd, 0x35, 0x10, 0x53, 0x2c, 0xfc, 0x3d, 0xf9, 0x71, 0xbb, 0xbc, 0xa4, 0xa2, 0xbd, 0x52, 0xf9, 0x1a, 0xcc, 0x9c, 0x59, 0xd0, 0xfe, 0x79, 0x34, 0x20, 0x97, 0xf8, 0x8a, 0xe7, 0x8f, 0xc7, 0x9a, 0x80, 0x32, 0x24, 0x5f, 0xdd, 0x2c, 0x30, 0xcc, 0x64, 0xac, 0xea, 0xaa, 0x9f, 0xd5, 0x7b, 0x08, 0x25, 0x69, 0x25, 0x31, }; static const unsigned char ecdh_secp256r1_2756_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2756_sharedsecret[] = { 0x72, 0xc5, 0x7c, 0x2e, 0x10, 0xd7, 0x73, 0x18, 0xb3, 0xa7, 0x96, 0x09, 0x7b, 0xbf, 0x76, 0x8c, 0x63, 0x66, 0x14, 0x2d, 0x80, 0xf9, 0x8c, 0x90, 0xa9, 0x37, 0x80, 0xa8, 0x41, 0x07, 0x5f, 0x32, }; static const wycheproof_ecdh_test ecdh_secp256r1_2756 = { .name = "ecdh_secp256r1_2756", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2756_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2756_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2756_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 228 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2757 for ECDH, tcId is 229 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2757_peerpubkey[] = { 0x9c, 0x5d, 0x3b, 0xb5, 0x46, 0x50, 0xd9, 0x55, 0x0e, 0x1e, 0xe2, 0xef, 0xa3, 0xea, 0x43, 0xc1, 0x4a, 0xb9, 0x9d, 0x18, 0xbb, 0x04, 0x9f, 0x37, 0xb4, 0x2a, 0x6d, 0xac, 0x48, 0x23, 0x2f, 0x0b, 0xd3, 0xa2, 0x76, 0x0d, 0x83, 0xd3, 0x3a, 0xfe, 0x4c, 0xe6, 0xf1, 0xd1, 0x24, 0x54, 0x89, 0xc5, 0x09, 0xbd, 0x26, 0xb0, 0x25, 0x1f, 0x30, 0x8f, 0x8c, 0x99, 0x6e, 0x80, 0xf7, 0xa3, 0xf8, 0xeb, }; static const unsigned char ecdh_secp256r1_2757_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2757_sharedsecret[] = { 0xa9, 0x6b, 0x07, 0x94, 0x4e, 0x9e, 0xb2, 0xb2, 0x2a, 0x9a, 0x36, 0x57, 0x5e, 0xff, 0x1f, 0x4f, 0x63, 0x63, 0xb4, 0xaa, 0x3a, 0x53, 0xb1, 0x00, 0xb8, 0x51, 0x8a, 0x67, 0xba, 0x54, 0x05, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_2757 = { .name = "ecdh_secp256r1_2757", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2757_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2757_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2757_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 229 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2758 for ECDH, tcId is 230 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2758_peerpubkey[] = { 0xf1, 0x72, 0x4e, 0xfd, 0x48, 0x1a, 0xd4, 0x5a, 0x55, 0x79, 0x5f, 0x06, 0x12, 0x6b, 0x1f, 0x5e, 0xd2, 0x8e, 0x7d, 0x9b, 0xb4, 0xfe, 0xe9, 0x10, 0xaf, 0x2a, 0xd8, 0xc1, 0x37, 0x3b, 0x18, 0xff, 0x77, 0xed, 0xbc, 0x34, 0xda, 0x6c, 0x78, 0x7e, 0xc7, 0x34, 0x30, 0x34, 0x7f, 0x4d, 0xa8, 0x68, 0x10, 0x03, 0x2d, 0x88, 0xf7, 0x47, 0x5f, 0x6c, 0x42, 0xf1, 0x59, 0x14, 0x07, 0x9d, 0x17, 0x9e, }; static const unsigned char ecdh_secp256r1_2758_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2758_sharedsecret[] = { 0x85, 0x58, 0x83, 0x31, 0x6b, 0x6d, 0x09, 0x7a, 0xe5, 0xea, 0xb6, 0xc6, 0x7e, 0x84, 0x11, 0xa1, 0x39, 0x73, 0x49, 0xa0, 0x9b, 0x9d, 0x7d, 0x8f, 0x09, 0x6b, 0x2b, 0xa1, 0xbd, 0x03, 0xea, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256r1_2758 = { .name = "ecdh_secp256r1_2758", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2758_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2758_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2758_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 230 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2759 for ECDH, tcId is 231 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2759_peerpubkey[] = { 0xfc, 0x36, 0x80, 0xaf, 0x52, 0xfa, 0x89, 0xff, 0xcd, 0x19, 0x3e, 0xcc, 0x0b, 0x07, 0x14, 0x46, 0x6f, 0xe5, 0xdb, 0x27, 0x7e, 0xe5, 0x87, 0x28, 0x46, 0xc5, 0x20, 0xbf, 0x4e, 0x37, 0x21, 0xd9, 0x27, 0x26, 0x0a, 0x0e, 0x22, 0x5a, 0x3d, 0x37, 0x7e, 0x67, 0x23, 0xec, 0xb6, 0xbe, 0xf8, 0xd4, 0x49, 0x3c, 0x2d, 0xa7, 0x8a, 0x22, 0xa3, 0x07, 0xfc, 0xca, 0x8f, 0x88, 0xf4, 0x52, 0x72, 0x08, }; static const unsigned char ecdh_secp256r1_2759_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2759_sharedsecret[] = { 0x5a, 0x75, 0xbb, 0x7a, 0x0c, 0x96, 0xb8, 0x34, 0x0d, 0x08, 0x42, 0xbc, 0xcc, 0xf1, 0x19, 0x74, 0xe1, 0xa5, 0xa2, 0xc8, 0xf4, 0xbc, 0x22, 0xb3, 0x33, 0x43, 0x3c, 0xce, 0x64, 0x6b, 0x6a, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2759 = { .name = "ecdh_secp256r1_2759", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2759_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2759_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2759_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 231 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2760 for ECDH, tcId is 232 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2760_peerpubkey[] = { 0x10, 0x6b, 0x6f, 0x81, 0xe3, 0x48, 0x2d, 0xb1, 0x8d, 0x74, 0x02, 0x92, 0x91, 0x82, 0x1a, 0xe4, 0x48, 0xc3, 0x88, 0x44, 0xef, 0x78, 0x3b, 0xf1, 0xd6, 0x99, 0x9a, 0x40, 0x44, 0x01, 0xf6, 0x3f, 0x6a, 0x57, 0x53, 0xf0, 0xed, 0xc6, 0x8a, 0x62, 0xcf, 0xd6, 0xa0, 0xb1, 0x81, 0xbb, 0x25, 0x99, 0xe1, 0xf3, 0xba, 0xc5, 0xfa, 0x88, 0x24, 0xaf, 0x16, 0x0d, 0xe7, 0x9e, 0xd8, 0x67, 0xc3, 0x50, }; static const unsigned char ecdh_secp256r1_2760_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2760_sharedsecret[] = { 0xd9, 0x64, 0x12, 0xe3, 0x1c, 0xf4, 0xd2, 0x61, 0x95, 0x92, 0x0c, 0xac, 0x95, 0x2f, 0xb7, 0x9e, 0xa2, 0x5f, 0x6c, 0x50, 0xab, 0xc7, 0x9b, 0x5e, 0xd0, 0xef, 0x80, 0x26, 0xa6, 0xe8, 0x33, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256r1_2760 = { .name = "ecdh_secp256r1_2760", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2760_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2760_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2760_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 232 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2761 for ECDH, tcId is 233 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2761_peerpubkey[] = { 0x09, 0x3c, 0xb5, 0x19, 0x3a, 0x4f, 0x94, 0xcd, 0x18, 0xed, 0xaa, 0x20, 0xa9, 0x73, 0xb8, 0x7f, 0xf7, 0x9b, 0x0c, 0x03, 0x68, 0x4c, 0x79, 0x48, 0x7e, 0xcf, 0xee, 0x34, 0x7e, 0x53, 0x54, 0xeb, 0x04, 0xfc, 0xb5, 0x75, 0x25, 0x39, 0x17, 0x07, 0x77, 0x93, 0x2b, 0xe1, 0x5c, 0xd8, 0x4c, 0x97, 0xf0, 0x38, 0x15, 0xff, 0xee, 0x8b, 0x60, 0xb6, 0x47, 0xc1, 0x78, 0xee, 0xbb, 0x8e, 0x14, 0xd4, }; static const unsigned char ecdh_secp256r1_2761_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2761_sharedsecret[] = { 0x2b, 0x0e, 0xed, 0x9b, 0xad, 0xc9, 0x2a, 0x10, 0x68, 0x19, 0x6d, 0xfe, 0xc1, 0x24, 0xfe, 0x8f, 0x9d, 0x3f, 0x45, 0x1e, 0x29, 0x4d, 0x32, 0x2e, 0xb8, 0x81, 0xcc, 0xe0, 0x2f, 0x28, 0x60, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_2761 = { .name = "ecdh_secp256r1_2761", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2761_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2761_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2761_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 233 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2762 for ECDH, tcId is 234 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2762_peerpubkey[] = { 0xd6, 0xc3, 0x8f, 0x44, 0x8b, 0x96, 0x4e, 0x27, 0xb5, 0xb4, 0x50, 0xcc, 0x38, 0xd3, 0xcf, 0x41, 0xef, 0x9d, 0xf8, 0x3d, 0x8a, 0x95, 0x97, 0x71, 0xeb, 0x9c, 0x21, 0x85, 0x5c, 0xb3, 0x64, 0x45, 0xdf, 0x63, 0x8a, 0xef, 0x46, 0xa2, 0xae, 0xb1, 0x31, 0x99, 0x28, 0x1e, 0x1a, 0x26, 0xd1, 0x2f, 0xe6, 0x1b, 0x02, 0x9e, 0xc7, 0xf6, 0x8b, 0x90, 0xfa, 0xa8, 0x9f, 0x88, 0xc7, 0xa9, 0x59, 0x42, }; static const unsigned char ecdh_secp256r1_2762_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2762_sharedsecret[] = { 0xed, 0x0b, 0x1d, 0x8d, 0xfd, 0x27, 0xa6, 0x1f, 0xce, 0x91, 0xdc, 0x64, 0x05, 0xbf, 0xc5, 0x3b, 0x6d, 0x48, 0xa8, 0xc1, 0x3b, 0xa5, 0x41, 0xc9, 0x6e, 0xf3, 0xdc, 0xf3, 0x1d, 0x7c, 0xdb, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_2762 = { .name = "ecdh_secp256r1_2762", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2762_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2762_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2762_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 234 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2763 for ECDH, tcId is 235 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2763_peerpubkey[] = { 0x8a, 0x74, 0x8d, 0x61, 0xf5, 0x9c, 0x3b, 0x6a, 0x29, 0xb7, 0x33, 0xb0, 0xd5, 0x54, 0xb2, 0x49, 0x2e, 0x7f, 0x76, 0xfa, 0xd7, 0xca, 0xe1, 0xc1, 0x7f, 0x2a, 0xc3, 0xde, 0x9e, 0x4a, 0x65, 0xd2, 0xee, 0xdb, 0xe6, 0xc2, 0x6b, 0x6f, 0xd2, 0x2b, 0xfc, 0x03, 0xc1, 0x68, 0x75, 0x55, 0xd2, 0xf0, 0xa3, 0x8e, 0x02, 0xad, 0xee, 0x55, 0x70, 0x68, 0x61, 0x71, 0xab, 0xfe, 0xc6, 0x68, 0x19, 0x17, }; static const unsigned char ecdh_secp256r1_2763_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2763_sharedsecret[] = { 0xa7, 0x96, 0xdd, 0x14, 0x4f, 0x21, 0xba, 0x33, 0x18, 0xf9, 0xe1, 0x08, 0x28, 0xec, 0xef, 0xc9, 0xc0, 0xf6, 0xef, 0x2c, 0x42, 0x7a, 0xe3, 0x13, 0x51, 0xc1, 0x6c, 0x2f, 0xbf, 0xa3, 0xcf, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_2763 = { .name = "ecdh_secp256r1_2763", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2763_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2763_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2763_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 235 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2764 for ECDH, tcId is 236 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2764_peerpubkey[] = { 0xf1, 0x05, 0x26, 0x99, 0xd8, 0x7e, 0x56, 0x77, 0xc7, 0x5e, 0x26, 0xb2, 0xab, 0xe7, 0x19, 0x31, 0x06, 0x48, 0xd8, 0x20, 0xa9, 0x6e, 0x5b, 0x38, 0x1f, 0xff, 0x58, 0xb3, 0x92, 0x40, 0x15, 0x81, 0xb1, 0xbb, 0x16, 0xae, 0x8b, 0x68, 0xcb, 0xb7, 0x6a, 0x32, 0x56, 0x87, 0x0b, 0xad, 0x1e, 0xe5, 0xa3, 0x0f, 0xf9, 0xfd, 0x66, 0x2f, 0xd4, 0xf8, 0xd1, 0xfe, 0x5b, 0x5f, 0x1f, 0x98, 0xff, 0x46, }; static const unsigned char ecdh_secp256r1_2764_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2764_sharedsecret[] = { 0x1f, 0x3a, 0x96, 0x15, 0xb0, 0x74, 0x50, 0x46, 0xa9, 0x72, 0xba, 0xd5, 0xd5, 0x97, 0x94, 0xa0, 0xb6, 0x0b, 0x03, 0x2b, 0x4a, 0xc9, 0x4f, 0xe8, 0x5f, 0x77, 0xdf, 0xb3, 0x80, 0xd1, 0xf3, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2764 = { .name = "ecdh_secp256r1_2764", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2764_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2764_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2764_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 236 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2765 for ECDH, tcId is 237 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2765_peerpubkey[] = { 0x12, 0x19, 0xaf, 0x52, 0x30, 0x06, 0x4e, 0xe9, 0x77, 0x86, 0x67, 0x22, 0x5f, 0x0e, 0x00, 0x9c, 0xdb, 0x96, 0x13, 0x30, 0xe3, 0x86, 0xed, 0xb3, 0x4e, 0x4f, 0xa9, 0xfd, 0xdd, 0x0e, 0x5b, 0xe7, 0xe2, 0xa1, 0x25, 0x54, 0x22, 0x7f, 0x61, 0x3a, 0xaa, 0xa7, 0x89, 0x38, 0xdd, 0xbb, 0xc9, 0x9b, 0x92, 0x3f, 0x9d, 0x18, 0x1b, 0x81, 0x92, 0xdc, 0x4b, 0x81, 0x65, 0x77, 0xe8, 0xf3, 0xb7, 0xe9, }; static const unsigned char ecdh_secp256r1_2765_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2765_sharedsecret[] = { 0xca, 0xf9, 0x14, 0x1d, 0x1f, 0xca, 0x4d, 0x0f, 0x10, 0x68, 0x3b, 0x5e, 0x86, 0xd2, 0xb4, 0x1a, 0xf5, 0x60, 0x2f, 0x01, 0x79, 0x91, 0xfe, 0x73, 0x48, 0xd4, 0x4e, 0x8d, 0x70, 0x14, 0x11, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2765 = { .name = "ecdh_secp256r1_2765", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2765_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2765_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2765_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 237 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2766 for ECDH, tcId is 238 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2766_peerpubkey[] = { 0x60, 0xde, 0xf1, 0x30, 0xf1, 0x90, 0xe6, 0xdc, 0x44, 0xf5, 0xeb, 0x8a, 0x59, 0xe1, 0x2e, 0x7e, 0xfb, 0x27, 0xdb, 0x96, 0x8c, 0x7f, 0xa6, 0xcc, 0x6d, 0x31, 0x78, 0x5f, 0x06, 0x6b, 0x41, 0xb1, 0xf1, 0xbb, 0x55, 0x6a, 0xc4, 0xcd, 0x77, 0x03, 0x3e, 0x7a, 0xa6, 0xc5, 0xba, 0x16, 0xf4, 0x7e, 0xba, 0xfb, 0x14, 0x97, 0x5a, 0x7f, 0xd7, 0x2d, 0xd9, 0xb7, 0xfe, 0x23, 0x11, 0x6b, 0xca, 0x55, }; static const unsigned char ecdh_secp256r1_2766_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2766_sharedsecret[] = { 0x65, 0x39, 0xec, 0x1c, 0x98, 0xfa, 0x75, 0x19, 0x7b, 0xa0, 0x7c, 0x67, 0x8b, 0x26, 0x30, 0x0b, 0x3d, 0xa1, 0xfe, 0x40, 0x7d, 0xd4, 0xc6, 0x8b, 0x89, 0x45, 0x7e, 0xd6, 0x69, 0x08, 0x2e, 0x06, }; static const wycheproof_ecdh_test ecdh_secp256r1_2766 = { .name = "ecdh_secp256r1_2766", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2766_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2766_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2766_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 238 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2767 for ECDH, tcId is 239 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2767_peerpubkey[] = { 0xf2, 0x3f, 0x09, 0xbd, 0xb7, 0xd1, 0x72, 0x89, 0xeb, 0x00, 0x59, 0x75, 0xa7, 0x57, 0xa3, 0x93, 0x25, 0xb4, 0xdf, 0x9b, 0x29, 0xe5, 0x5b, 0xa2, 0xca, 0x67, 0x9b, 0x5e, 0xc0, 0x97, 0x3a, 0xe9, 0x18, 0xc8, 0x81, 0xf3, 0xc7, 0xb6, 0xc1, 0x2b, 0xed, 0x1e, 0xc5, 0x4b, 0x83, 0x7d, 0x08, 0xc5, 0x90, 0x8e, 0x89, 0xbd, 0xce, 0xdd, 0x84, 0xb9, 0x17, 0x77, 0x20, 0x37, 0x8f, 0x78, 0x96, 0x00, }; static const unsigned char ecdh_secp256r1_2767_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2767_sharedsecret[] = { 0x0b, 0x66, 0x19, 0x82, 0x7c, 0xfa, 0x94, 0x8d, 0x63, 0xf0, 0x21, 0xe9, 0xed, 0xdb, 0x92, 0xf8, 0x84, 0xfb, 0x5c, 0xe8, 0xa4, 0x04, 0xbf, 0xe0, 0x59, 0xe9, 0x93, 0xfc, 0x23, 0x44, 0x7a, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256r1_2767 = { .name = "ecdh_secp256r1_2767", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2767_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2767_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2767_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 239 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2768 for ECDH, tcId is 240 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2768_peerpubkey[] = { 0x5d, 0xbe, 0xc0, 0x98, 0xc1, 0xb7, 0xde, 0x3e, 0x3e, 0x2e, 0x73, 0xd0, 0xb6, 0x2c, 0xd4, 0x9c, 0x87, 0x7e, 0x1a, 0x01, 0x30, 0xa1, 0xb3, 0x9e, 0xb2, 0xfd, 0x4d, 0xbd, 0x44, 0x26, 0xaa, 0x4c, 0xcb, 0xee, 0xe2, 0x17, 0x59, 0x1a, 0x8d, 0x76, 0xcc, 0x8d, 0xea, 0xf1, 0x4d, 0xde, 0x52, 0xe3, 0xf4, 0x01, 0xe5, 0x3b, 0x30, 0xcb, 0xb9, 0xc1, 0x80, 0x79, 0x10, 0xd8, 0x27, 0xd0, 0x04, 0x1d, }; static const unsigned char ecdh_secp256r1_2768_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2768_sharedsecret[] = { 0x2a, 0x53, 0xa5, 0x61, 0xac, 0xf5, 0xca, 0xec, 0x6e, 0xb0, 0xd8, 0xaa, 0x40, 0x72, 0x79, 0x42, 0x88, 0x1a, 0x75, 0xd1, 0x36, 0x89, 0x9d, 0xfb, 0xff, 0x91, 0x52, 0x82, 0x36, 0x92, 0x6c, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256r1_2768 = { .name = "ecdh_secp256r1_2768", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2768_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2768_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2768_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 240 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2769 for ECDH, tcId is 241 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2769_peerpubkey[] = { 0x1e, 0x70, 0x73, 0x0d, 0xc4, 0xf3, 0x9c, 0x89, 0x70, 0x18, 0x2e, 0x1a, 0x29, 0xcc, 0x83, 0x6b, 0x9e, 0x9d, 0x6c, 0xbd, 0x6f, 0xca, 0xa8, 0xc0, 0xdc, 0x10, 0x62, 0xfe, 0xd9, 0xa8, 0x49, 0x69, 0x3e, 0x7b, 0x91, 0x51, 0xf9, 0xc8, 0xa3, 0x34, 0x53, 0x66, 0xf8, 0x22, 0x1c, 0x8f, 0xb7, 0x00, 0xe8, 0xc3, 0xa9, 0xaa, 0x7f, 0x0c, 0xc4, 0x6a, 0x48, 0x86, 0x4e, 0x16, 0x05, 0x59, 0x20, 0x94, }; static const unsigned char ecdh_secp256r1_2769_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2769_sharedsecret[] = { 0x9b, 0x37, 0x77, 0x16, 0xff, 0x1d, 0x05, 0x6d, 0xac, 0x8e, 0x39, 0x22, 0x49, 0xea, 0xec, 0x74, 0x0d, 0x2f, 0x5a, 0xa6, 0x23, 0x03, 0xf4, 0xba, 0xf6, 0xbb, 0x1b, 0x03, 0xb2, 0xa2, 0x76, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2769 = { .name = "ecdh_secp256r1_2769", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2769_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2769_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2769_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 241 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2770 for ECDH, tcId is 242 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2770_peerpubkey[] = { 0xf4, 0x28, 0xc9, 0xae, 0x3e, 0x23, 0xea, 0xf9, 0xc2, 0xa5, 0xb9, 0xa7, 0xe4, 0x1e, 0xfd, 0x1c, 0xff, 0xbf, 0x35, 0xf8, 0x81, 0xbf, 0xc3, 0x56, 0x94, 0xd9, 0xc0, 0x5d, 0x1e, 0x31, 0x2b, 0x10, 0xef, 0x6d, 0xa9, 0x02, 0x3c, 0xfd, 0x2d, 0xd0, 0xcb, 0x7b, 0x9e, 0x2a, 0x77, 0xd6, 0x44, 0xaf, 0xfe, 0x62, 0xa6, 0x3f, 0xb0, 0xf2, 0x9d, 0x45, 0x29, 0x1c, 0x68, 0x61, 0xaa, 0x06, 0x3c, 0x5c, }; static const unsigned char ecdh_secp256r1_2770_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2770_sharedsecret[] = { 0x0c, 0x0c, 0x68, 0x67, 0x66, 0x97, 0x43, 0x08, 0x25, 0x47, 0xaa, 0x94, 0x45, 0x1f, 0xeb, 0x36, 0x2f, 0xa2, 0x9f, 0xba, 0xf2, 0x28, 0xdf, 0xb3, 0xea, 0xf3, 0x75, 0xf1, 0xa5, 0xec, 0x2f, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2770 = { .name = "ecdh_secp256r1_2770", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2770_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2770_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2770_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 242 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2771 for ECDH, tcId is 243 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2771_peerpubkey[] = { 0xb9, 0xa1, 0x6d, 0x9a, 0x5b, 0x85, 0xa7, 0x14, 0xe2, 0xbb, 0x2a, 0xa2, 0x2b, 0x08, 0x6a, 0x17, 0x40, 0x4c, 0x7a, 0x3f, 0xf6, 0x24, 0x52, 0x73, 0x23, 0x47, 0x41, 0x9c, 0x99, 0xe9, 0x0b, 0xda, 0xd5, 0x78, 0xb4, 0x62, 0xf5, 0x23, 0x99, 0x43, 0x04, 0xb6, 0xaf, 0xcf, 0x69, 0x44, 0xa9, 0xcc, 0x5d, 0x0a, 0xd1, 0xaf, 0xad, 0x95, 0x64, 0x75, 0xc8, 0xf2, 0x95, 0x3c, 0x06, 0xb0, 0x6b, 0x97, }; static const unsigned char ecdh_secp256r1_2771_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2771_sharedsecret[] = { 0xd1, 0x1f, 0x9e, 0x32, 0x58, 0x7f, 0xd3, 0xb6, 0xf4, 0xa2, 0x35, 0x48, 0x12, 0x61, 0x8b, 0x4b, 0x3b, 0x4a, 0x75, 0x39, 0xb8, 0xa2, 0x23, 0xb3, 0x88, 0xbb, 0x74, 0x37, 0xf8, 0xd1, 0x38, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2771 = { .name = "ecdh_secp256r1_2771", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2771_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2771_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2771_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 243 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2772 for ECDH, tcId is 244 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2772_peerpubkey[] = { 0x8f, 0x65, 0x9a, 0x16, 0x3a, 0x58, 0xe9, 0xf9, 0x00, 0xc1, 0xe9, 0xb3, 0x4f, 0xb1, 0xcd, 0x61, 0xff, 0xc9, 0x89, 0x02, 0x67, 0xbe, 0x34, 0x17, 0xc8, 0xaf, 0xe7, 0x9d, 0x57, 0x21, 0x4d, 0xa0, 0x5c, 0xd5, 0xcb, 0x68, 0xa2, 0xb9, 0x3d, 0xa0, 0xdb, 0xe5, 0x6c, 0x1c, 0xfc, 0x0d, 0xce, 0x8b, 0x6c, 0x32, 0x60, 0xe0, 0xc4, 0x83, 0x79, 0xc6, 0xd2, 0x09, 0x1f, 0x16, 0xb3, 0x92, 0x21, 0xc0, }; static const unsigned char ecdh_secp256r1_2772_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2772_sharedsecret[] = { 0x4b, 0xab, 0xf6, 0x36, 0x8e, 0x03, 0x59, 0xb7, 0x86, 0x14, 0x06, 0x02, 0x41, 0xec, 0xe4, 0x6f, 0xac, 0xca, 0x3f, 0x52, 0xf5, 0xbb, 0xc4, 0x7a, 0xc0, 0xb4, 0x6a, 0x07, 0x5b, 0x5d, 0xd3, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256r1_2772 = { .name = "ecdh_secp256r1_2772", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2772_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2772_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2772_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 244 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2773 for ECDH, tcId is 245 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2773_peerpubkey[] = { 0xd2, 0x57, 0xf1, 0x33, 0xf0, 0x0a, 0x07, 0x9f, 0x4e, 0x67, 0x78, 0xea, 0x4a, 0x9b, 0xf4, 0x2b, 0x9f, 0x23, 0x12, 0x90, 0x43, 0x1b, 0x5b, 0x93, 0xd7, 0xe8, 0xb0, 0xe3, 0x5b, 0x48, 0x01, 0x06, 0x50, 0xd6, 0xc6, 0xb4, 0x65, 0x74, 0xd1, 0xef, 0xce, 0x03, 0x51, 0x0b, 0x8d, 0xb4, 0xa0, 0x98, 0x1c, 0xe1, 0x38, 0xc5, 0xbd, 0x8f, 0xe0, 0xe5, 0x4c, 0x98, 0x8c, 0x40, 0xc5, 0xfc, 0x92, 0x00, }; static const unsigned char ecdh_secp256r1_2773_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2773_sharedsecret[] = { 0x96, 0x27, 0xcc, 0x5c, 0x8d, 0x8b, 0x72, 0x27, 0x8b, 0xe8, 0x9c, 0x32, 0xb5, 0x22, 0x10, 0x17, 0x3e, 0x6f, 0x4b, 0x8e, 0x2f, 0x48, 0xe4, 0x60, 0xc6, 0x42, 0x9f, 0x46, 0xf9, 0xf4, 0x69, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256r1_2773 = { .name = "ecdh_secp256r1_2773", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2773_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2773_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2773_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 245 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2774 for ECDH, tcId is 246 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2774_peerpubkey[] = { 0x5e, 0xf2, 0xac, 0x57, 0xc4, 0xe9, 0x3c, 0xf7, 0x8d, 0x8f, 0x86, 0xc3, 0x5d, 0x41, 0x3b, 0x98, 0xdc, 0x19, 0x02, 0xdd, 0x24, 0x5a, 0xff, 0xde, 0x5c, 0x16, 0x03, 0x4a, 0xfc, 0x7e, 0xa4, 0x55, 0x47, 0xb3, 0xe9, 0xf7, 0x7f, 0xbc, 0x50, 0x75, 0xba, 0xd0, 0x3c, 0x41, 0x80, 0x94, 0xf1, 0xae, 0xc1, 0xd0, 0x3e, 0xde, 0xaf, 0xa1, 0x67, 0xfa, 0x6a, 0xf8, 0x35, 0x26, 0x55, 0x2f, 0x70, 0x34, }; static const unsigned char ecdh_secp256r1_2774_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2774_sharedsecret[] = { 0xd2, 0xb1, 0x78, 0xbc, 0x9b, 0xb1, 0x6b, 0x5a, 0x91, 0xa1, 0x00, 0xbb, 0x72, 0xe1, 0x5a, 0x96, 0x39, 0xe0, 0x50, 0xc0, 0x34, 0x34, 0x60, 0x61, 0x41, 0x3e, 0xc2, 0x0c, 0x4f, 0xcc, 0x9b, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2774 = { .name = "ecdh_secp256r1_2774", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2774_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2774_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2774_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 246 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2775 for ECDH, tcId is 247 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2775_peerpubkey[] = { 0xa7, 0xb5, 0x13, 0xf9, 0x62, 0x66, 0x41, 0x4f, 0xa6, 0xff, 0x43, 0x9a, 0x35, 0xd8, 0xf0, 0x9a, 0xb6, 0x15, 0xdb, 0x0b, 0xb6, 0xa3, 0xb1, 0xa1, 0x20, 0xc2, 0x17, 0x68, 0x3f, 0x72, 0x4b, 0x23, 0x42, 0x00, 0x7a, 0x2c, 0x9f, 0xea, 0xbc, 0xd6, 0x24, 0x9a, 0x0d, 0x17, 0xac, 0xec, 0xd9, 0x95, 0xe2, 0xa2, 0x17, 0xfb, 0x5f, 0x07, 0xbe, 0xc9, 0x69, 0x38, 0x01, 0x6e, 0x29, 0x7e, 0xfa, 0x52, }; static const unsigned char ecdh_secp256r1_2775_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2775_sharedsecret[] = { 0x6c, 0xdc, 0xa0, 0xa7, 0x31, 0xaf, 0xf1, 0xcc, 0xfb, 0x19, 0x04, 0xa7, 0x69, 0xce, 0xf7, 0x9e, 0xba, 0x96, 0x5f, 0xba, 0xb1, 0xcc, 0x64, 0xd2, 0x04, 0x9d, 0x0d, 0xf4, 0x5d, 0xcc, 0xd2, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_2775 = { .name = "ecdh_secp256r1_2775", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2775_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2775_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2775_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 247 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2776 for ECDH, tcId is 248 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2776_peerpubkey[] = { 0x77, 0x43, 0xab, 0x72, 0x48, 0xda, 0xe5, 0xf1, 0xa5, 0x9a, 0xc6, 0xb0, 0xa1, 0x36, 0xe9, 0xf1, 0xe5, 0x1a, 0xff, 0x8b, 0xd4, 0x57, 0x95, 0xac, 0xe5, 0xf8, 0x18, 0x7a, 0x13, 0xed, 0xf9, 0xad, 0xbd, 0x96, 0x42, 0x07, 0x83, 0x78, 0xba, 0xb5, 0xc6, 0xd4, 0x84, 0xf9, 0xe1, 0xce, 0x39, 0x67, 0x5b, 0x72, 0x17, 0x0b, 0xf3, 0x9a, 0xbc, 0x9b, 0xe7, 0x94, 0x2f, 0xc0, 0x1f, 0xc4, 0x35, 0xd7, }; static const unsigned char ecdh_secp256r1_2776_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2776_sharedsecret[] = { 0xbd, 0x15, 0xe9, 0x7a, 0x7f, 0x49, 0xaa, 0x33, 0xe5, 0x7b, 0x54, 0x14, 0x0a, 0x75, 0xff, 0xfc, 0xe7, 0x1b, 0x78, 0x8c, 0xe0, 0xfa, 0xa3, 0x34, 0xcf, 0x8b, 0x45, 0x62, 0x3d, 0xcc, 0x81, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2776 = { .name = "ecdh_secp256r1_2776", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2776_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2776_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2776_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 248 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2777 for ECDH, tcId is 249 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2777_peerpubkey[] = { 0x0e, 0x3a, 0xa9, 0x71, 0xba, 0xcd, 0xac, 0xe3, 0x50, 0xdc, 0x09, 0x57, 0xfa, 0x5b, 0xde, 0x09, 0x46, 0x32, 0x4e, 0xb1, 0x39, 0x93, 0x9d, 0x7f, 0xc1, 0x99, 0x7c, 0x70, 0x1e, 0xff, 0xd0, 0x4a, 0x4e, 0x6c, 0x36, 0x25, 0xd9, 0x56, 0x41, 0x68, 0xd3, 0xa7, 0x52, 0x96, 0x12, 0x21, 0xa1, 0xde, 0x8c, 0xf5, 0xf3, 0xd6, 0x03, 0x75, 0x2a, 0x8c, 0x2e, 0x62, 0x77, 0xac, 0x3a, 0x91, 0x8c, 0x25, }; static const unsigned char ecdh_secp256r1_2777_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2777_sharedsecret[] = { 0xc8, 0xb5, 0xe8, 0xe7, 0x48, 0x88, 0x57, 0xa2, 0xdd, 0xe6, 0x2c, 0x5f, 0xc2, 0x1e, 0x45, 0x25, 0xeb, 0xab, 0xa0, 0xe0, 0x6b, 0x5b, 0xe8, 0x3e, 0xc6, 0xe7, 0xdd, 0x77, 0x1e, 0x15, 0xa0, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2777 = { .name = "ecdh_secp256r1_2777", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2777_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2777_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2777_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 249 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2778 for ECDH, tcId is 250 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2778_peerpubkey[] = { 0x0f, 0x56, 0x3e, 0x21, 0xbf, 0x9b, 0x24, 0x01, 0x5a, 0x7c, 0xdb, 0xb6, 0xf0, 0x00, 0xa6, 0x92, 0x78, 0x4a, 0xc2, 0xe4, 0xbc, 0x27, 0x15, 0xc7, 0x6f, 0x68, 0x42, 0x64, 0xa8, 0x99, 0xc8, 0x24, 0x0c, 0xab, 0x0d, 0x76, 0xe6, 0xb0, 0x1c, 0xab, 0xe4, 0xf3, 0x27, 0x42, 0x9d, 0x11, 0xbe, 0x11, 0x5e, 0xd6, 0xdc, 0x0c, 0xa7, 0x4f, 0x02, 0xc1, 0xb9, 0x87, 0xa0, 0x82, 0xf5, 0xaf, 0x43, 0xa8, }; static const unsigned char ecdh_secp256r1_2778_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2778_sharedsecret[] = { 0x1c, 0x63, 0xa4, 0x57, 0x50, 0x9b, 0x14, 0x82, 0x72, 0x68, 0x7e, 0x6e, 0x44, 0x2b, 0xde, 0x51, 0x98, 0x2d, 0x41, 0xb0, 0x08, 0x0d, 0x8c, 0x0c, 0x5e, 0xb7, 0x14, 0x25, 0x7a, 0xf9, 0x71, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_2778 = { .name = "ecdh_secp256r1_2778", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2778_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2778_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2778_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 250 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2779 for ECDH, tcId is 251 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2779_peerpubkey[] = { 0x5d, 0xa4, 0x9f, 0x10, 0x24, 0x9e, 0x4d, 0xf3, 0xdb, 0xb4, 0xe3, 0x1e, 0xce, 0x0b, 0x0e, 0xe9, 0xaa, 0x07, 0x3f, 0x25, 0x88, 0x19, 0x5a, 0xaa, 0xe6, 0x3e, 0x74, 0xf6, 0x56, 0x7a, 0x77, 0x48, 0x10, 0xb5, 0xdd, 0x61, 0xb6, 0xbf, 0x21, 0x9e, 0x9e, 0xab, 0x30, 0xef, 0x09, 0xc1, 0x3f, 0xc1, 0x84, 0xb3, 0xd0, 0x9f, 0xf7, 0xa4, 0xe1, 0x92, 0xbc, 0xa8, 0xf5, 0x11, 0x1c, 0x41, 0x63, 0xc7, }; static const unsigned char ecdh_secp256r1_2779_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2779_sharedsecret[] = { 0x73, 0xa1, 0xac, 0x9e, 0xce, 0x35, 0x4a, 0x93, 0x0d, 0xfd, 0x9c, 0x77, 0x57, 0x7b, 0x4f, 0x50, 0xac, 0xc0, 0xa7, 0x89, 0x64, 0xea, 0x0d, 0x77, 0x75, 0x63, 0x1d, 0x64, 0xc7, 0x09, 0xc4, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256r1_2779 = { .name = "ecdh_secp256r1_2779", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2779_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2779_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2779_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 251 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2780 for ECDH, tcId is 252 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2780_peerpubkey[] = { 0x6f, 0x72, 0xe6, 0xe5, 0xc6, 0x30, 0x06, 0x79, 0xd3, 0xf1, 0x4f, 0x0f, 0x6e, 0x59, 0x06, 0x65, 0x64, 0x35, 0x76, 0xae, 0x8b, 0xbc, 0xb7, 0xc0, 0x5b, 0x2f, 0x4a, 0x83, 0xe7, 0x5e, 0x6a, 0xc3, 0xe7, 0x12, 0xcb, 0x05, 0x6f, 0xf0, 0x34, 0xda, 0x34, 0x05, 0x43, 0xc5, 0xda, 0x69, 0x97, 0xe6, 0x5a, 0x3a, 0xb4, 0xcd, 0x39, 0xe9, 0x97, 0x89, 0x2b, 0xb9, 0x2e, 0xe2, 0xc2, 0x2b, 0x81, 0x67, }; static const unsigned char ecdh_secp256r1_2780_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2780_sharedsecret[] = { 0xfc, 0xaa, 0x40, 0x63, 0x29, 0xbb, 0x74, 0xf9, 0x95, 0x86, 0x2c, 0xea, 0x7c, 0xec, 0xc7, 0x42, 0x5c, 0x6b, 0xd4, 0x14, 0x8e, 0xf1, 0xa9, 0xf4, 0x6b, 0x5d, 0x42, 0xda, 0x59, 0x94, 0x55, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2780 = { .name = "ecdh_secp256r1_2780", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2780_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2780_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2780_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 252 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2781 for ECDH, tcId is 253 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2781_peerpubkey[] = { 0x6b, 0x54, 0x4d, 0xf9, 0x16, 0x8e, 0x77, 0x87, 0xdb, 0x28, 0x2e, 0x2a, 0xe0, 0x1d, 0xd7, 0x23, 0x06, 0xd9, 0xc9, 0xbc, 0x80, 0xf5, 0xab, 0x38, 0xce, 0x59, 0x47, 0x66, 0xc3, 0xd9, 0x29, 0xe9, 0x67, 0x49, 0x3f, 0xf6, 0x01, 0xca, 0x60, 0x86, 0x2b, 0x47, 0xd3, 0xa0, 0x78, 0x5c, 0x91, 0x7e, 0x44, 0x58, 0x40, 0x44, 0xe3, 0x60, 0x23, 0xa5, 0x44, 0x24, 0x01, 0x5e, 0x58, 0xbe, 0x50, 0x40, }; static const unsigned char ecdh_secp256r1_2781_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2781_sharedsecret[] = { 0xe4, 0x9f, 0xf1, 0x1d, 0x46, 0xb6, 0xc4, 0xb5, 0xdd, 0xe5, 0x28, 0xb0, 0x41, 0x32, 0xd1, 0x5c, 0x04, 0x0e, 0x79, 0xf9, 0xb7, 0x15, 0x1f, 0xbc, 0x65, 0x00, 0x30, 0x98, 0x80, 0x28, 0xcb, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_2781 = { .name = "ecdh_secp256r1_2781", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2781_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2781_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2781_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 253 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2782 for ECDH, tcId is 254 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2782_peerpubkey[] = { 0x1c, 0x31, 0x38, 0x5b, 0x9d, 0xb9, 0xb3, 0x74, 0xe9, 0x24, 0x99, 0x93, 0x9a, 0xb0, 0xfd, 0x7e, 0x7e, 0xda, 0x46, 0x45, 0x61, 0xeb, 0xa8, 0x9f, 0xcd, 0x7b, 0x47, 0x69, 0x81, 0x4a, 0x86, 0x38, 0xa4, 0x76, 0x4c, 0xf8, 0xce, 0x97, 0xb5, 0xd1, 0x43, 0xbb, 0x8e, 0xeb, 0x9e, 0x1b, 0x27, 0x28, 0x7f, 0x2b, 0x73, 0x94, 0x2e, 0xcd, 0xbc, 0x63, 0x59, 0xaa, 0xfb, 0x1e, 0xe7, 0xa1, 0x52, 0xc2, }; static const unsigned char ecdh_secp256r1_2782_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2782_sharedsecret[] = { 0xfc, 0x8f, 0x64, 0xea, 0xc1, 0xc7, 0xe6, 0x88, 0xc5, 0x2c, 0x46, 0x71, 0x85, 0xde, 0x21, 0x91, 0x4e, 0x8b, 0x25, 0x30, 0x56, 0xd9, 0xe4, 0xbe, 0x01, 0x0e, 0xd0, 0x12, 0x8f, 0x92, 0xa8, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_2782 = { .name = "ecdh_secp256r1_2782", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2782_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2782_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2782_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 254 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2783 for ECDH, tcId is 255 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2783_peerpubkey[] = { 0xaa, 0xbc, 0xf8, 0xb1, 0x44, 0x3d, 0x6c, 0xbb, 0x1d, 0xe1, 0x29, 0xa0, 0xff, 0xe0, 0x9f, 0x60, 0xb2, 0x3f, 0xd9, 0xd0, 0xa4, 0x4b, 0x6b, 0xdf, 0x25, 0xbe, 0xd7, 0x37, 0x3f, 0xdb, 0xfd, 0x1d, 0xb7, 0x16, 0xbd, 0xe7, 0xfe, 0x9f, 0x2f, 0x46, 0xde, 0x0b, 0x68, 0x8e, 0x30, 0x25, 0xe0, 0x29, 0xcf, 0xf1, 0x52, 0x44, 0x42, 0x9a, 0xd4, 0xf8, 0x34, 0x84, 0xf5, 0xde, 0xa4, 0xaf, 0x85, 0x83, }; static const unsigned char ecdh_secp256r1_2783_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2783_sharedsecret[] = { 0x6b, 0x56, 0xd8, 0xa0, 0x1a, 0x88, 0x43, 0x19, 0xab, 0x5f, 0xb9, 0xd8, 0x90, 0xca, 0xcf, 0xc7, 0xaa, 0xbd, 0x81, 0xad, 0x93, 0x8c, 0xb5, 0xea, 0xae, 0x20, 0x7c, 0x8c, 0x1a, 0xa0, 0x6e, 0xfb, }; static const wycheproof_ecdh_test ecdh_secp256r1_2783 = { .name = "ecdh_secp256r1_2783", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2783_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2783_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2783_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 255 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2784 for ECDH, tcId is 256 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2784_peerpubkey[] = { 0xe7, 0xcd, 0x58, 0x0b, 0xd9, 0x57, 0x91, 0x5d, 0x52, 0x70, 0x56, 0x83, 0x2e, 0x37, 0x79, 0x3a, 0xb3, 0xb0, 0x82, 0xdd, 0xfa, 0xd9, 0x37, 0x24, 0x12, 0xe1, 0x90, 0x8e, 0x5c, 0x16, 0xbb, 0xb6, 0x20, 0x86, 0x01, 0xa9, 0x70, 0xd5, 0x84, 0x4b, 0x78, 0x0d, 0x92, 0x46, 0xe9, 0x58, 0x3e, 0xb3, 0x59, 0x18, 0xc4, 0x2e, 0xd6, 0x95, 0xc0, 0x7d, 0x52, 0x24, 0x40, 0x37, 0xf0, 0xe3, 0x1d, 0xb5, }; static const unsigned char ecdh_secp256r1_2784_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2784_sharedsecret[] = { 0x2f, 0x64, 0xb5, 0xc8, 0x04, 0x6d, 0x41, 0xa4, 0xe1, 0xd6, 0x31, 0xff, 0x23, 0x84, 0x6b, 0xff, 0x95, 0x6a, 0x49, 0x25, 0xa4, 0x7f, 0x85, 0x34, 0x49, 0x0a, 0x20, 0xb4, 0xb1, 0x91, 0x8b, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2784 = { .name = "ecdh_secp256r1_2784", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2784_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2784_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2784_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 256 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2785 for ECDH, tcId is 257 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2785_peerpubkey[] = { 0x2a, 0x52, 0xdb, 0x1f, 0xe2, 0x46, 0xb7, 0x1c, 0x79, 0xc0, 0xd0, 0xac, 0x49, 0xa7, 0xd3, 0x8d, 0xe6, 0x7b, 0x20, 0x29, 0x95, 0xef, 0xbb, 0xd2, 0xa9, 0xcc, 0x52, 0x5f, 0x6f, 0x36, 0x01, 0x03, 0x68, 0xf4, 0x94, 0xbe, 0x27, 0xe0, 0x59, 0x3e, 0x2d, 0x61, 0x2f, 0x1f, 0xa1, 0x0a, 0x92, 0x11, 0x43, 0x7e, 0x6a, 0xa1, 0x6e, 0x65, 0xd9, 0x77, 0x35, 0x01, 0x40, 0x72, 0xf0, 0xdc, 0xec, 0x94, }; static const unsigned char ecdh_secp256r1_2785_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2785_sharedsecret[] = { 0x63, 0xac, 0x31, 0xe7, 0x18, 0xb9, 0xa7, 0x80, 0xa8, 0x5f, 0x06, 0x70, 0xe1, 0xd3, 0x68, 0x5b, 0xbe, 0x30, 0x6e, 0x5f, 0x06, 0xfe, 0xe2, 0x82, 0xa8, 0x78, 0x47, 0x00, 0xb5, 0x03, 0xc1, 0x24, }; static const wycheproof_ecdh_test ecdh_secp256r1_2785 = { .name = "ecdh_secp256r1_2785", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2785_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2785_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2785_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 257 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2786 for ECDH, tcId is 258 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2786_peerpubkey[] = { 0x1c, 0x50, 0xdc, 0x49, 0xfe, 0xf7, 0x08, 0xc4, 0xcd, 0xd6, 0x2e, 0x76, 0x6f, 0x9b, 0x60, 0xf7, 0x84, 0xd5, 0x1a, 0xfe, 0xe1, 0x7a, 0x8f, 0xe9, 0xf3, 0x70, 0x1b, 0x2f, 0xae, 0x55, 0xb7, 0xa5, 0xd1, 0x0f, 0x0d, 0x96, 0x39, 0xd8, 0x3d, 0xce, 0x8f, 0x26, 0xa8, 0x69, 0x70, 0x5a, 0x6d, 0x6d, 0x38, 0xe6, 0xd3, 0x28, 0xf5, 0x68, 0x55, 0x81, 0x14, 0x2a, 0xec, 0x0d, 0xcd, 0x1f, 0x90, 0xe7, }; static const unsigned char ecdh_secp256r1_2786_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2786_sharedsecret[] = { 0x55, 0x5c, 0x19, 0x17, 0xb7, 0x70, 0xce, 0xbe, 0x6a, 0x98, 0x33, 0x7a, 0x00, 0x8a, 0xe3, 0xd8, 0xd0, 0x4f, 0x57, 0x15, 0x65, 0x32, 0x7c, 0x93, 0xde, 0xbf, 0x61, 0xef, 0x90, 0xdd, 0xdd, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256r1_2786 = { .name = "ecdh_secp256r1_2786", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2786_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2786_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2786_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 258 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2787 for ECDH, tcId is 259 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2787_peerpubkey[] = { 0x6d, 0x0a, 0xa1, 0xbc, 0x1c, 0xee, 0x6d, 0x07, 0xd0, 0x45, 0x00, 0x2c, 0x13, 0x29, 0x0d, 0x0c, 0xa2, 0x5c, 0xa3, 0xc8, 0x78, 0x33, 0x43, 0xa5, 0x25, 0xfa, 0xc7, 0x04, 0x72, 0xb9, 0x2c, 0x62, 0xd6, 0xfb, 0xa7, 0x11, 0x74, 0x44, 0x8b, 0x47, 0x2c, 0xf1, 0x72, 0xb0, 0xca, 0x9e, 0x37, 0x7f, 0x1a, 0x26, 0x03, 0xba, 0x7a, 0xe1, 0x27, 0x6d, 0x15, 0x3b, 0x20, 0xc6, 0x3e, 0x7d, 0x24, 0xbf, }; static const unsigned char ecdh_secp256r1_2787_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2787_sharedsecret[] = { 0x3a, 0x65, 0xa9, 0x20, 0x0f, 0x8f, 0x96, 0x63, 0x59, 0x12, 0xfa, 0xa5, 0xe7, 0x85, 0x9f, 0xa3, 0x03, 0xa7, 0x6a, 0x1c, 0x2a, 0x41, 0xea, 0x97, 0xef, 0x61, 0xaa, 0x39, 0x28, 0x77, 0x00, 0xa9, }; static const wycheproof_ecdh_test ecdh_secp256r1_2787 = { .name = "ecdh_secp256r1_2787", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2787_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2787_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2787_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 259 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2788 for ECDH, tcId is 260 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2788_peerpubkey[] = { 0xf0, 0x7e, 0x3d, 0x8b, 0xe2, 0xba, 0x54, 0xc6, 0x08, 0x41, 0x41, 0xe1, 0xfd, 0x2b, 0x29, 0xcf, 0xd0, 0x0d, 0x4e, 0x6d, 0xd6, 0xff, 0xb1, 0x15, 0xed, 0x83, 0x9b, 0x10, 0xbd, 0x8a, 0x42, 0x2f, 0x42, 0x99, 0x2c, 0xb9, 0xa5, 0x24, 0x38, 0x97, 0xd5, 0x54, 0x08, 0xe9, 0xbb, 0x55, 0x60, 0x43, 0x31, 0x8d, 0x87, 0x34, 0x9a, 0xf3, 0x5d, 0xcc, 0x09, 0x75, 0xed, 0x80, 0x5c, 0x8f, 0xa2, 0xc9, }; static const unsigned char ecdh_secp256r1_2788_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2788_sharedsecret[] = { 0xbb, 0x7b, 0xb5, 0x2d, 0xa5, 0x70, 0xba, 0x58, 0xe0, 0x5f, 0xd3, 0x22, 0xf8, 0x2d, 0x55, 0x6c, 0x2d, 0x65, 0xb3, 0x65, 0xdb, 0x30, 0x81, 0x58, 0x79, 0xf6, 0x7f, 0x23, 0x3b, 0x08, 0x9b, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_2788 = { .name = "ecdh_secp256r1_2788", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2788_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2788_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2788_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 260 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2789 for ECDH, tcId is 261 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2789_peerpubkey[] = { 0x43, 0xa9, 0xb9, 0x02, 0x74, 0xdb, 0xd5, 0xf3, 0x6d, 0xd2, 0x90, 0x46, 0xfc, 0x83, 0x90, 0x00, 0x8d, 0xde, 0x74, 0x51, 0x3c, 0xe4, 0xc3, 0xe8, 0x89, 0x2b, 0x23, 0x6e, 0xff, 0xf8, 0x0c, 0x9d, 0xc7, 0x15, 0x47, 0x15, 0x2a, 0x58, 0x97, 0xdb, 0xe1, 0x69, 0x57, 0xbd, 0x15, 0xd1, 0xa8, 0x7d, 0x77, 0x04, 0x96, 0xf8, 0x14, 0xfe, 0x29, 0x21, 0xc8, 0xf3, 0x3d, 0xf0, 0x43, 0x93, 0xc7, 0xf8, }; static const unsigned char ecdh_secp256r1_2789_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2789_sharedsecret[] = { 0xe8, 0xca, 0xe9, 0x94, 0x42, 0x33, 0xb8, 0x67, 0xee, 0xdf, 0x59, 0x02, 0xfc, 0x49, 0xec, 0xd0, 0x7e, 0x4c, 0x81, 0xc4, 0x62, 0x79, 0x53, 0x1e, 0x89, 0x52, 0x0b, 0x74, 0xba, 0x53, 0x70, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2789 = { .name = "ecdh_secp256r1_2789", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2789_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2789_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2789_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 261 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2790 for ECDH, tcId is 262 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2790_peerpubkey[] = { 0xe9, 0xaf, 0x8e, 0x8c, 0x19, 0xda, 0x9d, 0x5c, 0x2f, 0x3b, 0x3c, 0x03, 0xb8, 0xe9, 0x27, 0xc3, 0xcb, 0xe2, 0xd7, 0x17, 0xf9, 0x8f, 0x50, 0x09, 0x72, 0xe5, 0x6d, 0x82, 0xeb, 0x07, 0xc2, 0xb1, 0x4e, 0x83, 0xfc, 0xaa, 0xca, 0xdc, 0x26, 0xf8, 0xbb, 0x5e, 0x7b, 0x94, 0x74, 0x1f, 0xe5, 0x4f, 0x31, 0x27, 0x5e, 0xbd, 0x6e, 0x1c, 0x96, 0x9d, 0x7e, 0xc2, 0xfe, 0xce, 0xad, 0x8a, 0x0d, 0xae, }; static const unsigned char ecdh_secp256r1_2790_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2790_sharedsecret[] = { 0xe7, 0x2a, 0xd0, 0xcd, 0xb2, 0x5f, 0x43, 0x07, 0xd1, 0xd8, 0x34, 0xa5, 0xf7, 0x92, 0xe9, 0xaf, 0x64, 0xfd, 0x1b, 0x69, 0xa4, 0x70, 0x41, 0xec, 0x8f, 0xa4, 0x6d, 0x52, 0x6f, 0x41, 0x9e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2790 = { .name = "ecdh_secp256r1_2790", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2790_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2790_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2790_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 262 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2791 for ECDH, tcId is 263 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2791_peerpubkey[] = { 0x33, 0xd9, 0x58, 0x2b, 0x56, 0x7a, 0xad, 0xbe, 0x59, 0x60, 0x6f, 0xa6, 0xff, 0xc1, 0x18, 0x48, 0xe4, 0x94, 0x7b, 0x51, 0x79, 0x59, 0x73, 0x17, 0x77, 0x63, 0x17, 0xb2, 0xb4, 0xff, 0x65, 0xd0, 0xb4, 0xd8, 0x56, 0x8d, 0xc8, 0x43, 0x31, 0x9c, 0xc0, 0x4f, 0x4b, 0xf1, 0x10, 0x49, 0x6d, 0xee, 0x7c, 0x92, 0x29, 0xfc, 0x68, 0xcb, 0x09, 0x58, 0xf3, 0xcb, 0xd3, 0x7e, 0xcc, 0xa6, 0x99, 0x0f, }; static const unsigned char ecdh_secp256r1_2791_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2791_sharedsecret[] = { 0x00, 0x01, 0x97, 0xfb, 0xc2, 0x60, 0xa8, 0x4d, 0xbc, 0xbf, 0x88, 0x13, 0x6a, 0xea, 0xa7, 0x9b, 0x03, 0xbb, 0x89, 0x49, 0xae, 0xfd, 0x24, 0x16, 0xbe, 0xf6, 0x39, 0x29, 0xef, 0x78, 0x9b, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2791 = { .name = "ecdh_secp256r1_2791", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2791_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2791_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2791_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 263 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2792 for ECDH, tcId is 264 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2792_peerpubkey[] = { 0xe2, 0x1c, 0x02, 0x82, 0xad, 0xb1, 0xb2, 0x05, 0x5f, 0xda, 0x74, 0x46, 0x44, 0xc6, 0x86, 0x12, 0xcf, 0xb0, 0xc6, 0x8a, 0x70, 0xb9, 0x81, 0x2d, 0x00, 0x7f, 0x21, 0xa7, 0x8f, 0x1a, 0xdc, 0x48, 0x49, 0xf3, 0xe7, 0x64, 0x4b, 0xc6, 0x63, 0x3e, 0x27, 0x73, 0xa2, 0xf3, 0xcc, 0x52, 0x14, 0xfa, 0x72, 0x08, 0xe3, 0x0a, 0xfb, 0x3d, 0xe9, 0x92, 0xf0, 0x77, 0xee, 0x32, 0x15, 0x69, 0xdc, 0x48, }; static const unsigned char ecdh_secp256r1_2792_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2792_sharedsecret[] = { 0xcd, 0xb1, 0x8b, 0xf6, 0x26, 0x70, 0xa8, 0x53, 0x48, 0x8c, 0xa5, 0x10, 0xd8, 0xf5, 0x5b, 0xab, 0x29, 0x18, 0x99, 0x14, 0x24, 0x92, 0x5b, 0xd9, 0xb7, 0x4a, 0x82, 0x1d, 0x2c, 0x6e, 0x7e, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2792 = { .name = "ecdh_secp256r1_2792", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2792_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2792_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2792_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 264 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2793 for ECDH, tcId is 265 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2793_peerpubkey[] = { 0xaf, 0x27, 0xde, 0x0d, 0xa6, 0x55, 0x6e, 0x4e, 0x64, 0x58, 0x8c, 0x96, 0x94, 0xaf, 0xee, 0x9a, 0x84, 0xe1, 0xcb, 0xd0, 0xc3, 0x88, 0x97, 0x2d, 0xf3, 0xa9, 0x97, 0xf7, 0x60, 0xbb, 0xcd, 0x90, 0x3c, 0x5a, 0x02, 0xe1, 0x61, 0x55, 0x1f, 0x33, 0x3d, 0x77, 0x05, 0x59, 0xab, 0x1a, 0xf4, 0x9b, 0xf8, 0xb6, 0x82, 0x74, 0x89, 0x65, 0x90, 0x93, 0x9c, 0xe9, 0x56, 0xd9, 0x91, 0x3b, 0x67, 0x6f, }; static const unsigned char ecdh_secp256r1_2793_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2793_sharedsecret[] = { 0x16, 0x73, 0x03, 0x50, 0x5d, 0x22, 0xcf, 0x9e, 0xf7, 0x8c, 0x5b, 0x96, 0x87, 0xa5, 0x41, 0x8f, 0xa9, 0xfb, 0x28, 0x4f, 0x2b, 0x0f, 0xf6, 0x83, 0x16, 0x28, 0x8e, 0xcd, 0x7f, 0x2e, 0x2e, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_2793 = { .name = "ecdh_secp256r1_2793", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2793_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2793_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2793_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 265 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2794 for ECDH, tcId is 266 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2794_peerpubkey[] = { 0x0d, 0xa4, 0x1b, 0x82, 0x55, 0x0b, 0x35, 0x8f, 0xf4, 0x74, 0x91, 0x5d, 0x83, 0x10, 0x4d, 0x41, 0xa8, 0x3a, 0x12, 0xef, 0x70, 0x58, 0x9b, 0x9d, 0x39, 0x2f, 0x0f, 0x30, 0xdc, 0x32, 0x42, 0x9e, 0xdc, 0x76, 0x16, 0x3c, 0x8f, 0xe0, 0x7a, 0x3f, 0x70, 0x9c, 0xbd, 0x92, 0xda, 0x0b, 0xbf, 0xc5, 0x04, 0x5f, 0x3d, 0xb8, 0x2a, 0xa5, 0x34, 0x4c, 0xf1, 0xfd, 0x5b, 0x27, 0xfc, 0xd2, 0xf7, 0xa6, }; static const unsigned char ecdh_secp256r1_2794_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2794_sharedsecret[] = { 0x85, 0x60, 0x0f, 0xf2, 0x3c, 0x3c, 0xde, 0x26, 0x00, 0x9f, 0xea, 0x9b, 0x65, 0x39, 0x66, 0x4b, 0xf0, 0x45, 0x05, 0x68, 0x83, 0x72, 0x8a, 0xb0, 0xd4, 0x49, 0x8e, 0xa0, 0xa8, 0xf4, 0xa4, 0x53, }; static const wycheproof_ecdh_test ecdh_secp256r1_2794 = { .name = "ecdh_secp256r1_2794", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2794_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2794_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2794_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 266 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2795 for ECDH, tcId is 267 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2795_peerpubkey[] = { 0x19, 0xc8, 0x44, 0xb8, 0xc7, 0x20, 0x90, 0x26, 0xa0, 0x99, 0x6a, 0x78, 0x29, 0x83, 0xe1, 0xbd, 0x0f, 0x0d, 0xe9, 0x25, 0x5b, 0x86, 0x73, 0x9b, 0xe9, 0xbe, 0xf0, 0x8e, 0xa5, 0x47, 0x5c, 0xc6, 0x69, 0xa7, 0x79, 0xdd, 0xf5, 0x77, 0x47, 0xcf, 0x7d, 0x9a, 0x22, 0xf0, 0x0e, 0xd8, 0xef, 0xc6, 0xe8, 0x18, 0xaf, 0x58, 0x27, 0xb7, 0x50, 0xd6, 0x65, 0xfe, 0xe6, 0xd6, 0xd5, 0x8a, 0x22, 0xe8, }; static const unsigned char ecdh_secp256r1_2795_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2795_sharedsecret[] = { 0xa3, 0x25, 0x0a, 0x2b, 0xfb, 0x14, 0x5c, 0xe8, 0x6e, 0x70, 0x6a, 0xc3, 0xab, 0x2b, 0xf5, 0x03, 0xa6, 0x64, 0x86, 0xac, 0x0b, 0x2f, 0x75, 0x22, 0x60, 0x1c, 0x12, 0x4b, 0x0e, 0x0f, 0x9c, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2795 = { .name = "ecdh_secp256r1_2795", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2795_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2795_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2795_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 267 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2796 for ECDH, tcId is 268 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2796_peerpubkey[] = { 0xbd, 0x07, 0xbd, 0x43, 0x26, 0xcd, 0xca, 0xbf, 0x42, 0x90, 0x5e, 0xfa, 0x45, 0x59, 0xa3, 0x0e, 0x68, 0xcb, 0x21, 0x5d, 0x40, 0xc9, 0xaf, 0xb6, 0x0c, 0xe0, 0x2d, 0x4f, 0xda, 0x61, 0x75, 0x79, 0xb9, 0x27, 0xb5, 0xcb, 0xa0, 0x2d, 0x24, 0xfb, 0x9a, 0xaf, 0xe1, 0xd4, 0x29, 0x35, 0x1e, 0x48, 0xba, 0xe9, 0xdd, 0x92, 0xd7, 0xbc, 0x7b, 0xe1, 0x5e, 0x5b, 0x8a, 0x30, 0xa8, 0x6b, 0xe1, 0x3d, }; static const unsigned char ecdh_secp256r1_2796_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2796_sharedsecret[] = { 0x2d, 0x70, 0xcc, 0x8c, 0x8a, 0xf0, 0x13, 0x66, 0x05, 0x1c, 0xc8, 0x35, 0x9c, 0x2f, 0xc8, 0xf2, 0x58, 0x75, 0x7e, 0x26, 0x01, 0xfd, 0x8f, 0x3e, 0x08, 0x42, 0x2a, 0x7b, 0x23, 0xbf, 0xef, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2796 = { .name = "ecdh_secp256r1_2796", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2796_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2796_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2796_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 268 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2797 for ECDH, tcId is 269 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2797_peerpubkey[] = { 0x00, 0x89, 0xde, 0xe2, 0x7a, 0x60, 0xd0, 0x71, 0xda, 0xbb, 0xaf, 0x58, 0xf3, 0xe5, 0x66, 0x14, 0xda, 0xd3, 0xb7, 0xf9, 0xa8, 0x03, 0x07, 0x69, 0xfd, 0x04, 0x63, 0xb3, 0xe6, 0xe0, 0xf0, 0x3a, 0x14, 0x7b, 0x4d, 0x6e, 0x7e, 0x7f, 0xd9, 0x39, 0xb9, 0xb5, 0x4d, 0xab, 0x45, 0x8f, 0xd5, 0x56, 0xad, 0x8f, 0xda, 0xf4, 0xda, 0x6c, 0x39, 0x09, 0x58, 0x8c, 0x4e, 0x05, 0x0c, 0xa7, 0x4a, 0x67, }; static const unsigned char ecdh_secp256r1_2797_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2797_sharedsecret[] = { 0xcb, 0xe0, 0xc5, 0x71, 0xd1, 0x08, 0x0e, 0xa3, 0x4e, 0xe2, 0x0a, 0xd1, 0xbf, 0xd2, 0x1e, 0xa5, 0xec, 0xc4, 0x42, 0xea, 0xd7, 0x33, 0xfb, 0x4e, 0xee, 0x3c, 0x0d, 0x7b, 0x0c, 0xce, 0x99, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256r1_2797 = { .name = "ecdh_secp256r1_2797", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2797_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2797_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2797_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 269 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2798 for ECDH, tcId is 270 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2798_peerpubkey[] = { 0x42, 0xed, 0xe1, 0x06, 0xcf, 0x85, 0xae, 0xf4, 0x6d, 0xf7, 0xe5, 0xdb, 0xa8, 0xa8, 0xb0, 0x04, 0x59, 0x31, 0x7d, 0x9e, 0x76, 0x6a, 0x7b, 0x77, 0xc2, 0x99, 0xaa, 0x0e, 0x17, 0xde, 0xa1, 0x42, 0xb6, 0xe9, 0xa8, 0x6f, 0x4f, 0xc3, 0xe9, 0x45, 0xd4, 0x32, 0x3b, 0xa8, 0xe4, 0x59, 0xf6, 0xb7, 0xb1, 0x4c, 0x56, 0x3a, 0x69, 0x8c, 0x75, 0x7a, 0x2d, 0x5f, 0x7b, 0x0b, 0xc3, 0x01, 0xed, 0xe2, }; static const unsigned char ecdh_secp256r1_2798_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2798_sharedsecret[] = { 0x33, 0x32, 0x0f, 0xc7, 0x91, 0x7f, 0xe4, 0xe1, 0x92, 0x80, 0xbf, 0xbf, 0xe1, 0x6f, 0x22, 0x3c, 0x03, 0x7f, 0x7c, 0x2d, 0xc3, 0x0c, 0x0f, 0xda, 0x98, 0x31, 0x07, 0x40, 0xf5, 0x7f, 0xe2, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_2798 = { .name = "ecdh_secp256r1_2798", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2798_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2798_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2798_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 270 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2799 for ECDH, tcId is 271 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2799_peerpubkey[] = { 0x97, 0x4b, 0x43, 0x16, 0xc5, 0xe7, 0xd1, 0x34, 0x8b, 0x28, 0xdb, 0xc4, 0xfd, 0x61, 0xd8, 0xd3, 0x47, 0x0d, 0xe7, 0x44, 0xc3, 0x0f, 0x5b, 0xe2, 0x37, 0xf8, 0x5f, 0x29, 0x96, 0x9d, 0xea, 0x77, 0xb5, 0xf0, 0x0b, 0x58, 0xb8, 0x3c, 0xfc, 0x7b, 0xc5, 0x16, 0x55, 0x46, 0x5b, 0x4a, 0x28, 0xab, 0xe1, 0xed, 0x3d, 0xbe, 0xc2, 0x0c, 0x6b, 0x46, 0x43, 0xae, 0xc8, 0x5b, 0x95, 0xa5, 0xbe, 0xc6, }; static const unsigned char ecdh_secp256r1_2799_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2799_sharedsecret[] = { 0x35, 0xc7, 0x26, 0xea, 0xd6, 0x6c, 0x39, 0x41, 0x4f, 0xe0, 0xc2, 0x46, 0x04, 0xdf, 0x78, 0x38, 0xe5, 0x72, 0x5d, 0x2f, 0xc1, 0xbd, 0x08, 0x53, 0x26, 0x1e, 0x1d, 0xe3, 0x33, 0x8e, 0xcb, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2799 = { .name = "ecdh_secp256r1_2799", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2799_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2799_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2799_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 271 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2800 for ECDH, tcId is 272 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2800_peerpubkey[] = { 0x59, 0x87, 0x3d, 0x75, 0x23, 0x93, 0x6a, 0x12, 0x1b, 0x62, 0x9e, 0x98, 0x70, 0xf9, 0x30, 0x41, 0x9f, 0x25, 0x3a, 0x57, 0x67, 0xb9, 0xd0, 0xdc, 0x49, 0x71, 0x6f, 0x2c, 0x50, 0xe1, 0x7b, 0xd0, 0x16, 0x3b, 0x71, 0xf2, 0xbf, 0x43, 0x18, 0xfb, 0xde, 0x1c, 0xea, 0xa5, 0x85, 0x45, 0x00, 0x80, 0xee, 0xc2, 0x84, 0x74, 0xcd, 0x18, 0xbf, 0x7c, 0x21, 0xd2, 0xd1, 0xbf, 0xde, 0x4f, 0xf6, 0x77, }; static const unsigned char ecdh_secp256r1_2800_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2800_sharedsecret[] = { 0x66, 0xea, 0x42, 0xfe, 0x6f, 0xd8, 0x74, 0x1b, 0x37, 0x59, 0x9b, 0xbd, 0xad, 0xa3, 0xec, 0x0e, 0x6b, 0x08, 0xc0, 0xb5, 0x2e, 0xa6, 0x7c, 0x29, 0xa3, 0x31, 0x72, 0xf7, 0x27, 0x42, 0x58, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2800 = { .name = "ecdh_secp256r1_2800", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2800_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2800_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2800_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 272 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2801 for ECDH, tcId is 273 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2801_peerpubkey[] = { 0xbd, 0x85, 0xa7, 0x9f, 0x81, 0xc4, 0xf9, 0x61, 0x3e, 0x64, 0xfa, 0x34, 0x78, 0x86, 0x43, 0x78, 0x56, 0xc7, 0x35, 0x8d, 0x1b, 0x69, 0xcf, 0x1e, 0x92, 0x3d, 0x77, 0x42, 0xd8, 0x2f, 0x9b, 0x67, 0x67, 0xd2, 0x69, 0x18, 0xea, 0xa8, 0xac, 0xb1, 0x13, 0xa1, 0xda, 0xad, 0xae, 0xdc, 0x70, 0x97, 0x42, 0x45, 0x73, 0x03, 0xeb, 0xc2, 0x3c, 0xdd, 0xa5, 0x57, 0x26, 0x13, 0xdc, 0x82, 0x77, 0x03, }; static const unsigned char ecdh_secp256r1_2801_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2801_sharedsecret[] = { 0x2f, 0x8a, 0x50, 0x2e, 0x4f, 0x44, 0x01, 0x33, 0xe8, 0x4f, 0xb6, 0x25, 0x29, 0x2c, 0xbe, 0xab, 0xe2, 0xcb, 0x79, 0xda, 0x73, 0x98, 0x7c, 0x76, 0xd4, 0xfe, 0xd8, 0x64, 0xd1, 0xb1, 0xb7, 0x62, }; static const wycheproof_ecdh_test ecdh_secp256r1_2801 = { .name = "ecdh_secp256r1_2801", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2801_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2801_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2801_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 273 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2802 for ECDH, tcId is 274 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2802_peerpubkey[] = { 0x3e, 0x6a, 0x4e, 0xff, 0xc4, 0x7c, 0x2f, 0x59, 0x26, 0xbb, 0x6b, 0x4a, 0xcf, 0x2e, 0xac, 0x48, 0xb9, 0x52, 0x4c, 0x47, 0xd5, 0x11, 0xf8, 0x16, 0x97, 0x67, 0x96, 0x77, 0x86, 0x00, 0xd6, 0xc5, 0xbf, 0xce, 0x59, 0x32, 0x42, 0xa5, 0x98, 0x5a, 0x97, 0x75, 0x90, 0xf8, 0xd7, 0x48, 0x5d, 0xf3, 0xf9, 0x53, 0x35, 0x29, 0x57, 0xf3, 0xc1, 0x7c, 0x13, 0xe9, 0x45, 0x83, 0xd9, 0xc0, 0xe7, 0xb9, }; static const unsigned char ecdh_secp256r1_2802_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2802_sharedsecret[] = { 0x06, 0x43, 0x68, 0x17, 0xd8, 0x92, 0x8b, 0x77, 0xb7, 0x3d, 0x16, 0xc5, 0xc3, 0xb3, 0x5e, 0x24, 0x3a, 0xd3, 0xef, 0x2a, 0xb5, 0x9a, 0xd0, 0x47, 0x14, 0x2c, 0x67, 0xa6, 0xd0, 0x92, 0x3c, 0x84, }; static const wycheproof_ecdh_test ecdh_secp256r1_2802 = { .name = "ecdh_secp256r1_2802", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2802_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2802_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2802_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 274 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2803 for ECDH, tcId is 275 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2803_peerpubkey[] = { 0x9a, 0x44, 0x87, 0xfc, 0xfc, 0xe8, 0x39, 0x66, 0x88, 0xe7, 0x44, 0x9e, 0x09, 0x5f, 0xe8, 0x03, 0xca, 0xa2, 0x53, 0xd4, 0xbd, 0x7c, 0x66, 0xdb, 0xc6, 0x26, 0x1c, 0xc9, 0xd9, 0xf8, 0x83, 0xa5, 0x0e, 0x52, 0x51, 0xba, 0xe2, 0x9c, 0x5a, 0x5c, 0xdf, 0xa3, 0x1b, 0xc6, 0x11, 0x05, 0x67, 0x1a, 0x88, 0xa0, 0x18, 0x46, 0x73, 0x98, 0x15, 0x8d, 0x35, 0xb8, 0x88, 0x29, 0x23, 0x7c, 0x0b, 0xff, }; static const unsigned char ecdh_secp256r1_2803_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2803_sharedsecret[] = { 0x7e, 0x83, 0xfd, 0x2c, 0x3d, 0x71, 0x3b, 0xc8, 0x5d, 0x6d, 0x85, 0xd9, 0x07, 0x8b, 0x3a, 0x08, 0x42, 0x82, 0x4d, 0x41, 0x0e, 0x8a, 0xbd, 0xe0, 0x4d, 0xa0, 0xfd, 0x71, 0xc7, 0xd9, 0x47, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256r1_2803 = { .name = "ecdh_secp256r1_2803", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2803_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2803_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2803_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 275 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2804 for ECDH, tcId is 276 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2804_peerpubkey[] = { 0xfe, 0xd6, 0xce, 0x12, 0x72, 0x90, 0xc1, 0x29, 0x1c, 0xa5, 0xce, 0x64, 0xac, 0xb4, 0xe0, 0xf2, 0xf8, 0x90, 0x56, 0x54, 0xd1, 0xd2, 0x5b, 0xa5, 0x7c, 0x1f, 0x74, 0xab, 0x52, 0xf2, 0x1f, 0x42, 0x96, 0x3d, 0x31, 0x67, 0x1c, 0x06, 0xb8, 0x02, 0x16, 0x99, 0x29, 0x52, 0x5c, 0x4a, 0x1f, 0xde, 0xff, 0x5b, 0x1e, 0xaf, 0xab, 0x91, 0x9d, 0xc2, 0xdf, 0x6c, 0x52, 0xbe, 0x84, 0xdf, 0xae, 0xf3, }; static const unsigned char ecdh_secp256r1_2804_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2804_sharedsecret[] = { 0x0e, 0x3d, 0xfd, 0xab, 0x60, 0x6e, 0xbd, 0xc6, 0x42, 0x82, 0x82, 0xac, 0xd4, 0x43, 0xf1, 0x89, 0xc9, 0x9b, 0x3b, 0x48, 0x3a, 0xa1, 0x01, 0xfd, 0x8d, 0x6b, 0xed, 0x38, 0xae, 0xc5, 0x9e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_2804 = { .name = "ecdh_secp256r1_2804", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2804_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2804_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2804_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 276 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2805 for ECDH, tcId is 277 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2805_peerpubkey[] = { 0xf7, 0xce, 0xe5, 0xb5, 0x5f, 0x18, 0x69, 0xf1, 0x37, 0xdd, 0x70, 0x7c, 0x8f, 0x8f, 0xb8, 0x96, 0x5a, 0x2b, 0xe5, 0x84, 0x0c, 0x31, 0x49, 0xfb, 0x75, 0x96, 0x95, 0xa4, 0x66, 0x1b, 0x9c, 0x0d, 0x23, 0xc7, 0x8c, 0x4e, 0x96, 0x47, 0xb0, 0xd6, 0xcb, 0x2f, 0x26, 0x02, 0xbe, 0x73, 0xff, 0x25, 0xcf, 0x3d, 0x09, 0xc9, 0x6d, 0x89, 0x2b, 0x57, 0x45, 0xfe, 0x5e, 0xca, 0x81, 0x4a, 0xec, 0x91, }; static const unsigned char ecdh_secp256r1_2805_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2805_sharedsecret[] = { 0xf4, 0x89, 0xf2, 0xbd, 0x93, 0xf7, 0x6b, 0x8e, 0x41, 0xfc, 0x6b, 0x9f, 0x21, 0x1b, 0xc5, 0x99, 0xd4, 0x9d, 0xb1, 0xf1, 0x7a, 0x38, 0xe9, 0x5b, 0xab, 0x1d, 0x31, 0xb2, 0xa2, 0xb5, 0x58, 0x29, }; static const wycheproof_ecdh_test ecdh_secp256r1_2805 = { .name = "ecdh_secp256r1_2805", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2805_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2805_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2805_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 277 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2806 for ECDH, tcId is 278 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2806_peerpubkey[] = { 0x2b, 0xaa, 0xae, 0xc3, 0xb3, 0xe8, 0xd5, 0x4a, 0x4e, 0x18, 0xf0, 0x96, 0x0b, 0x94, 0x7d, 0xa2, 0x53, 0x5e, 0x3c, 0xfc, 0xca, 0x2c, 0xfa, 0x8b, 0x71, 0x13, 0xaa, 0xd8, 0xe3, 0xb6, 0x62, 0x6f, 0x72, 0xf7, 0x1e, 0x7c, 0x9e, 0x96, 0x04, 0x2c, 0x1d, 0x39, 0xcc, 0x8f, 0x11, 0x39, 0xd5, 0x14, 0x7c, 0x6f, 0x4f, 0xe6, 0x2e, 0x23, 0xcf, 0x6d, 0xf3, 0x64, 0xb5, 0xf4, 0xd8, 0x99, 0xf8, 0x42, }; static const unsigned char ecdh_secp256r1_2806_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2806_sharedsecret[] = { 0xcc, 0x57, 0x38, 0xb4, 0x9d, 0x30, 0xd5, 0xd0, 0x2c, 0xf7, 0xe0, 0xc5, 0x4a, 0x3d, 0xe0, 0x9b, 0x5b, 0x6f, 0x3c, 0x4d, 0xea, 0x91, 0xdd, 0x06, 0x79, 0x07, 0x2a, 0x35, 0x62, 0x44, 0x4c, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_2806 = { .name = "ecdh_secp256r1_2806", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2806_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2806_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2806_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 278 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2807 for ECDH, tcId is 279 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2807_peerpubkey[] = { 0xa5, 0x1a, 0xb1, 0x23, 0x8b, 0xc1, 0xbe, 0xd2, 0x52, 0x47, 0xe7, 0xd1, 0x79, 0xc8, 0x3a, 0x61, 0xae, 0x2d, 0x4a, 0x9f, 0xe2, 0x28, 0x8c, 0x36, 0x3a, 0xe0, 0xeb, 0x7a, 0x77, 0xde, 0x43, 0x2a, 0x3c, 0x6d, 0x35, 0xd8, 0x2b, 0xa8, 0x01, 0x7e, 0x6c, 0xa9, 0x04, 0x1c, 0xc7, 0x85, 0xa3, 0x07, 0x03, 0xf7, 0xbc, 0x44, 0x27, 0x50, 0x6e, 0x62, 0x4a, 0xc5, 0x97, 0x9d, 0x71, 0x54, 0x21, 0xdd, }; static const unsigned char ecdh_secp256r1_2807_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2807_sharedsecret[] = { 0x89, 0xa1, 0x11, 0x77, 0xd6, 0x90, 0x7a, 0x81, 0xd4, 0x74, 0x67, 0x09, 0x3b, 0xf6, 0xa3, 0xcc, 0x8b, 0xa5, 0x5d, 0xee, 0x05, 0x23, 0x9b, 0x16, 0x0a, 0x31, 0xa3, 0x00, 0x0f, 0x5d, 0x80, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2807 = { .name = "ecdh_secp256r1_2807", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2807_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2807_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2807_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 279 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2808 for ECDH, tcId is 280 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2808_peerpubkey[] = { 0x8b, 0x5a, 0xe8, 0xa0, 0xe5, 0x5f, 0x30, 0xf5, 0x09, 0x06, 0x13, 0x15, 0xab, 0xae, 0x79, 0xac, 0x48, 0x0f, 0x88, 0xb4, 0x46, 0x55, 0xf7, 0x26, 0x9a, 0x38, 0x5c, 0x81, 0x52, 0x68, 0x84, 0xbe, 0x26, 0x29, 0x74, 0xa3, 0x1a, 0x0e, 0x23, 0x22, 0x12, 0x6c, 0x2d, 0x77, 0xb2, 0x6b, 0x10, 0x8a, 0xbd, 0x81, 0xf8, 0xb9, 0x52, 0xc4, 0x58, 0xcc, 0xc9, 0x5d, 0x46, 0xfb, 0x49, 0x24, 0xc7, 0xc0, }; static const unsigned char ecdh_secp256r1_2808_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2808_sharedsecret[] = { 0x2c, 0xb0, 0x3c, 0x30, 0xb2, 0x00, 0x37, 0xa5, 0xcf, 0x4d, 0x5b, 0x33, 0x57, 0x4f, 0x3a, 0xba, 0xc8, 0x95, 0xbf, 0xab, 0x37, 0x86, 0x7e, 0xb2, 0xeb, 0xed, 0x26, 0x0e, 0x09, 0x29, 0x05, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2808 = { .name = "ecdh_secp256r1_2808", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2808_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2808_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2808_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 280 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2809 for ECDH, tcId is 281 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2809_peerpubkey[] = { 0x5f, 0x60, 0xc7, 0x7e, 0x47, 0x4d, 0xd6, 0x6c, 0x81, 0x35, 0xee, 0x3d, 0xaf, 0xc7, 0x5b, 0xa6, 0x44, 0x64, 0x98, 0x24, 0xc7, 0x27, 0x37, 0x54, 0x20, 0x91, 0xad, 0x46, 0x9a, 0xdb, 0xb6, 0x85, 0x31, 0x2c, 0x09, 0xc6, 0x9b, 0x62, 0x9d, 0x04, 0x36, 0xbf, 0x3b, 0xd6, 0xc6, 0x08, 0x3f, 0xf2, 0xa8, 0x7b, 0xe4, 0x84, 0xa7, 0x3e, 0xf3, 0xa5, 0xd2, 0xc3, 0xe0, 0x6b, 0x5d, 0x9b, 0x21, 0xb3, }; static const unsigned char ecdh_secp256r1_2809_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2809_sharedsecret[] = { 0xe5, 0x4d, 0x48, 0x7d, 0x0c, 0x4b, 0x12, 0xfe, 0x52, 0x2a, 0xf3, 0xe6, 0x63, 0xce, 0x31, 0x6e, 0x63, 0x2b, 0xa9, 0xd6, 0x3a, 0x1f, 0x02, 0xa3, 0x6f, 0xc5, 0xa8, 0x2b, 0xf8, 0x27, 0x31, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp256r1_2809 = { .name = "ecdh_secp256r1_2809", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2809_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2809_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2809_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 281 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2810 for ECDH, tcId is 282 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2810_peerpubkey[] = { 0xe0, 0x6e, 0xaa, 0x73, 0xf6, 0xfe, 0xae, 0x45, 0x41, 0x7d, 0x85, 0x9b, 0xba, 0xd4, 0xbc, 0x40, 0x4b, 0x28, 0x85, 0xbc, 0xd2, 0x13, 0xeb, 0xac, 0xe5, 0x94, 0xe1, 0x6f, 0x49, 0x70, 0xe0, 0xc4, 0x11, 0xed, 0x33, 0x23, 0xa3, 0xd7, 0xaf, 0xc7, 0x07, 0x62, 0x39, 0x88, 0x43, 0x07, 0xf9, 0x18, 0x49, 0xed, 0x5f, 0x5e, 0x36, 0xb6, 0x17, 0x1d, 0x30, 0x9c, 0x81, 0x34, 0x4c, 0x53, 0xe0, 0x6d, }; static const unsigned char ecdh_secp256r1_2810_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2810_sharedsecret[] = { 0xcc, 0xea, 0x96, 0x9d, 0x40, 0xfa, 0x42, 0x93, 0x3f, 0x4f, 0xbd, 0xc4, 0xca, 0xbe, 0x21, 0x85, 0xf8, 0xa4, 0x52, 0x99, 0x62, 0x54, 0xc1, 0xf4, 0xe0, 0xdd, 0xe5, 0xe1, 0x4f, 0xee, 0xea, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2810 = { .name = "ecdh_secp256r1_2810", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2810_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2810_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2810_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 282 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2811 for ECDH, tcId is 283 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2811_peerpubkey[] = { 0x0f, 0x1c, 0x1b, 0x89, 0xe9, 0xfc, 0x6f, 0xc0, 0xfa, 0xef, 0xc9, 0x10, 0x9f, 0xc4, 0xa1, 0x24, 0x7d, 0x9f, 0x54, 0xc7, 0x49, 0x7b, 0x6c, 0xc9, 0x75, 0xe6, 0xa5, 0x45, 0x5b, 0xef, 0x41, 0x08, 0x36, 0xcb, 0x38, 0x18, 0x54, 0x8a, 0xc9, 0xb4, 0x1e, 0x2b, 0x83, 0x36, 0xc3, 0xeb, 0x8d, 0x97, 0x07, 0x5a, 0xe4, 0x7e, 0x18, 0x27, 0xfa, 0x1f, 0xf9, 0x3d, 0x43, 0x41, 0xd4, 0x3c, 0x0c, 0x1d, }; static const unsigned char ecdh_secp256r1_2811_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2811_sharedsecret[] = { 0xea, 0xae, 0x0e, 0x18, 0x8c, 0x94, 0x27, 0xbf, 0x3c, 0x8b, 0x3d, 0xed, 0x77, 0x21, 0x22, 0x20, 0x4c, 0x32, 0x8d, 0x59, 0x41, 0xe3, 0x89, 0xd8, 0x08, 0xe2, 0x72, 0x46, 0x38, 0xf9, 0xaf, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256r1_2811 = { .name = "ecdh_secp256r1_2811", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2811_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2811_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2811_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 283 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2812 for ECDH, tcId is 284 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2812_peerpubkey[] = { 0x57, 0x70, 0x69, 0xe8, 0x28, 0x4a, 0x95, 0xf5, 0x1d, 0xca, 0xb9, 0x19, 0xb0, 0x53, 0x66, 0x57, 0x05, 0x89, 0x71, 0xda, 0xb7, 0x62, 0x17, 0xf8, 0xd3, 0xae, 0x72, 0x2a, 0x64, 0x09, 0x2e, 0x26, 0xe5, 0x1f, 0x68, 0xa7, 0x22, 0xcc, 0x03, 0x97, 0xf4, 0x80, 0x14, 0x01, 0x77, 0x1e, 0x9a, 0x3d, 0x19, 0x88, 0xd4, 0xaf, 0x76, 0xf1, 0x4f, 0x9e, 0x2f, 0x9c, 0x36, 0xe0, 0x77, 0x3e, 0x29, 0xc2, }; static const unsigned char ecdh_secp256r1_2812_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2812_sharedsecret[] = { 0xfe, 0xa0, 0xcc, 0xe1, 0x35, 0x8f, 0x1f, 0xf4, 0x0f, 0xfe, 0xaa, 0xff, 0xbf, 0x91, 0xb2, 0xe8, 0xd4, 0x26, 0xd4, 0xe3, 0x1e, 0x96, 0x27, 0x73, 0x1a, 0xce, 0x3a, 0x12, 0x2e, 0xab, 0x6b, 0x0d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2812 = { .name = "ecdh_secp256r1_2812", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2812_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2812_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2812_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 284 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2813 for ECDH, tcId is 285 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2813_peerpubkey[] = { 0x24, 0x06, 0xa2, 0x75, 0x90, 0x50, 0xb9, 0x25, 0xdd, 0x4f, 0x81, 0x4c, 0x50, 0x33, 0xe3, 0x55, 0x54, 0x8f, 0x42, 0xbb, 0xf1, 0xaf, 0xb7, 0x91, 0xc1, 0x10, 0xf0, 0x03, 0x1f, 0x29, 0xf6, 0x80, 0x99, 0xd5, 0xf4, 0xb0, 0x05, 0xde, 0x39, 0x27, 0xf1, 0x65, 0xab, 0xef, 0xf1, 0x96, 0xa2, 0x8c, 0x72, 0x17, 0xfa, 0xb1, 0xbe, 0x2b, 0x52, 0x09, 0xc3, 0x24, 0xe7, 0xd6, 0x2d, 0x2d, 0xd6, 0x87, }; static const unsigned char ecdh_secp256r1_2813_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2813_sharedsecret[] = { 0x83, 0x76, 0x21, 0xea, 0x48, 0x27, 0xbb, 0xa0, 0x37, 0x6a, 0xaa, 0x8a, 0xa6, 0x6c, 0xfe, 0x14, 0x4a, 0x2f, 0xf1, 0xe3, 0x59, 0xdc, 0x61, 0x9a, 0x06, 0x44, 0x1d, 0x3e, 0x05, 0x5f, 0x97, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256r1_2813 = { .name = "ecdh_secp256r1_2813", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2813_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2813_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2813_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 285 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2814 for ECDH, tcId is 286 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2814_peerpubkey[] = { 0xcc, 0xaa, 0xc6, 0x1f, 0x35, 0xa2, 0x78, 0x61, 0x18, 0x36, 0x21, 0x64, 0x2b, 0xc5, 0x73, 0xaf, 0x91, 0x33, 0x56, 0xfb, 0x47, 0xcf, 0x58, 0x2f, 0x0b, 0x52, 0x99, 0x09, 0x9d, 0x6f, 0x6c, 0x69, 0x91, 0xf7, 0x27, 0x2b, 0x83, 0xb7, 0x38, 0xa7, 0xa5, 0xd3, 0x04, 0x47, 0xc8, 0x7f, 0x12, 0x6a, 0x7d, 0x98, 0xec, 0x72, 0xfa, 0x26, 0x09, 0xd0, 0x93, 0x9d, 0x18, 0xdb, 0x7e, 0xa7, 0xeb, 0x3a, }; static const unsigned char ecdh_secp256r1_2814_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2814_sharedsecret[] = { 0x63, 0x97, 0x4c, 0xe6, 0x15, 0x37, 0x62, 0xe5, 0xb3, 0x64, 0x52, 0x3c, 0xea, 0xd9, 0x3e, 0x8c, 0xe8, 0xbc, 0xc7, 0x7d, 0xda, 0x56, 0x36, 0x5d, 0x67, 0x61, 0x36, 0x16, 0x9f, 0xc4, 0xe3, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2814 = { .name = "ecdh_secp256r1_2814", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2814_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2814_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2814_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 286 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2815 for ECDH, tcId is 287 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2815_peerpubkey[] = { 0x01, 0x41, 0x59, 0x17, 0x27, 0x2f, 0x19, 0x84, 0xe7, 0x21, 0x7a, 0x36, 0xfb, 0x31, 0x1f, 0xd2, 0x90, 0x4d, 0x41, 0xa6, 0xb1, 0x39, 0x73, 0xf9, 0x2a, 0xae, 0x3b, 0x90, 0xe8, 0x5e, 0x4d, 0x56, 0xd9, 0x7c, 0x82, 0x2e, 0xb7, 0xb2, 0x1a, 0x84, 0xd0, 0xd1, 0xbe, 0x48, 0x67, 0x40, 0x4a, 0x80, 0xc3, 0x48, 0x67, 0xf4, 0x31, 0x39, 0xda, 0xdc, 0xc3, 0x61, 0x9e, 0x10, 0xb2, 0x22, 0x56, 0x2b, }; static const unsigned char ecdh_secp256r1_2815_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2815_sharedsecret[] = { 0x0a, 0x04, 0x88, 0x14, 0x4b, 0xc3, 0x6d, 0x69, 0x0b, 0x62, 0x14, 0x8a, 0xc3, 0x07, 0x60, 0x47, 0xd4, 0x6d, 0x48, 0xf7, 0xad, 0xbb, 0x0f, 0x34, 0xfe, 0xe9, 0xa6, 0x36, 0x29, 0x5f, 0xe7, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_2815 = { .name = "ecdh_secp256r1_2815", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2815_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2815_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2815_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 287 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2816 for ECDH, tcId is 288 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2816_peerpubkey[] = { 0xb2, 0x57, 0x5d, 0x10, 0x0c, 0x6f, 0xa0, 0x56, 0xbc, 0xd1, 0x37, 0xab, 0x11, 0x1b, 0x53, 0x15, 0xa8, 0x90, 0x8c, 0x29, 0x24, 0x3b, 0x84, 0xf3, 0xdc, 0x99, 0x6d, 0x0e, 0x45, 0x76, 0x4b, 0x91, 0x66, 0xca, 0xbe, 0xb4, 0x18, 0x85, 0x58, 0x8e, 0xc0, 0x8b, 0x47, 0x25, 0x7d, 0xf5, 0x8b, 0xd5, 0x8f, 0x7d, 0xcd, 0x9e, 0x01, 0x2e, 0x26, 0x69, 0xfa, 0x2f, 0x52, 0xe2, 0x57, 0x67, 0xfc, 0x4c, }; static const unsigned char ecdh_secp256r1_2816_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2816_sharedsecret[] = { 0x12, 0x32, 0x16, 0x55, 0x38, 0xa4, 0x42, 0x68, 0xaa, 0x7c, 0x19, 0x9c, 0x54, 0xd6, 0xd2, 0x07, 0xc4, 0xef, 0x3f, 0x5a, 0xa7, 0x90, 0xc1, 0x0c, 0x92, 0x6a, 0x20, 0x75, 0x2c, 0xa6, 0x45, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256r1_2816 = { .name = "ecdh_secp256r1_2816", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2816_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2816_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2816_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 288 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2817 for ECDH, tcId is 289 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2817_peerpubkey[] = { 0xc1, 0x73, 0x55, 0xed, 0x30, 0xcc, 0xd6, 0x42, 0x7f, 0x96, 0x85, 0x70, 0x90, 0x21, 0xb2, 0x5c, 0x11, 0xed, 0x17, 0x6e, 0x96, 0x10, 0xc4, 0x79, 0xbc, 0xc4, 0xcc, 0x75, 0x52, 0xa7, 0x38, 0xe6, 0x1f, 0x75, 0x11, 0x47, 0x61, 0xdb, 0xa0, 0xec, 0x60, 0xcd, 0x26, 0x4b, 0xba, 0xb7, 0x63, 0xc5, 0xd5, 0xab, 0xcc, 0x75, 0xcd, 0x8f, 0xb5, 0x65, 0x1d, 0x06, 0x45, 0x17, 0x99, 0x88, 0xcc, 0x6d, }; static const unsigned char ecdh_secp256r1_2817_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2817_sharedsecret[] = { 0xdc, 0xab, 0x5e, 0x87, 0x4e, 0x4f, 0xb7, 0x6b, 0xc4, 0x31, 0x25, 0x28, 0xe9, 0xd7, 0x6d, 0xfa, 0xe5, 0x61, 0x45, 0x92, 0x25, 0x33, 0x08, 0x97, 0x34, 0x11, 0x0b, 0xf5, 0x65, 0x3f, 0x4d, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256r1_2817 = { .name = "ecdh_secp256r1_2817", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2817_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2817_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2817_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 289 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2818 for ECDH, tcId is 290 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2818_peerpubkey[] = { 0x34, 0x15, 0x92, 0x39, 0x0c, 0xcc, 0xe4, 0x85, 0xde, 0x88, 0x80, 0xf3, 0xd7, 0x27, 0xf6, 0x64, 0xc3, 0x81, 0x91, 0x4a, 0x1b, 0xec, 0xec, 0x38, 0x3b, 0x35, 0x58, 0x67, 0x51, 0xfc, 0x81, 0xc2, 0xad, 0xd7, 0x18, 0x52, 0xb8, 0x70, 0x16, 0xe1, 0x01, 0x9c, 0xae, 0x7a, 0x90, 0x80, 0xe7, 0x5c, 0xe0, 0xb0, 0xb8, 0xaa, 0xc1, 0x75, 0xd6, 0x92, 0xd5, 0xe7, 0xb4, 0xda, 0xd0, 0x88, 0xf5, 0xcc, }; static const unsigned char ecdh_secp256r1_2818_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2818_sharedsecret[] = { 0x4c, 0xe2, 0x70, 0x1b, 0x2b, 0xe6, 0x3a, 0x00, 0x83, 0xa4, 0xc5, 0x3f, 0x7a, 0x0b, 0xf0, 0x4c, 0xf8, 0x71, 0x65, 0x4f, 0x5e, 0xdb, 0x6f, 0x62, 0x5e, 0x3e, 0xa5, 0xe7, 0xd0, 0xbd, 0xcc, 0x90, }; static const wycheproof_ecdh_test ecdh_secp256r1_2818 = { .name = "ecdh_secp256r1_2818", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2818_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2818_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2818_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 290 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2819 for ECDH, tcId is 291 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2819_peerpubkey[] = { 0xfa, 0x76, 0x4b, 0x6b, 0x76, 0xa8, 0x6c, 0x3b, 0x76, 0x21, 0x20, 0x82, 0x5d, 0x35, 0x3a, 0x24, 0x76, 0x62, 0x08, 0xc1, 0xf5, 0xcc, 0x0f, 0xe3, 0xfe, 0x79, 0x98, 0x02, 0x6a, 0x2e, 0xc5, 0xc4, 0x3b, 0xb2, 0xf9, 0x48, 0xfd, 0x94, 0xcd, 0xaa, 0x58, 0x69, 0xb1, 0xe0, 0xe7, 0x3a, 0x4d, 0x97, 0x03, 0x5c, 0xc4, 0x93, 0x57, 0xfb, 0x7b, 0x74, 0xd7, 0xed, 0x0a, 0x2c, 0x5b, 0x8d, 0x54, 0xeb, }; static const unsigned char ecdh_secp256r1_2819_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2819_sharedsecret[] = { 0x7a, 0xbe, 0xf9, 0x76, 0x5c, 0xca, 0x72, 0x13, 0x20, 0xfb, 0xf8, 0xed, 0xcb, 0xef, 0x6d, 0x2b, 0xa2, 0x5d, 0x17, 0xb7, 0x0f, 0xfa, 0x17, 0x76, 0x02, 0x9b, 0xc3, 0x8f, 0xe6, 0x77, 0xa1, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2819 = { .name = "ecdh_secp256r1_2819", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2819_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2819_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2819_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 291 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2820 for ECDH, tcId is 292 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2820_peerpubkey[] = { 0xa7, 0x1f, 0xbb, 0x61, 0x71, 0x99, 0xbd, 0x58, 0x5b, 0x4b, 0x66, 0x21, 0x2c, 0xa3, 0x3c, 0xa9, 0xe0, 0x93, 0x70, 0xe6, 0xbf, 0x15, 0xc8, 0xea, 0x0a, 0xce, 0xfd, 0x9c, 0x8e, 0x94, 0x5d, 0x06, 0x84, 0x0f, 0x05, 0x88, 0x63, 0x07, 0x8e, 0x74, 0x3e, 0x22, 0x0f, 0xf9, 0x9f, 0x23, 0xbb, 0xc1, 0xda, 0xa3, 0x68, 0x35, 0xd4, 0xb1, 0x26, 0x9f, 0x0a, 0x75, 0x36, 0xe6, 0x3f, 0x06, 0xd8, 0x53, }; static const unsigned char ecdh_secp256r1_2820_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2820_sharedsecret[] = { 0x5f, 0x61, 0x40, 0x4d, 0xbb, 0xbc, 0x28, 0x67, 0xdf, 0xf9, 0x5c, 0x1f, 0x37, 0xed, 0x44, 0xf4, 0xcb, 0x8f, 0xab, 0xcd, 0x22, 0x3b, 0x03, 0x73, 0x9d, 0x88, 0x83, 0x08, 0xd1, 0x3b, 0xc4, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_2820 = { .name = "ecdh_secp256r1_2820", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2820_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2820_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2820_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 292 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2821 for ECDH, tcId is 293 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2821_peerpubkey[] = { 0x13, 0xc8, 0x29, 0x2d, 0x85, 0x4d, 0x39, 0x45, 0x1c, 0x0c, 0x63, 0xa8, 0x02, 0xb8, 0xc0, 0x3e, 0x4f, 0xcb, 0x87, 0x5e, 0xf0, 0x12, 0x39, 0x89, 0x62, 0x95, 0xba, 0x1c, 0x0f, 0x38, 0x69, 0x75, 0xf8, 0x2d, 0xf1, 0x97, 0x08, 0x6f, 0xd8, 0x60, 0x32, 0xcb, 0x36, 0xb6, 0x9a, 0x27, 0x87, 0x6d, 0xd7, 0x5a, 0x8e, 0x96, 0x79, 0xf3, 0x6f, 0xfc, 0x22, 0x10, 0xed, 0xb1, 0x28, 0xd4, 0xbe, 0x13, }; static const unsigned char ecdh_secp256r1_2821_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2821_sharedsecret[] = { 0x8d, 0x67, 0x3a, 0x57, 0x7e, 0x35, 0xbf, 0x9d, 0x5d, 0x00, 0x67, 0x6c, 0x08, 0xb2, 0xc7, 0x39, 0x61, 0x7c, 0x46, 0xa0, 0x52, 0x18, 0x84, 0x03, 0xaa, 0x06, 0xdc, 0x71, 0x4a, 0xf6, 0xac, 0xc1, }; static const wycheproof_ecdh_test ecdh_secp256r1_2821 = { .name = "ecdh_secp256r1_2821", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2821_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2821_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2821_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 293 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2822 for ECDH, tcId is 294 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2822_peerpubkey[] = { 0x0c, 0xd9, 0xdf, 0x41, 0x5a, 0xcc, 0x0c, 0x32, 0xfd, 0x4e, 0x3d, 0x69, 0x24, 0xce, 0x53, 0x07, 0x5b, 0x04, 0x52, 0xbf, 0x91, 0x9a, 0x2a, 0xb2, 0xeb, 0xe2, 0x65, 0x97, 0x57, 0x0f, 0x1e, 0xcd, 0x59, 0x85, 0xd8, 0xd2, 0xc5, 0xdf, 0x78, 0xfc, 0x10, 0x0f, 0x87, 0xef, 0xb6, 0xdf, 0xa9, 0x54, 0x37, 0x57, 0xbd, 0xff, 0xec, 0xf0, 0x83, 0xdf, 0xcd, 0x1e, 0xcb, 0x38, 0xde, 0x6c, 0x23, 0xf8, }; static const unsigned char ecdh_secp256r1_2822_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2822_sharedsecret[] = { 0xa7, 0x83, 0x5f, 0xfe, 0xe0, 0xf2, 0xa6, 0x9d, 0xfc, 0xf7, 0x0d, 0x4e, 0x79, 0x8d, 0xbe, 0x3e, 0xd3, 0x2b, 0xa0, 0x3c, 0xfd, 0xda, 0xe5, 0xdd, 0xd1, 0x1d, 0x8c, 0x0a, 0xc3, 0xd7, 0x4f, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_2822 = { .name = "ecdh_secp256r1_2822", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2822_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2822_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2822_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 294 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2823 for ECDH, tcId is 295 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2823_peerpubkey[] = { 0xd2, 0xdb, 0xea, 0x40, 0x46, 0xb2, 0x3f, 0xd2, 0xb2, 0x33, 0xd1, 0xce, 0x31, 0xdc, 0xed, 0xdb, 0x89, 0xb2, 0x5f, 0x26, 0xc0, 0x62, 0x7a, 0x9d, 0x2d, 0xb3, 0xc5, 0x60, 0x5c, 0x9c, 0xc9, 0x95, 0x35, 0xbd, 0xc8, 0xde, 0x74, 0x51, 0xc1, 0xe2, 0x7e, 0x97, 0xaa, 0x91, 0x40, 0x2c, 0xce, 0x38, 0x82, 0xc7, 0x12, 0x69, 0xd9, 0xcb, 0xdc, 0xb5, 0xd7, 0xac, 0x0c, 0xeb, 0x91, 0x1b, 0x9b, 0x6d, }; static const unsigned char ecdh_secp256r1_2823_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2823_sharedsecret[] = { 0xe9, 0x8e, 0xa2, 0x22, 0x09, 0xcd, 0x39, 0x7e, 0xdb, 0x6c, 0x31, 0x96, 0x48, 0xc1, 0xeb, 0x24, 0xbc, 0x4d, 0x39, 0x59, 0x8a, 0xb1, 0x19, 0x95, 0x57, 0x19, 0x26, 0x68, 0x4c, 0xe2, 0xce, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_2823 = { .name = "ecdh_secp256r1_2823", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2823_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2823_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2823_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 295 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2824 for ECDH, tcId is 296 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2824_peerpubkey[] = { 0x88, 0x8f, 0xb0, 0x44, 0xfb, 0x2b, 0x6c, 0xaa, 0x60, 0x36, 0x6b, 0xfa, 0x66, 0x2a, 0xdb, 0xa4, 0x79, 0xb8, 0x36, 0x5a, 0x65, 0x55, 0xa2, 0x98, 0x87, 0xd5, 0x80, 0xf5, 0x87, 0x08, 0x6b, 0xa8, 0x48, 0x2f, 0x4e, 0xc2, 0x40, 0x82, 0xa4, 0x8d, 0x64, 0x02, 0xaf, 0xa1, 0x62, 0x21, 0x43, 0xf2, 0x6e, 0x61, 0xd9, 0x1b, 0x7e, 0x30, 0xd6, 0xa4, 0xb2, 0x23, 0x63, 0x0e, 0xe1, 0x0f, 0x70, 0xfb, }; static const unsigned char ecdh_secp256r1_2824_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2824_sharedsecret[] = { 0x91, 0xb6, 0x57, 0x33, 0x86, 0x0b, 0x1b, 0xdb, 0x95, 0x41, 0xd9, 0xf5, 0x58, 0x95, 0xa3, 0xdb, 0xb3, 0xf1, 0x3c, 0x19, 0x92, 0x51, 0xd3, 0x30, 0x06, 0xb6, 0xdc, 0xf9, 0x0a, 0xc3, 0x49, 0xed, }; static const wycheproof_ecdh_test ecdh_secp256r1_2824 = { .name = "ecdh_secp256r1_2824", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2824_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2824_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2824_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 296 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2825 for ECDH, tcId is 297 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2825_peerpubkey[] = { 0x2e, 0x2b, 0xec, 0x13, 0x42, 0x49, 0x37, 0x9d, 0x57, 0x70, 0x03, 0x01, 0xf3, 0xa5, 0x8e, 0x4b, 0x39, 0x5a, 0x4d, 0x28, 0x37, 0x0d, 0x2a, 0x06, 0xe6, 0x5e, 0x7a, 0xc8, 0x9e, 0xd7, 0x6a, 0xc6, 0x97, 0xdc, 0x96, 0x0b, 0xd7, 0x95, 0xcd, 0xf4, 0xfb, 0xcf, 0xdd, 0x75, 0x14, 0x90, 0x57, 0xb8, 0xe0, 0x22, 0x33, 0x1c, 0x7b, 0x54, 0x61, 0xf3, 0x83, 0xac, 0x58, 0x9d, 0x76, 0x4d, 0xf3, 0x33, }; static const unsigned char ecdh_secp256r1_2825_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2825_sharedsecret[] = { 0x1f, 0xdf, 0x7c, 0x5c, 0x48, 0x04, 0x7a, 0x11, 0x3e, 0x5e, 0x5d, 0x1b, 0x7e, 0xd5, 0x93, 0x33, 0x7e, 0x76, 0x92, 0x31, 0xcc, 0xa5, 0xc7, 0x11, 0x01, 0x60, 0xe0, 0xc1, 0xb9, 0x7f, 0x42, 0x56, }; static const wycheproof_ecdh_test ecdh_secp256r1_2825 = { .name = "ecdh_secp256r1_2825", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2825_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2825_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2825_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 297 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2826 for ECDH, tcId is 298 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2826_peerpubkey[] = { 0xc7, 0x8c, 0xda, 0x7e, 0x3b, 0x9e, 0x17, 0x72, 0xeb, 0xed, 0x30, 0xb2, 0xb5, 0x1d, 0xcf, 0x15, 0x5a, 0x69, 0xa0, 0xfc, 0x50, 0x45, 0x57, 0x83, 0x6e, 0x25, 0x14, 0x7c, 0xfb, 0x81, 0x27, 0xd2, 0xf8, 0x28, 0x9c, 0xf3, 0x8b, 0x03, 0x3d, 0x37, 0x63, 0xc8, 0xf9, 0xf6, 0xc0, 0x91, 0x78, 0x7a, 0x31, 0x42, 0xfb, 0x83, 0xdf, 0xf5, 0x71, 0x95, 0x90, 0x28, 0x2c, 0x6f, 0x85, 0x2e, 0x01, 0x05, }; static const unsigned char ecdh_secp256r1_2826_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2826_sharedsecret[] = { 0xba, 0x0a, 0xbc, 0x3e, 0x71, 0x72, 0x6c, 0xb5, 0x13, 0x30, 0x48, 0x91, 0x76, 0x35, 0x7b, 0x81, 0xb8, 0x07, 0x4d, 0x76, 0x90, 0xe4, 0xe8, 0x2e, 0x9a, 0x3c, 0x00, 0x15, 0x1e, 0x1f, 0xa3, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_2826 = { .name = "ecdh_secp256r1_2826", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2826_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2826_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2826_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 298 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2827 for ECDH, tcId is 299 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2827_peerpubkey[] = { 0x1e, 0x3d, 0xf4, 0xdd, 0x7f, 0xb7, 0x71, 0x8c, 0xb0, 0xaa, 0x0d, 0xd7, 0x2f, 0x8a, 0x25, 0xc8, 0x3c, 0x4e, 0x80, 0x4e, 0x7c, 0xbd, 0x48, 0xc5, 0xe9, 0x65, 0x65, 0x1f, 0x9e, 0x23, 0xbf, 0x4e, 0xf0, 0xff, 0x40, 0xdd, 0x97, 0x96, 0xe4, 0xa9, 0xa5, 0xed, 0xdd, 0x2c, 0x4c, 0xa4, 0xeb, 0xd1, 0x09, 0x90, 0xd8, 0xfb, 0x89, 0x18, 0xd1, 0x2d, 0x53, 0xc7, 0x60, 0x01, 0xaf, 0xa9, 0xde, 0x7f, }; static const unsigned char ecdh_secp256r1_2827_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2827_sharedsecret[] = { 0x16, 0xe6, 0x32, 0xf9, 0x75, 0x2d, 0x36, 0x60, 0x2c, 0x95, 0xec, 0x27, 0x4b, 0x32, 0xad, 0x59, 0x4f, 0x39, 0xf6, 0xac, 0x3b, 0xd4, 0xb0, 0xb2, 0x0f, 0x86, 0x37, 0x39, 0x21, 0x42, 0xce, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256r1_2827 = { .name = "ecdh_secp256r1_2827", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2827_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2827_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2827_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 299 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2828 for ECDH, tcId is 300 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2828_peerpubkey[] = { 0xe5, 0xc5, 0xdc, 0x3f, 0xd8, 0x8d, 0x85, 0x66, 0x8b, 0x3b, 0x70, 0x9f, 0xd6, 0xb4, 0x23, 0x2f, 0x1f, 0x80, 0x94, 0x9c, 0xbc, 0xcb, 0x55, 0x88, 0x36, 0x3e, 0x6c, 0x21, 0x7a, 0x2b, 0x3e, 0xd8, 0x8d, 0xbd, 0x0d, 0x6e, 0x3c, 0xc9, 0x7f, 0x30, 0x81, 0xd1, 0x66, 0x02, 0xaa, 0x3d, 0x1b, 0x65, 0x5e, 0xe0, 0x79, 0x1c, 0x87, 0xfc, 0xb5, 0xab, 0xe6, 0x21, 0x7d, 0x8c, 0x85, 0x13, 0x80, 0x7e, }; static const unsigned char ecdh_secp256r1_2828_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2828_sharedsecret[] = { 0x9e, 0xed, 0x4b, 0x96, 0x56, 0x9f, 0x60, 0x4a, 0x4d, 0x3f, 0x5a, 0xf9, 0x74, 0x99, 0x80, 0x71, 0x11, 0xfc, 0x98, 0x88, 0xc4, 0x58, 0xec, 0xe2, 0xe3, 0x00, 0x0e, 0x24, 0x5c, 0x2c, 0x02, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp256r1_2828 = { .name = "ecdh_secp256r1_2828", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2828_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2828_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2828_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 300 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2829 for ECDH, tcId is 301 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2829_peerpubkey[] = { 0x02, 0x1c, 0x41, 0xec, 0xee, 0xc2, 0x4e, 0x0f, 0xba, 0x89, 0x4a, 0xd7, 0x41, 0x5a, 0x95, 0x98, 0xcb, 0xcd, 0x14, 0xfa, 0x6c, 0xa4, 0x6e, 0x25, 0x57, 0x52, 0x68, 0xa1, 0xd8, 0xe5, 0xbb, 0xc6, 0x3f, 0x84, 0x6c, 0x6a, 0x18, 0x5f, 0xa3, 0xf2, 0x3b, 0xb9, 0x2c, 0x14, 0xe7, 0xe2, 0xcb, 0xa8, 0xc7, 0x40, 0x47, 0xc0, 0x9a, 0xf7, 0x66, 0xf5, 0x5e, 0xf0, 0xc9, 0x07, 0xc8, 0x0d, 0x94, 0x51, }; static const unsigned char ecdh_secp256r1_2829_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2829_sharedsecret[] = { 0x21, 0xac, 0x32, 0x01, 0x38, 0x38, 0x81, 0x26, 0x21, 0xdb, 0xb5, 0x84, 0x96, 0x5b, 0xde, 0xd6, 0xfc, 0x85, 0x1d, 0x3a, 0x02, 0x98, 0x10, 0x67, 0x9b, 0xc5, 0x7b, 0x23, 0x81, 0xbb, 0x7a, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2829 = { .name = "ecdh_secp256r1_2829", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2829_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2829_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2829_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 301 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2830 for ECDH, tcId is 302 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2830_peerpubkey[] = { 0x8e, 0x24, 0x19, 0x2c, 0xd3, 0x33, 0x35, 0xa1, 0x14, 0xf5, 0x07, 0x02, 0x66, 0xc0, 0x14, 0xcb, 0x0d, 0x8c, 0x70, 0x4d, 0x16, 0xd6, 0x04, 0x2e, 0x89, 0xc1, 0x75, 0x97, 0xbc, 0xd4, 0xe7, 0x7e, 0xbd, 0xb4, 0xc5, 0x17, 0x17, 0x04, 0xc2, 0xc0, 0x92, 0x75, 0xc2, 0x2a, 0x31, 0x0e, 0x0c, 0x4f, 0xe0, 0x92, 0xe4, 0x08, 0x48, 0x56, 0xda, 0x99, 0xb9, 0x4a, 0xbb, 0xfa, 0x9f, 0x46, 0x9f, 0x48, }; static const unsigned char ecdh_secp256r1_2830_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2830_sharedsecret[] = { 0xfc, 0x59, 0x78, 0xda, 0x01, 0xca, 0x83, 0xe1, 0x27, 0xdd, 0xdf, 0x98, 0x9a, 0x03, 0x58, 0x87, 0x1b, 0x3c, 0x4c, 0xe0, 0x75, 0x5b, 0xfb, 0x02, 0x06, 0x33, 0xdb, 0x46, 0x7e, 0x21, 0xa5, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2830 = { .name = "ecdh_secp256r1_2830", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2830_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2830_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2830_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 302 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2831 for ECDH, tcId is 303 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2831_peerpubkey[] = { 0x31, 0xc9, 0x0a, 0xe4, 0x7a, 0x93, 0xd0, 0x9a, 0x23, 0x52, 0xb6, 0xf3, 0x67, 0x7e, 0x79, 0x75, 0xea, 0x62, 0xaa, 0xde, 0xdb, 0x56, 0xc1, 0x18, 0xeb, 0x8b, 0x9f, 0x77, 0x1e, 0x2d, 0xd9, 0xf5, 0xf2, 0x60, 0x1f, 0xb9, 0xcc, 0xa2, 0x30, 0x4e, 0x59, 0x44, 0x23, 0xcf, 0x48, 0x06, 0x4d, 0xbe, 0xd1, 0x7a, 0xe4, 0x04, 0x52, 0xf1, 0x8b, 0xe6, 0xae, 0x01, 0x83, 0x21, 0x91, 0x1e, 0x8c, 0xb3, }; static const unsigned char ecdh_secp256r1_2831_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2831_sharedsecret[] = { 0x9f, 0x41, 0x73, 0x41, 0x26, 0x1a, 0xa4, 0x5d, 0x39, 0x6b, 0x0c, 0xcf, 0x2a, 0x3d, 0xee, 0x7a, 0x46, 0x6c, 0xa4, 0x7e, 0x3c, 0xe8, 0x6e, 0xcd, 0x20, 0x71, 0xd9, 0xc4, 0xdb, 0x08, 0x82, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256r1_2831 = { .name = "ecdh_secp256r1_2831", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2831_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2831_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2831_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 303 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2832 for ECDH, tcId is 304 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2832_peerpubkey[] = { 0xd2, 0xf2, 0x11, 0xcf, 0xab, 0x84, 0xe0, 0x1c, 0x8e, 0x55, 0x44, 0x03, 0x62, 0x34, 0xde, 0xbe, 0x35, 0xae, 0x10, 0x3b, 0xb8, 0x78, 0xd7, 0xab, 0xce, 0xa6, 0x82, 0x5f, 0x75, 0x3e, 0x03, 0xa3, 0x85, 0xf7, 0xf1, 0x87, 0x0e, 0x64, 0xf1, 0x26, 0x2a, 0xf6, 0x7a, 0x25, 0xef, 0x98, 0x80, 0x41, 0x9f, 0x45, 0x60, 0x8e, 0x7f, 0x9d, 0xa6, 0xde, 0xe8, 0x3f, 0x5f, 0x46, 0xce, 0xb5, 0x3d, 0xcb, }; static const unsigned char ecdh_secp256r1_2832_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_2832_sharedsecret[] = { 0xf4, 0x19, 0xfe, 0xbb, 0x32, 0xc2, 0x54, 0x61, 0x1a, 0xdf, 0x56, 0x9c, 0x2d, 0x58, 0x3b, 0x17, 0x54, 0x2b, 0x15, 0x38, 0xca, 0xa0, 0x00, 0x19, 0x67, 0xf0, 0xa4, 0xbc, 0x34, 0xb8, 0xb7, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_2832 = { .name = "ecdh_secp256r1_2832", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2832_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2832_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2832_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 304 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2833 for ECDH, tcId is 305 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2833_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2833_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256r1_2833_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_2833 = { .name = "ecdh_secp256r1_2833", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2833_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2833_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2833_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 305 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2834 for ECDH, tcId is 306 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2834_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2834_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2834_sharedsecret[] = { 0xa3, 0x29, 0xa7, 0xd8, 0x04, 0x24, 0xea, 0x2d, 0x6c, 0x90, 0x43, 0x93, 0x80, 0x8e, 0x51, 0x0d, 0xfb, 0xb2, 0x81, 0x55, 0x09, 0x2f, 0x1b, 0xac, 0x28, 0x4d, 0xce, 0xda, 0x1f, 0x13, 0xaf, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2834 = { .name = "ecdh_secp256r1_2834", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2834_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2834_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2834_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 306 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2835 for ECDH, tcId is 307 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2835_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2835_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2835_sharedsecret[] = { 0xbd, 0x26, 0xd0, 0x29, 0x3e, 0x88, 0x51, 0xc5, 0x1e, 0xbe, 0x0d, 0x42, 0x63, 0x45, 0x68, 0x3a, 0xe9, 0x40, 0x26, 0xac, 0xa5, 0x45, 0x28, 0x2a, 0x47, 0x59, 0xfa, 0xa8, 0x5f, 0xde, 0x66, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_2835 = { .name = "ecdh_secp256r1_2835", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2835_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2835_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2835_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 307 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2836 for ECDH, tcId is 308 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2836_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2836_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2836_sharedsecret[] = { 0xea, 0x93, 0x50, 0xb2, 0x49, 0x0a, 0x20, 0x10, 0xc7, 0xab, 0xf4, 0x3f, 0xb1, 0xa3, 0x8b, 0xe7, 0x29, 0xa2, 0xde, 0x37, 0x5e, 0xa7, 0xa6, 0xac, 0x34, 0xff, 0x58, 0xcc, 0x87, 0xe5, 0x1b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2836 = { .name = "ecdh_secp256r1_2836", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2836_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2836_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2836_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 308 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2837 for ECDH, tcId is 309 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2837_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2837_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2837_sharedsecret[] = { 0x34, 0xee, 0xd3, 0xf6, 0x67, 0x3d, 0x34, 0x0b, 0x6f, 0x71, 0x69, 0x13, 0xf6, 0xdf, 0xa3, 0x6b, 0x5a, 0xc8, 0x5f, 0xa6, 0x67, 0x79, 0x1e, 0x2d, 0x6a, 0x21, 0x7b, 0x0c, 0x0b, 0x7b, 0xa8, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_2837 = { .name = "ecdh_secp256r1_2837", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2837_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2837_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2837_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 309 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2838 for ECDH, tcId is 310 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2838_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2838_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x83, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_2838_sharedsecret[] = { 0x13, 0x54, 0xce, 0x66, 0x92, 0xc9, 0xdf, 0x7b, 0x6f, 0xc3, 0x11, 0x9d, 0x47, 0xc5, 0x63, 0x38, 0xaf, 0xbe, 0xdc, 0xcb, 0x62, 0xfa, 0xa5, 0x46, 0xc0, 0xfe, 0x6e, 0xd4, 0x95, 0x9e, 0x41, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2838 = { .name = "ecdh_secp256r1_2838", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2838_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2838_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2838_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 310 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2839 for ECDH, tcId is 311 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2839_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2839_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xa9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_2839_sharedsecret[] = { 0xfe, 0x74, 0x96, 0xc3, 0x0d, 0x53, 0x49, 0x95, 0xf0, 0xbf, 0x42, 0x8b, 0x54, 0x71, 0xc2, 0x15, 0x85, 0xaa, 0xaf, 0xc8, 0x17, 0x33, 0x91, 0x6f, 0x01, 0x65, 0x59, 0x7a, 0x55, 0xd1, 0x2c, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp256r1_2839 = { .name = "ecdh_secp256r1_2839", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2839_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2839_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2839_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 311 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2840 for ECDH, tcId is 312 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2840_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2840_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb1, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_2840_sharedsecret[] = { 0x34, 0x8b, 0xf8, 0x04, 0x2e, 0x4e, 0xdf, 0x1d, 0x03, 0xc8, 0xb3, 0x6a, 0xb8, 0x15, 0x15, 0x6e, 0x77, 0xc2, 0x01, 0xb7, 0x64, 0xed, 0x45, 0x62, 0xcf, 0xe2, 0xee, 0x90, 0x63, 0x8f, 0xfe, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2840 = { .name = "ecdh_secp256r1_2840", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2840_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2840_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2840_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 312 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2841 for ECDH, tcId is 313 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2841_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2841_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc1, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_2841_sharedsecret[] = { 0x6e, 0x4e, 0xc5, 0x47, 0x9a, 0x7c, 0x20, 0xa5, 0x37, 0x50, 0x17, 0x00, 0x48, 0x4f, 0x6f, 0x43, 0x3a, 0x8a, 0x8f, 0xe5, 0x3c, 0x28, 0x8f, 0x7a, 0x25, 0xc8, 0xe8, 0xc9, 0x2d, 0x39, 0xe8, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_2841 = { .name = "ecdh_secp256r1_2841", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2841_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2841_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2841_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 313 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2842 for ECDH, tcId is 314 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2842_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2842_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xf3, }; static const unsigned char ecdh_secp256r1_2842_sharedsecret[] = { 0xf7, 0x40, 0x7d, 0x61, 0xfd, 0xf5, 0x81, 0xbe, 0x4f, 0x56, 0x46, 0x21, 0xd5, 0x90, 0xca, 0x9b, 0x7b, 0xa3, 0x7f, 0x31, 0x39, 0x61, 0x50, 0xf9, 0x92, 0x2f, 0x15, 0x01, 0xda, 0x8c, 0x83, 0xef, }; static const wycheproof_ecdh_test ecdh_secp256r1_2842 = { .name = "ecdh_secp256r1_2842", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2842_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2842_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2842_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 314 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2843 for ECDH, tcId is 315 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2843_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2843_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x33, }; static const unsigned char ecdh_secp256r1_2843_sharedsecret[] = { 0x82, 0x23, 0x6f, 0xd2, 0x72, 0x20, 0x86, 0x93, 0xe0, 0x57, 0x45, 0x55, 0xca, 0x46, 0x5c, 0x6c, 0xc5, 0x12, 0x16, 0x34, 0x86, 0x08, 0x4f, 0xa5, 0x7f, 0x5e, 0x1b, 0xd2, 0xe2, 0xcc, 0xc0, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2843 = { .name = "ecdh_secp256r1_2843", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2843_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2843_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2843_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 315 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2844 for ECDH, tcId is 316 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2844_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2844_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x43, }; static const unsigned char ecdh_secp256r1_2844_sharedsecret[] = { 0x06, 0x53, 0x71, 0x49, 0x66, 0x4d, 0xba, 0x1a, 0x99, 0x24, 0x65, 0x4c, 0xb7, 0xf7, 0x87, 0xed, 0x22, 0x48, 0x51, 0xb0, 0xdf, 0x25, 0xef, 0x53, 0xfc, 0xf5, 0x4f, 0x8f, 0x26, 0xcd, 0x5f, 0x3f, }; static const wycheproof_ecdh_test ecdh_secp256r1_2844 = { .name = "ecdh_secp256r1_2844", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2844_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2844_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2844_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 316 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2845 for ECDH, tcId is 317 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2845_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2845_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4b, }; static const unsigned char ecdh_secp256r1_2845_sharedsecret[] = { 0xf2, 0xb3, 0x85, 0x39, 0xbc, 0xe9, 0x95, 0xd4, 0x43, 0xc7, 0xbf, 0xee, 0xef, 0xad, 0xc9, 0xe4, 0x2c, 0xc2, 0xc8, 0x9c, 0x60, 0xbf, 0x4e, 0x86, 0xea, 0xc9, 0x5d, 0x51, 0x98, 0x7b, 0xd1, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_2845 = { .name = "ecdh_secp256r1_2845", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2845_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2845_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2845_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 317 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2846 for ECDH, tcId is 318 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2846_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2846_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const unsigned char ecdh_secp256r1_2846_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_2846 = { .name = "ecdh_secp256r1_2846", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2846_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2846_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2846_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 318 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2847 for ECDH, tcId is 319 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2847_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_2847_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, }; static const unsigned char ecdh_secp256r1_2847_sharedsecret[] = { 0x02, 0x7b, 0x01, 0x3a, 0x6f, 0x16, 0x6d, 0xb6, 0x55, 0xd6, 0x9d, 0x64, 0x3c, 0x12, 0x7e, 0xf8, 0xac, 0xe1, 0x75, 0x31, 0x1e, 0x66, 0x7d, 0xff, 0x25, 0x20, 0xf5, 0xb5, 0xc7, 0x5b, 0x76, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256r1_2847 = { .name = "ecdh_secp256r1_2847", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2847_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2847_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2847_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 319 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2848 for ECDH, tcId is 320 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2848_peerpubkey[] = { 0x02, 0x38, 0x19, 0x81, 0x3a, 0xc9, 0x69, 0x84, 0x70, 0x59, 0x02, 0x8e, 0xa8, 0x8a, 0x1f, 0x30, 0xdf, 0xbc, 0xde, 0x03, 0xfc, 0x79, 0x1d, 0x3a, 0x25, 0x2c, 0x6b, 0x41, 0x21, 0x18, 0x82, 0xea, 0xf9, 0x3e, 0x4a, 0xe4, 0x33, 0xcc, 0x12, 0xcf, 0x2a, 0x43, 0xfc, 0x0e, 0xf2, 0x64, 0x00, 0xc0, 0xe1, 0x25, 0x50, 0x82, 0x24, 0xcd, 0xb6, 0x49, 0x38, 0x0f, 0x25, 0x47, 0x91, 0x48, 0xa4, 0xad, }; static const unsigned char ecdh_secp256r1_2848_privkey[] = { 0x2a, 0x26, 0x5f, 0x8b, 0xcb, 0xdc, 0xaf, 0x94, 0xd5, 0x85, 0x19, 0x14, 0x1e, 0x57, 0x81, 0x24, 0xcb, 0x40, 0xd6, 0x4a, 0x50, 0x1f, 0xba, 0x9c, 0x11, 0x84, 0x7b, 0x28, 0x96, 0x5b, 0xc7, 0x37, }; static const unsigned char ecdh_secp256r1_2848_sharedsecret[] = { 0x4d, 0x4d, 0xe8, 0x0f, 0x15, 0x34, 0x85, 0x0d, 0x26, 0x10, 0x75, 0x99, 0x7e, 0x30, 0x49, 0x32, 0x1a, 0x08, 0x64, 0x08, 0x2d, 0x24, 0xa9, 0x17, 0x86, 0x33, 0x66, 0xc0, 0x72, 0x4f, 0x5a, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256r1_2848 = { .name = "ecdh_secp256r1_2848", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2848_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2848_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2848_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 320 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2849 for ECDH, tcId is 321 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2849_peerpubkey[] = { 0xcc, 0x11, 0x88, 0x7b, 0x2d, 0x66, 0xcb, 0xae, 0x8f, 0x4d, 0x30, 0x66, 0x27, 0x19, 0x25, 0x22, 0x93, 0x21, 0x46, 0xb4, 0x2f, 0x01, 0xd3, 0xc6, 0xf9, 0x2b, 0xd5, 0xc8, 0xba, 0x73, 0x9b, 0x06, 0xa2, 0xf0, 0x8a, 0x02, 0x9c, 0xd0, 0x6b, 0x46, 0x18, 0x30, 0x85, 0xba, 0xe9, 0x24, 0x8b, 0x0e, 0xd1, 0x5b, 0x70, 0x28, 0x0c, 0x7e, 0xf1, 0x3a, 0x45, 0x7f, 0x5a, 0xf3, 0x82, 0x42, 0x60, 0x31, }; static const unsigned char ecdh_secp256r1_2849_privkey[] = { 0x31, 0x3f, 0x72, 0xff, 0x9f, 0xe8, 0x11, 0xbf, 0x57, 0x31, 0x76, 0x23, 0x1b, 0x28, 0x6a, 0x3b, 0xdb, 0x6f, 0x1b, 0x14, 0xe0, 0x5c, 0x40, 0x14, 0x65, 0x90, 0x72, 0x7a, 0x71, 0xc3, 0xbc, 0xcd, }; static const unsigned char ecdh_secp256r1_2849_sharedsecret[] = { 0x83, 0x1c, 0x3f, 0x6b, 0x5f, 0x76, 0x2d, 0x2f, 0x46, 0x19, 0x01, 0x57, 0x7a, 0xf4, 0x13, 0x54, 0xac, 0x5f, 0x22, 0x8c, 0x25, 0x91, 0xf8, 0x4f, 0x8a, 0x6e, 0x51, 0xe2, 0xe3, 0xf1, 0x79, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256r1_2849 = { .name = "ecdh_secp256r1_2849", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2849_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2849_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2849_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 321 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2850 for ECDH, tcId is 322 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2850_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2850_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2850 = { .name = "ecdh_secp256r1_2850", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2850_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2850_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 322 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2851 for ECDH, tcId is 323 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2851_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2851_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2851 = { .name = "ecdh_secp256r1_2851", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2851_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2851_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 323 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2852 for ECDH, tcId is 324 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2852_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_2852_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2852 = { .name = "ecdh_secp256r1_2852", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2852_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2852_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 324 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2853 for ECDH, tcId is 325 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2853_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2853_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2853 = { .name = "ecdh_secp256r1_2853", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2853_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2853_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 325 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2854 for ECDH, tcId is 326 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2854_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2854_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2854 = { .name = "ecdh_secp256r1_2854", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2854_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2854_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 326 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2855 for ECDH, tcId is 327 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2855_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2855_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2855 = { .name = "ecdh_secp256r1_2855", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2855_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2855_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 327 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2856 for ECDH, tcId is 328 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2856_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_2856_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2856 = { .name = "ecdh_secp256r1_2856", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2856_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2856_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 328 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2857 for ECDH, tcId is 329 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2857_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2857_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2857 = { .name = "ecdh_secp256r1_2857", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2857_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2857_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 329 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2858 for ECDH, tcId is 330 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2858_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2858_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2858 = { .name = "ecdh_secp256r1_2858", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2858_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2858_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 330 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2859 for ECDH, tcId is 331 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2859_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2859_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2859 = { .name = "ecdh_secp256r1_2859", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2859_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2859_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 331 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2860 for ECDH, tcId is 332 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2860_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_2860_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2860 = { .name = "ecdh_secp256r1_2860", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2860_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2860_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 332 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2861 for ECDH, tcId is 333 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2861_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2861_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2861 = { .name = "ecdh_secp256r1_2861", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2861_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2861_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 333 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2862 for ECDH, tcId is 334 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2862_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2862_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2862 = { .name = "ecdh_secp256r1_2862", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2862_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2862_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 334 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2863 for ECDH, tcId is 335 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2863_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_2863_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2863 = { .name = "ecdh_secp256r1_2863", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2863_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2863_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 335 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2864 for ECDH, tcId is 336 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2864_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_2864_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2864 = { .name = "ecdh_secp256r1_2864", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2864_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2864_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 336 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2865 for ECDH, tcId is 337 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2865_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_2865_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_2865 = { .name = "ecdh_secp256r1_2865", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2865_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2865_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 337 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2866 for ECDH, tcId is 339 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2866_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4c, }; static const unsigned char ecdh_secp256r1_2866_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2866 = { .name = "ecdh_secp256r1_2866", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2866_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2866_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 339 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2867 for ECDH, tcId is 340 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2867_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_2867_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2867 = { .name = "ecdh_secp256r1_2867", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2867_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2867_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 340 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2868 for ECDH, tcId is 343 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2868_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2868_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2868_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2868 = { .name = "ecdh_secp256r1_2868", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2868_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2868_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2868_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 343 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2869 for ECDH, tcId is 344 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2869_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2869_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2869_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2869 = { .name = "ecdh_secp256r1_2869", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2869_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2869_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2869_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 26959946660873538060741835960514744168612397095220107664918121663170, tcId is 344 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2870 for ECDH, tcId is 345 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2870_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2870_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2870_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2870 = { .name = "ecdh_secp256r1_2870", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2870_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2870_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2870_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 345 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2871 for ECDH, tcId is 346 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2871_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2871_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2871_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2871 = { .name = "ecdh_secp256r1_2871", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2871_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2871_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2871_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 346 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2872 for ECDH, tcId is 349 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2872_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2872_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2872_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2872 = { .name = "ecdh_secp256r1_2872", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2872_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2872_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2872_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 349 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2873 for ECDH, tcId is 351 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2873_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2873_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2873_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2873 = { .name = "ecdh_secp256r1_2873", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2873_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2873_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2873_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 351 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2874 for ECDH, tcId is 354 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2874_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_secp256r1_2874_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_2874 = { .name = "ecdh_secp256r1_2874", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2874_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2874_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 354 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2875 for ECDH, tcId is 355 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2875_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4a, }; static const unsigned char ecdh_secp256r1_2875_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const unsigned char ecdh_secp256r1_2875_sharedsecret[] = { 0xd0, 0x03, 0xf5, 0xcc, 0x83, 0x85, 0x25, 0x84, 0x06, 0x1f, 0x7a, 0x8a, 0x28, 0xbc, 0xb5, 0x67, 0x1e, 0xcb, 0xda, 0x09, 0x6e, 0x16, 0xe7, 0xac, 0xcf, 0xa8, 0xf8, 0xd3, 0x11, 0xa3, 0xdb, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp256r1_2875 = { .name = "ecdh_secp256r1_2875", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2875_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2875_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_2875_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 355 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2876 for ECDH, tcId is 360 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2876_peerpubkey[] = { 0x80, 0x28, 0xd1, 0x60, 0x82, 0xb0, 0x76, 0x96, 0xd4, 0xaa, 0x4a, 0xab, 0x9d, 0x6b, 0x1f, 0x14, 0x63, 0x43, 0x5a, 0xc0, 0x97, 0x90, 0x06, 0x31, 0x10, 0x8f, 0x98, 0x88, 0xe1, 0x3d, 0xa6, 0x7c, 0x48, 0x41, 0xfd, 0x8d, 0xd3, 0xce, 0xd6, 0xe7, 0xad, 0x8c, 0x6f, 0xc6, 0x56, 0x62, 0x1c, 0x2f, 0x93, 0xd3, 0xdb, 0x0e, 0xb2, 0x9d, 0x48, 0xd1, 0x42, 0x31, 0x54, 0x51, 0x98, 0x65, 0xdb, 0xc1, }; static const unsigned char ecdh_secp256r1_2876_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_2876 = { .name = "ecdh_secp256r1_2876", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2876_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2876_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 360 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2877 for ECDH, tcId is 363 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2877_peerpubkey[] = { 0x5d, 0x3d, 0xdb, 0xbb, 0x9b, 0xc0, 0x71, 0xd8, 0xb5, 0x98, 0x55, 0xc7, 0x4b, 0xdf, 0x35, 0x41, 0xae, 0x4c, 0xb6, 0xc1, 0xa2, 0x4e, 0xc4, 0x39, 0x03, 0x4d, 0xf7, 0xab, 0xde, 0x16, 0xa3, 0x46, 0x52, 0x3e, 0xdf, 0x6a, 0x67, 0x89, 0x6b, 0x30, 0x4c, 0xb2, 0xcd, 0x2a, 0x08, 0x3e, 0xec, 0x2b, 0x16, 0x93, 0x5b, 0xbc, 0x91, 0x0e, 0x85, 0xec, 0x6e, 0xae, 0x38, 0xb5, 0x02, 0x30, 0xbf, 0x70, }; static const unsigned char ecdh_secp256r1_2877_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_2877 = { .name = "ecdh_secp256r1_2877", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2877_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2877_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256r1, tcId is 363 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2878 for ECDH, tcId is 368 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2878_peerpubkey[] = { 0x30, 0x37, 0xc0, 0x1b, 0x4a, 0x5a, 0xc5, 0x37, 0x42, 0xe3, 0xf5, 0x52, 0x8d, 0xff, 0xb0, 0xf0, 0x10, 0xab, 0x6e, 0xbe, 0xb0, 0x8d, 0x79, 0x2b, 0x32, 0xe1, 0x9e, 0x90, 0x06, 0xca, 0x33, 0x1a, 0x02, 0x4b, 0x67, 0x69, 0x8d, 0x7c, 0xf4, 0xb5, 0x75, 0xcc, 0xd9, 0x38, 0x94, 0x41, 0xd5, 0xc6, 0x40, 0xb7, 0x7c, 0x63, 0x77, 0x1c, 0xef, 0x1b, 0xd8, 0x56, 0x75, 0x36, 0x1c, 0x66, 0x02, 0xa4, }; static const unsigned char ecdh_secp256r1_2878_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_2878 = { .name = "ecdh_secp256r1_2878", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2878_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2878_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 368 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2879 for ECDH, tcId is 372 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2879_peerpubkey[] = { 0xfd, 0x4b, 0xf6, 0x17, 0x63, 0xb4, 0x65, 0x81, 0xfd, 0x91, 0x74, 0xd6, 0x23, 0x51, 0x6c, 0xf3, 0xc8, 0x1e, 0xdd, 0x40, 0xe2, 0x9f, 0xfa, 0x27, 0x77, 0xfb, 0x6c, 0xb0, 0xae, 0x3c, 0xe5, 0x35, }; static const unsigned char ecdh_secp256r1_2879_privkey[] = { 0x6f, 0x95, 0x3f, 0xaf, 0xf3, 0x59, 0x9e, 0x6c, 0x76, 0x2d, 0x7f, 0x4c, 0xab, 0xfe, 0xed, 0x09, 0x2d, 0xe2, 0xad, 0xd1, 0xdf, 0x1b, 0xc5, 0x74, 0x8c, 0x6c, 0xbb, 0x72, 0x5c, 0xf3, 0x54, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256r1_2879 = { .name = "ecdh_secp256r1_2879", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2879_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2879_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 372 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2880 for ECDH, tcId is 373 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2880_peerpubkey[] = { 0xef, 0xdd, 0xe3, 0xb3, 0x28, 0x72, 0xa9, 0xef, 0xfc, 0xf3, 0xb9, 0x4c, 0xbf, 0x73, 0xaa, 0x7b, 0x39, 0xf9, 0x68, 0x3e, 0xce, 0x91, 0x21, 0xb9, 0x85, 0x21, 0x67, 0xf4, 0xe3, 0xda, 0x60, 0x9b, }; static const unsigned char ecdh_secp256r1_2880_privkey[] = { 0xd2, 0x7e, 0xdf, 0x0f, 0xf5, 0xb6, 0xb6, 0xb4, 0x65, 0x75, 0x3e, 0x71, 0x58, 0x37, 0x03, 0x32, 0xc1, 0x53, 0xb4, 0x68, 0xa1, 0xbe, 0x08, 0x7a, 0xd0, 0xf4, 0x90, 0xbd, 0xb9, 0x9e, 0x5f, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_2880 = { .name = "ecdh_secp256r1_2880", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2880_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2880_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 373 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2881 for ECDH, tcId is 374 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2881_peerpubkey[] = { 0xef, 0xdd, 0xe3, 0xb3, 0x28, 0x72, 0xa9, 0xef, 0xfc, 0xf3, 0xb9, 0x4c, 0xbf, 0x73, 0xaa, 0x7b, 0x39, 0xf9, 0x68, 0x3e, 0xce, 0x91, 0x21, 0xb9, 0x85, 0x21, 0x67, 0xf4, 0xe3, 0xda, 0x60, 0x9b, }; static const unsigned char ecdh_secp256r1_2881_privkey[] = { 0xd2, 0x7e, 0xdf, 0x0f, 0xf5, 0xb6, 0xb6, 0xb4, 0x65, 0x75, 0x3e, 0x71, 0x58, 0x37, 0x03, 0x32, 0xc1, 0x53, 0xb4, 0x68, 0xa1, 0xbe, 0x08, 0x7a, 0xd0, 0xf4, 0x90, 0xbd, 0xb9, 0x9e, 0x5f, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256r1_2881 = { .name = "ecdh_secp256r1_2881", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2881_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2881_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 374 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2882 for ECDH, tcId is 375 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2882_peerpubkey[] = { 0xc4, 0x95, 0x24, 0xb2, 0xad, 0xfd, 0x8f, 0x5f, 0x97, 0x2e, 0xf5, 0x54, 0x65, 0x28, 0x36, 0xe2, 0xef, 0xb2, 0xd3, 0x06, 0xc6, 0xd3, 0xb0, 0x68, 0x92, 0x34, 0xce, 0xc9, 0x3a, 0xe7, 0x3d, 0xb5, }; static const unsigned char ecdh_secp256r1_2882_privkey[] = { 0x95, 0xea, 0xd8, 0x45, 0x40, 0xc2, 0xd0, 0x27, 0xaa, 0x31, 0x30, 0xff, 0x1b, 0x47, 0x88, 0x8c, 0xc1, 0xed, 0x67, 0xe8, 0xdd, 0xa4, 0x61, 0x56, 0xe7, 0x1c, 0xe0, 0x99, 0x17, 0x91, 0xe8, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256r1_2882 = { .name = "ecdh_secp256r1_2882", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2882_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2882_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 375 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2883 for ECDH, tcId is 376 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2883_peerpubkey[] = { 0x18, 0xf9, 0xba, 0xe7, 0x74, 0x7c, 0xd8, 0x44, 0xe9, 0x85, 0x25, 0xb7, 0xcc, 0xd0, 0xda, 0xf6, 0xe1, 0xd2, 0x0a, 0x81, 0x8b, 0x21, 0x75, 0xa9, 0xa9, 0x1e, 0x4e, 0xae, 0x53, 0x43, 0xbc, 0x98, }; static const unsigned char ecdh_secp256r1_2883_privkey[] = { 0xa8, 0x68, 0x1e, 0xf6, 0x7f, 0xb1, 0xf1, 0x89, 0x64, 0x7d, 0x95, 0xe8, 0xdb, 0x00, 0xc5, 0x2c, 0xee, 0xf6, 0xd4, 0x1a, 0x85, 0xba, 0x0a, 0x5b, 0xd7, 0x4c, 0x44, 0xe8, 0xe6, 0x2c, 0x8a, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp256r1_2883 = { .name = "ecdh_secp256r1_2883", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2883_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2883_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 376 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2884 for ECDH, tcId is 377 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2884_peerpubkey[] = { 0x18, 0xf9, 0xba, 0xe7, 0x74, 0x7c, 0xd8, 0x44, 0xe9, 0x85, 0x25, 0xb7, 0xcc, 0xd0, 0xda, 0xf6, 0xe1, 0xd2, 0x0a, 0x81, 0x8b, 0x21, 0x75, 0xa9, 0xa9, 0x1e, 0x4e, 0xae, 0x53, 0x43, 0xbc, 0x98, }; static const unsigned char ecdh_secp256r1_2884_privkey[] = { 0xa8, 0x68, 0x1e, 0xf6, 0x7f, 0xb1, 0xf1, 0x89, 0x64, 0x7d, 0x95, 0xe8, 0xdb, 0x00, 0xc5, 0x2c, 0xee, 0xf6, 0xd4, 0x1a, 0x85, 0xba, 0x0a, 0x5b, 0xd7, 0x4c, 0x44, 0xe8, 0xe6, 0x2c, 0x8a, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_2884 = { .name = "ecdh_secp256r1_2884", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2884_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2884_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 377 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2885 for ECDH, tcId is 378 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_2885_peerpubkey[] = { 0xc4, 0x95, 0x24, 0xb2, 0xad, 0xfd, 0x8f, 0x5f, 0x97, 0x2e, 0xf5, 0x54, 0x65, 0x28, 0x36, 0xe2, 0xef, 0xb2, 0xd3, 0x06, 0xc6, 0xd3, 0xb0, 0x68, 0x92, 0x34, 0xce, 0xc9, 0x3a, 0xe7, 0x3d, 0xb5, }; static const unsigned char ecdh_secp256r1_2885_privkey[] = { 0x95, 0xea, 0xd8, 0x45, 0x40, 0xc2, 0xd0, 0x27, 0xaa, 0x31, 0x30, 0xff, 0x1b, 0x47, 0x88, 0x8c, 0xc1, 0xed, 0x67, 0xe8, 0xdd, 0xa4, 0x61, 0x56, 0xe7, 0x1c, 0xe0, 0x99, 0x17, 0x91, 0xe8, 0x34, }; static const wycheproof_ecdh_test ecdh_secp256r1_2885 = { .name = "ecdh_secp256r1_2885", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_2885_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256r1_2885_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 378 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 2886 for ECDH, tcId is 379 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2886_peerpubkey[] = { 0x79, 0x0a, 0x6e, 0x05, 0x9e, 0xf9, 0xa5, 0x94, 0x01, 0x63, 0x18, 0x3d, 0x4a, 0x78, 0x09, 0x13, 0x5d, 0x29, 0x79, 0x16, 0x43, 0xfc, 0x43, 0xa2, 0xf1, 0x7e, 0xe8, 0xbf, 0x67, 0x7a, 0xb8, 0x4f, 0x79, 0x1b, 0x64, 0xa6, 0xbe, 0x15, 0x96, 0x9f, 0xfa, 0x01, 0x2d, 0xd9, 0x18, 0x5d, 0x87, 0x96, 0xd9, 0xb9, 0x54, 0xba, 0xa8, 0xa7, 0x5e, 0x82, 0xdf, 0x71, 0x1b, 0x3b, 0x56, 0xea, 0xdf, 0xf6, 0xb0, 0xf6, 0x68, 0xc3, 0xb2, 0x6b, 0x4b, 0x1a, 0xeb, 0x30, 0x8a, 0x1f, 0xcc, 0x1c, 0x68, 0x0d, 0x32, 0x9a, 0x67, 0x05, 0x02, 0x5f, 0x1c, 0x98, 0xa0, 0xb5, 0xe5, 0xbf, 0xcb, 0x16, 0x3c, 0xaa, }; static const unsigned char ecdh_secp384r1_2886_privkey[] = { 0x76, 0x6e, 0x61, 0x42, 0x5b, 0x2d, 0xa9, 0xf8, 0x46, 0xc0, 0x9f, 0xc3, 0x56, 0x4b, 0x93, 0xa6, 0xf8, 0x60, 0x3b, 0x73, 0x92, 0xc7, 0x85, 0x16, 0x5b, 0xf2, 0x0d, 0xa9, 0x48, 0xc4, 0x9f, 0xd1, 0xfb, 0x1d, 0xee, 0x4e, 0xdd, 0x64, 0x35, 0x6b, 0x9f, 0x21, 0xc5, 0x88, 0xb7, 0x5d, 0xfd, 0x81, }; static const unsigned char ecdh_secp384r1_2886_sharedsecret[] = { 0x64, 0x61, 0xde, 0xfb, 0x95, 0xd9, 0x96, 0xb2, 0x42, 0x96, 0xf5, 0xa1, 0x83, 0x2b, 0x34, 0xdb, 0x05, 0xed, 0x03, 0x11, 0x14, 0xfb, 0xe7, 0xd9, 0x8d, 0x09, 0x8f, 0x93, 0x85, 0x98, 0x66, 0xe4, 0xde, 0x1e, 0x22, 0x9d, 0xa7, 0x1f, 0xef, 0x0c, 0x77, 0xfe, 0x49, 0xb2, 0x49, 0x19, 0x01, 0x35, }; static const wycheproof_ecdh_test ecdh_secp384r1_2886 = { .name = "ecdh_secp384r1_2886", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2886_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2886_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2886_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 379 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2887 for ECDH, tcId is 380 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2887_peerpubkey[] = { 0x79, 0x0a, 0x6e, 0x05, 0x9e, 0xf9, 0xa5, 0x94, 0x01, 0x63, 0x18, 0x3d, 0x4a, 0x78, 0x09, 0x13, 0x5d, 0x29, 0x79, 0x16, 0x43, 0xfc, 0x43, 0xa2, 0xf1, 0x7e, 0xe8, 0xbf, 0x67, 0x7a, 0xb8, 0x4f, 0x79, 0x1b, 0x64, 0xa6, 0xbe, 0x15, 0x96, 0x9f, 0xfa, 0x01, 0x2d, 0xd9, 0x18, 0x5d, 0x87, 0x96, }; static const unsigned char ecdh_secp384r1_2887_privkey[] = { 0x76, 0x6e, 0x61, 0x42, 0x5b, 0x2d, 0xa9, 0xf8, 0x46, 0xc0, 0x9f, 0xc3, 0x56, 0x4b, 0x93, 0xa6, 0xf8, 0x60, 0x3b, 0x73, 0x92, 0xc7, 0x85, 0x16, 0x5b, 0xf2, 0x0d, 0xa9, 0x48, 0xc4, 0x9f, 0xd1, 0xfb, 0x1d, 0xee, 0x4e, 0xdd, 0x64, 0x35, 0x6b, 0x9f, 0x21, 0xc5, 0x88, 0xb7, 0x5d, 0xfd, 0x81, }; static const unsigned char ecdh_secp384r1_2887_sharedsecret[] = { 0x64, 0x61, 0xde, 0xfb, 0x95, 0xd9, 0x96, 0xb2, 0x42, 0x96, 0xf5, 0xa1, 0x83, 0x2b, 0x34, 0xdb, 0x05, 0xed, 0x03, 0x11, 0x14, 0xfb, 0xe7, 0xd9, 0x8d, 0x09, 0x8f, 0x93, 0x85, 0x98, 0x66, 0xe4, 0xde, 0x1e, 0x22, 0x9d, 0xa7, 0x1f, 0xef, 0x0c, 0x77, 0xfe, 0x49, 0xb2, 0x49, 0x19, 0x01, 0x35, }; static const wycheproof_ecdh_test ecdh_secp384r1_2887 = { .name = "ecdh_secp384r1_2887", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2887_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2887_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2887_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "compressed public key, tcId is 380 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2888 for ECDH, tcId is 381 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2888_peerpubkey[] = { 0x49, 0x0e, 0x96, 0xd1, 0x7f, 0x4c, 0x6c, 0xec, 0xcd, 0x45, 0xde, 0xf4, 0x08, 0xce, 0xa3, 0x3e, 0x97, 0x04, 0xa5, 0xf1, 0xb0, 0x1a, 0x3d, 0xe2, 0xea, 0xaa, 0x34, 0x09, 0xfd, 0x16, 0x0d, 0x78, 0xd3, 0x95, 0xd6, 0xb3, 0xb0, 0x03, 0xd7, 0x1f, 0xd1, 0xf5, 0x90, 0xfa, 0xd9, 0x5b, 0xf1, 0xc9, 0xd8, 0x66, 0x5e, 0xfc, 0x20, 0x70, 0xd0, 0x59, 0xaa, 0x84, 0x71, 0x25, 0xc2, 0xf7, 0x07, 0x43, 0x59, 0x55, 0x53, 0x5c, 0x7c, 0x5d, 0xf6, 0xd6, 0xc0, 0x79, 0xec, 0x80, 0x6d, 0xce, 0x6b, 0x68, 0x49, 0xd3, 0x37, 0x14, 0x0d, 0xb7, 0xca, 0x50, 0x61, 0x6f, 0x94, 0x56, 0xde, 0x13, 0x23, 0xc4, }; static const unsigned char ecdh_secp384r1_2888_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2888_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2888 = { .name = "ecdh_secp384r1_2888", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2888_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2888_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2888_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 381 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2889 for ECDH, tcId is 382 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2889_peerpubkey[] = { 0x01, 0x61, 0x32, 0x89, 0x09, 0x67, 0x52, 0x13, 0xe3, 0x20, 0x98, 0xd3, 0x5a, 0x6b, 0x83, 0x08, 0xa8, 0xd5, 0x00, 0xcc, 0xa3, 0x9d, 0xce, 0xe5, 0xe8, 0x04, 0xe7, 0x3b, 0xdb, 0x8d, 0xea, 0xf0, 0x6f, 0xe4, 0x17, 0x29, 0x1f, 0xd9, 0x79, 0x3b, 0x23, 0x1e, 0xf5, 0xfe, 0x86, 0x94, 0x54, 0x44, 0xa9, 0x7a, 0x01, 0xf3, 0xae, 0x3a, 0x83, 0x10, 0xc4, 0xaf, 0x49, 0xb5, 0x92, 0xcb, 0x29, 0x1e, 0xf7, 0x0e, 0xe5, 0xbc, 0x7f, 0x55, 0x34, 0xd3, 0xc2, 0x3d, 0xc9, 0xee, 0xfd, 0xe2, 0x30, 0x48, 0x42, 0xc7, 0x73, 0x7a, 0xe9, 0x37, 0xcc, 0xf9, 0xbd, 0x21, 0x5c, 0x28, 0x10, 0x3e, 0x9f, 0xe2, }; static const unsigned char ecdh_secp384r1_2889_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2889_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2889 = { .name = "ecdh_secp384r1_2889", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2889_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2889_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2889_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 382 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2890 for ECDH, tcId is 383 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2890_peerpubkey[] = { 0xaf, 0x4a, 0xe9, 0x64, 0xe3, 0xbc, 0xbd, 0x92, 0x3a, 0xcc, 0xda, 0x5d, 0xa3, 0x17, 0x5d, 0x41, 0x1f, 0xd6, 0x2d, 0x17, 0xdd, 0x3c, 0x3a, 0x1c, 0x41, 0x0b, 0xef, 0x17, 0x30, 0x98, 0x5a, 0x62, 0x65, 0xd9, 0x0e, 0x95, 0x0a, 0xc0, 0xfc, 0x50, 0x74, 0x3b, 0x1e, 0xd7, 0x71, 0x90, 0x6f, 0xf3, 0x3b, 0x68, 0xcf, 0x4d, 0x3d, 0x83, 0xa8, 0x85, 0xa8, 0x70, 0x97, 0xfd, 0xd3, 0x29, 0xce, 0x83, 0xb1, 0x89, 0xf9, 0x8c, 0xec, 0x5b, 0xe4, 0x4c, 0x31, 0xd1, 0xa3, 0xa2, 0xbb, 0xa1, 0x0f, 0x47, 0x19, 0x63, 0x23, 0x2b, 0x8b, 0xa7, 0x61, 0x0f, 0xa8, 0xc7, 0x21, 0x79, 0x05, 0x0e, 0xb8, 0x6d, }; static const unsigned char ecdh_secp384r1_2890_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2890_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp384r1_2890 = { .name = "ecdh_secp384r1_2890", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2890_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2890_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2890_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 383 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2891 for ECDH, tcId is 384 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2891_peerpubkey[] = { 0x14, 0x78, 0xab, 0x6e, 0x03, 0x2b, 0x95, 0x45, 0xed, 0xa9, 0xac, 0x2c, 0x26, 0x4e, 0x57, 0xa1, 0x1f, 0x08, 0xac, 0xbc, 0x76, 0xd1, 0x6a, 0x0a, 0xb7, 0x7b, 0x04, 0xdb, 0xda, 0xf2, 0x0f, 0x21, 0x5c, 0x41, 0x83, 0x43, 0x7b, 0x32, 0xaf, 0xc4, 0x71, 0xea, 0xa6, 0x03, 0xd1, 0x4c, 0x7c, 0x5d, 0x8a, 0x4c, 0x84, 0xee, 0x0e, 0x89, 0x5b, 0xec, 0x5c, 0x37, 0xf0, 0xa1, 0xca, 0x07, 0x5e, 0x10, 0x6f, 0xf6, 0xbf, 0x38, 0x80, 0x1b, 0x5c, 0x69, 0x74, 0x09, 0xd3, 0x96, 0x75, 0x23, 0x11, 0x08, 0xd3, 0x3c, 0x4a, 0x5e, 0xa6, 0x5a, 0xaa, 0x8c, 0x03, 0xe9, 0x39, 0xc9, 0x5d, 0x96, 0xc4, 0xc4, }; static const unsigned char ecdh_secp384r1_2891_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2891_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_2891 = { .name = "ecdh_secp384r1_2891", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2891_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2891_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2891_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 384 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2892 for ECDH, tcId is 385 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2892_peerpubkey[] = { 0xf6, 0x32, 0x08, 0xe3, 0x4e, 0x7e, 0x90, 0xbb, 0x5f, 0xb0, 0x36, 0x43, 0x24, 0x67, 0xa8, 0x99, 0x81, 0x44, 0x40, 0x10, 0x66, 0x3b, 0x85, 0x33, 0xb4, 0x7b, 0xfa, 0x94, 0xbd, 0x2b, 0xc1, 0x6f, 0x38, 0xaa, 0x51, 0x6b, 0x93, 0x0a, 0x47, 0x26, 0xe3, 0x87, 0x6d, 0x30, 0x91, 0xbf, 0xb7, 0x2e, 0xc7, 0x83, 0xed, 0x4d, 0xa0, 0xca, 0xc0, 0x63, 0x20, 0x81, 0x7d, 0xc8, 0xbc, 0x64, 0xf5, 0x9c, 0xcf, 0x06, 0xf4, 0x8a, 0xbc, 0x43, 0x86, 0xa1, 0x50, 0x91, 0x3f, 0xa9, 0x57, 0x43, 0xa7, 0xb4, 0x60, 0x11, 0x90, 0xe1, 0xc6, 0xee, 0x8f, 0x8b, 0xf6, 0x35, 0x4b, 0x25, 0x4e, 0xca, 0xce, 0x45, }; static const unsigned char ecdh_secp384r1_2892_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2892_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2892 = { .name = "ecdh_secp384r1_2892", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2892_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2892_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2892_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 385 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2893 for ECDH, tcId is 386 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2893_peerpubkey[] = { 0x03, 0x32, 0x71, 0xef, 0x42, 0xd9, 0x2a, 0xd4, 0x7b, 0x27, 0x3b, 0x09, 0xea, 0x2f, 0x45, 0x40, 0x11, 0x61, 0xba, 0xa5, 0x26, 0x96, 0x59, 0x0d, 0x0e, 0x17, 0x5f, 0xf2, 0xd1, 0xc0, 0xdf, 0xa3, 0xfe, 0xa4, 0x0e, 0x42, 0x66, 0xd4, 0x46, 0x54, 0x6c, 0x05, 0xe4, 0x80, 0xd5, 0x7f, 0xab, 0xec, 0x78, 0x89, 0xf1, 0x6a, 0x8b, 0xcc, 0x17, 0x66, 0x02, 0xf6, 0xd4, 0x65, 0x61, 0x61, 0x4a, 0x2f, 0x42, 0x84, 0xab, 0xe6, 0x97, 0xb7, 0xcb, 0x9c, 0xe7, 0x9f, 0x7e, 0x2e, 0x71, 0xb1, 0x55, 0xcb, 0x1f, 0x15, 0x5c, 0xe9, 0x25, 0xd1, 0x63, 0x91, 0xa6, 0x80, 0xed, 0xa2, 0x31, 0x52, 0xe6, 0xe1, }; static const unsigned char ecdh_secp384r1_2893_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2893_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2893 = { .name = "ecdh_secp384r1_2893", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2893_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2893_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2893_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 386 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2894 for ECDH, tcId is 387 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2894_peerpubkey[] = { 0x73, 0x7e, 0x84, 0x37, 0xe1, 0x86, 0x83, 0xde, 0x24, 0x55, 0xb6, 0x89, 0x45, 0xbb, 0xa3, 0x1d, 0xae, 0xc3, 0xe7, 0x54, 0xd7, 0x2f, 0x0a, 0x07, 0x76, 0xd3, 0x19, 0x2b, 0x2f, 0x92, 0x98, 0xbb, 0x95, 0xca, 0x14, 0x64, 0xba, 0xa6, 0x68, 0x7a, 0xab, 0xb6, 0x79, 0xf8, 0x04, 0xcf, 0x6e, 0xc6, 0xc2, 0xb4, 0xd4, 0x7d, 0x61, 0xa6, 0x04, 0x04, 0xdf, 0x63, 0xb1, 0xe9, 0xac, 0x09, 0x54, 0xb3, 0x41, 0x9b, 0xbc, 0x2a, 0xd5, 0x2a, 0x04, 0x09, 0xae, 0xeb, 0x82, 0xf4, 0x70, 0x37, 0x58, 0x58, 0x80, 0x59, 0x16, 0x5b, 0x20, 0x36, 0x7d, 0xcb, 0x4b, 0x23, 0x5b, 0x0c, 0xaf, 0x71, 0xd7, 0x27, }; static const unsigned char ecdh_secp384r1_2894_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2894_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2894 = { .name = "ecdh_secp384r1_2894", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2894_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2894_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2894_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 387 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2895 for ECDH, tcId is 388 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2895_peerpubkey[] = { 0x37, 0xf9, 0x00, 0x49, 0x83, 0x15, 0x6b, 0xbd, 0x9c, 0x47, 0x89, 0x1e, 0x75, 0x23, 0x7b, 0xb1, 0x30, 0x16, 0xbd, 0x7f, 0xe6, 0xf4, 0xe0, 0xf7, 0x1c, 0xef, 0x0e, 0x63, 0xf1, 0x6a, 0x67, 0x2f, 0x0d, 0x3b, 0x0e, 0x20, 0x16, 0x5c, 0x33, 0x40, 0x7e, 0x14, 0x6b, 0x6a, 0x4a, 0xe6, 0x96, 0x2d, 0xd3, 0xb5, 0x7c, 0xcb, 0x99, 0xe7, 0xaa, 0xf1, 0x30, 0x32, 0x40, 0x51, 0x6d, 0x0e, 0xbe, 0x08, 0xe5, 0x85, 0x51, 0x3e, 0x36, 0x95, 0xd4, 0x2c, 0x46, 0x7d, 0xca, 0xb5, 0x34, 0x0e, 0xf7, 0x61, 0x99, 0x0c, 0xad, 0xc8, 0xd8, 0x84, 0x0a, 0xac, 0xc9, 0x44, 0x48, 0x14, 0x15, 0xc0, 0x7f, 0xeb, }; static const unsigned char ecdh_secp384r1_2895_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2895_sharedsecret[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp384r1_2895 = { .name = "ecdh_secp384r1_2895", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2895_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2895_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2895_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 388 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2896 for ECDH, tcId is 389 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2896_peerpubkey[] = { 0x96, 0x55, 0xd8, 0xe5, 0x62, 0x27, 0x18, 0xb3, 0x17, 0xcf, 0xbc, 0x09, 0x89, 0x43, 0x57, 0xf7, 0x5a, 0x6b, 0x13, 0xfa, 0x51, 0x6b, 0xcd, 0x66, 0x30, 0x72, 0x1b, 0x86, 0x9a, 0x62, 0x01, 0x96, 0xcf, 0x0c, 0x3d, 0xec, 0x88, 0x60, 0xb3, 0x2d, 0x27, 0xed, 0x9b, 0xac, 0x2c, 0xf2, 0x63, 0xaf, 0x17, 0x32, 0x16, 0x98, 0x11, 0x6d, 0x7d, 0x81, 0x1a, 0xe8, 0xda, 0x9b, 0x9c, 0xbb, 0xf9, 0x38, 0x2c, 0x1e, 0x36, 0xe2, 0xb6, 0x7d, 0x6c, 0x6a, 0xf9, 0xbc, 0xea, 0x7d, 0x9d, 0xe0, 0x0c, 0xa7, 0x2b, 0x39, 0x86, 0x06, 0xc0, 0x98, 0xa0, 0xa0, 0xf0, 0xc4, 0xb8, 0x94, 0x19, 0x43, 0xed, 0x65, }; static const unsigned char ecdh_secp384r1_2896_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2896_sharedsecret[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2896 = { .name = "ecdh_secp384r1_2896", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2896_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2896_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2896_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 389 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2897 for ECDH, tcId is 390 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2897_peerpubkey[] = { 0xcc, 0xb1, 0x3d, 0x42, 0x7b, 0x3c, 0x4b, 0xb3, 0x3d, 0xd4, 0xf2, 0x0c, 0xdd, 0xab, 0xc6, 0x86, 0x00, 0xea, 0xf9, 0x7e, 0xeb, 0x2c, 0x81, 0xe8, 0xc2, 0x18, 0xae, 0x90, 0x74, 0x3e, 0x74, 0xff, 0x38, 0xca, 0x56, 0xf0, 0xc0, 0x22, 0x43, 0x79, 0xdb, 0x46, 0x4d, 0xcf, 0x4a, 0x40, 0xf0, 0x43, 0x50, 0xcd, 0x7a, 0x65, 0x9b, 0x2c, 0x48, 0x51, 0xa5, 0xdc, 0xf8, 0xc9, 0x90, 0xfc, 0x92, 0x0c, 0x07, 0xd4, 0xd5, 0xaa, 0x50, 0xa2, 0x18, 0x57, 0x50, 0xe6, 0xb8, 0x4c, 0x42, 0xe8, 0x3c, 0xff, 0x63, 0x50, 0x50, 0x48, 0x2d, 0xec, 0xb4, 0x78, 0x0f, 0x81, 0x2e, 0x4c, 0x49, 0xfc, 0x74, 0x04, }; static const unsigned char ecdh_secp384r1_2897_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2897_sharedsecret[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, }; static const wycheproof_ecdh_test ecdh_secp384r1_2897 = { .name = "ecdh_secp384r1_2897", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2897_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2897_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2897_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 390 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2898 for ECDH, tcId is 391 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2898_peerpubkey[] = { 0x26, 0x64, 0x62, 0x43, 0x07, 0xc0, 0x2e, 0xf4, 0x87, 0x03, 0x0a, 0x63, 0x21, 0x62, 0xc5, 0x15, 0xf8, 0x41, 0xd1, 0x5e, 0xa3, 0x15, 0x2d, 0x98, 0xff, 0x23, 0x64, 0x23, 0x2d, 0x7a, 0xab, 0x39, 0x34, 0x3d, 0x5f, 0x70, 0x3a, 0x4d, 0x5a, 0x31, 0x09, 0x2a, 0xa7, 0x35, 0x6c, 0x3a, 0x2f, 0x67, 0x1c, 0x1c, 0xd6, 0x03, 0xad, 0xdf, 0xd8, 0xb5, 0x47, 0x75, 0x52, 0xa3, 0xb3, 0x2a, 0x18, 0xed, 0xaf, 0x3e, 0x33, 0xbe, 0xc2, 0x2e, 0xe2, 0x16, 0x7f, 0x9d, 0xa7, 0x29, 0x63, 0x60, 0x02, 0xa7, 0x97, 0x4e, 0xae, 0xb5, 0xff, 0x08, 0x2b, 0x2a, 0xab, 0xf8, 0xc7, 0x05, 0x6b, 0x84, 0xc3, 0xab, }; static const unsigned char ecdh_secp384r1_2898_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2898_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2898 = { .name = "ecdh_secp384r1_2898", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2898_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2898_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2898_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 391 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2899 for ECDH, tcId is 392 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2899_peerpubkey[] = { 0x66, 0x5f, 0x1f, 0x32, 0x0b, 0x6a, 0xb1, 0xc1, 0xb5, 0x2d, 0x14, 0x4e, 0x52, 0xd8, 0x7a, 0x15, 0x4c, 0x2b, 0x44, 0x89, 0x83, 0x8c, 0x91, 0x19, 0xde, 0x62, 0x2c, 0x2d, 0x1b, 0x52, 0xb6, 0x5b, 0x0a, 0x39, 0x55, 0xe4, 0x4e, 0x0d, 0x48, 0x59, 0x17, 0x53, 0x60, 0xc0, 0xf6, 0x3d, 0xee, 0x81, 0x3f, 0x14, 0xf6, 0x99, 0x72, 0xf1, 0x8c, 0xae, 0xd7, 0x91, 0x6c, 0x94, 0xa4, 0xd2, 0x0e, 0xc3, 0x44, 0x59, 0x1e, 0x75, 0x36, 0xa4, 0xa7, 0xa4, 0xd8, 0xc9, 0x83, 0x28, 0x18, 0xc9, 0x6d, 0x60, 0xb1, 0xa8, 0x1f, 0xab, 0xe6, 0x4e, 0xa0, 0x2c, 0x5f, 0x64, 0x7e, 0x36, 0x1b, 0xf5, 0xb6, 0x0f, }; static const unsigned char ecdh_secp384r1_2899_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2899_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_2899 = { .name = "ecdh_secp384r1_2899", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2899_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2899_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2899_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 392 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2900 for ECDH, tcId is 393 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2900_peerpubkey[] = { 0x91, 0x35, 0x7c, 0xa8, 0x7d, 0xbb, 0x08, 0xe8, 0x5d, 0x7b, 0x1a, 0xce, 0xcf, 0xd1, 0xe0, 0x86, 0x07, 0x8a, 0x82, 0xd1, 0x9f, 0x81, 0x47, 0x4d, 0xa3, 0x89, 0x36, 0x4a, 0x39, 0xfe, 0x25, 0x43, 0xeb, 0x93, 0x4b, 0x44, 0x01, 0x73, 0xc3, 0x8e, 0x61, 0xa1, 0xd9, 0x40, 0x78, 0x55, 0xb5, 0xd8, 0x9e, 0xf0, 0xd9, 0xe9, 0x20, 0x76, 0x4b, 0x6d, 0x77, 0x65, 0xb0, 0x84, 0xcf, 0x95, 0x41, 0xda, 0xcc, 0x43, 0xd1, 0xda, 0xba, 0xa3, 0x90, 0xb0, 0xfb, 0x85, 0x60, 0x97, 0xb0, 0xc0, 0x0a, 0x85, 0x56, 0xf4, 0xe3, 0x84, 0x85, 0x68, 0xab, 0x4a, 0xe7, 0x90, 0xc3, 0xd3, 0x46, 0xca, 0x01, 0xb6, }; static const unsigned char ecdh_secp384r1_2900_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2900_sharedsecret[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2900 = { .name = "ecdh_secp384r1_2900", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2900_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2900_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2900_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 393 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2901 for ECDH, tcId is 394 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2901_peerpubkey[] = { 0xd5, 0xa8, 0x33, 0xba, 0xe3, 0x3b, 0x2d, 0x10, 0xfd, 0xff, 0x6d, 0xb7, 0xc5, 0x47, 0x7a, 0xdb, 0x61, 0x4b, 0x19, 0x1c, 0x70, 0xd9, 0x7c, 0x6f, 0x13, 0x0a, 0x14, 0xe9, 0x39, 0x31, 0xcc, 0x1d, 0xc0, 0x58, 0x05, 0x3f, 0xee, 0x54, 0xa2, 0x64, 0xa0, 0x0f, 0xdd, 0x16, 0xd3, 0x16, 0x6f, 0xdc, 0x42, 0x99, 0x22, 0x76, 0xb7, 0x99, 0x25, 0xba, 0xfc, 0xd1, 0x83, 0xb0, 0x3e, 0xd1, 0x82, 0x35, 0x35, 0x09, 0x80, 0xab, 0xfe, 0x67, 0xb8, 0x14, 0xc6, 0xc1, 0x10, 0x74, 0xc3, 0x8f, 0x74, 0xcd, 0x4e, 0x73, 0x4a, 0xd5, 0x8c, 0xdb, 0x49, 0xd9, 0xfc, 0xd2, 0x18, 0x1d, 0x1b, 0x8f, 0x11, 0x19, }; static const unsigned char ecdh_secp384r1_2901_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2901_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2901 = { .name = "ecdh_secp384r1_2901", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2901_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2901_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2901_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 394 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2902 for ECDH, tcId is 395 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2902_peerpubkey[] = { 0x67, 0x54, 0x7c, 0xda, 0x7f, 0xbe, 0x8f, 0x16, 0xbe, 0x5a, 0x44, 0x77, 0xcb, 0xb0, 0x29, 0x79, 0xf1, 0xaf, 0x72, 0xfc, 0x0f, 0x39, 0x30, 0x27, 0x73, 0x55, 0x2f, 0xbc, 0xf4, 0x66, 0x7a, 0x8e, 0x23, 0xab, 0xc0, 0xe1, 0x28, 0x56, 0xee, 0x62, 0x34, 0xde, 0xec, 0xa5, 0xf2, 0x2a, 0xe0, 0x50, 0x3a, 0x4d, 0xf7, 0xc0, 0x68, 0xe7, 0x43, 0x24, 0x17, 0x26, 0x0c, 0xb9, 0xfe, 0x0d, 0x68, 0xb9, 0xc7, 0xfc, 0xf7, 0xe1, 0x6a, 0x2a, 0xda, 0x05, 0x68, 0x7d, 0x8f, 0x89, 0x00, 0xb8, 0x47, 0x23, 0x10, 0x3e, 0xdb, 0xff, 0x0a, 0x42, 0xb2, 0x75, 0x17, 0xda, 0x27, 0x60, 0xb7, 0xd3, 0x88, 0x43, }; static const unsigned char ecdh_secp384r1_2902_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2902_sharedsecret[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2902 = { .name = "ecdh_secp384r1_2902", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2902_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2902_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2902_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 395 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2903 for ECDH, tcId is 396 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2903_peerpubkey[] = { 0x13, 0x63, 0xe3, 0xb9, 0x90, 0x08, 0xe0, 0x9b, 0xb3, 0xf0, 0x85, 0x94, 0x9b, 0x9b, 0x6e, 0xa2, 0x6a, 0x31, 0x8f, 0x49, 0x6d, 0xe5, 0x68, 0xa9, 0x66, 0x30, 0xfd, 0xb9, 0xd4, 0xc7, 0x2c, 0x28, 0x14, 0xdf, 0x30, 0x87, 0xa1, 0x74, 0x1f, 0x32, 0xf2, 0x49, 0x89, 0xb4, 0x28, 0x16, 0x7f, 0x93, 0xc6, 0x53, 0xcb, 0x3a, 0xe8, 0xc3, 0xec, 0xfa, 0xec, 0x57, 0xef, 0xd5, 0x4b, 0xb8, 0xce, 0x9d, 0x79, 0xc7, 0xbf, 0x6c, 0xc7, 0x0f, 0xb1, 0x11, 0x4f, 0x93, 0x9b, 0xe8, 0xf1, 0xa9, 0x9b, 0xf1, 0xe4, 0x2b, 0x97, 0x43, 0x11, 0x24, 0xef, 0x9f, 0xa3, 0x34, 0x50, 0xfa, 0xa4, 0xe7, 0x68, 0x39, }; static const unsigned char ecdh_secp384r1_2903_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2903_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_2903 = { .name = "ecdh_secp384r1_2903", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2903_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2903_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2903_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 396 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2904 for ECDH, tcId is 397 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2904_peerpubkey[] = { 0xba, 0x2b, 0xe8, 0xd7, 0x14, 0x7e, 0x24, 0x17, 0xc2, 0xec, 0x80, 0xb2, 0x4b, 0x4c, 0x1a, 0xa9, 0x44, 0x64, 0xff, 0xd0, 0xaa, 0xe1, 0xfa, 0x2e, 0x07, 0x8b, 0x3a, 0xfb, 0xc7, 0x7c, 0x14, 0x44, 0x89, 0xca, 0x9d, 0x06, 0x4a, 0xcb, 0xb7, 0xa9, 0xcf, 0xa6, 0x19, 0x6d, 0x0f, 0x46, 0x7b, 0x7e, 0x65, 0xee, 0x1c, 0xa1, 0xeb, 0x13, 0x51, 0xff, 0x99, 0x68, 0xf5, 0x53, 0xdf, 0xe2, 0xe4, 0xc5, 0x9f, 0xf8, 0xba, 0x34, 0xc2, 0x2a, 0x42, 0xb3, 0xba, 0xa1, 0x3a, 0x9a, 0x1a, 0xdc, 0x7f, 0x13, 0xab, 0xd4, 0x0f, 0x1f, 0xd2, 0x5d, 0x46, 0xbc, 0x53, 0x30, 0x85, 0x2b, 0x93, 0x71, 0x96, 0x6a, }; static const unsigned char ecdh_secp384r1_2904_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2904_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_2904 = { .name = "ecdh_secp384r1_2904", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2904_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2904_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2904_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 397 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2905 for ECDH, tcId is 398 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2905_peerpubkey[] = { 0xd6, 0x98, 0x50, 0xcc, 0xba, 0xcc, 0x47, 0x36, 0xea, 0x20, 0x0f, 0xf2, 0xf8, 0x48, 0x8f, 0x26, 0x24, 0x79, 0x45, 0xa2, 0xab, 0x48, 0xdd, 0x37, 0x08, 0xf4, 0x94, 0xb2, 0x93, 0xd8, 0xcb, 0xa8, 0x34, 0x17, 0xf4, 0x89, 0x74, 0x88, 0x1c, 0x7f, 0xb0, 0x38, 0x54, 0x08, 0x9b, 0xbf, 0x66, 0xcc, 0x1c, 0x77, 0x3e, 0xc0, 0x3c, 0xb8, 0xcd, 0x5f, 0x00, 0x7e, 0xc3, 0xb0, 0x3b, 0xdd, 0x05, 0xa4, 0x09, 0xb3, 0x52, 0x10, 0x3f, 0x0d, 0xec, 0xf2, 0x5b, 0x41, 0x67, 0x3a, 0xb8, 0xca, 0x3d, 0x04, 0x33, 0x4b, 0xab, 0xee, 0x01, 0x21, 0x9f, 0x15, 0x70, 0x1f, 0x2b, 0xca, 0x22, 0xd4, 0x0b, 0x37, }; static const unsigned char ecdh_secp384r1_2905_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2905_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_2905 = { .name = "ecdh_secp384r1_2905", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2905_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2905_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2905_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 398 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2906 for ECDH, tcId is 399 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2906_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x82, 0x6f, 0xde, 0x2e, 0xd9, 0xf5, 0x64, 0x9c, 0x11, 0xcf, 0x84, 0x65, 0xf8, 0xbf, 0x8a, 0xd5, 0x0f, 0x68, 0x91, 0x49, 0x36, 0xfc, 0x39, 0x66, 0x6f, 0x68, 0x21, 0x9d, 0x06, 0x65, 0x06, 0xbe, 0xa4, 0x00, 0x1f, 0xdc, 0x81, 0x6c, 0x9a, 0x90, 0xe7, 0xe2, 0xaf, 0xb1, 0x9b, 0xea, 0x08, 0x5f, }; static const unsigned char ecdh_secp384r1_2906_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2906_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2906 = { .name = "ecdh_secp384r1_2906", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2906_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2906_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2906_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 399 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2907 for ECDH, tcId is 400 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2907_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x7d, 0x90, 0x21, 0xd1, 0x26, 0x0a, 0x9b, 0x63, 0xee, 0x30, 0x7b, 0x9a, 0x07, 0x40, 0x75, 0x2a, 0xf0, 0x97, 0x6e, 0xb6, 0xc9, 0x03, 0xc6, 0x99, 0x90, 0x97, 0xde, 0x62, 0xf9, 0x9a, 0xf9, 0x40, 0x5b, 0xff, 0xe0, 0x22, 0x7e, 0x93, 0x65, 0x6f, 0x18, 0x1d, 0x50, 0x4f, 0x64, 0x15, 0xf7, 0xa0, }; static const unsigned char ecdh_secp384r1_2907_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2907_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2907 = { .name = "ecdh_secp384r1_2907", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2907_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2907_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2907_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 400 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2908 for ECDH, tcId is 401 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2908_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0xfd, 0x2e, 0x55, 0xec, 0x41, 0xfd, 0xfe, 0x8c, 0xab, 0xbb, 0xb7, 0xbc, 0xd8, 0x16, 0x36, 0x45, 0xa1, 0x9e, 0x9d, 0xac, 0x59, 0x63, 0x0f, 0x3f, 0xe9, 0x3b, 0x20, 0x80, 0x94, 0xff, 0x87, 0xcd, 0x46, 0x1b, 0x53, 0xce, 0xf5, 0x34, 0x82, 0xe7, 0x0e, 0x2e, 0x8e, 0xa8, 0x72, 0x00, 0xcc, 0x3f, }; static const unsigned char ecdh_secp384r1_2908_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2908_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2908 = { .name = "ecdh_secp384r1_2908", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2908_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2908_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2908_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 401 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2909 for ECDH, tcId is 402 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2909_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0x02, 0xd1, 0xaa, 0x13, 0xbe, 0x02, 0x01, 0x73, 0x54, 0x44, 0x48, 0x43, 0x27, 0xe9, 0xc9, 0xba, 0x5e, 0x61, 0x62, 0x53, 0xa6, 0x9c, 0xf0, 0xc0, 0x16, 0xc4, 0xdf, 0x7f, 0x6b, 0x00, 0x78, 0x31, 0xb9, 0xe4, 0xac, 0x30, 0x0a, 0xcb, 0x7d, 0x18, 0xf1, 0xd1, 0x71, 0x58, 0x8d, 0xff, 0x33, 0xc0, }; static const unsigned char ecdh_secp384r1_2909_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_2909_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_2909 = { .name = "ecdh_secp384r1_2909", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2909_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2909_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2909_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 402 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2910 for ECDH, tcId is 403 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2910_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2910_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2910_sharedsecret[] = { 0x60, 0x92, 0xa1, 0x75, 0x7d, 0xdd, 0x43, 0xa0, 0x4e, 0x18, 0x5f, 0xf9, 0x47, 0x2a, 0x0d, 0x18, 0xc7, 0xf7, 0xa7, 0xdc, 0x80, 0x2f, 0x7e, 0x05, 0x9e, 0x0c, 0x69, 0xae, 0x16, 0xc8, 0x02, 0x65, 0x17, 0x19, 0x40, 0x6e, 0x04, 0xde, 0x27, 0x65, 0x2f, 0xf8, 0x3d, 0xa4, 0xa7, 0x80, 0xef, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2910 = { .name = "ecdh_secp384r1_2910", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2910_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2910_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2910_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 403 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2911 for ECDH, tcId is 404 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2911_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2911_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2911_sharedsecret[] = { 0x89, 0xc8, 0x04, 0xcb, 0x81, 0x44, 0x33, 0x86, 0xb1, 0x85, 0xbc, 0xd9, 0xe2, 0xe6, 0xc3, 0x5e, 0xe6, 0x17, 0x7c, 0x3b, 0x90, 0x29, 0x89, 0x85, 0xc4, 0xe8, 0x1a, 0x89, 0xd5, 0x20, 0xcc, 0xeb, 0x17, 0xd7, 0x29, 0x54, 0x0e, 0x56, 0xec, 0xc3, 0x43, 0xc2, 0x6b, 0xf3, 0x14, 0xf2, 0xd0, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_2911 = { .name = "ecdh_secp384r1_2911", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2911_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2911_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2911_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 404 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2912 for ECDH, tcId is 405 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2912_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x66, 0x60, 0x04, 0x1b, 0x1c, 0x79, 0x84, 0x62, 0x0e, 0x8d, 0x7f, 0xd7, 0xcc, 0xdb, 0x50, 0xcc, 0x3b, 0xa8, 0x16, 0xda, 0x14, 0xd4, 0x1a, 0x4d, 0x8a, 0xff, 0xab, 0xa8, 0x48, 0x88, 0x67, 0xf0, 0xca, 0x5a, 0x24, 0xf8, 0xd4, 0x2d, 0xd7, 0xe4, 0x4b, 0x53, 0x0a, 0x27, 0xdc, 0x5b, 0x58, 0xda, }; static const unsigned char ecdh_secp384r1_2912_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2912_sharedsecret[] = { 0x35, 0x51, 0x31, 0x57, 0xe8, 0x04, 0xbd, 0x91, 0x8d, 0x04, 0xde, 0x20, 0x27, 0x78, 0xb8, 0x1a, 0x6f, 0xc7, 0xad, 0x8a, 0xa5, 0x41, 0xee, 0x94, 0x11, 0x6a, 0x0f, 0x18, 0x46, 0x67, 0x25, 0xd7, 0x5e, 0x71, 0xc6, 0x94, 0x2b, 0xf0, 0x44, 0xb1, 0xb0, 0xec, 0xba, 0x19, 0xdb, 0x33, 0xe0, 0xde, }; static const wycheproof_ecdh_test ecdh_secp384r1_2912 = { .name = "ecdh_secp384r1_2912", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2912_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2912_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2912_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 405 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2913 for ECDH, tcId is 406 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2913_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x14, 0x1b, 0x9e, 0xe5, 0x31, 0x0e, 0xa8, 0x17, 0x01, 0x31, 0xb6, 0x04, 0x48, 0x4a, 0x6d, 0x67, 0x7e, 0xd4, 0x25, 0x76, 0x04, 0x5b, 0x71, 0x43, 0xc0, 0x26, 0x71, 0x0a, 0xe9, 0x2b, 0x27, 0x7a, 0xfb, 0xbe, 0xa0, 0xc4, 0x45, 0x8c, 0x22, 0x0d, 0x56, 0x1e, 0x69, 0x40, 0x4d, 0xc7, 0xd8, 0x88, }; static const unsigned char ecdh_secp384r1_2913_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2913_sharedsecret[] = { 0x10, 0x20, 0x80, 0xc0, 0x47, 0x88, 0x1d, 0x19, 0xae, 0xfb, 0x01, 0xc2, 0x9c, 0x82, 0xa4, 0xfb, 0x32, 0x8a, 0x8e, 0xa6, 0xe6, 0xd6, 0xc9, 0x14, 0xaf, 0x73, 0x10, 0x05, 0x07, 0xc8, 0xee, 0x49, 0x97, 0x99, 0xaa, 0xa6, 0x46, 0xde, 0x0e, 0xa8, 0xc2, 0x72, 0x7c, 0x0b, 0x5e, 0xd2, 0x43, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2913 = { .name = "ecdh_secp384r1_2913", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2913_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2913_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2913_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 406 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2914 for ECDH, tcId is 407 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2914_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x70, 0x37, 0x03, 0x85, 0x41, 0x3d, 0x3e, 0xff, 0x6f, 0xa3, 0x40, 0x7b, 0xa2, 0x4f, 0x68, 0x2c, 0x2b, 0x01, 0xb5, 0x14, 0x45, 0xdb, 0xdf, 0x5e, 0xf7, 0xb0, 0xdd, 0x09, 0x79, 0xf1, 0x7e, 0x71, 0x3e, 0x09, 0x08, 0x15, 0x71, 0xf1, 0xe9, 0x4d, 0xfb, 0x66, 0xbf, 0x28, 0x20, 0x02, 0xf3, 0x9f, }; static const unsigned char ecdh_secp384r1_2914_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2914_sharedsecret[] = { 0xf6, 0x89, 0xf6, 0xe4, 0x75, 0xb4, 0xe1, 0x51, 0x62, 0x52, 0x1a, 0xca, 0xb4, 0x63, 0x7a, 0x3c, 0xdb, 0x9c, 0xb4, 0x2a, 0xa9, 0x2f, 0x91, 0x14, 0xb0, 0xee, 0x30, 0x0d, 0xda, 0xe8, 0x9d, 0x5e, 0xaf, 0xff, 0x34, 0x63, 0xa1, 0xf5, 0x00, 0x4a, 0x2a, 0x1b, 0xd4, 0xae, 0xff, 0xa4, 0x7b, 0x78, }; static const wycheproof_ecdh_test ecdh_secp384r1_2914 = { .name = "ecdh_secp384r1_2914", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2914_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2914_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2914_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 407 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2915 for ECDH, tcId is 408 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2915_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x11, 0x2e, 0x19, 0x1f, 0x1f, 0x78, 0xbb, 0xc5, 0x4b, 0x6c, 0xc4, 0xf0, 0xb1, 0xe5, 0x9a, 0xe8, 0xc6, 0xff, 0x1a, 0x07, 0xf5, 0x12, 0x8e, 0x41, 0xdf, 0xa2, 0x82, 0x8e, 0x1b, 0x65, 0x38, 0xd4, 0xfa, 0x2c, 0xa2, 0x39, 0x4c, 0x6a, 0xab, 0x34, 0x49, 0xdc, 0xb3, 0xfc, 0x4e, 0xb4, 0x4c, 0x09, }; static const unsigned char ecdh_secp384r1_2915_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2915_sharedsecret[] = { 0xf3, 0x48, 0x62, 0x44, 0x11, 0x9b, 0x36, 0x32, 0xfd, 0x55, 0xbe, 0x9e, 0x69, 0x51, 0xeb, 0x5d, 0x9c, 0x8c, 0x62, 0xf6, 0xa2, 0x70, 0x42, 0xf9, 0x4b, 0x92, 0x41, 0x55, 0xec, 0xfd, 0x4f, 0xf8, 0x74, 0x4b, 0xa3, 0xd2, 0x5b, 0xcf, 0x85, 0xa7, 0xb9, 0x25, 0xbd, 0x28, 0xa1, 0x2b, 0x89, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2915 = { .name = "ecdh_secp384r1_2915", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2915_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2915_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2915_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 408 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2916 for ECDH, tcId is 409 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2916_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x02, 0x8a, 0x4c, 0x8d, 0xa5, 0xa0, 0x51, 0x12, 0xfe, 0x60, 0x25, 0xef, 0x41, 0x90, 0x89, 0x69, 0xde, 0x20, 0xd0, 0x5d, 0x96, 0x68, 0xe5, 0xc8, 0x52, 0xef, 0x2d, 0x49, 0x21, 0x72, 0xdd, 0xc2, 0xa0, 0xa6, 0x22, 0xfc, 0x48, 0x81, 0x64, 0xfc, 0xc1, 0xa0, 0x76, 0xb8, 0x72, 0x94, 0x2a, 0xf2, }; static const unsigned char ecdh_secp384r1_2916_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2916_sharedsecret[] = { 0x81, 0x71, 0xb7, 0xc8, 0x0d, 0x4c, 0x90, 0xbb, 0x58, 0xae, 0x54, 0x39, 0x39, 0x21, 0xab, 0x9c, 0x5c, 0x0b, 0x31, 0x96, 0xf0, 0x45, 0xe9, 0xfe, 0x5c, 0x8b, 0x16, 0x8f, 0x0e, 0x5f, 0x6a, 0x77, 0xe1, 0xaa, 0x34, 0xec, 0xed, 0xc5, 0x48, 0x1c, 0xe5, 0x5a, 0xb3, 0x4c, 0x14, 0xe0, 0xf2, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp384r1_2916 = { .name = "ecdh_secp384r1_2916", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2916_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2916_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2916_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 409 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2917 for ECDH, tcId is 410 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2917_peerpubkey[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, 0x7b, 0x7f, 0x0f, 0x28, 0xd5, 0x5e, 0x2f, 0x3a, 0x50, 0xf1, 0xf1, 0xbe, 0xf3, 0x97, 0x68, 0x34, 0xa0, 0x5b, 0x43, 0x41, 0x8e, 0x97, 0x93, 0x03, 0xbc, 0x03, 0x63, 0xed, 0x16, 0xd2, 0xd0, 0xb4, 0x01, 0x1c, 0xc3, 0x7b, 0x3c, 0x06, 0xad, 0x73, 0x15, 0x4f, 0xae, 0xab, 0x79, 0x15, 0xcd, 0x87, }; static const unsigned char ecdh_secp384r1_2917_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2917_sharedsecret[] = { 0x1f, 0xe6, 0xfe, 0xa5, 0xf0, 0x0d, 0x30, 0x05, 0xab, 0xaa, 0xe2, 0x26, 0x7f, 0xf1, 0x8e, 0x43, 0x09, 0x15, 0x83, 0x8d, 0x87, 0x90, 0x9a, 0xb5, 0x03, 0x88, 0x5e, 0xdf, 0x38, 0xbe, 0x76, 0x18, 0xec, 0xb3, 0x21, 0xf0, 0xa4, 0xdf, 0x71, 0xb0, 0x91, 0x3f, 0xbf, 0x12, 0xc7, 0x6f, 0xc1, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2917 = { .name = "ecdh_secp384r1_2917", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2917_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2917_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2917_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 410 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2918 for ECDH, tcId is 411 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2918_peerpubkey[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2918_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2918_sharedsecret[] = { 0xf5, 0x8a, 0xdc, 0x13, 0xff, 0x99, 0x7d, 0x38, 0x38, 0x39, 0x10, 0xdb, 0x7b, 0xef, 0xb1, 0x76, 0x70, 0x39, 0x3a, 0x33, 0xd9, 0x5b, 0x04, 0x9c, 0x2a, 0xa1, 0x9d, 0x76, 0x0c, 0x8e, 0x72, 0x8e, 0xce, 0xdd, 0x32, 0x16, 0x84, 0x76, 0xb9, 0x0b, 0x26, 0xa3, 0x74, 0x2d, 0xcc, 0x12, 0x1b, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_2918 = { .name = "ecdh_secp384r1_2918", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2918_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2918_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2918_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 411 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2919 for ECDH, tcId is 412 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2919_peerpubkey[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, 0x56, 0x2e, 0xe0, 0xc5, 0x7e, 0x71, 0xd9, 0x6c, 0xef, 0xe3, 0x1b, 0x4c, 0x40, 0x45, 0xbd, 0x40, 0x86, 0xa3, 0x8e, 0x8a, 0xb9, 0xad, 0xf2, 0xd5, 0x56, 0x7b, 0xe3, 0x18, 0x05, 0x1d, 0x70, 0xf3, 0xaa, 0x68, 0xb7, 0x53, 0xf2, 0x71, 0xab, 0x03, 0x2b, 0x6a, 0xbc, 0xce, 0x91, 0x9e, 0x29, 0x62, }; static const unsigned char ecdh_secp384r1_2919_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2919_sharedsecret[] = { 0x56, 0x29, 0x96, 0x84, 0xec, 0x5c, 0xeb, 0x09, 0xba, 0x4d, 0x94, 0xd1, 0x23, 0x10, 0x05, 0xa8, 0x26, 0xc9, 0xc0, 0x8a, 0x52, 0x19, 0xc7, 0x57, 0xe0, 0x13, 0x6c, 0xbe, 0x8b, 0x64, 0x30, 0xba, 0xdd, 0x49, 0x25, 0x17, 0x2f, 0x29, 0x39, 0x89, 0x1d, 0xa7, 0xc7, 0x89, 0x38, 0x50, 0x51, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2919 = { .name = "ecdh_secp384r1_2919", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2919_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2919_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2919_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 412 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2920 for ECDH, tcId is 413 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2920_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x44, 0x80, 0xab, 0x33, 0xcb, 0x4b, 0xf7, 0xcb, 0x79, 0xc0, 0x24, 0xee, 0xad, 0xe3, 0xfd, 0x64, 0x1e, 0x2f, 0x30, 0x03, 0x69, 0x84, 0x00, 0xe8, 0x98, 0x6a, 0x73, 0x43, 0xa5, 0xda, 0x59, 0xa3, 0xb2, 0x6e, 0xea, 0x4b, 0x41, 0x76, 0xe5, 0x32, 0x39, 0x37, 0x14, 0x37, 0xd8, 0x34, 0xa1, 0xa7, }; static const unsigned char ecdh_secp384r1_2920_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2920_sharedsecret[] = { 0x19, 0x11, 0xa0, 0xee, 0x6a, 0xeb, 0xe2, 0x63, 0xfd, 0xcf, 0x3d, 0xb0, 0x73, 0xf2, 0x59, 0x8c, 0xda, 0xfa, 0xbe, 0xc2, 0x12, 0x3a, 0x2f, 0x24, 0xa2, 0x8c, 0x3d, 0x91, 0x51, 0xc8, 0x71, 0xf3, 0x2d, 0x6d, 0xc2, 0xf3, 0x1d, 0x25, 0xaf, 0x9c, 0x49, 0x8f, 0xd6, 0x8d, 0xa2, 0x3e, 0x5b, 0xef, }; static const wycheproof_ecdh_test ecdh_secp384r1_2920 = { .name = "ecdh_secp384r1_2920", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2920_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2920_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2920_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 413 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2921 for ECDH, tcId is 414 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2921_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x97, 0xda, 0x4c, 0x07, 0x51, 0xce, 0xd1, 0x6d, 0xe8, 0x0d, 0x16, 0xab, 0x7c, 0x65, 0x4a, 0x5d, 0xc2, 0x7d, 0x09, 0x26, 0x26, 0xd0, 0x86, 0x5a, 0x19, 0x2a, 0x1c, 0x5e, 0xa7, 0xc1, 0xb8, 0x8c, 0x9f, 0xca, 0xb0, 0x57, 0x94, 0x67, 0x41, 0xe4, 0x1c, 0xc2, 0x8c, 0x80, 0xec, 0x0b, 0x9a, }; static const unsigned char ecdh_secp384r1_2921_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2921_sharedsecret[] = { 0x15, 0x90, 0x06, 0x43, 0xe2, 0xe0, 0x58, 0x39, 0x76, 0x97, 0x4b, 0x05, 0xf8, 0x3c, 0x7a, 0x96, 0x61, 0x14, 0x25, 0xf7, 0xc4, 0xa6, 0xeb, 0x51, 0x91, 0x6a, 0xb9, 0x58, 0xa0, 0x37, 0xfd, 0x9c, 0xc1, 0x72, 0xbd, 0xcf, 0xff, 0x45, 0x40, 0xa2, 0xff, 0x3c, 0xe6, 0x4e, 0x65, 0x05, 0x55, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2921 = { .name = "ecdh_secp384r1_2921", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2921_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2921_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2921_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 414 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2922 for ECDH, tcId is 415 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2922_peerpubkey[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x6c, 0x70, 0x89, 0x8a, 0xe6, 0xfb, 0x31, 0xfa, 0x2f, 0x08, 0x65, 0x62, 0xaf, 0x2d, 0x10, 0x48, 0x6b, 0xa4, 0xc6, 0xfd, 0x5e, 0x41, 0xdf, 0xe4, 0xaa, 0x61, 0x59, 0x8b, 0x47, 0x07, 0xa3, 0xbc, 0x27, 0x6a, 0x62, 0xfe, 0xb1, 0xb9, 0x85, 0x57, 0xe3, 0xb1, 0x7c, 0x02, 0x5f, 0x7a, 0xdf, 0x4e, }; static const unsigned char ecdh_secp384r1_2922_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2922_sharedsecret[] = { 0x88, 0xa5, 0x44, 0xa7, 0x69, 0xd5, 0xc3, 0x4a, 0x05, 0x14, 0x16, 0xbd, 0x50, 0x9d, 0xfa, 0xc9, 0x11, 0x86, 0x3f, 0x60, 0x4c, 0x83, 0xea, 0x84, 0x4b, 0xf0, 0xe4, 0xc5, 0xc2, 0x72, 0xde, 0xc8, 0x6d, 0x05, 0x7a, 0x88, 0xb1, 0x52, 0xa9, 0x27, 0x47, 0x01, 0x93, 0x8c, 0x70, 0x59, 0x00, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2922 = { .name = "ecdh_secp384r1_2922", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2922_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2922_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2922_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 415 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2923 for ECDH, tcId is 416 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2923_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0e, 0xb1, 0x59, 0x28, 0x58, 0xb6, 0xe6, 0xe3, 0xa1, 0x99, 0xc0, 0xf3, 0xe7, 0xc5, 0xf0, 0xb4, 0xa9, 0x29, 0x15, 0x93, 0x6e, 0xfb, 0x8b, 0xc0, 0x40, 0x76, 0x80, 0xeb, 0x72, 0x74, 0xbe, 0x74, 0x22, 0x15, 0x6c, 0xe8, 0xcf, 0xc8, 0xb5, 0x05, 0xb2, 0xd9, 0x02, 0xc3, 0x99, 0x92, 0x38, 0x0f, }; static const unsigned char ecdh_secp384r1_2923_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2923_sharedsecret[] = { 0xb7, 0xdb, 0x26, 0xb2, 0x86, 0xe7, 0x52, 0x7c, 0xb1, 0xf4, 0x54, 0x78, 0x2f, 0xe5, 0x41, 0x86, 0x2f, 0xf0, 0xf8, 0xd7, 0xee, 0xd9, 0x60, 0xe2, 0x28, 0x55, 0xde, 0xb7, 0xac, 0x2a, 0x69, 0x61, 0x16, 0x68, 0xc7, 0x77, 0xc5, 0x3b, 0xb7, 0x4c, 0x2b, 0xcd, 0x40, 0xed, 0xfb, 0xf7, 0x94, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2923 = { .name = "ecdh_secp384r1_2923", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2923_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2923_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2923_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 416 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2924 for ECDH, tcId is 417 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2924_peerpubkey[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x49, 0x87, 0xab, 0xae, 0x41, 0x28, 0x09, 0xc2, 0xfa, 0x48, 0xfd, 0x23, 0xb1, 0xbd, 0xf9, 0xe6, 0x22, 0xf5, 0xa6, 0x06, 0xc4, 0x41, 0x17, 0x21, 0x5f, 0xfa, 0x61, 0xb1, 0x8e, 0xf4, 0x6e, 0x54, 0xa7, 0xfb, 0xbf, 0x11, 0xf9, 0xa6, 0xba, 0x59, 0xc9, 0x91, 0xb4, 0xae, 0x50, 0x1f, 0xed, 0xce, }; static const unsigned char ecdh_secp384r1_2924_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2924_sharedsecret[] = { 0xb1, 0xe8, 0xaa, 0xb1, 0xaa, 0x63, 0x3d, 0x98, 0xdc, 0x6b, 0x76, 0x85, 0x94, 0xe1, 0xe3, 0xed, 0xb8, 0x01, 0xa9, 0xef, 0x48, 0x3f, 0x28, 0x7c, 0x83, 0xe1, 0x97, 0x44, 0xd2, 0xad, 0x34, 0x3a, 0xd3, 0xde, 0xbd, 0xc4, 0xdc, 0x17, 0x82, 0x13, 0xad, 0x68, 0x76, 0xb5, 0x22, 0x84, 0xf5, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_2924 = { .name = "ecdh_secp384r1_2924", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2924_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2924_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2924_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 417 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2925 for ECDH, tcId is 418 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2925_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x36, 0x91, 0xfe, 0x49, 0x3d, 0x4d, 0x28, 0xbf, 0x8e, 0xe1, 0xdf, 0xec, 0x81, 0x2d, 0x6c, 0x30, 0x6e, 0xae, 0x08, 0x42, 0x91, 0x9e, 0xda, 0x6d, 0xc5, 0x25, 0xf0, 0xd4, 0x9a, 0xc2, 0xd2, 0x6a, 0x99, 0x22, 0x51, 0x91, 0x21, 0x39, 0xa2, 0x93, 0x68, 0x49, 0xf9, 0xd6, 0xfa, 0x94, 0x9a, 0x68, }; static const unsigned char ecdh_secp384r1_2925_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2925_sharedsecret[] = { 0xb0, 0xde, 0x00, 0x6f, 0x80, 0xf6, 0xf8, 0x9e, 0x4e, 0xea, 0x6e, 0x46, 0xdf, 0xe3, 0x05, 0x15, 0x30, 0x05, 0x61, 0x2d, 0x1e, 0x90, 0x31, 0x71, 0xec, 0x28, 0x86, 0x23, 0x09, 0x71, 0x96, 0x1b, 0x52, 0x02, 0xa9, 0xf3, 0x18, 0x7b, 0xda, 0xc4, 0x13, 0xac, 0x24, 0xc8, 0x36, 0xad, 0xf7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2925 = { .name = "ecdh_secp384r1_2925", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2925_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2925_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2925_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 418 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2926 for ECDH, tcId is 419 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2926_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x61, 0x58, 0x42, 0xaa, 0x06, 0xb0, 0x6f, 0x78, 0xf0, 0xa6, 0x6f, 0x7b, 0xea, 0x88, 0xd4, 0xb6, 0xee, 0x59, 0x65, 0x3e, 0xea, 0xa0, 0x0d, 0xc5, 0xe0, 0xa2, 0xb6, 0x58, 0xf9, 0x69, 0xb7, 0x1a, 0xf9, 0x0c, 0x9b, 0x4e, 0x96, 0xbd, 0x3c, 0xa3, 0x38, 0x46, 0x95, 0x5b, 0xdc, 0xcb, 0xd3, 0x59, }; static const unsigned char ecdh_secp384r1_2926_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2926_sharedsecret[] = { 0xca, 0x8c, 0xfa, 0x42, 0xc5, 0xe3, 0x74, 0x91, 0x4c, 0x14, 0xd6, 0x40, 0x2b, 0x1a, 0x99, 0x20, 0x8e, 0x47, 0xe0, 0x2e, 0xc4, 0x98, 0x18, 0x91, 0x36, 0x94, 0xea, 0x08, 0x22, 0xa2, 0xcc, 0x6c, 0x31, 0x02, 0x59, 0xa8, 0xf3, 0xab, 0x75, 0x59, 0xb9, 0x97, 0x4b, 0xc4, 0xc2, 0xfa, 0x33, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2926 = { .name = "ecdh_secp384r1_2926", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2926_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2926_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2926_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 419 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2927 for ECDH, tcId is 420 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2927_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2927_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2927_sharedsecret[] = { 0xed, 0xf0, 0x40, 0xba, 0xce, 0x18, 0xd9, 0x0b, 0xf9, 0xce, 0x72, 0x0d, 0xf2, 0xa3, 0xb3, 0x1d, 0x76, 0xd9, 0x5b, 0x7e, 0xd9, 0x53, 0x0a, 0x15, 0x9a, 0xc0, 0xb2, 0x4e, 0x82, 0xa8, 0x71, 0x03, 0x3e, 0xad, 0xa4, 0x05, 0x52, 0xf9, 0xe6, 0x06, 0xf7, 0x11, 0x5e, 0x6a, 0x78, 0x92, 0x75, 0x11, }; static const wycheproof_ecdh_test ecdh_secp384r1_2927 = { .name = "ecdh_secp384r1_2927", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2927_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2927_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2927_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 420 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2928 for ECDH, tcId is 421 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2928_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x71, 0xbd, 0x1e, 0x70, 0x0c, 0x34, 0x07, 0x5c, 0x3c, 0xad, 0xe8, 0xce, 0x29, 0xd3, 0x37, 0x24, 0xaf, 0x68, 0xa7, 0x67, 0x2b, 0x26, 0x5a, 0x4e, 0x15, 0x70, 0x55, 0x36, 0x04, 0x40, 0xab, 0x7c, 0x46, 0x1b, 0x8e, 0x9a, 0xc8, 0x02, 0x4e, 0x63, 0xa8, 0xb9, 0xc1, 0x7c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_2928_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2928_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2928 = { .name = "ecdh_secp384r1_2928", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2928_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2928_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2928_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 421 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2929 for ECDH, tcId is 422 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2929_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x42, 0xe1, 0x8f, 0xf3, 0xcb, 0xf8, 0xa3, 0xc3, 0x52, 0x17, 0x31, 0xd6, 0x2c, 0xc8, 0xdb, 0x50, 0x97, 0x58, 0x98, 0xd4, 0xd9, 0xa5, 0xb1, 0xea, 0x8f, 0xaa, 0xc9, 0xfb, 0xbf, 0x54, 0x82, 0xb9, 0xe4, 0x71, 0x64, 0x37, 0xfd, 0xb1, 0x9c, 0x57, 0x46, 0x3e, 0x84, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_2929_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2929_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2929 = { .name = "ecdh_secp384r1_2929", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2929_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2929_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2929_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 422 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2930 for ECDH, tcId is 423 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2930_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x57, 0xb6, 0x9a, 0x01, 0x47, 0x83, 0xdb, 0xfa, 0x49, 0x67, 0xb2, 0xf9, 0xcf, 0xa6, 0x78, 0xa6, 0xf0, 0xb6, 0xe9, 0xcf, 0xd4, 0x16, 0x48, 0xce, 0xc5, 0xb3, 0xc4, 0x98, 0xe7, 0x21, 0x52, 0xda, 0x3f, 0x82, 0xd3, 0xda, 0x2e, 0x8e, 0x9f, 0x8e, 0xf3, 0x7b, 0x11, }; static const unsigned char ecdh_secp384r1_2930_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2930_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2930 = { .name = "ecdh_secp384r1_2930", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2930_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2930_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2930_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 423 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2931 for ECDH, tcId is 424 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2931_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x80, 0xa8, 0x49, 0x65, 0xfe, 0xb8, 0x7c, 0x24, 0x05, 0xb6, 0x98, 0x4d, 0x06, 0x30, 0x59, 0x87, 0x59, 0x0f, 0x49, 0x16, 0x30, 0x2b, 0xe9, 0xb7, 0x31, 0x3a, 0x4c, 0x3a, 0x67, 0x18, 0xde, 0xac, 0x25, 0xc0, 0x7d, 0x2c, 0x25, 0xd1, 0x71, 0x61, 0x71, 0x0c, 0x84, 0xee, }; static const unsigned char ecdh_secp384r1_2931_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_2931_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_2931 = { .name = "ecdh_secp384r1_2931", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2931_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2931_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2931_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 424 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2932 for ECDH, tcId is 425 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2932_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_2932_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2932_sharedsecret[] = { 0xc3, 0xd3, 0x84, 0x50, 0xa5, 0xdf, 0xdb, 0xe6, 0x4f, 0x4b, 0x5d, 0xa3, 0xad, 0xd4, 0xac, 0x13, 0x15, 0xf8, 0x7d, 0x11, 0x72, 0x0f, 0x29, 0xbe, 0xb6, 0xf3, 0x61, 0x6a, 0x65, 0xeb, 0xca, 0x1d, 0x56, 0x9c, 0x0f, 0xae, 0x5c, 0x5b, 0xbb, 0x6d, 0x14, 0x6b, 0xf9, 0x10, 0x3e, 0x64, 0x5b, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2932 = { .name = "ecdh_secp384r1_2932", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2932_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2932_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2932_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 425 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2933 for ECDH, tcId is 426 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2933_peerpubkey[] = { 0x18, 0x3c, 0x0d, 0x36, 0x50, 0xd3, 0x5a, 0x33, 0x42, 0x3c, 0x0d, 0x00, 0x89, 0x6a, 0xa0, 0xaf, 0x9f, 0x34, 0x02, 0x17, 0xf4, 0x20, 0x86, 0xba, 0x51, 0x20, 0x3d, 0x15, 0x8a, 0x60, 0xfa, 0x91, 0xee, 0x83, 0xb5, 0x20, 0x34, 0xee, 0x61, 0x67, 0xc6, 0x59, 0x3c, 0xe6, 0x7a, 0x31, 0xc3, 0x8a, 0x20, 0x81, 0x3d, 0x9e, 0x7e, 0xea, 0x71, 0x8d, 0x46, 0x48, 0x56, 0x50, 0x42, 0x03, 0x66, 0xdc, 0xc1, 0xcf, 0xdb, 0x5c, 0xde, 0x93, 0xea, 0xb2, 0x83, 0x08, 0xde, 0xf7, 0x58, 0xba, 0x4c, 0x3b, 0xa3, 0x86, 0x13, 0x9d, 0x4a, 0x3a, 0x3b, 0xda, 0xd6, 0x4c, 0x54, 0x19, 0x2f, 0x2b, 0xde, 0x32, }; static const unsigned char ecdh_secp384r1_2933_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2933_sharedsecret[] = { 0x18, 0x15, 0x09, 0x61, 0x85, 0x9e, 0x3e, 0xfa, 0xd6, 0x26, 0x75, 0x82, 0xf9, 0x74, 0x17, 0xf1, 0x9e, 0xd8, 0xe7, 0xe5, 0x37, 0xb6, 0x92, 0xb9, 0x10, 0x50, 0x94, 0x4a, 0x6f, 0xab, 0x80, 0x30, 0x41, 0x1d, 0xd9, 0x2e, 0x94, 0x13, 0x57, 0xc7, 0x49, 0x4a, 0xf0, 0x11, 0x88, 0x40, 0xa6, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_2933 = { .name = "ecdh_secp384r1_2933", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2933_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2933_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2933_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 426 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2934 for ECDH, tcId is 427 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2934_peerpubkey[] = { 0xce, 0x5a, 0xd8, 0x11, 0xe7, 0xeb, 0x08, 0x02, 0x4e, 0x40, 0xe3, 0x0c, 0x1c, 0xb2, 0x9c, 0xac, 0xdf, 0xc8, 0xf8, 0x09, 0xf7, 0xf0, 0x11, 0x0e, 0x6b, 0x22, 0x5c, 0x6d, 0x83, 0x36, 0xf6, 0x0c, 0x30, 0xa5, 0x73, 0xef, 0x1b, 0x91, 0x2f, 0x5f, 0xd3, 0x00, 0xb0, 0x61, 0x5e, 0x9f, 0xdf, 0x1f, 0x63, 0x1b, 0xa9, 0x74, 0xbe, 0xb9, 0x54, 0x4b, 0x4a, 0x8c, 0x99, 0x45, 0xf7, 0x2f, 0x3e, 0x5f, 0xc5, 0x69, 0x43, 0x8c, 0x43, 0x03, 0x67, 0x22, 0x79, 0xfa, 0xfa, 0x90, 0x0e, 0x53, 0x69, 0x0a, 0xff, 0x75, 0x3d, 0xa9, 0x2f, 0x40, 0x0a, 0xb6, 0x2d, 0xe8, 0x06, 0x7d, 0xa9, 0x9f, 0xe3, 0x7b, }; static const unsigned char ecdh_secp384r1_2934_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2934_sharedsecret[] = { 0xcd, 0xfc, 0x94, 0x63, 0xaf, 0x89, 0x16, 0x82, 0xc5, 0x1b, 0x6f, 0x4c, 0x96, 0x56, 0x55, 0x1c, 0x33, 0xb8, 0x07, 0x39, 0xf1, 0x77, 0x61, 0x2f, 0x27, 0xa4, 0xb1, 0xf3, 0x7c, 0x97, 0xfd, 0x80, 0x23, 0x49, 0x5b, 0x0b, 0xc1, 0x5c, 0x68, 0x8a, 0xb1, 0x9b, 0x7f, 0x98, 0x80, 0xef, 0xc8, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2934 = { .name = "ecdh_secp384r1_2934", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2934_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2934_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2934_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 427 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2935 for ECDH, tcId is 428 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2935_peerpubkey[] = { 0x42, 0xfa, 0xac, 0x2a, 0xe2, 0xbb, 0xad, 0x43, 0xa6, 0xe4, 0x5a, 0x79, 0x6f, 0x1d, 0xcc, 0x70, 0xca, 0xc4, 0x44, 0xec, 0x15, 0x70, 0xac, 0x76, 0x9d, 0x6e, 0x86, 0x20, 0x74, 0x43, 0xdb, 0x8c, 0x03, 0xa3, 0x3b, 0xa0, 0x78, 0x62, 0xfc, 0xc6, 0x19, 0xce, 0xc8, 0x06, 0xce, 0x88, 0x26, 0xc2, 0x77, 0x6e, 0x31, 0xdd, 0x08, 0x6c, 0x1b, 0x19, 0x32, 0x3b, 0x58, 0x08, 0x45, 0x53, 0xbb, 0x08, 0x25, 0xd0, 0x91, 0xff, 0xb1, 0x23, 0xd2, 0x65, 0xaf, 0xa5, 0x97, 0x0c, 0xb7, 0x2c, 0x2e, 0x68, 0x04, 0xab, 0x32, 0x78, 0x34, 0x29, 0x96, 0x41, 0xe7, 0x0f, 0xf1, 0x42, 0x91, 0x97, 0x5b, 0xb1, }; static const unsigned char ecdh_secp384r1_2935_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2935_sharedsecret[] = { 0xbe, 0xe4, 0x6c, 0x55, 0x18, 0xe8, 0xe2, 0xf5, 0xc7, 0xfa, 0x23, 0xf2, 0xab, 0x8f, 0xc4, 0x3f, 0x5a, 0x74, 0x19, 0xf7, 0x03, 0x73, 0xda, 0xa1, 0xa6, 0x74, 0x63, 0x0b, 0x16, 0x1e, 0xa3, 0x9c, 0x38, 0x1a, 0x1e, 0xaa, 0xa9, 0x0e, 0xfd, 0x34, 0xae, 0xfa, 0x9a, 0xc6, 0xed, 0xb5, 0x3c, 0x75, }; static const wycheproof_ecdh_test ecdh_secp384r1_2935 = { .name = "ecdh_secp384r1_2935", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2935_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2935_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2935_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 428 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2936 for ECDH, tcId is 429 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2936_peerpubkey[] = { 0x6a, 0xd6, 0x6f, 0x67, 0x3d, 0x83, 0x2f, 0x8a, 0x86, 0xcf, 0xd7, 0xa6, 0x6d, 0x21, 0x6d, 0x23, 0xa2, 0x65, 0x83, 0x23, 0x5c, 0x28, 0xec, 0xb7, 0xb5, 0x98, 0xff, 0x8d, 0xd1, 0x13, 0x2b, 0xc6, 0xcf, 0x0d, 0xc4, 0x6a, 0x98, 0xc8, 0x64, 0x66, 0x5f, 0x19, 0x5a, 0x99, 0x65, 0x63, 0xe5, 0x77, 0x70, 0xaa, 0xaa, 0xdc, 0xbf, 0x36, 0x53, 0x1a, 0x31, 0x8d, 0xa9, 0x51, 0x20, 0xd9, 0xa8, 0x00, 0x22, 0x6a, 0xc9, 0xfb, 0xff, 0x06, 0xf4, 0x78, 0x37, 0x91, 0x1c, 0x7b, 0x95, 0xf5, 0x18, 0x7c, 0x43, 0xef, 0x95, 0x9a, 0x4e, 0xa3, 0xe1, 0x17, 0xb8, 0x47, 0xf1, 0xdd, 0x1f, 0x8c, 0xc4, 0xb2, }; static const unsigned char ecdh_secp384r1_2936_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2936_sharedsecret[] = { 0x1e, 0xf2, 0xe4, 0x85, 0x53, 0x1e, 0x26, 0xd6, 0x9a, 0xb7, 0xc7, 0xb8, 0xc2, 0x7c, 0x1b, 0x4b, 0xe1, 0x52, 0x72, 0x89, 0x61, 0x87, 0x56, 0x81, 0x04, 0x26, 0x83, 0x67, 0x8c, 0x7b, 0xb4, 0xef, 0x8b, 0x59, 0xc7, 0xc1, 0xd6, 0x2a, 0xdb, 0x5f, 0x03, 0x4b, 0xb2, 0x88, 0x6f, 0xf6, 0x91, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2936 = { .name = "ecdh_secp384r1_2936", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2936_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2936_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2936_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 429 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2937 for ECDH, tcId is 430 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2937_peerpubkey[] = { 0xf8, 0x42, 0xe8, 0xf4, 0x71, 0x51, 0x94, 0x9b, 0x5c, 0xb6, 0xcd, 0xe4, 0xac, 0xc7, 0xa8, 0x3d, 0x90, 0x11, 0x73, 0xae, 0x31, 0x6e, 0xc4, 0x23, 0xe1, 0xc9, 0x66, 0xc8, 0xa3, 0x96, 0x38, 0xff, 0xa6, 0xde, 0xf3, 0x16, 0x0f, 0x7b, 0xea, 0x66, 0x49, 0x82, 0xb9, 0x63, 0x6f, 0x63, 0x9f, 0x72, 0x70, 0x2f, 0xe1, 0xd5, 0x93, 0x45, 0x4f, 0x73, 0xd0, 0x60, 0x50, 0x65, 0x5e, 0x28, 0xec, 0xb8, 0xcf, 0xdf, 0xe1, 0x3d, 0xcc, 0x77, 0x52, 0xbd, 0xe3, 0x8f, 0xe0, 0x07, 0x0b, 0x43, 0xbd, 0xa5, 0xe6, 0xb7, 0x20, 0x3b, 0x45, 0x07, 0x74, 0x71, 0x82, 0x5d, 0xf1, 0xb8, 0x16, 0xa4, 0x28, 0xc9, }; static const unsigned char ecdh_secp384r1_2937_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2937_sharedsecret[] = { 0xa8, 0x57, 0x3b, 0x49, 0x00, 0x63, 0x62, 0xd9, 0xb7, 0x36, 0x3c, 0x50, 0x29, 0x69, 0xb2, 0x23, 0x3b, 0x2f, 0xc5, 0x73, 0x0c, 0xf5, 0x75, 0xd4, 0x14, 0xc5, 0x0a, 0x45, 0xf0, 0xa5, 0xb4, 0xd5, 0x18, 0xbd, 0x45, 0x02, 0x88, 0xc8, 0x9e, 0x81, 0xd5, 0x17, 0x1e, 0xfa, 0xdb, 0xce, 0x59, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2937 = { .name = "ecdh_secp384r1_2937", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2937_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2937_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2937_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 430 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2938 for ECDH, tcId is 431 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2938_peerpubkey[] = { 0x64, 0xe6, 0x8d, 0x8a, 0x8e, 0x6d, 0x44, 0x14, 0x2f, 0xd0, 0xb3, 0x35, 0x32, 0x75, 0xdf, 0x4b, 0xe9, 0x5b, 0x0f, 0xf9, 0x46, 0x5d, 0x11, 0x4a, 0x18, 0xff, 0x23, 0x8f, 0xa4, 0xd3, 0x94, 0x7f, 0xf4, 0xe3, 0xfc, 0x66, 0x97, 0x0d, 0x85, 0x73, 0x1d, 0x78, 0x4b, 0x0a, 0x17, 0x15, 0x78, 0x87, 0xcb, 0x96, 0x1c, 0xf6, 0x36, 0xc0, 0xe8, 0xd4, 0xb5, 0xf8, 0xdb, 0x00, 0x60, 0xc2, 0xb6, 0x99, 0xed, 0x75, 0x0e, 0x92, 0xa0, 0x5a, 0xc4, 0xda, 0x49, 0x78, 0x0b, 0x8a, 0x48, 0x72, 0x9c, 0x6c, 0x2b, 0x86, 0x6c, 0x75, 0x75, 0x4a, 0xfb, 0x2c, 0x7c, 0x2d, 0x66, 0x1e, 0xcf, 0x64, 0x0c, 0xc2, }; static const unsigned char ecdh_secp384r1_2938_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2938_sharedsecret[] = { 0x33, 0xf9, 0xaa, 0x30, 0x84, 0x45, 0xcd, 0xc2, 0xd1, 0x59, 0xcd, 0x39, 0xc3, 0x3b, 0x49, 0x53, 0x82, 0xff, 0x8b, 0x9e, 0x21, 0xb6, 0xd1, 0xb1, 0x60, 0x57, 0x7a, 0x4b, 0x3c, 0x5d, 0xaf, 0x00, 0xb8, 0xda, 0xd3, 0xc8, 0x38, 0x52, 0xf1, 0x8f, 0x27, 0xa4, 0x40, 0x2c, 0xe9, 0x44, 0x21, 0xee, }; static const wycheproof_ecdh_test ecdh_secp384r1_2938 = { .name = "ecdh_secp384r1_2938", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2938_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2938_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2938_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 431 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2939 for ECDH, tcId is 432 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2939_peerpubkey[] = { 0x23, 0x7e, 0x5a, 0x05, 0xa3, 0xb9, 0xdd, 0x16, 0xf2, 0x7d, 0x1c, 0xc0, 0x4d, 0x16, 0xf1, 0x9e, 0xc3, 0xd2, 0x78, 0x81, 0xb9, 0x0c, 0x20, 0x49, 0xfd, 0x26, 0x65, 0xce, 0xc7, 0xea, 0xae, 0x1c, 0xac, 0xde, 0xd4, 0xe0, 0xf8, 0xab, 0xba, 0x5a, 0x64, 0xd4, 0x18, 0x3a, 0x71, 0x44, 0x9d, 0x9b, 0x74, 0x10, 0x73, 0xdc, 0x25, 0x94, 0xd0, 0x2a, 0xc9, 0xa8, 0x89, 0x88, 0xe5, 0x1d, 0x7b, 0xee, 0x22, 0x11, 0x19, 0x62, 0xf6, 0x37, 0x48, 0xef, 0xdc, 0x8c, 0x31, 0x1f, 0x63, 0x1a, 0xe8, 0x68, 0x0c, 0x89, 0x96, 0x02, 0x8d, 0xa4, 0xe9, 0x56, 0xac, 0x12, 0x84, 0xd0, 0xc0, 0x16, 0x14, 0xf5, }; static const unsigned char ecdh_secp384r1_2939_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2939_sharedsecret[] = { 0xdd, 0xf7, 0xfe, 0xa5, 0x2b, 0x92, 0xe1, 0x54, 0x4f, 0xb1, 0xc7, 0xce, 0x22, 0x74, 0x40, 0x9b, 0xca, 0x17, 0x04, 0xf4, 0x4b, 0xc0, 0xae, 0x1a, 0x6a, 0x8b, 0x38, 0x8e, 0xaf, 0x31, 0x6c, 0x90, 0xbc, 0xe9, 0x9b, 0x0c, 0x20, 0x3f, 0x75, 0x56, 0xe5, 0xba, 0xaa, 0x26, 0xc6, 0xb7, 0xad, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp384r1_2939 = { .name = "ecdh_secp384r1_2939", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2939_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2939_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2939_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 432 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2940 for ECDH, tcId is 433 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2940_peerpubkey[] = { 0x81, 0x0f, 0xac, 0xe9, 0x95, 0x12, 0xbe, 0xc2, 0x59, 0xd5, 0x75, 0x22, 0x9d, 0x95, 0x86, 0x79, 0x1b, 0xdf, 0xb1, 0xb2, 0x21, 0xd2, 0x3c, 0x17, 0x38, 0xe4, 0xf9, 0xaf, 0x04, 0x98, 0xf5, 0x4b, 0x18, 0xcc, 0x0c, 0xbb, 0x01, 0xb6, 0x4c, 0xf3, 0x41, 0x1e, 0xc4, 0xb6, 0x84, 0x80, 0xdb, 0x6d, 0x6c, 0x06, 0xe6, 0x20, 0x91, 0x88, 0xf3, 0x54, 0x32, 0x3b, 0x4d, 0xb6, 0xf5, 0x4f, 0x2b, 0x1d, 0xfc, 0x5c, 0x1c, 0x3d, 0xd4, 0xfe, 0xf0, 0xcb, 0x37, 0x9a, 0x7d, 0x7e, 0xa0, 0x85, 0xac, 0xda, 0xc9, 0xe6, 0x0e, 0x04, 0xf8, 0xdb, 0x48, 0x8b, 0xe9, 0x7f, 0x81, 0xde, 0xd6, 0x6e, 0xa3, 0x3e, }; static const unsigned char ecdh_secp384r1_2940_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2940_sharedsecret[] = { 0xd2, 0x28, 0x7c, 0xcb, 0x64, 0x2a, 0x76, 0xe0, 0x01, 0x12, 0x4d, 0xba, 0x6c, 0x6c, 0xe1, 0x9e, 0x82, 0x53, 0x66, 0x90, 0xab, 0xf5, 0x42, 0x10, 0x4c, 0xbd, 0x45, 0xc8, 0x70, 0x8e, 0x46, 0x2d, 0x8c, 0xe0, 0x6e, 0x05, 0xad, 0x2a, 0x0f, 0xea, 0x4d, 0x68, 0x49, 0x2f, 0xcf, 0x37, 0x6a, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_2940 = { .name = "ecdh_secp384r1_2940", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2940_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2940_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2940_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 433 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2941 for ECDH, tcId is 434 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2941_peerpubkey[] = { 0xf0, 0xb0, 0x02, 0x71, 0xa2, 0xbd, 0xde, 0x4b, 0xdd, 0xbd, 0xac, 0x00, 0x40, 0x6a, 0xdf, 0x05, 0x6d, 0x32, 0xb9, 0xb0, 0x3f, 0x4b, 0xd2, 0x9c, 0xc6, 0x60, 0x93, 0xdf, 0x22, 0xe5, 0xda, 0x09, 0xfe, 0x48, 0xca, 0xbf, 0xc8, 0xd4, 0x4b, 0xf1, 0x36, 0xb5, 0xbe, 0x27, 0x5c, 0x7f, 0x53, 0xf6, 0x6c, 0xcd, 0xd0, 0xd0, 0x03, 0x54, 0xa3, 0x07, 0xfe, 0xa0, 0x09, 0x10, 0x70, 0xb6, 0x1f, 0xa9, 0xe2, 0xda, 0x1e, 0x2f, 0x32, 0x9f, 0xad, 0x68, 0x01, 0x34, 0x49, 0xec, 0xf4, 0x77, 0xfe, 0x33, 0x45, 0x80, 0x39, 0xba, 0xc9, 0x11, 0x10, 0x4d, 0xa6, 0x2c, 0x29, 0xc0, 0x81, 0x92, 0xa3, 0x15, }; static const unsigned char ecdh_secp384r1_2941_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2941_sharedsecret[] = { 0x36, 0x15, 0x1b, 0x0d, 0x1c, 0x1b, 0x28, 0xac, 0x06, 0x2e, 0x08, 0x29, 0xf4, 0x1b, 0xd5, 0x50, 0x44, 0xda, 0xe6, 0xf1, 0xda, 0xf3, 0x0a, 0xb3, 0xff, 0x41, 0x48, 0xa8, 0x3c, 0xcb, 0xcc, 0xf5, 0x07, 0xbe, 0xf7, 0x34, 0x0c, 0x95, 0x44, 0xf0, 0x47, 0xf5, 0x54, 0xc7, 0x12, 0x72, 0xae, 0x24, }; static const wycheproof_ecdh_test ecdh_secp384r1_2941 = { .name = "ecdh_secp384r1_2941", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2941_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2941_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2941_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 434 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2942 for ECDH, tcId is 435 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2942_peerpubkey[] = { 0xf8, 0x2c, 0xbb, 0xaf, 0x1c, 0x9b, 0x60, 0x63, 0xa1, 0xb5, 0x05, 0x58, 0x07, 0x66, 0xb1, 0x44, 0x6b, 0x6b, 0x5a, 0x99, 0x01, 0x51, 0x70, 0x3e, 0x7a, 0xfd, 0x8a, 0x31, 0x75, 0x38, 0x7f, 0xae, 0x56, 0x70, 0x81, 0x01, 0x9e, 0x0f, 0xdb, 0xa7, 0x96, 0x4e, 0xd6, 0xc0, 0xe4, 0xd0, 0xe4, 0x5e, 0xcf, 0x37, 0x9b, 0xc1, 0xed, 0xa3, 0x0c, 0xe4, 0xfa, 0x56, 0x01, 0x06, 0xb3, 0xd0, 0x9b, 0xf3, 0x8e, 0x9f, 0xcb, 0xec, 0x3e, 0xad, 0xc9, 0xe1, 0x2c, 0x56, 0x22, 0xc0, 0x11, 0x30, 0xc8, 0x70, 0xc6, 0x13, 0x64, 0x98, 0xf5, 0x2b, 0xf6, 0x2f, 0x39, 0x87, 0xde, 0xfd, 0x29, 0x4d, 0xf3, 0x3c, }; static const unsigned char ecdh_secp384r1_2942_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2942_sharedsecret[] = { 0x24, 0x51, 0xfd, 0x97, 0x98, 0x64, 0x16, 0x94, 0x62, 0xa7, 0x7d, 0x74, 0x2a, 0xdb, 0x6f, 0x45, 0x05, 0xf2, 0xdb, 0x95, 0x6d, 0x2d, 0x2d, 0xea, 0x5b, 0x05, 0xe4, 0x0f, 0x40, 0xf2, 0x65, 0x4f, 0xc1, 0x7d, 0x1c, 0xd1, 0xd3, 0xb3, 0x53, 0x32, 0x2b, 0xf0, 0xd1, 0xf3, 0xcf, 0x82, 0x8c, 0x49, }; static const wycheproof_ecdh_test ecdh_secp384r1_2942 = { .name = "ecdh_secp384r1_2942", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2942_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2942_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2942_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 435 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2943 for ECDH, tcId is 436 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2943_peerpubkey[] = { 0xcc, 0xec, 0x11, 0x70, 0x25, 0xee, 0xce, 0x29, 0xe0, 0xed, 0x07, 0x7d, 0x98, 0x67, 0x87, 0x38, 0xfd, 0x1a, 0x5c, 0xca, 0x20, 0xe4, 0x0b, 0xb3, 0x22, 0xa4, 0x05, 0x66, 0x83, 0x12, 0x43, 0xda, 0xc8, 0x06, 0x55, 0x5b, 0x85, 0x08, 0xf4, 0xea, 0xa6, 0x8b, 0xeb, 0x4e, 0x78, 0xed, 0x91, 0x76, 0x86, 0x41, 0x5f, 0x11, 0x23, 0x2c, 0x5e, 0xcb, 0x9f, 0x80, 0x5b, 0x0d, 0xcc, 0x6c, 0xe0, 0x6b, 0x57, 0xfd, 0xf4, 0xe4, 0xae, 0x4e, 0x6d, 0x82, 0x24, 0x72, 0xd6, 0x72, 0x5a, 0x9c, 0x1d, 0xa4, 0x1c, 0x2f, 0xee, 0x15, 0x19, 0x58, 0x6c, 0x50, 0x2b, 0xbb, 0x1a, 0x4c, 0xe2, 0x58, 0x28, 0x63, }; static const unsigned char ecdh_secp384r1_2943_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2943_sharedsecret[] = { 0x0b, 0x3c, 0x06, 0xfb, 0x8c, 0x7c, 0x31, 0xa9, 0x6f, 0xa6, 0xdc, 0x80, 0x25, 0x01, 0x43, 0xe3, 0x9a, 0xf9, 0xe5, 0xc2, 0x01, 0xfd, 0xbe, 0x92, 0x24, 0x57, 0x71, 0xe3, 0x45, 0xcf, 0x78, 0x7f, 0x99, 0x23, 0x4e, 0xcc, 0x1d, 0x68, 0x70, 0x59, 0x9a, 0xd5, 0x0a, 0x1c, 0xad, 0xf6, 0x87, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_2943 = { .name = "ecdh_secp384r1_2943", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2943_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2943_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2943_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 436 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2944 for ECDH, tcId is 437 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2944_peerpubkey[] = { 0x1e, 0x82, 0x9b, 0xdb, 0xd8, 0xa2, 0xc1, 0x32, 0x1d, 0x04, 0x93, 0x2a, 0xac, 0xd4, 0x29, 0x72, 0xf5, 0xb2, 0xac, 0x5b, 0x6a, 0x61, 0xb0, 0x41, 0x21, 0x6c, 0xa9, 0x48, 0x1b, 0xb0, 0xda, 0x8a, 0xbf, 0x6d, 0x5c, 0x1b, 0x63, 0xe8, 0x68, 0x47, 0x9f, 0x88, 0xd9, 0x13, 0x45, 0xcb, 0x91, 0x53, 0xfc, 0xa2, 0xc5, 0x69, 0x8f, 0xd5, 0xb4, 0x04, 0xc9, 0xbc, 0x12, 0x5b, 0xdc, 0x3c, 0x60, 0x8f, 0xe3, 0x85, 0x36, 0x7e, 0xe2, 0xb6, 0x84, 0x08, 0xe9, 0x59, 0xb8, 0x3e, 0xc8, 0xbc, 0x3e, 0xc1, 0xe0, 0x5a, 0x6f, 0xb9, 0x84, 0xfe, 0xdb, 0x25, 0x65, 0x74, 0x88, 0x5f, 0x5d, 0xd9, 0x89, 0x40, }; static const unsigned char ecdh_secp384r1_2944_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2944_sharedsecret[] = { 0x53, 0x88, 0x90, 0x5a, 0xee, 0x7f, 0x82, 0x6b, 0x9a, 0x5b, 0x46, 0xfa, 0xef, 0xfe, 0x26, 0xd4, 0x9f, 0x85, 0x66, 0xc7, 0xa8, 0xe8, 0xaf, 0x5a, 0x16, 0x53, 0xfc, 0xfb, 0xff, 0x7c, 0x0d, 0xfd, 0xe5, 0x66, 0xf0, 0x43, 0x40, 0x12, 0x48, 0x48, 0x6f, 0xf9, 0x1c, 0x39, 0x0f, 0x5c, 0xc6, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_2944 = { .name = "ecdh_secp384r1_2944", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2944_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2944_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2944_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 437 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2945 for ECDH, tcId is 438 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2945_peerpubkey[] = { 0x4d, 0xd1, 0xe1, 0xb4, 0x54, 0x81, 0x4f, 0x3b, 0xe1, 0xc6, 0x2e, 0xb8, 0x7c, 0x12, 0x07, 0x72, 0xc2, 0x06, 0x2a, 0x3d, 0x7e, 0x54, 0x61, 0xd5, 0x55, 0x4b, 0x39, 0x63, 0xa9, 0xfb, 0x11, 0x90, 0xdb, 0x96, 0x56, 0x95, 0xca, 0xf5, 0x55, 0xa4, 0x5a, 0xe2, 0x5b, 0xe7, 0x3e, 0x47, 0xc3, 0x74, 0x5b, 0xaa, 0x93, 0xfe, 0x2b, 0xfb, 0x09, 0x4f, 0xe7, 0x18, 0xc8, 0xc9, 0xbd, 0x8e, 0x1e, 0x6e, 0x86, 0xcd, 0x62, 0x9d, 0xca, 0x0b, 0xb9, 0x1e, 0xe9, 0x34, 0xe9, 0x34, 0x69, 0xd4, 0xff, 0xf3, 0x2a, 0x41, 0xdf, 0xd7, 0x8c, 0x27, 0xba, 0x53, 0x4a, 0x3d, 0x59, 0x70, 0xc3, 0x88, 0xef, 0xfb, }; static const unsigned char ecdh_secp384r1_2945_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2945_sharedsecret[] = { 0xb9, 0x20, 0x29, 0x9b, 0xa2, 0x60, 0x75, 0xd2, 0x64, 0x7c, 0xcb, 0x97, 0x8d, 0x15, 0xa5, 0x4e, 0xf4, 0x83, 0x30, 0xdb, 0x3a, 0x87, 0x94, 0xd8, 0x68, 0xae, 0x02, 0xbf, 0x15, 0x2b, 0x3c, 0x24, 0xff, 0xa9, 0x66, 0x89, 0x3e, 0xa9, 0xeb, 0x5d, 0x3c, 0xce, 0x83, 0xe0, 0x23, 0x9b, 0xe0, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2945 = { .name = "ecdh_secp384r1_2945", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2945_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2945_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2945_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 438 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2946 for ECDH, tcId is 439 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2946_peerpubkey[] = { 0x94, 0x71, 0xab, 0xf4, 0xfd, 0x1b, 0x89, 0xd1, 0x4d, 0xf2, 0x32, 0x5c, 0xb0, 0xa6, 0xbc, 0x92, 0xe7, 0x3c, 0x8e, 0xc8, 0xe0, 0x6c, 0x47, 0xb0, 0x97, 0x8d, 0x93, 0xe9, 0x22, 0x5a, 0xdf, 0x08, 0x9d, 0x3e, 0xe4, 0xe2, 0x5c, 0x22, 0x2b, 0x60, 0xd0, 0x21, 0x99, 0xc1, 0xb5, 0x80, 0x04, 0xc1, 0xd1, 0xb3, 0x5b, 0xc1, 0x47, 0x5c, 0xfc, 0xf3, 0xe3, 0xa6, 0x11, 0x65, 0x93, 0xe2, 0xca, 0x5a, 0x70, 0x34, 0x41, 0x27, 0xad, 0x90, 0x7a, 0x4a, 0xa1, 0xd0, 0xc6, 0x61, 0x39, 0xf2, 0x87, 0xa7, 0xfe, 0x48, 0xce, 0xa5, 0x84, 0x4a, 0x20, 0xdf, 0x5a, 0x68, 0x8b, 0x89, 0x21, 0x1f, 0x19, 0xc3, }; static const unsigned char ecdh_secp384r1_2946_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2946_sharedsecret[] = { 0x70, 0x54, 0x21, 0xb3, 0x66, 0x18, 0x11, 0x5f, 0xcc, 0xb7, 0xce, 0x6d, 0xb8, 0x57, 0x5f, 0xc4, 0xb3, 0xf0, 0xa2, 0x78, 0x0c, 0xe0, 0x2a, 0x34, 0x87, 0xe4, 0x05, 0x5d, 0xd0, 0xd5, 0x18, 0x34, 0x00, 0x62, 0x70, 0xe9, 0x92, 0xe0, 0xaf, 0xaa, 0x4c, 0x7c, 0xe0, 0xf6, 0x99, 0xf7, 0xfe, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2946 = { .name = "ecdh_secp384r1_2946", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2946_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2946_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2946_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 439 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2947 for ECDH, tcId is 440 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2947_peerpubkey[] = { 0x97, 0x04, 0x6c, 0x44, 0x38, 0xb0, 0x40, 0x31, 0x5b, 0xe3, 0x9e, 0xe3, 0x86, 0x9f, 0x3e, 0x87, 0x11, 0xc3, 0x19, 0x67, 0x58, 0x47, 0x6f, 0x2b, 0x4d, 0x90, 0xcd, 0x43, 0x99, 0x66, 0x5c, 0x8c, 0x5c, 0x87, 0xf9, 0xcf, 0x64, 0x28, 0x9c, 0x2b, 0xb0, 0x11, 0x66, 0x74, 0x2e, 0x1a, 0xe0, 0x36, 0xb2, 0x81, 0x92, 0x2e, 0x88, 0x72, 0xb4, 0x8b, 0x7d, 0x3e, 0x13, 0x84, 0xab, 0x4d, 0x0a, 0x92, 0xc6, 0x02, 0xac, 0xe7, 0xdf, 0x3a, 0x93, 0xa4, 0x7d, 0xc5, 0x0c, 0x8c, 0x2e, 0x5e, 0x8a, 0x87, 0x5d, 0x2d, 0x92, 0x7f, 0x72, 0x01, 0xce, 0x11, 0xfd, 0x8d, 0xf8, 0x12, 0xba, 0xa1, 0xe4, 0xf8, }; static const unsigned char ecdh_secp384r1_2947_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2947_sharedsecret[] = { 0x3c, 0x51, 0x00, 0x06, 0xf8, 0x65, 0x8f, 0x3f, 0xa4, 0x14, 0xfe, 0xf9, 0x72, 0x3d, 0x63, 0x4a, 0x17, 0x9d, 0xb7, 0xaa, 0xf0, 0xb7, 0x06, 0x8b, 0x76, 0x96, 0xcf, 0xf9, 0x3f, 0x88, 0xe0, 0x41, 0x36, 0xdf, 0xda, 0xc6, 0x83, 0x49, 0x78, 0x1b, 0xf0, 0x5a, 0x78, 0x7a, 0xe1, 0x9e, 0x90, 0x21, }; static const wycheproof_ecdh_test ecdh_secp384r1_2947 = { .name = "ecdh_secp384r1_2947", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2947_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2947_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2947_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 440 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2948 for ECDH, tcId is 441 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2948_peerpubkey[] = { 0x8e, 0x3d, 0xae, 0x50, 0x0f, 0xe2, 0xc6, 0x45, 0xaa, 0xb1, 0x53, 0x79, 0x17, 0x06, 0x82, 0x50, 0x31, 0x54, 0xaf, 0x1f, 0xd0, 0xa2, 0x1f, 0xfd, 0x2e, 0x34, 0xf0, 0x50, 0x1c, 0x51, 0x85, 0x07, 0xe0, 0xeb, 0xf4, 0x5d, 0x7c, 0xb8, 0x65, 0x3f, 0xd5, 0x7b, 0xf1, 0xf8, 0x94, 0xf2, 0xa5, 0x52, 0xcb, 0x69, 0xaf, 0x7e, 0x00, 0x9d, 0x43, 0xbd, 0x6e, 0x68, 0x8b, 0xf2, 0x8f, 0x5e, 0x28, 0x15, 0xf3, 0xc9, 0xf4, 0xfa, 0xb1, 0xd8, 0x29, 0xd2, 0x9f, 0x05, 0x31, 0x2b, 0xad, 0x99, 0xd7, 0x5c, 0x25, 0x18, 0xd2, 0xa3, 0x01, 0xa7, 0x4d, 0x5e, 0xce, 0xe1, 0x33, 0x35, 0x82, 0xd7, 0x9c, 0x14, }; static const unsigned char ecdh_secp384r1_2948_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2948_sharedsecret[] = { 0x24, 0x89, 0x67, 0xaf, 0xa3, 0x63, 0x86, 0xcf, 0xea, 0xa2, 0x21, 0x48, 0x47, 0xc7, 0xc8, 0xc3, 0x2a, 0x89, 0x1a, 0x24, 0x38, 0xb8, 0x36, 0x65, 0xf9, 0x9e, 0x5f, 0xe7, 0xab, 0x6d, 0xd8, 0x63, 0x53, 0xff, 0x7a, 0x8b, 0x15, 0xd4, 0xbe, 0x4e, 0x12, 0x77, 0xc7, 0x21, 0xd6, 0x9c, 0xbb, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_2948 = { .name = "ecdh_secp384r1_2948", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2948_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2948_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2948_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 441 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2949 for ECDH, tcId is 442 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2949_peerpubkey[] = { 0x1f, 0xca, 0x8f, 0x96, 0x95, 0x65, 0x0a, 0x02, 0xd6, 0xfb, 0x80, 0x49, 0xb1, 0x53, 0x1a, 0x37, 0x83, 0xe4, 0x49, 0xdf, 0x75, 0xa9, 0x8d, 0x45, 0x99, 0x9f, 0xb9, 0x85, 0x7c, 0x3e, 0x75, 0x62, 0x19, 0xd4, 0x8b, 0x2c, 0x84, 0xd5, 0x14, 0x3f, 0x08, 0xc2, 0xab, 0x09, 0x7b, 0x36, 0x5a, 0x33, 0x45, 0xaa, 0x19, 0x7e, 0x10, 0xc6, 0x59, 0xd9, 0xc5, 0x3f, 0xa7, 0x54, 0xf1, 0x12, 0xd7, 0x79, 0x73, 0x10, 0x7e, 0xe3, 0x5c, 0x3a, 0xee, 0x3b, 0x0b, 0x13, 0x22, 0xb3, 0x62, 0xfa, 0x08, 0x49, 0x7c, 0x09, 0x7c, 0x18, 0x81, 0x93, 0x4e, 0x36, 0xce, 0xbd, 0x5e, 0x18, 0xe9, 0x24, 0x0c, 0xb6, }; static const unsigned char ecdh_secp384r1_2949_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2949_sharedsecret[] = { 0xa4, 0x54, 0xff, 0x4d, 0x94, 0x45, 0x87, 0xa1, 0x88, 0xe7, 0xeb, 0xac, 0xcd, 0x97, 0x64, 0x9a, 0xb0, 0xcf, 0x83, 0xf8, 0xf8, 0xd1, 0x9b, 0x36, 0x53, 0xa2, 0xe6, 0x21, 0x20, 0x6d, 0x39, 0x92, 0x86, 0x8b, 0x5a, 0x57, 0x65, 0xd1, 0xfa, 0x76, 0x2f, 0x0e, 0x3b, 0x01, 0x61, 0xa6, 0x80, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2949 = { .name = "ecdh_secp384r1_2949", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2949_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2949_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2949_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 442 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2950 for ECDH, tcId is 443 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2950_peerpubkey[] = { 0x73, 0x1b, 0xa7, 0x84, 0xe2, 0xed, 0x21, 0xf4, 0xa4, 0xa2, 0xb4, 0xdd, 0x48, 0x77, 0xae, 0xc2, 0xfc, 0xd5, 0x90, 0x31, 0xf8, 0x01, 0x93, 0xb9, 0x55, 0x8b, 0xbc, 0x1c, 0xf7, 0xfe, 0x67, 0x04, 0x46, 0x94, 0x43, 0xfc, 0x7f, 0x39, 0x8e, 0x8b, 0xec, 0x40, 0x86, 0xf8, 0x8a, 0xa7, 0x6a, 0xa2, 0x6c, 0x38, 0x9a, 0xcf, 0xd5, 0x1f, 0x69, 0xc8, 0x9a, 0x15, 0x3b, 0xfa, 0xdb, 0x5d, 0x70, 0x3a, 0x36, 0xcb, 0x12, 0xa4, 0xd8, 0x5f, 0x55, 0x17, 0xcf, 0x46, 0x2b, 0xf5, 0xd0, 0x2a, 0xbf, 0x7d, 0x19, 0x72, 0x2f, 0x48, 0x0e, 0xaf, 0x1a, 0x26, 0x17, 0xcb, 0xa1, 0x94, 0x1e, 0x1c, 0x76, 0xb6, }; static const unsigned char ecdh_secp384r1_2950_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2950_sharedsecret[] = { 0x99, 0x78, 0x0e, 0xd2, 0x15, 0xdc, 0x41, 0x7f, 0x79, 0x8c, 0x24, 0x32, 0x7c, 0x3c, 0xaf, 0x22, 0xf3, 0x68, 0x5e, 0x5c, 0xf2, 0xab, 0x83, 0x5f, 0xc5, 0x4b, 0x42, 0x81, 0x17, 0xb7, 0xd1, 0x7f, 0x0f, 0xeb, 0x63, 0xf1, 0x75, 0x54, 0x68, 0x15, 0x7f, 0x32, 0x37, 0xb8, 0x11, 0x7d, 0xff, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2950 = { .name = "ecdh_secp384r1_2950", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2950_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2950_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2950_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 443 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2951 for ECDH, tcId is 444 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2951_peerpubkey[] = { 0x87, 0x25, 0xcb, 0x75, 0x4b, 0x55, 0x27, 0xa3, 0xb0, 0x53, 0xd6, 0x3e, 0x0c, 0x4b, 0x09, 0x7e, 0x4c, 0x34, 0xc5, 0xd7, 0x31, 0xab, 0x5c, 0xd4, 0x72, 0x86, 0x50, 0xa6, 0x18, 0xb4, 0xde, 0xd4, 0xbf, 0x92, 0x14, 0xd7, 0x93, 0xad, 0x74, 0xcf, 0xc4, 0x70, 0xe3, 0x5c, 0x54, 0x93, 0xa4, 0xb4, 0x20, 0xa3, 0xc5, 0x00, 0x49, 0xa4, 0x27, 0x91, 0x72, 0x1b, 0xc5, 0x0d, 0x5f, 0x60, 0x8c, 0xb2, 0x72, 0xb6, 0x0a, 0x55, 0x45, 0xdb, 0x06, 0x08, 0x85, 0x5b, 0xac, 0x8f, 0xbf, 0xa9, 0x39, 0x90, 0xd6, 0xb8, 0x0e, 0x30, 0x41, 0x77, 0x3e, 0x10, 0x93, 0x7d, 0x83, 0x70, 0x10, 0xca, 0xe6, 0x40, }; static const unsigned char ecdh_secp384r1_2951_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2951_sharedsecret[] = { 0xd7, 0x38, 0xb7, 0x37, 0x3f, 0xe9, 0x78, 0xf2, 0x7b, 0x19, 0x4f, 0x69, 0xed, 0xd5, 0xc4, 0x21, 0xb9, 0x89, 0x22, 0xf5, 0xe3, 0x13, 0xb7, 0x68, 0x59, 0xa9, 0x35, 0x7a, 0x1f, 0xaf, 0x42, 0xed, 0x0e, 0x06, 0xdc, 0x13, 0xd5, 0x58, 0x43, 0x35, 0x75, 0x38, 0xce, 0x7f, 0x41, 0x27, 0xce, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_2951 = { .name = "ecdh_secp384r1_2951", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2951_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2951_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2951_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 444 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2952 for ECDH, tcId is 445 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2952_peerpubkey[] = { 0x9c, 0x7a, 0x59, 0x4e, 0xaf, 0x2d, 0xdf, 0x3c, 0x8a, 0xb6, 0xc6, 0xe9, 0x4f, 0x1e, 0xc0, 0x11, 0xda, 0xc9, 0xfa, 0x42, 0xbd, 0x27, 0xdf, 0x2f, 0xbe, 0x40, 0x2a, 0xc9, 0x49, 0xd3, 0xa2, 0xc6, 0x76, 0xb6, 0x84, 0xa2, 0x4c, 0x99, 0xf7, 0xd1, 0xb7, 0xe8, 0x9e, 0x9f, 0x8a, 0x06, 0x34, 0xeb, 0x3b, 0x83, 0x09, 0x5c, 0x7a, 0x1c, 0xd6, 0xaa, 0x93, 0x32, 0x46, 0x0e, 0xcb, 0xf2, 0x57, 0xf7, 0xaf, 0xa4, 0x49, 0x60, 0x8b, 0x9e, 0x0d, 0xdd, 0x15, 0x29, 0x2b, 0x87, 0x5a, 0xd2, 0xfd, 0x06, 0x9d, 0xc9, 0x27, 0xce, 0x00, 0xa4, 0xb5, 0xe6, 0x79, 0x33, 0x80, 0x23, 0xbd, 0x3a, 0x4e, 0x6c, }; static const unsigned char ecdh_secp384r1_2952_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2952_sharedsecret[] = { 0xd9, 0xcc, 0x86, 0x1d, 0xb3, 0x05, 0xb0, 0x4a, 0x27, 0x3d, 0x6b, 0x55, 0x34, 0x8e, 0xf9, 0xf0, 0xa0, 0xa2, 0xae, 0xdf, 0x8b, 0x3d, 0x04, 0x1a, 0x19, 0xe2, 0x63, 0xed, 0x6a, 0xe2, 0xe0, 0x1e, 0x43, 0x9a, 0x46, 0x82, 0x30, 0x98, 0xf2, 0xaa, 0xa4, 0x86, 0x7d, 0x4f, 0x08, 0x89, 0x1e, 0x36, }; static const wycheproof_ecdh_test ecdh_secp384r1_2952 = { .name = "ecdh_secp384r1_2952", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2952_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2952_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2952_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 445 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2953 for ECDH, tcId is 446 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2953_peerpubkey[] = { 0x21, 0xb1, 0xaa, 0x35, 0x9d, 0x72, 0xff, 0x33, 0xa8, 0x4e, 0xc9, 0x62, 0x14, 0x83, 0xe6, 0x58, 0x81, 0xd4, 0xfa, 0x8c, 0xe6, 0xdf, 0x36, 0x69, 0xe0, 0xab, 0xbb, 0x9f, 0x6b, 0xf8, 0xd0, 0xee, 0x3d, 0x98, 0x62, 0xa7, 0xdf, 0xb4, 0x52, 0x13, 0xe3, 0x9f, 0xfa, 0xc7, 0xb3, 0xe1, 0xed, 0x87, 0x1f, 0x5e, 0x59, 0xcd, 0xa5, 0xa5, 0xb8, 0x61, 0xab, 0x3e, 0xb8, 0x6c, 0xaa, 0x7c, 0x6e, 0x85, 0x93, 0x36, 0x76, 0xef, 0xe6, 0x60, 0xdf, 0xf8, 0xac, 0x56, 0x25, 0xec, 0x8a, 0x76, 0x30, 0xa9, 0xcb, 0xa9, 0xeb, 0x3f, 0xc1, 0x49, 0xd3, 0xef, 0x37, 0x9d, 0x4a, 0x5e, 0xc1, 0x74, 0xd2, 0x37, }; static const unsigned char ecdh_secp384r1_2953_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2953_sharedsecret[] = { 0xc5, 0x92, 0x81, 0xd0, 0x9f, 0x44, 0xf6, 0x79, 0x29, 0x4a, 0xee, 0x56, 0x68, 0xeb, 0x53, 0x8d, 0x50, 0x3e, 0xf2, 0x5a, 0xac, 0x59, 0x16, 0x14, 0xb4, 0x6f, 0x52, 0x5d, 0x8c, 0x0b, 0x10, 0x9a, 0xb1, 0x29, 0x67, 0x49, 0x63, 0x50, 0x0a, 0xd7, 0xb6, 0x26, 0x89, 0x41, 0xa2, 0x8c, 0x00, 0x67, }; static const wycheproof_ecdh_test ecdh_secp384r1_2953 = { .name = "ecdh_secp384r1_2953", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2953_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2953_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2953_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 446 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2954 for ECDH, tcId is 447 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2954_peerpubkey[] = { 0xe1, 0xad, 0x2b, 0x68, 0xfa, 0x69, 0x45, 0x65, 0x74, 0xde, 0x95, 0xb1, 0xe0, 0x48, 0xb0, 0x71, 0x50, 0x09, 0x40, 0x9e, 0xf5, 0xcc, 0x27, 0x0b, 0xe5, 0x1f, 0xdd, 0x40, 0xb4, 0xf6, 0x5b, 0x1a, 0xde, 0x67, 0x93, 0x8a, 0x6a, 0x6d, 0x72, 0x5b, 0x01, 0x31, 0x0f, 0x22, 0x53, 0xa3, 0x8c, 0xf4, 0x44, 0xf7, 0x26, 0xb3, 0xeb, 0x5c, 0x5d, 0xdc, 0x25, 0x7d, 0x6d, 0x9b, 0xda, 0x9b, 0xfa, 0x60, 0xbe, 0xc6, 0xa0, 0x7f, 0xe0, 0x7d, 0xae, 0x96, 0x75, 0x11, 0x31, 0x43, 0x70, 0xd3, 0xa4, 0xe0, 0x41, 0xc3, 0x4f, 0x1c, 0xb4, 0x9f, 0xe6, 0xb7, 0x06, 0x63, 0xf0, 0x20, 0x48, 0x8e, 0x98, 0xa8, }; static const unsigned char ecdh_secp384r1_2954_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2954_sharedsecret[] = { 0x9e, 0xb7, 0x0f, 0x89, 0x49, 0x86, 0x1c, 0x30, 0xf2, 0x45, 0x69, 0x90, 0xab, 0xe4, 0xd3, 0x45, 0x55, 0x00, 0x08, 0xb8, 0x53, 0x19, 0x01, 0x52, 0x13, 0x61, 0xaa, 0xa1, 0x72, 0x96, 0xdb, 0xca, 0x06, 0xfb, 0x3c, 0x87, 0xe8, 0xf4, 0x59, 0x2b, 0x7d, 0xc5, 0xd1, 0x99, 0x7c, 0x58, 0xc0, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_2954 = { .name = "ecdh_secp384r1_2954", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2954_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2954_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2954_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 447 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2955 for ECDH, tcId is 448 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2955_peerpubkey[] = { 0x0b, 0xad, 0x67, 0xea, 0x0c, 0xca, 0x96, 0x0e, 0xd3, 0xea, 0x05, 0x88, 0xd5, 0xee, 0xef, 0x36, 0x6c, 0x24, 0x34, 0x2a, 0xb3, 0xe4, 0x66, 0x02, 0x89, 0x1d, 0x1a, 0xdb, 0x4d, 0x85, 0xd8, 0x0d, 0xd2, 0x42, 0x96, 0x2c, 0x56, 0x54, 0xbd, 0x6a, 0xf5, 0x91, 0x3a, 0xea, 0xef, 0xab, 0x27, 0xad, 0x9a, 0x07, 0xb4, 0x19, 0x71, 0x80, 0xc9, 0x86, 0x9a, 0xf7, 0x95, 0xf6, 0x96, 0xfd, 0xf6, 0xf2, 0x5c, 0xdc, 0x66, 0x46, 0x9f, 0x4c, 0xa7, 0xca, 0x89, 0xc5, 0xc9, 0x04, 0x63, 0x6d, 0x85, 0xf6, 0xb9, 0xa1, 0x9e, 0x7b, 0xcf, 0x05, 0x40, 0x83, 0x1c, 0xa7, 0xaa, 0x40, 0x44, 0x6d, 0xd8, 0xe1, }; static const unsigned char ecdh_secp384r1_2955_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_2955_sharedsecret[] = { 0x45, 0xb0, 0x2f, 0xd4, 0xdd, 0x76, 0x49, 0x67, 0x01, 0xbe, 0x3b, 0x37, 0xe6, 0x32, 0x05, 0x6c, 0xf7, 0xf6, 0x3e, 0x98, 0x08, 0xf6, 0x27, 0xfa, 0x85, 0x8e, 0xec, 0xc5, 0xba, 0xc1, 0x6a, 0x01, 0xa9, 0x49, 0x74, 0x1b, 0x4d, 0xe1, 0x51, 0xfe, 0x35, 0xe7, 0x74, 0xc6, 0xd1, 0xe3, 0x89, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2955 = { .name = "ecdh_secp384r1_2955", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2955_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2955_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2955_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 448 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2956 for ECDH, tcId is 449 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2956_peerpubkey[] = { 0x2c, 0x40, 0x69, 0xbc, 0x80, 0x78, 0x23, 0x6e, 0xb2, 0x3a, 0x8c, 0x4d, 0x57, 0x5b, 0xde, 0x9b, 0x53, 0x7b, 0x13, 0xb7, 0x99, 0x89, 0x68, 0x8c, 0x40, 0xd8, 0x9d, 0x89, 0x8a, 0x8c, 0x29, 0xbd, 0x7a, 0xc6, 0x17, 0x45, 0x79, 0x7b, 0x7e, 0xe5, 0x5a, 0xca, 0x60, 0xea, 0x7d, 0x6c, 0x2a, 0x84, 0x30, 0xfc, 0xfb, 0xed, 0x18, 0xa2, 0x50, 0x46, 0x61, 0xe0, 0x25, 0x3c, 0x43, 0xe4, 0x7b, 0xe0, 0x19, 0x40, 0xe8, 0x1f, 0xcb, 0x2d, 0x65, 0xa5, 0xe5, 0x01, 0x11, 0x19, 0x78, 0x05, 0x99, 0x49, 0xc5, 0xd2, 0x5b, 0x0b, 0x60, 0xde, 0x78, 0x21, 0x47, 0x6b, 0x88, 0xa8, 0x34, 0x2a, 0x0b, 0xdf, }; static const unsigned char ecdh_secp384r1_2956_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2956_sharedsecret[] = { 0x6c, 0xe9, 0xbf, 0xfb, 0x89, 0x01, 0xba, 0xa8, 0x01, 0xd1, 0xb1, 0x9e, 0x92, 0xb5, 0xe5, 0xf4, 0x7f, 0x5b, 0xee, 0x10, 0xc1, 0x5f, 0xe4, 0x4b, 0x82, 0x09, 0x97, 0x75, 0x72, 0xcc, 0x8b, 0xd7, 0x90, 0x2c, 0xcf, 0xc0, 0xd7, 0xae, 0x98, 0xf6, 0xb5, 0x8b, 0xb8, 0x7f, 0x31, 0x6a, 0x57, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_2956 = { .name = "ecdh_secp384r1_2956", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2956_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2956_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2956_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 449 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2957 for ECDH, tcId is 450 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2957_peerpubkey[] = { 0x44, 0xbc, 0x1c, 0xb2, 0xd4, 0x2f, 0xf9, 0x74, 0xe7, 0x2b, 0xc8, 0x83, 0xdf, 0xf7, 0x84, 0xe8, 0x69, 0x78, 0x50, 0x1f, 0x91, 0x8e, 0xef, 0x4d, 0x96, 0xd6, 0xe5, 0x24, 0x2d, 0xa6, 0xf5, 0x65, 0x1a, 0x29, 0xcf, 0x52, 0x05, 0xc3, 0xdc, 0x3b, 0xe3, 0x33, 0x32, 0xfa, 0x2d, 0xef, 0xc3, 0x47, 0x88, 0xf8, 0x8f, 0x54, 0x9e, 0xd7, 0x87, 0x32, 0x06, 0x30, 0x20, 0xdd, 0x3f, 0xcb, 0x87, 0x25, 0x15, 0xb2, 0x5e, 0x08, 0x87, 0x00, 0xe3, 0xea, 0xcb, 0x92, 0x5d, 0xe7, 0x67, 0xe9, 0xed, 0xf6, 0xe8, 0x9f, 0x08, 0x9c, 0x4f, 0x9e, 0x0f, 0x4d, 0x88, 0x46, 0x98, 0x03, 0x93, 0x66, 0x7f, 0x6d, }; static const unsigned char ecdh_secp384r1_2957_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2957_sharedsecret[] = { 0xc6, 0xdd, 0x2d, 0x37, 0x2d, 0x5a, 0x51, 0x73, 0xac, 0x63, 0xf6, 0xd5, 0xab, 0x5d, 0xec, 0x97, 0x2e, 0x8a, 0xe4, 0x4d, 0x56, 0x6c, 0x7f, 0x82, 0x6b, 0xeb, 0x7f, 0x26, 0x93, 0xe2, 0x00, 0xc4, 0x70, 0xdd, 0xed, 0xb1, 0xc9, 0x92, 0x9c, 0x11, 0xed, 0x86, 0xd1, 0x35, 0xf4, 0x4c, 0x97, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2957 = { .name = "ecdh_secp384r1_2957", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2957_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2957_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2957_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 450 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2958 for ECDH, tcId is 451 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2958_peerpubkey[] = { 0xb8, 0x24, 0xeb, 0x72, 0xc4, 0x3e, 0xdb, 0x5b, 0x3c, 0xe9, 0xaf, 0x94, 0xeb, 0xbd, 0x33, 0xb4, 0x46, 0xb4, 0xa7, 0x23, 0x3b, 0x89, 0xaf, 0xfe, 0x1c, 0xfa, 0x3b, 0xeb, 0x53, 0xcd, 0x19, 0x9f, 0xb1, 0x19, 0xa3, 0x56, 0x77, 0x2b, 0xfe, 0xc1, 0x78, 0xc0, 0x3b, 0x07, 0x7d, 0xf1, 0x2f, 0x53, 0xf9, 0x98, 0x51, 0xfb, 0xeb, 0x99, 0x71, 0xff, 0xcf, 0x29, 0xad, 0x61, 0xba, 0x48, 0x4b, 0xd0, 0x58, 0x00, 0x36, 0xdc, 0xaa, 0x59, 0xf4, 0x07, 0xbc, 0x88, 0xa4, 0x71, 0xcd, 0x86, 0x2b, 0x80, 0xa1, 0x63, 0xc9, 0x1a, 0x6f, 0x64, 0x60, 0x2b, 0x6f, 0x71, 0x39, 0x59, 0xb2, 0xf6, 0xc2, 0xfd, }; static const unsigned char ecdh_secp384r1_2958_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2958_sharedsecret[] = { 0x02, 0x99, 0xb7, 0xfc, 0x3e, 0x55, 0x06, 0x92, 0x6f, 0xea, 0x66, 0xd2, 0x0f, 0x65, 0xb9, 0x79, 0x1f, 0xb6, 0xc8, 0x8c, 0x71, 0x79, 0xf7, 0xd4, 0x70, 0x1d, 0x68, 0xc1, 0x34, 0x27, 0xab, 0x56, 0xac, 0x0f, 0x9e, 0x1d, 0xa9, 0x6c, 0x1d, 0x5f, 0x3d, 0x1a, 0x65, 0xff, 0x31, 0x22, 0xc1, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_2958 = { .name = "ecdh_secp384r1_2958", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2958_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2958_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2958_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 451 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2959 for ECDH, tcId is 452 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2959_peerpubkey[] = { 0x92, 0x70, 0xb8, 0xce, 0xfb, 0x61, 0xa5, 0xd5, 0x2f, 0xbb, 0x5e, 0x6b, 0x3b, 0x62, 0x36, 0x1f, 0x3a, 0xfa, 0x5d, 0x1a, 0x6b, 0x01, 0x41, 0x9d, 0xb9, 0x26, 0x6e, 0x2d, 0xba, 0xba, 0xb3, 0x6a, 0xea, 0x5b, 0x19, 0x61, 0x31, 0x8e, 0xaf, 0x8f, 0x0b, 0xd7, 0xcc, 0xa7, 0x5f, 0xf2, 0xdf, 0x5b, 0x7e, 0x53, 0x8c, 0x63, 0x01, 0x2a, 0x73, 0xf7, 0x77, 0xb2, 0x5e, 0x17, 0x37, 0xd4, 0x4f, 0xdb, 0xc2, 0x99, 0xa7, 0x62, 0x88, 0xd7, 0xbc, 0xb5, 0x7c, 0x84, 0x84, 0xc7, 0x1c, 0x9b, 0xb6, 0x45, 0x32, 0x45, 0xf2, 0x39, 0xb6, 0xc6, 0xdf, 0x32, 0x89, 0x84, 0x24, 0x38, 0x3b, 0x4c, 0x03, 0x09, }; static const unsigned char ecdh_secp384r1_2959_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2959_sharedsecret[] = { 0x13, 0xd7, 0x8b, 0x7a, 0x4d, 0xaf, 0x8d, 0xdd, 0x62, 0xe3, 0x47, 0xba, 0x23, 0x5c, 0x36, 0x48, 0x6f, 0xb2, 0xeb, 0x4a, 0x75, 0xa3, 0xe1, 0x7a, 0x13, 0x7e, 0xc6, 0xc2, 0xde, 0x37, 0xab, 0xaf, 0x45, 0xda, 0x92, 0xd1, 0xcf, 0x1b, 0x29, 0x66, 0xde, 0xd8, 0xd5, 0x38, 0x1f, 0xd2, 0x31, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2959 = { .name = "ecdh_secp384r1_2959", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2959_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2959_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2959_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 452 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2960 for ECDH, tcId is 453 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2960_peerpubkey[] = { 0x19, 0xe5, 0xc2, 0x86, 0x57, 0x47, 0x9e, 0xb4, 0x1d, 0x37, 0x18, 0xf6, 0x3e, 0x06, 0x78, 0xbe, 0x0d, 0xaa, 0x58, 0x50, 0x2a, 0x54, 0x06, 0xd6, 0x59, 0x13, 0x56, 0x7d, 0xf7, 0xb8, 0x6a, 0xb2, 0x5e, 0x90, 0x5e, 0xc8, 0x46, 0x78, 0x95, 0x30, 0xd8, 0x1d, 0x8d, 0x1f, 0xc2, 0xa8, 0xca, 0xde, 0x4a, 0xaf, 0x13, 0x1a, 0x0c, 0xcf, 0xc7, 0x9a, 0x24, 0xbc, 0x88, 0x9c, 0x95, 0x32, 0x49, 0xee, 0x85, 0xb4, 0x9e, 0x2a, 0x1b, 0xfa, 0x52, 0x16, 0x7f, 0xe2, 0x0d, 0xe2, 0x96, 0xe6, 0x49, 0x7e, 0xf9, 0x01, 0x4c, 0x2c, 0xd0, 0xa0, 0x2a, 0xfb, 0xad, 0x1f, 0x9d, 0x00, 0xac, 0x3d, 0x92, 0x4d, }; static const unsigned char ecdh_secp384r1_2960_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2960_sharedsecret[] = { 0x7b, 0x08, 0x63, 0xfc, 0x6d, 0x72, 0xc4, 0xbd, 0x05, 0x85, 0x76, 0xcf, 0xf7, 0xa4, 0xae, 0xdf, 0x86, 0x48, 0x2d, 0x3d, 0x9b, 0xc9, 0xc5, 0xfc, 0x55, 0xbd, 0x8f, 0xac, 0x84, 0x10, 0x7d, 0xd0, 0xbf, 0x9f, 0x27, 0xd7, 0xe8, 0xd6, 0x24, 0xed, 0xb0, 0xaa, 0x6e, 0xf1, 0xb9, 0xcc, 0x22, 0x46, }; static const wycheproof_ecdh_test ecdh_secp384r1_2960 = { .name = "ecdh_secp384r1_2960", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2960_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2960_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2960_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 453 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2961 for ECDH, tcId is 454 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2961_peerpubkey[] = { 0x59, 0x66, 0x6d, 0xf4, 0x47, 0xda, 0xbc, 0x38, 0x6d, 0x8d, 0xdd, 0xae, 0x93, 0x54, 0x3d, 0xc7, 0x61, 0x51, 0xf7, 0xc1, 0xc0, 0x48, 0x58, 0x66, 0x0d, 0x9c, 0xa8, 0xe0, 0x65, 0x5b, 0x51, 0xa7, 0x2f, 0xef, 0xfb, 0x70, 0x85, 0xba, 0xcb, 0xde, 0x15, 0x3f, 0xea, 0x75, 0xb5, 0x71, 0x6a, 0xb5, 0xc3, 0xc7, 0x81, 0x1d, 0x0c, 0x74, 0x35, 0xbe, 0x9e, 0x36, 0xdb, 0x00, 0xcd, 0x29, 0xc6, 0xca, 0x87, 0x9e, 0xf9, 0x91, 0xad, 0xb1, 0x57, 0xa6, 0xb4, 0xbf, 0x56, 0xe3, 0xde, 0x5c, 0xb3, 0x45, 0x98, 0xb7, 0x9a, 0x68, 0x4c, 0xc3, 0xd4, 0xe2, 0x3f, 0x22, 0xd1, 0x00, 0x63, 0xe8, 0xd1, 0x9c, }; static const unsigned char ecdh_secp384r1_2961_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2961_sharedsecret[] = { 0xfb, 0xa2, 0xbd, 0xfb, 0x54, 0xe4, 0x68, 0xa4, 0xff, 0x5a, 0xfb, 0xaa, 0x54, 0xc7, 0x03, 0x74, 0x00, 0xd7, 0x64, 0x14, 0xc9, 0x8e, 0xaf, 0xaa, 0x41, 0x9a, 0xda, 0xb0, 0xdf, 0x50, 0xc9, 0x69, 0x2a, 0xac, 0x67, 0xd4, 0x4a, 0x9e, 0xfb, 0xd0, 0x0d, 0x4f, 0x9c, 0xfc, 0x20, 0x6d, 0x53, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2961 = { .name = "ecdh_secp384r1_2961", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2961_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2961_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2961_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 454 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2962 for ECDH, tcId is 455 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2962_peerpubkey[] = { 0x3b, 0xaf, 0xce, 0x9b, 0x32, 0x61, 0x6f, 0x3b, 0xde, 0x17, 0xfc, 0x98, 0x9f, 0x1e, 0x55, 0x6f, 0x92, 0xfa, 0xf5, 0xc3, 0x0e, 0x2c, 0xdd, 0xeb, 0xc2, 0xab, 0xa4, 0x4e, 0xdf, 0x36, 0xae, 0x39, 0x57, 0xc9, 0xc6, 0x10, 0xa3, 0x45, 0x21, 0xe6, 0xac, 0x45, 0x46, 0x52, 0xaa, 0x59, 0x78, 0x11, 0x82, 0x7b, 0x4f, 0xf4, 0x5f, 0x99, 0x1f, 0x94, 0x05, 0xf2, 0xd8, 0xcf, 0x45, 0xd5, 0xd0, 0x87, 0x6a, 0x26, 0x0e, 0xf0, 0xde, 0xb6, 0xe8, 0x60, 0x90, 0xc5, 0xb4, 0x5f, 0x5b, 0x7b, 0x17, 0x86, 0x10, 0x53, 0x24, 0xf4, 0x0a, 0x0d, 0x2b, 0x43, 0xde, 0xd5, 0x78, 0x68, 0xb3, 0x8b, 0x43, 0xef, }; static const unsigned char ecdh_secp384r1_2962_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2962_sharedsecret[] = { 0xba, 0x9b, 0x68, 0xd1, 0xc0, 0x0a, 0xa1, 0x24, 0x6e, 0xda, 0xfb, 0x70, 0xdb, 0x6d, 0xda, 0xed, 0x85, 0x70, 0xc4, 0x65, 0xd9, 0xa5, 0x83, 0x6d, 0x41, 0x56, 0xa1, 0xac, 0x7f, 0xda, 0x2a, 0x20, 0x9c, 0x25, 0x47, 0x1a, 0x0d, 0xf6, 0xd7, 0xde, 0x93, 0xf9, 0x80, 0xc8, 0x9c, 0x84, 0x16, 0x20, }; static const wycheproof_ecdh_test ecdh_secp384r1_2962 = { .name = "ecdh_secp384r1_2962", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2962_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2962_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2962_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 455 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2963 for ECDH, tcId is 456 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2963_peerpubkey[] = { 0x53, 0x38, 0x5b, 0x93, 0x03, 0xd2, 0xc5, 0xd1, 0xea, 0x83, 0xe7, 0x70, 0x0b, 0x3e, 0x81, 0x1a, 0x7c, 0x90, 0x5d, 0x17, 0x75, 0xc3, 0x79, 0xa4, 0x4e, 0x9e, 0x5c, 0x96, 0x82, 0x15, 0x59, 0x70, 0x0b, 0x49, 0x2e, 0xe2, 0x86, 0x8c, 0x5a, 0x01, 0x95, 0x0a, 0xa4, 0xe2, 0xb0, 0x59, 0x32, 0xee, 0x8f, 0xa1, 0xbd, 0x83, 0x03, 0x5a, 0xab, 0xba, 0xbc, 0x2b, 0xe7, 0xb6, 0x1f, 0x38, 0x8f, 0x78, 0xb8, 0x04, 0x6d, 0x36, 0xbe, 0xe9, 0x9b, 0x54, 0x89, 0xba, 0xfb, 0x3a, 0x86, 0xde, 0xde, 0x29, 0xc1, 0x4d, 0x53, 0x73, 0xed, 0x9b, 0xac, 0x72, 0xa9, 0x2a, 0xb8, 0xe7, 0xc3, 0x1f, 0xb8, 0x6a, }; static const unsigned char ecdh_secp384r1_2963_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2963_sharedsecret[] = { 0x33, 0xc6, 0xc7, 0xe2, 0xc8, 0x05, 0x88, 0x9c, 0xaa, 0xe5, 0x67, 0x9a, 0xa0, 0x24, 0xdd, 0x79, 0xf5, 0x44, 0x56, 0xf7, 0x98, 0xef, 0xf0, 0xa0, 0xdd, 0xcc, 0x1b, 0x28, 0xd8, 0xad, 0x30, 0x2d, 0x2f, 0x67, 0x09, 0x22, 0x75, 0xff, 0x55, 0xf8, 0xf4, 0xd9, 0x93, 0x57, 0xac, 0x86, 0xce, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_2963 = { .name = "ecdh_secp384r1_2963", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2963_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2963_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2963_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 456 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2964 for ECDH, tcId is 457 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2964_peerpubkey[] = { 0x9e, 0xbf, 0x8d, 0x31, 0x3d, 0xa3, 0xe5, 0xba, 0x23, 0x7e, 0xe3, 0x3e, 0x6d, 0xd5, 0xbe, 0x77, 0x03, 0x90, 0xf8, 0x37, 0xc9, 0x52, 0x8f, 0xbd, 0xd4, 0x40, 0xa9, 0xeb, 0x2b, 0xa1, 0xcf, 0xfb, 0x27, 0x83, 0x7d, 0x86, 0x5c, 0xbe, 0x1b, 0x32, 0xff, 0x9c, 0x79, 0x95, 0xd5, 0xdd, 0x51, 0x1c, 0xaa, 0x41, 0x25, 0xec, 0x25, 0x8d, 0x18, 0x2e, 0xe7, 0xf7, 0x17, 0x3c, 0xa1, 0xd1, 0x71, 0x39, 0xae, 0x13, 0xe6, 0x07, 0x2a, 0xcd, 0x97, 0x0b, 0xa5, 0x6f, 0x6d, 0x50, 0x34, 0xe9, 0xf4, 0x5d, 0xa3, 0x6b, 0x2e, 0xc7, 0x74, 0x34, 0x9b, 0xe2, 0x16, 0x8f, 0x32, 0xbb, 0xf0, 0x4f, 0x9a, 0x31, }; static const unsigned char ecdh_secp384r1_2964_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2964_sharedsecret[] = { 0x0d, 0xee, 0xb0, 0x1d, 0xec, 0xaa, 0xe0, 0xee, 0xe5, 0x5e, 0x2c, 0x29, 0x50, 0x1c, 0xdd, 0x9c, 0xf7, 0xd4, 0xdb, 0x2f, 0x16, 0x79, 0xfb, 0x72, 0xef, 0xca, 0xa5, 0xdb, 0x6e, 0x05, 0xcc, 0x4a, 0x65, 0x84, 0x80, 0x24, 0x5c, 0x59, 0xfe, 0xc9, 0x98, 0x4c, 0x61, 0x35, 0x01, 0x41, 0x1b, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_2964 = { .name = "ecdh_secp384r1_2964", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2964_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2964_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2964_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 457 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2965 for ECDH, tcId is 458 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2965_peerpubkey[] = { 0xd4, 0xcd, 0x22, 0xe8, 0xdf, 0xa6, 0x20, 0xca, 0x7d, 0x68, 0xe2, 0x90, 0x45, 0x1b, 0x09, 0x28, 0x52, 0x98, 0xa1, 0xdb, 0x5a, 0x7c, 0xa0, 0x0e, 0xa8, 0x30, 0xd6, 0xe9, 0xec, 0x9c, 0xc4, 0xd0, 0x3f, 0x5c, 0xd4, 0x3f, 0xb2, 0xa9, 0xaa, 0xaa, 0x14, 0x2f, 0xe4, 0xc6, 0xe2, 0x26, 0x9c, 0xdc, 0x74, 0x7e, 0x0c, 0xa0, 0x7e, 0x38, 0xf4, 0xc5, 0xb4, 0x12, 0xe5, 0x2c, 0xb7, 0x93, 0x0c, 0x38, 0x11, 0x00, 0xd2, 0xaa, 0xfe, 0x54, 0xb6, 0x19, 0xeb, 0xf7, 0x2e, 0x81, 0xa4, 0x6e, 0x11, 0x49, 0x63, 0x5d, 0x25, 0xa3, 0x7f, 0xa6, 0x6e, 0x2d, 0x1b, 0xc9, 0xac, 0x25, 0xfc, 0x1a, 0x83, 0xf3, }; static const unsigned char ecdh_secp384r1_2965_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2965_sharedsecret[] = { 0xd3, 0x60, 0x75, 0x3c, 0x56, 0x86, 0x98, 0xd7, 0xf7, 0xb2, 0x61, 0xdd, 0x2f, 0x50, 0x64, 0xff, 0xc8, 0xaa, 0x9f, 0x03, 0x34, 0x3a, 0x22, 0x91, 0xb9, 0x67, 0x63, 0x26, 0x46, 0xd5, 0x15, 0x70, 0x56, 0x2f, 0x1a, 0xe8, 0x77, 0x75, 0x64, 0x8e, 0x74, 0xf9, 0xf3, 0x0e, 0x96, 0x6e, 0x73, 0x80, }; static const wycheproof_ecdh_test ecdh_secp384r1_2965 = { .name = "ecdh_secp384r1_2965", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2965_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2965_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2965_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 458 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2966 for ECDH, tcId is 459 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2966_peerpubkey[] = { 0x21, 0xb9, 0x1b, 0x9c, 0x37, 0x4e, 0xcf, 0x5c, 0xed, 0xc6, 0xd7, 0x34, 0x22, 0xc6, 0x53, 0x9b, 0x22, 0xae, 0x5d, 0xb6, 0x1b, 0xfd, 0xb0, 0x6b, 0x9c, 0x89, 0xe6, 0x81, 0x12, 0xf6, 0x43, 0x3e, 0x9d, 0x49, 0x71, 0x5f, 0x47, 0x45, 0x34, 0xfb, 0x9c, 0xd6, 0xc2, 0xcb, 0xfc, 0xde, 0xf9, 0x4f, 0xb5, 0xd4, 0xfe, 0x30, 0x6d, 0x59, 0x02, 0x5a, 0xf4, 0xe8, 0x8f, 0x8c, 0xb3, 0xdd, 0xc3, 0xd6, 0x4f, 0x70, 0x7e, 0x68, 0x20, 0xb4, 0x1c, 0xdf, 0xc0, 0x55, 0xcd, 0x67, 0x62, 0xda, 0x23, 0xde, 0x01, 0xc1, 0xb3, 0x11, 0xf1, 0xa5, 0xbf, 0x70, 0x10, 0xc4, 0xff, 0x4e, 0xd0, 0xa7, 0xe8, 0x4c, }; static const unsigned char ecdh_secp384r1_2966_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2966_sharedsecret[] = { 0x59, 0x6a, 0xf7, 0x12, 0x09, 0xcd, 0xd2, 0x3c, 0x38, 0x6b, 0xb8, 0x61, 0xed, 0xbd, 0x17, 0x1e, 0xa9, 0xbc, 0x6a, 0x85, 0x89, 0x93, 0x11, 0x0c, 0x93, 0x33, 0xa9, 0x56, 0xb3, 0xa0, 0x3f, 0xc0, 0xf5, 0x53, 0x93, 0xca, 0x46, 0xbb, 0x15, 0xbc, 0xf9, 0xf1, 0x2b, 0x49, 0x64, 0x59, 0xc4, 0xe6, }; static const wycheproof_ecdh_test ecdh_secp384r1_2966 = { .name = "ecdh_secp384r1_2966", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2966_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2966_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2966_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 459 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2967 for ECDH, tcId is 460 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2967_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_2967_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2967_sharedsecret[] = { 0x96, 0x87, 0x6e, 0x9e, 0xd8, 0x9e, 0xdf, 0x3e, 0x3d, 0xfd, 0x8e, 0xad, 0x06, 0xdc, 0xba, 0x0a, 0xcd, 0xce, 0x77, 0x63, 0xeb, 0x98, 0xad, 0xed, 0x82, 0x97, 0x6f, 0xa3, 0x61, 0x81, 0xc7, 0x9a, 0xc4, 0xe8, 0x33, 0xdf, 0x38, 0x5a, 0xf5, 0xee, 0x86, 0x0c, 0xa1, 0xf2, 0x0d, 0xf4, 0xcb, 0x72, }; static const wycheproof_ecdh_test ecdh_secp384r1_2967 = { .name = "ecdh_secp384r1_2967", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2967_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2967_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2967_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 460 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2968 for ECDH, tcId is 461 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2968_peerpubkey[] = { 0xdd, 0x60, 0x7e, 0x95, 0x45, 0x56, 0xc6, 0x2e, 0x39, 0xb4, 0x32, 0xd1, 0xf1, 0xb2, 0xfe, 0x66, 0x52, 0xd7, 0x5a, 0x1f, 0xe3, 0x3c, 0xd1, 0x5c, 0x79, 0x9f, 0xfa, 0xc9, 0xd1, 0x3d, 0x5d, 0x52, 0x18, 0x99, 0xd2, 0x59, 0x40, 0xda, 0x65, 0x3d, 0x08, 0x24, 0xad, 0x84, 0x56, 0xdd, 0xfb, 0x62, 0x9f, 0x41, 0x42, 0xe0, 0x8a, 0x3b, 0xd1, 0xd8, 0x7b, 0xf6, 0x11, 0x9a, 0x9e, 0xf4, 0xb0, 0xa8, 0x0d, 0xc7, 0x12, 0xa4, 0xd6, 0xc0, 0x01, 0xbc, 0xb2, 0x79, 0x4c, 0x4d, 0x1a, 0x03, 0xb1, 0xf1, 0xd3, 0x92, 0xdc, 0x08, 0x8c, 0x89, 0xef, 0x84, 0x4f, 0x93, 0xad, 0xb1, 0x39, 0xd9, 0x56, 0xb8, }; static const unsigned char ecdh_secp384r1_2968_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2968_sharedsecret[] = { 0x60, 0xd5, 0x97, 0xa9, 0x9c, 0x86, 0xa4, 0x32, 0xe1, 0x44, 0xbc, 0x2b, 0x0e, 0x0a, 0x89, 0xb9, 0x1c, 0x4a, 0x72, 0xf3, 0xe1, 0xff, 0x8e, 0x56, 0xe7, 0xf0, 0x7d, 0x53, 0xb2, 0xe5, 0x63, 0xe9, 0x79, 0xc0, 0x9e, 0x27, 0xb3, 0x4b, 0xe9, 0x8b, 0xb1, 0x98, 0x65, 0xe8, 0x08, 0xd4, 0x29, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2968 = { .name = "ecdh_secp384r1_2968", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2968_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2968_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2968_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 461 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2969 for ECDH, tcId is 462 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2969_peerpubkey[] = { 0x82, 0x6d, 0x71, 0xae, 0x4f, 0x7b, 0x3e, 0xcb, 0xb2, 0xa9, 0xbd, 0xf5, 0x95, 0x12, 0x94, 0x95, 0x42, 0xd0, 0x11, 0x6f, 0x61, 0x64, 0x40, 0xa5, 0x50, 0x16, 0x8f, 0x4b, 0x58, 0x81, 0x2f, 0xd6, 0xc1, 0xab, 0x94, 0xf3, 0x10, 0x38, 0x5f, 0xdf, 0x24, 0x6d, 0xb5, 0xef, 0xc0, 0xfd, 0x13, 0x99, 0x5d, 0xe0, 0x99, 0xbd, 0xfc, 0xea, 0x35, 0x5e, 0xe6, 0x38, 0x27, 0xcf, 0x2a, 0x2e, 0x2d, 0x86, 0x8f, 0x5c, 0xf0, 0xb4, 0x87, 0xe4, 0x12, 0x45, 0xdf, 0x54, 0xfd, 0xc7, 0x35, 0xee, 0xd6, 0xeb, 0x72, 0x6c, 0xfc, 0x92, 0x8b, 0xd5, 0xb4, 0xd0, 0x17, 0x19, 0xd1, 0x64, 0x49, 0x67, 0xed, 0x1f, }; static const unsigned char ecdh_secp384r1_2969_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2969_sharedsecret[] = { 0x85, 0x96, 0x19, 0x06, 0xed, 0xaa, 0x9a, 0xdf, 0xa9, 0xc9, 0xb8, 0x27, 0x9d, 0xa6, 0x61, 0x58, 0xf5, 0x7f, 0xb3, 0x50, 0xff, 0x9b, 0x15, 0xdc, 0x4d, 0x75, 0xb8, 0xca, 0xb6, 0x4b, 0x9d, 0x34, 0xf5, 0xce, 0x91, 0x2f, 0x1a, 0xa5, 0x12, 0xa5, 0x4c, 0x71, 0x82, 0x1c, 0x6e, 0x31, 0xff, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp384r1_2969 = { .name = "ecdh_secp384r1_2969", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2969_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2969_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2969_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 462 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2970 for ECDH, tcId is 463 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2970_peerpubkey[] = { 0xfa, 0x89, 0x19, 0xe4, 0x52, 0x4e, 0x70, 0x40, 0x48, 0x9c, 0xc1, 0x7a, 0xa3, 0xd6, 0x20, 0xf8, 0x82, 0x76, 0xef, 0x24, 0x8d, 0x1e, 0xcd, 0x1e, 0x9a, 0x66, 0x37, 0xc7, 0xa0, 0x67, 0x65, 0xf6, 0xf1, 0xd5, 0x93, 0xb1, 0xfe, 0xbe, 0x33, 0x1b, 0x9f, 0x69, 0x6e, 0x82, 0xc5, 0xbe, 0x61, 0xa4, 0xa0, 0x74, 0xa9, 0x12, 0x30, 0x96, 0x62, 0xf4, 0x4c, 0xe0, 0x82, 0x5b, 0xf1, 0x34, 0x58, 0x21, 0x16, 0xca, 0xc3, 0x31, 0x05, 0x77, 0xd5, 0xa0, 0x07, 0x22, 0xba, 0x51, 0x3e, 0x63, 0x34, 0xcc, 0x17, 0x10, 0x10, 0x91, 0x22, 0x33, 0x46, 0xdb, 0x67, 0x06, 0x3c, 0xf6, 0xe7, 0xbf, 0xfb, 0xff, }; static const unsigned char ecdh_secp384r1_2970_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2970_sharedsecret[] = { 0x43, 0x48, 0x4d, 0xcf, 0x01, 0x49, 0x2e, 0xab, 0x68, 0x4d, 0x39, 0x88, 0x19, 0x08, 0xda, 0x7f, 0x40, 0x11, 0x9f, 0xe7, 0x18, 0x3b, 0xba, 0x62, 0x5c, 0x32, 0xfd, 0xc1, 0x4d, 0xa3, 0xc4, 0x23, 0x6d, 0xc3, 0x39, 0x72, 0x34, 0xe7, 0xdb, 0x41, 0x85, 0x74, 0x95, 0xcd, 0x0d, 0x09, 0x49, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2970 = { .name = "ecdh_secp384r1_2970", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2970_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2970_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2970_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 463 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2971 for ECDH, tcId is 464 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2971_peerpubkey[] = { 0xae, 0xcb, 0x8f, 0x15, 0xab, 0x87, 0x57, 0x9a, 0x03, 0xf5, 0xb8, 0xfc, 0xf3, 0x3a, 0xa0, 0x94, 0x33, 0x7e, 0x4c, 0x36, 0x23, 0x59, 0xc9, 0xf2, 0x72, 0x76, 0x34, 0x90, 0x9c, 0x69, 0x13, 0xc3, 0x21, 0xbe, 0x69, 0xf3, 0xf8, 0xae, 0xd6, 0x93, 0xa3, 0x10, 0x59, 0x98, 0x99, 0x97, 0xfb, 0x32, 0xd4, 0xf4, 0xa3, 0x7f, 0xf2, 0x36, 0xd8, 0xf6, 0x23, 0x71, 0x86, 0xa3, 0xa7, 0x21, 0xa8, 0x2a, 0x2b, 0xa2, 0x2f, 0x8a, 0x62, 0x8d, 0x72, 0x73, 0xef, 0x31, 0x73, 0xe2, 0x1e, 0xcc, 0x69, 0x96, 0x9a, 0x47, 0xe6, 0x69, 0x38, 0x3e, 0xcf, 0x0c, 0xf5, 0x39, 0x6e, 0xb0, 0x2f, 0x46, 0xc3, 0xed, }; static const unsigned char ecdh_secp384r1_2971_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2971_sharedsecret[] = { 0x65, 0xe6, 0x13, 0x39, 0x29, 0xc8, 0xb0, 0x61, 0xc2, 0x5f, 0xe0, 0xbe, 0xc9, 0x14, 0x2c, 0x93, 0xd5, 0x2c, 0x9f, 0x16, 0x95, 0x06, 0x1b, 0x10, 0x5f, 0x6c, 0x7d, 0xa1, 0x34, 0x7a, 0x96, 0x7b, 0x5a, 0x3f, 0x11, 0x83, 0x56, 0x56, 0x45, 0xf7, 0xb8, 0xfa, 0xd8, 0x86, 0x3f, 0x9a, 0x63, 0x45, }; static const wycheproof_ecdh_test ecdh_secp384r1_2971 = { .name = "ecdh_secp384r1_2971", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2971_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2971_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2971_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 464 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2972 for ECDH, tcId is 465 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2972_peerpubkey[] = { 0x40, 0xdc, 0x66, 0xd8, 0x1c, 0x4e, 0x15, 0xe1, 0xa4, 0xc0, 0x09, 0xc6, 0x0c, 0x34, 0x41, 0x72, 0x5f, 0xff, 0x08, 0xb2, 0x54, 0x37, 0x73, 0xb0, 0xdd, 0xe0, 0x0d, 0xb2, 0x31, 0xf4, 0x4b, 0xad, 0xd7, 0x7a, 0x8b, 0xc9, 0x61, 0x94, 0x79, 0xbd, 0x52, 0x88, 0xe4, 0x0d, 0xa1, 0x53, 0xb8, 0xdd, 0xc3, 0xd5, 0x30, 0x26, 0x2b, 0x16, 0x9a, 0x6f, 0xa7, 0x00, 0xee, 0x32, 0xa5, 0xcd, 0x05, 0x7b, 0xaf, 0x43, 0xd2, 0x96, 0x27, 0xf3, 0x42, 0xfd, 0xa8, 0xf6, 0xf0, 0xfb, 0x21, 0xb1, 0xfa, 0x35, 0xbe, 0x96, 0xa4, 0x52, 0xab, 0x48, 0x81, 0xf4, 0x17, 0xc9, 0xa4, 0xe4, 0x13, 0x6b, 0x1e, 0x6d, }; static const unsigned char ecdh_secp384r1_2972_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2972_sharedsecret[] = { 0x07, 0x73, 0x67, 0x3d, 0xae, 0x33, 0x7a, 0x16, 0x88, 0xc2, 0xc3, 0x1d, 0x1a, 0x60, 0x0c, 0x0e, 0xd7, 0x26, 0x04, 0xa1, 0x71, 0xc6, 0x65, 0xb5, 0x30, 0x7e, 0xba, 0xf7, 0x40, 0xfd, 0x51, 0x8e, 0x4a, 0x7c, 0x5c, 0x91, 0xe4, 0xf8, 0x6f, 0x65, 0x90, 0x56, 0x40, 0xee, 0x37, 0xf4, 0xf8, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_2972 = { .name = "ecdh_secp384r1_2972", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2972_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2972_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2972_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 465 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2973 for ECDH, tcId is 466 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2973_peerpubkey[] = { 0x53, 0xb5, 0x87, 0x47, 0x38, 0x27, 0x5a, 0x2e, 0x1d, 0x73, 0x4e, 0x51, 0xf8, 0x36, 0x36, 0xf8, 0x91, 0x79, 0xc1, 0x6f, 0xe8, 0x9f, 0x46, 0xf4, 0xd8, 0xe7, 0x1f, 0x52, 0x1c, 0x59, 0x47, 0x69, 0xd3, 0x17, 0x25, 0xf6, 0x40, 0x41, 0x22, 0xf2, 0x11, 0x12, 0x94, 0x3a, 0x1a, 0x22, 0xff, 0x07, 0x58, 0x6b, 0x41, 0xbb, 0x24, 0xbf, 0x30, 0x3a, 0xe8, 0x54, 0x5b, 0x25, 0xf7, 0xb9, 0x84, 0x25, 0xea, 0x62, 0xc4, 0xd3, 0xbf, 0x51, 0xd2, 0x3d, 0x9d, 0x85, 0xe0, 0x77, 0x19, 0xb8, 0x28, 0x77, 0x7e, 0xfa, 0x0a, 0x28, 0xfb, 0x30, 0xf3, 0x3b, 0x89, 0x99, 0x80, 0xde, 0x3c, 0x53, 0x26, 0x11, }; static const unsigned char ecdh_secp384r1_2973_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2973_sharedsecret[] = { 0xea, 0x25, 0xb0, 0x7a, 0x16, 0x1f, 0x31, 0x8a, 0x81, 0xa6, 0x93, 0xf6, 0x60, 0x48, 0x10, 0xb8, 0x14, 0x28, 0x43, 0xc4, 0xfd, 0x26, 0x65, 0x8d, 0x9b, 0x64, 0xfe, 0xdb, 0x58, 0xa5, 0xeb, 0xa5, 0x8c, 0x21, 0x7c, 0x41, 0x76, 0x56, 0x9c, 0xf3, 0x3f, 0xa4, 0x7a, 0xc9, 0xf2, 0xb3, 0xd7, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp384r1_2973 = { .name = "ecdh_secp384r1_2973", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2973_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2973_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2973_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 466 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2974 for ECDH, tcId is 467 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2974_peerpubkey[] = { 0x29, 0x88, 0xad, 0xdf, 0x62, 0x14, 0x9e, 0x6a, 0xc0, 0x82, 0x19, 0xd2, 0xf0, 0x36, 0xd3, 0xf5, 0x72, 0x0a, 0xa8, 0x62, 0x90, 0x5c, 0xf3, 0xfe, 0x7b, 0xdf, 0x13, 0x6d, 0xc0, 0x8b, 0x84, 0x5e, 0x8a, 0x61, 0xbe, 0x43, 0xdb, 0x86, 0xd7, 0x1a, 0x26, 0xdc, 0x17, 0xbf, 0x55, 0x37, 0x4a, 0x9d, 0x53, 0xac, 0x99, 0xc5, 0xd0, 0x7d, 0xe1, 0x0c, 0xe7, 0x4e, 0xd3, 0xb1, 0xc4, 0x13, 0x68, 0x6e, 0xbb, 0xa7, 0x00, 0xf4, 0x92, 0x60, 0xb0, 0x83, 0x57, 0xf9, 0x5d, 0xaf, 0x5b, 0x31, 0xa5, 0x55, 0x34, 0x5c, 0x07, 0x60, 0x79, 0xf2, 0x5d, 0x86, 0x90, 0xfc, 0x1a, 0xc2, 0x0c, 0x71, 0x52, 0x8d, }; static const unsigned char ecdh_secp384r1_2974_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2974_sharedsecret[] = { 0xa8, 0xd4, 0x24, 0x06, 0x8f, 0xb7, 0x84, 0x6b, 0x0d, 0x43, 0xa5, 0xcc, 0x13, 0x02, 0x9d, 0x05, 0x4b, 0x11, 0xc9, 0x7e, 0x50, 0x8e, 0xe0, 0xf9, 0x2e, 0x73, 0xd3, 0x5a, 0xc8, 0x35, 0x1a, 0x46, 0x2e, 0xed, 0xfc, 0x9d, 0xa9, 0xdd, 0x12, 0x79, 0xf1, 0x28, 0x12, 0xba, 0x46, 0xc0, 0x60, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_2974 = { .name = "ecdh_secp384r1_2974", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2974_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2974_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2974_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 467 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2975 for ECDH, tcId is 468 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2975_peerpubkey[] = { 0x49, 0x4b, 0x59, 0xde, 0x1b, 0x69, 0x53, 0x4b, 0x4b, 0x62, 0xd7, 0x58, 0x10, 0xee, 0x3d, 0xad, 0x05, 0xa1, 0x9a, 0xfa, 0x41, 0xc7, 0x83, 0x6d, 0xb5, 0xca, 0x78, 0x63, 0x02, 0x08, 0xa8, 0x00, 0x38, 0x8d, 0x04, 0x03, 0x4b, 0xaf, 0x29, 0x23, 0xad, 0x5a, 0xf6, 0xac, 0x72, 0xee, 0x05, 0xf9, 0x89, 0xdf, 0x6d, 0x08, 0xf9, 0xa6, 0x40, 0x08, 0x58, 0xd0, 0x84, 0xfe, 0x77, 0x0c, 0x0d, 0xdd, 0xe2, 0x98, 0x96, 0x6c, 0xdc, 0x56, 0xa9, 0x21, 0xa4, 0x31, 0x84, 0x38, 0x4d, 0x5a, 0x13, 0xf3, 0x1c, 0x1e, 0xb4, 0xe8, 0x34, 0xe2, 0x3b, 0xed, 0x30, 0x69, 0xc1, 0x0d, 0xfe, 0xd6, 0xb6, 0x3c, }; static const unsigned char ecdh_secp384r1_2975_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2975_sharedsecret[] = { 0x29, 0x6f, 0x5d, 0x6f, 0xe4, 0xdd, 0xd8, 0xc3, 0xc7, 0x30, 0x4b, 0xea, 0xdd, 0x45, 0xf6, 0xcd, 0x3e, 0x3f, 0xcd, 0x42, 0x30, 0xc9, 0xd2, 0xba, 0x1a, 0x13, 0xbd, 0x9b, 0x94, 0x98, 0xa3, 0xc8, 0xd1, 0xef, 0x0a, 0xb6, 0xee, 0x2a, 0x45, 0x0b, 0x0c, 0x68, 0xe8, 0x9a, 0x83, 0x71, 0x1f, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2975 = { .name = "ecdh_secp384r1_2975", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2975_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2975_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2975_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 468 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2976 for ECDH, tcId is 469 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2976_peerpubkey[] = { 0xb6, 0x4c, 0x49, 0xdd, 0xf1, 0x8b, 0xce, 0x79, 0xcf, 0xf3, 0xb8, 0xcb, 0x7b, 0x0e, 0x58, 0xd4, 0x84, 0x21, 0xeb, 0x67, 0x39, 0xf5, 0x9d, 0x27, 0x1f, 0xc4, 0xf5, 0x4d, 0xd2, 0xfc, 0xb1, 0xcf, 0x56, 0xdd, 0x3b, 0x3c, 0x69, 0x17, 0x3a, 0x5e, 0xab, 0x50, 0xab, 0x1a, 0x2e, 0x06, 0x16, 0xd0, 0x5d, 0x92, 0xb8, 0x64, 0xcb, 0xc9, 0xe4, 0xa3, 0xf7, 0x56, 0x50, 0xef, 0xf3, 0x9e, 0x0e, 0xac, 0xbf, 0x87, 0xc4, 0xc0, 0x10, 0x08, 0x8f, 0x33, 0x38, 0x84, 0x2c, 0xd9, 0x78, 0x32, 0x72, 0x4f, 0x79, 0xbb, 0x15, 0x98, 0x6b, 0xd3, 0xfa, 0x85, 0x25, 0x58, 0x16, 0x35, 0x04, 0x73, 0xbb, 0xd3, }; static const unsigned char ecdh_secp384r1_2976_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2976_sharedsecret[] = { 0xdb, 0x1e, 0xdb, 0xbb, 0x1f, 0x3a, 0xc6, 0xdf, 0x9f, 0x46, 0x12, 0x88, 0x12, 0xbc, 0xe7, 0x81, 0x8b, 0x5d, 0x74, 0x5c, 0x75, 0x32, 0x2a, 0x9a, 0xbe, 0x89, 0x98, 0x3b, 0xe8, 0x68, 0xaa, 0x1a, 0xac, 0x55, 0x5f, 0x4d, 0x60, 0xec, 0x27, 0x27, 0x30, 0xbb, 0x4a, 0xd9, 0x49, 0xa5, 0x3d, 0x38, }; static const wycheproof_ecdh_test ecdh_secp384r1_2976 = { .name = "ecdh_secp384r1_2976", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2976_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2976_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2976_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 469 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2977 for ECDH, tcId is 470 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2977_peerpubkey[] = { 0xa4, 0x0b, 0x1c, 0xa1, 0xa5, 0x1a, 0x8e, 0xe6, 0xbe, 0xf5, 0xb5, 0x8a, 0xaa, 0xbc, 0xff, 0xe2, 0xe1, 0x5f, 0x74, 0xa3, 0x08, 0x7e, 0xdb, 0x26, 0x20, 0x88, 0x5d, 0x7d, 0x93, 0x3e, 0x4f, 0x50, 0xd6, 0x25, 0xea, 0xad, 0x93, 0xb8, 0x7b, 0x8d, 0xff, 0x58, 0xf0, 0x56, 0x57, 0x92, 0xb1, 0x74, 0xab, 0x89, 0x71, 0x7f, 0xfe, 0x87, 0xcd, 0x29, 0xff, 0xbf, 0x3c, 0xd7, 0xd9, 0x38, 0xb1, 0x17, 0x37, 0x47, 0xbf, 0xc0, 0x31, 0x1b, 0x78, 0x72, 0x36, 0x84, 0xd7, 0xc9, 0xa1, 0xc2, 0xbe, 0x3b, 0x59, 0x7b, 0xf9, 0x23, 0x6e, 0xed, 0x09, 0x00, 0x28, 0xed, 0xa2, 0x14, 0x6c, 0x47, 0x7e, 0x65, }; static const unsigned char ecdh_secp384r1_2977_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2977_sharedsecret[] = { 0x1f, 0x84, 0xc6, 0x41, 0xad, 0xe1, 0x62, 0xa2, 0x74, 0xab, 0x2e, 0xfc, 0x7c, 0xf6, 0x58, 0x2f, 0x5a, 0x5d, 0x91, 0xce, 0x79, 0x93, 0xaf, 0x69, 0x56, 0xd5, 0x5e, 0xea, 0x0e, 0x1b, 0x7f, 0xbf, 0x04, 0x0d, 0xa9, 0x75, 0x04, 0x86, 0xb0, 0xfb, 0xb2, 0xbd, 0x70, 0xd9, 0xcc, 0xab, 0xb7, 0x85, }; static const wycheproof_ecdh_test ecdh_secp384r1_2977 = { .name = "ecdh_secp384r1_2977", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2977_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2977_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2977_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 470 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2978 for ECDH, tcId is 471 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2978_peerpubkey[] = { 0x4e, 0x7a, 0x82, 0xad, 0x74, 0xa1, 0xb7, 0x85, 0x19, 0x95, 0xf6, 0xe1, 0xa1, 0x81, 0x41, 0xbb, 0x45, 0x84, 0xac, 0x22, 0xe8, 0x39, 0xd4, 0xd9, 0x16, 0x01, 0x8b, 0x15, 0x0f, 0xed, 0x9c, 0xd0, 0xcc, 0xe4, 0x27, 0xbd, 0x44, 0x67, 0x98, 0x52, 0x27, 0x44, 0xd3, 0x95, 0xe9, 0x0e, 0xe4, 0xb6, 0x34, 0x45, 0xc1, 0xa6, 0xa4, 0xcd, 0x46, 0x7c, 0x20, 0xcd, 0xb2, 0x98, 0x85, 0x4f, 0x1e, 0x27, 0x0a, 0xfb, 0xea, 0x05, 0x3b, 0x77, 0x84, 0x97, 0x6b, 0x50, 0x4d, 0x0e, 0x13, 0x39, 0xc5, 0xc8, 0x60, 0x07, 0xce, 0xc3, 0x63, 0x83, 0x99, 0x58, 0xa1, 0xfa, 0x51, 0xe9, 0x48, 0x3d, 0xe5, 0x61, }; static const unsigned char ecdh_secp384r1_2978_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2978_sharedsecret[] = { 0x54, 0xef, 0xb9, 0xbb, 0x72, 0x69, 0xd8, 0x6b, 0x06, 0x28, 0x2b, 0x1d, 0x7d, 0xc2, 0x8a, 0x94, 0x0c, 0xd7, 0x78, 0x9c, 0xa4, 0xe1, 0x04, 0xc4, 0xbb, 0x7c, 0x5e, 0x57, 0x36, 0x67, 0x6c, 0x3e, 0x53, 0x70, 0xcf, 0xd9, 0x78, 0x49, 0xe1, 0x20, 0x0a, 0x03, 0x1b, 0x66, 0x83, 0x88, 0xd8, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2978 = { .name = "ecdh_secp384r1_2978", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2978_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2978_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2978_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 471 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2979 for ECDH, tcId is 472 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2979_peerpubkey[] = { 0x9b, 0x54, 0x67, 0x8f, 0x85, 0x81, 0xce, 0x66, 0x51, 0x08, 0xab, 0xeb, 0x0c, 0x09, 0xcb, 0x79, 0x85, 0xbb, 0x5d, 0xd8, 0x58, 0xbb, 0xb7, 0x1c, 0x88, 0xe0, 0x53, 0x44, 0xde, 0x5b, 0x45, 0xb4, 0xe6, 0x7f, 0x33, 0xab, 0x58, 0xd3, 0x59, 0xdc, 0xa2, 0xda, 0x8d, 0xf1, 0x14, 0x9d, 0xd1, 0xbb, 0xd0, 0x9b, 0xa7, 0xf6, 0x3a, 0x8d, 0x35, 0x84, 0x8b, 0x40, 0x74, 0x6e, 0xd5, 0xfe, 0xc7, 0x94, 0x4e, 0xd4, 0x4f, 0xd9, 0xa9, 0xa2, 0xfc, 0x3d, 0x13, 0xeb, 0xc5, 0xc0, 0x5f, 0xf9, 0x4d, 0x5f, 0x50, 0x0e, 0xe1, 0x50, 0x72, 0xd1, 0xb4, 0xc1, 0x37, 0x5f, 0xd6, 0xec, 0x4f, 0x32, 0x12, 0x5c, }; static const unsigned char ecdh_secp384r1_2979_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2979_sharedsecret[] = { 0x1e, 0x96, 0xc8, 0x29, 0xcc, 0x8a, 0x79, 0xd7, 0x3f, 0xa6, 0x43, 0x4b, 0xc1, 0x59, 0xdc, 0x43, 0x2c, 0x2a, 0xce, 0x3b, 0x49, 0xad, 0x2e, 0x74, 0x38, 0x0e, 0x7b, 0x02, 0xfe, 0xb5, 0x3b, 0x33, 0x93, 0x44, 0x6a, 0x03, 0x31, 0xb9, 0x74, 0xf2, 0xbf, 0x21, 0x9a, 0xe9, 0x5d, 0x2b, 0x23, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp384r1_2979 = { .name = "ecdh_secp384r1_2979", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2979_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2979_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2979_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 472 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2980 for ECDH, tcId is 473 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2980_peerpubkey[] = { 0x86, 0xcb, 0x7a, 0x3f, 0xf3, 0xae, 0xdb, 0x2f, 0x39, 0xae, 0x22, 0xf2, 0xe8, 0x28, 0xec, 0x08, 0x17, 0xd9, 0x4b, 0x83, 0x1a, 0xe6, 0x54, 0xdd, 0x66, 0xaf, 0xf3, 0x1a, 0x4d, 0x84, 0xb3, 0x3f, 0xab, 0x46, 0xfe, 0xc1, 0xab, 0xe1, 0xa9, 0xe6, 0xbb, 0xfa, 0xc5, 0xc9, 0x95, 0x65, 0xfd, 0x3b, 0xb2, 0xf7, 0x2d, 0x56, 0x5d, 0x2f, 0xf5, 0xc5, 0xc2, 0x4f, 0x37, 0x54, 0x48, 0xdd, 0x7b, 0xb4, 0x42, 0xdf, 0xdc, 0xb6, 0x1e, 0x07, 0x3e, 0x48, 0x40, 0x27, 0x07, 0xbb, 0xcc, 0x26, 0xad, 0x43, 0xd4, 0x78, 0x8a, 0x9f, 0x44, 0x71, 0x5f, 0x1b, 0x8e, 0x5b, 0x62, 0xbf, 0x49, 0xce, 0xca, 0x65, }; static const unsigned char ecdh_secp384r1_2980_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2980_sharedsecret[] = { 0x84, 0xe7, 0xaf, 0x17, 0x6d, 0xdb, 0xa3, 0xec, 0x3c, 0xe7, 0xb7, 0xfc, 0x43, 0xdf, 0x1e, 0xd5, 0x9b, 0x4e, 0x32, 0x28, 0xfa, 0x3f, 0x6f, 0xb4, 0x1a, 0x01, 0xf4, 0x13, 0xb0, 0xa6, 0xc7, 0x40, 0x4e, 0x43, 0xf7, 0x74, 0x71, 0x18, 0xba, 0x26, 0x4b, 0x7b, 0x02, 0x6d, 0x71, 0x4e, 0x90, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_2980 = { .name = "ecdh_secp384r1_2980", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2980_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2980_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2980_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 473 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2981 for ECDH, tcId is 474 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2981_peerpubkey[] = { 0xcc, 0xf5, 0xa5, 0xb8, 0x0d, 0xeb, 0xa6, 0x31, 0x8b, 0x85, 0xf5, 0x7a, 0x0d, 0x56, 0x3e, 0x95, 0x76, 0x5c, 0x7f, 0xe3, 0x0d, 0xf5, 0xac, 0x88, 0x83, 0x7f, 0x35, 0x32, 0x9d, 0xd5, 0x10, 0x70, 0xe2, 0x98, 0x96, 0xf4, 0xd9, 0x6e, 0xf4, 0x0b, 0xcc, 0xcf, 0x36, 0x24, 0x4d, 0xf8, 0x35, 0x61, 0x4e, 0x87, 0x85, 0xf8, 0x06, 0x5f, 0x81, 0xc5, 0xe9, 0x27, 0x0f, 0xd5, 0x59, 0xb6, 0xa3, 0x80, 0xb4, 0x83, 0x87, 0x4d, 0x29, 0x8d, 0x0d, 0x38, 0x2e, 0xee, 0x1e, 0xdb, 0x6a, 0x59, 0xd9, 0xc1, 0x63, 0x29, 0x6a, 0xb7, 0xa0, 0x68, 0x18, 0x6b, 0x0d, 0x23, 0xf3, 0x37, 0x37, 0xdd, 0x0e, 0xed, }; static const unsigned char ecdh_secp384r1_2981_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2981_sharedsecret[] = { 0x82, 0x86, 0x4e, 0xf4, 0xd5, 0xfd, 0x25, 0x20, 0x4a, 0xe1, 0x59, 0x1c, 0x61, 0x9f, 0x3e, 0xd8, 0x13, 0xc7, 0x62, 0xba, 0xa0, 0x09, 0xba, 0x3b, 0x49, 0xac, 0x38, 0xc5, 0x7b, 0x2f, 0x46, 0x65, 0x2f, 0x71, 0x9a, 0xdc, 0xea, 0xbf, 0xbc, 0xaf, 0x98, 0x5b, 0x29, 0x95, 0x8d, 0x1f, 0x42, 0x0c, }; static const wycheproof_ecdh_test ecdh_secp384r1_2981 = { .name = "ecdh_secp384r1_2981", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2981_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2981_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2981_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 474 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2982 for ECDH, tcId is 475 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2982_peerpubkey[] = { 0xc7, 0xf7, 0x7a, 0xd2, 0x86, 0xc6, 0x8b, 0x88, 0xff, 0xa6, 0x4f, 0xef, 0xe4, 0xaa, 0xab, 0x3d, 0xee, 0x1f, 0x9b, 0xae, 0x37, 0xb7, 0xd0, 0x69, 0xbb, 0x92, 0xbe, 0xa8, 0x20, 0x89, 0xe8, 0x31, 0xa7, 0x0d, 0xd9, 0xed, 0x00, 0x7b, 0xa6, 0xdc, 0xe1, 0x4f, 0x9c, 0x6d, 0x5e, 0x74, 0x4e, 0xcc, 0xb3, 0x19, 0xad, 0x6e, 0xc1, 0x34, 0x37, 0x6c, 0xb0, 0x59, 0xa1, 0xc8, 0x69, 0x84, 0xea, 0x8b, 0xd1, 0x54, 0xd8, 0x26, 0xed, 0x3d, 0xba, 0xe8, 0xd8, 0xd8, 0xe0, 0x6a, 0xa0, 0xcb, 0xe0, 0x12, 0x7d, 0xdf, 0xc3, 0x26, 0x21, 0xbb, 0xc1, 0xf7, 0x31, 0xf9, 0xd9, 0x0e, 0x68, 0x7a, 0x7c, 0xf5, }; static const unsigned char ecdh_secp384r1_2982_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2982_sharedsecret[] = { 0x1d, 0x0d, 0x3e, 0xd8, 0xc1, 0xe0, 0xd2, 0x8f, 0x5e, 0x37, 0x66, 0xf1, 0x93, 0xda, 0x7b, 0xdc, 0xa1, 0xcc, 0x08, 0x37, 0x62, 0x93, 0xf9, 0xbb, 0xde, 0x7b, 0xde, 0x0e, 0x9b, 0x1e, 0xbc, 0xf4, 0xcf, 0xa3, 0xc6, 0x83, 0xdc, 0x63, 0xbc, 0xb4, 0x2b, 0x2d, 0x9e, 0xde, 0x54, 0x24, 0x2b, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_2982 = { .name = "ecdh_secp384r1_2982", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2982_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2982_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2982_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 475 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2983 for ECDH, tcId is 476 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2983_peerpubkey[] = { 0xaa, 0xc3, 0xb4, 0xd2, 0x80, 0xfc, 0x70, 0xa9, 0xfe, 0x17, 0x5e, 0x18, 0x82, 0xa6, 0x9e, 0xac, 0xa2, 0x48, 0x2a, 0x0c, 0x9d, 0xed, 0x92, 0x00, 0x44, 0x40, 0x28, 0xca, 0x3d, 0xbf, 0x50, 0x1f, 0xc3, 0x61, 0xf7, 0x65, 0x8b, 0xff, 0xec, 0x32, 0x1a, 0xd5, 0x77, 0xb4, 0x8c, 0x97, 0x86, 0xb0, 0x7f, 0x59, 0x6b, 0xd8, 0x68, 0xd5, 0x1e, 0x73, 0xf0, 0xf7, 0xc2, 0x5d, 0xb9, 0x56, 0xb1, 0x21, 0x71, 0xcf, 0xab, 0x11, 0xab, 0xd4, 0xab, 0xb0, 0x0a, 0x59, 0xac, 0x43, 0x2c, 0x0b, 0x0f, 0x05, 0x8f, 0x4c, 0xca, 0x44, 0xfb, 0x58, 0x1b, 0xc5, 0x80, 0x3e, 0x47, 0x2a, 0x05, 0x30, 0x5f, 0x33, }; static const unsigned char ecdh_secp384r1_2983_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2983_sharedsecret[] = { 0xbf, 0x19, 0x54, 0x8b, 0xb1, 0xd7, 0x33, 0x3f, 0x46, 0xcf, 0xf4, 0xd9, 0xd2, 0xa8, 0x1d, 0xbb, 0x48, 0xca, 0x82, 0xa5, 0x2f, 0xae, 0xc2, 0xb2, 0x0c, 0x3b, 0x27, 0xbd, 0xe3, 0x92, 0xa6, 0x6b, 0x8e, 0x44, 0x78, 0x0c, 0x20, 0x98, 0xa7, 0xb5, 0x25, 0x31, 0x57, 0xb0, 0x14, 0xb4, 0x0e, 0x51, }; static const wycheproof_ecdh_test ecdh_secp384r1_2983 = { .name = "ecdh_secp384r1_2983", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2983_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2983_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2983_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 476 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2984 for ECDH, tcId is 477 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2984_peerpubkey[] = { 0x74, 0x7e, 0xfb, 0x59, 0x5d, 0x03, 0xdc, 0x05, 0xdd, 0x50, 0xc1, 0x71, 0x55, 0xe1, 0x01, 0x8c, 0xa1, 0x47, 0x15, 0x05, 0x45, 0x92, 0x90, 0x6e, 0x67, 0x1a, 0x2e, 0x22, 0x04, 0xac, 0xae, 0x55, 0x2b, 0x6f, 0x5d, 0x34, 0x5d, 0x3f, 0xcf, 0x9b, 0x41, 0x71, 0x89, 0x2a, 0xfb, 0x3e, 0x55, 0x87, 0xd8, 0xe7, 0x09, 0xb0, 0x83, 0xa8, 0xb5, 0x36, 0x36, 0x63, 0x49, 0x2f, 0x8a, 0x2a, 0x9a, 0xf6, 0x4c, 0x3a, 0xd0, 0x1c, 0x64, 0xd8, 0xfa, 0x47, 0x64, 0xd6, 0x1f, 0x43, 0xe6, 0x90, 0x1a, 0x24, 0x45, 0xce, 0x94, 0xb5, 0x86, 0xf6, 0x09, 0x0a, 0xe0, 0x68, 0x7a, 0xf0, 0x09, 0x0f, 0xcd, 0x47, }; static const unsigned char ecdh_secp384r1_2984_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2984_sharedsecret[] = { 0x32, 0xd5, 0x69, 0x31, 0x0f, 0x61, 0xaf, 0x47, 0x5b, 0x6c, 0x6d, 0x07, 0x55, 0x99, 0x62, 0x5a, 0x33, 0x81, 0xb0, 0xa5, 0xb6, 0xa0, 0xb8, 0xc2, 0x7c, 0x71, 0x65, 0xd0, 0x0e, 0x2f, 0xd4, 0xdc, 0x8b, 0x2c, 0xf8, 0xe3, 0xb3, 0x3e, 0x28, 0xad, 0x40, 0x05, 0x52, 0x53, 0x84, 0x22, 0x7f, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp384r1_2984 = { .name = "ecdh_secp384r1_2984", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2984_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2984_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2984_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 477 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2985 for ECDH, tcId is 478 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2985_peerpubkey[] = { 0xab, 0x14, 0x76, 0x4b, 0xf2, 0x4f, 0x83, 0x13, 0xb1, 0xc4, 0x9c, 0x4b, 0xd6, 0xe3, 0x67, 0x23, 0x12, 0x75, 0xb3, 0x03, 0xc6, 0x01, 0xc6, 0x6f, 0x7e, 0x8b, 0x31, 0x05, 0xc6, 0xb0, 0x2a, 0x90, 0xb6, 0x0f, 0x38, 0x74, 0x5d, 0x75, 0x5c, 0xe4, 0xdd, 0x40, 0x68, 0x1e, 0xd1, 0x5a, 0x1a, 0xc9, 0x3e, 0x14, 0xcf, 0x2f, 0xa7, 0x08, 0x30, 0x0a, 0x2b, 0x27, 0x9f, 0x2c, 0x37, 0xfb, 0xc0, 0xda, 0x71, 0x75, 0xc9, 0x2c, 0x11, 0x14, 0xc5, 0x7e, 0xf2, 0x51, 0x46, 0x7f, 0x6f, 0x3d, 0xe7, 0x9f, 0xbc, 0x38, 0xcb, 0x1e, 0x3d, 0xb7, 0x0e, 0x4d, 0x95, 0x22, 0x5f, 0xbd, 0x8a, 0xd9, 0x68, 0x89, }; static const unsigned char ecdh_secp384r1_2985_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2985_sharedsecret[] = { 0x26, 0x6b, 0x26, 0x1b, 0x6d, 0xd9, 0xeb, 0x51, 0x77, 0x0f, 0x6c, 0x4c, 0x11, 0xb8, 0x71, 0x34, 0xab, 0xff, 0x16, 0x29, 0xb6, 0x51, 0x71, 0x10, 0x7a, 0x9b, 0x20, 0xe0, 0xc7, 0xd1, 0x68, 0xe1, 0xef, 0xc3, 0xcb, 0xc4, 0x02, 0x46, 0x4f, 0x36, 0xae, 0xb3, 0xc0, 0x27, 0xb9, 0x19, 0x8e, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_2985 = { .name = "ecdh_secp384r1_2985", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2985_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2985_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2985_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 478 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2986 for ECDH, tcId is 479 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2986_peerpubkey[] = { 0x1e, 0x1f, 0xe9, 0x73, 0x0f, 0xcd, 0x5b, 0x87, 0xb0, 0x65, 0xfa, 0x90, 0xa6, 0x95, 0x34, 0x03, 0x6b, 0xe4, 0x57, 0x58, 0x51, 0x34, 0x43, 0xf7, 0x9c, 0x64, 0x27, 0xdb, 0xc3, 0x1f, 0xc4, 0x03, 0xe8, 0x94, 0x04, 0x3f, 0xb9, 0xc7, 0xf9, 0xf5, 0x8c, 0x0a, 0x36, 0x70, 0xb1, 0xc0, 0xd8, 0x03, 0x59, 0xdb, 0x8f, 0x6a, 0x48, 0x97, 0x0c, 0xcb, 0x99, 0x18, 0xce, 0xf0, 0x4f, 0x35, 0x2a, 0x4d, 0x91, 0xa2, 0x04, 0x50, 0x21, 0x19, 0xb2, 0xb7, 0xef, 0xc6, 0xc6, 0x71, 0xa6, 0xba, 0x45, 0x37, 0xe8, 0x2c, 0x19, 0x6e, 0x6d, 0x42, 0x68, 0x5c, 0x5a, 0x6f, 0x55, 0x9e, 0x4e, 0x8a, 0xf7, 0x04, }; static const unsigned char ecdh_secp384r1_2986_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2986_sharedsecret[] = { 0xfa, 0x9f, 0x20, 0x8d, 0xce, 0xde, 0xe5, 0x97, 0xf5, 0x11, 0x22, 0xe6, 0x27, 0x4b, 0x86, 0x71, 0x0e, 0x36, 0x56, 0x1f, 0x23, 0x61, 0xe7, 0x61, 0x86, 0xfc, 0xb7, 0x3d, 0x1d, 0x7f, 0x29, 0x28, 0x42, 0x6d, 0x98, 0xc3, 0xf6, 0x9e, 0x4c, 0xf4, 0x8d, 0x30, 0x01, 0xd6, 0x49, 0x70, 0x42, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2986 = { .name = "ecdh_secp384r1_2986", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2986_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2986_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2986_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 479 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2987 for ECDH, tcId is 480 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2987_peerpubkey[] = { 0x83, 0xfc, 0xea, 0x20, 0x8c, 0x79, 0x22, 0x7c, 0xbd, 0x97, 0x31, 0x9a, 0x86, 0x59, 0x7f, 0x85, 0xcb, 0xfc, 0x19, 0xef, 0x60, 0xc5, 0xba, 0x7a, 0x92, 0xfc, 0x52, 0x1c, 0x68, 0x5e, 0x20, 0x8c, 0xec, 0x77, 0x35, 0xbe, 0x9b, 0xe2, 0x7c, 0x73, 0x7d, 0x3f, 0x9d, 0x2f, 0xaa, 0x1c, 0x3f, 0x46, 0x95, 0xa3, 0x21, 0x84, 0xd5, 0x8f, 0xc9, 0x00, 0x14, 0x02, 0x43, 0x6c, 0xe0, 0x0b, 0x52, 0xb8, 0x88, 0x5b, 0xb1, 0x15, 0x0f, 0x61, 0xe6, 0x60, 0xec, 0xeb, 0xa1, 0x07, 0x68, 0xd0, 0xf4, 0x1d, 0x5e, 0x4e, 0x7c, 0x21, 0xd4, 0xfd, 0x90, 0x9a, 0xce, 0xaf, 0x61, 0xa7, 0x45, 0x5d, 0xd0, 0xc6, }; static const unsigned char ecdh_secp384r1_2987_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2987_sharedsecret[] = { 0x9a, 0x1d, 0xdf, 0x3d, 0x9f, 0xeb, 0x19, 0x0a, 0x26, 0xf2, 0x0e, 0xd9, 0x25, 0xff, 0xbd, 0x35, 0xdf, 0x10, 0x17, 0xc4, 0xa4, 0xc9, 0x48, 0x5d, 0x34, 0x4c, 0xb8, 0xf8, 0x1c, 0x7f, 0x45, 0x2b, 0x2f, 0xf3, 0xae, 0xc4, 0x4b, 0xaf, 0x34, 0xe5, 0x08, 0x86, 0xf1, 0x83, 0x48, 0x0b, 0x63, 0x25, }; static const wycheproof_ecdh_test ecdh_secp384r1_2987 = { .name = "ecdh_secp384r1_2987", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2987_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2987_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2987_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 480 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2988 for ECDH, tcId is 481 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2988_peerpubkey[] = { 0x2b, 0xf2, 0x69, 0x36, 0xc9, 0x16, 0x4b, 0xa1, 0x07, 0x25, 0x44, 0xc4, 0x10, 0x75, 0x76, 0x30, 0xb9, 0x7d, 0x4e, 0x85, 0x3f, 0xdb, 0x78, 0x44, 0xf1, 0x81, 0x15, 0x07, 0xd0, 0x4a, 0x68, 0x7d, 0x95, 0x1f, 0xa6, 0x5a, 0x34, 0x36, 0x4e, 0x89, 0x4c, 0xf8, 0xb0, 0x81, 0x5d, 0xb9, 0x5f, 0x5e, 0x10, 0x66, 0x46, 0x27, 0xbf, 0x6f, 0x72, 0x33, 0x0a, 0x2d, 0x6f, 0x21, 0x23, 0x61, 0xa2, 0x33, 0x15, 0x5a, 0xbb, 0x79, 0xda, 0x54, 0x34, 0x3b, 0x85, 0x72, 0xe3, 0x0e, 0xac, 0xe8, 0xc8, 0xf5, 0x48, 0x02, 0x00, 0xe7, 0x51, 0xc2, 0x10, 0x20, 0x78, 0x52, 0x88, 0x12, 0xc8, 0x3f, 0x3c, 0xf4, }; static const unsigned char ecdh_secp384r1_2988_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2988_sharedsecret[] = { 0x47, 0xe4, 0x60, 0x8e, 0x9b, 0xcc, 0xf6, 0xa3, 0x29, 0x6e, 0x41, 0xfe, 0x34, 0xeb, 0x71, 0x81, 0xa1, 0xb5, 0xec, 0x30, 0x6a, 0x93, 0xaa, 0xbd, 0x5f, 0xb3, 0x8e, 0x75, 0xe3, 0xd7, 0x5e, 0x8e, 0x2e, 0xe4, 0xc1, 0xc4, 0x4a, 0x7d, 0x08, 0x66, 0x06, 0x81, 0xb9, 0xfa, 0x66, 0x64, 0x29, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_2988 = { .name = "ecdh_secp384r1_2988", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2988_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2988_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2988_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 481 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2989 for ECDH, tcId is 482 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2989_peerpubkey[] = { 0xbb, 0x58, 0x3d, 0xa5, 0xde, 0x4c, 0x35, 0x2e, 0x8a, 0x4f, 0xad, 0x31, 0xe9, 0xf7, 0x12, 0x97, 0xbc, 0x96, 0x31, 0x34, 0xec, 0x18, 0x2e, 0x96, 0x37, 0x9c, 0x6b, 0x28, 0xa1, 0x1d, 0x25, 0xfa, 0x4b, 0x77, 0xa4, 0xa0, 0xf9, 0x47, 0x08, 0x5d, 0xb3, 0x3b, 0x0e, 0xa7, 0x7b, 0x9d, 0xa0, 0x9b, 0xe1, 0xa0, 0xbd, 0x13, 0x00, 0x38, 0x3e, 0xbd, 0x60, 0xb5, 0xaa, 0x6e, 0xeb, 0x20, 0xf0, 0x3d, 0x56, 0xdd, 0x14, 0xdf, 0x46, 0x15, 0x74, 0x65, 0x14, 0x62, 0x78, 0x53, 0x6e, 0xbc, 0x28, 0xc5, 0x47, 0x1a, 0x94, 0xf0, 0x95, 0x55, 0x4c, 0x4c, 0x08, 0x5a, 0xc9, 0xdc, 0xeb, 0x1d, 0xa5, 0x5f, }; static const unsigned char ecdh_secp384r1_2989_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2989_sharedsecret[] = { 0x83, 0x93, 0xa2, 0x68, 0x9b, 0x37, 0x6a, 0x22, 0x8f, 0x32, 0x33, 0xac, 0x61, 0x57, 0x8b, 0xe1, 0xaa, 0x2d, 0xe1, 0xdb, 0xfb, 0xb2, 0x8b, 0x03, 0xad, 0x24, 0xf1, 0x1a, 0xd9, 0xd7, 0x7f, 0x85, 0x43, 0xe0, 0x97, 0x7a, 0xea, 0x9a, 0x76, 0x1d, 0x84, 0xe1, 0x15, 0xb6, 0x15, 0x07, 0xae, 0x59, }; static const wycheproof_ecdh_test ecdh_secp384r1_2989 = { .name = "ecdh_secp384r1_2989", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2989_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2989_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2989_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 482 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2990 for ECDH, tcId is 483 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2990_peerpubkey[] = { 0xe3, 0x77, 0x91, 0x59, 0x5b, 0x54, 0xe9, 0xb1, 0x7c, 0xc3, 0x07, 0x26, 0xd2, 0x42, 0x5e, 0xea, 0xcc, 0x96, 0x72, 0xf5, 0xfb, 0xc9, 0x1f, 0xc1, 0x08, 0xcf, 0x8c, 0x84, 0xff, 0xf9, 0xb6, 0x6e, 0xa6, 0x54, 0x83, 0x84, 0x1b, 0x76, 0x18, 0x69, 0x48, 0x15, 0xe1, 0xa4, 0x15, 0x18, 0x6b, 0xa7, 0x27, 0xaf, 0x3a, 0xe6, 0xc6, 0x58, 0xeb, 0x8c, 0x48, 0x5d, 0x6a, 0xd8, 0xe4, 0x9c, 0x1e, 0xad, 0xe7, 0x51, 0x45, 0x75, 0x62, 0xd6, 0x00, 0x3d, 0xe7, 0x5c, 0xd1, 0xf1, 0xe1, 0x3e, 0xc1, 0x5e, 0xa1, 0xd0, 0x41, 0x36, 0x02, 0xed, 0x7f, 0x6a, 0x6b, 0x7b, 0x84, 0xef, 0xd8, 0xa3, 0x05, 0x6e, }; static const unsigned char ecdh_secp384r1_2990_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2990_sharedsecret[] = { 0x20, 0x94, 0x17, 0xda, 0x72, 0x1b, 0x49, 0xd6, 0x4d, 0xfa, 0x09, 0x98, 0x3a, 0x86, 0x83, 0x52, 0x0e, 0x5e, 0x30, 0x0a, 0x52, 0xb2, 0xe8, 0xf1, 0x67, 0x77, 0x72, 0xee, 0x3c, 0x08, 0x6b, 0x33, 0x9a, 0x1d, 0xa2, 0x5c, 0xab, 0x2b, 0xe6, 0xe4, 0x4d, 0xe4, 0x52, 0x6c, 0x31, 0xf4, 0xeb, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp384r1_2990 = { .name = "ecdh_secp384r1_2990", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2990_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2990_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2990_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 483 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2991 for ECDH, tcId is 484 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2991_peerpubkey[] = { 0x7f, 0x12, 0xcb, 0x98, 0x7b, 0x08, 0xc2, 0x35, 0x52, 0x34, 0x65, 0x14, 0x6b, 0x42, 0x25, 0x85, 0x84, 0x39, 0x80, 0x62, 0xa1, 0x07, 0x42, 0x9c, 0xe4, 0x86, 0xb4, 0xb2, 0xf2, 0x6a, 0x96, 0x28, 0x29, 0x3a, 0xe4, 0xd3, 0x0a, 0xa6, 0x1c, 0x64, 0xbf, 0x92, 0xf9, 0x7e, 0x6c, 0x08, 0xae, 0xa8, 0xd6, 0x62, 0x1c, 0xfc, 0xe5, 0x27, 0x0c, 0xd7, 0xfa, 0x69, 0xdc, 0xb0, 0x38, 0xed, 0x8b, 0xa4, 0x28, 0xaf, 0xd7, 0x7d, 0x52, 0x8c, 0x23, 0x0f, 0x8e, 0x5c, 0x9b, 0x83, 0xef, 0x65, 0x9c, 0x7e, 0x57, 0x3f, 0x66, 0x71, 0xa1, 0x8d, 0x8b, 0x8c, 0x4c, 0xeb, 0x20, 0xf2, 0xd7, 0x60, 0x85, 0x8e, }; static const unsigned char ecdh_secp384r1_2991_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2991_sharedsecret[] = { 0xe7, 0xea, 0xc4, 0x60, 0xea, 0xda, 0x6e, 0xb9, 0x99, 0x88, 0xcc, 0x39, 0xf6, 0x12, 0x9a, 0x74, 0xd9, 0x51, 0x0d, 0x2e, 0xc3, 0x96, 0x01, 0xad, 0xae, 0x76, 0xb2, 0xb8, 0xfd, 0x61, 0x22, 0x40, 0x7b, 0x79, 0x41, 0x1f, 0x8e, 0x7a, 0xdf, 0xbc, 0x4f, 0x0d, 0xc5, 0x0d, 0xa9, 0xf2, 0xb8, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp384r1_2991 = { .name = "ecdh_secp384r1_2991", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2991_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2991_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2991_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 484 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2992 for ECDH, tcId is 485 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2992_peerpubkey[] = { 0xdc, 0x4f, 0x06, 0xd6, 0x71, 0xd8, 0x60, 0x12, 0xcd, 0x5c, 0xe1, 0x03, 0x77, 0xff, 0xef, 0xbd, 0xe6, 0x57, 0xda, 0x08, 0xfa, 0x92, 0x59, 0xe4, 0xae, 0xff, 0xe6, 0x21, 0x1a, 0xc5, 0x7f, 0x6e, 0x1c, 0x5b, 0xf8, 0x73, 0x29, 0x89, 0xd4, 0x4c, 0x13, 0x42, 0xa8, 0x4f, 0xa6, 0xfd, 0x7f, 0xba, 0x27, 0x14, 0xce, 0x23, 0xcc, 0x0f, 0x8e, 0x0a, 0x8b, 0xda, 0x59, 0x3e, 0xc2, 0xb4, 0xb5, 0x29, 0x4f, 0xfc, 0x03, 0x63, 0xe6, 0xe8, 0x94, 0x03, 0xd4, 0x48, 0x2f, 0x35, 0x37, 0xdb, 0xa9, 0xe4, 0xf3, 0x6b, 0xe6, 0x8d, 0x8e, 0x2e, 0xda, 0xfd, 0x8c, 0xc2, 0xc0, 0x1f, 0x5f, 0x7d, 0xce, 0xc4, }; static const unsigned char ecdh_secp384r1_2992_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2992_sharedsecret[] = { 0x5a, 0x19, 0x7a, 0x9a, 0x87, 0x93, 0xd9, 0x4d, 0x8b, 0x84, 0x08, 0x4c, 0x6d, 0xc3, 0x6c, 0x36, 0xa2, 0x93, 0xac, 0x90, 0x33, 0x7a, 0x1c, 0xf6, 0xa2, 0x65, 0x34, 0x35, 0xd0, 0x5e, 0x2f, 0x56, 0x3b, 0xfd, 0x29, 0x33, 0xf2, 0x3e, 0xd3, 0xae, 0xfd, 0x75, 0x55, 0x5e, 0xad, 0x76, 0xe8, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_2992 = { .name = "ecdh_secp384r1_2992", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2992_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2992_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2992_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 485 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2993 for ECDH, tcId is 486 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2993_peerpubkey[] = { 0xca, 0x1e, 0xc6, 0x79, 0x8c, 0x56, 0x67, 0x81, 0x3b, 0xfc, 0x45, 0xdd, 0x18, 0x15, 0xe8, 0x2b, 0xec, 0x93, 0xea, 0xa7, 0x08, 0x10, 0x69, 0x76, 0x7b, 0xec, 0x36, 0x85, 0xcd, 0xfa, 0x56, 0x26, 0x7f, 0xc2, 0x4d, 0xa6, 0xc1, 0x86, 0xd8, 0xb3, 0x27, 0x16, 0x27, 0xa8, 0x52, 0x56, 0x0c, 0x5a, 0x09, 0x7d, 0x7c, 0x41, 0xe6, 0x10, 0xe5, 0x26, 0x7d, 0xab, 0xf5, 0x25, 0x76, 0x3f, 0x4a, 0x4a, 0x74, 0x78, 0xc5, 0xf9, 0xae, 0x4b, 0x80, 0xba, 0xa1, 0xe6, 0x20, 0xac, 0x1f, 0x22, 0xd8, 0x68, 0x9b, 0x07, 0xed, 0x9a, 0x99, 0xdc, 0xe0, 0xcd, 0x4a, 0x11, 0x68, 0x2f, 0x07, 0x22, 0x7f, 0xc4, }; static const unsigned char ecdh_secp384r1_2993_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2993_sharedsecret[] = { 0x8b, 0xf5, 0x20, 0x33, 0x7d, 0xe6, 0xe5, 0xc6, 0xf2, 0x70, 0x05, 0x16, 0x1b, 0x3b, 0x2f, 0x1c, 0xf0, 0x87, 0x59, 0x52, 0x7c, 0x8f, 0xc7, 0x93, 0x5e, 0x36, 0x21, 0xf6, 0x89, 0x36, 0xf1, 0x91, 0xac, 0x6e, 0x93, 0x1b, 0x79, 0x42, 0x78, 0xd3, 0xca, 0x1e, 0x37, 0x72, 0xdb, 0xfb, 0x19, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp384r1_2993 = { .name = "ecdh_secp384r1_2993", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2993_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2993_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2993_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 486 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2994 for ECDH, tcId is 487 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2994_peerpubkey[] = { 0x44, 0xb9, 0xe9, 0x76, 0xb9, 0xe8, 0x9a, 0xa3, 0x15, 0x19, 0xfc, 0x0a, 0x35, 0x28, 0x8c, 0x55, 0xe2, 0xd7, 0x63, 0x0a, 0x1c, 0xd1, 0xff, 0xfd, 0x28, 0x8c, 0xda, 0xc8, 0xc7, 0x4b, 0xc2, 0xed, 0xcb, 0x0f, 0xf8, 0x78, 0xfc, 0xcc, 0xeb, 0xbb, 0x78, 0xdf, 0x9e, 0x7e, 0xb0, 0xaf, 0xa6, 0xb1, 0x38, 0x47, 0x82, 0xb8, 0xa1, 0x13, 0x89, 0x46, 0x59, 0x4d, 0x8f, 0xd3, 0xb6, 0xc9, 0xb4, 0x95, 0x4e, 0x73, 0xd8, 0xc0, 0x40, 0xa7, 0xa1, 0x53, 0xf3, 0xda, 0x5a, 0x40, 0xf9, 0xfd, 0xaf, 0x3b, 0xf3, 0x1a, 0x45, 0x22, 0x41, 0x6c, 0x31, 0x6f, 0x10, 0xdc, 0x7c, 0xd8, 0xaf, 0xc2, 0x84, 0x9b, }; static const unsigned char ecdh_secp384r1_2994_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2994_sharedsecret[] = { 0x1e, 0x56, 0xdc, 0x30, 0xda, 0xd3, 0x3e, 0x34, 0x27, 0x35, 0x35, 0x68, 0x86, 0x05, 0xbb, 0x98, 0xad, 0x7c, 0x6d, 0xd5, 0x1d, 0x92, 0x67, 0xc9, 0x0a, 0x62, 0x56, 0x2d, 0x08, 0xe4, 0x7d, 0xd6, 0x84, 0x18, 0x0d, 0x4a, 0xb7, 0xab, 0xb6, 0xcc, 0x14, 0xae, 0x4c, 0x9b, 0xd6, 0xae, 0x9e, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_2994 = { .name = "ecdh_secp384r1_2994", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2994_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2994_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2994_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 487 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2995 for ECDH, tcId is 488 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2995_peerpubkey[] = { 0xcf, 0x66, 0x1b, 0x71, 0xc2, 0xb8, 0x73, 0x4f, 0x7c, 0xf5, 0x14, 0x2a, 0x66, 0xed, 0xf7, 0x87, 0xc5, 0x6a, 0x33, 0x17, 0x43, 0x03, 0xc2, 0x07, 0x41, 0xf0, 0x7e, 0x0c, 0x34, 0x8e, 0x1b, 0x54, 0x25, 0x70, 0x5d, 0x9e, 0xbb, 0xb4, 0x59, 0x96, 0x76, 0x21, 0xde, 0xd6, 0xeb, 0x56, 0xd7, 0x10, 0x37, 0x33, 0x7a, 0xa1, 0x6e, 0x1c, 0xf6, 0xe5, 0x03, 0x18, 0x21, 0x84, 0xc9, 0x45, 0x1f, 0x9b, 0xa4, 0x57, 0xd8, 0x1a, 0x03, 0x13, 0xfb, 0x98, 0x73, 0x43, 0xb8, 0xb3, 0x93, 0x44, 0xf3, 0x69, 0x32, 0x98, 0x01, 0x0c, 0xd5, 0xb7, 0x3e, 0x38, 0xbc, 0xde, 0xce, 0x66, 0xc6, 0x7f, 0xa5, 0x08, }; static const unsigned char ecdh_secp384r1_2995_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2995_sharedsecret[] = { 0x14, 0xe3, 0xa9, 0x7e, 0x9e, 0xe6, 0x90, 0x89, 0x41, 0x0b, 0x72, 0x45, 0x98, 0x70, 0x49, 0x5a, 0x03, 0x7d, 0x40, 0x77, 0xbb, 0xa0, 0x27, 0xef, 0xf4, 0xc4, 0x99, 0x56, 0x7d, 0x7e, 0x7f, 0x1a, 0xf2, 0x72, 0x0e, 0x1f, 0xed, 0xd0, 0x7b, 0xd7, 0x80, 0x50, 0x9a, 0x45, 0x16, 0xfa, 0x5c, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_2995 = { .name = "ecdh_secp384r1_2995", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2995_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2995_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2995_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 488 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2996 for ECDH, tcId is 489 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2996_peerpubkey[] = { 0x50, 0x79, 0x09, 0x08, 0xc0, 0x43, 0x34, 0x4e, 0x1c, 0xf4, 0x2b, 0x27, 0xe4, 0xdc, 0x33, 0xa3, 0x5d, 0x68, 0xa0, 0xb9, 0x3b, 0xe0, 0xec, 0x2b, 0xe0, 0x57, 0x45, 0xb3, 0xc8, 0x3c, 0x35, 0xf0, 0xa3, 0xec, 0xc3, 0xed, 0x27, 0xfb, 0x31, 0x88, 0xa5, 0xed, 0x9f, 0x24, 0xcd, 0xbd, 0x29, 0xd1, 0xb0, 0xf0, 0x3f, 0xf8, 0x5f, 0xd7, 0xfc, 0xad, 0x4e, 0xa5, 0xbb, 0xd8, 0xbd, 0x4c, 0x42, 0x93, 0x5f, 0x09, 0x57, 0xca, 0x80, 0x11, 0xcf, 0xc9, 0x3e, 0xbe, 0xb7, 0x89, 0xc4, 0x72, 0x14, 0xe6, 0x0e, 0x5d, 0xa1, 0x6e, 0x4d, 0xd8, 0x7a, 0x53, 0x54, 0x7e, 0xed, 0xee, 0x47, 0x9b, 0x09, 0x78, }; static const unsigned char ecdh_secp384r1_2996_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2996_sharedsecret[] = { 0x85, 0xa8, 0xdd, 0xb9, 0x99, 0x7e, 0x25, 0x25, 0xcd, 0x55, 0x57, 0x21, 0xf2, 0xd5, 0xf3, 0xb1, 0x99, 0xff, 0x76, 0xb5, 0x7e, 0x91, 0xee, 0xc6, 0xfc, 0x7d, 0x2c, 0x95, 0x70, 0x3a, 0x1a, 0x32, 0xf4, 0x6e, 0x3d, 0x46, 0x95, 0x2a, 0x90, 0xb5, 0x10, 0x54, 0xc5, 0xfd, 0x04, 0x6b, 0x31, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_2996 = { .name = "ecdh_secp384r1_2996", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2996_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2996_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2996_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 489 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2997 for ECDH, tcId is 490 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2997_peerpubkey[] = { 0x23, 0x95, 0xd0, 0x07, 0x79, 0xb6, 0xc7, 0xd4, 0xda, 0xd8, 0xcc, 0x9a, 0x89, 0x18, 0x49, 0x6c, 0x28, 0xb2, 0xd4, 0x07, 0x7e, 0x68, 0x86, 0xd0, 0xa1, 0xbe, 0xf5, 0x15, 0xe3, 0x12, 0x5d, 0xdd, 0x81, 0x3e, 0x5a, 0x9e, 0xa0, 0xf1, 0x85, 0xcd, 0x00, 0x9a, 0x69, 0xea, 0x92, 0x21, 0x01, 0x74, 0xb6, 0x76, 0x77, 0x5f, 0x76, 0x31, 0x83, 0xc8, 0x6f, 0x6f, 0xa5, 0x05, 0x51, 0xba, 0x13, 0x7d, 0x79, 0xa8, 0x3e, 0x8e, 0x32, 0xff, 0x2f, 0xc0, 0x9a, 0x2c, 0x28, 0xcd, 0xf8, 0x0c, 0xdd, 0xaf, 0xcc, 0x0f, 0x40, 0x69, 0x3e, 0x39, 0x85, 0xf2, 0x8f, 0xe5, 0xc7, 0xdf, 0xe2, 0xd8, 0xb2, 0x75, }; static const unsigned char ecdh_secp384r1_2997_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2997_sharedsecret[] = { 0xc2, 0x69, 0x46, 0x5c, 0xfb, 0x33, 0x6e, 0xd8, 0xc7, 0xe9, 0xc0, 0x37, 0x73, 0x49, 0x19, 0x3a, 0xa4, 0xdb, 0xdb, 0x92, 0xa9, 0xf4, 0x67, 0x0d, 0xbf, 0x7f, 0xa7, 0xa1, 0xf7, 0x55, 0x6e, 0x8e, 0x4b, 0x24, 0x0d, 0x5b, 0x70, 0xed, 0xee, 0xdd, 0x1b, 0xf5, 0xce, 0x76, 0x9c, 0xb8, 0x41, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_2997 = { .name = "ecdh_secp384r1_2997", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2997_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2997_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2997_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 490 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2998 for ECDH, tcId is 491 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2998_peerpubkey[] = { 0x56, 0x34, 0xee, 0x15, 0x52, 0x63, 0xc0, 0x7d, 0x7d, 0x1e, 0x34, 0x6b, 0x86, 0x8d, 0xdd, 0x80, 0xe9, 0xa2, 0x82, 0xfc, 0xef, 0x93, 0xbf, 0x6d, 0xf8, 0xe8, 0xbc, 0x4e, 0xa3, 0x4f, 0xf0, 0x2e, 0x11, 0x9a, 0x9f, 0x70, 0x78, 0x16, 0xd0, 0x63, 0x68, 0xcc, 0xb9, 0x4c, 0x6e, 0x48, 0x02, 0xfb, 0xaa, 0xdc, 0x33, 0x99, 0x15, 0x74, 0xdd, 0xe8, 0x51, 0xe5, 0x47, 0xe4, 0x70, 0x27, 0xf5, 0x43, 0x53, 0xe0, 0x2d, 0x70, 0xbe, 0x6b, 0xfa, 0x9f, 0x73, 0x95, 0x3c, 0xa2, 0x59, 0x01, 0x1f, 0x23, 0xa4, 0xa8, 0x0c, 0xbb, 0xaa, 0xe8, 0x80, 0x5d, 0x9d, 0x09, 0x4e, 0xf1, 0x50, 0xe0, 0xc5, 0x4a, }; static const unsigned char ecdh_secp384r1_2998_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2998_sharedsecret[] = { 0x6a, 0x21, 0xf2, 0x44, 0x47, 0x25, 0x22, 0x38, 0x9f, 0x08, 0x4e, 0x2e, 0x4a, 0xe9, 0x9b, 0x74, 0x7b, 0x39, 0xcb, 0xee, 0x99, 0x6c, 0xe9, 0xa3, 0xfa, 0x05, 0x35, 0x32, 0x19, 0xb6, 0x0c, 0x20, 0xfa, 0x38, 0x34, 0xd3, 0x9b, 0x0b, 0x82, 0x6f, 0x10, 0x96, 0xb7, 0xa4, 0x67, 0xe8, 0xa2, 0x18, }; static const wycheproof_ecdh_test ecdh_secp384r1_2998 = { .name = "ecdh_secp384r1_2998", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2998_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2998_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2998_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 491 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 2999 for ECDH, tcId is 492 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_2999_peerpubkey[] = { 0x63, 0xaa, 0x6c, 0x3c, 0x24, 0x9a, 0x32, 0xeb, 0xbc, 0xcc, 0xe6, 0x5f, 0xfa, 0x1c, 0x56, 0xa2, 0x05, 0x64, 0x4b, 0x2c, 0x40, 0xb9, 0x31, 0xb1, 0xec, 0x9b, 0x04, 0x2b, 0x52, 0xc1, 0xe9, 0x9c, 0xd0, 0x7e, 0x53, 0x82, 0x99, 0xfb, 0x83, 0x7f, 0xe6, 0x75, 0x86, 0xaa, 0xe7, 0x1b, 0x47, 0x06, 0x16, 0x6a, 0xc4, 0x50, 0xfb, 0xd6, 0xd4, 0x92, 0x1b, 0x44, 0x2a, 0x11, 0x67, 0x9f, 0x77, 0x86, 0xba, 0x5a, 0x77, 0x2a, 0xb3, 0x3d, 0xb0, 0x05, 0x43, 0xa9, 0x41, 0xbb, 0xc0, 0x15, 0xe2, 0x35, 0x81, 0xba, 0x62, 0x5a, 0x72, 0xc0, 0xe4, 0xeb, 0x44, 0x83, 0x8e, 0x5f, 0x40, 0x6c, 0xa1, 0xdc, }; static const unsigned char ecdh_secp384r1_2999_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_2999_sharedsecret[] = { 0xc4, 0x69, 0x91, 0x9f, 0x58, 0xd8, 0x0b, 0x1e, 0x45, 0xd5, 0xd5, 0x3e, 0xe2, 0x8d, 0x61, 0x6b, 0xdf, 0x82, 0x7a, 0x88, 0xe0, 0xb2, 0xf4, 0x99, 0x29, 0x1e, 0xc4, 0xf7, 0x6c, 0x3c, 0x89, 0xf2, 0x76, 0x77, 0x6e, 0xa9, 0x6a, 0x6b, 0x90, 0x53, 0xcf, 0x02, 0x77, 0x66, 0x98, 0x86, 0x45, 0x26, }; static const wycheproof_ecdh_test ecdh_secp384r1_2999 = { .name = "ecdh_secp384r1_2999", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_2999_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_2999_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_2999_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 492 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3000 for ECDH, tcId is 493 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3000_peerpubkey[] = { 0xa2, 0x87, 0xbd, 0x74, 0xd5, 0x01, 0xc2, 0x9d, 0xf2, 0x3d, 0x78, 0x6b, 0x7c, 0x34, 0xea, 0x0d, 0xaf, 0x10, 0xe4, 0xb3, 0xfc, 0xe7, 0x1d, 0x72, 0x0f, 0x61, 0xa2, 0x72, 0xf2, 0x21, 0x51, 0xdb, 0x2c, 0x59, 0x14, 0x86, 0x74, 0x93, 0x02, 0x8c, 0x01, 0xe1, 0x03, 0x82, 0x0b, 0x0b, 0xa6, 0xb1, 0x21, 0xcb, 0x29, 0x8f, 0xf8, 0x97, 0x7e, 0xcf, 0x21, 0xfe, 0xa8, 0xee, 0x1b, 0x6b, 0xa7, 0xd9, 0xb9, 0x8d, 0xac, 0xc2, 0xa4, 0x5d, 0x75, 0xc6, 0x3e, 0xc8, 0x32, 0x30, 0x01, 0xa9, 0xbf, 0x5f, 0x5b, 0xa4, 0xd3, 0xcb, 0xfe, 0xe8, 0x04, 0x82, 0xca, 0x13, 0x33, 0xf4, 0xde, 0x90, 0xa1, 0x4a, }; static const unsigned char ecdh_secp384r1_3000_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3000_sharedsecret[] = { 0x18, 0xdd, 0x1d, 0x7b, 0x6b, 0xbc, 0x63, 0x11, 0xaf, 0xe5, 0x38, 0x3d, 0x79, 0x6a, 0x5f, 0xec, 0x13, 0x84, 0x4b, 0xae, 0x25, 0x70, 0x87, 0x25, 0x55, 0x4d, 0xe0, 0xb5, 0xf0, 0x3e, 0xc0, 0xf7, 0xd2, 0xe6, 0x3b, 0x64, 0xdb, 0x5f, 0x83, 0xd4, 0xee, 0x98, 0x90, 0xc6, 0x1e, 0x44, 0x2c, 0x41, }; static const wycheproof_ecdh_test ecdh_secp384r1_3000 = { .name = "ecdh_secp384r1_3000", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3000_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3000_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3000_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 493 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3001 for ECDH, tcId is 494 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3001_peerpubkey[] = { 0xba, 0x40, 0x6b, 0x46, 0xc1, 0xd9, 0x2d, 0x4b, 0xa3, 0xf4, 0x0b, 0x7b, 0x1f, 0xcf, 0x1e, 0x18, 0x22, 0x89, 0xb8, 0x4c, 0xdb, 0x38, 0x7f, 0x28, 0xe5, 0xad, 0x20, 0xf1, 0xed, 0x8c, 0x43, 0xfe, 0x5f, 0xfa, 0x37, 0x12, 0x84, 0x62, 0x76, 0x30, 0x51, 0xe8, 0x7f, 0x0d, 0x5e, 0xbf, 0xcd, 0x9d, 0x9d, 0xd4, 0x10, 0x7c, 0xe4, 0xd9, 0x2d, 0x78, 0x3d, 0x0f, 0x0f, 0x81, 0xd7, 0xa9, 0x98, 0xb7, 0x60, 0x60, 0x73, 0x5b, 0x6f, 0xd6, 0x3b, 0xfc, 0xd9, 0x71, 0xca, 0x70, 0x13, 0x2f, 0xe6, 0xdc, 0x9f, 0xbf, 0x85, 0x34, 0xec, 0xc7, 0x4b, 0x50, 0x1e, 0xa0, 0x1c, 0xd2, 0xe4, 0xf6, 0xc5, 0x64, }; static const unsigned char ecdh_secp384r1_3001_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3001_sharedsecret[] = { 0xd6, 0x39, 0xb9, 0xc3, 0x1a, 0xd3, 0xce, 0xdd, 0xda, 0x77, 0x45, 0xd1, 0x9e, 0x82, 0xfd, 0xe2, 0x72, 0xa8, 0x6d, 0x31, 0xf8, 0xe6, 0xc2, 0x03, 0xee, 0xd5, 0x3b, 0xcb, 0x70, 0x5e, 0x9f, 0xf5, 0x8d, 0x65, 0x9f, 0x8e, 0x9d, 0x66, 0xaa, 0x04, 0x92, 0xda, 0x54, 0x5a, 0x39, 0x92, 0x94, 0xec, }; static const wycheproof_ecdh_test ecdh_secp384r1_3001 = { .name = "ecdh_secp384r1_3001", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3001_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3001_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3001_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 494 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3002 for ECDH, tcId is 495 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3002_peerpubkey[] = { 0x22, 0x61, 0xb2, 0xbf, 0x60, 0x5c, 0x22, 0xf2, 0xf3, 0xae, 0xf6, 0x33, 0x87, 0x19, 0xb2, 0xc4, 0x86, 0x38, 0x8a, 0xd5, 0x24, 0x07, 0x19, 0xa5, 0x25, 0x73, 0x15, 0x96, 0x9e, 0xf0, 0x1b, 0xa2, 0x7f, 0x0a, 0x10, 0x4c, 0x89, 0x70, 0x47, 0x73, 0xa8, 0x1f, 0xda, 0xbe, 0xe6, 0xab, 0x5c, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_3002_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3002_sharedsecret[] = { 0xc9, 0x23, 0xfb, 0x0d, 0x4b, 0x24, 0xe9, 0x96, 0xe5, 0xe0, 0xd5, 0xdf, 0x15, 0x1d, 0x3c, 0x26, 0xb1, 0xf6, 0x1c, 0x05, 0xb1, 0x7b, 0x7f, 0xb3, 0x9f, 0xc8, 0x59, 0x0b, 0x47, 0xee, 0xaf, 0xf3, 0x47, 0x09, 0xf6, 0xf7, 0x32, 0x89, 0x23, 0xbd, 0xca, 0xf7, 0xe8, 0xe4, 0x13, 0xd7, 0x7d, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp384r1_3002 = { .name = "ecdh_secp384r1_3002", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3002_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3002_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3002_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 495 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3003 for ECDH, tcId is 496 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3003_peerpubkey[] = { 0xd3, 0x9c, 0x38, 0xaa, 0xfa, 0x09, 0x52, 0x33, 0xef, 0x1a, 0xf8, 0xc0, 0xf4, 0xaa, 0xf3, 0x57, 0xdd, 0x68, 0x41, 0x31, 0xb4, 0xac, 0x58, 0xa5, 0x34, 0xf3, 0xd9, 0x44, 0x61, 0x96, 0xb6, 0x00, 0x92, 0x07, 0x2d, 0xc7, 0xe5, 0x38, 0x10, 0x6b, 0x7b, 0x2e, 0x66, 0xdc, 0x33, 0xca, 0xc7, 0x28, 0x3a, 0x1b, 0x20, 0x3f, 0xca, 0x47, 0x82, 0x8e, 0x6f, 0x7a, 0x09, 0xaf, 0x64, 0x5a, 0xf0, 0xf7, 0x29, 0x80, 0x2c, 0xa2, 0xf4, 0x00, 0x0c, 0x4b, 0x97, 0x73, 0xb0, 0x8c, 0x5a, 0xf4, 0x0e, 0x20, 0x1a, 0x27, 0x49, 0x3a, 0xb3, 0xeb, 0xa9, 0xca, 0xd7, 0xda, 0x15, 0x7f, 0x89, 0xf1, 0x4a, 0x2c, }; static const unsigned char ecdh_secp384r1_3003_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3003_sharedsecret[] = { 0xaf, 0x39, 0x04, 0xf8, 0x3b, 0x9a, 0x0e, 0x95, 0xee, 0x0b, 0x86, 0xb0, 0x61, 0x55, 0x99, 0x3a, 0xe5, 0x98, 0xd1, 0x48, 0x98, 0x36, 0x6e, 0x5d, 0xcf, 0xc6, 0x43, 0xde, 0x9d, 0x5a, 0xb7, 0x2f, 0xc5, 0xfb, 0xef, 0x17, 0xd0, 0xa8, 0xfb, 0x36, 0xeb, 0xfd, 0xdc, 0xe4, 0x6e, 0x5d, 0x44, 0x55, }; static const wycheproof_ecdh_test ecdh_secp384r1_3003 = { .name = "ecdh_secp384r1_3003", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3003_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3003_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3003_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 496 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3004 for ECDH, tcId is 497 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3004_peerpubkey[] = { 0x86, 0xda, 0x57, 0x85, 0x67, 0x78, 0x8e, 0xa3, 0xcc, 0x0f, 0x2a, 0x9d, 0xa8, 0xd1, 0x39, 0x3e, 0xd3, 0xa4, 0x44, 0x7a, 0x75, 0xc1, 0x8e, 0xa8, 0x6a, 0xf9, 0xd8, 0x4b, 0x0c, 0xac, 0xc3, 0xb0, 0x37, 0x49, 0x19, 0x98, 0x90, 0xef, 0x8e, 0x5d, 0x31, 0x88, 0xd4, 0xf1, 0xd0, 0x41, 0xd4, 0x6e, 0x43, 0x3a, 0xcd, 0x5d, 0x9f, 0x55, 0x42, 0x43, 0x9e, 0xb2, 0x38, 0x4e, 0xc1, 0xde, 0x08, 0x47, 0xd0, 0x56, 0x05, 0x8e, 0xa9, 0x24, 0x89, 0xa7, 0x4e, 0x08, 0x3f, 0xfd, 0x6e, 0x03, 0x0d, 0x06, 0x0f, 0xad, 0x67, 0x4f, 0x6a, 0x2a, 0x9a, 0x7c, 0x21, 0x98, 0xb8, 0xbe, 0x9e, 0x46, 0x5b, 0xae, }; static const unsigned char ecdh_secp384r1_3004_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3004_sharedsecret[] = { 0x11, 0x24, 0xbe, 0xdd, 0x4c, 0x53, 0x8a, 0xe7, 0x12, 0x93, 0x08, 0x5f, 0x2c, 0x95, 0xcf, 0x6b, 0x13, 0xcf, 0xe7, 0x41, 0xf2, 0x1d, 0x62, 0xc1, 0xf0, 0x2a, 0x1e, 0x91, 0x16, 0x67, 0xd5, 0x34, 0x8b, 0x16, 0xd8, 0xaf, 0xb5, 0x44, 0x02, 0x1a, 0xcd, 0xc3, 0xcb, 0x74, 0x48, 0xd4, 0xd3, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_3004 = { .name = "ecdh_secp384r1_3004", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3004_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3004_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3004_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 497 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3005 for ECDH, tcId is 498 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3005_peerpubkey[] = { 0x11, 0x14, 0x47, 0xd2, 0x42, 0xf6, 0xb4, 0x21, 0xca, 0x91, 0xf5, 0x61, 0xd0, 0x4b, 0x2f, 0x1d, 0x2f, 0x0d, 0x92, 0x12, 0xd9, 0x18, 0xbb, 0x4a, 0x0f, 0xfb, 0x1a, 0xe6, 0x45, 0x9d, 0x07, 0x8e, 0x21, 0xa3, 0x12, 0xb2, 0xa1, 0x25, 0x94, 0xfc, 0x8c, 0x78, 0xfe, 0x94, 0x4c, 0x81, 0xd5, 0x13, 0xd3, 0xc9, 0x81, 0xd5, 0xe9, 0xcd, 0xa0, 0x6c, 0x43, 0x80, 0xd1, 0xa8, 0x42, 0xca, 0x5b, 0xb5, 0x1e, 0xd3, 0xa7, 0x12, 0xb0, 0x49, 0xdd, 0xa3, 0xa5, 0x0c, 0xe1, 0x0a, 0x9f, 0xbd, 0x0b, 0x69, 0xdf, 0xff, 0xaf, 0xf0, 0x78, 0x7c, 0x74, 0xd8, 0x32, 0x37, 0xba, 0x9c, 0x46, 0x86, 0xa0, 0x1e, }; static const unsigned char ecdh_secp384r1_3005_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3005_sharedsecret[] = { 0x69, 0x42, 0x61, 0x58, 0xa2, 0x99, 0x71, 0xef, 0x44, 0xb1, 0x17, 0x83, 0xef, 0x55, 0x9e, 0xf4, 0x29, 0x72, 0x46, 0x61, 0x1c, 0x99, 0x4d, 0x48, 0x15, 0x63, 0x71, 0x28, 0x86, 0x9d, 0x5f, 0x6a, 0x02, 0x02, 0x63, 0x2f, 0xe9, 0xb5, 0xad, 0x7c, 0x36, 0x5b, 0x63, 0x05, 0x0c, 0x9f, 0x2d, 0x08, }; static const wycheproof_ecdh_test ecdh_secp384r1_3005 = { .name = "ecdh_secp384r1_3005", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3005_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3005_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3005_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 498 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3006 for ECDH, tcId is 499 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3006_peerpubkey[] = { 0xd7, 0xcd, 0x50, 0x24, 0xc4, 0x48, 0x1e, 0x27, 0xd1, 0x65, 0x35, 0x66, 0x15, 0x2e, 0xfb, 0xa3, 0x28, 0x4b, 0x50, 0xba, 0x2a, 0x14, 0x1b, 0x26, 0x43, 0xff, 0xda, 0x18, 0xf3, 0x00, 0xfa, 0x64, 0xb8, 0x1b, 0x23, 0x4b, 0x8f, 0x64, 0x6c, 0xab, 0x47, 0x28, 0xb4, 0xe7, 0xa9, 0x70, 0x24, 0xd7, 0x68, 0x50, 0xae, 0xc0, 0xa2, 0xd1, 0x31, 0xc6, 0xac, 0xd5, 0xb2, 0x98, 0xb6, 0xf9, 0x05, 0xcd, 0xba, 0x18, 0xe6, 0x85, 0x64, 0xbc, 0x31, 0xf8, 0x82, 0xfe, 0xd5, 0x1b, 0x28, 0x78, 0x6a, 0x2e, 0x72, 0xf8, 0x81, 0x26, 0x68, 0xc9, 0x76, 0xf9, 0xdd, 0xc0, 0x42, 0x69, 0x55, 0x95, 0xfc, 0x6f, }; static const unsigned char ecdh_secp384r1_3006_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3006_sharedsecret[] = { 0x65, 0x97, 0x40, 0x1c, 0x83, 0x7f, 0xb4, 0x98, 0xef, 0x07, 0x80, 0xa3, 0x82, 0xde, 0xcd, 0x4a, 0x0d, 0xd5, 0x80, 0xe1, 0xaf, 0x5f, 0x24, 0xc4, 0x4a, 0xc1, 0x64, 0xe2, 0x56, 0xa4, 0x88, 0x4a, 0xd5, 0xbd, 0x2f, 0xb1, 0xf6, 0xc9, 0x64, 0x68, 0x2c, 0xb0, 0xbf, 0x79, 0xe2, 0xc7, 0xa6, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3006 = { .name = "ecdh_secp384r1_3006", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3006_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3006_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3006_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 499 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3007 for ECDH, tcId is 500 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3007_peerpubkey[] = { 0xe3, 0x14, 0x87, 0x54, 0x80, 0x37, 0xc0, 0x42, 0x3e, 0x57, 0x10, 0xfc, 0x60, 0xe7, 0x46, 0xab, 0x6e, 0x47, 0x35, 0x25, 0x61, 0xe4, 0x16, 0xb5, 0x83, 0x12, 0x3a, 0x6d, 0x45, 0xca, 0xa9, 0x11, 0x76, 0x2c, 0xd8, 0x8a, 0x60, 0xbc, 0xe5, 0x7b, 0x29, 0xa2, 0xec, 0x1a, 0x1d, 0xc9, 0x7f, 0xc1, 0xbd, 0x4b, 0x60, 0x40, 0x38, 0xe6, 0xac, 0x01, 0x6d, 0xbd, 0xd4, 0x8f, 0x0e, 0x6b, 0xd9, 0xf4, 0xb5, 0xda, 0xad, 0x8d, 0x68, 0xfc, 0x28, 0x83, 0x8c, 0x6a, 0xb4, 0xa4, 0xeb, 0x5a, 0xb0, 0xea, 0xea, 0x2c, 0xbd, 0xef, 0xa6, 0x1d, 0xc5, 0x7a, 0x3e, 0x04, 0xae, 0x71, 0x24, 0x29, 0x38, 0xb6, }; static const unsigned char ecdh_secp384r1_3007_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3007_sharedsecret[] = { 0x89, 0x41, 0x1d, 0x9c, 0x81, 0x49, 0xb9, 0x51, 0xfa, 0x0d, 0x5b, 0xea, 0x1e, 0x14, 0x1b, 0xdf, 0xc2, 0xbe, 0x7e, 0xd5, 0x6d, 0x5e, 0x61, 0x47, 0x39, 0x35, 0x78, 0x90, 0x16, 0xbf, 0xd2, 0xda, 0xf6, 0xa4, 0x0a, 0xc7, 0xbf, 0x5b, 0x1b, 0x0c, 0x0c, 0x02, 0xcd, 0x3a, 0xa0, 0xb2, 0xd9, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp384r1_3007 = { .name = "ecdh_secp384r1_3007", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3007_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3007_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3007_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 500 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3008 for ECDH, tcId is 501 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3008_peerpubkey[] = { 0x1e, 0x17, 0xe1, 0x73, 0xd3, 0x7a, 0xb9, 0x83, 0x82, 0x83, 0xf8, 0x4f, 0x24, 0xa0, 0xa2, 0x5c, 0xaa, 0xa6, 0x0c, 0x41, 0x1f, 0xbf, 0xea, 0x58, 0x2c, 0x44, 0xf8, 0xfb, 0xa2, 0x56, 0x0e, 0xce, 0x02, 0x8c, 0xbe, 0x39, 0x7b, 0x0e, 0xda, 0x69, 0xfc, 0x87, 0x2d, 0x80, 0xd9, 0xeb, 0xe0, 0x65, 0x78, 0x9c, 0x07, 0x23, 0xea, 0xfc, 0xc9, 0xe9, 0xa2, 0xba, 0xd4, 0x31, 0xb1, 0x1c, 0xaf, 0x7c, 0x5d, 0x75, 0x98, 0xca, 0x99, 0x90, 0x74, 0x05, 0x6b, 0xa8, 0x08, 0xa5, 0xd0, 0x79, 0x77, 0xc6, 0x78, 0xf9, 0x53, 0x4d, 0xe1, 0x52, 0xff, 0xda, 0xca, 0x3f, 0x63, 0xcb, 0xa3, 0xf9, 0x78, 0x94, }; static const unsigned char ecdh_secp384r1_3008_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3008_sharedsecret[] = { 0x6f, 0x0a, 0xa1, 0x1a, 0xb7, 0x4a, 0xe5, 0x03, 0x4e, 0x23, 0x1e, 0xf2, 0x63, 0x0b, 0xc7, 0x6c, 0xda, 0x6e, 0xed, 0x26, 0x32, 0x5d, 0x12, 0x36, 0x42, 0xfc, 0xe6, 0xa9, 0x50, 0xb5, 0x0f, 0x90, 0x4b, 0xc0, 0x26, 0x9f, 0x8f, 0x58, 0x9b, 0xc4, 0xd3, 0x81, 0x07, 0x33, 0x2b, 0x14, 0xda, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_3008 = { .name = "ecdh_secp384r1_3008", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3008_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3008_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3008_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 501 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3009 for ECDH, tcId is 502 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3009_peerpubkey[] = { 0x76, 0xef, 0xcc, 0x83, 0x22, 0xf0, 0xaf, 0x8d, 0x62, 0xe7, 0x36, 0xa0, 0xe1, 0x10, 0xf6, 0x6b, 0x3a, 0xad, 0x5c, 0x87, 0xbf, 0x7a, 0x77, 0x33, 0x3f, 0xce, 0x86, 0x4f, 0x4b, 0xa6, 0xe8, 0xdf, 0xdc, 0x16, 0xd6, 0xad, 0xd2, 0xc5, 0x42, 0xc4, 0x80, 0x55, 0x89, 0xa7, 0x1f, 0x0e, 0x48, 0xa3, 0xc2, 0x68, 0xfe, 0xab, 0x02, 0x71, 0x4c, 0x89, 0x2f, 0x82, 0x66, 0x22, 0xb2, 0x5b, 0xd2, 0x1c, 0xe2, 0xa3, 0x35, 0x14, 0xb1, 0x6c, 0x9e, 0xe8, 0x4c, 0x72, 0x2b, 0x52, 0x3b, 0x19, 0xec, 0x5f, 0xc3, 0x4d, 0x87, 0x41, 0x33, 0x08, 0x0e, 0x15, 0x89, 0x81, 0x84, 0x93, 0x55, 0xe1, 0xf5, 0x0d, }; static const unsigned char ecdh_secp384r1_3009_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3009_sharedsecret[] = { 0x7e, 0xb9, 0x96, 0x2e, 0x04, 0x49, 0xcc, 0xd2, 0xe6, 0x0b, 0x4f, 0x80, 0x94, 0xd5, 0xa7, 0xb4, 0x61, 0xd0, 0xd4, 0xb0, 0x6a, 0xf0, 0xba, 0x30, 0x6b, 0x74, 0xab, 0x0d, 0x60, 0xad, 0x5c, 0xf8, 0x94, 0xfb, 0xfc, 0x28, 0x2a, 0xc8, 0xdc, 0xa3, 0xda, 0x19, 0x6d, 0x7a, 0x29, 0x6b, 0xaa, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_3009 = { .name = "ecdh_secp384r1_3009", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3009_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3009_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3009_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 502 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3010 for ECDH, tcId is 503 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3010_peerpubkey[] = { 0xc1, 0x47, 0xd6, 0xc2, 0x35, 0xd7, 0x40, 0xb3, 0x88, 0xe6, 0xd2, 0xaf, 0xaf, 0xcf, 0x85, 0xd5, 0xb7, 0x16, 0x6e, 0x0d, 0xf4, 0xea, 0x21, 0x29, 0x40, 0x88, 0xe3, 0x04, 0x9b, 0x5c, 0x27, 0xd7, 0x63, 0x3c, 0x93, 0xd3, 0x0f, 0xdc, 0xf2, 0xb9, 0x37, 0x5e, 0x18, 0x14, 0xf5, 0x1b, 0x57, 0xbb, 0xef, 0xb2, 0xc1, 0x25, 0x75, 0xc2, 0x23, 0x4e, 0xe1, 0xf6, 0xb1, 0x47, 0xb2, 0xe0, 0x4c, 0x10, 0x4a, 0x4d, 0x2b, 0x29, 0xcd, 0x84, 0x58, 0xf5, 0x9b, 0x57, 0xbf, 0xf7, 0x5c, 0xab, 0x9b, 0x6a, 0xcb, 0xe8, 0x54, 0xfc, 0x4d, 0x96, 0xfb, 0x73, 0x37, 0x2d, 0x60, 0x54, 0xbb, 0x76, 0x83, 0x90, }; static const unsigned char ecdh_secp384r1_3010_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3010_sharedsecret[] = { 0x79, 0x02, 0x95, 0xbe, 0xd6, 0x9f, 0x53, 0x47, 0xec, 0xaa, 0xe9, 0xbe, 0xfe, 0x15, 0xcd, 0x34, 0x99, 0x75, 0x9c, 0xdf, 0xbe, 0x51, 0x97, 0x4b, 0x1f, 0x1c, 0x4b, 0xc5, 0x76, 0xe7, 0xd8, 0x81, 0xce, 0xfa, 0x93, 0xd5, 0xe8, 0xbf, 0x2c, 0x21, 0xeb, 0xb9, 0x82, 0x69, 0x8e, 0x1c, 0x7a, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp384r1_3010 = { .name = "ecdh_secp384r1_3010", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3010_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3010_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3010_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 503 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3011 for ECDH, tcId is 504 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3011_peerpubkey[] = { 0x84, 0x9c, 0x98, 0xff, 0xf5, 0xe3, 0x1b, 0x10, 0x8a, 0xef, 0xb1, 0x6c, 0xc5, 0xcf, 0x5c, 0x7e, 0x88, 0x43, 0x9d, 0x8b, 0x3e, 0xf1, 0x88, 0xf2, 0xa5, 0xbc, 0x53, 0xf3, 0x09, 0x01, 0xde, 0xdf, 0xe2, 0x94, 0xab, 0xb3, 0x8f, 0xb8, 0xcb, 0x46, 0x54, 0x7a, 0x23, 0xcf, 0xe4, 0x79, 0x09, 0xd6, 0x56, 0x44, 0x9f, 0x8a, 0x09, 0xaa, 0x88, 0xf8, 0xe2, 0x60, 0x59, 0x8e, 0xa2, 0x77, 0x2d, 0xf7, 0x4d, 0x26, 0xa4, 0x43, 0x1a, 0x03, 0x78, 0x59, 0x34, 0x37, 0x3b, 0xe7, 0xb0, 0xec, 0x91, 0x87, 0xb8, 0x21, 0x59, 0x65, 0x76, 0x17, 0x23, 0xe7, 0x95, 0x91, 0x17, 0x69, 0x60, 0xea, 0xc0, 0x14, }; static const unsigned char ecdh_secp384r1_3011_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3011_sharedsecret[] = { 0x58, 0xa1, 0x1a, 0x17, 0xc4, 0xad, 0xa4, 0xd4, 0x46, 0xc0, 0x8b, 0x83, 0xaa, 0x05, 0x68, 0x7f, 0xee, 0x8f, 0xd6, 0xe7, 0x83, 0x03, 0x64, 0x8b, 0x85, 0x83, 0x26, 0x21, 0x97, 0xf8, 0x7b, 0xe9, 0x7d, 0xbe, 0x0b, 0xbd, 0x27, 0x4e, 0x44, 0x4a, 0x38, 0x4e, 0x22, 0x16, 0x96, 0x53, 0x0f, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp384r1_3011 = { .name = "ecdh_secp384r1_3011", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3011_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3011_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3011_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 504 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3012 for ECDH, tcId is 505 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3012_peerpubkey[] = { 0x57, 0xcf, 0x64, 0x55, 0x78, 0xdd, 0x24, 0x2c, 0x71, 0x4d, 0x10, 0x0d, 0xd2, 0x35, 0x68, 0xb1, 0x6d, 0x37, 0x45, 0xda, 0x80, 0x97, 0x08, 0xd0, 0x1e, 0xb6, 0xa7, 0x16, 0x8e, 0x6f, 0x71, 0xde, 0xc2, 0x07, 0x4c, 0x5a, 0x6c, 0x23, 0xbd, 0x05, 0x52, 0x3d, 0xfc, 0xcc, 0x97, 0xde, 0xa6, 0xf0, 0x8d, 0xa1, 0x95, 0xda, 0xa2, 0x05, 0x6d, 0xa0, 0x57, 0x6b, 0xbc, 0x0f, 0xfb, 0x5e, 0x73, 0xbb, 0xda, 0xd0, 0x3b, 0x04, 0xd2, 0x3b, 0x4b, 0x60, 0x24, 0x51, 0xa5, 0xba, 0x91, 0xb1, 0x7d, 0xce, 0x30, 0x2f, 0x4a, 0xd1, 0x64, 0xc6, 0xa4, 0xa2, 0xb5, 0x8e, 0x3f, 0x02, 0x53, 0xa5, 0xe9, 0xd6, }; static const unsigned char ecdh_secp384r1_3012_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3012_sharedsecret[] = { 0x92, 0x60, 0x48, 0x3a, 0x16, 0x56, 0x90, 0xd5, 0x4c, 0x10, 0xcb, 0x86, 0x7a, 0x9f, 0x89, 0x6b, 0xbd, 0x12, 0x3d, 0x47, 0x68, 0xa1, 0x8d, 0x32, 0x23, 0x00, 0xd4, 0x20, 0xaa, 0xc8, 0x8a, 0xe2, 0x0f, 0x18, 0x8b, 0x57, 0xf8, 0xe9, 0x7a, 0xfa, 0xd5, 0x5e, 0xbb, 0x81, 0x57, 0x28, 0xf4, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp384r1_3012 = { .name = "ecdh_secp384r1_3012", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3012_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3012_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3012_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 505 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3013 for ECDH, tcId is 506 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3013_peerpubkey[] = { 0xca, 0xb2, 0xd9, 0xd3, 0x6c, 0x8e, 0xc0, 0x9f, 0x18, 0xba, 0xa0, 0xab, 0xb5, 0x21, 0x37, 0x2a, 0x5c, 0xc2, 0xf6, 0x24, 0x84, 0x8f, 0x95, 0x46, 0x0a, 0x86, 0x15, 0x23, 0x8e, 0x68, 0xc1, 0x1c, 0x1b, 0x43, 0xd2, 0x2b, 0x84, 0xd1, 0xe5, 0x35, 0xec, 0x1d, 0x85, 0x56, 0x0d, 0xe2, 0x93, 0xce, 0x1f, 0xd5, 0xe6, 0xe7, 0xac, 0x7e, 0xb6, 0xf1, 0x73, 0xad, 0x27, 0xb6, 0x39, 0x85, 0xfc, 0xc8, 0x3b, 0x95, 0x32, 0xaa, 0x56, 0xf2, 0xb5, 0x9b, 0x53, 0xa9, 0xd1, 0x16, 0x09, 0x8f, 0xda, 0x9a, 0xba, 0x49, 0xd5, 0x7c, 0x1e, 0xed, 0x0f, 0x06, 0x3b, 0xcc, 0x70, 0x1b, 0xb1, 0x0f, 0x6c, 0x2b, }; static const unsigned char ecdh_secp384r1_3013_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3013_sharedsecret[] = { 0xb4, 0x67, 0x9a, 0xf8, 0x0a, 0x2a, 0xd3, 0x4e, 0xf8, 0x6e, 0xac, 0xf2, 0xc2, 0x19, 0x15, 0x56, 0xbc, 0x02, 0x40, 0xc7, 0x91, 0x3f, 0xb1, 0x4c, 0x4c, 0x1f, 0x86, 0x23, 0xb5, 0xdb, 0x41, 0xb8, 0x54, 0xd6, 0x30, 0xdc, 0x65, 0x73, 0x8d, 0x1f, 0xaf, 0x54, 0x4a, 0xa4, 0x29, 0x79, 0xae, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_3013 = { .name = "ecdh_secp384r1_3013", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3013_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3013_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3013_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 506 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3014 for ECDH, tcId is 507 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3014_peerpubkey[] = { 0xd7, 0x1d, 0xf4, 0x09, 0x5c, 0x13, 0x85, 0x23, 0x34, 0x0a, 0x40, 0x10, 0xcf, 0xa9, 0x76, 0xb3, 0xb2, 0x7a, 0xf4, 0x8c, 0xa8, 0x3e, 0x8c, 0x6b, 0xb4, 0x59, 0x6f, 0x9f, 0x8e, 0x8f, 0x13, 0xe3, 0x8d, 0xe4, 0xe2, 0x5c, 0xe1, 0xd3, 0x79, 0xb4, 0x1a, 0x95, 0xf9, 0xd7, 0xf8, 0xa8, 0x46, 0x06, 0xb2, 0x8c, 0x69, 0x70, 0x4b, 0x68, 0x78, 0x8e, 0xb6, 0xa3, 0x5c, 0x8b, 0xca, 0xa7, 0xd9, 0x71, 0x8e, 0x00, 0xc9, 0xbc, 0x56, 0x7a, 0xcd, 0xc4, 0x58, 0xb6, 0x73, 0x2a, 0xa8, 0x70, 0x41, 0xd2, 0x7b, 0x6a, 0x57, 0x4d, 0x51, 0xe9, 0x54, 0x37, 0x85, 0x5b, 0xdc, 0x86, 0x74, 0x8c, 0x5c, 0xac, }; static const unsigned char ecdh_secp384r1_3014_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3014_sharedsecret[] = { 0x8a, 0x34, 0xde, 0x8b, 0xeb, 0x88, 0x43, 0x64, 0xb5, 0x83, 0xc9, 0xcb, 0xce, 0x39, 0x09, 0x69, 0x96, 0x7c, 0xc2, 0xa5, 0x00, 0x90, 0xee, 0x13, 0x2a, 0xcb, 0xd4, 0x9b, 0xf7, 0x80, 0xad, 0x7f, 0x09, 0x2a, 0xe3, 0xeb, 0xd4, 0x68, 0x6a, 0x70, 0xba, 0x55, 0x4e, 0xfd, 0xd6, 0xac, 0xd4, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_3014 = { .name = "ecdh_secp384r1_3014", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3014_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3014_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3014_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 507 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3015 for ECDH, tcId is 508 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3015_peerpubkey[] = { 0xa5, 0x76, 0x17, 0x75, 0x85, 0x0a, 0x25, 0x98, 0x5a, 0x32, 0x43, 0x04, 0x42, 0xd6, 0x60, 0xaa, 0xdf, 0x9e, 0x1e, 0x38, 0x8b, 0x57, 0xe6, 0xe1, 0xbf, 0xe4, 0x14, 0x95, 0xb9, 0xa0, 0x5a, 0x82, 0x40, 0xf7, 0x7f, 0x33, 0x97, 0xc5, 0xcd, 0xb0, 0xc8, 0x3d, 0x73, 0x94, 0x59, 0x84, 0xab, 0xed, 0xd2, 0xc7, 0xcf, 0xa5, 0xd5, 0xd9, 0x17, 0x38, 0xc6, 0x57, 0x76, 0x46, 0x65, 0x8c, 0x04, 0x48, 0xf0, 0x15, 0x5b, 0x5b, 0xf8, 0x39, 0x57, 0x5a, 0x36, 0xd1, 0xb2, 0x6d, 0x87, 0xd1, 0xb2, 0xb3, 0xaf, 0xb4, 0xf6, 0x86, 0x53, 0xa6, 0xbf, 0xa5, 0xed, 0xfc, 0x57, 0xaa, 0x85, 0x29, 0xe6, 0x22, }; static const unsigned char ecdh_secp384r1_3015_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3015_sharedsecret[] = { 0x79, 0x0d, 0xfc, 0xff, 0x47, 0x21, 0xef, 0x17, 0x01, 0xe3, 0xff, 0x52, 0x1e, 0x42, 0x21, 0xbe, 0x51, 0xae, 0x24, 0x2f, 0x95, 0x16, 0x6b, 0x92, 0x92, 0xc7, 0xaa, 0x2f, 0xa3, 0xc9, 0xb7, 0x99, 0xaf, 0xd3, 0x53, 0x98, 0x7a, 0x53, 0x56, 0x90, 0xff, 0x20, 0xd6, 0x6f, 0x57, 0x8f, 0x38, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp384r1_3015 = { .name = "ecdh_secp384r1_3015", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3015_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3015_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3015_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 508 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3016 for ECDH, tcId is 509 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3016_peerpubkey[] = { 0x54, 0xfc, 0x2f, 0x89, 0xcd, 0xe6, 0xf6, 0xe8, 0x6b, 0x6c, 0xf3, 0x28, 0x61, 0x98, 0xf9, 0xa9, 0xe3, 0x3c, 0x8d, 0x66, 0x2c, 0x21, 0x51, 0x20, 0x5d, 0xdc, 0xff, 0x12, 0xe2, 0xd3, 0x2f, 0xa8, 0x91, 0xee, 0xc2, 0x35, 0x9b, 0xc0, 0x72, 0x24, 0xd6, 0x4c, 0x5e, 0x33, 0x9f, 0xf9, 0xd5, 0x89, 0x18, 0xa3, 0xb7, 0x93, 0x72, 0xd1, 0x42, 0xfb, 0x34, 0x1d, 0xf3, 0xb1, 0x5b, 0x54, 0xb3, 0x0e, 0x8f, 0x95, 0x6b, 0x07, 0x9b, 0x12, 0x78, 0x27, 0x6a, 0x33, 0xb4, 0xd8, 0x50, 0x89, 0x20, 0x94, 0x0c, 0xa6, 0x3f, 0xb8, 0xe9, 0x70, 0xff, 0x98, 0xf9, 0x1e, 0xcc, 0x79, 0x86, 0x27, 0x5e, 0xdb, }; static const unsigned char ecdh_secp384r1_3016_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3016_sharedsecret[] = { 0xcb, 0x86, 0x10, 0x53, 0xc1, 0xd6, 0x85, 0x19, 0x4e, 0xa5, 0x84, 0x13, 0xd8, 0xf9, 0x98, 0x1e, 0x07, 0x14, 0x5b, 0xc5, 0x73, 0xba, 0x92, 0x4b, 0xdb, 0xa2, 0xe2, 0x9c, 0x5f, 0x98, 0xe9, 0xe7, 0x0e, 0xa0, 0xcd, 0x04, 0x12, 0xd6, 0xc3, 0x87, 0x44, 0x9e, 0x9a, 0xe7, 0x67, 0xdc, 0x43, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_3016 = { .name = "ecdh_secp384r1_3016", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3016_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3016_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3016_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 509 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3017 for ECDH, tcId is 510 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3017_peerpubkey[] = { 0xbf, 0xbf, 0x3f, 0xab, 0x1a, 0xcb, 0x39, 0xce, 0x28, 0xf0, 0x63, 0xd7, 0x8c, 0xf2, 0x50, 0x77, 0x2b, 0xd0, 0x0b, 0xdc, 0xa9, 0x8b, 0x76, 0x9e, 0x1f, 0x1f, 0xd4, 0x42, 0xb7, 0x7f, 0x42, 0x70, 0x10, 0x6a, 0x5f, 0x7d, 0x91, 0x3c, 0x19, 0x05, 0xbe, 0xa0, 0xdc, 0x75, 0xb3, 0x1f, 0x87, 0xa1, 0x15, 0xc5, 0x66, 0xdb, 0xff, 0x0c, 0xd1, 0x07, 0x33, 0x25, 0x45, 0x0a, 0x91, 0x09, 0x6f, 0xe5, 0xf5, 0xd6, 0x01, 0xa6, 0x36, 0x40, 0x7c, 0xfb, 0xc4, 0xf5, 0x72, 0x0f, 0x39, 0x6f, 0xa6, 0xcb, 0x16, 0x98, 0x73, 0x70, 0xce, 0x70, 0xe2, 0x9b, 0xb7, 0xed, 0x2f, 0x44, 0x74, 0x25, 0xf1, 0x0a, }; static const unsigned char ecdh_secp384r1_3017_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3017_sharedsecret[] = { 0x37, 0x5f, 0xfb, 0x90, 0xad, 0x6c, 0x51, 0x86, 0x68, 0xe5, 0xd2, 0x59, 0x41, 0xac, 0xd5, 0xf9, 0xc0, 0x17, 0x34, 0x6d, 0x06, 0xf8, 0x93, 0xcf, 0x95, 0x75, 0x22, 0x58, 0xbc, 0xc5, 0xf9, 0xa2, 0x59, 0x96, 0xa8, 0x0f, 0x42, 0xe0, 0x47, 0x5a, 0x80, 0x44, 0x3d, 0xc4, 0x19, 0x7b, 0xba, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp384r1_3017 = { .name = "ecdh_secp384r1_3017", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3017_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3017_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3017_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 510 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3018 for ECDH, tcId is 511 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3018_peerpubkey[] = { 0x57, 0x57, 0x57, 0x74, 0x80, 0xf3, 0x2a, 0xed, 0xac, 0x6e, 0x19, 0x76, 0x5f, 0x91, 0x97, 0xcc, 0x27, 0x8c, 0xb0, 0xb1, 0xa2, 0x1f, 0xc6, 0xb6, 0x42, 0x3c, 0x8f, 0x6c, 0x6c, 0xde, 0xa1, 0xd3, 0x24, 0xc9, 0x3e, 0xea, 0x8b, 0xd7, 0xdc, 0xca, 0x8f, 0xd2, 0x93, 0xd6, 0x98, 0x76, 0x52, 0x43, 0x60, 0xb1, 0xa4, 0x82, 0x55, 0x22, 0xac, 0xd8, 0x33, 0xd3, 0x8d, 0xbd, 0x61, 0x50, 0x85, 0x47, 0x35, 0x8a, 0x2f, 0x5c, 0x28, 0x1b, 0x49, 0x6a, 0xbd, 0x57, 0x07, 0x2a, 0xb1, 0x4f, 0x9a, 0x22, 0x35, 0xbc, 0xa0, 0x25, 0x45, 0xe0, 0x42, 0x75, 0x26, 0xbc, 0x2b, 0xbc, 0x92, 0x68, 0x34, 0x9f, }; static const unsigned char ecdh_secp384r1_3018_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3018_sharedsecret[] = { 0xd1, 0xa0, 0x2a, 0x26, 0x4a, 0xb1, 0x5a, 0xef, 0x52, 0xa5, 0x34, 0xeb, 0x50, 0x00, 0xe2, 0x94, 0x3d, 0x8c, 0xf1, 0xf7, 0x72, 0x55, 0xa2, 0x7f, 0x84, 0x5e, 0x96, 0xe1, 0xf8, 0x1d, 0xf4, 0x7e, 0xe9, 0x03, 0xc3, 0xe9, 0x21, 0x53, 0x9d, 0x77, 0xd7, 0x2f, 0x55, 0xb7, 0xef, 0xc9, 0xdf, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp384r1_3018 = { .name = "ecdh_secp384r1_3018", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3018_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3018_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3018_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 511 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3019 for ECDH, tcId is 512 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3019_peerpubkey[] = { 0x14, 0x52, 0xf5, 0xea, 0xfb, 0xb5, 0xcc, 0x56, 0x3f, 0x2c, 0x7c, 0xa4, 0x03, 0xb8, 0x03, 0xf6, 0xf8, 0xd6, 0x64, 0x79, 0x06, 0x25, 0x08, 0xa2, 0x25, 0x8a, 0x8d, 0x98, 0x8a, 0x76, 0x9b, 0x80, 0xe0, 0x77, 0x73, 0x5b, 0x45, 0xef, 0xab, 0x1f, 0x29, 0x7c, 0xee, 0xbd, 0x74, 0x34, 0x7f, 0x58, 0x4f, 0x2b, 0xad, 0xbc, 0xa5, 0x54, 0x57, 0x40, 0x48, 0x66, 0xba, 0xef, 0xab, 0xfa, 0x99, 0xb7, 0x0f, 0xbf, 0x10, 0x5d, 0x17, 0xf3, 0x52, 0x34, 0x7f, 0x67, 0x99, 0x64, 0x74, 0x48, 0x70, 0x8f, 0x78, 0x8f, 0x8a, 0x14, 0x5b, 0xdd, 0x96, 0xd4, 0xaf, 0x2d, 0x7e, 0x65, 0x4b, 0xe7, 0xe5, 0xf1, }; static const unsigned char ecdh_secp384r1_3019_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3019_sharedsecret[] = { 0xcc, 0xaa, 0x37, 0x76, 0x9d, 0x03, 0x51, 0x70, 0xbb, 0x5c, 0x19, 0xc1, 0x35, 0xda, 0x22, 0x91, 0x44, 0x6e, 0xfd, 0x7e, 0xcd, 0x3b, 0xe9, 0x00, 0x86, 0x12, 0xb8, 0xcc, 0xc2, 0x9f, 0x6e, 0x9d, 0x7a, 0x45, 0xdd, 0x4e, 0x04, 0x79, 0x12, 0x3f, 0x03, 0xe7, 0xe3, 0x04, 0xf3, 0x47, 0x29, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_3019 = { .name = "ecdh_secp384r1_3019", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3019_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3019_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3019_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 512 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3020 for ECDH, tcId is 513 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3020_peerpubkey[] = { 0xad, 0x27, 0xa3, 0x65, 0xe4, 0xb6, 0x99, 0x4c, 0x5e, 0xd1, 0x35, 0xfc, 0x47, 0x94, 0xd7, 0x3e, 0xb7, 0x1e, 0xc2, 0x6d, 0x78, 0x7f, 0xec, 0x10, 0xf1, 0x38, 0x2b, 0x19, 0xc1, 0xb5, 0xcd, 0x1d, 0x67, 0x29, 0x99, 0xfe, 0xee, 0x86, 0xd5, 0xf3, 0x05, 0x51, 0x6d, 0x60, 0x1f, 0xd1, 0xc6, 0xaa, 0xf8, 0x66, 0x48, 0x58, 0x98, 0x8f, 0x02, 0xf3, 0x6c, 0x88, 0x8f, 0x71, 0x87, 0x20, 0x07, 0x87, 0x0b, 0xb3, 0x26, 0x54, 0xaa, 0x75, 0x53, 0x0f, 0xc3, 0xb7, 0xa2, 0x35, 0xf7, 0xfd, 0x2b, 0xcd, 0x81, 0x5e, 0x30, 0x34, 0x45, 0x52, 0x69, 0x60, 0xf6, 0xff, 0xcd, 0xd6, 0x1d, 0x2d, 0x13, 0x40, }; static const unsigned char ecdh_secp384r1_3020_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3020_sharedsecret[] = { 0x4a, 0xe9, 0x4d, 0x3e, 0xda, 0x58, 0x39, 0xf4, 0xb8, 0xb9, 0xff, 0xe6, 0xd5, 0x10, 0x14, 0x4c, 0xf2, 0x8b, 0xde, 0x98, 0x58, 0x1e, 0x82, 0x72, 0x6f, 0x2d, 0x76, 0xd9, 0x33, 0x91, 0x9a, 0xda, 0xb7, 0x1d, 0x2c, 0xdf, 0x4c, 0x43, 0x10, 0xf8, 0xab, 0xcc, 0x74, 0xd7, 0x0e, 0xba, 0x3a, 0x33, }; static const wycheproof_ecdh_test ecdh_secp384r1_3020 = { .name = "ecdh_secp384r1_3020", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3020_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3020_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3020_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 513 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3021 for ECDH, tcId is 514 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3021_peerpubkey[] = { 0x73, 0x30, 0x41, 0xf3, 0xa6, 0x04, 0x68, 0xbc, 0x07, 0x11, 0xd5, 0xa5, 0x07, 0x3a, 0x71, 0xef, 0x60, 0x62, 0xd0, 0xae, 0x70, 0x70, 0x6a, 0xf5, 0x13, 0x16, 0x03, 0x35, 0x80, 0xca, 0xe0, 0x58, 0xfc, 0x4a, 0xc9, 0x9e, 0xbb, 0xa8, 0x23, 0xb1, 0x9f, 0x48, 0xf3, 0x09, 0xe3, 0x4f, 0xb0, 0x29, 0x33, 0x67, 0x0d, 0xcc, 0x75, 0xed, 0x47, 0x74, 0x47, 0x71, 0xf6, 0x02, 0x38, 0xcc, 0xeb, 0xcd, 0xdc, 0xcd, 0x42, 0xd6, 0x4e, 0x41, 0x04, 0x5f, 0xd8, 0xeb, 0xc3, 0x5b, 0xba, 0xe0, 0xa3, 0x7b, 0x43, 0x38, 0x8d, 0xdb, 0x87, 0x35, 0x6c, 0xbb, 0x52, 0x5a, 0x13, 0xd5, 0x7f, 0x47, 0xa2, 0xcd, }; static const unsigned char ecdh_secp384r1_3021_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3021_sharedsecret[] = { 0x06, 0x2b, 0x8a, 0x96, 0x8e, 0x45, 0x43, 0x5c, 0x2b, 0x5b, 0x54, 0xb4, 0x17, 0xf5, 0x5e, 0x89, 0xf9, 0x35, 0xb6, 0x6d, 0xec, 0x44, 0x88, 0x2c, 0x06, 0xab, 0x8d, 0x6c, 0xda, 0x8d, 0xcf, 0xb5, 0x53, 0xa7, 0x83, 0x61, 0xd3, 0x82, 0xa9, 0x21, 0x11, 0x91, 0x87, 0x1e, 0x9a, 0x34, 0x22, 0x0f, }; static const wycheproof_ecdh_test ecdh_secp384r1_3021 = { .name = "ecdh_secp384r1_3021", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3021_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3021_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3021_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 514 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3022 for ECDH, tcId is 515 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3022_peerpubkey[] = { 0x81, 0x88, 0x58, 0x04, 0xee, 0x93, 0x19, 0x88, 0xcf, 0xf3, 0xf2, 0x18, 0xc9, 0xaf, 0x14, 0x29, 0x57, 0x3c, 0xcf, 0x8c, 0x8f, 0x3d, 0xf4, 0x0c, 0x69, 0x8d, 0x97, 0x6e, 0x8b, 0xc7, 0xc1, 0x28, 0x81, 0x95, 0x34, 0x45, 0xdd, 0xc4, 0xf1, 0x90, 0x2b, 0x2f, 0x2f, 0x31, 0x53, 0x30, 0x4e, 0x82, 0xd7, 0x09, 0x4b, 0x67, 0x3b, 0x76, 0xbe, 0xeb, 0xfa, 0x5d, 0x84, 0xc4, 0x9b, 0x01, 0xce, 0x16, 0x8c, 0x45, 0x92, 0x01, 0xcb, 0x81, 0x92, 0xef, 0x96, 0xd8, 0x91, 0x01, 0x0e, 0x4b, 0xc8, 0x8f, 0x0a, 0xcc, 0x4f, 0xbb, 0x40, 0xad, 0x61, 0x96, 0x6e, 0x78, 0x7b, 0x9a, 0x29, 0x8a, 0x2b, 0xba, }; static const unsigned char ecdh_secp384r1_3022_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3022_sharedsecret[] = { 0xba, 0x41, 0xc3, 0x8d, 0x33, 0xb2, 0xae, 0x34, 0x27, 0x97, 0xee, 0x69, 0x72, 0x3f, 0x04, 0x2a, 0x71, 0xdd, 0x7f, 0xb1, 0x5f, 0x3d, 0xc8, 0x0d, 0xae, 0x40, 0x3d, 0x4f, 0x88, 0xac, 0xae, 0x28, 0xe2, 0xe5, 0x1f, 0x2c, 0xa9, 0xd5, 0x2b, 0x4a, 0xa4, 0xe2, 0xb3, 0xe5, 0x82, 0x57, 0xe2, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_3022 = { .name = "ecdh_secp384r1_3022", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3022_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3022_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3022_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 515 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3023 for ECDH, tcId is 516 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3023_peerpubkey[] = { 0x16, 0x79, 0x15, 0xd9, 0x62, 0xa4, 0x05, 0xf8, 0xd0, 0x4d, 0x6d, 0x64, 0x94, 0x27, 0x0d, 0x88, 0x3f, 0xe7, 0x59, 0x4e, 0x9a, 0x21, 0xf7, 0xb5, 0x77, 0x15, 0x75, 0x0f, 0x8d, 0x78, 0xec, 0x07, 0x14, 0xf0, 0xfb, 0x85, 0xa9, 0xfe, 0x5a, 0xee, 0x4e, 0x6d, 0x10, 0x34, 0x4e, 0x4b, 0x12, 0xf9, 0x1f, 0x00, 0x44, 0x1c, 0x8b, 0xf5, 0x67, 0xff, 0x84, 0xe6, 0xee, 0x42, 0x98, 0xb9, 0xd3, 0x39, 0x2c, 0x78, 0xfb, 0x32, 0x46, 0x19, 0x58, 0x10, 0x2e, 0x1d, 0x29, 0xd2, 0xf4, 0xc4, 0x73, 0x21, 0x04, 0x24, 0x2c, 0xc4, 0xbf, 0xee, 0x22, 0xaa, 0x8f, 0x4a, 0x17, 0x2a, 0xa5, 0x10, 0xac, 0x88, }; static const unsigned char ecdh_secp384r1_3023_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3023_sharedsecret[] = { 0xc6, 0xaf, 0x4e, 0xae, 0x59, 0x99, 0xe0, 0xd0, 0x65, 0x85, 0x05, 0xcb, 0x4b, 0x39, 0x5e, 0x9d, 0x73, 0x59, 0x2a, 0x3d, 0x9d, 0x0b, 0x3c, 0x07, 0xca, 0xeb, 0x2b, 0xef, 0x1b, 0x03, 0xca, 0x4d, 0x60, 0x3b, 0x33, 0xe6, 0xf6, 0xbb, 0xd9, 0x0f, 0x94, 0x16, 0xc4, 0xaa, 0x00, 0x22, 0xe5, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_3023 = { .name = "ecdh_secp384r1_3023", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3023_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3023_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3023_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 516 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3024 for ECDH, tcId is 517 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3024_peerpubkey[] = { 0x66, 0xe1, 0xfe, 0x89, 0x3f, 0x72, 0xff, 0xea, 0x5e, 0x24, 0xea, 0x5a, 0x4f, 0x0d, 0x65, 0x58, 0xfd, 0xbd, 0x32, 0x22, 0xdb, 0xa6, 0xe3, 0x34, 0x07, 0x53, 0xc8, 0x29, 0x79, 0xac, 0x59, 0x53, 0x0d, 0xbd, 0x37, 0xfa, 0xc2, 0xf5, 0x13, 0x55, 0x46, 0x5d, 0x56, 0xaf, 0xe1, 0xde, 0x58, 0x2b, 0xea, 0xca, 0x91, 0x04, 0xad, 0x26, 0x9b, 0x0f, 0x84, 0x8d, 0x8b, 0x4d, 0x71, 0x18, 0x2a, 0xfc, 0x30, 0x12, 0x91, 0x47, 0x36, 0x9a, 0x74, 0x19, 0x3d, 0xdf, 0x4d, 0xdb, 0x3b, 0x6f, 0xf1, 0x28, 0xf9, 0x41, 0x68, 0xce, 0x0b, 0xc6, 0x0e, 0x77, 0x91, 0xb4, 0xb1, 0xca, 0x2e, 0x29, 0x43, 0x1b, }; static const unsigned char ecdh_secp384r1_3024_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3024_sharedsecret[] = { 0x9e, 0x36, 0x4a, 0xdc, 0xb7, 0x2b, 0x15, 0xa4, 0x2c, 0xbd, 0x6f, 0xa7, 0x91, 0x14, 0x88, 0x9e, 0x22, 0xb9, 0x3b, 0x53, 0x3b, 0x01, 0x19, 0xaf, 0xd9, 0x09, 0x14, 0xb1, 0x81, 0x12, 0x81, 0x51, 0xb8, 0xa1, 0x7d, 0xb4, 0x90, 0x04, 0xec, 0x39, 0xad, 0x5d, 0xb5, 0x60, 0x3f, 0xb9, 0x71, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp384r1_3024 = { .name = "ecdh_secp384r1_3024", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3024_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3024_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3024_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 517 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3025 for ECDH, tcId is 518 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3025_peerpubkey[] = { 0x62, 0xeb, 0xaa, 0xbf, 0xf2, 0xa0, 0x7a, 0x85, 0x2a, 0xf9, 0xaa, 0xb8, 0x12, 0x6e, 0x93, 0xc3, 0x11, 0x09, 0xe8, 0x93, 0xcc, 0x61, 0xb3, 0x54, 0xa7, 0x2a, 0x17, 0x44, 0xcb, 0x40, 0x9a, 0x02, 0xce, 0xc6, 0xe6, 0x19, 0x58, 0x45, 0x95, 0x7a, 0x53, 0xbd, 0xe9, 0x7d, 0xec, 0x7a, 0x87, 0xc2, 0x5e, 0xa1, 0x1b, 0x00, 0x3a, 0x69, 0x4e, 0x37, 0x1c, 0x2b, 0xe1, 0xcf, 0x5d, 0xb5, 0xb7, 0xfb, 0xa2, 0x78, 0xf6, 0x96, 0x8f, 0x54, 0xc5, 0xfb, 0x66, 0x77, 0x98, 0x7b, 0xbb, 0x6b, 0x55, 0xdd, 0x90, 0x72, 0xe8, 0x32, 0x5b, 0x36, 0x5c, 0x25, 0x26, 0x2c, 0x50, 0x24, 0xf6, 0x8b, 0x2e, 0x5b, }; static const unsigned char ecdh_secp384r1_3025_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3025_sharedsecret[] = { 0x23, 0x10, 0x48, 0x06, 0xdb, 0xd8, 0x5f, 0x71, 0xd8, 0xfc, 0x38, 0x10, 0x1b, 0x0c, 0xd0, 0xbb, 0xcd, 0x60, 0x33, 0x1d, 0x8f, 0x74, 0x86, 0x9f, 0x06, 0x43, 0x11, 0x6a, 0xc3, 0x62, 0xb5, 0xe9, 0x33, 0xdb, 0x87, 0x43, 0xff, 0x80, 0xdf, 0xcc, 0x2d, 0xf5, 0xcb, 0xcb, 0xf0, 0x27, 0x18, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_3025 = { .name = "ecdh_secp384r1_3025", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3025_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3025_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3025_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 518 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3026 for ECDH, tcId is 519 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3026_peerpubkey[] = { 0x27, 0x6a, 0x5a, 0x27, 0x4b, 0x46, 0xa0, 0xa3, 0x6f, 0x81, 0x1c, 0xf6, 0x4b, 0xc7, 0xa6, 0x44, 0xd5, 0xad, 0x9c, 0x12, 0x4b, 0xe0, 0x02, 0xa6, 0xfd, 0xd1, 0xcc, 0x11, 0x18, 0x80, 0x65, 0x5c, 0x8d, 0x29, 0x87, 0x67, 0x4e, 0xa4, 0x9e, 0x7d, 0x70, 0xd2, 0xa0, 0xae, 0x82, 0x0d, 0x1a, 0x7d, 0x4e, 0xc3, 0xba, 0xe2, 0xdd, 0x1d, 0x77, 0xaf, 0x08, 0x2f, 0xab, 0xcd, 0x68, 0xac, 0x20, 0xf2, 0x09, 0xe8, 0xfa, 0x44, 0x64, 0x78, 0x79, 0x42, 0x23, 0xbe, 0x1d, 0x63, 0xd7, 0x19, 0x87, 0xe9, 0x64, 0xe4, 0x5f, 0x0b, 0xcf, 0x6a, 0x2e, 0xa0, 0xa1, 0x2c, 0x63, 0x34, 0x45, 0x28, 0x5a, 0x46, }; static const unsigned char ecdh_secp384r1_3026_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3026_sharedsecret[] = { 0x28, 0x35, 0x02, 0x35, 0x5b, 0x21, 0x18, 0x9f, 0x73, 0x61, 0xe8, 0x94, 0x57, 0x55, 0x09, 0x74, 0xf8, 0x6a, 0xe2, 0xb6, 0x6d, 0x02, 0x55, 0x06, 0x89, 0x9c, 0x15, 0xb3, 0x90, 0xda, 0x24, 0x8e, 0x14, 0xfd, 0x1b, 0x4f, 0x25, 0xc8, 0x58, 0x4d, 0x1a, 0x71, 0xe7, 0xf8, 0xc9, 0x3f, 0xa9, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_3026 = { .name = "ecdh_secp384r1_3026", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3026_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3026_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3026_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 519 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3027 for ECDH, tcId is 520 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3027_peerpubkey[] = { 0x98, 0xfe, 0xe3, 0x14, 0xcf, 0xb3, 0xc0, 0x1c, 0xc2, 0xd9, 0xfd, 0x7c, 0x25, 0x68, 0x33, 0x60, 0x27, 0x84, 0x00, 0x08, 0xbc, 0xfb, 0xfc, 0x82, 0x92, 0x42, 0x1e, 0xd6, 0xb0, 0x72, 0x7f, 0xa2, 0x0b, 0x70, 0x02, 0xa5, 0x72, 0x6a, 0x68, 0x5d, 0x44, 0x96, 0x3a, 0xd8, 0xf7, 0x4c, 0x69, 0x5d, 0xa2, 0x5a, 0x54, 0x2b, 0x8e, 0x0b, 0xb9, 0xa4, 0x85, 0x8b, 0xe6, 0x4f, 0x70, 0x80, 0x0d, 0xa9, 0x3a, 0xf6, 0x77, 0x6b, 0xb7, 0x95, 0xbb, 0x16, 0x9f, 0x4c, 0x9d, 0x15, 0x17, 0x95, 0xf3, 0xa5, 0xa3, 0x7a, 0x3c, 0x82, 0x26, 0x4c, 0xf6, 0x87, 0x0c, 0x4d, 0xed, 0x68, 0x4a, 0x71, 0x26, 0x9b, }; static const unsigned char ecdh_secp384r1_3027_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3027_sharedsecret[] = { 0x90, 0x44, 0xbe, 0x70, 0x56, 0x66, 0x64, 0xed, 0x91, 0xda, 0xb8, 0x5a, 0xa5, 0xff, 0x64, 0x4d, 0x7a, 0x34, 0x68, 0x10, 0xd2, 0x67, 0x8d, 0x27, 0x75, 0x19, 0x17, 0xc3, 0x82, 0x0c, 0x4c, 0x82, 0x50, 0x34, 0xb7, 0x8a, 0x95, 0x7b, 0x8f, 0xd1, 0xd4, 0x7e, 0x86, 0xe6, 0x7e, 0x5b, 0xa9, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp384r1_3027 = { .name = "ecdh_secp384r1_3027", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3027_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3027_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3027_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 520 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3028 for ECDH, tcId is 521 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3028_peerpubkey[] = { 0xd1, 0x6d, 0x0b, 0x11, 0xd0, 0xa3, 0x26, 0xbb, 0x27, 0x25, 0xb3, 0xc9, 0xcd, 0x59, 0x87, 0x46, 0xaf, 0x11, 0x92, 0x4f, 0x61, 0x72, 0xce, 0x53, 0xb1, 0x9a, 0x94, 0x2b, 0x96, 0x55, 0x62, 0xc2, 0xa2, 0x87, 0x5f, 0xd1, 0x5c, 0xe1, 0xf4, 0x86, 0x91, 0x56, 0xd5, 0xcf, 0x08, 0x78, 0x0c, 0x74, 0xd4, 0xc4, 0x92, 0x7c, 0xa1, 0x75, 0xb5, 0x32, 0x7c, 0x9f, 0x32, 0x1c, 0xd2, 0xa7, 0xb1, 0xac, 0xb5, 0x8f, 0xce, 0x35, 0x11, 0x60, 0xda, 0xea, 0x5d, 0x5c, 0x64, 0xd7, 0x6d, 0x38, 0xd3, 0xab, 0x17, 0xf7, 0xc1, 0x43, 0x20, 0x93, 0xad, 0x4d, 0x62, 0x00, 0x53, 0xf6, 0xf6, 0x75, 0x86, 0x4a, }; static const unsigned char ecdh_secp384r1_3028_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3028_sharedsecret[] = { 0x1f, 0xa4, 0xc8, 0xe6, 0xde, 0xc8, 0x90, 0x88, 0xa8, 0xfe, 0x72, 0x55, 0x30, 0xf5, 0xc1, 0x54, 0x67, 0x2e, 0x84, 0x48, 0x8b, 0xaa, 0xf7, 0x0a, 0x08, 0xb2, 0xe9, 0x65, 0x65, 0x96, 0x26, 0x53, 0x57, 0x74, 0x02, 0x16, 0x14, 0x24, 0x29, 0x4b, 0x7f, 0x37, 0x72, 0x08, 0xfc, 0x93, 0x61, 0x39, }; static const wycheproof_ecdh_test ecdh_secp384r1_3028 = { .name = "ecdh_secp384r1_3028", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3028_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3028_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3028_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 521 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3029 for ECDH, tcId is 522 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3029_peerpubkey[] = { 0x10, 0x52, 0x6e, 0x3b, 0x09, 0x7a, 0x99, 0xea, 0x50, 0x7b, 0xa6, 0x79, 0x5e, 0xa1, 0xf7, 0x77, 0x18, 0x69, 0x04, 0x60, 0x11, 0x7b, 0xfa, 0xc9, 0xed, 0x95, 0xbe, 0xe3, 0x11, 0xdb, 0x5f, 0x8a, 0x1a, 0x27, 0x67, 0xc1, 0x34, 0xb1, 0x9d, 0xb3, 0xc3, 0x87, 0xa1, 0xfb, 0x45, 0xbe, 0x70, 0x29, 0x31, 0x2c, 0x75, 0xd7, 0xbb, 0xee, 0xee, 0x48, 0xbc, 0x15, 0xb5, 0x5d, 0xfb, 0x71, 0x65, 0x11, 0xc5, 0x63, 0x4d, 0x71, 0x9d, 0x26, 0x90, 0x3b, 0xca, 0xce, 0x1c, 0x60, 0xa8, 0xe0, 0x30, 0x49, 0x61, 0x56, 0xd9, 0xcc, 0xac, 0x97, 0xca, 0xc7, 0x24, 0xe0, 0x93, 0x57, 0x4a, 0xe4, 0xbc, 0x83, }; static const unsigned char ecdh_secp384r1_3029_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3029_sharedsecret[] = { 0x04, 0xf4, 0x02, 0x9d, 0x37, 0x23, 0x32, 0xb4, 0xb2, 0x26, 0xc9, 0xf3, 0x25, 0x21, 0xea, 0x39, 0xa5, 0x8b, 0x65, 0x5d, 0x24, 0xe3, 0x51, 0x90, 0xce, 0x04, 0xd5, 0x8f, 0x0c, 0x04, 0x81, 0x4b, 0xe7, 0xf6, 0xff, 0xcb, 0x8a, 0x4a, 0x15, 0x13, 0x42, 0x24, 0x13, 0x4f, 0x02, 0x9e, 0xda, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_3029 = { .name = "ecdh_secp384r1_3029", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3029_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3029_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3029_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 522 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3030 for ECDH, tcId is 523 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3030_peerpubkey[] = { 0xe6, 0x32, 0xcb, 0x20, 0x12, 0x88, 0xb6, 0x43, 0xf2, 0x35, 0x53, 0x3c, 0x44, 0x84, 0x6b, 0x11, 0xa2, 0x87, 0x40, 0xee, 0x41, 0x37, 0xa2, 0x2c, 0xff, 0x7f, 0x54, 0x20, 0x54, 0xd6, 0x33, 0x7f, 0x46, 0x36, 0x38, 0x49, 0xc8, 0x31, 0x0e, 0x20, 0xd8, 0xb2, 0x9b, 0xad, 0xdb, 0x31, 0x09, 0xff, 0x94, 0x8d, 0x42, 0xae, 0x95, 0x9c, 0x3a, 0xe1, 0x43, 0xd4, 0xf0, 0x2d, 0x26, 0x87, 0x26, 0xbc, 0x2b, 0x66, 0xba, 0xfe, 0xd7, 0x65, 0x7b, 0x1a, 0x53, 0xe2, 0x3e, 0xed, 0x48, 0x09, 0x4c, 0x5c, 0xa8, 0xd2, 0x8d, 0x16, 0x12, 0x1a, 0xa6, 0x23, 0x7d, 0x81, 0x50, 0xad, 0x6c, 0x32, 0x66, 0x55, }; static const unsigned char ecdh_secp384r1_3030_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3030_sharedsecret[] = { 0xf4, 0x1f, 0x91, 0x21, 0x65, 0x82, 0x7c, 0xea, 0x27, 0xab, 0x81, 0x47, 0xa4, 0x6a, 0xbe, 0xb3, 0x0c, 0x1b, 0xc7, 0x3c, 0xfe, 0x05, 0x20, 0xd7, 0xd8, 0x69, 0x8d, 0xf8, 0xf9, 0x52, 0x9a, 0xfe, 0x26, 0xea, 0xc7, 0x07, 0x34, 0x0f, 0x38, 0xb4, 0x9e, 0xc5, 0xe7, 0x41, 0xd6, 0x46, 0xb9, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_3030 = { .name = "ecdh_secp384r1_3030", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3030_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3030_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3030_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 523 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3031 for ECDH, tcId is 524 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3031_peerpubkey[] = { 0x08, 0x83, 0x30, 0x38, 0x06, 0x13, 0xad, 0xb0, 0xb8, 0xe5, 0x31, 0x64, 0x98, 0x09, 0xfb, 0xea, 0x34, 0x0e, 0xdb, 0xdf, 0x59, 0x8a, 0xf0, 0x28, 0xe7, 0x4b, 0xa0, 0xb4, 0xf1, 0x8e, 0x2d, 0x50, 0x11, 0x85, 0x31, 0xb9, 0xa9, 0x2b, 0x07, 0x75, 0x3b, 0x2c, 0x13, 0xce, 0xb8, 0x7d, 0x3c, 0x8e, 0x38, 0xe6, 0x25, 0xb5, 0x00, 0xf4, 0xb9, 0xbd, 0x2d, 0xc7, 0x81, 0x89, 0x2f, 0xff, 0x96, 0xd8, 0x92, 0x71, 0x90, 0x9d, 0x3e, 0x56, 0x1a, 0x63, 0xe4, 0x15, 0x46, 0x7d, 0x6d, 0x45, 0x5d, 0x0a, 0x4c, 0x19, 0xc3, 0x6f, 0x16, 0xdc, 0xc2, 0x41, 0x7a, 0x34, 0x25, 0xc2, 0xad, 0xda, 0x90, 0x34, }; static const unsigned char ecdh_secp384r1_3031_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3031_sharedsecret[] = { 0x6e, 0x43, 0x7e, 0x26, 0x31, 0x6e, 0xb2, 0x59, 0x64, 0x00, 0xd8, 0xfd, 0xda, 0x5b, 0xe9, 0x0c, 0xaa, 0x94, 0xd6, 0x2c, 0x42, 0x5f, 0x27, 0xdf, 0x5c, 0xa6, 0x78, 0x98, 0xa8, 0xff, 0xdf, 0x3c, 0xde, 0x57, 0x7c, 0x4d, 0x2d, 0x66, 0xf6, 0x52, 0x24, 0x98, 0xf0, 0xb2, 0x95, 0xd7, 0x7a, 0x2e, }; static const wycheproof_ecdh_test ecdh_secp384r1_3031 = { .name = "ecdh_secp384r1_3031", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3031_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3031_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3031_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 524 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3032 for ECDH, tcId is 525 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3032_peerpubkey[] = { 0xd9, 0xa9, 0xd1, 0xe0, 0xaa, 0xca, 0xef, 0x4a, 0xec, 0xf2, 0x41, 0xd6, 0x90, 0xee, 0x41, 0x01, 0xdf, 0x74, 0xd7, 0xa3, 0x7f, 0x18, 0xce, 0x31, 0x81, 0x12, 0x8f, 0x8d, 0x42, 0x55, 0xcd, 0x34, 0x70, 0x2b, 0x17, 0xf1, 0x16, 0xb2, 0x50, 0x6c, 0xb8, 0xf5, 0x77, 0xd9, 0x35, 0x7e, 0x36, 0x29, 0x96, 0x6e, 0x62, 0xe6, 0xf9, 0x5c, 0x9e, 0xb7, 0x83, 0x3c, 0xcc, 0x1f, 0x22, 0x95, 0x6a, 0x1e, 0x25, 0x99, 0xa8, 0x75, 0xf8, 0x13, 0x9d, 0x9a, 0x2b, 0x31, 0xe2, 0x00, 0x06, 0x11, 0xb4, 0xd6, 0xdb, 0x1d, 0x23, 0xe7, 0xf0, 0xdb, 0x5b, 0x5c, 0x17, 0xbb, 0x44, 0xe1, 0x50, 0xea, 0x26, 0x95, }; static const unsigned char ecdh_secp384r1_3032_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3032_sharedsecret[] = { 0x85, 0x47, 0x72, 0xb9, 0xb7, 0x7d, 0x46, 0x87, 0x57, 0x1f, 0x19, 0x34, 0x06, 0x1d, 0xbc, 0xe0, 0x01, 0x6d, 0x47, 0xb9, 0x0a, 0x8b, 0x5d, 0x38, 0x22, 0x94, 0x75, 0xc2, 0x13, 0xcd, 0x5d, 0xf2, 0x5f, 0x96, 0x0b, 0x77, 0x5a, 0xe7, 0x29, 0x09, 0xcc, 0xcc, 0x5b, 0xa1, 0x4d, 0xd0, 0x34, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_3032 = { .name = "ecdh_secp384r1_3032", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3032_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3032_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3032_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 525 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3033 for ECDH, tcId is 526 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3033_peerpubkey[] = { 0x53, 0x5d, 0x22, 0xf3, 0x9c, 0x8a, 0x55, 0x91, 0xe7, 0xa1, 0xde, 0xef, 0x7a, 0x6c, 0x34, 0x96, 0x5f, 0xb5, 0xd1, 0xe6, 0x16, 0xf1, 0x4b, 0xb1, 0x2a, 0x7e, 0x63, 0x10, 0xd5, 0x20, 0x35, 0x0f, 0x2f, 0x75, 0x83, 0x6f, 0x9c, 0x81, 0x89, 0xec, 0x45, 0x03, 0xef, 0x74, 0xa0, 0xb8, 0x50, 0xd4, 0xab, 0xb0, 0x5a, 0xb1, 0xe5, 0xc6, 0x06, 0x18, 0x84, 0xd1, 0xef, 0xf3, 0xd2, 0xbe, 0x78, 0xc7, 0x67, 0x59, 0xb9, 0x86, 0xdd, 0xe7, 0x05, 0x52, 0xaa, 0x1e, 0x97, 0xbc, 0x01, 0x4f, 0x33, 0x3c, 0x0d, 0x5a, 0xf8, 0xb4, 0x6d, 0x61, 0xe1, 0xae, 0x06, 0x77, 0x4e, 0x2f, 0x86, 0x26, 0x73, 0x12, }; static const unsigned char ecdh_secp384r1_3033_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3033_sharedsecret[] = { 0x03, 0x7d, 0x45, 0x9a, 0x54, 0xfe, 0x6b, 0x69, 0xd8, 0x93, 0xf4, 0xd3, 0x09, 0x4a, 0x5e, 0x0a, 0x93, 0x25, 0x1d, 0x52, 0x54, 0xce, 0xf5, 0xb0, 0x22, 0xe7, 0x06, 0x5f, 0xdf, 0x52, 0xe3, 0xbe, 0x81, 0x27, 0xf2, 0xae, 0x2e, 0x33, 0x6e, 0x26, 0x1a, 0x71, 0xf6, 0xe4, 0x1a, 0xac, 0xb2, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_3033 = { .name = "ecdh_secp384r1_3033", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3033_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3033_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3033_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 526 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3034 for ECDH, tcId is 527 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3034_peerpubkey[] = { 0x89, 0x40, 0x2a, 0x14, 0x3d, 0x57, 0xec, 0x58, 0x5a, 0xee, 0x12, 0x43, 0xd3, 0xa7, 0xad, 0xfa, 0x87, 0xeb, 0x80, 0xc6, 0x0b, 0xd0, 0x9c, 0xbb, 0x56, 0xb6, 0x4e, 0xb0, 0xa1, 0xb7, 0xf5, 0x92, 0x73, 0x18, 0xd8, 0x57, 0x3c, 0x62, 0x39, 0xc6, 0xfe, 0xea, 0xa5, 0x8d, 0xc2, 0xae, 0x2e, 0x40, 0xd6, 0x05, 0x18, 0x9a, 0xc4, 0xa6, 0x6b, 0xd6, 0xb9, 0xe7, 0x08, 0xbd, 0xbc, 0xcc, 0x46, 0x47, 0x54, 0x3c, 0x0d, 0xd1, 0xd3, 0xc6, 0x4a, 0x2c, 0x16, 0x0c, 0x32, 0xf7, 0x29, 0xf2, 0xb1, 0x5d, 0xd9, 0x58, 0x52, 0xc9, 0xb2, 0x07, 0x50, 0x86, 0x51, 0xd7, 0x74, 0x63, 0x95, 0xa5, 0xa4, 0x90, }; static const unsigned char ecdh_secp384r1_3034_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3034_sharedsecret[] = { 0xe8, 0xd0, 0x3d, 0xff, 0xea, 0xd2, 0xe4, 0x0e, 0xa9, 0x15, 0xdb, 0x4c, 0x9c, 0x67, 0xab, 0xb4, 0x5a, 0xa6, 0x09, 0x92, 0x42, 0x2b, 0x70, 0x37, 0x42, 0x39, 0xca, 0xf5, 0x8b, 0x96, 0xf8, 0x67, 0x16, 0x60, 0x0c, 0x1c, 0xc4, 0x44, 0x93, 0x62, 0xdc, 0x56, 0xca, 0x05, 0x7b, 0xfc, 0x5e, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_3034 = { .name = "ecdh_secp384r1_3034", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3034_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3034_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3034_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 527 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3035 for ECDH, tcId is 528 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3035_peerpubkey[] = { 0xc2, 0xa9, 0xc5, 0x2a, 0x59, 0x36, 0x91, 0x0c, 0x05, 0xc4, 0x14, 0x43, 0x15, 0x12, 0x7b, 0xf6, 0x62, 0xc2, 0x92, 0xb8, 0xf0, 0x68, 0x18, 0x11, 0xc2, 0xbf, 0x8f, 0x4f, 0x9c, 0xc5, 0xbd, 0x7a, 0xb6, 0x93, 0xf7, 0xcb, 0xdd, 0xb5, 0x72, 0x4e, 0x7e, 0x29, 0xdd, 0x02, 0x3d, 0x15, 0x5f, 0xfd, 0x33, 0x5e, 0x8b, 0x87, 0x2a, 0xe1, 0xb7, 0xa9, 0x12, 0x93, 0xae, 0x9c, 0xc8, 0xf6, 0x54, 0xf0, 0x5f, 0xf4, 0x76, 0x7d, 0xb2, 0x08, 0xb7, 0x6c, 0x73, 0xb6, 0xb3, 0x4c, 0x56, 0x26, 0x51, 0x2e, 0x6b, 0xa9, 0x2b, 0xcc, 0x93, 0x7c, 0x9b, 0xcc, 0xa9, 0x44, 0x7d, 0xbe, 0xc2, 0x2f, 0xf1, 0x06, }; static const unsigned char ecdh_secp384r1_3035_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3035_sharedsecret[] = { 0xe8, 0x20, 0xf9, 0x97, 0x92, 0x8a, 0x71, 0x18, 0x6c, 0xe0, 0x9b, 0x96, 0x92, 0x3c, 0x31, 0x7c, 0xc1, 0x28, 0xcb, 0x76, 0x1c, 0x87, 0xe9, 0x70, 0x73, 0xa8, 0x51, 0x61, 0x0c, 0xa1, 0x2f, 0x21, 0x99, 0x37, 0x93, 0x87, 0x89, 0xbd, 0x22, 0x7a, 0x8d, 0x72, 0xb2, 0xb4, 0x06, 0xc4, 0x71, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp384r1_3035 = { .name = "ecdh_secp384r1_3035", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3035_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3035_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3035_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 528 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3036 for ECDH, tcId is 529 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3036_peerpubkey[] = { 0xdc, 0xd0, 0x22, 0x4a, 0xd2, 0x21, 0x9d, 0xc3, 0xaf, 0x05, 0xee, 0xa5, 0xd2, 0x79, 0x74, 0xa7, 0x5f, 0xb1, 0x96, 0x0d, 0x0d, 0x72, 0x1c, 0x39, 0xf1, 0x07, 0xbf, 0x45, 0x34, 0x62, 0x20, 0x99, 0x4e, 0x52, 0x0c, 0xa5, 0xa6, 0x46, 0x70, 0x1e, 0x93, 0x19, 0xce, 0xb0, 0x80, 0x17, 0xa3, 0x02, 0xe0, 0xb1, 0xbe, 0xe2, 0x92, 0xcd, 0x1c, 0xb9, 0x9f, 0x14, 0x5e, 0xad, 0x3d, 0x12, 0x28, 0x59, 0x03, 0xb1, 0xe5, 0x49, 0xfc, 0xce, 0x75, 0x91, 0xa1, 0x01, 0xa1, 0x67, 0x5f, 0xb9, 0xb6, 0xe3, 0x0e, 0x67, 0x80, 0x37, 0xf4, 0xd5, 0x8d, 0x22, 0x0c, 0x1e, 0x36, 0xa4, 0xe7, 0x9f, 0x88, 0x3c, }; static const unsigned char ecdh_secp384r1_3036_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_3036_sharedsecret[] = { 0x0a, 0xed, 0x8a, 0xc7, 0xd0, 0x4a, 0xf0, 0x70, 0xb7, 0x3a, 0x03, 0xf3, 0x7e, 0xf7, 0x11, 0x29, 0x6d, 0xb8, 0xac, 0x64, 0xba, 0xb1, 0x3e, 0x15, 0x41, 0x8d, 0xf6, 0x37, 0x3a, 0xad, 0x81, 0xd8, 0xe0, 0xfa, 0x78, 0x9b, 0x92, 0x92, 0x93, 0x3d, 0x7f, 0x11, 0xb8, 0x61, 0x40, 0x76, 0xe0, 0x74, }; static const wycheproof_ecdh_test ecdh_secp384r1_3036 = { .name = "ecdh_secp384r1_3036", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3036_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3036_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3036_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 529 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3037 for ECDH, tcId is 530 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3037_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3037_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp384r1_3037_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_3037 = { .name = "ecdh_secp384r1_3037", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3037_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3037_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3037_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 530 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3038 for ECDH, tcId is 531 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3038_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3038_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3038_sharedsecret[] = { 0xdb, 0x1d, 0x8e, 0xf1, 0x11, 0x72, 0x82, 0x87, 0x0d, 0xb8, 0x11, 0x3a, 0xa4, 0xf5, 0x87, 0x23, 0xc7, 0x56, 0xce, 0x59, 0x86, 0x86, 0xeb, 0x8e, 0xa5, 0x31, 0xaa, 0x4d, 0x39, 0xab, 0xb1, 0xb9, 0x82, 0xb1, 0xe7, 0xbb, 0x26, 0x48, 0xa6, 0xc2, 0x68, 0xd2, 0xd3, 0x51, 0x20, 0x4d, 0xb8, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp384r1_3038 = { .name = "ecdh_secp384r1_3038", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3038_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3038_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3038_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 531 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3039 for ECDH, tcId is 532 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3039_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3039_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3039_sharedsecret[] = { 0xe9, 0x80, 0x62, 0xdf, 0x47, 0xef, 0x88, 0x4c, 0x94, 0x11, 0xe1, 0x64, 0x66, 0xaf, 0x84, 0xad, 0x27, 0x1d, 0x58, 0x60, 0x08, 0xb1, 0xfb, 0xc5, 0x0a, 0xeb, 0x3b, 0x36, 0x83, 0x6a, 0x35, 0xa7, 0x70, 0xdd, 0x42, 0xe0, 0xdb, 0x84, 0xd3, 0x9b, 0x26, 0xf4, 0xdc, 0xd2, 0xdc, 0x03, 0xd9, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp384r1_3039 = { .name = "ecdh_secp384r1_3039", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3039_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3039_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3039_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 532 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3040 for ECDH, tcId is 533 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3040_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3040_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3040_sharedsecret[] = { 0x89, 0x8a, 0xae, 0x0e, 0xbf, 0x1c, 0xb4, 0x9f, 0xb6, 0xb1, 0x23, 0x4d, 0x60, 0xf5, 0x90, 0x06, 0x32, 0x54, 0x21, 0x04, 0x9a, 0x8a, 0x32, 0x08, 0x20, 0xe1, 0xad, 0x6a, 0xf6, 0x59, 0x3c, 0xdc, 0x22, 0x29, 0xa0, 0x8c, 0x50, 0x0a, 0xa5, 0x5c, 0xa0, 0x59, 0x99, 0xd1, 0x28, 0x29, 0xdb, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp384r1_3040 = { .name = "ecdh_secp384r1_3040", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3040_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3040_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3040_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 533 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3041 for ECDH, tcId is 534 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3041_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3041_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3041_sharedsecret[] = { 0x83, 0xf8, 0x62, 0xf4, 0x96, 0xab, 0x8a, 0xf1, 0x2b, 0x82, 0xa8, 0xa0, 0xc0, 0x47, 0xd8, 0x36, 0xbd, 0xfa, 0x36, 0x28, 0x13, 0x24, 0xb3, 0xa1, 0xeb, 0x2e, 0x9c, 0x1d, 0x46, 0x69, 0x9d, 0x81, 0xcb, 0x12, 0x5c, 0xbe, 0x4b, 0x93, 0x93, 0x9f, 0xd8, 0x4e, 0x1a, 0xe8, 0x6d, 0x8a, 0x83, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_3041 = { .name = "ecdh_secp384r1_3041", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3041_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3041_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3041_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 534 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3042 for ECDH, tcId is 535 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3042_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3042_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x79, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_3042_sharedsecret[] = { 0x9a, 0x26, 0x89, 0x48, 0x87, 0xa0, 0x34, 0x2c, 0xa5, 0x59, 0xa7, 0x4a, 0x4d, 0x4a, 0x8e, 0x1d, 0x6b, 0x20, 0x84, 0xf0, 0x2e, 0x1c, 0x65, 0xb3, 0x09, 0x71, 0x21, 0xa9, 0xa9, 0xaf, 0x04, 0x7d, 0x88, 0x10, 0xfb, 0x94, 0x5d, 0xc2, 0x5b, 0xbf, 0x02, 0x22, 0x2b, 0x3b, 0x62, 0x5f, 0x1e, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_3042 = { .name = "ecdh_secp384r1_3042", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3042_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3042_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3042_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 535 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3043 for ECDH, tcId is 536 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3043_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3043_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xdc, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_3043_sharedsecret[] = { 0x8a, 0x8d, 0x9d, 0xc1, 0x94, 0xa2, 0x69, 0x10, 0xcb, 0xda, 0xe7, 0x90, 0x8d, 0x18, 0x5b, 0x6a, 0xd0, 0x4b, 0x62, 0x0c, 0x94, 0xc5, 0xee, 0x33, 0x1e, 0x58, 0x4e, 0xd8, 0x04, 0xe4, 0x95, 0xbe, 0xbc, 0x22, 0x90, 0xa2, 0xd7, 0x00, 0x6a, 0x06, 0xe6, 0x5b, 0x9b, 0xca, 0xce, 0x86, 0xc6, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3043 = { .name = "ecdh_secp384r1_3043", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3043_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3043_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3043_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 536 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3044 for ECDH, tcId is 537 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3044_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3044_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xe4, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_3044_sharedsecret[] = { 0xd5, 0x7f, 0x6a, 0xa1, 0x2d, 0x3f, 0x07, 0xe8, 0x95, 0x84, 0x99, 0xf2, 0x49, 0xe5, 0x2c, 0xfb, 0xe5, 0xbe, 0x58, 0x48, 0x2e, 0x14, 0x6c, 0x54, 0x14, 0xdb, 0xbf, 0x98, 0x4f, 0xc5, 0x33, 0x37, 0x10, 0x35, 0x0e, 0x2c, 0xe9, 0x6b, 0x33, 0xbe, 0xb7, 0x67, 0x83, 0x81, 0xf4, 0x0f, 0x1d, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_3044 = { .name = "ecdh_secp384r1_3044", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3044_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3044_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3044_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 537 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3045 for ECDH, tcId is 538 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3045_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3045_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x69, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_3045_sharedsecret[] = { 0x18, 0x8e, 0x80, 0x41, 0xd9, 0xa5, 0xf0, 0xb6, 0xcf, 0xda, 0xd3, 0x15, 0xad, 0xa4, 0x82, 0x3b, 0xed, 0xa0, 0x14, 0x67, 0x74, 0xfa, 0xd6, 0x5b, 0x50, 0x0e, 0x6e, 0xf9, 0x43, 0x76, 0xeb, 0xf8, 0xaf, 0x7a, 0x40, 0xff, 0x6f, 0x6b, 0x45, 0x01, 0x9a, 0x09, 0xdd, 0xe7, 0xd7, 0xfb, 0x55, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_3045 = { .name = "ecdh_secp384r1_3045", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3045_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3045_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3045_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 538 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3046 for ECDH, tcId is 539 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3046_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3046_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x59, }; static const unsigned char ecdh_secp384r1_3046_sharedsecret[] = { 0x2e, 0xcf, 0x9d, 0xc4, 0x7e, 0x8b, 0x07, 0xae, 0x61, 0xdd, 0xbd, 0x16, 0x80, 0xea, 0xd0, 0x26, 0x98, 0xe9, 0xe8, 0x46, 0x9f, 0x78, 0xd5, 0xa2, 0x83, 0x28, 0xe4, 0x8d, 0x0c, 0x9d, 0x7a, 0x2a, 0xc7, 0x87, 0xe5, 0x0c, 0xba, 0x58, 0xcc, 0x44, 0xa3, 0x2f, 0xb1, 0x23, 0x5d, 0x2d, 0x70, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_3046 = { .name = "ecdh_secp384r1_3046", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3046_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3046_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3046_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 539 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3047 for ECDH, tcId is 540 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3047_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3047_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x69, }; static const unsigned char ecdh_secp384r1_3047_sharedsecret[] = { 0x06, 0xee, 0x9f, 0x55, 0x07, 0x9d, 0x3d, 0x3c, 0x18, 0xc6, 0x83, 0xba, 0x33, 0xe0, 0xd2, 0x52, 0x1b, 0xe9, 0x7c, 0x4f, 0xbf, 0x79, 0x17, 0xbf, 0x3b, 0x62, 0x87, 0xd5, 0x8f, 0xfc, 0xde, 0x2d, 0xf8, 0x88, 0x42, 0xe3, 0xf5, 0x53, 0x0b, 0x39, 0x54, 0x9a, 0xc2, 0x09, 0x74, 0xb1, 0xb6, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_3047 = { .name = "ecdh_secp384r1_3047", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3047_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3047_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3047_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 540 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3048 for ECDH, tcId is 541 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3048_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3048_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const unsigned char ecdh_secp384r1_3048_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_3048 = { .name = "ecdh_secp384r1_3048", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3048_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3048_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3048_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 541 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3049 for ECDH, tcId is 542 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3049_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_3049_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const unsigned char ecdh_secp384r1_3049_sharedsecret[] = { 0x02, 0x4c, 0x52, 0x81, 0x48, 0x72, 0x16, 0x05, 0x82, 0x70, 0xcd, 0x1c, 0xfe, 0x25, 0x9e, 0x94, 0x83, 0x10, 0xe4, 0xad, 0xc2, 0x63, 0xa9, 0xed, 0xaa, 0x4d, 0xa0, 0xbc, 0x3f, 0x5f, 0x8c, 0xe8, 0xff, 0xc8, 0x8a, 0xe4, 0x1b, 0x2c, 0x05, 0x0b, 0xf6, 0xdd, 0x9c, 0x8c, 0x66, 0x85, 0x72, 0x37, }; static const wycheproof_ecdh_test ecdh_secp384r1_3049 = { .name = "ecdh_secp384r1_3049", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3049_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3049_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3049_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 542 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3050 for ECDH, tcId is 543 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3050_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3050_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3050 = { .name = "ecdh_secp384r1_3050", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3050_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3050_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 543 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3051 for ECDH, tcId is 544 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3051_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_3051_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3051 = { .name = "ecdh_secp384r1_3051", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3051_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3051_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 544 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3052 for ECDH, tcId is 545 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3052_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_3052_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3052 = { .name = "ecdh_secp384r1_3052", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3052_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3052_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 545 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3053 for ECDH, tcId is 546 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3053_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3053_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3053 = { .name = "ecdh_secp384r1_3053", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3053_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3053_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 546 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3054 for ECDH, tcId is 547 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3054_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3054_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3054 = { .name = "ecdh_secp384r1_3054", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3054_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3054_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 547 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3055 for ECDH, tcId is 548 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3055_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_3055_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3055 = { .name = "ecdh_secp384r1_3055", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3055_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3055_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 548 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3056 for ECDH, tcId is 549 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3056_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_3056_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3056 = { .name = "ecdh_secp384r1_3056", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3056_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3056_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 549 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3057 for ECDH, tcId is 550 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3057_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3057_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3057 = { .name = "ecdh_secp384r1_3057", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3057_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3057_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 550 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3058 for ECDH, tcId is 551 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3058_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3058_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3058 = { .name = "ecdh_secp384r1_3058", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3058_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3058_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 551 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3059 for ECDH, tcId is 552 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3059_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_3059_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3059 = { .name = "ecdh_secp384r1_3059", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3059_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3059_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 552 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3060 for ECDH, tcId is 553 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3060_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_3060_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3060 = { .name = "ecdh_secp384r1_3060", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3060_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3060_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 553 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3061 for ECDH, tcId is 554 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3061_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3061_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3061 = { .name = "ecdh_secp384r1_3061", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3061_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3061_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 554 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3062 for ECDH, tcId is 555 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3062_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3062_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3062 = { .name = "ecdh_secp384r1_3062", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3062_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3062_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 555 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3063 for ECDH, tcId is 556 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3063_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_3063_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3063 = { .name = "ecdh_secp384r1_3063", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3063_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3063_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 556 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3064 for ECDH, tcId is 557 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3064_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_3064_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3064 = { .name = "ecdh_secp384r1_3064", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3064_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3064_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 557 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3065 for ECDH, tcId is 558 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3065_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_3065_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_3065 = { .name = "ecdh_secp384r1_3065", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3065_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3065_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 558 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3066 for ECDH, tcId is 560 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3066_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc8, }; static const unsigned char ecdh_secp384r1_3066_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_3066 = { .name = "ecdh_secp384r1_3066", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3066_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3066_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 560 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3067 for ECDH, tcId is 561 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3067_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_3067_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_3067 = { .name = "ecdh_secp384r1_3067", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3067_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3067_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 561 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3068 for ECDH, tcId is 564 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3068_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3068_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3068_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3068 = { .name = "ecdh_secp384r1_3068", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3068_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3068_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3068_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 1, tcId is 564 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3069 for ECDH, tcId is 565 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3069_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3069_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3069_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3069 = { .name = "ecdh_secp384r1_3069", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3069_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3069_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3069_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 9173994463960286046443283581208347763186259956673124494950032159599396260248791326163093631191247821216106, tcId is 565 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3070 for ECDH, tcId is 566 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3070_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3070_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3070_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3070 = { .name = "ecdh_secp384r1_3070", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3070_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3070_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3070_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator = (0,0), tcId is 566 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3071 for ECDH, tcId is 567 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3071_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3071_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3071_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3071 = { .name = "ecdh_secp384r1_3071", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3071_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3071_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3071_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator not on curve, tcId is 567 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3072 for ECDH, tcId is 570 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3072_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3072_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3072_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3072 = { .name = "ecdh_secp384r1_3072", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3072_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3072_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3072_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = 2, tcId is 570 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3073 for ECDH, tcId is 572 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3073_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3073_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3073_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3073 = { .name = "ecdh_secp384r1_3073", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3073_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3073_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3073_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = None, tcId is 572 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3074 for ECDH, tcId is 577 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3074_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc6, }; static const unsigned char ecdh_secp384r1_3074_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const unsigned char ecdh_secp384r1_3074_sharedsecret[] = { 0x45, 0x5c, 0xf3, 0xc0, 0xb0, 0x09, 0x06, 0x88, 0x59, 0x98, 0x25, 0x52, 0x2e, 0xf3, 0x31, 0x28, 0x78, 0x20, 0x15, 0x14, 0xf6, 0x33, 0x0c, 0xcc, 0x7f, 0x42, 0xec, 0x19, 0x45, 0x20, 0x4a, 0xdf, 0xe4, 0x19, 0xb2, 0xdb, 0xbf, 0xb9, 0x42, 0xdc, 0x98, 0xb1, 0x6d, 0x83, 0x23, 0x15, 0x0c, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_3074 = { .name = "ecdh_secp384r1_3074", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3074_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3074_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_3074_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "a = 0, tcId is 577 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3075 for ECDH, tcId is 587 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3075_peerpubkey[] = { 0x19, 0xd3, 0xc8, 0x11, 0xc0, 0x4c, 0x5c, 0x09, 0x90, 0xd0, 0x25, 0x83, 0x86, 0x19, 0x5b, 0x2e, 0x29, 0xfd, 0xab, 0xa5, 0x8d, 0x3f, 0x12, 0xb0, 0xba, 0xc8, 0xd3, 0xd5, 0x38, 0x28, 0xc6, 0x6c, 0x7a, 0x35, 0xe3, 0xd1, 0xeb, 0x0b, 0xdf, 0x2c, 0x08, 0xf2, 0x3d, 0x0e, 0x4a, 0xb6, 0xa3, 0x24, 0x6e, 0x45, 0x6b, 0xf0, 0xfb, 0x86, 0x3d, 0x03, 0x42, 0x3d, 0xbe, 0x43, 0x1b, 0xaf, 0x79, 0x96, 0x57, 0xc7, 0x81, 0x6a, 0x61, 0x96, 0x62, 0xfe, 0x5b, 0x90, 0x0b, 0x75, 0x41, 0x07, 0xba, 0x5c, 0xc0, 0x6b, 0x1d, 0x62, 0xc9, 0xa9, 0x27, 0x89, 0x1e, 0xfe, 0xe1, 0xa1, 0xfd, 0x40, 0x4d, 0x7e, }; static const unsigned char ecdh_secp384r1_3075_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_3075 = { .name = "ecdh_secp384r1_3075", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3075_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3075_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384r1, tcId is 587 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3076 for ECDH, tcId is 592 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3076_peerpubkey[] = { 0x33, 0x45, 0xdf, 0xfd, 0xed, 0x3c, 0x33, 0xf7, 0xdc, 0xc1, 0x9b, 0xb8, 0x99, 0x7a, 0x39, 0xf2, 0xd6, 0x23, 0x0a, 0xbc, 0xb7, 0x65, 0xd6, 0x14, 0x2c, 0x30, 0xbf, 0x32, 0x0c, 0x1f, 0xad, 0xff, 0x53, 0x5f, 0xea, 0xfd, 0x85, 0x05, 0xeb, 0x3e, 0x61, 0x4d, 0xb7, 0x18, 0x26, 0xc1, 0xe2, 0x58, 0x07, 0x7a, 0x1e, 0x60, 0x57, 0xad, 0xd7, 0x47, 0x4f, 0x6d, 0x35, 0xdc, 0xe6, 0x84, 0x17, 0x81, 0x2e, 0x7b, 0x91, 0x9b, 0x1c, 0x67, 0x30, 0x32, 0xb2, 0x8c, 0x45, 0xd0, 0xa9, 0x25, 0x1c, 0x43, 0xa2, 0xa7, 0x3a, 0xb1, 0x52, 0xf6, 0x4f, 0xf8, 0xeb, 0xa4, 0xea, 0xb3, 0x12, 0xfa, 0x73, 0xbd, }; static const unsigned char ecdh_secp384r1_3076_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_3076 = { .name = "ecdh_secp384r1_3076", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3076_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3076_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384t1, tcId is 592 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3077 for ECDH, tcId is 594 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_3077_peerpubkey[] = { 0x44, 0x24, 0x53, 0x0e, 0xa7, 0x0b, 0xac, 0xe9, 0x06, 0x01, 0xf8, 0xd5, 0x86, 0x9e, 0x41, 0x79, 0xa6, 0xcd, 0x68, 0x9b, 0x6a, 0x18, 0xfd, 0xfe, 0xc5, 0x0c, 0xec, 0xf1, 0x7c, 0xb8, 0x36, 0xd2, 0x48, 0x20, 0x21, 0x1a, 0xda, 0x67, 0x81, 0x5b, 0x42, 0xc2, 0xc2, 0x60, 0x63, 0x03, 0xf6, 0x9e, }; static const unsigned char ecdh_secp384r1_3077_privkey[] = { 0x2b, 0x9e, 0x57, 0x57, 0x2d, 0xa6, 0xcf, 0x4f, 0xb5, 0x8c, 0xb9, 0x4e, 0xab, 0x8d, 0xf1, 0x93, 0x83, 0xa1, 0x36, 0xf2, 0x19, 0xf2, 0xa5, 0x15, 0x77, 0x6a, 0x8b, 0xf4, 0x8e, 0x15, 0x38, 0xdd, 0x1d, 0x81, 0x19, 0x46, 0xc1, 0x6d, 0x9f, 0x01, 0x84, 0xc9, 0xce, 0x5c, 0xdf, 0x1d, 0xac, 0x51, }; static const wycheproof_ecdh_test ecdh_secp384r1_3077 = { .name = "ecdh_secp384r1_3077", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_3077_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp384r1_3077_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 594 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 3078 for ECDH, tcId is 595 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3078_peerpubkey[] = { 0x00, 0x64, 0xda, 0x3e, 0x94, 0x73, 0x3d, 0xb5, 0x36, 0xa7, 0x4a, 0x0d, 0x8a, 0x5c, 0xb2, 0x26, 0x5a, 0x31, 0xc5, 0x4a, 0x1d, 0xa6, 0x52, 0x9a, 0x19, 0x83, 0x77, 0xfb, 0xd3, 0x85, 0x75, 0xd9, 0xd7, 0x97, 0x69, 0xca, 0x2b, 0xdf, 0x2d, 0x4c, 0x97, 0x26, 0x42, 0x92, 0x6d, 0x44, 0x48, 0x91, 0xa6, 0x52, 0xe7, 0xf4, 0x92, 0x33, 0x72, 0x51, 0xad, 0xf1, 0x61, 0x3c, 0xf3, 0x07, 0x79, 0x99, 0xb5, 0xce, 0x00, 0xe0, 0x4a, 0xd1, 0x9c, 0xf9, 0xfd, 0x47, 0x22, 0xb0, 0xc8, 0x24, 0xc0, 0x69, 0xf7, 0x0c, 0x3c, 0x0e, 0x7e, 0xbc, 0x52, 0x88, 0x94, 0x0d, 0xfa, 0x92, 0x42, 0x21, 0x52, 0xae, 0x4a, 0x4f, 0x79, 0x18, 0x3c, 0xed, 0x37, 0x5a, 0xfb, 0x54, 0xdb, 0x14, 0x09, 0xdd, 0xf3, 0x38, 0xb8, 0x5b, 0xb6, 0xdb, 0xfc, 0x59, 0x50, 0x16, 0x33, 0x46, 0xbb, 0x63, 0xa9, 0x0a, 0x70, 0xc5, 0xab, 0xa0, 0x98, 0xf7, }; static const unsigned char ecdh_secp521r1_3078_privkey[] = { 0x01, 0x93, 0x99, 0x82, 0xb5, 0x29, 0x59, 0x6c, 0xe7, 0x7a, 0x94, 0xbc, 0x6e, 0xfd, 0x03, 0xe9, 0x2c, 0x21, 0xa8, 0x49, 0xeb, 0x4f, 0x87, 0xb8, 0xf6, 0x19, 0xd5, 0x06, 0xef, 0xc9, 0xbb, 0x22, 0xe7, 0xc6, 0x16, 0x40, 0xc9, 0x0d, 0x59, 0x8f, 0x79, 0x5b, 0x64, 0x56, 0x6d, 0xc6, 0xdf, 0x43, 0x99, 0x2a, 0xe3, 0x4a, 0x13, 0x41, 0xd4, 0x58, 0x57, 0x44, 0x40, 0xa7, 0x37, 0x1f, 0x61, 0x1c, 0x7d, 0xcd, }; static const unsigned char ecdh_secp521r1_3078_sharedsecret[] = { 0x01, 0xf1, 0xe4, 0x10, 0xf2, 0xc6, 0x26, 0x2b, 0xce, 0x68, 0x79, 0xa3, 0xf4, 0x6d, 0xfb, 0x7d, 0xd1, 0x1d, 0x30, 0xee, 0xee, 0x9a, 0xb4, 0x98, 0x52, 0x10, 0x2e, 0x18, 0x92, 0x20, 0x1d, 0xd1, 0x0f, 0x27, 0x26, 0x6c, 0x2c, 0xf7, 0xcb, 0xcc, 0xc7, 0xf6, 0x88, 0x50, 0x99, 0x04, 0x3d, 0xad, 0x80, 0xff, 0x57, 0xf0, 0xdf, 0x96, 0xac, 0xf2, 0x83, 0xfb, 0x09, 0x0d, 0xe5, 0x3d, 0xf9, 0x5f, 0x7d, 0x87, }; static const wycheproof_ecdh_test ecdh_secp521r1_3078 = { .name = "ecdh_secp521r1_3078", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3078_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3078_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3078_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "normal case, tcId is 595 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3079 for ECDH, tcId is 596 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3079_peerpubkey[] = { 0x00, 0x64, 0xda, 0x3e, 0x94, 0x73, 0x3d, 0xb5, 0x36, 0xa7, 0x4a, 0x0d, 0x8a, 0x5c, 0xb2, 0x26, 0x5a, 0x31, 0xc5, 0x4a, 0x1d, 0xa6, 0x52, 0x9a, 0x19, 0x83, 0x77, 0xfb, 0xd3, 0x85, 0x75, 0xd9, 0xd7, 0x97, 0x69, 0xca, 0x2b, 0xdf, 0x2d, 0x4c, 0x97, 0x26, 0x42, 0x92, 0x6d, 0x44, 0x48, 0x91, 0xa6, 0x52, 0xe7, 0xf4, 0x92, 0x33, 0x72, 0x51, 0xad, 0xf1, 0x61, 0x3c, 0xf3, 0x07, 0x79, 0x99, 0xb5, 0xce, }; static const unsigned char ecdh_secp521r1_3079_privkey[] = { 0x01, 0x93, 0x99, 0x82, 0xb5, 0x29, 0x59, 0x6c, 0xe7, 0x7a, 0x94, 0xbc, 0x6e, 0xfd, 0x03, 0xe9, 0x2c, 0x21, 0xa8, 0x49, 0xeb, 0x4f, 0x87, 0xb8, 0xf6, 0x19, 0xd5, 0x06, 0xef, 0xc9, 0xbb, 0x22, 0xe7, 0xc6, 0x16, 0x40, 0xc9, 0x0d, 0x59, 0x8f, 0x79, 0x5b, 0x64, 0x56, 0x6d, 0xc6, 0xdf, 0x43, 0x99, 0x2a, 0xe3, 0x4a, 0x13, 0x41, 0xd4, 0x58, 0x57, 0x44, 0x40, 0xa7, 0x37, 0x1f, 0x61, 0x1c, 0x7d, 0xcd, }; static const unsigned char ecdh_secp521r1_3079_sharedsecret[] = { 0x01, 0xf1, 0xe4, 0x10, 0xf2, 0xc6, 0x26, 0x2b, 0xce, 0x68, 0x79, 0xa3, 0xf4, 0x6d, 0xfb, 0x7d, 0xd1, 0x1d, 0x30, 0xee, 0xee, 0x9a, 0xb4, 0x98, 0x52, 0x10, 0x2e, 0x18, 0x92, 0x20, 0x1d, 0xd1, 0x0f, 0x27, 0x26, 0x6c, 0x2c, 0xf7, 0xcb, 0xcc, 0xc7, 0xf6, 0x88, 0x50, 0x99, 0x04, 0x3d, 0xad, 0x80, 0xff, 0x57, 0xf0, 0xdf, 0x96, 0xac, 0xf2, 0x83, 0xfb, 0x09, 0x0d, 0xe5, 0x3d, 0xf9, 0x5f, 0x7d, 0x87, }; static const wycheproof_ecdh_test ecdh_secp521r1_3079 = { .name = "ecdh_secp521r1_3079", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3079_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3079_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3079_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "compressed public key, tcId is 596 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3080 for ECDH, tcId is 597 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3080_peerpubkey[] = { 0x01, 0x4c, 0x64, 0x33, 0x29, 0x69, 0x1b, 0xa2, 0x74, 0x59, 0xa4, 0x0d, 0xfe, 0x7c, 0x4c, 0xe1, 0x7b, 0x3e, 0xa1, 0x4d, 0x0c, 0xd7, 0xaa, 0x47, 0xb0, 0x1f, 0x13, 0x15, 0x40, 0x4d, 0xb5, 0x14, 0x36, 0xfb, 0xbf, 0xe6, 0xde, 0x08, 0x42, 0xe0, 0xf7, 0xe1, 0x26, 0x5f, 0x6f, 0xf3, 0xac, 0xa2, 0x87, 0x50, 0x67, 0x7d, 0x33, 0x70, 0xb2, 0xfb, 0x2a, 0x6e, 0xf4, 0x97, 0x35, 0x6f, 0x4b, 0x95, 0x81, 0x12, 0x01, 0x05, 0x1b, 0x14, 0x17, 0x86, 0x39, 0xa0, 0x9a, 0x41, 0x46, 0x5c, 0x72, 0xd3, 0x74, 0x34, 0x36, 0xee, 0x1c, 0x19, 0x1f, 0xf7, 0x38, 0x8a, 0x40, 0x14, 0x0b, 0x34, 0xd5, 0x31, 0x7d, 0xe5, 0x91, 0x1e, 0xa0, 0x3c, 0xdb, 0xb0, 0x32, 0x9f, 0xde, 0xb4, 0x46, 0x69, 0x5a, 0x3b, 0x92, 0xd4, 0x37, 0x27, 0x1a, 0x9f, 0x3c, 0x31, 0x8b, 0x02, 0xde, 0xc4, 0xd4, 0x73, 0x90, 0x81, 0x58, 0x14, 0x0e, 0x97, }; static const unsigned char ecdh_secp521r1_3080_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3080_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3080 = { .name = "ecdh_secp521r1_3080", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3080_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3080_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3080_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 597 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3081 for ECDH, tcId is 598 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3081_peerpubkey[] = { 0x00, 0x29, 0xcd, 0x32, 0x12, 0x5c, 0x23, 0xa4, 0x1a, 0xf2, 0x4f, 0xd4, 0xb7, 0x29, 0xda, 0x0f, 0xaa, 0xcb, 0xc3, 0x55, 0x16, 0xef, 0x0b, 0xa5, 0x90, 0x96, 0x60, 0x25, 0x71, 0x69, 0x3c, 0xd2, 0x82, 0xe2, 0x6d, 0x67, 0xe1, 0x8e, 0xf4, 0x64, 0x3d, 0x0f, 0x6f, 0x15, 0x8d, 0x73, 0x70, 0xd3, 0x39, 0x4c, 0xa9, 0xa8, 0xde, 0x79, 0x38, 0x03, 0x2a, 0xc1, 0x78, 0xc6, 0xfd, 0x34, 0xe3, 0x70, 0x2b, 0x8d, 0x00, 0x86, 0x49, 0x83, 0x4e, 0x2b, 0x41, 0xbe, 0x3a, 0x8b, 0x75, 0x10, 0xbf, 0xe5, 0x70, 0xf4, 0xc6, 0x70, 0x75, 0x94, 0x3c, 0xd0, 0xcb, 0xb9, 0xd9, 0xe1, 0xd1, 0xda, 0x52, 0x61, 0x8b, 0x5b, 0x96, 0xd6, 0xae, 0xc9, 0xb6, 0x50, 0xda, 0xf1, 0xca, 0x66, 0x24, 0xc1, 0x3e, 0x51, 0x16, 0x30, 0x2b, 0x9c, 0x79, 0xc8, 0xc4, 0xd3, 0xd3, 0x51, 0x91, 0x5d, 0x1e, 0x8e, 0x1a, 0xb6, 0xad, 0x76, 0x09, 0x8e, }; static const unsigned char ecdh_secp521r1_3081_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3081_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_3081 = { .name = "ecdh_secp521r1_3081", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3081_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3081_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3081_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 598 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3082 for ECDH, tcId is 599 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3082_peerpubkey[] = { 0x00, 0x32, 0xc6, 0xf0, 0x6c, 0xe6, 0xa1, 0x5e, 0xa0, 0x64, 0x46, 0x4d, 0x35, 0xaa, 0x36, 0x8d, 0x29, 0x9c, 0x9a, 0x9e, 0x1e, 0x36, 0x8f, 0x69, 0x4a, 0xef, 0xb6, 0x03, 0x87, 0x62, 0x48, 0xf8, 0x98, 0xf2, 0x23, 0xce, 0x02, 0x17, 0xbe, 0xf3, 0x7d, 0x61, 0xeb, 0x09, 0xb2, 0x7c, 0x93, 0x18, 0x7c, 0xf8, 0xe6, 0x1b, 0xa7, 0xb1, 0x4e, 0x3c, 0x9b, 0xee, 0x69, 0x2b, 0x06, 0xac, 0x6d, 0x95, 0xf8, 0x36, 0x01, 0x9f, 0xd1, 0x9f, 0x84, 0x80, 0xe2, 0x1c, 0x63, 0x21, 0x1d, 0x48, 0xd4, 0x5f, 0x96, 0xf6, 0x36, 0x5c, 0xf5, 0x5f, 0x95, 0x8e, 0x1a, 0x0f, 0xe7, 0xea, 0x6b, 0x6b, 0x9f, 0xf2, 0x30, 0xa8, 0x7b, 0x70, 0xbb, 0x1b, 0x14, 0xd3, 0xa5, 0xfb, 0x66, 0x69, 0xa9, 0x16, 0x41, 0xc6, 0xac, 0xf4, 0x57, 0x0c, 0x1d, 0x3a, 0x9e, 0x70, 0x99, 0x13, 0xb7, 0xfe, 0x6b, 0x35, 0xff, 0x81, 0xc3, 0x94, 0xd6, 0xa7, }; static const unsigned char ecdh_secp521r1_3082_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3082_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_3082 = { .name = "ecdh_secp521r1_3082", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3082_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3082_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3082_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 599 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3083 for ECDH, tcId is 600 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3083_peerpubkey[] = { 0x01, 0xf7, 0xeb, 0x96, 0xe6, 0x4b, 0x1a, 0x62, 0xda, 0xf9, 0xe0, 0x80, 0x1b, 0xfd, 0x96, 0xa0, 0xb1, 0x5b, 0x68, 0xe5, 0xf5, 0xcb, 0x3e, 0x90, 0xb4, 0x34, 0x49, 0x5a, 0x47, 0x39, 0x07, 0x33, 0x8e, 0x53, 0x09, 0x8e, 0x1c, 0x2e, 0x49, 0x33, 0x35, 0xd0, 0x9c, 0x6a, 0xae, 0x6f, 0xdd, 0xa0, 0x34, 0x5b, 0x98, 0xaa, 0xed, 0x58, 0x8f, 0x2a, 0xbe, 0x82, 0x91, 0x07, 0x13, 0xfb, 0x6c, 0x20, 0x25, 0x29, 0x01, 0x39, 0x6b, 0x17, 0xcf, 0x25, 0x0b, 0xc0, 0x18, 0xf4, 0xce, 0xad, 0x09, 0x7e, 0x7e, 0x09, 0x86, 0x3f, 0x14, 0xcf, 0x12, 0x39, 0xb0, 0x65, 0xe5, 0x7d, 0x88, 0x49, 0x49, 0xee, 0xe1, 0x41, 0x92, 0x6f, 0x7e, 0x7c, 0x9f, 0x7f, 0x34, 0xcf, 0x05, 0x36, 0x36, 0x87, 0x67, 0xbc, 0x0e, 0x1a, 0xb5, 0x14, 0x28, 0x77, 0x29, 0x3a, 0x4c, 0x72, 0x26, 0x93, 0xa7, 0x3f, 0xe1, 0x4a, 0x53, 0x90, 0xaf, 0x93, }; static const unsigned char ecdh_secp521r1_3083_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3083_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3083 = { .name = "ecdh_secp521r1_3083", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3083_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3083_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3083_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 600 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3084 for ECDH, tcId is 601 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3084_peerpubkey[] = { 0x00, 0x6d, 0xdf, 0x9b, 0x10, 0x96, 0x5d, 0x5f, 0xc1, 0x29, 0xe9, 0x6f, 0x7a, 0x37, 0x66, 0x7c, 0xcf, 0x66, 0xcc, 0x44, 0x38, 0x47, 0x72, 0x90, 0x6f, 0xed, 0xb2, 0x1f, 0x9d, 0xe4, 0x62, 0x9e, 0x01, 0xaa, 0xa0, 0x9a, 0xc7, 0xc9, 0x86, 0x61, 0x12, 0x06, 0x4b, 0xbc, 0x9b, 0xd5, 0x8e, 0xbc, 0x12, 0x3a, 0xb2, 0xfe, 0x19, 0xd8, 0xfe, 0xd1, 0xa0, 0x56, 0xd2, 0x7b, 0xfe, 0xf0, 0x63, 0x05, 0x09, 0xc7, 0x00, 0x1c, 0x44, 0x13, 0x11, 0xef, 0x20, 0xa1, 0x63, 0x46, 0x33, 0x2e, 0xa4, 0x2d, 0x5c, 0x65, 0x78, 0x8d, 0x68, 0xf6, 0x81, 0x7b, 0x02, 0x67, 0xfc, 0xab, 0x11, 0xea, 0x9c, 0x94, 0x8e, 0xd1, 0x08, 0x11, 0x5d, 0xda, 0x8e, 0x82, 0x3a, 0x38, 0x0b, 0x60, 0x14, 0x60, 0x74, 0x2d, 0x37, 0x72, 0xd6, 0x42, 0x4c, 0x67, 0xb2, 0x40, 0xda, 0x24, 0x77, 0x2f, 0xf0, 0xd2, 0xcc, 0xd9, 0xa1, 0xe0, 0xce, 0xa6, }; static const unsigned char ecdh_secp521r1_3084_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3084_sharedsecret[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3084 = { .name = "ecdh_secp521r1_3084", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3084_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3084_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3084_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 601 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3085 for ECDH, tcId is 602 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3085_peerpubkey[] = { 0x00, 0x7a, 0x8c, 0x54, 0x72, 0x68, 0xc9, 0x48, 0xb6, 0x26, 0xda, 0x63, 0x6c, 0xf5, 0x44, 0x28, 0xea, 0x2a, 0xb2, 0x38, 0x61, 0xd4, 0x99, 0xa8, 0x4a, 0xd7, 0xbe, 0x1c, 0xf6, 0x91, 0xb9, 0x28, 0x72, 0xa0, 0x6e, 0x26, 0xc6, 0xdb, 0xa0, 0x8c, 0xa9, 0xed, 0x38, 0x6f, 0x83, 0xd3, 0x96, 0x15, 0x6d, 0x5f, 0xa0, 0x23, 0xf5, 0x7d, 0x5e, 0xa6, 0x44, 0x0e, 0xc7, 0x40, 0x1d, 0xad, 0x2c, 0x08, 0xad, 0x70, 0x01, 0x8c, 0x38, 0x15, 0xb1, 0xb9, 0xa2, 0xe4, 0x25, 0x55, 0x41, 0x9a, 0x6c, 0x19, 0x04, 0x3f, 0xa2, 0xb0, 0xdd, 0xcc, 0x4b, 0x5a, 0x6e, 0x37, 0x2f, 0xee, 0x9f, 0xcb, 0x22, 0x7d, 0x85, 0xba, 0xd7, 0x04, 0x68, 0x7e, 0x7e, 0x1a, 0x81, 0x8b, 0x61, 0x2d, 0x5c, 0x04, 0x6c, 0xd7, 0x59, 0x72, 0xf7, 0xa2, 0xdd, 0x5c, 0x9a, 0x20, 0x0a, 0xc5, 0x58, 0x2c, 0xd5, 0x9f, 0xec, 0x47, 0xac, 0x52, 0x5e, 0xcf, }; static const unsigned char ecdh_secp521r1_3085_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3085_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3085 = { .name = "ecdh_secp521r1_3085", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3085_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3085_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3085_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 602 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3086 for ECDH, tcId is 603 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3086_peerpubkey[] = { 0x00, 0x29, 0x15, 0x3c, 0xf0, 0x62, 0xf8, 0x8f, 0x30, 0x3e, 0x5d, 0x6f, 0x9a, 0xac, 0x96, 0x8b, 0xd9, 0x01, 0x07, 0x6d, 0x59, 0x94, 0xea, 0x7f, 0x83, 0x18, 0x33, 0xb1, 0xe6, 0x9b, 0x67, 0xe9, 0xe9, 0xfe, 0x20, 0xcf, 0x9c, 0x56, 0x23, 0xe0, 0x0e, 0x0b, 0x9e, 0x35, 0x92, 0xfc, 0xa2, 0xa0, 0x33, 0x24, 0xb5, 0xdf, 0x7c, 0x93, 0x18, 0x6a, 0xff, 0x69, 0x7a, 0xca, 0x86, 0x46, 0x00, 0xd4, 0x4e, 0xcc, 0x00, 0x28, 0x01, 0xa6, 0x2e, 0x2f, 0x41, 0x06, 0xf3, 0x41, 0x06, 0xda, 0x23, 0xdc, 0x93, 0xd5, 0x0e, 0x3e, 0x97, 0x5a, 0x1d, 0x47, 0x51, 0x00, 0x21, 0x83, 0x52, 0x90, 0x64, 0x9b, 0x7a, 0x41, 0x25, 0x10, 0x9f, 0x65, 0x6b, 0x6b, 0x0b, 0x5b, 0xd0, 0x0b, 0x24, 0xd8, 0x4e, 0xa1, 0xba, 0x4e, 0x1e, 0xd4, 0x9e, 0x61, 0xc5, 0x26, 0xfb, 0x10, 0x11, 0x00, 0x51, 0x31, 0xca, 0xee, 0x7e, 0xe0, 0x50, 0x1e, }; static const unsigned char ecdh_secp521r1_3086_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3086_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3086 = { .name = "ecdh_secp521r1_3086", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3086_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3086_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3086_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 603 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3087 for ECDH, tcId is 604 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3087_peerpubkey[] = { 0x00, 0xa6, 0x1e, 0xb9, 0x94, 0xe2, 0x87, 0x22, 0xc5, 0x9b, 0x3c, 0x60, 0x07, 0xdf, 0xdf, 0x8b, 0x37, 0x89, 0x3f, 0x63, 0x50, 0xf4, 0x61, 0xb2, 0x6a, 0x00, 0xe1, 0xa4, 0x51, 0x04, 0x31, 0x4a, 0xae, 0x99, 0x89, 0xda, 0x87, 0xe4, 0xfa, 0xcb, 0x2c, 0x4e, 0xf7, 0x21, 0x18, 0x5b, 0x7d, 0x96, 0xd9, 0xa4, 0x5a, 0x28, 0xa1, 0x02, 0x75, 0x65, 0x01, 0xa1, 0xac, 0xc5, 0xd3, 0x29, 0xa2, 0x1b, 0xbf, 0x73, 0x01, 0x0e, 0x8d, 0x0e, 0x12, 0xf5, 0xa9, 0xa4, 0x0e, 0x0d, 0x59, 0xc9, 0x0c, 0xe7, 0x30, 0x43, 0xd3, 0x97, 0x30, 0xae, 0xad, 0xd3, 0x78, 0x8e, 0x31, 0xd7, 0xc2, 0xbb, 0x62, 0xa1, 0x16, 0x61, 0x61, 0x99, 0x46, 0x64, 0xaf, 0xa6, 0x58, 0xce, 0x2e, 0x60, 0xa1, 0x3f, 0x45, 0xf2, 0x7f, 0x91, 0x43, 0x07, 0xc8, 0xd6, 0xf8, 0xd4, 0xed, 0x16, 0xab, 0x04, 0x1b, 0x8f, 0x69, 0x90, 0x8a, 0x62, 0x78, 0x2f, }; static const unsigned char ecdh_secp521r1_3087_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3087_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3087 = { .name = "ecdh_secp521r1_3087", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3087_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3087_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3087_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 604 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3088 for ECDH, tcId is 605 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3088_peerpubkey[] = { 0x01, 0x1d, 0xd4, 0x97, 0xb3, 0x0c, 0x73, 0x70, 0x99, 0x06, 0xb1, 0x64, 0xa9, 0xa7, 0x9d, 0xc7, 0xf2, 0xa9, 0x8c, 0x01, 0x48, 0xed, 0x63, 0x01, 0x6b, 0xb9, 0x52, 0x43, 0x83, 0x4f, 0xbc, 0xdf, 0x8e, 0xb7, 0x4b, 0x0f, 0xf6, 0x52, 0xd5, 0x4f, 0x59, 0xf3, 0x1a, 0xef, 0x51, 0xda, 0x6e, 0x89, 0x74, 0xd3, 0x63, 0x65, 0x5b, 0x1d, 0xa1, 0x38, 0xdc, 0x4d, 0xe0, 0xf2, 0xa8, 0xd8, 0x00, 0xf4, 0x75, 0xae, 0x00, 0x57, 0xbd, 0x4b, 0x84, 0x60, 0x74, 0x00, 0xd8, 0x63, 0xff, 0xbf, 0x45, 0xa3, 0xcf, 0x58, 0x99, 0x9e, 0xe2, 0x4b, 0xa0, 0x5e, 0x93, 0xec, 0xa7, 0xb0, 0xe4, 0xae, 0x76, 0x0e, 0xb1, 0x73, 0x35, 0x59, 0xa4, 0x5d, 0x15, 0x57, 0x9d, 0x33, 0x70, 0xd7, 0x16, 0xff, 0xa3, 0xec, 0x4b, 0xfd, 0xae, 0x41, 0x8e, 0x32, 0xfb, 0x06, 0x13, 0x8d, 0xfc, 0xa2, 0x13, 0x72, 0x0a, 0x93, 0x85, 0x77, 0x61, 0x0e, }; static const unsigned char ecdh_secp521r1_3088_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3088_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3088 = { .name = "ecdh_secp521r1_3088", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3088_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3088_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3088_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 605 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3089 for ECDH, tcId is 606 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3089_peerpubkey[] = { 0x01, 0x28, 0x3e, 0xb9, 0x3f, 0xa3, 0x69, 0xfe, 0x70, 0x12, 0xb6, 0x47, 0xd2, 0x1e, 0x0a, 0x97, 0xcf, 0x99, 0x50, 0xe5, 0xfb, 0xed, 0x81, 0x9e, 0xf5, 0x61, 0x58, 0xf2, 0x0c, 0x8a, 0x94, 0x73, 0xa4, 0x18, 0xec, 0xcb, 0xca, 0x4d, 0xc2, 0xb4, 0x7f, 0x4c, 0xb6, 0xd3, 0x22, 0xf9, 0x17, 0x00, 0x58, 0x59, 0xbf, 0x22, 0x1e, 0x84, 0xac, 0x98, 0x27, 0xca, 0xb8, 0x2a, 0x80, 0x1c, 0x62, 0x7f, 0xb1, 0xec, 0x00, 0x75, 0xc4, 0x80, 0xcb, 0xaf, 0xb3, 0x52, 0xfc, 0xaf, 0x93, 0xba, 0xf2, 0x3a, 0x14, 0x05, 0xfd, 0x81, 0xfe, 0xbe, 0x09, 0x72, 0x9a, 0x90, 0x8d, 0x10, 0x77, 0xe1, 0x77, 0xdd, 0x89, 0x93, 0xd9, 0x4b, 0x25, 0x1a, 0x0d, 0x52, 0x65, 0x2d, 0xa3, 0xed, 0xb6, 0xfd, 0xf8, 0x64, 0xe8, 0x0c, 0xd5, 0x15, 0x40, 0xe7, 0x3d, 0x0b, 0x51, 0x07, 0xe3, 0x43, 0x35, 0x76, 0xdc, 0xaa, 0x4e, 0x18, 0xdb, 0x43, }; static const unsigned char ecdh_secp521r1_3089_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3089_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3089 = { .name = "ecdh_secp521r1_3089", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3089_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3089_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3089_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 606 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3090 for ECDH, tcId is 607 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3090_peerpubkey[] = { 0x00, 0x17, 0x3b, 0xee, 0xfe, 0x35, 0xee, 0x86, 0x8d, 0x49, 0x7f, 0xf6, 0x60, 0x16, 0x28, 0xf6, 0x5c, 0xe1, 0x8a, 0x15, 0x91, 0xf7, 0xe4, 0xa3, 0xa4, 0x06, 0x62, 0x2f, 0x3f, 0x50, 0x8e, 0x2d, 0xa6, 0x8f, 0x10, 0x1e, 0xd0, 0x2f, 0xeb, 0xc3, 0x84, 0x18, 0xc6, 0xdd, 0xfc, 0x26, 0xa5, 0xec, 0x98, 0x48, 0xc4, 0x27, 0x92, 0x46, 0x3b, 0x1e, 0x94, 0x5f, 0x9e, 0x16, 0x7d, 0xb3, 0x4b, 0xdf, 0x2d, 0x66, 0x00, 0x53, 0x07, 0x06, 0x47, 0xab, 0xa7, 0xcd, 0x60, 0xeb, 0x29, 0x5a, 0xb8, 0x1a, 0x26, 0x8a, 0x39, 0x03, 0xf3, 0x93, 0xc5, 0xd2, 0x8b, 0xbc, 0x5e, 0x02, 0x23, 0x51, 0xc3, 0x77, 0xcd, 0x84, 0xf0, 0x2c, 0x19, 0xde, 0xb3, 0x64, 0x42, 0x37, 0x2c, 0xae, 0x13, 0x32, 0xe9, 0x2f, 0x95, 0xba, 0x60, 0xb6, 0xc8, 0x52, 0xe0, 0xde, 0x07, 0x18, 0xe8, 0x9d, 0x24, 0xe4, 0x3c, 0xd4, 0x79, 0xc9, 0xfb, 0x11, }; static const unsigned char ecdh_secp521r1_3090_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3090_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3090 = { .name = "ecdh_secp521r1_3090", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3090_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3090_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3090_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 607 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3091 for ECDH, tcId is 608 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3091_peerpubkey[] = { 0x00, 0x98, 0x29, 0xcd, 0x54, 0x32, 0x68, 0x77, 0x39, 0xab, 0x6a, 0xe1, 0x0a, 0xf8, 0xea, 0x73, 0xd2, 0xcb, 0x53, 0xb8, 0x1e, 0xbb, 0x06, 0xb5, 0x96, 0x1b, 0x7b, 0xad, 0xc1, 0x67, 0x6b, 0x3e, 0xf7, 0xb0, 0x04, 0x54, 0xf7, 0xcd, 0xe5, 0x67, 0x74, 0xa0, 0x13, 0x12, 0xd5, 0x74, 0xa9, 0x19, 0x3c, 0x1a, 0x5f, 0xe5, 0x33, 0x6f, 0xbe, 0x62, 0x62, 0x3a, 0xd9, 0xbf, 0x81, 0x14, 0x37, 0x89, 0xf9, 0xf9, 0x00, 0x12, 0xf9, 0x55, 0x69, 0x7e, 0xd5, 0x78, 0x20, 0x71, 0x97, 0xbf, 0x9a, 0xac, 0x38, 0x96, 0x52, 0x16, 0x15, 0xdb, 0xac, 0xc8, 0xdc, 0x66, 0x5d, 0x4f, 0x17, 0x15, 0xb0, 0x84, 0x39, 0xf4, 0x9c, 0x2a, 0xa6, 0xed, 0x33, 0x70, 0x23, 0xff, 0xcc, 0xc5, 0x07, 0x5a, 0x85, 0x94, 0x49, 0x36, 0x82, 0x6d, 0xb9, 0x2f, 0x91, 0x97, 0x37, 0xca, 0x3a, 0xfe, 0xad, 0xba, 0x18, 0x47, 0x08, 0x4b, 0xde, 0xf7, }; static const unsigned char ecdh_secp521r1_3091_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3091_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3091 = { .name = "ecdh_secp521r1_3091", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3091_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3091_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3091_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 608 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3092 for ECDH, tcId is 609 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3092_peerpubkey[] = { 0x01, 0x26, 0xe3, 0xc9, 0x59, 0xcd, 0x41, 0x12, 0x0b, 0xb8, 0x36, 0x93, 0xb1, 0xd6, 0xa0, 0x34, 0xb3, 0x85, 0x13, 0x7c, 0x1b, 0xb3, 0x21, 0x3b, 0x77, 0x61, 0x22, 0xfe, 0xd9, 0x60, 0x56, 0xe3, 0x29, 0x88, 0x57, 0x18, 0xa7, 0x3b, 0xee, 0x63, 0x9c, 0x0b, 0xa4, 0xb6, 0x88, 0x18, 0x68, 0x2f, 0x49, 0x8c, 0xe5, 0x49, 0x69, 0x25, 0x00, 0x2b, 0xd7, 0x65, 0x25, 0x16, 0x40, 0x5f, 0xcc, 0x4f, 0xec, 0xad, 0x00, 0x73, 0xa9, 0xc6, 0xe3, 0xb0, 0xc6, 0x94, 0xbf, 0x7c, 0xc8, 0xcc, 0xbb, 0xd0, 0x98, 0x00, 0xe8, 0x1e, 0x35, 0x48, 0xba, 0x44, 0xa0, 0xc2, 0x38, 0x1c, 0xef, 0x0b, 0x07, 0xbf, 0x70, 0x2a, 0x19, 0x05, 0x4b, 0xb5, 0xd7, 0x17, 0xa1, 0xb7, 0x92, 0x94, 0x60, 0x9c, 0xbd, 0xaf, 0xd4, 0xe2, 0x01, 0x80, 0x64, 0xf7, 0xb2, 0xc4, 0xc2, 0x04, 0xd8, 0x18, 0xeb, 0x7c, 0xe5, 0x21, 0xc3, 0x26, 0x8c, 0xe5, }; static const unsigned char ecdh_secp521r1_3092_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3092_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_3092 = { .name = "ecdh_secp521r1_3092", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3092_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3092_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3092_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 609 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3093 for ECDH, tcId is 610 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3093_peerpubkey[] = { 0x01, 0x53, 0xdc, 0x48, 0x1a, 0xb3, 0xc5, 0xdc, 0x8d, 0xec, 0xd2, 0x4c, 0xea, 0xee, 0x1b, 0xec, 0x77, 0xf5, 0x9f, 0x21, 0xf7, 0xf3, 0x1c, 0x19, 0x53, 0x8a, 0xf0, 0x47, 0xd2, 0x81, 0xac, 0x9e, 0x25, 0x67, 0x93, 0x3f, 0xd3, 0xd2, 0x10, 0x96, 0xb1, 0x85, 0xd4, 0x09, 0x89, 0x19, 0x57, 0x19, 0x31, 0xbb, 0x9b, 0x0b, 0xe7, 0x19, 0x79, 0x95, 0xe2, 0xfb, 0xaf, 0x21, 0xc8, 0xa1, 0x00, 0x07, 0xad, 0xe0, 0x01, 0xad, 0x69, 0xf0, 0x8f, 0xca, 0xe1, 0x64, 0x39, 0x0b, 0xe8, 0x26, 0x25, 0x6b, 0x50, 0xfa, 0xe4, 0x75, 0x02, 0xce, 0x0e, 0x9c, 0xa4, 0x6a, 0xf0, 0xc4, 0x90, 0xcb, 0x40, 0x33, 0xc8, 0x86, 0xf8, 0x86, 0x61, 0xa9, 0x9f, 0xf2, 0xbd, 0x3c, 0x9c, 0x8e, 0x7d, 0xa3, 0x0f, 0xaf, 0x2b, 0x4c, 0x76, 0x9e, 0xdc, 0x58, 0x31, 0x81, 0x0a, 0xc0, 0x50, 0x54, 0xc9, 0x7e, 0x41, 0x06, 0x3f, 0x49, 0x6e, 0x1f, }; static const unsigned char ecdh_secp521r1_3093_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3093_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3093 = { .name = "ecdh_secp521r1_3093", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3093_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3093_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3093_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 610 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3094 for ECDH, tcId is 611 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3094_peerpubkey[] = { 0x01, 0xf5, 0x86, 0x61, 0x1c, 0x87, 0x15, 0x02, 0x88, 0xc3, 0xe8, 0x61, 0x16, 0xc5, 0xdb, 0x94, 0xa2, 0x67, 0x18, 0x97, 0x88, 0x29, 0xd7, 0x01, 0xdd, 0xac, 0x05, 0xe9, 0xb0, 0xce, 0x22, 0xde, 0xe4, 0xb1, 0x8e, 0x95, 0xf6, 0x0c, 0xba, 0x78, 0x3e, 0xd3, 0x38, 0x4d, 0xa3, 0x73, 0xde, 0xae, 0xfc, 0x57, 0xb8, 0x26, 0x5d, 0x3a, 0x34, 0xee, 0xb4, 0x58, 0xbf, 0x24, 0xb9, 0xd8, 0x2b, 0xe3, 0x28, 0x19, 0x00, 0x84, 0x56, 0xe0, 0xf1, 0xd8, 0x04, 0x92, 0xef, 0x00, 0x78, 0xcc, 0x24, 0x6d, 0x32, 0xfc, 0x7c, 0x7f, 0xb6, 0x72, 0x0b, 0x4d, 0x45, 0x8b, 0x51, 0xb2, 0x09, 0x8d, 0x35, 0x74, 0x67, 0x52, 0xb0, 0xef, 0x03, 0x45, 0xbd, 0x0d, 0x34, 0x2d, 0xfe, 0xe6, 0xdd, 0x2f, 0x12, 0xed, 0x12, 0xb3, 0x4b, 0xd9, 0x5d, 0x05, 0x8c, 0x28, 0x11, 0xfd, 0x47, 0x9d, 0x2d, 0xde, 0x32, 0x18, 0x0e, 0x6c, 0x9e, 0xf2, }; static const unsigned char ecdh_secp521r1_3094_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3094_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_3094 = { .name = "ecdh_secp521r1_3094", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3094_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3094_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3094_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 611 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3095 for ECDH, tcId is 612 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3095_peerpubkey[] = { 0x01, 0x5e, 0xdc, 0x87, 0xfd, 0x49, 0x9a, 0x73, 0xea, 0xbf, 0xfd, 0x14, 0xd2, 0xb6, 0xa7, 0x0a, 0x8f, 0xb6, 0x9b, 0x6a, 0x39, 0xd0, 0xd9, 0xc4, 0xdd, 0xa2, 0x33, 0x7b, 0x53, 0xcc, 0x72, 0xe4, 0x9a, 0x9e, 0x3d, 0x5a, 0x2d, 0x9e, 0x89, 0x30, 0xcf, 0xa1, 0x18, 0x52, 0xda, 0xc3, 0x34, 0x43, 0x22, 0x7f, 0xba, 0x66, 0x84, 0xbd, 0x74, 0x73, 0x2e, 0x68, 0x79, 0x88, 0x4b, 0x6e, 0xf9, 0xda, 0xe9, 0x8f, 0x01, 0x0e, 0xeb, 0x8d, 0x2e, 0x33, 0x60, 0xea, 0x97, 0x26, 0x62, 0x80, 0x85, 0x26, 0x8a, 0xf3, 0xf2, 0xa0, 0x5a, 0xd4, 0x12, 0x35, 0xd0, 0xa8, 0x92, 0x09, 0x8b, 0xd6, 0x61, 0xb6, 0x36, 0xf7, 0xef, 0x0a, 0x82, 0x02, 0x82, 0x90, 0x6e, 0xda, 0x3f, 0x1f, 0xf1, 0x98, 0x0b, 0x98, 0xfb, 0x59, 0x37, 0x22, 0x8e, 0x9e, 0xdc, 0xd6, 0x33, 0x2e, 0x36, 0x41, 0x21, 0x6c, 0x73, 0x07, 0xe7, 0xf3, 0xf4, 0x52, }; static const unsigned char ecdh_secp521r1_3095_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3095_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_3095 = { .name = "ecdh_secp521r1_3095", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3095_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3095_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3095_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 612 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3096 for ECDH, tcId is 613 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3096_peerpubkey[] = { 0x01, 0x31, 0xb4, 0x30, 0x02, 0xf7, 0xe6, 0x87, 0xee, 0xc1, 0xec, 0xf6, 0xa2, 0x53, 0xc2, 0xcc, 0xc9, 0xe4, 0x8f, 0x04, 0xd8, 0x6f, 0xcc, 0xd1, 0x8f, 0xee, 0x0d, 0x2d, 0x22, 0x19, 0x1f, 0x1e, 0xa5, 0x39, 0xc4, 0x0d, 0x52, 0x19, 0x70, 0xb4, 0x70, 0x9d, 0xc0, 0x39, 0x86, 0xf6, 0x47, 0xe0, 0xe8, 0xbb, 0x33, 0x40, 0xcf, 0x8a, 0x3e, 0x64, 0x3a, 0x35, 0x41, 0x03, 0x54, 0x37, 0xcf, 0x25, 0xf0, 0x15, 0x00, 0xb2, 0x7a, 0x55, 0xac, 0x45, 0xf0, 0x29, 0x6f, 0x8c, 0x96, 0x56, 0xbc, 0xfd, 0x52, 0xb5, 0xce, 0xa9, 0xf4, 0x11, 0x5c, 0x06, 0xe4, 0xc6, 0x43, 0x19, 0x60, 0x98, 0x47, 0xd4, 0x5e, 0x92, 0x41, 0x84, 0x00, 0xe7, 0x86, 0x86, 0x72, 0xc0, 0xd3, 0xe6, 0xe5, 0xe6, 0xe0, 0x04, 0xa7, 0x19, 0x04, 0x76, 0xed, 0x77, 0xcf, 0xc3, 0x3a, 0xd1, 0x9a, 0x4b, 0xd2, 0xc6, 0x15, 0xad, 0x99, 0x50, 0xf3, 0x74, }; static const unsigned char ecdh_secp521r1_3096_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_3096_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp521r1_3096 = { .name = "ecdh_secp521r1_3096", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3096_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3096_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3096_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 613 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3097 for ECDH, tcId is 614 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3097_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_3097_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3097_sharedsecret[] = { 0x00, 0x53, 0xbf, 0x13, 0x7f, 0xee, 0x89, 0x22, 0x76, 0x9f, 0x8d, 0x0f, 0xe2, 0x79, 0xca, 0xa4, 0xda, 0xc9, 0xc6, 0x05, 0x4a, 0xd0, 0x46, 0x09, 0x95, 0x58, 0x8a, 0x84, 0x5d, 0x0a, 0x95, 0x9e, 0x24, 0xbc, 0x0f, 0xc2, 0x39, 0x1a, 0x2b, 0x92, 0xf7, 0xbd, 0x40, 0x0f, 0x50, 0xa1, 0x1a, 0x9d, 0xb3, 0x7f, 0x07, 0xbe, 0xf7, 0xfa, 0x8d, 0xad, 0x2a, 0x90, 0x3f, 0xcf, 0x53, 0x4a, 0xbc, 0x87, 0x36, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3097 = { .name = "ecdh_secp521r1_3097", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3097_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3097_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3097_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 614 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3098 for ECDH, tcId is 615 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3098_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_3098_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3098_sharedsecret[] = { 0x01, 0xc9, 0x5a, 0xc4, 0x17, 0xc9, 0x0a, 0x52, 0x01, 0x49, 0xb2, 0x91, 0x05, 0xcd, 0xab, 0x36, 0xf5, 0x28, 0xa2, 0x3e, 0xfb, 0x56, 0x21, 0x52, 0x0d, 0xbd, 0xaf, 0xea, 0x95, 0xa7, 0xd4, 0x34, 0x99, 0xc4, 0xc8, 0xbe, 0x02, 0xcd, 0x1c, 0x2d, 0xe0, 0x00, 0xda, 0x18, 0x10, 0x4f, 0xa8, 0x4a, 0x1e, 0x9e, 0xce, 0x63, 0x86, 0xf0, 0xe0, 0xef, 0xa5, 0x23, 0x4a, 0x24, 0x59, 0x5d, 0x7c, 0x4c, 0x96, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp521r1_3098 = { .name = "ecdh_secp521r1_3098", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3098_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3098_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3098_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 615 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3099 for ECDH, tcId is 616 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3099_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_3099_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3099_sharedsecret[] = { 0x01, 0xb4, 0x7e, 0xc4, 0x1e, 0x3a, 0x5a, 0xbd, 0x9d, 0xd9, 0x80, 0x8f, 0xc0, 0x4d, 0x90, 0x78, 0xcb, 0xed, 0x72, 0xb9, 0xeb, 0xa9, 0x8d, 0x3c, 0x1d, 0xed, 0x70, 0xa2, 0x99, 0x38, 0xf0, 0xef, 0xd5, 0xa2, 0x7a, 0x71, 0x13, 0xff, 0x72, 0x1f, 0x12, 0x2c, 0xb1, 0x74, 0x11, 0xde, 0x30, 0x7a, 0x35, 0x5c, 0x68, 0x50, 0x74, 0xf5, 0x76, 0x6b, 0x6d, 0x1a, 0x03, 0x3d, 0x2f, 0xa1, 0x88, 0xc9, 0x45, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3099 = { .name = "ecdh_secp521r1_3099", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3099_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3099_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3099_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 616 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3100 for ECDH, tcId is 617 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3100_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f, 0x88, 0x0f, 0x50, 0xec, 0x94, 0xbf, 0xac, 0x66, 0x58, 0xfa, 0x2f, 0xce, 0x05, 0x94, 0x5c, 0x6a, 0x36, 0xb2, 0x66, 0x40, 0x7b, 0x6f, 0xbd, 0x54, 0x37, 0xa8, 0x3e, 0x2f, 0x2f, 0x9b, 0x9c, 0x50, 0xa7, 0x34, 0x87, 0x2e, 0x48, 0xe7, 0x0d, 0xf6, 0x54, 0x57, 0xf1, 0x3e, 0x47, 0xd0, 0x6c, 0x6b, 0x8b, 0x29, 0xf4, 0x73, 0x5a, 0xcf, 0x10, 0x5e, 0xa6, 0x3e, 0x05, 0x19, 0x04, 0xd1, 0x8a, 0xea, }; static const unsigned char ecdh_secp521r1_3100_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3100_sharedsecret[] = { 0x01, 0x3a, 0xef, 0xe3, 0x24, 0x57, 0x28, 0xa0, 0x8c, 0x90, 0x4f, 0xe7, 0xd6, 0x1c, 0xd9, 0xc2, 0xfd, 0xac, 0x63, 0xf2, 0x9c, 0xf6, 0x64, 0xd8, 0xf1, 0x61, 0xbe, 0xba, 0xcb, 0x93, 0xf8, 0xa7, 0x10, 0xe9, 0x69, 0x2f, 0x96, 0x89, 0x48, 0x0a, 0xd4, 0x98, 0xde, 0x00, 0xf0, 0x00, 0x61, 0xe4, 0x0e, 0x46, 0xe7, 0x6e, 0x47, 0x54, 0xc1, 0x13, 0x0e, 0xf4, 0x21, 0x7a, 0x58, 0x93, 0x3e, 0x0b, 0x1d, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3100 = { .name = "ecdh_secp521r1_3100", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3100_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3100_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3100_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 617 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3101 for ECDH, tcId is 618 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3101_peerpubkey[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x3f, 0xfc, 0x45, 0xda, 0x3e, 0xac, 0x1b, 0xaa, 0xb7, 0x27, 0xab, 0x8f, 0xd3, 0x55, 0xcf, 0xa1, 0x34, 0xc4, 0x20, 0x47, 0xd5, 0x52, 0x62, 0x65, 0x16, 0x54, 0xfb, 0x50, 0xdf, 0x7e, 0x9a, 0x5a, 0x75, 0xf1, 0x79, 0xc8, 0xc8, 0x6c, 0x43, 0x88, 0x21, 0x3b, 0x56, 0x87, 0xdc, 0x43, 0xdf, 0xeb, 0xb3, 0x7f, 0x30, 0x12, 0x87, 0x03, 0xc4, 0x4c, 0xcd, 0x5c, 0x32, 0x84, 0x83, 0x3b, 0x87, 0x17, }; static const unsigned char ecdh_secp521r1_3101_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3101_sharedsecret[] = { 0x01, 0x68, 0xdf, 0x27, 0x2d, 0x53, 0xe3, 0x16, 0x19, 0x26, 0x16, 0x8c, 0x4a, 0xea, 0xb5, 0xf3, 0x55, 0xb8, 0xd2, 0xa6, 0x68, 0x9c, 0xfd, 0x56, 0x7f, 0x2b, 0x6e, 0xb2, 0x01, 0x1a, 0x18, 0xc7, 0x75, 0xac, 0x2a, 0x21, 0xf8, 0xdd, 0x49, 0x7f, 0x69, 0x57, 0x21, 0x70, 0x20, 0xb3, 0xb1, 0xaf, 0xcb, 0x70, 0x21, 0xf2, 0x4f, 0xcc, 0xc2, 0x52, 0x3b, 0xe7, 0x6a, 0x2b, 0xff, 0x44, 0x59, 0x6e, 0x5a, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_3101 = { .name = "ecdh_secp521r1_3101", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3101_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3101_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3101_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 618 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3102 for ECDH, tcId is 619 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3102_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0xcd, 0x28, 0x39, 0xd8, 0x57, 0xb4, 0x69, 0x9f, 0x5c, 0x8e, 0x8a, 0x01, 0x94, 0x78, 0x6e, 0x26, 0xa8, 0x62, 0xf0, 0x86, 0xb4, 0xba, 0x80, 0x74, 0x6a, 0xe5, 0x22, 0x5e, 0xd3, 0xaa, 0x68, 0xf9, 0x6b, 0x7a, 0xae, 0xc5, 0x52, 0x25, 0x83, 0x0b, 0xb9, 0x8f, 0x52, 0xd7, 0x52, 0x21, 0x14, 0x18, 0x97, 0xba, 0x49, 0xd7, 0xa3, 0x1e, 0xbb, 0xf0, 0xb6, 0xd7, 0xd3, 0x13, 0x52, 0xe5, 0x26, 0x61, 0x90, }; static const unsigned char ecdh_secp521r1_3102_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3102_sharedsecret[] = { 0x01, 0x3d, 0xb1, 0xb9, 0x24, 0x1b, 0x23, 0xd3, 0x38, 0x60, 0xd3, 0x2d, 0xec, 0x37, 0xa7, 0x9e, 0x45, 0x46, 0xa4, 0x1a, 0xfd, 0xfd, 0xd9, 0xc4, 0x38, 0xd0, 0x4e, 0x1f, 0x8b, 0x56, 0x6a, 0xc8, 0xd9, 0xd3, 0xf5, 0x72, 0xc2, 0x93, 0xe9, 0x69, 0x43, 0x72, 0x2a, 0x4e, 0xe2, 0x90, 0xe1, 0x13, 0xff, 0xfa, 0xa8, 0x2a, 0x61, 0x86, 0x7d, 0x9c, 0xa2, 0x8d, 0x34, 0x99, 0x82, 0x35, 0x4c, 0x9b, 0x25, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3102 = { .name = "ecdh_secp521r1_3102", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3102_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3102_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3102_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 619 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3103 for ECDH, tcId is 620 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3103_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x13, 0xd9, 0x82, 0x91, 0x19, 0xf4, 0x2f, 0xfa, 0x95, 0xfe, 0xa8, 0xba, 0x9e, 0x81, 0xe4, 0xcd, 0x6a, 0x6c, 0xa9, 0x7f, 0xb0, 0x77, 0x8e, 0x12, 0xe5, 0xf5, 0xdf, 0xe3, 0x52, 0x01, 0xdd, 0x4c, 0xca, 0x8e, 0xca, 0x0d, 0x2e, 0x39, 0x55, 0x55, 0x99, 0x70, 0x41, 0x38, 0x1e, 0x6a, 0xc1, 0xf1, 0x8d, 0xdf, 0x4c, 0x74, 0xe0, 0xb6, 0xe9, 0x04, 0x1c, 0xfd, 0xca, 0x1d, 0x1c, 0x10, 0x30, 0x91, }; static const unsigned char ecdh_secp521r1_3103_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3103_sharedsecret[] = { 0x01, 0xd2, 0xbb, 0xe9, 0xf7, 0x54, 0x58, 0x4e, 0xbb, 0xc7, 0xc7, 0xad, 0x74, 0x13, 0x6d, 0x1c, 0x8a, 0x14, 0x49, 0x48, 0x94, 0x8a, 0xa8, 0xbe, 0x49, 0x98, 0x9d, 0xd9, 0xb4, 0xc5, 0x14, 0xdb, 0x2e, 0x2a, 0xb1, 0xe0, 0x71, 0x3a, 0xd1, 0x69, 0x9f, 0x63, 0x2d, 0xd2, 0xce, 0xa5, 0x3d, 0xa2, 0x18, 0xed, 0x54, 0x9f, 0x03, 0x0a, 0x11, 0x3e, 0x28, 0x2f, 0xd9, 0xe3, 0xbe, 0x46, 0x2d, 0x9a, 0xba, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_3103 = { .name = "ecdh_secp521r1_3103", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3103_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3103_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3103_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 620 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3104 for ECDH, tcId is 621 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3104_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x87, 0x8a, 0xd5, 0x97, 0xd2, 0x90, 0xdb, 0x2c, 0xf6, 0x60, 0x59, 0x4a, 0xee, 0xd0, 0xf9, 0xb7, 0xc8, 0xdd, 0x68, 0x45, 0x1d, 0x2d, 0x1b, 0x2c, 0xbc, 0x81, 0x6b, 0x1e, 0xc4, 0xf3, 0x54, 0x65, 0xb3, 0x96, 0x4a, 0xff, 0x2e, 0xdf, 0x12, 0x55, 0x16, 0x3f, 0x5f, 0xca, 0x58, 0x01, 0x32, 0xf8, 0x5c, 0xad, 0xe2, 0x88, 0x7a, 0x01, 0x7e, 0x7c, 0xd0, 0xb3, 0x71, 0x96, 0xad, 0x85, 0x22, 0x11, 0x07, }; static const unsigned char ecdh_secp521r1_3104_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3104_sharedsecret[] = { 0x00, 0x0f, 0x37, 0xa2, 0xe2, 0xca, 0xef, 0x54, 0xff, 0xf4, 0x12, 0x6c, 0x0f, 0xa9, 0x6e, 0x7c, 0x47, 0xf0, 0xca, 0xd7, 0x46, 0x26, 0xef, 0x91, 0xe5, 0x89, 0xe1, 0x2d, 0x2e, 0x1e, 0x8c, 0x22, 0x1b, 0xe7, 0x29, 0x5b, 0xe9, 0xdc, 0x27, 0x12, 0xb8, 0x7b, 0xb0, 0xaa, 0x0f, 0x58, 0x80, 0xb7, 0x38, 0xbc, 0x12, 0x42, 0xf2, 0xba, 0x77, 0x3b, 0xf9, 0xeb, 0x2a, 0x54, 0xe3, 0xc1, 0xca, 0x47, 0x58, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3104 = { .name = "ecdh_secp521r1_3104", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3104_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3104_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3104_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 621 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3105 for ECDH, tcId is 622 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3105_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xe1, 0x19, 0x1b, 0x44, 0x9f, 0xa1, 0xeb, 0xdb, 0xd6, 0x77, 0xda, 0xa4, 0x8f, 0x90, 0xe2, 0xd1, 0xd6, 0xc0, 0x58, 0xc8, 0x77, 0x08, 0x7c, 0xaf, 0xd9, 0x36, 0x4d, 0x99, 0xdb, 0xb2, 0x83, 0xc6, 0x84, 0x02, 0xe6, 0xe6, 0xc5, 0xf5, 0x41, 0x1b, 0x2e, 0xd4, 0x28, 0x24, 0xd8, 0xb2, 0x80, 0xce, 0xb9, 0x10, 0xab, 0xa6, 0x84, 0x78, 0x83, 0xa7, 0xe3, 0x78, 0x0e, 0x21, 0x32, 0xaf, 0x41, 0xc1, }; static const unsigned char ecdh_secp521r1_3105_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3105_sharedsecret[] = { 0x01, 0x7a, 0xeb, 0x25, 0x4d, 0x9c, 0x8c, 0x8e, 0xe0, 0x62, 0x15, 0xff, 0x33, 0x81, 0x13, 0x57, 0xda, 0x73, 0xbf, 0x7f, 0x6d, 0xd6, 0xd7, 0xf8, 0xf1, 0x76, 0xd6, 0x2c, 0x06, 0x5a, 0x88, 0xa9, 0x00, 0x5f, 0x68, 0x0c, 0x63, 0x0e, 0x9f, 0x27, 0x63, 0x58, 0x5e, 0xa2, 0xee, 0x76, 0xb6, 0xe4, 0xab, 0x45, 0xe6, 0x73, 0xf8, 0x14, 0xeb, 0xfa, 0x95, 0x94, 0x7c, 0x0c, 0x63, 0xfb, 0x24, 0xfa, 0x6e, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_3105 = { .name = "ecdh_secp521r1_3105", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3105_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3105_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3105_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 622 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3106 for ECDH, tcId is 623 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3106_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x75, 0x13, 0xd6, 0x15, 0x65, 0x6a, 0x1c, 0xc7, 0x50, 0x5c, 0x18, 0xaa, 0x21, 0xb0, 0x8e, 0x2b, 0x1d, 0x5a, 0x84, 0x1d, 0xe0, 0x81, 0x6c, 0xc2, 0x9c, 0x00, 0x4e, 0xfd, 0xb2, 0xd9, 0x02, 0xac, 0x1a, 0x7b, 0xb0, 0x5e, 0x20, 0x72, 0x2b, 0x57, 0x6b, 0x64, 0xa3, 0xdd, 0xf4, 0xd2, 0x48, 0x64, 0x21, 0xac, 0x70, 0x6b, 0xf4, 0xa4, 0x24, 0xf2, 0x52, 0x38, 0x63, 0x68, 0xa5, 0x34, 0x0f, 0xb6, }; static const unsigned char ecdh_secp521r1_3106_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3106_sharedsecret[] = { 0x00, 0x61, 0xbe, 0xd4, 0x22, 0x48, 0xa3, 0x7b, 0x46, 0x25, 0xef, 0x04, 0xc4, 0xf9, 0xc7, 0xef, 0x69, 0xee, 0x3c, 0x6f, 0x95, 0x03, 0x37, 0x83, 0x51, 0xfc, 0xab, 0x1b, 0x8c, 0xe1, 0x34, 0x32, 0x06, 0x99, 0x7e, 0xec, 0x1b, 0x88, 0x44, 0x9e, 0xb6, 0xf7, 0x35, 0x57, 0x11, 0xea, 0x1a, 0x81, 0x8a, 0x48, 0x6e, 0xe3, 0x0a, 0x24, 0x12, 0x62, 0x41, 0xa7, 0xe2, 0x28, 0x92, 0x67, 0xcf, 0x5d, 0xd6, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3106 = { .name = "ecdh_secp521r1_3106", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3106_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3106_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3106_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 623 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3107 for ECDH, tcId is 624 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3107_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x1f, 0xe8, 0x00, 0xc5, 0x0e, 0x54, 0x01, 0x2b, 0x75, 0xa3, 0x3e, 0x4b, 0xe7, 0xd0, 0x7c, 0x8d, 0x60, 0xf2, 0x96, 0x80, 0xa3, 0x95, 0xe9, 0x51, 0xa6, 0xa3, 0x1c, 0x50, 0x96, 0xb0, 0xea, 0x92, 0x8f, 0xc2, 0xcb, 0xf3, 0x27, 0xdd, 0x78, 0x4d, 0xc0, 0xa7, 0xca, 0x46, 0xea, 0x73, 0x99, 0x2b, 0x75, 0x8b, 0x56, 0x41, 0x36, 0x4b, 0x4a, 0xba, 0x39, 0xe9, 0x37, 0x98, 0xa4, 0xd9, 0x25, 0xa0, 0x08, }; static const unsigned char ecdh_secp521r1_3107_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3107_sharedsecret[] = { 0x00, 0x10, 0x67, 0xd9, 0x10, 0x4e, 0x29, 0x6e, 0xf4, 0x2b, 0x94, 0x45, 0x87, 0xde, 0x11, 0xb1, 0x0d, 0xf0, 0x5d, 0x2d, 0x95, 0x9e, 0xd4, 0x4c, 0xac, 0x9e, 0x7e, 0xf1, 0xc7, 0xa0, 0x5d, 0x90, 0x81, 0x9c, 0x43, 0xbc, 0x79, 0xc7, 0x39, 0x79, 0x18, 0xf9, 0x57, 0xcc, 0x98, 0xdb, 0x93, 0x17, 0x63, 0xbb, 0xeb, 0x1b, 0xdf, 0xc3, 0x58, 0x65, 0xe8, 0xa3, 0x59, 0xa0, 0x13, 0xf1, 0x3d, 0x60, 0xc4, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_3107 = { .name = "ecdh_secp521r1_3107", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3107_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3107_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3107_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 624 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3108 for ECDH, tcId is 625 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3108_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8d, 0xd1, 0x8a, 0x1f, 0x5e, 0x48, 0x21, 0x40, 0xbe, 0x79, 0xbb, 0x65, 0xa2, 0x1a, 0xd6, 0x0c, 0x89, 0x87, 0xe5, 0x32, 0xc8, 0x43, 0x45, 0xf0, 0x13, 0x5a, 0xff, 0xd4, 0x6e, 0xc7, 0x1e, 0xf0, 0x2b, 0x1c, 0xa3, 0xad, 0x56, 0xf3, 0x01, 0xd9, 0x55, 0xfa, 0x30, 0x6c, 0x12, 0x2d, 0x44, 0x1d, 0x6f, 0xed, 0xcf, 0x8b, 0x85, 0x5e, 0xf2, 0x56, 0x35, 0x0b, 0xf6, 0x9d, 0x23, 0xa7, 0x20, 0x7a, 0xd9, }; static const unsigned char ecdh_secp521r1_3108_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3108_sharedsecret[] = { 0x00, 0xb7, 0x79, 0xd8, 0x30, 0x35, 0xcf, 0x7b, 0xb0, 0xbb, 0x04, 0xc7, 0xb2, 0xf4, 0x6d, 0x08, 0xf6, 0x79, 0x1f, 0x0d, 0x15, 0x42, 0xc9, 0xbc, 0xce, 0x72, 0x50, 0xe7, 0x72, 0xb1, 0x2a, 0xd8, 0xe3, 0x8f, 0xce, 0x1d, 0x2b, 0x06, 0x3a, 0x06, 0xf0, 0xfa, 0x3a, 0x1b, 0x07, 0x2d, 0xd9, 0x76, 0xf5, 0xf8, 0x54, 0x29, 0x79, 0x90, 0x30, 0x75, 0x16, 0x2f, 0x1f, 0x5c, 0x6b, 0xa3, 0xb7, 0x6c, 0xc4, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3108 = { .name = "ecdh_secp521r1_3108", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3108_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3108_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3108_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 625 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3109 for ECDH, tcId is 626 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3109_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x00, 0x56, 0x62, 0x03, 0xdd, 0x32, 0x5a, 0x08, 0x1c, 0x44, 0x41, 0xf0, 0x01, 0xf7, 0x80, 0x36, 0x58, 0x74, 0xfd, 0x3d, 0x0c, 0x9b, 0xc4, 0x72, 0x27, 0x48, 0x1a, 0xfe, 0x76, 0xa9, 0x3a, 0xe1, 0xbf, 0xde, 0x63, 0xaf, 0x97, 0x22, 0x03, 0xab, 0xfe, 0x22, 0xc6, 0x3b, 0x80, 0xe8, 0x3f, 0x7c, 0xc2, 0x18, 0x4c, 0x3c, 0xb8, 0xcf, 0xd0, 0x15, 0x2c, 0x54, 0x32, 0x4c, 0x47, 0x59, 0xfd, 0x1f, 0x9a, 0x50, }; static const unsigned char ecdh_secp521r1_3109_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3109_sharedsecret[] = { 0x01, 0xaf, 0xe5, 0xd2, 0x37, 0x33, 0x72, 0x8b, 0x79, 0xc7, 0x43, 0x93, 0x3b, 0x9b, 0xa7, 0xdf, 0xec, 0x5e, 0xd1, 0x9b, 0x77, 0x37, 0xe3, 0x93, 0x90, 0x8a, 0x1d, 0x00, 0x09, 0x18, 0xaa, 0x79, 0x5d, 0x1c, 0xe0, 0xad, 0x53, 0x39, 0x83, 0xd0, 0x18, 0xf9, 0x27, 0xb3, 0x5d, 0x2a, 0xf6, 0x46, 0x33, 0x56, 0x57, 0x3f, 0x38, 0x7f, 0xeb, 0xd7, 0x59, 0x11, 0xa4, 0x94, 0x86, 0x20, 0x2c, 0xa6, 0x9d, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3109 = { .name = "ecdh_secp521r1_3109", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3109_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3109_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3109_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 626 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3110 for ECDH, tcId is 627 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3110_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0xb1, 0x1c, 0x66, 0x8f, 0xbd, 0x54, 0x9f, 0x36, 0x88, 0x9f, 0x7b, 0x63, 0x43, 0x40, 0x51, 0xda, 0x26, 0xf1, 0x57, 0x05, 0x83, 0x91, 0x36, 0xb1, 0xb1, 0x4a, 0x09, 0x15, 0x2d, 0x7a, 0x18, 0x2e, 0xa7, 0x80, 0x6c, 0x35, 0x47, 0x8a, 0x32, 0xd3, 0xaa, 0x3c, 0x9c, 0x16, 0x27, 0xa6, 0x15, 0x19, 0xeb, 0xec, 0x71, 0xb3, 0x6f, 0xa7, 0x74, 0x49, 0x02, 0x5b, 0x88, 0x29, 0xe2, 0x7f, 0x30, 0x78, 0x34, }; static const unsigned char ecdh_secp521r1_3110_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3110_sharedsecret[] = { 0x01, 0x96, 0x12, 0xae, 0xb3, 0x86, 0xfe, 0xbb, 0x1a, 0x28, 0x09, 0x6f, 0xe5, 0xb2, 0xf6, 0x82, 0xde, 0xad, 0x02, 0x38, 0x97, 0x85, 0x22, 0x5b, 0x80, 0xa2, 0x7d, 0xf4, 0x39, 0x51, 0x0d, 0x08, 0x34, 0x9a, 0x19, 0x38, 0x39, 0x52, 0x5f, 0x24, 0x8b, 0x7f, 0x9b, 0xca, 0xbf, 0xd3, 0xdc, 0x8d, 0xa8, 0xcc, 0x17, 0x24, 0x02, 0x22, 0x99, 0xb7, 0xb5, 0xe7, 0x23, 0x99, 0xd8, 0x94, 0x64, 0xb8, 0x2e, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_3110 = { .name = "ecdh_secp521r1_3110", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3110_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3110_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3110_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 627 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3111 for ECDH, tcId is 628 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3111_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x00, 0xaa, 0x75, 0xef, 0xc0, 0xa8, 0xda, 0xac, 0x1d, 0x73, 0xf3, 0x2c, 0x9c, 0x55, 0x24, 0x14, 0xbc, 0xcf, 0x44, 0xaf, 0x8e, 0x74, 0x33, 0x1b, 0x47, 0x43, 0x9e, 0x7d, 0xcc, 0x49, 0xa1, 0x35, 0xb3, 0xee, 0x61, 0xe9, 0xf6, 0x97, 0x17, 0xd8, 0x9b, 0x4b, 0xba, 0x35, 0x67, 0xa1, 0x95, 0xae, 0xda, 0x13, 0xfb, 0xec, 0x63, 0x4b, 0xf2, 0x98, 0x4b, 0x5e, 0xc6, 0xb6, 0xf8, 0x0f, 0x59, 0x78, 0xed, 0x5a, }; static const unsigned char ecdh_secp521r1_3111_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3111_sharedsecret[] = { 0x00, 0x57, 0x06, 0x73, 0xf8, 0x7a, 0xdc, 0xef, 0x49, 0xc1, 0xf0, 0x11, 0xe8, 0xb9, 0xf1, 0xe1, 0x1f, 0x7f, 0xd3, 0xb3, 0xc9, 0x31, 0x14, 0xd0, 0x8d, 0x3f, 0x51, 0x5a, 0xa4, 0xa8, 0x95, 0xa6, 0xc7, 0x01, 0xc5, 0x23, 0x06, 0x3b, 0xdc, 0x13, 0xad, 0x1d, 0xb0, 0xa5, 0x4f, 0x6e, 0x7b, 0x47, 0x6f, 0xe1, 0x0d, 0xb2, 0x07, 0x04, 0x41, 0xbe, 0xfc, 0x58, 0xc8, 0xcf, 0xf3, 0xc0, 0x8e, 0xf7, 0x6e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_3111 = { .name = "ecdh_secp521r1_3111", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3111_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3111_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3111_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 628 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3112 for ECDH, tcId is 629 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3112_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_3112_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3112_sharedsecret[] = { 0x00, 0x16, 0xaa, 0xf2, 0x28, 0xb0, 0xae, 0xc1, 0x90, 0xd4, 0xe4, 0xe5, 0xb8, 0x13, 0x8f, 0xf9, 0xcc, 0x46, 0xd7, 0x05, 0xda, 0x1b, 0xf0, 0x02, 0x90, 0x1c, 0x6a, 0xb4, 0x20, 0xf5, 0x93, 0x14, 0xd5, 0xb6, 0x41, 0x71, 0x2b, 0x14, 0xef, 0x3e, 0x4f, 0xb1, 0x25, 0x65, 0x2c, 0x47, 0x88, 0x86, 0x76, 0x80, 0x4f, 0xb5, 0x57, 0x5b, 0x74, 0x1a, 0x84, 0x08, 0xc5, 0x62, 0x5b, 0xfc, 0xcf, 0xf4, 0xfd, 0xda, }; static const wycheproof_ecdh_test ecdh_secp521r1_3112 = { .name = "ecdh_secp521r1_3112", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3112_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3112_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3112_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 629 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3113 for ECDH, tcId is 630 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3113_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_3113_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_3113_sharedsecret[] = { 0x00, 0xa5, 0xd6, 0xdf, 0xda, 0x2b, 0x26, 0x9f, 0x4a, 0xb8, 0x95, 0xa4, 0x1c, 0x3b, 0x71, 0xb6, 0xba, 0x10, 0xd5, 0xc9, 0xf0, 0xd9, 0xb3, 0xe7, 0x30, 0x27, 0x53, 0x45, 0xe4, 0x72, 0x15, 0x94, 0xab, 0xfd, 0x39, 0x46, 0x4c, 0x22, 0x77, 0x16, 0xde, 0xd8, 0xef, 0x3e, 0x60, 0xbb, 0x1c, 0xa0, 0xb5, 0x51, 0x71, 0x6e, 0x3f, 0x6e, 0xeb, 0xb4, 0x8d, 0x5c, 0xe8, 0xe0, 0xab, 0x58, 0xcb, 0x1b, 0x73, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_3113 = { .name = "ecdh_secp521r1_3113", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3113_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3113_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3113_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 630 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3114 for ECDH, tcId is 631 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3114_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_3114_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3114_sharedsecret[] = { 0x00, 0x8f, 0x61, 0xe1, 0x5e, 0x8c, 0x85, 0x45, 0xdc, 0xda, 0xb1, 0x88, 0xf1, 0x0b, 0xa9, 0x11, 0x1b, 0x63, 0x45, 0xd5, 0x29, 0xd9, 0xc5, 0x47, 0x06, 0x77, 0x34, 0x2d, 0xf7, 0xef, 0x54, 0xc5, 0x6a, 0x1f, 0xb9, 0xfb, 0xe8, 0xde, 0xa7, 0x6a, 0xfb, 0xe8, 0xf2, 0xdd, 0x4c, 0x3c, 0xfb, 0x4d, 0x5b, 0x74, 0x9d, 0x74, 0x39, 0x44, 0xc9, 0x6d, 0x74, 0xfb, 0x47, 0xbc, 0x4b, 0xf6, 0x01, 0xe5, 0xdc, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3114 = { .name = "ecdh_secp521r1_3114", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3114_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3114_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3114_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 631 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3115 for ECDH, tcId is 632 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3115_peerpubkey[] = { 0x00, 0x4d, 0xc1, 0x6c, 0xaf, 0xca, 0x98, 0x33, 0xee, 0xb9, 0x7c, 0x13, 0x6c, 0x15, 0x4f, 0x3a, 0xe3, 0x90, 0x83, 0x0f, 0x26, 0xd3, 0x00, 0xed, 0xef, 0x06, 0xf8, 0x67, 0xef, 0xab, 0x1c, 0x42, 0x14, 0xf5, 0x63, 0xc2, 0x5e, 0x1c, 0x81, 0xe1, 0x6a, 0x86, 0xea, 0xac, 0x82, 0x72, 0x89, 0x2d, 0x1b, 0x65, 0xb2, 0xee, 0x7f, 0xb2, 0xb6, 0x9b, 0xa1, 0x11, 0x0b, 0x08, 0x3b, 0xbe, 0xb6, 0xb8, 0x87, 0x3a, 0x01, 0x0d, 0xbb, 0x70, 0x12, 0x66, 0xa8, 0xdf, 0x32, 0xd1, 0x7b, 0xd5, 0x8b, 0xea, 0x36, 0x5c, 0x26, 0x37, 0xd6, 0x86, 0x27, 0x29, 0x00, 0xa5, 0xea, 0x7a, 0x19, 0xff, 0x98, 0xdb, 0x3b, 0xf9, 0x24, 0x25, 0xa4, 0x83, 0xc7, 0x0f, 0xdd, 0x9d, 0xb2, 0x5b, 0x6e, 0xe6, 0x99, 0x81, 0xcb, 0x69, 0xdc, 0xc9, 0xc4, 0x18, 0xc3, 0x29, 0x89, 0xe7, 0x3f, 0x0a, 0x5f, 0xd7, 0xf3, 0xc3, 0xba, 0x44, 0xb0, 0x51, }; static const unsigned char ecdh_secp521r1_3115_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3115_sharedsecret[] = { 0x01, 0x7e, 0x7e, 0xec, 0xdb, 0x0f, 0x52, 0xe3, 0xb8, 0xae, 0xdd, 0x0f, 0x55, 0x50, 0xf2, 0x6c, 0xd5, 0xe2, 0x7e, 0x71, 0x1d, 0x68, 0x60, 0xc5, 0x4f, 0x88, 0xcf, 0xd3, 0xff, 0x07, 0x5d, 0xf8, 0xd3, 0x63, 0xee, 0x3b, 0xe4, 0xda, 0xc2, 0xf4, 0x2d, 0x03, 0x6b, 0x7c, 0x64, 0xe2, 0xb5, 0x0d, 0x90, 0x76, 0x4a, 0xb4, 0xee, 0xf0, 0xb9, 0xd6, 0x8c, 0x29, 0x68, 0x2b, 0x97, 0x07, 0xd4, 0x5e, 0xc2, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_3115 = { .name = "ecdh_secp521r1_3115", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3115_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3115_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3115_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 632 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3116 for ECDH, tcId is 633 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3116_peerpubkey[] = { 0x01, 0x82, 0x55, 0xc0, 0x14, 0xf2, 0x53, 0x3a, 0xd9, 0x30, 0xe4, 0x32, 0x02, 0x16, 0x49, 0x6a, 0x3f, 0x4e, 0x0d, 0x78, 0xb5, 0x0f, 0xa2, 0x7d, 0x42, 0x20, 0x9e, 0x27, 0x0e, 0x39, 0xba, 0xf4, 0x80, 0xa9, 0x87, 0xa2, 0xc8, 0x40, 0x98, 0xee, 0xe5, 0x38, 0x89, 0xea, 0x8b, 0x6c, 0xc9, 0x03, 0x6d, 0xde, 0xeb, 0xef, 0xc0, 0x0b, 0x55, 0x42, 0xd2, 0x42, 0x5f, 0xaf, 0xd5, 0xe1, 0xba, 0xba, 0xe8, 0x41, 0x01, 0xdb, 0x81, 0x7b, 0x33, 0x2b, 0x29, 0x7a, 0x00, 0x3c, 0xff, 0xc4, 0x25, 0x1b, 0x58, 0xd9, 0xc7, 0xce, 0x0b, 0x90, 0x30, 0x1e, 0xf5, 0xc6, 0x5e, 0x8a, 0xc0, 0xf8, 0x25, 0x17, 0xfd, 0x17, 0x30, 0xa1, 0x67, 0xd8, 0x3a, 0xf5, 0x0d, 0x92, 0xf7, 0xe2, 0x5e, 0x08, 0x78, 0x71, 0x30, 0x61, 0x89, 0x20, 0x34, 0x5c, 0x43, 0x53, 0x37, 0xef, 0x45, 0xeb, 0x2e, 0x9b, 0x1a, 0xce, 0x53, 0x0d, 0x0e, 0xaf, }; static const unsigned char ecdh_secp521r1_3116_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3116_sharedsecret[] = { 0x01, 0x15, 0xba, 0x7f, 0xc1, 0xef, 0x5d, 0x15, 0x47, 0xbb, 0x25, 0x9d, 0x73, 0x02, 0xcf, 0x84, 0x40, 0x01, 0x60, 0xa5, 0x99, 0xa3, 0xfd, 0x1d, 0x36, 0x8e, 0x4d, 0x8f, 0x13, 0x68, 0x48, 0xbc, 0x32, 0xb3, 0x45, 0xa7, 0x92, 0x6b, 0x95, 0x14, 0x0c, 0x31, 0x9d, 0xb3, 0x9d, 0x3d, 0x89, 0x47, 0x9d, 0x44, 0xae, 0xac, 0xc0, 0x5c, 0x8a, 0xf3, 0x7d, 0x55, 0x45, 0x0c, 0x1a, 0xe1, 0x14, 0xbe, 0xb5, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_3116 = { .name = "ecdh_secp521r1_3116", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3116_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3116_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3116_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 633 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3117 for ECDH, tcId is 634 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3117_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_3117_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3117_sharedsecret[] = { 0x01, 0xd6, 0x39, 0x65, 0xc1, 0x50, 0xdc, 0xc6, 0xc8, 0x34, 0xdd, 0x2a, 0x94, 0x46, 0xa9, 0x00, 0x6e, 0x01, 0x1a, 0xff, 0xb8, 0x24, 0x1a, 0x38, 0xe3, 0x40, 0x97, 0x52, 0xb7, 0xf4, 0x78, 0xd3, 0x2c, 0x6d, 0x46, 0x1f, 0x97, 0x82, 0x96, 0xa5, 0x73, 0x39, 0xff, 0x4a, 0xb1, 0xa3, 0x08, 0xf8, 0xfd, 0x03, 0x30, 0xa9, 0x32, 0x97, 0x9b, 0x3f, 0xc2, 0x36, 0x3d, 0x04, 0x53, 0x8e, 0x72, 0x51, 0x01, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_3117 = { .name = "ecdh_secp521r1_3117", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3117_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3117_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3117_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 634 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3118 for ECDH, tcId is 635 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3118_peerpubkey[] = { 0x01, 0x73, 0xde, 0x99, 0x09, 0x78, 0xda, 0x53, 0xa0, 0x5c, 0x46, 0x3a, 0x56, 0x73, 0x04, 0x72, 0x7b, 0xbc, 0x9d, 0xbe, 0xd8, 0xd5, 0xda, 0xb3, 0xba, 0xd1, 0x1d, 0x18, 0x04, 0xde, 0xa8, 0x64, 0xfb, 0xed, 0x5b, 0xbe, 0xc8, 0x07, 0xc1, 0x3e, 0x41, 0x28, 0x74, 0x9c, 0xf8, 0xc1, 0x17, 0x27, 0xa4, 0xc5, 0x28, 0xf9, 0x1f, 0xf0, 0x21, 0x7f, 0x95, 0x3a, 0x30, 0x48, 0xde, 0x5b, 0xa7, 0xa2, 0xb9, 0xad, 0x00, 0xf0, 0x21, 0x3d, 0x03, 0x2c, 0xc6, 0x74, 0xe1, 0x02, 0x9c, 0x71, 0xd1, 0x0c, 0xb3, 0xf9, 0x1d, 0xe5, 0x37, 0x53, 0xa0, 0x1d, 0x6d, 0xdc, 0x41, 0x06, 0x40, 0x36, 0xa4, 0x3d, 0x61, 0x3f, 0x2b, 0xb8, 0x3f, 0xb9, 0x99, 0x87, 0x4a, 0x0f, 0xad, 0xcf, 0x8a, 0x6d, 0x40, 0xb9, 0x17, 0x13, 0xcc, 0x91, 0x14, 0xbd, 0x44, 0xc0, 0xf1, 0x33, 0x3e, 0xf9, 0x8f, 0x0e, 0xfb, 0x63, 0x72, 0xa9, 0xa4, 0x53, }; static const unsigned char ecdh_secp521r1_3118_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3118_sharedsecret[] = { 0x00, 0x81, 0x5a, 0x61, 0xf2, 0xc7, 0x62, 0x2d, 0x1b, 0x9e, 0x33, 0x10, 0x10, 0x4a, 0x41, 0xc5, 0x76, 0x83, 0x5a, 0x29, 0xcf, 0x3a, 0x87, 0x5e, 0x3b, 0x10, 0x62, 0xe4, 0x58, 0x87, 0x16, 0xd2, 0x57, 0x77, 0xf0, 0xa9, 0x0f, 0xa6, 0xa9, 0x9a, 0x95, 0x22, 0x63, 0x20, 0xba, 0x22, 0x5b, 0x89, 0x65, 0xd0, 0xef, 0x5a, 0xf6, 0x74, 0xfb, 0xa6, 0x9a, 0x8a, 0xcb, 0x85, 0x0b, 0x77, 0x73, 0xbe, 0x0c, 0x82, }; static const wycheproof_ecdh_test ecdh_secp521r1_3118 = { .name = "ecdh_secp521r1_3118", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3118_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3118_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3118_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 635 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3119 for ECDH, tcId is 636 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3119_peerpubkey[] = { 0x01, 0x0f, 0x43, 0x66, 0x2f, 0x4b, 0xad, 0x61, 0x87, 0xad, 0x22, 0xa4, 0x1d, 0xfc, 0x83, 0x1d, 0xcb, 0xa2, 0x55, 0xaf, 0x6c, 0x4b, 0x5f, 0x1c, 0x14, 0xb2, 0xed, 0x54, 0x47, 0xf8, 0x8b, 0x65, 0xd6, 0x90, 0xb8, 0x75, 0x84, 0x8e, 0xa7, 0xa0, 0xc4, 0xef, 0xe5, 0x5b, 0x82, 0x14, 0x88, 0xd1, 0xb0, 0xf8, 0x5c, 0xda, 0x6e, 0x71, 0x73, 0xd8, 0x7e, 0x0d, 0x76, 0x44, 0x1a, 0xaf, 0x60, 0xe9, 0x60, 0xd1, 0x00, 0x17, 0xfa, 0x4b, 0x51, 0x09, 0x7c, 0x5e, 0xf9, 0xcb, 0x66, 0xd6, 0xc3, 0xeb, 0x85, 0x1e, 0x1a, 0x8a, 0x41, 0x10, 0x24, 0x52, 0xbd, 0x3f, 0x89, 0x02, 0xf1, 0x7e, 0xe7, 0x2a, 0xb0, 0x77, 0x22, 0x41, 0x51, 0x01, 0x44, 0x67, 0x46, 0x86, 0x41, 0x9c, 0x7c, 0xd5, 0x5a, 0x93, 0x09, 0x51, 0x16, 0x5b, 0xa0, 0x7d, 0x34, 0xc2, 0xc2, 0x0c, 0x42, 0x10, 0x69, 0xc1, 0xfe, 0x3d, 0x97, 0x67, 0x37, 0xa4, }; static const unsigned char ecdh_secp521r1_3119_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3119_sharedsecret[] = { 0x01, 0x10, 0xea, 0x8a, 0xf7, 0x65, 0x67, 0x35, 0x17, 0x66, 0xd7, 0xdd, 0xcb, 0x73, 0x43, 0xee, 0x04, 0xed, 0xd9, 0x50, 0x35, 0xf7, 0x27, 0xe6, 0xba, 0xe0, 0xd8, 0x9d, 0x50, 0x17, 0x01, 0x9a, 0x3d, 0xf7, 0x95, 0x54, 0xd1, 0xd0, 0xe8, 0x4f, 0xe3, 0x39, 0xa7, 0xc0, 0xfd, 0x79, 0x82, 0x9c, 0xda, 0xe1, 0x37, 0x2e, 0x5d, 0x99, 0x00, 0xa0, 0xdc, 0x8b, 0xac, 0x63, 0xae, 0x33, 0x06, 0x6d, 0x3f, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_3119 = { .name = "ecdh_secp521r1_3119", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3119_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3119_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3119_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 636 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3120 for ECDH, tcId is 637 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3120_peerpubkey[] = { 0x01, 0x21, 0x83, 0xff, 0xf5, 0x77, 0x7e, 0x31, 0x9e, 0x8c, 0xd2, 0x3a, 0xb5, 0x39, 0x2b, 0xaa, 0x9d, 0x4b, 0x1d, 0x43, 0xc7, 0xf8, 0xb0, 0x1f, 0x78, 0xf2, 0x95, 0xc0, 0xc3, 0x7d, 0x4a, 0x3a, 0x12, 0x2f, 0x88, 0xc1, 0x63, 0xa8, 0xf9, 0x64, 0x8d, 0x9d, 0xa2, 0x3b, 0x38, 0x9b, 0xa5, 0x6e, 0x8e, 0x9c, 0xa0, 0x22, 0xc2, 0xfe, 0x9c, 0x27, 0x3f, 0x25, 0x85, 0x42, 0x9a, 0x2d, 0xe4, 0x32, 0x95, 0xb9, 0x01, 0xe1, 0x8e, 0x9e, 0xaa, 0xf8, 0xa4, 0x06, 0xf1, 0x0b, 0x1d, 0xcb, 0xaa, 0x68, 0x47, 0x43, 0xa4, 0x3d, 0x20, 0x3f, 0x6c, 0xdd, 0xd8, 0x70, 0x9d, 0xb9, 0x0f, 0x43, 0xfe, 0x7b, 0x8b, 0x38, 0x15, 0xea, 0xd2, 0x04, 0x6b, 0x6b, 0x37, 0x23, 0x9e, 0x06, 0x5d, 0xa6, 0x2d, 0x79, 0x7c, 0xd0, 0xa7, 0x31, 0x22, 0xee, 0x9b, 0xf1, 0xbd, 0x00, 0xb0, 0xd8, 0x01, 0x29, 0x7a, 0x3d, 0x2b, 0xce, 0xfd, 0x0d, }; static const unsigned char ecdh_secp521r1_3120_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3120_sharedsecret[] = { 0x01, 0xf3, 0xc9, 0xb4, 0x4f, 0xaf, 0x75, 0x4b, 0xe2, 0x50, 0xc2, 0xed, 0x75, 0x65, 0x41, 0xc2, 0x61, 0xcb, 0x53, 0x79, 0x5a, 0x55, 0x5e, 0x92, 0x47, 0x82, 0xdc, 0x4f, 0x2c, 0x1d, 0xd4, 0xa3, 0x85, 0x5c, 0x82, 0x3f, 0x33, 0xbd, 0xfc, 0xb0, 0xf0, 0x50, 0x3e, 0xa3, 0xf9, 0xa9, 0x11, 0xe2, 0x42, 0x35, 0x37, 0x5a, 0x69, 0xda, 0x21, 0xa9, 0xae, 0x4c, 0x64, 0x77, 0x38, 0xb7, 0xe5, 0xc5, 0x29, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_3120 = { .name = "ecdh_secp521r1_3120", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3120_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3120_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3120_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 637 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3121 for ECDH, tcId is 638 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3121_peerpubkey[] = { 0x00, 0x96, 0x06, 0x8a, 0x51, 0x2e, 0x31, 0x7e, 0xc6, 0x35, 0x88, 0xff, 0x28, 0xd3, 0x80, 0xa8, 0xd7, 0xc9, 0x1e, 0x3a, 0x59, 0x27, 0x9c, 0x85, 0xf5, 0x41, 0x6e, 0x8e, 0xd3, 0x21, 0x74, 0x7b, 0x05, 0xd5, 0x37, 0xd1, 0x9d, 0x79, 0x73, 0x64, 0xaf, 0xce, 0x0e, 0x54, 0x8b, 0xfb, 0x75, 0x8e, 0x33, 0xcc, 0x6d, 0x75, 0x1b, 0x5c, 0x21, 0x79, 0x72, 0xde, 0x2e, 0xc4, 0xff, 0x00, 0x0c, 0xc1, 0x5d, 0xee, 0x00, 0x85, 0xaf, 0xf0, 0xf0, 0x25, 0x2a, 0xb4, 0x6f, 0xf8, 0x0d, 0x84, 0x9e, 0x14, 0x94, 0x3d, 0xe8, 0x14, 0x5d, 0xbb, 0x30, 0x7b, 0x4b, 0xc4, 0x5c, 0x9e, 0xed, 0xe7, 0x8c, 0x04, 0x0a, 0x08, 0x36, 0xd8, 0x04, 0x06, 0x77, 0x0c, 0x7c, 0x94, 0x59, 0xc0, 0x65, 0xc5, 0x33, 0x67, 0xe6, 0x83, 0x12, 0x8e, 0x8f, 0xc1, 0xdd, 0x89, 0x19, 0x0e, 0x74, 0x78, 0x93, 0xd9, 0xf2, 0x7e, 0x49, 0x61, 0x0b, 0xfb, }; static const unsigned char ecdh_secp521r1_3121_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3121_sharedsecret[] = { 0x01, 0xf5, 0x67, 0xd0, 0x11, 0x52, 0xc9, 0x06, 0x44, 0xbe, 0x34, 0xfc, 0x7f, 0x4d, 0xcd, 0xac, 0xda, 0x02, 0xe1, 0xe1, 0x4d, 0x80, 0xcd, 0xb3, 0x77, 0x61, 0x1a, 0x8c, 0x9a, 0x7a, 0x4d, 0x0f, 0xa5, 0x41, 0x3b, 0x9d, 0x41, 0x54, 0x10, 0xc9, 0xac, 0x6f, 0xf1, 0x46, 0x7c, 0xf3, 0x72, 0x35, 0xe5, 0x88, 0xd1, 0x14, 0xa5, 0x4e, 0x6f, 0x9e, 0x0a, 0x65, 0xb6, 0xd0, 0x2c, 0xdb, 0x82, 0x88, 0x98, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_3121 = { .name = "ecdh_secp521r1_3121", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3121_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3121_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3121_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 638 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3122 for ECDH, tcId is 639 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3122_peerpubkey[] = { 0x01, 0xbf, 0xd8, 0xc3, 0xe3, 0x46, 0xef, 0x88, 0x4b, 0x4b, 0x1c, 0x01, 0xfd, 0x27, 0x3e, 0x98, 0x2f, 0xed, 0x38, 0xb5, 0xc8, 0x04, 0x61, 0x65, 0xcc, 0x1e, 0x0d, 0xe8, 0x76, 0x78, 0x76, 0x90, 0xc1, 0x9c, 0x4e, 0xc2, 0x46, 0x06, 0xbc, 0x8e, 0x1e, 0xd8, 0x3a, 0x4c, 0xe1, 0x0b, 0x7a, 0x42, 0xe6, 0xdb, 0x19, 0xc7, 0xaa, 0x5e, 0x99, 0x71, 0x65, 0x4e, 0x57, 0x84, 0x2d, 0x41, 0xe7, 0x09, 0x85, 0xa3, 0x00, 0xb3, 0x57, 0x35, 0x14, 0x99, 0x60, 0x05, 0x60, 0xba, 0xfa, 0xa2, 0x5e, 0x24, 0x3a, 0xff, 0x7b, 0x33, 0x60, 0x2c, 0xf4, 0x1d, 0x35, 0x18, 0x49, 0x9e, 0x1b, 0x43, 0xba, 0x1e, 0x81, 0x4a, 0x0b, 0x45, 0xec, 0x01, 0xfe, 0x69, 0x47, 0x89, 0xe0, 0x15, 0x7a, 0x3c, 0x28, 0x1d, 0x17, 0xfa, 0x00, 0xe7, 0x01, 0x9f, 0x47, 0xae, 0x7a, 0x10, 0xce, 0x40, 0xed, 0x0c, 0xb7, 0xca, 0x56, 0xb4, 0x1e, 0x26, }; static const unsigned char ecdh_secp521r1_3122_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3122_sharedsecret[] = { 0x01, 0x81, 0x9c, 0xd3, 0xa3, 0xb3, 0x68, 0x83, 0xc4, 0x80, 0xc2, 0x70, 0xdb, 0x13, 0x9a, 0x94, 0xd7, 0xf9, 0x4a, 0xfd, 0x88, 0x79, 0xb3, 0x4e, 0xf6, 0x5a, 0x30, 0x4d, 0x0b, 0x9a, 0x62, 0x01, 0xa1, 0xdb, 0xcf, 0xcb, 0x8e, 0xe5, 0xc4, 0xe6, 0x66, 0x98, 0xd9, 0x8d, 0xd0, 0xe8, 0xbd, 0xd5, 0x3e, 0x56, 0x36, 0x28, 0xb1, 0x5a, 0xfe, 0x05, 0xf4, 0x82, 0x30, 0xfa, 0x1c, 0x52, 0x95, 0x2d, 0x89, 0x89, }; static const wycheproof_ecdh_test ecdh_secp521r1_3122 = { .name = "ecdh_secp521r1_3122", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3122_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3122_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3122_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 639 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3123 for ECDH, tcId is 640 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3123_peerpubkey[] = { 0x00, 0x0c, 0xc8, 0xc8, 0x4d, 0x1d, 0xb7, 0x1f, 0xb9, 0x15, 0x95, 0xf0, 0x07, 0x03, 0xdf, 0x25, 0x7f, 0x2a, 0x03, 0x05, 0x78, 0x47, 0xb4, 0xb9, 0x50, 0x6d, 0x3b, 0x26, 0x15, 0xa8, 0xb7, 0x24, 0x06, 0x2d, 0x93, 0xa6, 0x29, 0x54, 0x21, 0x9d, 0xf9, 0xec, 0x98, 0x62, 0x61, 0xfb, 0x77, 0x08, 0xea, 0xa1, 0x39, 0x54, 0x18, 0x2e, 0x10, 0x5e, 0x8e, 0x93, 0xc1, 0x11, 0xc0, 0xd2, 0xa8, 0xbd, 0xc5, 0x1d, 0x00, 0xe2, 0x0c, 0xc6, 0x48, 0x8c, 0x77, 0x61, 0xf3, 0x1a, 0x3e, 0x76, 0x26, 0x98, 0x55, 0x3e, 0x5f, 0x2b, 0xf4, 0x9b, 0x41, 0xa3, 0xa9, 0x5a, 0xc5, 0xb4, 0x82, 0x3c, 0x29, 0x75, 0x9c, 0x73, 0x81, 0x51, 0xc3, 0x01, 0x9c, 0xe9, 0xd3, 0xd9, 0xee, 0x74, 0x11, 0xa4, 0x10, 0x6d, 0x58, 0x10, 0xc8, 0xb8, 0xaa, 0xfd, 0x37, 0xf5, 0x44, 0xf1, 0xca, 0xf3, 0x7f, 0x6f, 0x5f, 0xad, 0x59, 0x2e, 0x59, 0xbd, }; static const unsigned char ecdh_secp521r1_3123_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3123_sharedsecret[] = { 0x00, 0x80, 0x85, 0x9c, 0x07, 0xca, 0xe1, 0x91, 0x1b, 0x75, 0x39, 0x64, 0xee, 0x17, 0x5c, 0x88, 0x84, 0xbd, 0x19, 0xab, 0xad, 0x66, 0x6e, 0x2e, 0x47, 0x2e, 0xd6, 0x32, 0x9e, 0x71, 0xf9, 0x51, 0x53, 0x42, 0x27, 0xb2, 0x74, 0x28, 0x05, 0xc6, 0xe6, 0x31, 0x0f, 0x6e, 0xa3, 0x23, 0x0b, 0xd4, 0x03, 0xc2, 0x26, 0x0e, 0x97, 0xb0, 0xd7, 0xf1, 0x27, 0x40, 0x27, 0xf7, 0xe6, 0x9f, 0xc7, 0xb8, 0x12, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_3123 = { .name = "ecdh_secp521r1_3123", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3123_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3123_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3123_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 640 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3124 for ECDH, tcId is 641 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3124_peerpubkey[] = { 0x00, 0x54, 0x94, 0x02, 0x37, 0x09, 0xee, 0x6a, 0xe3, 0x9d, 0x0c, 0x5b, 0x67, 0xd9, 0x59, 0xf5, 0xf8, 0xcb, 0xd1, 0xbe, 0xa9, 0x64, 0x42, 0x93, 0x3a, 0x89, 0x29, 0xe3, 0x32, 0xb7, 0x04, 0xf7, 0x14, 0x6e, 0xcc, 0x68, 0x9b, 0x7f, 0xdb, 0x85, 0xc8, 0x3f, 0x3a, 0x60, 0x84, 0x6e, 0x69, 0x2d, 0xde, 0x0c, 0x27, 0x48, 0xcd, 0x7b, 0xec, 0xbb, 0x0d, 0x6b, 0x4c, 0x7c, 0x0c, 0x0f, 0x79, 0x3f, 0x3a, 0xde, 0x01, 0xa7, 0x7d, 0x75, 0xc2, 0x60, 0x06, 0x87, 0x24, 0x18, 0x43, 0xe2, 0xeb, 0x6a, 0xc8, 0x1a, 0xb1, 0x9d, 0x0f, 0x8a, 0x97, 0x47, 0x98, 0x8c, 0x03, 0xf2, 0xc7, 0x70, 0x59, 0x3d, 0xfa, 0x48, 0x04, 0x8f, 0x28, 0x16, 0xe3, 0x85, 0x6c, 0x5f, 0x11, 0xce, 0x3c, 0xdc, 0xca, 0x3a, 0xe0, 0xe1, 0xf1, 0x37, 0x18, 0xc2, 0xc5, 0xdb, 0x2c, 0x1c, 0x85, 0x9f, 0x7c, 0xae, 0xff, 0xff, 0xdf, 0xd6, 0x29, 0xfc, }; static const unsigned char ecdh_secp521r1_3124_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3124_sharedsecret[] = { 0x00, 0x9d, 0x53, 0x2a, 0xf8, 0xd9, 0x9d, 0xfc, 0x0c, 0xe9, 0x3e, 0x2b, 0x63, 0x30, 0x5b, 0x1f, 0x05, 0x5c, 0x42, 0xaf, 0xff, 0x3f, 0xa9, 0x01, 0x11, 0xb0, 0x71, 0x34, 0x1c, 0xca, 0xd4, 0x5b, 0xa6, 0x3a, 0xd9, 0xed, 0x3a, 0x14, 0x1e, 0x95, 0xc0, 0xcd, 0x0d, 0x70, 0xe7, 0x8a, 0x7e, 0xbd, 0x82, 0xc2, 0x2e, 0x68, 0xfa, 0xc4, 0x6a, 0xa5, 0xc9, 0x33, 0x5a, 0x95, 0x56, 0x31, 0xf9, 0xb7, 0xc6, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3124 = { .name = "ecdh_secp521r1_3124", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3124_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3124_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3124_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 641 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3125 for ECDH, tcId is 642 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3125_peerpubkey[] = { 0x00, 0x91, 0x28, 0x09, 0xb7, 0x3f, 0x50, 0x47, 0x5a, 0x3b, 0x97, 0xe9, 0x60, 0x2b, 0x75, 0x7e, 0xb2, 0xe9, 0x4f, 0xd2, 0x45, 0xe4, 0x83, 0x04, 0x0e, 0x16, 0x7b, 0x83, 0x38, 0x40, 0xa6, 0x2d, 0xf2, 0x79, 0x12, 0xa9, 0xc2, 0xe0, 0x31, 0x7d, 0xbf, 0xe5, 0x8d, 0xc4, 0x3b, 0xa2, 0x05, 0x3d, 0xee, 0xde, 0x5e, 0xca, 0x2b, 0x22, 0xbd, 0x06, 0x79, 0x20, 0x01, 0xdb, 0xca, 0xa7, 0xea, 0x6b, 0x70, 0x00, 0x00, 0x43, 0x8e, 0x5b, 0xb8, 0x4f, 0x3e, 0xf7, 0x86, 0x51, 0x52, 0xb2, 0x31, 0x7d, 0x8d, 0xf0, 0xc6, 0x91, 0xc3, 0xd2, 0xbe, 0xd2, 0x46, 0x7d, 0x5e, 0x75, 0x07, 0x26, 0x8a, 0x7b, 0xa9, 0x8c, 0xab, 0x4e, 0x46, 0x08, 0xce, 0xa0, 0xf5, 0xfb, 0xf5, 0x0f, 0xd0, 0xa4, 0x87, 0xd0, 0x05, 0xb3, 0x81, 0x90, 0x5c, 0x95, 0xaa, 0xf6, 0xa1, 0x8c, 0xd1, 0xa2, 0xdb, 0xd6, 0x74, 0x2b, 0x5b, 0x05, 0xba, 0x71, }; static const unsigned char ecdh_secp521r1_3125_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3125_sharedsecret[] = { 0x00, 0x1b, 0x01, 0x8f, 0xec, 0xf2, 0xc0, 0x78, 0x11, 0xa5, 0x4b, 0x43, 0xa0, 0xb2, 0x84, 0xc9, 0x96, 0xee, 0xcc, 0x77, 0x42, 0x21, 0x02, 0x69, 0x37, 0x3c, 0x39, 0xdb, 0xa2, 0x99, 0xd1, 0xab, 0x91, 0xc7, 0x78, 0xb0, 0xdf, 0x40, 0xaa, 0xa5, 0x25, 0x30, 0x76, 0x66, 0x50, 0xff, 0x11, 0x78, 0xde, 0x05, 0xb6, 0x9c, 0x3b, 0xc4, 0x6b, 0x29, 0xd1, 0xaf, 0x19, 0x34, 0x33, 0xfa, 0x12, 0x5e, 0xb9, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3125 = { .name = "ecdh_secp521r1_3125", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3125_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3125_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3125_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 642 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3126 for ECDH, tcId is 643 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3126_peerpubkey[] = { 0x00, 0x43, 0xcf, 0xe2, 0xc3, 0x0d, 0x3f, 0x9f, 0x0f, 0xf9, 0x6e, 0x0e, 0x37, 0xf6, 0x1e, 0xb2, 0xde, 0xa3, 0x81, 0x69, 0x99, 0xc9, 0x1c, 0x5b, 0x77, 0x95, 0x7e, 0xf9, 0x2b, 0x0e, 0xcd, 0xe0, 0x92, 0xc7, 0x50, 0x4b, 0xa5, 0x74, 0x06, 0xea, 0xdd, 0x74, 0x43, 0x81, 0x90, 0x63, 0x37, 0xcd, 0x13, 0xae, 0x45, 0x55, 0xe5, 0x0a, 0x9e, 0xb2, 0x57, 0x16, 0x8c, 0x21, 0x40, 0xe8, 0x28, 0xa4, 0x6a, 0xd3, 0x00, 0x05, 0xc1, 0x29, 0xfa, 0x97, 0x25, 0xa8, 0x2d, 0x3e, 0x6d, 0xa7, 0x21, 0xec, 0x0d, 0x14, 0x12, 0xff, 0x6d, 0x6a, 0x2d, 0x8f, 0x75, 0xbf, 0xc7, 0xb2, 0xb6, 0xaa, 0xdc, 0x5f, 0xad, 0x86, 0xfc, 0x1a, 0x8a, 0x67, 0xcd, 0x7e, 0x6b, 0x7a, 0xab, 0x42, 0xa5, 0x46, 0x17, 0x9c, 0x6e, 0x05, 0x60, 0x55, 0x4d, 0xb5, 0xf6, 0x13, 0x8a, 0x7e, 0xf2, 0xdc, 0x79, 0xd2, 0xbe, 0x38, 0x53, 0x56, 0xc9, 0xea, }; static const unsigned char ecdh_secp521r1_3126_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3126_sharedsecret[] = { 0x00, 0x14, 0x50, 0xd8, 0x40, 0x2f, 0x26, 0x9d, 0xfb, 0x63, 0x64, 0x99, 0xf1, 0x64, 0x54, 0x45, 0x10, 0x6c, 0x3d, 0x95, 0xf9, 0x30, 0x80, 0xc9, 0x94, 0x72, 0x6d, 0xb7, 0xe4, 0x3f, 0xb6, 0x84, 0x88, 0xf7, 0x43, 0x0f, 0x6d, 0x17, 0x15, 0x43, 0xa1, 0x27, 0x03, 0x8c, 0x93, 0x02, 0x64, 0xe6, 0x0d, 0xbf, 0x0f, 0x48, 0xd3, 0x32, 0xaf, 0x21, 0x0e, 0xcd, 0x32, 0x32, 0x0b, 0x1c, 0xb9, 0x0a, 0xcf, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_3126 = { .name = "ecdh_secp521r1_3126", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3126_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3126_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3126_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 643 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3127 for ECDH, tcId is 644 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3127_peerpubkey[] = { 0x01, 0x2e, 0xda, 0x90, 0x20, 0xc6, 0x65, 0xae, 0x69, 0xa5, 0x06, 0xac, 0x6b, 0x32, 0x87, 0x46, 0x5e, 0x0f, 0xc0, 0x13, 0x7b, 0x21, 0x07, 0x5c, 0xfb, 0x6c, 0x69, 0x96, 0x3d, 0x9a, 0xcb, 0x39, 0xa2, 0x6c, 0xa9, 0x40, 0xc3, 0xa3, 0x9e, 0x0d, 0x94, 0xc0, 0x54, 0x67, 0x2f, 0xfc, 0x17, 0x61, 0xe5, 0x6d, 0xed, 0x3c, 0x18, 0x0f, 0x00, 0x68, 0x57, 0xd1, 0x31, 0xdc, 0x34, 0xa5, 0xac, 0xe7, 0xfd, 0x50, 0x01, 0x70, 0x9e, 0x8a, 0x2c, 0xd9, 0x9e, 0x1e, 0x20, 0x16, 0xc2, 0x4f, 0x1c, 0x54, 0x85, 0xe3, 0xc4, 0x79, 0x47, 0xbc, 0xc6, 0xef, 0xbe, 0xbd, 0x22, 0x11, 0xc0, 0xd5, 0x29, 0xa8, 0x3d, 0x09, 0x7a, 0xc6, 0x11, 0xaa, 0x50, 0xd7, 0x87, 0x99, 0x79, 0xf4, 0xbe, 0x2d, 0x9c, 0xec, 0xc1, 0x63, 0x60, 0xfe, 0x4b, 0x94, 0x9e, 0xa9, 0x97, 0x0f, 0x10, 0x75, 0xcb, 0xf9, 0x57, 0xf0, 0x31, 0xcc, 0xfd, 0xb2, }; static const unsigned char ecdh_secp521r1_3127_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3127_sharedsecret[] = { 0x00, 0x78, 0x46, 0xa2, 0x0b, 0x43, 0xa4, 0x98, 0x27, 0x79, 0x04, 0x68, 0x6f, 0x37, 0x66, 0xb9, 0xa3, 0xad, 0x99, 0x4d, 0xc6, 0x13, 0x29, 0xdb, 0x3a, 0xe9, 0xd9, 0x76, 0x18, 0xb8, 0x13, 0x0c, 0x2b, 0xbe, 0xce, 0x0d, 0xa7, 0xe2, 0xc7, 0x9d, 0xbd, 0x0e, 0x1d, 0xc8, 0x30, 0x3a, 0xe5, 0xf9, 0x90, 0x3d, 0x97, 0x15, 0x7d, 0x0a, 0x74, 0xdb, 0x7f, 0x46, 0x5a, 0xbe, 0x99, 0x65, 0xcf, 0xa8, 0x3e, 0xee, }; static const wycheproof_ecdh_test ecdh_secp521r1_3127 = { .name = "ecdh_secp521r1_3127", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3127_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3127_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3127_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 644 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3128 for ECDH, tcId is 645 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3128_peerpubkey[] = { 0x00, 0x08, 0x4b, 0xa1, 0xcb, 0x8f, 0x33, 0xcf, 0xba, 0x89, 0xd1, 0xc1, 0x4e, 0xd2, 0xb5, 0x0d, 0xa7, 0x37, 0xa0, 0x5a, 0xe0, 0xa4, 0xca, 0x35, 0xfe, 0xde, 0x3b, 0x26, 0x32, 0x4d, 0x3b, 0xe7, 0x4f, 0x5e, 0x33, 0x20, 0xa9, 0x0b, 0xf3, 0x88, 0xbc, 0xf8, 0xbb, 0xcc, 0x4c, 0x3c, 0x1c, 0x88, 0xed, 0x52, 0x10, 0x3c, 0xc7, 0xc5, 0xca, 0x2b, 0x59, 0xcc, 0xd3, 0xe7, 0xdf, 0xab, 0x6d, 0x2f, 0x4b, 0xdc, 0x01, 0xa3, 0xf1, 0x75, 0xc3, 0xc8, 0xa8, 0x9d, 0x4f, 0xda, 0x95, 0xd4, 0x7b, 0x2d, 0x4f, 0x30, 0x47, 0xae, 0xbc, 0x75, 0xca, 0x7e, 0xa4, 0x16, 0xed, 0x76, 0xd8, 0xe6, 0x89, 0xd7, 0xeb, 0xe7, 0xe9, 0x77, 0x73, 0x7b, 0xc6, 0xef, 0xf9, 0x73, 0x3e, 0x6a, 0x6c, 0x05, 0x93, 0x48, 0x6e, 0x62, 0x83, 0x4f, 0xf4, 0x61, 0x21, 0xb7, 0x2f, 0xde, 0x5b, 0x33, 0x59, 0xfa, 0x70, 0x7f, 0xba, 0x6d, 0x67, 0xcc, }; static const unsigned char ecdh_secp521r1_3128_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3128_sharedsecret[] = { 0x01, 0x8e, 0x64, 0x5f, 0xbe, 0xdd, 0x9f, 0x12, 0xd4, 0x47, 0x4d, 0xb1, 0x20, 0x6a, 0xa6, 0x70, 0x57, 0xe0, 0x8d, 0xf5, 0x67, 0xc1, 0xee, 0xcb, 0xda, 0x39, 0x5e, 0xdb, 0x20, 0x49, 0xf7, 0x70, 0x90, 0x8e, 0x35, 0x15, 0xcc, 0xe7, 0x79, 0xe3, 0x71, 0x69, 0xeb, 0xc0, 0x26, 0xeb, 0x5c, 0x35, 0x30, 0x40, 0x05, 0x8d, 0xa8, 0x5f, 0xba, 0xbd, 0x67, 0x4c, 0x8d, 0x52, 0xa7, 0x8a, 0x39, 0x72, 0x31, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_3128 = { .name = "ecdh_secp521r1_3128", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3128_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3128_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3128_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 645 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3129 for ECDH, tcId is 646 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3129_peerpubkey[] = { 0x01, 0xea, 0x36, 0xce, 0x4e, 0x51, 0xbb, 0xb3, 0x33, 0xea, 0x94, 0x2a, 0x53, 0x25, 0xe1, 0x41, 0x08, 0x96, 0xe7, 0x36, 0x52, 0xc2, 0x83, 0x3b, 0x46, 0x22, 0x62, 0xda, 0x5d, 0x79, 0x1b, 0x18, 0x35, 0x53, 0x8b, 0x06, 0xcd, 0x9d, 0x7b, 0x97, 0x41, 0xf3, 0x41, 0x4d, 0x52, 0x0d, 0xa8, 0x7f, 0x8b, 0xe0, 0xbe, 0x21, 0x80, 0x43, 0xb0, 0x5c, 0xad, 0x61, 0xb9, 0x3b, 0x0b, 0xc0, 0x48, 0x4e, 0x0b, 0x28, 0x01, 0xec, 0xe2, 0x8d, 0xf4, 0xd9, 0xca, 0x3f, 0xfb, 0x23, 0xd6, 0x9c, 0x36, 0x96, 0x6c, 0xc2, 0x6b, 0x49, 0x2f, 0x70, 0x10, 0xdf, 0xac, 0xa6, 0x7b, 0x4b, 0xde, 0xd7, 0x1c, 0xf7, 0x4c, 0x2b, 0x0a, 0x86, 0xe6, 0x1b, 0xc7, 0x79, 0x03, 0x39, 0x7e, 0xb8, 0xa4, 0x36, 0x23, 0x79, 0xf0, 0x94, 0x92, 0xaa, 0x63, 0xd9, 0xc9, 0xf5, 0xff, 0x30, 0xd1, 0x05, 0xb5, 0x30, 0xc0, 0x1f, 0x46, 0xcd, 0x7c, 0xdc, }; static const unsigned char ecdh_secp521r1_3129_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3129_sharedsecret[] = { 0x01, 0x91, 0x2a, 0xa1, 0x77, 0xea, 0x8f, 0x88, 0x78, 0x44, 0x7b, 0x4a, 0x19, 0xda, 0x17, 0xd4, 0x82, 0x35, 0x7a, 0x27, 0x2d, 0xea, 0x19, 0xb5, 0x42, 0x39, 0x8a, 0x6b, 0xb4, 0x8b, 0x80, 0x59, 0x87, 0x54, 0xae, 0x27, 0xc7, 0x39, 0x58, 0x04, 0x6a, 0xaa, 0x1c, 0x69, 0x95, 0x13, 0x02, 0x72, 0x7d, 0xdd, 0xaa, 0xf9, 0x66, 0xf0, 0x3f, 0xf5, 0xb7, 0x23, 0xac, 0xb7, 0xdb, 0x7f, 0xcc, 0xf3, 0xa6, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp521r1_3129 = { .name = "ecdh_secp521r1_3129", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3129_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3129_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3129_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 646 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3130 for ECDH, tcId is 647 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3130_peerpubkey[] = { 0x00, 0x9c, 0x96, 0x02, 0x4f, 0xac, 0x77, 0xe6, 0x4b, 0x84, 0x6f, 0x14, 0x1c, 0xd1, 0x01, 0x1f, 0x2a, 0xd5, 0x2e, 0x3a, 0xa5, 0x51, 0x10, 0x3b, 0x96, 0xe3, 0x5b, 0x43, 0x9c, 0xf8, 0x9c, 0x03, 0x04, 0x29, 0x3f, 0x1b, 0xfb, 0x52, 0x2f, 0x98, 0x1f, 0xbb, 0x56, 0x92, 0x1d, 0xb8, 0x71, 0x51, 0xe7, 0x97, 0xd0, 0x7f, 0x11, 0x27, 0xa0, 0x1c, 0x3f, 0x3d, 0xe5, 0x6d, 0xd4, 0x99, 0x65, 0x6c, 0x10, 0x3b, 0x01, 0x77, 0xb6, 0x7f, 0xb2, 0x67, 0x8b, 0x72, 0x0d, 0x08, 0xed, 0x05, 0xa5, 0xc0, 0x6b, 0xcf, 0x88, 0x13, 0x42, 0x01, 0xc1, 0x92, 0x99, 0x7f, 0xc6, 0xdc, 0x15, 0xf8, 0x20, 0xb6, 0x0b, 0xcc, 0x0f, 0x77, 0x7d, 0x06, 0x61, 0xbd, 0x8f, 0x81, 0xcf, 0xed, 0x59, 0xde, 0xec, 0x33, 0xcd, 0x69, 0x6e, 0x1c, 0x1e, 0xf7, 0x2c, 0x76, 0x66, 0xcd, 0x5a, 0xed, 0x49, 0xeb, 0x32, 0x57, 0x14, 0x73, 0x9b, 0xed, }; static const unsigned char ecdh_secp521r1_3130_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3130_sharedsecret[] = { 0x00, 0x6a, 0x5b, 0x0c, 0x09, 0xa7, 0xbd, 0xef, 0x31, 0x6d, 0x25, 0xf3, 0x95, 0x79, 0x27, 0x9e, 0x28, 0x6b, 0x78, 0x1c, 0x2e, 0x43, 0x0f, 0x20, 0x1c, 0x54, 0xcf, 0xc9, 0xe1, 0x54, 0xa3, 0x8e, 0xc3, 0x1e, 0xee, 0x9d, 0x09, 0xf6, 0xd5, 0xae, 0xd4, 0x50, 0x56, 0xc5, 0xb7, 0xbb, 0x44, 0x21, 0x3c, 0x63, 0x57, 0xc7, 0x49, 0x2d, 0x1f, 0xd9, 0xb1, 0xc7, 0xdb, 0xa1, 0x16, 0xfa, 0x51, 0xd2, 0x1c, 0xfa, }; static const wycheproof_ecdh_test ecdh_secp521r1_3130 = { .name = "ecdh_secp521r1_3130", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3130_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3130_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3130_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 647 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3131 for ECDH, tcId is 648 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3131_peerpubkey[] = { 0x00, 0x8d, 0x4d, 0x67, 0x7a, 0xaa, 0xef, 0x39, 0x25, 0xa1, 0xd4, 0x1f, 0xce, 0x4d, 0x30, 0x54, 0x3a, 0x1f, 0xa3, 0x3a, 0x2b, 0x30, 0x51, 0xb3, 0x67, 0xcf, 0xdf, 0x1b, 0x8d, 0xa7, 0xcd, 0x1a, 0xb6, 0x7c, 0xe9, 0xbb, 0x25, 0x5e, 0x60, 0x47, 0x56, 0x84, 0x44, 0x3c, 0xf1, 0x9e, 0xa2, 0xe1, 0xf0, 0x1e, 0x58, 0xfd, 0x79, 0xf4, 0x77, 0x25, 0x66, 0x1b, 0xe2, 0x08, 0x76, 0x7c, 0xb2, 0xa1, 0x75, 0x30, 0x01, 0x0b, 0xe1, 0x75, 0xe2, 0x4d, 0x3b, 0xbf, 0x27, 0xdc, 0xad, 0x25, 0x96, 0xb8, 0x09, 0x0c, 0x7f, 0x2e, 0x00, 0x59, 0x01, 0x03, 0x86, 0x57, 0x28, 0x4a, 0x80, 0xff, 0x77, 0xd3, 0x89, 0x4a, 0x29, 0xee, 0x2d, 0x7d, 0xaa, 0x58, 0x80, 0xb3, 0xba, 0x05, 0x22, 0x61, 0xe4, 0x79, 0x6f, 0x13, 0x2d, 0xb9, 0xe8, 0xa9, 0x78, 0x1f, 0xac, 0xb3, 0x2b, 0xd8, 0xa0, 0x9b, 0xab, 0xd9, 0xe0, 0xcb, 0xa9, 0x18, }; static const unsigned char ecdh_secp521r1_3131_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3131_sharedsecret[] = { 0x00, 0x65, 0x2f, 0xba, 0xa4, 0x11, 0xad, 0x31, 0x6d, 0xea, 0x40, 0xa3, 0x7d, 0x37, 0x98, 0xd0, 0xc0, 0x3c, 0xa7, 0xca, 0x59, 0x0d, 0x8e, 0xea, 0xee, 0x45, 0x4c, 0x7d, 0x24, 0xff, 0x1c, 0x4e, 0xc7, 0xdf, 0xfd, 0x5e, 0xf3, 0xe9, 0x07, 0x62, 0xd5, 0x53, 0x9c, 0x5a, 0x57, 0xe7, 0x45, 0xb9, 0xc0, 0xf8, 0x8e, 0x18, 0xff, 0xf6, 0xf7, 0x37, 0x72, 0x9e, 0x67, 0x60, 0x6d, 0xdf, 0xe3, 0xa7, 0x75, 0x19, }; static const wycheproof_ecdh_test ecdh_secp521r1_3131 = { .name = "ecdh_secp521r1_3131", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3131_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3131_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3131_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 648 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3132 for ECDH, tcId is 649 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3132_peerpubkey[] = { 0x00, 0x9b, 0x76, 0xbf, 0xa3, 0x96, 0xb3, 0x70, 0x63, 0x81, 0x55, 0x2a, 0xd0, 0x8f, 0xb3, 0xb9, 0xf9, 0x2b, 0x49, 0x2c, 0x43, 0xd6, 0x10, 0x2b, 0x7c, 0x02, 0xcc, 0xa4, 0x01, 0x77, 0x18, 0xe0, 0x64, 0x34, 0x78, 0xc0, 0xd7, 0x37, 0x65, 0xc2, 0x79, 0x58, 0x13, 0x8c, 0x7f, 0x6d, 0x23, 0xb4, 0xe8, 0x3b, 0xaa, 0xf2, 0x7e, 0xaf, 0x21, 0x7e, 0xd5, 0x65, 0xe6, 0x60, 0x2b, 0x4d, 0x08, 0x02, 0x00, 0xb1, 0x01, 0x7b, 0xa7, 0xae, 0xfc, 0x45, 0x67, 0x7b, 0x8c, 0x4d, 0x4c, 0xa4, 0x68, 0xe8, 0xa9, 0xf5, 0xa2, 0xfc, 0x41, 0x1a, 0x4a, 0xf4, 0xff, 0x45, 0x93, 0xa9, 0xb7, 0x81, 0xf1, 0x35, 0x7a, 0xae, 0x46, 0x98, 0x86, 0x42, 0xa1, 0x25, 0x4d, 0x6c, 0xf5, 0x88, 0x70, 0x8e, 0xfe, 0x60, 0xb2, 0xdf, 0xab, 0x15, 0xd3, 0x71, 0xba, 0x4f, 0x4d, 0x9e, 0x09, 0xe6, 0x1f, 0x06, 0xd4, 0xd2, 0x43, 0xe5, 0xec, 0x57, }; static const unsigned char ecdh_secp521r1_3132_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3132_sharedsecret[] = { 0x00, 0xb1, 0xae, 0x05, 0xc2, 0xa9, 0x1f, 0x7e, 0x1e, 0x9d, 0x62, 0x6b, 0x1a, 0x46, 0xbe, 0xd2, 0x00, 0x9d, 0xd6, 0x66, 0x2e, 0x71, 0x24, 0x16, 0xe1, 0x9c, 0x1b, 0xe9, 0xe5, 0xe5, 0x12, 0xec, 0x73, 0x41, 0x27, 0xad, 0xaf, 0xe6, 0x12, 0x9a, 0x83, 0xd7, 0x4b, 0xa7, 0xa7, 0x97, 0xf4, 0x1a, 0xfc, 0x4b, 0x11, 0x45, 0xa1, 0x6f, 0x6e, 0x38, 0x91, 0x69, 0xc8, 0xb6, 0x59, 0x2b, 0xf6, 0x28, 0xf7, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_3132 = { .name = "ecdh_secp521r1_3132", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3132_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3132_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3132_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 649 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3133 for ECDH, tcId is 650 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3133_peerpubkey[] = { 0x01, 0x00, 0x89, 0x19, 0x0e, 0x9b, 0x63, 0xf5, 0xa2, 0x9e, 0x41, 0xb5, 0xa1, 0x83, 0x7d, 0x9b, 0xf4, 0x1c, 0x0b, 0x2c, 0xa1, 0x07, 0xd6, 0xd0, 0x88, 0xf4, 0xc1, 0xd4, 0x68, 0x77, 0x31, 0x50, 0xd7, 0xd1, 0x45, 0xcc, 0xe7, 0x0a, 0x24, 0x08, 0x27, 0x26, 0x83, 0x71, 0x14, 0x4e, 0x4a, 0xcd, 0xda, 0x79, 0xd0, 0x9a, 0x51, 0xb3, 0x1c, 0xa2, 0x0b, 0xac, 0x11, 0x97, 0xe6, 0x19, 0xd1, 0xa8, 0x4f, 0x4d, 0x01, 0x22, 0xc6, 0x38, 0xc0, 0x69, 0x12, 0x58, 0x65, 0x80, 0xc7, 0xa7, 0xde, 0xe4, 0x29, 0xb1, 0xba, 0x00, 0x0f, 0x62, 0x85, 0xb7, 0xfd, 0xa4, 0x41, 0x38, 0x8c, 0x32, 0x3c, 0x08, 0x95, 0xff, 0x90, 0x44, 0x3f, 0x06, 0x15, 0x01, 0x1c, 0xaa, 0x33, 0x26, 0x22, 0xe6, 0x7e, 0xde, 0x86, 0x7a, 0x8c, 0x44, 0x53, 0x35, 0x44, 0x4e, 0xa1, 0x12, 0xe8, 0x05, 0x32, 0xd5, 0xf6, 0xdf, 0x14, 0x08, 0xe7, 0x2b, }; static const unsigned char ecdh_secp521r1_3133_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3133_sharedsecret[] = { 0x00, 0x03, 0x7d, 0x3e, 0x43, 0x59, 0xc3, 0x26, 0xf7, 0x4a, 0x8c, 0xdc, 0xc4, 0xbb, 0x82, 0x09, 0x0e, 0x93, 0xbd, 0x48, 0x75, 0x7b, 0x6c, 0xaf, 0x74, 0x9f, 0xb3, 0x9a, 0x83, 0xf9, 0x92, 0xa7, 0xfa, 0x96, 0x76, 0xad, 0x46, 0x6c, 0x8d, 0x71, 0x93, 0x90, 0x22, 0x14, 0xda, 0xbc, 0xfc, 0x10, 0x4b, 0xc8, 0x66, 0x4e, 0xb9, 0x34, 0xa2, 0xdf, 0x64, 0x8b, 0x2e, 0x1f, 0x40, 0x1d, 0x74, 0x5e, 0x16, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3133 = { .name = "ecdh_secp521r1_3133", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3133_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3133_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3133_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 650 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3134 for ECDH, tcId is 651 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3134_peerpubkey[] = { 0x00, 0x70, 0x55, 0x05, 0x37, 0xe3, 0x85, 0xe4, 0x60, 0x14, 0x90, 0xac, 0x5a, 0x78, 0x34, 0x8e, 0xf2, 0x66, 0x78, 0xa4, 0xab, 0x3a, 0x74, 0x69, 0xf2, 0x99, 0xdc, 0x49, 0x3b, 0xd2, 0x97, 0x64, 0x16, 0xf6, 0x49, 0xee, 0x3e, 0x3c, 0xdd, 0x77, 0x19, 0x1d, 0x8f, 0x8f, 0x9d, 0x60, 0x0e, 0x8c, 0xb9, 0xfd, 0xe3, 0xaf, 0xe6, 0x35, 0xe2, 0x24, 0x63, 0x5b, 0x70, 0xfa, 0x79, 0xeb, 0x10, 0x53, 0x74, 0x4f, 0x00, 0x0a, 0x54, 0x69, 0x59, 0xae, 0x4a, 0xbc, 0xda, 0x82, 0x74, 0x29, 0xa4, 0x7a, 0x8c, 0xbc, 0x6a, 0xfe, 0x42, 0xfa, 0x0f, 0x83, 0x91, 0x29, 0x3d, 0xa7, 0x78, 0xbe, 0x29, 0x6c, 0x72, 0x2e, 0x02, 0xc7, 0xff, 0x55, 0xe2, 0x0c, 0x11, 0x95, 0x31, 0xd2, 0x11, 0x17, 0x3f, 0x02, 0xeb, 0x10, 0x8f, 0xe1, 0xb8, 0xbb, 0x10, 0xd4, 0x65, 0xc7, 0x15, 0x8d, 0xd3, 0xcb, 0x2d, 0x9f, 0x32, 0x0d, 0x17, 0x11, }; static const unsigned char ecdh_secp521r1_3134_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3134_sharedsecret[] = { 0x01, 0x8e, 0x22, 0xa6, 0x3d, 0xfe, 0xb1, 0x4f, 0x28, 0xd4, 0xf3, 0x38, 0xb7, 0x84, 0x55, 0x87, 0x78, 0x51, 0xe9, 0x5b, 0x34, 0x97, 0x96, 0x24, 0x5e, 0xff, 0xa8, 0x30, 0xe2, 0x9e, 0xa1, 0x97, 0x84, 0x99, 0xf0, 0x7a, 0xd9, 0x70, 0x4b, 0x35, 0x27, 0x46, 0xda, 0xc3, 0x0b, 0xfb, 0xb8, 0x27, 0xe1, 0xf0, 0x0b, 0x97, 0x9f, 0x64, 0x2b, 0xb8, 0x86, 0xf1, 0x56, 0xb5, 0x38, 0xac, 0x6b, 0xe9, 0x17, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_3134 = { .name = "ecdh_secp521r1_3134", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3134_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3134_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3134_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 651 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3135 for ECDH, tcId is 652 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3135_peerpubkey[] = { 0x00, 0x01, 0xb6, 0x69, 0x58, 0x93, 0x1e, 0xf3, 0x0c, 0x54, 0xf8, 0x31, 0x95, 0xcc, 0x40, 0x53, 0x0c, 0x0e, 0x44, 0xba, 0xa2, 0x23, 0xd2, 0x8d, 0x8b, 0xfa, 0xab, 0xf1, 0x0d, 0x16, 0x30, 0x2f, 0x3a, 0x19, 0x60, 0x1f, 0xb7, 0x4e, 0xfc, 0xbe, 0xfc, 0x1b, 0x71, 0xd1, 0xe8, 0x1a, 0xe4, 0xf6, 0x0b, 0x3f, 0x8d, 0x7c, 0x21, 0xde, 0x1d, 0xfa, 0xfd, 0x5c, 0xf1, 0x9c, 0x94, 0xb3, 0x96, 0x41, 0x0c, 0x39, 0x00, 0x8f, 0x13, 0xc4, 0x2f, 0xf4, 0x6d, 0x1a, 0x18, 0xf3, 0xd9, 0x75, 0xfd, 0xbc, 0x0b, 0xbb, 0x43, 0xc3, 0x1d, 0xa9, 0x42, 0x3f, 0xa9, 0x35, 0xf4, 0xc2, 0x11, 0x43, 0x55, 0x18, 0xa0, 0x14, 0x37, 0xbf, 0xae, 0xb6, 0xaa, 0xf0, 0x31, 0xf9, 0x2b, 0x0c, 0x37, 0xd7, 0x62, 0x90, 0xff, 0x68, 0x23, 0x78, 0xc2, 0x65, 0x1c, 0xd9, 0x75, 0xea, 0xc1, 0x92, 0xcd, 0x65, 0x82, 0xdb, 0xbe, 0xc0, 0x99, 0x74, }; static const unsigned char ecdh_secp521r1_3135_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3135_sharedsecret[] = { 0x00, 0x32, 0x28, 0x4e, 0xd3, 0xe1, 0x5d, 0x5e, 0x9d, 0xed, 0xa5, 0x3c, 0xea, 0xf5, 0xaf, 0xf2, 0x1c, 0x23, 0x0e, 0x60, 0x38, 0xe6, 0xd7, 0xe5, 0xca, 0xae, 0x2a, 0x71, 0x5a, 0x52, 0x88, 0xbc, 0xb8, 0x46, 0x9c, 0xe2, 0xbe, 0xfa, 0xaf, 0x3b, 0x41, 0x84, 0xea, 0xb3, 0x48, 0x69, 0x14, 0x40, 0x95, 0x66, 0x17, 0x88, 0xd3, 0xfd, 0xf4, 0x1a, 0xc6, 0x1e, 0xf1, 0x25, 0x68, 0x90, 0xdc, 0x7a, 0x0b, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_3135 = { .name = "ecdh_secp521r1_3135", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3135_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3135_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3135_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 652 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3136 for ECDH, tcId is 653 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3136_peerpubkey[] = { 0x00, 0x50, 0x57, 0x11, 0x67, 0xdc, 0x9f, 0x3b, 0x1f, 0x4a, 0xe3, 0x01, 0xdd, 0x1f, 0xac, 0x47, 0x00, 0x2d, 0x90, 0x13, 0x98, 0x82, 0x3f, 0x2e, 0x3d, 0xea, 0x43, 0x38, 0x28, 0x8d, 0xe8, 0xa8, 0xfb, 0x43, 0x2a, 0x68, 0x3b, 0xd5, 0x2b, 0xfa, 0x38, 0x07, 0x00, 0xb2, 0x7a, 0x90, 0x4a, 0xd6, 0x0a, 0x5a, 0x4d, 0x36, 0x39, 0x51, 0xff, 0xe7, 0x45, 0x40, 0xd5, 0x4d, 0xe8, 0xe7, 0xd4, 0x8e, 0xa1, 0x6c, 0x00, 0x85, 0xf6, 0xa7, 0xa7, 0x43, 0x96, 0x9a, 0xe2, 0x7e, 0x9a, 0x96, 0xbc, 0x60, 0x37, 0x03, 0x9a, 0x87, 0xd9, 0x7c, 0x69, 0x6a, 0xed, 0x99, 0xa3, 0x9f, 0x6e, 0x2d, 0x56, 0xac, 0xe5, 0x58, 0x07, 0x4d, 0x49, 0x54, 0x6e, 0x41, 0x7d, 0x79, 0x1a, 0xa5, 0xff, 0x04, 0x9c, 0x9d, 0x30, 0xc3, 0x05, 0x02, 0xf4, 0x00, 0x20, 0xae, 0x41, 0xe7, 0xa5, 0x12, 0x67, 0x1c, 0xdc, 0xc4, 0x9b, 0x60, 0x79, 0xb5, }; static const unsigned char ecdh_secp521r1_3136_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3136_sharedsecret[] = { 0x01, 0xdf, 0xb4, 0x6a, 0xfe, 0x0b, 0xf0, 0x64, 0xdf, 0xf0, 0xb4, 0x17, 0x7f, 0x7f, 0xd2, 0x7f, 0xa2, 0xee, 0x08, 0x32, 0xaf, 0x7c, 0xdc, 0x92, 0x1f, 0x66, 0xc0, 0xe5, 0xbe, 0x30, 0xc8, 0x06, 0x30, 0xc4, 0x1e, 0x09, 0x20, 0x2e, 0xa2, 0xf3, 0x70, 0xf5, 0xbb, 0xd0, 0x2e, 0xd2, 0x98, 0xb0, 0x88, 0x20, 0xce, 0x86, 0xe2, 0xcb, 0x72, 0x4a, 0x19, 0x62, 0xc6, 0xe7, 0xb1, 0x06, 0x2f, 0x50, 0x32, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp521r1_3136 = { .name = "ecdh_secp521r1_3136", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3136_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3136_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3136_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 653 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3137 for ECDH, tcId is 654 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3137_peerpubkey[] = { 0x01, 0x7e, 0x4f, 0x40, 0x2b, 0x1c, 0xe2, 0x09, 0xf6, 0x73, 0xdd, 0xf5, 0x0a, 0xe8, 0x7b, 0x9e, 0xf6, 0x1d, 0x81, 0x4d, 0x51, 0xe1, 0x4f, 0x43, 0xda, 0x3c, 0x23, 0xf4, 0x0f, 0xac, 0x42, 0x2f, 0x10, 0x58, 0xfd, 0x89, 0x30, 0xdf, 0xaf, 0x11, 0x71, 0x0c, 0x41, 0xa7, 0xf6, 0xb7, 0x92, 0x55, 0xe1, 0xc2, 0xcf, 0xba, 0xd6, 0x9d, 0x25, 0x7a, 0x0e, 0xcc, 0x10, 0x2f, 0x5e, 0x38, 0xe1, 0x40, 0x7f, 0x9d, 0x00, 0xe1, 0x0a, 0x67, 0xd1, 0x75, 0xb3, 0x99, 0xbf, 0x19, 0x41, 0xbd, 0x0f, 0xc1, 0x31, 0x27, 0xf7, 0xeb, 0x11, 0x2e, 0x1a, 0x86, 0x81, 0xac, 0xc2, 0xcf, 0xae, 0x0d, 0xc2, 0x95, 0x9e, 0x82, 0x37, 0x48, 0x81, 0x46, 0x28, 0x1c, 0xa3, 0xdf, 0x2b, 0x1e, 0x60, 0x56, 0xee, 0x93, 0x2f, 0xeb, 0x1a, 0xc6, 0xe6, 0xe9, 0xdf, 0x3f, 0x7a, 0x6e, 0xe6, 0x02, 0x15, 0x78, 0xa0, 0xff, 0xdb, 0x50, 0xec, 0xa2, }; static const unsigned char ecdh_secp521r1_3137_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3137_sharedsecret[] = { 0x00, 0x17, 0xb9, 0x9f, 0xab, 0x0e, 0xe0, 0xd7, 0xf9, 0x3f, 0x73, 0x09, 0xff, 0xdc, 0x91, 0x49, 0xba, 0x3c, 0xb6, 0x83, 0x04, 0x2f, 0xb3, 0xd0, 0x2b, 0xd5, 0x31, 0x9e, 0xb4, 0x26, 0x78, 0xac, 0x7a, 0xc7, 0xde, 0x21, 0x4e, 0x5c, 0x0f, 0x84, 0x73, 0x62, 0x7e, 0xf1, 0x51, 0x12, 0xc0, 0xd1, 0xa3, 0x19, 0x42, 0x84, 0xb6, 0xfc, 0xcc, 0xf5, 0x61, 0xd0, 0xd2, 0x52, 0xad, 0x25, 0xfc, 0xc9, 0x39, 0x53, }; static const wycheproof_ecdh_test ecdh_secp521r1_3137 = { .name = "ecdh_secp521r1_3137", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3137_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3137_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3137_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 654 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3138 for ECDH, tcId is 655 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3138_peerpubkey[] = { 0x00, 0x04, 0xcd, 0x97, 0xe1, 0x2d, 0x06, 0x2b, 0x74, 0x90, 0xbe, 0x45, 0xd8, 0x5e, 0x85, 0xbd, 0x40, 0x1c, 0x17, 0x91, 0xfb, 0xb4, 0x4e, 0x74, 0xa4, 0x54, 0x38, 0xa8, 0x31, 0x7c, 0x7e, 0xc9, 0xf0, 0x25, 0xb3, 0x4c, 0x59, 0x5b, 0x47, 0x69, 0xc7, 0xb3, 0x7f, 0x44, 0x29, 0x6b, 0x4b, 0x8f, 0x73, 0xd5, 0x64, 0x1d, 0xa2, 0x81, 0xfe, 0x35, 0x50, 0x8a, 0x23, 0xad, 0x50, 0x3d, 0xa9, 0x1e, 0xe7, 0xdb, 0x01, 0x7c, 0x4e, 0xd0, 0xd8, 0x4b, 0x40, 0x1d, 0xab, 0x74, 0x88, 0xda, 0x83, 0x9b, 0x20, 0xb5, 0x78, 0x09, 0xfe, 0x71, 0x27, 0xfa, 0x66, 0xef, 0x94, 0xdc, 0x02, 0x9e, 0x44, 0xb2, 0x50, 0x85, 0x7b, 0x30, 0x9a, 0x11, 0xc9, 0x1f, 0x73, 0x6a, 0x76, 0xf3, 0xc8, 0x9d, 0x9a, 0xde, 0xd9, 0x7f, 0x5b, 0x0b, 0xee, 0xc9, 0x3a, 0x7b, 0x6d, 0x78, 0x82, 0xe4, 0x28, 0xbe, 0xfc, 0xc2, 0x0d, 0x90, 0xdf, 0x15, }; static const unsigned char ecdh_secp521r1_3138_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3138_sharedsecret[] = { 0x01, 0xb6, 0x6a, 0x06, 0x5e, 0x62, 0xca, 0x0e, 0xa4, 0x9c, 0x25, 0xfe, 0x2a, 0x37, 0x79, 0x9b, 0x46, 0x86, 0x7e, 0x27, 0x4f, 0x8b, 0x85, 0x3a, 0x53, 0x4d, 0xd6, 0xcd, 0x1a, 0xd8, 0x1c, 0xc1, 0x3d, 0x27, 0xf2, 0x79, 0xd1, 0xee, 0x5b, 0xc2, 0xd9, 0x6d, 0x0b, 0x77, 0x01, 0xab, 0xb2, 0xd2, 0x13, 0xfa, 0x37, 0x83, 0x6b, 0xbc, 0xd2, 0xd1, 0xd8, 0x93, 0x7b, 0x6d, 0x20, 0xdc, 0xb3, 0x5b, 0x53, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_3138 = { .name = "ecdh_secp521r1_3138", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3138_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3138_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3138_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 655 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3139 for ECDH, tcId is 656 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3139_peerpubkey[] = { 0x01, 0xb2, 0x3c, 0x60, 0xee, 0xfd, 0xbd, 0xe0, 0x7c, 0xe9, 0x75, 0x1d, 0x9f, 0x99, 0x39, 0xbf, 0x75, 0x45, 0x8e, 0x6f, 0x2a, 0xf0, 0xaf, 0xa3, 0xd9, 0x0f, 0xa1, 0x76, 0x2d, 0x01, 0xa6, 0xd6, 0xe3, 0xfa, 0x40, 0x82, 0xc3, 0x7a, 0xd6, 0xbf, 0x03, 0xba, 0x8f, 0xf1, 0x79, 0x19, 0xe8, 0xb9, 0x62, 0x5b, 0x5a, 0x90, 0x9c, 0x92, 0x5d, 0x9f, 0xeb, 0x7c, 0x3e, 0xe1, 0x9a, 0x04, 0x25, 0x38, 0x5c, 0xea, 0x00, 0x0d, 0xf6, 0x84, 0x06, 0xc6, 0x74, 0xbe, 0x5e, 0x1f, 0x42, 0xd1, 0x4b, 0xf5, 0x0c, 0x19, 0x46, 0x0a, 0xee, 0xbd, 0xde, 0x37, 0x9a, 0xd3, 0x13, 0x0a, 0x33, 0x2e, 0x8f, 0xbe, 0xea, 0x15, 0x69, 0xd3, 0x14, 0xd5, 0x07, 0xb3, 0x7f, 0x1d, 0xcd, 0x28, 0x3b, 0x1c, 0x17, 0x15, 0x85, 0x2b, 0xd3, 0x9b, 0x81, 0xc4, 0xed, 0xca, 0xe0, 0xf2, 0xe1, 0xce, 0x53, 0x58, 0xc6, 0x59, 0x8b, 0x8c, 0x97, 0x0a, }; static const unsigned char ecdh_secp521r1_3139_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3139_sharedsecret[] = { 0x00, 0x59, 0xa3, 0x20, 0x50, 0x1b, 0xde, 0x6b, 0x9b, 0x26, 0x82, 0x36, 0xf9, 0x66, 0xac, 0x88, 0x1d, 0xed, 0xe9, 0x8c, 0xe6, 0x35, 0x6a, 0x7a, 0x90, 0x0a, 0x45, 0x2c, 0x59, 0xcb, 0xf8, 0xd8, 0xd2, 0x06, 0x30, 0x32, 0x16, 0x25, 0xc6, 0x89, 0xc7, 0x9d, 0xff, 0xff, 0xae, 0x7f, 0x87, 0x0a, 0x7f, 0xbf, 0x29, 0x86, 0x95, 0x89, 0x6c, 0xac, 0xdd, 0x2d, 0x0e, 0x13, 0xb7, 0x02, 0xf2, 0x2e, 0x7e, 0x43, }; static const wycheproof_ecdh_test ecdh_secp521r1_3139 = { .name = "ecdh_secp521r1_3139", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3139_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3139_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3139_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 656 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3140 for ECDH, tcId is 657 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3140_peerpubkey[] = { 0x00, 0x68, 0x36, 0x15, 0x44, 0x77, 0xdb, 0x9d, 0xb0, 0x3b, 0xb8, 0xa4, 0x04, 0xc5, 0x94, 0x2d, 0x32, 0xe1, 0xcd, 0xea, 0x20, 0x35, 0x4e, 0xda, 0x96, 0x93, 0xc3, 0x33, 0x39, 0x14, 0xb5, 0x19, 0x0c, 0x9d, 0x63, 0xa0, 0x43, 0x3a, 0x43, 0x06, 0x2b, 0x88, 0x60, 0xd5, 0xe5, 0x9c, 0x0f, 0x27, 0xac, 0x63, 0x30, 0x38, 0x49, 0x1d, 0x46, 0xb9, 0x1f, 0xc1, 0x1e, 0xce, 0xf8, 0x32, 0x6e, 0x75, 0xb5, 0x0e, 0x01, 0x41, 0x78, 0xe1, 0xbb, 0xf0, 0x84, 0x73, 0xee, 0x5b, 0xa8, 0x56, 0x85, 0x64, 0x16, 0xe6, 0x32, 0x6c, 0xaf, 0xe6, 0xf7, 0x42, 0x27, 0x76, 0x8e, 0x83, 0x5c, 0x25, 0xc5, 0x20, 0xba, 0xe0, 0x5d, 0x1d, 0x45, 0x1f, 0x63, 0x91, 0x58, 0xdc, 0xca, 0xa2, 0x93, 0x64, 0x2a, 0x57, 0x2a, 0xc7, 0x61, 0x2d, 0x60, 0xe9, 0x6d, 0xf4, 0xc6, 0x73, 0xab, 0x8f, 0x2a, 0x4e, 0xd8, 0x2e, 0x5e, 0x2a, 0xf3, 0x0b, }; static const unsigned char ecdh_secp521r1_3140_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3140_sharedsecret[] = { 0x00, 0x20, 0x4c, 0xcc, 0x53, 0x56, 0x21, 0x9b, 0xee, 0xf3, 0xb6, 0xd9, 0x0e, 0xa2, 0xef, 0x37, 0x85, 0xf7, 0x6f, 0x14, 0xaa, 0x3b, 0x84, 0xca, 0x04, 0xf6, 0xb2, 0xa5, 0xe9, 0x07, 0x00, 0x59, 0x64, 0x31, 0x54, 0x6e, 0x10, 0x4e, 0x77, 0x88, 0x30, 0x71, 0x47, 0x31, 0x2c, 0xa8, 0x90, 0x98, 0x4f, 0x76, 0xb5, 0x3c, 0x48, 0x9d, 0xe0, 0x4c, 0xc7, 0x28, 0xef, 0x00, 0x3d, 0x24, 0x6f, 0xdd, 0xb3, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_3140 = { .name = "ecdh_secp521r1_3140", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3140_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3140_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3140_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 657 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3141 for ECDH, tcId is 658 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3141_peerpubkey[] = { 0x01, 0x9c, 0x26, 0xd8, 0x15, 0xbb, 0xe9, 0x23, 0x58, 0xe1, 0xec, 0xd0, 0x21, 0x45, 0xa5, 0xf4, 0x5e, 0x1f, 0x8f, 0x46, 0xcb, 0x90, 0xba, 0xe1, 0x31, 0xee, 0x58, 0x9e, 0x51, 0xbb, 0x09, 0x3d, 0x84, 0x10, 0x20, 0x65, 0x85, 0xc0, 0x3e, 0xd7, 0xc5, 0xb3, 0x97, 0x54, 0x45, 0xba, 0x07, 0xfb, 0x7d, 0xd6, 0x68, 0xa8, 0xe5, 0x8c, 0x27, 0xe0, 0x1d, 0xd0, 0x0b, 0x08, 0xfe, 0x40, 0x9b, 0x44, 0x40, 0xe7, 0x00, 0x9f, 0xe8, 0x59, 0xe9, 0xd2, 0x2b, 0xb1, 0x65, 0x2e, 0x38, 0x4d, 0x5a, 0xe5, 0x79, 0xe4, 0x4a, 0x0f, 0x8c, 0x5c, 0x82, 0xe5, 0x9b, 0x46, 0x39, 0xd4, 0x2a, 0x9b, 0x27, 0xcb, 0x14, 0x05, 0x99, 0xc1, 0x23, 0x6e, 0x93, 0x23, 0x38, 0xdc, 0xe0, 0x3d, 0xe4, 0x6a, 0x60, 0xfb, 0xec, 0xe6, 0x1f, 0xd3, 0x4b, 0x8e, 0xce, 0x7d, 0xa9, 0x37, 0xb5, 0xcc, 0x1e, 0x3e, 0x7c, 0xeb, 0xcc, 0xe3, 0x39, 0xee, }; static const unsigned char ecdh_secp521r1_3141_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3141_sharedsecret[] = { 0x01, 0x7a, 0x82, 0x40, 0x3f, 0x78, 0xf8, 0xa5, 0x17, 0x29, 0xe8, 0xbc, 0x63, 0xc5, 0xde, 0x9b, 0x67, 0xc5, 0x72, 0xd4, 0x1f, 0x2a, 0xac, 0x28, 0xbd, 0xd9, 0x57, 0x92, 0xe6, 0x58, 0x33, 0x8f, 0x19, 0xbd, 0xdc, 0x45, 0xa6, 0xa1, 0xcb, 0x1b, 0xb2, 0x75, 0xf8, 0xa9, 0x10, 0xfa, 0x64, 0xda, 0xae, 0x25, 0x02, 0x60, 0x0a, 0xa9, 0x7b, 0x71, 0xf4, 0x9b, 0x28, 0x98, 0x1b, 0x71, 0x8f, 0x6a, 0xe0, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_3141 = { .name = "ecdh_secp521r1_3141", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3141_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3141_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3141_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 658 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3142 for ECDH, tcId is 659 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3142_peerpubkey[] = { 0x01, 0xdd, 0x2a, 0xe9, 0x57, 0x64, 0x07, 0x84, 0x96, 0x80, 0x45, 0x29, 0xa5, 0xee, 0xd0, 0xda, 0x61, 0x82, 0xbe, 0x0f, 0x08, 0x5c, 0x95, 0x78, 0x9a, 0x26, 0x34, 0xa9, 0x56, 0x9f, 0x00, 0x80, 0x86, 0x1b, 0x18, 0x3c, 0xef, 0xd1, 0xa1, 0x48, 0x9d, 0x0f, 0x90, 0x46, 0x53, 0x53, 0xb9, 0x72, 0xc8, 0x45, 0x0c, 0x2a, 0xeb, 0x5f, 0xd8, 0x0b, 0xe6, 0x4f, 0x15, 0xa7, 0x19, 0xd0, 0x87, 0x3e, 0x0a, 0x16, 0x00, 0xe1, 0x09, 0x8d, 0xd4, 0xb3, 0x0f, 0x78, 0xe3, 0xfe, 0x6c, 0x1a, 0xaf, 0x00, 0x48, 0xb1, 0x5b, 0x1d, 0x0f, 0x98, 0xff, 0x07, 0x44, 0xc1, 0xc8, 0x88, 0x64, 0x1d, 0x17, 0xac, 0x21, 0x63, 0x29, 0x37, 0x6b, 0xe7, 0x11, 0x3e, 0x93, 0x21, 0xca, 0x7f, 0x9f, 0x7e, 0x19, 0x35, 0xdf, 0xf6, 0x61, 0xbc, 0xe9, 0xff, 0xbe, 0x86, 0xae, 0xdb, 0xc9, 0x33, 0xf2, 0x43, 0x8f, 0xc4, 0x82, 0xc4, 0x62, 0xbf, }; static const unsigned char ecdh_secp521r1_3142_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3142_sharedsecret[] = { 0x00, 0x88, 0x79, 0x7d, 0x31, 0xf9, 0xb6, 0x6f, 0xae, 0xe9, 0x7e, 0xeb, 0x9a, 0x69, 0x5c, 0xf6, 0x68, 0xc7, 0x96, 0x0f, 0x49, 0xbd, 0xce, 0x05, 0x1b, 0x2f, 0xc2, 0x73, 0xd5, 0xea, 0x6d, 0x86, 0xc7, 0x86, 0x88, 0xee, 0x3e, 0xf4, 0xbe, 0x14, 0xea, 0xb0, 0x65, 0x9c, 0x57, 0xcc, 0xec, 0xb2, 0xbd, 0xb1, 0x90, 0xe5, 0x0b, 0xe0, 0x4f, 0x65, 0x07, 0x99, 0x50, 0xc5, 0xeb, 0x90, 0xd6, 0x76, 0xee, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_3142 = { .name = "ecdh_secp521r1_3142", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3142_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3142_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3142_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 659 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3143 for ECDH, tcId is 660 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3143_peerpubkey[] = { 0x00, 0x71, 0x24, 0xed, 0x9d, 0x26, 0x1b, 0xc3, 0xe5, 0xd2, 0x99, 0x47, 0xff, 0x49, 0xcc, 0x44, 0x20, 0xdb, 0x90, 0xd3, 0xaf, 0xac, 0x7e, 0xb6, 0xab, 0x91, 0xbb, 0xab, 0x09, 0x0b, 0xd8, 0x4f, 0xfc, 0xc3, 0xef, 0x33, 0xe9, 0x63, 0xbc, 0xc0, 0x56, 0x85, 0x91, 0x0e, 0xe6, 0x3b, 0x06, 0x3b, 0xb9, 0xad, 0xae, 0x7f, 0xce, 0xa4, 0x11, 0x99, 0x61, 0x99, 0x88, 0xd3, 0x4d, 0x64, 0x77, 0xd1, 0x1e, 0xa9, 0x00, 0x39, 0x73, 0x8e, 0xd5, 0x52, 0x9f, 0x31, 0xa5, 0x57, 0x97, 0x0f, 0x89, 0xe6, 0xc9, 0x27, 0xfe, 0x0b, 0xdd, 0x64, 0x13, 0xdc, 0x31, 0x23, 0x7e, 0x75, 0x27, 0x0f, 0xee, 0x8e, 0x3b, 0xa6, 0xf3, 0xa2, 0x4e, 0xe5, 0x65, 0x16, 0xec, 0xe1, 0x17, 0x73, 0x3c, 0x38, 0x5a, 0x8b, 0xb7, 0x59, 0xe5, 0x7e, 0xe7, 0x95, 0x33, 0xf3, 0xc8, 0x57, 0x32, 0x7b, 0x75, 0x42, 0x67, 0x7d, 0x83, 0x4b, 0x8d, 0xfb, }; static const unsigned char ecdh_secp521r1_3143_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3143_sharedsecret[] = { 0x00, 0x2b, 0xa2, 0x5d, 0x01, 0x69, 0x89, 0xea, 0x24, 0xd5, 0x5f, 0xcd, 0xd9, 0xda, 0xe6, 0x9b, 0xc7, 0x67, 0xa4, 0xf3, 0x28, 0x19, 0x35, 0xf5, 0x06, 0x62, 0x03, 0x81, 0x29, 0x77, 0x73, 0x7b, 0x6a, 0x25, 0x6a, 0xe8, 0x39, 0xcd, 0xe9, 0xb2, 0x73, 0x28, 0x16, 0x72, 0xd7, 0xd8, 0x5d, 0xfb, 0x40, 0xca, 0x89, 0x5f, 0xc1, 0x44, 0x9c, 0xe4, 0x28, 0x3f, 0x74, 0x16, 0xcd, 0x91, 0x3a, 0x56, 0xd8, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_3143 = { .name = "ecdh_secp521r1_3143", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3143_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3143_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3143_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 660 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3144 for ECDH, tcId is 661 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3144_peerpubkey[] = { 0x00, 0x42, 0x20, 0xb1, 0x64, 0x2d, 0xb6, 0x38, 0x10, 0xf9, 0x6c, 0xf5, 0x4f, 0x93, 0xba, 0x6c, 0x3c, 0x9b, 0x16, 0xba, 0xa8, 0xab, 0x42, 0xec, 0xac, 0xc2, 0x81, 0xa2, 0xfc, 0xa3, 0x68, 0xbe, 0x87, 0x60, 0x24, 0xb6, 0xae, 0x18, 0xa8, 0xaa, 0xf9, 0xe4, 0x33, 0x79, 0x9f, 0xb4, 0x3c, 0x0f, 0xa1, 0x75, 0xd4, 0xca, 0x4a, 0x5e, 0x12, 0x17, 0x39, 0xc7, 0x24, 0x9e, 0x9a, 0x26, 0xfc, 0x90, 0x44, 0xd7, 0x01, 0xb0, 0x6a, 0xe5, 0x8d, 0xc3, 0xf7, 0xb7, 0x73, 0x01, 0x3e, 0x2d, 0xc8, 0x00, 0xe0, 0x01, 0x22, 0x0b, 0xad, 0x2e, 0x68, 0x11, 0x5c, 0xa6, 0x75, 0x16, 0xe9, 0xc8, 0x17, 0x63, 0xd1, 0x7e, 0xad, 0xfa, 0xd2, 0xc6, 0xd3, 0x82, 0x26, 0xf6, 0x66, 0x23, 0xa2, 0xd5, 0xc1, 0x17, 0x86, 0xe0, 0x7f, 0xac, 0xe4, 0x2d, 0x7b, 0x0a, 0x1d, 0xf9, 0x6d, 0x09, 0x5b, 0xbb, 0xed, 0xfc, 0xd3, 0x48, 0xe4, 0xd6, }; static const unsigned char ecdh_secp521r1_3144_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_3144_sharedsecret[] = { 0x01, 0xf5, 0x64, 0x6e, 0x72, 0x4f, 0x63, 0x7e, 0x1d, 0x4e, 0xa8, 0x99, 0x7c, 0xc6, 0x72, 0x68, 0xda, 0x3f, 0x74, 0x1b, 0x9a, 0xf6, 0xd2, 0x1f, 0x30, 0x77, 0x5a, 0x9a, 0x9b, 0x09, 0x77, 0xed, 0x75, 0xbf, 0xa0, 0xca, 0x5a, 0x80, 0xdb, 0x2d, 0x44, 0x82, 0x2d, 0xe4, 0x94, 0xd1, 0x5c, 0x87, 0xd3, 0x92, 0xcf, 0xf4, 0xac, 0xec, 0xfb, 0x50, 0x60, 0x9b, 0x43, 0xd7, 0x84, 0x59, 0x28, 0x28, 0x65, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_3144 = { .name = "ecdh_secp521r1_3144", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3144_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3144_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3144_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 661 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3145 for ECDH, tcId is 662 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3145_peerpubkey[] = { 0x00, 0x6d, 0xb3, 0xdb, 0xd1, 0xaf, 0x24, 0x99, 0x80, 0xef, 0xfd, 0x62, 0x4e, 0x9f, 0x50, 0x0e, 0x4d, 0x9f, 0xa4, 0x46, 0xc9, 0xbe, 0x94, 0xe3, 0x9b, 0x48, 0x60, 0x76, 0x7b, 0x55, 0xb1, 0x31, 0x08, 0x89, 0xe1, 0x78, 0xca, 0xf6, 0xc8, 0x59, 0xf6, 0x0f, 0xfb, 0x0d, 0x87, 0x61, 0x2c, 0x57, 0x90, 0x83, 0x3c, 0xad, 0x16, 0x0a, 0x5b, 0x23, 0xf7, 0x41, 0x22, 0x1a, 0x12, 0x3e, 0x36, 0xf0, 0xee, 0xb7, 0x00, 0x2c, 0xe8, 0x39, 0xf2, 0xba, 0x30, 0x72, 0x91, 0x92, 0x97, 0xee, 0x5a, 0x68, 0x29, 0xb8, 0x74, 0x6a, 0xf3, 0x9f, 0xbc, 0xe9, 0xfa, 0x70, 0xdb, 0xbf, 0x59, 0xbd, 0x20, 0x9b, 0xb5, 0x00, 0xd6, 0x12, 0x94, 0x19, 0xba, 0x96, 0x02, 0x0a, 0x25, 0x50, 0xbe, 0x0a, 0x19, 0x42, 0x6e, 0xe9, 0xe1, 0x11, 0xe6, 0x98, 0x7a, 0xf0, 0xc3, 0x26, 0xe1, 0xae, 0x1d, 0xa4, 0x36, 0x5d, 0x15, 0xa7, 0xbb, 0xf5, }; static const unsigned char ecdh_secp521r1_3145_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3145_sharedsecret[] = { 0x01, 0x77, 0x70, 0x17, 0x49, 0xc0, 0xc5, 0x4b, 0xd6, 0xd5, 0x4a, 0xda, 0x39, 0xaa, 0x22, 0x22, 0xe5, 0xb4, 0xd3, 0x22, 0x73, 0xea, 0x16, 0x59, 0x41, 0xd1, 0xa9, 0xa6, 0x11, 0x4d, 0x2c, 0xbe, 0x60, 0x9e, 0xe6, 0x2c, 0x23, 0x06, 0xbc, 0x5c, 0x1a, 0xba, 0xbe, 0x08, 0x22, 0x72, 0x15, 0x7f, 0xda, 0xc8, 0xdd, 0xa3, 0x9c, 0x7b, 0x45, 0x28, 0x20, 0xc9, 0x43, 0xdb, 0x42, 0x67, 0xfe, 0xd8, 0xc2, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_3145 = { .name = "ecdh_secp521r1_3145", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3145_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3145_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3145_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 662 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3146 for ECDH, tcId is 663 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3146_peerpubkey[] = { 0x00, 0x0d, 0x2f, 0xca, 0xb6, 0x2b, 0x46, 0x7f, 0x97, 0x8a, 0x02, 0x67, 0xff, 0x35, 0x98, 0xe6, 0xfd, 0xff, 0x08, 0x7d, 0x32, 0x37, 0xf8, 0xfb, 0x00, 0xc1, 0x7d, 0x0f, 0x5a, 0xcc, 0xbb, 0x4e, 0xde, 0xd3, 0xc4, 0xc4, 0x85, 0x8d, 0x45, 0x53, 0x03, 0x3e, 0x59, 0x94, 0x60, 0x30, 0xc6, 0xf5, 0x22, 0x37, 0x79, 0xa2, 0x12, 0x05, 0xba, 0x2a, 0x49, 0xb4, 0x54, 0x5b, 0xe5, 0x96, 0xb7, 0x6f, 0x91, 0xb2, 0x00, 0x57, 0xc9, 0x75, 0xda, 0x05, 0x20, 0xe1, 0xdc, 0xaa, 0x51, 0x89, 0x51, 0xdb, 0x05, 0x78, 0x64, 0x96, 0x6c, 0x81, 0x8e, 0x4e, 0x64, 0xfa, 0x91, 0x0a, 0x0c, 0x0c, 0x7f, 0x9b, 0x89, 0x4c, 0x06, 0x46, 0x1f, 0xed, 0x9b, 0x44, 0xf7, 0xec, 0x43, 0xb7, 0x0e, 0x33, 0x39, 0xda, 0x0f, 0x56, 0x6a, 0xac, 0x07, 0xfd, 0xe5, 0x01, 0xbb, 0xf2, 0x28, 0x71, 0x45, 0x2d, 0xba, 0x5c, 0x93, 0xe5, 0xd6, 0x23, }; static const unsigned char ecdh_secp521r1_3146_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3146_sharedsecret[] = { 0x00, 0xf5, 0x24, 0xb1, 0x72, 0x6e, 0x88, 0x9d, 0x14, 0xd5, 0xfd, 0x70, 0xbb, 0xfc, 0x76, 0xfb, 0x2e, 0xb3, 0x2d, 0xc2, 0x42, 0x5f, 0x11, 0x2a, 0x5f, 0xca, 0x52, 0x03, 0x30, 0x54, 0x16, 0xb8, 0x56, 0x09, 0xf3, 0x37, 0xcf, 0x87, 0xef, 0x87, 0x8e, 0x64, 0xe3, 0x75, 0xfa, 0x29, 0xeb, 0x32, 0xf9, 0xf1, 0x39, 0xbf, 0x77, 0x5c, 0x0d, 0x32, 0x29, 0xa7, 0x2c, 0x2e, 0x88, 0x09, 0x79, 0xf8, 0x22, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3146 = { .name = "ecdh_secp521r1_3146", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3146_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3146_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3146_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 663 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3147 for ECDH, tcId is 664 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3147_peerpubkey[] = { 0x00, 0x2c, 0xca, 0x1f, 0x37, 0xdd, 0x94, 0xa0, 0xa4, 0x7c, 0x81, 0x68, 0xac, 0xea, 0x47, 0x3f, 0xb0, 0x57, 0x65, 0x27, 0x13, 0x01, 0x5e, 0x58, 0x57, 0x43, 0xc9, 0xd3, 0x3f, 0x5b, 0x7d, 0x01, 0xd6, 0x38, 0xbc, 0x0d, 0x03, 0x91, 0x47, 0x58, 0x1a, 0x5f, 0x30, 0x96, 0x13, 0x9e, 0x5e, 0xe8, 0xed, 0x38, 0xbd, 0xcb, 0x72, 0xcd, 0xe4, 0x93, 0x92, 0x47, 0x76, 0x57, 0x9b, 0xcb, 0xb2, 0x52, 0x29, 0x61, 0x01, 0x5b, 0xd4, 0x85, 0x9c, 0x20, 0x15, 0xc0, 0x81, 0x69, 0x6a, 0xb1, 0x05, 0xb8, 0x92, 0x2c, 0x1f, 0x81, 0xce, 0x4a, 0x61, 0x04, 0xe5, 0xb5, 0x6b, 0x3c, 0xd9, 0x9c, 0xcc, 0x3c, 0x50, 0x66, 0xcb, 0xc3, 0x39, 0xae, 0x68, 0x5a, 0x90, 0x4d, 0xf5, 0xdd, 0x15, 0x48, 0x5c, 0xc3, 0xca, 0x72, 0xd2, 0xc8, 0x4f, 0x15, 0xf6, 0x25, 0x39, 0x7f, 0x46, 0x05, 0x90, 0x5b, 0x36, 0x17, 0x01, 0xe0, 0x0d, 0x2b, }; static const unsigned char ecdh_secp521r1_3147_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3147_sharedsecret[] = { 0x01, 0xca, 0x20, 0xd5, 0x56, 0xbf, 0x1b, 0xaf, 0x10, 0x15, 0x3e, 0x2c, 0x1d, 0x99, 0xb5, 0x8f, 0xa8, 0xd8, 0xf2, 0x1c, 0xd7, 0xee, 0xf3, 0x0a, 0xfc, 0x94, 0xef, 0xb4, 0x7d, 0x38, 0xbb, 0x36, 0x4a, 0xbd, 0xb5, 0x9a, 0x32, 0x6d, 0xff, 0xc4, 0x1f, 0xc0, 0x56, 0xef, 0xb7, 0x14, 0x38, 0x4b, 0x5d, 0x3f, 0x09, 0x27, 0x0b, 0x48, 0x06, 0xfc, 0xb0, 0xe2, 0x71, 0x38, 0x3c, 0xda, 0xec, 0x02, 0x3b, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3147 = { .name = "ecdh_secp521r1_3147", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3147_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3147_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3147_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 664 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3148 for ECDH, tcId is 665 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3148_peerpubkey[] = { 0x01, 0xb5, 0x38, 0x6f, 0xc6, 0x15, 0x97, 0x30, 0x76, 0x32, 0xb3, 0xf2, 0xc9, 0x84, 0xfe, 0x0e, 0xe8, 0xe2, 0x2c, 0x5f, 0xd9, 0x04, 0xb1, 0xd1, 0x4b, 0x35, 0x68, 0xe9, 0xeb, 0x76, 0x50, 0x03, 0x79, 0xd9, 0x17, 0xf2, 0x43, 0x0b, 0x7f, 0x2f, 0x55, 0xe0, 0xba, 0xc3, 0x56, 0xe7, 0x46, 0x72, 0xa2, 0x3d, 0xf2, 0xa5, 0xdd, 0xd4, 0x6f, 0xc0, 0xa5, 0x8f, 0x9f, 0x54, 0x07, 0x09, 0x37, 0x26, 0xc2, 0x5d, 0x00, 0x9c, 0xbf, 0x98, 0x33, 0x03, 0xfc, 0xbe, 0x0b, 0x5a, 0x92, 0x6e, 0x28, 0xc0, 0x65, 0x4e, 0xd4, 0x57, 0x43, 0x7e, 0x40, 0x10, 0xcc, 0xc1, 0xd1, 0xe0, 0x2e, 0x28, 0x68, 0x8c, 0x9f, 0x21, 0x0c, 0x76, 0xaf, 0x02, 0xed, 0x0d, 0xf6, 0xb7, 0x27, 0xfb, 0x18, 0xb9, 0x38, 0x71, 0x8e, 0x9d, 0xcc, 0x2c, 0x24, 0x21, 0xa6, 0x39, 0xd7, 0x32, 0xa6, 0x17, 0x11, 0xa5, 0xa4, 0x5f, 0xaa, 0x1b, 0xa1, 0x44, }; static const unsigned char ecdh_secp521r1_3148_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3148_sharedsecret[] = { 0x01, 0x20, 0x6d, 0x9b, 0xc7, 0x47, 0xf0, 0xe7, 0x59, 0x1d, 0xbe, 0x7a, 0x88, 0x95, 0x0a, 0x78, 0xdb, 0x27, 0x70, 0xce, 0xba, 0xc4, 0xe9, 0x1f, 0x71, 0xb3, 0x05, 0x2a, 0x33, 0x6b, 0xd1, 0x9f, 0x0f, 0x90, 0x6b, 0x72, 0x98, 0xeb, 0x92, 0x79, 0x0b, 0xe7, 0xbd, 0xa3, 0x3c, 0x28, 0x21, 0x6b, 0x28, 0x16, 0xb1, 0x00, 0xfe, 0x31, 0xba, 0x8a, 0x74, 0x89, 0xa9, 0xec, 0xa3, 0xba, 0x82, 0xb9, 0xd1, 0x98, }; static const wycheproof_ecdh_test ecdh_secp521r1_3148 = { .name = "ecdh_secp521r1_3148", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3148_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3148_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3148_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 665 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3149 for ECDH, tcId is 666 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3149_peerpubkey[] = { 0x00, 0x12, 0xd9, 0xeb, 0xd3, 0xfe, 0xb5, 0x43, 0xb4, 0x3c, 0xf3, 0x8f, 0x7b, 0xab, 0xa9, 0xc2, 0x0f, 0xcd, 0x5f, 0xe2, 0xde, 0xe9, 0x04, 0x9c, 0xa8, 0x85, 0x41, 0x84, 0xa2, 0xea, 0xd6, 0x4a, 0xa5, 0x40, 0x5e, 0x16, 0x9a, 0xe8, 0x27, 0x41, 0x37, 0x25, 0x95, 0x83, 0x07, 0x93, 0x9e, 0xe2, 0x44, 0x0c, 0x21, 0xb8, 0xda, 0x58, 0xb3, 0xff, 0x51, 0x6a, 0xe5, 0x69, 0x95, 0x3c, 0xf4, 0x87, 0x37, 0xee, 0x00, 0xcd, 0x5b, 0xec, 0x6c, 0xf7, 0x28, 0x63, 0x2d, 0x31, 0xe3, 0xa1, 0x99, 0xa2, 0x98, 0x24, 0x0d, 0xde, 0xd0, 0xab, 0x5d, 0x2b, 0x35, 0x13, 0xbc, 0xb2, 0xd1, 0x14, 0xc6, 0xb8, 0xf2, 0x79, 0xa0, 0x75, 0xff, 0x0c, 0x56, 0xa3, 0xee, 0x9e, 0x40, 0x58, 0xac, 0xec, 0x89, 0x36, 0xbf, 0x86, 0xbb, 0x28, 0x44, 0xba, 0x13, 0x07, 0xa4, 0x34, 0xfb, 0x43, 0xd2, 0x89, 0x74, 0x66, 0x62, 0xa8, 0x3d, 0xd5, }; static const unsigned char ecdh_secp521r1_3149_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3149_sharedsecret[] = { 0x01, 0x28, 0xdd, 0xe1, 0x34, 0x1c, 0xa1, 0x7b, 0x37, 0xef, 0xb3, 0x4b, 0x30, 0xee, 0x47, 0x9b, 0x76, 0x3e, 0x87, 0x8d, 0xc8, 0x00, 0x6c, 0x8c, 0xee, 0x43, 0x5c, 0x0b, 0xd2, 0x10, 0x73, 0xc5, 0xbb, 0x3d, 0xf5, 0x28, 0x65, 0xbd, 0x41, 0x31, 0xf5, 0xce, 0xc4, 0x15, 0x88, 0xef, 0x77, 0x8e, 0xf1, 0x4a, 0xf4, 0xca, 0x47, 0xdc, 0x49, 0xa1, 0x6d, 0x5b, 0x70, 0x08, 0xed, 0xe0, 0xb6, 0xe6, 0xb1, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3149 = { .name = "ecdh_secp521r1_3149", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3149_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3149_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3149_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 666 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3150 for ECDH, tcId is 667 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3150_peerpubkey[] = { 0x00, 0xf3, 0xaa, 0x49, 0xfe, 0xaf, 0x68, 0x6f, 0xcf, 0xfe, 0x3a, 0x0a, 0x36, 0x06, 0x92, 0xef, 0x02, 0xfe, 0xb1, 0x4d, 0xe6, 0xe0, 0xfd, 0x8d, 0xc9, 0x22, 0x85, 0x7b, 0x29, 0xd6, 0x83, 0x7a, 0x59, 0xce, 0x40, 0x13, 0xbe, 0xe9, 0x9b, 0xf8, 0x7f, 0x83, 0x23, 0xc3, 0xab, 0x7f, 0x57, 0xe0, 0x2e, 0x7b, 0x0a, 0x0d, 0xfa, 0xa0, 0x72, 0xbf, 0x1a, 0xda, 0x48, 0x36, 0xbe, 0x49, 0x08, 0xdd, 0xae, 0x49, 0x00, 0x6a, 0xf8, 0x1a, 0xb3, 0xe3, 0x05, 0xfb, 0xe5, 0xce, 0x8a, 0x81, 0x9f, 0x81, 0x68, 0xa8, 0xb4, 0x4e, 0x40, 0xb1, 0x6e, 0xae, 0x82, 0x68, 0xa6, 0x0e, 0xa5, 0xd6, 0x6c, 0x0f, 0x28, 0x43, 0x65, 0xe6, 0x09, 0xa1, 0x91, 0x23, 0x37, 0x0b, 0xee, 0xe4, 0x20, 0xd0, 0xf0, 0x19, 0xa1, 0x98, 0x41, 0x56, 0xce, 0x29, 0xad, 0xe4, 0x95, 0x10, 0xe7, 0xa3, 0x16, 0x37, 0x05, 0x33, 0x3b, 0x85, 0x89, 0x14, }; static const unsigned char ecdh_secp521r1_3150_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3150_sharedsecret[] = { 0x00, 0x58, 0xbd, 0x4d, 0x20, 0x6d, 0xf1, 0xcf, 0xb3, 0xfe, 0x34, 0x9c, 0xda, 0x27, 0xb0, 0x13, 0xd5, 0x9d, 0xd6, 0xf5, 0x07, 0xc0, 0x66, 0xc0, 0xb6, 0xcf, 0x45, 0x8a, 0xa5, 0x4a, 0x1c, 0x13, 0x83, 0x25, 0x54, 0xc6, 0x6f, 0xf2, 0x7f, 0x61, 0x75, 0xf1, 0xbf, 0x40, 0x58, 0x37, 0x8c, 0x9f, 0x7c, 0x7a, 0x9d, 0x8b, 0x81, 0x0e, 0x40, 0xa3, 0xa8, 0xaf, 0x19, 0xfe, 0x0e, 0x48, 0xc7, 0x28, 0x4e, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3150 = { .name = "ecdh_secp521r1_3150", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3150_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3150_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3150_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 667 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3151 for ECDH, tcId is 668 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3151_peerpubkey[] = { 0x00, 0x54, 0x68, 0x2c, 0x18, 0x6f, 0x9b, 0x80, 0xc4, 0xc7, 0x6d, 0x70, 0x50, 0xf6, 0xa1, 0x80, 0xfa, 0xd9, 0xfc, 0x85, 0x19, 0x41, 0x95, 0x74, 0xbf, 0xaf, 0xca, 0x96, 0x78, 0xc5, 0x9c, 0xa9, 0x5e, 0x22, 0x53, 0x34, 0x8e, 0x0b, 0x15, 0x79, 0x49, 0x46, 0x1e, 0x95, 0x51, 0xca, 0x7d, 0xdf, 0xb9, 0xfa, 0xe8, 0xfd, 0x7f, 0xd2, 0x3a, 0x88, 0x55, 0xd9, 0x96, 0x29, 0x13, 0xc6, 0x6f, 0x2f, 0xce, 0x54, 0x00, 0xf4, 0x05, 0x29, 0x73, 0x10, 0xed, 0x41, 0x23, 0x9c, 0x56, 0x5c, 0x04, 0x4c, 0xfc, 0x4c, 0xad, 0x28, 0x68, 0x12, 0x6d, 0x44, 0x4b, 0x37, 0x3d, 0x52, 0xe0, 0x51, 0x82, 0x45, 0x60, 0x0a, 0x99, 0xc4, 0x0f, 0x1b, 0xfa, 0x5c, 0xca, 0x7d, 0x1f, 0x39, 0x7c, 0x18, 0xea, 0xd3, 0x3c, 0x4d, 0x3f, 0xd4, 0xd4, 0x31, 0xef, 0x84, 0xf1, 0x12, 0x92, 0x38, 0xe2, 0x96, 0xe3, 0xed, 0x7b, 0xe0, 0xf9, 0x9e, }; static const unsigned char ecdh_secp521r1_3151_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3151_sharedsecret[] = { 0x01, 0x61, 0x2e, 0xba, 0xcb, 0x6c, 0x31, 0xaf, 0x20, 0x08, 0xaa, 0x26, 0x4c, 0x45, 0xd1, 0xce, 0xe7, 0xaa, 0x53, 0x3d, 0x78, 0xe1, 0xfc, 0xf4, 0x80, 0xa3, 0x11, 0x8d, 0x23, 0x41, 0x8e, 0x23, 0x62, 0x1f, 0x0c, 0xe9, 0xc7, 0x50, 0x9f, 0x71, 0x82, 0xbf, 0x23, 0xa0, 0x2a, 0x65, 0x30, 0x65, 0x9b, 0xa6, 0x2c, 0x5f, 0x16, 0xf8, 0x63, 0x4a, 0x4f, 0x74, 0xd4, 0xc3, 0x2b, 0x26, 0xc6, 0xee, 0xcc, 0x27, }; static const wycheproof_ecdh_test ecdh_secp521r1_3151 = { .name = "ecdh_secp521r1_3151", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3151_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3151_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3151_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 668 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3152 for ECDH, tcId is 669 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3152_peerpubkey[] = { 0x01, 0xea, 0xbf, 0x31, 0x92, 0x53, 0xf8, 0x83, 0x41, 0x7a, 0x0c, 0xe2, 0x65, 0xd3, 0x14, 0x23, 0x96, 0xa7, 0x5f, 0x83, 0x0f, 0x33, 0x58, 0x94, 0x86, 0x88, 0x9b, 0xbd, 0x4e, 0x20, 0x91, 0xb8, 0x27, 0xfe, 0xf6, 0x09, 0x0a, 0xb6, 0x57, 0x68, 0xa3, 0x8f, 0xfb, 0x3a, 0x9c, 0x97, 0x79, 0x64, 0x64, 0x63, 0x4d, 0x07, 0x06, 0x22, 0xad, 0xbc, 0x3e, 0x9a, 0xf1, 0x98, 0xef, 0xb9, 0xd7, 0x29, 0xd7, 0xca, 0x00, 0x02, 0xfa, 0x30, 0x58, 0x1a, 0x7b, 0x26, 0x81, 0xf7, 0xe2, 0x24, 0xea, 0xd1, 0x35, 0xec, 0x7a, 0x61, 0x63, 0xaf, 0x4f, 0x40, 0xaa, 0x33, 0x30, 0x43, 0xa2, 0xba, 0xde, 0xce, 0xac, 0x13, 0x53, 0xab, 0x5f, 0xfb, 0xee, 0xf9, 0x29, 0x60, 0x91, 0x37, 0xcd, 0x43, 0x7e, 0x8a, 0xcc, 0xc0, 0xb0, 0x24, 0x11, 0x60, 0x39, 0x59, 0xd6, 0x1c, 0x7a, 0x70, 0xf1, 0x39, 0x1a, 0x7a, 0x99, 0x23, 0x27, 0xa7, }; static const unsigned char ecdh_secp521r1_3152_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3152_sharedsecret[] = { 0x00, 0x6a, 0x32, 0x35, 0xdf, 0x6b, 0x85, 0x34, 0x3e, 0xab, 0x82, 0x35, 0x06, 0x20, 0x88, 0x9f, 0xeb, 0xa2, 0x73, 0x60, 0x4e, 0x59, 0xeb, 0x98, 0xd7, 0x8f, 0xe6, 0x3b, 0xd4, 0x41, 0xce, 0x39, 0x41, 0x1e, 0xad, 0x84, 0x02, 0xe2, 0x50, 0x7f, 0xe1, 0x0a, 0x03, 0xfa, 0xd9, 0x56, 0x2c, 0x3b, 0xe4, 0x48, 0x83, 0x78, 0xcf, 0x2a, 0x1f, 0x4c, 0x42, 0x78, 0x5e, 0x7d, 0x93, 0x21, 0x8d, 0x99, 0xfe, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3152 = { .name = "ecdh_secp521r1_3152", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3152_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3152_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3152_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 669 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3153 for ECDH, tcId is 670 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3153_peerpubkey[] = { 0x01, 0xd3, 0x6e, 0x69, 0x6a, 0xad, 0xbb, 0xc4, 0x09, 0xb4, 0x73, 0x3f, 0xc3, 0xc8, 0x6d, 0xcb, 0x2e, 0x98, 0x0a, 0x1b, 0x7d, 0x01, 0x58, 0xf8, 0x2a, 0x27, 0xe5, 0xb1, 0x33, 0x7f, 0xd2, 0x27, 0x2e, 0x52, 0xa2, 0x7f, 0xe6, 0x7c, 0xc5, 0x87, 0x2b, 0x5b, 0x46, 0x04, 0x0d, 0x88, 0x32, 0x5b, 0x2b, 0x52, 0x4a, 0x2d, 0x5b, 0x87, 0x3b, 0xc5, 0x4f, 0xf0, 0x51, 0xc1, 0xd1, 0x6c, 0x99, 0xd9, 0xbc, 0x81, 0x00, 0x3e, 0x3f, 0x6b, 0x1a, 0x73, 0x7d, 0xa1, 0x68, 0x02, 0x43, 0x0f, 0x80, 0x9e, 0x08, 0x4c, 0xd8, 0xb3, 0x42, 0x00, 0x19, 0xc2, 0xf9, 0xf1, 0xb9, 0x78, 0xa1, 0x12, 0x8f, 0xfc, 0xb9, 0x00, 0xb9, 0xc4, 0xfa, 0xf1, 0x77, 0xa7, 0x87, 0x7e, 0x4a, 0x83, 0x84, 0x72, 0x8a, 0x1c, 0x30, 0x9d, 0x2b, 0xcf, 0xb4, 0x12, 0xfa, 0x98, 0x39, 0x82, 0xae, 0x6b, 0x45, 0x9f, 0xe0, 0x7e, 0xb9, 0xc7, 0x9e, 0xdd, }; static const unsigned char ecdh_secp521r1_3153_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3153_sharedsecret[] = { 0x00, 0x09, 0xca, 0x92, 0x9a, 0x3a, 0xd9, 0x52, 0x5d, 0x0a, 0xe1, 0x9d, 0x36, 0xb4, 0x0d, 0xc5, 0x43, 0xd2, 0x34, 0x8f, 0x8b, 0x0d, 0x95, 0xc5, 0x9c, 0x42, 0x07, 0xf8, 0x6a, 0x89, 0x88, 0x49, 0x85, 0x8e, 0x93, 0x9b, 0x44, 0x58, 0xb5, 0x68, 0xf5, 0x7c, 0x05, 0x4e, 0xe9, 0xd9, 0x56, 0x32, 0xaa, 0x24, 0xc5, 0xd5, 0xf1, 0xd4, 0xea, 0xa8, 0x9f, 0xaf, 0x8f, 0xac, 0x4d, 0x11, 0xda, 0x28, 0xdd, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_3153 = { .name = "ecdh_secp521r1_3153", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3153_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3153_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3153_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 670 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3154 for ECDH, tcId is 671 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3154_peerpubkey[] = { 0x01, 0x06, 0x1a, 0xa8, 0x9a, 0x31, 0x7c, 0x63, 0xb8, 0x24, 0xf7, 0xeb, 0xfc, 0x8b, 0xd9, 0x53, 0x4e, 0x29, 0x7d, 0xf9, 0xba, 0xcf, 0x80, 0xb8, 0x35, 0x0c, 0xbd, 0x94, 0xcd, 0xc4, 0xd3, 0xd8, 0x12, 0x7a, 0x80, 0xdb, 0x95, 0x55, 0xb7, 0x7d, 0x50, 0xea, 0x82, 0xc9, 0x9e, 0x66, 0x7f, 0x6f, 0xe5, 0x37, 0x9a, 0x77, 0xc9, 0x07, 0x8b, 0xf9, 0xc7, 0xcc, 0x04, 0x9a, 0xbe, 0x9e, 0xac, 0x7f, 0x17, 0x4c, 0x00, 0xa9, 0xab, 0xfc, 0x2a, 0x89, 0x2f, 0x10, 0x4e, 0x30, 0xcb, 0x20, 0xcc, 0x2b, 0xfb, 0xa6, 0xb9, 0x48, 0xc6, 0x63, 0x7a, 0xc0, 0x62, 0xe8, 0x3a, 0xe4, 0x78, 0xf0, 0x96, 0x86, 0x9f, 0x17, 0xdc, 0x1b, 0xb4, 0xea, 0xf5, 0x2f, 0x7d, 0x63, 0x51, 0x80, 0x31, 0xed, 0xec, 0xb2, 0x20, 0xec, 0x14, 0xb0, 0x65, 0x2e, 0x6c, 0x96, 0xe0, 0x23, 0x49, 0x0d, 0x5e, 0xd0, 0x8f, 0xb4, 0x25, 0x9d, 0xa9, 0xfa, }; static const unsigned char ecdh_secp521r1_3154_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3154_sharedsecret[] = { 0x01, 0x39, 0x50, 0xdd, 0xb6, 0xb9, 0x15, 0x45, 0x41, 0x25, 0xe3, 0x7a, 0x03, 0x84, 0x57, 0x94, 0xfe, 0x32, 0x03, 0x7e, 0xdd, 0xc0, 0x41, 0x43, 0xd9, 0x1c, 0xbf, 0x2a, 0xb8, 0x42, 0x49, 0x50, 0x12, 0x89, 0x64, 0x60, 0xd3, 0x82, 0x43, 0x74, 0xb2, 0x14, 0xec, 0xe1, 0x0f, 0x39, 0xd2, 0xac, 0x60, 0x6b, 0xb4, 0xb2, 0xf9, 0xb2, 0x75, 0x48, 0xe2, 0x17, 0x20, 0xae, 0x13, 0x26, 0x6d, 0x14, 0xbe, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_3154 = { .name = "ecdh_secp521r1_3154", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3154_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3154_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3154_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 671 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3155 for ECDH, tcId is 672 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3155_peerpubkey[] = { 0x00, 0xdf, 0x58, 0xf1, 0x93, 0xb6, 0xd4, 0xfd, 0xba, 0x1d, 0x61, 0xa4, 0xe0, 0x73, 0xa3, 0x05, 0xc9, 0x5d, 0xba, 0x4c, 0xa0, 0xfd, 0xd5, 0x8f, 0x86, 0xee, 0x32, 0xa9, 0x30, 0x4a, 0x62, 0x09, 0x7a, 0xc3, 0xc0, 0xd1, 0xfa, 0xe3, 0x2c, 0xf2, 0xe4, 0xe6, 0x5b, 0xa4, 0xef, 0xc6, 0xd0, 0x40, 0x87, 0x25, 0xf5, 0x72, 0x74, 0xf9, 0xbc, 0x22, 0x89, 0xed, 0x42, 0x6e, 0xc2, 0x70, 0x79, 0xae, 0x0b, 0x6e, 0x01, 0xf0, 0x7d, 0x98, 0xe2, 0xab, 0xa8, 0xd3, 0x8e, 0x6d, 0x54, 0xb1, 0x49, 0x6d, 0x68, 0x25, 0x10, 0x04, 0x54, 0x7f, 0x50, 0x78, 0x97, 0x54, 0xc4, 0x09, 0x76, 0x62, 0x82, 0x7b, 0xc8, 0x3f, 0x2c, 0xf5, 0x91, 0x92, 0xeb, 0x9e, 0x09, 0x01, 0x1b, 0x30, 0xc5, 0x4c, 0xad, 0x9f, 0x92, 0x41, 0xc0, 0x92, 0x41, 0x5a, 0x36, 0x6f, 0xfe, 0x5b, 0x6b, 0xdb, 0x4c, 0xfc, 0xbc, 0xdc, 0x46, 0xed, 0xcc, 0x12, }; static const unsigned char ecdh_secp521r1_3155_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3155_sharedsecret[] = { 0x01, 0xa1, 0xbc, 0x2b, 0x5e, 0x8e, 0x0a, 0x62, 0x10, 0xef, 0x8a, 0x51, 0x4d, 0xed, 0x99, 0xee, 0xe3, 0x0a, 0xc8, 0xe9, 0xaa, 0x77, 0x58, 0xad, 0xec, 0xc4, 0x91, 0x03, 0x01, 0xfc, 0x62, 0x6a, 0x56, 0x66, 0xe4, 0x54, 0x1c, 0xea, 0x03, 0xa9, 0x0f, 0x1e, 0x59, 0xfd, 0x82, 0xb8, 0xcd, 0x87, 0x08, 0x6f, 0x26, 0x10, 0x52, 0x12, 0x4c, 0xd4, 0x3b, 0x1c, 0x89, 0xfd, 0x04, 0x8d, 0xad, 0x5f, 0x29, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_3155 = { .name = "ecdh_secp521r1_3155", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3155_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3155_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3155_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 672 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3156 for ECDH, tcId is 673 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3156_peerpubkey[] = { 0x00, 0x73, 0xb9, 0x17, 0xa3, 0x56, 0xc0, 0xde, 0x8f, 0xef, 0x14, 0x59, 0x3f, 0x66, 0xd5, 0xda, 0xb1, 0xf0, 0xd5, 0x6b, 0x04, 0x2b, 0xa6, 0x5d, 0x20, 0x3e, 0xc1, 0x39, 0xc6, 0xcb, 0x71, 0xd9, 0x0b, 0xb7, 0xdc, 0x04, 0x44, 0xd0, 0xe3, 0xb0, 0x1b, 0xed, 0x97, 0xa5, 0xc6, 0x9f, 0x27, 0x54, 0x9c, 0x92, 0xe9, 0x5b, 0xbc, 0x7e, 0x8e, 0x0c, 0xe9, 0x32, 0xe6, 0xc4, 0x3a, 0x75, 0x55, 0x0e, 0x86, 0xec, 0x00, 0x9f, 0x20, 0x14, 0xe2, 0x9a, 0xcb, 0x2b, 0x25, 0x5b, 0xf6, 0xec, 0x91, 0x18, 0xbe, 0xbe, 0x73, 0x25, 0xe1, 0xf1, 0x1f, 0xf7, 0x88, 0x5d, 0x1a, 0x2e, 0x14, 0x29, 0x45, 0xcb, 0x74, 0x1e, 0x26, 0xb4, 0xff, 0xc6, 0xde, 0x72, 0xb7, 0x15, 0xa1, 0x48, 0xb8, 0x40, 0xdf, 0x54, 0x9b, 0x49, 0xc9, 0xa0, 0x5f, 0x88, 0x27, 0xf3, 0xef, 0x05, 0xdb, 0x98, 0xa4, 0xf6, 0x64, 0xf6, 0xdd, 0x84, 0x78, 0xf0, }; static const unsigned char ecdh_secp521r1_3156_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3156_sharedsecret[] = { 0x00, 0xf3, 0x4f, 0x3b, 0x8a, 0xe2, 0xf0, 0xfe, 0xc3, 0x68, 0x39, 0x66, 0x33, 0xf5, 0x81, 0xb9, 0x3c, 0x38, 0xe3, 0x29, 0x77, 0x00, 0x85, 0xa5, 0x1a, 0x93, 0x45, 0x70, 0x87, 0xf8, 0x11, 0x63, 0x86, 0xd5, 0x8d, 0xea, 0x54, 0xb9, 0x9c, 0xe5, 0x6a, 0x80, 0x89, 0x6a, 0xad, 0x40, 0xc2, 0xdf, 0xe6, 0x9b, 0x2d, 0xfe, 0x12, 0x6b, 0xe1, 0x7b, 0xf1, 0x5a, 0xb7, 0xf1, 0x9c, 0xe6, 0x67, 0xbf, 0xf4, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3156 = { .name = "ecdh_secp521r1_3156", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3156_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3156_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3156_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 673 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3157 for ECDH, tcId is 674 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3157_peerpubkey[] = { 0x01, 0xd8, 0x60, 0xab, 0xb5, 0xc6, 0x5f, 0x6d, 0x17, 0x91, 0xbc, 0x3f, 0xd6, 0x26, 0xe3, 0xda, 0x1c, 0xe8, 0x90, 0x51, 0x44, 0x17, 0xd6, 0x7b, 0x40, 0x71, 0x68, 0xdc, 0x7f, 0xc9, 0x66, 0x41, 0xfd, 0xa5, 0x6f, 0xb1, 0x83, 0x0f, 0x36, 0x95, 0xab, 0x01, 0x71, 0xd7, 0x86, 0x67, 0x30, 0x74, 0x7b, 0x3d, 0xce, 0x3d, 0xe6, 0x1c, 0xe7, 0x0f, 0x83, 0x1a, 0xf8, 0x5e, 0x5c, 0x6e, 0xae, 0x0b, 0x7c, 0x77, 0x01, 0xb1, 0xeb, 0xa9, 0x2b, 0x65, 0xba, 0x7e, 0xe9, 0x69, 0x1d, 0x90, 0x8a, 0x14, 0xad, 0x0a, 0x11, 0x6a, 0x4e, 0x09, 0xb4, 0x0c, 0x9e, 0xa4, 0x19, 0x7e, 0x60, 0xc0, 0xb5, 0x4f, 0x94, 0x84, 0x22, 0xba, 0xa9, 0x7d, 0x80, 0xb4, 0xcc, 0xaf, 0x7b, 0x35, 0xbe, 0x68, 0x1d, 0xed, 0x0a, 0xec, 0xdd, 0x8b, 0xdd, 0x30, 0x59, 0x05, 0x4a, 0xf8, 0x38, 0x05, 0x78, 0x88, 0x48, 0x9c, 0x00, 0xa3, 0xb7, 0x59, }; static const unsigned char ecdh_secp521r1_3157_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3157_sharedsecret[] = { 0x01, 0x20, 0x3d, 0xf6, 0x0d, 0xb3, 0x97, 0x32, 0x20, 0x7b, 0xd8, 0xdb, 0x87, 0x50, 0x1b, 0xcd, 0x84, 0x81, 0x66, 0x4a, 0x91, 0x11, 0xc8, 0xc6, 0x5b, 0x46, 0xf0, 0x02, 0xb0, 0xb8, 0x31, 0x59, 0x96, 0x0e, 0x47, 0x10, 0xeb, 0xa5, 0x48, 0xf0, 0x03, 0x9d, 0xb2, 0x4f, 0x66, 0x19, 0x0c, 0x56, 0x05, 0x33, 0x70, 0xb3, 0xc9, 0x88, 0x4d, 0x44, 0x59, 0x71, 0xa1, 0x29, 0x6d, 0xa4, 0xd6, 0x56, 0xf9, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3157 = { .name = "ecdh_secp521r1_3157", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3157_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3157_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3157_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 674 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3158 for ECDH, tcId is 675 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3158_peerpubkey[] = { 0x01, 0xb3, 0x41, 0xa7, 0xb5, 0x81, 0x22, 0xc7, 0x0b, 0x72, 0xe7, 0x0b, 0x05, 0x1a, 0x33, 0x51, 0x86, 0xc8, 0x9f, 0xe4, 0x7b, 0x8f, 0x68, 0xc3, 0x5d, 0x09, 0x9b, 0x77, 0x59, 0xfb, 0x62, 0x08, 0x71, 0x88, 0x75, 0xd8, 0xcd, 0x8c, 0x45, 0xd1, 0x15, 0x1a, 0x37, 0x02, 0x01, 0xa1, 0xb0, 0x47, 0x00, 0x2f, 0x61, 0x9b, 0x05, 0xca, 0xfe, 0x39, 0xd4, 0x94, 0xb6, 0xa6, 0x9a, 0x52, 0xb4, 0x26, 0x53, 0x33, 0x01, 0x27, 0xe7, 0x0b, 0x8f, 0xc8, 0x40, 0x89, 0x13, 0x95, 0xaf, 0xd3, 0xb0, 0x37, 0x32, 0xd0, 0xa5, 0x2f, 0x47, 0x77, 0x65, 0x1c, 0x3d, 0x8a, 0x85, 0x79, 0xd6, 0x65, 0x85, 0x10, 0xd8, 0x68, 0xb6, 0x9f, 0x14, 0x3c, 0x7e, 0xec, 0xd2, 0xbe, 0x41, 0x2e, 0x0a, 0xd2, 0xb2, 0xd7, 0xae, 0xf0, 0x71, 0x77, 0x96, 0xf3, 0xf8, 0x48, 0x0f, 0xa9, 0x24, 0xb0, 0x9d, 0xf9, 0x01, 0x88, 0xde, 0xbe, 0x51, 0xbb, }; static const unsigned char ecdh_secp521r1_3158_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3158_sharedsecret[] = { 0x00, 0xb2, 0x2d, 0x94, 0xb5, 0x3f, 0xb0, 0x0d, 0x48, 0xe1, 0x2f, 0x12, 0x56, 0x0e, 0xaf, 0xcd, 0xec, 0x7e, 0xa1, 0x57, 0xc9, 0xb0, 0x42, 0x43, 0x6f, 0xc6, 0x66, 0x81, 0xde, 0x96, 0xaf, 0x98, 0xba, 0x98, 0xad, 0xb7, 0xfa, 0xf7, 0x9d, 0x12, 0xb3, 0x99, 0xe9, 0x01, 0xec, 0x7b, 0xc9, 0xd5, 0x11, 0x78, 0x83, 0xda, 0x20, 0x5a, 0xc2, 0x6b, 0x38, 0xf7, 0x88, 0xa7, 0x88, 0x5d, 0x43, 0x4b, 0x6e, 0x18, }; static const wycheproof_ecdh_test ecdh_secp521r1_3158 = { .name = "ecdh_secp521r1_3158", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3158_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3158_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3158_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 675 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3159 for ECDH, tcId is 676 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3159_peerpubkey[] = { 0x00, 0x01, 0xff, 0x24, 0x9a, 0xab, 0xa8, 0x06, 0xd8, 0x38, 0xc1, 0xa1, 0xd0, 0x0d, 0x9d, 0x22, 0x59, 0xe6, 0x0e, 0xa1, 0xe8, 0xee, 0xc6, 0x68, 0x64, 0x05, 0x46, 0x2a, 0xb2, 0x2a, 0x32, 0xa5, 0xb6, 0x73, 0x93, 0x2b, 0xbf, 0x63, 0xfd, 0x74, 0xea, 0xb3, 0xf6, 0x33, 0x48, 0xa6, 0xc2, 0x2e, 0x0d, 0x6e, 0x59, 0x4b, 0x25, 0x3f, 0x01, 0xea, 0x21, 0x1b, 0xb7, 0x6f, 0x0b, 0x9d, 0xce, 0x66, 0xd6, 0x71, 0x00, 0x50, 0x52, 0xc1, 0xf4, 0x4d, 0x17, 0xc3, 0x34, 0xe5, 0x22, 0xa0, 0xd8, 0xe3, 0xd9, 0x9a, 0xe3, 0x2f, 0xa4, 0x8d, 0xf6, 0xfb, 0x91, 0x17, 0xbe, 0xe4, 0x31, 0xb7, 0xa3, 0x74, 0x40, 0x31, 0x09, 0x85, 0xe5, 0xfd, 0xd8, 0x21, 0x70, 0x81, 0x7b, 0x0f, 0x68, 0xc0, 0xbb, 0x73, 0x00, 0xd2, 0x17, 0x85, 0x4e, 0x45, 0xfb, 0x69, 0x4b, 0x46, 0xf5, 0xf5, 0x03, 0x00, 0x62, 0x73, 0x90, 0x90, 0x00, 0x87, }; static const unsigned char ecdh_secp521r1_3159_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3159_sharedsecret[] = { 0x00, 0xe1, 0x7a, 0x9e, 0xbd, 0x3c, 0xe6, 0xa1, 0x9e, 0x5e, 0xaa, 0xf8, 0x89, 0xb1, 0x20, 0xac, 0x1e, 0x38, 0x77, 0x8e, 0x1c, 0x11, 0x29, 0xc3, 0x83, 0xfe, 0xc2, 0xbf, 0x97, 0x80, 0xd1, 0xc4, 0x12, 0xeb, 0xc8, 0xfb, 0xc2, 0x9b, 0x06, 0x46, 0xd7, 0x7b, 0x84, 0xe4, 0x54, 0x93, 0x37, 0x6e, 0x99, 0x1d, 0x59, 0x54, 0xce, 0x3b, 0x3c, 0xaf, 0x47, 0x9c, 0xf8, 0xf7, 0x01, 0xd8, 0x83, 0x51, 0xae, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp521r1_3159 = { .name = "ecdh_secp521r1_3159", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3159_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3159_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3159_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 676 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3160 for ECDH, tcId is 677 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3160_peerpubkey[] = { 0x00, 0xd2, 0xcb, 0x24, 0x3b, 0xdf, 0xc5, 0xff, 0xb2, 0xba, 0xcb, 0xf4, 0x37, 0x16, 0x1f, 0x02, 0xcf, 0x22, 0x97, 0x1d, 0x8b, 0x7f, 0x9c, 0xd0, 0xe6, 0x5c, 0x17, 0x49, 0x89, 0xf5, 0xed, 0x7c, 0x9c, 0xc7, 0x52, 0xa0, 0xc6, 0xa7, 0x71, 0x9d, 0xc1, 0xbf, 0x3c, 0xbb, 0x67, 0xaf, 0x5c, 0xd6, 0x02, 0x5e, 0x31, 0x3a, 0x4b, 0x0c, 0x46, 0x42, 0x9e, 0xac, 0x13, 0x20, 0xa6, 0xce, 0xb2, 0x79, 0xda, 0xc2, 0x01, 0x80, 0x93, 0xc8, 0xff, 0xb1, 0x76, 0x7b, 0x2b, 0x50, 0x10, 0x9e, 0x40, 0xf1, 0x8d, 0xbe, 0x74, 0x8a, 0x35, 0x7d, 0xe1, 0xe2, 0x84, 0x66, 0x4a, 0xa7, 0xb1, 0x0a, 0x8d, 0xf3, 0x09, 0x2a, 0x81, 0xed, 0xc1, 0x88, 0x9d, 0x15, 0x39, 0x65, 0xeb, 0x2e, 0x4f, 0x7b, 0x31, 0x48, 0x27, 0x51, 0x2b, 0x01, 0x8b, 0xaa, 0xf3, 0x92, 0x58, 0x1e, 0x2a, 0x49, 0x94, 0x1f, 0x60, 0x61, 0x35, 0x64, 0x8f, 0x8c, }; static const unsigned char ecdh_secp521r1_3160_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3160_sharedsecret[] = { 0x00, 0xff, 0x5c, 0xaf, 0x7f, 0xd6, 0xda, 0x41, 0xa1, 0xa8, 0xbb, 0x47, 0xde, 0x3a, 0x08, 0x38, 0x83, 0xe2, 0xe3, 0x82, 0x47, 0x7c, 0x1f, 0xf1, 0xd6, 0xec, 0xaa, 0x44, 0xa1, 0x63, 0xe7, 0xbd, 0x37, 0x5b, 0x67, 0xd7, 0x01, 0x37, 0x63, 0xa7, 0x76, 0xdf, 0x38, 0xe7, 0x96, 0x62, 0x31, 0x0a, 0x74, 0x87, 0x3a, 0x4c, 0xe6, 0x12, 0x6d, 0x2e, 0xc6, 0xf6, 0x82, 0x63, 0xf2, 0x48, 0x79, 0x69, 0x97, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3160 = { .name = "ecdh_secp521r1_3160", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3160_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3160_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3160_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 677 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3161 for ECDH, tcId is 678 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3161_peerpubkey[] = { 0x01, 0xda, 0x72, 0x33, 0x0f, 0xd0, 0x0e, 0xba, 0xf4, 0xe6, 0xff, 0x8a, 0x30, 0x3d, 0x25, 0xc2, 0x52, 0x7d, 0xff, 0x19, 0xd1, 0x0d, 0x8e, 0x8a, 0xad, 0x05, 0xfd, 0x75, 0x9d, 0x98, 0x07, 0x3f, 0x26, 0x2e, 0x69, 0x3c, 0xe2, 0xfc, 0x49, 0x74, 0x7a, 0xed, 0x29, 0xe2, 0x7e, 0x32, 0x3e, 0x53, 0x5d, 0x46, 0x9f, 0x0f, 0xcd, 0x1a, 0x8a, 0x1d, 0x08, 0x60, 0x4f, 0xaf, 0xe0, 0x0d, 0x1b, 0xad, 0xc4, 0xb3, 0x00, 0xb7, 0xde, 0x13, 0xe7, 0xdc, 0xed, 0xb7, 0x37, 0x60, 0x04, 0xa9, 0xf5, 0x89, 0x92, 0x2f, 0x18, 0x7b, 0xd1, 0xbe, 0x72, 0xe2, 0xde, 0x78, 0x93, 0x87, 0x3d, 0x23, 0x92, 0xbb, 0xb8, 0x4a, 0xa8, 0x71, 0x10, 0x0f, 0x8b, 0x95, 0x54, 0x8f, 0x5d, 0xf8, 0x96, 0x62, 0xe9, 0x8b, 0x63, 0x1c, 0x4e, 0xe4, 0xd0, 0x55, 0x80, 0x96, 0xd4, 0x17, 0x0b, 0xe0, 0xc1, 0xe2, 0x1c, 0xc0, 0x59, 0x55, 0x82, 0x3b, }; static const unsigned char ecdh_secp521r1_3161_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3161_sharedsecret[] = { 0x01, 0xa6, 0x4d, 0xa0, 0x50, 0x3e, 0x2d, 0xf5, 0xd3, 0x83, 0x83, 0x7d, 0x05, 0xcd, 0x43, 0x6e, 0xa6, 0x27, 0x38, 0x1e, 0x48, 0xe3, 0x69, 0x58, 0x91, 0x17, 0x5a, 0xc8, 0xed, 0xe9, 0x16, 0x9d, 0xdf, 0x57, 0x3b, 0x66, 0x72, 0x6c, 0x28, 0x13, 0x22, 0x77, 0xbe, 0xda, 0x84, 0xbb, 0x47, 0xf2, 0x79, 0x2b, 0x41, 0x11, 0x3a, 0x0d, 0x2a, 0xca, 0x71, 0x08, 0x46, 0x18, 0xf5, 0x5d, 0xaa, 0xe5, 0x5f, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_3161 = { .name = "ecdh_secp521r1_3161", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3161_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3161_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3161_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 678 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3162 for ECDH, tcId is 679 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3162_peerpubkey[] = { 0x00, 0x77, 0xfe, 0x79, 0x58, 0x11, 0x95, 0x35, 0xca, 0x6c, 0x1a, 0x7c, 0x87, 0xbb, 0x4d, 0xc9, 0xb9, 0x36, 0x67, 0x8a, 0xb3, 0xb7, 0x57, 0xe7, 0x81, 0x69, 0x38, 0xbc, 0x85, 0x76, 0x43, 0x60, 0x6e, 0x61, 0x64, 0x7d, 0x23, 0x1b, 0x9d, 0xad, 0x3e, 0x03, 0xfc, 0x4d, 0xd2, 0x9a, 0xce, 0x5f, 0xc8, 0x23, 0xe1, 0x5f, 0x34, 0x64, 0xd8, 0xe2, 0x36, 0xd5, 0x86, 0x2b, 0x1f, 0x62, 0x80, 0xc8, 0x36, 0x92, 0x00, 0x61, 0xba, 0x73, 0x6c, 0x11, 0xff, 0xa6, 0xd0, 0xfa, 0xe6, 0xbc, 0x8f, 0x3e, 0x66, 0xba, 0xbd, 0x3c, 0x6d, 0x79, 0xb8, 0x9e, 0xe6, 0x39, 0x45, 0x9e, 0xc6, 0x5a, 0x71, 0xf1, 0x2e, 0xab, 0xcd, 0xac, 0xa4, 0x47, 0xa9, 0x93, 0x12, 0x1d, 0xc6, 0x3d, 0xde, 0x6a, 0xe0, 0xcc, 0xeb, 0xe4, 0x15, 0xf4, 0xbf, 0xe6, 0x0f, 0xe3, 0xfe, 0xc3, 0xd2, 0xf4, 0x8a, 0x08, 0x4b, 0x75, 0x9f, 0x07, 0x8a, 0xc4, }; static const unsigned char ecdh_secp521r1_3162_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3162_sharedsecret[] = { 0x01, 0x40, 0x95, 0x2c, 0x27, 0x3a, 0xb5, 0x12, 0xe3, 0xa5, 0x89, 0x34, 0xe3, 0x75, 0x4f, 0x27, 0x24, 0x63, 0x40, 0x7e, 0x61, 0x89, 0xb9, 0xc1, 0xe2, 0x59, 0xc2, 0x7f, 0x6d, 0x43, 0x3c, 0x48, 0x27, 0x53, 0x2d, 0xf6, 0x27, 0x74, 0x5a, 0xcd, 0xa6, 0x4f, 0xd1, 0x79, 0x93, 0x50, 0x8b, 0xfd, 0xef, 0x54, 0x71, 0x1f, 0x57, 0x5c, 0xff, 0xad, 0x61, 0xc7, 0x29, 0xe8, 0xd6, 0xdd, 0x87, 0x84, 0x20, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3162 = { .name = "ecdh_secp521r1_3162", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3162_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3162_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3162_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 679 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3163 for ECDH, tcId is 680 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3163_peerpubkey[] = { 0x01, 0x1d, 0x3f, 0xf1, 0x4f, 0x89, 0x06, 0xdb, 0x60, 0xc7, 0xbc, 0x09, 0xc7, 0x86, 0xbe, 0x68, 0x47, 0x76, 0x8b, 0x86, 0x84, 0x95, 0x7b, 0xf3, 0x92, 0x8c, 0x55, 0x6b, 0xf5, 0xce, 0x7a, 0x8c, 0xc8, 0x2f, 0x9a, 0xb0, 0xe6, 0x3b, 0x4b, 0xd7, 0xeb, 0x87, 0x76, 0x7b, 0x3d, 0xb2, 0x62, 0x49, 0x57, 0xc3, 0xf1, 0x03, 0xe8, 0x7b, 0x5c, 0x19, 0x7d, 0xc8, 0xc6, 0xd2, 0x50, 0x73, 0x33, 0xea, 0x56, 0x9d, 0x00, 0x4a, 0xb9, 0xee, 0xee, 0xab, 0x95, 0x00, 0x86, 0xe0, 0x30, 0xfc, 0x60, 0xb6, 0xb2, 0xe4, 0x79, 0x73, 0x58, 0x2a, 0x28, 0x2e, 0x3b, 0x01, 0x9e, 0x62, 0x74, 0x4f, 0x19, 0xc6, 0x0c, 0xa0, 0x20, 0x8e, 0x3a, 0x53, 0x7d, 0x6c, 0xa3, 0x53, 0x2c, 0x59, 0xa7, 0x7c, 0x54, 0x0b, 0xce, 0x03, 0x99, 0x98, 0x87, 0x48, 0x3d, 0xdd, 0xdf, 0xd5, 0x24, 0xb6, 0xf9, 0xd7, 0xbf, 0xb6, 0xb1, 0x13, 0x9b, 0xba, }; static const unsigned char ecdh_secp521r1_3163_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3163_sharedsecret[] = { 0x00, 0x1a, 0x3a, 0x43, 0x43, 0xa4, 0x29, 0x5b, 0x07, 0xd4, 0xb2, 0x8f, 0x71, 0x69, 0x7c, 0xaf, 0x7e, 0x36, 0x3e, 0x2f, 0x3c, 0xa2, 0x05, 0xeb, 0xb8, 0x28, 0xc4, 0x4d, 0xeb, 0x2f, 0x5b, 0xb3, 0xd9, 0x51, 0x16, 0xf3, 0x6e, 0x25, 0xe9, 0x0e, 0xb0, 0x04, 0x24, 0xc9, 0x88, 0x0b, 0x45, 0x53, 0x55, 0x4f, 0xf0, 0x1f, 0x38, 0xb5, 0x2c, 0xb3, 0x4d, 0xa6, 0x43, 0x20, 0x7d, 0x6f, 0x29, 0x31, 0x2f, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_3163 = { .name = "ecdh_secp521r1_3163", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3163_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3163_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3163_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 680 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3164 for ECDH, tcId is 681 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3164_peerpubkey[] = { 0x00, 0x9c, 0x9e, 0xb4, 0xcc, 0x6b, 0xed, 0x68, 0x9d, 0xa8, 0x15, 0xf0, 0x5e, 0x3c, 0xcd, 0x26, 0x75, 0x47, 0x3c, 0x42, 0x7d, 0x31, 0x15, 0x8f, 0x12, 0x10, 0xfd, 0x8a, 0x6a, 0xfc, 0xfb, 0x27, 0x29, 0x71, 0xef, 0x0a, 0x06, 0x96, 0xe4, 0x8f, 0xc0, 0x1e, 0xd9, 0xd8, 0x2c, 0x9b, 0x1d, 0x4b, 0xe0, 0x86, 0xfa, 0x5a, 0x13, 0x63, 0x70, 0x27, 0x80, 0x83, 0x8d, 0xa4, 0xfb, 0xd6, 0x48, 0x15, 0x36, 0xd3, 0x00, 0xb3, 0x87, 0xbd, 0xba, 0x82, 0xa5, 0xfe, 0x57, 0x73, 0x2e, 0xbe, 0xd2, 0x6a, 0x48, 0x7d, 0x03, 0x15, 0x72, 0xc2, 0x23, 0x40, 0x3c, 0x06, 0x30, 0x39, 0x61, 0x7f, 0x8e, 0x5c, 0x27, 0x02, 0xf6, 0x02, 0xe4, 0xb8, 0x75, 0x24, 0xf2, 0x98, 0x39, 0x2a, 0xe1, 0xd5, 0x86, 0x2f, 0xa0, 0xff, 0x99, 0x2e, 0x51, 0xfc, 0xe7, 0xf1, 0x45, 0x7a, 0x09, 0x91, 0xbf, 0x25, 0xf6, 0x6c, 0xf8, 0x45, 0x63, 0x9e, }; static const unsigned char ecdh_secp521r1_3164_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3164_sharedsecret[] = { 0x00, 0x10, 0x3e, 0xda, 0x70, 0x7b, 0x4d, 0x5e, 0x9a, 0x4a, 0xdc, 0x17, 0xb8, 0x8c, 0xc3, 0x41, 0x96, 0x67, 0x98, 0xb6, 0x4c, 0x24, 0x2c, 0xd1, 0x3a, 0xbd, 0xf3, 0x19, 0xb7, 0x7c, 0xb9, 0xef, 0x2f, 0x06, 0x81, 0x6e, 0xe8, 0x20, 0x89, 0x82, 0x35, 0x19, 0x8f, 0x62, 0x07, 0x1e, 0xe8, 0xb5, 0xc1, 0x73, 0x5e, 0x28, 0x8d, 0xd7, 0x5b, 0xb0, 0xe5, 0xd5, 0x47, 0x92, 0x87, 0xa0, 0x2d, 0x21, 0xe8, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_3164 = { .name = "ecdh_secp521r1_3164", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3164_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3164_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3164_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 681 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3165 for ECDH, tcId is 682 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3165_peerpubkey[] = { 0x01, 0x99, 0x3d, 0x74, 0xf0, 0xa4, 0xa1, 0x2d, 0x28, 0x04, 0xbf, 0x9e, 0x25, 0x75, 0x2f, 0xab, 0x9d, 0xc0, 0xae, 0x60, 0xab, 0xc6, 0x77, 0x2d, 0xfe, 0x10, 0xaf, 0xb0, 0x56, 0xb3, 0x26, 0x1f, 0x14, 0xfc, 0x51, 0x58, 0x4b, 0xaf, 0x25, 0x63, 0x40, 0xb3, 0x65, 0x21, 0x20, 0xf2, 0x4f, 0xac, 0x70, 0x0b, 0x72, 0x9d, 0xed, 0xec, 0x97, 0xb4, 0x21, 0xa1, 0xe9, 0x31, 0xc1, 0x7c, 0x52, 0x8d, 0x5a, 0x43, 0x00, 0x90, 0x3f, 0x97, 0x78, 0x2e, 0xc1, 0xc5, 0xaa, 0xcd, 0x7c, 0x3a, 0xb0, 0x20, 0x82, 0xd7, 0xa2, 0xf6, 0x31, 0xd9, 0x94, 0x4d, 0xc5, 0x2c, 0x9a, 0xd4, 0xe0, 0x25, 0x8a, 0x89, 0x9e, 0xfb, 0x33, 0xbd, 0x81, 0x06, 0x8a, 0xd4, 0x3d, 0x7d, 0xc6, 0x43, 0xb4, 0xd7, 0xf2, 0x39, 0xa7, 0xac, 0x42, 0xa2, 0x6f, 0x4d, 0x27, 0x80, 0x21, 0x5a, 0x68, 0x49, 0x5f, 0x79, 0xed, 0xa8, 0x1e, 0x8e, 0xad, 0x64, }; static const unsigned char ecdh_secp521r1_3165_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3165_sharedsecret[] = { 0x01, 0x08, 0x7a, 0xd9, 0x7d, 0x71, 0x21, 0x92, 0x8c, 0x8e, 0x35, 0xe2, 0xfe, 0x91, 0x5f, 0x8c, 0x90, 0xf3, 0x45, 0x0d, 0xee, 0x09, 0xd3, 0xf6, 0x76, 0x1c, 0x29, 0x04, 0x26, 0xc7, 0x43, 0x18, 0xe8, 0x8f, 0xd0, 0x44, 0x64, 0xc0, 0xfc, 0xc0, 0x43, 0x21, 0x71, 0x66, 0x7b, 0x57, 0x1d, 0x83, 0x4a, 0xe7, 0x7e, 0xcc, 0xa8, 0xa4, 0x10, 0x37, 0x96, 0x85, 0xd3, 0x0b, 0x8c, 0xd2, 0x8d, 0xc0, 0x4b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3165 = { .name = "ecdh_secp521r1_3165", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3165_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3165_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3165_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 682 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3166 for ECDH, tcId is 683 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3166_peerpubkey[] = { 0x01, 0x07, 0xd8, 0xb6, 0x3b, 0xc0, 0x95, 0x85, 0x10, 0xed, 0xda, 0xb9, 0xf1, 0x1f, 0xa3, 0x5a, 0xe4, 0xe5, 0xd9, 0x7c, 0x92, 0x30, 0x40, 0x38, 0xd8, 0xec, 0x27, 0xf6, 0xe9, 0x70, 0x05, 0xd0, 0x14, 0x3e, 0x96, 0x9c, 0x54, 0x19, 0xe8, 0x2e, 0xba, 0x50, 0x93, 0x36, 0xe2, 0x34, 0x98, 0xc5, 0xb7, 0x3e, 0x8f, 0x0b, 0x21, 0xe3, 0xd9, 0xf5, 0xcb, 0x56, 0x16, 0x09, 0x66, 0x9e, 0xf6, 0x78, 0xc7, 0xd4, 0x01, 0x96, 0xc5, 0x35, 0xb6, 0x23, 0xbe, 0x6e, 0xfa, 0x50, 0x4e, 0x96, 0x9e, 0xa7, 0x1c, 0xb9, 0x25, 0x28, 0x76, 0x08, 0x74, 0x0d, 0x04, 0xac, 0xb3, 0x42, 0xb4, 0x13, 0x58, 0x82, 0x78, 0x3d, 0xb8, 0xd2, 0x55, 0xa6, 0xd5, 0x56, 0xff, 0xc1, 0x65, 0x24, 0xba, 0xbe, 0xee, 0x06, 0xd1, 0xf2, 0x80, 0xab, 0x81, 0x71, 0x84, 0x8e, 0x7d, 0xb5, 0x4b, 0x76, 0xa3, 0xb3, 0x1e, 0x41, 0x57, 0x21, 0x96, 0x14, }; static const unsigned char ecdh_secp521r1_3166_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3166_sharedsecret[] = { 0x00, 0x74, 0xc3, 0x32, 0xbe, 0xc2, 0x02, 0x83, 0x72, 0xda, 0xc8, 0x2b, 0xb7, 0x4c, 0x3f, 0x3b, 0x4b, 0xd0, 0xf0, 0xa6, 0x52, 0x1d, 0xfd, 0xf0, 0xcc, 0xe8, 0x77, 0xb1, 0xa9, 0x9e, 0x50, 0x6e, 0xf0, 0xe4, 0xfd, 0x9b, 0xce, 0xfd, 0x33, 0x65, 0x42, 0x8f, 0x25, 0x7e, 0xd1, 0x59, 0x5d, 0xce, 0xdb, 0xef, 0xe9, 0x99, 0x28, 0xe7, 0xfa, 0x7a, 0xf8, 0x91, 0xfd, 0xc1, 0xb6, 0xff, 0x9d, 0xe1, 0x25, 0x36, }; static const wycheproof_ecdh_test ecdh_secp521r1_3166 = { .name = "ecdh_secp521r1_3166", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3166_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3166_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3166_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 683 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3167 for ECDH, tcId is 684 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3167_peerpubkey[] = { 0x01, 0xd3, 0xf5, 0x70, 0x4d, 0xbc, 0x67, 0xfe, 0x3e, 0x9e, 0xc3, 0xa0, 0x26, 0x12, 0xed, 0xf0, 0x4a, 0x82, 0xfc, 0xf9, 0xd5, 0xa4, 0x1c, 0x5a, 0x33, 0x0f, 0x4d, 0xc6, 0x5b, 0x7c, 0x1e, 0x8a, 0x92, 0x7f, 0xed, 0xf3, 0x1a, 0x52, 0xb2, 0x8b, 0xfe, 0x2b, 0x84, 0xe0, 0x8f, 0x9d, 0xd9, 0x8a, 0x26, 0x89, 0x44, 0x05, 0x53, 0xdd, 0x89, 0x19, 0xfd, 0xdd, 0x56, 0xed, 0x73, 0x6b, 0x9d, 0x06, 0x4c, 0xc3, 0x00, 0x01, 0x79, 0xaa, 0xda, 0x23, 0x20, 0x04, 0x9f, 0x18, 0x43, 0x0d, 0x32, 0xa6, 0x58, 0x89, 0xab, 0x5a, 0x98, 0x40, 0xff, 0x43, 0x38, 0x8f, 0x7e, 0x22, 0x53, 0xbe, 0x3e, 0x0e, 0xa4, 0x1d, 0x6a, 0xbe, 0x9e, 0x33, 0xb0, 0xc8, 0xa8, 0x05, 0xc8, 0x0c, 0x52, 0xfa, 0x66, 0xda, 0xb4, 0x5f, 0x7e, 0xd2, 0x04, 0x39, 0x00, 0xe3, 0xad, 0xa8, 0xd0, 0x25, 0x64, 0x8c, 0x48, 0x22, 0x74, 0x3b, 0x51, 0x94, }; static const unsigned char ecdh_secp521r1_3167_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3167_sharedsecret[] = { 0x01, 0x8d, 0x9f, 0x7f, 0x73, 0x20, 0x23, 0xd2, 0xf8, 0x70, 0x97, 0xc6, 0xf5, 0x8a, 0xfc, 0x7c, 0xee, 0x91, 0xc6, 0x7b, 0x3d, 0xf3, 0xb3, 0x18, 0x51, 0x7b, 0xbb, 0x40, 0x26, 0x64, 0xf5, 0x82, 0x94, 0x08, 0xd9, 0x11, 0xb0, 0xa9, 0xb4, 0x1c, 0xb2, 0xf7, 0xdc, 0xb9, 0x6d, 0x4f, 0xba, 0x36, 0xd9, 0x0f, 0x02, 0x75, 0xe0, 0xbf, 0x6b, 0x12, 0x53, 0xd1, 0x7c, 0xe3, 0xf2, 0x67, 0xa7, 0xb5, 0x6b, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_3167 = { .name = "ecdh_secp521r1_3167", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3167_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3167_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3167_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 684 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3168 for ECDH, tcId is 685 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3168_peerpubkey[] = { 0x00, 0xd3, 0xdc, 0x62, 0xa0, 0x70, 0xaf, 0x81, 0xad, 0x1d, 0xbe, 0x02, 0xff, 0x07, 0x58, 0x68, 0xaa, 0x35, 0xe3, 0xc3, 0xb5, 0x55, 0xf5, 0x8d, 0xa4, 0x48, 0x5e, 0x15, 0xbd, 0xe7, 0x89, 0xb6, 0x80, 0x2b, 0x57, 0x98, 0x87, 0xd7, 0x53, 0xaa, 0x13, 0x58, 0x91, 0x67, 0xdd, 0x26, 0xb1, 0x24, 0x89, 0x73, 0x4e, 0x80, 0xa3, 0x49, 0x41, 0xc6, 0x38, 0xc1, 0x02, 0xfa, 0x5c, 0x19, 0x9e, 0x4d, 0x11, 0x18, 0x01, 0x90, 0xa3, 0x53, 0x41, 0x20, 0xb8, 0xff, 0x4c, 0xf7, 0xa9, 0x38, 0x61, 0x85, 0xcd, 0x2c, 0x7a, 0xee, 0x66, 0x67, 0xf1, 0x30, 0xcf, 0xf1, 0xb0, 0x60, 0x24, 0x2d, 0x34, 0x00, 0x29, 0xc1, 0x5e, 0xb7, 0xd5, 0x21, 0xe1, 0xf6, 0xa9, 0x66, 0x3f, 0x19, 0xb2, 0xfe, 0x74, 0x0b, 0x43, 0x84, 0xbf, 0x34, 0x80, 0xe7, 0x6c, 0xbd, 0xee, 0x1d, 0xa7, 0x7b, 0x8f, 0x1c, 0x45, 0xb9, 0xe9, 0x26, 0x88, 0x4f, }; static const unsigned char ecdh_secp521r1_3168_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3168_sharedsecret[] = { 0x01, 0x6f, 0x12, 0x95, 0x31, 0xc6, 0x71, 0x38, 0x80, 0x10, 0xd4, 0x1c, 0x93, 0x4a, 0x25, 0x92, 0xd5, 0x7d, 0xe3, 0x37, 0x6d, 0xe7, 0xab, 0xfd, 0x32, 0xdb, 0x1b, 0x42, 0xb3, 0x4f, 0xdb, 0x13, 0xe5, 0xc8, 0x37, 0x1d, 0xb8, 0xc3, 0x61, 0x01, 0xea, 0x35, 0xe2, 0x6d, 0x04, 0xe1, 0x9b, 0xa8, 0x91, 0xb0, 0x81, 0x6a, 0x82, 0x1c, 0x51, 0x03, 0xa1, 0xf6, 0x8c, 0x9d, 0xc3, 0x99, 0xb1, 0xe4, 0xed, 0x50, }; static const wycheproof_ecdh_test ecdh_secp521r1_3168 = { .name = "ecdh_secp521r1_3168", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3168_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3168_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3168_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 685 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3169 for ECDH, tcId is 686 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3169_peerpubkey[] = { 0x00, 0xd5, 0x1e, 0x31, 0x63, 0x49, 0x26, 0x26, 0x9b, 0x2a, 0x08, 0x85, 0xc8, 0x28, 0xa5, 0xab, 0x76, 0xb1, 0xfe, 0x4e, 0x5e, 0x3d, 0x94, 0x1d, 0x96, 0x78, 0xe4, 0xbb, 0x07, 0x90, 0x02, 0xbd, 0x3c, 0x8e, 0x6c, 0x1f, 0x15, 0x7e, 0x63, 0xc2, 0x75, 0x73, 0x1d, 0x57, 0x37, 0x91, 0x42, 0xa8, 0xdf, 0x95, 0x87, 0xd1, 0x0b, 0x75, 0xff, 0xe6, 0x2e, 0xb4, 0x53, 0x0e, 0x75, 0xd7, 0x63, 0x40, 0x26, 0xd7, 0x00, 0x07, 0x80, 0xe8, 0xbc, 0xea, 0x8d, 0x13, 0x99, 0x94, 0x3f, 0x5b, 0xd0, 0xf4, 0xfd, 0x18, 0x37, 0xdb, 0x2f, 0x9b, 0xe7, 0xfc, 0x46, 0x69, 0xd0, 0x42, 0x2c, 0x42, 0x8c, 0x22, 0x3d, 0xa5, 0x3b, 0x95, 0x66, 0xef, 0x0d, 0x27, 0xbb, 0x64, 0xca, 0xe0, 0x1d, 0x9f, 0x94, 0x9d, 0x1a, 0x74, 0x4e, 0x8b, 0x0e, 0x79, 0x27, 0x80, 0xd1, 0xa2, 0x43, 0xa0, 0x79, 0x39, 0x54, 0x18, 0x16, 0x6d, 0x17, 0x6b, }; static const unsigned char ecdh_secp521r1_3169_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3169_sharedsecret[] = { 0x00, 0xf5, 0x55, 0x04, 0xf1, 0x71, 0x4e, 0x07, 0x70, 0x2a, 0xcb, 0x1c, 0x59, 0x4d, 0xd2, 0x46, 0x60, 0x3f, 0xb7, 0x1f, 0x11, 0xe4, 0x9d, 0xe5, 0x90, 0x6a, 0xcf, 0x6d, 0xc3, 0xbe, 0xf6, 0xa2, 0x40, 0x2e, 0x1c, 0x5d, 0xad, 0x88, 0x31, 0xaa, 0x18, 0x89, 0x45, 0x31, 0xca, 0xe0, 0x87, 0xa2, 0xdd, 0xa4, 0x0f, 0xe2, 0xdb, 0x58, 0x2d, 0x3c, 0x20, 0xd6, 0x02, 0xaf, 0x62, 0xdc, 0x12, 0xb7, 0xe2, 0x95, }; static const wycheproof_ecdh_test ecdh_secp521r1_3169 = { .name = "ecdh_secp521r1_3169", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3169_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3169_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3169_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 686 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3170 for ECDH, tcId is 687 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3170_peerpubkey[] = { 0x01, 0x9d, 0x77, 0x70, 0xd5, 0xd9, 0xdb, 0xe5, 0x07, 0x86, 0xec, 0x90, 0x9d, 0x07, 0x1f, 0x12, 0xd0, 0xb6, 0xd1, 0x0c, 0x8b, 0x1d, 0xdb, 0xf5, 0x46, 0xd0, 0xe6, 0xf4, 0xa3, 0xff, 0x7e, 0x04, 0x76, 0xf0, 0x44, 0x72, 0xee, 0xe3, 0x3d, 0x87, 0x75, 0x58, 0x65, 0x04, 0xf0, 0x05, 0xe8, 0x23, 0x29, 0xcd, 0x6b, 0x6c, 0xae, 0x3f, 0x63, 0x01, 0x2a, 0x37, 0xab, 0x16, 0xc4, 0x7f, 0x27, 0xce, 0xb3, 0x6c, 0x00, 0x9d, 0x6b, 0x67, 0x0e, 0xb3, 0x3f, 0xef, 0xca, 0xfa, 0x11, 0x85, 0x7f, 0x5c, 0x3b, 0xab, 0x4f, 0xbe, 0x41, 0xc1, 0x74, 0x65, 0x0e, 0x25, 0xe4, 0x9c, 0x65, 0xac, 0x63, 0xcd, 0xd2, 0xc2, 0xa8, 0xf8, 0xf6, 0x05, 0xd7, 0xe2, 0x67, 0xec, 0x20, 0x23, 0xf3, 0x99, 0x96, 0xb8, 0xe8, 0x25, 0xdd, 0x04, 0x31, 0x82, 0x21, 0x08, 0xe2, 0xc0, 0x1f, 0xf0, 0x77, 0x57, 0xd2, 0x49, 0x58, 0x05, 0xb4, 0x4b, }; static const unsigned char ecdh_secp521r1_3170_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3170_sharedsecret[] = { 0x01, 0xb6, 0x3a, 0x08, 0xa8, 0xfe, 0xa8, 0x20, 0xed, 0x8c, 0x01, 0xf0, 0xb8, 0x48, 0x25, 0x49, 0xa1, 0x36, 0x06, 0xbd, 0x95, 0xa7, 0xf3, 0x68, 0x9f, 0xdf, 0xca, 0x6c, 0x3f, 0x4e, 0x3d, 0x34, 0x9c, 0x7d, 0x41, 0x84, 0x7f, 0x13, 0x4d, 0x06, 0xfa, 0xbc, 0x01, 0x2b, 0xff, 0xe9, 0x8c, 0xc6, 0xe1, 0x6e, 0xf5, 0x73, 0xb5, 0x34, 0xb3, 0xd6, 0x47, 0x92, 0xd1, 0x2d, 0x0c, 0xd3, 0xf1, 0xcc, 0xf1, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3170 = { .name = "ecdh_secp521r1_3170", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3170_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3170_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3170_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 687 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3171 for ECDH, tcId is 688 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3171_peerpubkey[] = { 0x01, 0xf3, 0x83, 0xca, 0x1f, 0xa8, 0xfb, 0xa4, 0xec, 0x01, 0x31, 0x92, 0x7e, 0x66, 0x88, 0xa3, 0x74, 0xf1, 0xfb, 0xf0, 0x4f, 0x2e, 0x79, 0x3b, 0x6b, 0x06, 0x31, 0xd1, 0x9c, 0x24, 0xec, 0x6c, 0xd7, 0x5c, 0x52, 0xd0, 0xb1, 0x9e, 0xc2, 0x7c, 0x37, 0x7a, 0x4a, 0xc4, 0x83, 0x4b, 0xc9, 0x90, 0x01, 0x62, 0x42, 0x04, 0x55, 0x21, 0x54, 0xbe, 0xa2, 0x98, 0x56, 0x63, 0x00, 0x64, 0x3c, 0x63, 0x28, 0x7c, 0x00, 0xbd, 0x95, 0x61, 0x7d, 0x16, 0x55, 0xdc, 0xcc, 0x5b, 0x8a, 0xd5, 0x0f, 0xe7, 0xb1, 0xc0, 0x0b, 0xd5, 0x11, 0x1b, 0x00, 0x33, 0x8d, 0x6e, 0x59, 0x87, 0xa0, 0x74, 0x2f, 0x60, 0x8b, 0x74, 0xa9, 0x35, 0x02, 0xb1, 0x26, 0x0f, 0xd1, 0x93, 0xb3, 0xbd, 0x3a, 0x90, 0xc8, 0x43, 0xc1, 0x34, 0x4a, 0xf1, 0x63, 0x87, 0x73, 0x18, 0x90, 0x36, 0x63, 0x7c, 0x3d, 0x75, 0x04, 0xd5, 0x0e, 0x80, 0x65, 0x55, }; static const unsigned char ecdh_secp521r1_3171_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3171_sharedsecret[] = { 0x01, 0x53, 0x53, 0xc0, 0x8c, 0xa7, 0xc4, 0x84, 0xe2, 0x7a, 0x3e, 0x04, 0xc1, 0xd8, 0xdf, 0xee, 0xec, 0xac, 0x17, 0x3c, 0x2b, 0x6e, 0x2a, 0x5d, 0xbc, 0xb0, 0xda, 0x52, 0x23, 0xe6, 0x34, 0xbd, 0x2d, 0x52, 0x7d, 0x8b, 0x34, 0xba, 0x0e, 0x59, 0x2c, 0xaf, 0x9d, 0x62, 0x34, 0xfc, 0x54, 0x45, 0x2c, 0x5f, 0xb5, 0x05, 0x83, 0x3a, 0x97, 0x70, 0x8c, 0xcb, 0x8d, 0xeb, 0xc4, 0xdf, 0x5d, 0xca, 0xcb, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3171 = { .name = "ecdh_secp521r1_3171", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3171_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3171_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3171_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 688 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3172 for ECDH, tcId is 689 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3172_peerpubkey[] = { 0x00, 0x5d, 0x11, 0xff, 0xc0, 0x3c, 0x08, 0xae, 0x32, 0x3c, 0xb9, 0x38, 0xfb, 0x6f, 0x2a, 0x33, 0xef, 0xbc, 0xbd, 0x61, 0xa6, 0x58, 0x40, 0xc3, 0x3b, 0x20, 0x72, 0x65, 0xec, 0x8a, 0xdd, 0x07, 0x64, 0xd5, 0x9e, 0x58, 0x40, 0xa8, 0x5a, 0x06, 0x2b, 0xfb, 0x1f, 0x70, 0x55, 0x59, 0xc1, 0x95, 0x4a, 0xee, 0x96, 0xe2, 0x3c, 0x88, 0x8e, 0x0a, 0xb6, 0x70, 0x4f, 0x36, 0x2b, 0xf5, 0xc5, 0x88, 0x82, 0xf7, 0x01, 0x3d, 0x7a, 0x4a, 0xf3, 0xb3, 0xa5, 0x8a, 0xd1, 0x96, 0x12, 0xa1, 0xc3, 0x71, 0x23, 0x43, 0x88, 0xd8, 0xc0, 0x6f, 0x53, 0xf0, 0x3b, 0x39, 0xe8, 0x4c, 0x22, 0x55, 0x7c, 0xc6, 0x64, 0x1a, 0x55, 0x80, 0x68, 0x7b, 0xb0, 0x86, 0x32, 0xee, 0xd3, 0x1e, 0x0c, 0xc1, 0x14, 0xd1, 0x79, 0xda, 0x68, 0x65, 0x37, 0x6a, 0x9d, 0x9b, 0x0e, 0xec, 0x67, 0xc1, 0xc5, 0x98, 0xee, 0x97, 0x2b, 0x77, 0x1b, 0x6e, }; static const unsigned char ecdh_secp521r1_3172_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3172_sharedsecret[] = { 0x01, 0x74, 0x0f, 0x76, 0xc8, 0xd2, 0xbb, 0xd7, 0x17, 0x9f, 0xbe, 0xd6, 0x14, 0x12, 0x3f, 0xe2, 0xfd, 0xbb, 0x85, 0xfe, 0x82, 0x20, 0x30, 0x0b, 0x40, 0xcb, 0xbb, 0x53, 0x9d, 0x47, 0x54, 0xc5, 0xef, 0x63, 0xf7, 0xb2, 0xbc, 0x27, 0xe1, 0x29, 0x47, 0x8e, 0x7a, 0xce, 0xec, 0x83, 0x47, 0x13, 0xce, 0xba, 0x27, 0xe2, 0xf6, 0x79, 0x53, 0x44, 0x37, 0x2d, 0x3c, 0x4d, 0x93, 0x5a, 0x9c, 0x9e, 0x46, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_3172 = { .name = "ecdh_secp521r1_3172", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3172_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3172_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3172_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 689 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3173 for ECDH, tcId is 690 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3173_peerpubkey[] = { 0x01, 0xe9, 0xe3, 0x95, 0xfe, 0x1b, 0x0b, 0x16, 0x62, 0x25, 0x6a, 0x4b, 0x59, 0x53, 0xe9, 0x89, 0x71, 0xdc, 0xee, 0xe0, 0x98, 0xb3, 0x4f, 0x9f, 0xaa, 0x87, 0xc0, 0x7a, 0x15, 0xe2, 0xd9, 0x61, 0x8e, 0x71, 0x3f, 0x98, 0xcc, 0x4f, 0x8e, 0x89, 0xd6, 0x6e, 0x06, 0xbf, 0x7f, 0x6b, 0x5b, 0x2e, 0x01, 0x24, 0x91, 0x85, 0x1b, 0x11, 0xd7, 0x11, 0x41, 0x38, 0x5f, 0xa9, 0xb4, 0x33, 0x47, 0xc4, 0x82, 0x3f, 0x00, 0x82, 0x05, 0xa3, 0x91, 0xbb, 0x03, 0x75, 0x0c, 0x79, 0x51, 0xf4, 0x10, 0x69, 0x1d, 0xd4, 0x2c, 0xf3, 0xd7, 0x1d, 0xf5, 0xf7, 0x6b, 0x98, 0xc0, 0xd0, 0x82, 0x46, 0x0c, 0x21, 0xf9, 0x63, 0x61, 0x01, 0x39, 0x52, 0x22, 0x4d, 0xda, 0x74, 0x63, 0xcd, 0xe1, 0x6f, 0x24, 0x2c, 0x34, 0xc6, 0x26, 0x73, 0xd9, 0x15, 0x6a, 0xed, 0x72, 0x60, 0xe7, 0xb0, 0x17, 0x57, 0xee, 0xe6, 0xbe, 0xa6, 0x0e, 0xe5, }; static const unsigned char ecdh_secp521r1_3173_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3173_sharedsecret[] = { 0x01, 0x73, 0x42, 0x53, 0xe8, 0xd5, 0xe9, 0x30, 0x8c, 0xd5, 0x1b, 0xf0, 0x41, 0x04, 0xee, 0x08, 0xd1, 0x63, 0xac, 0xb5, 0x90, 0xb1, 0xa9, 0x55, 0x89, 0x64, 0x47, 0xb8, 0xa2, 0x55, 0xfc, 0xd3, 0xc1, 0x25, 0x6b, 0x4e, 0x86, 0xb9, 0xf3, 0x16, 0xef, 0xf4, 0xd7, 0x61, 0x3b, 0x38, 0x29, 0xf5, 0x78, 0x59, 0x61, 0xed, 0xa4, 0xee, 0x9e, 0xdd, 0xed, 0xa4, 0xdb, 0x4d, 0x60, 0xaf, 0x19, 0xe3, 0x19, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_3173 = { .name = "ecdh_secp521r1_3173", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3173_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3173_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3173_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 690 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3174 for ECDH, tcId is 691 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3174_peerpubkey[] = { 0x01, 0x64, 0x01, 0x6e, 0x2b, 0xc3, 0x6f, 0xa9, 0xef, 0x56, 0x71, 0x3d, 0xa8, 0x9a, 0xcf, 0x0b, 0x04, 0x80, 0x82, 0xdc, 0x63, 0x11, 0x56, 0x74, 0x0e, 0xc8, 0xec, 0xd2, 0x2c, 0x12, 0x38, 0x48, 0x83, 0x71, 0x28, 0x43, 0x45, 0xa9, 0x6e, 0xce, 0xf6, 0xdc, 0xdd, 0xa2, 0xe1, 0x3b, 0x4f, 0x2b, 0x94, 0x91, 0xc3, 0x86, 0x27, 0x48, 0x97, 0xfa, 0x13, 0xc6, 0xb2, 0x31, 0x3c, 0x50, 0x00, 0x41, 0x97, 0x55, 0x01, 0xc9, 0x0a, 0x40, 0x54, 0x31, 0x00, 0x55, 0x32, 0x37, 0x7c, 0x20, 0x4b, 0xac, 0x9a, 0x0d, 0x9d, 0x22, 0x65, 0x42, 0x58, 0x4f, 0xbe, 0x3c, 0x89, 0xf7, 0x85, 0xc7, 0x08, 0xa2, 0x33, 0x99, 0xa1, 0xbd, 0x14, 0xda, 0xa3, 0xe6, 0x8c, 0xc7, 0x6a, 0xed, 0x9f, 0x5f, 0xd4, 0xbf, 0xbe, 0x4e, 0xec, 0xab, 0x4a, 0x7a, 0xd2, 0xa0, 0x01, 0x70, 0xda, 0xd3, 0x7e, 0x6f, 0xe5, 0x6e, 0x92, 0x5e, 0x6b, 0xfe, }; static const unsigned char ecdh_secp521r1_3174_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3174_sharedsecret[] = { 0x00, 0x9c, 0x62, 0x34, 0x17, 0x1b, 0x4c, 0x43, 0xf7, 0x9f, 0xf0, 0xad, 0x95, 0x81, 0x2e, 0x36, 0xb0, 0x78, 0x4a, 0xd5, 0x92, 0x53, 0xd2, 0x0e, 0xa0, 0xcb, 0x98, 0x63, 0x3f, 0xb0, 0x63, 0xff, 0xd8, 0xaa, 0x22, 0xa2, 0xdc, 0xba, 0x29, 0xd4, 0x11, 0x6c, 0xd7, 0x07, 0x37, 0xc1, 0xb1, 0xf6, 0xeb, 0xab, 0x47, 0x31, 0xc5, 0xb8, 0xa4, 0x55, 0x78, 0x85, 0x97, 0xa6, 0x07, 0xb5, 0xa4, 0x5b, 0xd5, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_3174 = { .name = "ecdh_secp521r1_3174", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3174_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3174_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3174_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 691 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3175 for ECDH, tcId is 692 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3175_peerpubkey[] = { 0x01, 0xd3, 0x6d, 0x2b, 0x3e, 0xc4, 0x25, 0xa6, 0xc2, 0x50, 0x7c, 0x4d, 0xdf, 0xb5, 0xb4, 0xa1, 0x0e, 0xc4, 0xd4, 0xa1, 0x50, 0xc5, 0xc2, 0xb8, 0x0a, 0x26, 0x3b, 0xad, 0xde, 0xbd, 0x31, 0x98, 0x79, 0x7e, 0x97, 0xed, 0x7d, 0x0c, 0xca, 0x81, 0x8c, 0xf4, 0xdd, 0xd4, 0x7f, 0x61, 0x34, 0xb7, 0xa6, 0xd2, 0xb0, 0xa1, 0x5e, 0xe6, 0x09, 0x73, 0xf9, 0xd7, 0xda, 0x22, 0x0f, 0x62, 0x80, 0x0c, 0x54, 0x67, 0x01, 0x1b, 0xbb, 0x5f, 0x8e, 0x9d, 0xf6, 0x5b, 0x9b, 0x2c, 0x10, 0x5e, 0x4d, 0x8f, 0x6d, 0xbd, 0xc4, 0xf2, 0x3f, 0x25, 0x6b, 0x53, 0xb4, 0x7b, 0xc2, 0x89, 0x2c, 0x29, 0x5e, 0x7c, 0xbd, 0xb4, 0xaa, 0xe8, 0x18, 0x58, 0xba, 0x66, 0x44, 0x32, 0x55, 0x65, 0x9b, 0xea, 0xa3, 0x08, 0xae, 0xa4, 0xc5, 0x09, 0xc9, 0x9d, 0x57, 0x8f, 0xdf, 0xb8, 0x73, 0xf5, 0x1f, 0xf5, 0x36, 0x81, 0xae, 0xa6, 0x22, 0xe0, }; static const unsigned char ecdh_secp521r1_3175_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3175_sharedsecret[] = { 0x01, 0xce, 0xc1, 0xf0, 0x27, 0xa1, 0x0d, 0xe4, 0xa6, 0x90, 0x5e, 0xa3, 0x2f, 0x53, 0x48, 0x51, 0xa2, 0xf2, 0x3d, 0xdc, 0x9e, 0x7e, 0xcd, 0x3d, 0x24, 0xb8, 0xb8, 0x8b, 0xe0, 0x1f, 0x76, 0x39, 0xca, 0xc7, 0x84, 0x7c, 0x9a, 0xbd, 0xbe, 0x74, 0x6c, 0x17, 0x1a, 0x91, 0x3d, 0x67, 0x19, 0xd7, 0xc2, 0xa0, 0xc0, 0x35, 0x9c, 0x40, 0x36, 0x36, 0x0b, 0xe1, 0xe7, 0x5e, 0x8b, 0x2f, 0x7a, 0xaa, 0x67, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3175 = { .name = "ecdh_secp521r1_3175", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3175_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3175_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3175_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 692 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3176 for ECDH, tcId is 693 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3176_peerpubkey[] = { 0x00, 0xdb, 0x63, 0xbd, 0x5a, 0xee, 0x53, 0xbd, 0x63, 0xfc, 0xe0, 0x54, 0x06, 0x3d, 0xc3, 0x64, 0xaa, 0xe4, 0xf3, 0x20, 0xf7, 0xad, 0x2d, 0xf2, 0x94, 0x14, 0x04, 0x31, 0xad, 0x15, 0x50, 0xc7, 0xea, 0xb3, 0x71, 0xa1, 0x3d, 0x4d, 0xbb, 0x78, 0xf6, 0x3d, 0x71, 0x88, 0xe6, 0x1d, 0xc8, 0xe2, 0x68, 0x88, 0x8d, 0x93, 0x19, 0x90, 0x6a, 0x28, 0xf3, 0x60, 0xbf, 0x7c, 0xe8, 0x68, 0xeb, 0x67, 0xd0, 0xc7, 0x00, 0x7d, 0x66, 0x37, 0x11, 0x52, 0x95, 0x4f, 0x48, 0x58, 0x1d, 0xb9, 0x1c, 0x15, 0x33, 0xdd, 0xf3, 0xb1, 0x48, 0xb7, 0xe9, 0x6a, 0x5e, 0x99, 0x64, 0xf7, 0x06, 0xcb, 0x3f, 0x6e, 0xe8, 0x05, 0x79, 0x3f, 0xd7, 0xc5, 0x76, 0x7e, 0x79, 0xf4, 0x26, 0x23, 0x33, 0x08, 0xc8, 0xef, 0xfc, 0x1d, 0xa7, 0x1e, 0xc7, 0x37, 0x44, 0xa4, 0x9a, 0x69, 0xfb, 0x5f, 0x66, 0x24, 0x07, 0xff, 0x54, 0xd9, 0x48, 0x79, }; static const unsigned char ecdh_secp521r1_3176_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3176_sharedsecret[] = { 0x00, 0x5f, 0x90, 0x0e, 0xfb, 0xba, 0xd4, 0x97, 0xee, 0x90, 0x4b, 0x80, 0xfc, 0xe0, 0x70, 0x29, 0xad, 0x3f, 0x97, 0x9c, 0xb3, 0x42, 0x3d, 0xc7, 0xd1, 0x6c, 0x9c, 0xf0, 0x85, 0x3f, 0x89, 0xa4, 0x87, 0xdf, 0xdc, 0x5c, 0xc3, 0x45, 0x30, 0xaf, 0xa8, 0xcc, 0xdf, 0x5a, 0x0e, 0x37, 0x6e, 0x27, 0x8a, 0x09, 0x1b, 0xd4, 0xf6, 0x07, 0x7c, 0x94, 0x1d, 0xed, 0x6f, 0x1b, 0x0f, 0xc8, 0x84, 0x01, 0x00, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3176 = { .name = "ecdh_secp521r1_3176", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3176_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3176_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3176_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 693 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3177 for ECDH, tcId is 694 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3177_peerpubkey[] = { 0x01, 0x56, 0x81, 0xf7, 0x78, 0x6b, 0x77, 0x07, 0x9c, 0x6a, 0xa9, 0xcc, 0xda, 0xa5, 0x8f, 0x39, 0xe9, 0xec, 0x4e, 0x14, 0xe2, 0x4d, 0x1b, 0xb3, 0xf0, 0xd6, 0xcb, 0x56, 0xbf, 0x7b, 0x78, 0x76, 0x1c, 0x3b, 0xf5, 0x8c, 0x7f, 0xb7, 0x6a, 0x22, 0x94, 0x3b, 0xb2, 0x5d, 0xb8, 0x0e, 0xb0, 0xaf, 0x74, 0x10, 0xd6, 0x07, 0x15, 0x4e, 0xf9, 0x27, 0x15, 0x2a, 0x89, 0x21, 0xfd, 0xef, 0xe7, 0x28, 0x8d, 0xba, 0x01, 0xe5, 0xb1, 0x9c, 0x82, 0x7b, 0x28, 0x85, 0x58, 0xda, 0x2d, 0xf5, 0xf9, 0xfc, 0xa3, 0x13, 0x7e, 0xd0, 0x69, 0x40, 0x78, 0xd3, 0xf6, 0x00, 0xaa, 0x7a, 0x49, 0x5f, 0xe2, 0x8f, 0x41, 0x8d, 0x45, 0x8b, 0xc5, 0x52, 0x76, 0xbf, 0x7d, 0x29, 0x69, 0xac, 0x24, 0x29, 0xe2, 0xaf, 0x8d, 0x05, 0xd4, 0x11, 0x2e, 0xdb, 0xe9, 0x3b, 0x04, 0x1f, 0x2d, 0x5d, 0x56, 0xa4, 0xfe, 0xe5, 0xfb, 0x91, 0x8b, 0x69, }; static const unsigned char ecdh_secp521r1_3177_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3177_sharedsecret[] = { 0x01, 0x24, 0xc2, 0x3c, 0x00, 0xd3, 0x03, 0x29, 0x06, 0x56, 0x11, 0x07, 0x5b, 0x02, 0xe5, 0x5c, 0x3c, 0x66, 0x7b, 0xbe, 0x3d, 0x65, 0x16, 0x0f, 0xa1, 0x89, 0x12, 0x8a, 0xf4, 0x55, 0x24, 0x0e, 0xb6, 0x77, 0xa1, 0xee, 0x07, 0xca, 0x87, 0x89, 0xbe, 0x7a, 0x8e, 0xd0, 0x74, 0xce, 0x17, 0x50, 0x4a, 0x59, 0x03, 0xd9, 0xa7, 0x52, 0x68, 0x1a, 0xfe, 0x63, 0x42, 0xb0, 0x54, 0x86, 0x6c, 0xbb, 0xf1, 0x99, }; static const wycheproof_ecdh_test ecdh_secp521r1_3177 = { .name = "ecdh_secp521r1_3177", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3177_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3177_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3177_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 694 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3178 for ECDH, tcId is 695 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3178_peerpubkey[] = { 0x00, 0xb3, 0xe7, 0xc9, 0x77, 0x4c, 0x52, 0x3b, 0xbe, 0xf8, 0x57, 0xd5, 0x9f, 0x8c, 0xce, 0xcd, 0x06, 0x7f, 0xd1, 0x8c, 0x7d, 0x77, 0x77, 0xc8, 0x2c, 0x68, 0x14, 0x6b, 0x33, 0x8e, 0x14, 0xc5, 0xd0, 0x99, 0x8b, 0x3b, 0x96, 0x23, 0x54, 0xd9, 0xb1, 0x07, 0x33, 0x7a, 0xfd, 0x41, 0x37, 0x23, 0x30, 0x47, 0xad, 0xb3, 0x52, 0xb8, 0xb1, 0xe2, 0x15, 0xfc, 0xac, 0x25, 0xf1, 0xe3, 0x39, 0x59, 0x40, 0x77, 0x01, 0x48, 0xe5, 0xce, 0xd5, 0x84, 0x10, 0x18, 0x3d, 0x15, 0xc7, 0x19, 0xf8, 0xae, 0x4c, 0x19, 0xd9, 0x5f, 0x91, 0x0f, 0x35, 0x83, 0xde, 0x6e, 0x0b, 0x63, 0xb9, 0x38, 0xe2, 0xd5, 0xec, 0x67, 0x07, 0x55, 0xdc, 0x24, 0xcb, 0xf0, 0x8f, 0x93, 0x40, 0xf9, 0x14, 0xc5, 0x53, 0x4b, 0xf7, 0xf1, 0x48, 0x39, 0x47, 0xb6, 0xb4, 0x06, 0x26, 0xf1, 0xc7, 0xfe, 0x0e, 0x4d, 0x8e, 0xd8, 0x43, 0x02, 0x7b, 0x14, }; static const unsigned char ecdh_secp521r1_3178_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3178_sharedsecret[] = { 0x01, 0x7a, 0x94, 0x0d, 0xca, 0x15, 0xb1, 0xdb, 0x9a, 0x1e, 0x3f, 0x54, 0xc0, 0xaa, 0x8e, 0xb0, 0x72, 0xdc, 0xe1, 0x16, 0x50, 0xed, 0x92, 0x0a, 0x29, 0x31, 0xc6, 0x8b, 0x93, 0x0c, 0x34, 0xb5, 0x81, 0x1d, 0x07, 0x6c, 0x0a, 0x3d, 0x10, 0x39, 0x7a, 0x18, 0xbd, 0x0a, 0x7a, 0x87, 0xfa, 0xa7, 0x8a, 0x6d, 0x98, 0x4f, 0xb4, 0x8b, 0x3e, 0xe5, 0x3d, 0x20, 0xbc, 0xda, 0x84, 0xcb, 0x2e, 0xa7, 0xba, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_3178 = { .name = "ecdh_secp521r1_3178", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3178_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3178_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3178_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 695 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3179 for ECDH, tcId is 696 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3179_peerpubkey[] = { 0x00, 0xaf, 0xf0, 0xe5, 0x21, 0x6e, 0xe7, 0xcd, 0x11, 0x5c, 0xc6, 0x30, 0x90, 0x9d, 0x20, 0xfd, 0x3c, 0x38, 0x23, 0x57, 0xf0, 0x74, 0x44, 0x80, 0xd8, 0x6b, 0x17, 0x7a, 0xf4, 0xff, 0x94, 0x71, 0xa1, 0xe3, 0x60, 0x53, 0x2a, 0x92, 0xa5, 0x82, 0x52, 0xd9, 0x3d, 0x1e, 0xa1, 0x6a, 0xb4, 0x7f, 0x4c, 0x09, 0x0b, 0x6a, 0xef, 0xdc, 0x6a, 0x7a, 0x37, 0x78, 0xd1, 0x5c, 0x68, 0xa8, 0x66, 0x75, 0x8b, 0x9a, 0x00, 0x98, 0xe2, 0x3c, 0x43, 0x72, 0x37, 0x2a, 0x52, 0x7b, 0xe2, 0xc6, 0xc3, 0x11, 0x73, 0x80, 0xb4, 0x83, 0x6d, 0x5e, 0xbd, 0x08, 0x07, 0xb8, 0x0c, 0xd9, 0xc6, 0xef, 0xd9, 0x6a, 0x7c, 0xf0, 0x75, 0x7c, 0x2a, 0x63, 0x5b, 0x9a, 0xd6, 0xdf, 0xe0, 0x11, 0x57, 0xff, 0x92, 0xde, 0xd3, 0x13, 0xa7, 0x8c, 0xad, 0x96, 0x80, 0x82, 0xaf, 0x33, 0xd1, 0x36, 0x87, 0x3f, 0x80, 0x8d, 0x8e, 0x49, 0x16, 0x26, }; static const unsigned char ecdh_secp521r1_3179_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3179_sharedsecret[] = { 0x01, 0xb9, 0x84, 0x47, 0xf0, 0xc3, 0xa5, 0x7d, 0xef, 0x59, 0x2c, 0xc0, 0x59, 0x9c, 0xe7, 0x40, 0x6f, 0x14, 0x81, 0x86, 0xf9, 0x4c, 0xd3, 0x07, 0xbf, 0x87, 0xe4, 0xab, 0x27, 0x3d, 0x3a, 0x9b, 0x5a, 0xe6, 0x36, 0x9b, 0x26, 0x69, 0x2c, 0xab, 0x5c, 0x24, 0xbc, 0xe5, 0x9c, 0x13, 0x95, 0x98, 0x44, 0x07, 0x77, 0x83, 0xec, 0xfe, 0xb7, 0x77, 0xfc, 0xf3, 0xce, 0x99, 0x8f, 0x65, 0x6a, 0x23, 0x82, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3179 = { .name = "ecdh_secp521r1_3179", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3179_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3179_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3179_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 696 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3180 for ECDH, tcId is 697 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3180_peerpubkey[] = { 0x01, 0xad, 0x13, 0xaf, 0x79, 0xe8, 0xbd, 0xa3, 0x31, 0x20, 0xa2, 0xa9, 0x24, 0xb4, 0x81, 0x00, 0x11, 0x17, 0x47, 0x9c, 0x8f, 0xbe, 0xcc, 0xd0, 0xa6, 0xaf, 0x4f, 0x50, 0xed, 0xbf, 0x7d, 0xf8, 0xe3, 0x95, 0xe3, 0x2f, 0xf6, 0xa1, 0xe5, 0xb2, 0xc1, 0xb8, 0x74, 0x33, 0x6c, 0x44, 0xc6, 0x5e, 0x1e, 0xed, 0x20, 0x9e, 0x54, 0x7b, 0x3c, 0x57, 0x61, 0xca, 0xb9, 0x6f, 0x56, 0xda, 0xf1, 0x7b, 0xc6, 0x93, 0x00, 0x28, 0x6b, 0xd6, 0xb0, 0x20, 0x6c, 0xbc, 0xc7, 0xa9, 0x9e, 0x78, 0x07, 0xf1, 0x5d, 0xf0, 0xff, 0x83, 0xcc, 0x17, 0xe4, 0x47, 0x4f, 0x17, 0x69, 0xc4, 0x73, 0xe7, 0x14, 0x1c, 0x38, 0x4b, 0x8a, 0x39, 0xf5, 0xb5, 0xab, 0xcd, 0xcf, 0xc7, 0x04, 0x97, 0x05, 0x7a, 0xe7, 0xe0, 0x9b, 0x70, 0x7a, 0xc3, 0xa7, 0x1b, 0x82, 0x4a, 0x55, 0xd4, 0xd8, 0x64, 0x8c, 0x5a, 0x95, 0xd6, 0x3b, 0xd8, 0x22, 0x41, }; static const unsigned char ecdh_secp521r1_3180_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3180_sharedsecret[] = { 0x00, 0xa3, 0xcd, 0x90, 0x0b, 0x98, 0x85, 0x62, 0x9a, 0xe8, 0xd8, 0x3f, 0xd8, 0x14, 0x3e, 0x7d, 0x8a, 0x29, 0x1c, 0xd9, 0x33, 0x16, 0x3b, 0xc6, 0x58, 0xf3, 0x79, 0x13, 0x51, 0x18, 0x37, 0x35, 0x50, 0x82, 0xd5, 0xf3, 0x94, 0x25, 0xea, 0x32, 0x2b, 0x19, 0xd6, 0x1d, 0xb3, 0xdd, 0xa0, 0x5f, 0x25, 0x5e, 0x14, 0x0e, 0xec, 0x4e, 0x98, 0xa7, 0xa1, 0x01, 0x21, 0xeb, 0x29, 0x18, 0xdc, 0xf1, 0x26, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3180 = { .name = "ecdh_secp521r1_3180", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3180_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3180_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3180_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 697 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3181 for ECDH, tcId is 698 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3181_peerpubkey[] = { 0x00, 0xd4, 0xd7, 0x6b, 0x40, 0xd9, 0x70, 0x46, 0xcc, 0xf0, 0x2d, 0x5b, 0xd1, 0x31, 0xa5, 0x45, 0x2d, 0x91, 0x19, 0x5a, 0x13, 0x20, 0x4b, 0x6e, 0xb4, 0xf7, 0x1a, 0x5d, 0xa9, 0xdc, 0x91, 0x56, 0xf6, 0x19, 0xaf, 0x8b, 0xfa, 0xe8, 0xfb, 0xac, 0xed, 0x47, 0x5c, 0x27, 0xca, 0x89, 0x45, 0x6f, 0x35, 0xe5, 0x47, 0x68, 0x8a, 0x6d, 0x0d, 0x99, 0x48, 0xfe, 0xa4, 0x9e, 0xf4, 0xb7, 0x5b, 0x5e, 0x83, 0x9c, 0x01, 0x73, 0x8d, 0xb8, 0xb3, 0xd3, 0xff, 0xfb, 0x1a, 0xb6, 0x97, 0xfb, 0xc8, 0x14, 0x6a, 0x70, 0xcd, 0xd6, 0x57, 0xd3, 0x07, 0xa6, 0xe6, 0xca, 0x8a, 0x33, 0x86, 0x61, 0xa0, 0x81, 0x31, 0xe0, 0x5c, 0x68, 0x0e, 0xe9, 0xda, 0x4c, 0x88, 0xa9, 0x0f, 0xde, 0x96, 0xc5, 0x63, 0x02, 0x27, 0xc2, 0xfd, 0x43, 0x23, 0xf3, 0x02, 0xd5, 0x3a, 0x0b, 0x51, 0x21, 0x16, 0x3c, 0xcc, 0x40, 0xbe, 0xfa, 0xf5, 0x33, }; static const unsigned char ecdh_secp521r1_3181_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3181_sharedsecret[] = { 0x00, 0x93, 0x1d, 0x8a, 0xa3, 0x8c, 0x53, 0x0d, 0xb8, 0xd5, 0xe7, 0x7d, 0xaa, 0x40, 0x6d, 0x16, 0x61, 0x69, 0xc9, 0xce, 0xb7, 0x4c, 0xcf, 0x70, 0x20, 0x96, 0x56, 0x73, 0xd0, 0x91, 0x33, 0x25, 0x3c, 0xa2, 0x30, 0x28, 0x7e, 0xc9, 0x99, 0x74, 0x47, 0xf1, 0xcc, 0xbb, 0xbb, 0xe8, 0x68, 0xcb, 0x73, 0xea, 0x0e, 0x28, 0xf4, 0xb6, 0x7e, 0xd4, 0x91, 0x32, 0x99, 0x5e, 0x75, 0xf4, 0x17, 0x83, 0x8d, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_3181 = { .name = "ecdh_secp521r1_3181", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3181_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3181_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3181_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 698 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3182 for ECDH, tcId is 699 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3182_peerpubkey[] = { 0x01, 0x03, 0xf3, 0x6e, 0xc4, 0x25, 0xdd, 0x88, 0xe5, 0xd8, 0x2d, 0x1f, 0x8d, 0x74, 0x7c, 0x93, 0xee, 0xcc, 0x4b, 0x46, 0xac, 0x98, 0xcd, 0x36, 0x4f, 0xc6, 0x78, 0xbc, 0x0d, 0x6c, 0x79, 0xf8, 0xbf, 0x1f, 0xe0, 0xbd, 0x28, 0x23, 0x5e, 0xe4, 0x3f, 0xbd, 0x0d, 0xc2, 0x37, 0x33, 0x2c, 0xc2, 0xed, 0x6e, 0xba, 0x8c, 0x7a, 0x56, 0x10, 0xb5, 0x65, 0x1c, 0x9e, 0x0f, 0x26, 0x44, 0x58, 0x7c, 0xa3, 0xbc, 0x01, 0x4d, 0xde, 0x8f, 0xbe, 0x83, 0xb5, 0x69, 0x73, 0x9b, 0x86, 0x0d, 0x7b, 0x1e, 0xda, 0xdc, 0x7b, 0xf7, 0x3f, 0x7f, 0x0e, 0x7a, 0x87, 0x02, 0xeb, 0x48, 0x8d, 0x23, 0x0d, 0xa2, 0x84, 0x32, 0x2c, 0xe0, 0x20, 0xe9, 0xc8, 0x83, 0x12, 0x98, 0xda, 0x14, 0x18, 0x0a, 0xb0, 0x08, 0x46, 0x5e, 0x6d, 0xed, 0x1f, 0x1e, 0xba, 0xf6, 0x56, 0x40, 0xd9, 0x2c, 0xcf, 0x29, 0xab, 0xb6, 0x75, 0x1a, 0x6f, 0x6c, }; static const unsigned char ecdh_secp521r1_3182_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3182_sharedsecret[] = { 0x01, 0x27, 0x0c, 0xfe, 0x9b, 0x86, 0x9d, 0x88, 0xe7, 0xdf, 0xf6, 0xd4, 0x5f, 0xc7, 0x52, 0xa4, 0xac, 0x72, 0xcc, 0xde, 0x73, 0xcf, 0x12, 0xec, 0x22, 0x7c, 0x27, 0x43, 0x28, 0xb0, 0x01, 0xa9, 0xf2, 0x4d, 0x92, 0xb0, 0x0c, 0xa0, 0x32, 0x6f, 0xe1, 0x9d, 0x69, 0x57, 0x3d, 0x5b, 0x3e, 0x35, 0xf8, 0x22, 0xcc, 0xbf, 0x4c, 0x83, 0xa3, 0xb3, 0xbf, 0x6e, 0x31, 0x53, 0xf0, 0x98, 0x42, 0x81, 0xb3, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3182 = { .name = "ecdh_secp521r1_3182", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3182_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3182_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3182_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 699 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3183 for ECDH, tcId is 700 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3183_peerpubkey[] = { 0x01, 0x3f, 0x8c, 0xc5, 0x56, 0x93, 0x46, 0xbf, 0x33, 0x25, 0xd8, 0x40, 0x5f, 0xdd, 0xe9, 0xfd, 0xe7, 0x1d, 0xd1, 0xe9, 0x53, 0xc1, 0x0e, 0xd6, 0x21, 0x5b, 0x4f, 0x40, 0x10, 0xf5, 0xbb, 0xe1, 0x73, 0x71, 0x8a, 0x8e, 0x2e, 0x6d, 0x9f, 0x80, 0x27, 0x26, 0xcd, 0x91, 0x6e, 0x16, 0xea, 0x1c, 0xd3, 0x14, 0x8c, 0x87, 0x9f, 0x0a, 0xce, 0xbd, 0x8d, 0xb2, 0x62, 0x8f, 0x58, 0x9c, 0x19, 0xaa, 0xa5, 0xbe, 0x01, 0x59, 0x5d, 0x66, 0x9c, 0xfa, 0x78, 0x6b, 0xfe, 0xb9, 0xdc, 0xda, 0xce, 0xdf, 0x56, 0x3d, 0x04, 0x05, 0x98, 0x67, 0x89, 0x8f, 0x42, 0xe8, 0xa1, 0x57, 0xc9, 0x11, 0x33, 0xc9, 0x52, 0xa9, 0x7d, 0x90, 0x38, 0x98, 0x91, 0xb3, 0x64, 0x78, 0x75, 0xc8, 0x22, 0xeb, 0x48, 0xf7, 0x61, 0x93, 0x0a, 0xfe, 0xf9, 0xb0, 0x68, 0x85, 0x3e, 0xfe, 0xc0, 0xd2, 0x60, 0xd8, 0xe5, 0x1d, 0xbc, 0xb6, 0xd2, 0x4b, }; static const unsigned char ecdh_secp521r1_3183_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3183_sharedsecret[] = { 0x01, 0x4d, 0xf0, 0x4e, 0x39, 0xe8, 0xbf, 0x5f, 0x6c, 0x34, 0x47, 0x2f, 0x94, 0xf6, 0xf4, 0x28, 0x96, 0x2a, 0xc8, 0xa3, 0x9d, 0x27, 0x33, 0x77, 0xd0, 0x00, 0x72, 0x31, 0xfa, 0x7f, 0x5f, 0x79, 0xed, 0x89, 0x62, 0x69, 0xf6, 0x5b, 0xf8, 0x4e, 0xca, 0x44, 0xe0, 0x73, 0x9c, 0xd8, 0xb9, 0x9f, 0x2e, 0x67, 0x97, 0x7e, 0xef, 0xd7, 0x68, 0x55, 0x3d, 0x46, 0x4c, 0x79, 0xe7, 0xd4, 0xd9, 0x0a, 0x0c, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_3183 = { .name = "ecdh_secp521r1_3183", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3183_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3183_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3183_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 700 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3184 for ECDH, tcId is 701 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3184_peerpubkey[] = { 0x01, 0x37, 0x5c, 0xc4, 0xe1, 0xa9, 0x28, 0x51, 0x35, 0x98, 0x08, 0x1a, 0xc4, 0xe4, 0xc0, 0x63, 0x2c, 0x24, 0xbd, 0x19, 0x97, 0xe4, 0x85, 0x0d, 0x14, 0x72, 0x50, 0x7b, 0xc7, 0x14, 0x22, 0xfc, 0xcb, 0x64, 0xcd, 0x82, 0x3d, 0x33, 0x65, 0xc0, 0x6e, 0x3f, 0x08, 0xc9, 0xfd, 0x6e, 0x6e, 0x47, 0x6a, 0x68, 0x12, 0x0f, 0x20, 0x3e, 0xf6, 0x9c, 0xa1, 0x1c, 0x70, 0x88, 0x9e, 0x38, 0x09, 0xeb, 0x75, 0xdc, 0x00, 0xd1, 0xed, 0x8d, 0x7a, 0xb7, 0x4a, 0x72, 0x46, 0x23, 0x67, 0xcb, 0x93, 0xe8, 0x43, 0xc6, 0x03, 0x89, 0xbf, 0xce, 0xeb, 0x2f, 0x86, 0x9a, 0xa3, 0x34, 0x91, 0x96, 0x1c, 0x4b, 0x83, 0x89, 0x23, 0x8f, 0x5d, 0xb1, 0xf7, 0x8b, 0x39, 0xfc, 0x09, 0x23, 0xa5, 0x4d, 0x9a, 0x7e, 0x0b, 0xe8, 0xed, 0xcb, 0x95, 0x72, 0xb2, 0xdb, 0xff, 0x0a, 0x72, 0x95, 0x85, 0x38, 0x2b, 0xff, 0xa6, 0x90, 0x19, 0x25, }; static const unsigned char ecdh_secp521r1_3184_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3184_sharedsecret[] = { 0x01, 0xd3, 0x77, 0x2b, 0x25, 0x2c, 0x9b, 0xa3, 0x5f, 0xf3, 0x47, 0x2b, 0x28, 0x0a, 0x76, 0x35, 0xca, 0x04, 0x51, 0x3e, 0xd0, 0x2e, 0x4d, 0x8c, 0x25, 0x59, 0x6c, 0x90, 0x0c, 0x37, 0x99, 0x4d, 0x26, 0xea, 0x77, 0x47, 0x37, 0xd9, 0xa9, 0xa8, 0xf8, 0x61, 0x8a, 0x6e, 0xf0, 0xc1, 0x01, 0x93, 0x44, 0xcb, 0x3f, 0x96, 0x56, 0xa6, 0x36, 0x9d, 0xfb, 0x1d, 0x8f, 0x2a, 0x3f, 0x28, 0xb4, 0xf0, 0x59, 0xcc, }; static const wycheproof_ecdh_test ecdh_secp521r1_3184 = { .name = "ecdh_secp521r1_3184", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3184_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3184_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3184_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 701 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3185 for ECDH, tcId is 702 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3185_peerpubkey[] = { 0x00, 0x6b, 0x6c, 0x41, 0x49, 0xce, 0x3b, 0x4f, 0xa6, 0x19, 0xe3, 0x60, 0xf0, 0x97, 0x94, 0x27, 0xd2, 0xc6, 0xbf, 0xeb, 0x3f, 0xa4, 0x12, 0x05, 0xa0, 0xce, 0xd3, 0xa4, 0x37, 0x28, 0x7c, 0x71, 0x1c, 0xc6, 0xe5, 0x87, 0x59, 0x92, 0xce, 0xa3, 0x13, 0xae, 0x3d, 0x2e, 0xc0, 0xdf, 0x6e, 0x42, 0x17, 0xc8, 0xc4, 0x2b, 0xbc, 0xff, 0xa7, 0x32, 0xc4, 0x03, 0xe7, 0xb4, 0x47, 0x1d, 0x0c, 0xf3, 0x95, 0x33, 0x00, 0xad, 0x7f, 0x74, 0xc6, 0x9b, 0x73, 0x08, 0xb7, 0x87, 0x47, 0xf7, 0x3b, 0x4e, 0x3e, 0x66, 0xe3, 0x3b, 0xfe, 0x4b, 0x21, 0xd4, 0x5a, 0xc8, 0x2a, 0x0b, 0x29, 0x3b, 0x0f, 0x63, 0x5a, 0xdd, 0xbe, 0xe4, 0x2a, 0x71, 0x8b, 0x72, 0x6a, 0xee, 0xb9, 0xdf, 0x13, 0x55, 0x70, 0x04, 0x97, 0x90, 0x0d, 0x9c, 0xdd, 0x0a, 0x42, 0xe0, 0x22, 0x8c, 0xd1, 0x79, 0x4f, 0x76, 0x7d, 0x3b, 0xff, 0xb1, 0xc7, 0xa7, }; static const unsigned char ecdh_secp521r1_3185_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3185_sharedsecret[] = { 0x01, 0xc5, 0x48, 0xcb, 0xdf, 0xdb, 0x40, 0x54, 0x1d, 0xab, 0x74, 0x4c, 0xbe, 0x5c, 0x45, 0xd9, 0x6a, 0x4f, 0x0d, 0x1c, 0xf2, 0xe5, 0x37, 0xd3, 0x3a, 0x9f, 0xb4, 0xe4, 0x67, 0x5c, 0x1e, 0xf5, 0x45, 0x82, 0xc1, 0x92, 0x94, 0xfd, 0x17, 0xc5, 0xfa, 0xe2, 0xc5, 0x1a, 0x9b, 0x18, 0xc3, 0x71, 0x95, 0xe0, 0xea, 0xc0, 0xd9, 0xb5, 0xff, 0x47, 0xa6, 0x43, 0xdf, 0x37, 0x5a, 0x70, 0x8d, 0xec, 0x71, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp521r1_3185 = { .name = "ecdh_secp521r1_3185", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3185_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3185_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3185_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 702 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3186 for ECDH, tcId is 703 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3186_peerpubkey[] = { 0x01, 0xa7, 0xba, 0xe0, 0x87, 0x25, 0xb9, 0x7e, 0x8a, 0xd3, 0xd9, 0x18, 0x43, 0xa4, 0x71, 0x4d, 0x92, 0x05, 0x00, 0x0d, 0xed, 0xea, 0x86, 0x07, 0x61, 0x05, 0x33, 0x07, 0x30, 0xbd, 0x8b, 0x6e, 0x5a, 0x68, 0x30, 0x49, 0x49, 0x6c, 0xd9, 0xf0, 0x8b, 0x32, 0x1c, 0xb2, 0xf3, 0xf8, 0xa0, 0x5b, 0xad, 0xf2, 0x37, 0x0b, 0xb9, 0x0e, 0xa1, 0xa4, 0x92, 0x36, 0xe3, 0xfe, 0xfd, 0x91, 0xb9, 0xc3, 0xd7, 0x6c, 0x00, 0x8c, 0x50, 0x24, 0x40, 0x40, 0xc6, 0x5b, 0xcb, 0x86, 0xcd, 0xbe, 0x19, 0x3e, 0xaf, 0x6d, 0xaa, 0xae, 0x2b, 0xa3, 0xa3, 0x28, 0xad, 0xeb, 0xc6, 0xb7, 0x2c, 0x12, 0x73, 0x66, 0x08, 0xab, 0xaf, 0x9c, 0x1d, 0xe7, 0xe7, 0xb3, 0x51, 0xc8, 0xe7, 0x5d, 0x4a, 0xb8, 0x01, 0xff, 0xdd, 0x6e, 0x84, 0xb7, 0xe4, 0x6b, 0x50, 0x97, 0x62, 0x47, 0xc3, 0x25, 0x15, 0xbf, 0x91, 0xce, 0xa3, 0x34, 0x89, 0x06, }; static const unsigned char ecdh_secp521r1_3186_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3186_sharedsecret[] = { 0x00, 0x52, 0xc6, 0xc1, 0xb8, 0x2b, 0x8e, 0x26, 0xf7, 0xed, 0xe7, 0x05, 0xa8, 0xb4, 0x84, 0x06, 0x8b, 0x50, 0x1a, 0x8d, 0xa4, 0x69, 0xca, 0xa5, 0xc2, 0x03, 0xbe, 0x01, 0x81, 0x43, 0x61, 0x8d, 0x98, 0x4f, 0xa9, 0x42, 0x1b, 0x13, 0x5e, 0x1a, 0xe2, 0x21, 0x2a, 0x27, 0xcb, 0xbb, 0xce, 0x3a, 0x74, 0x57, 0x80, 0xd1, 0x84, 0x70, 0x59, 0xd5, 0x6c, 0x3c, 0x3d, 0xda, 0x47, 0x48, 0x62, 0xa7, 0x90, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3186 = { .name = "ecdh_secp521r1_3186", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3186_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3186_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3186_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 703 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3187 for ECDH, tcId is 704 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3187_peerpubkey[] = { 0x00, 0x90, 0xf7, 0x4a, 0x2c, 0x8a, 0x5d, 0x2a, 0x99, 0x0c, 0xdf, 0x38, 0xb1, 0x85, 0xc7, 0x17, 0x6b, 0x37, 0xee, 0x50, 0xb7, 0x05, 0x59, 0xed, 0x85, 0xda, 0xff, 0x2f, 0xd4, 0x5b, 0x94, 0xb7, 0xf9, 0xdf, 0x34, 0xce, 0x57, 0xee, 0xa6, 0x54, 0x42, 0x7b, 0xfa, 0xd8, 0x99, 0x1f, 0x6a, 0x5d, 0x38, 0x53, 0x42, 0xaf, 0x3a, 0x56, 0x88, 0xb1, 0xf8, 0xc7, 0x24, 0xfb, 0x7e, 0x78, 0xdc, 0x18, 0xf2, 0x0e, 0x01, 0x61, 0x41, 0xf2, 0xb7, 0xbc, 0x94, 0x22, 0x86, 0xdb, 0xe8, 0x34, 0x4b, 0x68, 0xe0, 0xf9, 0xa2, 0xd0, 0x95, 0x0d, 0xa6, 0x51, 0x91, 0xf4, 0x7e, 0xba, 0x73, 0x8a, 0xbe, 0xf2, 0x0b, 0x9d, 0x10, 0x7c, 0xc0, 0xcc, 0xcf, 0x60, 0xbc, 0x92, 0x99, 0xb7, 0x5f, 0x0d, 0x14, 0x14, 0x7a, 0x6c, 0x7a, 0x7d, 0x5a, 0xe6, 0x7a, 0x00, 0x87, 0xeb, 0x1f, 0x4b, 0x48, 0xa2, 0x78, 0x0e, 0xc0, 0x86, 0x42, 0x8b, }; static const unsigned char ecdh_secp521r1_3187_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3187_sharedsecret[] = { 0x01, 0x13, 0xde, 0x20, 0xae, 0xa6, 0x91, 0xf5, 0xd3, 0x8b, 0x80, 0xba, 0xd9, 0x3c, 0x80, 0xd9, 0x23, 0x77, 0xeb, 0xb7, 0x30, 0x20, 0x14, 0xf6, 0x4c, 0xcd, 0x89, 0x3f, 0xa9, 0xe6, 0x7d, 0x38, 0x4a, 0x4e, 0xd1, 0xa5, 0xe3, 0xfc, 0xe2, 0xc8, 0x4b, 0xa5, 0xfc, 0x37, 0x9a, 0x0a, 0x6b, 0xda, 0xcd, 0xb6, 0x17, 0x65, 0x94, 0xdf, 0x87, 0x6d, 0x3d, 0x13, 0xfd, 0xf1, 0xdc, 0x82, 0x4d, 0xa8, 0x25, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_3187 = { .name = "ecdh_secp521r1_3187", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3187_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3187_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3187_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 704 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3188 for ECDH, tcId is 705 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3188_peerpubkey[] = { 0x01, 0xf7, 0xbe, 0x22, 0x9d, 0xcb, 0x35, 0xe4, 0x44, 0xd3, 0xd8, 0x91, 0xbb, 0x04, 0xff, 0x5a, 0xaf, 0x27, 0x0e, 0x8f, 0x8d, 0x90, 0xaf, 0xd6, 0x5a, 0xfb, 0x1c, 0x56, 0xf8, 0xc7, 0x7e, 0xab, 0x3d, 0x32, 0xe5, 0x5d, 0xaa, 0x31, 0xda, 0x9a, 0xeb, 0xda, 0x76, 0xfb, 0x67, 0x29, 0x8e, 0x3a, 0x1b, 0xb7, 0x15, 0x05, 0xd3, 0xa5, 0xb6, 0xc5, 0xaf, 0x37, 0x36, 0x6c, 0x88, 0x04, 0x10, 0x90, 0xe9, 0x6e, 0x00, 0xcf, 0x3e, 0x13, 0x2f, 0xd8, 0x83, 0x84, 0xfa, 0xe8, 0x75, 0x3a, 0xe3, 0x2b, 0xa6, 0x69, 0xe9, 0x67, 0x93, 0xb6, 0x9d, 0x6a, 0x81, 0x53, 0x65, 0x38, 0x7c, 0xd9, 0xd4, 0xd2, 0x1a, 0xd2, 0x86, 0x2e, 0x4b, 0x2f, 0xfc, 0xa1, 0xfa, 0x8e, 0xa0, 0x5e, 0x34, 0x27, 0x5f, 0xea, 0x95, 0xff, 0x1d, 0xcc, 0xab, 0x75, 0x0b, 0xc7, 0x42, 0xde, 0x12, 0x61, 0x1c, 0xc3, 0xa1, 0x35, 0xa9, 0xda, 0xf9, 0xc0, }; static const unsigned char ecdh_secp521r1_3188_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3188_sharedsecret[] = { 0x01, 0x20, 0x90, 0x84, 0x72, 0x93, 0xba, 0x80, 0xdc, 0x7a, 0x8a, 0x4d, 0x50, 0x38, 0xad, 0x6f, 0x3e, 0xd4, 0x36, 0xb5, 0xa8, 0x2e, 0x7a, 0x4a, 0x6d, 0x7c, 0xfa, 0xea, 0x1c, 0x19, 0xd6, 0xc7, 0x4d, 0x3f, 0x70, 0x7f, 0xa0, 0xff, 0xc9, 0xf1, 0x5a, 0x8c, 0x95, 0xc3, 0xe0, 0x40, 0xb4, 0xf1, 0xb5, 0xd2, 0xb5, 0xee, 0x08, 0xb9, 0x43, 0x64, 0x10, 0xe3, 0x6f, 0xda, 0x20, 0x3f, 0xd6, 0xc5, 0xfc, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3188 = { .name = "ecdh_secp521r1_3188", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3188_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3188_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3188_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 705 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3189 for ECDH, tcId is 706 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3189_peerpubkey[] = { 0x01, 0xd8, 0x57, 0x8b, 0x22, 0x20, 0x92, 0x10, 0x3b, 0xb1, 0x77, 0x64, 0xfd, 0xa3, 0x34, 0x97, 0x4b, 0x12, 0x13, 0x05, 0xc4, 0xc1, 0xcf, 0xae, 0xe7, 0xd8, 0x6e, 0x81, 0x4d, 0xee, 0x33, 0x05, 0x7a, 0x03, 0xbe, 0xa2, 0x34, 0x54, 0x66, 0x05, 0xcf, 0x7f, 0xba, 0x50, 0xd2, 0xd5, 0x7a, 0xbd, 0x08, 0x08, 0x76, 0x0a, 0x4f, 0x8d, 0x23, 0xf7, 0x24, 0xc0, 0x0f, 0x9f, 0x5d, 0xd4, 0xb0, 0x26, 0xf6, 0x28, 0x01, 0x92, 0x33, 0x25, 0xa3, 0x7b, 0x03, 0x14, 0xc7, 0xa1, 0xd1, 0x85, 0x17, 0x3b, 0x48, 0xc1, 0x40, 0x51, 0xbc, 0x0e, 0xfc, 0x9b, 0xf3, 0xe5, 0x7a, 0xe7, 0x78, 0xba, 0x53, 0x7e, 0x90, 0xc8, 0x2c, 0xc0, 0xd4, 0x2d, 0xd9, 0x8e, 0x9f, 0xf5, 0xa8, 0x23, 0x5e, 0xde, 0x5c, 0x42, 0x86, 0x7e, 0x96, 0x1d, 0xef, 0x8f, 0x9f, 0x66, 0xa6, 0x31, 0x16, 0x8c, 0x2e, 0x3a, 0x10, 0x99, 0xc9, 0xc2, 0xde, 0x06, }; static const unsigned char ecdh_secp521r1_3189_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3189_sharedsecret[] = { 0x01, 0x99, 0xaa, 0xaf, 0x77, 0x7a, 0x6c, 0x29, 0xb8, 0x5e, 0x0e, 0xc9, 0x90, 0x2f, 0x4f, 0x8d, 0x00, 0x4a, 0x29, 0x7b, 0x45, 0x70, 0xdd, 0x46, 0x77, 0x62, 0x23, 0x05, 0xf4, 0x33, 0x9e, 0xc7, 0x26, 0xaf, 0xb9, 0x8b, 0x55, 0x41, 0x75, 0xb9, 0x9b, 0x8b, 0x32, 0x43, 0xf1, 0x2a, 0x60, 0xb7, 0x9f, 0xfe, 0x25, 0x94, 0x71, 0x05, 0x3e, 0x14, 0xc7, 0x68, 0xa1, 0x8c, 0xbf, 0x9a, 0xe5, 0x9e, 0x14, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_3189 = { .name = "ecdh_secp521r1_3189", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3189_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3189_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3189_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 706 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3190 for ECDH, tcId is 707 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3190_peerpubkey[] = { 0x01, 0xba, 0xdf, 0x6a, 0x41, 0x1a, 0x40, 0x56, 0x52, 0xd3, 0xe5, 0x4b, 0x8f, 0xb2, 0xc5, 0xaa, 0xed, 0x8e, 0xb9, 0xad, 0xa9, 0xf0, 0x6e, 0xff, 0xc2, 0xe6, 0x52, 0x99, 0x05, 0x3b, 0x8a, 0x32, 0x16, 0xe0, 0xb5, 0xee, 0x7b, 0x25, 0x65, 0x61, 0xdf, 0xa1, 0x77, 0x99, 0x70, 0x54, 0x7b, 0x10, 0x72, 0x42, 0x4b, 0x86, 0xbb, 0x6e, 0xf4, 0x08, 0xce, 0xf5, 0x75, 0xbd, 0xb0, 0x2b, 0x79, 0xde, 0x35, 0xd4, 0x01, 0x4e, 0xf3, 0xa4, 0x7c, 0x25, 0x26, 0x5b, 0x1c, 0xb2, 0xf2, 0x8d, 0x59, 0x63, 0xf5, 0x33, 0xf7, 0xac, 0xfb, 0xde, 0x34, 0xd4, 0x5f, 0xa1, 0xae, 0x5f, 0xae, 0x77, 0xb4, 0xc4, 0xe0, 0xc8, 0x94, 0x28, 0x02, 0x47, 0x66, 0x4a, 0xad, 0x91, 0xc3, 0x1a, 0x01, 0x1f, 0xba, 0x50, 0xeb, 0x6e, 0x34, 0xbd, 0xfd, 0xf2, 0x8f, 0x3e, 0x40, 0x6a, 0x60, 0x2c, 0x50, 0x71, 0xee, 0xbb, 0x63, 0x2c, 0xdb, 0xe5, }; static const unsigned char ecdh_secp521r1_3190_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3190_sharedsecret[] = { 0x01, 0x6b, 0x74, 0xca, 0x4a, 0x58, 0x8f, 0xa4, 0x8c, 0xc5, 0xfe, 0x73, 0x8a, 0xa8, 0x49, 0x52, 0xe7, 0xd4, 0x90, 0x8e, 0xf9, 0xfb, 0x69, 0xa4, 0xbc, 0x47, 0x0e, 0xb7, 0x2e, 0xd8, 0x6b, 0x1c, 0x6b, 0xca, 0x0b, 0x63, 0x14, 0x93, 0x9c, 0x31, 0x1b, 0x0e, 0x3d, 0xae, 0x7f, 0xed, 0xd8, 0xda, 0xf9, 0x6a, 0x37, 0xb7, 0x42, 0x0d, 0xc5, 0x56, 0xac, 0x2b, 0xbc, 0xbd, 0x0d, 0xfd, 0xda, 0x28, 0x17, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_3190 = { .name = "ecdh_secp521r1_3190", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3190_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3190_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3190_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 707 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3191 for ECDH, tcId is 708 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3191_peerpubkey[] = { 0x01, 0x8b, 0x92, 0x37, 0x72, 0x3c, 0x02, 0x9c, 0x55, 0x1b, 0x1e, 0x14, 0x49, 0x24, 0x60, 0xe7, 0xd2, 0xe4, 0x95, 0x7d, 0xce, 0xee, 0x53, 0x6d, 0xec, 0x92, 0xbb, 0x35, 0xfe, 0x8e, 0xde, 0x36, 0xe6, 0xb1, 0xcc, 0xe1, 0x55, 0xb6, 0x9a, 0x0d, 0x72, 0x12, 0xc2, 0xb4, 0xf0, 0xba, 0x89, 0xd3, 0xf6, 0xfc, 0x0e, 0x7f, 0x67, 0x77, 0xff, 0x5c, 0x2e, 0xed, 0x8c, 0x71, 0xef, 0xf3, 0xc4, 0x4d, 0xa8, 0x48, 0x01, 0x25, 0xbe, 0xe7, 0x80, 0x39, 0xfb, 0xd3, 0xc3, 0x39, 0xa5, 0x8b, 0xbf, 0x62, 0x5e, 0x50, 0x34, 0x6a, 0x3e, 0x8a, 0x9c, 0x73, 0x46, 0x0e, 0xc6, 0x8f, 0xb0, 0x28, 0xfd, 0x4d, 0x14, 0xcd, 0x63, 0x15, 0x31, 0x0e, 0x03, 0x11, 0xa0, 0xec, 0x4f, 0x39, 0xfb, 0x34, 0x08, 0x51, 0x93, 0x77, 0xdd, 0x4e, 0xa9, 0xd5, 0x77, 0x79, 0x00, 0x38, 0x62, 0xc3, 0x12, 0xbf, 0xd0, 0x9a, 0x9a, 0x1f, 0x96, 0x59, }; static const unsigned char ecdh_secp521r1_3191_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3191_sharedsecret[] = { 0x01, 0xd8, 0x1c, 0x81, 0x2e, 0x14, 0x80, 0x4d, 0x56, 0x2e, 0x4a, 0x89, 0xe9, 0xee, 0xa7, 0xd2, 0x63, 0x02, 0xcf, 0xd7, 0x55, 0xfe, 0x92, 0x21, 0xfc, 0xa5, 0x77, 0xe3, 0x2f, 0xd5, 0xbc, 0x53, 0x4e, 0x3f, 0xb2, 0xd8, 0x1b, 0x17, 0x01, 0xaf, 0xa0, 0xb4, 0xd9, 0xf2, 0x5b, 0xbd, 0x1b, 0x2d, 0x7e, 0xc9, 0x84, 0xda, 0x40, 0x40, 0x14, 0xb5, 0xc2, 0x3d, 0x8b, 0x29, 0x58, 0xae, 0xd8, 0x64, 0xdb, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3191 = { .name = "ecdh_secp521r1_3191", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3191_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3191_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3191_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 708 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3192 for ECDH, tcId is 709 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3192_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_3192_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3192_sharedsecret[] = { 0x01, 0x7f, 0xde, 0xde, 0x94, 0x70, 0x80, 0x15, 0x68, 0x29, 0x8e, 0x0a, 0x94, 0xcd, 0x49, 0xa0, 0xe8, 0x17, 0x02, 0xb6, 0xf4, 0xef, 0x91, 0x69, 0x83, 0xff, 0x89, 0xe4, 0xf0, 0x1a, 0xde, 0x2e, 0xe1, 0x30, 0x01, 0xc6, 0xea, 0xa6, 0x77, 0x49, 0x9a, 0x9d, 0xe7, 0xa4, 0x8b, 0x7c, 0x79, 0x56, 0xfa, 0xac, 0x58, 0x0e, 0x63, 0x93, 0x38, 0x53, 0x13, 0x4d, 0xc9, 0x68, 0x52, 0x26, 0x4f, 0xb2, 0x3f, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3192 = { .name = "ecdh_secp521r1_3192", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3192_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3192_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3192_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 709 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3193 for ECDH, tcId is 710 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3193_peerpubkey[] = { 0x01, 0x99, 0xff, 0x89, 0xac, 0xaa, 0x60, 0xd0, 0xe4, 0x79, 0xc8, 0x16, 0x87, 0x36, 0xa7, 0x79, 0x5e, 0xe0, 0xc1, 0xb5, 0xc0, 0xb2, 0x1f, 0x6c, 0xbf, 0x90, 0xe3, 0x06, 0x82, 0xcf, 0x44, 0x64, 0xdf, 0x92, 0x32, 0x34, 0x3c, 0x91, 0xf3, 0x65, 0x0c, 0xf0, 0x1f, 0x7b, 0xc2, 0xb1, 0x48, 0xd8, 0xf3, 0xb7, 0x07, 0xfd, 0x2e, 0x3d, 0xff, 0x50, 0x2b, 0xca, 0x0c, 0x03, 0x94, 0x1a, 0x9a, 0xfe, 0x63, 0x1c, 0x00, 0x84, 0xe2, 0x71, 0x55, 0xc0, 0x90, 0x3d, 0xfe, 0x65, 0xd7, 0xb5, 0xd8, 0xb1, 0xbd, 0xec, 0x24, 0x56, 0xca, 0x50, 0xc9, 0x77, 0xa4, 0x3f, 0x44, 0xe4, 0xfc, 0x4d, 0xd7, 0x0d, 0x94, 0xb2, 0x9c, 0x44, 0x69, 0x65, 0x59, 0x81, 0xaf, 0x4f, 0x0c, 0x21, 0x81, 0xf1, 0x9d, 0xc4, 0x48, 0x13, 0x07, 0xe6, 0x9e, 0x20, 0x6d, 0x4e, 0x0a, 0x59, 0xd4, 0x8e, 0x43, 0xf5, 0x58, 0x09, 0x13, 0x9a, 0xda, 0x7c, }; static const unsigned char ecdh_secp521r1_3193_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3193_sharedsecret[] = { 0x00, 0x5f, 0xf9, 0xd0, 0xe3, 0x3b, 0x19, 0xa1, 0xed, 0x65, 0x40, 0x82, 0x54, 0x95, 0x7a, 0x43, 0xc0, 0x05, 0x0b, 0x19, 0x5d, 0xfd, 0x8f, 0xeb, 0x56, 0x47, 0x2d, 0x3f, 0xef, 0xc4, 0x63, 0xd9, 0x59, 0x10, 0x86, 0x2f, 0x9b, 0xb0, 0xa3, 0x2d, 0x98, 0x05, 0x37, 0x63, 0x33, 0x3f, 0x92, 0x33, 0x26, 0x37, 0xda, 0xbe, 0x2a, 0x4f, 0x9e, 0xeb, 0xcf, 0x48, 0xa4, 0x63, 0x0e, 0xc5, 0x0b, 0xbf, 0x13, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3193 = { .name = "ecdh_secp521r1_3193", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3193_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3193_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3193_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 710 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3194 for ECDH, tcId is 711 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3194_peerpubkey[] = { 0x01, 0x43, 0x69, 0xb6, 0xe6, 0x71, 0x7e, 0x08, 0x54, 0x38, 0x08, 0x33, 0xd9, 0x74, 0xbe, 0xea, 0x9c, 0xcc, 0xc0, 0x1d, 0x7f, 0xbc, 0xc3, 0x92, 0x45, 0xbc, 0x14, 0x27, 0x10, 0x4c, 0x21, 0x43, 0x26, 0x80, 0x9f, 0xd1, 0xa6, 0x78, 0xf8, 0x96, 0x12, 0xd0, 0x87, 0xdf, 0x5e, 0x3d, 0x5a, 0xb1, 0x85, 0x51, 0x78, 0xe0, 0x1f, 0xbc, 0x67, 0x12, 0x48, 0x2b, 0x34, 0x43, 0xcd, 0xbb, 0xfe, 0xc3, 0xc7, 0x7a, 0x00, 0x7e, 0x5a, 0x87, 0x86, 0xaa, 0xca, 0xe7, 0x5f, 0x9f, 0x7e, 0x59, 0xb3, 0xb0, 0x0c, 0xf1, 0x36, 0xac, 0xda, 0xc4, 0x2f, 0xf0, 0xda, 0x06, 0xa0, 0xde, 0x82, 0xd5, 0xe3, 0xc4, 0x16, 0x9a, 0x9b, 0x5d, 0x63, 0xcd, 0x7c, 0x0c, 0x68, 0x30, 0x85, 0x85, 0xf6, 0xf3, 0x1a, 0x30, 0x0d, 0x33, 0xc0, 0x10, 0x04, 0x2b, 0x44, 0xcd, 0xd0, 0xe6, 0xa8, 0x11, 0xad, 0x61, 0x4e, 0xf1, 0x8b, 0x6d, 0x4e, 0x06, }; static const unsigned char ecdh_secp521r1_3194_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3194_sharedsecret[] = { 0x00, 0x01, 0x4a, 0x36, 0xb9, 0x8a, 0xb5, 0x7d, 0x1d, 0x59, 0x93, 0x51, 0x27, 0x2b, 0x31, 0x31, 0xfd, 0x12, 0xe1, 0x8c, 0xb0, 0xf6, 0x65, 0xcc, 0x98, 0x05, 0xb2, 0x40, 0x2c, 0x67, 0x0e, 0xe3, 0x09, 0xa8, 0x5b, 0x6e, 0x0c, 0x2a, 0x9c, 0xca, 0x28, 0xd5, 0xa4, 0x58, 0x3c, 0xcc, 0xcd, 0xe7, 0xb8, 0xd5, 0xaa, 0xf3, 0x0c, 0x67, 0x80, 0xce, 0xdf, 0x8a, 0x0b, 0x9a, 0x4f, 0x6a, 0x49, 0xe9, 0xc1, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_3194 = { .name = "ecdh_secp521r1_3194", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3194_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3194_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3194_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 711 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3195 for ECDH, tcId is 712 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3195_peerpubkey[] = { 0x00, 0xb0, 0x8d, 0xf0, 0x61, 0x2d, 0xdb, 0xbd, 0x8a, 0xbe, 0x1c, 0xad, 0xf6, 0x54, 0xf7, 0xb1, 0x50, 0x09, 0x42, 0x97, 0x1c, 0xb1, 0x7f, 0xb6, 0x39, 0x36, 0x75, 0x03, 0x08, 0xbd, 0xf3, 0xe9, 0x1d, 0xab, 0xa0, 0xe2, 0x00, 0x55, 0x75, 0xde, 0x7e, 0x70, 0x38, 0xf8, 0x37, 0x9e, 0x99, 0x75, 0x96, 0xd6, 0x69, 0x6e, 0x57, 0x22, 0x48, 0x9f, 0x7f, 0xd5, 0xf4, 0x1a, 0x85, 0xf9, 0xb2, 0x7b, 0x20, 0x6e, 0x00, 0x6d, 0x4f, 0x35, 0x58, 0xec, 0x85, 0x8e, 0x8b, 0x7b, 0x8f, 0x31, 0xaf, 0x48, 0x0a, 0x80, 0x48, 0x42, 0x23, 0xa6, 0xf3, 0x65, 0x28, 0x68, 0xa3, 0x6d, 0x8a, 0xa0, 0x41, 0x2e, 0x79, 0xd5, 0x7c, 0x5d, 0x32, 0x29, 0x7d, 0x80, 0xb5, 0x08, 0xbf, 0x5a, 0x1b, 0xb5, 0x2f, 0xb4, 0x39, 0x16, 0x3a, 0xcc, 0x26, 0xb4, 0x73, 0x03, 0x3d, 0xc2, 0x48, 0x34, 0xe0, 0xa4, 0x4d, 0xfa, 0x43, 0x48, 0x0a, 0x9e, }; static const unsigned char ecdh_secp521r1_3195_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3195_sharedsecret[] = { 0x01, 0x54, 0x15, 0xd5, 0x4a, 0xbd, 0xb8, 0x53, 0x6e, 0x1a, 0xe2, 0xac, 0x00, 0x05, 0x1e, 0x2a, 0xf3, 0xc0, 0x42, 0xa8, 0x21, 0x53, 0x01, 0x65, 0xd1, 0xfe, 0xbb, 0x6e, 0xbd, 0xd7, 0x47, 0x81, 0xeb, 0xd3, 0x38, 0x7f, 0x9d, 0xd8, 0x84, 0x5d, 0x31, 0xa0, 0x33, 0x1e, 0x4e, 0xb5, 0x42, 0x08, 0x5b, 0x61, 0xf0, 0xf9, 0xf4, 0x08, 0xba, 0x5b, 0x46, 0x35, 0xdd, 0x24, 0xda, 0xba, 0xda, 0xef, 0x47, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_3195 = { .name = "ecdh_secp521r1_3195", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3195_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3195_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3195_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 712 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3196 for ECDH, tcId is 713 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3196_peerpubkey[] = { 0x00, 0xb5, 0x74, 0xf6, 0xdf, 0x47, 0x93, 0x2a, 0x18, 0x27, 0xe3, 0x6c, 0x94, 0x41, 0xe9, 0xa6, 0x16, 0x70, 0x96, 0x98, 0x17, 0x73, 0x56, 0x32, 0xf1, 0xec, 0x8f, 0xcd, 0xe6, 0x05, 0x09, 0xf6, 0xcc, 0x99, 0xa5, 0xc6, 0x53, 0x0a, 0x96, 0x00, 0x3d, 0x03, 0x3f, 0x4a, 0xb6, 0x38, 0x36, 0xca, 0x29, 0x26, 0x52, 0xb8, 0x60, 0x64, 0x1a, 0x2b, 0x98, 0xdf, 0x83, 0xce, 0xff, 0x2b, 0xf2, 0x41, 0x9f, 0x7d, 0x01, 0x6c, 0x80, 0x74, 0x2e, 0x03, 0x92, 0xdd, 0xe7, 0x01, 0x6b, 0x10, 0x6e, 0x3f, 0xb9, 0x76, 0xbd, 0x5d, 0x8f, 0x46, 0xa8, 0xf0, 0xe7, 0x4b, 0x90, 0x0a, 0x8d, 0x26, 0xf6, 0x92, 0x8b, 0x02, 0xd4, 0xfc, 0x1a, 0x97, 0xd8, 0x48, 0x44, 0xc2, 0x38, 0x0f, 0x6f, 0xd6, 0x24, 0x9b, 0xeb, 0xbb, 0xa6, 0xe5, 0xf8, 0x7f, 0xc5, 0xea, 0x2e, 0xdc, 0x13, 0x62, 0xd7, 0x7e, 0x1c, 0x24, 0x66, 0x51, 0xa5, 0x6c, }; static const unsigned char ecdh_secp521r1_3196_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3196_sharedsecret[] = { 0x00, 0xe5, 0xa3, 0x3a, 0xa0, 0xd3, 0x46, 0xba, 0x57, 0x86, 0x67, 0x41, 0xf9, 0x90, 0x11, 0xf1, 0x45, 0xad, 0xbf, 0x2d, 0xfc, 0xc1, 0x0c, 0xbc, 0x98, 0x8c, 0x86, 0xe8, 0xa2, 0x6e, 0x97, 0x7b, 0x41, 0x9a, 0xc7, 0x48, 0xb1, 0x06, 0xf1, 0x4f, 0xf2, 0xfd, 0xee, 0x5a, 0x32, 0x66, 0x16, 0xab, 0x53, 0xcc, 0xbe, 0x2d, 0x80, 0xe8, 0x09, 0x81, 0x13, 0x77, 0xfe, 0x9a, 0xf2, 0x03, 0x2c, 0xa1, 0x84, 0x64, }; static const wycheproof_ecdh_test ecdh_secp521r1_3196 = { .name = "ecdh_secp521r1_3196", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3196_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3196_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3196_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 713 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3197 for ECDH, tcId is 714 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3197_peerpubkey[] = { 0x00, 0x31, 0x74, 0xc3, 0xd3, 0x40, 0x77, 0xf9, 0x46, 0xf8, 0x98, 0x6a, 0xf2, 0x18, 0xca, 0x01, 0xf3, 0x1e, 0xfe, 0x57, 0xa2, 0x36, 0x71, 0x8e, 0xb8, 0x8d, 0xf2, 0x6a, 0x3c, 0xcc, 0xb2, 0x4b, 0x30, 0xf1, 0xf8, 0xe9, 0xd4, 0xfb, 0xba, 0x2b, 0x95, 0x3e, 0x16, 0x1b, 0xd1, 0x94, 0x47, 0x03, 0x9d, 0xba, 0xf1, 0xbc, 0xe0, 0x4c, 0x34, 0x60, 0xe1, 0xe3, 0xa2, 0x17, 0x0e, 0x26, 0x73, 0x02, 0xd2, 0xdf, 0x00, 0x10, 0xcf, 0xe1, 0x8a, 0xe6, 0xcb, 0x53, 0x6a, 0xc3, 0xe1, 0x4b, 0x3e, 0x60, 0xcc, 0xbe, 0x52, 0xb2, 0x9a, 0x19, 0x52, 0xa4, 0x7b, 0x5b, 0x3b, 0x1f, 0x4c, 0x26, 0x37, 0xad, 0xa5, 0x34, 0xb6, 0x1a, 0x5d, 0x94, 0xf6, 0x58, 0xfc, 0x38, 0x6b, 0xee, 0xd6, 0x12, 0x46, 0x7f, 0x3d, 0xd1, 0xcb, 0xd8, 0xe4, 0xd6, 0xd1, 0x54, 0x56, 0x6a, 0xb9, 0x94, 0x32, 0x8d, 0x2a, 0x58, 0xe6, 0x9c, 0xa7, 0xa8, }; static const unsigned char ecdh_secp521r1_3197_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3197_sharedsecret[] = { 0x01, 0x87, 0x79, 0xcb, 0xba, 0x17, 0x18, 0xbd, 0x2b, 0x7f, 0xc2, 0xac, 0x5c, 0xb4, 0x71, 0x30, 0x85, 0x76, 0x25, 0x0a, 0xd4, 0x12, 0xa5, 0xf9, 0x8e, 0x28, 0xd1, 0x4d, 0x76, 0xda, 0xfe, 0xcb, 0x84, 0x55, 0x60, 0x3b, 0xb2, 0x45, 0x91, 0xb8, 0xe8, 0x3e, 0x8a, 0x5c, 0x2c, 0x55, 0x05, 0x60, 0x94, 0x45, 0xbf, 0x7a, 0x01, 0x9a, 0x22, 0x98, 0x61, 0x35, 0x1d, 0x16, 0x58, 0x01, 0x28, 0x5b, 0x19, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_3197 = { .name = "ecdh_secp521r1_3197", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3197_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3197_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3197_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 714 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3198 for ECDH, tcId is 715 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3198_peerpubkey[] = { 0x00, 0xf8, 0x7b, 0xb7, 0x4f, 0x77, 0xe9, 0xbb, 0x46, 0x11, 0xaf, 0x79, 0xdc, 0x58, 0x2e, 0x36, 0x8a, 0x51, 0xf4, 0x5e, 0x6b, 0xa1, 0xe0, 0xf3, 0xa5, 0x6f, 0xf2, 0x5a, 0x60, 0x0a, 0x5a, 0xfe, 0x0a, 0x20, 0xed, 0xf6, 0x49, 0x62, 0x04, 0xfb, 0xd2, 0xe7, 0x3a, 0x9a, 0x54, 0xd9, 0xc8, 0x80, 0x7f, 0xc0, 0xb9, 0x53, 0x01, 0xdf, 0x19, 0xca, 0x7d, 0x67, 0x29, 0x9f, 0x44, 0xb2, 0x80, 0xbc, 0x69, 0x63, 0x01, 0x44, 0xcd, 0x54, 0x35, 0x8b, 0x30, 0x1b, 0xf3, 0x41, 0xe7, 0xb0, 0xdb, 0x7e, 0xff, 0xf4, 0xb0, 0x01, 0x0f, 0x17, 0x92, 0x62, 0xe5, 0xfa, 0x18, 0x1b, 0x30, 0xd1, 0x91, 0x39, 0x12, 0x9f, 0x42, 0x46, 0x4b, 0x71, 0xea, 0x2e, 0x06, 0x88, 0xba, 0x32, 0x44, 0xd4, 0xf7, 0xcb, 0xe2, 0xf7, 0xa8, 0xc2, 0xa2, 0xb3, 0x79, 0xc6, 0x4a, 0x72, 0xd6, 0xbf, 0xbf, 0x87, 0xf6, 0xf1, 0xa8, 0x7b, 0xc0, 0x6b, }; static const unsigned char ecdh_secp521r1_3198_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3198_sharedsecret[] = { 0x01, 0xf4, 0x55, 0x81, 0x6a, 0xcb, 0x59, 0xe6, 0x18, 0x9e, 0x6c, 0x14, 0xda, 0xd7, 0xa7, 0x79, 0x95, 0x8b, 0x9b, 0x60, 0xa9, 0x54, 0x97, 0x28, 0xd6, 0x28, 0xb0, 0xaf, 0x1a, 0x38, 0xbe, 0xe0, 0x29, 0xa7, 0x17, 0xb3, 0x11, 0xfb, 0x2b, 0x6c, 0xea, 0x5f, 0xf3, 0xc8, 0xae, 0xa0, 0x96, 0x23, 0x6c, 0x67, 0xc6, 0xa3, 0xac, 0xe0, 0x42, 0x64, 0xac, 0x7e, 0xd1, 0xbe, 0xea, 0x2a, 0x4f, 0x5e, 0x90, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_3198 = { .name = "ecdh_secp521r1_3198", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3198_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3198_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3198_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 715 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3199 for ECDH, tcId is 716 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3199_peerpubkey[] = { 0x00, 0x58, 0x20, 0xa1, 0x2b, 0x52, 0x9a, 0xa3, 0x90, 0x6a, 0xfb, 0x06, 0x12, 0x03, 0xc1, 0x24, 0xd3, 0xb8, 0x1f, 0x39, 0x9b, 0x67, 0xf4, 0x8f, 0x5c, 0xc3, 0xb5, 0xfd, 0x45, 0x90, 0x70, 0x51, 0xce, 0x05, 0x36, 0xdb, 0xde, 0xeb, 0x4b, 0x3e, 0x4e, 0xa3, 0xe2, 0xc3, 0x79, 0x91, 0xbf, 0x68, 0xbe, 0x9a, 0x1a, 0x1c, 0x60, 0x9a, 0x2e, 0xc7, 0xb4, 0xab, 0x55, 0xdc, 0x00, 0x6e, 0xae, 0x44, 0x0d, 0xda, 0x01, 0xcb, 0x77, 0xd7, 0xdf, 0x78, 0xb9, 0x87, 0x44, 0x70, 0xc3, 0xdd, 0x26, 0x8e, 0x91, 0x99, 0xf9, 0x8f, 0x83, 0x29, 0x53, 0xae, 0xb7, 0xb0, 0x74, 0x49, 0xd3, 0x79, 0x04, 0x05, 0x4c, 0x9d, 0xd2, 0x17, 0xda, 0xf2, 0xf0, 0xae, 0x6d, 0xb0, 0x58, 0x97, 0x51, 0x23, 0xc9, 0xea, 0xf9, 0xd8, 0x86, 0xd5, 0xc3, 0xd6, 0x03, 0x69, 0x07, 0xa5, 0xcf, 0xf3, 0xc7, 0x1c, 0x7a, 0x7a, 0x85, 0xf6, 0x2f, 0x0b, }; static const unsigned char ecdh_secp521r1_3199_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3199_sharedsecret[] = { 0x00, 0x20, 0x07, 0xfd, 0x98, 0xb4, 0xe3, 0x34, 0xd9, 0xdd, 0x76, 0x86, 0xae, 0x5d, 0xa3, 0x79, 0xc3, 0xc3, 0xa0, 0x51, 0x22, 0x32, 0x84, 0x4f, 0xa0, 0x0e, 0xce, 0x76, 0xea, 0x94, 0x21, 0x17, 0x8b, 0x9c, 0x15, 0x49, 0x42, 0xc0, 0x98, 0x1c, 0xa2, 0xb8, 0x18, 0x71, 0x61, 0xd5, 0x9a, 0xd3, 0x6a, 0xb2, 0xda, 0xf1, 0x75, 0x3e, 0x3b, 0x59, 0xd8, 0xfa, 0x5b, 0x4c, 0x9b, 0xf2, 0x24, 0xa7, 0x37, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3199 = { .name = "ecdh_secp521r1_3199", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3199_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3199_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3199_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 716 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3200 for ECDH, tcId is 717 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3200_peerpubkey[] = { 0x00, 0x58, 0xe0, 0xd2, 0x0d, 0x8a, 0x18, 0x8d, 0x48, 0xca, 0x57, 0xd4, 0xb7, 0x3e, 0xa4, 0xe9, 0xf4, 0x53, 0xa3, 0x89, 0xd5, 0xd8, 0xfb, 0x94, 0x87, 0x37, 0xef, 0x55, 0xee, 0xc3, 0x0a, 0xb6, 0x0f, 0xad, 0x58, 0x0d, 0x9e, 0x12, 0xbb, 0x84, 0x0f, 0x82, 0xe7, 0x49, 0x50, 0xda, 0x3d, 0x12, 0xbe, 0x72, 0x66, 0x45, 0x7b, 0xbd, 0xd9, 0x43, 0xb8, 0x31, 0xf8, 0xad, 0x0d, 0x3b, 0x57, 0xe6, 0x24, 0x34, 0x00, 0xd7, 0x0c, 0x27, 0xab, 0x9c, 0xb2, 0x9f, 0x9d, 0x75, 0x39, 0x67, 0xff, 0xaf, 0xd2, 0x75, 0x51, 0xc7, 0x8a, 0x1b, 0xae, 0x47, 0x44, 0x1a, 0xd3, 0x82, 0x04, 0x13, 0x4f, 0x83, 0x49, 0x5d, 0xeb, 0x19, 0x82, 0x47, 0xd8, 0x75, 0xf1, 0x9a, 0xf9, 0x93, 0x22, 0xc2, 0x93, 0x73, 0x90, 0x34, 0x0b, 0x32, 0x7d, 0x9e, 0x6a, 0x58, 0xb4, 0x1c, 0x76, 0xa3, 0x26, 0xc6, 0xef, 0xbe, 0xc0, 0x2c, 0x99, 0x56, }; static const unsigned char ecdh_secp521r1_3200_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3200_sharedsecret[] = { 0x00, 0x19, 0x9e, 0x65, 0xe0, 0x6f, 0x7c, 0x56, 0xf3, 0xc4, 0x7a, 0xaf, 0x9f, 0xb6, 0x65, 0x1f, 0x5d, 0x2f, 0xce, 0x23, 0xfa, 0x4b, 0x93, 0xa2, 0x1d, 0xbb, 0xff, 0x96, 0x55, 0x9b, 0x49, 0x1b, 0xb4, 0xa6, 0x0c, 0xb2, 0xb9, 0xf3, 0x5b, 0x7b, 0x45, 0xc3, 0xa8, 0x38, 0x82, 0x8a, 0x53, 0xc5, 0x47, 0x54, 0x36, 0x56, 0xc6, 0x57, 0xc9, 0x16, 0x59, 0x7a, 0xc0, 0x4c, 0xc0, 0x05, 0xb0, 0x20, 0x5b, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_3200 = { .name = "ecdh_secp521r1_3200", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3200_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3200_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3200_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 717 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3201 for ECDH, tcId is 718 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3201_peerpubkey[] = { 0x00, 0x14, 0x25, 0x1e, 0x9b, 0x87, 0xce, 0x81, 0xf7, 0xf1, 0x49, 0x77, 0x0c, 0x00, 0x7f, 0x1d, 0x63, 0x20, 0xb2, 0xd8, 0x13, 0xd2, 0x75, 0x45, 0x77, 0x3c, 0xcf, 0xf4, 0xce, 0x74, 0x84, 0x35, 0x4f, 0xdf, 0xd1, 0x9f, 0x93, 0x80, 0xde, 0x8c, 0xce, 0x76, 0xce, 0xab, 0xd6, 0x53, 0x0a, 0x0c, 0x81, 0x2a, 0x34, 0xe4, 0x40, 0x4b, 0xd8, 0x22, 0x69, 0xcd, 0x01, 0x2e, 0x1a, 0x17, 0xc7, 0x1c, 0x9d, 0x66, 0x00, 0xfb, 0xcd, 0x44, 0x30, 0x52, 0xcf, 0xaf, 0x03, 0x76, 0x0b, 0xd5, 0x36, 0x63, 0x78, 0x30, 0x8f, 0xdd, 0x6b, 0xf2, 0x93, 0x79, 0xf9, 0xb6, 0xb6, 0x77, 0xc9, 0xe8, 0x8b, 0x03, 0x6e, 0xf2, 0x6a, 0x3a, 0x27, 0x6b, 0x64, 0xa7, 0x51, 0x9e, 0x0d, 0x01, 0x9a, 0x00, 0x76, 0x0f, 0xef, 0x38, 0x7d, 0xd4, 0x83, 0xd0, 0xd5, 0x8a, 0xb3, 0xd3, 0x01, 0x58, 0xcd, 0x18, 0xb2, 0x60, 0xe5, 0x04, 0x15, 0x89, }; static const unsigned char ecdh_secp521r1_3201_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3201_sharedsecret[] = { 0x00, 0x2e, 0xe3, 0x0b, 0xb0, 0x81, 0xa0, 0x4b, 0x7c, 0x58, 0x5d, 0x12, 0xcf, 0x2e, 0x0d, 0xcc, 0xe9, 0x49, 0x38, 0xde, 0xb0, 0xb7, 0x2a, 0x5f, 0xba, 0x80, 0x16, 0x08, 0x63, 0x85, 0x4c, 0xbf, 0x74, 0x95, 0xfc, 0x4e, 0x83, 0x99, 0xad, 0x06, 0xaa, 0x6e, 0xa0, 0x59, 0x57, 0xb7, 0x62, 0x81, 0x05, 0x7f, 0x07, 0x01, 0x19, 0x6b, 0x98, 0x33, 0x71, 0xae, 0xec, 0x0e, 0x4e, 0x31, 0xf6, 0xb4, 0x2b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3201 = { .name = "ecdh_secp521r1_3201", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3201_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3201_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3201_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 718 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3202 for ECDH, tcId is 719 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3202_peerpubkey[] = { 0x01, 0xf5, 0x18, 0x38, 0xae, 0xe3, 0x6d, 0x1d, 0xfb, 0xb0, 0x00, 0xc0, 0xa3, 0xdd, 0x84, 0x75, 0x5a, 0x87, 0xd6, 0xdc, 0xc5, 0xee, 0x5c, 0x78, 0xc8, 0x8b, 0x30, 0xd3, 0xfe, 0x15, 0x49, 0xa8, 0x91, 0x82, 0x04, 0xaf, 0xbb, 0x74, 0x2a, 0xcd, 0x9b, 0x51, 0x20, 0xf1, 0x09, 0xdb, 0xfd, 0xf9, 0xe1, 0x6f, 0x0e, 0xae, 0x84, 0xbc, 0x82, 0xca, 0xf4, 0x13, 0x49, 0x25, 0x2f, 0xa9, 0x81, 0x2a, 0x94, 0x41, 0x01, 0xe0, 0xb3, 0xa7, 0x66, 0x9b, 0xb3, 0xae, 0xe5, 0x4e, 0x64, 0xbb, 0x03, 0xb6, 0x8a, 0x62, 0x28, 0x31, 0x15, 0x07, 0x19, 0xa2, 0x1d, 0x43, 0x28, 0xf7, 0x32, 0xa6, 0x49, 0x66, 0x6a, 0x25, 0x98, 0xd5, 0xad, 0x0f, 0x62, 0xb0, 0x0a, 0x26, 0x5a, 0x9e, 0x08, 0xf5, 0xec, 0x0b, 0x7b, 0x6f, 0x9e, 0x1f, 0x8c, 0xad, 0xa0, 0x43, 0x78, 0x58, 0x0b, 0x4a, 0x28, 0x7a, 0x3a, 0xf4, 0xae, 0x39, 0x53, 0x15, }; static const unsigned char ecdh_secp521r1_3202_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3202_sharedsecret[] = { 0x01, 0x89, 0x78, 0x67, 0x00, 0x90, 0x2c, 0xf0, 0xc1, 0xf5, 0x47, 0x9d, 0x83, 0x9e, 0xe4, 0xe2, 0x40, 0x1b, 0xd2, 0x49, 0xf4, 0x13, 0xc0, 0x4a, 0xa3, 0x01, 0x87, 0x32, 0xfc, 0x5f, 0xf9, 0xc4, 0x6a, 0x63, 0x74, 0x79, 0xf9, 0x34, 0x27, 0xe0, 0x30, 0xfa, 0x47, 0x46, 0x60, 0xe1, 0x8b, 0x2c, 0xab, 0x46, 0xf6, 0xae, 0x78, 0xf3, 0x31, 0xc5, 0xbd, 0x35, 0x1c, 0xbf, 0x32, 0xea, 0x67, 0x91, 0xfe, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp521r1_3202 = { .name = "ecdh_secp521r1_3202", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3202_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3202_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3202_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 719 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3203 for ECDH, tcId is 720 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3203_peerpubkey[] = { 0x00, 0xa8, 0xbb, 0x7b, 0x5f, 0x42, 0x57, 0xa3, 0x31, 0x9c, 0x6d, 0xcb, 0x1d, 0xf5, 0x89, 0x88, 0xcd, 0xf6, 0x04, 0x53, 0xe4, 0x39, 0xd2, 0x30, 0xf4, 0x25, 0x16, 0x32, 0xff, 0x92, 0xb2, 0x42, 0x4b, 0x14, 0x7c, 0xa4, 0x08, 0x24, 0xb2, 0x5e, 0x6e, 0xc5, 0xf7, 0x15, 0x99, 0xcc, 0xfd, 0x13, 0xea, 0x62, 0x13, 0x9e, 0x0e, 0xad, 0xf2, 0x50, 0xc0, 0xd0, 0xda, 0x62, 0x6f, 0x4f, 0x1e, 0xf0, 0xcc, 0xbe, 0x00, 0x49, 0x4f, 0xa6, 0x59, 0x39, 0xd5, 0xf5, 0xd1, 0x44, 0xce, 0xa5, 0x42, 0xde, 0xa2, 0x7d, 0x7b, 0x26, 0xdc, 0xb5, 0xd5, 0xd6, 0xe8, 0x13, 0xbc, 0x53, 0x07, 0x75, 0x3b, 0x61, 0x84, 0x10, 0x46, 0x5b, 0x1b, 0x96, 0xbe, 0xd7, 0x9c, 0x98, 0xb6, 0xa6, 0x0b, 0x58, 0xa0, 0xbd, 0xf8, 0x36, 0x08, 0xc8, 0x1a, 0x9e, 0xd3, 0x62, 0xb6, 0x6a, 0x4c, 0x61, 0x32, 0x3b, 0x34, 0xd2, 0xa6, 0x41, 0x6c, 0x83, }; static const unsigned char ecdh_secp521r1_3203_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3203_sharedsecret[] = { 0x00, 0x70, 0x68, 0x31, 0x1b, 0x5c, 0x58, 0x39, 0x7c, 0x16, 0x37, 0xbd, 0x9a, 0xf3, 0x8b, 0x6b, 0xa8, 0x7f, 0x10, 0x85, 0x1e, 0xee, 0x67, 0x5c, 0xba, 0xdc, 0x27, 0x86, 0x0e, 0x78, 0xd4, 0x48, 0xab, 0xf3, 0x3d, 0xec, 0x17, 0x4d, 0x98, 0x2d, 0xab, 0x6d, 0x10, 0x0d, 0x31, 0x5c, 0x55, 0x78, 0x72, 0xbc, 0x8f, 0x7a, 0xff, 0x2b, 0xa0, 0xff, 0xd5, 0x08, 0x2e, 0xe2, 0x03, 0x84, 0x0a, 0x7d, 0x64, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3203 = { .name = "ecdh_secp521r1_3203", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3203_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3203_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3203_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 720 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3204 for ECDH, tcId is 721 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3204_peerpubkey[] = { 0x01, 0xec, 0x49, 0xde, 0x21, 0xd6, 0x92, 0xfc, 0xd7, 0x08, 0x42, 0x80, 0x46, 0x0d, 0xc1, 0x41, 0x0b, 0x5c, 0xe1, 0x48, 0x55, 0xf5, 0x30, 0x21, 0x44, 0x47, 0xb6, 0xf5, 0x3d, 0x03, 0xb0, 0x19, 0xb8, 0xe1, 0xfa, 0x7a, 0x86, 0x2e, 0xae, 0x55, 0xfa, 0x90, 0x18, 0xfc, 0x93, 0x57, 0x99, 0x36, 0x74, 0x7c, 0x96, 0x59, 0x2c, 0x98, 0xee, 0xc6, 0x25, 0x71, 0x57, 0x2e, 0x4b, 0x40, 0xac, 0x81, 0x65, 0xe1, 0x01, 0x45, 0x73, 0xce, 0xe6, 0x5c, 0xae, 0x4d, 0x54, 0x38, 0x9e, 0x8d, 0x74, 0xe1, 0x20, 0xb3, 0x08, 0x29, 0x8f, 0x15, 0xb0, 0x75, 0xa4, 0x4e, 0xd0, 0xf5, 0x0e, 0xcf, 0x3e, 0x4a, 0xb0, 0x81, 0xac, 0xa1, 0x52, 0xc6, 0x14, 0xc5, 0x1a, 0x7b, 0x31, 0x21, 0x17, 0xdf, 0x7f, 0xc6, 0x07, 0xa8, 0x61, 0xd2, 0xda, 0xd1, 0x02, 0x37, 0x9b, 0xba, 0xbb, 0x8d, 0x72, 0xfc, 0x83, 0x6e, 0xc2, 0xc8, 0x23, 0x0c, }; static const unsigned char ecdh_secp521r1_3204_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3204_sharedsecret[] = { 0x00, 0x4e, 0x26, 0xf4, 0x6b, 0x52, 0x04, 0xc8, 0xea, 0x45, 0xf8, 0x01, 0x15, 0x74, 0x1a, 0xc6, 0xb0, 0xad, 0x0f, 0xbc, 0x34, 0xae, 0x30, 0xd8, 0x9b, 0x85, 0xc1, 0xa3, 0x90, 0xca, 0x28, 0xb6, 0xb8, 0x3d, 0xcd, 0x74, 0x48, 0xcd, 0x41, 0x3a, 0x00, 0x57, 0x28, 0x3d, 0xae, 0x28, 0x56, 0x25, 0xbe, 0xc2, 0x93, 0x2e, 0x93, 0x3f, 0xf3, 0x48, 0x09, 0x98, 0x21, 0x58, 0x7b, 0xee, 0xd6, 0x5d, 0x37, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3204 = { .name = "ecdh_secp521r1_3204", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3204_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3204_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3204_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 721 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3205 for ECDH, tcId is 722 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3205_peerpubkey[] = { 0x00, 0x55, 0x85, 0x82, 0x56, 0x8f, 0xf6, 0x81, 0x75, 0xce, 0xca, 0xa0, 0x65, 0x2b, 0xef, 0x37, 0x3d, 0x68, 0x75, 0xa1, 0x96, 0xa3, 0x0d, 0x77, 0x71, 0x56, 0x38, 0xcd, 0x45, 0x05, 0x9e, 0x9c, 0x20, 0x75, 0x95, 0xf9, 0x2b, 0xa5, 0xa0, 0x29, 0x90, 0xa9, 0xb7, 0xa0, 0x5f, 0xc8, 0x64, 0x93, 0x65, 0x51, 0x8c, 0xef, 0xea, 0x24, 0x60, 0x1e, 0xc1, 0x18, 0x7a, 0x9b, 0x6a, 0x6f, 0xd3, 0x7d, 0x3e, 0x82, 0x00, 0x2c, 0x25, 0x24, 0x98, 0x3d, 0x5c, 0x3d, 0x4c, 0x09, 0x35, 0x99, 0xf0, 0x0f, 0x96, 0xa7, 0xa3, 0x88, 0xe2, 0xdc, 0xd1, 0x8d, 0xdd, 0x24, 0x92, 0x3a, 0xb6, 0xf8, 0x23, 0x6d, 0xfc, 0xd5, 0x44, 0x72, 0x1f, 0xd2, 0x2c, 0xda, 0xf2, 0x0f, 0xa5, 0x1e, 0x1b, 0xf9, 0xf9, 0xa9, 0xe9, 0x98, 0xf3, 0x41, 0x54, 0xf2, 0x66, 0x24, 0x82, 0x7c, 0xd2, 0xcf, 0xa1, 0xb0, 0xe6, 0x34, 0xc8, 0x30, 0x56, 0xd9, }; static const unsigned char ecdh_secp521r1_3205_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3205_sharedsecret[] = { 0x01, 0x59, 0xf2, 0xd6, 0x52, 0x3e, 0xd3, 0xf3, 0x73, 0xf2, 0xf9, 0x55, 0xbb, 0x30, 0x2b, 0xb9, 0x4e, 0xfb, 0x74, 0x2c, 0x39, 0xfc, 0x08, 0x1d, 0xa1, 0xb9, 0x6b, 0x36, 0xce, 0x5f, 0x3f, 0xe0, 0x7b, 0xff, 0x07, 0xfb, 0xd2, 0x25, 0xdb, 0xa9, 0xea, 0x2a, 0x82, 0xc3, 0xbf, 0xf8, 0x93, 0x9b, 0x3c, 0xff, 0xec, 0xb5, 0x84, 0x4b, 0xe0, 0xec, 0xe9, 0xab, 0xe5, 0xc5, 0x1d, 0xbf, 0x02, 0x12, 0x64, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3205 = { .name = "ecdh_secp521r1_3205", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3205_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3205_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3205_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 722 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3206 for ECDH, tcId is 723 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3206_peerpubkey[] = { 0x01, 0x88, 0xdc, 0xd8, 0xcd, 0xf3, 0x85, 0x5c, 0xf7, 0xcf, 0x7f, 0x62, 0x25, 0x11, 0xc6, 0x49, 0xaa, 0x96, 0x82, 0x4b, 0xdc, 0xfe, 0x31, 0x84, 0x85, 0x97, 0x0a, 0xb2, 0xee, 0xb2, 0x42, 0x8e, 0x49, 0xae, 0x46, 0xe2, 0x79, 0xe3, 0xb0, 0x21, 0x10, 0x83, 0x9d, 0x5a, 0x44, 0x71, 0xf6, 0xa2, 0x36, 0xad, 0xee, 0x76, 0x03, 0x61, 0x04, 0x3b, 0x31, 0x06, 0x48, 0x84, 0x88, 0xcc, 0xbd, 0x2c, 0xaf, 0xb8, 0x00, 0x4b, 0x58, 0x4a, 0xc1, 0xd3, 0x22, 0x3c, 0x7a, 0x01, 0xa7, 0x25, 0xc3, 0x8c, 0x18, 0x2b, 0x4c, 0xa9, 0x28, 0x58, 0xdd, 0x2e, 0x76, 0x9f, 0x83, 0x05, 0x1d, 0xb9, 0x53, 0xe2, 0x0c, 0x63, 0xd4, 0x5d, 0x69, 0x72, 0xc6, 0x65, 0x9f, 0xca, 0x66, 0x4d, 0x97, 0x08, 0xb6, 0x97, 0x39, 0x05, 0xe7, 0x30, 0x4c, 0x39, 0x6c, 0x5f, 0x73, 0x9a, 0x0f, 0xc6, 0x68, 0x13, 0xac, 0xaa, 0xc1, 0xec, 0x1b, 0x0c, }; static const unsigned char ecdh_secp521r1_3206_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3206_sharedsecret[] = { 0x01, 0x5b, 0x29, 0xe3, 0x3f, 0x79, 0x59, 0xe2, 0xca, 0x91, 0xf5, 0x8a, 0x7e, 0x9e, 0x4b, 0x13, 0x2a, 0x09, 0x89, 0x68, 0x7f, 0x5a, 0x39, 0xf8, 0xbd, 0x61, 0xf7, 0xf4, 0x22, 0x75, 0xcc, 0x25, 0x60, 0x59, 0xa0, 0x4f, 0x05, 0xa5, 0xa7, 0xa3, 0x86, 0xed, 0xf0, 0x71, 0xf7, 0xc9, 0x81, 0x23, 0x5c, 0x3d, 0x05, 0x2f, 0xf7, 0x33, 0x84, 0x3b, 0xc9, 0x73, 0x8f, 0xa1, 0x04, 0xb9, 0xde, 0xb9, 0x24, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3206 = { .name = "ecdh_secp521r1_3206", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3206_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3206_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3206_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 723 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3207 for ECDH, tcId is 724 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3207_peerpubkey[] = { 0x01, 0x13, 0xc7, 0x1c, 0xb3, 0xb6, 0xb3, 0x2f, 0x6d, 0x20, 0x87, 0x97, 0x8f, 0x3f, 0x0a, 0xee, 0x36, 0xea, 0x8c, 0xb1, 0xf0, 0x28, 0xd2, 0xd9, 0x81, 0x61, 0xf7, 0x75, 0x8b, 0xbb, 0xee, 0xb3, 0xb9, 0x65, 0x88, 0xaf, 0x97, 0xbc, 0xb4, 0xf3, 0xff, 0xfc, 0x45, 0x7b, 0x90, 0xb5, 0x17, 0x39, 0xe7, 0x89, 0x4f, 0x23, 0x81, 0x16, 0xe9, 0x85, 0xca, 0xac, 0xff, 0x3e, 0x75, 0x1b, 0x56, 0x51, 0x8b, 0x3b, 0x00, 0x5b, 0x71, 0xf5, 0x23, 0x05, 0x98, 0x68, 0x9e, 0x62, 0x54, 0x78, 0x8b, 0x89, 0x40, 0x03, 0xdc, 0x91, 0xeb, 0xd9, 0x53, 0xa2, 0xfe, 0xdb, 0xed, 0x23, 0xa0, 0x68, 0xb9, 0xf9, 0x43, 0x79, 0x8b, 0xfe, 0x4d, 0x04, 0x5f, 0x7b, 0x0b, 0xad, 0x53, 0x67, 0x27, 0xa7, 0x3a, 0x66, 0xf2, 0x50, 0x13, 0x6f, 0x8f, 0x50, 0x06, 0x75, 0x3f, 0xf0, 0x4b, 0x00, 0xa1, 0x48, 0xaf, 0xbe, 0x70, 0xef, 0xc1, 0x43, }; static const unsigned char ecdh_secp521r1_3207_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3207_sharedsecret[] = { 0x00, 0x39, 0xcf, 0x50, 0x09, 0xc6, 0x41, 0x1a, 0x5b, 0x71, 0xb0, 0x45, 0x3f, 0x85, 0xb4, 0x1f, 0x50, 0x6b, 0x72, 0xdc, 0xcb, 0x33, 0xf3, 0x44, 0xad, 0x25, 0x72, 0x44, 0xdc, 0xf9, 0xc5, 0x24, 0xca, 0xa8, 0xfd, 0xd3, 0x76, 0xb5, 0x23, 0x48, 0x0b, 0xa2, 0x25, 0x31, 0x90, 0x42, 0x15, 0xd2, 0x6c, 0x8a, 0x81, 0x8b, 0x8f, 0x80, 0xa4, 0xaa, 0x1d, 0xd1, 0x11, 0xac, 0xd8, 0xee, 0x84, 0xcd, 0x45, 0x3d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3207 = { .name = "ecdh_secp521r1_3207", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3207_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3207_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3207_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 724 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3208 for ECDH, tcId is 725 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3208_peerpubkey[] = { 0x01, 0x75, 0x75, 0xa3, 0xf8, 0x58, 0x34, 0xca, 0x48, 0x32, 0xbf, 0x64, 0xc5, 0x9d, 0xf1, 0xbf, 0x30, 0xac, 0x83, 0x04, 0x29, 0x1c, 0x81, 0x53, 0x97, 0xdd, 0x9d, 0x90, 0xc0, 0x2a, 0xe0, 0x55, 0x96, 0x41, 0x10, 0x81, 0x4b, 0x15, 0x8f, 0x02, 0x9d, 0x40, 0xb3, 0x6b, 0x2a, 0x85, 0xa9, 0x56, 0x86, 0x79, 0xfb, 0x56, 0xa5, 0xab, 0x49, 0x73, 0x06, 0x8d, 0x9e, 0xdd, 0x80, 0xed, 0xb7, 0xa6, 0xa7, 0x6a, 0x00, 0xef, 0xa3, 0xca, 0x31, 0x01, 0x15, 0x86, 0x94, 0xba, 0x59, 0x9d, 0x27, 0xb4, 0xed, 0x0c, 0x43, 0x99, 0x77, 0xd2, 0x85, 0x5d, 0xd5, 0x7d, 0xd4, 0xbd, 0x31, 0x1a, 0xcc, 0x38, 0x82, 0xb0, 0x99, 0x67, 0xaf, 0x64, 0xfa, 0x34, 0xab, 0x08, 0xca, 0xf2, 0x4d, 0x2a, 0xca, 0xaf, 0x32, 0xd9, 0x3c, 0xac, 0x88, 0x39, 0xd3, 0x91, 0xaa, 0xc5, 0x1e, 0x2c, 0xd0, 0x67, 0xf4, 0x04, 0x6b, 0x5f, 0x87, 0xd3, }; static const unsigned char ecdh_secp521r1_3208_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3208_sharedsecret[] = { 0x01, 0xba, 0x06, 0x92, 0x54, 0xa9, 0x51, 0xa9, 0x61, 0xaa, 0xde, 0x06, 0x6f, 0xf0, 0x47, 0x97, 0xbf, 0xc9, 0xcd, 0xfe, 0xbf, 0x2a, 0x19, 0xe4, 0xf4, 0xb7, 0x24, 0x02, 0x4e, 0x31, 0x6e, 0x8a, 0xfd, 0x9e, 0xd4, 0x8b, 0x63, 0x6a, 0x4a, 0x0d, 0x78, 0xcc, 0x4d, 0x37, 0xd9, 0x40, 0x2a, 0xd1, 0xc9, 0x81, 0x64, 0x0f, 0x90, 0xd2, 0x8f, 0x4e, 0x56, 0x6c, 0xea, 0xc9, 0xb6, 0x6c, 0x40, 0x00, 0xd3, 0xef, }; static const wycheproof_ecdh_test ecdh_secp521r1_3208 = { .name = "ecdh_secp521r1_3208", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3208_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3208_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3208_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 725 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3209 for ECDH, tcId is 726 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3209_peerpubkey[] = { 0x00, 0x6d, 0xd0, 0xee, 0x8e, 0x43, 0xf6, 0x15, 0xe3, 0x0b, 0x63, 0xdc, 0x45, 0x57, 0x01, 0x66, 0x1c, 0x9d, 0xec, 0x69, 0xdf, 0xde, 0x65, 0xab, 0x7c, 0xf9, 0x72, 0x10, 0x39, 0xe3, 0xe5, 0xd3, 0xcc, 0x5c, 0x12, 0xf8, 0xe4, 0xc0, 0xb6, 0xa3, 0x42, 0x2b, 0xf1, 0x3d, 0x32, 0xe4, 0x10, 0x82, 0x55, 0x29, 0x0f, 0x9c, 0xc9, 0xd6, 0xe4, 0xcf, 0xb9, 0xc9, 0xea, 0x16, 0x5f, 0x93, 0x45, 0xe1, 0x75, 0x9c, 0x00, 0x46, 0x49, 0xf0, 0x3b, 0x78, 0xe5, 0xdf, 0xfa, 0xbb, 0xa7, 0x0e, 0x74, 0xe9, 0x6c, 0x53, 0x62, 0xfa, 0x83, 0x18, 0x6b, 0xdc, 0x44, 0x82, 0x0b, 0xb0, 0xea, 0xf1, 0xbb, 0xd1, 0xa5, 0x19, 0x76, 0xcb, 0xbc, 0xfc, 0x03, 0xa9, 0x86, 0xbd, 0xdf, 0x93, 0x99, 0x6d, 0x96, 0x0f, 0xa7, 0x7a, 0xac, 0x46, 0xf9, 0xb7, 0xa5, 0xc3, 0x2c, 0x62, 0xc3, 0x40, 0x2c, 0x40, 0x0b, 0x31, 0x65, 0xc1, 0xba, 0x21, }; static const unsigned char ecdh_secp521r1_3209_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3209_sharedsecret[] = { 0x01, 0x6c, 0x4b, 0xfe, 0x17, 0xc9, 0x1c, 0x3a, 0xb2, 0xc6, 0x0e, 0x5c, 0x9c, 0x2f, 0xac, 0x1b, 0xe4, 0x89, 0x3f, 0x80, 0xfc, 0xa0, 0x56, 0x47, 0xc3, 0x4c, 0x82, 0xee, 0x8e, 0xe5, 0xe3, 0xb3, 0xc8, 0x9c, 0x6e, 0x87, 0xbc, 0x3a, 0xf4, 0x44, 0xdf, 0xdd, 0x1d, 0x69, 0x2a, 0x3d, 0xa4, 0x5a, 0x45, 0x97, 0x5b, 0xd5, 0x07, 0x74, 0x47, 0x13, 0x13, 0xd5, 0xb7, 0xd1, 0x49, 0xa5, 0x39, 0x5b, 0xa7, 0xed, }; static const wycheproof_ecdh_test ecdh_secp521r1_3209 = { .name = "ecdh_secp521r1_3209", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3209_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3209_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3209_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 726 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3210 for ECDH, tcId is 727 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3210_peerpubkey[] = { 0x01, 0xa6, 0xd5, 0xd0, 0x68, 0xb1, 0x90, 0x81, 0x77, 0xa1, 0xb1, 0x8f, 0xe0, 0x78, 0xdf, 0x8f, 0x89, 0x94, 0x58, 0x70, 0xca, 0x88, 0x11, 0x69, 0x5b, 0x44, 0x70, 0x04, 0x8c, 0xe0, 0xc3, 0x44, 0x43, 0xb9, 0xa7, 0xf9, 0x5f, 0x8a, 0xf9, 0xfb, 0x6a, 0x4c, 0xa0, 0x28, 0x5d, 0x17, 0x91, 0xce, 0x97, 0x5a, 0xd5, 0xa6, 0x5a, 0x5c, 0x9f, 0x6b, 0x3d, 0xf8, 0x05, 0xcc, 0x69, 0xb3, 0x98, 0x4e, 0xfe, 0xd4, 0x01, 0x02, 0x53, 0x39, 0xe4, 0x0a, 0x26, 0xa3, 0xf6, 0xf4, 0xfe, 0x54, 0x10, 0x17, 0x06, 0xb7, 0xf6, 0xd4, 0x75, 0xb9, 0x0f, 0x58, 0xf7, 0xca, 0x58, 0x17, 0xab, 0x5c, 0x3d, 0xf4, 0xd8, 0x38, 0x44, 0xf4, 0x29, 0x79, 0xdc, 0xc8, 0x8d, 0xab, 0x07, 0x85, 0xea, 0x24, 0x26, 0x43, 0x15, 0x95, 0x29, 0xbd, 0x1c, 0xee, 0xd9, 0xbe, 0x4e, 0xee, 0xb2, 0x30, 0x2f, 0xac, 0xc6, 0xb4, 0x40, 0xb5, 0x82, 0x64, }; static const unsigned char ecdh_secp521r1_3210_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3210_sharedsecret[] = { 0x00, 0x51, 0x91, 0x84, 0x91, 0x04, 0xcd, 0xe5, 0xbe, 0x25, 0x63, 0xc0, 0x13, 0x30, 0x65, 0xff, 0xcb, 0xf4, 0xbf, 0x41, 0x1a, 0xf3, 0x2e, 0x09, 0x86, 0x59, 0x89, 0xb3, 0x94, 0xec, 0x75, 0xe8, 0x2b, 0x4e, 0x46, 0x49, 0xd3, 0x31, 0x25, 0x03, 0x4f, 0x2b, 0x8c, 0xae, 0x1c, 0x29, 0x59, 0x2a, 0xaa, 0x9e, 0x50, 0x70, 0x0d, 0xa7, 0x4c, 0x08, 0x83, 0x18, 0xd7, 0x20, 0xa6, 0x8f, 0x58, 0x65, 0x3e, 0x12, }; static const wycheproof_ecdh_test ecdh_secp521r1_3210 = { .name = "ecdh_secp521r1_3210", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3210_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3210_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3210_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 727 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3211 for ECDH, tcId is 728 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3211_peerpubkey[] = { 0x01, 0xbd, 0x7d, 0x67, 0x37, 0x9b, 0x30, 0x96, 0x72, 0x8a, 0x36, 0x67, 0x96, 0xf7, 0x01, 0x49, 0x77, 0xd1, 0x1e, 0xff, 0x92, 0xf1, 0xfd, 0x30, 0x98, 0x3c, 0x74, 0x52, 0xb8, 0x2f, 0xea, 0x61, 0xf7, 0x7a, 0xe4, 0xa4, 0x31, 0x87, 0x3e, 0x2c, 0x55, 0x88, 0x95, 0x1b, 0x66, 0x35, 0x04, 0x61, 0x0d, 0x13, 0x91, 0xb8, 0xf9, 0x12, 0x2f, 0xd7, 0x89, 0x6e, 0xd4, 0x5b, 0x27, 0xd2, 0x32, 0x03, 0x82, 0xa3, 0x01, 0x95, 0x47, 0x26, 0x0a, 0x02, 0x1b, 0xd8, 0x6b, 0xb1, 0x49, 0x03, 0x2b, 0xad, 0x3c, 0x6a, 0xe1, 0x94, 0x44, 0x58, 0x99, 0x57, 0x3c, 0x40, 0x07, 0xf4, 0x4c, 0xec, 0x88, 0xe2, 0x32, 0xe4, 0x3d, 0x02, 0x7a, 0x36, 0x2c, 0xf5, 0x9c, 0xf1, 0x28, 0x36, 0x7c, 0xdd, 0x59, 0x53, 0x60, 0xe0, 0xbb, 0xc2, 0xa2, 0x5a, 0xca, 0x86, 0x3b, 0x09, 0x77, 0x57, 0x16, 0x7d, 0xe4, 0x41, 0x0d, 0x26, 0x1b, 0x16, }; static const unsigned char ecdh_secp521r1_3211_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3211_sharedsecret[] = { 0x00, 0x1f, 0x8e, 0x92, 0x5d, 0x5b, 0x2d, 0x22, 0xf7, 0xd1, 0xd7, 0xfd, 0xda, 0xa3, 0x57, 0x5f, 0xa3, 0x2d, 0x44, 0x6f, 0x99, 0xe7, 0x74, 0xdb, 0x28, 0x2c, 0x93, 0xd0, 0x0b, 0xee, 0xca, 0xbd, 0xa9, 0xaa, 0xcf, 0xc6, 0x44, 0xb9, 0xce, 0xcd, 0x76, 0xe7, 0xf1, 0x22, 0x51, 0x5b, 0x6e, 0xbe, 0xf3, 0xb5, 0x60, 0x75, 0xf7, 0xa2, 0x10, 0x1f, 0x9c, 0x49, 0x2e, 0x83, 0xe6, 0x21, 0x47, 0xd0, 0x9b, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_3211 = { .name = "ecdh_secp521r1_3211", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3211_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3211_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3211_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 728 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3212 for ECDH, tcId is 729 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3212_peerpubkey[] = { 0x00, 0x91, 0x43, 0xdc, 0xc8, 0xd4, 0x45, 0xd7, 0xf6, 0x64, 0x48, 0x1f, 0xba, 0xce, 0x68, 0x90, 0x04, 0x53, 0x94, 0x95, 0x37, 0xfa, 0xd7, 0x37, 0x56, 0xd8, 0x18, 0x56, 0x1e, 0x59, 0x44, 0x8f, 0xfb, 0x49, 0x02, 0x2b, 0x73, 0x7f, 0xc3, 0xe7, 0x25, 0xd6, 0xc1, 0xc4, 0x5b, 0xb0, 0xb0, 0x68, 0x80, 0x92, 0x28, 0xb0, 0xfd, 0x89, 0x61, 0xee, 0xf2, 0x20, 0x61, 0x2b, 0xe0, 0x50, 0x40, 0xc5, 0x40, 0x2e, 0x01, 0xf8, 0xbd, 0x05, 0x6f, 0x5f, 0x9f, 0xb3, 0x08, 0x3e, 0x90, 0x83, 0x37, 0x48, 0x64, 0x73, 0x1d, 0x75, 0x44, 0x1a, 0x1d, 0xc5, 0x2b, 0x41, 0x90, 0x4d, 0x6b, 0x2e, 0xaa, 0xb8, 0x05, 0x03, 0x0b, 0x04, 0xcd, 0xa6, 0xfb, 0x42, 0xea, 0xcc, 0xc7, 0xc9, 0xd5, 0x06, 0x56, 0xf0, 0xa8, 0x52, 0x25, 0x12, 0x0a, 0x06, 0x71, 0xb1, 0x89, 0x2f, 0x2c, 0x11, 0x8e, 0x7b, 0x53, 0x8e, 0x5c, 0x55, 0xaa, 0x64, }; static const unsigned char ecdh_secp521r1_3212_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3212_sharedsecret[] = { 0x00, 0x72, 0xa7, 0xf9, 0x9e, 0x29, 0x1a, 0x15, 0xc4, 0x5b, 0xc7, 0x8c, 0x48, 0x4e, 0x4f, 0xe9, 0x49, 0x03, 0xa9, 0x58, 0x04, 0x81, 0x26, 0xf3, 0xc2, 0x40, 0x5c, 0x5f, 0xf8, 0xba, 0xc7, 0xdd, 0x07, 0xdd, 0x96, 0xd4, 0x50, 0xb0, 0x17, 0xf6, 0xcb, 0xf6, 0xac, 0xf6, 0x9f, 0xe1, 0x13, 0xfb, 0x7a, 0x67, 0x66, 0xde, 0x8a, 0x95, 0x6e, 0xc0, 0x6f, 0x77, 0x2c, 0x15, 0xc8, 0x4d, 0xe9, 0xf4, 0xd4, 0x62, }; static const wycheproof_ecdh_test ecdh_secp521r1_3212 = { .name = "ecdh_secp521r1_3212", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3212_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3212_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3212_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 729 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3213 for ECDH, tcId is 730 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3213_peerpubkey[] = { 0x00, 0x80, 0xfa, 0xa5, 0x68, 0x5c, 0x19, 0xf0, 0x85, 0x10, 0x1f, 0x01, 0x0e, 0x83, 0xb2, 0xf0, 0x10, 0x09, 0x62, 0xa1, 0x84, 0x78, 0xc9, 0xb5, 0x1a, 0xa0, 0xd7, 0x52, 0xbd, 0x0e, 0x43, 0x95, 0x37, 0x89, 0x2a, 0x10, 0x7c, 0x34, 0xa5, 0x53, 0xc1, 0x8d, 0xb4, 0xf7, 0x51, 0x5f, 0x2e, 0xf3, 0x8c, 0xaf, 0x82, 0x53, 0xad, 0x2a, 0xf8, 0xc5, 0x9d, 0x84, 0xb7, 0xf7, 0x91, 0x72, 0xcf, 0x2e, 0xb4, 0xcb, 0x01, 0xe9, 0xc0, 0x32, 0x82, 0x70, 0xb7, 0x61, 0xa0, 0xc9, 0x15, 0xa6, 0xed, 0x29, 0xee, 0x22, 0x31, 0x33, 0xeb, 0x46, 0x6e, 0xfe, 0x23, 0x17, 0xc6, 0xf8, 0xad, 0x2b, 0x3c, 0x8d, 0x88, 0x79, 0x4e, 0x4a, 0xba, 0x3f, 0x96, 0x6b, 0x4a, 0xca, 0x55, 0x94, 0xc9, 0xa7, 0x4b, 0x37, 0xb4, 0x50, 0x3e, 0xe5, 0xa0, 0x79, 0x4d, 0x59, 0xc1, 0x08, 0x66, 0x68, 0x97, 0xf5, 0xec, 0x9b, 0xc7, 0xbb, 0xcb, 0xd1, }; static const unsigned char ecdh_secp521r1_3213_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3213_sharedsecret[] = { 0x00, 0xfe, 0x7b, 0x90, 0xed, 0xa1, 0xf7, 0x23, 0xc5, 0xe4, 0x42, 0x01, 0x7d, 0xad, 0xde, 0x8a, 0xff, 0xe3, 0xca, 0x80, 0xaf, 0xc9, 0xf4, 0x70, 0x32, 0x67, 0x62, 0x6f, 0x47, 0x74, 0xf0, 0x6e, 0x2c, 0x21, 0xa5, 0xd9, 0xc6, 0x47, 0x28, 0x82, 0xea, 0x88, 0x06, 0xa9, 0x13, 0x9c, 0x4a, 0x74, 0x0f, 0x26, 0x54, 0xd1, 0x0c, 0xaa, 0x5e, 0x3d, 0x7b, 0xbb, 0x7e, 0x59, 0x71, 0x3f, 0xa0, 0x32, 0xb9, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_3213 = { .name = "ecdh_secp521r1_3213", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3213_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3213_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3213_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 730 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3214 for ECDH, tcId is 731 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3214_peerpubkey[] = { 0x01, 0x4d, 0x6f, 0x8f, 0xa1, 0x57, 0xee, 0xbe, 0xa8, 0xbc, 0x27, 0x28, 0x62, 0xd9, 0xf8, 0xfb, 0xee, 0x63, 0xda, 0x5b, 0xe9, 0x53, 0xe3, 0x33, 0xd0, 0x6b, 0x74, 0x43, 0xcb, 0xb9, 0x6d, 0x0c, 0x46, 0x4a, 0x17, 0x19, 0x43, 0xb8, 0x25, 0x65, 0xea, 0x71, 0x0c, 0x12, 0x64, 0x98, 0xae, 0xb7, 0x97, 0x98, 0x23, 0xb2, 0xeb, 0x1e, 0x81, 0xbe, 0xd3, 0xff, 0xdd, 0x6e, 0x40, 0xf4, 0x52, 0x1e, 0x6c, 0xb9, 0x00, 0x70, 0x1b, 0xcf, 0x9e, 0x45, 0xd6, 0xae, 0x48, 0x99, 0xd9, 0x6e, 0xd5, 0x9a, 0x80, 0x15, 0xc4, 0x54, 0x73, 0x5f, 0x9e, 0xfd, 0xdb, 0x47, 0x59, 0x8f, 0xbe, 0x04, 0x7e, 0x8c, 0x40, 0x21, 0xd7, 0x86, 0xdb, 0x35, 0x39, 0xda, 0x79, 0x76, 0x03, 0x58, 0xc0, 0xf9, 0x28, 0xb2, 0xb7, 0x2c, 0xb9, 0x36, 0xcb, 0x66, 0xe4, 0xfc, 0x81, 0xff, 0x07, 0x9e, 0xcd, 0xe8, 0xe1, 0x89, 0x89, 0xe8, 0x79, 0x50, }; static const unsigned char ecdh_secp521r1_3214_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3214_sharedsecret[] = { 0x01, 0x40, 0x63, 0xb3, 0xdc, 0xe4, 0xc9, 0x9f, 0x5f, 0x53, 0xe5, 0xf3, 0x60, 0x87, 0x5c, 0x02, 0xbd, 0x45, 0x34, 0xa8, 0x3b, 0xbb, 0x77, 0x9b, 0xe9, 0xeb, 0x05, 0xe6, 0x70, 0x59, 0x5e, 0x57, 0xa7, 0x08, 0x69, 0x1c, 0x5d, 0xf0, 0xa0, 0x06, 0x2b, 0x43, 0xd0, 0xfa, 0x34, 0x9d, 0xb2, 0x01, 0xd6, 0x27, 0x9c, 0x13, 0x1d, 0x84, 0xe9, 0x66, 0x2c, 0xf8, 0x2f, 0xbe, 0xea, 0xb6, 0xea, 0x02, 0x94, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3214 = { .name = "ecdh_secp521r1_3214", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3214_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3214_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3214_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 731 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3215 for ECDH, tcId is 732 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3215_peerpubkey[] = { 0x01, 0x63, 0x61, 0xd1, 0x92, 0x07, 0xfa, 0xd3, 0xb9, 0xcf, 0x68, 0xa0, 0xd7, 0xcb, 0x22, 0x47, 0x44, 0xda, 0xf5, 0xc1, 0x8c, 0x0d, 0x79, 0xf0, 0x60, 0xab, 0x13, 0x69, 0xd7, 0xf0, 0x26, 0xc2, 0x1d, 0xa2, 0xde, 0xa0, 0x98, 0x73, 0x9f, 0xc7, 0x9e, 0x66, 0x4b, 0xce, 0xed, 0x06, 0xbd, 0x8b, 0x8f, 0x29, 0x47, 0x19, 0x07, 0x75, 0x43, 0x19, 0xce, 0xfd, 0x9f, 0x21, 0x6f, 0x32, 0x26, 0xa4, 0xa8, 0x7b, 0x00, 0xb7, 0x00, 0x7b, 0x2d, 0xf9, 0xa1, 0x23, 0xdd, 0x81, 0xdf, 0x4f, 0x5d, 0x52, 0x13, 0x58, 0x0c, 0x17, 0x4f, 0xd6, 0x8a, 0xa5, 0xde, 0x23, 0xe5, 0x38, 0x6c, 0x1f, 0x76, 0xbc, 0x67, 0x11, 0xba, 0xbf, 0xab, 0x72, 0xcf, 0x9b, 0xfa, 0x32, 0x8e, 0x97, 0xfb, 0xe9, 0xa3, 0xb7, 0x9a, 0xd0, 0xd3, 0x9a, 0x77, 0x8e, 0x3c, 0x64, 0xb7, 0x4a, 0x34, 0x31, 0x9a, 0xea, 0x04, 0x23, 0xfa, 0x27, 0x00, 0x67, }; static const unsigned char ecdh_secp521r1_3215_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3215_sharedsecret[] = { 0x00, 0x76, 0x51, 0x88, 0xff, 0x6d, 0x0d, 0xb1, 0x90, 0x91, 0x4b, 0x3e, 0xe9, 0xcb, 0xf6, 0x33, 0xe9, 0xe5, 0xc2, 0x60, 0x7b, 0x73, 0x23, 0xe7, 0x0e, 0x76, 0xc3, 0xcf, 0x3e, 0x2b, 0x3f, 0x1c, 0xdc, 0xed, 0xa6, 0x2b, 0x50, 0x75, 0xa8, 0xd4, 0x3b, 0x30, 0x6f, 0xc8, 0x3e, 0x5e, 0x43, 0x94, 0xcb, 0xa6, 0xbe, 0x00, 0x98, 0x87, 0x7b, 0x20, 0x00, 0x38, 0x55, 0x08, 0xd0, 0x94, 0x2c, 0xdb, 0xa4, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3215 = { .name = "ecdh_secp521r1_3215", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3215_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3215_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3215_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 732 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3216 for ECDH, tcId is 733 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3216_peerpubkey[] = { 0x01, 0x12, 0x3d, 0x8b, 0xb1, 0x7d, 0x84, 0x76, 0x0c, 0xeb, 0x4e, 0x3e, 0xc9, 0x83, 0x87, 0x47, 0x8f, 0x95, 0x87, 0xdc, 0xc0, 0x5b, 0x47, 0x20, 0xd8, 0x83, 0x4f, 0xfc, 0xd8, 0x2c, 0x06, 0xf5, 0x9a, 0xba, 0x27, 0x83, 0x65, 0xe8, 0x34, 0xbc, 0xa2, 0x73, 0x6e, 0xd6, 0x33, 0x37, 0x57, 0xf5, 0x79, 0x20, 0x25, 0x6b, 0xd9, 0xe1, 0xb1, 0xbf, 0x3d, 0x43, 0xb6, 0x20, 0x89, 0x6d, 0xbf, 0xd8, 0x77, 0xa3, 0x01, 0x21, 0x35, 0xf5, 0x87, 0xed, 0x6a, 0x6b, 0xd6, 0xb0, 0x95, 0xd4, 0x1c, 0x7a, 0xbc, 0x2a, 0x70, 0xc9, 0xd4, 0x94, 0x61, 0xd3, 0xed, 0x7c, 0xf4, 0xe7, 0x81, 0xc8, 0x20, 0x05, 0x83, 0xa0, 0xe8, 0xe9, 0x4a, 0xb8, 0xa0, 0x0b, 0x52, 0xa7, 0xd0, 0xbb, 0xf1, 0x82, 0xcb, 0x3b, 0xc0, 0x83, 0x2f, 0xe8, 0x2c, 0xca, 0x18, 0xe5, 0x3e, 0x78, 0xb0, 0x49, 0xbf, 0x9e, 0xa6, 0xac, 0x60, 0x17, 0xe3, 0xd8, }; static const unsigned char ecdh_secp521r1_3216_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3216_sharedsecret[] = { 0x01, 0xb1, 0xc9, 0xe8, 0xa4, 0x74, 0x8e, 0x6e, 0x1a, 0xea, 0x3d, 0xab, 0xf3, 0x7a, 0xe7, 0x4b, 0xaf, 0x28, 0x61, 0xe4, 0x82, 0xaf, 0x32, 0x30, 0x9d, 0xc9, 0x3e, 0x7c, 0x7e, 0xac, 0xea, 0xa5, 0x84, 0x41, 0x64, 0x45, 0xa1, 0xec, 0x4f, 0x0f, 0x24, 0xb3, 0x93, 0x8e, 0x11, 0x81, 0x91, 0xa5, 0xbf, 0x9e, 0x72, 0x88, 0x5b, 0xba, 0x5c, 0x28, 0x22, 0x75, 0xc4, 0x9f, 0x5e, 0x4b, 0xd8, 0x2e, 0x25, 0x67, }; static const wycheproof_ecdh_test ecdh_secp521r1_3216 = { .name = "ecdh_secp521r1_3216", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3216_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3216_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3216_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 733 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3217 for ECDH, tcId is 734 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3217_peerpubkey[] = { 0x00, 0x61, 0xaa, 0x4a, 0xa6, 0x80, 0xe5, 0xa3, 0x27, 0xee, 0x04, 0x95, 0xbe, 0xff, 0x81, 0xc9, 0xa9, 0x60, 0x1a, 0x4a, 0x42, 0xa8, 0x30, 0x72, 0x55, 0x38, 0xf9, 0x94, 0x0d, 0x23, 0x4f, 0x8f, 0xec, 0x38, 0xff, 0xd2, 0x15, 0x37, 0x09, 0x44, 0x92, 0xb5, 0x8e, 0xcc, 0x41, 0x02, 0xed, 0xdf, 0xe1, 0x8e, 0xe8, 0xf5, 0x94, 0x7c, 0x47, 0x36, 0xdc, 0x60, 0x06, 0x6f, 0xa8, 0xd9, 0xb8, 0x23, 0x0f, 0x40, 0x01, 0x73, 0x02, 0x96, 0xbd, 0x1d, 0x13, 0xab, 0x65, 0xe8, 0x5a, 0xdc, 0x69, 0xc0, 0x82, 0x2e, 0x20, 0xe7, 0xdd, 0x73, 0x97, 0x55, 0xbc, 0x28, 0xd7, 0x23, 0x1e, 0x79, 0xba, 0x1c, 0x31, 0x25, 0x0c, 0x19, 0x72, 0x25, 0x2c, 0x28, 0x08, 0x96, 0xf3, 0x0a, 0x26, 0xc8, 0x80, 0xa3, 0x48, 0x04, 0x1b, 0x09, 0x58, 0xee, 0x04, 0x43, 0xc2, 0xe4, 0x03, 0xeb, 0x98, 0x28, 0x59, 0x9c, 0xda, 0x90, 0xf7, 0xa8, }; static const unsigned char ecdh_secp521r1_3217_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3217_sharedsecret[] = { 0x01, 0x53, 0xa4, 0x70, 0x9f, 0xc4, 0x74, 0x47, 0x6e, 0x76, 0x94, 0x8b, 0x04, 0xd4, 0x30, 0xc2, 0xed, 0x70, 0x8a, 0xb6, 0x97, 0xbb, 0x54, 0x58, 0x9d, 0x35, 0xa7, 0xc9, 0x6d, 0x33, 0x63, 0x20, 0x72, 0xb4, 0xa3, 0x7d, 0xee, 0xa3, 0x42, 0x8d, 0x8d, 0x0a, 0x93, 0x3c, 0x7b, 0xff, 0xed, 0x06, 0x8d, 0x92, 0xa9, 0x06, 0x1f, 0x0f, 0xa3, 0x9e, 0x62, 0xe7, 0xd5, 0x52, 0xb3, 0x1e, 0x4a, 0x15, 0x05, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_3217 = { .name = "ecdh_secp521r1_3217", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3217_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3217_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3217_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 734 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3218 for ECDH, tcId is 735 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3218_peerpubkey[] = { 0x00, 0x86, 0xb5, 0xbc, 0xf4, 0xbb, 0xd0, 0x5a, 0x5b, 0x56, 0x51, 0xbc, 0xa9, 0x79, 0x1e, 0x55, 0x0f, 0xec, 0x3e, 0x9b, 0x2f, 0xf0, 0xd6, 0xbb, 0x25, 0x5b, 0x2d, 0x91, 0x90, 0xf5, 0x94, 0x64, 0x39, 0xb5, 0x3f, 0x95, 0x13, 0xa1, 0x22, 0xe5, 0xca, 0x0a, 0x9f, 0xf1, 0x2e, 0x33, 0x86, 0xb7, 0x52, 0x4e, 0x46, 0xd7, 0xf5, 0x61, 0x67, 0xca, 0x61, 0x27, 0xce, 0x83, 0xe6, 0x7b, 0xf5, 0xdc, 0xe6, 0xce, 0x00, 0x86, 0x5b, 0x20, 0x83, 0xd5, 0xc0, 0x20, 0x02, 0x85, 0xee, 0x7f, 0xf4, 0x95, 0x09, 0x22, 0xa8, 0xab, 0xd4, 0xee, 0xf9, 0x3d, 0x8d, 0xed, 0x25, 0xb5, 0x3c, 0xf9, 0xaf, 0x32, 0x7e, 0x6e, 0x4c, 0x30, 0xc4, 0x43, 0x8e, 0xd2, 0xc4, 0x0c, 0x67, 0xe8, 0x78, 0x35, 0x51, 0x83, 0x61, 0xc9, 0x8f, 0xd7, 0x43, 0xd8, 0x59, 0xf6, 0xc1, 0x73, 0xa9, 0x51, 0xa9, 0x5a, 0x99, 0x40, 0x9e, 0x83, 0x19, 0x59, }; static const unsigned char ecdh_secp521r1_3218_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3218_sharedsecret[] = { 0x01, 0x67, 0xd0, 0xda, 0x4c, 0x5d, 0xad, 0xd2, 0x5f, 0x87, 0x87, 0xa8, 0x4a, 0x96, 0x44, 0x5c, 0x25, 0x4d, 0x8e, 0x17, 0xfe, 0xee, 0xb7, 0xd2, 0x1a, 0xf6, 0x71, 0x2e, 0x30, 0x7c, 0xd7, 0x35, 0x1e, 0xbe, 0x18, 0x5c, 0x0a, 0x52, 0x74, 0x02, 0xa5, 0xfe, 0xda, 0xa1, 0xb2, 0x6a, 0xce, 0x55, 0x49, 0xab, 0x13, 0xb2, 0x08, 0x15, 0x6d, 0x14, 0x38, 0x9f, 0xd8, 0x13, 0x3c, 0x6f, 0x4f, 0xe3, 0x1e, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3218 = { .name = "ecdh_secp521r1_3218", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3218_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3218_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3218_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 735 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3219 for ECDH, tcId is 736 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3219_peerpubkey[] = { 0x01, 0xa0, 0x9a, 0xca, 0x76, 0x5c, 0x94, 0x9b, 0x65, 0x6a, 0xbd, 0xb5, 0x96, 0x80, 0x55, 0x31, 0x63, 0x84, 0x24, 0x5a, 0xb7, 0x75, 0xe8, 0x58, 0x41, 0x19, 0x40, 0x5c, 0x85, 0xab, 0x79, 0xfd, 0xc7, 0xef, 0x1e, 0x07, 0x9a, 0x35, 0xbd, 0x29, 0x9a, 0xe1, 0x49, 0xd6, 0x5f, 0x15, 0xab, 0x0d, 0x64, 0x91, 0x2c, 0x5c, 0x9a, 0x62, 0xbc, 0xa4, 0x1b, 0xdb, 0x58, 0x67, 0x82, 0xe8, 0xeb, 0x0c, 0xff, 0x96, 0x00, 0x25, 0x8a, 0x50, 0xf1, 0xbb, 0x54, 0x2d, 0xd1, 0x64, 0xb8, 0x94, 0x3b, 0xde, 0x1f, 0x20, 0x78, 0xea, 0x7d, 0x3e, 0x89, 0x18, 0x1e, 0xfa, 0xb2, 0x42, 0xda, 0x30, 0xb1, 0xa1, 0x25, 0x62, 0x18, 0x41, 0x04, 0x44, 0x9e, 0x4d, 0x75, 0x9d, 0xae, 0x9c, 0xb9, 0xd0, 0x75, 0xc3, 0x04, 0x56, 0xb1, 0xa4, 0xe4, 0x87, 0x40, 0xdc, 0xca, 0xd7, 0xb5, 0x9b, 0x17, 0xdc, 0x1c, 0x81, 0xd5, 0x17, 0xf2, 0xcd, }; static const unsigned char ecdh_secp521r1_3219_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3219_sharedsecret[] = { 0x01, 0x52, 0x8f, 0x5a, 0xb7, 0x58, 0xd9, 0xb6, 0x11, 0x2f, 0x19, 0xe1, 0x02, 0x1f, 0x50, 0x89, 0xd5, 0x26, 0xcc, 0x50, 0x91, 0x10, 0x26, 0xe2, 0x7d, 0x44, 0xca, 0x6d, 0x77, 0x22, 0x0c, 0x81, 0x6b, 0x23, 0x26, 0xa2, 0xdd, 0x6b, 0x91, 0x52, 0x40, 0x88, 0x13, 0xbf, 0x8d, 0x39, 0x99, 0x06, 0xcb, 0x1a, 0xe3, 0x3a, 0x52, 0xcf, 0x67, 0xe7, 0x47, 0x09, 0xd7, 0x96, 0xc7, 0x07, 0x01, 0x71, 0x04, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_3219 = { .name = "ecdh_secp521r1_3219", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3219_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3219_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3219_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 736 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3220 for ECDH, tcId is 737 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3220_peerpubkey[] = { 0x00, 0xa6, 0xe2, 0x16, 0xa0, 0x9b, 0x63, 0x60, 0x32, 0xf3, 0x9e, 0xea, 0x55, 0x21, 0x92, 0xc2, 0x42, 0xbe, 0x7f, 0xf5, 0x47, 0x8f, 0x7f, 0x7f, 0x9b, 0x0c, 0xaa, 0x25, 0xb8, 0xae, 0xed, 0xea, 0xde, 0xd3, 0x3b, 0xa6, 0x6b, 0x5f, 0xee, 0xc7, 0xe7, 0x5b, 0x0d, 0xe3, 0xe7, 0xfe, 0xe1, 0x42, 0xf2, 0x50, 0xe6, 0xcb, 0x4c, 0x7b, 0x09, 0xa1, 0x68, 0x6c, 0xa0, 0xbd, 0x9c, 0xf2, 0xd2, 0xd4, 0x8b, 0xae, 0x00, 0xfc, 0xfa, 0xfc, 0xa2, 0x39, 0x1a, 0x55, 0xad, 0xe0, 0xa7, 0x7f, 0xb9, 0xa3, 0x81, 0xcb, 0x0a, 0xf1, 0x62, 0x53, 0xcd, 0x3b, 0xc5, 0x87, 0x23, 0xf8, 0x52, 0x76, 0x70, 0xb5, 0x95, 0x67, 0x69, 0x8e, 0x7f, 0xc3, 0xa1, 0x7e, 0x6d, 0x26, 0xb3, 0xa8, 0xa4, 0xa6, 0x17, 0xe2, 0xb1, 0x2e, 0x6d, 0x60, 0x39, 0x1f, 0x50, 0x31, 0x17, 0xfe, 0xa2, 0xdd, 0xb4, 0x69, 0x78, 0xb6, 0xd2, 0xd3, 0x0a, 0x26, }; static const unsigned char ecdh_secp521r1_3220_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3220_sharedsecret[] = { 0x01, 0xd9, 0x37, 0xdb, 0x2f, 0xca, 0xae, 0x79, 0x5f, 0x4a, 0xec, 0x63, 0x65, 0xbe, 0x81, 0xa5, 0x14, 0x93, 0x9c, 0x54, 0x83, 0x57, 0xc6, 0x14, 0x00, 0x75, 0xdb, 0x4a, 0x07, 0x6b, 0xe8, 0xc0, 0xd3, 0xa6, 0x12, 0x6b, 0x72, 0x0b, 0x10, 0x5b, 0x3d, 0x9c, 0xf6, 0xa8, 0x30, 0x73, 0x46, 0xcb, 0x83, 0x2f, 0xbe, 0x3a, 0x93, 0x60, 0x17, 0xa6, 0xe6, 0x20, 0x59, 0xba, 0xb6, 0x72, 0x3e, 0x88, 0x51, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_3220 = { .name = "ecdh_secp521r1_3220", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3220_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3220_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3220_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 737 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3221 for ECDH, tcId is 738 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3221_peerpubkey[] = { 0x00, 0x50, 0xb8, 0x62, 0xa8, 0x2a, 0x0b, 0xa9, 0x2a, 0xb4, 0x5b, 0x39, 0x6c, 0x51, 0xaa, 0x51, 0x9a, 0xa4, 0x4d, 0x11, 0x7f, 0x55, 0x76, 0x0e, 0x5a, 0x4f, 0x1f, 0x17, 0x7d, 0xfb, 0x5b, 0xcd, 0xf0, 0xd5, 0x4f, 0xb9, 0x95, 0x65, 0xe9, 0xf7, 0xd6, 0x75, 0x7c, 0x04, 0xf4, 0x94, 0x56, 0xae, 0xa8, 0x70, 0x75, 0x56, 0x0b, 0x1d, 0xc5, 0x14, 0x5b, 0xfa, 0x40, 0x68, 0x68, 0x4b, 0x04, 0x17, 0x8a, 0x85, 0x01, 0xe1, 0xc6, 0x8a, 0x57, 0xb3, 0x8e, 0x22, 0x81, 0x80, 0x6f, 0x3d, 0xb7, 0xb0, 0xaf, 0x0e, 0x3c, 0x2b, 0x5e, 0x52, 0xd5, 0xd5, 0xd4, 0x89, 0x0c, 0x5b, 0x9f, 0x5d, 0x73, 0x7d, 0xf9, 0xa7, 0x06, 0xe6, 0x31, 0xe4, 0x45, 0x3f, 0x6e, 0x79, 0xcb, 0xc2, 0x8d, 0x57, 0xbd, 0xc6, 0x04, 0xae, 0xa8, 0x01, 0x0e, 0xb4, 0x91, 0xf5, 0xc0, 0x9f, 0xeb, 0x20, 0xe3, 0xbc, 0x0c, 0x0e, 0xd4, 0xae, 0x44, 0xbf, }; static const unsigned char ecdh_secp521r1_3221_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3221_sharedsecret[] = { 0x00, 0xcb, 0xeb, 0x5c, 0x9d, 0xf0, 0xbb, 0x30, 0xa8, 0xb4, 0x5b, 0xc1, 0x7a, 0x5b, 0xd2, 0x55, 0xe2, 0xc8, 0x24, 0x9d, 0xbf, 0x91, 0x33, 0x70, 0x5b, 0xf1, 0xe5, 0x02, 0xd4, 0xe7, 0x30, 0xed, 0xd3, 0x13, 0x1c, 0x8d, 0x37, 0x0a, 0xa7, 0xfc, 0x78, 0xd4, 0x6b, 0x22, 0x91, 0x18, 0x1b, 0xb4, 0x0c, 0xa8, 0x5e, 0x7a, 0x0a, 0xc6, 0x07, 0x7c, 0xf4, 0x36, 0x79, 0x27, 0xd8, 0xc5, 0xb6, 0x74, 0x43, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_3221 = { .name = "ecdh_secp521r1_3221", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3221_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3221_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3221_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 738 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3222 for ECDH, tcId is 739 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3222_peerpubkey[] = { 0x00, 0x57, 0xf2, 0x7c, 0xc7, 0x40, 0x0b, 0x6f, 0x9b, 0xb3, 0xa0, 0xf7, 0x23, 0xbc, 0x06, 0x70, 0x93, 0x8f, 0xf8, 0x88, 0xf8, 0x79, 0x17, 0x10, 0x0a, 0x93, 0x21, 0x15, 0xb1, 0x27, 0x53, 0xa1, 0xfb, 0xb0, 0x86, 0xe5, 0xb2, 0x25, 0x20, 0x9b, 0x4f, 0x70, 0x70, 0x3a, 0xba, 0x37, 0x44, 0x43, 0xf1, 0x1f, 0xcb, 0xcf, 0x87, 0x79, 0x49, 0x1e, 0x22, 0x97, 0xfb, 0xae, 0x7f, 0x18, 0xbe, 0x2d, 0x4f, 0x23, 0x00, 0x06, 0xa7, 0xf0, 0x4e, 0x4d, 0xe3, 0x74, 0x14, 0x9d, 0xcf, 0x59, 0x6d, 0x94, 0xa6, 0xd7, 0xef, 0x8d, 0x30, 0xd9, 0x88, 0x8b, 0xc7, 0x50, 0x02, 0x26, 0xed, 0x7b, 0xc8, 0x56, 0x07, 0x29, 0xb7, 0xc4, 0xb4, 0xbf, 0x28, 0xf4, 0xf9, 0x2d, 0x7f, 0x3b, 0x25, 0xa5, 0xac, 0xe8, 0x86, 0xe8, 0xbe, 0x3e, 0xd0, 0x1a, 0xf0, 0x21, 0x69, 0xca, 0xea, 0x76, 0x5d, 0xc7, 0x63, 0xd0, 0xda, 0x94, 0x95, 0xc7, }; static const unsigned char ecdh_secp521r1_3222_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3222_sharedsecret[] = { 0x01, 0xa2, 0x6a, 0xa9, 0x92, 0x22, 0xe4, 0x4e, 0xa4, 0xd6, 0xdc, 0xee, 0x22, 0x9f, 0x21, 0xf4, 0x0f, 0x72, 0x3b, 0x5c, 0xbb, 0xe9, 0x2d, 0x56, 0x56, 0x12, 0x52, 0xe7, 0xb0, 0x9f, 0x96, 0xeb, 0x27, 0x1a, 0xd9, 0x2b, 0x3e, 0x16, 0x46, 0x46, 0x08, 0x74, 0x56, 0x15, 0x18, 0x2f, 0xbb, 0x70, 0x50, 0xe2, 0x99, 0x1b, 0x0a, 0xfc, 0x04, 0x0f, 0x27, 0xca, 0x74, 0xe3, 0x58, 0x34, 0x64, 0x66, 0xcb, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3222 = { .name = "ecdh_secp521r1_3222", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3222_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3222_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3222_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 739 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3223 for ECDH, tcId is 740 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3223_peerpubkey[] = { 0x00, 0xe0, 0x4a, 0x04, 0xd1, 0xe2, 0xbf, 0xa1, 0xa5, 0xf6, 0xf3, 0x78, 0x67, 0xec, 0x25, 0x14, 0x50, 0xd4, 0x6e, 0x6b, 0xd2, 0x80, 0x67, 0xcb, 0x99, 0xa6, 0x12, 0xf6, 0xef, 0xab, 0xf1, 0xf7, 0x2c, 0x70, 0xea, 0xf7, 0x2d, 0x70, 0xda, 0xab, 0x53, 0x89, 0x0d, 0x54, 0x80, 0x6c, 0x46, 0x04, 0x77, 0x66, 0x29, 0x3d, 0xe0, 0x85, 0xf0, 0xf4, 0x04, 0x62, 0xb2, 0xf5, 0x6a, 0xc4, 0xfc, 0x68, 0x11, 0xbb, 0x00, 0xa2, 0x0f, 0xa0, 0x0f, 0xe8, 0xcc, 0xd8, 0xb0, 0x07, 0xef, 0xdd, 0x6d, 0xaf, 0xbd, 0xaf, 0x91, 0xb1, 0x09, 0x24, 0xc0, 0xb8, 0xd5, 0x83, 0xce, 0x82, 0x92, 0x02, 0xc8, 0x53, 0x3e, 0x98, 0x15, 0x45, 0x17, 0x19, 0xf1, 0x2c, 0xaf, 0xef, 0xc3, 0xd3, 0xbd, 0xca, 0x5d, 0x51, 0x02, 0x47, 0xd5, 0x9f, 0xfd, 0x20, 0xd5, 0x39, 0xe2, 0x21, 0x65, 0xf1, 0x1b, 0x5d, 0x10, 0xe9, 0x12, 0xf1, 0xf9, 0xe4, }; static const unsigned char ecdh_secp521r1_3223_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3223_sharedsecret[] = { 0x00, 0x9a, 0x6c, 0x01, 0x7d, 0xae, 0x44, 0x95, 0x7d, 0xb6, 0xab, 0x34, 0x76, 0xa9, 0xdb, 0xeb, 0x66, 0x0e, 0xa5, 0x4e, 0x20, 0xab, 0x78, 0x5d, 0x5a, 0x34, 0x1e, 0x0e, 0x02, 0x65, 0x05, 0x0f, 0xde, 0x21, 0x79, 0x00, 0x71, 0x89, 0x08, 0xe1, 0x76, 0x3e, 0xeb, 0x66, 0x53, 0x04, 0x75, 0xfc, 0x0d, 0x0a, 0x13, 0x46, 0xc6, 0xc3, 0xbc, 0x29, 0x52, 0xda, 0x7c, 0xf0, 0x34, 0xdf, 0x18, 0x65, 0x06, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_3223 = { .name = "ecdh_secp521r1_3223", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3223_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3223_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3223_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 740 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3224 for ECDH, tcId is 741 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3224_peerpubkey[] = { 0x00, 0x8d, 0x3e, 0x0c, 0x98, 0x20, 0xd2, 0xb4, 0x97, 0x11, 0x78, 0x08, 0x49, 0xab, 0x93, 0x49, 0xde, 0x29, 0x58, 0x51, 0xb6, 0x9a, 0xc0, 0xff, 0x6b, 0x2e, 0xda, 0x1f, 0xdd, 0xc1, 0x7e, 0x97, 0xc7, 0xac, 0x26, 0x95, 0xf2, 0x8e, 0xf6, 0xdd, 0xc1, 0xe1, 0x60, 0x62, 0xee, 0x48, 0x29, 0x5f, 0xff, 0x57, 0x11, 0xcd, 0x87, 0x19, 0x92, 0xa8, 0xa1, 0x84, 0xb8, 0xe5, 0xb4, 0x9d, 0x71, 0x78, 0xb5, 0xff, 0x01, 0x70, 0x9e, 0x43, 0x5e, 0xe6, 0xc7, 0xcc, 0xfe, 0x66, 0x92, 0xc7, 0xf1, 0x69, 0xae, 0x35, 0x7e, 0x94, 0xfe, 0xeb, 0xca, 0xd5, 0xd6, 0xff, 0x0d, 0xa7, 0xff, 0x55, 0xa1, 0x9d, 0x14, 0x09, 0x00, 0x6a, 0xa6, 0x08, 0x3f, 0x89, 0x78, 0x24, 0xde, 0x4c, 0x0c, 0x59, 0xbc, 0x80, 0xd4, 0x06, 0x07, 0xa9, 0xbc, 0xfd, 0xf6, 0x66, 0xb9, 0xaa, 0x38, 0x8f, 0xa3, 0xb8, 0x65, 0xd7, 0x6c, 0x49, 0x29, 0x16, }; static const unsigned char ecdh_secp521r1_3224_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3224_sharedsecret[] = { 0x01, 0xef, 0xd3, 0xfe, 0xff, 0xad, 0x8d, 0x28, 0x37, 0x3d, 0xff, 0xc0, 0xe3, 0xa9, 0xcd, 0x54, 0x40, 0x85, 0xff, 0xc2, 0x8f, 0x5b, 0xb8, 0x06, 0x97, 0x80, 0x1d, 0xb4, 0xcc, 0xb9, 0x83, 0xfa, 0x23, 0x28, 0x22, 0x2a, 0x42, 0x9e, 0x7d, 0x63, 0x67, 0xdd, 0xd4, 0xa4, 0x08, 0x11, 0xac, 0x2a, 0xdc, 0x8f, 0xbd, 0x8e, 0xa0, 0x6e, 0xa4, 0x08, 0x80, 0x9d, 0x5b, 0x82, 0xfb, 0xed, 0x3c, 0x8a, 0x95, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp521r1_3224 = { .name = "ecdh_secp521r1_3224", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3224_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3224_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3224_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 741 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3225 for ECDH, tcId is 742 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3225_peerpubkey[] = { 0x01, 0xc0, 0x2e, 0xbd, 0x54, 0x76, 0x5a, 0x38, 0x25, 0xd7, 0xbf, 0xad, 0x56, 0x35, 0xa9, 0x8d, 0x97, 0xf7, 0x3c, 0xfb, 0x57, 0xda, 0x9c, 0x42, 0xc1, 0xf4, 0x64, 0x20, 0x5f, 0xac, 0x01, 0xcd, 0x89, 0x9f, 0x7e, 0x09, 0x5a, 0x10, 0x39, 0xb4, 0x7e, 0x0f, 0xcb, 0xeb, 0xd6, 0x5b, 0x6e, 0xa2, 0xc4, 0x86, 0xa7, 0xbd, 0xe4, 0x90, 0x0e, 0x95, 0x48, 0xd8, 0xa6, 0x4a, 0x0e, 0x6f, 0x39, 0xd6, 0x1c, 0x95, 0x01, 0xf5, 0xeb, 0x9d, 0x24, 0x91, 0xb4, 0x2e, 0x3d, 0x02, 0xc2, 0x0f, 0xf8, 0x53, 0x08, 0x0a, 0xa2, 0xdb, 0x82, 0x3f, 0x60, 0x91, 0xa6, 0x2a, 0x2a, 0x6b, 0xb5, 0x2d, 0x09, 0xd3, 0xc1, 0x62, 0xa3, 0xad, 0x02, 0xe0, 0x24, 0x2d, 0x24, 0x3a, 0x61, 0xce, 0x00, 0x63, 0xff, 0x8f, 0x8e, 0x93, 0xec, 0x21, 0xae, 0xca, 0x4a, 0xe2, 0xb1, 0x52, 0xb8, 0xf6, 0x8d, 0x40, 0xdd, 0x87, 0x6f, 0x80, 0xe7, 0xc3, }; static const unsigned char ecdh_secp521r1_3225_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3225_sharedsecret[] = { 0x01, 0x42, 0x47, 0x84, 0xd1, 0xfc, 0xa3, 0xb4, 0xc7, 0x81, 0x10, 0x83, 0x85, 0x5f, 0xbf, 0x86, 0x62, 0xe1, 0xf0, 0xee, 0x52, 0xb5, 0xff, 0xaa, 0xa0, 0xcf, 0x89, 0x0b, 0xb9, 0x04, 0x15, 0x05, 0x12, 0xa7, 0x5a, 0x10, 0x77, 0xea, 0xd3, 0x9a, 0xe3, 0x7e, 0xc6, 0x7d, 0x5a, 0x3c, 0x03, 0xd2, 0xfc, 0xb5, 0xf9, 0xf6, 0x95, 0xf9, 0x91, 0x8c, 0xf4, 0x87, 0x2c, 0x5b, 0x4a, 0x75, 0x7d, 0x1d, 0x0f, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_3225 = { .name = "ecdh_secp521r1_3225", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3225_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3225_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3225_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 742 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3226 for ECDH, tcId is 743 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3226_peerpubkey[] = { 0x00, 0x4b, 0x04, 0xd3, 0xd1, 0xc6, 0xc4, 0x70, 0x69, 0xc0, 0xbd, 0x44, 0x97, 0x3e, 0x75, 0xac, 0x75, 0x3c, 0x9f, 0x28, 0x4b, 0x0b, 0x1d, 0x52, 0x30, 0x8b, 0xcd, 0xd9, 0xa1, 0xe0, 0x63, 0x07, 0xa8, 0xce, 0x7a, 0xf0, 0x93, 0x62, 0xf8, 0xcc, 0x6a, 0x2b, 0x5b, 0x4b, 0x23, 0x49, 0xe2, 0x83, 0x09, 0x56, 0xab, 0xb1, 0x19, 0x1c, 0x7e, 0x84, 0x58, 0x2d, 0xb1, 0x22, 0x8c, 0x2e, 0xc2, 0x50, 0x21, 0xcc, 0x00, 0xc2, 0xaf, 0x05, 0xe5, 0xc3, 0x10, 0x38, 0x8c, 0x8a, 0x16, 0x83, 0x5d, 0x06, 0x04, 0x2e, 0x49, 0x0a, 0x9e, 0xa8, 0xc4, 0xc9, 0xbc, 0x53, 0x2c, 0x2e, 0x7d, 0x46, 0xf2, 0x00, 0x10, 0x7a, 0x97, 0xe0, 0xfb, 0xc5, 0xd9, 0xfa, 0xca, 0x9d, 0xcb, 0x22, 0x49, 0x51, 0x0e, 0x19, 0x98, 0x96, 0xac, 0x36, 0xe0, 0x39, 0x9b, 0x0f, 0x17, 0x65, 0x04, 0x85, 0xeb, 0x74, 0x8e, 0x1f, 0xff, 0x9c, 0x77, 0xfa, }; static const unsigned char ecdh_secp521r1_3226_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3226_sharedsecret[] = { 0x01, 0x32, 0xb9, 0x76, 0x32, 0xe5, 0x7b, 0xe5, 0x55, 0x86, 0xe8, 0x87, 0xd2, 0x6d, 0xad, 0x41, 0xe5, 0x00, 0xbf, 0xfc, 0xfa, 0x96, 0x36, 0x84, 0x84, 0x55, 0x7f, 0x34, 0x7c, 0x4b, 0xe8, 0x21, 0x30, 0x2d, 0xe8, 0xf3, 0xf7, 0x2b, 0x98, 0x65, 0x83, 0x4d, 0x57, 0x9c, 0xf6, 0x96, 0x40, 0x61, 0x45, 0xea, 0xb5, 0x12, 0xe2, 0xf9, 0x6d, 0x2a, 0xa5, 0x89, 0x74, 0x8f, 0x64, 0x42, 0x08, 0x69, 0x12, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3226 = { .name = "ecdh_secp521r1_3226", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3226_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3226_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3226_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 743 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3227 for ECDH, tcId is 744 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3227_peerpubkey[] = { 0x00, 0xcd, 0xa2, 0xdb, 0x7f, 0xc4, 0xf9, 0xd4, 0xc1, 0xce, 0x36, 0xba, 0x82, 0xa1, 0x84, 0xb2, 0xfb, 0xfe, 0xe2, 0x06, 0xd9, 0xa5, 0xd0, 0x50, 0xd2, 0xbf, 0x1b, 0x2f, 0xc9, 0x2c, 0x0d, 0x0b, 0x78, 0xec, 0xa3, 0xb5, 0x1d, 0x72, 0x4a, 0xa5, 0xfa, 0x48, 0xf6, 0x66, 0x97, 0x2b, 0x47, 0x3a, 0xcc, 0xed, 0xc4, 0x97, 0x24, 0xac, 0x2b, 0x3e, 0x77, 0x9d, 0x4c, 0x89, 0x41, 0x98, 0xd9, 0xab, 0x93, 0x7c, 0x00, 0xcd, 0x13, 0x85, 0x7d, 0x84, 0x87, 0x18, 0x37, 0xf7, 0x7a, 0x54, 0xf0, 0xba, 0x9d, 0x18, 0xf6, 0xe9, 0x42, 0xd1, 0xd6, 0xd2, 0xe7, 0x16, 0x7f, 0xb5, 0x3e, 0x35, 0x85, 0xb2, 0x49, 0x43, 0x82, 0x89, 0xab, 0xc6, 0x89, 0x27, 0xac, 0x8c, 0x29, 0xd6, 0x53, 0x77, 0xcc, 0x73, 0xf8, 0x5d, 0x11, 0x35, 0x11, 0xf2, 0x62, 0x2b, 0xff, 0x69, 0x74, 0x65, 0x29, 0x4f, 0x5c, 0xd1, 0xa3, 0x77, 0x28, 0x39, }; static const unsigned char ecdh_secp521r1_3227_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3227_sharedsecret[] = { 0x01, 0xba, 0xef, 0xf7, 0x27, 0x53, 0x0d, 0xed, 0x5f, 0x90, 0x3b, 0x20, 0x90, 0xf9, 0x22, 0xb4, 0x79, 0xc4, 0x63, 0x1a, 0xfc, 0xed, 0x97, 0xef, 0x17, 0x80, 0x98, 0x4d, 0x9d, 0x98, 0xfe, 0x06, 0xa4, 0x7e, 0xf0, 0x71, 0x4e, 0xe4, 0xf2, 0xa3, 0x2f, 0x08, 0xaf, 0xac, 0x5a, 0x58, 0x3a, 0x51, 0x62, 0x29, 0x53, 0x9c, 0x2c, 0x4c, 0x82, 0xf3, 0x61, 0xb6, 0xf1, 0x59, 0x22, 0x2d, 0x5c, 0x13, 0x76, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_3227 = { .name = "ecdh_secp521r1_3227", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3227_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3227_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3227_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 744 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3228 for ECDH, tcId is 745 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3228_peerpubkey[] = { 0x00, 0x3a, 0xb4, 0xdb, 0x21, 0xd5, 0x64, 0x5f, 0x42, 0xbb, 0xf1, 0x62, 0x2e, 0x26, 0xcf, 0xe7, 0x60, 0x3b, 0xf2, 0x22, 0xaf, 0x84, 0x54, 0x9d, 0xd4, 0x84, 0xa6, 0x2e, 0x98, 0xff, 0xef, 0x26, 0xc1, 0x3d, 0xa6, 0x1a, 0xeb, 0x51, 0x57, 0xa9, 0x1d, 0x70, 0xa8, 0x28, 0xe9, 0x68, 0x73, 0xe2, 0x5f, 0x06, 0xc4, 0x5d, 0x65, 0x25, 0x09, 0x30, 0x7b, 0x0c, 0x99, 0x83, 0x91, 0xf9, 0x51, 0xd6, 0x11, 0xdd, 0x01, 0x4e, 0x59, 0x9e, 0x94, 0xf3, 0x27, 0x5c, 0xe6, 0x01, 0x90, 0xaa, 0x63, 0xbd, 0x8c, 0x8b, 0x6e, 0xdd, 0x7e, 0xd1, 0x1e, 0xeb, 0x13, 0x85, 0xd0, 0xd1, 0x13, 0x71, 0x68, 0x62, 0x4e, 0xb6, 0xd8, 0x12, 0x5a, 0xe9, 0xb8, 0x54, 0x61, 0x18, 0x72, 0x01, 0x98, 0x8c, 0xc1, 0x1b, 0xc5, 0x57, 0x68, 0x0d, 0x5b, 0xbb, 0xb4, 0xf5, 0x4c, 0x27, 0xb4, 0x54, 0x98, 0x31, 0xb7, 0xb6, 0xf1, 0xe5, 0x9e, 0x93, }; static const unsigned char ecdh_secp521r1_3228_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3228_sharedsecret[] = { 0x01, 0x85, 0x5a, 0x66, 0x85, 0xdb, 0x05, 0xfe, 0xe3, 0xee, 0xc9, 0xdd, 0x11, 0x75, 0x0d, 0x31, 0x44, 0x9e, 0x40, 0x69, 0x6e, 0x8e, 0x1c, 0x6a, 0x5e, 0x63, 0x34, 0x3d, 0xe2, 0xda, 0xe8, 0x31, 0x47, 0xfa, 0xd3, 0x37, 0xad, 0x90, 0x20, 0xea, 0x13, 0x1f, 0xab, 0x8c, 0x4c, 0xa3, 0x0f, 0x4a, 0x03, 0xe0, 0xbc, 0x62, 0x8a, 0x4a, 0x5a, 0xb7, 0x8a, 0x09, 0xe0, 0x71, 0xfe, 0xad, 0x71, 0x15, 0x43, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp521r1_3228 = { .name = "ecdh_secp521r1_3228", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3228_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3228_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3228_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 745 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3229 for ECDH, tcId is 746 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3229_peerpubkey[] = { 0x00, 0xbc, 0xaf, 0x9d, 0xf5, 0x98, 0x6e, 0xfa, 0x54, 0x2d, 0x7c, 0xe9, 0xee, 0xa0, 0x5e, 0x55, 0x7c, 0x39, 0x3a, 0x3a, 0x3e, 0x3d, 0xdf, 0xab, 0xeb, 0x47, 0x54, 0x9e, 0xf9, 0xa2, 0x92, 0x4e, 0xbf, 0xf5, 0x8f, 0x7f, 0xb5, 0x98, 0x9d, 0x40, 0x42, 0x58, 0x79, 0x16, 0x59, 0xcf, 0x42, 0x1c, 0xd9, 0xd2, 0xeb, 0x1e, 0xf6, 0xcf, 0x21, 0xfe, 0x42, 0x81, 0x82, 0xac, 0xb7, 0x2a, 0xad, 0xb3, 0xfd, 0xc0, 0x00, 0x3d, 0x63, 0x8e, 0xfe, 0x16, 0x36, 0x3a, 0x8a, 0xf8, 0x69, 0xee, 0x85, 0xda, 0xd1, 0xc6, 0xf0, 0x03, 0xd4, 0xf4, 0xf8, 0x27, 0xa7, 0xa1, 0x8c, 0x75, 0xbd, 0x7f, 0xeb, 0x33, 0x01, 0x33, 0xe5, 0xbd, 0x29, 0x7a, 0xbf, 0x56, 0x15, 0x9c, 0x50, 0xc0, 0xd0, 0x4a, 0xa2, 0xe3, 0xb0, 0x19, 0x4d, 0x8d, 0xe2, 0xe7, 0xd0, 0xfe, 0x4d, 0x6d, 0x7a, 0x89, 0x01, 0xfd, 0x36, 0x2e, 0x31, 0x0e, 0xd4, 0xe6, }; static const unsigned char ecdh_secp521r1_3229_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3229_sharedsecret[] = { 0x00, 0xa5, 0x7b, 0xff, 0xf0, 0x31, 0x40, 0x61, 0x1b, 0xe2, 0x3a, 0xd5, 0x2b, 0x3f, 0x0d, 0x52, 0x5a, 0xbc, 0x85, 0x4f, 0x83, 0x0d, 0x3e, 0x48, 0x35, 0xd8, 0x01, 0xfa, 0x97, 0x54, 0xe1, 0xcf, 0xc1, 0x2a, 0x4e, 0x60, 0x18, 0x95, 0x8b, 0x44, 0xba, 0x82, 0x80, 0x87, 0xec, 0xfa, 0xb3, 0xae, 0x91, 0x7a, 0xba, 0x09, 0x0b, 0xe1, 0x46, 0x41, 0x54, 0xac, 0xe5, 0x5d, 0x4c, 0x48, 0x1a, 0xd8, 0x31, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_3229 = { .name = "ecdh_secp521r1_3229", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3229_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3229_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3229_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 746 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3230 for ECDH, tcId is 747 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3230_peerpubkey[] = { 0x00, 0x11, 0x8c, 0x04, 0xc3, 0x2a, 0x75, 0xb0, 0x77, 0x02, 0x32, 0x3c, 0xa2, 0x26, 0xa4, 0xac, 0xe0, 0x54, 0x42, 0x4b, 0x1a, 0x6e, 0x6e, 0xdc, 0xd4, 0x01, 0x1a, 0x03, 0x5f, 0x4b, 0xc0, 0x78, 0x9f, 0x61, 0x51, 0xff, 0x84, 0x9e, 0xff, 0x89, 0x49, 0x55, 0x4f, 0xe4, 0xd5, 0x42, 0xaf, 0x1f, 0x03, 0xc7, 0x9b, 0x36, 0x9f, 0xf4, 0xc3, 0x8d, 0x1d, 0x29, 0xb4, 0xa3, 0xbc, 0x41, 0xd5, 0xe0, 0x5b, 0xb2, 0x01, 0x0f, 0x4b, 0x8d, 0x51, 0x1a, 0xc5, 0xb1, 0xa6, 0x53, 0x4a, 0xac, 0x9d, 0xd2, 0x48, 0x6b, 0x8c, 0xd0, 0x7c, 0xf3, 0xd5, 0xba, 0xbc, 0x24, 0xf7, 0x4f, 0x53, 0x7b, 0x04, 0x11, 0x5a, 0x0a, 0x8f, 0x6d, 0x79, 0x77, 0x98, 0xfc, 0x80, 0x7f, 0xb0, 0x02, 0x74, 0x6b, 0x27, 0x89, 0x2a, 0xe3, 0x0f, 0x75, 0x10, 0x34, 0xb6, 0x80, 0xb1, 0x72, 0x3c, 0x2e, 0xe8, 0x59, 0xbd, 0xae, 0xd0, 0x54, 0x0e, 0x77, }; static const unsigned char ecdh_secp521r1_3230_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3230_sharedsecret[] = { 0x01, 0x51, 0x9b, 0xa4, 0x17, 0x9e, 0xf8, 0x5a, 0x4b, 0x51, 0xb3, 0x0d, 0xb2, 0xf6, 0xe9, 0xe2, 0xf3, 0xd4, 0x9b, 0x1f, 0x3e, 0x86, 0x11, 0xc9, 0xba, 0x32, 0x86, 0xd7, 0x8c, 0xa6, 0x45, 0xd2, 0x9d, 0x7a, 0x16, 0x30, 0x55, 0xfe, 0x44, 0xac, 0xcf, 0xc7, 0x24, 0x09, 0x1d, 0x08, 0x42, 0x08, 0x1a, 0x0f, 0xc3, 0x9f, 0x0f, 0xf7, 0xb7, 0xd7, 0x42, 0x34, 0x6e, 0xf2, 0x93, 0xe5, 0x1a, 0x1d, 0x71, 0x07, }; static const wycheproof_ecdh_test ecdh_secp521r1_3230 = { .name = "ecdh_secp521r1_3230", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3230_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3230_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3230_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 747 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3231 for ECDH, tcId is 748 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3231_peerpubkey[] = { 0x00, 0xd9, 0xcb, 0x7a, 0x32, 0xda, 0xb3, 0x42, 0xf8, 0x63, 0xed, 0xb3, 0x40, 0xf3, 0xea, 0x61, 0xdd, 0xf8, 0x33, 0xe7, 0x55, 0xce, 0x66, 0xbb, 0x1a, 0x91, 0x8a, 0x42, 0x71, 0x4b, 0xa0, 0x5b, 0xcd, 0xf4, 0xff, 0x10, 0x99, 0x4f, 0x61, 0x6a, 0x9d, 0x80, 0xcd, 0x0b, 0x48, 0xb3, 0x26, 0xe3, 0xa8, 0xa2, 0xa8, 0xf5, 0x63, 0x4d, 0x82, 0x48, 0x75, 0xb6, 0xe7, 0x1f, 0xb7, 0xcd, 0xdd, 0x7b, 0x50, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_3231_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3231_sharedsecret[] = { 0x01, 0xb4, 0x3c, 0xd9, 0x28, 0x0f, 0xaf, 0xf2, 0x42, 0xc6, 0xeb, 0x21, 0x24, 0x3f, 0x54, 0x47, 0x7a, 0x0d, 0xd9, 0x1f, 0xf1, 0xb0, 0xb1, 0xa3, 0x1d, 0x60, 0x11, 0xac, 0xb9, 0x21, 0x1b, 0xd7, 0xc4, 0xe7, 0x60, 0x2e, 0x48, 0x8d, 0x4c, 0xd3, 0x84, 0xfa, 0xce, 0x2a, 0xa2, 0x43, 0xdb, 0x2c, 0xf8, 0xc8, 0x22, 0x0c, 0x56, 0x6d, 0xcf, 0x95, 0x11, 0xfe, 0xad, 0xe8, 0xfc, 0x26, 0xb0, 0x7b, 0x1d, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_3231 = { .name = "ecdh_secp521r1_3231", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3231_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3231_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3231_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 748 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3232 for ECDH, tcId is 749 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3232_peerpubkey[] = { 0x00, 0x70, 0x3d, 0xde, 0x20, 0x2e, 0xa0, 0x3d, 0x1d, 0x67, 0x37, 0x35, 0x00, 0x2c, 0xc6, 0x2c, 0xc7, 0x40, 0x53, 0x61, 0x04, 0xd8, 0x1f, 0xc9, 0xfd, 0x8e, 0xbd, 0xb7, 0xdf, 0xa9, 0x08, 0xf5, 0x99, 0xd8, 0xfe, 0xa4, 0x6d, 0xeb, 0xc1, 0x90, 0xa5, 0xb2, 0xef, 0x5f, 0x44, 0x93, 0xf9, 0xb5, 0xec, 0xd8, 0xda, 0x94, 0x07, 0xbf, 0x4f, 0xc8, 0xe1, 0x73, 0x28, 0x03, 0xa7, 0x4e, 0xe6, 0x5f, 0x74, 0x7b, 0x01, 0x7c, 0x9b, 0x03, 0x8d, 0x86, 0xaf, 0xc9, 0x41, 0x40, 0x3f, 0xac, 0xaa, 0x1e, 0x2a, 0x63, 0x76, 0xde, 0xc0, 0x75, 0xc0, 0x35, 0xab, 0x2c, 0x1f, 0x42, 0xdb, 0x5f, 0xcd, 0xa3, 0xad, 0x3f, 0xec, 0x67, 0xbc, 0xf2, 0x2b, 0xaf, 0x6c, 0x81, 0xb4, 0x24, 0x1b, 0x4a, 0x92, 0x57, 0xf8, 0xc2, 0x12, 0x68, 0x80, 0xe1, 0xd6, 0xa6, 0x9a, 0x3e, 0x5a, 0xc7, 0xe9, 0x87, 0x10, 0xfb, 0x24, 0xd5, 0x05, 0xdf, }; static const unsigned char ecdh_secp521r1_3232_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3232_sharedsecret[] = { 0x01, 0xb2, 0x48, 0xdb, 0xd8, 0xdf, 0xa6, 0x67, 0xa1, 0x0a, 0xb3, 0x2a, 0xf6, 0x8f, 0xa8, 0x96, 0x7c, 0x69, 0x49, 0x6e, 0xbf, 0x80, 0xc1, 0x1f, 0xd0, 0xef, 0xb7, 0x69, 0xea, 0x93, 0xf8, 0x4f, 0x5a, 0x29, 0x68, 0xb7, 0xed, 0x81, 0xb2, 0xfd, 0x9a, 0xa9, 0x13, 0xac, 0xce, 0xc7, 0x01, 0xdd, 0xce, 0x0d, 0x1f, 0x8b, 0x43, 0xb1, 0xc6, 0x71, 0xf5, 0x47, 0x82, 0x2f, 0x79, 0x6e, 0xfb, 0x12, 0xd5, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_3232 = { .name = "ecdh_secp521r1_3232", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3232_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3232_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3232_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 749 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3233 for ECDH, tcId is 750 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3233_peerpubkey[] = { 0x00, 0x04, 0xfa, 0xbe, 0x53, 0xe6, 0x31, 0x93, 0x57, 0x1d, 0x44, 0x52, 0x1d, 0x36, 0xc4, 0xb6, 0x46, 0xe2, 0x99, 0xb3, 0x90, 0xef, 0xe5, 0x0e, 0x5f, 0xa1, 0xa7, 0x38, 0xe7, 0x00, 0x58, 0x6f, 0xe4, 0x1b, 0xf5, 0x43, 0xb0, 0x7f, 0xe4, 0xfa, 0xfc, 0xb7, 0x24, 0x30, 0x12, 0x46, 0xe8, 0xc0, 0x96, 0xc4, 0x99, 0xb8, 0xa5, 0xd0, 0x63, 0x23, 0x3a, 0xa7, 0x48, 0xdb, 0x9d, 0x21, 0x63, 0xd1, 0x00, 0x04, 0x00, 0x92, 0x8a, 0x59, 0xf3, 0xe4, 0xbe, 0xc0, 0x46, 0x4f, 0x02, 0x1c, 0x5a, 0xd0, 0x86, 0x45, 0x62, 0x31, 0xa4, 0xe4, 0x4f, 0x16, 0x2f, 0xe6, 0xae, 0xfa, 0x7a, 0x2c, 0xae, 0xf9, 0x03, 0x1b, 0xa8, 0x37, 0x68, 0xb5, 0x47, 0x62, 0xef, 0x90, 0xb1, 0xe5, 0x08, 0xed, 0xdb, 0xef, 0x69, 0xe5, 0x3f, 0x3f, 0x9a, 0xe2, 0x15, 0xd4, 0xa0, 0x61, 0x2f, 0x73, 0x7d, 0x16, 0x09, 0x6d, 0xdd, 0xa3, 0x22, 0xaa, }; static const unsigned char ecdh_secp521r1_3233_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3233_sharedsecret[] = { 0x01, 0x08, 0x1c, 0x5a, 0x32, 0x89, 0x35, 0x4d, 0xb2, 0x0a, 0x92, 0x9f, 0xa3, 0xd9, 0x60, 0x7c, 0x2a, 0xc5, 0x8c, 0xab, 0x7b, 0x1f, 0xfb, 0x28, 0x02, 0xe6, 0xa7, 0x78, 0xaf, 0x1b, 0x79, 0xca, 0x7a, 0x68, 0xc7, 0xbc, 0x1b, 0xd3, 0x7a, 0x05, 0x77, 0x2e, 0xf8, 0xc2, 0x8f, 0x46, 0x09, 0x55, 0x7f, 0x43, 0x38, 0x7b, 0x27, 0x1f, 0xb5, 0xa2, 0x74, 0xae, 0x3e, 0x88, 0x14, 0xc7, 0x50, 0x54, 0x44, 0xc4, }; static const wycheproof_ecdh_test ecdh_secp521r1_3233 = { .name = "ecdh_secp521r1_3233", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3233_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3233_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3233_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 750 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3234 for ECDH, tcId is 751 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3234_peerpubkey[] = { 0x00, 0xb1, 0x08, 0xb6, 0xcb, 0x1e, 0x04, 0x34, 0x14, 0x73, 0x64, 0x6c, 0x80, 0xf8, 0xc9, 0xc5, 0x10, 0x14, 0xce, 0xc7, 0xf0, 0x79, 0xf9, 0x68, 0x11, 0x0a, 0xb3, 0x5c, 0x0f, 0x05, 0xb2, 0x4e, 0xa7, 0x72, 0x23, 0x27, 0xb5, 0xeb, 0x5b, 0xca, 0x74, 0x8c, 0x35, 0xc7, 0x71, 0xab, 0xa6, 0x7b, 0x23, 0x2c, 0x82, 0x0e, 0xd5, 0x44, 0xf9, 0xd4, 0xef, 0xd4, 0x3d, 0x37, 0xec, 0x49, 0x96, 0x0d, 0xb2, 0xd7, 0x00, 0xac, 0x75, 0x8a, 0x1e, 0x22, 0x5e, 0x3d, 0xb1, 0x9a, 0x1f, 0x3e, 0xa9, 0x58, 0x3a, 0xd9, 0xea, 0x6e, 0x99, 0x45, 0x68, 0xf6, 0xdd, 0xc1, 0x24, 0xb8, 0xda, 0xb4, 0x9b, 0xae, 0x83, 0x57, 0xb3, 0xc7, 0x05, 0x37, 0x40, 0x4e, 0xd4, 0xd0, 0x23, 0x70, 0xe1, 0x63, 0x7e, 0xd5, 0x91, 0x6b, 0x43, 0x33, 0x48, 0x59, 0xec, 0xe3, 0xdb, 0xe6, 0xdd, 0x26, 0x06, 0x5c, 0x24, 0xdf, 0x11, 0xb8, 0xf2, 0x81, }; static const unsigned char ecdh_secp521r1_3234_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3234_sharedsecret[] = { 0x01, 0x0e, 0x64, 0xa6, 0xdd, 0x87, 0x61, 0x0b, 0xfb, 0x99, 0xa1, 0x34, 0x03, 0x9b, 0x51, 0x8c, 0x8c, 0xc8, 0x70, 0x19, 0xed, 0x5a, 0x2f, 0xa0, 0xb3, 0xf9, 0x8b, 0xe8, 0xfb, 0x3b, 0x2d, 0x90, 0x03, 0x81, 0xa5, 0x07, 0x55, 0x73, 0x9b, 0xff, 0x48, 0x3e, 0x40, 0x0e, 0x5a, 0xd9, 0x2c, 0x01, 0x6e, 0xe3, 0x17, 0x4d, 0xf8, 0xd5, 0x28, 0xfd, 0xc0, 0x8a, 0x17, 0x6d, 0x60, 0x80, 0xc1, 0x83, 0xe0, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_3234 = { .name = "ecdh_secp521r1_3234", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3234_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3234_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3234_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 751 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3235 for ECDH, tcId is 752 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3235_peerpubkey[] = { 0x01, 0x24, 0x50, 0x8b, 0x18, 0x2d, 0xcc, 0xea, 0x6a, 0xce, 0x21, 0x36, 0xe5, 0x3a, 0x2d, 0x9b, 0x61, 0x49, 0xdd, 0x0a, 0xe4, 0x50, 0x83, 0x06, 0x66, 0xf0, 0xa9, 0xc8, 0x44, 0x91, 0x8f, 0x0f, 0xb3, 0xeb, 0x87, 0xf7, 0xf3, 0xf7, 0x70, 0x7a, 0xdd, 0xd7, 0x7b, 0xb1, 0x2c, 0xd1, 0xe5, 0x52, 0xef, 0x12, 0x10, 0x5c, 0x68, 0x67, 0xa4, 0xfe, 0x81, 0xcd, 0x1f, 0x6a, 0x40, 0x01, 0xc3, 0xfe, 0x6e, 0x08, 0x01, 0x57, 0x6d, 0x60, 0xd0, 0x7c, 0x02, 0xb2, 0x55, 0x9c, 0xd1, 0x89, 0xab, 0xaa, 0x70, 0x3e, 0x36, 0xe2, 0x9c, 0x66, 0xd3, 0xda, 0x18, 0xd3, 0x49, 0x26, 0xae, 0x82, 0x1b, 0xd2, 0x16, 0x94, 0xe1, 0x53, 0x19, 0x09, 0x3d, 0xb2, 0x5f, 0x62, 0x0b, 0x64, 0x80, 0xe0, 0x4a, 0x4c, 0x6c, 0x53, 0xb1, 0xfa, 0x38, 0x8f, 0x95, 0x9b, 0x65, 0xfb, 0xf8, 0xa8, 0x82, 0x9b, 0x3b, 0x26, 0x2f, 0x55, 0xe4, 0xf2, }; static const unsigned char ecdh_secp521r1_3235_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3235_sharedsecret[] = { 0x00, 0x4a, 0xf5, 0x56, 0xf0, 0x9b, 0x9d, 0x7a, 0x02, 0x4c, 0x4d, 0xc9, 0x41, 0x93, 0x1d, 0x65, 0x5d, 0x22, 0x31, 0x93, 0x2e, 0xa0, 0x45, 0xa7, 0xfa, 0xf3, 0x22, 0xb1, 0x4f, 0x97, 0x34, 0x19, 0x99, 0xa5, 0xa5, 0x60, 0x5c, 0x7d, 0x31, 0xb2, 0xe9, 0x3d, 0x56, 0xf9, 0xd8, 0x13, 0x63, 0x06, 0xa8, 0x99, 0xd8, 0x2b, 0xbe, 0x2b, 0x61, 0xb3, 0x6a, 0xf2, 0x33, 0x6a, 0x0e, 0xde, 0x70, 0xdc, 0xd3, 0x92, }; static const wycheproof_ecdh_test ecdh_secp521r1_3235 = { .name = "ecdh_secp521r1_3235", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3235_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3235_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3235_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 752 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3236 for ECDH, tcId is 753 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3236_peerpubkey[] = { 0x00, 0xe2, 0xb5, 0xd2, 0xbc, 0xd2, 0xb4, 0x83, 0x87, 0x1b, 0x7d, 0x83, 0xc2, 0xdb, 0x0e, 0x95, 0x7e, 0xf2, 0x23, 0xf6, 0x5b, 0x30, 0xf4, 0x5d, 0x4a, 0xda, 0x33, 0x72, 0x53, 0x73, 0x78, 0x5c, 0x0d, 0x66, 0x4a, 0x8c, 0xa2, 0xc3, 0x5b, 0xc3, 0x5a, 0x95, 0x2f, 0xd8, 0x22, 0xb0, 0x07, 0x2a, 0x96, 0x0c, 0x60, 0xe3, 0x19, 0xf4, 0xe0, 0x6d, 0xe6, 0xc7, 0x85, 0xfd, 0x8d, 0xdc, 0xbb, 0xea, 0x18, 0xd2, 0x00, 0x30, 0x02, 0x34, 0x47, 0x1a, 0x92, 0xac, 0x2c, 0x5f, 0x77, 0x8c, 0xba, 0x8a, 0x97, 0xf3, 0xb3, 0xc4, 0x5c, 0xc8, 0xea, 0xc1, 0xd8, 0x15, 0xb4, 0x5d, 0xc0, 0x2f, 0x9b, 0x74, 0x07, 0x9a, 0xc5, 0x66, 0x49, 0x09, 0x3d, 0x43, 0x61, 0x30, 0x05, 0x86, 0x7b, 0x38, 0xf3, 0xf6, 0x69, 0x5d, 0x50, 0x27, 0x3e, 0xa2, 0xf6, 0x8f, 0xfa, 0x81, 0x00, 0x0c, 0x78, 0x95, 0xe9, 0x1e, 0xc5, 0x38, 0x56, 0xe3, }; static const unsigned char ecdh_secp521r1_3236_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3236_sharedsecret[] = { 0x01, 0x84, 0x77, 0x1f, 0x10, 0x89, 0x1b, 0x6d, 0xab, 0x95, 0x36, 0x63, 0xdc, 0x41, 0x60, 0x0b, 0xb7, 0xb2, 0xbc, 0xd0, 0xcc, 0x6b, 0xd3, 0x19, 0x79, 0x5b, 0xc8, 0x9c, 0xe2, 0xcc, 0xa1, 0x88, 0x3c, 0xf9, 0x2f, 0xd6, 0xfa, 0x7b, 0x16, 0xfb, 0x39, 0xc3, 0x73, 0x74, 0x54, 0xbd, 0x3c, 0x22, 0xf4, 0xfb, 0x2c, 0x2e, 0x86, 0x91, 0x4d, 0xb4, 0x18, 0xb6, 0x53, 0xa9, 0xe0, 0xdc, 0xe3, 0xbe, 0x5e, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3236 = { .name = "ecdh_secp521r1_3236", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3236_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3236_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3236_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 753 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3237 for ECDH, tcId is 754 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3237_peerpubkey[] = { 0x00, 0xae, 0xe0, 0xe3, 0x09, 0x74, 0x41, 0xd5, 0x01, 0x38, 0x80, 0x3f, 0xf9, 0xb1, 0x78, 0x06, 0xbf, 0xca, 0x10, 0x64, 0xfe, 0xec, 0x20, 0x9f, 0xd0, 0xb5, 0xae, 0x57, 0xc6, 0xd8, 0x7d, 0x9e, 0x5e, 0xb3, 0x2c, 0xb0, 0x67, 0x0f, 0x12, 0xfb, 0xde, 0x06, 0xc3, 0xf3, 0xed, 0x8b, 0x18, 0x61, 0xb6, 0xd1, 0x8f, 0x6b, 0xc6, 0xa2, 0x55, 0x22, 0x66, 0xa2, 0x40, 0x68, 0x6c, 0x52, 0x9f, 0x04, 0x4f, 0x57, 0x01, 0x00, 0x89, 0x8b, 0x3c, 0x65, 0x01, 0xeb, 0xaa, 0x81, 0xe6, 0x9e, 0xe0, 0x19, 0xb8, 0x79, 0xd6, 0xee, 0x37, 0x15, 0xd5, 0x09, 0x6d, 0xf8, 0x39, 0x61, 0xe1, 0x0b, 0xc8, 0x05, 0xd5, 0xc6, 0x74, 0xca, 0xa9, 0x8a, 0x1b, 0xa2, 0x9e, 0xd0, 0x04, 0x80, 0x89, 0x31, 0xa9, 0x61, 0x5d, 0xfe, 0xda, 0x86, 0x73, 0xcf, 0x39, 0xf0, 0xce, 0x4a, 0x61, 0x8d, 0x18, 0x1c, 0x04, 0xa8, 0x66, 0x18, 0x90, 0x37, }; static const unsigned char ecdh_secp521r1_3237_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3237_sharedsecret[] = { 0x00, 0x24, 0xf7, 0x92, 0x51, 0xc8, 0x6e, 0x06, 0xac, 0x18, 0xe6, 0x40, 0x4c, 0xd3, 0x03, 0xc2, 0xfa, 0xbc, 0xaa, 0x95, 0x64, 0x21, 0x8c, 0x16, 0x0c, 0x1f, 0xb7, 0xa9, 0x9f, 0xb2, 0xc6, 0x99, 0xb3, 0xae, 0x65, 0xca, 0x2d, 0xa8, 0xf6, 0x6a, 0xd9, 0xd7, 0x5c, 0xee, 0x42, 0xf1, 0x9f, 0x1d, 0x77, 0xf1, 0x94, 0xfd, 0xf2, 0xad, 0x78, 0x54, 0x18, 0x6b, 0x97, 0x7b, 0xa2, 0x6c, 0x0e, 0x87, 0xcd, 0xab, }; static const wycheproof_ecdh_test ecdh_secp521r1_3237 = { .name = "ecdh_secp521r1_3237", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3237_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3237_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3237_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 754 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3238 for ECDH, tcId is 755 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3238_peerpubkey[] = { 0x00, 0x47, 0xad, 0x26, 0x4a, 0x37, 0x3c, 0x49, 0x94, 0xf9, 0x42, 0xad, 0x09, 0x42, 0xda, 0xe8, 0xb2, 0x3a, 0x32, 0x9f, 0xb7, 0xa4, 0x6e, 0x98, 0x7c, 0xb9, 0x21, 0xc2, 0x8b, 0xca, 0xed, 0x4a, 0xed, 0x60, 0xe5, 0xea, 0x6f, 0xcc, 0xed, 0x4b, 0x3e, 0xce, 0x4a, 0xb7, 0xd9, 0x1b, 0x34, 0x9e, 0x3e, 0x45, 0xab, 0xce, 0x93, 0xe9, 0x76, 0x5e, 0xe2, 0xfe, 0x9f, 0x13, 0xd5, 0xf2, 0x30, 0x71, 0x5a, 0x23, 0x00, 0x59, 0x65, 0x40, 0x10, 0xa5, 0x7f, 0x0e, 0x9d, 0x1e, 0xd4, 0x6a, 0xfa, 0xc4, 0xaa, 0xf5, 0xb3, 0x22, 0x87, 0x63, 0xed, 0x2c, 0xb2, 0xb4, 0xd7, 0x8a, 0x13, 0x16, 0x36, 0xbd, 0x13, 0x33, 0xf1, 0x27, 0x99, 0x77, 0x9a, 0x9f, 0x0f, 0xec, 0x3e, 0xf2, 0x44, 0x52, 0xc5, 0x1e, 0x8e, 0x4f, 0x31, 0xef, 0x6d, 0xc1, 0x12, 0x9a, 0x45, 0x4f, 0x07, 0x92, 0x58, 0xea, 0xc1, 0x0a, 0xdf, 0x88, 0x79, 0xaf, }; static const unsigned char ecdh_secp521r1_3238_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3238_sharedsecret[] = { 0x01, 0x64, 0x6e, 0x6e, 0xd9, 0x5c, 0x47, 0xf6, 0x08, 0x51, 0xb1, 0x6b, 0x8d, 0xa1, 0x21, 0xb7, 0xa0, 0x27, 0xae, 0x9b, 0x05, 0xfa, 0xcb, 0x08, 0xbf, 0x52, 0xef, 0x17, 0xe6, 0x7a, 0x0e, 0xfb, 0x1c, 0x49, 0xef, 0x90, 0x3d, 0xe8, 0x90, 0x82, 0xd3, 0xb3, 0x4a, 0xca, 0xcc, 0x5c, 0xfb, 0x63, 0xeb, 0x6a, 0x62, 0x0d, 0x0e, 0x14, 0x98, 0x72, 0x0e, 0x04, 0x55, 0x9e, 0xe4, 0x76, 0xbb, 0x9a, 0x75, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_3238 = { .name = "ecdh_secp521r1_3238", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3238_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3238_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3238_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 755 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3239 for ECDH, tcId is 756 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3239_peerpubkey[] = { 0x00, 0x07, 0x5d, 0xaa, 0x66, 0xc8, 0xb4, 0x29, 0x8a, 0x8a, 0x8c, 0xd3, 0x95, 0x02, 0x2b, 0xf2, 0xf2, 0x7e, 0x52, 0x83, 0x08, 0x68, 0xb1, 0x3b, 0x17, 0x60, 0xf2, 0x2b, 0xc2, 0x9c, 0x99, 0x66, 0x6f, 0x39, 0x23, 0x85, 0x80, 0x5b, 0x94, 0x90, 0xec, 0xa4, 0x76, 0xde, 0xfd, 0xf7, 0xdf, 0x0d, 0x6b, 0x49, 0x18, 0x1c, 0x37, 0x23, 0x77, 0x09, 0x33, 0xc8, 0x27, 0x61, 0xa2, 0xf7, 0xd3, 0xce, 0xa3, 0x9a, 0x01, 0xbd, 0x89, 0xc2, 0xff, 0xbb, 0xfb, 0x46, 0x1f, 0x21, 0x2d, 0x16, 0xe9, 0xa9, 0x04, 0x72, 0x53, 0xcd, 0xcd, 0xf1, 0x79, 0xce, 0x76, 0x3f, 0xd4, 0x91, 0x72, 0xf8, 0xbf, 0xee, 0xb6, 0x8d, 0x1c, 0x1f, 0xd6, 0xe2, 0xfd, 0x6e, 0x64, 0x16, 0xa8, 0xb0, 0x15, 0x51, 0x32, 0x22, 0x73, 0x43, 0x60, 0xf5, 0x12, 0x80, 0xce, 0xf5, 0xf3, 0x9e, 0xc5, 0xff, 0xdc, 0x75, 0x6e, 0x44, 0xa5, 0x94, 0x27, 0x64, }; static const unsigned char ecdh_secp521r1_3239_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3239_sharedsecret[] = { 0x01, 0x29, 0xe9, 0x2c, 0x8b, 0xcf, 0x5e, 0x73, 0x57, 0x32, 0xa7, 0xf8, 0x76, 0x32, 0x1a, 0xeb, 0x26, 0x55, 0xe8, 0xd2, 0x26, 0xc2, 0x28, 0xe5, 0x1d, 0x5a, 0xb6, 0xfc, 0x7c, 0x05, 0xb6, 0x3c, 0xa9, 0x40, 0x0a, 0x0c, 0x25, 0xbf, 0xa1, 0x2b, 0x0a, 0x7e, 0xbc, 0x84, 0xef, 0xd6, 0x2f, 0x69, 0x5d, 0xa7, 0xcd, 0x44, 0xc1, 0xce, 0xd1, 0xed, 0x5c, 0xb7, 0x88, 0xc4, 0xde, 0x12, 0xa5, 0x17, 0xf1, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3239 = { .name = "ecdh_secp521r1_3239", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3239_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3239_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3239_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 756 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3240 for ECDH, tcId is 757 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3240_peerpubkey[] = { 0x00, 0x4a, 0xbc, 0xd8, 0x46, 0x9f, 0x19, 0x4d, 0x0c, 0xcc, 0x0d, 0xb4, 0x64, 0x92, 0xcd, 0xdf, 0xb0, 0x55, 0x2b, 0xc1, 0x30, 0x62, 0xb7, 0x48, 0x7a, 0xcc, 0x38, 0xf5, 0x9a, 0x07, 0x4f, 0x68, 0x20, 0x01, 0xdb, 0x1a, 0xdd, 0xef, 0x6b, 0x28, 0xc5, 0x47, 0x9e, 0xaf, 0x5d, 0x6b, 0x95, 0xb3, 0x7c, 0x39, 0x4e, 0xb9, 0x1e, 0xcf, 0xe0, 0x2f, 0x00, 0x87, 0xfc, 0x63, 0x97, 0x00, 0xb4, 0x90, 0xed, 0xdf, 0x01, 0x21, 0x39, 0x86, 0x73, 0xaf, 0x0d, 0x63, 0x91, 0x91, 0xe3, 0x12, 0x2d, 0xec, 0x7b, 0x58, 0x52, 0x6d, 0xf7, 0x05, 0x46, 0x27, 0xf6, 0x96, 0xa5, 0x69, 0x89, 0x28, 0x51, 0xf9, 0x04, 0x38, 0x2d, 0xbf, 0xf7, 0xb6, 0x1e, 0xd4, 0xab, 0x19, 0x53, 0x91, 0x0d, 0x27, 0xaa, 0x35, 0x60, 0x95, 0xa2, 0xca, 0x45, 0x95, 0x64, 0x56, 0xc8, 0xd4, 0xe1, 0xac, 0x56, 0xb1, 0xff, 0xec, 0x95, 0xfb, 0xe8, 0xcf, }; static const unsigned char ecdh_secp521r1_3240_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3240_sharedsecret[] = { 0x00, 0xce, 0xe0, 0x32, 0x8e, 0x75, 0xf0, 0x16, 0xd0, 0x56, 0x98, 0x6b, 0x4c, 0x7f, 0xce, 0xee, 0x76, 0x10, 0x23, 0x7f, 0x69, 0xdc, 0x2c, 0xbb, 0xb6, 0x26, 0x66, 0x59, 0x53, 0x55, 0x41, 0x26, 0x9f, 0x85, 0x1e, 0x36, 0xe0, 0x88, 0x8d, 0x63, 0x5b, 0x50, 0x6b, 0x8c, 0x00, 0xa8, 0xde, 0xe7, 0xd9, 0x87, 0x74, 0x5d, 0x8d, 0x06, 0x51, 0x9d, 0x15, 0xbc, 0x75, 0x2b, 0xd5, 0x75, 0x6f, 0xe3, 0x27, 0xaa, }; static const wycheproof_ecdh_test ecdh_secp521r1_3240 = { .name = "ecdh_secp521r1_3240", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3240_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3240_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3240_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 757 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3241 for ECDH, tcId is 758 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3241_peerpubkey[] = { 0x01, 0xbd, 0x16, 0x39, 0x89, 0xc4, 0x07, 0xd5, 0xf8, 0xf9, 0xfd, 0x2e, 0x08, 0x7b, 0x14, 0x73, 0x71, 0x0c, 0x4b, 0xc2, 0xd6, 0xa9, 0x7d, 0x28, 0x19, 0x84, 0xc1, 0x2c, 0xbb, 0x06, 0x15, 0xbe, 0x9a, 0xc8, 0x06, 0xc2, 0x92, 0xc9, 0xd9, 0x0c, 0xf3, 0x5f, 0xfe, 0xc6, 0x65, 0x76, 0x01, 0x93, 0xb1, 0xd7, 0x68, 0x1c, 0x47, 0xf8, 0xbd, 0xae, 0x37, 0xac, 0x50, 0xd8, 0xa4, 0x07, 0x60, 0xa0, 0x47, 0xfc, 0x01, 0x67, 0xcc, 0xe4, 0xdc, 0x54, 0xe6, 0x7e, 0xbf, 0x56, 0x40, 0x7a, 0xec, 0x33, 0xa5, 0xaa, 0x20, 0xba, 0x86, 0x7c, 0x85, 0x6f, 0x92, 0x9f, 0xad, 0x77, 0x8b, 0x39, 0xb0, 0xdc, 0x51, 0x24, 0x9d, 0x24, 0xe3, 0x90, 0xd7, 0xe3, 0x3c, 0x72, 0x38, 0x2c, 0x4a, 0x1d, 0x02, 0xbf, 0x73, 0xd6, 0x05, 0x94, 0x8a, 0x73, 0xa4, 0x81, 0xbd, 0xf3, 0x29, 0xef, 0x7b, 0x7f, 0x04, 0xcf, 0x3a, 0x33, 0x3c, 0x76, }; static const unsigned char ecdh_secp521r1_3241_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3241_sharedsecret[] = { 0x00, 0x1e, 0x87, 0x2a, 0x53, 0x4b, 0xd0, 0x79, 0x55, 0x0d, 0x50, 0xa2, 0xde, 0xf1, 0xd4, 0x39, 0x08, 0x3b, 0xb3, 0x42, 0x3a, 0x58, 0xa9, 0x23, 0xde, 0xd2, 0xed, 0x7d, 0xe7, 0x68, 0x02, 0x29, 0x81, 0xb7, 0xcf, 0xc7, 0x5c, 0x97, 0x0c, 0xaa, 0x2c, 0xbb, 0xf2, 0xc4, 0xc7, 0xcf, 0xd9, 0xcf, 0x98, 0x46, 0x84, 0x4e, 0x9c, 0x54, 0x00, 0x35, 0x67, 0x00, 0x08, 0x0a, 0x70, 0x97, 0xf0, 0x0e, 0x15, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_3241 = { .name = "ecdh_secp521r1_3241", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3241_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3241_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3241_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 758 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3242 for ECDH, tcId is 759 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3242_peerpubkey[] = { 0x01, 0xf3, 0xd6, 0x59, 0x37, 0x89, 0x97, 0xa7, 0x5e, 0x45, 0x6f, 0x77, 0x0f, 0x34, 0xbf, 0xac, 0x63, 0x8f, 0x1d, 0x38, 0x77, 0x7c, 0xd0, 0xa7, 0x72, 0x07, 0xcb, 0xc4, 0x2b, 0x54, 0x0c, 0x1f, 0xcb, 0xad, 0x58, 0x3b, 0x93, 0x87, 0x31, 0x63, 0x42, 0x6e, 0xb9, 0x16, 0x99, 0xf8, 0xc0, 0x83, 0x4b, 0x13, 0x69, 0x54, 0x00, 0xde, 0x49, 0x79, 0x67, 0x88, 0xc5, 0x92, 0x41, 0x0c, 0x52, 0x0e, 0x85, 0x9f, 0x01, 0x94, 0x62, 0x25, 0xc7, 0x1e, 0x24, 0x1a, 0x3a, 0x78, 0x5d, 0x26, 0xd1, 0x21, 0xd5, 0x61, 0x45, 0xea, 0x8f, 0x97, 0x68, 0xf3, 0xa0, 0x09, 0xa2, 0xe3, 0xc5, 0x4f, 0x9c, 0x87, 0x6b, 0x89, 0x9e, 0x81, 0xab, 0x12, 0x61, 0xb2, 0xbd, 0x5e, 0xf9, 0x9f, 0x54, 0xf4, 0x45, 0x35, 0xf9, 0xcc, 0x76, 0xbf, 0x0f, 0x44, 0xe9, 0x1a, 0x5f, 0x13, 0x9e, 0x99, 0x27, 0xb8, 0x8d, 0x16, 0xdc, 0xcc, 0x4b, 0x39, }; static const unsigned char ecdh_secp521r1_3242_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3242_sharedsecret[] = { 0x01, 0xf9, 0x71, 0x7e, 0x8a, 0x71, 0xcf, 0xa9, 0x4b, 0x94, 0x3d, 0x41, 0xbf, 0x12, 0xc7, 0x0b, 0xcf, 0x51, 0x43, 0x74, 0x19, 0xb2, 0xda, 0x0b, 0x6e, 0x16, 0x0d, 0x06, 0xa3, 0x18, 0x7d, 0x78, 0x17, 0x69, 0xc7, 0x5d, 0x2a, 0x9f, 0x97, 0xa8, 0x49, 0x9e, 0x39, 0x60, 0x69, 0xa0, 0x59, 0x72, 0x5f, 0x47, 0xa1, 0x01, 0x03, 0xb7, 0x8e, 0x56, 0x8e, 0x07, 0x68, 0x49, 0x91, 0x12, 0xf2, 0xf1, 0x6b, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_3242 = { .name = "ecdh_secp521r1_3242", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3242_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3242_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3242_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 759 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3243 for ECDH, tcId is 760 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3243_peerpubkey[] = { 0x00, 0x05, 0x20, 0xd4, 0xf9, 0x3a, 0xd1, 0x5b, 0xd8, 0x39, 0x96, 0x97, 0xda, 0x58, 0xb2, 0x03, 0xa5, 0x81, 0xa3, 0x86, 0x8c, 0x55, 0xc8, 0xad, 0x9a, 0xf9, 0xae, 0xf6, 0x13, 0xe2, 0x14, 0x04, 0x6e, 0x56, 0xf2, 0xa8, 0x23, 0x82, 0xfd, 0x9e, 0xaf, 0xb1, 0xf5, 0x28, 0x1e, 0x6f, 0x6e, 0x9f, 0x0b, 0xcb, 0xb4, 0x38, 0x6f, 0xfd, 0x8c, 0xdf, 0x5d, 0xce, 0x09, 0x25, 0x7c, 0xad, 0xab, 0x97, 0xa0, 0x10, 0x01, 0x1b, 0x42, 0x58, 0x53, 0xcc, 0xf7, 0x98, 0x7d, 0xe7, 0x24, 0x59, 0x6b, 0xe0, 0xc2, 0x3f, 0x1d, 0x5e, 0x1c, 0x7d, 0x09, 0x32, 0xd2, 0xfe, 0x72, 0xc5, 0xf2, 0x23, 0xb9, 0xd0, 0x3a, 0x78, 0xb8, 0x8c, 0xb0, 0x9e, 0xba, 0x6c, 0x42, 0x45, 0x24, 0x0f, 0x85, 0x49, 0xc7, 0x21, 0x6e, 0x53, 0xa8, 0x79, 0xc9, 0x66, 0x68, 0xcd, 0xdc, 0x01, 0xd5, 0x1c, 0x7a, 0x52, 0xdb, 0x20, 0x1a, 0xb7, 0x7b, 0x89, }; static const unsigned char ecdh_secp521r1_3243_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3243_sharedsecret[] = { 0x01, 0x91, 0xc0, 0x56, 0x5f, 0xdd, 0x56, 0x12, 0x98, 0x75, 0x56, 0x20, 0xd9, 0xa7, 0x69, 0x3c, 0xfc, 0xe1, 0x85, 0xc5, 0x7b, 0x63, 0x91, 0xe4, 0xf9, 0xb9, 0x0f, 0x7b, 0x22, 0x28, 0x8b, 0x4f, 0x3e, 0xa3, 0xd9, 0x5d, 0xd4, 0xd9, 0x1b, 0x73, 0x16, 0x15, 0x64, 0x6a, 0xa9, 0xcf, 0x66, 0xdb, 0x8a, 0xa0, 0xc3, 0x02, 0xff, 0x07, 0x03, 0x02, 0x6c, 0x30, 0x3a, 0x8c, 0x3b, 0x1f, 0x3e, 0x15, 0xec, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_3243 = { .name = "ecdh_secp521r1_3243", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3243_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3243_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3243_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 760 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3244 for ECDH, tcId is 761 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3244_peerpubkey[] = { 0x00, 0x56, 0x8a, 0x78, 0xce, 0x5d, 0x2d, 0x03, 0x0f, 0xf8, 0x50, 0x87, 0x9e, 0xe0, 0x3c, 0x20, 0x1e, 0x4d, 0xc6, 0x4c, 0x58, 0x58, 0x8d, 0x2c, 0x8f, 0xeb, 0x3b, 0xa9, 0xb2, 0xd0, 0x38, 0x57, 0xaf, 0x3c, 0x29, 0xcf, 0xbd, 0x78, 0x9b, 0x79, 0x7f, 0x8d, 0xba, 0x4b, 0x74, 0x70, 0xf0, 0xc8, 0x41, 0x21, 0x23, 0x1f, 0x35, 0x6b, 0x63, 0xe6, 0x13, 0xd0, 0xff, 0xf5, 0xf8, 0xaa, 0xea, 0x8c, 0x86, 0xf9, 0x00, 0x3d, 0x67, 0xdd, 0x0b, 0xbb, 0x1d, 0x85, 0x88, 0xf1, 0x8c, 0xcf, 0x31, 0xcb, 0xe5, 0xcd, 0x28, 0x64, 0x22, 0xb7, 0x08, 0xc3, 0x86, 0xc1, 0xf8, 0x10, 0x08, 0x64, 0x7c, 0x82, 0x4f, 0x69, 0x4c, 0x11, 0x53, 0x55, 0x30, 0x09, 0x77, 0x3c, 0x65, 0x7b, 0x2b, 0x84, 0xcd, 0xae, 0x98, 0xe5, 0x2f, 0xb6, 0x24, 0x08, 0x72, 0xa3, 0x1b, 0xfb, 0x0f, 0xee, 0x3f, 0x2d, 0x8a, 0x94, 0xe5, 0x31, 0x9e, 0x49, }; static const unsigned char ecdh_secp521r1_3244_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3244_sharedsecret[] = { 0x01, 0xf8, 0x6b, 0x35, 0x03, 0x8a, 0xf9, 0x37, 0x1a, 0x84, 0x12, 0xd7, 0x5e, 0x5d, 0x46, 0xa4, 0xfa, 0x76, 0xed, 0xa9, 0xd7, 0xbe, 0x74, 0x0b, 0x14, 0xe8, 0xcf, 0x19, 0x41, 0x6f, 0xd5, 0xdf, 0x2a, 0x4c, 0xed, 0x30, 0x64, 0xfc, 0x38, 0x46, 0xae, 0x99, 0x54, 0x24, 0x88, 0xd6, 0x9e, 0x38, 0x79, 0x61, 0x9f, 0xa9, 0x07, 0x8c, 0xb9, 0x87, 0xdd, 0x0d, 0x14, 0x86, 0x0b, 0x72, 0x4d, 0xa9, 0x33, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp521r1_3244 = { .name = "ecdh_secp521r1_3244", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3244_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3244_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3244_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 761 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3245 for ECDH, tcId is 762 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3245_peerpubkey[] = { 0x00, 0xd7, 0x24, 0xed, 0x03, 0xce, 0xa8, 0x0c, 0x57, 0x94, 0xc0, 0xf0, 0x77, 0xb8, 0x06, 0x06, 0x62, 0xdd, 0x74, 0x4e, 0x4e, 0x8d, 0x41, 0x90, 0xf7, 0xf3, 0x13, 0xc4, 0x05, 0x97, 0xfe, 0x94, 0xbd, 0x2a, 0xa7, 0x0b, 0x20, 0xf7, 0x3a, 0xc4, 0xdc, 0xef, 0x99, 0x31, 0x36, 0x08, 0xc2, 0x03, 0x1c, 0x73, 0xf1, 0x3e, 0xd1, 0xf5, 0xd9, 0xac, 0xe8, 0x37, 0xc5, 0x80, 0xfd, 0x02, 0xa4, 0xf2, 0xd6, 0xd5, 0x01, 0x55, 0xff, 0x55, 0x6f, 0x04, 0x66, 0x57, 0xee, 0x5f, 0x50, 0x75, 0x7b, 0x90, 0x78, 0xc5, 0x46, 0x7f, 0xec, 0x8a, 0x0f, 0x75, 0x66, 0xac, 0x15, 0xdb, 0x16, 0x8a, 0xfe, 0xcb, 0x7f, 0x51, 0x45, 0x41, 0xd2, 0xd1, 0xff, 0x87, 0xc5, 0xf6, 0x7c, 0x51, 0x1a, 0x4f, 0x61, 0xa9, 0x1c, 0x57, 0x99, 0x91, 0x48, 0x9a, 0xd5, 0xa1, 0xc8, 0xc0, 0xc5, 0x54, 0xd9, 0xb3, 0x6d, 0x14, 0x86, 0xb2, 0x7e, 0x72, }; static const unsigned char ecdh_secp521r1_3245_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3245_sharedsecret[] = { 0x01, 0xd1, 0x04, 0x7b, 0xf7, 0xe6, 0x22, 0xcd, 0x42, 0x8e, 0x1c, 0x76, 0xaa, 0x2c, 0x04, 0x4a, 0x20, 0x58, 0xa2, 0xd9, 0xf4, 0xb5, 0xc1, 0x79, 0xcf, 0x9c, 0x9d, 0x46, 0x07, 0x00, 0x81, 0x81, 0xb1, 0x59, 0xc1, 0x56, 0x47, 0x3e, 0x7d, 0x25, 0xfe, 0x49, 0xdd, 0x63, 0xad, 0x15, 0x00, 0x73, 0xcb, 0xc2, 0xde, 0x2f, 0xa9, 0xca, 0xd5, 0x0d, 0xba, 0xd9, 0xa0, 0x8d, 0x56, 0xeb, 0x22, 0xd8, 0xd3, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_3245 = { .name = "ecdh_secp521r1_3245", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3245_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3245_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3245_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 762 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3246 for ECDH, tcId is 763 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3246_peerpubkey[] = { 0x00, 0x93, 0x39, 0xef, 0x1c, 0x1f, 0x93, 0xca, 0x5f, 0xed, 0xec, 0x1f, 0xf5, 0xfe, 0x30, 0x33, 0x4e, 0xb1, 0x23, 0xc3, 0x0e, 0x6a, 0x17, 0xc7, 0xb6, 0x5f, 0x3a, 0xc8, 0x46, 0x1f, 0xb7, 0x79, 0x07, 0x5f, 0xe6, 0x98, 0x89, 0xa4, 0x28, 0x37, 0xb0, 0x1e, 0xaf, 0x44, 0xbb, 0x7f, 0xf8, 0x98, 0x4c, 0x0b, 0xed, 0xa0, 0xe1, 0xb5, 0x27, 0x8a, 0x62, 0xc0, 0x7e, 0xc1, 0x28, 0xca, 0xaf, 0x52, 0xd8, 0xbd, 0x00, 0x19, 0xc0, 0x95, 0xff, 0xad, 0x69, 0xed, 0x80, 0x0e, 0x22, 0x3a, 0x8b, 0xfa, 0x55, 0xd2, 0x1f, 0x58, 0x8d, 0xc7, 0xf9, 0xf4, 0x1b, 0x9d, 0x75, 0xdc, 0x01, 0x07, 0x92, 0xb6, 0xfe, 0x24, 0x3d, 0x23, 0x08, 0xf1, 0x2d, 0xfc, 0xd3, 0x12, 0x72, 0x9e, 0xbe, 0xf9, 0xcc, 0x40, 0x74, 0x43, 0xc0, 0x4b, 0x0c, 0xdb, 0xe5, 0x77, 0x14, 0x61, 0x52, 0x41, 0xda, 0xb8, 0x74, 0x5c, 0xf6, 0x48, 0x7b, 0xc9, }; static const unsigned char ecdh_secp521r1_3246_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3246_sharedsecret[] = { 0x00, 0x3e, 0xef, 0x53, 0x52, 0x75, 0xe1, 0x5f, 0x77, 0x9e, 0xc1, 0x3e, 0x5c, 0xc7, 0xff, 0x93, 0x9c, 0x3d, 0xc1, 0x52, 0xe7, 0x9a, 0xad, 0x0c, 0x32, 0xa0, 0x3b, 0x8c, 0xb9, 0xf8, 0xc4, 0x49, 0xb4, 0xd9, 0x46, 0x9b, 0x36, 0x2e, 0x95, 0x98, 0x87, 0xc5, 0xa6, 0xf2, 0x09, 0x62, 0x78, 0x3c, 0x66, 0x7b, 0x32, 0xb3, 0x79, 0x1f, 0xa7, 0x01, 0xed, 0x52, 0xe8, 0x2d, 0x1e, 0x3d, 0x22, 0x29, 0x73, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp521r1_3246 = { .name = "ecdh_secp521r1_3246", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3246_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3246_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3246_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 763 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3247 for ECDH, tcId is 764 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3247_peerpubkey[] = { 0x00, 0xc2, 0x5a, 0x90, 0x65, 0x37, 0x7d, 0x2d, 0x84, 0x37, 0x25, 0x80, 0xa2, 0x68, 0x76, 0x67, 0xcd, 0xce, 0xce, 0xa5, 0x80, 0xbe, 0x1a, 0x5e, 0x72, 0xe1, 0xfd, 0x2a, 0xdb, 0x42, 0xeb, 0xda, 0x8d, 0x6a, 0x70, 0xac, 0x05, 0x3e, 0x49, 0xda, 0x48, 0x57, 0x32, 0xbf, 0x13, 0x43, 0x02, 0x82, 0xfa, 0x4c, 0xed, 0xac, 0x64, 0xe1, 0xb0, 0x69, 0x30, 0x51, 0xd1, 0x35, 0x4d, 0x8d, 0x6e, 0xfc, 0xec, 0x12, 0x01, 0xe2, 0xd2, 0xbf, 0xb7, 0xb4, 0x4f, 0x53, 0x5b, 0x87, 0x31, 0x2a, 0xe6, 0x7b, 0xea, 0x3d, 0x62, 0x80, 0x0b, 0x69, 0xd4, 0x34, 0x22, 0xfc, 0xd3, 0x68, 0x9a, 0x1b, 0xce, 0xca, 0x6f, 0xcf, 0xe4, 0x39, 0x9b, 0x7c, 0x31, 0x8a, 0x56, 0x88, 0xd0, 0xb4, 0xd2, 0x33, 0x39, 0x22, 0xd5, 0x95, 0xcf, 0x81, 0x42, 0x58, 0x4f, 0xa8, 0x98, 0xc6, 0x94, 0x26, 0xf4, 0xbc, 0x47, 0x85, 0x76, 0xed, 0xc8, 0xbf, }; static const unsigned char ecdh_secp521r1_3247_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3247_sharedsecret[] = { 0x01, 0x90, 0x34, 0x89, 0x6a, 0xfa, 0x68, 0x1f, 0xdc, 0xfb, 0x11, 0xee, 0x0c, 0x03, 0xe5, 0xc5, 0x88, 0xa6, 0x52, 0x39, 0xbe, 0x8e, 0x55, 0x5a, 0x89, 0x28, 0x0b, 0x7a, 0x98, 0x14, 0x17, 0x42, 0x54, 0xfd, 0xb4, 0x96, 0xec, 0x0f, 0xae, 0xb2, 0xa1, 0xd6, 0x81, 0x6d, 0x27, 0x6a, 0xce, 0xaa, 0x98, 0xa5, 0x3e, 0x09, 0xef, 0xe8, 0x4a, 0x75, 0x2c, 0x09, 0xc5, 0x01, 0xb2, 0xba, 0xca, 0xba, 0x69, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp521r1_3247 = { .name = "ecdh_secp521r1_3247", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3247_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3247_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3247_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 764 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3248 for ECDH, tcId is 765 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3248_peerpubkey[] = { 0x01, 0xc2, 0x40, 0x2f, 0x34, 0x1b, 0x4e, 0x1c, 0x97, 0x55, 0xb3, 0xe1, 0x02, 0x22, 0x3c, 0x80, 0x56, 0x3c, 0x61, 0xc4, 0x1a, 0x64, 0xcb, 0x11, 0x99, 0x58, 0xc4, 0x1b, 0xec, 0x2d, 0xd9, 0x51, 0x9a, 0x47, 0x5a, 0xb8, 0x4b, 0xaa, 0xfb, 0x70, 0x83, 0x97, 0x00, 0x0b, 0x80, 0xb9, 0xd2, 0x75, 0xc1, 0x3d, 0x7c, 0xdb, 0x49, 0x12, 0x7e, 0x1e, 0xb2, 0x9a, 0x65, 0xd2, 0xd3, 0x74, 0x90, 0x4d, 0x09, 0x0b, 0x01, 0x9e, 0x06, 0xc3, 0xda, 0x4e, 0x88, 0x4d, 0x6e, 0xd9, 0x35, 0xc4, 0xb9, 0x2c, 0x84, 0xbc, 0x63, 0xe9, 0x1c, 0xbd, 0x66, 0x5c, 0xee, 0x86, 0xcc, 0x15, 0x13, 0x44, 0xa3, 0xa3, 0x63, 0xfa, 0x75, 0xad, 0x56, 0xa9, 0xb8, 0x04, 0xb4, 0x65, 0x1e, 0xd8, 0x56, 0x63, 0x11, 0x41, 0x88, 0xe6, 0x3c, 0xeb, 0xb2, 0xc1, 0x88, 0x7f, 0x96, 0x99, 0x4d, 0xb9, 0x70, 0x3c, 0x1d, 0x06, 0x43, 0x81, 0x2c, 0xd6, }; static const unsigned char ecdh_secp521r1_3248_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3248_sharedsecret[] = { 0x00, 0x28, 0x65, 0x55, 0x1b, 0xa9, 0x5f, 0xcc, 0xdb, 0x0c, 0x81, 0x4b, 0x14, 0x5b, 0x5a, 0x57, 0xc8, 0x08, 0xb4, 0x7d, 0x5b, 0x08, 0x25, 0x9e, 0xe4, 0x11, 0x74, 0x77, 0x0a, 0x73, 0x02, 0xd7, 0x4a, 0x2c, 0xc7, 0x8c, 0x78, 0x22, 0xa6, 0xed, 0xfa, 0x19, 0xb2, 0x2e, 0x8a, 0x0d, 0x61, 0x62, 0x60, 0xf1, 0x85, 0x1e, 0x0d, 0x5d, 0xba, 0x50, 0xa9, 0x18, 0x8e, 0x45, 0xaf, 0xcb, 0x7d, 0xbb, 0xab, 0x40, }; static const wycheproof_ecdh_test ecdh_secp521r1_3248 = { .name = "ecdh_secp521r1_3248", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3248_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3248_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3248_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 765 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3249 for ECDH, tcId is 766 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3249_peerpubkey[] = { 0x00, 0x83, 0xf9, 0x9c, 0xf2, 0x76, 0x7c, 0xe0, 0xcc, 0x88, 0x98, 0xe4, 0x61, 0xf9, 0x10, 0x40, 0x60, 0xa9, 0xc9, 0xea, 0x13, 0x42, 0xa2, 0xaf, 0xf7, 0x05, 0x61, 0x04, 0x69, 0x28, 0x65, 0x92, 0xaa, 0x41, 0xf3, 0x19, 0xc5, 0x0c, 0x83, 0x52, 0x48, 0x81, 0xfc, 0x42, 0x16, 0x9d, 0x07, 0x25, 0x50, 0x82, 0x5c, 0xf9, 0x2e, 0x5a, 0xd1, 0x10, 0xab, 0xd7, 0x7e, 0x8e, 0xcd, 0xd8, 0xca, 0x09, 0xf9, 0x5e, 0x00, 0x37, 0xaf, 0x6a, 0x24, 0xd6, 0xdb, 0xc9, 0xc8, 0x5d, 0xfa, 0xad, 0xa6, 0xc5, 0xa9, 0x45, 0xdd, 0x63, 0x49, 0xb9, 0xf1, 0xd1, 0xee, 0x10, 0xf2, 0x5f, 0x8d, 0xfc, 0xf0, 0x52, 0x2f, 0x36, 0x23, 0x33, 0x7b, 0xfc, 0xba, 0x20, 0x4e, 0x7e, 0x8e, 0x08, 0xc2, 0x55, 0x64, 0xb4, 0xfe, 0x93, 0x3c, 0xb6, 0xfc, 0x14, 0x5f, 0xfe, 0xf8, 0x2b, 0xaa, 0x2f, 0xd0, 0x3a, 0x89, 0x67, 0x8f, 0xfb, 0x75, 0x85, }; static const unsigned char ecdh_secp521r1_3249_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3249_sharedsecret[] = { 0x01, 0xb3, 0x84, 0xb4, 0x84, 0x05, 0x39, 0x6f, 0xdc, 0xb2, 0xc5, 0x7f, 0x68, 0x0b, 0xe5, 0x2f, 0x91, 0xb7, 0xc8, 0x85, 0x22, 0x5e, 0xcf, 0xb4, 0xf7, 0x86, 0xce, 0x6c, 0x14, 0x90, 0x16, 0x2b, 0x3c, 0x15, 0xeb, 0xd8, 0xe6, 0x75, 0x5e, 0x46, 0x9a, 0x7f, 0xfc, 0xb9, 0x1c, 0xfd, 0x74, 0x06, 0xcf, 0x0a, 0xb9, 0x34, 0xa4, 0x64, 0x5c, 0x3a, 0x03, 0x99, 0x41, 0xe7, 0xd8, 0xcd, 0xc0, 0x7d, 0xda, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_3249 = { .name = "ecdh_secp521r1_3249", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3249_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3249_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3249_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 766 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3250 for ECDH, tcId is 767 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3250_peerpubkey[] = { 0x00, 0xd7, 0xfb, 0x4d, 0x55, 0x92, 0xe7, 0xcf, 0x72, 0x4e, 0x57, 0xe6, 0xab, 0x95, 0xe1, 0x58, 0xd8, 0x18, 0xf1, 0x97, 0xf7, 0x40, 0x31, 0x31, 0x8d, 0xc8, 0x3d, 0x3c, 0x2b, 0xec, 0x5c, 0xd8, 0x48, 0x64, 0x81, 0xfa, 0xc9, 0x7a, 0xd6, 0xb4, 0x81, 0xe8, 0x37, 0xab, 0xbf, 0x35, 0x2b, 0x99, 0x2c, 0x22, 0x64, 0xb1, 0x6f, 0x56, 0x3f, 0x84, 0x42, 0x52, 0x6b, 0xc6, 0xdd, 0x05, 0xa6, 0x37, 0x4d, 0xf8, 0x01, 0x61, 0xdd, 0x90, 0xc9, 0x08, 0xf5, 0x52, 0x4e, 0xe6, 0xb1, 0x57, 0xa8, 0x6f, 0x67, 0x34, 0xa2, 0x5e, 0x14, 0x06, 0x38, 0xbd, 0xd8, 0x39, 0x27, 0x6f, 0xb0, 0x9b, 0x3f, 0xad, 0x93, 0xe7, 0xba, 0x89, 0x9d, 0x6b, 0x6b, 0x3e, 0xd2, 0x4f, 0xff, 0x8d, 0x49, 0x9a, 0xd9, 0x8c, 0xc4, 0x5a, 0x35, 0xd6, 0x2b, 0x8c, 0x46, 0x1f, 0x7c, 0xc2, 0x56, 0x99, 0x72, 0x3a, 0x03, 0x3e, 0x5b, 0x1d, 0xbb, 0x03, }; static const unsigned char ecdh_secp521r1_3250_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3250_sharedsecret[] = { 0x00, 0x8b, 0x00, 0xb6, 0x5c, 0xbd, 0x72, 0xa5, 0x1c, 0x27, 0x9d, 0x1b, 0x59, 0x62, 0x8d, 0x4e, 0x7a, 0x1a, 0x84, 0x72, 0x77, 0xf6, 0xd8, 0xbd, 0x53, 0x11, 0xe5, 0xea, 0xe9, 0x45, 0xc8, 0x87, 0xe4, 0xc8, 0x02, 0x4d, 0xc4, 0x12, 0xeb, 0x42, 0x05, 0xc7, 0x61, 0x03, 0xea, 0x49, 0x3e, 0x25, 0xdf, 0x4c, 0xdf, 0x00, 0x11, 0x61, 0x9e, 0x3e, 0xfb, 0x29, 0x0d, 0x1c, 0xea, 0x8c, 0x29, 0x05, 0x81, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_3250 = { .name = "ecdh_secp521r1_3250", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3250_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3250_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3250_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 767 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3251 for ECDH, tcId is 768 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3251_peerpubkey[] = { 0x00, 0x58, 0x49, 0x93, 0x15, 0xbb, 0x22, 0x97, 0xd7, 0x8f, 0x8e, 0x74, 0xd3, 0x63, 0x4b, 0xbf, 0x83, 0xbd, 0xc1, 0x0e, 0xae, 0x30, 0x6d, 0x82, 0x60, 0xad, 0x0c, 0x62, 0xa4, 0x1c, 0xbf, 0x78, 0x92, 0x91, 0x44, 0xbb, 0xb6, 0x93, 0x71, 0xac, 0x92, 0x18, 0xd1, 0x8e, 0xee, 0x59, 0xfe, 0x82, 0x00, 0xc1, 0x01, 0x73, 0xd3, 0x80, 0xcd, 0x78, 0x43, 0x80, 0x8e, 0xb1, 0x6b, 0x2c, 0x4c, 0xdc, 0x56, 0xdc, 0x00, 0x4e, 0xcd, 0xec, 0xaf, 0xe5, 0x9b, 0x4a, 0xee, 0xd0, 0x84, 0xd2, 0xd7, 0x3a, 0xf0, 0x91, 0x1a, 0x7d, 0x54, 0x47, 0x48, 0x74, 0x68, 0x9b, 0xd6, 0xf7, 0x71, 0x6c, 0x16, 0xee, 0x5f, 0x4f, 0x29, 0x3f, 0x72, 0xba, 0x7d, 0x26, 0x98, 0x9e, 0x55, 0x1a, 0xda, 0xc0, 0x56, 0x8c, 0xd3, 0x45, 0xc5, 0xc9, 0x48, 0x23, 0x1d, 0x5e, 0x49, 0xbc, 0x26, 0x29, 0x01, 0x15, 0x18, 0x6b, 0x18, 0x5b, 0x5d, 0xed, }; static const unsigned char ecdh_secp521r1_3251_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3251_sharedsecret[] = { 0x00, 0x7d, 0xf5, 0x3f, 0x8d, 0x32, 0xa1, 0xea, 0x1f, 0x57, 0x34, 0xb5, 0x94, 0x56, 0x56, 0x4c, 0xac, 0x46, 0x1f, 0x1c, 0x3a, 0x94, 0x9d, 0x4f, 0xed, 0xff, 0x5e, 0xa9, 0x69, 0x28, 0xe7, 0xf2, 0xb4, 0x75, 0x35, 0x20, 0x33, 0x47, 0x60, 0xf1, 0x4e, 0xde, 0x15, 0xea, 0xa9, 0x64, 0xf6, 0xa0, 0xe5, 0x20, 0x34, 0x6c, 0x4f, 0x6b, 0x3b, 0x40, 0x1b, 0xa6, 0xe3, 0x01, 0xb5, 0x81, 0xdd, 0x49, 0xbd, 0x21, }; static const wycheproof_ecdh_test ecdh_secp521r1_3251 = { .name = "ecdh_secp521r1_3251", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3251_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3251_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3251_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 768 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3252 for ECDH, tcId is 769 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3252_peerpubkey[] = { 0x01, 0x1d, 0x26, 0x60, 0xb0, 0xf8, 0xfa, 0x5b, 0xba, 0xae, 0xb0, 0xe1, 0xd9, 0xe2, 0xa9, 0x64, 0x25, 0x58, 0x96, 0x9f, 0x13, 0xcd, 0x08, 0xc5, 0x1c, 0x57, 0x25, 0xb1, 0x9f, 0x18, 0x48, 0x1a, 0xf2, 0xbe, 0x6e, 0xdf, 0x0b, 0xc2, 0xce, 0x59, 0x06, 0x5b, 0xbe, 0xd4, 0xb1, 0xf3, 0x83, 0xf3, 0x2f, 0x52, 0xfc, 0x55, 0x91, 0x74, 0xf2, 0xa4, 0x02, 0x27, 0x5e, 0xe9, 0x51, 0xad, 0xea, 0x00, 0x09, 0x1d, 0x00, 0x5a, 0x34, 0x26, 0x94, 0x5e, 0x6c, 0xb7, 0x06, 0xb8, 0xe4, 0x20, 0x10, 0xa6, 0x9a, 0x47, 0xc0, 0x99, 0x48, 0xfe, 0xc3, 0xf2, 0xc5, 0x5f, 0x8d, 0xa5, 0xce, 0xf5, 0xec, 0xbf, 0x3f, 0x0e, 0xa3, 0xdc, 0x2c, 0xde, 0x92, 0xcb, 0xe2, 0xee, 0xb7, 0x6d, 0xc7, 0xfd, 0x33, 0x82, 0x54, 0x35, 0xee, 0x54, 0x57, 0xbe, 0xb7, 0xa6, 0x06, 0x9e, 0x3e, 0x34, 0x8d, 0x26, 0xed, 0x33, 0xe0, 0x7d, 0xcd, 0xb8, }; static const unsigned char ecdh_secp521r1_3252_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3252_sharedsecret[] = { 0x00, 0x72, 0x5e, 0x7b, 0x5b, 0x8f, 0x0d, 0x7e, 0xb2, 0xd4, 0xfc, 0x60, 0x45, 0xd6, 0x1b, 0x5b, 0x85, 0x05, 0xa1, 0x56, 0xfe, 0xf8, 0xfa, 0x4b, 0x1a, 0x2e, 0x35, 0x17, 0x60, 0xb2, 0xf6, 0x35, 0xa1, 0x83, 0x7f, 0x23, 0xa4, 0xc6, 0xb7, 0x24, 0xdf, 0x07, 0x6b, 0x21, 0x87, 0xb7, 0xe2, 0x13, 0xda, 0x63, 0x6b, 0x06, 0x25, 0x0c, 0x66, 0x19, 0x3a, 0x23, 0x5a, 0x4e, 0x3c, 0x90, 0xed, 0x86, 0xeb, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp521r1_3252 = { .name = "ecdh_secp521r1_3252", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3252_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3252_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3252_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 769 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3253 for ECDH, tcId is 770 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3253_peerpubkey[] = { 0x00, 0x9c, 0x93, 0x06, 0x5d, 0x67, 0xcd, 0x83, 0x91, 0x87, 0x23, 0x3f, 0xbf, 0xb3, 0x3f, 0x80, 0x8f, 0x7a, 0x6c, 0xd4, 0x44, 0x92, 0x4e, 0xe4, 0xea, 0x0f, 0xd4, 0xbb, 0x9b, 0x3d, 0xbc, 0x8b, 0x4a, 0xff, 0xa7, 0xd3, 0xc8, 0xe3, 0xac, 0x2a, 0xbf, 0x82, 0x44, 0x9d, 0x7c, 0xf4, 0x16, 0x6c, 0x6c, 0x18, 0x1b, 0x4f, 0x60, 0x9f, 0xe0, 0x9e, 0x3f, 0xf7, 0xa2, 0xb6, 0x64, 0x0f, 0x81, 0x63, 0xb0, 0x81, 0x00, 0xb5, 0xf4, 0x4a, 0x94, 0x7b, 0x7d, 0x9b, 0xc7, 0x80, 0x69, 0xd1, 0x5d, 0x50, 0x49, 0xac, 0x1e, 0xe9, 0xda, 0x21, 0xe7, 0x81, 0x31, 0x52, 0x3e, 0xba, 0x4d, 0x9c, 0x9e, 0xe6, 0x72, 0x6d, 0x32, 0xbd, 0x4a, 0xd8, 0x49, 0xdb, 0xd7, 0x12, 0x70, 0x71, 0x0c, 0xcc, 0xb3, 0xcb, 0x88, 0xd2, 0x43, 0x18, 0x8f, 0xd0, 0x4a, 0xc3, 0x94, 0xc1, 0x25, 0xdc, 0xb6, 0x27, 0x35, 0x57, 0x0e, 0x12, 0x38, 0x90, }; static const unsigned char ecdh_secp521r1_3253_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3253_sharedsecret[] = { 0x00, 0x71, 0x8e, 0x90, 0x0a, 0x7e, 0xf9, 0x93, 0xd6, 0x71, 0xab, 0x0d, 0xc5, 0x41, 0x7c, 0x98, 0xf6, 0x1f, 0x6e, 0xb0, 0x73, 0x16, 0x41, 0xe5, 0x52, 0xff, 0x48, 0xfa, 0x4f, 0x93, 0x31, 0x8b, 0x8b, 0xff, 0xfa, 0xff, 0x2a, 0x1c, 0xfa, 0x4b, 0x75, 0x9d, 0x35, 0x1e, 0x56, 0x03, 0x6a, 0x61, 0xdd, 0x10, 0x61, 0xd8, 0x5c, 0x3d, 0x14, 0x4b, 0x8a, 0x88, 0x2f, 0x46, 0x98, 0x10, 0xc5, 0x8e, 0x06, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_3253 = { .name = "ecdh_secp521r1_3253", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3253_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3253_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3253_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 770 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3254 for ECDH, tcId is 771 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3254_peerpubkey[] = { 0x00, 0x3c, 0x1f, 0x1b, 0xe4, 0x61, 0xd3, 0xcf, 0x43, 0x02, 0xcf, 0x1f, 0xa8, 0xeb, 0x92, 0x1e, 0x5c, 0x28, 0x06, 0xfe, 0x56, 0x73, 0xf2, 0x7f, 0x6d, 0xa3, 0xa5, 0xbc, 0x2b, 0x3d, 0x78, 0xa8, 0xaa, 0xe7, 0xba, 0x41, 0x02, 0x36, 0xdd, 0x9e, 0x65, 0x09, 0x42, 0xcc, 0xdb, 0x11, 0x04, 0x23, 0xab, 0xf5, 0x3c, 0x5d, 0x13, 0x16, 0x76, 0x38, 0xff, 0x81, 0x62, 0xb4, 0xb9, 0x31, 0xa0, 0xbc, 0xbb, 0xa9, 0x00, 0x60, 0x8d, 0x65, 0x17, 0x00, 0x9d, 0x99, 0xfc, 0x3b, 0xf1, 0x16, 0x5e, 0x81, 0x99, 0x22, 0x1a, 0x79, 0x89, 0xf2, 0xeb, 0xda, 0x3b, 0x73, 0x9a, 0x74, 0x8c, 0xc9, 0x38, 0xd2, 0xdb, 0x3e, 0x69, 0x7c, 0x5f, 0x75, 0xc3, 0x2d, 0xd5, 0xbc, 0xc5, 0x57, 0x8e, 0x54, 0x9e, 0x42, 0x9f, 0x45, 0x4a, 0x03, 0x95, 0x79, 0xea, 0x1e, 0x79, 0x68, 0x51, 0xe7, 0x57, 0x8e, 0xfd, 0x28, 0x08, 0x58, 0xcc, 0x96, }; static const unsigned char ecdh_secp521r1_3254_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3254_sharedsecret[] = { 0x01, 0x61, 0xc8, 0x4c, 0x64, 0xcb, 0xd6, 0x5e, 0x71, 0x8a, 0xbf, 0xab, 0x1f, 0x82, 0x7a, 0xf3, 0x30, 0x64, 0xe7, 0x02, 0x9a, 0xe6, 0xfe, 0xeb, 0x11, 0xe0, 0x57, 0x18, 0x1b, 0x4b, 0x7f, 0xf3, 0xdb, 0xce, 0x4d, 0x85, 0x68, 0x62, 0xb4, 0x9a, 0xbb, 0xc0, 0xb9, 0x23, 0x16, 0x43, 0x61, 0x72, 0x8f, 0x62, 0x74, 0xd8, 0x90, 0x60, 0x3b, 0x7c, 0xe1, 0x87, 0xd7, 0xcc, 0xfc, 0x3f, 0xf1, 0x57, 0xb4, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3254 = { .name = "ecdh_secp521r1_3254", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3254_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3254_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3254_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 771 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3255 for ECDH, tcId is 772 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3255_peerpubkey[] = { 0x01, 0x0b, 0x7b, 0x6f, 0xad, 0xa1, 0xf6, 0x02, 0xc9, 0xe9, 0x7d, 0xa4, 0xac, 0xd7, 0xeb, 0xfd, 0x2f, 0x9f, 0x8e, 0x30, 0xe0, 0xb3, 0x0b, 0x77, 0xfb, 0x39, 0x54, 0xde, 0xaa, 0xfa, 0xa2, 0xae, 0x26, 0x28, 0xba, 0x04, 0x2b, 0x92, 0x57, 0xa0, 0xb6, 0x11, 0xdf, 0x77, 0x0a, 0x7a, 0xd7, 0x0d, 0xa7, 0xb9, 0xa2, 0x0b, 0xf4, 0xd6, 0xf8, 0x05, 0x12, 0xce, 0xe7, 0x4b, 0xa2, 0x14, 0xc6, 0x1c, 0x6d, 0x66, 0x00, 0x20, 0x61, 0xf8, 0x90, 0xcd, 0x81, 0xb9, 0xb4, 0x9c, 0x91, 0x00, 0x7a, 0x32, 0x5d, 0xdb, 0x67, 0xc4, 0x60, 0x62, 0xbb, 0x64, 0x26, 0x6d, 0x3e, 0x72, 0x93, 0x42, 0x49, 0xcb, 0x72, 0x62, 0xb8, 0xb9, 0x2a, 0x73, 0x72, 0x34, 0xf6, 0xe8, 0x5b, 0x74, 0xf8, 0x18, 0xb9, 0x54, 0xab, 0xbc, 0x35, 0x29, 0xda, 0x11, 0x6c, 0x03, 0x21, 0xf8, 0x2e, 0x21, 0xdd, 0x25, 0xe5, 0x3c, 0x07, 0x3a, 0xbb, 0xe1, }; static const unsigned char ecdh_secp521r1_3255_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3255_sharedsecret[] = { 0x01, 0x72, 0xbd, 0xb2, 0x4a, 0xc7, 0xef, 0x74, 0x1a, 0x94, 0xc1, 0x5a, 0xcc, 0x7e, 0x20, 0x8d, 0x8d, 0x01, 0x18, 0x3b, 0xe1, 0xc4, 0x5f, 0x5e, 0x51, 0x0d, 0xa1, 0xc0, 0x80, 0x91, 0x02, 0xa9, 0x60, 0x3f, 0xe3, 0x0d, 0xcb, 0xb0, 0x33, 0x25, 0x08, 0x6a, 0xed, 0x94, 0xba, 0x23, 0x42, 0x2b, 0xe9, 0x40, 0x42, 0x87, 0xcd, 0xea, 0xe4, 0xa2, 0x88, 0xaf, 0xdd, 0xc2, 0xaa, 0xa0, 0xe8, 0xcb, 0xc4, 0x15, }; static const wycheproof_ecdh_test ecdh_secp521r1_3255 = { .name = "ecdh_secp521r1_3255", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3255_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3255_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3255_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 772 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3256 for ECDH, tcId is 773 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3256_peerpubkey[] = { 0x01, 0x1d, 0x28, 0xb1, 0xa9, 0x5f, 0xbf, 0x27, 0xa4, 0xad, 0x21, 0xef, 0x46, 0x13, 0xe1, 0x98, 0x3c, 0xce, 0x35, 0x4c, 0x01, 0x8a, 0xa7, 0x57, 0x33, 0x0f, 0xe1, 0x35, 0x72, 0xf8, 0x48, 0xab, 0xfa, 0x25, 0x58, 0x98, 0xd1, 0x39, 0x8f, 0x13, 0xce, 0xb0, 0x6b, 0x3b, 0x53, 0x29, 0x2d, 0x00, 0x0e, 0x87, 0xdd, 0x20, 0xdd, 0x19, 0x54, 0x76, 0x3a, 0x94, 0xfd, 0xce, 0xb1, 0x28, 0xfe, 0x63, 0xaf, 0x1b, 0x01, 0x11, 0xff, 0xc1, 0xb2, 0x68, 0x66, 0xdc, 0xff, 0x9e, 0x42, 0x10, 0x4a, 0x12, 0x1a, 0x24, 0xef, 0x5a, 0x15, 0xd7, 0x81, 0x41, 0xcc, 0x93, 0xc2, 0x61, 0x67, 0x39, 0x89, 0x75, 0x91, 0x6e, 0xaf, 0xc8, 0xad, 0x8b, 0xaa, 0xe1, 0x3f, 0x59, 0xdf, 0x23, 0xfe, 0x79, 0xaa, 0xfb, 0x6e, 0x20, 0x78, 0xba, 0x46, 0x5c, 0x6b, 0x14, 0xe4, 0x4c, 0x06, 0x0e, 0xea, 0xaa, 0x1a, 0xe6, 0xf4, 0xc7, 0xc9, 0x79, }; static const unsigned char ecdh_secp521r1_3256_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3256_sharedsecret[] = { 0x01, 0x24, 0xea, 0xcf, 0xd5, 0x98, 0xb6, 0xfc, 0x20, 0xb9, 0xf0, 0x18, 0x73, 0xed, 0x3c, 0x55, 0xb0, 0xdb, 0xb3, 0xf9, 0xdb, 0xc1, 0x8a, 0x05, 0x23, 0x3e, 0x59, 0xa4, 0xec, 0x72, 0x70, 0xd0, 0x12, 0xb7, 0x90, 0x84, 0x0d, 0x22, 0x05, 0x1c, 0x4f, 0x1c, 0x55, 0xa2, 0x52, 0xe8, 0xad, 0xb1, 0x0d, 0xae, 0x85, 0x55, 0x99, 0xe2, 0x2a, 0xbc, 0xb3, 0xe2, 0x39, 0x04, 0xaa, 0x07, 0x67, 0xe3, 0xcc, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_3256 = { .name = "ecdh_secp521r1_3256", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3256_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3256_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3256_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 773 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3257 for ECDH, tcId is 774 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3257_peerpubkey[] = { 0x01, 0x87, 0xb3, 0x11, 0x1a, 0x71, 0x8b, 0x18, 0x07, 0x7d, 0x97, 0x89, 0x12, 0x5e, 0xbd, 0xb6, 0xfd, 0xec, 0x77, 0x89, 0x08, 0x75, 0x44, 0x0d, 0x36, 0x69, 0x2e, 0x30, 0x15, 0x9b, 0x4c, 0xfb, 0xde, 0x18, 0x07, 0xb3, 0xeb, 0xb1, 0xb1, 0xa8, 0xc7, 0xdb, 0x00, 0xc1, 0xfa, 0x66, 0xcf, 0x32, 0xc5, 0xf9, 0xae, 0x0f, 0x59, 0x41, 0xe3, 0x2d, 0x7c, 0x7d, 0x2a, 0xf0, 0xfa, 0x98, 0x83, 0x2f, 0x01, 0xba, 0x00, 0x8f, 0x7d, 0xef, 0x20, 0x63, 0xa7, 0x79, 0x76, 0x25, 0x23, 0x67, 0x97, 0xfb, 0xea, 0xf8, 0xd0, 0x7d, 0x74, 0xe0, 0x7d, 0x13, 0x9e, 0x6d, 0x73, 0x58, 0x3d, 0x2d, 0x45, 0x0a, 0x77, 0x94, 0xa8, 0xf7, 0x12, 0xff, 0x78, 0x52, 0xaa, 0xa2, 0x3d, 0xa6, 0xee, 0x81, 0x42, 0xd9, 0xb6, 0x97, 0x56, 0x8f, 0x7f, 0x4a, 0x63, 0xa8, 0x7f, 0x97, 0xd6, 0x35, 0x4f, 0xc4, 0x69, 0x59, 0x64, 0x06, 0x92, 0x6c, }; static const unsigned char ecdh_secp521r1_3257_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3257_sharedsecret[] = { 0x01, 0x2f, 0xdc, 0xff, 0x44, 0xa9, 0xaf, 0x94, 0xf1, 0x8b, 0x50, 0xf4, 0x9c, 0x19, 0xa1, 0xe0, 0xe6, 0xf9, 0x99, 0x96, 0x4d, 0x5c, 0xa4, 0x32, 0x7f, 0x28, 0x0b, 0x2e, 0xdb, 0xab, 0xf8, 0x23, 0x5d, 0x2e, 0x2b, 0xa2, 0xe1, 0x01, 0xb3, 0x91, 0xd0, 0xdc, 0x1a, 0xa0, 0x67, 0xd3, 0x59, 0x3c, 0xaf, 0xb3, 0xc5, 0xa9, 0x9c, 0x05, 0x31, 0x65, 0xfa, 0x28, 0xd6, 0x77, 0x99, 0x0e, 0xa8, 0x86, 0xfc, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3257 = { .name = "ecdh_secp521r1_3257", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3257_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3257_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3257_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 774 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3258 for ECDH, tcId is 775 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3258_peerpubkey[] = { 0x00, 0x9a, 0x64, 0xba, 0x8c, 0x66, 0x62, 0xbb, 0x51, 0x55, 0x3f, 0x85, 0x60, 0x8a, 0xa2, 0xe5, 0x22, 0xbb, 0xff, 0xd1, 0xb4, 0x4e, 0xf6, 0x46, 0xde, 0x09, 0x38, 0xf6, 0x26, 0x79, 0x90, 0xdd, 0x9d, 0x7f, 0x52, 0x50, 0x51, 0x36, 0xb6, 0x76, 0x20, 0xaf, 0xc1, 0xf6, 0xd2, 0x5a, 0xcf, 0x6d, 0x1d, 0xc3, 0x97, 0x2c, 0x3a, 0x88, 0x49, 0x3a, 0xe3, 0x92, 0x72, 0x30, 0x22, 0x5c, 0x03, 0xa8, 0x13, 0x5d, 0x00, 0x89, 0x52, 0xc1, 0x5d, 0xc9, 0x44, 0x61, 0x87, 0x3c, 0x23, 0x2a, 0x2f, 0xbe, 0xb4, 0xa7, 0xa4, 0x68, 0x7e, 0x64, 0x1d, 0x10, 0xb3, 0x34, 0x8d, 0x17, 0xa3, 0x1e, 0xa3, 0xfb, 0xf1, 0x7c, 0xed, 0x90, 0x65, 0xbf, 0xcd, 0xdf, 0xd9, 0x2a, 0xc7, 0x42, 0xce, 0xe6, 0x1d, 0x5b, 0xf5, 0x82, 0xb9, 0x58, 0xd2, 0x53, 0xe9, 0x39, 0xce, 0x5c, 0xf9, 0x2c, 0xe7, 0x96, 0x15, 0x43, 0x3d, 0x06, 0x9d, 0x8d, }; static const unsigned char ecdh_secp521r1_3258_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3258_sharedsecret[] = { 0x01, 0xcd, 0xf3, 0xf0, 0xc8, 0x13, 0xba, 0xdf, 0x74, 0x54, 0xde, 0x52, 0x0d, 0x12, 0x48, 0xb2, 0x98, 0x50, 0x21, 0x94, 0x50, 0x4a, 0xfd, 0x59, 0x04, 0x08, 0x09, 0x41, 0xcb, 0x85, 0xa3, 0x71, 0x56, 0x28, 0x48, 0xe4, 0x75, 0x60, 0x11, 0x71, 0x35, 0x93, 0xaf, 0x46, 0x14, 0x5d, 0x06, 0x52, 0xb2, 0xed, 0xce, 0x18, 0xd5, 0xc9, 0xe4, 0xa4, 0xcd, 0x55, 0x37, 0x0b, 0xcd, 0x60, 0x83, 0x99, 0x06, 0x28, }; static const wycheproof_ecdh_test ecdh_secp521r1_3258 = { .name = "ecdh_secp521r1_3258", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3258_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3258_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3258_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 775 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3259 for ECDH, tcId is 776 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3259_peerpubkey[] = { 0x00, 0x39, 0x3b, 0xd8, 0xfe, 0x3c, 0x49, 0xf7, 0x88, 0x5e, 0xfb, 0xca, 0xb8, 0x79, 0x62, 0xef, 0x12, 0x45, 0x8c, 0x18, 0xf2, 0x55, 0xf0, 0x1a, 0x24, 0xa1, 0xab, 0x79, 0x5c, 0xbf, 0xe2, 0xb4, 0xdd, 0xf6, 0xe8, 0xac, 0x25, 0x3e, 0x4f, 0xd9, 0x48, 0x43, 0x77, 0xf5, 0x9d, 0xdc, 0x7c, 0x08, 0x79, 0x96, 0x38, 0x6e, 0xd9, 0xa1, 0x65, 0xcc, 0xa8, 0x1f, 0x85, 0x3c, 0x91, 0x8b, 0xe1, 0xc9, 0xd3, 0x99, 0x00, 0x7c, 0x47, 0xac, 0xa4, 0xae, 0xe1, 0x79, 0x5d, 0x41, 0x4c, 0x43, 0x34, 0xce, 0x4b, 0xfe, 0xca, 0xfa, 0xbf, 0x3c, 0x33, 0x91, 0xa0, 0x2e, 0x93, 0x32, 0xd7, 0xf1, 0x7e, 0xc1, 0xb5, 0xc5, 0x42, 0x00, 0x9f, 0x98, 0x0f, 0xba, 0xf3, 0xea, 0xdc, 0xc1, 0x92, 0xf4, 0x00, 0xb9, 0xad, 0x24, 0x00, 0x22, 0x0c, 0x09, 0x0a, 0x75, 0x87, 0x84, 0xdb, 0xa6, 0x6d, 0xe4, 0x06, 0x00, 0xc6, 0x26, 0xe4, 0xa1, }; static const unsigned char ecdh_secp521r1_3259_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3259_sharedsecret[] = { 0x01, 0xd1, 0x08, 0x25, 0xbb, 0x71, 0xd0, 0x94, 0xea, 0x2b, 0x01, 0x85, 0x55, 0x83, 0xa8, 0x22, 0x68, 0x71, 0xeb, 0xe7, 0xd6, 0xbc, 0xae, 0x06, 0x42, 0x27, 0xbd, 0xd8, 0x41, 0x78, 0x8d, 0x1c, 0x48, 0x9b, 0x94, 0xdb, 0x20, 0xc3, 0x95, 0x62, 0x45, 0x0d, 0xb8, 0x47, 0x35, 0xf9, 0x28, 0x52, 0x59, 0xb3, 0x4c, 0x5d, 0x3b, 0x43, 0xa4, 0x87, 0xf0, 0x70, 0x86, 0x32, 0xb7, 0x5d, 0xe2, 0xeb, 0xe1, 0x04, }; static const wycheproof_ecdh_test ecdh_secp521r1_3259 = { .name = "ecdh_secp521r1_3259", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3259_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3259_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3259_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 776 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3260 for ECDH, tcId is 777 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3260_peerpubkey[] = { 0x01, 0xb4, 0xb1, 0x9a, 0x12, 0x5b, 0xc0, 0xcb, 0xd0, 0x60, 0x60, 0x64, 0xa0, 0x51, 0xaf, 0x4a, 0xb1, 0x7f, 0x79, 0x18, 0x80, 0x47, 0x5f, 0x00, 0xa1, 0xfb, 0xcd, 0x4a, 0x79, 0x7b, 0x40, 0x1b, 0xda, 0x39, 0x0e, 0xf7, 0x82, 0x6f, 0xa0, 0x16, 0x82, 0x65, 0x1d, 0x72, 0xcb, 0x13, 0x53, 0x70, 0x4d, 0x7a, 0x18, 0x02, 0x7c, 0x4d, 0x60, 0x93, 0x34, 0xb2, 0xe8, 0xc5, 0xd4, 0xde, 0xf8, 0x6e, 0xa0, 0xe4, 0x01, 0x90, 0xe4, 0xcd, 0x6a, 0x4e, 0x0b, 0xa9, 0xea, 0x45, 0xd3, 0xb7, 0x14, 0x4f, 0x74, 0xaa, 0xf1, 0x98, 0x64, 0x62, 0x55, 0x8c, 0x8b, 0x3a, 0x10, 0x50, 0x18, 0x82, 0xc2, 0x66, 0x9e, 0xc2, 0x65, 0xef, 0xc1, 0x52, 0xf5, 0x51, 0x0f, 0x3e, 0x99, 0x0d, 0x67, 0x21, 0x84, 0x71, 0xca, 0xfc, 0x66, 0xc8, 0x45, 0xcf, 0x69, 0xe5, 0xef, 0xf6, 0xe0, 0x30, 0x8c, 0xc5, 0x9a, 0xc5, 0x9a, 0x40, 0x76, 0x67, }; static const unsigned char ecdh_secp521r1_3260_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3260_sharedsecret[] = { 0x00, 0x31, 0xeb, 0x14, 0x66, 0x16, 0xd7, 0xbc, 0x61, 0xff, 0xb5, 0x53, 0xb7, 0xca, 0x85, 0x22, 0xa5, 0xb6, 0x08, 0x8d, 0x23, 0xd5, 0xca, 0x6e, 0x30, 0xb2, 0x01, 0xb8, 0x6d, 0xa2, 0x37, 0x5d, 0x1f, 0x6c, 0xc4, 0x8e, 0x88, 0xa2, 0x4b, 0x52, 0xb0, 0xe2, 0x20, 0x45, 0xca, 0x7c, 0x50, 0x6c, 0x20, 0x69, 0x30, 0x61, 0x9c, 0x28, 0x9f, 0xc4, 0xa6, 0x88, 0x43, 0x2a, 0xde, 0xe4, 0x70, 0x28, 0x80, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3260 = { .name = "ecdh_secp521r1_3260", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3260_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3260_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3260_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 777 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3261 for ECDH, tcId is 778 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3261_peerpubkey[] = { 0x00, 0xe7, 0xfa, 0x4a, 0xc2, 0x36, 0x5a, 0xf9, 0x37, 0x8d, 0xd2, 0xc8, 0x1f, 0x32, 0xf9, 0xef, 0x55, 0xd4, 0xd3, 0x41, 0xac, 0x32, 0x4e, 0xb4, 0x69, 0x23, 0xec, 0x7f, 0x15, 0x44, 0x8c, 0x37, 0xef, 0x60, 0x7c, 0x97, 0x5c, 0x35, 0x27, 0x54, 0xf4, 0x72, 0x87, 0x3e, 0x46, 0x9f, 0x8d, 0x37, 0xd3, 0x8d, 0x97, 0xd1, 0x61, 0xa7, 0xb9, 0xb1, 0xda, 0xe2, 0xe9, 0x65, 0xfd, 0xcc, 0x95, 0x97, 0x47, 0xba, 0x01, 0xe6, 0xc0, 0x96, 0x39, 0x72, 0x94, 0x99, 0xb6, 0x07, 0x33, 0x0d, 0x7d, 0xab, 0xa2, 0xb5, 0xc1, 0xef, 0xae, 0x4f, 0x12, 0x1e, 0x54, 0x0b, 0xf7, 0xe6, 0x91, 0x80, 0x9a, 0x05, 0x55, 0x42, 0x28, 0x4c, 0xb5, 0xee, 0x87, 0x47, 0x55, 0x89, 0xce, 0xc6, 0x63, 0xb5, 0x3f, 0x21, 0xb9, 0x12, 0x31, 0xa6, 0x38, 0xd8, 0x40, 0x2e, 0x35, 0x8f, 0xd1, 0x69, 0x95, 0x34, 0x91, 0xab, 0x39, 0x53, 0x12, 0x2a, }; static const unsigned char ecdh_secp521r1_3261_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3261_sharedsecret[] = { 0x00, 0xa8, 0xf2, 0xda, 0xd7, 0x49, 0xea, 0x1e, 0x15, 0x67, 0x35, 0x86, 0xbb, 0x67, 0xb5, 0xc8, 0x5f, 0xf8, 0xf4, 0x5c, 0x72, 0xef, 0x84, 0x47, 0xef, 0xef, 0x3e, 0xfc, 0x62, 0x6a, 0x6a, 0x10, 0xca, 0x88, 0x45, 0x16, 0x43, 0xb4, 0x34, 0xa2, 0x51, 0x76, 0xcb, 0xae, 0x77, 0x89, 0x9a, 0x3e, 0x32, 0xa4, 0x48, 0x47, 0x81, 0xb7, 0x00, 0xe0, 0x38, 0x57, 0xbd, 0xd1, 0x58, 0xad, 0x3c, 0xfb, 0xf2, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_3261 = { .name = "ecdh_secp521r1_3261", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3261_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3261_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3261_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 778 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3262 for ECDH, tcId is 779 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3262_peerpubkey[] = { 0x01, 0x04, 0xf4, 0x3f, 0xfb, 0xb3, 0x7c, 0xe5, 0xd0, 0xea, 0x95, 0x61, 0x71, 0xc0, 0x70, 0xd6, 0x14, 0x7a, 0xcf, 0xa9, 0x51, 0x9b, 0x88, 0x79, 0x95, 0x83, 0x2a, 0x0e, 0xb8, 0x01, 0xe0, 0xdb, 0xc6, 0x68, 0x96, 0xdf, 0xaf, 0xf9, 0x44, 0x09, 0xb4, 0x97, 0xf4, 0xa4, 0x16, 0xcc, 0xd8, 0x27, 0x50, 0xda, 0x47, 0xa5, 0x20, 0xb8, 0x70, 0xdf, 0xe6, 0xcd, 0x37, 0x64, 0xf0, 0xe3, 0xc0, 0xf1, 0xbc, 0x3b, 0x00, 0xa5, 0xf3, 0xdb, 0x99, 0x39, 0xc2, 0x11, 0x47, 0xab, 0x44, 0x88, 0xc8, 0x12, 0x8b, 0xa0, 0x56, 0x4f, 0x19, 0x2f, 0x27, 0x88, 0x56, 0x01, 0x45, 0xd2, 0xb1, 0x4a, 0x85, 0x28, 0x16, 0xb4, 0x85, 0x1e, 0xf6, 0x9a, 0x46, 0x2c, 0x98, 0x54, 0xba, 0xce, 0x72, 0x0e, 0x46, 0x29, 0xed, 0x55, 0xaf, 0x9d, 0x2c, 0x7d, 0xa7, 0x4c, 0xd3, 0x09, 0xfc, 0x55, 0x66, 0xe1, 0x16, 0x30, 0x74, 0x6a, 0x35, 0x22, }; static const unsigned char ecdh_secp521r1_3262_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3262_sharedsecret[] = { 0x01, 0xee, 0x85, 0xa3, 0xb6, 0xd3, 0x5d, 0x0d, 0xf6, 0xa4, 0x45, 0x59, 0x3c, 0x94, 0x60, 0x99, 0x32, 0x53, 0x0e, 0x25, 0xee, 0x71, 0x90, 0x9c, 0x56, 0x81, 0xae, 0x39, 0x8a, 0x38, 0x30, 0x9e, 0x86, 0x99, 0xe9, 0x4e, 0x0f, 0x23, 0xf5, 0x6c, 0x64, 0xa0, 0xd0, 0x4f, 0xc1, 0x0e, 0x28, 0x96, 0xc5, 0x0f, 0x21, 0x3f, 0x12, 0xc6, 0x85, 0x15, 0x1f, 0xa4, 0x0f, 0x18, 0xac, 0x6d, 0x8e, 0xd8, 0x59, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_3262 = { .name = "ecdh_secp521r1_3262", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3262_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3262_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3262_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 779 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3263 for ECDH, tcId is 780 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3263_peerpubkey[] = { 0x01, 0x25, 0x0e, 0xca, 0xd8, 0x94, 0xd3, 0xfd, 0xff, 0xb5, 0x80, 0x09, 0x9c, 0x2c, 0x30, 0x5b, 0xd5, 0xd9, 0x03, 0xfe, 0xdd, 0x2e, 0x53, 0x2e, 0xa5, 0x8d, 0x29, 0xd6, 0x3c, 0x32, 0x81, 0xb3, 0x9e, 0x6f, 0x47, 0xa1, 0x1b, 0x3b, 0xe9, 0x7c, 0x1c, 0x04, 0xe0, 0x42, 0xd3, 0xf1, 0x9b, 0xd0, 0xcb, 0xe0, 0xef, 0x41, 0x21, 0xa2, 0x57, 0x27, 0x9b, 0xbd, 0x76, 0xc6, 0x6a, 0x05, 0xe8, 0xd2, 0x22, 0xd0, 0x01, 0xa2, 0xb3, 0xce, 0x41, 0xca, 0x09, 0xb5, 0xb6, 0x28, 0x7b, 0x4c, 0x32, 0x8a, 0x31, 0x5d, 0xca, 0x24, 0x3c, 0x72, 0x6e, 0x86, 0x16, 0x62, 0x9d, 0x2b, 0x37, 0x50, 0x6b, 0x7e, 0xb3, 0x1e, 0xb7, 0x6f, 0x51, 0x3d, 0xec, 0xb0, 0xab, 0x20, 0xa5, 0x2c, 0x0c, 0x26, 0x0a, 0x92, 0x0e, 0x92, 0xae, 0x1a, 0x62, 0x9f, 0xb8, 0x17, 0xdf, 0x5a, 0xd6, 0xd7, 0xe6, 0x23, 0x67, 0xac, 0x5e, 0x8e, 0xe5, 0xf0, }; static const unsigned char ecdh_secp521r1_3263_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3263_sharedsecret[] = { 0x01, 0x1e, 0x7d, 0x52, 0x9d, 0xc9, 0x61, 0x52, 0x09, 0x16, 0x24, 0x01, 0xab, 0x2b, 0xb7, 0x17, 0x37, 0x81, 0x09, 0xd8, 0x7a, 0x1a, 0xc8, 0x6b, 0x98, 0xb7, 0x95, 0x4e, 0xa9, 0x1b, 0x96, 0x0b, 0x08, 0xfa, 0x93, 0x74, 0xea, 0x72, 0x70, 0x35, 0x19, 0xc3, 0x9c, 0x69, 0x79, 0x72, 0x40, 0xc9, 0x77, 0x81, 0x7e, 0x2b, 0x34, 0xb5, 0x32, 0x26, 0x65, 0xdd, 0x51, 0x82, 0x51, 0xbc, 0xc1, 0xfa, 0x97, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp521r1_3263 = { .name = "ecdh_secp521r1_3263", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3263_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3263_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3263_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 780 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3264 for ECDH, tcId is 781 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3264_peerpubkey[] = { 0x00, 0x19, 0xf6, 0xff, 0xd8, 0x1d, 0x01, 0x2b, 0x70, 0x80, 0x4c, 0x30, 0x85, 0x94, 0xb4, 0x70, 0x66, 0x51, 0x6b, 0xbb, 0x33, 0x9b, 0x44, 0xab, 0xad, 0xb4, 0xda, 0x19, 0x43, 0x99, 0xd1, 0xb4, 0xd5, 0xfc, 0x98, 0xdd, 0x9d, 0x0d, 0xc3, 0x63, 0xa9, 0xbc, 0xb1, 0x43, 0x96, 0x32, 0x7f, 0xfa, 0xdb, 0x39, 0xf9, 0xb3, 0x57, 0xb7, 0xe6, 0x31, 0xa8, 0x4b, 0x23, 0x03, 0x93, 0x96, 0xf1, 0xcc, 0x96, 0xf1, 0x01, 0xa6, 0xa8, 0xc0, 0xaf, 0x8e, 0x08, 0x3a, 0x9f, 0x8c, 0x19, 0xcb, 0x0f, 0xba, 0xe7, 0xb4, 0x52, 0x3c, 0x4c, 0x54, 0xfc, 0x9f, 0xfe, 0xfb, 0x73, 0x51, 0x13, 0xf5, 0x28, 0xf7, 0xa3, 0xe9, 0x66, 0x25, 0x71, 0x06, 0x08, 0x61, 0xdd, 0x6c, 0x9c, 0x71, 0xb3, 0x3d, 0x99, 0xb5, 0x3d, 0x71, 0x6c, 0x36, 0xa8, 0xa9, 0x02, 0xbc, 0xa6, 0x4c, 0x46, 0xc7, 0xe3, 0x4a, 0x2e, 0x88, 0xdb, 0xc9, 0x6b, 0x6d, }; static const unsigned char ecdh_secp521r1_3264_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3264_sharedsecret[] = { 0x00, 0x6b, 0x46, 0xbb, 0xda, 0x9f, 0x37, 0x96, 0x1a, 0xec, 0x9e, 0xfc, 0xd6, 0xfc, 0xba, 0xf4, 0xe2, 0x5b, 0x66, 0x74, 0xea, 0x37, 0xf8, 0xd8, 0x2c, 0xa2, 0xed, 0xcc, 0x06, 0x35, 0x3e, 0x24, 0xd0, 0x9e, 0xa5, 0xd8, 0x61, 0x36, 0xfe, 0xde, 0xe3, 0x4e, 0x0c, 0x39, 0x1b, 0x85, 0x90, 0x72, 0xab, 0x91, 0x91, 0x8b, 0x51, 0xd0, 0x80, 0x0a, 0xb2, 0x02, 0x55, 0xf4, 0x38, 0xc6, 0x60, 0x88, 0x2e, 0x91, }; static const wycheproof_ecdh_test ecdh_secp521r1_3264 = { .name = "ecdh_secp521r1_3264", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3264_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3264_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3264_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 781 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3265 for ECDH, tcId is 782 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3265_peerpubkey[] = { 0x00, 0x77, 0xd8, 0x97, 0xcf, 0xf6, 0xa2, 0xa3, 0x44, 0x6f, 0xb3, 0x85, 0x28, 0xad, 0x80, 0xcf, 0x3c, 0xc5, 0x03, 0xad, 0x93, 0xda, 0x06, 0xc7, 0xc5, 0xa5, 0x25, 0xcf, 0x9a, 0x7b, 0xba, 0x33, 0xd7, 0x9d, 0x68, 0x6a, 0x0c, 0x53, 0x29, 0x0a, 0x45, 0x94, 0x24, 0x05, 0x40, 0xa0, 0x2a, 0x85, 0xcf, 0x14, 0x33, 0x6a, 0x23, 0xda, 0x56, 0xef, 0xdb, 0x56, 0x2b, 0x06, 0x56, 0x80, 0x0f, 0xf3, 0x96, 0xa4, 0x01, 0x20, 0x77, 0x9a, 0xe0, 0xdf, 0x7c, 0x1d, 0x92, 0x8c, 0xa1, 0x8d, 0x63, 0xfc, 0xab, 0xf0, 0xd2, 0x1b, 0xd4, 0x37, 0xc8, 0x6e, 0x40, 0x96, 0x6b, 0xae, 0x8c, 0x9f, 0xef, 0x2a, 0xc7, 0x27, 0x38, 0xa7, 0x5b, 0xe4, 0x99, 0x38, 0xab, 0x99, 0x17, 0x03, 0x4a, 0x25, 0x36, 0xc0, 0x23, 0x69, 0x5e, 0x82, 0x1f, 0x70, 0xb4, 0x58, 0x33, 0x9b, 0xd8, 0xde, 0x21, 0x8a, 0x5c, 0xf7, 0x41, 0xe5, 0x5a, 0x7d, }; static const unsigned char ecdh_secp521r1_3265_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3265_sharedsecret[] = { 0x01, 0x10, 0x99, 0x89, 0xb6, 0x2a, 0x37, 0x93, 0x97, 0x23, 0x2c, 0x23, 0x8c, 0xf5, 0x7d, 0x81, 0x88, 0x4b, 0xab, 0xb3, 0x9b, 0x04, 0x1f, 0xbf, 0x0f, 0x0b, 0x48, 0xbb, 0x7d, 0x79, 0x49, 0x44, 0xf9, 0xa3, 0x02, 0xde, 0x0e, 0xcc, 0xaa, 0x9a, 0x56, 0x25, 0xb2, 0x22, 0xc6, 0x69, 0x2d, 0x24, 0x07, 0x76, 0x54, 0xf1, 0x98, 0x36, 0xb8, 0xf1, 0x4d, 0x86, 0x22, 0xba, 0x14, 0xee, 0xac, 0xe2, 0x74, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_3265 = { .name = "ecdh_secp521r1_3265", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3265_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3265_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3265_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 782 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3266 for ECDH, tcId is 783 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3266_peerpubkey[] = { 0x01, 0xa0, 0x27, 0x19, 0x24, 0x4d, 0xf8, 0x07, 0x86, 0x47, 0x07, 0xfb, 0xc6, 0xc5, 0x28, 0x5d, 0xa7, 0x84, 0x30, 0x1d, 0xab, 0xff, 0xb8, 0x58, 0x53, 0xda, 0xf9, 0x46, 0xf8, 0xd7, 0x15, 0x98, 0xfa, 0x95, 0xf7, 0xc9, 0x0a, 0x3d, 0x5f, 0x06, 0xe4, 0x50, 0x51, 0x79, 0x9c, 0x16, 0xf9, 0xaf, 0x0a, 0xfe, 0x27, 0x5f, 0xf4, 0xf5, 0x1e, 0x83, 0xe1, 0xbf, 0xab, 0xc1, 0x81, 0x76, 0xf2, 0xbc, 0x4a, 0x74, 0x01, 0x54, 0xde, 0x99, 0xc7, 0x4d, 0xd2, 0x63, 0x45, 0x60, 0x34, 0xab, 0xdf, 0x5b, 0x2a, 0x17, 0x3e, 0x31, 0x84, 0x42, 0xd1, 0x32, 0x00, 0xf4, 0x09, 0x0a, 0xaa, 0x27, 0x14, 0x52, 0x4c, 0x43, 0xa8, 0x5e, 0xc5, 0xf6, 0x07, 0xd5, 0xf3, 0x55, 0x20, 0x5f, 0xef, 0x0f, 0x4a, 0xa3, 0xb4, 0x1b, 0x2f, 0xf7, 0x9e, 0xca, 0x36, 0x1f, 0xc2, 0x88, 0x78, 0xfd, 0x4e, 0x26, 0xbc, 0xc5, 0x7a, 0xc0, 0x14, 0xd8, }; static const unsigned char ecdh_secp521r1_3266_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3266_sharedsecret[] = { 0x01, 0x05, 0x4b, 0x61, 0x91, 0xcb, 0x25, 0x7e, 0x0f, 0x18, 0xd0, 0x9c, 0xf4, 0x54, 0xfc, 0xa4, 0xc4, 0x57, 0x16, 0xea, 0x00, 0xf1, 0x67, 0xb2, 0xfb, 0xd2, 0xd0, 0x28, 0xb6, 0x6c, 0x90, 0x3b, 0x5e, 0x75, 0x1a, 0x6c, 0xaa, 0xcc, 0xf4, 0xed, 0x18, 0xe2, 0x86, 0x35, 0xd8, 0x45, 0x4e, 0xd3, 0x81, 0x1e, 0x1c, 0x4b, 0x36, 0x38, 0xeb, 0x42, 0x0a, 0xd2, 0x1e, 0xa4, 0xfd, 0xbd, 0xba, 0xda, 0xe8, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_3266 = { .name = "ecdh_secp521r1_3266", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3266_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3266_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3266_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 783 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3267 for ECDH, tcId is 784 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3267_peerpubkey[] = { 0x01, 0x8a, 0x82, 0xcb, 0x60, 0x81, 0x2f, 0xd3, 0x6c, 0xcc, 0xb2, 0x9e, 0x47, 0x47, 0xd2, 0x05, 0x79, 0xac, 0x9a, 0xc6, 0xb5, 0xef, 0x64, 0x90, 0x32, 0x6b, 0x30, 0xc5, 0xf0, 0x77, 0xe9, 0xd7, 0x84, 0x1e, 0xd1, 0x89, 0xad, 0x17, 0x21, 0x40, 0x05, 0x5d, 0x7e, 0xe6, 0xb0, 0x15, 0xe0, 0x2b, 0x1e, 0xbb, 0x9f, 0xc1, 0x7d, 0x6a, 0xcd, 0x8b, 0xb4, 0xc0, 0x8d, 0x2d, 0xdb, 0x45, 0x41, 0xbb, 0x88, 0xf4, 0x00, 0x77, 0x50, 0xfe, 0x26, 0x40, 0xe5, 0x90, 0xf1, 0x54, 0x26, 0xd6, 0x4e, 0x23, 0x34, 0xcb, 0x2a, 0xd5, 0x97, 0x34, 0x0c, 0x44, 0x5a, 0x42, 0x37, 0x9f, 0xc1, 0x94, 0xef, 0x74, 0xd7, 0xe0, 0x6a, 0x22, 0x0a, 0xad, 0xb8, 0xe6, 0x9e, 0x36, 0x1b, 0x49, 0x60, 0xdd, 0xe7, 0x0f, 0x08, 0x5e, 0x92, 0x43, 0x19, 0xde, 0xa0, 0xdf, 0x1d, 0x4c, 0x12, 0xc4, 0x15, 0x19, 0x53, 0x57, 0x02, 0x67, 0x0e, 0xa8, }; static const unsigned char ecdh_secp521r1_3267_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3267_sharedsecret[] = { 0x00, 0x71, 0x13, 0xf5, 0xf3, 0xc5, 0x47, 0xa2, 0xbd, 0xee, 0x4a, 0xf7, 0x62, 0x5b, 0xf1, 0x61, 0xad, 0x98, 0x40, 0xe8, 0x3f, 0x2c, 0x3b, 0x87, 0x1b, 0x18, 0xbe, 0x0c, 0x9d, 0xb5, 0x68, 0x6c, 0xaf, 0xd3, 0x94, 0x8c, 0x83, 0x1a, 0x25, 0x1a, 0x46, 0x49, 0x99, 0x91, 0x93, 0x85, 0x26, 0x50, 0xe6, 0xdc, 0x8a, 0x9f, 0x82, 0xcc, 0x69, 0x6a, 0xd5, 0x7c, 0x71, 0x81, 0xac, 0x9a, 0x9e, 0xc2, 0x20, 0xec, }; static const wycheproof_ecdh_test ecdh_secp521r1_3267 = { .name = "ecdh_secp521r1_3267", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3267_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3267_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3267_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 784 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3268 for ECDH, tcId is 785 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3268_peerpubkey[] = { 0x00, 0x27, 0x3b, 0x9b, 0xf3, 0x81, 0x8c, 0x12, 0x9c, 0xc2, 0x72, 0x27, 0x0b, 0x5b, 0xb0, 0xb8, 0xb7, 0xe5, 0x57, 0xca, 0x8c, 0x54, 0x8a, 0x6f, 0x32, 0x05, 0xe3, 0x7b, 0x61, 0x19, 0x62, 0xb1, 0x4d, 0x9b, 0xe3, 0x17, 0xdc, 0x44, 0xfe, 0x82, 0xb2, 0xd2, 0x50, 0x49, 0x84, 0xdb, 0x98, 0xa9, 0x02, 0xe7, 0xea, 0x2a, 0x5a, 0xfe, 0x58, 0x4d, 0xc2, 0xb2, 0x99, 0x0e, 0x5a, 0x79, 0x0f, 0xd5, 0x5b, 0x19, 0x00, 0xb9, 0x21, 0x1f, 0xbf, 0xa2, 0x21, 0xe3, 0xc2, 0x4b, 0xc3, 0xde, 0x2f, 0x70, 0xe8, 0xf0, 0xe8, 0x4f, 0x4b, 0x05, 0xc2, 0xd2, 0xbc, 0x5e, 0x98, 0xda, 0x3e, 0x37, 0x9e, 0x80, 0xbe, 0xcd, 0x53, 0xd2, 0x21, 0x13, 0x6a, 0xd7, 0x40, 0xb2, 0x73, 0x2e, 0xcb, 0xc3, 0xc7, 0xe0, 0x6c, 0x07, 0xe0, 0x64, 0xd5, 0xde, 0x69, 0xe6, 0xa6, 0xd5, 0x67, 0x71, 0x3f, 0x64, 0x4e, 0x8a, 0xc2, 0x5a, 0x1d, 0x93, }; static const unsigned char ecdh_secp521r1_3268_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3268_sharedsecret[] = { 0x01, 0x91, 0x88, 0x47, 0x8c, 0x62, 0x34, 0x92, 0x99, 0xba, 0x2f, 0x12, 0xae, 0xc3, 0xc7, 0xef, 0x65, 0x85, 0x8f, 0x50, 0x39, 0x53, 0x80, 0xed, 0x0e, 0x7e, 0x70, 0xe7, 0x31, 0xd7, 0xc4, 0x78, 0x85, 0xcf, 0xb1, 0x83, 0xec, 0xca, 0x22, 0xfc, 0x71, 0xf0, 0xaf, 0xd0, 0x62, 0x12, 0x43, 0x75, 0x07, 0x86, 0x96, 0x9a, 0x00, 0x97, 0xb3, 0x6a, 0x52, 0x1e, 0xf4, 0x1d, 0xf9, 0xf0, 0x8f, 0x9a, 0x45, 0x58, }; static const wycheproof_ecdh_test ecdh_secp521r1_3268 = { .name = "ecdh_secp521r1_3268", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3268_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3268_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3268_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 785 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3269 for ECDH, tcId is 786 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3269_peerpubkey[] = { 0x00, 0xb9, 0xd4, 0x03, 0xdf, 0x5b, 0x1d, 0xac, 0xbe, 0xf2, 0xba, 0xec, 0xe8, 0x8a, 0x0b, 0x10, 0xfa, 0xbc, 0x5d, 0x72, 0x97, 0x53, 0xf4, 0xe9, 0x36, 0x01, 0x5a, 0xfb, 0x96, 0xb9, 0x29, 0x39, 0x2a, 0x9e, 0xeb, 0x03, 0x46, 0x09, 0x68, 0xed, 0x18, 0x86, 0x87, 0x14, 0xca, 0xac, 0x2d, 0xc1, 0x6c, 0x07, 0x24, 0x5a, 0x9e, 0xf4, 0x83, 0x2a, 0xc4, 0x18, 0xe3, 0x29, 0x0d, 0x1f, 0x8d, 0x0d, 0x10, 0x2e, 0x00, 0x84, 0x94, 0xf4, 0x44, 0x2d, 0x00, 0xfd, 0xca, 0x67, 0xd3, 0x1b, 0x3e, 0xb6, 0x56, 0xc8, 0xa0, 0x6b, 0xd5, 0x21, 0x04, 0x6c, 0x1a, 0xf0, 0x75, 0xb0, 0xed, 0x26, 0xc2, 0x6d, 0x5b, 0xdd, 0x8b, 0x80, 0x04, 0x93, 0xc6, 0x8c, 0xf4, 0x93, 0x51, 0x60, 0x27, 0xed, 0xe7, 0x71, 0xae, 0xe3, 0xed, 0x8b, 0x5f, 0xb9, 0x47, 0xe9, 0xd6, 0x00, 0xcc, 0x0a, 0x82, 0xc3, 0xf2, 0x07, 0x6d, 0x96, 0xaa, 0xc0, }; static const unsigned char ecdh_secp521r1_3269_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_3269_sharedsecret[] = { 0x01, 0xad, 0xf7, 0x24, 0xcf, 0x47, 0xae, 0x31, 0x97, 0x91, 0xa3, 0xdb, 0xe3, 0x36, 0xb2, 0xf5, 0x4a, 0x4d, 0x74, 0xbc, 0x28, 0xff, 0x8a, 0x23, 0xc2, 0xf3, 0x33, 0xe2, 0xa5, 0xa3, 0x6b, 0xbe, 0x73, 0xdd, 0x6c, 0x9d, 0xe7, 0x26, 0x16, 0xad, 0x5b, 0x77, 0x9e, 0x51, 0x63, 0x6d, 0x08, 0xf7, 0xce, 0xc5, 0x8f, 0xf1, 0x8b, 0x71, 0x27, 0xe3, 0x96, 0x85, 0x6b, 0xc1, 0x3d, 0x39, 0x09, 0x44, 0x10, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3269 = { .name = "ecdh_secp521r1_3269", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3269_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3269_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3269_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 786 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3270 for ECDH, tcId is 787 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3270_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3270_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp521r1_3270_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3270 = { .name = "ecdh_secp521r1_3270", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3270_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3270_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3270_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 787 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3271 for ECDH, tcId is 788 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3271_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3271_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3271_sharedsecret[] = { 0x00, 0x34, 0x7c, 0x51, 0xf5, 0x87, 0xc7, 0x26, 0x07, 0x0b, 0xde, 0xb9, 0x17, 0x3d, 0x0a, 0x54, 0x74, 0x27, 0xea, 0xd3, 0xf2, 0xc8, 0xde, 0x62, 0xd9, 0xec, 0xc3, 0x01, 0x32, 0x85, 0xf6, 0x45, 0xd2, 0x20, 0x93, 0x15, 0x20, 0xbc, 0xef, 0x85, 0xd0, 0x8c, 0xfb, 0x67, 0x86, 0x04, 0x57, 0x45, 0xfb, 0xfb, 0xfb, 0x19, 0x24, 0xc4, 0x4a, 0x89, 0xd0, 0x66, 0x76, 0x13, 0x1a, 0x96, 0x56, 0x77, 0x27, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_3271 = { .name = "ecdh_secp521r1_3271", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3271_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3271_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3271_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 788 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3272 for ECDH, tcId is 789 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3272_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3272_privkey[] = { 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3272_sharedsecret[] = { 0x01, 0xc4, 0x1d, 0xc4, 0x43, 0x7c, 0x2f, 0x2b, 0x94, 0xa9, 0x40, 0x71, 0x1b, 0x3a, 0x69, 0x17, 0x23, 0x39, 0x7a, 0x1f, 0x83, 0xd6, 0xbc, 0x0c, 0x67, 0xdd, 0xc7, 0xa6, 0x57, 0x16, 0x09, 0x25, 0xc7, 0xf8, 0x5b, 0xb4, 0xeb, 0x38, 0x42, 0xb6, 0x0b, 0x26, 0x10, 0xdd, 0xb7, 0xc0, 0xb8, 0x67, 0x62, 0x67, 0x71, 0x0e, 0x58, 0x35, 0x9a, 0x87, 0x50, 0x84, 0x3c, 0x6d, 0x8e, 0x25, 0xd4, 0x8d, 0x1c, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp521r1_3272 = { .name = "ecdh_secp521r1_3272", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3272_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3272_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3272_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 789 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3273 for ECDH, tcId is 790 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3273_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3273_privkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3273_sharedsecret[] = { 0x00, 0x6a, 0x23, 0x9c, 0xdb, 0x7a, 0x78, 0x38, 0x40, 0x65, 0x8d, 0x5f, 0x31, 0x4b, 0xfe, 0x5c, 0x51, 0xe8, 0x06, 0xa4, 0xbf, 0x12, 0x36, 0xf8, 0x42, 0x12, 0x65, 0xbc, 0xc5, 0x03, 0xc6, 0x73, 0xeb, 0x16, 0xc5, 0xc2, 0xb3, 0x8b, 0x57, 0x17, 0xfa, 0x04, 0xee, 0x7d, 0xbc, 0xde, 0xb1, 0x5c, 0x87, 0x17, 0x11, 0x50, 0x7a, 0xbb, 0x75, 0x57, 0xa8, 0xa8, 0xc7, 0xb3, 0x25, 0x01, 0x41, 0xe8, 0x54, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_3273 = { .name = "ecdh_secp521r1_3273", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3273_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3273_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3273_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 790 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3274 for ECDH, tcId is 791 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3274_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3274_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3274_sharedsecret[] = { 0x01, 0x12, 0xdb, 0xf9, 0x71, 0x3a, 0xad, 0xd4, 0x78, 0xe4, 0xf2, 0xeb, 0xcb, 0x05, 0x8f, 0x05, 0xb5, 0x12, 0xb1, 0x95, 0x9c, 0x7d, 0xa1, 0x99, 0x4f, 0x85, 0x1f, 0x37, 0x3c, 0xe8, 0xc3, 0x41, 0xd3, 0x9c, 0x68, 0x43, 0x37, 0x3f, 0x6f, 0xe5, 0x59, 0x90, 0x59, 0x53, 0xe1, 0x14, 0x76, 0x40, 0x15, 0x94, 0x37, 0x95, 0x3c, 0x57, 0x19, 0x61, 0xc0, 0x9b, 0xad, 0x15, 0x7a, 0x8e, 0x1a, 0x5b, 0xf4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_3274 = { .name = "ecdh_secp521r1_3274", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3274_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3274_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3274_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 791 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3275 for ECDH, tcId is 792 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3275_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3275_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xad, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_3275_sharedsecret[] = { 0x00, 0x3e, 0xca, 0x22, 0x10, 0xc8, 0x62, 0x31, 0x05, 0x08, 0x5a, 0xa2, 0x84, 0xd1, 0x19, 0xf3, 0xd7, 0x16, 0x73, 0x05, 0x95, 0xc6, 0x29, 0x1a, 0xa8, 0x9b, 0xf3, 0x2a, 0x95, 0xe8, 0xa5, 0xfd, 0xc6, 0x4f, 0x3d, 0x76, 0xe9, 0x24, 0x94, 0xa4, 0x3a, 0x9d, 0xce, 0xd1, 0x2d, 0x05, 0xb6, 0xdc, 0xa4, 0xff, 0xe6, 0x49, 0xb3, 0x2a, 0xc1, 0x2c, 0xb0, 0x20, 0x2e, 0x70, 0x2d, 0xc8, 0x3a, 0x2c, 0xb2, 0x77, }; static const wycheproof_ecdh_test ecdh_secp521r1_3275 = { .name = "ecdh_secp521r1_3275", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3275_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3275_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3275_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 792 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3276 for ECDH, tcId is 793 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3276_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3276_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x5f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_3276_sharedsecret[] = { 0x01, 0xc4, 0xca, 0xe9, 0xfb, 0xfd, 0xd4, 0x5d, 0xe5, 0x1d, 0x85, 0x25, 0xe8, 0x44, 0x7a, 0x75, 0x53, 0xc3, 0x5c, 0xf3, 0x58, 0xf1, 0x34, 0x6f, 0x1d, 0x79, 0x66, 0x68, 0x87, 0xbb, 0x74, 0x9a, 0x3b, 0xa0, 0xde, 0x62, 0xe1, 0x86, 0x6b, 0x47, 0xa4, 0x47, 0xd5, 0x3b, 0x6f, 0x1c, 0xa5, 0xa3, 0x3e, 0xc9, 0x45, 0x07, 0xe2, 0xcf, 0xb6, 0x55, 0x44, 0xf5, 0xa1, 0x19, 0x5f, 0xc6, 0xb4, 0xdc, 0x58, 0x10, }; static const wycheproof_ecdh_test ecdh_secp521r1_3276 = { .name = "ecdh_secp521r1_3276", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3276_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3276_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3276_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 793 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3277 for ECDH, tcId is 794 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3277_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3277_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x67, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_3277_sharedsecret[] = { 0x00, 0x80, 0x73, 0xb4, 0x79, 0x6e, 0x74, 0x8f, 0x3d, 0x0d, 0xe5, 0xe8, 0x5b, 0x22, 0xae, 0xd4, 0x63, 0xf1, 0xa6, 0xae, 0xcd, 0xb3, 0x36, 0xbc, 0x28, 0x7b, 0x50, 0xd1, 0x39, 0xe3, 0x59, 0x1e, 0xf5, 0xf8, 0x6b, 0x78, 0xc3, 0xf6, 0x05, 0x14, 0x67, 0x75, 0x5f, 0x05, 0x9f, 0x29, 0x5d, 0x75, 0x80, 0x75, 0x34, 0x7d, 0x65, 0x7a, 0xaa, 0xe0, 0x23, 0x83, 0x83, 0x8b, 0xb9, 0x60, 0x71, 0xea, 0xcb, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp521r1_3277 = { .name = "ecdh_secp521r1_3277", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3277_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3277_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3277_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 794 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3278 for ECDH, tcId is 795 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3278_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3278_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1d, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_3278_sharedsecret[] = { 0x01, 0xf1, 0x1f, 0xf8, 0x98, 0x37, 0x92, 0xd4, 0xa7, 0x90, 0xd0, 0xde, 0x4b, 0x56, 0xd0, 0x78, 0xb9, 0x03, 0x3a, 0xd6, 0x31, 0x8a, 0x44, 0x0e, 0x81, 0x19, 0x34, 0x29, 0x37, 0xcc, 0x48, 0xa3, 0x93, 0x75, 0x15, 0x0a, 0xb2, 0xcf, 0x98, 0x27, 0x3b, 0x0f, 0xe3, 0x5d, 0x5a, 0x3a, 0xf5, 0xd8, 0x43, 0x22, 0xa6, 0x85, 0xe8, 0x9f, 0x2c, 0xb3, 0x78, 0xa9, 0x9b, 0x9b, 0x7b, 0xac, 0x87, 0xe4, 0x49, 0x52, }; static const wycheproof_ecdh_test ecdh_secp521r1_3278 = { .name = "ecdh_secp521r1_3278", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3278_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3278_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3278_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 795 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3279 for ECDH, tcId is 796 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3279_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3279_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x1b, }; static const unsigned char ecdh_secp521r1_3279_sharedsecret[] = { 0x00, 0x28, 0x6c, 0xef, 0xaa, 0xf3, 0x8c, 0xa4, 0xc6, 0x65, 0x7e, 0xb9, 0xb1, 0x87, 0xd8, 0x61, 0x4d, 0x51, 0x77, 0x5f, 0xd7, 0x1c, 0x1a, 0x79, 0xb4, 0xc0, 0xef, 0x1a, 0x0d, 0x4c, 0xe7, 0x2b, 0x6f, 0x5b, 0x2b, 0xc8, 0x54, 0xa4, 0xe7, 0x82, 0x83, 0x53, 0x09, 0x42, 0xa3, 0xf4, 0xfd, 0x2a, 0x85, 0x86, 0xd5, 0xea, 0x51, 0x51, 0x3c, 0x89, 0xd3, 0xd2, 0x9d, 0xe5, 0xde, 0x06, 0x32, 0x1e, 0x11, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3279 = { .name = "ecdh_secp521r1_3279", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3279_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3279_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3279_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 796 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3280 for ECDH, tcId is 797 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3280_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3280_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x9b, }; static const unsigned char ecdh_secp521r1_3280_sharedsecret[] = { 0x01, 0x47, 0x90, 0xde, 0x14, 0xc4, 0x81, 0xf1, 0x33, 0x6f, 0xcb, 0x7d, 0x33, 0xa8, 0xbf, 0x8e, 0x23, 0xeb, 0x59, 0x4c, 0xc4, 0x86, 0x08, 0xe9, 0xed, 0xfe, 0x0e, 0x32, 0x6e, 0x10, 0x6b, 0x67, 0xe7, 0xea, 0xa3, 0xf0, 0x4e, 0xc9, 0x98, 0x55, 0x99, 0x17, 0x8f, 0x63, 0x2a, 0x5e, 0xe6, 0x41, 0x9e, 0x11, 0x21, 0x70, 0x60, 0xe9, 0xfc, 0xd5, 0x95, 0x8a, 0x43, 0x88, 0x2b, 0xf8, 0xcd, 0x3b, 0xe6, 0xba, }; static const wycheproof_ecdh_test ecdh_secp521r1_3280 = { .name = "ecdh_secp521r1_3280", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3280_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3280_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3280_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 797 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3281 for ECDH, tcId is 798 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3281_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3281_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xdb, }; static const unsigned char ecdh_secp521r1_3281_sharedsecret[] = { 0x01, 0xae, 0x77, 0x5d, 0xbc, 0x40, 0x96, 0xa3, 0xae, 0xa7, 0x97, 0x7b, 0x1a, 0x0a, 0xf4, 0xb2, 0x83, 0x0e, 0xcf, 0x9c, 0xa9, 0x27, 0xa6, 0x24, 0x7f, 0xba, 0x4c, 0xcc, 0xb4, 0x6b, 0x3f, 0x71, 0xd0, 0xe7, 0xab, 0xb8, 0xdd, 0xa7, 0x2d, 0x1c, 0x1e, 0xe7, 0xbb, 0x5b, 0x87, 0x5b, 0x47, 0x73, 0xcc, 0x8d, 0xf4, 0x0f, 0x73, 0x28, 0x19, 0xc4, 0x14, 0x7d, 0xa3, 0x30, 0x77, 0x5d, 0x17, 0x42, 0xea, 0x35, }; static const wycheproof_ecdh_test ecdh_secp521r1_3281 = { .name = "ecdh_secp521r1_3281", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3281_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3281_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3281_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 798 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3282 for ECDH, tcId is 799 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3282_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3282_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xfb, }; static const unsigned char ecdh_secp521r1_3282_sharedsecret[] = { 0x01, 0x97, 0x9f, 0xb0, 0x5e, 0x06, 0x8a, 0x12, 0xa3, 0xf2, 0x0c, 0xfd, 0xfb, 0x9e, 0xae, 0xe9, 0xf2, 0x2b, 0x35, 0x6e, 0xdc, 0xc7, 0x65, 0x53, 0x83, 0xed, 0x38, 0x12, 0x4b, 0x86, 0x81, 0x4f, 0x86, 0xa6, 0xf2, 0x21, 0x6a, 0x34, 0xf3, 0xfc, 0x22, 0x99, 0xd4, 0x03, 0xee, 0x42, 0x40, 0x8f, 0x95, 0xd0, 0x8c, 0x5c, 0x6c, 0xd1, 0x1d, 0xb7, 0x2c, 0xbf, 0x29, 0x9a, 0x4a, 0x3c, 0x25, 0x45, 0xbe, 0x25, }; static const wycheproof_ecdh_test ecdh_secp521r1_3282 = { .name = "ecdh_secp521r1_3282", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3282_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3282_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3282_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 799 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3283 for ECDH, tcId is 800 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3283_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3283_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x03, }; static const unsigned char ecdh_secp521r1_3283_sharedsecret[] = { 0x01, 0x97, 0xeb, 0xe2, 0x67, 0x98, 0xbf, 0x67, 0xf0, 0x6f, 0xf0, 0x28, 0x27, 0x73, 0xaf, 0x75, 0x11, 0x55, 0x31, 0xf4, 0x1d, 0x94, 0xc0, 0x93, 0xd8, 0x74, 0x81, 0xb7, 0x6b, 0xef, 0x70, 0x7b, 0xc2, 0x22, 0xf2, 0xd6, 0x67, 0x2f, 0x84, 0xa0, 0x0f, 0xa2, 0x0c, 0x5e, 0xd2, 0x70, 0x27, 0xab, 0x40, 0x06, 0xb6, 0x8d, 0x93, 0xee, 0x21, 0x51, 0x01, 0x6c, 0x9d, 0xdb, 0xe0, 0x14, 0x34, 0x62, 0x72, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_3283 = { .name = "ecdh_secp521r1_3283", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3283_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3283_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3283_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 800 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3284 for ECDH, tcId is 801 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3284_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3284_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const unsigned char ecdh_secp521r1_3284_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_3284 = { .name = "ecdh_secp521r1_3284", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3284_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3284_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3284_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 801 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3285 for ECDH, tcId is 802 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3285_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_3285_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, }; static const unsigned char ecdh_secp521r1_3285_sharedsecret[] = { 0x01, 0xc1, 0x68, 0x31, 0x4c, 0xdc, 0x85, 0x75, 0x7a, 0xde, 0x34, 0xa5, 0x2a, 0x9e, 0x53, 0x79, 0xff, 0xa5, 0x96, 0x8f, 0x08, 0x4b, 0x7e, 0x40, 0x49, 0x39, 0xa8, 0x03, 0x3a, 0x0f, 0xc6, 0x98, 0xe2, 0x62, 0x11, 0x75, 0x4b, 0x9b, 0x2c, 0x04, 0xcf, 0x8a, 0x14, 0x20, 0xab, 0xe6, 0xe9, 0x86, 0xef, 0x1a, 0x23, 0x8b, 0xbb, 0x91, 0xdd, 0x40, 0x2b, 0x72, 0xe0, 0xed, 0x50, 0xa8, 0x76, 0xf1, 0xa8, 0x3e, }; static const wycheproof_ecdh_test ecdh_secp521r1_3285 = { .name = "ecdh_secp521r1_3285", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3285_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3285_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3285_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 802 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3286 for ECDH, tcId is 803 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3286_peerpubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdh_secp521r1_3286_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xf7, }; static const unsigned char ecdh_secp521r1_3286_sharedsecret[] = { 0x01, 0xbc, 0x33, 0x42, 0x5e, 0x72, 0xa1, 0x27, 0x79, 0xea, 0xcb, 0x2e, 0xdc, 0xc5, 0xb6, 0x3d, 0x12, 0x81, 0xf7, 0xe8, 0x6d, 0xbc, 0x7b, 0xf9, 0x9a, 0x7a, 0xbd, 0x0c, 0xfe, 0x36, 0x7d, 0xe4, 0x66, 0x6d, 0x6e, 0xdb, 0xb8, 0x52, 0x5b, 0xff, 0xe5, 0x22, 0x2f, 0x07, 0x02, 0xc3, 0x09, 0x6d, 0xec, 0x08, 0x84, 0xce, 0x57, 0x2f, 0x5a, 0x15, 0xc4, 0x23, 0xfd, 0xf4, 0x4d, 0x01, 0xdd, 0x99, 0xc6, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_3286 = { .name = "ecdh_secp521r1_3286", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3286_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3286_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3286_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "CVE-2017-10176: Issue with elliptic curve addition, tcId is 803 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3287 for ECDH, tcId is 804 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3287_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3287_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3287 = { .name = "ecdh_secp521r1_3287", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3287_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3287_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 804 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3288 for ECDH, tcId is 805 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3288_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_3288_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3288 = { .name = "ecdh_secp521r1_3288", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3288_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3288_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 805 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3289 for ECDH, tcId is 806 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3289_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_3289_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3289 = { .name = "ecdh_secp521r1_3289", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3289_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3289_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 806 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3290 for ECDH, tcId is 807 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3290_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3290_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3290 = { .name = "ecdh_secp521r1_3290", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3290_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3290_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 807 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3291 for ECDH, tcId is 808 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3291_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3291_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3291 = { .name = "ecdh_secp521r1_3291", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3291_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3291_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 808 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3292 for ECDH, tcId is 809 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3292_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_3292_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3292 = { .name = "ecdh_secp521r1_3292", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3292_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3292_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 809 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3293 for ECDH, tcId is 810 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3293_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_3293_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3293 = { .name = "ecdh_secp521r1_3293", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3293_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3293_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 810 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3294 for ECDH, tcId is 811 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3294_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3294_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3294 = { .name = "ecdh_secp521r1_3294", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3294_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3294_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 811 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3295 for ECDH, tcId is 812 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3295_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3295_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3295 = { .name = "ecdh_secp521r1_3295", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3295_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3295_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 812 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3296 for ECDH, tcId is 813 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3296_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_3296_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3296 = { .name = "ecdh_secp521r1_3296", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3296_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3296_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 813 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3297 for ECDH, tcId is 814 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3297_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_3297_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3297 = { .name = "ecdh_secp521r1_3297", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3297_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3297_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 814 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3298 for ECDH, tcId is 815 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3298_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3298_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3298 = { .name = "ecdh_secp521r1_3298", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3298_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3298_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 815 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3299 for ECDH, tcId is 816 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3299_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3299_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3299 = { .name = "ecdh_secp521r1_3299", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3299_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3299_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 816 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3300 for ECDH, tcId is 817 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3300_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_3300_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3300 = { .name = "ecdh_secp521r1_3300", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3300_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3300_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 817 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3301 for ECDH, tcId is 818 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3301_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_3301_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3301 = { .name = "ecdh_secp521r1_3301", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3301_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3301_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 818 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3302 for ECDH, tcId is 819 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3302_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_3302_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_3302 = { .name = "ecdh_secp521r1_3302", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3302_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3302_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 819 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3303 for ECDH, tcId is 821 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3303_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xe1, }; static const unsigned char ecdh_secp521r1_3303_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3303 = { .name = "ecdh_secp521r1_3303", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3303_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3303_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 821 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3304 for ECDH, tcId is 822 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3304_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_3304_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_3304 = { .name = "ecdh_secp521r1_3304", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3304_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3304_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 822 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3305 for ECDH, tcId is 825 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3305_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3305_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3305_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3305 = { .name = "ecdh_secp521r1_3305", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3305_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3305_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3305_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "order = 1, tcId is 825 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3306 for ECDH, tcId is 826 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3306_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3306_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3306_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3306 = { .name = "ecdh_secp521r1_3306", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3306_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3306_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3306_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "order = 1598335257761788022467377781654101148543282249044465229239888363328190330275719844327554513312228302828260696579553960150541916632196023208175974174, tcId is 826 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3307 for ECDH, tcId is 827 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3307_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3307_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3307_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3307 = { .name = "ecdh_secp521r1_3307", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3307_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3307_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3307_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "generator = (0,0), tcId is 827 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3308 for ECDH, tcId is 828 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3308_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3308_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3308_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3308 = { .name = "ecdh_secp521r1_3308", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3308_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3308_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3308_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "generator not on curve, tcId is 828 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3309 for ECDH, tcId is 831 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3309_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3309_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3309_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3309 = { .name = "ecdh_secp521r1_3309", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3309_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3309_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3309_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "cofactor = 2, tcId is 831 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3310 for ECDH, tcId is 833 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3310_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3310_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3310_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3310 = { .name = "ecdh_secp521r1_3310", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3310_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3310_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3310_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "cofactor = None, tcId is 833 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3311 for ECDH, tcId is 838 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3311_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xdf, }; static const unsigned char ecdh_secp521r1_3311_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const unsigned char ecdh_secp521r1_3311_sharedsecret[] = { 0x00, 0xfb, 0x85, 0x42, 0x48, 0x7c, 0xbd, 0x45, 0xe6, 0x09, 0x63, 0x2f, 0x68, 0x1d, 0xb6, 0xb4, 0x8f, 0xda, 0xbe, 0xd9, 0xb9, 0x7a, 0x24, 0x67, 0xa3, 0x42, 0x05, 0xea, 0xda, 0xda, 0xd9, 0xde, 0xdb, 0x54, 0xa2, 0xa6, 0x47, 0xd2, 0x3d, 0xca, 0x68, 0xe9, 0x29, 0xa2, 0x04, 0x18, 0x88, 0xb0, 0x91, 0xf4, 0xbb, 0x40, 0x23, 0xa0, 0x51, 0x7b, 0xe6, 0x69, 0xa6, 0xc9, 0xf9, 0xc8, 0x47, 0xef, 0x89, 0xde, }; static const wycheproof_ecdh_test ecdh_secp521r1_3311 = { .name = "ecdh_secp521r1_3311", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3311_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3311_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_3311_sharedsecret, .sharedsecretlen = 66, .result = 0, .comment = "a = 0, tcId is 838 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3312 for ECDH, tcId is 855 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3312_peerpubkey[] = { 0x00, 0x42, 0x9c, 0xb4, 0x31, 0xc1, 0x8f, 0x5f, 0x4e, 0x4e, 0x50, 0x2f, 0x74, 0x21, 0x4e, 0x6a, 0xc5, 0xec, 0x2c, 0x3f, 0x86, 0xb8, 0x30, 0xba, 0xc2, 0x4d, 0xe9, 0x5f, 0xea, 0xe1, 0x42, 0xca, 0x7d, 0x9a, 0xa8, 0xaa, 0x5b, 0x34, 0xf5, 0x5a, 0xf4, 0xb2, 0x84, 0x8f, 0x2e, 0x6b, 0xa6, 0xdf, 0x4c, 0x3e, 0xcd, 0x40, 0x1a, 0x1d, 0x7b, 0x2a, 0x82, 0x87, 0xa3, 0x32, 0xb2, 0x02, 0x19, 0x6f, 0xad, 0xbb, }; static const unsigned char ecdh_secp521r1_3312_privkey[] = { 0x01, 0xc1, 0xfb, 0x2c, 0xac, 0x90, 0x87, 0xa3, 0x39, 0x78, 0x14, 0xb1, 0x98, 0xa8, 0x0e, 0x2e, 0xa5, 0xb4, 0x37, 0xaa, 0xc1, 0xb4, 0x1e, 0x8a, 0x2b, 0xd8, 0xfe, 0xf8, 0x70, 0x0e, 0x48, 0x12, 0xaa, 0x81, 0x73, 0x20, 0xe6, 0xe1, 0xe3, 0x86, 0x5b, 0xd2, 0xcf, 0x75, 0xe4, 0x3a, 0x78, 0xbe, 0x5c, 0x27, 0xff, 0x1c, 0x4b, 0x5f, 0x50, 0x19, 0x33, 0x3c, 0xb3, 0x7d, 0x0c, 0x9c, 0x4f, 0xf3, 0xec, 0x61, }; static const wycheproof_ecdh_test ecdh_secp521r1_3312 = { .name = "ecdh_secp521r1_3312", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3312_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3312_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 855 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3313 for ECDH, tcId is 856 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3313_peerpubkey[] = { 0x01, 0x08, 0xcb, 0xf3, 0xc9, 0xbf, 0x8e, 0x42, 0x13, 0x5d, 0x87, 0x12, 0x75, 0x56, 0x83, 0x10, 0x76, 0xd8, 0x4d, 0x5e, 0x54, 0x9e, 0x64, 0x5a, 0xfd, 0xa8, 0xa0, 0x99, 0x24, 0x92, 0x31, 0xb5, 0x9b, 0x6c, 0x50, 0x8d, 0xee, 0x4e, 0x91, 0xc9, 0xa5, 0x43, 0xe9, 0x0e, 0xbc, 0x82, 0x61, 0x3f, 0x86, 0xcb, 0x12, 0x90, 0xe2, 0x91, 0x02, 0xa0, 0xf2, 0xfd, 0xeb, 0x57, 0xbf, 0x41, 0x93, 0xfb, 0x46, 0x39, }; static const unsigned char ecdh_secp521r1_3313_privkey[] = { 0x00, 0x66, 0x19, 0x64, 0x41, 0x55, 0xc4, 0x49, 0x75, 0x8f, 0x65, 0xe2, 0xdf, 0xe7, 0xba, 0x89, 0xde, 0xe1, 0xe0, 0x90, 0xc1, 0xd6, 0x8b, 0x63, 0x42, 0xf4, 0x3c, 0xb1, 0xac, 0x00, 0x00, 0x90, 0xa7, 0xf0, 0x40, 0x81, 0x38, 0xc1, 0xde, 0x21, 0x79, 0x90, 0xbb, 0x01, 0x5c, 0xd1, 0xd9, 0x5f, 0x1d, 0x88, 0x4c, 0xf6, 0x59, 0xf7, 0x32, 0x4f, 0x2f, 0xe2, 0x1e, 0xeb, 0xa6, 0x3e, 0xa9, 0x88, 0xaa, 0xcd, }; static const wycheproof_ecdh_test ecdh_secp521r1_3313 = { .name = "ecdh_secp521r1_3313", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3313_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3313_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 856 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3314 for ECDH, tcId is 857 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3314_peerpubkey[] = { 0x01, 0x1f, 0x2d, 0xca, 0x6b, 0x68, 0x6e, 0x21, 0x41, 0xc1, 0x18, 0x22, 0xe2, 0xd5, 0x43, 0x92, 0x61, 0x58, 0x3c, 0xe9, 0x8c, 0xd6, 0xc4, 0x04, 0x1c, 0x6d, 0x1b, 0xe9, 0xe1, 0x7d, 0xee, 0x33, 0xea, 0x4a, 0x65, 0xc3, 0xe8, 0xcc, 0xa6, 0xde, 0x50, 0xa3, 0x0a, 0x39, 0xc7, 0x88, 0xa5, 0x85, 0xf1, 0x18, 0x8b, 0xef, 0x06, 0x80, 0xa9, 0xc0, 0x26, 0x4b, 0x3c, 0x8d, 0xcf, 0x49, 0x4d, 0x0e, 0xb9, 0x48, }; static const unsigned char ecdh_secp521r1_3314_privkey[] = { 0x00, 0xa2, 0x57, 0xd9, 0x7a, 0xa4, 0xe5, 0x19, 0x5e, 0x29, 0x19, 0xc1, 0x47, 0xc1, 0x63, 0x9b, 0xb0, 0xda, 0x0c, 0xce, 0x47, 0x9a, 0x03, 0x64, 0x89, 0x00, 0x6b, 0x7b, 0x8e, 0x7e, 0x88, 0x50, 0x96, 0x06, 0x6e, 0x5a, 0xdc, 0x8f, 0xe7, 0xc4, 0x59, 0x40, 0xc5, 0xa6, 0xb9, 0x4d, 0x50, 0x65, 0xb9, 0x66, 0xa4, 0x5f, 0x09, 0x9a, 0x0c, 0xec, 0xfe, 0x9c, 0xce, 0x1b, 0x3e, 0x99, 0xdc, 0xa4, 0x79, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp521r1_3314 = { .name = "ecdh_secp521r1_3314", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3314_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3314_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 857 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3315 for ECDH, tcId is 858 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3315_peerpubkey[] = { 0x01, 0x1f, 0x2d, 0xca, 0x6b, 0x68, 0x6e, 0x21, 0x41, 0xc1, 0x18, 0x22, 0xe2, 0xd5, 0x43, 0x92, 0x61, 0x58, 0x3c, 0xe9, 0x8c, 0xd6, 0xc4, 0x04, 0x1c, 0x6d, 0x1b, 0xe9, 0xe1, 0x7d, 0xee, 0x33, 0xea, 0x4a, 0x65, 0xc3, 0xe8, 0xcc, 0xa6, 0xde, 0x50, 0xa3, 0x0a, 0x39, 0xc7, 0x88, 0xa5, 0x85, 0xf1, 0x18, 0x8b, 0xef, 0x06, 0x80, 0xa9, 0xc0, 0x26, 0x4b, 0x3c, 0x8d, 0xcf, 0x49, 0x4d, 0x0e, 0xb9, 0x48, }; static const unsigned char ecdh_secp521r1_3315_privkey[] = { 0x00, 0xa2, 0x57, 0xd9, 0x7a, 0xa4, 0xe5, 0x19, 0x5e, 0x29, 0x19, 0xc1, 0x47, 0xc1, 0x63, 0x9b, 0xb0, 0xda, 0x0c, 0xce, 0x47, 0x9a, 0x03, 0x64, 0x89, 0x00, 0x6b, 0x7b, 0x8e, 0x7e, 0x88, 0x50, 0x96, 0x06, 0x6e, 0x5a, 0xdc, 0x8f, 0xe7, 0xc4, 0x59, 0x40, 0xc5, 0xa6, 0xb9, 0x4d, 0x50, 0x65, 0xb9, 0x66, 0xa4, 0x5f, 0x09, 0x9a, 0x0c, 0xec, 0xfe, 0x9c, 0xce, 0x1b, 0x3e, 0x99, 0xdc, 0xa4, 0x79, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp521r1_3315 = { .name = "ecdh_secp521r1_3315", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3315_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3315_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 858 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3316 for ECDH, tcId is 859 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3316_peerpubkey[] = { 0x01, 0x08, 0xcb, 0xf3, 0xc9, 0xbf, 0x8e, 0x42, 0x13, 0x5d, 0x87, 0x12, 0x75, 0x56, 0x83, 0x10, 0x76, 0xd8, 0x4d, 0x5e, 0x54, 0x9e, 0x64, 0x5a, 0xfd, 0xa8, 0xa0, 0x99, 0x24, 0x92, 0x31, 0xb5, 0x9b, 0x6c, 0x50, 0x8d, 0xee, 0x4e, 0x91, 0xc9, 0xa5, 0x43, 0xe9, 0x0e, 0xbc, 0x82, 0x61, 0x3f, 0x86, 0xcb, 0x12, 0x90, 0xe2, 0x91, 0x02, 0xa0, 0xf2, 0xfd, 0xeb, 0x57, 0xbf, 0x41, 0x93, 0xfb, 0x46, 0x39, }; static const unsigned char ecdh_secp521r1_3316_privkey[] = { 0x00, 0x66, 0x19, 0x64, 0x41, 0x55, 0xc4, 0x49, 0x75, 0x8f, 0x65, 0xe2, 0xdf, 0xe7, 0xba, 0x89, 0xde, 0xe1, 0xe0, 0x90, 0xc1, 0xd6, 0x8b, 0x63, 0x42, 0xf4, 0x3c, 0xb1, 0xac, 0x00, 0x00, 0x90, 0xa7, 0xf0, 0x40, 0x81, 0x38, 0xc1, 0xde, 0x21, 0x79, 0x90, 0xbb, 0x01, 0x5c, 0xd1, 0xd9, 0x5f, 0x1d, 0x88, 0x4c, 0xf6, 0x59, 0xf7, 0x32, 0x4f, 0x2f, 0xe2, 0x1e, 0xeb, 0xa6, 0x3e, 0xa9, 0x88, 0xaa, 0xcc, }; static const wycheproof_ecdh_test ecdh_secp521r1_3316 = { .name = "ecdh_secp521r1_3316", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3316_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3316_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 859 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3317 for ECDH, tcId is 860 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3317_peerpubkey[] = { 0x00, 0x09, 0xcc, 0x73, 0x14, 0x1c, 0xf1, 0x84, 0x3d, 0x2b, 0x2c, 0x95, 0xdc, 0x5c, 0xbc, 0x4d, 0x61, 0x5c, 0x6d, 0xa4, 0x81, 0x4c, 0x1c, 0x72, 0x08, 0x61, 0x5d, 0x8e, 0x78, 0xc7, 0xa8, 0x66, 0x6a, 0xba, 0x18, 0x52, 0xfa, 0xaa, 0x45, 0xa4, 0x5d, 0x32, 0xbd, 0x0f, 0xde, 0x6e, 0xa7, 0x8f, 0x26, 0x2a, 0x96, 0xbf, 0x1e, 0x02, 0x94, 0x9c, 0xea, 0x48, 0xc3, 0x3c, 0x69, 0x51, 0x03, 0x68, 0x30, 0x48, }; static const unsigned char ecdh_secp521r1_3317_privkey[] = { 0x00, 0x2a, 0x35, 0x25, 0x87, 0x87, 0xf9, 0x1a, 0xd0, 0xbd, 0x34, 0x32, 0xc3, 0x02, 0x2e, 0x4d, 0x3e, 0xd3, 0x49, 0xc8, 0x76, 0x8a, 0x7e, 0x7c, 0xaa, 0x18, 0x36, 0x02, 0x2f, 0xc0, 0xc8, 0x9a, 0x90, 0x73, 0xf6, 0xce, 0x14, 0xd0, 0x99, 0x0d, 0x5b, 0x7b, 0xb4, 0x13, 0x06, 0x1c, 0x71, 0x60, 0xe7, 0xbd, 0x56, 0x6a, 0x5c, 0x89, 0xf1, 0x49, 0x01, 0xb2, 0xcc, 0x19, 0xf1, 0xad, 0x53, 0x1f, 0x41, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_3317 = { .name = "ecdh_secp521r1_3317", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3317_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3317_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 860 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3318 for ECDH, tcId is 861 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3318_peerpubkey[] = { 0x00, 0x47, 0xb9, 0xcf, 0x28, 0xe0, 0x4b, 0x38, 0x79, 0x68, 0x58, 0x54, 0x5d, 0x60, 0xd6, 0x13, 0x3f, 0xbd, 0xc2, 0x0e, 0xde, 0x08, 0x6e, 0x5d, 0x95, 0x11, 0x1c, 0x98, 0x2b, 0x8c, 0x27, 0x66, 0x28, 0x23, 0x5e, 0x53, 0x6c, 0x07, 0x56, 0x37, 0xa9, 0x7c, 0x0a, 0x6c, 0x30, 0xd0, 0x2b, 0x83, 0xb1, 0x9e, 0x57, 0x82, 0x03, 0x47, 0x3e, 0xea, 0x16, 0xdf, 0xde, 0xae, 0xcc, 0xb1, 0xdc, 0x0d, 0x9b, 0x19, }; static const unsigned char ecdh_secp521r1_3318_privkey[] = { 0x01, 0xaf, 0xe5, 0xc7, 0x7a, 0x62, 0x61, 0x61, 0xfb, 0x2c, 0x25, 0x96, 0x4c, 0x78, 0x95, 0xb9, 0xff, 0xf7, 0x87, 0x09, 0x9d, 0xb8, 0x3f, 0x07, 0x7f, 0x05, 0xa4, 0xbf, 0xa3, 0x20, 0xfb, 0x61, 0xf9, 0x31, 0x5b, 0xb4, 0x4d, 0x3f, 0xb9, 0xdd, 0x72, 0x22, 0x5d, 0x9d, 0x99, 0x3a, 0x18, 0xdf, 0x82, 0xac, 0x53, 0xfb, 0x4a, 0x5f, 0x86, 0xb2, 0x3c, 0xb6, 0x50, 0xe5, 0xe4, 0x77, 0x80, 0x66, 0xf6, 0x77, }; static const wycheproof_ecdh_test ecdh_secp521r1_3318 = { .name = "ecdh_secp521r1_3318", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3318_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3318_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 861 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3319 for ECDH, tcId is 862 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3319_peerpubkey[] = { 0x00, 0xc1, 0x84, 0x10, 0xf5, 0x72, 0x7e, 0xe0, 0x10, 0x1a, 0x52, 0xef, 0x95, 0xc0, 0xac, 0x45, 0x5c, 0xbc, 0x65, 0xbf, 0x99, 0x67, 0xf0, 0xa2, 0xc4, 0x19, 0xaa, 0x0a, 0x29, 0x1c, 0xab, 0xad, 0x56, 0x9f, 0x23, 0x37, 0xe1, 0x02, 0xd0, 0xa9, 0x12, 0x8f, 0x42, 0x12, 0xdb, 0xf9, 0xfa, 0x9e, 0x5a, 0x8f, 0x14, 0xca, 0x7f, 0x28, 0xe8, 0x29, 0x77, 0x28, 0x1f, 0xac, 0xdd, 0x9c, 0xa7, 0xa9, 0x2c, 0x78, }; static const unsigned char ecdh_secp521r1_3319_privkey[] = { 0x00, 0x24, 0xae, 0x70, 0x9e, 0x16, 0x44, 0xe3, 0x08, 0x7b, 0x52, 0x47, 0x0c, 0x56, 0x52, 0x68, 0xbe, 0xcb, 0xdb, 0xf9, 0x7d, 0xe5, 0x99, 0x16, 0x76, 0x35, 0x07, 0xd1, 0x09, 0xc2, 0xe5, 0xb7, 0xc2, 0x17, 0x27, 0xc6, 0x4e, 0x9b, 0x56, 0x0a, 0xa2, 0x48, 0xd7, 0xbc, 0x9f, 0xe0, 0xac, 0x95, 0x72, 0x0d, 0x50, 0x72, 0x63, 0xb7, 0xb2, 0x85, 0x9b, 0x05, 0x6e, 0xa1, 0x65, 0x30, 0x1c, 0xd5, 0x99, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_3319 = { .name = "ecdh_secp521r1_3319", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3319_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3319_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 862 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3320 for ECDH, tcId is 863 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3320_peerpubkey[] = { 0x00, 0xc1, 0x84, 0x10, 0xf5, 0x72, 0x7e, 0xe0, 0x10, 0x1a, 0x52, 0xef, 0x95, 0xc0, 0xac, 0x45, 0x5c, 0xbc, 0x65, 0xbf, 0x99, 0x67, 0xf0, 0xa2, 0xc4, 0x19, 0xaa, 0x0a, 0x29, 0x1c, 0xab, 0xad, 0x56, 0x9f, 0x23, 0x37, 0xe1, 0x02, 0xd0, 0xa9, 0x12, 0x8f, 0x42, 0x12, 0xdb, 0xf9, 0xfa, 0x9e, 0x5a, 0x8f, 0x14, 0xca, 0x7f, 0x28, 0xe8, 0x29, 0x77, 0x28, 0x1f, 0xac, 0xdd, 0x9c, 0xa7, 0xa9, 0x2c, 0x78, }; static const unsigned char ecdh_secp521r1_3320_privkey[] = { 0x00, 0x24, 0xae, 0x70, 0x9e, 0x16, 0x44, 0xe3, 0x08, 0x7b, 0x52, 0x47, 0x0c, 0x56, 0x52, 0x68, 0xbe, 0xcb, 0xdb, 0xf9, 0x7d, 0xe5, 0x99, 0x16, 0x76, 0x35, 0x07, 0xd1, 0x09, 0xc2, 0xe5, 0xb7, 0xc2, 0x17, 0x27, 0xc6, 0x4e, 0x9b, 0x56, 0x0a, 0xa2, 0x48, 0xd7, 0xbc, 0x9f, 0xe0, 0xac, 0x95, 0x72, 0x0d, 0x50, 0x72, 0x63, 0xb7, 0xb2, 0x85, 0x9b, 0x05, 0x6e, 0xa1, 0x65, 0x30, 0x1c, 0xd5, 0x99, 0xd6, }; static const wycheproof_ecdh_test ecdh_secp521r1_3320 = { .name = "ecdh_secp521r1_3320", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3320_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3320_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 863 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3321 for ECDH, tcId is 864 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3321_peerpubkey[] = { 0x00, 0x47, 0xb9, 0xcf, 0x28, 0xe0, 0x4b, 0x38, 0x79, 0x68, 0x58, 0x54, 0x5d, 0x60, 0xd6, 0x13, 0x3f, 0xbd, 0xc2, 0x0e, 0xde, 0x08, 0x6e, 0x5d, 0x95, 0x11, 0x1c, 0x98, 0x2b, 0x8c, 0x27, 0x66, 0x28, 0x23, 0x5e, 0x53, 0x6c, 0x07, 0x56, 0x37, 0xa9, 0x7c, 0x0a, 0x6c, 0x30, 0xd0, 0x2b, 0x83, 0xb1, 0x9e, 0x57, 0x82, 0x03, 0x47, 0x3e, 0xea, 0x16, 0xdf, 0xde, 0xae, 0xcc, 0xb1, 0xdc, 0x0d, 0x9b, 0x19, }; static const unsigned char ecdh_secp521r1_3321_privkey[] = { 0x01, 0xaf, 0xe5, 0xc7, 0x7a, 0x62, 0x61, 0x61, 0xfb, 0x2c, 0x25, 0x96, 0x4c, 0x78, 0x95, 0xb9, 0xff, 0xf7, 0x87, 0x09, 0x9d, 0xb8, 0x3f, 0x07, 0x7f, 0x05, 0xa4, 0xbf, 0xa3, 0x20, 0xfb, 0x61, 0xf9, 0x31, 0x5b, 0xb4, 0x4d, 0x3f, 0xb9, 0xdd, 0x72, 0x22, 0x5d, 0x9d, 0x99, 0x3a, 0x18, 0xdf, 0x82, 0xac, 0x53, 0xfb, 0x4a, 0x5f, 0x86, 0xb2, 0x3c, 0xb6, 0x50, 0xe5, 0xe4, 0x77, 0x80, 0x66, 0xf6, 0x78, }; static const wycheproof_ecdh_test ecdh_secp521r1_3321 = { .name = "ecdh_secp521r1_3321", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3321_peerpubkey, .peerpubkeylen = 66, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3321_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 864 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3322 for ECDH, tcId is 865 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_3322_peerpubkey[] = { 0x00, 0x09, 0xcc, 0x73, 0x14, 0x1c, 0xf1, 0x84, 0x3d, 0x2b, 0x2c, 0x95, 0xdc, 0x5c, 0xbc, 0x4d, 0x61, 0x5c, 0x6d, 0xa4, 0x81, 0x4c, 0x1c, 0x72, 0x08, 0x61, 0x5d, 0x8e, 0x78, 0xc7, 0xa8, 0x66, 0x6a, 0xba, 0x18, 0x52, 0xfa, 0xaa, 0x45, 0xa4, 0x5d, 0x32, 0xbd, 0x0f, 0xde, 0x6e, 0xa7, 0x8f, 0x26, 0x2a, 0x96, 0xbf, 0x1e, 0x02, 0x94, 0x9c, 0xea, 0x48, 0xc3, 0x3c, 0x69, 0x51, 0x03, 0x68, 0x30, 0x48, }; static const unsigned char ecdh_secp521r1_3322_privkey[] = { 0x00, 0x2a, 0x35, 0x25, 0x87, 0x87, 0xf9, 0x1a, 0xd0, 0xbd, 0x34, 0x32, 0xc3, 0x02, 0x2e, 0x4d, 0x3e, 0xd3, 0x49, 0xc8, 0x76, 0x8a, 0x7e, 0x7c, 0xaa, 0x18, 0x36, 0x02, 0x2f, 0xc0, 0xc8, 0x9a, 0x90, 0x73, 0xf6, 0xce, 0x14, 0xd0, 0x99, 0x0d, 0x5b, 0x7b, 0xb4, 0x13, 0x06, 0x1c, 0x71, 0x60, 0xe7, 0xbd, 0x56, 0x6a, 0x5c, 0x89, 0xf1, 0x49, 0x01, 0xb2, 0xcc, 0x19, 0xf1, 0xad, 0x53, 0x1f, 0x41, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp521r1_3322 = { .name = "ecdh_secp521r1_3322", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_3322_peerpubkey, .peerpubkeylen = 66, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp521r1_3322_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 865 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 3323 for ECDH, tcId is 866 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3323_peerpubkey[] = { 0xd8, 0x09, 0x6a, 0xf8, 0xa1, 0x1e, 0x0b, 0x80, 0x03, 0x7e, 0x1e, 0xe6, 0x82, 0x46, 0xb5, 0xdc, 0xbb, 0x0a, 0xeb, 0x1c, 0xf1, 0x24, 0x4f, 0xd7, 0x67, 0xdb, 0x80, 0xf3, 0xfa, 0x27, 0xda, 0x2b, 0x39, 0x68, 0x12, 0xea, 0x16, 0x86, 0xe7, 0x47, 0x2e, 0x96, 0x92, 0xea, 0xf3, 0xe9, 0x58, 0xe5, 0x0e, 0x95, 0x00, 0xd3, 0xb4, 0xc7, 0x72, 0x43, 0xdb, 0x1f, 0x2a, 0xcd, 0x67, 0xba, 0x9c, 0xc4, }; static const unsigned char ecdh_secp256k1_3323_privkey[] = { 0xf4, 0xb7, 0xff, 0x7c, 0xcc, 0xc9, 0x88, 0x13, 0xa6, 0x9f, 0xae, 0x3d, 0xf2, 0x22, 0xbf, 0xe3, 0xf4, 0xe2, 0x8f, 0x76, 0x4b, 0xf9, 0x1b, 0x4a, 0x10, 0xd8, 0x09, 0x6c, 0xe4, 0x46, 0xb2, 0x54, }; static const unsigned char ecdh_secp256k1_3323_sharedsecret[] = { 0x54, 0x4d, 0xfa, 0xe2, 0x2a, 0xf6, 0xaf, 0x93, 0x90, 0x42, 0xb1, 0xd8, 0x5b, 0x71, 0xa1, 0xe4, 0x9e, 0x9a, 0x56, 0x14, 0x12, 0x3c, 0x4d, 0x6a, 0xd0, 0xc8, 0xaf, 0x65, 0xba, 0xf8, 0x7d, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256k1_3323 = { .name = "ecdh_secp256k1_3323", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3323_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3323_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3323_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 866 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3324 for ECDH, tcId is 867 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3324_peerpubkey[] = { 0xd8, 0x09, 0x6a, 0xf8, 0xa1, 0x1e, 0x0b, 0x80, 0x03, 0x7e, 0x1e, 0xe6, 0x82, 0x46, 0xb5, 0xdc, 0xbb, 0x0a, 0xeb, 0x1c, 0xf1, 0x24, 0x4f, 0xd7, 0x67, 0xdb, 0x80, 0xf3, 0xfa, 0x27, 0xda, 0x2b, }; static const unsigned char ecdh_secp256k1_3324_privkey[] = { 0xf4, 0xb7, 0xff, 0x7c, 0xcc, 0xc9, 0x88, 0x13, 0xa6, 0x9f, 0xae, 0x3d, 0xf2, 0x22, 0xbf, 0xe3, 0xf4, 0xe2, 0x8f, 0x76, 0x4b, 0xf9, 0x1b, 0x4a, 0x10, 0xd8, 0x09, 0x6c, 0xe4, 0x46, 0xb2, 0x54, }; static const unsigned char ecdh_secp256k1_3324_sharedsecret[] = { 0x54, 0x4d, 0xfa, 0xe2, 0x2a, 0xf6, 0xaf, 0x93, 0x90, 0x42, 0xb1, 0xd8, 0x5b, 0x71, 0xa1, 0xe4, 0x9e, 0x9a, 0x56, 0x14, 0x12, 0x3c, 0x4d, 0x6a, 0xd0, 0xc8, 0xaf, 0x65, 0xba, 0xf8, 0x7d, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256k1_3324 = { .name = "ecdh_secp256k1_3324", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3324_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3324_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3324_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 867 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3325 for ECDH, tcId is 868 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3325_peerpubkey[] = { 0x96, 0x5f, 0xf4, 0x2d, 0x65, 0x4e, 0x05, 0x8e, 0xe7, 0x31, 0x7c, 0xce, 0xd7, 0xca, 0xf0, 0x93, 0xfb, 0xb1, 0x80, 0xd8, 0xd3, 0xa7, 0x4b, 0x0d, 0xcd, 0x9d, 0x8c, 0xd4, 0x7a, 0x39, 0xd5, 0xcb, 0x9c, 0x2a, 0xa4, 0xda, 0xac, 0x01, 0xa4, 0xbe, 0x37, 0xc2, 0x04, 0x67, 0xed, 0xe9, 0x64, 0x66, 0x2f, 0x12, 0x98, 0x3e, 0x0b, 0x52, 0x72, 0xa4, 0x7a, 0x5f, 0x27, 0x85, 0x68, 0x5d, 0x80, 0x87, }; static const unsigned char ecdh_secp256k1_3325_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3325_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_3325 = { .name = "ecdh_secp256k1_3325", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3325_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3325_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3325_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 868 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3326 for ECDH, tcId is 869 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3326_peerpubkey[] = { 0x06, 0xc4, 0xb8, 0x7b, 0xa7, 0x6c, 0x6d, 0xcb, 0x10, 0x1f, 0x54, 0xa0, 0x50, 0xa0, 0x86, 0xaa, 0x2c, 0xb0, 0x72, 0x2f, 0x03, 0x13, 0x7d, 0xf5, 0xa9, 0x22, 0x47, 0x2f, 0x1b, 0xdc, 0x11, 0xb9, 0x82, 0xe3, 0xc7, 0x35, 0xc4, 0xb6, 0xc4, 0x81, 0xd0, 0x92, 0x69, 0x55, 0x9f, 0x08, 0x0a, 0xd0, 0x86, 0x32, 0xf3, 0x70, 0xa0, 0x54, 0xaf, 0x12, 0xc1, 0xfd, 0x1e, 0xce, 0xd2, 0xea, 0x92, 0x11, }; static const unsigned char ecdh_secp256k1_3326_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3326_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_3326 = { .name = "ecdh_secp256k1_3326", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3326_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3326_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3326_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 869 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3327 for ECDH, tcId is 870 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3327_peerpubkey[] = { 0xbb, 0xa3, 0x0e, 0xef, 0x79, 0x67, 0xa2, 0xf2, 0xf0, 0x8a, 0x2f, 0xfa, 0xda, 0xc0, 0xe4, 0x1f, 0xd4, 0xdb, 0x12, 0xa9, 0x3c, 0xef, 0x0b, 0x04, 0x5b, 0x57, 0x06, 0xf2, 0x85, 0x38, 0x21, 0xe6, 0xd5, 0x0b, 0x2b, 0xf8, 0xcb, 0xf5, 0x30, 0xe6, 0x19, 0x86, 0x9e, 0x07, 0xc0, 0x21, 0xef, 0x16, 0xf6, 0x93, 0xcf, 0xc0, 0xa4, 0xb0, 0xd4, 0xed, 0x5a, 0x8f, 0x46, 0x46, 0x92, 0xbf, 0x3d, 0x6e, }; static const unsigned char ecdh_secp256k1_3327_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3327_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_3327 = { .name = "ecdh_secp256k1_3327", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3327_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3327_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3327_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 870 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3328 for ECDH, tcId is 871 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3328_peerpubkey[] = { 0x16, 0x6a, 0xed, 0x3b, 0xc2, 0x81, 0x70, 0x54, 0x44, 0xf9, 0x33, 0x91, 0x3f, 0x67, 0x09, 0x57, 0xa1, 0x18, 0xf8, 0xda, 0x2c, 0x71, 0xbd, 0x30, 0x1a, 0x90, 0x92, 0x97, 0x43, 0xe2, 0xca, 0x58, 0x35, 0x14, 0xa7, 0x97, 0x2e, 0x33, 0xd6, 0xfe, 0xa1, 0xe3, 0x77, 0xef, 0x41, 0x84, 0x93, 0x7f, 0x67, 0xb3, 0x7e, 0x41, 0xef, 0x30, 0x99, 0xc2, 0x28, 0xa8, 0x8f, 0x5b, 0xfb, 0x67, 0xe5, 0xb9, }; static const unsigned char ecdh_secp256k1_3328_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3328_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3328 = { .name = "ecdh_secp256k1_3328", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3328_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3328_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3328_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 871 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3329 for ECDH, tcId is 872 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3329_peerpubkey[] = { 0x36, 0xe1, 0xe7, 0x6f, 0xfd, 0xbe, 0x85, 0x77, 0x52, 0x0b, 0x07, 0x16, 0xeb, 0x88, 0xc1, 0x8e, 0xa7, 0x2a, 0x49, 0xe5, 0xa4, 0xe5, 0x68, 0x0a, 0x7d, 0x29, 0x00, 0x93, 0xf8, 0x41, 0xcb, 0x6e, 0x73, 0x10, 0x72, 0x8b, 0x59, 0xc7, 0x57, 0x2c, 0x4b, 0x35, 0xfb, 0x6c, 0x29, 0xc3, 0x6e, 0xba, 0xbf, 0xc5, 0x35, 0x53, 0xc0, 0x6e, 0xcf, 0x74, 0x7f, 0xcf, 0xbe, 0xfc, 0xf6, 0x11, 0x4e, 0x1c, }; static const unsigned char ecdh_secp256k1_3329_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3329_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3329 = { .name = "ecdh_secp256k1_3329", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3329_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3329_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3329_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 872 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3330 for ECDH, tcId is 873 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3330_peerpubkey[] = { 0x72, 0x8e, 0x15, 0xd5, 0x78, 0x21, 0x2b, 0xc4, 0x22, 0x87, 0xc0, 0x11, 0x8c, 0x82, 0xc8, 0x4b, 0x12, 0x6f, 0x97, 0xd5, 0x49, 0x22, 0x3c, 0x10, 0xad, 0x07, 0xf4, 0xe9, 0x8a, 0xf9, 0x12, 0x38, 0x5d, 0x23, 0xb1, 0xa6, 0xe7, 0x16, 0x92, 0x58, 0x55, 0xa2, 0x47, 0xb1, 0x6e, 0xff, 0xe9, 0x27, 0x73, 0x31, 0x52, 0x41, 0xac, 0x95, 0x1c, 0xdf, 0xef, 0xdf, 0xac, 0x0e, 0xd1, 0x64, 0x67, 0xf6, }; static const unsigned char ecdh_secp256k1_3330_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3330_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3330 = { .name = "ecdh_secp256k1_3330", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3330_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3330_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3330_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 873 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3331 for ECDH, tcId is 874 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3331_peerpubkey[] = { 0xca, 0x03, 0xff, 0x8e, 0x99, 0xe2, 0x69, 0x57, 0x6c, 0xf7, 0x56, 0x45, 0x45, 0xc8, 0x92, 0x68, 0xeb, 0x41, 0x5f, 0xf4, 0x57, 0x78, 0x73, 0x25, 0x29, 0xfa, 0x59, 0x97, 0xcc, 0x2b, 0x23, 0x09, 0x50, 0xd6, 0xb8, 0x4b, 0x72, 0x9b, 0xc0, 0x7f, 0x9b, 0x2d, 0x92, 0x75, 0x42, 0x81, 0xcd, 0xc0, 0xd2, 0x89, 0xd2, 0x45, 0x33, 0x85, 0xae, 0xf7, 0x7e, 0x4b, 0xdc, 0x69, 0xbf, 0x15, 0x5c, 0x5f, }; static const unsigned char ecdh_secp256k1_3331_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3331_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3331 = { .name = "ecdh_secp256k1_3331", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3331_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3331_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3331_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 874 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3332 for ECDH, tcId is 875 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3332_peerpubkey[] = { 0x51, 0xbe, 0x66, 0x13, 0x7e, 0x39, 0xbb, 0xf3, 0x5a, 0x91, 0xc6, 0xdb, 0x5b, 0xa6, 0x91, 0x9f, 0xf4, 0x71, 0xd8, 0x85, 0xca, 0x94, 0x46, 0x2e, 0xaa, 0xa6, 0x5b, 0x1e, 0xac, 0x36, 0x6b, 0xaa, 0x59, 0x10, 0xde, 0x70, 0xb6, 0xe0, 0x9e, 0x97, 0xaa, 0x00, 0x62, 0x1e, 0xf1, 0x8f, 0x28, 0x01, 0x71, 0x9b, 0x19, 0x9b, 0x3e, 0x77, 0x69, 0xfd, 0xab, 0x2b, 0xd9, 0x09, 0xb2, 0xf3, 0x40, 0xd7, }; static const unsigned char ecdh_secp256k1_3332_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3332_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_3332 = { .name = "ecdh_secp256k1_3332", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3332_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3332_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3332_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 875 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3333 for ECDH, tcId is 876 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3333_peerpubkey[] = { 0x23, 0x55, 0x65, 0x64, 0x85, 0x0c, 0x50, 0xfb, 0xa5, 0x1f, 0x1e, 0x64, 0xef, 0x98, 0x37, 0x8e, 0xf5, 0xc2, 0x2f, 0xea, 0xfa, 0x29, 0x49, 0x9c, 0xa2, 0x76, 0x00, 0xc4, 0x73, 0xca, 0xce, 0x88, 0x9d, 0x56, 0x79, 0xe9, 0x17, 0xda, 0xa7, 0xf4, 0xc7, 0x89, 0x95, 0x17, 0xd3, 0x78, 0x26, 0x28, 0x4f, 0x03, 0x1d, 0xe0, 0x1a, 0x60, 0xbc, 0x81, 0x36, 0x96, 0x41, 0x4d, 0x04, 0x53, 0x1a, 0x21, }; static const unsigned char ecdh_secp256k1_3333_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3333_sharedsecret[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_3333 = { .name = "ecdh_secp256k1_3333", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3333_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3333_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3333_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 876 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3334 for ECDH, tcId is 877 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3334_peerpubkey[] = { 0xdd, 0xbf, 0x80, 0x7e, 0x22, 0xc5, 0x6a, 0x19, 0xcf, 0x6c, 0x47, 0x28, 0x29, 0x15, 0x03, 0x50, 0x78, 0x10, 0x34, 0xa5, 0xed, 0xde, 0xc3, 0x65, 0x69, 0x4d, 0x4b, 0xd5, 0xc8, 0x65, 0xea, 0xd1, 0x4e, 0x67, 0x41, 0x27, 0x02, 0x8c, 0x91, 0xd3, 0x39, 0x4c, 0xac, 0x37, 0x29, 0x3a, 0x86, 0x60, 0x55, 0xd1, 0x0f, 0x0f, 0x40, 0xa3, 0x70, 0x6a, 0xd1, 0x6b, 0x64, 0xfc, 0x9d, 0x59, 0x98, 0xbd, }; static const unsigned char ecdh_secp256k1_3334_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3334_sharedsecret[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_3334 = { .name = "ecdh_secp256k1_3334", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3334_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3334_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3334_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 877 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3335 for ECDH, tcId is 878 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3335_peerpubkey[] = { 0x59, 0x5e, 0x46, 0xee, 0x7c, 0x2d, 0x71, 0x83, 0xff, 0x2e, 0xa7, 0x60, 0xff, 0xd8, 0x47, 0x2f, 0xb8, 0x34, 0xec, 0x89, 0xc0, 0x8b, 0x6e, 0xf4, 0x8f, 0xf9, 0x2b, 0x44, 0xa1, 0x3a, 0x6e, 0x1a, 0xe5, 0x63, 0xe2, 0x39, 0x53, 0xc9, 0x7c, 0x26, 0x44, 0x13, 0x23, 0xd2, 0x50, 0x0c, 0x84, 0xe8, 0xce, 0xe0, 0x4c, 0x15, 0xd4, 0xd5, 0xd2, 0xcc, 0x45, 0x87, 0x03, 0xd1, 0xf2, 0xd0, 0x2d, 0x31, }; static const unsigned char ecdh_secp256k1_3335_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3335_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3335 = { .name = "ecdh_secp256k1_3335", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3335_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3335_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3335_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 878 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3336 for ECDH, tcId is 879 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3336_peerpubkey[] = { 0xe4, 0x26, 0xe2, 0xf5, 0x10, 0x83, 0x33, 0x11, 0x75, 0x87, 0x97, 0x5f, 0x18, 0xd8, 0xcc, 0x07, 0x8d, 0x41, 0xe5, 0x6b, 0x7d, 0x6b, 0x82, 0xf5, 0x85, 0xd7, 0x5b, 0x0d, 0x73, 0x47, 0x9f, 0xfd, 0x75, 0x80, 0x0f, 0xd4, 0x12, 0x36, 0xa5, 0x60, 0x34, 0xbe, 0xd9, 0xab, 0xc5, 0x5d, 0x82, 0xcf, 0x05, 0x9a, 0x14, 0xd6, 0x3c, 0x07, 0xcd, 0x07, 0x50, 0x93, 0x17, 0x14, 0x73, 0x1a, 0x1c, 0xa1, }; static const unsigned char ecdh_secp256k1_3336_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3336_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3336 = { .name = "ecdh_secp256k1_3336", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3336_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3336_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3336_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 879 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3337 for ECDH, tcId is 880 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3337_peerpubkey[] = { 0xe1, 0xc7, 0x07, 0x6c, 0xaf, 0x26, 0x01, 0x0b, 0x17, 0x67, 0xf1, 0xa9, 0xc4, 0x15, 0x6b, 0x5b, 0x42, 0x36, 0x36, 0x8d, 0x5d, 0x90, 0xde, 0xce, 0x34, 0x41, 0xb7, 0x34, 0xe8, 0x68, 0x4e, 0xe6, 0xb3, 0x53, 0x4c, 0x3c, 0x54, 0xe6, 0x14, 0xe5, 0x94, 0xdc, 0xe6, 0xca, 0x43, 0x8b, 0x87, 0xc4, 0x24, 0xc8, 0xe8, 0x0f, 0x8f, 0xae, 0x22, 0x6b, 0xbd, 0xf5, 0x0e, 0x49, 0x06, 0xc1, 0x3f, 0x6b, }; static const unsigned char ecdh_secp256k1_3337_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3337_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_3337 = { .name = "ecdh_secp256k1_3337", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3337_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3337_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3337_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 880 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3338 for ECDH, tcId is 881 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3338_peerpubkey[] = { 0x66, 0x3c, 0xea, 0x10, 0x63, 0xc9, 0x91, 0x6b, 0x75, 0xe8, 0x5f, 0xc8, 0x15, 0xd8, 0xa2, 0x37, 0x0e, 0xc0, 0xa0, 0x2a, 0xce, 0xef, 0x3d, 0xb0, 0x22, 0xe3, 0x95, 0xdb, 0x8b, 0x03, 0xbf, 0x3f, 0x18, 0x87, 0x87, 0xf4, 0x04, 0x7d, 0xc1, 0x06, 0x80, 0x75, 0x26, 0x50, 0x2c, 0x7a, 0xe8, 0x80, 0xe4, 0x71, 0xc9, 0x29, 0xb9, 0x2e, 0x23, 0x84, 0x48, 0x9c, 0x80, 0x70, 0xb5, 0xbc, 0xc1, 0x09, }; static const unsigned char ecdh_secp256k1_3338_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3338_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3338 = { .name = "ecdh_secp256k1_3338", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3338_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3338_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3338_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 881 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3339 for ECDH, tcId is 882 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3339_peerpubkey[] = { 0x24, 0x17, 0x5c, 0x07, 0x8e, 0x30, 0x5d, 0x31, 0x39, 0xe5, 0xda, 0xb7, 0x27, 0xa6, 0xab, 0x85, 0x87, 0xb2, 0x6d, 0xaa, 0x47, 0x0a, 0x52, 0x9a, 0x23, 0xc1, 0x05, 0x85, 0xcb, 0x56, 0xc0, 0x38, 0xbf, 0x1f, 0x2b, 0x93, 0x7a, 0xe0, 0x74, 0xff, 0x94, 0xb1, 0x5f, 0x5c, 0xb5, 0xe6, 0x0e, 0xb5, 0xd3, 0x2a, 0xfb, 0xa2, 0x07, 0x75, 0x39, 0xdb, 0x79, 0x42, 0x94, 0xbc, 0xaa, 0xb7, 0x1a, 0x81, }; static const unsigned char ecdh_secp256k1_3339_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3339_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3339 = { .name = "ecdh_secp256k1_3339", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3339_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3339_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3339_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 882 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3340 for ECDH, tcId is 883 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3340_peerpubkey[] = { 0x00, 0x8d, 0x71, 0xc7, 0x12, 0xdd, 0x95, 0x88, 0x1c, 0xd1, 0x40, 0x0d, 0xbe, 0x76, 0x83, 0xac, 0xbd, 0x8e, 0x26, 0x9d, 0x25, 0x26, 0x1b, 0x08, 0xf1, 0xf4, 0x91, 0xb4, 0x5e, 0x3b, 0x56, 0x21, 0x77, 0x81, 0x82, 0xa2, 0x41, 0x98, 0xb0, 0xf2, 0x35, 0x02, 0xd0, 0x6e, 0x24, 0xc4, 0x51, 0x22, 0xe1, 0xf4, 0x20, 0xaf, 0x48, 0xdc, 0x1e, 0x17, 0xb1, 0xea, 0x92, 0x33, 0x86, 0xa3, 0x30, 0x62, }; static const unsigned char ecdh_secp256k1_3340_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3340_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3340 = { .name = "ecdh_secp256k1_3340", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3340_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3340_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3340_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 883 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3341 for ECDH, tcId is 884 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3341_peerpubkey[] = { 0x56, 0xba, 0xf1, 0xd7, 0x26, 0x06, 0xc7, 0xaf, 0x5a, 0x5f, 0xa1, 0x08, 0x62, 0x0b, 0x08, 0x39, 0xe2, 0xc7, 0xdd, 0x40, 0xb8, 0x32, 0xef, 0x84, 0x7e, 0x5b, 0x64, 0xc8, 0x6e, 0xfe, 0x1a, 0xa5, 0x63, 0xe5, 0x86, 0xa6, 0x67, 0xa6, 0x5b, 0xbb, 0x56, 0x92, 0x50, 0x0d, 0xf1, 0xff, 0x84, 0x03, 0x73, 0x68, 0x38, 0xb3, 0x0e, 0xa9, 0x79, 0x1d, 0x9d, 0x39, 0x0e, 0x3d, 0xc6, 0x68, 0x9e, 0x2c, }; static const unsigned char ecdh_secp256k1_3341_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3341_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3341 = { .name = "ecdh_secp256k1_3341", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3341_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3341_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3341_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 884 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3342 for ECDH, tcId is 885 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3342_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0x5a, 0x5e, 0x4a, 0xf1, 0x1c, 0xf6, 0x3c, 0xea, 0xaa, 0x42, 0xa6, 0xdc, 0x9e, 0x4c, 0xcb, 0x39, 0x48, 0x52, 0xcf, 0x84, 0x28, 0x4e, 0x8d, 0x26, 0x27, 0x57, 0x2f, 0xbf, 0x22, 0xc0, 0xba, 0x88, }; static const unsigned char ecdh_secp256k1_3342_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3342_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3342 = { .name = "ecdh_secp256k1_3342", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3342_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3342_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3342_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 885 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3343 for ECDH, tcId is 886 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3343_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0x07, 0xeb, 0x78, 0xd3, 0x87, 0x70, 0xfe, 0xa1, 0xa4, 0x4f, 0x4d, 0xa7, 0x2c, 0x26, 0xf8, 0x5b, 0x17, 0xf3, 0x50, 0x1a, 0x4f, 0x93, 0x94, 0xfe, 0x29, 0x85, 0x6c, 0xcb, 0xf1, 0x5f, 0xd2, 0x84, }; static const unsigned char ecdh_secp256k1_3343_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3343_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3343 = { .name = "ecdh_secp256k1_3343", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3343_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3343_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3343_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 886 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3344 for ECDH, tcId is 887 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3344_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0xa5, 0xa1, 0xb5, 0x0e, 0xe3, 0x09, 0xc3, 0x15, 0x55, 0xbd, 0x59, 0x23, 0x61, 0xb3, 0x34, 0xc6, 0xb7, 0xad, 0x30, 0x7b, 0xd7, 0xb1, 0x72, 0xd9, 0xd8, 0xa8, 0xd0, 0x3f, 0xdd, 0x3f, 0x41, 0xa7, }; static const unsigned char ecdh_secp256k1_3344_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3344_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3344 = { .name = "ecdh_secp256k1_3344", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3344_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3344_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3344_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 887 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3345 for ECDH, tcId is 888 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3345_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0xf8, 0x14, 0x87, 0x2c, 0x78, 0x8f, 0x01, 0x5e, 0x5b, 0xb0, 0xb2, 0x58, 0xd3, 0xd9, 0x07, 0xa4, 0xe8, 0x0c, 0xaf, 0xe5, 0xb0, 0x6c, 0x6b, 0x01, 0xd6, 0x7a, 0x93, 0x33, 0x0e, 0xa0, 0x29, 0xab, }; static const unsigned char ecdh_secp256k1_3345_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3345_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3345 = { .name = "ecdh_secp256k1_3345", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3345_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3345_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3345_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 888 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3346 for ECDH, tcId is 889 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3346_peerpubkey[] = { 0x54, 0x50, 0xca, 0xce, 0x04, 0x38, 0x6a, 0xdc, 0x54, 0xa1, 0x43, 0x50, 0x79, 0x3e, 0x83, 0xbd, 0xc5, 0xf2, 0x65, 0xd6, 0xc2, 0x92, 0x87, 0xec, 0xd0, 0x7f, 0x79, 0x1a, 0xd2, 0x78, 0x4c, 0x4c, 0xeb, 0xd3, 0xc2, 0x44, 0x51, 0x32, 0x23, 0x34, 0xd8, 0xd5, 0x10, 0x33, 0xe9, 0xd3, 0x4b, 0x6b, 0xb5, 0x92, 0xb1, 0x99, 0x5d, 0x07, 0x86, 0x78, 0x63, 0xd1, 0x04, 0x4b, 0xd5, 0x9d, 0x75, 0x01, }; static const unsigned char ecdh_secp256k1_3346_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_3346_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3346 = { .name = "ecdh_secp256k1_3346", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3346_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3346_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3346_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 889 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3347 for ECDH, tcId is 890 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3347_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_3347_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3347_sharedsecret[] = { 0x12, 0xc2, 0xad, 0x36, 0xa5, 0x9f, 0xda, 0x5a, 0xc4, 0xf7, 0xe9, 0x7f, 0xf6, 0x11, 0x72, 0x8d, 0x07, 0x48, 0xac, 0x35, 0x9f, 0xca, 0x9b, 0x12, 0xf6, 0xd4, 0xf4, 0x35, 0x19, 0x51, 0x64, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256k1_3347 = { .name = "ecdh_secp256k1_3347", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3347_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3347_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3347_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 890 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3348 for ECDH, tcId is 891 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3348_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x66, 0xfb, 0xe7, 0x27, 0xb2, 0xba, 0x09, 0xe0, 0x9f, 0x5a, 0x98, 0xd7, 0x0a, 0x5e, 0xfc, 0xe8, 0x42, 0x4c, 0x5f, 0xa4, 0x25, 0xbb, 0xda, 0x1c, 0x51, 0x1f, 0x86, 0x06, 0x57, 0xb8, 0x53, 0x5e, }; static const unsigned char ecdh_secp256k1_3348_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3348_sharedsecret[] = { 0x45, 0xaa, 0x96, 0x66, 0x75, 0x78, 0x15, 0xe9, 0x97, 0x41, 0x40, 0xd1, 0xb5, 0x71, 0x91, 0xc9, 0x2c, 0x58, 0x8f, 0x6e, 0x56, 0x81, 0x13, 0x1e, 0x0d, 0xf9, 0xb3, 0xd2, 0x41, 0x83, 0x1a, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_3348 = { .name = "ecdh_secp256k1_3348", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3348_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3348_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3348_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 891 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3349 for ECDH, tcId is 892 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3349_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x2f, 0x23, 0x33, 0x95, 0xc8, 0xb0, 0x7a, 0x38, 0x34, 0xa0, 0xe5, 0x9b, 0xda, 0x43, 0x94, 0x4b, 0x5d, 0xf3, 0x78, 0x85, 0x2e, 0x56, 0x0e, 0xbc, 0x0f, 0x22, 0x87, 0x7e, 0x9f, 0x49, 0xbb, 0x4b, }; static const unsigned char ecdh_secp256k1_3349_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3349_sharedsecret[] = { 0xb9, 0x09, 0x64, 0xc0, 0x5e, 0x46, 0x4c, 0x23, 0xac, 0xb7, 0x47, 0xa4, 0xc8, 0x35, 0x11, 0xe9, 0x30, 0x07, 0xf7, 0x49, 0x9b, 0x06, 0x5c, 0x8e, 0x8e, 0xcc, 0xec, 0x95, 0x5d, 0x87, 0x31, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256k1_3349 = { .name = "ecdh_secp256k1_3349", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3349_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3349_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3349_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 892 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3350 for ECDH, tcId is 893 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3350_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0xb7, 0x72, 0xad, 0x92, 0xdb, 0x86, 0x99, 0xce, 0xac, 0x1a, 0x3c, 0x30, 0xe1, 0x26, 0xb8, 0x66, 0xc4, 0xfe, 0xfe, 0x29, 0x2c, 0xf0, 0xc1, 0x79, 0x0e, 0x55, 0xce, 0xe8, 0x41, 0x4f, 0x18, }; static const unsigned char ecdh_secp256k1_3350_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3350_sharedsecret[] = { 0x81, 0x63, 0xc9, 0xdc, 0xe8, 0x35, 0x6f, 0x1d, 0xf7, 0x2b, 0x69, 0x8f, 0x2f, 0x04, 0xa1, 0x4d, 0xb0, 0x26, 0x3a, 0x84, 0x02, 0x90, 0x5e, 0xee, 0x87, 0x94, 0x1b, 0x00, 0xd8, 0xd6, 0x77, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3350 = { .name = "ecdh_secp256k1_3350", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3350_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3350_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3350_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 893 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3351 for ECDH, tcId is 894 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3351_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x31, 0xcf, 0x13, 0x67, 0x1b, 0x57, 0x4e, 0x31, 0x3c, 0x35, 0x21, 0x75, 0x66, 0xf1, 0x8b, 0xd2, 0xc5, 0xf7, 0x58, 0xc1, 0x40, 0xd2, 0x4e, 0x94, 0xe6, 0xa4, 0xfd, 0xa7, 0xf4, 0xc7, 0xb1, 0x2b, }; static const unsigned char ecdh_secp256k1_3351_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3351_sharedsecret[] = { 0x1a, 0x32, 0x74, 0x9d, 0xcf, 0x04, 0x7a, 0x7e, 0x06, 0x19, 0x4c, 0xcb, 0x34, 0xd7, 0xc9, 0x53, 0x8a, 0x16, 0xdd, 0xab, 0xee, 0xed, 0xe7, 0x4b, 0xea, 0x5f, 0x7e, 0xf0, 0x49, 0x79, 0xf7, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_3351 = { .name = "ecdh_secp256k1_3351", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3351_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3351_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3351_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 894 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3352 for ECDH, tcId is 895 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3352_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x73, 0xb0, 0x88, 0x64, 0x96, 0xae, 0xd7, 0x0d, 0xb3, 0x71, 0xe2, 0xe4, 0x9d, 0xb6, 0x40, 0xab, 0xba, 0x54, 0x7e, 0x5e, 0x0c, 0x27, 0x63, 0xb7, 0x3a, 0x0a, 0x42, 0xf8, 0x43, 0x48, 0xa6, 0xb1, }; static const unsigned char ecdh_secp256k1_3352_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3352_sharedsecret[] = { 0xab, 0x43, 0x91, 0x7a, 0x64, 0xc1, 0xb0, 0x10, 0x15, 0x96, 0x43, 0xc1, 0x8e, 0x2e, 0xb0, 0x6d, 0x25, 0xee, 0xda, 0xe5, 0xb7, 0x8d, 0x02, 0xfa, 0x9b, 0x3d, 0xeb, 0xac, 0xbf, 0x31, 0xb7, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_3352 = { .name = "ecdh_secp256k1_3352", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3352_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3352_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3352_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 895 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3353 for ECDH, tcId is 896 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3353_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0f, 0x4d, 0x81, 0x57, 0x5c, 0x8e, 0x32, 0x82, 0x85, 0x63, 0x3c, 0xcf, 0xd8, 0x62, 0x3f, 0x04, 0xdd, 0x4e, 0xd6, 0x1e, 0x18, 0x7b, 0x3a, 0x6d, 0x7e, 0xac, 0x55, 0x3a, 0xed, 0xe7, 0xf8, 0x50, }; static const unsigned char ecdh_secp256k1_3353_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3353_sharedsecret[] = { 0x16, 0x48, 0x32, 0x1c, 0x70, 0x66, 0x51, 0xad, 0xf0, 0x66, 0x43, 0xfc, 0x4a, 0xe0, 0x60, 0x41, 0xdc, 0xe6, 0x4a, 0x82, 0x63, 0x2a, 0xd4, 0x41, 0x28, 0x06, 0x12, 0x16, 0xcc, 0x98, 0x27, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3353 = { .name = "ecdh_secp256k1_3353", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3353_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3353_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3353_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 896 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3354 for ECDH, tcId is 897 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3354_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, 0x42, 0x21, 0x7b, 0x70, 0x59, 0xb3, 0xdd, 0xeb, 0xc6, 0x8e, 0x95, 0x44, 0x3f, 0x6c, 0x10, 0x93, 0x69, 0xe1, 0xf9, 0x32, 0x3d, 0xd2, 0x48, 0x52, 0xac, 0x76, 0x12, 0x99, 0x6b, 0x6e, 0x56, 0x01, }; static const unsigned char ecdh_secp256k1_3354_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3354_sharedsecret[] = { 0xfb, 0x86, 0x6b, 0x2e, 0x4b, 0x1f, 0x9e, 0xd6, 0xb3, 0x78, 0x47, 0xfc, 0x80, 0xa1, 0x9a, 0x52, 0xe1, 0xe9, 0x1b, 0x75, 0xd7, 0x13, 0xb0, 0xd4, 0xf6, 0xb9, 0x95, 0xd2, 0xd3, 0xc7, 0x5c, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256k1_3354 = { .name = "ecdh_secp256k1_3354", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3354_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3354_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3354_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 897 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3355 for ECDH, tcId is 898 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3355_peerpubkey[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, 0x5f, 0x45, 0x0d, 0xbb, 0xf7, 0x18, 0xa4, 0xf6, 0x58, 0x2d, 0x7a, 0xf8, 0x39, 0x53, 0x17, 0x0b, 0x30, 0x37, 0xfb, 0x81, 0xa4, 0x50, 0xa5, 0xca, 0x5a, 0xcb, 0xec, 0x74, 0xad, 0x6c, 0xac, 0x89, }; static const unsigned char ecdh_secp256k1_3355_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3355_sharedsecret[] = { 0x19, 0x08, 0xae, 0x93, 0x6f, 0x53, 0xb9, 0xa8, 0xa2, 0xd0, 0x97, 0x07, 0xae, 0x41, 0x40, 0x84, 0x09, 0x0b, 0x17, 0x53, 0x65, 0x40, 0x14, 0x25, 0x47, 0x9b, 0x10, 0xb8, 0xc3, 0xe8, 0xd1, 0xba, }; static const wycheproof_ecdh_test ecdh_secp256k1_3355 = { .name = "ecdh_secp256k1_3355", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3355_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3355_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3355_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 898 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3356 for ECDH, tcId is 899 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3356_peerpubkey[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, 0x37, 0x26, 0x9a, 0x64, 0xbb, 0xcf, 0x3a, 0x3f, 0x22, 0x76, 0x31, 0xc7, 0xa8, 0xce, 0x53, 0x2c, 0x77, 0x24, 0x5a, 0x1c, 0x0d, 0xb4, 0x34, 0x3f, 0x16, 0xaa, 0x1d, 0x33, 0x9f, 0xd2, 0x59, 0x1a, }; static const unsigned char ecdh_secp256k1_3356_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3356_sharedsecret[] = { 0x5e, 0x13, 0xb3, 0xdc, 0x04, 0xe3, 0x3f, 0x18, 0xd1, 0x28, 0x6c, 0x60, 0x6c, 0xb0, 0x19, 0x17, 0x85, 0xf6, 0x94, 0xe8, 0x2e, 0x17, 0x79, 0x61, 0x45, 0xc9, 0xe7, 0xb4, 0x9b, 0xc2, 0xaf, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_3356 = { .name = "ecdh_secp256k1_3356", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3356_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3356_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3356_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 899 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3357 for ECDH, tcId is 900 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3357_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x4b, 0x66, 0x00, 0x3c, 0x74, 0x82, 0xd0, 0xf2, 0xfd, 0x7b, 0x1c, 0xb2, 0xb0, 0xb7, 0x07, 0x8c, 0xd1, 0x99, 0xf2, 0x20, 0x8f, 0xc3, 0x7e, 0xb2, 0xef, 0x28, 0x6c, 0xcb, 0x2f, 0x12, 0x24, 0xe7, }; static const unsigned char ecdh_secp256k1_3357_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3357_sharedsecret[] = { 0x31, 0x35, 0xa6, 0x28, 0x3b, 0x97, 0xe7, 0x53, 0x7a, 0x8b, 0xc2, 0x08, 0xa3, 0x55, 0xc2, 0xa8, 0x54, 0xb8, 0xee, 0x6e, 0x42, 0x27, 0x20, 0x67, 0x30, 0xe6, 0xd7, 0x25, 0xda, 0x04, 0x4d, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_3357 = { .name = "ecdh_secp256k1_3357", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3357_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3357_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3357_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 900 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3358 for ECDH, tcId is 901 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3358_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x69, 0xd3, 0xcd, 0x0c, 0x70, 0xf1, 0x48, 0x4d, 0x4b, 0x3b, 0xbb, 0xd6, 0x80, 0x67, 0x9e, 0xf4, 0x77, 0xa2, 0x2a, 0x07, 0xdf, 0x08, 0x56, 0x34, 0xf1, 0x17, 0xc4, 0x1c, 0x08, 0xbf, 0x12, 0x30, }; static const unsigned char ecdh_secp256k1_3358_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3358_sharedsecret[] = { 0x62, 0x95, 0x90, 0x89, 0xa7, 0xed, 0x47, 0x7c, 0x22, 0xcb, 0x4f, 0x1c, 0x77, 0x87, 0x32, 0x73, 0x18, 0xfc, 0xcc, 0xa2, 0x5e, 0x5a, 0xa3, 0xe4, 0x46, 0x88, 0xa2, 0x82, 0x93, 0x1a, 0xb0, 0x49, }; static const wycheproof_ecdh_test ecdh_secp256k1_3358 = { .name = "ecdh_secp256k1_3358", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3358_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3358_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3358_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 901 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3359 for ECDH, tcId is 902 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3359_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x30, 0xf6, 0x9b, 0x6e, 0x95, 0xa3, 0x30, 0x32, 0x14, 0xa7, 0x3a, 0xd9, 0x82, 0xa1, 0xf3, 0xee, 0x16, 0x9d, 0x7e, 0xcf, 0x95, 0x8d, 0xe7, 0xb0, 0xbc, 0xa8, 0xa9, 0xff, 0xa3, 0xb8, 0xe8, 0xb3, }; static const unsigned char ecdh_secp256k1_3359_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3359_sharedsecret[] = { 0x04, 0xfd, 0xa5, 0xc0, 0x0a, 0x39, 0x6f, 0xad, 0x6b, 0x80, 0x9a, 0x88, 0x43, 0xde, 0x57, 0x3e, 0x86, 0xb0, 0x40, 0x3d, 0x64, 0x49, 0x95, 0xc8, 0x33, 0x13, 0xda, 0x51, 0xfb, 0x1f, 0x58, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256k1_3359 = { .name = "ecdh_secp256k1_3359", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3359_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3359_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3359_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 902 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3360 for ECDH, tcId is 903 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3360_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x56, 0x95, 0x1e, 0xad, 0x86, 0x1a, 0xa8, 0xec, 0x7a, 0x31, 0x4f, 0xcd, 0x54, 0xf9, 0x05, 0xbd, 0x92, 0xc9, 0x10, 0x78, 0x63, 0x75, 0xeb, 0x7e, 0xe5, 0xf3, 0xa5, 0x5f, 0x8a, 0xa8, 0x78, 0x84, }; static const unsigned char ecdh_secp256k1_3360_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3360_sharedsecret[] = { 0xbb, 0xd9, 0x93, 0x7b, 0xb5, 0x1d, 0x27, 0xf9, 0x4e, 0xca, 0xea, 0x29, 0x71, 0x7d, 0xf7, 0x89, 0xaf, 0xea, 0xc4, 0x41, 0x4e, 0x3e, 0xf2, 0x7b, 0xb2, 0xe6, 0xfa, 0x72, 0x59, 0x18, 0x2e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256k1_3360 = { .name = "ecdh_secp256k1_3360", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3360_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3360_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3360_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 903 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3361 for ECDH, tcId is 904 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3361_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x63, 0xa8, 0x8b, 0x2e, 0x0c, 0x89, 0x87, 0xc6, 0x31, 0x0c, 0xf8, 0x1d, 0x0c, 0x93, 0x5f, 0x00, 0x21, 0x3f, 0x98, 0xa3, 0xda, 0xd2, 0xf4, 0x3c, 0x81, 0x28, 0xfa, 0x31, 0x3a, 0x90, 0xd5, 0x5b, }; static const unsigned char ecdh_secp256k1_3361_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3361_sharedsecret[] = { 0xbb, 0xd9, 0xd3, 0x05, 0xb9, 0x9f, 0xf3, 0xdb, 0x56, 0xf7, 0x7f, 0xea, 0x9e, 0x89, 0xf3, 0x22, 0x60, 0xee, 0x73, 0x26, 0x04, 0x00, 0x67, 0xce, 0x05, 0xdd, 0x15, 0xe0, 0xdc, 0xc1, 0x3e, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256k1_3361 = { .name = "ecdh_secp256k1_3361", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3361_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3361_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3361_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 904 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3362 for ECDH, tcId is 905 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3362_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0xa4, 0x45, 0x6c, 0xa6, 0xd4, 0x05, 0x4d, 0x13, 0xb2, 0x09, 0xf6, 0xd2, 0x62, 0xe6, 0x05, 0x7a, 0xd7, 0x12, 0x56, 0x6f, 0x46, 0xe9, 0xe2, 0x38, 0xe8, 0x94, 0xde, 0xeb, 0xe3, 0xd3, 0xaa, }; static const unsigned char ecdh_secp256k1_3362_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3362_sharedsecret[] = { 0x4f, 0xfb, 0x2c, 0x79, 0x62, 0xe3, 0x2d, 0x53, 0x65, 0xf9, 0x8f, 0x66, 0xbe, 0x62, 0x86, 0x72, 0x4d, 0x40, 0xd5, 0xf0, 0x33, 0x3b, 0xa4, 0xfc, 0x94, 0x3c, 0x0f, 0x0f, 0x06, 0xcd, 0xbb, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256k1_3362 = { .name = "ecdh_secp256k1_3362", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3362_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3362_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3362_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 905 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3363 for ECDH, tcId is 906 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3363_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xed, 0x35, 0x3c, 0x9f, 0x10, 0x39, 0xed, 0xcc, 0x9c, 0xc5, 0x33, 0x6c, 0x03, 0x4d, 0xc1, 0x31, 0xa4, 0x08, 0x76, 0x92, 0xc2, 0xe5, 0x6b, 0xc1, 0xdd, 0x19, 0x04, 0xe3, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_3363_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3363_sharedsecret[] = { 0x7c, 0x07, 0xb1, 0x99, 0xb6, 0xa6, 0x2e, 0x7a, 0xc6, 0x46, 0xc7, 0xe1, 0xde, 0xe9, 0x4a, 0xca, 0x55, 0xde, 0x1a, 0x97, 0x25, 0x1d, 0xdf, 0x92, 0xfc, 0xd4, 0xfe, 0x01, 0x45, 0xb4, 0x0f, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_3363 = { .name = "ecdh_secp256k1_3363", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3363_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3363_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3363_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 906 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3364 for ECDH, tcId is 907 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3364_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x03, 0x1a, 0x6b, 0xf3, 0x44, 0xb8, 0x67, 0x30, 0xac, 0x5c, 0x54, 0xa7, 0x75, 0x1a, 0xef, 0xdb, 0xa1, 0x35, 0x75, 0x9b, 0x9d, 0x53, 0x5c, 0xa6, 0x41, 0x11, 0xf2, 0x98, 0xa3, 0x8d, }; static const unsigned char ecdh_secp256k1_3364_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3364_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_3364 = { .name = "ecdh_secp256k1_3364", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3364_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3364_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3364_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 907 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3365 for ECDH, tcId is 908 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3365_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe5, 0x94, 0x0c, 0xbb, 0x47, 0x98, 0xcf, 0x53, 0xa3, 0xab, 0x58, 0x8a, 0xe5, 0x10, 0x24, 0x5e, 0xca, 0x8a, 0x64, 0x62, 0xac, 0xa3, 0x59, 0xbe, 0xed, 0x0d, 0x67, 0x58, 0xa2, }; static const unsigned char ecdh_secp256k1_3365_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3365_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_3365 = { .name = "ecdh_secp256k1_3365", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3365_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3365_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3365_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 908 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3366 for ECDH, tcId is 909 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3366_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x41, 0x06, 0xa3, 0x69, 0x06, 0x8d, 0x45, 0x4e, 0xa4, 0xb9, 0xc3, 0xac, 0x61, 0x77, 0xf8, 0x7f, 0xc8, 0xfd, 0x3a, 0xa2, 0x40, 0xb2, 0xcc, 0xb4, 0x88, 0x2b, 0xdc, 0xcb, 0xd4, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3366_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3366_sharedsecret[] = { 0xe5, 0x9d, 0xdc, 0x76, 0x46, 0xe4, 0xae, 0xf0, 0x62, 0x3c, 0x71, 0xc4, 0x86, 0xf2, 0x4d, 0x5d, 0x32, 0xf7, 0x25, 0x7e, 0xf3, 0xda, 0xb8, 0xfa, 0x52, 0x4b, 0x39, 0x4e, 0xae, 0x19, 0xeb, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp256k1_3366 = { .name = "ecdh_secp256k1_3366", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3366_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3366_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3366_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 909 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3367 for ECDH, tcId is 910 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3367_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x3b, 0xc6, 0xf0, 0x84, 0x31, 0xe7, 0x29, 0xed, 0x28, 0x63, 0xf2, 0xf4, 0xac, 0x8a, 0x30, 0x27, 0x96, 0x95, 0xc8, 0x10, 0x9c, 0x34, 0x0a, 0x39, 0xfa, 0x86, 0xf4, 0x51, 0xcd, }; static const unsigned char ecdh_secp256k1_3367_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3367_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_3367 = { .name = "ecdh_secp256k1_3367", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3367_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3367_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3367_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 910 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3368 for ECDH, tcId is 911 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3368_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc4, 0x39, 0x0f, 0x7b, 0xce, 0x18, 0xd6, 0x12, 0xd7, 0x9c, 0x0d, 0x0b, 0x53, 0x75, 0xcf, 0xd8, 0x69, 0x6a, 0x37, 0xef, 0x63, 0xcb, 0xf5, 0xc6, 0x04, 0x79, 0x0b, 0xaa, 0x62, }; static const unsigned char ecdh_secp256k1_3368_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_3368_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_3368 = { .name = "ecdh_secp256k1_3368", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3368_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3368_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3368_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 911 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3369 for ECDH, tcId is 912 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3369_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_3369_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3369_sharedsecret[] = { 0xf3, 0x62, 0x28, 0x9d, 0x3a, 0x80, 0x3d, 0x56, 0x8a, 0x0a, 0x42, 0x76, 0x70, 0x70, 0xd7, 0x93, 0xbd, 0x70, 0x89, 0x1f, 0xb5, 0xe0, 0x3b, 0x01, 0x41, 0x3b, 0x6d, 0x3f, 0x1e, 0xb5, 0x2f, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_3369 = { .name = "ecdh_secp256k1_3369", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3369_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3369_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3369_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 912 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3370 for ECDH, tcId is 913 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3370_peerpubkey[] = { 0x22, 0xb9, 0x61, 0xed, 0x14, 0xf6, 0x36, 0x89, 0x03, 0xfe, 0xeb, 0x42, 0xd6, 0x3d, 0x37, 0xbd, 0x11, 0x30, 0x28, 0x93, 0xe8, 0xff, 0x64, 0xc1, 0xa8, 0xe7, 0xfd, 0x07, 0x31, 0x43, 0x9b, 0xb6, 0x98, 0x1a, 0x71, 0x20, 0x63, 0xbf, 0xba, 0x34, 0xd1, 0x77, 0x41, 0x2b, 0xb2, 0x84, 0xc4, 0x36, 0x19, 0x53, 0xde, 0xcf, 0x29, 0xbb, 0xde, 0x01, 0x85, 0xa5, 0x8b, 0xd0, 0x2f, 0x3b, 0xe4, 0x30, }; static const unsigned char ecdh_secp256k1_3370_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3370_sharedsecret[] = { 0xba, 0xe2, 0x29, 0xe6, 0xd0, 0x01, 0xfd, 0x47, 0x74, 0x1a, 0xee, 0xe8, 0x60, 0x04, 0x8a, 0x85, 0x54, 0x32, 0x07, 0x6f, 0xe2, 0x70, 0xf6, 0x32, 0xf4, 0x6d, 0x13, 0x01, 0x02, 0x2b, 0x64, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_3370 = { .name = "ecdh_secp256k1_3370", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3370_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3370_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3370_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 913 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3371 for ECDH, tcId is 914 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3371_peerpubkey[] = { 0x2f, 0x92, 0x45, 0xba, 0xc6, 0xfa, 0x95, 0x9b, 0x4f, 0x02, 0x77, 0x3e, 0x21, 0x41, 0x1f, 0x48, 0xb7, 0x4f, 0x98, 0x06, 0xfe, 0x4d, 0x32, 0xe3, 0x6b, 0xdf, 0x9a, 0xb0, 0x28, 0x14, 0xf3, 0x53, 0x57, 0x45, 0xda, 0x33, 0x4d, 0x06, 0xba, 0xfe, 0x2d, 0x83, 0xc2, 0x35, 0xf0, 0xc7, 0xa2, 0x9f, 0x8f, 0x04, 0x27, 0x22, 0xec, 0x34, 0xe5, 0x3a, 0xa9, 0x6d, 0x97, 0xa3, 0x31, 0xa7, 0x33, 0xef, }; static const unsigned char ecdh_secp256k1_3371_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3371_sharedsecret[] = { 0xe9, 0x0b, 0x9e, 0x81, 0xbd, 0x01, 0x3d, 0x34, 0x9f, 0x70, 0xfd, 0xe1, 0xb5, 0x1b, 0xad, 0x04, 0xc5, 0x81, 0x01, 0x1c, 0x68, 0xf0, 0xc2, 0x05, 0x3a, 0xc9, 0x1d, 0xc8, 0x18, 0x7a, 0xbb, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3371 = { .name = "ecdh_secp256k1_3371", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3371_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3371_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3371_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 914 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3372 for ECDH, tcId is 915 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3372_peerpubkey[] = { 0x1e, 0x39, 0x6a, 0x25, 0x25, 0xbc, 0x3f, 0xb0, 0x0a, 0xf8, 0x98, 0xb0, 0x6b, 0xb8, 0x7c, 0x1d, 0x67, 0x4f, 0xc0, 0x66, 0x2b, 0x86, 0x7f, 0xfa, 0xc0, 0x8e, 0xb0, 0xdb, 0xa2, 0x14, 0x6c, 0x21, 0xa8, 0xb8, 0x42, 0x9f, 0x11, 0x80, 0x36, 0x49, 0xbe, 0x34, 0xae, 0x51, 0x5c, 0x17, 0x3a, 0x43, 0xba, 0x74, 0xf1, 0x3e, 0xbb, 0xd0, 0xe2, 0x61, 0x01, 0x1c, 0x16, 0x2e, 0x57, 0x35, 0x99, 0xb4, }; static const unsigned char ecdh_secp256k1_3372_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3372_sharedsecret[] = { 0xde, 0x7c, 0xde, 0x6b, 0x58, 0x06, 0xa3, 0x25, 0xda, 0x84, 0x5e, 0x9a, 0x19, 0x1e, 0x18, 0x37, 0x78, 0x68, 0x63, 0x6e, 0x5e, 0xf1, 0xf5, 0xfa, 0x08, 0xe7, 0x56, 0xc0, 0x2d, 0x6f, 0xd4, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_3372 = { .name = "ecdh_secp256k1_3372", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3372_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3372_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3372_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 915 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3373 for ECDH, tcId is 916 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3373_peerpubkey[] = { 0x45, 0x21, 0x58, 0x30, 0x3b, 0x37, 0xff, 0x9b, 0xeb, 0xca, 0x72, 0x0e, 0xa1, 0x08, 0x5e, 0xfa, 0xa4, 0xf8, 0x59, 0xdb, 0x95, 0x0a, 0x99, 0xfc, 0xcd, 0x9d, 0x2d, 0x17, 0x92, 0x73, 0xab, 0xb1, 0x08, 0xa9, 0x08, 0x3f, 0x80, 0x75, 0x00, 0x59, 0x43, 0xbd, 0x68, 0xc5, 0x66, 0xec, 0x1f, 0x2f, 0x06, 0x76, 0x64, 0xda, 0x92, 0x12, 0xec, 0x18, 0x33, 0x79, 0x9b, 0xba, 0x88, 0x1d, 0x8e, 0x8b, }; static const unsigned char ecdh_secp256k1_3373_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3373_sharedsecret[] = { 0x96, 0x32, 0x8f, 0xa8, 0x40, 0x38, 0xa6, 0x3c, 0x81, 0x7e, 0xf7, 0xcd, 0x13, 0xb7, 0x97, 0x94, 0xa2, 0xdb, 0x46, 0x7d, 0xd3, 0xbd, 0x87, 0x69, 0xdf, 0x78, 0x2a, 0xda, 0xce, 0x3c, 0x82, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_3373 = { .name = "ecdh_secp256k1_3373", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3373_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3373_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3373_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 916 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3374 for ECDH, tcId is 917 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3374_peerpubkey[] = { 0x5a, 0x2a, 0x40, 0x16, 0x66, 0xe0, 0xf1, 0x97, 0x8c, 0x6f, 0x30, 0xae, 0xc5, 0x3f, 0xee, 0x58, 0xb4, 0xc4, 0xf7, 0x5e, 0x7c, 0x1a, 0x00, 0x15, 0x6a, 0x36, 0xad, 0x27, 0xc0, 0xa5, 0xa2, 0x95, 0x65, 0x85, 0x77, 0xe6, 0x57, 0x22, 0x3b, 0x8c, 0x20, 0xc8, 0x26, 0x24, 0x3b, 0x5a, 0xe2, 0xca, 0x0f, 0x61, 0x48, 0xc2, 0x52, 0x9e, 0xc6, 0xd6, 0x0e, 0xc2, 0x60, 0x91, 0x66, 0x41, 0xd8, 0xfa, }; static const unsigned char ecdh_secp256k1_3374_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3374_sharedsecret[] = { 0xb6, 0x69, 0x9f, 0xe9, 0xa1, 0x8c, 0x2d, 0x0d, 0x14, 0xe9, 0x54, 0x05, 0x13, 0x3e, 0x00, 0x0b, 0x16, 0x7d, 0xc2, 0xe5, 0x45, 0x1d, 0xcd, 0xf0, 0x9a, 0xde, 0x49, 0xba, 0x0d, 0xb2, 0x13, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_3374 = { .name = "ecdh_secp256k1_3374", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3374_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3374_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3374_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 917 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3375 for ECDH, tcId is 918 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3375_peerpubkey[] = { 0xb2, 0xcd, 0x03, 0x95, 0x00, 0xbc, 0xf4, 0x60, 0xe2, 0x4f, 0xd8, 0x03, 0x83, 0xb6, 0x0e, 0xb8, 0x1a, 0x56, 0xf4, 0x67, 0x07, 0x7e, 0x76, 0x82, 0x31, 0x55, 0x3a, 0x0f, 0xa0, 0xda, 0xfc, 0xc8, 0x1d, 0x4a, 0x1b, 0x8f, 0xd8, 0x8b, 0x3b, 0x23, 0xf2, 0xd5, 0x03, 0x28, 0x5c, 0x9d, 0x72, 0xbb, 0xa4, 0x48, 0xc1, 0x5b, 0xc0, 0x16, 0xc6, 0x20, 0xf7, 0x07, 0x59, 0x9a, 0x12, 0x95, 0x46, 0xae, }; static const unsigned char ecdh_secp256k1_3375_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3375_sharedsecret[] = { 0x7a, 0x23, 0xae, 0xe5, 0xb0, 0xfe, 0xd1, 0x66, 0x38, 0xf0, 0xe2, 0xeb, 0x05, 0xfb, 0xa1, 0xfd, 0x44, 0x16, 0x7d, 0x49, 0x6e, 0xbe, 0xb2, 0x74, 0xdb, 0x21, 0x85, 0x93, 0xb4, 0xea, 0x20, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3375 = { .name = "ecdh_secp256k1_3375", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3375_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3375_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3375_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 918 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3376 for ECDH, tcId is 919 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3376_peerpubkey[] = { 0x03, 0xcf, 0x50, 0x0d, 0x83, 0x8c, 0x9f, 0xcb, 0x97, 0xd8, 0xdd, 0xba, 0x24, 0x66, 0xec, 0x6e, 0x47, 0x44, 0x98, 0x31, 0x5d, 0x6c, 0x2a, 0x43, 0x11, 0x03, 0x08, 0xf2, 0x24, 0x59, 0xd4, 0x9b, 0x07, 0x87, 0x5a, 0xae, 0xd2, 0xed, 0xab, 0xed, 0x84, 0x2f, 0xb1, 0x60, 0x8c, 0xa7, 0x06, 0xbd, 0x39, 0xd6, 0x02, 0x1a, 0x60, 0xbc, 0x27, 0x09, 0x47, 0xc1, 0x20, 0x53, 0xc9, 0xdb, 0xaf, 0xa1, }; static const unsigned char ecdh_secp256k1_3376_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3376_sharedsecret[] = { 0xd8, 0xae, 0xf4, 0xc5, 0xc8, 0xb6, 0x08, 0x86, 0xd7, 0xf3, 0x3c, 0xdd, 0x23, 0x90, 0xc2, 0x13, 0x11, 0xe6, 0x9f, 0x60, 0x6d, 0xc7, 0x77, 0xdc, 0x41, 0xc4, 0x3a, 0x46, 0x19, 0x95, 0xc3, 0x15, }; static const wycheproof_ecdh_test ecdh_secp256k1_3376 = { .name = "ecdh_secp256k1_3376", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3376_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3376_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3376_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 919 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3377 for ECDH, tcId is 920 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3377_peerpubkey[] = { 0x0b, 0x6f, 0x2c, 0xb6, 0x29, 0x54, 0xf9, 0x94, 0x56, 0x4e, 0x14, 0x19, 0xcf, 0x9d, 0x59, 0x82, 0xec, 0x65, 0x11, 0xe7, 0xfa, 0x7e, 0x17, 0xf9, 0x68, 0x5e, 0x01, 0x99, 0x49, 0x90, 0x6d, 0xf2, 0xfb, 0x42, 0x9b, 0x05, 0x54, 0xa2, 0x5a, 0x4a, 0x0c, 0x51, 0x02, 0x70, 0xd3, 0xcc, 0x73, 0xe6, 0xcf, 0xec, 0x9b, 0xc2, 0xe6, 0x3c, 0xbd, 0x2b, 0x7a, 0xa0, 0xdb, 0x98, 0xe1, 0xf3, 0x30, 0xcd, }; static const unsigned char ecdh_secp256k1_3377_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3377_sharedsecret[] = { 0x4c, 0x08, 0x92, 0xba, 0xcd, 0x98, 0x3e, 0xc0, 0x01, 0x3f, 0x47, 0x7d, 0x94, 0xd8, 0xfb, 0x85, 0x05, 0x85, 0xef, 0xf2, 0x19, 0x7b, 0x53, 0xd5, 0x66, 0xa9, 0x92, 0x6b, 0xd8, 0x98, 0xd9, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_3377 = { .name = "ecdh_secp256k1_3377", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3377_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3377_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3377_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 920 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3378 for ECDH, tcId is 921 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3378_peerpubkey[] = { 0x30, 0x25, 0xb0, 0x46, 0xf4, 0xa7, 0x0e, 0x06, 0x33, 0x0f, 0x3b, 0x14, 0xc4, 0xfa, 0x3e, 0xc1, 0xe0, 0x4f, 0xe1, 0x9e, 0xd8, 0xc9, 0x03, 0x52, 0xdc, 0x6f, 0xf5, 0x62, 0x7c, 0xa7, 0xb3, 0xb3, 0xa2, 0x64, 0xd5, 0xad, 0x9f, 0x06, 0xd8, 0x48, 0x74, 0x30, 0xf6, 0x54, 0xf7, 0xdd, 0x8f, 0x67, 0x35, 0xfc, 0x83, 0x6e, 0xf4, 0x8d, 0x6d, 0x4d, 0x49, 0x96, 0xa9, 0xc2, 0x0a, 0xf3, 0x20, 0xee, }; static const unsigned char ecdh_secp256k1_3378_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3378_sharedsecret[] = { 0x6e, 0x21, 0x19, 0x93, 0x5a, 0x5c, 0x25, 0x21, 0x18, 0x2a, 0x70, 0x1d, 0x5a, 0x13, 0x21, 0x5a, 0x7d, 0xfb, 0x8a, 0x1f, 0x00, 0x1b, 0x38, 0x87, 0xe8, 0xae, 0x51, 0xbf, 0x25, 0x9b, 0x18, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_3378 = { .name = "ecdh_secp256k1_3378", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3378_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3378_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3378_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 921 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3379 for ECDH, tcId is 922 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3379_peerpubkey[] = { 0x7d, 0x3b, 0x84, 0x28, 0xc8, 0x02, 0x99, 0xa4, 0xff, 0x1d, 0x96, 0xed, 0x75, 0xa5, 0xa4, 0x46, 0x29, 0xfd, 0x03, 0x13, 0xc0, 0x97, 0xc4, 0x78, 0xe5, 0x5f, 0x2f, 0xa0, 0xae, 0x45, 0xb6, 0x91, 0xbb, 0x49, 0x63, 0xb5, 0xcc, 0x09, 0x5a, 0xbe, 0x5d, 0xcf, 0xe9, 0x83, 0x99, 0x31, 0x7f, 0xd5, 0xad, 0x59, 0xf3, 0x67, 0x4c, 0x07, 0x06, 0x3a, 0x91, 0x23, 0xa2, 0xaa, 0x24, 0x81, 0x45, 0x85, }; static const unsigned char ecdh_secp256k1_3379_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3379_sharedsecret[] = { 0x2b, 0x8b, 0x0d, 0x4e, 0xee, 0x83, 0xd1, 0xc4, 0xb1, 0xf2, 0xa6, 0x71, 0x44, 0xfe, 0xf7, 0x8e, 0x7f, 0xaa, 0x86, 0xe6, 0xd5, 0xd6, 0xa8, 0xb7, 0x2b, 0x35, 0x9c, 0x4f, 0x37, 0x3a, 0xdb, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256k1_3379 = { .name = "ecdh_secp256k1_3379", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3379_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3379_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3379_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 922 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3380 for ECDH, tcId is 923 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3380_peerpubkey[] = { 0xfb, 0x77, 0x84, 0x18, 0x84, 0xd3, 0x0f, 0xa5, 0xb7, 0x3a, 0xd2, 0x1d, 0x0a, 0x5a, 0xe4, 0x0c, 0x53, 0xa9, 0xfa, 0xa5, 0xd3, 0x25, 0x69, 0x94, 0x36, 0x33, 0x8c, 0xee, 0x4b, 0xa2, 0x13, 0x69, 0x7b, 0xd7, 0x32, 0xd4, 0x7c, 0x86, 0xdc, 0xd6, 0x36, 0x91, 0x09, 0x7b, 0x19, 0x99, 0xc9, 0xf0, 0xa6, 0x60, 0xa9, 0xc3, 0xd6, 0x13, 0x67, 0x10, 0x39, 0xcf, 0x17, 0x63, 0x46, 0x7d, 0x81, 0x40, }; static const unsigned char ecdh_secp256k1_3380_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3380_sharedsecret[] = { 0x58, 0xdb, 0xf6, 0xad, 0x5e, 0x79, 0x19, 0x56, 0xe8, 0x63, 0x54, 0x27, 0x25, 0x2c, 0xf5, 0xe5, 0x18, 0xbd, 0x10, 0xed, 0x2a, 0x93, 0x6a, 0x1f, 0x37, 0x47, 0xba, 0x4e, 0xa7, 0x98, 0x32, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_3380 = { .name = "ecdh_secp256k1_3380", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3380_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3380_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3380_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 923 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3381 for ECDH, tcId is 924 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3381_peerpubkey[] = { 0x9a, 0xef, 0x51, 0x38, 0x3a, 0x55, 0x6c, 0xf3, 0x17, 0xfe, 0x68, 0xbe, 0xa6, 0xa8, 0x5a, 0x25, 0x48, 0x25, 0xec, 0x5b, 0x3f, 0x13, 0x58, 0xae, 0xa2, 0x09, 0xa4, 0x3c, 0xa3, 0x8c, 0x66, 0x35, 0x1a, 0xee, 0x1a, 0x91, 0xae, 0xb2, 0xa4, 0xdc, 0xad, 0x73, 0x97, 0x22, 0xf4, 0x4c, 0x43, 0x7d, 0xfd, 0x32, 0x73, 0x1f, 0x08, 0x62, 0xdd, 0x75, 0x1b, 0x80, 0xbd, 0x88, 0xd0, 0x96, 0x9b, 0xd6, }; static const unsigned char ecdh_secp256k1_3381_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3381_sharedsecret[] = { 0x12, 0x3b, 0x49, 0x40, 0x58, 0xde, 0xc3, 0x2f, 0xb7, 0x4f, 0xde, 0xb1, 0xaa, 0x9a, 0x4d, 0x52, 0xbf, 0xdd, 0xf2, 0xd9, 0x0b, 0x9b, 0x46, 0xed, 0xbc, 0xf4, 0xcc, 0x95, 0xea, 0x73, 0x62, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256k1_3381 = { .name = "ecdh_secp256k1_3381", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3381_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3381_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3381_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 924 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3382 for ECDH, tcId is 925 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3382_peerpubkey[] = { 0x27, 0x69, 0xdf, 0x33, 0x51, 0x32, 0xf2, 0x02, 0x5e, 0x64, 0x10, 0x48, 0x04, 0x67, 0x87, 0x37, 0x86, 0x0e, 0xe6, 0x6e, 0x07, 0xe6, 0x75, 0xf7, 0x20, 0xe7, 0xd4, 0xef, 0x5c, 0x38, 0xa2, 0xc2, 0x81, 0xf8, 0x0c, 0x3b, 0x6d, 0x47, 0xdb, 0x0a, 0x41, 0x2e, 0x6e, 0xdd, 0x3c, 0x5b, 0xf4, 0x8a, 0xcc, 0xac, 0x14, 0x97, 0xb5, 0x9e, 0x13, 0xb1, 0x5d, 0xfc, 0x2c, 0xd1, 0x5e, 0x6a, 0xe4, 0x7a, }; static const unsigned char ecdh_secp256k1_3382_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3382_sharedsecret[] = { 0xaf, 0x4b, 0x79, 0xef, 0xc4, 0x50, 0x63, 0x0b, 0x8c, 0x02, 0x76, 0x97, 0xe2, 0x37, 0x6f, 0x14, 0x84, 0x2b, 0xab, 0xad, 0x81, 0xbd, 0x68, 0x59, 0x2c, 0x37, 0x27, 0x9a, 0x9f, 0xc4, 0x1a, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_3382 = { .name = "ecdh_secp256k1_3382", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3382_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3382_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3382_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 925 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3383 for ECDH, tcId is 926 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3383_peerpubkey[] = { 0x61, 0xb8, 0xc4, 0x87, 0x50, 0x73, 0x5a, 0x6b, 0x5c, 0xc4, 0x5b, 0x69, 0x19, 0x06, 0xe5, 0xcc, 0x29, 0x2d, 0x59, 0x69, 0xbb, 0x1d, 0x6f, 0xf9, 0x0f, 0xf4, 0x46, 0xd9, 0x48, 0x11, 0xce, 0x7c, 0x28, 0x53, 0x97, 0x74, 0x19, 0xcb, 0xa2, 0xb9, 0x2c, 0xc5, 0x74, 0xab, 0xce, 0x03, 0x04, 0x73, 0xeb, 0x00, 0x83, 0x50, 0x56, 0x6d, 0x7e, 0xaa, 0x24, 0xcb, 0x9d, 0xaa, 0xd7, 0x07, 0x10, 0xed, }; static const unsigned char ecdh_secp256k1_3383_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3383_sharedsecret[] = { 0x08, 0xb4, 0x32, 0x6b, 0x42, 0xd8, 0x17, 0xe2, 0xf8, 0xbc, 0x09, 0xf2, 0x6f, 0x49, 0xb7, 0x20, 0xaf, 0xce, 0xde, 0x10, 0x23, 0x6d, 0x0a, 0x25, 0xe7, 0xe9, 0x51, 0x8e, 0xac, 0x96, 0xe3, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_3383 = { .name = "ecdh_secp256k1_3383", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3383_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3383_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3383_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 926 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3384 for ECDH, tcId is 927 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3384_peerpubkey[] = { 0x16, 0xee, 0xab, 0xc8, 0x02, 0xe3, 0x40, 0x9b, 0x7c, 0x7b, 0x3e, 0x76, 0x07, 0xb7, 0x16, 0x62, 0x43, 0xfc, 0x17, 0x46, 0x29, 0x49, 0x48, 0xfc, 0x81, 0x23, 0xb3, 0x99, 0xcf, 0xb8, 0x99, 0x62, 0xfc, 0xbf, 0x0b, 0xf8, 0xa5, 0x19, 0x1c, 0xe9, 0x58, 0xdd, 0x5e, 0xa3, 0xab, 0x63, 0x3c, 0x09, 0x0d, 0x12, 0x59, 0xfb, 0xd9, 0xa9, 0x77, 0xfd, 0xe0, 0xcc, 0x21, 0x2d, 0x5b, 0x3b, 0x98, 0x58, }; static const unsigned char ecdh_secp256k1_3384_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3384_sharedsecret[] = { 0x52, 0x50, 0x5b, 0xfe, 0xa9, 0xd0, 0x66, 0xf0, 0xaa, 0x90, 0x08, 0xe8, 0x38, 0x23, 0x82, 0xc7, 0xd4, 0x84, 0x60, 0xd7, 0x6f, 0x29, 0x62, 0xe5, 0x09, 0x48, 0x2b, 0x6e, 0xb5, 0x6e, 0x0a, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3384 = { .name = "ecdh_secp256k1_3384", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3384_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3384_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3384_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 927 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3385 for ECDH, tcId is 928 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3385_peerpubkey[] = { 0x63, 0xb1, 0xd9, 0x94, 0x91, 0xb4, 0x6c, 0xee, 0x7e, 0x18, 0x6a, 0x24, 0x3b, 0xce, 0x1c, 0xc3, 0x86, 0x29, 0x75, 0x71, 0x85, 0x0a, 0x10, 0xd9, 0xa2, 0x96, 0x2d, 0x76, 0x9a, 0x41, 0x1c, 0x61, 0x63, 0x45, 0xe2, 0x85, 0x32, 0xca, 0xc3, 0x99, 0x60, 0xa2, 0xf1, 0x2b, 0xbd, 0x03, 0x20, 0x5b, 0x77, 0x46, 0x4a, 0x80, 0xa0, 0x41, 0x64, 0x46, 0xe6, 0xff, 0x85, 0x85, 0x1a, 0x00, 0x9f, 0x64, }; static const unsigned char ecdh_secp256k1_3385_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3385_sharedsecret[] = { 0x1e, 0x64, 0x64, 0xf7, 0x8f, 0xbe, 0xde, 0xcd, 0x82, 0x1a, 0x4f, 0xa0, 0x4d, 0x7e, 0x8f, 0x13, 0x64, 0xd3, 0x24, 0xbe, 0x24, 0xd1, 0x22, 0x12, 0x99, 0x46, 0x83, 0xfc, 0x2b, 0x6b, 0xb1, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3385 = { .name = "ecdh_secp256k1_3385", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3385_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3385_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3385_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 928 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3386 for ECDH, tcId is 929 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3386_peerpubkey[] = { 0x75, 0xc7, 0x8a, 0xe9, 0xc9, 0x46, 0x13, 0xdd, 0x05, 0x1e, 0xed, 0x7d, 0xd7, 0xdf, 0x66, 0xa0, 0x81, 0xcd, 0x0a, 0xc2, 0x7c, 0xf6, 0x5e, 0x4e, 0xf0, 0xea, 0x82, 0x62, 0x76, 0xc5, 0xef, 0xcf, 0xa9, 0x2e, 0xd1, 0xc4, 0xff, 0xbb, 0x84, 0x30, 0x1f, 0x5b, 0xb1, 0xc6, 0xbc, 0x9e, 0x14, 0xc6, 0xe6, 0xda, 0xd1, 0xe0, 0x4a, 0x28, 0x78, 0x26, 0x52, 0x84, 0x78, 0xf9, 0xae, 0x16, 0x09, 0xc2, }; static const unsigned char ecdh_secp256k1_3386_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3386_sharedsecret[] = { 0xb4, 0xfc, 0xb7, 0x2d, 0x1f, 0x81, 0xdb, 0x21, 0x1d, 0xd9, 0x40, 0x39, 0xa1, 0x36, 0x8c, 0x2c, 0x4e, 0xff, 0xd1, 0xef, 0xe8, 0x32, 0xf1, 0xa1, 0xdb, 0x2d, 0xae, 0x52, 0x53, 0xc2, 0x73, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_3386 = { .name = "ecdh_secp256k1_3386", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3386_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3386_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3386_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 929 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3387 for ECDH, tcId is 930 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3387_peerpubkey[] = { 0x07, 0x28, 0x38, 0xe4, 0xf9, 0x72, 0xd4, 0xa6, 0x5d, 0x25, 0x8d, 0xbc, 0x32, 0xa5, 0x30, 0xfd, 0xe2, 0xe8, 0x73, 0x53, 0x7b, 0x5a, 0x4a, 0xa7, 0x07, 0xcf, 0x81, 0xce, 0xcc, 0x0f, 0x7f, 0xf1, 0x2e, 0x4b, 0x60, 0x8b, 0x9e, 0x32, 0x1c, 0x9d, 0xb7, 0x2c, 0xf4, 0xd9, 0xba, 0x4b, 0x3c, 0x2c, 0x13, 0x75, 0x60, 0x40, 0xd7, 0x7a, 0xf6, 0xbd, 0x25, 0x1b, 0xc2, 0x4c, 0xf1, 0x86, 0x76, 0xf1, }; static const unsigned char ecdh_secp256k1_3387_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_3387_sharedsecret[] = { 0xf4, 0xf4, 0x92, 0x6b, 0x6f, 0x64, 0xe4, 0x7a, 0xbe, 0xad, 0xbd, 0xc5, 0xa8, 0xa6, 0x77, 0x06, 0xa4, 0x2e, 0x00, 0x77, 0x4e, 0x1c, 0xc5, 0xaf, 0xda, 0x7d, 0x57, 0xce, 0xd6, 0x42, 0x3b, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256k1_3387 = { .name = "ecdh_secp256k1_3387", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3387_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3387_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3387_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 930 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3388 for ECDH, tcId is 931 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3388_peerpubkey[] = { 0x43, 0x01, 0xf5, 0x4b, 0x35, 0x92, 0xd1, 0xea, 0x2a, 0x40, 0x98, 0x9c, 0x94, 0x26, 0x1d, 0x2b, 0x1d, 0x1f, 0xe2, 0x97, 0xed, 0x6e, 0xd6, 0x41, 0x25, 0xee, 0x24, 0x1d, 0xe0, 0x5d, 0x00, 0x4b, 0xc7, 0x90, 0x14, 0xf1, 0x56, 0xe9, 0xb7, 0xbf, 0xb3, 0x6b, 0x8a, 0xd2, 0xd6, 0x6d, 0x55, 0xf3, 0xa7, 0x53, 0x82, 0x9a, 0x9d, 0xdb, 0x86, 0x05, 0x5b, 0xb9, 0x16, 0x6d, 0xd3, 0xaf, 0xf4, 0x57, }; static const unsigned char ecdh_secp256k1_3388_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3388_sharedsecret[] = { 0xfd, 0xc1, 0x5a, 0x26, 0xab, 0xba, 0xde, 0x34, 0x16, 0xe1, 0x20, 0x1a, 0x6d, 0x73, 0x71, 0x28, 0xa2, 0xf8, 0x97, 0xf0, 0xd8, 0x81, 0x08, 0x64, 0x54, 0x53, 0xa1, 0xb3, 0xdd, 0xd0, 0x56, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256k1_3388 = { .name = "ecdh_secp256k1_3388", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3388_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3388_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3388_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 931 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3389 for ECDH, tcId is 932 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3389_peerpubkey[] = { 0x36, 0xb0, 0xf6, 0x6b, 0xf5, 0xf9, 0xfd, 0x4b, 0x2d, 0xf9, 0xcd, 0xae, 0x2a, 0xf8, 0x73, 0xa0, 0x75, 0xc5, 0x54, 0x97, 0xd7, 0xfe, 0xc4, 0x73, 0x7a, 0x7c, 0x96, 0x43, 0xc2, 0xc7, 0x6f, 0xe5, 0xda, 0x9f, 0x72, 0x87, 0xb3, 0xcd, 0x4e, 0x5f, 0x05, 0xb9, 0xa1, 0xa4, 0xf6, 0x4e, 0x8a, 0x8d, 0x96, 0xc3, 0x16, 0xe4, 0x52, 0x59, 0x4d, 0x02, 0xa4, 0x59, 0x2a, 0x21, 0x07, 0xec, 0xe9, 0x0b, }; static const unsigned char ecdh_secp256k1_3389_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3389_sharedsecret[] = { 0xe3, 0x63, 0x48, 0xe3, 0xa4, 0x64, 0xbc, 0x51, 0x83, 0x84, 0x80, 0x6c, 0x54, 0x8e, 0x15, 0x6e, 0xdd, 0x99, 0x4c, 0xb6, 0x94, 0x64, 0x73, 0xc2, 0x65, 0xa2, 0x49, 0x14, 0xd5, 0x55, 0x9f, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3389 = { .name = "ecdh_secp256k1_3389", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3389_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3389_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3389_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 932 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3390 for ECDH, tcId is 933 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3390_peerpubkey[] = { 0x82, 0xab, 0xb5, 0x8a, 0xfb, 0x62, 0xd2, 0x61, 0x87, 0x8b, 0xde, 0xe1, 0x26, 0x64, 0xdf, 0x14, 0x99, 0xb8, 0x24, 0xf1, 0xd6, 0x0f, 0xb0, 0x28, 0x11, 0x64, 0x2c, 0xb0, 0x2f, 0x4a, 0xff, 0x5d, 0x30, 0x71, 0x98, 0x35, 0xd9, 0x6f, 0x32, 0xdc, 0x03, 0xc4, 0x9d, 0x81, 0x5f, 0xfa, 0x21, 0x28, 0x57, 0x33, 0x13, 0x7f, 0x50, 0x7c, 0xe3, 0x16, 0xce, 0xc6, 0x5c, 0xa5, 0x62, 0xce, 0x2a, 0xd0, }; static const unsigned char ecdh_secp256k1_3390_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3390_sharedsecret[] = { 0x7d, 0x65, 0x68, 0x4b, 0xdc, 0xe4, 0xac, 0x95, 0xdb, 0x00, 0x2f, 0xba, 0x35, 0x0d, 0xc8, 0x9d, 0x0d, 0x0f, 0xc9, 0xe1, 0x22, 0x60, 0xd0, 0x18, 0x68, 0x54, 0x3f, 0x2a, 0x6c, 0x8c, 0x5b, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3390 = { .name = "ecdh_secp256k1_3390", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3390_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3390_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3390_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 933 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3391 for ECDH, tcId is 934 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3391_peerpubkey[] = { 0x7d, 0xe7, 0xb7, 0xcf, 0x5c, 0x5f, 0xf4, 0x24, 0x0d, 0xaf, 0x31, 0xa5, 0x0a, 0xc6, 0xcf, 0x6b, 0x16, 0x9a, 0xad, 0x07, 0xd2, 0xc5, 0x93, 0x6c, 0x73, 0xb8, 0x3e, 0xe3, 0x98, 0x7e, 0x22, 0xa1, 0x94, 0x0c, 0x1b, 0xd7, 0x8e, 0x4b, 0xe6, 0x69, 0x25, 0x85, 0xc9, 0x9d, 0xc9, 0x2b, 0x47, 0x67, 0x1e, 0x2c, 0xcb, 0xcf, 0x12, 0xa9, 0xa9, 0x85, 0x4c, 0x66, 0x07, 0xf9, 0x82, 0x13, 0xc1, 0x08, }; static const unsigned char ecdh_secp256k1_3391_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3391_sharedsecret[] = { 0x6e, 0xc6, 0xba, 0x23, 0x74, 0xab, 0x0a, 0x9a, 0xe6, 0x63, 0xf3, 0xf7, 0x36, 0x71, 0x15, 0x8a, 0xaa, 0xba, 0xc3, 0xac, 0x68, 0x9d, 0x6c, 0x27, 0x02, 0xeb, 0xdf, 0x41, 0x86, 0x59, 0x7a, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256k1_3391 = { .name = "ecdh_secp256k1_3391", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3391_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3391_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3391_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 934 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3392 for ECDH, tcId is 935 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3392_peerpubkey[] = { 0x06, 0xfa, 0x93, 0x52, 0x72, 0x94, 0xc8, 0x53, 0x3a, 0xa4, 0x01, 0xce, 0x4e, 0x6c, 0x8a, 0xeb, 0x05, 0xa6, 0x92, 0x1b, 0xc4, 0x87, 0x98, 0xa8, 0xe2, 0x0a, 0x0f, 0x84, 0xa5, 0x08, 0x5a, 0xf4, 0xec, 0x48, 0x28, 0xf8, 0x39, 0x4d, 0x22, 0xde, 0x43, 0x04, 0x31, 0x17, 0xb8, 0x59, 0x5f, 0xb1, 0x13, 0x24, 0x5f, 0x72, 0x85, 0xcb, 0x35, 0x43, 0x93, 0x89, 0xe8, 0x54, 0x7a, 0x10, 0x50, 0x39, }; static const unsigned char ecdh_secp256k1_3392_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3392_sharedsecret[] = { 0x6d, 0x6e, 0x87, 0x78, 0x7d, 0x0a, 0x94, 0x7e, 0xcf, 0xbf, 0x79, 0x62, 0x14, 0x2f, 0xde, 0x8f, 0xf9, 0xb5, 0x90, 0xe4, 0x72, 0xc0, 0xc4, 0x6b, 0xbc, 0x5d, 0x39, 0x02, 0x0e, 0x4f, 0x78, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256k1_3392 = { .name = "ecdh_secp256k1_3392", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3392_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3392_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3392_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 935 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3393 for ECDH, tcId is 936 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3393_peerpubkey[] = { 0x8a, 0x4f, 0x62, 0x52, 0x10, 0xb4, 0x48, 0xdc, 0x84, 0x6a, 0xd2, 0x39, 0x9b, 0x31, 0xcd, 0x1b, 0xc3, 0xf1, 0x78, 0x8c, 0x7b, 0xed, 0x69, 0xcc, 0x1c, 0xb7, 0xaa, 0xc8, 0xab, 0x28, 0xd5, 0x39, 0x30, 0x07, 0xc6, 0xf1, 0x1f, 0x3e, 0x24, 0x8d, 0xe6, 0x51, 0xc6, 0x62, 0x2d, 0xe3, 0x08, 0xee, 0x55, 0x76, 0xbe, 0x84, 0xef, 0x1e, 0xd8, 0xed, 0x91, 0xfd, 0x24, 0x4f, 0x14, 0xfc, 0x20, 0x53, }; static const unsigned char ecdh_secp256k1_3393_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3393_sharedsecret[] = { 0x56, 0xea, 0x43, 0x82, 0xf8, 0xe1, 0xab, 0xfc, 0xb2, 0x11, 0x98, 0x9f, 0x50, 0x06, 0x76, 0x44, 0x9a, 0xbc, 0xeb, 0xfe, 0x2c, 0xd2, 0x20, 0x4d, 0xd8, 0x92, 0x3d, 0xeb, 0x53, 0x0a, 0x6c, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256k1_3393 = { .name = "ecdh_secp256k1_3393", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3393_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3393_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3393_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 936 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3394 for ECDH, tcId is 937 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3394_peerpubkey[] = { 0x88, 0x5e, 0x45, 0x2c, 0xbb, 0x0e, 0x4b, 0x2a, 0x97, 0x68, 0xb7, 0x59, 0x6c, 0x15, 0x31, 0x98, 0xa9, 0x22, 0xda, 0xbb, 0xb8, 0xd0, 0xca, 0x1d, 0xc3, 0xfa, 0xf4, 0xf0, 0x97, 0xf0, 0x91, 0x13, 0xbe, 0x9a, 0xaa, 0x63, 0x09, 0x18, 0xd5, 0x05, 0x60, 0x53, 0xec, 0xf7, 0x38, 0x8f, 0x44, 0x8b, 0x91, 0x2d, 0x9c, 0xcf, 0xbe, 0xd8, 0x0d, 0x7c, 0xa2, 0x3c, 0x0e, 0x79, 0x91, 0xa3, 0x49, 0x01, }; static const unsigned char ecdh_secp256k1_3394_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3394_sharedsecret[] = { 0x2c, 0x36, 0x2c, 0x27, 0xb3, 0x10, 0x7e, 0xa8, 0xa0, 0x42, 0xc0, 0x5c, 0xc5, 0x0c, 0x4a, 0x8d, 0xda, 0xae, 0x8c, 0xdc, 0x33, 0xd0, 0x58, 0x49, 0x29, 0x51, 0xa0, 0x3f, 0x8d, 0x8f, 0x81, 0x94, }; static const wycheproof_ecdh_test ecdh_secp256k1_3394 = { .name = "ecdh_secp256k1_3394", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3394_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3394_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3394_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 937 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3395 for ECDH, tcId is 938 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3395_peerpubkey[] = { 0xe2, 0x26, 0xdf, 0x1f, 0xcf, 0x7c, 0x13, 0x7a, 0x41, 0xc9, 0x20, 0xff, 0x74, 0xd6, 0x20, 0x4f, 0xaa, 0x20, 0x93, 0xee, 0xff, 0xc4, 0xa9, 0xee, 0x0a, 0x23, 0xfb, 0x2e, 0x99, 0x40, 0x41, 0xc3, 0x45, 0x71, 0x07, 0x44, 0x2c, 0xc4, 0xb3, 0xaf, 0x63, 0x1c, 0x4d, 0xfb, 0x5f, 0x53, 0xe2, 0xc5, 0x60, 0x8b, 0xed, 0x04, 0xff, 0x66, 0x53, 0xb7, 0x71, 0xf7, 0xcd, 0x46, 0x70, 0xf8, 0x10, 0x34, }; static const unsigned char ecdh_secp256k1_3395_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3395_sharedsecret[] = { 0x01, 0x88, 0xda, 0x28, 0x9c, 0xe8, 0x97, 0x4a, 0x4f, 0x44, 0x52, 0x09, 0x60, 0xfa, 0xe8, 0xb3, 0x53, 0x75, 0x0a, 0xca, 0x78, 0x92, 0x72, 0xe9, 0xf9, 0x0d, 0x12, 0x15, 0xba, 0xcd, 0xd8, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_3395 = { .name = "ecdh_secp256k1_3395", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3395_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3395_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3395_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 938 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3396 for ECDH, tcId is 939 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3396_peerpubkey[] = { 0xf5, 0x3e, 0xad, 0x95, 0x75, 0xee, 0xbb, 0xa3, 0xb0, 0xeb, 0x0d, 0x03, 0x3a, 0xcb, 0x7e, 0x99, 0x38, 0x8e, 0x85, 0x90, 0xb4, 0xad, 0x2d, 0xb5, 0xea, 0x4f, 0x6b, 0xd9, 0xbd, 0xe1, 0x69, 0x95, 0xb5, 0xf3, 0xab, 0x15, 0xf9, 0x73, 0xca, 0x9e, 0x3a, 0xa9, 0xdf, 0xe2, 0x91, 0x4e, 0xeb, 0xbd, 0x2e, 0x11, 0x01, 0x0b, 0x45, 0x55, 0x13, 0x90, 0x79, 0x08, 0x80, 0x03, 0x96, 0xfb, 0x9d, 0x1a, }; static const unsigned char ecdh_secp256k1_3396_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3396_sharedsecret[] = { 0xf7, 0x8b, 0xd7, 0xff, 0x89, 0x9c, 0x81, 0xb8, 0x66, 0xbe, 0x17, 0xc0, 0xa9, 0x4b, 0xec, 0x59, 0x28, 0x38, 0xd7, 0x8d, 0x1f, 0x0c, 0x0c, 0xf5, 0x32, 0x82, 0x9b, 0x6c, 0x46, 0x4c, 0x28, 0xac, }; static const wycheproof_ecdh_test ecdh_secp256k1_3396 = { .name = "ecdh_secp256k1_3396", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3396_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3396_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3396_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 939 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3397 for ECDH, tcId is 940 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3397_peerpubkey[] = { 0x88, 0x27, 0x73, 0xec, 0x7e, 0x10, 0x60, 0x5c, 0x8f, 0x9e, 0x2e, 0x3b, 0x87, 0x00, 0x94, 0x3b, 0xe2, 0x6b, 0xcc, 0x4c, 0x9d, 0x1f, 0xed, 0xf2, 0xbd, 0xcf, 0xb3, 0x69, 0x94, 0xf2, 0x3c, 0x7f, 0x8e, 0x5d, 0x05, 0xb2, 0xfd, 0xd2, 0x95, 0x4b, 0x61, 0x88, 0x73, 0x6e, 0xbe, 0x3f, 0x56, 0x46, 0x60, 0x2a, 0x58, 0xd9, 0x78, 0xb7, 0x16, 0xb5, 0x30, 0x4e, 0xa5, 0x67, 0x77, 0x69, 0x1d, 0xb3, }; static const unsigned char ecdh_secp256k1_3397_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3397_sharedsecret[] = { 0x99, 0xf6, 0x15, 0x1f, 0xba, 0x28, 0x06, 0x7e, 0xac, 0x73, 0x35, 0x49, 0x20, 0xfc, 0xc1, 0xfa, 0x17, 0xfe, 0xa6, 0x32, 0x25, 0xa5, 0x83, 0x32, 0x3c, 0xb6, 0xc3, 0xd4, 0x05, 0x4e, 0xca, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_3397 = { .name = "ecdh_secp256k1_3397", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3397_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3397_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3397_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 940 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3398 for ECDH, tcId is 941 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3398_peerpubkey[] = { 0xa6, 0x0b, 0x64, 0x58, 0x25, 0x6b, 0x38, 0xd4, 0x64, 0x44, 0x51, 0xb4, 0x90, 0xbd, 0x35, 0x7f, 0xea, 0xde, 0x7b, 0xb6, 0xb8, 0x45, 0x3c, 0x1f, 0xc8, 0x97, 0x94, 0xd5, 0xa4, 0x5f, 0x76, 0x8d, 0x81, 0xee, 0xe9, 0x05, 0x48, 0xa5, 0x9e, 0x5d, 0x2c, 0xec, 0xd7, 0x2d, 0x4b, 0x0b, 0x5e, 0x65, 0x74, 0xd6, 0x5a, 0x9d, 0x83, 0x7c, 0x7c, 0x59, 0x0d, 0x1d, 0x12, 0x5e, 0xe3, 0x7c, 0x4d, 0x51, }; static const unsigned char ecdh_secp256k1_3398_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3398_sharedsecret[] = { 0x68, 0xca, 0x39, 0xde, 0x0c, 0xec, 0x22, 0x97, 0x52, 0x9f, 0x56, 0x87, 0x6b, 0xc3, 0xde, 0x7b, 0xe3, 0x70, 0xf3, 0x00, 0xe8, 0x7c, 0x2b, 0x09, 0xcd, 0xbb, 0x51, 0x20, 0x38, 0x2d, 0x69, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_3398 = { .name = "ecdh_secp256k1_3398", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3398_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3398_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3398_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 941 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3399 for ECDH, tcId is 942 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3399_peerpubkey[] = { 0xcb, 0xb0, 0xde, 0xab, 0x12, 0x57, 0x54, 0xf1, 0xfd, 0xb2, 0x03, 0x8b, 0x04, 0x34, 0xed, 0x9c, 0xb3, 0xfb, 0x53, 0xab, 0x73, 0x53, 0x91, 0x12, 0x99, 0x94, 0xa5, 0x35, 0xd9, 0x25, 0xf6, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3399_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3399_sharedsecret[] = { 0xaf, 0x30, 0x6c, 0x99, 0x3d, 0xee, 0x0d, 0xcf, 0xc4, 0x41, 0xeb, 0xe5, 0x33, 0x60, 0xb5, 0x69, 0xe2, 0x1f, 0x18, 0x60, 0x52, 0xdb, 0x81, 0x97, 0xf4, 0xa1, 0x24, 0xfa, 0x77, 0xb9, 0x81, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_3399 = { .name = "ecdh_secp256k1_3399", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3399_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3399_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3399_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 942 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3400 for ECDH, tcId is 943 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3400_peerpubkey[] = { 0x24, 0x80, 0x0d, 0xea, 0xc3, 0xfe, 0x4c, 0x76, 0x5b, 0x6d, 0xec, 0x80, 0xea, 0x29, 0x9d, 0x77, 0x1a, 0xda, 0x4f, 0x30, 0xe4, 0xe1, 0x56, 0xb3, 0xac, 0xb7, 0x20, 0xdb, 0xa3, 0x73, 0x94, 0x71, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_3400_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3400_sharedsecret[] = { 0xaa, 0x7f, 0xc9, 0xfe, 0x60, 0x44, 0x5e, 0xac, 0x24, 0x51, 0xec, 0x24, 0xc1, 0xa4, 0x49, 0x09, 0x84, 0x2f, 0xa1, 0x40, 0x25, 0xf2, 0xa1, 0xd3, 0xdd, 0x7f, 0x31, 0x01, 0x9f, 0x96, 0x2b, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3400 = { .name = "ecdh_secp256k1_3400", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3400_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3400_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3400_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 943 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3401 for ECDH, tcId is 944 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3401_peerpubkey[] = { 0x8f, 0x33, 0x65, 0x2f, 0x5b, 0xda, 0x2c, 0x32, 0x95, 0x3e, 0xbf, 0x2d, 0x2e, 0xca, 0x95, 0xe0, 0x5b, 0x17, 0xc8, 0xab, 0x7d, 0x99, 0x60, 0x1b, 0xee, 0x44, 0x5d, 0xf8, 0x44, 0xd4, 0x6a, 0x36, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_3401_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3401_sharedsecret[] = { 0x08, 0x2a, 0x43, 0xa8, 0x41, 0x77, 0x82, 0xa7, 0x95, 0xc8, 0xd4, 0xc7, 0x0f, 0x43, 0xed, 0xca, 0xbb, 0xc2, 0x45, 0xa8, 0x82, 0x0a, 0xc0, 0x1b, 0xe9, 0x0c, 0x1a, 0xcf, 0x03, 0x43, 0xba, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256k1_3401 = { .name = "ecdh_secp256k1_3401", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3401_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3401_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3401_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 944 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3402 for ECDH, tcId is 945 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3402_peerpubkey[] = { 0x14, 0x6d, 0x3b, 0x65, 0xad, 0xd9, 0xf5, 0x4c, 0xcc, 0xa2, 0x85, 0x33, 0xc8, 0x8e, 0x2c, 0xbc, 0x63, 0xf7, 0x44, 0x3e, 0x16, 0x58, 0x78, 0x3a, 0xb4, 0x1f, 0x8e, 0xf9, 0x7c, 0x2a, 0x10, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3402_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3402_sharedsecret[] = { 0x70, 0x81, 0x0b, 0x47, 0x80, 0xa6, 0x3c, 0x86, 0x04, 0x27, 0xd3, 0xa0, 0x26, 0x9f, 0x6c, 0x9d, 0x3c, 0x2e, 0xa3, 0x34, 0x94, 0xc5, 0x0e, 0x58, 0xa2, 0x0b, 0x94, 0x80, 0x03, 0x4b, 0xc7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3402 = { .name = "ecdh_secp256k1_3402", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3402_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3402_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3402_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 945 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3403 for ECDH, tcId is 946 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3403_peerpubkey[] = { 0xb0, 0x34, 0x44, 0x18, 0xa4, 0x50, 0x4c, 0x07, 0xe7, 0x92, 0x1e, 0xd9, 0xf0, 0x07, 0x14, 0xb5, 0xd3, 0x90, 0xe5, 0xcb, 0x5e, 0x79, 0x3b, 0xb1, 0x46, 0x5f, 0x73, 0x17, 0x4f, 0x6c, 0x26, 0xfe, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_3403_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3403_sharedsecret[] = { 0xa7, 0xd3, 0x4e, 0xe2, 0x5f, 0xbb, 0x35, 0x4f, 0x86, 0x38, 0xd3, 0x18, 0x50, 0xda, 0xb4, 0x1e, 0x4b, 0x08, 0x68, 0x86, 0xf7, 0xed, 0x3f, 0x2d, 0x6e, 0x03, 0x5b, 0xce, 0xb8, 0xca, 0xb8, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3403 = { .name = "ecdh_secp256k1_3403", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3403_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3403_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3403_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 946 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3404 for ECDH, tcId is 947 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3404_peerpubkey[] = { 0x8a, 0x98, 0xc1, 0xbc, 0x6b, 0xe7, 0x5c, 0x57, 0x96, 0xbe, 0x4b, 0x29, 0xdd, 0x88, 0x5c, 0x34, 0x85, 0xe7, 0x5e, 0x37, 0xb4, 0xcc, 0xac, 0x9b, 0x37, 0x25, 0x1e, 0x67, 0x17, 0x5f, 0xf0, 0xd6, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_3404_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3404_sharedsecret[] = { 0x3f, 0x09, 0xcb, 0xc1, 0x2e, 0xd1, 0x70, 0x1f, 0x59, 0xdd, 0x5a, 0xa8, 0x3d, 0xae, 0xf5, 0xe6, 0x67, 0x6a, 0xdf, 0x7f, 0xd2, 0x35, 0xc5, 0x3f, 0x69, 0xae, 0xb5, 0xd5, 0xb6, 0x77, 0x99, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3404 = { .name = "ecdh_secp256k1_3404", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3404_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3404_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3404_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 947 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3405 for ECDH, tcId is 948 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3405_peerpubkey[] = { 0x1f, 0xe1, 0xe5, 0xef, 0x3f, 0xce, 0xb5, 0xc1, 0x35, 0xab, 0x77, 0x41, 0x33, 0x3c, 0xe5, 0xa6, 0xe8, 0x0d, 0x68, 0x16, 0x76, 0x53, 0xf6, 0xb2, 0xb2, 0x4b, 0xcb, 0xcf, 0xaa, 0xaf, 0xf5, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3405_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3405_sharedsecret[] = { 0xe0, 0x4e, 0x88, 0x1f, 0x41, 0x6b, 0xb5, 0xaa, 0x37, 0x96, 0x40, 0x7a, 0xa5, 0xff, 0xdd, 0xf8, 0xe1, 0xb2, 0x44, 0x6b, 0x18, 0x5f, 0x70, 0x0f, 0x69, 0x53, 0x46, 0x83, 0x84, 0xfa, 0xaf, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256k1_3405 = { .name = "ecdh_secp256k1_3405", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3405_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3405_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3405_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 948 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3406 for ECDH, tcId is 949 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3406_peerpubkey[] = { 0x2b, 0x4b, 0xad, 0xfc, 0x97, 0xb1, 0x67, 0x81, 0xbc, 0xff, 0xf4, 0xa5, 0x25, 0xcf, 0x4d, 0xd3, 0x11, 0x94, 0xcb, 0x03, 0xbc, 0xa5, 0x6d, 0x9b, 0x0c, 0xe9, 0x6c, 0x0c, 0x0d, 0x20, 0x40, 0xc0, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_3406_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3406_sharedsecret[] = { 0xad, 0xac, 0xe7, 0x1f, 0x40, 0x00, 0x6c, 0x04, 0x55, 0x75, 0x40, 0xc2, 0xed, 0x81, 0x02, 0xd8, 0x30, 0xc7, 0xf6, 0x38, 0xe2, 0x20, 0x1e, 0xfe, 0xb4, 0x7d, 0x73, 0x2d, 0xa7, 0x9f, 0x13, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256k1_3406 = { .name = "ecdh_secp256k1_3406", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3406_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3406_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3406_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 949 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3407 for ECDH, tcId is 950 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3407_peerpubkey[] = { 0xe6, 0x33, 0xd9, 0x14, 0x38, 0x3e, 0x77, 0x75, 0xd4, 0x02, 0xf5, 0xa8, 0xf3, 0xad, 0x0d, 0xeb, 0x1f, 0x00, 0xd9, 0x1c, 0xcd, 0x99, 0xf3, 0x48, 0xda, 0x96, 0x83, 0x9e, 0xa3, 0xcb, 0x9d, 0x52, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_3407_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3407_sharedsecret[] = { 0xb8, 0xcb, 0xf0, 0x96, 0x8f, 0xb7, 0x0d, 0x39, 0x10, 0x59, 0xd0, 0x90, 0xb3, 0x0d, 0x1c, 0x4e, 0xdc, 0xd2, 0xda, 0xd7, 0xab, 0xbf, 0x7a, 0xa4, 0xad, 0x45, 0x2f, 0x5a, 0x46, 0x44, 0xa7, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp256k1_3407 = { .name = "ecdh_secp256k1_3407", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3407_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3407_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3407_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 950 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3408 for ECDH, tcId is 951 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3408_peerpubkey[] = { 0xd1, 0xc1, 0xb5, 0x09, 0xc9, 0xdd, 0xb7, 0x62, 0x21, 0xa0, 0x66, 0xa2, 0x2a, 0x3c, 0x33, 0x3f, 0xee, 0x5e, 0x1d, 0x2d, 0x1a, 0x4b, 0xab, 0xde, 0x4a, 0x1d, 0x33, 0xec, 0x24, 0x7a, 0x7e, 0xa3, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_3408_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3408_sharedsecret[] = { 0x07, 0x25, 0x72, 0x45, 0xda, 0x4b, 0xc2, 0x66, 0x96, 0xe2, 0x45, 0x53, 0x1c, 0x7a, 0x97, 0xc2, 0xb5, 0x29, 0xf1, 0xca, 0x2d, 0x8c, 0x05, 0x16, 0x26, 0x52, 0x0e, 0x6b, 0x83, 0xd7, 0xfa, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3408 = { .name = "ecdh_secp256k1_3408", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3408_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3408_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3408_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 951 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3409 for ECDH, tcId is 952 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3409_peerpubkey[] = { 0x75, 0x5d, 0x88, 0x45, 0xe7, 0xb4, 0xfd, 0x27, 0x03, 0x53, 0xf6, 0x99, 0x9e, 0x97, 0x24, 0x22, 0x24, 0x01, 0x55, 0x27, 0xbf, 0x3f, 0x94, 0xcc, 0x2c, 0x69, 0x3d, 0x1b, 0x6b, 0xa1, 0x22, 0x98, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_3409_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3409_sharedsecret[] = { 0xd6, 0xaa, 0x40, 0x1b, 0x9c, 0xe1, 0x7e, 0xcf, 0x7d, 0xd7, 0xb0, 0x86, 0x1d, 0xfe, 0xb3, 0x6b, 0xb1, 0x74, 0x9d, 0x12, 0x53, 0x39, 0x91, 0xe6, 0x6c, 0x0d, 0x94, 0x22, 0x81, 0xae, 0x13, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_3409 = { .name = "ecdh_secp256k1_3409", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3409_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3409_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3409_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 952 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3410 for ECDH, tcId is 953 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3410_peerpubkey[] = { 0xc6, 0xf9, 0xfc, 0x86, 0x44, 0xba, 0x5c, 0x9e, 0xa9, 0xbe, 0xb1, 0x2c, 0xe2, 0xcb, 0x91, 0x1c, 0x54, 0x87, 0xe8, 0xb1, 0xbe, 0x91, 0xd5, 0xa1, 0x68, 0x31, 0x8f, 0x4a, 0xe4, 0x4d, 0x66, 0x80, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_3410_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3410_sharedsecret[] = { 0xf4, 0x3b, 0xfe, 0x4e, 0xcc, 0xc2, 0x4e, 0xbf, 0x6e, 0x36, 0xc5, 0xbc, 0xac, 0xa4, 0x7b, 0x77, 0x0c, 0x17, 0xbc, 0xb5, 0x9e, 0xa7, 0x88, 0xb1, 0x5c, 0x74, 0xae, 0x6c, 0x9d, 0xd0, 0x55, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256k1_3410 = { .name = "ecdh_secp256k1_3410", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3410_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3410_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3410_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 953 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3411 for ECDH, tcId is 954 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3411_peerpubkey[] = { 0xd3, 0x17, 0x9f, 0xce, 0x57, 0x81, 0xd0, 0xc4, 0x9c, 0xe8, 0x48, 0x0a, 0x81, 0x1f, 0x6f, 0x08, 0xe3, 0xf1, 0x23, 0xd9, 0xf6, 0x01, 0x0f, 0xbf, 0x61, 0x9b, 0x5d, 0x86, 0x8a, 0x8e, 0xa8, 0x33, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_3411_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3411_sharedsecret[] = { 0x00, 0x9b, 0xc3, 0xab, 0xb3, 0xcf, 0x0a, 0xca, 0x21, 0x4f, 0x0e, 0x8d, 0xb5, 0x08, 0x8d, 0x52, 0x0b, 0x3d, 0x4a, 0xad, 0xb1, 0xd4, 0x4c, 0x4a, 0x2b, 0xe7, 0xf0, 0x31, 0x46, 0x1c, 0x94, 0x20, }; static const wycheproof_ecdh_test ecdh_secp256k1_3411 = { .name = "ecdh_secp256k1_3411", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3411_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3411_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3411_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 954 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3412 for ECDH, tcId is 955 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3412_peerpubkey[] = { 0x9e, 0x09, 0x80, 0x95, 0x46, 0x3c, 0x91, 0xac, 0x71, 0x07, 0xa9, 0x20, 0xcc, 0xb2, 0x76, 0xd4, 0x5e, 0x1f, 0x72, 0x40, 0xef, 0x2b, 0x93, 0xb9, 0x57, 0xee, 0x09, 0x39, 0x3d, 0x32, 0xe0, 0x01, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_3412_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3412_sharedsecret[] = { 0x8b, 0xcb, 0x07, 0xa3, 0xd0, 0xfa, 0x82, 0xaf, 0x60, 0xc8, 0x8a, 0x8d, 0x67, 0x81, 0x0e, 0xbc, 0xa0, 0xea, 0x27, 0x54, 0x83, 0x84, 0xe9, 0x6d, 0x34, 0x83, 0x31, 0x02, 0x12, 0x21, 0x93, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_3412 = { .name = "ecdh_secp256k1_3412", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3412_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3412_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3412_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 955 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3413 for ECDH, tcId is 956 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3413_peerpubkey[] = { 0xbf, 0x30, 0x34, 0xa9, 0x93, 0x51, 0x82, 0xda, 0x36, 0x25, 0x70, 0x31, 0x50, 0x11, 0x54, 0x4a, 0xc2, 0xce, 0x8a, 0x9c, 0x22, 0x77, 0x7c, 0x2f, 0xc7, 0x67, 0xac, 0x9c, 0x5c, 0x0d, 0xae, 0xeb, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_3413_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3413_sharedsecret[] = { 0xa0, 0x9d, 0xdc, 0x7c, 0xfe, 0x02, 0x3a, 0xcd, 0x95, 0x71, 0xef, 0x07, 0x54, 0x01, 0x02, 0x89, 0xc8, 0x04, 0x67, 0x8c, 0x04, 0x3f, 0x90, 0x0f, 0x26, 0x91, 0xdd, 0x80, 0x1b, 0x94, 0x2e, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_3413 = { .name = "ecdh_secp256k1_3413", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3413_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3413_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3413_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 956 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3414 for ECDH, tcId is 957 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3414_peerpubkey[] = { 0x70, 0x9c, 0x71, 0x79, 0xc2, 0xbb, 0x27, 0xce, 0x39, 0x85, 0xba, 0x42, 0xfe, 0xb8, 0x70, 0xf0, 0x69, 0xda, 0xce, 0xad, 0x92, 0x94, 0xc8, 0x05, 0x57, 0xbe, 0x88, 0x2f, 0xb5, 0x77, 0x90, 0x48, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_3414_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3414_sharedsecret[] = { 0xda, 0x98, 0x05, 0x4d, 0x51, 0xac, 0x96, 0x15, 0xe9, 0xd4, 0xf5, 0xce, 0xda, 0x1f, 0x1b, 0xad, 0x40, 0x30, 0x2a, 0xc1, 0x16, 0x03, 0x43, 0x1e, 0xfe, 0xc1, 0x3a, 0xb5, 0x0e, 0x32, 0xfc, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3414 = { .name = "ecdh_secp256k1_3414", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3414_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3414_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3414_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 957 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3415 for ECDH, tcId is 958 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3415_peerpubkey[] = { 0x26, 0x4c, 0x00, 0xa2, 0xd9, 0x25, 0x14, 0xa6, 0xdb, 0xe6, 0x55, 0xde, 0x3c, 0x71, 0xa5, 0x74, 0x0c, 0xec, 0x4f, 0xcb, 0x25, 0x1a, 0xa4, 0x8c, 0xa6, 0x74, 0x5d, 0xbe, 0xa6, 0xf5, 0xf7, 0xcf, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_3415_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3415_sharedsecret[] = { 0xd6, 0x07, 0x95, 0xd8, 0xf3, 0x10, 0xb1, 0x55, 0x72, 0x65, 0x34, 0xb8, 0xbe, 0x3d, 0x0b, 0x8a, 0x7b, 0xc2, 0xce, 0xd4, 0x68, 0xc6, 0xe6, 0x4c, 0x8b, 0x9a, 0xe0, 0x87, 0xb3, 0x3e, 0xe0, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_3415 = { .name = "ecdh_secp256k1_3415", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3415_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3415_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3415_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 958 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3416 for ECDH, tcId is 959 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3416_peerpubkey[] = { 0xa1, 0x21, 0x24, 0x60, 0x6b, 0xcb, 0xbb, 0x33, 0xce, 0xce, 0xc7, 0xfc, 0x8d, 0x78, 0xb3, 0x89, 0x71, 0x92, 0xca, 0x85, 0x15, 0x60, 0xc5, 0x39, 0xe4, 0x7d, 0xd2, 0x76, 0xc6, 0x3b, 0xd3, 0xc2, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_3416_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3416_sharedsecret[] = { 0x67, 0x5f, 0xef, 0x8f, 0x56, 0x80, 0xbf, 0x76, 0x22, 0x0e, 0x91, 0x36, 0x26, 0x13, 0x94, 0x40, 0x99, 0x04, 0x6b, 0x0b, 0xa0, 0x7e, 0x58, 0x24, 0xe9, 0x3f, 0x3e, 0x3c, 0xc2, 0xcc, 0x27, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_3416 = { .name = "ecdh_secp256k1_3416", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3416_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3416_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3416_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 959 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3417 for ECDH, tcId is 960 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3417_peerpubkey[] = { 0x24, 0x4b, 0x7a, 0xfe, 0x7f, 0x31, 0x28, 0x9f, 0x9d, 0x6a, 0xae, 0xb7, 0xf7, 0x0d, 0x29, 0xa7, 0xb4, 0x9a, 0x22, 0x8c, 0x7b, 0xb2, 0x02, 0x76, 0x4a, 0xba, 0x94, 0xda, 0xaa, 0xa3, 0x33, 0x22, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_3417_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3417_sharedsecret[] = { 0x76, 0xb4, 0x39, 0xf8, 0xea, 0x7b, 0x42, 0xf1, 0x1c, 0xd5, 0x9e, 0x6d, 0x91, 0xb2, 0xd2, 0xa7, 0x25, 0x77, 0xc1, 0x85, 0x38, 0x6b, 0x6a, 0xf6, 0x63, 0x9b, 0xe8, 0xe3, 0x86, 0x4a, 0x7f, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_3417 = { .name = "ecdh_secp256k1_3417", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3417_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3417_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3417_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 960 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3418 for ECDH, tcId is 961 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3418_peerpubkey[] = { 0x2a, 0xc2, 0x9d, 0xb2, 0xeb, 0xc4, 0xfa, 0x94, 0x73, 0xb4, 0x2b, 0xd3, 0x35, 0xa6, 0x02, 0x26, 0x57, 0x9c, 0xc1, 0x86, 0xb2, 0xc6, 0x76, 0xa3, 0xb0, 0x1b, 0xc6, 0x0e, 0x58, 0x96, 0x16, 0x16, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_3418_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3418_sharedsecret[] = { 0x56, 0xe6, 0x3f, 0xa7, 0x88, 0x12, 0x1d, 0x5e, 0xfa, 0x0c, 0xe3, 0xca, 0xf4, 0x60, 0x5a, 0xf1, 0x8d, 0x48, 0xc6, 0x31, 0x49, 0x6c, 0xdf, 0xa8, 0x62, 0xc4, 0x3e, 0xcf, 0x5e, 0x5f, 0xc1, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_3418 = { .name = "ecdh_secp256k1_3418", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3418_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3418_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3418_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 961 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3419 for ECDH, tcId is 962 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3419_peerpubkey[] = { 0xe6, 0x2a, 0xee, 0x52, 0x05, 0xa8, 0x06, 0x3e, 0x3a, 0xe4, 0x01, 0xd5, 0x3e, 0x93, 0x43, 0x00, 0x1e, 0x55, 0xeb, 0x5f, 0x4e, 0x4d, 0x6b, 0x70, 0xe2, 0xb8, 0x41, 0x59, 0xcf, 0x31, 0x57, 0xe6, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_3419_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3419_sharedsecret[] = { 0xcf, 0xf3, 0xb5, 0xe1, 0x9e, 0xd6, 0x7e, 0x51, 0x11, 0xdd, 0x76, 0xe3, 0x10, 0xa1, 0xf1, 0x1d, 0x7f, 0x99, 0xa9, 0x3f, 0xbe, 0x9c, 0xc5, 0xc6, 0xf3, 0x38, 0x40, 0x86, 0xca, 0xcd, 0x11, 0x42, }; static const wycheproof_ecdh_test ecdh_secp256k1_3419 = { .name = "ecdh_secp256k1_3419", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3419_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3419_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3419_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 962 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3420 for ECDH, tcId is 963 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3420_peerpubkey[] = { 0x31, 0xdc, 0xe6, 0xde, 0x74, 0x1f, 0x10, 0x26, 0x7f, 0x2e, 0x8f, 0x3d, 0x57, 0x2a, 0x4f, 0x49, 0xbe, 0x5f, 0xe5, 0x2f, 0xf7, 0xbf, 0xf3, 0xc3, 0xb4, 0x64, 0x6f, 0x38, 0x07, 0x6c, 0x06, 0x75, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_3420_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3420_sharedsecret[] = { 0xe2, 0x94, 0x83, 0x88, 0x4a, 0x74, 0xfb, 0x84, 0xf4, 0x60, 0x16, 0x54, 0x88, 0x5a, 0x0f, 0x57, 0x46, 0x91, 0x39, 0x4f, 0x06, 0x4e, 0xa6, 0x93, 0x7a, 0x84, 0x61, 0x75, 0xef, 0x08, 0x1f, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3420 = { .name = "ecdh_secp256k1_3420", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3420_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3420_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3420_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 963 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3421 for ECDH, tcId is 964 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3421_peerpubkey[] = { 0x65, 0x18, 0xcd, 0x66, 0xb1, 0xd8, 0x41, 0xe6, 0x89, 0xd5, 0xdc, 0x66, 0x74, 0xc7, 0xcc, 0x7d, 0x96, 0x45, 0x74, 0xd1, 0x49, 0x0f, 0xff, 0x79, 0x06, 0xbd, 0x37, 0x34, 0x94, 0x79, 0x15, 0x99, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_3421_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3421_sharedsecret[] = { 0x9c, 0x6a, 0x4b, 0xcb, 0x2f, 0xc0, 0x86, 0xac, 0xa8, 0x72, 0x6d, 0x85, 0x0f, 0xa7, 0x99, 0x20, 0x21, 0x4a, 0xf4, 0xc1, 0x51, 0xac, 0xea, 0x0f, 0xcf, 0x12, 0xa7, 0x69, 0xad, 0x1f, 0x35, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_3421 = { .name = "ecdh_secp256k1_3421", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3421_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3421_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3421_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 964 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3422 for ECDH, tcId is 965 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3422_peerpubkey[] = { 0x95, 0x2a, 0x88, 0xce, 0x31, 0xad, 0x4c, 0xb0, 0x86, 0x97, 0x8e, 0x6c, 0x56, 0x21, 0xc3, 0xd8, 0x02, 0x3b, 0x2c, 0x11, 0x41, 0x8d, 0x6f, 0xd0, 0xdc, 0xef, 0x8d, 0xe7, 0x21, 0x23, 0xef, 0xc1, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_3422_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3422_sharedsecret[] = { 0x34, 0xb7, 0xab, 0xc3, 0xf3, 0xe3, 0x6e, 0x37, 0xe2, 0xd5, 0x72, 0x8a, 0x87, 0x0a, 0x29, 0x3a, 0x16, 0x40, 0x31, 0x46, 0xca, 0x67, 0xff, 0x91, 0xcb, 0xab, 0xee, 0xe2, 0xbb, 0x2e, 0x03, 0x8b, }; static const wycheproof_ecdh_test ecdh_secp256k1_3422 = { .name = "ecdh_secp256k1_3422", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3422_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3422_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3422_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 965 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3423 for ECDH, tcId is 966 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3423_peerpubkey[] = { 0x2a, 0x43, 0xf3, 0x35, 0x73, 0xb6, 0x19, 0x71, 0x90, 0x99, 0xcf, 0x54, 0xf6, 0xcc, 0xcb, 0x28, 0xd1, 0x6d, 0xf3, 0x99, 0x22, 0x39, 0xfa, 0xdf, 0x79, 0xc7, 0xac, 0xb9, 0xc6, 0x4f, 0x7a, 0xf0, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_3423_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3423_sharedsecret[] = { 0x9b, 0xd1, 0x28, 0x4f, 0x1b, 0xcb, 0x19, 0x34, 0xd4, 0x83, 0x83, 0x4c, 0xae, 0x41, 0xa7, 0x7d, 0xb2, 0x8c, 0xd9, 0x55, 0x38, 0x69, 0x38, 0x47, 0x55, 0xb6, 0x98, 0x3f, 0x4f, 0x38, 0x48, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3423 = { .name = "ecdh_secp256k1_3423", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3423_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3423_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3423_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 966 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3424 for ECDH, tcId is 967 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3424_peerpubkey[] = { 0x1b, 0x1b, 0x0c, 0x75, 0x40, 0x87, 0x85, 0xe8, 0x47, 0x27, 0xb0, 0xe5, 0x5e, 0x4b, 0xa2, 0x0d, 0x0f, 0x25, 0x99, 0xc4, 0xed, 0x08, 0x48, 0x2d, 0xc1, 0xf3, 0xb5, 0xdf, 0x54, 0x56, 0x91, 0x38, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_3424_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3424_sharedsecret[] = { 0x16, 0x7e, 0x3d, 0xb6, 0xa9, 0x12, 0xac, 0x61, 0x17, 0x64, 0x45, 0x25, 0x91, 0x1f, 0xc8, 0x87, 0x2e, 0xd3, 0x3b, 0x8e, 0x0b, 0xbd, 0x50, 0x07, 0x3d, 0xd3, 0xc1, 0x7a, 0x74, 0x4e, 0x61, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3424 = { .name = "ecdh_secp256k1_3424", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3424_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3424_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3424_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 967 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3425 for ECDH, tcId is 968 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3425_peerpubkey[] = { 0x4d, 0xd1, 0x28, 0x3b, 0xcc, 0xd3, 0x6c, 0xc3, 0x40, 0x2f, 0x3a, 0x81, 0xe2, 0xe9, 0xb0, 0xd6, 0xa2, 0xb2, 0xb1, 0xde, 0xbb, 0xbd, 0x44, 0xff, 0xc1, 0xf1, 0x79, 0xbd, 0x49, 0xcf, 0x0a, 0x7e, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_3425_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3425_sharedsecret[] = { 0x7c, 0x30, 0x20, 0xe2, 0x79, 0xcb, 0x5a, 0xf1, 0x41, 0x84, 0xb4, 0x65, 0x3c, 0xc8, 0x7c, 0x1d, 0xdd, 0x7f, 0x49, 0xcd, 0x31, 0xcd, 0x37, 0x1a, 0xe8, 0x13, 0x68, 0x1d, 0xd6, 0x61, 0x7d, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256k1_3425 = { .name = "ecdh_secp256k1_3425", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3425_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3425_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3425_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 968 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3426 for ECDH, tcId is 969 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3426_peerpubkey[] = { 0xa4, 0x99, 0xdb, 0xf7, 0x32, 0xe4, 0x38, 0xbe, 0x0e, 0xb0, 0x84, 0xb9, 0xe6, 0xad, 0x87, 0x9d, 0xd7, 0xa2, 0x90, 0x4b, 0xbb, 0x00, 0x4b, 0x40, 0x02, 0x79, 0x69, 0xa1, 0x71, 0xf2, 0xd4, 0x26, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_3426_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3426_sharedsecret[] = { 0xac, 0xfd, 0xff, 0x56, 0x6b, 0x8b, 0x55, 0x31, 0x88, 0x69, 0xfa, 0x64, 0x6f, 0x78, 0x9f, 0x80, 0x36, 0xd4, 0x0b, 0x90, 0xf0, 0xfc, 0x52, 0x0a, 0xe2, 0xa5, 0xa2, 0x75, 0x44, 0xf9, 0x62, 0xc0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3426 = { .name = "ecdh_secp256k1_3426", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3426_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3426_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3426_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 969 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3427 for ECDH, tcId is 970 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3427_peerpubkey[] = { 0xad, 0xcf, 0x0f, 0xfb, 0xa9, 0xcb, 0x6e, 0xf0, 0xc8, 0x03, 0x1c, 0x42, 0x91, 0xa4, 0x34, 0xb1, 0x8d, 0x78, 0xf4, 0x2e, 0x45, 0xe6, 0x2b, 0xa0, 0x1f, 0xbe, 0x91, 0xf9, 0x27, 0x3f, 0x0a, 0xd1, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_3427_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3427_sharedsecret[] = { 0x5c, 0x6b, 0x01, 0xcf, 0xf4, 0xe6, 0xce, 0x81, 0xa6, 0x30, 0x23, 0x8b, 0x5d, 0xb3, 0x66, 0x2e, 0x77, 0xfb, 0x88, 0xbf, 0xfd, 0xde, 0x61, 0x44, 0x3a, 0x7d, 0x85, 0x54, 0xba, 0x00, 0x1e, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3427 = { .name = "ecdh_secp256k1_3427", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3427_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3427_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3427_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 970 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3428 for ECDH, tcId is 971 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3428_peerpubkey[] = { 0x21, 0x71, 0x27, 0x25, 0xd9, 0x80, 0x6a, 0xcf, 0x54, 0xd3, 0xa6, 0xc8, 0x2b, 0xf9, 0x3c, 0x0f, 0xe2, 0x49, 0x26, 0x8c, 0xa9, 0xf4, 0x2e, 0xce, 0xac, 0x19, 0xe9, 0x3a, 0x5e, 0xab, 0x80, 0x56, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_3428_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3428_sharedsecret[] = { 0xe7, 0x28, 0x1d, 0x12, 0xb7, 0x4b, 0x06, 0xee, 0xcb, 0x27, 0x3e, 0xc3, 0xe0, 0xd8, 0xfe, 0x66, 0x3e, 0x9e, 0xc1, 0xd5, 0xa5, 0x0c, 0x2b, 0x6c, 0x68, 0xec, 0x8b, 0x36, 0x93, 0xf2, 0x3c, 0x4c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3428 = { .name = "ecdh_secp256k1_3428", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3428_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3428_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3428_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 971 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3429 for ECDH, tcId is 972 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3429_peerpubkey[] = { 0x1e, 0x02, 0x17, 0x68, 0x24, 0xbd, 0x31, 0xea, 0xbd, 0xce, 0x03, 0xa9, 0x40, 0x3c, 0x7d, 0x3c, 0x2a, 0xc6, 0x31, 0xf9, 0xb0, 0xe8, 0x8d, 0x9a, 0x92, 0x47, 0x01, 0xc1, 0xb2, 0xf2, 0x9b, 0x85, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_3429_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3429_sharedsecret[] = { 0x80, 0x64, 0x3e, 0xd8, 0xb9, 0x05, 0x2a, 0x2e, 0x74, 0x6a, 0x26, 0xd9, 0x17, 0x8f, 0xe2, 0xcc, 0xff, 0x35, 0xed, 0xbb, 0x81, 0xf6, 0x0c, 0xd7, 0x80, 0x04, 0xfb, 0x8d, 0x5f, 0x14, 0x3a, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_3429 = { .name = "ecdh_secp256k1_3429", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3429_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3429_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3429_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 972 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3430 for ECDH, tcId is 973 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3430_peerpubkey[] = { 0x63, 0xe7, 0xa1, 0xaf, 0x36, 0xd6, 0xb5, 0x40, 0xa4, 0x92, 0x76, 0xaa, 0xc3, 0xfe, 0xc9, 0xcb, 0x45, 0xed, 0x6b, 0xab, 0x16, 0x7c, 0x06, 0xb0, 0x41, 0x9a, 0x77, 0xb9, 0x13, 0x99, 0xf6, 0x18, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_3430_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3430_sharedsecret[] = { 0x75, 0x87, 0x3a, 0xc5, 0x44, 0xad, 0x69, 0xd3, 0xdd, 0xc5, 0xc9, 0xcf, 0xfe, 0x38, 0x4d, 0x27, 0x5e, 0x9d, 0xa2, 0x94, 0x9d, 0x69, 0x82, 0xda, 0x4b, 0x99, 0x0f, 0x8b, 0xf2, 0xb7, 0x64, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_3430 = { .name = "ecdh_secp256k1_3430", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3430_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3430_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3430_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 973 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3431 for ECDH, tcId is 974 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3431_peerpubkey[] = { 0x1e, 0x26, 0x5a, 0xb5, 0xb7, 0xf7, 0x19, 0x94, 0x70, 0xe5, 0x32, 0x65, 0x3d, 0x2a, 0x7b, 0x9a, 0x8b, 0x72, 0x89, 0x70, 0xb8, 0x38, 0x13, 0x7c, 0x96, 0x92, 0xed, 0x06, 0x92, 0x89, 0x7b, 0x2a, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_3431_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3431_sharedsecret[] = { 0x35, 0x5c, 0x9f, 0xac, 0xa2, 0x9c, 0xf7, 0xcc, 0x96, 0x88, 0x53, 0xee, 0x29, 0xff, 0xe6, 0x2d, 0x11, 0x27, 0xfc, 0xc1, 0xdc, 0x57, 0xe9, 0xdd, 0xaf, 0x0e, 0x0f, 0x44, 0x71, 0x46, 0x06, 0x4e, }; static const wycheproof_ecdh_test ecdh_secp256k1_3431 = { .name = "ecdh_secp256k1_3431", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3431_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3431_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3431_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 974 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3432 for ECDH, tcId is 975 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3432_peerpubkey[] = { 0x54, 0xd2, 0xa4, 0x39, 0x4c, 0x10, 0x9f, 0xcb, 0xd3, 0xcb, 0x98, 0x86, 0xfe, 0xc3, 0xad, 0xd5, 0x1b, 0xa4, 0xd2, 0xe4, 0x4e, 0x1d, 0x56, 0x76, 0xe4, 0xb9, 0x8f, 0x0c, 0x13, 0x65, 0x5f, 0xc5, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_3432_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3432_sharedsecret[] = { 0xfc, 0x17, 0x5a, 0x5e, 0xf1, 0x85, 0x95, 0xb6, 0x9e, 0x45, 0xbe, 0x2c, 0xda, 0x8a, 0xe0, 0x0d, 0x9c, 0x8b, 0xdb, 0xef, 0xbc, 0xf7, 0xf6, 0x92, 0xf9, 0x1c, 0xef, 0xdc, 0x56, 0x0e, 0x47, 0x22, }; static const wycheproof_ecdh_test ecdh_secp256k1_3432 = { .name = "ecdh_secp256k1_3432", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3432_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3432_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3432_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 975 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3433 for ECDH, tcId is 976 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3433_peerpubkey[] = { 0x93, 0xf1, 0x45, 0x92, 0x07, 0xfb, 0x09, 0xc6, 0xf0, 0xa8, 0x8c, 0x39, 0x8a, 0xc8, 0x0d, 0x10, 0x52, 0xa4, 0xcd, 0x33, 0xe7, 0xee, 0xf5, 0x68, 0x7d, 0xa9, 0x9a, 0xb9, 0x7c, 0x60, 0x24, 0xb7, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_3433_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3433_sharedsecret[] = { 0x46, 0x55, 0x91, 0x46, 0xa9, 0x3a, 0xae, 0x90, 0x4d, 0xbc, 0xaa, 0xaa, 0x07, 0xe6, 0xcd, 0x1b, 0xb4, 0x50, 0xf1, 0xb3, 0x7c, 0x83, 0x92, 0x9a, 0x99, 0x4b, 0x45, 0x79, 0x23, 0x33, 0xd5, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp256k1_3433 = { .name = "ecdh_secp256k1_3433", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3433_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3433_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3433_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 976 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3434 for ECDH, tcId is 977 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3434_peerpubkey[] = { 0x1f, 0xa0, 0x49, 0xa1, 0x89, 0x2b, 0x67, 0x98, 0x57, 0xc6, 0xdf, 0xf0, 0x8a, 0xf1, 0x9d, 0xb7, 0x0c, 0xbc, 0x99, 0xb6, 0xf2, 0xd7, 0xbc, 0x51, 0xa3, 0x41, 0xfe, 0x79, 0xd1, 0x64, 0x7f, 0x4a, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_3434_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3434_sharedsecret[] = { 0xc6, 0x4b, 0x07, 0x11, 0x90, 0x54, 0xa3, 0x79, 0x61, 0xc0, 0xa1, 0x77, 0x15, 0x82, 0x56, 0x08, 0x1b, 0x38, 0xb0, 0x08, 0x7b, 0x30, 0x7e, 0x0c, 0xad, 0x7e, 0x30, 0xd7, 0x90, 0xce, 0xb0, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_3434 = { .name = "ecdh_secp256k1_3434", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3434_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3434_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3434_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 977 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3435 for ECDH, tcId is 978 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3435_peerpubkey[] = { 0x84, 0xe0, 0xb1, 0x92, 0xd6, 0x0a, 0xbf, 0x53, 0x1e, 0x82, 0x8e, 0x88, 0x7d, 0x36, 0x6d, 0x86, 0x9e, 0x10, 0x33, 0xa1, 0x6e, 0x9c, 0x7f, 0x11, 0x67, 0x45, 0x8c, 0x81, 0x34, 0xc1, 0x0f, 0xba, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_3435_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3435_sharedsecret[] = { 0xbe, 0xa8, 0xcf, 0xc0, 0xbe, 0xe8, 0x57, 0x1c, 0xcf, 0x0c, 0x52, 0x56, 0x54, 0xef, 0x26, 0xd1, 0xfc, 0x78, 0x2b, 0xb2, 0x2d, 0xec, 0xcf, 0x67, 0xea, 0x4e, 0xa0, 0x80, 0x3d, 0xc1, 0x5d, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp256k1_3435 = { .name = "ecdh_secp256k1_3435", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3435_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3435_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3435_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 978 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3436 for ECDH, tcId is 979 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3436_peerpubkey[] = { 0x2f, 0x97, 0x07, 0xc6, 0x71, 0x18, 0x72, 0x41, 0x11, 0xef, 0xbb, 0xbb, 0xf0, 0x6b, 0x62, 0x3a, 0xb2, 0xff, 0xd9, 0x25, 0x9d, 0xdc, 0x35, 0x4f, 0xca, 0xaf, 0x81, 0xba, 0x01, 0xf6, 0xfa, 0x7b, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_3436_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3436_sharedsecret[] = { 0x60, 0x45, 0x1d, 0xa4, 0xad, 0xfe, 0x5b, 0xb3, 0x93, 0x10, 0x90, 0x69, 0xef, 0xdc, 0x84, 0x41, 0x5e, 0xc8, 0xa2, 0xc4, 0x29, 0x95, 0x5c, 0xbf, 0x22, 0xa4, 0x34, 0x0f, 0x8f, 0xc4, 0x89, 0x36, }; static const wycheproof_ecdh_test ecdh_secp256k1_3436 = { .name = "ecdh_secp256k1_3436", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3436_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3436_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3436_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 979 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3437 for ECDH, tcId is 980 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3437_peerpubkey[] = { 0xac, 0x1f, 0xbb, 0xe4, 0x22, 0x93, 0xa9, 0xf9, 0xae, 0x10, 0x4e, 0xe2, 0xda, 0x0b, 0x0a, 0x9b, 0x34, 0x64, 0xd5, 0xd8, 0xb1, 0xe8, 0x54, 0xdf, 0x19, 0xd3, 0xc4, 0x45, 0x6a, 0xf8, 0xf9, 0xa6, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_3437_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3437_sharedsecret[] = { 0xd6, 0x8e, 0x74, 0x6f, 0x3d, 0x43, 0xfe, 0xac, 0x5f, 0xd4, 0x89, 0x8d, 0xe9, 0x43, 0xdc, 0x38, 0x20, 0x5a, 0xf7, 0xe2, 0x63, 0x1e, 0xd7, 0x32, 0x07, 0x9b, 0xbf, 0xc8, 0xab, 0x52, 0x51, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3437 = { .name = "ecdh_secp256k1_3437", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3437_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3437_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3437_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 980 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3438 for ECDH, tcId is 981 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3438_peerpubkey[] = { 0xba, 0xe1, 0x0c, 0xf9, 0x3f, 0xf7, 0xb7, 0x2d, 0x6e, 0xd9, 0x85, 0x19, 0x60, 0x2e, 0x9f, 0x03, 0xaa, 0x40, 0x30, 0x3f, 0xa0, 0x67, 0x4f, 0xb3, 0xdd, 0xee, 0x7d, 0x2d, 0xb1, 0xc9, 0x2b, 0xb2, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_3438_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3438_sharedsecret[] = { 0x28, 0xda, 0xea, 0xad, 0xc6, 0x09, 0x38, 0x6d, 0x77, 0x0d, 0xff, 0x4c, 0x71, 0x20, 0xb2, 0xa8, 0x7c, 0xab, 0x3e, 0x21, 0xfd, 0xb8, 0xa6, 0xe4, 0xdc, 0x12, 0x40, 0xa5, 0x1d, 0x12, 0xe5, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3438 = { .name = "ecdh_secp256k1_3438", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3438_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3438_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3438_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 981 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3439 for ECDH, tcId is 982 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3439_peerpubkey[] = { 0xed, 0xb4, 0x28, 0x8c, 0xf5, 0x56, 0x76, 0x73, 0xd5, 0x0a, 0x1c, 0xd9, 0xe6, 0xbe, 0xa4, 0x53, 0x17, 0x82, 0x3f, 0x30, 0x38, 0x3f, 0x60, 0xd9, 0xbc, 0x3b, 0x9e, 0xe4, 0x2a, 0xc2, 0x98, 0x71, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_3439_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3439_sharedsecret[] = { 0xbb, 0x41, 0x10, 0xb7, 0x34, 0xc8, 0xef, 0x8a, 0x08, 0xbb, 0x60, 0x11, 0xac, 0xb3, 0x5c, 0xbd, 0xa9, 0xae, 0x8e, 0x2e, 0xf6, 0xc4, 0xd0, 0x86, 0x25, 0x76, 0xa6, 0x87, 0x92, 0x66, 0x7b, 0xb9, }; static const wycheproof_ecdh_test ecdh_secp256k1_3439 = { .name = "ecdh_secp256k1_3439", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3439_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3439_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3439_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 982 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3440 for ECDH, tcId is 983 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3440_peerpubkey[] = { 0x13, 0x23, 0x3e, 0x80, 0xf5, 0x9a, 0xc2, 0xb5, 0x97, 0x37, 0xe8, 0x78, 0x77, 0x78, 0x2a, 0xb3, 0x02, 0x7c, 0x49, 0x0d, 0xf8, 0xac, 0x0b, 0xf3, 0xf3, 0xef, 0x16, 0x33, 0x87, 0x2e, 0xec, 0x54, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_3440_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3440_sharedsecret[] = { 0xe2, 0x5c, 0x50, 0x03, 0x7c, 0xa1, 0x91, 0x38, 0x51, 0xb9, 0x75, 0x87, 0x52, 0x65, 0x9f, 0xb6, 0x1c, 0x02, 0xd2, 0xa7, 0xc6, 0xb6, 0xaa, 0xe2, 0x9b, 0xda, 0x30, 0x19, 0x07, 0xd9, 0x9f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3440 = { .name = "ecdh_secp256k1_3440", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3440_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3440_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3440_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 983 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3441 for ECDH, tcId is 984 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3441_peerpubkey[] = { 0x3c, 0xd1, 0x4f, 0x7e, 0x4b, 0x77, 0x96, 0x15, 0xbc, 0x7c, 0xce, 0xe4, 0x7e, 0x7f, 0x2b, 0x07, 0x39, 0x4b, 0xf8, 0xf9, 0x85, 0x03, 0x26, 0x34, 0x11, 0xa5, 0x49, 0x26, 0x4a, 0x8f, 0xcf, 0x19, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_3441_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3441_sharedsecret[] = { 0xad, 0x25, 0x9f, 0x01, 0xe9, 0x53, 0x26, 0x3f, 0x40, 0xa3, 0x9b, 0x14, 0xa5, 0x38, 0xd0, 0x76, 0x71, 0x0c, 0x19, 0x20, 0x7a, 0xf9, 0x36, 0xfe, 0xab, 0xdf, 0x03, 0xbd, 0xa7, 0xf0, 0x67, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3441 = { .name = "ecdh_secp256k1_3441", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3441_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3441_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3441_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 984 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3442 for ECDH, tcId is 985 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3442_peerpubkey[] = { 0x94, 0x6c, 0x27, 0x82, 0x88, 0x61, 0x6a, 0xa3, 0x47, 0x90, 0xca, 0x19, 0x36, 0x86, 0xe7, 0x45, 0xd3, 0xd5, 0x87, 0x02, 0x86, 0x6d, 0xdf, 0x1e, 0x95, 0x55, 0x07, 0x11, 0xa9, 0xbf, 0xbd, 0xb8, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_3442_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3442_sharedsecret[] = { 0x5e, 0xc6, 0x02, 0x5a, 0xc7, 0xb2, 0x5c, 0x0f, 0x09, 0x5f, 0x3f, 0xde, 0xe3, 0xe2, 0xe5, 0x08, 0xbd, 0x14, 0x37, 0xb9, 0x70, 0x5c, 0x25, 0x43, 0xc0, 0xe5, 0xaf, 0x1c, 0x1d, 0x36, 0x3f, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp256k1_3442 = { .name = "ecdh_secp256k1_3442", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3442_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3442_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3442_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 985 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3443 for ECDH, tcId is 986 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3443_peerpubkey[] = { 0x7f, 0x19, 0x50, 0x35, 0xfe, 0xb2, 0xc0, 0x4a, 0x9b, 0x14, 0x9b, 0xb2, 0xed, 0x3c, 0x5c, 0x45, 0x8e, 0x95, 0xe7, 0xf7, 0xc4, 0x18, 0xc4, 0xa0, 0x7e, 0xa6, 0x10, 0x7e, 0x4e, 0x32, 0x45, 0x5a, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_3443_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3443_sharedsecret[] = { 0xa2, 0xf9, 0x3a, 0x84, 0x57, 0x4a, 0x26, 0xb4, 0x38, 0x80, 0xcd, 0xe6, 0xed, 0x44, 0x0c, 0x7f, 0x7c, 0xc7, 0x2c, 0x92, 0x50, 0x4d, 0x52, 0x71, 0x99, 0x9a, 0x8a, 0x78, 0xff, 0xe3, 0x49, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3443 = { .name = "ecdh_secp256k1_3443", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3443_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3443_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3443_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 986 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3444 for ECDH, tcId is 987 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3444_peerpubkey[] = { 0x40, 0x85, 0x58, 0x44, 0xe0, 0x43, 0x03, 0x84, 0x3a, 0x24, 0xb0, 0x17, 0x07, 0x54, 0x4d, 0x1b, 0xbf, 0x97, 0x67, 0x32, 0x66, 0xe0, 0x3d, 0x77, 0xfb, 0xf8, 0x0d, 0x8b, 0x64, 0x21, 0x9b, 0xd8, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_3444_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3444_sharedsecret[] = { 0x8d, 0x0c, 0xdb, 0x49, 0x77, 0xba, 0x76, 0x61, 0xd4, 0x10, 0x36, 0xae, 0xb7, 0xa5, 0xf2, 0xdd, 0x20, 0x77, 0x16, 0xd5, 0xd7, 0x6e, 0xeb, 0x26, 0x62, 0x90, 0x43, 0xc5, 0x59, 0xec, 0x29, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3444 = { .name = "ecdh_secp256k1_3444", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3444_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3444_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3444_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 987 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3445 for ECDH, tcId is 988 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3445_peerpubkey[] = { 0x22, 0xcd, 0xb3, 0xee, 0x47, 0xf1, 0x4b, 0x3b, 0x0c, 0x0c, 0x8c, 0x25, 0x6f, 0xb2, 0x2e, 0x79, 0x12, 0x6b, 0x43, 0x6a, 0x2c, 0x9f, 0xf6, 0x35, 0xa6, 0x51, 0x51, 0xa0, 0xf0, 0xff, 0xb1, 0xbf, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_3445_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3445_sharedsecret[] = { 0xde, 0xfd, 0xe4, 0xaa, 0x48, 0xf8, 0x9b, 0x03, 0xf6, 0x23, 0xea, 0x1f, 0x94, 0x6f, 0x1a, 0xa9, 0x38, 0xc5, 0xaa, 0xb8, 0x79, 0xca, 0x63, 0x19, 0x59, 0x69, 0x26, 0xf0, 0x85, 0x57, 0x8e, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256k1_3445 = { .name = "ecdh_secp256k1_3445", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3445_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3445_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3445_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 988 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3446 for ECDH, tcId is 989 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3446_peerpubkey[] = { 0x2b, 0x7b, 0xec, 0xd7, 0x06, 0x6e, 0x22, 0xf1, 0x21, 0xe7, 0xcf, 0x12, 0x3d, 0x48, 0xc5, 0x44, 0x50, 0x37, 0xc5, 0xa7, 0x56, 0xef, 0x31, 0x4a, 0x66, 0xa7, 0x00, 0x16, 0x36, 0xee, 0x75, 0xcf, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_3446_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3446_sharedsecret[] = { 0xaf, 0xe0, 0xbf, 0xed, 0x69, 0xa6, 0x00, 0x16, 0x38, 0x65, 0x40, 0x61, 0x27, 0xa8, 0x97, 0x2b, 0x61, 0x32, 0x32, 0xaa, 0x4c, 0x93, 0x3a, 0x06, 0xb5, 0xa5, 0xb5, 0xbc, 0xff, 0x15, 0x96, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_3446 = { .name = "ecdh_secp256k1_3446", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3446_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3446_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3446_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 989 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3447 for ECDH, tcId is 990 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3447_peerpubkey[] = { 0xbb, 0x8d, 0xa4, 0xa7, 0x6e, 0xe3, 0xd1, 0xc4, 0xb3, 0x34, 0x77, 0xbc, 0x86, 0x63, 0xde, 0xf1, 0x67, 0xa1, 0x26, 0xc4, 0x22, 0xad, 0x47, 0xf6, 0xc2, 0xf8, 0xb5, 0x39, 0xc6, 0x80, 0x89, 0x36, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_3447_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3447_sharedsecret[] = { 0xf4, 0x9b, 0xca, 0x7a, 0x6a, 0x52, 0x56, 0xdd, 0xf7, 0x12, 0x77, 0x59, 0x17, 0xc3, 0x0e, 0x48, 0x73, 0x15, 0x34, 0x69, 0xba, 0xe1, 0x2f, 0xd5, 0xc5, 0x57, 0x10, 0x31, 0xdb, 0x7b, 0x12, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_3447 = { .name = "ecdh_secp256k1_3447", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3447_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3447_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3447_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 990 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3448 for ECDH, tcId is 991 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3448_peerpubkey[] = { 0x0a, 0x0c, 0x37, 0x66, 0x48, 0x23, 0xa5, 0x00, 0x5d, 0x65, 0x9f, 0x7c, 0x73, 0xc3, 0x9e, 0xa1, 0x72, 0xc8, 0x62, 0x96, 0x9c, 0x81, 0xe4, 0x4f, 0x36, 0xc8, 0x9e, 0x7c, 0x26, 0x5e, 0xc8, 0xa8, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_3448_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3448_sharedsecret[] = { 0x9c, 0x88, 0xb6, 0x11, 0xb7, 0xf9, 0xaa, 0xd3, 0x3f, 0xab, 0xb0, 0x9c, 0xff, 0x61, 0x8b, 0xb1, 0xca, 0x6f, 0xb9, 0x04, 0xa2, 0x89, 0xb1, 0x48, 0x1d, 0xa3, 0xd1, 0xe4, 0xe7, 0x25, 0x89, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256k1_3448 = { .name = "ecdh_secp256k1_3448", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3448_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3448_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 991 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3449 for ECDH, tcId is 992 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3449_peerpubkey[] = { 0x47, 0xc3, 0x3f, 0x6f, 0x78, 0xd3, 0xcd, 0x99, 0x71, 0xec, 0xc5, 0x0e, 0x7e, 0x2a, 0xc9, 0x47, 0xf8, 0xc1, 0x10, 0x3f, 0x9c, 0x5f, 0x08, 0x21, 0x37, 0x9b, 0xd0, 0x6a, 0xd8, 0xfc, 0xa4, 0x56, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_3449_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3449_sharedsecret[] = { 0x42, 0xf6, 0x34, 0xc0, 0x6c, 0x4a, 0x0e, 0x7e, 0x95, 0x6d, 0xb6, 0xe8, 0x66, 0x66, 0x60, 0x3d, 0x26, 0x37, 0x4c, 0xc7, 0x4b, 0x11, 0x02, 0x6f, 0x03, 0x18, 0xd1, 0xa2, 0x56, 0x81, 0xa7, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_3449 = { .name = "ecdh_secp256k1_3449", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3449_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3449_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3449_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 992 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3450 for ECDH, tcId is 993 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3450_peerpubkey[] = { 0xb5, 0x9d, 0x18, 0xab, 0x8b, 0x0f, 0x9d, 0xd3, 0x34, 0x84, 0xf4, 0x3c, 0x3f, 0x68, 0x60, 0x22, 0x9b, 0xa6, 0xa4, 0xc2, 0x5a, 0x61, 0xcd, 0x0a, 0xac, 0xa2, 0x3b, 0x76, 0xd6, 0x05, 0x66, 0xcf, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_3450_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3450_sharedsecret[] = { 0xe2, 0xce, 0xb9, 0x46, 0xe7, 0x99, 0x3f, 0x27, 0xa4, 0x32, 0x7a, 0xbd, 0xf6, 0x1d, 0x4f, 0x06, 0x57, 0x7e, 0x89, 0xc6, 0x3b, 0x62, 0xa2, 0x4a, 0xef, 0xbd, 0x90, 0x57, 0x10, 0xd1, 0x86, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256k1_3450 = { .name = "ecdh_secp256k1_3450", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3450_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3450_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3450_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 993 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3451 for ECDH, tcId is 994 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3451_peerpubkey[] = { 0x94, 0xf4, 0x60, 0x1b, 0x24, 0x4d, 0x3a, 0x6e, 0xa6, 0x99, 0x6f, 0xa2, 0x44, 0x36, 0x4f, 0x79, 0x43, 0x99, 0xe0, 0xff, 0x43, 0x16, 0x15, 0x7d, 0xb6, 0x02, 0x32, 0x22, 0xfc, 0x0d, 0x90, 0xbe, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_3451_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3451_sharedsecret[] = { 0x71, 0x63, 0x7a, 0x5d, 0xa2, 0x41, 0x2a, 0x92, 0x1f, 0x16, 0x36, 0xc6, 0x9a, 0x6e, 0xe8, 0x10, 0x83, 0xee, 0x2b, 0x0e, 0x13, 0x76, 0x6a, 0xd1, 0x22, 0x79, 0x1e, 0xf6, 0xf7, 0x71, 0x89, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3451 = { .name = "ecdh_secp256k1_3451", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3451_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3451_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3451_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 994 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3452 for ECDH, tcId is 995 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3452_peerpubkey[] = { 0x9e, 0x8c, 0x11, 0x5b, 0x1a, 0xc8, 0x7d, 0x98, 0x6e, 0xe1, 0xb5, 0x06, 0xb8, 0x6a, 0x4e, 0x7b, 0x8e, 0xa0, 0x41, 0xaa, 0x6a, 0x63, 0xd6, 0xec, 0x80, 0xec, 0x0f, 0x0c, 0xf6, 0x9c, 0xfb, 0x3f, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_3452_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3452_sharedsecret[] = { 0xbd, 0x26, 0x5e, 0xd3, 0x07, 0x8c, 0xa8, 0xc7, 0x78, 0x8f, 0x59, 0x41, 0x87, 0xc9, 0x6c, 0x67, 0x5a, 0xa6, 0x23, 0xec, 0xd0, 0x1b, 0xfc, 0xad, 0x62, 0xd7, 0x6a, 0x78, 0x81, 0x33, 0x4f, 0x63, }; static const wycheproof_ecdh_test ecdh_secp256k1_3452 = { .name = "ecdh_secp256k1_3452", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3452_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3452_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3452_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 995 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3453 for ECDH, tcId is 996 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3453_peerpubkey[] = { 0xee, 0xc7, 0x76, 0xb5, 0x2b, 0x94, 0x14, 0x1f, 0xc8, 0x19, 0xd4, 0xb6, 0xb1, 0x2d, 0x28, 0xe7, 0x35, 0x55, 0xb5, 0x56, 0x05, 0x07, 0xab, 0xa7, 0xdf, 0x6f, 0x04, 0x84, 0x00, 0x8d, 0xe9, 0x1f, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_3453_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3453_sharedsecret[] = { 0x8d, 0x07, 0x3f, 0xc5, 0x92, 0xfb, 0x7a, 0xa6, 0xf7, 0xb9, 0x08, 0xed, 0x07, 0x14, 0x8a, 0xa7, 0xbe, 0x5a, 0x13, 0x5c, 0x4b, 0x34, 0x3e, 0xbe, 0x29, 0x51, 0x98, 0xcb, 0xa7, 0x8e, 0x71, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_3453 = { .name = "ecdh_secp256k1_3453", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3453_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3453_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 996 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3454 for ECDH, tcId is 997 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3454_peerpubkey[] = { 0xaf, 0xf4, 0x6a, 0x38, 0x8e, 0x5a, 0xfc, 0x22, 0x0a, 0x8e, 0xec, 0x7a, 0x49, 0xaf, 0x9d, 0x24, 0x53, 0x84, 0xa3, 0xaf, 0x1e, 0x0b, 0x40, 0x7b, 0x45, 0x21, 0xf4, 0xe9, 0x2d, 0x12, 0xdc, 0xeb, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_3454_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3454_sharedsecret[] = { 0xa2, 0x6d, 0x69, 0x8e, 0x46, 0x13, 0x59, 0x5a, 0xa6, 0x1c, 0x8e, 0x29, 0x07, 0xd5, 0x24, 0x1d, 0x6d, 0x14, 0x90, 0x97, 0x37, 0xdf, 0x59, 0x89, 0x58, 0x41, 0xd0, 0x77, 0x27, 0xbf, 0x13, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_3454 = { .name = "ecdh_secp256k1_3454", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3454_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3454_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 997 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3455 for ECDH, tcId is 998 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3455_peerpubkey[] = { 0xe8, 0x07, 0xe4, 0x3d, 0x96, 0xf3, 0x70, 0x1a, 0x9a, 0x5c, 0x13, 0xd1, 0x22, 0x74, 0x90, 0x84, 0x17, 0x0f, 0xcd, 0x36, 0xa5, 0x86, 0xa4, 0x46, 0xc9, 0xfc, 0xb4, 0x60, 0x0e, 0xed, 0xe4, 0xfd, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_3455_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3455_sharedsecret[] = { 0xa8, 0xed, 0xc6, 0xf9, 0xaf, 0x6b, 0xf7, 0x41, 0x22, 0xc1, 0x1c, 0xa1, 0xa5, 0x0a, 0xfb, 0xc4, 0xa3, 0xc4, 0x98, 0x7b, 0xd0, 0xd1, 0xf7, 0x32, 0x84, 0xd2, 0xc1, 0x37, 0x1e, 0x61, 0x34, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_3455 = { .name = "ecdh_secp256k1_3455", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3455_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3455_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 998 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3456 for ECDH, tcId is 999 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3456_peerpubkey[] = { 0x79, 0x88, 0x68, 0xa5, 0x69, 0x16, 0xd3, 0x41, 0xe7, 0xd6, 0xf9, 0x63, 0x59, 0xae, 0x36, 0x58, 0x83, 0x6e, 0x22, 0x14, 0x59, 0xf4, 0xf7, 0xb7, 0xb6, 0x36, 0x94, 0xde, 0x18, 0xa5, 0xe9, 0x24, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_3456_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3456_sharedsecret[] = { 0x17, 0x96, 0x3d, 0xe0, 0x78, 0x99, 0x6e, 0xb8, 0x50, 0x3c, 0x7c, 0xc3, 0xe1, 0xa2, 0xd5, 0x14, 0x7d, 0x7f, 0x0b, 0xfb, 0x25, 0x1a, 0x02, 0x0b, 0x43, 0x92, 0x03, 0x30, 0x63, 0x58, 0x7c, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3456 = { .name = "ecdh_secp256k1_3456", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3456_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3456_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3456_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 999 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3457 for ECDH, tcId is 1000 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3457_peerpubkey[] = { 0xff, 0x41, 0x99, 0x09, 0xd8, 0xa8, 0xce, 0x0a, 0x94, 0x16, 0x05, 0x1f, 0x4e, 0x25, 0x62, 0x08, 0xc1, 0xdc, 0x03, 0x55, 0x81, 0xa5, 0x33, 0x12, 0xd5, 0x66, 0x13, 0x7e, 0x22, 0x10, 0x4e, 0x98, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_3457_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3457_sharedsecret[] = { 0x06, 0x27, 0x99, 0xa1, 0x95, 0x45, 0xd3, 0x1b, 0x3e, 0xd7, 0x22, 0x53, 0xbc, 0xde, 0x59, 0x76, 0x2a, 0xa6, 0x10, 0x4a, 0x88, 0xac, 0x5e, 0x2f, 0xb6, 0x89, 0x26, 0xb0, 0xf7, 0x14, 0x66, 0x98, }; static const wycheproof_ecdh_test ecdh_secp256k1_3457 = { .name = "ecdh_secp256k1_3457", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3457_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3457_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3457_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1000 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3458 for ECDH, tcId is 1001 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3458_peerpubkey[] = { 0x8b, 0x48, 0x11, 0x9d, 0x70, 0x89, 0xd3, 0xb9, 0x5c, 0xd2, 0xea, 0xf8, 0xc8, 0x55, 0x84, 0xfa, 0x8f, 0x5e, 0x56, 0xc4, 0xc4, 0xcc, 0xee, 0x70, 0x37, 0xd7, 0x4c, 0xdb, 0xf8, 0x8e, 0x57, 0x17, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_3458_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3458_sharedsecret[] = { 0x9f, 0x42, 0xdd, 0x8f, 0xce, 0x13, 0xf8, 0x10, 0x3b, 0x3b, 0x2b, 0xc1, 0x5e, 0x61, 0x24, 0x2e, 0x68, 0x20, 0xfe, 0x13, 0x25, 0xa2, 0x0e, 0xf4, 0x60, 0xfe, 0x64, 0xd9, 0xeb, 0x12, 0xb2, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256k1_3458 = { .name = "ecdh_secp256k1_3458", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3458_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3458_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3458_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1001 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3459 for ECDH, tcId is 1002 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3459_peerpubkey[] = { 0xe2, 0x88, 0x81, 0x19, 0x37, 0x9b, 0x5b, 0x21, 0x51, 0xbd, 0x78, 0x85, 0x05, 0xde, 0xf1, 0xd6, 0xbd, 0x78, 0x63, 0x29, 0x43, 0x1c, 0xaf, 0x39, 0x70, 0x5d, 0x9c, 0xbf, 0x96, 0xa4, 0x2e, 0xa4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_3459_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3459_sharedsecret[] = { 0xd1, 0xb2, 0x04, 0xe5, 0x2d, 0x1f, 0xac, 0x6d, 0x50, 0x41, 0x32, 0xc7, 0x6c, 0xa2, 0x33, 0xc8, 0x7e, 0x37, 0x7d, 0xcc, 0x79, 0xc8, 0x93, 0xc9, 0x70, 0xdd, 0xbb, 0x9f, 0x87, 0xb2, 0x7f, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3459 = { .name = "ecdh_secp256k1_3459", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3459_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3459_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1002 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3460 for ECDH, tcId is 1003 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3460_peerpubkey[] = { 0x6d, 0xcc, 0x39, 0x71, 0xbd, 0x20, 0x91, 0x3d, 0x59, 0xa9, 0x1f, 0x20, 0xd9, 0x12, 0xf5, 0x6d, 0x07, 0xe7, 0xf0, 0x14, 0x20, 0x6b, 0xef, 0x4a, 0x65, 0x3d, 0xdf, 0xe5, 0xd1, 0x28, 0x42, 0xc3, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_3460_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3460_sharedsecret[] = { 0xc8, 0xd6, 0xbd, 0x28, 0xc1, 0xe6, 0x5a, 0xe7, 0xc7, 0xa5, 0xde, 0xbe, 0x67, 0xa7, 0xdf, 0xaf, 0x92, 0xb4, 0x29, 0xed, 0xe3, 0x68, 0xef, 0xc9, 0xda, 0x7d, 0x57, 0x8a, 0x53, 0x9b, 0x70, 0x54, }; static const wycheproof_ecdh_test ecdh_secp256k1_3460 = { .name = "ecdh_secp256k1_3460", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3460_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3460_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3460_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1003 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3461 for ECDH, tcId is 1004 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3461_peerpubkey[] = { 0x7e, 0xbe, 0xa4, 0x58, 0x54, 0x56, 0x9a, 0x1f, 0x7e, 0xa6, 0xb9, 0x5b, 0x82, 0xd6, 0xbe, 0xfe, 0xfb, 0xf6, 0x29, 0x6e, 0xbc, 0x87, 0xc8, 0x10, 0xb6, 0xcb, 0xa9, 0x3c, 0x0c, 0x12, 0x20, 0xb2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_3461_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3461_sharedsecret[] = { 0x0d, 0x1f, 0x90, 0x5c, 0xc7, 0x47, 0x20, 0xbd, 0xe6, 0x7a, 0xe8, 0x4f, 0x58, 0x27, 0x28, 0x58, 0x8c, 0x75, 0x44, 0x4c, 0x27, 0x3d, 0xae, 0x41, 0x06, 0xfa, 0x20, 0xd1, 0xd6, 0x94, 0x64, 0x30, }; static const wycheproof_ecdh_test ecdh_secp256k1_3461 = { .name = "ecdh_secp256k1_3461", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3461_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3461_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3461_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1004 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3462 for ECDH, tcId is 1005 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3462_peerpubkey[] = { 0xce, 0xab, 0x59, 0x37, 0x90, 0x0d, 0x34, 0xfa, 0x88, 0x37, 0x8d, 0x37, 0x1f, 0x4a, 0xca, 0xa7, 0xc6, 0xa2, 0x02, 0x8b, 0x61, 0x43, 0x21, 0x34, 0x13, 0xf1, 0x6b, 0xa2, 0xdc, 0x71, 0x47, 0x87, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_3462_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3462_sharedsecret[] = { 0x3f, 0x01, 0x4e, 0x30, 0x91, 0x92, 0x58, 0x8f, 0xa8, 0x3e, 0x47, 0xd4, 0xac, 0x96, 0x85, 0xd2, 0x04, 0x12, 0x04, 0xe2, 0xea, 0xf6, 0x33, 0xa1, 0x31, 0x28, 0x12, 0xe5, 0x1a, 0xe7, 0x4c, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_3462 = { .name = "ecdh_secp256k1_3462", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3462_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3462_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3462_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1005 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3463 for ECDH, tcId is 1006 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3463_peerpubkey[] = { 0xa4, 0xff, 0xea, 0x5e, 0x25, 0xf7, 0x5e, 0x4f, 0x68, 0x9c, 0x81, 0x08, 0x4a, 0x35, 0xc1, 0x22, 0x0e, 0x8e, 0x6b, 0x91, 0x4c, 0x48, 0x2f, 0x4a, 0x2e, 0x8f, 0x93, 0xcf, 0xfc, 0xa6, 0x96, 0x47, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_3463_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3463_sharedsecret[] = { 0x68, 0xb4, 0x04, 0xd5, 0x56, 0xc8, 0x20, 0x04, 0xc6, 0xc4, 0xbb, 0xa4, 0x51, 0x8e, 0xc0, 0x0b, 0x1d, 0x4f, 0x11, 0x61, 0xca, 0xfe, 0x6c, 0x89, 0xae, 0xb8, 0x49, 0x4a, 0x9b, 0xa0, 0x9d, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3463 = { .name = "ecdh_secp256k1_3463", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3463_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3463_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3463_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1006 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3464 for ECDH, tcId is 1007 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3464_peerpubkey[] = { 0xde, 0x88, 0x09, 0xea, 0x0e, 0xcc, 0xe1, 0xd2, 0x4a, 0x04, 0x31, 0x42, 0x95, 0x10, 0x38, 0x3a, 0x6f, 0x6e, 0x5a, 0x1c, 0x51, 0xce, 0xa3, 0x2d, 0x83, 0x0c, 0x6c, 0x35, 0x30, 0x42, 0x60, 0x3e, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_3464_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3464_sharedsecret[] = { 0xc3, 0x31, 0xad, 0xe7, 0xa4, 0x57, 0xdf, 0x7f, 0x12, 0xa2, 0xf5, 0xc4, 0x3d, 0x7e, 0xa9, 0x48, 0x6c, 0x15, 0x63, 0xb8, 0x1c, 0xd8, 0xa0, 0xf2, 0x3f, 0x92, 0x3c, 0x1a, 0x9f, 0xa6, 0x12, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256k1_3464 = { .name = "ecdh_secp256k1_3464", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3464_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3464_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3464_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1007 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3465 for ECDH, tcId is 1008 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3465_peerpubkey[] = { 0x56, 0x62, 0x09, 0xf1, 0x74, 0xd6, 0xbf, 0x79, 0x72, 0x0b, 0x70, 0xed, 0xb2, 0x7e, 0x51, 0x35, 0x0b, 0xee, 0xb2, 0xb0, 0xbc, 0xd0, 0x83, 0xbb, 0xae, 0x72, 0x14, 0xf7, 0x1c, 0xf8, 0x24, 0xd4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_3465_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3465_sharedsecret[] = { 0x17, 0xb5, 0xc7, 0xa3, 0x11, 0xee, 0xa9, 0xd2, 0xab, 0x75, 0x71, 0xf8, 0xb9, 0xf8, 0x48, 0xd4, 0x70, 0x59, 0x97, 0xcf, 0x3e, 0xaf, 0x9b, 0xdc, 0xbe, 0x0e, 0x34, 0xa6, 0x70, 0xf8, 0x1f, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256k1_3465 = { .name = "ecdh_secp256k1_3465", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3465_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3465_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3465_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1008 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3466 for ECDH, tcId is 1009 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3466_peerpubkey[] = { 0xcc, 0x31, 0x81, 0xc0, 0x12, 0x71, 0x37, 0x53, 0x6c, 0xee, 0xc9, 0x4f, 0xd4, 0x59, 0x96, 0x65, 0x7d, 0xf7, 0x2e, 0x0f, 0x97, 0xc4, 0x4b, 0x9d, 0xad, 0x14, 0x76, 0x3c, 0xe5, 0x06, 0xe9, 0xdc, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_3466_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3466_sharedsecret[] = { 0x2f, 0x0e, 0x4e, 0xcc, 0xbc, 0x45, 0x18, 0xac, 0xe5, 0x58, 0xe0, 0x66, 0x04, 0xf9, 0xbf, 0xf4, 0x78, 0x7f, 0x5b, 0x01, 0x94, 0x37, 0xb5, 0x21, 0x95, 0xec, 0xb6, 0xb8, 0x21, 0x91, 0xa6, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_3466 = { .name = "ecdh_secp256k1_3466", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3466_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3466_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3466_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1009 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3467 for ECDH, tcId is 1010 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3467_peerpubkey[] = { 0xd7, 0x05, 0x2a, 0x1e, 0xea, 0xfc, 0x0e, 0x78, 0xd7, 0x9e, 0x7f, 0x26, 0x00, 0x3a, 0xa0, 0xa4, 0x09, 0x28, 0x7c, 0xf4, 0x76, 0x00, 0x7d, 0xf2, 0x8d, 0x28, 0x1b, 0x14, 0x2b, 0xe1, 0xa0, 0xe2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_3467_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3467_sharedsecret[] = { 0x74, 0x94, 0xd8, 0x64, 0xcb, 0x6e, 0xa9, 0xc5, 0xd9, 0x82, 0xd4, 0x0a, 0x5f, 0x10, 0x37, 0x00, 0xd0, 0x2d, 0xc9, 0x82, 0x63, 0x77, 0x53, 0xcf, 0xc7, 0xd8, 0xaf, 0xe1, 0xbe, 0xaf, 0xff, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_3467 = { .name = "ecdh_secp256k1_3467", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3467_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3467_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3467_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1010 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3468 for ECDH, tcId is 1011 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3468_peerpubkey[] = { 0xb7, 0xcc, 0x3e, 0x23, 0x06, 0xdb, 0xf7, 0xc3, 0x8f, 0xf1, 0x79, 0x65, 0x87, 0x06, 0xfe, 0xff, 0xb5, 0xef, 0xdb, 0x60, 0x44, 0xc7, 0xe7, 0x14, 0x35, 0xd7, 0xff, 0x7d, 0x0a, 0xe8, 0xc7, 0xb3, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_3468_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3468_sharedsecret[] = { 0xa9, 0x68, 0x73, 0xee, 0xf5, 0xd4, 0x38, 0xb8, 0x07, 0x85, 0x3b, 0x67, 0x71, 0xc6, 0xa5, 0x19, 0x7e, 0x6e, 0xef, 0x21, 0xef, 0xef, 0xca, 0x53, 0x8b, 0x45, 0xe9, 0xe9, 0x81, 0xc0, 0x32, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3468 = { .name = "ecdh_secp256k1_3468", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3468_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3468_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3468_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1011 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3469 for ECDH, tcId is 1012 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3469_peerpubkey[] = { 0x5b, 0xbe, 0x7c, 0x98, 0x01, 0x5f, 0xd3, 0xa6, 0x03, 0x4d, 0x79, 0xd8, 0x67, 0xa4, 0xdc, 0xd5, 0x2f, 0x95, 0x91, 0x19, 0x32, 0x12, 0x9d, 0xa2, 0xfc, 0x0a, 0x58, 0xaf, 0xe1, 0x49, 0x13, 0x7f, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_3469_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3469_sharedsecret[] = { 0x91, 0x24, 0x61, 0x89, 0x13, 0xf2, 0x0c, 0xdf, 0xfa, 0x64, 0x22, 0x07, 0xf1, 0x92, 0xe6, 0x7e, 0xb8, 0x0a, 0xde, 0x53, 0xac, 0x55, 0x35, 0x46, 0x9a, 0xbe, 0x90, 0x03, 0x6d, 0x4a, 0xf7, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3469 = { .name = "ecdh_secp256k1_3469", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3469_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3469_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1012 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3470 for ECDH, tcId is 1013 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3470_peerpubkey[] = { 0x96, 0x2f, 0xe4, 0x78, 0x80, 0xa9, 0x4a, 0x74, 0x59, 0x28, 0xe3, 0xc4, 0xa2, 0x9a, 0x42, 0xcb, 0x01, 0x33, 0x4f, 0x1e, 0xe9, 0x64, 0x6e, 0x62, 0x45, 0x1c, 0x46, 0xec, 0xd7, 0x2f, 0x41, 0x09, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_3470_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3470_sharedsecret[] = { 0x9d, 0x8b, 0x74, 0x88, 0x8d, 0x94, 0x28, 0x70, 0xb2, 0x21, 0xde, 0x7a, 0x64, 0x20, 0x32, 0x89, 0x2b, 0xc9, 0x9e, 0x34, 0xbd, 0x85, 0x50, 0x19, 0x5f, 0x6f, 0x5f, 0x09, 0x75, 0x47, 0x33, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3470 = { .name = "ecdh_secp256k1_3470", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3470_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3470_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1013 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3471 for ECDH, tcId is 1014 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3471_peerpubkey[] = { 0xc7, 0x15, 0x74, 0xf5, 0x53, 0x8d, 0xe5, 0x65, 0x3c, 0x37, 0x16, 0x8d, 0x47, 0xa2, 0xbc, 0xf4, 0x36, 0x98, 0xea, 0x26, 0x00, 0x12, 0xcd, 0x0a, 0xe1, 0x30, 0x4e, 0x47, 0x4c, 0x63, 0xa4, 0xe6, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_3471_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3471_sharedsecret[] = { 0x16, 0x98, 0x33, 0x77, 0xc0, 0xf1, 0xa9, 0xc0, 0x04, 0x49, 0x5b, 0x3f, 0xd9, 0x65, 0x83, 0x63, 0x11, 0x6e, 0xea, 0x64, 0x47, 0x87, 0xd0, 0x59, 0xd1, 0x14, 0x0f, 0xb9, 0x07, 0x55, 0x5d, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3471 = { .name = "ecdh_secp256k1_3471", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3471_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3471_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3471_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1014 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3472 for ECDH, tcId is 1015 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3472_peerpubkey[] = { 0xc6, 0x02, 0x44, 0xce, 0x30, 0x6e, 0x37, 0x6f, 0x39, 0x68, 0x17, 0x8f, 0x52, 0x93, 0x74, 0x2d, 0x7a, 0x20, 0xe1, 0xdc, 0x47, 0xcf, 0xc5, 0x17, 0xed, 0xad, 0xa9, 0xdb, 0x49, 0xd0, 0xcb, 0xbf, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_3472_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3472_sharedsecret[] = { 0x08, 0x1a, 0xf4, 0x0a, 0x81, 0xd4, 0x8c, 0x6b, 0x53, 0x01, 0x40, 0xdb, 0x93, 0x5e, 0x60, 0x5b, 0xf4, 0xcc, 0x7b, 0x10, 0x88, 0x5f, 0x5b, 0x14, 0x8f, 0x95, 0xf1, 0xbc, 0x8a, 0xd2, 0xe5, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3472 = { .name = "ecdh_secp256k1_3472", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3472_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3472_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3472_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1015 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3473 for ECDH, tcId is 1016 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3473_peerpubkey[] = { 0xaa, 0x3c, 0x31, 0x88, 0xc0, 0xad, 0x57, 0x67, 0xa9, 0xba, 0xc7, 0x7e, 0x7c, 0xee, 0xa0, 0x5c, 0xfa, 0xe1, 0x59, 0x9c, 0xcd, 0x77, 0xb9, 0xfc, 0xbc, 0x0c, 0x3b, 0xad, 0xc8, 0x0c, 0x36, 0xca, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_3473_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3473_sharedsecret[] = { 0x7e, 0x4b, 0x97, 0x3e, 0x6d, 0x4a, 0x35, 0x7c, 0x40, 0x02, 0x43, 0xa6, 0x48, 0xc8, 0xa0, 0xa6, 0xa3, 0x5c, 0xf2, 0x31, 0x75, 0x4a, 0xfd, 0xef, 0x31, 0x2d, 0x2f, 0x4b, 0x6a, 0xbb, 0x98, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp256k1_3473 = { .name = "ecdh_secp256k1_3473", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3473_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3473_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3473_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1016 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3474 for ECDH, tcId is 1017 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3474_peerpubkey[] = { 0x2c, 0xce, 0x8d, 0xdf, 0xe4, 0x82, 0x7d, 0xc0, 0x30, 0xdd, 0xf3, 0x8f, 0x99, 0x8b, 0x3f, 0x2e, 0xd5, 0xe0, 0x62, 0x1d, 0x0b, 0x38, 0x05, 0x66, 0x6d, 0xaf, 0x48, 0xc8, 0xc3, 0x1e, 0x75, 0xe5, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_3474_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3474_sharedsecret[] = { 0x0f, 0x02, 0x35, 0xda, 0x2a, 0x06, 0xc8, 0xd4, 0x08, 0xc2, 0x71, 0x51, 0xf3, 0xf1, 0x53, 0x42, 0xed, 0x8c, 0x19, 0x45, 0xaa, 0xf8, 0x4e, 0xd1, 0x49, 0x93, 0x78, 0x6d, 0x6a, 0xc5, 0xf5, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_3474 = { .name = "ecdh_secp256k1_3474", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3474_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3474_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3474_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1017 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3475 for ECDH, tcId is 1018 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3475_peerpubkey[] = { 0x14, 0xbf, 0xc3, 0xe5, 0xa4, 0x6b, 0x69, 0x88, 0x1a, 0x9a, 0x34, 0x6d, 0x95, 0x89, 0x44, 0x18, 0x61, 0x4e, 0xd9, 0x14, 0x76, 0xa1, 0xdd, 0xce, 0x48, 0x67, 0x6b, 0x7c, 0xba, 0xb9, 0xba, 0x02, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_3475_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3475_sharedsecret[] = { 0x56, 0x22, 0xc2, 0xfb, 0xe8, 0xaf, 0x5a, 0xd6, 0xce, 0xf7, 0x2a, 0x01, 0xbe, 0x18, 0x6e, 0x55, 0x48, 0x47, 0x57, 0x61, 0x06, 0xf8, 0x97, 0x97, 0x72, 0xfa, 0x56, 0x11, 0x4d, 0x11, 0x60, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_3475 = { .name = "ecdh_secp256k1_3475", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3475_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3475_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3475_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1018 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3476 for ECDH, tcId is 1019 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3476_peerpubkey[] = { 0xbd, 0x44, 0x2f, 0xa5, 0xa2, 0xa8, 0xd7, 0x2e, 0x13, 0xe4, 0x4f, 0xd2, 0x22, 0x2c, 0x85, 0xa0, 0x06, 0xf0, 0x33, 0x75, 0xe0, 0x21, 0x1b, 0x27, 0x2f, 0x55, 0x50, 0x52, 0xb0, 0x3d, 0xb7, 0x50, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_3476_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3476_sharedsecret[] = { 0xbb, 0x95, 0xe0, 0xd0, 0xfb, 0xaa, 0xd8, 0x6c, 0x5b, 0xd8, 0x7b, 0x95, 0x94, 0x6c, 0x77, 0xff, 0x1d, 0x65, 0x32, 0x2a, 0x17, 0x5c, 0xcf, 0x16, 0x41, 0x91, 0x02, 0xc0, 0xa1, 0x7f, 0x5a, 0x72, }; static const wycheproof_ecdh_test ecdh_secp256k1_3476 = { .name = "ecdh_secp256k1_3476", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3476_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3476_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3476_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1019 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3477 for ECDH, tcId is 1020 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3477_peerpubkey[] = { 0x0d, 0x7a, 0x3f, 0xf4, 0x9b, 0xda, 0x6a, 0x58, 0x7e, 0xd0, 0x76, 0x91, 0x45, 0x04, 0x25, 0xaa, 0x02, 0xd2, 0x53, 0xba, 0x57, 0x3a, 0x16, 0xad, 0x86, 0xc6, 0x1a, 0xf4, 0x12, 0xdd, 0x3c, 0x77, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_3477_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3477_sharedsecret[] = { 0x45, 0x10, 0x68, 0x3c, 0x7b, 0xfa, 0x25, 0x1f, 0x0c, 0xb5, 0x6b, 0xba, 0x7e, 0x0a, 0xb7, 0x4d, 0x90, 0xf5, 0xe2, 0xca, 0x01, 0xe9, 0x1e, 0x7c, 0xa9, 0x93, 0x12, 0xcc, 0xff, 0x2d, 0x90, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_3477 = { .name = "ecdh_secp256k1_3477", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3477_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3477_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3477_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1020 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3478 for ECDH, tcId is 1021 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3478_peerpubkey[] = { 0xbd, 0xea, 0x5d, 0x2a, 0x3a, 0xdd, 0xe7, 0xdf, 0x2e, 0x83, 0x9f, 0xf6, 0x3f, 0x62, 0x53, 0x4b, 0x3f, 0x27, 0xcb, 0x19, 0x1b, 0xb5, 0x4d, 0xfa, 0x1d, 0x39, 0xcb, 0xff, 0x71, 0x3b, 0xa9, 0xed, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_3478_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3478_sharedsecret[] = { 0x02, 0x54, 0x85, 0x14, 0x2c, 0xa1, 0xce, 0xd7, 0x52, 0x28, 0x9f, 0x77, 0x21, 0x30, 0xfc, 0x10, 0xc7, 0x5a, 0x45, 0x08, 0xc4, 0x6b, 0xff, 0xde, 0xf9, 0x29, 0x0a, 0xd3, 0xe7, 0xba, 0xf9, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_3478 = { .name = "ecdh_secp256k1_3478", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3478_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3478_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3478_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1021 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3479 for ECDH, tcId is 1022 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3479_peerpubkey[] = { 0xd4, 0xc0, 0x63, 0xe3, 0xc0, 0x36, 0xf4, 0x7c, 0x92, 0xf6, 0xf5, 0x47, 0x0a, 0x26, 0xa8, 0x35, 0xe1, 0xa2, 0x45, 0x05, 0xb1, 0x4d, 0x1b, 0x29, 0x27, 0x90, 0x62, 0xa1, 0x6c, 0xf6, 0xf4, 0x89, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_3479_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3479_sharedsecret[] = { 0x90, 0x67, 0x93, 0x21, 0x50, 0x72, 0x49, 0x65, 0xaa, 0x47, 0x9c, 0x1e, 0xf1, 0xbe, 0x55, 0x54, 0x4b, 0xed, 0x9f, 0xa9, 0x45, 0x00, 0xa3, 0xb6, 0x78, 0x87, 0xed, 0x91, 0xae, 0x3b, 0x81, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3479 = { .name = "ecdh_secp256k1_3479", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3479_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3479_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3479_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1022 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3480 for ECDH, tcId is 1023 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3480_peerpubkey[] = { 0x3c, 0xb9, 0xf0, 0x79, 0x97, 0x75, 0x68, 0x59, 0xe9, 0xb9, 0xa8, 0x5b, 0x68, 0x1f, 0xa5, 0x0e, 0xe2, 0x03, 0x57, 0xf5, 0x35, 0xc1, 0xb3, 0x11, 0xc4, 0x63, 0x7d, 0x16, 0xb7, 0x6b, 0x9e, 0xbf, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_3480_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3480_sharedsecret[] = { 0xf8, 0x08, 0x4a, 0x89, 0xad, 0xcc, 0xdc, 0x3a, 0xef, 0x89, 0xe5, 0x09, 0x1a, 0x0f, 0x07, 0xd6, 0x16, 0x0a, 0x66, 0xcb, 0x95, 0x75, 0x24, 0x11, 0x00, 0xc1, 0xd3, 0x9b, 0xf0, 0x54, 0x9a, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3480 = { .name = "ecdh_secp256k1_3480", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3480_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3480_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3480_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1023 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3481 for ECDH, tcId is 1024 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3481_peerpubkey[] = { 0x79, 0x34, 0x12, 0xff, 0x63, 0x6c, 0x08, 0xa2, 0xd0, 0xf6, 0xd6, 0x0c, 0xc6, 0x08, 0xe9, 0xa9, 0x09, 0x83, 0x49, 0xa2, 0x50, 0x1f, 0x91, 0xc9, 0x5f, 0x69, 0x20, 0x10, 0xbc, 0x12, 0x38, 0xb2, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_3481_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3481_sharedsecret[] = { 0x44, 0x62, 0x55, 0x8c, 0x89, 0x90, 0x21, 0x17, 0x05, 0x1c, 0xb2, 0xc5, 0x99, 0xad, 0x66, 0xf0, 0x08, 0x87, 0xb5, 0x4c, 0xae, 0x3d, 0xa9, 0xc0, 0x4d, 0x31, 0x7a, 0x5b, 0x2a, 0xfb, 0x46, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp256k1_3481 = { .name = "ecdh_secp256k1_3481", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3481_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3481_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3481_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1024 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3482 for ECDH, tcId is 1025 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3482_peerpubkey[] = { 0xbd, 0x1e, 0xb0, 0x84, 0x9e, 0x2e, 0x6a, 0x13, 0xd5, 0x4b, 0x76, 0x51, 0x8f, 0x11, 0xba, 0x87, 0x75, 0xc2, 0xd7, 0x63, 0x4d, 0x85, 0x15, 0x25, 0x34, 0xbc, 0x7c, 0x3a, 0xf4, 0x16, 0x1e, 0xfa, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_3482_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3482_sharedsecret[] = { 0x30, 0xb4, 0x74, 0x1a, 0x64, 0xf8, 0x7d, 0x28, 0xec, 0x00, 0x29, 0xbd, 0x19, 0x6b, 0x5a, 0x74, 0x55, 0x5f, 0x2c, 0x9a, 0x97, 0x6a, 0x46, 0xd6, 0x28, 0x57, 0x24, 0x74, 0x46, 0x6a, 0x63, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3482 = { .name = "ecdh_secp256k1_3482", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3482_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3482_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3482_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1025 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3483 for ECDH, tcId is 1026 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3483_peerpubkey[] = { 0x62, 0x4b, 0x3b, 0x4b, 0xa9, 0x93, 0xa8, 0xb9, 0x38, 0x12, 0x56, 0x89, 0xf6, 0xcf, 0x75, 0x73, 0x92, 0xee, 0x39, 0x0d, 0x14, 0xa9, 0x0f, 0xea, 0x6d, 0xb9, 0x44, 0xb5, 0xa8, 0xde, 0xb8, 0xd0, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_3483_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3483_sharedsecret[] = { 0x3a, 0xfc, 0x04, 0xac, 0x92, 0x11, 0x7e, 0x50, 0xb0, 0x91, 0x3b, 0x09, 0xdb, 0xbb, 0x4e, 0x6c, 0x78, 0x0c, 0x05, 0x15, 0x00, 0x20, 0x1f, 0xad, 0x51, 0x2b, 0x79, 0x08, 0x0b, 0xff, 0x39, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_3483 = { .name = "ecdh_secp256k1_3483", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3483_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3483_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3483_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1026 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3484 for ECDH, tcId is 1027 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3484_peerpubkey[] = { 0xfe, 0x71, 0x0e, 0x3c, 0x5b, 0x46, 0x8d, 0xc3, 0x3c, 0x2b, 0x17, 0x29, 0x5c, 0x4e, 0x18, 0x9b, 0x48, 0x7d, 0x58, 0xdd, 0x43, 0x7a, 0xdf, 0x70, 0x6a, 0xc0, 0x54, 0x93, 0xcf, 0xea, 0x8d, 0xf0, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_3484_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3484_sharedsecret[] = { 0x60, 0x96, 0x37, 0x04, 0x85, 0x86, 0xed, 0xc6, 0x4c, 0xf5, 0xf2, 0x8f, 0x1a, 0x50, 0x57, 0x68, 0xc6, 0x86, 0x47, 0x11, 0x10, 0x07, 0x0d, 0x78, 0x3d, 0xe4, 0x99, 0xff, 0xe6, 0xfe, 0x84, 0xda, }; static const wycheproof_ecdh_test ecdh_secp256k1_3484 = { .name = "ecdh_secp256k1_3484", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3484_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3484_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3484_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1027 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3485 for ECDH, tcId is 1028 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3485_peerpubkey[] = { 0xae, 0x86, 0x4b, 0xa0, 0xc4, 0x1f, 0x2e, 0x1d, 0xfb, 0xac, 0x23, 0x37, 0x02, 0x57, 0x16, 0xd8, 0xbc, 0xad, 0xce, 0xf6, 0x53, 0x9c, 0x6f, 0x1f, 0xf3, 0x35, 0x17, 0x6b, 0x8d, 0xda, 0xa3, 0x6e, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_3485_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3485_sharedsecret[] = { 0xb1, 0xd4, 0xf2, 0x7a, 0x69, 0x83, 0xc8, 0xee, 0x41, 0x7e, 0xf0, 0xf5, 0x27, 0xd8, 0x89, 0xd4, 0xa1, 0xae, 0x41, 0xd3, 0x63, 0x92, 0x44, 0x57, 0x8c, 0x43, 0xd6, 0x50, 0xc2, 0x99, 0xfc, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp256k1_3485 = { .name = "ecdh_secp256k1_3485", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3485_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3485_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3485_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1028 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3486 for ECDH, tcId is 1029 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3486_peerpubkey[] = { 0xc9, 0x87, 0xbd, 0x5a, 0xf9, 0xeb, 0x20, 0x2f, 0x1b, 0x24, 0xda, 0x21, 0x17, 0xca, 0x90, 0xb6, 0xef, 0x8c, 0x82, 0xe7, 0xcf, 0xbf, 0x53, 0x0f, 0x71, 0x41, 0x8f, 0x9a, 0x93, 0xb0, 0x08, 0x5c, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_3486_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3486_sharedsecret[] = { 0x00, 0x07, 0xc9, 0xa2, 0x7a, 0xc5, 0x06, 0x7c, 0x9f, 0x0a, 0xd1, 0xa4, 0xd1, 0xe6, 0x21, 0x10, 0xda, 0x13, 0x18, 0x89, 0x3a, 0x65, 0x87, 0x29, 0x71, 0x3d, 0x82, 0xe3, 0x33, 0x85, 0x5b, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_3486 = { .name = "ecdh_secp256k1_3486", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3486_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3486_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3486_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1029 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3487 for ECDH, tcId is 1030 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3487_peerpubkey[] = { 0x35, 0x67, 0x0f, 0x86, 0xc5, 0xf7, 0x2b, 0x93, 0xab, 0xe4, 0x13, 0x1d, 0x2b, 0xea, 0x1f, 0xce, 0x87, 0x6a, 0xd4, 0xe2, 0x5b, 0x40, 0xd4, 0x2d, 0x44, 0x7d, 0x68, 0xcf, 0xf9, 0x0c, 0xa0, 0xbe, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_3487_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3487_sharedsecret[] = { 0x8a, 0x3b, 0x23, 0xa9, 0x1f, 0x0d, 0x5d, 0xb8, 0x07, 0x4a, 0x6a, 0x88, 0x68, 0x89, 0xee, 0x3e, 0x19, 0xaa, 0xf0, 0x9b, 0x66, 0xac, 0x9a, 0xad, 0x2e, 0x15, 0xc8, 0xbd, 0xba, 0x68, 0x08, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_3487 = { .name = "ecdh_secp256k1_3487", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3487_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3487_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3487_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1030 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3488 for ECDH, tcId is 1031 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3488_peerpubkey[] = { 0xdf, 0xca, 0x67, 0x8a, 0x1b, 0x8e, 0x6f, 0x67, 0x99, 0x6a, 0x09, 0x7f, 0xc9, 0xce, 0x37, 0x41, 0x2d, 0xe9, 0xfb, 0xd9, 0xcf, 0xa1, 0xa2, 0x1b, 0x75, 0x0c, 0xef, 0x48, 0xe5, 0xe5, 0x95, 0xa1, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_3488_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_3488_sharedsecret[] = { 0xc2, 0xaf, 0x76, 0x3f, 0x41, 0x4c, 0xb2, 0xd7, 0xfd, 0x46, 0x25, 0x7f, 0x03, 0x13, 0xb5, 0x82, 0xc0, 0x99, 0xb5, 0xe2, 0x3b, 0x73, 0xe0, 0x73, 0xb5, 0xab, 0x7c, 0x23, 0x0c, 0x45, 0xc8, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_3488 = { .name = "ecdh_secp256k1_3488", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3488_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3488_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3488_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1031 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3489 for ECDH, tcId is 1032 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3489_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3489_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256k1_3489_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_3489 = { .name = "ecdh_secp256k1_3489", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3489_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3489_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3489_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1032 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3490 for ECDH, tcId is 1033 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3490_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3490_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_3490_sharedsecret[] = { 0x58, 0x41, 0xac, 0xd3, 0xcf, 0xf2, 0xd6, 0x28, 0x61, 0xbb, 0xe1, 0x10, 0x84, 0x73, 0x80, 0x06, 0xd6, 0x8c, 0xcf, 0x35, 0xac, 0xae, 0x61, 0x5e, 0xe9, 0x52, 0x47, 0x26, 0xe9, 0x3d, 0x0d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_3490 = { .name = "ecdh_secp256k1_3490", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3490_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3490_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3490_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1033 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3491 for ECDH, tcId is 1034 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3491_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3491_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3491_sharedsecret[] = { 0x43, 0x48, 0xe4, 0xcb, 0xa3, 0x71, 0xea, 0xd0, 0x39, 0x82, 0x01, 0x8a, 0xbc, 0x9a, 0xac, 0xec, 0xae, 0xbf, 0xd6, 0x36, 0xdd, 0xa8, 0x2e, 0x60, 0x9f, 0xd2, 0x98, 0x94, 0x7f, 0x90, 0x7d, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp256k1_3491 = { .name = "ecdh_secp256k1_3491", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3491_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3491_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3491_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1034 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3492 for ECDH, tcId is 1035 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3492_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3492_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_3492_sharedsecret[] = { 0xe5, 0x62, 0x21, 0xc2, 0xb0, 0xdc, 0x33, 0xb9, 0x8b, 0x90, 0xdf, 0xd3, 0x23, 0x9a, 0x2c, 0x0c, 0xb1, 0xe4, 0xad, 0x03, 0x99, 0xa3, 0xaa, 0xef, 0x3f, 0x9d, 0x47, 0xfb, 0x10, 0x3d, 0xae, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256k1_3492 = { .name = "ecdh_secp256k1_3492", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3492_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3492_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3492_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1035 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3493 for ECDH, tcId is 1036 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3493_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3493_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3493_sharedsecret[] = { 0x5b, 0x34, 0xa2, 0x9b, 0x1c, 0x4d, 0xdc, 0xb2, 0x10, 0x11, 0x62, 0xd3, 0x4b, 0xed, 0x9f, 0x07, 0x02, 0x36, 0x1f, 0xe5, 0xaf, 0x50, 0x5d, 0xf3, 0x15, 0xef, 0xf7, 0xbe, 0xfd, 0x0e, 0x47, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256k1_3493 = { .name = "ecdh_secp256k1_3493", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3493_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3493_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3493_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1036 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3494 for ECDH, tcId is 1037 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3494_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3494_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3a, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_3494_sharedsecret[] = { 0xce, 0xce, 0x52, 0x1b, 0x8b, 0x5a, 0x32, 0xbb, 0xee, 0x38, 0x93, 0x6b, 0xa7, 0xd6, 0x45, 0x82, 0x4f, 0x23, 0x8e, 0x56, 0x17, 0x01, 0xa3, 0x86, 0xfb, 0x88, 0x8e, 0x01, 0x0d, 0xb5, 0x4b, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_3494 = { .name = "ecdh_secp256k1_3494", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3494_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3494_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3494_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1037 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3495 for ECDH, tcId is 1038 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3495_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3495_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xc2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_3495_sharedsecret[] = { 0x82, 0x95, 0x21, 0xb7, 0x9d, 0x71, 0xf5, 0x01, 0x1e, 0x07, 0x97, 0x56, 0xb8, 0x51, 0xa0, 0xd5, 0xc8, 0x35, 0x57, 0x86, 0x61, 0x89, 0xa6, 0x25, 0x8c, 0x1e, 0x78, 0xa1, 0x70, 0x0c, 0x69, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256k1_3495 = { .name = "ecdh_secp256k1_3495", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3495_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3495_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3495_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1038 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3496 for ECDH, tcId is 1039 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3496_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3496_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xca, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_3496_sharedsecret[] = { 0x8c, 0x59, 0x34, 0x79, 0x35, 0x05, 0xa6, 0xa1, 0xf8, 0x4d, 0x41, 0x28, 0x33, 0x41, 0x68, 0x0c, 0x49, 0x23, 0xf1, 0xf4, 0xd5, 0x62, 0x98, 0x9a, 0x11, 0xcc, 0x62, 0x6f, 0xea, 0x5e, 0xda, 0x5a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3496 = { .name = "ecdh_secp256k1_3496", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3496_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3496_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3496_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1039 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3497 for ECDH, tcId is 1040 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3497_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3497_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8b, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_3497_sharedsecret[] = { 0x35, 0x6c, 0xae, 0xe7, 0xe7, 0xee, 0xe0, 0x31, 0xa1, 0x5e, 0x54, 0xc3, 0xa5, 0xc4, 0xe7, 0x2f, 0x9c, 0x74, 0xbb, 0x28, 0x7c, 0xe6, 0x01, 0x61, 0x9e, 0xf8, 0x5e, 0xb9, 0x6c, 0x28, 0x94, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_3497 = { .name = "ecdh_secp256k1_3497", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3497_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3497_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3497_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1040 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3498 for ECDH, tcId is 1041 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3498_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3498_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc3, }; static const unsigned char ecdh_secp256k1_3498_sharedsecret[] = { 0x09, 0xc7, 0x33, 0x7d, 0xf6, 0xc2, 0xb3, 0x5e, 0xdf, 0x3a, 0x21, 0x38, 0x25, 0x11, 0xcc, 0x5a, 0xdd, 0x1a, 0x71, 0xa8, 0x4c, 0xbf, 0x8d, 0x33, 0x96, 0xa5, 0xbe, 0x54, 0x8d, 0x92, 0xfa, 0x67, }; static const wycheproof_ecdh_test ecdh_secp256k1_3498 = { .name = "ecdh_secp256k1_3498", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3498_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3498_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3498_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1041 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3499 for ECDH, tcId is 1042 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3499_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3499_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x03, }; static const unsigned char ecdh_secp256k1_3499_sharedsecret[] = { 0xd1, 0x6c, 0xae, 0xdd, 0x25, 0x79, 0x36, 0x66, 0xf9, 0xe2, 0x6f, 0x53, 0x31, 0x38, 0x21, 0x06, 0xf5, 0x40, 0x95, 0xb3, 0xd2, 0x0d, 0x40, 0xc7, 0x45, 0xb6, 0x8c, 0xa7, 0x6c, 0x0e, 0x69, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_3499 = { .name = "ecdh_secp256k1_3499", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3499_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3499_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3499_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1042 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3500 for ECDH, tcId is 1043 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3500_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3500_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x23, }; static const unsigned char ecdh_secp256k1_3500_sharedsecret[] = { 0xb8, 0xae, 0x1e, 0x21, 0xd8, 0xb3, 0x4c, 0xe4, 0xca, 0xff, 0xed, 0x71, 0x67, 0xa2, 0x68, 0x68, 0xec, 0x80, 0xa7, 0xd4, 0xa6, 0xa9, 0x8b, 0x63, 0x9d, 0x4d, 0x05, 0xcd, 0x22, 0x65, 0x04, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_3500 = { .name = "ecdh_secp256k1_3500", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3500_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3500_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3500_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1043 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3501 for ECDH, tcId is 1044 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3501_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3501_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x33, }; static const unsigned char ecdh_secp256k1_3501_sharedsecret[] = { 0x02, 0x77, 0x63, 0x15, 0xfe, 0x14, 0x7a, 0x36, 0xa4, 0xb0, 0x98, 0x74, 0x92, 0xb6, 0x50, 0x3a, 0xcd, 0xea, 0x60, 0xf9, 0x26, 0x45, 0x0e, 0x5e, 0xdd, 0xb9, 0xf8, 0x8f, 0xc8, 0x21, 0x78, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp256k1_3501 = { .name = "ecdh_secp256k1_3501", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3501_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3501_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3501_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1044 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3502 for ECDH, tcId is 1045 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3502_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3502_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3b, }; static const unsigned char ecdh_secp256k1_3502_sharedsecret[] = { 0x39, 0x88, 0xc9, 0xc7, 0x05, 0x0a, 0x28, 0x79, 0x49, 0x34, 0xe5, 0xbd, 0x67, 0x62, 0x9b, 0x55, 0x6d, 0x97, 0xa4, 0x85, 0x8d, 0x22, 0x81, 0x28, 0x35, 0xf4, 0xa3, 0x7d, 0xca, 0x35, 0x19, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256k1_3502 = { .name = "ecdh_secp256k1_3502", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3502_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3502_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3502_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1045 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3503 for ECDH, tcId is 1046 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3503_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3503_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const unsigned char ecdh_secp256k1_3503_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_3503 = { .name = "ecdh_secp256k1_3503", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3503_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3503_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3503_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1046 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3504 for ECDH, tcId is 1047 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3504_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_3504_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, }; static const unsigned char ecdh_secp256k1_3504_sharedsecret[] = { 0x4b, 0x52, 0x25, 0x7d, 0x8b, 0x3b, 0xa3, 0x87, 0x79, 0x7f, 0xdf, 0x7a, 0x75, 0x2f, 0x19, 0x5d, 0xdc, 0x4f, 0x7d, 0x76, 0x26, 0x3d, 0xe6, 0x1d, 0x0d, 0x52, 0xa5, 0xec, 0x14, 0xa3, 0x6c, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp256k1_3504 = { .name = "ecdh_secp256k1_3504", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3504_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3504_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3504_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1047 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3505 for ECDH, tcId is 1048 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3505_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3505_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3505 = { .name = "ecdh_secp256k1_3505", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3505_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3505_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1048 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3506 for ECDH, tcId is 1049 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3506_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3506_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3506 = { .name = "ecdh_secp256k1_3506", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3506_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3506_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1049 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3507 for ECDH, tcId is 1050 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3507_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_3507_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3507 = { .name = "ecdh_secp256k1_3507", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3507_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3507_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1050 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3508 for ECDH, tcId is 1051 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3508_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_3508_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3508 = { .name = "ecdh_secp256k1_3508", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3508_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3508_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1051 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3509 for ECDH, tcId is 1052 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3509_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3509_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3509 = { .name = "ecdh_secp256k1_3509", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3509_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3509_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1052 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3510 for ECDH, tcId is 1053 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3510_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3510_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3510 = { .name = "ecdh_secp256k1_3510", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3510_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3510_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1053 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3511 for ECDH, tcId is 1054 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3511_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_3511_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3511 = { .name = "ecdh_secp256k1_3511", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3511_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3511_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1054 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3512 for ECDH, tcId is 1055 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3512_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_3512_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3512 = { .name = "ecdh_secp256k1_3512", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3512_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3512_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1055 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3513 for ECDH, tcId is 1056 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3513_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3513_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3513 = { .name = "ecdh_secp256k1_3513", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3513_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3513_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1056 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3514 for ECDH, tcId is 1057 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3514_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3514_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3514 = { .name = "ecdh_secp256k1_3514", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3514_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3514_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1057 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3515 for ECDH, tcId is 1058 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3515_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_3515_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3515 = { .name = "ecdh_secp256k1_3515", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3515_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3515_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1058 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3516 for ECDH, tcId is 1059 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3516_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_3516_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3516 = { .name = "ecdh_secp256k1_3516", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3516_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3516_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1059 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3517 for ECDH, tcId is 1060 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3517_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3517_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3517 = { .name = "ecdh_secp256k1_3517", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3517_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3517_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1060 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3518 for ECDH, tcId is 1061 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3518_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_3518_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3518 = { .name = "ecdh_secp256k1_3518", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3518_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3518_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1061 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3519 for ECDH, tcId is 1062 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3519_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_3519_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3519 = { .name = "ecdh_secp256k1_3519", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3519_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3519_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1062 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3520 for ECDH, tcId is 1063 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3520_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_3520_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3520 = { .name = "ecdh_secp256k1_3520", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3520_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3520_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1063 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3521 for ECDH, tcId is 1065 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3521_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe4, }; static const unsigned char ecdh_secp256k1_3521_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3521 = { .name = "ecdh_secp256k1_3521", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3521_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3521_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 1065 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3522 for ECDH, tcId is 1066 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3522_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3522_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3522 = { .name = "ecdh_secp256k1_3522", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3522_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3522_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 1066 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3523 for ECDH, tcId is 1069 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3523_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3523_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3523_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3523 = { .name = "ecdh_secp256k1_3523", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3523_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3523_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3523_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 1069 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3524 for ECDH, tcId is 1070 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3524_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3524_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3524_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3524 = { .name = "ecdh_secp256k1_3524", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3524_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3524_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3524_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 26959946667150639794667015087019630673536463705607434823784316690060, tcId is 1070 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3525 for ECDH, tcId is 1071 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3525_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3525_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3525_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3525 = { .name = "ecdh_secp256k1_3525", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3525_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3525_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3525_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 1071 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3526 for ECDH, tcId is 1072 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3526_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3526_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3526_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3526 = { .name = "ecdh_secp256k1_3526", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3526_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3526_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3526_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 1072 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3527 for ECDH, tcId is 1075 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3527_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3527_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3527_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3527 = { .name = "ecdh_secp256k1_3527", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3527_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3527_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3527_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 1075 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3528 for ECDH, tcId is 1077 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3528_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3528_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3528_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3528 = { .name = "ecdh_secp256k1_3528", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3528_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3528_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3528_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 1077 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3529 for ECDH, tcId is 1080 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3529_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_secp256k1_3529_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_3529 = { .name = "ecdh_secp256k1_3529", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3529_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3529_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 1080 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3530 for ECDH, tcId is 1081 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3530_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe2, }; static const unsigned char ecdh_secp256k1_3530_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const unsigned char ecdh_secp256k1_3530_sharedsecret[] = { 0x38, 0x0c, 0x53, 0xe0, 0xa5, 0x09, 0xeb, 0xb3, 0xb6, 0x33, 0x46, 0x59, 0x81, 0x05, 0x21, 0x9b, 0x43, 0xd5, 0x1a, 0xe1, 0x96, 0xb4, 0x55, 0x7d, 0x59, 0xbb, 0xd6, 0x78, 0x24, 0x03, 0x2d, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3530 = { .name = "ecdh_secp256k1_3530", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3530_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3530_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_3530_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 1081 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3531 for ECDH, tcId is 1084 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3531_peerpubkey[] = { 0x06, 0x37, 0x28, 0x52, 0x58, 0x40, 0x37, 0x72, 0x2a, 0x7f, 0x9b, 0xfa, 0xad, 0x56, 0x61, 0xac, 0xb6, 0x23, 0x16, 0x2d, 0x45, 0xf7, 0x0a, 0x55, 0x2c, 0x61, 0x7f, 0x40, 0x80, 0xe8, 0x73, 0xaa, 0x43, 0x60, 0x92, 0x75, 0xdf, 0xf6, 0xdc, 0xaa, 0xa1, 0x22, 0xa7, 0x45, 0xd0, 0xf1, 0x54, 0x68, 0x1f, 0x9c, 0x77, 0x26, 0x86, 0x7b, 0x43, 0xe7, 0x52, 0x3b, 0x7f, 0x5a, 0xb5, 0xea, 0x96, 0x3e, }; static const unsigned char ecdh_secp256k1_3531_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3531 = { .name = "ecdh_secp256k1_3531", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3531_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3531_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 1084 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3532 for ECDH, tcId is 1089 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3532_peerpubkey[] = { 0x12, 0x0e, 0x4d, 0xb8, 0x49, 0xe5, 0xd9, 0x60, 0x74, 0x1c, 0x7d, 0x22, 0x1a, 0xa8, 0x0f, 0xe6, 0xe4, 0xfc, 0xd5, 0x78, 0x19, 0x1b, 0x7f, 0x84, 0x5a, 0x68, 0xa6, 0xfc, 0xb8, 0x64, 0x77, 0x19, 0xa6, 0xff, 0xfb, 0x61, 0x65, 0xd8, 0xec, 0x39, 0x38, 0x9e, 0xec, 0xc5, 0x30, 0x83, 0x9c, 0x32, 0x1b, 0x2e, 0x90, 0x40, 0x02, 0x7f, 0xba, 0x5d, 0x9c, 0xb9, 0x31, 0x1d, 0xf7, 0xcd, 0x3d, 0x4d, }; static const unsigned char ecdh_secp256k1_3532_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3532 = { .name = "ecdh_secp256k1_3532", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3532_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3532_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256r1, tcId is 1089 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3533 for ECDH, tcId is 1094 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3533_peerpubkey[] = { 0x11, 0x15, 0x79, 0x79, 0xc0, 0x8b, 0xcd, 0x17, 0x5d, 0x34, 0x57, 0x22, 0x09, 0xa8, 0x5f, 0x3f, 0x5d, 0x60, 0x2e, 0x35, 0xbd, 0xc3, 0xb5, 0x53, 0xb0, 0xf1, 0x93, 0x07, 0x67, 0x2b, 0x31, 0xba, 0x69, 0xd0, 0x55, 0x6b, 0xce, 0x48, 0xc4, 0x3e, 0x2e, 0x7e, 0x61, 0x77, 0x05, 0x52, 0x21, 0xa4, 0xc4, 0xb7, 0xeb, 0x17, 0xee, 0x97, 0x08, 0xf4, 0x92, 0x16, 0xde, 0x76, 0xd6, 0xe9, 0x2a, 0xb8, }; static const unsigned char ecdh_secp256k1_3533_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_3533 = { .name = "ecdh_secp256k1_3533", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3533_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3533_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 1094 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3534 for ECDH, tcId is 1098 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3534_peerpubkey[] = { 0x97, 0x7c, 0xb7, 0xfb, 0x9a, 0x0e, 0xc5, 0xb2, 0x08, 0xe8, 0x11, 0xd6, 0xa0, 0x79, 0x5e, 0xb7, 0x8d, 0x76, 0x42, 0xe3, 0xca, 0xc4, 0x2a, 0x80, 0x1b, 0xcc, 0x8f, 0xc0, 0xf0, 0x64, 0x72, 0xd4, }; static const unsigned char ecdh_secp256k1_3534_privkey[] = { 0xd0, 0x91, 0x82, 0xa4, 0xd0, 0xc9, 0x4b, 0xa8, 0x5f, 0x82, 0xef, 0xf9, 0xfc, 0x1b, 0xdd, 0xb0, 0xb0, 0x7d, 0x3f, 0x2a, 0xf8, 0x63, 0x2f, 0xc1, 0xc7, 0x3a, 0x36, 0x04, 0xe8, 0xf0, 0xb3, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256k1_3534 = { .name = "ecdh_secp256k1_3534", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3534_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3534_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 1098 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3535 for ECDH, tcId is 1099 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3535_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3535_privkey[] = { 0x98, 0xb5, 0xc2, 0x23, 0xcf, 0x9c, 0xc0, 0x92, 0x0a, 0x51, 0x45, 0xba, 0x1f, 0xd2, 0xf6, 0xaf, 0xee, 0x7e, 0x1f, 0x66, 0xd0, 0x12, 0x0b, 0x85, 0x36, 0x68, 0x5f, 0xdf, 0x05, 0xeb, 0xb3, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_3535 = { .name = "ecdh_secp256k1_3535", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3535_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3535_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1099 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3536 for ECDH, tcId is 1100 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_3536_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_3536_privkey[] = { 0x98, 0xb5, 0xc2, 0x23, 0xcf, 0x9c, 0xc0, 0x92, 0x0a, 0x51, 0x45, 0xba, 0x1f, 0xd2, 0xf6, 0xaf, 0xee, 0x7e, 0x1f, 0x66, 0xd0, 0x12, 0x0b, 0x85, 0x36, 0x68, 0x5f, 0xdf, 0x05, 0xeb, 0xb2, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_3536 = { .name = "ecdh_secp256k1_3536", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_3536_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp256k1_3536_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1100 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 3537 for ECDH, tcId is 1101 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3537_peerpubkey[] = { 0xb7, 0x9b, 0x23, 0xc9, 0x55, 0x8a, 0x2b, 0xe2, 0x76, 0xb8, 0xd9, 0xed, 0x4a, 0xdc, 0x18, 0x6a, 0xb0, 0x8f, 0x5a, 0xf1, 0xdf, 0x6c, 0x79, 0x85, 0x5d, 0x68, 0x2c, 0xf7, 0x16, 0x66, 0x1e, 0xb3, 0x1d, 0xd7, 0xdb, 0x1f, 0xef, 0x49, 0xce, 0xc4, 0xe1, 0x52, 0x1e, 0x78, 0x3a, 0xbb, 0x51, 0x67, 0x8a, 0x71, 0xa0, 0x50, 0x4e, 0x7a, 0xeb, 0xfb, }; static const unsigned char ecdh_secp224k1_3537_privkey[] = { 0x00, 0xec, 0xfa, 0xf9, 0x2e, 0xe2, 0xc6, 0x17, 0xa5, 0x55, 0x14, 0xfc, 0xfe, 0x2d, 0x0a, 0x2b, 0x23, 0xd3, 0x88, 0xf7, 0xa8, 0x9a, 0x81, 0xb9, 0x6f, 0x36, 0x21, 0xb8, 0xea, }; static const unsigned char ecdh_secp224k1_3537_sharedsecret[] = { 0x3f, 0x41, 0x89, 0xae, 0x58, 0x30, 0x12, 0x22, 0x0f, 0xeb, 0x08, 0x1d, 0x93, 0x50, 0xfe, 0xbe, 0xdf, 0xad, 0xa5, 0x90, 0x48, 0xc9, 0x63, 0xfb, 0x65, 0x3c, 0x62, 0x36, }; static const wycheproof_ecdh_test ecdh_secp224k1_3537 = { .name = "ecdh_secp224k1_3537", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3537_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3537_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3537_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 1101 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3538 for ECDH, tcId is 1102 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3538_peerpubkey[] = { 0xb7, 0x9b, 0x23, 0xc9, 0x55, 0x8a, 0x2b, 0xe2, 0x76, 0xb8, 0xd9, 0xed, 0x4a, 0xdc, 0x18, 0x6a, 0xb0, 0x8f, 0x5a, 0xf1, 0xdf, 0x6c, 0x79, 0x85, 0x5d, 0x68, 0x2c, 0xf7, }; static const unsigned char ecdh_secp224k1_3538_privkey[] = { 0x00, 0xec, 0xfa, 0xf9, 0x2e, 0xe2, 0xc6, 0x17, 0xa5, 0x55, 0x14, 0xfc, 0xfe, 0x2d, 0x0a, 0x2b, 0x23, 0xd3, 0x88, 0xf7, 0xa8, 0x9a, 0x81, 0xb9, 0x6f, 0x36, 0x21, 0xb8, 0xea, }; static const unsigned char ecdh_secp224k1_3538_sharedsecret[] = { 0x3f, 0x41, 0x89, 0xae, 0x58, 0x30, 0x12, 0x22, 0x0f, 0xeb, 0x08, 0x1d, 0x93, 0x50, 0xfe, 0xbe, 0xdf, 0xad, 0xa5, 0x90, 0x48, 0xc9, 0x63, 0xfb, 0x65, 0x3c, 0x62, 0x36, }; static const wycheproof_ecdh_test ecdh_secp224k1_3538 = { .name = "ecdh_secp224k1_3538", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3538_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3538_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3538_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 1102 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3539 for ECDH, tcId is 1103 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3539_peerpubkey[] = { 0xc1, 0x87, 0x0c, 0xb4, 0x4c, 0x52, 0xc0, 0x9c, 0x40, 0xa1, 0x53, 0xb5, 0xdf, 0xed, 0x45, 0xc8, 0xe9, 0x13, 0xf3, 0xd3, 0xda, 0x12, 0xd6, 0xcc, 0x98, 0xb6, 0x08, 0x89, 0xe1, 0x4c, 0x91, 0x3c, 0x77, 0xb7, 0xeb, 0xc9, 0x4a, 0x1a, 0x8e, 0xf2, 0x61, 0x39, 0x00, 0xae, 0xaa, 0x3b, 0x8d, 0x30, 0x2f, 0x1a, 0xec, 0xd0, 0x1e, 0xd4, 0xc3, 0xe1, }; static const unsigned char ecdh_secp224k1_3539_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3539_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp224k1_3539 = { .name = "ecdh_secp224k1_3539", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3539_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3539_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3539_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1103 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3540 for ECDH, tcId is 1104 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3540_peerpubkey[] = { 0x22, 0x35, 0x5c, 0xb9, 0xe2, 0x90, 0xd2, 0x44, 0x9b, 0xd6, 0x81, 0x06, 0xd0, 0x38, 0xe3, 0xb6, 0x2c, 0xbc, 0x5b, 0xed, 0xa3, 0x80, 0x8f, 0x16, 0xdc, 0x64, 0x6c, 0xf4, 0xc4, 0xd7, 0xcf, 0x5d, 0x5c, 0x36, 0xf8, 0xd5, 0xb5, 0x9b, 0xde, 0x2e, 0x9b, 0x19, 0x33, 0xd5, 0x8b, 0x01, 0x46, 0x2f, 0xb4, 0xa8, 0x39, 0x79, 0x20, 0xc3, 0x17, 0x14, }; static const unsigned char ecdh_secp224k1_3540_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3540_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3540 = { .name = "ecdh_secp224k1_3540", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3540_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3540_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3540_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1104 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3541 for ECDH, tcId is 1105 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3541_peerpubkey[] = { 0xd2, 0xbe, 0x6a, 0xad, 0x4c, 0xd7, 0x8b, 0x0b, 0xba, 0x29, 0x79, 0x99, 0xeb, 0xef, 0xa9, 0x7d, 0x94, 0x32, 0xbf, 0x5e, 0x53, 0x54, 0x94, 0x2c, 0xe3, 0x49, 0xd2, 0xa1, 0x40, 0xac, 0x5a, 0x0c, 0xed, 0x2a, 0x9f, 0xd6, 0xbf, 0xfa, 0xb7, 0xcc, 0xaf, 0x15, 0x2d, 0x92, 0xe0, 0x08, 0xee, 0xc8, 0xe5, 0x9c, 0x2f, 0xb5, 0xd1, 0x5e, 0x25, 0xea, }; static const unsigned char ecdh_secp224k1_3541_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3541_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3541 = { .name = "ecdh_secp224k1_3541", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3541_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3541_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3541_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1105 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3542 for ECDH, tcId is 1106 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3542_peerpubkey[] = { 0x21, 0xfe, 0xec, 0x28, 0x33, 0xbd, 0x9a, 0xcd, 0xc8, 0x0b, 0x6f, 0xdf, 0xa7, 0x3f, 0x33, 0x62, 0xc7, 0x84, 0xe8, 0xae, 0xbc, 0x89, 0x3a, 0x56, 0xa9, 0x0a, 0x0e, 0xe3, 0x29, 0x81, 0x70, 0xfb, 0x79, 0x9b, 0x1b, 0x0c, 0x87, 0x12, 0xa1, 0x45, 0xdb, 0x6e, 0x56, 0x16, 0x8c, 0x15, 0xa8, 0x5b, 0x70, 0x11, 0xe6, 0xa5, 0x3d, 0x2c, 0xc7, 0x0f, }; static const unsigned char ecdh_secp224k1_3542_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3542_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224k1_3542 = { .name = "ecdh_secp224k1_3542", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3542_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3542_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3542_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1106 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3543 for ECDH, tcId is 1107 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3543_peerpubkey[] = { 0x5c, 0xaf, 0x4e, 0x89, 0xde, 0x57, 0x23, 0x17, 0xd4, 0x79, 0x75, 0x12, 0x59, 0x54, 0x01, 0xf2, 0x7e, 0x28, 0xa2, 0xad, 0x41, 0xe6, 0x11, 0xf6, 0x6d, 0xe2, 0x99, 0x36, 0x4f, 0x19, 0x4a, 0x3e, 0x15, 0xb6, 0xfe, 0xc7, 0xdd, 0xef, 0x84, 0xfc, 0xe4, 0x22, 0x11, 0xbd, 0x7b, 0x8e, 0x3c, 0x6f, 0xef, 0x45, 0x75, 0xc1, 0xb6, 0x6f, 0x73, 0x4c, }; static const unsigned char ecdh_secp224k1_3543_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3543_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3543 = { .name = "ecdh_secp224k1_3543", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3543_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3543_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3543_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1107 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3544 for ECDH, tcId is 1108 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3544_peerpubkey[] = { 0x4b, 0x9d, 0x70, 0xd1, 0x7c, 0x29, 0x81, 0xd7, 0xcd, 0xc9, 0x79, 0xdf, 0x24, 0x37, 0x24, 0x7a, 0x58, 0x93, 0x43, 0xba, 0x36, 0x6e, 0x4f, 0x91, 0x07, 0x76, 0x71, 0xab, 0x8b, 0xb4, 0x2c, 0x92, 0x6b, 0x3e, 0x3d, 0x92, 0x08, 0x05, 0xf6, 0xc2, 0xdc, 0xa9, 0xd8, 0x2d, 0x90, 0x61, 0x88, 0x05, 0x57, 0xa4, 0xb9, 0x3c, 0xa0, 0xcd, 0x8a, 0xa5, }; static const unsigned char ecdh_secp224k1_3544_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3544_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3544 = { .name = "ecdh_secp224k1_3544", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3544_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3544_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3544_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1108 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3545 for ECDH, tcId is 1109 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3545_peerpubkey[] = { 0x71, 0xda, 0x09, 0x63, 0x86, 0x5e, 0xe5, 0xee, 0x30, 0x4b, 0x22, 0x64, 0xeb, 0x7b, 0x42, 0x77, 0x0a, 0x2d, 0x0f, 0x95, 0x5a, 0xe7, 0x87, 0x86, 0xb8, 0x51, 0x10, 0x34, 0xa4, 0x5f, 0xc8, 0x19, 0x95, 0xc3, 0x39, 0xab, 0x19, 0x5c, 0x4a, 0x1c, 0xa0, 0x05, 0x8f, 0x4c, 0x68, 0xb2, 0xed, 0xab, 0xd2, 0x2a, 0x45, 0x4c, 0xe7, 0xca, 0x7d, 0x33, }; static const unsigned char ecdh_secp224k1_3545_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3545_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3545 = { .name = "ecdh_secp224k1_3545", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3545_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3545_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3545_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1109 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3546 for ECDH, tcId is 1110 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3546_peerpubkey[] = { 0x2c, 0x3c, 0x7e, 0x22, 0x48, 0xed, 0x90, 0x42, 0xad, 0xf0, 0xbe, 0x42, 0x54, 0x95, 0x22, 0x30, 0x0b, 0xef, 0x18, 0xc9, 0x62, 0xe4, 0x46, 0x77, 0x08, 0x7b, 0x29, 0x75, 0xbc, 0x9f, 0x8f, 0x56, 0xd5, 0x2b, 0xaf, 0x43, 0x90, 0xe7, 0xd0, 0xba, 0x04, 0x4b, 0x9d, 0x87, 0xe8, 0x76, 0xd1, 0x77, 0x44, 0x20, 0xe1, 0x00, 0x90, 0x49, 0xc9, 0x77, }; static const unsigned char ecdh_secp224k1_3546_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3546_sharedsecret[] = { 0x7e, 0x18, 0x71, 0x04, 0x59, 0x88, 0x16, 0x30, 0x72, 0xb3, 0x96, 0x96, 0x11, 0xba, 0xdf, 0x33, 0x34, 0xf1, 0x9c, 0x90, 0x18, 0xdd, 0xcc, 0xa8, 0xa4, 0xa2, 0x32, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp224k1_3546 = { .name = "ecdh_secp224k1_3546", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3546_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3546_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3546_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1110 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3547 for ECDH, tcId is 1111 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3547_peerpubkey[] = { 0xec, 0x3a, 0xc2, 0x04, 0xf6, 0x7a, 0x51, 0x9f, 0xcf, 0x05, 0xd3, 0x58, 0xad, 0xe4, 0x5f, 0xda, 0xaf, 0x2f, 0xfb, 0x0f, 0x4e, 0x7c, 0x4c, 0x73, 0x36, 0x00, 0xcb, 0x82, 0x5c, 0x45, 0xb1, 0x9c, 0xf8, 0x5c, 0x60, 0x83, 0xe5, 0xad, 0x8a, 0xb0, 0x77, 0xd3, 0x21, 0x8b, 0x44, 0x12, 0x9b, 0xe1, 0x55, 0xd8, 0x20, 0x30, 0xe4, 0x51, 0x40, 0x2f, }; static const unsigned char ecdh_secp224k1_3547_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3547_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp224k1_3547 = { .name = "ecdh_secp224k1_3547", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3547_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3547_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3547_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1111 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3548 for ECDH, tcId is 1112 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3548_peerpubkey[] = { 0x52, 0x41, 0x74, 0xf9, 0xd0, 0xf7, 0x78, 0xcc, 0xe0, 0x7d, 0x20, 0x09, 0xdb, 0xc4, 0xdb, 0x53, 0x2b, 0x6a, 0xa3, 0x56, 0x18, 0x57, 0xce, 0x09, 0xd8, 0x1a, 0x1e, 0xde, 0xfa, 0x7a, 0xdd, 0x74, 0x4f, 0x68, 0xac, 0xfc, 0x50, 0x04, 0xcb, 0x28, 0x0b, 0xa6, 0x7c, 0x9d, 0xd3, 0xd8, 0x09, 0xc2, 0x51, 0xb4, 0x87, 0x30, 0xde, 0xe4, 0x0d, 0x43, }; static const unsigned char ecdh_secp224k1_3548_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3548_sharedsecret[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3548 = { .name = "ecdh_secp224k1_3548", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3548_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3548_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3548_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1112 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3549 for ECDH, tcId is 1113 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3549_peerpubkey[] = { 0x8b, 0x6d, 0xd0, 0x4f, 0x1b, 0x50, 0xa9, 0xff, 0xb7, 0x8e, 0x54, 0x3f, 0x12, 0x54, 0xa9, 0xdf, 0x6d, 0xc1, 0xf3, 0x5e, 0x38, 0x66, 0x2a, 0x1a, 0x7c, 0x53, 0x75, 0x35, 0x65, 0xcb, 0x17, 0x4b, 0x2e, 0x2c, 0x8f, 0x14, 0xe4, 0x42, 0x2a, 0x64, 0x7b, 0xcc, 0x68, 0xa2, 0xb4, 0xe2, 0xd5, 0x67, 0xa7, 0x62, 0x3d, 0xab, 0xb7, 0xc0, 0x28, 0xcd, }; static const unsigned char ecdh_secp224k1_3549_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3549_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp224k1_3549 = { .name = "ecdh_secp224k1_3549", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3549_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3549_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3549_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1113 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3550 for ECDH, tcId is 1114 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3550_peerpubkey[] = { 0xd6, 0xe3, 0x7a, 0x6a, 0x96, 0xfb, 0x26, 0x38, 0x4d, 0x3d, 0x48, 0x42, 0x23, 0x2b, 0xa0, 0x56, 0x3a, 0xc8, 0xc3, 0x66, 0x9a, 0x70, 0x5f, 0x91, 0xc6, 0x5e, 0x01, 0xcd, 0x5c, 0xca, 0x79, 0x54, 0x04, 0x5e, 0x39, 0xe7, 0xbf, 0x59, 0xd5, 0xf1, 0x3e, 0x19, 0xd2, 0xee, 0x69, 0xf3, 0x6e, 0xe2, 0xdb, 0x65, 0x45, 0xcf, 0x93, 0xa1, 0xf4, 0xf5, }; static const unsigned char ecdh_secp224k1_3550_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3550_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224k1_3550 = { .name = "ecdh_secp224k1_3550", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3550_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3550_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3550_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1114 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3551 for ECDH, tcId is 1115 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3551_peerpubkey[] = { 0xba, 0x3d, 0x2c, 0x40, 0x42, 0xe3, 0x01, 0xbe, 0x5f, 0x67, 0x4e, 0x05, 0x86, 0x19, 0x00, 0xeb, 0x32, 0xf1, 0x74, 0x15, 0xd3, 0x55, 0xe3, 0x5f, 0x4d, 0x34, 0x84, 0xec, 0x6a, 0xcb, 0xba, 0x93, 0x2b, 0x49, 0x0c, 0xa6, 0x94, 0xf2, 0xa9, 0x43, 0x57, 0x3d, 0xe0, 0xae, 0xcb, 0xa5, 0xe9, 0x80, 0xb4, 0x1e, 0xd3, 0x36, 0x95, 0x54, 0xf3, 0x7e, }; static const unsigned char ecdh_secp224k1_3551_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3551_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp224k1_3551 = { .name = "ecdh_secp224k1_3551", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3551_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3551_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3551_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1115 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3552 for ECDH, tcId is 1116 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3552_peerpubkey[] = { 0xbe, 0xf2, 0x73, 0xb6, 0x21, 0x05, 0xe2, 0xa8, 0xe3, 0x21, 0x16, 0x41, 0xd2, 0xcd, 0xbd, 0xb9, 0x04, 0x59, 0xc9, 0x78, 0x2c, 0x3b, 0x4b, 0x7f, 0x9b, 0xb5, 0x48, 0x16, 0x91, 0x28, 0xea, 0x58, 0x25, 0x09, 0x11, 0xbe, 0x1f, 0x50, 0x76, 0xe1, 0x42, 0x39, 0x0a, 0xec, 0x4f, 0xe7, 0x83, 0xca, 0xa2, 0x35, 0x72, 0x67, 0x1c, 0x12, 0x6a, 0x56, }; static const unsigned char ecdh_secp224k1_3552_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3552_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6b, }; static const wycheproof_ecdh_test ecdh_secp224k1_3552 = { .name = "ecdh_secp224k1_3552", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3552_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3552_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3552_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1116 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3553 for ECDH, tcId is 1117 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3553_peerpubkey[] = { 0xa1, 0x05, 0x27, 0x86, 0x6b, 0xd6, 0x71, 0xa9, 0x3e, 0xec, 0x79, 0x38, 0x74, 0x15, 0x15, 0x22, 0x04, 0x9f, 0x4b, 0x76, 0x0e, 0x36, 0x2e, 0x5c, 0xbf, 0x90, 0xce, 0xf4, 0x2e, 0x73, 0x2f, 0x18, 0x0e, 0xc2, 0x03, 0x61, 0x71, 0x0f, 0x68, 0xac, 0xc6, 0x36, 0xbe, 0x2f, 0x35, 0x02, 0x00, 0xe4, 0x25, 0x34, 0x65, 0xa3, 0xbc, 0xe6, 0x29, 0x87, }; static const unsigned char ecdh_secp224k1_3553_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf7, 0xa4, 0xb9, 0xe7, 0xcb, 0x00, 0x55, 0x44, 0xb2, 0xa9, 0xa2, 0x95, 0xe2, 0x51, 0x9d, 0x49, 0x86, 0x74, 0x5f, 0xcc, 0x78, 0x99, 0xd6, }; static const unsigned char ecdh_secp224k1_3553_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp224k1_3553 = { .name = "ecdh_secp224k1_3553", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3553_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3553_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3553_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1117 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3554 for ECDH, tcId is 1118 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3554_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x16, 0xc4, 0x80, 0x5d, 0xc7, 0xab, 0xc9, 0xa9, 0xc5, 0x9d, 0xd8, 0xfb, 0x4d, 0x9d, 0x37, 0x9d, 0x3b, 0xd4, 0xf4, 0xa2, 0xe9, 0xbe, 0xb7, 0x66, 0xd4, 0xd9, 0x99, 0xab, }; static const unsigned char ecdh_secp224k1_3554_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3554_sharedsecret[] = { 0x11, 0x4d, 0x4f, 0xea, 0x7c, 0x73, 0x2f, 0x10, 0xf8, 0x34, 0xa7, 0xbf, 0x0e, 0x4d, 0x4c, 0x9a, 0xdd, 0x46, 0x4c, 0x2d, 0xa9, 0x07, 0x03, 0x16, 0x03, 0x61, 0x4f, 0x86, }; static const wycheproof_ecdh_test ecdh_secp224k1_3554 = { .name = "ecdh_secp224k1_3554", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3554_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3554_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3554_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1118 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3555 for ECDH, tcId is 1119 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3555_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2e, 0xdc, 0x97, 0xc6, 0xad, 0x39, 0x3b, 0xe4, 0xbf, 0x15, 0x86, 0x28, 0x08, 0xa3, 0x45, 0xc6, 0xb8, 0xc2, 0x9b, 0x84, 0xaf, 0xd9, 0x8a, 0xf3, 0x08, 0x4a, 0x75, 0xc6, }; static const unsigned char ecdh_secp224k1_3555_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3555_sharedsecret[] = { 0xfe, 0xae, 0x1b, 0x29, 0x5b, 0x89, 0x43, 0x8f, 0xd0, 0x8d, 0x95, 0x96, 0xf5, 0x0c, 0x11, 0xcb, 0x43, 0x94, 0x06, 0x7f, 0x51, 0xfc, 0x9a, 0x09, 0xaa, 0xef, 0x50, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp224k1_3555 = { .name = "ecdh_secp224k1_3555", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3555_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3555_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3555_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1119 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3556 for ECDH, tcId is 1120 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3556_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x04, 0x4f, 0xfd, 0x6a, 0xdb, 0x4d, 0xa7, 0xd9, 0x13, 0xec, 0x4c, 0x9c, 0x98, 0xb9, 0x08, 0x3a, 0x37, 0xf6, 0x86, 0x0d, 0x97, 0xf6, 0xe4, 0x54, 0x4b, 0x9e, 0x3f, 0xec, }; static const unsigned char ecdh_secp224k1_3556_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3556_sharedsecret[] = { 0x47, 0x92, 0x17, 0x6d, 0x22, 0x09, 0x99, 0x7e, 0x22, 0x29, 0x7c, 0x56, 0x60, 0xab, 0x22, 0x72, 0x30, 0x43, 0xfd, 0xe0, 0x05, 0x31, 0x79, 0x77, 0xb6, 0x70, 0xa2, 0xb1, }; static const wycheproof_ecdh_test ecdh_secp224k1_3556 = { .name = "ecdh_secp224k1_3556", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3556_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3556_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3556_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1120 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3557 for ECDH, tcId is 1121 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3557_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0xd1, 0xeb, 0x3a, 0x90, 0x64, 0xa4, 0x70, 0xd4, 0x31, 0x7d, 0x4b, 0x7b, 0xc5, 0x27, 0x0a, 0xee, 0xe5, 0xde, 0x70, 0xc2, 0x43, 0xb0, 0x5a, 0xb3, 0xf1, 0xd3, 0x82, }; static const unsigned char ecdh_secp224k1_3557_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3557_sharedsecret[] = { 0x7a, 0x2f, 0xe0, 0x4f, 0x3f, 0xa9, 0x1d, 0x89, 0x48, 0x2c, 0x34, 0x7c, 0xbb, 0xb2, 0x0d, 0x3f, 0x10, 0xbf, 0x65, 0x47, 0x49, 0x64, 0x71, 0xea, 0x20, 0x50, 0xf3, 0xca, }; static const wycheproof_ecdh_test ecdh_secp224k1_3557 = { .name = "ecdh_secp224k1_3557", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3557_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3557_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3557_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1121 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3558 for ECDH, tcId is 1122 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3558_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x0e, 0xa1, 0xa6, 0xb3, 0xa0, 0x3b, 0xfb, 0xbd, 0x77, 0x1f, 0x8d, 0x57, 0x88, 0x73, 0xda, 0xe2, 0x00, 0xd2, 0xb2, 0x33, 0xcd, 0x86, 0x95, 0x92, 0x84, 0x94, 0xab, 0x41, }; static const unsigned char ecdh_secp224k1_3558_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3558_sharedsecret[] = { 0xf9, 0xaf, 0x36, 0x42, 0x89, 0xa2, 0x1f, 0xef, 0x1d, 0xd2, 0xe4, 0xd5, 0xe0, 0x91, 0x89, 0x22, 0x4d, 0xaa, 0x1b, 0x47, 0x65, 0x00, 0xe8, 0x39, 0x7e, 0xc4, 0xb0, 0x44, }; static const wycheproof_ecdh_test ecdh_secp224k1_3558 = { .name = "ecdh_secp224k1_3558", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3558_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3558_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3558_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1122 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3559 for ECDH, tcId is 1123 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3559_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x0c, 0x93, 0xc5, 0xef, 0x17, 0x65, 0xb2, 0xa5, 0x33, 0x70, 0xb0, 0x9b, 0x6a, 0x4a, 0x4b, 0x2d, 0xa0, 0x36, 0x39, 0x5c, 0x58, 0x2d, 0x3a, 0x5e, 0x17, 0x3f, 0x68, 0x77, }; static const unsigned char ecdh_secp224k1_3559_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3559_sharedsecret[] = { 0x18, 0x0a, 0x7c, 0xa2, 0x3e, 0x22, 0xf1, 0xfa, 0x2a, 0xf2, 0x4c, 0x8f, 0x22, 0x59, 0xb2, 0xf2, 0xc1, 0x84, 0x16, 0x8c, 0x3d, 0x0c, 0x3c, 0x17, 0xd0, 0x59, 0x1a, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp224k1_3559 = { .name = "ecdh_secp224k1_3559", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3559_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3559_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3559_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1123 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3560 for ECDH, tcId is 1124 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3560_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x20, 0xb8, 0x9c, 0xe9, 0x3c, 0xb8, 0x4b, 0xa1, 0xfb, 0x09, 0x02, 0x76, 0xa8, 0x0d, 0x0c, 0x9a, 0x5f, 0x1e, 0x7b, 0x31, 0x89, 0x96, 0x04, 0x64, 0x98, 0x27, 0xd6, 0xba, }; static const unsigned char ecdh_secp224k1_3560_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3560_sharedsecret[] = { 0xfe, 0x12, 0xbf, 0xa4, 0xc4, 0xa0, 0x24, 0xf1, 0x87, 0x30, 0x74, 0x74, 0x32, 0x91, 0xf5, 0xca, 0x60, 0x53, 0x52, 0x8c, 0x98, 0x2c, 0xa3, 0xcf, 0x7a, 0x2c, 0xde, 0x87, }; static const wycheproof_ecdh_test ecdh_secp224k1_3560 = { .name = "ecdh_secp224k1_3560", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3560_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3560_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3560_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1124 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3561 for ECDH, tcId is 1125 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3561_peerpubkey[] = { 0x7e, 0x18, 0x71, 0x04, 0x59, 0x88, 0x16, 0x30, 0x72, 0xb3, 0x96, 0x96, 0x11, 0xba, 0xdf, 0x33, 0x34, 0xf1, 0x9c, 0x90, 0x18, 0xdd, 0xcc, 0xa8, 0xa4, 0xa2, 0x32, 0xe5, 0x04, 0x7c, 0x6c, 0xda, 0xe5, 0x02, 0xda, 0x2c, 0x15, 0xff, 0x9e, 0xd2, 0x8c, 0x1c, 0x96, 0xf4, 0x0e, 0x75, 0x2f, 0x72, 0x0f, 0xb2, 0xb4, 0xe7, 0x7d, 0xbc, 0x4f, 0x69, }; static const unsigned char ecdh_secp224k1_3561_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3561_sharedsecret[] = { 0xe8, 0x28, 0x7a, 0x83, 0x43, 0x30, 0x82, 0xd2, 0x17, 0xfb, 0x54, 0x73, 0x0d, 0xb5, 0x80, 0xe5, 0x56, 0x6d, 0xea, 0x8f, 0x3e, 0xa9, 0x20, 0x0b, 0xbc, 0xd6, 0x54, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp224k1_3561 = { .name = "ecdh_secp224k1_3561", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3561_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3561_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3561_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1125 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3562 for ECDH, tcId is 1126 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3562_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x18, 0xea, 0xf3, 0x63, 0xc7, 0x39, 0x76, 0x67, 0xe2, 0xaa, 0xdf, 0x35, 0x14, 0xaf, 0x7f, 0x0b, 0x10, 0x7b, 0xad, 0x36, 0x46, 0x0f, 0x4d, 0x01, 0x92, 0x90, 0x75, 0x3e, }; static const unsigned char ecdh_secp224k1_3562_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3562_sharedsecret[] = { 0x71, 0x1a, 0xa1, 0x90, 0x40, 0x01, 0x52, 0xc4, 0x02, 0x12, 0xda, 0x4f, 0xb1, 0xd3, 0xe4, 0x14, 0xb9, 0xa6, 0xe5, 0x56, 0x3c, 0xe2, 0xda, 0xd9, 0xb6, 0x4d, 0xa4, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp224k1_3562 = { .name = "ecdh_secp224k1_3562", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3562_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3562_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3562_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1126 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3563 for ECDH, tcId is 1127 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3563_peerpubkey[] = { 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x2e, 0xdb, 0xb4, 0x2f, 0x00, 0x32, 0x6f, 0xf1, 0x7d, 0x3d, 0x91, 0xe2, 0xc4, 0x40, 0x90, 0xd3, 0xfd, 0x00, 0xc5, 0xf3, 0x29, 0x8f, 0x51, 0xec, 0x66, 0x3c, 0x76, 0x8e, }; static const unsigned char ecdh_secp224k1_3563_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3563_sharedsecret[] = { 0x4c, 0xbb, 0x80, 0x76, 0xc3, 0x0e, 0xbe, 0xd3, 0x91, 0x6a, 0xc7, 0x62, 0xaa, 0x8a, 0x03, 0x7c, 0x03, 0x43, 0xdd, 0x6e, 0xce, 0x78, 0xfd, 0x5e, 0x22, 0xb6, 0xf9, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp224k1_3563 = { .name = "ecdh_secp224k1_3563", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3563_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3563_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3563_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1127 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3564 for ECDH, tcId is 1128 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3564_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x56, 0xfd, 0xd2, 0x82, 0x39, 0x5c, 0x83, 0xdf, 0x9c, 0x25, 0x99, 0x95, 0x93, 0xa0, 0x49, 0xe1, 0x75, 0x57, 0x22, 0xc3, 0x2b, 0xdc, 0x42, 0xac, 0xdf, 0x72, 0xcf, 0x1e, }; static const unsigned char ecdh_secp224k1_3564_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3564_sharedsecret[] = { 0x15, 0x1c, 0x19, 0x73, 0x19, 0xb1, 0x92, 0x6c, 0x49, 0x30, 0x1d, 0xcb, 0x55, 0x22, 0xe2, 0xcd, 0x4d, 0xe6, 0xd2, 0x16, 0x82, 0xa3, 0xb4, 0x61, 0x34, 0x41, 0x03, 0x69, }; static const wycheproof_ecdh_test ecdh_secp224k1_3564 = { .name = "ecdh_secp224k1_3564", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3564_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3564_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3564_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1128 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3565 for ECDH, tcId is 1129 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3565_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x6e, 0x47, 0x76, 0xb6, 0x69, 0x4d, 0x11, 0x6f, 0xfe, 0xba, 0x5a, 0xed, 0x01, 0x5d, 0x53, 0x18, 0xbd, 0x11, 0x00, 0x04, 0xe7, 0xb1, 0x32, 0x93, 0x9b, 0x30, 0x94, 0x23, }; static const unsigned char ecdh_secp224k1_3565_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3565_sharedsecret[] = { 0x1d, 0xea, 0xcb, 0x91, 0x27, 0xcf, 0xee, 0xdf, 0x03, 0xdd, 0xc6, 0x83, 0x1e, 0x0d, 0x0d, 0x4f, 0xa2, 0x43, 0x83, 0xd7, 0x99, 0x05, 0xda, 0x38, 0x5b, 0x72, 0x02, 0x6e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3565 = { .name = "ecdh_secp224k1_3565", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3565_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3565_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3565_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1129 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3566 for ECDH, tcId is 1130 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3566_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x84, 0x77, 0x0d, 0xba, 0x5a, 0x35, 0x70, 0xd6, 0x3e, 0xeb, 0xcb, 0x96, 0x10, 0x91, 0xf5, 0xc6, 0x94, 0x7f, 0xfa, 0x28, 0xbc, 0x00, 0xa8, 0x88, 0xad, 0xd4, 0x3b, }; static const unsigned char ecdh_secp224k1_3566_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3566_sharedsecret[] = { 0x2e, 0xc2, 0xdf, 0x15, 0xad, 0xc3, 0xd7, 0x14, 0xc5, 0x32, 0x71, 0x48, 0xbf, 0xac, 0x67, 0xad, 0xaa, 0x75, 0xda, 0xe8, 0x39, 0x7b, 0x67, 0xd4, 0x6f, 0xcb, 0xae, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp224k1_3566 = { .name = "ecdh_secp224k1_3566", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3566_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3566_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3566_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1130 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3567 for ECDH, tcId is 1131 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3567_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6b, 0x03, 0xe2, 0xf1, 0xff, 0x49, 0x62, 0xf9, 0x13, 0xcd, 0xee, 0x75, 0xd9, 0xc5, 0x55, 0xaa, 0xf5, 0xe9, 0x81, 0x4e, 0x91, 0x6c, 0x79, 0x06, 0x12, 0x8f, 0x64, 0xfc, 0x09, }; static const unsigned char ecdh_secp224k1_3567_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3567_sharedsecret[] = { 0x2b, 0xb5, 0x35, 0x12, 0xe6, 0xa5, 0x92, 0x20, 0xf4, 0xf6, 0xd6, 0xcd, 0xa1, 0x96, 0x9e, 0xcc, 0x36, 0xab, 0x5d, 0xcf, 0x8e, 0x83, 0x84, 0xff, 0x69, 0x9c, 0x59, 0x22, }; static const wycheproof_ecdh_test ecdh_secp224k1_3567 = { .name = "ecdh_secp224k1_3567", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3567_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3567_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3567_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1131 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3568 for ECDH, tcId is 1132 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3568_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const unsigned char ecdh_secp224k1_3568_privkey[] = { 0x00, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1d, 0x5e, 0xde, 0x34, 0xbd, 0xaa, 0x30, 0x2e, 0xbd, 0x38, 0x5b, 0xb2, 0xf0, 0x83, 0xb3, 0x0a, 0x2f, 0x2b, 0x5c, 0x24, 0xfd, 0x85, 0xe3, }; static const unsigned char ecdh_secp224k1_3568_sharedsecret[] = { 0xf4, 0x4b, 0xd7, 0xe7, 0x9a, 0x04, 0x9d, 0x1a, 0x74, 0xd8, 0x30, 0xf5, 0xcf, 0xda, 0xb2, 0x9f, 0x9a, 0xf2, 0xc7, 0xd3, 0x94, 0x29, 0xd9, 0xbb, 0x95, 0xfc, 0x1f, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3568 = { .name = "ecdh_secp224k1_3568", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3568_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3568_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3568_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1132 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3569 for ECDH, tcId is 1133 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3569_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3569_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp224k1_3569_sharedsecret[] = { 0xc6, 0x16, 0x88, 0x86, 0xed, 0x5b, 0x37, 0x2a, 0x77, 0xe2, 0xec, 0x79, 0x21, 0xfe, 0xf7, 0x10, 0x68, 0x4a, 0x5b, 0x0a, 0x85, 0xd9, 0xd3, 0x70, 0xf5, 0xfb, 0xef, 0xa8, }; static const wycheproof_ecdh_test ecdh_secp224k1_3569 = { .name = "ecdh_secp224k1_3569", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3569_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3569_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3569_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1133 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3570 for ECDH, tcId is 1134 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3570_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3570_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224k1_3570_sharedsecret[] = { 0xa1, 0x6e, 0x55, 0x00, 0x2f, 0x55, 0x44, 0xf5, 0xf3, 0xce, 0x89, 0x3c, 0x53, 0xe1, 0x7d, 0x69, 0xf1, 0xb6, 0xdf, 0xac, 0xe5, 0xac, 0xe2, 0x62, 0xba, 0xef, 0x88, 0x14, }; static const wycheproof_ecdh_test ecdh_secp224k1_3570 = { .name = "ecdh_secp224k1_3570", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3570_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3570_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3570_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1134 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3571 for ECDH, tcId is 1135 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3571_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3571_privkey[] = { 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3571_sharedsecret[] = { 0x9e, 0xa7, 0xf4, 0x21, 0xd9, 0x6d, 0x07, 0x09, 0xef, 0xe1, 0xf9, 0x0b, 0xf5, 0xd4, 0x6a, 0xb9, 0x5f, 0x0f, 0xff, 0x95, 0x82, 0x3e, 0x87, 0x85, 0x8f, 0x96, 0x80, 0x40, }; static const wycheproof_ecdh_test ecdh_secp224k1_3571 = { .name = "ecdh_secp224k1_3571", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3571_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3571_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3571_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1135 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3572 for ECDH, tcId is 1136 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3572_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3572_privkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp224k1_3572_sharedsecret[] = { 0x13, 0x12, 0x31, 0xcd, 0x57, 0xce, 0x3b, 0xc7, 0x17, 0x6b, 0xd6, 0x21, 0x8f, 0xd7, 0x99, 0xe7, 0x4b, 0x89, 0xa2, 0x81, 0x26, 0xe5, 0x78, 0xe2, 0x30, 0x9d, 0xd1, 0xdb, }; static const wycheproof_ecdh_test ecdh_secp224k1_3572 = { .name = "ecdh_secp224k1_3572", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3572_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3572_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3572_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1136 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3573 for ECDH, tcId is 1137 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3573_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3573_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3573_sharedsecret[] = { 0xc6, 0x42, 0x16, 0xbd, 0x17, 0x64, 0x62, 0x77, 0xaa, 0xa3, 0xe7, 0x94, 0x09, 0x25, 0xa3, 0x1b, 0x1b, 0x78, 0x9a, 0x39, 0x1d, 0xad, 0xa8, 0x80, 0xaa, 0xa2, 0x67, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp224k1_3573 = { .name = "ecdh_secp224k1_3573", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3573_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3573_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3573_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1137 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3574 for ECDH, tcId is 1138 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3574_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3574_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x83, 0xca, 0xf0, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xf7, }; static const unsigned char ecdh_secp224k1_3574_sharedsecret[] = { 0xb2, 0xf3, 0x70, 0xf7, 0x45, 0xc8, 0x90, 0x80, 0xfb, 0xfe, 0x9c, 0x3c, 0xe7, 0x7c, 0xf3, 0x82, 0x8c, 0x18, 0x0c, 0x21, 0xd0, 0x9c, 0x15, 0x91, 0xd1, 0x34, 0x59, 0x25, }; static const wycheproof_ecdh_test ecdh_secp224k1_3574 = { .name = "ecdh_secp224k1_3574", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3574_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3574_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3574_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1138 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3575 for ECDH, tcId is 1139 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3575_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3575_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xe0, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xf7, }; static const unsigned char ecdh_secp224k1_3575_sharedsecret[] = { 0x81, 0xdf, 0x46, 0x23, 0xbb, 0x4b, 0xae, 0xf1, 0x3a, 0x3f, 0x98, 0xe9, 0x0b, 0x64, 0xe9, 0xec, 0x1e, 0x1e, 0x15, 0xb1, 0xd7, 0xf6, 0x95, 0xe7, 0x67, 0x7c, 0xf0, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp224k1_3575 = { .name = "ecdh_secp224k1_3575", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3575_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3575_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3575_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1139 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3576 for ECDH, tcId is 1140 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3576_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3576_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xe8, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xf7, }; static const unsigned char ecdh_secp224k1_3576_sharedsecret[] = { 0x62, 0x77, 0xbb, 0xc4, 0x7e, 0x87, 0xb3, 0xae, 0x9d, 0x6b, 0x16, 0x0a, 0xb5, 0x33, 0x07, 0x94, 0x28, 0x5d, 0xc1, 0x65, 0xb4, 0xf9, 0xdd, 0xed, 0xf2, 0x36, 0x83, 0xad, }; static const wycheproof_ecdh_test ecdh_secp224k1_3576 = { .name = "ecdh_secp224k1_3576", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3576_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3576_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3576_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1140 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3577 for ECDH, tcId is 1141 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3577_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3577_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xf0, 0xa9, 0x70, 0x76, 0x9f, 0xb1, 0xf7, }; static const unsigned char ecdh_secp224k1_3577_sharedsecret[] = { 0x20, 0xc1, 0x27, 0x1f, 0x31, 0xe2, 0x2f, 0xd6, 0x65, 0x9e, 0xfe, 0x6a, 0x4e, 0x21, 0x07, 0x50, 0xad, 0x7e, 0x30, 0x3c, 0x29, 0x21, 0x98, 0xe4, 0x4d, 0xfd, 0x40, 0x24, }; static const wycheproof_ecdh_test ecdh_secp224k1_3577 = { .name = "ecdh_secp224k1_3577", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3577_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3577_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3577_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1141 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3578 for ECDH, tcId is 1142 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3578_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3578_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xf0, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xe5, }; static const unsigned char ecdh_secp224k1_3578_sharedsecret[] = { 0x9a, 0x3c, 0x31, 0x10, 0xe3, 0xdf, 0xcf, 0xc0, 0xda, 0x5c, 0x09, 0x03, 0xd6, 0x20, 0xac, 0x7a, 0xb1, 0x44, 0xde, 0x4b, 0x40, 0x13, 0xb5, 0x89, 0x1d, 0xbb, 0x14, 0x08, }; static const wycheproof_ecdh_test ecdh_secp224k1_3578 = { .name = "ecdh_secp224k1_3578", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3578_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3578_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3578_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1142 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3579 for ECDH, tcId is 1143 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3579_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3579_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xf0, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xf4, }; static const unsigned char ecdh_secp224k1_3579_sharedsecret[] = { 0xc6, 0x16, 0x88, 0x86, 0xed, 0x5b, 0x37, 0x2a, 0x77, 0xe2, 0xec, 0x79, 0x21, 0xfe, 0xf7, 0x10, 0x68, 0x4a, 0x5b, 0x0a, 0x85, 0xd9, 0xd3, 0x70, 0xf5, 0xfb, 0xef, 0xa8, }; static const wycheproof_ecdh_test ecdh_secp224k1_3579 = { .name = "ecdh_secp224k1_3579", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3579_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3579_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3579_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1143 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3580 for ECDH, tcId is 1144 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3580_peerpubkey[] = { 0x2d, 0xbd, 0x40, 0x14, 0x1c, 0x67, 0x2d, 0x80, 0xcf, 0xf4, 0xff, 0xc4, 0xb7, 0x78, 0x3d, 0x51, 0x9c, 0x7a, 0xda, 0xe3, 0xb6, 0xe7, 0x61, 0x3c, 0x05, 0x84, 0x6d, 0x2d, 0xf4, 0x70, 0x95, 0x60, 0x77, 0x26, 0xaa, 0x40, 0x6e, 0x2c, 0x15, 0x55, 0x74, 0x4b, 0xeb, 0x67, 0x14, 0x6b, 0x07, 0x55, 0xf2, 0x54, 0x4a, 0x6c, 0x7a, 0x97, 0xf4, 0x40, }; static const unsigned char ecdh_secp224k1_3580_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdc, 0xe8, 0xd2, 0xec, 0x61, 0x84, 0xca, 0xf0, 0xa9, 0x71, 0x76, 0x9f, 0xb1, 0xf5, }; static const unsigned char ecdh_secp224k1_3580_sharedsecret[] = { 0x42, 0xbb, 0x71, 0x92, 0x69, 0x20, 0xa2, 0xd3, 0xab, 0x9a, 0x46, 0x4e, 0xe7, 0x43, 0x93, 0x9c, 0x1d, 0x23, 0xc7, 0x34, 0x3f, 0xae, 0xff, 0x38, 0x20, 0x6e, 0x90, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp224k1_3580 = { .name = "ecdh_secp224k1_3580", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3580_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3580_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3580_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1144 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3581 for ECDH, tcId is 1145 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3581_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3581_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3581 = { .name = "ecdh_secp224k1_3581", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3581_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3581_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1145 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3582 for ECDH, tcId is 1146 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3582_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224k1_3582_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3582 = { .name = "ecdh_secp224k1_3582", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3582_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3582_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1146 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3583 for ECDH, tcId is 1147 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3583_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, }; static const unsigned char ecdh_secp224k1_3583_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3583 = { .name = "ecdh_secp224k1_3583", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3583_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3583_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1147 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3584 for ECDH, tcId is 1148 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3584_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, }; static const unsigned char ecdh_secp224k1_3584_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3584 = { .name = "ecdh_secp224k1_3584", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3584_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3584_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1148 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3585 for ECDH, tcId is 1149 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3585_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3585_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3585 = { .name = "ecdh_secp224k1_3585", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3585_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3585_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1149 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3586 for ECDH, tcId is 1150 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3586_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224k1_3586_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3586 = { .name = "ecdh_secp224k1_3586", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3586_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3586_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1150 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3587 for ECDH, tcId is 1151 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3587_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, }; static const unsigned char ecdh_secp224k1_3587_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3587 = { .name = "ecdh_secp224k1_3587", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3587_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3587_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1151 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3588 for ECDH, tcId is 1152 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3588_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, }; static const unsigned char ecdh_secp224k1_3588_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3588 = { .name = "ecdh_secp224k1_3588", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3588_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3588_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1152 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3589 for ECDH, tcId is 1153 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3589_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3589_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3589 = { .name = "ecdh_secp224k1_3589", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3589_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3589_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1153 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3590 for ECDH, tcId is 1154 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3590_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224k1_3590_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3590 = { .name = "ecdh_secp224k1_3590", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3590_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3590_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1154 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3591 for ECDH, tcId is 1155 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3591_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, }; static const unsigned char ecdh_secp224k1_3591_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3591 = { .name = "ecdh_secp224k1_3591", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3591_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3591_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1155 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3592 for ECDH, tcId is 1156 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3592_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, }; static const unsigned char ecdh_secp224k1_3592_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3592 = { .name = "ecdh_secp224k1_3592", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3592_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3592_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1156 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3593 for ECDH, tcId is 1157 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3593_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3593_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3593 = { .name = "ecdh_secp224k1_3593", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3593_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3593_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1157 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3594 for ECDH, tcId is 1158 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3594_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp224k1_3594_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3594 = { .name = "ecdh_secp224k1_3594", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3594_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3594_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1158 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3595 for ECDH, tcId is 1159 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3595_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6c, }; static const unsigned char ecdh_secp224k1_3595_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3595 = { .name = "ecdh_secp224k1_3595", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3595_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3595_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1159 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3596 for ECDH, tcId is 1160 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3596_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xe5, 0x6d, }; static const unsigned char ecdh_secp224k1_3596_privkey[] = { 0x00, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa3, 0xb2, 0x49, 0x70, 0x7e, 0x63, 0xdd, 0x22, 0x71, 0x70, 0x59, 0xe3, 0x41, 0x7b, 0x45, 0x3b, 0xd4, 0x60, 0x81, 0x8e, 0xc1, 0x99, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp224k1_3596 = { .name = "ecdh_secp224k1_3596", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3596_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3596_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1160 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3597 for ECDH, tcId is 1162 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3597_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb6, }; static const unsigned char ecdh_secp224k1_3597_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const wycheproof_ecdh_test ecdh_secp224k1_3597 = { .name = "ecdh_secp224k1_3597", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3597_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3597_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 1162 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3598 for ECDH, tcId is 1163 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3598_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp224k1_3598_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const wycheproof_ecdh_test ecdh_secp224k1_3598 = { .name = "ecdh_secp224k1_3598", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3598_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3598_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 1163 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3599 for ECDH, tcId is 1166 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3599_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3599_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3599_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3599 = { .name = "ecdh_secp224k1_3599", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3599_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3599_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3599_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 1166 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3600 for ECDH, tcId is 1167 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3600_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3600_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3600_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3600 = { .name = "ecdh_secp224k1_3600", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3600_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3600_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3600_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 6277101735386680763835789423207668668243644545581209135473, tcId is 1167 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3601 for ECDH, tcId is 1168 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3601_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3601_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3601_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3601 = { .name = "ecdh_secp224k1_3601", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3601_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3601_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3601_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 1168 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3602 for ECDH, tcId is 1169 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3602_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3602_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3602_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3602 = { .name = "ecdh_secp224k1_3602", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3602_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3602_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3602_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 1169 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3603 for ECDH, tcId is 1172 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3603_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3603_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3603_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3603 = { .name = "ecdh_secp224k1_3603", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3603_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3603_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3603_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 1172 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3604 for ECDH, tcId is 1174 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3604_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3604_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3604_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3604 = { .name = "ecdh_secp224k1_3604", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3604_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3604_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3604_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 1174 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3605 for ECDH, tcId is 1176 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3605_peerpubkey[] = { 0x07, 0x4f, 0x56, 0xdc, 0x2e, 0xa6, 0x48, 0xef, 0x89, 0xc3, 0xb7, 0x2e, 0x23, 0xbb, 0xd2, 0xda, 0x36, 0xf6, 0x02, 0x43, 0xe4, 0xd2, 0x06, 0x7b, 0x70, 0x60, 0x4a, 0xf1, 0xc2, 0x16, 0x5c, 0xec, 0x2f, 0x86, 0x60, 0x3d, 0x60, 0xc8, 0xa6, 0x11, 0xd5, 0xb8, 0x4b, 0xa3, 0xd9, 0x1d, 0xfe, 0x1a, 0x48, 0x08, 0x25, 0xbc, 0xc4, 0xaf, 0x3b, 0xcf, }; static const unsigned char ecdh_secp224k1_3605_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const wycheproof_ecdh_test ecdh_secp224k1_3605 = { .name = "ecdh_secp224k1_3605", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3605_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3605_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp224r1, tcId is 1176 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3606 for ECDH, tcId is 1179 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3606_peerpubkey[] = { 0x40, 0x94, 0xbe, 0xfc, 0xf9, 0x50, 0x63, 0x0b, 0x8a, 0x1a, 0xec, 0xde, 0x94, 0xcb, 0x53, 0x7a, 0x8a, 0x7b, 0xbb, 0x1b, 0x45, 0xee, 0xb6, 0x39, 0x63, 0xbd, 0x00, 0xb0, 0x3c, 0xa8, 0x40, 0x72, 0x82, 0x78, 0x6c, 0xf0, 0x44, 0xea, 0xd1, 0x20, 0x12, 0x4c, 0x6b, 0xf3, 0x85, 0x57, 0x69, 0x0d, 0x95, 0xb1, 0xcb, 0x7d, 0xfe, 0xc2, 0xe8, 0xb4, }; static const unsigned char ecdh_secp224k1_3606_privkey[] = { 0x00, 0xa3, 0x74, 0x35, 0xe7, 0x22, 0xdb, 0xee, 0x82, 0xea, 0x81, 0x5e, 0xd6, 0x89, 0x2c, 0xf1, 0xc4, 0x59, 0xad, 0x1b, 0x68, 0xe6, 0x28, 0xc0, 0xe3, 0x0f, 0x91, 0x85, 0x88, }; static const unsigned char ecdh_secp224k1_3606_sharedsecret[] = { 0x9c, 0xaa, 0xbf, 0xf7, 0x65, 0x2c, 0x46, 0xec, 0xba, 0xe5, 0x9a, 0xdc, 0xc6, 0x02, 0x09, 0xec, 0x08, 0xaa, 0x27, 0x41, 0x79, 0xa4, 0x84, 0xfb, 0x61, 0x1b, 0x50, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp224k1_3606 = { .name = "ecdh_secp224k1_3606", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3606_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3606_privkey, .privkeylen = 29, .sharedsecret = ecdh_secp224k1_3606_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 1179 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3607 for ECDH, tcId is 1181 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3607_peerpubkey[] = { 0x91, 0x90, 0x66, 0x35, 0x36, 0xb7, 0xdb, 0x2a, 0xbc, 0xcc, 0xf9, 0xfd, 0x63, 0x34, 0x7a, 0xc7, 0x75, 0xc9, 0x48, 0xe9, 0x71, 0x89, 0x5f, 0x93, 0x3e, 0xb1, 0x27, 0x5d, 0x4a, 0x0c, 0xb4, 0x2d, 0x41, 0x3f, 0x50, 0x8d, 0x49, 0x89, 0x6c, 0x9e, 0xa9, 0xb3, 0x12, 0x3f, 0x5e, 0x19, 0x99, 0x87, 0x46, 0x6f, 0xa5, 0x22, 0x64, 0x2d, 0x1a, 0xda, }; static const unsigned char ecdh_secp224k1_3607_privkey[] = { 0x00, 0xbb, 0x48, 0x52, 0x26, 0xaf, 0x98, 0xdd, 0x3a, 0x1b, 0x99, 0xf2, 0xeb, 0x9c, 0xfb, 0x46, 0xf5, 0x8e, 0x21, 0x1c, 0x47, 0x2f, 0xaa, 0x68, 0xce, 0x0c, 0x65, 0x99, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp224k1_3607 = { .name = "ecdh_secp224k1_3607", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3607_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3607_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224r1, tcId is 1181 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3608 for ECDH, tcId is 1186 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3608_peerpubkey[] = { 0x69, 0x00, 0xf0, 0x50, 0xcb, 0x27, 0x60, 0x72, 0x14, 0x74, 0x8e, 0x87, 0xdd, 0x48, 0xbe, 0x1d, 0xb8, 0xa1, 0x3a, 0xd6, 0x0c, 0x14, 0x31, 0xd3, 0x47, 0x88, 0x36, 0x22, 0x0b, 0xec, 0x16, 0x7b, 0xc9, 0xd6, 0x88, 0x23, 0x18, 0xf3, 0xc2, 0xd8, 0x41, 0x99, 0x79, 0x9a, 0x44, 0xa6, 0x89, 0xee, 0x7c, 0xc7, 0xe2, 0xe6, 0x1d, 0x20, 0x80, 0x6e, }; static const unsigned char ecdh_secp224k1_3608_privkey[] = { 0x00, 0xbb, 0x48, 0x52, 0x26, 0xaf, 0x98, 0xdd, 0x3a, 0x1b, 0x99, 0xf2, 0xeb, 0x9c, 0xfb, 0x46, 0xf5, 0x8e, 0x21, 0x1c, 0x47, 0x2f, 0xaa, 0x68, 0xce, 0x0c, 0x65, 0x99, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp224k1_3608 = { .name = "ecdh_secp224k1_3608", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3608_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3608_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224r1, tcId is 1186 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3609 for ECDH, tcId is 1191 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3609_peerpubkey[] = { 0x21, 0x4d, 0x54, 0x9f, 0x61, 0x43, 0xae, 0x23, 0xa4, 0x50, 0xcc, 0x44, 0x04, 0x33, 0x79, 0x54, 0xb3, 0xc6, 0xa0, 0x6d, 0x67, 0xc5, 0x71, 0xcb, 0x18, 0xd5, 0x68, 0xbb, 0xb5, 0x67, 0xe0, 0x64, 0xfa, 0x24, 0xa7, 0x0f, 0x32, 0x46, 0x74, 0x9f, 0x43, 0xb9, 0xaf, 0x5e, 0x21, 0x64, 0x07, 0x47, 0x95, 0x2a, 0x2b, 0xb4, 0x32, 0xfc, 0xab, 0x5e, }; static const unsigned char ecdh_secp224k1_3609_privkey[] = { 0x00, 0xbb, 0x48, 0x52, 0x26, 0xaf, 0x98, 0xdd, 0x3a, 0x1b, 0x99, 0xf2, 0xeb, 0x9c, 0xfb, 0x46, 0xf5, 0x8e, 0x21, 0x1c, 0x47, 0x2f, 0xaa, 0x68, 0xce, 0x0c, 0x65, 0x99, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp224k1_3609 = { .name = "ecdh_secp224k1_3609", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3609_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3609_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224t1, tcId is 1191 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3610 for ECDH, tcId is 1196 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) static const unsigned char ecdh_secp224k1_3610_peerpubkey[] = { 0x4a, 0xce, 0xd1, 0x5b, 0x7b, 0x61, 0x16, 0x37, 0xdf, 0xb2, 0x07, 0x40, 0x48, 0x50, 0xe8, 0x80, 0x03, 0xca, 0x24, 0x4c, 0xc2, 0x7b, 0x79, 0x87, 0xc5, 0x69, 0xdb, 0xc9, }; static const unsigned char ecdh_secp224k1_3610_privkey[] = { 0x00, 0x5b, 0x35, 0xa3, 0xdd, 0x48, 0xf7, 0xa2, 0xd3, 0x34, 0x6e, 0xda, 0xe6, 0xd0, 0xf5, 0x4f, 0xf6, 0xf4, 0xae, 0xc4, 0x9f, 0x99, 0xf0, 0x75, 0x47, 0x91, 0xa2, 0x85, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp224k1_3610 = { .name = "ecdh_secp224k1_3610", .ecdh_alg = ECCCDH, .curve = &secp224k1_str_params, .peerpubkey = ecdh_secp224k1_3610_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_secp224k1_3610_privkey, .privkeylen = 29, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 1196 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) */ /* Test 3611 for ECDH, tcId is 1197 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3611_peerpubkey[] = { 0x47, 0xa9, 0x27, 0xda, 0xaf, 0xd7, 0x28, 0x2a, 0xfd, 0x72, 0x1c, 0x14, 0x1c, 0x26, 0x8b, 0xe1, 0x23, 0x12, 0x06, 0x6c, 0x1d, 0x62, 0xfe, 0x04, 0x7d, 0xce, 0xf2, 0x72, 0x95, 0x8e, 0x02, 0xa2, 0xb8, 0x1c, 0x89, 0xd7, 0xb8, 0x10, 0x04, 0xed, 0xa6, 0x5c, 0xb6, 0xe1, 0xdf, 0x8d, 0xa3, 0x30, 0xbe, 0x2d, 0x56, 0x32, 0x21, 0x86, 0x2b, 0x81, }; static const unsigned char ecdh_brainpoolp224r1_3611_privkey[] = { 0x8c, 0xff, 0x3b, 0x0b, 0x5c, 0x1b, 0x32, 0x20, 0x04, 0x37, 0x59, 0x32, 0x0c, 0x6c, 0xc6, 0x39, 0x2e, 0x19, 0xe5, 0x54, 0xf1, 0x80, 0xf3, 0xdf, 0x1e, 0x44, 0xc7, 0xfc, }; static const unsigned char ecdh_brainpoolp224r1_3611_sharedsecret[] = { 0x4f, 0x7a, 0xfb, 0x30, 0x2c, 0x69, 0x9b, 0xd5, 0x6d, 0xb0, 0xbd, 0xac, 0x55, 0x01, 0x72, 0xba, 0xc9, 0x4b, 0x73, 0xb0, 0xf2, 0xb6, 0x0e, 0xee, 0x91, 0xb6, 0xa4, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3611 = { .name = "ecdh_brainpoolp224r1_3611", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3611_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3611_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3611_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 1197 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3612 for ECDH, tcId is 1198 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3612_peerpubkey[] = { 0x47, 0xa9, 0x27, 0xda, 0xaf, 0xd7, 0x28, 0x2a, 0xfd, 0x72, 0x1c, 0x14, 0x1c, 0x26, 0x8b, 0xe1, 0x23, 0x12, 0x06, 0x6c, 0x1d, 0x62, 0xfe, 0x04, 0x7d, 0xce, 0xf2, 0x72, }; static const unsigned char ecdh_brainpoolp224r1_3612_privkey[] = { 0x8c, 0xff, 0x3b, 0x0b, 0x5c, 0x1b, 0x32, 0x20, 0x04, 0x37, 0x59, 0x32, 0x0c, 0x6c, 0xc6, 0x39, 0x2e, 0x19, 0xe5, 0x54, 0xf1, 0x80, 0xf3, 0xdf, 0x1e, 0x44, 0xc7, 0xfc, }; static const unsigned char ecdh_brainpoolp224r1_3612_sharedsecret[] = { 0x4f, 0x7a, 0xfb, 0x30, 0x2c, 0x69, 0x9b, 0xd5, 0x6d, 0xb0, 0xbd, 0xac, 0x55, 0x01, 0x72, 0xba, 0xc9, 0x4b, 0x73, 0xb0, 0xf2, 0xb6, 0x0e, 0xee, 0x91, 0xb6, 0xa4, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3612 = { .name = "ecdh_brainpoolp224r1_3612", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3612_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3612_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3612_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 1198 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3613 for ECDH, tcId is 1199 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3613_peerpubkey[] = { 0x5f, 0x9a, 0x3d, 0xd8, 0xda, 0xeb, 0xed, 0x95, 0x83, 0xd9, 0x1d, 0xd7, 0x5c, 0x6e, 0xf0, 0x89, 0xd3, 0x25, 0xff, 0xaf, 0xb3, 0x63, 0x9f, 0xb9, 0x7a, 0x7a, 0x2d, 0xea, 0x04, 0xe8, 0x11, 0xb5, 0xcb, 0x44, 0xe1, 0x71, 0xa5, 0xde, 0xd2, 0x5c, 0x22, 0xf3, 0x7f, 0xd1, 0x0e, 0x18, 0x60, 0x41, 0x6e, 0x4e, 0xdb, 0x8a, 0xa8, 0x08, 0x1c, 0x0e, }; static const unsigned char ecdh_brainpoolp224r1_3613_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3613_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3613 = { .name = "ecdh_brainpoolp224r1_3613", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3613_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3613_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3613_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1199 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3614 for ECDH, tcId is 1200 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3614_peerpubkey[] = { 0x5c, 0x75, 0x3c, 0x63, 0xb9, 0xcb, 0x9b, 0x79, 0xeb, 0xbd, 0x8d, 0x4e, 0x3f, 0xc3, 0xae, 0x8d, 0xe3, 0xed, 0x6a, 0x16, 0xd1, 0x2e, 0x38, 0xb1, 0xfc, 0x23, 0xe9, 0xe5, 0xaa, 0x6d, 0x81, 0x5e, 0xcd, 0xf6, 0x07, 0x24, 0x67, 0x45, 0xe0, 0x29, 0x82, 0x91, 0x9a, 0x91, 0xa4, 0xcf, 0x8f, 0x14, 0x43, 0xfa, 0x90, 0xdd, 0x8f, 0x70, 0xa5, 0x7b, }; static const unsigned char ecdh_brainpoolp224r1_3614_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3614_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3614 = { .name = "ecdh_brainpoolp224r1_3614", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3614_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3614_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3614_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1200 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3615 for ECDH, tcId is 1201 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3615_peerpubkey[] = { 0x5d, 0x8d, 0xe5, 0xd8, 0x17, 0xd4, 0x98, 0x56, 0xa9, 0xae, 0x87, 0x0b, 0x5c, 0x84, 0x82, 0x4f, 0x1a, 0x19, 0x74, 0x5e, 0x96, 0x3c, 0x82, 0x0f, 0xde, 0xbb, 0x55, 0x3c, 0x06, 0xf8, 0x7a, 0x56, 0xe4, 0xd0, 0x01, 0x9f, 0x11, 0x92, 0xf9, 0x04, 0x28, 0x5f, 0x55, 0x38, 0xc1, 0xd3, 0xee, 0xdc, 0x05, 0x9e, 0x77, 0x34, 0x4e, 0x7d, 0x4b, 0x8b, }; static const unsigned char ecdh_brainpoolp224r1_3615_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3615_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3615 = { .name = "ecdh_brainpoolp224r1_3615", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3615_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3615_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3615_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1201 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3616 for ECDH, tcId is 1202 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3616_peerpubkey[] = { 0x53, 0x9b, 0x05, 0x66, 0x58, 0x8e, 0x16, 0x50, 0x5e, 0x2d, 0x39, 0x32, 0x3c, 0x07, 0x79, 0x9a, 0x6a, 0xa2, 0x88, 0xe7, 0xd2, 0xaa, 0x03, 0xdb, 0x8a, 0x39, 0x2a, 0x38, 0x8a, 0xad, 0x13, 0xac, 0x01, 0x87, 0x9d, 0x1c, 0xde, 0x64, 0x8d, 0xc8, 0xad, 0x70, 0xc2, 0xde, 0xc4, 0x9c, 0xb6, 0x79, 0x61, 0xb2, 0x49, 0x3d, 0xda, 0xd8, 0x72, 0x4e, }; static const unsigned char ecdh_brainpoolp224r1_3616_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3616_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3616 = { .name = "ecdh_brainpoolp224r1_3616", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3616_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3616_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3616_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1202 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3617 for ECDH, tcId is 1203 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3617_peerpubkey[] = { 0x26, 0x28, 0x7f, 0x17, 0xf2, 0x55, 0x4a, 0xaf, 0x1e, 0x49, 0xc5, 0x59, 0x4f, 0xbc, 0x35, 0x05, 0x9a, 0x5c, 0x7c, 0x03, 0x79, 0x94, 0xbf, 0xff, 0x9c, 0xb4, 0x37, 0xf3, 0x3d, 0x0e, 0x5f, 0xa3, 0x40, 0x01, 0x63, 0xc4, 0xa0, 0xec, 0x51, 0x3e, 0x70, 0x49, 0xed, 0xea, 0xc4, 0x3f, 0x74, 0x63, 0xb9, 0x9f, 0x1c, 0x91, 0x44, 0xd4, 0x54, 0xd9, }; static const unsigned char ecdh_brainpoolp224r1_3617_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3617_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3617 = { .name = "ecdh_brainpoolp224r1_3617", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3617_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3617_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3617_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1203 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3618 for ECDH, tcId is 1204 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3618_peerpubkey[] = { 0x3a, 0xc6, 0x7c, 0x43, 0x7f, 0x5c, 0xd2, 0xb4, 0xbc, 0x78, 0x21, 0x8b, 0x01, 0xf6, 0x41, 0x30, 0xc8, 0xb2, 0x17, 0x07, 0x0f, 0x6e, 0x1e, 0xef, 0x5a, 0xd4, 0xb6, 0x00, 0x24, 0x25, 0x05, 0x74, 0x14, 0x17, 0xf7, 0x9f, 0xd2, 0x85, 0x96, 0x19, 0x25, 0x38, 0xa9, 0x43, 0x81, 0x26, 0xa4, 0x9f, 0x44, 0xf9, 0x8e, 0xd2, 0x64, 0x2a, 0xab, 0x1b, }; static const unsigned char ecdh_brainpoolp224r1_3618_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3618_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3618 = { .name = "ecdh_brainpoolp224r1_3618", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3618_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3618_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3618_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1204 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3619 for ECDH, tcId is 1205 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3619_peerpubkey[] = { 0x8a, 0xb3, 0xfa, 0x0c, 0xcf, 0x52, 0xa6, 0x61, 0xea, 0x3a, 0x1d, 0x50, 0x21, 0x9c, 0x0c, 0xbf, 0x80, 0x9b, 0xcb, 0xf6, 0x37, 0x45, 0xf4, 0xe0, 0xb9, 0x4a, 0x89, 0x0c, 0x01, 0xc1, 0x66, 0xc6, 0x39, 0x2c, 0x36, 0x90, 0xf7, 0xec, 0x28, 0x68, 0x48, 0x57, 0xea, 0x05, 0xf5, 0xfd, 0x4b, 0x8b, 0x4e, 0x7b, 0x8b, 0x05, 0xa9, 0xe9, 0x42, 0x65, }; static const unsigned char ecdh_brainpoolp224r1_3619_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3619_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3619 = { .name = "ecdh_brainpoolp224r1_3619", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3619_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3619_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3619_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1205 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3620 for ECDH, tcId is 1206 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3620_peerpubkey[] = { 0x5a, 0x6e, 0xcb, 0x1b, 0xa8, 0x81, 0xbf, 0x4d, 0xf5, 0x59, 0x98, 0x0c, 0xc9, 0x40, 0xe6, 0x6e, 0x43, 0x0b, 0xb2, 0x2b, 0x6d, 0xd0, 0xe6, 0xea, 0x18, 0x42, 0xe9, 0x0c, 0xaa, 0x0c, 0x8c, 0xd7, 0x25, 0xf9, 0x3c, 0x45, 0x98, 0x56, 0x95, 0xfc, 0x3a, 0x78, 0xc4, 0x2e, 0xf7, 0x2c, 0x19, 0x0b, 0x08, 0x3d, 0xb5, 0x7f, 0xf8, 0x5c, 0x3d, 0xb2, }; static const unsigned char ecdh_brainpoolp224r1_3620_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3620_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3620 = { .name = "ecdh_brainpoolp224r1_3620", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3620_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3620_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3620_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1206 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3621 for ECDH, tcId is 1207 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3621_peerpubkey[] = { 0x10, 0x76, 0xcc, 0x02, 0x01, 0xb3, 0x39, 0x91, 0x37, 0x18, 0x4b, 0x17, 0x31, 0x02, 0x8b, 0xa2, 0xbe, 0xbd, 0xcb, 0xa1, 0x54, 0x8a, 0xd5, 0xed, 0x1a, 0xf1, 0xdf, 0x9c, 0xd2, 0xf4, 0xab, 0xb6, 0xd7, 0x65, 0x91, 0xef, 0xe7, 0x71, 0x2b, 0xc3, 0x54, 0x4a, 0x76, 0xef, 0x53, 0xbe, 0xd9, 0xf1, 0x86, 0xa2, 0xc2, 0xd1, 0x21, 0x05, 0xe7, 0xad, }; static const unsigned char ecdh_brainpoolp224r1_3621_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3621_sharedsecret[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3621 = { .name = "ecdh_brainpoolp224r1_3621", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3621_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3621_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3621_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1207 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3622 for ECDH, tcId is 1208 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3622_peerpubkey[] = { 0x52, 0x16, 0xd3, 0x1c, 0x45, 0x06, 0x35, 0xaf, 0x6d, 0x6c, 0x73, 0x27, 0xd3, 0xfe, 0x05, 0x14, 0xa8, 0xab, 0xb9, 0x72, 0xb1, 0x6d, 0x30, 0x84, 0x16, 0x4c, 0x9a, 0xc7, 0x61, 0x81, 0x75, 0x18, 0xc5, 0xf4, 0xe7, 0x8e, 0x27, 0x7e, 0x00, 0x9c, 0x70, 0x28, 0xad, 0x7e, 0x59, 0xa3, 0xa8, 0x7e, 0x13, 0x29, 0x5e, 0xf1, 0x77, 0x71, 0x19, 0xcc, }; static const unsigned char ecdh_brainpoolp224r1_3622_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3622_sharedsecret[] = { 0x37, 0x3b, 0xbc, 0xf4, 0x23, 0x1b, 0x53, 0x08, 0x3d, 0x36, 0xad, 0xb3, 0xf5, 0x64, 0x85, 0x60, 0x3b, 0x19, 0xb4, 0xb7, 0x72, 0x51, 0xab, 0xd9, 0xb8, 0x68, 0x3c, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3622 = { .name = "ecdh_brainpoolp224r1_3622", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3622_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3622_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3622_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1208 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3623 for ECDH, tcId is 1209 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3623_peerpubkey[] = { 0xb1, 0x12, 0x1e, 0x4c, 0xaf, 0xa5, 0xee, 0x5c, 0xca, 0x2a, 0x9b, 0x66, 0x1d, 0xad, 0xb3, 0x7a, 0x81, 0x9c, 0x0b, 0xb3, 0x2d, 0xc0, 0xf0, 0x16, 0x80, 0xc8, 0x19, 0x29, 0x13, 0x98, 0x1a, 0xc1, 0xc6, 0x8e, 0x6d, 0x41, 0x0c, 0xda, 0x30, 0x5b, 0x0b, 0xe4, 0x6e, 0xf1, 0x42, 0x2a, 0x70, 0x35, 0x41, 0x99, 0xd0, 0xf5, 0x44, 0x17, 0x61, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_3623_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3623_sharedsecret[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3623 = { .name = "ecdh_brainpoolp224r1_3623", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3623_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3623_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3623_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1209 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3624 for ECDH, tcId is 1210 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3624_peerpubkey[] = { 0x6e, 0x22, 0xeb, 0x98, 0xda, 0x25, 0xe6, 0x39, 0x95, 0x4e, 0xb2, 0x98, 0x7a, 0x1f, 0xc7, 0x16, 0x05, 0xb2, 0x87, 0xab, 0xe4, 0xa9, 0xe7, 0xfe, 0x4c, 0xd7, 0x9c, 0x4b, 0xc7, 0x59, 0xb1, 0x11, 0xce, 0x37, 0xa1, 0x7f, 0xda, 0x31, 0x3b, 0x17, 0x39, 0x3c, 0x08, 0xc7, 0x50, 0xec, 0xf1, 0xd3, 0x8a, 0x9e, 0x0f, 0x72, 0xc0, 0xc1, 0x70, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_3624_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3624_sharedsecret[] = { 0x53, 0x94, 0xea, 0xa3, 0xdb, 0xc3, 0x0f, 0xea, 0xc5, 0xeb, 0x7d, 0x88, 0xe6, 0x9c, 0xf0, 0x68, 0x31, 0x5c, 0xcb, 0x6d, 0xed, 0xf7, 0x87, 0xdb, 0xf9, 0x33, 0xf8, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3624 = { .name = "ecdh_brainpoolp224r1_3624", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3624_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3624_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3624_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1210 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3625 for ECDH, tcId is 1211 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3625_peerpubkey[] = { 0xa6, 0x0d, 0x25, 0x22, 0x75, 0x68, 0xb2, 0x48, 0x6b, 0x40, 0x2a, 0xf6, 0x6d, 0x92, 0x12, 0xfe, 0x92, 0x3a, 0x37, 0x87, 0x3a, 0x8a, 0x56, 0x13, 0xef, 0x81, 0x3d, 0x91, 0xc8, 0x8a, 0xa8, 0x4b, 0x15, 0xb7, 0xca, 0xe6, 0xab, 0x64, 0x78, 0xf0, 0xbf, 0x42, 0xc4, 0x64, 0xf3, 0xf5, 0x0e, 0xc2, 0x7d, 0x33, 0x9e, 0x85, 0xa4, 0x90, 0x88, 0x41, }; static const unsigned char ecdh_brainpoolp224r1_3625_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3625_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3625 = { .name = "ecdh_brainpoolp224r1_3625", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3625_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3625_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3625_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1211 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3626 for ECDH, tcId is 1212 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3626_peerpubkey[] = { 0x99, 0xb4, 0x09, 0xaf, 0xec, 0xf5, 0xe5, 0x44, 0xd0, 0x47, 0x7a, 0x8a, 0x43, 0xd6, 0xf4, 0x80, 0x5c, 0xa1, 0x9d, 0x0b, 0x24, 0xb8, 0x9d, 0x6a, 0x37, 0x25, 0x56, 0x06, 0x06, 0x95, 0xd6, 0x0a, 0x6c, 0x4c, 0x32, 0x10, 0x43, 0xcb, 0x40, 0xa5, 0x01, 0xa2, 0x78, 0x1c, 0x77, 0xfb, 0x9c, 0x8f, 0x37, 0x0c, 0x8a, 0xf8, 0x01, 0x06, 0x9e, 0x85, }; static const unsigned char ecdh_brainpoolp224r1_3626_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3626_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3626 = { .name = "ecdh_brainpoolp224r1_3626", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3626_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3626_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3626_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1212 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3627 for ECDH, tcId is 1213 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3627_peerpubkey[] = { 0x77, 0x2b, 0x18, 0x6d, 0xdd, 0x36, 0x19, 0x2f, 0x7a, 0x73, 0xf1, 0x03, 0x72, 0xc8, 0x6d, 0x6a, 0x7e, 0x05, 0x20, 0x0e, 0x0d, 0xab, 0xff, 0xe0, 0x7e, 0x02, 0xbc, 0x9e, 0xa1, 0x3a, 0x24, 0x29, 0xf0, 0xa3, 0x0a, 0xb2, 0x6d, 0xe3, 0x9b, 0xfa, 0xfd, 0x44, 0xe3, 0x7f, 0x14, 0xc7, 0x9a, 0xce, 0xe2, 0xca, 0x7f, 0xbf, 0x2b, 0xd8, 0xf5, 0x5c, }; static const unsigned char ecdh_brainpoolp224r1_3627_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3627_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3627 = { .name = "ecdh_brainpoolp224r1_3627", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3627_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3627_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3627_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1213 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3628 for ECDH, tcId is 1214 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3628_peerpubkey[] = { 0xd5, 0x4f, 0xbb, 0x07, 0xc8, 0xc0, 0x48, 0x26, 0x00, 0x90, 0x81, 0x78, 0x43, 0x8f, 0xd5, 0x72, 0xec, 0xa1, 0xeb, 0xaf, 0xdc, 0xd1, 0x01, 0x07, 0x1a, 0xfc, 0xb2, 0x47, 0xa0, 0x56, 0x1e, 0x4e, 0x22, 0x01, 0x44, 0x7d, 0x30, 0xdb, 0x35, 0x05, 0x10, 0xf0, 0xf8, 0xaf, 0xff, 0xa2, 0x28, 0x51, 0x5d, 0xe9, 0x28, 0x95, 0x16, 0x85, 0x5d, 0x2f, }; static const unsigned char ecdh_brainpoolp224r1_3628_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3628_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3628 = { .name = "ecdh_brainpoolp224r1_3628", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3628_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3628_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3628_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1214 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3629 for ECDH, tcId is 1215 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3629_peerpubkey[] = { 0xba, 0xea, 0xa4, 0x82, 0xe4, 0x5f, 0xb4, 0xb9, 0x32, 0xc9, 0x45, 0xee, 0xad, 0xe8, 0x64, 0x4f, 0x98, 0x0e, 0x50, 0xf4, 0x15, 0x0f, 0xc4, 0xce, 0x1d, 0x02, 0xec, 0xf6, 0xa8, 0x83, 0xc9, 0xda, 0x5d, 0xc2, 0x4c, 0x14, 0x9b, 0x9b, 0x45, 0x10, 0xda, 0x27, 0xdb, 0x8d, 0xf3, 0xb3, 0xaf, 0xbe, 0xaa, 0x62, 0x9e, 0x19, 0xd9, 0x9b, 0xe6, 0x28, }; static const unsigned char ecdh_brainpoolp224r1_3629_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3629_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3629 = { .name = "ecdh_brainpoolp224r1_3629", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3629_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3629_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3629_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1215 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3630 for ECDH, tcId is 1216 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3630_peerpubkey[] = { 0xd6, 0x33, 0x31, 0xa2, 0x8b, 0xd6, 0xf8, 0x2d, 0xcb, 0xe3, 0xde, 0x0e, 0xa8, 0x07, 0x43, 0x10, 0x12, 0xe9, 0x54, 0xfd, 0x9f, 0xeb, 0xcc, 0x7a, 0x36, 0x87, 0xdb, 0xab, 0xca, 0x53, 0x23, 0x29, 0x35, 0x1b, 0x6a, 0x7a, 0x06, 0x48, 0xab, 0x34, 0xc6, 0xaa, 0xc1, 0x23, 0xf8, 0xdd, 0x4e, 0xc8, 0xa4, 0x4f, 0xb8, 0x8d, 0xf0, 0xec, 0x45, 0xae, }; static const unsigned char ecdh_brainpoolp224r1_3630_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224r1_3630_sharedsecret[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3630 = { .name = "ecdh_brainpoolp224r1_3630", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3630_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3630_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3630_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 1216 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3631 for ECDH, tcId is 1217 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3631_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4e, 0xbc, 0x90, 0x78, 0xad, 0x8a, 0xd0, 0x75, 0x62, 0xcd, 0x41, 0xb3, 0x74, 0x82, 0x71, 0x92, 0xaa, 0x88, 0xce, 0x3c, 0x71, 0x8a, 0x01, 0x44, 0x05, 0xee, 0xd4, 0x75, }; static const unsigned char ecdh_brainpoolp224r1_3631_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3631_sharedsecret[] = { 0x60, 0x90, 0x42, 0xac, 0x30, 0x7c, 0x7d, 0x75, 0xee, 0x58, 0x69, 0x0d, 0x36, 0xd1, 0xf0, 0xba, 0x2c, 0xb7, 0x0f, 0x1a, 0x77, 0xca, 0x43, 0xbc, 0x7b, 0xb7, 0x00, 0x67, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3631 = { .name = "ecdh_brainpoolp224r1_3631", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3631_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3631_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3631_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1217 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3632 for ECDH, tcId is 1218 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3632_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x4f, 0x73, 0x5b, 0xbf, 0xf1, 0xa5, 0x4d, 0xb7, 0x99, 0x5b, 0x03, 0xc4, 0xe4, 0x3c, 0x17, 0xbc, 0x3e, 0x0f, 0x30, 0xbd, 0xa4, 0xb2, 0xea, 0xf8, 0x51, 0x89, 0x61, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_3632_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3632_sharedsecret[] = { 0x9d, 0x5c, 0xff, 0x40, 0x64, 0x88, 0xba, 0xe6, 0x80, 0xf1, 0x74, 0x7d, 0x8f, 0x5e, 0xf0, 0x70, 0xf3, 0xa7, 0xd4, 0x51, 0x20, 0x5a, 0x1b, 0xa9, 0xa6, 0xcd, 0x19, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3632 = { .name = "ecdh_brainpoolp224r1_3632", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3632_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3632_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3632_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1218 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3633 for ECDH, tcId is 1219 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3633_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x1d, 0x46, 0x08, 0xf6, 0xb2, 0x8d, 0xcc, 0x77, 0xf0, 0x2d, 0x94, 0xb1, 0xe2, 0x54, 0x28, 0xa2, 0x2e, 0x64, 0xfa, 0x9b, 0x33, 0x54, 0xbe, 0xed, 0x97, 0xaf, 0x99, }; static const unsigned char ecdh_brainpoolp224r1_3633_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3633_sharedsecret[] = { 0xa5, 0x5b, 0x6c, 0xa4, 0xb1, 0xe1, 0x35, 0xcf, 0x1d, 0xf4, 0x13, 0xa5, 0x08, 0x61, 0x91, 0x7b, 0x3d, 0x10, 0xff, 0xef, 0x98, 0xa2, 0x9a, 0x87, 0x4b, 0xa9, 0x56, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3633 = { .name = "ecdh_brainpoolp224r1_3633", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3633_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3633_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3633_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1219 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3634 for ECDH, tcId is 1220 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3634_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x49, 0x46, 0x13, 0x6f, 0xcd, 0xd3, 0x4a, 0x52, 0x25, 0xb0, 0x9a, 0x84, 0x4d, 0x9f, 0x48, 0x2e, 0x56, 0xa1, 0x3c, 0x46, 0xb4, 0xef, 0x29, 0x4e, 0x9c, 0x04, 0x9f, 0x5b, }; static const unsigned char ecdh_brainpoolp224r1_3634_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3634_sharedsecret[] = { 0x92, 0x40, 0xe2, 0x68, 0xb1, 0x33, 0xe2, 0x5b, 0x39, 0xb3, 0x6c, 0xb7, 0xbc, 0x9e, 0x91, 0xa5, 0x35, 0xce, 0x62, 0x2b, 0x48, 0xd3, 0xb0, 0x70, 0x1d, 0x31, 0xb2, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3634 = { .name = "ecdh_brainpoolp224r1_3634", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3634_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3634_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3634_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1220 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3635 for ECDH, tcId is 1221 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3635_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4b, 0xdc, 0x28, 0x0b, 0x52, 0xc9, 0x8b, 0x4b, 0xd5, 0x2b, 0xfd, 0x4f, 0xd2, 0x67, 0x6a, 0x97, 0x61, 0x0c, 0x49, 0x46, 0xa6, 0x6a, 0xbe, 0xf9, 0xba, 0xd0, 0xad, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_3635_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3635_sharedsecret[] = { 0xb5, 0x52, 0x61, 0x5b, 0xd4, 0xea, 0x7e, 0xef, 0x4f, 0xef, 0x3e, 0x39, 0xaa, 0x4f, 0xc5, 0x11, 0xd8, 0xcb, 0xaf, 0x40, 0xda, 0x09, 0x9e, 0x47, 0xa6, 0x11, 0xe5, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3635 = { .name = "ecdh_brainpoolp224r1_3635", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3635_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3635_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3635_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1221 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3636 for ECDH, tcId is 1222 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3636_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x60, 0x91, 0x66, 0x26, 0xda, 0x51, 0x8e, 0xe8, 0xf6, 0xba, 0xd2, 0x87, 0xe6, 0x97, 0x30, 0x70, 0x84, 0xe1, 0x91, 0xca, 0x79, 0x39, 0x81, 0x48, 0x14, 0x1e, 0x57, 0xdb, }; static const unsigned char ecdh_brainpoolp224r1_3636_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3636_sharedsecret[] = { 0x57, 0x01, 0xc9, 0xc1, 0xc1, 0xe5, 0x9e, 0x93, 0xa0, 0xe5, 0x7a, 0xdd, 0xf6, 0x76, 0xc0, 0xd7, 0x64, 0x6f, 0xf8, 0x40, 0x7d, 0xe6, 0x30, 0xe5, 0xec, 0x72, 0x55, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3636 = { .name = "ecdh_brainpoolp224r1_3636", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3636_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3636_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3636_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1222 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3637 for ECDH, tcId is 1223 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3637_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x5b, 0x5f, 0x99, 0xe5, 0xee, 0x14, 0xba, 0xa1, 0xc4, 0xfa, 0x21, 0xad, 0xf0, 0xa6, 0x55, 0x74, 0x16, 0xc6, 0x03, 0xf9, 0x33, 0xa5, 0x92, 0xdd, 0x8d, 0xd1, 0x6d, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3637_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3637_sharedsecret[] = { 0x07, 0xc0, 0xae, 0x0f, 0x2e, 0x52, 0xe4, 0x65, 0x7f, 0xcd, 0x5d, 0xcf, 0x95, 0xc5, 0xd9, 0x25, 0xb0, 0x53, 0x4d, 0xa4, 0xd6, 0xa1, 0x13, 0xe1, 0x40, 0x65, 0x80, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3637 = { .name = "ecdh_brainpoolp224r1_3637", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3637_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3637_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3637_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1223 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3638 for ECDH, tcId is 1224 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3638_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x57, 0x25, 0x44, 0x76, 0x6f, 0xb8, 0x0f, 0xb6, 0x73, 0x65, 0xc9, 0x29, 0x2c, 0x5f, 0x70, 0xbc, 0x28, 0x53, 0x88, 0xd7, 0x05, 0x15, 0x5b, 0x36, 0x1e, 0xee, 0x3a, 0x31, }; static const unsigned char ecdh_brainpoolp224r1_3638_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3638_sharedsecret[] = { 0x2d, 0x4f, 0x54, 0xd2, 0x3c, 0x12, 0xee, 0x51, 0x45, 0x6f, 0x80, 0x47, 0xbc, 0x9c, 0x9b, 0xf3, 0x82, 0x91, 0x92, 0xbe, 0xef, 0x85, 0xbc, 0x61, 0x60, 0x02, 0x99, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3638 = { .name = "ecdh_brainpoolp224r1_3638", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3638_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3638_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3638_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1224 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3639 for ECDH, tcId is 1225 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3639_peerpubkey[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, 0x5f, 0xb0, 0xba, 0x1f, 0x08, 0xe4, 0xe1, 0x5d, 0xfe, 0x79, 0xc1, 0xb2, 0xf6, 0x61, 0x4b, 0x9d, 0xf6, 0xbb, 0xdd, 0x57, 0x11, 0x2f, 0x52, 0xad, 0xa0, 0x1d, 0x4f, 0x3e, }; static const unsigned char ecdh_brainpoolp224r1_3639_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3639_sharedsecret[] = { 0x46, 0x6d, 0x58, 0xed, 0x86, 0x30, 0xd2, 0x22, 0x33, 0x58, 0x99, 0xa4, 0x19, 0xde, 0xb0, 0x3b, 0x9f, 0x3d, 0xda, 0xcb, 0x31, 0x4f, 0x1e, 0xa8, 0xad, 0x0c, 0xe2, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3639 = { .name = "ecdh_brainpoolp224r1_3639", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3639_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3639_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3639_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1225 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3640 for ECDH, tcId is 1226 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3640_peerpubkey[] = { 0x37, 0x3b, 0xbc, 0xf4, 0x23, 0x1b, 0x53, 0x08, 0x3d, 0x36, 0xad, 0xb3, 0xf5, 0x64, 0x85, 0x60, 0x3b, 0x19, 0xb4, 0xb7, 0x72, 0x51, 0xab, 0xd9, 0xb8, 0x68, 0x3c, 0x12, 0x30, 0xc5, 0xf3, 0x83, 0xbe, 0xa0, 0xbf, 0x35, 0x35, 0x9a, 0x47, 0xeb, 0xd9, 0x74, 0x17, 0xb9, 0x3e, 0x24, 0xf3, 0xd2, 0xe7, 0x8b, 0xad, 0xd6, 0x56, 0x18, 0x93, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_3640_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3640_sharedsecret[] = { 0xc0, 0xc6, 0x82, 0xa0, 0x74, 0x5b, 0x19, 0x7d, 0xce, 0xdf, 0x83, 0x62, 0xde, 0xcf, 0x70, 0xc0, 0xb5, 0x13, 0x5e, 0x16, 0xc4, 0xf7, 0xc6, 0x3b, 0x10, 0x46, 0x85, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3640 = { .name = "ecdh_brainpoolp224r1_3640", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3640_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3640_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3640_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1226 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3641 for ECDH, tcId is 1227 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3641_peerpubkey[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, 0x1e, 0x9f, 0x6a, 0x71, 0x74, 0xb8, 0x01, 0xce, 0xda, 0xa4, 0xd4, 0xbc, 0xd7, 0x72, 0xa2, 0x88, 0x4d, 0x0a, 0x2b, 0xd2, 0x73, 0x56, 0x29, 0x5c, 0x88, 0x57, 0x32, 0x03, }; static const unsigned char ecdh_brainpoolp224r1_3641_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3641_sharedsecret[] = { 0x72, 0xe9, 0xc0, 0x6d, 0xec, 0xee, 0x81, 0x33, 0xbb, 0x05, 0xc4, 0x83, 0xc9, 0x7a, 0x51, 0x44, 0x35, 0x1d, 0x3a, 0x7f, 0xde, 0x2f, 0xc8, 0x8b, 0xe6, 0xee, 0xfd, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3641 = { .name = "ecdh_brainpoolp224r1_3641", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3641_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3641_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3641_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1227 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3642 for ECDH, tcId is 1228 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3642_peerpubkey[] = { 0x53, 0x94, 0xea, 0xa3, 0xdb, 0xc3, 0x0f, 0xea, 0xc5, 0xeb, 0x7d, 0x88, 0xe6, 0x9c, 0xf0, 0x68, 0x31, 0x5c, 0xcb, 0x6d, 0xed, 0xf7, 0x87, 0xdb, 0xf9, 0x33, 0xf8, 0x23, 0x66, 0x12, 0x67, 0xe8, 0xae, 0xfb, 0x70, 0xda, 0x15, 0x18, 0x1f, 0xbf, 0x73, 0x90, 0xe7, 0x2a, 0x46, 0x80, 0xb7, 0x88, 0x83, 0xbe, 0xa3, 0xa0, 0x90, 0x87, 0xac, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_3642_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3642_sharedsecret[] = { 0x42, 0xe4, 0x6a, 0x0d, 0xf9, 0x78, 0xb3, 0x36, 0x2a, 0x4e, 0x54, 0x6e, 0xa6, 0x5f, 0x88, 0x9f, 0x10, 0x1b, 0x4e, 0x02, 0x70, 0xcb, 0x99, 0xb5, 0xed, 0x04, 0x65, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3642 = { .name = "ecdh_brainpoolp224r1_3642", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3642_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3642_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3642_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1228 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3643 for ECDH, tcId is 1229 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3643_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x65, 0xd4, 0x25, 0xac, 0xdc, 0xeb, 0x1b, 0x04, 0x86, 0x2e, 0xa9, 0xdf, 0x63, 0x4f, 0xca, 0xd6, 0xf1, 0xaf, 0x3b, 0x70, 0xca, 0x00, 0x00, 0x01, 0x5b, 0x94, 0x35, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_3643_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3643_sharedsecret[] = { 0x4d, 0x51, 0x29, 0x34, 0x80, 0xc1, 0x20, 0x8a, 0x09, 0x35, 0x04, 0xc4, 0xc9, 0x6a, 0x4c, 0x33, 0x46, 0x6c, 0x91, 0x8d, 0x30, 0x0a, 0x85, 0x66, 0xe6, 0x9d, 0x4a, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3643 = { .name = "ecdh_brainpoolp224r1_3643", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3643_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3643_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3643_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1229 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3644 for ECDH, tcId is 1230 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3644_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0xab, 0x72, 0xfe, 0xc5, 0x72, 0x51, 0xd4, 0x0a, 0xb8, 0xf3, 0x58, 0xa2, 0x91, 0x93, 0x38, 0x78, 0xb1, 0x46, 0x35, 0x67, 0x1f, 0x9e, 0x0a, 0x80, 0x88, 0xdc, 0x73, }; static const unsigned char ecdh_brainpoolp224r1_3644_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3644_sharedsecret[] = { 0x7b, 0xed, 0xf2, 0x80, 0xc9, 0x88, 0x0e, 0xdf, 0x26, 0xfe, 0x8d, 0xbd, 0x7a, 0xfa, 0x35, 0x6a, 0x54, 0xa6, 0x7a, 0x93, 0xa2, 0xbf, 0x70, 0x43, 0xd2, 0xf4, 0x97, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3644 = { .name = "ecdh_brainpoolp224r1_3644", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3644_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3644_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3644_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1230 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3645 for ECDH, tcId is 1231 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3645_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x1f, 0x4e, 0xcf, 0xad, 0x07, 0xf9, 0xa9, 0x65, 0x69, 0x35, 0xf5, 0x36, 0xa8, 0xb0, 0x6e, 0x0d, 0xb0, 0xac, 0xf5, 0xd5, 0x4a, 0x93, 0x94, 0x36, 0xea, 0x84, 0x44, 0x80, }; static const unsigned char ecdh_brainpoolp224r1_3645_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3645_sharedsecret[] = { 0xc5, 0x63, 0x60, 0xd8, 0x32, 0xe7, 0xd3, 0x85, 0x4f, 0x60, 0xe0, 0xf3, 0xd3, 0x62, 0xe5, 0x8e, 0xb8, 0x02, 0x6e, 0x27, 0xb6, 0x16, 0x1f, 0xb2, 0x21, 0x7c, 0xe5, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3645 = { .name = "ecdh_brainpoolp224r1_3645", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3645_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3645_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3645_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1231 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3646 for ECDH, tcId is 1232 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3646_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x35, 0x32, 0xd9, 0x72, 0x04, 0x2e, 0x05, 0xe1, 0x3f, 0xe9, 0xd8, 0xf4, 0x48, 0x00, 0x50, 0x21, 0x61, 0xc9, 0xc5, 0xff, 0xa3, 0x0f, 0x5c, 0xaf, 0x15, 0x1d, 0x60, 0x0d, }; static const unsigned char ecdh_brainpoolp224r1_3646_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3646_sharedsecret[] = { 0x5a, 0x0e, 0x6a, 0xb7, 0xb4, 0x1c, 0x61, 0xb1, 0xcb, 0x09, 0x84, 0x49, 0xc7, 0x07, 0xf7, 0x4f, 0x55, 0x54, 0x8b, 0x92, 0xc7, 0x8a, 0xf2, 0x7d, 0x3f, 0x33, 0xc0, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3646 = { .name = "ecdh_brainpoolp224r1_3646", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3646_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3646_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3646_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1232 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3647 for ECDH, tcId is 1233 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3647_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x51, 0x58, 0x53, 0xec, 0x16, 0xa9, 0x85, 0xfb, 0xde, 0x8d, 0xa6, 0x62, 0xe4, 0x72, 0x99, 0xe8, 0x6e, 0xe3, 0x0a, 0xd4, 0x64, 0xac, 0xb8, 0x49, 0xf5, 0x13, 0x29, 0x22, }; static const unsigned char ecdh_brainpoolp224r1_3647_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3647_sharedsecret[] = { 0xb4, 0xe2, 0x1f, 0x24, 0x03, 0xd8, 0x26, 0x43, 0x9e, 0x4d, 0x94, 0x98, 0x5c, 0xeb, 0xbc, 0x72, 0x4a, 0x85, 0xa3, 0xe4, 0x05, 0xae, 0xb8, 0xf6, 0x10, 0x89, 0x2e, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3647 = { .name = "ecdh_brainpoolp224r1_3647", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3647_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3647_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3647_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1233 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3648 for ECDH, tcId is 1234 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3648_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xbd, 0x78, 0x39, 0x6f, 0x68, 0x1c, 0xbf, 0x53, 0x5b, 0x39, 0x51, 0xd0, 0xb7, 0xed, 0xf9, 0x1a, 0xbd, 0x3b, 0x10, 0xe1, 0xcb, 0x5c, 0xde, 0xb7, 0xba, 0x8f, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_3648_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3648_sharedsecret[] = { 0x92, 0xd2, 0xa6, 0x3b, 0x77, 0x88, 0xe0, 0xd7, 0x04, 0xec, 0xda, 0x5d, 0xc5, 0x93, 0x21, 0xdc, 0x30, 0x26, 0x44, 0x45, 0x76, 0x3d, 0xa7, 0x92, 0xf7, 0x03, 0x58, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3648 = { .name = "ecdh_brainpoolp224r1_3648", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3648_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3648_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3648_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1234 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3649 for ECDH, tcId is 1235 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3649_peerpubkey[] = { 0x0c, 0x60, 0x3a, 0x05, 0x6f, 0xc7, 0xc3, 0x9b, 0x5c, 0xb0, 0x98, 0xec, 0x91, 0x9e, 0x86, 0x88, 0x60, 0x3b, 0xda, 0xa2, 0x7a, 0xe2, 0x00, 0x71, 0xab, 0x1c, 0x5d, 0x9a, 0x0c, 0x01, 0x84, 0x6a, 0x7c, 0x8e, 0xa8, 0xb3, 0xde, 0xf8, 0x86, 0xd5, 0xf4, 0x20, 0x9f, 0x9c, 0xf3, 0xc4, 0x5a, 0x76, 0x14, 0xe4, 0x41, 0xe6, 0xf8, 0x2e, 0xe0, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_3649_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3649_sharedsecret[] = { 0xa0, 0xca, 0xf5, 0x93, 0x5a, 0xb3, 0xe9, 0xd5, 0xa1, 0xfb, 0xd2, 0xe9, 0x5b, 0x24, 0x38, 0xbd, 0x82, 0x05, 0x6e, 0xe3, 0x26, 0xd5, 0x8d, 0x9c, 0x13, 0xbf, 0x6c, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3649 = { .name = "ecdh_brainpoolp224r1_3649", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3649_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3649_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3649_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1235 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3650 for ECDH, tcId is 1236 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3650_peerpubkey[] = { 0x67, 0xcf, 0x64, 0x45, 0x04, 0xff, 0xf4, 0x09, 0xb4, 0x32, 0x27, 0x9d, 0x6d, 0x19, 0x90, 0x59, 0x81, 0xb6, 0x4b, 0x03, 0x63, 0x90, 0xb0, 0x3a, 0xc5, 0x12, 0xe0, 0x4f, 0x12, 0x32, 0xaf, 0x9c, 0x5b, 0x4e, 0x0c, 0x73, 0xa0, 0x68, 0x2c, 0x2b, 0xe3, 0xfd, 0x34, 0x0a, 0x44, 0x5f, 0xe1, 0x44, 0xc3, 0xdc, 0xb8, 0x55, 0xae, 0x4a, 0x54, 0x4e, }; static const unsigned char ecdh_brainpoolp224r1_3650_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3650_sharedsecret[] = { 0x65, 0x9f, 0x94, 0x2e, 0x94, 0x9f, 0x83, 0x1c, 0x01, 0x0e, 0x98, 0x58, 0xb9, 0x2e, 0x53, 0xeb, 0xe7, 0x7e, 0xd4, 0x0f, 0xbc, 0xa3, 0x52, 0xe0, 0xb8, 0xc4, 0x8a, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3650 = { .name = "ecdh_brainpoolp224r1_3650", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3650_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3650_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3650_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1236 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3651 for ECDH, tcId is 1237 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3651_peerpubkey[] = { 0x8f, 0x5f, 0x0b, 0x76, 0xca, 0xbe, 0xc2, 0x93, 0x41, 0x30, 0x84, 0xbc, 0x7e, 0x43, 0x02, 0xd6, 0x3a, 0xee, 0x2e, 0x7e, 0xd8, 0xbb, 0x4d, 0x65, 0xf4, 0x4d, 0xc1, 0x76, 0x54, 0xef, 0xbb, 0x1a, 0x15, 0x4b, 0x7e, 0x95, 0x14, 0x74, 0x9b, 0x71, 0x1a, 0x7f, 0x85, 0x6b, 0xdd, 0x05, 0x86, 0x3a, 0x6a, 0x4a, 0x79, 0x6a, 0x92, 0x2f, 0x12, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_3651_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3651_sharedsecret[] = { 0x38, 0xcc, 0x29, 0x3e, 0x07, 0xff, 0x30, 0x7d, 0xfc, 0x3b, 0x6b, 0xac, 0xc7, 0x6e, 0x02, 0x33, 0x4b, 0x32, 0xc5, 0x5e, 0x81, 0xd7, 0x79, 0x40, 0x81, 0xfa, 0x7c, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3651 = { .name = "ecdh_brainpoolp224r1_3651", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3651_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3651_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3651_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1237 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3652 for ECDH, tcId is 1238 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3652_peerpubkey[] = { 0xcb, 0x60, 0xfa, 0xa4, 0xb6, 0x7b, 0xa2, 0xea, 0xcd, 0x67, 0x97, 0x38, 0xe4, 0x33, 0x50, 0xff, 0x50, 0x63, 0x2c, 0xb5, 0x1c, 0xf8, 0x89, 0x83, 0xd3, 0xac, 0x63, 0x65, 0x19, 0xa1, 0x8f, 0xc1, 0x13, 0x46, 0x76, 0xa4, 0x7b, 0x4c, 0x96, 0x3a, 0x8b, 0xe6, 0x28, 0x46, 0x80, 0x77, 0x98, 0x7b, 0x98, 0x77, 0x77, 0xd5, 0x8a, 0x5c, 0x59, 0xd5, }; static const unsigned char ecdh_brainpoolp224r1_3652_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3652_sharedsecret[] = { 0x24, 0x60, 0xad, 0x7b, 0x31, 0x89, 0x3e, 0x44, 0x4d, 0xf6, 0x18, 0xaf, 0x07, 0x53, 0x06, 0xb9, 0xc2, 0xd8, 0x49, 0x9a, 0xa5, 0xe9, 0x40, 0x55, 0xdc, 0xa7, 0x7f, 0x79, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3652 = { .name = "ecdh_brainpoolp224r1_3652", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3652_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3652_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3652_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1238 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3653 for ECDH, tcId is 1239 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3653_peerpubkey[] = { 0x3f, 0x71, 0x07, 0xe2, 0x82, 0x5d, 0xcb, 0xe6, 0xe9, 0xaa, 0xd7, 0x5c, 0x05, 0xab, 0x58, 0x0e, 0x13, 0xaa, 0x37, 0x47, 0xc2, 0x98, 0xb3, 0x5f, 0xef, 0x4e, 0xb5, 0x2f, 0x48, 0x72, 0x0e, 0x07, 0x5a, 0xc7, 0x77, 0x68, 0xd8, 0x3f, 0xa8, 0xc2, 0xa2, 0xa3, 0x8d, 0x51, 0xcb, 0xdb, 0x8e, 0x0d, 0x6a, 0x15, 0x87, 0xc6, 0x94, 0xe0, 0xfd, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_3653_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3653_sharedsecret[] = { 0xa0, 0xb6, 0x2d, 0x36, 0xa5, 0xc9, 0xb6, 0x82, 0x12, 0x76, 0xb9, 0x33, 0x8e, 0x03, 0x8b, 0xdd, 0xb5, 0xd3, 0xb5, 0x83, 0x2e, 0xd8, 0xe1, 0xf9, 0xf2, 0xd8, 0x3d, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3653 = { .name = "ecdh_brainpoolp224r1_3653", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3653_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3653_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3653_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1239 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3654 for ECDH, tcId is 1240 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3654_peerpubkey[] = { 0x10, 0x49, 0x9a, 0xf4, 0xaa, 0x2a, 0x68, 0x6a, 0x86, 0x05, 0xab, 0xb5, 0xb3, 0xbf, 0x00, 0x7d, 0x9b, 0xd3, 0xef, 0x1e, 0x6f, 0x24, 0x6f, 0x40, 0x33, 0x80, 0x2e, 0xff, 0x9d, 0x65, 0xd9, 0xd5, 0x27, 0xfd, 0x91, 0xa9, 0xae, 0xc3, 0x2b, 0x7d, 0x92, 0xfd, 0x5c, 0x6d, 0x73, 0x67, 0xd1, 0x6f, 0xbf, 0xda, 0x0a, 0x2d, 0xc7, 0xd2, 0x94, 0x88, }; static const unsigned char ecdh_brainpoolp224r1_3654_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3654_sharedsecret[] = { 0x4f, 0x80, 0x15, 0x99, 0x24, 0x26, 0x55, 0x10, 0x2d, 0x0a, 0x22, 0xf8, 0x7d, 0x2f, 0x78, 0xaa, 0x94, 0x8b, 0xc8, 0x12, 0xac, 0x34, 0x85, 0x6b, 0x80, 0x69, 0x8e, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3654 = { .name = "ecdh_brainpoolp224r1_3654", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3654_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3654_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3654_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1240 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3655 for ECDH, tcId is 1241 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3655_peerpubkey[] = { 0x1e, 0xb8, 0x2f, 0x61, 0xb0, 0x3b, 0xd6, 0xbe, 0xbd, 0xdd, 0xc4, 0x3a, 0x2f, 0x65, 0x1a, 0x05, 0x41, 0xe2, 0x57, 0x65, 0x01, 0xbf, 0x5f, 0x96, 0x2b, 0x85, 0x8d, 0xba, 0xcf, 0x14, 0x10, 0x78, 0xda, 0x89, 0x0b, 0x0e, 0x53, 0xcb, 0xbb, 0x6a, 0xc4, 0x63, 0xaf, 0xb9, 0x77, 0x82, 0xfb, 0xd6, 0x84, 0xb1, 0x44, 0xae, 0xdd, 0x83, 0xbd, 0x31, }; static const unsigned char ecdh_brainpoolp224r1_3655_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3655_sharedsecret[] = { 0x17, 0xaf, 0x73, 0xca, 0xd5, 0xe3, 0x70, 0x20, 0x89, 0xd1, 0x25, 0x00, 0x44, 0xbf, 0x41, 0x6b, 0xe7, 0x73, 0x5e, 0x62, 0xdd, 0x48, 0x6b, 0x85, 0x31, 0x0d, 0x22, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3655 = { .name = "ecdh_brainpoolp224r1_3655", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3655_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3655_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3655_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1241 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3656 for ECDH, tcId is 1242 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3656_peerpubkey[] = { 0x7f, 0x90, 0x2c, 0x01, 0x7f, 0x9d, 0x2e, 0xbc, 0x84, 0xe1, 0x70, 0x5a, 0x05, 0x06, 0x43, 0x6d, 0xb1, 0xb3, 0x1c, 0xd4, 0x5c, 0x04, 0x45, 0xcd, 0x1d, 0x1d, 0x0d, 0x21, 0x91, 0x32, 0x79, 0x76, 0x5b, 0xfa, 0x0c, 0xac, 0xe7, 0x4f, 0x87, 0x76, 0x3e, 0x85, 0x8c, 0xa8, 0x12, 0x92, 0xec, 0x4b, 0x9d, 0x4c, 0x3d, 0xc4, 0x14, 0xf8, 0x09, 0xc5, }; static const unsigned char ecdh_brainpoolp224r1_3656_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3656_sharedsecret[] = { 0x60, 0xaf, 0xf7, 0x48, 0x34, 0xa1, 0x22, 0x4f, 0x2d, 0x35, 0x11, 0x0b, 0xc6, 0x26, 0x09, 0xe4, 0xd0, 0x63, 0xdf, 0x54, 0xbf, 0x5f, 0xeb, 0x22, 0x86, 0x37, 0x3c, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3656 = { .name = "ecdh_brainpoolp224r1_3656", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3656_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3656_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3656_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1242 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3657 for ECDH, tcId is 1243 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3657_peerpubkey[] = { 0xc6, 0x7d, 0xe0, 0xf4, 0xdd, 0x07, 0x81, 0x91, 0xa1, 0xc3, 0x91, 0xd1, 0xe7, 0x6b, 0x93, 0xb7, 0x60, 0xf2, 0xe8, 0xb1, 0x2a, 0x74, 0xcd, 0xb2, 0xa0, 0x3d, 0xa2, 0x9c, 0xc7, 0x7f, 0x40, 0x0d, 0x21, 0xce, 0x7b, 0x13, 0x59, 0x80, 0xba, 0x91, 0x87, 0x63, 0x48, 0x1d, 0x82, 0x3f, 0xe9, 0x80, 0x81, 0x07, 0xe4, 0x25, 0x65, 0x5e, 0xf2, 0x92, }; static const unsigned char ecdh_brainpoolp224r1_3657_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3657_sharedsecret[] = { 0xa7, 0x7b, 0xdf, 0x8e, 0x39, 0x00, 0xc3, 0x0a, 0xbf, 0xae, 0x7e, 0xdc, 0xaf, 0x1d, 0x26, 0xd4, 0x32, 0x88, 0xfb, 0x35, 0xd9, 0xbc, 0xbb, 0x5a, 0x92, 0x27, 0xa0, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3657 = { .name = "ecdh_brainpoolp224r1_3657", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3657_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3657_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3657_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1243 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3658 for ECDH, tcId is 1244 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3658_peerpubkey[] = { 0x33, 0xb0, 0x06, 0xd4, 0xd5, 0x65, 0x4f, 0xc5, 0x70, 0x36, 0x8a, 0xb6, 0x04, 0xf5, 0x46, 0x20, 0xf9, 0xa5, 0x6b, 0xd4, 0xa5, 0x6b, 0x2e, 0x87, 0xea, 0x20, 0x86, 0x69, 0xd7, 0xa3, 0x87, 0x79, 0xbd, 0x15, 0x05, 0xea, 0xfd, 0x26, 0xf8, 0x87, 0x58, 0x3e, 0xcd, 0x1d, 0xb3, 0x15, 0x15, 0x22, 0x1b, 0x21, 0xd3, 0xe8, 0x7f, 0x69, 0xf1, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_3658_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3658_sharedsecret[] = { 0x8d, 0x65, 0x90, 0xea, 0x4e, 0x4f, 0xfb, 0x6c, 0x29, 0xfe, 0x61, 0xb3, 0x7b, 0x2f, 0x12, 0x7d, 0x9d, 0x79, 0xd3, 0x14, 0xa3, 0x65, 0x54, 0x32, 0x88, 0xb3, 0xcf, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3658 = { .name = "ecdh_brainpoolp224r1_3658", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3658_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3658_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3658_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1244 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3659 for ECDH, tcId is 1245 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3659_peerpubkey[] = { 0x93, 0xbe, 0x47, 0x42, 0x2c, 0xce, 0xea, 0xa1, 0xd6, 0xa2, 0x42, 0x05, 0xb0, 0xae, 0x3e, 0xe7, 0x08, 0x31, 0xf4, 0x76, 0x8a, 0xf5, 0x80, 0x7e, 0x0d, 0x86, 0xa7, 0x7e, 0x6b, 0x1e, 0x03, 0x26, 0x3a, 0x71, 0x6b, 0xf3, 0x8a, 0x5f, 0xeb, 0xea, 0x4d, 0xdd, 0xda, 0x6c, 0x05, 0xba, 0x7c, 0x2e, 0x25, 0x77, 0x5f, 0xea, 0xc8, 0xcc, 0xd5, 0xc5, }; static const unsigned char ecdh_brainpoolp224r1_3659_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3659_sharedsecret[] = { 0xc2, 0x52, 0xb5, 0x97, 0x18, 0xc8, 0xf2, 0xf4, 0x99, 0x92, 0xf4, 0x46, 0x9f, 0xf3, 0x91, 0xb1, 0xe2, 0x7a, 0xae, 0x07, 0x20, 0x8c, 0x83, 0xbc, 0xb8, 0xbb, 0x36, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3659 = { .name = "ecdh_brainpoolp224r1_3659", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3659_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3659_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3659_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1245 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3660 for ECDH, tcId is 1246 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3660_peerpubkey[] = { 0x3b, 0x44, 0x94, 0x78, 0x36, 0x04, 0x7e, 0x3d, 0xb6, 0xa4, 0xd9, 0x90, 0xf7, 0x5d, 0x54, 0x7c, 0x79, 0x02, 0xae, 0x1f, 0xaa, 0xe6, 0x76, 0x08, 0xea, 0x38, 0x81, 0x23, 0x31, 0xe0, 0x16, 0xca, 0xd0, 0xdb, 0xc3, 0x59, 0x85, 0x92, 0xa6, 0x59, 0x41, 0x91, 0xb8, 0x7e, 0x7f, 0x18, 0x80, 0xe5, 0xbe, 0x53, 0x2a, 0x09, 0x05, 0x7d, 0x95, 0xbc, }; static const unsigned char ecdh_brainpoolp224r1_3660_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3660_sharedsecret[] = { 0xd3, 0x4a, 0x8e, 0xce, 0x56, 0x8b, 0x3d, 0xad, 0xc9, 0x75, 0x79, 0x90, 0xcd, 0x74, 0x21, 0x05, 0x84, 0xc7, 0x03, 0xf8, 0xbb, 0x9f, 0xc7, 0x6c, 0xc2, 0x9c, 0xaf, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3660 = { .name = "ecdh_brainpoolp224r1_3660", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3660_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3660_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3660_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1246 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3661 for ECDH, tcId is 1247 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3661_peerpubkey[] = { 0xb5, 0x8e, 0x2e, 0x42, 0x6d, 0x9f, 0xb1, 0xb0, 0x48, 0x38, 0xbc, 0xae, 0x55, 0xad, 0x81, 0xc1, 0x8e, 0x93, 0x74, 0xf5, 0x2d, 0x00, 0x0f, 0x2d, 0x7e, 0xa1, 0x86, 0xcb, 0x6f, 0x30, 0x15, 0xb0, 0x83, 0xe3, 0xcd, 0xdb, 0xce, 0x3a, 0x28, 0xcd, 0xfe, 0x5a, 0xd3, 0x67, 0xec, 0x6f, 0x50, 0x28, 0x63, 0x3b, 0xa9, 0xfe, 0x8a, 0x8a, 0xd6, 0xe5, }; static const unsigned char ecdh_brainpoolp224r1_3661_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3661_sharedsecret[] = { 0x31, 0x9a, 0xc4, 0xf1, 0xf5, 0xaf, 0xc6, 0x5a, 0xe1, 0xdb, 0x81, 0x2e, 0x9c, 0xc3, 0xc8, 0x61, 0xe0, 0xf4, 0x3c, 0x77, 0x92, 0x51, 0x04, 0x37, 0x28, 0x56, 0xf3, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3661 = { .name = "ecdh_brainpoolp224r1_3661", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3661_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3661_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3661_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1247 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3662 for ECDH, tcId is 1248 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3662_peerpubkey[] = { 0xb2, 0xf8, 0x91, 0xd5, 0x11, 0x14, 0xb1, 0xda, 0x3f, 0xf3, 0x95, 0x2d, 0xf2, 0x06, 0x0a, 0x68, 0x74, 0x4b, 0xf6, 0x34, 0x01, 0x29, 0xa3, 0x98, 0x5c, 0x22, 0xea, 0xd4, 0x0a, 0xb8, 0xbc, 0x2f, 0xe6, 0x67, 0xcb, 0xe3, 0x46, 0xd7, 0xe0, 0x45, 0x56, 0xe1, 0x3b, 0xab, 0x13, 0x2d, 0xa4, 0x93, 0x31, 0x0f, 0xa8, 0x1d, 0x48, 0xfb, 0xe5, 0xd1, }; static const unsigned char ecdh_brainpoolp224r1_3662_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3662_sharedsecret[] = { 0x6c, 0xe8, 0xac, 0x20, 0x32, 0xb7, 0x24, 0x8b, 0x39, 0xeb, 0x22, 0x0c, 0xc7, 0xaf, 0x23, 0x4c, 0xf5, 0x37, 0x25, 0xf4, 0x62, 0xaf, 0x53, 0x06, 0x62, 0xa9, 0x51, 0x25, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3662 = { .name = "ecdh_brainpoolp224r1_3662", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3662_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3662_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3662_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1248 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3663 for ECDH, tcId is 1249 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3663_peerpubkey[] = { 0x2b, 0xf4, 0x3b, 0xf3, 0x72, 0x42, 0xe3, 0x97, 0xe8, 0xe7, 0x86, 0x33, 0xa3, 0x0c, 0xa2, 0xc2, 0x4b, 0xb4, 0xba, 0x5f, 0xdf, 0xd1, 0x87, 0x8e, 0x2b, 0x40, 0x62, 0x9d, 0x54, 0xb1, 0x89, 0x6c, 0x2e, 0x95, 0xaf, 0xc5, 0xce, 0x6a, 0x95, 0x1f, 0x63, 0xf8, 0x59, 0x7e, 0x66, 0xb2, 0x1c, 0xc0, 0x6a, 0x95, 0x99, 0xeb, 0xf6, 0x6f, 0x65, 0x42, }; static const unsigned char ecdh_brainpoolp224r1_3663_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3663_sharedsecret[] = { 0xac, 0xdc, 0x79, 0x45, 0xd5, 0x4e, 0xbd, 0x8c, 0x00, 0xd2, 0x2f, 0xb3, 0x9e, 0x0e, 0x9e, 0xf8, 0x49, 0x5b, 0x9c, 0xae, 0x64, 0x2a, 0x34, 0xd7, 0x9d, 0xd9, 0x2c, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3663 = { .name = "ecdh_brainpoolp224r1_3663", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3663_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3663_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3663_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1249 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3664 for ECDH, tcId is 1250 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3664_peerpubkey[] = { 0xb9, 0x2f, 0xae, 0xa4, 0xa9, 0x24, 0x44, 0x0c, 0x2c, 0x0e, 0xe4, 0x34, 0x2f, 0x45, 0x21, 0x00, 0x35, 0xf8, 0x3a, 0xee, 0x1e, 0x43, 0x22, 0x89, 0x07, 0xbe, 0x1b, 0xd6, 0x9e, 0x3f, 0x62, 0xbe, 0x11, 0xca, 0xa4, 0x52, 0x5a, 0x19, 0x4c, 0x94, 0x91, 0x8f, 0x55, 0x5b, 0x0a, 0x50, 0x7d, 0x2b, 0x30, 0x7e, 0xe5, 0xfa, 0xb3, 0x5b, 0x8d, 0xde, }; static const unsigned char ecdh_brainpoolp224r1_3664_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3664_sharedsecret[] = { 0x4b, 0x2f, 0x62, 0x58, 0xb4, 0x41, 0x9d, 0xd7, 0x3f, 0x27, 0x5e, 0x8f, 0xde, 0xd5, 0xdf, 0x56, 0xd3, 0xa1, 0xc1, 0x4c, 0xae, 0x2f, 0x79, 0x83, 0xd1, 0xbd, 0x9f, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3664 = { .name = "ecdh_brainpoolp224r1_3664", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3664_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3664_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3664_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1250 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3665 for ECDH, tcId is 1251 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3665_peerpubkey[] = { 0x1c, 0x13, 0x01, 0xc8, 0x51, 0x50, 0xac, 0xac, 0xdb, 0x42, 0x8c, 0x85, 0x4d, 0x21, 0x4f, 0x5a, 0x1c, 0xca, 0x4c, 0x2e, 0x1f, 0x44, 0x68, 0xdb, 0xc4, 0xd3, 0xe0, 0x41, 0x4f, 0x4f, 0x50, 0xd7, 0x3d, 0xbd, 0x1d, 0xd7, 0xcc, 0x61, 0x80, 0xe1, 0x01, 0xd5, 0xc9, 0xe2, 0x65, 0xac, 0x7f, 0x54, 0x58, 0x44, 0x07, 0x6a, 0xdc, 0xcd, 0xc6, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_3665_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3665_sharedsecret[] = { 0x8e, 0x20, 0x93, 0x97, 0xbb, 0xee, 0x6d, 0xed, 0x3f, 0xb0, 0x1e, 0xab, 0x81, 0x1e, 0x99, 0x8f, 0x31, 0x4f, 0x8d, 0x4e, 0xb3, 0xc4, 0x17, 0x14, 0x3f, 0x59, 0xee, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3665 = { .name = "ecdh_brainpoolp224r1_3665", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3665_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3665_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3665_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1251 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3666 for ECDH, tcId is 1252 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3666_peerpubkey[] = { 0xc8, 0xd5, 0xcb, 0x1c, 0xd1, 0x75, 0x84, 0x5d, 0xbf, 0x35, 0xb3, 0x30, 0xbe, 0xf2, 0x47, 0x72, 0x6f, 0x4b, 0xda, 0xc9, 0x39, 0x6e, 0xa3, 0xa4, 0x02, 0x0d, 0x31, 0x36, 0x4a, 0xdb, 0xb5, 0xec, 0x1c, 0x54, 0x1b, 0x56, 0x86, 0x9f, 0xfb, 0x7e, 0x9a, 0x08, 0x8c, 0x39, 0xb4, 0x0c, 0xb1, 0x26, 0xe0, 0x0b, 0x37, 0xa7, 0xe1, 0x23, 0xcd, 0x06, }; static const unsigned char ecdh_brainpoolp224r1_3666_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3666_sharedsecret[] = { 0x0a, 0xf9, 0xb8, 0xde, 0x7f, 0x20, 0x70, 0x5c, 0xa3, 0x8b, 0x8a, 0x0b, 0x31, 0x46, 0x89, 0x71, 0xd1, 0x20, 0xbc, 0x6c, 0x22, 0xa6, 0x5b, 0xc5, 0xeb, 0xe1, 0xa2, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3666 = { .name = "ecdh_brainpoolp224r1_3666", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3666_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3666_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3666_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1252 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3667 for ECDH, tcId is 1253 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3667_peerpubkey[] = { 0xb3, 0x79, 0x6c, 0xea, 0x49, 0x7c, 0x65, 0x85, 0xd0, 0xb7, 0xc7, 0xe3, 0xc7, 0x1d, 0x42, 0xaa, 0x18, 0x48, 0x10, 0x74, 0xa2, 0x9e, 0xf2, 0x5f, 0xb5, 0x1c, 0x46, 0x94, 0xc6, 0xc9, 0x30, 0x98, 0x65, 0x98, 0xf4, 0x8a, 0x7c, 0x04, 0xa2, 0x75, 0xc4, 0x49, 0x52, 0xe5, 0x3a, 0x94, 0xdb, 0xa3, 0x58, 0x84, 0xbc, 0xc9, 0xe4, 0xf4, 0x1e, 0x56, }; static const unsigned char ecdh_brainpoolp224r1_3667_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3667_sharedsecret[] = { 0x77, 0xce, 0x5b, 0xaa, 0x58, 0x50, 0x6d, 0xda, 0xe3, 0x16, 0x4b, 0x44, 0x04, 0x54, 0x1f, 0x3d, 0x57, 0xdc, 0x16, 0x00, 0xd2, 0x32, 0x0b, 0x14, 0x3c, 0x29, 0x96, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3667 = { .name = "ecdh_brainpoolp224r1_3667", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3667_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3667_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3667_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1253 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3668 for ECDH, tcId is 1254 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3668_peerpubkey[] = { 0x3a, 0x73, 0x8d, 0xa4, 0x06, 0xfb, 0x35, 0x57, 0xc2, 0xab, 0xe2, 0xf7, 0xf4, 0xce, 0xce, 0x40, 0xe4, 0x71, 0x49, 0x27, 0x74, 0xdd, 0x8d, 0xb5, 0x68, 0xed, 0xe6, 0x4c, 0xc0, 0xf1, 0x1b, 0x9e, 0xcb, 0x35, 0x38, 0xd3, 0x99, 0x91, 0x28, 0xfc, 0x54, 0x8d, 0x5d, 0x65, 0x48, 0x75, 0x63, 0xee, 0x5f, 0x60, 0x7b, 0xeb, 0xe3, 0x0a, 0xa4, 0x98, }; static const unsigned char ecdh_brainpoolp224r1_3668_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3668_sharedsecret[] = { 0x9e, 0xfb, 0xd6, 0xbe, 0x99, 0x66, 0xe2, 0x58, 0x34, 0x22, 0x5c, 0x5b, 0x1a, 0x72, 0xc5, 0x45, 0x86, 0x70, 0xbb, 0x47, 0x04, 0xae, 0xd5, 0x5f, 0x98, 0x62, 0x67, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3668 = { .name = "ecdh_brainpoolp224r1_3668", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3668_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3668_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3668_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1254 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3669 for ECDH, tcId is 1255 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3669_peerpubkey[] = { 0xbd, 0xb8, 0x6f, 0x08, 0x06, 0xdc, 0x71, 0x51, 0xb0, 0xfb, 0xc1, 0xb1, 0x10, 0x00, 0x00, 0xcb, 0x8a, 0x0e, 0x38, 0x12, 0xf9, 0xc1, 0xbf, 0x70, 0x2b, 0xcc, 0xfb, 0xeb, 0x33, 0xed, 0xe8, 0xb9, 0x40, 0x56, 0x64, 0x6d, 0xb3, 0x7d, 0x38, 0xc8, 0x3d, 0x40, 0x13, 0xc8, 0xc0, 0x9a, 0xc0, 0x9e, 0xa9, 0x82, 0xbe, 0x0c, 0xff, 0x2e, 0xb3, 0x35, }; static const unsigned char ecdh_brainpoolp224r1_3669_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3669_sharedsecret[] = { 0x40, 0xab, 0x16, 0xbc, 0x2e, 0x60, 0x7e, 0x10, 0xa7, 0x9c, 0xe2, 0x97, 0xf5, 0xee, 0x69, 0x91, 0x35, 0x69, 0x9f, 0xd5, 0x5a, 0xfe, 0x55, 0x43, 0x0a, 0xa3, 0x2e, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3669 = { .name = "ecdh_brainpoolp224r1_3669", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3669_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3669_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3669_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1255 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3670 for ECDH, tcId is 1256 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3670_peerpubkey[] = { 0x86, 0x8e, 0xc4, 0xeb, 0x5d, 0xee, 0xf5, 0x17, 0xab, 0x05, 0x3c, 0xd9, 0x1e, 0xb9, 0xe5, 0xcf, 0xb4, 0x99, 0x0f, 0x0d, 0x8b, 0xe2, 0xb7, 0x81, 0x81, 0x07, 0x2a, 0x5d, 0x0f, 0xfc, 0xda, 0x3c, 0xa1, 0x13, 0x87, 0x29, 0xad, 0xea, 0x01, 0xfe, 0x65, 0x3c, 0x06, 0xe4, 0xfd, 0x07, 0x8c, 0x63, 0x5e, 0x50, 0xa5, 0x16, 0x2d, 0x49, 0x60, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_3670_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3670_sharedsecret[] = { 0xa1, 0xf7, 0x3b, 0x33, 0xcf, 0xea, 0x91, 0x77, 0x47, 0x28, 0x67, 0x94, 0xf3, 0x58, 0x91, 0x8a, 0x24, 0x2c, 0x0b, 0x9e, 0x6a, 0xea, 0x74, 0x68, 0xd5, 0x6b, 0x49, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3670 = { .name = "ecdh_brainpoolp224r1_3670", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3670_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3670_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3670_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1256 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3671 for ECDH, tcId is 1257 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3671_peerpubkey[] = { 0x30, 0x11, 0x10, 0x1a, 0x41, 0xa6, 0x74, 0xf3, 0xcf, 0x53, 0xbf, 0x14, 0x01, 0x88, 0x4f, 0xca, 0xaf, 0x7f, 0xb8, 0x22, 0x28, 0x29, 0x73, 0x79, 0xbc, 0x79, 0x24, 0xba, 0x0a, 0x09, 0x56, 0x81, 0x9a, 0xad, 0x74, 0x72, 0x95, 0x7e, 0x90, 0xc3, 0x3e, 0x81, 0x9c, 0xfa, 0xe0, 0xcc, 0xbd, 0x4e, 0x0c, 0x49, 0xf6, 0xbc, 0xac, 0xbe, 0xa9, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_3671_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3671_sharedsecret[] = { 0x3e, 0xa3, 0xbd, 0x6d, 0x30, 0x2b, 0xe2, 0x8d, 0x53, 0x7d, 0x9a, 0x34, 0x6c, 0x05, 0xfe, 0x4d, 0x91, 0xb4, 0xab, 0x3c, 0x83, 0x9e, 0x9a, 0x6f, 0x53, 0xba, 0xeb, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3671 = { .name = "ecdh_brainpoolp224r1_3671", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3671_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3671_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3671_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1257 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3672 for ECDH, tcId is 1258 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3672_peerpubkey[] = { 0x21, 0xca, 0x1e, 0x97, 0x1b, 0x37, 0xa1, 0x70, 0x0b, 0x66, 0x4f, 0x44, 0x1c, 0xef, 0x0f, 0x06, 0x99, 0xb2, 0xfd, 0x1b, 0x83, 0x49, 0x4f, 0x1b, 0xc2, 0x5c, 0x02, 0x12, 0xa0, 0x1e, 0x37, 0x1b, 0x88, 0x24, 0x46, 0x6e, 0x76, 0xcc, 0x43, 0x4d, 0xbd, 0xd9, 0x09, 0xc0, 0x07, 0x5b, 0x67, 0xb3, 0xc3, 0x18, 0xd2, 0x87, 0xc7, 0x2c, 0xcf, 0x59, }; static const unsigned char ecdh_brainpoolp224r1_3672_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3672_sharedsecret[] = { 0x42, 0xbe, 0x91, 0x28, 0x35, 0xc3, 0x4e, 0x45, 0xb9, 0xcf, 0xfb, 0x6b, 0x88, 0xa9, 0x64, 0xb7, 0x30, 0xbe, 0xd9, 0x32, 0xc1, 0x54, 0x6c, 0x6b, 0xec, 0x36, 0xfd, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3672 = { .name = "ecdh_brainpoolp224r1_3672", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3672_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3672_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3672_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1258 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3673 for ECDH, tcId is 1259 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3673_peerpubkey[] = { 0xbc, 0x4c, 0x9c, 0x1e, 0xeb, 0xb0, 0x41, 0x75, 0xc5, 0xd6, 0x9e, 0x9e, 0x7e, 0xd1, 0xdf, 0x90, 0x74, 0x9d, 0x92, 0x40, 0x06, 0xed, 0x3b, 0x9a, 0xa3, 0x27, 0x0a, 0xbb, 0xac, 0x9c, 0xa3, 0x34, 0xa4, 0xdf, 0xbb, 0x79, 0x02, 0x78, 0x2a, 0x6f, 0x6a, 0xcb, 0xd3, 0xb9, 0xee, 0x84, 0x2a, 0x52, 0x8e, 0x18, 0x9a, 0x2b, 0xe8, 0x23, 0x96, 0x0e, }; static const unsigned char ecdh_brainpoolp224r1_3673_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3673_sharedsecret[] = { 0x8f, 0x82, 0x7c, 0x77, 0x9c, 0xf9, 0x52, 0xd1, 0x7e, 0x92, 0x57, 0x45, 0x28, 0x64, 0x02, 0x1d, 0xd1, 0xfa, 0x88, 0x55, 0xb5, 0x90, 0xf6, 0x19, 0x66, 0x5e, 0xe4, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3673 = { .name = "ecdh_brainpoolp224r1_3673", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3673_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3673_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3673_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1259 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3674 for ECDH, tcId is 1260 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3674_peerpubkey[] = { 0xac, 0xf8, 0x35, 0xdd, 0xf6, 0x0e, 0xd0, 0x17, 0x77, 0xad, 0x8a, 0x19, 0xe3, 0x24, 0xda, 0x34, 0x77, 0xd8, 0x81, 0xf6, 0x25, 0xcd, 0x0a, 0xe1, 0x9c, 0x4f, 0x81, 0xe2, 0xbb, 0xc0, 0xe5, 0x73, 0x73, 0xd7, 0xe7, 0x64, 0xb3, 0x2d, 0x16, 0x8c, 0xfd, 0xa2, 0xeb, 0x32, 0xd1, 0x32, 0x7d, 0x61, 0x57, 0x55, 0x1a, 0x10, 0xeb, 0x79, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp224r1_3674_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3674_sharedsecret[] = { 0x85, 0x58, 0x87, 0xd8, 0xa2, 0x66, 0x14, 0xef, 0xa8, 0x1e, 0x51, 0x1d, 0xbd, 0xd1, 0x2d, 0x1a, 0x80, 0x39, 0x1f, 0xbd, 0x96, 0x7b, 0xb8, 0xaa, 0x65, 0xcf, 0xdc, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3674 = { .name = "ecdh_brainpoolp224r1_3674", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3674_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3674_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3674_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1260 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3675 for ECDH, tcId is 1261 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3675_peerpubkey[] = { 0x5e, 0xdb, 0x93, 0x33, 0xab, 0xdd, 0x33, 0xdf, 0xcc, 0xab, 0x64, 0xdc, 0xc6, 0x8f, 0xc3, 0x57, 0xb8, 0x4a, 0x64, 0x4c, 0xca, 0x45, 0xdb, 0x6d, 0x71, 0xa7, 0x61, 0xa7, 0xd1, 0xc8, 0xc0, 0x15, 0xa8, 0x40, 0x76, 0xe6, 0x12, 0x7c, 0xc6, 0xba, 0xcd, 0xb1, 0xf7, 0x82, 0x10, 0x9b, 0xb7, 0xd0, 0xec, 0x4f, 0xac, 0x80, 0x2d, 0x5b, 0x8f, 0x1e, }; static const unsigned char ecdh_brainpoolp224r1_3675_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3675_sharedsecret[] = { 0x77, 0x5b, 0xa3, 0x6b, 0x9a, 0x75, 0x6f, 0x40, 0x6b, 0xf3, 0x95, 0x8d, 0xfd, 0x1b, 0xcb, 0x77, 0xfe, 0x72, 0x12, 0xee, 0xce, 0xdc, 0x30, 0xd9, 0x40, 0xd2, 0x8a, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3675 = { .name = "ecdh_brainpoolp224r1_3675", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3675_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3675_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3675_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1261 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3676 for ECDH, tcId is 1262 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3676_peerpubkey[] = { 0x6f, 0x31, 0x00, 0x3b, 0x20, 0x69, 0xb5, 0x05, 0x1e, 0x29, 0x22, 0x53, 0x44, 0x54, 0xf9, 0x43, 0x50, 0x81, 0xa6, 0xe5, 0x0b, 0x10, 0x76, 0x72, 0x33, 0x4d, 0xa0, 0xd8, 0x38, 0xc8, 0x9b, 0xb6, 0xb9, 0xa3, 0xc0, 0xd1, 0x22, 0x95, 0xec, 0x7a, 0x0e, 0xee, 0x47, 0x5f, 0x7f, 0x5f, 0x45, 0x70, 0x17, 0xa0, 0x33, 0x34, 0xe8, 0x55, 0x8b, 0x63, }; static const unsigned char ecdh_brainpoolp224r1_3676_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3676_sharedsecret[] = { 0x9d, 0xea, 0xac, 0x0d, 0x2f, 0x1b, 0x89, 0x5a, 0x83, 0x9e, 0x90, 0xcf, 0x20, 0xc8, 0x80, 0x56, 0x84, 0x0d, 0x65, 0x11, 0xa9, 0x74, 0x12, 0xd1, 0xa9, 0xc5, 0x9b, 0x90, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3676 = { .name = "ecdh_brainpoolp224r1_3676", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3676_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3676_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3676_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1262 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3677 for ECDH, tcId is 1263 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3677_peerpubkey[] = { 0x6d, 0x84, 0xb5, 0xf3, 0x21, 0xd7, 0xa9, 0x6a, 0xdc, 0x27, 0xa2, 0x25, 0xab, 0xf6, 0x68, 0x75, 0xee, 0x29, 0xe7, 0x03, 0xfb, 0x04, 0xf9, 0xe8, 0xbf, 0x3c, 0x0d, 0x1e, 0xa2, 0xfa, 0xcb, 0xae, 0x18, 0x8e, 0x28, 0xdd, 0x45, 0xc6, 0x96, 0x78, 0x71, 0xdb, 0xc8, 0xdd, 0x1c, 0x61, 0x2c, 0x6d, 0x5a, 0xb5, 0x2a, 0x19, 0x74, 0x70, 0x62, 0xa6, }; static const unsigned char ecdh_brainpoolp224r1_3677_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3677_sharedsecret[] = { 0x86, 0x2a, 0xd2, 0xe6, 0x06, 0x1c, 0x96, 0xf3, 0xeb, 0xc7, 0x16, 0x42, 0xbe, 0x4b, 0x17, 0xeb, 0x97, 0xfa, 0x2a, 0xc7, 0x67, 0x7d, 0x91, 0xb2, 0x20, 0x2d, 0x12, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3677 = { .name = "ecdh_brainpoolp224r1_3677", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3677_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3677_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3677_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1263 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3678 for ECDH, tcId is 1264 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3678_peerpubkey[] = { 0x10, 0x46, 0x2c, 0xe1, 0xb1, 0x83, 0x64, 0x37, 0x44, 0xe1, 0xb3, 0xbb, 0x10, 0x4d, 0x49, 0x2a, 0xb5, 0x81, 0x44, 0x31, 0x93, 0xde, 0x27, 0x8a, 0x2d, 0x08, 0x6e, 0x06, 0x94, 0xae, 0x45, 0xf5, 0xb3, 0xc2, 0x07, 0x3e, 0x48, 0xdd, 0x02, 0x39, 0x71, 0xb2, 0xe2, 0x3d, 0x03, 0x66, 0x0f, 0x5f, 0x13, 0x7f, 0x40, 0x86, 0xae, 0xf5, 0x04, 0x20, }; static const unsigned char ecdh_brainpoolp224r1_3678_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3678_sharedsecret[] = { 0xb5, 0x73, 0x76, 0x78, 0x42, 0x47, 0x80, 0x2d, 0xa7, 0xf0, 0x54, 0xfd, 0x07, 0xba, 0x81, 0xfa, 0xa5, 0xd6, 0x1f, 0x59, 0xea, 0x23, 0x56, 0xc6, 0x55, 0x44, 0x6a, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3678 = { .name = "ecdh_brainpoolp224r1_3678", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3678_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3678_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3678_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1264 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3679 for ECDH, tcId is 1265 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3679_peerpubkey[] = { 0x56, 0x70, 0x77, 0x7f, 0xec, 0xa5, 0xd8, 0x26, 0xe7, 0x2c, 0x30, 0x73, 0xea, 0x18, 0x35, 0xa0, 0xb4, 0x84, 0xd6, 0x2e, 0xea, 0x4a, 0x40, 0x81, 0x65, 0x9a, 0x8e, 0xb6, 0x4e, 0x75, 0xad, 0x7f, 0x58, 0xd8, 0xe5, 0x8c, 0xf9, 0xe0, 0x0e, 0x95, 0x7d, 0xbb, 0xb7, 0x77, 0x52, 0xe4, 0xe9, 0xf9, 0xeb, 0x1c, 0x3a, 0x76, 0x12, 0x27, 0x50, 0x02, }; static const unsigned char ecdh_brainpoolp224r1_3679_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3679_sharedsecret[] = { 0x96, 0xd0, 0x5f, 0x4a, 0x55, 0x0e, 0xeb, 0xa0, 0x49, 0x58, 0x9e, 0x44, 0xda, 0x19, 0x24, 0x31, 0xc6, 0x6d, 0x8f, 0x86, 0x64, 0x5e, 0x4d, 0xe2, 0x13, 0xed, 0xbb, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3679 = { .name = "ecdh_brainpoolp224r1_3679", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3679_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3679_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3679_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1265 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3680 for ECDH, tcId is 1266 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3680_peerpubkey[] = { 0x2c, 0x16, 0x08, 0x0a, 0x1a, 0xee, 0xe2, 0x10, 0xc8, 0xde, 0x17, 0xd6, 0xc2, 0x2d, 0x35, 0x7d, 0x1a, 0x46, 0x23, 0x14, 0x7e, 0x18, 0x41, 0x7d, 0x68, 0xd6, 0xd0, 0x71, 0x42, 0x3d, 0x80, 0x15, 0x17, 0x9c, 0x02, 0x64, 0xd0, 0xf2, 0xe3, 0xc0, 0x76, 0xe0, 0xcf, 0x1f, 0x40, 0xd8, 0x19, 0x7d, 0xa9, 0xe3, 0x26, 0xa7, 0x04, 0x2f, 0xe6, 0xaa, }; static const unsigned char ecdh_brainpoolp224r1_3680_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3680_sharedsecret[] = { 0x3f, 0xd1, 0x7f, 0x96, 0x72, 0x96, 0x53, 0xc9, 0xf5, 0xcc, 0x3b, 0xac, 0x07, 0x42, 0xb7, 0x8a, 0x6e, 0x34, 0x46, 0x47, 0xbd, 0xcb, 0x56, 0x26, 0xd2, 0x97, 0xff, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3680 = { .name = "ecdh_brainpoolp224r1_3680", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3680_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3680_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3680_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1266 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3681 for ECDH, tcId is 1267 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3681_peerpubkey[] = { 0x14, 0x30, 0x39, 0x8d, 0x1f, 0x97, 0x63, 0x94, 0xd4, 0xe2, 0x96, 0xd0, 0x09, 0x9a, 0x02, 0x86, 0x87, 0x4d, 0x61, 0x1e, 0x4b, 0x64, 0x88, 0x3b, 0xe6, 0x85, 0x65, 0xbb, 0x05, 0xc2, 0x9f, 0xaa, 0x8e, 0x34, 0xe4, 0xd6, 0x75, 0x35, 0xbc, 0x94, 0x4c, 0x72, 0x31, 0xc5, 0x95, 0x29, 0xac, 0x3d, 0x2d, 0x7f, 0x3d, 0xdb, 0x24, 0x3d, 0x0b, 0xa0, }; static const unsigned char ecdh_brainpoolp224r1_3681_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3681_sharedsecret[] = { 0x6b, 0x13, 0x72, 0x8e, 0xf0, 0xb7, 0x6a, 0x8e, 0xe5, 0x25, 0xe2, 0xac, 0x95, 0xfb, 0x3d, 0xa2, 0x77, 0xc6, 0x71, 0x7e, 0xfc, 0x7c, 0x09, 0x4e, 0x0c, 0x7a, 0xfc, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3681 = { .name = "ecdh_brainpoolp224r1_3681", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3681_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3681_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3681_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1267 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3682 for ECDH, tcId is 1268 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3682_peerpubkey[] = { 0x4f, 0x87, 0x3d, 0x73, 0x60, 0xc5, 0x24, 0x8c, 0xc1, 0x06, 0x75, 0xe0, 0x3b, 0x49, 0x80, 0xad, 0xfc, 0x5e, 0x6b, 0x8a, 0x7d, 0x21, 0xbd, 0x5f, 0x9f, 0xfd, 0xae, 0xca, 0xba, 0x00, 0x90, 0x62, 0x05, 0x10, 0x67, 0x99, 0x06, 0xd3, 0x49, 0x28, 0xa2, 0xfd, 0x03, 0x85, 0xf8, 0xcb, 0x33, 0x60, 0x1f, 0xa1, 0x14, 0xab, 0x1a, 0xef, 0x29, 0x97, }; static const unsigned char ecdh_brainpoolp224r1_3682_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3682_sharedsecret[] = { 0xd3, 0xf0, 0x3a, 0x59, 0x8b, 0x7d, 0x2c, 0x43, 0xf1, 0xe8, 0xba, 0x95, 0x2f, 0x24, 0x86, 0xc3, 0xc5, 0xb8, 0x91, 0xb5, 0xb1, 0x53, 0xf6, 0x5f, 0xcc, 0x19, 0x83, 0xcb, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3682 = { .name = "ecdh_brainpoolp224r1_3682", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3682_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3682_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3682_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1268 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3683 for ECDH, tcId is 1269 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3683_peerpubkey[] = { 0x24, 0xa3, 0x82, 0xb6, 0x09, 0x76, 0xd1, 0xdd, 0x7f, 0x16, 0xd2, 0xe4, 0x95, 0x57, 0x77, 0x4a, 0x56, 0xa3, 0xd5, 0xdd, 0xa3, 0xdf, 0xb3, 0x91, 0x6d, 0xd8, 0x30, 0xde, 0x1d, 0xb3, 0x32, 0x92, 0x7b, 0x32, 0x8f, 0x8e, 0x81, 0x2c, 0xbb, 0xf4, 0x0f, 0x68, 0x60, 0x41, 0x38, 0x43, 0x83, 0x22, 0xfd, 0x68, 0xb0, 0x62, 0xe3, 0xd0, 0x23, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_3683_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3683_sharedsecret[] = { 0x12, 0x29, 0x00, 0xad, 0x2d, 0x88, 0x44, 0x17, 0xdc, 0xe5, 0xe2, 0x43, 0x0f, 0x09, 0x00, 0x4a, 0xee, 0x96, 0x79, 0xdf, 0x7e, 0x26, 0x58, 0x12, 0xb5, 0x7a, 0x19, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3683 = { .name = "ecdh_brainpoolp224r1_3683", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3683_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3683_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3683_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1269 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3684 for ECDH, tcId is 1270 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3684_peerpubkey[] = { 0x48, 0x42, 0x33, 0xe9, 0x1d, 0xfe, 0xfe, 0x7b, 0xb9, 0xce, 0x45, 0xc3, 0xfd, 0x4d, 0xdf, 0xbd, 0x48, 0x2e, 0x74, 0x55, 0x10, 0xb9, 0xa4, 0x4a, 0x7c, 0x75, 0xda, 0x6e, 0xc9, 0x6e, 0x3b, 0xc4, 0xb7, 0xfa, 0x33, 0x31, 0xa4, 0x2e, 0x53, 0x71, 0xd6, 0xa5, 0xec, 0x54, 0x89, 0xb4, 0x7d, 0x21, 0x95, 0x80, 0x9f, 0x9f, 0xa9, 0x2b, 0x5d, 0xa2, }; static const unsigned char ecdh_brainpoolp224r1_3684_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3684_sharedsecret[] = { 0x77, 0x4a, 0x89, 0x56, 0x53, 0x30, 0x17, 0x03, 0x83, 0x4d, 0x31, 0x07, 0xd3, 0xe4, 0xab, 0x01, 0x85, 0xde, 0x66, 0x76, 0x31, 0x78, 0x1c, 0xbd, 0xc1, 0x12, 0x6c, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3684 = { .name = "ecdh_brainpoolp224r1_3684", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3684_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3684_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3684_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1270 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3685 for ECDH, tcId is 1271 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3685_peerpubkey[] = { 0x25, 0x7f, 0x5f, 0xf6, 0xa9, 0x89, 0x04, 0xfb, 0xa3, 0x15, 0x84, 0x67, 0x2f, 0xdb, 0x05, 0xe9, 0x72, 0xbf, 0xba, 0x54, 0x90, 0xc5, 0xe3, 0x70, 0xb0, 0x55, 0xff, 0xf5, 0x1d, 0xfd, 0x3c, 0xad, 0x99, 0x4b, 0x92, 0xa2, 0xf4, 0x1f, 0x1b, 0x5c, 0x2b, 0x59, 0x4f, 0x8a, 0x0e, 0x7f, 0xd9, 0x29, 0xcc, 0xae, 0x5a, 0xd1, 0x87, 0xb4, 0x4d, 0x6f, }; static const unsigned char ecdh_brainpoolp224r1_3685_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3685_sharedsecret[] = { 0x25, 0x57, 0xbc, 0x44, 0xe6, 0x81, 0xe4, 0xae, 0xcf, 0x57, 0x56, 0x18, 0x3c, 0x61, 0x43, 0x90, 0x1f, 0xa7, 0xc9, 0xfb, 0x36, 0x64, 0x42, 0xb5, 0x56, 0xdc, 0x93, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3685 = { .name = "ecdh_brainpoolp224r1_3685", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3685_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3685_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3685_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1271 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3686 for ECDH, tcId is 1272 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3686_peerpubkey[] = { 0x23, 0xec, 0x2d, 0x53, 0x58, 0x43, 0x13, 0x97, 0x55, 0xea, 0xc1, 0xb6, 0xfb, 0xe4, 0xee, 0xc7, 0x72, 0xcf, 0xf6, 0x93, 0x5b, 0xea, 0x57, 0xc5, 0x31, 0x59, 0x88, 0x9b, 0x46, 0x9f, 0x31, 0xe2, 0x84, 0x25, 0x4b, 0x06, 0x58, 0x3b, 0xa0, 0xfc, 0xd7, 0x5c, 0xc3, 0x17, 0x8e, 0x50, 0x2e, 0x24, 0xea, 0xb5, 0x48, 0x32, 0xe5, 0xe9, 0x4d, 0x52, }; static const unsigned char ecdh_brainpoolp224r1_3686_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3686_sharedsecret[] = { 0x19, 0xa9, 0x79, 0xb7, 0x78, 0x7b, 0x22, 0x7c, 0x4d, 0xf1, 0xdc, 0x71, 0xbf, 0xcc, 0xcd, 0x57, 0x47, 0x04, 0x3b, 0xdb, 0x61, 0x10, 0xc8, 0xed, 0x69, 0x91, 0xd7, 0xee, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3686 = { .name = "ecdh_brainpoolp224r1_3686", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3686_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3686_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3686_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1272 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3687 for ECDH, tcId is 1273 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3687_peerpubkey[] = { 0x23, 0x83, 0xf6, 0x40, 0xdd, 0x90, 0xb1, 0x5c, 0xb8, 0x9c, 0x44, 0x01, 0xd2, 0x4a, 0x82, 0xdd, 0x67, 0xf1, 0x6d, 0x12, 0xba, 0x9a, 0x96, 0xa2, 0x20, 0xed, 0x57, 0x43, 0x12, 0x24, 0x97, 0x07, 0xc4, 0xf6, 0x87, 0xbd, 0xc0, 0x2a, 0xef, 0xd8, 0x28, 0xb5, 0x15, 0x4a, 0x58, 0x57, 0x32, 0x39, 0xe6, 0x18, 0xc7, 0xa8, 0x20, 0x16, 0x26, 0xd0, }; static const unsigned char ecdh_brainpoolp224r1_3687_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3687_sharedsecret[] = { 0xc5, 0xa6, 0x79, 0x53, 0x9a, 0x38, 0xa8, 0xd4, 0x4b, 0x91, 0xe2, 0x16, 0xeb, 0xbf, 0x2c, 0x28, 0x06, 0x46, 0x82, 0x34, 0x19, 0xea, 0xe4, 0xea, 0xa3, 0xb5, 0x5d, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3687 = { .name = "ecdh_brainpoolp224r1_3687", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3687_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3687_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3687_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1273 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3688 for ECDH, tcId is 1274 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3688_peerpubkey[] = { 0x02, 0x0e, 0x37, 0x11, 0xfc, 0xde, 0x85, 0xe4, 0xed, 0x95, 0xd2, 0xea, 0xf4, 0xb0, 0x9d, 0xc9, 0xbd, 0x98, 0xbe, 0x60, 0xc3, 0xf8, 0x0a, 0x86, 0x54, 0x30, 0xea, 0x61, 0xc9, 0x02, 0x9f, 0x67, 0xc4, 0xb4, 0xd1, 0x11, 0x6b, 0x96, 0xe4, 0x3f, 0x2e, 0x5b, 0x05, 0xed, 0x0b, 0x41, 0xe1, 0x16, 0xab, 0x2e, 0xb6, 0x5e, 0x91, 0x7f, 0xf5, 0xae, }; static const unsigned char ecdh_brainpoolp224r1_3688_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3688_sharedsecret[] = { 0xd4, 0x38, 0xbd, 0xf8, 0x8a, 0x08, 0x11, 0x01, 0xcb, 0x6d, 0x12, 0x09, 0xf7, 0x2a, 0xf5, 0x2a, 0xec, 0x1d, 0x41, 0xae, 0x7c, 0x4a, 0x26, 0x8e, 0x4f, 0xd7, 0x22, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3688 = { .name = "ecdh_brainpoolp224r1_3688", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3688_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3688_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3688_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1274 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3689 for ECDH, tcId is 1275 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3689_peerpubkey[] = { 0xc2, 0x9d, 0x38, 0x54, 0x9d, 0xf3, 0x37, 0x36, 0x6d, 0x2f, 0x05, 0x12, 0x51, 0x5d, 0x72, 0x6b, 0x48, 0x78, 0xaa, 0x05, 0x05, 0xdd, 0x04, 0xe3, 0x9d, 0xfd, 0x27, 0xe5, 0x87, 0x5b, 0xb2, 0x8f, 0x32, 0x6f, 0x34, 0x27, 0x23, 0x11, 0x2d, 0x86, 0xdc, 0x86, 0x26, 0xef, 0xe2, 0x9b, 0x4e, 0xef, 0x6e, 0x3e, 0x66, 0x54, 0x63, 0xa9, 0xad, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_3689_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3689_sharedsecret[] = { 0xa3, 0xeb, 0x0c, 0xa5, 0xf9, 0x37, 0x1d, 0x11, 0xa5, 0x14, 0x4b, 0x5a, 0xe2, 0x10, 0x46, 0xb8, 0x51, 0x3d, 0xb9, 0xca, 0x27, 0x4c, 0x0e, 0xd7, 0x55, 0xa3, 0xc5, 0x7e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3689 = { .name = "ecdh_brainpoolp224r1_3689", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3689_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3689_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3689_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1275 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3690 for ECDH, tcId is 1276 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3690_peerpubkey[] = { 0x78, 0x96, 0x17, 0x29, 0x8b, 0x63, 0x99, 0x55, 0x6a, 0x16, 0xf8, 0xd3, 0x7b, 0x9f, 0x2d, 0x60, 0x5a, 0x29, 0xee, 0x5f, 0x8b, 0x48, 0x67, 0x08, 0xed, 0x02, 0xc6, 0x18, 0x14, 0xb2, 0x45, 0x9b, 0xb2, 0x9e, 0x4b, 0x9e, 0x26, 0x1c, 0xfa, 0x4e, 0x33, 0xbd, 0x1a, 0x91, 0x96, 0x82, 0xfc, 0x1b, 0xe3, 0xaa, 0x37, 0xd6, 0x6b, 0x6a, 0x21, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_3690_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3690_sharedsecret[] = { 0x96, 0xf0, 0xaa, 0xcf, 0x03, 0x2b, 0x06, 0x70, 0x61, 0xaa, 0x80, 0x9c, 0x8f, 0x9e, 0xca, 0x2a, 0x6c, 0xb1, 0xe2, 0xb5, 0x17, 0x21, 0x4f, 0x3e, 0xdf, 0x41, 0xb1, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3690 = { .name = "ecdh_brainpoolp224r1_3690", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3690_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3690_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3690_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1276 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3691 for ECDH, tcId is 1277 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3691_peerpubkey[] = { 0xb9, 0xac, 0x60, 0xfa, 0x33, 0x53, 0xda, 0xe5, 0x1a, 0x4a, 0xec, 0xd3, 0x7c, 0x40, 0x4a, 0xff, 0x1d, 0xda, 0x95, 0xd7, 0x77, 0x4c, 0x7c, 0x6d, 0x9b, 0x1b, 0x01, 0x64, 0xb2, 0xef, 0xc2, 0x01, 0x9c, 0x26, 0x01, 0x1b, 0x99, 0x28, 0x94, 0xb8, 0x44, 0x0d, 0x47, 0xd1, 0xcf, 0x66, 0xe2, 0x27, 0x2d, 0x30, 0xe6, 0x28, 0xb5, 0xb8, 0x13, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_3691_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3691_sharedsecret[] = { 0xb9, 0x9b, 0xe7, 0x0f, 0x5d, 0xa7, 0x1d, 0xe5, 0x73, 0xcf, 0xdb, 0x03, 0x47, 0xe0, 0x8e, 0xd9, 0xf4, 0x9a, 0xce, 0x97, 0xe9, 0x44, 0x28, 0x40, 0x5a, 0xbb, 0xe4, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3691 = { .name = "ecdh_brainpoolp224r1_3691", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3691_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3691_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3691_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1277 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3692 for ECDH, tcId is 1278 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3692_peerpubkey[] = { 0x77, 0x81, 0x8f, 0xf0, 0xdd, 0x80, 0x4f, 0x64, 0x0b, 0x8b, 0x20, 0x4f, 0x31, 0x82, 0x01, 0x39, 0xb1, 0x44, 0xd1, 0x4a, 0x9a, 0x55, 0x1d, 0xc7, 0x67, 0x5e, 0x2f, 0x79, 0xd5, 0xad, 0x42, 0x18, 0x8a, 0xe8, 0x26, 0x47, 0x36, 0x4e, 0x7a, 0x11, 0x18, 0xe5, 0xb0, 0xb1, 0x6c, 0x24, 0xb7, 0x3a, 0x02, 0xbc, 0xc2, 0xdc, 0x56, 0xc3, 0x12, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_3692_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3692_sharedsecret[] = { 0xa3, 0x12, 0x64, 0x84, 0x79, 0x7c, 0x49, 0x12, 0x04, 0xf8, 0x62, 0x5b, 0x8d, 0x05, 0xda, 0x88, 0xcb, 0x9e, 0x06, 0x4d, 0x98, 0x1e, 0x9a, 0x1f, 0xe2, 0x2b, 0x54, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3692 = { .name = "ecdh_brainpoolp224r1_3692", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3692_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3692_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3692_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1278 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3693 for ECDH, tcId is 1279 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3693_peerpubkey[] = { 0x7c, 0x42, 0x3d, 0x1e, 0xea, 0x03, 0x88, 0xee, 0xd7, 0xe8, 0x3c, 0xfa, 0x35, 0x1c, 0x67, 0x02, 0xf5, 0x01, 0xc1, 0x9b, 0x1b, 0x65, 0x7d, 0x44, 0xaf, 0x48, 0x7c, 0x93, 0xa0, 0xd1, 0x0e, 0x7e, 0xbe, 0xcd, 0x31, 0x5e, 0x34, 0x6d, 0x74, 0x23, 0x39, 0x8c, 0xc6, 0x27, 0xd1, 0xf0, 0x7a, 0x1d, 0xa4, 0xb3, 0xa3, 0x0b, 0x47, 0x42, 0x79, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_3693_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3693_sharedsecret[] = { 0x82, 0xe9, 0x48, 0x7b, 0x1d, 0xfd, 0x2f, 0xcd, 0x95, 0x60, 0xb2, 0x7f, 0x8d, 0x51, 0xc5, 0x61, 0xa6, 0xda, 0x4b, 0x3c, 0x39, 0x10, 0x63, 0x3c, 0xb1, 0x52, 0x32, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3693 = { .name = "ecdh_brainpoolp224r1_3693", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3693_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3693_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3693_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1279 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3694 for ECDH, tcId is 1280 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3694_peerpubkey[] = { 0xa8, 0xa8, 0x75, 0x8d, 0xed, 0xca, 0x0c, 0xf5, 0x8d, 0xc2, 0xac, 0xe0, 0x21, 0x60, 0xee, 0x7a, 0x16, 0x7b, 0xcc, 0x02, 0x2b, 0xda, 0x3c, 0xb6, 0x99, 0x4a, 0x2a, 0xd1, 0x2f, 0x01, 0x24, 0x72, 0x93, 0x55, 0x2b, 0x37, 0xbf, 0x8c, 0x4c, 0xc0, 0x47, 0xc2, 0xde, 0xf1, 0xa1, 0xf2, 0x43, 0xa4, 0x38, 0x11, 0xc7, 0x8a, 0x07, 0xf3, 0x89, 0x64, }; static const unsigned char ecdh_brainpoolp224r1_3694_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3694_sharedsecret[] = { 0x97, 0x8a, 0x29, 0x74, 0x67, 0x02, 0x65, 0xf3, 0xd3, 0xe8, 0x87, 0x65, 0x9f, 0x25, 0x5a, 0xaa, 0xb3, 0xbc, 0x37, 0x8d, 0x32, 0xa7, 0x04, 0x48, 0x6b, 0x5f, 0x73, 0x1e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3694 = { .name = "ecdh_brainpoolp224r1_3694", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3694_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3694_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3694_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1280 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3695 for ECDH, tcId is 1281 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3695_peerpubkey[] = { 0xa9, 0xbd, 0xee, 0x88, 0x10, 0x8d, 0xb6, 0x25, 0x52, 0x5e, 0x7f, 0x5b, 0x13, 0xd9, 0xfa, 0x46, 0x36, 0xc3, 0x20, 0x1e, 0x7e, 0x61, 0x3c, 0x2a, 0x99, 0xde, 0x7d, 0xfc, 0x7f, 0x28, 0x21, 0x61, 0x65, 0x2d, 0x69, 0x42, 0xa7, 0x28, 0xe5, 0xad, 0xff, 0xb7, 0x3d, 0x20, 0x9f, 0x78, 0xeb, 0x2c, 0x70, 0x7d, 0x43, 0xa7, 0x1b, 0x2d, 0x1c, 0xbf, }; static const unsigned char ecdh_brainpoolp224r1_3695_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3695_sharedsecret[] = { 0x5e, 0xbb, 0xd0, 0x1a, 0x87, 0x80, 0x42, 0xb7, 0x46, 0x18, 0x4a, 0x68, 0x9b, 0x12, 0xc7, 0x8e, 0x5e, 0x81, 0x9c, 0xc9, 0xed, 0x3e, 0xac, 0xdb, 0xb3, 0x34, 0x2e, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3695 = { .name = "ecdh_brainpoolp224r1_3695", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3695_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3695_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3695_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1281 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3696 for ECDH, tcId is 1282 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3696_peerpubkey[] = { 0x7c, 0x1d, 0x15, 0xd7, 0xa7, 0xb6, 0xd7, 0x87, 0x98, 0x36, 0x8a, 0x09, 0xf6, 0x71, 0xbe, 0xc2, 0x1d, 0x29, 0x5a, 0x7f, 0xfe, 0xf0, 0x1e, 0x85, 0xa3, 0x96, 0xd0, 0x1e, 0x35, 0x51, 0x9d, 0x7c, 0x3f, 0x13, 0x7e, 0x07, 0x75, 0xce, 0x8c, 0x6b, 0xc8, 0x92, 0xd0, 0x0a, 0x6c, 0x33, 0xd8, 0xf4, 0x44, 0x0f, 0x4a, 0x5b, 0x73, 0xb7, 0x02, 0xd2, }; static const unsigned char ecdh_brainpoolp224r1_3696_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3696_sharedsecret[] = { 0x52, 0x5c, 0xa8, 0xf0, 0xa8, 0xd5, 0x94, 0xc3, 0xae, 0xb5, 0x80, 0x91, 0xd8, 0x95, 0xcf, 0xea, 0x89, 0xda, 0x0f, 0xb1, 0x1b, 0xb4, 0x67, 0xd9, 0x0e, 0xa6, 0xb5, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3696 = { .name = "ecdh_brainpoolp224r1_3696", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3696_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3696_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3696_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1282 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3697 for ECDH, tcId is 1283 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3697_peerpubkey[] = { 0x35, 0x6c, 0x86, 0xe5, 0x2a, 0xe7, 0xdb, 0xb9, 0xde, 0x8e, 0x5c, 0xca, 0x75, 0xd2, 0x2f, 0x2b, 0x8c, 0x42, 0x50, 0x03, 0xd3, 0xe8, 0xb7, 0x42, 0x04, 0x94, 0x15, 0xfd, 0x4e, 0x57, 0x2b, 0x6e, 0xc4, 0x7f, 0xdd, 0x49, 0x8b, 0x3b, 0xe0, 0xf6, 0x8c, 0x8a, 0x5a, 0xb8, 0x91, 0xf6, 0xd5, 0x60, 0x59, 0xf6, 0x28, 0xd8, 0x4b, 0xbd, 0x6a, 0x32, }; static const unsigned char ecdh_brainpoolp224r1_3697_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3697_sharedsecret[] = { 0xd0, 0x95, 0x33, 0x8e, 0x29, 0x07, 0x90, 0x16, 0x21, 0x9a, 0x88, 0xfe, 0x9a, 0x25, 0x4a, 0x68, 0xe3, 0xaa, 0x20, 0xbe, 0xb7, 0x41, 0x4d, 0xc1, 0x48, 0xe2, 0x5a, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3697 = { .name = "ecdh_brainpoolp224r1_3697", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3697_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3697_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3697_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1283 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3698 for ECDH, tcId is 1284 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3698_peerpubkey[] = { 0x72, 0xa2, 0x04, 0xe4, 0xc4, 0x5b, 0xe3, 0x98, 0xf2, 0xe3, 0x0b, 0x6e, 0x48, 0x81, 0x1b, 0x4c, 0xbe, 0x18, 0x35, 0x6f, 0x10, 0x72, 0x86, 0xc1, 0x5c, 0x3c, 0xd9, 0x16, 0xca, 0xbb, 0xe9, 0xba, 0x62, 0x1f, 0x8b, 0xc0, 0x4e, 0x9d, 0xdb, 0xc1, 0x78, 0x8a, 0xed, 0x01, 0xdb, 0xca, 0x1a, 0x42, 0x9d, 0x30, 0x21, 0x5e, 0x9d, 0xd5, 0x12, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_3698_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3698_sharedsecret[] = { 0xd6, 0xbc, 0xc7, 0xf5, 0x23, 0xc1, 0xf0, 0x37, 0x65, 0xea, 0x6b, 0x87, 0x4e, 0xcf, 0xa6, 0xbc, 0x7c, 0x92, 0x16, 0x52, 0x4f, 0xf1, 0x23, 0x85, 0x62, 0xb1, 0x21, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3698 = { .name = "ecdh_brainpoolp224r1_3698", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3698_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3698_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3698_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1284 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3699 for ECDH, tcId is 1285 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3699_peerpubkey[] = { 0x9a, 0xbf, 0xd0, 0x55, 0x8a, 0x82, 0x29, 0x9e, 0x93, 0x59, 0xbf, 0xb0, 0xf8, 0x33, 0x82, 0xc6, 0x49, 0x15, 0x34, 0xb4, 0xec, 0x41, 0x68, 0x2c, 0x4a, 0x86, 0x2b, 0xac, 0x29, 0xdc, 0xa1, 0x79, 0x76, 0x18, 0x1a, 0x72, 0xf6, 0xd6, 0xf6, 0xf8, 0x7b, 0xf7, 0x61, 0x52, 0x91, 0x1e, 0x90, 0x5d, 0x21, 0x82, 0x58, 0x7e, 0xca, 0x65, 0x65, 0x1b, }; static const unsigned char ecdh_brainpoolp224r1_3699_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3699_sharedsecret[] = { 0x0a, 0x19, 0xc0, 0x34, 0x53, 0x4d, 0x61, 0xd0, 0xb4, 0x0e, 0x7b, 0x7f, 0x35, 0xd0, 0x29, 0x86, 0xfb, 0xb9, 0xde, 0x65, 0x7b, 0xb5, 0xed, 0x0c, 0x3b, 0xc0, 0x54, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3699 = { .name = "ecdh_brainpoolp224r1_3699", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3699_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3699_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3699_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1285 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3700 for ECDH, tcId is 1286 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3700_peerpubkey[] = { 0xb2, 0xea, 0x1f, 0xed, 0xca, 0xc6, 0xd9, 0x62, 0x7c, 0x9d, 0x9b, 0xad, 0xb8, 0x1b, 0xdf, 0xaa, 0x5b, 0x8b, 0x8d, 0x02, 0x67, 0x37, 0xbf, 0x1d, 0x55, 0x41, 0x1a, 0xbf, 0x6d, 0x04, 0xe1, 0xfb, 0xba, 0xfd, 0x3c, 0x9a, 0x4c, 0x39, 0x35, 0xb8, 0x3a, 0xee, 0x6d, 0xce, 0x88, 0x06, 0x86, 0x88, 0x18, 0x75, 0x3d, 0x56, 0x35, 0xe3, 0x91, 0x62, }; static const unsigned char ecdh_brainpoolp224r1_3700_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3700_sharedsecret[] = { 0xce, 0x86, 0xfc, 0x96, 0x33, 0x8c, 0xd0, 0xb2, 0xb7, 0x34, 0x9d, 0x9a, 0x97, 0x2c, 0x01, 0xd6, 0x8b, 0x6f, 0x3e, 0x7c, 0xbf, 0xb7, 0x06, 0xe7, 0x2f, 0xaa, 0xe1, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3700 = { .name = "ecdh_brainpoolp224r1_3700", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3700_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3700_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3700_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1286 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3701 for ECDH, tcId is 1287 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3701_peerpubkey[] = { 0x4f, 0x3d, 0x27, 0xd0, 0x76, 0x18, 0xdf, 0x2e, 0x7b, 0xa2, 0x43, 0x0b, 0x03, 0x10, 0xbb, 0xd2, 0x1e, 0xbf, 0xd9, 0xc7, 0x45, 0x49, 0xf5, 0x1a, 0x6f, 0x2f, 0x39, 0x0c, 0x4d, 0x37, 0x8a, 0x8f, 0x92, 0x29, 0x6d, 0xea, 0x64, 0xf1, 0x32, 0x5b, 0xe4, 0x26, 0xf4, 0x29, 0xcc, 0xc3, 0x19, 0xa5, 0x87, 0x42, 0x20, 0xe4, 0xd7, 0x3b, 0xe6, 0xbc, }; static const unsigned char ecdh_brainpoolp224r1_3701_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3701_sharedsecret[] = { 0x25, 0xbc, 0xdf, 0xec, 0x78, 0x29, 0x6e, 0x0e, 0x67, 0x6a, 0x17, 0xdd, 0xad, 0x90, 0x55, 0xbf, 0xc2, 0x04, 0x35, 0x0c, 0xb8, 0x4b, 0x8a, 0x0f, 0x4d, 0x05, 0x50, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3701 = { .name = "ecdh_brainpoolp224r1_3701", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3701_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3701_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3701_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1287 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3702 for ECDH, tcId is 1288 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3702_peerpubkey[] = { 0x91, 0xe2, 0x24, 0x00, 0xf1, 0xa1, 0x8e, 0x23, 0x61, 0x8b, 0x66, 0x89, 0x6a, 0xcc, 0x78, 0x8b, 0x42, 0xd1, 0x8f, 0x75, 0xe6, 0xd9, 0xdb, 0x7e, 0x45, 0x18, 0x3f, 0xa0, 0x3a, 0x45, 0xc6, 0x19, 0xe4, 0xda, 0xe7, 0xde, 0xee, 0x68, 0xb4, 0x21, 0xba, 0x1c, 0x0d, 0x89, 0x09, 0x4e, 0x5b, 0x5b, 0x35, 0x27, 0x91, 0x4d, 0xb0, 0x8e, 0x2d, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_3702_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3702_sharedsecret[] = { 0x86, 0x98, 0x57, 0xec, 0x3f, 0xa6, 0x48, 0x47, 0x6d, 0x7a, 0xac, 0xdf, 0xe2, 0x00, 0x18, 0x5e, 0xf3, 0xd5, 0x8e, 0x8c, 0x7f, 0x73, 0x95, 0xbe, 0x69, 0xd5, 0xff, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3702 = { .name = "ecdh_brainpoolp224r1_3702", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3702_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3702_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3702_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1288 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3703 for ECDH, tcId is 1289 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3703_peerpubkey[] = { 0x39, 0x63, 0x88, 0x54, 0xf0, 0x0d, 0x08, 0x53, 0xbd, 0xfd, 0xce, 0xfc, 0x2f, 0x47, 0x62, 0xdc, 0x6c, 0xce, 0x4c, 0x59, 0xa9, 0x93, 0x6d, 0x4e, 0x5a, 0x2b, 0x21, 0x99, 0x4c, 0xeb, 0xf8, 0xf5, 0xc9, 0xc5, 0x8d, 0xb7, 0x1c, 0x48, 0x49, 0x07, 0x48, 0xd1, 0x4a, 0x57, 0xfe, 0x20, 0x71, 0x2f, 0x5e, 0x83, 0xc3, 0x7a, 0xd5, 0x8e, 0x6f, 0x7f, }; static const unsigned char ecdh_brainpoolp224r1_3703_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3703_sharedsecret[] = { 0x25, 0x6b, 0xb8, 0x52, 0x06, 0x50, 0xe7, 0x40, 0x0e, 0xa9, 0x18, 0x15, 0x75, 0x93, 0xbf, 0x8b, 0xe5, 0x61, 0x55, 0x79, 0x49, 0xb8, 0x4e, 0xa1, 0x8b, 0x88, 0x3b, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3703 = { .name = "ecdh_brainpoolp224r1_3703", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3703_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3703_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3703_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1289 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3704 for ECDH, tcId is 1290 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3704_peerpubkey[] = { 0x8c, 0x46, 0x2a, 0x2d, 0xa9, 0x22, 0x4b, 0x61, 0x61, 0xf6, 0x0d, 0xa3, 0x11, 0x3a, 0x4d, 0xbd, 0x5f, 0x35, 0x10, 0x49, 0x2d, 0x7a, 0x8a, 0x43, 0xf3, 0xb2, 0x52, 0x15, 0x52, 0xf0, 0x7b, 0x22, 0x21, 0x65, 0x33, 0xa5, 0x4f, 0x71, 0x5f, 0x4f, 0xb5, 0x12, 0x05, 0xe5, 0x09, 0x3f, 0xae, 0x72, 0x39, 0x8b, 0x20, 0x16, 0xdb, 0x48, 0x45, 0x83, }; static const unsigned char ecdh_brainpoolp224r1_3704_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3704_sharedsecret[] = { 0x9e, 0xca, 0x45, 0xc8, 0x8c, 0xcd, 0x1b, 0x56, 0x85, 0x47, 0x9a, 0x95, 0x32, 0x5a, 0xe2, 0x12, 0x87, 0xba, 0x55, 0x00, 0xd7, 0x26, 0xe7, 0x33, 0xa0, 0xc2, 0x74, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3704 = { .name = "ecdh_brainpoolp224r1_3704", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3704_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3704_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3704_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1290 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3705 for ECDH, tcId is 1291 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3705_peerpubkey[] = { 0x23, 0x94, 0xc1, 0xee, 0x03, 0x8b, 0xc5, 0xd6, 0x95, 0xbf, 0xe3, 0x21, 0x9a, 0x9c, 0x90, 0x33, 0x37, 0x0e, 0xea, 0xea, 0x9b, 0x61, 0x41, 0x38, 0xe6, 0x11, 0x77, 0x47, 0xc7, 0xa7, 0x0e, 0x4f, 0x17, 0x58, 0x3e, 0xd9, 0x2a, 0x30, 0x7e, 0xc0, 0xc6, 0x35, 0x4b, 0xe3, 0xe5, 0xd0, 0xd3, 0x3f, 0x09, 0xf7, 0xcb, 0x13, 0x46, 0x24, 0xff, 0xc3, }; static const unsigned char ecdh_brainpoolp224r1_3705_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3705_sharedsecret[] = { 0x12, 0xa3, 0xe3, 0x3f, 0x49, 0x16, 0x36, 0x91, 0x82, 0xfb, 0xc9, 0x6a, 0xfe, 0x38, 0x83, 0x7d, 0x58, 0x87, 0x5b, 0x62, 0x51, 0x75, 0xda, 0x53, 0xa0, 0xd1, 0x55, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3705 = { .name = "ecdh_brainpoolp224r1_3705", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3705_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3705_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3705_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1291 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3706 for ECDH, tcId is 1292 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3706_peerpubkey[] = { 0x11, 0x74, 0x09, 0x49, 0x35, 0x6f, 0x15, 0xda, 0x67, 0x07, 0xa7, 0x92, 0x74, 0x1d, 0x80, 0x4c, 0xed, 0x72, 0xe6, 0x1c, 0x87, 0x7b, 0x82, 0x3b, 0x94, 0x5a, 0xc0, 0xc0, 0x10, 0xd4, 0xe8, 0x31, 0x1a, 0xc7, 0x45, 0xb4, 0xfc, 0x53, 0xef, 0x89, 0x31, 0xff, 0x35, 0x88, 0xba, 0xfa, 0xb6, 0x98, 0x96, 0xd7, 0xa6, 0x45, 0x6a, 0x4a, 0x14, 0xe5, }; static const unsigned char ecdh_brainpoolp224r1_3706_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3706_sharedsecret[] = { 0x87, 0xf6, 0xd4, 0x8b, 0xc3, 0x84, 0x1a, 0xac, 0x63, 0x10, 0xae, 0x65, 0xdc, 0xdf, 0x61, 0x97, 0x7c, 0x95, 0x92, 0xef, 0xc9, 0xf9, 0x95, 0x49, 0x19, 0x7f, 0xfe, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3706 = { .name = "ecdh_brainpoolp224r1_3706", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3706_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3706_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3706_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1292 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3707 for ECDH, tcId is 1293 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3707_peerpubkey[] = { 0x80, 0x16, 0xe0, 0x79, 0xb0, 0xeb, 0x14, 0x0d, 0xff, 0xfe, 0x0e, 0x70, 0xd4, 0x41, 0x6f, 0x04, 0xd6, 0xdc, 0x17, 0x28, 0xf6, 0x59, 0x44, 0xe4, 0x33, 0x1f, 0x63, 0xc5, 0xc5, 0xdf, 0x4d, 0x43, 0x5c, 0xcb, 0xb8, 0x0c, 0xbe, 0x9f, 0x80, 0x20, 0x2a, 0x3f, 0xe0, 0xd2, 0x05, 0xc3, 0x8f, 0x0b, 0xd3, 0xd9, 0x03, 0x9f, 0x72, 0xbd, 0xbd, 0xf3, }; static const unsigned char ecdh_brainpoolp224r1_3707_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3707_sharedsecret[] = { 0x26, 0xe1, 0x06, 0x62, 0x61, 0x2f, 0xb8, 0x07, 0x66, 0x29, 0xdf, 0x7d, 0x23, 0x27, 0xc9, 0x23, 0x3c, 0x32, 0x08, 0x0f, 0x2c, 0x6c, 0x7e, 0x0a, 0xfb, 0xa2, 0xed, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3707 = { .name = "ecdh_brainpoolp224r1_3707", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3707_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3707_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3707_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1293 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3708 for ECDH, tcId is 1294 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3708_peerpubkey[] = { 0xb5, 0xf3, 0x0c, 0xb6, 0xe7, 0xad, 0x21, 0x5f, 0x47, 0x68, 0xa2, 0x1c, 0x26, 0xf5, 0x87, 0x34, 0xb1, 0xcb, 0xce, 0xb0, 0xa8, 0xe2, 0x79, 0x1e, 0x99, 0x16, 0x0e, 0xdb, 0x78, 0x0e, 0x25, 0x9f, 0xb5, 0xf7, 0xad, 0x1b, 0x9f, 0x4b, 0x09, 0x0d, 0xb0, 0x29, 0xcb, 0x64, 0xef, 0x83, 0x1d, 0x5d, 0xa4, 0xa6, 0xd5, 0x4d, 0x13, 0x49, 0x9a, 0x0f, }; static const unsigned char ecdh_brainpoolp224r1_3708_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3708_sharedsecret[] = { 0xac, 0x2f, 0xba, 0x73, 0x7d, 0x3f, 0xa2, 0xfe, 0x4e, 0x0e, 0xb8, 0x38, 0xb5, 0xd7, 0xc4, 0x0a, 0xf4, 0x5d, 0x9a, 0xeb, 0x06, 0x97, 0x64, 0xcf, 0xa6, 0xf3, 0xb7, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3708 = { .name = "ecdh_brainpoolp224r1_3708", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3708_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3708_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3708_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1294 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3709 for ECDH, tcId is 1295 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3709_peerpubkey[] = { 0x34, 0x29, 0x14, 0x54, 0x92, 0x40, 0x0f, 0x8d, 0xb4, 0x1a, 0x49, 0xe5, 0x26, 0x86, 0x98, 0x2c, 0xbc, 0x9b, 0x0a, 0xd1, 0x05, 0x8a, 0xd8, 0xb9, 0x2b, 0x23, 0x45, 0xfb, 0x24, 0xae, 0x53, 0xd2, 0x60, 0xd5, 0x1a, 0x3c, 0xc5, 0xef, 0xad, 0x1f, 0x9e, 0x25, 0x45, 0xa1, 0x51, 0x21, 0x83, 0xc2, 0x7b, 0x79, 0xa5, 0xd4, 0x27, 0xdd, 0x09, 0xac, }; static const unsigned char ecdh_brainpoolp224r1_3709_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3709_sharedsecret[] = { 0x16, 0xf4, 0x61, 0xff, 0xd6, 0xc2, 0xdb, 0x45, 0x03, 0x8e, 0x6a, 0xfe, 0xce, 0x89, 0x07, 0x25, 0xa0, 0x7a, 0x64, 0xfa, 0xbe, 0xf6, 0x7e, 0x0c, 0x6b, 0x96, 0x5e, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3709 = { .name = "ecdh_brainpoolp224r1_3709", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3709_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3709_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3709_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1295 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3710 for ECDH, tcId is 1296 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3710_peerpubkey[] = { 0x2a, 0xe5, 0xba, 0xb7, 0x28, 0x9c, 0xdb, 0x31, 0x88, 0x7e, 0xa5, 0x74, 0x1a, 0x1d, 0x99, 0x99, 0xdc, 0x80, 0xc3, 0xbd, 0x56, 0xf1, 0xee, 0xe5, 0xd1, 0xf0, 0xcf, 0x34, 0xaf, 0x72, 0xd8, 0x5a, 0xbd, 0x35, 0x80, 0x12, 0x35, 0xcf, 0x18, 0x2c, 0x74, 0xa2, 0x59, 0xcb, 0x50, 0x7f, 0x34, 0x0b, 0x8f, 0x0f, 0x4d, 0x72, 0xfc, 0x32, 0x70, 0xec, }; static const unsigned char ecdh_brainpoolp224r1_3710_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3710_sharedsecret[] = { 0x3c, 0xa2, 0x1f, 0xab, 0xb9, 0x1d, 0xab, 0xdb, 0x09, 0xdf, 0x33, 0x93, 0x69, 0xf7, 0x38, 0x2d, 0xf6, 0x61, 0x70, 0xeb, 0xce, 0xb0, 0xa5, 0xbf, 0xf7, 0xf2, 0x73, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3710 = { .name = "ecdh_brainpoolp224r1_3710", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3710_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3710_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3710_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1296 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3711 for ECDH, tcId is 1297 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3711_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xbd, 0x78, 0x39, 0x6f, 0x68, 0x1c, 0xbf, 0x53, 0x5b, 0x39, 0x51, 0xd0, 0xb7, 0xed, 0xf9, 0x1a, 0xbd, 0x3b, 0x10, 0xe1, 0xcb, 0x5c, 0xde, 0xb7, 0xba, 0x8f, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_3711_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3711_sharedsecret[] = { 0x5f, 0xad, 0x1d, 0x37, 0x69, 0xf9, 0xd2, 0xe8, 0x79, 0xd3, 0xb2, 0xc0, 0xf0, 0x2e, 0xea, 0x85, 0x28, 0x2b, 0x01, 0xbb, 0x0c, 0x90, 0x29, 0x47, 0xaa, 0xe5, 0x17, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3711 = { .name = "ecdh_brainpoolp224r1_3711", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3711_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3711_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3711_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 1297 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3712 for ECDH, tcId is 1298 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3712_peerpubkey[] = { 0x49, 0x92, 0x88, 0xec, 0x0e, 0x6f, 0x18, 0xf4, 0x7e, 0xf5, 0x38, 0x78, 0x80, 0x6d, 0x81, 0x8d, 0x94, 0xf9, 0x3f, 0xbe, 0xe0, 0x9e, 0xa2, 0x9a, 0x62, 0x8d, 0xe3, 0x27, 0xa3, 0xba, 0x98, 0xa4, 0x7e, 0xe0, 0x44, 0x08, 0xe6, 0x50, 0xc8, 0x89, 0xc2, 0xf3, 0x1c, 0x34, 0x44, 0x49, 0xf7, 0x7b, 0x09, 0x06, 0xa2, 0xd6, 0xa4, 0x36, 0xe3, 0x3c, }; static const unsigned char ecdh_brainpoolp224r1_3712_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3712_sharedsecret[] = { 0x7b, 0x4f, 0x7e, 0x6d, 0xcd, 0x2a, 0xab, 0x2c, 0xfe, 0x10, 0x42, 0x2f, 0xec, 0x61, 0xdc, 0xd2, 0xf3, 0x28, 0x05, 0x4d, 0x89, 0x97, 0x99, 0x64, 0xfd, 0x82, 0x10, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3712 = { .name = "ecdh_brainpoolp224r1_3712", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3712_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3712_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3712_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 1298 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3713 for ECDH, tcId is 1299 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3713_peerpubkey[] = { 0x0b, 0xf8, 0x76, 0x5d, 0x0f, 0xa9, 0xd7, 0x18, 0x23, 0x6d, 0xb0, 0x61, 0x40, 0x99, 0x1e, 0x1f, 0x4f, 0xa7, 0xce, 0xf3, 0xa9, 0x6f, 0xdc, 0x2c, 0x60, 0x89, 0x6c, 0xf5, 0xca, 0x3e, 0x97, 0xa0, 0xca, 0x3c, 0x3a, 0xb4, 0x9e, 0x4f, 0x35, 0xa1, 0x15, 0x66, 0x9b, 0xff, 0xb0, 0xdc, 0x79, 0x24, 0x70, 0x44, 0x80, 0x82, 0x69, 0x8e, 0x09, 0x8d, }; static const unsigned char ecdh_brainpoolp224r1_3713_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3713_sharedsecret[] = { 0xd1, 0x19, 0x9a, 0x49, 0x0b, 0x5d, 0x66, 0x40, 0x80, 0xb1, 0x6e, 0xdb, 0x6c, 0xcb, 0x4f, 0x51, 0x16, 0x3e, 0x4a, 0x1d, 0xd7, 0x65, 0x2c, 0xb7, 0xc0, 0xf0, 0x12, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3713 = { .name = "ecdh_brainpoolp224r1_3713", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3713_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3713_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3713_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1, tcId is 1299 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3714 for ECDH, tcId is 1300 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3714_peerpubkey[] = { 0xbf, 0x8c, 0x23, 0xd2, 0xfd, 0xf6, 0x7a, 0xff, 0x95, 0x1e, 0xac, 0x5c, 0x82, 0x20, 0x23, 0x40, 0x2d, 0x35, 0x0a, 0xb0, 0xa1, 0xa1, 0xb1, 0xf2, 0x1b, 0x6b, 0x1d, 0x5e, 0x0e, 0x45, 0xbf, 0x5d, 0x6e, 0x43, 0x0a, 0xfe, 0xc8, 0x66, 0x97, 0xc7, 0x43, 0x73, 0x0e, 0x5f, 0xb9, 0x34, 0x28, 0xd8, 0xea, 0x37, 0xda, 0x10, 0x52, 0xe0, 0x61, 0x27, }; static const unsigned char ecdh_brainpoolp224r1_3714_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3714_sharedsecret[] = { 0xa0, 0x4f, 0x29, 0x80, 0x08, 0x4b, 0xec, 0x2d, 0xb9, 0xb2, 0xeb, 0x5d, 0xdd, 0x09, 0xf0, 0xc3, 0xe0, 0xa4, 0xf7, 0x67, 0x22, 0x7b, 0x41, 0xc8, 0x10, 0xfd, 0x37, 0x33, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3714 = { .name = "ecdh_brainpoolp224r1_3714", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3714_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3714_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3714_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1300 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3715 for ECDH, tcId is 1301 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3715_peerpubkey[] = { 0x32, 0x23, 0x53, 0x2a, 0x3e, 0x83, 0x94, 0x8c, 0xc5, 0xaa, 0x18, 0x8e, 0x16, 0x1d, 0xf3, 0x54, 0xe4, 0x56, 0x60, 0x93, 0xbd, 0x9e, 0x6e, 0xf7, 0x0e, 0x16, 0x67, 0xfe, 0x49, 0x3d, 0xea, 0xa9, 0x01, 0x00, 0x58, 0xc9, 0x44, 0x64, 0x20, 0x4b, 0x03, 0x2d, 0xed, 0x68, 0x74, 0xbe, 0xc6, 0xee, 0x34, 0x3e, 0x21, 0x50, 0x22, 0x45, 0x2e, 0xb9, }; static const unsigned char ecdh_brainpoolp224r1_3715_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3715_sharedsecret[] = { 0x59, 0xd7, 0x82, 0xa6, 0x8e, 0xac, 0x86, 0xe4, 0x22, 0x04, 0x15, 0x67, 0xd2, 0xad, 0xe6, 0xcd, 0xa2, 0xc5, 0xe3, 0xce, 0x9b, 0x01, 0x46, 0x19, 0x98, 0x1f, 0x30, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3715 = { .name = "ecdh_brainpoolp224r1_3715", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3715_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3715_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3715_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1301 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3716 for ECDH, tcId is 1302 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3716_peerpubkey[] = { 0x5c, 0x2c, 0x88, 0x55, 0xab, 0x28, 0x3b, 0x19, 0xd4, 0xf4, 0x09, 0x2f, 0xfe, 0xd6, 0xa8, 0x7f, 0x08, 0x76, 0x6c, 0x90, 0x80, 0xeb, 0x69, 0x2c, 0x5a, 0x62, 0xf2, 0x9b, 0x5f, 0xbd, 0x38, 0x6a, 0x00, 0xbb, 0x19, 0x28, 0xa0, 0x46, 0xc5, 0xa2, 0x6b, 0x45, 0xea, 0x49, 0x8a, 0xff, 0x29, 0x5b, 0xca, 0x22, 0x10, 0x92, 0x1d, 0xd0, 0x1f, 0xbd, }; static const unsigned char ecdh_brainpoolp224r1_3716_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3716_sharedsecret[] = { 0xd3, 0x79, 0x3f, 0x50, 0x93, 0x37, 0xd1, 0xae, 0x39, 0x23, 0x33, 0x13, 0xb9, 0xcc, 0x1c, 0xf9, 0x40, 0x7d, 0xd6, 0x18, 0x83, 0xf7, 0xc2, 0xbd, 0x5e, 0xb1, 0xdb, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3716 = { .name = "ecdh_brainpoolp224r1_3716", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3716_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3716_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3716_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1302 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3717 for ECDH, tcId is 1303 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3717_peerpubkey[] = { 0xaa, 0x71, 0xef, 0x47, 0xf9, 0x2e, 0x79, 0x81, 0x17, 0x5f, 0x89, 0xac, 0x3b, 0x40, 0xb7, 0x83, 0x92, 0x7f, 0x30, 0x72, 0x20, 0xcd, 0x79, 0x3c, 0x68, 0xf3, 0x7b, 0x58, 0xa8, 0xf8, 0x5a, 0xfb, 0xc8, 0x6a, 0x0e, 0x60, 0xf8, 0x8d, 0x4e, 0x7a, 0xc7, 0x6a, 0xb0, 0x7d, 0x23, 0x3f, 0xe6, 0xf2, 0xe1, 0x0e, 0x11, 0x75, 0x52, 0x80, 0x08, 0xde, }; static const unsigned char ecdh_brainpoolp224r1_3717_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3717_sharedsecret[] = { 0x2a, 0x19, 0x79, 0xbf, 0x8f, 0x7e, 0x65, 0xc6, 0x46, 0x97, 0x09, 0xef, 0xc1, 0x43, 0x0d, 0xbc, 0xfe, 0xce, 0x5e, 0xfa, 0x88, 0x51, 0xad, 0x03, 0xd1, 0x1a, 0xfb, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3717 = { .name = "ecdh_brainpoolp224r1_3717", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3717_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3717_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3717_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1303 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3718 for ECDH, tcId is 1304 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3718_peerpubkey[] = { 0x5e, 0x14, 0x5b, 0x79, 0x73, 0x75, 0xf6, 0xc4, 0x79, 0x41, 0x5f, 0x23, 0x94, 0x7b, 0x9a, 0x18, 0xa8, 0xa4, 0xba, 0xea, 0x6d, 0xe0, 0x53, 0x89, 0xba, 0xf0, 0xe4, 0xe1, 0x58, 0xcd, 0xd1, 0x28, 0x75, 0x0e, 0x12, 0x0c, 0xaf, 0x61, 0xb3, 0x1d, 0x5d, 0xbf, 0x00, 0x07, 0x3a, 0xfe, 0x7b, 0xd0, 0xa2, 0x68, 0x10, 0x54, 0x96, 0x1b, 0x75, 0xe0, }; static const unsigned char ecdh_brainpoolp224r1_3718_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3718_sharedsecret[] = { 0xa1, 0xfe, 0xdc, 0xa1, 0x96, 0x17, 0x76, 0xbb, 0xb7, 0x47, 0x66, 0x7f, 0x0b, 0x12, 0x3f, 0x99, 0xdd, 0x61, 0x3c, 0xa6, 0xcc, 0xc7, 0xef, 0x50, 0x36, 0xb4, 0xbc, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3718 = { .name = "ecdh_brainpoolp224r1_3718", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3718_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3718_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3718_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1304 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3719 for ECDH, tcId is 1305 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3719_peerpubkey[] = { 0xb4, 0x81, 0x9b, 0xb7, 0x3d, 0xae, 0xa5, 0x10, 0x3d, 0x7e, 0xb2, 0x1f, 0x0b, 0xd9, 0x4f, 0x3e, 0xee, 0x81, 0xb8, 0x82, 0xaf, 0x44, 0x26, 0x11, 0xe1, 0xf7, 0xcf, 0xb1, 0x18, 0x58, 0x07, 0xdb, 0xc2, 0x66, 0xe5, 0x71, 0x4a, 0xb0, 0x96, 0x98, 0x21, 0xe2, 0x42, 0x91, 0x1f, 0x07, 0x4f, 0x5e, 0x68, 0x04, 0xfb, 0x8f, 0x81, 0xef, 0xbf, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_3719_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3719_sharedsecret[] = { 0x86, 0x8e, 0x6d, 0x79, 0x50, 0xf2, 0xcf, 0x55, 0xa7, 0xe1, 0x4b, 0xad, 0x66, 0x7c, 0x67, 0x79, 0x35, 0xcc, 0x0f, 0xc8, 0x0d, 0x47, 0xd7, 0x1f, 0x5a, 0xbf, 0xc3, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3719 = { .name = "ecdh_brainpoolp224r1_3719", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3719_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3719_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3719_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1305 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3720 for ECDH, tcId is 1306 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3720_peerpubkey[] = { 0x9b, 0xdc, 0x2d, 0xa4, 0x90, 0x31, 0x0e, 0x2e, 0x74, 0x1f, 0x96, 0x0f, 0x9c, 0x00, 0x26, 0x8b, 0x20, 0xeb, 0x03, 0x04, 0x28, 0x33, 0x29, 0x36, 0x56, 0xbb, 0x30, 0x40, 0xd1, 0x18, 0xfd, 0x17, 0x13, 0x8c, 0x97, 0xc5, 0x7f, 0x65, 0x31, 0x43, 0x31, 0x4b, 0x1d, 0x9f, 0x13, 0xdf, 0x95, 0xa3, 0x72, 0x93, 0x6e, 0x65, 0x4b, 0xdb, 0x0e, 0x50, }; static const unsigned char ecdh_brainpoolp224r1_3720_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3720_sharedsecret[] = { 0x34, 0xe2, 0x2b, 0x7e, 0x18, 0x50, 0xa1, 0xd8, 0xf6, 0x52, 0xf9, 0xb7, 0x3f, 0x90, 0x93, 0xb5, 0x66, 0x94, 0xf7, 0xc4, 0xb2, 0x70, 0xb1, 0x74, 0xea, 0x8b, 0x22, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3720 = { .name = "ecdh_brainpoolp224r1_3720", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3720_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3720_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3720_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1306 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3721 for ECDH, tcId is 1307 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3721_peerpubkey[] = { 0x9e, 0xa4, 0xb5, 0xea, 0x76, 0xd5, 0x2d, 0xe3, 0xee, 0x13, 0x93, 0x1f, 0x8a, 0xa5, 0x18, 0x87, 0x97, 0x61, 0x40, 0xc3, 0xcb, 0x67, 0x48, 0x8d, 0xe0, 0x79, 0xb5, 0xf4, 0x0c, 0xa0, 0xce, 0x68, 0x62, 0xee, 0x0b, 0xaa, 0x55, 0x4d, 0xfa, 0x41, 0x9c, 0xd1, 0x56, 0xd3, 0x0e, 0x29, 0x8c, 0xdf, 0xdc, 0xc4, 0xf8, 0x7d, 0x4b, 0x2b, 0x64, 0xa4, }; static const unsigned char ecdh_brainpoolp224r1_3721_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3721_sharedsecret[] = { 0x17, 0x9b, 0xb9, 0x9d, 0x01, 0xfb, 0xec, 0x46, 0x0b, 0xed, 0x50, 0x40, 0x58, 0xc7, 0xed, 0xb0, 0xae, 0xce, 0x18, 0xae, 0xf2, 0x5f, 0x6b, 0xd6, 0x5d, 0xa4, 0x52, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3721 = { .name = "ecdh_brainpoolp224r1_3721", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3721_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3721_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3721_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1307 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3722 for ECDH, tcId is 1308 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3722_peerpubkey[] = { 0x2e, 0x40, 0x6a, 0x62, 0x39, 0xb4, 0x93, 0x64, 0x1e, 0x1a, 0xe2, 0x80, 0x79, 0x30, 0x32, 0xb9, 0x3e, 0x67, 0x3d, 0x8e, 0x1d, 0xf3, 0xe1, 0x76, 0xa5, 0x87, 0xf9, 0xcc, 0xc9, 0x67, 0x1a, 0x01, 0xce, 0x37, 0x74, 0x83, 0xe0, 0x95, 0xc8, 0xaf, 0x4b, 0x57, 0x7b, 0x0e, 0x1d, 0xa7, 0x20, 0xfa, 0x01, 0x98, 0x2d, 0x0a, 0xe5, 0xfb, 0x6a, 0x49, }; static const unsigned char ecdh_brainpoolp224r1_3722_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3722_sharedsecret[] = { 0x52, 0x66, 0x69, 0x68, 0x84, 0x17, 0x77, 0xdb, 0x92, 0x43, 0x76, 0x2d, 0x8f, 0xf2, 0x5b, 0x9c, 0x70, 0x84, 0x94, 0x2f, 0x15, 0xcc, 0x10, 0xb1, 0x58, 0xd7, 0x98, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3722 = { .name = "ecdh_brainpoolp224r1_3722", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3722_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3722_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3722_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1308 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3723 for ECDH, tcId is 1309 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3723_peerpubkey[] = { 0x8f, 0xfa, 0x10, 0x26, 0xde, 0x44, 0xe7, 0xaf, 0x8d, 0x5a, 0x6e, 0x22, 0x70, 0xc2, 0xef, 0x5d, 0x72, 0xb8, 0x83, 0x49, 0xa3, 0x2c, 0x07, 0x71, 0xe5, 0xd5, 0xc0, 0xed, 0x67, 0xf2, 0xda, 0x5e, 0xf3, 0x55, 0x99, 0xb4, 0xca, 0x73, 0x2a, 0x06, 0xa6, 0xa3, 0x82, 0x96, 0x0e, 0xb9, 0x78, 0x79, 0x3d, 0xa2, 0x50, 0xe9, 0x79, 0x57, 0xfa, 0x7d, }; static const unsigned char ecdh_brainpoolp224r1_3723_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3723_sharedsecret[] = { 0x30, 0x44, 0x1e, 0x34, 0x2d, 0xc1, 0x27, 0x4b, 0xbb, 0x97, 0xd1, 0x03, 0x38, 0x01, 0xbe, 0xb7, 0xa0, 0xe2, 0x64, 0xaf, 0x9a, 0x51, 0xdc, 0x9e, 0x36, 0xde, 0x1b, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3723 = { .name = "ecdh_brainpoolp224r1_3723", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3723_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3723_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3723_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1309 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3724 for ECDH, tcId is 1310 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3724_peerpubkey[] = { 0x10, 0x80, 0x98, 0x18, 0x4d, 0x30, 0x87, 0x1b, 0x64, 0xb2, 0xca, 0xe0, 0xa7, 0x68, 0xc9, 0x5a, 0x8b, 0xb4, 0xb8, 0x33, 0x93, 0x79, 0xe1, 0x57, 0x36, 0xd4, 0xad, 0x2d, 0x0d, 0x2e, 0xe5, 0x92, 0x8e, 0xd8, 0x9c, 0xbb, 0xaf, 0xec, 0x81, 0xf7, 0x9d, 0x33, 0x26, 0xe4, 0xfd, 0xb4, 0x00, 0x39, 0xa0, 0xae, 0xde, 0x68, 0xed, 0x8c, 0x85, 0xf0, }; static const unsigned char ecdh_brainpoolp224r1_3724_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3724_sharedsecret[] = { 0x28, 0xe9, 0xf7, 0x2c, 0x0f, 0x49, 0x39, 0xf1, 0x62, 0xfe, 0xb3, 0xde, 0xc5, 0x2d, 0x48, 0xd1, 0xff, 0x3a, 0x7f, 0x72, 0xc0, 0xba, 0xdf, 0xef, 0x54, 0xb3, 0xb2, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3724 = { .name = "ecdh_brainpoolp224r1_3724", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3724_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3724_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3724_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1310 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3725 for ECDH, tcId is 1311 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3725_peerpubkey[] = { 0xb3, 0xfa, 0x92, 0xcb, 0xea, 0x39, 0xbc, 0x69, 0x74, 0xa8, 0xa7, 0xff, 0x72, 0xfe, 0x31, 0xa9, 0x11, 0x80, 0xb8, 0x19, 0x41, 0xe4, 0xae, 0xd8, 0xa5, 0xa3, 0x41, 0x23, 0xb2, 0xb7, 0xd6, 0xdc, 0x43, 0xd2, 0x80, 0x07, 0x8e, 0x15, 0x89, 0x76, 0xef, 0x51, 0x12, 0x3b, 0x64, 0x8a, 0xc8, 0x30, 0x05, 0xea, 0xbc, 0x63, 0x30, 0xd5, 0x70, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_3725_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3725_sharedsecret[] = { 0xc4, 0xc1, 0x90, 0x1e, 0x5f, 0x13, 0x6b, 0x9b, 0x02, 0x0a, 0x1c, 0x1b, 0x47, 0xd3, 0x43, 0x54, 0xd4, 0x9f, 0x27, 0x8d, 0x13, 0x07, 0x54, 0xc5, 0x2c, 0x7a, 0x1a, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3725 = { .name = "ecdh_brainpoolp224r1_3725", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3725_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3725_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3725_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1311 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3726 for ECDH, tcId is 1312 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3726_peerpubkey[] = { 0x33, 0xd8, 0x09, 0xbe, 0x0f, 0xfa, 0xe5, 0x38, 0xb4, 0x70, 0x9b, 0xf8, 0x16, 0x88, 0x03, 0xe7, 0x6d, 0x8e, 0x19, 0xff, 0x4d, 0x31, 0x99, 0x2f, 0xdb, 0x0f, 0x09, 0x03, 0x19, 0x33, 0x30, 0x60, 0x8a, 0xbe, 0xf4, 0xa3, 0x17, 0x23, 0xc6, 0x1c, 0xe1, 0xab, 0xd4, 0xe6, 0x15, 0x01, 0xef, 0x8e, 0x67, 0x90, 0x9f, 0xe6, 0xfb, 0x8f, 0x8a, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_3726_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3726_sharedsecret[] = { 0x75, 0xed, 0xa6, 0x0b, 0xdd, 0xff, 0x28, 0x5f, 0xff, 0xc5, 0x85, 0xde, 0x0b, 0xe9, 0x7a, 0x23, 0xd8, 0x83, 0x70, 0xd7, 0x14, 0x50, 0xb9, 0x20, 0x92, 0xeb, 0x6b, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3726 = { .name = "ecdh_brainpoolp224r1_3726", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3726_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3726_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3726_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1312 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3727 for ECDH, tcId is 1313 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3727_peerpubkey[] = { 0x24, 0xa2, 0x77, 0xcd, 0xb2, 0x58, 0x30, 0xb0, 0x86, 0xc5, 0x3a, 0x95, 0xde, 0x31, 0x01, 0x88, 0x56, 0x74, 0xd8, 0x28, 0x93, 0x29, 0x82, 0x1d, 0xfc, 0x36, 0x54, 0x6a, 0x51, 0xba, 0x18, 0xb4, 0x6a, 0x39, 0x71, 0xe7, 0xe0, 0x4a, 0xfd, 0xdb, 0xe9, 0x19, 0x8b, 0x5f, 0x37, 0x18, 0xc2, 0x73, 0x95, 0x0f, 0xa8, 0xce, 0x39, 0x84, 0x57, 0xb3, }; static const unsigned char ecdh_brainpoolp224r1_3727_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3727_sharedsecret[] = { 0x4f, 0xd3, 0xa3, 0xfc, 0x75, 0x80, 0xb0, 0xf2, 0x36, 0x1f, 0x79, 0xdf, 0xdc, 0x5e, 0x2f, 0xfd, 0xc0, 0x2f, 0x42, 0xa9, 0x37, 0xd3, 0x95, 0x04, 0x02, 0xa7, 0x3b, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3727 = { .name = "ecdh_brainpoolp224r1_3727", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3727_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3727_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3727_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1313 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3728 for ECDH, tcId is 1314 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3728_peerpubkey[] = { 0x5e, 0x56, 0x69, 0xb3, 0x1c, 0x0e, 0xe1, 0x9f, 0xa7, 0x24, 0x44, 0xcd, 0x97, 0x4f, 0x68, 0x20, 0x1f, 0xe8, 0x05, 0xa5, 0x0f, 0x05, 0xed, 0xab, 0x49, 0xd4, 0x52, 0x35, 0x90, 0xf7, 0x48, 0xeb, 0x5e, 0x2f, 0x25, 0xe5, 0x2d, 0xea, 0x59, 0x0a, 0xab, 0x8b, 0xe8, 0xb2, 0x83, 0x77, 0x6d, 0x1b, 0x37, 0x9e, 0x0d, 0x63, 0xee, 0x94, 0xae, 0x63, }; static const unsigned char ecdh_brainpoolp224r1_3728_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3728_sharedsecret[] = { 0x5f, 0x3a, 0xe7, 0x60, 0xbc, 0x6d, 0x4e, 0xff, 0x26, 0xc3, 0x07, 0xf1, 0xb7, 0xaf, 0x6a, 0xbd, 0x58, 0x36, 0x34, 0xb3, 0x06, 0x04, 0x50, 0xf0, 0xfe, 0xda, 0xf1, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3728 = { .name = "ecdh_brainpoolp224r1_3728", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3728_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3728_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3728_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1314 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3729 for ECDH, tcId is 1315 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3729_peerpubkey[] = { 0x59, 0x51, 0x84, 0xd2, 0xe1, 0xa9, 0xda, 0xee, 0x25, 0x96, 0xb4, 0x52, 0x2b, 0x74, 0x77, 0x35, 0xb3, 0x9c, 0x47, 0x01, 0x48, 0x1a, 0xd5, 0x48, 0x0a, 0x96, 0xb3, 0xe3, 0x0a, 0xe2, 0x17, 0x0e, 0xdb, 0x1c, 0x0b, 0x74, 0x3e, 0xcc, 0xbd, 0x59, 0x00, 0x36, 0xa1, 0x95, 0x74, 0x30, 0xb6, 0xce, 0x84, 0x23, 0x83, 0xbb, 0x23, 0x6c, 0xc8, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_3729_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3729_sharedsecret[] = { 0x81, 0xe2, 0x75, 0x29, 0x88, 0xe4, 0x7a, 0x78, 0xad, 0x9d, 0xb5, 0xc5, 0xaa, 0x75, 0xb2, 0xc0, 0x56, 0x50, 0xe9, 0x6c, 0xf6, 0xeb, 0x24, 0x1a, 0xf2, 0x5a, 0x6b, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3729 = { .name = "ecdh_brainpoolp224r1_3729", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3729_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3729_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3729_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1315 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3730 for ECDH, tcId is 1316 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3730_peerpubkey[] = { 0x33, 0x16, 0x3b, 0xa5, 0xc8, 0x26, 0x37, 0x9e, 0xf4, 0xd5, 0xa9, 0x59, 0xb3, 0x16, 0xb1, 0x54, 0x87, 0x0f, 0x7a, 0xba, 0xb8, 0x95, 0x03, 0xf0, 0x44, 0x40, 0x40, 0xe3, 0x24, 0xba, 0x3c, 0xb6, 0x09, 0x6e, 0xe7, 0x52, 0x79, 0xd3, 0xd1, 0x2b, 0xb1, 0xe3, 0x97, 0xd9, 0x54, 0x34, 0x04, 0xbf, 0xce, 0x17, 0x4d, 0x57, 0xd3, 0xd5, 0x62, 0xfd, }; static const unsigned char ecdh_brainpoolp224r1_3730_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3730_sharedsecret[] = { 0x30, 0x93, 0x71, 0xc1, 0x37, 0x63, 0x1b, 0x9e, 0x37, 0x0c, 0x08, 0xae, 0x96, 0xa1, 0x45, 0x16, 0x43, 0x13, 0xe7, 0x9a, 0xb9, 0xb6, 0xe3, 0xea, 0xe3, 0x9d, 0xc1, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3730 = { .name = "ecdh_brainpoolp224r1_3730", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3730_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3730_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3730_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1316 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3731 for ECDH, tcId is 1317 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3731_peerpubkey[] = { 0xbd, 0x06, 0x4e, 0x66, 0x58, 0x83, 0x2d, 0xf8, 0xa9, 0x67, 0xa9, 0x3b, 0xcf, 0xd0, 0xa3, 0x94, 0x43, 0x6b, 0x2d, 0x77, 0x53, 0x03, 0xf4, 0x3d, 0xe6, 0xb5, 0x85, 0x09, 0xbe, 0x69, 0x8d, 0x9a, 0xc4, 0x12, 0xc9, 0xb4, 0xcb, 0x04, 0x4e, 0x25, 0x23, 0x13, 0xf6, 0x31, 0x67, 0x70, 0xc3, 0xa9, 0x74, 0x04, 0x00, 0xad, 0xd9, 0x8f, 0x91, 0xa2, }; static const unsigned char ecdh_brainpoolp224r1_3731_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3731_sharedsecret[] = { 0xa6, 0x62, 0xaf, 0x2c, 0x94, 0x15, 0xd9, 0x90, 0x4d, 0x6d, 0xf8, 0xd4, 0xf3, 0xb2, 0xc9, 0x85, 0x41, 0xca, 0x41, 0x99, 0xae, 0xdf, 0x6f, 0x0e, 0x88, 0x1f, 0x71, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3731 = { .name = "ecdh_brainpoolp224r1_3731", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3731_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3731_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3731_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1317 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3732 for ECDH, tcId is 1318 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3732_peerpubkey[] = { 0x4a, 0x3c, 0xf5, 0xae, 0x89, 0x1b, 0xd9, 0xa8, 0x84, 0x65, 0x35, 0xb3, 0xc4, 0x69, 0x9f, 0x96, 0xd6, 0x39, 0x3c, 0xfd, 0x1b, 0x6b, 0xec, 0x22, 0x11, 0x13, 0x1e, 0x75, 0x09, 0x3b, 0x7b, 0xc2, 0x92, 0x3e, 0x9a, 0x4f, 0xc1, 0x02, 0x73, 0x13, 0x3b, 0x8f, 0xd3, 0xc8, 0x13, 0x8e, 0x9b, 0xac, 0xee, 0x55, 0x3b, 0xee, 0x92, 0xaf, 0xac, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_3732_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3732_sharedsecret[] = { 0x24, 0xa8, 0x86, 0x77, 0x31, 0x97, 0xa7, 0xb7, 0x02, 0xc1, 0x5b, 0xbe, 0x02, 0x7c, 0xc7, 0xa5, 0xc3, 0x98, 0xab, 0x26, 0xdf, 0x36, 0x6a, 0x03, 0x33, 0xe7, 0xb0, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3732 = { .name = "ecdh_brainpoolp224r1_3732", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3732_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3732_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3732_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1318 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3733 for ECDH, tcId is 1319 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3733_peerpubkey[] = { 0x0e, 0x10, 0xa8, 0x01, 0x46, 0x99, 0x8b, 0x4f, 0xb0, 0x96, 0xc3, 0xb0, 0x45, 0x16, 0xbf, 0x39, 0x5f, 0xe1, 0x30, 0x35, 0x17, 0x0f, 0x04, 0x95, 0xfa, 0x1c, 0x1b, 0xcb, 0x37, 0x42, 0xd4, 0x63, 0xd5, 0xd2, 0xdd, 0xc0, 0xb4, 0x43, 0x8f, 0xdd, 0xd1, 0x5b, 0x9f, 0x0c, 0x81, 0xf6, 0xa9, 0x83, 0x97, 0x62, 0x9f, 0x91, 0x88, 0x3f, 0x34, 0x12, }; static const unsigned char ecdh_brainpoolp224r1_3733_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3733_sharedsecret[] = { 0x0b, 0x69, 0x9b, 0xc7, 0x9a, 0x35, 0xee, 0xe7, 0x92, 0x52, 0xe9, 0x7d, 0x25, 0x2f, 0x60, 0x3c, 0x6c, 0x01, 0xc8, 0x15, 0x91, 0xef, 0xfc, 0x6d, 0xe6, 0x59, 0x14, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3733 = { .name = "ecdh_brainpoolp224r1_3733", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3733_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3733_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3733_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1319 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3734 for ECDH, tcId is 1320 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3734_peerpubkey[] = { 0xce, 0xa7, 0xfc, 0x14, 0x6d, 0x25, 0x7e, 0xc4, 0xf2, 0xc8, 0xda, 0x0c, 0x7a, 0x98, 0xf6, 0x20, 0xc2, 0xaf, 0x3f, 0x77, 0x36, 0xa7, 0xee, 0x6e, 0x34, 0xef, 0x28, 0x53, 0x32, 0x2e, 0x6d, 0x4e, 0xdb, 0x0d, 0x52, 0xcc, 0xdc, 0x16, 0x94, 0x8d, 0xa4, 0xf6, 0xac, 0x40, 0x8f, 0x6e, 0xf0, 0x17, 0x47, 0x56, 0x03, 0x89, 0x75, 0xca, 0x6a, 0x40, }; static const unsigned char ecdh_brainpoolp224r1_3734_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3734_sharedsecret[] = { 0x5d, 0x2a, 0x2a, 0x0f, 0x71, 0x5b, 0x29, 0x7a, 0x71, 0x36, 0xec, 0xf3, 0x1b, 0xd6, 0x97, 0xe5, 0x54, 0xc3, 0x22, 0x59, 0x9a, 0x11, 0x1b, 0xc3, 0xbf, 0xbe, 0xec, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3734 = { .name = "ecdh_brainpoolp224r1_3734", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3734_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3734_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3734_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1320 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3735 for ECDH, tcId is 1321 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3735_peerpubkey[] = { 0xab, 0xcf, 0x05, 0x70, 0x42, 0xe5, 0xef, 0x97, 0xbf, 0xc7, 0xcc, 0xce, 0x9d, 0x52, 0xda, 0xfb, 0xb6, 0xda, 0x5e, 0x86, 0xb4, 0x60, 0xde, 0x1c, 0x98, 0xaf, 0x70, 0x5c, 0x42, 0x21, 0x58, 0xd9, 0xaa, 0xa3, 0xa6, 0x74, 0x1a, 0xe1, 0x0a, 0x17, 0x48, 0xa2, 0x8a, 0xdd, 0xb4, 0xae, 0xc0, 0xd3, 0xe0, 0x7e, 0xb3, 0x1c, 0x2a, 0x50, 0x05, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_3735_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3735_sharedsecret[] = { 0xad, 0xc1, 0xfa, 0x19, 0xf6, 0xf1, 0xb7, 0x0a, 0x01, 0x03, 0x24, 0x20, 0x37, 0x93, 0xae, 0x95, 0xf2, 0xe7, 0xd8, 0xcb, 0x61, 0xdc, 0xff, 0x4d, 0x3c, 0xc4, 0x2c, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3735 = { .name = "ecdh_brainpoolp224r1_3735", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3735_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3735_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3735_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1321 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3736 for ECDH, tcId is 1322 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3736_peerpubkey[] = { 0xbe, 0x0e, 0x13, 0x0a, 0x3b, 0x48, 0x3e, 0x78, 0x73, 0x59, 0x9e, 0x8c, 0x5f, 0xfe, 0x9a, 0xee, 0xb7, 0xd1, 0x55, 0x6a, 0x12, 0x59, 0x32, 0x45, 0x76, 0x66, 0xbf, 0x8d, 0x71, 0x58, 0x8f, 0x8d, 0xa7, 0x78, 0xad, 0x87, 0x42, 0x55, 0xf5, 0xfb, 0x20, 0x76, 0x5d, 0x8b, 0x19, 0x38, 0xfd, 0x96, 0x5f, 0x9a, 0x56, 0x81, 0x67, 0xd7, 0x2c, 0x93, }; static const unsigned char ecdh_brainpoolp224r1_3736_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3736_sharedsecret[] = { 0x6b, 0x30, 0x28, 0x2b, 0x49, 0x5a, 0xf0, 0x09, 0x0b, 0x5f, 0x10, 0x35, 0xbf, 0x73, 0x1b, 0xd6, 0xd1, 0x31, 0x1d, 0x5a, 0xe7, 0x39, 0xfa, 0x5b, 0x43, 0x26, 0xde, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3736 = { .name = "ecdh_brainpoolp224r1_3736", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3736_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3736_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3736_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1322 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3737 for ECDH, tcId is 1323 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3737_peerpubkey[] = { 0x86, 0x3b, 0xc1, 0x6d, 0xbc, 0x20, 0xb4, 0xa6, 0xdc, 0x58, 0xe1, 0x81, 0x5f, 0xc6, 0xd1, 0xd1, 0x4f, 0xa7, 0xdf, 0x6d, 0x7a, 0x1f, 0x59, 0x12, 0x40, 0x2e, 0x44, 0x94, 0x75, 0x4b, 0xa7, 0xb0, 0x20, 0x08, 0x02, 0xe2, 0x6b, 0x0d, 0x4d, 0x26, 0x5b, 0x06, 0x37, 0xfa, 0x8a, 0x51, 0x56, 0xaa, 0x33, 0x46, 0xc0, 0x0e, 0x2c, 0x98, 0x63, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3737_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3737_sharedsecret[] = { 0x6c, 0x3b, 0x3b, 0xa9, 0x8b, 0x50, 0xeb, 0x19, 0x18, 0x39, 0xa8, 0x26, 0x8f, 0x02, 0x6c, 0xd3, 0x4d, 0xdf, 0x3d, 0xed, 0x12, 0xa8, 0x99, 0x90, 0x52, 0x47, 0xb4, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3737 = { .name = "ecdh_brainpoolp224r1_3737", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3737_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3737_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3737_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1323 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3738 for ECDH, tcId is 1324 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3738_peerpubkey[] = { 0xcc, 0x82, 0xa9, 0x94, 0x47, 0xf4, 0x92, 0xa2, 0xef, 0x0e, 0xc4, 0x88, 0xcc, 0x67, 0x0b, 0x87, 0x02, 0x27, 0xb5, 0x5e, 0xad, 0xd4, 0x10, 0x8b, 0xc8, 0xfb, 0xaa, 0x54, 0xc4, 0x54, 0x32, 0x51, 0x95, 0x2f, 0x71, 0x18, 0x1f, 0x9e, 0x0e, 0xca, 0x09, 0x80, 0x9a, 0x34, 0xf0, 0x4d, 0x11, 0x7e, 0xb5, 0xd4, 0x0b, 0xd8, 0x9b, 0x44, 0xc5, 0x57, }; static const unsigned char ecdh_brainpoolp224r1_3738_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3738_sharedsecret[] = { 0x8e, 0x62, 0xc1, 0xa0, 0xbc, 0x6c, 0x23, 0x30, 0xb2, 0x54, 0xf4, 0x9d, 0x36, 0xa4, 0xb7, 0xa5, 0x55, 0x78, 0xb8, 0x2a, 0x11, 0x97, 0x8a, 0x35, 0x7c, 0x98, 0x30, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3738 = { .name = "ecdh_brainpoolp224r1_3738", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3738_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3738_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3738_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1324 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3739 for ECDH, tcId is 1325 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3739_peerpubkey[] = { 0x2d, 0xe0, 0x76, 0x58, 0x69, 0x8e, 0x3d, 0x05, 0x5f, 0x44, 0xb2, 0x9f, 0x00, 0xbf, 0x63, 0xaf, 0x71, 0xb9, 0x4c, 0x14, 0x29, 0x39, 0xa9, 0x41, 0xa6, 0xa0, 0x91, 0x26, 0x4a, 0x99, 0xa2, 0xd0, 0x62, 0x35, 0x9b, 0x84, 0x62, 0x66, 0xca, 0x7f, 0xb9, 0x0b, 0x44, 0x9b, 0xcf, 0xb2, 0x64, 0x44, 0x60, 0x1b, 0x3b, 0xd0, 0xaa, 0xb8, 0x13, 0x98, }; static const unsigned char ecdh_brainpoolp224r1_3739_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3739_sharedsecret[] = { 0x4e, 0x48, 0x9f, 0x49, 0xe2, 0xc2, 0xe6, 0xa4, 0x77, 0xd9, 0xb3, 0xcb, 0x72, 0x4f, 0x03, 0x35, 0x64, 0xac, 0xc7, 0x8e, 0xbf, 0xcc, 0xc2, 0x1b, 0xac, 0xd4, 0x9b, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3739 = { .name = "ecdh_brainpoolp224r1_3739", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3739_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3739_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3739_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1325 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3740 for ECDH, tcId is 1326 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3740_peerpubkey[] = { 0xd0, 0x31, 0xc3, 0x03, 0xd0, 0xb7, 0x2c, 0xce, 0x50, 0xf2, 0x66, 0xb3, 0x04, 0xde, 0x88, 0x72, 0x0f, 0x16, 0x82, 0x62, 0xff, 0x40, 0x25, 0x5e, 0x8e, 0x05, 0x56, 0xf9, 0x5e, 0x58, 0xca, 0x62, 0xcb, 0xa6, 0x5c, 0xc2, 0xfe, 0xb7, 0x85, 0x6c, 0x1a, 0xa8, 0xb4, 0x3b, 0x64, 0x01, 0x2a, 0x71, 0xb1, 0x5d, 0xce, 0xf4, 0x39, 0x08, 0xf4, 0x17, }; static const unsigned char ecdh_brainpoolp224r1_3740_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3740_sharedsecret[] = { 0x7e, 0xcd, 0x7f, 0xf3, 0x66, 0x09, 0xde, 0x1b, 0xf7, 0xaa, 0xda, 0x4b, 0x45, 0xe8, 0x5e, 0x75, 0x92, 0x48, 0x16, 0x74, 0xfa, 0xb5, 0xf2, 0xad, 0x1b, 0xb5, 0x04, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3740 = { .name = "ecdh_brainpoolp224r1_3740", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3740_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3740_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3740_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1326 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3741 for ECDH, tcId is 1327 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3741_peerpubkey[] = { 0xb3, 0x62, 0xcd, 0x22, 0xbb, 0xf8, 0x0b, 0x33, 0x84, 0xa2, 0x20, 0x8c, 0x9d, 0x72, 0xfc, 0xc0, 0x92, 0xb2, 0xb2, 0x3a, 0x70, 0x8e, 0x8d, 0x4a, 0x6f, 0xa5, 0x5a, 0x2a, 0x9f, 0x17, 0x83, 0xb2, 0xed, 0x2b, 0x3f, 0x54, 0x6e, 0x29, 0xfe, 0xdb, 0x2f, 0x23, 0x0b, 0x85, 0xdf, 0xf2, 0x17, 0x1d, 0xfa, 0xbc, 0x62, 0xb9, 0xfc, 0x1e, 0x21, 0x13, }; static const unsigned char ecdh_brainpoolp224r1_3741_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3741_sharedsecret[] = { 0x27, 0x7a, 0xc6, 0xf2, 0x11, 0x0e, 0x46, 0x05, 0xca, 0x28, 0xfa, 0xd6, 0x0e, 0x95, 0x9d, 0xa9, 0x1d, 0x66, 0xa2, 0xbf, 0x3d, 0x6f, 0xf5, 0xf3, 0x96, 0x36, 0x9f, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3741 = { .name = "ecdh_brainpoolp224r1_3741", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3741_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3741_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3741_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1327 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3742 for ECDH, tcId is 1328 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3742_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x4e, 0xbc, 0x90, 0x78, 0xad, 0x8a, 0xd0, 0x75, 0x62, 0xcd, 0x41, 0xb3, 0x74, 0x82, 0x71, 0x92, 0xaa, 0x88, 0xce, 0x3c, 0x71, 0x8a, 0x01, 0x44, 0x05, 0xee, 0xd4, 0x75, }; static const unsigned char ecdh_brainpoolp224r1_3742_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3742_sharedsecret[] = { 0xc6, 0xb5, 0x1b, 0x2b, 0x01, 0xff, 0x43, 0xf8, 0xcc, 0x36, 0x81, 0x3f, 0x3d, 0xfc, 0x2d, 0x11, 0x90, 0xc3, 0x56, 0x3e, 0xa7, 0x30, 0x5d, 0x82, 0xa4, 0x60, 0x37, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3742 = { .name = "ecdh_brainpoolp224r1_3742", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3742_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3742_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3742_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 1328 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3743 for ECDH, tcId is 1329 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3743_peerpubkey[] = { 0x3c, 0xdf, 0x09, 0x1f, 0x07, 0x84, 0x00, 0xc7, 0xb3, 0x29, 0x0c, 0x77, 0x4c, 0x2c, 0x98, 0xf6, 0xca, 0xc4, 0x9d, 0x69, 0x93, 0x4e, 0x4c, 0x55, 0x35, 0x8d, 0x0c, 0x4d, 0x9c, 0xac, 0xd4, 0x83, 0x3f, 0x37, 0x9c, 0xa5, 0xe5, 0x87, 0x62, 0x9c, 0xf6, 0x93, 0x6e, 0x13, 0x0b, 0x91, 0xc7, 0xf6, 0x14, 0x34, 0x9f, 0xd0, 0x28, 0x2c, 0x2e, 0x65, }; static const unsigned char ecdh_brainpoolp224r1_3743_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3743_sharedsecret[] = { 0x48, 0xb0, 0xaa, 0x9b, 0x86, 0x02, 0x99, 0x3f, 0x86, 0x2e, 0xd9, 0x47, 0xb8, 0x45, 0xe3, 0xeb, 0x78, 0x20, 0x9e, 0x9c, 0x39, 0x56, 0x8f, 0x78, 0xf4, 0xa8, 0xc9, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3743 = { .name = "ecdh_brainpoolp224r1_3743", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3743_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3743_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3743_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 1329 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3744 for ECDH, tcId is 1330 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3744_peerpubkey[] = { 0xc4, 0xee, 0xe1, 0xe5, 0x29, 0xdd, 0xdd, 0xbb, 0x69, 0xb8, 0xa2, 0x61, 0x54, 0xb3, 0x46, 0x7a, 0xe3, 0x77, 0xfe, 0xa8, 0xb5, 0x2b, 0x1e, 0x73, 0xee, 0xda, 0x35, 0xc0, 0xb7, 0x3c, 0x16, 0x0d, 0xb9, 0x46, 0xe3, 0x1b, 0xce, 0xeb, 0x0a, 0x6b, 0x8c, 0x22, 0x64, 0x91, 0xcc, 0x77, 0x49, 0xb3, 0xe9, 0x68, 0x23, 0x7e, 0xcf, 0x92, 0xe7, 0x1f, }; static const unsigned char ecdh_brainpoolp224r1_3744_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3744_sharedsecret[] = { 0xbc, 0xbe, 0x1d, 0x55, 0xfc, 0x19, 0xad, 0x7b, 0x23, 0x7d, 0xac, 0x1e, 0x2a, 0x8d, 0xc5, 0x7a, 0x7c, 0x10, 0x91, 0x94, 0xc7, 0x70, 0xdc, 0x93, 0xff, 0xda, 0x07, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3744 = { .name = "ecdh_brainpoolp224r1_3744", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3744_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3744_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3744_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1, tcId is 1330 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3745 for ECDH, tcId is 1331 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3745_peerpubkey[] = { 0xb7, 0xc4, 0xfc, 0xa7, 0x6a, 0xfd, 0x01, 0x35, 0xf7, 0x9c, 0xba, 0x7d, 0xc4, 0x25, 0x7f, 0xef, 0xaa, 0x14, 0x29, 0xbb, 0x6b, 0x16, 0x27, 0x10, 0x96, 0x2c, 0xb3, 0x41, 0xca, 0x9e, 0x69, 0x61, 0xe6, 0x63, 0x70, 0xdd, 0x62, 0xb7, 0x7e, 0x30, 0x18, 0xc6, 0x7f, 0x7e, 0x52, 0x4d, 0xb9, 0x06, 0xee, 0x18, 0xca, 0x1b, 0xeb, 0xe9, 0xa6, 0xc0, }; static const unsigned char ecdh_brainpoolp224r1_3745_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3745_sharedsecret[] = { 0xac, 0xe3, 0x55, 0xe3, 0x0c, 0x6e, 0x9d, 0xb3, 0xb3, 0xc3, 0x45, 0x55, 0x45, 0x39, 0xf6, 0xb0, 0xd4, 0xaa, 0x43, 0x7e, 0xac, 0x1d, 0x7d, 0xa3, 0x81, 0xc5, 0x8e, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3745 = { .name = "ecdh_brainpoolp224r1_3745", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3745_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3745_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3745_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1331 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3746 for ECDH, tcId is 1332 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3746_peerpubkey[] = { 0xa2, 0xa7, 0x04, 0x83, 0x9c, 0xcd, 0xe8, 0x74, 0x49, 0xbb, 0x8e, 0x87, 0xc6, 0x30, 0xdc, 0x2e, 0xd5, 0x20, 0xf9, 0xad, 0x70, 0x67, 0xd6, 0xea, 0x46, 0x0a, 0x57, 0x54, 0xb5, 0xa9, 0xf2, 0x9c, 0x93, 0xf9, 0x2a, 0x43, 0xe5, 0x3a, 0x18, 0x15, 0x9c, 0x3b, 0x99, 0x6a, 0x5b, 0x58, 0x9e, 0xa1, 0xfa, 0x64, 0xff, 0x6f, 0xdb, 0x75, 0x8f, 0xc1, }; static const unsigned char ecdh_brainpoolp224r1_3746_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3746_sharedsecret[] = { 0xbf, 0x81, 0x37, 0x88, 0x3e, 0xb6, 0x7e, 0x6c, 0x77, 0x05, 0x0b, 0x93, 0x29, 0xaa, 0x1d, 0x39, 0x96, 0x16, 0x77, 0x75, 0xbf, 0xee, 0x32, 0x09, 0xfb, 0x72, 0x8f, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3746 = { .name = "ecdh_brainpoolp224r1_3746", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3746_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3746_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3746_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1332 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3747 for ECDH, tcId is 1333 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3747_peerpubkey[] = { 0x4e, 0x1c, 0x8b, 0x12, 0x7d, 0x0b, 0x92, 0xf8, 0xf1, 0x1e, 0x69, 0xb2, 0x72, 0x1a, 0x8c, 0x0f, 0x1d, 0x32, 0xfc, 0x2a, 0xb8, 0x8a, 0xaa, 0x36, 0xa5, 0xa4, 0x95, 0xf8, 0x56, 0x3f, 0x19, 0x06, 0x77, 0x27, 0x5d, 0x6c, 0x3b, 0x0a, 0xc3, 0x2f, 0xc8, 0x78, 0x71, 0xd2, 0x35, 0xa5, 0x73, 0xdf, 0xf7, 0xf8, 0x1f, 0x0c, 0xa0, 0x6b, 0x52, 0x3d, }; static const unsigned char ecdh_brainpoolp224r1_3747_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3747_sharedsecret[] = { 0xbb, 0x2b, 0x15, 0xb2, 0x93, 0xe6, 0xea, 0x65, 0x88, 0x7e, 0x8d, 0xa8, 0x6f, 0x1e, 0x05, 0xa5, 0x4a, 0x61, 0xac, 0x6e, 0xfd, 0x82, 0x8a, 0x4b, 0xb8, 0x66, 0xb8, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3747 = { .name = "ecdh_brainpoolp224r1_3747", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3747_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3747_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3747_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1333 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3748 for ECDH, tcId is 1334 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3748_peerpubkey[] = { 0x12, 0x1a, 0x60, 0xb2, 0xb6, 0x1d, 0x6d, 0x1d, 0xcf, 0xc2, 0xbc, 0x90, 0x08, 0xa3, 0x4e, 0x81, 0xf8, 0x9e, 0xe4, 0xa8, 0xa1, 0x74, 0x1e, 0x51, 0xca, 0x18, 0x0c, 0xb2, 0x9e, 0xe4, 0x44, 0xf1, 0x0f, 0xe6, 0xa4, 0xe3, 0xe1, 0x3f, 0x5f, 0x1d, 0x09, 0xe6, 0x48, 0x51, 0x03, 0x55, 0xc5, 0x62, 0x84, 0x4c, 0xbf, 0x41, 0xec, 0x01, 0xc9, 0x4f, }; static const unsigned char ecdh_brainpoolp224r1_3748_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3748_sharedsecret[] = { 0xb7, 0xf0, 0xeb, 0x18, 0x18, 0x54, 0x56, 0x38, 0x2c, 0xf1, 0xc1, 0xe0, 0xea, 0x06, 0xac, 0x25, 0x79, 0xde, 0xbc, 0xdb, 0x71, 0x12, 0x76, 0x1a, 0x95, 0x88, 0x97, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3748 = { .name = "ecdh_brainpoolp224r1_3748", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3748_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3748_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3748_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1334 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3749 for ECDH, tcId is 1335 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3749_peerpubkey[] = { 0x81, 0x7d, 0xe4, 0x23, 0x39, 0x75, 0xa0, 0x02, 0xfb, 0x32, 0x70, 0xfd, 0xac, 0x02, 0x15, 0x79, 0x77, 0xa7, 0xef, 0xc2, 0xfb, 0x4c, 0xbd, 0xd7, 0x5f, 0x41, 0xed, 0x2c, 0x74, 0x54, 0xc1, 0x05, 0xb3, 0x0d, 0x17, 0x80, 0xdb, 0x0a, 0xd9, 0xe9, 0x4e, 0xf4, 0xe3, 0x78, 0x04, 0xe3, 0xea, 0x22, 0x4c, 0xee, 0x93, 0x99, 0x6d, 0x1b, 0x8a, 0xda, }; static const unsigned char ecdh_brainpoolp224r1_3749_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3749_sharedsecret[] = { 0x14, 0xe9, 0x02, 0x23, 0xf8, 0xd4, 0xf8, 0xaf, 0x98, 0x26, 0x59, 0xf7, 0x65, 0xfd, 0x43, 0xf2, 0x3b, 0x5b, 0x6b, 0x8f, 0x9f, 0x7b, 0xe9, 0xd3, 0x24, 0x7c, 0x3a, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3749 = { .name = "ecdh_brainpoolp224r1_3749", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3749_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3749_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3749_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1335 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3750 for ECDH, tcId is 1336 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3750_peerpubkey[] = { 0xc4, 0x23, 0x01, 0x16, 0xde, 0x58, 0x4c, 0x94, 0x06, 0xfb, 0x84, 0x73, 0x30, 0xe7, 0x2b, 0x0a, 0xae, 0xe2, 0xf7, 0x9a, 0xc7, 0xda, 0x56, 0xd4, 0xf8, 0xd5, 0xdc, 0x05, 0x4a, 0x16, 0xd4, 0x63, 0x4a, 0xf4, 0xbe, 0x99, 0xec, 0x85, 0xec, 0x74, 0xbc, 0xc7, 0x09, 0xfe, 0x92, 0x83, 0x55, 0x20, 0x1d, 0x38, 0x6b, 0x54, 0xa0, 0xcf, 0xe2, 0x29, }; static const unsigned char ecdh_brainpoolp224r1_3750_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3750_sharedsecret[] = { 0x96, 0x53, 0x0f, 0x95, 0xab, 0x24, 0x54, 0xc4, 0x13, 0xc4, 0x97, 0x34, 0x47, 0x56, 0xe7, 0x90, 0xfa, 0xc6, 0xc9, 0x96, 0xe4, 0xe6, 0x9a, 0xb0, 0x17, 0xc9, 0x68, 0x43, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3750 = { .name = "ecdh_brainpoolp224r1_3750", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3750_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3750_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3750_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1336 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3751 for ECDH, tcId is 1337 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3751_peerpubkey[] = { 0x35, 0x04, 0xc3, 0x1b, 0x82, 0x58, 0x53, 0xd2, 0x8f, 0x71, 0x26, 0xfe, 0x34, 0x11, 0x1a, 0x6e, 0x74, 0xee, 0x9e, 0x18, 0x10, 0x58, 0xa0, 0xeb, 0xe3, 0x44, 0xbd, 0x35, 0x97, 0x2d, 0x37, 0xd3, 0xd0, 0x68, 0x4e, 0x9e, 0x1f, 0x7e, 0x45, 0x0d, 0xea, 0xcb, 0x43, 0x03, 0xc7, 0x2c, 0x56, 0x83, 0x01, 0x96, 0xf3, 0xb3, 0x71, 0xc8, 0x4d, 0x3a, }; static const unsigned char ecdh_brainpoolp224r1_3751_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3751_sharedsecret[] = { 0x61, 0xd1, 0x01, 0x39, 0xe4, 0x21, 0x29, 0x92, 0x35, 0x28, 0x2b, 0x47, 0xb0, 0x0e, 0xf7, 0x7b, 0xc0, 0x1d, 0x19, 0xe7, 0x9e, 0x5c, 0x33, 0x48, 0xc9, 0x05, 0x6d, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3751 = { .name = "ecdh_brainpoolp224r1_3751", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3751_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3751_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3751_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1337 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3752 for ECDH, tcId is 1338 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3752_peerpubkey[] = { 0xca, 0xc2, 0xef, 0x7e, 0xfb, 0x9a, 0x1f, 0x42, 0x15, 0x8b, 0xa6, 0xbc, 0xf4, 0xd2, 0xde, 0xe1, 0x18, 0x20, 0xae, 0xf5, 0xfd, 0x32, 0x05, 0x41, 0x76, 0xf1, 0x33, 0xc4, 0xa1, 0x3d, 0x59, 0xe6, 0xe6, 0x8c, 0x2e, 0x33, 0xb4, 0x0b, 0x19, 0xf8, 0x3e, 0x21, 0x34, 0x75, 0xf7, 0x0e, 0xe4, 0x36, 0x6a, 0x5a, 0xab, 0xcc, 0xfe, 0x06, 0x9a, 0x85, }; static const unsigned char ecdh_brainpoolp224r1_3752_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3752_sharedsecret[] = { 0x32, 0x94, 0xcf, 0x02, 0x18, 0x92, 0x51, 0xf9, 0xe2, 0x99, 0x9e, 0xae, 0x32, 0x59, 0xed, 0x55, 0x9b, 0x94, 0x80, 0x14, 0xad, 0x6f, 0x86, 0x36, 0x7a, 0x80, 0x75, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3752 = { .name = "ecdh_brainpoolp224r1_3752", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3752_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3752_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3752_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1338 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3753 for ECDH, tcId is 1339 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3753_peerpubkey[] = { 0x8c, 0x0b, 0xc2, 0x75, 0xd9, 0x27, 0xd0, 0xb9, 0x00, 0x33, 0xed, 0xac, 0xf7, 0x1d, 0xf4, 0xec, 0x36, 0x1f, 0x2d, 0x5a, 0x8a, 0x16, 0x60, 0x3d, 0xd6, 0x89, 0x63, 0x37, 0x31, 0xff, 0xb9, 0x00, 0xdf, 0xfa, 0x6e, 0x42, 0x4a, 0x3d, 0x71, 0xe3, 0x0d, 0x91, 0xf5, 0x8d, 0x10, 0x8d, 0x14, 0xdd, 0x4b, 0xc8, 0xc5, 0xa3, 0xe1, 0x76, 0x06, 0xdf, }; static const unsigned char ecdh_brainpoolp224r1_3753_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3753_sharedsecret[] = { 0x14, 0x96, 0xb6, 0x80, 0x0e, 0x08, 0x1b, 0x95, 0x83, 0x97, 0xbd, 0xbf, 0x99, 0x02, 0xed, 0xe5, 0x85, 0xdf, 0x30, 0x66, 0xd3, 0xfe, 0xcc, 0xb4, 0xf4, 0xee, 0x5f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3753 = { .name = "ecdh_brainpoolp224r1_3753", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3753_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3753_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3753_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1339 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3754 for ECDH, tcId is 1340 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3754_peerpubkey[] = { 0x44, 0x09, 0x47, 0x5c, 0xef, 0xb7, 0xd3, 0x15, 0x79, 0x18, 0x4f, 0xfb, 0xf7, 0xca, 0x91, 0x3d, 0x7a, 0x73, 0x1c, 0xb9, 0xd8, 0x8e, 0xb3, 0xc3, 0x58, 0xca, 0x87, 0x22, 0x21, 0xd1, 0x1a, 0xdd, 0xe5, 0xd0, 0x4d, 0xab, 0x31, 0xba, 0x7b, 0x37, 0x5d, 0x2d, 0x50, 0x2d, 0xbf, 0x93, 0x61, 0x90, 0xa0, 0x46, 0x8a, 0xb3, 0xb8, 0x59, 0x8f, 0x8a, }; static const unsigned char ecdh_brainpoolp224r1_3754_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3754_sharedsecret[] = { 0x90, 0xeb, 0xeb, 0x1e, 0xe0, 0x34, 0x74, 0xc8, 0xde, 0x67, 0x2d, 0x80, 0x08, 0x8d, 0xe5, 0xc9, 0x02, 0xa1, 0x30, 0x50, 0x38, 0xa7, 0x97, 0x6d, 0x63, 0xf1, 0xbc, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3754 = { .name = "ecdh_brainpoolp224r1_3754", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3754_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3754_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3754_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1340 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3755 for ECDH, tcId is 1341 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3755_peerpubkey[] = { 0x05, 0xd6, 0x20, 0x55, 0xef, 0x1a, 0x6e, 0x08, 0xd0, 0x9c, 0xf0, 0xcc, 0x29, 0x54, 0x56, 0x0f, 0xe0, 0x8f, 0x04, 0x7c, 0x41, 0xb5, 0xb9, 0xc8, 0xd6, 0xea, 0x7b, 0xca, 0x68, 0x6a, 0x16, 0x3a, 0x53, 0x9d, 0x2f, 0x64, 0xdb, 0x5c, 0x91, 0xf1, 0xf5, 0x74, 0x2e, 0x2f, 0xd4, 0xc2, 0x85, 0xb0, 0x68, 0xfb, 0xa1, 0x5d, 0xd5, 0xe6, 0xbb, 0xb5, }; static const unsigned char ecdh_brainpoolp224r1_3755_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3755_sharedsecret[] = { 0x9c, 0x6c, 0x7a, 0x97, 0x6d, 0xa5, 0x0b, 0xe1, 0xe8, 0xb4, 0x12, 0x1b, 0x7c, 0xee, 0x06, 0x8e, 0x18, 0x9f, 0x43, 0xc5, 0x8c, 0x21, 0x65, 0x9a, 0xaa, 0x9f, 0xc8, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3755 = { .name = "ecdh_brainpoolp224r1_3755", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3755_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3755_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3755_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1341 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3756 for ECDH, tcId is 1342 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3756_peerpubkey[] = { 0x61, 0x35, 0xe5, 0x29, 0x2b, 0x9e, 0xf7, 0x6b, 0x2d, 0x28, 0x10, 0xb3, 0x11, 0x07, 0x91, 0xec, 0xaa, 0x34, 0xc3, 0x3d, 0xc6, 0x65, 0xa2, 0x54, 0x49, 0x95, 0x73, 0x30, 0xa6, 0x5b, 0x87, 0xed, 0x28, 0xf4, 0xbd, 0x12, 0x2c, 0x99, 0x42, 0x8d, 0xf5, 0xf7, 0xb2, 0xdf, 0x2d, 0x6e, 0x7d, 0xb9, 0x66, 0x93, 0x9b, 0xd7, 0x58, 0xd5, 0x09, 0x45, }; static const unsigned char ecdh_brainpoolp224r1_3756_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3756_sharedsecret[] = { 0xd7, 0x8e, 0xe9, 0xba, 0x10, 0x62, 0x7a, 0x46, 0x73, 0xdf, 0x93, 0xb4, 0x4a, 0xf9, 0x22, 0x6c, 0x09, 0xb2, 0xfb, 0x6d, 0xe0, 0xfd, 0x82, 0x41, 0x2b, 0xbe, 0x7e, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3756 = { .name = "ecdh_brainpoolp224r1_3756", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3756_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3756_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3756_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1342 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3757 for ECDH, tcId is 1343 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3757_peerpubkey[] = { 0x06, 0x3d, 0x4a, 0x35, 0x78, 0xcf, 0xb5, 0x79, 0x08, 0x72, 0xa1, 0x55, 0x12, 0x5d, 0xe0, 0xcc, 0xab, 0x62, 0xe5, 0x13, 0x69, 0xe4, 0x7f, 0xe4, 0x08, 0x85, 0x5d, 0x4a, 0x66, 0xe0, 0xec, 0xf1, 0xdd, 0x41, 0xa8, 0x42, 0x67, 0x14, 0xe6, 0xe4, 0xfa, 0x08, 0x49, 0x77, 0xa3, 0xeb, 0x50, 0xf8, 0x00, 0x96, 0xdd, 0x3b, 0x99, 0x2f, 0xb0, 0x5f, }; static const unsigned char ecdh_brainpoolp224r1_3757_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3757_sharedsecret[] = { 0x00, 0xe2, 0x0e, 0xde, 0x1b, 0xb6, 0x4f, 0xe9, 0x46, 0x61, 0x9b, 0xf6, 0x1d, 0x36, 0xa3, 0x1b, 0x18, 0x81, 0x0a, 0xce, 0x2b, 0x2b, 0xe5, 0xca, 0x34, 0xb0, 0xd0, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3757 = { .name = "ecdh_brainpoolp224r1_3757", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3757_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3757_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3757_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1343 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3758 for ECDH, tcId is 1344 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3758_peerpubkey[] = { 0x1f, 0x71, 0x1a, 0x5c, 0xab, 0x72, 0xaf, 0x59, 0x7d, 0x0f, 0xa0, 0x79, 0xd3, 0xad, 0xcc, 0x9d, 0xd7, 0x33, 0xbf, 0xb2, 0x7c, 0xbf, 0xb9, 0x94, 0x53, 0x3c, 0x28, 0x8c, 0x75, 0x12, 0x83, 0xb7, 0xd9, 0xac, 0x35, 0x79, 0x04, 0x03, 0x0b, 0xbc, 0xd0, 0xa2, 0x74, 0xc3, 0xac, 0xa7, 0xb8, 0x3e, 0x74, 0x9b, 0x82, 0xbf, 0xb3, 0x30, 0xe1, 0x6d, }; static const unsigned char ecdh_brainpoolp224r1_3758_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3758_sharedsecret[] = { 0x20, 0x6f, 0xfd, 0xb5, 0x9a, 0x60, 0x26, 0xb1, 0xea, 0x27, 0xa0, 0xb0, 0x2d, 0x15, 0x2c, 0x5d, 0xcf, 0xaa, 0xf5, 0x1e, 0x14, 0x94, 0x7c, 0x77, 0xdc, 0x3c, 0x6d, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3758 = { .name = "ecdh_brainpoolp224r1_3758", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3758_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3758_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3758_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1344 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3759 for ECDH, tcId is 1345 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3759_peerpubkey[] = { 0x3e, 0x4f, 0x47, 0xdd, 0x3e, 0xed, 0x36, 0x0b, 0xfb, 0xfe, 0x6a, 0x6a, 0x52, 0xe4, 0x22, 0x1e, 0x99, 0xe6, 0x3f, 0xb4, 0xf1, 0x14, 0x97, 0xf4, 0x76, 0x4a, 0x34, 0xe0, 0x24, 0x38, 0x85, 0xd3, 0x76, 0x7c, 0xd7, 0x29, 0xb4, 0x81, 0x7d, 0x34, 0xbf, 0xfa, 0x7c, 0x2c, 0xca, 0x09, 0xcd, 0x53, 0xa6, 0x16, 0x80, 0xd2, 0x2a, 0x50, 0x76, 0x80, }; static const unsigned char ecdh_brainpoolp224r1_3759_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3759_sharedsecret[] = { 0xaa, 0x29, 0x8c, 0x47, 0x0c, 0x05, 0x69, 0x86, 0xeb, 0x04, 0x7b, 0x5b, 0x39, 0xe5, 0x67, 0x71, 0xb0, 0xfc, 0x75, 0x6e, 0x44, 0x72, 0x04, 0xb0, 0x2a, 0x07, 0x31, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3759 = { .name = "ecdh_brainpoolp224r1_3759", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3759_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3759_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3759_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1345 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3760 for ECDH, tcId is 1346 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3760_peerpubkey[] = { 0xb5, 0x57, 0x50, 0xb5, 0xf0, 0xe9, 0x84, 0x31, 0xb0, 0x02, 0x19, 0xe2, 0x2b, 0xdf, 0x79, 0xef, 0x76, 0x81, 0x3c, 0x0c, 0xb1, 0x82, 0x52, 0x63, 0x32, 0x27, 0x3e, 0xa0, 0xac, 0xe9, 0x63, 0xaf, 0xac, 0xd2, 0x7e, 0xdc, 0x29, 0x73, 0xe7, 0x92, 0x1b, 0x4a, 0xf6, 0x82, 0x39, 0x26, 0x9d, 0xef, 0x74, 0x75, 0x3f, 0x4a, 0x93, 0x35, 0x29, 0x61, }; static const unsigned char ecdh_brainpoolp224r1_3760_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3760_sharedsecret[] = { 0x3a, 0x58, 0x31, 0x4a, 0x6c, 0xa7, 0x96, 0x5b, 0x05, 0xed, 0x72, 0x5a, 0x9c, 0x5c, 0xb7, 0xc7, 0x2b, 0xc8, 0x48, 0xe8, 0x07, 0x8b, 0xff, 0x1b, 0xfb, 0xfb, 0xe1, 0x66, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3760 = { .name = "ecdh_brainpoolp224r1_3760", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3760_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3760_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3760_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1346 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3761 for ECDH, tcId is 1347 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3761_peerpubkey[] = { 0x3e, 0xd6, 0x7a, 0x4c, 0x6b, 0xe5, 0x09, 0x8b, 0xed, 0x6b, 0x3b, 0xb4, 0x90, 0xd0, 0x3f, 0xbe, 0xa5, 0xf4, 0x56, 0x4f, 0x49, 0xd9, 0x02, 0x4d, 0xd1, 0x59, 0x50, 0x48, 0xaf, 0xae, 0x70, 0x66, 0xbd, 0xc8, 0x91, 0x3d, 0xb7, 0x57, 0x14, 0x4f, 0xa7, 0x94, 0x53, 0x2c, 0xf4, 0x27, 0x09, 0x89, 0x7a, 0xff, 0xfe, 0x68, 0x03, 0x81, 0x69, 0xf2, }; static const unsigned char ecdh_brainpoolp224r1_3761_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3761_sharedsecret[] = { 0x47, 0x87, 0xe3, 0x41, 0x15, 0x89, 0x93, 0x2b, 0x67, 0x24, 0x54, 0xe8, 0xb2, 0xf7, 0x04, 0xe3, 0x40, 0x60, 0xb4, 0xe5, 0x6e, 0xc1, 0xe5, 0x99, 0x3c, 0x42, 0x3a, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3761 = { .name = "ecdh_brainpoolp224r1_3761", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3761_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3761_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3761_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1347 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3762 for ECDH, tcId is 1348 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3762_peerpubkey[] = { 0x76, 0x72, 0x95, 0xcf, 0x24, 0xe6, 0xee, 0xbb, 0x17, 0xa9, 0x34, 0xb9, 0xde, 0xf1, 0xb7, 0x93, 0x7c, 0x77, 0xcf, 0xcc, 0x39, 0xad, 0x4d, 0xdd, 0xfe, 0xa1, 0xc5, 0x1d, 0x5b, 0xd4, 0xb1, 0x70, 0x37, 0xf9, 0xb2, 0x63, 0x0b, 0x9b, 0x62, 0x5c, 0xaa, 0x90, 0x0e, 0x7c, 0xb1, 0xeb, 0x5e, 0x85, 0xa9, 0x1e, 0x67, 0x4e, 0xea, 0xb4, 0xbf, 0xe7, }; static const unsigned char ecdh_brainpoolp224r1_3762_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3762_sharedsecret[] = { 0x01, 0x27, 0xf8, 0x9d, 0x48, 0xb0, 0x5e, 0x5c, 0xc8, 0xbd, 0xae, 0x1b, 0x52, 0x67, 0x68, 0x91, 0x9d, 0xec, 0x79, 0x43, 0xc3, 0x38, 0x4c, 0x82, 0xc1, 0xe7, 0x3c, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3762 = { .name = "ecdh_brainpoolp224r1_3762", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3762_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3762_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3762_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1348 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3763 for ECDH, tcId is 1349 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3763_peerpubkey[] = { 0x86, 0xd3, 0x36, 0x68, 0xc5, 0x92, 0xf0, 0x42, 0xea, 0x58, 0x7c, 0x32, 0x57, 0x48, 0xbd, 0xd1, 0x2e, 0x93, 0x44, 0xb3, 0x48, 0xa8, 0x87, 0xc7, 0xf0, 0xff, 0xb0, 0x07, 0x49, 0x54, 0xaf, 0xab, 0xe6, 0x5b, 0x56, 0x78, 0x42, 0xa5, 0x66, 0xba, 0x0a, 0x74, 0xcd, 0xc2, 0xfb, 0x17, 0x43, 0x94, 0x17, 0xd4, 0xc2, 0x28, 0xf4, 0x4f, 0xf7, 0xea, }; static const unsigned char ecdh_brainpoolp224r1_3763_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3763_sharedsecret[] = { 0x4b, 0x17, 0xd4, 0x4f, 0xb9, 0x51, 0x39, 0xd4, 0xa7, 0x44, 0x45, 0x8c, 0x34, 0x09, 0x75, 0x3c, 0xc6, 0x76, 0x7d, 0x19, 0xc6, 0x70, 0x59, 0x84, 0x97, 0xd8, 0xba, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3763 = { .name = "ecdh_brainpoolp224r1_3763", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3763_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3763_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3763_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1349 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3764 for ECDH, tcId is 1350 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3764_peerpubkey[] = { 0x83, 0x75, 0xd8, 0xcf, 0x64, 0xe4, 0x15, 0x21, 0x74, 0xca, 0x0e, 0xfc, 0x9c, 0xaa, 0x89, 0xa4, 0x31, 0x73, 0x93, 0x57, 0xca, 0x62, 0xc9, 0xd2, 0x2b, 0x19, 0xe0, 0x96, 0x47, 0x5e, 0xbb, 0x6e, 0x6a, 0xea, 0x55, 0x68, 0x58, 0x9d, 0x86, 0x78, 0x26, 0xa6, 0x57, 0xb9, 0x1f, 0x75, 0x03, 0x0b, 0xc8, 0x5f, 0xcf, 0xdd, 0x6d, 0xdc, 0xac, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_3764_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3764_sharedsecret[] = { 0x4e, 0xa8, 0xba, 0x24, 0xa6, 0xb7, 0x72, 0xdc, 0xc6, 0xb3, 0x9a, 0xeb, 0x14, 0x06, 0x34, 0xdf, 0x9c, 0x91, 0x08, 0xdc, 0x46, 0x4b, 0x07, 0x1a, 0x95, 0x06, 0x0e, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3764 = { .name = "ecdh_brainpoolp224r1_3764", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3764_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3764_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3764_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1350 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3765 for ECDH, tcId is 1351 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3765_peerpubkey[] = { 0x7f, 0x19, 0xd5, 0xc4, 0x4f, 0x9e, 0xf7, 0x88, 0xef, 0x01, 0x71, 0x67, 0xfe, 0x2c, 0x45, 0x84, 0xec, 0xf3, 0x0a, 0x42, 0xa4, 0xd6, 0x9b, 0xb5, 0xd1, 0xeb, 0xc5, 0xa7, 0x52, 0x66, 0x42, 0x68, 0x8d, 0x66, 0x86, 0x7e, 0x95, 0xe9, 0x39, 0x73, 0x28, 0x43, 0x13, 0xdd, 0xa2, 0xaa, 0x01, 0xe5, 0x8e, 0xbb, 0xf4, 0xd0, 0xba, 0x6f, 0x90, 0xac, }; static const unsigned char ecdh_brainpoolp224r1_3765_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3765_sharedsecret[] = { 0x5a, 0x1a, 0x19, 0xea, 0x3f, 0x74, 0x7e, 0xd6, 0xbf, 0xcf, 0xb6, 0xcc, 0x11, 0x88, 0xce, 0xd5, 0xb6, 0x40, 0xba, 0xf0, 0xbf, 0xbe, 0x9d, 0x37, 0x0e, 0xdd, 0x99, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3765 = { .name = "ecdh_brainpoolp224r1_3765", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3765_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3765_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3765_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1351 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3766 for ECDH, tcId is 1352 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3766_peerpubkey[] = { 0x09, 0x9b, 0x2e, 0xd1, 0x57, 0xe8, 0x42, 0x76, 0x88, 0xae, 0x4a, 0x31, 0x21, 0x16, 0x26, 0xa3, 0x1b, 0x69, 0xfc, 0x1b, 0x54, 0xcc, 0x28, 0x75, 0x40, 0x60, 0x82, 0xd8, 0x7d, 0x3c, 0xbc, 0x08, 0x5a, 0x1d, 0x59, 0x87, 0x0f, 0x97, 0xf9, 0xc5, 0xfe, 0xf0, 0x48, 0x01, 0xd9, 0xdb, 0xd1, 0x25, 0xa6, 0x18, 0x4c, 0x20, 0x62, 0xbd, 0x7b, 0x74, }; static const unsigned char ecdh_brainpoolp224r1_3766_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3766_sharedsecret[] = { 0x58, 0xaa, 0x99, 0x0c, 0x3c, 0xbf, 0x80, 0xca, 0x08, 0x72, 0x5b, 0xc7, 0x1b, 0x7e, 0x82, 0x6f, 0x03, 0x40, 0xa2, 0xb1, 0x1e, 0x0d, 0x33, 0x60, 0xc7, 0xd7, 0xc1, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3766 = { .name = "ecdh_brainpoolp224r1_3766", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3766_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3766_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3766_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1352 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3767 for ECDH, tcId is 1353 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3767_peerpubkey[] = { 0x84, 0x68, 0xf6, 0x15, 0xa3, 0xd0, 0x91, 0x54, 0x01, 0x80, 0xf6, 0x4f, 0x52, 0x88, 0x6f, 0x9f, 0x48, 0x9f, 0xbb, 0x5b, 0xbb, 0x4c, 0xe4, 0x5a, 0xd3, 0x35, 0x9b, 0x7c, 0x84, 0x26, 0xbe, 0x2a, 0xf8, 0x63, 0xe2, 0x0a, 0x6d, 0x69, 0x1b, 0xca, 0x5a, 0x12, 0xf6, 0xc4, 0x4c, 0xbe, 0x52, 0xe2, 0x7f, 0x0a, 0x62, 0xd1, 0xc0, 0x94, 0xa6, 0x60, }; static const unsigned char ecdh_brainpoolp224r1_3767_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3767_sharedsecret[] = { 0x46, 0x3b, 0x47, 0x98, 0x27, 0x83, 0x17, 0xeb, 0x51, 0xb7, 0xac, 0xf0, 0x5b, 0x27, 0x07, 0x06, 0x42, 0x69, 0x6f, 0x9f, 0x21, 0xe0, 0x64, 0x39, 0x8f, 0xfb, 0x12, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3767 = { .name = "ecdh_brainpoolp224r1_3767", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3767_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3767_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3767_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1353 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3768 for ECDH, tcId is 1354 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3768_peerpubkey[] = { 0x67, 0x17, 0xf2, 0x7c, 0x90, 0xf9, 0xe0, 0x89, 0x59, 0x04, 0x26, 0x0e, 0x58, 0x75, 0xce, 0xea, 0xfe, 0xa9, 0xc3, 0x24, 0x9f, 0x18, 0x23, 0xe5, 0x44, 0x3a, 0x89, 0x10, 0x06, 0x78, 0xe7, 0x91, 0x70, 0x56, 0x21, 0x06, 0x34, 0xea, 0xb1, 0x91, 0xa8, 0xde, 0x65, 0xde, 0xb7, 0x64, 0xb8, 0xf5, 0x71, 0x1d, 0x71, 0xc1, 0xda, 0x48, 0xd0, 0x86, }; static const unsigned char ecdh_brainpoolp224r1_3768_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3768_sharedsecret[] = { 0x20, 0xbf, 0xc6, 0xa8, 0x6f, 0xdb, 0xcb, 0xf2, 0xfc, 0xe6, 0x0d, 0x18, 0x41, 0x33, 0x4e, 0xfe, 0x99, 0x3b, 0xd5, 0x86, 0x6f, 0x38, 0x7c, 0xe8, 0x86, 0xc1, 0x61, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3768 = { .name = "ecdh_brainpoolp224r1_3768", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3768_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3768_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3768_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1354 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3769 for ECDH, tcId is 1355 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3769_peerpubkey[] = { 0x0f, 0x31, 0x17, 0xf5, 0xff, 0xd8, 0xe6, 0xe4, 0x5e, 0xe0, 0xb2, 0x6b, 0x36, 0x51, 0x4e, 0xbc, 0xc1, 0x38, 0xef, 0x45, 0x7b, 0x69, 0xec, 0xd3, 0xcd, 0x57, 0x4f, 0x1a, 0x56, 0x62, 0xf5, 0xb8, 0x50, 0x7f, 0x70, 0xcb, 0x20, 0xf9, 0x6f, 0xcb, 0x0e, 0x4c, 0x4e, 0xe9, 0x51, 0x82, 0x14, 0x50, 0x29, 0x43, 0xca, 0xd2, 0xb8, 0xa7, 0xae, 0x6f, }; static const unsigned char ecdh_brainpoolp224r1_3769_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3769_sharedsecret[] = { 0x4d, 0xdf, 0x20, 0xc3, 0x4e, 0x6c, 0x42, 0x0c, 0x53, 0x44, 0x36, 0x4d, 0xc2, 0xbb, 0x8d, 0x76, 0x01, 0x67, 0xfe, 0x5b, 0x0b, 0x30, 0xa0, 0x28, 0x74, 0x7b, 0x84, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3769 = { .name = "ecdh_brainpoolp224r1_3769", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3769_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3769_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3769_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1355 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3770 for ECDH, tcId is 1356 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3770_peerpubkey[] = { 0x8f, 0x0f, 0x70, 0xfb, 0xac, 0xf3, 0x30, 0x93, 0xd3, 0xb0, 0x3f, 0xbf, 0x80, 0x5a, 0x03, 0xa2, 0xa3, 0x0d, 0xba, 0x2b, 0xdb, 0x12, 0x4e, 0xd8, 0xb7, 0xf1, 0x45, 0xe0, 0x18, 0xad, 0x20, 0x4e, 0x46, 0x05, 0x57, 0x91, 0x11, 0xb7, 0x3c, 0x42, 0xd7, 0x80, 0x29, 0x6f, 0x16, 0x27, 0x1d, 0x97, 0x48, 0xd1, 0x2c, 0xda, 0x5c, 0xbd, 0x0d, 0x3c, }; static const unsigned char ecdh_brainpoolp224r1_3770_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3770_sharedsecret[] = { 0x04, 0xca, 0xf7, 0xd7, 0x80, 0x57, 0x86, 0xf8, 0x1a, 0x3e, 0xbd, 0xe1, 0x7d, 0xf8, 0x28, 0x40, 0x0a, 0x96, 0x99, 0xc7, 0x80, 0x31, 0x5b, 0x3d, 0xf5, 0x79, 0x0b, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3770 = { .name = "ecdh_brainpoolp224r1_3770", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3770_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3770_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3770_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1356 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3771 for ECDH, tcId is 1357 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3771_peerpubkey[] = { 0xb6, 0xc3, 0x5a, 0x76, 0xcb, 0x5e, 0x83, 0x02, 0x30, 0xe8, 0x98, 0x6c, 0xba, 0x5f, 0xad, 0xb8, 0xcc, 0x28, 0x58, 0xd3, 0xbf, 0xd8, 0x82, 0xba, 0xa7, 0xea, 0x90, 0x05, 0x6e, 0x30, 0xbd, 0xbd, 0x4c, 0x17, 0x04, 0x58, 0x42, 0x62, 0xef, 0x66, 0xa6, 0x84, 0x2f, 0x5e, 0x65, 0x55, 0xe8, 0x0f, 0x48, 0x8f, 0x3b, 0x41, 0x9e, 0xdd, 0xde, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_3771_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3771_sharedsecret[] = { 0x5c, 0xe5, 0xfa, 0xde, 0x15, 0x34, 0x18, 0x28, 0xa7, 0x08, 0x38, 0x9c, 0x39, 0xcd, 0xa6, 0xfe, 0xc2, 0x2f, 0xcb, 0x53, 0x3d, 0xd6, 0x78, 0xd4, 0x02, 0x68, 0xa1, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3771 = { .name = "ecdh_brainpoolp224r1_3771", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3771_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3771_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3771_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1357 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3772 for ECDH, tcId is 1358 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3772_peerpubkey[] = { 0x15, 0x29, 0x51, 0x6a, 0x4b, 0x8d, 0x56, 0xbb, 0xe2, 0x2e, 0x15, 0xd9, 0xc8, 0x7d, 0x58, 0xfe, 0x6e, 0x4d, 0x89, 0xd9, 0xb5, 0xad, 0x0d, 0x0c, 0x0c, 0x80, 0x3c, 0xd3, 0x0f, 0xe7, 0x0f, 0x94, 0x9c, 0x6a, 0xad, 0x01, 0xd2, 0xe5, 0x5a, 0xb8, 0xdd, 0x46, 0x61, 0x7d, 0xba, 0xe8, 0x84, 0xa7, 0x7a, 0x46, 0x9f, 0x71, 0xe5, 0x84, 0x01, 0x91, }; static const unsigned char ecdh_brainpoolp224r1_3772_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3772_sharedsecret[] = { 0x38, 0x50, 0xaa, 0x20, 0x4a, 0xf0, 0x4e, 0xc9, 0xc0, 0x71, 0xff, 0x53, 0xd6, 0x55, 0x00, 0x21, 0xba, 0x55, 0xb9, 0xdb, 0x69, 0xa9, 0x22, 0x7c, 0xd0, 0xdd, 0xbd, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3772 = { .name = "ecdh_brainpoolp224r1_3772", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3772_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3772_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3772_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1358 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3773 for ECDH, tcId is 1359 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3773_peerpubkey[] = { 0x1a, 0xcb, 0x03, 0xe1, 0xfc, 0x18, 0x05, 0x33, 0xc5, 0xec, 0x61, 0x41, 0x10, 0x03, 0x3d, 0x50, 0x13, 0xcb, 0xb2, 0x81, 0x26, 0x7a, 0x2e, 0xe5, 0xd8, 0x6f, 0x97, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_3773_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3773_sharedsecret[] = { 0x2a, 0x7b, 0x5c, 0x94, 0x2e, 0xca, 0x0c, 0xf9, 0xb5, 0x35, 0x92, 0xad, 0xfb, 0x04, 0xe2, 0x8c, 0x02, 0x53, 0xd1, 0x77, 0x39, 0x45, 0x6b, 0x83, 0x40, 0xa4, 0xa5, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3773 = { .name = "ecdh_brainpoolp224r1_3773", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3773_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3773_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3773_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 1359 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3774 for ECDH, tcId is 1360 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3774_peerpubkey[] = { 0x74, 0x0a, 0xca, 0x1c, 0xfd, 0x94, 0x17, 0x5d, 0x2e, 0x4a, 0x37, 0x40, 0x02, 0x4b, 0x24, 0x56, 0xb1, 0x04, 0x6f, 0x4d, 0xc6, 0xcd, 0x1c, 0x55, 0x8d, 0x4e, 0x04, 0x40, 0x35, 0x50, 0x4f, 0xb2, 0x9b, 0xbf, 0x39, 0xf2, 0x68, 0xd6, 0x74, 0xec, 0xbc, 0x0d, 0xe9, 0x17, 0x05, 0x14, 0x3a, 0x98, 0x0a, 0xda, 0x03, 0x48, 0xbc, 0xfe, 0xeb, 0xce, }; static const unsigned char ecdh_brainpoolp224r1_3774_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3774_sharedsecret[] = { 0x9d, 0x58, 0xa8, 0x91, 0x6b, 0x54, 0x40, 0x02, 0x44, 0xf2, 0x48, 0x1e, 0xc4, 0x96, 0x05, 0x3c, 0x3c, 0x31, 0x7a, 0x39, 0xb4, 0x1a, 0xb1, 0x83, 0x04, 0x2c, 0x4c, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3774 = { .name = "ecdh_brainpoolp224r1_3774", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3774_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3774_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3774_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 1360 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3775 for ECDH, tcId is 1361 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3775_peerpubkey[] = { 0xab, 0x71, 0xfe, 0xf8, 0x0b, 0xe9, 0x21, 0x2a, 0xcc, 0x31, 0xba, 0x64, 0x45, 0xf0, 0xcc, 0xf1, 0x87, 0xb4, 0x51, 0x00, 0x10, 0x74, 0x20, 0x4d, 0x0e, 0xb4, 0xe4, 0x89, 0x9e, 0x2c, 0xf4, 0x6c, 0x2a, 0xbc, 0x91, 0x12, 0xf7, 0x82, 0x8e, 0x3d, 0x9d, 0xb7, 0x61, 0x5d, 0x47, 0x50, 0x0d, 0x17, 0xce, 0x78, 0x06, 0x02, 0xf0, 0x81, 0xcf, 0xb0, }; static const unsigned char ecdh_brainpoolp224r1_3775_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3775_sharedsecret[] = { 0xac, 0x90, 0x8f, 0xde, 0xf8, 0x45, 0xc2, 0x24, 0xb3, 0xd9, 0xd3, 0xa3, 0x55, 0xee, 0x62, 0x77, 0x26, 0x30, 0xe7, 0x2d, 0xe9, 0x78, 0x5a, 0x6f, 0x0d, 0x7f, 0x6c, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3775 = { .name = "ecdh_brainpoolp224r1_3775", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3775_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3775_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3775_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1, tcId is 1361 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3776 for ECDH, tcId is 1362 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3776_peerpubkey[] = { 0xca, 0x25, 0x61, 0xa8, 0x5e, 0x51, 0xb1, 0xbd, 0x76, 0x2a, 0x17, 0x45, 0xaf, 0x50, 0x67, 0xfe, 0xfc, 0x93, 0x27, 0xd2, 0x2f, 0x5c, 0x0b, 0xc3, 0x41, 0x7c, 0xe7, 0x32, 0x50, 0x26, 0x7f, 0x15, 0x85, 0x95, 0xe9, 0x16, 0x3b, 0xb4, 0x3c, 0xa7, 0xdb, 0x51, 0x52, 0xab, 0x3d, 0x63, 0x7b, 0x88, 0x56, 0xbe, 0x18, 0x05, 0xc5, 0x0a, 0x14, 0x56, }; static const unsigned char ecdh_brainpoolp224r1_3776_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3776_sharedsecret[] = { 0x31, 0xba, 0xda, 0xa6, 0xd2, 0x6e, 0x46, 0xb6, 0xd0, 0xee, 0x47, 0x37, 0x09, 0xb6, 0x01, 0x44, 0x86, 0xa9, 0x05, 0xf5, 0xbd, 0x9a, 0xe3, 0x33, 0x3f, 0xd4, 0x2b, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3776 = { .name = "ecdh_brainpoolp224r1_3776", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3776_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3776_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3776_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1362 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3777 for ECDH, tcId is 1363 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3777_peerpubkey[] = { 0x0c, 0x97, 0xa6, 0xdc, 0x6b, 0xf9, 0x5b, 0x28, 0xbe, 0x23, 0xab, 0x76, 0xdf, 0x79, 0x12, 0x07, 0xa0, 0xc7, 0x3e, 0x16, 0xf8, 0x07, 0xb5, 0x86, 0x90, 0xe9, 0xb7, 0xd3, 0xca, 0x95, 0x7c, 0x82, 0xc3, 0xaf, 0x89, 0x82, 0x29, 0xf9, 0x45, 0x4a, 0xba, 0x3f, 0x09, 0xcc, 0xbd, 0xab, 0x9c, 0xf5, 0x35, 0x4a, 0x19, 0x5f, 0x98, 0x7d, 0x72, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_3777_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3777_sharedsecret[] = { 0x3d, 0x79, 0x44, 0xc1, 0x73, 0xc2, 0x1b, 0x73, 0x73, 0xc7, 0x5a, 0x7f, 0x02, 0x69, 0xfc, 0x85, 0x93, 0x73, 0xca, 0x3d, 0x4c, 0x2b, 0x66, 0x78, 0x92, 0x26, 0xb8, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3777 = { .name = "ecdh_brainpoolp224r1_3777", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3777_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3777_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3777_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1363 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3778 for ECDH, tcId is 1364 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3778_peerpubkey[] = { 0x9b, 0xdb, 0xe2, 0x85, 0xb7, 0xb7, 0x80, 0x81, 0xe4, 0xfb, 0xc5, 0xbc, 0x94, 0x5e, 0x91, 0x07, 0xda, 0xbf, 0x41, 0xf8, 0xa1, 0x80, 0x99, 0x46, 0xe6, 0xbc, 0x0d, 0x60, 0x1d, 0x0b, 0xbc, 0x8c, 0xea, 0xc8, 0x53, 0xd0, 0x77, 0xc7, 0x4b, 0x4e, 0x5f, 0x51, 0xff, 0x13, 0x44, 0xcf, 0xc0, 0x9f, 0x99, 0xa2, 0x10, 0x9e, 0x0c, 0xa4, 0xb0, 0x2e, }; static const unsigned char ecdh_brainpoolp224r1_3778_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3778_sharedsecret[] = { 0x1a, 0x7c, 0x13, 0x1a, 0xde, 0x48, 0xd1, 0xf4, 0x72, 0x8f, 0x9b, 0x32, 0xca, 0x00, 0x64, 0xe2, 0xd0, 0xe3, 0x12, 0xec, 0x89, 0x1b, 0xa5, 0xe6, 0xf2, 0x7b, 0x5b, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3778 = { .name = "ecdh_brainpoolp224r1_3778", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3778_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3778_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3778_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1364 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3779 for ECDH, tcId is 1365 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3779_peerpubkey[] = { 0x5e, 0xd5, 0x76, 0xb5, 0xb8, 0xdc, 0xbe, 0xbb, 0x8b, 0x4a, 0x7a, 0x7b, 0xdd, 0x91, 0x5d, 0xd6, 0x27, 0xdb, 0x97, 0x54, 0xda, 0x0f, 0x6c, 0xa7, 0x26, 0xd0, 0x32, 0x9f, 0xa3, 0xc1, 0xd9, 0x32, 0xbc, 0x1b, 0x7b, 0x93, 0xf6, 0xf9, 0xf5, 0xfe, 0x90, 0xab, 0xaa, 0xf8, 0x13, 0x02, 0x10, 0x42, 0x87, 0x13, 0x75, 0xb1, 0xf9, 0xa3, 0xda, 0x9a, }; static const unsigned char ecdh_brainpoolp224r1_3779_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3779_sharedsecret[] = { 0x0b, 0xf5, 0x62, 0xae, 0x39, 0xec, 0xcd, 0xdf, 0x8c, 0x39, 0xeb, 0xfb, 0x57, 0x4b, 0x4b, 0x9f, 0x33, 0x7d, 0x7a, 0xad, 0xc6, 0xec, 0x21, 0x50, 0x87, 0x9b, 0xf2, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3779 = { .name = "ecdh_brainpoolp224r1_3779", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3779_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3779_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3779_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1365 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3780 for ECDH, tcId is 1366 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3780_peerpubkey[] = { 0x05, 0xc1, 0xd0, 0xea, 0xd6, 0xc2, 0x30, 0xfb, 0xb1, 0x29, 0x16, 0x8a, 0x49, 0x03, 0xe0, 0xe3, 0xe0, 0x95, 0x31, 0xfe, 0x3a, 0x0d, 0xd5, 0xae, 0xbf, 0x4c, 0x5c, 0xd9, 0xc5, 0xd3, 0xdc, 0x25, 0x8d, 0xa8, 0x65, 0xb8, 0xc8, 0x3f, 0x1d, 0x12, 0x70, 0x8a, 0x19, 0x5a, 0x3f, 0xd6, 0xdc, 0xd7, 0xf7, 0xde, 0x11, 0x2f, 0x45, 0x67, 0xc1, 0x72, }; static const unsigned char ecdh_brainpoolp224r1_3780_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3780_sharedsecret[] = { 0x1d, 0xc5, 0x41, 0xa5, 0x72, 0xc2, 0x39, 0x9a, 0x88, 0xe2, 0x99, 0xac, 0x27, 0x5b, 0xe1, 0x60, 0x90, 0x46, 0x67, 0xda, 0xec, 0x2b, 0xe4, 0x2a, 0xe0, 0x7b, 0xe0, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3780 = { .name = "ecdh_brainpoolp224r1_3780", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3780_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3780_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3780_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1366 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3781 for ECDH, tcId is 1367 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3781_peerpubkey[] = { 0x08, 0xaa, 0x9e, 0x35, 0x01, 0xd9, 0xf7, 0xe4, 0x34, 0xc7, 0xe4, 0x78, 0x0f, 0x51, 0xc9, 0xc3, 0xb5, 0x7f, 0x59, 0x87, 0xd8, 0x86, 0x71, 0xb6, 0x59, 0x4a, 0xa0, 0x4a, 0x5e, 0xc0, 0x33, 0xd6, 0x37, 0x02, 0x66, 0x9a, 0x3d, 0x82, 0x23, 0x46, 0x77, 0xbd, 0x01, 0x68, 0x48, 0xef, 0x3f, 0x70, 0x92, 0x12, 0xf1, 0xfa, 0x3a, 0x5f, 0x85, 0x3f, }; static const unsigned char ecdh_brainpoolp224r1_3781_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3781_sharedsecret[] = { 0x8c, 0xb6, 0x2e, 0x42, 0x4b, 0x1a, 0x00, 0x76, 0xf0, 0xa5, 0xf2, 0xf1, 0x0f, 0x81, 0x69, 0xc4, 0xe4, 0x12, 0x40, 0xd9, 0xc7, 0x38, 0x62, 0x93, 0x8e, 0x2c, 0x47, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3781 = { .name = "ecdh_brainpoolp224r1_3781", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3781_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3781_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3781_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1367 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3782 for ECDH, tcId is 1368 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3782_peerpubkey[] = { 0x5c, 0x42, 0x38, 0x03, 0x04, 0x3c, 0x02, 0x9b, 0x9e, 0xd8, 0xc5, 0xad, 0xfa, 0x21, 0xbd, 0x1a, 0x5d, 0x1f, 0x1b, 0xb1, 0xfb, 0x63, 0x6a, 0xbe, 0xfa, 0x84, 0x28, 0xd4, 0xcc, 0x77, 0x6b, 0x7d, 0x30, 0xa6, 0x9d, 0xa3, 0xbc, 0x52, 0x5d, 0xc4, 0xc1, 0xda, 0xf1, 0x42, 0xd3, 0xa0, 0xec, 0x83, 0x86, 0x6f, 0x9f, 0x44, 0x94, 0x53, 0x42, 0xd2, }; static const unsigned char ecdh_brainpoolp224r1_3782_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3782_sharedsecret[] = { 0x1f, 0x96, 0x51, 0x5e, 0x57, 0x79, 0x87, 0x2b, 0x3c, 0x6c, 0xb9, 0x6c, 0xf6, 0x39, 0x84, 0xea, 0xb3, 0x55, 0xf4, 0x9a, 0x59, 0x32, 0xda, 0x49, 0x2e, 0x79, 0xda, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3782 = { .name = "ecdh_brainpoolp224r1_3782", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3782_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3782_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3782_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1368 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3783 for ECDH, tcId is 1369 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3783_peerpubkey[] = { 0xb4, 0x89, 0x31, 0x24, 0xf9, 0xb4, 0xe5, 0x42, 0x7c, 0x28, 0x14, 0x27, 0x42, 0x4c, 0xad, 0xf1, 0x9c, 0x6c, 0x3f, 0xd4, 0xad, 0xb0, 0x98, 0xbb, 0x4c, 0x1d, 0x87, 0x9a, 0x67, 0x45, 0x29, 0x24, 0x3a, 0x31, 0x7d, 0x77, 0x59, 0xf0, 0x7d, 0x57, 0xfe, 0x59, 0xfd, 0x77, 0x16, 0x72, 0xdf, 0x55, 0xb9, 0x9c, 0x02, 0xf5, 0x7e, 0x20, 0x65, 0x81, }; static const unsigned char ecdh_brainpoolp224r1_3783_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3783_sharedsecret[] = { 0xb1, 0xf8, 0xf1, 0x23, 0x3f, 0xdb, 0x86, 0xdb, 0xb5, 0xfa, 0x26, 0x58, 0x24, 0xba, 0x22, 0xd3, 0xfa, 0xe7, 0xeb, 0xd0, 0x92, 0x4e, 0xd5, 0x29, 0x0e, 0x07, 0x08, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3783 = { .name = "ecdh_brainpoolp224r1_3783", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3783_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3783_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3783_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1369 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3784 for ECDH, tcId is 1370 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3784_peerpubkey[] = { 0x2e, 0x4e, 0x59, 0x6b, 0x55, 0xa2, 0x60, 0x34, 0xf0, 0x31, 0x85, 0xae, 0x5b, 0xc9, 0xd2, 0x44, 0x63, 0xc2, 0x3d, 0xa0, 0xb1, 0xe3, 0xf7, 0xd9, 0xc3, 0x71, 0x4e, 0x9b, 0x4a, 0xe2, 0x87, 0xc9, 0x34, 0x07, 0xed, 0x83, 0x0b, 0x28, 0xfb, 0x7c, 0x35, 0x28, 0xad, 0x4f, 0x4d, 0xb0, 0x3f, 0x63, 0xc4, 0x5d, 0x2b, 0x67, 0x24, 0xde, 0x41, 0x7b, }; static const unsigned char ecdh_brainpoolp224r1_3784_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3784_sharedsecret[] = { 0xb0, 0x96, 0x68, 0x1e, 0xfa, 0x8a, 0x6a, 0xc6, 0xc9, 0x74, 0x48, 0x1f, 0x7a, 0xf9, 0xce, 0xe1, 0x98, 0xb1, 0x25, 0x51, 0x9c, 0xe3, 0x2c, 0xca, 0x11, 0x71, 0x04, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3784 = { .name = "ecdh_brainpoolp224r1_3784", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3784_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3784_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3784_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1370 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3785 for ECDH, tcId is 1371 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3785_peerpubkey[] = { 0xbf, 0x51, 0x35, 0x87, 0x53, 0x67, 0xec, 0xf5, 0x27, 0x91, 0x42, 0x2d, 0x55, 0x45, 0x14, 0xdc, 0x91, 0x14, 0x9f, 0xc9, 0x20, 0xa9, 0xb9, 0x0e, 0xea, 0xab, 0xd0, 0xfb, 0x02, 0x5c, 0xcf, 0xcd, 0x76, 0x23, 0xd7, 0xc1, 0x43, 0xca, 0xee, 0x1a, 0x39, 0xb8, 0x82, 0x6a, 0xe5, 0x3d, 0xee, 0xd7, 0xcd, 0x9a, 0x38, 0x99, 0xbf, 0xc1, 0x42, 0xbf, }; static const unsigned char ecdh_brainpoolp224r1_3785_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3785_sharedsecret[] = { 0xc0, 0xb6, 0x9e, 0xb2, 0x8b, 0x0b, 0x94, 0x03, 0x6a, 0x11, 0xc0, 0xe8, 0x83, 0x1c, 0x20, 0xa0, 0x0c, 0x85, 0x87, 0x94, 0x14, 0xd4, 0x03, 0x0e, 0x16, 0x92, 0xaf, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3785 = { .name = "ecdh_brainpoolp224r1_3785", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3785_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3785_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3785_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1371 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3786 for ECDH, tcId is 1372 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3786_peerpubkey[] = { 0x9a, 0x80, 0x4a, 0x2f, 0xe4, 0xeb, 0xff, 0x17, 0xba, 0x1b, 0x03, 0x13, 0x80, 0xd7, 0xdc, 0xda, 0x56, 0x70, 0x78, 0xbd, 0x64, 0xef, 0xdd, 0x8c, 0xf7, 0x85, 0x84, 0xde, 0xa1, 0xdb, 0xca, 0x1b, 0xd9, 0x6a, 0x96, 0x35, 0x33, 0x2d, 0x73, 0x1d, 0xbc, 0x79, 0xb6, 0x14, 0xed, 0x1a, 0x73, 0x25, 0x59, 0xa9, 0xd3, 0x85, 0x17, 0xdc, 0x4a, 0xdc, }; static const unsigned char ecdh_brainpoolp224r1_3786_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3786_sharedsecret[] = { 0x40, 0x73, 0xd9, 0xe0, 0xc2, 0x36, 0x57, 0xc2, 0x09, 0x0c, 0x59, 0x8b, 0x56, 0x39, 0x01, 0xaf, 0xf8, 0x7d, 0x68, 0x43, 0x5e, 0x2e, 0xf3, 0xbf, 0xd5, 0x32, 0xe8, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3786 = { .name = "ecdh_brainpoolp224r1_3786", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3786_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3786_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3786_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1372 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3787 for ECDH, tcId is 1373 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3787_peerpubkey[] = { 0x30, 0x05, 0xca, 0x1f, 0xb7, 0xbe, 0x5f, 0xc9, 0x7a, 0xf4, 0x37, 0xfb, 0x02, 0xa1, 0xec, 0x89, 0x4a, 0x1d, 0x3d, 0xfa, 0x62, 0x80, 0xd4, 0xaa, 0x29, 0x2d, 0xbd, 0xcb, 0x3c, 0xbd, 0x6b, 0x5f, 0xae, 0x91, 0x26, 0x4d, 0xe5, 0x7f, 0x6b, 0x52, 0xe6, 0xf2, 0x8f, 0x88, 0x58, 0xb8, 0x33, 0x2e, 0x70, 0x9b, 0x02, 0xf2, 0xcc, 0xcf, 0xa7, 0x76, }; static const unsigned char ecdh_brainpoolp224r1_3787_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3787_sharedsecret[] = { 0x57, 0xd3, 0x8f, 0xcd, 0x4a, 0xda, 0xb4, 0x59, 0xf8, 0x40, 0x07, 0x66, 0x77, 0x19, 0x49, 0xef, 0x04, 0x8e, 0x75, 0xc5, 0x3d, 0x94, 0xf5, 0xad, 0xa3, 0x5d, 0xeb, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3787 = { .name = "ecdh_brainpoolp224r1_3787", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3787_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3787_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3787_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1373 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3788 for ECDH, tcId is 1374 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3788_peerpubkey[] = { 0x4d, 0x49, 0xe3, 0x8e, 0x22, 0xd8, 0x62, 0x27, 0x5f, 0x39, 0x45, 0x49, 0x2f, 0x7b, 0xf2, 0x57, 0x7b, 0x86, 0xa4, 0xac, 0x31, 0xfc, 0x0c, 0xb2, 0xca, 0x45, 0x5e, 0x67, 0x9a, 0xe1, 0x23, 0x9e, 0xf7, 0x51, 0xac, 0x0f, 0x3a, 0x2f, 0xee, 0xf2, 0x8c, 0xd7, 0x52, 0xe1, 0x33, 0xfd, 0xde, 0x2c, 0x29, 0xb9, 0x5b, 0x8c, 0x5e, 0x62, 0x57, 0x07, }; static const unsigned char ecdh_brainpoolp224r1_3788_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3788_sharedsecret[] = { 0x51, 0xb5, 0x8b, 0x59, 0x78, 0x26, 0x79, 0x99, 0x99, 0x77, 0x34, 0x4a, 0x4d, 0xf8, 0xf2, 0x51, 0x4b, 0x7c, 0x80, 0xe1, 0x5a, 0x81, 0x90, 0xf2, 0x95, 0x33, 0x6a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3788 = { .name = "ecdh_brainpoolp224r1_3788", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3788_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3788_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3788_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1374 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3789 for ECDH, tcId is 1375 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3789_peerpubkey[] = { 0x11, 0x90, 0x74, 0xf3, 0xbb, 0xd0, 0xda, 0x37, 0x14, 0x7a, 0x91, 0xd6, 0x5d, 0xd2, 0x5b, 0xfd, 0xc8, 0x1d, 0x65, 0xb3, 0xb1, 0x85, 0x7e, 0x81, 0x27, 0x7c, 0x81, 0xb1, 0xa7, 0xc8, 0xb9, 0x17, 0xd3, 0x92, 0x3f, 0xdd, 0x1f, 0xd2, 0x4e, 0x07, 0xaa, 0x79, 0x3a, 0xe8, 0x00, 0x6c, 0xbc, 0x11, 0x28, 0x1a, 0x35, 0x05, 0xc4, 0x50, 0x55, 0x43, }; static const unsigned char ecdh_brainpoolp224r1_3789_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3789_sharedsecret[] = { 0x8b, 0x88, 0x18, 0x45, 0x6c, 0x96, 0x5a, 0xe7, 0x48, 0x26, 0xb2, 0x16, 0x54, 0xac, 0x2c, 0x11, 0xbf, 0x71, 0xb8, 0xe1, 0x21, 0x26, 0xf4, 0xa3, 0xfe, 0x1e, 0x65, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3789 = { .name = "ecdh_brainpoolp224r1_3789", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3789_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3789_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3789_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1375 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3790 for ECDH, tcId is 1376 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3790_peerpubkey[] = { 0xba, 0x78, 0xa1, 0xd6, 0xca, 0x79, 0xc6, 0x00, 0x54, 0xd9, 0xd2, 0x29, 0x54, 0x13, 0x94, 0x40, 0xff, 0x81, 0x8d, 0xdb, 0xcc, 0x6e, 0x45, 0x6e, 0x81, 0x34, 0x2c, 0x19, 0x0e, 0x79, 0xa8, 0x7a, 0xf7, 0xfd, 0x44, 0xfd, 0xe9, 0x03, 0x6e, 0xa8, 0x0c, 0xa8, 0x1d, 0x45, 0x4c, 0xf1, 0x52, 0x2a, 0x5e, 0x20, 0x6e, 0x37, 0x58, 0xff, 0x98, 0xd1, }; static const unsigned char ecdh_brainpoolp224r1_3790_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3790_sharedsecret[] = { 0x9c, 0x4e, 0xe8, 0xa0, 0x4a, 0x16, 0x84, 0x96, 0x33, 0x8c, 0xac, 0x9c, 0x9e, 0xaf, 0x5b, 0x89, 0xb1, 0xab, 0x58, 0xdc, 0xa4, 0x71, 0x7d, 0xac, 0xf9, 0x73, 0x05, 0x13, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3790 = { .name = "ecdh_brainpoolp224r1_3790", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3790_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3790_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3790_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1376 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3791 for ECDH, tcId is 1377 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3791_peerpubkey[] = { 0x64, 0x17, 0xeb, 0xfe, 0xae, 0xb9, 0x35, 0x20, 0xfb, 0x72, 0x21, 0xc9, 0xe5, 0xe6, 0x15, 0xea, 0x14, 0x90, 0x70, 0x34, 0x68, 0xa7, 0x3b, 0x25, 0xe5, 0x9e, 0xed, 0xea, 0xa5, 0xd3, 0x20, 0x91, 0xc7, 0x83, 0x9c, 0x71, 0xfd, 0xb5, 0x6a, 0x56, 0xff, 0xbc, 0x82, 0xf6, 0x60, 0x6b, 0x5b, 0x43, 0x0a, 0x28, 0xb0, 0xcc, 0xfc, 0xcd, 0xe2, 0x21, }; static const unsigned char ecdh_brainpoolp224r1_3791_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3791_sharedsecret[] = { 0x77, 0x3f, 0x1e, 0xc8, 0x81, 0x1e, 0x4f, 0x3b, 0x50, 0x66, 0x95, 0x9d, 0xd1, 0xcb, 0x00, 0x80, 0x51, 0x73, 0xb5, 0x31, 0x21, 0xdb, 0x92, 0xe2, 0xda, 0x12, 0x96, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3791 = { .name = "ecdh_brainpoolp224r1_3791", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3791_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3791_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3791_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1377 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3792 for ECDH, tcId is 1378 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3792_peerpubkey[] = { 0x98, 0xe9, 0xa6, 0x1e, 0x78, 0xe0, 0xf4, 0x55, 0xd9, 0x4c, 0x8d, 0x2c, 0xa0, 0x80, 0x8a, 0x90, 0x1e, 0x7d, 0x3d, 0x5d, 0x1c, 0x0d, 0x4c, 0xf7, 0x51, 0x67, 0x88, 0x6b, 0xd1, 0x4d, 0x9c, 0xb5, 0xda, 0x09, 0x08, 0x88, 0xcb, 0xcc, 0x68, 0x81, 0x26, 0x49, 0x47, 0xc9, 0xec, 0x49, 0x8c, 0x21, 0x69, 0x4e, 0xdd, 0x9a, 0xa5, 0x03, 0x0d, 0x17, }; static const unsigned char ecdh_brainpoolp224r1_3792_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3792_sharedsecret[] = { 0x61, 0xcc, 0x1f, 0x8f, 0x65, 0xf6, 0x73, 0xac, 0xb0, 0xfe, 0xf6, 0x56, 0xcc, 0xfd, 0xfb, 0xb3, 0x94, 0x85, 0x11, 0x43, 0xbe, 0x51, 0xb1, 0x1c, 0xd8, 0xf8, 0x7b, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3792 = { .name = "ecdh_brainpoolp224r1_3792", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3792_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3792_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3792_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1378 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3793 for ECDH, tcId is 1379 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3793_peerpubkey[] = { 0xbf, 0xd2, 0x9a, 0xce, 0x14, 0xfe, 0x8a, 0x8c, 0x33, 0xd6, 0xe0, 0x8d, 0x64, 0xe2, 0x01, 0x39, 0x01, 0x78, 0xeb, 0xf2, 0x92, 0x02, 0x33, 0x5c, 0xf2, 0xa6, 0xc2, 0x44, 0x3e, 0xc5, 0x5a, 0xd0, 0x4e, 0x39, 0xcc, 0x37, 0x1a, 0x7d, 0x04, 0x08, 0x58, 0xeb, 0xef, 0xff, 0xa9, 0x1f, 0xc5, 0xc9, 0xe1, 0x46, 0x9e, 0xd1, 0xaf, 0x50, 0x01, 0xda, }; static const unsigned char ecdh_brainpoolp224r1_3793_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3793_sharedsecret[] = { 0xa0, 0xc6, 0xf0, 0x0f, 0xbf, 0x27, 0x32, 0x66, 0xd8, 0x82, 0x47, 0xcb, 0x2e, 0xd8, 0xe2, 0x0e, 0xb7, 0xb4, 0x78, 0xc7, 0x13, 0x0f, 0xd5, 0xc1, 0x50, 0x47, 0x5e, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3793 = { .name = "ecdh_brainpoolp224r1_3793", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3793_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3793_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3793_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1379 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3794 for ECDH, tcId is 1380 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3794_peerpubkey[] = { 0xaa, 0x39, 0x53, 0x32, 0xc5, 0xea, 0x3a, 0x42, 0x41, 0x72, 0x69, 0xfe, 0x56, 0xc9, 0x66, 0x4e, 0xf5, 0x35, 0x40, 0x91, 0x0f, 0xca, 0x0f, 0x10, 0x1e, 0x7b, 0x0c, 0x17, 0x81, 0xf3, 0x66, 0xea, 0x70, 0xf3, 0xd6, 0x93, 0x89, 0x47, 0x1f, 0xa5, 0x08, 0x85, 0x87, 0x46, 0x5b, 0xc4, 0x07, 0x5d, 0x96, 0x15, 0xf5, 0xa2, 0x6f, 0xab, 0x79, 0xe2, }; static const unsigned char ecdh_brainpoolp224r1_3794_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3794_sharedsecret[] = { 0x2b, 0xba, 0x11, 0x30, 0x34, 0x11, 0x62, 0xd6, 0x42, 0xd7, 0x1a, 0xc1, 0xe8, 0xf1, 0x9e, 0xc7, 0x3e, 0x95, 0x76, 0xc0, 0x74, 0x3e, 0x71, 0x6d, 0x6d, 0x8e, 0xcf, 0x4c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3794 = { .name = "ecdh_brainpoolp224r1_3794", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3794_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3794_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3794_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1380 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3795 for ECDH, tcId is 1381 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3795_peerpubkey[] = { 0x8e, 0x2d, 0x4a, 0xb2, 0x19, 0x9c, 0x68, 0x77, 0xcf, 0xb8, 0x16, 0x28, 0x07, 0x25, 0xd4, 0xf7, 0x52, 0xa9, 0x69, 0x23, 0xe8, 0x24, 0x99, 0xce, 0xb1, 0xf4, 0x64, 0x1c, 0xae, 0x4a, 0x30, 0x33, 0x44, 0x71, 0xc1, 0xd2, 0xc9, 0xab, 0xe9, 0x29, 0xc7, 0x26, 0x4a, 0x85, 0xb4, 0xa5, 0x64, 0xca, 0xfc, 0x5e, 0xd8, 0x8a, 0x78, 0x70, 0xd9, 0x02, }; static const unsigned char ecdh_brainpoolp224r1_3795_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3795_sharedsecret[] = { 0x0d, 0xe0, 0x3d, 0x60, 0x40, 0x4a, 0x29, 0xba, 0x58, 0xd9, 0xcf, 0x07, 0x99, 0x0b, 0x0d, 0x97, 0x6f, 0x36, 0x42, 0x13, 0x25, 0x22, 0x29, 0xd3, 0x6f, 0x89, 0x4c, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3795 = { .name = "ecdh_brainpoolp224r1_3795", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3795_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3795_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3795_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1381 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3796 for ECDH, tcId is 1382 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3796_peerpubkey[] = { 0x84, 0x29, 0x6c, 0xb5, 0x81, 0x2a, 0xb2, 0x20, 0xa2, 0xe0, 0x02, 0x7f, 0xad, 0xce, 0x53, 0x6c, 0xb4, 0xbc, 0x89, 0xcd, 0xba, 0xa4, 0x87, 0xae, 0x7f, 0xac, 0x2f, 0x21, 0x1c, 0xb9, 0xd2, 0xc3, 0x79, 0x68, 0xdb, 0x33, 0x29, 0xaf, 0x5b, 0x93, 0x2d, 0x1c, 0x0a, 0x16, 0xfd, 0x27, 0x4a, 0xe9, 0x88, 0xff, 0xec, 0xa1, 0xb4, 0x7c, 0x9b, 0xc4, }; static const unsigned char ecdh_brainpoolp224r1_3796_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3796_sharedsecret[] = { 0x94, 0x4e, 0xd6, 0x30, 0x56, 0xf7, 0x91, 0x3e, 0xb0, 0xb1, 0x75, 0x97, 0x77, 0xbc, 0xeb, 0x7a, 0xfe, 0x56, 0xac, 0x7f, 0x9d, 0x50, 0x72, 0x65, 0x70, 0xfc, 0x1f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3796 = { .name = "ecdh_brainpoolp224r1_3796", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3796_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3796_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3796_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1382 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3797 for ECDH, tcId is 1383 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3797_peerpubkey[] = { 0xc4, 0x9d, 0x69, 0x86, 0x1a, 0x4b, 0x47, 0xd3, 0xe7, 0xed, 0x4d, 0x23, 0x71, 0xdf, 0x30, 0xcf, 0x48, 0x12, 0xa9, 0xe6, 0xb4, 0xe0, 0xff, 0x48, 0x86, 0x66, 0x8a, 0x0a, 0x93, 0x64, 0xc0, 0x64, 0x94, 0xe4, 0x24, 0x45, 0xfb, 0x6e, 0xeb, 0x7c, 0xb9, 0x00, 0xbb, 0xe3, 0x6e, 0x10, 0x68, 0xc0, 0x4f, 0x67, 0x10, 0xf0, 0x79, 0xde, 0x96, 0x04, }; static const unsigned char ecdh_brainpoolp224r1_3797_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3797_sharedsecret[] = { 0x99, 0x83, 0xbe, 0x0a, 0x5d, 0xbb, 0x6d, 0x03, 0xba, 0xe2, 0x16, 0x2d, 0x6c, 0x0a, 0x11, 0xc7, 0x0f, 0xab, 0xc1, 0x38, 0x9b, 0x4d, 0x96, 0xb0, 0x2d, 0xbb, 0x53, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3797 = { .name = "ecdh_brainpoolp224r1_3797", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3797_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3797_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3797_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1383 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3798 for ECDH, tcId is 1384 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3798_peerpubkey[] = { 0x71, 0x35, 0xdd, 0x6d, 0x57, 0xbb, 0x9e, 0xee, 0x90, 0x10, 0xc0, 0xd4, 0xf0, 0x37, 0x15, 0x76, 0x11, 0x18, 0xbf, 0x78, 0x24, 0x43, 0xcf, 0xf5, 0x43, 0xdf, 0x91, 0xe9, 0x42, 0x60, 0x89, 0x75, 0xec, 0xb6, 0xab, 0xdd, 0x6f, 0xe2, 0xda, 0xdc, 0x1f, 0x3b, 0xd0, 0x89, 0xfd, 0x33, 0x01, 0x81, 0x66, 0x89, 0xaa, 0xb9, 0xf1, 0x6c, 0x2d, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3798_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3798_sharedsecret[] = { 0xbb, 0xad, 0xe7, 0x03, 0x20, 0x14, 0xc4, 0x37, 0x37, 0x25, 0xbb, 0xcb, 0x8a, 0x02, 0xdd, 0x04, 0x29, 0x30, 0xd3, 0xd6, 0x82, 0xdb, 0x97, 0x44, 0x9e, 0xca, 0x67, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3798 = { .name = "ecdh_brainpoolp224r1_3798", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3798_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3798_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3798_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1384 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3799 for ECDH, tcId is 1385 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3799_peerpubkey[] = { 0x00, 0xe3, 0xee, 0x25, 0x95, 0xaf, 0x45, 0x42, 0x5d, 0x34, 0x67, 0xd0, 0x51, 0xb0, 0xaf, 0xe0, 0xc9, 0x94, 0x1e, 0x46, 0xce, 0xae, 0xc4, 0x86, 0x5a, 0x74, 0x79, 0x0a, 0xd0, 0x1e, 0xa4, 0xe7, 0xa2, 0x90, 0xb3, 0x31, 0xa1, 0x3c, 0x9b, 0xf4, 0x1c, 0xa1, 0x5e, 0x94, 0x4a, 0x0d, 0x64, 0x33, 0x3c, 0xfa, 0x99, 0x85, 0x19, 0x8e, 0x4f, 0x74, }; static const unsigned char ecdh_brainpoolp224r1_3799_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3799_sharedsecret[] = { 0x9d, 0x40, 0x5a, 0x66, 0x23, 0xed, 0xf4, 0xc7, 0x73, 0x93, 0xbe, 0xd7, 0xc7, 0x0d, 0xd0, 0x5d, 0x54, 0x55, 0x17, 0xb1, 0x03, 0x22, 0xf3, 0x0f, 0x2c, 0x5a, 0xda, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3799 = { .name = "ecdh_brainpoolp224r1_3799", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3799_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3799_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3799_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1385 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3800 for ECDH, tcId is 1386 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3800_peerpubkey[] = { 0x80, 0xfa, 0xf9, 0x1b, 0x92, 0x02, 0x39, 0xfd, 0x4d, 0x52, 0xb8, 0xc6, 0x14, 0xb8, 0x41, 0x3c, 0x4b, 0x2b, 0xee, 0x9e, 0x33, 0xa1, 0x47, 0x6c, 0x88, 0xda, 0x73, 0x85, 0x15, 0x28, 0xbd, 0xba, 0x58, 0x0d, 0x7d, 0x9f, 0x76, 0xab, 0x2f, 0xdd, 0x2d, 0x0b, 0x2b, 0x26, 0xac, 0x7e, 0xe5, 0xec, 0x5f, 0x11, 0xfe, 0x28, 0x10, 0xd1, 0x76, 0x0d, }; static const unsigned char ecdh_brainpoolp224r1_3800_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3800_sharedsecret[] = { 0x1b, 0xe7, 0x32, 0x73, 0x14, 0xda, 0x15, 0x70, 0x36, 0x43, 0x2c, 0x30, 0x85, 0x64, 0x66, 0x2e, 0xb1, 0xc7, 0x89, 0xc2, 0xea, 0x7d, 0xe8, 0xd1, 0x97, 0x53, 0x45, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3800 = { .name = "ecdh_brainpoolp224r1_3800", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3800_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3800_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3800_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1386 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3801 for ECDH, tcId is 1387 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3801_peerpubkey[] = { 0x23, 0xb9, 0x0d, 0xe5, 0x43, 0xdb, 0x88, 0xa7, 0xd3, 0x72, 0x18, 0xed, 0xaf, 0xa4, 0x83, 0xe6, 0x74, 0xb1, 0xda, 0x7a, 0x50, 0x93, 0x75, 0x85, 0xd8, 0x78, 0xd2, 0x78, 0xbc, 0xc1, 0x9a, 0x89, 0x7e, 0xf4, 0x1d, 0x31, 0xb1, 0xfd, 0x8a, 0x30, 0x6a, 0x0c, 0x58, 0x24, 0x02, 0xc0, 0xe2, 0x97, 0xff, 0x7d, 0xe1, 0x63, 0x16, 0x41, 0x4a, 0x62, }; static const unsigned char ecdh_brainpoolp224r1_3801_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3801_sharedsecret[] = { 0x14, 0x58, 0xc1, 0xdd, 0x00, 0xff, 0xe9, 0x8e, 0x7c, 0x04, 0x6a, 0xf8, 0x77, 0xc5, 0x0c, 0xef, 0x45, 0xdc, 0x83, 0x8b, 0xf2, 0x77, 0x4c, 0x9d, 0x8e, 0xc1, 0x7a, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3801 = { .name = "ecdh_brainpoolp224r1_3801", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3801_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3801_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3801_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1387 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3802 for ECDH, tcId is 1388 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3802_peerpubkey[] = { 0xb2, 0x9c, 0x46, 0x65, 0xe5, 0x50, 0xb5, 0x51, 0xea, 0x80, 0x8c, 0xc4, 0xce, 0x9c, 0x01, 0xca, 0x68, 0x56, 0x5b, 0x01, 0xb6, 0x52, 0xa7, 0x3a, 0x57, 0x9c, 0x96, 0x43, 0x2d, 0x83, 0x11, 0x16, 0x87, 0xc3, 0x93, 0xdd, 0xd8, 0x2a, 0x59, 0x67, 0xa4, 0xf6, 0x14, 0x29, 0x79, 0x88, 0x48, 0x35, 0x29, 0xeb, 0xf3, 0xe6, 0xdf, 0xdc, 0x09, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_3802_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3802_sharedsecret[] = { 0xcf, 0x7b, 0x1a, 0xcc, 0x2e, 0xdb, 0x86, 0xf3, 0x03, 0x10, 0x7f, 0x03, 0x0e, 0x02, 0xea, 0xa8, 0xd8, 0x5f, 0x02, 0x1f, 0x18, 0xb9, 0x14, 0x59, 0x23, 0x83, 0xc6, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3802 = { .name = "ecdh_brainpoolp224r1_3802", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3802_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3802_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3802_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1388 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3803 for ECDH, tcId is 1389 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3803_peerpubkey[] = { 0x94, 0x68, 0x19, 0xd7, 0x0f, 0xd6, 0x76, 0x88, 0xb8, 0x14, 0xb7, 0xd4, 0xe5, 0xd5, 0x22, 0xfb, 0xa6, 0xdb, 0x0c, 0x6b, 0x84, 0xc7, 0x2c, 0x63, 0xc1, 0x03, 0x6e, 0xc2, 0xd4, 0x6a, 0x97, 0x4d, 0xcd, 0x8f, 0x88, 0x47, 0x24, 0x90, 0x14, 0x2e, 0xc7, 0x20, 0xcc, 0xcd, 0xe5, 0x20, 0x90, 0x69, 0x39, 0xf8, 0xed, 0x7d, 0x6f, 0x58, 0xcc, 0x61, }; static const unsigned char ecdh_brainpoolp224r1_3803_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224r1_3803_sharedsecret[] = { 0xca, 0xd4, 0x13, 0x47, 0x0e, 0x79, 0x7d, 0xa5, 0x88, 0x20, 0x2c, 0xca, 0xc3, 0xc9, 0x16, 0xde, 0xdf, 0x7c, 0xa0, 0x73, 0x20, 0x49, 0xfc, 0x7e, 0xd7, 0xf2, 0xf0, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3803 = { .name = "ecdh_brainpoolp224r1_3803", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3803_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3803_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3803_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1389 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3804 for ECDH, tcId is 1390 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3804_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3804_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp224r1_3804_sharedsecret[] = { 0x0c, 0x52, 0xcf, 0x1e, 0x5e, 0x3f, 0x3d, 0xa2, 0x1b, 0x60, 0x40, 0x64, 0x4e, 0x0e, 0x9e, 0xec, 0xa2, 0xe0, 0x20, 0xf5, 0x87, 0x2c, 0x43, 0x0c, 0xcc, 0xef, 0x8b, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3804 = { .name = "ecdh_brainpoolp224r1_3804", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3804_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3804_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3804_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1390 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3805 for ECDH, tcId is 1391 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3805_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3805_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3805_sharedsecret[] = { 0xba, 0x92, 0xad, 0x99, 0xf1, 0x4a, 0x0e, 0xe9, 0x15, 0xae, 0xcf, 0x77, 0x6c, 0x4f, 0xc5, 0xfd, 0xec, 0xbb, 0xc8, 0xfd, 0x8e, 0x13, 0xa7, 0x61, 0x0a, 0x44, 0xd2, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3805 = { .name = "ecdh_brainpoolp224r1_3805", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3805_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3805_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3805_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1391 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3806 for ECDH, tcId is 1392 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3806_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3806_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3806_sharedsecret[] = { 0x2b, 0x8d, 0xfc, 0x43, 0x33, 0x27, 0xf6, 0x65, 0xf0, 0x4f, 0x29, 0x29, 0x08, 0x44, 0x12, 0x00, 0x0f, 0x1b, 0x22, 0x49, 0xf9, 0x8b, 0x27, 0x77, 0x84, 0xb3, 0x34, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3806 = { .name = "ecdh_brainpoolp224r1_3806", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3806_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3806_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3806_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1392 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3807 for ECDH, tcId is 1393 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3807_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3807_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3807_sharedsecret[] = { 0xb7, 0x00, 0x58, 0x64, 0x4f, 0xf9, 0x4d, 0xea, 0x13, 0xa4, 0xf3, 0xfe, 0xa5, 0xbb, 0x80, 0x57, 0x91, 0x52, 0x09, 0x5b, 0xa9, 0xd3, 0xcf, 0x63, 0x7f, 0x93, 0x77, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3807 = { .name = "ecdh_brainpoolp224r1_3807", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3807_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3807_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3807_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1393 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3808 for ECDH, tcId is 1394 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3808_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3808_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3808_sharedsecret[] = { 0x27, 0xbd, 0xac, 0x60, 0xe0, 0x5b, 0xa7, 0xac, 0x0f, 0x90, 0x40, 0x50, 0x24, 0x7e, 0x65, 0x3c, 0x89, 0x6b, 0xaf, 0xd4, 0x5b, 0x50, 0xd0, 0x93, 0x85, 0x89, 0x71, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3808 = { .name = "ecdh_brainpoolp224r1_3808", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3808_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3808_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3808_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1394 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3809 for ECDH, tcId is 1395 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3809_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3809_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4a, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_3809_sharedsecret[] = { 0x00, 0xb6, 0xb0, 0x43, 0x47, 0x12, 0x0d, 0xdc, 0x52, 0x28, 0x53, 0x0e, 0xf7, 0x07, 0x58, 0x24, 0xfb, 0xb7, 0x45, 0x94, 0x5e, 0xdd, 0x75, 0xe7, 0x3f, 0x63, 0x7a, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3809 = { .name = "ecdh_brainpoolp224r1_3809", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3809_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3809_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3809_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1395 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3810 for ECDH, tcId is 1396 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3810_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3810_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xce, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_3810_sharedsecret[] = { 0xd5, 0xb3, 0x19, 0xd0, 0xf3, 0x14, 0x30, 0x95, 0xc6, 0xbd, 0x1a, 0xa8, 0x80, 0xc9, 0xdf, 0x6a, 0x49, 0x2c, 0xaa, 0x6d, 0x6d, 0x27, 0x5e, 0xb1, 0x04, 0xa7, 0xab, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3810 = { .name = "ecdh_brainpoolp224r1_3810", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3810_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3810_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3810_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1396 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3811 for ECDH, tcId is 1397 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3811_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3811_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xd6, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_3811_sharedsecret[] = { 0xa0, 0xe1, 0xf7, 0xa1, 0x42, 0xaa, 0xfb, 0x08, 0x56, 0x61, 0x6d, 0x46, 0xb5, 0xf7, 0x6c, 0x22, 0x44, 0x01, 0x0c, 0x9d, 0x46, 0xce, 0xc0, 0x7a, 0xb3, 0x3b, 0xb4, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3811 = { .name = "ecdh_brainpoolp224r1_3811", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3811_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3811_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3811_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1397 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3812 for ECDH, tcId is 1398 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3812_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3812_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa2, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224r1_3812_sharedsecret[] = { 0x6f, 0x1b, 0xaf, 0x2e, 0xd4, 0x2e, 0x35, 0xd7, 0x1b, 0x70, 0x5f, 0x5d, 0xbf, 0xb7, 0xf5, 0x1a, 0x8a, 0xb6, 0x61, 0xbe, 0x91, 0xd8, 0xb2, 0x61, 0x47, 0x69, 0xfa, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3812 = { .name = "ecdh_brainpoolp224r1_3812", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3812_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3812_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3812_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1398 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3813 for ECDH, tcId is 1399 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3813_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3813_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x92, 0xdd, }; static const unsigned char ecdh_brainpoolp224r1_3813_sharedsecret[] = { 0x1b, 0xe0, 0xd5, 0x9d, 0x1f, 0x0f, 0x3a, 0x74, 0x3a, 0xe1, 0x9c, 0x52, 0x46, 0x09, 0x93, 0x91, 0x09, 0x8f, 0x71, 0x44, 0x42, 0x23, 0x83, 0x1e, 0x16, 0xcf, 0xa0, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3813 = { .name = "ecdh_brainpoolp224r1_3813", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3813_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3813_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3813_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1399 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3814 for ECDH, tcId is 1400 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3814_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3814_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x5d, }; static const unsigned char ecdh_brainpoolp224r1_3814_sharedsecret[] = { 0x7e, 0x00, 0xa9, 0x26, 0x72, 0x43, 0xce, 0xa4, 0xba, 0x76, 0x17, 0x86, 0x0b, 0x6f, 0xcf, 0x40, 0x4e, 0x03, 0x57, 0xd1, 0x20, 0x2d, 0x8c, 0x85, 0xdc, 0x5e, 0x07, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3814 = { .name = "ecdh_brainpoolp224r1_3814", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3814_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3814_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3814_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1400 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3815 for ECDH, tcId is 1401 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3815_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3815_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const unsigned char ecdh_brainpoolp224r1_3815_sharedsecret[] = { 0x0c, 0x52, 0xcf, 0x1e, 0x5e, 0x3f, 0x3d, 0xa2, 0x1b, 0x60, 0x40, 0x64, 0x4e, 0x0e, 0x9e, 0xec, 0xa2, 0xe0, 0x20, 0xf5, 0x87, 0x2c, 0x43, 0x0c, 0xcc, 0xef, 0x8b, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3815 = { .name = "ecdh_brainpoolp224r1_3815", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3815_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3815_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3815_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1401 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3816 for ECDH, tcId is 1402 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3816_peerpubkey[] = { 0xaa, 0xf0, 0x40, 0xd6, 0xca, 0xd2, 0xc1, 0x8b, 0x95, 0x3d, 0xe4, 0x64, 0x20, 0xb3, 0x87, 0xfa, 0x83, 0x47, 0x4d, 0x74, 0xc6, 0x76, 0x7e, 0xd7, 0x08, 0xb9, 0xd1, 0x26, 0x8c, 0x82, 0xa0, 0x93, 0x10, 0xbc, 0x35, 0xb5, 0xca, 0xf2, 0xd9, 0xb4, 0x63, 0x18, 0xb8, 0x95, 0xe4, 0xc0, 0x97, 0xed, 0x50, 0x1d, 0x2d, 0xcb, 0x14, 0xd3, 0x0a, 0x66, }; static const unsigned char ecdh_brainpoolp224r1_3816_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9d, }; static const unsigned char ecdh_brainpoolp224r1_3816_sharedsecret[] = { 0xaa, 0xc6, 0xa8, 0x05, 0xf4, 0xce, 0x1b, 0x6d, 0xcc, 0x13, 0xec, 0x4e, 0xd1, 0x6a, 0x88, 0x9d, 0xc4, 0xd7, 0x08, 0xf7, 0xf6, 0xf1, 0xe2, 0x34, 0x71, 0x33, 0x83, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3816 = { .name = "ecdh_brainpoolp224r1_3816", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3816_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3816_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3816_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 1402 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3817 for ECDH, tcId is 1403 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3817_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3817_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3817 = { .name = "ecdh_brainpoolp224r1_3817", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3817_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3817_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1403 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3818 for ECDH, tcId is 1404 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3818_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_3818_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3818 = { .name = "ecdh_brainpoolp224r1_3818", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3818_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3818_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1404 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3819 for ECDH, tcId is 1405 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3819_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_3819_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3819 = { .name = "ecdh_brainpoolp224r1_3819", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3819_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3819_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1405 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3820 for ECDH, tcId is 1406 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3820_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3820_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3820 = { .name = "ecdh_brainpoolp224r1_3820", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3820_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3820_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1406 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3821 for ECDH, tcId is 1407 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3821_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3821_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3821 = { .name = "ecdh_brainpoolp224r1_3821", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3821_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3821_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1407 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3822 for ECDH, tcId is 1408 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3822_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_3822_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3822 = { .name = "ecdh_brainpoolp224r1_3822", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3822_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3822_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1408 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3823 for ECDH, tcId is 1409 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3823_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_3823_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3823 = { .name = "ecdh_brainpoolp224r1_3823", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3823_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3823_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1409 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3824 for ECDH, tcId is 1410 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3824_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3824_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3824 = { .name = "ecdh_brainpoolp224r1_3824", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3824_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3824_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1410 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3825 for ECDH, tcId is 1411 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3825_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3825_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3825 = { .name = "ecdh_brainpoolp224r1_3825", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3825_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3825_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1411 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3826 for ECDH, tcId is 1412 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3826_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_3826_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3826 = { .name = "ecdh_brainpoolp224r1_3826", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3826_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3826_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1412 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3827 for ECDH, tcId is 1413 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3827_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_3827_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3827 = { .name = "ecdh_brainpoolp224r1_3827", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3827_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3827_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1413 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3828 for ECDH, tcId is 1414 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3828_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3828_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3828 = { .name = "ecdh_brainpoolp224r1_3828", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3828_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3828_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1414 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3829 for ECDH, tcId is 1415 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3829_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3829_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3829 = { .name = "ecdh_brainpoolp224r1_3829", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3829_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3829_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1415 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3830 for ECDH, tcId is 1416 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3830_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224r1_3830_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3830 = { .name = "ecdh_brainpoolp224r1_3830", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3830_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3830_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1416 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3831 for ECDH, tcId is 1417 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3831_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224r1_3831_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3831 = { .name = "ecdh_brainpoolp224r1_3831", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3831_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3831_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1417 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3832 for ECDH, tcId is 1418 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3832_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224r1_3832_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3832 = { .name = "ecdh_brainpoolp224r1_3832", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3832_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3832_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1418 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3833 for ECDH, tcId is 1420 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3833_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb3, }; static const unsigned char ecdh_brainpoolp224r1_3833_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3833 = { .name = "ecdh_brainpoolp224r1_3833", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3833_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3833_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 1420 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3834 for ECDH, tcId is 1421 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3834_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224r1_3834_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3834 = { .name = "ecdh_brainpoolp224r1_3834", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3834_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3834_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 1421 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3835 for ECDH, tcId is 1424 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3835_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3835_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3835_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3835 = { .name = "ecdh_brainpoolp224r1_3835", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3835_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3835_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3835_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 1424 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3836 for ECDH, tcId is 1425 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3836_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3836_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3836_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3836 = { .name = "ecdh_brainpoolp224r1_3836", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3836_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3836_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3836_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 5290290092223871682666367384584369978999613398297400491171, tcId is 1425 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3837 for ECDH, tcId is 1426 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3837_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3837_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3837_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3837 = { .name = "ecdh_brainpoolp224r1_3837", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3837_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3837_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3837_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 1426 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3838 for ECDH, tcId is 1427 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3838_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3838_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3838_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3838 = { .name = "ecdh_brainpoolp224r1_3838", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3838_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3838_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3838_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 1427 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3839 for ECDH, tcId is 1430 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3839_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3839_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3839_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3839 = { .name = "ecdh_brainpoolp224r1_3839", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3839_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3839_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3839_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 1430 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3840 for ECDH, tcId is 1432 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3840_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3840_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3840_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3840 = { .name = "ecdh_brainpoolp224r1_3840", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3840_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3840_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3840_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 1432 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3841 for ECDH, tcId is 1434 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3841_peerpubkey[] = { 0x07, 0x4f, 0x56, 0xdc, 0x2e, 0xa6, 0x48, 0xef, 0x89, 0xc3, 0xb7, 0x2e, 0x23, 0xbb, 0xd2, 0xda, 0x36, 0xf6, 0x02, 0x43, 0xe4, 0xd2, 0x06, 0x7b, 0x70, 0x60, 0x4a, 0xf1, 0xc2, 0x16, 0x5c, 0xec, 0x2f, 0x86, 0x60, 0x3d, 0x60, 0xc8, 0xa6, 0x11, 0xd5, 0xb8, 0x4b, 0xa3, 0xd9, 0x1d, 0xfe, 0x1a, 0x48, 0x08, 0x25, 0xbc, 0xc4, 0xaf, 0x3b, 0xcf, }; static const unsigned char ecdh_brainpoolp224r1_3841_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3841 = { .name = "ecdh_brainpoolp224r1_3841", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3841_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3841_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp224r1, tcId is 1434 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3842 for ECDH, tcId is 1437 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3842_peerpubkey[] = { 0xa9, 0x9e, 0x05, 0x08, 0xee, 0x1d, 0x6f, 0xa2, 0xc3, 0xe4, 0x69, 0x00, 0xb7, 0x13, 0x0f, 0x49, 0x06, 0x89, 0x6b, 0x1e, 0xdb, 0x6e, 0xbc, 0x8e, 0x53, 0x9a, 0x69, 0x38, 0x26, 0xd7, 0xc3, 0x26, 0x5c, 0xbd, 0x14, 0xcc, 0xe5, 0xbb, 0xea, 0xa7, 0x93, 0x0c, 0x2b, 0x53, 0xee, 0x20, 0x22, 0xf4, 0x3a, 0xd7, 0x44, 0x01, 0xb5, 0xfe, 0xf1, 0xb1, }; static const unsigned char ecdh_brainpoolp224r1_3842_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const unsigned char ecdh_brainpoolp224r1_3842_sharedsecret[] = { 0x7e, 0x1b, 0x3b, 0xaf, 0x50, 0xc3, 0xb7, 0x03, 0x24, 0x16, 0x4d, 0xf3, 0x97, 0x14, 0x6f, 0x3f, 0x6b, 0x5f, 0xcf, 0x96, 0x52, 0x69, 0x9b, 0x23, 0x47, 0xec, 0xba, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3842 = { .name = "ecdh_brainpoolp224r1_3842", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3842_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3842_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224r1_3842_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 1437 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3843 for ECDH, tcId is 1439 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3843_peerpubkey[] = { 0x00, 0x27, 0x18, 0x94, 0x2d, 0x4d, 0x3f, 0x88, 0x3d, 0xff, 0xbd, 0xbe, 0xa1, 0x8a, 0x5b, 0x9a, 0xf7, 0x3a, 0xc8, 0x5e, 0x64, 0x80, 0x76, 0xb2, 0xc0, 0xb3, 0x33, 0xde, 0x4c, 0xc8, 0xc1, 0xd9, 0xc6, 0x12, 0x7a, 0xb6, 0x88, 0x0b, 0x90, 0x3a, 0xc4, 0x4e, 0x50, 0x73, 0x0c, 0x5c, 0xe1, 0xd4, 0xb5, 0x2b, 0x3b, 0x02, 0x68, 0x9c, 0x7f, 0x0b, }; static const unsigned char ecdh_brainpoolp224r1_3843_privkey[] = { 0x95, 0x89, 0xeb, 0xd7, 0x88, 0xc5, 0x4b, 0x10, 0x02, 0xd7, 0xb6, 0x0e, 0xe3, 0xc6, 0xda, 0xa2, 0xca, 0xd2, 0x55, 0x88, 0x2d, 0xf7, 0x7b, 0x61, 0x08, 0xdd, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3843 = { .name = "ecdh_brainpoolp224r1_3843", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3843_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3843_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP224t1, tcId is 1439 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3844 for ECDH, tcId is 1440 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3844_peerpubkey[] = { 0x99, 0x2f, 0x4a, 0x20, 0xb0, 0xe5, 0x4d, 0x67, 0x47, 0x37, 0xb7, 0x9d, 0xa8, 0xe3, 0x1c, 0xa6, 0xc6, 0xb3, 0xf8, 0x6d, 0x5f, 0xed, 0x22, 0xa8, 0x86, 0x1c, 0xfc, 0x1a, 0x3a, 0x57, 0xf7, 0xa9, 0x59, 0x2e, 0xc7, 0xb7, 0x0a, 0xfa, 0x98, 0x13, 0x99, 0xd3, 0x0b, 0x9c, 0xc7, 0xf7, 0xdd, 0x31, 0xb6, 0x20, 0x0f, 0x33, 0xa7, 0xd4, 0xb6, 0x96, }; static const unsigned char ecdh_brainpoolp224r1_3844_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3844 = { .name = "ecdh_brainpoolp224r1_3844", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3844_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3844_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224r1, tcId is 1440 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3845 for ECDH, tcId is 1445 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3845_peerpubkey[] = { 0x51, 0xd0, 0x87, 0x9c, 0xcb, 0xdc, 0x69, 0x7e, 0x40, 0xe6, 0xb6, 0x04, 0x39, 0x26, 0x10, 0xf6, 0x9a, 0x66, 0x7f, 0xee, 0xbb, 0x99, 0x83, 0x09, 0xbc, 0x71, 0xfa, 0x63, 0x34, 0x18, 0x94, 0x47, 0xb7, 0x50, 0xd3, 0x19, 0x37, 0x46, 0x1a, 0xb8, 0x80, 0x81, 0x1c, 0xd9, 0xa8, 0x3d, 0x69, 0x7b, 0x33, 0x3c, 0x2a, 0x28, 0xf3, 0x85, 0xce, 0xd8, }; static const unsigned char ecdh_brainpoolp224r1_3845_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3845 = { .name = "ecdh_brainpoolp224r1_3845", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3845_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3845_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224k1, tcId is 1445 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3846 for ECDH, tcId is 1450 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3846_peerpubkey[] = { 0x74, 0xec, 0x40, 0x11, 0xcf, 0x97, 0x6c, 0x71, 0x51, 0xf8, 0xcc, 0xaa, 0x8b, 0x75, 0x3b, 0x34, 0xc0, 0x8e, 0x31, 0xca, 0xbf, 0x3e, 0xfc, 0xc5, 0xbb, 0x99, 0x7c, 0xd2, 0x62, 0xc3, 0x27, 0x37, 0x50, 0xab, 0xfc, 0xb8, 0xf7, 0x6b, 0xc7, 0x85, 0xc0, 0x56, 0xa9, 0x24, 0xe7, 0x60, 0xd3, 0xd1, 0x55, 0xbc, 0x5a, 0x72, 0x81, 0xa5, 0xb3, 0x45, }; static const unsigned char ecdh_brainpoolp224r1_3846_privkey[] = { 0xa4, 0x5d, 0x3c, 0x18, 0x1a, 0xb1, 0x8b, 0xbe, 0xb6, 0x97, 0xc2, 0x4c, 0x19, 0x98, 0x54, 0xd4, 0xe4, 0x50, 0x10, 0x7d, 0xc4, 0xe3, 0x31, 0x83, 0xbd, 0xa3, 0x16, 0x17, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3846 = { .name = "ecdh_brainpoolp224r1_3846", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3846_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3846_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224t1, tcId is 1450 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3847 for ECDH, tcId is 1455 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3847_peerpubkey[] = { 0xcf, 0xa2, 0x45, 0x5a, 0x3f, 0xc3, 0x49, 0x1d, 0x24, 0x29, 0x1d, 0xe3, 0x58, 0x8e, 0x0e, 0xb4, 0x60, 0x63, 0xc0, 0x44, 0x30, 0xd7, 0x97, 0x5b, 0xa7, 0x1d, 0xf0, 0x1d, }; static const unsigned char ecdh_brainpoolp224r1_3847_privkey[] = { 0x54, 0x5f, 0x59, 0x60, 0x12, 0x97, 0xfc, 0xc8, 0xd7, 0x34, 0xf4, 0x3b, 0xeb, 0xc2, 0xd7, 0x38, 0x66, 0xb1, 0x6a, 0x3a, 0xdb, 0x88, 0x52, 0x11, 0xae, 0x1a, 0x60, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3847 = { .name = "ecdh_brainpoolp224r1_3847", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3847_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3847_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 1455 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3848 for ECDH, tcId is 1456 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3848_peerpubkey[] = { 0x9f, 0x98, 0xbb, 0xa2, 0xa3, 0x31, 0xe3, 0xa3, 0x34, 0xc5, 0xea, 0x7f, 0x89, 0x37, 0xa8, 0x55, 0x80, 0xe5, 0x57, 0xb3, 0x53, 0xe0, 0x6f, 0x3e, 0xd8, 0xdc, 0xd1, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_3848_privkey[] = { 0x7a, 0xbd, 0xe5, 0xe6, 0xce, 0x42, 0x08, 0x1a, 0xfc, 0x61, 0x94, 0x93, 0x07, 0x10, 0xbf, 0xd1, 0x08, 0xb9, 0x1a, 0x7f, 0xc3, 0x4d, 0x2c, 0xaf, 0x52, 0xcd, 0xc5, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3848 = { .name = "ecdh_brainpoolp224r1_3848", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3848_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3848_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1456 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3849 for ECDH, tcId is 1457 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3849_peerpubkey[] = { 0x9f, 0x98, 0xbb, 0xa2, 0xa3, 0x31, 0xe3, 0xa3, 0x34, 0xc5, 0xea, 0x7f, 0x89, 0x37, 0xa8, 0x55, 0x80, 0xe5, 0x57, 0xb3, 0x53, 0xe0, 0x6f, 0x3e, 0xd8, 0xdc, 0xd1, 0x95, }; static const unsigned char ecdh_brainpoolp224r1_3849_privkey[] = { 0x7a, 0xbd, 0xe5, 0xe6, 0xce, 0x42, 0x08, 0x1a, 0xfc, 0x61, 0x94, 0x93, 0x07, 0x10, 0xbf, 0xd1, 0x08, 0xb9, 0x1a, 0x7f, 0xc3, 0x4d, 0x2c, 0xaf, 0x52, 0xcd, 0xc5, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3849 = { .name = "ecdh_brainpoolp224r1_3849", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3849_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3849_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1457 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3850 for ECDH, tcId is 1458 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3850_peerpubkey[] = { 0x12, 0x88, 0x49, 0xd9, 0xe5, 0x73, 0x1a, 0x42, 0x46, 0x5e, 0x35, 0xae, 0xbd, 0x7b, 0x6d, 0xb3, 0xf2, 0x4e, 0x13, 0x66, 0xf0, 0xad, 0xe2, 0x9e, 0x82, 0x1e, 0x1c, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_3850_privkey[] = { 0x72, 0x0c, 0x41, 0xbb, 0xb1, 0x5e, 0x52, 0x47, 0xed, 0x81, 0xe2, 0x69, 0xb4, 0x21, 0x77, 0x1e, 0x6b, 0xe5, 0x13, 0x4b, 0x11, 0xf3, 0x54, 0x2e, 0xe8, 0x05, 0x91, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3850 = { .name = "ecdh_brainpoolp224r1_3850", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3850_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3850_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1458 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3851 for ECDH, tcId is 1459 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3851_peerpubkey[] = { 0xab, 0xef, 0xd2, 0xcf, 0xd3, 0xfa, 0xf7, 0x76, 0x66, 0xc7, 0xe1, 0xad, 0x81, 0x41, 0x4d, 0x63, 0x36, 0xfe, 0xa6, 0xa6, 0xb4, 0x51, 0x79, 0xec, 0xcf, 0xfc, 0xc9, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_3851_privkey[] = { 0x72, 0xad, 0xf4, 0x4f, 0x80, 0x84, 0x19, 0x54, 0x9d, 0xe6, 0x9d, 0x89, 0xd3, 0x7b, 0x75, 0x08, 0xff, 0x52, 0x8c, 0x43, 0x95, 0x80, 0xe5, 0xd0, 0x03, 0x1e, 0x84, 0x2b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3851 = { .name = "ecdh_brainpoolp224r1_3851", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3851_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3851_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1459 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3852 for ECDH, tcId is 1460 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3852_peerpubkey[] = { 0xab, 0xef, 0xd2, 0xcf, 0xd3, 0xfa, 0xf7, 0x76, 0x66, 0xc7, 0xe1, 0xad, 0x81, 0x41, 0x4d, 0x63, 0x36, 0xfe, 0xa6, 0xa6, 0xb4, 0x51, 0x79, 0xec, 0xcf, 0xfc, 0xc9, 0x5a, }; static const unsigned char ecdh_brainpoolp224r1_3852_privkey[] = { 0x72, 0xad, 0xf4, 0x4f, 0x80, 0x84, 0x19, 0x54, 0x9d, 0xe6, 0x9d, 0x89, 0xd3, 0x7b, 0x75, 0x08, 0xff, 0x52, 0x8c, 0x43, 0x95, 0x80, 0xe5, 0xd0, 0x03, 0x1e, 0x84, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3852 = { .name = "ecdh_brainpoolp224r1_3852", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3852_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3852_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1460 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3853 for ECDH, tcId is 1461 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) static const unsigned char ecdh_brainpoolp224r1_3853_peerpubkey[] = { 0x12, 0x88, 0x49, 0xd9, 0xe5, 0x73, 0x1a, 0x42, 0x46, 0x5e, 0x35, 0xae, 0xbd, 0x7b, 0x6d, 0xb3, 0xf2, 0x4e, 0x13, 0x66, 0xf0, 0xad, 0xe2, 0x9e, 0x82, 0x1e, 0x1c, 0x71, }; static const unsigned char ecdh_brainpoolp224r1_3853_privkey[] = { 0x72, 0x0c, 0x41, 0xbb, 0xb1, 0x5e, 0x52, 0x47, 0xed, 0x81, 0xe2, 0x69, 0xb4, 0x21, 0x77, 0x1e, 0x6b, 0xe5, 0x13, 0x4b, 0x11, 0xf3, 0x54, 0x2e, 0xe8, 0x05, 0x91, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp224r1_3853 = { .name = "ecdh_brainpoolp224r1_3853", .ecdh_alg = ECCCDH, .curve = &brainpoolp224r1_str_params, .peerpubkey = ecdh_brainpoolp224r1_3853_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224r1_3853_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1461 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) */ /* Test 3854 for ECDH, tcId is 1462 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3854_peerpubkey[] = { 0x4c, 0xee, 0x5e, 0x10, 0x72, 0xb3, 0x0d, 0x64, 0xf7, 0x0b, 0xf0, 0x19, 0x58, 0xe2, 0x2c, 0x04, 0x4a, 0x21, 0x27, 0xdd, 0xd7, 0x44, 0xce, 0x30, 0x60, 0xc1, 0x59, 0x90, 0xff, 0x0f, 0xe1, 0x14, 0x8c, 0x6e, 0xe5, 0x65, 0x59, 0x82, 0x9a, 0x5a, 0x84, 0xdd, 0x5c, 0x86, 0x46, 0xee, 0x0c, 0x43, 0xd0, 0xb7, 0xc5, 0x01, 0x81, 0xf2, 0x34, 0xec, 0x09, 0xeb, 0xa4, 0x3b, 0xc8, 0x6b, 0x16, 0x9e, }; static const unsigned char ecdh_brainpoolp256r1_3854_privkey[] = { 0x01, 0x13, 0xdb, 0x97, 0x9e, 0x07, 0xd9, 0xc8, 0xfd, 0xbe, 0xa5, 0xb0, 0x6a, 0x68, 0x2c, 0x0d, 0x2a, 0xd6, 0x71, 0x70, 0xff, 0xcb, 0x65, 0xd7, 0x54, 0x7d, 0x8c, 0x44, 0x2d, 0x3a, 0xc2, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_3854_sharedsecret[] = { 0x3f, 0x00, 0xd9, 0xaf, 0x76, 0x07, 0xfd, 0x32, 0x80, 0x9e, 0xf7, 0xa4, 0xa3, 0x0b, 0x39, 0x6e, 0x3d, 0xa9, 0xf4, 0x65, 0xad, 0xf2, 0x05, 0x97, 0xc9, 0xe2, 0x04, 0x6f, 0x16, 0xa7, 0xb1, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3854 = { .name = "ecdh_brainpoolp256r1_3854", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3854_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3854_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3854_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1462 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3855 for ECDH, tcId is 1463 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3855_peerpubkey[] = { 0x4c, 0xee, 0x5e, 0x10, 0x72, 0xb3, 0x0d, 0x64, 0xf7, 0x0b, 0xf0, 0x19, 0x58, 0xe2, 0x2c, 0x04, 0x4a, 0x21, 0x27, 0xdd, 0xd7, 0x44, 0xce, 0x30, 0x60, 0xc1, 0x59, 0x90, 0xff, 0x0f, 0xe1, 0x14, }; static const unsigned char ecdh_brainpoolp256r1_3855_privkey[] = { 0x01, 0x13, 0xdb, 0x97, 0x9e, 0x07, 0xd9, 0xc8, 0xfd, 0xbe, 0xa5, 0xb0, 0x6a, 0x68, 0x2c, 0x0d, 0x2a, 0xd6, 0x71, 0x70, 0xff, 0xcb, 0x65, 0xd7, 0x54, 0x7d, 0x8c, 0x44, 0x2d, 0x3a, 0xc2, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_3855_sharedsecret[] = { 0x3f, 0x00, 0xd9, 0xaf, 0x76, 0x07, 0xfd, 0x32, 0x80, 0x9e, 0xf7, 0xa4, 0xa3, 0x0b, 0x39, 0x6e, 0x3d, 0xa9, 0xf4, 0x65, 0xad, 0xf2, 0x05, 0x97, 0xc9, 0xe2, 0x04, 0x6f, 0x16, 0xa7, 0xb1, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3855 = { .name = "ecdh_brainpoolp256r1_3855", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3855_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3855_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3855_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 1463 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3856 for ECDH, tcId is 1464 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3856_peerpubkey[] = { 0x12, 0x84, 0xe5, 0x0e, 0xcd, 0xa6, 0xc7, 0xc3, 0xa1, 0x5a, 0xe7, 0x9c, 0x31, 0x8d, 0xec, 0x59, 0x1d, 0xa1, 0x97, 0xfc, 0x32, 0xb7, 0xa0, 0x46, 0xb1, 0x68, 0x77, 0x40, 0x13, 0xe5, 0x46, 0x87, 0x15, 0x6d, 0x96, 0xfe, 0x07, 0x65, 0xea, 0x03, 0x40, 0x4e, 0xcf, 0x5f, 0x6e, 0xfc, 0x74, 0xb0, 0x79, 0x2c, 0x05, 0xc1, 0x1f, 0x9a, 0x68, 0x3b, 0x97, 0xf5, 0xc7, 0xca, 0x74, 0xf8, 0xa8, 0xc2, }; static const unsigned char ecdh_brainpoolp256r1_3856_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3856_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3856 = { .name = "ecdh_brainpoolp256r1_3856", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3856_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3856_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3856_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1464 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3857 for ECDH, tcId is 1465 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3857_peerpubkey[] = { 0x98, 0x57, 0x74, 0x99, 0xd7, 0xa4, 0x2f, 0x4d, 0xfe, 0x44, 0xc2, 0x75, 0x7f, 0xd9, 0x93, 0x2e, 0xc7, 0xe4, 0x5a, 0x0d, 0x90, 0x2e, 0x0b, 0xf1, 0xfe, 0x4a, 0xc0, 0x9e, 0x70, 0x5e, 0xb8, 0xe1, 0x2d, 0x9b, 0x9a, 0x00, 0x92, 0xc9, 0xc9, 0x2a, 0x66, 0x1e, 0x24, 0xb2, 0x13, 0x8b, 0x6a, 0x77, 0x83, 0x24, 0xc9, 0xdb, 0x81, 0x5e, 0xb0, 0x56, 0x21, 0xc5, 0x4c, 0xd4, 0xd4, 0xb2, 0xe8, 0x87, }; static const unsigned char ecdh_brainpoolp256r1_3857_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3857_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3857 = { .name = "ecdh_brainpoolp256r1_3857", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3857_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3857_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3857_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1465 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3858 for ECDH, tcId is 1466 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3858_peerpubkey[] = { 0x57, 0x60, 0xaa, 0x78, 0xcf, 0xb0, 0xdf, 0x84, 0xfc, 0xc2, 0xc4, 0x42, 0x32, 0x1a, 0x5c, 0x27, 0x8f, 0xca, 0x24, 0x5a, 0xa9, 0x0a, 0x4f, 0xcb, 0x33, 0xad, 0x8b, 0xbb, 0xe6, 0xe8, 0x47, 0xdf, 0x8b, 0x8f, 0x10, 0x2d, 0x94, 0x8a, 0x52, 0xb3, 0xc2, 0x1f, 0x70, 0x06, 0x7e, 0x10, 0x6d, 0xaf, 0x10, 0x62, 0x61, 0x13, 0xb8, 0xdd, 0xc0, 0x8e, 0x50, 0xfa, 0xd4, 0xdf, 0x13, 0xf9, 0x0b, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_3858_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3858_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3858 = { .name = "ecdh_brainpoolp256r1_3858", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3858_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3858_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3858_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1466 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3859 for ECDH, tcId is 1467 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3859_peerpubkey[] = { 0x0b, 0x3e, 0x56, 0x74, 0x7e, 0xe2, 0xa8, 0x1e, 0xdc, 0x48, 0x7f, 0x7b, 0x25, 0x7a, 0xfc, 0x58, 0x86, 0xf3, 0xd8, 0x0e, 0x98, 0x48, 0x47, 0x2a, 0x94, 0x45, 0x90, 0xea, 0xcf, 0x71, 0x17, 0x2f, 0x57, 0x86, 0x41, 0x0b, 0x71, 0xce, 0x22, 0x68, 0x24, 0xcd, 0x3f, 0x0e, 0xf4, 0x62, 0x18, 0x5b, 0x25, 0x57, 0xc9, 0xe8, 0xe1, 0xf0, 0x2c, 0x65, 0x4e, 0x84, 0x23, 0x48, 0x83, 0x31, 0xb6, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_3859_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3859_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3859 = { .name = "ecdh_brainpoolp256r1_3859", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3859_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3859_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3859_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1467 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3860 for ECDH, tcId is 1468 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3860_peerpubkey[] = { 0x85, 0x4a, 0x72, 0xd5, 0xfb, 0xea, 0xcf, 0xc5, 0x7a, 0x5a, 0xea, 0x2e, 0x38, 0x6e, 0x54, 0x9b, 0xab, 0x87, 0xb8, 0xee, 0x31, 0x3e, 0xe6, 0xc1, 0xf1, 0x2c, 0xf2, 0x67, 0x82, 0x69, 0x40, 0x76, 0x9f, 0x1c, 0x56, 0x48, 0x6b, 0x0a, 0xc2, 0xdc, 0xd9, 0x6b, 0xc0, 0x18, 0xf5, 0xf4, 0x27, 0x29, 0xcc, 0x07, 0x3c, 0x62, 0x91, 0xbd, 0xe8, 0xc3, 0xe7, 0xc1, 0x69, 0x32, 0x9c, 0x79, 0x81, 0x42, }; static const unsigned char ecdh_brainpoolp256r1_3860_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3860_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3860 = { .name = "ecdh_brainpoolp256r1_3860", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3860_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3860_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3860_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1468 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3861 for ECDH, tcId is 1469 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3861_peerpubkey[] = { 0xa7, 0x04, 0x3c, 0xb0, 0x65, 0x91, 0x6e, 0x17, 0x38, 0x37, 0xbc, 0x1a, 0x10, 0x95, 0x26, 0xe9, 0x46, 0xb6, 0x60, 0x08, 0x39, 0x8e, 0x69, 0x7b, 0x40, 0x43, 0x8a, 0x3e, 0x0a, 0x2b, 0x0d, 0x9d, 0x56, 0xc6, 0xfa, 0xa8, 0x3d, 0x8a, 0x4c, 0x4b, 0x9e, 0x2a, 0x9b, 0x4a, 0x69, 0x17, 0xa4, 0x5a, 0xee, 0xe6, 0x14, 0x91, 0xf4, 0xf4, 0xe4, 0x7e, 0xfe, 0xbc, 0xcb, 0x71, 0xbe, 0xf8, 0xde, 0xfe, }; static const unsigned char ecdh_brainpoolp256r1_3861_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3861_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3861 = { .name = "ecdh_brainpoolp256r1_3861", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3861_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3861_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3861_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1469 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3862 for ECDH, tcId is 1470 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3862_peerpubkey[] = { 0x94, 0xb2, 0x31, 0xb2, 0x18, 0x95, 0x76, 0xb8, 0x4a, 0xa5, 0x91, 0x1e, 0x80, 0xda, 0x30, 0x74, 0xa4, 0xd1, 0x69, 0x88, 0x04, 0x1f, 0x90, 0x8e, 0x6b, 0x6a, 0x19, 0x9c, 0x16, 0xe1, 0xf7, 0xed, 0x26, 0xfb, 0x91, 0x84, 0x97, 0x1b, 0xc6, 0xf7, 0x1c, 0xbc, 0xed, 0x68, 0x36, 0xb3, 0x10, 0x7b, 0xb1, 0x70, 0x61, 0xa4, 0x40, 0xab, 0xca, 0x27, 0xe5, 0xb4, 0x42, 0x52, 0xbf, 0x39, 0xc6, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_3862_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3862_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3862 = { .name = "ecdh_brainpoolp256r1_3862", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3862_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3862_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3862_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1470 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3863 for ECDH, tcId is 1471 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3863_peerpubkey[] = { 0x7d, 0xc0, 0xf2, 0x9a, 0x55, 0x42, 0xc7, 0xd6, 0x77, 0x93, 0xf5, 0x2d, 0xc1, 0xde, 0x98, 0x6b, 0xce, 0xe4, 0x5d, 0x75, 0x71, 0x39, 0x5c, 0xab, 0x10, 0x28, 0x93, 0xaa, 0x2a, 0x5b, 0xf8, 0xcf, 0x7d, 0x4b, 0x84, 0x43, 0x79, 0x3b, 0x13, 0x74, 0x91, 0x73, 0x6b, 0x26, 0x06, 0x1e, 0xbd, 0x70, 0x5d, 0x19, 0x44, 0x05, 0xcf, 0x10, 0x8b, 0x74, 0x1c, 0xd1, 0xc5, 0xb4, 0x2f, 0x44, 0xf6, 0xab, }; static const unsigned char ecdh_brainpoolp256r1_3863_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3863_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3863 = { .name = "ecdh_brainpoolp256r1_3863", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3863_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3863_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3863_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1471 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3864 for ECDH, tcId is 1472 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3864_peerpubkey[] = { 0x83, 0x47, 0x77, 0x21, 0x29, 0x88, 0xed, 0x96, 0x2b, 0xc9, 0xd5, 0x7e, 0x98, 0xf2, 0x0b, 0xcf, 0xa3, 0x4d, 0x9c, 0x65, 0x87, 0x38, 0x1d, 0xb4, 0x8e, 0x48, 0xce, 0x20, 0xa1, 0xce, 0x96, 0x1d, 0x69, 0x85, 0xed, 0x4f, 0x21, 0xbb, 0x01, 0x97, 0x91, 0xa6, 0xf0, 0x8c, 0x36, 0xc4, 0x29, 0x24, 0xcd, 0x72, 0xfe, 0x65, 0x3c, 0x90, 0x88, 0x2b, 0x97, 0x47, 0x05, 0x9b, 0x0c, 0xc1, 0xea, 0x17, }; static const unsigned char ecdh_brainpoolp256r1_3864_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3864_sharedsecret[] = { 0x23, 0x10, 0xa8, 0x7d, 0xfe, 0x5f, 0xc2, 0x5d, 0x0c, 0x0f, 0x51, 0xf0, 0xd3, 0x79, 0xef, 0x19, 0xbe, 0x68, 0x7b, 0xef, 0x34, 0x79, 0x5d, 0xc2, 0xfd, 0x3f, 0xcc, 0x2d, 0x1c, 0xfd, 0xf1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3864 = { .name = "ecdh_brainpoolp256r1_3864", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3864_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3864_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3864_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1472 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3865 for ECDH, tcId is 1473 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3865_peerpubkey[] = { 0xa6, 0x7c, 0xcc, 0xc5, 0xe7, 0xb6, 0x48, 0x89, 0xf5, 0xa8, 0xe5, 0xc5, 0x2c, 0xb8, 0x75, 0x25, 0x8f, 0x52, 0x57, 0x54, 0xcc, 0xb6, 0xae, 0x2c, 0x75, 0xc8, 0xb9, 0xde, 0x82, 0x1c, 0x78, 0x0c, 0x7f, 0x38, 0xe6, 0xd2, 0x38, 0xe5, 0x57, 0x25, 0x25, 0x0f, 0xc5, 0x3f, 0x67, 0x51, 0x4a, 0x98, 0x52, 0xff, 0x5d, 0xd2, 0xee, 0x1a, 0xcf, 0x58, 0x22, 0x54, 0xcb, 0xa7, 0xde, 0xb7, 0x22, 0x67, }; static const unsigned char ecdh_brainpoolp256r1_3865_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3865_sharedsecret[] = { 0x33, 0x67, 0xa0, 0xbb, 0x5a, 0x87, 0x07, 0x24, 0x18, 0x33, 0x4c, 0xea, 0xd5, 0x22, 0x7a, 0xed, 0xfc, 0x06, 0x3f, 0x1a, 0x73, 0x40, 0xdc, 0x1c, 0x7c, 0x8e, 0x57, 0x6e, 0xb4, 0x11, 0x8e, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3865 = { .name = "ecdh_brainpoolp256r1_3865", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3865_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3865_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3865_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1473 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3866 for ECDH, tcId is 1474 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3866_peerpubkey[] = { 0x4f, 0xe3, 0x9f, 0xe9, 0x09, 0xda, 0x0a, 0x3e, 0x5a, 0x05, 0xd4, 0xf9, 0x71, 0x76, 0x61, 0xc8, 0xf9, 0xaf, 0x24, 0x07, 0x1d, 0x71, 0x1d, 0xf1, 0x5d, 0xe2, 0x25, 0xe9, 0x8d, 0x5e, 0xdc, 0xe4, 0x62, 0xac, 0xa0, 0xb1, 0xff, 0xb6, 0x6a, 0x09, 0xb7, 0x69, 0xa2, 0xc2, 0x33, 0x14, 0xd5, 0x11, 0x6f, 0xb3, 0x0b, 0x71, 0x45, 0x6c, 0xa7, 0x98, 0x37, 0x0a, 0xba, 0xd1, 0x00, 0x97, 0xd4, 0x53, }; static const unsigned char ecdh_brainpoolp256r1_3866_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3866_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3866 = { .name = "ecdh_brainpoolp256r1_3866", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3866_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3866_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3866_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1474 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3867 for ECDH, tcId is 1475 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3867_peerpubkey[] = { 0x96, 0xc1, 0x3e, 0x3b, 0x6f, 0x62, 0x6c, 0xc2, 0xdd, 0x89, 0x99, 0x2e, 0xc3, 0x4b, 0x39, 0x85, 0x19, 0x38, 0xa6, 0xc6, 0x01, 0x5c, 0x1e, 0xe4, 0x88, 0x97, 0x95, 0xdc, 0x53, 0x6c, 0x14, 0x15, 0x33, 0x08, 0x88, 0x34, 0x4f, 0xfe, 0x63, 0xe0, 0xd5, 0x4e, 0x4f, 0x93, 0x65, 0xdd, 0x20, 0x90, 0x13, 0x93, 0x3a, 0x0a, 0x84, 0xd5, 0xe3, 0x04, 0x24, 0xf5, 0x16, 0xb8, 0x71, 0x89, 0xb8, 0x35, }; static const unsigned char ecdh_brainpoolp256r1_3867_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3867_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3867 = { .name = "ecdh_brainpoolp256r1_3867", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3867_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3867_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3867_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1475 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3868 for ECDH, tcId is 1476 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3868_peerpubkey[] = { 0x06, 0xd3, 0x93, 0x9c, 0x4c, 0x91, 0x6d, 0xa1, 0x03, 0xa5, 0xf1, 0x54, 0x38, 0xee, 0x2b, 0x08, 0x63, 0xcf, 0x18, 0xb2, 0x69, 0xd3, 0xd1, 0xa6, 0x6c, 0xcf, 0x68, 0x4f, 0x2f, 0xd5, 0x68, 0xcf, 0x72, 0x35, 0xf3, 0xba, 0xc7, 0x1d, 0x7d, 0x0f, 0x1e, 0xb6, 0xdb, 0x9e, 0xf7, 0xaf, 0xf3, 0x85, 0xf0, 0x20, 0x99, 0x1d, 0xb6, 0x78, 0xe5, 0x12, 0x4f, 0xfb, 0x06, 0x67, 0x74, 0x5b, 0x3e, 0x03, }; static const unsigned char ecdh_brainpoolp256r1_3868_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3868_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3868 = { .name = "ecdh_brainpoolp256r1_3868", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3868_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3868_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3868_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1476 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3869 for ECDH, tcId is 1477 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3869_peerpubkey[] = { 0x29, 0xf6, 0xba, 0x59, 0xfb, 0xe1, 0x8c, 0x3e, 0xd9, 0x9b, 0xc7, 0xda, 0x63, 0x8a, 0xe4, 0x19, 0xee, 0x7d, 0x78, 0x53, 0xff, 0x67, 0x32, 0xf5, 0x17, 0x2d, 0xea, 0x1f, 0x08, 0x5e, 0x8f, 0xb5, 0x07, 0x14, 0x39, 0x41, 0x1b, 0xba, 0x43, 0x0d, 0x2b, 0x8b, 0xc8, 0xf5, 0x8c, 0x95, 0x5e, 0x94, 0xae, 0x16, 0x7f, 0xc9, 0xca, 0x06, 0xfb, 0x26, 0x2c, 0x7c, 0x93, 0xd7, 0x10, 0xfd, 0x62, 0xba, }; static const unsigned char ecdh_brainpoolp256r1_3869_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3869_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3869 = { .name = "ecdh_brainpoolp256r1_3869", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3869_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3869_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3869_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1477 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3870 for ECDH, tcId is 1478 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3870_peerpubkey[] = { 0x85, 0xd4, 0xf4, 0x16, 0x55, 0x2f, 0x4e, 0x51, 0xf9, 0x2d, 0x80, 0xb4, 0xd6, 0xe7, 0x1c, 0x64, 0x87, 0xc6, 0xfb, 0x0a, 0x10, 0x6e, 0xd4, 0x83, 0x95, 0x39, 0x3d, 0x63, 0x52, 0x8e, 0x6e, 0x78, 0x2b, 0xa4, 0xc5, 0x22, 0x8e, 0x60, 0x19, 0x1a, 0x76, 0x2d, 0xc0, 0x2c, 0xcd, 0xaa, 0xdb, 0x63, 0x36, 0x4e, 0xee, 0x8e, 0x50, 0x08, 0xb9, 0xb2, 0x5e, 0x05, 0x77, 0xf8, 0x19, 0x03, 0xcb, 0x53, }; static const unsigned char ecdh_brainpoolp256r1_3870_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3870_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3870 = { .name = "ecdh_brainpoolp256r1_3870", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3870_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3870_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3870_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1478 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3871 for ECDH, tcId is 1479 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3871_peerpubkey[] = { 0x3b, 0x07, 0x2d, 0xa3, 0xde, 0xe8, 0x19, 0xab, 0xa6, 0x73, 0xab, 0xc3, 0xb1, 0xac, 0xeb, 0xff, 0x18, 0xe4, 0xa6, 0xa2, 0x0a, 0xf8, 0xd8, 0x17, 0xaf, 0x97, 0xc2, 0xb4, 0xa8, 0xc5, 0x35, 0x0a, 0x68, 0xe3, 0xbf, 0xb1, 0xd0, 0x35, 0xfd, 0xfd, 0xb8, 0x76, 0xb2, 0xad, 0xf8, 0x5d, 0x9a, 0xf1, 0xad, 0x32, 0xe5, 0x73, 0x99, 0xca, 0x90, 0x3a, 0x2d, 0x3f, 0xa4, 0x90, 0x21, 0x24, 0xd1, 0x94, }; static const unsigned char ecdh_brainpoolp256r1_3871_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3871_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3871 = { .name = "ecdh_brainpoolp256r1_3871", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3871_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3871_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3871_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1479 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3872 for ECDH, tcId is 1480 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3872_peerpubkey[] = { 0x63, 0xe9, 0x2d, 0x05, 0xcf, 0xcd, 0xe1, 0x17, 0x91, 0x88, 0xbf, 0xf8, 0xba, 0x20, 0x43, 0xbe, 0xff, 0x5a, 0x30, 0xa1, 0xa6, 0xb8, 0xec, 0x1d, 0xfc, 0xd8, 0x27, 0x3c, 0xe2, 0xc3, 0x30, 0x54, 0x06, 0x07, 0x39, 0x2b, 0xdd, 0x31, 0x1a, 0x31, 0x3e, 0x3a, 0xe5, 0x31, 0x96, 0xb1, 0x44, 0x80, 0xb1, 0x96, 0x7a, 0x23, 0x5e, 0xbd, 0xbf, 0x18, 0x27, 0x16, 0x54, 0x77, 0x88, 0x4b, 0x5b, 0xe2, }; static const unsigned char ecdh_brainpoolp256r1_3872_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3872_sharedsecret[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3872 = { .name = "ecdh_brainpoolp256r1_3872", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3872_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3872_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3872_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 1480 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3873 for ECDH, tcId is 1481 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3873_peerpubkey[] = { 0x29, 0x21, 0x75, 0xf4, 0x90, 0xfa, 0x8a, 0xea, 0xd8, 0x13, 0xbc, 0x9b, 0x49, 0x23, 0x23, 0x3d, 0x99, 0x9e, 0xa6, 0x1e, 0x7f, 0x1f, 0x9d, 0x0b, 0x0a, 0x02, 0xf0, 0xf6, 0x4b, 0xcd, 0x2a, 0x72, 0x79, 0x5a, 0x29, 0x9e, 0x36, 0x8f, 0xa3, 0xb9, 0x3b, 0xa2, 0x51, 0x93, 0x14, 0x7a, 0xd3, 0x5c, 0xb0, 0x13, 0xf8, 0xbc, 0xe6, 0x69, 0x08, 0x67, 0x59, 0xf7, 0x0a, 0x56, 0xd4, 0x08, 0x3a, 0xe0, }; static const unsigned char ecdh_brainpoolp256r1_3873_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3873_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x1c, 0x66, 0x46, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3873 = { .name = "ecdh_brainpoolp256r1_3873", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3873_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3873_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3873_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 1481 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3874 for ECDH, tcId is 1482 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3874_peerpubkey[] = { 0x15, 0xe8, 0xd9, 0xef, 0xab, 0xc5, 0x10, 0x33, 0xeb, 0x4d, 0x7a, 0xb6, 0x3b, 0x46, 0xf2, 0xb9, 0x4d, 0x94, 0x2c, 0x1a, 0xbb, 0x9c, 0x43, 0x0e, 0xda, 0x60, 0x79, 0x03, 0x6e, 0xae, 0xd7, 0x6e, 0x02, 0x4f, 0x0f, 0x54, 0x36, 0xb9, 0x4b, 0x64, 0x70, 0xff, 0x93, 0x65, 0x84, 0x9a, 0x86, 0xb4, 0x0c, 0x14, 0xd5, 0x58, 0x8f, 0x3d, 0xd5, 0x26, 0x4b, 0xcf, 0x0b, 0xa3, 0x44, 0xd9, 0xfb, 0xfb, }; static const unsigned char ecdh_brainpoolp256r1_3874_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3874_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3874 = { .name = "ecdh_brainpoolp256r1_3874", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3874_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3874_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3874_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 1482 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3875 for ECDH, tcId is 1483 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3875_peerpubkey[] = { 0x15, 0xe8, 0xd9, 0xef, 0xab, 0xc5, 0x10, 0x33, 0xeb, 0x4d, 0x7a, 0xb6, 0x3b, 0x46, 0xf2, 0xb9, 0x4d, 0x94, 0x2c, 0x1a, 0xbb, 0x9c, 0x43, 0x0e, 0xda, 0x60, 0x79, 0x03, 0x6e, 0xae, 0xd7, 0x6e, 0xa7, 0xac, 0x48, 0x87, 0x6b, 0x35, 0x5e, 0x57, 0xcd, 0x66, 0x77, 0x2b, 0x18, 0xe9, 0x06, 0xbe, 0x62, 0x27, 0x20, 0xcb, 0x45, 0xe8, 0x4b, 0x01, 0xd4, 0x44, 0x3c, 0x79, 0xda, 0x94, 0x57, 0x7c, }; static const unsigned char ecdh_brainpoolp256r1_3875_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3875_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3875 = { .name = "ecdh_brainpoolp256r1_3875", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3875_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3875_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3875_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 1483 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3876 for ECDH, tcId is 1484 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3876_peerpubkey[] = { 0x37, 0x04, 0xa3, 0xe3, 0x04, 0x7e, 0x3c, 0x56, 0xe8, 0xc0, 0xd8, 0xc0, 0x28, 0xee, 0x1c, 0xe3, 0xce, 0xef, 0x5b, 0xa1, 0x00, 0x8b, 0xae, 0x06, 0x9a, 0xca, 0xe0, 0xf7, 0xdf, 0x5d, 0x0f, 0x4e, 0x39, 0x40, 0xcd, 0xdb, 0x1b, 0x2e, 0xe9, 0xa7, 0x83, 0x9f, 0xc7, 0x98, 0xa0, 0xf5, 0x29, 0x25, 0x83, 0x2b, 0x1d, 0xa3, 0x98, 0xc7, 0xdc, 0xb1, 0x1e, 0x9f, 0xaf, 0x36, 0x72, 0x0f, 0xf6, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_3876_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3876_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe8, 0xe6, 0x15, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3876 = { .name = "ecdh_brainpoolp256r1_3876", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3876_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3876_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3876_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 1484 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3877 for ECDH, tcId is 1485 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3877_peerpubkey[] = { 0x0a, 0x7f, 0x86, 0xbb, 0xfb, 0x3a, 0x60, 0x10, 0xd9, 0xa8, 0xfe, 0x72, 0xaa, 0x0f, 0x0f, 0xaf, 0xec, 0xb0, 0xbf, 0x2c, 0x18, 0xfc, 0x9b, 0x29, 0x37, 0xa7, 0xb1, 0x3f, 0xaa, 0x28, 0x6b, 0xe3, 0xa0, 0x93, 0x05, 0x5a, 0x18, 0x7b, 0x9e, 0x90, 0xbb, 0xca, 0xe8, 0xa7, 0x7b, 0xf1, 0x9f, 0xa4, 0xdd, 0x11, 0xbc, 0xe1, 0xbb, 0xc0, 0xb5, 0xd7, 0x54, 0x96, 0x53, 0xc4, 0xe7, 0xaa, 0xa1, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_3877_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3877_sharedsecret[] = { 0x23, 0x48, 0x47, 0x89, 0xfe, 0xc2, 0xf4, 0x2f, 0xde, 0xfb, 0x0c, 0x4e, 0xc6, 0x56, 0x21, 0x7c, 0x4f, 0x53, 0x07, 0x46, 0x16, 0x30, 0x0f, 0x86, 0x32, 0x59, 0x58, 0xb7, 0x09, 0xe3, 0xff, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3877 = { .name = "ecdh_brainpoolp256r1_3877", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3877_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3877_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3877_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP256t1, tcId is 1485 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3878 for ECDH, tcId is 1486 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3878_peerpubkey[] = { 0x54, 0xfd, 0x31, 0x96, 0xb3, 0x1c, 0x9b, 0x74, 0xc0, 0xf2, 0xdf, 0x90, 0x1f, 0x48, 0x0f, 0x72, 0xfe, 0x1e, 0x2c, 0xc3, 0xd0, 0x1e, 0xb1, 0x9e, 0xbb, 0x8b, 0x65, 0x3c, 0xa1, 0x39, 0x45, 0xa1, 0x02, 0xd6, 0xd2, 0x42, 0xe6, 0x7d, 0x1e, 0x60, 0xb7, 0xb7, 0x71, 0xcc, 0x73, 0xff, 0x93, 0x23, 0xaf, 0x45, 0x6d, 0xbc, 0xdf, 0x0b, 0x4e, 0x29, 0x16, 0xcb, 0x24, 0x48, 0xdd, 0xe4, 0xc6, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_3878_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3878_sharedsecret[] = { 0x1d, 0x18, 0x4a, 0xdd, 0x66, 0xac, 0x6d, 0x1e, 0x4f, 0x53, 0xd3, 0xc3, 0xcc, 0x2d, 0x99, 0x7a, 0x18, 0x76, 0x54, 0x31, 0xd2, 0xe2, 0x61, 0xce, 0xb4, 0x57, 0xac, 0x61, 0xf7, 0xfe, 0xf4, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3878 = { .name = "ecdh_brainpoolp256r1_3878", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3878_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3878_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3878_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP256t1, tcId is 1486 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3879 for ECDH, tcId is 1487 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3879_peerpubkey[] = { 0x62, 0xc1, 0x56, 0x70, 0x20, 0x2c, 0xd9, 0xa0, 0xcd, 0xf8, 0x81, 0xa0, 0xec, 0x62, 0x2d, 0x2b, 0x39, 0xb5, 0xe3, 0xe6, 0xf2, 0xf9, 0x55, 0x30, 0x12, 0x10, 0xf1, 0x5d, 0xa9, 0x8a, 0xca, 0xdf, 0x99, 0xfa, 0xae, 0x96, 0x99, 0x45, 0x30, 0xff, 0x39, 0xdd, 0xdb, 0x09, 0xf0, 0xee, 0x72, 0x2d, 0x6a, 0x6a, 0x4c, 0xfb, 0x51, 0xee, 0xe6, 0x50, 0x8c, 0xa4, 0xdf, 0x05, 0xb2, 0x46, 0x06, 0xb4, }; static const unsigned char ecdh_brainpoolp256r1_3879_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3879_sharedsecret[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3879 = { .name = "ecdh_brainpoolp256r1_3879", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3879_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3879_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3879_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 1487 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3880 for ECDH, tcId is 1488 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3880_peerpubkey[] = { 0x79, 0x9c, 0x72, 0x8b, 0xe0, 0x83, 0x00, 0xab, 0x54, 0xb5, 0x3e, 0x64, 0xd2, 0x77, 0xe7, 0x9c, 0x02, 0x73, 0x25, 0xdb, 0xa1, 0xcb, 0xba, 0xd5, 0xd4, 0x2f, 0x9a, 0x01, 0xc5, 0x7d, 0x82, 0xd8, 0x52, 0xd1, 0xd2, 0x09, 0x5f, 0x1c, 0x85, 0x4a, 0x48, 0xd1, 0x3f, 0x60, 0xec, 0x1c, 0x63, 0xda, 0x0f, 0x40, 0x99, 0x01, 0x6b, 0x08, 0xba, 0xff, 0x06, 0xa6, 0x80, 0xc4, 0x3d, 0x25, 0x63, 0xb6, }; static const unsigned char ecdh_brainpoolp256r1_3880_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3880_sharedsecret[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3880 = { .name = "ecdh_brainpoolp256r1_3880", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3880_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3880_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3880_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256t1, tcId is 1488 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3881 for ECDH, tcId is 1489 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3881_peerpubkey[] = { 0x62, 0xc1, 0x56, 0x70, 0x20, 0x2c, 0xd9, 0xa0, 0xcd, 0xf8, 0x81, 0xa0, 0xec, 0x62, 0x2d, 0x2b, 0x39, 0xb5, 0xe3, 0xe6, 0xf2, 0xf9, 0x55, 0x30, 0x12, 0x10, 0xf1, 0x5d, 0xa9, 0x8a, 0xca, 0xdf, 0x10, 0x00, 0xa9, 0x45, 0x08, 0xa9, 0x78, 0xbd, 0x04, 0x88, 0x2f, 0x86, 0xac, 0x95, 0x1b, 0x45, 0x03, 0xd1, 0xa9, 0x28, 0x83, 0x37, 0x39, 0xd7, 0x93, 0x6e, 0x69, 0x17, 0x6d, 0x28, 0x4c, 0xc3, }; static const unsigned char ecdh_brainpoolp256r1_3881_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3881_sharedsecret[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3881 = { .name = "ecdh_brainpoolp256r1_3881", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3881_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3881_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3881_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 1489 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3882 for ECDH, tcId is 1490 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3882_peerpubkey[] = { 0x79, 0x9c, 0x72, 0x8b, 0xe0, 0x83, 0x00, 0xab, 0x54, 0xb5, 0x3e, 0x64, 0xd2, 0x77, 0xe7, 0x9c, 0x02, 0x73, 0x25, 0xdb, 0xa1, 0xcb, 0xba, 0xd5, 0xd4, 0x2f, 0x9a, 0x01, 0xc5, 0x7d, 0x82, 0xd8, 0x57, 0x29, 0x85, 0xd2, 0x42, 0xd2, 0x24, 0x71, 0xf5, 0x94, 0xcb, 0x2f, 0xb1, 0x67, 0x29, 0x98, 0x5e, 0xfb, 0x5d, 0x22, 0x6a, 0x1d, 0x65, 0x29, 0x19, 0x6c, 0xc7, 0x58, 0xe2, 0x48, 0xef, 0xc1, }; static const unsigned char ecdh_brainpoolp256r1_3882_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3882_sharedsecret[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3882 = { .name = "ecdh_brainpoolp256r1_3882", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3882_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3882_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3882_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256t1, tcId is 1490 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3883 for ECDH, tcId is 1491 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3883_peerpubkey[] = { 0x3d, 0x88, 0xf3, 0xa6, 0x36, 0xfa, 0x94, 0xd0, 0x6d, 0x5f, 0xb3, 0x53, 0x14, 0xd3, 0x4c, 0x51, 0x40, 0x3b, 0x72, 0x36, 0x19, 0x31, 0xbd, 0x35, 0x86, 0xfe, 0xc2, 0xaf, 0x98, 0xba, 0x62, 0xa9, 0x97, 0x3d, 0x2d, 0xa8, 0x3c, 0xfb, 0xa4, 0xeb, 0x3c, 0x99, 0x5f, 0x2b, 0xbf, 0x17, 0x7f, 0x50, 0x51, 0xff, 0xf9, 0xdd, 0xb3, 0x86, 0x28, 0x45, 0xb7, 0x0d, 0xa1, 0x38, 0x62, 0x8e, 0xef, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_3883_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3883_sharedsecret[] = { 0x77, 0x0c, 0x84, 0x30, 0x9d, 0x95, 0xd8, 0x13, 0x41, 0x5d, 0x36, 0xb8, 0x12, 0x71, 0x43, 0xd7, 0xc9, 0x7d, 0xc5, 0xee, 0xcb, 0x76, 0x40, 0x49, 0x63, 0x1f, 0x1d, 0x8e, 0x6c, 0x6e, 0x3c, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3883 = { .name = "ecdh_brainpoolp256r1_3883", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3883_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3883_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3883_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1491 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3884 for ECDH, tcId is 1492 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3884_peerpubkey[] = { 0x93, 0x0f, 0xb9, 0x32, 0x1b, 0x31, 0x8d, 0xc4, 0x31, 0x59, 0xa5, 0x5b, 0x8b, 0x4a, 0xb6, 0x87, 0x3f, 0xb2, 0xab, 0xd8, 0x5b, 0x27, 0x92, 0xb4, 0xb1, 0x46, 0xba, 0x84, 0xca, 0x1f, 0x0f, 0x81, 0x7b, 0xbc, 0x8c, 0xe0, 0xa3, 0xf4, 0x27, 0x2c, 0x01, 0x43, 0x1d, 0xa8, 0xcc, 0x41, 0x34, 0x82, 0x03, 0x53, 0xb2, 0xdf, 0xdc, 0x0f, 0xb1, 0xd1, 0xef, 0x03, 0x97, 0xb5, 0xdd, 0x10, 0x2f, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_3884_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256r1_3884_sharedsecret[] = { 0x84, 0x4e, 0x5c, 0x76, 0xbc, 0xcf, 0x37, 0x22, 0xbe, 0x43, 0x95, 0x14, 0x6b, 0x4a, 0x76, 0xac, 0x00, 0x31, 0x1c, 0xba, 0xde, 0x49, 0xd6, 0xe9, 0xc5, 0xbc, 0x35, 0xa5, 0xbc, 0x2c, 0x75, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3884 = { .name = "ecdh_brainpoolp256r1_3884", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3884_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3884_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3884_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256t1, tcId is 1492 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3885 for ECDH, tcId is 1493 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3885_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xe0, 0xe9, 0xe8, 0xd9, 0x8f, 0xb8, 0x9d, 0xa2, 0xa3, 0x2b, 0x2c, 0x76, 0x18, 0xb2, 0x6b, 0xb9, 0x9b, 0x92, 0x0f, 0x02, 0xa5, 0xe8, 0x31, 0xa1, 0x42, 0xe6, 0xc8, 0x67, 0x31, 0x10, 0xcd, }; static const unsigned char ecdh_brainpoolp256r1_3885_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3885_sharedsecret[] = { 0x59, 0x9c, 0xde, 0x22, 0x07, 0x0e, 0x96, 0xa8, 0x86, 0x58, 0xc4, 0xa5, 0xa8, 0x3f, 0x37, 0x23, 0x54, 0x2a, 0x40, 0x2e, 0xd5, 0x06, 0x63, 0x9f, 0xf9, 0x01, 0x6f, 0xe4, 0xa2, 0x6d, 0x4c, 0x25, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3885 = { .name = "ecdh_brainpoolp256r1_3885", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3885_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3885_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3885_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1493 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3886 for ECDH, tcId is 1494 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3886_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x26, 0xcc, 0xfd, 0xa8, 0x23, 0x4f, 0xa9, 0xb7, 0x03, 0x16, 0xb5, 0xec, 0x4d, 0xa2, 0x22, 0x97, 0x2b, 0x34, 0xa9, 0x70, 0xcf, 0xe6, 0xdd, 0x99, 0x83, 0xa0, 0x5e, 0x2f, 0xa7, 0x46, 0xb9, 0x02, }; static const unsigned char ecdh_brainpoolp256r1_3886_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3886_sharedsecret[] = { 0x4b, 0x35, 0xa3, 0xca, 0xa1, 0x0c, 0xd7, 0x70, 0x34, 0xe0, 0x73, 0x7e, 0x18, 0xbc, 0x52, 0x07, 0x1f, 0x64, 0xb8, 0xa2, 0xe1, 0x4d, 0x7a, 0x02, 0xdf, 0x8a, 0x36, 0x88, 0x6a, 0xa4, 0x67, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3886 = { .name = "ecdh_brainpoolp256r1_3886", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3886_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3886_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3886_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1494 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3887 for ECDH, tcId is 1495 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3887_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1e, 0x8d, 0x93, 0x92, 0xfb, 0xa7, 0xad, 0x1f, 0x3e, 0xd5, 0xb5, 0x74, 0x6c, 0xd9, 0x30, 0x37, 0x0a, 0x81, 0xd7, 0x48, 0x3f, 0xe3, 0x20, 0x03, 0xe3, 0x12, 0x64, 0x82, 0x9c, 0x9f, 0xec, 0x8d, }; static const unsigned char ecdh_brainpoolp256r1_3887_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3887_sharedsecret[] = { 0x1d, 0x1d, 0x5a, 0x6e, 0xe2, 0x5b, 0x5f, 0xe4, 0x1e, 0x01, 0x5f, 0x19, 0xcb, 0x43, 0x49, 0x36, 0x32, 0x3e, 0xb2, 0x4d, 0xa0, 0x9b, 0xab, 0x87, 0x3e, 0x3c, 0x25, 0xbe, 0xa7, 0xaf, 0x87, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3887 = { .name = "ecdh_brainpoolp256r1_3887", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3887_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3887_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3887_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1495 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3888 for ECDH, tcId is 1496 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3888_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xef, 0x5f, 0xa5, 0xab, 0x0c, 0xeb, 0xc1, 0x8b, 0x64, 0x11, 0x3e, 0xb8, 0xc0, 0x40, 0xdd, 0x74, 0x31, 0x84, 0xe7, 0xc8, 0xac, 0x68, 0xf1, 0x23, 0xf3, 0xc3, 0xd9, 0x45, 0x58, 0x55, 0x24, }; static const unsigned char ecdh_brainpoolp256r1_3888_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3888_sharedsecret[] = { 0x11, 0x1f, 0xba, 0xe4, 0x6b, 0xa6, 0x38, 0x9c, 0x58, 0x79, 0xd0, 0x2e, 0x18, 0x63, 0x30, 0x1f, 0xfa, 0x9e, 0x19, 0x61, 0xd7, 0x21, 0xa5, 0x7c, 0x6d, 0x88, 0x84, 0x71, 0x54, 0x39, 0x88, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3888 = { .name = "ecdh_brainpoolp256r1_3888", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3888_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3888_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3888_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1496 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3889 for ECDH, tcId is 1497 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3889_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2e, 0x65, 0xaf, 0xc1, 0x15, 0xd0, 0xfe, 0x1a, 0x86, 0xf3, 0x14, 0x62, 0x90, 0x14, 0xd6, 0x85, 0x67, 0x16, 0xa4, 0xd9, 0xa0, 0x11, 0x4c, 0x71, 0x30, 0x51, 0xdd, 0x70, 0x0d, 0xcc, 0x1a, 0xde, }; static const unsigned char ecdh_brainpoolp256r1_3889_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3889_sharedsecret[] = { 0x23, 0xb3, 0x6c, 0x78, 0xc2, 0x70, 0x76, 0xe2, 0x3d, 0x6a, 0xb5, 0x6c, 0x2e, 0x96, 0x53, 0xd2, 0x72, 0x92, 0x2c, 0x9f, 0xc1, 0xa1, 0x76, 0xb8, 0xb6, 0xc2, 0xe7, 0x0a, 0xb7, 0xc8, 0x83, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3889 = { .name = "ecdh_brainpoolp256r1_3889", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3889_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3889_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3889_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1497 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3890 for ECDH, tcId is 1498 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3890_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, 0x31, 0x62, 0x59, 0x16, 0xfc, 0x4e, 0x15, 0x7b, 0x1c, 0xf9, 0x3f, 0x3c, 0x80, 0x35, 0x2b, 0xa4, 0xdb, 0xf2, 0x6e, 0xff, 0xbd, 0x87, 0xd3, 0x1a, 0x2a, 0x80, 0x8d, 0x00, 0x10, 0x81, 0xf0, 0x6a, }; static const unsigned char ecdh_brainpoolp256r1_3890_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3890_sharedsecret[] = { 0x27, 0xdf, 0xfb, 0x62, 0xa6, 0xec, 0x9f, 0xfb, 0x3d, 0x04, 0x80, 0xc4, 0x5b, 0xa0, 0x0c, 0x74, 0x81, 0x93, 0xaf, 0xcc, 0x08, 0x79, 0xd7, 0x6b, 0x47, 0xf8, 0xee, 0x35, 0x67, 0x85, 0xde, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3890 = { .name = "ecdh_brainpoolp256r1_3890", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3890_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3890_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3890_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1498 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3891 for ECDH, tcId is 1499 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3891_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x33, 0x0b, 0x90, 0x2c, 0x4f, 0x6a, 0x24, 0x86, 0x74, 0x4f, 0x36, 0xad, 0xc6, 0x00, 0x0e, 0x11, 0x6a, 0x2c, 0xbc, 0xb1, 0x4f, 0xf9, 0xf4, 0x7a, 0xa3, 0x63, 0x19, 0xfe, 0xf9, 0x3a, 0xd5, 0xea, }; static const unsigned char ecdh_brainpoolp256r1_3891_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3891_sharedsecret[] = { 0x9b, 0xff, 0xd4, 0x51, 0xce, 0xad, 0xc2, 0x7d, 0xf8, 0x8a, 0x13, 0x82, 0x98, 0x52, 0xdd, 0xab, 0x0b, 0x29, 0x38, 0x95, 0x2f, 0x5c, 0x58, 0xfd, 0xae, 0x7d, 0xd2, 0x22, 0x48, 0x84, 0x0b, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3891 = { .name = "ecdh_brainpoolp256r1_3891", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3891_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3891_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3891_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1499 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3892 for ECDH, tcId is 1500 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3892_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x2c, 0x6f, 0xb3, 0x30, 0x2d, 0xd9, 0x3d, 0xc2, 0x5d, 0x2c, 0x67, 0x92, 0xc2, 0xac, 0x6f, 0x86, 0x24, 0x7c, 0x4d, 0x39, 0x63, 0x7e, 0xe1, 0x1d, 0x92, 0x67, 0x65, 0x80, 0x17, 0xf0, 0x05, 0x5a, }; static const unsigned char ecdh_brainpoolp256r1_3892_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3892_sharedsecret[] = { 0x26, 0x7a, 0x69, 0xf4, 0xb3, 0x94, 0x5f, 0x8d, 0x32, 0x3f, 0xf1, 0xa5, 0x26, 0xbc, 0xa5, 0x66, 0xe7, 0xed, 0x98, 0x06, 0xd6, 0xa6, 0xdc, 0x8f, 0x45, 0x87, 0xab, 0x22, 0x9a, 0x5f, 0x3a, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3892 = { .name = "ecdh_brainpoolp256r1_3892", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3892_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3892_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3892_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1500 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3893 for ECDH, tcId is 1501 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3893_peerpubkey[] = { 0x23, 0x10, 0xa8, 0x7d, 0xfe, 0x5f, 0xc2, 0x5d, 0x0c, 0x0f, 0x51, 0xf0, 0xd3, 0x79, 0xef, 0x19, 0xbe, 0x68, 0x7b, 0xef, 0x34, 0x79, 0x5d, 0xc2, 0xfd, 0x3f, 0xcc, 0x2d, 0x1c, 0xfd, 0xf1, 0x89, 0x2f, 0xb2, 0x44, 0x82, 0x56, 0x51, 0xa9, 0x4d, 0x4d, 0x93, 0xff, 0x90, 0xb7, 0x41, 0x30, 0xf7, 0x74, 0x83, 0xe5, 0x69, 0x9d, 0x68, 0xa7, 0xa4, 0x3a, 0xe6, 0x93, 0xbc, 0xa8, 0x56, 0x88, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_3893_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3893_sharedsecret[] = { 0x4d, 0x3d, 0x61, 0xbf, 0x26, 0x57, 0x3a, 0x2e, 0xc1, 0xd9, 0xae, 0x6b, 0xe6, 0x2d, 0x1a, 0x30, 0xb7, 0x1a, 0xa9, 0x63, 0x66, 0x0a, 0x4f, 0xf3, 0x09, 0x55, 0x7e, 0x61, 0x67, 0x42, 0x11, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3893 = { .name = "ecdh_brainpoolp256r1_3893", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3893_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3893_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3893_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1501 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3894 for ECDH, tcId is 1502 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3894_peerpubkey[] = { 0x33, 0x67, 0xa0, 0xbb, 0x5a, 0x87, 0x07, 0x24, 0x18, 0x33, 0x4c, 0xea, 0xd5, 0x22, 0x7a, 0xed, 0xfc, 0x06, 0x3f, 0x1a, 0x73, 0x40, 0xdc, 0x1c, 0x7c, 0x8e, 0x57, 0x6e, 0xb4, 0x11, 0x8e, 0xbf, 0x46, 0x48, 0xa7, 0xb0, 0x63, 0x96, 0x56, 0x22, 0x7b, 0xa7, 0xc4, 0xb3, 0x46, 0x35, 0x4b, 0x24, 0x65, 0x09, 0x9f, 0x84, 0x22, 0xd1, 0xbe, 0x92, 0xf0, 0xf4, 0x5e, 0xe2, 0x3b, 0x7e, 0x2d, 0x1a, }; static const unsigned char ecdh_brainpoolp256r1_3894_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3894_sharedsecret[] = { 0x79, 0x9c, 0x48, 0x21, 0xe9, 0x28, 0x15, 0xb9, 0x33, 0x5e, 0x77, 0x74, 0x1a, 0x9b, 0xca, 0x23, 0x33, 0x05, 0x38, 0x86, 0xa3, 0x77, 0x7a, 0xe6, 0x37, 0xd0, 0x2e, 0x44, 0x20, 0xd8, 0x2a, 0x66, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3894 = { .name = "ecdh_brainpoolp256r1_3894", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3894_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3894_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3894_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1502 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3895 for ECDH, tcId is 1503 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3895_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x0c, 0xf9, 0xab, 0x58, 0x99, 0xc5, 0x92, 0x16, 0xd6, 0xd1, 0xbc, 0x78, 0x6d, 0xdf, 0x62, 0x21, 0xe3, 0x74, 0xcd, 0x37, 0xa8, 0xb7, 0x45, 0xe8, 0x26, 0xc6, 0x49, 0x5b, 0xed, 0x0a, 0x56, 0xb0, }; static const unsigned char ecdh_brainpoolp256r1_3895_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3895_sharedsecret[] = { 0xa4, 0xa2, 0xd3, 0xbc, 0xc6, 0x93, 0x80, 0x39, 0x60, 0x89, 0xe7, 0x19, 0xab, 0x8c, 0x77, 0xe5, 0x43, 0x7e, 0xe5, 0x89, 0xe3, 0x9d, 0x98, 0xea, 0xe7, 0xbd, 0x17, 0xce, 0x5c, 0x1d, 0x5b, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3895 = { .name = "ecdh_brainpoolp256r1_3895", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3895_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3895_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3895_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1503 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3896 for ECDH, tcId is 1504 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3896_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x01, 0xa1, 0xad, 0x42, 0xb3, 0xff, 0x22, 0xba, 0x6b, 0xf3, 0xc9, 0x4b, 0x55, 0xcf, 0xa4, 0xd1, 0x3c, 0x6e, 0x14, 0x0d, 0x3c, 0x44, 0x96, 0x31, 0x98, 0xf4, 0x96, 0xeb, 0xbc, 0x50, 0x43, 0x9a, }; static const unsigned char ecdh_brainpoolp256r1_3896_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3896_sharedsecret[] = { 0x3a, 0x6f, 0xf3, 0xc1, 0xd4, 0x90, 0xf6, 0x52, 0xf5, 0x17, 0x8a, 0x79, 0x4b, 0x8c, 0xf8, 0x25, 0xb5, 0x04, 0x49, 0x48, 0xf6, 0xeb, 0xda, 0x67, 0x31, 0x0c, 0x11, 0xfe, 0xc1, 0xad, 0x2b, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3896 = { .name = "ecdh_brainpoolp256r1_3896", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3896_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3896_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3896_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1504 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3897 for ECDH, tcId is 1505 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3897_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x36, 0x9a, 0x4e, 0x24, 0xf0, 0x10, 0x26, 0x0d, 0x7c, 0x25, 0x60, 0xf7, 0xdc, 0x19, 0xc4, 0x1c, 0xde, 0x6b, 0x5c, 0x50, 0x3b, 0x65, 0x63, 0x67, 0x85, 0x80, 0xf0, 0xd2, 0x2c, 0x74, 0xdd, 0xa4, }; static const unsigned char ecdh_brainpoolp256r1_3897_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3897_sharedsecret[] = { 0x2d, 0x59, 0xb8, 0x95, 0x06, 0x2c, 0x13, 0xd4, 0xe5, 0xb5, 0xe0, 0xb7, 0x7e, 0xf2, 0x73, 0xe9, 0x4e, 0x55, 0x8e, 0x72, 0x4f, 0x62, 0x41, 0xaf, 0x5b, 0xb1, 0x1b, 0xf2, 0x3a, 0xcb, 0xf8, 0x51, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3897 = { .name = "ecdh_brainpoolp256r1_3897", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3897_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3897_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3897_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1505 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3898 for ECDH, tcId is 1506 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3898_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46, 0x77, 0xb0, 0x43, 0xdf, 0xe5, 0x4f, 0x78, 0xc7, 0x35, 0x54, 0x3b, 0x75, 0x2b, 0x3a, 0xec, 0x04, 0x3f, 0x65, 0x6e, 0x5f, 0x22, 0xdd, 0x6d, 0x95, 0x6c, 0xd6, 0x42, 0xe3, 0x39, 0x08, 0x81, }; static const unsigned char ecdh_brainpoolp256r1_3898_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3898_sharedsecret[] = { 0x83, 0x64, 0x0b, 0xe4, 0x28, 0xf7, 0xa4, 0xf8, 0x0a, 0xe2, 0x67, 0x17, 0x99, 0xb5, 0xba, 0x18, 0x81, 0x24, 0x1f, 0xd0, 0x54, 0xa7, 0xf2, 0xdc, 0xe0, 0x25, 0x4c, 0x07, 0x53, 0x1a, 0xbe, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3898 = { .name = "ecdh_brainpoolp256r1_3898", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3898_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3898_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3898_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1506 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3899 for ECDH, tcId is 1507 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3899_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x89, 0x45, 0xdf, 0x48, 0x87, 0x79, 0x23, 0x5a, 0x26, 0x37, 0xc3, 0x9a, 0x4a, 0x85, 0xab, 0x70, 0x7b, 0xd5, 0x6e, 0x7c, 0x22, 0xb9, 0xad, 0x41, 0xb6, 0x52, 0x56, 0x01, 0x23, 0xb6, 0xaf, }; static const unsigned char ecdh_brainpoolp256r1_3899_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3899_sharedsecret[] = { 0x80, 0x1e, 0x5f, 0x5d, 0x61, 0xc6, 0x66, 0xbc, 0x08, 0x9a, 0x42, 0x65, 0xc4, 0x0d, 0x2a, 0x3f, 0xee, 0x0d, 0xb2, 0x0a, 0x0f, 0x78, 0xe3, 0x29, 0xbb, 0xf2, 0x79, 0x33, 0x30, 0xab, 0x04, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3899 = { .name = "ecdh_brainpoolp256r1_3899", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3899_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3899_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3899_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1507 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3900 for ECDH, tcId is 1508 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3900_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x24, 0xbb, 0xe5, 0xb0, 0xb8, 0x70, 0x22, 0x58, 0xd2, 0x46, 0x2a, 0x8b, 0xda, 0x59, 0xa3, 0x43, 0xb9, 0x7c, 0x3f, 0xb1, 0xd4, 0x00, 0x54, 0x16, 0x80, 0x2b, 0xeb, 0xd6, 0x28, 0xe7, 0xd0, }; static const unsigned char ecdh_brainpoolp256r1_3900_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3900_sharedsecret[] = { 0xa4, 0x09, 0xa8, 0x50, 0x67, 0xdd, 0x63, 0xe5, 0xea, 0xb3, 0xae, 0xc3, 0xd7, 0x4c, 0xb7, 0xf0, 0x71, 0x83, 0x92, 0x47, 0xdb, 0xf9, 0x7b, 0x6d, 0xe5, 0x92, 0x98, 0x80, 0x95, 0x50, 0x9d, 0x0b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3900 = { .name = "ecdh_brainpoolp256r1_3900", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3900_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3900_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3900_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1508 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3901 for ECDH, tcId is 1509 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3901_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x13, 0xa0, 0x34, 0x6d, 0xb1, 0x4d, 0x55, 0xd1, 0xbc, 0xc2, 0x70, 0x79, 0xb6, 0x88, 0x64, 0xac, 0x32, 0x88, 0x5b, 0x5b, 0xdf, 0xc3, 0xc9, 0xdb, 0x6f, 0x85, 0xa3, 0x5d, 0x3d, 0xf4, 0xc3, 0x9b, }; static const unsigned char ecdh_brainpoolp256r1_3901_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3901_sharedsecret[] = { 0x66, 0xd7, 0x57, 0x88, 0x46, 0x34, 0x86, 0x1f, 0x28, 0xbb, 0xe4, 0x5b, 0x50, 0x2f, 0x89, 0x52, 0x33, 0xb0, 0xba, 0x1c, 0x69, 0xbf, 0x45, 0x80, 0x2f, 0x80, 0xea, 0xc5, 0xc8, 0x37, 0x75, 0x0f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3901 = { .name = "ecdh_brainpoolp256r1_3901", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3901_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3901_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3901_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1509 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3902 for ECDH, tcId is 1510 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3902_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x1c, 0x66, 0x46, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x54, 0x07, 0xf4, 0xa4, 0x1e, 0x79, 0x04, 0xd3, 0xe7, 0xa9, 0xe6, 0xe6, 0xd7, 0x0b, 0x09, 0x33, 0x61, 0xdc, 0x5e, 0xa0, 0x97, 0xc3, 0x76, 0x7e, 0x10, 0x13, 0xf5, 0x86, 0x8f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_3902_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3902_sharedsecret[] = { 0x94, 0x45, 0x6b, 0xf9, 0xe3, 0x3c, 0x39, 0x23, 0x15, 0xc5, 0xbc, 0x35, 0x0a, 0x5d, 0x48, 0xe3, 0x9f, 0xc7, 0xa9, 0xff, 0x5e, 0xa6, 0xfe, 0x30, 0x9e, 0x24, 0xa8, 0x92, 0x92, 0x69, 0x0d, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3902 = { .name = "ecdh_brainpoolp256r1_3902", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3902_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3902_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3902_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1510 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3903 for ECDH, tcId is 1511 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3903_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x09, 0x3b, 0x3d, 0x19, 0x10, 0xba, 0xda, 0x32, 0xf9, 0x9c, 0x20, 0x97, 0x7c, 0xff, 0x95, 0x1d, 0x97, 0x07, 0x2f, 0xea, 0x05, 0x8e, 0x87, 0x9c, 0x4b, 0xfe, 0xef, 0xd4, 0x04, }; static const unsigned char ecdh_brainpoolp256r1_3903_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3903_sharedsecret[] = { 0x41, 0xe2, 0x15, 0x3f, 0x94, 0x11, 0x10, 0x29, 0x65, 0xa2, 0xf6, 0x3f, 0x88, 0x74, 0xaa, 0x7d, 0xb3, 0x35, 0x71, 0x46, 0x6b, 0x16, 0x0e, 0xa3, 0x3e, 0x9a, 0xf6, 0x72, 0x1c, 0xe5, 0xbb, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3903 = { .name = "ecdh_brainpoolp256r1_3903", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3903_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3903_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3903_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1511 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3904 for ECDH, tcId is 1512 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3904_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe9, 0x66, 0xec, 0x89, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xfb, 0x57, 0xd2, 0x66, 0xb1, 0x90, 0xab, 0x83, 0x8b, 0xd7, 0x97, 0x01, 0x62, 0xf5, 0xf5, 0x6e, 0xa6, 0xd8, 0x8c, 0xcd, 0xf6, 0x36, 0x22, 0x91, 0x8b, 0xab, 0xd1, 0x20, 0x7e, 0x7f, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_3904_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3904_sharedsecret[] = { 0x41, 0xe2, 0x15, 0x3f, 0x94, 0x11, 0x10, 0x29, 0x65, 0xa2, 0xf6, 0x3f, 0x88, 0x74, 0xaa, 0x7d, 0xb3, 0x35, 0x71, 0x46, 0x6b, 0x16, 0x0e, 0xa3, 0x3e, 0x9a, 0xf6, 0x72, 0x1c, 0xe5, 0xbb, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3904 = { .name = "ecdh_brainpoolp256r1_3904", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3904_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3904_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3904_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1512 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3905 for ECDH, tcId is 1513 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3905_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe8, 0xe6, 0x15, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8a, 0x3a, 0xf7, 0xf7, 0xa8, 0xa0, 0x07, 0x01, 0xcf, 0xee, 0x7f, 0x39, 0x0f, 0x84, 0xed, 0x21, 0xd3, 0x74, 0x62, 0x3c, 0x20, 0xe5, 0xc8, 0x22, 0x76, 0x0d, 0x9d, 0xe3, 0xb0, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_3905_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3905_sharedsecret[] = { 0x79, 0xc4, 0xbd, 0xad, 0xa7, 0x6d, 0x72, 0x19, 0xc0, 0xd6, 0x5b, 0xf2, 0x20, 0xb7, 0x14, 0x44, 0x0f, 0x83, 0x8a, 0x2a, 0x1b, 0x36, 0xef, 0xd6, 0x27, 0x6d, 0xe3, 0x5b, 0x79, 0xbe, 0xe1, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3905 = { .name = "ecdh_brainpoolp256r1_3905", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3905_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3905_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3905_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1513 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3906 for ECDH, tcId is 1514 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3906_peerpubkey[] = { 0x23, 0x48, 0x47, 0x89, 0xfe, 0xc2, 0xf4, 0x2f, 0xde, 0xfb, 0x0c, 0x4e, 0xc6, 0x56, 0x21, 0x7c, 0x4f, 0x53, 0x07, 0x46, 0x16, 0x30, 0x0f, 0x86, 0x32, 0x59, 0x58, 0xb7, 0x09, 0xe3, 0xff, 0xc0, 0x99, 0xd1, 0xc0, 0xc4, 0x9a, 0x35, 0x9a, 0x0c, 0x62, 0x51, 0xb8, 0x65, 0x3b, 0x65, 0x31, 0x1a, 0x28, 0x8b, 0x99, 0xee, 0x6f, 0xcf, 0x2f, 0x22, 0xdf, 0x78, 0x86, 0xea, 0xec, 0x94, 0x7a, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_3906_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3906_sharedsecret[] = { 0x31, 0x21, 0x9d, 0x91, 0xb7, 0x16, 0xc4, 0x89, 0x7d, 0xec, 0xe4, 0x00, 0xf3, 0x5c, 0xb7, 0x10, 0x3d, 0xf6, 0x10, 0xbf, 0xfd, 0xfd, 0xb9, 0x0b, 0xf7, 0x6b, 0xe2, 0x74, 0xff, 0x2b, 0xf9, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3906 = { .name = "ecdh_brainpoolp256r1_3906", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3906_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3906_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3906_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1514 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3907 for ECDH, tcId is 1515 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3907_peerpubkey[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, 0x35, 0xf4, 0xa1, 0x00, 0x1e, 0xea, 0x1b, 0xf1, 0xeb, 0xbf, 0xd6, 0x43, 0xaf, 0x14, 0x6b, 0x99, 0x09, 0x93, 0xe9, 0x8e, 0x71, 0xaf, 0x44, 0x14, 0xe7, 0x36, 0x94, 0x1c, 0x8e, 0x44, 0x47, 0x16, }; static const unsigned char ecdh_brainpoolp256r1_3907_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3907_sharedsecret[] = { 0x70, 0x34, 0x13, 0xb1, 0x9d, 0x8f, 0x41, 0x59, 0x89, 0xf7, 0x0a, 0xe5, 0x07, 0xb4, 0xaf, 0xd9, 0x90, 0x05, 0x04, 0xe3, 0x72, 0x52, 0x64, 0xa1, 0x21, 0xbe, 0xf9, 0x66, 0xa3, 0x0f, 0x89, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3907 = { .name = "ecdh_brainpoolp256r1_3907", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3907_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3907_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3907_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1515 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3908 for ECDH, tcId is 1516 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3908_peerpubkey[] = { 0x3d, 0x60, 0x7b, 0x61, 0x2e, 0xd1, 0xfb, 0x6d, 0x2b, 0x6a, 0xe4, 0xfb, 0xb7, 0x02, 0x4b, 0x9c, 0xcc, 0x37, 0x91, 0x70, 0xc1, 0x21, 0xf4, 0x9f, 0x8f, 0xb6, 0x18, 0x5e, 0xbf, 0x93, 0x76, 0x35, 0x74, 0x06, 0xb6, 0xdb, 0x83, 0x04, 0x8d, 0xca, 0x52, 0xa6, 0x34, 0x4c, 0xee, 0x6f, 0x21, 0xd9, 0x64, 0xa8, 0x0c, 0x95, 0x63, 0x76, 0xdc, 0x13, 0x38, 0xdc, 0xb4, 0x00, 0x91, 0x2a, 0x0c, 0x61, }; static const unsigned char ecdh_brainpoolp256r1_3908_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3908_sharedsecret[] = { 0x70, 0x34, 0x13, 0xb1, 0x9d, 0x8f, 0x41, 0x59, 0x89, 0xf7, 0x0a, 0xe5, 0x07, 0xb4, 0xaf, 0xd9, 0x90, 0x05, 0x04, 0xe3, 0x72, 0x52, 0x64, 0xa1, 0x21, 0xbe, 0xf9, 0x66, 0xa3, 0x0f, 0x89, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3908 = { .name = "ecdh_brainpoolp256r1_3908", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3908_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3908_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3908_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1516 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3909 for ECDH, tcId is 1517 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3909_peerpubkey[] = { 0x77, 0x0c, 0x84, 0x30, 0x9d, 0x95, 0xd8, 0x13, 0x41, 0x5d, 0x36, 0xb8, 0x12, 0x71, 0x43, 0xd7, 0xc9, 0x7d, 0xc5, 0xee, 0xcb, 0x76, 0x40, 0x49, 0x63, 0x1f, 0x1d, 0x8e, 0x6c, 0x6e, 0x3c, 0xe4, 0x92, 0xc0, 0xe8, 0xc5, 0xca, 0x23, 0x71, 0xc0, 0x82, 0xe9, 0x57, 0x64, 0x85, 0xee, 0xf5, 0x3d, 0x15, 0x36, 0xa2, 0x7f, 0xf0, 0xd5, 0x9c, 0xe5, 0x11, 0x6a, 0x04, 0x7d, 0xf7, 0xf0, 0x8c, 0xe0, }; static const unsigned char ecdh_brainpoolp256r1_3909_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3909_sharedsecret[] = { 0x86, 0xc4, 0x01, 0xc6, 0x81, 0x03, 0x1d, 0x35, 0x99, 0x1e, 0xbe, 0xaa, 0xdf, 0x99, 0x6a, 0x03, 0xb4, 0xb4, 0x71, 0x95, 0x1f, 0x6f, 0x64, 0x7c, 0x15, 0x5f, 0xc2, 0xd7, 0x40, 0x25, 0x49, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3909 = { .name = "ecdh_brainpoolp256r1_3909", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3909_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3909_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3909_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1517 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3910 for ECDH, tcId is 1518 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3910_peerpubkey[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, 0x6d, 0xf2, 0x17, 0xe1, 0x74, 0x4f, 0x8e, 0x84, 0xeb, 0xc1, 0x7f, 0x41, 0x2d, 0x4c, 0x31, 0x72, 0x4e, 0x78, 0x36, 0x56, 0x6a, 0x40, 0xb3, 0x03, 0x85, 0x7b, 0x9a, 0x0d, 0xd6, 0xf6, 0x82, 0x17, }; static const unsigned char ecdh_brainpoolp256r1_3910_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3910_sharedsecret[] = { 0x4e, 0x65, 0x10, 0x01, 0xd9, 0xda, 0xf7, 0x6e, 0xc7, 0xed, 0x6a, 0xf9, 0x18, 0x81, 0x58, 0x45, 0xf7, 0x45, 0x39, 0xae, 0xa6, 0x15, 0xaa, 0x64, 0x8a, 0xbe, 0xe3, 0xd1, 0x63, 0x1a, 0xda, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3910 = { .name = "ecdh_brainpoolp256r1_3910", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3910_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3910_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3910_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1518 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3911 for ECDH, tcId is 1519 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3911_peerpubkey[] = { 0x07, 0x67, 0x8e, 0x0e, 0xe1, 0xeb, 0xd2, 0x19, 0xfc, 0x4f, 0x8d, 0xba, 0xe8, 0xec, 0x28, 0x2f, 0x9b, 0x33, 0x16, 0x4c, 0x92, 0x85, 0xc8, 0x2b, 0xc5, 0x47, 0x85, 0x27, 0xd5, 0xe9, 0xb7, 0xae, 0x3c, 0x09, 0x3f, 0xfa, 0x2d, 0x9f, 0x1b, 0x37, 0x52, 0xa4, 0x8b, 0x4f, 0x70, 0x37, 0x5c, 0x00, 0x1f, 0xc3, 0xbf, 0xcd, 0x6a, 0xe5, 0x6d, 0x24, 0x9a, 0x97, 0xae, 0x0f, 0x48, 0x77, 0xd1, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_3911_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3911_sharedsecret[] = { 0x4e, 0x65, 0x10, 0x01, 0xd9, 0xda, 0xf7, 0x6e, 0xc7, 0xed, 0x6a, 0xf9, 0x18, 0x81, 0x58, 0x45, 0xf7, 0x45, 0x39, 0xae, 0xa6, 0x15, 0xaa, 0x64, 0x8a, 0xbe, 0xe3, 0xd1, 0x63, 0x1a, 0xda, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3911 = { .name = "ecdh_brainpoolp256r1_3911", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3911_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3911_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3911_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1519 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3912 for ECDH, tcId is 1520 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3912_peerpubkey[] = { 0x84, 0x4e, 0x5c, 0x76, 0xbc, 0xcf, 0x37, 0x22, 0xbe, 0x43, 0x95, 0x14, 0x6b, 0x4a, 0x76, 0xac, 0x00, 0x31, 0x1c, 0xba, 0xde, 0x49, 0xd6, 0xe9, 0xc5, 0xbc, 0x35, 0xa5, 0xbc, 0x2c, 0x75, 0x48, 0x48, 0x34, 0x36, 0xa1, 0xad, 0xfb, 0xbd, 0x6f, 0x5f, 0xae, 0xa5, 0x46, 0xbe, 0xc9, 0xb4, 0x31, 0x3d, 0x3a, 0xac, 0x98, 0xe7, 0x2c, 0xee, 0xae, 0xf2, 0x22, 0x5a, 0x3e, 0x06, 0xf6, 0xa0, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3912_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3912_sharedsecret[] = { 0x28, 0xb3, 0xfc, 0x85, 0xe5, 0x55, 0x9f, 0x77, 0xeb, 0x0d, 0x1d, 0x56, 0xb1, 0xc2, 0x29, 0xec, 0xbe, 0xb7, 0x40, 0x2a, 0x5c, 0x4c, 0x4c, 0x5c, 0x3e, 0x66, 0xbc, 0xee, 0x0c, 0x05, 0x67, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3912 = { .name = "ecdh_brainpoolp256r1_3912", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3912_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3912_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3912_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1520 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3913 for ECDH, tcId is 1521 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3913_peerpubkey[] = { 0x1d, 0x18, 0x4a, 0xdd, 0x66, 0xac, 0x6d, 0x1e, 0x4f, 0x53, 0xd3, 0xc3, 0xcc, 0x2d, 0x99, 0x7a, 0x18, 0x76, 0x54, 0x31, 0xd2, 0xe2, 0x61, 0xce, 0xb4, 0x57, 0xac, 0x61, 0xf7, 0xfe, 0xf4, 0x24, 0x51, 0x43, 0xcb, 0x57, 0x07, 0xb6, 0x2c, 0xd1, 0xf7, 0xd5, 0xe5, 0x9f, 0x1a, 0x05, 0x68, 0x18, 0x65, 0x44, 0xbc, 0xe6, 0x22, 0xe1, 0xe1, 0xc7, 0x22, 0xc5, 0x2e, 0x2e, 0x5e, 0xf4, 0xa4, 0x09, }; static const unsigned char ecdh_brainpoolp256r1_3913_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256r1_3913_sharedsecret[] = { 0xa1, 0x3c, 0xc4, 0x86, 0x6d, 0xf5, 0xd6, 0xa3, 0x5d, 0xa6, 0xe0, 0x55, 0x5e, 0x54, 0x61, 0x7e, 0xe3, 0x76, 0x4b, 0x3b, 0xc0, 0x50, 0xc0, 0xac, 0x3e, 0x30, 0x2b, 0x1b, 0xa7, 0x70, 0x5f, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3913 = { .name = "ecdh_brainpoolp256r1_3913", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3913_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3913_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3913_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1521 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3914 for ECDH, tcId is 1522 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3914_peerpubkey[] = { 0x79, 0x83, 0x8c, 0x22, 0xd2, 0xb8, 0xdc, 0x9a, 0xf2, 0xe6, 0xcf, 0x56, 0xf8, 0x82, 0x6d, 0xc3, 0xdf, 0xe1, 0x0f, 0xcb, 0x17, 0xb6, 0xaa, 0xaf, 0x55, 0x1e, 0xe5, 0x2b, 0xef, 0x12, 0xf8, 0x26, 0x1e, 0x2e, 0xd3, 0xd4, 0x53, 0x08, 0x8c, 0x85, 0x52, 0xc6, 0xfe, 0xec, 0xf8, 0x98, 0x66, 0x7b, 0xc1, 0xe1, 0x59, 0x05, 0x00, 0x2e, 0xde, 0xc6, 0xb2, 0x69, 0xfe, 0xb7, 0xbe, 0xa0, 0x9d, 0x5b, }; static const unsigned char ecdh_brainpoolp256r1_3914_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3914_sharedsecret[] = { 0x5e, 0xf8, 0xdc, 0xc0, 0x80, 0xd0, 0x9e, 0x27, 0x9e, 0x99, 0x9e, 0xfc, 0x5e, 0x12, 0x54, 0xbe, 0x40, 0x17, 0x2e, 0x81, 0x83, 0x30, 0xc6, 0xc2, 0x96, 0x42, 0x94, 0x9e, 0xb3, 0x07, 0x76, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3914 = { .name = "ecdh_brainpoolp256r1_3914", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3914_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3914_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3914_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1522 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3915 for ECDH, tcId is 1523 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3915_peerpubkey[] = { 0x09, 0xff, 0x7b, 0x7d, 0x82, 0xfb, 0x64, 0x94, 0x47, 0x6c, 0x00, 0x1a, 0x8b, 0xf8, 0x19, 0x91, 0x21, 0xd1, 0x3d, 0xda, 0xe4, 0xfc, 0x29, 0x12, 0x49, 0xee, 0xc8, 0xcd, 0xa4, 0x27, 0xb4, 0x4b, 0x33, 0xc5, 0x1a, 0x99, 0x08, 0x0b, 0x27, 0xc1, 0x7b, 0x11, 0x0c, 0x20, 0x39, 0x18, 0xf1, 0xeb, 0x20, 0x25, 0xd2, 0x37, 0x46, 0x4d, 0xe8, 0xbb, 0x8f, 0x11, 0x2e, 0x21, 0x83, 0x56, 0xd2, 0xc8, }; static const unsigned char ecdh_brainpoolp256r1_3915_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3915_sharedsecret[] = { 0x20, 0x09, 0x51, 0x19, 0xf5, 0x3d, 0xf7, 0xb3, 0x37, 0x62, 0x0e, 0x62, 0x8b, 0x92, 0x49, 0x91, 0x48, 0x2a, 0x34, 0x28, 0x03, 0xea, 0xf0, 0x8a, 0xc7, 0x95, 0x31, 0xd2, 0xf2, 0xd1, 0x7b, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3915 = { .name = "ecdh_brainpoolp256r1_3915", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3915_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3915_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3915_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1523 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3916 for ECDH, tcId is 1524 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3916_peerpubkey[] = { 0x18, 0x9a, 0x70, 0x7a, 0xba, 0x80, 0x56, 0x0e, 0xed, 0x66, 0x85, 0xda, 0xbe, 0x11, 0xfd, 0x58, 0xcd, 0xca, 0x38, 0xc3, 0x48, 0x9c, 0xa1, 0x9b, 0x6f, 0x42, 0x23, 0xa0, 0xc8, 0xd8, 0x0a, 0x14, 0x46, 0x01, 0xe8, 0xdb, 0x54, 0x46, 0xf9, 0x8d, 0x29, 0xd9, 0x61, 0x4b, 0x5f, 0x36, 0xd0, 0x1c, 0x24, 0xa1, 0x90, 0x19, 0x1c, 0x49, 0x49, 0x9c, 0x03, 0x97, 0x51, 0x84, 0xa4, 0xe8, 0xc5, 0x14, }; static const unsigned char ecdh_brainpoolp256r1_3916_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3916_sharedsecret[] = { 0x26, 0x73, 0xdb, 0x06, 0x82, 0xf6, 0xa0, 0x35, 0xe2, 0x54, 0x06, 0x33, 0x9c, 0x71, 0x29, 0x91, 0x8a, 0xa9, 0xcf, 0x10, 0x00, 0x56, 0xeb, 0xdd, 0xc3, 0x17, 0xd4, 0xe4, 0x3a, 0x16, 0x42, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3916 = { .name = "ecdh_brainpoolp256r1_3916", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3916_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3916_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3916_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1524 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3917 for ECDH, tcId is 1525 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3917_peerpubkey[] = { 0x59, 0x30, 0x5b, 0x2b, 0xb6, 0x68, 0xf2, 0x42, 0x36, 0x87, 0xc4, 0x47, 0x8b, 0xb4, 0x00, 0xb9, 0x0b, 0xd4, 0x14, 0x02, 0x03, 0x84, 0xb4, 0x15, 0xbe, 0xe3, 0x29, 0xeb, 0x0e, 0x9f, 0x5a, 0x95, 0x73, 0x2b, 0x35, 0x1e, 0x79, 0xfc, 0x7d, 0x4b, 0xbc, 0x2c, 0xa3, 0x6c, 0xa3, 0x6b, 0xde, 0xa2, 0xf0, 0xdc, 0xc3, 0x34, 0x8e, 0x87, 0x95, 0x6c, 0x16, 0x88, 0xc1, 0x34, 0x71, 0x6e, 0xab, 0x5c, }; static const unsigned char ecdh_brainpoolp256r1_3917_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3917_sharedsecret[] = { 0x2d, 0xbc, 0x00, 0x81, 0x3c, 0xbb, 0x71, 0x77, 0x8f, 0xc6, 0xfb, 0x76, 0x17, 0x3e, 0x2a, 0xfa, 0x0e, 0x8a, 0xf3, 0x25, 0x71, 0x34, 0x0c, 0x91, 0xce, 0xa9, 0xf1, 0xb1, 0xcc, 0xa0, 0x70, 0x20, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3917 = { .name = "ecdh_brainpoolp256r1_3917", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3917_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3917_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3917_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1525 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3918 for ECDH, tcId is 1526 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3918_peerpubkey[] = { 0x94, 0x13, 0x16, 0xbb, 0xc4, 0x09, 0x02, 0x20, 0x4a, 0x94, 0x5f, 0x91, 0x48, 0x99, 0xbe, 0x7f, 0xc4, 0xdc, 0x28, 0x2f, 0x0c, 0x22, 0x9b, 0xc3, 0x74, 0xf0, 0x99, 0x7c, 0x11, 0xa2, 0x3e, 0x13, 0x70, 0x39, 0x7e, 0x8b, 0x75, 0x0a, 0x57, 0x5a, 0x5c, 0xf8, 0xcd, 0x71, 0x6d, 0xdc, 0x1b, 0x60, 0x7f, 0xeb, 0x28, 0x9c, 0x76, 0x99, 0x7c, 0x4c, 0xd2, 0x0b, 0x5c, 0x9d, 0x85, 0xaa, 0x0a, 0x43, }; static const unsigned char ecdh_brainpoolp256r1_3918_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3918_sharedsecret[] = { 0x8d, 0x1a, 0x91, 0xb2, 0xbc, 0x7b, 0xd7, 0x59, 0x8f, 0x4a, 0xe3, 0xd1, 0x7f, 0x6a, 0x89, 0x78, 0xf1, 0xdf, 0x5f, 0xba, 0x94, 0x2e, 0xf2, 0xb8, 0xb9, 0x59, 0x52, 0xf5, 0xce, 0xc1, 0x93, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3918 = { .name = "ecdh_brainpoolp256r1_3918", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3918_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3918_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3918_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1526 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3919 for ECDH, tcId is 1527 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3919_peerpubkey[] = { 0x7b, 0x33, 0xab, 0xc0, 0x6f, 0x6a, 0x87, 0x48, 0xa4, 0xa4, 0x13, 0x61, 0x10, 0x4e, 0x36, 0x75, 0x58, 0x88, 0x6f, 0x92, 0x34, 0x5f, 0xea, 0xb8, 0x6c, 0xa9, 0xb9, 0xef, 0xd8, 0x03, 0x68, 0x9f, 0x2b, 0xed, 0x59, 0x2a, 0x08, 0xe5, 0xbf, 0x9e, 0x12, 0x32, 0x82, 0xd8, 0x41, 0x68, 0x23, 0x50, 0x90, 0x59, 0xb5, 0x5c, 0x8a, 0xf6, 0xff, 0x04, 0xb0, 0x0e, 0x67, 0x8b, 0xf8, 0xaf, 0xc5, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_3919_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3919_sharedsecret[] = { 0x85, 0x27, 0x19, 0x7d, 0x2a, 0xfd, 0xe6, 0x4e, 0x2d, 0xab, 0xa8, 0x92, 0x9a, 0x91, 0x8f, 0xea, 0x5a, 0x58, 0x84, 0xbc, 0xed, 0x17, 0x5f, 0xce, 0x33, 0x80, 0xdb, 0xcf, 0xdf, 0x63, 0xb3, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3919 = { .name = "ecdh_brainpoolp256r1_3919", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3919_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3919_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3919_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1527 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3920 for ECDH, tcId is 1528 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3920_peerpubkey[] = { 0x54, 0x5e, 0x3b, 0x05, 0x75, 0x78, 0x60, 0x4e, 0xe1, 0x1c, 0x95, 0x15, 0xb4, 0xf7, 0xd6, 0x6d, 0xa6, 0x68, 0xaa, 0x06, 0x17, 0x01, 0x81, 0x44, 0xab, 0xf7, 0xfc, 0x58, 0xc6, 0xf7, 0xb5, 0x7d, 0x6b, 0xbd, 0xd1, 0xee, 0xc7, 0xe4, 0x0d, 0x6b, 0xbb, 0xa3, 0x30, 0x3c, 0x74, 0x50, 0x2d, 0x74, 0xc0, 0xb5, 0xf1, 0xd8, 0xe5, 0xd2, 0xf5, 0x56, 0x8f, 0x7b, 0x7c, 0xde, 0x74, 0x5d, 0x7a, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_3920_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3920_sharedsecret[] = { 0x94, 0x99, 0x17, 0x25, 0xd1, 0x15, 0xdd, 0xdf, 0x73, 0x69, 0x9a, 0x89, 0x23, 0x10, 0x4b, 0xfe, 0x4d, 0xfd, 0x3c, 0x5e, 0x46, 0x2a, 0x8a, 0x6e, 0xc1, 0x42, 0x6d, 0xec, 0xf5, 0xc8, 0x6f, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3920 = { .name = "ecdh_brainpoolp256r1_3920", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3920_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3920_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3920_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1528 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3921 for ECDH, tcId is 1529 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3921_peerpubkey[] = { 0x1d, 0xa6, 0xa5, 0xf6, 0x44, 0xcc, 0x0d, 0x09, 0x3f, 0x0a, 0xea, 0x56, 0x35, 0xd0, 0x37, 0x4b, 0xf4, 0xc0, 0x71, 0xf7, 0xac, 0x8b, 0x6e, 0x2b, 0x68, 0xc9, 0xb9, 0xf3, 0x52, 0xec, 0xc7, 0x7f, 0x67, 0x51, 0x5e, 0xa4, 0xad, 0xb5, 0xbb, 0x96, 0x88, 0xf5, 0xf8, 0x3c, 0x13, 0x50, 0xb3, 0x33, 0x32, 0xda, 0x95, 0x61, 0xa0, 0x26, 0x5d, 0x64, 0x72, 0xb3, 0xac, 0x49, 0x73, 0x0c, 0xc7, 0xe3, }; static const unsigned char ecdh_brainpoolp256r1_3921_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3921_sharedsecret[] = { 0x58, 0x91, 0xc8, 0xd5, 0xa5, 0x3d, 0xd5, 0x51, 0xd9, 0x61, 0x41, 0xb1, 0xd9, 0xa0, 0x8e, 0x8d, 0xe4, 0x0c, 0x2a, 0x79, 0x96, 0x97, 0x21, 0x4a, 0xdc, 0x13, 0xfd, 0x8b, 0xe5, 0xe1, 0x69, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3921 = { .name = "ecdh_brainpoolp256r1_3921", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3921_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3921_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3921_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1529 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3922 for ECDH, tcId is 1530 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3922_peerpubkey[] = { 0x5e, 0x94, 0x3a, 0xe7, 0x7a, 0x68, 0xb6, 0x0f, 0xfa, 0xc9, 0x55, 0x51, 0x76, 0x44, 0x1f, 0xc5, 0x89, 0xb3, 0x6c, 0x32, 0x42, 0x69, 0xef, 0xf7, 0xa4, 0x16, 0x98, 0x60, 0x81, 0x54, 0xe9, 0xf5, 0x93, 0x6c, 0xf4, 0xf1, 0x73, 0xd9, 0x16, 0x68, 0x1e, 0xf1, 0x8d, 0x6d, 0x81, 0x26, 0x37, 0x36, 0x4c, 0xdf, 0xae, 0x0b, 0xf0, 0x1d, 0x53, 0x00, 0xc7, 0x64, 0xd8, 0xd1, 0x87, 0xbc, 0xa1, 0x89, }; static const unsigned char ecdh_brainpoolp256r1_3922_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3922_sharedsecret[] = { 0x10, 0xe2, 0xdf, 0x24, 0x4d, 0xfe, 0x2e, 0x2b, 0x2f, 0x4b, 0x5c, 0xd6, 0x46, 0x2b, 0x93, 0x41, 0xfc, 0x79, 0x63, 0x49, 0x9a, 0x84, 0x29, 0xfd, 0xb3, 0x63, 0x6d, 0xdd, 0x1e, 0xe0, 0xa1, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3922 = { .name = "ecdh_brainpoolp256r1_3922", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3922_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3922_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3922_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1530 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3923 for ECDH, tcId is 1531 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3923_peerpubkey[] = { 0x8a, 0x8b, 0xc7, 0x4d, 0x08, 0x5f, 0x35, 0x3c, 0xd5, 0x88, 0x47, 0x5e, 0x5a, 0xe9, 0xeb, 0xe5, 0x70, 0x1c, 0x00, 0x1d, 0xbe, 0x55, 0x86, 0xa7, 0xaf, 0x97, 0x28, 0x11, 0x3c, 0x9b, 0x7d, 0x98, 0x9a, 0x11, 0xd1, 0x96, 0x35, 0xef, 0xf7, 0x1b, 0xea, 0xdd, 0xcb, 0xb2, 0x84, 0x00, 0xbb, 0x28, 0x4a, 0x7a, 0x5d, 0x5d, 0x74, 0xce, 0xee, 0x23, 0x24, 0x9a, 0x53, 0xc9, 0x77, 0x48, 0x6b, 0x9a, }; static const unsigned char ecdh_brainpoolp256r1_3923_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3923_sharedsecret[] = { 0x37, 0xcc, 0x4a, 0x30, 0x60, 0xbb, 0x3f, 0x7b, 0x91, 0x35, 0xe4, 0x9f, 0x57, 0x4c, 0x1d, 0x42, 0xeb, 0x1a, 0x51, 0xaf, 0xa7, 0x80, 0x81, 0x9f, 0x8f, 0x1a, 0xbe, 0x21, 0x88, 0x23, 0x47, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3923 = { .name = "ecdh_brainpoolp256r1_3923", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3923_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3923_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3923_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1531 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3924 for ECDH, tcId is 1532 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3924_peerpubkey[] = { 0x52, 0x73, 0xe1, 0xad, 0x6e, 0x91, 0x58, 0xcd, 0xb5, 0xfc, 0x9a, 0x21, 0xdd, 0x03, 0xa7, 0xbb, 0xb0, 0xfe, 0x7c, 0xd1, 0x36, 0xbe, 0x58, 0xa8, 0xf0, 0xf8, 0x80, 0x0e, 0xeb, 0x7a, 0xfd, 0xaa, 0x7f, 0x96, 0x3e, 0x8b, 0x0d, 0x56, 0x43, 0x86, 0x56, 0x9a, 0xc1, 0x85, 0x1d, 0xfb, 0x6d, 0xfe, 0x9b, 0x12, 0xf7, 0xab, 0x8a, 0x72, 0xea, 0x47, 0x8c, 0xc1, 0x14, 0x6e, 0x0a, 0x7b, 0x92, 0x84, }; static const unsigned char ecdh_brainpoolp256r1_3924_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3924_sharedsecret[] = { 0x37, 0xc2, 0xb9, 0x6d, 0x47, 0x23, 0x64, 0xfa, 0x46, 0x68, 0x07, 0xaf, 0xb5, 0xbf, 0x11, 0xd6, 0x3e, 0x81, 0x54, 0x4e, 0xfa, 0x6c, 0x67, 0xbc, 0xcd, 0x1a, 0xbf, 0x3e, 0x74, 0xd3, 0xdf, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3924 = { .name = "ecdh_brainpoolp256r1_3924", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3924_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3924_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3924_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1532 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3925 for ECDH, tcId is 1533 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3925_peerpubkey[] = { 0x0e, 0xc6, 0x6c, 0xa5, 0xdd, 0x8b, 0xf6, 0xcc, 0x28, 0x82, 0xb7, 0x03, 0xc6, 0x5e, 0x6a, 0x0a, 0x7a, 0x4c, 0x6e, 0x7e, 0x1d, 0x9a, 0x09, 0x35, 0x53, 0x1b, 0xc8, 0x59, 0xa8, 0xca, 0xc0, 0xaa, 0x31, 0x20, 0x6f, 0x59, 0xa7, 0xef, 0x58, 0x5e, 0x96, 0xaf, 0xbf, 0xa9, 0x43, 0x49, 0xaa, 0xcf, 0xac, 0xef, 0xf7, 0x03, 0xd3, 0x88, 0x53, 0x00, 0xfd, 0x23, 0xcc, 0x5b, 0x5b, 0x19, 0x5c, 0xbd, }; static const unsigned char ecdh_brainpoolp256r1_3925_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3925_sharedsecret[] = { 0x00, 0x6c, 0x23, 0xa1, 0xd0, 0x80, 0x4c, 0x6a, 0x13, 0x1f, 0xac, 0xad, 0xf8, 0xc4, 0x2e, 0x8f, 0xd5, 0x5a, 0x3e, 0x83, 0x73, 0xc4, 0x4d, 0x39, 0x9c, 0xaa, 0xd9, 0x36, 0x3e, 0xf1, 0xc3, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3925 = { .name = "ecdh_brainpoolp256r1_3925", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3925_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3925_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3925_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1533 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3926 for ECDH, tcId is 1534 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3926_peerpubkey[] = { 0x31, 0xb0, 0x5f, 0x27, 0x84, 0xa6, 0x17, 0x22, 0x84, 0xd6, 0x83, 0xd8, 0x45, 0x3c, 0x17, 0x0f, 0xa8, 0x97, 0xa9, 0xe6, 0x20, 0xe0, 0xd5, 0x30, 0xf4, 0x8d, 0x45, 0x62, 0x56, 0x49, 0xbd, 0xe2, 0x61, 0x2c, 0xee, 0x16, 0x18, 0x40, 0x99, 0xf9, 0x7e, 0x28, 0xb0, 0xaa, 0xdc, 0xcd, 0x37, 0x86, 0xe1, 0x4a, 0x87, 0x05, 0xf5, 0x53, 0x71, 0x31, 0xe5, 0xc0, 0x45, 0xa4, 0xe0, 0xeb, 0x78, 0x91, }; static const unsigned char ecdh_brainpoolp256r1_3926_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3926_sharedsecret[] = { 0x85, 0x90, 0xb7, 0xab, 0x93, 0x2d, 0xcb, 0x8c, 0x22, 0x6b, 0x1e, 0xbe, 0x9c, 0xa4, 0xbc, 0xa1, 0x4a, 0x69, 0x67, 0x6d, 0x7f, 0xe1, 0x91, 0x51, 0x4f, 0x65, 0x6b, 0x87, 0xfa, 0xe9, 0x5f, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3926 = { .name = "ecdh_brainpoolp256r1_3926", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3926_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3926_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3926_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1534 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3927 for ECDH, tcId is 1535 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3927_peerpubkey[] = { 0x46, 0xb6, 0x3a, 0x00, 0x60, 0x10, 0xe9, 0x31, 0x1f, 0xfc, 0x5d, 0x67, 0xeb, 0xa3, 0x7d, 0x25, 0x0c, 0x95, 0x24, 0xb2, 0x29, 0x2a, 0xe0, 0x9b, 0x00, 0x29, 0x56, 0x8c, 0x15, 0xbd, 0xe4, 0xec, 0x6a, 0x70, 0xf7, 0x34, 0xc1, 0xf1, 0x67, 0x90, 0xca, 0x43, 0x39, 0x5f, 0xfc, 0x12, 0x4d, 0x6a, 0x68, 0x8e, 0x54, 0x9f, 0xbe, 0x19, 0xc3, 0xec, 0xf9, 0xc1, 0xe4, 0x23, 0xf2, 0xb8, 0x42, 0x24, }; static const unsigned char ecdh_brainpoolp256r1_3927_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3927_sharedsecret[] = { 0x3c, 0x5f, 0x64, 0x22, 0x7d, 0xd2, 0x05, 0xb6, 0x86, 0x19, 0x1b, 0x6d, 0xcf, 0x3a, 0xf4, 0x27, 0xef, 0x7a, 0x94, 0xe8, 0x42, 0x64, 0xab, 0xbc, 0x9c, 0x07, 0x8b, 0x7b, 0xf5, 0x81, 0x86, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3927 = { .name = "ecdh_brainpoolp256r1_3927", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3927_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3927_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3927_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1535 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3928 for ECDH, tcId is 1536 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3928_peerpubkey[] = { 0x7d, 0x86, 0xdd, 0xaa, 0x5d, 0x7d, 0x6d, 0x3e, 0x81, 0xc4, 0xf8, 0xbd, 0xcf, 0xa0, 0x10, 0xcb, 0x2a, 0x8a, 0x2e, 0x32, 0xf2, 0x48, 0x66, 0xb3, 0x09, 0xbc, 0x06, 0x5a, 0x20, 0x85, 0x1d, 0xe9, 0x31, 0xa2, 0x85, 0xd0, 0xb8, 0x16, 0xbf, 0x03, 0xbd, 0x8d, 0x11, 0x24, 0x22, 0xe5, 0x79, 0xcf, 0x9a, 0x73, 0xeb, 0xb1, 0x7f, 0x8c, 0xf8, 0x67, 0xba, 0xd7, 0x67, 0xd4, 0x95, 0xfe, 0xbb, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_3928_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3928_sharedsecret[] = { 0x59, 0x70, 0x8c, 0x85, 0x3f, 0xce, 0x1a, 0x9b, 0xc8, 0x4b, 0x80, 0xbf, 0x90, 0x29, 0x3b, 0xd0, 0x80, 0xcf, 0x63, 0x3d, 0x39, 0xf5, 0xa2, 0xed, 0xf6, 0x0e, 0x88, 0x0e, 0x97, 0xc6, 0x1f, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3928 = { .name = "ecdh_brainpoolp256r1_3928", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3928_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3928_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3928_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1536 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3929 for ECDH, tcId is 1537 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3929_peerpubkey[] = { 0x72, 0x6a, 0xbf, 0x16, 0x51, 0x97, 0xd1, 0xb2, 0xfa, 0x69, 0xbf, 0x62, 0x8b, 0xd9, 0x3c, 0x06, 0x21, 0x6d, 0xbe, 0xb2, 0x01, 0xf0, 0xca, 0x28, 0x24, 0x86, 0x3a, 0x7d, 0x0b, 0x1a, 0x08, 0x83, 0x94, 0x5b, 0x78, 0xcd, 0x74, 0x00, 0xfe, 0x88, 0x5b, 0xa6, 0xb3, 0x1c, 0x01, 0x94, 0xa5, 0x6a, 0x06, 0x41, 0x3a, 0x60, 0xb1, 0xa4, 0xee, 0x51, 0xdc, 0x1c, 0xef, 0x27, 0xe7, 0xe4, 0xd1, 0x37, }; static const unsigned char ecdh_brainpoolp256r1_3929_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3929_sharedsecret[] = { 0x7a, 0x8b, 0xcc, 0xfc, 0x86, 0xa1, 0xd6, 0x84, 0xaf, 0xe8, 0x25, 0xd7, 0xe1, 0xed, 0x7d, 0x30, 0x9b, 0x22, 0xa9, 0x08, 0x1f, 0xbe, 0xbf, 0x34, 0x8c, 0x53, 0x53, 0xff, 0x55, 0xe9, 0x70, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3929 = { .name = "ecdh_brainpoolp256r1_3929", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3929_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3929_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3929_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1537 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3930 for ECDH, tcId is 1538 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3930_peerpubkey[] = { 0x11, 0x74, 0x53, 0x23, 0x6a, 0x15, 0xd7, 0xfc, 0x59, 0x8a, 0x05, 0x84, 0x8b, 0xc6, 0xce, 0x25, 0xc4, 0xc7, 0x69, 0x8c, 0xbc, 0x9a, 0x65, 0xc6, 0xd4, 0xc5, 0x79, 0xdf, 0xaf, 0xae, 0xd6, 0x13, 0x9e, 0x48, 0xea, 0x8e, 0xdd, 0xbc, 0x1e, 0x8c, 0xf4, 0xec, 0xf6, 0xc1, 0x04, 0xde, 0xe3, 0xd3, 0xa8, 0xde, 0x94, 0xcd, 0xbf, 0x4f, 0xd0, 0x0e, 0x40, 0x8f, 0xd6, 0x28, 0xf2, 0x14, 0x36, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_3930_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3930_sharedsecret[] = { 0xa9, 0x8f, 0xdf, 0xeb, 0x5e, 0x87, 0x79, 0x7e, 0xf2, 0x28, 0x21, 0xa5, 0x4e, 0xcd, 0x55, 0x61, 0x93, 0x2d, 0x78, 0x4e, 0x2b, 0x4c, 0xb3, 0x1a, 0x50, 0x9f, 0x86, 0x30, 0xf0, 0xe1, 0x18, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3930 = { .name = "ecdh_brainpoolp256r1_3930", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3930_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3930_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3930_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1538 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3931 for ECDH, tcId is 1539 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3931_peerpubkey[] = { 0x11, 0xb9, 0x9a, 0x71, 0x0f, 0x15, 0x23, 0x89, 0xdb, 0xf9, 0xb2, 0x18, 0x15, 0x36, 0x8b, 0x52, 0xa3, 0x3b, 0x28, 0xf5, 0xda, 0xfa, 0x05, 0x28, 0x4e, 0x3a, 0xc9, 0xbe, 0x5c, 0xfd, 0x5d, 0x3c, 0x46, 0xf5, 0x46, 0x1c, 0x5d, 0xa2, 0x1d, 0x22, 0x2c, 0x78, 0x9e, 0x20, 0x09, 0x24, 0x6a, 0x03, 0xe3, 0x66, 0xbb, 0x29, 0xd2, 0x9c, 0xd4, 0x2f, 0x24, 0x93, 0xa3, 0xe2, 0x95, 0x1e, 0x63, 0x2a, }; static const unsigned char ecdh_brainpoolp256r1_3931_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3931_sharedsecret[] = { 0x1b, 0x8a, 0xa8, 0x42, 0x41, 0x7e, 0x57, 0xa1, 0x38, 0x0c, 0x95, 0x8a, 0x4c, 0xbd, 0x99, 0x47, 0x40, 0xd9, 0xea, 0x5c, 0x87, 0x8b, 0x2b, 0x5d, 0x10, 0x92, 0xe9, 0xe8, 0x94, 0xe3, 0xcd, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3931 = { .name = "ecdh_brainpoolp256r1_3931", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3931_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3931_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3931_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1539 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3932 for ECDH, tcId is 1540 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3932_peerpubkey[] = { 0x7a, 0x73, 0xab, 0xc6, 0x5f, 0x2a, 0x57, 0x34, 0xd2, 0x3c, 0x58, 0x8a, 0x13, 0x9f, 0xce, 0x12, 0x38, 0x18, 0x2c, 0xf3, 0xf4, 0x76, 0x57, 0x66, 0xf5, 0xfd, 0x9d, 0xff, 0x96, 0x05, 0x26, 0xfe, 0x58, 0xf4, 0x5e, 0x67, 0xb3, 0xeb, 0xeb, 0xbb, 0x73, 0xf8, 0x8e, 0x81, 0xdf, 0xa9, 0x62, 0x4c, 0x70, 0xcc, 0xb7, 0x56, 0x7b, 0x14, 0xd2, 0xc6, 0xe2, 0x54, 0x5c, 0x1f, 0xe2, 0x37, 0x96, 0x89, }; static const unsigned char ecdh_brainpoolp256r1_3932_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256r1_3932_sharedsecret[] = { 0x31, 0x93, 0x80, 0x9a, 0x09, 0x45, 0xb5, 0x65, 0x25, 0xec, 0x00, 0xee, 0x10, 0x5c, 0x2a, 0xe1, 0xd7, 0xa1, 0x73, 0x13, 0x32, 0x84, 0x86, 0x2c, 0x15, 0x04, 0xf4, 0xc4, 0xed, 0x8a, 0xba, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3932 = { .name = "ecdh_brainpoolp256r1_3932", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3932_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3932_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3932_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1540 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3933 for ECDH, tcId is 1541 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3933_peerpubkey[] = { 0x26, 0x59, 0x19, 0xd0, 0xd0, 0xa7, 0x0b, 0x8e, 0x60, 0x9f, 0xae, 0x90, 0x83, 0x17, 0xd2, 0xcf, 0x25, 0x98, 0x5b, 0xf2, 0x2e, 0xcc, 0xb1, 0xc7, 0x02, 0xe9, 0xcc, 0xc4, 0x8b, 0x8a, 0x3b, 0xe1, 0x78, 0x71, 0xa5, 0x7d, 0x7c, 0xe5, 0xe7, 0x3b, 0x80, 0x06, 0x52, 0xb0, 0xec, 0x11, 0x0b, 0x33, 0x12, 0x8e, 0x6a, 0x28, 0x2e, 0x10, 0xe9, 0x4f, 0xd0, 0xb7, 0x7e, 0x11, 0xea, 0xe0, 0xc3, 0x34, }; static const unsigned char ecdh_brainpoolp256r1_3933_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3933_sharedsecret[] = { 0x8a, 0xf2, 0xed, 0xf7, 0x1a, 0x04, 0x84, 0x17, 0x1f, 0x5b, 0x55, 0xbb, 0xab, 0x19, 0x18, 0x77, 0xb6, 0x0d, 0x70, 0x6b, 0x19, 0x1c, 0x6c, 0xc8, 0x45, 0x86, 0x3a, 0xd8, 0x17, 0xcd, 0x42, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3933 = { .name = "ecdh_brainpoolp256r1_3933", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3933_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3933_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3933_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1541 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3934 for ECDH, tcId is 1542 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3934_peerpubkey[] = { 0x96, 0x40, 0xb8, 0x0e, 0xce, 0x05, 0x15, 0x00, 0xd9, 0xbc, 0x39, 0xa9, 0x97, 0xc1, 0xbf, 0x70, 0x33, 0xb0, 0xdd, 0x03, 0x41, 0xdc, 0x0b, 0x64, 0x48, 0x66, 0x90, 0x40, 0x6c, 0x02, 0xc3, 0xed, 0x9b, 0xd2, 0xaf, 0xc8, 0x7d, 0xf3, 0xd2, 0x73, 0x04, 0x11, 0xec, 0xb7, 0x81, 0xe1, 0xf6, 0xbf, 0xcc, 0x00, 0x4f, 0x4d, 0x7e, 0xc3, 0xb7, 0xaf, 0x78, 0x16, 0x19, 0x9b, 0x46, 0x65, 0x72, 0xe6, }; static const unsigned char ecdh_brainpoolp256r1_3934_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3934_sharedsecret[] = { 0x8d, 0x50, 0x76, 0x5f, 0x6b, 0x67, 0xec, 0x24, 0x9a, 0x75, 0x56, 0x3f, 0x73, 0x4e, 0x5d, 0xfa, 0xcd, 0xb5, 0xa7, 0xf5, 0x98, 0x44, 0xeb, 0x49, 0x91, 0xeb, 0x33, 0x3e, 0x7f, 0xb7, 0x4b, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3934 = { .name = "ecdh_brainpoolp256r1_3934", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3934_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3934_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3934_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1542 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3935 for ECDH, tcId is 1543 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3935_peerpubkey[] = { 0x3a, 0x85, 0x07, 0xa1, 0xc7, 0x31, 0xbb, 0x9b, 0xd5, 0x10, 0x29, 0x9e, 0x4a, 0xc8, 0x6f, 0xe0, 0x42, 0xd2, 0x1e, 0xd0, 0x78, 0x51, 0xae, 0x78, 0x5d, 0x28, 0x41, 0x26, 0x0b, 0xdf, 0x7b, 0xa5, 0x40, 0x1c, 0x19, 0xa5, 0x52, 0x15, 0xb8, 0x59, 0x25, 0xe7, 0x9b, 0x26, 0x4b, 0x07, 0xbf, 0x7e, 0xb8, 0xbd, 0x05, 0x8f, 0x78, 0xa9, 0xcb, 0xd4, 0x8a, 0x8a, 0x88, 0x92, 0xad, 0x14, 0x74, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_3935_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3935_sharedsecret[] = { 0x67, 0x06, 0x24, 0xf5, 0x45, 0x5b, 0x3d, 0xf8, 0x88, 0x4e, 0x52, 0xd2, 0x76, 0xdc, 0x62, 0x21, 0x02, 0xf9, 0xaa, 0x0f, 0x8f, 0x5f, 0x53, 0x92, 0xcd, 0xfa, 0x43, 0x81, 0x2e, 0xe9, 0x00, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3935 = { .name = "ecdh_brainpoolp256r1_3935", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3935_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3935_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3935_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1543 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3936 for ECDH, tcId is 1544 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3936_peerpubkey[] = { 0x60, 0xda, 0x83, 0x5a, 0x9b, 0x47, 0xd3, 0x46, 0xca, 0x73, 0x57, 0xfa, 0x32, 0x0d, 0x19, 0xfd, 0xdd, 0xc9, 0xfd, 0x82, 0x2c, 0x56, 0xaa, 0xd8, 0x2c, 0x4e, 0x5d, 0x8b, 0xd6, 0x9c, 0x37, 0x45, 0x36, 0x1a, 0xe1, 0x8d, 0x99, 0x34, 0xcc, 0x20, 0xf4, 0x4d, 0x1f, 0x37, 0xe5, 0x9b, 0x61, 0x7e, 0x9e, 0xe7, 0x21, 0xcc, 0x78, 0xa9, 0x79, 0xc7, 0x79, 0x84, 0xc5, 0x68, 0xa6, 0xd4, 0xd7, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_3936_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3936_sharedsecret[] = { 0x86, 0x55, 0x95, 0xb8, 0x74, 0x33, 0xfc, 0x3e, 0x8a, 0xd0, 0x80, 0x04, 0x02, 0xfe, 0xd4, 0x68, 0x17, 0xcc, 0xf5, 0x5d, 0x20, 0xb8, 0x3a, 0x4a, 0x5d, 0x51, 0x29, 0xfd, 0x93, 0xbc, 0xf6, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3936 = { .name = "ecdh_brainpoolp256r1_3936", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3936_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3936_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3936_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1544 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3937 for ECDH, tcId is 1545 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3937_peerpubkey[] = { 0x10, 0xed, 0xe2, 0xe1, 0x0b, 0x9d, 0x31, 0xdb, 0x68, 0xdf, 0x9a, 0x87, 0x12, 0x13, 0xe4, 0x74, 0xe2, 0xd3, 0x9b, 0x2b, 0x21, 0x13, 0x76, 0xcd, 0x78, 0x28, 0xbd, 0x98, 0xab, 0x8c, 0xaa, 0xfe, 0x9b, 0xa9, 0x77, 0x00, 0x68, 0x72, 0x01, 0xd7, 0x75, 0x61, 0xe9, 0x9d, 0x97, 0xe2, 0x7c, 0x1c, 0xd9, 0x9d, 0x32, 0xba, 0xe9, 0x70, 0x71, 0x49, 0xdf, 0xea, 0x7c, 0x06, 0x32, 0x0c, 0x6f, 0xf6, }; static const unsigned char ecdh_brainpoolp256r1_3937_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3937_sharedsecret[] = { 0x0e, 0x44, 0x93, 0xae, 0x56, 0x74, 0x7f, 0xb6, 0x81, 0xd5, 0xcb, 0x73, 0xe0, 0xd7, 0x2e, 0x27, 0xd0, 0xee, 0x04, 0x45, 0xc7, 0x1a, 0x0f, 0x1c, 0x58, 0x16, 0xd2, 0xfa, 0x63, 0xdc, 0xb9, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3937 = { .name = "ecdh_brainpoolp256r1_3937", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3937_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3937_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3937_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1545 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3938 for ECDH, tcId is 1546 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3938_peerpubkey[] = { 0x28, 0x49, 0x7f, 0x54, 0xa8, 0x9f, 0x0e, 0xe7, 0xfc, 0x1f, 0xcc, 0x49, 0x23, 0x22, 0x92, 0xa5, 0x3b, 0xd8, 0x5c, 0xba, 0x82, 0x93, 0xda, 0x00, 0xcc, 0xd5, 0x0b, 0x70, 0xb0, 0xf1, 0x73, 0x8b, 0x91, 0xf2, 0x90, 0x82, 0x96, 0xe6, 0xda, 0x2e, 0xc9, 0x13, 0x9e, 0xff, 0x5c, 0xdb, 0x1c, 0x51, 0xd8, 0x21, 0xc0, 0x0d, 0x05, 0x4d, 0x77, 0x9f, 0xcf, 0xd2, 0x42, 0x64, 0xef, 0x16, 0xa4, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_3938_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3938_sharedsecret[] = { 0x44, 0x6d, 0x3a, 0x24, 0x1e, 0xb4, 0x0a, 0xaf, 0x6e, 0x50, 0x64, 0x71, 0xc6, 0x9d, 0xee, 0xbf, 0x3e, 0x68, 0x4c, 0x24, 0x34, 0x5c, 0x02, 0x47, 0xf5, 0x4a, 0x73, 0xdd, 0xb6, 0xc4, 0x88, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3938 = { .name = "ecdh_brainpoolp256r1_3938", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3938_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3938_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3938_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1546 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3939 for ECDH, tcId is 1547 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3939_peerpubkey[] = { 0x40, 0xac, 0xbc, 0x78, 0x1b, 0x19, 0x8e, 0x42, 0x8d, 0x8d, 0x12, 0x57, 0xd5, 0xb6, 0xd2, 0xb1, 0xcf, 0x53, 0xc9, 0x7b, 0xb6, 0x03, 0x8c, 0xcc, 0x3e, 0xb9, 0xee, 0x87, 0xc2, 0x1f, 0x5e, 0xe0, 0xa0, 0x2d, 0xeb, 0xdf, 0x9e, 0xe9, 0x4b, 0x22, 0xd6, 0xec, 0x85, 0x5a, 0xe3, 0x93, 0x02, 0x1b, 0xb5, 0x7f, 0x92, 0x9c, 0xa4, 0xfb, 0x03, 0x98, 0x8d, 0x9e, 0x6c, 0x00, 0xee, 0x07, 0x5f, 0xa8, }; static const unsigned char ecdh_brainpoolp256r1_3939_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3939_sharedsecret[] = { 0x3f, 0x58, 0x14, 0x27, 0xb0, 0x30, 0x9a, 0x68, 0x72, 0xf3, 0x71, 0x45, 0x65, 0xbd, 0x76, 0xe9, 0x52, 0xac, 0x6d, 0x8f, 0x89, 0x68, 0xb7, 0xc1, 0xf4, 0xb8, 0x53, 0x18, 0x77, 0xb6, 0xf0, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3939 = { .name = "ecdh_brainpoolp256r1_3939", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3939_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3939_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3939_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1547 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3940 for ECDH, tcId is 1548 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3940_peerpubkey[] = { 0x7e, 0xc6, 0x89, 0x0a, 0x5d, 0x70, 0x59, 0x27, 0x97, 0x1a, 0xc2, 0xc6, 0x01, 0x66, 0x70, 0x02, 0xe6, 0xa8, 0x31, 0x84, 0x7f, 0x6f, 0x2b, 0x20, 0x26, 0xef, 0xd6, 0x37, 0x9f, 0x13, 0x8d, 0xff, 0x30, 0xab, 0xc0, 0x8c, 0xb0, 0x1f, 0xd4, 0x4c, 0x31, 0xc1, 0x8c, 0x8e, 0x5f, 0xef, 0x41, 0x21, 0x6c, 0x9a, 0x4e, 0x10, 0x82, 0xdc, 0x92, 0x8f, 0x2e, 0x1e, 0x22, 0xad, 0xe8, 0x60, 0xb0, 0x51, }; static const unsigned char ecdh_brainpoolp256r1_3940_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3940_sharedsecret[] = { 0x7e, 0xbe, 0xa9, 0x84, 0xd4, 0xfb, 0x21, 0x48, 0x5e, 0x08, 0x07, 0xf8, 0x16, 0xcc, 0xb0, 0xcb, 0xcc, 0x81, 0x71, 0x00, 0xc1, 0xfe, 0xec, 0xc4, 0xad, 0xd2, 0x2e, 0x3c, 0x40, 0xd2, 0x1b, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3940 = { .name = "ecdh_brainpoolp256r1_3940", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3940_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3940_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3940_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1548 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3941 for ECDH, tcId is 1549 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3941_peerpubkey[] = { 0x34, 0xdb, 0xf9, 0x00, 0x91, 0xcc, 0x4b, 0xde, 0x4a, 0xca, 0x6b, 0x8c, 0xa2, 0x0b, 0xfa, 0x17, 0x90, 0x3b, 0x34, 0xf9, 0x66, 0x5c, 0xa4, 0xe3, 0x75, 0x5c, 0xc6, 0x2c, 0x8e, 0x35, 0x01, 0x38, 0x08, 0x5a, 0xae, 0x9d, 0xc3, 0xac, 0x8d, 0xad, 0x22, 0x11, 0x9f, 0x3c, 0xb7, 0x9e, 0x80, 0xd4, 0x0b, 0xe8, 0x2b, 0x7e, 0xc5, 0x34, 0x62, 0xd4, 0x45, 0x3b, 0x24, 0x6e, 0xa8, 0xd3, 0x3e, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_3941_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3941_sharedsecret[] = { 0x5c, 0x2a, 0xad, 0xe0, 0xa9, 0x8e, 0xb4, 0xb5, 0xee, 0xf2, 0xc9, 0x31, 0xc8, 0xad, 0x96, 0x50, 0x7e, 0x78, 0x78, 0xfa, 0x71, 0xf2, 0x73, 0x49, 0xdc, 0x73, 0x18, 0x9e, 0x22, 0x00, 0x34, 0x39, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3941 = { .name = "ecdh_brainpoolp256r1_3941", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3941_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3941_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3941_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1549 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3942 for ECDH, tcId is 1550 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3942_peerpubkey[] = { 0x29, 0x96, 0xd4, 0xab, 0x42, 0xde, 0x83, 0x96, 0xfa, 0x82, 0xcb, 0xa6, 0x18, 0x0f, 0x40, 0x2b, 0x0b, 0x49, 0x1a, 0xeb, 0xcc, 0xaa, 0xdc, 0x12, 0xcd, 0x8b, 0xa0, 0x2b, 0x59, 0xd0, 0xa3, 0x38, 0x23, 0xde, 0xcd, 0x01, 0x87, 0x57, 0xa8, 0x38, 0x80, 0xeb, 0xbf, 0xf1, 0xba, 0x88, 0x63, 0x48, 0xd5, 0xf9, 0xb7, 0x8c, 0xd3, 0x48, 0x34, 0x67, 0x38, 0x6b, 0x1a, 0xe4, 0x26, 0xf6, 0xf0, 0xd8, }; static const unsigned char ecdh_brainpoolp256r1_3942_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3942_sharedsecret[] = { 0x04, 0x22, 0xfa, 0x3d, 0xb0, 0xfd, 0xc0, 0x3a, 0x56, 0x6d, 0x1e, 0xca, 0xff, 0x95, 0x4f, 0xe5, 0xe9, 0xf1, 0x4b, 0xc5, 0xb9, 0x46, 0x41, 0x45, 0xb7, 0x09, 0xbd, 0x2f, 0x6b, 0xb7, 0x20, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3942 = { .name = "ecdh_brainpoolp256r1_3942", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3942_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3942_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3942_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1550 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3943 for ECDH, tcId is 1551 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3943_peerpubkey[] = { 0x70, 0x44, 0x85, 0xf4, 0xc9, 0xcf, 0xcf, 0x22, 0xb7, 0xf0, 0xd7, 0xd2, 0x38, 0xcf, 0x83, 0xc4, 0xb8, 0xed, 0x64, 0xe1, 0xf7, 0x99, 0x36, 0x2a, 0x86, 0x47, 0x06, 0x61, 0x7b, 0xdf, 0x86, 0x3a, 0x3b, 0xd8, 0xfd, 0x90, 0xa2, 0x7b, 0xcd, 0x93, 0x9b, 0x95, 0x6e, 0x98, 0x2a, 0x2d, 0x69, 0x9e, 0x93, 0xac, 0x36, 0x0f, 0xbf, 0xec, 0x7f, 0x3d, 0xb2, 0x8a, 0xe6, 0xf4, 0xd5, 0x27, 0x68, 0x9f, }; static const unsigned char ecdh_brainpoolp256r1_3943_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3943_sharedsecret[] = { 0xa8, 0xac, 0xd0, 0xb6, 0x5f, 0xb0, 0xa5, 0xe6, 0xa8, 0xce, 0x0f, 0x17, 0x88, 0x43, 0xc3, 0xf0, 0x5c, 0xcd, 0x2d, 0x69, 0x27, 0x64, 0x26, 0xd9, 0x55, 0x0c, 0x64, 0x69, 0xd2, 0xbb, 0x5e, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3943 = { .name = "ecdh_brainpoolp256r1_3943", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3943_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3943_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3943_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1551 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3944 for ECDH, tcId is 1552 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3944_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x13, 0xa0, 0x34, 0x6d, 0xb1, 0x4d, 0x55, 0xd1, 0xbc, 0xc2, 0x70, 0x79, 0xb6, 0x88, 0x64, 0xac, 0x32, 0x88, 0x5b, 0x5b, 0xdf, 0xc3, 0xc9, 0xdb, 0x6f, 0x85, 0xa3, 0x5d, 0x3d, 0xf4, 0xc3, 0x9b, }; static const unsigned char ecdh_brainpoolp256r1_3944_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3944_sharedsecret[] = { 0x39, 0x92, 0x5a, 0xdf, 0x80, 0x13, 0x7a, 0x62, 0xaf, 0x88, 0x26, 0xdb, 0xf0, 0x59, 0x8f, 0xf4, 0xcd, 0xa0, 0x0a, 0xb0, 0x3b, 0xdf, 0x19, 0xb2, 0x98, 0xac, 0xea, 0xb0, 0xf6, 0x61, 0xc8, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3944 = { .name = "ecdh_brainpoolp256r1_3944", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3944_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3944_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3944_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 1552 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3945 for ECDH, tcId is 1553 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3945_peerpubkey[] = { 0x5a, 0x16, 0x0c, 0x3d, 0x01, 0x06, 0x78, 0x5d, 0x6a, 0x87, 0xf0, 0x8d, 0x3d, 0x79, 0x93, 0xd0, 0x7a, 0x8e, 0x6a, 0x90, 0x54, 0xb3, 0xd9, 0xae, 0x1c, 0xb2, 0xa5, 0x2f, 0x87, 0x4a, 0x37, 0x84, 0x18, 0xd4, 0x88, 0x3b, 0x76, 0x39, 0x5b, 0x96, 0x98, 0xe4, 0xe7, 0xc9, 0x86, 0xd5, 0xda, 0xf3, 0xd4, 0xea, 0x05, 0x4c, 0x45, 0x21, 0x3a, 0x20, 0xfe, 0xf0, 0xd8, 0x14, 0xff, 0xc2, 0x4b, 0xe4, }; static const unsigned char ecdh_brainpoolp256r1_3945_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3945_sharedsecret[] = { 0x1d, 0x61, 0xf1, 0x83, 0xa2, 0x2f, 0xb5, 0xc5, 0x17, 0x13, 0xd6, 0x39, 0x04, 0xed, 0x73, 0x60, 0x16, 0x11, 0x9f, 0x35, 0xe6, 0x55, 0x54, 0x08, 0x69, 0x4d, 0x41, 0x87, 0x25, 0x69, 0x3f, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3945 = { .name = "ecdh_brainpoolp256r1_3945", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3945_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3945_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3945_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 1553 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3946 for ECDH, tcId is 1554 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3946_peerpubkey[] = { 0x27, 0x83, 0x46, 0xb3, 0xdd, 0x15, 0x37, 0x93, 0x2f, 0x0e, 0xc7, 0x18, 0x5d, 0xe5, 0xdd, 0x92, 0x57, 0xf4, 0x87, 0x2f, 0x30, 0x03, 0xe7, 0xd9, 0x72, 0x51, 0xd3, 0x5e, 0xe3, 0x86, 0x83, 0xcf, 0x0b, 0x94, 0x11, 0xb5, 0xe8, 0x19, 0x3f, 0x75, 0xc0, 0x58, 0x76, 0x2d, 0x52, 0x45, 0x80, 0xf5, 0x66, 0x91, 0x0a, 0x84, 0x27, 0x2e, 0x3a, 0xee, 0xfe, 0xf4, 0xe2, 0x5c, 0x1e, 0x80, 0x1f, 0xd9, }; static const unsigned char ecdh_brainpoolp256r1_3946_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3946_sharedsecret[] = { 0x7d, 0xa7, 0x8e, 0x5c, 0xae, 0xfd, 0x12, 0x3a, 0x4b, 0x6c, 0xfa, 0x46, 0x14, 0x74, 0x0f, 0x1e, 0x08, 0xb4, 0x24, 0x27, 0xe8, 0xed, 0x2f, 0xf7, 0x7c, 0x4a, 0x66, 0x97, 0xb7, 0xd5, 0xeb, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3946 = { .name = "ecdh_brainpoolp256r1_3946", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3946_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3946_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3946_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1, tcId is 1554 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3947 for ECDH, tcId is 1555 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3947_peerpubkey[] = { 0x12, 0x94, 0x4b, 0xbc, 0x0e, 0xdb, 0x55, 0x7f, 0x69, 0x09, 0x23, 0x29, 0xc3, 0xec, 0xe0, 0x41, 0xd6, 0xf0, 0xad, 0x7c, 0xb1, 0xa9, 0x01, 0xb5, 0x50, 0xb3, 0x50, 0x58, 0xdc, 0x6a, 0xf5, 0xde, 0x64, 0x9c, 0xa2, 0x34, 0x2b, 0x06, 0xc4, 0x38, 0x54, 0xe8, 0xa3, 0xaf, 0x38, 0x3f, 0x75, 0xe3, 0x63, 0xb2, 0x71, 0xed, 0x90, 0xeb, 0x62, 0xf8, 0x43, 0xf6, 0x9f, 0x31, 0xf2, 0x0b, 0x9b, 0xef, }; static const unsigned char ecdh_brainpoolp256r1_3947_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3947_sharedsecret[] = { 0x67, 0xdb, 0x52, 0xeb, 0x94, 0x7a, 0xb0, 0x3e, 0x8b, 0x7d, 0x17, 0x2c, 0x18, 0x78, 0x21, 0x06, 0x2d, 0xe1, 0x80, 0x50, 0xf0, 0x71, 0x86, 0x33, 0xa8, 0x2f, 0xf0, 0x6a, 0x9d, 0x81, 0x45, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3947 = { .name = "ecdh_brainpoolp256r1_3947", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3947_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3947_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3947_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1555 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3948 for ECDH, tcId is 1556 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3948_peerpubkey[] = { 0x8b, 0xa7, 0x4e, 0x0d, 0xd6, 0x52, 0x80, 0xc3, 0x2d, 0x8e, 0x6e, 0xc1, 0x92, 0xa4, 0xc8, 0x2b, 0x34, 0x6b, 0xf9, 0x42, 0xf2, 0x8b, 0x9a, 0x97, 0x07, 0xfc, 0x76, 0x26, 0x27, 0x98, 0x9e, 0x28, 0x97, 0x85, 0x26, 0x37, 0xa3, 0x73, 0xad, 0xf4, 0xc9, 0x05, 0x72, 0x33, 0x67, 0x1c, 0x22, 0x74, 0xdf, 0x62, 0x37, 0x8b, 0x77, 0x82, 0x92, 0x45, 0x95, 0x0e, 0x39, 0x70, 0x8d, 0xec, 0x23, 0x36, }; static const unsigned char ecdh_brainpoolp256r1_3948_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3948_sharedsecret[] = { 0x4a, 0x68, 0x7a, 0x8f, 0xb8, 0xc6, 0x00, 0x5c, 0xc8, 0xd1, 0x93, 0xbe, 0xbd, 0x92, 0xff, 0x5b, 0xa8, 0x41, 0x83, 0x1b, 0xb7, 0xc2, 0x03, 0xf4, 0x1e, 0xe4, 0x35, 0xa2, 0x6d, 0x2c, 0x76, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3948 = { .name = "ecdh_brainpoolp256r1_3948", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3948_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3948_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3948_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1556 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3949 for ECDH, tcId is 1557 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3949_peerpubkey[] = { 0x94, 0xc7, 0xba, 0xdf, 0xde, 0x72, 0x94, 0xc9, 0x79, 0x6c, 0xaf, 0xde, 0x2a, 0xe5, 0x11, 0x7c, 0xca, 0xc3, 0xc9, 0x18, 0xba, 0xeb, 0xe9, 0x79, 0xbd, 0xd1, 0x0c, 0xdd, 0xc0, 0x72, 0xf2, 0x65, 0x48, 0xd8, 0x86, 0xb6, 0x63, 0x23, 0x76, 0xdb, 0xd3, 0x26, 0xe2, 0xa8, 0x11, 0x35, 0xcb, 0xe8, 0xc0, 0xde, 0xa7, 0xf6, 0xcc, 0x2e, 0xad, 0x76, 0x95, 0x60, 0x0a, 0xb6, 0xd5, 0xbd, 0xfb, 0xb8, }; static const unsigned char ecdh_brainpoolp256r1_3949_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3949_sharedsecret[] = { 0x03, 0x1a, 0x8c, 0x1b, 0x0a, 0x41, 0x82, 0x91, 0x4a, 0x62, 0x5b, 0x25, 0x9c, 0x94, 0xa9, 0x25, 0x90, 0xdb, 0x14, 0x3e, 0xea, 0x8f, 0x6d, 0x66, 0x6e, 0x38, 0x3a, 0xc1, 0xba, 0x8a, 0x69, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3949 = { .name = "ecdh_brainpoolp256r1_3949", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3949_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3949_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3949_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1557 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3950 for ECDH, tcId is 1558 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3950_peerpubkey[] = { 0x51, 0x5e, 0x62, 0x2a, 0xe1, 0x9b, 0xdf, 0x58, 0xfa, 0x07, 0xf8, 0x1b, 0x76, 0x55, 0x99, 0x71, 0xb5, 0x2f, 0x6a, 0xf0, 0xcb, 0x53, 0x34, 0x66, 0xb9, 0x14, 0x4c, 0x1a, 0xe6, 0x80, 0x3d, 0x59, 0x14, 0xef, 0xcd, 0x4c, 0xd5, 0x6a, 0xf5, 0xa0, 0x65, 0x47, 0xf4, 0xc9, 0x71, 0x95, 0x31, 0xb7, 0xc5, 0xe3, 0x5e, 0xca, 0xfc, 0x62, 0x56, 0x64, 0xa5, 0x62, 0xd5, 0xc3, 0xc0, 0xb1, 0xf3, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_3950_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3950_sharedsecret[] = { 0x64, 0xed, 0xb0, 0x52, 0xd3, 0xaa, 0x61, 0xfe, 0xce, 0x98, 0x97, 0x81, 0x23, 0x74, 0x79, 0xfa, 0x87, 0x33, 0x8d, 0x91, 0xc4, 0x0f, 0x16, 0x14, 0x9f, 0xea, 0x26, 0x5f, 0x38, 0x96, 0x0c, 0x85, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3950 = { .name = "ecdh_brainpoolp256r1_3950", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3950_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3950_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3950_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1558 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3951 for ECDH, tcId is 1559 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3951_peerpubkey[] = { 0x6c, 0xce, 0x5c, 0x28, 0x9c, 0x33, 0xbf, 0x4f, 0x48, 0x37, 0x84, 0x7b, 0x6d, 0xa5, 0x1c, 0xc7, 0xb8, 0x2c, 0x16, 0x8a, 0xd8, 0x63, 0xbe, 0x86, 0xa5, 0x6d, 0xcc, 0x11, 0x13, 0x3b, 0x86, 0x9e, 0x78, 0xac, 0x9e, 0x2b, 0x17, 0x7e, 0xe9, 0xb9, 0xed, 0x5b, 0xc3, 0xbf, 0xac, 0x66, 0x24, 0x9c, 0x81, 0x4c, 0x56, 0x3a, 0x9d, 0x43, 0x6e, 0xf0, 0xba, 0xc9, 0xcc, 0x4f, 0xd4, 0x80, 0xd9, 0xd6, }; static const unsigned char ecdh_brainpoolp256r1_3951_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3951_sharedsecret[] = { 0x73, 0x59, 0xb5, 0xc5, 0x81, 0x2a, 0xfe, 0x38, 0xf5, 0xd1, 0x8c, 0x0e, 0x81, 0xfb, 0x4d, 0x0c, 0xdd, 0xaa, 0x9a, 0x9e, 0xda, 0x65, 0x92, 0x07, 0x23, 0x3c, 0x74, 0x5b, 0xcb, 0x45, 0x92, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3951 = { .name = "ecdh_brainpoolp256r1_3951", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3951_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3951_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3951_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1559 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3952 for ECDH, tcId is 1560 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3952_peerpubkey[] = { 0x7c, 0xaa, 0xf0, 0x4d, 0x36, 0x3f, 0x30, 0x65, 0xaf, 0x3e, 0x33, 0x47, 0xeb, 0x4d, 0xc6, 0x68, 0x11, 0xe9, 0x61, 0xfc, 0x3a, 0xb0, 0xf3, 0xb4, 0x24, 0x1e, 0xaf, 0x1b, 0x00, 0x3b, 0x97, 0x5b, 0x55, 0x72, 0xec, 0xbf, 0x8a, 0xe2, 0x30, 0x75, 0x14, 0x3c, 0x2a, 0x97, 0x5f, 0xdc, 0x21, 0xeb, 0xdc, 0x3a, 0xbd, 0xf0, 0x52, 0x98, 0x64, 0x01, 0xad, 0x14, 0xd4, 0x6c, 0xae, 0x2a, 0x2c, 0x67, }; static const unsigned char ecdh_brainpoolp256r1_3952_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3952_sharedsecret[] = { 0x56, 0x5d, 0xee, 0x51, 0x79, 0xb1, 0xa5, 0x37, 0xb4, 0x4e, 0xa7, 0xae, 0x05, 0x0c, 0x45, 0xab, 0x0f, 0xa0, 0xb8, 0x75, 0x56, 0x02, 0x54, 0xe7, 0xd0, 0xa3, 0x4f, 0x58, 0x77, 0xb8, 0x36, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3952 = { .name = "ecdh_brainpoolp256r1_3952", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3952_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3952_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3952_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1560 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3953 for ECDH, tcId is 1561 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3953_peerpubkey[] = { 0x17, 0x24, 0x2d, 0x69, 0x5a, 0xe9, 0x38, 0xca, 0x1d, 0x51, 0x03, 0xee, 0x87, 0x34, 0xb8, 0xb7, 0xce, 0x32, 0xf1, 0xa8, 0x73, 0xfd, 0x59, 0x63, 0xd8, 0xca, 0x1f, 0xa4, 0x5e, 0x5f, 0x63, 0x74, 0x98, 0x62, 0xbd, 0x83, 0x0b, 0x40, 0xa4, 0x25, 0x81, 0xfa, 0x66, 0x5c, 0x5b, 0x1c, 0x63, 0x96, 0x48, 0x07, 0xbe, 0x6a, 0x52, 0xe9, 0x8f, 0xe6, 0xa7, 0x44, 0x7c, 0x4f, 0xc9, 0xeb, 0x98, 0x1c, }; static const unsigned char ecdh_brainpoolp256r1_3953_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3953_sharedsecret[] = { 0x92, 0xb9, 0xb1, 0xa4, 0x5c, 0xa6, 0x1b, 0x85, 0x65, 0x4d, 0xdb, 0xf9, 0x86, 0xbd, 0x6c, 0xc8, 0x94, 0x49, 0xfa, 0x1d, 0x2d, 0xf6, 0xec, 0xf7, 0x1a, 0xf7, 0x87, 0x35, 0x97, 0x4f, 0x9a, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3953 = { .name = "ecdh_brainpoolp256r1_3953", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3953_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3953_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3953_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1561 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3954 for ECDH, tcId is 1562 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3954_peerpubkey[] = { 0x34, 0xc3, 0x31, 0x3a, 0x25, 0x68, 0x36, 0x84, 0xa4, 0x53, 0x04, 0x7b, 0xfe, 0x89, 0x26, 0x1e, 0x4d, 0x63, 0x54, 0xcb, 0x55, 0xa3, 0x28, 0xe4, 0xa1, 0x3a, 0x11, 0x6c, 0xe3, 0x0c, 0x4c, 0xfc, 0x7a, 0xc2, 0xac, 0x3a, 0x10, 0x72, 0xef, 0xb4, 0x85, 0xe7, 0x60, 0x4a, 0x50, 0x5c, 0xc9, 0x59, 0x7d, 0x02, 0x3f, 0xa5, 0x53, 0xa4, 0x2f, 0xbb, 0xbe, 0x73, 0xec, 0xc0, 0xd2, 0x1b, 0xbb, 0xf1, }; static const unsigned char ecdh_brainpoolp256r1_3954_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3954_sharedsecret[] = { 0x82, 0x2f, 0x79, 0xc4, 0x79, 0x0f, 0xc3, 0xce, 0xa7, 0xf7, 0xf1, 0x95, 0xb1, 0xbd, 0x89, 0x88, 0x94, 0xf6, 0x81, 0x82, 0xb7, 0x20, 0xec, 0x93, 0xef, 0xb6, 0xc0, 0x3a, 0xce, 0xa7, 0x96, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3954 = { .name = "ecdh_brainpoolp256r1_3954", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3954_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3954_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3954_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1562 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3955 for ECDH, tcId is 1563 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3955_peerpubkey[] = { 0x64, 0x4b, 0xc0, 0x81, 0xa7, 0x58, 0x55, 0x0f, 0x0d, 0xab, 0x1e, 0x8b, 0x00, 0x51, 0x0c, 0x29, 0x97, 0x91, 0xa3, 0x94, 0x10, 0xed, 0x42, 0xcb, 0xd6, 0x42, 0x4f, 0xd2, 0x21, 0x0b, 0x08, 0x8c, 0x8c, 0xfb, 0x10, 0x55, 0xde, 0x8e, 0x3f, 0xb1, 0x62, 0x1f, 0xd5, 0x1c, 0x3c, 0xc7, 0x30, 0xb7, 0x16, 0x96, 0x78, 0x64, 0x33, 0x3b, 0x05, 0x9c, 0x69, 0x44, 0x0d, 0x28, 0x7b, 0x00, 0x57, 0xcf, }; static const unsigned char ecdh_brainpoolp256r1_3955_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3955_sharedsecret[] = { 0x31, 0x81, 0xdb, 0x0a, 0x74, 0xa0, 0xc5, 0xfa, 0x35, 0xed, 0x90, 0xb0, 0x36, 0x3b, 0x49, 0x22, 0x17, 0x6f, 0x76, 0xb3, 0x4f, 0x82, 0x83, 0x64, 0xcb, 0x2a, 0xe0, 0x53, 0x06, 0x8d, 0xf6, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3955 = { .name = "ecdh_brainpoolp256r1_3955", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3955_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3955_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3955_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1563 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3956 for ECDH, tcId is 1564 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3956_peerpubkey[] = { 0x4f, 0x3a, 0x31, 0x5a, 0x5d, 0x22, 0x53, 0x73, 0xf6, 0x3a, 0x90, 0x3e, 0x60, 0xa4, 0xf2, 0x46, 0xbe, 0x33, 0xf3, 0x81, 0xc9, 0x30, 0xad, 0x81, 0x60, 0xab, 0x6b, 0xd0, 0x93, 0x9b, 0xf6, 0x33, 0xa0, 0xd2, 0x7d, 0x02, 0x71, 0x15, 0xd0, 0x48, 0x6f, 0xd4, 0x28, 0x75, 0xf0, 0xcd, 0x67, 0xd9, 0x05, 0xee, 0x1e, 0x98, 0xdb, 0x6c, 0x73, 0x10, 0xcf, 0x5a, 0x93, 0x97, 0x7e, 0x01, 0x80, 0x6b, }; static const unsigned char ecdh_brainpoolp256r1_3956_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3956_sharedsecret[] = { 0x10, 0xbc, 0x04, 0x3a, 0x9d, 0x7c, 0xa8, 0x89, 0xbe, 0xd9, 0x70, 0x1b, 0x96, 0x27, 0x64, 0x23, 0x4e, 0x1f, 0x49, 0xa7, 0xe0, 0x16, 0xe2, 0xd6, 0x6f, 0x5b, 0xd1, 0x4c, 0xf1, 0x17, 0x22, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3956 = { .name = "ecdh_brainpoolp256r1_3956", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3956_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3956_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3956_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1564 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3957 for ECDH, tcId is 1565 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3957_peerpubkey[] = { 0x43, 0x98, 0x9e, 0x59, 0x3f, 0x2c, 0xf4, 0xf5, 0x2e, 0xcc, 0xc7, 0xd5, 0x7c, 0x92, 0x1f, 0x15, 0x8a, 0xa3, 0x41, 0x02, 0x55, 0x72, 0xeb, 0xa1, 0x3b, 0xe7, 0x5a, 0xc2, 0x64, 0x4b, 0xb1, 0x59, 0x89, 0x2d, 0x74, 0x8c, 0xae, 0x88, 0xef, 0xb8, 0x49, 0xb2, 0x01, 0xcc, 0x98, 0x66, 0x4d, 0x2f, 0xd1, 0xe5, 0x8d, 0xf9, 0xce, 0x43, 0x31, 0xb7, 0x43, 0x7a, 0xa0, 0x33, 0x51, 0xcf, 0x1f, 0xb8, }; static const unsigned char ecdh_brainpoolp256r1_3957_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3957_sharedsecret[] = { 0x1c, 0x21, 0xf4, 0x50, 0xba, 0x76, 0x6f, 0xf3, 0xe5, 0xf6, 0xc7, 0x85, 0x9b, 0x98, 0x04, 0x3a, 0xc3, 0x2c, 0x98, 0xb2, 0x7b, 0x09, 0x63, 0xad, 0xc3, 0x38, 0x02, 0xc7, 0xe1, 0xd9, 0x58, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3957 = { .name = "ecdh_brainpoolp256r1_3957", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3957_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3957_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3957_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1565 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3958 for ECDH, tcId is 1566 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3958_peerpubkey[] = { 0x28, 0x7b, 0xa2, 0x2b, 0xc6, 0xaf, 0x8c, 0x26, 0x28, 0x89, 0x3e, 0xd2, 0xf2, 0x7f, 0xb7, 0x5b, 0xa8, 0xbd, 0xe8, 0xf2, 0xe5, 0x04, 0x8f, 0xbf, 0x0b, 0x67, 0xaa, 0xa4, 0x83, 0x67, 0x17, 0x0e, 0x2a, 0x2f, 0x30, 0x70, 0xcb, 0x6a, 0xe9, 0x1a, 0xb7, 0x95, 0x10, 0x60, 0x03, 0xe0, 0x35, 0x84, 0x37, 0xd8, 0xdd, 0x47, 0xe5, 0x59, 0x25, 0x32, 0x93, 0x31, 0x86, 0x0c, 0xfd, 0x3e, 0x08, 0x3c, }; static const unsigned char ecdh_brainpoolp256r1_3958_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3958_sharedsecret[] = { 0x70, 0xeb, 0x47, 0xf8, 0x30, 0xcb, 0xfe, 0x6a, 0x35, 0x4d, 0x3a, 0x60, 0x21, 0x45, 0x2d, 0x3d, 0xbb, 0x24, 0x0f, 0xcf, 0x34, 0x4e, 0x42, 0xaa, 0x9f, 0xef, 0x6a, 0xeb, 0x6e, 0xf2, 0xf9, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3958 = { .name = "ecdh_brainpoolp256r1_3958", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3958_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3958_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3958_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1566 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3959 for ECDH, tcId is 1567 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3959_peerpubkey[] = { 0x5b, 0x21, 0xdc, 0x00, 0x54, 0xfd, 0x3d, 0xcd, 0x5f, 0xb0, 0x9e, 0x22, 0x5c, 0x5a, 0x54, 0x00, 0x99, 0x52, 0xeb, 0x8b, 0x1a, 0x86, 0xdd, 0x58, 0xf6, 0x5c, 0x76, 0x84, 0xec, 0x57, 0xfa, 0x39, 0x58, 0x8c, 0xe5, 0x47, 0x88, 0xcb, 0x96, 0xe6, 0xbd, 0x5a, 0x2f, 0x98, 0xd1, 0x84, 0xa8, 0x09, 0xee, 0x83, 0x68, 0x9d, 0x5d, 0xf3, 0x9e, 0x50, 0xda, 0x63, 0xb3, 0x86, 0x1a, 0xb4, 0xff, 0x0a, }; static const unsigned char ecdh_brainpoolp256r1_3959_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3959_sharedsecret[] = { 0x99, 0x03, 0xba, 0xf2, 0x04, 0x17, 0x54, 0x57, 0xc5, 0xce, 0xa4, 0xdd, 0x44, 0x83, 0x79, 0xf4, 0xb5, 0x76, 0xf0, 0x8c, 0x17, 0xf9, 0x33, 0x94, 0xed, 0xf5, 0x2c, 0x57, 0xd6, 0x14, 0xe2, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3959 = { .name = "ecdh_brainpoolp256r1_3959", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3959_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3959_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3959_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1567 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3960 for ECDH, tcId is 1568 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3960_peerpubkey[] = { 0x28, 0x63, 0xb6, 0x8e, 0x69, 0x17, 0x1a, 0xe8, 0x33, 0x4a, 0xb1, 0x6d, 0xd3, 0xfd, 0x22, 0x00, 0xb6, 0x43, 0xc1, 0x36, 0xba, 0xea, 0xb4, 0xd4, 0x34, 0xfd, 0x27, 0xfe, 0x60, 0x8f, 0x61, 0x9d, 0x99, 0xa9, 0x0a, 0x8e, 0xc3, 0x89, 0x69, 0xc1, 0xfd, 0x85, 0xc6, 0xab, 0x1e, 0xc5, 0x80, 0xf2, 0xeb, 0x08, 0xd2, 0xf4, 0xa2, 0xee, 0xcd, 0xbb, 0xe5, 0x00, 0xeb, 0x30, 0x12, 0x96, 0xf7, 0xe4, }; static const unsigned char ecdh_brainpoolp256r1_3960_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3960_sharedsecret[] = { 0x75, 0xee, 0x10, 0xf0, 0x87, 0xeb, 0xb5, 0xfe, 0xb8, 0xee, 0xed, 0xf9, 0x65, 0xf8, 0xa4, 0x95, 0xcf, 0x92, 0xae, 0x20, 0x2e, 0xb2, 0xa0, 0x0e, 0x82, 0xdf, 0x1d, 0xe4, 0x6a, 0x03, 0x21, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3960 = { .name = "ecdh_brainpoolp256r1_3960", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3960_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3960_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3960_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1568 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3961 for ECDH, tcId is 1569 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3961_peerpubkey[] = { 0x14, 0x79, 0x45, 0x9c, 0x8a, 0xe9, 0x5e, 0x8c, 0x50, 0xde, 0x6e, 0xbb, 0xe0, 0x98, 0x5e, 0x5a, 0xa5, 0x4f, 0xa0, 0x16, 0x40, 0xa4, 0x72, 0xb0, 0x8a, 0x41, 0x20, 0x5c, 0xad, 0x6d, 0xb6, 0x25, 0x3a, 0xec, 0xd0, 0x3d, 0x42, 0x42, 0xc5, 0x28, 0x89, 0x8e, 0x83, 0x2c, 0xa5, 0xb3, 0x18, 0x75, 0x2d, 0x50, 0x57, 0xf0, 0xe2, 0xec, 0x8b, 0xb2, 0x73, 0xd3, 0xd8, 0xed, 0x59, 0x3d, 0x47, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_3961_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3961_sharedsecret[] = { 0x0b, 0x3b, 0x90, 0x74, 0x2c, 0x9d, 0xc4, 0xa0, 0x00, 0xbe, 0x6e, 0xcb, 0x4f, 0xf5, 0x28, 0x69, 0x05, 0x87, 0x69, 0x47, 0xe0, 0x78, 0x5d, 0xdd, 0x86, 0x26, 0xd0, 0xd2, 0xfe, 0x0c, 0x87, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3961 = { .name = "ecdh_brainpoolp256r1_3961", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3961_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3961_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3961_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1569 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3962 for ECDH, tcId is 1570 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3962_peerpubkey[] = { 0x44, 0x8e, 0x35, 0x9d, 0x48, 0x7d, 0x2b, 0xaf, 0x8e, 0x10, 0x97, 0x6d, 0xe4, 0x28, 0x60, 0x1c, 0xcf, 0x99, 0xc8, 0x5e, 0x84, 0x85, 0xdf, 0x95, 0x5f, 0xa3, 0xa8, 0xdb, 0x95, 0xb5, 0xb2, 0xde, 0x7d, 0xa7, 0x96, 0x0b, 0x46, 0x91, 0x27, 0xc1, 0xcc, 0x52, 0x18, 0xa4, 0x05, 0x58, 0x46, 0x0d, 0xca, 0xca, 0xe6, 0x82, 0x24, 0xaf, 0x71, 0xef, 0xa9, 0x08, 0xcb, 0x54, 0x3e, 0xc2, 0x17, 0xf7, }; static const unsigned char ecdh_brainpoolp256r1_3962_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3962_sharedsecret[] = { 0x05, 0x6d, 0x7d, 0xb9, 0x99, 0xc7, 0xa5, 0x73, 0x77, 0xad, 0x4a, 0xb7, 0x1e, 0x77, 0x25, 0x2e, 0x84, 0x8c, 0x0c, 0xcf, 0x80, 0x12, 0x39, 0x52, 0x2f, 0xfc, 0x72, 0x82, 0x6c, 0xaa, 0xd8, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3962 = { .name = "ecdh_brainpoolp256r1_3962", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3962_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3962_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3962_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 1570 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3963 for ECDH, tcId is 1571 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3963_peerpubkey[] = { 0x00, 0xc5, 0xf7, 0xc4, 0x78, 0xf1, 0xcc, 0xab, 0xb9, 0x13, 0x4b, 0x29, 0x67, 0x19, 0x00, 0x06, 0x39, 0x6a, 0x23, 0xf1, 0x13, 0x52, 0x9f, 0xd7, 0x31, 0xce, 0xfd, 0x6c, 0x56, 0x4a, 0x8f, 0xc6, 0x20, 0x39, 0xb2, 0xcb, 0x85, 0xa1, 0x60, 0xb8, 0x7f, 0x2e, 0x5e, 0x41, 0xe8, 0xb1, 0x81, 0xf2, 0x10, 0x0c, 0xe8, 0xc3, 0xc0, 0x1e, 0x37, 0x70, 0xa4, 0xf9, 0xd8, 0x77, 0x5f, 0x9a, 0x3c, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_3963_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3963_sharedsecret[] = { 0x56, 0x8e, 0xbe, 0xd1, 0x63, 0x0f, 0xba, 0x54, 0x92, 0xef, 0x3f, 0x0d, 0x09, 0x58, 0x70, 0xff, 0xf4, 0x0d, 0x59, 0x45, 0x9d, 0x48, 0x33, 0x04, 0x60, 0x81, 0xb8, 0x94, 0xdd, 0x16, 0xd5, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3963 = { .name = "ecdh_brainpoolp256r1_3963", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3963_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3963_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3963_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1571 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3964 for ECDH, tcId is 1572 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3964_peerpubkey[] = { 0x9a, 0xad, 0x1d, 0x4a, 0xe2, 0x73, 0xe8, 0xa9, 0x7f, 0x0a, 0x3c, 0x38, 0xe1, 0xbf, 0xd5, 0xe5, 0x96, 0x33, 0x82, 0x12, 0x70, 0x87, 0x4e, 0x1f, 0x66, 0x62, 0x77, 0x2a, 0xd3, 0xf6, 0x7e, 0x76, 0x5c, 0x90, 0x8d, 0x84, 0xdc, 0x31, 0x25, 0x60, 0xf7, 0xed, 0x7e, 0x45, 0x95, 0x4a, 0x8b, 0x92, 0x32, 0x12, 0xfe, 0x2b, 0x20, 0xa3, 0x40, 0x61, 0x6e, 0x33, 0x83, 0xab, 0x94, 0x24, 0xde, 0x8b, }; static const unsigned char ecdh_brainpoolp256r1_3964_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3964_sharedsecret[] = { 0x30, 0xee, 0xbf, 0xdf, 0xc9, 0xa7, 0x8f, 0xac, 0x2c, 0xee, 0xf1, 0x95, 0x18, 0x1e, 0x23, 0xa9, 0x10, 0x23, 0x12, 0xaf, 0xee, 0xd9, 0xc5, 0x9e, 0x35, 0x10, 0xc7, 0xd4, 0x5a, 0x9c, 0xb2, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3964 = { .name = "ecdh_brainpoolp256r1_3964", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3964_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3964_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3964_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1572 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3965 for ECDH, tcId is 1573 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3965_peerpubkey[] = { 0x4b, 0x1c, 0x8f, 0x15, 0x14, 0xfe, 0xc6, 0x98, 0x01, 0x3b, 0x56, 0xc9, 0x1f, 0x12, 0x16, 0x83, 0xeb, 0x60, 0xe5, 0x12, 0x1d, 0x9a, 0xad, 0x0d, 0x57, 0x43, 0x2f, 0x84, 0x02, 0x68, 0x1f, 0xec, 0x83, 0x70, 0x93, 0xa4, 0xcb, 0x97, 0x03, 0xf7, 0x31, 0xa8, 0xee, 0xf9, 0x0d, 0x2e, 0x9d, 0x0e, 0xeb, 0x14, 0xbf, 0x3b, 0xbe, 0x8b, 0xac, 0x53, 0x95, 0x9d, 0x2a, 0x2f, 0xe6, 0x3d, 0x75, 0x23, }; static const unsigned char ecdh_brainpoolp256r1_3965_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3965_sharedsecret[] = { 0x27, 0xf6, 0x32, 0x72, 0x29, 0x6a, 0x47, 0xcf, 0xf2, 0x08, 0x02, 0xc5, 0xff, 0x41, 0x0d, 0x0a, 0x52, 0x7a, 0xb2, 0x19, 0x41, 0xa8, 0x27, 0x15, 0xa7, 0xc5, 0xa4, 0xe4, 0xb1, 0x18, 0x88, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3965 = { .name = "ecdh_brainpoolp256r1_3965", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3965_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3965_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3965_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1573 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3966 for ECDH, tcId is 1574 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3966_peerpubkey[] = { 0x30, 0x1a, 0x50, 0x48, 0xfd, 0x99, 0x8b, 0xd0, 0x4b, 0xc4, 0x5a, 0x6c, 0xd9, 0x63, 0x2c, 0x46, 0x93, 0x90, 0xd9, 0xb8, 0xd8, 0xfb, 0x7b, 0xd4, 0x36, 0x6c, 0xd4, 0xb0, 0x38, 0xc8, 0x4f, 0x05, 0x6a, 0x72, 0xd4, 0x67, 0x70, 0x31, 0x27, 0x85, 0x36, 0x15, 0x83, 0x9e, 0x94, 0xa7, 0x67, 0x79, 0x1f, 0x1b, 0x7a, 0x74, 0xa3, 0xb7, 0x76, 0x04, 0xb9, 0xcb, 0xbc, 0x61, 0xef, 0x2e, 0x64, 0x78, }; static const unsigned char ecdh_brainpoolp256r1_3966_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3966_sharedsecret[] = { 0x36, 0xad, 0x05, 0x84, 0x42, 0xd3, 0xa8, 0x43, 0x8e, 0xa6, 0xa2, 0x8b, 0xbf, 0x3f, 0x47, 0x35, 0xee, 0x1f, 0x3e, 0xc0, 0x23, 0x0d, 0x73, 0x22, 0xb3, 0xae, 0x05, 0x06, 0x2e, 0x40, 0x63, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3966 = { .name = "ecdh_brainpoolp256r1_3966", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3966_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3966_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3966_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1574 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3967 for ECDH, tcId is 1575 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3967_peerpubkey[] = { 0x7f, 0xb8, 0x51, 0x87, 0x21, 0xf3, 0xf6, 0x78, 0xf4, 0x2c, 0x5b, 0xb1, 0x20, 0xba, 0xf8, 0x33, 0x11, 0x25, 0x54, 0x88, 0x37, 0x22, 0xee, 0x47, 0x6a, 0x20, 0x03, 0x14, 0x6d, 0x9d, 0x9a, 0xf1, 0x46, 0xfe, 0x1a, 0x51, 0xf1, 0x39, 0x17, 0x5b, 0x58, 0xb3, 0xa8, 0x1f, 0x82, 0xea, 0x0d, 0xf7, 0x74, 0x30, 0x48, 0x4c, 0x56, 0xea, 0xea, 0x0d, 0xe3, 0xfc, 0xa6, 0x60, 0x70, 0xd0, 0x02, 0xf2, }; static const unsigned char ecdh_brainpoolp256r1_3967_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3967_sharedsecret[] = { 0x82, 0xfa, 0x50, 0xc7, 0x59, 0x9c, 0x5c, 0x10, 0x0d, 0xe7, 0x5d, 0xdd, 0xa4, 0x32, 0xb7, 0x1c, 0x87, 0x9f, 0xb6, 0xc8, 0x43, 0x00, 0x48, 0x88, 0x95, 0x71, 0x59, 0x54, 0xc0, 0x11, 0xa3, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3967 = { .name = "ecdh_brainpoolp256r1_3967", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3967_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3967_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3967_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1575 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3968 for ECDH, tcId is 1576 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3968_peerpubkey[] = { 0x8c, 0xbd, 0xd0, 0x2f, 0x5c, 0x9a, 0x83, 0xa4, 0x9b, 0x78, 0xc6, 0x05, 0xf0, 0x1d, 0xe7, 0xb0, 0xa0, 0xf5, 0x36, 0xf3, 0xe9, 0x45, 0x83, 0x9d, 0xd6, 0x32, 0xaf, 0x75, 0x97, 0x00, 0x47, 0x42, 0x70, 0xc3, 0x0b, 0xe6, 0x69, 0xe1, 0x6b, 0x35, 0x98, 0xeb, 0x00, 0x50, 0x32, 0x5c, 0xfa, 0x68, 0x5a, 0xf6, 0x50, 0x59, 0x96, 0x19, 0xb6, 0x63, 0xed, 0x77, 0xd3, 0xd5, 0x43, 0x60, 0xe8, 0x8a, }; static const unsigned char ecdh_brainpoolp256r1_3968_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3968_sharedsecret[] = { 0x93, 0xc3, 0x88, 0xd0, 0x07, 0xb5, 0x64, 0xe0, 0x02, 0x3f, 0x17, 0xc8, 0x12, 0xd6, 0xbd, 0xbb, 0x35, 0xfc, 0xce, 0xa5, 0x96, 0x21, 0x3b, 0x61, 0x9a, 0x0a, 0xc4, 0x76, 0x38, 0xdf, 0xc4, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3968 = { .name = "ecdh_brainpoolp256r1_3968", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3968_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3968_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3968_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 1576 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3969 for ECDH, tcId is 1577 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3969_peerpubkey[] = { 0x2c, 0x9e, 0x06, 0x3b, 0x6f, 0xa4, 0x7a, 0x58, 0xaa, 0xb0, 0xd0, 0x22, 0x33, 0x2a, 0xda, 0x1b, 0xa8, 0xfa, 0xe3, 0x12, 0x2c, 0xf1, 0x12, 0xe1, 0x46, 0xf7, 0x83, 0x03, 0x1e, 0x15, 0x0a, 0x41, 0xa4, 0x5d, 0x80, 0x36, 0xe7, 0x13, 0xd2, 0xd6, 0xf7, 0x13, 0x5e, 0xe8, 0x36, 0xd6, 0x33, 0x23, 0x69, 0x04, 0x56, 0x19, 0x3a, 0x90, 0x99, 0xa0, 0x76, 0x0d, 0x5b, 0x17, 0x1f, 0x96, 0x2f, 0x90, }; static const unsigned char ecdh_brainpoolp256r1_3969_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3969_sharedsecret[] = { 0x20, 0xfa, 0xa1, 0x86, 0x75, 0x4e, 0x98, 0xb8, 0x4c, 0x04, 0xad, 0xf1, 0x12, 0x4c, 0xea, 0x12, 0x04, 0x2f, 0x81, 0xad, 0x62, 0x39, 0x30, 0x25, 0x72, 0x7a, 0xa0, 0x38, 0x87, 0xe5, 0x39, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3969 = { .name = "ecdh_brainpoolp256r1_3969", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3969_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3969_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3969_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1577 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3970 for ECDH, tcId is 1578 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3970_peerpubkey[] = { 0xa1, 0x99, 0x7b, 0x75, 0x84, 0x4c, 0xe5, 0x4f, 0x3e, 0x26, 0xdf, 0x6c, 0xbf, 0xc3, 0xb1, 0x13, 0x5b, 0xdc, 0xde, 0xf0, 0x47, 0x7a, 0x55, 0x88, 0xe4, 0x0c, 0x59, 0xfd, 0xcb, 0xe1, 0xd1, 0xf3, 0x0a, 0xd6, 0xb8, 0x3f, 0xd2, 0xaf, 0x20, 0xc9, 0xcd, 0x69, 0xc0, 0x41, 0x23, 0xb9, 0x1b, 0xe1, 0x30, 0x33, 0x12, 0x51, 0x62, 0x44, 0x43, 0xc5, 0xf6, 0x47, 0x63, 0x06, 0x93, 0x7d, 0xd7, 0x49, }; static const unsigned char ecdh_brainpoolp256r1_3970_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3970_sharedsecret[] = { 0x93, 0xe0, 0x4e, 0x72, 0x3d, 0xb8, 0xd6, 0x55, 0x59, 0x7c, 0x69, 0x49, 0xc2, 0xd4, 0x65, 0xeb, 0x9f, 0x12, 0xab, 0x1a, 0xe1, 0x2e, 0x57, 0x93, 0x22, 0xad, 0xa9, 0x72, 0x6e, 0x7b, 0x9a, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3970 = { .name = "ecdh_brainpoolp256r1_3970", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3970_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3970_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3970_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1578 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3971 for ECDH, tcId is 1579 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3971_peerpubkey[] = { 0x2b, 0xcc, 0x4a, 0xb0, 0x18, 0x34, 0xaa, 0x4a, 0xd5, 0xfa, 0x62, 0x70, 0xc0, 0xf7, 0xde, 0x71, 0xe5, 0x6f, 0xe6, 0x51, 0xc5, 0x81, 0xbb, 0x2d, 0xdd, 0x46, 0x51, 0x03, 0x60, 0x0d, 0x29, 0x1e, 0x79, 0x0a, 0x3b, 0x9f, 0x70, 0xf1, 0x15, 0xfb, 0x08, 0xa4, 0xa8, 0x34, 0x24, 0x5a, 0x61, 0x93, 0xaa, 0x80, 0x33, 0x02, 0xd3, 0xb9, 0x5b, 0x14, 0x1d, 0x1e, 0x09, 0x4a, 0xc0, 0xdc, 0x60, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_3971_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3971_sharedsecret[] = { 0x6b, 0x2a, 0xe6, 0x3c, 0x6b, 0xd9, 0x4f, 0x50, 0xed, 0x8a, 0xe5, 0x9b, 0x83, 0xb5, 0x03, 0x6a, 0x55, 0x90, 0xc7, 0xc3, 0xda, 0xef, 0x6c, 0xee, 0x65, 0xbc, 0x6b, 0x9a, 0x28, 0xcf, 0x70, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3971 = { .name = "ecdh_brainpoolp256r1_3971", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3971_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3971_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3971_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1579 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3972 for ECDH, tcId is 1580 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3972_peerpubkey[] = { 0x94, 0xe4, 0x09, 0x12, 0xae, 0x20, 0x08, 0x8a, 0xc6, 0xc0, 0x82, 0x88, 0x4b, 0xab, 0x70, 0x6e, 0x5e, 0x73, 0x91, 0xb1, 0x6d, 0x22, 0x07, 0xae, 0xce, 0xc5, 0xce, 0x6c, 0x72, 0xc9, 0x9d, 0xa6, 0x66, 0x41, 0x9d, 0x68, 0x30, 0xde, 0x0c, 0x29, 0x19, 0x0f, 0x81, 0x49, 0x3e, 0x2c, 0x63, 0xc4, 0xe7, 0x5f, 0x63, 0x13, 0xc8, 0xea, 0x35, 0x43, 0xa5, 0xc8, 0xe6, 0xdb, 0x6b, 0xf6, 0x53, 0xf9, }; static const unsigned char ecdh_brainpoolp256r1_3972_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3972_sharedsecret[] = { 0x1e, 0x26, 0x76, 0xa0, 0x91, 0xb9, 0xab, 0x82, 0x12, 0xa5, 0x25, 0x62, 0xaa, 0xef, 0x64, 0x85, 0x54, 0x47, 0x20, 0xbb, 0x40, 0x3b, 0xd0, 0x2c, 0xe0, 0x09, 0xf4, 0x1c, 0x17, 0x77, 0x0b, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3972 = { .name = "ecdh_brainpoolp256r1_3972", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3972_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3972_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3972_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1580 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3973 for ECDH, tcId is 1581 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3973_peerpubkey[] = { 0x16, 0x91, 0x45, 0x95, 0xd7, 0xe6, 0x68, 0xc0, 0x21, 0x4a, 0x69, 0xff, 0xeb, 0x49, 0xb0, 0x40, 0xbe, 0x36, 0x9b, 0x59, 0x4c, 0x4c, 0xf3, 0x38, 0xcc, 0x17, 0xf5, 0x36, 0x93, 0x61, 0x1c, 0x81, 0x47, 0x03, 0x59, 0xd2, 0x1f, 0xa7, 0x07, 0xc5, 0x49, 0x05, 0x53, 0x61, 0x66, 0x55, 0x2f, 0xf7, 0x88, 0xb7, 0x80, 0xb6, 0x38, 0xf9, 0xe8, 0xb1, 0xad, 0xda, 0x69, 0xb9, 0x32, 0xd0, 0xa6, 0xb2, }; static const unsigned char ecdh_brainpoolp256r1_3973_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3973_sharedsecret[] = { 0x4d, 0xb7, 0xea, 0x61, 0xe0, 0x53, 0xe3, 0xf7, 0x35, 0x74, 0x04, 0xe0, 0x25, 0x34, 0x07, 0xa7, 0x91, 0x9c, 0x04, 0x81, 0x83, 0xd1, 0xb9, 0xbb, 0x49, 0xa7, 0x41, 0xf6, 0xdb, 0x96, 0xd7, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3973 = { .name = "ecdh_brainpoolp256r1_3973", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3973_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3973_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3973_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 1581 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3974 for ECDH, tcId is 1582 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3974_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0xe0, 0xe9, 0xe8, 0xd9, 0x8f, 0xb8, 0x9d, 0xa2, 0xa3, 0x2b, 0x2c, 0x76, 0x18, 0xb2, 0x6b, 0xb9, 0x9b, 0x92, 0x0f, 0x02, 0xa5, 0xe8, 0x31, 0xa1, 0x42, 0xe6, 0xc8, 0x67, 0x31, 0x10, 0xcd, }; static const unsigned char ecdh_brainpoolp256r1_3974_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3974_sharedsecret[] = { 0x94, 0x7d, 0x51, 0x8a, 0xa2, 0x90, 0xbc, 0xe9, 0x1c, 0x59, 0x26, 0x51, 0x0c, 0xa8, 0xdf, 0xbc, 0xfa, 0x2d, 0x11, 0x2b, 0x8a, 0x5c, 0xab, 0x33, 0xc8, 0xfe, 0xb5, 0xa3, 0x0e, 0x76, 0xf1, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3974 = { .name = "ecdh_brainpoolp256r1_3974", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3974_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3974_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3974_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 1582 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3975 for ECDH, tcId is 1583 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3975_peerpubkey[] = { 0x02, 0xba, 0x09, 0x1e, 0x6f, 0x30, 0x6c, 0x15, 0x7c, 0x2b, 0x84, 0x52, 0x50, 0xc9, 0x4e, 0x3f, 0xdc, 0xb1, 0x78, 0x41, 0xa9, 0xaf, 0x6f, 0x75, 0x74, 0x92, 0xc7, 0xad, 0xcb, 0xda, 0x4e, 0x7a, 0xa2, 0x13, 0x90, 0x95, 0x3b, 0x60, 0x7d, 0xd7, 0xf0, 0x04, 0xd4, 0x32, 0x1f, 0x89, 0x2f, 0x96, 0x02, 0x34, 0xd3, 0x18, 0x4d, 0xcc, 0x4c, 0x73, 0xcf, 0xf7, 0xab, 0x2d, 0x2f, 0xb1, 0xa5, 0x07, }; static const unsigned char ecdh_brainpoolp256r1_3975_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3975_sharedsecret[] = { 0x17, 0x45, 0x13, 0x23, 0x49, 0xd4, 0xa7, 0x6c, 0x83, 0x4e, 0x95, 0x04, 0x9c, 0x5a, 0x6f, 0xa5, 0x56, 0xda, 0x8d, 0x2f, 0xb2, 0xab, 0xf8, 0x14, 0x14, 0x72, 0x9b, 0x9e, 0x78, 0x59, 0x0f, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3975 = { .name = "ecdh_brainpoolp256r1_3975", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3975_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3975_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3975_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 1583 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3976 for ECDH, tcId is 1584 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3976_peerpubkey[] = { 0x62, 0xd3, 0xc4, 0x6b, 0xe6, 0xc2, 0xc8, 0x35, 0x6d, 0x45, 0x38, 0x06, 0x46, 0x87, 0x3a, 0xe1, 0x36, 0x2b, 0xa4, 0x80, 0x6e, 0x40, 0x99, 0x47, 0x52, 0xc4, 0x89, 0xe8, 0x1f, 0xf5, 0xbe, 0x04, 0x0e, 0x60, 0xfd, 0xa5, 0x25, 0x54, 0x22, 0x28, 0xe6, 0xad, 0xb7, 0xe8, 0x5b, 0x53, 0x64, 0xf2, 0xea, 0x0b, 0xb0, 0x29, 0xd3, 0xa2, 0xa3, 0xc6, 0xf4, 0x07, 0xae, 0xf9, 0xff, 0x3b, 0xfa, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_3976_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3976_sharedsecret[] = { 0x9e, 0x52, 0x72, 0x4a, 0x88, 0x0c, 0xc3, 0x49, 0xd7, 0xef, 0x51, 0xeb, 0x54, 0xaf, 0xa8, 0x17, 0x16, 0x5a, 0xc3, 0x3a, 0x05, 0x3c, 0x7c, 0x0e, 0x62, 0x7b, 0x98, 0x2a, 0xf1, 0xa9, 0x55, 0x7a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3976 = { .name = "ecdh_brainpoolp256r1_3976", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3976_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3976_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3976_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 1584 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3977 for ECDH, tcId is 1585 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3977_peerpubkey[] = { 0xa0, 0xb2, 0x67, 0xc8, 0x2e, 0xa3, 0xec, 0x2d, 0x29, 0xbe, 0x91, 0x26, 0x17, 0xd6, 0x1d, 0xe7, 0x05, 0x38, 0x09, 0x22, 0x51, 0x9f, 0x13, 0xec, 0xc1, 0x77, 0xa3, 0xab, 0x60, 0x2a, 0x2e, 0x0a, 0x69, 0xe0, 0x21, 0x3c, 0x68, 0x01, 0x2f, 0x6c, 0x53, 0x0c, 0xc3, 0xed, 0x44, 0xf2, 0x85, 0x55, 0x1c, 0x1f, 0x40, 0x0d, 0x42, 0xcd, 0xa9, 0xcd, 0xc3, 0xd7, 0x5b, 0x9a, 0xb3, 0x3a, 0xb1, 0xed, }; static const unsigned char ecdh_brainpoolp256r1_3977_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3977_sharedsecret[] = { 0x97, 0x28, 0x37, 0x59, 0x38, 0x48, 0xc7, 0x54, 0x4a, 0x3c, 0x98, 0x47, 0x7a, 0x88, 0xea, 0x5c, 0xf7, 0x9f, 0xbe, 0x3b, 0x27, 0x3b, 0x8c, 0x92, 0x81, 0x2c, 0xa0, 0xfe, 0x97, 0x23, 0x4a, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3977 = { .name = "ecdh_brainpoolp256r1_3977", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3977_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3977_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3977_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1585 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3978 for ECDH, tcId is 1586 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3978_peerpubkey[] = { 0x2b, 0xb3, 0xd2, 0xc5, 0x97, 0xbb, 0xbb, 0x17, 0xed, 0xcd, 0xae, 0x8a, 0x39, 0xb0, 0x5f, 0xa4, 0xc1, 0x17, 0xdf, 0x53, 0x76, 0xce, 0x2a, 0x53, 0x9f, 0xc6, 0xa6, 0x1f, 0x54, 0x1a, 0xd3, 0x62, 0x9e, 0x6c, 0xa7, 0x65, 0x5d, 0x46, 0x4a, 0x5a, 0xc8, 0x62, 0xbf, 0x4f, 0x61, 0x4f, 0xf0, 0xe3, 0x90, 0xf1, 0xe6, 0xe4, 0xe8, 0x93, 0xcb, 0x6e, 0x4f, 0xfc, 0x3c, 0x78, 0xda, 0x22, 0x41, 0x15, }; static const unsigned char ecdh_brainpoolp256r1_3978_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3978_sharedsecret[] = { 0x2a, 0xdf, 0x69, 0x6b, 0x61, 0x37, 0xc9, 0x3f, 0xdf, 0x58, 0x91, 0x39, 0xf2, 0x42, 0x4d, 0x30, 0x94, 0x66, 0x1b, 0x01, 0xdf, 0x2c, 0x89, 0xd9, 0xe1, 0xbf, 0xe4, 0xe1, 0xbb, 0xe5, 0x1c, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3978 = { .name = "ecdh_brainpoolp256r1_3978", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3978_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3978_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3978_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1586 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3979 for ECDH, tcId is 1587 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3979_peerpubkey[] = { 0x9f, 0x28, 0xc2, 0x0f, 0x28, 0x05, 0xd0, 0xf1, 0xa1, 0x5f, 0x1b, 0xbd, 0x66, 0x4b, 0xfb, 0x6f, 0x9f, 0x8d, 0xb1, 0x07, 0xe3, 0xcd, 0x35, 0x87, 0xf2, 0x24, 0xbb, 0x08, 0xc2, 0x92, 0xdd, 0x50, 0x2f, 0xfb, 0x70, 0x60, 0x94, 0x73, 0x86, 0x8d, 0x54, 0x37, 0xbe, 0x40, 0x39, 0x23, 0xed, 0x74, 0x1c, 0x0c, 0xe0, 0xe8, 0x45, 0xcd, 0xdb, 0xab, 0xec, 0xbf, 0x11, 0xaf, 0x65, 0xe5, 0xe6, 0xc3, }; static const unsigned char ecdh_brainpoolp256r1_3979_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3979_sharedsecret[] = { 0x0f, 0x5c, 0x2b, 0x3b, 0x6c, 0x67, 0x9b, 0x25, 0x70, 0x6d, 0x1d, 0x25, 0xba, 0x44, 0x01, 0xc1, 0xd6, 0xd3, 0x61, 0xab, 0x1a, 0x5f, 0x2d, 0x83, 0x89, 0x80, 0x80, 0x56, 0x90, 0x2e, 0xee, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3979 = { .name = "ecdh_brainpoolp256r1_3979", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3979_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3979_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3979_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1587 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3980 for ECDH, tcId is 1588 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3980_peerpubkey[] = { 0x7b, 0xc2, 0x12, 0x05, 0x3d, 0x5d, 0x71, 0xe3, 0x36, 0x65, 0x69, 0xcb, 0xe4, 0x05, 0xf5, 0x56, 0x91, 0x9b, 0x84, 0xf3, 0x4f, 0x06, 0x99, 0xeb, 0x50, 0x68, 0x35, 0x46, 0x97, 0xf6, 0x3f, 0x6f, 0x1f, 0xdb, 0xe5, 0x55, 0x2c, 0x39, 0xfd, 0x3a, 0xb5, 0x45, 0x65, 0x2a, 0xd8, 0xda, 0x80, 0xdb, 0x21, 0x30, 0xb6, 0x02, 0xa6, 0xf2, 0x34, 0x47, 0xb0, 0x43, 0x0d, 0x71, 0x97, 0x2c, 0xe1, 0x48, }; static const unsigned char ecdh_brainpoolp256r1_3980_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3980_sharedsecret[] = { 0xa4, 0x03, 0xf0, 0x24, 0x18, 0xd9, 0x45, 0x12, 0xe0, 0x23, 0xe0, 0xb4, 0x65, 0x6e, 0x39, 0x2e, 0xda, 0xe0, 0x67, 0x49, 0x35, 0xe7, 0x52, 0xd1, 0x18, 0x21, 0x23, 0x3d, 0x9f, 0x8b, 0x90, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3980 = { .name = "ecdh_brainpoolp256r1_3980", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3980_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3980_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3980_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1588 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3981 for ECDH, tcId is 1589 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3981_peerpubkey[] = { 0x48, 0x76, 0x51, 0xe0, 0x84, 0x52, 0xbe, 0x04, 0x48, 0x51, 0x7b, 0xf9, 0xd0, 0xf0, 0x5c, 0x12, 0xc7, 0x51, 0xf4, 0xdc, 0x44, 0x86, 0x7f, 0x58, 0x0d, 0x32, 0x54, 0x64, 0xb9, 0x2e, 0xfb, 0xc3, 0x13, 0x91, 0x49, 0x58, 0x25, 0xe1, 0x04, 0x16, 0x17, 0x77, 0xcf, 0xce, 0x15, 0x35, 0x5b, 0x22, 0xe5, 0x1a, 0xa8, 0x53, 0x97, 0x46, 0x36, 0xf1, 0x26, 0xd2, 0x8f, 0xad, 0x0a, 0x84, 0xc3, 0x4b, }; static const unsigned char ecdh_brainpoolp256r1_3981_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3981_sharedsecret[] = { 0x59, 0x3a, 0x63, 0xe0, 0x51, 0x5c, 0xcf, 0xdc, 0x96, 0x83, 0xe3, 0x59, 0xc4, 0x67, 0x71, 0x9e, 0xd2, 0x03, 0x0e, 0x57, 0x89, 0x1f, 0x8c, 0x3e, 0x34, 0xbe, 0xfb, 0x9d, 0x6a, 0xc1, 0x2b, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3981 = { .name = "ecdh_brainpoolp256r1_3981", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3981_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3981_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3981_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1589 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3982 for ECDH, tcId is 1590 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3982_peerpubkey[] = { 0x87, 0x7b, 0xc1, 0xdb, 0x7b, 0x1a, 0x0d, 0x01, 0x42, 0x1b, 0x4f, 0xe7, 0x3c, 0x71, 0x4e, 0x61, 0xdb, 0x00, 0x79, 0xe8, 0x7b, 0xb5, 0x04, 0xfc, 0x8f, 0xce, 0x55, 0x99, 0x8d, 0xe9, 0x3b, 0x35, 0x28, 0xcf, 0x81, 0x86, 0x3e, 0x83, 0x5f, 0x66, 0x72, 0x2e, 0x43, 0x20, 0x1b, 0xfe, 0xb8, 0xa3, 0x7b, 0xd9, 0x54, 0x85, 0xe0, 0xd1, 0xb7, 0xa5, 0x13, 0x4b, 0x3b, 0xf5, 0x2b, 0x21, 0x51, 0xab, }; static const unsigned char ecdh_brainpoolp256r1_3982_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3982_sharedsecret[] = { 0x83, 0xd9, 0xdc, 0x4c, 0x11, 0x6f, 0x94, 0xef, 0x45, 0x43, 0x36, 0x72, 0x0e, 0x2e, 0x38, 0xc7, 0x01, 0xc0, 0x42, 0x89, 0x17, 0x97, 0xdb, 0x45, 0x87, 0x4b, 0x6d, 0xe8, 0x52, 0x27, 0x73, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3982 = { .name = "ecdh_brainpoolp256r1_3982", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3982_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3982_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3982_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1590 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3983 for ECDH, tcId is 1591 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3983_peerpubkey[] = { 0x89, 0x21, 0x4f, 0xe2, 0xc9, 0x50, 0xe7, 0x7e, 0x50, 0x3d, 0x4c, 0x39, 0x6b, 0xed, 0xbb, 0x82, 0x48, 0x8c, 0x5a, 0x8f, 0x7d, 0xa7, 0x67, 0xe3, 0xa9, 0x94, 0x86, 0xac, 0xef, 0xe6, 0x2a, 0xa3, 0x8c, 0x69, 0x8c, 0xae, 0xd1, 0x57, 0xd7, 0xa5, 0xa2, 0x48, 0x30, 0x4c, 0x41, 0xd6, 0x16, 0x9e, 0x00, 0xd3, 0xc3, 0x06, 0xbd, 0xc0, 0x7a, 0x06, 0x63, 0xa5, 0xe9, 0xf6, 0xd7, 0xf9, 0x33, 0x84, }; static const unsigned char ecdh_brainpoolp256r1_3983_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3983_sharedsecret[] = { 0x94, 0x63, 0x3f, 0xae, 0x53, 0xbf, 0xe2, 0xb5, 0x2f, 0x9a, 0xfb, 0x58, 0xd6, 0x9b, 0x0f, 0x2d, 0x1c, 0xcc, 0x46, 0x28, 0x29, 0xfa, 0x8f, 0xbc, 0xed, 0xa7, 0x6b, 0x97, 0xcd, 0xfa, 0xec, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3983 = { .name = "ecdh_brainpoolp256r1_3983", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3983_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3983_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3983_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1591 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3984 for ECDH, tcId is 1592 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3984_peerpubkey[] = { 0x4c, 0xec, 0x30, 0x02, 0xa4, 0x42, 0xdd, 0xa5, 0xfa, 0x45, 0x9c, 0xbf, 0xd8, 0xb1, 0x10, 0xbe, 0xcc, 0xec, 0x77, 0xbe, 0x82, 0xa2, 0x6f, 0x95, 0xa8, 0x32, 0x0d, 0x99, 0xd6, 0x86, 0x98, 0xe2, 0x47, 0xec, 0xad, 0x54, 0xa6, 0x04, 0x2c, 0x23, 0x34, 0x6f, 0xfd, 0xca, 0x6c, 0x54, 0x63, 0xf5, 0xff, 0x93, 0xf4, 0x76, 0x3b, 0x0e, 0x49, 0x4c, 0xc0, 0x48, 0xaa, 0x2a, 0xb2, 0x85, 0x7c, 0x9e, }; static const unsigned char ecdh_brainpoolp256r1_3984_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3984_sharedsecret[] = { 0xa1, 0x2f, 0x5b, 0x82, 0xea, 0x93, 0xb5, 0x9d, 0x2f, 0x3c, 0x43, 0xf4, 0x22, 0x60, 0x33, 0xfb, 0x3a, 0x7a, 0x64, 0x89, 0x29, 0xd1, 0x6b, 0x5e, 0xe3, 0x51, 0xae, 0x7a, 0xd8, 0xec, 0x64, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3984 = { .name = "ecdh_brainpoolp256r1_3984", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3984_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3984_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3984_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1592 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3985 for ECDH, tcId is 1593 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3985_peerpubkey[] = { 0x55, 0x9d, 0x8e, 0x5c, 0xf3, 0x59, 0x46, 0x8d, 0xa7, 0x2d, 0xcd, 0x67, 0x42, 0xff, 0x1a, 0xf5, 0xea, 0x42, 0xfe, 0xbf, 0x4d, 0x63, 0x76, 0xd9, 0x73, 0x0e, 0x65, 0x25, 0xc2, 0x6c, 0xef, 0x10, 0x5c, 0xd0, 0xcc, 0x35, 0x12, 0xa6, 0x44, 0x71, 0x5f, 0xd0, 0x74, 0x7d, 0xce, 0x11, 0x2d, 0x29, 0x1e, 0x09, 0xeb, 0xd8, 0x63, 0xc7, 0x0a, 0x56, 0x4f, 0xcb, 0xc2, 0xfc, 0xf5, 0x0f, 0x70, 0xda, }; static const unsigned char ecdh_brainpoolp256r1_3985_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3985_sharedsecret[] = { 0x81, 0xf8, 0x54, 0xb1, 0x2c, 0xed, 0x0b, 0x0d, 0xe4, 0x75, 0xfa, 0xdc, 0x30, 0xcc, 0xb2, 0x28, 0xf1, 0xe6, 0xab, 0xc9, 0x9a, 0x89, 0x04, 0x6d, 0x89, 0xeb, 0xf9, 0xf4, 0x56, 0x85, 0x8e, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3985 = { .name = "ecdh_brainpoolp256r1_3985", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3985_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3985_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3985_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1593 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3986 for ECDH, tcId is 1594 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3986_peerpubkey[] = { 0x69, 0xf1, 0x42, 0x07, 0xc8, 0xee, 0x3f, 0xcc, 0xeb, 0x57, 0xb4, 0x1f, 0xa4, 0x7f, 0x45, 0xe2, 0x15, 0x88, 0xc5, 0x19, 0x59, 0xf5, 0x93, 0xf8, 0x54, 0x77, 0x26, 0x2d, 0x00, 0x80, 0xf6, 0x15, 0x02, 0xa7, 0xe4, 0xaa, 0x37, 0x5e, 0xbd, 0x7e, 0x36, 0x58, 0x82, 0x5e, 0xd6, 0xc7, 0x4f, 0x1b, 0x1d, 0xd8, 0x67, 0xaa, 0xcc, 0xd8, 0x46, 0xed, 0x06, 0x67, 0x25, 0x82, 0xb0, 0x5a, 0xf8, 0x5d, }; static const unsigned char ecdh_brainpoolp256r1_3986_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3986_sharedsecret[] = { 0x57, 0x76, 0x9a, 0xdc, 0x94, 0x6c, 0xe0, 0xb5, 0x07, 0x1f, 0x28, 0xc9, 0x0d, 0xb9, 0xe1, 0x13, 0x8f, 0x74, 0x3e, 0x87, 0xac, 0xf0, 0xca, 0xc3, 0x1b, 0x7d, 0x9b, 0x37, 0x1d, 0x02, 0x85, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3986 = { .name = "ecdh_brainpoolp256r1_3986", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3986_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3986_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3986_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1594 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3987 for ECDH, tcId is 1595 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3987_peerpubkey[] = { 0x38, 0x56, 0x64, 0x4a, 0x00, 0xa3, 0xd3, 0xb4, 0x04, 0x01, 0x31, 0xbd, 0xa5, 0x80, 0x78, 0x37, 0x1f, 0x87, 0x90, 0xea, 0x32, 0x1c, 0x86, 0xba, 0x5b, 0xd7, 0x38, 0x2b, 0x8b, 0x60, 0xed, 0x0a, 0x27, 0xe6, 0x47, 0xe3, 0x11, 0xa6, 0x87, 0x12, 0x37, 0x0b, 0x55, 0xba, 0x77, 0x88, 0x8b, 0xd3, 0xf3, 0xad, 0xba, 0x6a, 0x23, 0xae, 0xac, 0xe9, 0x81, 0x72, 0xd9, 0x42, 0xc8, 0x72, 0x72, 0xc5, }; static const unsigned char ecdh_brainpoolp256r1_3987_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3987_sharedsecret[] = { 0x0e, 0x12, 0xf6, 0xde, 0xd6, 0x64, 0x4d, 0x6f, 0x41, 0x07, 0x31, 0xad, 0x68, 0x33, 0x1b, 0x81, 0x57, 0x2c, 0x34, 0xff, 0x90, 0xc1, 0xcc, 0x62, 0x70, 0x9c, 0x6e, 0xe5, 0xdb, 0x0c, 0x7a, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3987 = { .name = "ecdh_brainpoolp256r1_3987", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3987_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3987_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3987_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1595 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3988 for ECDH, tcId is 1596 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3988_peerpubkey[] = { 0x37, 0x27, 0x64, 0x32, 0x79, 0x4d, 0x8b, 0xd9, 0xb6, 0x1f, 0xb3, 0x5a, 0xf8, 0x06, 0x01, 0x60, 0xe9, 0xa5, 0x6b, 0x4d, 0x46, 0x10, 0x99, 0x2f, 0xb4, 0x1f, 0x39, 0xc2, 0x71, 0xd5, 0xe6, 0x20, 0x64, 0xb4, 0xf1, 0x1b, 0x72, 0x7b, 0xa1, 0x23, 0xfd, 0xf7, 0xde, 0xd0, 0xa6, 0xc1, 0xf0, 0xa6, 0x24, 0x54, 0x70, 0x47, 0xaf, 0x2b, 0x08, 0x7b, 0xd6, 0x4e, 0x56, 0x85, 0xca, 0xfc, 0x9a, 0x0e, }; static const unsigned char ecdh_brainpoolp256r1_3988_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3988_sharedsecret[] = { 0x4d, 0x54, 0x69, 0x79, 0x23, 0x4e, 0x05, 0x2d, 0xe7, 0x2f, 0x47, 0x71, 0xb1, 0x30, 0x05, 0x20, 0xf6, 0x80, 0xbc, 0x7e, 0xe7, 0xd4, 0x4e, 0x7c, 0xad, 0xa6, 0xaf, 0xff, 0x55, 0x08, 0xe4, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3988 = { .name = "ecdh_brainpoolp256r1_3988", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3988_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3988_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3988_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1596 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3989 for ECDH, tcId is 1597 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3989_peerpubkey[] = { 0x7f, 0x32, 0xdd, 0x17, 0xd9, 0x3a, 0x7b, 0xbd, 0xe5, 0x7e, 0xc5, 0x7d, 0x2b, 0xc5, 0xa9, 0xf6, 0x8d, 0xd2, 0x20, 0x9c, 0x54, 0x17, 0x8b, 0x49, 0x38, 0x25, 0x92, 0x17, 0x72, 0x3a, 0x6f, 0x4e, 0x0a, 0x3f, 0x81, 0x51, 0x40, 0x58, 0x95, 0x1e, 0x10, 0xcf, 0x82, 0xe5, 0x39, 0x37, 0x36, 0xc1, 0x03, 0xf6, 0x83, 0xa6, 0x57, 0x66, 0x79, 0x48, 0x3d, 0x46, 0xa7, 0x12, 0x97, 0xd4, 0xf3, 0x02, }; static const unsigned char ecdh_brainpoolp256r1_3989_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3989_sharedsecret[] = { 0x3b, 0x18, 0x07, 0xda, 0xe4, 0xe7, 0x9a, 0xc3, 0xc5, 0xe4, 0x8c, 0x57, 0x2a, 0xd3, 0x04, 0xd8, 0xbd, 0x6d, 0x71, 0x53, 0x13, 0x80, 0xc1, 0x33, 0x6b, 0xfd, 0xe5, 0x57, 0x7b, 0x6a, 0xfa, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3989 = { .name = "ecdh_brainpoolp256r1_3989", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3989_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3989_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3989_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1597 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3990 for ECDH, tcId is 1598 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3990_peerpubkey[] = { 0x09, 0x72, 0xfd, 0x98, 0x4f, 0x4a, 0x22, 0xa7, 0x8e, 0xf6, 0xc7, 0xf9, 0x10, 0xca, 0xdf, 0x46, 0x16, 0x51, 0x4b, 0xe2, 0xb7, 0x05, 0x3b, 0x25, 0xdf, 0x56, 0xd7, 0xdd, 0x93, 0xb0, 0xe8, 0xcd, 0x9b, 0x2e, 0x53, 0x33, 0x22, 0x94, 0x61, 0x6b, 0x65, 0x67, 0xe6, 0x6e, 0x43, 0xee, 0x9d, 0xb7, 0x48, 0xfe, 0x81, 0xe3, 0x8e, 0x50, 0x72, 0xf9, 0x6d, 0xfe, 0x73, 0x19, 0xe9, 0xb1, 0x7b, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_3990_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3990_sharedsecret[] = { 0x65, 0x48, 0xa4, 0x91, 0xcd, 0x0e, 0x47, 0xf2, 0xb1, 0x00, 0x86, 0x91, 0xf4, 0x7a, 0xde, 0xda, 0xcc, 0xbe, 0x9c, 0xfb, 0xfe, 0xd6, 0x3b, 0xef, 0x0c, 0x38, 0x10, 0xac, 0x36, 0x96, 0xc0, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3990 = { .name = "ecdh_brainpoolp256r1_3990", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3990_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3990_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3990_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1598 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3991 for ECDH, tcId is 1599 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3991_peerpubkey[] = { 0x2a, 0x5d, 0xdc, 0x0c, 0x7d, 0xbd, 0x53, 0xdb, 0x0a, 0xac, 0x70, 0x1a, 0x5b, 0x48, 0x82, 0xad, 0x58, 0x62, 0xb0, 0xe4, 0xe4, 0xd6, 0xf3, 0x67, 0x05, 0x87, 0xe4, 0x7b, 0x84, 0xf7, 0x0d, 0x41, 0x44, 0x43, 0x99, 0xed, 0xf0, 0xff, 0x23, 0xe1, 0xfc, 0xe1, 0x70, 0xe8, 0xde, 0xba, 0xd0, 0xc0, 0x20, 0xb3, 0xc5, 0x01, 0x1c, 0x0a, 0x60, 0x15, 0x6a, 0xbe, 0x0f, 0xc7, 0x66, 0x15, 0x9d, 0x70, }; static const unsigned char ecdh_brainpoolp256r1_3991_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3991_sharedsecret[] = { 0x7c, 0xc5, 0xcc, 0x43, 0x67, 0x79, 0x2d, 0x2f, 0xd9, 0x11, 0x7b, 0x56, 0xc4, 0x3e, 0xbc, 0x32, 0x88, 0x08, 0x75, 0x56, 0xd3, 0xad, 0x1d, 0x47, 0x6a, 0x7e, 0x26, 0x1d, 0xb3, 0x65, 0xf0, 0x90, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3991 = { .name = "ecdh_brainpoolp256r1_3991", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3991_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3991_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3991_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1599 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3992 for ECDH, tcId is 1600 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3992_peerpubkey[] = { 0x28, 0x34, 0xc1, 0x50, 0x74, 0x42, 0xd2, 0xae, 0xd8, 0xb0, 0x0e, 0x59, 0x65, 0x29, 0xb1, 0x54, 0xd2, 0x7e, 0xe6, 0x19, 0x27, 0x6b, 0x03, 0xf4, 0x2f, 0x20, 0x6d, 0x24, 0x19, 0x0c, 0xd8, 0x23, 0x1e, 0x66, 0x00, 0xd1, 0x23, 0xff, 0xeb, 0xf5, 0xeb, 0xe8, 0xb8, 0xe3, 0x23, 0x57, 0xb0, 0xac, 0xe7, 0x39, 0x81, 0x4e, 0xe6, 0xfd, 0x02, 0xab, 0xbc, 0x4b, 0xf3, 0xc8, 0xd7, 0xb3, 0xd6, 0x3e, }; static const unsigned char ecdh_brainpoolp256r1_3992_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3992_sharedsecret[] = { 0x6c, 0x99, 0x09, 0x82, 0x91, 0x0f, 0xb9, 0xdf, 0x8a, 0x3c, 0x88, 0x4e, 0x6e, 0xc3, 0x51, 0xaa, 0xee, 0xda, 0xcd, 0xbf, 0xe4, 0xf9, 0x29, 0xed, 0xf9, 0xd5, 0x0d, 0xe8, 0xa3, 0x01, 0xf0, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3992 = { .name = "ecdh_brainpoolp256r1_3992", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3992_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3992_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3992_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1600 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3993 for ECDH, tcId is 1601 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3993_peerpubkey[] = { 0x4c, 0xb7, 0x90, 0x67, 0xb0, 0xdd, 0x9e, 0x22, 0xb2, 0x73, 0x10, 0x3c, 0xb7, 0x22, 0x3a, 0xa5, 0x42, 0x07, 0x20, 0x2d, 0x41, 0x91, 0x4f, 0x25, 0x4a, 0x11, 0x70, 0xa3, 0x3f, 0xa8, 0xda, 0xe8, 0x1e, 0x06, 0x91, 0x94, 0x28, 0xaa, 0x21, 0xbc, 0x0e, 0xdc, 0x24, 0x08, 0x6e, 0xe1, 0x35, 0x07, 0x8b, 0x57, 0x1f, 0x3b, 0x36, 0x8e, 0xdb, 0xec, 0x83, 0xfb, 0x57, 0xe5, 0xf1, 0x0e, 0xb7, 0x81, }; static const unsigned char ecdh_brainpoolp256r1_3993_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3993_sharedsecret[] = { 0x5f, 0x8e, 0x75, 0xe1, 0x66, 0xe6, 0xa8, 0xeb, 0x47, 0x10, 0xfb, 0x1d, 0xca, 0xec, 0xb8, 0xf2, 0x37, 0x82, 0xb8, 0x63, 0xd1, 0xda, 0x0e, 0xc6, 0x13, 0x36, 0xa4, 0xf2, 0x7c, 0x48, 0xb1, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3993 = { .name = "ecdh_brainpoolp256r1_3993", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3993_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3993_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3993_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1601 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3994 for ECDH, tcId is 1602 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3994_peerpubkey[] = { 0x0e, 0x9d, 0x54, 0x6d, 0xa7, 0xab, 0x23, 0xbb, 0x71, 0x70, 0xc9, 0xdf, 0x54, 0xf5, 0x66, 0x30, 0x0c, 0x58, 0xcd, 0xa3, 0xb0, 0xb9, 0xb9, 0xe8, 0x58, 0x4f, 0x2e, 0x60, 0x01, 0xd7, 0x2f, 0x10, 0x63, 0xf4, 0xa4, 0x16, 0x66, 0x23, 0x1d, 0x50, 0x69, 0x7d, 0x6e, 0xcd, 0x66, 0xd6, 0x73, 0xb7, 0xcb, 0x2b, 0xf2, 0x61, 0x8b, 0xc1, 0x7f, 0x53, 0x1d, 0x04, 0xce, 0x2e, 0x72, 0x6f, 0xad, 0xfd, }; static const unsigned char ecdh_brainpoolp256r1_3994_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3994_sharedsecret[] = { 0x3d, 0x7e, 0x1b, 0xaa, 0x3d, 0xc6, 0x9d, 0xc6, 0x51, 0xe3, 0x92, 0x94, 0x98, 0x38, 0x32, 0xe0, 0xe5, 0xd9, 0x7d, 0xec, 0xae, 0x95, 0xfe, 0x70, 0x6c, 0xe8, 0x84, 0x13, 0x32, 0x2f, 0x86, 0xc8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3994 = { .name = "ecdh_brainpoolp256r1_3994", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3994_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3994_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3994_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1602 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3995 for ECDH, tcId is 1603 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3995_peerpubkey[] = { 0x13, 0xa5, 0x92, 0xb6, 0xda, 0xb1, 0xe1, 0xad, 0xa1, 0x8e, 0xc4, 0x46, 0x64, 0xce, 0x34, 0x75, 0x34, 0x64, 0x86, 0xe1, 0xba, 0xda, 0x99, 0x37, 0xfc, 0x55, 0xac, 0x45, 0x50, 0x4a, 0xf7, 0x0e, 0x33, 0xb7, 0x25, 0x1b, 0xaf, 0x72, 0x69, 0x04, 0x5b, 0x25, 0x37, 0x2b, 0x2a, 0xa1, 0x45, 0xda, 0x30, 0x87, 0xa7, 0xbf, 0x0c, 0xa7, 0x5a, 0x8f, 0xef, 0x01, 0x2e, 0x10, 0x5c, 0x31, 0xb4, 0x59, }; static const unsigned char ecdh_brainpoolp256r1_3995_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3995_sharedsecret[] = { 0x84, 0x4b, 0x43, 0xda, 0xe6, 0xcd, 0xfc, 0x36, 0x1e, 0xfe, 0x1f, 0xc8, 0xd9, 0xee, 0xd6, 0x7f, 0xf8, 0x57, 0xea, 0x6d, 0xdb, 0xb5, 0xd3, 0x4e, 0x08, 0x7a, 0x77, 0xda, 0x7d, 0xb3, 0xab, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3995 = { .name = "ecdh_brainpoolp256r1_3995", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3995_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3995_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3995_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1603 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3996 for ECDH, tcId is 1604 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3996_peerpubkey[] = { 0x12, 0x95, 0x9a, 0xa1, 0xba, 0xde, 0x85, 0xd5, 0x53, 0xe8, 0x06, 0x40, 0x88, 0xb9, 0x6f, 0x34, 0x54, 0xa6, 0xcf, 0x54, 0x05, 0x0a, 0xbd, 0x8a, 0x2f, 0x0b, 0x11, 0x3b, 0x82, 0x1a, 0xd4, 0x62, 0x93, 0xa9, 0x15, 0xb6, 0xad, 0xc7, 0x17, 0xe5, 0xdc, 0xd2, 0x95, 0x60, 0x19, 0xb7, 0x26, 0x46, 0xcb, 0xf1, 0x00, 0x7e, 0x28, 0xe7, 0xb2, 0xa1, 0xe4, 0xe9, 0x54, 0x76, 0x18, 0xac, 0xf6, 0xc7, }; static const unsigned char ecdh_brainpoolp256r1_3996_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3996_sharedsecret[] = { 0x60, 0x3b, 0x2a, 0x29, 0x4a, 0x51, 0xd7, 0x6a, 0xf6, 0xc5, 0x11, 0x88, 0x25, 0xe6, 0xfd, 0xe2, 0xe5, 0x52, 0x66, 0x8c, 0x24, 0x71, 0xef, 0x17, 0x9f, 0xa9, 0x7c, 0x2e, 0x39, 0x0e, 0x96, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3996 = { .name = "ecdh_brainpoolp256r1_3996", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3996_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3996_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3996_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1604 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3997 for ECDH, tcId is 1605 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3997_peerpubkey[] = { 0x0f, 0xda, 0x40, 0x94, 0xb8, 0x77, 0x7d, 0x0c, 0x22, 0xdd, 0x32, 0x76, 0x55, 0x45, 0xf2, 0x75, 0xdd, 0xea, 0x0f, 0xa3, 0x15, 0x5b, 0x46, 0xc2, 0xc4, 0x14, 0x6b, 0x22, 0x7c, 0xca, 0xac, 0x38, 0x49, 0xc0, 0xa1, 0xcd, 0x78, 0x16, 0xcf, 0x3e, 0x5e, 0x97, 0xd0, 0x7f, 0x58, 0xb9, 0x81, 0x9d, 0x66, 0x00, 0x00, 0xbd, 0x17, 0x14, 0x7a, 0x00, 0x27, 0x61, 0xef, 0xe0, 0xfd, 0x49, 0xc0, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_3997_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3997_sharedsecret[] = { 0x15, 0xd5, 0x93, 0x19, 0x88, 0x7a, 0x1f, 0x66, 0x10, 0x8a, 0xe3, 0x32, 0xb7, 0xa9, 0x45, 0xd1, 0xbc, 0x17, 0xac, 0x37, 0xf8, 0x19, 0x3f, 0xee, 0x97, 0x0d, 0x72, 0x7b, 0x76, 0x21, 0xcc, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3997 = { .name = "ecdh_brainpoolp256r1_3997", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3997_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3997_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3997_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1605 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3998 for ECDH, tcId is 1606 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3998_peerpubkey[] = { 0x5b, 0xfb, 0x60, 0x94, 0x6e, 0x4e, 0x21, 0xf5, 0xd1, 0xcb, 0x39, 0x7a, 0x7a, 0xd3, 0xa6, 0x8a, 0x68, 0x08, 0x95, 0x25, 0x7c, 0xda, 0xc5, 0xaa, 0x2f, 0x9b, 0x9e, 0x35, 0x1c, 0x80, 0xaf, 0x74, 0x21, 0x23, 0xee, 0xce, 0x5c, 0x66, 0x2e, 0xe4, 0x52, 0x6b, 0x2b, 0xc1, 0x86, 0xb6, 0xac, 0xe8, 0x44, 0x56, 0x56, 0xac, 0xe1, 0x73, 0x3f, 0x5f, 0xfa, 0x2a, 0x86, 0x1a, 0x20, 0x40, 0x42, 0xb7, }; static const unsigned char ecdh_brainpoolp256r1_3998_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3998_sharedsecret[] = { 0x75, 0x50, 0x92, 0x54, 0x24, 0xa6, 0xb2, 0x11, 0xc6, 0x8c, 0xb5, 0xcd, 0x2e, 0x85, 0xba, 0xf8, 0x36, 0x87, 0x43, 0x85, 0x34, 0x51, 0x1e, 0xe4, 0x22, 0xfa, 0x4c, 0x0c, 0x1c, 0xca, 0xbd, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3998 = { .name = "ecdh_brainpoolp256r1_3998", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3998_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3998_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3998_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1606 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 3999 for ECDH, tcId is 1607 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_3999_peerpubkey[] = { 0x95, 0xe5, 0x4f, 0xd4, 0x7d, 0xd4, 0xe2, 0x0a, 0x2a, 0xa7, 0x2d, 0x94, 0xb4, 0x20, 0x89, 0x73, 0x0c, 0x08, 0x7b, 0x78, 0x4c, 0x75, 0xbf, 0x31, 0x7b, 0xeb, 0x96, 0x49, 0xa8, 0x83, 0xd9, 0x5a, 0x2b, 0xe6, 0xa4, 0x85, 0xb4, 0xd1, 0x42, 0x0a, 0x8f, 0x79, 0x0c, 0x54, 0xfc, 0x90, 0x50, 0x12, 0x61, 0x43, 0x73, 0x3e, 0xee, 0xe7, 0xf6, 0xde, 0x55, 0xc4, 0xf9, 0x5e, 0xa3, 0xc1, 0x25, 0x47, }; static const unsigned char ecdh_brainpoolp256r1_3999_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_3999_sharedsecret[] = { 0x7f, 0x18, 0x80, 0x5e, 0x96, 0xa9, 0x78, 0x7e, 0x3d, 0x69, 0x1e, 0x37, 0x6e, 0x5d, 0x2d, 0xfc, 0x9e, 0x60, 0xd0, 0x9b, 0xbe, 0x60, 0x3f, 0x6e, 0x83, 0x03, 0xa4, 0xba, 0x6d, 0x82, 0xc7, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_3999 = { .name = "ecdh_brainpoolp256r1_3999", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_3999_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_3999_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_3999_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1607 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4000 for ECDH, tcId is 1608 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4000_peerpubkey[] = { 0x0a, 0xa9, 0x9f, 0x2b, 0x50, 0x48, 0xe1, 0xcc, 0x60, 0x4b, 0x46, 0xb0, 0x18, 0x80, 0xa4, 0x42, 0x66, 0x1d, 0x0e, 0x30, 0x35, 0x22, 0x97, 0x3b, 0x74, 0x19, 0x6a, 0xaf, 0xf5, 0x6a, 0xd7, 0xf4, 0x5f, 0xd3, 0x30, 0x87, 0x99, 0x6a, 0xbe, 0xf6, 0x75, 0x6e, 0xe1, 0x3d, 0x27, 0x5c, 0x01, 0x6b, 0xab, 0x97, 0x6d, 0xc2, 0xc7, 0x7b, 0xa7, 0xdb, 0xab, 0x71, 0xd4, 0x4f, 0x5e, 0xff, 0x13, 0x0d, }; static const unsigned char ecdh_brainpoolp256r1_4000_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4000_sharedsecret[] = { 0x8c, 0x9e, 0x5a, 0xb3, 0x8b, 0x14, 0xcd, 0xe8, 0x70, 0xc4, 0x13, 0xcb, 0x5b, 0x07, 0x54, 0x73, 0x4b, 0xc8, 0xaf, 0xd1, 0x11, 0xd5, 0xca, 0x9a, 0x49, 0xae, 0x95, 0xff, 0xa6, 0xa3, 0xe3, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4000 = { .name = "ecdh_brainpoolp256r1_4000", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4000_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4000_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4000_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1608 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4001 for ECDH, tcId is 1609 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4001_peerpubkey[] = { 0x1d, 0xa7, 0xd0, 0x36, 0xed, 0x78, 0xc8, 0x23, 0x1f, 0xa1, 0xfa, 0x4b, 0x85, 0xc4, 0x3d, 0x4b, 0xfd, 0x58, 0xfb, 0xa1, 0xba, 0x98, 0xdb, 0xe1, 0x6f, 0x7d, 0xcb, 0x5a, 0x23, 0x84, 0x4f, 0x41, 0x2f, 0xa9, 0x4d, 0x3d, 0x53, 0x32, 0xf3, 0xbb, 0xd4, 0x18, 0xab, 0x34, 0x07, 0x36, 0x04, 0xb6, 0x4d, 0xd4, 0xba, 0xce, 0xb6, 0x20, 0xd8, 0x98, 0x67, 0x0d, 0x6a, 0x0e, 0x18, 0x83, 0xca, 0x7e, }; static const unsigned char ecdh_brainpoolp256r1_4001_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4001_sharedsecret[] = { 0x7e, 0x9b, 0x7f, 0x0b, 0xff, 0x1b, 0xd1, 0x2a, 0xbb, 0xcf, 0x4e, 0x36, 0x9f, 0x25, 0x2f, 0x44, 0xd0, 0xaa, 0xbb, 0x48, 0x89, 0x51, 0x4a, 0x19, 0xf9, 0x33, 0x97, 0x75, 0x04, 0x1b, 0xc2, 0x86, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4001 = { .name = "ecdh_brainpoolp256r1_4001", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4001_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4001_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4001_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1609 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4002 for ECDH, tcId is 1610 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4002_peerpubkey[] = { 0x89, 0x7e, 0xe1, 0xbd, 0xcb, 0x67, 0x4d, 0x36, 0xca, 0x76, 0x65, 0xab, 0x2e, 0x35, 0x96, 0xbc, 0x3a, 0xf7, 0x36, 0xd2, 0x67, 0xa5, 0x19, 0xd9, 0x9e, 0xd7, 0xe6, 0x14, 0xa5, 0x88, 0x0c, 0x8f, 0x8e, 0x96, 0xa4, 0xc6, 0x2d, 0xc3, 0xc3, 0x09, 0xfe, 0x82, 0x69, 0x1d, 0x5a, 0xcf, 0xf4, 0x48, 0x1a, 0x55, 0x64, 0x3d, 0xf6, 0xc9, 0x34, 0xfa, 0x76, 0x55, 0x76, 0x1a, 0x5c, 0x8f, 0x21, 0x38, }; static const unsigned char ecdh_brainpoolp256r1_4002_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4002_sharedsecret[] = { 0x94, 0x67, 0xda, 0xcf, 0x4a, 0xce, 0x20, 0xbb, 0xc6, 0x28, 0x7e, 0x23, 0x84, 0xb2, 0xcb, 0xab, 0x17, 0xdd, 0xf9, 0x50, 0x64, 0xa6, 0x4f, 0xe4, 0x90, 0x08, 0x9f, 0x3f, 0x6f, 0x12, 0x2e, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4002 = { .name = "ecdh_brainpoolp256r1_4002", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4002_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4002_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4002_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1610 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4003 for ECDH, tcId is 1611 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4003_peerpubkey[] = { 0x1a, 0xac, 0xd6, 0xc8, 0x01, 0xae, 0xc8, 0x85, 0x35, 0xd0, 0xda, 0x08, 0xf5, 0x7f, 0x0f, 0xf4, 0x67, 0x73, 0x27, 0xc8, 0xa8, 0xe4, 0x70, 0xe1, 0x45, 0x2b, 0x99, 0xc9, 0xd2, 0x24, 0x41, 0x59, 0x15, 0x86, 0x81, 0xfc, 0x2b, 0xcf, 0x70, 0x58, 0x02, 0x73, 0x31, 0xa7, 0x12, 0x46, 0xd5, 0x46, 0x96, 0x1c, 0xd7, 0x1e, 0x32, 0x51, 0x37, 0x98, 0x5c, 0xb5, 0x14, 0x54, 0x7d, 0xdb, 0x76, 0xba, }; static const unsigned char ecdh_brainpoolp256r1_4003_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4003_sharedsecret[] = { 0x72, 0x02, 0x66, 0x54, 0x40, 0xb2, 0xd4, 0x20, 0xd5, 0xef, 0xa6, 0x3b, 0xc2, 0x19, 0xa8, 0xe0, 0xad, 0x88, 0x2c, 0x98, 0x46, 0x25, 0xe9, 0x47, 0x11, 0x91, 0x47, 0x80, 0xce, 0x4d, 0x8e, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4003 = { .name = "ecdh_brainpoolp256r1_4003", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4003_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4003_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4003_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1611 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4004 for ECDH, tcId is 1612 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4004_peerpubkey[] = { 0x24, 0xfe, 0x5f, 0x16, 0x20, 0x9c, 0x41, 0x13, 0x62, 0x56, 0xce, 0x24, 0xa1, 0xe9, 0x60, 0xbd, 0x78, 0x29, 0xee, 0x21, 0x62, 0xe4, 0xf6, 0x2f, 0x53, 0x83, 0x04, 0xc3, 0x49, 0xd5, 0xec, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4004_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4004_sharedsecret[] = { 0x21, 0xf6, 0x87, 0xa9, 0x31, 0x09, 0x0d, 0xf1, 0x2b, 0xd3, 0x80, 0x28, 0xbc, 0x0d, 0x8c, 0xdd, 0x1f, 0x50, 0x7d, 0xcc, 0x37, 0xab, 0xbf, 0x9f, 0x65, 0x5b, 0x24, 0xf7, 0xe1, 0x3e, 0x44, 0xe1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4004 = { .name = "ecdh_brainpoolp256r1_4004", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4004_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4004_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4004_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1612 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4005 for ECDH, tcId is 1613 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4005_peerpubkey[] = { 0x2f, 0x26, 0x5a, 0xee, 0x84, 0xee, 0x78, 0x4a, 0xac, 0xd6, 0x07, 0x1c, 0xf8, 0xcf, 0xb8, 0xc1, 0xd0, 0x53, 0x32, 0x51, 0xb5, 0xbf, 0x2d, 0x91, 0x5f, 0xd6, 0x8f, 0x22, 0x12, 0x60, 0x41, 0x89, 0x14, 0xb7, 0x03, 0xad, 0xe5, 0xc3, 0x09, 0x3d, 0x65, 0xe3, 0x83, 0xe5, 0xc8, 0x14, 0xa5, 0x13, 0x95, 0x6d, 0xbd, 0x03, 0xb9, 0x64, 0x89, 0x89, 0x14, 0xa6, 0x2d, 0xd3, 0xcb, 0xc8, 0x61, 0x6f, }; static const unsigned char ecdh_brainpoolp256r1_4005_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4005_sharedsecret[] = { 0x4b, 0xc4, 0x97, 0x94, 0x41, 0x38, 0x0f, 0xce, 0x9b, 0x28, 0x73, 0xf6, 0x75, 0x4b, 0x00, 0xfd, 0x7c, 0x1a, 0x78, 0xb3, 0x03, 0x58, 0x43, 0x90, 0xaf, 0x64, 0xfa, 0x3f, 0xc0, 0xa4, 0x16, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4005 = { .name = "ecdh_brainpoolp256r1_4005", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4005_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4005_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4005_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1613 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4006 for ECDH, tcId is 1614 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4006_peerpubkey[] = { 0x8d, 0x94, 0x3e, 0x30, 0x0c, 0x2b, 0x98, 0x89, 0x04, 0xb4, 0x45, 0x78, 0x8c, 0x3f, 0xf7, 0xf3, 0x78, 0xd0, 0x70, 0x38, 0xb5, 0xf2, 0xa6, 0x5e, 0xa2, 0xe9, 0xca, 0xd5, 0x26, 0xfd, 0x85, 0x1e, 0xa8, 0x2a, 0xc5, 0xcb, 0xc0, 0x79, 0xec, 0x08, 0x90, 0x14, 0xf7, 0x8b, 0x90, 0x12, 0xd9, 0x12, 0x8d, 0xd1, 0xbf, 0xfa, 0x88, 0x27, 0x53, 0x50, 0xe2, 0x61, 0x73, 0xef, 0xda, 0x72, 0xd4, 0x07, }; static const unsigned char ecdh_brainpoolp256r1_4006_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4006_sharedsecret[] = { 0x2f, 0x08, 0x28, 0xc7, 0xf7, 0xe4, 0xcf, 0xaa, 0x5a, 0x9d, 0xeb, 0x0d, 0xed, 0x0b, 0x63, 0x13, 0x01, 0x09, 0xe0, 0xe9, 0x5f, 0x1f, 0xf4, 0x50, 0x8e, 0xfc, 0x0c, 0x47, 0x09, 0x40, 0xc4, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4006 = { .name = "ecdh_brainpoolp256r1_4006", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4006_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4006_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4006_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1614 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4007 for ECDH, tcId is 1615 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4007_peerpubkey[] = { 0x12, 0xf5, 0xee, 0x44, 0xfd, 0xaf, 0x86, 0x5a, 0x07, 0x2c, 0x4b, 0xe3, 0x91, 0x34, 0x75, 0x12, 0x4e, 0xb7, 0xc5, 0x0a, 0xc5, 0x20, 0x14, 0xee, 0x09, 0x4e, 0xe4, 0x22, 0xa4, 0x6c, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4007_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4007_sharedsecret[] = { 0x33, 0x94, 0xf7, 0x5e, 0x23, 0xe3, 0xb0, 0x7d, 0xe1, 0x6a, 0x93, 0x42, 0x28, 0x59, 0x15, 0xb6, 0x32, 0x84, 0x93, 0xd5, 0x49, 0x37, 0x92, 0xd0, 0x44, 0x31, 0x30, 0xa6, 0x39, 0x9a, 0x1b, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4007 = { .name = "ecdh_brainpoolp256r1_4007", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4007_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4007_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4007_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1615 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4008 for ECDH, tcId is 1616 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4008_peerpubkey[] = { 0x9f, 0x8d, 0x4b, 0x89, 0x9f, 0xb7, 0x7f, 0x07, 0x26, 0x77, 0x50, 0xfe, 0xa8, 0x45, 0x7a, 0x28, 0x6e, 0x99, 0x63, 0xf1, 0x93, 0xb9, 0xa0, 0xc8, 0x7f, 0x8f, 0xeb, 0x86, 0x36, 0x9d, 0x34, 0x56, 0x77, 0x9d, 0xba, 0x5b, 0x09, 0x36, 0x83, 0x1a, 0x34, 0x57, 0xdc, 0x9a, 0x8c, 0x85, 0xb1, 0x2f, 0xc2, 0x4e, 0xb1, 0xe5, 0x8f, 0x15, 0xaa, 0x28, 0xd3, 0xe9, 0xd2, 0x1a, 0x46, 0x37, 0x3a, 0x65, }; static const unsigned char ecdh_brainpoolp256r1_4008_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4008_sharedsecret[] = { 0x2d, 0x19, 0x43, 0x32, 0x6a, 0x86, 0x13, 0xb1, 0x0e, 0x19, 0x52, 0x66, 0x15, 0x91, 0xf9, 0x24, 0x98, 0xfd, 0xeb, 0x72, 0x2e, 0x19, 0x8e, 0xf3, 0x46, 0xd2, 0xdc, 0xef, 0x45, 0xa7, 0x0b, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4008 = { .name = "ecdh_brainpoolp256r1_4008", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4008_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4008_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4008_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1616 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4009 for ECDH, tcId is 1617 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4009_peerpubkey[] = { 0x9a, 0x21, 0x3d, 0x88, 0x9a, 0x20, 0x1d, 0x87, 0x1e, 0x27, 0x90, 0xc5, 0x7a, 0xdb, 0x13, 0x1f, 0x03, 0x19, 0xf8, 0x85, 0xcd, 0xdc, 0x7c, 0x63, 0x70, 0xb4, 0xd2, 0x89, 0x53, 0x90, 0xf8, 0x93, 0x14, 0xac, 0x13, 0xf6, 0x3d, 0x83, 0x37, 0x91, 0x7f, 0xeb, 0xfe, 0x13, 0x1e, 0xe5, 0xb7, 0x99, 0x36, 0x4d, 0xfd, 0x62, 0xe1, 0x98, 0xa2, 0xfc, 0x57, 0x23, 0xa2, 0x6f, 0xb1, 0x0b, 0xb2, 0x9d, }; static const unsigned char ecdh_brainpoolp256r1_4009_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4009_sharedsecret[] = { 0x3d, 0x39, 0x96, 0x1f, 0x5d, 0x18, 0x9c, 0x9e, 0xae, 0xb9, 0x96, 0x75, 0xce, 0xfa, 0x77, 0x80, 0x91, 0x45, 0x1a, 0xb6, 0xa8, 0x63, 0x87, 0x92, 0x8f, 0xc4, 0x02, 0xd5, 0x59, 0x03, 0x78, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4009 = { .name = "ecdh_brainpoolp256r1_4009", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4009_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4009_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4009_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1617 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4010 for ECDH, tcId is 1618 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4010_peerpubkey[] = { 0x72, 0x07, 0x0a, 0x80, 0x83, 0xa2, 0xe2, 0x4e, 0xd4, 0xe2, 0xf0, 0x88, 0x6a, 0x65, 0xb7, 0xa2, 0xa7, 0x5a, 0x42, 0xf7, 0xad, 0x21, 0x15, 0x0a, 0xc3, 0x41, 0x5f, 0x37, 0x31, 0x2b, 0xb1, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4010_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4010_sharedsecret[] = { 0x74, 0x8b, 0x61, 0x20, 0x05, 0x6d, 0x98, 0xa8, 0x8d, 0x16, 0xec, 0xa4, 0xf6, 0x1f, 0x6f, 0x6d, 0xe3, 0x52, 0x66, 0x85, 0x41, 0x1e, 0xc6, 0xbf, 0xa2, 0xbc, 0x2a, 0x33, 0x58, 0xf7, 0xe2, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4010 = { .name = "ecdh_brainpoolp256r1_4010", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4010_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4010_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4010_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1618 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4011 for ECDH, tcId is 1619 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4011_peerpubkey[] = { 0x94, 0xab, 0xf8, 0x36, 0x13, 0x54, 0xe6, 0x4c, 0x05, 0xca, 0xe0, 0x9f, 0x35, 0xd7, 0xa7, 0x2c, 0x75, 0x2b, 0xe1, 0x32, 0x58, 0xce, 0xdc, 0xbb, 0x56, 0x5e, 0x7b, 0x4d, 0x3d, 0x5e, 0x66, 0xda, 0x7f, 0xef, 0x17, 0x8b, 0xe6, 0x3f, 0xb7, 0x6a, 0x62, 0x4f, 0x43, 0x8e, 0x5d, 0x27, 0x82, 0x61, 0x9f, 0xe5, 0xef, 0x4d, 0x32, 0xc0, 0x01, 0x2f, 0xdb, 0xab, 0xd6, 0x16, 0x46, 0xf3, 0xfd, 0xe5, }; static const unsigned char ecdh_brainpoolp256r1_4011_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4011_sharedsecret[] = { 0x3a, 0x2b, 0x34, 0x66, 0x2f, 0x20, 0x96, 0xd6, 0x08, 0xda, 0x6a, 0xb9, 0xab, 0xa4, 0x2a, 0x0b, 0x71, 0x05, 0xa0, 0xf9, 0x0f, 0xb9, 0x74, 0xdf, 0x3e, 0xb3, 0x35, 0x0f, 0x6e, 0x95, 0xd7, 0xa0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4011 = { .name = "ecdh_brainpoolp256r1_4011", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4011_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4011_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4011_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1619 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4012 for ECDH, tcId is 1620 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4012_peerpubkey[] = { 0x29, 0x8b, 0x5c, 0xfe, 0xf2, 0xa4, 0xe2, 0xcc, 0xe0, 0xc5, 0x2c, 0xc2, 0xb3, 0x99, 0xfa, 0x52, 0xb9, 0xb9, 0x61, 0x1b, 0xef, 0x82, 0x5e, 0x7f, 0xda, 0xc0, 0xd6, 0x7d, 0x59, 0x25, 0x6d, 0x8f, 0xa4, 0xa1, 0x50, 0xbb, 0xed, 0x3d, 0xf8, 0x6f, 0x94, 0x39, 0x1e, 0xd8, 0x8d, 0xd7, 0x96, 0x54, 0x11, 0x55, 0xa8, 0x48, 0xc7, 0xb5, 0x0c, 0x34, 0x03, 0xba, 0xd2, 0xe9, 0x56, 0x9c, 0x71, 0xdd, }; static const unsigned char ecdh_brainpoolp256r1_4012_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4012_sharedsecret[] = { 0x35, 0x66, 0xe9, 0x14, 0xc8, 0x20, 0x13, 0x56, 0x09, 0x4d, 0x70, 0x77, 0xc6, 0xda, 0x26, 0xb1, 0xc9, 0xe8, 0xe4, 0xe0, 0x22, 0xe8, 0x86, 0x31, 0x55, 0xf2, 0x82, 0x6f, 0x8d, 0xc6, 0xed, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4012 = { .name = "ecdh_brainpoolp256r1_4012", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4012_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4012_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4012_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 1620 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4013 for ECDH, tcId is 1621 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4013_peerpubkey[] = { 0x75, 0x84, 0x92, 0x69, 0xb7, 0x89, 0x9f, 0x1a, 0xfd, 0x7c, 0xe5, 0x05, 0xaf, 0x36, 0xbd, 0x13, 0x92, 0xe1, 0xfe, 0x57, 0xdc, 0xce, 0x83, 0xce, 0x12, 0x84, 0xd0, 0xaa, 0x34, 0x92, 0xd1, 0x24, 0xa8, 0x1f, 0x1d, 0x17, 0x43, 0x34, 0x41, 0xe4, 0x37, 0xf9, 0x67, 0x67, 0xbd, 0x58, 0xb9, 0x51, 0xd4, 0x83, 0xe8, 0x0c, 0xbe, 0x5a, 0xb4, 0x0f, 0x53, 0xbb, 0xb4, 0xaa, 0x2d, 0xf7, 0x15, 0x2f, }; static const unsigned char ecdh_brainpoolp256r1_4013_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4013_sharedsecret[] = { 0x22, 0xc0, 0xad, 0x9d, 0x52, 0xe5, 0x5a, 0xfc, 0xcb, 0x40, 0xc6, 0x29, 0x2b, 0xed, 0x37, 0xc5, 0x25, 0x82, 0x63, 0x73, 0x1b, 0xe0, 0x4c, 0x9a, 0xef, 0xaf, 0x4e, 0x13, 0x48, 0xaa, 0x01, 0x5a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4013 = { .name = "ecdh_brainpoolp256r1_4013", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4013_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4013_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4013_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1621 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4014 for ECDH, tcId is 1622 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4014_peerpubkey[] = { 0x94, 0x45, 0xc0, 0xa9, 0x21, 0x09, 0xe3, 0xbb, 0x28, 0x84, 0xc0, 0xd3, 0x20, 0x8a, 0xb0, 0x1b, 0x4e, 0x72, 0x6e, 0x36, 0x0e, 0xb9, 0x6b, 0x9c, 0x03, 0xd9, 0x3e, 0x30, 0xb3, 0xc6, 0xc1, 0x4b, 0x5b, 0x2c, 0x35, 0x6f, 0x71, 0x39, 0x5f, 0xbd, 0x44, 0x0f, 0x83, 0x59, 0xe4, 0x97, 0xdf, 0xb0, 0xd8, 0x22, 0x69, 0xa0, 0x99, 0xb7, 0x4b, 0xe7, 0xd4, 0x6e, 0x1b, 0x42, 0xad, 0x78, 0x59, 0x57, }; static const unsigned char ecdh_brainpoolp256r1_4014_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4014_sharedsecret[] = { 0x80, 0xb4, 0x74, 0xd4, 0xa9, 0x92, 0x8a, 0x12, 0x59, 0x62, 0x84, 0x5b, 0x70, 0xc3, 0x98, 0xb7, 0x2c, 0x0d, 0xac, 0x23, 0x2d, 0xcb, 0x51, 0xfa, 0x28, 0x73, 0xac, 0x72, 0x13, 0xb9, 0x4f, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4014 = { .name = "ecdh_brainpoolp256r1_4014", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4014_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4014_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4014_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1622 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4015 for ECDH, tcId is 1623 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4015_peerpubkey[] = { 0x72, 0xe0, 0xe0, 0xd6, 0x85, 0xed, 0xae, 0x12, 0xe7, 0xea, 0xb0, 0x49, 0xa4, 0x27, 0xd4, 0xb6, 0x8d, 0x96, 0x82, 0x7f, 0xe1, 0x0a, 0x24, 0x99, 0x47, 0x08, 0xa6, 0x73, 0xc5, 0x69, 0x6c, 0x2e, 0x20, 0x45, 0x38, 0x7e, 0x85, 0x4c, 0xda, 0x2e, 0xb9, 0x87, 0x34, 0x55, 0xf4, 0x69, 0xdd, 0xaf, 0xfc, 0x5a, 0x4b, 0xb1, 0xec, 0xcf, 0x00, 0xac, 0xa9, 0x0f, 0xf8, 0x51, 0x90, 0x66, 0x31, 0x54, }; static const unsigned char ecdh_brainpoolp256r1_4015_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4015_sharedsecret[] = { 0x0a, 0x67, 0x18, 0xaa, 0x03, 0x4c, 0x39, 0xb8, 0x9f, 0xa2, 0xec, 0x6d, 0xed, 0xcc, 0x16, 0x9f, 0xeb, 0xf0, 0x01, 0x9e, 0x7f, 0xef, 0x3d, 0x5a, 0x9a, 0xcc, 0x63, 0xc4, 0xfd, 0x36, 0x04, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4015 = { .name = "ecdh_brainpoolp256r1_4015", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4015_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4015_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4015_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1623 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4016 for ECDH, tcId is 1624 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4016_peerpubkey[] = { 0x1a, 0x2c, 0x7d, 0xa1, 0x2d, 0xca, 0x05, 0x8d, 0x30, 0x53, 0x97, 0x3a, 0x6e, 0xb2, 0x25, 0x49, 0xa1, 0x8c, 0x21, 0xe5, 0x51, 0xc2, 0x78, 0xc4, 0x22, 0x07, 0xd0, 0x44, 0x52, 0xe6, 0xee, 0x3f, 0x32, 0xc4, 0xfd, 0x14, 0x85, 0x25, 0xe9, 0xc3, 0x82, 0x00, 0x49, 0x50, 0x18, 0x11, 0xdd, 0xfc, 0x59, 0x2d, 0x43, 0x4b, 0x85, 0x88, 0x6b, 0x56, 0xf4, 0xb5, 0x3d, 0x09, 0x90, 0x3b, 0xf1, 0x65, }; static const unsigned char ecdh_brainpoolp256r1_4016_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4016_sharedsecret[] = { 0x04, 0xe6, 0x6c, 0x51, 0x54, 0x29, 0x5b, 0x74, 0xd7, 0xc0, 0xbb, 0x08, 0x83, 0x4c, 0x72, 0x4f, 0xe2, 0x0b, 0x24, 0xbe, 0x86, 0x4f, 0xae, 0xa3, 0xff, 0xe4, 0xd3, 0x9a, 0xa7, 0x65, 0xa0, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4016 = { .name = "ecdh_brainpoolp256r1_4016", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4016_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4016_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4016_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1624 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4017 for ECDH, tcId is 1625 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4017_peerpubkey[] = { 0x47, 0xc9, 0x42, 0xeb, 0xc3, 0x94, 0xe0, 0x55, 0x9e, 0x60, 0x8d, 0x10, 0x17, 0x33, 0xef, 0x06, 0xbc, 0x55, 0xca, 0xf1, 0x09, 0xfa, 0x4f, 0x0a, 0x30, 0x91, 0x64, 0xc4, 0x66, 0x8e, 0x42, 0x0b, 0x55, 0xfa, 0x9e, 0x65, 0xa7, 0xb6, 0xba, 0x92, 0xdf, 0x18, 0x79, 0xeb, 0x61, 0xb8, 0x45, 0x59, 0xe3, 0xf8, 0xf5, 0xd5, 0xc4, 0xbb, 0x98, 0xdb, 0xcd, 0x43, 0xf3, 0xa0, 0xd8, 0xa2, 0x2f, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_4017_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4017_sharedsecret[] = { 0x2d, 0xcb, 0xdd, 0x34, 0x7c, 0xdf, 0x73, 0xd7, 0x52, 0x6d, 0xc6, 0x6c, 0xed, 0xe3, 0xd6, 0xbe, 0xa9, 0x45, 0x4d, 0xb1, 0xd5, 0xaa, 0x9c, 0x11, 0x27, 0x9c, 0xea, 0x57, 0x79, 0x0f, 0x63, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4017 = { .name = "ecdh_brainpoolp256r1_4017", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4017_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4017_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4017_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1625 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4018 for ECDH, tcId is 1626 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4018_peerpubkey[] = { 0x08, 0xec, 0x0e, 0x29, 0xa2, 0xbb, 0xbf, 0x6a, 0xa7, 0x02, 0x75, 0x49, 0x51, 0xe9, 0x6c, 0x91, 0x58, 0xd8, 0x3a, 0x9c, 0xa3, 0xa7, 0xcd, 0x83, 0xae, 0x3a, 0x79, 0x7d, 0x67, 0x1a, 0xde, 0x02, 0x1e, 0x22, 0xf0, 0xca, 0xab, 0xcc, 0xcb, 0x91, 0x9b, 0xc4, 0x20, 0xfd, 0xb6, 0xb0, 0xca, 0xe6, 0x67, 0xe2, 0x74, 0x6d, 0x21, 0xe7, 0xde, 0x17, 0x6e, 0xf4, 0xfb, 0x59, 0xf9, 0xb4, 0xa5, 0xa3, }; static const unsigned char ecdh_brainpoolp256r1_4018_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4018_sharedsecret[] = { 0x7a, 0xd4, 0x71, 0xb3, 0x5f, 0x5f, 0xa6, 0xeb, 0x1d, 0xe3, 0x1e, 0x1d, 0xc6, 0x8c, 0x06, 0x15, 0x31, 0xb9, 0x91, 0x63, 0xfb, 0x79, 0xe6, 0x60, 0xe0, 0xb8, 0x78, 0xd5, 0x97, 0xfa, 0x8e, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4018 = { .name = "ecdh_brainpoolp256r1_4018", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4018_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4018_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4018_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1626 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4019 for ECDH, tcId is 1627 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4019_peerpubkey[] = { 0x62, 0x13, 0x73, 0x59, 0x0e, 0x03, 0x4e, 0x6e, 0x3c, 0xf0, 0x23, 0xb4, 0x02, 0x0e, 0x97, 0x59, 0x65, 0xea, 0xee, 0x14, 0x62, 0x4d, 0x4f, 0x1f, 0x2d, 0x07, 0x81, 0xb3, 0x07, 0x17, 0x9e, 0xa7, 0x61, 0x8f, 0x4b, 0xc1, 0x60, 0xc5, 0x62, 0xfe, 0xdb, 0x8f, 0x27, 0x87, 0xf8, 0x90, 0x7c, 0x76, 0x85, 0x26, 0x9c, 0x16, 0xab, 0x4e, 0x49, 0xf3, 0x94, 0xf3, 0x59, 0xfd, 0x95, 0x73, 0x55, 0xb9, }; static const unsigned char ecdh_brainpoolp256r1_4019_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4019_sharedsecret[] = { 0x21, 0x16, 0x97, 0x80, 0x71, 0x83, 0x80, 0x75, 0x5c, 0x63, 0x51, 0xab, 0xd8, 0x48, 0x31, 0x11, 0x95, 0xc2, 0xf0, 0x78, 0x43, 0x64, 0xfe, 0xf0, 0xa9, 0x4d, 0x5e, 0xda, 0xf2, 0x06, 0x60, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4019 = { .name = "ecdh_brainpoolp256r1_4019", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4019_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4019_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4019_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1627 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4020 for ECDH, tcId is 1628 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4020_peerpubkey[] = { 0x57, 0x31, 0x72, 0x5e, 0x8c, 0xcf, 0xd4, 0x45, 0x40, 0x72, 0x5e, 0x1b, 0x43, 0xa8, 0x6d, 0x7e, 0x2f, 0x48, 0x65, 0xd5, 0x48, 0x35, 0x4a, 0x35, 0x78, 0xf1, 0x68, 0xb7, 0x92, 0xf7, 0x87, 0xc3, 0x34, 0x34, 0x49, 0x43, 0x0c, 0x8e, 0xf2, 0x06, 0xcc, 0xcc, 0x58, 0xd6, 0xba, 0x74, 0xc9, 0xb2, 0x33, 0x7c, 0x28, 0x9b, 0x34, 0xdc, 0x4e, 0x7b, 0xfa, 0xc7, 0x88, 0xbb, 0x5c, 0x6f, 0xef, 0xd5, }; static const unsigned char ecdh_brainpoolp256r1_4020_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4020_sharedsecret[] = { 0x74, 0x56, 0x08, 0xfe, 0x1f, 0x3b, 0x63, 0xeb, 0x0e, 0xb6, 0x85, 0x06, 0x57, 0x5e, 0x7f, 0x7c, 0x23, 0xa1, 0x10, 0xb1, 0xce, 0x3c, 0xf2, 0xc4, 0x2a, 0x91, 0x7b, 0x50, 0xd4, 0x1b, 0x29, 0xf9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4020 = { .name = "ecdh_brainpoolp256r1_4020", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4020_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4020_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4020_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1628 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4021 for ECDH, tcId is 1629 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4021_peerpubkey[] = { 0x78, 0xdd, 0x35, 0x2f, 0x74, 0xc8, 0x9e, 0x0d, 0x43, 0x44, 0x93, 0x24, 0x80, 0xa6, 0xec, 0xa3, 0x89, 0xdf, 0x80, 0x0e, 0xee, 0x74, 0x3d, 0xf6, 0xb5, 0x74, 0x54, 0x9a, 0x31, 0x03, 0x93, 0x15, 0x05, 0xad, 0x53, 0x29, 0xb1, 0xee, 0xbd, 0xd5, 0x52, 0x5c, 0x7c, 0x15, 0x7e, 0xf6, 0xd5, 0x18, 0xc7, 0x9f, 0xda, 0x52, 0xee, 0x63, 0xb1, 0x4e, 0x1b, 0x47, 0x9f, 0x7d, 0x5d, 0x13, 0xa0, 0x27, }; static const unsigned char ecdh_brainpoolp256r1_4021_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4021_sharedsecret[] = { 0x98, 0xe2, 0xbd, 0x29, 0x97, 0xe9, 0x9d, 0x70, 0xa3, 0x1e, 0x71, 0x70, 0xd2, 0x91, 0x67, 0x36, 0xcd, 0xb8, 0x7b, 0x86, 0x41, 0xd7, 0x55, 0xe2, 0xfa, 0xfd, 0x26, 0xa1, 0xd3, 0xb1, 0x55, 0xe1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4021 = { .name = "ecdh_brainpoolp256r1_4021", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4021_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4021_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4021_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1629 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4022 for ECDH, tcId is 1630 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4022_peerpubkey[] = { 0xa8, 0xf6, 0x1f, 0xf6, 0xf1, 0xfb, 0x0b, 0x76, 0x20, 0x9a, 0xc0, 0x92, 0x6f, 0x8d, 0x8f, 0x4a, 0xa1, 0x65, 0xbb, 0x5b, 0xee, 0x9f, 0x6e, 0x8d, 0xd0, 0x04, 0xa6, 0xc1, 0x65, 0x5f, 0xdf, 0x3a, 0x56, 0x80, 0xee, 0x08, 0xda, 0x27, 0xd5, 0xac, 0x21, 0x8b, 0x2f, 0x27, 0x81, 0x94, 0x91, 0x7b, 0x7d, 0x95, 0xd1, 0xff, 0x9b, 0xe9, 0xb0, 0xa5, 0x03, 0xc9, 0x30, 0xf2, 0x9f, 0x34, 0x4d, 0xae, }; static const unsigned char ecdh_brainpoolp256r1_4022_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4022_sharedsecret[] = { 0x82, 0xa8, 0xb2, 0xdf, 0x49, 0x02, 0x94, 0xdd, 0x06, 0xb3, 0x99, 0x33, 0x2e, 0x42, 0x13, 0x2e, 0xc6, 0xd0, 0x34, 0xe2, 0xc2, 0xaa, 0xa7, 0x38, 0x53, 0xa8, 0xb7, 0xb9, 0x90, 0x28, 0x9b, 0x5b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4022 = { .name = "ecdh_brainpoolp256r1_4022", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4022_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4022_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4022_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1630 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4023 for ECDH, tcId is 1631 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4023_peerpubkey[] = { 0x77, 0x8c, 0x36, 0x25, 0x63, 0x99, 0x11, 0xf9, 0xb0, 0x2a, 0x6a, 0xc5, 0x61, 0x8f, 0xae, 0xdf, 0x1e, 0xa9, 0x0e, 0xe0, 0x79, 0x7d, 0x8c, 0x59, 0xd3, 0x73, 0xe5, 0xc7, 0x39, 0x6d, 0xc7, 0x77, 0x9a, 0x4b, 0xcf, 0xe6, 0xad, 0x24, 0x7a, 0xdf, 0x66, 0x78, 0x10, 0xf2, 0xcc, 0x7e, 0x3b, 0x00, 0xfe, 0xa2, 0xb1, 0xa1, 0xac, 0x81, 0xb5, 0xbc, 0x93, 0x99, 0x9f, 0x13, 0xb2, 0x35, 0x8a, 0xc6, }; static const unsigned char ecdh_brainpoolp256r1_4023_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4023_sharedsecret[] = { 0x74, 0xc8, 0x95, 0x0b, 0x49, 0x93, 0xe4, 0x98, 0x06, 0xe8, 0xc8, 0xd0, 0xc3, 0x5b, 0xb1, 0x87, 0xd5, 0xc2, 0xd1, 0xdc, 0x69, 0x8a, 0x66, 0x4f, 0x3a, 0x0e, 0x67, 0x64, 0x10, 0x29, 0x9d, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4023 = { .name = "ecdh_brainpoolp256r1_4023", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4023_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4023_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4023_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1631 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4024 for ECDH, tcId is 1632 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4024_peerpubkey[] = { 0x63, 0x6b, 0x5f, 0xe1, 0xcc, 0xd4, 0x54, 0xbb, 0xe8, 0x84, 0xaf, 0x59, 0x2a, 0x21, 0x92, 0x5c, 0xd8, 0xae, 0x32, 0x21, 0xbd, 0xc1, 0xc5, 0xfc, 0x89, 0xef, 0x00, 0xa2, 0x7b, 0x2b, 0x36, 0x6d, 0xa6, 0x9c, 0x2b, 0xdd, 0x8f, 0x25, 0x1a, 0xf6, 0x05, 0xe2, 0x3d, 0xa4, 0x9a, 0xc7, 0x7c, 0xc5, 0x5c, 0x7a, 0x6b, 0x03, 0xd1, 0x72, 0xa6, 0x2b, 0x96, 0xf2, 0xe9, 0xaa, 0x57, 0x15, 0xb1, 0xa1, }; static const unsigned char ecdh_brainpoolp256r1_4024_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4024_sharedsecret[] = { 0x54, 0x90, 0x9d, 0x25, 0xe9, 0x21, 0x3a, 0x9f, 0xf7, 0x31, 0x25, 0x50, 0x55, 0x1d, 0x71, 0x8d, 0x6b, 0xd5, 0xc3, 0x85, 0xaa, 0x05, 0xfc, 0xb6, 0x85, 0xb9, 0x37, 0x0a, 0xb3, 0xa3, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4024 = { .name = "ecdh_brainpoolp256r1_4024", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4024_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4024_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4024_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1632 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4025 for ECDH, tcId is 1633 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4025_peerpubkey[] = { 0x6e, 0x18, 0x25, 0x4f, 0x7a, 0xd0, 0x8c, 0x27, 0x45, 0xec, 0xd6, 0x66, 0x80, 0x10, 0x1d, 0x3d, 0x21, 0x02, 0xae, 0x97, 0x8b, 0x52, 0x19, 0x46, 0xf1, 0x9f, 0x6e, 0xd0, 0xeb, 0xed, 0x48, 0xf4, 0x17, 0x96, 0x26, 0x42, 0xb9, 0x92, 0x5c, 0xb8, 0x08, 0x49, 0xf7, 0x89, 0xeb, 0x63, 0x7a, 0x5d, 0x5a, 0xf4, 0x35, 0x98, 0xdd, 0x19, 0xb6, 0xb0, 0x08, 0xd3, 0xd9, 0x00, 0x7c, 0x79, 0x26, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_4025_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4025_sharedsecret[] = { 0x13, 0xcc, 0x36, 0xf1, 0x84, 0x61, 0xf5, 0x9b, 0x09, 0x2f, 0x9b, 0x13, 0xb1, 0x18, 0xcd, 0x40, 0xb7, 0xff, 0x0c, 0xbe, 0xfc, 0x41, 0xae, 0x15, 0x08, 0x37, 0x7e, 0x96, 0x9c, 0x4d, 0x0a, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4025 = { .name = "ecdh_brainpoolp256r1_4025", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4025_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4025_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4025_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1633 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4026 for ECDH, tcId is 1634 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4026_peerpubkey[] = { 0x5a, 0xfc, 0x06, 0x47, 0x7f, 0x7e, 0x17, 0x39, 0x05, 0xc6, 0xe8, 0xcc, 0xdb, 0xb0, 0xc6, 0xff, 0x3b, 0x85, 0x39, 0x0d, 0x4a, 0x11, 0x65, 0x93, 0x3f, 0x0e, 0xa1, 0x34, 0xcb, 0xf5, 0x82, 0xfe, 0x85, 0x53, 0x31, 0x1b, 0xa4, 0xd7, 0xa9, 0xe0, 0x01, 0xc3, 0x60, 0x50, 0x49, 0x65, 0xf8, 0x76, 0x52, 0xcb, 0x41, 0x2f, 0x7e, 0x36, 0xd6, 0x87, 0xc1, 0x8c, 0x09, 0xf7, 0x2d, 0x5e, 0x2d, 0x12, }; static const unsigned char ecdh_brainpoolp256r1_4026_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4026_sharedsecret[] = { 0x85, 0xba, 0x20, 0x3d, 0x78, 0xdc, 0xb7, 0x85, 0xef, 0x97, 0x16, 0x90, 0xf0, 0xe6, 0x37, 0x4b, 0xba, 0xaf, 0x9a, 0xdc, 0x73, 0xa9, 0xf6, 0x36, 0x68, 0x2f, 0xb6, 0xe8, 0xa5, 0x66, 0x39, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4026 = { .name = "ecdh_brainpoolp256r1_4026", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4026_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4026_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4026_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1634 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4027 for ECDH, tcId is 1635 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4027_peerpubkey[] = { 0x53, 0x74, 0x0f, 0xfd, 0xca, 0x35, 0x6a, 0x22, 0x1b, 0x12, 0xf7, 0xd1, 0x72, 0x6b, 0x2e, 0x8c, 0x04, 0x46, 0x6b, 0xa0, 0xe4, 0x1e, 0x07, 0x98, 0xaf, 0x80, 0x09, 0x00, 0x80, 0x7b, 0xf4, 0xf7, 0x83, 0xb8, 0x5a, 0xb8, 0xd5, 0xad, 0xaf, 0x79, 0xe5, 0x1d, 0xa6, 0x1f, 0x14, 0x0c, 0xe5, 0x21, 0x4e, 0xfd, 0xca, 0xa0, 0xc4, 0x14, 0x8d, 0x51, 0x5a, 0x52, 0xf5, 0x48, 0xe2, 0xeb, 0x3a, 0xfc, }; static const unsigned char ecdh_brainpoolp256r1_4027_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4027_sharedsecret[] = { 0x1e, 0x7e, 0x7e, 0xda, 0xe8, 0x89, 0x9e, 0x62, 0x7e, 0x5e, 0x2b, 0x35, 0xc9, 0x90, 0xd4, 0x87, 0xd0, 0x22, 0xa7, 0x51, 0x15, 0x07, 0x43, 0x27, 0xcb, 0xd7, 0x3a, 0x53, 0x52, 0x15, 0xf7, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4027 = { .name = "ecdh_brainpoolp256r1_4027", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4027_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4027_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4027_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1635 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4028 for ECDH, tcId is 1636 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4028_peerpubkey[] = { 0x4d, 0xe1, 0x14, 0x46, 0x64, 0x4c, 0xc6, 0x8f, 0x1c, 0x13, 0x57, 0x99, 0x10, 0xca, 0xc4, 0xd7, 0x3f, 0xbf, 0x4a, 0x88, 0x63, 0x38, 0x19, 0x1f, 0x67, 0x59, 0x57, 0x2f, 0xd1, 0xc5, 0x64, 0xe2, 0x63, 0x84, 0xba, 0xab, 0x5d, 0x76, 0xd8, 0x62, 0x50, 0xc2, 0x1c, 0x1d, 0xa9, 0x9d, 0x9e, 0xff, 0xc5, 0x0f, 0xb3, 0x02, 0xa6, 0xeb, 0x88, 0x3f, 0x53, 0x05, 0x36, 0x7d, 0x7f, 0x80, 0xe6, 0x72, }; static const unsigned char ecdh_brainpoolp256r1_4028_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4028_sharedsecret[] = { 0x5e, 0x93, 0xb1, 0x3d, 0x39, 0x59, 0xa5, 0xd1, 0x2c, 0x79, 0xaf, 0x52, 0xfe, 0xbe, 0x4a, 0x09, 0x29, 0xbb, 0xbc, 0xab, 0x12, 0x44, 0x35, 0xd5, 0x72, 0x65, 0x9e, 0x90, 0x13, 0xf0, 0xb5, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4028 = { .name = "ecdh_brainpoolp256r1_4028", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4028_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4028_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4028_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1636 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4029 for ECDH, tcId is 1637 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4029_peerpubkey[] = { 0x39, 0xf0, 0x85, 0xf2, 0x45, 0x72, 0x04, 0xc6, 0x31, 0x67, 0x5d, 0xe8, 0x6a, 0x1a, 0xfa, 0xae, 0x3a, 0x38, 0xef, 0xc4, 0xb2, 0xcd, 0x0a, 0xea, 0xbd, 0x5a, 0xe1, 0xe9, 0x25, 0xd0, 0xf6, 0xcc, 0x94, 0x0a, 0x57, 0x00, 0xff, 0xde, 0xf6, 0xfa, 0x20, 0x78, 0xa0, 0xbf, 0x0e, 0x7b, 0x37, 0x2e, 0xf3, 0x41, 0x54, 0xb7, 0xfa, 0xd1, 0x3c, 0x5b, 0x58, 0x96, 0x27, 0x83, 0xb6, 0xe4, 0xa5, 0x15, }; static const unsigned char ecdh_brainpoolp256r1_4029_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4029_sharedsecret[] = { 0x5f, 0xfa, 0x75, 0x24, 0x6b, 0xc1, 0xbc, 0xa4, 0x53, 0x4b, 0xa4, 0x78, 0xdc, 0xa9, 0x8d, 0x8f, 0xcf, 0xe5, 0x0d, 0x3d, 0xe0, 0xcd, 0xfa, 0x2c, 0x3e, 0x2c, 0x46, 0x9a, 0x8a, 0x17, 0x3d, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4029 = { .name = "ecdh_brainpoolp256r1_4029", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4029_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4029_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4029_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1637 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4030 for ECDH, tcId is 1638 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4030_peerpubkey[] = { 0x40, 0x8d, 0xfd, 0xc9, 0xc3, 0x6c, 0xfd, 0x14, 0x94, 0xa2, 0xa6, 0x12, 0x7b, 0x87, 0xda, 0x00, 0xe5, 0xfd, 0x2e, 0x03, 0xbf, 0xaf, 0x4c, 0x5f, 0x08, 0x5c, 0xba, 0xc6, 0x39, 0x3e, 0x9b, 0x1b, 0xa1, 0xf7, 0xfa, 0x38, 0x30, 0xbe, 0x77, 0x8e, 0x72, 0x45, 0x5f, 0x47, 0x95, 0x84, 0xf5, 0x82, 0x62, 0x96, 0xdf, 0xed, 0x56, 0xd0, 0x71, 0xa8, 0x09, 0x08, 0x3c, 0x65, 0xee, 0x3f, 0x50, 0xd9, }; static const unsigned char ecdh_brainpoolp256r1_4030_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4030_sharedsecret[] = { 0x78, 0xd3, 0xe0, 0x4e, 0x70, 0x65, 0x81, 0x4e, 0xaa, 0x27, 0xa3, 0x9e, 0x86, 0x54, 0xeb, 0xd1, 0xe7, 0xf6, 0xe8, 0x72, 0x60, 0x88, 0x04, 0xee, 0xa1, 0x66, 0x47, 0x88, 0xa0, 0xb6, 0x99, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4030 = { .name = "ecdh_brainpoolp256r1_4030", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4030_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4030_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4030_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1638 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4031 for ECDH, tcId is 1639 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4031_peerpubkey[] = { 0x4b, 0xfc, 0xf9, 0x9c, 0xc7, 0xa7, 0xba, 0x7f, 0x61, 0xc3, 0x31, 0xda, 0x42, 0xe0, 0x7f, 0x3b, 0xdb, 0x0f, 0x9e, 0x75, 0x0e, 0x77, 0xda, 0x93, 0x96, 0x2c, 0x95, 0xdd, 0x56, 0x43, 0xa4, 0x26, 0x8a, 0x47, 0x94, 0x26, 0x46, 0xb3, 0xab, 0x87, 0x4a, 0x0e, 0x09, 0xaf, 0xc5, 0x17, 0x25, 0x9e, 0x04, 0xa6, 0xc8, 0x00, 0x1d, 0xaf, 0xd4, 0x9f, 0x4d, 0x5c, 0xff, 0xb9, 0x57, 0x03, 0xfd, 0xa9, }; static const unsigned char ecdh_brainpoolp256r1_4031_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4031_sharedsecret[] = { 0x7a, 0x5d, 0xf5, 0x6a, 0xd0, 0x32, 0x3d, 0x83, 0xa6, 0xba, 0xa3, 0x0a, 0x6f, 0x74, 0xa0, 0x6f, 0x13, 0x3e, 0x62, 0xad, 0xb2, 0xa4, 0xc0, 0xdd, 0x1e, 0x5f, 0xd5, 0xad, 0xeb, 0x6e, 0x51, 0xdb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4031 = { .name = "ecdh_brainpoolp256r1_4031", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4031_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4031_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4031_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1639 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4032 for ECDH, tcId is 1640 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4032_peerpubkey[] = { 0x9d, 0x2f, 0xe9, 0xdb, 0xc7, 0xb2, 0xbe, 0x8a, 0x06, 0x16, 0xe5, 0xaf, 0x37, 0xae, 0x21, 0x74, 0xaf, 0x9b, 0x32, 0xf0, 0x96, 0x15, 0x89, 0xbb, 0x05, 0x17, 0x10, 0x29, 0xbd, 0x96, 0xd5, 0x92, 0x36, 0x19, 0x41, 0x79, 0x01, 0x42, 0xab, 0xd9, 0x70, 0x41, 0x75, 0x0c, 0x4d, 0x6d, 0x39, 0x3b, 0x54, 0x32, 0x53, 0x04, 0x5b, 0xc2, 0x00, 0x9b, 0x5b, 0xd9, 0xf5, 0x08, 0x80, 0xa7, 0xa1, 0xf1, }; static const unsigned char ecdh_brainpoolp256r1_4032_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4032_sharedsecret[] = { 0x09, 0xe0, 0x39, 0x3b, 0xa5, 0x3d, 0x08, 0xa3, 0x50, 0x3f, 0xbd, 0xb3, 0xf1, 0xfb, 0x0a, 0x1e, 0xb9, 0xc1, 0xe8, 0x5e, 0x92, 0x86, 0xdf, 0xa8, 0x0b, 0xac, 0xd6, 0xde, 0x78, 0x33, 0xfc, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4032 = { .name = "ecdh_brainpoolp256r1_4032", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4032_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4032_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4032_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1640 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4033 for ECDH, tcId is 1641 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4033_peerpubkey[] = { 0x1a, 0x13, 0x99, 0x03, 0xc1, 0x54, 0xed, 0x27, 0x94, 0xa3, 0xad, 0x03, 0xfc, 0xca, 0x58, 0xdb, 0x6f, 0x50, 0x08, 0x3d, 0xb9, 0xc2, 0x0e, 0x89, 0x03, 0x09, 0x2d, 0x8d, 0x67, 0xc5, 0x97, 0x83, 0x2c, 0x97, 0xf9, 0x7c, 0x70, 0x99, 0x83, 0xf8, 0x47, 0xee, 0x9b, 0xc1, 0x20, 0x05, 0x83, 0x6f, 0x27, 0xf2, 0xe6, 0x02, 0x53, 0xc4, 0xb0, 0x52, 0x75, 0x08, 0xc6, 0xe6, 0xfe, 0x82, 0x8b, 0x5b, }; static const unsigned char ecdh_brainpoolp256r1_4033_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4033_sharedsecret[] = { 0x60, 0x53, 0xa6, 0x03, 0xfe, 0x6a, 0xaf, 0x7e, 0x0d, 0x96, 0x01, 0x1d, 0x7f, 0xf6, 0xb2, 0xec, 0x94, 0x49, 0xbf, 0xcb, 0x28, 0x50, 0x81, 0x2e, 0xad, 0xc2, 0xeb, 0xdb, 0xa9, 0x5f, 0xc2, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4033 = { .name = "ecdh_brainpoolp256r1_4033", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4033_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4033_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4033_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1641 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4034 for ECDH, tcId is 1642 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4034_peerpubkey[] = { 0x91, 0xeb, 0xd6, 0xf7, 0x7f, 0x26, 0x5e, 0xd5, 0x34, 0x9d, 0xa7, 0xf9, 0xd6, 0x13, 0xdc, 0x89, 0x11, 0x17, 0x6e, 0x76, 0xa3, 0x0b, 0x13, 0x30, 0x2a, 0x43, 0xfe, 0x64, 0xac, 0xbf, 0x5a, 0x6c, 0x0a, 0x0f, 0xa3, 0xb9, 0x73, 0x32, 0xe3, 0x59, 0x9b, 0xf6, 0x8e, 0xc0, 0x81, 0xf6, 0x20, 0x8f, 0x6f, 0x49, 0xae, 0x58, 0x9d, 0xbc, 0x93, 0x35, 0xe7, 0x35, 0x2b, 0xe7, 0x7e, 0xf6, 0xa4, 0xf9, }; static const unsigned char ecdh_brainpoolp256r1_4034_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4034_sharedsecret[] = { 0x45, 0xf3, 0xa6, 0x55, 0x7b, 0x65, 0x4d, 0xb3, 0x83, 0xd7, 0x25, 0xc6, 0x91, 0x89, 0xcb, 0xbc, 0x45, 0xe6, 0xcc, 0xc7, 0x1b, 0x97, 0x2c, 0x69, 0x67, 0x43, 0x63, 0x4b, 0x96, 0x60, 0xe3, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4034 = { .name = "ecdh_brainpoolp256r1_4034", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4034_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4034_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4034_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1642 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4035 for ECDH, tcId is 1643 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4035_peerpubkey[] = { 0x0e, 0x5e, 0xb7, 0xc5, 0xb2, 0xd3, 0x44, 0x44, 0xbc, 0x4d, 0x03, 0x82, 0x75, 0xc9, 0xdf, 0x26, 0x25, 0xe7, 0xf6, 0xcb, 0x98, 0x0e, 0xdd, 0x83, 0xf1, 0xd5, 0x2a, 0x37, 0xc3, 0xaa, 0xef, 0x33, 0x31, 0x84, 0x52, 0x44, 0x42, 0x8f, 0xb6, 0xa2, 0xc4, 0xc2, 0x69, 0xdf, 0x3a, 0xe3, 0x47, 0x74, 0xea, 0x09, 0xab, 0x83, 0x46, 0x20, 0x48, 0x66, 0x39, 0x9c, 0x9f, 0x66, 0x45, 0xad, 0x97, 0xee, }; static const unsigned char ecdh_brainpoolp256r1_4035_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4035_sharedsecret[] = { 0x63, 0x33, 0x46, 0x11, 0xff, 0xab, 0x29, 0x08, 0x42, 0x73, 0xa1, 0x9a, 0xb6, 0x9d, 0xa5, 0x89, 0xb3, 0xa5, 0x84, 0x7e, 0xfa, 0xc5, 0xbf, 0xee, 0x53, 0xbe, 0x80, 0x4f, 0x76, 0x16, 0x1d, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4035 = { .name = "ecdh_brainpoolp256r1_4035", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4035_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4035_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4035_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1643 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4036 for ECDH, tcId is 1644 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4036_peerpubkey[] = { 0x45, 0xc6, 0x71, 0xbd, 0xd0, 0x6e, 0xc2, 0x4d, 0xa8, 0x3c, 0xa2, 0x09, 0x7e, 0x68, 0x2a, 0x58, 0xc9, 0x7a, 0x39, 0xf2, 0x3b, 0x61, 0xca, 0x61, 0x22, 0xc1, 0x58, 0x5f, 0xa5, 0xf5, 0x62, 0x7f, 0x34, 0x93, 0x46, 0x4f, 0x20, 0xe5, 0xb7, 0x1c, 0x77, 0x78, 0xa9, 0xe1, 0x98, 0xfd, 0xdd, 0xce, 0x72, 0x9c, 0xf6, 0xee, 0x67, 0x33, 0x62, 0x31, 0xd3, 0x7b, 0xd1, 0xb4, 0xec, 0x00, 0x88, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_4036_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4036_sharedsecret[] = { 0x7c, 0xc7, 0x70, 0x87, 0xe2, 0xc9, 0xb6, 0x2a, 0x69, 0x06, 0x17, 0x4b, 0xa2, 0xe7, 0xb5, 0x24, 0x4e, 0x86, 0xe8, 0x41, 0xf8, 0x22, 0x38, 0xb3, 0x5d, 0x8a, 0xd3, 0xf8, 0xd1, 0x1d, 0xb3, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4036 = { .name = "ecdh_brainpoolp256r1_4036", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4036_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4036_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4036_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1644 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4037 for ECDH, tcId is 1645 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4037_peerpubkey[] = { 0x1d, 0x8e, 0xbe, 0x4a, 0xbc, 0xde, 0x56, 0x5b, 0xd5, 0x23, 0x87, 0x4a, 0x28, 0x04, 0x42, 0x57, 0x71, 0xb9, 0x62, 0xe7, 0xcc, 0x5d, 0xd9, 0x90, 0x03, 0x7f, 0x61, 0x96, 0x2a, 0x80, 0x87, 0xf1, 0x9d, 0x63, 0x75, 0xb4, 0xd6, 0x64, 0x3b, 0x22, 0x61, 0xed, 0xcf, 0xbf, 0x98, 0x12, 0xb9, 0x58, 0x39, 0xd7, 0x1d, 0x45, 0xb4, 0x6f, 0xb4, 0xe4, 0xab, 0xcc, 0xb0, 0xf2, 0xcf, 0x41, 0xb0, 0xc0, }; static const unsigned char ecdh_brainpoolp256r1_4037_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4037_sharedsecret[] = { 0x28, 0x6e, 0xb7, 0x24, 0xe4, 0x2e, 0x78, 0xd6, 0x45, 0x8c, 0x0e, 0x11, 0xff, 0xc4, 0x59, 0xac, 0xbe, 0x48, 0x9d, 0x82, 0x27, 0x85, 0x8d, 0x2c, 0x8a, 0xa8, 0xc1, 0xe6, 0xbb, 0xc6, 0xb9, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4037 = { .name = "ecdh_brainpoolp256r1_4037", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4037_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4037_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4037_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1645 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4038 for ECDH, tcId is 1646 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4038_peerpubkey[] = { 0x1c, 0xa7, 0xdb, 0xe4, 0x78, 0xeb, 0x8e, 0x7a, 0xf3, 0xdb, 0x30, 0x98, 0x0d, 0xf9, 0xb1, 0xac, 0x34, 0xf1, 0x0f, 0x03, 0x9b, 0x00, 0xa5, 0xc8, 0xd0, 0x72, 0x74, 0xb2, 0xf6, 0xec, 0x40, 0x1a, 0x04, 0x6d, 0x4c, 0x05, 0xea, 0xf5, 0xe7, 0x7c, 0x32, 0xa1, 0x13, 0x8a, 0x7e, 0xc2, 0x9d, 0x9b, 0x9d, 0xb1, 0xa9, 0x77, 0x63, 0x08, 0x74, 0x53, 0x2a, 0x05, 0x2d, 0x4a, 0x87, 0xc0, 0x8d, 0x94, }; static const unsigned char ecdh_brainpoolp256r1_4038_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4038_sharedsecret[] = { 0x9b, 0x06, 0x85, 0x9c, 0xda, 0xec, 0xdb, 0xe1, 0xd5, 0xc7, 0xd5, 0xbf, 0x2c, 0xab, 0xc3, 0xc9, 0xfc, 0x96, 0x6a, 0xa4, 0x65, 0xcc, 0xa1, 0xb8, 0x95, 0x12, 0x36, 0x52, 0x99, 0x56, 0x30, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4038 = { .name = "ecdh_brainpoolp256r1_4038", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4038_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4038_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4038_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1646 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4039 for ECDH, tcId is 1647 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4039_peerpubkey[] = { 0x52, 0x48, 0xd8, 0x9b, 0x36, 0x1a, 0xec, 0xba, 0x32, 0x39, 0x03, 0x5d, 0xf6, 0x0b, 0x8b, 0x3b, 0xbd, 0x70, 0x7a, 0x50, 0x36, 0xcb, 0x99, 0xec, 0xc1, 0xd8, 0x96, 0x40, 0x01, 0xcf, 0x3d, 0xb1, 0xa1, 0x5e, 0xe7, 0x15, 0xde, 0xdc, 0xb7, 0x29, 0x73, 0x7b, 0x27, 0x14, 0x08, 0x95, 0x60, 0x06, 0x1e, 0x94, 0x23, 0x25, 0x38, 0xbd, 0xac, 0x52, 0x88, 0x7e, 0x1f, 0x28, 0xcc, 0x9e, 0x5c, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_4039_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4039_sharedsecret[] = { 0x79, 0x21, 0x42, 0x00, 0x53, 0x03, 0x36, 0xe4, 0x02, 0x5e, 0xc8, 0x31, 0x21, 0x6c, 0x92, 0x4c, 0x89, 0xb8, 0xb5, 0xea, 0x12, 0xb1, 0x16, 0x44, 0xca, 0x06, 0x5d, 0x86, 0xcb, 0x96, 0xd4, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4039 = { .name = "ecdh_brainpoolp256r1_4039", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4039_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4039_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4039_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1647 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4040 for ECDH, tcId is 1648 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4040_peerpubkey[] = { 0x20, 0xbc, 0xdd, 0x2b, 0x86, 0xfa, 0x7f, 0xe3, 0x8a, 0x8b, 0x81, 0x32, 0xdf, 0xe5, 0x64, 0x5d, 0x68, 0xdb, 0x1d, 0xe1, 0xfb, 0x24, 0xc1, 0x4a, 0x59, 0xcc, 0x4c, 0x0d, 0x79, 0x10, 0xec, 0x32, 0x6a, 0xbf, 0x73, 0x6d, 0x4c, 0xf5, 0x34, 0xc1, 0x4b, 0xe4, 0xe0, 0x08, 0x91, 0x55, 0x10, 0x17, 0x71, 0x1c, 0xde, 0x6e, 0xdd, 0x2e, 0x88, 0x40, 0x83, 0x43, 0x16, 0xff, 0x7c, 0x1b, 0xf6, 0x46, }; static const unsigned char ecdh_brainpoolp256r1_4040_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4040_sharedsecret[] = { 0x0b, 0xf8, 0xa2, 0xae, 0xe4, 0x59, 0xb7, 0x36, 0x59, 0x07, 0x42, 0x23, 0x47, 0x24, 0x74, 0x07, 0x35, 0x3c, 0x3e, 0x8c, 0x44, 0xd1, 0x2e, 0x0c, 0xc1, 0xc5, 0xf6, 0x66, 0x6b, 0x65, 0x34, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4040 = { .name = "ecdh_brainpoolp256r1_4040", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4040_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4040_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4040_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1648 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4041 for ECDH, tcId is 1649 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4041_peerpubkey[] = { 0x44, 0xe9, 0x33, 0x25, 0x18, 0xf9, 0xac, 0xf5, 0x17, 0x6b, 0xd6, 0x81, 0xca, 0x9a, 0x53, 0x66, 0xdc, 0xa9, 0xc6, 0xb7, 0x8f, 0x7a, 0x55, 0x9e, 0x60, 0xc3, 0x0f, 0xd9, 0x3b, 0xe1, 0x46, 0x9e, 0x23, 0x23, 0x3d, 0x75, 0xed, 0xc0, 0x48, 0xcd, 0x8d, 0x7b, 0x6d, 0x0a, 0xcf, 0x0b, 0x57, 0xee, 0x7c, 0xa8, 0x5f, 0xe6, 0xb0, 0xca, 0xef, 0x61, 0x43, 0x66, 0xa0, 0x2f, 0xa6, 0x62, 0x0d, 0xfa, }; static const unsigned char ecdh_brainpoolp256r1_4041_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4041_sharedsecret[] = { 0x5b, 0xbc, 0xe2, 0xb9, 0x97, 0x71, 0x8b, 0x40, 0xbd, 0x81, 0xa1, 0x4a, 0x8d, 0x56, 0xf8, 0x40, 0xf1, 0x44, 0xbb, 0x09, 0xd5, 0x06, 0xc3, 0xaa, 0x27, 0x75, 0x9e, 0xf9, 0xad, 0x4e, 0x89, 0x7b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4041 = { .name = "ecdh_brainpoolp256r1_4041", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4041_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4041_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4041_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1649 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4042 for ECDH, tcId is 1650 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4042_peerpubkey[] = { 0x9d, 0xf6, 0x94, 0xfc, 0xe4, 0x05, 0x93, 0x9b, 0xc8, 0xc1, 0xf4, 0xbf, 0x29, 0xc1, 0xc5, 0xde, 0x47, 0xf8, 0x5d, 0x76, 0x17, 0x38, 0x92, 0x2f, 0x2e, 0x18, 0x49, 0xec, 0x8c, 0xdf, 0x47, 0x88, 0x4f, 0x07, 0x15, 0x47, 0x19, 0x56, 0xb7, 0xda, 0x83, 0x0a, 0xff, 0x5a, 0xa8, 0x32, 0xa5, 0x45, 0x39, 0xcc, 0xed, 0x86, 0x6a, 0x7d, 0x56, 0x6c, 0x64, 0x07, 0x5e, 0x56, 0x43, 0x83, 0x90, 0xe2, }; static const unsigned char ecdh_brainpoolp256r1_4042_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4042_sharedsecret[] = { 0x24, 0xf3, 0x21, 0x61, 0xa6, 0x91, 0xfd, 0x20, 0x89, 0x90, 0xf6, 0x88, 0xd8, 0x79, 0x78, 0x05, 0x41, 0x55, 0xf1, 0x00, 0x9c, 0x03, 0x08, 0xb8, 0xf1, 0x28, 0x1d, 0x71, 0x39, 0xb5, 0x3e, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4042 = { .name = "ecdh_brainpoolp256r1_4042", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4042_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4042_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4042_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1650 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4043 for ECDH, tcId is 1651 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4043_peerpubkey[] = { 0x13, 0x4f, 0xac, 0xb5, 0x95, 0x3a, 0x06, 0xfd, 0xe6, 0x95, 0x18, 0x8b, 0x4b, 0xc3, 0x45, 0x14, 0xdd, 0xe8, 0x60, 0x67, 0xfc, 0xaf, 0xc2, 0xe2, 0x14, 0x53, 0x24, 0x0d, 0x39, 0x83, 0x67, 0x09, 0x29, 0xa2, 0x76, 0xf3, 0x4e, 0xbe, 0xec, 0x6c, 0x54, 0xf1, 0x8e, 0xa6, 0x55, 0xf1, 0x68, 0x89, 0x03, 0x1c, 0x57, 0x60, 0xe6, 0x43, 0x42, 0x8f, 0x6e, 0x36, 0x49, 0x35, 0x1a, 0x8c, 0x0d, 0x22, }; static const unsigned char ecdh_brainpoolp256r1_4043_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4043_sharedsecret[] = { 0x08, 0xd9, 0x4e, 0x8d, 0xa3, 0x1e, 0xb5, 0x9c, 0xe7, 0xad, 0xbe, 0xb7, 0xfb, 0xfc, 0x47, 0x68, 0xed, 0xf3, 0xd4, 0x0c, 0x79, 0x85, 0x4b, 0x39, 0xee, 0xd5, 0xa5, 0x74, 0x16, 0x7a, 0xc5, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4043 = { .name = "ecdh_brainpoolp256r1_4043", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4043_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4043_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4043_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1651 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4044 for ECDH, tcId is 1652 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4044_peerpubkey[] = { 0xa7, 0x95, 0x76, 0x34, 0xf5, 0x5b, 0x2f, 0x06, 0x6f, 0x65, 0xdf, 0x57, 0xeb, 0x75, 0x8c, 0x55, 0xaa, 0x7b, 0x1c, 0x16, 0x7f, 0x8c, 0x21, 0x3f, 0x09, 0x09, 0xe7, 0x80, 0xe4, 0xf8, 0x8a, 0x0f, 0x31, 0x54, 0xcc, 0x2e, 0xb5, 0xe1, 0xd0, 0x6f, 0x0a, 0x97, 0x30, 0x47, 0xd5, 0xcb, 0xab, 0xd0, 0xb4, 0x71, 0x32, 0xdf, 0x3a, 0xce, 0xf1, 0xa9, 0x93, 0x58, 0xb8, 0x99, 0xc2, 0x06, 0x6a, 0x50, }; static const unsigned char ecdh_brainpoolp256r1_4044_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4044_sharedsecret[] = { 0x27, 0xd1, 0x04, 0xbd, 0x2f, 0xd4, 0xb6, 0xdb, 0x63, 0xd3, 0xc0, 0xe1, 0xef, 0xa5, 0xf6, 0x0a, 0xd7, 0x9e, 0x0f, 0x2a, 0xe5, 0xb2, 0x83, 0xe1, 0x75, 0x98, 0x39, 0x09, 0x79, 0x40, 0x7a, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4044 = { .name = "ecdh_brainpoolp256r1_4044", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4044_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4044_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4044_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1652 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4045 for ECDH, tcId is 1653 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4045_peerpubkey[] = { 0xa6, 0x0b, 0xb1, 0xea, 0x2b, 0xf7, 0x10, 0x8f, 0x58, 0x55, 0xf4, 0x49, 0x54, 0x48, 0xba, 0xb9, 0xa5, 0x4d, 0x4e, 0x95, 0x00, 0x45, 0x53, 0x31, 0x34, 0xf4, 0x00, 0x21, 0x74, 0x2d, 0x04, 0x80, 0x5e, 0x7f, 0x3e, 0xd1, 0xa2, 0xf4, 0xe8, 0x27, 0xd9, 0x5a, 0x12, 0x6e, 0x49, 0x8f, 0x17, 0x8e, 0xbe, 0x4a, 0x7b, 0x80, 0xa4, 0xc6, 0xb4, 0xd6, 0x78, 0x2f, 0x39, 0x1e, 0x55, 0xa3, 0x24, 0xaf, }; static const unsigned char ecdh_brainpoolp256r1_4045_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4045_sharedsecret[] = { 0x1f, 0x6f, 0x8c, 0xd2, 0xd9, 0xe5, 0x0c, 0x47, 0x1c, 0x2f, 0xcc, 0x97, 0x5e, 0xf8, 0x17, 0xc8, 0x45, 0xb8, 0x57, 0xa1, 0x6d, 0xcc, 0xd4, 0x97, 0xd2, 0xde, 0xbf, 0x80, 0x95, 0x2a, 0x28, 0xe3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4045 = { .name = "ecdh_brainpoolp256r1_4045", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4045_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4045_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4045_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1653 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4046 for ECDH, tcId is 1654 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4046_peerpubkey[] = { 0x31, 0xa3, 0x62, 0x8e, 0xfd, 0xb7, 0x5d, 0x66, 0x29, 0x03, 0xcb, 0xa8, 0x48, 0x68, 0x05, 0xf9, 0x67, 0x42, 0x03, 0x53, 0x8b, 0x6b, 0x28, 0xa0, 0x9f, 0x96, 0x91, 0xe2, 0x05, 0x29, 0xb5, 0xe0, 0x81, 0x2e, 0x86, 0x4d, 0x25, 0xda, 0x13, 0x73, 0xc0, 0xef, 0x7e, 0x2d, 0x27, 0x33, 0xe0, 0x2e, 0xf2, 0x74, 0xf6, 0xe1, 0xc9, 0xa4, 0x07, 0xe1, 0xd1, 0x01, 0x59, 0x0f, 0x12, 0xbd, 0x21, 0xdc, }; static const unsigned char ecdh_brainpoolp256r1_4046_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4046_sharedsecret[] = { 0x8c, 0xe9, 0x91, 0xac, 0xa4, 0x90, 0xd0, 0xdb, 0x8d, 0xe2, 0x98, 0xf8, 0x5f, 0x6f, 0x7b, 0x58, 0x08, 0x2f, 0x68, 0x5c, 0xb3, 0x8d, 0xec, 0x43, 0x42, 0xb4, 0xd5, 0x1b, 0xbc, 0x90, 0xfb, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4046 = { .name = "ecdh_brainpoolp256r1_4046", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4046_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4046_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4046_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1654 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4047 for ECDH, tcId is 1655 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4047_peerpubkey[] = { 0x35, 0xe8, 0xb3, 0xc3, 0xf2, 0x29, 0x35, 0x54, 0xed, 0x7d, 0x71, 0x60, 0x3e, 0x0e, 0xa5, 0x8d, 0xf3, 0x4b, 0x30, 0x99, 0x08, 0xd7, 0xc1, 0x13, 0x4f, 0xb6, 0xa4, 0x36, 0xfc, 0x50, 0x12, 0x35, 0x7f, 0xb1, 0x31, 0x77, 0x80, 0x93, 0x94, 0xd1, 0xd8, 0x21, 0xee, 0x0e, 0xa4, 0x2c, 0x31, 0x8d, 0xd1, 0x64, 0xd8, 0xf2, 0x8a, 0x5a, 0xb6, 0x1d, 0xa5, 0xcf, 0xef, 0x1c, 0xc0, 0xab, 0x80, 0x3a, }; static const unsigned char ecdh_brainpoolp256r1_4047_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4047_sharedsecret[] = { 0x24, 0x30, 0x6f, 0xe6, 0x26, 0x09, 0xa3, 0xc2, 0x8e, 0xb1, 0xc8, 0xc8, 0xb3, 0x99, 0xd5, 0xe8, 0x47, 0x40, 0x19, 0x47, 0x09, 0x25, 0xdb, 0xe1, 0x0d, 0xa3, 0xf0, 0xe2, 0xa0, 0x34, 0xba, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4047 = { .name = "ecdh_brainpoolp256r1_4047", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4047_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4047_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4047_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1655 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4048 for ECDH, tcId is 1656 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4048_peerpubkey[] = { 0x26, 0x5c, 0x29, 0x60, 0xff, 0xe5, 0x88, 0x6c, 0x11, 0xc2, 0x0a, 0xd0, 0xb2, 0xf0, 0xdd, 0xb0, 0x39, 0x06, 0x13, 0x3a, 0x29, 0x61, 0xae, 0xc9, 0x28, 0x06, 0x80, 0x5f, 0x9c, 0x18, 0x56, 0xaf, 0x32, 0x60, 0x2a, 0x17, 0xe1, 0xb1, 0xbf, 0x80, 0x30, 0x0f, 0x35, 0x8a, 0x36, 0x37, 0x93, 0xc3, 0x2c, 0x70, 0x67, 0xd9, 0x52, 0xf1, 0x58, 0x3a, 0x7d, 0x15, 0xf7, 0x55, 0xf3, 0xf1, 0x95, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_4048_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4048_sharedsecret[] = { 0x4f, 0x8d, 0x39, 0xb1, 0x95, 0x1c, 0x00, 0xd6, 0x9a, 0xd0, 0xe7, 0x72, 0xab, 0xbc, 0x0d, 0xc6, 0xff, 0xd7, 0x08, 0xa7, 0xf1, 0x63, 0x00, 0x1c, 0x59, 0xd1, 0x16, 0x21, 0x0b, 0x21, 0x61, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4048 = { .name = "ecdh_brainpoolp256r1_4048", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4048_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4048_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4048_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1656 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4049 for ECDH, tcId is 1657 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4049_peerpubkey[] = { 0x3e, 0xed, 0x78, 0x57, 0x99, 0x99, 0xd9, 0x61, 0x47, 0x0e, 0x34, 0x1d, 0xbf, 0xf5, 0x28, 0x99, 0x05, 0x5f, 0xcd, 0x24, 0x33, 0x13, 0x4a, 0xe5, 0x12, 0x08, 0x31, 0x9c, 0xb0, 0x96, 0x96, 0xa0, 0x4e, 0x89, 0xe1, 0x86, 0xa6, 0xa8, 0xd6, 0xcc, 0x4d, 0xc7, 0x8b, 0x4d, 0x5e, 0xef, 0x30, 0x06, 0x9c, 0xe0, 0xe4, 0xa8, 0xc3, 0xfe, 0x44, 0x06, 0x00, 0xf5, 0x46, 0xb4, 0x5d, 0x16, 0x4a, 0x48, }; static const unsigned char ecdh_brainpoolp256r1_4049_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4049_sharedsecret[] = { 0x10, 0x63, 0x9c, 0x11, 0x56, 0xcb, 0x1e, 0x99, 0xb8, 0x0e, 0x76, 0xc0, 0x17, 0x5f, 0x0b, 0xd8, 0x2a, 0x97, 0x4c, 0x46, 0xdf, 0x09, 0xcb, 0xf1, 0x74, 0x3b, 0x33, 0x80, 0x90, 0xeb, 0x1d, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4049 = { .name = "ecdh_brainpoolp256r1_4049", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4049_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4049_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4049_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1657 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4050 for ECDH, tcId is 1658 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4050_peerpubkey[] = { 0x6f, 0xd7, 0xae, 0xb6, 0xf3, 0x31, 0x39, 0x06, 0x06, 0x9b, 0xd1, 0x0f, 0x50, 0x28, 0x98, 0x00, 0x4e, 0x30, 0xd3, 0xd5, 0xb8, 0xe2, 0x31, 0x62, 0x1b, 0x99, 0x34, 0x3a, 0x92, 0x21, 0x74, 0x95, 0x3d, 0x55, 0x8b, 0x8b, 0x2d, 0x96, 0xa5, 0xb3, 0xbc, 0x87, 0x53, 0xe6, 0x0c, 0x4e, 0x60, 0x53, 0xbc, 0x6b, 0xd8, 0x8b, 0xc5, 0x9f, 0xf5, 0xf8, 0x0b, 0x68, 0xad, 0xfb, 0xb8, 0x39, 0x59, 0x6c, }; static const unsigned char ecdh_brainpoolp256r1_4050_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4050_sharedsecret[] = { 0xa2, 0xd9, 0x3a, 0x9e, 0x9c, 0x13, 0x99, 0xce, 0x05, 0x95, 0xd9, 0xa9, 0x31, 0xd3, 0xe5, 0xf1, 0xed, 0x22, 0x74, 0xda, 0x37, 0xce, 0x31, 0xe7, 0x95, 0xd2, 0x6b, 0x7b, 0x9d, 0xf9, 0xa9, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4050 = { .name = "ecdh_brainpoolp256r1_4050", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4050_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4050_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4050_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1658 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4051 for ECDH, tcId is 1659 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4051_peerpubkey[] = { 0x9f, 0xa9, 0x32, 0xa5, 0xf7, 0x25, 0x6c, 0x14, 0x1a, 0x95, 0x6a, 0x24, 0x17, 0x3e, 0x7b, 0x9c, 0x94, 0xc5, 0xfb, 0x04, 0x05, 0x83, 0x35, 0xfd, 0xe2, 0x20, 0xda, 0x96, 0xf9, 0x52, 0x9f, 0x11, 0x53, 0xce, 0x69, 0x7c, 0x63, 0x83, 0xdf, 0xc8, 0x50, 0x2b, 0x26, 0x19, 0x11, 0x28, 0x9a, 0xc6, 0xb4, 0xff, 0x31, 0x68, 0x8e, 0x4f, 0xcc, 0x61, 0x89, 0x44, 0xbf, 0x62, 0x98, 0x63, 0x4d, 0x6c, }; static const unsigned char ecdh_brainpoolp256r1_4051_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4051_sharedsecret[] = { 0xa2, 0x1f, 0x5b, 0x30, 0xb5, 0x03, 0xd8, 0x4f, 0x6b, 0xe4, 0x90, 0xc6, 0xfb, 0x6f, 0xa9, 0x72, 0x1c, 0x0a, 0xde, 0x10, 0xfa, 0xbb, 0x5c, 0x65, 0x78, 0x45, 0xea, 0x1c, 0x94, 0x08, 0x3b, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4051 = { .name = "ecdh_brainpoolp256r1_4051", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4051_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4051_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4051_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1659 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4052 for ECDH, tcId is 1660 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4052_peerpubkey[] = { 0x1f, 0x0a, 0xff, 0xe5, 0xdd, 0x2f, 0xfc, 0x55, 0x1a, 0x30, 0xe9, 0x47, 0xc9, 0xa0, 0x96, 0xad, 0x29, 0x15, 0xb6, 0xc4, 0x08, 0x9b, 0x2e, 0xc3, 0x9a, 0xe9, 0x05, 0xb1, 0x55, 0x87, 0x85, 0xcc, 0x9c, 0x12, 0x36, 0x03, 0xa5, 0x19, 0x89, 0x1d, 0x50, 0xe1, 0x3f, 0xc2, 0x84, 0xac, 0xaf, 0xec, 0x02, 0xa4, 0x45, 0x99, 0x26, 0xc6, 0x52, 0xc7, 0x94, 0xa0, 0x53, 0x92, 0xe9, 0x5c, 0x7c, 0x69, }; static const unsigned char ecdh_brainpoolp256r1_4052_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4052_sharedsecret[] = { 0x85, 0xf2, 0xc9, 0x10, 0x1a, 0x2c, 0x99, 0x14, 0x7c, 0x0a, 0x9b, 0xd8, 0x07, 0x16, 0x44, 0xe5, 0x4b, 0xe2, 0x09, 0xfb, 0xcc, 0x9c, 0x07, 0x2d, 0x4e, 0x32, 0xd6, 0xd7, 0x66, 0x8b, 0x41, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4052 = { .name = "ecdh_brainpoolp256r1_4052", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4052_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4052_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4052_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1660 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4053 for ECDH, tcId is 1661 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4053_peerpubkey[] = { 0x36, 0xcf, 0xd0, 0x36, 0x56, 0x80, 0x0e, 0xc3, 0x5b, 0xa9, 0x49, 0x24, 0x92, 0xa6, 0x71, 0x54, 0x9d, 0xbd, 0xba, 0x26, 0xd3, 0xde, 0xe4, 0xff, 0xae, 0x6d, 0x20, 0xa9, 0x81, 0x49, 0x96, 0xb6, 0xa8, 0x8f, 0xd5, 0xa0, 0xa4, 0xfd, 0x2d, 0xad, 0x3d, 0xd1, 0x80, 0xe4, 0x31, 0x2f, 0x5c, 0xbe, 0x4e, 0xd8, 0x7d, 0x6d, 0x1c, 0xfb, 0xec, 0x5b, 0x78, 0xc0, 0xb9, 0x58, 0xc7, 0x30, 0x96, 0x36, }; static const unsigned char ecdh_brainpoolp256r1_4053_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4053_sharedsecret[] = { 0x91, 0x60, 0x45, 0xc3, 0x8b, 0xea, 0x62, 0x1a, 0xae, 0xa3, 0x0a, 0x20, 0x60, 0x63, 0x5a, 0x3f, 0xda, 0x59, 0x8a, 0x4a, 0x74, 0xfb, 0x7b, 0xf9, 0x3f, 0x89, 0xd9, 0x15, 0x36, 0xe6, 0x83, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4053 = { .name = "ecdh_brainpoolp256r1_4053", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4053_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4053_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4053_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1661 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4054 for ECDH, tcId is 1662 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4054_peerpubkey[] = { 0x0f, 0xaf, 0x0c, 0x01, 0x9e, 0xb1, 0x61, 0xdd, 0x3d, 0xa1, 0xf6, 0xb3, 0x31, 0x58, 0x9b, 0x7d, 0xf1, 0x8d, 0xfd, 0x71, 0xbe, 0x21, 0x84, 0xd4, 0xc9, 0x6f, 0xa9, 0x65, 0x5c, 0x60, 0xf2, 0x88, 0xa2, 0xb7, 0x4a, 0xc8, 0xe9, 0x94, 0x1d, 0x5f, 0x6a, 0x90, 0xcb, 0x79, 0xea, 0x44, 0xd5, 0x8a, 0x79, 0xbd, 0x3b, 0xa6, 0x24, 0x76, 0x06, 0x5b, 0x44, 0xfd, 0xcf, 0x2b, 0xae, 0x0d, 0x1a, 0xaa, }; static const unsigned char ecdh_brainpoolp256r1_4054_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4054_sharedsecret[] = { 0x35, 0x2f, 0xcd, 0xea, 0xb4, 0xfa, 0xa2, 0x00, 0xb9, 0x24, 0x88, 0x94, 0xa7, 0x97, 0x50, 0xe6, 0x85, 0x99, 0x08, 0x7a, 0x33, 0xc1, 0x85, 0x14, 0xd0, 0x1d, 0x39, 0xa8, 0x07, 0x78, 0x4a, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4054 = { .name = "ecdh_brainpoolp256r1_4054", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4054_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4054_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4054_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1662 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4055 for ECDH, tcId is 1663 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4055_peerpubkey[] = { 0x84, 0x09, 0xb2, 0xb1, 0x69, 0x55, 0xa5, 0xb8, 0xc4, 0xba, 0xe7, 0x49, 0x1b, 0x8e, 0x76, 0x45, 0xd9, 0x95, 0x82, 0xde, 0xa5, 0xab, 0x43, 0xce, 0x80, 0x12, 0x0f, 0xf1, 0x82, 0xb1, 0x79, 0xee, 0x3d, 0x11, 0x98, 0x40, 0xa5, 0xfc, 0xf7, 0xf5, 0xb9, 0x5c, 0x56, 0xdb, 0x44, 0x42, 0x73, 0x58, 0x47, 0xd7, 0xba, 0xfb, 0xed, 0xd6, 0xf6, 0xd1, 0xb4, 0xfd, 0x96, 0x0d, 0x5d, 0xc9, 0xf9, 0xe1, }; static const unsigned char ecdh_brainpoolp256r1_4055_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4055_sharedsecret[] = { 0x33, 0xae, 0xb7, 0xa6, 0xd1, 0x54, 0x23, 0xe5, 0x61, 0xd8, 0x6a, 0x1b, 0x93, 0x61, 0xf4, 0x5f, 0x31, 0x4c, 0x7e, 0xd0, 0x39, 0x75, 0x3d, 0x09, 0x1d, 0xd1, 0x13, 0xd7, 0x6a, 0x14, 0x76, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4055 = { .name = "ecdh_brainpoolp256r1_4055", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4055_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4055_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4055_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1663 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4056 for ECDH, tcId is 1664 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4056_peerpubkey[] = { 0x55, 0x17, 0x1f, 0xc5, 0xac, 0x8c, 0xe0, 0x3c, 0x18, 0xf5, 0x16, 0x74, 0xa7, 0xd7, 0xd9, 0x28, 0x5e, 0x0d, 0x80, 0x42, 0x30, 0x34, 0x42, 0x46, 0x7b, 0xdc, 0x6b, 0x56, 0xe9, 0xd8, 0x3f, 0xee, 0x4b, 0x16, 0x07, 0x22, 0xcc, 0x83, 0xc7, 0x38, 0x65, 0x7a, 0x8e, 0xf4, 0xd1, 0xcf, 0x35, 0xf6, 0x0d, 0x58, 0x9c, 0x30, 0x95, 0x91, 0x20, 0x18, 0x32, 0x08, 0x0d, 0x8d, 0x72, 0xd1, 0xd2, 0x4e, }; static const unsigned char ecdh_brainpoolp256r1_4056_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4056_sharedsecret[] = { 0x30, 0x87, 0x83, 0x91, 0x2b, 0x4c, 0x77, 0x73, 0xbe, 0xcf, 0x7f, 0x88, 0x24, 0x1f, 0x3c, 0xca, 0x66, 0xfb, 0xf5, 0xfe, 0x00, 0x4c, 0x52, 0xfd, 0xfb, 0x99, 0x48, 0x50, 0x43, 0x7f, 0x13, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4056 = { .name = "ecdh_brainpoolp256r1_4056", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4056_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4056_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4056_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1664 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4057 for ECDH, tcId is 1665 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4057_peerpubkey[] = { 0x54, 0xdf, 0xf7, 0x5d, 0xdc, 0x13, 0xd6, 0x9f, 0x0d, 0xc8, 0x4d, 0x57, 0x49, 0x9e, 0xc4, 0x0c, 0xeb, 0x53, 0xcd, 0xe6, 0xab, 0xda, 0xde, 0x0b, 0xb4, 0xe9, 0x45, 0x8a, 0xa3, 0xd4, 0xd9, 0xa8, 0x1f, 0x20, 0x44, 0xc9, 0x26, 0xd7, 0x62, 0xca, 0x38, 0x4e, 0x9b, 0xcc, 0x53, 0xe5, 0xbf, 0xbd, 0xcd, 0x5b, 0x6e, 0x61, 0xea, 0x9c, 0x08, 0xbe, 0x40, 0x65, 0x17, 0x9a, 0x84, 0x35, 0x6c, 0x4c, }; static const unsigned char ecdh_brainpoolp256r1_4057_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4057_sharedsecret[] = { 0x41, 0xe3, 0x61, 0x10, 0x5f, 0x18, 0x30, 0xf7, 0x6b, 0xad, 0x53, 0x73, 0x1c, 0xf7, 0xe1, 0x51, 0xc3, 0x19, 0xb0, 0x9e, 0x78, 0xe5, 0x55, 0x3a, 0xd8, 0x71, 0x88, 0x84, 0x0d, 0xb0, 0xf3, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4057 = { .name = "ecdh_brainpoolp256r1_4057", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4057_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4057_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4057_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1665 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4058 for ECDH, tcId is 1666 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4058_peerpubkey[] = { 0x77, 0x4e, 0xa2, 0x6d, 0x37, 0x2a, 0x38, 0xd8, 0x20, 0x0d, 0x27, 0x0d, 0xc1, 0x1a, 0xf6, 0x94, 0x56, 0x5b, 0x87, 0x1a, 0x90, 0x9e, 0xcc, 0xfd, 0x58, 0xf5, 0x7d, 0x9e, 0x23, 0x55, 0x77, 0x14, 0x1d, 0x1f, 0x0f, 0xc7, 0x47, 0x4e, 0x76, 0xcc, 0xf4, 0x77, 0x98, 0xc2, 0x15, 0x8d, 0x3c, 0x64, 0xd9, 0x3a, 0xb5, 0x2c, 0xfd, 0x1c, 0x3b, 0xc6, 0x58, 0x9f, 0x79, 0xcc, 0xe6, 0xfe, 0xf7, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_4058_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4058_sharedsecret[] = { 0x79, 0x15, 0x9c, 0xf3, 0x2d, 0x78, 0xd0, 0xea, 0x4d, 0x51, 0xb4, 0x63, 0xa2, 0x45, 0xef, 0x21, 0x0a, 0x5e, 0xc0, 0x46, 0xf0, 0x07, 0xcc, 0x1e, 0x63, 0xf1, 0x5d, 0xc8, 0x96, 0x2f, 0xcd, 0xa2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4058 = { .name = "ecdh_brainpoolp256r1_4058", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4058_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4058_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4058_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1666 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4059 for ECDH, tcId is 1667 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4059_peerpubkey[] = { 0x5b, 0xf2, 0x45, 0x5f, 0x8b, 0xbb, 0xf6, 0x50, 0xbb, 0xcc, 0x8a, 0x9c, 0xaf, 0xcd, 0xd5, 0x36, 0x04, 0x46, 0x6f, 0x85, 0x5a, 0x6b, 0xd6, 0xc8, 0x5c, 0x7b, 0xcd, 0xfd, 0x8b, 0x62, 0x50, 0xe3, 0x55, 0x06, 0x95, 0xf4, 0xa4, 0x2f, 0xfe, 0xac, 0xe4, 0x07, 0x40, 0x09, 0xa3, 0xc1, 0x6f, 0x93, 0xed, 0x52, 0x0c, 0x56, 0x6c, 0x55, 0x0c, 0xce, 0xb1, 0x8a, 0x54, 0x54, 0x34, 0xf9, 0xc1, 0x32, }; static const unsigned char ecdh_brainpoolp256r1_4059_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4059_sharedsecret[] = { 0x08, 0x72, 0x8d, 0xa7, 0x78, 0xce, 0x21, 0xb2, 0x16, 0x15, 0xe8, 0x59, 0x51, 0xfd, 0x2c, 0x8f, 0x4c, 0x9f, 0x6f, 0xc6, 0x8c, 0xa9, 0xa4, 0x72, 0xfa, 0xad, 0xd5, 0xae, 0x1a, 0xd5, 0xbc, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4059 = { .name = "ecdh_brainpoolp256r1_4059", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4059_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4059_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4059_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1667 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4060 for ECDH, tcId is 1668 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4060_peerpubkey[] = { 0x1f, 0xc7, 0xca, 0x73, 0xd2, 0x08, 0xfc, 0xd7, 0xdf, 0x02, 0x91, 0xd3, 0x2b, 0x31, 0x99, 0x48, 0x7e, 0x93, 0x2e, 0xb2, 0x0d, 0xa4, 0xc4, 0x52, 0xeb, 0xb0, 0x26, 0x5a, 0xe1, 0x10, 0x80, 0x0c, 0xa3, 0xd2, 0x40, 0x16, 0xd1, 0x93, 0x73, 0x81, 0x86, 0x9e, 0x81, 0x31, 0x26, 0xd5, 0xf5, 0x3f, 0x40, 0xee, 0x6f, 0xf7, 0x87, 0x75, 0xfd, 0x80, 0xa2, 0xf6, 0x5b, 0x4e, 0x89, 0xe0, 0x3b, 0x4d, }; static const unsigned char ecdh_brainpoolp256r1_4060_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4060_sharedsecret[] = { 0xa8, 0x95, 0x22, 0x35, 0xfa, 0x4b, 0xe1, 0x9e, 0xb4, 0xde, 0x0e, 0xd1, 0x04, 0x9d, 0x3d, 0x1a, 0x20, 0x0f, 0xd7, 0x15, 0x1a, 0xf4, 0xfd, 0x5e, 0x81, 0xfd, 0xcb, 0xf5, 0xcc, 0x92, 0x5e, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4060 = { .name = "ecdh_brainpoolp256r1_4060", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4060_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4060_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4060_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1668 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4061 for ECDH, tcId is 1669 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4061_peerpubkey[] = { 0x4b, 0x8a, 0xae, 0xc0, 0x9e, 0xfa, 0xa2, 0x45, 0x8b, 0xe5, 0xe2, 0xae, 0x87, 0x32, 0x66, 0xb2, 0x21, 0xe4, 0x3b, 0xe4, 0x12, 0x6e, 0x7c, 0x66, 0xa0, 0x53, 0xbe, 0x29, 0xe8, 0x51, 0x61, 0xf1, 0x22, 0x4b, 0xe2, 0x15, 0xc2, 0x79, 0x9f, 0x8a, 0x0c, 0x3e, 0x41, 0x62, 0x2e, 0xb1, 0x1d, 0x0a, 0x8c, 0x98, 0xd9, 0xa7, 0x3a, 0x26, 0xb7, 0x1b, 0xea, 0x59, 0x80, 0x1d, 0xba, 0xa5, 0xe6, 0x7d, }; static const unsigned char ecdh_brainpoolp256r1_4061_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4061_sharedsecret[] = { 0xa5, 0x35, 0x26, 0x93, 0x71, 0xfc, 0x45, 0xf7, 0xb7, 0xdf, 0x87, 0x78, 0xf0, 0xf9, 0xe2, 0x0e, 0xbe, 0xbb, 0xde, 0x11, 0x7e, 0xc9, 0xe7, 0x00, 0xf3, 0xf2, 0x72, 0x02, 0xb1, 0x45, 0xdc, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4061 = { .name = "ecdh_brainpoolp256r1_4061", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4061_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4061_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4061_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1669 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4062 for ECDH, tcId is 1670 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4062_peerpubkey[] = { 0x2e, 0x2f, 0x7f, 0x0e, 0x9e, 0x63, 0x46, 0x4a, 0xff, 0xd6, 0xbe, 0x94, 0x05, 0x1b, 0x61, 0x28, 0xc5, 0x81, 0x95, 0xf5, 0x8c, 0x14, 0xe4, 0xde, 0x72, 0xb0, 0x1a, 0xa7, 0x6d, 0xc2, 0x0b, 0x3c, 0x80, 0x2a, 0x95, 0x73, 0x6a, 0x31, 0xf6, 0xad, 0xf4, 0xc8, 0xd3, 0xca, 0x40, 0x29, 0x03, 0xf7, 0x39, 0x8f, 0x5b, 0x61, 0xd5, 0x62, 0x20, 0x50, 0xe0, 0x02, 0xfe, 0x27, 0x8e, 0x69, 0x30, 0x3f, }; static const unsigned char ecdh_brainpoolp256r1_4062_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4062_sharedsecret[] = { 0x8b, 0xdd, 0x5e, 0xb1, 0xbb, 0xdb, 0x38, 0xeb, 0xf2, 0x06, 0x9b, 0x81, 0x5d, 0xb8, 0xcf, 0x43, 0xe2, 0x62, 0x53, 0x13, 0x90, 0xb6, 0xc3, 0x9c, 0x5d, 0x31, 0x82, 0x45, 0x22, 0x74, 0xf3, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4062 = { .name = "ecdh_brainpoolp256r1_4062", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4062_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4062_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4062_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1670 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4063 for ECDH, tcId is 1671 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4063_peerpubkey[] = { 0x4e, 0x2c, 0xea, 0x29, 0x82, 0x52, 0x12, 0xa3, 0x5b, 0xb6, 0xbb, 0x59, 0x20, 0x54, 0x93, 0x34, 0x1d, 0x1d, 0x5b, 0x00, 0xab, 0x71, 0x05, 0x48, 0x7d, 0xdd, 0xe2, 0xde, 0xd2, 0x5a, 0xc7, 0xb2, 0x51, 0xa8, 0x6b, 0x9c, 0x3e, 0x49, 0x4b, 0xb3, 0x61, 0x0c, 0x1f, 0xce, 0x10, 0x6a, 0x08, 0x9b, 0x63, 0x87, 0x79, 0xe6, 0xba, 0x0c, 0xd8, 0x02, 0x06, 0x3e, 0xef, 0xef, 0xbf, 0x84, 0xd6, 0xd5, }; static const unsigned char ecdh_brainpoolp256r1_4063_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4063_sharedsecret[] = { 0x2e, 0xee, 0xb2, 0x26, 0x23, 0xe0, 0xd2, 0x49, 0xc9, 0xcb, 0x16, 0x4b, 0xa9, 0xbc, 0xd8, 0xd9, 0xe9, 0xfe, 0xe0, 0x52, 0x9f, 0x56, 0x21, 0xaa, 0x2e, 0xf5, 0x39, 0x92, 0xbf, 0xb3, 0x35, 0xd7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4063 = { .name = "ecdh_brainpoolp256r1_4063", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4063_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4063_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4063_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1671 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4064 for ECDH, tcId is 1672 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4064_peerpubkey[] = { 0x79, 0x71, 0xbc, 0xfc, 0xe2, 0xbe, 0x4f, 0x84, 0xb9, 0xee, 0x92, 0x1e, 0x2d, 0xf2, 0x25, 0x8d, 0x2e, 0x47, 0x6e, 0x29, 0x21, 0x4a, 0xec, 0x39, 0x3c, 0x9f, 0x45, 0x9d, 0x48, 0x77, 0x42, 0x7a, 0xa6, 0x64, 0x4f, 0x47, 0xd6, 0xb3, 0xcf, 0x7f, 0x78, 0xe5, 0xf5, 0xa9, 0x50, 0x7f, 0xb7, 0x5b, 0xba, 0xc4, 0x46, 0x93, 0xa6, 0x22, 0xec, 0x8c, 0x8f, 0xf8, 0x75, 0x88, 0x38, 0x2d, 0x52, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4064_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4064_sharedsecret[] = { 0x34, 0xe5, 0x9c, 0x50, 0x37, 0x34, 0x7a, 0x2c, 0x25, 0x0d, 0xaa, 0x40, 0xaf, 0x4e, 0xd0, 0xfa, 0x6b, 0x48, 0x9b, 0x58, 0x73, 0x27, 0x22, 0xf4, 0x9f, 0x3f, 0x2d, 0x33, 0xb6, 0x80, 0xe1, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4064 = { .name = "ecdh_brainpoolp256r1_4064", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4064_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4064_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4064_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1672 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4065 for ECDH, tcId is 1673 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4065_peerpubkey[] = { 0x24, 0xd9, 0x70, 0xcf, 0xeb, 0xe3, 0xb4, 0xe3, 0xf9, 0x61, 0x80, 0x56, 0xe3, 0x4c, 0x90, 0x33, 0x8c, 0x73, 0x0a, 0xf4, 0xf6, 0xb9, 0xee, 0xb2, 0xd1, 0x06, 0xe8, 0x84, 0x51, 0x57, 0x57, 0xa8, 0x5d, 0x27, 0xea, 0xe6, 0x21, 0x94, 0x45, 0xe1, 0x21, 0xcd, 0xc0, 0x6d, 0x36, 0x9a, 0x37, 0x3c, 0x03, 0x49, 0x09, 0x69, 0x1f, 0x7c, 0x80, 0xcc, 0xee, 0x93, 0x3b, 0x1b, 0xe1, 0x09, 0xd7, 0x3d, }; static const unsigned char ecdh_brainpoolp256r1_4065_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4065_sharedsecret[] = { 0x29, 0x00, 0xf9, 0xcc, 0x5e, 0xc7, 0x73, 0x15, 0x27, 0x16, 0xe6, 0x4b, 0xcd, 0xc0, 0x4a, 0x2e, 0xe5, 0x3c, 0xa3, 0xb1, 0xdc, 0x13, 0x8c, 0x4b, 0x5b, 0x71, 0x43, 0x6e, 0x63, 0x44, 0xef, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4065 = { .name = "ecdh_brainpoolp256r1_4065", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4065_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4065_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4065_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1673 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4066 for ECDH, tcId is 1674 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4066_peerpubkey[] = { 0x3b, 0x73, 0xef, 0x1a, 0x5f, 0xd0, 0x7e, 0x25, 0x6a, 0xe5, 0xcc, 0x40, 0x39, 0x2e, 0x7c, 0xbe, 0x20, 0xb3, 0x6d, 0xe0, 0x81, 0xe8, 0x28, 0xeb, 0x77, 0xc4, 0xb1, 0xcc, 0xd6, 0xd9, 0x0f, 0xf0, 0x43, 0x6c, 0x1c, 0x2f, 0x75, 0x72, 0x76, 0xc3, 0x82, 0x64, 0xed, 0xe0, 0x08, 0x53, 0xce, 0x87, 0x9b, 0x27, 0x78, 0xf1, 0x4e, 0x7b, 0x84, 0xd7, 0x75, 0x53, 0x58, 0xf5, 0x68, 0x1d, 0xb9, 0x60, }; static const unsigned char ecdh_brainpoolp256r1_4066_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4066_sharedsecret[] = { 0x30, 0x47, 0xd0, 0x55, 0xf5, 0xcf, 0x6a, 0xe0, 0x69, 0x05, 0xb2, 0x65, 0x5c, 0x4d, 0x8a, 0xd3, 0x30, 0x1a, 0x3f, 0x34, 0xa6, 0xf1, 0xa5, 0xbd, 0x35, 0x6c, 0x26, 0x6f, 0x95, 0xd0, 0x67, 0x08, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4066 = { .name = "ecdh_brainpoolp256r1_4066", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4066_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4066_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4066_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1674 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4067 for ECDH, tcId is 1675 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4067_peerpubkey[] = { 0x48, 0xde, 0x36, 0xef, 0x3f, 0x54, 0x8a, 0x2c, 0xb7, 0xf8, 0x63, 0xd4, 0x64, 0x04, 0x0e, 0x14, 0xc2, 0x86, 0xf7, 0xe4, 0x0d, 0x10, 0x21, 0x90, 0xd5, 0x0b, 0x78, 0x52, 0x4b, 0x33, 0x29, 0xcf, 0x4a, 0x60, 0xbb, 0x85, 0xb3, 0x7b, 0x1f, 0x11, 0x30, 0x8b, 0xdf, 0x1b, 0x91, 0x90, 0xd2, 0xdb, 0xc5, 0xe8, 0x07, 0x42, 0x33, 0x30, 0x75, 0xd7, 0x1c, 0xad, 0x09, 0xaa, 0xea, 0x31, 0xd5, 0xea, }; static const unsigned char ecdh_brainpoolp256r1_4067_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4067_sharedsecret[] = { 0xa8, 0x14, 0x23, 0x0d, 0x30, 0x5c, 0x82, 0x15, 0xed, 0x52, 0xda, 0xf5, 0x58, 0xce, 0x3b, 0x58, 0x96, 0xc8, 0x42, 0xf7, 0x7e, 0xf3, 0x61, 0x73, 0x44, 0x48, 0xb6, 0x7c, 0x4c, 0x94, 0x7f, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4067 = { .name = "ecdh_brainpoolp256r1_4067", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4067_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4067_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4067_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1675 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4068 for ECDH, tcId is 1676 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4068_peerpubkey[] = { 0x81, 0xea, 0x50, 0x9d, 0x1f, 0xa6, 0xf4, 0x9a, 0xa4, 0xa8, 0x4a, 0xf1, 0x65, 0x2c, 0xbd, 0xb9, 0x0b, 0xe8, 0x21, 0x40, 0x1f, 0x14, 0x4a, 0x69, 0x6a, 0x69, 0x9e, 0x7d, 0x22, 0xfa, 0xab, 0xc4, 0x8e, 0x30, 0x26, 0x53, 0x5a, 0x28, 0xc0, 0x7c, 0x30, 0x27, 0x01, 0x34, 0x01, 0x31, 0xd6, 0xcb, 0xd6, 0x3b, 0x6e, 0x55, 0xe8, 0x91, 0xa1, 0xd9, 0xdf, 0x03, 0x5b, 0xed, 0x36, 0x52, 0xe0, 0xb9, }; static const unsigned char ecdh_brainpoolp256r1_4068_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4068_sharedsecret[] = { 0x1d, 0xb4, 0x76, 0x35, 0x7f, 0x58, 0x28, 0x66, 0x0e, 0xae, 0x97, 0xce, 0x7b, 0x79, 0xf1, 0x99, 0x04, 0x10, 0x94, 0xa6, 0xe9, 0x79, 0x31, 0x60, 0xb2, 0xb7, 0x84, 0xe6, 0x9d, 0x69, 0xca, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4068 = { .name = "ecdh_brainpoolp256r1_4068", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4068_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4068_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4068_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1676 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4069 for ECDH, tcId is 1677 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4069_peerpubkey[] = { 0xa7, 0x8d, 0xcd, 0xbd, 0xda, 0x58, 0xc0, 0x91, 0xab, 0x76, 0xe0, 0x33, 0x74, 0xe9, 0xcb, 0xea, 0x42, 0xfa, 0xc7, 0x53, 0xe2, 0x7c, 0x02, 0xf1, 0x0f, 0x33, 0x20, 0xc6, 0x86, 0x16, 0x3e, 0x7f, 0xa8, 0xb0, 0x30, 0xa8, 0xd2, 0x4b, 0x1f, 0x13, 0x41, 0xec, 0x17, 0xdc, 0xd2, 0x3a, 0xbf, 0x31, 0xf8, 0x65, 0xdb, 0x7c, 0x8a, 0x8e, 0x14, 0x0d, 0x9c, 0x7a, 0xea, 0x69, 0x75, 0xa3, 0x35, 0x55, }; static const unsigned char ecdh_brainpoolp256r1_4069_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4069_sharedsecret[] = { 0x00, 0xfa, 0x0c, 0xb8, 0x33, 0x10, 0x4c, 0x9d, 0xba, 0x60, 0x30, 0x6e, 0x71, 0x6d, 0xe7, 0x02, 0xca, 0x2e, 0x33, 0x30, 0x0b, 0xbf, 0x20, 0x4c, 0x3a, 0xfe, 0xf8, 0xde, 0xbc, 0x91, 0x1d, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4069 = { .name = "ecdh_brainpoolp256r1_4069", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4069_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4069_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4069_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1677 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4070 for ECDH, tcId is 1678 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4070_peerpubkey[] = { 0x31, 0x9c, 0x11, 0x3f, 0x9d, 0x04, 0x17, 0x9b, 0xde, 0xbc, 0x2b, 0x96, 0xc7, 0x7f, 0x8b, 0xd3, 0x3b, 0xee, 0xfd, 0x7f, 0x62, 0x0c, 0xe0, 0xf7, 0x15, 0x29, 0x3c, 0xc5, 0xcd, 0x21, 0x0d, 0xc8, 0x29, 0x07, 0x82, 0x8a, 0x1d, 0xaa, 0x58, 0x4b, 0x2f, 0xad, 0x0a, 0x7a, 0xf7, 0xd9, 0x5d, 0x53, 0x62, 0x9b, 0xae, 0x4e, 0x14, 0x01, 0x52, 0x2f, 0xc2, 0x6d, 0xd6, 0x1b, 0x84, 0xe5, 0x67, 0x97, }; static const unsigned char ecdh_brainpoolp256r1_4070_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4070_sharedsecret[] = { 0x1c, 0x0c, 0xe9, 0xdc, 0x92, 0x80, 0x52, 0x06, 0x98, 0x8f, 0x2e, 0x2b, 0x3c, 0x4b, 0xc4, 0x58, 0xe7, 0x72, 0xb4, 0xb6, 0xb1, 0xe8, 0xbe, 0x09, 0xb7, 0x9b, 0x67, 0x35, 0x76, 0x02, 0x92, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4070 = { .name = "ecdh_brainpoolp256r1_4070", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4070_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4070_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4070_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1678 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4071 for ECDH, tcId is 1679 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4071_peerpubkey[] = { 0x7d, 0x48, 0x6d, 0xe8, 0x15, 0xe8, 0x88, 0x75, 0x16, 0xe8, 0xf5, 0x3a, 0x65, 0x62, 0x1b, 0x79, 0x53, 0xc9, 0x3f, 0x34, 0x1e, 0x9c, 0xf0, 0xaf, 0x3b, 0x42, 0xcf, 0x43, 0x29, 0x8c, 0x8e, 0x57, 0x12, 0x5d, 0x95, 0x78, 0xa3, 0x57, 0x6b, 0xeb, 0xb7, 0xc4, 0xfb, 0x90, 0x8e, 0x36, 0x50, 0xaf, 0x16, 0x5d, 0x19, 0x45, 0xd9, 0x6b, 0x42, 0x58, 0xbb, 0xb3, 0x9e, 0x35, 0x2a, 0xef, 0x4f, 0xc5, }; static const unsigned char ecdh_brainpoolp256r1_4071_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4071_sharedsecret[] = { 0x59, 0xf7, 0x4b, 0xdf, 0x57, 0xa5, 0x79, 0x33, 0xe8, 0x67, 0x58, 0x89, 0x04, 0xc4, 0x66, 0x3c, 0x87, 0x74, 0xb1, 0xd3, 0x81, 0xf6, 0xa8, 0xb5, 0x1c, 0xbe, 0x2f, 0x5c, 0x50, 0xfa, 0x9b, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4071 = { .name = "ecdh_brainpoolp256r1_4071", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4071_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4071_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4071_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1679 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4072 for ECDH, tcId is 1680 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4072_peerpubkey[] = { 0xa1, 0xb8, 0x27, 0xd1, 0xd6, 0xf6, 0x20, 0xb2, 0xf9, 0x97, 0x06, 0x4c, 0xb3, 0x0e, 0x52, 0xe6, 0xa5, 0xfe, 0xa6, 0x33, 0xda, 0x87, 0x7c, 0x2e, 0x72, 0x66, 0xec, 0xe7, 0x60, 0x85, 0x6a, 0x6f, 0x03, 0x38, 0xa8, 0x49, 0x6c, 0xce, 0xcc, 0xf0, 0xc6, 0xf1, 0xfb, 0x78, 0x17, 0x62, 0x99, 0xfe, 0xc0, 0x63, 0xd4, 0x19, 0x5b, 0x75, 0x88, 0xd0, 0x7b, 0x9c, 0x04, 0x47, 0xeb, 0x23, 0xf8, 0x32, }; static const unsigned char ecdh_brainpoolp256r1_4072_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4072_sharedsecret[] = { 0x91, 0x11, 0xf7, 0x11, 0xf5, 0xb9, 0xf2, 0x6e, 0x60, 0xf1, 0x4c, 0xf6, 0x13, 0x27, 0x35, 0x0c, 0x9f, 0x1b, 0x89, 0xce, 0x64, 0xeb, 0x59, 0x09, 0xc4, 0x2a, 0x8f, 0x9a, 0x56, 0x29, 0x6b, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4072 = { .name = "ecdh_brainpoolp256r1_4072", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4072_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4072_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4072_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1680 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4073 for ECDH, tcId is 1681 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4073_peerpubkey[] = { 0x24, 0x04, 0x45, 0xac, 0x1b, 0xc5, 0x34, 0xf4, 0xe2, 0x96, 0xae, 0xaa, 0xed, 0x44, 0xd0, 0x62, 0x44, 0x52, 0xc4, 0x27, 0x13, 0x1c, 0xd2, 0xc4, 0x51, 0x2e, 0x56, 0x13, 0x04, 0x6f, 0x98, 0xc2, 0x1c, 0x42, 0x6b, 0x8b, 0x43, 0xc3, 0xf6, 0xef, 0xae, 0xa6, 0x72, 0x61, 0x44, 0x95, 0x3a, 0x95, 0x33, 0x68, 0x5e, 0x92, 0x25, 0x78, 0xc3, 0xab, 0x1d, 0x6b, 0x58, 0xe6, 0xf0, 0xdc, 0x45, 0x66, }; static const unsigned char ecdh_brainpoolp256r1_4073_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4073_sharedsecret[] = { 0x25, 0x00, 0xa2, 0x8d, 0x62, 0x2b, 0x6a, 0x74, 0x37, 0x54, 0x33, 0x3f, 0x15, 0x98, 0x2b, 0xb1, 0xe2, 0x92, 0x60, 0x98, 0x4c, 0x4d, 0x5f, 0xb9, 0xd7, 0xf6, 0x83, 0xa7, 0xc1, 0xe2, 0xd4, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4073 = { .name = "ecdh_brainpoolp256r1_4073", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4073_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4073_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4073_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1681 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4074 for ECDH, tcId is 1682 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4074_peerpubkey[] = { 0x2f, 0xe3, 0x68, 0xd6, 0xbb, 0xe7, 0x75, 0x46, 0x66, 0xd2, 0xf0, 0xb8, 0x14, 0x42, 0xc3, 0xe6, 0x8c, 0x66, 0x5b, 0x0b, 0x54, 0x63, 0x4c, 0x85, 0x6a, 0x30, 0x50, 0x6a, 0xd3, 0x5f, 0x5b, 0x66, 0x22, 0xe8, 0x3c, 0x33, 0xc1, 0x99, 0x73, 0x13, 0xbf, 0x75, 0x91, 0x44, 0xcc, 0x97, 0x67, 0xd1, 0x4e, 0x04, 0xc8, 0x4a, 0xa4, 0xb0, 0x56, 0x4b, 0xa8, 0x9a, 0xb1, 0xfd, 0x6b, 0xef, 0xf2, 0xa0, }; static const unsigned char ecdh_brainpoolp256r1_4074_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4074_sharedsecret[] = { 0x45, 0x22, 0xeb, 0xbd, 0x65, 0x37, 0xd7, 0x3f, 0x06, 0x66, 0xdc, 0xf4, 0x4e, 0x37, 0x29, 0x7b, 0xf7, 0xc9, 0xdd, 0x04, 0x7b, 0x39, 0x49, 0xc5, 0x8c, 0xcf, 0xb5, 0x85, 0x50, 0x6c, 0xc6, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4074 = { .name = "ecdh_brainpoolp256r1_4074", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4074_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4074_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4074_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1682 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4075 for ECDH, tcId is 1683 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4075_peerpubkey[] = { 0x0b, 0x1e, 0x42, 0x69, 0xbb, 0xee, 0x96, 0xb2, 0x02, 0xe3, 0x3d, 0x2d, 0xde, 0xfe, 0xd6, 0x96, 0x37, 0x18, 0xa3, 0x5a, 0x4f, 0xb3, 0x57, 0xa9, 0x5b, 0x80, 0xc6, 0x09, 0xbc, 0xd4, 0xd8, 0xb3, 0x1f, 0x5a, 0xe0, 0xdc, 0x28, 0xcb, 0x2f, 0xf8, 0xfa, 0xb8, 0x29, 0x4b, 0xca, 0x63, 0xc8, 0x11, 0x53, 0xda, 0x43, 0xa1, 0x0d, 0x3d, 0x16, 0xe4, 0xb5, 0x0d, 0x08, 0xd0, 0xd9, 0xef, 0x2f, 0xfd, }; static const unsigned char ecdh_brainpoolp256r1_4075_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4075_sharedsecret[] = { 0x2e, 0x13, 0x68, 0x16, 0x2b, 0x34, 0x51, 0x58, 0xa3, 0x75, 0x44, 0x5d, 0x40, 0xa1, 0x9c, 0x96, 0xea, 0xec, 0x3b, 0xb9, 0x2d, 0xa8, 0x9f, 0xaf, 0xac, 0x7a, 0x67, 0x84, 0x2a, 0x1a, 0xf8, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4075 = { .name = "ecdh_brainpoolp256r1_4075", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4075_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4075_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4075_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1683 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4076 for ECDH, tcId is 1684 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4076_peerpubkey[] = { 0x13, 0x7b, 0xba, 0x4b, 0x39, 0x55, 0x7a, 0xe1, 0xa6, 0xe8, 0x77, 0x74, 0xe6, 0x3f, 0x97, 0xdc, 0x59, 0xa0, 0x88, 0x3c, 0xf7, 0xef, 0xbe, 0x77, 0x94, 0x26, 0x44, 0x30, 0x91, 0xe5, 0x19, 0xa4, 0x0e, 0x76, 0x5f, 0xef, 0xca, 0x53, 0xde, 0xb2, 0x66, 0x6f, 0xc1, 0x2c, 0x5a, 0x01, 0x11, 0x13, 0x27, 0xd5, 0xe9, 0xbb, 0xf6, 0xe0, 0xa7, 0x7b, 0xb0, 0xb6, 0x0f, 0x23, 0xef, 0xbd, 0x01, 0x3c, }; static const unsigned char ecdh_brainpoolp256r1_4076_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4076_sharedsecret[] = { 0x26, 0xbe, 0x96, 0x91, 0x80, 0x5c, 0x8b, 0xe7, 0x56, 0x3f, 0xd6, 0x88, 0x63, 0x2a, 0xd4, 0x20, 0x24, 0x5b, 0x03, 0xa3, 0xff, 0x7b, 0xf7, 0x2a, 0x9a, 0xdf, 0x11, 0x67, 0x8e, 0x39, 0xac, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4076 = { .name = "ecdh_brainpoolp256r1_4076", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4076_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4076_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4076_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1684 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4077 for ECDH, tcId is 1685 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4077_peerpubkey[] = { 0x2b, 0xfd, 0xd6, 0xb9, 0xf4, 0x6d, 0xb8, 0xf0, 0xd9, 0x67, 0x6c, 0x0e, 0x8d, 0x98, 0x0a, 0x6b, 0x2d, 0xb0, 0xbe, 0x4f, 0x4c, 0xa8, 0x5e, 0x5e, 0x86, 0x07, 0xcc, 0xe2, 0x9a, 0x7a, 0xec, 0x1f, 0x17, 0x9f, 0x02, 0x56, 0x16, 0x7c, 0x7c, 0x48, 0xb6, 0x8a, 0xcf, 0xd6, 0xf1, 0xfa, 0x4a, 0x4e, 0x15, 0x6d, 0x67, 0xa4, 0x7d, 0x2d, 0x27, 0xfe, 0xc7, 0x35, 0x83, 0x2d, 0x5e, 0x87, 0xa4, 0x73, }; static const unsigned char ecdh_brainpoolp256r1_4077_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4077_sharedsecret[] = { 0x27, 0xcc, 0x4d, 0xb1, 0x72, 0xcf, 0xd0, 0x1e, 0xcb, 0x60, 0x75, 0xdd, 0x03, 0x6e, 0x0c, 0x87, 0x82, 0xac, 0xf6, 0x38, 0x02, 0x7a, 0x7a, 0xe5, 0xf2, 0xa5, 0xbc, 0x50, 0xd9, 0x77, 0x6e, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4077 = { .name = "ecdh_brainpoolp256r1_4077", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4077_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4077_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4077_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1685 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4078 for ECDH, tcId is 1686 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4078_peerpubkey[] = { 0x59, 0x4d, 0xb0, 0x77, 0x41, 0x35, 0xc4, 0xcf, 0x01, 0x6e, 0x30, 0xe9, 0x92, 0x79, 0x0e, 0x6d, 0x50, 0x8e, 0x47, 0xae, 0x28, 0x7f, 0xd4, 0x3d, 0x4b, 0xa6, 0x0b, 0x52, 0xa5, 0xbb, 0x08, 0x62, 0x99, 0x7d, 0xa7, 0xcf, 0x82, 0x63, 0x7d, 0xe6, 0x0a, 0xd6, 0xc9, 0x5d, 0x94, 0x83, 0x41, 0x93, 0x80, 0x08, 0xdf, 0x19, 0xd0, 0xa1, 0x40, 0xb0, 0xfe, 0x73, 0x42, 0x9b, 0xef, 0x20, 0xfe, 0x9c, }; static const unsigned char ecdh_brainpoolp256r1_4078_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4078_sharedsecret[] = { 0x1a, 0x0f, 0x4d, 0xeb, 0x41, 0xde, 0x86, 0xa4, 0xca, 0x61, 0x2a, 0x8c, 0x48, 0x2c, 0xaf, 0x4a, 0xdf, 0xa5, 0x38, 0xea, 0x2d, 0xc3, 0xf3, 0x4f, 0xd7, 0x08, 0x05, 0x4f, 0xe0, 0x1a, 0xd9, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4078 = { .name = "ecdh_brainpoolp256r1_4078", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4078_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4078_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4078_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1686 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4079 for ECDH, tcId is 1687 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4079_peerpubkey[] = { 0x62, 0x3a, 0xb2, 0xcc, 0x47, 0x86, 0x38, 0xa3, 0xfb, 0x50, 0xeb, 0x5f, 0x07, 0x55, 0x10, 0x7b, 0xbb, 0x46, 0xbb, 0x05, 0xf2, 0x44, 0x8c, 0x77, 0xda, 0x04, 0x1d, 0xe8, 0xaf, 0xb3, 0x12, 0xc3, 0x7c, 0xa2, 0xfb, 0x6b, 0x6b, 0x90, 0x68, 0x83, 0x71, 0xa9, 0xd6, 0x49, 0x7c, 0x55, 0x38, 0x24, 0xdd, 0x06, 0x8f, 0xaa, 0x52, 0x8d, 0x92, 0xc4, 0xa8, 0x50, 0x56, 0xa6, 0x21, 0x10, 0x14, 0x8b, }; static const unsigned char ecdh_brainpoolp256r1_4079_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4079_sharedsecret[] = { 0xa5, 0x75, 0xc8, 0x81, 0x15, 0xf5, 0x4c, 0x89, 0xb9, 0xb0, 0x93, 0xd2, 0x12, 0x15, 0x01, 0x8d, 0xce, 0x87, 0x2c, 0xea, 0xb6, 0x05, 0xeb, 0x49, 0xa4, 0x4c, 0x65, 0x82, 0x53, 0xde, 0x4c, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4079 = { .name = "ecdh_brainpoolp256r1_4079", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4079_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4079_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4079_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1687 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4080 for ECDH, tcId is 1688 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4080_peerpubkey[] = { 0x05, 0xbf, 0x1d, 0x24, 0x05, 0x43, 0xc0, 0x7a, 0xcc, 0xe8, 0x7d, 0x4c, 0x35, 0x2b, 0x66, 0xf2, 0xdd, 0xd3, 0x10, 0x92, 0xf3, 0x6d, 0x95, 0x6d, 0x56, 0x07, 0xd7, 0xc1, 0xf8, 0x63, 0x1d, 0xfa, 0x36, 0x40, 0xd4, 0x21, 0xff, 0xd3, 0x67, 0x4d, 0x46, 0x10, 0x24, 0x20, 0x87, 0xeb, 0x58, 0xc7, 0x92, 0x29, 0xda, 0xc3, 0x7d, 0xa5, 0x5e, 0x0f, 0xa2, 0xed, 0x47, 0xc5, 0xd7, 0x90, 0x3c, 0x96, }; static const unsigned char ecdh_brainpoolp256r1_4080_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4080_sharedsecret[] = { 0x97, 0x0e, 0xd4, 0x66, 0xc5, 0xb1, 0x7f, 0x04, 0xd5, 0x84, 0x25, 0x1b, 0xf2, 0x15, 0xaf, 0x82, 0x63, 0xb3, 0x52, 0x26, 0x24, 0x9a, 0x58, 0xbb, 0x9d, 0x66, 0x52, 0xfa, 0xd2, 0x15, 0xbf, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4080 = { .name = "ecdh_brainpoolp256r1_4080", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4080_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4080_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4080_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1688 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4081 for ECDH, tcId is 1689 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4081_peerpubkey[] = { 0x2a, 0x73, 0x0d, 0xe6, 0x41, 0xb6, 0xba, 0x4a, 0x82, 0x7a, 0x08, 0x45, 0x29, 0x25, 0x79, 0xfa, 0xeb, 0xe8, 0xed, 0x86, 0x6d, 0x10, 0xd6, 0xa5, 0xde, 0x05, 0xf5, 0xde, 0xa3, 0xad, 0x89, 0x13, 0x36, 0x32, 0x8f, 0xa3, 0x23, 0x96, 0xed, 0x0f, 0x64, 0xa9, 0xcd, 0x03, 0xdc, 0x77, 0xd1, 0x64, 0xba, 0x41, 0xfb, 0x6a, 0x80, 0x7d, 0x8f, 0x28, 0xb3, 0x72, 0xce, 0x86, 0x2e, 0x24, 0x60, 0x29, }; static const unsigned char ecdh_brainpoolp256r1_4081_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4081_sharedsecret[] = { 0xa7, 0x2e, 0xbb, 0xb1, 0xf6, 0x33, 0x4a, 0x44, 0x23, 0x6b, 0x8c, 0x62, 0x42, 0x05, 0xe7, 0xd9, 0x47, 0x99, 0x57, 0x3e, 0xdc, 0x72, 0x66, 0xd7, 0xf5, 0x73, 0xd5, 0xe8, 0x50, 0xc7, 0xd3, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4081 = { .name = "ecdh_brainpoolp256r1_4081", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4081_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4081_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4081_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1689 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4082 for ECDH, tcId is 1690 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4082_peerpubkey[] = { 0x81, 0xb8, 0xcf, 0xfe, 0x03, 0x2b, 0x7f, 0x68, 0xcb, 0xc4, 0xdf, 0x30, 0x32, 0x3e, 0x7b, 0x2a, 0x6d, 0xfa, 0xdc, 0xb8, 0x37, 0xe3, 0x1a, 0x64, 0x24, 0xf2, 0x9e, 0x7a, 0xcc, 0xd9, 0x0d, 0x43, 0x66, 0x28, 0x9e, 0x71, 0x3a, 0x02, 0xb0, 0xc9, 0xe4, 0x53, 0x89, 0xab, 0x33, 0x42, 0xb7, 0x5f, 0x6a, 0x8b, 0x72, 0xf0, 0x00, 0x89, 0xa2, 0x14, 0xea, 0xb1, 0xd8, 0xce, 0x9c, 0x1e, 0xac, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_4082_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4082_sharedsecret[] = { 0x96, 0xac, 0xd3, 0xac, 0x41, 0x2b, 0x9b, 0x38, 0x55, 0xa3, 0xca, 0xb0, 0xe0, 0xca, 0x9d, 0x0c, 0x7d, 0x0d, 0xc8, 0x6c, 0xb4, 0xf5, 0x17, 0xa1, 0x58, 0x5b, 0x30, 0x95, 0x8a, 0xec, 0x4b, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4082 = { .name = "ecdh_brainpoolp256r1_4082", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4082_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4082_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4082_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1690 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4083 for ECDH, tcId is 1691 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4083_peerpubkey[] = { 0x76, 0x06, 0xbe, 0x11, 0xbe, 0x87, 0xb7, 0x44, 0xdd, 0x3d, 0x85, 0x43, 0x4c, 0xb9, 0x68, 0xce, 0x9b, 0x9e, 0xf3, 0x21, 0x35, 0x8d, 0xd4, 0x32, 0x73, 0xeb, 0x7f, 0xae, 0xc1, 0xa3, 0xf5, 0xb8, 0x1d, 0xa4, 0xd2, 0x6b, 0x1d, 0x14, 0xe5, 0xd3, 0x91, 0x92, 0x18, 0x3c, 0x9a, 0xf4, 0xd6, 0x65, 0x99, 0xe6, 0xb1, 0x2c, 0x6c, 0x3d, 0x14, 0x50, 0xc6, 0xf1, 0xfc, 0xa8, 0xe2, 0x8b, 0x13, 0x0d, }; static const unsigned char ecdh_brainpoolp256r1_4083_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4083_sharedsecret[] = { 0x3c, 0x3d, 0xc2, 0x2d, 0x09, 0x3b, 0x9f, 0x27, 0x1e, 0x2d, 0x76, 0x99, 0x7d, 0x50, 0xe4, 0x09, 0x63, 0x89, 0xb4, 0x75, 0x2e, 0xb9, 0x56, 0x13, 0x30, 0xb3, 0xba, 0x76, 0xcf, 0x92, 0x5f, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4083 = { .name = "ecdh_brainpoolp256r1_4083", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4083_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4083_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4083_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1691 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4084 for ECDH, tcId is 1692 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4084_peerpubkey[] = { 0x77, 0x89, 0xd3, 0xd7, 0xab, 0xb6, 0xcd, 0xac, 0xc7, 0x07, 0x00, 0x99, 0x5e, 0x20, 0x63, 0xb8, 0xb9, 0x03, 0x18, 0xce, 0xfa, 0x69, 0xab, 0x91, 0x2a, 0x8e, 0x7b, 0xb8, 0x29, 0xf9, 0x9d, 0xa0, 0x8a, 0x60, 0x78, 0xe8, 0x11, 0x00, 0x24, 0x21, 0x36, 0x6a, 0x66, 0xf7, 0x51, 0xe3, 0x7d, 0x8f, 0x65, 0x26, 0x6c, 0xd7, 0xfd, 0x9c, 0xd1, 0x07, 0x18, 0x8d, 0x13, 0xce, 0x5d, 0xc7, 0x05, 0xc8, }; static const unsigned char ecdh_brainpoolp256r1_4084_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4084_sharedsecret[] = { 0x86, 0xd3, 0x4e, 0x5a, 0x0f, 0x28, 0xfb, 0x30, 0x09, 0xb9, 0xca, 0xff, 0xa4, 0x53, 0xf4, 0xe3, 0x77, 0xe4, 0xe7, 0x01, 0x28, 0x60, 0xf6, 0x72, 0x1c, 0x73, 0x3d, 0x14, 0xd5, 0x30, 0x35, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4084 = { .name = "ecdh_brainpoolp256r1_4084", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4084_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4084_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4084_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1692 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4085 for ECDH, tcId is 1693 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4085_peerpubkey[] = { 0x73, 0xa1, 0xcc, 0x1e, 0x7e, 0xc4, 0x08, 0x02, 0x60, 0xdc, 0xdc, 0xc1, 0x00, 0xc5, 0xf7, 0x4a, 0x98, 0x7d, 0x54, 0x6d, 0x67, 0x17, 0xc9, 0x44, 0xdb, 0x9d, 0xc3, 0x2a, 0xf3, 0x55, 0x09, 0x64, 0x03, 0xec, 0x0c, 0xcb, 0xea, 0x58, 0xd6, 0x5a, 0x79, 0x32, 0xcd, 0x2a, 0x44, 0x6b, 0x5f, 0x6d, 0x20, 0x08, 0x03, 0x4e, 0xa3, 0x04, 0x02, 0x26, 0x69, 0xea, 0x63, 0x85, 0x6a, 0x54, 0xd9, 0x62, }; static const unsigned char ecdh_brainpoolp256r1_4085_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4085_sharedsecret[] = { 0x28, 0x1b, 0xeb, 0x20, 0xd1, 0x85, 0x0e, 0x7e, 0x0c, 0x0b, 0x9d, 0x1b, 0x95, 0x80, 0x61, 0x49, 0x95, 0xf8, 0x88, 0xcd, 0x15, 0xb3, 0x0a, 0xfe, 0x09, 0x90, 0x2f, 0x82, 0xfc, 0xe7, 0xed, 0x43, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4085 = { .name = "ecdh_brainpoolp256r1_4085", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4085_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4085_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4085_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1693 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4086 for ECDH, tcId is 1694 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4086_peerpubkey[] = { 0x5e, 0x29, 0x29, 0x2f, 0xa1, 0x7c, 0xcb, 0xa4, 0xe7, 0x69, 0xc5, 0x3b, 0xca, 0x35, 0xf0, 0x31, 0x66, 0xbb, 0xb7, 0x81, 0x76, 0xf2, 0xda, 0x74, 0x9b, 0x57, 0x51, 0x37, 0x26, 0xde, 0x49, 0x82, 0x42, 0x21, 0xc1, 0xf0, 0x14, 0xdd, 0x14, 0xb3, 0xdb, 0x11, 0x82, 0x4c, 0x96, 0x7c, 0x13, 0xaa, 0x77, 0xc6, 0xa1, 0xc2, 0x2b, 0xb0, 0x69, 0xb8, 0xa2, 0x02, 0x39, 0xcf, 0xfa, 0xc8, 0xea, 0x3d, }; static const unsigned char ecdh_brainpoolp256r1_4086_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4086_sharedsecret[] = { 0x4a, 0x87, 0xf4, 0x5f, 0xf1, 0x59, 0x48, 0x6c, 0xcd, 0x0e, 0x49, 0xbd, 0x61, 0x0c, 0xc3, 0x05, 0x6b, 0x54, 0x9c, 0x54, 0xf5, 0x92, 0xd2, 0x2e, 0x2c, 0xcb, 0xa4, 0x50, 0x9b, 0xe6, 0x19, 0x1f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4086 = { .name = "ecdh_brainpoolp256r1_4086", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4086_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4086_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4086_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1694 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4087 for ECDH, tcId is 1695 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4087_peerpubkey[] = { 0x5f, 0xc1, 0x59, 0x30, 0x02, 0xae, 0x09, 0x4b, 0xdf, 0x23, 0x50, 0xf9, 0x18, 0x01, 0x13, 0x44, 0xf9, 0x8e, 0x0c, 0x12, 0x5a, 0xf2, 0x6b, 0x30, 0xbc, 0xb7, 0x14, 0xd0, 0x1a, 0x8a, 0x03, 0x24, 0x2b, 0x23, 0x6c, 0x70, 0xd5, 0xd7, 0x45, 0xba, 0x20, 0x8c, 0xea, 0x89, 0x64, 0xbe, 0xae, 0xd8, 0x8d, 0x02, 0xd4, 0xaf, 0xdb, 0x7d, 0x20, 0xf0, 0x9f, 0x7e, 0xf9, 0x8e, 0xd9, 0x93, 0x44, 0x49, }; static const unsigned char ecdh_brainpoolp256r1_4087_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4087_sharedsecret[] = { 0x05, 0x48, 0x82, 0xf3, 0xb8, 0x87, 0x0d, 0x95, 0x60, 0x29, 0x4e, 0x6e, 0xd1, 0xcf, 0x0b, 0x55, 0x05, 0x81, 0x11, 0x14, 0xf1, 0x89, 0x2e, 0x13, 0x7b, 0xbd, 0xa8, 0x00, 0xb3, 0x03, 0xbb, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4087 = { .name = "ecdh_brainpoolp256r1_4087", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4087_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4087_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4087_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1695 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4088 for ECDH, tcId is 1696 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4088_peerpubkey[] = { 0x8a, 0x68, 0xa0, 0x3b, 0x1a, 0x94, 0x9e, 0x0f, 0xd6, 0xe7, 0x8e, 0x84, 0xc8, 0xbb, 0xf5, 0xd9, 0x27, 0x8f, 0x24, 0x91, 0x2b, 0x9a, 0x25, 0xe6, 0x9e, 0x85, 0x6e, 0x7a, 0xcc, 0x49, 0x39, 0xab, 0x64, 0x44, 0xdc, 0xfc, 0x26, 0x2a, 0x0f, 0x65, 0x78, 0x0a, 0x7d, 0x57, 0xb2, 0x63, 0x44, 0x89, 0xe2, 0x55, 0x60, 0xb0, 0xf0, 0x10, 0x2c, 0xac, 0xcc, 0x0e, 0x1c, 0xb2, 0xd7, 0x3c, 0xdb, 0x27, }; static const unsigned char ecdh_brainpoolp256r1_4088_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4088_sharedsecret[] = { 0x17, 0xee, 0x4b, 0x57, 0x28, 0x8e, 0x3b, 0x57, 0x1a, 0x6f, 0x8a, 0xd0, 0x77, 0x41, 0x8f, 0x8b, 0xc0, 0x63, 0x9b, 0xf9, 0x37, 0x7c, 0x58, 0xee, 0xdd, 0x54, 0x4d, 0xec, 0x35, 0x30, 0x99, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4088 = { .name = "ecdh_brainpoolp256r1_4088", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4088_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4088_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4088_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1696 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4089 for ECDH, tcId is 1697 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4089_peerpubkey[] = { 0x0f, 0x8d, 0x7d, 0x56, 0xba, 0x5e, 0x9a, 0x1e, 0x00, 0x4e, 0x44, 0xc4, 0x1b, 0x6e, 0x46, 0xe5, 0xe1, 0x8f, 0x4f, 0x17, 0x9f, 0x88, 0x97, 0xba, 0x0d, 0x8b, 0xb4, 0xa0, 0xd2, 0x18, 0x22, 0xc1, 0x01, 0xef, 0xc2, 0x88, 0xdc, 0x7d, 0xec, 0x62, 0xb7, 0x77, 0x3b, 0x0b, 0x90, 0x3e, 0xbf, 0xa4, 0x06, 0xe1, 0x9f, 0xbf, 0x51, 0x4f, 0xd0, 0xca, 0x27, 0x19, 0xbb, 0xe0, 0xef, 0x1a, 0x60, 0xe3, }; static const unsigned char ecdh_brainpoolp256r1_4089_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4089_sharedsecret[] = { 0x3c, 0x00, 0x5d, 0xf4, 0x85, 0xbf, 0xd1, 0xf2, 0x00, 0xd8, 0xe5, 0x83, 0x28, 0x52, 0x65, 0x6b, 0xc4, 0x0f, 0xbb, 0x79, 0xd8, 0x58, 0x28, 0x04, 0x52, 0x45, 0x8f, 0xa6, 0x1c, 0x7d, 0xc9, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4089 = { .name = "ecdh_brainpoolp256r1_4089", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4089_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4089_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4089_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1697 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4090 for ECDH, tcId is 1698 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4090_peerpubkey[] = { 0x65, 0xe5, 0x26, 0x7a, 0x28, 0x05, 0x38, 0x24, 0x5d, 0xff, 0x38, 0x5e, 0x2f, 0x1f, 0x79, 0xe2, 0xa0, 0x54, 0x81, 0xaf, 0x4d, 0x22, 0x51, 0xe4, 0x25, 0x8f, 0x02, 0x8b, 0xb0, 0x6d, 0x14, 0xfb, 0x60, 0xa1, 0x63, 0x06, 0x7f, 0xf8, 0xc1, 0x23, 0x50, 0xfb, 0xba, 0x22, 0xf9, 0xd4, 0x59, 0x33, 0xcb, 0xd0, 0xec, 0x40, 0x8e, 0x51, 0x3c, 0x7e, 0xa2, 0x1e, 0xbb, 0xc4, 0x2c, 0xdb, 0xb2, 0xfa, }; static const unsigned char ecdh_brainpoolp256r1_4090_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4090_sharedsecret[] = { 0x6c, 0x58, 0xe6, 0xdc, 0xa9, 0x98, 0x18, 0x72, 0x69, 0x63, 0x2b, 0x2e, 0x11, 0xcb, 0x69, 0xbf, 0x43, 0x85, 0x81, 0x90, 0x14, 0x26, 0x9d, 0x16, 0x68, 0x2e, 0x7e, 0x9f, 0x29, 0x16, 0x8b, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4090 = { .name = "ecdh_brainpoolp256r1_4090", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4090_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4090_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4090_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1698 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4091 for ECDH, tcId is 1699 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4091_peerpubkey[] = { 0x60, 0xbc, 0xdd, 0x84, 0xf5, 0xab, 0xf3, 0x7a, 0x21, 0x01, 0x4d, 0xce, 0x7f, 0x4d, 0x81, 0x9b, 0x45, 0x52, 0x4f, 0xb0, 0xc5, 0x97, 0x07, 0x74, 0x2b, 0x0e, 0x9d, 0x3a, 0x6b, 0xbb, 0x56, 0xcb, 0x5e, 0x2d, 0xbf, 0x8c, 0x6a, 0x65, 0xc5, 0x06, 0x76, 0x19, 0xdb, 0x7a, 0x59, 0x7f, 0xd8, 0xaa, 0x5f, 0x2a, 0xdb, 0xaa, 0xc5, 0xc8, 0x3d, 0x1d, 0x7d, 0x65, 0x7d, 0x1f, 0xd4, 0xff, 0x43, 0xeb, }; static const unsigned char ecdh_brainpoolp256r1_4091_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4091_sharedsecret[] = { 0x19, 0x0e, 0x96, 0x13, 0xbe, 0xbb, 0x5f, 0xf1, 0x13, 0xe3, 0xd8, 0x46, 0x9b, 0x8f, 0x56, 0xf7, 0x6e, 0xfc, 0x7d, 0x18, 0x24, 0x74, 0xb7, 0x52, 0x06, 0x1e, 0xe4, 0x86, 0x26, 0x13, 0x89, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4091 = { .name = "ecdh_brainpoolp256r1_4091", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4091_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4091_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4091_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1699 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4092 for ECDH, tcId is 1700 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4092_peerpubkey[] = { 0x22, 0x84, 0xae, 0xbb, 0xac, 0x99, 0x8f, 0x34, 0xfc, 0x1a, 0xce, 0x78, 0x27, 0x9c, 0x7f, 0x1e, 0x4f, 0xc9, 0x52, 0x98, 0x89, 0x9b, 0x31, 0xdb, 0xb3, 0x45, 0xbd, 0xce, 0xa3, 0xd0, 0xa3, 0x54, 0x46, 0x83, 0x2c, 0x0f, 0x0b, 0x85, 0x17, 0x52, 0x3e, 0x67, 0x50, 0xb1, 0x1a, 0x24, 0x07, 0x70, 0x62, 0x33, 0xe2, 0x26, 0x57, 0x14, 0x77, 0x7b, 0xd4, 0xb8, 0x59, 0x2e, 0x50, 0xe8, 0x8d, 0xc7, }; static const unsigned char ecdh_brainpoolp256r1_4092_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4092_sharedsecret[] = { 0x42, 0xd4, 0x0f, 0xb5, 0xe8, 0x7e, 0xb5, 0xda, 0x66, 0xcc, 0xb4, 0x16, 0xd5, 0xd1, 0xee, 0xdf, 0x58, 0x45, 0xe4, 0x88, 0x67, 0x11, 0x16, 0x76, 0x8a, 0xc7, 0x0f, 0xc3, 0x6f, 0xb1, 0xf8, 0x38, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4092 = { .name = "ecdh_brainpoolp256r1_4092", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4092_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4092_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4092_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1700 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4093 for ECDH, tcId is 1701 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4093_peerpubkey[] = { 0x33, 0xa3, 0x6d, 0x7b, 0xab, 0xa6, 0x59, 0x19, 0x9c, 0x29, 0xeb, 0xf6, 0x5b, 0x85, 0x77, 0xf2, 0x5b, 0x49, 0x05, 0x25, 0x26, 0x36, 0x77, 0xcd, 0x44, 0xa0, 0xd2, 0x30, 0x4f, 0x89, 0xa4, 0x3d, 0x6c, 0xf0, 0x49, 0x5a, 0x23, 0x0f, 0x69, 0xf5, 0xd7, 0x38, 0x41, 0x46, 0xca, 0x91, 0xbc, 0x09, 0x7f, 0xbc, 0x52, 0x3e, 0x2e, 0x19, 0xdb, 0x67, 0x5c, 0x19, 0xce, 0x6c, 0xb3, 0x57, 0xd7, 0x0e, }; static const unsigned char ecdh_brainpoolp256r1_4093_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4093_sharedsecret[] = { 0x0d, 0x4c, 0x7a, 0xee, 0x3f, 0x21, 0x7c, 0xd9, 0xdd, 0xbd, 0x96, 0x5a, 0xc8, 0xc8, 0x22, 0x38, 0xfa, 0xa9, 0x6e, 0x68, 0xf1, 0x19, 0x7c, 0xa3, 0x78, 0x5d, 0x6e, 0xb6, 0x49, 0xcb, 0x18, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4093 = { .name = "ecdh_brainpoolp256r1_4093", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4093_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4093_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4093_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1701 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4094 for ECDH, tcId is 1702 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4094_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4094_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp256r1_4094_sharedsecret[] = { 0xa3, 0xe1, 0xa4, 0x48, 0x51, 0xd0, 0xde, 0xe7, 0x44, 0x37, 0x8c, 0x5e, 0x49, 0x5f, 0x30, 0x81, 0xdf, 0xf2, 0xa0, 0xfe, 0xfc, 0xcd, 0xd0, 0x8f, 0xdc, 0x23, 0x31, 0x68, 0x7d, 0x5c, 0x4a, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4094 = { .name = "ecdh_brainpoolp256r1_4094", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4094_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4094_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4094_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1702 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4095 for ECDH, tcId is 1703 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4095_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4095_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_4095_sharedsecret[] = { 0x1a, 0x68, 0xab, 0x75, 0x6e, 0xca, 0xe2, 0x85, 0x3f, 0xcf, 0x62, 0x85, 0x97, 0x4e, 0xfa, 0xe3, 0x2c, 0xcd, 0xd0, 0x1c, 0x58, 0xd0, 0x5b, 0x4c, 0xc5, 0x8f, 0x74, 0xd1, 0x6c, 0x26, 0x61, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4095 = { .name = "ecdh_brainpoolp256r1_4095", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4095_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4095_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4095_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1703 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4096 for ECDH, tcId is 1704 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4096_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4096_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4096_sharedsecret[] = { 0x0b, 0xc5, 0xfe, 0xa1, 0xdd, 0x67, 0x93, 0x66, 0x4e, 0xa1, 0x5d, 0xaf, 0xba, 0x3e, 0x06, 0xc1, 0x52, 0x41, 0x50, 0xd9, 0xfd, 0xe3, 0x2e, 0x17, 0xd7, 0xc6, 0x81, 0x3f, 0xdc, 0x8c, 0x8f, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4096 = { .name = "ecdh_brainpoolp256r1_4096", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4096_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4096_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4096_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1704 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4097 for ECDH, tcId is 1705 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4097_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4097_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256r1_4097_sharedsecret[] = { 0x2d, 0x44, 0xec, 0x4c, 0xbf, 0x22, 0x8a, 0x4e, 0x32, 0x40, 0x9e, 0x4d, 0xe1, 0xef, 0x88, 0x59, 0xc9, 0x39, 0x96, 0xa9, 0xdf, 0x73, 0xc3, 0x17, 0xe5, 0xd0, 0x4e, 0x64, 0x13, 0x7f, 0x49, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4097 = { .name = "ecdh_brainpoolp256r1_4097", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4097_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4097_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4097_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1705 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4098 for ECDH, tcId is 1706 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4098_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4098_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4098_sharedsecret[] = { 0x9e, 0x19, 0x90, 0xfe, 0xc2, 0xa3, 0x45, 0x11, 0x8a, 0xaa, 0x96, 0xa4, 0x73, 0xfb, 0x92, 0x1d, 0xfb, 0x5c, 0x3d, 0x69, 0xc5, 0x28, 0xcf, 0x6f, 0xc0, 0x98, 0x9d, 0x07, 0x55, 0x52, 0x82, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4098 = { .name = "ecdh_brainpoolp256r1_4098", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4098_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4098_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4098_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1706 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4099 for ECDH, tcId is 1707 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4099_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4099_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf6, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_4099_sharedsecret[] = { 0x60, 0x56, 0x41, 0xe1, 0xbd, 0x08, 0xb2, 0x2a, 0x1a, 0x51, 0x02, 0x2d, 0x8e, 0xf8, 0x0f, 0x9b, 0x6c, 0x2f, 0x70, 0xb2, 0x56, 0x23, 0x87, 0xdb, 0x88, 0xc1, 0x24, 0xce, 0x60, 0x66, 0x08, 0x34, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4099 = { .name = "ecdh_brainpoolp256r1_4099", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4099_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4099_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4099_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1707 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4100 for ECDH, tcId is 1708 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4100_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4100_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x0e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_4100_sharedsecret[] = { 0x7d, 0xb5, 0x68, 0xa0, 0x27, 0xcd, 0x62, 0x04, 0x45, 0x7c, 0xe3, 0x1e, 0x78, 0x59, 0xcd, 0x06, 0xfc, 0x76, 0xdd, 0xbc, 0x97, 0xd5, 0xbd, 0xef, 0xd5, 0x7a, 0x65, 0x75, 0x2f, 0xd7, 0x93, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4100 = { .name = "ecdh_brainpoolp256r1_4100", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4100_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4100_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4100_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1708 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4101 for ECDH, tcId is 1709 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4101_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4101_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x16, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_4101_sharedsecret[] = { 0x68, 0x78, 0xca, 0x1b, 0xdd, 0x7c, 0x03, 0x53, 0xb5, 0x05, 0xd5, 0xa6, 0x0b, 0x2f, 0xbe, 0xd4, 0x22, 0xb5, 0xc3, 0x7c, 0x7b, 0x54, 0xcb, 0xed, 0x3a, 0x22, 0xe0, 0x89, 0x4e, 0x7b, 0x15, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4101 = { .name = "ecdh_brainpoolp256r1_4101", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4101_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4101_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4101_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1709 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4102 for ECDH, tcId is 1710 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4102_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4102_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x81, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256r1_4102_sharedsecret[] = { 0x3b, 0xc5, 0x42, 0x38, 0xc7, 0x01, 0xdf, 0x3e, 0x18, 0xc6, 0x39, 0x5f, 0x35, 0x43, 0x50, 0x59, 0xc5, 0x4f, 0xf0, 0xd0, 0x6d, 0x8a, 0xb1, 0x9a, 0x3d, 0x17, 0x9a, 0xb3, 0x7c, 0x1f, 0xd8, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4102 = { .name = "ecdh_brainpoolp256r1_4102", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4102_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4102_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4102_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1710 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4103 for ECDH, tcId is 1711 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4103_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4103_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x55, 0xf5, }; static const unsigned char ecdh_brainpoolp256r1_4103_sharedsecret[] = { 0x19, 0x50, 0xb7, 0xce, 0x51, 0x0d, 0x4d, 0x86, 0x48, 0xe8, 0x0c, 0x63, 0x85, 0xa4, 0x2d, 0x00, 0x54, 0x33, 0xfc, 0x5c, 0xa6, 0x1e, 0x20, 0x22, 0xa1, 0x40, 0x5f, 0xe1, 0x81, 0x42, 0xc2, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4103 = { .name = "ecdh_brainpoolp256r1_4103", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4103_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4103_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4103_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1711 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4104 for ECDH, tcId is 1712 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4104_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4104_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x75, }; static const unsigned char ecdh_brainpoolp256r1_4104_sharedsecret[] = { 0x5c, 0x05, 0xc4, 0xd8, 0x77, 0xa0, 0xe2, 0xaf, 0x5f, 0xfa, 0x00, 0x4c, 0x12, 0x26, 0x30, 0xbb, 0x87, 0x15, 0x7c, 0xf3, 0x46, 0xdb, 0xeb, 0x8a, 0xe1, 0x30, 0x17, 0x16, 0x2d, 0xa2, 0x08, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4104 = { .name = "ecdh_brainpoolp256r1_4104", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4104_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4104_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4104_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1712 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4105 for ECDH, tcId is 1713 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4105_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4105_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x95, }; static const unsigned char ecdh_brainpoolp256r1_4105_sharedsecret[] = { 0x96, 0x39, 0xbb, 0xd4, 0xe2, 0x21, 0x94, 0xce, 0x38, 0x92, 0xa8, 0x14, 0xc8, 0x2e, 0xdd, 0xbd, 0x21, 0xdd, 0xe0, 0x5c, 0xfa, 0xc2, 0x0e, 0x99, 0x39, 0x6e, 0x3d, 0x6e, 0xf0, 0x84, 0x1f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4105 = { .name = "ecdh_brainpoolp256r1_4105", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4105_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4105_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4105_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1713 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4106 for ECDH, tcId is 1714 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4106_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4106_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const unsigned char ecdh_brainpoolp256r1_4106_sharedsecret[] = { 0xa3, 0xe1, 0xa4, 0x48, 0x51, 0xd0, 0xde, 0xe7, 0x44, 0x37, 0x8c, 0x5e, 0x49, 0x5f, 0x30, 0x81, 0xdf, 0xf2, 0xa0, 0xfe, 0xfc, 0xcd, 0xd0, 0x8f, 0xdc, 0x23, 0x31, 0x68, 0x7d, 0x5c, 0x4a, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4106 = { .name = "ecdh_brainpoolp256r1_4106", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4106_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4106_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4106_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1714 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4107 for ECDH, tcId is 1715 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4107_peerpubkey[] = { 0xa4, 0x59, 0x7c, 0xfe, 0xe2, 0x79, 0x7a, 0xaa, 0xce, 0x66, 0x2c, 0xaa, 0x92, 0xa4, 0x44, 0x59, 0x2c, 0x9f, 0x62, 0x6f, 0x04, 0xbe, 0xca, 0x98, 0xa0, 0x6b, 0x6d, 0xfc, 0xaf, 0x53, 0xf4, 0xb3, 0x77, 0xd6, 0x7b, 0x1c, 0x10, 0x91, 0x54, 0x30, 0x9b, 0xcf, 0x3d, 0x2f, 0x39, 0x28, 0xe5, 0x87, 0x47, 0x80, 0x6f, 0x08, 0xa8, 0xcf, 0x88, 0x43, 0x6a, 0xc1, 0xb2, 0x11, 0x0b, 0x83, 0x49, 0x3b, }; static const unsigned char ecdh_brainpoolp256r1_4107_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4107_sharedsecret[] = { 0x34, 0x1c, 0xbd, 0xf6, 0x1f, 0x9d, 0xd6, 0x20, 0xba, 0x68, 0x73, 0xa7, 0x48, 0x04, 0xaf, 0xe3, 0x0a, 0x06, 0xb0, 0xa1, 0x13, 0xa6, 0x91, 0x6a, 0x41, 0x04, 0xd2, 0xd4, 0xcc, 0x19, 0x6a, 0xec, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4107 = { .name = "ecdh_brainpoolp256r1_4107", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4107_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4107_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4107_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 1715 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4108 for ECDH, tcId is 1716 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4108_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4108_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4108 = { .name = "ecdh_brainpoolp256r1_4108", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4108_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4108_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1716 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4109 for ECDH, tcId is 1717 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4109_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4109_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4109 = { .name = "ecdh_brainpoolp256r1_4109", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4109_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4109_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1717 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4110 for ECDH, tcId is 1718 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4110_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_4110_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4110 = { .name = "ecdh_brainpoolp256r1_4110", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4110_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4110_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1718 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4111 for ECDH, tcId is 1719 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4111_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_4111_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4111 = { .name = "ecdh_brainpoolp256r1_4111", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4111_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4111_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1719 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4112 for ECDH, tcId is 1720 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4112_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4112_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4112 = { .name = "ecdh_brainpoolp256r1_4112", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4112_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4112_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1720 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4113 for ECDH, tcId is 1721 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4113_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4113_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4113 = { .name = "ecdh_brainpoolp256r1_4113", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4113_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4113_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1721 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4114 for ECDH, tcId is 1722 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4114_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_4114_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4114 = { .name = "ecdh_brainpoolp256r1_4114", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4114_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4114_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1722 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4115 for ECDH, tcId is 1723 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4115_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_4115_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4115 = { .name = "ecdh_brainpoolp256r1_4115", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4115_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4115_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1723 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4116 for ECDH, tcId is 1724 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4116_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4116_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4116 = { .name = "ecdh_brainpoolp256r1_4116", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4116_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4116_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1724 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4117 for ECDH, tcId is 1725 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4117_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4117_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4117 = { .name = "ecdh_brainpoolp256r1_4117", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4117_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4117_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1725 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4118 for ECDH, tcId is 1726 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4118_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_4118_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4118 = { .name = "ecdh_brainpoolp256r1_4118", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4118_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4118_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1726 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4119 for ECDH, tcId is 1727 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4119_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_4119_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4119 = { .name = "ecdh_brainpoolp256r1_4119", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4119_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4119_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1727 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4120 for ECDH, tcId is 1728 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4120_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4120_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4120 = { .name = "ecdh_brainpoolp256r1_4120", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4120_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4120_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1728 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4121 for ECDH, tcId is 1729 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4121_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256r1_4121_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4121 = { .name = "ecdh_brainpoolp256r1_4121", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4121_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4121_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1729 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4122 for ECDH, tcId is 1730 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4122_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256r1_4122_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4122 = { .name = "ecdh_brainpoolp256r1_4122", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4122_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4122_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1730 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4123 for ECDH, tcId is 1731 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4123_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256r1_4123_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4123 = { .name = "ecdh_brainpoolp256r1_4123", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4123_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4123_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1731 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4124 for ECDH, tcId is 1733 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4124_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x1a, }; static const unsigned char ecdh_brainpoolp256r1_4124_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4124 = { .name = "ecdh_brainpoolp256r1_4124", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4124_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4124_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 1733 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4125 for ECDH, tcId is 1734 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4125_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256r1_4125_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4125 = { .name = "ecdh_brainpoolp256r1_4125", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4125_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4125_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 1734 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4126 for ECDH, tcId is 1737 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4126_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4126_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4126_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4126 = { .name = "ecdh_brainpoolp256r1_4126", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4126_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4126_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4126_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 1737 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4127 for ECDH, tcId is 1738 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4127_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4127_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4127_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4127 = { .name = "ecdh_brainpoolp256r1_4127", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4127_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4127_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4127_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 17901173885223768702896718547912698493510841341785744190857633730178, tcId is 1738 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4128 for ECDH, tcId is 1739 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4128_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4128_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4128_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4128 = { .name = "ecdh_brainpoolp256r1_4128", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4128_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4128_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4128_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 1739 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4129 for ECDH, tcId is 1740 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4129_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4129_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4129_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4129 = { .name = "ecdh_brainpoolp256r1_4129", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4129_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4129_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4129_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 1740 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4130 for ECDH, tcId is 1743 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4130_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4130_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4130_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4130 = { .name = "ecdh_brainpoolp256r1_4130", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4130_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4130_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4130_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 1743 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4131 for ECDH, tcId is 1745 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4131_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4131_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4131_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4131 = { .name = "ecdh_brainpoolp256r1_4131", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4131_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4131_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4131_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 1745 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4132 for ECDH, tcId is 1748 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4132_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_brainpoolp256r1_4132_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4132 = { .name = "ecdh_brainpoolp256r1_4132", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4132_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4132_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 1748 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4133 for ECDH, tcId is 1749 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4133_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_brainpoolp256r1_4133_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4133 = { .name = "ecdh_brainpoolp256r1_4133", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4133_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4133_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 1749 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4134 for ECDH, tcId is 1750 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4134_peerpubkey[] = { 0x75, 0x1e, 0x0e, 0x46, 0x36, 0xe8, 0x39, 0xf0, 0x6f, 0x49, 0x98, 0xe1, 0x4b, 0x72, 0x80, 0x9d, 0x29, 0x03, 0x1e, 0x89, 0x5e, 0x4c, 0x7f, 0x3c, 0x99, 0xa9, 0xcc, 0x13, 0x1b, 0xa3, 0x9b, 0x76, 0x1d, 0xb3, 0x8f, 0x94, 0x4b, 0xda, 0xf6, 0x63, 0xa2, 0x60, 0x61, 0x09, 0x34, 0x5d, 0xc2, 0xa5, 0xd2, 0xf2, 0x5c, 0x50, 0x11, 0xe1, 0x64, 0xb1, 0x2c, 0xf0, 0x40, 0x89, 0x22, 0x34, 0x2e, 0x18, }; static const unsigned char ecdh_brainpoolp256r1_4134_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const unsigned char ecdh_brainpoolp256r1_4134_sharedsecret[] = { 0x59, 0x66, 0x8d, 0x33, 0xe4, 0x16, 0x3a, 0x2e, 0x06, 0xb8, 0xeb, 0xac, 0x45, 0xef, 0x55, 0x91, 0x10, 0xd9, 0x3c, 0x60, 0x79, 0xeb, 0x25, 0x66, 0xf5, 0x76, 0xc6, 0xc7, 0x5f, 0xad, 0x26, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4134 = { .name = "ecdh_brainpoolp256r1_4134", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4134_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4134_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256r1_4134_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 1750 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4135 for ECDH, tcId is 1752 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4135_peerpubkey[] = { 0x81, 0xac, 0x2a, 0xef, 0x36, 0xe3, 0xd1, 0x28, 0xe4, 0x36, 0x0e, 0x71, 0x5d, 0x48, 0x85, 0xb4, 0xd5, 0xcd, 0xea, 0x3b, 0x1d, 0xef, 0x7c, 0xa2, 0x86, 0x5f, 0xf7, 0x68, 0x00, 0xe5, 0x38, 0x13, 0x3b, 0xe2, 0xe5, 0x15, 0x84, 0x02, 0x7d, 0x13, 0x9f, 0x60, 0x59, 0xe2, 0x54, 0xa0, 0x37, 0xf8, 0x6d, 0xb1, 0x2c, 0x39, 0x0f, 0xdc, 0x30, 0x47, 0xd3, 0xbe, 0xa6, 0x81, 0x2f, 0x19, 0xc0, 0x4d, }; static const unsigned char ecdh_brainpoolp256r1_4135_privkey[] = { 0x83, 0xa8, 0x12, 0x57, 0x93, 0xc8, 0x9b, 0xec, 0x64, 0x33, 0x8a, 0xbf, 0x2d, 0xb8, 0xbe, 0x8a, 0xd5, 0xd6, 0x80, 0xea, 0x13, 0x46, 0x45, 0xd4, 0x0c, 0x9e, 0xe4, 0x20, 0xf3, 0x85, 0x2e, 0xbb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4135 = { .name = "ecdh_brainpoolp256r1_4135", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4135_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4135_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP256t1, tcId is 1752 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4136 for ECDH, tcId is 1754 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4136_peerpubkey[] = { 0x2e, 0x0f, 0x44, 0x1d, 0x25, 0x8b, 0x51, 0xe9, 0xf0, 0x20, 0x35, 0xb7, 0x2d, 0xc9, 0x2d, 0x19, 0xfd, 0x7f, 0x86, 0x1b, 0x1d, 0xc2, 0x29, 0x59, 0xc4, 0x52, 0x5a, 0xaf, 0x7d, 0x92, 0x3e, 0xa6, 0x1f, 0xcb, 0xb7, 0xb5, 0xa4, 0xff, 0xf1, 0x9b, 0x19, 0xc3, 0x16, 0xfb, 0x21, 0x26, 0xb9, 0xe2, 0x32, 0x55, 0x73, 0xdf, 0x3c, 0x68, 0x86, 0xb1, 0xd8, 0x7c, 0x8b, 0x7c, 0xe1, 0xe3, 0x23, 0xb0, }; static const unsigned char ecdh_brainpoolp256r1_4136_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4136 = { .name = "ecdh_brainpoolp256r1_4136", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4136_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4136_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 1754 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4137 for ECDH, tcId is 1757 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4137_peerpubkey[] = { 0x62, 0x8c, 0xd8, 0x6e, 0x06, 0x86, 0xa0, 0xf8, 0x39, 0x00, 0xea, 0x56, 0x50, 0xc9, 0x50, 0xa2, 0x41, 0xbc, 0xfb, 0x58, 0x5b, 0x58, 0x59, 0x1b, 0xbd, 0x60, 0xd4, 0x74, 0xb3, 0x30, 0xee, 0x43, 0x5d, 0x4e, 0x5b, 0xc1, 0x11, 0xde, 0x4e, 0x07, 0xf4, 0xf2, 0xff, 0xc4, 0x0e, 0x00, 0x9b, 0x97, 0x80, 0xa9, 0x56, 0x5c, 0x15, 0x21, 0xda, 0x78, 0x54, 0x7e, 0xf3, 0x61, 0x92, 0xc5, 0x4c, 0xf0, }; static const unsigned char ecdh_brainpoolp256r1_4137_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4137 = { .name = "ecdh_brainpoolp256r1_4137", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4137_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4137_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 1757 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4138 for ECDH, tcId is 1764 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4138_peerpubkey[] = { 0x59, 0xe7, 0xf5, 0x22, 0x0b, 0x13, 0x26, 0x95, 0x49, 0xd1, 0x1a, 0x10, 0x52, 0xc9, 0xea, 0x85, 0x2e, 0xee, 0x4c, 0x98, 0xdf, 0x59, 0x8d, 0x0c, 0x43, 0x82, 0x4a, 0xea, 0xf4, 0x53, 0x40, 0xfd, 0x5a, 0x5a, 0xa6, 0x95, 0x0b, 0x94, 0xd6, 0xb0, 0x55, 0xef, 0x7b, 0x01, 0x1a, 0x50, 0x6a, 0x2b, 0x12, 0x77, 0xee, 0x50, 0xe2, 0x15, 0xef, 0xa1, 0x62, 0x46, 0xa2, 0x31, 0xf0, 0xbe, 0x64, 0xdf, }; static const unsigned char ecdh_brainpoolp256r1_4138_privkey[] = { 0x89, 0x8a, 0x9c, 0x54, 0xd7, 0x2d, 0xa3, 0x0e, 0x36, 0xb4, 0x2d, 0xcf, 0x63, 0xb3, 0x7b, 0x39, 0xc9, 0x64, 0x41, 0xdc, 0xcf, 0xcd, 0x70, 0x1b, 0x8e, 0xd9, 0xe0, 0xb0, 0xc7, 0xf6, 0xfe, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4138 = { .name = "ecdh_brainpoolp256r1_4138", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4138_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4138_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256t1, tcId is 1764 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4139 for ECDH, tcId is 1768 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4139_peerpubkey[] = { 0x9c, 0xf2, 0x57, 0x45, 0xa7, 0xec, 0x04, 0xb3, 0xc0, 0x0e, 0x79, 0x5c, 0x7e, 0x8f, 0x8d, 0x7d, 0xa3, 0x3f, 0x55, 0x73, 0x20, 0x03, 0xbe, 0x4f, 0xd4, 0x09, 0x4d, 0x84, 0x2e, 0xa8, 0x2d, 0x8c, }; static const unsigned char ecdh_brainpoolp256r1_4139_privkey[] = { 0x25, 0xd4, 0x05, 0xa4, 0x6c, 0xcd, 0x1e, 0x34, 0x65, 0x8b, 0x9b, 0xe7, 0x42, 0x3e, 0x8f, 0xce, 0x7a, 0x99, 0x71, 0x20, 0xdb, 0x96, 0x39, 0x33, 0x54, 0x5d, 0x19, 0x76, 0x2c, 0x71, 0xd8, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4139 = { .name = "ecdh_brainpoolp256r1_4139", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4139_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4139_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 1768 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4140 for ECDH, tcId is 1769 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4140_peerpubkey[] = { 0x0a, 0x89, 0x44, 0xf9, 0x6d, 0xe0, 0xfe, 0x0d, 0x82, 0x48, 0x9c, 0xbc, 0x7e, 0x71, 0xf2, 0xf5, 0x29, 0xcf, 0xcf, 0xea, 0x03, 0xca, 0x59, 0x3d, 0x91, 0x46, 0x22, 0x78, 0x73, 0x1e, 0x19, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4140_privkey[] = { 0x66, 0x00, 0x8d, 0x35, 0xe3, 0x4a, 0xb5, 0xf8, 0x75, 0xc3, 0xfd, 0x81, 0x15, 0xc3, 0x35, 0xcd, 0x9b, 0x5f, 0x76, 0x43, 0x23, 0xdb, 0xe4, 0x45, 0x70, 0x96, 0x01, 0x55, 0x57, 0x0e, 0x71, 0xdb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4140 = { .name = "ecdh_brainpoolp256r1_4140", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4140_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4140_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1769 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4141 for ECDH, tcId is 1770 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4141_peerpubkey[] = { 0x57, 0x58, 0x62, 0xa7, 0xc5, 0xfc, 0x68, 0xe9, 0xff, 0xcd, 0x58, 0xce, 0x9b, 0xd0, 0xef, 0x78, 0xc0, 0xa2, 0x6a, 0x3a, 0x22, 0xee, 0x96, 0xb0, 0xbe, 0x16, 0xb3, 0x99, 0xad, 0xb3, 0xac, 0x4a, }; static const unsigned char ecdh_brainpoolp256r1_4141_privkey[] = { 0x62, 0x28, 0x53, 0x93, 0x8b, 0xb5, 0xdc, 0x82, 0x71, 0x6c, 0xd8, 0xd6, 0xd0, 0x76, 0xae, 0x69, 0x55, 0xda, 0x30, 0x7b, 0xb1, 0x45, 0x34, 0xae, 0x56, 0xfd, 0x6d, 0xfe, 0xfd, 0x5e, 0xd2, 0x70, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4141 = { .name = "ecdh_brainpoolp256r1_4141", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4141_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4141_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1770 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4142 for ECDH, tcId is 1771 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4142_peerpubkey[] = { 0x57, 0x58, 0x62, 0xa7, 0xc5, 0xfc, 0x68, 0xe9, 0xff, 0xcd, 0x58, 0xce, 0x9b, 0xd0, 0xef, 0x78, 0xc0, 0xa2, 0x6a, 0x3a, 0x22, 0xee, 0x96, 0xb0, 0xbe, 0x16, 0xb3, 0x99, 0xad, 0xb3, 0xac, 0x4a, }; static const unsigned char ecdh_brainpoolp256r1_4142_privkey[] = { 0x62, 0x28, 0x53, 0x93, 0x8b, 0xb5, 0xdc, 0x82, 0x71, 0x6c, 0xd8, 0xd6, 0xd0, 0x76, 0xae, 0x69, 0x55, 0xda, 0x30, 0x7b, 0xb1, 0x45, 0x34, 0xae, 0x56, 0xfd, 0x6d, 0xfe, 0xfd, 0x5e, 0xd2, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4142 = { .name = "ecdh_brainpoolp256r1_4142", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4142_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4142_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1771 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4143 for ECDH, tcId is 1772 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) static const unsigned char ecdh_brainpoolp256r1_4143_peerpubkey[] = { 0x0a, 0x89, 0x44, 0xf9, 0x6d, 0xe0, 0xfe, 0x0d, 0x82, 0x48, 0x9c, 0xbc, 0x7e, 0x71, 0xf2, 0xf5, 0x29, 0xcf, 0xcf, 0xea, 0x03, 0xca, 0x59, 0x3d, 0x91, 0x46, 0x22, 0x78, 0x73, 0x1e, 0x19, 0xa5, }; static const unsigned char ecdh_brainpoolp256r1_4143_privkey[] = { 0x66, 0x00, 0x8d, 0x35, 0xe3, 0x4a, 0xb5, 0xf8, 0x75, 0xc3, 0xfd, 0x81, 0x15, 0xc3, 0x35, 0xcd, 0x9b, 0x5f, 0x76, 0x43, 0x23, 0xdb, 0xe4, 0x45, 0x70, 0x96, 0x01, 0x55, 0x57, 0x0e, 0x71, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp256r1_4143 = { .name = "ecdh_brainpoolp256r1_4143", .ecdh_alg = ECCCDH, .curve = &brainpoolp256r1_str_params, .peerpubkey = ecdh_brainpoolp256r1_4143_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256r1_4143_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1772 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) */ /* Test 4144 for ECDH, tcId is 1773 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4144_peerpubkey[] = { 0xb7, 0xfc, 0x57, 0x20, 0xd4, 0xb3, 0x25, 0xc0, 0x80, 0x5c, 0xc2, 0x13, 0xc1, 0xb9, 0xcc, 0xbd, 0x9e, 0x4f, 0x38, 0x0a, 0x12, 0x1f, 0xbc, 0x00, 0x78, 0x4c, 0x82, 0x1b, 0xcd, 0x7f, 0x0d, 0x61, 0x8b, 0x70, 0xd3, 0x9f, 0xbd, 0xce, 0xae, 0x55, 0x3d, 0x9d, 0xe4, 0xf9, 0x06, 0x83, 0xeb, 0x9f, 0x00, 0x04, 0x63, 0xc7, 0xbd, 0x1d, 0x32, 0xdb, 0x8c, 0xfa, 0xd2, 0xb4, 0x08, 0x62, 0xcc, 0xac, 0x05, 0x03, 0x0e, 0x93, 0xfc, 0x66, 0x94, 0xc0, 0x71, 0xe8, 0xe1, 0x42, 0x7b, 0x30, 0x50, 0x06, }; static const unsigned char ecdh_brainpoolp320r1_4144_privkey[] = { 0x12, 0xd0, 0x6c, 0x51, 0xde, 0xda, 0x15, 0x95, 0xd8, 0xc4, 0x3e, 0x7c, 0x14, 0x6f, 0x89, 0x8f, 0x71, 0x41, 0xc0, 0x83, 0x65, 0x22, 0x93, 0x10, 0x49, 0xaf, 0xe6, 0x13, 0x33, 0xae, 0x2c, 0x03, 0xe3, 0x50, 0xb6, 0x1a, 0xeb, 0xa5, 0x40, 0xbf, }; static const unsigned char ecdh_brainpoolp320r1_4144_sharedsecret[] = { 0x94, 0x98, 0x2d, 0x50, 0xb2, 0x9f, 0xae, 0xda, 0xa7, 0xed, 0x09, 0x88, 0xfd, 0x57, 0xb9, 0x03, 0x03, 0xb0, 0x32, 0xce, 0x39, 0x8e, 0xc7, 0x0a, 0xf6, 0xd1, 0x94, 0xbc, 0xfd, 0x7f, 0x90, 0x08, 0xd1, 0x4e, 0x09, 0x42, 0x55, 0x02, 0xb7, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4144 = { .name = "ecdh_brainpoolp320r1_4144", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4144_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4144_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4144_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "normal case, tcId is 1773 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4145 for ECDH, tcId is 1774 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4145_peerpubkey[] = { 0xb7, 0xfc, 0x57, 0x20, 0xd4, 0xb3, 0x25, 0xc0, 0x80, 0x5c, 0xc2, 0x13, 0xc1, 0xb9, 0xcc, 0xbd, 0x9e, 0x4f, 0x38, 0x0a, 0x12, 0x1f, 0xbc, 0x00, 0x78, 0x4c, 0x82, 0x1b, 0xcd, 0x7f, 0x0d, 0x61, 0x8b, 0x70, 0xd3, 0x9f, 0xbd, 0xce, 0xae, 0x55, }; static const unsigned char ecdh_brainpoolp320r1_4145_privkey[] = { 0x12, 0xd0, 0x6c, 0x51, 0xde, 0xda, 0x15, 0x95, 0xd8, 0xc4, 0x3e, 0x7c, 0x14, 0x6f, 0x89, 0x8f, 0x71, 0x41, 0xc0, 0x83, 0x65, 0x22, 0x93, 0x10, 0x49, 0xaf, 0xe6, 0x13, 0x33, 0xae, 0x2c, 0x03, 0xe3, 0x50, 0xb6, 0x1a, 0xeb, 0xa5, 0x40, 0xbf, }; static const unsigned char ecdh_brainpoolp320r1_4145_sharedsecret[] = { 0x94, 0x98, 0x2d, 0x50, 0xb2, 0x9f, 0xae, 0xda, 0xa7, 0xed, 0x09, 0x88, 0xfd, 0x57, 0xb9, 0x03, 0x03, 0xb0, 0x32, 0xce, 0x39, 0x8e, 0xc7, 0x0a, 0xf6, 0xd1, 0x94, 0xbc, 0xfd, 0x7f, 0x90, 0x08, 0xd1, 0x4e, 0x09, 0x42, 0x55, 0x02, 0xb7, 0xe7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4145 = { .name = "ecdh_brainpoolp320r1_4145", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4145_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4145_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4145_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "compressed public key, tcId is 1774 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4146 for ECDH, tcId is 1775 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4146_peerpubkey[] = { 0x43, 0x0d, 0xd3, 0x0b, 0x26, 0x35, 0x0b, 0xc6, 0x6c, 0x41, 0xc7, 0x17, 0x69, 0xdd, 0x61, 0xb7, 0x40, 0xd7, 0x10, 0x08, 0xb5, 0x9e, 0x45, 0x5c, 0x17, 0x95, 0xeb, 0xbd, 0xc6, 0xbb, 0x1f, 0x0c, 0x8a, 0xfa, 0xab, 0x41, 0x58, 0x50, 0x14, 0x2f, 0x15, 0x57, 0xfe, 0xb7, 0xbe, 0xf5, 0xfd, 0x39, 0x37, 0xf0, 0x88, 0xcc, 0xb4, 0xd3, 0xff, 0x8d, 0xc7, 0x43, 0x1e, 0xec, 0xc9, 0xdc, 0xe6, 0xf5, 0x7c, 0x45, 0x03, 0x5c, 0xa9, 0x7d, 0xd0, 0xd7, 0xde, 0x99, 0x91, 0x74, 0x2a, 0x39, 0xad, 0x20, }; static const unsigned char ecdh_brainpoolp320r1_4146_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4146_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4146 = { .name = "ecdh_brainpoolp320r1_4146", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4146_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4146_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4146_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1775 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4147 for ECDH, tcId is 1776 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4147_peerpubkey[] = { 0x7b, 0xad, 0x53, 0xf5, 0x0a, 0x36, 0x93, 0x71, 0xb9, 0x74, 0x29, 0x52, 0xb3, 0x7f, 0x6a, 0x17, 0x9f, 0xfb, 0x0f, 0x7f, 0x46, 0x89, 0x43, 0x21, 0xf1, 0xb3, 0x48, 0x54, 0x53, 0xb7, 0xbb, 0x58, 0xb9, 0xe6, 0x1e, 0x1a, 0xd0, 0x69, 0x13, 0x24, 0x72, 0x87, 0x97, 0x61, 0x10, 0xd2, 0x2b, 0xba, 0xf1, 0x7d, 0xad, 0x58, 0x4c, 0xd1, 0x04, 0xbc, 0xa6, 0x60, 0x1d, 0xaa, 0x0b, 0x66, 0x33, 0xba, 0x88, 0x97, 0x93, 0xf9, 0x31, 0xef, 0x61, 0xf8, 0x89, 0xa4, 0x91, 0xbf, 0xc3, 0x77, 0x62, 0x56, }; static const unsigned char ecdh_brainpoolp320r1_4147_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4147_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4147 = { .name = "ecdh_brainpoolp320r1_4147", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4147_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4147_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4147_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1776 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4148 for ECDH, tcId is 1777 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4148_peerpubkey[] = { 0x39, 0xa0, 0x05, 0x0a, 0xd1, 0x00, 0x06, 0x27, 0xff, 0xeb, 0x7b, 0xd1, 0xc4, 0xfa, 0x9f, 0xc3, 0x36, 0x50, 0x7c, 0x4d, 0x1c, 0x2a, 0x55, 0xf4, 0xe3, 0x67, 0x2c, 0x15, 0xda, 0xbc, 0x8d, 0xc9, 0x56, 0x7e, 0x32, 0x6e, 0x74, 0x0c, 0x54, 0xc7, 0x99, 0xc1, 0xb0, 0x5b, 0xcd, 0x6f, 0xc5, 0xb4, 0x3c, 0x69, 0x35, 0x69, 0xc0, 0x58, 0x3a, 0x19, 0xe5, 0xa0, 0xaf, 0xf1, 0xb4, 0x13, 0x5d, 0xf4, 0x61, 0xe6, 0x26, 0xe8, 0x1f, 0xb0, 0x98, 0xbe, 0x2e, 0xef, 0xbf, 0x9e, 0xc1, 0x07, 0x5a, 0x53, }; static const unsigned char ecdh_brainpoolp320r1_4148_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4148_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4148 = { .name = "ecdh_brainpoolp320r1_4148", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4148_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4148_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4148_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1777 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4149 for ECDH, tcId is 1778 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4149_peerpubkey[] = { 0x88, 0x7c, 0x70, 0xea, 0xdd, 0xf1, 0xe6, 0x7b, 0x2e, 0x05, 0xe0, 0x61, 0x31, 0x54, 0xb6, 0x1c, 0xac, 0x59, 0x25, 0x68, 0x64, 0x1c, 0x53, 0x32, 0xa2, 0x18, 0xa8, 0x7c, 0xeb, 0xba, 0x63, 0xb2, 0x51, 0x8e, 0x6c, 0x1c, 0xc1, 0xca, 0x40, 0x36, 0xa4, 0xa6, 0x2b, 0xbe, 0x99, 0xf7, 0xca, 0xb9, 0x5e, 0xb1, 0xfd, 0x6b, 0x0a, 0xcc, 0x85, 0xd4, 0x95, 0xc9, 0xb8, 0x2e, 0xd1, 0xce, 0x04, 0x7d, 0xb8, 0x9a, 0xb3, 0xc0, 0x8f, 0x95, 0x3c, 0x13, 0xab, 0x35, 0x12, 0x86, 0x38, 0x92, 0x1b, 0x09, }; static const unsigned char ecdh_brainpoolp320r1_4149_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4149_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4149 = { .name = "ecdh_brainpoolp320r1_4149", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4149_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4149_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4149_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1778 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4150 for ECDH, tcId is 1779 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4150_peerpubkey[] = { 0x04, 0xd1, 0x14, 0x97, 0x7a, 0xe6, 0x4c, 0xbc, 0xa7, 0x24, 0xfc, 0x51, 0x7d, 0x6b, 0x7b, 0xaf, 0xaf, 0x7c, 0x9e, 0xec, 0x36, 0xd6, 0x82, 0xc1, 0xfd, 0x02, 0xe9, 0xf9, 0xbc, 0xa3, 0x02, 0xb1, 0x49, 0x79, 0x35, 0x82, 0xb3, 0x01, 0xc8, 0xa9, 0x5a, 0xca, 0xb7, 0x75, 0xa1, 0xf9, 0xc6, 0x3d, 0x1e, 0xab, 0x8f, 0x1e, 0x67, 0x42, 0x1c, 0x7d, 0x8d, 0xe1, 0x6f, 0x01, 0x28, 0x16, 0x7a, 0x2f, 0x7e, 0xf8, 0xae, 0x55, 0xfd, 0xa1, 0xb8, 0x3e, 0x97, 0x50, 0x3b, 0x83, 0x23, 0x34, 0x3a, 0x92, }; static const unsigned char ecdh_brainpoolp320r1_4150_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4150_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4150 = { .name = "ecdh_brainpoolp320r1_4150", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4150_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4150_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4150_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1779 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4151 for ECDH, tcId is 1780 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4151_peerpubkey[] = { 0x2e, 0x78, 0x93, 0x5c, 0x77, 0xd5, 0xfc, 0x19, 0x59, 0x28, 0x84, 0x9d, 0x98, 0xb8, 0x1c, 0x79, 0xc8, 0xdc, 0x40, 0x7b, 0xf1, 0x13, 0xbd, 0x1e, 0x3f, 0x49, 0x96, 0x7d, 0x28, 0x8d, 0x7b, 0xf8, 0xc1, 0xcd, 0x85, 0x3a, 0x9a, 0x5f, 0xd8, 0x07, 0x88, 0xe3, 0xe8, 0xeb, 0xdf, 0x07, 0xf7, 0x0c, 0x44, 0x07, 0x5b, 0x8a, 0xd2, 0x17, 0x12, 0x3e, 0x2e, 0xf4, 0x4a, 0xe5, 0x3f, 0x43, 0x06, 0xd0, 0xf1, 0x95, 0x8f, 0x13, 0x11, 0xd0, 0x50, 0x9e, 0x1c, 0x77, 0x54, 0xa6, 0x8a, 0xfd, 0xf7, 0xeb, }; static const unsigned char ecdh_brainpoolp320r1_4151_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4151_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4151 = { .name = "ecdh_brainpoolp320r1_4151", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4151_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4151_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4151_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1780 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4152 for ECDH, tcId is 1781 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4152_peerpubkey[] = { 0x8f, 0x93, 0xa6, 0x51, 0x97, 0x29, 0x32, 0x08, 0x05, 0x29, 0x1a, 0x17, 0x92, 0x5e, 0x6d, 0x42, 0xba, 0x23, 0xdd, 0x25, 0xac, 0xb3, 0xee, 0xa2, 0x9c, 0x18, 0xf1, 0xe5, 0x50, 0xc7, 0xdf, 0xb4, 0x11, 0x82, 0xa9, 0xfd, 0x75, 0x74, 0x7d, 0xf7, 0x71, 0x91, 0xf1, 0x50, 0xaf, 0xa9, 0x79, 0x03, 0x1f, 0x54, 0x62, 0x22, 0xbb, 0xdc, 0x1a, 0xfc, 0x44, 0x8c, 0x66, 0x13, 0xd2, 0x19, 0xa1, 0x09, 0xa0, 0x18, 0xad, 0x34, 0x1b, 0x6b, 0xb5, 0xff, 0xf6, 0x19, 0x39, 0xa2, 0x42, 0xb4, 0x29, 0x68, }; static const unsigned char ecdh_brainpoolp320r1_4152_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4152_sharedsecret[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4152 = { .name = "ecdh_brainpoolp320r1_4152", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4152_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4152_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4152_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1781 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4153 for ECDH, tcId is 1782 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4153_peerpubkey[] = { 0x73, 0xa8, 0x10, 0x1f, 0x25, 0x69, 0x33, 0x7b, 0x61, 0x23, 0x7b, 0x94, 0x10, 0x5f, 0x02, 0xaf, 0x62, 0xaf, 0x56, 0xfe, 0x03, 0x64, 0xa8, 0xb0, 0x6c, 0xfd, 0x0c, 0x65, 0xad, 0x26, 0x89, 0x80, 0x34, 0x82, 0x8d, 0xbd, 0xa0, 0x3b, 0x90, 0xe7, 0x39, 0x4b, 0x1a, 0x51, 0xf0, 0xc3, 0x2e, 0xff, 0xa8, 0x6c, 0x58, 0xc2, 0x8c, 0x5a, 0xe2, 0xef, 0xce, 0x2a, 0x14, 0x7e, 0xb6, 0x95, 0x80, 0x51, 0x9f, 0x31, 0xa5, 0x7a, 0x69, 0x7d, 0x9c, 0x06, 0x9b, 0x97, 0xef, 0x9c, 0x02, 0xf4, 0xbb, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_4153_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4153_sharedsecret[] = { 0x2e, 0x55, 0x44, 0xfd, 0x7d, 0x84, 0x3f, 0x5d, 0xf8, 0x7b, 0xad, 0x44, 0x22, 0xee, 0x2f, 0x10, 0x13, 0x97, 0x48, 0xeb, 0x00, 0x49, 0x74, 0xc3, 0x85, 0x8f, 0x8a, 0x7a, 0x68, 0x9d, 0xf7, 0x92, 0xae, 0x0a, 0xf0, 0x8d, 0xc4, 0x34, 0x14, 0xd9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4153 = { .name = "ecdh_brainpoolp320r1_4153", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4153_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4153_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4153_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1782 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4154 for ECDH, tcId is 1783 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4154_peerpubkey[] = { 0xa8, 0x3d, 0xf8, 0xe6, 0xd9, 0x32, 0x6d, 0x0f, 0x6e, 0x39, 0x9d, 0xb9, 0x09, 0x4f, 0x81, 0xab, 0x8a, 0xf8, 0x46, 0x09, 0x1f, 0x5d, 0x50, 0xf2, 0x20, 0xd2, 0xdc, 0x94, 0xa2, 0x68, 0xc6, 0xa8, 0xd1, 0x1a, 0xde, 0x13, 0xe2, 0x48, 0x4b, 0x25, 0x3a, 0x77, 0x02, 0x79, 0x83, 0xc3, 0xd8, 0xb2, 0xd0, 0xa4, 0xcb, 0x9e, 0xe9, 0x00, 0x8c, 0xbd, 0x8d, 0x34, 0xc5, 0x0f, 0xc6, 0x5a, 0x5a, 0xad, 0x5c, 0x21, 0xf3, 0x32, 0x78, 0x8f, 0x71, 0x98, 0x97, 0xc4, 0x44, 0x47, 0xe0, 0xf1, 0x13, 0x70, }; static const unsigned char ecdh_brainpoolp320r1_4154_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4154_sharedsecret[] = { 0x2e, 0x62, 0xb0, 0x07, 0xe0, 0xe8, 0x33, 0xa4, 0xfe, 0x3a, 0x6b, 0x52, 0x7a, 0x4f, 0xe8, 0x8f, 0x6b, 0xbd, 0x0c, 0xe2, 0x0e, 0x6a, 0x37, 0x4f, 0xb6, 0x47, 0x4d, 0x56, 0x95, 0x6b, 0x6a, 0x0f, 0x80, 0x7f, 0x68, 0x65, 0x2c, 0x8b, 0x0d, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4154 = { .name = "ecdh_brainpoolp320r1_4154", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4154_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4154_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4154_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1783 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4155 for ECDH, tcId is 1784 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4155_peerpubkey[] = { 0xbe, 0xf5, 0x4b, 0x0f, 0xe9, 0x7b, 0x66, 0xcb, 0xfc, 0x62, 0x73, 0x16, 0x45, 0xfe, 0x3c, 0x6f, 0xc1, 0xd5, 0x82, 0xdf, 0xc1, 0x8f, 0xe4, 0x19, 0xfe, 0xfb, 0x8c, 0xbd, 0xb0, 0xc5, 0xfa, 0x17, 0xa3, 0x63, 0xf3, 0x52, 0xed, 0x7b, 0x6b, 0xfa, 0x37, 0xe2, 0x4f, 0x93, 0xec, 0x8d, 0xa5, 0x00, 0x62, 0x93, 0x78, 0x23, 0xba, 0xab, 0x3c, 0x13, 0x8c, 0xf1, 0x33, 0x5e, 0x07, 0xbb, 0x50, 0xc8, 0xa0, 0x5e, 0xd6, 0xa9, 0xbb, 0x9f, 0x82, 0x63, 0x1c, 0x95, 0xf5, 0x00, 0xaa, 0x9f, 0x36, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_4155_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4155_sharedsecret[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4155 = { .name = "ecdh_brainpoolp320r1_4155", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4155_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4155_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4155_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1784 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4156 for ECDH, tcId is 1785 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4156_peerpubkey[] = { 0xab, 0x49, 0xdd, 0x4a, 0x73, 0xe9, 0xf8, 0xe0, 0x59, 0x5b, 0xd8, 0xca, 0x16, 0x55, 0xe2, 0xbc, 0xa6, 0x1f, 0xa2, 0xe1, 0xa3, 0xcc, 0x87, 0x63, 0x5a, 0xe7, 0xa6, 0x1f, 0xdb, 0x7c, 0x9b, 0xd5, 0xa8, 0xe4, 0xe3, 0x4a, 0xa2, 0xb9, 0x28, 0xc9, 0x30, 0x73, 0x2c, 0xcb, 0x23, 0xd3, 0xf5, 0x12, 0xae, 0xda, 0x14, 0x96, 0xa8, 0x4e, 0x7e, 0x75, 0x30, 0x3b, 0x0e, 0xe6, 0x62, 0xd6, 0x11, 0x07, 0xda, 0x8c, 0x67, 0xfe, 0x71, 0x93, 0xde, 0x7c, 0x29, 0x25, 0x14, 0x23, 0x50, 0x1d, 0xf2, 0x09, }; static const unsigned char ecdh_brainpoolp320r1_4156_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4156_sharedsecret[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4156 = { .name = "ecdh_brainpoolp320r1_4156", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4156_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4156_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4156_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1785 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4157 for ECDH, tcId is 1786 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4157_peerpubkey[] = { 0x8f, 0x56, 0x59, 0x11, 0x6b, 0x4a, 0xf2, 0xd0, 0x3d, 0xd2, 0xb3, 0xe7, 0x2c, 0x0d, 0x78, 0xd7, 0x76, 0x77, 0xfe, 0xfb, 0x4e, 0x27, 0x7b, 0xee, 0x2a, 0x49, 0x66, 0xbb, 0xa8, 0x35, 0x4f, 0x85, 0xd8, 0x38, 0x45, 0xb3, 0x3a, 0x43, 0x1a, 0x69, 0x07, 0x92, 0x15, 0x55, 0xc1, 0xac, 0x47, 0x1e, 0x51, 0xe2, 0x6a, 0x0c, 0xc6, 0x7f, 0xb4, 0x14, 0x6d, 0xa0, 0x50, 0x2f, 0xce, 0xe3, 0x8f, 0x5e, 0xf5, 0x02, 0xfc, 0xd4, 0xf9, 0xa3, 0x80, 0xb0, 0x86, 0xaf, 0x5c, 0x40, 0x33, 0x96, 0xc4, 0xf7, }; static const unsigned char ecdh_brainpoolp320r1_4157_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4157_sharedsecret[] = { 0x69, 0x46, 0xec, 0x9b, 0xdd, 0xda, 0xc3, 0x0d, 0xc5, 0x06, 0x0f, 0x5b, 0xdb, 0x41, 0xd2, 0x14, 0x0d, 0x57, 0x06, 0x67, 0x58, 0xe3, 0xb7, 0x3f, 0x0c, 0x50, 0xb5, 0x59, 0x0a, 0xc4, 0x5e, 0x9c, 0x3a, 0x48, 0x30, 0x16, 0xc9, 0x7d, 0x40, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4157 = { .name = "ecdh_brainpoolp320r1_4157", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4157_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4157_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4157_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1786 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4158 for ECDH, tcId is 1787 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4158_peerpubkey[] = { 0x24, 0x3b, 0xd4, 0x50, 0xe7, 0x57, 0xa6, 0xa5, 0x30, 0x8c, 0xb3, 0x66, 0xf8, 0x7c, 0x35, 0x9b, 0x95, 0x3c, 0xb4, 0x2c, 0x6c, 0x61, 0xde, 0x92, 0x3a, 0x24, 0x24, 0x72, 0x17, 0x97, 0x4d, 0x6c, 0xcb, 0x3f, 0x88, 0x69, 0xe8, 0x32, 0x22, 0x7c, 0x64, 0x03, 0x5c, 0x20, 0x66, 0xf2, 0x44, 0x23, 0xfe, 0xe0, 0x04, 0x1a, 0xb5, 0xef, 0x36, 0x1d, 0x1c, 0xa4, 0xbd, 0x19, 0xf3, 0x4f, 0x98, 0x02, 0xf1, 0xfb, 0xcd, 0x2c, 0xc1, 0x32, 0x08, 0x7d, 0x8f, 0x4f, 0x3d, 0x5b, 0x32, 0xe1, 0xb0, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_4158_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4158_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4158 = { .name = "ecdh_brainpoolp320r1_4158", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4158_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4158_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4158_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1787 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4159 for ECDH, tcId is 1788 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4159_peerpubkey[] = { 0x65, 0x67, 0x7d, 0xff, 0x00, 0xf5, 0x89, 0x9c, 0x51, 0x00, 0xc5, 0xce, 0xae, 0xef, 0x38, 0x3d, 0xe4, 0x90, 0x12, 0xe0, 0x05, 0xe8, 0xf7, 0x36, 0x56, 0xca, 0xff, 0x3e, 0x95, 0xdd, 0x12, 0x54, 0xbb, 0xbf, 0xfa, 0x84, 0x0e, 0x20, 0x6e, 0x96, 0x29, 0x35, 0xd7, 0x33, 0x93, 0x0d, 0xbe, 0x01, 0x30, 0x71, 0x47, 0x61, 0xa1, 0xa2, 0x6b, 0xf9, 0xa5, 0x9c, 0xd3, 0x7d, 0xb1, 0x31, 0x1b, 0xae, 0x7a, 0xb2, 0xf9, 0xae, 0x3f, 0x08, 0x27, 0xaa, 0x0a, 0xe2, 0x40, 0xb3, 0x4c, 0xef, 0xb9, 0x7c, }; static const unsigned char ecdh_brainpoolp320r1_4159_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4159_sharedsecret[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4159 = { .name = "ecdh_brainpoolp320r1_4159", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4159_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4159_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4159_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1788 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4160 for ECDH, tcId is 1789 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4160_peerpubkey[] = { 0x63, 0x94, 0xde, 0xfc, 0x20, 0x11, 0x1c, 0xd8, 0xcd, 0xdc, 0x2b, 0x85, 0x45, 0xb9, 0x20, 0x0f, 0x08, 0x07, 0x36, 0xbf, 0x64, 0x38, 0xf2, 0x1c, 0x6f, 0xe0, 0xbc, 0x24, 0x6e, 0x4b, 0xb0, 0xbd, 0xce, 0x1f, 0x11, 0x07, 0xd6, 0xdc, 0x55, 0xb5, 0x36, 0xd0, 0x25, 0x46, 0x1e, 0xfe, 0xf8, 0xec, 0x5d, 0xfa, 0x7f, 0x08, 0x8f, 0xc0, 0x30, 0x70, 0xef, 0xe5, 0x61, 0x58, 0x05, 0x0a, 0xc3, 0x04, 0x2d, 0x12, 0x85, 0xaa, 0x9e, 0xa4, 0x02, 0x15, 0xdf, 0xe5, 0x54, 0x2e, 0x6d, 0x55, 0x90, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_4160_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4160_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4160 = { .name = "ecdh_brainpoolp320r1_4160", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4160_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4160_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4160_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1789 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4161 for ECDH, tcId is 1790 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4161_peerpubkey[] = { 0x0c, 0x11, 0x42, 0xed, 0xac, 0xae, 0x66, 0xff, 0xa6, 0x99, 0x3b, 0xca, 0x13, 0x4c, 0xd4, 0x45, 0x0b, 0x5a, 0xdf, 0x0d, 0x5f, 0x5c, 0x32, 0xe2, 0x14, 0x79, 0xf2, 0x41, 0x9a, 0x90, 0x00, 0xaf, 0xe9, 0x22, 0x67, 0x49, 0xf2, 0x7b, 0xca, 0xd1, 0x13, 0xbe, 0xe3, 0x19, 0xea, 0xc4, 0xe6, 0xc6, 0x92, 0x7d, 0xee, 0xf9, 0x99, 0xd2, 0x50, 0x17, 0x89, 0x0e, 0x95, 0xa6, 0x15, 0xbd, 0x22, 0x27, 0x20, 0xec, 0xbb, 0x22, 0xeb, 0xe2, 0xed, 0x9a, 0xaf, 0xb9, 0x61, 0x0b, 0xfa, 0x7e, 0x77, 0xf9, }; static const unsigned char ecdh_brainpoolp320r1_4161_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4161_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4161 = { .name = "ecdh_brainpoolp320r1_4161", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4161_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4161_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4161_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1790 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4162 for ECDH, tcId is 1791 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4162_peerpubkey[] = { 0x77, 0x02, 0x98, 0x80, 0x7f, 0xbf, 0xc4, 0xf0, 0x84, 0x21, 0x0a, 0x36, 0x14, 0x03, 0xc6, 0xdd, 0x3c, 0x3f, 0x2c, 0x31, 0xbb, 0xf2, 0x0e, 0xc8, 0x51, 0xe1, 0x01, 0x44, 0xfc, 0x83, 0x40, 0xae, 0x7a, 0x77, 0xce, 0xad, 0x74, 0x2b, 0x5d, 0x1d, 0xc4, 0xa9, 0xa8, 0x55, 0xdf, 0x56, 0xa2, 0x13, 0x62, 0x61, 0x40, 0x44, 0xae, 0x94, 0x57, 0x39, 0xc7, 0x07, 0xc0, 0xc8, 0x9b, 0x65, 0xa4, 0x3f, 0xb0, 0x91, 0x06, 0x9b, 0xd4, 0xf6, 0x95, 0xb5, 0x53, 0xc5, 0x83, 0xf5, 0x38, 0x20, 0x6c, 0x35, }; static const unsigned char ecdh_brainpoolp320r1_4162_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4162_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4162 = { .name = "ecdh_brainpoolp320r1_4162", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4162_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4162_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4162_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1791 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4163 for ECDH, tcId is 1792 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4163_peerpubkey[] = { 0xa7, 0x19, 0xed, 0x2e, 0x9f, 0xf2, 0xde, 0xba, 0xc0, 0x71, 0x3b, 0xc4, 0x80, 0x61, 0x81, 0x73, 0x68, 0x85, 0x73, 0x6f, 0x18, 0x3b, 0xe2, 0x41, 0x75, 0xce, 0xd5, 0x14, 0xeb, 0xb7, 0x6a, 0x0e, 0x49, 0xb2, 0x0f, 0x7a, 0x47, 0xbe, 0xc0, 0x44, 0x77, 0x40, 0x55, 0x70, 0x75, 0x8b, 0xb4, 0xa1, 0x83, 0x5f, 0x71, 0x33, 0x8d, 0x39, 0x4a, 0xc7, 0x99, 0xd3, 0x89, 0xa9, 0xa2, 0xb0, 0xaa, 0xb5, 0x61, 0x71, 0x7a, 0x06, 0x42, 0xc6, 0x68, 0xdd, 0x7e, 0x88, 0x52, 0x1f, 0xc0, 0x88, 0x4d, 0xb9, }; static const unsigned char ecdh_brainpoolp320r1_4163_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4163_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4163 = { .name = "ecdh_brainpoolp320r1_4163", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4163_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4163_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4163_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1792 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4164 for ECDH, tcId is 1793 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4164_peerpubkey[] = { 0x23, 0xc0, 0x25, 0x91, 0xb8, 0xee, 0x77, 0x8c, 0x57, 0x80, 0xed, 0x4c, 0x78, 0x39, 0x74, 0xdd, 0xd5, 0xaa, 0x52, 0x11, 0x7d, 0x68, 0xcd, 0xda, 0x1c, 0x37, 0x5c, 0xb7, 0x7d, 0xc3, 0x6f, 0x5f, 0xbe, 0xa9, 0x70, 0x9e, 0x44, 0x61, 0x28, 0x98, 0xc1, 0xf5, 0xfc, 0xb6, 0x7b, 0xd6, 0xb2, 0xbc, 0xc6, 0xff, 0x0b, 0x01, 0x00, 0x3b, 0xe7, 0x55, 0x9c, 0x1c, 0xd0, 0x82, 0x78, 0x47, 0xde, 0x59, 0x43, 0xd5, 0xad, 0xde, 0x9b, 0x85, 0x19, 0xa5, 0x56, 0x75, 0x97, 0x00, 0x51, 0x65, 0x9a, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_4164_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320r1_4164_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4164 = { .name = "ecdh_brainpoolp320r1_4164", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4164_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4164_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4164_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 1793 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4165 for ECDH, tcId is 1794 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4165_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x29, 0x11, 0x02, 0x53, 0xd5, 0x2c, 0xf3, 0xc5, 0xfc, 0x33, 0x82, 0xfc, 0xa9, 0x3d, 0x18, 0xad, 0xf7, 0xb9, 0x79, 0x99, 0x02, 0x87, 0x67, 0xb9, 0x72, 0x23, 0x81, 0xdb, 0x68, 0xfe, 0x3a, 0x41, 0x79, 0x3b, 0x7d, 0x99, 0x52, 0xc6, 0x17, 0x7f, }; static const unsigned char ecdh_brainpoolp320r1_4165_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4165_sharedsecret[] = { 0x2b, 0xab, 0x46, 0x7e, 0xfa, 0x3a, 0xdf, 0x78, 0x23, 0x24, 0x56, 0x3a, 0x4d, 0x8f, 0x19, 0x01, 0x8c, 0xa4, 0x44, 0x58, 0xf6, 0x97, 0x31, 0x8a, 0x11, 0xf3, 0xe3, 0xc2, 0x26, 0x92, 0x75, 0xc7, 0xb1, 0xae, 0xc4, 0x4c, 0xe8, 0x3c, 0xce, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4165 = { .name = "ecdh_brainpoolp320r1_4165", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4165_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4165_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4165_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1794 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4166 for ECDH, tcId is 1795 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4166_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0d, 0x1a, 0x18, 0xc0, 0xb2, 0x5d, 0x0d, 0x32, 0xd9, 0xc4, 0x24, 0x9a, 0x52, 0x3c, 0xfc, 0xc1, 0x2a, 0x20, 0xc2, 0xea, 0xd5, 0x96, 0x60, 0x7d, 0x73, 0x26, 0x08, 0x95, 0x67, 0x63, 0x15, 0xa7, 0x0a, 0xd0, 0x98, 0xe8, 0xb5, 0x1d, 0x25, 0xa8, }; static const unsigned char ecdh_brainpoolp320r1_4166_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4166_sharedsecret[] = { 0x82, 0x9a, 0x5f, 0x7c, 0x66, 0x4d, 0xce, 0x62, 0x1b, 0xa1, 0x37, 0x3c, 0x07, 0x58, 0xd3, 0xd2, 0xb2, 0x98, 0x4d, 0x85, 0xc3, 0x84, 0xcf, 0x00, 0x77, 0x93, 0x0a, 0xe4, 0x90, 0x9f, 0x60, 0x72, 0x73, 0x15, 0x72, 0xec, 0xc3, 0xe4, 0xa1, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4166 = { .name = "ecdh_brainpoolp320r1_4166", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4166_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4166_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4166_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1795 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4167 for ECDH, tcId is 1796 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4167_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x63, 0x8b, 0x53, 0xe2, 0xa2, 0xf4, 0x1d, 0xc6, 0xd6, 0xdc, 0x7b, 0x36, 0x11, 0xa6, 0xdd, 0xe5, 0x4f, 0x7e, 0x8a, 0x7b, 0xb2, 0x68, 0x1a, 0xfa, 0x20, 0x60, 0x10, 0x00, 0x74, 0xe5, 0x12, 0x89, 0xd1, 0x3d, 0x79, 0x25, 0x1d, 0x16, 0x8d, 0xa2, }; static const unsigned char ecdh_brainpoolp320r1_4167_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4167_sharedsecret[] = { 0x81, 0x31, 0xf9, 0x53, 0x88, 0xbd, 0x0c, 0x74, 0xd3, 0xfe, 0xdc, 0x30, 0x77, 0xd7, 0x50, 0x38, 0x2e, 0x90, 0xf7, 0x65, 0xc8, 0x20, 0xe6, 0x08, 0x29, 0x2f, 0xe9, 0x23, 0xc4, 0xf3, 0xc7, 0x6a, 0xc7, 0x7d, 0x6c, 0x2c, 0x05, 0x86, 0x2c, 0x7a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4167 = { .name = "ecdh_brainpoolp320r1_4167", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4167_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4167_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4167_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1796 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4168 for ECDH, tcId is 1797 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4168_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x13, 0xb6, 0x59, 0x9c, 0xb2, 0xe9, 0x90, 0xa4, 0xfe, 0xe4, 0x90, 0xdf, 0xf2, 0x67, 0x36, 0x29, 0x78, 0xa0, 0xe7, 0x6f, 0x57, 0xc5, 0x3b, 0x4e, 0xe8, 0x5f, 0xc3, 0x9c, 0x79, 0x0f, 0x4c, 0x69, 0x69, 0x97, 0x8f, 0xc4, 0x62, 0xe5, 0xa8, 0x47, }; static const unsigned char ecdh_brainpoolp320r1_4168_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4168_sharedsecret[] = { 0x20, 0x3a, 0xb4, 0x8d, 0x6e, 0x3a, 0x11, 0xaf, 0xcb, 0x44, 0x14, 0x0f, 0x0b, 0x65, 0x96, 0xcc, 0x85, 0xdf, 0xe3, 0x9e, 0x58, 0x9d, 0x64, 0xb6, 0x99, 0xdd, 0xb5, 0x47, 0x0e, 0xe2, 0xac, 0x5c, 0xf6, 0x1d, 0x6e, 0xc8, 0x53, 0x4a, 0xac, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4168 = { .name = "ecdh_brainpoolp320r1_4168", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4168_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4168_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4168_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1797 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4169 for ECDH, tcId is 1798 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4169_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x06, 0x3a, 0x91, 0xee, 0x30, 0xc6, 0x3e, 0xb1, 0x5b, 0x1c, 0x0f, 0x21, 0x02, 0xc6, 0xcf, 0x34, 0x38, 0xdd, 0x75, 0xca, 0x71, 0x63, 0x62, 0x38, 0xf8, 0x91, 0xe3, 0x67, 0xc1, 0x05, 0xf0, 0xb7, 0x81, 0xd0, 0x2d, 0xe6, 0x48, 0x39, 0x97, 0x12, 0xa0, }; static const unsigned char ecdh_brainpoolp320r1_4169_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4169_sharedsecret[] = { 0x0f, 0x5a, 0x4a, 0x66, 0x07, 0xbf, 0xd9, 0x3a, 0xa3, 0xd1, 0xed, 0x5a, 0x4a, 0xa5, 0xed, 0x3d, 0x97, 0x35, 0x47, 0xcc, 0x97, 0x82, 0x65, 0x64, 0x9c, 0xc4, 0x7d, 0xae, 0x0c, 0xd3, 0x2b, 0xfe, 0xee, 0xf0, 0x58, 0xe4, 0xe2, 0xed, 0x42, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4169 = { .name = "ecdh_brainpoolp320r1_4169", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4169_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4169_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4169_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1798 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4170 for ECDH, tcId is 1799 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4170_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x30, 0x8f, 0x36, 0xab, 0x8f, 0x37, 0xe9, 0x77, 0x23, 0xb0, 0xaa, 0xdd, 0x7e, 0xe4, 0xdd, 0x58, 0x5b, 0x9e, 0x68, 0xdc, 0x00, 0xdb, 0x42, 0x42, 0xf6, 0xc3, 0xcf, 0x7b, 0x0e, 0xc1, 0x49, 0x7a, 0x26, 0xe6, 0x29, 0xb2, 0x4a, 0x61, 0x3b, 0x3a, }; static const unsigned char ecdh_brainpoolp320r1_4170_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4170_sharedsecret[] = { 0xa6, 0xb0, 0x76, 0x1c, 0x5f, 0xe6, 0x0e, 0x1e, 0x4c, 0x63, 0x70, 0x4e, 0xcb, 0x8a, 0x0d, 0xa1, 0xa9, 0xb8, 0x9c, 0xd5, 0x02, 0xb2, 0x09, 0x1e, 0xb3, 0x7a, 0x41, 0x41, 0x81, 0xaf, 0x99, 0xc4, 0xb4, 0x21, 0xf1, 0x07, 0x86, 0x5a, 0x39, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4170 = { .name = "ecdh_brainpoolp320r1_4170", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4170_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4170_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4170_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1799 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4171 for ECDH, tcId is 1800 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4171_peerpubkey[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x23, 0x1f, 0x9a, 0xef, 0x9b, 0x1a, 0x7c, 0x14, 0x34, 0x85, 0xf6, 0x01, 0x98, 0x0b, 0xfa, 0x4f, 0x7b, 0xc7, 0xb3, 0x12, 0xb0, 0x14, 0x00, 0xbd, 0x1d, 0x15, 0x66, 0x91, 0x97, 0xe0, 0x7f, 0x2e, 0xdf, 0x39, 0xcd, 0x08, 0xc9, 0x05, 0xe2, 0x80, }; static const unsigned char ecdh_brainpoolp320r1_4171_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4171_sharedsecret[] = { 0x8c, 0xcf, 0xba, 0x75, 0x20, 0x52, 0xd1, 0x5c, 0x8c, 0xca, 0x18, 0x1a, 0xbd, 0x9f, 0xde, 0xd4, 0xcb, 0x0c, 0x17, 0x6d, 0xba, 0xdc, 0xca, 0xfe, 0x44, 0xcf, 0x1c, 0xc1, 0x90, 0x7f, 0xc9, 0xba, 0x35, 0x6c, 0x7e, 0x7c, 0x32, 0x89, 0xe1, 0x9e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4171 = { .name = "ecdh_brainpoolp320r1_4171", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4171_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4171_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4171_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1800 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4172 for ECDH, tcId is 1801 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4172_peerpubkey[] = { 0x2e, 0x55, 0x44, 0xfd, 0x7d, 0x84, 0x3f, 0x5d, 0xf8, 0x7b, 0xad, 0x44, 0x22, 0xee, 0x2f, 0x10, 0x13, 0x97, 0x48, 0xeb, 0x00, 0x49, 0x74, 0xc3, 0x85, 0x8f, 0x8a, 0x7a, 0x68, 0x9d, 0xf7, 0x92, 0xae, 0x0a, 0xf0, 0x8d, 0xc4, 0x34, 0x14, 0xd9, 0x2c, 0x64, 0xec, 0xa7, 0x6e, 0x21, 0x96, 0xd0, 0x18, 0x99, 0xac, 0xac, 0x18, 0x24, 0xef, 0xfa, 0x5a, 0x9b, 0x4b, 0x31, 0x67, 0xb2, 0x13, 0x14, 0x77, 0x38, 0x60, 0x06, 0xfc, 0x3a, 0x0f, 0x62, 0x4d, 0x96, 0x84, 0xc9, 0x00, 0xdf, 0x7b, 0x78, }; static const unsigned char ecdh_brainpoolp320r1_4172_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4172_sharedsecret[] = { 0x5e, 0x7e, 0x6b, 0xa6, 0x02, 0xaa, 0x22, 0x08, 0xb1, 0x60, 0x7f, 0x87, 0x96, 0x35, 0xd6, 0xe3, 0xc2, 0x85, 0x68, 0xa7, 0xf7, 0x54, 0xda, 0xe4, 0x48, 0xcf, 0xc7, 0x93, 0xa8, 0x06, 0x00, 0x80, 0x9a, 0xc1, 0x33, 0x81, 0xbc, 0x80, 0x0a, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4172 = { .name = "ecdh_brainpoolp320r1_4172", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4172_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4172_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4172_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1801 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4173 for ECDH, tcId is 1802 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4173_peerpubkey[] = { 0x2e, 0x62, 0xb0, 0x07, 0xe0, 0xe8, 0x33, 0xa4, 0xfe, 0x3a, 0x6b, 0x52, 0x7a, 0x4f, 0xe8, 0x8f, 0x6b, 0xbd, 0x0c, 0xe2, 0x0e, 0x6a, 0x37, 0x4f, 0xb6, 0x47, 0x4d, 0x56, 0x95, 0x6b, 0x6a, 0x0f, 0x80, 0x7f, 0x68, 0x65, 0x2c, 0x8b, 0x0d, 0xed, 0x5b, 0x05, 0x54, 0xbd, 0x70, 0x1c, 0x2b, 0x9e, 0x66, 0x87, 0xe1, 0xb0, 0x13, 0x5d, 0xff, 0x71, 0x5d, 0x53, 0xda, 0xe8, 0x58, 0xfa, 0x77, 0xdf, 0x8e, 0x7e, 0x56, 0x6e, 0xd6, 0x38, 0xf9, 0x72, 0x6a, 0xde, 0x9e, 0xa2, 0xdb, 0x60, 0x10, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_4173_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4173_sharedsecret[] = { 0x9f, 0x60, 0x59, 0xcb, 0xad, 0xa9, 0x7a, 0xb9, 0xf0, 0x82, 0x6b, 0x6a, 0x1b, 0xed, 0xfe, 0x79, 0xb9, 0xc7, 0x5d, 0xa5, 0x1f, 0xc2, 0xfe, 0x26, 0x20, 0x43, 0x6b, 0xff, 0x79, 0xb1, 0x5a, 0xc4, 0x16, 0xb9, 0xed, 0x1a, 0x02, 0x51, 0x36, 0x40, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4173 = { .name = "ecdh_brainpoolp320r1_4173", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4173_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4173_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4173_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1802 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4174 for ECDH, tcId is 1803 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4174_peerpubkey[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, 0x13, 0xef, 0xf0, 0xc8, 0x30, 0x08, 0x73, 0x14, 0x68, 0x78, 0x9c, 0x78, 0x65, 0xe5, 0xc1, 0x7d, 0x5d, 0xe2, 0xda, 0x06, 0x5c, 0x8f, 0x03, 0x9a, 0x74, 0x75, 0xcd, 0x75, 0x88, 0xe0, 0x3e, 0x9a, 0x68, 0xca, 0x08, 0x41, 0xf6, 0xf8, 0x42, 0x9f, }; static const unsigned char ecdh_brainpoolp320r1_4174_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4174_sharedsecret[] = { 0x1a, 0x05, 0x05, 0x8f, 0x31, 0x6d, 0x94, 0xef, 0xa0, 0x82, 0x9e, 0x12, 0xc6, 0x5c, 0x32, 0xa0, 0x12, 0x02, 0xb2, 0x4a, 0x9c, 0xf9, 0x7b, 0x9f, 0x64, 0x99, 0x0a, 0x39, 0xf6, 0x43, 0x45, 0x6d, 0xfb, 0x5a, 0x89, 0x64, 0x9a, 0x8f, 0x68, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4174 = { .name = "ecdh_brainpoolp320r1_4174", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4174_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4174_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4174_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1803 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4175 for ECDH, tcId is 1804 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4175_peerpubkey[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, 0x0e, 0x75, 0xf2, 0x18, 0xe1, 0x22, 0xda, 0xc1, 0xd4, 0x6f, 0x0c, 0x09, 0xe4, 0x9b, 0x92, 0xc1, 0x67, 0x79, 0x8a, 0x6b, 0x45, 0x8e, 0x66, 0x60, 0xc8, 0xc1, 0x0f, 0xb3, 0x85, 0x8d, 0x89, 0xa5, 0xf5, 0x46, 0xa3, 0x01, 0x40, 0x6d, 0x45, 0x6f, }; static const unsigned char ecdh_brainpoolp320r1_4175_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4175_sharedsecret[] = { 0x1f, 0x9a, 0xe2, 0x4d, 0x00, 0x82, 0xd8, 0xa1, 0x03, 0x84, 0x20, 0x86, 0xfa, 0xe9, 0x1d, 0xa6, 0x16, 0xc1, 0xb0, 0xd2, 0x60, 0x07, 0xdb, 0x2f, 0x75, 0x5a, 0x8f, 0xb0, 0xdd, 0x17, 0x20, 0x20, 0x58, 0x95, 0xa1, 0xea, 0xd8, 0x8b, 0x2a, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4175 = { .name = "ecdh_brainpoolp320r1_4175", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4175_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4175_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4175_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1804 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4176 for ECDH, tcId is 1805 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4176_peerpubkey[] = { 0x69, 0x46, 0xec, 0x9b, 0xdd, 0xda, 0xc3, 0x0d, 0xc5, 0x06, 0x0f, 0x5b, 0xdb, 0x41, 0xd2, 0x14, 0x0d, 0x57, 0x06, 0x67, 0x58, 0xe3, 0xb7, 0x3f, 0x0c, 0x50, 0xb5, 0x59, 0x0a, 0xc4, 0x5e, 0x9c, 0x3a, 0x48, 0x30, 0x16, 0xc9, 0x7d, 0x40, 0x9d, 0x0e, 0xce, 0x7c, 0x2c, 0xf1, 0xc5, 0xa4, 0x6c, 0x15, 0xc6, 0xff, 0x81, 0x4b, 0x12, 0x52, 0x59, 0x3c, 0xb5, 0x32, 0x62, 0x1f, 0xe1, 0x4c, 0x7f, 0x55, 0x77, 0x62, 0x91, 0x1a, 0x16, 0x6e, 0x46, 0xb9, 0xb7, 0xa3, 0xd4, 0xb9, 0xaa, 0x9f, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_4176_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4176_sharedsecret[] = { 0x01, 0x98, 0x03, 0x73, 0xc0, 0xa3, 0xa0, 0x0b, 0xe8, 0xb3, 0x0b, 0x1a, 0xfb, 0x81, 0x23, 0xb0, 0x32, 0xa7, 0x05, 0x4b, 0x16, 0xb5, 0x10, 0x16, 0xbe, 0x94, 0xf5, 0xd9, 0xf5, 0xdd, 0x8a, 0x5a, 0x5f, 0x19, 0xe0, 0x80, 0x7f, 0x6c, 0x27, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4176 = { .name = "ecdh_brainpoolp320r1_4176", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4176_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4176_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4176_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1805 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4177 for ECDH, tcId is 1806 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4177_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x02, 0x53, 0x68, 0xd4, 0x4d, 0x77, 0x06, 0x40, 0x8e, 0x18, 0x11, 0x8e, 0x83, 0x38, 0xb5, 0xa8, 0xf6, 0x5d, 0xcb, 0x4f, 0x7a, 0xc1, 0x88, 0x4d, 0x97, 0xa4, 0x4d, 0x23, 0x5b, 0x8c, 0x89, 0xe5, 0xc2, 0x40, 0x57, 0x66, 0x80, 0xe6, 0xde, 0xf6, }; static const unsigned char ecdh_brainpoolp320r1_4177_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4177_sharedsecret[] = { 0x8c, 0x14, 0xfa, 0x61, 0xbe, 0x79, 0xee, 0x09, 0x6d, 0xcf, 0x6a, 0x2c, 0xd3, 0x1a, 0xaa, 0xb4, 0x22, 0xb9, 0x81, 0x61, 0x47, 0x6c, 0x02, 0xe7, 0x1a, 0x18, 0x16, 0x8e, 0xaf, 0x31, 0x85, 0xac, 0x51, 0x5f, 0x6e, 0x45, 0x1a, 0xf5, 0xe2, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4177 = { .name = "ecdh_brainpoolp320r1_4177", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4177_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4177_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4177_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1806 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4178 for ECDH, tcId is 1807 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4178_peerpubkey[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x1a, 0x2b, 0x8d, 0x3c, 0x67, 0x30, 0x5d, 0xe2, 0x15, 0x01, 0xcd, 0x7c, 0x43, 0xad, 0x4c, 0xd9, 0xa5, 0x74, 0x59, 0xc4, 0x2e, 0x6f, 0xda, 0xc1, 0xe2, 0xcb, 0x37, 0x95, 0x27, 0x03, 0xff, 0xdc, 0xcd, 0x18, 0xfc, 0xb3, 0x26, 0xa2, 0xe0, 0xc7, }; static const unsigned char ecdh_brainpoolp320r1_4178_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4178_sharedsecret[] = { 0x61, 0x48, 0x2d, 0x66, 0x7b, 0xe2, 0xa2, 0xd7, 0xbf, 0xcb, 0xd7, 0x5b, 0x9e, 0x81, 0x40, 0xea, 0x37, 0x81, 0x3e, 0xde, 0x1f, 0xd4, 0x4e, 0xb0, 0x46, 0xf4, 0x36, 0xa4, 0xd6, 0x72, 0x78, 0x46, 0x43, 0xd0, 0xd8, 0x4b, 0x1c, 0x82, 0xf5, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4178 = { .name = "ecdh_brainpoolp320r1_4178", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4178_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4178_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4178_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1807 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4179 for ECDH, tcId is 1808 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4179_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x25, 0xa0, 0xdc, 0x38, 0x9b, 0xcd, 0xc8, 0x5d, 0x84, 0x34, 0xb2, 0xc6, 0x15, 0xd1, 0x09, 0x2b, 0x54, 0x6d, 0x78, 0x08, 0x97, 0x8f, 0x2d, 0x0c, 0xd3, 0xb3, 0xf1, 0x7f, 0x57, 0xa2, 0x77, 0x4c, 0x88, 0x3f, 0xc5, 0xfa, 0xd7, 0x9e, 0xd3, 0x2d, }; static const unsigned char ecdh_brainpoolp320r1_4179_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4179_sharedsecret[] = { 0xc5, 0x86, 0x15, 0x2d, 0x74, 0x16, 0xca, 0x85, 0xeb, 0x55, 0x48, 0x6e, 0xc2, 0x91, 0x4a, 0x78, 0xa3, 0xd9, 0x9a, 0x24, 0x0d, 0x7d, 0x26, 0x57, 0xd5, 0x4a, 0x2c, 0x8c, 0x15, 0x40, 0xb3, 0x49, 0x38, 0x0a, 0x15, 0x1c, 0x96, 0x69, 0xa1, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4179 = { .name = "ecdh_brainpoolp320r1_4179", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4179_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4179_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4179_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1808 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4180 for ECDH, tcId is 1809 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4180_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x01, 0x03, 0x04, 0x32, 0x04, 0x4d, 0xdf, 0x1b, 0x15, 0x86, 0xc5, 0x1d, 0xee, 0xc0, 0x30, 0x6d, 0x02, 0xd8, 0x8e, 0x54, 0xbc, 0x2a, 0x2d, 0xc6, 0xc7, 0xe6, 0x58, 0x95, 0x89, 0x16, 0x33, 0xf8, 0x66, 0xad, 0xdb, 0x9d, 0xe1, 0xad, 0x32, 0xa8, 0xbc, }; static const unsigned char ecdh_brainpoolp320r1_4180_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4180_sharedsecret[] = { 0xc1, 0x1b, 0x2d, 0xca, 0x66, 0x72, 0x80, 0x2c, 0x85, 0x28, 0xaf, 0x2c, 0x84, 0xb1, 0xa0, 0x4e, 0x59, 0xc9, 0xa2, 0x2b, 0xb2, 0x71, 0xbd, 0x6d, 0x75, 0x68, 0x09, 0x2b, 0xab, 0xd2, 0xf2, 0x3e, 0xfc, 0x06, 0x3a, 0xb2, 0x48, 0xa2, 0x71, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4180 = { .name = "ecdh_brainpoolp320r1_4180", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4180_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4180_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4180_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1809 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4181 for ECDH, tcId is 1810 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4181_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x65, 0xf8, 0x97, 0x31, 0xc0, 0x26, 0x3d, 0x13, 0xaa, 0xa8, 0xca, 0x7b, 0x3d, 0xad, 0xea, 0x10, 0xc4, 0x6d, 0x72, 0x43, 0x88, 0x3d, 0x7c, 0xab, 0x72, 0x6d, 0x46, 0x3b, 0x25, 0x4d, 0xf6, 0xef, 0x72, 0x8b, 0x52, 0xd8, 0xbb, 0xfb, 0x06, 0xee, }; static const unsigned char ecdh_brainpoolp320r1_4181_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4181_sharedsecret[] = { 0xaa, 0x2e, 0x1b, 0xa6, 0xb5, 0x08, 0x02, 0x6b, 0x96, 0x7a, 0xb3, 0x55, 0xb9, 0x93, 0x18, 0xbc, 0x39, 0x4f, 0xc0, 0xd3, 0xcf, 0xab, 0xbb, 0x24, 0x68, 0x04, 0xdd, 0xb5, 0xf9, 0x13, 0xe6, 0xef, 0x6b, 0xc0, 0xa2, 0x28, 0x31, 0x1b, 0xed, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4181 = { .name = "ecdh_brainpoolp320r1_4181", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4181_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4181_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4181_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1810 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4182 for ECDH, tcId is 1811 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4182_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x8c, 0x04, 0x47, 0x7f, 0x42, 0xd1, 0x65, 0xe4, 0xd4, 0x74, 0x24, 0x8d, 0x09, 0x1a, 0xd7, 0x42, 0x20, 0xde, 0x20, 0x21, 0xd0, 0xca, 0x8f, 0x9f, 0x72, 0x95, 0xc7, 0xcc, 0x19, 0xc7, 0x87, 0xf9, 0x4e, 0xc3, 0x3a, 0x2e, 0x4d, 0x51, 0xee, }; static const unsigned char ecdh_brainpoolp320r1_4182_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4182_sharedsecret[] = { 0x53, 0x97, 0xc3, 0xd5, 0x66, 0x3f, 0x5f, 0xcc, 0x47, 0x05, 0xec, 0xeb, 0xa8, 0x25, 0x5e, 0x89, 0xce, 0xa1, 0x74, 0x7a, 0xd0, 0xd0, 0x8d, 0x40, 0xb7, 0xa1, 0xae, 0xe0, 0x11, 0x93, 0xb5, 0xdf, 0x95, 0x93, 0xf8, 0x01, 0x3c, 0x5d, 0xfb, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4182 = { .name = "ecdh_brainpoolp320r1_4182", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4182_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4182_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4182_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1811 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4183 for ECDH, tcId is 1812 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4183_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x04, 0xf2, 0x45, 0x5c, 0xdb, 0x03, 0x5b, 0x0c, 0xd4, 0x42, 0x2a, 0x3c, 0xa0, 0x6b, 0xb1, 0x9b, 0xf0, 0x18, 0xd1, 0xa5, 0xcb, 0x84, 0xeb, 0x12, 0x44, 0x6d, 0x47, 0xf7, 0xf7, 0xa1, 0x6c, 0x03, 0x5c, 0x70, 0x95, 0x1b, 0x4b, 0x6b, 0xad, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_4183_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4183_sharedsecret[] = { 0x20, 0xc7, 0x90, 0xcf, 0x41, 0x72, 0x3c, 0x9d, 0x57, 0x57, 0xb1, 0xee, 0xc1, 0xff, 0x88, 0xef, 0x16, 0xcb, 0xb6, 0x32, 0x87, 0x9c, 0xdc, 0xe4, 0x7f, 0xcb, 0x58, 0x32, 0x62, 0xa7, 0xa6, 0x77, 0x5c, 0x44, 0x86, 0xdf, 0x30, 0x1d, 0xf5, 0xf5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4183 = { .name = "ecdh_brainpoolp320r1_4183", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4183_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4183_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4183_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 1812 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4184 for ECDH, tcId is 1813 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4184_peerpubkey[] = { 0xc3, 0xc0, 0xa0, 0xcb, 0x3e, 0x5a, 0x3e, 0x6a, 0xc7, 0x94, 0xa0, 0xd7, 0x32, 0x6c, 0xd9, 0x8c, 0x56, 0x5c, 0x56, 0x55, 0x36, 0xa6, 0x8d, 0x35, 0x78, 0xb3, 0x69, 0xa9, 0x98, 0x48, 0xd7, 0x48, 0x75, 0x48, 0xc6, 0x48, 0xc7, 0xce, 0x43, 0xa7, 0x62, 0xb9, 0xc8, 0x3b, 0x6a, 0xad, 0xea, 0x1e, 0x64, 0xe3, 0xf6, 0x9d, 0xf7, 0x61, 0xf2, 0x0c, 0x61, 0x74, 0x54, 0xa4, 0x0a, 0x57, 0xb7, 0x50, 0xb0, 0xf6, 0x60, 0x4a, 0xed, 0x46, 0x83, 0x63, 0x80, 0x5e, 0x54, 0x1c, 0xde, 0x79, 0xca, 0x8a, }; static const unsigned char ecdh_brainpoolp320r1_4184_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4184_sharedsecret[] = { 0xad, 0x83, 0x78, 0x1e, 0x75, 0x9c, 0xcc, 0x60, 0x6d, 0xa1, 0x8b, 0xa8, 0x77, 0x13, 0xf9, 0x0e, 0x91, 0x20, 0xe6, 0x6a, 0xa6, 0x63, 0xc3, 0x93, 0x94, 0xcd, 0x40, 0xf7, 0x25, 0x67, 0xbe, 0xf9, 0xb8, 0xe7, 0xa2, 0x47, 0x5d, 0xb7, 0xe1, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4184 = { .name = "ecdh_brainpoolp320r1_4184", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4184_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4184_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4184_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1813 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4185 for ECDH, tcId is 1814 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4185_peerpubkey[] = { 0xc4, 0xc6, 0xb5, 0x08, 0x12, 0x1d, 0xf7, 0xc4, 0xff, 0xb9, 0x47, 0xfe, 0xd3, 0x0b, 0xa4, 0xd1, 0x7c, 0xb7, 0x8f, 0x55, 0x6b, 0x23, 0x73, 0xcf, 0x48, 0x95, 0x74, 0x32, 0xa8, 0xea, 0xd5, 0x28, 0x4a, 0xe9, 0x78, 0xf7, 0x9e, 0x7a, 0x30, 0xc8, 0x55, 0xaf, 0x67, 0xcd, 0x8d, 0x37, 0xb0, 0x54, 0x19, 0x5e, 0x8a, 0xc6, 0xdb, 0x76, 0xa5, 0x87, 0xc2, 0x80, 0x67, 0xd7, 0x3f, 0x9f, 0xf9, 0x51, 0x77, 0x1f, 0x11, 0xd7, 0x88, 0xc0, 0x97, 0xcc, 0xfb, 0x18, 0x49, 0x17, 0xe1, 0x5c, 0x78, 0x74, }; static const unsigned char ecdh_brainpoolp320r1_4185_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4185_sharedsecret[] = { 0x75, 0x06, 0x24, 0x91, 0xbe, 0xcc, 0xe0, 0x1b, 0x25, 0xf5, 0x80, 0x85, 0xe0, 0x33, 0x0f, 0xcd, 0x22, 0xec, 0x1a, 0xfc, 0x61, 0xdf, 0x92, 0xc8, 0x58, 0x4e, 0xbe, 0x9c, 0x84, 0xcd, 0x30, 0x8a, 0x36, 0x19, 0xa9, 0xa0, 0x0c, 0xd6, 0xf0, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4185 = { .name = "ecdh_brainpoolp320r1_4185", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4185_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4185_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4185_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 1814 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4186 for ECDH, tcId is 1815 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4186_peerpubkey[] = { 0x17, 0x30, 0x99, 0x37, 0xc5, 0x0a, 0x7b, 0x08, 0x09, 0x01, 0xda, 0xdf, 0xad, 0x0f, 0xef, 0x03, 0xe6, 0xec, 0xd2, 0x53, 0x20, 0x03, 0xa4, 0x65, 0x1d, 0xab, 0x6c, 0x3c, 0x9e, 0x0b, 0x9d, 0x50, 0xd7, 0xb1, 0xfe, 0xec, 0x3a, 0x34, 0x2c, 0x42, 0x5a, 0xfc, 0xd8, 0xd9, 0x79, 0xd9, 0xaf, 0x01, 0xac, 0x08, 0xd8, 0xad, 0x86, 0x82, 0x6e, 0xe0, 0x95, 0xe6, 0x47, 0xac, 0x40, 0x6f, 0x39, 0xf0, 0x5b, 0xc3, 0x4e, 0x6a, 0xca, 0x15, 0x9b, 0x5f, 0xca, 0x94, 0xba, 0x98, 0x82, 0x9e, 0x50, 0x5e, }; static const unsigned char ecdh_brainpoolp320r1_4186_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4186_sharedsecret[] = { 0x76, 0xe9, 0xc8, 0x6c, 0x1c, 0x5f, 0x0a, 0xab, 0x62, 0x9c, 0x26, 0xb6, 0x55, 0x9d, 0x76, 0x44, 0x77, 0x7a, 0x39, 0xd4, 0x67, 0xc3, 0xcf, 0x0d, 0xed, 0x0e, 0xec, 0xb2, 0xc0, 0xe2, 0x11, 0xce, 0xd1, 0x04, 0xff, 0xb9, 0x94, 0xe0, 0x19, 0xc8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4186 = { .name = "ecdh_brainpoolp320r1_4186", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4186_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4186_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4186_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1815 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4187 for ECDH, tcId is 1816 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4187_peerpubkey[] = { 0x61, 0x69, 0x6b, 0x1d, 0x26, 0x3a, 0x26, 0x7e, 0xe0, 0xcd, 0xf8, 0xff, 0x89, 0x64, 0x84, 0xcb, 0x8e, 0x4e, 0xe9, 0x99, 0x1e, 0xc7, 0x31, 0x61, 0xa9, 0x65, 0x96, 0x7f, 0xcc, 0x3b, 0xb1, 0xd4, 0xc8, 0xc1, 0x6f, 0xe2, 0xe9, 0x75, 0xd9, 0x63, 0x8d, 0x45, 0xa2, 0x39, 0xb3, 0x09, 0x75, 0x0f, 0xd2, 0xd8, 0x4f, 0x5b, 0x55, 0xa4, 0x90, 0x90, 0xfe, 0x7e, 0x76, 0x0a, 0x66, 0xd0, 0xd0, 0x85, 0xf1, 0x8d, 0xa3, 0x21, 0x33, 0xc1, 0x63, 0xb3, 0x62, 0x9e, 0xa9, 0x7d, 0xeb, 0xba, 0x49, 0x99, }; static const unsigned char ecdh_brainpoolp320r1_4187_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4187_sharedsecret[] = { 0x10, 0xca, 0xef, 0xa6, 0x0c, 0xbe, 0x1d, 0x9f, 0x15, 0xe7, 0x21, 0x9f, 0x90, 0x65, 0x4c, 0x32, 0xc0, 0x63, 0x22, 0x75, 0x41, 0xf3, 0xd1, 0xba, 0x0c, 0xde, 0x2c, 0x15, 0x7e, 0x82, 0x3d, 0x0a, 0xe4, 0x0a, 0xa1, 0xf5, 0x7b, 0xef, 0x66, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4187 = { .name = "ecdh_brainpoolp320r1_4187", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4187_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4187_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4187_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1816 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4188 for ECDH, tcId is 1817 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4188_peerpubkey[] = { 0x3a, 0xce, 0x87, 0x48, 0xbf, 0x11, 0xb1, 0x43, 0x9e, 0xe7, 0x6a, 0x36, 0x14, 0x69, 0xc8, 0x0c, 0xc6, 0xd9, 0x99, 0x72, 0x64, 0x09, 0xd5, 0x59, 0x7e, 0xea, 0x79, 0x84, 0xbf, 0x8b, 0xda, 0xda, 0x5d, 0x62, 0x97, 0x38, 0x48, 0xf0, 0x21, 0xf4, 0x4a, 0x64, 0x79, 0x92, 0x35, 0x39, 0x36, 0x6b, 0x5a, 0x48, 0x1c, 0xaf, 0x09, 0x40, 0x78, 0xe9, 0xe5, 0x1c, 0x56, 0xe6, 0x8b, 0x49, 0x12, 0xae, 0x07, 0x2c, 0x65, 0x31, 0xe5, 0xe1, 0xd0, 0xd9, 0x24, 0x9b, 0x6b, 0xaf, 0xc4, 0x15, 0xa7, 0x0c, }; static const unsigned char ecdh_brainpoolp320r1_4188_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4188_sharedsecret[] = { 0x0e, 0x13, 0x79, 0xe1, 0xf9, 0x68, 0x71, 0x95, 0x71, 0xc4, 0xd2, 0x77, 0xf3, 0x6c, 0x83, 0xc5, 0xfe, 0x4c, 0x6c, 0xea, 0xdf, 0xa9, 0x97, 0x5d, 0xc7, 0x7d, 0x7a, 0xc4, 0x9d, 0x8a, 0x4f, 0x0c, 0xc3, 0xd4, 0xc4, 0x73, 0x6d, 0xe0, 0x25, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4188 = { .name = "ecdh_brainpoolp320r1_4188", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4188_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4188_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4188_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1817 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4189 for ECDH, tcId is 1818 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4189_peerpubkey[] = { 0x33, 0x67, 0xb7, 0x9c, 0xa5, 0x53, 0xef, 0xbe, 0xa2, 0x3f, 0x54, 0x47, 0xb2, 0xe2, 0x87, 0xfe, 0x90, 0x83, 0x62, 0xe2, 0xde, 0x5a, 0xe1, 0x2f, 0x63, 0x51, 0xa5, 0x85, 0x1c, 0x7a, 0xbb, 0x27, 0x99, 0xc5, 0xe7, 0x81, 0x1a, 0x3d, 0xfc, 0xda, 0x9d, 0x6f, 0x29, 0x28, 0xe9, 0x21, 0x31, 0x03, 0x09, 0x32, 0xd1, 0xd5, 0x3d, 0xac, 0xd6, 0x06, 0x5c, 0xc1, 0xfb, 0x74, 0x14, 0x42, 0x15, 0xb1, 0x40, 0xf1, 0xca, 0x4f, 0x7e, 0x63, 0x97, 0xe7, 0x44, 0xa9, 0x53, 0x29, 0x32, 0x35, 0x0d, 0xaa, }; static const unsigned char ecdh_brainpoolp320r1_4189_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4189_sharedsecret[] = { 0x94, 0xf4, 0x25, 0x11, 0x39, 0xac, 0xf4, 0xd8, 0xea, 0x84, 0x5e, 0x08, 0xf6, 0x6c, 0x66, 0x02, 0x46, 0x83, 0xa8, 0x72, 0xfe, 0x3d, 0xb3, 0x23, 0xdb, 0xa4, 0x3c, 0x3a, 0x0a, 0x4d, 0xd2, 0xb4, 0x79, 0xf3, 0xa3, 0xf5, 0x2b, 0xda, 0xd1, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4189 = { .name = "ecdh_brainpoolp320r1_4189", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4189_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4189_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4189_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1818 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4190 for ECDH, tcId is 1819 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4190_peerpubkey[] = { 0x0a, 0xb3, 0xe0, 0x41, 0xdc, 0xe7, 0x8e, 0x43, 0xa0, 0xd7, 0x31, 0x22, 0xf0, 0x5c, 0xce, 0x75, 0xfa, 0xc5, 0x6d, 0xf8, 0x29, 0x68, 0x5f, 0xec, 0x71, 0xda, 0xa4, 0x97, 0xa1, 0xf8, 0x08, 0xc1, 0xa8, 0xee, 0x89, 0x3e, 0x56, 0x01, 0x03, 0xb3, 0x0f, 0x4b, 0xe3, 0x3b, 0x0a, 0x5d, 0xd3, 0x19, 0xac, 0xc8, 0xe6, 0xe0, 0xa4, 0x61, 0xb2, 0x30, 0x5a, 0x31, 0x2e, 0x76, 0xe2, 0xe8, 0x49, 0x1d, 0x57, 0xe2, 0xc9, 0xd1, 0x58, 0x64, 0x00, 0x97, 0xed, 0x62, 0xf0, 0x0b, 0x32, 0x5f, 0xf3, 0x6b, }; static const unsigned char ecdh_brainpoolp320r1_4190_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4190_sharedsecret[] = { 0x22, 0xab, 0x7b, 0xa4, 0x79, 0x9d, 0x1d, 0x5d, 0x57, 0x16, 0x14, 0x67, 0x51, 0xae, 0x36, 0x8c, 0xe7, 0x87, 0x38, 0x53, 0x82, 0xb6, 0x2d, 0xf4, 0xba, 0xc7, 0x77, 0x7c, 0xed, 0x19, 0xb5, 0x83, 0x91, 0x09, 0xbb, 0x89, 0x62, 0x2e, 0xd6, 0x98, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4190 = { .name = "ecdh_brainpoolp320r1_4190", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4190_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4190_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4190_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1819 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4191 for ECDH, tcId is 1820 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4191_peerpubkey[] = { 0x90, 0xdd, 0xd0, 0xf5, 0x58, 0x0f, 0xe5, 0xf8, 0x7e, 0x8f, 0x21, 0xc9, 0x94, 0x47, 0xd5, 0x4c, 0x41, 0x27, 0x16, 0x55, 0xb9, 0x71, 0xc4, 0x40, 0x93, 0x80, 0x84, 0x8e, 0xe7, 0xe3, 0x31, 0xef, 0xa0, 0x63, 0x9a, 0xdf, 0xcd, 0x1e, 0x48, 0xc1, 0xad, 0x3b, 0xee, 0x32, 0xcb, 0xdf, 0x0a, 0xd5, 0x13, 0xf3, 0x57, 0xb5, 0x49, 0x0c, 0x39, 0xba, 0x2c, 0x17, 0x01, 0xb5, 0x90, 0xb4, 0x4c, 0x9a, 0x84, 0xad, 0xe1, 0x28, 0xfb, 0xb3, 0xc2, 0x01, 0x5b, 0x48, 0x48, 0x07, 0x39, 0xc0, 0x35, 0xb2, }; static const unsigned char ecdh_brainpoolp320r1_4191_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4191_sharedsecret[] = { 0x9b, 0x89, 0x5a, 0xd9, 0x9a, 0xc4, 0xfe, 0x1a, 0x3e, 0xeb, 0x53, 0x37, 0xb0, 0x35, 0xbb, 0x64, 0xf5, 0x81, 0xc0, 0xf3, 0xca, 0x27, 0x1c, 0xca, 0xdd, 0xdf, 0xd8, 0x8a, 0x9d, 0x08, 0x92, 0x66, 0x0b, 0xdb, 0x4f, 0x9a, 0xd1, 0x90, 0x8b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4191 = { .name = "ecdh_brainpoolp320r1_4191", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4191_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4191_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4191_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1820 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4192 for ECDH, tcId is 1821 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4192_peerpubkey[] = { 0x04, 0xc0, 0xc9, 0x43, 0xbb, 0xdf, 0xcd, 0xc1, 0x2e, 0x8b, 0x4b, 0xce, 0x80, 0xd2, 0x58, 0xcf, 0x5b, 0xcc, 0x9a, 0x0d, 0xd7, 0x2a, 0x7e, 0x83, 0xe2, 0x00, 0xf8, 0xd6, 0x37, 0x6c, 0x10, 0x0f, 0xd4, 0x1d, 0xfb, 0x69, 0x1e, 0x65, 0xf3, 0x83, 0x4e, 0x74, 0x75, 0x9c, 0x85, 0x69, 0x98, 0xe7, 0xe5, 0x5b, 0x8b, 0x57, 0xa3, 0x85, 0x5b, 0xff, 0x6c, 0xa9, 0xea, 0x63, 0x6c, 0xb7, 0x6a, 0xad, 0x77, 0xa9, 0xa0, 0xf4, 0xf7, 0xf9, 0xdd, 0xf0, 0x40, 0x03, 0xc7, 0xc0, 0x2f, 0x36, 0xf6, 0x04, }; static const unsigned char ecdh_brainpoolp320r1_4192_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4192_sharedsecret[] = { 0x8b, 0x21, 0x88, 0xcb, 0xa5, 0x24, 0x10, 0xb3, 0xd1, 0xe1, 0xaf, 0xcd, 0xa1, 0xc1, 0xf7, 0x18, 0xb2, 0xe8, 0x2b, 0x90, 0x4e, 0xb9, 0xc0, 0xd0, 0x06, 0x53, 0xeb, 0x12, 0x1d, 0xce, 0xaa, 0xf8, 0x42, 0x96, 0xca, 0x73, 0x6b, 0xa4, 0x47, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4192 = { .name = "ecdh_brainpoolp320r1_4192", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4192_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4192_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4192_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1821 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4193 for ECDH, tcId is 1822 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4193_peerpubkey[] = { 0x23, 0x74, 0x9d, 0x53, 0xf0, 0xa7, 0x31, 0x19, 0xb7, 0xbc, 0xc0, 0x84, 0xa1, 0xda, 0x7d, 0x22, 0x98, 0x90, 0x72, 0x53, 0x28, 0x2a, 0x4a, 0x94, 0xa8, 0x2c, 0xd5, 0x98, 0x73, 0x4f, 0x8f, 0x2f, 0xab, 0x7b, 0x32, 0x70, 0xf0, 0xa9, 0xc5, 0xc2, 0x6a, 0xbe, 0xb4, 0x6f, 0x96, 0xf9, 0x07, 0x44, 0xa3, 0x55, 0xac, 0xf9, 0x82, 0xa2, 0x24, 0xfd, 0xfc, 0xf5, 0x6a, 0x98, 0xea, 0xf0, 0xf6, 0xe1, 0x49, 0x7f, 0xd9, 0x3e, 0xab, 0x65, 0x03, 0x7b, 0x59, 0x41, 0x5b, 0x63, 0xed, 0x61, 0x0f, 0x16, }; static const unsigned char ecdh_brainpoolp320r1_4193_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4193_sharedsecret[] = { 0x42, 0xc2, 0x11, 0xfa, 0x06, 0x15, 0x65, 0xfe, 0x17, 0xa8, 0x5e, 0x71, 0x6f, 0x5e, 0xae, 0x22, 0x2b, 0x96, 0x0b, 0x60, 0xde, 0x85, 0x65, 0x7f, 0xdc, 0x6e, 0x26, 0x48, 0x84, 0xb8, 0xdf, 0x79, 0x02, 0xa5, 0x3e, 0x90, 0x26, 0xe4, 0x19, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4193 = { .name = "ecdh_brainpoolp320r1_4193", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4193_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4193_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4193_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1822 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4194 for ECDH, tcId is 1823 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4194_peerpubkey[] = { 0x7d, 0x87, 0x1d, 0xf2, 0x17, 0xeb, 0x2f, 0xb0, 0x73, 0x3e, 0xbf, 0x22, 0x2e, 0xe4, 0x76, 0x45, 0x53, 0xf7, 0x83, 0xeb, 0xa5, 0x87, 0x21, 0x22, 0x5f, 0xed, 0x5f, 0xbb, 0x1b, 0xcc, 0x65, 0x42, 0x35, 0xd2, 0x90, 0xf6, 0x2a, 0x61, 0xf0, 0x2f, 0xb2, 0xb3, 0xc2, 0x41, 0xe2, 0x21, 0x92, 0xab, 0x7b, 0x70, 0x5c, 0x44, 0xe0, 0xed, 0x33, 0xe9, 0xb5, 0x89, 0x30, 0x11, 0x4b, 0x4e, 0x43, 0x42, 0xff, 0x86, 0x5f, 0x2b, 0x39, 0xfd, 0xe6, 0xc2, 0xf8, 0x6f, 0xd2, 0xb4, 0xc1, 0xf3, 0x0c, 0x8e, }; static const unsigned char ecdh_brainpoolp320r1_4194_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4194_sharedsecret[] = { 0x21, 0x52, 0xa8, 0x57, 0xbf, 0x30, 0xe1, 0x18, 0x94, 0xa8, 0xdc, 0xde, 0x94, 0x2e, 0x0b, 0x4c, 0x4f, 0x22, 0x64, 0x9c, 0xc6, 0x7c, 0x62, 0x4c, 0xc1, 0x2d, 0xf9, 0x60, 0x02, 0xc0, 0x2d, 0x04, 0x32, 0xf7, 0x29, 0xc1, 0x32, 0x11, 0x72, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4194 = { .name = "ecdh_brainpoolp320r1_4194", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4194_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4194_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4194_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1823 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4195 for ECDH, tcId is 1824 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4195_peerpubkey[] = { 0xca, 0x34, 0xb0, 0x92, 0x18, 0xd1, 0x38, 0xb4, 0x68, 0xdd, 0x6e, 0x71, 0x42, 0x29, 0x6b, 0x61, 0xbd, 0x68, 0xd0, 0x81, 0x5e, 0x90, 0x56, 0x04, 0xcc, 0x0b, 0x5e, 0x84, 0x2d, 0x4e, 0x9c, 0x48, 0x63, 0x81, 0xa8, 0xbc, 0xae, 0x35, 0x3e, 0xb8, 0x98, 0xaa, 0x04, 0xf8, 0x0e, 0xf9, 0xcc, 0x89, 0xec, 0x4c, 0x12, 0x3c, 0x09, 0x00, 0xbc, 0xf1, 0x3b, 0xeb, 0x65, 0x58, 0x04, 0xbc, 0xb8, 0x95, 0xf2, 0xd7, 0x00, 0x93, 0x78, 0xd5, 0x97, 0x88, 0x20, 0x25, 0x0f, 0x7b, 0xeb, 0x87, 0x4e, 0xf1, }; static const unsigned char ecdh_brainpoolp320r1_4195_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4195_sharedsecret[] = { 0x55, 0x3f, 0x62, 0x20, 0x97, 0xc5, 0x3e, 0x89, 0x5a, 0x8b, 0x7e, 0xbe, 0xbd, 0x36, 0x02, 0xd1, 0xc8, 0x39, 0x0e, 0xa8, 0x5b, 0x42, 0x40, 0x87, 0x8f, 0x23, 0x3e, 0x10, 0xae, 0x95, 0x64, 0xc0, 0xf5, 0x2d, 0x31, 0xf5, 0x7f, 0x90, 0x2a, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4195 = { .name = "ecdh_brainpoolp320r1_4195", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4195_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4195_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4195_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1824 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4196 for ECDH, tcId is 1825 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4196_peerpubkey[] = { 0x16, 0xe1, 0x9b, 0x73, 0x77, 0x30, 0xc3, 0x4e, 0x15, 0xb3, 0x87, 0x35, 0xaf, 0xa3, 0x3f, 0x86, 0x7d, 0x3d, 0x2c, 0x71, 0xcd, 0xf4, 0x55, 0xc7, 0x0a, 0xa4, 0x00, 0x03, 0x4a, 0xc6, 0x5d, 0x8f, 0xfa, 0x7f, 0x81, 0xe7, 0x98, 0x7d, 0xf3, 0x80, 0x93, 0x04, 0xec, 0x72, 0x8d, 0x3c, 0xe6, 0xf3, 0x61, 0x64, 0x6f, 0x18, 0x57, 0x37, 0x6a, 0xce, 0xd7, 0xc3, 0xd7, 0xd6, 0xe8, 0x10, 0x81, 0xbe, 0xcb, 0x08, 0x86, 0xd1, 0x1b, 0xaa, 0xb5, 0x0a, 0x4f, 0x39, 0x2f, 0x5f, 0x4d, 0x93, 0xfe, 0x0f, }; static const unsigned char ecdh_brainpoolp320r1_4196_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4196_sharedsecret[] = { 0x5d, 0x58, 0x3d, 0x61, 0xcd, 0xcf, 0x95, 0x17, 0xda, 0x03, 0x85, 0x18, 0x69, 0xce, 0x31, 0x40, 0x3e, 0x65, 0x13, 0x41, 0xb3, 0x88, 0xc0, 0x82, 0x6c, 0xd7, 0x63, 0xb1, 0xb7, 0x52, 0x13, 0x96, 0x53, 0x36, 0x73, 0x0f, 0x40, 0x20, 0x6b, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4196 = { .name = "ecdh_brainpoolp320r1_4196", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4196_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4196_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4196_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1825 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4197 for ECDH, tcId is 1826 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4197_peerpubkey[] = { 0x58, 0x7c, 0xab, 0xfc, 0x69, 0xb1, 0xbc, 0x3e, 0x7d, 0x29, 0xe4, 0xee, 0x25, 0xb6, 0x45, 0xd3, 0x57, 0xde, 0xe7, 0xf2, 0x45, 0xfd, 0x5f, 0x8a, 0x9a, 0x08, 0xba, 0x0a, 0x03, 0x25, 0x60, 0xa2, 0x3e, 0x3e, 0xa8, 0x8a, 0xe3, 0x40, 0x58, 0x9b, 0xcd, 0xa5, 0x75, 0xf3, 0xc6, 0x6f, 0x2c, 0xf7, 0x4a, 0xd0, 0xac, 0x25, 0xda, 0x28, 0x29, 0xa6, 0x81, 0x01, 0xbc, 0x26, 0x95, 0x35, 0x3b, 0xec, 0xe6, 0xa3, 0x37, 0x47, 0x83, 0x3d, 0x01, 0xea, 0x99, 0x63, 0x60, 0x0b, 0x0f, 0x70, 0xbe, 0xfc, }; static const unsigned char ecdh_brainpoolp320r1_4197_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4197_sharedsecret[] = { 0x19, 0xb5, 0x78, 0xaf, 0xe0, 0x10, 0x35, 0x96, 0xb1, 0x69, 0xfa, 0x47, 0x98, 0x4d, 0x3a, 0x6a, 0x10, 0xda, 0x05, 0x3e, 0x56, 0x4b, 0x46, 0x7d, 0xc6, 0xfc, 0xca, 0x1f, 0xa8, 0x3b, 0x61, 0x40, 0xac, 0x07, 0xf4, 0x7c, 0x93, 0xb4, 0xd4, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4197 = { .name = "ecdh_brainpoolp320r1_4197", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4197_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4197_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4197_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1826 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4198 for ECDH, tcId is 1827 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4198_peerpubkey[] = { 0x05, 0xe8, 0x53, 0x79, 0x74, 0x39, 0x17, 0x2a, 0xa2, 0x72, 0xa8, 0xf4, 0x3a, 0xb9, 0xda, 0xb9, 0x92, 0x4b, 0x51, 0xf6, 0x7f, 0x58, 0x7b, 0x89, 0xe3, 0x03, 0xef, 0x91, 0x31, 0xc1, 0x3e, 0xe6, 0x4a, 0xad, 0x1c, 0x07, 0x45, 0xbf, 0xb3, 0xcf, 0x6f, 0x1f, 0x04, 0x77, 0x5d, 0x3c, 0x25, 0x54, 0x41, 0x7e, 0x13, 0xf8, 0x83, 0x62, 0xe3, 0x13, 0x8b, 0x53, 0xa8, 0xf8, 0xbe, 0xd6, 0xf9, 0x62, 0x9c, 0x13, 0x78, 0xc9, 0x2b, 0x5a, 0x73, 0xff, 0xb2, 0x0b, 0x2f, 0x61, 0x98, 0xc7, 0x45, 0xf8, }; static const unsigned char ecdh_brainpoolp320r1_4198_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4198_sharedsecret[] = { 0x14, 0x00, 0xcc, 0x44, 0x6a, 0xf3, 0x9e, 0x09, 0x77, 0xc5, 0xe2, 0xd4, 0x52, 0x93, 0xfa, 0x99, 0x55, 0x38, 0x63, 0x3a, 0xb6, 0xbe, 0xde, 0x31, 0x60, 0x8f, 0xdd, 0xf0, 0x34, 0x62, 0xe0, 0x34, 0xe2, 0x87, 0x8e, 0x6a, 0x09, 0x4f, 0xba, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4198 = { .name = "ecdh_brainpoolp320r1_4198", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4198_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4198_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4198_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1827 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4199 for ECDH, tcId is 1828 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4199_peerpubkey[] = { 0xd0, 0xeb, 0xc8, 0x5c, 0xbe, 0xcc, 0x65, 0xe5, 0x64, 0xf1, 0x87, 0x31, 0xb6, 0xb4, 0xac, 0x16, 0x03, 0xac, 0x51, 0x9f, 0xa5, 0x71, 0x6b, 0xe3, 0xb6, 0x5c, 0xf2, 0xbd, 0xe0, 0x7c, 0xa1, 0xf6, 0xde, 0x0c, 0x85, 0x32, 0x9d, 0x9b, 0x74, 0x54, 0xc8, 0xb7, 0xe5, 0x4c, 0x5d, 0xa5, 0x9a, 0x77, 0x9c, 0x00, 0xa5, 0x0d, 0xdd, 0xb7, 0xa0, 0x6c, 0x9e, 0x0e, 0x1b, 0x79, 0xdf, 0xfd, 0x3b, 0x73, 0x92, 0x50, 0x30, 0x88, 0x8c, 0xac, 0x08, 0x61, 0x63, 0x46, 0x08, 0x18, 0x13, 0xca, 0xd4, 0x9d, }; static const unsigned char ecdh_brainpoolp320r1_4199_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4199_sharedsecret[] = { 0x0e, 0xdd, 0x79, 0xe8, 0xb9, 0xd6, 0x7a, 0x0b, 0xa4, 0x75, 0xbf, 0xf4, 0x61, 0x41, 0xfb, 0xbc, 0xb2, 0x57, 0xec, 0x77, 0xbd, 0x2d, 0xd1, 0x49, 0x40, 0xb6, 0x6a, 0xd4, 0xaa, 0x14, 0xfd, 0x7c, 0x9c, 0x1f, 0x8e, 0xfc, 0xf6, 0x8d, 0xd1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4199 = { .name = "ecdh_brainpoolp320r1_4199", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4199_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4199_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4199_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1828 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4200 for ECDH, tcId is 1829 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4200_peerpubkey[] = { 0x6c, 0xfa, 0x92, 0xd0, 0x82, 0x3a, 0xb6, 0x2f, 0x32, 0xd3, 0x2d, 0xd6, 0x26, 0xc3, 0xec, 0x99, 0x96, 0x54, 0xeb, 0xb4, 0x47, 0x17, 0xf8, 0xac, 0x66, 0xea, 0x30, 0xc7, 0x1a, 0xa8, 0x39, 0x36, 0x92, 0xbc, 0x4f, 0xa8, 0xe0, 0x34, 0x72, 0x83, 0x5c, 0x7d, 0xee, 0x56, 0x2e, 0x45, 0x29, 0x20, 0x9b, 0x47, 0xa3, 0xce, 0x7b, 0x59, 0x8a, 0xcc, 0x0b, 0xb9, 0x46, 0x83, 0x70, 0x4f, 0x12, 0xd0, 0x5f, 0xa2, 0x62, 0xcd, 0x03, 0x7c, 0xbf, 0x5d, 0x5c, 0x30, 0x15, 0xe8, 0x23, 0x41, 0x21, 0x38, }; static const unsigned char ecdh_brainpoolp320r1_4200_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4200_sharedsecret[] = { 0x59, 0x86, 0x74, 0x2c, 0xb7, 0xab, 0x5f, 0xa0, 0x59, 0xc3, 0xce, 0x98, 0xee, 0xd8, 0x88, 0x95, 0xe2, 0xc8, 0xa5, 0x4b, 0x4e, 0x8a, 0xbb, 0x4d, 0x6c, 0x61, 0x17, 0xb5, 0x2d, 0x6d, 0x4d, 0x1e, 0xfb, 0x51, 0xf7, 0x16, 0x5d, 0xa6, 0x18, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4200 = { .name = "ecdh_brainpoolp320r1_4200", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4200_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4200_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4200_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1829 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4201 for ECDH, tcId is 1830 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4201_peerpubkey[] = { 0x53, 0x02, 0x49, 0xb8, 0xb2, 0xb1, 0xc0, 0x90, 0xdf, 0x7d, 0x54, 0x65, 0xfd, 0x06, 0x4a, 0x72, 0x5c, 0xdc, 0xdd, 0xc3, 0xa1, 0xbd, 0x23, 0xfa, 0x60, 0xd0, 0xa9, 0x00, 0x80, 0x8a, 0x30, 0xfc, 0x44, 0xbb, 0x4f, 0x86, 0x80, 0x66, 0x25, 0x00, 0xba, 0xf7, 0xc8, 0xbb, 0xc5, 0x41, 0x7a, 0x87, 0xfd, 0xde, 0x94, 0xfc, 0x39, 0x9f, 0x0a, 0x9d, 0xf3, 0x4c, 0xad, 0x24, 0xc3, 0x0e, 0x0f, 0x62, 0xc7, 0x30, 0x21, 0xd0, 0x27, 0xf6, 0x4d, 0x46, 0x0c, 0x9d, 0x25, 0xd6, 0x3d, 0xc7, 0xb4, 0x87, }; static const unsigned char ecdh_brainpoolp320r1_4201_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4201_sharedsecret[] = { 0xa4, 0xdc, 0x0f, 0xc3, 0x7a, 0x25, 0x26, 0xf1, 0xe8, 0xac, 0xd1, 0x29, 0xba, 0x2e, 0x4b, 0x1c, 0x8e, 0x51, 0x00, 0x38, 0x36, 0x05, 0x07, 0xb8, 0xac, 0xb6, 0xbb, 0x83, 0x28, 0x18, 0xae, 0x75, 0xf0, 0x4b, 0x0d, 0xa2, 0x10, 0x6b, 0xc1, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4201 = { .name = "ecdh_brainpoolp320r1_4201", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4201_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4201_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4201_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1830 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4202 for ECDH, tcId is 1831 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4202_peerpubkey[] = { 0x41, 0xe8, 0x8d, 0xe6, 0x85, 0x7d, 0x88, 0x60, 0x1f, 0x52, 0xc9, 0x6f, 0x6d, 0x14, 0xd9, 0xe5, 0x7e, 0xf5, 0x60, 0x4e, 0x2e, 0xf5, 0xca, 0xfc, 0xbd, 0x4c, 0x05, 0x28, 0x23, 0xbc, 0xa1, 0x40, 0xb9, 0xeb, 0x50, 0x46, 0xd8, 0x24, 0x83, 0xd2, 0x98, 0x56, 0xaf, 0x41, 0x00, 0x32, 0x3d, 0xf9, 0x35, 0x63, 0x46, 0x89, 0xe8, 0x7f, 0x8f, 0x06, 0x54, 0x07, 0xc5, 0xb9, 0x7f, 0x8f, 0xf0, 0x4b, 0xea, 0x2f, 0xd2, 0xd5, 0x1e, 0xde, 0xe9, 0xd7, 0x37, 0x0e, 0xf5, 0x1f, 0x9f, 0x33, 0x98, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_4202_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4202_sharedsecret[] = { 0x90, 0x92, 0x67, 0xc8, 0xa3, 0x7f, 0xa7, 0x2f, 0xb4, 0xab, 0xbb, 0x96, 0x0e, 0xbb, 0xab, 0x97, 0xa8, 0xbd, 0x8e, 0x0d, 0xd5, 0xd7, 0x21, 0x8d, 0x2a, 0x2e, 0xea, 0xb2, 0x81, 0x61, 0x6e, 0x34, 0xb4, 0x67, 0xa6, 0xc1, 0x4f, 0x5b, 0xb1, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4202 = { .name = "ecdh_brainpoolp320r1_4202", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4202_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4202_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4202_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1831 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4203 for ECDH, tcId is 1832 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4203_peerpubkey[] = { 0x12, 0x40, 0x07, 0x44, 0x27, 0xdb, 0xa7, 0xcc, 0xa8, 0xf9, 0xe3, 0x9f, 0x02, 0xa2, 0x1b, 0x09, 0x1a, 0x99, 0x0b, 0xf7, 0x47, 0xf7, 0xae, 0x62, 0x61, 0x7e, 0x35, 0x95, 0xcc, 0x7c, 0xd3, 0x13, 0xe8, 0x3c, 0xce, 0x1f, 0x47, 0x26, 0x76, 0x60, 0x96, 0xb0, 0x96, 0x9c, 0xbd, 0x33, 0x16, 0x17, 0x6a, 0x5b, 0x9f, 0x3e, 0x4e, 0x86, 0xf0, 0x16, 0x64, 0x0a, 0x62, 0xd8, 0x49, 0xb1, 0xee, 0xe8, 0x42, 0xe1, 0xc5, 0xc3, 0x4c, 0xab, 0x79, 0x0a, 0xf9, 0xfb, 0x52, 0x8e, 0xe7, 0xc0, 0xe7, 0xda, }; static const unsigned char ecdh_brainpoolp320r1_4203_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4203_sharedsecret[] = { 0x89, 0x26, 0x92, 0x46, 0xe1, 0xaf, 0x79, 0x38, 0x19, 0x52, 0x1d, 0xcd, 0x86, 0xe6, 0x4f, 0xd1, 0xc6, 0x58, 0xd3, 0xd7, 0x0c, 0xb3, 0x68, 0x74, 0xea, 0xc0, 0x1b, 0x4d, 0xe3, 0x08, 0x65, 0x65, 0xda, 0xa8, 0xe9, 0x22, 0x4c, 0xff, 0x7c, 0x3a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4203 = { .name = "ecdh_brainpoolp320r1_4203", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4203_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4203_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4203_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1832 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4204 for ECDH, tcId is 1833 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4204_peerpubkey[] = { 0xad, 0xda, 0x30, 0x7c, 0x9e, 0x3c, 0xb7, 0x97, 0x37, 0x33, 0xc8, 0x18, 0x28, 0xd1, 0x4c, 0xe8, 0x2e, 0xb6, 0x19, 0x19, 0xe6, 0xb0, 0xa6, 0xa7, 0xd1, 0xd5, 0x28, 0x67, 0x6c, 0xda, 0x2b, 0x97, 0xb5, 0xbb, 0xd3, 0x02, 0x18, 0xfc, 0x08, 0xeb, 0x84, 0xe0, 0x8e, 0xfd, 0xd2, 0x8b, 0xb5, 0x88, 0x7b, 0x39, 0x16, 0x27, 0x9f, 0x3f, 0xbd, 0xd6, 0x8e, 0x08, 0x6b, 0x62, 0x13, 0xf9, 0x4a, 0xb6, 0x51, 0xa9, 0x82, 0xf4, 0x6d, 0xb8, 0xa1, 0x71, 0x20, 0x9b, 0xc7, 0xae, 0x0b, 0xad, 0x05, 0xe0, }; static const unsigned char ecdh_brainpoolp320r1_4204_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4204_sharedsecret[] = { 0x25, 0xa3, 0x5a, 0xc0, 0x9f, 0xd8, 0x51, 0xc0, 0x99, 0x72, 0x7f, 0xed, 0xa6, 0x3e, 0xac, 0xca, 0xc1, 0x20, 0x96, 0xc3, 0xa6, 0x96, 0x5b, 0xe3, 0xae, 0xd1, 0x64, 0x2c, 0x17, 0x35, 0x28, 0x3c, 0xb3, 0x70, 0x75, 0xa8, 0xa9, 0x0a, 0x74, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4204 = { .name = "ecdh_brainpoolp320r1_4204", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4204_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4204_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4204_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1833 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4205 for ECDH, tcId is 1834 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4205_peerpubkey[] = { 0x59, 0x62, 0x46, 0x46, 0x0a, 0x65, 0x1d, 0xcd, 0xfb, 0x75, 0x4e, 0x9d, 0xc7, 0x29, 0xc1, 0x02, 0xa7, 0xdc, 0xa0, 0xea, 0x91, 0x8c, 0xba, 0x83, 0x63, 0x15, 0x29, 0x02, 0xea, 0xc2, 0x66, 0x66, 0x12, 0x11, 0xbc, 0x2d, 0xea, 0x39, 0x48, 0x37, 0xad, 0x20, 0x33, 0xca, 0x24, 0x7f, 0xcf, 0x87, 0x06, 0x88, 0x52, 0x7f, 0x0e, 0x6c, 0x78, 0x50, 0x73, 0x47, 0x5d, 0x6c, 0xb3, 0xa5, 0x4d, 0x6e, 0x7a, 0xe9, 0x0c, 0x38, 0x73, 0x2e, 0x61, 0xe0, 0xb6, 0x35, 0x43, 0x49, 0x78, 0x01, 0xc2, 0x1a, }; static const unsigned char ecdh_brainpoolp320r1_4205_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4205_sharedsecret[] = { 0xb6, 0x7e, 0x4e, 0xc5, 0x57, 0xa1, 0x08, 0x01, 0xb9, 0xc7, 0xf2, 0xdc, 0x18, 0xf5, 0xb6, 0xc8, 0xcb, 0xc6, 0x69, 0x91, 0x86, 0x40, 0xc5, 0xe9, 0xab, 0x13, 0x20, 0x2f, 0x67, 0xd2, 0x7f, 0x2c, 0x3f, 0xb1, 0x61, 0x2d, 0x66, 0x52, 0x8e, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4205 = { .name = "ecdh_brainpoolp320r1_4205", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4205_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4205_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4205_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1834 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4206 for ECDH, tcId is 1835 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4206_peerpubkey[] = { 0x88, 0xeb, 0x56, 0x16, 0x3b, 0x06, 0x12, 0xa2, 0xb4, 0xa6, 0xcf, 0x7d, 0x3b, 0xa4, 0x6f, 0xd4, 0x6d, 0x81, 0xe9, 0x61, 0xec, 0x27, 0x71, 0x68, 0x52, 0xa1, 0x9c, 0x6d, 0xac, 0x84, 0x4c, 0x5c, 0xc3, 0xb7, 0x54, 0x37, 0x6c, 0x14, 0x7f, 0x87, 0x02, 0x71, 0x13, 0x07, 0x98, 0x15, 0xc7, 0xa2, 0x24, 0x06, 0x01, 0x3c, 0x54, 0xa5, 0xcf, 0xb6, 0x8b, 0xe4, 0x66, 0xf4, 0x83, 0x32, 0x13, 0x5b, 0xbe, 0xee, 0x59, 0x2f, 0xfd, 0x64, 0x91, 0x36, 0x32, 0x25, 0x49, 0xd4, 0x21, 0x67, 0x1c, 0x93, }; static const unsigned char ecdh_brainpoolp320r1_4206_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4206_sharedsecret[] = { 0x80, 0xe1, 0x9c, 0x54, 0x68, 0x78, 0x6f, 0x33, 0xda, 0x3c, 0xa6, 0xb7, 0xc4, 0xc0, 0x2a, 0x4b, 0x28, 0xfd, 0xe8, 0x57, 0xa4, 0x07, 0x62, 0x2f, 0xf5, 0x1b, 0xde, 0x6f, 0x75, 0x07, 0x14, 0xfd, 0xab, 0x01, 0xb3, 0xdc, 0x8d, 0x2f, 0x32, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4206 = { .name = "ecdh_brainpoolp320r1_4206", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4206_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4206_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4206_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 1835 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4207 for ECDH, tcId is 1836 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4207_peerpubkey[] = { 0x84, 0x2b, 0xb9, 0x9f, 0xff, 0x91, 0x3e, 0x76, 0x4f, 0x2d, 0xbb, 0x37, 0x70, 0x8a, 0x3d, 0x6e, 0xb4, 0x64, 0x31, 0x8f, 0x86, 0x2b, 0x9f, 0x07, 0xc0, 0x51, 0x90, 0xe4, 0xa6, 0x88, 0x74, 0xe9, 0xde, 0xcf, 0xe0, 0xfa, 0xea, 0xdf, 0x22, 0x81, 0x71, 0x4b, 0x1f, 0x0d, 0xe6, 0x9e, 0x5f, 0x7a, 0x58, 0xc5, 0xda, 0xa3, 0x07, 0x4f, 0x47, 0x53, 0x77, 0xba, 0x10, 0x84, 0x39, 0x49, 0xb4, 0xe5, 0xe2, 0x14, 0x19, 0xfd, 0xcd, 0x4c, 0x8c, 0x0d, 0x29, 0x55, 0xe9, 0xe8, 0x40, 0x70, 0xac, 0x51, }; static const unsigned char ecdh_brainpoolp320r1_4207_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4207_sharedsecret[] = { 0x15, 0x7f, 0x71, 0xf1, 0xea, 0x01, 0xef, 0xe0, 0x8b, 0x61, 0xcb, 0xde, 0xfa, 0x2b, 0x84, 0xdf, 0x5a, 0x3b, 0x24, 0x1f, 0x42, 0x8d, 0xa0, 0x99, 0xda, 0xde, 0x6d, 0x3f, 0x6b, 0x09, 0x95, 0xe0, 0xcf, 0xbf, 0xc6, 0x8d, 0xa3, 0x01, 0x57, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4207 = { .name = "ecdh_brainpoolp320r1_4207", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4207_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4207_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4207_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1836 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4208 for ECDH, tcId is 1837 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4208_peerpubkey[] = { 0x5d, 0xc7, 0x33, 0x65, 0x7a, 0x02, 0x17, 0x4b, 0x19, 0xd3, 0xac, 0x4f, 0x51, 0x4d, 0x1b, 0x6a, 0x8c, 0xb6, 0x0a, 0x08, 0xec, 0xa9, 0x82, 0x89, 0xb2, 0x5f, 0x34, 0x4f, 0xd6, 0x67, 0xb1, 0xa7, 0xd2, 0x1e, 0x42, 0x9a, 0x50, 0xb2, 0x37, 0x88, 0x2c, 0x8c, 0x16, 0xdd, 0x42, 0x6c, 0xff, 0xa8, 0xfe, 0xfe, 0xe7, 0xe7, 0xb6, 0x3e, 0x4b, 0x58, 0xcf, 0x2a, 0xa7, 0x6f, 0x41, 0x50, 0x3a, 0xb1, 0xb6, 0x43, 0x1f, 0x59, 0x9e, 0xb8, 0x16, 0x2f, 0x01, 0xa6, 0x79, 0x98, 0x1d, 0x3b, 0x1f, 0x8c, }; static const unsigned char ecdh_brainpoolp320r1_4208_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4208_sharedsecret[] = { 0xbd, 0xae, 0xd3, 0xe4, 0xf7, 0xf2, 0x0e, 0x5b, 0xa8, 0x17, 0x0f, 0x73, 0x8a, 0x8c, 0x2a, 0xb4, 0xa5, 0x73, 0x84, 0xe1, 0x3b, 0x43, 0xe7, 0x53, 0xe4, 0x52, 0xb6, 0x7d, 0x40, 0x54, 0x8d, 0x4d, 0x43, 0x04, 0xca, 0x85, 0xfa, 0x47, 0x4c, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4208 = { .name = "ecdh_brainpoolp320r1_4208", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4208_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4208_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4208_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1837 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4209 for ECDH, tcId is 1838 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4209_peerpubkey[] = { 0xb4, 0x7b, 0xdd, 0x0c, 0x25, 0xe5, 0x6d, 0x99, 0x91, 0x4f, 0xec, 0x42, 0x82, 0x53, 0x0f, 0x61, 0xe5, 0xdb, 0x1b, 0x81, 0x00, 0x7e, 0xa1, 0x14, 0x1a, 0x2a, 0xe0, 0x9c, 0x17, 0x1e, 0xc5, 0xce, 0xa4, 0xce, 0xb1, 0x45, 0xbc, 0xeb, 0x6e, 0xec, 0xcb, 0x8a, 0xd5, 0x79, 0x2d, 0x9c, 0x06, 0x8f, 0xb6, 0xca, 0x30, 0xfe, 0xdd, 0x3b, 0xf5, 0xb3, 0x35, 0x31, 0xc1, 0x20, 0x0f, 0x6e, 0x1a, 0x7c, 0x29, 0xfa, 0x75, 0xa5, 0xcb, 0xc5, 0xde, 0x94, 0x99, 0x3a, 0x85, 0x40, 0xdf, 0x48, 0xe5, 0x42, }; static const unsigned char ecdh_brainpoolp320r1_4209_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4209_sharedsecret[] = { 0xcc, 0xa5, 0xda, 0xc5, 0xb7, 0xb1, 0xe7, 0x5a, 0xe0, 0x95, 0xda, 0x73, 0x80, 0xdd, 0x00, 0xad, 0x4e, 0xb1, 0x1e, 0xb3, 0xae, 0xeb, 0xc6, 0xb6, 0xcd, 0x39, 0x77, 0xff, 0x37, 0xa6, 0x70, 0xa5, 0x28, 0x26, 0xb3, 0x0e, 0x7a, 0x65, 0x9a, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4209 = { .name = "ecdh_brainpoolp320r1_4209", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4209_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4209_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4209_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1838 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4210 for ECDH, tcId is 1839 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4210_peerpubkey[] = { 0x95, 0x94, 0x85, 0x3b, 0x1d, 0x27, 0xb6, 0x7e, 0x21, 0xa8, 0x07, 0x30, 0x74, 0x76, 0xe5, 0x97, 0xcc, 0x62, 0x84, 0x6a, 0x52, 0x4a, 0x6c, 0xef, 0xe3, 0x3d, 0x05, 0xee, 0x09, 0xd0, 0x24, 0xa7, 0xed, 0x6d, 0x78, 0xf7, 0x37, 0x75, 0x77, 0x89, 0x02, 0x95, 0xa8, 0x6a, 0xf9, 0x5c, 0x63, 0xaf, 0xd7, 0x1e, 0x7c, 0x0c, 0x09, 0xc5, 0x54, 0xb9, 0x5d, 0x87, 0x43, 0xdb, 0xde, 0x99, 0x7e, 0xa7, 0x98, 0x0b, 0xc8, 0x40, 0x22, 0xf4, 0x7a, 0x00, 0x9f, 0xf6, 0x5e, 0xa1, 0x46, 0xf1, 0xd6, 0xa6, }; static const unsigned char ecdh_brainpoolp320r1_4210_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4210_sharedsecret[] = { 0x78, 0x05, 0x1e, 0xaa, 0xe9, 0x2c, 0xed, 0x6c, 0x02, 0xa3, 0x81, 0x43, 0x1b, 0xda, 0x64, 0x14, 0xe6, 0xfd, 0x74, 0x6a, 0x8c, 0x82, 0x24, 0x33, 0x0a, 0xae, 0x11, 0x0a, 0xb7, 0x7d, 0x2d, 0x85, 0x80, 0xcf, 0xc8, 0x95, 0x88, 0x59, 0x7c, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4210 = { .name = "ecdh_brainpoolp320r1_4210", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4210_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4210_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4210_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1839 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4211 for ECDH, tcId is 1840 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4211_peerpubkey[] = { 0xa1, 0x74, 0xc7, 0xbe, 0x59, 0xd5, 0x9f, 0x20, 0x41, 0xb5, 0x74, 0xd8, 0xe7, 0xa4, 0xcc, 0x40, 0xb3, 0xcb, 0xba, 0x31, 0x4a, 0x81, 0x44, 0x4c, 0x54, 0xb9, 0x8e, 0x04, 0xfe, 0x27, 0x78, 0x3b, 0xc3, 0x23, 0x73, 0xa0, 0x95, 0x98, 0x28, 0x65, 0x74, 0x92, 0xbd, 0xd1, 0xeb, 0x73, 0xe6, 0xa5, 0xa9, 0xc8, 0x7f, 0x6e, 0x8b, 0x09, 0xfa, 0x86, 0xf1, 0x42, 0xab, 0x6b, 0xde, 0x7d, 0xec, 0x82, 0x42, 0xfe, 0x41, 0xbe, 0x25, 0xa4, 0x09, 0xde, 0x91, 0x6a, 0x99, 0xd2, 0xe4, 0x66, 0xe6, 0x98, }; static const unsigned char ecdh_brainpoolp320r1_4211_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4211_sharedsecret[] = { 0x90, 0x08, 0x42, 0xfa, 0x0e, 0x7b, 0x34, 0xb3, 0x57, 0x9d, 0xe3, 0x05, 0x9a, 0xc2, 0x10, 0x67, 0xd9, 0xf9, 0x80, 0xdc, 0xe8, 0x77, 0xc0, 0x24, 0x94, 0x14, 0x89, 0xd6, 0x8d, 0xb5, 0x6e, 0xab, 0x88, 0xb3, 0x60, 0xc0, 0x38, 0xac, 0x05, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4211 = { .name = "ecdh_brainpoolp320r1_4211", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4211_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4211_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4211_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1840 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4212 for ECDH, tcId is 1841 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4212_peerpubkey[] = { 0xc9, 0x5d, 0x5f, 0xf1, 0x8d, 0x3a, 0x64, 0xff, 0x86, 0xd5, 0xe2, 0x93, 0x4d, 0x91, 0x2f, 0x49, 0x43, 0x89, 0x92, 0x4b, 0x46, 0x00, 0xe3, 0x2c, 0x36, 0x65, 0xea, 0xbc, 0x80, 0xf2, 0x1e, 0x6f, 0xca, 0xc3, 0x0e, 0xdd, 0x82, 0xba, 0x1b, 0xaa, 0x4f, 0xc9, 0x18, 0xef, 0xa5, 0x99, 0x9d, 0xef, 0x4c, 0x65, 0xa7, 0x44, 0x21, 0x3a, 0x08, 0x34, 0x8e, 0x6a, 0x03, 0x5b, 0xc0, 0xee, 0xcf, 0x58, 0xb8, 0x3e, 0x7f, 0xda, 0x4d, 0xa0, 0x41, 0xd0, 0x4a, 0x78, 0x33, 0x9b, 0x4d, 0x1f, 0x12, 0x69, }; static const unsigned char ecdh_brainpoolp320r1_4212_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4212_sharedsecret[] = { 0x3b, 0x0d, 0xce, 0x55, 0x4d, 0x3f, 0x5a, 0xd6, 0x23, 0xab, 0xca, 0xb7, 0x19, 0x12, 0x3c, 0xce, 0x23, 0xbb, 0xe0, 0xab, 0x0b, 0xc5, 0x37, 0x18, 0x78, 0xd9, 0x10, 0x36, 0x39, 0x66, 0x85, 0x01, 0xea, 0xfb, 0x1c, 0xb2, 0xf7, 0xf0, 0x83, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4212 = { .name = "ecdh_brainpoolp320r1_4212", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4212_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4212_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4212_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 1841 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4213 for ECDH, tcId is 1842 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4213_peerpubkey[] = { 0x24, 0x58, 0x89, 0x69, 0xa0, 0x0e, 0x89, 0x74, 0x19, 0x59, 0x6d, 0x7b, 0xa8, 0xf4, 0x4f, 0x28, 0x68, 0x8b, 0x20, 0xd8, 0x02, 0x5f, 0xe6, 0x6c, 0x9e, 0x18, 0xc4, 0x43, 0xf0, 0xbc, 0xba, 0xf4, 0x11, 0x22, 0x4a, 0x25, 0x0f, 0xcd, 0x88, 0x95, 0xbb, 0xe4, 0x03, 0x0e, 0xc0, 0xf7, 0x40, 0xf6, 0x2f, 0xb3, 0x7e, 0xda, 0x0f, 0x8b, 0xe0, 0x39, 0xf9, 0x84, 0x29, 0x16, 0xcb, 0x81, 0x57, 0x32, 0x1d, 0x40, 0x51, 0xf2, 0xb9, 0x2f, 0x28, 0xe6, 0xcf, 0x6b, 0x45, 0xf4, 0x96, 0x1e, 0x37, 0x6b, }; static const unsigned char ecdh_brainpoolp320r1_4213_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4213_sharedsecret[] = { 0x55, 0x1c, 0x46, 0x8b, 0x85, 0x75, 0x8b, 0xab, 0x5d, 0x0e, 0x0c, 0xc8, 0x41, 0x0b, 0xa2, 0xb7, 0x12, 0x66, 0x2c, 0x86, 0x06, 0xe4, 0x85, 0x01, 0xa0, 0xfb, 0xa3, 0xfe, 0x76, 0x27, 0xf0, 0x32, 0xc2, 0x73, 0x98, 0xb8, 0x77, 0xac, 0xdf, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4213 = { .name = "ecdh_brainpoolp320r1_4213", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4213_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4213_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4213_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1842 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4214 for ECDH, tcId is 1843 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4214_peerpubkey[] = { 0x2a, 0x47, 0x5b, 0xb4, 0xc5, 0x09, 0x16, 0xaf, 0x01, 0x1b, 0x31, 0x0b, 0xa5, 0x44, 0x86, 0x83, 0x1c, 0x6c, 0xdf, 0xae, 0xd6, 0x29, 0xb7, 0x68, 0xb5, 0x8a, 0x45, 0xea, 0xc8, 0x03, 0xa1, 0x35, 0xc4, 0xd4, 0x6c, 0xbc, 0xf8, 0xd2, 0xb9, 0x5d, 0x24, 0x4e, 0x74, 0xed, 0xd7, 0x0c, 0x33, 0xea, 0xf4, 0x54, 0xb5, 0x5d, 0x85, 0xba, 0xb9, 0x7f, 0xf3, 0x62, 0x66, 0x3c, 0xf8, 0x07, 0xd1, 0xfe, 0x0e, 0x4e, 0xd1, 0xfb, 0xe5, 0xe5, 0x12, 0xce, 0x4f, 0xfb, 0x01, 0xc6, 0x33, 0x32, 0xaf, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4214_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4214_sharedsecret[] = { 0x77, 0x94, 0xd2, 0xfc, 0x01, 0xd4, 0x57, 0x42, 0x1a, 0xba, 0x85, 0x92, 0x0d, 0x29, 0x63, 0xe9, 0xf4, 0x24, 0x50, 0xf9, 0xdb, 0x39, 0x4a, 0x1a, 0xa7, 0xeb, 0xa6, 0x21, 0x64, 0x73, 0xfa, 0x00, 0x99, 0xc2, 0xa1, 0x9b, 0x3f, 0xa6, 0x8c, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4214 = { .name = "ecdh_brainpoolp320r1_4214", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4214_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4214_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4214_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1843 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4215 for ECDH, tcId is 1844 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4215_peerpubkey[] = { 0x78, 0xc0, 0x5a, 0x9d, 0xf4, 0xed, 0xd6, 0x6f, 0x78, 0xd0, 0x4f, 0x06, 0x11, 0x7a, 0xe3, 0x17, 0xaf, 0xba, 0xb1, 0xa2, 0x19, 0x15, 0xe3, 0x5b, 0x69, 0x54, 0x50, 0x60, 0xd8, 0x68, 0xfc, 0xc0, 0xa7, 0x13, 0xe9, 0xce, 0xa2, 0xbb, 0x85, 0x6b, 0x03, 0xb8, 0xcc, 0xc6, 0x38, 0x25, 0x44, 0xac, 0x89, 0x05, 0x58, 0x5b, 0xce, 0x98, 0x0f, 0xdb, 0x58, 0xf5, 0x13, 0x9e, 0xd0, 0x3a, 0x13, 0xfd, 0x1e, 0xd3, 0x34, 0x3a, 0x0b, 0x38, 0x3c, 0x4e, 0x02, 0xde, 0xfd, 0x14, 0x31, 0x3f, 0xa8, 0xa5, }; static const unsigned char ecdh_brainpoolp320r1_4215_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4215_sharedsecret[] = { 0x33, 0xa9, 0x55, 0x74, 0xcd, 0x53, 0xab, 0xbc, 0x11, 0xfa, 0xf0, 0x8c, 0x8d, 0xd6, 0x63, 0x43, 0xec, 0x41, 0xee, 0xc7, 0x93, 0x94, 0x29, 0x07, 0xc7, 0xc0, 0xf3, 0xc4, 0x32, 0x52, 0x87, 0x2b, 0x70, 0xa2, 0x55, 0x27, 0x23, 0x45, 0x7d, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4215 = { .name = "ecdh_brainpoolp320r1_4215", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4215_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4215_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4215_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1844 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4216 for ECDH, tcId is 1845 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4216_peerpubkey[] = { 0x8c, 0x38, 0x20, 0x92, 0x53, 0xfa, 0x06, 0xac, 0x47, 0x39, 0xe5, 0x11, 0x58, 0xf5, 0xeb, 0x1b, 0xeb, 0x84, 0x65, 0xe1, 0x0b, 0x05, 0xec, 0x2e, 0xc9, 0x1c, 0xd2, 0xcf, 0x55, 0xdb, 0x23, 0xc4, 0x53, 0x73, 0xc3, 0xd8, 0x26, 0xb3, 0xdf, 0xd0, 0xa0, 0x59, 0x4e, 0x48, 0x3f, 0x0d, 0xcd, 0x20, 0xad, 0x88, 0xfd, 0xe9, 0x0a, 0x88, 0xdf, 0xf0, 0x26, 0xbe, 0x0a, 0xf9, 0xfe, 0x10, 0x35, 0x3e, 0x9e, 0x95, 0xa5, 0x8f, 0x86, 0xfe, 0x19, 0xdf, 0x30, 0x81, 0xbc, 0x57, 0x67, 0x85, 0xaf, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_4216_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4216_sharedsecret[] = { 0x9f, 0x44, 0xca, 0x6b, 0xc2, 0xb7, 0x3a, 0x65, 0x4d, 0xe2, 0x0c, 0x42, 0x15, 0x90, 0x43, 0x42, 0xee, 0x7f, 0x07, 0x76, 0x03, 0x1b, 0x5c, 0x72, 0x5d, 0xc0, 0xd2, 0xfc, 0x7d, 0xba, 0x6b, 0x1c, 0xe3, 0xb2, 0xf8, 0x0a, 0x53, 0x1c, 0xa1, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4216 = { .name = "ecdh_brainpoolp320r1_4216", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4216_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4216_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4216_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1845 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4217 for ECDH, tcId is 1846 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4217_peerpubkey[] = { 0x00, 0x14, 0x92, 0xc1, 0x38, 0xae, 0x8f, 0xcd, 0x30, 0xc6, 0xff, 0xe9, 0x3f, 0x1e, 0xa8, 0x3f, 0xa6, 0xb8, 0xe5, 0x99, 0x88, 0xf4, 0x14, 0xa7, 0x7d, 0x4e, 0x04, 0x84, 0x1e, 0x9f, 0x4f, 0x60, 0xf4, 0x80, 0x4b, 0xd9, 0x5b, 0x51, 0xd2, 0x61, 0x27, 0x20, 0x85, 0x47, 0xba, 0x9c, 0x9c, 0xe8, 0x28, 0x90, 0x14, 0x4a, 0x1a, 0xe1, 0x73, 0x03, 0xe8, 0x39, 0x7a, 0x65, 0x4a, 0x26, 0xbe, 0xe0, 0x32, 0x44, 0x35, 0xef, 0xd7, 0x89, 0x5d, 0x55, 0x19, 0x5e, 0x43, 0x9a, 0x53, 0x53, 0x69, 0x17, }; static const unsigned char ecdh_brainpoolp320r1_4217_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4217_sharedsecret[] = { 0x20, 0xf2, 0xb1, 0x0b, 0x9f, 0x2c, 0x3a, 0xb0, 0x13, 0x90, 0xc6, 0x53, 0xa0, 0xd4, 0xee, 0xec, 0x3a, 0xea, 0x52, 0x69, 0x36, 0x0c, 0x6b, 0x22, 0x1b, 0x4b, 0xc1, 0x92, 0xc0, 0x12, 0xab, 0x2b, 0xef, 0xe4, 0xb5, 0xc2, 0x44, 0x2d, 0x38, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4217 = { .name = "ecdh_brainpoolp320r1_4217", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4217_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4217_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4217_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 1846 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4218 for ECDH, tcId is 1847 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4218_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x29, 0x11, 0x02, 0x53, 0xd5, 0x2c, 0xf3, 0xc5, 0xfc, 0x33, 0x82, 0xfc, 0xa9, 0x3d, 0x18, 0xad, 0xf7, 0xb9, 0x79, 0x99, 0x02, 0x87, 0x67, 0xb9, 0x72, 0x23, 0x81, 0xdb, 0x68, 0xfe, 0x3a, 0x41, 0x79, 0x3b, 0x7d, 0x99, 0x52, 0xc6, 0x17, 0x7f, }; static const unsigned char ecdh_brainpoolp320r1_4218_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4218_sharedsecret[] = { 0x14, 0x3c, 0xe0, 0xd0, 0xa4, 0xa2, 0xe5, 0xc5, 0xbe, 0x7b, 0xa1, 0xa1, 0xb5, 0x0d, 0xd0, 0x64, 0x6a, 0xd1, 0xfd, 0x89, 0x96, 0xbe, 0x20, 0xeb, 0x5a, 0x3a, 0x6c, 0x7c, 0xec, 0x52, 0xdc, 0x74, 0x85, 0x64, 0xd1, 0x73, 0x14, 0xf7, 0xe8, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4218 = { .name = "ecdh_brainpoolp320r1_4218", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4218_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4218_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4218_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 1847 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4219 for ECDH, tcId is 1848 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4219_peerpubkey[] = { 0x59, 0xf0, 0xf2, 0xc7, 0x4c, 0xfe, 0xf6, 0xe0, 0x85, 0x68, 0x7c, 0x74, 0x18, 0x7c, 0xd8, 0x39, 0xc9, 0xe1, 0xd8, 0x4c, 0xa4, 0x5c, 0x93, 0xe0, 0x66, 0x13, 0xbc, 0x9e, 0x0d, 0xfe, 0x64, 0x19, 0x2e, 0x5a, 0xef, 0x12, 0x82, 0x58, 0x34, 0xa8, 0x56, 0x3a, 0x39, 0xd9, 0xea, 0xfa, 0x5f, 0xa4, 0x4b, 0x01, 0xd4, 0xa1, 0xff, 0xa8, 0x55, 0xa7, 0x94, 0x80, 0xdd, 0x4a, 0x68, 0xcd, 0x52, 0x93, 0xa4, 0x02, 0xd9, 0x48, 0x24, 0xcc, 0x22, 0x03, 0xf5, 0x87, 0x0a, 0x73, 0xf5, 0x3c, 0xb7, 0x4f, }; static const unsigned char ecdh_brainpoolp320r1_4219_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4219_sharedsecret[] = { 0x38, 0x37, 0x42, 0x87, 0x3a, 0x1e, 0xdb, 0x45, 0xd5, 0x78, 0x44, 0xdd, 0xef, 0xfc, 0xeb, 0x5a, 0xaa, 0x00, 0x86, 0x7a, 0x29, 0xc5, 0x8f, 0xd6, 0x3a, 0x1c, 0x21, 0x71, 0xd5, 0x71, 0xd6, 0xc5, 0xa2, 0xf1, 0xb9, 0x1b, 0x9c, 0xfe, 0x61, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4219 = { .name = "ecdh_brainpoolp320r1_4219", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4219_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4219_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4219_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 1848 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4220 for ECDH, tcId is 1849 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4220_peerpubkey[] = { 0x27, 0x94, 0x1f, 0x0a, 0x31, 0x1c, 0x29, 0xb4, 0x99, 0x57, 0x09, 0x53, 0x33, 0x81, 0x54, 0x41, 0x93, 0xf5, 0xcb, 0xa6, 0x6f, 0x57, 0x96, 0xd9, 0x4d, 0xf9, 0x5f, 0x82, 0xb5, 0xab, 0x60, 0xe2, 0xe7, 0xc1, 0x2b, 0x14, 0x88, 0xbb, 0xc6, 0x25, 0xc1, 0xaf, 0x47, 0xf7, 0xd5, 0x0a, 0x31, 0x94, 0x06, 0x81, 0x6e, 0xdd, 0xcd, 0x7e, 0x66, 0x72, 0x9b, 0xc9, 0x6b, 0x58, 0x06, 0xea, 0x4b, 0xf1, 0xe7, 0x43, 0x38, 0x12, 0x0f, 0x5b, 0x77, 0x7d, 0xc7, 0x16, 0x70, 0xad, 0xe1, 0x49, 0x28, 0x6d, }; static const unsigned char ecdh_brainpoolp320r1_4220_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4220_sharedsecret[] = { 0xc0, 0xb3, 0x4d, 0x5f, 0x21, 0x4b, 0xfc, 0x5f, 0xbb, 0x6a, 0x24, 0xca, 0x42, 0x57, 0x0e, 0x11, 0xa0, 0x48, 0xed, 0x81, 0xfe, 0xfe, 0x9b, 0xed, 0xae, 0xd0, 0x7f, 0xcd, 0xa2, 0xce, 0xb9, 0x7a, 0xe9, 0x69, 0x97, 0xb1, 0x0e, 0xcb, 0xd8, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4220 = { .name = "ecdh_brainpoolp320r1_4220", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4220_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4220_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4220_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1, tcId is 1849 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4221 for ECDH, tcId is 1850 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4221_peerpubkey[] = { 0x9a, 0x75, 0x6d, 0x91, 0x31, 0xf1, 0xa6, 0xc7, 0x5a, 0x11, 0x31, 0xc7, 0x70, 0xa8, 0xc2, 0x2c, 0x83, 0x39, 0x01, 0x8d, 0xfe, 0xeb, 0x1a, 0xf1, 0xac, 0xa6, 0x3e, 0x38, 0x68, 0x3c, 0x87, 0x89, 0x1e, 0x47, 0xd8, 0xd4, 0x73, 0xcb, 0x1c, 0xcb, 0x89, 0xc4, 0x84, 0xb3, 0xa9, 0x0d, 0xb1, 0xe6, 0xaa, 0x94, 0x53, 0xad, 0xf9, 0x67, 0x64, 0x20, 0x3c, 0xa6, 0xe4, 0xe2, 0x77, 0x21, 0x46, 0xe4, 0x95, 0xa3, 0xea, 0x9b, 0xbf, 0x38, 0x77, 0x39, 0x5b, 0xd2, 0x34, 0x27, 0x16, 0x01, 0x03, 0x37, }; static const unsigned char ecdh_brainpoolp320r1_4221_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4221_sharedsecret[] = { 0x13, 0x17, 0xfa, 0xa0, 0xf6, 0x1e, 0xba, 0x0f, 0xac, 0x66, 0x5d, 0xee, 0x99, 0xe2, 0xc7, 0xc2, 0xf2, 0x6c, 0xff, 0xc4, 0xe6, 0x43, 0x54, 0x82, 0xbb, 0x64, 0xbf, 0x1e, 0x80, 0x94, 0x96, 0xe1, 0x7e, 0xb6, 0x31, 0x3e, 0x84, 0x16, 0xe2, 0x08, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4221 = { .name = "ecdh_brainpoolp320r1_4221", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4221_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4221_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4221_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1850 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4222 for ECDH, tcId is 1851 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4222_peerpubkey[] = { 0x36, 0x7b, 0x07, 0xe1, 0xd9, 0x3a, 0xd4, 0x8f, 0xe6, 0xc5, 0xe5, 0xb4, 0x37, 0x66, 0x81, 0x37, 0xbd, 0x83, 0x26, 0x5d, 0x74, 0xda, 0x9a, 0x84, 0x03, 0x20, 0xe7, 0x17, 0xc5, 0x38, 0xaa, 0x7e, 0xfe, 0xb1, 0xe8, 0xe0, 0x43, 0xb6, 0xf6, 0x6b, 0x59, 0x0a, 0xbf, 0xf4, 0xd0, 0xec, 0x83, 0xaa, 0xff, 0xa3, 0xbb, 0xea, 0xa4, 0x6b, 0xd1, 0x05, 0x81, 0x8f, 0x4e, 0x3c, 0xc8, 0x0c, 0xbb, 0xf8, 0xdd, 0x06, 0xc5, 0x65, 0x26, 0xd5, 0xb7, 0xc6, 0x52, 0x62, 0x7c, 0xe1, 0x06, 0x6b, 0x0e, 0x6d, }; static const unsigned char ecdh_brainpoolp320r1_4222_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4222_sharedsecret[] = { 0x53, 0x80, 0x54, 0x9d, 0xe6, 0xdb, 0x72, 0xe9, 0x75, 0xdf, 0xd7, 0x3e, 0x99, 0xa1, 0x13, 0xf2, 0xe6, 0xa3, 0xc5, 0xda, 0x54, 0x8c, 0x2f, 0xac, 0xc0, 0xe8, 0xf1, 0x49, 0xf0, 0x32, 0x22, 0xac, 0x19, 0x18, 0x7a, 0x72, 0x7f, 0xe1, 0x2c, 0x5a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4222 = { .name = "ecdh_brainpoolp320r1_4222", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4222_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4222_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4222_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1851 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4223 for ECDH, tcId is 1852 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4223_peerpubkey[] = { 0x5d, 0x69, 0xdc, 0x51, 0xa2, 0x96, 0x85, 0xec, 0xff, 0x8a, 0x16, 0x5d, 0x00, 0x42, 0xf3, 0x3b, 0x2b, 0x77, 0x13, 0x00, 0x58, 0x71, 0xd5, 0xf4, 0xba, 0x0c, 0xdb, 0x79, 0xdf, 0x7d, 0x53, 0xfb, 0x2b, 0xaa, 0x9c, 0x08, 0x92, 0x12, 0xc6, 0xaa, 0x45, 0x5f, 0xd5, 0xb7, 0xef, 0x29, 0xbc, 0x89, 0x28, 0xb0, 0x55, 0xbf, 0x2c, 0xfc, 0xa7, 0x86, 0xdc, 0x84, 0x7b, 0x31, 0xc6, 0x23, 0x1a, 0x69, 0x39, 0xbf, 0xa4, 0x98, 0xdb, 0x93, 0xe9, 0x0e, 0xe8, 0x92, 0xd3, 0x7a, 0xc1, 0xeb, 0xcd, 0x6c, }; static const unsigned char ecdh_brainpoolp320r1_4223_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4223_sharedsecret[] = { 0x87, 0x3a, 0x0b, 0x76, 0x48, 0x90, 0xb4, 0x93, 0x61, 0xfd, 0x65, 0x27, 0xb4, 0xdf, 0x81, 0x85, 0x6d, 0xcd, 0xcb, 0x61, 0x9a, 0x5c, 0x55, 0xae, 0x7b, 0x05, 0xab, 0x2e, 0xfa, 0xae, 0x9e, 0x75, 0xc3, 0x66, 0x0c, 0x66, 0xf0, 0xc4, 0xc4, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4223 = { .name = "ecdh_brainpoolp320r1_4223", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4223_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4223_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4223_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1852 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4224 for ECDH, tcId is 1853 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4224_peerpubkey[] = { 0xbd, 0xf1, 0xc0, 0x58, 0x79, 0xc2, 0x46, 0x10, 0x61, 0xa3, 0x51, 0xb3, 0x05, 0x26, 0x9f, 0x63, 0x09, 0x96, 0x8e, 0x57, 0x53, 0x5a, 0x2a, 0x75, 0x74, 0xa6, 0x12, 0x67, 0xee, 0xf4, 0x97, 0x9f, 0xd0, 0x01, 0x20, 0x9b, 0xce, 0x02, 0xc4, 0x14, 0x65, 0xb0, 0xe8, 0xc4, 0x0f, 0x92, 0xf0, 0x15, 0xd3, 0xc0, 0x3d, 0xe0, 0xf6, 0x4a, 0x63, 0xeb, 0xb5, 0x25, 0xfa, 0x5a, 0x19, 0x75, 0x91, 0x0c, 0x74, 0x46, 0xe1, 0x25, 0x65, 0x95, 0x42, 0x21, 0x08, 0xfe, 0x0e, 0x67, 0x15, 0x09, 0xc1, 0x7a, }; static const unsigned char ecdh_brainpoolp320r1_4224_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4224_sharedsecret[] = { 0x86, 0x5d, 0xe8, 0x38, 0x15, 0x41, 0x90, 0x9f, 0x5d, 0xd4, 0x28, 0x3a, 0xde, 0x9e, 0x28, 0xc2, 0xb6, 0xf1, 0x55, 0xb3, 0xf7, 0x68, 0x81, 0xff, 0xf0, 0x39, 0x53, 0x99, 0x9b, 0xce, 0x3a, 0x45, 0xd4, 0xfc, 0x76, 0xe2, 0x65, 0xdf, 0x88, 0x8a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4224 = { .name = "ecdh_brainpoolp320r1_4224", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4224_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4224_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4224_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1853 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4225 for ECDH, tcId is 1854 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4225_peerpubkey[] = { 0x89, 0x7c, 0xb2, 0x39, 0x9e, 0xac, 0xeb, 0xcf, 0xf9, 0x7f, 0x30, 0x5d, 0xdd, 0x7d, 0xfb, 0x63, 0x13, 0xd4, 0x44, 0xdb, 0x2f, 0x3a, 0x83, 0x1a, 0x5a, 0x3d, 0x0b, 0xc9, 0xbd, 0x82, 0x5e, 0x36, 0x05, 0x7f, 0x1a, 0xfe, 0xd7, 0xbb, 0x12, 0x98, 0xc9, 0xfe, 0x5a, 0x3c, 0xf0, 0xcd, 0xd2, 0xab, 0xfd, 0x99, 0x51, 0xa5, 0xcf, 0xb2, 0x0b, 0xdc, 0x41, 0x92, 0xd4, 0xda, 0x4c, 0x69, 0x39, 0x3e, 0x1a, 0x76, 0x73, 0x10, 0x05, 0xac, 0xb9, 0xad, 0x81, 0x97, 0xbb, 0x27, 0xdd, 0x8b, 0xd9, 0x1f, }; static const unsigned char ecdh_brainpoolp320r1_4225_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4225_sharedsecret[] = { 0x63, 0xb1, 0x25, 0xd2, 0x7e, 0xaa, 0xd2, 0xc7, 0xb4, 0xd7, 0xe7, 0xf8, 0x90, 0xdb, 0x35, 0x5e, 0xe1, 0xd9, 0xd9, 0x11, 0x54, 0xcd, 0xbb, 0xd7, 0x27, 0xb4, 0x9f, 0xdd, 0x45, 0xec, 0x58, 0x92, 0xdc, 0x24, 0x24, 0x33, 0x0a, 0x28, 0xbb, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4225 = { .name = "ecdh_brainpoolp320r1_4225", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4225_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4225_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4225_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1854 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4226 for ECDH, tcId is 1855 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4226_peerpubkey[] = { 0xb4, 0xd6, 0xea, 0xbb, 0x91, 0xa7, 0xd5, 0x43, 0x37, 0x79, 0x33, 0xec, 0x92, 0x71, 0x67, 0x09, 0x73, 0x37, 0x83, 0x91, 0xb6, 0x89, 0xd9, 0x52, 0x6c, 0x23, 0x45, 0xa4, 0x83, 0xf2, 0x39, 0xee, 0x30, 0x5e, 0x2c, 0x10, 0xf3, 0x37, 0xad, 0xf2, 0x7d, 0xd0, 0x3a, 0x14, 0xba, 0x16, 0xbe, 0x16, 0xdc, 0x89, 0xfc, 0xaf, 0x23, 0xa3, 0xdf, 0xbc, 0xc7, 0x85, 0x80, 0xb7, 0x06, 0xda, 0x81, 0x7c, 0x3b, 0x10, 0xb1, 0xfe, 0x8b, 0x6d, 0x27, 0x5c, 0x90, 0xac, 0xeb, 0xcd, 0xd2, 0xad, 0xc3, 0x3a, }; static const unsigned char ecdh_brainpoolp320r1_4226_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4226_sharedsecret[] = { 0x2a, 0xf9, 0xa7, 0xc4, 0x79, 0x4a, 0xad, 0xc2, 0x36, 0x46, 0x69, 0xd6, 0x88, 0x5a, 0x0c, 0x4d, 0x60, 0xaf, 0x8d, 0x1a, 0xf8, 0xfc, 0xad, 0xa0, 0xd2, 0x73, 0xbd, 0xc5, 0x2c, 0x65, 0x0f, 0xcd, 0xb3, 0x92, 0xab, 0x5b, 0x75, 0xe4, 0x42, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4226 = { .name = "ecdh_brainpoolp320r1_4226", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4226_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4226_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4226_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1855 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4227 for ECDH, tcId is 1856 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4227_peerpubkey[] = { 0x43, 0x32, 0xe6, 0xd2, 0xbf, 0x32, 0x86, 0xe9, 0xbb, 0x1b, 0xc5, 0xc3, 0xa1, 0x24, 0x98, 0x8b, 0x97, 0x36, 0x50, 0x6d, 0xa3, 0xc4, 0x01, 0x75, 0x11, 0xf5, 0x83, 0x68, 0xe7, 0xce, 0x15, 0xd0, 0x87, 0x8c, 0x26, 0xb1, 0x8d, 0xa7, 0xd6, 0x8a, 0x44, 0xef, 0x6c, 0xde, 0xc0, 0xa1, 0xff, 0x81, 0xb5, 0xc5, 0xbd, 0xa3, 0xb7, 0x73, 0xae, 0xc6, 0x5b, 0x95, 0xd7, 0xed, 0x94, 0xd8, 0x95, 0xd2, 0xbf, 0x96, 0x9b, 0xc2, 0x4d, 0x20, 0x62, 0xe7, 0xa5, 0xa3, 0xc8, 0xf4, 0xb8, 0x1c, 0x07, 0xb7, }; static const unsigned char ecdh_brainpoolp320r1_4227_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4227_sharedsecret[] = { 0x5f, 0x1e, 0xa3, 0x8f, 0xbd, 0xd4, 0xe1, 0xaf, 0x0d, 0x41, 0x04, 0xa7, 0x49, 0xb3, 0x72, 0xcb, 0xc9, 0x6d, 0x06, 0x15, 0xbf, 0x07, 0x5f, 0xa0, 0x5e, 0xa4, 0x5d, 0x1f, 0x90, 0x14, 0x8a, 0xe9, 0x98, 0x2c, 0x4a, 0xed, 0xc0, 0x0b, 0x59, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4227 = { .name = "ecdh_brainpoolp320r1_4227", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4227_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4227_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4227_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1856 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4228 for ECDH, tcId is 1857 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4228_peerpubkey[] = { 0x6b, 0xb2, 0x7b, 0x19, 0xb7, 0x0a, 0xe5, 0x14, 0xe8, 0x98, 0x4f, 0xfb, 0x26, 0x4c, 0x11, 0x9b, 0xc3, 0x7b, 0x61, 0x62, 0xc4, 0x6f, 0x9c, 0x24, 0xef, 0xe8, 0xf5, 0xc1, 0xd9, 0xc6, 0x85, 0xb4, 0xad, 0xf6, 0xd2, 0x3f, 0xe6, 0x99, 0xe6, 0x33, 0x8a, 0x2a, 0x21, 0xd9, 0xc0, 0x26, 0xb8, 0x4a, 0x3a, 0x8b, 0xc0, 0x8c, 0x50, 0x47, 0x90, 0xf4, 0xf4, 0x9f, 0xe8, 0x43, 0xc5, 0x65, 0x32, 0x9b, 0x79, 0x77, 0x32, 0xe6, 0x42, 0xae, 0x9b, 0xa5, 0xf2, 0xe2, 0x2a, 0xc8, 0x7e, 0xd9, 0xee, 0x97, }; static const unsigned char ecdh_brainpoolp320r1_4228_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4228_sharedsecret[] = { 0x1a, 0xaf, 0x0f, 0xdf, 0x25, 0x0b, 0x2c, 0x4d, 0x58, 0x14, 0x0e, 0x5f, 0x26, 0x40, 0x11, 0x59, 0x87, 0x7f, 0xb6, 0xf4, 0xc7, 0x81, 0x76, 0x68, 0x85, 0x0e, 0xc4, 0x16, 0x81, 0xa6, 0x0c, 0x39, 0x73, 0xde, 0x26, 0x22, 0xbd, 0xa9, 0xd6, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4228 = { .name = "ecdh_brainpoolp320r1_4228", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4228_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4228_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4228_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1857 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4229 for ECDH, tcId is 1858 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4229_peerpubkey[] = { 0xb0, 0xe1, 0x5a, 0xf4, 0xe8, 0x49, 0xe1, 0x02, 0xa6, 0x93, 0x7c, 0xde, 0x7d, 0x1e, 0x3d, 0xa5, 0x11, 0xd4, 0xdc, 0x26, 0x8c, 0x4a, 0x03, 0x5f, 0x57, 0xb8, 0xa4, 0x08, 0x8b, 0x17, 0x25, 0xf2, 0x33, 0xdf, 0xaa, 0xa3, 0x52, 0x7f, 0xc8, 0xf2, 0x44, 0xa5, 0x41, 0x6d, 0x65, 0xcc, 0xde, 0xb7, 0x80, 0x8c, 0x5c, 0xfe, 0x26, 0xb5, 0x97, 0x54, 0x01, 0x49, 0xf6, 0x82, 0x46, 0xa3, 0x6f, 0x3f, 0x61, 0x29, 0xb9, 0x42, 0x51, 0xb7, 0xdb, 0x49, 0x97, 0x09, 0xe6, 0x36, 0xc1, 0xb2, 0x39, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_4229_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4229_sharedsecret[] = { 0x82, 0xec, 0x7d, 0xc3, 0x4b, 0x0a, 0x25, 0x84, 0xd3, 0x2e, 0x58, 0x3d, 0x2a, 0x60, 0xc4, 0xc5, 0x38, 0x5a, 0x5e, 0x65, 0x9f, 0x8c, 0x60, 0x84, 0x4d, 0x38, 0xc1, 0xfa, 0xd5, 0x37, 0x08, 0xcd, 0xf6, 0x9b, 0x8f, 0x2c, 0x38, 0x5d, 0x1d, 0x81, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4229 = { .name = "ecdh_brainpoolp320r1_4229", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4229_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4229_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4229_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1858 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4230 for ECDH, tcId is 1859 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4230_peerpubkey[] = { 0x91, 0xd2, 0x43, 0x3e, 0xab, 0x88, 0x8f, 0xc7, 0x49, 0x05, 0xc6, 0xfe, 0xd7, 0x5d, 0x33, 0x79, 0xc8, 0x70, 0xb1, 0xa6, 0x3c, 0xe9, 0xaa, 0x03, 0x0a, 0x44, 0x1e, 0x3f, 0x62, 0xc7, 0xc1, 0x7b, 0x20, 0x7b, 0x11, 0x22, 0x21, 0xd2, 0xdd, 0x3c, 0x76, 0x52, 0xda, 0x13, 0x23, 0xf5, 0x35, 0xec, 0xc0, 0x31, 0x05, 0xc0, 0x56, 0x2b, 0xc8, 0x6d, 0x71, 0x64, 0x1a, 0x8e, 0xb4, 0x9a, 0x17, 0x4f, 0x23, 0xcd, 0xa2, 0x8f, 0x1a, 0xc8, 0xc6, 0xbb, 0xd8, 0x62, 0x5a, 0x9e, 0x70, 0xf3, 0xeb, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_4230_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4230_sharedsecret[] = { 0x84, 0xc4, 0x04, 0x4c, 0x00, 0x60, 0x96, 0xa7, 0x3b, 0x72, 0x0d, 0x61, 0x4e, 0x1c, 0x71, 0x30, 0x58, 0xc2, 0x3e, 0xdd, 0x86, 0xf2, 0xe8, 0x20, 0xbc, 0x7c, 0xec, 0x1e, 0x28, 0xa0, 0x86, 0x2a, 0x22, 0x1f, 0xce, 0xee, 0x2c, 0x9b, 0x79, 0x34, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4230 = { .name = "ecdh_brainpoolp320r1_4230", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4230_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4230_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4230_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1859 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4231 for ECDH, tcId is 1860 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4231_peerpubkey[] = { 0xc6, 0x48, 0x62, 0xbd, 0x82, 0x56, 0xe3, 0x6a, 0x5f, 0x1a, 0x9b, 0x3a, 0x39, 0x64, 0xb9, 0xde, 0x6e, 0x04, 0xd6, 0xfd, 0x3d, 0xaf, 0x9a, 0xcc, 0xa7, 0x6f, 0x73, 0x1f, 0x59, 0xca, 0xe7, 0x2d, 0x0b, 0x67, 0x11, 0x9c, 0x97, 0xa2, 0x01, 0x09, 0xb5, 0x9a, 0xdd, 0xb3, 0x7d, 0x16, 0x19, 0x41, 0x6a, 0x48, 0x42, 0x52, 0x32, 0x23, 0x2a, 0x35, 0xed, 0xa5, 0xe5, 0x90, 0x57, 0xf0, 0xaf, 0xe0, 0x30, 0x59, 0x42, 0x62, 0x1b, 0xe7, 0x6f, 0xcc, 0xdc, 0x70, 0x18, 0x78, 0x60, 0x4c, 0xb0, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4231_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4231_sharedsecret[] = { 0x73, 0xae, 0x02, 0x43, 0x8e, 0x60, 0x78, 0x8c, 0x51, 0xb4, 0xce, 0xa1, 0xe9, 0x75, 0x32, 0xf1, 0xee, 0x0a, 0x1f, 0x93, 0xd2, 0x6c, 0xb2, 0x9b, 0x7a, 0x8a, 0xa6, 0xe4, 0x55, 0x32, 0xde, 0xdf, 0xf0, 0xaf, 0x61, 0x46, 0xa1, 0x77, 0x26, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4231 = { .name = "ecdh_brainpoolp320r1_4231", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4231_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4231_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4231_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1860 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4232 for ECDH, tcId is 1861 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4232_peerpubkey[] = { 0x0b, 0xac, 0x6a, 0xfc, 0xac, 0xa3, 0x8f, 0xf3, 0xd3, 0x45, 0xaa, 0x77, 0x71, 0x1e, 0xdf, 0x00, 0xea, 0x72, 0xef, 0x7d, 0x73, 0xc6, 0xe4, 0x3a, 0xdc, 0x5b, 0x6e, 0xbe, 0xb5, 0x79, 0x79, 0x7a, 0x11, 0x02, 0x96, 0xd1, 0x9f, 0xc1, 0xa1, 0x10, 0x46, 0x4b, 0xde, 0x0d, 0x4d, 0x00, 0xfe, 0xd9, 0x05, 0xeb, 0x7f, 0xa4, 0xc0, 0xb0, 0x55, 0xd4, 0x86, 0x16, 0xa6, 0x60, 0x8b, 0x91, 0x10, 0x97, 0x27, 0xf1, 0xcb, 0xe2, 0x43, 0xcf, 0xaa, 0x0e, 0x5f, 0x14, 0xeb, 0xcf, 0xfc, 0x73, 0x40, 0xc7, }; static const unsigned char ecdh_brainpoolp320r1_4232_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4232_sharedsecret[] = { 0x36, 0x6c, 0x18, 0x79, 0x47, 0x9f, 0x24, 0xc8, 0xb3, 0xd7, 0xb4, 0x9d, 0x08, 0x8e, 0x9b, 0xfd, 0xdf, 0xeb, 0x0e, 0x59, 0x72, 0x8e, 0x7b, 0x09, 0x84, 0xd4, 0x07, 0x22, 0x75, 0x84, 0x3e, 0x7e, 0x02, 0xba, 0x01, 0x0d, 0x3a, 0xf8, 0x7b, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4232 = { .name = "ecdh_brainpoolp320r1_4232", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4232_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4232_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4232_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1861 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4233 for ECDH, tcId is 1862 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4233_peerpubkey[] = { 0x4b, 0xb4, 0xf7, 0x6c, 0xa8, 0x9b, 0x92, 0x34, 0xbc, 0x94, 0xed, 0xda, 0xf1, 0x95, 0x9e, 0x01, 0xf3, 0xd2, 0x84, 0xe5, 0x3f, 0x43, 0xd7, 0xbd, 0xb1, 0x7a, 0xa0, 0x07, 0xbb, 0xa3, 0xb1, 0xfa, 0xbf, 0xbd, 0x27, 0x39, 0xb2, 0x69, 0x8d, 0xbe, 0x2a, 0x7c, 0xb6, 0xe4, 0x61, 0xd3, 0x98, 0xdc, 0xbe, 0xe3, 0x0e, 0x57, 0xaf, 0x79, 0xc1, 0x19, 0x43, 0xed, 0xa4, 0x2c, 0x9a, 0x1b, 0xa8, 0xa6, 0xe5, 0x73, 0x64, 0x0e, 0x16, 0x37, 0x76, 0xd8, 0x0a, 0x9c, 0xcb, 0x74, 0x28, 0x86, 0x70, 0x14, }; static const unsigned char ecdh_brainpoolp320r1_4233_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4233_sharedsecret[] = { 0xb2, 0x09, 0x92, 0x88, 0x4d, 0x78, 0xf3, 0x47, 0xb5, 0x15, 0x80, 0xa3, 0x01, 0x3e, 0x94, 0x7e, 0x82, 0x24, 0xbf, 0xce, 0x90, 0x15, 0x89, 0x02, 0x78, 0x2a, 0x2a, 0xef, 0x6d, 0x69, 0xe6, 0x7b, 0x99, 0x70, 0x39, 0x59, 0xda, 0x29, 0x5a, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4233 = { .name = "ecdh_brainpoolp320r1_4233", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4233_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4233_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4233_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1862 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4234 for ECDH, tcId is 1863 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4234_peerpubkey[] = { 0xc8, 0x30, 0xd7, 0xda, 0x94, 0xab, 0x15, 0x78, 0x99, 0x6d, 0x59, 0x0f, 0xa8, 0x59, 0xf1, 0xe4, 0x4f, 0x85, 0xc0, 0xcf, 0x6d, 0xd1, 0x44, 0x38, 0x6b, 0xe2, 0x96, 0x5c, 0xf8, 0x7a, 0x5c, 0x3e, 0x58, 0xd6, 0xb4, 0x84, 0x8e, 0x7b, 0x6e, 0xed, 0x86, 0xbe, 0xa6, 0x59, 0x01, 0x54, 0x91, 0x27, 0x97, 0x3c, 0x94, 0xc9, 0x89, 0xd8, 0xcd, 0xbf, 0xec, 0x26, 0x98, 0xfe, 0x26, 0xcf, 0x66, 0x31, 0x5b, 0xf7, 0xef, 0xae, 0xc9, 0x8d, 0x28, 0x70, 0xb4, 0x81, 0x39, 0x08, 0x21, 0x3b, 0xf7, 0x62, }; static const unsigned char ecdh_brainpoolp320r1_4234_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4234_sharedsecret[] = { 0x55, 0xf3, 0xc8, 0x56, 0x97, 0x69, 0x2d, 0x34, 0x4b, 0x63, 0xa1, 0x42, 0x5a, 0xf1, 0x1f, 0x94, 0x89, 0x53, 0xa6, 0x5b, 0x7d, 0xed, 0x49, 0x7a, 0x61, 0x88, 0xb9, 0x83, 0xc4, 0xe6, 0xd6, 0x39, 0x1f, 0x14, 0xae, 0x76, 0x31, 0xd0, 0x50, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4234 = { .name = "ecdh_brainpoolp320r1_4234", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4234_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4234_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4234_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1863 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4235 for ECDH, tcId is 1864 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4235_peerpubkey[] = { 0x60, 0x45, 0x44, 0x23, 0x48, 0xeb, 0x3e, 0x83, 0xac, 0xf2, 0x7d, 0xac, 0xf9, 0xbc, 0x84, 0xf0, 0xbe, 0x84, 0x4e, 0xbb, 0x3d, 0x37, 0x4b, 0xbe, 0x77, 0x1b, 0x72, 0xe4, 0xcc, 0x79, 0xb5, 0xdc, 0x85, 0x7b, 0x1d, 0x13, 0x16, 0xec, 0xcd, 0x5b, 0x48, 0xa4, 0x51, 0xae, 0xfa, 0xae, 0xe8, 0x12, 0x60, 0x40, 0x2e, 0x26, 0x85, 0xf2, 0xf9, 0x2c, 0x74, 0x36, 0x51, 0xf6, 0x00, 0x42, 0x4c, 0x55, 0xaa, 0x87, 0x0f, 0x58, 0x77, 0x0b, 0xbd, 0xf4, 0xbf, 0xd5, 0x74, 0x05, 0xbe, 0xb8, 0x7c, 0x5c, }; static const unsigned char ecdh_brainpoolp320r1_4235_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4235_sharedsecret[] = { 0xb1, 0x76, 0x05, 0xa7, 0x0c, 0x14, 0x25, 0x48, 0xfe, 0xf6, 0x26, 0x5d, 0x2c, 0x0e, 0xb0, 0x23, 0x51, 0x58, 0xfc, 0x34, 0x28, 0xc8, 0x24, 0xdb, 0x37, 0xd0, 0x2c, 0xcc, 0x69, 0xbf, 0x33, 0x2d, 0xab, 0x71, 0x42, 0x8f, 0xd6, 0x90, 0xbb, 0x52, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4235 = { .name = "ecdh_brainpoolp320r1_4235", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4235_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4235_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4235_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1864 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4236 for ECDH, tcId is 1865 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4236_peerpubkey[] = { 0x72, 0x07, 0x7f, 0xe3, 0x71, 0xec, 0x06, 0x65, 0x01, 0x9c, 0xfd, 0x1d, 0x72, 0x35, 0x47, 0x5b, 0xc0, 0xcc, 0xaa, 0xd6, 0x42, 0x22, 0x20, 0xe7, 0x55, 0x4f, 0x64, 0xed, 0x9c, 0xd1, 0xdf, 0x5c, 0x4a, 0x71, 0xdf, 0x5a, 0x21, 0x65, 0x92, 0x76, 0xb6, 0x13, 0x72, 0xf9, 0x07, 0xd6, 0xb7, 0xaf, 0xda, 0xc6, 0xc9, 0x6e, 0x64, 0x16, 0xba, 0xa9, 0xc6, 0xb0, 0x6b, 0xf6, 0xc4, 0x6b, 0x91, 0x9a, 0xbd, 0xaf, 0xb1, 0xa4, 0xd8, 0x28, 0x97, 0x9c, 0xf2, 0x82, 0xcc, 0x96, 0x23, 0x3d, 0x60, 0x9b, }; static const unsigned char ecdh_brainpoolp320r1_4236_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4236_sharedsecret[] = { 0x22, 0x0c, 0x92, 0xcd, 0x3b, 0x7f, 0xf1, 0xa8, 0xfe, 0xb2, 0x18, 0xf2, 0xc5, 0x67, 0x07, 0x31, 0xfd, 0x45, 0x61, 0xcc, 0xe1, 0x52, 0xfc, 0x1f, 0x5a, 0x9b, 0xcb, 0xdf, 0x50, 0x98, 0x0c, 0x9d, 0x23, 0xe6, 0xe9, 0x15, 0xc8, 0x50, 0x10, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4236 = { .name = "ecdh_brainpoolp320r1_4236", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4236_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4236_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4236_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1865 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4237 for ECDH, tcId is 1866 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4237_peerpubkey[] = { 0x90, 0xbb, 0xc7, 0xf7, 0x44, 0x2d, 0x4a, 0x65, 0x40, 0x12, 0x3b, 0xd3, 0x20, 0x50, 0x39, 0xbe, 0x57, 0x2c, 0x3d, 0x05, 0xc7, 0x44, 0x13, 0xeb, 0x4f, 0x8e, 0xe8, 0xc9, 0xe1, 0xbc, 0xa0, 0xf8, 0xb3, 0x87, 0xfe, 0xcb, 0x4c, 0x75, 0xbe, 0x28, 0xbd, 0x38, 0x79, 0x62, 0xa5, 0x50, 0xc7, 0xac, 0xb1, 0xc3, 0x90, 0x05, 0x4b, 0x89, 0xaa, 0x38, 0x1d, 0xbb, 0xfe, 0xdc, 0xdb, 0xaf, 0x48, 0x03, 0x57, 0x27, 0xb2, 0x37, 0x73, 0xa7, 0x78, 0xfe, 0xf7, 0x54, 0x67, 0x97, 0xa6, 0x84, 0xd9, 0x28, }; static const unsigned char ecdh_brainpoolp320r1_4237_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4237_sharedsecret[] = { 0x3f, 0xe2, 0x91, 0x3d, 0x84, 0xae, 0x9e, 0x33, 0xa2, 0x08, 0xaf, 0x3a, 0x9d, 0x2c, 0xfb, 0x5c, 0xf6, 0x51, 0x8f, 0x8b, 0x14, 0x67, 0x05, 0x99, 0x5c, 0xee, 0x08, 0x7e, 0xad, 0xdb, 0x41, 0x00, 0x0b, 0x1a, 0x18, 0xfc, 0x89, 0x40, 0x8d, 0x70, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4237 = { .name = "ecdh_brainpoolp320r1_4237", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4237_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4237_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4237_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1866 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4238 for ECDH, tcId is 1867 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4238_peerpubkey[] = { 0x77, 0x82, 0xc1, 0xea, 0x46, 0xa6, 0x2b, 0x8d, 0x2f, 0x60, 0x00, 0x70, 0x25, 0x78, 0x25, 0x4b, 0xaf, 0x1e, 0x4d, 0x5f, 0xfc, 0x61, 0xf4, 0x18, 0xa6, 0xef, 0x7a, 0xa9, 0x16, 0xca, 0x0f, 0x6e, 0x15, 0xf2, 0x5d, 0xa5, 0xa4, 0x89, 0xb1, 0x96, 0x38, 0xcf, 0xd2, 0xd2, 0x6f, 0xb2, 0x5f, 0xf9, 0x6f, 0xde, 0x59, 0xff, 0x3e, 0xb3, 0xc7, 0x8e, 0x08, 0x78, 0xfa, 0xda, 0x9f, 0xf0, 0xa1, 0x8c, 0xd9, 0x13, 0xe6, 0x93, 0x38, 0x9a, 0xaf, 0x45, 0xef, 0x1e, 0x6a, 0x30, 0xd0, 0xeb, 0x12, 0x02, }; static const unsigned char ecdh_brainpoolp320r1_4238_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4238_sharedsecret[] = { 0x43, 0x75, 0x53, 0xab, 0x52, 0x30, 0xfc, 0x92, 0x1a, 0x80, 0x48, 0x49, 0xd9, 0xfd, 0x61, 0x4d, 0xa3, 0x07, 0xb9, 0x42, 0x35, 0xe6, 0x8f, 0xb4, 0xc5, 0x6c, 0xb0, 0x33, 0xad, 0xb5, 0x0c, 0xbe, 0x05, 0x29, 0x96, 0x7b, 0x45, 0xc9, 0xd1, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4238 = { .name = "ecdh_brainpoolp320r1_4238", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4238_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4238_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4238_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1867 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4239 for ECDH, tcId is 1868 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4239_peerpubkey[] = { 0x28, 0xe4, 0x12, 0xeb, 0x78, 0xd9, 0x71, 0x4a, 0xb7, 0x67, 0xa7, 0x98, 0x73, 0x6e, 0xf8, 0x73, 0x2a, 0x9e, 0xfe, 0xd0, 0x45, 0x32, 0xd4, 0x8d, 0x31, 0xa3, 0x4f, 0x73, 0x75, 0xbf, 0xa9, 0x4b, 0x67, 0x2b, 0x66, 0x1c, 0xed, 0xac, 0xa4, 0x2f, 0x28, 0x0e, 0x69, 0xef, 0x2a, 0x21, 0x6b, 0x49, 0xc9, 0xd9, 0x34, 0x4a, 0xef, 0x11, 0x92, 0x65, 0x38, 0x11, 0x6e, 0x91, 0xf8, 0x4c, 0x9e, 0x54, 0xcd, 0x09, 0x83, 0xd7, 0x19, 0x04, 0x0d, 0xaa, 0x9a, 0x9b, 0x1a, 0xaa, 0x77, 0x83, 0xed, 0x9f, }; static const unsigned char ecdh_brainpoolp320r1_4239_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4239_sharedsecret[] = { 0x4a, 0x6e, 0x09, 0xfc, 0xd8, 0x73, 0x77, 0xc3, 0xcc, 0xf2, 0x09, 0x18, 0x7a, 0x2c, 0x79, 0x86, 0x57, 0xdd, 0x78, 0x25, 0x76, 0xf4, 0x3f, 0x5c, 0xb3, 0x6e, 0x28, 0x1d, 0x6b, 0x14, 0x7c, 0xbf, 0x24, 0x90, 0x32, 0xa0, 0x21, 0x76, 0xe1, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4239 = { .name = "ecdh_brainpoolp320r1_4239", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4239_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4239_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4239_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1868 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4240 for ECDH, tcId is 1869 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4240_peerpubkey[] = { 0xb7, 0xc5, 0x9b, 0x18, 0xe1, 0xa2, 0x97, 0x3d, 0xb0, 0xd1, 0x9e, 0x1a, 0x99, 0xcd, 0xbb, 0x65, 0xa0, 0x05, 0xe9, 0xcf, 0x91, 0xa2, 0xc3, 0x43, 0xe4, 0xf8, 0x5b, 0x47, 0xc8, 0xd3, 0x52, 0xf0, 0xb8, 0xf5, 0xbc, 0x63, 0xeb, 0xdb, 0xf8, 0x42, 0xd0, 0xc5, 0x30, 0x32, 0x9b, 0x6a, 0x9c, 0x46, 0x6b, 0xc2, 0x44, 0x69, 0x8e, 0x34, 0xa7, 0x63, 0xbc, 0x7b, 0x02, 0x2c, 0xfe, 0x67, 0x1e, 0x3e, 0x13, 0xca, 0x64, 0xd5, 0xe0, 0x73, 0xe8, 0xd1, 0x42, 0xc7, 0xdf, 0x00, 0x0e, 0x3d, 0x3a, 0x4e, }; static const unsigned char ecdh_brainpoolp320r1_4240_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4240_sharedsecret[] = { 0xc4, 0xe0, 0xac, 0x86, 0xed, 0x19, 0x42, 0x59, 0x93, 0xb3, 0x37, 0x00, 0x91, 0xd6, 0x80, 0xfa, 0xe0, 0x72, 0xa8, 0x7d, 0xa5, 0xe3, 0x6e, 0x09, 0x55, 0xc9, 0x7b, 0x0a, 0x5c, 0xd7, 0x65, 0xcb, 0xa3, 0x2e, 0x41, 0x19, 0x95, 0xc3, 0xe6, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4240 = { .name = "ecdh_brainpoolp320r1_4240", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4240_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4240_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4240_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1869 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4241 for ECDH, tcId is 1870 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4241_peerpubkey[] = { 0x79, 0x09, 0x9f, 0x04, 0x9d, 0x51, 0xb2, 0x9d, 0x3e, 0x19, 0xac, 0xd5, 0x48, 0x6d, 0x3d, 0x15, 0x31, 0x6a, 0x66, 0xab, 0x59, 0xe9, 0x15, 0xbb, 0xac, 0x2c, 0x9e, 0xb8, 0x4b, 0x67, 0xdd, 0x4f, 0x65, 0xf2, 0x01, 0x42, 0x8b, 0xa3, 0xce, 0x2f, 0x4b, 0x22, 0xec, 0x67, 0xc9, 0xd9, 0xc9, 0x5a, 0xcb, 0x0a, 0xec, 0xdc, 0xe2, 0x20, 0xbb, 0xe2, 0x6c, 0xc3, 0x6b, 0x09, 0x10, 0xaf, 0x61, 0xac, 0x92, 0x08, 0xaa, 0xe5, 0xef, 0x71, 0x96, 0xbc, 0x8b, 0x3d, 0xbf, 0x3c, 0xca, 0x45, 0x67, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4241_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4241_sharedsecret[] = { 0x06, 0x81, 0x6d, 0xba, 0xe7, 0x2d, 0xfb, 0x90, 0xff, 0x66, 0xd8, 0xeb, 0x72, 0x15, 0x20, 0x20, 0x0c, 0xf8, 0x4d, 0xae, 0x6a, 0xa7, 0xbd, 0xa5, 0x7f, 0x0c, 0x7a, 0x84, 0x84, 0x30, 0xe7, 0x4a, 0x6b, 0xb7, 0xde, 0xec, 0xb2, 0x68, 0x71, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4241 = { .name = "ecdh_brainpoolp320r1_4241", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4241_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4241_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4241_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 1870 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4242 for ECDH, tcId is 1871 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4242_peerpubkey[] = { 0xb4, 0xec, 0x81, 0xbf, 0x86, 0x59, 0x03, 0xff, 0x50, 0x75, 0xa3, 0xc0, 0x07, 0xf8, 0x26, 0x24, 0xcf, 0x6b, 0x41, 0xf7, 0xe9, 0x88, 0x0c, 0x27, 0xc0, 0xe1, 0x57, 0xbf, 0x4c, 0xc4, 0x0d, 0x01, 0x9a, 0x78, 0x04, 0x36, 0x97, 0x83, 0xd3, 0xcd, 0xd2, 0xe3, 0xd0, 0xca, 0x81, 0xe6, 0x98, 0x18, 0xe8, 0x83, 0x91, 0x3b, 0x31, 0x4f, 0x5a, 0x7c, 0xc2, 0xb7, 0xd0, 0xdc, 0x42, 0x9f, 0x3f, 0xd7, 0xf7, 0x37, 0x0c, 0xb8, 0x50, 0x09, 0x32, 0x66, 0x89, 0x33, 0x45, 0x39, 0x01, 0x6b, 0x10, 0xf4, }; static const unsigned char ecdh_brainpoolp320r1_4242_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4242_sharedsecret[] = { 0x1d, 0xfa, 0xdf, 0x57, 0x91, 0x16, 0x89, 0x56, 0xfd, 0x92, 0xbc, 0x5b, 0x34, 0x09, 0x33, 0x54, 0x76, 0x53, 0xd1, 0x1a, 0x70, 0x28, 0x1c, 0xa9, 0xd1, 0x6e, 0xb3, 0x21, 0x7f, 0xf9, 0xf0, 0x58, 0x87, 0x9c, 0x2f, 0xc6, 0xf4, 0x6e, 0x42, 0x93, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4242 = { .name = "ecdh_brainpoolp320r1_4242", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4242_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4242_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4242_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1871 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4243 for ECDH, tcId is 1872 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4243_peerpubkey[] = { 0x5c, 0xa4, 0x85, 0x8a, 0x04, 0xe6, 0xf1, 0x89, 0xc8, 0xe7, 0x9f, 0xba, 0x97, 0x3c, 0x60, 0x4d, 0x3c, 0x0e, 0xcb, 0x10, 0x12, 0x6f, 0x04, 0xc1, 0xe1, 0x33, 0x24, 0x54, 0xfe, 0x1d, 0x92, 0x42, 0xad, 0x18, 0x25, 0x59, 0xe2, 0xdb, 0xcc, 0x10, 0x21, 0xee, 0x09, 0x73, 0x46, 0xca, 0x8e, 0x7c, 0xef, 0x9f, 0x23, 0x57, 0x77, 0x43, 0xfb, 0x05, 0x00, 0xcb, 0x55, 0xc9, 0x82, 0x0c, 0x59, 0x23, 0xdc, 0x7a, 0xab, 0x9b, 0x47, 0xfc, 0xdb, 0x9f, 0xb9, 0x35, 0x25, 0x01, 0x7f, 0xc1, 0xac, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_4243_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4243_sharedsecret[] = { 0x29, 0x1d, 0x8a, 0x69, 0x23, 0x5e, 0x62, 0x6a, 0x97, 0x8e, 0xd4, 0x3c, 0x3f, 0xbe, 0x2f, 0xfd, 0x70, 0xb1, 0x6b, 0x40, 0x26, 0x0c, 0xdb, 0xc9, 0xb7, 0xff, 0xa4, 0x67, 0xa5, 0x5c, 0xd0, 0xab, 0xcd, 0x7e, 0x74, 0x51, 0x08, 0x8b, 0xdb, 0xa5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4243 = { .name = "ecdh_brainpoolp320r1_4243", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4243_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4243_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4243_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1872 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4244 for ECDH, tcId is 1873 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4244_peerpubkey[] = { 0x82, 0x3e, 0x37, 0x5a, 0xae, 0x80, 0x5d, 0xc0, 0x4b, 0xda, 0x02, 0xe9, 0xc5, 0x0f, 0x41, 0x80, 0x82, 0xfe, 0xbf, 0x28, 0x0c, 0xbe, 0xcf, 0x00, 0x3f, 0xb6, 0xc5, 0x08, 0x8a, 0xa1, 0x27, 0x67, 0x9a, 0xe5, 0xfd, 0x1c, 0xcb, 0xb6, 0x4c, 0x82, 0xcf, 0x01, 0xeb, 0x94, 0x52, 0x5b, 0x20, 0x33, 0x85, 0xf0, 0x3a, 0xe0, 0x1c, 0x1c, 0x4b, 0xc8, 0x1e, 0xee, 0x21, 0x5c, 0xd7, 0xe4, 0xc2, 0xf9, 0x17, 0xf4, 0xcd, 0x0b, 0x43, 0x5c, 0xaf, 0xc5, 0x18, 0x25, 0xb6, 0xc8, 0x75, 0x74, 0x75, 0xbd, }; static const unsigned char ecdh_brainpoolp320r1_4244_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4244_sharedsecret[] = { 0x94, 0xa6, 0x88, 0x3a, 0xc5, 0xec, 0xa7, 0x04, 0x58, 0xbd, 0xeb, 0x51, 0x3e, 0x47, 0x1e, 0x67, 0xc5, 0x6e, 0x9a, 0x54, 0x7d, 0x2f, 0x1e, 0x78, 0x86, 0x7a, 0x05, 0xe1, 0xd0, 0x2b, 0x9f, 0xb3, 0xcc, 0x5b, 0x20, 0x65, 0xfe, 0xe4, 0x52, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4244 = { .name = "ecdh_brainpoolp320r1_4244", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4244_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4244_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4244_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1873 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4245 for ECDH, tcId is 1874 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4245_peerpubkey[] = { 0x1d, 0x71, 0x94, 0xd7, 0x0d, 0xdf, 0x8f, 0xb7, 0x9b, 0x1e, 0xe1, 0x22, 0x3e, 0x4f, 0xd7, 0x04, 0xed, 0x37, 0xda, 0xeb, 0x4d, 0x68, 0x25, 0x88, 0xcc, 0xff, 0x21, 0xef, 0x00, 0x14, 0x78, 0xcd, 0x84, 0xac, 0xf8, 0xc9, 0xc3, 0x6c, 0x6c, 0x3e, 0xba, 0x8e, 0x73, 0x46, 0x9d, 0x65, 0x4a, 0x37, 0x90, 0x36, 0xa1, 0xea, 0x8b, 0xf6, 0x21, 0xf3, 0xc3, 0x9e, 0x2a, 0x41, 0xd5, 0x8c, 0x5b, 0x95, 0xe9, 0x88, 0x24, 0x94, 0xa4, 0x91, 0x24, 0x15, 0xd1, 0xa9, 0xa3, 0x1c, 0x20, 0x53, 0x1b, 0x2b, }; static const unsigned char ecdh_brainpoolp320r1_4245_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4245_sharedsecret[] = { 0x79, 0xe8, 0x20, 0x02, 0x70, 0x93, 0x0c, 0xa2, 0x20, 0xdc, 0xe4, 0xa2, 0x97, 0xd5, 0x46, 0x17, 0xfa, 0xa4, 0xb2, 0x58, 0xdc, 0xb1, 0x35, 0x95, 0x94, 0x96, 0x24, 0xc6, 0x70, 0x5b, 0x83, 0xae, 0xc1, 0x14, 0x98, 0x14, 0x56, 0x30, 0x32, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4245 = { .name = "ecdh_brainpoolp320r1_4245", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4245_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4245_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4245_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1874 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4246 for ECDH, tcId is 1875 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4246_peerpubkey[] = { 0xb0, 0xad, 0x13, 0xdb, 0x12, 0x9c, 0x0c, 0x91, 0x4f, 0x60, 0x71, 0xf7, 0x87, 0x4a, 0xe3, 0x9e, 0x69, 0xdd, 0x89, 0x87, 0x18, 0x54, 0xe9, 0x7b, 0x18, 0x91, 0xa4, 0xa2, 0xab, 0x57, 0x90, 0x27, 0xd9, 0xbd, 0x37, 0x51, 0x0f, 0xc8, 0x3f, 0x21, 0x02, 0xfa, 0x3d, 0xd8, 0xd8, 0xd3, 0x33, 0x34, 0x48, 0x85, 0xbc, 0xe0, 0x6d, 0x57, 0x7e, 0xba, 0x0b, 0x9c, 0xc6, 0x08, 0xd2, 0x8f, 0x1d, 0x3d, 0x68, 0x28, 0x44, 0xab, 0x20, 0xd9, 0x4d, 0x0b, 0x77, 0xd0, 0x48, 0x73, 0x7a, 0xd2, 0x7e, 0xeb, }; static const unsigned char ecdh_brainpoolp320r1_4246_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4246_sharedsecret[] = { 0x62, 0xf6, 0x19, 0x2f, 0xee, 0x3a, 0xe1, 0xa8, 0x4a, 0xfe, 0xb4, 0x7f, 0x38, 0x38, 0xa9, 0xfc, 0xad, 0x9b, 0xa9, 0x37, 0x39, 0x1a, 0x9b, 0xa2, 0x46, 0x74, 0x02, 0x9e, 0xbc, 0x7b, 0x0a, 0x00, 0x12, 0x60, 0x13, 0xb5, 0xaa, 0xb6, 0x3a, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4246 = { .name = "ecdh_brainpoolp320r1_4246", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4246_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4246_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4246_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1875 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4247 for ECDH, tcId is 1876 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4247_peerpubkey[] = { 0x4f, 0xc4, 0xba, 0xaa, 0xcc, 0x52, 0x1e, 0xb5, 0xd1, 0x18, 0x10, 0xd8, 0x33, 0x90, 0xab, 0x54, 0xfd, 0xea, 0xfc, 0x56, 0x8f, 0x51, 0x26, 0x6b, 0xa3, 0x36, 0x6e, 0xfb, 0x51, 0x1f, 0x4c, 0x4c, 0x85, 0x9f, 0xdd, 0x72, 0xa9, 0x77, 0xa9, 0x90, 0x14, 0xd7, 0x74, 0x3d, 0x1a, 0xca, 0xa0, 0x52, 0xef, 0x3f, 0xa7, 0x70, 0xfa, 0x16, 0x70, 0x75, 0xf8, 0x2e, 0xea, 0xc3, 0x60, 0x85, 0x18, 0x50, 0xb0, 0xf2, 0x28, 0xf6, 0x1a, 0x99, 0x7c, 0xf6, 0x3f, 0x14, 0x24, 0x0e, 0xfb, 0x9b, 0x7c, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_4247_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4247_sharedsecret[] = { 0x08, 0xfa, 0xc3, 0xfb, 0xac, 0xde, 0x79, 0x83, 0xe0, 0x40, 0x87, 0x1e, 0x7e, 0x3e, 0xaa, 0x7d, 0xe3, 0x16, 0xf8, 0x48, 0x2d, 0x78, 0xad, 0xd4, 0x9b, 0x95, 0x4f, 0xe0, 0x27, 0xcd, 0xa7, 0x84, 0x39, 0x48, 0xb3, 0xa8, 0x78, 0x92, 0x7d, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4247 = { .name = "ecdh_brainpoolp320r1_4247", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4247_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4247_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4247_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 1876 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4248 for ECDH, tcId is 1877 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4248_peerpubkey[] = { 0x72, 0x6a, 0x13, 0x3f, 0x9b, 0xd2, 0xba, 0x99, 0xd2, 0x69, 0xd5, 0xe2, 0x21, 0x78, 0xfe, 0xc4, 0x0b, 0xa2, 0x3c, 0xc5, 0x4f, 0xfc, 0xe3, 0xa6, 0xad, 0x9d, 0x0a, 0xbf, 0xf0, 0x12, 0x21, 0x64, 0xd7, 0xde, 0x68, 0xbf, 0x01, 0xae, 0x42, 0x3b, 0x7a, 0xb1, 0x5e, 0x12, 0x5b, 0xd1, 0xbd, 0x03, 0x20, 0x66, 0xf4, 0x0e, 0x8a, 0xe1, 0x80, 0x4f, 0x16, 0xc0, 0x3b, 0x75, 0x2a, 0x7d, 0x2a, 0xfa, 0xb9, 0x34, 0x16, 0x59, 0x2b, 0x92, 0x97, 0xa0, 0x59, 0x41, 0xfa, 0x5e, 0x21, 0x0b, 0x92, 0x41, }; static const unsigned char ecdh_brainpoolp320r1_4248_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4248_sharedsecret[] = { 0x48, 0x56, 0x92, 0xc5, 0xc5, 0xd7, 0xdf, 0x7d, 0x6a, 0x55, 0x88, 0xfd, 0xdc, 0x46, 0x1a, 0x3c, 0x85, 0x05, 0x0b, 0xc5, 0x6d, 0x22, 0x75, 0x75, 0x1f, 0x80, 0x73, 0x2e, 0x52, 0x24, 0x4e, 0xf4, 0x1b, 0x0d, 0x63, 0x6b, 0x48, 0xc5, 0x89, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4248 = { .name = "ecdh_brainpoolp320r1_4248", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4248_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4248_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4248_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1877 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4249 for ECDH, tcId is 1878 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4249_peerpubkey[] = { 0x65, 0xc1, 0x0c, 0xd1, 0x61, 0x29, 0xbe, 0x18, 0xfc, 0x8f, 0x5b, 0x62, 0x72, 0xfe, 0x34, 0x9d, 0xf1, 0x8c, 0x45, 0xae, 0xb3, 0xb4, 0x91, 0x7a, 0x26, 0x94, 0xac, 0x17, 0xbd, 0x5a, 0x90, 0x37, 0x18, 0xef, 0x23, 0x08, 0x11, 0xb5, 0x8c, 0x62, 0x7b, 0x0c, 0x05, 0x4c, 0xac, 0x52, 0x6f, 0x1b, 0xcf, 0x60, 0x7c, 0x2a, 0x3a, 0xca, 0x41, 0x9c, 0x24, 0xb0, 0x85, 0x1c, 0x5a, 0xa6, 0x6a, 0x38, 0x92, 0x9b, 0x83, 0xad, 0x28, 0xd8, 0xe3, 0x84, 0x5f, 0x16, 0x41, 0xfb, 0xaa, 0xe7, 0x9d, 0xd6, }; static const unsigned char ecdh_brainpoolp320r1_4249_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4249_sharedsecret[] = { 0x84, 0x36, 0x1f, 0x6a, 0xa6, 0xf1, 0x35, 0x52, 0x11, 0x63, 0x2f, 0x86, 0x7d, 0x65, 0x72, 0x84, 0xd6, 0x81, 0xf2, 0xde, 0xda, 0xf9, 0x72, 0x91, 0x76, 0x73, 0xab, 0x92, 0x94, 0xdb, 0x2f, 0x7d, 0xa1, 0x04, 0xb5, 0xc8, 0x32, 0xe3, 0xf4, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4249 = { .name = "ecdh_brainpoolp320r1_4249", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4249_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4249_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4249_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1878 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4250 for ECDH, tcId is 1879 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4250_peerpubkey[] = { 0x55, 0x10, 0xba, 0x07, 0x31, 0x14, 0x3c, 0x2c, 0xa2, 0x60, 0x8a, 0x4a, 0xf2, 0xd3, 0x57, 0x07, 0xe8, 0xfe, 0x67, 0x77, 0x7c, 0xe5, 0x93, 0xac, 0xfd, 0xdd, 0x0b, 0xbd, 0x0b, 0xf6, 0x34, 0xd0, 0x1b, 0x0d, 0x2d, 0x13, 0x2c, 0xab, 0x5f, 0x25, 0x6b, 0x55, 0x20, 0x9c, 0x4b, 0xf8, 0x24, 0xaa, 0x88, 0x7c, 0xfb, 0x70, 0xec, 0x0e, 0x00, 0x26, 0x0d, 0xf5, 0x5f, 0x5d, 0xb7, 0x63, 0x3b, 0xe6, 0x16, 0x47, 0xed, 0x07, 0x39, 0x06, 0x30, 0x45, 0xef, 0x6d, 0xc1, 0xa3, 0x68, 0x52, 0xcd, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_4250_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4250_sharedsecret[] = { 0x59, 0xdb, 0xac, 0x04, 0x96, 0x0d, 0x46, 0x4f, 0x4d, 0xf5, 0x1a, 0xdd, 0x3c, 0x33, 0x64, 0x5c, 0xb4, 0xc9, 0xab, 0xe4, 0x92, 0x71, 0x95, 0x56, 0x71, 0x75, 0x21, 0xd1, 0x6a, 0x09, 0x13, 0xf4, 0xca, 0x63, 0xa5, 0x9c, 0x58, 0xc3, 0xe1, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4250 = { .name = "ecdh_brainpoolp320r1_4250", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4250_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4250_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4250_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1879 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4251 for ECDH, tcId is 1880 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4251_peerpubkey[] = { 0x82, 0xb4, 0xb2, 0x82, 0x77, 0x8b, 0xfb, 0x21, 0x9f, 0x1f, 0xf9, 0x93, 0xf9, 0x29, 0x48, 0x71, 0x73, 0x1d, 0xab, 0xfc, 0xb4, 0xff, 0x41, 0xfa, 0x70, 0x25, 0xf2, 0xfd, 0x11, 0x65, 0x6b, 0x5f, 0x19, 0x28, 0x55, 0xb1, 0xa7, 0xc1, 0x78, 0x97, 0xbf, 0x74, 0xb6, 0x17, 0x16, 0x07, 0xae, 0x31, 0xe4, 0x1a, 0xf7, 0xe7, 0xd6, 0x83, 0x8d, 0x20, 0x82, 0x03, 0xed, 0x46, 0x5b, 0xa8, 0x55, 0x58, 0x06, 0x14, 0xbe, 0x16, 0x47, 0xe6, 0xb5, 0xab, 0xf7, 0x8a, 0x70, 0x45, 0x4b, 0xb6, 0x16, 0x63, }; static const unsigned char ecdh_brainpoolp320r1_4251_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4251_sharedsecret[] = { 0x0c, 0xe0, 0xbf, 0x73, 0xc6, 0x14, 0x94, 0x93, 0x39, 0xd7, 0xd1, 0xc4, 0x14, 0xd1, 0x8a, 0x3a, 0x0a, 0x9d, 0x23, 0xf0, 0x85, 0xa3, 0xcb, 0x5c, 0x37, 0x19, 0x5c, 0x6e, 0x62, 0xc0, 0xdf, 0xd0, 0x41, 0x5e, 0xee, 0x2b, 0x2e, 0x46, 0xcd, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4251 = { .name = "ecdh_brainpoolp320r1_4251", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4251_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4251_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4251_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1880 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4252 for ECDH, tcId is 1881 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4252_peerpubkey[] = { 0x8a, 0xae, 0xff, 0x56, 0x37, 0xcc, 0xf7, 0xdb, 0xec, 0xb7, 0xc5, 0xc9, 0xfa, 0xdb, 0xf7, 0xf3, 0xd5, 0xef, 0x6b, 0xbc, 0xa3, 0xa6, 0x43, 0xbf, 0xd4, 0x99, 0xf3, 0x80, 0x15, 0x93, 0x66, 0x87, 0x4a, 0x52, 0x93, 0xb2, 0x4b, 0x93, 0x0c, 0x71, 0x07, 0xe6, 0x8a, 0x6c, 0x7b, 0x65, 0x4b, 0x1b, 0x60, 0x88, 0x8f, 0x32, 0x5a, 0x36, 0x4e, 0x33, 0xbc, 0x74, 0x96, 0xbc, 0x79, 0x29, 0x84, 0x68, 0xfe, 0x64, 0xe5, 0x8b, 0x36, 0x0b, 0x56, 0x90, 0xaf, 0xa8, 0xeb, 0x44, 0x28, 0x8c, 0x45, 0xb4, }; static const unsigned char ecdh_brainpoolp320r1_4252_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4252_sharedsecret[] = { 0x81, 0xe3, 0x14, 0x73, 0xf8, 0x0d, 0x6c, 0xc1, 0x75, 0x19, 0x32, 0xff, 0x8c, 0x48, 0xce, 0xf7, 0xef, 0xf5, 0xd7, 0xf5, 0xc7, 0xbd, 0x08, 0x72, 0x4c, 0x95, 0xb8, 0x22, 0xca, 0xfa, 0xa3, 0xa9, 0x3b, 0xaf, 0x6a, 0x0d, 0x15, 0x2a, 0x10, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4252 = { .name = "ecdh_brainpoolp320r1_4252", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4252_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4252_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4252_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 1881 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4253 for ECDH, tcId is 1882 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4253_peerpubkey[] = { 0x65, 0x43, 0x63, 0x3f, 0x3e, 0x4e, 0x1d, 0x90, 0x97, 0xb8, 0x82, 0x7c, 0x8e, 0xe4, 0xd5, 0x82, 0x48, 0x42, 0x18, 0xc9, 0x38, 0x3f, 0x0c, 0xcc, 0xdb, 0x63, 0xc9, 0xf1, 0x7e, 0x8a, 0x11, 0x1d, 0x43, 0x78, 0x01, 0x63, 0xfa, 0xdc, 0xc1, 0xcb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_4253_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4253_sharedsecret[] = { 0x1f, 0x53, 0x8c, 0x5e, 0x7f, 0x1c, 0x96, 0x23, 0xfb, 0x6f, 0xf0, 0x01, 0x36, 0x26, 0xa8, 0xbf, 0x39, 0x9e, 0xfc, 0x9a, 0xba, 0x65, 0xfd, 0xd3, 0xb7, 0x11, 0xdf, 0xd6, 0xe1, 0x4d, 0xa0, 0x8b, 0x52, 0xc9, 0x0c, 0x2f, 0xb3, 0xf8, 0x48, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4253 = { .name = "ecdh_brainpoolp320r1_4253", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4253_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4253_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4253_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 1882 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4254 for ECDH, tcId is 1883 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4254_peerpubkey[] = { 0x8f, 0x65, 0xac, 0xe8, 0x98, 0x45, 0xbc, 0xf5, 0xe0, 0x74, 0xb7, 0x7e, 0xa5, 0x0f, 0x2d, 0xa1, 0x34, 0x3d, 0xfa, 0x1f, 0xe2, 0x70, 0x46, 0xfc, 0x60, 0xd1, 0x5e, 0xac, 0x32, 0xbc, 0xdf, 0x51, 0x31, 0xf8, 0x3d, 0xf8, 0xc9, 0x92, 0x7a, 0xcf, 0x46, 0x4c, 0x15, 0x62, 0x1e, 0xf3, 0x20, 0xc3, 0xd1, 0x71, 0x21, 0xa6, 0x03, 0x53, 0x9b, 0xb4, 0xab, 0x8c, 0xf5, 0xbe, 0xff, 0x24, 0xc5, 0x9e, 0x7f, 0x14, 0x46, 0xd5, 0xed, 0x00, 0x03, 0x2c, 0xef, 0x59, 0x55, 0x56, 0x0b, 0x2f, 0x3f, 0x58, }; static const unsigned char ecdh_brainpoolp320r1_4254_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4254_sharedsecret[] = { 0x65, 0x2f, 0x22, 0x04, 0xc3, 0xd1, 0xc2, 0x8e, 0x59, 0x78, 0x76, 0xd8, 0x68, 0x83, 0xbc, 0x44, 0x63, 0x19, 0x36, 0x04, 0xe6, 0x6b, 0xa5, 0x30, 0xe4, 0xb0, 0x3e, 0x5e, 0x0d, 0x25, 0x13, 0x52, 0x8a, 0xa2, 0x06, 0x5c, 0x17, 0x74, 0x43, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4254 = { .name = "ecdh_brainpoolp320r1_4254", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4254_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4254_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4254_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 1883 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4255 for ECDH, tcId is 1884 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4255_peerpubkey[] = { 0x28, 0xd6, 0x23, 0xfe, 0xdb, 0x49, 0xa4, 0x5d, 0xd2, 0x75, 0xef, 0x5d, 0x06, 0x4e, 0x7e, 0xa9, 0x2c, 0xd9, 0xe7, 0x44, 0x3f, 0x9a, 0x00, 0x05, 0x70, 0x36, 0xe1, 0x2c, 0x1d, 0x8d, 0xaf, 0x62, 0x1c, 0xad, 0xb9, 0x6d, 0x37, 0xfa, 0x32, 0x92, 0xbb, 0x13, 0xf2, 0x51, 0x52, 0x19, 0xe4, 0x35, 0x1d, 0x8a, 0xf8, 0x61, 0xe2, 0x97, 0xb2, 0x28, 0x78, 0x62, 0x31, 0x39, 0xf3, 0xce, 0xdb, 0x8a, 0x82, 0x3d, 0x7c, 0x76, 0xb4, 0x9e, 0x8c, 0x8d, 0xa1, 0xe0, 0x62, 0xf0, 0x5b, 0xd8, 0xe8, 0x44, }; static const unsigned char ecdh_brainpoolp320r1_4255_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4255_sharedsecret[] = { 0x85, 0x83, 0x68, 0xca, 0x05, 0x2f, 0xd7, 0x35, 0x4f, 0x6a, 0x94, 0xed, 0x35, 0x98, 0x30, 0xee, 0x7b, 0xd6, 0xeb, 0xb0, 0xc8, 0xcc, 0x5b, 0x38, 0x1a, 0x80, 0xad, 0x61, 0x21, 0x42, 0x29, 0x73, 0xbd, 0xc0, 0x7c, 0x2c, 0xe3, 0x11, 0xd2, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4255 = { .name = "ecdh_brainpoolp320r1_4255", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4255_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4255_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4255_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1, tcId is 1884 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4256 for ECDH, tcId is 1885 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4256_peerpubkey[] = { 0xac, 0xce, 0x56, 0xaa, 0x39, 0xbc, 0x76, 0x17, 0xbf, 0xf1, 0x9c, 0xbc, 0x4e, 0xc8, 0xab, 0xd2, 0xb4, 0x62, 0x04, 0xd7, 0xdc, 0xcb, 0xcb, 0x18, 0x32, 0x63, 0x25, 0x49, 0x3f, 0x43, 0x30, 0x2a, 0x46, 0xf4, 0xc1, 0x31, 0x89, 0x5b, 0x8a, 0x26, 0x84, 0x58, 0x77, 0x21, 0x7f, 0xf3, 0x60, 0x93, 0x46, 0x1d, 0xe2, 0x20, 0xfe, 0xd2, 0x18, 0x82, 0x71, 0x21, 0x98, 0x2d, 0x48, 0xd9, 0x7b, 0xfd, 0xf5, 0xfa, 0x0b, 0x59, 0xf7, 0xb2, 0x37, 0x95, 0xa6, 0x6c, 0x03, 0xab, 0x17, 0x7a, 0xd3, 0x51, }; static const unsigned char ecdh_brainpoolp320r1_4256_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4256_sharedsecret[] = { 0x65, 0x52, 0xc8, 0xdd, 0x12, 0x5c, 0x16, 0x9b, 0xe6, 0x11, 0x96, 0x16, 0x66, 0xe6, 0xab, 0x80, 0x35, 0x86, 0x98, 0xe4, 0x24, 0x16, 0x09, 0x5a, 0xa5, 0xc6, 0xa0, 0xae, 0x20, 0x58, 0xb1, 0x62, 0xf1, 0x67, 0x45, 0x46, 0xf1, 0x0f, 0x9c, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4256 = { .name = "ecdh_brainpoolp320r1_4256", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4256_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4256_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4256_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1885 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4257 for ECDH, tcId is 1886 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4257_peerpubkey[] = { 0x98, 0xe8, 0xf8, 0x5b, 0xef, 0x00, 0x40, 0xa5, 0x7e, 0xeb, 0xf9, 0xd2, 0x97, 0xde, 0x46, 0x0d, 0x33, 0x43, 0x74, 0xb5, 0x1b, 0xa3, 0xc6, 0xa7, 0x72, 0xf0, 0x02, 0xd6, 0x9b, 0x57, 0x92, 0xaa, 0xd8, 0xe3, 0x76, 0x35, 0xe7, 0x2c, 0xea, 0x5b, 0x39, 0x35, 0x56, 0xfc, 0xad, 0x83, 0x5b, 0xac, 0xc9, 0xd8, 0xeb, 0x1c, 0x4e, 0x97, 0x75, 0x10, 0xfb, 0x5b, 0x59, 0x44, 0x0e, 0x1f, 0x14, 0x43, 0x66, 0xd1, 0xd5, 0x25, 0x47, 0xd4, 0xb7, 0x5a, 0xae, 0x18, 0x58, 0x4b, 0xbf, 0xfa, 0x2a, 0xb8, }; static const unsigned char ecdh_brainpoolp320r1_4257_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4257_sharedsecret[] = { 0x3d, 0x5f, 0x8d, 0xa8, 0xb5, 0xbd, 0x68, 0x75, 0x16, 0x28, 0x40, 0x9a, 0x56, 0xba, 0xf1, 0x66, 0xc1, 0xdb, 0xce, 0xa8, 0x90, 0xa9, 0x41, 0x4d, 0xb7, 0xd3, 0xb8, 0x36, 0xdd, 0x45, 0xce, 0xdb, 0x34, 0xec, 0x7e, 0xf1, 0x95, 0xbf, 0x0b, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4257 = { .name = "ecdh_brainpoolp320r1_4257", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4257_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4257_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4257_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1886 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4258 for ECDH, tcId is 1887 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4258_peerpubkey[] = { 0xbd, 0x25, 0xab, 0x21, 0x2e, 0x2e, 0xab, 0x51, 0xec, 0x83, 0x79, 0xa1, 0x68, 0xaa, 0x1e, 0x3f, 0xee, 0x7b, 0xb7, 0x69, 0x02, 0x4f, 0x70, 0x22, 0xd4, 0x39, 0xde, 0x6a, 0x42, 0x5c, 0x91, 0xa8, 0xff, 0x2e, 0x2c, 0x36, 0xe5, 0xef, 0x52, 0xb4, 0x03, 0xc6, 0x0f, 0x9f, 0x99, 0xcf, 0xc4, 0x39, 0x66, 0x42, 0xe6, 0x44, 0x00, 0xe9, 0x9e, 0x62, 0x3c, 0xa3, 0x05, 0xa6, 0xb6, 0xa6, 0xd3, 0xd9, 0x6f, 0x90, 0x37, 0x1b, 0xf1, 0x6d, 0xbb, 0x73, 0xef, 0xb8, 0xd4, 0xc8, 0x53, 0xa8, 0x13, 0x69, }; static const unsigned char ecdh_brainpoolp320r1_4258_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4258_sharedsecret[] = { 0x1f, 0x9c, 0x6f, 0xde, 0x54, 0xb1, 0x94, 0xee, 0x8d, 0x73, 0x07, 0x98, 0x44, 0x9f, 0x2a, 0x15, 0x0e, 0x42, 0xf2, 0x40, 0x0b, 0x9a, 0x27, 0xf8, 0xe0, 0xb7, 0xda, 0xaa, 0xbb, 0xa3, 0x58, 0x3e, 0x21, 0xb7, 0x76, 0x9d, 0xac, 0x0f, 0xe1, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4258 = { .name = "ecdh_brainpoolp320r1_4258", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4258_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4258_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4258_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1887 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4259 for ECDH, tcId is 1888 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4259_peerpubkey[] = { 0xaa, 0x2c, 0xff, 0x40, 0xa6, 0x31, 0x38, 0x7c, 0x01, 0x84, 0xd0, 0x89, 0x8e, 0x3d, 0x38, 0xcb, 0x33, 0x0c, 0x40, 0x09, 0x17, 0x7a, 0x17, 0x2c, 0x48, 0x0f, 0x4a, 0x3a, 0x56, 0x9a, 0x3c, 0x91, 0x73, 0xdd, 0x73, 0xf4, 0x2e, 0x85, 0x62, 0xa4, 0x01, 0x44, 0x8b, 0xbb, 0x27, 0x6b, 0x8f, 0x88, 0xcb, 0x37, 0xec, 0x61, 0xd6, 0x2a, 0xb4, 0x0e, 0x60, 0xb4, 0xf3, 0x0e, 0xe3, 0xd1, 0xc8, 0xc4, 0x55, 0x42, 0x19, 0x81, 0xc7, 0xb3, 0xd7, 0xef, 0x06, 0x7e, 0xac, 0x42, 0x6a, 0x96, 0xa6, 0x87, }; static const unsigned char ecdh_brainpoolp320r1_4259_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4259_sharedsecret[] = { 0xc4, 0xb0, 0x74, 0x53, 0x90, 0x25, 0x06, 0x6a, 0xdb, 0x03, 0xe2, 0xbe, 0x9c, 0x70, 0x50, 0x77, 0x82, 0x3f, 0x4c, 0x46, 0x88, 0xe5, 0x53, 0xa1, 0xe0, 0x7a, 0x56, 0xfd, 0x2d, 0x0b, 0x0d, 0x57, 0x5b, 0xac, 0x86, 0xdb, 0xda, 0x5e, 0x5c, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4259 = { .name = "ecdh_brainpoolp320r1_4259", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4259_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4259_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4259_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1888 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4260 for ECDH, tcId is 1889 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4260_peerpubkey[] = { 0x59, 0x22, 0x97, 0x84, 0xae, 0xba, 0x81, 0x18, 0x0a, 0xa7, 0x0b, 0x39, 0xa4, 0x53, 0xe6, 0x95, 0x71, 0xc1, 0x6e, 0x74, 0x74, 0x65, 0x6b, 0x6b, 0x59, 0xb6, 0x64, 0xf0, 0xb5, 0x9c, 0x1b, 0xe0, 0xaa, 0x9d, 0x6f, 0xa3, 0x9f, 0xb6, 0xdb, 0x73, 0x9d, 0xdd, 0x45, 0xe8, 0x42, 0x64, 0x50, 0x28, 0xf9, 0x86, 0xec, 0xfd, 0x2d, 0x8d, 0xbf, 0x19, 0xa2, 0xa2, 0x52, 0x4c, 0xaf, 0x5a, 0xa5, 0x78, 0x50, 0x08, 0x41, 0x03, 0x2d, 0xa0, 0xba, 0x3d, 0x21, 0xc1, 0x9f, 0x30, 0x51, 0x85, 0x6f, 0xfc, }; static const unsigned char ecdh_brainpoolp320r1_4260_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4260_sharedsecret[] = { 0xb3, 0xf7, 0x4e, 0xd2, 0x16, 0xc4, 0x33, 0x4b, 0x03, 0x7e, 0x94, 0xa1, 0xf8, 0xde, 0x09, 0xb6, 0x15, 0xec, 0xe4, 0xd6, 0xab, 0xa0, 0x21, 0x72, 0x67, 0xca, 0xc8, 0x66, 0x98, 0xf6, 0x04, 0xdb, 0x53, 0x63, 0x2b, 0xc5, 0x29, 0xb9, 0xd5, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4260 = { .name = "ecdh_brainpoolp320r1_4260", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4260_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4260_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4260_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1889 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4261 for ECDH, tcId is 1890 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4261_peerpubkey[] = { 0xa7, 0x0b, 0xf7, 0xe4, 0xc2, 0x28, 0x1f, 0x8e, 0x0a, 0x5d, 0x53, 0x48, 0x5d, 0xbc, 0xa4, 0x88, 0x70, 0x8b, 0x53, 0x21, 0x65, 0xb7, 0xc0, 0x2c, 0xca, 0x29, 0x43, 0xc8, 0xb6, 0x96, 0x09, 0xf8, 0x75, 0x2f, 0x11, 0x00, 0x56, 0x91, 0xb4, 0x8b, 0x25, 0x4d, 0x72, 0xd5, 0x72, 0x72, 0xe8, 0xd1, 0xe7, 0x8c, 0xc3, 0xe3, 0x2b, 0xc3, 0xa7, 0x3b, 0x50, 0x04, 0xc9, 0x03, 0xa6, 0x5e, 0x23, 0x1e, 0xe0, 0xe1, 0x4d, 0x8e, 0x76, 0xfe, 0x2d, 0x27, 0xd4, 0x6a, 0x30, 0xc3, 0x96, 0xbe, 0xd6, 0xfd, }; static const unsigned char ecdh_brainpoolp320r1_4261_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4261_sharedsecret[] = { 0x05, 0xda, 0xc6, 0x7f, 0x72, 0xea, 0x4b, 0xf4, 0xdc, 0xe6, 0xf6, 0xef, 0x19, 0x71, 0xe8, 0x4c, 0x47, 0x11, 0x88, 0xf7, 0x79, 0xb1, 0x5d, 0x5a, 0x04, 0x56, 0xbb, 0xa8, 0x29, 0xc7, 0x56, 0x81, 0x69, 0x21, 0x0d, 0x58, 0x3e, 0x4b, 0xd1, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4261 = { .name = "ecdh_brainpoolp320r1_4261", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4261_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4261_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4261_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1890 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4262 for ECDH, tcId is 1891 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4262_peerpubkey[] = { 0x09, 0x49, 0x95, 0x76, 0x89, 0xf8, 0xf7, 0x52, 0x19, 0x51, 0x6a, 0xec, 0x73, 0xb0, 0xb9, 0x04, 0x16, 0x9d, 0x42, 0xef, 0xbe, 0xe6, 0xb0, 0x3b, 0x1b, 0x03, 0xb4, 0x64, 0xaf, 0xcc, 0x51, 0xa6, 0xbb, 0x37, 0xc5, 0x3c, 0x7d, 0x65, 0x46, 0xa4, 0x5e, 0x52, 0x29, 0x98, 0x1f, 0x05, 0x3f, 0xea, 0x58, 0xd2, 0x51, 0x7b, 0x8f, 0xb6, 0xe9, 0x9d, 0x18, 0xb4, 0xb3, 0xf6, 0x94, 0x4b, 0x5e, 0x50, 0x3c, 0x94, 0x74, 0x6b, 0xe9, 0xbd, 0x0d, 0xda, 0x39, 0xf4, 0xc9, 0x17, 0x60, 0x5d, 0x2e, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_4262_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4262_sharedsecret[] = { 0x24, 0x6a, 0x61, 0xf2, 0x92, 0xdd, 0x51, 0xb3, 0xf1, 0x68, 0xac, 0xd5, 0x0d, 0x44, 0x00, 0x2a, 0xe6, 0x31, 0x7f, 0x9a, 0x1a, 0x21, 0xe2, 0xb3, 0x2f, 0x39, 0x33, 0x3e, 0xde, 0xad, 0x71, 0x09, 0x2d, 0x5b, 0xc5, 0x45, 0x0d, 0x10, 0x5d, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4262 = { .name = "ecdh_brainpoolp320r1_4262", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4262_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4262_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4262_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1891 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4263 for ECDH, tcId is 1892 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4263_peerpubkey[] = { 0xb0, 0x93, 0xc4, 0x86, 0x7d, 0x6f, 0x9a, 0xd7, 0x14, 0x50, 0x4b, 0x0e, 0x43, 0x66, 0xb7, 0x93, 0x4a, 0xa4, 0xbe, 0x02, 0x02, 0xc5, 0x56, 0xd6, 0x2b, 0xd7, 0x26, 0xa0, 0xf3, 0x7d, 0x89, 0xf5, 0x66, 0x3d, 0x1d, 0x4b, 0xbc, 0x82, 0x73, 0x15, 0xbb, 0xb8, 0x29, 0x3b, 0x93, 0x70, 0xcb, 0x66, 0x24, 0x27, 0x47, 0x6c, 0x5f, 0xb4, 0x39, 0x99, 0x8f, 0x90, 0xe7, 0xee, 0xad, 0x78, 0xdb, 0xfd, 0xac, 0xe1, 0x02, 0x11, 0x3d, 0x7d, 0xab, 0xaf, 0x3b, 0xca, 0xc8, 0xcc, 0x56, 0xb8, 0x90, 0xb3, }; static const unsigned char ecdh_brainpoolp320r1_4263_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4263_sharedsecret[] = { 0x32, 0xc3, 0xed, 0x94, 0x54, 0xd7, 0x8a, 0xe4, 0x62, 0x14, 0x7c, 0x01, 0x0c, 0x88, 0xaf, 0xf6, 0x91, 0xc4, 0x79, 0xd6, 0xde, 0xc5, 0x5b, 0x19, 0xcf, 0xf8, 0x56, 0x68, 0x00, 0x17, 0xa1, 0x64, 0xe4, 0x5c, 0x57, 0xd9, 0x0d, 0x5a, 0xef, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4263 = { .name = "ecdh_brainpoolp320r1_4263", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4263_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4263_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4263_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1892 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4264 for ECDH, tcId is 1893 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4264_peerpubkey[] = { 0x2e, 0xff, 0x93, 0xa7, 0x30, 0xbd, 0x79, 0xbb, 0x0a, 0xcd, 0xa8, 0xff, 0xbc, 0x7c, 0x92, 0x7b, 0x58, 0x4e, 0x11, 0xac, 0xd5, 0xb5, 0xaf, 0x72, 0x6c, 0x96, 0x5e, 0x49, 0x67, 0x01, 0xae, 0x8f, 0x4f, 0xd5, 0xa4, 0x9e, 0x54, 0x67, 0xfc, 0xd0, 0x89, 0xd1, 0x6b, 0xe5, 0xea, 0xfe, 0x7e, 0xcb, 0x7d, 0xcb, 0x7b, 0x2f, 0xa4, 0x02, 0x69, 0xc3, 0x89, 0x08, 0x4b, 0x2d, 0xc0, 0x68, 0xf0, 0x39, 0xe6, 0x49, 0x71, 0x58, 0xfe, 0xa7, 0xbf, 0x53, 0xb9, 0x13, 0xc1, 0xac, 0x66, 0xe8, 0x39, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_4264_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4264_sharedsecret[] = { 0xce, 0x5d, 0xbd, 0x12, 0x18, 0x6c, 0xbd, 0x20, 0x25, 0xa7, 0x1e, 0x85, 0x88, 0xc3, 0x8f, 0x8a, 0x77, 0x84, 0x1a, 0x24, 0x9d, 0xad, 0x66, 0x16, 0x85, 0x23, 0xe7, 0xac, 0x2f, 0xb9, 0xa2, 0x21, 0xc1, 0xb5, 0xbd, 0x44, 0x62, 0x82, 0xb1, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4264 = { .name = "ecdh_brainpoolp320r1_4264", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4264_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4264_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4264_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1893 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4265 for ECDH, tcId is 1894 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4265_peerpubkey[] = { 0x9d, 0x27, 0xcb, 0x21, 0x1f, 0xfe, 0x7b, 0x55, 0x30, 0x2e, 0x92, 0x25, 0x47, 0xda, 0xe1, 0xbd, 0x22, 0xe7, 0x89, 0x1f, 0x6a, 0xfe, 0x0a, 0x63, 0x90, 0x31, 0xc9, 0x3a, 0x51, 0x92, 0xc9, 0x2c, 0x24, 0xd2, 0xa5, 0x67, 0xdf, 0x5a, 0xd1, 0x14, 0x25, 0xb3, 0xb1, 0xb2, 0x5c, 0x40, 0x8a, 0x81, 0x8e, 0xd2, 0xd8, 0x19, 0x14, 0x92, 0x29, 0x93, 0xbb, 0xf1, 0x05, 0x7c, 0xee, 0x48, 0xb9, 0x34, 0x02, 0x11, 0xbb, 0x55, 0x74, 0x31, 0xc0, 0x37, 0xf8, 0x40, 0x24, 0x2a, 0x18, 0x25, 0xd6, 0xa8, }; static const unsigned char ecdh_brainpoolp320r1_4265_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4265_sharedsecret[] = { 0x03, 0x17, 0x7b, 0xee, 0x62, 0x7f, 0x3b, 0x12, 0xc2, 0x22, 0x02, 0x89, 0xba, 0x53, 0x9c, 0x67, 0x0d, 0x4e, 0x44, 0xb8, 0x8d, 0xc6, 0xb2, 0x27, 0xde, 0xbe, 0x69, 0x69, 0x7c, 0xdb, 0xb6, 0x21, 0xec, 0xc3, 0x5f, 0xa2, 0x38, 0x47, 0x8c, 0x10, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4265 = { .name = "ecdh_brainpoolp320r1_4265", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4265_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4265_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4265_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1894 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4266 for ECDH, tcId is 1895 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4266_peerpubkey[] = { 0x28, 0xc2, 0x76, 0x0e, 0x46, 0x43, 0x95, 0x49, 0x83, 0xdf, 0x25, 0xc1, 0x66, 0x9e, 0x7f, 0x60, 0x07, 0x5a, 0x35, 0xc2, 0xa0, 0xa6, 0xb5, 0x1e, 0xdc, 0x66, 0xaa, 0x9b, 0x5c, 0xde, 0x31, 0x11, 0x27, 0xeb, 0xec, 0xde, 0x55, 0x39, 0x1d, 0xf8, 0x38, 0xdf, 0xee, 0x3e, 0xe6, 0x44, 0x67, 0x45, 0x71, 0x59, 0x18, 0xba, 0x6d, 0xf2, 0x3e, 0xef, 0x3f, 0x71, 0x83, 0xb7, 0xde, 0xe1, 0xa1, 0xf1, 0x1f, 0x11, 0xeb, 0x20, 0x99, 0xf5, 0x14, 0x82, 0x3c, 0x2c, 0x89, 0x17, 0xce, 0xb7, 0x6b, 0x53, }; static const unsigned char ecdh_brainpoolp320r1_4266_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4266_sharedsecret[] = { 0xa9, 0x8d, 0x99, 0x62, 0xcb, 0x3e, 0x53, 0x18, 0x04, 0x8d, 0x4d, 0xcb, 0x4c, 0xdf, 0x0c, 0x7d, 0xf4, 0x5a, 0x69, 0x7a, 0x34, 0xea, 0xf4, 0xdc, 0x8a, 0x74, 0x09, 0x58, 0xc0, 0x11, 0xa9, 0x73, 0x6b, 0xd9, 0x2c, 0xbd, 0x6b, 0x3b, 0x57, 0x05, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4266 = { .name = "ecdh_brainpoolp320r1_4266", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4266_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4266_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4266_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1895 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4267 for ECDH, tcId is 1896 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4267_peerpubkey[] = { 0xa9, 0xa7, 0x77, 0x9e, 0x78, 0xac, 0xc3, 0x09, 0xc0, 0xb3, 0x63, 0x62, 0xde, 0xf7, 0xb7, 0x54, 0x1d, 0x6e, 0x47, 0x27, 0xc5, 0xb1, 0xf2, 0x42, 0x7d, 0xd2, 0x22, 0x6f, 0xe5, 0x6f, 0x3a, 0x1f, 0xaf, 0xf7, 0xea, 0x73, 0x74, 0x64, 0xfd, 0xc0, 0x30, 0x05, 0x1f, 0x5d, 0x43, 0xf9, 0xcd, 0x49, 0x87, 0xe1, 0xf4, 0x94, 0x9b, 0x25, 0x02, 0x39, 0x0c, 0x44, 0x0a, 0x61, 0xc4, 0xe9, 0x07, 0xb5, 0xaf, 0x70, 0xcf, 0x54, 0xee, 0xad, 0x28, 0x0f, 0xf6, 0xca, 0xe5, 0x14, 0x0d, 0xae, 0x92, 0x1d, }; static const unsigned char ecdh_brainpoolp320r1_4267_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4267_sharedsecret[] = { 0x42, 0xb7, 0x06, 0x59, 0x7f, 0xcf, 0x1c, 0x64, 0xf6, 0x10, 0x7d, 0x42, 0x42, 0xd2, 0x36, 0xe7, 0xfe, 0x76, 0x17, 0x22, 0xfa, 0xf0, 0x5f, 0x1b, 0xf3, 0xf4, 0xc3, 0x66, 0x2a, 0xa2, 0xf3, 0x97, 0x64, 0x40, 0x1d, 0x12, 0xc7, 0x68, 0x58, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4267 = { .name = "ecdh_brainpoolp320r1_4267", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4267_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4267_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4267_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1896 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4268 for ECDH, tcId is 1897 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4268_peerpubkey[] = { 0x5a, 0xf8, 0x3d, 0x09, 0x71, 0xa0, 0xf7, 0x3a, 0x0e, 0xd0, 0x28, 0x3d, 0x8c, 0x46, 0xab, 0x2f, 0x98, 0x0f, 0xa4, 0x0d, 0xba, 0xbb, 0x57, 0x5b, 0x27, 0xf7, 0x76, 0x29, 0x89, 0x44, 0xf3, 0x83, 0xae, 0xff, 0x4c, 0x37, 0x5a, 0xc4, 0x5a, 0x7c, 0x32, 0xae, 0x96, 0x6a, 0xee, 0x37, 0x30, 0x4e, 0xde, 0xaa, 0x85, 0x4c, 0x19, 0x49, 0xba, 0x0b, 0x65, 0x94, 0xf9, 0x62, 0x38, 0xa8, 0x48, 0x59, 0x8c, 0xe6, 0x06, 0xb7, 0xee, 0x12, 0x5f, 0x12, 0x1d, 0xa5, 0x07, 0xcc, 0x1c, 0x3b, 0x63, 0x84, }; static const unsigned char ecdh_brainpoolp320r1_4268_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4268_sharedsecret[] = { 0x52, 0xd0, 0xcc, 0xf9, 0x03, 0x33, 0xce, 0x0c, 0xad, 0x89, 0xa3, 0xa5, 0xc1, 0x0e, 0x1c, 0x83, 0x59, 0x4d, 0x48, 0x1d, 0xcf, 0x16, 0xfb, 0x11, 0x5e, 0x40, 0xcf, 0xd1, 0xc6, 0x71, 0xb7, 0xfd, 0xac, 0x82, 0x7b, 0x54, 0x98, 0x2a, 0x42, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4268 = { .name = "ecdh_brainpoolp320r1_4268", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4268_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4268_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4268_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1897 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4269 for ECDH, tcId is 1898 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4269_peerpubkey[] = { 0x2b, 0x75, 0x2c, 0xd4, 0x79, 0x82, 0xc0, 0x56, 0x78, 0x69, 0xf0, 0x85, 0xfa, 0x32, 0x59, 0x1f, 0x91, 0xd1, 0x53, 0x5d, 0xd2, 0x46, 0x71, 0x4a, 0x9a, 0x44, 0x43, 0xcd, 0x4a, 0x65, 0xcd, 0x12, 0x7e, 0x65, 0x84, 0xda, 0x98, 0x2f, 0xbf, 0x44, 0x5a, 0xd3, 0x59, 0x97, 0x67, 0xf9, 0xa6, 0xf0, 0x19, 0x3c, 0xd6, 0x16, 0x72, 0x52, 0x1e, 0x4c, 0xec, 0x02, 0x61, 0x5b, 0x84, 0xa8, 0x92, 0x54, 0xa1, 0x71, 0xdd, 0x6e, 0x1b, 0x3c, 0x06, 0x24, 0x3c, 0xd7, 0xe8, 0xe5, 0x4f, 0x93, 0x0c, 0xca, }; static const unsigned char ecdh_brainpoolp320r1_4269_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4269_sharedsecret[] = { 0x77, 0x72, 0x04, 0xf2, 0x20, 0xbc, 0x76, 0xd5, 0x7a, 0xc4, 0xe8, 0xbc, 0x15, 0xc6, 0x5d, 0x27, 0x5e, 0xcd, 0xe4, 0xb1, 0xcb, 0x8f, 0xaf, 0x22, 0x79, 0x47, 0x6d, 0x4b, 0x79, 0x3c, 0xed, 0x8f, 0x4d, 0x97, 0x83, 0xd4, 0xb0, 0x48, 0x3d, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4269 = { .name = "ecdh_brainpoolp320r1_4269", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4269_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4269_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4269_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1898 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4270 for ECDH, tcId is 1899 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4270_peerpubkey[] = { 0x6c, 0x9b, 0x89, 0x42, 0xaf, 0xbf, 0xe5, 0x96, 0x87, 0x16, 0x8e, 0x8e, 0x52, 0x02, 0x3e, 0x18, 0xcb, 0xeb, 0xdc, 0x7f, 0xb4, 0x68, 0x28, 0x77, 0x88, 0xc9, 0x8b, 0xc6, 0xa6, 0x5e, 0xeb, 0x6a, 0xa0, 0xfb, 0x49, 0x20, 0x92, 0x67, 0xa0, 0xb9, 0xcf, 0x33, 0xa3, 0x27, 0x70, 0xab, 0x0f, 0xc7, 0xdd, 0x30, 0x70, 0xff, 0xc5, 0x4b, 0x1c, 0xb1, 0xca, 0x42, 0x61, 0xa1, 0x81, 0x03, 0xba, 0xd2, 0xae, 0xf4, 0x03, 0x33, 0x2e, 0x76, 0xf3, 0x8c, 0xa3, 0xa4, 0xae, 0x44, 0x37, 0xef, 0xf3, 0x3c, }; static const unsigned char ecdh_brainpoolp320r1_4270_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4270_sharedsecret[] = { 0x5e, 0x11, 0xf8, 0x85, 0x88, 0x54, 0x94, 0x8e, 0x62, 0x01, 0x44, 0x38, 0x5e, 0x68, 0x07, 0x16, 0x9c, 0xa5, 0x9f, 0xd9, 0x72, 0x81, 0x77, 0xf9, 0x81, 0x32, 0x50, 0x26, 0x88, 0x7c, 0xdd, 0x80, 0x3e, 0x7a, 0xe2, 0x76, 0x8f, 0x43, 0x65, 0xd5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4270 = { .name = "ecdh_brainpoolp320r1_4270", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4270_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4270_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4270_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1899 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4271 for ECDH, tcId is 1900 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4271_peerpubkey[] = { 0x88, 0x01, 0x0d, 0x2b, 0x02, 0x55, 0x9e, 0xb9, 0xd5, 0x68, 0x10, 0xe0, 0xf4, 0x8b, 0xf0, 0x0e, 0x5f, 0x19, 0xd3, 0x06, 0xa1, 0x82, 0xd3, 0x6a, 0xd4, 0xe6, 0x2d, 0x3d, 0xa9, 0xdc, 0x38, 0x38, 0xe3, 0xc1, 0x8b, 0x0a, 0x0c, 0x4f, 0xee, 0x2c, 0x28, 0x08, 0xbb, 0xe0, 0x33, 0xa1, 0x65, 0xe8, 0xce, 0x26, 0xa6, 0x55, 0x55, 0x99, 0x7b, 0x7e, 0x61, 0x67, 0x85, 0xe8, 0xe3, 0xa9, 0x1e, 0x19, 0x8e, 0x38, 0x9f, 0xf9, 0x35, 0xa3, 0x29, 0x1d, 0x55, 0x66, 0xa9, 0xd9, 0x1a, 0xc6, 0x9c, 0x7b, }; static const unsigned char ecdh_brainpoolp320r1_4271_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4271_sharedsecret[] = { 0x97, 0x4e, 0x8a, 0x57, 0x2c, 0xe6, 0x61, 0x1e, 0x81, 0x0c, 0x3d, 0x1d, 0xc2, 0xbf, 0x6b, 0xc7, 0x65, 0x1a, 0x28, 0x92, 0xf9, 0x61, 0xfa, 0x38, 0x64, 0x60, 0xe6, 0xc9, 0x3d, 0xed, 0x71, 0x11, 0xd0, 0x61, 0x25, 0x9d, 0x9a, 0x0d, 0x22, 0x85, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4271 = { .name = "ecdh_brainpoolp320r1_4271", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4271_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4271_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4271_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1900 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4272 for ECDH, tcId is 1901 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4272_peerpubkey[] = { 0x4f, 0x3e, 0x53, 0xc8, 0xc4, 0xba, 0x00, 0x7a, 0x2f, 0x12, 0x50, 0x5f, 0xe8, 0x7a, 0x24, 0xef, 0x96, 0x50, 0x4b, 0x36, 0x45, 0x5d, 0x9e, 0x81, 0x5f, 0x24, 0x60, 0x00, 0x35, 0xb1, 0xfa, 0xe5, 0x5f, 0x32, 0x9c, 0x39, 0xbf, 0xdd, 0x2e, 0x41, 0x2b, 0x99, 0x84, 0xf1, 0xd2, 0x35, 0xdb, 0x69, 0x0c, 0x39, 0x48, 0xb0, 0x35, 0x82, 0xb0, 0xc9, 0x57, 0x0a, 0xfd, 0xa9, 0xa9, 0x30, 0x51, 0xd0, 0xe8, 0x0b, 0xba, 0x76, 0x88, 0x8e, 0x8f, 0x32, 0x11, 0xd6, 0x26, 0x07, 0xe6, 0x7a, 0x67, 0x44, }; static const unsigned char ecdh_brainpoolp320r1_4272_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4272_sharedsecret[] = { 0x03, 0x81, 0x50, 0xbc, 0x16, 0x8d, 0x71, 0xb4, 0xc9, 0x9d, 0x9e, 0x6b, 0x08, 0xaa, 0x88, 0x2a, 0x64, 0x41, 0x5d, 0xd0, 0x4e, 0x69, 0x51, 0xc6, 0x09, 0xdb, 0x35, 0x55, 0xb7, 0xca, 0xe2, 0x20, 0x2b, 0x91, 0x90, 0xe8, 0x01, 0x9c, 0x21, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4272 = { .name = "ecdh_brainpoolp320r1_4272", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4272_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4272_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4272_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1901 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4273 for ECDH, tcId is 1902 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4273_peerpubkey[] = { 0x71, 0xd3, 0x8f, 0x28, 0xbd, 0x5b, 0x00, 0x3e, 0x6b, 0xf7, 0x24, 0x19, 0xaa, 0xef, 0x28, 0x36, 0x39, 0x60, 0x2e, 0x24, 0x08, 0xb7, 0x81, 0xb2, 0x3e, 0xd3, 0x19, 0x38, 0x02, 0x13, 0xff, 0xd9, 0xd0, 0x72, 0x7e, 0x63, 0xce, 0xd7, 0x4e, 0x12, 0xc2, 0x18, 0x74, 0x72, 0x4b, 0xd0, 0xb0, 0x96, 0x9e, 0x12, 0xca, 0x09, 0x3a, 0xbf, 0x43, 0x70, 0x4f, 0xdf, 0x3f, 0x53, 0x98, 0x7a, 0x6f, 0x67, 0x58, 0x49, 0xcf, 0x2f, 0xa1, 0x97, 0x5a, 0x77, 0xc1, 0x43, 0x19, 0x7e, 0xe2, 0x1b, 0xc4, 0x82, }; static const unsigned char ecdh_brainpoolp320r1_4273_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4273_sharedsecret[] = { 0x9f, 0x09, 0x28, 0x11, 0xff, 0xeb, 0x10, 0xfb, 0xb3, 0x3d, 0x6a, 0xbf, 0xc0, 0x0e, 0xeb, 0x07, 0xe1, 0x81, 0xb0, 0x90, 0x0d, 0xfe, 0x97, 0x77, 0x81, 0x8a, 0x42, 0x25, 0x85, 0xd5, 0x50, 0x99, 0xc1, 0xd4, 0xe2, 0x13, 0xe6, 0xbd, 0xc5, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4273 = { .name = "ecdh_brainpoolp320r1_4273", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4273_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4273_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4273_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1902 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4274 for ECDH, tcId is 1903 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4274_peerpubkey[] = { 0xc1, 0x01, 0x39, 0xc8, 0xc3, 0xf0, 0x46, 0x84, 0x4c, 0xac, 0x36, 0xd7, 0xdc, 0x70, 0x50, 0xfa, 0x25, 0x00, 0x04, 0x19, 0x00, 0x28, 0xfd, 0xd0, 0x1c, 0x04, 0xf2, 0xce, 0xf1, 0x3f, 0x91, 0xa6, 0x78, 0xc5, 0x8e, 0xd8, 0x9e, 0x3f, 0x54, 0x96, 0x7e, 0x60, 0x11, 0x7e, 0x9e, 0xa2, 0xf3, 0x94, 0xc5, 0x93, 0x26, 0xd6, 0x20, 0xa9, 0xa6, 0x8b, 0xb0, 0xa6, 0x27, 0x45, 0xcf, 0xe7, 0x01, 0x86, 0x26, 0xbf, 0x50, 0x01, 0x27, 0xfb, 0x0d, 0xb2, 0x2a, 0x01, 0xe1, 0x3b, 0xd7, 0xe6, 0x99, 0x46, }; static const unsigned char ecdh_brainpoolp320r1_4274_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4274_sharedsecret[] = { 0x1a, 0x67, 0xf7, 0x84, 0xf6, 0x4a, 0xdb, 0xc3, 0xcf, 0xd0, 0xbc, 0x19, 0xe2, 0x72, 0xbc, 0x3b, 0xac, 0x59, 0xd8, 0x03, 0x5b, 0x1e, 0x51, 0x52, 0x55, 0x0d, 0x77, 0x25, 0x62, 0xe5, 0x28, 0x67, 0xcb, 0xa8, 0x52, 0x3f, 0x8b, 0x36, 0x48, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4274 = { .name = "ecdh_brainpoolp320r1_4274", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4274_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4274_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4274_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1903 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4275 for ECDH, tcId is 1904 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4275_peerpubkey[] = { 0x3b, 0x81, 0xb6, 0x5e, 0xbd, 0x78, 0xfe, 0xfb, 0xf0, 0x39, 0x06, 0x08, 0x8d, 0x3d, 0x70, 0x26, 0x57, 0xb1, 0x37, 0x48, 0x1e, 0x55, 0xce, 0xad, 0x9b, 0xe8, 0xb8, 0xed, 0xf3, 0xe7, 0x40, 0x8f, 0x23, 0xf0, 0x33, 0x83, 0x13, 0x70, 0x71, 0x03, 0x5d, 0x31, 0x53, 0x64, 0xd3, 0x3b, 0x4d, 0x4b, 0xf0, 0x70, 0xe9, 0xaa, 0xd6, 0x52, 0xf3, 0xdc, 0x36, 0xff, 0x82, 0x51, 0x7b, 0x04, 0xd4, 0x49, 0xdd, 0x50, 0x72, 0xc9, 0x96, 0xd9, 0x5e, 0x44, 0x41, 0xdf, 0x6f, 0x8a, 0xde, 0x68, 0xbb, 0xd4, }; static const unsigned char ecdh_brainpoolp320r1_4275_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4275_sharedsecret[] = { 0x3e, 0x0f, 0xfd, 0xfe, 0x18, 0x1c, 0x1b, 0x80, 0xe0, 0x69, 0x49, 0x00, 0xa5, 0xf5, 0xeb, 0x80, 0x1c, 0x36, 0x2a, 0x52, 0x98, 0xb1, 0xbe, 0xf5, 0xb4, 0xbb, 0xb0, 0xc9, 0x40, 0x58, 0xa8, 0xc5, 0xb5, 0x04, 0x37, 0x06, 0xc7, 0x0e, 0x38, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4275 = { .name = "ecdh_brainpoolp320r1_4275", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4275_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4275_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4275_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1904 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4276 for ECDH, tcId is 1905 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4276_peerpubkey[] = { 0x89, 0x68, 0x2b, 0x24, 0xfd, 0x24, 0x78, 0x10, 0x22, 0x17, 0x9e, 0x62, 0x9e, 0x0a, 0x6d, 0x1a, 0xba, 0x82, 0x86, 0xbc, 0x66, 0x28, 0xad, 0x4e, 0x2e, 0xed, 0xe3, 0x9c, 0x1e, 0xa8, 0x23, 0x3f, 0xbe, 0x73, 0x1e, 0x81, 0xfe, 0xc8, 0xdf, 0x42, 0x00, 0x2e, 0xeb, 0xe9, 0x5a, 0xf2, 0x15, 0xeb, 0x4d, 0xad, 0x23, 0xda, 0x30, 0x3c, 0x20, 0x66, 0x37, 0xda, 0x35, 0x51, 0x89, 0x0f, 0xae, 0x98, 0xd0, 0x3e, 0x06, 0x86, 0x17, 0x7a, 0x2d, 0x5b, 0x2b, 0x09, 0x3a, 0x48, 0x27, 0xe8, 0xd1, 0x8a, }; static const unsigned char ecdh_brainpoolp320r1_4276_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4276_sharedsecret[] = { 0x85, 0x8e, 0x55, 0xfc, 0x4a, 0x59, 0xe7, 0x3b, 0x57, 0x67, 0x64, 0x01, 0xbf, 0xb4, 0xe1, 0x11, 0x74, 0x7a, 0x79, 0xcd, 0xa9, 0xda, 0x06, 0xcd, 0x8b, 0xad, 0x8d, 0x17, 0x0e, 0x1a, 0x43, 0xe5, 0xfd, 0x2d, 0x5d, 0xe7, 0xdb, 0xbf, 0xd4, 0x2a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4276 = { .name = "ecdh_brainpoolp320r1_4276", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4276_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4276_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4276_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 1905 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4277 for ECDH, tcId is 1906 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4277_peerpubkey[] = { 0xa2, 0x3a, 0x49, 0x09, 0x4f, 0x11, 0x97, 0x3a, 0xe2, 0x32, 0x05, 0x57, 0xcb, 0x05, 0xa3, 0x3d, 0xdb, 0xb4, 0x97, 0x04, 0x95, 0x69, 0xf2, 0x3e, 0xaf, 0xf1, 0x24, 0xb3, 0x4e, 0x41, 0xba, 0x5f, 0x3c, 0x0a, 0x3d, 0x19, 0xb3, 0x6a, 0x31, 0xa5, 0x44, 0x38, 0xcf, 0xcd, 0xee, 0xab, 0x3f, 0xe3, 0xfc, 0x36, 0x53, 0x71, 0xa7, 0x15, 0xef, 0x59, 0xa2, 0x15, 0x89, 0x9a, 0xf2, 0xe7, 0xdb, 0xe2, 0xc1, 0x8f, 0xaa, 0xef, 0x86, 0xca, 0xf6, 0x48, 0xb6, 0x40, 0x22, 0xa8, 0xff, 0xaa, 0xf1, 0x79, }; static const unsigned char ecdh_brainpoolp320r1_4277_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4277_sharedsecret[] = { 0x00, 0xa8, 0x93, 0x77, 0xa8, 0x15, 0x24, 0xb3, 0x09, 0x80, 0xbf, 0x46, 0x34, 0xad, 0x67, 0x0f, 0x21, 0x9a, 0x29, 0x09, 0x8a, 0xb5, 0xcb, 0x29, 0x1c, 0x42, 0xd8, 0x4a, 0x20, 0xfc, 0x8b, 0xd7, 0x69, 0x22, 0xed, 0xea, 0x9a, 0xa6, 0x22, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4277 = { .name = "ecdh_brainpoolp320r1_4277", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4277_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4277_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4277_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1906 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4278 for ECDH, tcId is 1907 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4278_peerpubkey[] = { 0x91, 0x4c, 0xb4, 0x6a, 0x05, 0x44, 0xee, 0x31, 0xff, 0x1a, 0xc5, 0x1a, 0xd5, 0x92, 0x80, 0x18, 0xd7, 0x19, 0x98, 0xb4, 0xd9, 0x88, 0xcd, 0xfd, 0xee, 0x1b, 0x8f, 0x02, 0x4d, 0x8f, 0xa9, 0xdf, 0xcd, 0x80, 0x2e, 0xcd, 0xd6, 0x93, 0xb3, 0x24, 0x5e, 0x5a, 0x10, 0x56, 0xb9, 0xbc, 0x41, 0x04, 0xae, 0x13, 0x74, 0xc5, 0x9b, 0xa4, 0x4a, 0xb8, 0x88, 0xba, 0xd4, 0xdd, 0xbd, 0x42, 0xda, 0xe8, 0x1b, 0x22, 0x9c, 0x75, 0x04, 0xf7, 0x97, 0xe2, 0x49, 0xe5, 0xe6, 0x61, 0xac, 0x06, 0xf3, 0xaa, }; static const unsigned char ecdh_brainpoolp320r1_4278_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4278_sharedsecret[] = { 0x80, 0x59, 0x7c, 0xc6, 0x45, 0xe9, 0x46, 0xd6, 0x12, 0x08, 0xa8, 0x05, 0x47, 0x55, 0x8a, 0x08, 0xbb, 0x18, 0x93, 0x65, 0xda, 0xcb, 0x2d, 0x90, 0x91, 0x41, 0xe7, 0x0d, 0x37, 0xc3, 0x1a, 0xde, 0x6f, 0xd8, 0x89, 0xa9, 0x0b, 0xa7, 0xf3, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4278 = { .name = "ecdh_brainpoolp320r1_4278", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4278_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4278_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4278_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1907 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4279 for ECDH, tcId is 1908 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4279_peerpubkey[] = { 0x8e, 0xae, 0x8e, 0x5e, 0x03, 0x53, 0x08, 0x7a, 0xf1, 0x5c, 0x71, 0x1e, 0x77, 0xf8, 0x10, 0x04, 0x66, 0x4d, 0xdf, 0x99, 0x3e, 0x85, 0x5f, 0x64, 0x4c, 0x6b, 0x47, 0x17, 0x20, 0xca, 0x39, 0x92, 0x5f, 0x63, 0xec, 0xf6, 0x4a, 0x83, 0x14, 0xb0, 0xab, 0xc1, 0x2c, 0x6c, 0x75, 0xfc, 0xf5, 0x98, 0xff, 0xb0, 0x03, 0x9d, 0xad, 0xbb, 0xf3, 0x19, 0xcf, 0xd7, 0x3c, 0x88, 0xf2, 0xaf, 0x2b, 0x90, 0x7d, 0x9d, 0x0b, 0x29, 0x41, 0x43, 0x56, 0x6a, 0x55, 0xd8, 0x5d, 0x2a, 0xa7, 0x67, 0x69, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_4279_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4279_sharedsecret[] = { 0x2c, 0x7a, 0x43, 0x36, 0x2a, 0xad, 0x6a, 0xf4, 0xf7, 0x04, 0x7f, 0x10, 0xe0, 0x74, 0x03, 0x19, 0x37, 0x70, 0x81, 0xf1, 0xd8, 0xf1, 0x3d, 0x07, 0x80, 0xf5, 0x94, 0x24, 0x74, 0x39, 0x9b, 0xd3, 0x09, 0xfa, 0xe8, 0xc5, 0x66, 0x76, 0x18, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4279 = { .name = "ecdh_brainpoolp320r1_4279", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4279_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4279_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4279_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1908 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4280 for ECDH, tcId is 1909 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4280_peerpubkey[] = { 0x38, 0x63, 0x5c, 0xdd, 0xd7, 0x89, 0x2c, 0x35, 0xb4, 0x69, 0xef, 0xe3, 0x3b, 0x9e, 0x92, 0x82, 0x61, 0xc3, 0xdf, 0xb3, 0x76, 0x44, 0x95, 0xae, 0xd9, 0x0b, 0x66, 0x8c, 0x73, 0x18, 0xfa, 0x72, 0x1a, 0x4e, 0xbe, 0x27, 0xb5, 0x31, 0xde, 0xd6, 0x4d, 0xeb, 0xf1, 0x04, 0xc2, 0xa5, 0x0b, 0x09, 0x8b, 0xff, 0x46, 0x2c, 0xb7, 0x3f, 0x63, 0x74, 0x40, 0x79, 0xa8, 0x13, 0x84, 0x70, 0xab, 0xd0, 0x4c, 0x9c, 0xf9, 0xca, 0x44, 0x36, 0x39, 0x8b, 0xac, 0x5a, 0x66, 0x65, 0xf8, 0x78, 0x4f, 0xa4, }; static const unsigned char ecdh_brainpoolp320r1_4280_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4280_sharedsecret[] = { 0x53, 0xa1, 0x37, 0x0f, 0xd4, 0xc1, 0x5c, 0xd2, 0x6c, 0x65, 0xca, 0x1e, 0x8e, 0x36, 0xa0, 0x96, 0x08, 0xf1, 0x2a, 0x6c, 0x1f, 0x9c, 0x67, 0xd9, 0xe5, 0x86, 0x30, 0x06, 0x4a, 0x2c, 0xf4, 0x41, 0x2f, 0x8a, 0x17, 0xc8, 0xff, 0x45, 0x52, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4280 = { .name = "ecdh_brainpoolp320r1_4280", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4280_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4280_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4280_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1909 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4281 for ECDH, tcId is 1910 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4281_peerpubkey[] = { 0x11, 0x0d, 0x13, 0x75, 0xad, 0xbd, 0xe1, 0x4d, 0xbf, 0xd1, 0xc4, 0xa9, 0xe3, 0xa0, 0x46, 0xe4, 0x4c, 0x06, 0xbf, 0xc1, 0x34, 0x53, 0x94, 0x0c, 0xcf, 0x66, 0x13, 0x00, 0x0e, 0xc7, 0xd4, 0x1e, 0x9d, 0xc4, 0x1a, 0x32, 0x25, 0x2f, 0xd2, 0xdc, 0x89, 0xbc, 0x34, 0xa8, 0x5e, 0xff, 0x53, 0xb3, 0x5b, 0xc5, 0xf9, 0x1c, 0x00, 0xad, 0x29, 0xee, 0x8e, 0x28, 0x95, 0x55, 0x1c, 0xcd, 0x3d, 0x9a, 0xea, 0x2b, 0x65, 0x90, 0x32, 0x95, 0xb5, 0x2c, 0xa9, 0xfe, 0xfe, 0x63, 0x48, 0x64, 0xbc, 0xbc, }; static const unsigned char ecdh_brainpoolp320r1_4281_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4281_sharedsecret[] = { 0xb4, 0x6d, 0x2b, 0xd5, 0x2c, 0x81, 0x63, 0x9b, 0x91, 0x5d, 0xf0, 0x91, 0x35, 0x12, 0x92, 0x23, 0x3e, 0x27, 0x0a, 0x91, 0x8f, 0x74, 0x68, 0xb4, 0xa1, 0xec, 0x62, 0xbf, 0xe5, 0x04, 0xc8, 0x60, 0x45, 0x39, 0x8e, 0xa0, 0xdc, 0x9f, 0x68, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4281 = { .name = "ecdh_brainpoolp320r1_4281", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4281_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4281_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4281_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1910 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4282 for ECDH, tcId is 1911 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4282_peerpubkey[] = { 0x2d, 0x10, 0x75, 0x3a, 0x97, 0x80, 0x47, 0xcb, 0x3d, 0xe8, 0x04, 0x66, 0xcc, 0x0d, 0xb5, 0x7b, 0x2e, 0xcf, 0xd2, 0x1d, 0xce, 0xfb, 0xba, 0x5b, 0x1c, 0xf4, 0x87, 0x2c, 0x10, 0x84, 0x1e, 0x64, 0x79, 0x2f, 0x2f, 0x99, 0xd6, 0xf1, 0xa9, 0x01, 0xb5, 0x7a, 0x84, 0x35, 0xa2, 0x38, 0x99, 0x3a, 0xfc, 0x65, 0x50, 0x89, 0x3c, 0x7b, 0xf5, 0x4e, 0x25, 0xd0, 0x49, 0x97, 0x13, 0xa2, 0x47, 0xe6, 0x73, 0xb0, 0x56, 0xd4, 0xb1, 0xd1, 0x21, 0x2f, 0x74, 0xfa, 0x52, 0xfd, 0x8a, 0x68, 0x68, 0x42, }; static const unsigned char ecdh_brainpoolp320r1_4282_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4282_sharedsecret[] = { 0x20, 0x0e, 0xd1, 0x9b, 0x08, 0x79, 0xa6, 0x5d, 0x46, 0x51, 0x6a, 0x0c, 0xde, 0x86, 0xeb, 0xfe, 0x6b, 0xe4, 0xf9, 0x0c, 0xc4, 0x5a, 0xdf, 0x7a, 0xf3, 0x84, 0xaa, 0x8a, 0xdf, 0x12, 0x67, 0x03, 0x94, 0xf8, 0x45, 0x5d, 0xf5, 0x40, 0xdf, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4282 = { .name = "ecdh_brainpoolp320r1_4282", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4282_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4282_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4282_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 1911 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4283 for ECDH, tcId is 1912 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4283_peerpubkey[] = { 0x4e, 0xe8, 0xe1, 0x87, 0xe9, 0xea, 0x40, 0x88, 0x07, 0xf5, 0xfb, 0xfc, 0x11, 0x90, 0x9f, 0x9b, 0x3c, 0x44, 0x2a, 0x1e, 0x7d, 0x8e, 0xa9, 0x84, 0x74, 0xf8, 0xad, 0xa3, 0x37, 0x07, 0x80, 0x17, 0x80, 0x1d, 0x5f, 0xe9, 0x29, 0x3b, 0xbc, 0x50, 0xc7, 0xbf, 0xd2, 0x4b, 0x22, 0x0f, 0x48, 0xd7, 0xb5, 0x1d, 0xaa, 0x7f, 0xbb, 0xd6, 0x37, 0xc1, 0x15, 0xe1, 0xb4, 0xd5, 0x36, 0x64, 0x1c, 0xec, 0xd5, 0x29, 0x3b, 0x44, 0x14, 0x53, 0xe2, 0xf4, 0xa1, 0x38, 0xac, 0x19, 0x55, 0x74, 0xd3, 0x8b, }; static const unsigned char ecdh_brainpoolp320r1_4283_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4283_sharedsecret[] = { 0xc7, 0x0c, 0x53, 0x73, 0x68, 0xf2, 0x31, 0xac, 0x41, 0xeb, 0x58, 0x9c, 0x49, 0x56, 0xd5, 0xf3, 0x0a, 0xff, 0xc0, 0x4e, 0x83, 0x3a, 0x7b, 0x6c, 0xde, 0x3f, 0xee, 0x89, 0x92, 0x1e, 0x9a, 0x28, 0x9d, 0xed, 0xc7, 0x89, 0x94, 0xb3, 0x74, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4283 = { .name = "ecdh_brainpoolp320r1_4283", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4283_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4283_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4283_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1912 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4284 for ECDH, tcId is 1913 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4284_peerpubkey[] = { 0x96, 0xa4, 0x04, 0x31, 0x24, 0x85, 0x1c, 0xac, 0x3e, 0x29, 0x06, 0x30, 0xa0, 0x7b, 0x69, 0x44, 0xf9, 0xf0, 0x50, 0x98, 0x95, 0xa8, 0xfe, 0xe4, 0x92, 0x02, 0x27, 0xdb, 0x5c, 0x60, 0xa1, 0x1f, 0x96, 0x93, 0xf2, 0x6f, 0x3c, 0x94, 0xc1, 0xa9, 0x26, 0x0b, 0xb9, 0x6d, 0x75, 0x20, 0xcd, 0x0d, 0x15, 0xcf, 0x9d, 0xc4, 0x0d, 0xe0, 0xb7, 0x2b, 0xd3, 0x40, 0x05, 0x00, 0x93, 0x6b, 0x9a, 0x77, 0x31, 0x72, 0xd3, 0x3c, 0xb8, 0xbb, 0xa0, 0x31, 0xe6, 0x08, 0xe7, 0x2c, 0x60, 0xd5, 0xe7, 0x04, }; static const unsigned char ecdh_brainpoolp320r1_4284_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4284_sharedsecret[] = { 0x65, 0xf0, 0x0b, 0x9c, 0xf9, 0xa0, 0x06, 0x2a, 0x16, 0xa0, 0x8e, 0xd9, 0x92, 0xed, 0xb2, 0x1a, 0x64, 0xf7, 0xc4, 0x1e, 0x73, 0x35, 0x47, 0xde, 0x4a, 0xd4, 0x19, 0xd1, 0x67, 0xf5, 0x4c, 0x0f, 0xe1, 0x60, 0x65, 0xba, 0x2e, 0x10, 0x86, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4284 = { .name = "ecdh_brainpoolp320r1_4284", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4284_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4284_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4284_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1913 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4285 for ECDH, tcId is 1914 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4285_peerpubkey[] = { 0x1a, 0xc2, 0x7b, 0xfc, 0x8d, 0x07, 0x02, 0x17, 0x48, 0x37, 0x00, 0xd1, 0x87, 0xee, 0x89, 0xd5, 0x0b, 0xe1, 0x62, 0x55, 0x79, 0xdb, 0x9c, 0x65, 0x25, 0x56, 0x94, 0x99, 0xe9, 0xd1, 0x66, 0x6b, 0x09, 0x99, 0xf8, 0x26, 0xba, 0xba, 0xc5, 0x7e, 0x0b, 0x93, 0x59, 0x5b, 0x26, 0xca, 0x72, 0x28, 0x4a, 0x4a, 0x45, 0x98, 0xaa, 0xa5, 0x56, 0x75, 0xcc, 0xfa, 0x4b, 0x58, 0xba, 0xb2, 0x87, 0xf5, 0x69, 0x18, 0xf3, 0xaf, 0x3e, 0x6e, 0x83, 0xc9, 0x59, 0xd8, 0xe7, 0x86, 0x98, 0xec, 0xbc, 0x48, }; static const unsigned char ecdh_brainpoolp320r1_4285_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4285_sharedsecret[] = { 0x3e, 0x21, 0xfb, 0x8c, 0x5d, 0xe6, 0xbb, 0x3f, 0xa0, 0x96, 0xe5, 0xbf, 0x73, 0xa2, 0x70, 0xba, 0xd1, 0x64, 0x47, 0xb5, 0x5d, 0xcd, 0xca, 0x39, 0xe3, 0xd9, 0x92, 0x3f, 0x3f, 0xd0, 0x4b, 0xf6, 0x4e, 0xe7, 0x05, 0x24, 0x7d, 0x04, 0x72, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4285 = { .name = "ecdh_brainpoolp320r1_4285", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4285_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4285_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4285_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1914 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4286 for ECDH, tcId is 1915 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4286_peerpubkey[] = { 0x7d, 0xd1, 0x40, 0x80, 0xbe, 0xa4, 0xfb, 0x4c, 0xb7, 0x11, 0x2e, 0xc8, 0xc4, 0xc3, 0x03, 0x24, 0x25, 0x36, 0xf6, 0x9d, 0x28, 0xd3, 0xa5, 0x86, 0xce, 0x65, 0xc4, 0xbe, 0x96, 0x16, 0x7a, 0xd5, 0x2a, 0x1b, 0x96, 0x33, 0xe1, 0x5c, 0x59, 0x7b, 0x8c, 0x05, 0x97, 0xf2, 0x72, 0x71, 0xcc, 0xb3, 0x40, 0x91, 0xc0, 0x1e, 0x7b, 0x7c, 0xf3, 0x67, 0x57, 0xf5, 0x73, 0x9f, 0x57, 0x63, 0x11, 0x1e, 0x94, 0xba, 0x8a, 0xda, 0x9d, 0x6e, 0x1a, 0x09, 0x5c, 0x66, 0xb5, 0xb4, 0x5e, 0x56, 0x2a, 0xac, }; static const unsigned char ecdh_brainpoolp320r1_4286_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4286_sharedsecret[] = { 0xd2, 0xfe, 0x12, 0x75, 0xbb, 0x63, 0x9f, 0x44, 0x65, 0xcb, 0x95, 0xed, 0x3b, 0x6a, 0xc4, 0x33, 0xa9, 0x8c, 0xb1, 0xe1, 0x9b, 0x51, 0x6e, 0x85, 0x44, 0x51, 0xf9, 0xda, 0x98, 0xec, 0xe3, 0x2e, 0x2a, 0x67, 0x3c, 0x0a, 0xb3, 0x0b, 0xda, 0xd6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4286 = { .name = "ecdh_brainpoolp320r1_4286", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4286_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4286_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4286_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1915 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4287 for ECDH, tcId is 1916 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4287_peerpubkey[] = { 0xc9, 0xdc, 0xe0, 0x10, 0x2a, 0x72, 0x2b, 0x5e, 0x0f, 0x9d, 0x4f, 0x41, 0xa3, 0x65, 0x9c, 0x63, 0xca, 0xc0, 0x15, 0x37, 0xf5, 0x2a, 0x37, 0x4a, 0xa6, 0x3e, 0x8f, 0x47, 0xe4, 0xa9, 0xa7, 0xd9, 0x22, 0x41, 0x18, 0xe6, 0x20, 0x52, 0x1d, 0x1e, 0x07, 0x1e, 0x20, 0xc4, 0x36, 0x97, 0xe0, 0x82, 0x83, 0x1d, 0x16, 0x71, 0x71, 0x3b, 0x54, 0x40, 0x2a, 0x67, 0x6e, 0xa5, 0x87, 0xce, 0xca, 0xee, 0x75, 0x00, 0x89, 0xf5, 0x96, 0x17, 0x2a, 0xec, 0xad, 0xbd, 0xc3, 0xaa, 0xc9, 0x29, 0x7e, 0x83, }; static const unsigned char ecdh_brainpoolp320r1_4287_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320r1_4287_sharedsecret[] = { 0x80, 0xd7, 0x84, 0xeb, 0x18, 0xec, 0x8f, 0xa5, 0xb5, 0x99, 0xbd, 0xf0, 0x0a, 0xd2, 0xf7, 0x99, 0xb3, 0x79, 0x60, 0xae, 0x14, 0x43, 0xd8, 0xf8, 0x94, 0x64, 0xf0, 0x9b, 0xa5, 0x1d, 0xea, 0x84, 0x6c, 0x54, 0x8d, 0x86, 0xa1, 0x5e, 0x94, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4287 = { .name = "ecdh_brainpoolp320r1_4287", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4287_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4287_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4287_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 1916 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4288 for ECDH, tcId is 1917 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4288_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4288_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_4288_sharedsecret[] = { 0xa3, 0xe8, 0x67, 0x77, 0xa4, 0x26, 0x3b, 0x46, 0x56, 0x73, 0x3a, 0x65, 0xbf, 0x32, 0x2d, 0x39, 0x71, 0x99, 0xcd, 0xa9, 0x03, 0x58, 0x8f, 0xc3, 0x75, 0x4c, 0xb0, 0xe2, 0x79, 0x01, 0xf5, 0xe2, 0x9f, 0x11, 0x5b, 0x51, 0x1b, 0x94, 0xc8, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4288 = { .name = "ecdh_brainpoolp320r1_4288", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4288_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4288_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4288_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1917 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4289 for ECDH, tcId is 1918 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4289_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4289_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_4289_sharedsecret[] = { 0x93, 0xcd, 0x46, 0x5d, 0x33, 0x2e, 0x25, 0xbb, 0xec, 0x7b, 0x19, 0x5b, 0x37, 0xf7, 0xe3, 0xa1, 0x26, 0xf1, 0xd6, 0x7c, 0xdb, 0x94, 0x6c, 0xb9, 0xb2, 0xc4, 0x5a, 0x36, 0xa5, 0xc4, 0xd7, 0xe9, 0x17, 0x1f, 0x3d, 0x3f, 0xde, 0xd2, 0x0e, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4289 = { .name = "ecdh_brainpoolp320r1_4289", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4289_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4289_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4289_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1918 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4290 for ECDH, tcId is 1919 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4290_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4290_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4290_sharedsecret[] = { 0x6c, 0xc6, 0x52, 0x0a, 0x3d, 0x34, 0xec, 0x73, 0xbd, 0xc0, 0x64, 0x83, 0x90, 0xa8, 0xbe, 0x67, 0x36, 0xc1, 0x04, 0xa6, 0x65, 0x1c, 0x7a, 0x35, 0xfa, 0xce, 0x31, 0x0f, 0xd0, 0xbf, 0x69, 0xb1, 0x51, 0xae, 0xcf, 0x45, 0x7e, 0xf5, 0x84, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4290 = { .name = "ecdh_brainpoolp320r1_4290", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4290_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4290_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4290_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1919 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4291 for ECDH, tcId is 1920 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4291_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4291_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320r1_4291_sharedsecret[] = { 0x78, 0xb7, 0xd0, 0x48, 0x61, 0x46, 0x0c, 0xbf, 0x14, 0x1f, 0x6d, 0x41, 0x64, 0x87, 0x42, 0xad, 0xf4, 0x59, 0xb5, 0xf3, 0x69, 0x5b, 0xa2, 0x44, 0x9c, 0xe7, 0x62, 0x10, 0x49, 0x4c, 0xe5, 0x40, 0x06, 0x9e, 0x15, 0x36, 0xc0, 0x31, 0x00, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4291 = { .name = "ecdh_brainpoolp320r1_4291", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4291_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4291_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4291_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1920 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4292 for ECDH, tcId is 1921 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4292_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4292_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4292_sharedsecret[] = { 0x8f, 0x21, 0xe6, 0x98, 0xa1, 0xe1, 0xbc, 0x66, 0xac, 0xc0, 0x8a, 0xdb, 0x5b, 0x92, 0x3e, 0x4b, 0x2a, 0x01, 0x2d, 0xfe, 0x81, 0x45, 0x63, 0x7e, 0x70, 0x23, 0x51, 0xf1, 0x61, 0x68, 0x8f, 0x0b, 0x57, 0x2c, 0x57, 0xd4, 0xd1, 0xb6, 0xb4, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4292 = { .name = "ecdh_brainpoolp320r1_4292", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4292_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4292_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4292_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1921 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4293 for ECDH, tcId is 1922 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4293_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4293_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe8, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_4293_sharedsecret[] = { 0x15, 0x1b, 0x2e, 0x82, 0xd0, 0x09, 0xa1, 0x8b, 0x4b, 0x7e, 0x46, 0xdf, 0x2a, 0xd0, 0xe3, 0x0d, 0x15, 0x1d, 0x32, 0x1b, 0xd6, 0x4e, 0xf2, 0xf1, 0xff, 0x6a, 0x36, 0x78, 0x1a, 0xe4, 0x48, 0xb9, 0x9e, 0xf4, 0x43, 0xac, 0x7d, 0x1b, 0x09, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4293 = { .name = "ecdh_brainpoolp320r1_4293", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4293_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4293_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4293_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1922 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4294 for ECDH, tcId is 1923 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4294_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4294_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x81, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_4294_sharedsecret[] = { 0xd0, 0x4a, 0x5e, 0x44, 0x82, 0x81, 0x63, 0xfc, 0xb6, 0x6f, 0x9e, 0x60, 0x1d, 0x93, 0x3b, 0xa2, 0xf4, 0x31, 0xca, 0xda, 0x91, 0x25, 0x68, 0x61, 0xe3, 0x67, 0x65, 0xf6, 0x09, 0x8e, 0x23, 0x40, 0x05, 0xf4, 0x8b, 0xb0, 0x39, 0xa2, 0x88, 0xef, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4294 = { .name = "ecdh_brainpoolp320r1_4294", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4294_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4294_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4294_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1923 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4295 for ECDH, tcId is 1924 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4295_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4295_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x89, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_4295_sharedsecret[] = { 0x94, 0x02, 0x34, 0x19, 0x38, 0x2f, 0xbd, 0xca, 0xcb, 0x99, 0xfc, 0x0c, 0x37, 0xb7, 0x3b, 0xe7, 0x71, 0xbb, 0xcb, 0x8b, 0x2e, 0xfd, 0xc6, 0xdd, 0x32, 0x4f, 0x03, 0x28, 0xe1, 0x6b, 0x75, 0x5b, 0xb2, 0x7a, 0x2a, 0xb4, 0x40, 0xed, 0x6c, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4295 = { .name = "ecdh_brainpoolp320r1_4295", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4295_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4295_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4295_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1924 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4296 for ECDH, tcId is 1925 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4296_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4296_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5a, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320r1_4296_sharedsecret[] = { 0xaa, 0x46, 0x4b, 0x77, 0x9d, 0x45, 0x1b, 0xeb, 0x21, 0xba, 0x7f, 0x63, 0xb6, 0x5d, 0xb0, 0x44, 0x2c, 0x52, 0xb9, 0xac, 0x32, 0xf0, 0xa2, 0xad, 0xdc, 0xd0, 0x86, 0x9c, 0x7e, 0xbd, 0xdf, 0xf4, 0x79, 0xd4, 0x74, 0x61, 0xb8, 0x32, 0x25, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4296 = { .name = "ecdh_brainpoolp320r1_4296", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4296_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4296_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4296_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1925 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4297 for ECDH, tcId is 1926 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4297_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4297_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x33, }; static const unsigned char ecdh_brainpoolp320r1_4297_sharedsecret[] = { 0xc0, 0x03, 0x8d, 0xa8, 0x58, 0x44, 0x1f, 0x55, 0x9a, 0x86, 0x4d, 0xcd, 0x6c, 0x45, 0x58, 0x43, 0x7f, 0x9a, 0xd0, 0x91, 0xa6, 0x7c, 0x3f, 0xda, 0x69, 0xa9, 0xe0, 0xcb, 0x6f, 0x44, 0x6a, 0x8b, 0x47, 0xae, 0x95, 0xed, 0xc2, 0xf4, 0xea, 0xde, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4297 = { .name = "ecdh_brainpoolp320r1_4297", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4297_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4297_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4297_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1926 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4298 for ECDH, tcId is 1927 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4298_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4298_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xb3, }; static const unsigned char ecdh_brainpoolp320r1_4298_sharedsecret[] = { 0x82, 0x58, 0x13, 0x1a, 0x80, 0xbc, 0x9f, 0x2b, 0x8b, 0xa5, 0x32, 0xef, 0x12, 0x53, 0xef, 0x39, 0xdc, 0xe2, 0x5e, 0x6d, 0xeb, 0x85, 0x22, 0x7c, 0x67, 0x02, 0x73, 0x52, 0x1c, 0x31, 0x1d, 0xbb, 0x9b, 0xf1, 0xa5, 0x6d, 0xd2, 0x91, 0x07, 0xb3, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4298 = { .name = "ecdh_brainpoolp320r1_4298", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4298_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4298_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4298_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1927 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4299 for ECDH, tcId is 1928 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4299_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4299_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xf3, }; static const unsigned char ecdh_brainpoolp320r1_4299_sharedsecret[] = { 0xae, 0x75, 0x2e, 0x75, 0x68, 0x4a, 0x9a, 0xdf, 0xc6, 0x19, 0x8e, 0x6c, 0x1c, 0xe9, 0x24, 0x9d, 0x26, 0x74, 0x31, 0x04, 0xe8, 0xb0, 0xbd, 0x04, 0x17, 0x99, 0x8c, 0x62, 0x98, 0x26, 0x22, 0xea, 0x2f, 0xdf, 0x69, 0x17, 0x41, 0x3d, 0x54, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4299 = { .name = "ecdh_brainpoolp320r1_4299", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4299_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4299_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4299_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1928 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4300 for ECDH, tcId is 1929 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4300_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4300_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x03, }; static const unsigned char ecdh_brainpoolp320r1_4300_sharedsecret[] = { 0x37, 0xbf, 0xbb, 0x63, 0x7f, 0xce, 0x27, 0xee, 0x80, 0xb3, 0xaf, 0x32, 0x65, 0x46, 0x30, 0x3e, 0x0b, 0xd8, 0xaf, 0x01, 0xb7, 0x2f, 0x59, 0x18, 0x30, 0xa5, 0x48, 0x60, 0x90, 0x55, 0xbd, 0xa4, 0x89, 0xd9, 0xa4, 0xe6, 0xb5, 0xe3, 0xf4, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4300 = { .name = "ecdh_brainpoolp320r1_4300", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4300_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4300_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4300_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1929 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4301 for ECDH, tcId is 1930 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4301_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4301_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0b, }; static const unsigned char ecdh_brainpoolp320r1_4301_sharedsecret[] = { 0x85, 0x4c, 0xe9, 0x51, 0x6e, 0x73, 0xc6, 0xcc, 0x8d, 0x0d, 0x6c, 0xe3, 0xcd, 0xf9, 0x33, 0x54, 0x1a, 0x71, 0x95, 0x78, 0x71, 0x24, 0x40, 0xf0, 0x2a, 0x86, 0x82, 0x9a, 0xf1, 0x39, 0x8f, 0xca, 0xb2, 0xbb, 0x09, 0x49, 0xc1, 0xd6, 0x31, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4301 = { .name = "ecdh_brainpoolp320r1_4301", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4301_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4301_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4301_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1930 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4302 for ECDH, tcId is 1931 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4302_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4302_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const unsigned char ecdh_brainpoolp320r1_4302_sharedsecret[] = { 0xa3, 0xe8, 0x67, 0x77, 0xa4, 0x26, 0x3b, 0x46, 0x56, 0x73, 0x3a, 0x65, 0xbf, 0x32, 0x2d, 0x39, 0x71, 0x99, 0xcd, 0xa9, 0x03, 0x58, 0x8f, 0xc3, 0x75, 0x4c, 0xb0, 0xe2, 0x79, 0x01, 0xf5, 0xe2, 0x9f, 0x11, 0x5b, 0x51, 0x1b, 0x94, 0xc8, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4302 = { .name = "ecdh_brainpoolp320r1_4302", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4302_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4302_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4302_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1931 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4303 for ECDH, tcId is 1932 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4303_peerpubkey[] = { 0x4e, 0x73, 0xd5, 0x9e, 0xc4, 0x74, 0xe6, 0x79, 0x41, 0x4d, 0x09, 0x22, 0xde, 0x22, 0xe0, 0x6d, 0x0d, 0xad, 0x99, 0x0b, 0xa4, 0x74, 0x6c, 0x3d, 0x02, 0x6b, 0xde, 0xa5, 0x2e, 0x7b, 0xbe, 0xaa, 0xc9, 0x28, 0xd0, 0xdd, 0xaa, 0xb2, 0x9d, 0xfe, 0xd2, 0x30, 0xdd, 0xe6, 0x0f, 0xd5, 0x7d, 0x4e, 0xf8, 0xe9, 0x35, 0xb2, 0x3c, 0xb7, 0xd4, 0x21, 0x6b, 0x27, 0x8b, 0x17, 0xa3, 0xf0, 0x2d, 0x70, 0x45, 0x4f, 0xa0, 0xe4, 0x5d, 0xa2, 0x05, 0x4b, 0x91, 0xb0, 0xc4, 0xb6, 0x63, 0xab, 0x24, 0x3d, }; static const unsigned char ecdh_brainpoolp320r1_4303_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, }; static const unsigned char ecdh_brainpoolp320r1_4303_sharedsecret[] = { 0x7d, 0xfd, 0x07, 0xc1, 0xcf, 0xe7, 0x0d, 0xb4, 0x77, 0x2c, 0xf9, 0xf6, 0xbb, 0x6b, 0x58, 0xa1, 0x0b, 0xbc, 0x95, 0x09, 0xe5, 0xce, 0x86, 0x65, 0x1d, 0x5c, 0x39, 0x5f, 0x35, 0x44, 0xf6, 0x2d, 0x6d, 0x8f, 0x81, 0x09, 0xed, 0xba, 0x44, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4303 = { .name = "ecdh_brainpoolp320r1_4303", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4303_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4303_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4303_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 1932 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4304 for ECDH, tcId is 1933 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4304_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4304_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4304 = { .name = "ecdh_brainpoolp320r1_4304", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4304_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4304_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1933 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4305 for ECDH, tcId is 1934 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4305_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_4305_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4305 = { .name = "ecdh_brainpoolp320r1_4305", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4305_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4305_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1934 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4306 for ECDH, tcId is 1935 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4306_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_4306_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4306 = { .name = "ecdh_brainpoolp320r1_4306", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4306_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4306_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1935 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4307 for ECDH, tcId is 1936 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4307_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_4307_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4307 = { .name = "ecdh_brainpoolp320r1_4307", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4307_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4307_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1936 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4308 for ECDH, tcId is 1937 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4308_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4308_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4308 = { .name = "ecdh_brainpoolp320r1_4308", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4308_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4308_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1937 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4309 for ECDH, tcId is 1938 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4309_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_4309_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4309 = { .name = "ecdh_brainpoolp320r1_4309", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4309_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4309_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1938 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4310 for ECDH, tcId is 1939 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4310_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_4310_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4310 = { .name = "ecdh_brainpoolp320r1_4310", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4310_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4310_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1939 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4311 for ECDH, tcId is 1940 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4311_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_4311_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4311 = { .name = "ecdh_brainpoolp320r1_4311", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4311_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4311_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1940 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4312 for ECDH, tcId is 1941 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4312_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4312_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4312 = { .name = "ecdh_brainpoolp320r1_4312", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4312_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4312_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1941 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4313 for ECDH, tcId is 1942 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4313_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_4313_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4313 = { .name = "ecdh_brainpoolp320r1_4313", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4313_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4313_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1942 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4314 for ECDH, tcId is 1943 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4314_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_4314_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4314 = { .name = "ecdh_brainpoolp320r1_4314", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4314_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4314_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1943 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4315 for ECDH, tcId is 1944 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4315_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_4315_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4315 = { .name = "ecdh_brainpoolp320r1_4315", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4315_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4315_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1944 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4316 for ECDH, tcId is 1945 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4316_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4316_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4316 = { .name = "ecdh_brainpoolp320r1_4316", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4316_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4316_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1945 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4317 for ECDH, tcId is 1946 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4317_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320r1_4317_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4317 = { .name = "ecdh_brainpoolp320r1_4317", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4317_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4317_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1946 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4318 for ECDH, tcId is 1947 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4318_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320r1_4318_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4318 = { .name = "ecdh_brainpoolp320r1_4318", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4318_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4318_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1947 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4319 for ECDH, tcId is 1948 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4319_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320r1_4319_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4319 = { .name = "ecdh_brainpoolp320r1_4319", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4319_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4319_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 1948 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4320 for ECDH, tcId is 1950 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4320_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x8b, }; static const unsigned char ecdh_brainpoolp320r1_4320_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4320 = { .name = "ecdh_brainpoolp320r1_4320", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4320_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4320_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 1950 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4321 for ECDH, tcId is 1951 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4321_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320r1_4321_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4321 = { .name = "ecdh_brainpoolp320r1_4321", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4321_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4321_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 1951 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4322 for ECDH, tcId is 1954 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4322_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4322_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4322_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4322 = { .name = "ecdh_brainpoolp320r1_4322", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4322_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4322_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4322_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 1, tcId is 1954 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4323 for ECDH, tcId is 1955 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4323_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4323_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4323_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4323 = { .name = "ecdh_brainpoolp320r1_4323", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4323_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4323_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4323_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 410618568360611413177547474029944166748205379750040840301822434183392856467013123528027, tcId is 1955 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4324 for ECDH, tcId is 1956 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4324_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4324_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4324_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4324 = { .name = "ecdh_brainpoolp320r1_4324", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4324_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4324_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4324_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator = (0,0), tcId is 1956 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4325 for ECDH, tcId is 1957 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4325_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4325_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4325_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4325 = { .name = "ecdh_brainpoolp320r1_4325", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4325_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4325_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4325_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator not on curve, tcId is 1957 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4326 for ECDH, tcId is 1960 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4326_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4326_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4326_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4326 = { .name = "ecdh_brainpoolp320r1_4326", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4326_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4326_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4326_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = 2, tcId is 1960 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4327 for ECDH, tcId is 1962 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4327_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4327_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4327_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4327 = { .name = "ecdh_brainpoolp320r1_4327", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4327_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4327_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4327_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = None, tcId is 1962 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4328 for ECDH, tcId is 1967 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4328_peerpubkey[] = { 0x4c, 0x66, 0x6c, 0x63, 0x7a, 0x77, 0x1b, 0x09, 0xbc, 0x9c, 0x83, 0xed, 0xc9, 0x6a, 0x6e, 0x78, 0x84, 0x0b, 0x0a, 0x43, 0xfb, 0xb4, 0x2b, 0x1b, 0x36, 0x3b, 0xfd, 0x28, 0xd2, 0xa2, 0x2a, 0x11, 0x88, 0x9d, 0xd1, 0xb9, 0xdb, 0x24, 0x38, 0x6a, 0x22, 0xe4, 0x4d, 0x18, 0x1b, 0x85, 0x87, 0x70, 0x0a, 0x40, 0x5e, 0x08, 0x3e, 0x4f, 0xbe, 0xe3, 0xd4, 0x41, 0xa5, 0x49, 0x6a, 0x7a, 0x48, 0x1f, 0x57, 0x2d, 0x06, 0x2d, 0x29, 0xfd, 0x2d, 0x46, 0x65, 0xad, 0xc8, 0x43, 0xa1, 0xeb, 0xb2, 0x89, }; static const unsigned char ecdh_brainpoolp320r1_4328_privkey[] = { 0x63, 0xc7, 0x3b, 0xa2, 0x72, 0x72, 0x2e, 0xb5, 0xc4, 0xec, 0x1f, 0x8c, 0x0e, 0x8b, 0x98, 0xe3, 0xc0, 0xd6, 0xae, 0x35, 0x47, 0xa1, 0x3a, 0x1d, 0x76, 0x14, 0xd4, 0x4e, 0xf1, 0xd6, 0xd1, 0x4d, 0x88, 0x22, 0xb3, 0xf7, 0xdd, 0x61, 0x09, 0xc4, }; static const unsigned char ecdh_brainpoolp320r1_4328_sharedsecret[] = { 0x4f, 0x29, 0xff, 0x49, 0x35, 0x9b, 0xd6, 0x5f, 0x86, 0xdd, 0xe2, 0xfd, 0xcd, 0xee, 0x48, 0x45, 0x44, 0xb9, 0x89, 0xc6, 0xb8, 0x5c, 0x84, 0x89, 0x07, 0x6c, 0xbf, 0x18, 0x7c, 0x57, 0x14, 0x5e, 0xff, 0xbe, 0x48, 0xe3, 0x0c, 0x1c, 0xd7, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4328 = { .name = "ecdh_brainpoolp320r1_4328", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4328_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4328_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320r1_4328_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "a = 0, tcId is 1967 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4329 for ECDH, tcId is 1981 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4329_peerpubkey[] = { 0x2d, 0xdf, 0xda, 0x6a, 0x53, 0xe3, 0xaa, 0x31, 0x33, 0xa0, 0x4c, 0x2e, 0xd9, 0xa3, 0xc3, 0x6d, 0x3f, 0x39, 0x07, 0x10, 0xae, 0x78, 0x1e, 0x29, 0x75, 0xc8, 0x37, 0x01, 0xea, 0x35, 0x2f, 0x00, 0x7b, 0x4f, 0x7a, 0x97, 0x6b, 0xa3, 0x22, 0x41, 0x9d, 0x20, 0xd7, 0x53, 0x00, 0xcd, 0xcf, 0x19, 0x0a, 0x58, 0x94, 0x2f, 0x9a, 0xab, 0x22, 0x9a, 0x3d, 0xbf, 0xee, 0x18, 0x5c, 0x3a, 0xdb, 0x6c, 0xe9, 0xa4, 0x90, 0x7b, 0x90, 0xca, 0xc0, 0xfa, 0x64, 0x9c, 0x22, 0xcc, 0x2e, 0x17, 0xd4, 0x8f, }; static const unsigned char ecdh_brainpoolp320r1_4329_privkey[] = { 0x70, 0xd5, 0xb6, 0x5d, 0x90, 0xe6, 0xab, 0x58, 0xa9, 0x1b, 0x5a, 0x75, 0x07, 0x3a, 0x34, 0x7d, 0x08, 0x63, 0xcf, 0xc8, 0xa9, 0x6e, 0x7d, 0xb7, 0x8e, 0x09, 0x8d, 0xfb, 0x50, 0xc4, 0x26, 0x2f, 0x40, 0x1a, 0xf3, 0xc3, 0x6c, 0x43, 0xc7, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4329 = { .name = "ecdh_brainpoolp320r1_4329", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4329_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4329_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP320t1, tcId is 1981 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4330 for ECDH, tcId is 1984 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4330_peerpubkey[] = { 0x27, 0xf2, 0xf8, 0xf1, 0xcb, 0xc7, 0xee, 0x44, 0x0c, 0x16, 0x7d, 0x52, 0x78, 0x2f, 0x50, 0x9b, 0x98, 0x0e, 0x1d, 0xa0, 0x34, 0xc2, 0x59, 0xf0, 0x79, 0xff, 0xf6, 0x53, 0x30, 0x1a, 0xe2, 0x8a, 0x88, 0x51, 0x1e, 0x50, 0x18, 0x36, 0xa7, 0xd6, }; static const unsigned char ecdh_brainpoolp320r1_4330_privkey[] = { 0xcd, 0xea, 0xa0, 0x17, 0x57, 0x95, 0x4b, 0xf8, 0x13, 0xfa, 0xfe, 0xc8, 0x35, 0x69, 0x23, 0x51, 0x8e, 0x41, 0x0c, 0xc8, 0x77, 0x8d, 0x88, 0xea, 0xc1, 0xa0, 0x7f, 0x90, 0xb7, 0xfb, 0x4d, 0x20, 0xdb, 0x28, 0x67, 0x0e, 0x17, 0x8b, 0x94, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4330 = { .name = "ecdh_brainpoolp320r1_4330", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4330_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4330_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 1984 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4331 for ECDH, tcId is 1985 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4331_peerpubkey[] = { 0xcd, 0x87, 0x37, 0x25, 0xad, 0x5a, 0x0c, 0xb4, 0x28, 0xee, 0x17, 0x0b, 0xbe, 0xa7, 0x60, 0x9f, 0x8e, 0x15, 0x6a, 0x73, 0xc4, 0xab, 0x18, 0xfd, 0x32, 0xba, 0xb9, 0xe4, 0x1a, 0xf3, 0xd3, 0x6e, 0xaa, 0x53, 0x13, 0xa8, 0x1f, 0x74, 0xe8, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_4331_privkey[] = { 0xb5, 0x8e, 0xeb, 0x16, 0xa7, 0xf2, 0x2f, 0x45, 0x62, 0x16, 0x1e, 0xd8, 0xea, 0x68, 0xac, 0x86, 0x32, 0x2d, 0x3d, 0xb6, 0xe5, 0xd4, 0xfe, 0xc5, 0x0a, 0xae, 0x16, 0xd0, 0x11, 0x29, 0xbf, 0x8c, 0x4d, 0x75, 0x30, 0xff, 0x4d, 0x94, 0xa1, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4331 = { .name = "ecdh_brainpoolp320r1_4331", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4331_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4331_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1985 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4332 for ECDH, tcId is 1986 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4332_peerpubkey[] = { 0x3f, 0xef, 0x76, 0x6e, 0xf6, 0x18, 0xb7, 0x74, 0xa7, 0x8e, 0x4d, 0x81, 0xe1, 0x6e, 0x5a, 0x9a, 0xfe, 0xa0, 0x65, 0x00, 0xeb, 0x0e, 0x36, 0x63, 0x77, 0xd8, 0x39, 0xbf, 0xfc, 0xee, 0xed, 0x1c, 0x74, 0xe6, 0xca, 0xec, 0xdc, 0x9f, 0xbb, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_4332_privkey[] = { 0xbd, 0xbe, 0xe1, 0x3a, 0x7e, 0xac, 0x09, 0x6b, 0x33, 0xfe, 0x43, 0xb8, 0xad, 0xc4, 0xc0, 0xe5, 0xba, 0xb4, 0x38, 0xfa, 0xa6, 0x33, 0x35, 0x70, 0xff, 0xde, 0xb0, 0x5d, 0x2b, 0x3e, 0x95, 0x96, 0x1f, 0x9d, 0x59, 0x1f, 0x36, 0x88, 0x20, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4332 = { .name = "ecdh_brainpoolp320r1_4332", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4332_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4332_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1986 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4333 for ECDH, tcId is 1987 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4333_peerpubkey[] = { 0x3f, 0xef, 0x76, 0x6e, 0xf6, 0x18, 0xb7, 0x74, 0xa7, 0x8e, 0x4d, 0x81, 0xe1, 0x6e, 0x5a, 0x9a, 0xfe, 0xa0, 0x65, 0x00, 0xeb, 0x0e, 0x36, 0x63, 0x77, 0xd8, 0x39, 0xbf, 0xfc, 0xee, 0xed, 0x1c, 0x74, 0xe6, 0xca, 0xec, 0xdc, 0x9f, 0xbb, 0x21, }; static const unsigned char ecdh_brainpoolp320r1_4333_privkey[] = { 0xbd, 0xbe, 0xe1, 0x3a, 0x7e, 0xac, 0x09, 0x6b, 0x33, 0xfe, 0x43, 0xb8, 0xad, 0xc4, 0xc0, 0xe5, 0xba, 0xb4, 0x38, 0xfa, 0xa6, 0x33, 0x35, 0x70, 0xff, 0xde, 0xb0, 0x5d, 0x2b, 0x3e, 0x95, 0x96, 0x1f, 0x9d, 0x59, 0x1f, 0x36, 0x88, 0x20, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4333 = { .name = "ecdh_brainpoolp320r1_4333", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4333_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4333_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1987 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4334 for ECDH, tcId is 1988 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) static const unsigned char ecdh_brainpoolp320r1_4334_peerpubkey[] = { 0xcd, 0x87, 0x37, 0x25, 0xad, 0x5a, 0x0c, 0xb4, 0x28, 0xee, 0x17, 0x0b, 0xbe, 0xa7, 0x60, 0x9f, 0x8e, 0x15, 0x6a, 0x73, 0xc4, 0xab, 0x18, 0xfd, 0x32, 0xba, 0xb9, 0xe4, 0x1a, 0xf3, 0xd3, 0x6e, 0xaa, 0x53, 0x13, 0xa8, 0x1f, 0x74, 0xe8, 0x45, }; static const unsigned char ecdh_brainpoolp320r1_4334_privkey[] = { 0xb5, 0x8e, 0xeb, 0x16, 0xa7, 0xf2, 0x2f, 0x45, 0x62, 0x16, 0x1e, 0xd8, 0xea, 0x68, 0xac, 0x86, 0x32, 0x2d, 0x3d, 0xb6, 0xe5, 0xd4, 0xfe, 0xc5, 0x0a, 0xae, 0x16, 0xd0, 0x11, 0x29, 0xbf, 0x8c, 0x4d, 0x75, 0x30, 0xff, 0x4d, 0x94, 0xa1, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320r1_4334 = { .name = "ecdh_brainpoolp320r1_4334", .ecdh_alg = ECCCDH, .curve = &brainpoolp320r1_str_params, .peerpubkey = ecdh_brainpoolp320r1_4334_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320r1_4334_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 1988 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) */ /* Test 4335 for ECDH, tcId is 1989 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4335_peerpubkey[] = { 0x70, 0xff, 0xb3, 0x50, 0x17, 0x32, 0x56, 0xeb, 0x43, 0x7b, 0x14, 0x03, 0x65, 0x84, 0x23, 0x97, 0xeb, 0xaf, 0x36, 0x11, 0xb6, 0x38, 0x95, 0x96, 0xc1, 0xf1, 0x7c, 0x5f, 0xf5, 0xce, 0x52, 0x01, 0xf2, 0x4f, 0x69, 0x85, 0xb8, 0xfe, 0x08, 0x90, 0xdc, 0xae, 0x54, 0xb2, 0x60, 0x3d, 0xfb, 0x40, 0x87, 0x24, 0x2a, 0xaf, 0x7b, 0x2d, 0x95, 0xb3, 0x19, 0x9b, 0xfa, 0x03, 0xe8, 0xfc, 0xe5, 0x4e, 0xf6, 0x80, 0xb5, 0x71, 0x09, 0x84, 0x72, 0x74, 0xdb, 0x3b, 0x3a, 0x65, 0x51, 0x2b, 0x7f, 0x83, 0x22, 0x48, 0xe7, 0x0b, 0x10, 0x30, 0xe9, 0x5d, 0xb6, 0x42, 0x95, 0x89, 0x77, 0x5c, 0x33, 0x46, }; static const unsigned char ecdh_brainpoolp384r1_4335_privkey[] = { 0x24, 0xdd, 0xf0, 0xfb, 0xb4, 0x1c, 0x28, 0x36, 0x5d, 0x30, 0x2d, 0xd9, 0xd2, 0x6f, 0xf9, 0xc3, 0x2c, 0x76, 0xc8, 0x5f, 0xa8, 0xb9, 0x13, 0x8a, 0x3e, 0xc6, 0x21, 0xd0, 0xca, 0xff, 0x6d, 0xe8, 0xa7, 0x24, 0xb4, 0x5d, 0x6f, 0xe0, 0xd9, 0x18, 0x00, 0x44, 0x24, 0x2b, 0x9f, 0x41, 0xc8, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_4335_sharedsecret[] = { 0x22, 0x52, 0x27, 0x60, 0xed, 0xc3, 0x92, 0x80, 0xff, 0x32, 0x77, 0xb1, 0x21, 0xe1, 0x7e, 0x75, 0x39, 0x16, 0x5e, 0x7c, 0x67, 0x7a, 0x65, 0xc8, 0xd0, 0xdc, 0x81, 0x59, 0x11, 0x1f, 0x8e, 0x5d, 0x3d, 0xf7, 0x03, 0x5f, 0xe8, 0xce, 0x33, 0xac, 0x0a, 0x0e, 0x04, 0x7e, 0xd0, 0x84, 0x2a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4335 = { .name = "ecdh_brainpoolp384r1_4335", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4335_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4335_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4335_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 1989 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4336 for ECDH, tcId is 1990 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4336_peerpubkey[] = { 0x70, 0xff, 0xb3, 0x50, 0x17, 0x32, 0x56, 0xeb, 0x43, 0x7b, 0x14, 0x03, 0x65, 0x84, 0x23, 0x97, 0xeb, 0xaf, 0x36, 0x11, 0xb6, 0x38, 0x95, 0x96, 0xc1, 0xf1, 0x7c, 0x5f, 0xf5, 0xce, 0x52, 0x01, 0xf2, 0x4f, 0x69, 0x85, 0xb8, 0xfe, 0x08, 0x90, 0xdc, 0xae, 0x54, 0xb2, 0x60, 0x3d, 0xfb, 0x40, }; static const unsigned char ecdh_brainpoolp384r1_4336_privkey[] = { 0x24, 0xdd, 0xf0, 0xfb, 0xb4, 0x1c, 0x28, 0x36, 0x5d, 0x30, 0x2d, 0xd9, 0xd2, 0x6f, 0xf9, 0xc3, 0x2c, 0x76, 0xc8, 0x5f, 0xa8, 0xb9, 0x13, 0x8a, 0x3e, 0xc6, 0x21, 0xd0, 0xca, 0xff, 0x6d, 0xe8, 0xa7, 0x24, 0xb4, 0x5d, 0x6f, 0xe0, 0xd9, 0x18, 0x00, 0x44, 0x24, 0x2b, 0x9f, 0x41, 0xc8, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_4336_sharedsecret[] = { 0x22, 0x52, 0x27, 0x60, 0xed, 0xc3, 0x92, 0x80, 0xff, 0x32, 0x77, 0xb1, 0x21, 0xe1, 0x7e, 0x75, 0x39, 0x16, 0x5e, 0x7c, 0x67, 0x7a, 0x65, 0xc8, 0xd0, 0xdc, 0x81, 0x59, 0x11, 0x1f, 0x8e, 0x5d, 0x3d, 0xf7, 0x03, 0x5f, 0xe8, 0xce, 0x33, 0xac, 0x0a, 0x0e, 0x04, 0x7e, 0xd0, 0x84, 0x2a, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4336 = { .name = "ecdh_brainpoolp384r1_4336", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4336_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4336_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4336_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "compressed public key, tcId is 1990 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4337 for ECDH, tcId is 1991 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4337_peerpubkey[] = { 0x56, 0xb0, 0xe0, 0x05, 0x39, 0xa3, 0x04, 0xe1, 0xdc, 0xae, 0xf0, 0x0d, 0x90, 0xe1, 0xe8, 0x51, 0x00, 0x2c, 0x5c, 0xbb, 0x2e, 0x7a, 0x0c, 0xdd, 0xe3, 0x47, 0x00, 0xf2, 0x42, 0xd5, 0x2d, 0x60, 0x7c, 0xd4, 0x84, 0x98, 0xfe, 0x76, 0x68, 0xee, 0xff, 0xad, 0xcf, 0x24, 0x18, 0xea, 0x89, 0x8e, 0x57, 0x67, 0x7f, 0xe6, 0x70, 0x39, 0x11, 0xe5, 0xde, 0x7c, 0x45, 0xf3, 0xe0, 0x3e, 0xb1, 0x79, 0xe3, 0x24, 0x80, 0x08, 0xef, 0xf9, 0xf5, 0xad, 0x58, 0x60, 0xc7, 0x4d, 0x58, 0xa4, 0x5b, 0x29, 0x1c, 0x23, 0xbf, 0x8d, 0x5b, 0xe2, 0x85, 0xec, 0x6e, 0x9f, 0xd6, 0x7e, 0xce, 0x9b, 0x66, 0x92, }; static const unsigned char ecdh_brainpoolp384r1_4337_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4337_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4337 = { .name = "ecdh_brainpoolp384r1_4337", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4337_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4337_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4337_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1991 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4338 for ECDH, tcId is 1992 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4338_peerpubkey[] = { 0x03, 0x8c, 0x59, 0xd9, 0x09, 0x15, 0x56, 0x3e, 0xb3, 0xfc, 0xb7, 0xf8, 0xf0, 0xb9, 0xb4, 0xcf, 0xcd, 0x27, 0x9a, 0x25, 0x91, 0x69, 0x5b, 0x5a, 0x3c, 0x64, 0xe3, 0xa1, 0xbd, 0xa0, 0xea, 0xa7, 0x8e, 0x8f, 0x06, 0x07, 0x27, 0x85, 0x8f, 0xb0, 0x74, 0xf2, 0xac, 0xc9, 0x8e, 0xfa, 0x48, 0x23, 0x0e, 0x90, 0xa6, 0x19, 0x97, 0x13, 0xcc, 0x07, 0xfc, 0x84, 0x5d, 0x61, 0x74, 0x45, 0x64, 0xce, 0xbf, 0xb1, 0xd1, 0x57, 0xc3, 0x9c, 0x4a, 0x01, 0x80, 0x7b, 0xbf, 0x81, 0xa6, 0x9c, 0xaa, 0xe6, 0x9d, 0x6a, 0x9e, 0xf6, 0xc8, 0x54, 0x72, 0x13, 0xca, 0x98, 0x23, 0x7f, 0x51, 0x40, 0x6f, 0x90, }; static const unsigned char ecdh_brainpoolp384r1_4338_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4338_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4338 = { .name = "ecdh_brainpoolp384r1_4338", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4338_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4338_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4338_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1992 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4339 for ECDH, tcId is 1993 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4339_peerpubkey[] = { 0x27, 0xa5, 0x70, 0x91, 0x66, 0x84, 0xce, 0xa7, 0x84, 0xb2, 0x70, 0x82, 0xb3, 0x1d, 0xcb, 0x14, 0x9b, 0x40, 0xc9, 0xa0, 0x51, 0x37, 0x94, 0xdb, 0x6c, 0xc4, 0x95, 0x18, 0x58, 0xd8, 0xb2, 0xd2, 0xa3, 0x0c, 0x5b, 0xf0, 0x9d, 0x59, 0x0b, 0x2f, 0x17, 0xe5, 0xc1, 0x40, 0x6e, 0x96, 0xe1, 0xcb, 0x04, 0x7d, 0xba, 0x72, 0x0e, 0x25, 0xf5, 0x72, 0x99, 0x03, 0xe7, 0x16, 0x4b, 0x2c, 0x73, 0x90, 0x7d, 0xb1, 0x48, 0xbc, 0xf8, 0xaf, 0xf6, 0x49, 0xaa, 0x80, 0x71, 0x5b, 0x06, 0x7d, 0x88, 0xce, 0x1b, 0xd2, 0xf3, 0x80, 0xb5, 0x57, 0x05, 0xcf, 0xc3, 0x68, 0xd5, 0xa5, 0x15, 0xbf, 0x6f, 0x91, }; static const unsigned char ecdh_brainpoolp384r1_4339_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4339_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4339 = { .name = "ecdh_brainpoolp384r1_4339", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4339_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4339_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4339_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1993 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4340 for ECDH, tcId is 1994 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4340_peerpubkey[] = { 0x27, 0x9f, 0xfd, 0x6f, 0x54, 0xfe, 0x38, 0x47, 0xd3, 0x46, 0x4b, 0x64, 0x5a, 0x6f, 0x42, 0x43, 0xc4, 0x91, 0x69, 0xb3, 0x49, 0x4c, 0x61, 0xe2, 0x0a, 0x04, 0x57, 0xce, 0x93, 0xd6, 0xaa, 0x85, 0x35, 0xde, 0x70, 0xb5, 0xca, 0x78, 0xfd, 0x7e, 0xff, 0x05, 0xfe, 0xce, 0x3a, 0xc2, 0x53, 0xc5, 0x63, 0xe7, 0x53, 0xd5, 0x31, 0xfb, 0x07, 0x0f, 0xac, 0xb6, 0x84, 0x18, 0x90, 0x00, 0x16, 0xd6, 0x6e, 0x16, 0x87, 0xe2, 0xda, 0xf8, 0xeb, 0x4b, 0x63, 0xb7, 0x49, 0xa4, 0x28, 0x38, 0x38, 0x69, 0x4d, 0x3d, 0xee, 0xac, 0x3e, 0x79, 0xb9, 0x70, 0x6e, 0x85, 0x6f, 0xb7, 0x35, 0x8f, 0xa0, 0xa2, }; static const unsigned char ecdh_brainpoolp384r1_4340_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4340_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4340 = { .name = "ecdh_brainpoolp384r1_4340", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4340_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4340_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4340_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1994 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4341 for ECDH, tcId is 1995 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4341_peerpubkey[] = { 0x79, 0x08, 0xc8, 0xd8, 0x95, 0xed, 0x9e, 0xf9, 0xa9, 0x02, 0x95, 0x1a, 0x3a, 0x45, 0x38, 0x3d, 0x24, 0xd5, 0x7e, 0x3b, 0xeb, 0x47, 0xf8, 0x4c, 0x58, 0x63, 0x6a, 0xbd, 0x64, 0x6b, 0x90, 0x50, 0x87, 0xb2, 0xa0, 0x6e, 0x13, 0x04, 0x28, 0xf5, 0x90, 0x07, 0x86, 0x6a, 0x2a, 0x63, 0x8a, 0xbd, 0x4a, 0xf0, 0x80, 0x91, 0xe7, 0x58, 0x9d, 0xcf, 0xbe, 0x7e, 0x63, 0x8f, 0x10, 0xb4, 0x30, 0xa8, 0x9e, 0xa2, 0x6a, 0xd9, 0x30, 0x01, 0x9a, 0x22, 0x70, 0x40, 0xca, 0x43, 0xaa, 0x4d, 0x08, 0x65, 0x1b, 0x7c, 0x09, 0x04, 0xc5, 0x1a, 0x32, 0xf8, 0xd2, 0x14, 0xb2, 0xf0, 0xf4, 0x34, 0xe8, 0x5d, }; static const unsigned char ecdh_brainpoolp384r1_4341_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4341_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4341 = { .name = "ecdh_brainpoolp384r1_4341", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4341_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4341_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4341_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1995 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4342 for ECDH, tcId is 1996 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4342_peerpubkey[] = { 0x40, 0x2f, 0x58, 0xfa, 0xf1, 0x5b, 0x56, 0xdc, 0x44, 0x8b, 0xb6, 0xeb, 0x75, 0x25, 0x02, 0xd0, 0x37, 0x83, 0xd7, 0xbe, 0xcc, 0xc3, 0xaf, 0xdb, 0x5c, 0x44, 0xc0, 0xe3, 0x05, 0x76, 0x51, 0x09, 0xc9, 0x52, 0x27, 0xe9, 0xd7, 0xe2, 0xe9, 0xc5, 0x21, 0x77, 0xde, 0x0e, 0xd2, 0xf9, 0x5b, 0xaa, 0x06, 0x2e, 0x40, 0x0b, 0xfa, 0xe4, 0x74, 0x4a, 0x06, 0x11, 0x99, 0xb3, 0x35, 0x80, 0x30, 0x19, 0x4e, 0x7f, 0x28, 0xd3, 0xba, 0x74, 0x8f, 0xf0, 0x26, 0x0b, 0x1f, 0xee, 0x5d, 0x08, 0x44, 0xf8, 0xce, 0x44, 0x6d, 0xac, 0x26, 0x3a, 0x54, 0xbe, 0x95, 0x0d, 0x38, 0x9e, 0x03, 0x41, 0xb5, 0x75, }; static const unsigned char ecdh_brainpoolp384r1_4342_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4342_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4342 = { .name = "ecdh_brainpoolp384r1_4342", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4342_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4342_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4342_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1996 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4343 for ECDH, tcId is 1997 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4343_peerpubkey[] = { 0x64, 0xa1, 0x7f, 0xfb, 0x46, 0xef, 0x3a, 0x32, 0x1b, 0xa2, 0x3f, 0x97, 0x74, 0x0e, 0x48, 0x9e, 0xd2, 0x6e, 0x6f, 0x76, 0xb5, 0x86, 0x34, 0x4f, 0x69, 0xcc, 0x5c, 0x05, 0x65, 0x6d, 0xae, 0xa3, 0x57, 0x19, 0xc8, 0xc6, 0xb4, 0xcb, 0x5d, 0x1c, 0x5d, 0x8e, 0xec, 0x6d, 0x67, 0x05, 0xef, 0xe4, 0x77, 0x39, 0x6a, 0x92, 0x65, 0xb9, 0xc7, 0x1a, 0xd1, 0x11, 0x85, 0x5d, 0x87, 0x95, 0x98, 0xce, 0x31, 0xe9, 0xe9, 0x5c, 0xe9, 0x39, 0x5b, 0x75, 0x15, 0x88, 0xc5, 0xd9, 0x2a, 0x3a, 0xac, 0xb6, 0x0d, 0x41, 0x3c, 0x1b, 0xcc, 0x66, 0xe7, 0xb9, 0xcf, 0x66, 0x3d, 0x30, 0xb8, 0xb0, 0x0a, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_4343_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4343_sharedsecret[] = { 0x17, 0xcf, 0xae, 0x6c, 0x38, 0x51, 0xf2, 0xc5, 0xca, 0x6b, 0xad, 0xbb, 0xe2, 0xcf, 0x88, 0x56, 0x62, 0xd6, 0xf7, 0xf0, 0x9e, 0x74, 0x37, 0x4f, 0x1c, 0x7c, 0x22, 0x45, 0x04, 0x5c, 0x02, 0x44, 0x3e, 0xeb, 0x57, 0xd8, 0xb4, 0x3b, 0x46, 0x3d, 0xab, 0xcc, 0x02, 0x21, 0xbc, 0x82, 0xab, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4343 = { .name = "ecdh_brainpoolp384r1_4343", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4343_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4343_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4343_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1997 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4344 for ECDH, tcId is 1998 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4344_peerpubkey[] = { 0x5d, 0x86, 0xd2, 0x27, 0x5f, 0x8e, 0x2c, 0x9d, 0x7c, 0x92, 0x32, 0xc4, 0x8b, 0x41, 0x15, 0x9b, 0x1e, 0x8e, 0x84, 0x8d, 0x5e, 0x09, 0x86, 0x41, 0x9c, 0x3b, 0x40, 0xb4, 0xa9, 0xb9, 0x3d, 0x3d, 0x86, 0x3e, 0xfb, 0xad, 0x99, 0xc9, 0x81, 0xc4, 0x5b, 0xdd, 0x40, 0xbf, 0x3f, 0xd3, 0xe2, 0xb2, 0x62, 0xba, 0x8a, 0x5c, 0x36, 0xe3, 0xd9, 0x48, 0xf2, 0xe9, 0xfb, 0xc4, 0x68, 0x7f, 0xb5, 0xde, 0x4f, 0x4f, 0xb5, 0x9e, 0x38, 0xba, 0xc3, 0xbc, 0xa2, 0xe6, 0x11, 0x79, 0xe0, 0x81, 0x35, 0xe3, 0x46, 0xe1, 0xfe, 0xbc, 0xf9, 0xbe, 0xbe, 0x9b, 0xcd, 0x80, 0x76, 0x88, 0x18, 0x80, 0x6a, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4344_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4344_sharedsecret[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4344 = { .name = "ecdh_brainpoolp384r1_4344", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4344_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4344_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4344_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1998 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4345 for ECDH, tcId is 1999 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4345_peerpubkey[] = { 0x5c, 0x1b, 0x95, 0x13, 0x76, 0x6f, 0x01, 0x7a, 0x40, 0x1f, 0xed, 0x11, 0xa4, 0x35, 0xa3, 0xec, 0x55, 0xa8, 0x18, 0x0d, 0xc2, 0x80, 0xd7, 0xcc, 0xf7, 0xda, 0xb8, 0x9f, 0x79, 0x49, 0x9d, 0xba, 0x8e, 0x22, 0x93, 0x61, 0xc2, 0xbc, 0x0f, 0x64, 0x06, 0x55, 0x8d, 0xb0, 0x72, 0x18, 0xe2, 0xd3, 0x61, 0xaa, 0x06, 0x5e, 0x64, 0xca, 0xbb, 0x09, 0x7b, 0x9d, 0xa8, 0xac, 0x73, 0xb5, 0x68, 0xb4, 0xbc, 0xdd, 0xb4, 0xe3, 0xd6, 0xac, 0xae, 0x8f, 0x68, 0x1f, 0x68, 0xb0, 0x2b, 0xbf, 0xe4, 0x23, 0xc9, 0x8a, 0x2d, 0x3e, 0x1d, 0x99, 0xea, 0xce, 0xde, 0xc4, 0xbf, 0x79, 0xbf, 0x27, 0x85, 0x07, }; static const unsigned char ecdh_brainpoolp384r1_4345_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4345_sharedsecret[] = { 0x2d, 0x06, 0xd2, 0x05, 0xcb, 0xa6, 0xe2, 0x0e, 0x97, 0x61, 0x6b, 0x25, 0x73, 0x0e, 0xfc, 0x50, 0x43, 0x3f, 0xb2, 0x46, 0xda, 0x15, 0x64, 0x25, 0x08, 0xf0, 0x8d, 0xd4, 0xdc, 0x34, 0x8e, 0x83, 0x79, 0x37, 0x15, 0x88, 0xac, 0x25, 0xfa, 0x39, 0x69, 0x69, 0x68, 0xbf, 0xff, 0x4c, 0x76, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4345 = { .name = "ecdh_brainpoolp384r1_4345", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4345_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4345_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4345_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 1999 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4346 for ECDH, tcId is 2000 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4346_peerpubkey[] = { 0x47, 0xad, 0x56, 0x55, 0x22, 0x9b, 0x6c, 0x8d, 0x3f, 0x32, 0x8f, 0x00, 0xa1, 0x0c, 0xb7, 0x19, 0xc6, 0x4c, 0x8a, 0x99, 0x42, 0xac, 0xaa, 0x66, 0x00, 0xda, 0x6f, 0x0d, 0xa2, 0x79, 0xd5, 0xe8, 0x30, 0xfb, 0xe2, 0x5c, 0x28, 0x91, 0x74, 0x0b, 0x17, 0xdc, 0xbb, 0x22, 0xe5, 0x25, 0x5a, 0x93, 0x14, 0xda, 0x41, 0x0d, 0x40, 0x28, 0x54, 0xff, 0x72, 0xdd, 0x49, 0x7e, 0xa0, 0xac, 0xcb, 0xd3, 0x67, 0xde, 0x04, 0xb2, 0xfc, 0x0c, 0x7b, 0x33, 0x78, 0xf2, 0xbb, 0x95, 0x7e, 0x16, 0x38, 0x82, 0x0f, 0x7e, 0xc3, 0xdd, 0x48, 0x3f, 0xc8, 0x0d, 0x7e, 0xe6, 0x50, 0xea, 0xd7, 0xf0, 0xd0, 0x6a, }; static const unsigned char ecdh_brainpoolp384r1_4346_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4346_sharedsecret[] = { 0x33, 0xa2, 0x8d, 0xf9, 0x28, 0x42, 0xcc, 0x0a, 0x0d, 0x43, 0xe5, 0xd3, 0x3e, 0x2d, 0x35, 0x1e, 0x64, 0x12, 0x58, 0xd5, 0x05, 0xcb, 0xca, 0x1a, 0x68, 0x6a, 0x2f, 0x8c, 0x51, 0x3d, 0x7f, 0x94, 0x5e, 0x78, 0x18, 0x7e, 0xae, 0x18, 0x8e, 0x65, 0x96, 0x32, 0x70, 0xa0, 0x75, 0x05, 0x6e, 0x35, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4346 = { .name = "ecdh_brainpoolp384r1_4346", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4346_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4346_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4346_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2000 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4347 for ECDH, tcId is 2001 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4347_peerpubkey[] = { 0x36, 0x73, 0xcc, 0x8f, 0x64, 0xb4, 0xf6, 0x65, 0x1c, 0xe2, 0xb6, 0x9e, 0x05, 0x7d, 0xb0, 0x5f, 0x24, 0xc4, 0xc1, 0x18, 0xe6, 0x96, 0x65, 0xd8, 0xbf, 0x6e, 0x57, 0x74, 0xd0, 0xb2, 0xba, 0x96, 0xcc, 0xc7, 0x96, 0xf5, 0x47, 0xcf, 0x29, 0x83, 0xb5, 0xd4, 0xc2, 0x05, 0x5e, 0xca, 0xb7, 0x5e, 0x51, 0xf4, 0xc4, 0xe9, 0x95, 0x39, 0x74, 0x7d, 0xf8, 0xcb, 0x4a, 0xb3, 0x67, 0x45, 0xfd, 0x3c, 0x60, 0xf1, 0x6c, 0x7e, 0x83, 0xa1, 0xd3, 0xe1, 0x5b, 0x44, 0xcf, 0xca, 0x19, 0x53, 0x92, 0x9e, 0xad, 0x6a, 0xf8, 0x39, 0x8c, 0x43, 0x58, 0x9e, 0x91, 0x3e, 0xbc, 0x64, 0x75, 0x3e, 0xdb, 0x16, }; static const unsigned char ecdh_brainpoolp384r1_4347_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4347_sharedsecret[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4347 = { .name = "ecdh_brainpoolp384r1_4347", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4347_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4347_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4347_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2001 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4348 for ECDH, tcId is 2002 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4348_peerpubkey[] = { 0x8c, 0x58, 0x3d, 0x04, 0x13, 0xb2, 0x4e, 0xaa, 0xc4, 0xec, 0x48, 0x43, 0x48, 0xa3, 0xeb, 0x70, 0x59, 0xe3, 0x7e, 0x85, 0x75, 0xdc, 0x26, 0x57, 0xef, 0x2c, 0x0a, 0x1b, 0x03, 0xd3, 0x20, 0xee, 0x36, 0x38, 0x30, 0x70, 0x22, 0x19, 0x7e, 0xb4, 0x0c, 0xfa, 0xa6, 0xc2, 0x46, 0x5e, 0x7b, 0x27, 0x2f, 0x02, 0x7a, 0xfa, 0xd1, 0x8d, 0xa3, 0xd1, 0x44, 0x09, 0x15, 0x69, 0x11, 0x03, 0x24, 0x70, 0x7a, 0x84, 0x99, 0x90, 0x2d, 0x32, 0x7f, 0x97, 0xe3, 0x29, 0x5f, 0xee, 0xb2, 0x75, 0x2c, 0x0a, 0x69, 0x46, 0xde, 0xdf, 0x08, 0xe9, 0x77, 0xd8, 0x30, 0xc8, 0xe1, 0x35, 0xf9, 0xec, 0xc0, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_4348_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4348_sharedsecret[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4348 = { .name = "ecdh_brainpoolp384r1_4348", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4348_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4348_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4348_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2002 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4349 for ECDH, tcId is 2003 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4349_peerpubkey[] = { 0x34, 0x9c, 0x8a, 0x1b, 0x4e, 0x98, 0x6d, 0x3f, 0x81, 0x4a, 0x0b, 0x14, 0xeb, 0xc4, 0x16, 0xe5, 0x8e, 0xb6, 0x0c, 0x69, 0x7a, 0xf8, 0x89, 0xd9, 0xea, 0xc3, 0x92, 0x7e, 0x53, 0x79, 0x1b, 0x58, 0x9d, 0x10, 0x68, 0xb5, 0x59, 0x02, 0x60, 0x5c, 0x67, 0x5f, 0xfb, 0xc1, 0xf1, 0x1c, 0xef, 0xe5, 0x76, 0xa8, 0xa0, 0x77, 0xf4, 0xe5, 0x67, 0x6b, 0x07, 0xa2, 0xe7, 0x01, 0xad, 0xbd, 0xd1, 0x5f, 0x78, 0xa3, 0xc0, 0x4d, 0x36, 0x5e, 0x65, 0x40, 0x55, 0xee, 0x88, 0xc4, 0xd0, 0x07, 0xa9, 0x7f, 0x5e, 0x66, 0x74, 0xe6, 0x47, 0x50, 0x48, 0x2c, 0x9d, 0xed, 0xcd, 0x24, 0xae, 0x26, 0x3e, 0x50, }; static const unsigned char ecdh_brainpoolp384r1_4349_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4349_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4349 = { .name = "ecdh_brainpoolp384r1_4349", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4349_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4349_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4349_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2003 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4350 for ECDH, tcId is 2004 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4350_peerpubkey[] = { 0x57, 0x2e, 0xd4, 0x7e, 0x9e, 0xe3, 0x1d, 0x2b, 0x21, 0x81, 0xf5, 0xc5, 0x56, 0x28, 0x52, 0xc7, 0xf8, 0xff, 0x70, 0x50, 0xf8, 0x7d, 0xc6, 0x88, 0xa6, 0x4b, 0xc1, 0xba, 0x0b, 0xf2, 0x80, 0xfe, 0x55, 0x11, 0x8f, 0x8f, 0x8c, 0x7f, 0x9c, 0x0d, 0xb1, 0xe5, 0x12, 0x68, 0x08, 0x76, 0xe7, 0xae, 0x87, 0xdd, 0xb0, 0x17, 0x4b, 0xe3, 0xd7, 0x1c, 0xe5, 0xbd, 0xa9, 0xcc, 0x02, 0x4d, 0x04, 0xc8, 0xa8, 0x2c, 0x00, 0x24, 0x91, 0xb8, 0x34, 0x15, 0x04, 0x3b, 0xfb, 0xb1, 0xb3, 0x72, 0xfb, 0xfa, 0xca, 0x27, 0xe0, 0xfb, 0xe9, 0x76, 0x8f, 0xec, 0x5e, 0xc6, 0x7c, 0x5f, 0xd7, 0x54, 0x48, 0x17, }; static const unsigned char ecdh_brainpoolp384r1_4350_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4350_sharedsecret[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4350 = { .name = "ecdh_brainpoolp384r1_4350", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4350_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4350_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4350_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2004 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4351 for ECDH, tcId is 2005 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4351_peerpubkey[] = { 0x4e, 0xf2, 0xb0, 0x5b, 0xf7, 0x0e, 0x82, 0x7c, 0x1f, 0xe6, 0x4e, 0xdd, 0xcc, 0x04, 0xcf, 0x1a, 0x41, 0x6c, 0x03, 0x2d, 0x15, 0x5d, 0x39, 0x46, 0xbf, 0xf2, 0x27, 0x07, 0x01, 0xfe, 0xce, 0x2e, 0xc1, 0xae, 0x97, 0x25, 0x91, 0x2c, 0xc4, 0xed, 0x9a, 0x97, 0xf5, 0x2b, 0x10, 0xa9, 0x8a, 0xc1, 0x2a, 0xe6, 0xe9, 0x4b, 0xab, 0x91, 0x6c, 0x57, 0x63, 0x81, 0x24, 0x35, 0xf2, 0x5a, 0x74, 0xbe, 0x83, 0xae, 0xa5, 0x08, 0xf5, 0x37, 0xf9, 0xf8, 0xd6, 0x7f, 0xe6, 0x6f, 0x0e, 0x30, 0xed, 0x3f, 0xc9, 0x6c, 0xcb, 0xa7, 0x5d, 0x6f, 0xf4, 0x62, 0x21, 0x81, 0x6d, 0x8f, 0xca, 0x2b, 0x48, 0x4c, }; static const unsigned char ecdh_brainpoolp384r1_4351_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4351_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4351 = { .name = "ecdh_brainpoolp384r1_4351", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4351_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4351_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4351_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2005 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4352 for ECDH, tcId is 2006 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4352_peerpubkey[] = { 0x8c, 0x4c, 0xe7, 0x5c, 0x1f, 0xb2, 0x3e, 0x25, 0x3d, 0x0f, 0xb0, 0xa1, 0xbe, 0x67, 0xdd, 0xe4, 0xb4, 0x5a, 0x4e, 0x67, 0x63, 0xae, 0x07, 0x94, 0xb5, 0xd2, 0x4a, 0x37, 0x20, 0x9b, 0x25, 0xac, 0x2e, 0x95, 0x20, 0x8b, 0xa3, 0x97, 0xbd, 0xb0, 0x1b, 0x45, 0x9a, 0x11, 0xfc, 0x4c, 0xd8, 0x9c, 0x07, 0xf4, 0x3a, 0x66, 0x4e, 0xa0, 0xfc, 0xa1, 0x16, 0xb6, 0x61, 0x24, 0xa4, 0xfa, 0xdc, 0x0b, 0x34, 0x1c, 0xc3, 0xd7, 0xec, 0x2d, 0xa1, 0x4b, 0xd5, 0x58, 0x96, 0x42, 0x01, 0x6f, 0x10, 0x76, 0x76, 0x2a, 0x53, 0x51, 0x45, 0xb6, 0xcd, 0xa3, 0xf8, 0xbb, 0xce, 0x24, 0xc0, 0xed, 0x96, 0x37, }; static const unsigned char ecdh_brainpoolp384r1_4352_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4352_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4352 = { .name = "ecdh_brainpoolp384r1_4352", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4352_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4352_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4352_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2006 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4353 for ECDH, tcId is 2007 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4353_peerpubkey[] = { 0x70, 0xc6, 0xe0, 0xdc, 0xea, 0xf6, 0x3c, 0x5b, 0x92, 0xc4, 0x5b, 0x5f, 0x33, 0xf9, 0xff, 0x04, 0x95, 0x84, 0xb0, 0xb4, 0x1e, 0xc1, 0xc4, 0x76, 0xe5, 0x06, 0x51, 0xd5, 0xec, 0x56, 0x06, 0x94, 0x90, 0xdb, 0x56, 0x1d, 0x97, 0xb1, 0xa2, 0xc2, 0xbe, 0xbc, 0xb7, 0xb4, 0x3c, 0x80, 0x01, 0xeb, 0x52, 0xb9, 0xfe, 0xdd, 0xb9, 0x92, 0xf6, 0x9e, 0x9e, 0x56, 0x6c, 0xca, 0xbb, 0x69, 0x35, 0x2c, 0xea, 0x29, 0x4e, 0x1d, 0x26, 0x83, 0xd7, 0x04, 0x6b, 0x98, 0x58, 0x56, 0x9a, 0xb7, 0x35, 0x76, 0xf2, 0xb4, 0x2f, 0x11, 0xad, 0x19, 0xcb, 0x41, 0xa9, 0x6e, 0xa3, 0xd5, 0x95, 0xfd, 0x01, 0x14, }; static const unsigned char ecdh_brainpoolp384r1_4353_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4353_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4353 = { .name = "ecdh_brainpoolp384r1_4353", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4353_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4353_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4353_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2007 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4354 for ECDH, tcId is 2008 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4354_peerpubkey[] = { 0x71, 0x61, 0x3b, 0x39, 0xcc, 0x9c, 0xad, 0x25, 0xb5, 0xc6, 0x77, 0xdc, 0xf0, 0x71, 0xde, 0x63, 0x08, 0x41, 0x1a, 0x0f, 0x2c, 0x10, 0x66, 0xde, 0x80, 0x3b, 0xfb, 0x68, 0xc5, 0xbf, 0xf5, 0x5c, 0x26, 0xe3, 0x2a, 0xfa, 0xd0, 0xaa, 0xcd, 0xbb, 0xc3, 0x2a, 0xf5, 0xdc, 0x5f, 0xf7, 0x1b, 0x7e, 0x24, 0x68, 0x4b, 0x4f, 0x59, 0xf7, 0xe8, 0x20, 0x53, 0xd5, 0xc2, 0xec, 0xa4, 0x5e, 0x19, 0x63, 0xd5, 0x94, 0xcf, 0xfe, 0x28, 0x29, 0x46, 0x06, 0x59, 0x39, 0x7e, 0x3e, 0x97, 0x8b, 0x30, 0x4d, 0xaf, 0x78, 0x5e, 0x81, 0xf1, 0x56, 0x6b, 0xce, 0x2c, 0xad, 0xc4, 0x9f, 0xde, 0xca, 0xf3, 0x7b, }; static const unsigned char ecdh_brainpoolp384r1_4354_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384r1_4354_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4354 = { .name = "ecdh_brainpoolp384r1_4354", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4354_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4354_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4354_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2008 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4355 for ECDH, tcId is 2009 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4355_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0xe5, 0x43, 0x65, 0x09, 0x16, 0x51, 0xee, 0xbe, 0x3a, 0xa1, 0xe1, 0x3a, 0x14, 0xec, 0x2c, 0x0d, 0xd1, 0xb1, 0xad, 0x37, 0x78, 0xf6, 0x9d, 0x58, 0x6d, 0x07, 0x8d, 0x75, 0x54, 0xc1, 0x16, 0xa7, 0x1e, 0x42, 0x2a, 0xdd, 0x51, 0xce, 0xa4, 0x77, 0xce, 0x15, 0x4c, 0xe8, 0x73, 0x94, 0x0e, }; static const unsigned char ecdh_brainpoolp384r1_4355_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4355_sharedsecret[] = { 0x55, 0xb4, 0xe8, 0x9b, 0x8c, 0xa6, 0xcd, 0x39, 0x91, 0xc3, 0x57, 0x8f, 0x8a, 0x97, 0x04, 0x89, 0xd5, 0xfb, 0x1b, 0xd7, 0xb9, 0x79, 0xcb, 0xfd, 0xad, 0xd1, 0x86, 0x4b, 0x28, 0x1a, 0xfa, 0x73, 0x79, 0x2c, 0x6e, 0x7b, 0xaf, 0x93, 0x80, 0x53, 0xfb, 0xac, 0xee, 0xdd, 0xaa, 0x53, 0x25, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4355 = { .name = "ecdh_brainpoolp384r1_4355", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4355_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4355_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4355_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2009 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4356 for ECDH, tcId is 2010 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4356_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x16, 0xe6, 0x51, 0x9b, 0xec, 0x6c, 0x43, 0x06, 0x08, 0x42, 0x53, 0x6d, 0xad, 0x3a, 0x68, 0x98, 0x8e, 0x84, 0x27, 0x53, 0x0b, 0x0f, 0x98, 0x76, 0x5b, 0x9d, 0x02, 0x85, 0xee, 0xbd, 0xf4, 0x61, 0x27, 0x0a, 0x2c, 0xcb, 0xd4, 0xd0, 0xb3, 0x52, 0xd4, 0x26, 0x3b, 0x97, 0x28, 0x1a, 0x15, 0xfa, }; static const unsigned char ecdh_brainpoolp384r1_4356_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4356_sharedsecret[] = { 0x87, 0xcc, 0x93, 0x42, 0x65, 0x15, 0x1b, 0x4f, 0xec, 0x13, 0x35, 0x79, 0x3e, 0x6a, 0x7d, 0xe9, 0x84, 0x32, 0xd9, 0x14, 0xb7, 0x32, 0x1e, 0x2b, 0xa8, 0x7b, 0xb2, 0x15, 0xe4, 0xb8, 0x58, 0x9e, 0x01, 0xd3, 0xd4, 0x27, 0x07, 0x95, 0x9c, 0x0f, 0x24, 0x34, 0x74, 0xfe, 0x92, 0x30, 0x51, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4356 = { .name = "ecdh_brainpoolp384r1_4356", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4356_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4356_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4356_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2010 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4357 for ECDH, tcId is 2011 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4357_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0b, 0x8c, 0xe8, 0x4c, 0x25, 0x21, 0x9c, 0x7e, 0x4f, 0xf3, 0x7a, 0x37, 0x28, 0xfb, 0xcd, 0xea, 0x68, 0x3c, 0x45, 0xb1, 0x56, 0xf4, 0x15, 0x84, 0x23, 0x31, 0x4f, 0xa8, 0x79, 0xe9, 0xd4, 0x9a, 0x02, 0xe1, 0xec, 0x2e, 0x30, 0x5d, 0x7f, 0x2f, 0x01, 0x16, 0x2d, 0x2c, 0x60, 0xe2, 0xad, 0x06, }; static const unsigned char ecdh_brainpoolp384r1_4357_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4357_sharedsecret[] = { 0x04, 0x3e, 0xda, 0xde, 0x91, 0xd4, 0x03, 0x0b, 0xe3, 0x40, 0x9d, 0x8c, 0x98, 0x9c, 0xf3, 0xaa, 0x79, 0xfb, 0x09, 0xef, 0xeb, 0x16, 0x87, 0x7b, 0x18, 0x55, 0x8d, 0xca, 0xf4, 0x6c, 0x1d, 0x2f, 0x73, 0x69, 0xf8, 0x58, 0x3c, 0xa8, 0x35, 0x00, 0x03, 0xe3, 0x83, 0x65, 0x54, 0xaf, 0x3a, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4357 = { .name = "ecdh_brainpoolp384r1_4357", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4357_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4357_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4357_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2011 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4358 for ECDH, tcId is 2012 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4358_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x3e, 0x52, 0x8e, 0x60, 0x4d, 0xc0, 0x3d, 0x7c, 0x65, 0x8e, 0x1f, 0x5c, 0x41, 0x02, 0xe1, 0xd3, 0x1d, 0xde, 0xff, 0xaf, 0xcc, 0x2f, 0x7d, 0x7a, 0x48, 0x16, 0xce, 0xc4, 0x97, 0xa0, 0x9a, 0x85, 0x1f, 0x40, 0xad, 0x61, 0x66, 0x93, 0x01, 0x30, 0x38, 0xc0, 0x07, 0x69, 0x79, 0x96, 0xde, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_4358_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4358_sharedsecret[] = { 0x79, 0x5e, 0xf5, 0xcc, 0x47, 0xdf, 0xbd, 0x54, 0x4e, 0x16, 0x92, 0x80, 0x9d, 0x7c, 0x85, 0x3d, 0x8a, 0xfa, 0x10, 0x4d, 0x7d, 0x44, 0x38, 0xed, 0xe5, 0x3b, 0xea, 0x15, 0xf6, 0xc6, 0x0d, 0x23, 0x62, 0x1e, 0x0a, 0xe2, 0x48, 0xea, 0x2a, 0x6c, 0x4e, 0x3a, 0x91, 0x9e, 0x45, 0x5c, 0x00, 0xa4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4358 = { .name = "ecdh_brainpoolp384r1_4358", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4358_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4358_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4358_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2012 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4359 for ECDH, tcId is 2013 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4359_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x20, 0x06, 0x80, 0xb0, 0x02, 0xd9, 0xad, 0xf1, 0xe0, 0x53, 0xdb, 0xf0, 0x4a, 0xdd, 0xdd, 0xf8, 0xc5, 0x8d, 0xe9, 0x20, 0x54, 0x3e, 0x06, 0x14, 0xc9, 0x76, 0x44, 0x6d, 0xb3, 0x42, 0x69, 0xd5, 0xe2, 0x18, 0xc1, 0x21, 0x70, 0x4a, 0x0a, 0xcf, 0x35, 0xd7, 0x76, 0xd0, 0xa1, 0x4e, 0x29, 0x4d, }; static const unsigned char ecdh_brainpoolp384r1_4359_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4359_sharedsecret[] = { 0x60, 0x6d, 0xc0, 0x6d, 0xcd, 0x00, 0x83, 0x0b, 0xd4, 0x28, 0x04, 0xdc, 0x43, 0xcb, 0x94, 0xee, 0x78, 0xc1, 0xa5, 0xa3, 0x59, 0x96, 0xca, 0x4b, 0x49, 0xfb, 0x72, 0x54, 0x33, 0xbd, 0x07, 0x2e, 0x4b, 0x04, 0xe1, 0xc0, 0x52, 0xd7, 0x34, 0x05, 0x42, 0xcd, 0x08, 0xf1, 0xdb, 0xd7, 0x9f, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4359 = { .name = "ecdh_brainpoolp384r1_4359", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4359_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4359_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4359_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2013 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4360 for ECDH, tcId is 2014 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4360_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, 0x04, 0xf1, 0x79, 0x9a, 0xad, 0xa7, 0xab, 0xdd, 0xe3, 0x28, 0x0f, 0x96, 0x38, 0xbe, 0xcb, 0x24, 0x0b, 0xe6, 0x01, 0x23, 0xc9, 0x1a, 0xd1, 0x4c, 0xf1, 0xf7, 0xd7, 0x7e, 0x83, 0x33, 0x05, 0x19, 0xa6, 0x8a, 0x9d, 0xd6, 0x1a, 0x8d, 0x63, 0x9e, 0x12, 0xa4, 0x1a, 0xb9, 0x30, 0xbc, 0x27, 0x8b, }; static const unsigned char ecdh_brainpoolp384r1_4360_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4360_sharedsecret[] = { 0x82, 0xa6, 0xb7, 0xb9, 0x74, 0x0a, 0x9e, 0x61, 0xa5, 0xf5, 0xd9, 0x77, 0xdf, 0xcc, 0x65, 0x50, 0x47, 0xeb, 0x41, 0x5c, 0xbb, 0x98, 0x93, 0x5f, 0xc2, 0x40, 0x86, 0xb6, 0x3f, 0xbc, 0x98, 0x0b, 0x75, 0x0e, 0xae, 0xcb, 0x52, 0x32, 0xee, 0x97, 0xf7, 0x70, 0xd1, 0xed, 0xe5, 0x1e, 0xd8, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4360 = { .name = "ecdh_brainpoolp384r1_4360", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4360_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4360_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4360_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2014 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4361 for ECDH, tcId is 2015 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4361_peerpubkey[] = { 0x17, 0xcf, 0xae, 0x6c, 0x38, 0x51, 0xf2, 0xc5, 0xca, 0x6b, 0xad, 0xbb, 0xe2, 0xcf, 0x88, 0x56, 0x62, 0xd6, 0xf7, 0xf0, 0x9e, 0x74, 0x37, 0x4f, 0x1c, 0x7c, 0x22, 0x45, 0x04, 0x5c, 0x02, 0x44, 0x3e, 0xeb, 0x57, 0xd8, 0xb4, 0x3b, 0x46, 0x3d, 0xab, 0xcc, 0x02, 0x21, 0xbc, 0x82, 0xab, 0xaa, 0x20, 0x6c, 0xe3, 0x2b, 0xa9, 0xa9, 0xc8, 0x3e, 0xc7, 0x9f, 0x07, 0xa8, 0xe6, 0x1a, 0x7a, 0x29, 0x54, 0x86, 0xcb, 0x79, 0xc4, 0x79, 0x42, 0xef, 0xd3, 0x23, 0xcd, 0x9d, 0xbe, 0x14, 0x02, 0x85, 0xbd, 0x0b, 0x06, 0x4f, 0xcd, 0xe0, 0xdc, 0x6e, 0x32, 0x03, 0x60, 0x43, 0xe4, 0x00, 0xcd, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_4361_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4361_sharedsecret[] = { 0x40, 0xd2, 0xf6, 0x75, 0xaf, 0x9b, 0x7b, 0xcd, 0x5b, 0x8a, 0x76, 0x83, 0xf6, 0x00, 0xe0, 0x98, 0xb5, 0xdf, 0xc2, 0x68, 0x1c, 0x0c, 0xe8, 0x1a, 0x8c, 0x8d, 0x9a, 0xb0, 0xa1, 0x5a, 0xf1, 0x57, 0xc4, 0xeb, 0xf3, 0xd0, 0x4f, 0x52, 0xfa, 0x22, 0x42, 0xf0, 0x5e, 0xb5, 0xcd, 0xb1, 0x88, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4361 = { .name = "ecdh_brainpoolp384r1_4361", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4361_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4361_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4361_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2015 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4362 for ECDH, tcId is 2016 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4362_peerpubkey[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, 0x1f, 0x4e, 0xa0, 0x2c, 0x39, 0xfc, 0xbb, 0xbb, 0xfe, 0xd4, 0xb8, 0x80, 0x95, 0xf4, 0xdc, 0x0b, 0xe2, 0x1f, 0x36, 0x0f, 0x5b, 0xbb, 0x6e, 0xeb, 0xbe, 0x31, 0x8c, 0x56, 0x67, 0xa2, 0xca, 0xe0, 0xdb, 0x94, 0xa4, 0x54, 0xdb, 0x55, 0x57, 0x85, 0x51, 0x61, 0x6a, 0x2b, 0xde, 0xc4, 0x61, 0xd7, }; static const unsigned char ecdh_brainpoolp384r1_4362_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4362_sharedsecret[] = { 0x85, 0x8b, 0x9c, 0x88, 0xc4, 0xce, 0xb5, 0x7e, 0xa7, 0x19, 0x5c, 0xa4, 0xfe, 0xf5, 0x91, 0x1d, 0xe0, 0xb1, 0x8c, 0x3b, 0xd6, 0xa4, 0x6c, 0x23, 0x07, 0x7c, 0x4d, 0xcb, 0x70, 0xc0, 0x85, 0x34, 0xf5, 0x0d, 0x44, 0xdf, 0xc1, 0xa2, 0xd2, 0xb8, 0x05, 0x20, 0x5e, 0x9d, 0x03, 0x38, 0x2a, 0xb4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4362 = { .name = "ecdh_brainpoolp384r1_4362", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4362_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4362_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4362_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2016 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4363 for ECDH, tcId is 2017 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4363_peerpubkey[] = { 0x2d, 0x06, 0xd2, 0x05, 0xcb, 0xa6, 0xe2, 0x0e, 0x97, 0x61, 0x6b, 0x25, 0x73, 0x0e, 0xfc, 0x50, 0x43, 0x3f, 0xb2, 0x46, 0xda, 0x15, 0x64, 0x25, 0x08, 0xf0, 0x8d, 0xd4, 0xdc, 0x34, 0x8e, 0x83, 0x79, 0x37, 0x15, 0x88, 0xac, 0x25, 0xfa, 0x39, 0x69, 0x69, 0x68, 0xbf, 0xff, 0x4c, 0x76, 0xf6, 0x07, 0xeb, 0x10, 0x7e, 0x35, 0xde, 0x14, 0x3e, 0x39, 0x25, 0x1c, 0x7f, 0xa5, 0x93, 0x85, 0x39, 0x52, 0xc5, 0x5a, 0xc7, 0x6c, 0x48, 0x89, 0x9d, 0xe9, 0xa6, 0xe0, 0x3d, 0x98, 0x4b, 0x24, 0x61, 0x7f, 0xa8, 0x9d, 0xa4, 0xb6, 0x0b, 0x8e, 0x8c, 0x70, 0xad, 0x2a, 0xd5, 0x0e, 0xa1, 0xd0, 0x63, }; static const unsigned char ecdh_brainpoolp384r1_4363_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4363_sharedsecret[] = { 0x78, 0x17, 0xe8, 0x22, 0x30, 0x1b, 0xa6, 0x8e, 0x0c, 0xe6, 0x44, 0xac, 0xd4, 0x5a, 0xba, 0x1b, 0x16, 0x8d, 0xdd, 0x59, 0x95, 0xb9, 0x7e, 0xb1, 0x1f, 0xd1, 0xa2, 0x23, 0x99, 0xbb, 0x8b, 0x84, 0xda, 0xf3, 0x02, 0xf3, 0x3e, 0xcf, 0xb8, 0x70, 0x28, 0xdd, 0x80, 0x11, 0xee, 0xcb, 0xf9, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4363 = { .name = "ecdh_brainpoolp384r1_4363", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4363_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4363_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4363_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2017 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4364 for ECDH, tcId is 2018 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4364_peerpubkey[] = { 0x33, 0xa2, 0x8d, 0xf9, 0x28, 0x42, 0xcc, 0x0a, 0x0d, 0x43, 0xe5, 0xd3, 0x3e, 0x2d, 0x35, 0x1e, 0x64, 0x12, 0x58, 0xd5, 0x05, 0xcb, 0xca, 0x1a, 0x68, 0x6a, 0x2f, 0x8c, 0x51, 0x3d, 0x7f, 0x94, 0x5e, 0x78, 0x18, 0x7e, 0xae, 0x18, 0x8e, 0x65, 0x96, 0x32, 0x70, 0xa0, 0x75, 0x05, 0x6e, 0x35, 0x44, 0xe7, 0xe6, 0x0c, 0xc0, 0x4b, 0xcd, 0x88, 0x54, 0xcd, 0x27, 0x56, 0x5e, 0xeb, 0xe1, 0xc3, 0x66, 0x08, 0x15, 0x51, 0x80, 0x0a, 0x3f, 0xee, 0x83, 0x1d, 0x14, 0x93, 0xd4, 0xba, 0xe3, 0x3e, 0x1c, 0x22, 0xdc, 0xbb, 0x9d, 0xc6, 0x96, 0x60, 0x3d, 0xed, 0x84, 0xa4, 0x31, 0x8b, 0xea, 0x0a, }; static const unsigned char ecdh_brainpoolp384r1_4364_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4364_sharedsecret[] = { 0x64, 0x70, 0x54, 0x03, 0xb5, 0x40, 0x48, 0x83, 0x88, 0x9c, 0xda, 0xfa, 0x36, 0x6e, 0xb7, 0x37, 0x97, 0xae, 0x97, 0xba, 0xd2, 0x83, 0xd2, 0xbd, 0xdc, 0xd9, 0xbb, 0x26, 0x07, 0xee, 0xfe, 0xe3, 0x92, 0xcb, 0x9d, 0x04, 0xb4, 0xe9, 0x97, 0x01, 0xfd, 0xbb, 0x0d, 0x27, 0xc1, 0x45, 0x7a, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4364 = { .name = "ecdh_brainpoolp384r1_4364", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4364_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4364_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4364_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2018 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4365 for ECDH, tcId is 2019 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4365_peerpubkey[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, 0x00, 0xd0, 0x23, 0x5d, 0xf6, 0xf4, 0x6e, 0x9f, 0xda, 0x7c, 0x16, 0x2c, 0xdb, 0x7e, 0xd5, 0x20, 0x22, 0x45, 0x46, 0xe6, 0x14, 0x69, 0xc0, 0x11, 0xb6, 0xe8, 0xcf, 0xd7, 0x0e, 0x17, 0x9e, 0x85, 0xdd, 0x90, 0x44, 0x96, 0x64, 0xcd, 0x8e, 0x79, 0xbd, 0x9f, 0xcf, 0xf6, 0x1b, 0xbe, 0x9b, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4365_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4365_sharedsecret[] = { 0x4e, 0x5c, 0x21, 0x9e, 0x6f, 0x94, 0xa5, 0x24, 0x17, 0x54, 0x15, 0xe6, 0xaa, 0x60, 0xd1, 0x75, 0x78, 0x71, 0xd7, 0xb6, 0xcc, 0x6b, 0x2c, 0x50, 0x1e, 0x05, 0x30, 0x54, 0xf3, 0x81, 0xb9, 0x2d, 0xc4, 0xf5, 0xac, 0x0a, 0xda, 0xf6, 0x3e, 0x8f, 0x67, 0x39, 0x81, 0x4e, 0x43, 0x02, 0xe8, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4365 = { .name = "ecdh_brainpoolp384r1_4365", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4365_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4365_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4365_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2019 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4366 for ECDH, tcId is 2020 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4366_peerpubkey[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x2b, 0x8c, 0x71, 0x0e, 0x16, 0x0b, 0x3f, 0xda, 0xcf, 0xfc, 0xa4, 0x6b, 0xc2, 0x2b, 0x0b, 0x7b, 0x58, 0x34, 0x9a, 0xb2, 0xa4, 0x18, 0x39, 0x31, 0xfd, 0xf9, 0xe0, 0x50, 0x46, 0x85, 0xdb, 0x3c, 0x40, 0xaa, 0x85, 0x36, 0x07, 0xfb, 0xac, 0x52, 0xb3, 0x56, 0x3e, 0x7c, 0x74, 0x51, 0x6d, 0x61, }; static const unsigned char ecdh_brainpoolp384r1_4366_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4366_sharedsecret[] = { 0x71, 0x4b, 0x4e, 0xfb, 0xc1, 0x2f, 0xe0, 0x46, 0x0f, 0xd2, 0x96, 0xc9, 0x86, 0x8f, 0xea, 0xc5, 0x01, 0xd0, 0x0b, 0x05, 0x36, 0xaa, 0x92, 0x69, 0x80, 0x62, 0x08, 0xba, 0x7f, 0xbd, 0x4f, 0x73, 0xed, 0x0a, 0x26, 0xc8, 0x9a, 0x08, 0x54, 0xe6, 0x70, 0xe0, 0x1d, 0xb8, 0x08, 0x8c, 0x3f, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4366 = { .name = "ecdh_brainpoolp384r1_4366", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4366_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4366_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4366_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2020 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4367 for ECDH, tcId is 2021 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4367_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x3e, 0x39, 0x43, 0xf5, 0xe9, 0x2e, 0x4b, 0xff, 0x7f, 0x85, 0xac, 0x91, 0x5b, 0xdc, 0xc0, 0x86, 0x5c, 0x97, 0xd0, 0xcc, 0xe2, 0x6f, 0x05, 0x4d, 0xf1, 0xb2, 0x9c, 0x28, 0x3a, 0x8f, 0x8e, 0x43, 0xd9, 0x64, 0xb5, 0x28, 0xdb, 0xcd, 0x88, 0x76, 0x8b, 0x34, 0x29, 0x95, 0xff, 0x51, 0x7f, 0x07, }; static const unsigned char ecdh_brainpoolp384r1_4367_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4367_sharedsecret[] = { 0x43, 0xda, 0x55, 0x6c, 0x9e, 0x9e, 0x29, 0x94, 0x02, 0x53, 0x31, 0x0d, 0x94, 0xca, 0x57, 0x07, 0xca, 0x84, 0xa0, 0x4e, 0x2c, 0xab, 0x89, 0x0c, 0xa4, 0x9f, 0x39, 0x17, 0x47, 0xc5, 0xbe, 0x28, 0x3f, 0x0f, 0x45, 0x93, 0x24, 0x7b, 0xce, 0x6f, 0x00, 0x27, 0xc2, 0xe2, 0xdf, 0xda, 0x8d, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4367 = { .name = "ecdh_brainpoolp384r1_4367", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4367_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4367_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4367_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2021 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4368 for ECDH, tcId is 2022 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4368_peerpubkey[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x42, 0x14, 0xf5, 0x3b, 0x46, 0x99, 0x61, 0x83, 0x01, 0x60, 0x65, 0xc6, 0x15, 0x03, 0x7a, 0x34, 0xf8, 0xbd, 0x34, 0x68, 0x48, 0xd1, 0x3c, 0x87, 0x0e, 0x6f, 0x74, 0xa2, 0x6e, 0x3c, 0xee, 0x63, 0x1d, 0x4d, 0x68, 0x92, 0x44, 0xa6, 0x15, 0x98, 0x3f, 0x6f, 0x8b, 0x9a, 0x48, 0x80, 0xf5, 0x08, }; static const unsigned char ecdh_brainpoolp384r1_4368_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4368_sharedsecret[] = { 0x30, 0x22, 0x9a, 0x31, 0x4a, 0xa8, 0xed, 0x9c, 0xeb, 0x2a, 0x9c, 0x35, 0x77, 0x55, 0x8f, 0x6a, 0x9b, 0xd8, 0x57, 0x74, 0x7c, 0xb6, 0x0a, 0x59, 0x81, 0x5d, 0x20, 0x55, 0xbe, 0xde, 0x53, 0xa5, 0x70, 0xb4, 0x61, 0x86, 0x12, 0x29, 0xd8, 0x32, 0xcf, 0x08, 0x64, 0x2e, 0x90, 0x78, 0xd6, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4368 = { .name = "ecdh_brainpoolp384r1_4368", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4368_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4368_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4368_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2022 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4369 for ECDH, tcId is 2023 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4369_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x3c, 0x12, 0x34, 0xbe, 0x10, 0x22, 0xb8, 0x9c, 0x3a, 0x64, 0xf0, 0x41, 0x02, 0x65, 0x8f, 0xb8, 0xc3, 0x19, 0xb6, 0x93, 0x2e, 0xdb, 0xce, 0x6b, 0x78, 0xb0, 0x5f, 0x86, 0x84, 0x1e, 0xde, 0x7e, 0xec, 0xcc, 0x2d, 0x09, 0x1e, 0xd8, 0x67, 0xc2, 0x52, 0xf5, 0x9a, 0x77, 0x3c, 0x27, 0x1e, 0x8f, }; static const unsigned char ecdh_brainpoolp384r1_4369_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4369_sharedsecret[] = { 0x2c, 0xce, 0xf9, 0xba, 0x30, 0xb1, 0x6e, 0x50, 0x66, 0x3b, 0xb4, 0xe4, 0x00, 0x6d, 0xe0, 0x4d, 0x5d, 0x68, 0x7e, 0xb6, 0xf4, 0x2d, 0x3d, 0xd8, 0x21, 0xc8, 0xfc, 0xb2, 0xf5, 0x7d, 0x67, 0xcf, 0x86, 0x4c, 0x34, 0x5f, 0xdf, 0x2d, 0xe1, 0xfd, 0xc5, 0x5f, 0xa4, 0x86, 0xa1, 0x66, 0x29, 0xf5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4369 = { .name = "ecdh_brainpoolp384r1_4369", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4369_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4369_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4369_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2023 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4370 for ECDH, tcId is 2024 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4370_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x05, 0x87, 0xff, 0x6f, 0x77, 0xb0, 0xab, 0xaf, 0x25, 0x3e, 0xe3, 0x63, 0x58, 0x1e, 0x52, 0xb9, 0xaa, 0x55, 0xb5, 0x0a, 0x59, 0xe2, 0x23, 0x84, 0x14, 0x82, 0x7e, 0x05, 0xc8, 0x38, 0x61, 0xfd, 0x12, 0x35, 0x6b, 0xe4, 0x54, 0x7b, 0x23, 0x44, 0x39, 0x12, 0xac, 0xf0, 0x7a, 0x02, 0xed, 0xc4, }; static const unsigned char ecdh_brainpoolp384r1_4370_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4370_sharedsecret[] = { 0x70, 0x38, 0x24, 0x33, 0xca, 0x76, 0x83, 0x74, 0x1b, 0xa8, 0x36, 0xdf, 0xb5, 0x98, 0x3d, 0x3c, 0x80, 0x76, 0x0b, 0xb7, 0xa9, 0x85, 0x49, 0x9d, 0x27, 0xac, 0x7c, 0x71, 0x5f, 0x8b, 0x76, 0x18, 0x87, 0x7f, 0x65, 0x1f, 0x8f, 0xf8, 0xd1, 0xbd, 0x7c, 0x1b, 0x12, 0x06, 0xf9, 0x37, 0x54, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4370 = { .name = "ecdh_brainpoolp384r1_4370", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4370_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4370_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4370_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2024 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4371 for ECDH, tcId is 2025 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4371_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x21, 0x51, 0x0c, 0xae, 0x0c, 0x66, 0x04, 0x90, 0x01, 0x4d, 0xd6, 0x08, 0x33, 0x7b, 0x3f, 0x3a, 0xfc, 0xd9, 0x7a, 0xaa, 0x7d, 0x79, 0x2e, 0x18, 0x63, 0x75, 0xf1, 0x2a, 0x7a, 0x1f, 0xca, 0x38, 0x12, 0x6e, 0xc4, 0x20, 0x03, 0x4b, 0xd1, 0x2d, 0xa0, 0xcd, 0x05, 0x1d, 0x22, 0x55, 0xf9, 0x22, }; static const unsigned char ecdh_brainpoolp384r1_4371_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4371_sharedsecret[] = { 0x5b, 0xc2, 0x6e, 0xbe, 0x1f, 0xdb, 0xa6, 0x61, 0xbd, 0x31, 0x25, 0xe2, 0xc6, 0x81, 0xf5, 0x91, 0xdb, 0x5b, 0xfc, 0x63, 0xca, 0x27, 0xe6, 0xad, 0x49, 0xdd, 0x4f, 0x42, 0xe4, 0x95, 0x61, 0x94, 0x90, 0x46, 0x39, 0x5c, 0x7b, 0x0f, 0xcb, 0x3e, 0x97, 0x56, 0x89, 0xcc, 0x60, 0x2d, 0xfb, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4371 = { .name = "ecdh_brainpoolp384r1_4371", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4371_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4371_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4371_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2025 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4372 for ECDH, tcId is 2026 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4372_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x21, 0x34, 0x01, 0x8a, 0x6f, 0x7b, 0xb0, 0x75, 0xef, 0x67, 0x61, 0x7a, 0xba, 0xfd, 0x66, 0xa2, 0x2e, 0xd8, 0xb5, 0x14, 0x64, 0x08, 0xaa, 0x52, 0xfc, 0x17, 0xcf, 0x52, 0x51, 0x0b, 0x85, 0xf0, 0x8b, 0x73, 0xac, 0xd0, 0xb4, 0x30, 0x1e, 0x99, 0x67, 0xb3, 0xcc, 0x20, 0xb9, 0x14, 0xf8, 0x05, }; static const unsigned char ecdh_brainpoolp384r1_4372_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384r1_4372_sharedsecret[] = { 0x17, 0x0a, 0x1a, 0x6e, 0x30, 0x92, 0xff, 0x87, 0x47, 0xb2, 0x9d, 0x72, 0x4b, 0xf7, 0x94, 0xa8, 0x39, 0xf2, 0xc0, 0x6f, 0x3a, 0x71, 0xc3, 0x23, 0x32, 0x3f, 0x10, 0xcc, 0x48, 0xfa, 0xdc, 0x55, 0x62, 0x10, 0x11, 0x71, 0xf4, 0xf7, 0xa9, 0xe4, 0x16, 0x38, 0x01, 0x3c, 0x07, 0xa4, 0xfc, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4372 = { .name = "ecdh_brainpoolp384r1_4372", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4372_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4372_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4372_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2026 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4373 for ECDH, tcId is 2027 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4373_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x44, 0xe5, 0x43, 0x65, 0x09, 0x16, 0x51, 0xee, 0xbe, 0x3a, 0xa1, 0xe1, 0x3a, 0x14, 0xec, 0x2c, 0x0d, 0xd1, 0xb1, 0xad, 0x37, 0x78, 0xf6, 0x9d, 0x58, 0x6d, 0x07, 0x8d, 0x75, 0x54, 0xc1, 0x16, 0xa7, 0x1e, 0x42, 0x2a, 0xdd, 0x51, 0xce, 0xa4, 0x77, 0xce, 0x15, 0x4c, 0xe8, 0x73, 0x94, 0x0e, }; static const unsigned char ecdh_brainpoolp384r1_4373_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4373_sharedsecret[] = { 0x71, 0x3d, 0x5e, 0xe3, 0x9b, 0x34, 0xed, 0x19, 0x41, 0x78, 0x83, 0x7d, 0x7f, 0xea, 0xdd, 0xdd, 0x77, 0x43, 0x6a, 0x8c, 0xa8, 0x26, 0xb6, 0x62, 0xd8, 0xa2, 0x16, 0xf7, 0xd1, 0x3a, 0x4a, 0x3f, 0xfd, 0x2c, 0xc1, 0x5c, 0x31, 0x89, 0x44, 0xcd, 0x16, 0x0f, 0x93, 0xc1, 0x18, 0xd4, 0xca, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4373 = { .name = "ecdh_brainpoolp384r1_4373", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4373_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4373_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4373_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1, tcId is 2027 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4374 for ECDH, tcId is 2028 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4374_peerpubkey[] = { 0x0a, 0xe1, 0x03, 0xa3, 0x5e, 0x58, 0xc7, 0x3f, 0x01, 0x2d, 0x45, 0x53, 0x6b, 0x1c, 0xe2, 0x14, 0x04, 0xbe, 0xcc, 0x3b, 0xff, 0xc5, 0x2f, 0x2c, 0xe4, 0x89, 0xaa, 0x11, 0xbb, 0x23, 0x46, 0xfe, 0xd3, 0x9a, 0x8d, 0x07, 0x7f, 0xdb, 0xb8, 0x71, 0xa8, 0xa0, 0x8c, 0xc5, 0x9f, 0x68, 0x4e, 0x47, 0x3e, 0x95, 0x32, 0x50, 0x99, 0x0f, 0x79, 0xc1, 0x62, 0x17, 0x7b, 0xbd, 0x6a, 0xe8, 0xc5, 0x09, 0xdf, 0x91, 0x53, 0xa7, 0x64, 0x62, 0x32, 0x27, 0x81, 0x4d, 0xa4, 0x49, 0x18, 0x1b, 0xc2, 0xa2, 0xfa, 0x4b, 0x5a, 0x76, 0x9e, 0x5d, 0xbb, 0xb0, 0x82, 0xec, 0x15, 0x23, 0x7f, 0xd8, 0x76, 0xee, }; static const unsigned char ecdh_brainpoolp384r1_4374_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4374_sharedsecret[] = { 0x3c, 0xe1, 0x8b, 0xf6, 0x8d, 0x20, 0x3f, 0xd1, 0xc6, 0x68, 0x66, 0xb9, 0x33, 0xf2, 0x98, 0x39, 0x0f, 0xb0, 0x6d, 0xae, 0x11, 0x8b, 0x3f, 0x8d, 0x28, 0x4d, 0x56, 0xe1, 0xef, 0xa4, 0x8a, 0x1e, 0xc4, 0x35, 0x1d, 0xa1, 0x94, 0xdd, 0x34, 0x5f, 0xa5, 0xfc, 0xe5, 0x58, 0x30, 0x0d, 0x23, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4374 = { .name = "ecdh_brainpoolp384r1_4374", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4374_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4374_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4374_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1, tcId is 2028 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4375 for ECDH, tcId is 2029 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4375_peerpubkey[] = { 0x0d, 0xe1, 0xfa, 0x4b, 0xf6, 0x69, 0xea, 0x9f, 0xa8, 0x73, 0x5e, 0xff, 0x9a, 0xac, 0xd2, 0xdd, 0x4e, 0x26, 0x28, 0x80, 0xc2, 0x64, 0x51, 0x91, 0x48, 0xdc, 0x2a, 0x70, 0x88, 0x6c, 0xae, 0x72, 0x00, 0xe1, 0x18, 0xbf, 0x0b, 0x7a, 0x81, 0x59, 0xba, 0x3a, 0xa9, 0xef, 0xe9, 0x41, 0x03, 0x01, 0x3e, 0x27, 0x78, 0x75, 0x41, 0x2d, 0x3d, 0x06, 0x42, 0x0f, 0xc0, 0x71, 0xb4, 0x83, 0x3a, 0x45, 0xae, 0x3c, 0x33, 0x33, 0xa0, 0x3c, 0x86, 0x88, 0xcb, 0x4c, 0xf4, 0xdc, 0x14, 0xcd, 0xfe, 0x29, 0x9d, 0xc6, 0xcc, 0x4f, 0xad, 0xf1, 0x34, 0xe5, 0x63, 0xe8, 0x4c, 0x22, 0xa4, 0x90, 0x49, 0x93, }; static const unsigned char ecdh_brainpoolp384r1_4375_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4375_sharedsecret[] = { 0x39, 0xe3, 0xe4, 0xb8, 0xd1, 0xe3, 0x38, 0x17, 0xd5, 0x54, 0xed, 0x19, 0x5b, 0xe9, 0x64, 0xf8, 0x90, 0x9a, 0x16, 0x37, 0x2e, 0xe3, 0x9d, 0x7c, 0x54, 0x5e, 0x8c, 0xd2, 0xed, 0x65, 0xcb, 0x14, 0x54, 0x8a, 0x17, 0x9a, 0x53, 0xc1, 0x0d, 0x17, 0x3f, 0xf2, 0x93, 0x4d, 0x8f, 0x76, 0x60, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4375 = { .name = "ecdh_brainpoolp384r1_4375", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4375_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4375_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4375_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2029 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4376 for ECDH, tcId is 2030 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4376_peerpubkey[] = { 0x38, 0x09, 0x36, 0x08, 0x77, 0xde, 0xe7, 0x42, 0xa1, 0x69, 0x9c, 0xda, 0x91, 0x0d, 0xab, 0x1b, 0x82, 0x82, 0xc9, 0x5a, 0x75, 0x98, 0x9f, 0xc8, 0xd3, 0xcb, 0x47, 0xc9, 0x67, 0x76, 0x19, 0x20, 0xb3, 0x20, 0x18, 0x16, 0xe0, 0xfd, 0x5c, 0xa0, 0x1f, 0xba, 0xc3, 0xc7, 0x40, 0x8e, 0x58, 0x33, 0x3d, 0xc8, 0x8f, 0xda, 0xe7, 0x89, 0x9a, 0xff, 0xcd, 0x63, 0xa1, 0xa0, 0x15, 0x62, 0xfb, 0xe2, 0x34, 0x1e, 0x94, 0x80, 0xb5, 0xae, 0x92, 0xc6, 0x03, 0x10, 0xac, 0x49, 0xa4, 0xdc, 0xf3, 0x67, 0xf4, 0x83, 0xb2, 0x3a, 0x67, 0xca, 0xba, 0xac, 0xbe, 0xa3, 0xab, 0x0e, 0x87, 0x94, 0xde, 0xab, }; static const unsigned char ecdh_brainpoolp384r1_4376_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4376_sharedsecret[] = { 0x22, 0xd3, 0x84, 0x0b, 0x4c, 0xad, 0x42, 0x62, 0x2f, 0x65, 0x12, 0x00, 0xe0, 0x88, 0x3c, 0x86, 0xcf, 0xe7, 0x99, 0xdc, 0x9f, 0xe0, 0xe7, 0x94, 0x37, 0xed, 0x47, 0xb0, 0x82, 0x91, 0x05, 0xc0, 0x64, 0x09, 0x90, 0x9c, 0xab, 0xcc, 0x1c, 0x4b, 0xba, 0xf4, 0x70, 0x80, 0x77, 0xcc, 0x30, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4376 = { .name = "ecdh_brainpoolp384r1_4376", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4376_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4376_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4376_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2030 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4377 for ECDH, tcId is 2031 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4377_peerpubkey[] = { 0x58, 0x58, 0x38, 0xfb, 0x9d, 0x9c, 0x68, 0xe9, 0x54, 0xff, 0xf3, 0x31, 0xce, 0x1c, 0x00, 0x13, 0xe1, 0x30, 0xd4, 0x67, 0x65, 0xe3, 0xec, 0x1d, 0x19, 0x0a, 0xca, 0xa4, 0x7f, 0xfb, 0x49, 0x98, 0x11, 0xe8, 0xda, 0x06, 0x30, 0xf0, 0xa9, 0xf8, 0xb4, 0x92, 0xff, 0xa0, 0xd1, 0x94, 0x15, 0x1d, 0x20, 0xfd, 0x86, 0xd8, 0xd6, 0x0d, 0x60, 0xb2, 0xaf, 0x2a, 0xd1, 0x14, 0xe3, 0x0c, 0xa6, 0xcf, 0x3f, 0x8d, 0xb4, 0x42, 0x29, 0xb3, 0x17, 0x09, 0xd9, 0xde, 0x21, 0x9c, 0xc2, 0x62, 0x83, 0xbf, 0x6d, 0x76, 0xb6, 0xea, 0x96, 0x5b, 0x8d, 0x42, 0x45, 0x00, 0x04, 0x11, 0x0a, 0xa8, 0xbf, 0x8c, }; static const unsigned char ecdh_brainpoolp384r1_4377_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4377_sharedsecret[] = { 0x24, 0x5b, 0x4c, 0x40, 0xd4, 0xb7, 0x32, 0x72, 0xec, 0x66, 0xa3, 0xaf, 0x79, 0x68, 0x6f, 0xb1, 0x48, 0x0d, 0xb5, 0x5b, 0xb7, 0x46, 0xd4, 0x25, 0x60, 0xf3, 0xab, 0x2c, 0x11, 0xf1, 0xf8, 0x5a, 0x9a, 0x16, 0xb0, 0x50, 0x6b, 0xb5, 0x77, 0xaf, 0x69, 0x46, 0xec, 0x8b, 0x58, 0xeb, 0xc0, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4377 = { .name = "ecdh_brainpoolp384r1_4377", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4377_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4377_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4377_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2031 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4378 for ECDH, tcId is 2032 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4378_peerpubkey[] = { 0x26, 0x28, 0x12, 0xf0, 0x92, 0xfe, 0x67, 0xad, 0x00, 0xe1, 0x0e, 0xb9, 0xf8, 0x84, 0x91, 0x7f, 0x26, 0xd4, 0x6c, 0xe5, 0xc5, 0x29, 0x86, 0xec, 0xf8, 0xc0, 0x70, 0xb5, 0x42, 0x1e, 0x16, 0xaa, 0x69, 0x82, 0x5e, 0xaa, 0x99, 0x0f, 0x0a, 0xe7, 0x0a, 0x94, 0xcc, 0xff, 0xb1, 0x00, 0xa2, 0x97, 0x4d, 0x4a, 0xd6, 0xa0, 0x03, 0xa0, 0xa0, 0xc6, 0x69, 0xdf, 0x2a, 0x8d, 0x25, 0x78, 0x33, 0xa5, 0x1b, 0x54, 0x18, 0x23, 0xc7, 0xe8, 0xc0, 0x3c, 0x01, 0xf3, 0xc5, 0xc3, 0xbf, 0x11, 0xcb, 0x95, 0x33, 0xb7, 0xc1, 0xb2, 0x5f, 0x7d, 0x7f, 0xda, 0x54, 0x71, 0xd6, 0x2d, 0xfd, 0x89, 0x71, 0xd9, }; static const unsigned char ecdh_brainpoolp384r1_4378_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4378_sharedsecret[] = { 0x67, 0x85, 0x59, 0xf0, 0x24, 0xdd, 0xba, 0xf6, 0x46, 0xfd, 0x4c, 0x83, 0x8c, 0x9e, 0x5c, 0x8e, 0x7b, 0xf9, 0x91, 0x0b, 0xe6, 0x52, 0x26, 0xfb, 0xc8, 0x2b, 0xa8, 0x1d, 0x0a, 0x1d, 0x34, 0xf9, 0xce, 0x78, 0x21, 0xcc, 0x49, 0x7f, 0xf0, 0x3a, 0xd0, 0x2c, 0xe4, 0xbf, 0x1c, 0x3a, 0x86, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4378 = { .name = "ecdh_brainpoolp384r1_4378", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4378_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4378_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4378_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2032 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4379 for ECDH, tcId is 2033 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4379_peerpubkey[] = { 0x25, 0x86, 0x19, 0x65, 0xc5, 0x57, 0x07, 0xc1, 0x48, 0xfa, 0x18, 0x80, 0xa4, 0x24, 0x63, 0xfd, 0x5f, 0xe3, 0x37, 0xf7, 0xc9, 0x04, 0xb2, 0x85, 0x54, 0xce, 0xa7, 0xdc, 0xb2, 0xd4, 0x23, 0x5a, 0x86, 0x86, 0xac, 0x36, 0x2d, 0xcd, 0x0d, 0x73, 0x1a, 0xd7, 0x4f, 0x50, 0x6b, 0xe8, 0x8b, 0x45, 0x24, 0xb4, 0x9d, 0xfc, 0x1f, 0x57, 0x1e, 0x5a, 0x61, 0xe9, 0x5e, 0x03, 0x04, 0x5f, 0x3a, 0xce, 0x23, 0x37, 0x64, 0xa9, 0xbc, 0x99, 0xf7, 0xfc, 0xa6, 0x3b, 0x1a, 0x70, 0x10, 0xf9, 0xd2, 0x85, 0x53, 0x28, 0x29, 0x0c, 0xf6, 0x74, 0xf2, 0x43, 0x42, 0xff, 0xf3, 0xb6, 0x5a, 0xe1, 0x37, 0x27, }; static const unsigned char ecdh_brainpoolp384r1_4379_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4379_sharedsecret[] = { 0x5f, 0xf2, 0x22, 0x08, 0xd0, 0xd5, 0xc9, 0x5a, 0x13, 0x53, 0x69, 0x06, 0x47, 0xe6, 0xb4, 0x3b, 0x17, 0x47, 0x9e, 0xe4, 0xa1, 0x91, 0xd4, 0x56, 0xa1, 0x77, 0x28, 0x1a, 0x1e, 0x16, 0xc0, 0x4d, 0xf4, 0x8c, 0x48, 0xdd, 0xe7, 0x33, 0xb6, 0x18, 0x8e, 0x56, 0xb6, 0x9c, 0x2c, 0xac, 0x14, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4379 = { .name = "ecdh_brainpoolp384r1_4379", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4379_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4379_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4379_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2033 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4380 for ECDH, tcId is 2034 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4380_peerpubkey[] = { 0x69, 0x3d, 0x59, 0xdc, 0x3c, 0x13, 0xb5, 0x39, 0x68, 0x57, 0x10, 0xba, 0x0e, 0x78, 0xaa, 0xba, 0x96, 0xde, 0x32, 0xdb, 0xbc, 0xed, 0xa9, 0x07, 0x0f, 0x6f, 0xd3, 0xce, 0xfc, 0x31, 0x3e, 0x29, 0xfd, 0x8d, 0x67, 0x2f, 0x5b, 0x2a, 0x73, 0xad, 0xcd, 0xae, 0xe0, 0xdf, 0x33, 0x69, 0xc8, 0x3c, 0x79, 0x33, 0xb4, 0x11, 0x09, 0x15, 0x36, 0x07, 0x6b, 0x80, 0x78, 0x8f, 0x41, 0x9a, 0xd4, 0xb1, 0xb4, 0x0b, 0x7e, 0x2b, 0x36, 0x20, 0xaa, 0x10, 0x59, 0x94, 0xe2, 0x81, 0x04, 0x49, 0xd0, 0x22, 0x73, 0x2f, 0x3e, 0xfb, 0x9d, 0xb8, 0xa2, 0x64, 0x1c, 0xe1, 0x2a, 0x46, 0xe7, 0xe4, 0x3b, 0x2d, }; static const unsigned char ecdh_brainpoolp384r1_4380_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4380_sharedsecret[] = { 0x25, 0x3c, 0x02, 0x8d, 0xb4, 0xe9, 0xc7, 0xeb, 0x45, 0x2f, 0x86, 0x6d, 0xe4, 0x10, 0x1f, 0x36, 0xba, 0xf9, 0xed, 0x50, 0x61, 0x6d, 0x6f, 0x0c, 0xce, 0x80, 0x32, 0xa9, 0x3d, 0x4b, 0x09, 0xc8, 0x53, 0x01, 0x21, 0xb4, 0x8b, 0xc6, 0xad, 0x68, 0x10, 0xad, 0x3f, 0x16, 0x11, 0x98, 0x27, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4380 = { .name = "ecdh_brainpoolp384r1_4380", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4380_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4380_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4380_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2034 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4381 for ECDH, tcId is 2035 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4381_peerpubkey[] = { 0x77, 0xd9, 0x93, 0x98, 0x0c, 0x54, 0x63, 0x80, 0xf8, 0xcc, 0xee, 0x9b, 0x99, 0xdc, 0x17, 0xa3, 0xed, 0x2d, 0x05, 0x6f, 0x4c, 0xdc, 0x39, 0x11, 0x59, 0x86, 0xaa, 0x0f, 0x8e, 0xfd, 0xdf, 0x64, 0x2b, 0x1b, 0x0a, 0x77, 0x68, 0xf8, 0x43, 0x1b, 0x06, 0x86, 0x5e, 0x02, 0x86, 0x85, 0x9b, 0x83, 0x01, 0xea, 0xb7, 0x7c, 0xf1, 0x6f, 0x71, 0x11, 0x68, 0x15, 0x02, 0x68, 0xe2, 0x15, 0x1f, 0xaf, 0xb7, 0x1d, 0x1f, 0x8d, 0xec, 0x1d, 0xd7, 0x1c, 0x65, 0x58, 0xcc, 0x53, 0xd4, 0x8c, 0x7e, 0xae, 0xd7, 0x67, 0x93, 0x69, 0xa8, 0x95, 0x40, 0xcb, 0xed, 0x73, 0x8d, 0xde, 0xb8, 0x87, 0x92, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4381_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4381_sharedsecret[] = { 0x71, 0xb0, 0x0e, 0x50, 0x2a, 0xd1, 0x94, 0x2b, 0x81, 0x64, 0x84, 0x14, 0x07, 0x21, 0xbb, 0xa4, 0xf9, 0xf7, 0x27, 0xce, 0xa8, 0x6f, 0xb1, 0x01, 0xa2, 0xa1, 0xaa, 0x65, 0xdb, 0x72, 0xb5, 0xa6, 0x65, 0xb9, 0xb1, 0xb8, 0xc9, 0x75, 0x85, 0xf5, 0x87, 0x06, 0xdf, 0xa0, 0x1e, 0xb9, 0xb8, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4381 = { .name = "ecdh_brainpoolp384r1_4381", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4381_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4381_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4381_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2035 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4382 for ECDH, tcId is 2036 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4382_peerpubkey[] = { 0x57, 0xe9, 0x31, 0xf7, 0xff, 0xf2, 0x65, 0x37, 0x9e, 0x3c, 0x8e, 0x2d, 0xb8, 0x42, 0x20, 0x11, 0x84, 0xfc, 0x35, 0x48, 0x1c, 0x9c, 0xb0, 0x29, 0x3c, 0x67, 0x30, 0x16, 0x02, 0x46, 0x1a, 0x3d, 0x03, 0xf0, 0xd3, 0xdd, 0xfa, 0xd0, 0x6a, 0xaf, 0xf0, 0xee, 0x0c, 0xc4, 0xba, 0x34, 0x33, 0x8c, 0x82, 0x9f, 0x56, 0x7b, 0x55, 0x9a, 0x8b, 0x02, 0x4c, 0xac, 0xe2, 0xdf, 0x3b, 0x4c, 0xe3, 0xa4, 0xe3, 0x89, 0xe2, 0xd6, 0x4a, 0xdb, 0x6f, 0x09, 0x29, 0xaf, 0xbb, 0xaa, 0x0f, 0x37, 0x83, 0x4e, 0xd3, 0xb6, 0xe1, 0x04, 0x83, 0xd7, 0x5a, 0x71, 0xc2, 0xf9, 0x2d, 0x9b, 0x79, 0x6a, 0x0e, 0x70, }; static const unsigned char ecdh_brainpoolp384r1_4382_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4382_sharedsecret[] = { 0x1a, 0x55, 0x4b, 0x13, 0xbe, 0x9a, 0x48, 0x63, 0xe9, 0x2a, 0x3c, 0x5d, 0xfd, 0xaf, 0xc0, 0x28, 0x65, 0x5d, 0x09, 0x41, 0x5b, 0xdd, 0x48, 0x0c, 0x74, 0xb9, 0x7e, 0xb0, 0x3d, 0x7b, 0x6c, 0x55, 0x7c, 0xc1, 0x1b, 0x7f, 0x52, 0x20, 0x98, 0xf1, 0xd0, 0x1c, 0x1d, 0x95, 0x8a, 0x52, 0xe0, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4382 = { .name = "ecdh_brainpoolp384r1_4382", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4382_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4382_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4382_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2036 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4383 for ECDH, tcId is 2037 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4383_peerpubkey[] = { 0x2e, 0x0c, 0xd3, 0x39, 0xb1, 0x3f, 0xcd, 0x63, 0xdf, 0xa6, 0x52, 0x38, 0xc1, 0xd5, 0xcd, 0xfa, 0x98, 0x1e, 0xde, 0x08, 0x0f, 0xd0, 0x84, 0x45, 0x07, 0x7c, 0xf0, 0x65, 0x9a, 0x64, 0x7d, 0x6f, 0x36, 0xd2, 0xbc, 0x30, 0xf8, 0x3d, 0xc6, 0x5d, 0xe5, 0x29, 0xab, 0xeb, 0xf0, 0xfa, 0x4b, 0xa3, 0x3c, 0xb8, 0x8a, 0xe4, 0x71, 0xc9, 0x0e, 0x41, 0xa3, 0xed, 0xed, 0x6f, 0xcb, 0xf6, 0xee, 0xc0, 0xfb, 0xf3, 0xcf, 0x31, 0x9f, 0x4f, 0x0f, 0x89, 0xd4, 0xfb, 0xe7, 0x71, 0xaa, 0x67, 0x5e, 0xe5, 0xa8, 0x18, 0xbc, 0xda, 0x39, 0xdc, 0x87, 0x46, 0xca, 0x6c, 0xfc, 0xe0, 0x4a, 0xbb, 0x8d, 0x0f, }; static const unsigned char ecdh_brainpoolp384r1_4383_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4383_sharedsecret[] = { 0x13, 0xed, 0x93, 0x84, 0x01, 0x57, 0x4b, 0xe2, 0x19, 0x8b, 0xf5, 0x04, 0x2a, 0x44, 0x6a, 0xcb, 0x4f, 0x65, 0x63, 0x96, 0x83, 0x0b, 0x5e, 0x6e, 0xa1, 0xc7, 0x27, 0x09, 0xa2, 0x4e, 0xab, 0x18, 0x1b, 0xc3, 0x64, 0x8d, 0xc7, 0x65, 0xe7, 0x0e, 0x20, 0x70, 0x11, 0xa3, 0x66, 0x80, 0x37, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4383 = { .name = "ecdh_brainpoolp384r1_4383", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4383_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4383_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4383_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2037 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4384 for ECDH, tcId is 2038 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4384_peerpubkey[] = { 0x2b, 0x30, 0xc0, 0x3a, 0xef, 0x0c, 0x4c, 0x2f, 0xc3, 0x6f, 0x3e, 0xee, 0x7d, 0x08, 0xcc, 0xf3, 0x02, 0xf4, 0xc1, 0x8c, 0xee, 0x68, 0xc3, 0x76, 0x6f, 0x77, 0x78, 0x98, 0x81, 0x3d, 0x7e, 0xef, 0x20, 0xac, 0x9a, 0x34, 0x1f, 0xf7, 0x87, 0x5a, 0xc4, 0x97, 0x1d, 0x3d, 0xf2, 0x43, 0x1d, 0xda, 0x36, 0xfe, 0x86, 0x97, 0xba, 0xa9, 0xee, 0x49, 0xba, 0x40, 0xc7, 0xb3, 0x8e, 0x2a, 0x7f, 0x29, 0x22, 0xc8, 0xc1, 0x63, 0xba, 0x83, 0x22, 0xc2, 0xaa, 0x3a, 0xfe, 0xaf, 0x03, 0x49, 0x89, 0x46, 0xc9, 0x76, 0x9b, 0x00, 0x29, 0x98, 0x29, 0x90, 0x00, 0x61, 0x28, 0xc5, 0xda, 0xaa, 0xca, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_4384_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4384_sharedsecret[] = { 0x54, 0xf3, 0x6a, 0x1c, 0xc9, 0xdb, 0xdc, 0x63, 0x1a, 0x50, 0xec, 0x35, 0xa0, 0xac, 0xfa, 0x84, 0x4b, 0xb1, 0x9c, 0x91, 0x0b, 0x07, 0xc0, 0xa1, 0x19, 0x65, 0x09, 0x6e, 0x86, 0x91, 0x51, 0x94, 0x3a, 0x41, 0xc6, 0x78, 0xba, 0x2e, 0x39, 0x7a, 0xd3, 0x52, 0x5c, 0x26, 0x2e, 0x6d, 0x9b, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4384 = { .name = "ecdh_brainpoolp384r1_4384", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4384_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4384_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4384_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2038 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4385 for ECDH, tcId is 2039 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4385_peerpubkey[] = { 0x25, 0xc7, 0xa0, 0x75, 0x00, 0x58, 0xc2, 0x26, 0xd9, 0x38, 0x8f, 0xa6, 0xc3, 0x68, 0xc9, 0xa7, 0x2e, 0x2c, 0xd3, 0x35, 0x46, 0x18, 0x49, 0x3c, 0xe5, 0x7b, 0x80, 0xbb, 0x78, 0x9b, 0x62, 0x04, 0xd6, 0x74, 0x76, 0x49, 0x24, 0x74, 0x81, 0xc3, 0x33, 0x97, 0x52, 0x9c, 0xf5, 0x4c, 0x7d, 0xbd, 0x53, 0xac, 0x0b, 0xfd, 0x18, 0x6b, 0x50, 0x1e, 0xd9, 0xdd, 0xcc, 0x56, 0x3a, 0x4f, 0x73, 0xb7, 0x9d, 0x31, 0x1c, 0x53, 0xf5, 0xf1, 0x50, 0x09, 0x59, 0x2f, 0xac, 0xaa, 0x93, 0x46, 0xcf, 0x88, 0x74, 0x8b, 0x77, 0x80, 0xb3, 0xca, 0x9d, 0x0d, 0xcd, 0x4c, 0xd7, 0x14, 0x14, 0x6c, 0xf3, 0xb5, }; static const unsigned char ecdh_brainpoolp384r1_4385_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4385_sharedsecret[] = { 0x24, 0xf4, 0x4b, 0xa0, 0xf0, 0x6d, 0x24, 0xbd, 0xfa, 0xc7, 0xeb, 0xfb, 0x97, 0x12, 0x3d, 0xd2, 0x8b, 0x6b, 0x22, 0x02, 0xca, 0x25, 0x0e, 0x95, 0x5d, 0x51, 0x1f, 0x24, 0xef, 0x06, 0xe6, 0x05, 0x06, 0x51, 0xe7, 0xe7, 0x06, 0x70, 0xad, 0xe0, 0x5e, 0x19, 0x46, 0x63, 0x91, 0xa7, 0xc7, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4385 = { .name = "ecdh_brainpoolp384r1_4385", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4385_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4385_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4385_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2039 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4386 for ECDH, tcId is 2040 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4386_peerpubkey[] = { 0x88, 0x0a, 0x7f, 0x98, 0x08, 0x14, 0x31, 0x7d, 0x34, 0xed, 0xee, 0xf2, 0xbe, 0x20, 0x3a, 0x33, 0x76, 0x8e, 0xd3, 0xc2, 0x60, 0xed, 0xe1, 0x2c, 0x9c, 0xaa, 0x85, 0x60, 0x89, 0x74, 0x2d, 0x50, 0x06, 0x23, 0xf1, 0xb3, 0x86, 0x00, 0x9a, 0xfa, 0xbd, 0xa1, 0x50, 0xe8, 0x00, 0x0f, 0x06, 0xe0, 0x5d, 0x21, 0xb8, 0x48, 0x7f, 0xd5, 0xaa, 0x76, 0x04, 0x1d, 0xda, 0x59, 0xc0, 0xc0, 0xe7, 0x7d, 0x6d, 0x4f, 0xce, 0xd1, 0x9e, 0xbb, 0x13, 0xee, 0xb6, 0x43, 0x78, 0xb5, 0x9a, 0xa2, 0x47, 0x8b, 0xa1, 0x30, 0x74, 0x5d, 0xce, 0xe0, 0x03, 0xc7, 0x82, 0x9a, 0x5d, 0x01, 0xe8, 0xf4, 0xbb, 0xc6, }; static const unsigned char ecdh_brainpoolp384r1_4386_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4386_sharedsecret[] = { 0x4f, 0x46, 0xf4, 0x7f, 0x21, 0x8c, 0xbb, 0x17, 0x6c, 0x17, 0x05, 0x19, 0x25, 0x9a, 0xe5, 0x1a, 0xc6, 0x7a, 0x6c, 0xc6, 0x9b, 0xef, 0x02, 0x40, 0xc5, 0xe9, 0x84, 0x57, 0x17, 0x34, 0x6e, 0x2c, 0x0e, 0x49, 0xa4, 0xce, 0x5a, 0xc9, 0xbd, 0x4c, 0xa0, 0xa6, 0x83, 0xfc, 0xd9, 0x53, 0x90, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4386 = { .name = "ecdh_brainpoolp384r1_4386", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4386_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4386_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4386_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2040 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4387 for ECDH, tcId is 2041 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4387_peerpubkey[] = { 0x40, 0x6f, 0x7a, 0x3b, 0xac, 0xac, 0xdf, 0xf3, 0x5f, 0xac, 0x87, 0xee, 0x47, 0x8c, 0xe5, 0x00, 0x6b, 0x39, 0xec, 0x58, 0xb5, 0x64, 0xf3, 0x14, 0x05, 0xbb, 0x69, 0x6e, 0xdd, 0xe7, 0xc5, 0x84, 0xeb, 0xeb, 0xe5, 0xde, 0x02, 0x9b, 0xb7, 0xbd, 0xc7, 0xa3, 0x5d, 0x10, 0x6f, 0x4f, 0x6e, 0xb8, 0x66, 0xb5, 0xfd, 0xef, 0x09, 0xee, 0xd0, 0x14, 0x6f, 0xc2, 0x4a, 0xe1, 0xa7, 0xc8, 0x91, 0x2d, 0x8e, 0x4d, 0xdf, 0x84, 0xc9, 0xaf, 0x13, 0x17, 0xf8, 0x13, 0xb0, 0x9e, 0xc1, 0x9c, 0x84, 0x34, 0x3f, 0x13, 0xa5, 0xd7, 0x94, 0x81, 0xf3, 0x78, 0x8b, 0xee, 0xce, 0x2d, 0x55, 0xaf, 0xfc, 0x1d, }; static const unsigned char ecdh_brainpoolp384r1_4387_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4387_sharedsecret[] = { 0x29, 0x24, 0x60, 0xe9, 0x5a, 0x1f, 0xaa, 0x2f, 0x19, 0x37, 0xfc, 0x79, 0xc3, 0x2a, 0xed, 0x32, 0x87, 0x3d, 0xfe, 0xaf, 0x16, 0xc8, 0xc4, 0x68, 0x77, 0xd9, 0x4e, 0xde, 0x01, 0x1e, 0xee, 0x9a, 0x45, 0x0c, 0x99, 0xdc, 0x47, 0x7c, 0x1f, 0x08, 0x11, 0x7b, 0xaf, 0xb7, 0x4a, 0xc2, 0xe7, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4387 = { .name = "ecdh_brainpoolp384r1_4387", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4387_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4387_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4387_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2041 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4388 for ECDH, tcId is 2042 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4388_peerpubkey[] = { 0x72, 0x93, 0x14, 0xf8, 0x40, 0x9c, 0xe1, 0xcc, 0x4f, 0xe2, 0xfe, 0x2a, 0xa2, 0xf6, 0xc3, 0x58, 0x68, 0x6e, 0x01, 0x23, 0x3a, 0x2e, 0xf8, 0xfd, 0xf8, 0xa2, 0x06, 0x2a, 0x38, 0xb0, 0x2c, 0xaa, 0x49, 0x3c, 0x97, 0x9d, 0x68, 0x07, 0x38, 0x0c, 0x2f, 0x79, 0xb5, 0x3d, 0xf1, 0xd6, 0x10, 0x7e, 0x12, 0x85, 0xcb, 0xb1, 0x1a, 0x81, 0xc5, 0x78, 0xf8, 0x81, 0x8d, 0x3f, 0xa5, 0x34, 0x71, 0x9e, 0xec, 0x7b, 0x90, 0xfd, 0x01, 0xbf, 0x36, 0x7f, 0x38, 0x3b, 0x02, 0x30, 0x33, 0x23, 0xb4, 0x5a, 0xbe, 0x11, 0x48, 0x5a, 0x08, 0x61, 0x98, 0xc3, 0xb0, 0xd1, 0xd9, 0x29, 0xe7, 0x39, 0x28, 0x1e, }; static const unsigned char ecdh_brainpoolp384r1_4388_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4388_sharedsecret[] = { 0x5f, 0x6d, 0x27, 0x22, 0x23, 0xa1, 0xa2, 0xce, 0x53, 0x3c, 0x44, 0x4c, 0xc3, 0x65, 0x57, 0x49, 0xc4, 0x31, 0x06, 0xe0, 0x38, 0xb7, 0x90, 0x44, 0x64, 0x3b, 0x41, 0x46, 0x6b, 0xec, 0x45, 0x70, 0x35, 0x15, 0xab, 0xf9, 0xb5, 0x28, 0x68, 0x0d, 0x7e, 0xf3, 0xa0, 0x74, 0x42, 0x94, 0x48, 0x86, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4388 = { .name = "ecdh_brainpoolp384r1_4388", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4388_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4388_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4388_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2042 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4389 for ECDH, tcId is 2043 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4389_peerpubkey[] = { 0x26, 0xe6, 0x96, 0xc1, 0xc3, 0xd1, 0xd5, 0x04, 0x9f, 0xa1, 0x67, 0x72, 0x0c, 0x32, 0x9b, 0x22, 0xf5, 0xb6, 0xe6, 0xbe, 0x12, 0x21, 0x33, 0x24, 0xdd, 0xb3, 0x3b, 0x37, 0x80, 0x7d, 0xca, 0x1c, 0x59, 0x2a, 0xe5, 0x4d, 0xa6, 0xa2, 0xaf, 0x7d, 0x02, 0x85, 0x77, 0x05, 0x31, 0x81, 0xc3, 0x8b, 0x19, 0x99, 0xb0, 0x8f, 0x06, 0xbd, 0x4b, 0x35, 0x34, 0xd8, 0xa6, 0x3c, 0x9c, 0x49, 0x06, 0x8c, 0x1d, 0x82, 0x05, 0x44, 0xcc, 0x3e, 0xc9, 0x06, 0xa0, 0x60, 0x5f, 0x34, 0xff, 0x49, 0xe9, 0x54, 0xa8, 0x75, 0xb4, 0xea, 0x34, 0x3c, 0x30, 0xaf, 0xf2, 0x37, 0x3e, 0x0e, 0xd3, 0xe9, 0xa3, 0x36, }; static const unsigned char ecdh_brainpoolp384r1_4389_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4389_sharedsecret[] = { 0x70, 0xbc, 0x30, 0x24, 0x7b, 0xa2, 0xfe, 0x40, 0x12, 0x2a, 0xe6, 0xb9, 0x8f, 0x6d, 0xc0, 0x51, 0x42, 0xc8, 0x91, 0x24, 0xf0, 0x81, 0xa5, 0x6e, 0x53, 0x43, 0xbd, 0xcb, 0xc8, 0xa0, 0xd3, 0x51, 0x57, 0xd1, 0x9e, 0xcc, 0xc1, 0x00, 0xa8, 0xb2, 0x0d, 0xe6, 0x87, 0xea, 0x37, 0xed, 0x85, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4389 = { .name = "ecdh_brainpoolp384r1_4389", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4389_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4389_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4389_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2043 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4390 for ECDH, tcId is 2044 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4390_peerpubkey[] = { 0x08, 0x4b, 0x6e, 0x03, 0xd2, 0x15, 0xba, 0xa0, 0x61, 0x04, 0x9d, 0x64, 0x7f, 0xd6, 0x12, 0xea, 0x0f, 0x2f, 0x6d, 0x11, 0x89, 0x74, 0xb7, 0x1d, 0x2b, 0x9c, 0xf2, 0xb4, 0xb2, 0xfa, 0xe8, 0xb5, 0xc8, 0x24, 0x22, 0x04, 0x14, 0x67, 0x58, 0x68, 0x64, 0x95, 0x57, 0x4c, 0xe1, 0xa3, 0x64, 0x60, 0x0a, 0x88, 0xb0, 0xef, 0x01, 0x4d, 0x2a, 0x6a, 0xe9, 0x4d, 0xe7, 0xfe, 0x68, 0x66, 0x38, 0xd6, 0x79, 0x8a, 0x60, 0x41, 0xf2, 0x20, 0xb3, 0x31, 0xff, 0xdf, 0xea, 0x84, 0xa9, 0x1e, 0xd7, 0x3d, 0x66, 0xdf, 0xc7, 0xc9, 0x1b, 0x07, 0x95, 0x85, 0x43, 0x5e, 0x12, 0x83, 0xc3, 0x0a, 0x29, 0x15, }; static const unsigned char ecdh_brainpoolp384r1_4390_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4390_sharedsecret[] = { 0x57, 0x63, 0x3d, 0x31, 0xd9, 0x20, 0x30, 0x29, 0x77, 0xb5, 0x33, 0xa7, 0xef, 0x9f, 0x82, 0x66, 0xd7, 0x29, 0x40, 0xaa, 0xf7, 0x0a, 0x44, 0xf5, 0x62, 0x4f, 0xac, 0xd0, 0xbe, 0xfb, 0x88, 0xc1, 0xcc, 0x74, 0x34, 0x1c, 0x8a, 0xf6, 0xbb, 0x11, 0x25, 0xb3, 0xaf, 0x14, 0xf5, 0x56, 0x69, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4390 = { .name = "ecdh_brainpoolp384r1_4390", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4390_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4390_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4390_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2044 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4391 for ECDH, tcId is 2045 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4391_peerpubkey[] = { 0x17, 0x19, 0xfc, 0xdb, 0x9e, 0xf4, 0xe2, 0x76, 0xa2, 0xbb, 0xc2, 0xa9, 0xa4, 0xc5, 0xd8, 0x2c, 0xc3, 0xc9, 0x49, 0xa1, 0xe6, 0x1f, 0xeb, 0x7f, 0x7d, 0x4b, 0xb2, 0xfd, 0xad, 0x00, 0x0a, 0x94, 0x15, 0x64, 0x4e, 0x48, 0xd6, 0xe0, 0xb2, 0xf6, 0x8e, 0x10, 0x8f, 0xc1, 0xb9, 0xd8, 0x15, 0x45, 0x76, 0xc2, 0xb5, 0x50, 0xb5, 0xea, 0x31, 0xb2, 0x35, 0x4f, 0xaf, 0x8c, 0x18, 0xf7, 0x38, 0x97, 0xeb, 0xfd, 0x77, 0x3d, 0x81, 0xf9, 0xed, 0x15, 0xa4, 0x00, 0x08, 0xbe, 0x16, 0x4a, 0xdc, 0x78, 0x11, 0xb4, 0x35, 0x2b, 0x5c, 0xce, 0x47, 0x8a, 0x50, 0x5e, 0x38, 0x31, 0x9f, 0xa4, 0xec, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4391_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4391_sharedsecret[] = { 0x3b, 0x63, 0x15, 0x7b, 0x68, 0x89, 0xc8, 0x75, 0x57, 0x2c, 0xe5, 0xf2, 0x45, 0x7b, 0xfc, 0x33, 0xca, 0xe9, 0xa4, 0xca, 0x77, 0xe7, 0x63, 0xb2, 0x45, 0xc4, 0x79, 0x8a, 0x67, 0xb7, 0xf7, 0x9b, 0x26, 0xb5, 0xad, 0xf9, 0x12, 0x96, 0x65, 0x45, 0xb1, 0x17, 0x5e, 0x0c, 0xfb, 0x6f, 0x48, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4391 = { .name = "ecdh_brainpoolp384r1_4391", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4391_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4391_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4391_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2045 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4392 for ECDH, tcId is 2046 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4392_peerpubkey[] = { 0x6f, 0x30, 0x28, 0xd8, 0x79, 0x0a, 0x69, 0x6c, 0xf8, 0xaf, 0x0c, 0x4c, 0xb6, 0x35, 0x81, 0x04, 0xbb, 0x28, 0xf6, 0xa5, 0x83, 0x3d, 0x6a, 0x27, 0x7d, 0x1e, 0x2d, 0x5b, 0xd6, 0x6d, 0x29, 0xee, 0x4d, 0x7d, 0x3b, 0x06, 0x17, 0x07, 0x4e, 0xe0, 0x86, 0xc2, 0x3a, 0x74, 0xd5, 0x65, 0x46, 0x82, 0x8a, 0xbd, 0xb5, 0x55, 0xcd, 0x20, 0xbf, 0xcd, 0xa2, 0x4d, 0xff, 0xbb, 0x61, 0x19, 0xce, 0x60, 0x08, 0xd7, 0xd1, 0x19, 0xd5, 0x20, 0x31, 0x30, 0x24, 0x63, 0x4d, 0x52, 0x93, 0xfc, 0x0b, 0x69, 0x1b, 0xc5, 0x4b, 0x45, 0x85, 0x2e, 0xd3, 0x86, 0x43, 0x07, 0x16, 0x50, 0x0e, 0xac, 0x89, 0xe9, }; static const unsigned char ecdh_brainpoolp384r1_4392_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4392_sharedsecret[] = { 0x37, 0x1f, 0x51, 0xf2, 0xe5, 0x88, 0xdb, 0xc1, 0x0f, 0xaa, 0x24, 0x63, 0xea, 0xf3, 0xb2, 0x69, 0x3c, 0x3c, 0x5d, 0xce, 0xf8, 0x20, 0xdb, 0x57, 0x23, 0x16, 0x8f, 0xa4, 0x02, 0xc9, 0xc4, 0xed, 0x68, 0x76, 0x08, 0x52, 0x13, 0xae, 0xa9, 0x4e, 0x86, 0x18, 0xa2, 0x09, 0x2e, 0xec, 0x36, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4392 = { .name = "ecdh_brainpoolp384r1_4392", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4392_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4392_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4392_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2046 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4393 for ECDH, tcId is 2047 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4393_peerpubkey[] = { 0x5e, 0x18, 0xae, 0xee, 0xba, 0x96, 0x4e, 0x19, 0x03, 0x09, 0x5b, 0x9b, 0x54, 0xc3, 0xb6, 0x01, 0x3e, 0xca, 0xc2, 0xe7, 0x96, 0x18, 0xe8, 0x50, 0x94, 0xad, 0x18, 0x77, 0x41, 0x54, 0x24, 0xe1, 0x97, 0x5c, 0x15, 0x45, 0x57, 0x40, 0x13, 0x88, 0x18, 0x81, 0x83, 0x66, 0x59, 0x12, 0x0b, 0x2d, 0x36, 0x31, 0xa9, 0xca, 0x28, 0x8d, 0x16, 0xd0, 0xc5, 0x9d, 0xf9, 0xfb, 0x4f, 0x0b, 0xf4, 0x2d, 0x66, 0x18, 0x70, 0x6f, 0x0f, 0x81, 0x08, 0x0e, 0xbb, 0x91, 0x11, 0x51, 0xfc, 0x86, 0xbb, 0x1a, 0x50, 0xa7, 0x51, 0xd5, 0xf0, 0x34, 0xcd, 0xe6, 0xf6, 0x2f, 0x18, 0x3c, 0x23, 0xd7, 0xb0, 0x1d, }; static const unsigned char ecdh_brainpoolp384r1_4393_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4393_sharedsecret[] = { 0x52, 0x44, 0xa4, 0x1b, 0xe0, 0xb1, 0x8d, 0x62, 0x62, 0xe9, 0xa9, 0x58, 0xc2, 0x65, 0x38, 0x44, 0x6d, 0xe7, 0x54, 0xdb, 0xcf, 0xea, 0xc4, 0xda, 0x7e, 0xc1, 0x72, 0xca, 0x59, 0x33, 0x77, 0xc7, 0x2e, 0x1c, 0x1e, 0x7f, 0x8c, 0x4b, 0xfa, 0x72, 0x7a, 0x2d, 0x11, 0x53, 0x92, 0xc2, 0x34, 0xdd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4393 = { .name = "ecdh_brainpoolp384r1_4393", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4393_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4393_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4393_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2047 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4394 for ECDH, tcId is 2048 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4394_peerpubkey[] = { 0x0c, 0x67, 0x62, 0x37, 0xf1, 0x7d, 0xd2, 0x91, 0xdc, 0x07, 0x2b, 0xd1, 0x02, 0xc3, 0x93, 0x84, 0x2b, 0x5a, 0x1a, 0x87, 0x07, 0x14, 0x51, 0x7c, 0x03, 0x51, 0xc4, 0x1d, 0xed, 0xff, 0x5a, 0xea, 0xf9, 0xe6, 0x83, 0x12, 0x21, 0xc7, 0xaa, 0x2e, 0x06, 0x4e, 0xc6, 0x76, 0x04, 0x7b, 0x3e, 0x14, 0x0c, 0x84, 0x8e, 0x5e, 0x22, 0x18, 0x9c, 0x3f, 0x49, 0x74, 0xc4, 0xe6, 0xb0, 0x94, 0xa9, 0x3e, 0x0d, 0x4d, 0x5e, 0xf5, 0xc5, 0xb0, 0x1f, 0xba, 0xe2, 0x87, 0x0f, 0x51, 0x36, 0x3f, 0x89, 0xe0, 0x2d, 0x98, 0x16, 0x52, 0xab, 0xcf, 0x13, 0x07, 0x87, 0x9f, 0x46, 0xe6, 0x70, 0x7f, 0xb6, 0xb8, }; static const unsigned char ecdh_brainpoolp384r1_4394_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4394_sharedsecret[] = { 0x56, 0xc6, 0x9c, 0x37, 0xfc, 0x29, 0x0c, 0x5d, 0xf1, 0x0a, 0xfa, 0x2d, 0xb1, 0x9c, 0x0e, 0x37, 0xa6, 0xdb, 0x5a, 0x03, 0x20, 0x50, 0xf4, 0xfb, 0x4c, 0xa0, 0x5d, 0xc0, 0x71, 0xac, 0x46, 0xe4, 0xb6, 0xef, 0x47, 0xf9, 0x07, 0xc3, 0xd0, 0xfc, 0x98, 0xa2, 0x6b, 0x04, 0x1f, 0xcd, 0xd4, 0x14, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4394 = { .name = "ecdh_brainpoolp384r1_4394", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4394_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4394_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4394_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2048 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4395 for ECDH, tcId is 2049 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4395_peerpubkey[] = { 0x31, 0x09, 0x8a, 0x43, 0x98, 0xb2, 0xc8, 0x9c, 0x61, 0xb8, 0x43, 0x5b, 0xb3, 0x2b, 0xa3, 0xad, 0xf5, 0xf5, 0x64, 0x29, 0xcd, 0x9c, 0xb8, 0xdc, 0xcd, 0xf5, 0x16, 0x4c, 0x8b, 0x7d, 0x80, 0x82, 0x79, 0x06, 0x55, 0xbc, 0xef, 0x6a, 0xa1, 0xa3, 0xc3, 0x11, 0x3f, 0x68, 0xb9, 0x0c, 0x38, 0x60, 0x29, 0x04, 0x53, 0xaa, 0xa8, 0x92, 0xd6, 0x48, 0xc5, 0x1f, 0x4a, 0x6c, 0x12, 0x3d, 0x20, 0x02, 0x7c, 0x8e, 0xfc, 0x57, 0x4a, 0xb9, 0x38, 0xef, 0xc8, 0xb5, 0x48, 0xda, 0xb9, 0xa3, 0xfb, 0x87, 0x7f, 0x83, 0x27, 0xc2, 0x8b, 0x27, 0x2c, 0x5b, 0xe8, 0x2f, 0x8a, 0xb8, 0xda, 0x0e, 0x22, 0x11, }; static const unsigned char ecdh_brainpoolp384r1_4395_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384r1_4395_sharedsecret[] = { 0x7d, 0x0b, 0x53, 0x39, 0x15, 0xea, 0x63, 0x95, 0x24, 0xbe, 0x18, 0x79, 0xc8, 0xda, 0xe0, 0x38, 0x30, 0x4a, 0xfa, 0xbc, 0x38, 0x39, 0x8c, 0x11, 0x8d, 0x59, 0xfe, 0xda, 0xf2, 0x95, 0x69, 0xc7, 0xad, 0xa5, 0x7b, 0xf1, 0x3d, 0x53, 0x0a, 0xc9, 0x95, 0x05, 0xd6, 0x40, 0x89, 0x67, 0x88, 0x24, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4395 = { .name = "ecdh_brainpoolp384r1_4395", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4395_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4395_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4395_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 2049 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4396 for ECDH, tcId is 2050 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4396_peerpubkey[] = { 0x52, 0x5f, 0xd4, 0xea, 0x91, 0x34, 0x40, 0x41, 0x64, 0x76, 0x92, 0x95, 0xa9, 0xfa, 0xb7, 0xbe, 0x32, 0x34, 0x0d, 0x78, 0x4a, 0xdd, 0x07, 0xd4, 0x8a, 0x7e, 0x93, 0xda, 0x4d, 0xaf, 0x75, 0x80, 0xfd, 0xfe, 0x4b, 0xb0, 0x68, 0x5a, 0x87, 0xfc, 0x42, 0x14, 0x35, 0x45, 0xda, 0x9d, 0x1a, 0xf1, 0x77, 0xc0, 0x03, 0xb2, 0x4d, 0x51, 0x35, 0x22, 0xb2, 0x59, 0x8c, 0x08, 0x23, 0xa3, 0x84, 0x7f, 0xad, 0x60, 0x0e, 0x69, 0xc4, 0xcc, 0x91, 0x0e, 0x73, 0x8d, 0x82, 0xfb, 0x8d, 0x0e, 0x94, 0xbb, 0x9b, 0x31, 0x01, 0x09, 0x50, 0xa3, 0x2c, 0xfb, 0x1e, 0x03, 0x97, 0x3a, 0x4f, 0x5f, 0x67, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_4396_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4396_sharedsecret[] = { 0x3d, 0xdd, 0x57, 0x8a, 0x61, 0x24, 0x55, 0xab, 0x8b, 0x8f, 0x89, 0xdc, 0xd3, 0xfe, 0x5e, 0x40, 0x5c, 0x70, 0xb0, 0x4a, 0xb3, 0x58, 0x07, 0x07, 0x2a, 0x69, 0x1b, 0xfe, 0x1b, 0x01, 0xd1, 0xd1, 0x79, 0x2b, 0x67, 0x72, 0xcd, 0xe4, 0xfe, 0x3a, 0x1a, 0x36, 0x9e, 0x66, 0xdc, 0x95, 0xb2, 0x6a, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4396 = { .name = "ecdh_brainpoolp384r1_4396", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4396_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4396_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4396_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2050 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4397 for ECDH, tcId is 2051 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4397_peerpubkey[] = { 0x55, 0xb4, 0x68, 0x4b, 0x07, 0xf3, 0x65, 0x08, 0xb6, 0x43, 0xcd, 0xec, 0x9e, 0x1c, 0xc4, 0x6d, 0xbd, 0x13, 0x52, 0x13, 0xcf, 0xde, 0xb5, 0x36, 0x1b, 0xc8, 0x13, 0x2a, 0x4e, 0xbc, 0x26, 0x08, 0xda, 0xb1, 0xcf, 0x1d, 0x21, 0x15, 0x1a, 0x9d, 0xeb, 0x2b, 0x78, 0xdd, 0x95, 0xd0, 0x3d, 0xda, 0x0e, 0x90, 0xc4, 0x73, 0xf4, 0xf9, 0xec, 0x8c, 0xb7, 0x99, 0xb0, 0xaa, 0x80, 0x6c, 0xd5, 0x26, 0x2b, 0x07, 0x61, 0xd3, 0xf2, 0x3f, 0x31, 0xac, 0x8d, 0x2b, 0x5d, 0x2d, 0xd7, 0x54, 0xaa, 0x93, 0x16, 0x82, 0x04, 0x0b, 0x14, 0xab, 0xa2, 0xbf, 0x50, 0xab, 0xba, 0x99, 0x8a, 0xbc, 0xe8, 0x44, }; static const unsigned char ecdh_brainpoolp384r1_4397_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4397_sharedsecret[] = { 0x5c, 0x9a, 0xc3, 0x91, 0xf6, 0xb6, 0xb4, 0xfc, 0x04, 0x81, 0x09, 0x8f, 0x53, 0xf5, 0x45, 0x3f, 0x18, 0x03, 0x12, 0x22, 0x61, 0x96, 0xfb, 0xf5, 0x8e, 0xec, 0xa4, 0x58, 0x58, 0xef, 0x5c, 0x59, 0xe8, 0x1a, 0x2b, 0x25, 0xc8, 0x92, 0x6b, 0xf0, 0x0e, 0x13, 0x56, 0x8c, 0x94, 0x20, 0x59, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4397 = { .name = "ecdh_brainpoolp384r1_4397", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4397_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4397_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4397_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2051 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4398 for ECDH, tcId is 2052 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4398_peerpubkey[] = { 0x28, 0x92, 0x66, 0xbe, 0x4d, 0xa8, 0x44, 0xac, 0x9f, 0x8d, 0xa4, 0xc1, 0x7e, 0xcf, 0xe9, 0xe1, 0x02, 0xa7, 0x2f, 0x3f, 0x2d, 0xd5, 0x38, 0x2d, 0xe0, 0xcc, 0x46, 0x73, 0xb9, 0x2d, 0xa7, 0x6e, 0x6c, 0x1e, 0x92, 0x26, 0x8f, 0xd3, 0x44, 0xec, 0xbd, 0x52, 0xc8, 0x61, 0x52, 0x32, 0x35, 0x7c, 0x6d, 0xbc, 0x76, 0xf3, 0x15, 0xff, 0x9d, 0x8d, 0x56, 0xd4, 0x0b, 0x73, 0x5b, 0x24, 0x06, 0xd1, 0x77, 0x36, 0x02, 0xc2, 0x9f, 0x66, 0x35, 0x4f, 0xa1, 0x15, 0xde, 0x6c, 0x46, 0x8f, 0x76, 0x38, 0xc4, 0xf2, 0x38, 0x37, 0x21, 0x83, 0xcd, 0xa1, 0x41, 0xdb, 0x33, 0x86, 0x7b, 0x1b, 0x72, 0x8f, }; static const unsigned char ecdh_brainpoolp384r1_4398_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4398_sharedsecret[] = { 0x2f, 0x0d, 0x8b, 0x9c, 0x02, 0xea, 0x3a, 0xe6, 0xf9, 0xd0, 0x21, 0xa8, 0xed, 0x06, 0x22, 0xfe, 0x7d, 0x5d, 0x0a, 0xf0, 0xea, 0x6a, 0x7a, 0xde, 0xbf, 0x64, 0x09, 0x84, 0xac, 0x06, 0x05, 0x43, 0xb4, 0xcf, 0x8c, 0x7c, 0xe3, 0xfc, 0x3a, 0x5e, 0xd3, 0x5d, 0x79, 0x69, 0x2b, 0x54, 0x7a, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4398 = { .name = "ecdh_brainpoolp384r1_4398", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4398_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4398_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4398_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2052 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4399 for ECDH, tcId is 2053 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4399_peerpubkey[] = { 0x82, 0x88, 0xfc, 0xd9, 0x22, 0x95, 0x55, 0x12, 0xe7, 0x51, 0x35, 0x58, 0x8a, 0x90, 0xc5, 0x49, 0xfd, 0x17, 0x88, 0xf3, 0x63, 0x0a, 0x05, 0xbe, 0xc1, 0x6d, 0x74, 0xf5, 0x75, 0xa3, 0x3c, 0x35, 0x46, 0x00, 0x54, 0x0e, 0x49, 0x80, 0x3f, 0xb8, 0x24, 0xa1, 0x59, 0x4b, 0x34, 0xf9, 0xbf, 0x38, 0x2f, 0xb2, 0xad, 0x4d, 0xd4, 0xcc, 0x5c, 0xf7, 0x31, 0xba, 0x8b, 0xce, 0xd2, 0xa9, 0x61, 0xde, 0xca, 0x16, 0xaa, 0xd3, 0x4b, 0xae, 0x31, 0xf9, 0x9a, 0xd2, 0x6d, 0x5b, 0x73, 0x76, 0xea, 0xdf, 0x75, 0xae, 0xd2, 0x9a, 0x51, 0x43, 0x47, 0xb4, 0x2a, 0x04, 0x2c, 0x4c, 0x54, 0xe1, 0xc0, 0x2d, }; static const unsigned char ecdh_brainpoolp384r1_4399_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4399_sharedsecret[] = { 0x61, 0xd1, 0xc4, 0x98, 0x8e, 0x07, 0x62, 0x8e, 0x03, 0x6c, 0xc9, 0x95, 0x6c, 0x54, 0xde, 0xb1, 0x7e, 0xc6, 0xf0, 0x15, 0x95, 0x58, 0x05, 0x8f, 0x3a, 0x20, 0xe7, 0x8f, 0x16, 0x02, 0x94, 0x36, 0x1f, 0xfa, 0xbd, 0x25, 0x66, 0xbf, 0xff, 0x16, 0xdc, 0xfe, 0x02, 0xc3, 0x6c, 0xc0, 0x12, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4399 = { .name = "ecdh_brainpoolp384r1_4399", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4399_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4399_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4399_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2053 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4400 for ECDH, tcId is 2054 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4400_peerpubkey[] = { 0x09, 0xdc, 0xa2, 0xc2, 0x43, 0x3e, 0x31, 0x5b, 0xd1, 0xf2, 0x56, 0x26, 0x85, 0xce, 0x83, 0x37, 0x0a, 0x10, 0x32, 0x6d, 0x60, 0x8a, 0x15, 0xee, 0x2a, 0xf0, 0x86, 0xb3, 0x5d, 0x2b, 0x7f, 0xdb, 0x1f, 0x9a, 0x46, 0xbe, 0x4a, 0x77, 0x0a, 0x2a, 0x21, 0xeb, 0xa5, 0x38, 0x38, 0x42, 0x86, 0x54, 0x27, 0x71, 0x84, 0xec, 0x7e, 0xe7, 0x24, 0xfc, 0xd8, 0x1c, 0xf8, 0x23, 0xbd, 0x37, 0x87, 0xe3, 0xea, 0x45, 0xd6, 0x56, 0xf3, 0xc9, 0xd5, 0xea, 0x3b, 0x23, 0x02, 0x7d, 0xb3, 0xda, 0x5b, 0x76, 0xe6, 0x7b, 0x24, 0xba, 0x6a, 0xf8, 0x3a, 0xb0, 0xa5, 0x83, 0x0b, 0x20, 0x53, 0xde, 0xf0, 0x5f, }; static const unsigned char ecdh_brainpoolp384r1_4400_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4400_sharedsecret[] = { 0x4c, 0x51, 0x62, 0xb4, 0x0c, 0x7c, 0xe2, 0x32, 0x2d, 0x8a, 0x0c, 0x2f, 0x45, 0xad, 0x7f, 0x8f, 0xdb, 0xde, 0x67, 0xeb, 0x2d, 0x6b, 0x1c, 0xf9, 0xc9, 0x29, 0x74, 0xfb, 0x64, 0x0b, 0x3b, 0x82, 0x56, 0x5c, 0x6e, 0xf0, 0x97, 0x56, 0x24, 0xda, 0xb2, 0xd4, 0x90, 0x26, 0x3e, 0x76, 0x45, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4400 = { .name = "ecdh_brainpoolp384r1_4400", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4400_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4400_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4400_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2054 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4401 for ECDH, tcId is 2055 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4401_peerpubkey[] = { 0x4c, 0x2d, 0x1c, 0xbc, 0x86, 0x70, 0x87, 0xf8, 0x88, 0x37, 0x25, 0xb5, 0x37, 0x4d, 0x5b, 0x64, 0xb7, 0xa8, 0x0f, 0x61, 0x45, 0x37, 0xb5, 0x3d, 0x86, 0x7e, 0xed, 0xe5, 0xa0, 0x10, 0x9c, 0xfe, 0xe3, 0x6f, 0x5f, 0xc7, 0x6a, 0xd0, 0x17, 0x53, 0x70, 0x2a, 0x01, 0x87, 0x6e, 0xe4, 0xdb, 0x56, 0x8a, 0x8c, 0x79, 0x2a, 0xec, 0x40, 0x9a, 0xa3, 0xf2, 0x30, 0xef, 0xfa, 0x37, 0xb4, 0xc8, 0x4d, 0x8e, 0x7c, 0x28, 0x90, 0x8c, 0xd1, 0x48, 0x02, 0x83, 0x03, 0xa5, 0xc3, 0xae, 0x82, 0x8e, 0x79, 0xe2, 0xa5, 0xdd, 0x09, 0xdc, 0x3a, 0xf4, 0xf9, 0x2d, 0x9a, 0xbc, 0xe7, 0xb1, 0xf9, 0x9e, 0xbe, }; static const unsigned char ecdh_brainpoolp384r1_4401_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4401_sharedsecret[] = { 0x5a, 0x5a, 0x90, 0xb5, 0x9c, 0xec, 0xfb, 0x65, 0x7a, 0x7a, 0xad, 0x25, 0xc8, 0x15, 0x08, 0x7f, 0x4a, 0xc4, 0x37, 0x11, 0xe9, 0x50, 0xfd, 0xe2, 0xd0, 0xc0, 0xfa, 0xb0, 0xb8, 0x2a, 0x4a, 0xde, 0xa8, 0x4a, 0x5f, 0x23, 0xf0, 0xdb, 0x0a, 0x0c, 0x35, 0xfa, 0x55, 0x9a, 0xc0, 0x71, 0x5b, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4401 = { .name = "ecdh_brainpoolp384r1_4401", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4401_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4401_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4401_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 2055 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4402 for ECDH, tcId is 2056 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4402_peerpubkey[] = { 0x77, 0x65, 0xa6, 0x67, 0xdc, 0xb0, 0x07, 0x8a, 0x7d, 0xe2, 0xa8, 0x7c, 0x09, 0x55, 0xc1, 0x3c, 0xc4, 0xec, 0xd7, 0x95, 0xd1, 0x3b, 0xae, 0xd9, 0x30, 0xa1, 0xf3, 0xf6, 0x9d, 0xb8, 0xe2, 0x12, 0x64, 0xc6, 0x86, 0xb0, 0x35, 0x9f, 0x70, 0xa1, 0xf4, 0xc3, 0x07, 0xcf, 0x85, 0x10, 0x22, 0x43, 0x0e, 0x1c, 0x7d, 0x62, 0x29, 0xee, 0x61, 0x42, 0x2a, 0xde, 0x58, 0xff, 0x8e, 0x06, 0xad, 0x67, 0xa6, 0xbb, 0x4d, 0x66, 0xba, 0xe8, 0x1f, 0xb6, 0xb7, 0x00, 0xf6, 0x1a, 0xe2, 0x71, 0x3e, 0xfd, 0xa9, 0x53, 0x81, 0xce, 0xa3, 0x7d, 0x54, 0xbb, 0x74, 0x82, 0x46, 0xe6, 0x35, 0xef, 0xa7, 0x86, }; static const unsigned char ecdh_brainpoolp384r1_4402_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4402_sharedsecret[] = { 0x0e, 0xe9, 0x8c, 0xb0, 0x55, 0x14, 0x19, 0xfe, 0x86, 0x60, 0x7e, 0x72, 0x75, 0x5e, 0x63, 0xd4, 0x00, 0x47, 0x9a, 0x3a, 0xcb, 0x4b, 0xdf, 0xd9, 0xd8, 0x53, 0x9e, 0x53, 0x3c, 0x47, 0xb4, 0x77, 0x84, 0x10, 0xa7, 0x51, 0x6e, 0x88, 0x86, 0x73, 0x90, 0xae, 0x51, 0x1e, 0xc0, 0xc2, 0x29, 0xd1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4402 = { .name = "ecdh_brainpoolp384r1_4402", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4402_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4402_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4402_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 2056 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4403 for ECDH, tcId is 2057 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4403_peerpubkey[] = { 0x5a, 0x96, 0xc2, 0x68, 0x3d, 0xfa, 0xf1, 0x26, 0x3a, 0x2b, 0xfe, 0xa4, 0xf4, 0x19, 0xc6, 0x6f, 0x79, 0x71, 0xb7, 0x69, 0x98, 0xe4, 0x47, 0x14, 0xca, 0x1c, 0x75, 0xe9, 0x06, 0x68, 0xa2, 0x18, 0x1a, 0x3a, 0x9f, 0xfc, 0xc6, 0x57, 0x8d, 0x93, 0x4b, 0xf7, 0x27, 0x1b, 0xc7, 0x6b, 0xb9, 0x14, 0x44, 0x08, 0x28, 0xcb, 0x6a, 0x6e, 0x19, 0xd0, 0xd1, 0xd5, 0x1e, 0xc1, 0x25, 0x4d, 0x5b, 0x1c, 0x79, 0x0f, 0xcd, 0x2d, 0x86, 0x76, 0x92, 0x24, 0xaf, 0xb4, 0x40, 0x4a, 0x90, 0x96, 0x24, 0x31, 0xf8, 0x31, 0xba, 0xa3, 0xb2, 0x6a, 0x2b, 0x48, 0xad, 0xf7, 0xdf, 0xc8, 0x1d, 0x5b, 0x8d, 0x2b, }; static const unsigned char ecdh_brainpoolp384r1_4403_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4403_sharedsecret[] = { 0x33, 0xd7, 0x64, 0x98, 0x01, 0x79, 0x9b, 0x4d, 0x8c, 0x4e, 0x0f, 0xa5, 0x97, 0x6b, 0x52, 0x52, 0xde, 0x4b, 0x48, 0x89, 0x98, 0x3b, 0x5a, 0x4c, 0x76, 0xd7, 0x80, 0x90, 0xc3, 0x8a, 0x27, 0xdf, 0x20, 0x58, 0xd9, 0x05, 0x61, 0x1e, 0xae, 0x06, 0x2c, 0x75, 0xf3, 0xc8, 0xfe, 0x31, 0xa0, 0xa4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4403 = { .name = "ecdh_brainpoolp384r1_4403", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4403_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4403_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4403_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 2057 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4404 for ECDH, tcId is 2058 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4404_peerpubkey[] = { 0x46, 0xc6, 0xcc, 0x67, 0x31, 0x07, 0x14, 0x48, 0x7e, 0x26, 0x2e, 0x5e, 0xe5, 0x40, 0x79, 0xb7, 0xd0, 0xb1, 0xdc, 0x0c, 0x30, 0x01, 0xa1, 0x3f, 0x99, 0x6c, 0xaf, 0x42, 0x80, 0x18, 0xbc, 0x3f, 0x65, 0xcf, 0xce, 0x14, 0x64, 0xf3, 0xd3, 0x4a, 0x48, 0xdf, 0x1e, 0x7e, 0x4b, 0x44, 0xa8, 0xd2, 0x89, 0x76, 0x0f, 0xb4, 0x50, 0x7a, 0xff, 0xf7, 0x77, 0xaa, 0x44, 0x4f, 0x94, 0xd4, 0x52, 0xf1, 0x55, 0xe3, 0xb1, 0xaf, 0x5b, 0xda, 0x32, 0x94, 0x6f, 0xcd, 0x72, 0xb2, 0x79, 0xe7, 0xe8, 0x4f, 0xad, 0x3f, 0x45, 0x21, 0xa0, 0xd2, 0x03, 0xfa, 0x61, 0xd4, 0xaf, 0xe5, 0xd8, 0x5a, 0x2a, 0x2f, }; static const unsigned char ecdh_brainpoolp384r1_4404_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4404_sharedsecret[] = { 0x5e, 0x58, 0x9b, 0x53, 0x87, 0x4c, 0xf2, 0xa2, 0xe6, 0x0f, 0x76, 0xb4, 0xff, 0xcd, 0x04, 0xc4, 0x88, 0xea, 0x7b, 0x12, 0xe9, 0x72, 0x40, 0x00, 0x98, 0x52, 0x83, 0x7b, 0x8b, 0xca, 0xe6, 0xfb, 0x67, 0x88, 0x0e, 0x18, 0x85, 0xb1, 0xf0, 0x49, 0x14, 0xbc, 0x6f, 0x6f, 0x48, 0x29, 0x17, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4404 = { .name = "ecdh_brainpoolp384r1_4404", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4404_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4404_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4404_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 2058 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4405 for ECDH, tcId is 2059 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4405_peerpubkey[] = { 0x13, 0xdb, 0x7e, 0xe8, 0xcf, 0x1d, 0xcc, 0x6b, 0xc3, 0x7e, 0x0f, 0x5c, 0x9a, 0xa9, 0x99, 0x0c, 0xca, 0xba, 0x51, 0xfe, 0x14, 0x0c, 0x2b, 0xfc, 0x80, 0xda, 0x8b, 0x5b, 0x36, 0x53, 0x97, 0x22, 0x5f, 0xf4, 0xcc, 0xd8, 0xe1, 0x36, 0x69, 0xbf, 0xbb, 0x7d, 0xf6, 0x10, 0xcf, 0x2e, 0x07, 0xcb, 0x80, 0x5e, 0x15, 0x81, 0x36, 0x62, 0xb3, 0x6b, 0x68, 0x8a, 0xfb, 0x28, 0x23, 0x87, 0xf5, 0x8d, 0x17, 0x07, 0x45, 0xa5, 0xf7, 0x27, 0x81, 0x88, 0x80, 0x9d, 0x0f, 0x52, 0x64, 0xad, 0xd8, 0x32, 0x1b, 0x5b, 0x89, 0xb9, 0xc1, 0x62, 0xba, 0xed, 0x22, 0x51, 0xee, 0xdb, 0xcf, 0x95, 0x21, 0x4b, }; static const unsigned char ecdh_brainpoolp384r1_4405_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4405_sharedsecret[] = { 0x41, 0xb2, 0xb8, 0x9d, 0xf1, 0xb8, 0xc1, 0x93, 0xe7, 0x63, 0xca, 0x2f, 0x88, 0x6f, 0xe5, 0xc1, 0x2e, 0x8f, 0xe0, 0x85, 0xb6, 0xe8, 0x6b, 0xd5, 0x68, 0x9e, 0xb7, 0xc3, 0xa1, 0x4a, 0x46, 0x95, 0x24, 0x89, 0x7b, 0x89, 0xf2, 0x01, 0x98, 0x00, 0x39, 0xd8, 0x7d, 0x6a, 0x24, 0xa8, 0x40, 0x04, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4405 = { .name = "ecdh_brainpoolp384r1_4405", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4405_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4405_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4405_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 2059 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4406 for ECDH, tcId is 2060 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4406_peerpubkey[] = { 0x32, 0xee, 0x82, 0xa7, 0x41, 0xf7, 0x57, 0x16, 0x46, 0x27, 0x43, 0x78, 0x20, 0x26, 0xd5, 0xb9, 0xa1, 0xa0, 0x93, 0x95, 0x47, 0x44, 0x59, 0xbf, 0xbd, 0xce, 0xc0, 0xe6, 0x8e, 0x18, 0xa7, 0x06, 0x05, 0x1f, 0xa5, 0x24, 0x80, 0x2b, 0xb5, 0x6a, 0x06, 0x11, 0x56, 0x48, 0xf4, 0x40, 0x3d, 0x9c, 0x24, 0x8e, 0xbc, 0xdd, 0x7a, 0xef, 0x8a, 0x9d, 0x65, 0x10, 0xb9, 0x10, 0xf3, 0xf3, 0xe6, 0xdf, 0x65, 0x7f, 0x81, 0x18, 0xf1, 0xda, 0x97, 0x10, 0xe4, 0x6c, 0x80, 0xed, 0x3c, 0x43, 0x28, 0x0c, 0x9c, 0x06, 0x32, 0x5b, 0xb8, 0xe6, 0xfc, 0xfe, 0xc7, 0x28, 0x8a, 0x34, 0x4d, 0x6a, 0xbd, 0x4d, }; static const unsigned char ecdh_brainpoolp384r1_4406_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384r1_4406_sharedsecret[] = { 0x1b, 0xdf, 0xc2, 0xc3, 0x62, 0x29, 0xf8, 0xcb, 0xd7, 0x3d, 0x9f, 0x73, 0x22, 0xf2, 0x3f, 0x41, 0xfd, 0xcc, 0x48, 0x99, 0x70, 0xc4, 0x48, 0x7f, 0x56, 0x39, 0xfa, 0xac, 0x07, 0x55, 0x26, 0xa9, 0x3d, 0x70, 0x9c, 0xa6, 0x58, 0xca, 0x5d, 0xc4, 0x72, 0xad, 0x5a, 0x4c, 0xea, 0x5d, 0xfa, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4406 = { .name = "ecdh_brainpoolp384r1_4406", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4406_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4406_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4406_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 2060 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4407 for ECDH, tcId is 2061 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4407_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4407_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp384r1_4407_sharedsecret[] = { 0x1a, 0x13, 0x6d, 0xb8, 0x3c, 0x88, 0xec, 0x1a, 0x70, 0x5d, 0xb7, 0x0c, 0x31, 0x0e, 0x68, 0x51, 0x64, 0xac, 0xf6, 0x89, 0x0c, 0x56, 0x28, 0xfb, 0x40, 0x04, 0x52, 0x07, 0x39, 0xa3, 0x0a, 0x01, 0x55, 0x57, 0xd3, 0xd0, 0xfa, 0x86, 0x52, 0xd2, 0x6a, 0xf3, 0x62, 0x1d, 0x8c, 0xfa, 0xc5, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4407 = { .name = "ecdh_brainpoolp384r1_4407", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4407_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4407_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4407_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2061 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4408 for ECDH, tcId is 2062 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4408_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4408_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384r1_4408_sharedsecret[] = { 0x45, 0x18, 0xe5, 0x9c, 0x33, 0x25, 0xde, 0x9f, 0xf9, 0xba, 0x51, 0x76, 0xcc, 0xe0, 0x2c, 0x2f, 0xdc, 0x5d, 0x47, 0xc4, 0xd7, 0x1d, 0x7b, 0xc7, 0xf3, 0xce, 0x1a, 0x86, 0x01, 0x31, 0xf3, 0x9a, 0x00, 0xb1, 0xc9, 0x80, 0x6f, 0xe9, 0x2f, 0xee, 0xa4, 0xe1, 0x5b, 0x50, 0x5d, 0xbf, 0xa7, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4408 = { .name = "ecdh_brainpoolp384r1_4408", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4408_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4408_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4408_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2062 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4409 for ECDH, tcId is 2063 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4409_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4409_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4409_sharedsecret[] = { 0x03, 0x2c, 0xe3, 0xf0, 0x60, 0x54, 0x5b, 0xf8, 0x9e, 0x05, 0xef, 0x6c, 0xc0, 0x3f, 0x04, 0xfd, 0xaf, 0x66, 0xad, 0x01, 0xa9, 0x3c, 0xc2, 0x87, 0x67, 0x5e, 0x2a, 0xdc, 0xd6, 0x04, 0x4e, 0xca, 0x1d, 0xa4, 0x10, 0x8d, 0x91, 0xe4, 0xc2, 0x2d, 0xf2, 0x76, 0xd9, 0xad, 0x7d, 0xc2, 0x35, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4409 = { .name = "ecdh_brainpoolp384r1_4409", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4409_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4409_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4409_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2063 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4410 for ECDH, tcId is 2064 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4410_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4410_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384r1_4410_sharedsecret[] = { 0x5b, 0xf3, 0x77, 0x8b, 0xd7, 0x33, 0x5d, 0xb8, 0x43, 0xdc, 0xbf, 0x4f, 0xae, 0x46, 0xf1, 0x84, 0xb1, 0x8d, 0x95, 0xfc, 0xe6, 0xaf, 0xde, 0x98, 0xb4, 0x7f, 0x62, 0xc8, 0x9f, 0x61, 0xee, 0x64, 0xbe, 0xf7, 0xf7, 0xb2, 0x73, 0xe4, 0xb3, 0x91, 0x47, 0x1d, 0x2c, 0x33, 0xe4, 0x6b, 0xda, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4410 = { .name = "ecdh_brainpoolp384r1_4410", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4410_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4410_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4410_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2064 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4411 for ECDH, tcId is 2065 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4411_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4411_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4411_sharedsecret[] = { 0x2d, 0x57, 0x51, 0xd2, 0x84, 0x14, 0xa7, 0x3a, 0x5e, 0x20, 0x49, 0xac, 0x38, 0xc0, 0x1c, 0xbd, 0xb5, 0x92, 0xe9, 0x0a, 0xd4, 0xf1, 0xf2, 0x16, 0x8c, 0x9a, 0xde, 0x2b, 0x8c, 0xa3, 0x36, 0xbc, 0x96, 0x5e, 0xe7, 0xb8, 0xcd, 0xd6, 0x32, 0x07, 0xb3, 0xa8, 0x76, 0x8c, 0x81, 0xfd, 0xae, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4411 = { .name = "ecdh_brainpoolp384r1_4411", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4411_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4411_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4411_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2065 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4412 for ECDH, tcId is 2066 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4412_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4412_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x0f, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4412_sharedsecret[] = { 0x1c, 0xa7, 0x53, 0xeb, 0x1a, 0x6f, 0x3a, 0x73, 0x5f, 0x45, 0x9a, 0x26, 0xc1, 0x1c, 0x1c, 0x6f, 0x52, 0x3d, 0x40, 0x91, 0x8a, 0x41, 0xb1, 0x19, 0x3b, 0x93, 0x42, 0xe0, 0xcd, 0x81, 0xc4, 0x0a, 0x62, 0x5c, 0x4c, 0x9c, 0xbb, 0x4d, 0x87, 0x5b, 0x55, 0xdb, 0x49, 0x8b, 0x37, 0x0b, 0x7b, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4412 = { .name = "ecdh_brainpoolp384r1_4412", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4412_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4412_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4412_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2066 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4413 for ECDH, tcId is 2067 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4413_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4413_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x78, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4413_sharedsecret[] = { 0x4b, 0xe8, 0xf1, 0x6a, 0xe1, 0xff, 0x3c, 0xdb, 0x12, 0x0f, 0x32, 0xc0, 0x8e, 0x0a, 0x1c, 0x2c, 0x17, 0x8e, 0x2d, 0xd7, 0xd9, 0xbe, 0xba, 0x9f, 0xd1, 0x7b, 0xab, 0x19, 0x94, 0xb4, 0x4e, 0x21, 0x07, 0xaa, 0x24, 0x8d, 0xa4, 0xa1, 0x8d, 0x45, 0x61, 0x28, 0x91, 0xbd, 0x8a, 0x59, 0x9b, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4413 = { .name = "ecdh_brainpoolp384r1_4413", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4413_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4413_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4413_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2067 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4414 for ECDH, tcId is 2068 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4414_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4414_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x80, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4414_sharedsecret[] = { 0x7b, 0x96, 0x79, 0xe9, 0xef, 0x47, 0x70, 0x0a, 0x48, 0x4d, 0x65, 0x63, 0x7a, 0x03, 0x83, 0x4a, 0x2f, 0xa8, 0x55, 0x7d, 0xaf, 0xe5, 0xf4, 0x70, 0xe4, 0x74, 0x7b, 0xf5, 0xac, 0x30, 0x8e, 0xc5, 0x3b, 0x16, 0xf8, 0x37, 0x89, 0xee, 0x63, 0xab, 0xd0, 0xae, 0x70, 0x78, 0x42, 0x24, 0x40, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4414 = { .name = "ecdh_brainpoolp384r1_4414", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4414_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4414_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4414_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2068 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4415 for ECDH, tcId is 2069 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4415_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4415_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x01, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4415_sharedsecret[] = { 0x67, 0x8f, 0xe1, 0x0e, 0x74, 0xbc, 0xb4, 0x5a, 0xcc, 0x01, 0x46, 0x33, 0x44, 0x18, 0xc1, 0xff, 0x75, 0x12, 0x81, 0x5f, 0x05, 0x14, 0x6c, 0xcc, 0xc1, 0x47, 0xa7, 0x33, 0x24, 0xde, 0x04, 0xc5, 0x8c, 0xb8, 0x7c, 0xbb, 0x00, 0x73, 0x5c, 0xdc, 0x26, 0x95, 0xe7, 0x60, 0x39, 0x98, 0xa0, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4415 = { .name = "ecdh_brainpoolp384r1_4415", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4415_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4415_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4415_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2069 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4416 for ECDH, tcId is 2070 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4416_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4416_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x2f, }; static const unsigned char ecdh_brainpoolp384r1_4416_sharedsecret[] = { 0x37, 0x29, 0xbc, 0xd2, 0x15, 0xb4, 0x1c, 0x65, 0x8b, 0x83, 0x26, 0x86, 0xc8, 0x13, 0x62, 0xb3, 0x48, 0x5d, 0x75, 0xb0, 0x94, 0x78, 0xc6, 0xdd, 0xe3, 0xb5, 0xe2, 0x78, 0x56, 0x4e, 0xf4, 0x16, 0x2b, 0xdd, 0x6f, 0xf6, 0x5a, 0xfc, 0x6e, 0x82, 0x13, 0xbb, 0xa9, 0xb6, 0xc5, 0x4b, 0xa1, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4416 = { .name = "ecdh_brainpoolp384r1_4416", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4416_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4416_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4416_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2070 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4417 for ECDH, tcId is 2071 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4417_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4417_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x4f, }; static const unsigned char ecdh_brainpoolp384r1_4417_sharedsecret[] = { 0x12, 0xba, 0x46, 0x22, 0xda, 0xf1, 0xf2, 0xf9, 0x50, 0xaa, 0xd6, 0xd5, 0x4a, 0xaa, 0xb8, 0x21, 0x88, 0x5a, 0x47, 0xa9, 0x85, 0x73, 0xaf, 0xea, 0x49, 0xbc, 0x18, 0x96, 0x04, 0x1e, 0xe9, 0x50, 0x1a, 0xce, 0xf8, 0x28, 0x10, 0xf3, 0x75, 0x5f, 0xf2, 0x84, 0xe1, 0x66, 0x65, 0xbd, 0x0f, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4417 = { .name = "ecdh_brainpoolp384r1_4417", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4417_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4417_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4417_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2071 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4418 for ECDH, tcId is 2072 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4418_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4418_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x5f, }; static const unsigned char ecdh_brainpoolp384r1_4418_sharedsecret[] = { 0x7f, 0xb5, 0x39, 0x85, 0x19, 0x85, 0x7f, 0x2c, 0x17, 0xcd, 0xdd, 0x0a, 0x9d, 0x2c, 0x16, 0x60, 0xac, 0x35, 0xb4, 0x72, 0x3e, 0x4a, 0x04, 0x9b, 0xa5, 0xc5, 0x8c, 0x45, 0x8b, 0x74, 0x2d, 0xfa, 0x81, 0x3a, 0x5c, 0x71, 0x75, 0xe1, 0xc0, 0x97, 0x4b, 0x51, 0x4b, 0xfa, 0xeb, 0x00, 0x39, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4418 = { .name = "ecdh_brainpoolp384r1_4418", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4418_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4418_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4418_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2072 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4419 for ECDH, tcId is 2073 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4419_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4419_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const unsigned char ecdh_brainpoolp384r1_4419_sharedsecret[] = { 0x1a, 0x13, 0x6d, 0xb8, 0x3c, 0x88, 0xec, 0x1a, 0x70, 0x5d, 0xb7, 0x0c, 0x31, 0x0e, 0x68, 0x51, 0x64, 0xac, 0xf6, 0x89, 0x0c, 0x56, 0x28, 0xfb, 0x40, 0x04, 0x52, 0x07, 0x39, 0xa3, 0x0a, 0x01, 0x55, 0x57, 0xd3, 0xd0, 0xfa, 0x86, 0x52, 0xd2, 0x6a, 0xf3, 0x62, 0x1d, 0x8c, 0xfa, 0xc5, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4419 = { .name = "ecdh_brainpoolp384r1_4419", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4419_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4419_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4419_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2073 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4420 for ECDH, tcId is 2074 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4420_peerpubkey[] = { 0x09, 0xd8, 0x97, 0xb6, 0xd1, 0x45, 0x2a, 0x2f, 0x91, 0xc4, 0xc3, 0x7f, 0xbb, 0x06, 0xd8, 0x2f, 0x9e, 0xbf, 0x72, 0x22, 0x98, 0xca, 0xfb, 0x13, 0x5e, 0x58, 0x2c, 0xde, 0xd3, 0xe3, 0x21, 0x00, 0x33, 0xe4, 0xcd, 0x07, 0x70, 0x3c, 0x34, 0xac, 0xf3, 0x6b, 0xa7, 0x2b, 0x40, 0x1c, 0x30, 0xbf, 0x03, 0xb1, 0x61, 0xaf, 0x6e, 0x11, 0x30, 0x9a, 0x11, 0x22, 0x14, 0x5c, 0x43, 0x19, 0x96, 0x04, 0x7a, 0x7e, 0x78, 0x08, 0xcf, 0x83, 0x14, 0xb6, 0xec, 0x37, 0xc6, 0x1a, 0x81, 0x7d, 0x08, 0xc7, 0xd0, 0x0c, 0x8c, 0x7b, 0x5d, 0x25, 0x8f, 0x26, 0x74, 0x37, 0x8c, 0x83, 0x2f, 0x68, 0x2e, 0xdf, }; static const unsigned char ecdh_brainpoolp384r1_4420_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const unsigned char ecdh_brainpoolp384r1_4420_sharedsecret[] = { 0x0f, 0x0a, 0x1d, 0x20, 0xba, 0x6a, 0x7b, 0x2c, 0x48, 0x15, 0x4b, 0x43, 0x87, 0x0b, 0xe4, 0x89, 0x09, 0x79, 0xd9, 0x26, 0x19, 0x50, 0x73, 0x6d, 0xe9, 0x6c, 0x29, 0xf3, 0x71, 0x23, 0x3b, 0x1e, 0xf9, 0x4a, 0x79, 0xc2, 0xab, 0x69, 0x88, 0x68, 0xf0, 0x0c, 0xea, 0x7e, 0x91, 0x2d, 0xeb, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4420 = { .name = "ecdh_brainpoolp384r1_4420", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4420_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4420_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4420_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2074 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4421 for ECDH, tcId is 2075 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4421_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4421_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4421 = { .name = "ecdh_brainpoolp384r1_4421", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4421_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4421_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2075 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4422 for ECDH, tcId is 2076 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4422_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_4422_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4422 = { .name = "ecdh_brainpoolp384r1_4422", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4422_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4422_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2076 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4423 for ECDH, tcId is 2077 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4423_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_4423_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4423 = { .name = "ecdh_brainpoolp384r1_4423", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4423_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4423_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2077 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4424 for ECDH, tcId is 2078 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4424_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_4424_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4424 = { .name = "ecdh_brainpoolp384r1_4424", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4424_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4424_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2078 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4425 for ECDH, tcId is 2079 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4425_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4425_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4425 = { .name = "ecdh_brainpoolp384r1_4425", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4425_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4425_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2079 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4426 for ECDH, tcId is 2080 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4426_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_4426_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4426 = { .name = "ecdh_brainpoolp384r1_4426", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4426_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4426_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2080 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4427 for ECDH, tcId is 2081 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4427_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_4427_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4427 = { .name = "ecdh_brainpoolp384r1_4427", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4427_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4427_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2081 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4428 for ECDH, tcId is 2082 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4428_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_4428_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4428 = { .name = "ecdh_brainpoolp384r1_4428", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4428_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4428_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2082 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4429 for ECDH, tcId is 2083 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4429_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4429_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4429 = { .name = "ecdh_brainpoolp384r1_4429", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4429_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4429_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2083 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4430 for ECDH, tcId is 2084 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4430_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_4430_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4430 = { .name = "ecdh_brainpoolp384r1_4430", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4430_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4430_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2084 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4431 for ECDH, tcId is 2085 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4431_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_4431_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4431 = { .name = "ecdh_brainpoolp384r1_4431", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4431_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4431_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2085 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4432 for ECDH, tcId is 2086 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4432_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_4432_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4432 = { .name = "ecdh_brainpoolp384r1_4432", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4432_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4432_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2086 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4433 for ECDH, tcId is 2087 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4433_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4433_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4433 = { .name = "ecdh_brainpoolp384r1_4433", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4433_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4433_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2087 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4434 for ECDH, tcId is 2088 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4434_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384r1_4434_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4434 = { .name = "ecdh_brainpoolp384r1_4434", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4434_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4434_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2088 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4435 for ECDH, tcId is 2089 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4435_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384r1_4435_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4435 = { .name = "ecdh_brainpoolp384r1_4435", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4435_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4435_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2089 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4436 for ECDH, tcId is 2090 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4436_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384r1_4436_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4436 = { .name = "ecdh_brainpoolp384r1_4436", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4436_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4436_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2090 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4437 for ECDH, tcId is 2092 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4437_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xca, }; static const unsigned char ecdh_brainpoolp384r1_4437_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4437 = { .name = "ecdh_brainpoolp384r1_4437", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4437_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4437_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2092 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4438 for ECDH, tcId is 2093 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4438_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384r1_4438_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4438 = { .name = "ecdh_brainpoolp384r1_4438", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4438_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4438_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2093 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4439 for ECDH, tcId is 2096 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4439_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4439_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4439_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4439 = { .name = "ecdh_brainpoolp384r1_4439", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4439_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4439_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4439_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 1, tcId is 2096 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4440 for ECDH, tcId is 2097 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4440_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4440_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4440_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4440 = { .name = "ecdh_brainpoolp384r1_4440", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4440_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4440_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4440_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 5042941954480324912133914614639385831494842746066313376667826733277554507683616955290244686736004252971522, tcId is 2097 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4441 for ECDH, tcId is 2098 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4441_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4441_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4441_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4441 = { .name = "ecdh_brainpoolp384r1_4441", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4441_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4441_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4441_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator = (0,0), tcId is 2098 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4442 for ECDH, tcId is 2099 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4442_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4442_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4442_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4442 = { .name = "ecdh_brainpoolp384r1_4442", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4442_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4442_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4442_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator not on curve, tcId is 2099 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4443 for ECDH, tcId is 2102 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4443_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4443_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4443_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4443 = { .name = "ecdh_brainpoolp384r1_4443", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4443_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4443_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4443_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = 2, tcId is 2102 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4444 for ECDH, tcId is 2104 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4444_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4444_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4444_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4444 = { .name = "ecdh_brainpoolp384r1_4444", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4444_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4444_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4444_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = None, tcId is 2104 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4445 for ECDH, tcId is 2109 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4445_peerpubkey[] = { 0x2b, 0xaa, 0xb7, 0x8f, 0x31, 0x33, 0xb6, 0x23, 0x2a, 0xf7, 0x60, 0x86, 0x2a, 0x26, 0x26, 0x91, 0xb0, 0xa1, 0x3e, 0x2f, 0x82, 0x33, 0xac, 0xb4, 0xc1, 0x2d, 0x0d, 0xd2, 0x7f, 0xcb, 0x23, 0x3e, 0xf1, 0xaf, 0x75, 0x6c, 0x1a, 0x5c, 0xd4, 0x4d, 0x91, 0xf7, 0x0e, 0x40, 0xd5, 0x41, 0x46, 0x6b, 0x50, 0xc9, 0x25, 0x27, 0x42, 0x3b, 0x71, 0xb5, 0x94, 0x08, 0x81, 0xe0, 0x67, 0x1e, 0x9f, 0x92, 0x5f, 0x05, 0xb3, 0xd3, 0x2c, 0x73, 0xd6, 0xd9, 0x06, 0x7d, 0xc7, 0x58, 0x56, 0x22, 0xc3, 0x54, 0xdc, 0xa0, 0x36, 0xd5, 0xc3, 0xf5, 0xd8, 0xe3, 0xee, 0x9e, 0xb6, 0x7f, 0xeb, 0xd1, 0xf3, 0xc8, }; static const unsigned char ecdh_brainpoolp384r1_4445_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const unsigned char ecdh_brainpoolp384r1_4445_sharedsecret[] = { 0x04, 0x36, 0x54, 0x6a, 0x2e, 0x9b, 0xb7, 0x1b, 0x70, 0xde, 0x8c, 0xd5, 0x3d, 0xde, 0x90, 0x33, 0x6b, 0xa9, 0x2b, 0x6c, 0x98, 0x11, 0xc0, 0xdf, 0xf3, 0x13, 0x7b, 0x2b, 0xc0, 0x6b, 0xde, 0x98, 0xce, 0x2d, 0xb7, 0x05, 0xa9, 0xfd, 0x1b, 0xd4, 0xd6, 0x2c, 0x2c, 0xe4, 0xb5, 0x8e, 0xe5, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4445 = { .name = "ecdh_brainpoolp384r1_4445", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4445_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4445_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384r1_4445_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "a = 0, tcId is 2109 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4446 for ECDH, tcId is 2111 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4446_peerpubkey[] = { 0x6a, 0x2a, 0xac, 0x18, 0x63, 0x56, 0xf6, 0x87, 0x86, 0xc8, 0xca, 0x5b, 0xe5, 0xe5, 0x6c, 0x95, 0x1d, 0x29, 0x92, 0x56, 0x1b, 0xbd, 0x09, 0x4d, 0x67, 0x96, 0x73, 0x0f, 0xf6, 0x7b, 0x33, 0x24, 0x9a, 0x93, 0xa5, 0x34, 0x55, 0xf8, 0x29, 0x1e, 0x11, 0x21, 0x99, 0xa1, 0x0f, 0xa7, 0xfd, 0x2d, 0x8c, 0x4b, 0x85, 0xd6, 0x44, 0x68, 0x87, 0x24, 0xdf, 0xd1, 0x72, 0x6f, 0x1e, 0x36, 0x84, 0x55, 0xe5, 0xeb, 0x30, 0x0f, 0x47, 0x9a, 0x2f, 0xfc, 0x55, 0x6c, 0x53, 0xbc, 0xe3, 0xee, 0x3b, 0x7d, 0x52, 0x2d, 0xb8, 0x13, 0x03, 0xea, 0x97, 0xff, 0x13, 0xf6, 0xe7, 0xf2, 0x81, 0x2b, 0x1e, 0xbb, }; static const unsigned char ecdh_brainpoolp384r1_4446_privkey[] = { 0x86, 0x8e, 0xd4, 0xed, 0x8c, 0x88, 0xe8, 0xee, 0x4c, 0xe2, 0x84, 0x86, 0x11, 0x0e, 0x7f, 0xd3, 0x1a, 0x39, 0x2d, 0x09, 0x91, 0xdf, 0x91, 0x53, 0xa5, 0xaf, 0x62, 0x4d, 0x6c, 0x3f, 0xf2, 0x5b, 0xdc, 0xe1, 0xec, 0xc4, 0x72, 0xc9, 0xcd, 0x1c, 0xd2, 0xfc, 0x8e, 0x40, 0xaf, 0xbf, 0xa0, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4446 = { .name = "ecdh_brainpoolp384r1_4446", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4446_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4446_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP384t1, tcId is 2111 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4447 for ECDH, tcId is 2114 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4447_peerpubkey[] = { 0x59, 0xe0, 0xd3, 0xa3, 0x9a, 0x02, 0x51, 0xcc, 0x1b, 0xcd, 0xe0, 0x5e, 0x33, 0x0e, 0x6e, 0xe8, 0xa2, 0x4a, 0x21, 0x75, 0xb8, 0x5f, 0x67, 0xee, 0xc5, 0x4d, 0x2f, 0x4c, 0x82, 0xd9, 0x65, 0x50, 0x13, 0xbd, 0x53, 0xd4, 0xb4, 0xaa, 0xf5, 0x37, 0x74, 0x9e, 0x62, 0x3c, 0x19, 0x49, 0x79, 0x50, 0x4e, 0x6a, 0xbb, 0xa9, 0x54, 0x70, 0x65, 0xce, 0x75, 0x9e, 0x95, 0x28, 0x2e, 0xdd, 0x69, 0x0c, 0x56, 0x9d, 0xdb, 0xda, 0xe4, 0x60, 0xb6, 0x07, 0x51, 0x07, 0x15, 0xba, 0x17, 0xdc, 0x43, 0x23, 0x14, 0x4d, 0x94, 0x92, 0xd6, 0x5d, 0x0c, 0x0f, 0xc1, 0xa9, 0x3f, 0xc9, 0x2b, 0x34, 0xaf, 0x08, }; static const unsigned char ecdh_brainpoolp384r1_4447_privkey[] = { 0x8c, 0x3b, 0xc6, 0x58, 0xc0, 0xb6, 0x1a, 0x0c, 0xc1, 0xc4, 0x68, 0xe8, 0x68, 0xa4, 0xd0, 0xd0, 0xb2, 0xca, 0xeb, 0xf3, 0x50, 0xcc, 0x35, 0x5d, 0xb9, 0xf3, 0xb5, 0xe1, 0x6b, 0x54, 0xdb, 0x12, 0x0e, 0xc0, 0x07, 0xfb, 0xf6, 0x83, 0xf5, 0xb0, 0x30, 0x1a, 0x81, 0x22, 0x1c, 0x9c, 0xba, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4447 = { .name = "ecdh_brainpoolp384r1_4447", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4447_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4447_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 2114 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4448 for ECDH, tcId is 2125 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4448_peerpubkey[] = { 0x11, 0x14, 0x42, 0x03, 0xa5, 0x58, 0x05, 0x01, 0xcf, 0x22, 0x29, 0x96, 0x72, 0x82, 0x25, 0x1f, 0x35, 0xcc, 0x66, 0xeb, 0xb9, 0x78, 0xc8, 0xc5, 0xdf, 0x82, 0x1b, 0x11, 0xe3, 0x6f, 0x95, 0xd6, 0xba, 0xc1, 0xc6, 0xf9, 0x7b, 0x8e, 0x8d, 0x02, 0x6e, 0x88, 0xcc, 0x2a, 0x24, 0xfe, 0xc1, 0x6b, 0x43, 0x71, 0x4b, 0x10, 0xba, 0xa0, 0x62, 0xa0, 0x67, 0x12, 0x89, 0x87, 0x30, 0x54, 0x8a, 0x9a, 0x22, 0x90, 0xa9, 0x84, 0xef, 0x9a, 0x85, 0xd2, 0xef, 0xf1, 0x28, 0x90, 0x1d, 0xc0, 0xf1, 0x6b, 0xc5, 0x72, 0x31, 0xd2, 0x1d, 0xe6, 0x5e, 0x42, 0xf8, 0x4e, 0x42, 0xa4, 0x09, 0x42, 0x8e, 0xeb, }; static const unsigned char ecdh_brainpoolp384r1_4448_privkey[] = { 0x8c, 0x3b, 0xc6, 0x58, 0xc0, 0xb6, 0x1a, 0x0c, 0xc1, 0xc4, 0x68, 0xe8, 0x68, 0xa4, 0xd0, 0xd0, 0xb2, 0xca, 0xeb, 0xf3, 0x50, 0xcc, 0x35, 0x5d, 0xb9, 0xf3, 0xb5, 0xe1, 0x6b, 0x54, 0xdb, 0x12, 0x0e, 0xc0, 0x07, 0xfb, 0xf6, 0x83, 0xf5, 0xb0, 0x30, 0x1a, 0x81, 0x22, 0x1c, 0x9c, 0xba, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4448 = { .name = "ecdh_brainpoolp384r1_4448", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4448_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4448_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384t1, tcId is 2125 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4449 for ECDH, tcId is 2127 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4449_peerpubkey[] = { 0x66, 0xb8, 0x7a, 0x19, 0xf4, 0x7d, 0x77, 0x21, 0x30, 0x85, 0x5c, 0x64, 0xf1, 0xc1, 0xe4, 0x45, 0xb1, 0x9d, 0xe6, 0xf9, 0x17, 0xbb, 0x1c, 0x74, 0x19, 0x8e, 0xcd, 0xa9, 0x24, 0x71, 0x4d, 0x8c, 0x48, 0xe0, 0xcb, 0xea, 0xa7, 0x17, 0x45, 0x34, 0x08, 0xc3, 0x1c, 0x22, 0x0a, 0x67, 0x76, 0x93, }; static const unsigned char ecdh_brainpoolp384r1_4449_privkey[] = { 0x3c, 0x9f, 0x97, 0x0f, 0x25, 0xe6, 0x95, 0x1b, 0x29, 0x53, 0xdc, 0x37, 0xf5, 0x45, 0x8d, 0x5e, 0x11, 0x17, 0x6f, 0xb7, 0x94, 0xbb, 0x44, 0x3c, 0x67, 0x7a, 0xb6, 0x63, 0x8d, 0x00, 0x8e, 0xb3, 0x5a, 0xcf, 0xe8, 0x5d, 0x09, 0xfe, 0x70, 0x40, 0x0c, 0xd5, 0x2b, 0xb4, 0x7d, 0xa1, 0x3e, 0x88, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4449 = { .name = "ecdh_brainpoolp384r1_4449", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4449_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4449_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2127 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4450 for ECDH, tcId is 2128 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4450_peerpubkey[] = { 0x87, 0x86, 0x63, 0xe0, 0xdb, 0x7b, 0x8f, 0x0b, 0xf1, 0xf6, 0xf2, 0x4f, 0x15, 0x16, 0x0f, 0x05, 0x89, 0xda, 0x8f, 0x8f, 0x92, 0xec, 0x00, 0x0a, 0x57, 0x65, 0x73, 0x21, 0xc6, 0xe3, 0xc4, 0xec, 0x84, 0x5c, 0x97, 0x53, 0x6f, 0xd1, 0x0c, 0xad, 0x1a, 0xdc, 0x6e, 0x13, 0x41, 0x96, 0x8d, 0xd0, }; static const unsigned char ecdh_brainpoolp384r1_4450_privkey[] = { 0x84, 0xa6, 0xfb, 0x1f, 0x3f, 0x3c, 0x58, 0x3d, 0x09, 0x22, 0x49, 0x65, 0xf5, 0xa9, 0x6d, 0x7f, 0xb9, 0xb4, 0x4b, 0xfd, 0xaa, 0x15, 0xd0, 0x2a, 0x5c, 0xf7, 0xc9, 0x0e, 0x32, 0x11, 0x78, 0x01, 0x8a, 0x5c, 0xde, 0xe9, 0x3f, 0x61, 0x4e, 0xad, 0x73, 0x16, 0x92, 0xe7, 0x19, 0x18, 0xdb, 0xf3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4450 = { .name = "ecdh_brainpoolp384r1_4450", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4450_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4450_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2128 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4451 for ECDH, tcId is 2129 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4451_peerpubkey[] = { 0x86, 0x7e, 0x44, 0xd4, 0x86, 0x46, 0x5a, 0x25, 0xb8, 0x27, 0x99, 0x2e, 0x1d, 0xe4, 0x0c, 0xd6, 0xea, 0xa2, 0x76, 0xab, 0xbc, 0xaa, 0x85, 0x2d, 0xb4, 0x23, 0x4b, 0xb3, 0xc5, 0xfa, 0x9f, 0x1c, 0x69, 0x56, 0xda, 0xf8, 0x46, 0x84, 0x5f, 0xe4, 0x86, 0x2c, 0x02, 0x58, 0x82, 0x87, 0x87, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_4451_privkey[] = { 0x58, 0xc9, 0xaf, 0xa8, 0x2e, 0x35, 0xc6, 0x43, 0x57, 0xc1, 0x3f, 0x5f, 0x2e, 0xfc, 0x4f, 0x9c, 0xbd, 0x0e, 0x65, 0xf7, 0x18, 0xe7, 0x0a, 0x9c, 0x6c, 0x77, 0xe7, 0x3b, 0xd7, 0xf9, 0x05, 0xab, 0x7d, 0xff, 0xc4, 0xc8, 0x23, 0x16, 0xa8, 0x87, 0xe1, 0xbd, 0x62, 0x5f, 0xa4, 0xfb, 0x71, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4451 = { .name = "ecdh_brainpoolp384r1_4451", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4451_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4451_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2129 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4452 for ECDH, tcId is 2130 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4452_peerpubkey[] = { 0x04, 0x18, 0x49, 0x13, 0x9e, 0x19, 0x17, 0x47, 0xf1, 0x5e, 0x6b, 0x8f, 0x92, 0x46, 0x2e, 0x73, 0x1a, 0xe0, 0xc5, 0x7c, 0x40, 0x8b, 0x1e, 0x12, 0xab, 0x1b, 0xff, 0xe4, 0x34, 0x08, 0x10, 0x33, 0x78, 0x0b, 0x92, 0xb5, 0xac, 0x81, 0x86, 0x22, 0x63, 0x11, 0x7a, 0x08, 0x36, 0xd1, 0x80, 0xf5, }; static const unsigned char ecdh_brainpoolp384r1_4452_privkey[] = { 0x0c, 0x7b, 0x75, 0x97, 0xb1, 0xfc, 0x8f, 0x4f, 0x69, 0xb9, 0x0c, 0xb1, 0x64, 0xa4, 0x29, 0x5d, 0xd5, 0xb8, 0xbb, 0x3d, 0x7f, 0xee, 0x45, 0x88, 0xfc, 0xee, 0x79, 0xf2, 0xfa, 0x62, 0xc0, 0x7c, 0x2c, 0xc3, 0x5a, 0xc6, 0x87, 0x14, 0x38, 0x9e, 0x17, 0xc3, 0xa4, 0xb8, 0xe8, 0xa0, 0x7d, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4452 = { .name = "ecdh_brainpoolp384r1_4452", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4452_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4452_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2130 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4453 for ECDH, tcId is 2131 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4453_peerpubkey[] = { 0x04, 0x18, 0x49, 0x13, 0x9e, 0x19, 0x17, 0x47, 0xf1, 0x5e, 0x6b, 0x8f, 0x92, 0x46, 0x2e, 0x73, 0x1a, 0xe0, 0xc5, 0x7c, 0x40, 0x8b, 0x1e, 0x12, 0xab, 0x1b, 0xff, 0xe4, 0x34, 0x08, 0x10, 0x33, 0x78, 0x0b, 0x92, 0xb5, 0xac, 0x81, 0x86, 0x22, 0x63, 0x11, 0x7a, 0x08, 0x36, 0xd1, 0x80, 0xf5, }; static const unsigned char ecdh_brainpoolp384r1_4453_privkey[] = { 0x0c, 0x7b, 0x75, 0x97, 0xb1, 0xfc, 0x8f, 0x4f, 0x69, 0xb9, 0x0c, 0xb1, 0x64, 0xa4, 0x29, 0x5d, 0xd5, 0xb8, 0xbb, 0x3d, 0x7f, 0xee, 0x45, 0x88, 0xfc, 0xee, 0x79, 0xf2, 0xfa, 0x62, 0xc0, 0x7c, 0x2c, 0xc3, 0x5a, 0xc6, 0x87, 0x14, 0x38, 0x9e, 0x17, 0xc3, 0xa4, 0xb8, 0xe8, 0xa0, 0x7d, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4453 = { .name = "ecdh_brainpoolp384r1_4453", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4453_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4453_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2131 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4454 for ECDH, tcId is 2132 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4454_peerpubkey[] = { 0x86, 0x7e, 0x44, 0xd4, 0x86, 0x46, 0x5a, 0x25, 0xb8, 0x27, 0x99, 0x2e, 0x1d, 0xe4, 0x0c, 0xd6, 0xea, 0xa2, 0x76, 0xab, 0xbc, 0xaa, 0x85, 0x2d, 0xb4, 0x23, 0x4b, 0xb3, 0xc5, 0xfa, 0x9f, 0x1c, 0x69, 0x56, 0xda, 0xf8, 0x46, 0x84, 0x5f, 0xe4, 0x86, 0x2c, 0x02, 0x58, 0x82, 0x87, 0x87, 0x83, }; static const unsigned char ecdh_brainpoolp384r1_4454_privkey[] = { 0x58, 0xc9, 0xaf, 0xa8, 0x2e, 0x35, 0xc6, 0x43, 0x57, 0xc1, 0x3f, 0x5f, 0x2e, 0xfc, 0x4f, 0x9c, 0xbd, 0x0e, 0x65, 0xf7, 0x18, 0xe7, 0x0a, 0x9c, 0x6c, 0x77, 0xe7, 0x3b, 0xd7, 0xf9, 0x05, 0xab, 0x7d, 0xff, 0xc4, 0xc8, 0x23, 0x16, 0xa8, 0x87, 0xe1, 0xbd, 0x62, 0x5f, 0xa4, 0xfb, 0x71, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4454 = { .name = "ecdh_brainpoolp384r1_4454", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4454_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4454_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2132 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4455 for ECDH, tcId is 2133 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4455_peerpubkey[] = { 0x87, 0x86, 0x63, 0xe0, 0xdb, 0x7b, 0x8f, 0x0b, 0xf1, 0xf6, 0xf2, 0x4f, 0x15, 0x16, 0x0f, 0x05, 0x89, 0xda, 0x8f, 0x8f, 0x92, 0xec, 0x00, 0x0a, 0x57, 0x65, 0x73, 0x21, 0xc6, 0xe3, 0xc4, 0xec, 0x84, 0x5c, 0x97, 0x53, 0x6f, 0xd1, 0x0c, 0xad, 0x1a, 0xdc, 0x6e, 0x13, 0x41, 0x96, 0x8d, 0xd0, }; static const unsigned char ecdh_brainpoolp384r1_4455_privkey[] = { 0x84, 0xa6, 0xfb, 0x1f, 0x3f, 0x3c, 0x58, 0x3d, 0x09, 0x22, 0x49, 0x65, 0xf5, 0xa9, 0x6d, 0x7f, 0xb9, 0xb4, 0x4b, 0xfd, 0xaa, 0x15, 0xd0, 0x2a, 0x5c, 0xf7, 0xc9, 0x0e, 0x32, 0x11, 0x78, 0x01, 0x8a, 0x5c, 0xde, 0xe9, 0x3f, 0x61, 0x4e, 0xad, 0x73, 0x16, 0x92, 0xe7, 0x19, 0x18, 0xdb, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4455 = { .name = "ecdh_brainpoolp384r1_4455", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4455_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4455_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2133 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4456 for ECDH, tcId is 2134 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4456_peerpubkey[] = { 0x7d, 0x96, 0x5d, 0x60, 0x4a, 0xad, 0x48, 0x77, 0x4b, 0x0c, 0x68, 0xab, 0xb9, 0xfe, 0xbf, 0xf3, 0xca, 0xb8, 0x18, 0xea, 0x48, 0x90, 0xbc, 0xb6, 0x16, 0x93, 0x85, 0x56, 0x82, 0x8a, 0xb7, 0x7d, 0xea, 0x4a, 0x08, 0x47, 0xad, 0x8d, 0x61, 0xeb, 0x43, 0xd8, 0x45, 0xc9, 0xec, 0x24, 0x1c, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_4456_privkey[] = { 0x37, 0xfb, 0x98, 0x4a, 0x7a, 0x82, 0x1d, 0x5a, 0x36, 0x60, 0xa9, 0x51, 0xb1, 0x9f, 0x88, 0xb2, 0xa9, 0x5d, 0xfc, 0x68, 0x84, 0xe0, 0x29, 0xbc, 0x5d, 0x99, 0x25, 0x1d, 0x9b, 0x2d, 0x1f, 0xf8, 0x8c, 0x57, 0xe0, 0xf9, 0xda, 0xb9, 0x4b, 0xd0, 0xfa, 0x13, 0x22, 0x1a, 0x15, 0x40, 0xca, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4456 = { .name = "ecdh_brainpoolp384r1_4456", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4456_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4456_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2134 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4457 for ECDH, tcId is 2135 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4457_peerpubkey[] = { 0x11, 0x45, 0x5b, 0x9d, 0x35, 0x69, 0x78, 0x75, 0x15, 0x48, 0xed, 0x9b, 0xa3, 0x61, 0xf6, 0x72, 0xc4, 0x02, 0x15, 0xfe, 0x87, 0x3e, 0x5b, 0x27, 0x77, 0x0e, 0xce, 0x7d, 0x60, 0x70, 0x1f, 0xbf, 0x07, 0xe3, 0xf9, 0x5a, 0xb3, 0x88, 0x57, 0xeb, 0x87, 0x85, 0xde, 0x02, 0xb6, 0x9c, 0x35, 0x6c, }; static const unsigned char ecdh_brainpoolp384r1_4457_privkey[] = { 0x5e, 0x7b, 0xa1, 0xf7, 0x81, 0x20, 0x05, 0x95, 0x32, 0x91, 0xc6, 0xe5, 0xa7, 0x23, 0x6a, 0xbf, 0x5d, 0xcb, 0x32, 0xad, 0xdc, 0x97, 0xfa, 0x40, 0xd0, 0x6a, 0x6f, 0xc7, 0xa2, 0xa1, 0x99, 0x9a, 0x93, 0xb1, 0xd2, 0x24, 0xef, 0x85, 0xe3, 0x32, 0x7d, 0x7d, 0x2b, 0x3f, 0x7d, 0x90, 0x9e, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4457 = { .name = "ecdh_brainpoolp384r1_4457", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4457_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4457_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2135 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4458 for ECDH, tcId is 2136 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4458_peerpubkey[] = { 0x53, 0x49, 0x86, 0x01, 0x44, 0xee, 0x64, 0x85, 0x9a, 0x8b, 0x01, 0x74, 0xc9, 0x5e, 0x5f, 0x91, 0xf3, 0x57, 0xcd, 0x38, 0xb2, 0x6d, 0x2b, 0xaf, 0xeb, 0x49, 0xdb, 0xd9, 0x12, 0xcd, 0x48, 0x04, 0xf1, 0xdc, 0x04, 0xc0, 0x70, 0x71, 0x99, 0xe1, 0x13, 0x08, 0x9f, 0x1d, 0xf2, 0x53, 0xa6, 0x29, }; static const unsigned char ecdh_brainpoolp384r1_4458_privkey[] = { 0x6f, 0xc5, 0x80, 0x97, 0x44, 0x37, 0x28, 0x3e, 0xa6, 0x08, 0x99, 0xaa, 0x7d, 0x4c, 0x81, 0x7e, 0xa8, 0x1d, 0x53, 0x32, 0xa8, 0x6b, 0xd9, 0xaf, 0x5b, 0xa2, 0xfb, 0x0e, 0x0c, 0x7c, 0x41, 0xb7, 0xa5, 0x23, 0xcc, 0xdd, 0xca, 0x46, 0xdd, 0xe6, 0x1b, 0x18, 0x09, 0xc9, 0x70, 0xf1, 0x72, 0x21, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4458 = { .name = "ecdh_brainpoolp384r1_4458", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4458_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4458_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2136 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4459 for ECDH, tcId is 2137 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4459_peerpubkey[] = { 0x70, 0x59, 0x65, 0x40, 0x9e, 0xc3, 0x74, 0xf7, 0x4c, 0x51, 0xea, 0xd3, 0x60, 0x94, 0x43, 0xce, 0xf7, 0xdb, 0x7c, 0x87, 0x9c, 0x41, 0xdb, 0x0e, 0x28, 0xe1, 0x65, 0x6e, 0x26, 0xb2, 0x36, 0xb7, 0x4b, 0x99, 0xf9, 0x50, 0x68, 0x9f, 0xfa, 0xb7, 0x17, 0xd2, 0x4c, 0x8f, 0x97, 0x9f, 0x52, 0x31, }; static const unsigned char ecdh_brainpoolp384r1_4459_privkey[] = { 0x80, 0x6f, 0x6e, 0xb8, 0x07, 0xa2, 0x13, 0x93, 0x0b, 0x60, 0x44, 0x3b, 0xa0, 0x16, 0x4d, 0x22, 0x98, 0x5b, 0x70, 0xa2, 0x03, 0x4e, 0xdb, 0x59, 0xc3, 0x56, 0x39, 0xf5, 0x2d, 0x8e, 0x4d, 0xd9, 0x3e, 0xc5, 0x89, 0xa8, 0x3e, 0xe9, 0x00, 0x0e, 0x88, 0x13, 0xda, 0x13, 0x1f, 0x59, 0xa4, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4459 = { .name = "ecdh_brainpoolp384r1_4459", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4459_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4459_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2137 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4460 for ECDH, tcId is 2138 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4460_peerpubkey[] = { 0x8a, 0xf7, 0x04, 0xd3, 0x91, 0x1f, 0xa5, 0xa7, 0xa5, 0xf6, 0xce, 0x54, 0x85, 0x64, 0x65, 0xca, 0xe4, 0xf2, 0xea, 0xc6, 0x9c, 0x84, 0xd2, 0xdf, 0xb1, 0xae, 0x16, 0x0b, 0x8d, 0xcd, 0x3b, 0x57, 0x79, 0x49, 0xc9, 0x72, 0x39, 0xe2, 0xe4, 0x20, 0x89, 0x64, 0x81, 0xc7, 0x6b, 0x5a, 0x44, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4460_privkey[] = { 0x2e, 0x59, 0xb6, 0xc0, 0xee, 0x75, 0x13, 0x5d, 0x8d, 0xf1, 0x2b, 0x95, 0x37, 0xd6, 0xf0, 0x0b, 0x52, 0x81, 0x58, 0x51, 0x66, 0xa7, 0x70, 0x75, 0x85, 0x8c, 0x5e, 0x90, 0x58, 0xa8, 0xdb, 0xdc, 0x4a, 0x4b, 0x8d, 0x7c, 0xdb, 0x23, 0xcd, 0xa2, 0x42, 0x9e, 0x06, 0x9a, 0xd1, 0x9b, 0xe3, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4460 = { .name = "ecdh_brainpoolp384r1_4460", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4460_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4460_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2138 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4461 for ECDH, tcId is 2139 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4461_peerpubkey[] = { 0x8a, 0xf7, 0x04, 0xd3, 0x91, 0x1f, 0xa5, 0xa7, 0xa5, 0xf6, 0xce, 0x54, 0x85, 0x64, 0x65, 0xca, 0xe4, 0xf2, 0xea, 0xc6, 0x9c, 0x84, 0xd2, 0xdf, 0xb1, 0xae, 0x16, 0x0b, 0x8d, 0xcd, 0x3b, 0x57, 0x79, 0x49, 0xc9, 0x72, 0x39, 0xe2, 0xe4, 0x20, 0x89, 0x64, 0x81, 0xc7, 0x6b, 0x5a, 0x44, 0x65, }; static const unsigned char ecdh_brainpoolp384r1_4461_privkey[] = { 0x2e, 0x59, 0xb6, 0xc0, 0xee, 0x75, 0x13, 0x5d, 0x8d, 0xf1, 0x2b, 0x95, 0x37, 0xd6, 0xf0, 0x0b, 0x52, 0x81, 0x58, 0x51, 0x66, 0xa7, 0x70, 0x75, 0x85, 0x8c, 0x5e, 0x90, 0x58, 0xa8, 0xdb, 0xdc, 0x4a, 0x4b, 0x8d, 0x7c, 0xdb, 0x23, 0xcd, 0xa2, 0x42, 0x9e, 0x06, 0x9a, 0xd1, 0x9b, 0xe3, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4461 = { .name = "ecdh_brainpoolp384r1_4461", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4461_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4461_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2139 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4462 for ECDH, tcId is 2140 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4462_peerpubkey[] = { 0x70, 0x59, 0x65, 0x40, 0x9e, 0xc3, 0x74, 0xf7, 0x4c, 0x51, 0xea, 0xd3, 0x60, 0x94, 0x43, 0xce, 0xf7, 0xdb, 0x7c, 0x87, 0x9c, 0x41, 0xdb, 0x0e, 0x28, 0xe1, 0x65, 0x6e, 0x26, 0xb2, 0x36, 0xb7, 0x4b, 0x99, 0xf9, 0x50, 0x68, 0x9f, 0xfa, 0xb7, 0x17, 0xd2, 0x4c, 0x8f, 0x97, 0x9f, 0x52, 0x31, }; static const unsigned char ecdh_brainpoolp384r1_4462_privkey[] = { 0x80, 0x6f, 0x6e, 0xb8, 0x07, 0xa2, 0x13, 0x93, 0x0b, 0x60, 0x44, 0x3b, 0xa0, 0x16, 0x4d, 0x22, 0x98, 0x5b, 0x70, 0xa2, 0x03, 0x4e, 0xdb, 0x59, 0xc3, 0x56, 0x39, 0xf5, 0x2d, 0x8e, 0x4d, 0xd9, 0x3e, 0xc5, 0x89, 0xa8, 0x3e, 0xe9, 0x00, 0x0e, 0x88, 0x13, 0xda, 0x13, 0x1f, 0x59, 0xa4, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4462 = { .name = "ecdh_brainpoolp384r1_4462", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4462_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4462_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2140 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4463 for ECDH, tcId is 2141 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4463_peerpubkey[] = { 0x53, 0x49, 0x86, 0x01, 0x44, 0xee, 0x64, 0x85, 0x9a, 0x8b, 0x01, 0x74, 0xc9, 0x5e, 0x5f, 0x91, 0xf3, 0x57, 0xcd, 0x38, 0xb2, 0x6d, 0x2b, 0xaf, 0xeb, 0x49, 0xdb, 0xd9, 0x12, 0xcd, 0x48, 0x04, 0xf1, 0xdc, 0x04, 0xc0, 0x70, 0x71, 0x99, 0xe1, 0x13, 0x08, 0x9f, 0x1d, 0xf2, 0x53, 0xa6, 0x29, }; static const unsigned char ecdh_brainpoolp384r1_4463_privkey[] = { 0x6f, 0xc5, 0x80, 0x97, 0x44, 0x37, 0x28, 0x3e, 0xa6, 0x08, 0x99, 0xaa, 0x7d, 0x4c, 0x81, 0x7e, 0xa8, 0x1d, 0x53, 0x32, 0xa8, 0x6b, 0xd9, 0xaf, 0x5b, 0xa2, 0xfb, 0x0e, 0x0c, 0x7c, 0x41, 0xb7, 0xa5, 0x23, 0xcc, 0xdd, 0xca, 0x46, 0xdd, 0xe6, 0x1b, 0x18, 0x09, 0xc9, 0x70, 0xf1, 0x72, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4463 = { .name = "ecdh_brainpoolp384r1_4463", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4463_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4463_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2141 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4464 for ECDH, tcId is 2142 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4464_peerpubkey[] = { 0x11, 0x45, 0x5b, 0x9d, 0x35, 0x69, 0x78, 0x75, 0x15, 0x48, 0xed, 0x9b, 0xa3, 0x61, 0xf6, 0x72, 0xc4, 0x02, 0x15, 0xfe, 0x87, 0x3e, 0x5b, 0x27, 0x77, 0x0e, 0xce, 0x7d, 0x60, 0x70, 0x1f, 0xbf, 0x07, 0xe3, 0xf9, 0x5a, 0xb3, 0x88, 0x57, 0xeb, 0x87, 0x85, 0xde, 0x02, 0xb6, 0x9c, 0x35, 0x6c, }; static const unsigned char ecdh_brainpoolp384r1_4464_privkey[] = { 0x5e, 0x7b, 0xa1, 0xf7, 0x81, 0x20, 0x05, 0x95, 0x32, 0x91, 0xc6, 0xe5, 0xa7, 0x23, 0x6a, 0xbf, 0x5d, 0xcb, 0x32, 0xad, 0xdc, 0x97, 0xfa, 0x40, 0xd0, 0x6a, 0x6f, 0xc7, 0xa2, 0xa1, 0x99, 0x9a, 0x93, 0xb1, 0xd2, 0x24, 0xef, 0x85, 0xe3, 0x32, 0x7d, 0x7d, 0x2b, 0x3f, 0x7d, 0x90, 0x9e, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4464 = { .name = "ecdh_brainpoolp384r1_4464", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4464_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4464_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2142 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4465 for ECDH, tcId is 2143 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) static const unsigned char ecdh_brainpoolp384r1_4465_peerpubkey[] = { 0x7d, 0x96, 0x5d, 0x60, 0x4a, 0xad, 0x48, 0x77, 0x4b, 0x0c, 0x68, 0xab, 0xb9, 0xfe, 0xbf, 0xf3, 0xca, 0xb8, 0x18, 0xea, 0x48, 0x90, 0xbc, 0xb6, 0x16, 0x93, 0x85, 0x56, 0x82, 0x8a, 0xb7, 0x7d, 0xea, 0x4a, 0x08, 0x47, 0xad, 0x8d, 0x61, 0xeb, 0x43, 0xd8, 0x45, 0xc9, 0xec, 0x24, 0x1c, 0xbc, }; static const unsigned char ecdh_brainpoolp384r1_4465_privkey[] = { 0x37, 0xfb, 0x98, 0x4a, 0x7a, 0x82, 0x1d, 0x5a, 0x36, 0x60, 0xa9, 0x51, 0xb1, 0x9f, 0x88, 0xb2, 0xa9, 0x5d, 0xfc, 0x68, 0x84, 0xe0, 0x29, 0xbc, 0x5d, 0x99, 0x25, 0x1d, 0x9b, 0x2d, 0x1f, 0xf8, 0x8c, 0x57, 0xe0, 0xf9, 0xda, 0xb9, 0x4b, 0xd0, 0xfa, 0x13, 0x22, 0x1a, 0x15, 0x40, 0xca, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384r1_4465 = { .name = "ecdh_brainpoolp384r1_4465", .ecdh_alg = ECCCDH, .curve = &brainpoolp384r1_str_params, .peerpubkey = ecdh_brainpoolp384r1_4465_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384r1_4465_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2143 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) */ /* Test 4466 for ECDH, tcId is 2144 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4466_peerpubkey[] = { 0x8a, 0x73, 0xa6, 0x66, 0x05, 0xa5, 0xdb, 0x25, 0x2e, 0xf4, 0x18, 0xff, 0x2c, 0x43, 0x96, 0x9b, 0xd4, 0x12, 0x81, 0x87, 0xce, 0x43, 0x1c, 0x36, 0xa3, 0x3d, 0x3f, 0xf3, 0x03, 0x4c, 0xf8, 0x91, 0x0f, 0xb0, 0x02, 0x1c, 0xe8, 0x49, 0x72, 0x36, 0x21, 0x19, 0x9d, 0x0d, 0x7e, 0xa4, 0x80, 0x5f, 0x3c, 0xda, 0xb8, 0x2f, 0x6c, 0x90, 0x92, 0x57, 0x76, 0x2d, 0xa2, 0xa9, 0x7e, 0x26, 0x30, 0x5b, 0x07, 0x8c, 0x1f, 0xd7, 0x91, 0xfa, 0x95, 0x7e, 0x97, 0x5e, 0x30, 0xdf, 0x5b, 0x87, 0x60, 0x54, 0x75, 0x82, 0x67, 0x12, 0x9e, 0x49, 0x74, 0xa0, 0x83, 0x37, 0x2b, 0x0c, 0xe0, 0x71, 0x18, 0x0d, 0x05, 0xe1, 0x97, 0x8b, 0xd9, 0x0b, 0x84, 0x07, 0xc0, 0xa7, 0xff, 0x7f, 0x66, 0x51, 0xbd, 0x3f, 0xfc, 0xf1, 0xa5, 0x74, 0xdf, 0xe9, 0x5a, 0x2e, 0x8a, 0xf3, 0x86, 0x6c, 0xbb, 0x38, 0x5d, 0x21, }; static const unsigned char ecdh_brainpoolp512r1_4466_privkey[] = { 0x62, 0x80, 0xeb, 0x95, 0x40, 0x5f, 0xa8, 0xc0, 0xe9, 0xd9, 0x70, 0x54, 0x73, 0x01, 0xbb, 0xef, 0xb1, 0x52, 0xc8, 0xc8, 0x11, 0x4a, 0xbc, 0x73, 0x0c, 0x89, 0xbf, 0x6d, 0xb3, 0xf7, 0xd9, 0x49, 0xfc, 0xfd, 0x7e, 0xbb, 0x82, 0xfd, 0x2d, 0xbd, 0x43, 0xd2, 0x8d, 0x47, 0xbf, 0x4e, 0xd9, 0x5d, 0xe9, 0x7b, 0xae, 0xd1, 0x9f, 0x7d, 0x08, 0x7c, 0xf3, 0x03, 0xd2, 0xb0, 0xcd, 0x41, 0x37, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_4466_sharedsecret[] = { 0x96, 0x90, 0x12, 0x0e, 0xdf, 0x3c, 0x58, 0x3f, 0x62, 0x77, 0x74, 0xac, 0x28, 0x37, 0xf7, 0x92, 0xe1, 0x04, 0x9b, 0x37, 0x68, 0x19, 0x9e, 0x3c, 0xc6, 0x8c, 0x75, 0xcc, 0x16, 0xf7, 0x3d, 0x4e, 0xca, 0x82, 0x8f, 0x87, 0x88, 0x0d, 0xe9, 0x1e, 0x2f, 0xbe, 0x06, 0x71, 0xb7, 0x06, 0x6f, 0xcc, 0x81, 0x4c, 0xb2, 0xe1, 0x90, 0x83, 0x2a, 0xda, 0xe3, 0xa6, 0xdc, 0x7d, 0x9d, 0x9e, 0x71, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4466 = { .name = "ecdh_brainpoolp512r1_4466", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4466_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4466_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4466_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "normal case, tcId is 2144 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4467 for ECDH, tcId is 2145 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4467_peerpubkey[] = { 0x8a, 0x73, 0xa6, 0x66, 0x05, 0xa5, 0xdb, 0x25, 0x2e, 0xf4, 0x18, 0xff, 0x2c, 0x43, 0x96, 0x9b, 0xd4, 0x12, 0x81, 0x87, 0xce, 0x43, 0x1c, 0x36, 0xa3, 0x3d, 0x3f, 0xf3, 0x03, 0x4c, 0xf8, 0x91, 0x0f, 0xb0, 0x02, 0x1c, 0xe8, 0x49, 0x72, 0x36, 0x21, 0x19, 0x9d, 0x0d, 0x7e, 0xa4, 0x80, 0x5f, 0x3c, 0xda, 0xb8, 0x2f, 0x6c, 0x90, 0x92, 0x57, 0x76, 0x2d, 0xa2, 0xa9, 0x7e, 0x26, 0x30, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_4467_privkey[] = { 0x62, 0x80, 0xeb, 0x95, 0x40, 0x5f, 0xa8, 0xc0, 0xe9, 0xd9, 0x70, 0x54, 0x73, 0x01, 0xbb, 0xef, 0xb1, 0x52, 0xc8, 0xc8, 0x11, 0x4a, 0xbc, 0x73, 0x0c, 0x89, 0xbf, 0x6d, 0xb3, 0xf7, 0xd9, 0x49, 0xfc, 0xfd, 0x7e, 0xbb, 0x82, 0xfd, 0x2d, 0xbd, 0x43, 0xd2, 0x8d, 0x47, 0xbf, 0x4e, 0xd9, 0x5d, 0xe9, 0x7b, 0xae, 0xd1, 0x9f, 0x7d, 0x08, 0x7c, 0xf3, 0x03, 0xd2, 0xb0, 0xcd, 0x41, 0x37, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_4467_sharedsecret[] = { 0x96, 0x90, 0x12, 0x0e, 0xdf, 0x3c, 0x58, 0x3f, 0x62, 0x77, 0x74, 0xac, 0x28, 0x37, 0xf7, 0x92, 0xe1, 0x04, 0x9b, 0x37, 0x68, 0x19, 0x9e, 0x3c, 0xc6, 0x8c, 0x75, 0xcc, 0x16, 0xf7, 0x3d, 0x4e, 0xca, 0x82, 0x8f, 0x87, 0x88, 0x0d, 0xe9, 0x1e, 0x2f, 0xbe, 0x06, 0x71, 0xb7, 0x06, 0x6f, 0xcc, 0x81, 0x4c, 0xb2, 0xe1, 0x90, 0x83, 0x2a, 0xda, 0xe3, 0xa6, 0xdc, 0x7d, 0x9d, 0x9e, 0x71, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4467 = { .name = "ecdh_brainpoolp512r1_4467", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4467_peerpubkey, .peerpubkeylen = 64, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4467_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4467_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "compressed public key, tcId is 2145 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4468 for ECDH, tcId is 2146 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4468_peerpubkey[] = { 0x1c, 0x32, 0x35, 0x10, 0x25, 0x8b, 0x85, 0x8d, 0x9a, 0x99, 0x6f, 0xe6, 0x44, 0xe2, 0xd1, 0x16, 0xca, 0x36, 0x07, 0x26, 0xc5, 0x1a, 0x54, 0xe0, 0xaa, 0x69, 0xe8, 0x8e, 0xf8, 0x16, 0xf2, 0x05, 0x77, 0x34, 0x9a, 0xe1, 0xf2, 0xf2, 0x02, 0xff, 0x40, 0xc4, 0x99, 0xbd, 0xae, 0x42, 0x74, 0xbc, 0xfd, 0x50, 0x2f, 0x73, 0x6c, 0xf8, 0x2f, 0x43, 0xac, 0xfc, 0xa5, 0x56, 0x49, 0xe9, 0xfa, 0xaa, 0x88, 0x26, 0x3c, 0xd1, 0x61, 0xa1, 0xa6, 0x55, 0x5e, 0xe0, 0x24, 0x93, 0x63, 0xb5, 0x37, 0xc8, 0xf2, 0xe2, 0xee, 0x80, 0x94, 0x3f, 0x4b, 0x16, 0x28, 0x93, 0xfc, 0x96, 0x40, 0xd5, 0x4a, 0x8e, 0x7b, 0x99, 0x7a, 0xd2, 0x02, 0xa9, 0xb7, 0x23, 0xc3, 0xa0, 0x89, 0x29, 0xd5, 0x72, 0x07, 0x6e, 0x3c, 0x85, 0xad, 0xec, 0x08, 0x9d, 0xa1, 0x50, 0x78, 0x61, 0x75, 0x8d, 0x47, 0xe4, 0x1e, 0xc2, }; static const unsigned char ecdh_brainpoolp512r1_4468_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4468_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4468 = { .name = "ecdh_brainpoolp512r1_4468", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4468_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4468_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4468_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2146 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4469 for ECDH, tcId is 2147 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4469_peerpubkey[] = { 0x38, 0xa0, 0xc7, 0x65, 0x40, 0x91, 0x00, 0xf0, 0xa8, 0x31, 0x38, 0x7b, 0xa4, 0x6f, 0xbc, 0xda, 0x63, 0x95, 0x6d, 0xf0, 0xf0, 0x0e, 0x77, 0x61, 0x5b, 0x33, 0x24, 0x9e, 0x1a, 0x73, 0xd1, 0x31, 0x0b, 0xb2, 0x27, 0x84, 0xe0, 0x9e, 0x3f, 0xae, 0xce, 0x0b, 0xfa, 0x6e, 0xd5, 0xc0, 0xfa, 0x07, 0x7c, 0x8a, 0x62, 0x66, 0x42, 0x21, 0xcc, 0xb5, 0x96, 0xc9, 0xef, 0xa2, 0xae, 0xbe, 0xb3, 0xea, 0x93, 0x7d, 0xac, 0xea, 0x2e, 0xe4, 0xfc, 0x26, 0x1e, 0x29, 0xaf, 0x0b, 0x64, 0xec, 0x5b, 0x4a, 0x8f, 0x0f, 0xba, 0xfe, 0x74, 0x70, 0xd7, 0x15, 0xc1, 0xef, 0xfd, 0x46, 0x3e, 0xca, 0x68, 0x34, 0x4e, 0xa7, 0x44, 0x6a, 0x88, 0xe5, 0x87, 0x4e, 0xbb, 0x1a, 0x0f, 0xaa, 0xb7, 0xec, 0x0d, 0x36, 0xd2, 0x03, 0xbe, 0xce, 0x10, 0x5a, 0x11, 0xed, 0xad, 0xb0, 0x0e, 0x93, 0xab, 0x0d, 0xd8, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_4469_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4469_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4469 = { .name = "ecdh_brainpoolp512r1_4469", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4469_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4469_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4469_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2147 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4470 for ECDH, tcId is 2148 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4470_peerpubkey[] = { 0x5f, 0x65, 0xb9, 0x86, 0x16, 0x10, 0x9b, 0x88, 0xfe, 0xcb, 0x4c, 0xc1, 0xe6, 0x39, 0xe9, 0x8d, 0x21, 0x09, 0xbd, 0x69, 0x6a, 0x14, 0xb9, 0x21, 0xa2, 0x45, 0xf2, 0x65, 0xee, 0xad, 0x9c, 0x44, 0xee, 0xe4, 0xd1, 0x9d, 0x16, 0x2e, 0xbb, 0x97, 0x2e, 0xec, 0xdb, 0xba, 0xe1, 0xc3, 0xb5, 0xd6, 0x83, 0xe8, 0xa2, 0x16, 0x38, 0x61, 0x26, 0x77, 0x95, 0x84, 0x0e, 0x79, 0xbd, 0x4e, 0x08, 0xfb, 0x25, 0xa4, 0x72, 0x71, 0x7d, 0x16, 0x75, 0x87, 0x16, 0x50, 0x60, 0x00, 0x3c, 0x77, 0xf8, 0xd3, 0x33, 0x9b, 0x90, 0x86, 0x13, 0x06, 0x3e, 0x5c, 0xd1, 0xab, 0xf0, 0xe2, 0x0f, 0x41, 0x72, 0xfd, 0x30, 0x99, 0xf8, 0xbb, 0x96, 0xbc, 0x26, 0xa8, 0x41, 0x37, 0xbe, 0x2f, 0x34, 0x1e, 0xd6, 0xc1, 0xd9, 0x1c, 0x11, 0xef, 0x31, 0x11, 0xb4, 0xcf, 0x75, 0x17, 0x0d, 0x2d, 0xb5, 0x9b, 0xd7, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_4470_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4470_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4470 = { .name = "ecdh_brainpoolp512r1_4470", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4470_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4470_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4470_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2148 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4471 for ECDH, tcId is 2149 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4471_peerpubkey[] = { 0x40, 0x69, 0xf3, 0xa9, 0x4d, 0xed, 0x3b, 0xc3, 0x7d, 0x32, 0xcd, 0x2c, 0xba, 0xc2, 0x9e, 0xcb, 0x33, 0xb3, 0xaa, 0xd1, 0x95, 0xd9, 0xac, 0x57, 0x96, 0x51, 0x28, 0xa5, 0xa8, 0xa4, 0xec, 0x27, 0x28, 0xdb, 0x23, 0xe8, 0x5b, 0x42, 0x13, 0xc6, 0x0d, 0xb4, 0x09, 0xa7, 0x76, 0x61, 0xf6, 0x07, 0x56, 0xab, 0xe7, 0xd9, 0xed, 0xd7, 0x05, 0x7a, 0x12, 0x45, 0x3a, 0x19, 0x20, 0x2c, 0x54, 0x28, 0x8b, 0xa5, 0x86, 0x59, 0xb7, 0xb3, 0x7d, 0x74, 0xa8, 0x01, 0x09, 0xfc, 0x48, 0x4e, 0xfd, 0xf9, 0x16, 0x8c, 0x21, 0x21, 0xb7, 0xae, 0xad, 0x8f, 0x5f, 0xe0, 0x2d, 0x48, 0x3b, 0x51, 0xf1, 0xf2, 0x13, 0x38, 0x41, 0x89, 0x92, 0x4b, 0x63, 0x05, 0x0f, 0xcd, 0xad, 0x57, 0xd2, 0xc4, 0xdb, 0xc5, 0xc3, 0x1c, 0x4c, 0x15, 0xe1, 0x90, 0x1b, 0x51, 0x92, 0x70, 0x84, 0x10, 0xe1, 0x60, 0xc3, 0x56, }; static const unsigned char ecdh_brainpoolp512r1_4471_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4471_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4471 = { .name = "ecdh_brainpoolp512r1_4471", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4471_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4471_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4471_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2149 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4472 for ECDH, tcId is 2150 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4472_peerpubkey[] = { 0x28, 0xe7, 0x87, 0x8a, 0x20, 0xa0, 0x24, 0x12, 0x1e, 0x36, 0x33, 0x9b, 0xb0, 0xcc, 0x67, 0xe6, 0xe4, 0xca, 0xac, 0xd5, 0x4e, 0x13, 0xed, 0xe6, 0xd7, 0xad, 0x4c, 0x73, 0x38, 0x5b, 0x61, 0x25, 0xbf, 0xef, 0xe8, 0xf8, 0xe1, 0xce, 0x95, 0xd2, 0xd3, 0x2b, 0x95, 0x61, 0x32, 0xa9, 0x1d, 0x7c, 0x2e, 0x09, 0xc3, 0x99, 0xab, 0x93, 0x82, 0x28, 0xaa, 0x16, 0xfd, 0xd2, 0xd7, 0x48, 0x75, 0x2c, 0x0a, 0x87, 0xe5, 0x83, 0x38, 0x4d, 0x45, 0x31, 0xd1, 0x6f, 0x5e, 0x59, 0xde, 0xbb, 0x36, 0x91, 0xfc, 0xdc, 0x91, 0xe3, 0x5e, 0x9a, 0x9a, 0x6c, 0x4a, 0xdc, 0xd0, 0x20, 0xf3, 0xde, 0xf3, 0x93, 0x1b, 0x53, 0x9c, 0xba, 0xe2, 0x41, 0x4b, 0xdc, 0xc4, 0xe3, 0x56, 0x88, 0x37, 0x9f, 0xfd, 0xe0, 0x7a, 0x09, 0x91, 0x73, 0x0c, 0x57, 0x83, 0x14, 0x1a, 0xf7, 0xf8, 0x7f, 0xdd, 0xae, 0x07, 0x0a, }; static const unsigned char ecdh_brainpoolp512r1_4472_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4472_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4472 = { .name = "ecdh_brainpoolp512r1_4472", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4472_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4472_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4472_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2150 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4473 for ECDH, tcId is 2151 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4473_peerpubkey[] = { 0x28, 0x30, 0xff, 0x4e, 0x16, 0x15, 0x0d, 0xed, 0x71, 0x67, 0x83, 0x3c, 0x6b, 0xdb, 0x7d, 0xaf, 0x11, 0xde, 0x99, 0x44, 0x8f, 0x4e, 0x60, 0xe0, 0xc7, 0x75, 0xf4, 0x6e, 0x3a, 0x44, 0xb8, 0x55, 0x99, 0x14, 0x8f, 0x94, 0x4f, 0xb6, 0xeb, 0xd8, 0x60, 0x9e, 0xb2, 0x34, 0x2c, 0xc8, 0x65, 0x24, 0xe9, 0x89, 0x72, 0x6e, 0xe6, 0xb9, 0xf0, 0x27, 0x8f, 0xfc, 0x36, 0x80, 0x4b, 0x77, 0x5e, 0x85, 0x88, 0x1a, 0xee, 0xa8, 0x38, 0x83, 0x1b, 0x2d, 0x0a, 0x70, 0x2a, 0x88, 0x7b, 0xa5, 0xb5, 0x49, 0xb8, 0x2c, 0xe5, 0x54, 0x38, 0x57, 0x33, 0x9f, 0xee, 0x34, 0x25, 0x36, 0x87, 0x59, 0xca, 0xd4, 0x14, 0x32, 0x12, 0x9a, 0x18, 0x7d, 0xc3, 0x7e, 0x6a, 0x28, 0x74, 0x3f, 0xd1, 0xdd, 0xa1, 0x02, 0x8f, 0xcc, 0xd9, 0xb8, 0xf2, 0xc0, 0xd4, 0x4f, 0x8f, 0x91, 0x46, 0xe4, 0x84, 0x01, 0xb8, 0x98, }; static const unsigned char ecdh_brainpoolp512r1_4473_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4473_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4473 = { .name = "ecdh_brainpoolp512r1_4473", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4473_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4473_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4473_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2151 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4474 for ECDH, tcId is 2152 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4474_peerpubkey[] = { 0x03, 0xd1, 0xfa, 0x25, 0x62, 0xf3, 0xb6, 0xc6, 0x3a, 0x86, 0x73, 0x1c, 0x25, 0x19, 0x95, 0x6a, 0xab, 0x59, 0x9d, 0x17, 0x00, 0x3d, 0xee, 0xdf, 0xd6, 0x7b, 0x7f, 0x3e, 0xed, 0x74, 0x90, 0x36, 0xaa, 0xe5, 0xc0, 0xa1, 0x10, 0xe9, 0xbc, 0x76, 0x74, 0x63, 0x09, 0x3e, 0x59, 0x7e, 0x61, 0xe3, 0xbd, 0xc2, 0x40, 0x78, 0x28, 0x6e, 0x87, 0xe6, 0x84, 0xda, 0x1c, 0x4a, 0x05, 0x14, 0xb1, 0x68, 0x68, 0xda, 0x15, 0x6d, 0x11, 0x22, 0xb4, 0x7f, 0x01, 0xf6, 0x3f, 0xad, 0x23, 0x4f, 0x09, 0x46, 0x0f, 0x8f, 0x36, 0xf3, 0x1a, 0xca, 0x05, 0x99, 0x91, 0x75, 0x1e, 0xf7, 0xa5, 0x53, 0x36, 0x58, 0x42, 0xea, 0xe9, 0x81, 0x4c, 0x26, 0x32, 0x49, 0xc0, 0x09, 0x3c, 0x91, 0x96, 0x22, 0xa2, 0xd4, 0xf9, 0x6b, 0x7f, 0x59, 0x14, 0x95, 0x56, 0x78, 0x88, 0xd1, 0x0d, 0x0b, 0x1b, 0xb8, 0x0f, 0x82, }; static const unsigned char ecdh_brainpoolp512r1_4474_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4474_sharedsecret[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4474 = { .name = "ecdh_brainpoolp512r1_4474", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4474_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4474_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4474_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2152 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4475 for ECDH, tcId is 2153 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4475_peerpubkey[] = { 0x9a, 0x4e, 0xf2, 0x96, 0x67, 0x8f, 0x88, 0xe8, 0x48, 0xa9, 0x39, 0xe3, 0xb5, 0xe9, 0x3f, 0x94, 0x8e, 0x82, 0x1c, 0xbe, 0x3c, 0x5e, 0xc2, 0x03, 0x6d, 0x43, 0x57, 0x86, 0x76, 0x21, 0x2b, 0xc4, 0x99, 0x7f, 0x47, 0x9a, 0x22, 0x55, 0x13, 0x99, 0x02, 0xf0, 0x3a, 0x97, 0x7e, 0x30, 0x42, 0x82, 0xb0, 0x67, 0x78, 0xe8, 0x6a, 0xc5, 0xe3, 0xe5, 0xea, 0x71, 0xe6, 0xfc, 0x43, 0x01, 0x59, 0x74, 0x55, 0x5d, 0xe2, 0x94, 0xd1, 0x22, 0x7f, 0xa3, 0x16, 0x5f, 0xcd, 0x83, 0x94, 0x98, 0xdf, 0xc4, 0xa6, 0xdc, 0x73, 0xca, 0xb0, 0x31, 0x3e, 0x92, 0x41, 0xa0, 0x26, 0xa0, 0x76, 0x82, 0x32, 0x86, 0xac, 0xb9, 0x5b, 0x3b, 0x4b, 0x29, 0x33, 0x84, 0x48, 0xdf, 0x31, 0xe9, 0xf9, 0x1a, 0x96, 0x9a, 0xe9, 0x84, 0x49, 0xff, 0xd8, 0x71, 0xba, 0x27, 0x34, 0x42, 0xb6, 0xee, 0xc0, 0xc9, 0x21, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4475_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4475_sharedsecret[] = { 0x30, 0x91, 0x81, 0x9f, 0x59, 0x96, 0x71, 0xa0, 0xd2, 0x1d, 0x86, 0x6e, 0xba, 0x2d, 0x54, 0x0a, 0xe0, 0xa4, 0x72, 0xbe, 0x02, 0x52, 0xd3, 0x79, 0x2b, 0xc5, 0xbb, 0x98, 0x4d, 0x20, 0xa8, 0xdf, 0xaa, 0x18, 0x75, 0xe6, 0xd0, 0x52, 0x64, 0x61, 0x55, 0x45, 0xd2, 0xae, 0x78, 0xb9, 0xb5, 0xac, 0xb6, 0x96, 0xfd, 0xf1, 0x68, 0x0a, 0x05, 0xcd, 0x38, 0x2d, 0x83, 0xec, 0xef, 0x25, 0x28, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4475 = { .name = "ecdh_brainpoolp512r1_4475", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4475_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4475_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4475_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2153 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4476 for ECDH, tcId is 2154 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4476_peerpubkey[] = { 0x9e, 0x4b, 0x91, 0x45, 0x04, 0x41, 0x11, 0x31, 0x7c, 0x7b, 0xf1, 0x69, 0x7b, 0x94, 0x28, 0xf7, 0x16, 0xb0, 0x22, 0xd1, 0x03, 0x5b, 0x1c, 0x87, 0x81, 0xcb, 0xd7, 0xcd, 0x35, 0x27, 0xb1, 0x36, 0xf0, 0xf9, 0x5d, 0xf1, 0xbe, 0x06, 0x27, 0x72, 0x1a, 0x4f, 0x6a, 0x56, 0xc0, 0x04, 0x14, 0x9f, 0x34, 0x00, 0xc8, 0xb0, 0xcc, 0xc1, 0x42, 0xcd, 0x38, 0x2d, 0x60, 0xca, 0x25, 0x0d, 0xb1, 0xf0, 0x41, 0x0b, 0x69, 0x75, 0xe5, 0xea, 0x63, 0x35, 0x8f, 0x5d, 0x1e, 0xa1, 0x63, 0xf4, 0x2a, 0xe3, 0x74, 0x4e, 0x89, 0xca, 0x9d, 0x22, 0xe2, 0x4d, 0xbc, 0x4d, 0xc7, 0xa0, 0x5e, 0xc4, 0x30, 0x04, 0x66, 0xfb, 0x43, 0x6a, 0x18, 0x58, 0x07, 0xb3, 0x33, 0x83, 0x48, 0x4c, 0x56, 0x2d, 0x5b, 0x65, 0xcd, 0x57, 0xf6, 0xf0, 0x6f, 0xbf, 0xf3, 0xee, 0xe8, 0xe8, 0x32, 0xf8, 0x16, 0xca, 0xe5, 0x3d, }; static const unsigned char ecdh_brainpoolp512r1_4476_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4476_sharedsecret[] = { 0x33, 0x9f, 0x77, 0xdb, 0x58, 0xbb, 0x17, 0xaf, 0xd4, 0x05, 0x95, 0x55, 0xb0, 0x59, 0x21, 0x48, 0x89, 0x77, 0x19, 0x82, 0xd9, 0x6f, 0x13, 0x19, 0xc9, 0x95, 0x14, 0x04, 0xc6, 0x09, 0x09, 0xbc, 0x10, 0xbc, 0xec, 0x2f, 0x7d, 0xc6, 0xe5, 0x6d, 0xf4, 0x48, 0x89, 0xc1, 0x92, 0x4a, 0x30, 0x4b, 0xdf, 0xa7, 0xaa, 0x19, 0xd5, 0x62, 0xf4, 0x9c, 0xfb, 0x3a, 0xcd, 0x40, 0x91, 0x00, 0xba, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4476 = { .name = "ecdh_brainpoolp512r1_4476", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4476_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4476_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4476_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2154 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4477 for ECDH, tcId is 2155 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4477_peerpubkey[] = { 0x36, 0xa0, 0xb2, 0x25, 0x06, 0xa1, 0x3c, 0x46, 0xfb, 0x9c, 0x8d, 0x52, 0xd1, 0x12, 0xd9, 0x04, 0xd6, 0xd9, 0x3e, 0x26, 0x0d, 0xfd, 0xd6, 0x1f, 0x68, 0x0d, 0x32, 0x2d, 0x5a, 0xd6, 0xdc, 0x13, 0x0d, 0x9d, 0xf4, 0x48, 0xee, 0xde, 0x20, 0xff, 0x73, 0xce, 0x94, 0xdb, 0xc7, 0xca, 0x10, 0xa8, 0x9a, 0x49, 0xf5, 0x4c, 0x76, 0xc3, 0x0e, 0x77, 0x18, 0x51, 0xf0, 0xa4, 0x1d, 0x6d, 0x52, 0x5f, 0x18, 0x30, 0x41, 0x37, 0xd7, 0x91, 0xf2, 0x23, 0xbe, 0x08, 0x81, 0x38, 0x63, 0x65, 0x23, 0xbd, 0xe5, 0xc1, 0x36, 0x68, 0x5a, 0xb6, 0xbb, 0x2b, 0xfa, 0xea, 0xcf, 0x95, 0x78, 0x41, 0x0b, 0x3b, 0xa9, 0xe2, 0x60, 0x83, 0xb8, 0x0b, 0x36, 0xa2, 0x3b, 0x7e, 0x27, 0xed, 0x30, 0x70, 0x69, 0x29, 0x95, 0xe4, 0x50, 0x04, 0xd5, 0xd4, 0xba, 0xc4, 0xed, 0x40, 0x9c, 0xec, 0x36, 0xfc, 0xa2, 0xed, }; static const unsigned char ecdh_brainpoolp512r1_4477_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4477_sharedsecret[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4477 = { .name = "ecdh_brainpoolp512r1_4477", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4477_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4477_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4477_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2155 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4478 for ECDH, tcId is 2156 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4478_peerpubkey[] = { 0x95, 0x50, 0x69, 0xed, 0xb4, 0xb6, 0x2d, 0xc4, 0x8e, 0x0c, 0x41, 0x92, 0x4f, 0x96, 0x44, 0xbf, 0x85, 0xaf, 0x18, 0x01, 0xb2, 0x17, 0x32, 0xa6, 0x4c, 0xbf, 0xcf, 0x7c, 0xc3, 0xbf, 0xec, 0x91, 0x4d, 0x0c, 0xd8, 0xbf, 0xc8, 0xfb, 0x33, 0x4a, 0x94, 0xfd, 0x34, 0x88, 0xc4, 0x4d, 0xfc, 0xe0, 0xe5, 0xee, 0xe3, 0x24, 0xda, 0x83, 0xcb, 0x90, 0x3b, 0x71, 0xed, 0x47, 0xac, 0xdd, 0x13, 0x65, 0x88, 0x1e, 0xde, 0x88, 0x2c, 0x97, 0x8e, 0xc5, 0x41, 0xf3, 0x9f, 0x4b, 0x29, 0xd5, 0x15, 0xef, 0x83, 0x6c, 0x77, 0xd0, 0x4b, 0x51, 0x2c, 0xdc, 0x45, 0xbd, 0xff, 0x50, 0x5b, 0xff, 0xa3, 0x9d, 0x39, 0xe2, 0xe9, 0xe3, 0xc4, 0xa6, 0x56, 0x6b, 0x83, 0x5c, 0x32, 0x61, 0x06, 0xc7, 0x63, 0x8e, 0x3d, 0x07, 0xe7, 0xdd, 0xdb, 0x33, 0x31, 0xc5, 0xd3, 0x7d, 0x7f, 0xda, 0xae, 0xdf, 0xeb, 0x49, }; static const unsigned char ecdh_brainpoolp512r1_4478_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4478_sharedsecret[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4478 = { .name = "ecdh_brainpoolp512r1_4478", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4478_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4478_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4478_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2156 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4479 for ECDH, tcId is 2157 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4479_peerpubkey[] = { 0x6e, 0xcd, 0x48, 0xb1, 0x71, 0x54, 0x8d, 0x97, 0xb3, 0x68, 0xa7, 0x78, 0x39, 0x5b, 0x74, 0x84, 0xec, 0x4c, 0x97, 0x10, 0x96, 0x3a, 0x6f, 0xdb, 0x10, 0x73, 0x22, 0xa9, 0x36, 0xdf, 0xcf, 0xde, 0xef, 0x2c, 0x5d, 0x1b, 0xaa, 0xb8, 0x1e, 0x7d, 0xa6, 0x3a, 0x3f, 0x67, 0xa7, 0x13, 0x89, 0xb8, 0x36, 0x4a, 0xad, 0xdc, 0xa6, 0xf6, 0x5b, 0xfb, 0xe0, 0xd8, 0x88, 0x7f, 0x8c, 0x5b, 0xb7, 0x16, 0x81, 0x1c, 0x8f, 0xfe, 0xae, 0x8c, 0xd3, 0x9e, 0x3c, 0x6a, 0xc2, 0xa0, 0xd8, 0xab, 0x9e, 0x51, 0x11, 0x35, 0xc2, 0x34, 0x3a, 0xb0, 0xe0, 0xfa, 0xe8, 0xa0, 0x7f, 0xd9, 0x97, 0x92, 0x63, 0x77, 0xbb, 0xd7, 0x3c, 0x03, 0x08, 0x82, 0x09, 0xd0, 0x99, 0xcd, 0x33, 0x60, 0x9a, 0x17, 0x07, 0xa3, 0xeb, 0x1a, 0xd0, 0xab, 0xdc, 0x68, 0xb9, 0xb8, 0x2c, 0x65, 0x9c, 0x2e, 0x51, 0xd2, 0xec, 0xd1, }; static const unsigned char ecdh_brainpoolp512r1_4479_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4479_sharedsecret[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4479 = { .name = "ecdh_brainpoolp512r1_4479", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4479_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4479_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4479_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2157 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4480 for ECDH, tcId is 2158 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4480_peerpubkey[] = { 0x11, 0x6e, 0x13, 0xc1, 0x3a, 0xd7, 0x1c, 0x9f, 0x85, 0x28, 0x28, 0x95, 0x53, 0xbb, 0x71, 0xf8, 0xfe, 0xeb, 0x05, 0xd0, 0xb1, 0xb2, 0x1d, 0xca, 0xd5, 0xb9, 0xe4, 0xc0, 0x02, 0x63, 0x9d, 0xd9, 0xd8, 0x34, 0xf8, 0x0d, 0x49, 0x7e, 0xb2, 0xaf, 0x64, 0x3c, 0xae, 0xb2, 0x8f, 0x9e, 0x82, 0xb6, 0xdb, 0xb1, 0xe2, 0xcd, 0x5a, 0x78, 0x5a, 0xff, 0x8f, 0x14, 0x49, 0x44, 0xb6, 0xab, 0xff, 0x18, 0x8b, 0xf2, 0x86, 0xae, 0xba, 0x04, 0x57, 0xea, 0x25, 0x6e, 0x1d, 0xca, 0x33, 0x2b, 0xbe, 0xc2, 0xd4, 0x64, 0x73, 0x51, 0x94, 0x28, 0xd2, 0x98, 0x00, 0x2a, 0x51, 0x85, 0x14, 0xd9, 0xc9, 0xeb, 0x8f, 0x08, 0x78, 0xf9, 0xaf, 0xe0, 0xff, 0x1b, 0xb2, 0x96, 0x94, 0x49, 0xbe, 0x2a, 0x7e, 0xbb, 0x11, 0x5f, 0x6a, 0x75, 0x3e, 0x5e, 0xde, 0xad, 0x6d, 0x7e, 0x01, 0x51, 0x4b, 0x71, 0x8c, 0x36, }; static const unsigned char ecdh_brainpoolp512r1_4480_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4480_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4480 = { .name = "ecdh_brainpoolp512r1_4480", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4480_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4480_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4480_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2158 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4481 for ECDH, tcId is 2159 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4481_peerpubkey[] = { 0x63, 0x87, 0xf1, 0x4a, 0x6d, 0xb2, 0xec, 0x86, 0xd9, 0xdc, 0xf4, 0x56, 0x18, 0xce, 0xde, 0x48, 0x61, 0x87, 0x04, 0x5a, 0x33, 0xfe, 0xc8, 0x5f, 0xe1, 0x1c, 0xab, 0xeb, 0x93, 0xa6, 0x12, 0x42, 0x68, 0x2a, 0x93, 0x9b, 0xa6, 0xc7, 0x82, 0x1e, 0x4d, 0xa3, 0x60, 0x3a, 0x0f, 0xfb, 0x5e, 0x9d, 0x4f, 0x81, 0xee, 0x96, 0x62, 0xfb, 0x3e, 0x62, 0xd8, 0x65, 0xf1, 0x09, 0x03, 0xc6, 0x9e, 0xb5, 0x51, 0x77, 0xcc, 0x26, 0x37, 0x14, 0xf0, 0x91, 0x51, 0x18, 0x42, 0xb7, 0x71, 0x5c, 0x43, 0x4b, 0x8a, 0xad, 0x1b, 0x32, 0x27, 0x3a, 0xf5, 0x74, 0xcf, 0xff, 0x44, 0x01, 0x8c, 0xe7, 0x8a, 0xd8, 0x1e, 0x69, 0x9c, 0x44, 0x03, 0x36, 0x3e, 0xd5, 0xc3, 0x92, 0xbd, 0x6a, 0xf7, 0xd2, 0xc0, 0xa9, 0x07, 0xb5, 0x75, 0x89, 0x3f, 0x8e, 0xad, 0x5c, 0xa9, 0xfb, 0xfb, 0x12, 0x62, 0x7f, 0xb3, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_4481_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4481_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4481 = { .name = "ecdh_brainpoolp512r1_4481", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4481_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4481_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4481_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2159 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4482 for ECDH, tcId is 2160 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4482_peerpubkey[] = { 0x27, 0x38, 0x95, 0xea, 0x59, 0x7f, 0xb3, 0x30, 0xf9, 0xef, 0x29, 0xc6, 0x16, 0x79, 0xd5, 0x7b, 0x49, 0x4a, 0xba, 0x7a, 0x22, 0xef, 0x54, 0xf8, 0xed, 0xba, 0xc8, 0xa8, 0xb6, 0x5a, 0xd6, 0xf9, 0x1b, 0x44, 0xc2, 0xa8, 0xc5, 0xf8, 0x62, 0xf4, 0x2f, 0xad, 0xf6, 0x8b, 0x44, 0xfc, 0x7a, 0x08, 0x6b, 0x12, 0xe8, 0xd4, 0xeb, 0x7a, 0x61, 0xd6, 0x3f, 0x77, 0x10, 0x89, 0x29, 0xf6, 0xab, 0xf4, 0x2d, 0x69, 0xe7, 0x3c, 0x49, 0xc1, 0xb4, 0xd8, 0xcb, 0xa5, 0xfd, 0x20, 0x06, 0x32, 0x39, 0x1d, 0x7b, 0x33, 0xc6, 0x86, 0xb2, 0x00, 0x35, 0x81, 0xbc, 0x65, 0x68, 0xea, 0xe8, 0xd0, 0xd7, 0xb7, 0xfa, 0x6c, 0x69, 0xdc, 0x73, 0x24, 0x94, 0xa5, 0xc1, 0x6e, 0xa7, 0x60, 0x5f, 0xf2, 0x4b, 0xb6, 0x81, 0x8a, 0x49, 0xca, 0xab, 0x16, 0x1a, 0x4d, 0xd5, 0x38, 0x76, 0xa6, 0x46, 0x64, 0x4f, 0x4d, }; static const unsigned char ecdh_brainpoolp512r1_4482_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512r1_4482_sharedsecret[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4482 = { .name = "ecdh_brainpoolp512r1_4482", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4482_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4482_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4482_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2160 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4483 for ECDH, tcId is 2161 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4483_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x5d, 0xd3, 0xad, 0x1b, 0x6a, 0x38, 0x0e, 0xff, 0x32, 0xbc, 0xcd, 0x94, 0x79, 0x57, 0xf3, 0xac, 0xd6, 0x0d, 0x5a, 0x6d, 0xf1, 0x8e, 0xd9, 0xa4, 0xd6, 0x76, 0xc1, 0x92, 0x41, 0x23, 0x57, 0x6c, 0x95, 0x9a, 0xe8, 0x47, 0x3d, 0xe2, 0x24, 0xca, 0x26, 0x2d, 0x45, 0x6e, 0x8d, 0x51, 0xf6, 0xda, 0x36, 0xea, 0xae, 0x8e, 0x3d, 0xfc, 0x0e, 0x91, 0x4a, 0xfd, 0xb1, 0xbc, 0x55, 0x27, 0x96, }; static const unsigned char ecdh_brainpoolp512r1_4483_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4483_sharedsecret[] = { 0xa4, 0x67, 0xeb, 0x14, 0xc4, 0x6a, 0x4f, 0x70, 0xea, 0x53, 0xaa, 0xf9, 0xe0, 0xb6, 0x42, 0xac, 0xc3, 0x8f, 0x2e, 0x3f, 0x26, 0x4f, 0xed, 0xd8, 0x4b, 0xdd, 0x08, 0x2b, 0xab, 0x3b, 0x64, 0xe1, 0xc7, 0xcd, 0xaa, 0x52, 0x1c, 0x9b, 0xcc, 0x66, 0x39, 0x1a, 0x7b, 0x88, 0x39, 0xe6, 0x2a, 0xfe, 0xba, 0x33, 0x25, 0xc6, 0xd1, 0x23, 0x86, 0xa4, 0xfd, 0x8f, 0xe0, 0x5d, 0xc5, 0x42, 0x47, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4483 = { .name = "ecdh_brainpoolp512r1_4483", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4483_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4483_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4483_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2161 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4484 for ECDH, tcId is 2162 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4484_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x52, 0x01, 0x52, 0x6a, 0xc9, 0xed, 0x34, 0xd5, 0x12, 0x82, 0xdf, 0x1a, 0x59, 0x4a, 0x55, 0x3b, 0xf6, 0xf0, 0x7a, 0x90, 0xe3, 0x26, 0x8f, 0xca, 0x9a, 0x9b, 0x3a, 0x77, 0x43, 0x24, 0xb0, 0xe3, 0xee, 0x55, 0xc3, 0x51, 0x74, 0x8a, 0xc1, 0x8f, 0x73, 0x01, 0xbc, 0x56, 0x06, 0x23, 0xae, 0x78, 0x46, 0xf9, 0x7f, 0x57, 0x6c, 0xce, 0x3c, 0xa8, 0x16, 0x98, 0x02, 0x9c, 0x38, 0x95, 0x62, }; static const unsigned char ecdh_brainpoolp512r1_4484_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4484_sharedsecret[] = { 0x13, 0x62, 0xfe, 0xfd, 0xf9, 0x17, 0x31, 0x62, 0xca, 0xe5, 0xe7, 0xa0, 0x29, 0xe3, 0x77, 0x4f, 0xbe, 0xf0, 0x08, 0x2c, 0x33, 0xb5, 0xd1, 0x99, 0x59, 0xb2, 0xa4, 0xb5, 0x65, 0x3a, 0xcc, 0x9f, 0x61, 0x59, 0x17, 0x05, 0x81, 0x96, 0xf1, 0xc5, 0x9c, 0x29, 0xce, 0x05, 0x4e, 0x4c, 0x2e, 0x5b, 0x03, 0x5b, 0xe7, 0x27, 0x99, 0x1e, 0x61, 0x86, 0x04, 0x56, 0x2e, 0x83, 0x7a, 0x45, 0x2f, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4484 = { .name = "ecdh_brainpoolp512r1_4484", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4484_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4484_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4484_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2162 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4485 for ECDH, tcId is 2163 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4485_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x51, 0x06, 0xe9, 0x12, 0xf8, 0x12, 0x4a, 0x95, 0x9d, 0xfc, 0x5c, 0xcb, 0xb9, 0x97, 0x86, 0xd5, 0x4a, 0xf8, 0x77, 0xfe, 0x53, 0x9e, 0x66, 0x4a, 0xa0, 0x36, 0x2a, 0x4d, 0x41, 0x7d, 0x1c, 0x4a, 0xe6, 0x47, 0xdd, 0xf4, 0x0c, 0x8c, 0x2c, 0xc6, 0xac, 0x6b, 0x0f, 0x35, 0x16, 0x4e, 0x24, 0xa1, 0xc6, 0x4a, 0x5f, 0x23, 0x0f, 0xc6, 0x1e, 0x23, 0x18, 0xc9, 0x38, 0x7f, 0xc1, 0x54, 0x7c, 0x4c, }; static const unsigned char ecdh_brainpoolp512r1_4485_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4485_sharedsecret[] = { 0x60, 0x96, 0x6e, 0x75, 0x0b, 0xcc, 0x09, 0x81, 0x07, 0xe6, 0xa6, 0x6e, 0x8f, 0x5a, 0x07, 0x41, 0xe7, 0xee, 0xc2, 0xc7, 0xe7, 0x65, 0x53, 0xdf, 0x95, 0x69, 0xfb, 0xe0, 0xd2, 0x8a, 0xfd, 0x8c, 0xb1, 0xba, 0x80, 0xa6, 0xaa, 0x8e, 0x7a, 0x84, 0xbe, 0x66, 0x8d, 0xc6, 0xe2, 0x34, 0x63, 0xd0, 0x88, 0x32, 0xb8, 0x9b, 0xd0, 0x92, 0xa4, 0xae, 0x83, 0x8f, 0xd2, 0x28, 0x43, 0x6c, 0x14, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4485 = { .name = "ecdh_brainpoolp512r1_4485", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4485_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4485_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4485_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2163 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4486 for ECDH, tcId is 2164 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4486_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc8, 0x6f, 0x4f, 0xd8, 0xb1, 0x38, 0xac, 0x55, 0x09, 0xa4, 0x17, 0x4b, 0xd4, 0x99, 0x8e, 0x1b, 0x4d, 0x3d, 0x49, 0xde, 0x88, 0xd3, 0x7e, 0x38, 0xdc, 0xaa, 0x74, 0xf9, 0xc4, 0x2f, 0x3e, 0x37, 0xb7, 0xf7, 0xbe, 0x77, 0xcf, 0x53, 0x22, 0x51, 0x4a, 0x87, 0x99, 0x84, 0xe4, 0x4b, 0x4a, 0x3c, 0xae, 0xd5, 0x66, 0xab, 0x68, 0x74, 0xb1, 0xa7, 0x81, 0x29, 0x2e, 0x7e, 0xf7, 0x91, 0xa6, }; static const unsigned char ecdh_brainpoolp512r1_4486_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4486_sharedsecret[] = { 0x22, 0x69, 0x45, 0x87, 0xdd, 0xf8, 0xe8, 0xc6, 0x7a, 0x98, 0x9e, 0xd4, 0xc1, 0x38, 0x6f, 0x92, 0x78, 0x97, 0xa6, 0xb9, 0x66, 0x4a, 0xa4, 0xc9, 0x39, 0xd7, 0x4a, 0x59, 0x7e, 0xc5, 0xe6, 0x62, 0xf1, 0x8a, 0x28, 0xc0, 0xd7, 0x46, 0xa4, 0x18, 0x36, 0x1c, 0xcf, 0x95, 0xd8, 0xd5, 0x02, 0xe0, 0x90, 0x1b, 0x94, 0x65, 0xa6, 0xcf, 0x82, 0x26, 0xa4, 0xf7, 0x30, 0xf1, 0x66, 0x02, 0x1a, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4486 = { .name = "ecdh_brainpoolp512r1_4486", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4486_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4486_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4486_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2164 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4487 for ECDH, tcId is 2165 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4487_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x3a, 0xa5, 0xdb, 0xaa, 0xa0, 0x57, 0xf9, 0x98, 0x7e, 0x2e, 0x49, 0x5a, 0x2d, 0xa3, 0x49, 0xf5, 0xd3, 0x0b, 0x64, 0x49, 0x9c, 0xf5, 0x05, 0xe1, 0xa5, 0x1b, 0xe9, 0xa8, 0x2d, 0xb1, 0xb7, 0x5c, 0xee, 0x63, 0x96, 0x05, 0xd9, 0x8f, 0x67, 0x2c, 0x42, 0x95, 0x50, 0x7e, 0x77, 0x8b, 0x2c, 0xe1, 0x6d, 0x22, 0x9c, 0x5f, 0xb3, 0x3d, 0xa4, 0xf5, 0xa3, 0x7c, 0x0c, 0x97, 0xa0, 0x28, 0xfb, 0xde, }; static const unsigned char ecdh_brainpoolp512r1_4487_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4487_sharedsecret[] = { 0x4c, 0xbf, 0x67, 0xa6, 0xee, 0xed, 0x2d, 0x8b, 0xa1, 0xdb, 0x4f, 0x9a, 0xe2, 0xcf, 0xfe, 0x04, 0xf1, 0x95, 0xe4, 0xca, 0xc0, 0x01, 0x5b, 0x69, 0x4f, 0x22, 0x8e, 0xfb, 0xc4, 0xd6, 0x39, 0x6d, 0xd2, 0x1b, 0x75, 0xea, 0x58, 0x74, 0x26, 0xcf, 0x04, 0x3f, 0x16, 0x5a, 0xec, 0x50, 0x55, 0x35, 0xe4, 0xb2, 0x12, 0x5c, 0xdb, 0xf2, 0x0f, 0x56, 0xb7, 0xe0, 0x58, 0xcf, 0x97, 0x1a, 0x61, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4487 = { .name = "ecdh_brainpoolp512r1_4487", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4487_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4487_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4487_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2165 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4488 for ECDH, tcId is 2166 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4488_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x3e, 0x35, 0xce, 0x50, 0x92, 0x1f, 0xe7, 0xb4, 0x5a, 0x53, 0x45, 0x26, 0x90, 0xea, 0x83, 0x98, 0x10, 0x9e, 0x90, 0xb0, 0x98, 0x57, 0x38, 0xe7, 0x75, 0xee, 0x45, 0xc5, 0x26, 0x6b, 0x13, 0x85, 0xdc, 0x19, 0x98, 0x95, 0x6a, 0xe6, 0xe9, 0x27, 0xa0, 0x62, 0xf9, 0x9d, 0x37, 0x29, 0x01, 0x2c, 0x14, 0xf5, 0x52, 0xdc, 0x17, 0x26, 0x7f, 0xcc, 0xdf, 0x63, 0x4d, 0x0d, 0x3e, 0xb3, 0xac, 0xf1, }; static const unsigned char ecdh_brainpoolp512r1_4488_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4488_sharedsecret[] = { 0xa9, 0xcd, 0x01, 0x9a, 0xa0, 0x8a, 0x87, 0x49, 0x34, 0xc6, 0xfc, 0x28, 0xb0, 0xf3, 0x49, 0x82, 0xe3, 0xd1, 0x0e, 0x3a, 0x3a, 0x7a, 0xc5, 0x24, 0x25, 0xc8, 0x0d, 0xb1, 0xd4, 0x70, 0x5f, 0x0c, 0x2b, 0x73, 0x3a, 0xc5, 0x4b, 0xaf, 0x1e, 0x56, 0xcf, 0xa6, 0xe7, 0x57, 0xa5, 0xbc, 0x01, 0xf5, 0x4a, 0xc3, 0x9a, 0x83, 0xd4, 0x2a, 0xa6, 0xe8, 0xbc, 0x5c, 0x65, 0x4a, 0x60, 0xa7, 0xe5, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4488 = { .name = "ecdh_brainpoolp512r1_4488", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4488_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4488_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4488_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2166 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4489 for ECDH, tcId is 2167 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4489_peerpubkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1b, 0x4c, 0x36, 0x39, 0x42, 0x58, 0x38, 0x11, 0xe0, 0xbb, 0xa8, 0xed, 0x31, 0x54, 0x02, 0x62, 0xb8, 0xbe, 0x88, 0xf6, 0x9b, 0x9f, 0xc4, 0xb1, 0x29, 0x2f, 0xb6, 0x8a, 0xeb, 0xae, 0x1f, 0x9a, 0xc9, 0x61, 0xfc, 0x40, 0xb8, 0x5b, 0x5d, 0x09, 0x77, 0x21, 0x43, 0x06, 0x6d, 0x17, 0xc2, 0x25, 0x9a, 0x88, 0x27, 0x69, 0x1d, 0x81, 0x79, 0x92, 0xc8, 0x00, 0xc4, 0xa5, 0xa1, 0x88, 0xe4, 0xc9, }; static const unsigned char ecdh_brainpoolp512r1_4489_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4489_sharedsecret[] = { 0x36, 0x4e, 0x65, 0x73, 0x5b, 0x2b, 0x23, 0x53, 0xb1, 0xb9, 0xdd, 0xfc, 0x4a, 0x5e, 0x23, 0x3b, 0x30, 0xb0, 0xdd, 0x91, 0xe8, 0x01, 0x99, 0x05, 0xbf, 0xfa, 0xcb, 0x6d, 0x59, 0x4b, 0x32, 0xca, 0x79, 0xdf, 0xf5, 0x93, 0xb6, 0x26, 0x9d, 0xdc, 0x7e, 0x80, 0x27, 0x8d, 0xaa, 0xab, 0xa3, 0x41, 0xc3, 0xc3, 0x8f, 0x06, 0x34, 0xa1, 0xae, 0x28, 0x60, 0x37, 0xf1, 0x67, 0x7d, 0xb0, 0xa3, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4489 = { .name = "ecdh_brainpoolp512r1_4489", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4489_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4489_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4489_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2167 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4490 for ECDH, tcId is 2168 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4490_peerpubkey[] = { 0x30, 0x91, 0x81, 0x9f, 0x59, 0x96, 0x71, 0xa0, 0xd2, 0x1d, 0x86, 0x6e, 0xba, 0x2d, 0x54, 0x0a, 0xe0, 0xa4, 0x72, 0xbe, 0x02, 0x52, 0xd3, 0x79, 0x2b, 0xc5, 0xbb, 0x98, 0x4d, 0x20, 0xa8, 0xdf, 0xaa, 0x18, 0x75, 0xe6, 0xd0, 0x52, 0x64, 0x61, 0x55, 0x45, 0xd2, 0xae, 0x78, 0xb9, 0xb5, 0xac, 0xb6, 0x96, 0xfd, 0xf1, 0x68, 0x0a, 0x05, 0xcd, 0x38, 0x2d, 0x83, 0xec, 0xef, 0x25, 0x28, 0x54, 0x1f, 0x79, 0xf9, 0xf1, 0x41, 0x41, 0x25, 0x8d, 0x70, 0xe4, 0x1c, 0x8a, 0x0a, 0x09, 0xcd, 0xba, 0xf2, 0xff, 0xac, 0x9f, 0xcf, 0x0d, 0x38, 0xf4, 0xae, 0xc2, 0x4a, 0x5e, 0xc3, 0x6c, 0xa7, 0x92, 0xc4, 0xfb, 0x3e, 0x25, 0xdb, 0xd5, 0xc1, 0xaa, 0x1a, 0xa2, 0xde, 0x57, 0x86, 0x58, 0x0f, 0x58, 0xd2, 0x86, 0x68, 0x3c, 0xd6, 0xfc, 0xe1, 0x57, 0xe1, 0x80, 0x12, 0x8d, 0xc0, 0x76, 0x32, 0x34, }; static const unsigned char ecdh_brainpoolp512r1_4490_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4490_sharedsecret[] = { 0x49, 0x6b, 0xab, 0x46, 0x0c, 0x5a, 0x1e, 0x76, 0x2d, 0xff, 0x6d, 0x9a, 0x7c, 0x7e, 0x4f, 0xd6, 0xb4, 0x97, 0x3b, 0x92, 0x1a, 0x60, 0xbf, 0x08, 0x19, 0x2a, 0x9b, 0xf5, 0xfb, 0x1e, 0xb5, 0xae, 0x99, 0x3b, 0xe0, 0xb4, 0xb6, 0xff, 0x8c, 0x44, 0x1d, 0x29, 0xf5, 0x91, 0x8f, 0x6f, 0xf5, 0x73, 0x8b, 0xb0, 0xef, 0x79, 0x53, 0xf0, 0x31, 0xdc, 0xe4, 0x9e, 0x76, 0x68, 0x89, 0xff, 0x75, 0x10, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4490 = { .name = "ecdh_brainpoolp512r1_4490", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4490_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4490_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4490_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2168 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4491 for ECDH, tcId is 2169 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4491_peerpubkey[] = { 0x33, 0x9f, 0x77, 0xdb, 0x58, 0xbb, 0x17, 0xaf, 0xd4, 0x05, 0x95, 0x55, 0xb0, 0x59, 0x21, 0x48, 0x89, 0x77, 0x19, 0x82, 0xd9, 0x6f, 0x13, 0x19, 0xc9, 0x95, 0x14, 0x04, 0xc6, 0x09, 0x09, 0xbc, 0x10, 0xbc, 0xec, 0x2f, 0x7d, 0xc6, 0xe5, 0x6d, 0xf4, 0x48, 0x89, 0xc1, 0x92, 0x4a, 0x30, 0x4b, 0xdf, 0xa7, 0xaa, 0x19, 0xd5, 0x62, 0xf4, 0x9c, 0xfb, 0x3a, 0xcd, 0x40, 0x91, 0x00, 0xba, 0xe2, 0x2a, 0x19, 0xd2, 0x98, 0xcd, 0x84, 0x6c, 0xf9, 0xce, 0x03, 0xa6, 0xd7, 0xd1, 0x8c, 0x16, 0x5b, 0x2b, 0x3c, 0x18, 0xb7, 0x05, 0x14, 0xa4, 0x02, 0x0d, 0xae, 0x6e, 0x3d, 0xa6, 0x79, 0xae, 0x54, 0x1d, 0xf2, 0xfb, 0xcd, 0x20, 0xe8, 0x65, 0xbe, 0xcb, 0x54, 0xd3, 0x9c, 0x71, 0xf9, 0x02, 0x84, 0xa5, 0x0c, 0x2c, 0x74, 0x63, 0xa0, 0x43, 0x51, 0xc4, 0xe0, 0xb0, 0x1d, 0x6a, 0x07, 0x78, 0x08, }; static const unsigned char ecdh_brainpoolp512r1_4491_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4491_sharedsecret[] = { 0x07, 0xa4, 0xf5, 0xd7, 0x35, 0xa2, 0x80, 0x94, 0x0f, 0x6e, 0x57, 0xe6, 0xac, 0x6a, 0x1f, 0x73, 0x5a, 0xe4, 0xc4, 0xe2, 0x5d, 0xe6, 0xf5, 0x45, 0x06, 0xc2, 0x2c, 0x19, 0xe6, 0xa3, 0x2f, 0xa9, 0xdb, 0x54, 0x31, 0x58, 0x6d, 0x4f, 0x44, 0x23, 0x24, 0xeb, 0x69, 0x6e, 0x5b, 0xc4, 0x4f, 0x80, 0xa4, 0xa6, 0x72, 0xd7, 0xb7, 0x99, 0xc6, 0x05, 0x45, 0x0f, 0x1d, 0xd9, 0x18, 0xdf, 0xa3, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4491 = { .name = "ecdh_brainpoolp512r1_4491", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4491_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4491_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4491_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2169 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4492 for ECDH, tcId is 2170 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4492_peerpubkey[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x28, 0x54, 0x14, 0x90, 0x62, 0xfd, 0x69, 0x2e, 0xec, 0xc2, 0x30, 0x27, 0x47, 0xcc, 0x08, 0xbe, 0x85, 0x4c, 0x64, 0xc4, 0xf9, 0xab, 0xe8, 0x6c, 0x46, 0x7f, 0x16, 0x14, 0x96, 0xb1, 0x9a, 0x52, 0xbb, 0xb5, 0xa4, 0xda, 0x84, 0x39, 0x25, 0x73, 0xd7, 0xe9, 0x63, 0x2a, 0x04, 0x0e, 0x9d, 0xd7, 0x37, 0xbc, 0x90, 0x89, 0xae, 0xdf, 0x5b, 0x0c, 0x15, 0x48, 0x8e, 0x9f, 0x1b, 0x08, 0x3a, 0x7a, }; static const unsigned char ecdh_brainpoolp512r1_4492_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4492_sharedsecret[] = { 0x6b, 0x3d, 0x87, 0xc9, 0x62, 0x32, 0x1b, 0xed, 0x12, 0xa8, 0x67, 0x18, 0x0b, 0x3d, 0xee, 0x7d, 0x4b, 0x31, 0xa0, 0x69, 0x2d, 0x36, 0xe6, 0x0e, 0x73, 0x64, 0x89, 0x86, 0x74, 0x2c, 0x42, 0xb1, 0x87, 0xf9, 0x6a, 0x22, 0x08, 0x8b, 0x15, 0x39, 0xa8, 0xad, 0x83, 0x2c, 0xc5, 0x32, 0xad, 0xc9, 0x54, 0x70, 0xb4, 0x7e, 0x62, 0x3c, 0x65, 0xc6, 0x1f, 0xf5, 0xda, 0x8c, 0xef, 0xfc, 0x10, 0x0c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4492 = { .name = "ecdh_brainpoolp512r1_4492", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4492_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4492_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4492_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2170 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4493 for ECDH, tcId is 2171 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4493_peerpubkey[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x4b, 0x98, 0x46, 0x88, 0x7f, 0x87, 0x52, 0x42, 0x7b, 0xeb, 0x39, 0xfb, 0xad, 0x36, 0xf0, 0xa0, 0x17, 0x0e, 0x3f, 0x22, 0x5a, 0x7b, 0x0c, 0x1f, 0xc0, 0x52, 0x8c, 0x9e, 0xe8, 0xf4, 0x95, 0x7f, 0xb3, 0x23, 0xfa, 0xa8, 0xa5, 0xa3, 0x29, 0xc0, 0x3c, 0x0f, 0xe2, 0xb8, 0xdf, 0x08, 0x20, 0x9d, 0x3a, 0xd7, 0x8f, 0x8b, 0x16, 0x17, 0x45, 0x14, 0x4b, 0x41, 0x8c, 0x4e, 0x26, 0xf3, 0xb2, 0x76, }; static const unsigned char ecdh_brainpoolp512r1_4493_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4493_sharedsecret[] = { 0x97, 0xd1, 0xca, 0xa3, 0xbb, 0x77, 0x45, 0x6f, 0x5e, 0xa8, 0x14, 0x2f, 0x85, 0xe5, 0xe2, 0x29, 0x31, 0xb5, 0x59, 0xc8, 0x19, 0x47, 0xa0, 0xf2, 0xc9, 0xce, 0x5b, 0x23, 0x98, 0x0d, 0x9b, 0xde, 0x1a, 0x9f, 0x42, 0xc2, 0x4b, 0x74, 0xe2, 0x26, 0x6d, 0xbf, 0x26, 0x5f, 0x8a, 0x6f, 0x94, 0x9f, 0xc2, 0x2b, 0x5d, 0x75, 0xb9, 0x3b, 0xbb, 0x1c, 0x32, 0x55, 0x7d, 0x9e, 0xac, 0xf7, 0xe2, 0x79, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4493 = { .name = "ecdh_brainpoolp512r1_4493", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4493_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4493_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4493_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2171 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4494 for ECDH, tcId is 2172 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4494_peerpubkey[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x09, 0xa3, 0x71, 0x14, 0xd6, 0xa5, 0xc9, 0xee, 0x64, 0x37, 0x1c, 0x57, 0xbd, 0xd2, 0x64, 0xe1, 0x76, 0x4e, 0xdd, 0xa6, 0x4f, 0x44, 0x9c, 0xbd, 0x0e, 0xe1, 0xa7, 0x20, 0x09, 0x89, 0x02, 0x67, 0xfc, 0x1a, 0xe7, 0xd2, 0xee, 0x5d, 0xdf, 0xbb, 0x5b, 0x16, 0x93, 0xbd, 0xa1, 0xa0, 0xb5, 0x49, 0x4c, 0x86, 0x2e, 0x0e, 0xd1, 0xdf, 0x03, 0xb7, 0x02, 0xf2, 0xf2, 0xc2, 0x06, 0xe4, 0xc5, 0x2c, }; static const unsigned char ecdh_brainpoolp512r1_4494_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4494_sharedsecret[] = { 0x7e, 0xbb, 0x50, 0x24, 0xc3, 0x6f, 0x9f, 0x24, 0x9f, 0x16, 0x4e, 0x6b, 0x8f, 0xcb, 0xbb, 0xa3, 0xec, 0x25, 0x5d, 0x5f, 0x8e, 0x27, 0x97, 0x65, 0xb9, 0x86, 0x9c, 0xf9, 0x73, 0x11, 0x41, 0x1c, 0x35, 0x90, 0x84, 0xfe, 0x6b, 0x76, 0x95, 0x6e, 0xfa, 0x55, 0xc1, 0xd6, 0x08, 0xf0, 0x13, 0x42, 0x33, 0x97, 0x17, 0x86, 0x17, 0x93, 0x5e, 0xa1, 0x10, 0xc9, 0x36, 0xff, 0xb7, 0x33, 0x17, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4494 = { .name = "ecdh_brainpoolp512r1_4494", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4494_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4494_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4494_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2172 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4495 for ECDH, tcId is 2173 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4495_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x27, 0xcd, 0x77, 0x71, 0x2e, 0x0d, 0xb1, 0x97, 0x81, 0x86, 0xe9, 0xd6, 0xfe, 0xb6, 0xea, 0xa0, 0x34, 0x31, 0x8f, 0xbf, 0xba, 0xb7, 0xfa, 0x33, 0x42, 0xa9, 0xe4, 0x3e, 0xee, 0xa0, 0x4c, 0x28, 0xdd, 0xde, 0x02, 0x19, 0x16, 0xd5, 0xfc, 0xfe, 0x2d, 0x1b, 0x43, 0x74, 0x3c, 0xa1, 0xec, 0x2b, 0x52, 0x88, 0xcd, 0x55, 0x39, 0x01, 0x82, 0x5e, 0x46, 0x52, 0xcf, 0x4c, 0xf5, 0x24, 0xbc, 0xb4, }; static const unsigned char ecdh_brainpoolp512r1_4495_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4495_sharedsecret[] = { 0x38, 0x09, 0x86, 0xa2, 0xfb, 0xf3, 0xd5, 0xc6, 0xd3, 0x8a, 0xc5, 0xea, 0x19, 0x1f, 0x7e, 0xf4, 0x68, 0x1f, 0x06, 0x8b, 0x47, 0x5b, 0x61, 0xbf, 0xd9, 0x09, 0xa6, 0xc3, 0xa3, 0x0c, 0x73, 0x1c, 0x30, 0xcf, 0xe9, 0xac, 0x0e, 0x7d, 0xda, 0x52, 0x1e, 0x57, 0x4f, 0xbb, 0x6c, 0xaf, 0x9d, 0xc5, 0x2e, 0xb3, 0xeb, 0xe3, 0x10, 0x6a, 0x45, 0x7f, 0x5b, 0xda, 0x96, 0x98, 0xd2, 0x52, 0xd8, 0x27, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4495 = { .name = "ecdh_brainpoolp512r1_4495", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4495_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4495_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4495_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2173 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4496 for ECDH, tcId is 2174 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4496_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x02, 0x6c, 0x17, 0x23, 0x80, 0x34, 0xc8, 0x37, 0x22, 0x17, 0xa8, 0xcd, 0x9a, 0x23, 0x4e, 0xcb, 0x7d, 0xeb, 0xde, 0xc5, 0x65, 0x9b, 0x7e, 0x3f, 0x0c, 0x6e, 0x70, 0xba, 0x22, 0x68, 0x24, 0xf5, 0x6a, 0xcc, 0xe0, 0x25, 0xae, 0x65, 0xda, 0x8b, 0x0a, 0xeb, 0xc2, 0xef, 0xe2, 0xef, 0x73, 0xdd, 0x82, 0x6c, 0xea, 0x15, 0x1b, 0x20, 0x1b, 0x2f, 0x5b, 0x4f, 0x76, 0x23, 0xf2, 0xfb, 0xe3, 0x32, }; static const unsigned char ecdh_brainpoolp512r1_4496_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4496_sharedsecret[] = { 0xa5, 0x02, 0xa7, 0xd0, 0xee, 0x20, 0x77, 0xa3, 0xd4, 0xb4, 0x84, 0xb0, 0x2e, 0x2e, 0xd2, 0xd0, 0xd1, 0x32, 0xeb, 0xd4, 0x8c, 0x2c, 0x7d, 0x99, 0xf1, 0x46, 0x1e, 0x1b, 0x44, 0x28, 0xce, 0x97, 0xa3, 0x17, 0xe2, 0x6e, 0xf9, 0x04, 0x62, 0xe7, 0x04, 0x36, 0x78, 0x9c, 0xbc, 0xc2, 0x79, 0x86, 0xd6, 0x44, 0xe7, 0x95, 0x06, 0x50, 0x61, 0x2d, 0x9f, 0xa2, 0xbe, 0x50, 0xd0, 0x7e, 0xa5, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4496 = { .name = "ecdh_brainpoolp512r1_4496", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4496_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4496_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4496_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2174 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4497 for ECDH, tcId is 2175 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4497_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x12, 0x78, 0x0a, 0xe4, 0xd2, 0xfa, 0xd1, 0x16, 0x3e, 0x2a, 0x51, 0x3d, 0x72, 0xad, 0x6e, 0x3c, 0x22, 0x11, 0xf8, 0x07, 0x9c, 0xcb, 0xdd, 0xeb, 0x9b, 0x1e, 0x95, 0x6b, 0x2e, 0xe3, 0x61, 0x73, 0xab, 0xe8, 0x44, 0x64, 0xb0, 0xc7, 0x8d, 0xca, 0x8d, 0xb2, 0x1f, 0x69, 0x64, 0xe9, 0xa1, 0x39, 0x8a, 0x5a, 0x0f, 0x6e, 0x1e, 0x71, 0x7d, 0xdf, 0x4e, 0xac, 0x51, 0x70, 0x32, 0x87, 0x92, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_4497_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512r1_4497_sharedsecret[] = { 0x7b, 0xd3, 0xf0, 0x2e, 0x85, 0x46, 0x41, 0x63, 0x81, 0x58, 0x04, 0xeb, 0x8f, 0x5c, 0xdf, 0x3c, 0xea, 0x25, 0x8b, 0x52, 0x0e, 0xf5, 0x64, 0xd8, 0x13, 0xee, 0x41, 0x02, 0xa3, 0x9e, 0x93, 0xf6, 0x04, 0xd1, 0xc5, 0x37, 0xbb, 0x93, 0xac, 0x7b, 0x9d, 0x0f, 0xff, 0xcf, 0x89, 0x17, 0x7f, 0x45, 0x86, 0xea, 0x69, 0x0b, 0xfe, 0x93, 0xa9, 0x63, 0x2c, 0x64, 0x50, 0x38, 0xa4, 0x7e, 0x82, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4497 = { .name = "ecdh_brainpoolp512r1_4497", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4497_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4497_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4497_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2175 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4498 for ECDH, tcId is 2176 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4498_peerpubkey[] = { 0x32, 0x3b, 0xb8, 0x3b, 0x14, 0xb2, 0xef, 0xcb, 0xa8, 0x7d, 0xd6, 0x05, 0x98, 0xa6, 0xaf, 0xdd, 0xc6, 0x9b, 0x89, 0xf1, 0x82, 0x0c, 0xc1, 0x74, 0xfa, 0xed, 0xae, 0xdd, 0x5f, 0xd1, 0xdd, 0xcf, 0x96, 0x79, 0xe3, 0x7a, 0xd8, 0xaa, 0x0c, 0x71, 0x21, 0x3e, 0xf2, 0xa7, 0xc5, 0x83, 0x3a, 0x4b, 0x50, 0x91, 0xda, 0x99, 0x45, 0x9d, 0xc6, 0xc1, 0xaa, 0x5a, 0xea, 0xd7, 0xc6, 0x46, 0x85, 0x74, 0x12, 0x85, 0xe6, 0xb2, 0xa0, 0x1a, 0xf2, 0x1b, 0x80, 0x53, 0x72, 0x82, 0x7e, 0x25, 0x14, 0x92, 0xcf, 0x6a, 0x5a, 0xc6, 0x52, 0xa0, 0x67, 0xce, 0x0f, 0xba, 0x82, 0x0a, 0xea, 0xbe, 0xac, 0xfb, 0x0a, 0x8c, 0xd5, 0xc6, 0x70, 0x93, 0x28, 0x65, 0x28, 0xdc, 0xff, 0xe4, 0xa9, 0xfe, 0x4d, 0x76, 0xf4, 0xbc, 0x06, 0x08, 0x59, 0x82, 0x8b, 0xdb, 0x1b, 0x2c, 0x4c, 0xf7, 0xf2, 0xb5, 0xe9, 0x25, }; static const unsigned char ecdh_brainpoolp512r1_4498_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4498_sharedsecret[] = { 0x2f, 0x70, 0xb9, 0x39, 0x18, 0x26, 0xc4, 0xa0, 0xdc, 0xa8, 0xd4, 0x2b, 0xe8, 0xe0, 0x50, 0xb5, 0xaf, 0x9f, 0x63, 0xb4, 0xba, 0x7d, 0x1a, 0x3d, 0xcf, 0xa2, 0xa7, 0x69, 0xcd, 0x6a, 0xb2, 0xe7, 0xa9, 0xe9, 0x18, 0x83, 0x93, 0x41, 0x24, 0x85, 0xe9, 0x0c, 0xc4, 0x60, 0xae, 0xf6, 0x35, 0xca, 0xf0, 0x91, 0x83, 0x59, 0xd7, 0x7c, 0x21, 0x01, 0xc9, 0x84, 0x82, 0xa1, 0xe0, 0x29, 0xfa, 0x2a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4498 = { .name = "ecdh_brainpoolp512r1_4498", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4498_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4498_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4498_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2176 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4499 for ECDH, tcId is 2177 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4499_peerpubkey[] = { 0x3b, 0xcd, 0xa6, 0x90, 0xd9, 0x57, 0x70, 0x05, 0xb4, 0x68, 0x7c, 0x4f, 0x0e, 0x34, 0xf0, 0xb5, 0xb3, 0x35, 0x2c, 0xa1, 0x01, 0x75, 0x24, 0x6d, 0x3d, 0xa5, 0x51, 0x4a, 0x0e, 0xb7, 0xa8, 0x77, 0xc5, 0x1e, 0xdc, 0x43, 0x0c, 0x0e, 0x5e, 0x7b, 0x56, 0xc8, 0x98, 0x7e, 0x51, 0xfa, 0xcd, 0x90, 0xd6, 0x6c, 0xa0, 0x97, 0xa6, 0xa0, 0x0e, 0xbe, 0x7c, 0x35, 0x28, 0x61, 0xfa, 0xbb, 0x5d, 0xbe, 0x4c, 0x4e, 0x8d, 0xb0, 0x47, 0x45, 0xf9, 0x4a, 0xf5, 0xfb, 0x37, 0x92, 0xd9, 0x7c, 0x37, 0x39, 0x65, 0x70, 0x77, 0xf4, 0x48, 0x13, 0x0b, 0xe7, 0x95, 0x8c, 0x57, 0x60, 0xb3, 0x13, 0xd9, 0xd3, 0x7b, 0x33, 0x10, 0xb8, 0x49, 0x8f, 0x66, 0x7a, 0x09, 0x34, 0x53, 0xce, 0x61, 0x22, 0x2c, 0x0c, 0x0d, 0x68, 0xac, 0x2d, 0x28, 0x3a, 0x40, 0x33, 0xf4, 0x54, 0xef, 0x22, 0x50, 0xe9, 0x4a, 0xbe, }; static const unsigned char ecdh_brainpoolp512r1_4499_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4499_sharedsecret[] = { 0x06, 0xe9, 0xb8, 0x63, 0x6e, 0xad, 0xb7, 0x25, 0x61, 0xb2, 0x15, 0xd9, 0x98, 0x70, 0x38, 0x25, 0xbb, 0x7c, 0xe8, 0x08, 0xe2, 0x3a, 0x10, 0x98, 0x70, 0x14, 0xe3, 0x9f, 0x2c, 0x5b, 0x38, 0x14, 0x03, 0x2b, 0x64, 0x3c, 0x9c, 0x10, 0xbe, 0x08, 0x61, 0xd8, 0x5a, 0x0b, 0x50, 0x8f, 0x43, 0x42, 0xad, 0x65, 0xfa, 0xc6, 0xa1, 0x29, 0x61, 0xdf, 0xd9, 0xe4, 0x0f, 0xe3, 0x03, 0x99, 0xda, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4499 = { .name = "ecdh_brainpoolp512r1_4499", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4499_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4499_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4499_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2177 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4500 for ECDH, tcId is 2178 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4500_peerpubkey[] = { 0x0d, 0xad, 0x6a, 0x11, 0x5d, 0xf7, 0x8f, 0x04, 0xc4, 0x34, 0x9f, 0x6d, 0x00, 0x16, 0xe0, 0x56, 0x97, 0x77, 0x91, 0xa9, 0x5b, 0x56, 0x8b, 0x2f, 0x0d, 0xa5, 0x21, 0x87, 0xc0, 0x4f, 0xea, 0x30, 0xbf, 0x37, 0xb4, 0x76, 0xf0, 0xab, 0xf1, 0x89, 0x13, 0xc1, 0xac, 0xaa, 0x8e, 0xe6, 0xb2, 0x41, 0x91, 0xc7, 0x97, 0xa2, 0x6a, 0x61, 0x36, 0x70, 0xb6, 0xfc, 0x10, 0x3c, 0x88, 0x0e, 0xe5, 0x41, 0x27, 0xb9, 0x4a, 0x5c, 0x65, 0x74, 0xb6, 0xe7, 0xec, 0x5f, 0x6f, 0x93, 0x24, 0xb1, 0x08, 0x4a, 0xde, 0xbc, 0xcb, 0x00, 0x95, 0x78, 0x0a, 0xe9, 0xea, 0x5f, 0x59, 0x6c, 0x1b, 0x6e, 0xae, 0x4a, 0x39, 0x98, 0xcf, 0xfc, 0xb8, 0x1e, 0xa6, 0x5b, 0xa2, 0x31, 0x37, 0x50, 0x82, 0x01, 0x3f, 0xaf, 0x24, 0xae, 0x31, 0x21, 0xc8, 0x6c, 0xfc, 0x19, 0xdf, 0xaf, 0xaf, 0xfe, 0x2e, 0xbc, 0x55, 0x1b, }; static const unsigned char ecdh_brainpoolp512r1_4500_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4500_sharedsecret[] = { 0x54, 0x05, 0xb3, 0x4c, 0x5f, 0xf1, 0x66, 0xd5, 0xa1, 0xb3, 0x73, 0x25, 0x83, 0x92, 0x14, 0x0c, 0x6d, 0x95, 0x64, 0xdc, 0x06, 0xb2, 0x6c, 0x06, 0x86, 0x68, 0x8d, 0xa1, 0x61, 0x89, 0x12, 0xa3, 0xf0, 0xf3, 0x87, 0xb4, 0x59, 0xb8, 0x7d, 0x33, 0x62, 0x5d, 0xe1, 0xbc, 0xd3, 0x10, 0xcf, 0xf2, 0x20, 0x6f, 0x72, 0xdf, 0xd4, 0xdb, 0xfc, 0x3b, 0xe7, 0x9a, 0x24, 0x3e, 0xa0, 0xaf, 0xba, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4500 = { .name = "ecdh_brainpoolp512r1_4500", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4500_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4500_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4500_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2178 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4501 for ECDH, tcId is 2179 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4501_peerpubkey[] = { 0x51, 0x6f, 0x58, 0x98, 0xa5, 0x57, 0x32, 0x31, 0x5c, 0x92, 0x92, 0xb8, 0xe1, 0xd4, 0x38, 0x04, 0x74, 0x97, 0x4e, 0x25, 0x1a, 0xf9, 0xec, 0x41, 0x3c, 0x3d, 0x64, 0x27, 0x48, 0x8e, 0x56, 0x34, 0xf6, 0x00, 0x4c, 0xe3, 0x50, 0xbd, 0x3c, 0x74, 0xa5, 0x1f, 0x1e, 0xe0, 0xe3, 0x71, 0x9c, 0xa8, 0x04, 0x55, 0x98, 0x99, 0x7d, 0x22, 0x71, 0xef, 0x2f, 0x53, 0x95, 0x76, 0xad, 0x52, 0x73, 0x23, 0x98, 0x9f, 0xa0, 0x04, 0xb6, 0xa6, 0x8c, 0xc2, 0x75, 0xe9, 0xd9, 0x1c, 0x54, 0xf8, 0xe1, 0xa8, 0xd0, 0xe5, 0x6e, 0xd2, 0xab, 0x50, 0xaf, 0xe7, 0xa8, 0xa5, 0x4f, 0x7e, 0xdd, 0x04, 0x17, 0x40, 0xb8, 0xd4, 0x4c, 0x09, 0x09, 0xcf, 0x00, 0xc5, 0x93, 0x7c, 0x64, 0x2d, 0x50, 0xbd, 0x7d, 0xf7, 0x06, 0x02, 0x2d, 0x66, 0x6d, 0x32, 0x40, 0x6c, 0x9a, 0xfe, 0x18, 0xc3, 0xaa, 0xc2, 0xfc, 0xa4, }; static const unsigned char ecdh_brainpoolp512r1_4501_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4501_sharedsecret[] = { 0xaa, 0xcc, 0xb2, 0xb2, 0x17, 0xab, 0x92, 0xd5, 0xd6, 0x8e, 0xc9, 0x39, 0x7a, 0x4a, 0x59, 0xef, 0xa2, 0xee, 0x92, 0xb2, 0xa1, 0x94, 0x10, 0x94, 0x2d, 0x52, 0xa3, 0x40, 0x61, 0x1a, 0x9f, 0xbc, 0xb7, 0x34, 0x87, 0x83, 0x92, 0xde, 0x16, 0xb4, 0x38, 0x23, 0xbf, 0x9f, 0xd5, 0xe6, 0xe1, 0x08, 0x5a, 0xd3, 0x4f, 0xfb, 0x2d, 0x94, 0xbd, 0x6e, 0xc0, 0x73, 0x8a, 0x5d, 0xf1, 0xd9, 0x38, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4501 = { .name = "ecdh_brainpoolp512r1_4501", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4501_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4501_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4501_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2179 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4502 for ECDH, tcId is 2180 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4502_peerpubkey[] = { 0x06, 0xe9, 0xcc, 0xbf, 0x93, 0x09, 0x71, 0x9c, 0x1b, 0x22, 0xe6, 0xa0, 0x36, 0x81, 0x07, 0xc3, 0xc2, 0xa1, 0x1e, 0xb2, 0x0a, 0x0e, 0xf4, 0x0b, 0xc2, 0xbe, 0x53, 0x4a, 0x75, 0x56, 0x59, 0xd9, 0xf2, 0x89, 0xf8, 0xb3, 0x49, 0x6d, 0x62, 0x33, 0x8d, 0x8c, 0xc8, 0x5a, 0x83, 0xeb, 0xd4, 0x76, 0x6c, 0x46, 0x5f, 0x82, 0x2b, 0x93, 0xb4, 0xd6, 0x60, 0x35, 0xb7, 0xfc, 0xd4, 0xe7, 0xe7, 0xda, 0x90, 0x42, 0x03, 0xc4, 0x03, 0xdf, 0x9e, 0x84, 0xfa, 0x1d, 0xc0, 0xcd, 0x36, 0x13, 0xde, 0x20, 0x69, 0xb3, 0x00, 0x9e, 0xfd, 0x80, 0xca, 0x88, 0x07, 0xbf, 0x46, 0x68, 0x57, 0xa7, 0x1f, 0x29, 0x8b, 0x95, 0xe7, 0x94, 0x06, 0x87, 0x63, 0xea, 0x84, 0x02, 0x18, 0xf2, 0x76, 0xf4, 0x23, 0xa9, 0x5d, 0x36, 0xff, 0x98, 0x86, 0xa8, 0x99, 0xa4, 0x46, 0xaf, 0xf1, 0xaa, 0xdd, 0x6a, 0x77, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_4502_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4502_sharedsecret[] = { 0x97, 0x46, 0x10, 0x4b, 0xba, 0xf2, 0xd5, 0x03, 0x66, 0x88, 0xb7, 0x29, 0xa0, 0xe3, 0x1b, 0xd9, 0x70, 0x07, 0xef, 0x26, 0x6b, 0x0b, 0xfb, 0x20, 0x09, 0xfc, 0x3c, 0xfa, 0x3f, 0x84, 0x2b, 0xa8, 0xee, 0x0a, 0x92, 0xff, 0xf6, 0x00, 0x8f, 0xf7, 0xf0, 0xeb, 0x84, 0x9c, 0xb0, 0x93, 0x69, 0x59, 0x1b, 0x72, 0x60, 0xac, 0xcb, 0xff, 0x8a, 0xe3, 0xa8, 0x78, 0x88, 0x0c, 0xec, 0xdb, 0x00, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4502 = { .name = "ecdh_brainpoolp512r1_4502", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4502_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4502_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4502_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2180 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4503 for ECDH, tcId is 2181 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4503_peerpubkey[] = { 0x18, 0x82, 0x2f, 0x6e, 0x17, 0x09, 0x4b, 0x31, 0x55, 0xef, 0xb2, 0xb8, 0xb1, 0x08, 0x30, 0x29, 0xd4, 0x6c, 0x36, 0x41, 0xde, 0x5b, 0xfb, 0xe8, 0xe5, 0x06, 0xaa, 0x96, 0xf6, 0xa3, 0xca, 0x8e, 0x4a, 0xa9, 0x6f, 0xe7, 0x57, 0xbc, 0x5c, 0x01, 0xe9, 0x18, 0x09, 0xe9, 0xcb, 0xac, 0xa6, 0x35, 0xce, 0x7f, 0x5b, 0x20, 0x9a, 0x56, 0x8f, 0x64, 0xc9, 0xe6, 0xe9, 0x0d, 0x06, 0x1a, 0x45, 0xc7, 0x4b, 0x02, 0xae, 0x03, 0x10, 0x10, 0x8f, 0xb3, 0xb5, 0x29, 0x1b, 0x60, 0xc8, 0x5b, 0xef, 0x56, 0x9c, 0x02, 0xab, 0x17, 0xef, 0x95, 0xbe, 0xe2, 0x62, 0xb0, 0x96, 0x80, 0x7e, 0x99, 0x20, 0x11, 0xbd, 0xac, 0x9e, 0x59, 0xbf, 0xd9, 0x49, 0x9c, 0x8c, 0x9a, 0x3a, 0x9e, 0x48, 0x80, 0x2c, 0x6e, 0x48, 0xe0, 0xa5, 0x87, 0x54, 0x1d, 0xfd, 0xb5, 0x43, 0x96, 0x1f, 0xfc, 0x12, 0x9f, 0x20, 0xa4, }; static const unsigned char ecdh_brainpoolp512r1_4503_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4503_sharedsecret[] = { 0x5c, 0x23, 0xec, 0xbb, 0xf1, 0x58, 0xd2, 0x0b, 0xac, 0xc9, 0xaf, 0x5d, 0xcc, 0xf4, 0x6c, 0x6a, 0x21, 0x24, 0xff, 0x56, 0xfb, 0xf2, 0x3d, 0xa0, 0x31, 0x74, 0xed, 0xf1, 0x04, 0x3e, 0x48, 0x1d, 0x49, 0x3c, 0x29, 0xb0, 0x7d, 0x24, 0x48, 0x6a, 0x54, 0x48, 0xfc, 0x82, 0x16, 0x06, 0xf7, 0xdf, 0x5b, 0x65, 0x9a, 0xf3, 0x67, 0xa6, 0x55, 0xc8, 0xa2, 0x1d, 0x7e, 0x69, 0xf7, 0xd9, 0x34, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4503 = { .name = "ecdh_brainpoolp512r1_4503", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4503_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4503_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4503_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2181 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4504 for ECDH, tcId is 2182 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4504_peerpubkey[] = { 0x43, 0x8b, 0xc0, 0x54, 0x18, 0xdc, 0xd9, 0x23, 0x82, 0x22, 0x4d, 0xe3, 0x70, 0xc3, 0x7e, 0x22, 0xb2, 0xce, 0x99, 0xde, 0x4a, 0xcf, 0x3b, 0xf6, 0x3e, 0xd9, 0x81, 0x46, 0x76, 0x30, 0x8e, 0xb0, 0x6b, 0x1a, 0x7f, 0x2d, 0xb2, 0x46, 0xf2, 0x49, 0x80, 0x95, 0x00, 0x13, 0xb9, 0x46, 0xc9, 0x0b, 0x70, 0xe3, 0x6e, 0x35, 0xf7, 0x83, 0x63, 0x3c, 0x83, 0x52, 0xfd, 0x40, 0x77, 0xa4, 0x5f, 0xfc, 0xaa, 0x6e, 0xdd, 0xa0, 0x4f, 0x5f, 0xbd, 0xb4, 0x4d, 0xae, 0xc5, 0x7d, 0xf7, 0x38, 0x07, 0x64, 0x4c, 0xe6, 0x82, 0x8f, 0xc5, 0xb2, 0x21, 0x77, 0x39, 0x72, 0x38, 0x6d, 0x7c, 0x5e, 0x0b, 0x54, 0xce, 0x87, 0x6b, 0x12, 0xe1, 0x2b, 0xcd, 0xe8, 0x8c, 0xa6, 0x7d, 0x4a, 0x9e, 0x0f, 0x9f, 0x68, 0x3b, 0x55, 0x2d, 0x24, 0xc8, 0x14, 0xf8, 0xc3, 0xf9, 0x20, 0x34, 0x0b, 0xb5, 0x26, 0x24, 0xbf, }; static const unsigned char ecdh_brainpoolp512r1_4504_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4504_sharedsecret[] = { 0x67, 0x58, 0x13, 0xfa, 0x3c, 0x09, 0xb1, 0x0a, 0x1e, 0xf8, 0x73, 0x63, 0x0c, 0x63, 0xc8, 0xfc, 0xeb, 0xc6, 0xc3, 0x03, 0x7f, 0xde, 0x15, 0x11, 0xbd, 0xac, 0x26, 0x73, 0x6e, 0xf9, 0xd1, 0x8b, 0x53, 0x71, 0x3c, 0x79, 0x15, 0xe8, 0xba, 0x12, 0x5d, 0xc3, 0xe1, 0x23, 0xb8, 0x5b, 0xaf, 0xd4, 0x72, 0x7a, 0xbb, 0xcb, 0x53, 0x42, 0x58, 0x9b, 0xf7, 0xa4, 0xa6, 0xb7, 0x6d, 0x3b, 0x1e, 0x21, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4504 = { .name = "ecdh_brainpoolp512r1_4504", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4504_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4504_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4504_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2182 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4505 for ECDH, tcId is 2183 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4505_peerpubkey[] = { 0x5d, 0x73, 0x0e, 0x9f, 0xba, 0x92, 0x72, 0x81, 0xb1, 0x82, 0x7e, 0x19, 0x1a, 0x67, 0x77, 0xc9, 0xfe, 0x8b, 0x70, 0x9c, 0x22, 0xbf, 0x88, 0x56, 0x27, 0x78, 0x1a, 0x37, 0x96, 0xf3, 0x4d, 0xec, 0xf2, 0x4d, 0x77, 0xb4, 0x53, 0x59, 0x1b, 0x4a, 0x9c, 0x01, 0xde, 0x23, 0xc6, 0x74, 0xea, 0xcd, 0x5e, 0x17, 0xe0, 0xc0, 0xf1, 0x6f, 0x69, 0xa8, 0x51, 0x4a, 0x65, 0x76, 0xb9, 0xd8, 0xb4, 0x65, 0x85, 0x66, 0xbe, 0x61, 0x03, 0x8b, 0xc8, 0x65, 0x71, 0x5a, 0xdd, 0x8d, 0x9f, 0xa8, 0xf0, 0x66, 0xff, 0x4c, 0x2b, 0xba, 0xe0, 0x3d, 0x62, 0x05, 0xa2, 0x2c, 0xfd, 0x35, 0xde, 0x5c, 0xf6, 0x36, 0xdc, 0xc1, 0x73, 0x80, 0x60, 0x2b, 0x11, 0x56, 0xb5, 0xa6, 0x91, 0xae, 0x6b, 0x66, 0x28, 0x60, 0xcb, 0x30, 0x87, 0x9b, 0x39, 0xc4, 0xc0, 0x28, 0x74, 0x6d, 0x13, 0x4a, 0x6c, 0xf3, 0x5b, 0xa6, }; static const unsigned char ecdh_brainpoolp512r1_4505_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4505_sharedsecret[] = { 0x08, 0x6f, 0x5a, 0xd6, 0x77, 0xf2, 0x88, 0xf8, 0x8a, 0x31, 0xd3, 0x43, 0xf3, 0x4c, 0xe2, 0x32, 0x2b, 0x05, 0x23, 0xd2, 0xad, 0xfb, 0x0e, 0x15, 0x9d, 0x02, 0x69, 0xd5, 0xb0, 0x44, 0x88, 0x3a, 0xdf, 0x44, 0x9f, 0xb6, 0x7a, 0x6c, 0x1c, 0xe4, 0x59, 0x08, 0x5b, 0x12, 0xe1, 0x89, 0x2e, 0x51, 0x9f, 0x27, 0x58, 0xd1, 0xd9, 0x9e, 0xcd, 0xe3, 0xc6, 0x95, 0xa6, 0xaa, 0xbf, 0xb4, 0x0d, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4505 = { .name = "ecdh_brainpoolp512r1_4505", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4505_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4505_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4505_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2183 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4506 for ECDH, tcId is 2184 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4506_peerpubkey[] = { 0x7c, 0xa8, 0xf4, 0x44, 0x36, 0x42, 0x62, 0x0f, 0xc1, 0x47, 0xf3, 0x3c, 0x02, 0x9b, 0x2f, 0x00, 0xff, 0xb8, 0x18, 0x74, 0x7d, 0xe0, 0xdd, 0x35, 0x26, 0xca, 0xcc, 0x54, 0x31, 0xcc, 0x54, 0xf3, 0xb9, 0x8c, 0x36, 0xf1, 0x2a, 0xe7, 0xfa, 0xd2, 0x44, 0x02, 0x44, 0xe8, 0xec, 0x29, 0x04, 0x6a, 0x40, 0x1e, 0x03, 0xc2, 0xfa, 0xcb, 0x8a, 0x05, 0xd6, 0xcb, 0x8e, 0x75, 0x4d, 0xed, 0x17, 0x91, 0x1c, 0x33, 0x0d, 0x53, 0xed, 0x47, 0x95, 0x27, 0x69, 0xc7, 0x80, 0x11, 0xdc, 0x32, 0xeb, 0x6a, 0xdc, 0x7d, 0x64, 0xd3, 0xc8, 0xdb, 0xe1, 0xd0, 0xc5, 0xf9, 0xac, 0xec, 0x72, 0x9c, 0xd1, 0x61, 0xe6, 0x1b, 0x26, 0x31, 0xac, 0xd8, 0xc9, 0x38, 0x58, 0x72, 0x9b, 0xcb, 0x3c, 0xc9, 0x7f, 0x69, 0xc8, 0xda, 0xf2, 0x83, 0xd6, 0x20, 0x73, 0xf4, 0x8f, 0x50, 0x86, 0xb6, 0xe8, 0x7c, 0x90, 0x24, }; static const unsigned char ecdh_brainpoolp512r1_4506_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4506_sharedsecret[] = { 0x90, 0xe5, 0xcd, 0xdd, 0x38, 0x74, 0x00, 0x5f, 0x30, 0x1f, 0x67, 0xa9, 0x3b, 0x83, 0xdd, 0x9a, 0x95, 0xfe, 0xa2, 0xb7, 0x17, 0x20, 0xeb, 0x4b, 0x19, 0xf6, 0x67, 0x11, 0x45, 0x85, 0x8f, 0xec, 0xe7, 0xa7, 0x07, 0xf7, 0xe8, 0xed, 0x7c, 0xd1, 0xba, 0xc0, 0xc7, 0x04, 0x0c, 0x0f, 0xd8, 0xd9, 0xc6, 0x20, 0x12, 0x08, 0x80, 0x4d, 0x9b, 0x31, 0x12, 0x63, 0x96, 0x1a, 0xbf, 0x87, 0xe3, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4506 = { .name = "ecdh_brainpoolp512r1_4506", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4506_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4506_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4506_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2184 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4507 for ECDH, tcId is 2185 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4507_peerpubkey[] = { 0x2f, 0x16, 0xfc, 0x68, 0x9b, 0x19, 0x83, 0xf7, 0xbd, 0x12, 0xb5, 0x7c, 0x2b, 0x24, 0xf0, 0x0a, 0xf4, 0xa9, 0xc3, 0x7b, 0xb5, 0x27, 0xd7, 0xa5, 0xfe, 0x1d, 0x6c, 0xa9, 0x91, 0x5d, 0x6b, 0x0c, 0x26, 0x58, 0x47, 0x33, 0xe8, 0xaf, 0x82, 0xf3, 0x63, 0x0f, 0xc5, 0x35, 0xc6, 0x0f, 0x29, 0xc7, 0x76, 0x59, 0x0e, 0xb4, 0xad, 0xe5, 0xbf, 0x9f, 0x4c, 0xb0, 0x64, 0x4f, 0xe3, 0x91, 0x74, 0x36, 0xa4, 0x09, 0xda, 0xbd, 0x3d, 0x32, 0xa5, 0x41, 0x3c, 0x86, 0x7f, 0xda, 0x83, 0x21, 0x38, 0x49, 0xfd, 0xd6, 0x5f, 0xb8, 0x22, 0xfd, 0xdc, 0x0a, 0xa4, 0x5f, 0x04, 0xbc, 0x32, 0x5b, 0xb8, 0x04, 0xc3, 0xb6, 0x65, 0xbc, 0xf2, 0x00, 0x75, 0x30, 0x97, 0x19, 0xb9, 0x72, 0xbd, 0x57, 0x5f, 0x24, 0x99, 0x3b, 0x3e, 0x40, 0xfb, 0x6d, 0xce, 0x37, 0x61, 0xb9, 0xbf, 0x96, 0x0f, 0x5c, 0x31, 0xba, }; static const unsigned char ecdh_brainpoolp512r1_4507_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4507_sharedsecret[] = { 0x41, 0x96, 0x6b, 0xd8, 0x9d, 0x45, 0x45, 0x02, 0x55, 0x83, 0x67, 0x6a, 0xf0, 0xc8, 0xc8, 0x38, 0xaf, 0x53, 0x73, 0xb8, 0x37, 0xa5, 0x74, 0x05, 0x0d, 0x29, 0x64, 0xee, 0xdf, 0x5f, 0xab, 0x53, 0x90, 0x7b, 0xf4, 0xda, 0x49, 0x5c, 0xcd, 0x36, 0x22, 0xfc, 0x43, 0x26, 0xd7, 0x7f, 0x1c, 0x0c, 0x4c, 0x4d, 0x53, 0x78, 0xc9, 0x60, 0x77, 0x2e, 0x00, 0x82, 0xfe, 0xfe, 0x76, 0x8d, 0xed, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4507 = { .name = "ecdh_brainpoolp512r1_4507", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4507_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4507_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4507_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2185 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4508 for ECDH, tcId is 2186 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4508_peerpubkey[] = { 0x54, 0x20, 0x57, 0xf0, 0xb1, 0x6b, 0x30, 0x85, 0x38, 0xbd, 0xc1, 0x2f, 0x67, 0x0a, 0xb3, 0x6c, 0xdd, 0x69, 0xf5, 0x9c, 0x8e, 0xe0, 0x67, 0xc3, 0x4b, 0x8f, 0xab, 0xb3, 0xcf, 0x4c, 0x12, 0x4b, 0xd0, 0xf5, 0x94, 0x45, 0x53, 0x63, 0x0c, 0x6d, 0x50, 0x29, 0x1a, 0x23, 0x89, 0x06, 0xad, 0xfb, 0xe1, 0xd4, 0xbc, 0x5d, 0xec, 0x43, 0xc4, 0x53, 0x91, 0xa4, 0x00, 0x5b, 0x0d, 0x73, 0xbc, 0x97, 0x9a, 0x6c, 0xd1, 0x6e, 0x79, 0xfe, 0x65, 0x8d, 0x02, 0x2b, 0x72, 0xba, 0x1d, 0x49, 0x27, 0xeb, 0xeb, 0x30, 0x2d, 0x4d, 0x80, 0xc9, 0xd4, 0x4c, 0x7a, 0xb1, 0xc4, 0x8c, 0x83, 0x34, 0x58, 0x56, 0x9d, 0xd1, 0xef, 0xcc, 0xf7, 0xf9, 0x76, 0x48, 0x43, 0x29, 0x16, 0xd8, 0x79, 0x01, 0xa7, 0x95, 0x11, 0xa1, 0x5c, 0xe1, 0x53, 0x6b, 0xc6, 0x13, 0xe5, 0x99, 0x22, 0x55, 0x3d, 0x89, 0x87, 0x02, }; static const unsigned char ecdh_brainpoolp512r1_4508_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4508_sharedsecret[] = { 0x5a, 0x7a, 0xca, 0xd6, 0x1a, 0x20, 0xa8, 0x00, 0x5a, 0xc8, 0x72, 0x0f, 0x34, 0xba, 0x5c, 0xf7, 0x58, 0x3f, 0x16, 0xd9, 0x62, 0x21, 0x03, 0xf8, 0x64, 0xd1, 0xdb, 0xc2, 0x9a, 0xc4, 0x6c, 0xb4, 0x86, 0x93, 0xf5, 0xe7, 0x77, 0x16, 0x55, 0x2d, 0x85, 0x27, 0x07, 0x92, 0x36, 0x3a, 0x66, 0xb8, 0xd9, 0xd7, 0x57, 0xf1, 0x52, 0x01, 0x9c, 0x50, 0xc9, 0x7b, 0x9c, 0x03, 0x97, 0x05, 0x3e, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4508 = { .name = "ecdh_brainpoolp512r1_4508", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4508_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4508_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4508_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2186 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4509 for ECDH, tcId is 2187 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4509_peerpubkey[] = { 0x1c, 0xa7, 0x8b, 0x22, 0xed, 0xd4, 0x71, 0xb9, 0xfd, 0x03, 0xd8, 0xf3, 0x8c, 0x74, 0xcf, 0x55, 0x9a, 0x57, 0x17, 0x20, 0x1b, 0xe2, 0x38, 0x2a, 0x85, 0xf9, 0xa5, 0xce, 0x5a, 0x16, 0x45, 0x96, 0xe0, 0x61, 0xc3, 0xdb, 0xf8, 0x03, 0x55, 0x1e, 0x5a, 0xbf, 0xb4, 0xc9, 0x79, 0x80, 0x98, 0x2c, 0xcc, 0xe7, 0xa3, 0xd8, 0x89, 0xef, 0x0d, 0x44, 0x7c, 0x45, 0xba, 0x6c, 0x37, 0xf6, 0x79, 0xf3, 0x21, 0xf1, 0x68, 0xe3, 0x5c, 0x9e, 0x6f, 0xe9, 0x89, 0xdf, 0x47, 0x23, 0x6f, 0xbd, 0x91, 0x92, 0xc1, 0xd9, 0x11, 0xd0, 0x84, 0xb8, 0x76, 0x22, 0x2f, 0x24, 0x53, 0xa2, 0x04, 0xd4, 0xc3, 0x5f, 0xc1, 0x8a, 0x72, 0x24, 0x88, 0x36, 0x6d, 0xf4, 0x33, 0xa7, 0xd0, 0x8d, 0x29, 0x9d, 0xba, 0xb1, 0x2d, 0x62, 0x6d, 0x62, 0xe6, 0xc9, 0x18, 0x8a, 0xe8, 0x23, 0xe6, 0x04, 0x10, 0x97, 0x46, 0xee, }; static const unsigned char ecdh_brainpoolp512r1_4509_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4509_sharedsecret[] = { 0x05, 0x5b, 0xcd, 0xa8, 0xe4, 0x98, 0x06, 0xa9, 0xaf, 0xe3, 0x75, 0x64, 0xe6, 0x32, 0x73, 0x03, 0x9e, 0x7d, 0xe3, 0x43, 0xf1, 0x87, 0xbb, 0x03, 0xed, 0xab, 0xde, 0x48, 0x01, 0xed, 0xc3, 0xb6, 0x18, 0x6e, 0xd0, 0xa8, 0x6a, 0x7d, 0xb1, 0x78, 0xa7, 0x5c, 0xe5, 0x56, 0xbe, 0xc7, 0xdc, 0x44, 0x6b, 0xdf, 0x04, 0x15, 0x7e, 0x7b, 0x20, 0x59, 0xcb, 0x28, 0x5e, 0xf2, 0xd1, 0x7f, 0x04, 0x91, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4509 = { .name = "ecdh_brainpoolp512r1_4509", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4509_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4509_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4509_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2187 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4510 for ECDH, tcId is 2188 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4510_peerpubkey[] = { 0xa5, 0x67, 0x21, 0x45, 0xe2, 0xc8, 0xdf, 0x5d, 0x7a, 0xdc, 0x4f, 0x0b, 0x4e, 0x1d, 0x6e, 0x75, 0xb3, 0x13, 0x11, 0xdf, 0xd2, 0x61, 0xb3, 0xdc, 0x34, 0x38, 0x80, 0xee, 0xd6, 0x0e, 0x5f, 0x4c, 0x23, 0xa4, 0x6e, 0x7f, 0x8f, 0x86, 0xae, 0x85, 0x11, 0xcf, 0xb9, 0x02, 0x0d, 0x74, 0x6f, 0x76, 0xc8, 0x86, 0x82, 0x2e, 0xb5, 0x81, 0xa8, 0x4d, 0xcd, 0x3c, 0x9b, 0xef, 0xbd, 0x8c, 0x72, 0xdd, 0x81, 0x5d, 0xc8, 0xb1, 0x8e, 0xea, 0x1c, 0xd8, 0xa6, 0xb3, 0x5e, 0x3d, 0x34, 0x50, 0xd7, 0xac, 0xa2, 0x07, 0xb5, 0x03, 0x7f, 0xc5, 0x83, 0x39, 0xb0, 0xc2, 0xa1, 0x76, 0x87, 0xac, 0x7f, 0xbf, 0x26, 0xf3, 0xdc, 0xf9, 0xc7, 0xb7, 0xe8, 0x73, 0xb1, 0x90, 0xc6, 0x5f, 0xc6, 0x2a, 0x91, 0xb1, 0x48, 0x81, 0x0e, 0xe4, 0x12, 0xb8, 0xc9, 0x3a, 0x76, 0x02, 0x8a, 0xa6, 0x5d, 0xf9, 0xe2, 0x1a, }; static const unsigned char ecdh_brainpoolp512r1_4510_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4510_sharedsecret[] = { 0x57, 0xa3, 0x9d, 0xcb, 0x7e, 0x42, 0x18, 0xd7, 0x2d, 0xb9, 0x94, 0x78, 0x59, 0x08, 0xc0, 0xc4, 0x1e, 0x5c, 0xb1, 0x79, 0x4f, 0xca, 0xad, 0x33, 0x0a, 0x15, 0x8f, 0xa5, 0x91, 0xbf, 0x46, 0xc7, 0xc5, 0x1f, 0x76, 0x55, 0xb2, 0x0f, 0x87, 0x61, 0xc1, 0xae, 0x05, 0x96, 0x66, 0x8c, 0x11, 0x4c, 0xba, 0x0f, 0x9e, 0xa4, 0xcf, 0x7d, 0x39, 0xab, 0x36, 0x01, 0x47, 0x9f, 0x79, 0x05, 0x98, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4510 = { .name = "ecdh_brainpoolp512r1_4510", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4510_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4510_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4510_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2188 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4511 for ECDH, tcId is 2189 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4511_peerpubkey[] = { 0x8b, 0x91, 0x0e, 0xd3, 0x6a, 0x33, 0x59, 0x10, 0x3d, 0xf8, 0x7b, 0x55, 0xe3, 0x26, 0xda, 0x45, 0x8d, 0x1c, 0xb3, 0xdd, 0xaf, 0x9c, 0xd6, 0x3a, 0x78, 0x4f, 0x3d, 0x49, 0xad, 0xf9, 0xa2, 0x2a, 0x68, 0x5a, 0xb3, 0xe3, 0x75, 0x2a, 0x2c, 0x33, 0x68, 0x37, 0x7b, 0x04, 0xc4, 0x17, 0x24, 0xf1, 0x9f, 0xd5, 0x86, 0x57, 0x8a, 0x67, 0x42, 0x40, 0x38, 0x16, 0xcd, 0x5c, 0x1d, 0x64, 0x7b, 0x12, 0x78, 0xf0, 0xd5, 0xc0, 0xc2, 0xe5, 0x91, 0xbd, 0x35, 0x89, 0x54, 0x16, 0x78, 0x7f, 0x1e, 0x91, 0xff, 0x91, 0xa6, 0x92, 0x8c, 0x76, 0x3a, 0x87, 0xc1, 0xa3, 0xc8, 0xe5, 0x08, 0x29, 0x8a, 0x80, 0xb1, 0xbc, 0x6b, 0x33, 0xf5, 0x0f, 0x71, 0x25, 0xbd, 0x38, 0x55, 0x6d, 0x30, 0xdc, 0xc7, 0x61, 0xd9, 0xd5, 0xca, 0x97, 0xd6, 0x45, 0xcd, 0x89, 0x8a, 0xb5, 0xe4, 0x67, 0x73, 0x45, 0x33, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_4511_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4511_sharedsecret[] = { 0x65, 0xc0, 0xb8, 0xa5, 0x0d, 0x18, 0x83, 0xe0, 0x43, 0xb9, 0x5f, 0x7e, 0x7b, 0xe9, 0xbc, 0x38, 0x99, 0x33, 0xa6, 0xee, 0x49, 0xa5, 0xda, 0x47, 0xef, 0x76, 0x95, 0x17, 0x53, 0xe7, 0x51, 0x19, 0xb1, 0xd0, 0x08, 0xe4, 0x31, 0x01, 0xd6, 0x52, 0x57, 0x57, 0x09, 0x44, 0xe3, 0x1c, 0x42, 0x32, 0x92, 0x47, 0x8b, 0x47, 0x0c, 0x01, 0x93, 0xf5, 0x6c, 0x01, 0x7e, 0xfe, 0x4c, 0xa6, 0xcd, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4511 = { .name = "ecdh_brainpoolp512r1_4511", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4511_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4511_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4511_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2189 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4512 for ECDH, tcId is 2190 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4512_peerpubkey[] = { 0x0e, 0xa7, 0xf9, 0xba, 0x1e, 0xa7, 0x69, 0x01, 0x62, 0x64, 0xa8, 0xd5, 0xc9, 0x33, 0x2a, 0xe4, 0xbf, 0xf5, 0x0b, 0x08, 0x01, 0x73, 0x97, 0xbf, 0xf7, 0xf8, 0x06, 0xe3, 0xd8, 0x2e, 0x5a, 0x52, 0x5b, 0xa8, 0x43, 0xde, 0x2a, 0x66, 0xd7, 0x14, 0x8f, 0x49, 0xad, 0x50, 0xd2, 0xe6, 0xe9, 0xd2, 0x0d, 0xfb, 0xe2, 0x76, 0xa2, 0xb4, 0x3f, 0x16, 0x1d, 0x99, 0xff, 0xdb, 0x58, 0x3a, 0x56, 0xcd, 0x4c, 0x00, 0x13, 0xce, 0xdc, 0x87, 0x6c, 0xcd, 0x02, 0x7f, 0xee, 0xfb, 0x09, 0xda, 0x8d, 0x94, 0x9f, 0x93, 0x48, 0x00, 0x5b, 0x06, 0xb0, 0xa0, 0x66, 0x74, 0xa9, 0xf8, 0xd0, 0xd3, 0x4f, 0x98, 0x45, 0x63, 0x63, 0xfb, 0x5e, 0x14, 0x85, 0x93, 0x7f, 0xad, 0xee, 0x8c, 0x09, 0x9b, 0xa7, 0x93, 0xc8, 0xe6, 0xcd, 0xf0, 0x2c, 0x88, 0xd1, 0x8e, 0xe8, 0x59, 0x39, 0x52, 0xc1, 0x44, 0xae, 0x89, }; static const unsigned char ecdh_brainpoolp512r1_4512_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4512_sharedsecret[] = { 0x99, 0x86, 0x11, 0xb5, 0x10, 0x38, 0xc3, 0x52, 0x18, 0xda, 0xb0, 0x11, 0xb0, 0x19, 0xd4, 0x71, 0x43, 0xa6, 0x65, 0x28, 0xbe, 0x67, 0xbc, 0x02, 0x06, 0x65, 0x75, 0x05, 0x5e, 0x50, 0xd8, 0x0c, 0xbe, 0x5a, 0x38, 0x60, 0xc6, 0xf0, 0xb5, 0x7f, 0xd4, 0x48, 0x5a, 0x40, 0x9c, 0x70, 0xda, 0xa4, 0x54, 0x65, 0x79, 0x2f, 0x6c, 0x4d, 0xf8, 0xa5, 0x7a, 0x9e, 0x3e, 0xce, 0xe1, 0x64, 0x06, 0xd4, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4512 = { .name = "ecdh_brainpoolp512r1_4512", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4512_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4512_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4512_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2190 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4513 for ECDH, tcId is 2191 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4513_peerpubkey[] = { 0x76, 0x79, 0x44, 0x3e, 0xda, 0x5f, 0x2d, 0xc6, 0xe7, 0xa5, 0x2d, 0x4b, 0x4e, 0x72, 0xd8, 0xe2, 0x8b, 0xce, 0x4e, 0xed, 0xea, 0x07, 0x6d, 0x3c, 0x81, 0x5d, 0x60, 0x07, 0x0c, 0xfd, 0x99, 0xd9, 0x86, 0x20, 0x3e, 0x42, 0x18, 0x7e, 0x2a, 0xe3, 0xd3, 0x96, 0xe3, 0xc3, 0xb6, 0x14, 0x62, 0xec, 0x42, 0x12, 0xfa, 0x47, 0x95, 0xb6, 0xde, 0x94, 0x76, 0xb6, 0x94, 0x0c, 0x16, 0x4f, 0x93, 0x0c, 0x53, 0xe6, 0x50, 0x91, 0xf9, 0x22, 0xbd, 0xa0, 0x3e, 0xfb, 0x73, 0x2d, 0x78, 0x1b, 0x06, 0xae, 0x3f, 0xd4, 0x73, 0x97, 0x31, 0x93, 0xad, 0xb9, 0x72, 0xb4, 0xbd, 0x8d, 0xfc, 0x28, 0x2d, 0x49, 0xf6, 0x91, 0xe9, 0xdd, 0x9e, 0x33, 0xae, 0xd5, 0x98, 0xd6, 0xe6, 0x2a, 0x4b, 0xc2, 0x9c, 0x7e, 0xda, 0x48, 0xba, 0xac, 0xa9, 0xa7, 0x21, 0x73, 0x0d, 0xb4, 0xb9, 0xe2, 0x1e, 0x09, 0x6f, 0x05, }; static const unsigned char ecdh_brainpoolp512r1_4513_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4513_sharedsecret[] = { 0x8c, 0xe3, 0xae, 0x14, 0xcc, 0x19, 0x9f, 0xac, 0x0c, 0xb3, 0x88, 0x2f, 0x61, 0xee, 0x20, 0xa4, 0x53, 0xa4, 0x45, 0x85, 0xce, 0x52, 0x7d, 0xf9, 0x8d, 0xad, 0x4f, 0x8a, 0x06, 0x74, 0x25, 0x80, 0x39, 0xcf, 0x61, 0x12, 0x8c, 0x66, 0xe5, 0x69, 0xab, 0x5e, 0x87, 0xa0, 0xc0, 0xfd, 0x2b, 0x1a, 0x8e, 0x8c, 0xd9, 0x10, 0xb3, 0xc6, 0x51, 0x94, 0x64, 0x42, 0x03, 0x83, 0xcf, 0x36, 0x0e, 0x7b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4513 = { .name = "ecdh_brainpoolp512r1_4513", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4513_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4513_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4513_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2191 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4514 for ECDH, tcId is 2192 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4514_peerpubkey[] = { 0x74, 0x98, 0x1a, 0x31, 0x48, 0xc1, 0xd1, 0x39, 0x66, 0x0c, 0x73, 0xfb, 0x14, 0x56, 0x2f, 0xc7, 0x0c, 0xeb, 0x03, 0xa1, 0xec, 0x0c, 0x7f, 0xca, 0x24, 0x40, 0x3a, 0x46, 0x33, 0xa4, 0x19, 0x87, 0x39, 0x37, 0x4f, 0x18, 0x88, 0x46, 0x0e, 0xdd, 0xac, 0xb7, 0x33, 0xd4, 0x1a, 0xba, 0xa0, 0x69, 0xe8, 0x26, 0x5a, 0x63, 0x62, 0xce, 0xac, 0x08, 0x06, 0x90, 0x10, 0xc1, 0x92, 0x43, 0xda, 0xe8, 0x59, 0xf5, 0x22, 0xe3, 0xed, 0xa2, 0xbb, 0x57, 0xf7, 0xd2, 0xf7, 0xb3, 0x8f, 0xa5, 0xe0, 0xbd, 0x85, 0xa9, 0x1a, 0x1e, 0x10, 0xdf, 0x85, 0xd0, 0xcc, 0x48, 0xd9, 0x38, 0x45, 0x5f, 0x50, 0xf3, 0xf8, 0x16, 0x39, 0xdf, 0x15, 0x44, 0xce, 0x1a, 0xed, 0xa3, 0xa9, 0xd5, 0xf9, 0x1a, 0xa0, 0x81, 0xbb, 0x61, 0xb3, 0xe2, 0x96, 0x90, 0xcc, 0xf7, 0xb0, 0xaa, 0x75, 0xa2, 0x43, 0x54, 0x70, 0x7b, }; static const unsigned char ecdh_brainpoolp512r1_4514_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4514_sharedsecret[] = { 0x99, 0xe3, 0x39, 0xf5, 0x37, 0x74, 0x81, 0xee, 0x47, 0x8b, 0x5e, 0xa9, 0xc6, 0x3b, 0xe1, 0xdb, 0x8c, 0x81, 0x62, 0x4d, 0x3a, 0x1c, 0x07, 0xf3, 0xb2, 0x84, 0x44, 0x73, 0x65, 0x2e, 0xe8, 0x23, 0xb6, 0xe4, 0x66, 0xa4, 0x99, 0x56, 0x4c, 0x7f, 0x33, 0x5a, 0xb6, 0xbc, 0xd4, 0xe0, 0xb4, 0x8f, 0x9c, 0x06, 0xba, 0x14, 0x98, 0xae, 0x6e, 0xfe, 0xaf, 0x9d, 0x43, 0xfb, 0xd3, 0x6e, 0xd1, 0x04, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4514 = { .name = "ecdh_brainpoolp512r1_4514", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4514_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4514_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4514_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2192 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4515 for ECDH, tcId is 2193 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4515_peerpubkey[] = { 0x0b, 0x4e, 0xf0, 0x5f, 0x54, 0xc8, 0x98, 0xf2, 0xa5, 0xe6, 0x46, 0xef, 0x65, 0xf7, 0xfd, 0xd3, 0xe0, 0xe9, 0x3d, 0x80, 0x78, 0x0c, 0x4f, 0x81, 0x4d, 0x63, 0xfd, 0xf0, 0xd1, 0x9d, 0x24, 0x23, 0x23, 0x3d, 0x03, 0x16, 0x76, 0xb8, 0xd5, 0xa8, 0x6b, 0x36, 0x4b, 0x77, 0x10, 0x52, 0xbd, 0x3a, 0x5a, 0x82, 0xc2, 0x49, 0x11, 0x8d, 0x20, 0x40, 0xdf, 0xf3, 0x1a, 0x21, 0x07, 0xfb, 0xb6, 0xdf, 0x67, 0xd7, 0x75, 0x71, 0x5d, 0x20, 0xb0, 0xd5, 0x0c, 0x83, 0x29, 0xee, 0x77, 0x11, 0xe7, 0x69, 0x55, 0x70, 0x7b, 0x60, 0x16, 0x25, 0x7b, 0x63, 0x6b, 0x2b, 0xa8, 0x97, 0xa7, 0x8b, 0x5e, 0x32, 0xc2, 0x5d, 0xe3, 0x24, 0x9f, 0x85, 0xd7, 0x3f, 0x66, 0xcf, 0x19, 0x80, 0x57, 0xbe, 0x27, 0x89, 0x4f, 0xdb, 0x89, 0xde, 0x94, 0x67, 0x2c, 0xbf, 0x4d, 0x97, 0xc6, 0xfe, 0xc4, 0x2a, 0xe0, 0xdf, }; static const unsigned char ecdh_brainpoolp512r1_4515_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4515_sharedsecret[] = { 0x7c, 0x81, 0x13, 0xe4, 0x0d, 0x3b, 0x64, 0xdb, 0x61, 0x72, 0x55, 0xdd, 0xe1, 0x92, 0x22, 0xeb, 0xa2, 0x46, 0xf0, 0x84, 0x78, 0xd1, 0x61, 0xeb, 0x5f, 0x41, 0xa4, 0x06, 0x93, 0x69, 0x32, 0x16, 0x3b, 0x5c, 0xb2, 0xcd, 0x49, 0xcb, 0x09, 0xd1, 0xe2, 0x4c, 0x91, 0xe0, 0x2f, 0xdc, 0x1f, 0xc2, 0xc5, 0x8b, 0xda, 0xd4, 0xee, 0xbd, 0xba, 0xad, 0x72, 0xe9, 0x93, 0xfd, 0x29, 0xdc, 0x54, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4515 = { .name = "ecdh_brainpoolp512r1_4515", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4515_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4515_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4515_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2193 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4516 for ECDH, tcId is 2194 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4516_peerpubkey[] = { 0x9b, 0x81, 0x8a, 0x5e, 0x19, 0x72, 0x65, 0xec, 0xee, 0x05, 0x74, 0x66, 0x3e, 0x53, 0xc1, 0x57, 0x30, 0x2c, 0x1d, 0x6c, 0x48, 0x23, 0xd5, 0x4a, 0x3a, 0x3d, 0xe5, 0x6c, 0x65, 0x60, 0x4b, 0xb3, 0xc1, 0xb5, 0x83, 0xd8, 0x4e, 0x36, 0x53, 0x60, 0x8f, 0x20, 0x0e, 0x9b, 0x40, 0xd3, 0x94, 0x31, 0x80, 0x4b, 0x36, 0x99, 0x5c, 0xc9, 0x8a, 0xb9, 0x27, 0x01, 0xa5, 0xdb, 0x62, 0x09, 0xdf, 0x28, 0x69, 0x0b, 0x8c, 0x65, 0x4b, 0x22, 0x1d, 0x70, 0xca, 0xeb, 0xa5, 0xb2, 0xea, 0xe3, 0xe8, 0x24, 0x03, 0x48, 0xbc, 0x3f, 0x1d, 0xcf, 0xa9, 0x8c, 0x99, 0xa1, 0xf3, 0x1c, 0xe0, 0xc0, 0x80, 0x30, 0x54, 0xff, 0x4b, 0x41, 0xc5, 0x98, 0x02, 0x86, 0x8c, 0x80, 0xfe, 0x08, 0xe7, 0xd2, 0x08, 0xf0, 0xad, 0x2c, 0xb9, 0x81, 0xa3, 0xdc, 0x28, 0x59, 0x40, 0xb4, 0xe3, 0x16, 0x3e, 0x78, 0x8a, 0xdf, }; static const unsigned char ecdh_brainpoolp512r1_4516_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4516_sharedsecret[] = { 0x71, 0xc4, 0xf5, 0xda, 0xcd, 0x1d, 0x02, 0xc0, 0xb8, 0xa8, 0xa4, 0xe1, 0x88, 0x52, 0x8e, 0xa9, 0x19, 0x39, 0x7b, 0x9b, 0x2a, 0xf0, 0xff, 0x74, 0xde, 0x60, 0x8a, 0xa4, 0xdc, 0x7a, 0x1e, 0xfd, 0xad, 0x5c, 0xb0, 0xd1, 0x93, 0xb1, 0xd5, 0xf0, 0xdc, 0xe5, 0x1e, 0x02, 0x21, 0x12, 0xd9, 0x8f, 0x63, 0xce, 0xd5, 0x74, 0x3b, 0x45, 0xab, 0x26, 0x6d, 0xe2, 0xc6, 0x18, 0xec, 0x0a, 0x58, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4516 = { .name = "ecdh_brainpoolp512r1_4516", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4516_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4516_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4516_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2194 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4517 for ECDH, tcId is 2195 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4517_peerpubkey[] = { 0x20, 0xc4, 0xde, 0xca, 0xa9, 0x67, 0x32, 0x5b, 0x80, 0x38, 0xb4, 0x08, 0xae, 0x9c, 0xf5, 0x63, 0x4c, 0x81, 0x1d, 0x11, 0x67, 0x55, 0x83, 0x75, 0x39, 0x36, 0x7f, 0x4e, 0x72, 0xa2, 0x76, 0x7e, 0xe3, 0xb4, 0xba, 0xbc, 0x3c, 0x57, 0xe8, 0x2e, 0x07, 0x29, 0x6a, 0xb6, 0xd4, 0xb3, 0x44, 0x62, 0x61, 0xe7, 0xd0, 0x1f, 0xbc, 0xa7, 0xc4, 0x74, 0xf1, 0xa1, 0x57, 0xee, 0x69, 0x43, 0x61, 0xa0, 0x4d, 0x28, 0x75, 0x31, 0xb8, 0xbc, 0x54, 0xce, 0x97, 0xe1, 0xd3, 0x2c, 0xfb, 0x19, 0x1d, 0x8e, 0xde, 0x90, 0xef, 0xd9, 0x15, 0xc3, 0x0b, 0xcc, 0x06, 0x34, 0xcc, 0xaf, 0x81, 0x99, 0x80, 0xfb, 0x76, 0xe3, 0x33, 0x2d, 0x99, 0x1d, 0x67, 0xe7, 0x21, 0x18, 0x97, 0x13, 0xef, 0xa6, 0x88, 0x0d, 0xd7, 0xb3, 0x86, 0xaa, 0x01, 0xb3, 0xf4, 0x4b, 0xde, 0x0f, 0x4d, 0x04, 0x76, 0x5a, 0x4f, 0x65, }; static const unsigned char ecdh_brainpoolp512r1_4517_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4517_sharedsecret[] = { 0xa3, 0xec, 0xa8, 0x54, 0x8f, 0xb5, 0x99, 0x55, 0x33, 0x1f, 0x31, 0xcb, 0x62, 0xd4, 0x23, 0x1e, 0xa1, 0x0b, 0xb7, 0x16, 0x4c, 0x0e, 0x00, 0x97, 0xcc, 0x80, 0xe8, 0x2d, 0x35, 0xb4, 0xb0, 0x33, 0xcf, 0xf9, 0xb6, 0x0b, 0x46, 0xdf, 0xb2, 0x27, 0xd1, 0xcb, 0x6c, 0x33, 0xef, 0x2c, 0x99, 0x47, 0x59, 0x15, 0x14, 0x22, 0xc5, 0x91, 0x3c, 0xf9, 0x89, 0xd5, 0x4b, 0x00, 0xb9, 0x0f, 0x5f, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4517 = { .name = "ecdh_brainpoolp512r1_4517", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4517_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4517_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4517_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2195 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4518 for ECDH, tcId is 2196 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4518_peerpubkey[] = { 0xa9, 0x7a, 0x6d, 0x9c, 0x85, 0x4f, 0x6a, 0x11, 0x24, 0x51, 0x23, 0x18, 0x45, 0x5e, 0x94, 0x15, 0x14, 0x61, 0x3f, 0x07, 0x96, 0x01, 0x5d, 0x32, 0xf7, 0xe7, 0x27, 0x54, 0xe3, 0x84, 0xf1, 0x70, 0x18, 0xf5, 0x99, 0x2c, 0xa0, 0x4e, 0x48, 0x4a, 0x08, 0x06, 0xb5, 0x3a, 0x17, 0xca, 0xb8, 0xbf, 0x7f, 0x3f, 0x79, 0xf1, 0x9d, 0x6a, 0x4e, 0x77, 0x3e, 0x09, 0xef, 0x8b, 0xb3, 0x97, 0xb7, 0x1a, 0x63, 0xbb, 0x67, 0xe4, 0x41, 0x7d, 0xe7, 0xd4, 0x7f, 0xdd, 0x72, 0x9a, 0x94, 0x3d, 0x85, 0xa3, 0x63, 0x8a, 0x10, 0x93, 0x88, 0x4c, 0x9e, 0x11, 0x33, 0x0b, 0x60, 0x89, 0x42, 0x6d, 0x3a, 0xf5, 0x32, 0x64, 0x76, 0x1f, 0x70, 0xd4, 0x4a, 0x88, 0x7e, 0x4b, 0x07, 0x5f, 0x3c, 0xfd, 0x54, 0x95, 0x9e, 0xb0, 0x0f, 0xcb, 0x35, 0x19, 0x9f, 0x60, 0xe7, 0x50, 0x3b, 0x01, 0xe9, 0x2d, 0xc7, 0xf9, }; static const unsigned char ecdh_brainpoolp512r1_4518_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4518_sharedsecret[] = { 0xa5, 0x8e, 0x93, 0x60, 0x82, 0x8c, 0x56, 0x0d, 0x57, 0xab, 0x3b, 0xbe, 0xab, 0x10, 0x62, 0x11, 0x56, 0xeb, 0x85, 0xba, 0xc4, 0x2f, 0xdc, 0x4c, 0x7d, 0x2a, 0x39, 0xb5, 0xdb, 0x0b, 0x1c, 0x6d, 0xb6, 0x1f, 0x24, 0xe5, 0xf6, 0xaa, 0xc2, 0x5b, 0x31, 0xd3, 0x02, 0x19, 0x9e, 0x1e, 0x6a, 0x37, 0x56, 0xd3, 0xc7, 0x3c, 0x9c, 0xa0, 0x3a, 0x3b, 0x22, 0x69, 0xd0, 0xf6, 0x1c, 0x38, 0x6f, 0xa5, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4518 = { .name = "ecdh_brainpoolp512r1_4518", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4518_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4518_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4518_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2196 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4519 for ECDH, tcId is 2197 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4519_peerpubkey[] = { 0x48, 0x1d, 0x9e, 0x35, 0xd8, 0xb9, 0xdc, 0x17, 0xdd, 0x15, 0xd6, 0x91, 0x58, 0xe6, 0xfc, 0xe2, 0x54, 0x17, 0x60, 0xf8, 0xe2, 0x68, 0xb0, 0x75, 0xd0, 0xfb, 0x9e, 0xc8, 0xd5, 0x47, 0x80, 0x76, 0x84, 0x9b, 0xfb, 0x90, 0x10, 0xc5, 0x16, 0xf4, 0x44, 0xaf, 0xdb, 0x2e, 0xd0, 0x37, 0x5e, 0xcf, 0x8f, 0x31, 0x3a, 0x1f, 0x41, 0x5e, 0x4e, 0xc5, 0xa9, 0xc8, 0x7a, 0x4d, 0x5a, 0x0b, 0xc6, 0x77, 0x9f, 0x98, 0x57, 0x92, 0xb9, 0x41, 0x84, 0x77, 0xbd, 0x28, 0x7b, 0x7b, 0xee, 0x27, 0x16, 0x51, 0xab, 0xa0, 0x8b, 0xdb, 0x56, 0xb6, 0x00, 0xf0, 0x10, 0x75, 0xe7, 0x53, 0x48, 0x1e, 0xc4, 0xc1, 0x13, 0x17, 0xfb, 0x32, 0xae, 0x65, 0x1b, 0xb9, 0x49, 0x48, 0x63, 0xb1, 0xa2, 0x22, 0x3b, 0xa2, 0x57, 0xd7, 0x76, 0x83, 0x85, 0xea, 0xda, 0x9a, 0x80, 0xed, 0x4f, 0x16, 0x1b, 0xd0, 0x68, 0x82, }; static const unsigned char ecdh_brainpoolp512r1_4519_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4519_sharedsecret[] = { 0x19, 0x99, 0xae, 0xc9, 0x4a, 0x8f, 0xb5, 0x38, 0xf5, 0x27, 0x47, 0x56, 0x81, 0xf5, 0x4d, 0x2e, 0xf0, 0xea, 0x33, 0xaf, 0x2a, 0x8c, 0xd0, 0x77, 0x3c, 0xf7, 0x0e, 0xfd, 0xb2, 0x2e, 0x36, 0x8b, 0xde, 0x20, 0x4b, 0xf7, 0xb1, 0x9a, 0x77, 0xce, 0xf7, 0x9a, 0x83, 0x5a, 0xe2, 0xda, 0xb1, 0x52, 0x1f, 0x40, 0x71, 0x9d, 0xc2, 0x28, 0x4d, 0xf5, 0x0f, 0x14, 0x42, 0x4d, 0x9c, 0x79, 0x4a, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4519 = { .name = "ecdh_brainpoolp512r1_4519", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4519_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4519_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4519_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2197 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4520 for ECDH, tcId is 2198 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4520_peerpubkey[] = { 0x28, 0x06, 0xe9, 0x6f, 0x85, 0x7a, 0x59, 0xdc, 0x3e, 0xa3, 0x4e, 0x6b, 0x7f, 0x30, 0x02, 0xa8, 0xef, 0xe9, 0x1a, 0xb1, 0xb9, 0x5b, 0x01, 0xf6, 0xf5, 0x07, 0x16, 0xce, 0xfd, 0x58, 0x16, 0x6e, 0xe4, 0xb0, 0x7a, 0xdb, 0x9e, 0x7e, 0x5c, 0xec, 0x05, 0xbb, 0x08, 0xbf, 0x2a, 0xe5, 0xc4, 0x2d, 0x89, 0x8c, 0x0b, 0x35, 0xd6, 0xc5, 0xa9, 0x5f, 0x0b, 0x70, 0xf4, 0x4f, 0x0a, 0xc3, 0x9d, 0xa2, 0x9d, 0xfd, 0x67, 0x16, 0x48, 0xcf, 0x4d, 0xa8, 0x43, 0x66, 0x6c, 0x50, 0xda, 0xc3, 0x3f, 0x40, 0x18, 0x3b, 0x57, 0xf2, 0x8c, 0x9a, 0xff, 0xd7, 0xa1, 0xb2, 0xce, 0xcf, 0xe1, 0x6c, 0xa6, 0x9e, 0x5c, 0x48, 0x90, 0x64, 0x48, 0xc3, 0x65, 0x84, 0x32, 0xb0, 0x87, 0xf8, 0x30, 0xa8, 0xf5, 0x64, 0x09, 0x52, 0x07, 0xbe, 0xc0, 0xb4, 0x35, 0xb2, 0xe7, 0xa9, 0x18, 0x88, 0x78, 0xda, 0xfa, 0xdd, }; static const unsigned char ecdh_brainpoolp512r1_4520_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4520_sharedsecret[] = { 0x57, 0x3e, 0xc1, 0x4a, 0x4f, 0x6b, 0xdf, 0x01, 0x4d, 0xbf, 0x2a, 0x90, 0x16, 0x6a, 0x7c, 0x00, 0xcf, 0x72, 0x9c, 0xaa, 0x4a, 0x3e, 0x4d, 0xff, 0x73, 0x9f, 0xe8, 0xf4, 0xce, 0xbd, 0x7e, 0x11, 0x06, 0xe6, 0x8d, 0xc8, 0xaf, 0xf4, 0x1a, 0xc1, 0xfd, 0x14, 0x6f, 0x16, 0x5c, 0x7d, 0xbf, 0x63, 0x6d, 0x29, 0x9b, 0x94, 0x27, 0x3a, 0xf2, 0x03, 0xe2, 0x61, 0x15, 0xc8, 0xa3, 0xef, 0x61, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4520 = { .name = "ecdh_brainpoolp512r1_4520", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4520_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4520_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4520_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2198 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4521 for ECDH, tcId is 2199 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4521_peerpubkey[] = { 0x06, 0xca, 0x8b, 0x4c, 0x9e, 0x08, 0xdf, 0x7c, 0xc9, 0xed, 0xc7, 0xd3, 0x0f, 0x03, 0x28, 0x29, 0xb5, 0xab, 0xe1, 0xb7, 0xc4, 0x87, 0x75, 0x0c, 0x99, 0x70, 0xdb, 0xf2, 0x0c, 0x3f, 0x15, 0x01, 0xf6, 0x3d, 0xef, 0xfb, 0xe7, 0x82, 0xd3, 0xa9, 0xb0, 0x80, 0x9b, 0x11, 0x01, 0x23, 0xd1, 0x19, 0x0a, 0xd9, 0x42, 0xef, 0x06, 0x03, 0x0d, 0x27, 0x60, 0xd3, 0xac, 0x59, 0x50, 0xac, 0xa3, 0x9f, 0x25, 0x8b, 0x6d, 0x44, 0x58, 0xed, 0x7d, 0x73, 0xe8, 0x68, 0xe7, 0x05, 0xdd, 0xf6, 0x1d, 0x52, 0x03, 0xd6, 0x8d, 0xc8, 0xf5, 0x30, 0xa4, 0x37, 0x39, 0x51, 0xc1, 0x38, 0xae, 0xf0, 0x78, 0x39, 0x69, 0xa2, 0xf8, 0x37, 0x7b, 0x4c, 0x39, 0xdd, 0xf8, 0xe2, 0x72, 0x68, 0x0f, 0x10, 0xac, 0xd8, 0x21, 0x03, 0x37, 0x98, 0xcd, 0xa9, 0x90, 0x4d, 0x33, 0x83, 0x6a, 0x13, 0x60, 0x51, 0x66, 0x62, }; static const unsigned char ecdh_brainpoolp512r1_4521_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512r1_4521_sharedsecret[] = { 0x0c, 0xc8, 0x20, 0xeb, 0x4f, 0x25, 0x43, 0x5d, 0x50, 0xee, 0x9d, 0xaa, 0x4b, 0x0f, 0xd1, 0x7d, 0x5e, 0xfb, 0x64, 0xfe, 0x33, 0xfa, 0xdd, 0xc7, 0xfc, 0x1a, 0x3f, 0x0f, 0x82, 0x10, 0x42, 0xb1, 0x4a, 0x26, 0x73, 0x61, 0x94, 0xb2, 0x24, 0x11, 0xb7, 0xff, 0xd1, 0x39, 0xf4, 0x8b, 0x34, 0x21, 0x0b, 0xf0, 0xf6, 0x85, 0x41, 0xc7, 0x59, 0x9a, 0xb8, 0x93, 0x8d, 0x40, 0x5c, 0xe4, 0x1c, 0x0f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4521 = { .name = "ecdh_brainpoolp512r1_4521", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4521_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4521_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4521_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2199 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4522 for ECDH, tcId is 2200 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4522_peerpubkey[] = { 0x94, 0x1c, 0xfb, 0xed, 0x5d, 0x51, 0x9b, 0x77, 0xdf, 0x0f, 0x0d, 0x1b, 0x33, 0x3f, 0x94, 0x18, 0x49, 0xd2, 0x25, 0x3a, 0x04, 0x57, 0x80, 0x70, 0x01, 0xd1, 0xd8, 0x0e, 0x3f, 0x9a, 0x65, 0x01, 0x9c, 0x7a, 0x9f, 0x30, 0xea, 0x58, 0x3c, 0x1e, 0x84, 0x70, 0xe4, 0xa1, 0xd1, 0xc2, 0x32, 0x1c, 0xb7, 0xd4, 0x7b, 0x96, 0xf0, 0x62, 0x9e, 0xd7, 0xcb, 0xae, 0x28, 0x4c, 0xb3, 0x02, 0xb8, 0x2e, 0x12, 0xa4, 0x41, 0x18, 0x0a, 0xf4, 0x13, 0x79, 0xb9, 0x8f, 0x22, 0xdc, 0xf0, 0x60, 0xc5, 0x9a, 0x8f, 0xa5, 0x08, 0x2d, 0x9e, 0xd9, 0xe6, 0x79, 0x2b, 0xfc, 0x4e, 0x6e, 0xc3, 0x7a, 0xef, 0xf8, 0x1b, 0xb8, 0xe9, 0xed, 0x0c, 0x51, 0x65, 0x5d, 0x02, 0x57, 0xdb, 0x60, 0x76, 0xa8, 0xef, 0xf6, 0x9c, 0xdf, 0x64, 0xd7, 0x76, 0xcd, 0xd0, 0x3b, 0x00, 0x7e, 0xed, 0x5a, 0x3b, 0x79, 0x95, 0x97, }; static const unsigned char ecdh_brainpoolp512r1_4522_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4522_sharedsecret[] = { 0x26, 0xb6, 0x8c, 0x56, 0xf0, 0xfa, 0x97, 0xcd, 0x01, 0x2f, 0xbc, 0x97, 0x9f, 0x03, 0x75, 0x73, 0x1f, 0xcd, 0xda, 0xd4, 0x2c, 0xd6, 0x26, 0x45, 0xb4, 0x23, 0xbf, 0xcc, 0x7a, 0x36, 0x56, 0x79, 0x5b, 0x1f, 0x9e, 0xa5, 0x4b, 0x7f, 0x21, 0xa0, 0xdd, 0x03, 0x01, 0xf1, 0x13, 0x85, 0x8b, 0x9c, 0xd2, 0xf0, 0x39, 0xb1, 0x62, 0x75, 0xf7, 0xcf, 0x42, 0xdf, 0x86, 0x1c, 0x84, 0xd8, 0x62, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4522 = { .name = "ecdh_brainpoolp512r1_4522", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4522_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4522_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4522_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2200 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4523 for ECDH, tcId is 2201 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4523_peerpubkey[] = { 0x20, 0x55, 0x5d, 0x95, 0xe2, 0x98, 0x64, 0x0c, 0x85, 0xbd, 0xf2, 0x38, 0x05, 0x91, 0x04, 0x7b, 0xcf, 0x34, 0x85, 0x4d, 0x0a, 0xb7, 0x27, 0x98, 0x72, 0xd5, 0x12, 0xce, 0xc2, 0x9a, 0x05, 0x63, 0x82, 0x64, 0x9f, 0xd9, 0xfa, 0x48, 0xab, 0x4e, 0x93, 0x50, 0xf9, 0x26, 0xf2, 0xed, 0x80, 0x0b, 0x56, 0x4b, 0xf7, 0xe6, 0x10, 0xff, 0x67, 0x2d, 0xcc, 0xf3, 0x13, 0x87, 0x8b, 0xf2, 0xb0, 0x42, 0x36, 0xb3, 0x03, 0x60, 0x13, 0x72, 0x88, 0xd6, 0xbb, 0xbb, 0xc8, 0xf4, 0x7d, 0x75, 0x52, 0x87, 0x1b, 0x48, 0x11, 0xac, 0x82, 0xc3, 0x13, 0x22, 0xf6, 0x6d, 0x64, 0x9c, 0x15, 0x2e, 0xee, 0xf6, 0xbf, 0x77, 0x22, 0xaf, 0xf8, 0x6c, 0xe8, 0x80, 0x75, 0x0f, 0x0a, 0xf9, 0x98, 0xce, 0xc4, 0x1a, 0x56, 0x16, 0xee, 0xf3, 0x96, 0xf7, 0x00, 0xb6, 0x63, 0x5a, 0x6f, 0x30, 0xa2, 0x8a, 0x2f, 0xc4, }; static const unsigned char ecdh_brainpoolp512r1_4523_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4523_sharedsecret[] = { 0x1d, 0xc2, 0x89, 0x16, 0xba, 0xd4, 0x75, 0x0e, 0x17, 0xa3, 0x39, 0xfd, 0xc5, 0x6f, 0x3b, 0xca, 0x05, 0xb7, 0x19, 0x10, 0x37, 0xcd, 0x7a, 0xbe, 0xe1, 0x7f, 0xfb, 0x3c, 0x36, 0xfb, 0x21, 0xc0, 0x95, 0xff, 0xa2, 0xa6, 0xf9, 0x6e, 0x85, 0x6b, 0x24, 0x21, 0xcc, 0x7f, 0xec, 0xee, 0xb2, 0xc5, 0x9a, 0xe8, 0xd6, 0x2e, 0x70, 0xbc, 0xc8, 0x2c, 0x8b, 0x44, 0xc4, 0xbd, 0x5c, 0xb6, 0xf0, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4523 = { .name = "ecdh_brainpoolp512r1_4523", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4523_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4523_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4523_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2201 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4524 for ECDH, tcId is 2202 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4524_peerpubkey[] = { 0x2f, 0x50, 0x77, 0xa7, 0x80, 0x32, 0xbe, 0xb8, 0x1a, 0xed, 0x45, 0x46, 0x9f, 0x99, 0x93, 0x63, 0x99, 0x56, 0x35, 0xcf, 0xc6, 0x03, 0xba, 0xe6, 0x97, 0x66, 0x16, 0x51, 0xc7, 0x40, 0x3e, 0x99, 0x8a, 0x44, 0x1b, 0xcd, 0x94, 0xf5, 0xf4, 0xc3, 0x4e, 0x6c, 0x1c, 0x71, 0x4e, 0xa2, 0xa5, 0xc5, 0xd9, 0x5d, 0xad, 0x39, 0xdb, 0x80, 0xac, 0xdd, 0xf2, 0xcc, 0x7d, 0x30, 0xd6, 0x22, 0xc6, 0x6b, 0x1c, 0xf2, 0x5e, 0x6d, 0xdb, 0xdd, 0x67, 0xf7, 0xa9, 0xb4, 0xc4, 0x98, 0xbc, 0xc9, 0xfe, 0x67, 0xbf, 0xf0, 0xda, 0x7a, 0xeb, 0x4a, 0x93, 0xee, 0x29, 0x2c, 0xc4, 0x97, 0xd7, 0x2b, 0xfa, 0x56, 0x34, 0xe7, 0xfc, 0x6f, 0x47, 0x5e, 0x28, 0x69, 0xd9, 0x12, 0x43, 0xdd, 0x68, 0x00, 0x08, 0x4c, 0x69, 0x6e, 0x05, 0xc3, 0xe7, 0x9b, 0xb0, 0xc8, 0xfd, 0x10, 0xf2, 0xbf, 0x2e, 0xe6, 0x4f, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4524_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4524_sharedsecret[] = { 0x5b, 0x55, 0x33, 0x1a, 0x65, 0xc8, 0xd2, 0xd4, 0xf9, 0x6e, 0x8b, 0xa0, 0xa0, 0xfc, 0x7e, 0xfa, 0x05, 0x05, 0x7b, 0xeb, 0x49, 0x7f, 0x67, 0x70, 0x31, 0x82, 0x58, 0x44, 0x03, 0x1d, 0x5f, 0x14, 0x66, 0xa0, 0xf8, 0x3e, 0x3f, 0x9a, 0xa6, 0xfc, 0xda, 0x4f, 0xf4, 0x58, 0x88, 0x20, 0xfe, 0x25, 0x19, 0xb6, 0x82, 0x8d, 0x1d, 0xa4, 0xef, 0x49, 0xe9, 0x71, 0xdc, 0x17, 0x03, 0x5e, 0x68, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4524 = { .name = "ecdh_brainpoolp512r1_4524", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4524_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4524_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4524_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2202 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4525 for ECDH, tcId is 2203 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4525_peerpubkey[] = { 0x10, 0xc0, 0xb2, 0xe6, 0x26, 0x98, 0x57, 0x5d, 0x6d, 0x4a, 0xb0, 0x1e, 0x43, 0x1d, 0x39, 0x3f, 0x41, 0xc9, 0xa3, 0x87, 0xeb, 0x0f, 0x86, 0x19, 0xed, 0x1a, 0x81, 0x0f, 0xaf, 0xdf, 0xf7, 0x43, 0xa3, 0x3c, 0x02, 0xf4, 0xdd, 0xfa, 0x36, 0x58, 0xa2, 0x88, 0xdc, 0x63, 0x83, 0x32, 0x1b, 0x0f, 0x66, 0x82, 0xa5, 0x50, 0x4d, 0x27, 0xea, 0xa4, 0x00, 0x9e, 0xb3, 0x30, 0xe7, 0x40, 0x9f, 0x76, 0x43, 0x30, 0x0c, 0x28, 0x6b, 0x85, 0xc1, 0xb5, 0xe0, 0x0f, 0xb9, 0xca, 0x7e, 0xa5, 0x6e, 0x45, 0x72, 0x99, 0xa9, 0x4e, 0x99, 0x2e, 0x4b, 0x23, 0x38, 0xd5, 0xf9, 0x7f, 0xe6, 0xf3, 0xb1, 0x9c, 0xf6, 0xfc, 0xab, 0x98, 0x6c, 0x2c, 0x1c, 0xe3, 0x60, 0x4b, 0x94, 0x84, 0xbb, 0xf8, 0x1f, 0xe1, 0xef, 0x9e, 0xa2, 0x19, 0x1c, 0xa9, 0xcb, 0x56, 0x00, 0x8b, 0xfa, 0x89, 0x29, 0x6c, 0xd9, 0x58, }; static const unsigned char ecdh_brainpoolp512r1_4525_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4525_sharedsecret[] = { 0x7e, 0x11, 0x65, 0xf1, 0xc0, 0xb8, 0xf8, 0x94, 0x40, 0x67, 0x2b, 0xa6, 0x26, 0x66, 0x48, 0xbe, 0x4c, 0x0e, 0xa9, 0xe6, 0xa3, 0x2e, 0x9a, 0x9c, 0x8b, 0xae, 0x75, 0x1b, 0xf8, 0x67, 0xf3, 0xa9, 0x92, 0x4a, 0x3b, 0x3c, 0x5c, 0x4e, 0xd5, 0xd3, 0x61, 0xed, 0xcf, 0x82, 0xce, 0x61, 0xfe, 0xe3, 0x6f, 0xb2, 0x69, 0xa8, 0x31, 0x5f, 0x8f, 0x82, 0xa5, 0xd3, 0x49, 0x19, 0xd1, 0xec, 0x01, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4525 = { .name = "ecdh_brainpoolp512r1_4525", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4525_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4525_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4525_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2203 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4526 for ECDH, tcId is 2204 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4526_peerpubkey[] = { 0x08, 0xd6, 0xac, 0xb7, 0x5b, 0x28, 0x16, 0xe4, 0x71, 0x71, 0x57, 0x5e, 0xac, 0x0a, 0x10, 0x9b, 0x42, 0xb9, 0x89, 0xab, 0xe1, 0xae, 0x1d, 0x81, 0xa7, 0x78, 0xfb, 0x2c, 0x38, 0x7e, 0x08, 0x92, 0x10, 0x34, 0xac, 0x15, 0x71, 0x47, 0xa8, 0xc9, 0xff, 0x3a, 0x64, 0x3b, 0x65, 0x37, 0x69, 0xa9, 0xec, 0x60, 0xa0, 0x52, 0x94, 0x31, 0xb0, 0x5a, 0x98, 0x4a, 0x9f, 0x4b, 0x32, 0x55, 0xc6, 0xca, 0x1c, 0x99, 0x17, 0x58, 0x3f, 0x28, 0x91, 0xda, 0x9d, 0xee, 0xcf, 0x19, 0x0e, 0x24, 0x7e, 0x62, 0x6f, 0xa4, 0x1a, 0x6b, 0x7f, 0xd1, 0xaf, 0x6e, 0xd7, 0x57, 0x57, 0xbc, 0x60, 0x07, 0x3c, 0xe4, 0x24, 0x3b, 0xf4, 0xe7, 0x76, 0x3d, 0xb6, 0x3c, 0xe7, 0x9d, 0x7b, 0x4d, 0x0d, 0xb3, 0x0d, 0xf8, 0x70, 0xa6, 0x64, 0x3e, 0x8d, 0x23, 0xe2, 0xd5, 0x29, 0x0e, 0x59, 0x3a, 0x15, 0x45, 0xd5, 0xed, }; static const unsigned char ecdh_brainpoolp512r1_4526_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4526_sharedsecret[] = { 0x02, 0x49, 0xcf, 0x29, 0x82, 0xbf, 0x64, 0xd6, 0x11, 0xec, 0xa9, 0x01, 0x93, 0x0b, 0x8d, 0x0c, 0x96, 0x78, 0xa9, 0x33, 0x21, 0xe1, 0xec, 0x60, 0x1b, 0xda, 0x6d, 0x46, 0x7f, 0xb8, 0x8d, 0xc9, 0x7d, 0xb3, 0xcb, 0xa6, 0x55, 0x81, 0xcb, 0xcc, 0xe7, 0xe1, 0x18, 0xbd, 0x9e, 0x12, 0x32, 0x32, 0x56, 0x15, 0x69, 0x1f, 0x74, 0xf9, 0xe6, 0xce, 0xcf, 0x2e, 0xe5, 0x6b, 0x5b, 0xbd, 0xcc, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4526 = { .name = "ecdh_brainpoolp512r1_4526", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4526_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4526_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4526_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2204 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4527 for ECDH, tcId is 2205 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4527_peerpubkey[] = { 0x7e, 0xe6, 0x16, 0x5f, 0x53, 0xce, 0x4b, 0xa5, 0xfb, 0x2f, 0x2a, 0xe9, 0xfc, 0xd7, 0x29, 0x62, 0xc7, 0xb0, 0xd3, 0x47, 0x2c, 0x22, 0x9a, 0xa4, 0xa1, 0xa4, 0xe1, 0x77, 0x9b, 0xd7, 0xc6, 0xe0, 0x44, 0xcf, 0xbd, 0x12, 0x98, 0x02, 0xc3, 0x66, 0x95, 0x15, 0x4d, 0x13, 0x6d, 0xa4, 0x12, 0xcd, 0xa5, 0x75, 0x14, 0x9c, 0x1d, 0xa4, 0x24, 0xeb, 0xe1, 0xfd, 0xf6, 0x0c, 0x75, 0x3b, 0x9f, 0xc5, 0x6e, 0x0d, 0xd1, 0xd1, 0xe6, 0xf8, 0xda, 0xe7, 0x6c, 0xd3, 0xc5, 0x43, 0xe5, 0x45, 0x67, 0x91, 0xbe, 0xf6, 0xf8, 0x07, 0xd0, 0x79, 0x4d, 0x6e, 0x2a, 0xe7, 0xe3, 0x95, 0x32, 0x40, 0x18, 0x89, 0x23, 0x1b, 0x8d, 0xc0, 0x97, 0x35, 0x1f, 0x47, 0x3c, 0x77, 0x90, 0xbd, 0xca, 0xac, 0x7b, 0x1f, 0xc6, 0xcc, 0x05, 0x03, 0xcc, 0x78, 0xb2, 0x81, 0x07, 0x4f, 0xf0, 0x3d, 0xc8, 0xef, 0x95, 0xd0, }; static const unsigned char ecdh_brainpoolp512r1_4527_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4527_sharedsecret[] = { 0xa9, 0x72, 0xe3, 0xfe, 0xfe, 0xbd, 0x67, 0xb1, 0xd9, 0xd1, 0x57, 0xc2, 0xb3, 0xbd, 0x1c, 0x83, 0xd8, 0x7b, 0x7f, 0xdc, 0x4f, 0xe6, 0x2b, 0x9b, 0x58, 0xb9, 0xd7, 0x2d, 0x45, 0x58, 0x13, 0xff, 0x06, 0x4f, 0xf3, 0x16, 0xe8, 0x00, 0x8d, 0x2b, 0x4c, 0x2d, 0xd4, 0x8e, 0xb0, 0x54, 0x4b, 0xa4, 0x02, 0xbe, 0xdb, 0x54, 0x95, 0xf3, 0xda, 0x94, 0xb7, 0x67, 0x49, 0x2a, 0x35, 0xb1, 0x17, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4527 = { .name = "ecdh_brainpoolp512r1_4527", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4527_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4527_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4527_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2205 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4528 for ECDH, tcId is 2206 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4528_peerpubkey[] = { 0x45, 0xbb, 0xb6, 0xd5, 0x13, 0xff, 0x8a, 0xdd, 0x7c, 0xa9, 0xb4, 0xad, 0x00, 0xb9, 0xaa, 0x57, 0x73, 0x6c, 0xb9, 0xb3, 0x43, 0x0c, 0x3b, 0x82, 0xef, 0xe8, 0x1d, 0xe9, 0xd2, 0xf2, 0x88, 0x70, 0x68, 0xfe, 0xa6, 0x9a, 0x53, 0x2a, 0x40, 0xb5, 0xa1, 0xf0, 0x1d, 0x05, 0x3d, 0xe5, 0x3f, 0xad, 0xe6, 0xd0, 0x7e, 0x88, 0x69, 0xa3, 0xb2, 0x46, 0x7b, 0xe4, 0xda, 0x2e, 0x9c, 0x11, 0x64, 0x26, 0x65, 0x7c, 0x3d, 0x69, 0xdd, 0xc7, 0xc4, 0xa8, 0x72, 0xe6, 0xda, 0xb2, 0x47, 0x2a, 0x6b, 0x7d, 0xde, 0x2b, 0x37, 0x1a, 0x46, 0xc2, 0x2a, 0xda, 0x28, 0xbc, 0x53, 0x90, 0x73, 0xe9, 0x96, 0x20, 0x4d, 0x0b, 0xe2, 0xc8, 0x2b, 0x85, 0x39, 0x4a, 0x97, 0x71, 0xdb, 0xd5, 0xa9, 0x2b, 0x2f, 0x9a, 0x65, 0x47, 0x25, 0xf5, 0x95, 0x8d, 0xca, 0xb9, 0xa1, 0xa0, 0x79, 0xb4, 0x73, 0x9f, 0x40, 0x12, }; static const unsigned char ecdh_brainpoolp512r1_4528_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4528_sharedsecret[] = { 0xa2, 0x28, 0xf8, 0x85, 0xf6, 0xae, 0xe5, 0x61, 0x19, 0x78, 0x2d, 0xc8, 0x72, 0xa9, 0x5a, 0xfb, 0x6d, 0x35, 0xa5, 0x97, 0x6e, 0xa3, 0xd7, 0x03, 0x65, 0x97, 0x96, 0xb4, 0x48, 0x61, 0xd1, 0xf6, 0x11, 0x23, 0xcb, 0xb7, 0x4a, 0xb0, 0x9e, 0x24, 0x91, 0x16, 0x53, 0x78, 0xa3, 0xf9, 0xbf, 0x8d, 0xf6, 0xdc, 0x3b, 0xf5, 0x91, 0x90, 0x68, 0x1a, 0x98, 0xbd, 0x54, 0xcc, 0x01, 0xa2, 0x80, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4528 = { .name = "ecdh_brainpoolp512r1_4528", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4528_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4528_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4528_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2206 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4529 for ECDH, tcId is 2207 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4529_peerpubkey[] = { 0x19, 0xc2, 0x07, 0x66, 0xa9, 0x08, 0x45, 0x5a, 0xa9, 0xc3, 0x3c, 0xb0, 0x15, 0xc0, 0x84, 0x4f, 0x7f, 0xec, 0x4d, 0x71, 0x41, 0x82, 0xee, 0xa1, 0x3b, 0xb6, 0x63, 0xb9, 0x12, 0x76, 0x8d, 0x6e, 0xa2, 0x00, 0xa7, 0x89, 0xb6, 0x89, 0xaf, 0xf8, 0x69, 0xd6, 0x4b, 0x74, 0xbf, 0xb7, 0xd0, 0x41, 0xa7, 0xb2, 0xa2, 0x93, 0x27, 0xa7, 0x69, 0xa9, 0x6e, 0x29, 0x0b, 0x75, 0x72, 0xce, 0xa4, 0xc8, 0x0f, 0x4b, 0xfc, 0x49, 0x44, 0xae, 0x59, 0x21, 0xe9, 0x43, 0x74, 0x9d, 0xcb, 0x1c, 0x54, 0x94, 0x11, 0xfe, 0xef, 0x71, 0xea, 0x07, 0xdd, 0xf5, 0xfc, 0x11, 0x32, 0xbb, 0x4c, 0xf9, 0x9f, 0xce, 0x98, 0xff, 0xc5, 0xbc, 0xe7, 0xad, 0x87, 0xb7, 0xe1, 0x55, 0x4b, 0xc5, 0x2a, 0x16, 0xee, 0x4b, 0xac, 0xcc, 0xba, 0x6f, 0x93, 0x7d, 0xe4, 0xac, 0x0f, 0x1f, 0xe5, 0x2c, 0x15, 0xac, 0xae, 0x3f, }; static const unsigned char ecdh_brainpoolp512r1_4529_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4529_sharedsecret[] = { 0x53, 0x22, 0xb4, 0x95, 0x72, 0x6f, 0xcd, 0xc2, 0xab, 0xa2, 0xcc, 0x77, 0xde, 0x55, 0xae, 0x96, 0x9a, 0xfe, 0x6c, 0x28, 0xd2, 0xe2, 0x23, 0x82, 0x5b, 0x0e, 0xd0, 0x52, 0x03, 0xd5, 0x35, 0x1d, 0x6b, 0x67, 0x55, 0x10, 0x00, 0x07, 0x7a, 0x40, 0xe5, 0x5c, 0xbd, 0xee, 0x99, 0x32, 0x73, 0x2d, 0x9a, 0x76, 0x0c, 0xe4, 0x0d, 0x20, 0x8b, 0x24, 0x84, 0xf0, 0x6f, 0xe1, 0x0b, 0x6e, 0xb1, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4529 = { .name = "ecdh_brainpoolp512r1_4529", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4529_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4529_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4529_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2207 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4530 for ECDH, tcId is 2208 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4530_peerpubkey[] = { 0x70, 0x14, 0x9e, 0xec, 0xd4, 0x4e, 0x43, 0x1e, 0x70, 0xa3, 0xb0, 0x86, 0x95, 0xaf, 0xda, 0x4d, 0x93, 0x5d, 0xc2, 0x59, 0xd0, 0x5c, 0x00, 0xee, 0x73, 0xed, 0x79, 0x45, 0xf3, 0x2d, 0x99, 0x5a, 0xf1, 0x07, 0x7c, 0x07, 0xda, 0xeb, 0xa0, 0x22, 0x0e, 0x5d, 0x08, 0xb4, 0x1e, 0xcb, 0x8b, 0x11, 0x67, 0xce, 0xfa, 0xbf, 0x89, 0x90, 0x38, 0x2f, 0xd0, 0x29, 0x2f, 0xc2, 0x89, 0x95, 0xba, 0x9d, 0x06, 0xe7, 0xb0, 0x86, 0xdc, 0x33, 0x9e, 0x73, 0xb0, 0x51, 0xf9, 0x53, 0xfa, 0x5a, 0xd5, 0x93, 0x59, 0x01, 0x2e, 0x3c, 0xdf, 0xfe, 0x3b, 0x1b, 0x3c, 0x47, 0x6d, 0x92, 0xc3, 0x83, 0x37, 0xd4, 0x12, 0x8e, 0x22, 0x1a, 0x38, 0x0f, 0xf0, 0xb8, 0x2c, 0x57, 0xd7, 0x58, 0x89, 0xd7, 0x98, 0x44, 0xfa, 0x48, 0x1f, 0x33, 0xef, 0x60, 0xad, 0x87, 0x54, 0x98, 0x7d, 0x70, 0x38, 0x03, 0x34, 0xa9, }; static const unsigned char ecdh_brainpoolp512r1_4530_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4530_sharedsecret[] = { 0x92, 0x9a, 0xa0, 0xdc, 0xdc, 0x96, 0x6e, 0xdb, 0xfa, 0x08, 0x13, 0xde, 0xb5, 0xb6, 0xc0, 0x0a, 0x89, 0x9f, 0xdc, 0xdf, 0x9b, 0xd8, 0xe2, 0x25, 0x5c, 0x34, 0x68, 0x22, 0xf2, 0xc3, 0xe7, 0x64, 0xfd, 0x72, 0xae, 0x88, 0x8c, 0x5e, 0x4c, 0x50, 0xe5, 0x67, 0xe2, 0x67, 0x40, 0x5d, 0x8c, 0xc7, 0xaa, 0x03, 0xd5, 0xa3, 0x11, 0x73, 0xc1, 0x6d, 0x3d, 0x3e, 0x64, 0xaf, 0xca, 0xa9, 0x9e, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4530 = { .name = "ecdh_brainpoolp512r1_4530", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4530_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4530_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4530_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2208 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4531 for ECDH, tcId is 2209 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4531_peerpubkey[] = { 0x16, 0xf5, 0x95, 0xeb, 0x77, 0xc4, 0x23, 0xd5, 0x1e, 0xa2, 0x67, 0xdb, 0x4f, 0xba, 0x12, 0x8a, 0x51, 0xd0, 0xb2, 0xfa, 0x9d, 0xb8, 0x0f, 0x3c, 0xa5, 0x02, 0xbf, 0xe2, 0xf2, 0x01, 0x15, 0x36, 0x58, 0x53, 0x31, 0xf8, 0xc6, 0x40, 0x4e, 0xc6, 0x58, 0xdc, 0x51, 0xb1, 0xda, 0x51, 0x8c, 0xa8, 0xed, 0xbc, 0x7c, 0x45, 0xd9, 0x32, 0xb0, 0x6e, 0x99, 0xb6, 0xd5, 0x60, 0x9a, 0xba, 0xb4, 0x8b, 0x61, 0x5c, 0xd2, 0x64, 0xcd, 0x0c, 0x23, 0xed, 0x6c, 0xde, 0x63, 0x27, 0xad, 0x73, 0x52, 0xf4, 0x22, 0x12, 0x0d, 0x84, 0xd7, 0xe5, 0xb6, 0xe9, 0x4b, 0x32, 0xa9, 0x66, 0x8f, 0x72, 0x07, 0x64, 0xcd, 0x68, 0x31, 0xfc, 0xa4, 0x44, 0xe6, 0xe2, 0x56, 0x79, 0x46, 0xfe, 0x5b, 0x4b, 0x7f, 0x1f, 0x99, 0xca, 0xcc, 0xef, 0x82, 0x49, 0x8c, 0x26, 0x70, 0x90, 0x1a, 0xd2, 0x93, 0x3e, 0x32, 0x27, }; static const unsigned char ecdh_brainpoolp512r1_4531_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4531_sharedsecret[] = { 0x29, 0x40, 0xaf, 0x4b, 0x96, 0xf5, 0x1a, 0x65, 0xa3, 0xdd, 0xbd, 0x16, 0x18, 0x69, 0xf1, 0xf4, 0xa0, 0xd8, 0xad, 0x1f, 0x92, 0x08, 0x05, 0xf1, 0xa9, 0x3c, 0xc0, 0x5d, 0x98, 0x72, 0x8b, 0x67, 0x04, 0x1c, 0x0b, 0xb0, 0xed, 0x4d, 0x7c, 0xcf, 0x60, 0x7b, 0x7d, 0x65, 0xfb, 0x11, 0xce, 0xb6, 0x2f, 0x89, 0x8c, 0x30, 0x56, 0xb4, 0x8d, 0xdf, 0x27, 0x7a, 0xb9, 0x6e, 0xe8, 0x02, 0xb2, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4531 = { .name = "ecdh_brainpoolp512r1_4531", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4531_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4531_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4531_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2209 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4532 for ECDH, tcId is 2210 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4532_peerpubkey[] = { 0x18, 0xd6, 0x57, 0x2d, 0xed, 0x88, 0x9a, 0x0a, 0xf4, 0x37, 0x75, 0x45, 0x95, 0xfe, 0x9e, 0x64, 0x38, 0x8a, 0x38, 0x98, 0x20, 0x6c, 0x0d, 0x0c, 0x9a, 0xe5, 0xed, 0x98, 0x31, 0x50, 0xcc, 0xf3, 0xf3, 0x50, 0x7f, 0x42, 0x44, 0xcd, 0x7f, 0x09, 0x7d, 0xde, 0x83, 0x9b, 0x2e, 0xe9, 0x4e, 0x8c, 0x66, 0x13, 0xda, 0xb5, 0xbc, 0x97, 0x49, 0xb6, 0x47, 0xe6, 0xc7, 0x72, 0xdf, 0x38, 0x04, 0xc7, 0x4c, 0xe9, 0x93, 0xf2, 0x1a, 0xc5, 0xf8, 0x39, 0x35, 0x52, 0xf0, 0x6f, 0xd8, 0x43, 0x11, 0xc6, 0x5b, 0xcd, 0xce, 0x35, 0x8d, 0x1f, 0xc2, 0x17, 0x1b, 0x1c, 0xdf, 0xaa, 0x14, 0x34, 0x27, 0x50, 0x8d, 0x99, 0xc9, 0x4d, 0x69, 0xd8, 0x2c, 0x5f, 0xc8, 0x79, 0xa3, 0x5c, 0xdb, 0x33, 0x75, 0x16, 0xf2, 0xbe, 0x16, 0x15, 0xbd, 0x23, 0x83, 0xe8, 0x9b, 0xd9, 0x4d, 0x7d, 0x5b, 0xde, 0x6c, 0xe5, }; static const unsigned char ecdh_brainpoolp512r1_4532_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4532_sharedsecret[] = { 0x46, 0x07, 0xce, 0x62, 0x08, 0xf6, 0x66, 0xf9, 0x99, 0xd9, 0x48, 0xb1, 0x5f, 0x53, 0xfe, 0x52, 0xeb, 0xd5, 0x32, 0xd4, 0x93, 0x7e, 0xb6, 0xec, 0x7c, 0x3e, 0xc5, 0xb0, 0xc3, 0x9d, 0x0b, 0xc8, 0xaa, 0xb1, 0xd4, 0x75, 0x79, 0xc1, 0x81, 0x86, 0xdb, 0x92, 0xc2, 0xbe, 0x7b, 0x2a, 0x73, 0x42, 0x57, 0x06, 0x59, 0x65, 0x1c, 0xa1, 0x5a, 0x1d, 0x0a, 0x10, 0x40, 0xad, 0x6c, 0x4c, 0xf2, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4532 = { .name = "ecdh_brainpoolp512r1_4532", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4532_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4532_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4532_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2210 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4533 for ECDH, tcId is 2211 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4533_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x12, 0x78, 0x0a, 0xe4, 0xd2, 0xfa, 0xd1, 0x16, 0x3e, 0x2a, 0x51, 0x3d, 0x72, 0xad, 0x6e, 0x3c, 0x22, 0x11, 0xf8, 0x07, 0x9c, 0xcb, 0xdd, 0xeb, 0x9b, 0x1e, 0x95, 0x6b, 0x2e, 0xe3, 0x61, 0x73, 0xab, 0xe8, 0x44, 0x64, 0xb0, 0xc7, 0x8d, 0xca, 0x8d, 0xb2, 0x1f, 0x69, 0x64, 0xe9, 0xa1, 0x39, 0x8a, 0x5a, 0x0f, 0x6e, 0x1e, 0x71, 0x7d, 0xdf, 0x4e, 0xac, 0x51, 0x70, 0x32, 0x87, 0x92, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_4533_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4533_sharedsecret[] = { 0x3d, 0x82, 0xc6, 0x6c, 0x53, 0x22, 0x0a, 0xfa, 0x0b, 0x77, 0x87, 0x58, 0x08, 0xf2, 0xbc, 0x37, 0xc2, 0x1a, 0x4b, 0x64, 0xee, 0xe1, 0x9c, 0x54, 0x2a, 0xe1, 0x9a, 0xfc, 0x2e, 0x8a, 0xd5, 0x56, 0xf9, 0xd2, 0x51, 0x06, 0x7b, 0x4a, 0x5f, 0xbe, 0x6c, 0xb4, 0x4b, 0xb7, 0x6c, 0x32, 0x9d, 0xb5, 0xe1, 0xaf, 0x60, 0x84, 0xf0, 0xbc, 0x66, 0x0c, 0x4f, 0xae, 0x4e, 0x26, 0x93, 0x64, 0x83, 0x4d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4533 = { .name = "ecdh_brainpoolp512r1_4533", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4533_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4533_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4533_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1, tcId is 2211 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4534 for ECDH, tcId is 2212 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4534_peerpubkey[] = { 0x48, 0xf4, 0xdc, 0xca, 0x13, 0xd2, 0x9c, 0x67, 0xeb, 0x7c, 0xbf, 0xaa, 0x95, 0x23, 0x34, 0xec, 0xa4, 0xd5, 0xb7, 0xfd, 0x3e, 0xbd, 0x53, 0x89, 0xaa, 0x43, 0xba, 0x7e, 0x86, 0x0e, 0x05, 0xcc, 0xbb, 0x40, 0xd3, 0xb4, 0xbd, 0x87, 0xd3, 0xa4, 0xd2, 0x6b, 0x0f, 0x13, 0x1a, 0x05, 0x20, 0xf3, 0x89, 0x0c, 0x9a, 0x3e, 0xd4, 0xc3, 0xb5, 0x22, 0x13, 0xdf, 0xa1, 0xe5, 0x9a, 0x50, 0x20, 0xb7, 0x38, 0xf7, 0x05, 0x66, 0xa8, 0x40, 0xe9, 0x07, 0x96, 0xf8, 0x3d, 0xcd, 0xe7, 0x2e, 0xf6, 0x19, 0xb4, 0x9e, 0x7c, 0x53, 0xd9, 0x54, 0x3a, 0xf9, 0xb2, 0x16, 0x8a, 0xa9, 0x0a, 0xf1, 0x54, 0x48, 0xda, 0x61, 0x0c, 0x3f, 0x68, 0x0b, 0x51, 0x37, 0xf7, 0xbb, 0xfa, 0x8b, 0xc6, 0x2d, 0xfb, 0x57, 0xb9, 0x53, 0xc2, 0xc7, 0x30, 0xd7, 0xa7, 0x3d, 0x3c, 0x47, 0x49, 0x4c, 0x23, 0xde, 0x44, 0x41, }; static const unsigned char ecdh_brainpoolp512r1_4534_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4534_sharedsecret[] = { 0x39, 0xa7, 0x7e, 0x42, 0x18, 0x1a, 0x6a, 0xa4, 0xe8, 0xbc, 0x4c, 0x93, 0x5a, 0x31, 0x09, 0xfe, 0x9e, 0x5d, 0xe3, 0x7f, 0x45, 0x4c, 0xc7, 0x90, 0x65, 0x0e, 0xe6, 0x53, 0x6c, 0xe0, 0x16, 0x6d, 0xbd, 0x52, 0xfc, 0x45, 0x4b, 0xb4, 0x9a, 0x6b, 0xa4, 0x26, 0x52, 0x3c, 0xe4, 0xbe, 0xc1, 0xdb, 0x2b, 0x55, 0x7e, 0xa2, 0xe1, 0x32, 0x12, 0x38, 0xd6, 0xb3, 0xe3, 0x66, 0x25, 0x24, 0xbf, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4534 = { .name = "ecdh_brainpoolp512r1_4534", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4534_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4534_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4534_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1, tcId is 2212 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4535 for ECDH, tcId is 2213 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4535_peerpubkey[] = { 0x00, 0x5d, 0x7b, 0xb2, 0x2b, 0x2f, 0x7f, 0xfd, 0x5c, 0xfe, 0xdf, 0x91, 0x98, 0x2b, 0x85, 0x9f, 0x4e, 0xc1, 0xaf, 0x6f, 0xea, 0xca, 0x7f, 0xc0, 0x4a, 0x3b, 0xeb, 0x87, 0xf9, 0x3c, 0xa7, 0xcd, 0x8b, 0xe2, 0x30, 0x12, 0x96, 0x5b, 0x53, 0xe8, 0xd7, 0x1e, 0xe6, 0x62, 0xa6, 0xf1, 0x2e, 0x91, 0x36, 0xb4, 0x70, 0x17, 0x79, 0x88, 0x6b, 0x26, 0x20, 0x79, 0x86, 0x98, 0x1a, 0x37, 0x2e, 0x51, 0x4c, 0x33, 0x40, 0x2b, 0x60, 0xe7, 0xa6, 0x93, 0x96, 0x01, 0xb9, 0x39, 0x8a, 0xa0, 0x32, 0x0f, 0x25, 0xda, 0x04, 0xae, 0x55, 0xba, 0x63, 0xe3, 0x4c, 0x71, 0xb1, 0x74, 0xa2, 0x21, 0xa0, 0xa6, 0x07, 0xcb, 0x62, 0x64, 0x96, 0xb6, 0x27, 0xfa, 0x95, 0xe0, 0xcd, 0xac, 0xd0, 0x59, 0x7c, 0xbc, 0x79, 0xd2, 0xc7, 0x6a, 0xeb, 0xa5, 0x4b, 0x34, 0x87, 0xdc, 0xdb, 0x70, 0x38, 0x50, 0x8a, 0xa7, }; static const unsigned char ecdh_brainpoolp512r1_4535_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4535_sharedsecret[] = { 0x3d, 0x4f, 0x15, 0x04, 0xf3, 0x32, 0x2c, 0xbc, 0xa5, 0xd1, 0xd7, 0xbb, 0x0f, 0xcf, 0xd9, 0x4f, 0xe3, 0x67, 0xc3, 0x3c, 0x1b, 0x54, 0xe4, 0x8d, 0x86, 0x3d, 0xf6, 0x6b, 0x5e, 0x56, 0x52, 0x06, 0xa1, 0xb1, 0x27, 0xbc, 0x2a, 0xcd, 0x68, 0xfb, 0xce, 0x9c, 0xfb, 0x73, 0xa5, 0x6e, 0x29, 0x24, 0x65, 0xb8, 0xa5, 0x35, 0x25, 0x41, 0xc4, 0xcb, 0xb5, 0x62, 0x29, 0x49, 0x30, 0x32, 0xa1, 0x1b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4535 = { .name = "ecdh_brainpoolp512r1_4535", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4535_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4535_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4535_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2213 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4536 for ECDH, tcId is 2214 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4536_peerpubkey[] = { 0x16, 0x03, 0xae, 0x0d, 0xc0, 0x6b, 0x20, 0x31, 0x47, 0xb1, 0x22, 0x11, 0x4a, 0x14, 0x9d, 0xb4, 0x4c, 0xe2, 0x38, 0x0a, 0xc0, 0x46, 0x22, 0x83, 0x04, 0xd5, 0xfd, 0xd9, 0x50, 0x08, 0x3e, 0x58, 0xe9, 0xb0, 0xc4, 0x9f, 0x72, 0xa9, 0xbb, 0xf0, 0xa1, 0x40, 0x55, 0xd2, 0x0f, 0xf5, 0x0e, 0x74, 0x41, 0x72, 0xb8, 0x7e, 0x18, 0xd7, 0x57, 0x15, 0x77, 0xee, 0xa4, 0x35, 0x5d, 0x7a, 0xc1, 0x9e, 0x59, 0x09, 0x03, 0xba, 0xb5, 0x63, 0x3f, 0xaa, 0xfe, 0xfb, 0x76, 0x57, 0x2f, 0x08, 0x59, 0x7f, 0x09, 0x24, 0x2c, 0x86, 0xb3, 0x98, 0x91, 0xfd, 0x6a, 0xe4, 0x21, 0xcf, 0x6b, 0x7c, 0xab, 0xd8, 0x3d, 0xb7, 0xd7, 0x00, 0x40, 0x88, 0xf5, 0x00, 0x7e, 0x28, 0xa5, 0xfd, 0xd2, 0x78, 0x80, 0x98, 0x06, 0x98, 0x62, 0x07, 0xc8, 0x4d, 0x0d, 0x28, 0x17, 0x55, 0xfa, 0xf6, 0xad, 0x9f, 0x2e, 0xd8, }; static const unsigned char ecdh_brainpoolp512r1_4536_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4536_sharedsecret[] = { 0x3c, 0x35, 0x75, 0x24, 0x39, 0x84, 0x54, 0x71, 0x2c, 0xc9, 0x0b, 0x9a, 0x07, 0x52, 0x2e, 0x53, 0xd6, 0x8f, 0xd9, 0x8d, 0xed, 0x2a, 0xbb, 0x17, 0x6d, 0x12, 0xd0, 0x1e, 0xf9, 0x4a, 0xa9, 0x40, 0xc0, 0x77, 0x81, 0xad, 0x3c, 0x95, 0x67, 0x90, 0x47, 0xae, 0xb5, 0xe8, 0xf7, 0x1c, 0xae, 0xb2, 0xb1, 0x35, 0x9f, 0x37, 0xdd, 0x59, 0x6c, 0xd4, 0x61, 0xbd, 0x43, 0x8a, 0x39, 0xb6, 0x35, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4536 = { .name = "ecdh_brainpoolp512r1_4536", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4536_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4536_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4536_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2214 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4537 for ECDH, tcId is 2215 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4537_peerpubkey[] = { 0x73, 0x47, 0xef, 0xa7, 0xf8, 0x96, 0x0a, 0x82, 0xd2, 0xd0, 0xf3, 0xf4, 0x70, 0x4f, 0xfa, 0xe1, 0x56, 0x9e, 0x6d, 0xcf, 0x10, 0xec, 0xf1, 0x0e, 0x71, 0x3a, 0x55, 0x53, 0x20, 0x50, 0xba, 0x0e, 0x1c, 0x5c, 0xec, 0xb8, 0xcd, 0x92, 0xe5, 0xa4, 0x76, 0x7b, 0x03, 0x9a, 0xb5, 0x6e, 0xe3, 0xe2, 0xdd, 0x1b, 0xa5, 0xcf, 0x23, 0xcc, 0xac, 0x13, 0xf2, 0xff, 0xcf, 0x39, 0xc1, 0x12, 0x50, 0x82, 0x2d, 0x1a, 0x34, 0xd8, 0x4a, 0xf9, 0x19, 0x77, 0xa7, 0x45, 0x1c, 0xda, 0x4a, 0x0a, 0xe5, 0xf6, 0xd3, 0x47, 0xef, 0x1f, 0xfa, 0x1f, 0x74, 0x9c, 0x8f, 0xc6, 0x3e, 0xd7, 0x9d, 0xdc, 0x8d, 0xa3, 0x9f, 0x9a, 0xb0, 0xd7, 0x45, 0xa9, 0x26, 0xb0, 0x36, 0x21, 0x4d, 0x84, 0x0c, 0xec, 0x25, 0x19, 0xaa, 0x6a, 0xaa, 0x7c, 0x6b, 0x97, 0x47, 0xa9, 0xab, 0x4f, 0xe7, 0xec, 0x15, 0x8b, 0x59, 0xab, }; static const unsigned char ecdh_brainpoolp512r1_4537_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4537_sharedsecret[] = { 0x62, 0xf3, 0xa7, 0xe9, 0x4e, 0x99, 0x31, 0x88, 0x28, 0x10, 0x05, 0x7d, 0xce, 0xad, 0x55, 0x4a, 0xfb, 0x07, 0x15, 0x8c, 0x9c, 0x51, 0x13, 0xe8, 0x99, 0x45, 0x40, 0xe0, 0x5c, 0xfd, 0x50, 0xfe, 0x14, 0xdb, 0x6f, 0x96, 0x74, 0x09, 0x11, 0x67, 0x3b, 0x88, 0xfe, 0xb0, 0xe3, 0x79, 0x7c, 0xcc, 0xe5, 0xbf, 0xf8, 0x76, 0xe1, 0x38, 0x21, 0xd9, 0x49, 0x35, 0x6a, 0x7b, 0x1b, 0xef, 0x6a, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4537 = { .name = "ecdh_brainpoolp512r1_4537", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4537_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4537_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4537_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2215 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4538 for ECDH, tcId is 2216 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4538_peerpubkey[] = { 0x4e, 0x92, 0x1e, 0xda, 0x9c, 0x9a, 0x99, 0x73, 0x79, 0xb3, 0xd5, 0x3a, 0x8e, 0xe0, 0x21, 0x5c, 0x13, 0x04, 0x6c, 0x7b, 0x4c, 0xc6, 0x20, 0xa1, 0x17, 0x07, 0x98, 0x53, 0xdb, 0x10, 0x2a, 0x49, 0x3f, 0x9d, 0x7d, 0xdd, 0x5c, 0xdd, 0x87, 0x93, 0x90, 0x53, 0x09, 0x4b, 0x05, 0xe4, 0xf3, 0x6f, 0xdc, 0x03, 0xc2, 0x64, 0x5a, 0xf1, 0x3b, 0x77, 0x8f, 0xd9, 0x18, 0xc9, 0xd8, 0x3a, 0x13, 0xf5, 0x1b, 0xbb, 0x56, 0xc9, 0xa5, 0x75, 0xe2, 0xbf, 0xfb, 0xf0, 0x1e, 0xe1, 0xbf, 0x85, 0x57, 0x24, 0x5b, 0x5d, 0xf6, 0xeb, 0x05, 0x30, 0x49, 0x19, 0xa2, 0xd9, 0x39, 0xb9, 0xdd, 0x41, 0x21, 0x2f, 0xf9, 0x65, 0xa5, 0x0e, 0x75, 0x0c, 0x76, 0x56, 0xb3, 0xc9, 0xf1, 0x31, 0x7f, 0xd4, 0xb3, 0xbd, 0xaf, 0x7e, 0x79, 0xba, 0x12, 0xb1, 0xe4, 0xdb, 0xd3, 0xe7, 0x2b, 0x26, 0x0c, 0x97, 0x7f, 0x90, }; static const unsigned char ecdh_brainpoolp512r1_4538_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4538_sharedsecret[] = { 0xa2, 0x10, 0x06, 0x1c, 0x47, 0x38, 0xde, 0x61, 0x75, 0x7e, 0x69, 0x82, 0x6e, 0xdd, 0xe1, 0xa4, 0xb8, 0xd6, 0xb1, 0xd3, 0x51, 0xaa, 0x22, 0x21, 0xeb, 0x8f, 0xcc, 0xfa, 0x66, 0x9a, 0x5e, 0xee, 0x37, 0xe4, 0xfa, 0x4a, 0xa2, 0x85, 0x37, 0xbe, 0x2b, 0x63, 0x49, 0x67, 0xd1, 0x3b, 0x8a, 0xb7, 0x0f, 0x65, 0x18, 0x66, 0xc4, 0x0b, 0x45, 0x30, 0x9d, 0xf7, 0xcc, 0xed, 0xd4, 0x76, 0x1a, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4538 = { .name = "ecdh_brainpoolp512r1_4538", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4538_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4538_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4538_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2216 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4539 for ECDH, tcId is 2217 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4539_peerpubkey[] = { 0x4f, 0xb9, 0x4c, 0x6a, 0x37, 0xd9, 0x0c, 0x88, 0x1d, 0x6a, 0x34, 0x3a, 0xd4, 0x8f, 0x99, 0x17, 0x70, 0x8b, 0x2e, 0x20, 0x78, 0x6b, 0x22, 0x46, 0x7f, 0x26, 0x1d, 0x83, 0x4b, 0xf8, 0x25, 0x1a, 0xba, 0x6b, 0x7f, 0x49, 0x02, 0xd7, 0x87, 0xf2, 0xa9, 0x3c, 0x8a, 0x24, 0x64, 0x0d, 0x71, 0x13, 0xc0, 0x79, 0x84, 0xc6, 0xf1, 0x39, 0x9a, 0x63, 0xcf, 0x29, 0x8f, 0x5b, 0x2c, 0x18, 0x76, 0x86, 0x50, 0xe6, 0x6f, 0x30, 0x7b, 0xe1, 0x2e, 0x39, 0xcd, 0xf9, 0x55, 0x27, 0x82, 0x3c, 0x36, 0xdf, 0xae, 0x5d, 0xc5, 0x33, 0x86, 0xc1, 0xe6, 0x50, 0xf4, 0x02, 0x55, 0x75, 0x8f, 0x59, 0xac, 0x69, 0x99, 0x42, 0x8a, 0xb2, 0x01, 0x8c, 0xe5, 0xa3, 0x2a, 0xb7, 0x4f, 0x2b, 0x63, 0xe3, 0x3b, 0x94, 0xab, 0x76, 0x54, 0x99, 0x20, 0x24, 0x0a, 0xd4, 0xc1, 0x37, 0x10, 0xfd, 0xa8, 0xd9, 0x61, 0x64, }; static const unsigned char ecdh_brainpoolp512r1_4539_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4539_sharedsecret[] = { 0x24, 0x47, 0x7d, 0xef, 0x8f, 0xac, 0xaf, 0x5b, 0xc5, 0x56, 0xa7, 0xb3, 0x91, 0x96, 0xcc, 0x0b, 0xf3, 0x95, 0x2f, 0xb0, 0xfe, 0xde, 0x0f, 0x77, 0xa3, 0xbc, 0x3c, 0x93, 0x5b, 0xc6, 0x55, 0x1d, 0x05, 0xe1, 0xe7, 0x13, 0x2f, 0xb4, 0xba, 0x8a, 0x45, 0xd0, 0x7b, 0x7b, 0x8b, 0x9f, 0x5c, 0x3e, 0xab, 0xda, 0xc4, 0x5a, 0xff, 0x6a, 0x97, 0x4c, 0xba, 0x4a, 0x65, 0x95, 0xb2, 0x57, 0x0d, 0x2f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4539 = { .name = "ecdh_brainpoolp512r1_4539", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4539_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4539_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4539_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2217 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4540 for ECDH, tcId is 2218 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4540_peerpubkey[] = { 0xa8, 0x1d, 0x3d, 0xe6, 0xd9, 0x9b, 0x4f, 0xbc, 0x7f, 0x2c, 0x3a, 0x6f, 0x03, 0xd4, 0x77, 0x85, 0x61, 0x24, 0x08, 0x15, 0xf8, 0x31, 0xf6, 0x7e, 0xe1, 0x52, 0x65, 0xb9, 0x5d, 0xf3, 0x23, 0x3c, 0xbf, 0x09, 0xa8, 0x9d, 0xab, 0x9e, 0xaf, 0xf1, 0x2d, 0x23, 0xa3, 0x81, 0xa2, 0x3a, 0x14, 0xe2, 0x2e, 0x37, 0xef, 0x20, 0xb1, 0xda, 0x0a, 0xa9, 0x6d, 0x97, 0x21, 0x41, 0x14, 0x77, 0x08, 0x5e, 0x04, 0x24, 0x55, 0xa2, 0x36, 0x71, 0xfd, 0x3d, 0xc7, 0x22, 0x9b, 0x55, 0xab, 0xbe, 0x53, 0x7f, 0xcb, 0x64, 0xf0, 0x8e, 0x26, 0x95, 0x7e, 0xd4, 0xb5, 0xe4, 0x1d, 0x97, 0x89, 0x62, 0xdd, 0x33, 0x6f, 0xf3, 0x18, 0x1c, 0x43, 0x4e, 0x3a, 0xa5, 0x03, 0x5f, 0xff, 0xfb, 0x64, 0x75, 0x5f, 0xcb, 0xb6, 0x6d, 0x27, 0xce, 0x23, 0xf3, 0xbe, 0x68, 0xa3, 0x3e, 0xed, 0xa1, 0xff, 0x69, 0x42, 0x3e, }; static const unsigned char ecdh_brainpoolp512r1_4540_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4540_sharedsecret[] = { 0x6d, 0x38, 0xb4, 0xc4, 0x0a, 0xa7, 0x82, 0xab, 0x72, 0x10, 0x1b, 0xeb, 0xf9, 0xa7, 0xe3, 0xa9, 0x45, 0x7c, 0x3b, 0x30, 0x0d, 0x80, 0xa9, 0x54, 0x99, 0xad, 0xa3, 0xd9, 0xd3, 0x10, 0x37, 0x3c, 0xa4, 0x2a, 0xaa, 0xf6, 0x90, 0x5b, 0x03, 0x9c, 0x93, 0x62, 0x97, 0x0e, 0x17, 0xec, 0xf2, 0x34, 0x92, 0x18, 0x57, 0x62, 0x17, 0x69, 0x69, 0x7e, 0xa2, 0xe5, 0xc9, 0x5f, 0x4b, 0x3a, 0x7a, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4540 = { .name = "ecdh_brainpoolp512r1_4540", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4540_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4540_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4540_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2218 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4541 for ECDH, tcId is 2219 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4541_peerpubkey[] = { 0x21, 0x22, 0x87, 0x0f, 0xdb, 0x88, 0xcc, 0xc9, 0xec, 0x71, 0x9f, 0x62, 0xb2, 0xbe, 0x35, 0xa4, 0xf2, 0xd4, 0x36, 0xa7, 0xfb, 0x78, 0x66, 0xd5, 0x1c, 0x1e, 0x31, 0xb4, 0x21, 0x60, 0xdf, 0x4f, 0x87, 0xe7, 0x93, 0x23, 0x83, 0x79, 0xd1, 0x2c, 0xba, 0xcd, 0xdd, 0x2f, 0x1d, 0x60, 0xfb, 0xa7, 0xad, 0x3c, 0xd7, 0x6d, 0x83, 0x6c, 0x27, 0x4a, 0xdf, 0xd2, 0xa7, 0x0b, 0xa4, 0x91, 0xae, 0x97, 0x95, 0x02, 0x68, 0xcd, 0x96, 0x33, 0xf5, 0x20, 0xb6, 0xcb, 0x7d, 0x02, 0x2e, 0x9c, 0x6c, 0xb9, 0x9e, 0xb0, 0x7c, 0x24, 0x30, 0x06, 0x2d, 0xcb, 0x88, 0xc6, 0x7f, 0xc9, 0x65, 0x26, 0xcd, 0x21, 0x1f, 0x1d, 0xfb, 0x4b, 0x6d, 0x9b, 0x79, 0x7a, 0xae, 0xed, 0x48, 0x19, 0x6f, 0x0a, 0xbb, 0x75, 0x75, 0x9f, 0xac, 0x8b, 0x5b, 0xf1, 0xae, 0xd8, 0x98, 0x12, 0x3d, 0x6a, 0xc3, 0xcb, 0x57, 0x24, }; static const unsigned char ecdh_brainpoolp512r1_4541_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4541_sharedsecret[] = { 0x66, 0xd8, 0x4f, 0x76, 0x3a, 0xde, 0x48, 0x25, 0xee, 0x88, 0xea, 0xef, 0xdb, 0xd3, 0xfe, 0x4d, 0x91, 0x86, 0x6e, 0x43, 0xaa, 0xab, 0x33, 0xa0, 0x80, 0xb2, 0x51, 0xb5, 0x29, 0x0d, 0xe2, 0x58, 0x4e, 0x76, 0x82, 0x25, 0xe9, 0x81, 0xa4, 0x19, 0x35, 0xb5, 0x6f, 0x97, 0xcc, 0x73, 0xbb, 0x9c, 0x14, 0x8b, 0x83, 0x9c, 0xc9, 0x61, 0x0f, 0x22, 0xa0, 0xb5, 0x7a, 0xc1, 0xaf, 0x84, 0x48, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4541 = { .name = "ecdh_brainpoolp512r1_4541", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4541_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4541_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4541_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2219 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4542 for ECDH, tcId is 2220 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4542_peerpubkey[] = { 0x21, 0x0e, 0xac, 0x5b, 0x42, 0xbe, 0xab, 0x95, 0x9a, 0x5b, 0xe4, 0x34, 0x70, 0xe0, 0xc2, 0x7c, 0x5e, 0x62, 0x68, 0x2d, 0x93, 0x9d, 0x6f, 0x8c, 0xcd, 0x37, 0xa3, 0x1d, 0xcb, 0xb2, 0xa6, 0xa0, 0x15, 0xc0, 0x09, 0x1e, 0x77, 0x4c, 0x38, 0x7d, 0x7a, 0xcf, 0x05, 0x9c, 0x57, 0xb9, 0x25, 0xe4, 0x13, 0x4c, 0x50, 0x49, 0x30, 0xf2, 0x0b, 0x56, 0x48, 0x4b, 0x87, 0x09, 0xba, 0xaf, 0x61, 0xf7, 0x4c, 0xa4, 0x9a, 0x24, 0x2e, 0x83, 0xcb, 0xfc, 0xd6, 0x69, 0x65, 0xcd, 0x20, 0xde, 0x86, 0x73, 0xac, 0xdf, 0x2c, 0xe7, 0x74, 0xb3, 0x8a, 0x72, 0x18, 0x44, 0x0f, 0x1c, 0x00, 0x43, 0xd3, 0xa9, 0xbf, 0xf6, 0xb3, 0x12, 0x63, 0x84, 0xf4, 0x37, 0x47, 0x80, 0x0d, 0x45, 0xff, 0x3f, 0x89, 0x81, 0xba, 0x34, 0x13, 0xa8, 0x5f, 0x0f, 0xe2, 0x12, 0xa1, 0xcd, 0x8f, 0x3b, 0x2e, 0x19, 0x98, 0xe9, }; static const unsigned char ecdh_brainpoolp512r1_4542_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4542_sharedsecret[] = { 0x4b, 0xa0, 0x13, 0xdd, 0x72, 0xe3, 0x08, 0xa5, 0x03, 0xbe, 0x59, 0x5f, 0xd5, 0x33, 0x79, 0x31, 0x46, 0xcc, 0x4e, 0x63, 0x2a, 0x31, 0xb2, 0x43, 0xab, 0xe6, 0xd4, 0xf6, 0x78, 0xd1, 0x2c, 0xd4, 0x07, 0xa8, 0x0e, 0x5c, 0x02, 0xf9, 0x4e, 0x02, 0x26, 0x7b, 0x12, 0x89, 0x17, 0x8a, 0x38, 0xb7, 0x77, 0xe7, 0x29, 0xc0, 0x8e, 0x29, 0xe3, 0x0d, 0x97, 0x3d, 0x0e, 0x5e, 0x50, 0x42, 0x23, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4542 = { .name = "ecdh_brainpoolp512r1_4542", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4542_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4542_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4542_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2220 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4543 for ECDH, tcId is 2221 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4543_peerpubkey[] = { 0x82, 0x28, 0xcf, 0x60, 0x53, 0x2a, 0xed, 0x0f, 0x44, 0xe3, 0x21, 0xbc, 0x0d, 0x93, 0x4a, 0x6b, 0x61, 0xec, 0xca, 0xb6, 0x6b, 0x8b, 0xa0, 0x01, 0xe0, 0x03, 0x83, 0x59, 0xe6, 0xbf, 0x1a, 0xf4, 0xe4, 0x74, 0xd0, 0x7f, 0x0d, 0xf7, 0xb0, 0x6d, 0x4b, 0x77, 0xef, 0xe4, 0xfa, 0xb2, 0x53, 0x1e, 0x34, 0xdf, 0x9d, 0x11, 0x10, 0xcd, 0xe8, 0x3b, 0x89, 0x78, 0x69, 0x63, 0x22, 0x88, 0x67, 0xb9, 0x65, 0x4c, 0x32, 0xf3, 0x60, 0xa9, 0xb9, 0x7b, 0x2a, 0xf9, 0x53, 0x03, 0xd8, 0xa1, 0x32, 0xfd, 0x13, 0x7c, 0x8f, 0x2e, 0x6f, 0x86, 0x43, 0xc9, 0x91, 0x34, 0xc4, 0xef, 0xc5, 0x98, 0xc6, 0x3f, 0x41, 0x03, 0xc9, 0x86, 0x85, 0x35, 0xe5, 0xf4, 0x33, 0x29, 0xbb, 0xa9, 0x46, 0x4f, 0x0e, 0xdb, 0x47, 0xce, 0xd4, 0xc7, 0x7d, 0xb4, 0x18, 0x5e, 0x6a, 0xef, 0xf7, 0xa0, 0xee, 0xb4, 0xc4, 0xef, }; static const unsigned char ecdh_brainpoolp512r1_4543_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4543_sharedsecret[] = { 0x27, 0xa7, 0xf0, 0xc4, 0x7a, 0x05, 0xbd, 0xd8, 0x9a, 0x3e, 0x7b, 0xfc, 0x9b, 0x0e, 0xdf, 0x09, 0x22, 0x62, 0xb3, 0xf3, 0x96, 0xf0, 0x6d, 0xc2, 0x2c, 0x60, 0xe7, 0xa9, 0x80, 0x6a, 0x9e, 0x50, 0x96, 0xf9, 0x4f, 0x21, 0xea, 0x4e, 0x3c, 0x71, 0x40, 0xd5, 0x70, 0xfa, 0x81, 0xf2, 0x85, 0xf2, 0xfc, 0x55, 0xa2, 0xb1, 0xbb, 0x6f, 0xb5, 0x75, 0xd1, 0x8a, 0x8d, 0x1f, 0x9b, 0x36, 0x48, 0xc2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4543 = { .name = "ecdh_brainpoolp512r1_4543", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4543_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4543_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4543_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2221 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4544 for ECDH, tcId is 2222 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4544_peerpubkey[] = { 0x52, 0xea, 0x7a, 0x4a, 0xab, 0x26, 0x66, 0x7e, 0xb2, 0x8c, 0x45, 0xca, 0x32, 0x41, 0xb3, 0xca, 0xcf, 0x64, 0xd2, 0x10, 0xf7, 0x1b, 0xcc, 0xa7, 0x19, 0x8b, 0xd1, 0xe1, 0x94, 0x8e, 0xc4, 0xde, 0xb2, 0x07, 0xc9, 0xec, 0xd8, 0x37, 0x36, 0x87, 0x34, 0x6f, 0x06, 0x72, 0x2c, 0x8d, 0xe3, 0xed, 0xb1, 0x02, 0x55, 0xfe, 0x2b, 0x01, 0xbe, 0x15, 0x29, 0xbe, 0x8b, 0x2e, 0x54, 0xc4, 0xb9, 0xe1, 0x4f, 0xc1, 0xc2, 0xe0, 0xd2, 0xfe, 0x59, 0x20, 0x6f, 0x88, 0x9d, 0x22, 0x6f, 0xcc, 0xf7, 0xe2, 0x90, 0x16, 0xef, 0x37, 0xb6, 0x0c, 0x0c, 0x22, 0x98, 0xf6, 0xc8, 0x76, 0xfc, 0x3f, 0xff, 0x2d, 0xd8, 0x1d, 0xf9, 0x3a, 0x51, 0x69, 0x8e, 0x4d, 0x24, 0x63, 0x8a, 0xd0, 0xd6, 0xd0, 0x11, 0x56, 0x6f, 0x90, 0x77, 0x61, 0x1c, 0x29, 0x09, 0xba, 0x21, 0xe2, 0x39, 0x7b, 0x4c, 0x79, 0xc3, 0x15, }; static const unsigned char ecdh_brainpoolp512r1_4544_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4544_sharedsecret[] = { 0x5e, 0xfe, 0x99, 0xae, 0x81, 0x7f, 0x36, 0x06, 0x54, 0x92, 0x23, 0x75, 0x5a, 0x44, 0x51, 0x19, 0xc5, 0x76, 0x79, 0x4c, 0xd7, 0x83, 0x9e, 0x6b, 0x9e, 0x53, 0x14, 0x44, 0x6f, 0x3b, 0xc3, 0x10, 0x7c, 0x17, 0xef, 0x20, 0x54, 0xaf, 0x1a, 0xae, 0x64, 0xe7, 0x68, 0x51, 0xd2, 0x5e, 0xf4, 0x14, 0x47, 0x7b, 0xf2, 0x48, 0x11, 0xdb, 0x99, 0x49, 0x52, 0x7d, 0xb1, 0xf8, 0xf5, 0x15, 0xf7, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4544 = { .name = "ecdh_brainpoolp512r1_4544", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4544_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4544_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4544_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2222 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4545 for ECDH, tcId is 2223 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4545_peerpubkey[] = { 0x32, 0x36, 0x24, 0x73, 0x06, 0xfc, 0x89, 0x15, 0xd7, 0x59, 0x25, 0x50, 0x63, 0xaf, 0x10, 0x92, 0x29, 0x2b, 0xa0, 0xd4, 0xaa, 0x0b, 0xaa, 0x62, 0xbf, 0xda, 0xda, 0x67, 0xcf, 0x30, 0x6a, 0x59, 0x1f, 0x08, 0x59, 0xf6, 0xca, 0x23, 0x19, 0x19, 0x27, 0x49, 0xd7, 0x9d, 0x48, 0x83, 0x37, 0x3c, 0x45, 0xa7, 0x6e, 0x37, 0x6e, 0x38, 0x18, 0xd9, 0x7e, 0xd0, 0xdd, 0xee, 0xd7, 0x00, 0x30, 0x4c, 0x8b, 0x7e, 0x80, 0x54, 0x43, 0x4d, 0xe2, 0xcf, 0xce, 0x81, 0xe6, 0xda, 0x3b, 0xc1, 0x8e, 0xcf, 0x60, 0x5e, 0x0d, 0xbe, 0xfb, 0x04, 0x52, 0xc0, 0xe0, 0xfd, 0x35, 0x51, 0x32, 0x5e, 0xa7, 0xab, 0x01, 0x4e, 0x54, 0x20, 0xc8, 0xdf, 0x37, 0x35, 0x28, 0x32, 0x24, 0x2c, 0x04, 0x20, 0xdb, 0xdc, 0xcc, 0x86, 0xdb, 0x42, 0xb4, 0xda, 0xa7, 0xbd, 0x3e, 0xe4, 0x84, 0xf8, 0xd8, 0x4b, 0x2c, 0x43, }; static const unsigned char ecdh_brainpoolp512r1_4545_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4545_sharedsecret[] = { 0x5b, 0x5d, 0xbb, 0x97, 0x1e, 0xcb, 0xfa, 0x04, 0x45, 0xa1, 0x99, 0x95, 0xa0, 0x18, 0x63, 0xd7, 0x12, 0x00, 0xea, 0x23, 0xb4, 0xbd, 0xf5, 0xbe, 0xbf, 0xaa, 0x80, 0x93, 0x84, 0xba, 0xdb, 0x06, 0x2d, 0x22, 0x9a, 0x1f, 0xb3, 0x30, 0x23, 0xfe, 0x28, 0xfa, 0xd2, 0xe9, 0xdc, 0xb1, 0xe2, 0x28, 0x08, 0x5b, 0xae, 0x76, 0xb6, 0x28, 0x52, 0x5a, 0x10, 0x29, 0x07, 0xd7, 0xaa, 0x2f, 0x11, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4545 = { .name = "ecdh_brainpoolp512r1_4545", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4545_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4545_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4545_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2223 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4546 for ECDH, tcId is 2224 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4546_peerpubkey[] = { 0x57, 0x33, 0x54, 0xe9, 0x9b, 0x2e, 0x99, 0x97, 0x48, 0x55, 0x1b, 0x1c, 0x60, 0x9d, 0xc8, 0x37, 0x20, 0x86, 0x45, 0xf0, 0x5b, 0x1f, 0xdc, 0x1c, 0xa3, 0xef, 0xb5, 0x56, 0x5e, 0x4d, 0x86, 0xab, 0xe6, 0xcc, 0xde, 0x83, 0xce, 0xf6, 0xf9, 0xe6, 0xe2, 0x4b, 0xa5, 0x95, 0x53, 0xca, 0xff, 0xc1, 0x57, 0x14, 0x16, 0x0d, 0x76, 0x57, 0xb2, 0xbe, 0xa5, 0xdc, 0xcb, 0x5d, 0x34, 0x7f, 0x5e, 0x03, 0x6f, 0xa6, 0xa1, 0x32, 0x9e, 0x48, 0x09, 0x95, 0x48, 0x89, 0x7f, 0x66, 0x45, 0x44, 0x8a, 0x38, 0x9d, 0x96, 0x26, 0xd9, 0x2c, 0xde, 0x4a, 0xa3, 0x48, 0xd0, 0x45, 0x58, 0x55, 0xd2, 0x6d, 0x0d, 0xb0, 0x81, 0x0c, 0xf2, 0xd0, 0x20, 0xbd, 0xb3, 0x3d, 0x0d, 0xa8, 0x88, 0x19, 0xfc, 0x36, 0x90, 0x69, 0xd7, 0xd9, 0x68, 0x2f, 0xf1, 0xef, 0x83, 0xf7, 0x39, 0x65, 0x5b, 0xcd, 0xff, 0xb9, 0x1d, }; static const unsigned char ecdh_brainpoolp512r1_4546_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4546_sharedsecret[] = { 0x63, 0x98, 0x49, 0x64, 0xbd, 0x71, 0xbd, 0x27, 0x5d, 0x06, 0x1e, 0x43, 0x96, 0xb9, 0xf0, 0x45, 0x02, 0xc8, 0x73, 0x55, 0x54, 0x7d, 0x0f, 0x2a, 0x18, 0x2b, 0x31, 0xde, 0xc2, 0x64, 0xe3, 0x2f, 0x66, 0xe1, 0x28, 0x63, 0x31, 0x66, 0x09, 0x11, 0x92, 0x2d, 0x7a, 0x59, 0x19, 0x03, 0x6d, 0x7d, 0x65, 0xb7, 0x6d, 0x7d, 0x5f, 0x63, 0x55, 0x68, 0x9d, 0xee, 0xfb, 0x07, 0x44, 0x4e, 0x1c, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4546 = { .name = "ecdh_brainpoolp512r1_4546", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4546_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4546_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4546_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2224 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4547 for ECDH, tcId is 2225 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4547_peerpubkey[] = { 0xa4, 0xba, 0xfe, 0xf2, 0x7a, 0x4a, 0x2d, 0xfc, 0xb5, 0xc9, 0xad, 0xeb, 0xdb, 0xcb, 0xcf, 0x16, 0x5c, 0x09, 0xf2, 0x82, 0x4f, 0x56, 0x99, 0xc9, 0x4b, 0xa4, 0xe6, 0x08, 0x4f, 0x67, 0x70, 0x97, 0x1f, 0x61, 0x9d, 0x33, 0xe5, 0x1a, 0x72, 0x48, 0xa1, 0x16, 0x0c, 0x50, 0x9e, 0xf7, 0xa1, 0x44, 0x92, 0xc9, 0x79, 0x7b, 0x27, 0x96, 0x63, 0xcb, 0x22, 0x5a, 0x4e, 0xcf, 0x09, 0xc2, 0x8a, 0x5c, 0xa9, 0x1e, 0x31, 0x8b, 0x91, 0x01, 0x2d, 0x63, 0xdc, 0x23, 0xca, 0x00, 0x0e, 0xd2, 0x15, 0x5e, 0x0d, 0x34, 0x7d, 0x0f, 0x0b, 0x2a, 0x33, 0x14, 0x81, 0x98, 0x87, 0x00, 0x8f, 0x93, 0xf8, 0x5c, 0x79, 0xfa, 0x77, 0x0c, 0x82, 0xc9, 0x20, 0xc4, 0xc4, 0xcd, 0x28, 0x56, 0xc0, 0x3d, 0x27, 0x49, 0xca, 0x13, 0x2c, 0x35, 0x0c, 0xdd, 0x30, 0x3d, 0x0b, 0xb5, 0xdb, 0x0f, 0xe3, 0x73, 0xd9, 0x5f, }; static const unsigned char ecdh_brainpoolp512r1_4547_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4547_sharedsecret[] = { 0x0e, 0x0c, 0xb9, 0x5c, 0x1f, 0xdd, 0x38, 0xa4, 0xef, 0x7a, 0x8d, 0x86, 0x1f, 0x3a, 0xf5, 0x9c, 0x1f, 0x5b, 0xb2, 0x6f, 0xc1, 0x91, 0x3f, 0xc6, 0x2e, 0x07, 0x2d, 0xc2, 0xa7, 0x8c, 0x15, 0xbe, 0x30, 0xdf, 0x89, 0xa5, 0xc2, 0xaa, 0xc3, 0xa4, 0x36, 0x4a, 0xba, 0xdb, 0xda, 0xbc, 0x36, 0xf4, 0x56, 0x58, 0x61, 0xf2, 0xeb, 0x8e, 0x72, 0x3f, 0x43, 0xcb, 0x36, 0x3c, 0xd8, 0x97, 0xbb, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4547 = { .name = "ecdh_brainpoolp512r1_4547", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4547_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4547_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4547_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2225 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4548 for ECDH, tcId is 2226 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4548_peerpubkey[] = { 0x0c, 0x16, 0xde, 0x7a, 0xd2, 0x0f, 0x54, 0x59, 0xc9, 0x2d, 0x46, 0xcd, 0x3c, 0xc6, 0x94, 0xb5, 0x39, 0xb3, 0xa9, 0x11, 0x8a, 0x85, 0x49, 0x6a, 0x6a, 0xde, 0x42, 0xff, 0x83, 0x2a, 0x91, 0x94, 0xee, 0x79, 0xa4, 0x53, 0x79, 0x23, 0x3b, 0x31, 0x05, 0xd2, 0xb7, 0xdc, 0xfd, 0x31, 0xa3, 0x1c, 0x23, 0x84, 0x46, 0x28, 0x4f, 0x5c, 0x71, 0x59, 0x83, 0x68, 0x35, 0x3a, 0x66, 0x05, 0x14, 0x15, 0x59, 0xf0, 0xb6, 0x00, 0x5b, 0x42, 0x3c, 0x4c, 0x8f, 0xe2, 0x58, 0x8f, 0x30, 0x35, 0xdd, 0x4d, 0x87, 0x2a, 0xb4, 0x12, 0xc5, 0x1f, 0x8c, 0x1e, 0x0c, 0x97, 0xa4, 0xb2, 0xd7, 0xde, 0xb9, 0x0c, 0xe1, 0xce, 0xe4, 0xa7, 0x41, 0x58, 0x1c, 0x19, 0x29, 0x3c, 0x4f, 0x53, 0x76, 0x65, 0xa0, 0xb8, 0x53, 0x86, 0x13, 0xf0, 0x57, 0xb4, 0x4c, 0xd8, 0x86, 0x23, 0x21, 0x8b, 0x17, 0xc6, 0x68, 0xee, }; static const unsigned char ecdh_brainpoolp512r1_4548_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4548_sharedsecret[] = { 0x12, 0xaf, 0x21, 0x7a, 0x00, 0x42, 0x46, 0xd9, 0x7b, 0xc1, 0x13, 0x7e, 0x6e, 0x47, 0xb3, 0x48, 0x4d, 0xf5, 0x81, 0xc8, 0x6e, 0x8e, 0x26, 0xe8, 0x63, 0x80, 0x43, 0x9d, 0x8d, 0x01, 0xe5, 0x64, 0x67, 0x29, 0xd6, 0x78, 0xa8, 0x36, 0xa1, 0x76, 0xb3, 0xf4, 0xca, 0x08, 0xd6, 0x37, 0x26, 0x3a, 0x84, 0xac, 0x65, 0xd9, 0x05, 0xf3, 0x2b, 0xd4, 0x5a, 0x06, 0x18, 0x34, 0x17, 0x47, 0xb9, 0x80, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4548 = { .name = "ecdh_brainpoolp512r1_4548", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4548_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4548_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4548_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2226 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4549 for ECDH, tcId is 2227 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4549_peerpubkey[] = { 0x1d, 0xe0, 0x97, 0x9d, 0xbc, 0x8a, 0x51, 0xbc, 0x11, 0x02, 0x08, 0xec, 0xdf, 0xbc, 0xf7, 0x63, 0x47, 0x55, 0x17, 0xf4, 0xa0, 0xf7, 0x97, 0x5c, 0xf1, 0xce, 0x51, 0x9f, 0x0b, 0x80, 0x05, 0xe6, 0xc9, 0xba, 0xb4, 0xdc, 0x7c, 0x84, 0xfd, 0x03, 0x06, 0xe3, 0xcc, 0xfc, 0x15, 0x8d, 0xca, 0x58, 0x55, 0xd5, 0xdb, 0x1f, 0xfb, 0x7f, 0x55, 0x0d, 0x88, 0x95, 0xdb, 0x1f, 0x74, 0x30, 0xc6, 0x23, 0x84, 0x9a, 0xe3, 0x5f, 0x6b, 0xa0, 0xbf, 0x57, 0x2e, 0x48, 0x75, 0x3f, 0xcb, 0xe1, 0x03, 0x00, 0xca, 0x2c, 0xb0, 0xc6, 0x3e, 0x14, 0x52, 0x9d, 0x2d, 0x7b, 0x31, 0x0c, 0xd0, 0x31, 0x0c, 0x98, 0xd4, 0x0e, 0x26, 0xf0, 0xba, 0x50, 0x48, 0x9e, 0x3e, 0xee, 0x5b, 0xee, 0x5d, 0xb1, 0x80, 0xf5, 0xc4, 0xe1, 0xb8, 0x27, 0xc0, 0x42, 0x3b, 0xd0, 0x1f, 0x2d, 0xca, 0x6b, 0x7e, 0x5c, 0x9b, 0x73, }; static const unsigned char ecdh_brainpoolp512r1_4549_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4549_sharedsecret[] = { 0x6d, 0xc7, 0x29, 0x05, 0xef, 0x89, 0xc1, 0xb2, 0x60, 0x2b, 0x04, 0x90, 0xac, 0xad, 0xdf, 0xc0, 0x3a, 0x44, 0x69, 0x78, 0x3a, 0x19, 0x86, 0xd1, 0x63, 0x19, 0x7b, 0x60, 0xa1, 0xdd, 0xa4, 0x92, 0xe3, 0xf0, 0xc3, 0xc3, 0x69, 0xed, 0x36, 0x06, 0xc4, 0x43, 0x46, 0xee, 0x6b, 0x1c, 0x90, 0x36, 0x9d, 0x49, 0x95, 0xab, 0xb4, 0xff, 0xb0, 0x44, 0xbd, 0xa1, 0x9b, 0xad, 0xb3, 0x58, 0xe6, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4549 = { .name = "ecdh_brainpoolp512r1_4549", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4549_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4549_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4549_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2227 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4550 for ECDH, tcId is 2228 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4550_peerpubkey[] = { 0x78, 0x97, 0xbd, 0xd3, 0xd5, 0xee, 0x9f, 0x45, 0xfd, 0xb9, 0x35, 0xaa, 0x56, 0x5f, 0x53, 0x37, 0x3e, 0x28, 0x6f, 0xeb, 0x78, 0xbd, 0xbc, 0xe0, 0x67, 0x06, 0x4f, 0x21, 0x24, 0xe1, 0xa7, 0x61, 0xd2, 0x13, 0x33, 0x15, 0x49, 0x7a, 0x96, 0x4c, 0x6e, 0x9f, 0x78, 0x5e, 0x61, 0x40, 0xed, 0x07, 0xe6, 0x35, 0x02, 0xd8, 0xb8, 0x64, 0xe2, 0xb5, 0xe7, 0x06, 0xae, 0xe6, 0x78, 0xf1, 0x2f, 0xbd, 0x62, 0x7e, 0x3a, 0x94, 0xf6, 0x3a, 0x62, 0x4c, 0x48, 0x6c, 0xb9, 0xde, 0x71, 0x1a, 0x9d, 0xdb, 0xbe, 0x5b, 0xf8, 0x7a, 0xb1, 0x5b, 0x6c, 0xfd, 0x3e, 0x4b, 0x45, 0x03, 0x76, 0x86, 0xd1, 0xd2, 0x0e, 0x0e, 0xed, 0xa2, 0xa0, 0xdf, 0xf9, 0x35, 0x36, 0x06, 0x06, 0x06, 0x2b, 0xbc, 0x8c, 0xc1, 0xa6, 0xef, 0x28, 0x04, 0x10, 0x4f, 0x12, 0x0b, 0xc7, 0x5f, 0x44, 0x93, 0x58, 0x3f, 0x58, 0x30, }; static const unsigned char ecdh_brainpoolp512r1_4550_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4550_sharedsecret[] = { 0x26, 0xd4, 0x5c, 0x46, 0x42, 0x0a, 0x79, 0x17, 0xb9, 0x95, 0x1a, 0x11, 0xdf, 0xaa, 0x58, 0xb6, 0x27, 0x6d, 0xee, 0x72, 0x12, 0xe0, 0xba, 0x9f, 0xa6, 0x8e, 0x04, 0xe3, 0xde, 0x9c, 0x4e, 0xcd, 0x88, 0x45, 0xe8, 0x77, 0x04, 0xb0, 0xf3, 0x39, 0x37, 0xd3, 0x7e, 0xba, 0x94, 0x5b, 0xa6, 0x98, 0x07, 0x84, 0x2e, 0xc6, 0xe1, 0x3c, 0x79, 0xcf, 0x9a, 0xde, 0x94, 0x48, 0x61, 0x85, 0x76, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4550 = { .name = "ecdh_brainpoolp512r1_4550", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4550_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4550_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4550_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2228 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4551 for ECDH, tcId is 2229 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4551_peerpubkey[] = { 0x68, 0x11, 0xdc, 0xc6, 0xa9, 0xa6, 0xa4, 0x72, 0x86, 0x47, 0x1b, 0x70, 0x60, 0x97, 0x70, 0xd8, 0x56, 0x04, 0x3c, 0xa9, 0xf0, 0x65, 0x14, 0x84, 0xc5, 0x6b, 0xcd, 0xa2, 0x1c, 0x73, 0x9a, 0x1c, 0x90, 0x50, 0x8b, 0x3a, 0x07, 0x32, 0x7c, 0x37, 0x60, 0x30, 0xba, 0xea, 0xb5, 0xf8, 0x81, 0xd4, 0x29, 0x0a, 0x2b, 0xb2, 0xe6, 0x90, 0xfd, 0x1d, 0x07, 0x27, 0x43, 0x90, 0xe9, 0x0c, 0x09, 0xe2, 0x9c, 0x77, 0xcc, 0xd2, 0xb6, 0xae, 0x56, 0x4b, 0x87, 0x63, 0x81, 0x3c, 0x97, 0xff, 0xa4, 0x73, 0xf2, 0x58, 0x9f, 0x57, 0x4c, 0x26, 0x0e, 0x6f, 0x76, 0x89, 0xc0, 0x14, 0x03, 0x4e, 0xbf, 0x35, 0xef, 0x18, 0xdf, 0x2e, 0x42, 0xf5, 0xd5, 0x34, 0x57, 0xc5, 0x0a, 0x68, 0xa6, 0x56, 0x16, 0x95, 0xd4, 0xe8, 0xd8, 0x45, 0xc3, 0x05, 0xb8, 0xd1, 0x71, 0xf8, 0x26, 0x68, 0x96, 0x34, 0x68, 0x88, }; static const unsigned char ecdh_brainpoolp512r1_4551_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4551_sharedsecret[] = { 0x30, 0x75, 0x01, 0x1d, 0x90, 0x96, 0x07, 0x60, 0xac, 0x14, 0x88, 0x18, 0x1e, 0xea, 0xec, 0x53, 0xfb, 0x39, 0xd4, 0xe0, 0xf9, 0x7a, 0x8d, 0x53, 0xcc, 0x65, 0x47, 0x7b, 0x41, 0x54, 0x55, 0xce, 0xaa, 0xdf, 0x56, 0xac, 0x14, 0x84, 0xd7, 0xa9, 0x6d, 0xb1, 0x6d, 0x34, 0x0f, 0xd6, 0x36, 0x46, 0xf1, 0x7b, 0x43, 0x88, 0xbf, 0xd2, 0xa0, 0x2a, 0x46, 0x88, 0x9b, 0x56, 0xbe, 0xfc, 0x2f, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4551 = { .name = "ecdh_brainpoolp512r1_4551", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4551_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4551_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4551_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2229 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4552 for ECDH, tcId is 2230 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4552_peerpubkey[] = { 0x62, 0x15, 0x92, 0x66, 0x0c, 0x1d, 0x90, 0x6d, 0x18, 0x2d, 0x5d, 0xe7, 0x8c, 0xd9, 0x11, 0x8a, 0xb3, 0x31, 0x9e, 0xef, 0xb4, 0xf3, 0xc2, 0xa8, 0x4b, 0x89, 0x38, 0xde, 0x08, 0x1f, 0x1f, 0x5f, 0x63, 0x64, 0x32, 0x18, 0xd9, 0xb9, 0xda, 0x71, 0x9a, 0xea, 0x02, 0x5f, 0x58, 0x97, 0x55, 0xfb, 0xe8, 0x7d, 0x78, 0x56, 0x3e, 0x62, 0x4a, 0x06, 0x74, 0xd9, 0x69, 0x55, 0x58, 0x57, 0x83, 0xeb, 0x51, 0xf4, 0x09, 0x4a, 0x86, 0x5b, 0x6d, 0x46, 0x1c, 0x06, 0x7e, 0x14, 0x7e, 0x46, 0x21, 0xb5, 0x27, 0xe0, 0x4d, 0x39, 0x7c, 0xdd, 0xe5, 0xc2, 0x53, 0x49, 0x73, 0x6c, 0xa6, 0x5a, 0x29, 0xd7, 0xdc, 0xd8, 0x93, 0x25, 0x9a, 0x52, 0xf3, 0x5a, 0xb9, 0x4f, 0xc4, 0x88, 0x8b, 0xbb, 0x7e, 0xc6, 0xba, 0x00, 0xd7, 0x6c, 0xcd, 0xc4, 0xa5, 0x7a, 0x96, 0xed, 0x77, 0x99, 0x88, 0x0d, 0x38, 0x18, }; static const unsigned char ecdh_brainpoolp512r1_4552_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4552_sharedsecret[] = { 0x76, 0xac, 0x90, 0x11, 0x93, 0x28, 0x41, 0x4f, 0xe6, 0x28, 0xc1, 0x0a, 0xb9, 0x50, 0xb0, 0x14, 0xa0, 0xcd, 0xd3, 0x4e, 0xae, 0xf5, 0x2f, 0x5d, 0x98, 0x15, 0x11, 0x11, 0x80, 0xbc, 0x9c, 0x82, 0xc3, 0xef, 0x25, 0x8f, 0x63, 0x14, 0xc7, 0xc8, 0x7f, 0x38, 0x7c, 0x3f, 0x55, 0xd3, 0x35, 0x5f, 0xfc, 0x95, 0x26, 0x54, 0xaf, 0xcf, 0x81, 0x71, 0x5d, 0xe2, 0xc9, 0x2d, 0xaf, 0x22, 0x53, 0x16, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4552 = { .name = "ecdh_brainpoolp512r1_4552", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4552_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4552_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4552_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2230 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4553 for ECDH, tcId is 2231 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4553_peerpubkey[] = { 0x1f, 0x35, 0x03, 0x29, 0xae, 0x37, 0xad, 0xc4, 0x01, 0x38, 0x80, 0xd6, 0x1a, 0xff, 0x90, 0x2d, 0xc5, 0xc2, 0x46, 0x86, 0x2f, 0x08, 0x9b, 0xcd, 0xfb, 0xa6, 0xc5, 0x97, 0x48, 0x49, 0xde, 0x08, 0x65, 0x52, 0x9b, 0x88, 0xdf, 0x43, 0x7b, 0x6a, 0xc1, 0xf4, 0xb0, 0xa6, 0xca, 0x58, 0x7d, 0x21, 0x9f, 0x45, 0x8d, 0x51, 0x65, 0xaf, 0xfa, 0xe7, 0xc8, 0x49, 0xf2, 0x49, 0x28, 0xd1, 0xdd, 0xdb, 0x69, 0x22, 0x16, 0x14, 0x1b, 0xee, 0xcc, 0xb5, 0x98, 0x34, 0x81, 0x16, 0x26, 0x8a, 0x04, 0xf5, 0xf3, 0xfd, 0x9f, 0x74, 0x3b, 0xab, 0x57, 0x3a, 0x03, 0x87, 0xff, 0x2e, 0xaf, 0xf0, 0x59, 0xc8, 0x45, 0x13, 0x51, 0xbd, 0xbb, 0xb9, 0x10, 0xc8, 0xe6, 0x3f, 0x4d, 0x69, 0x5f, 0x2e, 0xd9, 0x27, 0x3c, 0x71, 0xbd, 0xcf, 0x3f, 0x22, 0xcd, 0xb9, 0xc0, 0xa9, 0xd3, 0xbd, 0x66, 0x72, 0xcc, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_4553_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4553_sharedsecret[] = { 0x56, 0x4a, 0xc5, 0xc9, 0x1a, 0x0f, 0xf4, 0x92, 0x22, 0xa9, 0x56, 0xcd, 0xc5, 0xb7, 0xb9, 0xc7, 0xeb, 0x5e, 0x9a, 0xaf, 0x01, 0x91, 0x16, 0x96, 0xd6, 0xad, 0x01, 0x65, 0x58, 0xaa, 0xad, 0xa9, 0xab, 0xf8, 0x62, 0x08, 0xb0, 0xf8, 0x09, 0x5e, 0xf8, 0x18, 0xac, 0xe8, 0x48, 0x9f, 0xa9, 0x47, 0x59, 0x34, 0x3c, 0xfa, 0xb6, 0x68, 0x64, 0x72, 0x41, 0xfa, 0xe5, 0x40, 0xbe, 0xb1, 0x41, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4553 = { .name = "ecdh_brainpoolp512r1_4553", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4553_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4553_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4553_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2231 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4554 for ECDH, tcId is 2232 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4554_peerpubkey[] = { 0x9a, 0x0a, 0x8a, 0x91, 0x77, 0x65, 0x8c, 0x5b, 0x18, 0xc1, 0x92, 0xff, 0x59, 0x6b, 0xa4, 0xe9, 0x9c, 0xc6, 0x84, 0x06, 0x59, 0xb1, 0x68, 0x14, 0x53, 0xbf, 0x85, 0xd6, 0xa2, 0x98, 0x35, 0x1b, 0x4f, 0xd8, 0x01, 0x0a, 0x8b, 0x25, 0x77, 0x37, 0x5c, 0x4c, 0xc9, 0x0c, 0xc8, 0xee, 0x60, 0xc2, 0x2c, 0x7c, 0x1a, 0x92, 0xc9, 0x0a, 0xe3, 0xad, 0x88, 0xc0, 0x3c, 0xcc, 0xe1, 0xfa, 0xac, 0x68, 0x9f, 0x00, 0x54, 0xfa, 0x3d, 0x0b, 0x5c, 0xb5, 0x54, 0x01, 0xe8, 0xfa, 0x07, 0x2c, 0xd9, 0x66, 0x12, 0xb1, 0xb6, 0x5d, 0xfa, 0x65, 0x65, 0x75, 0x01, 0xd7, 0x70, 0x3c, 0x9a, 0x23, 0x5c, 0x95, 0xc5, 0x8a, 0xb8, 0xe1, 0x0a, 0x6d, 0x2f, 0x90, 0xee, 0x83, 0x3f, 0xa8, 0xe3, 0xa1, 0xe5, 0xef, 0x8a, 0xb0, 0x4f, 0x52, 0x03, 0xbf, 0xce, 0xb5, 0xae, 0x7c, 0xc8, 0xc9, 0x5c, 0x6a, 0xde, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_4554_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4554_sharedsecret[] = { 0x78, 0xa8, 0x1c, 0x3f, 0x3c, 0xf0, 0x47, 0x89, 0x24, 0xc2, 0xba, 0xe2, 0x71, 0x79, 0x93, 0xfa, 0x16, 0xe4, 0x22, 0xbf, 0x0f, 0xeb, 0xff, 0x38, 0x9d, 0x5a, 0x0f, 0x52, 0x1d, 0xb3, 0x05, 0x0d, 0xc3, 0x44, 0xf9, 0x13, 0x21, 0x7b, 0x6d, 0x44, 0x58, 0x4e, 0xc3, 0x2e, 0x6e, 0x06, 0xe1, 0x5b, 0xb8, 0xff, 0xec, 0x5a, 0xac, 0x07, 0x30, 0x7f, 0x9d, 0x3d, 0xb5, 0x86, 0xde, 0x2e, 0x23, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4554 = { .name = "ecdh_brainpoolp512r1_4554", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4554_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4554_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4554_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2232 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4555 for ECDH, tcId is 2233 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4555_peerpubkey[] = { 0x46, 0x85, 0x55, 0x5a, 0x52, 0x60, 0xec, 0x3a, 0x4c, 0x7b, 0x0a, 0x2a, 0x40, 0xad, 0x39, 0x41, 0x36, 0x36, 0xaa, 0xb7, 0x0b, 0x91, 0x44, 0x2f, 0xed, 0xbc, 0xc7, 0x88, 0x59, 0x49, 0x62, 0xd3, 0xe5, 0xd4, 0x4c, 0xfa, 0x94, 0x7a, 0xf3, 0x58, 0xc0, 0x0e, 0x29, 0xa1, 0x19, 0x56, 0x62, 0x6c, 0x2d, 0xef, 0x4a, 0x20, 0xb3, 0x3a, 0xc6, 0x84, 0x78, 0x26, 0x60, 0x4a, 0xd9, 0xef, 0x87, 0x88, 0x57, 0x98, 0xe6, 0xcd, 0xdf, 0xce, 0xec, 0x79, 0x71, 0x49, 0x92, 0x51, 0x12, 0xc2, 0xf0, 0x07, 0x93, 0xf6, 0x63, 0x29, 0x40, 0x83, 0xcc, 0x19, 0xb8, 0x94, 0x20, 0xe3, 0xaa, 0x8d, 0x68, 0xe1, 0x1d, 0x14, 0x40, 0x1a, 0x06, 0xfd, 0x75, 0x8a, 0x9a, 0x6d, 0x67, 0xc8, 0x49, 0xea, 0x2c, 0x59, 0x1e, 0xaf, 0x64, 0x83, 0xec, 0x8e, 0xc9, 0xca, 0x1e, 0xa1, 0xf5, 0x3d, 0xcb, 0x2a, 0x4d, 0xdd, }; static const unsigned char ecdh_brainpoolp512r1_4555_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4555_sharedsecret[] = { 0x28, 0xa6, 0xb5, 0x94, 0x4f, 0xba, 0xcb, 0x59, 0x31, 0xa8, 0xdc, 0x2d, 0x58, 0x68, 0xb7, 0x12, 0xef, 0xfa, 0x30, 0xaf, 0x77, 0x51, 0x23, 0xe8, 0x87, 0xbb, 0xcb, 0x6e, 0xd0, 0x0c, 0xd1, 0xfb, 0xbd, 0xbe, 0x81, 0xcc, 0x48, 0x9f, 0x5d, 0x34, 0x2d, 0xef, 0xff, 0x21, 0xdb, 0x34, 0xbe, 0xa2, 0xd0, 0x2b, 0xad, 0xf1, 0xa0, 0x15, 0x5f, 0xd0, 0xa3, 0xa4, 0xff, 0xa4, 0x76, 0x8b, 0x5a, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4555 = { .name = "ecdh_brainpoolp512r1_4555", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4555_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4555_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4555_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2233 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4556 for ECDH, tcId is 2234 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4556_peerpubkey[] = { 0x92, 0xc3, 0x7b, 0xd0, 0xa0, 0xf6, 0x65, 0x1d, 0x3a, 0xa5, 0x2b, 0xdd, 0x41, 0x45, 0x74, 0xc2, 0xe2, 0xd1, 0x29, 0xdf, 0x5c, 0xbf, 0x29, 0x80, 0xb2, 0x4b, 0x4d, 0xda, 0x51, 0x2e, 0x94, 0x75, 0xc9, 0x9b, 0x0e, 0x36, 0x45, 0x05, 0x03, 0xeb, 0xc9, 0x2c, 0x31, 0xec, 0xd6, 0x03, 0x1b, 0x8a, 0xcb, 0x6b, 0xb9, 0xa4, 0x73, 0x16, 0x72, 0x21, 0xbd, 0x07, 0x71, 0x2e, 0x8e, 0x2d, 0x27, 0x19, 0x27, 0xdf, 0x0a, 0x73, 0xd9, 0xef, 0x4a, 0x34, 0x79, 0x6b, 0x84, 0x62, 0x4b, 0x20, 0x27, 0xac, 0xe5, 0x57, 0x79, 0x80, 0x1d, 0x48, 0x1d, 0x41, 0xab, 0xcc, 0x47, 0xc2, 0x20, 0xf6, 0x83, 0x6d, 0x77, 0xe7, 0x19, 0xaa, 0xeb, 0x85, 0x58, 0xc3, 0xed, 0xc6, 0xb6, 0xdb, 0x95, 0x16, 0x48, 0x6d, 0x48, 0xe9, 0x9f, 0x8b, 0x3c, 0x86, 0x58, 0xf8, 0xaa, 0x77, 0x9f, 0xe2, 0x54, 0x97, 0xb0, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_4556_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4556_sharedsecret[] = { 0x72, 0xa0, 0x53, 0x29, 0xdd, 0x20, 0x5d, 0x0b, 0x46, 0xd9, 0xd3, 0xd1, 0x95, 0x8a, 0x24, 0xfd, 0x50, 0x80, 0xe7, 0x3c, 0x85, 0x58, 0xb7, 0x87, 0xdb, 0x78, 0x17, 0x0c, 0xd8, 0xbc, 0xc7, 0xd3, 0x0a, 0xf0, 0xfd, 0xad, 0xd1, 0x28, 0x14, 0x71, 0x92, 0x85, 0x6f, 0xbd, 0x5e, 0x98, 0x65, 0x7d, 0x04, 0x34, 0x9b, 0xfd, 0xd7, 0x68, 0x49, 0xbc, 0x71, 0x4f, 0x2f, 0xb5, 0xa3, 0x7c, 0x17, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4556 = { .name = "ecdh_brainpoolp512r1_4556", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4556_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4556_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4556_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in left to right addition chain, tcId is 2234 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4557 for ECDH, tcId is 2235 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4557_peerpubkey[] = { 0x49, 0x9f, 0x38, 0x69, 0x20, 0x54, 0x15, 0xd7, 0x81, 0x4d, 0xf6, 0x49, 0x4d, 0x72, 0x7a, 0x49, 0x9e, 0xba, 0xd0, 0x02, 0x8b, 0xe4, 0xc1, 0xdd, 0xcc, 0xcd, 0x66, 0x54, 0x71, 0x35, 0xab, 0x6c, 0x42, 0x52, 0x16, 0x4a, 0xf2, 0x74, 0x27, 0x23, 0xc4, 0x43, 0xac, 0x22, 0x61, 0x91, 0xf1, 0x84, 0x4b, 0xe9, 0x92, 0xc0, 0xe1, 0x4f, 0x0d, 0x72, 0x37, 0x31, 0x08, 0x5c, 0x59, 0xda, 0xd9, 0x45, 0x83, 0x38, 0x75, 0x97, 0x7f, 0x3e, 0xbd, 0x80, 0xed, 0xf9, 0x55, 0xf0, 0x35, 0x10, 0x49, 0x5b, 0xa5, 0x4e, 0xc1, 0x27, 0x86, 0xe5, 0xc6, 0x92, 0x02, 0xe0, 0xbc, 0x48, 0xf1, 0x23, 0x3f, 0xfe, 0x1f, 0xb0, 0x03, 0xaf, 0x6b, 0xda, 0x4d, 0x4c, 0xa0, 0x87, 0xeb, 0x6a, 0x1b, 0x10, 0xb9, 0xc2, 0x4a, 0xf7, 0xbe, 0xd3, 0xce, 0xd6, 0x38, 0x31, 0xff, 0xa1, 0xcc, 0x21, 0xb7, 0xda, 0x84, 0x06, }; static const unsigned char ecdh_brainpoolp512r1_4557_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4557_sharedsecret[] = { 0x91, 0xac, 0x9b, 0x32, 0x28, 0xc6, 0x30, 0x2a, 0x66, 0xda, 0x57, 0xad, 0xfb, 0x9b, 0x0f, 0xdb, 0x3f, 0x29, 0x3f, 0x3d, 0xb3, 0x56, 0xb3, 0x2d, 0x83, 0xc3, 0xe8, 0x99, 0xb9, 0x6d, 0xe4, 0x12, 0x1e, 0x45, 0x7d, 0xb2, 0x6f, 0xfc, 0xbd, 0xa1, 0xb1, 0xd2, 0x51, 0xd7, 0xda, 0x99, 0xfd, 0x3e, 0xff, 0xf7, 0xaa, 0x2c, 0x34, 0xa1, 0xaa, 0x34, 0x51, 0xf5, 0xcf, 0xc9, 0x32, 0x8c, 0x2c, 0x6b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4557 = { .name = "ecdh_brainpoolp512r1_4557", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4557_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4557_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4557_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2235 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4558 for ECDH, tcId is 2236 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4558_peerpubkey[] = { 0x9e, 0xe1, 0x0b, 0xd9, 0xfd, 0xac, 0x55, 0x59, 0xc6, 0xea, 0x9d, 0x86, 0x06, 0xf6, 0xc1, 0x41, 0x86, 0x16, 0x57, 0x56, 0xd9, 0x0b, 0x96, 0x8a, 0x99, 0x2f, 0x49, 0xb0, 0x49, 0x45, 0x3b, 0x25, 0xe1, 0x2c, 0x2f, 0x7c, 0x8d, 0xe5, 0x78, 0x14, 0xb3, 0xb6, 0x02, 0xe4, 0x67, 0xf7, 0xec, 0x01, 0x8b, 0x5d, 0xb7, 0xe5, 0xff, 0x89, 0x6f, 0xe8, 0x67, 0x4c, 0xdd, 0x7f, 0xe4, 0x91, 0xab, 0xa9, 0x76, 0xa4, 0x81, 0x41, 0xf9, 0x36, 0xfb, 0xda, 0xff, 0x64, 0x3d, 0x34, 0x32, 0x64, 0x06, 0xe8, 0x2d, 0x30, 0x0e, 0x84, 0xb1, 0x36, 0x8c, 0x71, 0x8d, 0x53, 0x95, 0x7e, 0x27, 0xe6, 0xb7, 0x7b, 0xde, 0xc9, 0x10, 0xa1, 0xd6, 0x89, 0x47, 0x5b, 0xe3, 0x82, 0xec, 0xe6, 0x54, 0x1c, 0x60, 0x6f, 0x87, 0x1f, 0x1d, 0x79, 0x2b, 0x23, 0x52, 0xb0, 0x2a, 0xc1, 0x74, 0x36, 0xe9, 0xb3, 0xd6, 0x1b, }; static const unsigned char ecdh_brainpoolp512r1_4558_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4558_sharedsecret[] = { 0x44, 0xdb, 0xa3, 0x20, 0x26, 0x7e, 0x28, 0x48, 0xb0, 0xc8, 0xde, 0xa9, 0xd9, 0x79, 0xba, 0xea, 0x3e, 0xa6, 0xfe, 0x59, 0xd1, 0x87, 0x6f, 0x53, 0xff, 0xb8, 0xa7, 0x28, 0x1e, 0x91, 0x49, 0xc2, 0x7b, 0x69, 0x0e, 0xfd, 0x24, 0x96, 0x89, 0xda, 0xb1, 0x9b, 0xfe, 0x86, 0x93, 0x2c, 0x19, 0x70, 0xd1, 0x08, 0x54, 0x29, 0x97, 0x04, 0xe7, 0xe7, 0xa7, 0xe1, 0x16, 0x20, 0xd5, 0xae, 0x7d, 0x52, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4558 = { .name = "ecdh_brainpoolp512r1_4558", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4558_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4558_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4558_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2236 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4559 for ECDH, tcId is 2237 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4559_peerpubkey[] = { 0x1e, 0xd6, 0x36, 0xa9, 0x68, 0x74, 0x9c, 0x68, 0x20, 0xea, 0x48, 0x5a, 0xb3, 0xbe, 0x73, 0x70, 0x32, 0x2b, 0x1f, 0x8b, 0xd3, 0xbe, 0xde, 0x14, 0xc8, 0x75, 0x64, 0x27, 0x03, 0xf6, 0x3d, 0x4d, 0x9e, 0x06, 0xf0, 0x53, 0x20, 0x09, 0xa8, 0xe2, 0x45, 0xd1, 0x45, 0xfd, 0x2f, 0xae, 0xa3, 0xf2, 0x2b, 0x27, 0x99, 0x37, 0x75, 0x94, 0x6a, 0x63, 0xdb, 0xc5, 0x6b, 0x7d, 0xff, 0xfd, 0xcd, 0x97, 0x91, 0x7d, 0xf7, 0x11, 0xe7, 0x49, 0xfe, 0x22, 0xb6, 0x45, 0xc1, 0x66, 0xd9, 0x1a, 0x28, 0x80, 0x12, 0x58, 0xfa, 0x45, 0x6f, 0x6f, 0xb1, 0xf7, 0xbd, 0xc0, 0x92, 0xe1, 0x64, 0x14, 0x64, 0xe2, 0x15, 0x2a, 0xf4, 0x0a, 0x43, 0x2f, 0x3d, 0xc1, 0x40, 0x24, 0x2a, 0x7a, 0xca, 0xa6, 0x1a, 0x4a, 0x1f, 0xb0, 0xe8, 0x40, 0xfa, 0x17, 0xc8, 0x26, 0xd3, 0x79, 0x39, 0xa0, 0x2c, 0x77, 0xf1, 0x21, }; static const unsigned char ecdh_brainpoolp512r1_4559_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4559_sharedsecret[] = { 0x10, 0xf2, 0x8c, 0x90, 0x2d, 0x0f, 0x64, 0x10, 0x11, 0x1d, 0x8a, 0x9d, 0x2c, 0x3e, 0x83, 0xbd, 0xe0, 0x99, 0xe6, 0x3b, 0x67, 0xb5, 0x5a, 0x57, 0xd6, 0x39, 0x55, 0x63, 0x0d, 0xf7, 0x9c, 0x18, 0xc8, 0x8c, 0x6c, 0xff, 0x7d, 0x60, 0xd1, 0xfb, 0xed, 0x3d, 0xa8, 0x3f, 0xa5, 0xf5, 0xe9, 0xcb, 0x0a, 0x07, 0x75, 0xf4, 0x7f, 0xb6, 0x10, 0x8c, 0xd0, 0x57, 0x7b, 0xb0, 0xb2, 0xa0, 0xed, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4559 = { .name = "ecdh_brainpoolp512r1_4559", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4559_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4559_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4559_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2237 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4560 for ECDH, tcId is 2238 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4560_peerpubkey[] = { 0xa5, 0x02, 0x4d, 0x95, 0x8e, 0x89, 0x88, 0x09, 0xd1, 0xf3, 0x96, 0xfb, 0xf5, 0x5d, 0x09, 0x30, 0xec, 0x0a, 0xa1, 0x7f, 0xd7, 0xf2, 0xba, 0x42, 0xc1, 0x76, 0xbc, 0x33, 0x0a, 0x2d, 0x17, 0x79, 0xcb, 0x64, 0x22, 0x74, 0x13, 0x54, 0x68, 0x3f, 0x8f, 0xec, 0x4a, 0xed, 0x2a, 0x3a, 0x59, 0x5f, 0xe2, 0x99, 0xdc, 0xad, 0x75, 0xb5, 0x51, 0x6b, 0x0d, 0xf8, 0x54, 0x71, 0x96, 0x39, 0xa2, 0x51, 0x94, 0x7d, 0x0a, 0xd6, 0x68, 0x86, 0x13, 0x83, 0xc9, 0x33, 0xdb, 0xf9, 0xca, 0x3c, 0xa3, 0x58, 0x51, 0xaf, 0x68, 0xb7, 0xe4, 0xb9, 0x8d, 0x33, 0xad, 0x24, 0xd5, 0x42, 0x51, 0x92, 0x35, 0x7f, 0x8e, 0xdf, 0xc0, 0x54, 0xda, 0x34, 0xf9, 0xd3, 0xda, 0x7a, 0xb8, 0xd5, 0x12, 0x0c, 0xaa, 0x9d, 0x12, 0x5d, 0x45, 0x96, 0x72, 0xff, 0x49, 0xa7, 0x19, 0x8a, 0x27, 0x21, 0x14, 0xef, 0xd7, 0x03, }; static const unsigned char ecdh_brainpoolp512r1_4560_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4560_sharedsecret[] = { 0x88, 0x42, 0x85, 0x3b, 0x17, 0x60, 0xdc, 0x13, 0x50, 0x10, 0xa3, 0xeb, 0x55, 0x07, 0x3f, 0xac, 0xc5, 0x31, 0x0b, 0x58, 0xcb, 0x86, 0xe3, 0xe8, 0x4c, 0xcd, 0x01, 0xe8, 0x19, 0x88, 0x16, 0x76, 0xd9, 0xc1, 0x6f, 0x77, 0xc1, 0x88, 0xb4, 0x7c, 0xa6, 0xc9, 0x7e, 0x74, 0xb8, 0x9b, 0xb4, 0x3c, 0x5a, 0xed, 0xa6, 0xf0, 0x92, 0x44, 0xc3, 0xe8, 0x5f, 0x0e, 0x21, 0x0f, 0xee, 0x5e, 0xc6, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4560 = { .name = "ecdh_brainpoolp512r1_4560", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4560_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4560_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4560_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2238 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4561 for ECDH, tcId is 2239 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4561_peerpubkey[] = { 0xaa, 0x8c, 0x20, 0xa5, 0x44, 0xeb, 0x9e, 0x78, 0xe2, 0x0b, 0x79, 0x6c, 0x8f, 0x6e, 0x64, 0x86, 0x18, 0xc5, 0xd0, 0x66, 0x10, 0xc1, 0x71, 0x0d, 0x3c, 0x2b, 0x07, 0x6b, 0x76, 0x4a, 0xf5, 0x30, 0xfa, 0x2f, 0x49, 0x9c, 0xb4, 0x36, 0x49, 0x8b, 0xce, 0x92, 0xb1, 0x26, 0x5d, 0x60, 0x97, 0x3f, 0x1c, 0x95, 0x40, 0x62, 0x82, 0xdb, 0x5c, 0x06, 0x37, 0x21, 0x0a, 0x21, 0xd5, 0x64, 0xf7, 0x4a, 0x31, 0x43, 0x7c, 0x9c, 0x0a, 0xd3, 0x76, 0x31, 0xe9, 0xa4, 0x1c, 0x22, 0xc0, 0xef, 0x77, 0xa9, 0x70, 0xa2, 0xa1, 0xda, 0xb5, 0x25, 0xcd, 0x18, 0xd7, 0x11, 0x1b, 0xe3, 0x6b, 0x9d, 0xf4, 0xe6, 0x4b, 0xc3, 0xda, 0x05, 0x5b, 0x9b, 0x3d, 0xd2, 0x7a, 0xf5, 0x15, 0xf5, 0x76, 0x9d, 0xce, 0xad, 0x32, 0xb2, 0xa5, 0xea, 0x50, 0xf2, 0x00, 0x48, 0x66, 0x2d, 0xdf, 0x50, 0x27, 0x57, 0xe7, 0xb2, }; static const unsigned char ecdh_brainpoolp512r1_4561_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4561_sharedsecret[] = { 0x83, 0x88, 0xfe, 0xd4, 0x8b, 0xf8, 0x8d, 0x4a, 0x2c, 0x36, 0x20, 0xff, 0x4d, 0x86, 0x62, 0x5d, 0xe5, 0x1e, 0xb4, 0x7f, 0x0a, 0x2b, 0x09, 0x4c, 0xb1, 0xcc, 0x4a, 0x6d, 0x7d, 0x7f, 0xf1, 0x26, 0x38, 0x39, 0xd2, 0xb7, 0x48, 0xf7, 0xaf, 0x54, 0x19, 0x24, 0x99, 0x34, 0xf4, 0xe5, 0x1c, 0xe3, 0xfc, 0x14, 0x67, 0x5b, 0xab, 0x39, 0xb0, 0xd9, 0x08, 0x95, 0x67, 0x93, 0x44, 0xec, 0xae, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4561 = { .name = "ecdh_brainpoolp512r1_4561", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4561_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4561_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4561_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2239 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4562 for ECDH, tcId is 2240 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4562_peerpubkey[] = { 0x3b, 0x23, 0x61, 0x00, 0xc2, 0xf2, 0x8e, 0xbb, 0x75, 0x6d, 0xaa, 0x51, 0xc4, 0x2a, 0x26, 0x57, 0xf3, 0xcd, 0xc3, 0xff, 0x5f, 0xdb, 0xf3, 0x40, 0x8e, 0x8c, 0xea, 0x33, 0xd7, 0x62, 0x29, 0x2f, 0x70, 0xc4, 0xbf, 0x7f, 0x77, 0x4e, 0xc6, 0xcf, 0x63, 0xb0, 0xbc, 0xfa, 0xc2, 0xa0, 0xfe, 0x10, 0x93, 0x7d, 0xb8, 0xf6, 0x7c, 0xea, 0x84, 0x8a, 0x2d, 0x4b, 0x25, 0x11, 0xe4, 0xd2, 0x1c, 0xf8, 0x4b, 0x74, 0x39, 0x5b, 0x1b, 0xf1, 0x32, 0xda, 0xfe, 0x78, 0xa9, 0x37, 0xaf, 0xc1, 0x83, 0x0e, 0x86, 0x1e, 0xb0, 0x31, 0xa2, 0x79, 0x2e, 0x91, 0x75, 0x77, 0x9c, 0xaf, 0x02, 0x93, 0x10, 0x81, 0x7f, 0x96, 0xa9, 0x9d, 0x55, 0x30, 0xb0, 0x00, 0x3d, 0x3c, 0xb3, 0xba, 0x7c, 0x68, 0xf5, 0x30, 0x21, 0xb2, 0x54, 0xfa, 0x1c, 0x60, 0x2a, 0x40, 0xb9, 0x5a, 0xfe, 0x03, 0x2c, 0xa4, 0xa6, 0xf6, }; static const unsigned char ecdh_brainpoolp512r1_4562_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4562_sharedsecret[] = { 0x43, 0x74, 0x4b, 0x7b, 0x4f, 0xf4, 0x3a, 0x84, 0x80, 0xd5, 0xf5, 0x70, 0x5a, 0xa8, 0xb1, 0x2d, 0x9b, 0xf5, 0x15, 0xd4, 0x01, 0x63, 0xf8, 0x76, 0xc3, 0x27, 0x68, 0xc0, 0xbd, 0x55, 0x4f, 0x16, 0x08, 0xca, 0x8e, 0x55, 0xeb, 0x06, 0xfa, 0xaf, 0xc3, 0x90, 0xde, 0x8d, 0x37, 0xd4, 0xb7, 0xcd, 0x9f, 0x03, 0x69, 0xda, 0xff, 0x19, 0x39, 0x14, 0x02, 0x0f, 0xdb, 0x15, 0x8c, 0xaf, 0x0e, 0x94, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4562 = { .name = "ecdh_brainpoolp512r1_4562", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4562_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4562_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4562_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in precomputation or right to left addition chain, tcId is 2240 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4563 for ECDH, tcId is 2241 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4563_peerpubkey[] = { 0x81, 0x21, 0x28, 0xb5, 0x4c, 0x8d, 0x25, 0xca, 0x7a, 0xf6, 0x4d, 0xe8, 0x8c, 0xa4, 0xf7, 0x04, 0x37, 0x58, 0x54, 0x6f, 0xe2, 0x38, 0xaf, 0x7f, 0xc7, 0x06, 0xfe, 0xce, 0x60, 0x28, 0x64, 0x43, 0xb8, 0x29, 0x16, 0x96, 0x92, 0xeb, 0xdf, 0xf6, 0x89, 0x8c, 0x63, 0xd5, 0xff, 0x5d, 0xa9, 0x29, 0x29, 0x7b, 0x70, 0xe0, 0x26, 0x8d, 0x6f, 0x98, 0x30, 0x5a, 0xca, 0x7f, 0x54, 0xd0, 0xf3, 0x8e, 0x90, 0x06, 0x5d, 0x17, 0x4b, 0x10, 0x66, 0x54, 0xac, 0xed, 0xef, 0xf4, 0x4b, 0xa3, 0x63, 0x35, 0x63, 0xa5, 0xdd, 0xb8, 0xd4, 0x08, 0x40, 0x69, 0x9b, 0x3d, 0xaa, 0x63, 0x3b, 0x0e, 0x87, 0x9e, 0x40, 0x95, 0xf0, 0xe0, 0xed, 0x8b, 0xad, 0x14, 0xa3, 0x07, 0xe7, 0x47, 0xc1, 0x3a, 0xcb, 0xc9, 0x89, 0x03, 0x9f, 0xdb, 0xd4, 0x2b, 0xf4, 0xa0, 0xf3, 0xc4, 0xc4, 0x8a, 0x63, 0xde, 0x2f, 0xc4, }; static const unsigned char ecdh_brainpoolp512r1_4563_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4563_sharedsecret[] = { 0x4f, 0x63, 0x94, 0xd3, 0x0f, 0x77, 0x04, 0x1b, 0x61, 0x9e, 0x60, 0xa7, 0x71, 0xe2, 0x7d, 0x2b, 0x22, 0xe1, 0xe8, 0xa8, 0x83, 0x1d, 0x5f, 0x2d, 0xd3, 0xed, 0x9b, 0xf9, 0x50, 0x02, 0xf0, 0xef, 0x6e, 0x6f, 0x63, 0x4e, 0xa7, 0x4a, 0xfb, 0x96, 0xfa, 0xc4, 0x5a, 0x48, 0x4e, 0xc8, 0x98, 0xe1, 0xe5, 0xfd, 0x33, 0xcd, 0x61, 0xed, 0x1a, 0x2b, 0x3d, 0x9f, 0x7e, 0xa8, 0xbe, 0x95, 0xac, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4563 = { .name = "ecdh_brainpoolp512r1_4563", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4563_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4563_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4563_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 2241 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4564 for ECDH, tcId is 2242 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4564_peerpubkey[] = { 0x1b, 0xd9, 0x8f, 0x8f, 0xc8, 0x38, 0x40, 0x05, 0xfd, 0x70, 0x5c, 0xa2, 0x41, 0x72, 0xc9, 0x01, 0x4b, 0xc2, 0x40, 0xda, 0x52, 0xb7, 0x90, 0x93, 0x0d, 0xf7, 0xa0, 0xde, 0x86, 0x69, 0x90, 0x75, 0xf6, 0x58, 0x00, 0xf5, 0x9d, 0x2b, 0xbb, 0x22, 0xee, 0x30, 0xd5, 0xa3, 0x0e, 0xa5, 0x05, 0x20, 0xaf, 0x63, 0x57, 0x60, 0xfb, 0x6a, 0x39, 0xe0, 0x2b, 0x5f, 0x54, 0xfd, 0x9f, 0x82, 0x8a, 0x54, 0x9e, 0x67, 0x09, 0xb1, 0xe2, 0x49, 0x27, 0xb9, 0x45, 0x30, 0x03, 0x36, 0x87, 0xb1, 0x2d, 0x0e, 0x59, 0x95, 0xaf, 0xd6, 0xa9, 0xd9, 0x42, 0x80, 0xfe, 0x38, 0x98, 0x5f, 0x05, 0xa6, 0xbc, 0xa1, 0x27, 0x7d, 0x5f, 0x82, 0xeb, 0x9a, 0x60, 0x2b, 0x29, 0x48, 0xb9, 0x76, 0x00, 0xae, 0x74, 0x8b, 0x05, 0xee, 0xa2, 0x64, 0x5c, 0x42, 0x3e, 0x2b, 0xdb, 0xfc, 0xb0, 0xb8, 0x56, 0xf4, 0x94, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_4564_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4564_sharedsecret[] = { 0x98, 0xc9, 0x71, 0x8c, 0x0b, 0xf3, 0xbc, 0xc9, 0xeb, 0xa9, 0xf4, 0xa6, 0x85, 0x4e, 0x24, 0xf7, 0x26, 0xb3, 0x6c, 0x70, 0x92, 0xb4, 0x83, 0x80, 0x19, 0x03, 0xed, 0xf3, 0xc3, 0xb3, 0xd4, 0xcb, 0x1e, 0x42, 0xd9, 0x0b, 0xb1, 0xc0, 0x64, 0x6f, 0x17, 0xb6, 0x85, 0x12, 0x20, 0xc7, 0xb6, 0x2e, 0x15, 0x42, 0x93, 0x13, 0x72, 0xb6, 0x8b, 0xe4, 0xc8, 0x59, 0x15, 0xa1, 0x3e, 0x3f, 0x82, 0x55, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4564 = { .name = "ecdh_brainpoolp512r1_4564", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4564_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4564_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4564_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 2242 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4565 for ECDH, tcId is 2243 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4565_peerpubkey[] = { 0x41, 0xd7, 0xa8, 0xea, 0x3f, 0xd2, 0xa2, 0x1e, 0x73, 0xdf, 0xa4, 0x3f, 0x62, 0x67, 0x20, 0xb8, 0x5e, 0xbc, 0xee, 0xeb, 0x58, 0x28, 0x4c, 0x82, 0xe9, 0x40, 0xaf, 0x97, 0xb9, 0x37, 0x3b, 0xe7, 0xfe, 0x3b, 0xa1, 0xe8, 0x00, 0x16, 0x0e, 0xe6, 0x95, 0x55, 0x1a, 0x86, 0x3f, 0x77, 0xcd, 0x05, 0xfc, 0x70, 0x2f, 0x25, 0xa7, 0xb1, 0xf8, 0x01, 0x1a, 0x1c, 0xea, 0x8b, 0xd6, 0x2b, 0x80, 0x5b, 0x1f, 0x2d, 0x70, 0xa4, 0x89, 0x68, 0xac, 0x82, 0xa8, 0xe0, 0x9f, 0xb1, 0xad, 0xb1, 0x4e, 0x55, 0x68, 0x5e, 0xd0, 0x14, 0x40, 0x94, 0x51, 0x39, 0x47, 0x82, 0xd6, 0xed, 0x86, 0xe8, 0x33, 0x38, 0x3b, 0x02, 0x9a, 0xc5, 0x5f, 0x25, 0x7d, 0x5c, 0x74, 0x1a, 0x3a, 0x5e, 0x2b, 0x8c, 0x69, 0x3b, 0xda, 0x74, 0xf7, 0xdc, 0x5b, 0xd6, 0x14, 0xec, 0x80, 0x2d, 0x87, 0xb9, 0xe0, 0xb7, 0xbe, 0x1d, }; static const unsigned char ecdh_brainpoolp512r1_4565_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4565_sharedsecret[] = { 0x30, 0x96, 0x79, 0x69, 0x14, 0xa3, 0x55, 0x18, 0xd5, 0xdd, 0x2f, 0xd7, 0x9b, 0x2f, 0x75, 0x2d, 0xa0, 0x1c, 0x30, 0x23, 0x42, 0xd5, 0x62, 0xfb, 0xde, 0x28, 0x34, 0x9c, 0xa4, 0xa1, 0xe5, 0x06, 0xb6, 0x73, 0x0b, 0x39, 0x45, 0xb1, 0x7d, 0x26, 0xab, 0x75, 0xfa, 0xc5, 0x5a, 0x60, 0x82, 0x04, 0x98, 0x05, 0xac, 0xf3, 0x7f, 0x97, 0x14, 0x48, 0x5d, 0x25, 0xf5, 0x6f, 0x27, 0xf3, 0x5f, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4565 = { .name = "ecdh_brainpoolp512r1_4565", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4565_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4565_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4565_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 2243 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4566 for ECDH, tcId is 2244 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4566_peerpubkey[] = { 0x25, 0xa5, 0xff, 0x3e, 0x00, 0x1b, 0x4b, 0x4c, 0x9e, 0x59, 0xdf, 0xe3, 0x7b, 0xc8, 0x66, 0x48, 0x77, 0xf7, 0x15, 0x7c, 0xdd, 0x9c, 0x92, 0x08, 0x83, 0xee, 0x0d, 0xa1, 0x26, 0x38, 0x7a, 0xd7, 0x4c, 0x21, 0xa4, 0x65, 0xfe, 0xdb, 0x6f, 0xb7, 0xea, 0x84, 0xde, 0xb3, 0x77, 0x1c, 0xde, 0xd1, 0x8d, 0xae, 0xb9, 0xb3, 0x04, 0x6c, 0xdb, 0xd2, 0x37, 0x1f, 0xdb, 0xcd, 0x50, 0x2b, 0x30, 0xad, 0x82, 0xf3, 0x7e, 0x30, 0x86, 0xac, 0xb9, 0xe4, 0x4d, 0x32, 0xc2, 0x83, 0xbc, 0x10, 0xbb, 0x9e, 0x28, 0xf0, 0x64, 0x9a, 0xe3, 0x91, 0x60, 0x3c, 0x54, 0xe3, 0x10, 0xa4, 0xb2, 0xbe, 0x0f, 0x88, 0xe8, 0x2e, 0x60, 0xae, 0xfb, 0x55, 0x22, 0xb4, 0xc9, 0xc5, 0xd8, 0x91, 0x1a, 0x3f, 0x25, 0xaa, 0xf8, 0xd6, 0x9d, 0xed, 0x86, 0x4e, 0x9e, 0x3f, 0x38, 0xb6, 0x1a, 0x78, 0x95, 0x66, 0x28, 0x61, }; static const unsigned char ecdh_brainpoolp512r1_4566_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4566_sharedsecret[] = { 0xa4, 0xb4, 0x09, 0x18, 0xe6, 0xda, 0x26, 0xdd, 0x11, 0x21, 0xed, 0x9a, 0x3a, 0xb2, 0xeb, 0x46, 0x31, 0xc2, 0x5f, 0x7c, 0x89, 0xde, 0x53, 0xbf, 0xf2, 0xb8, 0xae, 0x74, 0xe2, 0xc4, 0xa2, 0xfc, 0xdf, 0xe7, 0xda, 0x1a, 0xe1, 0x24, 0xa5, 0xcd, 0xba, 0x7c, 0x54, 0x15, 0x25, 0x81, 0x2d, 0x2c, 0xf1, 0xaf, 0xd3, 0x6a, 0x33, 0x66, 0x1b, 0x55, 0xe4, 0x22, 0x44, 0xbb, 0xe1, 0xce, 0x78, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4566 = { .name = "ecdh_brainpoolp512r1_4566", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4566_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4566_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4566_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 2244 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4567 for ECDH, tcId is 2245 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4567_peerpubkey[] = { 0x36, 0xb5, 0x6b, 0xe0, 0xd3, 0xdc, 0x2c, 0xc2, 0x11, 0x5c, 0xdd, 0xb8, 0x95, 0x15, 0xe1, 0x9e, 0x80, 0x8d, 0xc0, 0x54, 0x1b, 0x8a, 0xf7, 0x62, 0xfb, 0xbe, 0xad, 0xfd, 0xbc, 0x87, 0x65, 0xd6, 0x80, 0x87, 0x71, 0x50, 0xf1, 0x0d, 0xd6, 0x95, 0x6d, 0xe3, 0x7b, 0x37, 0x64, 0x31, 0x7f, 0x50, 0x7d, 0x61, 0xf8, 0x42, 0x17, 0xf2, 0x73, 0x2f, 0x73, 0xff, 0x12, 0x6e, 0xa6, 0xec, 0x69, 0x96, 0x1a, 0xa1, 0x96, 0xa1, 0xbd, 0xee, 0x60, 0x9e, 0xbd, 0x76, 0xdc, 0xaf, 0xe1, 0xcd, 0xe6, 0x7d, 0xb1, 0x68, 0x13, 0x4e, 0x7d, 0x1e, 0x2f, 0x63, 0x97, 0xba, 0x9c, 0xef, 0x8e, 0xe2, 0xb0, 0x42, 0x24, 0xa3, 0xed, 0xfa, 0x1d, 0xf1, 0xe9, 0x8b, 0xd1, 0xfc, 0x24, 0xe7, 0xb0, 0x44, 0xc1, 0xf4, 0xd3, 0x8c, 0x98, 0xdf, 0x44, 0xd0, 0x16, 0x36, 0xd9, 0x6f, 0xe8, 0xe1, 0xd1, 0xfc, 0x3f, 0xfb, }; static const unsigned char ecdh_brainpoolp512r1_4567_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512r1_4567_sharedsecret[] = { 0x32, 0xbb, 0x39, 0x31, 0x73, 0xeb, 0x87, 0xa0, 0xc2, 0x7c, 0x03, 0xbc, 0xd4, 0x84, 0xc1, 0xc6, 0xc0, 0x7b, 0x60, 0x65, 0xc1, 0x6c, 0x47, 0xe4, 0x82, 0xc0, 0x07, 0x0f, 0x88, 0xc6, 0x11, 0x82, 0xd9, 0xc6, 0x33, 0xed, 0x16, 0x48, 0x98, 0x19, 0x13, 0xec, 0x11, 0xcb, 0x12, 0xf5, 0xcd, 0x70, 0xa3, 0xd6, 0xdf, 0x97, 0xb9, 0xec, 0x9a, 0x83, 0x3f, 0x03, 0x91, 0x19, 0xbe, 0xeb, 0x74, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4567 = { .name = "ecdh_brainpoolp512r1_4567", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4567_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4567_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4567_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "point with coordinate x = -1 in right to left addition chain, tcId is 2245 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4568 for ECDH, tcId is 2246 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4568_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4568_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp512r1_4568_sharedsecret[] = { 0x47, 0xed, 0x91, 0x5c, 0xa6, 0x4a, 0xac, 0x75, 0x27, 0x24, 0xaa, 0x06, 0xb3, 0x11, 0xd1, 0x71, 0xdc, 0x14, 0xb9, 0xc5, 0x54, 0x21, 0xff, 0x61, 0xc6, 0x41, 0x3b, 0x3f, 0xc7, 0x31, 0x3e, 0xcd, 0xa0, 0x3c, 0x0a, 0xdd, 0xd0, 0xd6, 0xdb, 0xda, 0xcd, 0x5e, 0xa0, 0x61, 0x90, 0x54, 0x61, 0x46, 0x10, 0xd0, 0x7c, 0xd7, 0x8f, 0x9e, 0xd4, 0xd6, 0xdf, 0x02, 0x4c, 0x78, 0x1a, 0xf3, 0xef, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4568 = { .name = "ecdh_brainpoolp512r1_4568", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4568_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4568_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4568_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2246 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4569 for ECDH, tcId is 2247 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4569_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4569_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_4569_sharedsecret[] = { 0x78, 0x1a, 0x3b, 0xd7, 0xf9, 0x9a, 0xe1, 0x45, 0x69, 0x87, 0x83, 0x49, 0x5f, 0x1f, 0x4a, 0xac, 0x51, 0x89, 0xd5, 0x46, 0x57, 0xc3, 0x4f, 0x76, 0xc8, 0x84, 0x7c, 0xd5, 0x17, 0x7d, 0x6a, 0x08, 0xa2, 0xc8, 0x37, 0x50, 0x13, 0x51, 0xe0, 0x98, 0xba, 0x57, 0x0a, 0x3f, 0x30, 0x0c, 0xca, 0x47, 0xf2, 0x40, 0x7f, 0xf9, 0x17, 0x2b, 0x29, 0x54, 0xae, 0xf4, 0x6f, 0xdb, 0xec, 0x84, 0x29, 0xb7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4569 = { .name = "ecdh_brainpoolp512r1_4569", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4569_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4569_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4569_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2247 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4570 for ECDH, tcId is 2248 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4570_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4570_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4570_sharedsecret[] = { 0x33, 0x48, 0x51, 0x76, 0xaa, 0x26, 0xcf, 0xd1, 0x7a, 0x66, 0xe1, 0xda, 0x3c, 0x39, 0x73, 0xf4, 0x68, 0xbc, 0x32, 0xa1, 0x52, 0x8a, 0x67, 0xf9, 0xd3, 0x3b, 0x7c, 0xa2, 0x9b, 0xfd, 0x6f, 0xa5, 0x36, 0xba, 0xc3, 0x11, 0x2b, 0xb8, 0xf2, 0xc2, 0xea, 0x19, 0x8f, 0x2f, 0x7d, 0xf5, 0xa5, 0x6d, 0xda, 0x57, 0x09, 0x31, 0xb7, 0x85, 0x2b, 0x32, 0x24, 0xc4, 0x03, 0xa1, 0xd0, 0x8f, 0x3d, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4570 = { .name = "ecdh_brainpoolp512r1_4570", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4570_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4570_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4570_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2248 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4571 for ECDH, tcId is 2249 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4571_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4571_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512r1_4571_sharedsecret[] = { 0x9c, 0x49, 0x71, 0xc8, 0x9a, 0x22, 0xda, 0x14, 0xab, 0xac, 0x13, 0x04, 0xb6, 0x22, 0x8c, 0x5d, 0x64, 0x7f, 0x8d, 0xd8, 0xa1, 0x1b, 0x13, 0x48, 0xc4, 0x19, 0xf4, 0x30, 0x73, 0x3e, 0x84, 0x99, 0x57, 0xfb, 0x03, 0x78, 0x65, 0xef, 0xa8, 0x5f, 0x95, 0x85, 0xed, 0x0f, 0xfe, 0x8c, 0x6e, 0xa2, 0xc7, 0xc3, 0x9a, 0xc8, 0xbb, 0xee, 0xdc, 0x84, 0x71, 0x7f, 0x8a, 0x6b, 0xe9, 0x60, 0x3f, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4571 = { .name = "ecdh_brainpoolp512r1_4571", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4571_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4571_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4571_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2249 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4572 for ECDH, tcId is 2250 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4572_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4572_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4572_sharedsecret[] = { 0x58, 0xbe, 0x41, 0x43, 0x07, 0xcd, 0x76, 0x11, 0x43, 0xc4, 0x92, 0x24, 0xf3, 0x0a, 0xc4, 0x75, 0xe6, 0xb8, 0xfd, 0xbf, 0x43, 0xbe, 0x3f, 0x13, 0x0b, 0x71, 0xff, 0x8d, 0x89, 0xaf, 0x5d, 0x3b, 0x91, 0x34, 0x28, 0x98, 0x38, 0x8d, 0x16, 0x28, 0xf5, 0x63, 0x22, 0xd3, 0x27, 0xf5, 0xf0, 0x75, 0xca, 0x3a, 0x76, 0x6d, 0x94, 0x21, 0x3f, 0x8f, 0xf6, 0x70, 0x76, 0xca, 0xa2, 0x53, 0x93, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4572 = { .name = "ecdh_brainpoolp512r1_4572", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4572_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4572_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4572_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2250 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4573 for ECDH, tcId is 2251 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4573_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4573_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdc, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_4573_sharedsecret[] = { 0x2e, 0x03, 0x30, 0x2f, 0x29, 0x44, 0xb3, 0xbc, 0x90, 0x2e, 0x5f, 0xe6, 0xb7, 0xd1, 0xca, 0x39, 0x91, 0xbf, 0x9f, 0xd8, 0x0b, 0xaf, 0xa8, 0xdf, 0x4d, 0x4e, 0x85, 0xa9, 0x8f, 0x33, 0xd9, 0x56, 0x28, 0x0b, 0xa0, 0x07, 0x81, 0x78, 0xb5, 0x4e, 0xd1, 0xaa, 0x03, 0x57, 0x1f, 0xfa, 0xc2, 0xd4, 0x76, 0xc7, 0x24, 0x6a, 0xb6, 0x8e, 0xbb, 0x94, 0x34, 0xfa, 0xc5, 0x64, 0x45, 0x5f, 0x39, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4573 = { .name = "ecdh_brainpoolp512r1_4573", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4573_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4573_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4573_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2251 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4574 for ECDH, tcId is 2252 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4574_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4574_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x77, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_4574_sharedsecret[] = { 0x0d, 0xcd, 0x1e, 0x56, 0x3a, 0x94, 0xfd, 0x8e, 0xdc, 0x83, 0xe4, 0x7e, 0xbb, 0xc9, 0x29, 0x6d, 0x1c, 0x27, 0xd1, 0xaf, 0xf3, 0x7b, 0x02, 0x51, 0x2c, 0x03, 0x37, 0xca, 0x67, 0x2f, 0xf8, 0x4a, 0xc7, 0x3a, 0x61, 0x8f, 0xa5, 0x4f, 0x2b, 0x96, 0x31, 0x82, 0xba, 0x14, 0x1a, 0xe5, 0x96, 0xc5, 0x6f, 0x83, 0xd0, 0xec, 0xb4, 0xde, 0xb7, 0x80, 0x55, 0xcc, 0x8e, 0xa4, 0x76, 0xd0, 0x9b, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4574 = { .name = "ecdh_brainpoolp512r1_4574", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4574_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4574_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4574_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2252 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4575 for ECDH, tcId is 2253 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4575_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4575_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x7f, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_4575_sharedsecret[] = { 0xaa, 0x9a, 0xc6, 0xd3, 0x34, 0x3f, 0xb7, 0xaa, 0xd7, 0x12, 0x88, 0x55, 0xa2, 0x2c, 0xb2, 0x5f, 0x6c, 0xd9, 0xb4, 0x6e, 0xa0, 0x2f, 0x2a, 0x15, 0xc7, 0xcd, 0xec, 0xdc, 0x68, 0x1f, 0x3c, 0xa3, 0x8f, 0x18, 0x60, 0x29, 0x09, 0x71, 0x85, 0x2d, 0xe9, 0x4c, 0xc6, 0x88, 0x10, 0xd4, 0x1d, 0x14, 0x60, 0x7f, 0x55, 0x8e, 0x38, 0x58, 0x39, 0x4c, 0xef, 0x8b, 0x16, 0x6a, 0xbe, 0xe0, 0x23, 0xa2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4575 = { .name = "ecdh_brainpoolp512r1_4575", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4575_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4575_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4575_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2253 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4576 for ECDH, tcId is 2254 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4576_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4576_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x81, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512r1_4576_sharedsecret[] = { 0x5f, 0x15, 0x5d, 0x9d, 0x14, 0x68, 0x0a, 0xa5, 0xef, 0xb4, 0xed, 0x59, 0xf6, 0x70, 0xf6, 0xef, 0xc5, 0x9c, 0x15, 0xbb, 0x03, 0xb5, 0x9b, 0x3a, 0x2c, 0xf1, 0xa4, 0xa1, 0x54, 0x6b, 0x7e, 0x35, 0xbf, 0xd9, 0x91, 0x94, 0xcf, 0xe7, 0x2e, 0x79, 0x21, 0x6c, 0x1d, 0xae, 0xbd, 0xcd, 0x24, 0x7e, 0x93, 0x4e, 0xab, 0x45, 0x7c, 0xa9, 0x0d, 0x4d, 0x2c, 0x38, 0xb6, 0x45, 0x17, 0xe0, 0xcc, 0xe0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4576 = { .name = "ecdh_brainpoolp512r1_4576", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4576_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4576_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4576_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2254 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4577 for ECDH, tcId is 2255 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4577_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4577_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x3b, }; static const unsigned char ecdh_brainpoolp512r1_4577_sharedsecret[] = { 0x19, 0x48, 0x71, 0x64, 0x5b, 0xbf, 0xc3, 0x09, 0xeb, 0xa9, 0x2c, 0x56, 0x13, 0xca, 0x7c, 0x6a, 0xa5, 0x66, 0xfd, 0xab, 0x45, 0x63, 0x5f, 0x65, 0x61, 0x48, 0xec, 0x71, 0x22, 0xd7, 0x1c, 0x82, 0x5f, 0x36, 0x85, 0x2f, 0x52, 0x72, 0x2e, 0xa9, 0x49, 0xc2, 0x57, 0x2d, 0xbb, 0x6b, 0x89, 0x4a, 0x21, 0xf9, 0x6a, 0x05, 0xc9, 0xbe, 0xe0, 0xdf, 0x6c, 0x6b, 0x4f, 0xaa, 0x31, 0x97, 0x07, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4577 = { .name = "ecdh_brainpoolp512r1_4577", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4577_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4577_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4577_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2255 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4578 for ECDH, tcId is 2256 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4578_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4578_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x5b, }; static const unsigned char ecdh_brainpoolp512r1_4578_sharedsecret[] = { 0x3a, 0x6e, 0x57, 0x85, 0x8d, 0x4e, 0x61, 0xc7, 0xed, 0x2c, 0xb9, 0x3c, 0x12, 0x42, 0x21, 0x21, 0x02, 0x93, 0xa3, 0x45, 0xb4, 0x7f, 0x76, 0x44, 0x91, 0x05, 0x43, 0xac, 0x03, 0x11, 0x7f, 0x48, 0xb0, 0x34, 0x3d, 0xde, 0xbd, 0x2c, 0xf9, 0x92, 0x5e, 0x3d, 0xc5, 0xe1, 0xea, 0x59, 0x07, 0x39, 0xed, 0x2c, 0x23, 0x72, 0xe1, 0x14, 0x6f, 0x84, 0xfd, 0x26, 0x2a, 0xc7, 0xd8, 0xee, 0xba, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4578 = { .name = "ecdh_brainpoolp512r1_4578", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4578_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4578_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4578_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2256 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4579 for ECDH, tcId is 2257 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4579_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4579_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x63, }; static const unsigned char ecdh_brainpoolp512r1_4579_sharedsecret[] = { 0x8e, 0x0a, 0x18, 0x6a, 0x51, 0xea, 0xe0, 0x8a, 0x86, 0xfd, 0xd4, 0x76, 0xbc, 0xfd, 0x96, 0x1d, 0x02, 0xbe, 0x74, 0x96, 0x6c, 0xe3, 0xc2, 0xd9, 0x37, 0xc8, 0x08, 0xdb, 0x51, 0x8f, 0x2d, 0xdc, 0x47, 0x60, 0xbf, 0xc9, 0x24, 0xaf, 0x72, 0xf8, 0x5e, 0xb1, 0x88, 0xeb, 0xc7, 0x0e, 0xdd, 0xe6, 0xd1, 0x2f, 0x40, 0x27, 0x35, 0xf5, 0x8b, 0x90, 0x06, 0xf8, 0xb8, 0xe2, 0x83, 0xef, 0x9f, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4579 = { .name = "ecdh_brainpoolp512r1_4579", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4579_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4579_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4579_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2257 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4580 for ECDH, tcId is 2258 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4580_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4580_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const unsigned char ecdh_brainpoolp512r1_4580_sharedsecret[] = { 0x47, 0xed, 0x91, 0x5c, 0xa6, 0x4a, 0xac, 0x75, 0x27, 0x24, 0xaa, 0x06, 0xb3, 0x11, 0xd1, 0x71, 0xdc, 0x14, 0xb9, 0xc5, 0x54, 0x21, 0xff, 0x61, 0xc6, 0x41, 0x3b, 0x3f, 0xc7, 0x31, 0x3e, 0xcd, 0xa0, 0x3c, 0x0a, 0xdd, 0xd0, 0xd6, 0xdb, 0xda, 0xcd, 0x5e, 0xa0, 0x61, 0x90, 0x54, 0x61, 0x46, 0x10, 0xd0, 0x7c, 0xd7, 0x8f, 0x9e, 0xd4, 0xd6, 0xdf, 0x02, 0x4c, 0x78, 0x1a, 0xf3, 0xef, 0xae, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4580 = { .name = "ecdh_brainpoolp512r1_4580", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4580_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4580_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4580_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2258 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4581 for ECDH, tcId is 2259 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4581_peerpubkey[] = { 0x2e, 0xe4, 0x02, 0x77, 0x72, 0x00, 0xa1, 0xc9, 0xe7, 0xec, 0xeb, 0x61, 0xfe, 0xb0, 0x70, 0xaf, 0x49, 0x42, 0x9f, 0x92, 0x40, 0xd7, 0xc0, 0xba, 0xb9, 0xb2, 0xf0, 0x1c, 0x5e, 0xe1, 0x45, 0x68, 0x3d, 0xf4, 0x7c, 0xbe, 0x85, 0x2f, 0xf6, 0xf9, 0x91, 0x98, 0xf6, 0xfd, 0xfa, 0xef, 0x19, 0x25, 0xeb, 0x96, 0xbd, 0x25, 0xe0, 0x3d, 0x6d, 0x70, 0xf7, 0x09, 0xeb, 0x19, 0x22, 0x30, 0x8a, 0xcc, 0x99, 0xa3, 0xfb, 0xc1, 0xe9, 0x82, 0xdb, 0x7a, 0x7b, 0x3b, 0xbf, 0x78, 0x27, 0xea, 0x70, 0x91, 0x2e, 0xe6, 0x77, 0xbb, 0x0b, 0xa7, 0x0b, 0xfa, 0xbe, 0xc3, 0x8d, 0x4b, 0x99, 0x3a, 0xf1, 0x65, 0xc4, 0x07, 0x27, 0x68, 0x0f, 0xe7, 0x9a, 0xd0, 0xfb, 0xb5, 0x5d, 0x1e, 0x95, 0x68, 0xd9, 0x78, 0xb1, 0x1f, 0x77, 0xcc, 0x4e, 0x72, 0xaa, 0x7c, 0xa5, 0xc3, 0x91, 0x03, 0x40, 0x78, 0xb8, 0xbd, }; static const unsigned char ecdh_brainpoolp512r1_4581_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x67, }; static const unsigned char ecdh_brainpoolp512r1_4581_sharedsecret[] = { 0x30, 0x0b, 0x1d, 0x80, 0xd9, 0xdc, 0x55, 0x87, 0x07, 0x6b, 0x7d, 0x85, 0x0c, 0xcd, 0x00, 0xcf, 0x89, 0x61, 0xf3, 0x89, 0xc4, 0xde, 0xd6, 0x0b, 0xf9, 0x10, 0xd9, 0x8f, 0x19, 0x6f, 0x67, 0xc3, 0x83, 0x9d, 0x21, 0x97, 0x10, 0x16, 0x07, 0x61, 0x2b, 0x33, 0x58, 0x71, 0xa8, 0x18, 0xd5, 0x0d, 0x8f, 0x4b, 0xb6, 0x16, 0x3c, 0xc8, 0x39, 0xcf, 0x41, 0xaf, 0x0b, 0x74, 0x2c, 0x72, 0x54, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4581 = { .name = "ecdh_brainpoolp512r1_4581", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4581_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4581_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4581_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 2259 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4582 for ECDH, tcId is 2260 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4582_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4582_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4582 = { .name = "ecdh_brainpoolp512r1_4582", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4582_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4582_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2260 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4583 for ECDH, tcId is 2261 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4583_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_4583_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4583 = { .name = "ecdh_brainpoolp512r1_4583", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4583_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4583_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2261 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4584 for ECDH, tcId is 2262 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4584_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_4584_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4584 = { .name = "ecdh_brainpoolp512r1_4584", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4584_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4584_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2262 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4585 for ECDH, tcId is 2263 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4585_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_4585_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4585 = { .name = "ecdh_brainpoolp512r1_4585", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4585_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4585_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2263 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4586 for ECDH, tcId is 2264 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4586_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4586_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4586 = { .name = "ecdh_brainpoolp512r1_4586", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4586_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4586_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2264 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4587 for ECDH, tcId is 2265 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4587_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_4587_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4587 = { .name = "ecdh_brainpoolp512r1_4587", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4587_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4587_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2265 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4588 for ECDH, tcId is 2266 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4588_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_4588_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4588 = { .name = "ecdh_brainpoolp512r1_4588", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4588_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4588_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2266 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4589 for ECDH, tcId is 2267 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4589_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_4589_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4589 = { .name = "ecdh_brainpoolp512r1_4589", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4589_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4589_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2267 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4590 for ECDH, tcId is 2268 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4590_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4590_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4590 = { .name = "ecdh_brainpoolp512r1_4590", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4590_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4590_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2268 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4591 for ECDH, tcId is 2269 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4591_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_4591_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4591 = { .name = "ecdh_brainpoolp512r1_4591", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4591_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4591_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2269 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4592 for ECDH, tcId is 2270 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4592_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_4592_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4592 = { .name = "ecdh_brainpoolp512r1_4592", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4592_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4592_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2270 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4593 for ECDH, tcId is 2271 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4593_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_4593_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4593 = { .name = "ecdh_brainpoolp512r1_4593", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4593_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4593_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2271 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4594 for ECDH, tcId is 2272 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4594_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4594_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4594 = { .name = "ecdh_brainpoolp512r1_4594", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4594_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4594_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2272 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4595 for ECDH, tcId is 2273 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4595_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512r1_4595_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4595 = { .name = "ecdh_brainpoolp512r1_4595", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4595_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4595_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2273 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4596 for ECDH, tcId is 2274 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4596_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512r1_4596_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4596 = { .name = "ecdh_brainpoolp512r1_4596", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4596_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4596_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2274 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4597 for ECDH, tcId is 2275 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4597_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512r1_4597_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4597 = { .name = "ecdh_brainpoolp512r1_4597", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4597_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4597_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2275 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4598 for ECDH, tcId is 2277 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4598_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x95, }; static const unsigned char ecdh_brainpoolp512r1_4598_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4598 = { .name = "ecdh_brainpoolp512r1_4598", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4598_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4598_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2277 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4599 for ECDH, tcId is 2278 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4599_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512r1_4599_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4599 = { .name = "ecdh_brainpoolp512r1_4599", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4599_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4599_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2278 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4600 for ECDH, tcId is 2281 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4600_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4600_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4600_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4600 = { .name = "ecdh_brainpoolp512r1_4600", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4600_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4600_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4600_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 1, tcId is 2281 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4601 for ECDH, tcId is 2282 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4601_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4601_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4601_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4601 = { .name = "ecdh_brainpoolp512r1_4601", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4601_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4601_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4601_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 2083592630841357761914050861997332755048435564175796348448981807380927961881602771668457829077617488768289656930144243078095422967775269405300354, tcId is 2282 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4602 for ECDH, tcId is 2283 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4602_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4602_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4602_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4602 = { .name = "ecdh_brainpoolp512r1_4602", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4602_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4602_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4602_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator = (0,0), tcId is 2283 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4603 for ECDH, tcId is 2284 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4603_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4603_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4603_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4603 = { .name = "ecdh_brainpoolp512r1_4603", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4603_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4603_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4603_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator not on curve, tcId is 2284 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4604 for ECDH, tcId is 2287 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4604_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4604_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4604_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4604 = { .name = "ecdh_brainpoolp512r1_4604", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4604_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4604_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4604_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = 2, tcId is 2287 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4605 for ECDH, tcId is 2289 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4605_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4605_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4605_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4605 = { .name = "ecdh_brainpoolp512r1_4605", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4605_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4605_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4605_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = None, tcId is 2289 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4606 for ECDH, tcId is 2294 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4606_peerpubkey[] = { 0x93, 0x3a, 0xcf, 0x9f, 0x74, 0xc7, 0x33, 0x24, 0xa7, 0x19, 0xb0, 0x2f, 0x56, 0x26, 0x9f, 0x56, 0x46, 0x3a, 0x36, 0x23, 0xa3, 0x3f, 0x2d, 0x30, 0x01, 0xa3, 0x3e, 0xe1, 0xce, 0x06, 0x4e, 0x55, 0x46, 0x60, 0x73, 0xe7, 0x53, 0x5a, 0x83, 0xdb, 0xd4, 0x77, 0x2c, 0x30, 0x30, 0xda, 0xb1, 0x22, 0x33, 0x8d, 0xaa, 0xef, 0x4e, 0x0a, 0xec, 0xa1, 0xf2, 0x7f, 0x6b, 0x22, 0x8b, 0x7f, 0xd8, 0x8a, 0x5c, 0xd4, 0xc6, 0x7a, 0x1a, 0x17, 0x79, 0x65, 0xf5, 0xfc, 0xe7, 0xd3, 0x52, 0xaf, 0xdb, 0x1c, 0xb7, 0x2c, 0xc6, 0x28, 0xb7, 0x06, 0x9b, 0x6a, 0xd1, 0xbb, 0xab, 0x8c, 0x14, 0xff, 0x0f, 0x77, 0x92, 0xa2, 0xb6, 0x68, 0x7b, 0xb7, 0x1c, 0xa8, 0x47, 0x40, 0x5e, 0x31, 0xc9, 0xdc, 0xde, 0xe5, 0xf4, 0xcd, 0x3d, 0x91, 0xa2, 0xf4, 0xf8, 0xfa, 0xf1, 0x69, 0x58, 0x4a, 0x7e, 0x3c, 0x56, 0x93, }; static const unsigned char ecdh_brainpoolp512r1_4606_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const unsigned char ecdh_brainpoolp512r1_4606_sharedsecret[] = { 0x1a, 0x1a, 0xc0, 0x32, 0x4e, 0xcc, 0x13, 0xde, 0x10, 0x6b, 0x70, 0x24, 0xdb, 0xc5, 0x48, 0x47, 0x95, 0x3b, 0xf9, 0x1b, 0xdf, 0x5d, 0x9b, 0x7a, 0x4a, 0x85, 0x50, 0x7a, 0xda, 0xfb, 0xd8, 0x02, 0xec, 0x7f, 0xc2, 0x75, 0x18, 0xb4, 0xbd, 0x33, 0x6a, 0x6c, 0xa3, 0x87, 0xc1, 0x73, 0x59, 0x08, 0x4f, 0x5e, 0x15, 0xd0, 0x45, 0x11, 0xf3, 0x0d, 0xde, 0x0c, 0xe5, 0xce, 0xe9, 0x96, 0x0d, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4606 = { .name = "ecdh_brainpoolp512r1_4606", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4606_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4606_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512r1_4606_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "a = 0, tcId is 2294 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4607 for ECDH, tcId is 2296 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4607_peerpubkey[] = { 0x55, 0x2e, 0x0f, 0x40, 0x3a, 0x37, 0xa5, 0x3c, 0xab, 0x04, 0x8d, 0x6c, 0x66, 0x16, 0x97, 0x3f, 0xb8, 0x0c, 0xcb, 0xeb, 0xb7, 0x88, 0xa5, 0xd7, 0x43, 0xf6, 0xbd, 0x48, 0xb2, 0x7e, 0x81, 0x91, 0x00, 0xac, 0xd5, 0x3c, 0x86, 0xa9, 0x54, 0x20, 0xe5, 0x2c, 0xfa, 0x18, 0xd9, 0x58, 0xbc, 0xb7, 0x84, 0x4f, 0x05, 0xe4, 0x08, 0x24, 0xb5, 0xeb, 0x38, 0xc8, 0x27, 0x45, 0x6e, 0x9b, 0x41, 0x0c, 0x67, 0x87, 0xba, 0xfb, 0x0c, 0xf8, 0x73, 0xf5, 0x35, 0xc8, 0x23, 0x81, 0xc8, 0x1b, 0xbe, 0xa8, 0xe7, 0x29, 0x1b, 0x68, 0xf9, 0x3e, 0x58, 0xf5, 0x65, 0x7a, 0xf4, 0x03, 0x33, 0xae, 0xfc, 0x23, 0xcd, 0xac, 0xae, 0xdf, 0xf7, 0xb3, 0xee, 0xfd, 0x8c, 0xba, 0x64, 0x4b, 0xb7, 0x2e, 0x97, 0x46, 0xc3, 0xba, 0xca, 0xec, 0x3f, 0xf1, 0x4a, 0x95, 0x0d, 0xc6, 0xe1, 0xff, 0xb0, 0x37, 0x89, 0xab, }; static const unsigned char ecdh_brainpoolp512r1_4607_privkey[] = { 0x11, 0xca, 0x87, 0xee, 0x5e, 0x9a, 0xee, 0x91, 0x4f, 0x1e, 0xc5, 0x47, 0x9b, 0xdb, 0x6b, 0x0a, 0x6a, 0xb1, 0xfd, 0xf3, 0x8e, 0xc8, 0xdf, 0x53, 0x7e, 0x23, 0x15, 0x96, 0x76, 0x2f, 0x94, 0x28, 0xbe, 0x31, 0x94, 0xf8, 0x99, 0x89, 0x00, 0x76, 0xe7, 0x83, 0x66, 0xaf, 0xfd, 0xd1, 0x92, 0xfa, 0x9e, 0x4d, 0x44, 0xc9, 0x20, 0x66, 0xc3, 0x1c, 0x25, 0xda, 0xb0, 0x4e, 0x0c, 0x3f, 0xbe, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4607 = { .name = "ecdh_brainpoolp512r1_4607", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4607_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4607_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP512t1, tcId is 2296 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4608 for ECDH, tcId is 2311 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4608_peerpubkey[] = { 0x1b, 0xdd, 0xcd, 0x40, 0x74, 0x61, 0xd8, 0x21, 0xe5, 0x87, 0x9e, 0xb6, 0xb2, 0x77, 0x36, 0xdc, 0x11, 0x12, 0xc3, 0xc9, 0x17, 0x7f, 0xc3, 0xcf, 0x1a, 0x1b, 0xbd, 0x39, 0x65, 0x45, 0x14, 0xd7, 0xc8, 0x29, 0x50, 0xe9, 0xf6, 0x74, 0xa4, 0xce, 0x4c, 0x7f, 0xc9, 0xf9, 0x41, 0x0c, 0x5e, 0xd9, 0xb1, 0x94, 0xc9, 0x26, 0xc1, 0xfb, 0x0c, 0x17, 0x89, 0x40, 0xe4, 0x6d, 0xc4, 0xfc, 0xf1, 0x2c, 0x22, 0x2d, 0x62, 0xb9, 0xc3, 0xf7, 0x6b, 0xa4, 0x59, 0xf8, 0xea, 0xe7, 0x2d, 0x5b, 0x2c, 0x8d, 0xf5, 0xa2, 0xce, 0xcf, 0x34, 0xdc, 0xc6, 0x61, 0x08, 0x53, 0x8a, 0x0f, 0x6a, 0xed, 0xd8, 0xe2, 0xe9, 0xc5, 0x15, 0x15, 0xa2, 0x90, 0xf2, 0x44, 0xe3, 0xe4, 0x0e, 0x35, 0x2a, 0x6e, 0x86, 0xa5, 0x8a, 0xf4, 0x1c, 0xd8, 0x9f, 0x7d, 0xee, 0x16, 0x19, 0x9b, 0xc8, 0x4d, 0x20, 0x51, 0xc4, 0x3e, }; static const unsigned char ecdh_brainpoolp512r1_4608_privkey[] = { 0x02, 0x15, 0xf8, 0x98, 0xba, 0x48, 0x2b, 0xa7, 0x68, 0xa4, 0xaa, 0x8a, 0x5a, 0x1d, 0x01, 0x86, 0x2c, 0x0f, 0x18, 0x4a, 0xb9, 0x2c, 0xed, 0xd1, 0x49, 0x28, 0x1f, 0x72, 0x2b, 0xd0, 0x3f, 0xfe, 0x6a, 0xac, 0xf3, 0x3e, 0xd8, 0x81, 0x0f, 0x98, 0xc7, 0x57, 0x5f, 0x99, 0xfb, 0x35, 0x54, 0x8f, 0x93, 0xb3, 0xa8, 0x28, 0xdc, 0xda, 0x3d, 0xae, 0x7d, 0x91, 0xb9, 0x13, 0xc4, 0x0a, 0x94, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4608 = { .name = "ecdh_brainpoolp512r1_4608", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4608_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4608_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP512t1, tcId is 2311 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4609 for ECDH, tcId is 2312 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) static const unsigned char ecdh_brainpoolp512r1_4609_peerpubkey[] = { 0x25, 0x64, 0xec, 0xe7, 0x69, 0x89, 0xd8, 0x22, 0x65, 0xea, 0x79, 0xfe, 0x5b, 0x41, 0xb2, 0xdf, 0xad, 0x22, 0x68, 0xe2, 0x7d, 0xf8, 0xee, 0x72, 0x60, 0xd9, 0x37, 0x43, 0x5d, 0xa3, 0x77, 0x7a, 0x51, 0x06, 0x55, 0x7d, 0xfb, 0xdb, 0x64, 0xd1, 0x06, 0xc2, 0xad, 0x46, 0xe6, 0x4d, 0xc6, 0x3e, 0x0e, 0xaa, 0x22, 0xe8, 0x1a, 0x03, 0xd2, 0x5b, 0x87, 0x05, 0x78, 0xd8, 0x6b, 0x0f, 0x14, 0x32, }; static const unsigned char ecdh_brainpoolp512r1_4609_privkey[] = { 0x57, 0x08, 0x7c, 0x2e, 0x66, 0xe2, 0x22, 0x1d, 0x06, 0x18, 0x07, 0x72, 0x07, 0xce, 0xd3, 0xfe, 0x31, 0x62, 0x7f, 0x83, 0xaf, 0xe4, 0xea, 0x3d, 0x39, 0x99, 0xa2, 0x6d, 0x97, 0x37, 0xfa, 0x8a, 0xce, 0x4f, 0x50, 0xb9, 0x68, 0x93, 0x0c, 0xae, 0x8b, 0xbf, 0x55, 0xb4, 0x22, 0x33, 0x5f, 0x22, 0xd8, 0x5a, 0x23, 0x58, 0x2b, 0x07, 0x6c, 0x28, 0x36, 0xe0, 0x60, 0xcd, 0x11, 0x57, 0xcf, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512r1_4609 = { .name = "ecdh_brainpoolp512r1_4609", .ecdh_alg = ECCCDH, .curve = &brainpoolp512r1_str_params, .peerpubkey = ecdh_brainpoolp512r1_4609_peerpubkey, .peerpubkeylen = 64, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512r1_4609_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2312 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) */ /* Test 4610 for ECDH, tcId is 2313 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4610_peerpubkey[] = { 0xb4, 0x78, 0x0e, 0xe6, 0x6a, 0xea, 0x43, 0x5e, 0x0a, 0x2b, 0xe8, 0x01, 0x0d, 0xba, 0x55, 0xdc, 0xa1, 0xd2, 0xfe, 0x27, 0xa9, 0x0c, 0x5b, 0x21, 0x63, 0x2d, 0xc3, 0xbd, 0xd2, 0x98, 0x4e, 0xcd, 0x46, 0xd7, 0x1d, 0x21, 0x15, 0xaa, 0xb7, 0x01, 0x1a, 0xa7, 0x03, 0x75, 0x23, 0xb8, 0x2f, 0x39, 0x6b, 0xf4, 0x31, 0x51, 0x3a, 0x31, 0x69, 0xb6, }; static const unsigned char ecdh_brainpoolp224t1_4610_privkey[] = { 0x68, 0xc8, 0xbb, 0xae, 0xbe, 0xf7, 0x0f, 0x1e, 0x59, 0xec, 0xf3, 0x68, 0x1b, 0x2d, 0x0c, 0x7d, 0xb8, 0xdf, 0xd5, 0x1e, 0x23, 0x92, 0xd6, 0xff, 0xb2, 0x33, 0xbf, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4610_sharedsecret[] = { 0x6b, 0x42, 0x9d, 0xb0, 0x9a, 0x4d, 0x7a, 0x2b, 0x33, 0x6c, 0x2c, 0x93, 0x55, 0x9c, 0x64, 0xfd, 0x87, 0x9e, 0x73, 0xb4, 0x7b, 0xa0, 0xcb, 0x76, 0xb1, 0x71, 0x1b, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4610 = { .name = "ecdh_brainpoolp224t1_4610", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4610_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4610_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4610_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "normal case, tcId is 2313 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4611 for ECDH, tcId is 2314 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4611_peerpubkey[] = { 0xb4, 0x78, 0x0e, 0xe6, 0x6a, 0xea, 0x43, 0x5e, 0x0a, 0x2b, 0xe8, 0x01, 0x0d, 0xba, 0x55, 0xdc, 0xa1, 0xd2, 0xfe, 0x27, 0xa9, 0x0c, 0x5b, 0x21, 0x63, 0x2d, 0xc3, 0xbd, }; static const unsigned char ecdh_brainpoolp224t1_4611_privkey[] = { 0x68, 0xc8, 0xbb, 0xae, 0xbe, 0xf7, 0x0f, 0x1e, 0x59, 0xec, 0xf3, 0x68, 0x1b, 0x2d, 0x0c, 0x7d, 0xb8, 0xdf, 0xd5, 0x1e, 0x23, 0x92, 0xd6, 0xff, 0xb2, 0x33, 0xbf, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4611_sharedsecret[] = { 0x6b, 0x42, 0x9d, 0xb0, 0x9a, 0x4d, 0x7a, 0x2b, 0x33, 0x6c, 0x2c, 0x93, 0x55, 0x9c, 0x64, 0xfd, 0x87, 0x9e, 0x73, 0xb4, 0x7b, 0xa0, 0xcb, 0x76, 0xb1, 0x71, 0x1b, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4611 = { .name = "ecdh_brainpoolp224t1_4611", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4611_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4611_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4611_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "compressed public key, tcId is 2314 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4612 for ECDH, tcId is 2315 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4612_peerpubkey[] = { 0x12, 0xa3, 0x8d, 0xe9, 0x1c, 0x32, 0x59, 0x36, 0x54, 0xa5, 0x6e, 0x4d, 0x28, 0xdd, 0x5f, 0x63, 0xc5, 0xdc, 0xd1, 0x7d, 0x63, 0x0d, 0x70, 0x30, 0xa4, 0x49, 0xfd, 0x1c, 0x62, 0x21, 0x6c, 0xdb, 0xd7, 0xda, 0x43, 0x56, 0x3e, 0x13, 0x74, 0x65, 0x9b, 0x65, 0x70, 0x1a, 0x02, 0xb9, 0xe0, 0x7d, 0x3a, 0xee, 0x28, 0x97, 0x80, 0x1f, 0x6e, 0xda, }; static const unsigned char ecdh_brainpoolp224t1_4612_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4612_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4612 = { .name = "ecdh_brainpoolp224t1_4612", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4612_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4612_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4612_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2315 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4613 for ECDH, tcId is 2316 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4613_peerpubkey[] = { 0x1c, 0x25, 0x50, 0x87, 0x21, 0x9f, 0x1c, 0x2e, 0x09, 0xe2, 0x7f, 0x39, 0x7e, 0xf8, 0x97, 0x62, 0x0c, 0xf5, 0x96, 0x26, 0xf1, 0xe7, 0x6a, 0x46, 0xa3, 0x13, 0x0f, 0x19, 0xd5, 0x78, 0x09, 0x3b, 0x49, 0xa6, 0x3a, 0xee, 0xbc, 0x97, 0xe7, 0x9d, 0x6c, 0xa0, 0x33, 0x15, 0x5c, 0xe9, 0xaf, 0x95, 0x9d, 0x6e, 0xb7, 0x73, 0xc1, 0x44, 0xf4, 0x13, }; static const unsigned char ecdh_brainpoolp224t1_4613_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4613_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4613 = { .name = "ecdh_brainpoolp224t1_4613", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4613_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4613_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4613_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2316 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4614 for ECDH, tcId is 2317 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4614_peerpubkey[] = { 0x50, 0x12, 0x0a, 0x32, 0x45, 0x7e, 0x46, 0xbb, 0xbc, 0xd4, 0xeb, 0x46, 0xd6, 0xcb, 0xe1, 0xc1, 0xc4, 0x98, 0x55, 0xad, 0x3d, 0xc8, 0xf4, 0xc4, 0xda, 0x4a, 0x55, 0x76, 0x7d, 0x95, 0x9b, 0x19, 0xf6, 0x9d, 0x72, 0xbb, 0xf0, 0xa5, 0x5c, 0x55, 0x4f, 0x3c, 0x28, 0x95, 0xc0, 0xdc, 0xc5, 0x92, 0x87, 0x59, 0x87, 0x1c, 0x60, 0x4f, 0xe1, 0x76, }; static const unsigned char ecdh_brainpoolp224t1_4614_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4614_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4614 = { .name = "ecdh_brainpoolp224t1_4614", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4614_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4614_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4614_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2317 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4615 for ECDH, tcId is 2318 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4615_peerpubkey[] = { 0x28, 0x6f, 0xeb, 0x07, 0x8f, 0x37, 0x56, 0xc0, 0x6e, 0x53, 0x15, 0xd9, 0xe4, 0x58, 0x5b, 0x18, 0x49, 0x06, 0x07, 0x1f, 0x57, 0xd7, 0x4a, 0xeb, 0xf3, 0xe8, 0xa4, 0x31, 0xc3, 0xd4, 0x81, 0x26, 0x76, 0x87, 0x21, 0x9a, 0xa5, 0xf3, 0x75, 0x3b, 0xc9, 0xb2, 0x08, 0x21, 0x47, 0xa3, 0xe6, 0x28, 0x1e, 0x34, 0xbf, 0x39, 0xab, 0x8c, 0xe3, 0x5d, }; static const unsigned char ecdh_brainpoolp224t1_4615_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4615_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4615 = { .name = "ecdh_brainpoolp224t1_4615", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4615_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4615_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4615_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2318 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4616 for ECDH, tcId is 2319 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4616_peerpubkey[] = { 0x5a, 0x06, 0xcb, 0x7b, 0x6d, 0x88, 0xa2, 0x1c, 0xf7, 0x76, 0x70, 0x88, 0x3c, 0x62, 0x49, 0x3f, 0x1b, 0x13, 0x81, 0xe1, 0x84, 0x10, 0x08, 0xca, 0x4b, 0xf6, 0xf9, 0x2c, 0x24, 0xd1, 0x2e, 0x6f, 0xed, 0xc3, 0x61, 0xaa, 0x11, 0x21, 0x80, 0x29, 0x80, 0x89, 0xcb, 0x69, 0xd0, 0xea, 0x9f, 0xe0, 0x61, 0xbe, 0xc5, 0x1b, 0x51, 0xdf, 0xc5, 0xda, }; static const unsigned char ecdh_brainpoolp224t1_4616_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4616_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4616 = { .name = "ecdh_brainpoolp224t1_4616", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4616_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4616_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4616_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2319 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4617 for ECDH, tcId is 2320 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4617_peerpubkey[] = { 0x15, 0x6a, 0x91, 0x12, 0x8f, 0xed, 0xd0, 0x89, 0xab, 0x47, 0x41, 0x25, 0x54, 0x00, 0xb7, 0xbb, 0x2c, 0xf1, 0x9f, 0xb7, 0x24, 0x3e, 0x4c, 0xfa, 0xce, 0x76, 0xdd, 0xd3, 0x46, 0x36, 0x14, 0xf4, 0xdd, 0x54, 0xeb, 0x1d, 0x31, 0xce, 0x71, 0x6f, 0x1b, 0xee, 0xef, 0x41, 0xd9, 0x1e, 0x6a, 0x79, 0x4a, 0x47, 0x73, 0x85, 0xdd, 0xf4, 0x02, 0xf2, }; static const unsigned char ecdh_brainpoolp224t1_4617_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4617_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4617 = { .name = "ecdh_brainpoolp224t1_4617", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4617_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4617_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4617_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2320 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4618 for ECDH, tcId is 2321 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4618_peerpubkey[] = { 0x7e, 0x59, 0x42, 0xba, 0xf4, 0x04, 0xf1, 0xaa, 0x16, 0x2b, 0xe9, 0x67, 0x09, 0xc2, 0x83, 0x94, 0xf5, 0xf0, 0x35, 0x64, 0xea, 0x1b, 0xca, 0x65, 0xaf, 0x77, 0xf7, 0xe5, 0xaf, 0x93, 0x37, 0x01, 0xc2, 0xfc, 0x89, 0xd6, 0x6d, 0xcb, 0xf2, 0x89, 0x13, 0xc7, 0xf5, 0x12, 0x7a, 0x8d, 0x68, 0xd4, 0x02, 0xa7, 0x3d, 0xc0, 0x51, 0x5b, 0xcd, 0x82, }; static const unsigned char ecdh_brainpoolp224t1_4618_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4618_sharedsecret[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4618 = { .name = "ecdh_brainpoolp224t1_4618", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4618_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4618_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4618_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2321 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4619 for ECDH, tcId is 2322 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4619_peerpubkey[] = { 0x14, 0x2a, 0x4b, 0xfa, 0xd5, 0x53, 0x71, 0x7d, 0xfb, 0x8b, 0x3f, 0x5d, 0x7c, 0xeb, 0x70, 0xf1, 0x85, 0xef, 0x01, 0x44, 0x68, 0xa0, 0x75, 0xda, 0xec, 0xdd, 0x28, 0xfc, 0x22, 0x04, 0xe6, 0x89, 0xe9, 0xbe, 0x5a, 0x7f, 0x0c, 0xa0, 0x16, 0x4a, 0x55, 0x50, 0xbd, 0xb9, 0xea, 0x24, 0x1b, 0xeb, 0x5a, 0xbd, 0x55, 0x15, 0x4a, 0x53, 0xef, 0x2b, }; static const unsigned char ecdh_brainpoolp224t1_4619_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4619_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4619 = { .name = "ecdh_brainpoolp224t1_4619", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4619_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4619_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4619_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2322 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4620 for ECDH, tcId is 2323 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4620_peerpubkey[] = { 0x7a, 0x4d, 0x10, 0xfe, 0x31, 0x62, 0x80, 0x60, 0x5f, 0x74, 0xd4, 0xa8, 0x5e, 0xd6, 0xe6, 0x2c, 0x9d, 0x1d, 0x2c, 0x5b, 0x4e, 0x17, 0xc1, 0x9d, 0xfe, 0xd4, 0x36, 0xb2, 0x62, 0xab, 0x7d, 0x69, 0xf6, 0x4f, 0xe8, 0x0f, 0xc7, 0x89, 0x53, 0x78, 0x88, 0x56, 0xb6, 0x05, 0x69, 0x90, 0xbb, 0xe7, 0x2c, 0xa2, 0xd3, 0xf1, 0x2d, 0x8e, 0xa1, 0x7a, }; static const unsigned char ecdh_brainpoolp224t1_4620_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4620_sharedsecret[] = { 0x29, 0xb0, 0x50, 0x41, 0x83, 0x38, 0xf3, 0x2c, 0xca, 0x7d, 0x39, 0xe0, 0xed, 0xab, 0x18, 0xa3, 0x1d, 0xbf, 0x0e, 0xff, 0x52, 0x6d, 0x46, 0x8e, 0xd8, 0xad, 0x1e, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4620 = { .name = "ecdh_brainpoolp224t1_4620", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4620_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4620_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4620_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2323 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4621 for ECDH, tcId is 2324 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4621_peerpubkey[] = { 0x44, 0xe0, 0xee, 0xd2, 0x56, 0x68, 0x93, 0x25, 0x50, 0x9d, 0xd2, 0x64, 0x21, 0xa2, 0xac, 0x02, 0x4d, 0x4e, 0xf2, 0x9f, 0x9f, 0x75, 0x0c, 0x42, 0x9b, 0x2b, 0x06, 0x19, 0x72, 0x8b, 0x57, 0xd6, 0x8c, 0x69, 0xca, 0x4f, 0x91, 0xc1, 0xf0, 0xef, 0x50, 0x9e, 0xa4, 0x7b, 0xf6, 0x24, 0x0e, 0xe2, 0x90, 0x1e, 0x63, 0xec, 0xb1, 0xbf, 0x57, 0x3c, }; static const unsigned char ecdh_brainpoolp224t1_4621_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4621_sharedsecret[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4621 = { .name = "ecdh_brainpoolp224t1_4621", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4621_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4621_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4621_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2324 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4622 for ECDH, tcId is 2325 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4622_peerpubkey[] = { 0x24, 0xb3, 0x4a, 0x52, 0x26, 0x42, 0x65, 0x4d, 0x74, 0x26, 0x02, 0xdb, 0x82, 0x70, 0x98, 0x84, 0x2b, 0x08, 0x21, 0x26, 0xd7, 0xa8, 0xb9, 0x1c, 0x5f, 0xb3, 0xf2, 0x64, 0x7b, 0xc0, 0x90, 0xdb, 0x72, 0x3e, 0xe2, 0x91, 0xee, 0x1b, 0x2d, 0xe8, 0x06, 0x63, 0x6a, 0x72, 0x96, 0x2a, 0x21, 0x55, 0x2a, 0x69, 0xb7, 0x9a, 0x11, 0x37, 0xde, 0x29, }; static const unsigned char ecdh_brainpoolp224t1_4622_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4622_sharedsecret[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4622 = { .name = "ecdh_brainpoolp224t1_4622", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4622_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4622_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4622_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2325 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4623 for ECDH, tcId is 2326 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4623_peerpubkey[] = { 0xad, 0xaa, 0x9b, 0x4a, 0x60, 0xdb, 0x8c, 0xb1, 0xb9, 0xf3, 0x07, 0xfb, 0xd1, 0x98, 0x7d, 0xe5, 0x20, 0x57, 0xbf, 0x89, 0x52, 0xeb, 0xf4, 0x55, 0x5f, 0xd1, 0x24, 0x52, 0x75, 0xa6, 0xee, 0x76, 0x23, 0x86, 0x6f, 0x76, 0x84, 0xed, 0x88, 0x20, 0x57, 0xd2, 0x69, 0x75, 0x3a, 0x0c, 0xb6, 0x21, 0xf0, 0x1b, 0xfe, 0x0a, 0x33, 0x91, 0x34, 0xb3, }; static const unsigned char ecdh_brainpoolp224t1_4623_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4623_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4623 = { .name = "ecdh_brainpoolp224t1_4623", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4623_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4623_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4623_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2326 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4624 for ECDH, tcId is 2327 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4624_peerpubkey[] = { 0x41, 0x17, 0x42, 0xb6, 0x19, 0x3a, 0x7d, 0x60, 0x5d, 0x03, 0xec, 0x13, 0x0b, 0x74, 0x92, 0x26, 0x6c, 0x8a, 0xff, 0xc0, 0x83, 0xa9, 0xbe, 0xba, 0xba, 0xbd, 0xe0, 0x08, 0x17, 0x2b, 0x1a, 0xa4, 0xd7, 0x11, 0xdc, 0xc7, 0xa4, 0x41, 0x26, 0xac, 0xdd, 0x6a, 0xf3, 0x9a, 0x9b, 0x8d, 0xe3, 0x0f, 0x89, 0xf7, 0x2b, 0xf6, 0xbc, 0xe3, 0x0c, 0x5e, }; static const unsigned char ecdh_brainpoolp224t1_4624_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4624_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4624 = { .name = "ecdh_brainpoolp224t1_4624", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4624_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4624_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4624_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2327 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4625 for ECDH, tcId is 2328 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4625_peerpubkey[] = { 0xc1, 0x60, 0x1f, 0x16, 0xb5, 0x82, 0xd5, 0xee, 0x40, 0x2a, 0xce, 0xac, 0x07, 0x7b, 0x00, 0x64, 0x4e, 0x07, 0xd4, 0xc2, 0x7a, 0xd8, 0x19, 0xa4, 0x5c, 0x83, 0x37, 0x04, 0xac, 0xc8, 0x47, 0x3f, 0x1c, 0x03, 0x88, 0x7a, 0x77, 0x15, 0xd8, 0x91, 0xd9, 0xaf, 0xb6, 0x48, 0x3d, 0x66, 0xab, 0xfa, 0xb4, 0xfc, 0x80, 0x5f, 0x4e, 0x9d, 0x93, 0xfd, }; static const unsigned char ecdh_brainpoolp224t1_4625_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4625_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4625 = { .name = "ecdh_brainpoolp224t1_4625", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4625_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4625_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4625_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2328 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4626 for ECDH, tcId is 2329 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4626_peerpubkey[] = { 0x14, 0x43, 0x8a, 0x1c, 0x0a, 0xa6, 0xd6, 0x32, 0x2a, 0x9c, 0x97, 0x52, 0x52, 0x03, 0xe8, 0x32, 0x24, 0xd0, 0x9c, 0x0b, 0x6e, 0xd7, 0xf9, 0xed, 0xff, 0xc8, 0x75, 0x66, 0x69, 0x22, 0x77, 0x10, 0x5d, 0x24, 0x51, 0xc0, 0xf3, 0x4f, 0xb4, 0x0d, 0xb3, 0xae, 0x78, 0x31, 0x49, 0x07, 0x5f, 0xfd, 0xe7, 0x15, 0xe7, 0xe5, 0x6a, 0x20, 0xc5, 0x6c, }; static const unsigned char ecdh_brainpoolp224t1_4626_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4626_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4626 = { .name = "ecdh_brainpoolp224t1_4626", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4626_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4626_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4626_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2329 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4627 for ECDH, tcId is 2330 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4627_peerpubkey[] = { 0xc2, 0x82, 0x01, 0x6c, 0x41, 0x20, 0xfa, 0x64, 0xb2, 0x6a, 0x6a, 0x95, 0xd4, 0x2a, 0x65, 0xd8, 0x50, 0x28, 0xa8, 0x22, 0x1d, 0x1b, 0x58, 0xb5, 0x3b, 0x53, 0xcc, 0x26, 0xaf, 0xf7, 0xf3, 0x65, 0x36, 0xc6, 0x7b, 0x2b, 0xf6, 0xb7, 0x28, 0x23, 0x11, 0x03, 0x9b, 0x46, 0xa5, 0xef, 0x68, 0x8f, 0xc0, 0x07, 0x26, 0x7d, 0x34, 0x2f, 0x72, 0x6f, }; static const unsigned char ecdh_brainpoolp224t1_4627_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4627_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4627 = { .name = "ecdh_brainpoolp224t1_4627", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4627_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4627_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4627_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2330 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4628 for ECDH, tcId is 2331 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4628_peerpubkey[] = { 0x23, 0x1c, 0xe0, 0x63, 0x78, 0x89, 0xa0, 0xce, 0x60, 0x58, 0x20, 0x70, 0xc2, 0xbb, 0x26, 0x69, 0xef, 0x18, 0x8f, 0xb3, 0xdc, 0x4f, 0xa5, 0x13, 0x0e, 0x16, 0xb8, 0xa9, 0xba, 0xd1, 0xca, 0x30, 0xf0, 0xf3, 0xcc, 0x6f, 0x6a, 0xab, 0xa7, 0xd2, 0x7f, 0xf4, 0x74, 0x21, 0x56, 0x21, 0xbd, 0xc2, 0x18, 0x02, 0xb0, 0xff, 0xd7, 0xa2, 0x17, 0x8c, }; static const unsigned char ecdh_brainpoolp224t1_4628_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4628_sharedsecret[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4628 = { .name = "ecdh_brainpoolp224t1_4628", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4628_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4628_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4628_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2331 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4629 for ECDH, tcId is 2332 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4629_peerpubkey[] = { 0x20, 0x2f, 0x7e, 0xa2, 0xe5, 0x13, 0x1a, 0x84, 0xc0, 0x33, 0xfc, 0x2c, 0x08, 0xd3, 0x49, 0x7e, 0x02, 0xc8, 0xf9, 0x3f, 0x9f, 0xba, 0xc0, 0x81, 0xf1, 0x78, 0xe3, 0x9c, 0x30, 0xdf, 0x87, 0xd4, 0x6a, 0x8b, 0xd6, 0x10, 0x35, 0x25, 0x96, 0x10, 0x86, 0x9c, 0x1c, 0xc2, 0x4a, 0x20, 0x82, 0xf8, 0x94, 0xe1, 0x83, 0xff, 0xa9, 0xfe, 0x2a, 0xa0, }; static const unsigned char ecdh_brainpoolp224t1_4629_privkey[] = { 0x13, 0x3b, 0xa3, 0xcd, 0xfd, 0xd2, 0xb6, 0xf8, 0xe1, 0x2c, 0x4e, 0xfb, 0x84, 0x4d, 0xd1, 0xba, 0x60, 0x21, 0x2b, 0x3c, 0x4a, 0xfe, 0x64, 0x76, 0xf1, 0xef, 0xa1, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4629_sharedsecret[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4629 = { .name = "ecdh_brainpoolp224t1_4629", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4629_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4629_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4629_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for shared secret, tcId is 2332 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4630 for ECDH, tcId is 2333 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4630_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x63, 0x3b, 0x4b, 0xd9, 0x54, 0xcd, 0xda, 0xef, 0xfe, 0xfa, 0x7a, 0x75, 0xe8, 0x1d, 0xaa, 0xc7, 0x86, 0x82, 0xfc, 0x46, 0xc2, 0xd7, 0xee, 0x96, 0x48, 0xd3, 0x2a, 0xb3, }; static const unsigned char ecdh_brainpoolp224t1_4630_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4630_sharedsecret[] = { 0x91, 0xd2, 0x28, 0xa1, 0x1d, 0x5e, 0xff, 0x2c, 0xcc, 0x09, 0x40, 0x26, 0x5b, 0xb5, 0xef, 0x25, 0xee, 0xbe, 0xbd, 0x50, 0xef, 0xa2, 0xdd, 0x1a, 0x29, 0x50, 0x8a, 0x50, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4630 = { .name = "ecdh_brainpoolp224t1_4630", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4630_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4630_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4630_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2333 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4631 for ECDH, tcId is 2334 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4631_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x51, 0xb3, 0xe8, 0x98, 0x4f, 0xc0, 0xe7, 0x6d, 0x7c, 0x08, 0x30, 0xaf, 0x45, 0x5e, 0x3a, 0x70, 0x9f, 0x5e, 0xe3, 0x63, 0x70, 0x8e, 0x92, 0x94, 0x2a, 0xdb, 0xb1, 0xe4, }; static const unsigned char ecdh_brainpoolp224t1_4631_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4631_sharedsecret[] = { 0x00, 0x47, 0xe1, 0x81, 0x1a, 0x23, 0x71, 0xf1, 0x52, 0x13, 0x78, 0xf0, 0xf1, 0x6d, 0x43, 0x07, 0x07, 0x7e, 0x66, 0x2f, 0xba, 0xa8, 0x3a, 0x3f, 0x96, 0xfc, 0xf5, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4631 = { .name = "ecdh_brainpoolp224t1_4631", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4631_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4631_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4631_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2334 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4632 for ECDH, tcId is 2335 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4632_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6a, 0xe9, 0xab, 0x22, 0xa7, 0xa3, 0xd4, 0xf4, 0xbc, 0xd2, 0x7f, 0xad, 0x3c, 0x1b, 0x44, 0xd8, 0x58, 0xe7, 0x50, 0x81, 0xa9, 0xca, 0x61, 0xf6, 0x20, 0x71, 0x99, 0x94, }; static const unsigned char ecdh_brainpoolp224t1_4632_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4632_sharedsecret[] = { 0x60, 0x80, 0x52, 0xa7, 0x3a, 0x08, 0x5e, 0x0d, 0x07, 0x70, 0x02, 0xd9, 0x89, 0x40, 0x17, 0xa7, 0x5c, 0x63, 0x64, 0x47, 0x14, 0xa8, 0xbc, 0xae, 0x15, 0x00, 0x21, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4632 = { .name = "ecdh_brainpoolp224t1_4632", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4632_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4632_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4632_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2335 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4633 for ECDH, tcId is 2336 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4633_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x21, 0x7c, 0x35, 0x68, 0xa9, 0x65, 0xf2, 0xa5, 0x5c, 0xc9, 0x01, 0xe3, 0x57, 0xa1, 0x57, 0x56, 0x28, 0x77, 0x93, 0x71, 0xb5, 0xac, 0x38, 0xf5, 0x89, 0xd9, 0xe3, 0xe1, }; static const unsigned char ecdh_brainpoolp224t1_4633_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4633_sharedsecret[] = { 0xae, 0x79, 0xa8, 0x14, 0x57, 0x5b, 0x0c, 0xda, 0x00, 0x6f, 0xf1, 0xf2, 0xf6, 0x17, 0xff, 0x48, 0xe9, 0x9d, 0x68, 0x88, 0x6b, 0x2b, 0xeb, 0x39, 0x4d, 0xac, 0x43, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4633 = { .name = "ecdh_brainpoolp224t1_4633", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4633_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4633_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4633_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2336 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4634 for ECDH, tcId is 2337 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4634_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5b, 0x21, 0xef, 0x64, 0x11, 0x40, 0x94, 0x43, 0xe8, 0x3b, 0x79, 0xd2, 0x01, 0x49, 0x2e, 0xff, 0x43, 0xeb, 0x8e, 0x58, 0xf2, 0xda, 0xb7, 0x1a, 0x15, 0xfa, 0xcc, 0x55, }; static const unsigned char ecdh_brainpoolp224t1_4634_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4634_sharedsecret[] = { 0x09, 0xe3, 0xe1, 0x69, 0xb2, 0xff, 0x1d, 0xd5, 0xe6, 0xa6, 0xc0, 0xe7, 0xda, 0x70, 0xcc, 0x9b, 0x78, 0x1d, 0x4a, 0xd7, 0x42, 0xcd, 0xa7, 0x38, 0x8e, 0xe0, 0x17, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4634 = { .name = "ecdh_brainpoolp224t1_4634", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4634_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4634_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4634_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2337 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4635 for ECDH, tcId is 2338 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4635_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x14, 0x57, 0x99, 0xe8, 0x35, 0xa0, 0x04, 0xc3, 0xcf, 0x2d, 0x39, 0x18, 0xce, 0x3f, 0x47, 0x71, 0x56, 0x1d, 0x08, 0xdb, 0xcc, 0x7d, 0x73, 0xb4, 0x52, 0x45, 0x6c, 0xa7, }; static const unsigned char ecdh_brainpoolp224t1_4635_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4635_sharedsecret[] = { 0x9c, 0x33, 0xc2, 0xf0, 0x8f, 0x8b, 0x10, 0xad, 0xe7, 0x8a, 0xf8, 0xb7, 0xed, 0x02, 0x1b, 0x81, 0x5c, 0xeb, 0xef, 0x08, 0xab, 0x05, 0x06, 0xd7, 0x38, 0x92, 0xfb, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4635 = { .name = "ecdh_brainpoolp224t1_4635", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4635_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4635_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4635_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2338 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4636 for ECDH, tcId is 2339 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4636_peerpubkey[] = { 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x1e, 0xe0, 0x3a, 0x1b, 0x1a, 0x6f, 0xc6, 0x6d, 0xba, 0x92, 0x94, 0x59, 0xe5, 0x22, 0x6c, 0xc4, 0xb9, 0xb9, 0x64, 0x1c, 0x2f, 0xe0, 0xb7, 0x2f, 0x1d, 0xca, 0x8a, 0xc6, }; static const unsigned char ecdh_brainpoolp224t1_4636_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4636_sharedsecret[] = { 0x0c, 0x34, 0x88, 0x6d, 0x6c, 0x6d, 0xe7, 0x7d, 0xd6, 0xd3, 0x7c, 0xa7, 0x0d, 0x4f, 0x29, 0x5a, 0x37, 0x1f, 0xb5, 0x27, 0xc8, 0x53, 0x24, 0x8b, 0xa4, 0xb0, 0xe9, 0xbe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4636 = { .name = "ecdh_brainpoolp224t1_4636", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4636_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4636_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4636_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2339 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4637 for ECDH, tcId is 2340 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4637_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x6a, 0x2f, 0x16, 0x2b, 0x62, 0xb8, 0x80, 0x07, 0x4a, 0x87, 0xc3, 0x7a, 0xa8, 0x8e, 0x4d, 0xd0, 0x7c, 0x26, 0x0e, 0x3d, 0x19, 0x25, 0x60, 0x2b, 0x42, 0x65, 0x43, 0x11, }; static const unsigned char ecdh_brainpoolp224t1_4637_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4637_sharedsecret[] = { 0x80, 0x01, 0xe5, 0x76, 0x33, 0x00, 0xe1, 0x74, 0x1a, 0x6a, 0x56, 0x2e, 0xca, 0x41, 0x90, 0x50, 0x37, 0x2b, 0x0a, 0xa9, 0x7d, 0x78, 0x3a, 0x4c, 0xd6, 0x06, 0xf3, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4637 = { .name = "ecdh_brainpoolp224t1_4637", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4637_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4637_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4637_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2340 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4638 for ECDH, tcId is 2341 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4638_peerpubkey[] = { 0x29, 0xb0, 0x50, 0x41, 0x83, 0x38, 0xf3, 0x2c, 0xca, 0x7d, 0x39, 0xe0, 0xed, 0xab, 0x18, 0xa3, 0x1d, 0xbf, 0x0e, 0xff, 0x52, 0x6d, 0x46, 0x8e, 0xd8, 0xad, 0x1e, 0x6f, 0x63, 0xd4, 0x99, 0x91, 0x55, 0xf6, 0x3c, 0x94, 0x9b, 0x85, 0x3c, 0xac, 0x10, 0xb6, 0x92, 0x9a, 0x3b, 0xba, 0xa1, 0x94, 0x99, 0x8a, 0x63, 0x01, 0x8b, 0xf1, 0x4e, 0xc7, }; static const unsigned char ecdh_brainpoolp224t1_4638_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4638_sharedsecret[] = { 0x53, 0x61, 0x79, 0x9e, 0x8d, 0x0d, 0xfd, 0xb1, 0xa5, 0xa5, 0x4e, 0x55, 0x3b, 0x08, 0xff, 0x8f, 0x9c, 0x7e, 0x8a, 0x1d, 0x71, 0xf7, 0xd5, 0x48, 0x51, 0xc6, 0x45, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4638 = { .name = "ecdh_brainpoolp224t1_4638", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4638_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4638_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4638_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2341 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4639 for ECDH, tcId is 2342 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4639_peerpubkey[] = { 0x30, 0x97, 0x5f, 0x62, 0x6e, 0xbd, 0x46, 0xb0, 0x9e, 0x41, 0x35, 0x13, 0xa8, 0x97, 0xf6, 0xb7, 0x4d, 0xe5, 0x70, 0x7b, 0xbb, 0xeb, 0x7a, 0x3d, 0x8c, 0x60, 0xd0, 0xb9, 0x56, 0xb6, 0xf9, 0xb1, 0xff, 0x17, 0x85, 0x34, 0x4b, 0x26, 0xb4, 0x99, 0x50, 0x7f, 0x19, 0x2c, 0x57, 0xb7, 0x7e, 0xa6, 0xca, 0xdf, 0x6b, 0x6b, 0x21, 0xb9, 0xfa, 0x4c, }; static const unsigned char ecdh_brainpoolp224t1_4639_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4639_sharedsecret[] = { 0xab, 0xd8, 0x06, 0xea, 0xa7, 0x93, 0x9b, 0x6d, 0xd8, 0x90, 0x8b, 0x6f, 0x2e, 0x6a, 0x48, 0x92, 0x9d, 0x85, 0x96, 0x19, 0x46, 0xd8, 0x9d, 0x01, 0xab, 0x05, 0x5f, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4639 = { .name = "ecdh_brainpoolp224t1_4639", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4639_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4639_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4639_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2342 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4640 for ECDH, tcId is 2343 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4640_peerpubkey[] = { 0x41, 0x47, 0x8d, 0x4c, 0x20, 0x7e, 0x3f, 0xe1, 0xae, 0xf7, 0xfb, 0xcc, 0x34, 0x22, 0x3f, 0x39, 0xb8, 0x6f, 0x63, 0x4d, 0x97, 0x89, 0x21, 0xec, 0xb4, 0x0a, 0x51, 0x36, 0x32, 0x7b, 0x1e, 0x52, 0x14, 0x84, 0xa6, 0xfc, 0x30, 0x03, 0x3d, 0xe8, 0x22, 0x93, 0xe7, 0x16, 0x9c, 0x42, 0x90, 0xd8, 0xff, 0x47, 0xb7, 0xd4, 0x4b, 0x40, 0xaa, 0x94, }; static const unsigned char ecdh_brainpoolp224t1_4640_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4640_sharedsecret[] = { 0x0d, 0x1b, 0x94, 0x88, 0xc7, 0xb9, 0x97, 0x6b, 0x2e, 0x2c, 0xa6, 0x12, 0x20, 0x4b, 0x6e, 0x2a, 0xbc, 0xc6, 0x84, 0x2c, 0x5b, 0x44, 0xda, 0x76, 0x2c, 0x11, 0x66, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4640 = { .name = "ecdh_brainpoolp224t1_4640", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4640_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4640_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4640_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2343 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4641 for ECDH, tcId is 2344 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4641_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x01, 0x12, 0xbe, 0x7e, 0xdb, 0xa6, 0x5e, 0xe1, 0x4a, 0x56, 0xc2, 0x49, 0x4f, 0x0b, 0x0f, 0x50, 0x18, 0xcd, 0x6f, 0x99, 0x79, 0x19, 0x29, 0x66, 0x55, 0xda, 0x42, 0x97, 0xb2, }; static const unsigned char ecdh_brainpoolp224t1_4641_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4641_sharedsecret[] = { 0x46, 0x42, 0x93, 0xa0, 0x2d, 0x78, 0xbb, 0x02, 0x49, 0x54, 0x70, 0x41, 0x18, 0x6a, 0xb4, 0xa0, 0x2f, 0x77, 0xd2, 0x3a, 0xdc, 0xae, 0xf3, 0x32, 0x5c, 0x51, 0x76, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4641 = { .name = "ecdh_brainpoolp224t1_4641", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4641_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4641_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4641_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2344 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4642 for ECDH, tcId is 2345 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4642_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x69, 0xb3, 0xc4, 0x11, 0x88, 0x55, 0x03, 0xc9, 0x34, 0xb4, 0x16, 0xb7, 0xe8, 0x1b, 0x54, 0xc8, 0xe8, 0x8e, 0xa3, 0x48, 0x2c, 0xff, 0xf0, 0xe9, 0xbb, 0x26, 0xe8, 0xfb, }; static const unsigned char ecdh_brainpoolp224t1_4642_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4642_sharedsecret[] = { 0x62, 0xec, 0x4b, 0xa9, 0xe8, 0xbc, 0x1b, 0x56, 0x08, 0x5d, 0xa6, 0x7e, 0x48, 0x18, 0x36, 0xf1, 0xc4, 0xcd, 0xe0, 0xc4, 0xf5, 0x69, 0x41, 0x99, 0xf4, 0x52, 0xa6, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4642 = { .name = "ecdh_brainpoolp224t1_4642", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4642_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4642_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4642_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2345 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4643 for ECDH, tcId is 2346 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4643_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x27, 0xa1, 0x29, 0x7c, 0x7a, 0x38, 0xd1, 0xb4, 0xe7, 0xee, 0x21, 0xd4, 0x9e, 0x9f, 0x43, 0x64, 0x64, 0x33, 0xe2, 0x21, 0xf8, 0x54, 0x1e, 0x26, 0x1d, 0x96, 0x95, 0xbe, }; static const unsigned char ecdh_brainpoolp224t1_4643_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4643_sharedsecret[] = { 0x54, 0xd2, 0x39, 0xa3, 0xd2, 0x51, 0x13, 0x0d, 0x83, 0xc8, 0x12, 0xd0, 0x97, 0x37, 0x77, 0xfe, 0xcb, 0xad, 0x5c, 0x12, 0xf2, 0x6f, 0xff, 0x2d, 0x6d, 0x65, 0xa2, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4643 = { .name = "ecdh_brainpoolp224t1_4643", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4643_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4643_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4643_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2346 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4644 for ECDH, tcId is 2347 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4644_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x37, 0x47, 0xd1, 0xfe, 0x6b, 0xf9, 0x7c, 0xc4, 0x70, 0xbd, 0x31, 0x17, 0x36, 0x64, 0x4e, 0xbf, 0xfa, 0x8e, 0x33, 0xde, 0xf7, 0x22, 0xd5, 0x72, 0x90, 0x6b, 0xe4, 0xd0, }; static const unsigned char ecdh_brainpoolp224t1_4644_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4644_sharedsecret[] = { 0xbe, 0xf2, 0xf0, 0x75, 0x6b, 0xe8, 0x83, 0x62, 0x99, 0x1c, 0x5b, 0x94, 0x20, 0xf5, 0xed, 0x09, 0xf0, 0x75, 0xbf, 0x15, 0x40, 0xa0, 0x59, 0xb8, 0x5a, 0x62, 0x15, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4644 = { .name = "ecdh_brainpoolp224t1_4644", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4644_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4644_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4644_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2347 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4645 for ECDH, tcId is 2348 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4645_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x33, 0x9e, 0x3b, 0xfd, 0x7b, 0x12, 0x91, 0x87, 0x22, 0xa6, 0xf7, 0xfa, 0xf3, 0x8f, 0x28, 0x70, 0x3a, 0x63, 0x57, 0x57, 0xa9, 0x92, 0xb3, 0x93, 0xe5, 0x20, 0x52, 0xe9, }; static const unsigned char ecdh_brainpoolp224t1_4645_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4645_sharedsecret[] = { 0x55, 0xaf, 0x68, 0x68, 0xee, 0xea, 0xdf, 0x94, 0xc0, 0x6c, 0xf9, 0x40, 0x7b, 0x3b, 0x5f, 0x5d, 0x2b, 0x71, 0x5f, 0x47, 0x4d, 0x51, 0x8f, 0x67, 0x0c, 0x3c, 0xb9, 0xaf, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4645 = { .name = "ecdh_brainpoolp224t1_4645", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4645_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4645_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4645_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2348 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4646 for ECDH, tcId is 2349 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4646_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfd, 0x63, 0x3b, 0x4b, 0xd9, 0x54, 0xcd, 0xda, 0xef, 0xfe, 0xfa, 0x7a, 0x75, 0xe8, 0x1d, 0xaa, 0xc7, 0x86, 0x82, 0xfc, 0x46, 0xc2, 0xd7, 0xee, 0x96, 0x48, 0xd3, 0x2a, 0xb3, }; static const unsigned char ecdh_brainpoolp224t1_4646_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4646_sharedsecret[] = { 0x97, 0x37, 0x9b, 0x47, 0xcd, 0xb0, 0x8a, 0x1d, 0xee, 0xc6, 0x7c, 0xf2, 0xa3, 0x2b, 0xfb, 0x4b, 0x7f, 0x7c, 0x95, 0xc2, 0xa2, 0x4c, 0x1f, 0x4e, 0xb0, 0x02, 0xae, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4646 = { .name = "ecdh_brainpoolp224t1_4646", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4646_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4646_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4646_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2349 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4647 for ECDH, tcId is 2350 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4647_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xb3, 0xe8, 0x98, 0x4f, 0xc0, 0xe7, 0x6d, 0x7c, 0x08, 0x30, 0xaf, 0x45, 0x5e, 0x3a, 0x70, 0x9f, 0x5e, 0xe3, 0x63, 0x70, 0x8e, 0x92, 0x94, 0x2a, 0xdb, 0xb1, 0xe4, }; static const unsigned char ecdh_brainpoolp224t1_4647_privkey[] = { 0xae, 0x3a, 0xd0, 0x2b, 0x04, 0x24, 0x45, 0xf5, 0xed, 0xd4, 0x85, 0xa9, 0x37, 0x02, 0x86, 0x49, 0x8b, 0x83, 0xb8, 0x2c, 0xa6, 0x70, 0x5f, 0xb0, 0x94, 0x25, 0xdd, 0x35, }; static const unsigned char ecdh_brainpoolp224t1_4647_sharedsecret[] = { 0x49, 0x9e, 0xa1, 0xf8, 0x31, 0xf2, 0xb2, 0xa2, 0x9a, 0xe4, 0x55, 0x19, 0xb2, 0xfa, 0x32, 0x13, 0xd9, 0x0e, 0x7c, 0x39, 0x05, 0xfd, 0x95, 0xbb, 0x81, 0x33, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4647 = { .name = "ecdh_brainpoolp224t1_4647", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4647_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4647_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4647_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2350 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4648 for ECDH, tcId is 2351 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4648_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x63, 0x3b, 0x4b, 0xd9, 0x54, 0xcd, 0xda, 0xef, 0xfe, 0xfa, 0x7a, 0x75, 0xe8, 0x1d, 0xaa, 0xc7, 0x86, 0x82, 0xfc, 0x46, 0xc2, 0xd7, 0xee, 0x96, 0x48, 0xd3, 0x2a, 0xb3, }; static const unsigned char ecdh_brainpoolp224t1_4648_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4648_sharedsecret[] = { 0x37, 0x6a, 0x2b, 0x46, 0x91, 0xc6, 0xfd, 0x9b, 0x75, 0xfc, 0xea, 0xcb, 0xdd, 0xd6, 0x81, 0x46, 0x7e, 0x34, 0x96, 0x52, 0x79, 0x17, 0xd4, 0xa0, 0x1e, 0x3e, 0x60, 0x14, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4648 = { .name = "ecdh_brainpoolp224t1_4648", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4648_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4648_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4648_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2351 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4649 for ECDH, tcId is 2352 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4649_peerpubkey[] = { 0x51, 0xd5, 0x70, 0xd5, 0x27, 0xd5, 0x80, 0x91, 0xb6, 0xbf, 0xfe, 0x0f, 0x1b, 0x6e, 0xfa, 0x5d, 0xc7, 0x9b, 0xe5, 0x48, 0xa7, 0xaf, 0xcd, 0x28, 0x12, 0x6a, 0x41, 0x7c, 0x69, 0x9d, 0xf8, 0x2d, 0x6b, 0x9f, 0xb2, 0x01, 0xbd, 0xba, 0x0e, 0xa0, 0x0d, 0x89, 0x2d, 0x06, 0xea, 0xbd, 0x0d, 0x4c, 0xbd, 0x1f, 0x39, 0xf1, 0x88, 0xb2, 0xd2, 0x3f, }; static const unsigned char ecdh_brainpoolp224t1_4649_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4649_sharedsecret[] = { 0x68, 0x23, 0x3c, 0xba, 0xc1, 0x48, 0x87, 0xc6, 0x0c, 0xf2, 0xf1, 0x97, 0x7a, 0x8c, 0x4d, 0xf1, 0xab, 0xde, 0x28, 0xe5, 0x60, 0x92, 0x19, 0x77, 0xd7, 0x80, 0x99, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4649 = { .name = "ecdh_brainpoolp224t1_4649", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4649_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4649_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4649_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2352 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4650 for ECDH, tcId is 2353 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4650_peerpubkey[] = { 0x43, 0x87, 0xbe, 0x56, 0xdd, 0x59, 0xe9, 0x2c, 0xd9, 0x61, 0xcc, 0xbd, 0x1a, 0x89, 0x9e, 0xe0, 0xcc, 0xbc, 0xe7, 0x07, 0x97, 0x3a, 0xed, 0x3d, 0x46, 0x3d, 0xc5, 0xa1, 0xae, 0xa6, 0xb7, 0x75, 0x70, 0x12, 0xf9, 0x95, 0xd4, 0xe8, 0x2f, 0x8d, 0xd8, 0x97, 0x77, 0x56, 0xfb, 0xaa, 0x58, 0x4f, 0x1b, 0x55, 0x53, 0xde, 0x4e, 0x10, 0x46, 0x1f, }; static const unsigned char ecdh_brainpoolp224t1_4650_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4650_sharedsecret[] = { 0x56, 0x86, 0xbf, 0x1c, 0xf6, 0x39, 0xfc, 0xf0, 0x9e, 0x10, 0x85, 0xdf, 0x95, 0x42, 0x7c, 0x7a, 0x6c, 0x87, 0xf5, 0xbc, 0x35, 0xca, 0x8f, 0x92, 0x91, 0x14, 0xf1, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4650 = { .name = "ecdh_brainpoolp224t1_4650", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4650_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4650_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4650_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2353 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4651 for ECDH, tcId is 2354 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4651_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x51, 0xb3, 0xe8, 0x98, 0x4f, 0xc0, 0xe7, 0x6d, 0x7c, 0x08, 0x30, 0xaf, 0x45, 0x5e, 0x3a, 0x70, 0x9f, 0x5e, 0xe3, 0x63, 0x70, 0x8e, 0x92, 0x94, 0x2a, 0xdb, 0xb1, 0xe4, }; static const unsigned char ecdh_brainpoolp224t1_4651_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4651_sharedsecret[] = { 0x27, 0x57, 0x87, 0x7f, 0x4a, 0xfd, 0x4d, 0x16, 0x37, 0x1a, 0x2c, 0x61, 0xcc, 0xa7, 0x4d, 0x54, 0x14, 0xca, 0x41, 0x2e, 0x29, 0x00, 0x1c, 0x92, 0xc7, 0xd8, 0xb5, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4651 = { .name = "ecdh_brainpoolp224t1_4651", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4651_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4651_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4651_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2354 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4652 for ECDH, tcId is 2355 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4652_peerpubkey[] = { 0x9b, 0xad, 0xa3, 0x0a, 0x75, 0xcd, 0x8b, 0x3e, 0x69, 0xa7, 0x01, 0xe0, 0x57, 0xab, 0x35, 0x9a, 0x15, 0x38, 0x33, 0xbf, 0xcf, 0x91, 0x9a, 0x22, 0xc2, 0xdb, 0x70, 0x43, 0x79, 0x27, 0x42, 0x44, 0xb8, 0xe9, 0xd7, 0x32, 0x0d, 0x97, 0xf3, 0x91, 0xdf, 0xce, 0xd7, 0x60, 0x06, 0x56, 0xce, 0xd4, 0x7b, 0x43, 0x81, 0xf3, 0xb6, 0x61, 0x97, 0x80, }; static const unsigned char ecdh_brainpoolp224t1_4652_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4652_sharedsecret[] = { 0x74, 0x12, 0x74, 0x9d, 0xb4, 0x17, 0x02, 0x61, 0x90, 0xb0, 0xef, 0x2e, 0xdd, 0xc2, 0xb6, 0xdc, 0x54, 0x0b, 0xc9, 0x05, 0x2b, 0x2e, 0x38, 0x1c, 0x51, 0x84, 0x52, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4652 = { .name = "ecdh_brainpoolp224t1_4652", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4652_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4652_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4652_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2355 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4653 for ECDH, tcId is 2356 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4653_peerpubkey[] = { 0x20, 0xb5, 0x92, 0xac, 0xa0, 0xa6, 0x76, 0x39, 0xaa, 0x42, 0x1e, 0x76, 0x7b, 0x61, 0x13, 0xc6, 0xbc, 0xe8, 0x55, 0xa3, 0x05, 0x5b, 0x83, 0x4b, 0x01, 0x85, 0xfc, 0x89, 0x25, 0x97, 0x91, 0xa3, 0x5f, 0x4f, 0x0b, 0xc2, 0x1c, 0x2b, 0x67, 0x00, 0x94, 0xb7, 0x30, 0x9d, 0xe6, 0xe2, 0xbf, 0x99, 0x85, 0x84, 0xfa, 0x1a, 0x2a, 0x18, 0x2e, 0x97, }; static const unsigned char ecdh_brainpoolp224t1_4653_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4653_sharedsecret[] = { 0xaf, 0xcb, 0x85, 0x60, 0x56, 0x0a, 0xed, 0xaf, 0x23, 0x1e, 0x58, 0xe7, 0xc6, 0xc7, 0xa8, 0xb6, 0xb1, 0xcc, 0xf9, 0xa2, 0xa6, 0xbb, 0x03, 0xd9, 0x7f, 0x51, 0x72, 0x71, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4653 = { .name = "ecdh_brainpoolp224t1_4653", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4653_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4653_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4653_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2356 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4654 for ECDH, tcId is 2357 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4654_peerpubkey[] = { 0x43, 0x28, 0xfe, 0xc6, 0xd2, 0x91, 0x97, 0xd8, 0xfc, 0x7c, 0xf9, 0x55, 0x82, 0x4d, 0x54, 0xc7, 0x41, 0x7f, 0xa9, 0xbc, 0x1e, 0xf1, 0x2a, 0xb6, 0x24, 0x51, 0x2c, 0x22, 0x96, 0x1d, 0x82, 0x09, 0x0b, 0xd4, 0xc7, 0xfb, 0xa6, 0x50, 0xeb, 0xeb, 0x2d, 0xcf, 0x89, 0x81, 0x11, 0x30, 0x16, 0x51, 0x46, 0x99, 0x79, 0x3a, 0xf6, 0xe2, 0x8d, 0xa5, }; static const unsigned char ecdh_brainpoolp224t1_4654_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4654_sharedsecret[] = { 0x98, 0x3d, 0xf2, 0x54, 0x6e, 0x1e, 0x4c, 0x43, 0x20, 0x3c, 0x70, 0xdd, 0xd9, 0x4f, 0xe2, 0xdf, 0xfe, 0x5b, 0x1a, 0xe6, 0x55, 0xc2, 0xd2, 0xae, 0xd6, 0x02, 0x4d, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4654 = { .name = "ecdh_brainpoolp224t1_4654", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4654_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4654_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4654_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2357 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4655 for ECDH, tcId is 2358 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4655_peerpubkey[] = { 0xc8, 0x96, 0x61, 0x99, 0x2f, 0xe9, 0x56, 0xbb, 0x1b, 0x26, 0xdf, 0x9c, 0x69, 0xea, 0x4f, 0xeb, 0x24, 0xf5, 0x54, 0xc1, 0x4d, 0x0b, 0x7a, 0x70, 0x45, 0x5f, 0x4c, 0x24, 0x59, 0xd7, 0xfc, 0x39, 0x72, 0x3f, 0xc3, 0x68, 0xb2, 0x68, 0x39, 0x4f, 0x88, 0x43, 0x4e, 0x02, 0x3f, 0xdd, 0xf1, 0x8f, 0x75, 0x40, 0xfe, 0xce, 0x0d, 0xfa, 0x31, 0xec, }; static const unsigned char ecdh_brainpoolp224t1_4655_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4655_sharedsecret[] = { 0x81, 0xca, 0x76, 0x6b, 0x26, 0x9c, 0xe4, 0x01, 0x26, 0x1e, 0xe0, 0x4d, 0xee, 0x4e, 0x1b, 0xcf, 0xde, 0x40, 0x60, 0xfd, 0xe8, 0x80, 0xf1, 0x19, 0x34, 0xef, 0x0a, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4655 = { .name = "ecdh_brainpoolp224t1_4655", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4655_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4655_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4655_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2358 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4656 for ECDH, tcId is 2359 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4656_peerpubkey[] = { 0xab, 0x91, 0x74, 0x5a, 0xd3, 0x58, 0x7e, 0xdb, 0xf0, 0x30, 0x20, 0x59, 0xc2, 0xad, 0x07, 0xaa, 0x9a, 0x66, 0x9b, 0x31, 0x97, 0x1d, 0x2e, 0x3d, 0x0c, 0x84, 0x05, 0x94, 0x39, 0xd0, 0xde, 0xd8, 0x1c, 0x59, 0x47, 0x15, 0x95, 0x1a, 0xe8, 0x18, 0x7c, 0xa7, 0xed, 0x90, 0x76, 0xcb, 0x6d, 0xb3, 0xb9, 0x42, 0x67, 0xb3, 0xc3, 0x32, 0xbf, 0x92, }; static const unsigned char ecdh_brainpoolp224t1_4656_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4656_sharedsecret[] = { 0x2e, 0x36, 0x40, 0xa8, 0xce, 0x0c, 0x00, 0x8f, 0x24, 0xd0, 0xc6, 0xe4, 0x72, 0x9b, 0x2e, 0x9e, 0x56, 0x5a, 0xdf, 0xf2, 0xe2, 0x15, 0xa3, 0x28, 0xc2, 0xb5, 0xec, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4656 = { .name = "ecdh_brainpoolp224t1_4656", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4656_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4656_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4656_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2359 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4657 for ECDH, tcId is 2360 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4657_peerpubkey[] = { 0x1e, 0x14, 0x69, 0x97, 0xc4, 0xc2, 0xf7, 0x4a, 0x3d, 0x33, 0x35, 0x88, 0x13, 0x1e, 0x32, 0x4f, 0xeb, 0xcd, 0x24, 0xd1, 0xf4, 0xec, 0x0f, 0x35, 0xc6, 0x2e, 0xbe, 0x53, 0x57, 0x39, 0xe9, 0xda, 0x82, 0x4e, 0xee, 0x1f, 0x5c, 0xfe, 0x1b, 0xf4, 0x66, 0xa9, 0x76, 0x56, 0x19, 0x2e, 0xa3, 0x5d, 0x11, 0x2a, 0x2f, 0x1e, 0xbd, 0x99, 0x5a, 0x65, }; static const unsigned char ecdh_brainpoolp224t1_4657_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4657_sharedsecret[] = { 0x51, 0x47, 0x5e, 0x33, 0x45, 0x55, 0x56, 0xdb, 0xff, 0x7e, 0xf6, 0xaf, 0x16, 0x01, 0x11, 0x20, 0xf8, 0xe3, 0x45, 0x3f, 0x9a, 0x2c, 0x0c, 0xd6, 0x41, 0x16, 0xe8, 0xa5, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4657 = { .name = "ecdh_brainpoolp224t1_4657", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4657_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4657_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4657_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2360 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4658 for ECDH, tcId is 2361 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4658_peerpubkey[] = { 0xd0, 0xbf, 0x0f, 0x3f, 0xab, 0x35, 0xbb, 0xaa, 0xfc, 0xda, 0x77, 0xbc, 0x92, 0x42, 0x05, 0x7c, 0x59, 0x0d, 0xea, 0xb4, 0x79, 0x8e, 0x5d, 0x9b, 0x49, 0x99, 0xca, 0x0e, 0x4f, 0xd9, 0x2b, 0xda, 0x26, 0x09, 0x4f, 0x37, 0x8a, 0xdf, 0x0d, 0xe9, 0x7a, 0x9c, 0xa1, 0x2e, 0x8d, 0x9d, 0x94, 0xea, 0xa1, 0xff, 0x87, 0x4a, 0xc5, 0x9d, 0x11, 0x96, }; static const unsigned char ecdh_brainpoolp224t1_4658_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4658_sharedsecret[] = { 0x13, 0x4f, 0x45, 0x73, 0xe8, 0xa7, 0xad, 0x63, 0xe2, 0x9d, 0xad, 0x31, 0x00, 0x42, 0x6e, 0xe0, 0xa1, 0x73, 0xcb, 0x9c, 0x38, 0x6d, 0xa8, 0x17, 0xe9, 0xb8, 0x45, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4658 = { .name = "ecdh_brainpoolp224t1_4658", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4658_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4658_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4658_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2361 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4659 for ECDH, tcId is 2362 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4659_peerpubkey[] = { 0x63, 0xa7, 0xfd, 0x31, 0x1e, 0xaa, 0xd0, 0x3e, 0x5b, 0x0d, 0x15, 0xd8, 0x81, 0xad, 0x3c, 0x1f, 0xcd, 0x98, 0xa7, 0x03, 0x4d, 0xb3, 0x70, 0xa8, 0x24, 0x76, 0xea, 0x1c, 0x12, 0x5a, 0xd8, 0xc6, 0xb5, 0x91, 0xa9, 0x30, 0xac, 0xb7, 0x66, 0x13, 0xc2, 0xe5, 0x32, 0x2a, 0x3e, 0x72, 0x8c, 0x2e, 0x9e, 0x64, 0xa5, 0x7c, 0x01, 0x10, 0xfa, 0x23, }; static const unsigned char ecdh_brainpoolp224t1_4659_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4659_sharedsecret[] = { 0x29, 0x86, 0x28, 0x57, 0xfc, 0x87, 0xdd, 0x3a, 0xd7, 0x57, 0x04, 0xe0, 0x4e, 0x85, 0xf2, 0xdb, 0xaa, 0xd0, 0x18, 0xcc, 0x3d, 0x2c, 0x03, 0xfa, 0x1f, 0xdd, 0xd7, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4659 = { .name = "ecdh_brainpoolp224t1_4659", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4659_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4659_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4659_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2362 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4660 for ECDH, tcId is 2363 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4660_peerpubkey[] = { 0xd2, 0x4f, 0x90, 0x1a, 0x40, 0x9c, 0xb1, 0x35, 0x4c, 0x73, 0x75, 0xa2, 0xd7, 0xea, 0xaf, 0xe1, 0x0e, 0x50, 0x13, 0x1c, 0x15, 0x29, 0x70, 0x37, 0x25, 0xe8, 0x27, 0xcf, 0x0a, 0xf3, 0x4c, 0xb8, 0x19, 0x64, 0x81, 0xa4, 0xe1, 0x2d, 0x2f, 0xd8, 0xf2, 0xe7, 0xb1, 0x7d, 0x02, 0x88, 0x86, 0x13, 0xf1, 0x50, 0x86, 0xe3, 0xa1, 0x39, 0x3e, 0xb7, }; static const unsigned char ecdh_brainpoolp224t1_4660_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4660_sharedsecret[] = { 0xb1, 0x59, 0x80, 0x4e, 0x56, 0xbe, 0xf4, 0x62, 0xc3, 0x50, 0x6b, 0x44, 0x20, 0x62, 0xdd, 0x24, 0xc8, 0x70, 0x86, 0x59, 0x04, 0xe6, 0x13, 0x1f, 0x55, 0x21, 0x16, 0x0b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4660 = { .name = "ecdh_brainpoolp224t1_4660", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4660_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4660_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4660_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2363 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4661 for ECDH, tcId is 2364 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4661_peerpubkey[] = { 0x38, 0x10, 0x6f, 0x60, 0x07, 0xb9, 0xa5, 0x0c, 0x46, 0x82, 0xd9, 0x4e, 0xc1, 0x55, 0x5d, 0x28, 0x9d, 0x98, 0xea, 0x94, 0xc6, 0x50, 0xed, 0x66, 0x6e, 0xf7, 0x06, 0x94, 0x9b, 0xd5, 0x94, 0xc6, 0xdc, 0x85, 0xd8, 0xb9, 0x00, 0x40, 0x57, 0xa7, 0xff, 0x70, 0x58, 0x7e, 0xcd, 0x46, 0xd2, 0xaf, 0x9a, 0x2a, 0x35, 0x90, 0x40, 0xd1, 0xf6, 0x9c, }; static const unsigned char ecdh_brainpoolp224t1_4661_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4661_sharedsecret[] = { 0x27, 0xd6, 0x01, 0xc2, 0xea, 0xef, 0x9d, 0x91, 0x5b, 0x1c, 0xde, 0x49, 0x17, 0x9a, 0x28, 0x21, 0x81, 0x5c, 0x99, 0x7b, 0x01, 0xd0, 0x3f, 0xd2, 0x8c, 0xf7, 0x05, 0x70, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4661 = { .name = "ecdh_brainpoolp224t1_4661", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4661_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4661_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4661_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2364 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4662 for ECDH, tcId is 2365 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4662_peerpubkey[] = { 0x05, 0x71, 0xdd, 0xb9, 0x93, 0x27, 0x71, 0x18, 0xc6, 0xc5, 0xd6, 0x5f, 0x85, 0xa1, 0xb3, 0x01, 0xc9, 0x50, 0xaf, 0x5a, 0xbd, 0x12, 0xaa, 0x6c, 0xa6, 0xbb, 0x4d, 0xc1, 0x15, 0x32, 0xd9, 0x68, 0x2f, 0x15, 0x79, 0x7d, 0x19, 0x57, 0x0b, 0x0c, 0xa7, 0x30, 0xb2, 0x79, 0x05, 0xa1, 0xf5, 0x79, 0x01, 0xfd, 0x12, 0x26, 0xf9, 0x5a, 0xed, 0xc4, }; static const unsigned char ecdh_brainpoolp224t1_4662_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4662_sharedsecret[] = { 0xc2, 0xac, 0x17, 0xef, 0x22, 0x4f, 0xc3, 0xde, 0xc7, 0xd9, 0xc6, 0x9e, 0xec, 0x5f, 0xc4, 0xf8, 0x0d, 0x52, 0x2d, 0x86, 0x27, 0xa2, 0xd4, 0xfb, 0x48, 0x69, 0x85, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4662 = { .name = "ecdh_brainpoolp224t1_4662", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4662_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4662_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4662_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2365 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4663 for ECDH, tcId is 2366 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4663_peerpubkey[] = { 0x43, 0x5c, 0x1b, 0xa5, 0x03, 0x8e, 0xf8, 0x79, 0x46, 0xc6, 0xc2, 0xa2, 0xc8, 0x54, 0x93, 0x77, 0xfb, 0x8d, 0xfe, 0xfb, 0xa3, 0x03, 0x3d, 0xab, 0x68, 0x5e, 0x07, 0x51, 0x09, 0x0e, 0xf9, 0x16, 0x50, 0x4b, 0xdc, 0x5b, 0xbe, 0x77, 0x2f, 0xc3, 0x65, 0x08, 0x24, 0x03, 0x29, 0x24, 0x95, 0xe0, 0x23, 0x11, 0x14, 0x7f, 0x07, 0x86, 0x9c, 0xe4, }; static const unsigned char ecdh_brainpoolp224t1_4663_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4663_sharedsecret[] = { 0x4d, 0xda, 0x37, 0xfe, 0x75, 0xbe, 0xee, 0xee, 0x50, 0xa6, 0x51, 0xfd, 0x8e, 0xbe, 0x9d, 0x6f, 0x55, 0xc4, 0xf2, 0x7d, 0xe6, 0xd2, 0x67, 0xcb, 0x1d, 0xef, 0x13, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4663 = { .name = "ecdh_brainpoolp224t1_4663", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4663_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4663_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4663_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2366 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4664 for ECDH, tcId is 2367 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4664_peerpubkey[] = { 0x8d, 0xe7, 0x66, 0x2f, 0xf2, 0x8a, 0xe3, 0x30, 0x8c, 0x95, 0x63, 0x44, 0xd1, 0x41, 0x40, 0x2f, 0xc7, 0x00, 0xfc, 0xca, 0xae, 0x3f, 0xb1, 0xd2, 0x92, 0xf0, 0xf0, 0xff, 0xa1, 0x25, 0x7c, 0xc5, 0x65, 0x84, 0x1c, 0x0f, 0xe7, 0xb2, 0xb0, 0xd5, 0xd1, 0x05, 0xc3, 0x74, 0x56, 0x23, 0x60, 0xc3, 0xc6, 0x50, 0x39, 0xe4, 0xed, 0xea, 0x34, 0xc8, }; static const unsigned char ecdh_brainpoolp224t1_4664_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4664_sharedsecret[] = { 0x31, 0x51, 0xdc, 0xc2, 0xb7, 0xfe, 0x80, 0x49, 0xde, 0xed, 0x47, 0x97, 0x11, 0x71, 0x96, 0x63, 0xfe, 0xd6, 0x24, 0xf0, 0x7d, 0x77, 0x66, 0xdc, 0x09, 0x6f, 0x68, 0x34, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4664 = { .name = "ecdh_brainpoolp224t1_4664", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4664_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4664_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4664_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2367 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4665 for ECDH, tcId is 2368 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4665_peerpubkey[] = { 0x3f, 0x3b, 0xfe, 0x75, 0xca, 0x58, 0x6c, 0x14, 0x70, 0x3f, 0x21, 0x4f, 0x0a, 0x9a, 0x8d, 0xe1, 0xe2, 0x25, 0xec, 0x75, 0x70, 0xcf, 0x72, 0xfa, 0xd6, 0x5c, 0xfd, 0xbb, 0xae, 0x7a, 0x32, 0x15, 0x1b, 0xfe, 0xcb, 0x4b, 0xee, 0x56, 0x97, 0xe0, 0x27, 0xe9, 0x5e, 0x46, 0x8d, 0x44, 0x75, 0xdb, 0xe4, 0xd5, 0x0d, 0xcc, 0x16, 0xce, 0x05, 0xaf, }; static const unsigned char ecdh_brainpoolp224t1_4665_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4665_sharedsecret[] = { 0x16, 0x8f, 0x47, 0x02, 0xd4, 0xcb, 0x72, 0x2c, 0xe3, 0xaf, 0xa8, 0xe2, 0x81, 0x53, 0x3e, 0x46, 0x8a, 0x73, 0x0b, 0xa7, 0xe6, 0x10, 0xad, 0x54, 0x0b, 0x69, 0x48, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4665 = { .name = "ecdh_brainpoolp224t1_4665", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4665_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4665_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4665_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2368 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4666 for ECDH, tcId is 2369 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4666_peerpubkey[] = { 0x3b, 0xf2, 0x9c, 0xd7, 0x0b, 0xdc, 0xfc, 0xbd, 0x49, 0x64, 0xe1, 0x38, 0xb0, 0x7b, 0xea, 0xeb, 0x60, 0x64, 0xa7, 0xf6, 0xa6, 0x51, 0x9f, 0x85, 0x5d, 0x11, 0xaa, 0xa3, 0x18, 0x7e, 0xee, 0x31, 0x30, 0x7c, 0xe9, 0xe2, 0x1a, 0x3b, 0x60, 0xd6, 0x97, 0x82, 0xa4, 0xc1, 0x4c, 0x35, 0x59, 0x35, 0x88, 0xc6, 0x8d, 0x0c, 0x26, 0xa2, 0xc3, 0xcd, }; static const unsigned char ecdh_brainpoolp224t1_4666_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4666_sharedsecret[] = { 0xa0, 0x96, 0x92, 0x52, 0x54, 0x30, 0x4a, 0x8d, 0x10, 0xbd, 0x43, 0x71, 0xba, 0x45, 0x79, 0xa8, 0x3d, 0xe6, 0x99, 0xea, 0xe6, 0xca, 0xb2, 0x38, 0x59, 0xf7, 0xae, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4666 = { .name = "ecdh_brainpoolp224t1_4666", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4666_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4666_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4666_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2369 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4667 for ECDH, tcId is 2370 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4667_peerpubkey[] = { 0x0e, 0xb0, 0x6f, 0xaa, 0xc8, 0x86, 0xf6, 0xeb, 0x4d, 0xca, 0x08, 0xc6, 0xbe, 0xc1, 0x01, 0x80, 0x5a, 0x81, 0x04, 0xc1, 0xfd, 0x45, 0x8e, 0x87, 0xaa, 0x63, 0x9a, 0x18, 0x37, 0xc8, 0x68, 0x75, 0x8c, 0x39, 0x4b, 0xc3, 0x1d, 0x6b, 0xcc, 0x85, 0x5d, 0x28, 0xcd, 0xa6, 0xab, 0x35, 0x44, 0xba, 0xf3, 0xba, 0x30, 0x81, 0xbb, 0x43, 0xe6, 0x08, }; static const unsigned char ecdh_brainpoolp224t1_4667_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4667_sharedsecret[] = { 0xc4, 0x31, 0x49, 0x57, 0x4c, 0x61, 0xfd, 0xe3, 0xa1, 0x13, 0xc4, 0xbd, 0xfb, 0xbc, 0xd6, 0x87, 0x1e, 0xe1, 0x13, 0xfb, 0x2a, 0xab, 0xc6, 0xd4, 0xac, 0xdd, 0xe3, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4667 = { .name = "ecdh_brainpoolp224t1_4667", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4667_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4667_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4667_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2370 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4668 for ECDH, tcId is 2371 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4668_peerpubkey[] = { 0xb6, 0xe4, 0xec, 0x26, 0x6f, 0x6d, 0xc5, 0x32, 0x38, 0x49, 0x6b, 0x5c, 0xcb, 0xbf, 0xd0, 0x30, 0x73, 0xfb, 0x7f, 0xdd, 0x22, 0x27, 0x6f, 0x66, 0x2f, 0x5e, 0xe3, 0x44, 0x33, 0xa7, 0x43, 0xdc, 0x25, 0x8d, 0x06, 0x0a, 0x33, 0x55, 0xe3, 0x77, 0x5e, 0x14, 0xad, 0x42, 0xc9, 0x91, 0xcc, 0xee, 0xee, 0x90, 0x7b, 0xe3, 0xf7, 0xa9, 0x51, 0x68, }; static const unsigned char ecdh_brainpoolp224t1_4668_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4668_sharedsecret[] = { 0x29, 0xab, 0xe2, 0x04, 0x88, 0x7b, 0xf3, 0xaa, 0xc2, 0x9b, 0x89, 0x5c, 0xc5, 0xb5, 0x6d, 0xe5, 0xe5, 0x75, 0x88, 0x64, 0x48, 0xbe, 0xe1, 0xb1, 0x8a, 0x92, 0xf6, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4668 = { .name = "ecdh_brainpoolp224t1_4668", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4668_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4668_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4668_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2371 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4669 for ECDH, tcId is 2372 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4669_peerpubkey[] = { 0x5e, 0x02, 0xcc, 0xa1, 0x45, 0x95, 0xb4, 0xa2, 0x6c, 0x95, 0x8b, 0x00, 0x65, 0x7f, 0x86, 0x9f, 0xc6, 0x5d, 0x90, 0x22, 0xf2, 0x0f, 0xff, 0xa6, 0x3a, 0xf1, 0x39, 0xef, 0x72, 0xfe, 0xbd, 0x6e, 0x5a, 0xa4, 0xe3, 0x64, 0xce, 0x5c, 0xeb, 0xaa, 0x10, 0x05, 0xe9, 0x75, 0x11, 0xc4, 0xa4, 0x50, 0x14, 0x60, 0xbc, 0xc1, 0x3e, 0x8c, 0x41, 0x5d, }; static const unsigned char ecdh_brainpoolp224t1_4669_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4669_sharedsecret[] = { 0x1a, 0x15, 0x43, 0x2b, 0x68, 0x56, 0x18, 0x7d, 0x1e, 0xe0, 0xe2, 0xe6, 0x00, 0x33, 0x91, 0x43, 0xce, 0x24, 0xc2, 0x86, 0x2b, 0x6e, 0xf0, 0x75, 0x93, 0xeb, 0x77, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4669 = { .name = "ecdh_brainpoolp224t1_4669", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4669_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4669_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4669_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2372 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4670 for ECDH, tcId is 2373 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4670_peerpubkey[] = { 0x36, 0xd4, 0x16, 0x1e, 0xdc, 0x70, 0xc4, 0x8b, 0xe4, 0x22, 0x07, 0x61, 0xeb, 0xc7, 0x22, 0xac, 0xb2, 0x21, 0xf0, 0x7a, 0x2a, 0xd4, 0xb9, 0x3e, 0xa0, 0xfe, 0x81, 0x48, 0x9f, 0x57, 0xfd, 0xba, 0xa7, 0x0b, 0x98, 0xe9, 0xc9, 0x00, 0x5c, 0xee, 0xd1, 0xe7, 0x9d, 0x18, 0x8f, 0x9c, 0x46, 0x89, 0xf5, 0x4e, 0x45, 0x30, 0xbc, 0xda, 0xe0, 0xe2, }; static const unsigned char ecdh_brainpoolp224t1_4670_privkey[] = { 0xa8, 0x40, 0x46, 0x75, 0xde, 0xe8, 0x1d, 0x0b, 0xe7, 0x05, 0xd9, 0x0d, 0xb8, 0xf1, 0xb2, 0xb9, 0xba, 0x1d, 0x6b, 0x21, 0x2b, 0x09, 0xcc, 0xd3, 0x18, 0x12, 0x1f, 0x21, }; static const unsigned char ecdh_brainpoolp224t1_4670_sharedsecret[] = { 0x59, 0x45, 0x91, 0x16, 0xd1, 0xfc, 0xfb, 0x29, 0x1b, 0xe4, 0xcd, 0xd9, 0x9d, 0xb7, 0xad, 0x4f, 0xdf, 0x69, 0x66, 0xe3, 0x23, 0x4b, 0x3f, 0x6b, 0x77, 0x12, 0x8b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4670 = { .name = "ecdh_brainpoolp224t1_4670", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4670_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4670_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4670_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2373 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4671 for ECDH, tcId is 2374 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4671_peerpubkey[] = { 0x03, 0x23, 0x57, 0x28, 0x94, 0x3f, 0xad, 0x7f, 0x5b, 0xb1, 0xdc, 0x3d, 0xb9, 0x9b, 0x30, 0xe6, 0xf9, 0x8c, 0xd3, 0x38, 0x76, 0x3f, 0x31, 0x6f, 0x20, 0xde, 0xd2, 0x5d, 0x69, 0xb0, 0xa4, 0x21, 0xfa, 0x36, 0x2a, 0x2e, 0x38, 0x1c, 0x5e, 0xf3, 0x11, 0x44, 0xf6, 0xe1, 0x4d, 0x03, 0xef, 0x6f, 0x50, 0x92, 0x72, 0xa1, 0x2f, 0x55, 0x5c, 0x17, }; static const unsigned char ecdh_brainpoolp224t1_4671_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4671_sharedsecret[] = { 0x99, 0x80, 0x51, 0x26, 0x51, 0x7f, 0x14, 0x41, 0x4b, 0x8f, 0x0a, 0xea, 0xbc, 0xc4, 0x90, 0x88, 0x41, 0x5f, 0x43, 0xbd, 0x89, 0x8d, 0x61, 0x99, 0xe4, 0x98, 0xf4, 0xe8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4671 = { .name = "ecdh_brainpoolp224t1_4671", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4671_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4671_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4671_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2374 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4672 for ECDH, tcId is 2375 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4672_peerpubkey[] = { 0x61, 0xc6, 0x33, 0x92, 0xfb, 0xce, 0xbe, 0xed, 0x4f, 0x84, 0x13, 0x7a, 0x78, 0xac, 0x49, 0x18, 0x5b, 0xe7, 0x2f, 0xe4, 0x0d, 0x96, 0x9c, 0x1c, 0x68, 0xbc, 0x72, 0x50, 0xd4, 0x1c, 0x05, 0x3f, 0xaf, 0xfa, 0x99, 0x41, 0xf1, 0x57, 0x4c, 0xa4, 0x52, 0x39, 0xd4, 0xe0, 0x32, 0x28, 0x32, 0xb7, 0x22, 0xff, 0xbd, 0xdc, 0x43, 0xf1, 0x72, 0x90, }; static const unsigned char ecdh_brainpoolp224t1_4672_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4672_sharedsecret[] = { 0x96, 0x1c, 0x56, 0x7e, 0x8d, 0xd6, 0xb2, 0x35, 0x9b, 0xd7, 0x69, 0x6f, 0x2a, 0x45, 0xba, 0x21, 0x3b, 0xb5, 0x52, 0xf7, 0x4d, 0x3d, 0x25, 0x42, 0xee, 0xb4, 0xa2, 0x82, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4672 = { .name = "ecdh_brainpoolp224t1_4672", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4672_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4672_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4672_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2375 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4673 for ECDH, tcId is 2376 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4673_peerpubkey[] = { 0x3c, 0x79, 0x6e, 0x18, 0x43, 0xc6, 0xd7, 0xa5, 0x3b, 0x11, 0x86, 0x09, 0x5f, 0xb6, 0x1f, 0x96, 0xfb, 0x75, 0xc2, 0x62, 0x79, 0xf1, 0x06, 0xe2, 0x3a, 0xac, 0x56, 0x5d, 0x95, 0x54, 0xb9, 0x95, 0xc9, 0x60, 0xb3, 0x3c, 0x1c, 0x41, 0x2a, 0x68, 0x67, 0x11, 0x85, 0xea, 0x27, 0xfb, 0xdc, 0xe9, 0x24, 0x01, 0xa7, 0xc8, 0x5b, 0x84, 0x04, 0xee, }; static const unsigned char ecdh_brainpoolp224t1_4673_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4673_sharedsecret[] = { 0xd0, 0x08, 0x1b, 0x31, 0x03, 0x42, 0xed, 0x55, 0xbd, 0xf2, 0x6d, 0x58, 0x58, 0xbf, 0x45, 0x3d, 0x41, 0xe0, 0x2e, 0xaa, 0x98, 0x3d, 0x80, 0x0a, 0x78, 0x29, 0xb2, 0xd9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4673 = { .name = "ecdh_brainpoolp224t1_4673", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4673_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4673_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4673_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2376 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4674 for ECDH, tcId is 2377 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4674_peerpubkey[] = { 0x91, 0xc1, 0xae, 0xe9, 0xb5, 0xc4, 0xce, 0x7f, 0x05, 0xf9, 0x6c, 0x99, 0xb9, 0x58, 0x1a, 0xe0, 0x9f, 0x40, 0x20, 0xef, 0x75, 0x84, 0x1c, 0x82, 0xb7, 0xd5, 0xae, 0x86, 0x4f, 0xa1, 0xd2, 0x02, 0xc6, 0x99, 0x14, 0x8a, 0x01, 0xb7, 0xda, 0x80, 0x8e, 0xea, 0x9f, 0x16, 0xca, 0xda, 0x25, 0x87, 0xf7, 0x47, 0xe2, 0x29, 0x45, 0x9d, 0x17, 0xd3, }; static const unsigned char ecdh_brainpoolp224t1_4674_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4674_sharedsecret[] = { 0xb8, 0xf4, 0xb4, 0xb5, 0x44, 0x0e, 0x55, 0x6d, 0xa9, 0xb9, 0xbe, 0x5e, 0xd6, 0x6c, 0x28, 0x30, 0x00, 0x42, 0x23, 0x63, 0xc4, 0x70, 0x3e, 0x3e, 0x31, 0x35, 0x7d, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4674 = { .name = "ecdh_brainpoolp224t1_4674", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4674_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4674_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4674_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2377 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4675 for ECDH, tcId is 2378 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4675_peerpubkey[] = { 0x2c, 0xa6, 0xca, 0x59, 0xc2, 0x9d, 0xf3, 0xcd, 0x66, 0xc7, 0x31, 0x07, 0x85, 0x6d, 0x08, 0x10, 0xca, 0x6a, 0x8d, 0x62, 0x10, 0x97, 0x02, 0x45, 0xd2, 0x12, 0x0e, 0xa2, 0xc3, 0xeb, 0x54, 0x2b, 0xf3, 0xd5, 0xd8, 0xa9, 0x03, 0x0f, 0x9f, 0x0c, 0xdd, 0xef, 0x8d, 0xab, 0x1e, 0xb0, 0xfc, 0x79, 0x89, 0x17, 0x75, 0xa6, 0xde, 0xf8, 0xdb, 0x63, }; static const unsigned char ecdh_brainpoolp224t1_4675_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4675_sharedsecret[] = { 0x85, 0xf2, 0xe4, 0xa6, 0x6f, 0x0c, 0x85, 0x78, 0xc9, 0xae, 0x1f, 0x06, 0x03, 0x67, 0x61, 0x45, 0x40, 0x1c, 0xd4, 0x50, 0x18, 0x80, 0xd7, 0xd6, 0xc9, 0x19, 0xae, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4675 = { .name = "ecdh_brainpoolp224t1_4675", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4675_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4675_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4675_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2378 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4676 for ECDH, tcId is 2379 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4676_peerpubkey[] = { 0xa6, 0x89, 0xc1, 0xa3, 0x23, 0x6b, 0x9c, 0x17, 0x64, 0x2f, 0xbf, 0x6a, 0xfb, 0x8e, 0x60, 0x5a, 0x9f, 0x0d, 0xd3, 0x90, 0x2e, 0x96, 0x5b, 0xa6, 0x5c, 0x57, 0x27, 0x7d, 0x7a, 0x8a, 0x0c, 0x33, 0x36, 0x3e, 0x68, 0xfa, 0x5a, 0x35, 0x55, 0x06, 0x8e, 0x14, 0xbf, 0x92, 0x74, 0xbe, 0x61, 0xfe, 0xe3, 0xc9, 0xe5, 0x9d, 0xef, 0x45, 0x56, 0x15, }; static const unsigned char ecdh_brainpoolp224t1_4676_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4676_sharedsecret[] = { 0xc4, 0x91, 0x29, 0x06, 0x76, 0x56, 0xa7, 0x95, 0xe1, 0xf3, 0x58, 0x47, 0xdf, 0x40, 0xce, 0xce, 0xce, 0x92, 0xd2, 0x6b, 0xdf, 0xd8, 0x57, 0x6d, 0xc2, 0x13, 0xba, 0x13, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4676 = { .name = "ecdh_brainpoolp224t1_4676", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4676_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4676_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4676_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2379 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4677 for ECDH, tcId is 2380 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4677_peerpubkey[] = { 0x1f, 0x2e, 0x9a, 0x75, 0x52, 0x65, 0xb0, 0x69, 0x97, 0x28, 0xc7, 0xbe, 0xab, 0x20, 0x53, 0xc8, 0x43, 0xa7, 0x44, 0x0f, 0x38, 0x4c, 0xf0, 0xd8, 0x0e, 0x24, 0x89, 0x8d, 0xcf, 0x28, 0x84, 0x8e, 0x5b, 0xf8, 0x05, 0xf5, 0xae, 0x93, 0x4d, 0xe5, 0xe9, 0x0f, 0xc8, 0x6d, 0x8f, 0xfb, 0xf2, 0xa8, 0x06, 0x4e, 0xfd, 0x68, 0x4c, 0x5b, 0x78, 0xfa, }; static const unsigned char ecdh_brainpoolp224t1_4677_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4677_sharedsecret[] = { 0x77, 0xd4, 0xf6, 0xdd, 0x96, 0x10, 0x65, 0xf7, 0x72, 0xd2, 0x4e, 0x84, 0x98, 0x9f, 0xcb, 0x95, 0xa7, 0xbc, 0xfb, 0xc0, 0x90, 0xe3, 0xd9, 0x6d, 0x04, 0x25, 0x1e, 0x9c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4677 = { .name = "ecdh_brainpoolp224t1_4677", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4677_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4677_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4677_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2380 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4678 for ECDH, tcId is 2381 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4678_peerpubkey[] = { 0x0d, 0xa8, 0x2e, 0x55, 0x51, 0xac, 0x33, 0x22, 0x4a, 0x54, 0x4f, 0xc1, 0xfc, 0x80, 0xc1, 0x4e, 0x36, 0x56, 0x63, 0xfc, 0xc4, 0x57, 0x09, 0x36, 0xa7, 0x60, 0x46, 0x27, 0x0a, 0x73, 0x06, 0x64, 0xf6, 0x5c, 0x2d, 0x55, 0x88, 0xfe, 0x46, 0x39, 0xc7, 0x78, 0x31, 0x9a, 0xef, 0x7d, 0x87, 0x38, 0x75, 0xe4, 0x80, 0xad, 0xb8, 0x73, 0xb9, 0x65, }; static const unsigned char ecdh_brainpoolp224t1_4678_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4678_sharedsecret[] = { 0x25, 0x9c, 0xab, 0xfd, 0x2d, 0xc4, 0xc7, 0x7e, 0x80, 0xd4, 0xfc, 0xa0, 0xdf, 0x18, 0x0b, 0x1a, 0x37, 0x6c, 0xa3, 0x0b, 0x2a, 0x9f, 0x21, 0x0c, 0x60, 0x16, 0xb1, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4678 = { .name = "ecdh_brainpoolp224t1_4678", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4678_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4678_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4678_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2381 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4679 for ECDH, tcId is 2382 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4679_peerpubkey[] = { 0xc9, 0xcc, 0xcf, 0xa3, 0xf1, 0x9e, 0xfd, 0x72, 0xca, 0xca, 0x71, 0x57, 0x5d, 0xae, 0xd2, 0x3b, 0x3f, 0x22, 0x4b, 0x46, 0x45, 0xf9, 0x4b, 0x32, 0xfb, 0x96, 0x1d, 0x3c, 0xc8, 0xf2, 0x0a, 0xda, 0x9e, 0xcc, 0xff, 0xb7, 0x4e, 0xcd, 0xd1, 0xc4, 0x29, 0xdc, 0x00, 0xf2, 0x1d, 0x92, 0x72, 0xfd, 0x89, 0x0f, 0x5c, 0x37, 0x75, 0x99, 0x62, 0xb3, }; static const unsigned char ecdh_brainpoolp224t1_4679_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4679_sharedsecret[] = { 0x03, 0xd9, 0x34, 0x00, 0xa0, 0xc2, 0xd9, 0xef, 0x66, 0x77, 0x3b, 0x3a, 0xed, 0x09, 0x47, 0x01, 0xdf, 0x4d, 0x9e, 0xe7, 0x6f, 0x1f, 0x2f, 0x30, 0x76, 0xee, 0x94, 0x5b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4679 = { .name = "ecdh_brainpoolp224t1_4679", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4679_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4679_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4679_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2382 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4680 for ECDH, tcId is 2383 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4680_peerpubkey[] = { 0x64, 0xce, 0x6a, 0xf7, 0xec, 0x2d, 0x37, 0xbe, 0x1b, 0x69, 0x3d, 0x7d, 0x4d, 0x02, 0x89, 0x61, 0x52, 0xa5, 0x1a, 0xf9, 0x1d, 0x54, 0x04, 0x93, 0xb7, 0xf1, 0x31, 0xd9, 0xa2, 0x73, 0x93, 0x39, 0x44, 0xf7, 0x49, 0x43, 0x6e, 0x01, 0x43, 0x0a, 0x02, 0x64, 0x1a, 0x66, 0x8d, 0x84, 0x4d, 0xb3, 0xf4, 0xd2, 0xeb, 0xda, 0x78, 0xb5, 0x43, 0x54, }; static const unsigned char ecdh_brainpoolp224t1_4680_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4680_sharedsecret[] = { 0x0f, 0x93, 0x73, 0x74, 0xa5, 0x51, 0xa7, 0xca, 0x55, 0xdb, 0xba, 0xb4, 0x76, 0xb2, 0x49, 0xab, 0xa9, 0x4d, 0x44, 0xa8, 0xae, 0xdd, 0x67, 0x6e, 0xe7, 0xf5, 0x99, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4680 = { .name = "ecdh_brainpoolp224t1_4680", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4680_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4680_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4680_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2383 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4681 for ECDH, tcId is 2384 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4681_peerpubkey[] = { 0x2d, 0x4b, 0x73, 0x2a, 0x15, 0xd8, 0x67, 0x10, 0xf1, 0x9a, 0xd6, 0xed, 0x18, 0x88, 0x18, 0x4d, 0x1d, 0x53, 0xf8, 0xa3, 0x89, 0x51, 0x38, 0xcb, 0xf3, 0x50, 0x93, 0xcc, 0x8f, 0xa7, 0x15, 0x2f, 0x14, 0x0d, 0x8d, 0x36, 0xba, 0xe6, 0xbe, 0x57, 0xb5, 0x41, 0xb7, 0x6c, 0xac, 0x62, 0x3d, 0xb9, 0xd6, 0xc3, 0xf7, 0x2e, 0x8f, 0x28, 0x59, 0x49, }; static const unsigned char ecdh_brainpoolp224t1_4681_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4681_sharedsecret[] = { 0xb5, 0x4e, 0x7b, 0xbf, 0xd4, 0x72, 0xc3, 0x85, 0xe2, 0x66, 0xae, 0x24, 0x3c, 0x93, 0xb4, 0x37, 0xc0, 0x41, 0xaa, 0xfe, 0x65, 0xbe, 0xd3, 0x57, 0xce, 0xc2, 0xd8, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4681 = { .name = "ecdh_brainpoolp224t1_4681", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4681_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4681_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4681_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2384 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4682 for ECDH, tcId is 2385 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4682_peerpubkey[] = { 0x40, 0xfa, 0x3e, 0x28, 0x00, 0x63, 0x59, 0x18, 0x72, 0xd5, 0x95, 0xe6, 0xae, 0x67, 0x6e, 0x18, 0xf3, 0x00, 0x09, 0x1c, 0x33, 0xa3, 0xd5, 0x2b, 0x23, 0xd7, 0x6d, 0x32, 0x88, 0x23, 0xec, 0x52, 0x6e, 0xf1, 0xfa, 0x02, 0xdf, 0x46, 0x5a, 0x2e, 0xb3, 0x31, 0x5a, 0xfb, 0xcc, 0x13, 0x17, 0x33, 0xbf, 0x5d, 0x07, 0x4a, 0xad, 0x6d, 0x3e, 0x58, }; static const unsigned char ecdh_brainpoolp224t1_4682_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4682_sharedsecret[] = { 0x87, 0xcc, 0x5e, 0xb3, 0x94, 0xba, 0xe5, 0x21, 0x37, 0xbd, 0xbd, 0x6e, 0x48, 0xca, 0x8a, 0x95, 0x35, 0xa3, 0xa6, 0xb8, 0x06, 0x33, 0x56, 0x65, 0x81, 0xfa, 0xd3, 0xd9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4682 = { .name = "ecdh_brainpoolp224t1_4682", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4682_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4682_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4682_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2385 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4683 for ECDH, tcId is 2386 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4683_peerpubkey[] = { 0x7d, 0xd4, 0xee, 0xbd, 0xb1, 0x0f, 0xb6, 0xd7, 0x31, 0xa6, 0xc9, 0x0a, 0xdb, 0x9b, 0xc4, 0x02, 0x3b, 0xed, 0x3e, 0x4f, 0xbb, 0x45, 0x81, 0xa2, 0x7e, 0x90, 0xe6, 0xb4, 0x2c, 0x80, 0x11, 0xc7, 0xcb, 0x85, 0xdc, 0x81, 0x7b, 0x44, 0x31, 0x38, 0x8f, 0x92, 0x90, 0x90, 0xc0, 0x99, 0x16, 0x82, 0x2d, 0x47, 0x7c, 0xec, 0x37, 0x68, 0x72, 0x92, }; static const unsigned char ecdh_brainpoolp224t1_4683_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4683_sharedsecret[] = { 0x8b, 0x79, 0xcb, 0xc7, 0x18, 0xe9, 0x23, 0x80, 0x63, 0x51, 0xec, 0x3a, 0x30, 0xb6, 0x0d, 0xfd, 0x92, 0x22, 0x94, 0x6f, 0xd6, 0xc1, 0xb6, 0xab, 0x0e, 0x17, 0xb0, 0x46, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4683 = { .name = "ecdh_brainpoolp224t1_4683", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4683_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4683_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4683_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2386 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4684 for ECDH, tcId is 2387 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4684_peerpubkey[] = { 0xb3, 0x9b, 0x73, 0x8f, 0xa4, 0x6b, 0x6b, 0x0b, 0x9c, 0x17, 0x6f, 0x03, 0x54, 0xe7, 0x0e, 0x0f, 0x7d, 0xb2, 0xf8, 0xf0, 0x14, 0x9c, 0x7b, 0x84, 0x08, 0xed, 0x8d, 0xf9, 0x6d, 0x1b, 0xa7, 0x0c, 0x11, 0x07, 0xf2, 0x06, 0x91, 0x09, 0xa7, 0x74, 0x9b, 0x8b, 0xcf, 0x6a, 0x5f, 0xbd, 0x6a, 0xbe, 0xfa, 0x31, 0x13, 0xdb, 0x83, 0x5c, 0xf7, 0xef, }; static const unsigned char ecdh_brainpoolp224t1_4684_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4684_sharedsecret[] = { 0x05, 0x35, 0x77, 0x43, 0x26, 0x63, 0x8e, 0x55, 0xb3, 0xec, 0xb4, 0x12, 0x38, 0x14, 0xcb, 0x5d, 0xf7, 0xa3, 0x65, 0x43, 0x7b, 0xc1, 0xe6, 0x89, 0x77, 0x2d, 0x10, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4684 = { .name = "ecdh_brainpoolp224t1_4684", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4684_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4684_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4684_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2387 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4685 for ECDH, tcId is 2388 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4685_peerpubkey[] = { 0x7e, 0xc7, 0x70, 0x07, 0x84, 0x3c, 0xf9, 0x07, 0x79, 0xe9, 0x5d, 0x52, 0x2b, 0xb8, 0x3d, 0xfd, 0x2e, 0xc2, 0xfa, 0x66, 0x1b, 0xe9, 0x60, 0x72, 0x08, 0xe3, 0xf2, 0xf7, 0x13, 0x18, 0x2f, 0x0f, 0x8a, 0xdd, 0xd8, 0xd2, 0x88, 0xab, 0x20, 0x24, 0x00, 0x31, 0x27, 0x1b, 0xf0, 0x59, 0xde, 0x8e, 0xad, 0xfa, 0xdd, 0xb6, 0xa7, 0x91, 0x60, 0xa0, }; static const unsigned char ecdh_brainpoolp224t1_4685_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4685_sharedsecret[] = { 0x81, 0xba, 0xc8, 0xa4, 0x03, 0x74, 0xa0, 0x2a, 0x2a, 0xd9, 0xb6, 0x2b, 0x2a, 0x71, 0x02, 0x09, 0xe1, 0x0c, 0x9d, 0x6f, 0x8f, 0x72, 0xd1, 0xda, 0x30, 0x1c, 0xba, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4685 = { .name = "ecdh_brainpoolp224t1_4685", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4685_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4685_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4685_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2388 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4686 for ECDH, tcId is 2389 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4686_peerpubkey[] = { 0x14, 0x4e, 0x89, 0x5b, 0xc7, 0xc7, 0x70, 0xee, 0xcf, 0xd4, 0xfa, 0x30, 0x4a, 0xa3, 0x06, 0xe1, 0xfe, 0x8a, 0x4b, 0xba, 0x84, 0xdb, 0xec, 0x76, 0xb3, 0xe5, 0xd6, 0x16, 0xd4, 0xa8, 0x6f, 0x2f, 0xd4, 0x3c, 0x08, 0x08, 0xbf, 0x82, 0x86, 0xd3, 0xa1, 0xc2, 0x2f, 0xed, 0x84, 0xdd, 0x0c, 0xa5, 0x20, 0x81, 0xcf, 0x7e, 0xc5, 0xea, 0x2f, 0x3d, }; static const unsigned char ecdh_brainpoolp224t1_4686_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4686_sharedsecret[] = { 0x72, 0x6e, 0x45, 0xdb, 0x27, 0x54, 0x78, 0x59, 0x07, 0xe0, 0x5c, 0x66, 0x76, 0xf9, 0x75, 0x95, 0x3e, 0xa2, 0x23, 0xea, 0x3e, 0xea, 0xd5, 0x0f, 0x40, 0xd5, 0x5b, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4686 = { .name = "ecdh_brainpoolp224t1_4686", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4686_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4686_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4686_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2389 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4687 for ECDH, tcId is 2390 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4687_peerpubkey[] = { 0x23, 0x31, 0x9b, 0x59, 0xfe, 0x9d, 0xd8, 0x61, 0x7a, 0xcc, 0xe7, 0x08, 0x9b, 0x3a, 0xed, 0x31, 0xeb, 0x81, 0xe5, 0xe6, 0x3a, 0x8e, 0x04, 0xcc, 0x90, 0x4e, 0x74, 0xe2, 0x20, 0x83, 0x3c, 0x44, 0x1c, 0x18, 0x8d, 0x55, 0x6c, 0x3e, 0xba, 0x0b, 0x5f, 0x8f, 0xd8, 0xe8, 0x8c, 0x73, 0x74, 0x3f, 0xe5, 0x2c, 0xde, 0x28, 0x9b, 0x84, 0xa3, 0xa5, }; static const unsigned char ecdh_brainpoolp224t1_4687_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4687_sharedsecret[] = { 0x65, 0x1a, 0xd7, 0x57, 0xaf, 0x15, 0xf9, 0x06, 0x50, 0xc3, 0x05, 0xc7, 0x63, 0x62, 0x68, 0x2e, 0x58, 0x02, 0x62, 0x5f, 0x51, 0xbc, 0xb2, 0x2e, 0xf7, 0x66, 0x4d, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4687 = { .name = "ecdh_brainpoolp224t1_4687", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4687_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4687_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4687_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2390 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4688 for ECDH, tcId is 2391 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4688_peerpubkey[] = { 0x2a, 0x44, 0xb6, 0xa9, 0xd5, 0xb4, 0x03, 0x85, 0xe9, 0x9e, 0xf3, 0x03, 0xc0, 0x95, 0xdd, 0xd2, 0xe8, 0xf7, 0x26, 0xc7, 0xee, 0x41, 0x9e, 0x2a, 0x1d, 0xed, 0xe0, 0x67, 0xd1, 0x1e, 0x83, 0x24, 0x8f, 0xd6, 0x09, 0x5b, 0x90, 0xff, 0x69, 0xbc, 0x0c, 0xd4, 0xe1, 0x05, 0x38, 0x1a, 0x9a, 0xda, 0xb6, 0x42, 0xd5, 0x69, 0x58, 0x55, 0xa6, 0x33, }; static const unsigned char ecdh_brainpoolp224t1_4688_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4688_sharedsecret[] = { 0x56, 0x88, 0xb7, 0x54, 0x58, 0x0c, 0x04, 0x9f, 0x7c, 0x96, 0xee, 0x1b, 0x81, 0xb0, 0x9c, 0x0b, 0xaf, 0x62, 0x25, 0xc1, 0x5b, 0x4a, 0x5d, 0xa1, 0x30, 0xf3, 0x1d, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4688 = { .name = "ecdh_brainpoolp224t1_4688", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4688_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4688_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4688_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2391 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4689 for ECDH, tcId is 2392 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4689_peerpubkey[] = { 0xca, 0xae, 0x2d, 0xd9, 0x24, 0x83, 0x10, 0xe8, 0xc6, 0x51, 0xff, 0x80, 0xb5, 0x60, 0x07, 0xa6, 0x21, 0x94, 0x70, 0x27, 0x1c, 0x3c, 0x36, 0x72, 0x7a, 0x6e, 0xa8, 0xa2, 0xc6, 0x8e, 0x1f, 0x96, 0x13, 0xa2, 0xac, 0xb2, 0x28, 0x33, 0x7e, 0x9a, 0x1d, 0xec, 0x53, 0x2e, 0x0e, 0x51, 0x24, 0x90, 0xbc, 0xa9, 0x0c, 0x17, 0x97, 0x94, 0x3a, 0x13, }; static const unsigned char ecdh_brainpoolp224t1_4689_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4689_sharedsecret[] = { 0x63, 0x7a, 0xf8, 0x47, 0x6f, 0xfb, 0x86, 0xf1, 0x11, 0xbf, 0x86, 0x6f, 0xa4, 0x0d, 0xa1, 0xb2, 0xf6, 0x18, 0xb9, 0xf7, 0x4a, 0x4b, 0xbd, 0xc1, 0xe9, 0xa5, 0x66, 0x4d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4689 = { .name = "ecdh_brainpoolp224t1_4689", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4689_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4689_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4689_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2392 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4690 for ECDH, tcId is 2393 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4690_peerpubkey[] = { 0x54, 0xae, 0xd6, 0x57, 0x9e, 0xd5, 0x1b, 0x25, 0xca, 0x96, 0xcc, 0xb0, 0xd2, 0x3f, 0x7d, 0x46, 0x6e, 0xd0, 0x4f, 0x82, 0xf8, 0x48, 0x0f, 0xb3, 0xfb, 0x1f, 0x02, 0x35, 0x2b, 0xcb, 0xe4, 0xb1, 0x7d, 0xa1, 0x48, 0xde, 0x8d, 0x08, 0x6b, 0x33, 0x52, 0x04, 0x67, 0xf8, 0xca, 0x2b, 0xd1, 0xcf, 0xb8, 0xcd, 0x00, 0xdd, 0x89, 0xb7, 0x92, 0xb5, }; static const unsigned char ecdh_brainpoolp224t1_4690_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4690_sharedsecret[] = { 0x88, 0xec, 0xcf, 0x26, 0x46, 0xce, 0xc2, 0x18, 0xbe, 0xdf, 0x4f, 0xa3, 0xad, 0xe3, 0x70, 0x82, 0x3b, 0x0f, 0xf9, 0x8e, 0x00, 0x22, 0xe4, 0x17, 0x3e, 0xfc, 0x72, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4690 = { .name = "ecdh_brainpoolp224t1_4690", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4690_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4690_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4690_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2393 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4691 for ECDH, tcId is 2394 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4691_peerpubkey[] = { 0xa5, 0x2d, 0x4d, 0x75, 0x14, 0x84, 0x30, 0x49, 0x24, 0xe2, 0x84, 0x04, 0x42, 0x46, 0x51, 0x7a, 0xde, 0xab, 0x8a, 0xa5, 0x52, 0xa8, 0xf7, 0xf1, 0x1a, 0x53, 0x65, 0x08, 0x7b, 0x8e, 0x95, 0x48, 0x82, 0x1c, 0x7b, 0xa6, 0x4c, 0xd5, 0x23, 0x1c, 0xf0, 0x74, 0x32, 0x60, 0xa1, 0xc9, 0x38, 0x42, 0x45, 0x2d, 0x8b, 0x75, 0xa9, 0xfa, 0x67, 0xb8, }; static const unsigned char ecdh_brainpoolp224t1_4691_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4691_sharedsecret[] = { 0x27, 0xe7, 0x3d, 0xcf, 0xb8, 0xd3, 0x0d, 0xe7, 0x5b, 0x45, 0x23, 0x0e, 0x09, 0x35, 0x4f, 0xde, 0xda, 0xa0, 0x4e, 0xb9, 0x95, 0x3f, 0x9b, 0x92, 0x57, 0x78, 0x20, 0xc8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4691 = { .name = "ecdh_brainpoolp224t1_4691", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4691_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4691_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4691_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2394 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4692 for ECDH, tcId is 2395 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4692_peerpubkey[] = { 0x78, 0x3b, 0xa9, 0xa1, 0xd1, 0x55, 0x6f, 0x92, 0x28, 0x4c, 0xa3, 0x35, 0xa8, 0x84, 0x1a, 0x38, 0xb0, 0xf0, 0xf1, 0x66, 0x2f, 0xca, 0x14, 0x73, 0x9e, 0x91, 0xc0, 0xae, 0x2d, 0x0a, 0xdf, 0x4d, 0x27, 0x2e, 0x5a, 0x0e, 0xb3, 0x80, 0xb9, 0xb4, 0x40, 0x24, 0x51, 0xc5, 0x14, 0x75, 0x01, 0x34, 0x27, 0x96, 0xe7, 0x0b, 0x18, 0x35, 0x47, 0x75, }; static const unsigned char ecdh_brainpoolp224t1_4692_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4692_sharedsecret[] = { 0xc4, 0x55, 0x99, 0xc3, 0xc9, 0x15, 0x1c, 0x92, 0xb3, 0x3d, 0xff, 0x58, 0x68, 0x2f, 0xd1, 0xf3, 0x77, 0xa5, 0x9d, 0x24, 0x17, 0x2f, 0x79, 0x4a, 0x7b, 0xff, 0x98, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4692 = { .name = "ecdh_brainpoolp224t1_4692", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4692_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4692_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4692_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2395 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4693 for ECDH, tcId is 2396 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4693_peerpubkey[] = { 0x07, 0xea, 0xc5, 0x75, 0x24, 0xa9, 0xa6, 0x26, 0xa8, 0x61, 0x81, 0x5a, 0x9a, 0x56, 0x1a, 0x63, 0x10, 0x06, 0x9e, 0x44, 0xbd, 0x21, 0xc0, 0x6b, 0xe0, 0x39, 0x32, 0xf8, 0x8e, 0x9f, 0x74, 0xca, 0x49, 0x7d, 0x08, 0x29, 0x02, 0x3a, 0x3c, 0xec, 0x71, 0xec, 0x23, 0x5f, 0x3d, 0xb7, 0x94, 0x75, 0x05, 0x62, 0xc1, 0x78, 0xdb, 0x1f, 0xb2, 0x14, }; static const unsigned char ecdh_brainpoolp224t1_4693_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4693_sharedsecret[] = { 0x01, 0xe7, 0xac, 0x14, 0x38, 0xb7, 0x90, 0x5b, 0xca, 0x40, 0x33, 0x5c, 0xf5, 0xa0, 0x11, 0x1c, 0x36, 0x3d, 0xb0, 0xaa, 0xbd, 0x32, 0xc1, 0x90, 0xf8, 0xa2, 0x24, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4693 = { .name = "ecdh_brainpoolp224t1_4693", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4693_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4693_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4693_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2396 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4694 for ECDH, tcId is 2397 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4694_peerpubkey[] = { 0x46, 0xb9, 0x77, 0xa6, 0x45, 0x99, 0x9a, 0xf7, 0x92, 0x67, 0x0b, 0x12, 0xa9, 0x34, 0x6d, 0xe0, 0x20, 0x26, 0x32, 0x92, 0xbe, 0xbb, 0xef, 0x26, 0x4e, 0x23, 0x09, 0x52, 0x1c, 0xac, 0x96, 0x99, 0x7b, 0x66, 0x94, 0xd1, 0x44, 0x0d, 0xea, 0xab, 0xe6, 0x5c, 0x06, 0x86, 0x4f, 0xe7, 0xa6, 0x55, 0xa1, 0xaf, 0x8e, 0xc7, 0x8a, 0x9b, 0x2a, 0x4f, }; static const unsigned char ecdh_brainpoolp224t1_4694_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4694_sharedsecret[] = { 0x80, 0xca, 0x6e, 0xa5, 0xef, 0x99, 0x01, 0x25, 0x84, 0x2d, 0xdc, 0x7e, 0x20, 0xb6, 0xe6, 0x2c, 0xdf, 0x89, 0xfc, 0x95, 0xbd, 0x85, 0x5f, 0xd8, 0xa2, 0x7e, 0xf1, 0x4d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4694 = { .name = "ecdh_brainpoolp224t1_4694", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4694_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4694_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4694_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2397 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4695 for ECDH, tcId is 2398 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4695_peerpubkey[] = { 0x13, 0xd3, 0xef, 0x6b, 0x32, 0x1e, 0x7a, 0xd2, 0x8d, 0xe8, 0xd8, 0x49, 0x52, 0x14, 0x4c, 0x28, 0x2d, 0x73, 0x87, 0x45, 0x56, 0x7f, 0xbc, 0x56, 0x0f, 0xa3, 0x1a, 0xf8, 0x39, 0x52, 0x0f, 0x78, 0x37, 0x1c, 0x0b, 0x64, 0x2e, 0x6f, 0x16, 0xf0, 0x08, 0xc1, 0xe2, 0x2f, 0x46, 0x65, 0xe2, 0x2e, 0xca, 0x93, 0x44, 0x1d, 0xb0, 0x19, 0xe0, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4695_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4695_sharedsecret[] = { 0x71, 0xf7, 0xda, 0x7c, 0x29, 0x83, 0x1e, 0x5d, 0xf1, 0xca, 0xfb, 0x64, 0xb4, 0x76, 0x9a, 0x4f, 0x92, 0x09, 0x25, 0xfa, 0x05, 0x91, 0x55, 0x20, 0xe8, 0x7c, 0x37, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4695 = { .name = "ecdh_brainpoolp224t1_4695", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4695_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4695_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4695_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2398 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4696 for ECDH, tcId is 2399 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4696_peerpubkey[] = { 0x4b, 0x03, 0xf3, 0x7c, 0x45, 0x46, 0xf6, 0x79, 0x3e, 0x65, 0xe1, 0x0d, 0xd0, 0x6e, 0xc6, 0xd5, 0xc2, 0xb2, 0x6a, 0xb1, 0x2d, 0x35, 0x5e, 0x06, 0x75, 0x3a, 0x2d, 0x99, 0x22, 0x65, 0x90, 0xb6, 0x67, 0x9c, 0x47, 0x0a, 0xa5, 0x74, 0x4f, 0x48, 0x8b, 0xff, 0xe1, 0xc4, 0xf7, 0x47, 0x0c, 0x57, 0xff, 0xc4, 0xea, 0xe7, 0x5e, 0xa7, 0x14, 0xf1, }; static const unsigned char ecdh_brainpoolp224t1_4696_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4696_sharedsecret[] = { 0x5a, 0xc9, 0x17, 0x51, 0x2d, 0xa9, 0x99, 0x39, 0x4d, 0x41, 0xf9, 0x12, 0x03, 0x67, 0x0e, 0x42, 0xf3, 0x1c, 0xf9, 0xd7, 0x82, 0x9c, 0xb9, 0xf2, 0x71, 0x18, 0xeb, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4696 = { .name = "ecdh_brainpoolp224t1_4696", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4696_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4696_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4696_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2399 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4697 for ECDH, tcId is 2400 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4697_peerpubkey[] = { 0x3c, 0x09, 0xa9, 0xe4, 0x1e, 0xe3, 0x99, 0xb6, 0xfe, 0x26, 0x3e, 0x5e, 0xd6, 0x48, 0xf4, 0xdd, 0x51, 0xd3, 0xc0, 0xdf, 0x3d, 0x25, 0x9a, 0x66, 0xa9, 0x32, 0x9b, 0x7b, 0x07, 0x26, 0xcc, 0xe0, 0x1f, 0xc5, 0xce, 0x69, 0x2f, 0x65, 0x6b, 0xbf, 0x72, 0xec, 0xdf, 0x8b, 0x7c, 0x06, 0x09, 0xfc, 0x70, 0x2a, 0x1c, 0xb3, 0xe6, 0x10, 0x88, 0xce, }; static const unsigned char ecdh_brainpoolp224t1_4697_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4697_sharedsecret[] = { 0xc8, 0x11, 0x09, 0xf6, 0xbe, 0xe1, 0x6a, 0xac, 0x38, 0xd9, 0x59, 0x91, 0xca, 0x97, 0xbb, 0xee, 0xbe, 0xa4, 0x1e, 0x12, 0x11, 0x50, 0xc3, 0xc9, 0xaa, 0xa7, 0x26, 0x04, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4697 = { .name = "ecdh_brainpoolp224t1_4697", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4697_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4697_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4697_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2400 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4698 for ECDH, tcId is 2401 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4698_peerpubkey[] = { 0x23, 0x79, 0xc7, 0xb7, 0xb4, 0x3e, 0x81, 0xff, 0x07, 0x9b, 0x7e, 0x6d, 0x91, 0x03, 0x42, 0x6e, 0xa8, 0x2f, 0x68, 0x09, 0x8f, 0xa5, 0x88, 0xa5, 0xa5, 0x6d, 0x54, 0xe1, 0x68, 0x23, 0x60, 0x14, 0x90, 0x7d, 0x2d, 0x56, 0x78, 0x6e, 0x79, 0xd6, 0x51, 0x0c, 0xd8, 0xbb, 0x61, 0x22, 0x92, 0x6a, 0x2c, 0xc1, 0x4a, 0xf4, 0x9c, 0x39, 0xb0, 0xe7, }; static const unsigned char ecdh_brainpoolp224t1_4698_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4698_sharedsecret[] = { 0x11, 0x82, 0xbc, 0xce, 0x0d, 0x7d, 0xea, 0x80, 0xe1, 0xb3, 0xd2, 0x5d, 0x5b, 0xee, 0x30, 0x36, 0x60, 0x5d, 0x93, 0xe5, 0xa4, 0x9d, 0x6f, 0x8a, 0x15, 0xb6, 0x16, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4698 = { .name = "ecdh_brainpoolp224t1_4698", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4698_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4698_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4698_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2401 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4699 for ECDH, tcId is 2402 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4699_peerpubkey[] = { 0xd1, 0x88, 0x77, 0xa0, 0x93, 0xbe, 0x79, 0x77, 0x10, 0x34, 0x57, 0x87, 0xbe, 0x49, 0x81, 0x18, 0xac, 0xde, 0xfc, 0x3b, 0xf3, 0x6c, 0xfe, 0x3b, 0xec, 0xe0, 0xf6, 0xa6, 0x3c, 0x51, 0xc4, 0x8f, 0x43, 0x80, 0x35, 0xfe, 0x28, 0xc2, 0x50, 0x53, 0xc9, 0x07, 0x5e, 0x31, 0x0b, 0x8a, 0x0b, 0x33, 0x32, 0x1c, 0x3e, 0x7f, 0x2a, 0x3d, 0x31, 0xab, }; static const unsigned char ecdh_brainpoolp224t1_4699_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4699_sharedsecret[] = { 0x3d, 0x2d, 0x77, 0xbe, 0x47, 0x9e, 0xf0, 0xe5, 0x6e, 0xf5, 0x3d, 0xf6, 0xe7, 0x13, 0x78, 0xcd, 0xca, 0x9d, 0x1a, 0x9a, 0x3c, 0x08, 0x42, 0x60, 0xb6, 0x20, 0xdb, 0xd8, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4699 = { .name = "ecdh_brainpoolp224t1_4699", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4699_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4699_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4699_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2402 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4700 for ECDH, tcId is 2403 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4700_peerpubkey[] = { 0x0a, 0x34, 0x4c, 0x60, 0x8f, 0xb2, 0x24, 0x30, 0xb7, 0x6e, 0x81, 0x26, 0x77, 0xaf, 0x92, 0x61, 0x26, 0x66, 0x40, 0x5b, 0xfb, 0xcd, 0xdf, 0xc4, 0xd4, 0xb1, 0x8b, 0x69, 0xa0, 0x99, 0x66, 0xa6, 0x21, 0xe6, 0x71, 0x5c, 0x3a, 0xd5, 0x38, 0x44, 0x77, 0xee, 0xf6, 0xef, 0x71, 0xbb, 0x9f, 0xe2, 0xc5, 0xa6, 0xd3, 0x57, 0x13, 0xd7, 0x39, 0x39, }; static const unsigned char ecdh_brainpoolp224t1_4700_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4700_sharedsecret[] = { 0x6d, 0x29, 0x58, 0xf0, 0x81, 0xaa, 0x7d, 0x02, 0x0c, 0xfb, 0x87, 0x78, 0x8f, 0x33, 0x9c, 0xad, 0x42, 0xa4, 0xe4, 0xfe, 0x5a, 0x66, 0x3f, 0xf2, 0x0b, 0x93, 0x47, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4700 = { .name = "ecdh_brainpoolp224t1_4700", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4700_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4700_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4700_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2403 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4701 for ECDH, tcId is 2404 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4701_peerpubkey[] = { 0x3d, 0x51, 0xe2, 0x95, 0x0d, 0xb1, 0xcf, 0x47, 0xd6, 0x8a, 0xa4, 0xa6, 0x7d, 0x6a, 0xf5, 0x9b, 0xcd, 0x74, 0x5d, 0xf9, 0xd2, 0x0a, 0x74, 0x0e, 0x64, 0x7a, 0x41, 0x21, 0x2d, 0x26, 0xe4, 0x71, 0xa4, 0x3d, 0xf8, 0xf6, 0x48, 0x64, 0xff, 0x38, 0xbb, 0x9e, 0xc6, 0x16, 0x65, 0xca, 0xa6, 0x33, 0xb7, 0x8e, 0x7b, 0x1c, 0x0a, 0x00, 0x1f, 0xbf, }; static const unsigned char ecdh_brainpoolp224t1_4701_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4701_sharedsecret[] = { 0x12, 0x9d, 0x36, 0xe0, 0x00, 0x48, 0x8f, 0x7e, 0xc0, 0xbf, 0x42, 0xfd, 0x3f, 0xc4, 0xba, 0x1a, 0xf3, 0xce, 0xce, 0xae, 0x6d, 0xcf, 0xa4, 0xea, 0xad, 0xb1, 0xa1, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4701 = { .name = "ecdh_brainpoolp224t1_4701", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4701_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4701_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4701_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2404 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4702 for ECDH, tcId is 2405 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4702_peerpubkey[] = { 0xaa, 0x74, 0xe3, 0x2d, 0xb9, 0x85, 0xc9, 0x45, 0x25, 0x81, 0x86, 0xa9, 0x9c, 0x29, 0xd4, 0xaa, 0x2f, 0x9a, 0xad, 0xab, 0xb9, 0x7c, 0xae, 0xcd, 0xe9, 0x64, 0x25, 0x8e, 0x7d, 0x3c, 0x35, 0xde, 0xaf, 0xdc, 0xd8, 0x7e, 0xd4, 0x9a, 0x7d, 0x0d, 0x4c, 0x87, 0xe9, 0x38, 0x46, 0xed, 0x03, 0x12, 0x1a, 0x1b, 0xcc, 0xc9, 0xf1, 0x0a, 0x60, 0xcc, }; static const unsigned char ecdh_brainpoolp224t1_4702_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4702_sharedsecret[] = { 0x86, 0xee, 0xe5, 0x57, 0x11, 0x2a, 0x89, 0x84, 0x24, 0x15, 0x17, 0xee, 0x96, 0x2f, 0x93, 0xd2, 0x81, 0xd8, 0xf9, 0x4b, 0x28, 0xbc, 0x25, 0x0a, 0x49, 0x81, 0xee, 0x4c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4702 = { .name = "ecdh_brainpoolp224t1_4702", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4702_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4702_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4702_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2405 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4703 for ECDH, tcId is 2406 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4703_peerpubkey[] = { 0xab, 0x65, 0xcc, 0x30, 0x3a, 0x25, 0x9b, 0xb9, 0x28, 0x2b, 0xea, 0x0c, 0x96, 0xa4, 0x43, 0x5f, 0x4c, 0x42, 0xe8, 0xcc, 0x36, 0x0b, 0xe3, 0xff, 0x2e, 0x06, 0x4e, 0x33, 0x7a, 0xd3, 0x71, 0x1a, 0x4f, 0xc7, 0x9f, 0xda, 0x30, 0x68, 0x0c, 0x6c, 0xde, 0x34, 0x69, 0x2b, 0x5f, 0x4a, 0xd6, 0xbf, 0xa5, 0xb1, 0xd8, 0x9b, 0x42, 0xb2, 0xc3, 0xae, }; static const unsigned char ecdh_brainpoolp224t1_4703_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4703_sharedsecret[] = { 0x70, 0x52, 0xd6, 0xe8, 0xbc, 0x27, 0x88, 0x1c, 0x6c, 0x40, 0x11, 0xc4, 0xef, 0x34, 0x15, 0x3c, 0xd2, 0x16, 0xd5, 0x6e, 0xb3, 0xa9, 0xe1, 0x76, 0x44, 0x33, 0x42, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4703 = { .name = "ecdh_brainpoolp224t1_4703", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4703_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4703_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4703_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2406 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4704 for ECDH, tcId is 2407 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4704_peerpubkey[] = { 0x09, 0x22, 0x07, 0xcc, 0x6b, 0xbb, 0xac, 0x49, 0x0d, 0x9a, 0x3b, 0xf1, 0x60, 0xa5, 0x93, 0xf0, 0x5f, 0xeb, 0xe8, 0x41, 0x9e, 0x03, 0xae, 0xfe, 0xfc, 0xb6, 0x60, 0x94, 0x03, 0xc7, 0x5d, 0x71, 0x89, 0xa8, 0xf9, 0xd2, 0x9d, 0x5b, 0x71, 0x6f, 0x67, 0x7b, 0x15, 0xc8, 0x6a, 0xda, 0x94, 0x31, 0xed, 0xfd, 0xc7, 0xd3, 0x92, 0x6a, 0x2e, 0x0e, }; static const unsigned char ecdh_brainpoolp224t1_4704_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4704_sharedsecret[] = { 0x80, 0xd1, 0x5e, 0xee, 0x10, 0xde, 0xe8, 0xe1, 0xe0, 0x27, 0x30, 0xe3, 0x85, 0xee, 0x27, 0x74, 0x35, 0xf5, 0x08, 0x46, 0x43, 0x93, 0xc3, 0xa0, 0x91, 0xe5, 0xf6, 0x99, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4704 = { .name = "ecdh_brainpoolp224t1_4704", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4704_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4704_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4704_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2407 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4705 for ECDH, tcId is 2408 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4705_peerpubkey[] = { 0x38, 0x51, 0xa7, 0xa9, 0xbc, 0xcb, 0x47, 0x72, 0xf2, 0xcd, 0x61, 0xf1, 0xcd, 0x4c, 0xbd, 0x59, 0x9a, 0x17, 0xaf, 0xb7, 0xfa, 0x5f, 0x9e, 0x2d, 0xe9, 0x0e, 0x80, 0x4d, 0x82, 0x26, 0x85, 0xf0, 0x3a, 0x21, 0x2d, 0xda, 0xf2, 0x12, 0x98, 0x0c, 0x3e, 0x3e, 0x7c, 0xeb, 0xcf, 0x42, 0x1a, 0x2d, 0xf1, 0x12, 0xe4, 0xe5, 0x6a, 0xd6, 0xc6, 0x73, }; static const unsigned char ecdh_brainpoolp224t1_4705_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4705_sharedsecret[] = { 0xc9, 0xe2, 0x83, 0x6f, 0xd6, 0x54, 0x8c, 0x04, 0xfd, 0x78, 0x5d, 0x0d, 0x89, 0x80, 0x71, 0xb0, 0x0c, 0xf8, 0xdc, 0x1a, 0xcf, 0xb5, 0x8f, 0x30, 0x54, 0x33, 0x19, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4705 = { .name = "ecdh_brainpoolp224t1_4705", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4705_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4705_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4705_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2408 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4706 for ECDH, tcId is 2409 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4706_peerpubkey[] = { 0xa5, 0xc9, 0x15, 0x7f, 0x8c, 0x17, 0xb3, 0x31, 0x98, 0x93, 0xe4, 0x2c, 0xc9, 0xda, 0xf5, 0x40, 0x6a, 0x92, 0x9b, 0x7f, 0xcc, 0x63, 0x30, 0x0f, 0xd0, 0x79, 0x0d, 0x07, 0x15, 0x43, 0xc8, 0x10, 0xbd, 0x4f, 0xc8, 0x91, 0x15, 0x73, 0xef, 0xb6, 0x67, 0x09, 0x78, 0x96, 0x70, 0x36, 0x75, 0x1f, 0x9f, 0xbd, 0x5f, 0x1e, 0x6d, 0x92, 0x03, 0x3c, }; static const unsigned char ecdh_brainpoolp224t1_4706_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4706_sharedsecret[] = { 0x3c, 0x70, 0x0d, 0xd0, 0x8f, 0x98, 0x74, 0x26, 0x49, 0xcf, 0x87, 0x7e, 0x96, 0xca, 0x77, 0x08, 0xfb, 0xb3, 0x43, 0xba, 0x03, 0x39, 0x7d, 0xc8, 0x1b, 0x34, 0x21, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4706 = { .name = "ecdh_brainpoolp224t1_4706", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4706_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4706_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4706_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2409 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4707 for ECDH, tcId is 2410 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4707_peerpubkey[] = { 0x06, 0xdf, 0x06, 0xd3, 0x78, 0xbe, 0x11, 0x6c, 0x05, 0x07, 0x34, 0x6e, 0x6a, 0xd8, 0x46, 0x0b, 0xaa, 0x77, 0x22, 0x7b, 0x76, 0x2a, 0xfd, 0x34, 0x39, 0x37, 0xb6, 0x23, 0x38, 0xd5, 0x45, 0x5f, 0xe4, 0x8c, 0x9c, 0x35, 0xd6, 0xd3, 0x32, 0x2b, 0x42, 0x11, 0xc7, 0x20, 0xd2, 0xd8, 0x06, 0x20, 0x93, 0x39, 0xe8, 0xd8, 0x5e, 0xda, 0x41, 0xd8, }; static const unsigned char ecdh_brainpoolp224t1_4707_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4707_sharedsecret[] = { 0x1a, 0xe0, 0x51, 0x67, 0x48, 0x66, 0xd6, 0x6c, 0x8f, 0x15, 0x62, 0xa3, 0x0e, 0x74, 0xdb, 0xb9, 0x6f, 0x9f, 0x82, 0x70, 0x86, 0x0e, 0x09, 0x19, 0xbb, 0x23, 0x0e, 0x1e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4707 = { .name = "ecdh_brainpoolp224t1_4707", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4707_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4707_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4707_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2410 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4708 for ECDH, tcId is 2411 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4708_peerpubkey[] = { 0xa8, 0x27, 0xea, 0x62, 0x36, 0x86, 0x66, 0x9d, 0xbc, 0x65, 0xa2, 0xd6, 0x01, 0xe3, 0x3a, 0xc0, 0xa4, 0xf3, 0xd1, 0x70, 0x97, 0x0b, 0x1c, 0x63, 0xff, 0xb4, 0x99, 0xf3, 0xc1, 0x5c, 0x54, 0x22, 0x1c, 0xe2, 0xb9, 0xe8, 0x42, 0x8a, 0xa0, 0xe6, 0x0f, 0x0b, 0xfe, 0xad, 0x56, 0x5f, 0x2f, 0x16, 0x96, 0x33, 0x5b, 0x33, 0x89, 0x3b, 0x08, 0x0d, }; static const unsigned char ecdh_brainpoolp224t1_4708_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4708_sharedsecret[] = { 0x30, 0xe5, 0x9f, 0x4a, 0x2f, 0xc4, 0x70, 0x25, 0xb8, 0xbf, 0x12, 0x99, 0x4e, 0xdc, 0x50, 0x54, 0x4c, 0x73, 0x75, 0xdc, 0xbe, 0x12, 0x3e, 0x79, 0x4c, 0x46, 0x74, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4708 = { .name = "ecdh_brainpoolp224t1_4708", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4708_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4708_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4708_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2411 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4709 for ECDH, tcId is 2412 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4709_peerpubkey[] = { 0x98, 0xae, 0xe0, 0xf1, 0xff, 0x50, 0x91, 0xa6, 0xd8, 0x1e, 0x62, 0xdb, 0xc2, 0x6d, 0x0e, 0xc0, 0xa7, 0x78, 0x35, 0x23, 0x97, 0x54, 0x58, 0xd2, 0x19, 0xa2, 0x7f, 0x86, 0x5b, 0xd9, 0x4b, 0x39, 0x83, 0x2e, 0x6f, 0xc9, 0x2d, 0xca, 0x90, 0x02, 0xf7, 0x29, 0xd1, 0x3c, 0x94, 0xf5, 0x83, 0x70, 0x21, 0x7e, 0x46, 0x98, 0x73, 0x1b, 0x3e, 0x2c, }; static const unsigned char ecdh_brainpoolp224t1_4709_privkey[] = { 0x9f, 0x99, 0xcb, 0xb6, 0x1f, 0x44, 0x60, 0xf9, 0x7e, 0x04, 0xbd, 0xd7, 0xb5, 0xb4, 0x5c, 0x75, 0xfb, 0x5a, 0x3e, 0xc0, 0x9e, 0x4d, 0xae, 0x36, 0x39, 0x59, 0x21, 0xeb, }; static const unsigned char ecdh_brainpoolp224t1_4709_sharedsecret[] = { 0x01, 0x44, 0x7a, 0x5c, 0x8b, 0x9a, 0x54, 0xd4, 0xb3, 0x64, 0xc1, 0xbf, 0x53, 0xf3, 0x5a, 0x03, 0xd3, 0xa0, 0x21, 0xea, 0x34, 0x22, 0xfe, 0x31, 0x0b, 0xc7, 0x26, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4709 = { .name = "ecdh_brainpoolp224t1_4709", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4709_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4709_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4709_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2412 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4710 for ECDH, tcId is 2413 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4710_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4710_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp224t1_4710_sharedsecret[] = { 0x80, 0xfc, 0x3b, 0xbf, 0x6a, 0xb2, 0xa4, 0x5f, 0xeb, 0xab, 0x50, 0x03, 0xa4, 0x6c, 0xe3, 0x2a, 0x89, 0x98, 0xe7, 0x76, 0xf1, 0xca, 0xa5, 0x1e, 0x27, 0x4a, 0x05, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4710 = { .name = "ecdh_brainpoolp224t1_4710", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4710_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4710_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4710_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2413 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4711 for ECDH, tcId is 2414 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4711_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4711_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4711_sharedsecret[] = { 0x3f, 0x5d, 0x8a, 0xfa, 0x32, 0x52, 0x8b, 0x63, 0xdb, 0xfa, 0x75, 0x9e, 0x9d, 0x5e, 0xd3, 0x7a, 0x8f, 0xb8, 0x7f, 0x98, 0xd8, 0x56, 0xf5, 0xe0, 0xbb, 0x3f, 0x67, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4711 = { .name = "ecdh_brainpoolp224t1_4711", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4711_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4711_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4711_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2414 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4712 for ECDH, tcId is 2415 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4712_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4712_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4712_sharedsecret[] = { 0x1d, 0x9c, 0x4d, 0x7d, 0xf9, 0x36, 0xeb, 0x55, 0x02, 0xee, 0x61, 0xd6, 0x85, 0x26, 0x87, 0x7f, 0x04, 0xad, 0xb8, 0x30, 0x74, 0x7e, 0x6f, 0x34, 0x75, 0xae, 0x54, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4712 = { .name = "ecdh_brainpoolp224t1_4712", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4712_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4712_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4712_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2415 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4713 for ECDH, tcId is 2416 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4713_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4713_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4713_sharedsecret[] = { 0x6a, 0x60, 0x85, 0xf7, 0x32, 0x72, 0xbe, 0xcd, 0xd7, 0x85, 0x8c, 0xa7, 0xb8, 0x0d, 0xae, 0xd5, 0x6f, 0xe3, 0x9f, 0x31, 0x9d, 0xfc, 0xaa, 0x55, 0x9c, 0xe6, 0x47, 0xa9, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4713 = { .name = "ecdh_brainpoolp224t1_4713", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4713_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4713_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4713_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2416 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4714 for ECDH, tcId is 2417 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4714_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4714_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4714_sharedsecret[] = { 0x18, 0xaf, 0x3c, 0x83, 0xb2, 0x7f, 0xe6, 0xa1, 0xe5, 0xf5, 0x6b, 0xe3, 0xed, 0x25, 0x6b, 0x9f, 0x74, 0x0d, 0xcb, 0xe4, 0x1b, 0xac, 0x7f, 0x14, 0x8f, 0x26, 0x92, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4714 = { .name = "ecdh_brainpoolp224t1_4714", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4714_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4714_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4714_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2417 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4715 for ECDH, tcId is 2418 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4715_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4715_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4a, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224t1_4715_sharedsecret[] = { 0x2f, 0xd7, 0xf5, 0x3b, 0x0e, 0xd8, 0x7d, 0x43, 0x8c, 0xfb, 0x45, 0xc9, 0xeb, 0x8d, 0x5c, 0x34, 0x3c, 0x6a, 0x30, 0x9f, 0xcf, 0xdb, 0x96, 0x86, 0xd6, 0xa0, 0xf9, 0x7e, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4715 = { .name = "ecdh_brainpoolp224t1_4715", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4715_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4715_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4715_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2418 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4716 for ECDH, tcId is 2419 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4716_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4716_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xce, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224t1_4716_sharedsecret[] = { 0xc5, 0xc9, 0x48, 0x72, 0x4f, 0xce, 0x4e, 0x94, 0xad, 0x86, 0x82, 0x70, 0x5b, 0x06, 0x31, 0x38, 0xfe, 0x18, 0xcc, 0x0e, 0x7f, 0x33, 0x20, 0x4f, 0x49, 0x3a, 0x3f, 0x4a, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4716 = { .name = "ecdh_brainpoolp224t1_4716", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4716_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4716_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4716_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2419 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4717 for ECDH, tcId is 2420 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4717_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4717_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xd6, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224t1_4717_sharedsecret[] = { 0x5b, 0x02, 0x30, 0xdd, 0x60, 0x40, 0x07, 0xc7, 0x1c, 0x0e, 0x41, 0x6f, 0xa2, 0x4a, 0x7c, 0x01, 0x92, 0xe0, 0xec, 0x97, 0x4e, 0xfd, 0xfa, 0xc2, 0x08, 0xc1, 0x15, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4717 = { .name = "ecdh_brainpoolp224t1_4717", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4717_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4717_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4717_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2420 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4718 for ECDH, tcId is 2421 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4718_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4718_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa2, 0xa5, 0xa7, 0x93, 0x9f, }; static const unsigned char ecdh_brainpoolp224t1_4718_sharedsecret[] = { 0x06, 0x61, 0x62, 0x50, 0xfd, 0x3f, 0x7a, 0x3a, 0xbe, 0x31, 0xb8, 0x36, 0x59, 0xb2, 0x12, 0x81, 0xad, 0x93, 0xd6, 0xe1, 0x68, 0x92, 0x2f, 0xc2, 0x15, 0x7b, 0x4b, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4718 = { .name = "ecdh_brainpoolp224t1_4718", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4718_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4718_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4718_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2421 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4719 for ECDH, tcId is 2422 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4719_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4719_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x92, 0xdd, }; static const unsigned char ecdh_brainpoolp224t1_4719_sharedsecret[] = { 0x97, 0xde, 0xd4, 0xc2, 0xe0, 0x6b, 0x5a, 0x13, 0xc9, 0x10, 0x9b, 0xe3, 0xfa, 0x42, 0xdc, 0x2c, 0xa9, 0x3a, 0x30, 0x6f, 0xdf, 0x9e, 0x85, 0xac, 0x4b, 0xb0, 0x2e, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4719 = { .name = "ecdh_brainpoolp224t1_4719", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4719_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4719_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4719_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2422 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4720 for ECDH, tcId is 2423 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4720_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4720_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x5d, }; static const unsigned char ecdh_brainpoolp224t1_4720_sharedsecret[] = { 0x68, 0x67, 0x98, 0x27, 0x0c, 0x7e, 0x18, 0x8e, 0x6a, 0xb3, 0xe2, 0x8a, 0x10, 0x75, 0x4f, 0x96, 0x5d, 0x5d, 0x02, 0xf3, 0x3d, 0x30, 0xd8, 0xfa, 0xf3, 0x81, 0x55, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4720 = { .name = "ecdh_brainpoolp224t1_4720", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4720_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4720_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4720_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2423 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4721 for ECDH, tcId is 2424 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4721_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4721_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9c, }; static const unsigned char ecdh_brainpoolp224t1_4721_sharedsecret[] = { 0x80, 0xfc, 0x3b, 0xbf, 0x6a, 0xb2, 0xa4, 0x5f, 0xeb, 0xab, 0x50, 0x03, 0xa4, 0x6c, 0xe3, 0x2a, 0x89, 0x98, 0xe7, 0x76, 0xf1, 0xca, 0xa5, 0x1e, 0x27, 0x4a, 0x05, 0x9b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4721 = { .name = "ecdh_brainpoolp224t1_4721", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4721_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4721_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4721_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2424 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4722 for ECDH, tcId is 2425 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4722_peerpubkey[] = { 0x1b, 0x80, 0x1b, 0x9b, 0x96, 0x9d, 0xaa, 0xdd, 0xbc, 0x40, 0x87, 0x6e, 0xf7, 0x92, 0x01, 0xc5, 0xdd, 0x8e, 0x48, 0x0f, 0x00, 0x3a, 0x04, 0x3e, 0x81, 0x88, 0x62, 0xc2, 0x67, 0x09, 0xe1, 0xb2, 0xf6, 0xd8, 0x82, 0x6a, 0xe4, 0x25, 0x7a, 0x5d, 0xb4, 0x6b, 0x78, 0x84, 0x80, 0x91, 0xc5, 0x6a, 0x54, 0x57, 0x72, 0x48, 0x18, 0x59, 0x36, 0xb1, }; static const unsigned char ecdh_brainpoolp224t1_4722_privkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd0, 0xfb, 0x98, 0xd1, 0x16, 0xbc, 0x4b, 0x6d, 0xde, 0xbc, 0xa3, 0xa5, 0xa7, 0x93, 0x9d, }; static const unsigned char ecdh_brainpoolp224t1_4722_sharedsecret[] = { 0xd6, 0x4f, 0x68, 0xde, 0xba, 0xf7, 0x51, 0xd6, 0x3d, 0xa1, 0x88, 0x36, 0x68, 0x82, 0x20, 0x31, 0xc6, 0x9e, 0x91, 0x3c, 0xc5, 0x3b, 0x96, 0x9e, 0x5f, 0xba, 0xe8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4722 = { .name = "ecdh_brainpoolp224t1_4722", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4722_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4722_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4722_sharedsecret, .sharedsecretlen = 28, .result = 1, .comment = "edge case private key, tcId is 2425 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4723 for ECDH, tcId is 2426 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4723_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4723_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4723 = { .name = "ecdh_brainpoolp224t1_4723", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4723_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4723_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2426 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4724 for ECDH, tcId is 2427 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4724_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4724_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4724 = { .name = "ecdh_brainpoolp224t1_4724", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4724_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4724_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2427 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4725 for ECDH, tcId is 2428 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4725_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224t1_4725_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4725 = { .name = "ecdh_brainpoolp224t1_4725", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4725_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4725_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2428 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4726 for ECDH, tcId is 2429 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4726_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4726_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4726 = { .name = "ecdh_brainpoolp224t1_4726", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4726_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4726_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2429 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4727 for ECDH, tcId is 2430 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4727_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4727_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4727 = { .name = "ecdh_brainpoolp224t1_4727", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4727_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4727_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2430 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4728 for ECDH, tcId is 2431 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4728_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4728_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4728 = { .name = "ecdh_brainpoolp224t1_4728", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4728_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4728_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2431 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4729 for ECDH, tcId is 2432 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4729_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224t1_4729_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4729 = { .name = "ecdh_brainpoolp224t1_4729", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4729_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4729_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2432 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4730 for ECDH, tcId is 2433 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4730_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4730_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4730 = { .name = "ecdh_brainpoolp224t1_4730", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4730_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4730_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2433 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4731 for ECDH, tcId is 2434 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4731_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4731_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4731 = { .name = "ecdh_brainpoolp224t1_4731", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4731_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4731_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2434 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4732 for ECDH, tcId is 2435 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4732_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4732_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4732 = { .name = "ecdh_brainpoolp224t1_4732", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4732_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4732_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2435 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4733 for ECDH, tcId is 2436 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4733_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224t1_4733_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4733 = { .name = "ecdh_brainpoolp224t1_4733", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4733_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4733_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2436 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4734 for ECDH, tcId is 2437 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4734_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4734_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4734 = { .name = "ecdh_brainpoolp224t1_4734", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4734_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4734_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2437 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4735 for ECDH, tcId is 2438 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4735_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4735_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4735 = { .name = "ecdh_brainpoolp224t1_4735", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4735_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4735_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2438 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4736 for ECDH, tcId is 2439 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4736_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp224t1_4736_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4736 = { .name = "ecdh_brainpoolp224t1_4736", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4736_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4736_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2439 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4737 for ECDH, tcId is 2440 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4737_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xfe, }; static const unsigned char ecdh_brainpoolp224t1_4737_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4737 = { .name = "ecdh_brainpoolp224t1_4737", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4737_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4737_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2440 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4738 for ECDH, tcId is 2441 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4738_peerpubkey[] = { 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, 0xd7, 0xc1, 0x34, 0xaa, 0x26, 0x43, 0x66, 0x86, 0x2a, 0x18, 0x30, 0x25, 0x75, 0xd1, 0xd7, 0x87, 0xb0, 0x9f, 0x07, 0x57, 0x97, 0xda, 0x89, 0xf5, 0x7e, 0xc8, 0xc0, 0xff, }; static const unsigned char ecdh_brainpoolp224t1_4738_privkey[] = { 0xc7, 0xe1, 0xdc, 0x95, 0xd8, 0x87, 0x7f, 0xf3, 0x74, 0x5e, 0xd3, 0xaf, 0x68, 0x8d, 0xc6, 0x3b, 0x22, 0xcd, 0xc3, 0x4d, 0x5b, 0x21, 0x3c, 0x6a, 0x5a, 0x5e, 0x32, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4738 = { .name = "ecdh_brainpoolp224t1_4738", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4738_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4738_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2441 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4739 for ECDH, tcId is 2443 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4739_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x80, }; static const unsigned char ecdh_brainpoolp224t1_4739_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4739 = { .name = "ecdh_brainpoolp224t1_4739", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4739_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4739_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2443 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4740 for ECDH, tcId is 2444 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4740_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp224t1_4740_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4740 = { .name = "ecdh_brainpoolp224t1_4740", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4740_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4740_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2444 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4741 for ECDH, tcId is 2447 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4741_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4741_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4741_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4741 = { .name = "ecdh_brainpoolp224t1_4741", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4741_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4741_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4741_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 1, tcId is 2447 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4742 for ECDH, tcId is 2448 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4742_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4742_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4742_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4742 = { .name = "ecdh_brainpoolp224t1_4742", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4742_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4742_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4742_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "order = 5290290092223871682666367384584369978999613398297400491171, tcId is 2448 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4743 for ECDH, tcId is 2449 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4743_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4743_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4743_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4743 = { .name = "ecdh_brainpoolp224t1_4743", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4743_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4743_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4743_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator = (0,0), tcId is 2449 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4744 for ECDH, tcId is 2450 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4744_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4744_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4744_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4744 = { .name = "ecdh_brainpoolp224t1_4744", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4744_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4744_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4744_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "generator not on curve, tcId is 2450 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4745 for ECDH, tcId is 2453 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4745_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4745_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4745_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4745 = { .name = "ecdh_brainpoolp224t1_4745", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4745_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4745_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4745_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = 2, tcId is 2453 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4746 for ECDH, tcId is 2455 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4746_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4746_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4746_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4746 = { .name = "ecdh_brainpoolp224t1_4746", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4746_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4746_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4746_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "cofactor = None, tcId is 2455 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4747 for ECDH, tcId is 2457 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4747_peerpubkey[] = { 0x07, 0x4f, 0x56, 0xdc, 0x2e, 0xa6, 0x48, 0xef, 0x89, 0xc3, 0xb7, 0x2e, 0x23, 0xbb, 0xd2, 0xda, 0x36, 0xf6, 0x02, 0x43, 0xe4, 0xd2, 0x06, 0x7b, 0x70, 0x60, 0x4a, 0xf1, 0xc2, 0x16, 0x5c, 0xec, 0x2f, 0x86, 0x60, 0x3d, 0x60, 0xc8, 0xa6, 0x11, 0xd5, 0xb8, 0x4b, 0xa3, 0xd9, 0x1d, 0xfe, 0x1a, 0x48, 0x08, 0x25, 0xbc, 0xc4, 0xaf, 0x3b, 0xcf, }; static const unsigned char ecdh_brainpoolp224t1_4747_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4747 = { .name = "ecdh_brainpoolp224t1_4747", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4747_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4747_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp224r1, tcId is 2457 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4748 for ECDH, tcId is 2460 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4748_peerpubkey[] = { 0x3f, 0x6a, 0x6d, 0x7e, 0xf9, 0x68, 0xed, 0x14, 0xf2, 0x2f, 0xb5, 0xc4, 0x45, 0xd0, 0xa1, 0x98, 0xb0, 0x90, 0x55, 0x5f, 0xc4, 0xb8, 0x44, 0x0a, 0xe0, 0xa0, 0x04, 0xb0, 0x90, 0xea, 0xd0, 0xc4, 0x38, 0x93, 0x26, 0xa4, 0x41, 0x7f, 0x2d, 0x32, 0x48, 0xdb, 0x53, 0x5d, 0x57, 0xe0, 0x39, 0xc0, 0x45, 0xea, 0x19, 0x58, 0xc4, 0x84, 0x06, 0x7e, }; static const unsigned char ecdh_brainpoolp224t1_4748_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const unsigned char ecdh_brainpoolp224t1_4748_sharedsecret[] = { 0x72, 0xd7, 0xec, 0x66, 0x3f, 0x05, 0x9d, 0xda, 0x71, 0x36, 0x0e, 0x49, 0x29, 0x6c, 0xae, 0x4f, 0x20, 0x4d, 0x49, 0x28, 0xe6, 0x20, 0x4b, 0x40, 0x0e, 0x2a, 0x0b, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4748 = { .name = "ecdh_brainpoolp224t1_4748", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4748_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4748_privkey, .privkeylen = 28, .sharedsecret = ecdh_brainpoolp224t1_4748_sharedsecret, .sharedsecretlen = 28, .result = 0, .comment = "a = 0, tcId is 2460 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4749 for ECDH, tcId is 2462 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4749_peerpubkey[] = { 0x89, 0x20, 0xeb, 0xf7, 0xc3, 0x26, 0xc0, 0xc7, 0xd3, 0xce, 0xd9, 0xc8, 0x36, 0xbc, 0x67, 0x39, 0xee, 0x0f, 0x01, 0xeb, 0x25, 0x4a, 0xe7, 0x30, 0x2c, 0x1c, 0x89, 0x27, 0xba, 0xcf, 0xb0, 0xe6, 0xff, 0xf4, 0xaa, 0x3c, 0x1e, 0x3c, 0x9b, 0x72, 0x30, 0x78, 0x4f, 0x56, 0x8f, 0x74, 0xa7, 0x74, 0x04, 0x60, 0x8f, 0xc7, 0xdb, 0x2f, 0x66, 0xe9, }; static const unsigned char ecdh_brainpoolp224t1_4749_privkey[] = { 0x10, 0x19, 0xba, 0xbf, 0x6c, 0xb6, 0x83, 0x11, 0x2d, 0xc1, 0xbf, 0xf4, 0x2f, 0x1e, 0x0b, 0x92, 0x42, 0xb4, 0xb3, 0xd3, 0xce, 0xed, 0xc3, 0x8b, 0x1a, 0x0d, 0xe2, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4749 = { .name = "ecdh_brainpoolp224t1_4749", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4749_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4749_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP224r1, tcId is 2462 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4750 for ECDH, tcId is 2463 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4750_peerpubkey[] = { 0x42, 0x96, 0x5e, 0x56, 0x28, 0x57, 0x93, 0xad, 0xc7, 0xa3, 0x89, 0x25, 0x9e, 0x9c, 0xf5, 0x89, 0xdd, 0xd0, 0x15, 0xe9, 0xbd, 0x53, 0x9e, 0x72, 0x51, 0xe8, 0x7b, 0xdf, 0x83, 0xd7, 0x89, 0x79, 0xf3, 0x1c, 0x47, 0x57, 0x3b, 0x1b, 0x45, 0x63, 0xd5, 0x26, 0x05, 0xce, 0x78, 0xd1, 0x3d, 0x4b, 0x3d, 0xba, 0x91, 0x37, 0xcf, 0xb8, 0x76, 0x72, }; static const unsigned char ecdh_brainpoolp224t1_4750_privkey[] = { 0x11, 0x74, 0x17, 0x02, 0x73, 0x0e, 0xcb, 0xd0, 0x30, 0x22, 0x06, 0xcc, 0x13, 0x7a, 0xfa, 0xc2, 0x9c, 0x8e, 0x5b, 0x15, 0x1a, 0xa2, 0x76, 0x61, 0x4b, 0xee, 0x27, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4750 = { .name = "ecdh_brainpoolp224t1_4750", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4750_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4750_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224r1, tcId is 2463 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4751 for ECDH, tcId is 2468 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4751_peerpubkey[] = { 0x2d, 0x49, 0xd0, 0xe6, 0x96, 0xa2, 0x27, 0x4f, 0xe2, 0x92, 0xd6, 0xaf, 0x08, 0x0e, 0x05, 0xb4, 0x69, 0x4a, 0xa1, 0x66, 0xe7, 0x58, 0x3e, 0x24, 0xc5, 0xaa, 0x2f, 0xd6, 0x1e, 0x2d, 0x36, 0xab, 0x7e, 0xba, 0x3f, 0xfa, 0x1f, 0x49, 0x5e, 0xf5, 0x68, 0x51, 0x9c, 0xf4, 0x9e, 0xfe, 0x67, 0x27, 0x61, 0xa9, 0x26, 0x29, 0x8e, 0x45, 0x3f, 0xab, }; static const unsigned char ecdh_brainpoolp224t1_4751_privkey[] = { 0x11, 0x74, 0x17, 0x02, 0x73, 0x0e, 0xcb, 0xd0, 0x30, 0x22, 0x06, 0xcc, 0x13, 0x7a, 0xfa, 0xc2, 0x9c, 0x8e, 0x5b, 0x15, 0x1a, 0xa2, 0x76, 0x61, 0x4b, 0xee, 0x27, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4751 = { .name = "ecdh_brainpoolp224t1_4751", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4751_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4751_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp224k1, tcId is 2468 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4752 for ECDH, tcId is 2469 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4752_peerpubkey[] = { 0x07, 0xf4, 0xcc, 0x76, 0xa1, 0xdf, 0xd1, 0x5a, 0x8e, 0x60, 0x86, 0x29, 0x8b, 0x51, 0xcf, 0x7b, 0x5a, 0x45, 0x2b, 0xd7, 0x8d, 0x22, 0x25, 0x50, 0x79, 0xc8, 0x70, 0x19, 0x3e, 0x38, 0xb5, 0x8d, 0x0a, 0xf2, 0xc0, 0xf1, 0xae, 0x92, 0x9b, 0x4f, 0x07, 0xaf, 0x26, 0x69, 0x4f, 0x28, 0xe2, 0xe2, 0x8e, 0xfe, 0x26, 0x4c, 0x47, 0x37, 0xd3, 0xd5, }; static const unsigned char ecdh_brainpoolp224t1_4752_privkey[] = { 0x11, 0x74, 0x17, 0x02, 0x73, 0x0e, 0xcb, 0xd0, 0x30, 0x22, 0x06, 0xcc, 0x13, 0x7a, 0xfa, 0xc2, 0x9c, 0x8e, 0x5b, 0x15, 0x1a, 0xa2, 0x76, 0x61, 0x4b, 0xee, 0x27, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4752 = { .name = "ecdh_brainpoolp224t1_4752", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4752_peerpubkey, .peerpubkeylen = 56, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4752_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP224r1, tcId is 2469 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4753 for ECDH, tcId is 2478 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4753_peerpubkey[] = { 0x29, 0x76, 0xd6, 0x7c, 0x09, 0x90, 0xb1, 0x5a, 0x69, 0xfd, 0xf3, 0xb1, 0xa8, 0xaf, 0x1c, 0xda, 0x50, 0x93, 0xd5, 0x6e, 0xdf, 0x5a, 0x07, 0x92, 0x0c, 0x4a, 0x25, 0x60, }; static const unsigned char ecdh_brainpoolp224t1_4753_privkey[] = { 0x94, 0xa0, 0x3f, 0x9d, 0xa3, 0xf3, 0x49, 0xba, 0xf9, 0x7d, 0x12, 0x70, 0x06, 0xb9, 0x1a, 0xec, 0x00, 0x28, 0x13, 0x60, 0x22, 0x32, 0x36, 0xad, 0xe4, 0x96, 0x0e, 0xf4, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4753 = { .name = "ecdh_brainpoolp224t1_4753", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4753_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4753_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2478 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4754 for ECDH, tcId is 2479 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4754_peerpubkey[] = { 0x20, 0x76, 0x34, 0x26, 0x77, 0x19, 0xed, 0xd5, 0x47, 0x9d, 0x4c, 0xb2, 0x95, 0xb9, 0x18, 0x77, 0x61, 0x37, 0x9d, 0x49, 0x54, 0xea, 0x21, 0x67, 0xf9, 0xf7, 0xc2, 0x1e, }; static const unsigned char ecdh_brainpoolp224t1_4754_privkey[] = { 0x7a, 0x8b, 0xa1, 0x9e, 0x87, 0x1e, 0xa2, 0x62, 0x50, 0x47, 0x8b, 0xd7, 0x75, 0xbd, 0xf5, 0x08, 0x3d, 0xca, 0x77, 0x9e, 0xf9, 0x52, 0x70, 0xc5, 0x04, 0xd1, 0x4e, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4754 = { .name = "ecdh_brainpoolp224t1_4754", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4754_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4754_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2479 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4755 for ECDH, tcId is 2480 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4755_peerpubkey[] = { 0x20, 0x76, 0x34, 0x26, 0x77, 0x19, 0xed, 0xd5, 0x47, 0x9d, 0x4c, 0xb2, 0x95, 0xb9, 0x18, 0x77, 0x61, 0x37, 0x9d, 0x49, 0x54, 0xea, 0x21, 0x67, 0xf9, 0xf7, 0xc2, 0x1e, }; static const unsigned char ecdh_brainpoolp224t1_4755_privkey[] = { 0x7a, 0x8b, 0xa1, 0x9e, 0x87, 0x1e, 0xa2, 0x62, 0x50, 0x47, 0x8b, 0xd7, 0x75, 0xbd, 0xf5, 0x08, 0x3d, 0xca, 0x77, 0x9e, 0xf9, 0x52, 0x70, 0xc5, 0x04, 0xd1, 0x4e, 0x43, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4755 = { .name = "ecdh_brainpoolp224t1_4755", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4755_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4755_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2480 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4756 for ECDH, tcId is 2481 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4756_peerpubkey[] = { 0xa5, 0x64, 0xbd, 0x8c, 0x20, 0x7a, 0x8e, 0xea, 0x68, 0x81, 0x92, 0xe5, 0x5f, 0x72, 0x98, 0x90, 0x3d, 0x50, 0x65, 0x34, 0x19, 0x1f, 0x94, 0x18, 0x53, 0x68, 0x9d, 0xc5, }; static const unsigned char ecdh_brainpoolp224t1_4756_privkey[] = { 0x54, 0x0e, 0xdb, 0x90, 0x3f, 0x98, 0x28, 0x5b, 0xf9, 0xc0, 0x5a, 0x9b, 0xdc, 0x28, 0x63, 0xa8, 0x6c, 0x7e, 0x88, 0x5c, 0xfe, 0x9b, 0x93, 0xd2, 0x33, 0x00, 0x0a, 0x5b, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4756 = { .name = "ecdh_brainpoolp224t1_4756", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4756_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4756_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2481 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4757 for ECDH, tcId is 2482 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4757_peerpubkey[] = { 0x85, 0xc7, 0x34, 0x28, 0x70, 0xc4, 0x20, 0x49, 0xed, 0x0e, 0x28, 0x88, 0x92, 0xf8, 0xbf, 0x63, 0xff, 0x3a, 0x81, 0x0c, 0x58, 0x03, 0x1f, 0x9a, 0x1a, 0xf6, 0xfa, 0x99, }; static const unsigned char ecdh_brainpoolp224t1_4757_privkey[] = { 0x3b, 0x2e, 0xb0, 0xd8, 0xc8, 0xed, 0xfb, 0xa4, 0x4f, 0x9c, 0x52, 0x3c, 0x3d, 0x4a, 0x14, 0x35, 0x25, 0x60, 0x81, 0x84, 0xa1, 0x08, 0xcc, 0x37, 0x6a, 0x08, 0x63, 0x93, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4757 = { .name = "ecdh_brainpoolp224t1_4757", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4757_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4757_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2482 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4758 for ECDH, tcId is 2483 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4758_peerpubkey[] = { 0x85, 0xc7, 0x34, 0x28, 0x70, 0xc4, 0x20, 0x49, 0xed, 0x0e, 0x28, 0x88, 0x92, 0xf8, 0xbf, 0x63, 0xff, 0x3a, 0x81, 0x0c, 0x58, 0x03, 0x1f, 0x9a, 0x1a, 0xf6, 0xfa, 0x99, }; static const unsigned char ecdh_brainpoolp224t1_4758_privkey[] = { 0x3b, 0x2e, 0xb0, 0xd8, 0xc8, 0xed, 0xfb, 0xa4, 0x4f, 0x9c, 0x52, 0x3c, 0x3d, 0x4a, 0x14, 0x35, 0x25, 0x60, 0x81, 0x84, 0xa1, 0x08, 0xcc, 0x37, 0x6a, 0x08, 0x63, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4758 = { .name = "ecdh_brainpoolp224t1_4758", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4758_peerpubkey, .peerpubkeylen = 28, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4758_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2483 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4759 for ECDH, tcId is 2484 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) static const unsigned char ecdh_brainpoolp224t1_4759_peerpubkey[] = { 0xa5, 0x64, 0xbd, 0x8c, 0x20, 0x7a, 0x8e, 0xea, 0x68, 0x81, 0x92, 0xe5, 0x5f, 0x72, 0x98, 0x90, 0x3d, 0x50, 0x65, 0x34, 0x19, 0x1f, 0x94, 0x18, 0x53, 0x68, 0x9d, 0xc5, }; static const unsigned char ecdh_brainpoolp224t1_4759_privkey[] = { 0x54, 0x0e, 0xdb, 0x90, 0x3f, 0x98, 0x28, 0x5b, 0xf9, 0xc0, 0x5a, 0x9b, 0xdc, 0x28, 0x63, 0xa8, 0x6c, 0x7e, 0x88, 0x5c, 0xfe, 0x9b, 0x93, 0xd2, 0x33, 0x00, 0x0a, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp224t1_4759 = { .name = "ecdh_brainpoolp224t1_4759", .ecdh_alg = ECCCDH, .curve = &brainpoolp224t1_str_params, .peerpubkey = ecdh_brainpoolp224t1_4759_peerpubkey, .peerpubkeylen = 28, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp224t1_4759_privkey, .privkeylen = 28, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2484 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) */ /* Test 4760 for ECDH, tcId is 2485 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4760_peerpubkey[] = { 0x81, 0xfe, 0xc1, 0x31, 0x4c, 0xe8, 0xac, 0x7e, 0x94, 0x56, 0xb9, 0x5f, 0xbc, 0xeb, 0x2f, 0x6c, 0x89, 0x7a, 0x2f, 0x17, 0xab, 0xd6, 0x09, 0x2a, 0x78, 0xb0, 0x0f, 0xb7, 0xd8, 0x53, 0x4a, 0xbe, 0x10, 0xff, 0x1b, 0x43, 0x6f, 0xaa, 0x8d, 0x0b, 0xea, 0x8c, 0x86, 0xb7, 0x20, 0xc2, 0xd1, 0x7e, 0xa0, 0x5f, 0x0e, 0x94, 0x6f, 0x2c, 0x0a, 0x85, 0xa9, 0x49, 0xb8, 0x3d, 0x7e, 0x0f, 0x2b, 0xe4, }; static const unsigned char ecdh_brainpoolp256t1_4760_privkey[] = { 0x9c, 0xbd, 0x52, 0xd2, 0xae, 0xe6, 0x3e, 0x00, 0x3d, 0x94, 0x66, 0x00, 0x46, 0xf7, 0xed, 0x6e, 0x72, 0x44, 0x63, 0xab, 0xce, 0x25, 0x0e, 0xe1, 0x26, 0x4c, 0x94, 0xd0, 0xc9, 0xc9, 0xfa, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4760_sharedsecret[] = { 0x71, 0xb3, 0x75, 0x82, 0x21, 0x08, 0x78, 0x53, 0x8d, 0x83, 0xf4, 0x38, 0x4f, 0x18, 0x43, 0x22, 0x74, 0x49, 0xb3, 0x40, 0x79, 0xd6, 0x85, 0x6d, 0x5c, 0x59, 0x15, 0xad, 0x8e, 0x74, 0x7c, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4760 = { .name = "ecdh_brainpoolp256t1_4760", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4760_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4760_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4760_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 2485 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4761 for ECDH, tcId is 2486 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4761_peerpubkey[] = { 0x81, 0xfe, 0xc1, 0x31, 0x4c, 0xe8, 0xac, 0x7e, 0x94, 0x56, 0xb9, 0x5f, 0xbc, 0xeb, 0x2f, 0x6c, 0x89, 0x7a, 0x2f, 0x17, 0xab, 0xd6, 0x09, 0x2a, 0x78, 0xb0, 0x0f, 0xb7, 0xd8, 0x53, 0x4a, 0xbe, }; static const unsigned char ecdh_brainpoolp256t1_4761_privkey[] = { 0x9c, 0xbd, 0x52, 0xd2, 0xae, 0xe6, 0x3e, 0x00, 0x3d, 0x94, 0x66, 0x00, 0x46, 0xf7, 0xed, 0x6e, 0x72, 0x44, 0x63, 0xab, 0xce, 0x25, 0x0e, 0xe1, 0x26, 0x4c, 0x94, 0xd0, 0xc9, 0xc9, 0xfa, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4761_sharedsecret[] = { 0x71, 0xb3, 0x75, 0x82, 0x21, 0x08, 0x78, 0x53, 0x8d, 0x83, 0xf4, 0x38, 0x4f, 0x18, 0x43, 0x22, 0x74, 0x49, 0xb3, 0x40, 0x79, 0xd6, 0x85, 0x6d, 0x5c, 0x59, 0x15, 0xad, 0x8e, 0x74, 0x7c, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4761 = { .name = "ecdh_brainpoolp256t1_4761", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4761_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4761_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4761_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "compressed public key, tcId is 2486 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4762 for ECDH, tcId is 2487 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4762_peerpubkey[] = { 0x40, 0xdb, 0xa5, 0xf4, 0xc1, 0x6a, 0xb5, 0x2f, 0x2f, 0x2e, 0xc9, 0x8d, 0xde, 0x1c, 0x5a, 0xb1, 0x61, 0x6e, 0x8d, 0x66, 0xef, 0xe2, 0xfa, 0xb2, 0x73, 0x57, 0xfd, 0x5f, 0xef, 0x28, 0x84, 0xd7, 0x06, 0xfc, 0x02, 0xda, 0xd5, 0xb8, 0x25, 0x04, 0x15, 0xf8, 0x7e, 0x5e, 0x66, 0x6a, 0x8b, 0x8b, 0x2a, 0x3c, 0x58, 0xc2, 0x1f, 0xf6, 0x61, 0x8e, 0x31, 0x3f, 0x9a, 0x95, 0x68, 0x29, 0x7d, 0x51, }; static const unsigned char ecdh_brainpoolp256t1_4762_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4762_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4762 = { .name = "ecdh_brainpoolp256t1_4762", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4762_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4762_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4762_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2487 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4763 for ECDH, tcId is 2488 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4763_peerpubkey[] = { 0x70, 0xd8, 0xdc, 0x59, 0xb3, 0xe6, 0xe9, 0xa1, 0x1f, 0x8b, 0x96, 0x8d, 0x73, 0x6d, 0xac, 0xc2, 0x77, 0x74, 0xb0, 0xd4, 0x8b, 0x01, 0xf4, 0xbe, 0xcc, 0x9b, 0xaf, 0x25, 0xb8, 0x68, 0x8d, 0x66, 0x93, 0x35, 0x94, 0xed, 0x8e, 0xb8, 0xc5, 0x07, 0xb4, 0x21, 0x87, 0x87, 0xc6, 0x49, 0x27, 0xb6, 0x52, 0x94, 0x64, 0xa3, 0x91, 0xc3, 0x07, 0x91, 0x63, 0x67, 0x44, 0x4c, 0x28, 0x97, 0x38, 0xd8, }; static const unsigned char ecdh_brainpoolp256t1_4763_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4763_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4763 = { .name = "ecdh_brainpoolp256t1_4763", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4763_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4763_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4763_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2488 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4764 for ECDH, tcId is 2489 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4764_peerpubkey[] = { 0x6d, 0xa9, 0x62, 0x2d, 0x0b, 0x7d, 0xcd, 0x3e, 0x47, 0xa9, 0xce, 0xc8, 0x8e, 0xdd, 0x96, 0x3b, 0x58, 0xdd, 0x8f, 0x9b, 0xab, 0x8c, 0x22, 0xd5, 0x74, 0xbb, 0x62, 0x8e, 0xca, 0x0f, 0xd7, 0xd9, 0x0f, 0x2f, 0xc3, 0x4b, 0x57, 0x06, 0x78, 0xcc, 0x74, 0xb7, 0x70, 0x4c, 0xaf, 0x77, 0x85, 0x6a, 0xfb, 0x09, 0x97, 0x59, 0xb9, 0xf1, 0x6e, 0x9f, 0xf3, 0x4a, 0x65, 0xff, 0xb4, 0xa5, 0x8d, 0xc5, }; static const unsigned char ecdh_brainpoolp256t1_4764_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4764_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4764 = { .name = "ecdh_brainpoolp256t1_4764", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4764_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4764_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4764_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2489 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4765 for ECDH, tcId is 2490 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4765_peerpubkey[] = { 0x80, 0x40, 0x00, 0x1f, 0x2d, 0x2c, 0x7d, 0x5e, 0x1c, 0xa2, 0xe0, 0xde, 0xad, 0xa3, 0x48, 0xa8, 0x5f, 0x69, 0x6f, 0x03, 0x30, 0xf9, 0xc4, 0xbf, 0xf4, 0xd8, 0xd0, 0x46, 0x71, 0x16, 0x56, 0xf4, 0x14, 0xf0, 0x28, 0xde, 0xf3, 0xae, 0x26, 0xe3, 0x41, 0x91, 0x3a, 0xbd, 0x0e, 0xaf, 0x40, 0x97, 0x20, 0x8e, 0xce, 0xcd, 0x78, 0x89, 0x98, 0xf6, 0xbb, 0x88, 0x0f, 0x68, 0x30, 0x4a, 0x3e, 0xbd, }; static const unsigned char ecdh_brainpoolp256t1_4765_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4765_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4765 = { .name = "ecdh_brainpoolp256t1_4765", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4765_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4765_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4765_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2490 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4766 for ECDH, tcId is 2491 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4766_peerpubkey[] = { 0x36, 0x73, 0x4a, 0xea, 0x2d, 0xe9, 0xcc, 0x2c, 0x3a, 0x1e, 0x4d, 0x55, 0x2c, 0x56, 0x48, 0x92, 0xd0, 0xa2, 0x71, 0x16, 0x88, 0xd8, 0xa5, 0x32, 0x3e, 0x42, 0x41, 0x78, 0x90, 0x88, 0xc3, 0x14, 0x44, 0x31, 0x7a, 0xd7, 0x3b, 0x3d, 0x38, 0xbf, 0xae, 0x25, 0xbf, 0x44, 0x0c, 0x86, 0xd4, 0xb0, 0xda, 0x60, 0x8b, 0xf1, 0xdb, 0x3f, 0xfb, 0x66, 0x68, 0x15, 0x92, 0xf5, 0xc0, 0x46, 0xca, 0xf2, }; static const unsigned char ecdh_brainpoolp256t1_4766_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4766_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4766 = { .name = "ecdh_brainpoolp256t1_4766", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4766_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4766_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4766_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2491 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4767 for ECDH, tcId is 2492 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4767_peerpubkey[] = { 0x96, 0xa5, 0x71, 0x53, 0x57, 0x86, 0xb9, 0xb4, 0xde, 0x1f, 0xb3, 0x39, 0xb6, 0x22, 0x66, 0x9b, 0xe5, 0x38, 0x91, 0x3b, 0xc8, 0xfb, 0xd9, 0xba, 0x36, 0x95, 0x1a, 0x3f, 0xb3, 0xed, 0x45, 0xb3, 0x5d, 0x4c, 0xfa, 0x5c, 0x65, 0xf7, 0x5a, 0x20, 0xca, 0xff, 0x34, 0xfb, 0x7c, 0xe8, 0x94, 0x87, 0x5a, 0x34, 0x8a, 0x86, 0x02, 0x5b, 0x88, 0x9c, 0x4b, 0xa3, 0xe6, 0xbb, 0xce, 0xeb, 0x04, 0x29, }; static const unsigned char ecdh_brainpoolp256t1_4767_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4767_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4767 = { .name = "ecdh_brainpoolp256t1_4767", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4767_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4767_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4767_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2492 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4768 for ECDH, tcId is 2493 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4768_peerpubkey[] = { 0x31, 0xef, 0xe3, 0x4c, 0x91, 0xa2, 0x66, 0xc9, 0x53, 0x33, 0xca, 0xad, 0x8e, 0x3f, 0x1a, 0x84, 0x02, 0xfa, 0x8c, 0x24, 0x69, 0xf3, 0x6f, 0x5e, 0x6b, 0xd6, 0x8c, 0x7b, 0x94, 0xc6, 0x46, 0x0d, 0x24, 0x6b, 0x99, 0xe6, 0xb3, 0x1c, 0x85, 0x82, 0xfe, 0x17, 0xef, 0xc4, 0xae, 0x52, 0xba, 0x93, 0x55, 0xdd, 0xc1, 0x51, 0xf9, 0x0f, 0x59, 0x82, 0x6e, 0x96, 0xe8, 0x57, 0xaa, 0xb3, 0x2f, 0xf2, }; static const unsigned char ecdh_brainpoolp256t1_4768_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4768_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4768 = { .name = "ecdh_brainpoolp256t1_4768", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4768_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4768_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4768_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2493 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4769 for ECDH, tcId is 2494 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4769_peerpubkey[] = { 0x7e, 0xd2, 0x03, 0x93, 0x65, 0xd4, 0x80, 0x14, 0x8a, 0x18, 0x6c, 0x4f, 0xa2, 0x18, 0x36, 0x4d, 0x62, 0xc4, 0x1e, 0x22, 0x2d, 0x83, 0x90, 0xb4, 0xc8, 0xd2, 0xe7, 0x59, 0xbc, 0x25, 0x7f, 0xb0, 0x3c, 0x44, 0x3e, 0x3f, 0xf0, 0x7d, 0x64, 0x05, 0x59, 0xeb, 0x33, 0x8e, 0xf0, 0x21, 0x51, 0xea, 0xed, 0xe5, 0xd7, 0x35, 0x93, 0xf3, 0x4f, 0x26, 0x22, 0x22, 0x6a, 0x2f, 0xec, 0xf7, 0x2f, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4769_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4769_sharedsecret[] = { 0x01, 0x00, 0xd2, 0x9a, 0xd5, 0x77, 0x23, 0xbb, 0x97, 0x83, 0x2e, 0x7b, 0xa7, 0xcf, 0x29, 0x3b, 0x9a, 0xf7, 0x68, 0x01, 0x15, 0xbc, 0xa8, 0x73, 0x7c, 0x71, 0xf4, 0xd1, 0x0f, 0x4c, 0x5a, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4769 = { .name = "ecdh_brainpoolp256t1_4769", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4769_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4769_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4769_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2494 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4770 for ECDH, tcId is 2495 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4770_peerpubkey[] = { 0x60, 0x55, 0xb4, 0x4b, 0x24, 0x7b, 0xd0, 0xb9, 0x21, 0xfb, 0x77, 0xb0, 0x19, 0x9e, 0x21, 0x18, 0x05, 0x9c, 0x30, 0xf8, 0x81, 0xb7, 0xa7, 0x17, 0x50, 0xf2, 0x03, 0x1a, 0x3c, 0xd5, 0x26, 0xf1, 0x48, 0xa7, 0xcb, 0x2e, 0xe4, 0x55, 0xd0, 0x52, 0x7f, 0xc2, 0x1d, 0x68, 0x88, 0x54, 0xc5, 0x2b, 0xdf, 0xb3, 0x93, 0x00, 0xbd, 0x8c, 0x22, 0x9a, 0xc2, 0x85, 0xf4, 0x99, 0x41, 0x0a, 0x85, 0x1c, }; static const unsigned char ecdh_brainpoolp256t1_4770_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4770_sharedsecret[] = { 0x41, 0x8a, 0xb1, 0xc0, 0xe3, 0x38, 0xb5, 0xa8, 0x44, 0xd6, 0xb3, 0x08, 0x6c, 0xf6, 0x44, 0x48, 0x4b, 0x44, 0xb3, 0xa2, 0x41, 0x17, 0x0d, 0x6a, 0xf9, 0xe4, 0xa4, 0x12, 0x67, 0x4e, 0x6b, 0x58, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4770 = { .name = "ecdh_brainpoolp256t1_4770", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4770_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4770_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4770_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2495 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4771 for ECDH, tcId is 2496 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4771_peerpubkey[] = { 0x74, 0x19, 0x9b, 0xbf, 0x3d, 0x3f, 0x63, 0xc6, 0x34, 0x4e, 0x94, 0xfe, 0xa9, 0x81, 0x43, 0x56, 0x7b, 0x4d, 0xe1, 0x85, 0xda, 0x34, 0x84, 0x90, 0x10, 0x8c, 0xcb, 0x68, 0x10, 0xc0, 0xeb, 0xb1, 0x34, 0x99, 0x8e, 0x53, 0xca, 0x4f, 0xec, 0xb4, 0xca, 0xd5, 0xb9, 0x0d, 0xdb, 0x57, 0xa4, 0x42, 0x95, 0xfd, 0x0d, 0xef, 0xac, 0x69, 0x93, 0x6e, 0x25, 0x8d, 0x60, 0xf6, 0x86, 0x89, 0x8e, 0xe4, }; static const unsigned char ecdh_brainpoolp256t1_4771_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4771_sharedsecret[] = { 0x47, 0x76, 0x59, 0x46, 0x08, 0xa0, 0x60, 0x16, 0x02, 0x09, 0xbc, 0x73, 0xed, 0x84, 0x5a, 0xbe, 0xb0, 0xd8, 0xa8, 0x74, 0x0e, 0x4b, 0x8a, 0x58, 0xf3, 0x10, 0x3d, 0x9a, 0x67, 0xef, 0x15, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4771 = { .name = "ecdh_brainpoolp256t1_4771", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4771_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4771_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4771_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2496 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4772 for ECDH, tcId is 2497 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4772_peerpubkey[] = { 0xa9, 0x43, 0x53, 0x7c, 0x03, 0x3a, 0x58, 0x4e, 0xe2, 0xdb, 0x8a, 0x46, 0xb3, 0x36, 0xd9, 0x9b, 0xbe, 0xcd, 0x5f, 0x59, 0xe7, 0x71, 0x9d, 0x86, 0x50, 0x11, 0xf3, 0xb3, 0x20, 0xb4, 0xc5, 0x8a, 0x1d, 0xde, 0x73, 0xb2, 0xbb, 0x69, 0x43, 0x27, 0xd4, 0xb2, 0xf3, 0x3b, 0x04, 0x16, 0xb0, 0x79, 0x59, 0xcf, 0x5a, 0xe4, 0xcb, 0x8a, 0x85, 0x67, 0xd7, 0x95, 0x6b, 0xa4, 0x45, 0x3b, 0x1f, 0xa3, }; static const unsigned char ecdh_brainpoolp256t1_4772_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4772_sharedsecret[] = { 0x52, 0x5e, 0x89, 0xb7, 0xb7, 0x9a, 0x50, 0x1f, 0xdd, 0x55, 0x64, 0xb2, 0xaf, 0xa6, 0x7e, 0x23, 0xe1, 0xdc, 0xf1, 0xec, 0x21, 0x1f, 0xc3, 0xe7, 0x1e, 0xca, 0x2a, 0x26, 0xe5, 0xf6, 0x8f, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4772 = { .name = "ecdh_brainpoolp256t1_4772", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4772_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4772_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4772_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2497 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4773 for ECDH, tcId is 2498 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4773_peerpubkey[] = { 0x08, 0x41, 0xa4, 0x88, 0x91, 0xe8, 0xbf, 0x03, 0x64, 0xfd, 0x95, 0xd4, 0xf2, 0x67, 0xb9, 0x83, 0x97, 0xae, 0xc9, 0x39, 0x45, 0x96, 0xa1, 0xde, 0xe3, 0xbe, 0x6e, 0xf4, 0x2d, 0xf4, 0xc8, 0x1e, 0x69, 0xb0, 0x5c, 0xaf, 0xf8, 0x54, 0x28, 0x6c, 0xa0, 0x24, 0xbe, 0xca, 0xed, 0x6b, 0xc7, 0x8c, 0xfd, 0x89, 0x01, 0xc5, 0x23, 0x9d, 0x41, 0xfb, 0xc2, 0xf7, 0xb8, 0xa6, 0x7b, 0x90, 0xfc, 0xf2, }; static const unsigned char ecdh_brainpoolp256t1_4773_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4773_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4773 = { .name = "ecdh_brainpoolp256t1_4773", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4773_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4773_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4773_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2498 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4774 for ECDH, tcId is 2499 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4774_peerpubkey[] = { 0x09, 0x21, 0xc4, 0xd6, 0xc8, 0x82, 0x0e, 0x8f, 0xd5, 0xca, 0xf5, 0x3d, 0x1c, 0x76, 0xdb, 0x6d, 0x1b, 0xc2, 0xcb, 0x6c, 0xcc, 0x37, 0x47, 0xd6, 0x26, 0x84, 0xba, 0x68, 0x5e, 0xe8, 0x67, 0x9b, 0x44, 0x24, 0x2a, 0x2b, 0x91, 0x94, 0x97, 0xeb, 0xfd, 0xbc, 0xdc, 0x08, 0x95, 0x19, 0xfe, 0x08, 0x6e, 0xd0, 0x8b, 0xcf, 0xf6, 0x4d, 0x88, 0xf9, 0x3c, 0xc5, 0x26, 0xfb, 0x8f, 0x79, 0x23, 0x83, }; static const unsigned char ecdh_brainpoolp256t1_4774_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4774_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4774 = { .name = "ecdh_brainpoolp256t1_4774", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4774_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4774_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4774_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2499 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4775 for ECDH, tcId is 2500 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4775_peerpubkey[] = { 0x41, 0x2c, 0xd2, 0xd2, 0xdb, 0xe9, 0xbb, 0x96, 0x9d, 0x75, 0x2b, 0x34, 0x4c, 0x6b, 0x86, 0x25, 0xfc, 0xaf, 0x25, 0x1b, 0xb5, 0x8a, 0x26, 0xfd, 0x4f, 0x78, 0xe9, 0x45, 0xbb, 0x30, 0x64, 0x90, 0x72, 0x61, 0x93, 0xd8, 0x31, 0xb6, 0xd5, 0x82, 0xf5, 0x11, 0x57, 0x60, 0xa1, 0xbd, 0xc3, 0x4a, 0x79, 0x4e, 0xb2, 0x1a, 0xba, 0x73, 0x28, 0xb6, 0x45, 0x57, 0x7b, 0x91, 0x09, 0x10, 0x63, 0x61, }; static const unsigned char ecdh_brainpoolp256t1_4775_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4775_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4775 = { .name = "ecdh_brainpoolp256t1_4775", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4775_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4775_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4775_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2500 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4776 for ECDH, tcId is 2501 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4776_peerpubkey[] = { 0x7a, 0x93, 0x34, 0xe2, 0x5e, 0x89, 0x65, 0x19, 0xe5, 0xf8, 0x7f, 0x84, 0x9f, 0x9a, 0x0b, 0x97, 0x00, 0x65, 0x4c, 0x98, 0xa6, 0x86, 0xda, 0xe2, 0x67, 0x2b, 0xac, 0x8d, 0x7b, 0xfa, 0x39, 0x25, 0x1a, 0x39, 0x5b, 0x7b, 0x8d, 0xe3, 0x65, 0x4b, 0x8f, 0xf4, 0x33, 0x0e, 0xe3, 0x5f, 0x33, 0x51, 0x45, 0x0c, 0x3a, 0x4a, 0x1d, 0xc5, 0xe8, 0xda, 0x15, 0x0d, 0x4d, 0xe5, 0xc8, 0x57, 0x50, 0xc6, }; static const unsigned char ecdh_brainpoolp256t1_4776_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4776_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4776 = { .name = "ecdh_brainpoolp256t1_4776", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4776_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4776_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4776_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2501 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4777 for ECDH, tcId is 2502 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4777_peerpubkey[] = { 0x84, 0x8d, 0x50, 0x8c, 0x5d, 0x95, 0xe9, 0x76, 0x5b, 0xcd, 0x30, 0x50, 0x9e, 0x51, 0x92, 0x4b, 0xa5, 0xca, 0xc5, 0xee, 0x5b, 0xd4, 0x71, 0xf7, 0x2f, 0xce, 0x04, 0xb5, 0x1c, 0x10, 0xf9, 0x45, 0x23, 0xe3, 0x02, 0xec, 0xca, 0x89, 0xea, 0x14, 0x82, 0xe3, 0xab, 0x71, 0x74, 0x9b, 0x65, 0x12, 0x5d, 0xbf, 0x93, 0xb0, 0xf1, 0x52, 0xad, 0x16, 0x86, 0x93, 0x78, 0x96, 0x46, 0x80, 0x61, 0x19, }; static const unsigned char ecdh_brainpoolp256t1_4777_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4777_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4777 = { .name = "ecdh_brainpoolp256t1_4777", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4777_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4777_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4777_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2502 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4778 for ECDH, tcId is 2503 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4778_peerpubkey[] = { 0x27, 0x78, 0x88, 0x65, 0x32, 0x38, 0x65, 0x5c, 0x52, 0x8a, 0x80, 0x56, 0x18, 0x53, 0x83, 0x65, 0x5f, 0x6e, 0x15, 0xfa, 0xfa, 0xc3, 0xbb, 0x72, 0xad, 0xf9, 0x62, 0xcf, 0x1b, 0xb1, 0x1f, 0xf6, 0x0f, 0x55, 0x2f, 0xf2, 0x21, 0xd4, 0x86, 0x43, 0x5e, 0x2b, 0xb1, 0x7a, 0xca, 0x64, 0x4b, 0x4d, 0x9f, 0xfd, 0xbd, 0xbc, 0x4b, 0x9b, 0xe0, 0xe2, 0x65, 0x2c, 0x8a, 0x0e, 0x3b, 0x27, 0x7b, 0xc6, }; static const unsigned char ecdh_brainpoolp256t1_4778_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4778_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4778 = { .name = "ecdh_brainpoolp256t1_4778", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4778_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4778_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4778_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2503 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4779 for ECDH, tcId is 2504 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4779_peerpubkey[] = { 0x8e, 0x72, 0x96, 0xb1, 0xc4, 0xae, 0xaa, 0xfb, 0x1f, 0xd9, 0x43, 0x94, 0x7c, 0xca, 0x52, 0x91, 0x0e, 0x1a, 0x2d, 0x2f, 0xe7, 0xf4, 0xab, 0x16, 0x0f, 0xe8, 0x46, 0x19, 0x42, 0x12, 0x88, 0x74, 0x01, 0xea, 0xcc, 0x97, 0xfc, 0xeb, 0x6e, 0xdb, 0x83, 0x87, 0x37, 0x48, 0x53, 0xf6, 0x90, 0xec, 0x5f, 0xb9, 0xf6, 0x6f, 0x7d, 0x04, 0xad, 0x7f, 0xcd, 0x2b, 0x89, 0x5c, 0x06, 0xef, 0xed, 0xf1, }; static const unsigned char ecdh_brainpoolp256t1_4779_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4779_sharedsecret[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4779 = { .name = "ecdh_brainpoolp256t1_4779", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4779_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4779_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4779_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2504 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4780 for ECDH, tcId is 2505 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4780_peerpubkey[] = { 0x20, 0xda, 0x2c, 0x8e, 0xba, 0x64, 0x5c, 0x86, 0xe6, 0x3c, 0x41, 0xcb, 0x90, 0x2f, 0x5b, 0x6e, 0xdb, 0x8d, 0x46, 0x2a, 0x3d, 0x6a, 0xb3, 0x7c, 0x70, 0x4a, 0x42, 0x8b, 0x9e, 0xa9, 0x5b, 0x8b, 0x86, 0xa1, 0x12, 0x9e, 0x73, 0x37, 0x14, 0x7c, 0x66, 0xa7, 0x0d, 0x25, 0x14, 0x92, 0x7b, 0x80, 0x2a, 0x61, 0x44, 0xa2, 0x79, 0xae, 0x03, 0x45, 0xf4, 0xbe, 0x62, 0xf4, 0xf6, 0x4d, 0x17, 0x2a, }; static const unsigned char ecdh_brainpoolp256t1_4780_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4780_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xb9, 0xcb, 0x97, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4780 = { .name = "ecdh_brainpoolp256t1_4780", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4780_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4780_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4780_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 2505 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4781 for ECDH, tcId is 2506 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4781_peerpubkey[] = { 0x21, 0xfe, 0xdb, 0x3e, 0xa6, 0x15, 0x7d, 0xb4, 0xed, 0x5c, 0x31, 0xea, 0x73, 0xbd, 0x0d, 0xa7, 0xe2, 0xf7, 0x24, 0xaa, 0x16, 0x2d, 0xa1, 0x2d, 0xd0, 0x46, 0xbd, 0x4d, 0xa2, 0x7e, 0xce, 0xd9, 0x3f, 0xb3, 0xb4, 0xc9, 0xe3, 0x9c, 0x0e, 0x39, 0x6f, 0x22, 0x43, 0x64, 0x15, 0x38, 0xf7, 0xa3, 0x9b, 0x86, 0xa2, 0x6e, 0x1a, 0x20, 0xf7, 0x4c, 0xf9, 0x6d, 0x25, 0x97, 0xc0, 0x37, 0xfa, 0x2a, }; static const unsigned char ecdh_brainpoolp256t1_4781_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4781_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x62, 0xc3, 0x95, 0x8c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4781 = { .name = "ecdh_brainpoolp256t1_4781", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4781_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4781_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4781_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 2506 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4782 for ECDH, tcId is 2507 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4782_peerpubkey[] = { 0x14, 0xd4, 0x39, 0xb9, 0x43, 0x52, 0x30, 0x84, 0xb2, 0xba, 0x55, 0x14, 0xb2, 0x9e, 0x8a, 0x08, 0x5f, 0x57, 0x07, 0xe4, 0x34, 0x47, 0x68, 0x46, 0x67, 0x7f, 0xd9, 0xf8, 0xe1, 0x54, 0x6c, 0x0e, 0x07, 0xbf, 0xb2, 0x37, 0xcf, 0x78, 0x85, 0x0a, 0xbf, 0x00, 0xbe, 0xe9, 0x63, 0x30, 0x55, 0x4f, 0xe9, 0x7a, 0x83, 0x14, 0x63, 0xd8, 0x57, 0x68, 0xec, 0x3f, 0x50, 0xf8, 0x3d, 0x2b, 0x13, 0xe2, }; static const unsigned char ecdh_brainpoolp256t1_4782_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4782_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x41, 0x1c, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4782 = { .name = "ecdh_brainpoolp256t1_4782", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4782_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4782_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4782_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 2507 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4783 for ECDH, tcId is 2508 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4783_peerpubkey[] = { 0x4b, 0x79, 0xcd, 0xc1, 0x99, 0x6c, 0x75, 0x38, 0x14, 0x47, 0xb6, 0x76, 0xc3, 0x03, 0x0d, 0x39, 0x82, 0x33, 0x9f, 0xdc, 0x00, 0x1d, 0x36, 0xbf, 0xe2, 0x66, 0x70, 0x95, 0xff, 0x1c, 0x83, 0x34, 0x2b, 0x89, 0xe0, 0x5c, 0xfe, 0xca, 0x01, 0x1e, 0x46, 0xcc, 0x0b, 0x64, 0xd4, 0x4e, 0x1a, 0xc5, 0x2f, 0x25, 0xe6, 0x0d, 0x41, 0x47, 0xf6, 0x62, 0x78, 0xb0, 0x98, 0xbd, 0x08, 0xee, 0x9d, 0x63, }; static const unsigned char ecdh_brainpoolp256t1_4783_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4783_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5b, 0x92, 0x5c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4783 = { .name = "ecdh_brainpoolp256t1_4783", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4783_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4783_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4783_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 2508 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4784 for ECDH, tcId is 2509 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4784_peerpubkey[] = { 0x14, 0xd4, 0x39, 0xb9, 0x43, 0x52, 0x30, 0x84, 0xb2, 0xba, 0x55, 0x14, 0xb2, 0x9e, 0x8a, 0x08, 0x5f, 0x57, 0x07, 0xe4, 0x34, 0x47, 0x68, 0x46, 0x67, 0x7f, 0xd9, 0xf8, 0xe1, 0x54, 0x6c, 0x0e, 0xa2, 0x3b, 0xa5, 0xa3, 0xd2, 0x76, 0x24, 0xb1, 0x7f, 0x65, 0x4b, 0xa7, 0x3a, 0x53, 0x38, 0x22, 0x84, 0xc1, 0x73, 0x0f, 0x71, 0x4d, 0xc8, 0xbf, 0x33, 0xd3, 0xf7, 0x24, 0xe2, 0x43, 0x3f, 0x95, }; static const unsigned char ecdh_brainpoolp256t1_4784_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4784_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x41, 0x1c, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4784 = { .name = "ecdh_brainpoolp256t1_4784", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4784_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4784_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4784_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 2509 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4785 for ECDH, tcId is 2510 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4785_peerpubkey[] = { 0x4b, 0x79, 0xcd, 0xc1, 0x99, 0x6c, 0x75, 0x38, 0x14, 0x47, 0xb6, 0x76, 0xc3, 0x03, 0x0d, 0x39, 0x82, 0x33, 0x9f, 0xdc, 0x00, 0x1d, 0x36, 0xbf, 0xe2, 0x66, 0x70, 0x95, 0xff, 0x1c, 0x83, 0x34, 0x7e, 0x71, 0x77, 0x7e, 0xa3, 0x24, 0xa8, 0x9d, 0xf7, 0x99, 0xff, 0x2b, 0xc9, 0x35, 0x72, 0xad, 0x3f, 0x16, 0x10, 0x16, 0x93, 0xde, 0x29, 0xc5, 0xa7, 0x62, 0xaf, 0x60, 0x16, 0x7f, 0xb6, 0x14, }; static const unsigned char ecdh_brainpoolp256t1_4785_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4785_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5b, 0x92, 0x5c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4785 = { .name = "ecdh_brainpoolp256t1_4785", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4785_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4785_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4785_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 2510 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4786 for ECDH, tcId is 2511 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4786_peerpubkey[] = { 0xa7, 0xbe, 0x6b, 0x39, 0xd8, 0x23, 0x35, 0x9c, 0xff, 0x98, 0xfa, 0x16, 0xcb, 0x9e, 0xbd, 0x2c, 0xb0, 0x21, 0x79, 0x97, 0x73, 0xf0, 0x72, 0x61, 0x4b, 0xfe, 0x8d, 0x7b, 0x66, 0xff, 0xd7, 0x15, 0x53, 0x45, 0x5f, 0x99, 0x68, 0x00, 0x29, 0xe3, 0xdd, 0x46, 0xbc, 0x4a, 0x55, 0xa2, 0xb6, 0xe3, 0x8d, 0x9a, 0xb7, 0x9a, 0xab, 0xbb, 0xb3, 0x6e, 0x18, 0x21, 0xbc, 0x06, 0xd4, 0xef, 0x16, 0x09, }; static const unsigned char ecdh_brainpoolp256t1_4786_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4786_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbb, 0x95, 0xfc, 0x9d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4786 = { .name = "ecdh_brainpoolp256t1_4786", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4786_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4786_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4786_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 2511 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4787 for ECDH, tcId is 2512 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4787_peerpubkey[] = { 0x81, 0x6b, 0x11, 0xc3, 0x63, 0x7f, 0x34, 0xd7, 0x29, 0xca, 0xce, 0x27, 0x70, 0x94, 0xc9, 0x18, 0xf2, 0x64, 0x18, 0x9f, 0x8e, 0xa8, 0xed, 0x95, 0x14, 0x9c, 0xc7, 0xe0, 0xcc, 0xa1, 0xbc, 0x1c, 0x06, 0x4f, 0x79, 0xf0, 0xfc, 0x6e, 0x75, 0x5b, 0x83, 0xf6, 0xdf, 0xb7, 0x05, 0xd9, 0xf5, 0x99, 0x1d, 0x8e, 0x27, 0x17, 0x2e, 0x6d, 0x82, 0x15, 0x73, 0x04, 0xb3, 0xca, 0x7c, 0xa1, 0x32, 0x97, }; static const unsigned char ecdh_brainpoolp256t1_4787_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4787_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xf5, 0xe4, 0xa2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4787 = { .name = "ecdh_brainpoolp256t1_4787", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4787_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4787_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4787_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 2512 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4788 for ECDH, tcId is 2513 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4788_peerpubkey[] = { 0x8c, 0x03, 0xd2, 0x60, 0x6a, 0x0a, 0xbe, 0xc6, 0x25, 0x53, 0x83, 0xdf, 0x23, 0x6e, 0x0e, 0x38, 0xf1, 0x58, 0x38, 0x03, 0x38, 0x34, 0x7b, 0x3e, 0x0f, 0x6c, 0xd8, 0xd8, 0xdd, 0x54, 0xc5, 0xb0, 0xa5, 0xe1, 0x64, 0xae, 0xd1, 0x03, 0xda, 0x23, 0xbf, 0xb1, 0xf5, 0x50, 0x46, 0x31, 0x7b, 0x44, 0xf3, 0x81, 0xd4, 0x39, 0x5d, 0xa4, 0x0d, 0x7f, 0xbc, 0x79, 0x21, 0xd5, 0x18, 0xb4, 0x0d, 0x53, }; static const unsigned char ecdh_brainpoolp256t1_4788_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4788_sharedsecret[] = { 0x3f, 0xfd, 0x35, 0xd0, 0x21, 0xad, 0x4b, 0x9d, 0x76, 0x66, 0x43, 0x24, 0x11, 0x69, 0xff, 0x40, 0x58, 0x76, 0xc8, 0x2d, 0x67, 0xb8, 0x85, 0x7b, 0x38, 0x37, 0xf7, 0xb1, 0xac, 0x31, 0x19, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4788 = { .name = "ecdh_brainpoolp256t1_4788", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4788_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4788_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4788_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's on brainpoolP256r1, tcId is 2513 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4789 for ECDH, tcId is 2514 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4789_peerpubkey[] = { 0x8c, 0x85, 0x22, 0x7a, 0x5c, 0xb1, 0x00, 0xca, 0xd3, 0x23, 0x98, 0xd3, 0x9d, 0xc8, 0xbf, 0xa5, 0xf1, 0x53, 0xf3, 0xf8, 0x25, 0xfa, 0x8b, 0x32, 0x83, 0x79, 0x63, 0x57, 0xb1, 0x78, 0x5a, 0x01, 0xa4, 0x4e, 0x6d, 0x3d, 0x8c, 0xec, 0x06, 0x56, 0x00, 0xce, 0x0c, 0x8e, 0x71, 0x67, 0xfd, 0x1e, 0x26, 0xb4, 0x1f, 0x79, 0x9d, 0xc9, 0x7a, 0x0f, 0xd5, 0xa1, 0x64, 0xce, 0x87, 0x97, 0x52, 0x3c, }; static const unsigned char ecdh_brainpoolp256t1_4789_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4789_sharedsecret[] = { 0x78, 0x86, 0x81, 0x60, 0xfc, 0x89, 0x94, 0x12, 0x4a, 0x17, 0x1f, 0xb2, 0x03, 0xa9, 0xce, 0x82, 0x8a, 0x65, 0x95, 0x62, 0x00, 0x1a, 0x30, 0xab, 0xc9, 0x87, 0xb9, 0xfe, 0xf1, 0xa1, 0xf5, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4789 = { .name = "ecdh_brainpoolp256t1_4789", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4789_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4789_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4789_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small on brainpoolP256r1, tcId is 2514 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4790 for ECDH, tcId is 2515 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4790_peerpubkey[] = { 0x8c, 0x85, 0x22, 0x7a, 0x5c, 0xb1, 0x00, 0xca, 0xd3, 0x23, 0x98, 0xd3, 0x9d, 0xc8, 0xbf, 0xa5, 0xf1, 0x53, 0xf3, 0xf8, 0x25, 0xfa, 0x8b, 0x32, 0x83, 0x79, 0x63, 0x57, 0xb1, 0x78, 0x5a, 0x01, 0x05, 0xac, 0xea, 0x9e, 0x15, 0x02, 0xa3, 0x66, 0x3d, 0x97, 0xfe, 0x02, 0x2c, 0x1b, 0x90, 0x54, 0x47, 0x87, 0xd6, 0xaa, 0x37, 0x5c, 0xa6, 0x18, 0x4a, 0x71, 0xe3, 0x4e, 0x97, 0xd7, 0x01, 0x3b, }; static const unsigned char ecdh_brainpoolp256t1_4790_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4790_sharedsecret[] = { 0x78, 0x86, 0x81, 0x60, 0xfc, 0x89, 0x94, 0x12, 0x4a, 0x17, 0x1f, 0xb2, 0x03, 0xa9, 0xce, 0x82, 0x8a, 0x65, 0x95, 0x62, 0x00, 0x1a, 0x30, 0xab, 0xc9, 0x87, 0xb9, 0xfe, 0xf1, 0xa1, 0xf5, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4790 = { .name = "ecdh_brainpoolp256t1_4790", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4790_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4790_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4790_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large on brainpoolP256r1, tcId is 2515 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4791 for ECDH, tcId is 2516 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4791_peerpubkey[] = { 0x5b, 0xab, 0x05, 0x63, 0x57, 0x5e, 0x08, 0x10, 0x0f, 0xe8, 0xa4, 0xe0, 0xe0, 0xfc, 0xa4, 0xd3, 0x96, 0x13, 0xe2, 0x70, 0x90, 0x9c, 0x1d, 0xfd, 0x3e, 0xa4, 0x66, 0x98, 0x0d, 0xd5, 0xfc, 0x3e, 0x65, 0x5e, 0x58, 0x66, 0x90, 0x62, 0x68, 0x6e, 0xd4, 0xd0, 0x6a, 0xc3, 0x7d, 0xec, 0x0e, 0x75, 0xfd, 0xc9, 0xe9, 0xee, 0x98, 0xbe, 0x94, 0x53, 0xa2, 0x9b, 0xe4, 0x93, 0xce, 0xbb, 0xd4, 0xd7, }; static const unsigned char ecdh_brainpoolp256t1_4791_privkey[] = { 0x06, 0x54, 0x6f, 0x19, 0x66, 0x0b, 0xe4, 0x2b, 0x64, 0x55, 0x81, 0x3d, 0x02, 0xda, 0xb8, 0x22, 0xa1, 0xc5, 0x55, 0x29, 0xe4, 0x31, 0x79, 0xdd, 0x5c, 0xb7, 0x7c, 0xd1, 0x6b, 0x2c, 0x4c, 0xf4, }; static const unsigned char ecdh_brainpoolp256t1_4791_sharedsecret[] = { 0x4d, 0xc1, 0x8c, 0x8b, 0x67, 0x14, 0x08, 0x70, 0x54, 0x23, 0x5d, 0xfd, 0x8b, 0x84, 0xca, 0xbb, 0xf5, 0xa9, 0xea, 0x63, 0xdc, 0x21, 0x7a, 0x56, 0x6d, 0x77, 0x2c, 0xa5, 0x36, 0xb0, 0xe7, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4791 = { .name = "ecdh_brainpoolp256t1_4791", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4791_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4791_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4791_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's on brainpoolP256r1, tcId is 2516 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4792 for ECDH, tcId is 2517 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4792_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0xc3, 0xc8, 0xc6, 0x33, 0xad, 0x5f, 0xf8, 0x02, 0xca, 0xa3, 0xb6, 0xfe, 0xb8, 0xcb, 0xca, 0x45, 0x05, 0x12, 0x47, 0x32, 0xe0, 0x18, 0xe6, 0xff, 0x97, 0xf8, 0x3a, 0xe0, 0xaf, 0xcc, 0xf1, }; static const unsigned char ecdh_brainpoolp256t1_4792_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4792_sharedsecret[] = { 0x58, 0x23, 0xce, 0xc0, 0xfd, 0x56, 0xa5, 0xfc, 0xc1, 0x3c, 0x99, 0x2d, 0x37, 0xe8, 0xb7, 0x44, 0x3b, 0xb9, 0x65, 0x95, 0x84, 0x44, 0x53, 0x27, 0xd6, 0x1d, 0xa2, 0xa5, 0x92, 0x63, 0x24, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4792 = { .name = "ecdh_brainpoolp256t1_4792", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4792_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4792_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4792_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2517 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4793 for ECDH, tcId is 2518 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4793_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0b, 0x0e, 0x6c, 0xcc, 0x05, 0xe5, 0x00, 0x80, 0x89, 0xee, 0x2c, 0x08, 0xc6, 0x4c, 0x6d, 0x84, 0x06, 0x9b, 0x6c, 0xb0, 0x3f, 0x63, 0xdb, 0x15, 0x8e, 0xa3, 0x99, 0xd3, 0x72, 0x38, 0x29, 0xc1, }; static const unsigned char ecdh_brainpoolp256t1_4793_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4793_sharedsecret[] = { 0x86, 0x3b, 0xe1, 0xd0, 0x65, 0x49, 0xfe, 0xec, 0x60, 0xd7, 0xe6, 0x4f, 0x18, 0xd1, 0xaa, 0x61, 0x1d, 0x25, 0x41, 0xc4, 0x62, 0x84, 0xe6, 0xcc, 0xcd, 0xca, 0x53, 0x52, 0xa1, 0xeb, 0x76, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4793 = { .name = "ecdh_brainpoolp256t1_4793", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4793_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4793_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4793_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2518 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4794 for ECDH, tcId is 2519 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4794_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x27, 0x6a, 0x3e, 0x82, 0x36, 0xba, 0x6a, 0xce, 0xd8, 0xb4, 0x80, 0x75, 0x55, 0x08, 0xd5, 0x7c, 0x67, 0x3a, 0xb2, 0xd9, 0x26, 0x1b, 0x4a, 0x94, 0x7e, 0xbe, 0xff, 0x4c, 0xa7, 0x74, 0x2e, 0x88, }; static const unsigned char ecdh_brainpoolp256t1_4794_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4794_sharedsecret[] = { 0x14, 0xc5, 0x33, 0xb1, 0x4c, 0x90, 0xed, 0x53, 0x61, 0x31, 0x17, 0x80, 0x4f, 0x36, 0xea, 0x4e, 0x3e, 0xf8, 0xc0, 0x19, 0xdc, 0xb8, 0xb2, 0xe9, 0x11, 0x7a, 0x74, 0xaa, 0xaf, 0xfb, 0x4d, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4794 = { .name = "ecdh_brainpoolp256t1_4794", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4794_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4794_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4794_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2519 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4795 for ECDH, tcId is 2520 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4795_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x37, 0xed, 0x59, 0xca, 0x49, 0x55, 0x4b, 0x63, 0x3d, 0x1a, 0xf4, 0xa8, 0x3a, 0x5d, 0xa3, 0x4e, 0x1d, 0x83, 0xe5, 0xad, 0xce, 0x8d, 0x0a, 0xf5, 0x46, 0xc1, 0x6d, 0xcc, 0x68, 0xad, 0x31, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4795_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4795_sharedsecret[] = { 0x6b, 0x52, 0x9e, 0xf3, 0xf2, 0xe5, 0xd2, 0x2c, 0x4d, 0x30, 0xba, 0xcd, 0xb0, 0x4e, 0xf2, 0xd1, 0x11, 0xe6, 0x66, 0x02, 0x54, 0x5c, 0xa9, 0x15, 0xd1, 0xfd, 0x6f, 0xe6, 0x31, 0x9a, 0x84, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4795 = { .name = "ecdh_brainpoolp256t1_4795", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4795_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4795_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4795_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2520 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4796 for ECDH, tcId is 2521 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4796_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x1e, 0x10, 0x2f, 0xb9, 0x43, 0x9d, 0xc3, 0xc6, 0x75, 0x94, 0x16, 0x7f, 0xb3, 0x47, 0xd8, 0x4c, 0xd9, 0xb5, 0xba, 0x5c, 0x7f, 0x24, 0xd0, 0x94, 0x47, 0x76, 0xbc, 0x89, 0x61, 0x0d, 0xfd, 0xff, }; static const unsigned char ecdh_brainpoolp256t1_4796_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4796_sharedsecret[] = { 0x4f, 0x9f, 0xd9, 0x3d, 0xd3, 0x1e, 0x25, 0x43, 0x21, 0x4b, 0xaf, 0x7f, 0xf3, 0x1e, 0x04, 0xf9, 0x80, 0xf2, 0x68, 0xd6, 0x06, 0xfc, 0xc7, 0x71, 0xc5, 0x1e, 0x12, 0x3d, 0x8c, 0xe3, 0x83, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4796 = { .name = "ecdh_brainpoolp256t1_4796", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4796_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4796_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4796_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2521 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4797 for ECDH, tcId is 2522 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4797_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x40, 0xf4, 0x05, 0x52, 0x38, 0x92, 0xb9, 0x03, 0x92, 0x4b, 0x81, 0x6a, 0x5d, 0x08, 0xd4, 0x5a, 0x20, 0x3b, 0x31, 0xa7, 0x1b, 0x44, 0x15, 0x6c, 0xd2, 0xf1, 0x81, 0x33, 0xaa, 0xb1, 0x25, 0xe4, }; static const unsigned char ecdh_brainpoolp256t1_4797_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4797_sharedsecret[] = { 0x5c, 0xd1, 0x21, 0x84, 0xcd, 0x35, 0x3e, 0xfa, 0x93, 0x42, 0x6f, 0xc6, 0xd0, 0x28, 0x90, 0xdc, 0x8a, 0x0a, 0x47, 0xbc, 0x82, 0xfd, 0xdb, 0xa0, 0x89, 0xa1, 0xb0, 0x0f, 0x6b, 0x1e, 0xcc, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4797 = { .name = "ecdh_brainpoolp256t1_4797", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4797_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4797_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4797_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2522 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4798 for ECDH, tcId is 2523 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4798_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x46, 0x1f, 0x59, 0x25, 0x01, 0x2b, 0x2d, 0x37, 0x75, 0xfc, 0x57, 0x37, 0x45, 0x60, 0x75, 0x31, 0x12, 0xa3, 0x58, 0x41, 0x9f, 0x07, 0x16, 0xba, 0x3c, 0x81, 0xf3, 0xb5, 0x12, 0x34, 0x0a, 0x5e, }; static const unsigned char ecdh_brainpoolp256t1_4798_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4798_sharedsecret[] = { 0x2b, 0xf6, 0x90, 0x8e, 0x5e, 0x99, 0xc5, 0xbd, 0x6c, 0x16, 0xb4, 0x81, 0x20, 0x8a, 0x13, 0x7e, 0x37, 0x23, 0xce, 0x75, 0xec, 0x88, 0x81, 0x70, 0x03, 0xab, 0xa0, 0xd3, 0x5a, 0xcc, 0xa3, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4798 = { .name = "ecdh_brainpoolp256t1_4798", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4798_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4798_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4798_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2523 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4799 for ECDH, tcId is 2524 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4799_peerpubkey[] = { 0x01, 0x00, 0xd2, 0x9a, 0xd5, 0x77, 0x23, 0xbb, 0x97, 0x83, 0x2e, 0x7b, 0xa7, 0xcf, 0x29, 0x3b, 0x9a, 0xf7, 0x68, 0x01, 0x15, 0xbc, 0xa8, 0x73, 0x7c, 0x71, 0xf4, 0xd1, 0x0f, 0x4c, 0x5a, 0x7f, 0x07, 0x9d, 0x1b, 0xed, 0x32, 0x86, 0x59, 0xa4, 0x77, 0x44, 0x72, 0xdd, 0x57, 0x2a, 0xa7, 0xad, 0x51, 0x73, 0xcd, 0x3b, 0x15, 0x07, 0x98, 0x22, 0xc1, 0x29, 0xbf, 0x2a, 0xc8, 0xf9, 0x01, 0xd5, }; static const unsigned char ecdh_brainpoolp256t1_4799_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4799_sharedsecret[] = { 0x7b, 0x00, 0x7e, 0xb7, 0x52, 0xd2, 0x56, 0xde, 0xbd, 0x16, 0x39, 0xdc, 0x19, 0xe5, 0xcc, 0xa0, 0xb5, 0x67, 0x00, 0xe3, 0x4c, 0x19, 0x99, 0x13, 0x7e, 0x7d, 0x77, 0xac, 0x85, 0x88, 0x84, 0x0d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4799 = { .name = "ecdh_brainpoolp256t1_4799", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4799_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4799_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4799_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2524 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4800 for ECDH, tcId is 2525 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4800_peerpubkey[] = { 0x41, 0x8a, 0xb1, 0xc0, 0xe3, 0x38, 0xb5, 0xa8, 0x44, 0xd6, 0xb3, 0x08, 0x6c, 0xf6, 0x44, 0x48, 0x4b, 0x44, 0xb3, 0xa2, 0x41, 0x17, 0x0d, 0x6a, 0xf9, 0xe4, 0xa4, 0x12, 0x67, 0x4e, 0x6b, 0x58, 0x4a, 0xa0, 0x54, 0xe6, 0x0d, 0xd8, 0x5b, 0x87, 0x1e, 0x97, 0xb5, 0x65, 0x06, 0xc8, 0xe1, 0x10, 0x31, 0xa2, 0xbf, 0x68, 0xa2, 0xc5, 0xee, 0x74, 0x34, 0x04, 0x11, 0x12, 0x13, 0x86, 0xad, 0xa3, }; static const unsigned char ecdh_brainpoolp256t1_4800_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4800_sharedsecret[] = { 0x31, 0xb5, 0x4a, 0x3a, 0xa2, 0x8b, 0xc0, 0x8f, 0xfc, 0x6d, 0x9a, 0xa8, 0x5f, 0x2b, 0x8a, 0xa5, 0x34, 0xbb, 0x9a, 0xaa, 0xa9, 0x91, 0x03, 0x3d, 0xb7, 0x2b, 0x1d, 0xef, 0xa5, 0x07, 0x73, 0xa9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4800 = { .name = "ecdh_brainpoolp256t1_4800", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4800_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4800_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4800_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2525 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4801 for ECDH, tcId is 2526 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4801_peerpubkey[] = { 0x47, 0x76, 0x59, 0x46, 0x08, 0xa0, 0x60, 0x16, 0x02, 0x09, 0xbc, 0x73, 0xed, 0x84, 0x5a, 0xbe, 0xb0, 0xd8, 0xa8, 0x74, 0x0e, 0x4b, 0x8a, 0x58, 0xf3, 0x10, 0x3d, 0x9a, 0x67, 0xef, 0x15, 0xdf, 0x16, 0x6f, 0x5d, 0xf0, 0xd9, 0x6d, 0xdc, 0x10, 0x22, 0x7a, 0xfd, 0xe5, 0x44, 0xdb, 0x07, 0x93, 0xc1, 0xb4, 0xc8, 0x67, 0xf3, 0x37, 0xd2, 0xea, 0x4b, 0x9d, 0xb6, 0x90, 0xe2, 0x16, 0xd4, 0x4e, }; static const unsigned char ecdh_brainpoolp256t1_4801_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4801_sharedsecret[] = { 0x02, 0x0c, 0x9c, 0x8b, 0xf1, 0x0d, 0x01, 0xa9, 0x8b, 0xbf, 0x7c, 0x13, 0xac, 0x2f, 0xe8, 0xa0, 0x6d, 0x76, 0xa9, 0x65, 0x88, 0x61, 0xb3, 0xcf, 0x21, 0x45, 0xe8, 0x9b, 0xa9, 0xde, 0x4d, 0x05, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4801 = { .name = "ecdh_brainpoolp256t1_4801", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4801_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4801_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4801_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2526 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4802 for ECDH, tcId is 2527 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4802_peerpubkey[] = { 0x52, 0x5e, 0x89, 0xb7, 0xb7, 0x9a, 0x50, 0x1f, 0xdd, 0x55, 0x64, 0xb2, 0xaf, 0xa6, 0x7e, 0x23, 0xe1, 0xdc, 0xf1, 0xec, 0x21, 0x1f, 0xc3, 0xe7, 0x1e, 0xca, 0x2a, 0x26, 0xe5, 0xf6, 0x8f, 0xb0, 0x3f, 0xd9, 0x24, 0x35, 0xf8, 0x9b, 0x4f, 0x96, 0x7e, 0xae, 0x3d, 0x9c, 0xc4, 0xb6, 0x5f, 0x43, 0xd4, 0xda, 0xb5, 0x82, 0x3e, 0x61, 0xd9, 0x8e, 0x3b, 0x7b, 0x93, 0xbe, 0x6c, 0x7e, 0x8d, 0x24, }; static const unsigned char ecdh_brainpoolp256t1_4802_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4802_sharedsecret[] = { 0xa7, 0x67, 0xaa, 0xae, 0x72, 0x99, 0x57, 0xa7, 0x6e, 0x43, 0x9f, 0x61, 0x07, 0x34, 0x0c, 0xde, 0xd0, 0xa4, 0x41, 0xfa, 0xd7, 0xb8, 0x98, 0x15, 0x9b, 0x58, 0x06, 0xdf, 0xe5, 0xdd, 0x8f, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4802 = { .name = "ecdh_brainpoolp256t1_4802", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4802_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4802_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4802_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2527 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4803 for ECDH, tcId is 2528 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4803_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x54, 0xa6, 0x3e, 0xed, 0xf5, 0xde, 0xff, 0x41, 0xb4, 0xc7, 0xcf, 0x26, 0xf5, 0x77, 0xad, 0x06, 0x20, 0xbb, 0xf3, 0xc2, 0x72, 0x82, 0xc9, 0x74, 0x10, 0x45, 0x38, 0xac, 0xf9, 0xc7, 0xed, 0x9d, }; static const unsigned char ecdh_brainpoolp256t1_4803_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4803_sharedsecret[] = { 0x06, 0xd0, 0x70, 0x69, 0xe2, 0xb8, 0x59, 0x5f, 0x2d, 0x91, 0xa3, 0xce, 0x1e, 0x6e, 0xca, 0x82, 0xbf, 0x9a, 0x1a, 0x32, 0x6c, 0x8f, 0xae, 0x40, 0xd6, 0x15, 0x7b, 0x94, 0x66, 0x64, 0x33, 0xbc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4803 = { .name = "ecdh_brainpoolp256t1_4803", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4803_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4803_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4803_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2528 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4804 for ECDH, tcId is 2529 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4804_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x39, 0xbc, 0x0a, 0x48, 0xac, 0xbe, 0xd2, 0x01, 0xec, 0x47, 0x3e, 0x44, 0xea, 0xd6, 0xd9, 0x3c, 0x7e, 0xc6, 0x8a, 0xe2, 0x90, 0x98, 0x5a, 0xee, 0x3c, 0xe8, 0x7a, 0x81, 0x3f, 0xd0, 0xcd, 0x0c, }; static const unsigned char ecdh_brainpoolp256t1_4804_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4804_sharedsecret[] = { 0x54, 0xe7, 0xe4, 0x9f, 0x6e, 0xb2, 0xd7, 0xe1, 0x22, 0xb6, 0x29, 0xd6, 0x4e, 0x7d, 0xc1, 0xb1, 0xd7, 0x47, 0x0a, 0x4d, 0xce, 0x19, 0xa9, 0xa6, 0xa0, 0x06, 0x90, 0x60, 0x6a, 0x2d, 0xe9, 0xe8, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4804 = { .name = "ecdh_brainpoolp256t1_4804", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4804_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4804_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4804_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2529 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4805 for ECDH, tcId is 2530 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4805_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x02, 0x24, 0x1e, 0x65, 0x49, 0xc3, 0xb9, 0x5f, 0xb1, 0x41, 0xb0, 0x49, 0x18, 0x59, 0x3d, 0xd0, 0x0f, 0xa1, 0xee, 0xd1, 0x43, 0x74, 0x29, 0x38, 0x14, 0x7f, 0xa9, 0xd6, 0xbf, 0xc7, 0x9c, 0x00, 0x75, }; static const unsigned char ecdh_brainpoolp256t1_4805_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4805_sharedsecret[] = { 0x1e, 0x87, 0xe5, 0x2e, 0xe5, 0x5d, 0xb4, 0xc3, 0x71, 0x46, 0x26, 0x5f, 0x06, 0x8e, 0xdd, 0x49, 0xb2, 0xb8, 0x33, 0x9c, 0x02, 0x57, 0x09, 0x89, 0x91, 0x3f, 0x9e, 0x83, 0x11, 0xab, 0x91, 0x60, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4805 = { .name = "ecdh_brainpoolp256t1_4805", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4805_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4805_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4805_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2530 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4806 for ECDH, tcId is 2531 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4806_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x14, 0x14, 0xdb, 0x10, 0x58, 0x04, 0xe4, 0x32, 0xc0, 0x4f, 0x20, 0xfb, 0x3f, 0x00, 0x12, 0x04, 0x9d, 0xf4, 0xa2, 0xfd, 0xfd, 0x3d, 0x45, 0x04, 0xe9, 0x8f, 0x03, 0x2f, 0x1d, 0xfa, 0xb0, 0x4c, }; static const unsigned char ecdh_brainpoolp256t1_4806_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4806_sharedsecret[] = { 0xa8, 0xac, 0x00, 0x9a, 0xa0, 0x14, 0xfc, 0xc7, 0x97, 0x3c, 0x91, 0x60, 0x30, 0xdf, 0x55, 0xe0, 0x6c, 0x3b, 0x34, 0x06, 0x42, 0xe0, 0x1e, 0xda, 0x08, 0x42, 0x92, 0x65, 0x31, 0xae, 0x30, 0xfc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4806 = { .name = "ecdh_brainpoolp256t1_4806", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4806_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4806_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4806_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2531 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4807 for ECDH, tcId is 2532 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4807_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x19, 0x8b, 0x3b, 0xc4, 0x24, 0x19, 0xa4, 0x0d, 0xc6, 0x91, 0x04, 0x84, 0x71, 0xef, 0x20, 0xc3, 0x6b, 0x32, 0xd5, 0x59, 0x07, 0x41, 0x9c, 0x67, 0x86, 0x13, 0x3a, 0x01, 0xd2, 0x9a, 0x72, 0xea, }; static const unsigned char ecdh_brainpoolp256t1_4807_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4807_sharedsecret[] = { 0x5c, 0xa0, 0x05, 0x11, 0xc2, 0x3e, 0x80, 0x39, 0x88, 0x7f, 0x67, 0xe6, 0x68, 0x28, 0xd8, 0x4a, 0xf3, 0xab, 0x2b, 0x74, 0x2a, 0xfc, 0x01, 0xfe, 0xe2, 0x4b, 0x20, 0x48, 0x68, 0xb5, 0x9f, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4807 = { .name = "ecdh_brainpoolp256t1_4807", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4807_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4807_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4807_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2532 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4808 for ECDH, tcId is 2533 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4808_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2b, 0x0f, 0x64, 0x95, 0xd6, 0x00, 0x13, 0x0c, 0x9d, 0xc5, 0xc1, 0x64, 0x4b, 0xc4, 0x0c, 0x21, 0xd5, 0xfa, 0x31, 0x8d, 0x25, 0x9a, 0x1d, 0xcb, 0xe8, 0x1c, 0x43, 0x34, 0x53, 0x70, 0x0c, 0x0c, }; static const unsigned char ecdh_brainpoolp256t1_4808_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4808_sharedsecret[] = { 0x91, 0xed, 0xfb, 0x28, 0x97, 0x3f, 0xd0, 0x48, 0x9c, 0xbd, 0x6a, 0xf9, 0x4b, 0x3b, 0xe2, 0x74, 0x35, 0x86, 0x51, 0xbd, 0x24, 0x58, 0x25, 0x70, 0x34, 0x47, 0x4c, 0x69, 0xbc, 0xa6, 0x3f, 0x62, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4808 = { .name = "ecdh_brainpoolp256t1_4808", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4808_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4808_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4808_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2533 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4809 for ECDH, tcId is 2534 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4809_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x75, 0x1f, 0xc3, 0xc8, 0xc6, 0x33, 0xad, 0x5f, 0xf8, 0x02, 0xca, 0xa3, 0xb6, 0xfe, 0xb8, 0xcb, 0xca, 0x45, 0x05, 0x12, 0x47, 0x32, 0xe0, 0x18, 0xe6, 0xff, 0x97, 0xf8, 0x3a, 0xe0, 0xaf, 0xcc, 0xf1, }; static const unsigned char ecdh_brainpoolp256t1_4809_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4809_sharedsecret[] = { 0x7c, 0x6d, 0x16, 0x1b, 0x5c, 0xdb, 0x11, 0xb1, 0x15, 0xb8, 0x55, 0xba, 0x23, 0x98, 0x9e, 0x67, 0x49, 0xb0, 0x12, 0xa1, 0x99, 0x0b, 0xcc, 0x78, 0x12, 0xfd, 0xe0, 0x66, 0xde, 0x83, 0xfc, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4809 = { .name = "ecdh_brainpoolp256t1_4809", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4809_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4809_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4809_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2534 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4810 for ECDH, tcId is 2535 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4810_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xb9, 0xcb, 0x97, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7b, 0xca, 0x76, 0xa7, 0xbd, 0xd3, 0x18, 0x69, 0x66, 0xbd, 0xe7, 0xa7, 0xf3, 0x3d, 0x34, 0xde, 0xed, 0x65, 0xda, 0x0e, 0x6b, 0xd5, 0x39, 0xec, 0x91, 0xa9, 0x54, 0xe1, 0x40, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4810_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4810_sharedsecret[] = { 0x59, 0x85, 0xb2, 0xa3, 0x30, 0x1f, 0x50, 0x92, 0x62, 0x5c, 0xc5, 0x5d, 0x14, 0x35, 0xcc, 0x3e, 0x73, 0x2d, 0xb3, 0xf9, 0x5f, 0xe9, 0xa3, 0x60, 0xbc, 0xf5, 0x5f, 0x3a, 0x58, 0x09, 0x24, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4810 = { .name = "ecdh_brainpoolp256t1_4810", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4810_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4810_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4810_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2535 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4811 for ECDH, tcId is 2536 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4811_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x41, 0x1c, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x32, 0xfe, 0x3a, 0x4b, 0x2f, 0x33, 0x07, 0xc2, 0x67, 0x7b, 0x6c, 0x88, 0xbb, 0xb6, 0x2a, 0xe6, 0x5e, 0x8c, 0xbb, 0xe2, 0x06, 0x77, 0x09, 0xed, 0x0c, 0xb3, 0x20, 0xc8, }; static const unsigned char ecdh_brainpoolp256t1_4811_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4811_sharedsecret[] = { 0x79, 0xb5, 0xe1, 0x52, 0xf8, 0x17, 0xe6, 0x5e, 0x0a, 0xd6, 0x30, 0x29, 0x36, 0xe4, 0xa9, 0x6e, 0x92, 0x8c, 0xad, 0x5d, 0xdf, 0x16, 0x92, 0x3a, 0x84, 0x96, 0x70, 0x2c, 0x01, 0xb9, 0x37, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4811 = { .name = "ecdh_brainpoolp256t1_4811", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4811_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4811_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4811_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2536 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4812 for ECDH, tcId is 2537 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4812_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc6, 0x41, 0x1c, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0x6e, 0xf0, 0x6f, 0x71, 0x0f, 0x33, 0x02, 0xce, 0x36, 0x08, 0x20, 0xe9, 0xb2, 0x85, 0xcb, 0x3d, 0x76, 0x99, 0x64, 0x46, 0x19, 0x9c, 0x3e, 0x30, 0x12, 0xbb, 0x32, 0xaf, }; static const unsigned char ecdh_brainpoolp256t1_4812_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4812_sharedsecret[] = { 0x79, 0xb5, 0xe1, 0x52, 0xf8, 0x17, 0xe6, 0x5e, 0x0a, 0xd6, 0x30, 0x29, 0x36, 0xe4, 0xa9, 0x6e, 0x92, 0x8c, 0xad, 0x5d, 0xdf, 0x16, 0x92, 0x3a, 0x84, 0x96, 0x70, 0x2c, 0x01, 0xb9, 0x37, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4812 = { .name = "ecdh_brainpoolp256t1_4812", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4812_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4812_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4812_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2537 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4813 for ECDH, tcId is 2538 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4813_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbb, 0x95, 0xfc, 0x9d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1e, 0x15, 0xc9, 0xe0, 0xbc, 0xb3, 0xc4, 0xe4, 0x17, 0xf0, 0x60, 0x29, 0x6b, 0x23, 0xb8, 0xf4, 0x76, 0xd0, 0x30, 0x10, 0x15, 0xe3, 0x68, 0x55, 0x32, 0xa8, 0xa6, 0x39, 0x3f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256t1_4813_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4813_sharedsecret[] = { 0x50, 0x85, 0xeb, 0x68, 0x8e, 0xb5, 0x6b, 0x85, 0xbc, 0x8f, 0x6c, 0x1b, 0x55, 0x7a, 0xa5, 0x93, 0x7b, 0x1e, 0x9d, 0x84, 0x79, 0x51, 0x4a, 0x9e, 0x87, 0x53, 0x0c, 0xaa, 0x6e, 0x9c, 0xfc, 0x23, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4813 = { .name = "ecdh_brainpoolp256t1_4813", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4813_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4813_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4813_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2538 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4814 for ECDH, tcId is 2539 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4814_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5b, 0x92, 0x5c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x01, 0x94, 0xa6, 0x84, 0xff, 0xf9, 0xe6, 0x33, 0x89, 0x4a, 0x52, 0x70, 0x6d, 0x3c, 0xc5, 0xae, 0xda, 0xa2, 0xd1, 0xe1, 0x86, 0x7f, 0xfd, 0x09, 0x23, 0xe9, 0x83, 0xd1, }; static const unsigned char ecdh_brainpoolp256t1_4814_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4814_sharedsecret[] = { 0x96, 0xf6, 0x6e, 0x76, 0xc2, 0xec, 0x92, 0x57, 0x8f, 0xab, 0xfb, 0x41, 0x12, 0x21, 0x6c, 0xbd, 0x3c, 0xf8, 0x1a, 0xa5, 0x43, 0xd4, 0x9b, 0x78, 0x5f, 0x26, 0x10, 0xc8, 0xb4, 0x35, 0x8b, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4814 = { .name = "ecdh_brainpoolp256t1_4814", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4814_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4814_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4814_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2539 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4815 for ECDH, tcId is 2540 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4815_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x5b, 0x92, 0x5c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xfb, 0x57, 0xdb, 0xa0, 0x5a, 0x03, 0x37, 0x3e, 0x6c, 0x24, 0x5d, 0x14, 0x39, 0x3b, 0x02, 0x00, 0xff, 0x30, 0x74, 0xfa, 0x83, 0x4e, 0x46, 0x99, 0x93, 0x4b, 0x13, 0xfb, 0x84, 0xcf, 0xa6, }; static const unsigned char ecdh_brainpoolp256t1_4815_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4815_sharedsecret[] = { 0x96, 0xf6, 0x6e, 0x76, 0xc2, 0xec, 0x92, 0x57, 0x8f, 0xab, 0xfb, 0x41, 0x12, 0x21, 0x6c, 0xbd, 0x3c, 0xf8, 0x1a, 0xa5, 0x43, 0xd4, 0x9b, 0x78, 0x5f, 0x26, 0x10, 0xc8, 0xb4, 0x35, 0x8b, 0x42, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4815 = { .name = "ecdh_brainpoolp256t1_4815", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4815_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4815_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4815_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2540 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4816 for ECDH, tcId is 2541 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4816_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xf5, 0xe4, 0xa2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7b, 0x8e, 0x2c, 0x44, 0x9f, 0x51, 0xc7, 0x2f, 0x05, 0x7d, 0x07, 0x7d, 0xad, 0xe6, 0xe2, 0x43, 0xab, 0xa0, 0xff, 0xca, 0xaa, 0xcd, 0xca, 0xda, 0x8f, 0x8a, 0x73, 0x14, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256t1_4816_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4816_sharedsecret[] = { 0x5f, 0xd8, 0xc3, 0x44, 0xe4, 0x75, 0xec, 0x0d, 0x4b, 0xd0, 0x11, 0xbb, 0x84, 0x9e, 0x5a, 0x82, 0x1e, 0x33, 0x2f, 0x90, 0x66, 0x14, 0xf6, 0x1b, 0x62, 0xbb, 0xd6, 0x21, 0xce, 0x5a, 0x0b, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4816 = { .name = "ecdh_brainpoolp256t1_4816", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4816_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4816_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4816_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2541 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4817 for ECDH, tcId is 2542 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4817_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x62, 0xc3, 0x95, 0x8c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x44, 0x70, 0x67, 0x94, 0xab, 0xaa, 0x4b, 0xa8, 0x75, 0x11, 0x88, 0x33, 0xc0, 0x4e, 0xbb, 0x90, 0xb6, 0xf0, 0xe9, 0x2e, 0x8a, 0xc6, 0x66, 0x71, 0xc6, 0xe4, 0x6d, 0xcb, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4817_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4817_sharedsecret[] = { 0x39, 0x5e, 0x01, 0xb8, 0xbb, 0x1f, 0xcb, 0x6a, 0x59, 0x59, 0xa1, 0xbb, 0x42, 0x78, 0x6c, 0xe9, 0xd1, 0xfa, 0x85, 0x31, 0x6f, 0x8b, 0x65, 0x88, 0xa8, 0xf7, 0xe1, 0xba, 0xc1, 0x9e, 0xfc, 0x08, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4817 = { .name = "ecdh_brainpoolp256t1_4817", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4817_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4817_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4817_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2542 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4818 for ECDH, tcId is 2543 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4818_peerpubkey[] = { 0x3f, 0xfd, 0x35, 0xd0, 0x21, 0xad, 0x4b, 0x9d, 0x76, 0x66, 0x43, 0x24, 0x11, 0x69, 0xff, 0x40, 0x58, 0x76, 0xc8, 0x2d, 0x67, 0xb8, 0x85, 0x7b, 0x38, 0x37, 0xf7, 0xb1, 0xac, 0x31, 0x19, 0xb0, 0x82, 0xef, 0xc8, 0xf7, 0x89, 0x47, 0xda, 0x48, 0x42, 0xab, 0xd8, 0xd7, 0xf7, 0x88, 0x56, 0x11, 0x70, 0x18, 0x4a, 0xed, 0x2e, 0x6f, 0xfb, 0xeb, 0x3c, 0x9e, 0xfd, 0x4e, 0xc5, 0x62, 0x16, 0xf7, }; static const unsigned char ecdh_brainpoolp256t1_4818_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4818_sharedsecret[] = { 0x2b, 0x07, 0x11, 0xfd, 0x45, 0xec, 0x6e, 0x4a, 0xc5, 0x1a, 0x33, 0xd8, 0x60, 0x0e, 0xa4, 0xde, 0xb9, 0x94, 0x9c, 0x46, 0xf1, 0x6d, 0x08, 0xeb, 0x58, 0xf5, 0x71, 0x58, 0x36, 0x55, 0xc7, 0x8d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4818 = { .name = "ecdh_brainpoolp256t1_4818", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4818_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4818_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4818_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2543 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4819 for ECDH, tcId is 2544 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4819_peerpubkey[] = { 0x78, 0x86, 0x81, 0x60, 0xfc, 0x89, 0x94, 0x12, 0x4a, 0x17, 0x1f, 0xb2, 0x03, 0xa9, 0xce, 0x82, 0x8a, 0x65, 0x95, 0x62, 0x00, 0x1a, 0x30, 0xab, 0xc9, 0x87, 0xb9, 0xfe, 0xf1, 0xa1, 0xf5, 0x26, 0x2e, 0x5e, 0xe7, 0xe9, 0x1d, 0xe2, 0x66, 0x73, 0x4d, 0xf6, 0x68, 0x15, 0x4e, 0x18, 0x2b, 0x2d, 0x45, 0x6b, 0xbd, 0x81, 0x2a, 0xd9, 0xbc, 0x17, 0xa6, 0xfd, 0x8e, 0x19, 0x57, 0x8d, 0xd5, 0xdc, }; static const unsigned char ecdh_brainpoolp256t1_4819_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4819_sharedsecret[] = { 0x62, 0x68, 0x76, 0x77, 0xd3, 0x0b, 0xd3, 0x93, 0xf3, 0xa0, 0xfc, 0xb9, 0x90, 0x0a, 0x35, 0x2c, 0x10, 0xad, 0x9b, 0x0c, 0x10, 0x2d, 0xae, 0x58, 0xe6, 0xa3, 0x09, 0x1f, 0x1e, 0x6a, 0xc8, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4819 = { .name = "ecdh_brainpoolp256t1_4819", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4819_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4819_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4819_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2544 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4820 for ECDH, tcId is 2545 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4820_peerpubkey[] = { 0x78, 0x86, 0x81, 0x60, 0xfc, 0x89, 0x94, 0x12, 0x4a, 0x17, 0x1f, 0xb2, 0x03, 0xa9, 0xce, 0x82, 0x8a, 0x65, 0x95, 0x62, 0x00, 0x1a, 0x30, 0xab, 0xc9, 0x87, 0xb9, 0xfe, 0xf1, 0xa1, 0xf5, 0x26, 0x7b, 0x9c, 0x6f, 0xf2, 0x84, 0x0c, 0x43, 0x48, 0xf0, 0x6f, 0xa2, 0x7b, 0x4f, 0x6b, 0x62, 0x45, 0x28, 0xd0, 0x38, 0xa2, 0xaa, 0x4c, 0x64, 0x10, 0x79, 0x15, 0xba, 0x03, 0xc7, 0xe0, 0x7d, 0x9b, }; static const unsigned char ecdh_brainpoolp256t1_4820_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4820_sharedsecret[] = { 0x62, 0x68, 0x76, 0x77, 0xd3, 0x0b, 0xd3, 0x93, 0xf3, 0xa0, 0xfc, 0xb9, 0x90, 0x0a, 0x35, 0x2c, 0x10, 0xad, 0x9b, 0x0c, 0x10, 0x2d, 0xae, 0x58, 0xe6, 0xa3, 0x09, 0x1f, 0x1e, 0x6a, 0xc8, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4820 = { .name = "ecdh_brainpoolp256t1_4820", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4820_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4820_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4820_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2545 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4821 for ECDH, tcId is 2546 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4821_peerpubkey[] = { 0x4d, 0xc1, 0x8c, 0x8b, 0x67, 0x14, 0x08, 0x70, 0x54, 0x23, 0x5d, 0xfd, 0x8b, 0x84, 0xca, 0xbb, 0xf5, 0xa9, 0xea, 0x63, 0xdc, 0x21, 0x7a, 0x56, 0x6d, 0x77, 0x2c, 0xa5, 0x36, 0xb0, 0xe7, 0x07, 0x5b, 0x09, 0x66, 0xfa, 0x9f, 0xc8, 0x86, 0xb2, 0xfe, 0x0c, 0x09, 0x2f, 0x68, 0x17, 0xdd, 0xc3, 0x7d, 0x29, 0xa5, 0x28, 0x6f, 0x5e, 0x2e, 0x3b, 0x0a, 0x92, 0x01, 0xea, 0x82, 0x09, 0x0d, 0xae, }; static const unsigned char ecdh_brainpoolp256t1_4821_privkey[] = { 0x37, 0x17, 0xe8, 0xad, 0xd3, 0xe1, 0xbd, 0x89, 0xc0, 0x76, 0x1b, 0x3a, 0xce, 0xd7, 0xb6, 0x73, 0xa0, 0x83, 0x0e, 0x47, 0x7c, 0x2b, 0x6a, 0x76, 0xbf, 0x1a, 0x90, 0x9b, 0x39, 0x43, 0xfd, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4821_sharedsecret[] = { 0x1e, 0xff, 0x46, 0x08, 0xfc, 0x21, 0xbb, 0xec, 0xcd, 0x08, 0xe1, 0xbf, 0xf3, 0xd3, 0xd3, 0x4f, 0x32, 0x3c, 0x95, 0x59, 0x3d, 0x41, 0x40, 0x7d, 0x1f, 0x00, 0x49, 0x62, 0x28, 0xb7, 0x4f, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4821 = { .name = "ecdh_brainpoolp256t1_4821", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4821_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4821_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4821_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2546 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4822 for ECDH, tcId is 2547 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4822_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0xc3, 0xc8, 0xc6, 0x33, 0xad, 0x5f, 0xf8, 0x02, 0xca, 0xa3, 0xb6, 0xfe, 0xb8, 0xcb, 0xca, 0x45, 0x05, 0x12, 0x47, 0x32, 0xe0, 0x18, 0xe6, 0xff, 0x97, 0xf8, 0x3a, 0xe0, 0xaf, 0xcc, 0xf1, }; static const unsigned char ecdh_brainpoolp256t1_4822_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4822_sharedsecret[] = { 0x33, 0x42, 0x32, 0x8e, 0x35, 0x88, 0x2a, 0xc4, 0x4d, 0x0b, 0x38, 0x0d, 0x39, 0x88, 0x86, 0xe7, 0xd3, 0x60, 0x06, 0x01, 0xce, 0xc3, 0xaa, 0xb1, 0xb2, 0xa9, 0xae, 0x91, 0xc6, 0x64, 0xbc, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4822 = { .name = "ecdh_brainpoolp256t1_4822", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4822_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4822_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4822_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2547 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4823 for ECDH, tcId is 2548 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4823_peerpubkey[] = { 0x30, 0xe9, 0x3c, 0x29, 0x41, 0x53, 0x60, 0x10, 0xf1, 0xde, 0x11, 0xfd, 0xa4, 0x80, 0x03, 0x26, 0xb4, 0x0c, 0x21, 0xac, 0x65, 0x68, 0xa8, 0xde, 0xee, 0xbd, 0xa9, 0x92, 0x76, 0xb8, 0x0c, 0xcc, 0x7d, 0x32, 0x5e, 0xd9, 0xb5, 0x07, 0x7e, 0xd9, 0x63, 0xb5, 0x9b, 0x24, 0x9f, 0x2f, 0x7a, 0x24, 0xc0, 0x4d, 0xfc, 0x31, 0x6a, 0xb2, 0x92, 0x6f, 0xa7, 0x06, 0x72, 0xb2, 0xb4, 0x30, 0x8e, 0xbe, }; static const unsigned char ecdh_brainpoolp256t1_4823_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4823_sharedsecret[] = { 0x8f, 0x39, 0x7c, 0xc9, 0x1b, 0xbf, 0x52, 0xd5, 0x1e, 0x10, 0x98, 0x33, 0xe8, 0x6c, 0x6b, 0xa0, 0xc8, 0x9d, 0x66, 0xa2, 0x5e, 0x2b, 0x3f, 0xc0, 0xa0, 0x15, 0x0e, 0xcf, 0xbf, 0x30, 0xb2, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4823 = { .name = "ecdh_brainpoolp256t1_4823", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4823_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4823_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4823_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2548 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4824 for ECDH, tcId is 2549 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4824_peerpubkey[] = { 0x2a, 0x31, 0x18, 0x12, 0x69, 0x85, 0x30, 0x55, 0x30, 0x1b, 0xc3, 0xfc, 0x2b, 0x1e, 0x39, 0xc6, 0x05, 0xc3, 0x2b, 0xef, 0xf7, 0xb4, 0xcf, 0x75, 0xc5, 0x01, 0xa4, 0x2e, 0xfc, 0x82, 0x1a, 0x11, 0x0f, 0x04, 0x0e, 0x2f, 0xce, 0x34, 0x15, 0x3c, 0xd6, 0x91, 0x6b, 0xf6, 0x8c, 0x6d, 0xa8, 0x3b, 0x85, 0xb3, 0xa8, 0x9c, 0xe6, 0x2a, 0x14, 0x20, 0x1c, 0x70, 0xc9, 0x2a, 0x42, 0x36, 0xbc, 0x75, }; static const unsigned char ecdh_brainpoolp256t1_4824_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4824_sharedsecret[] = { 0x4f, 0x1f, 0xa1, 0xd3, 0x8b, 0x0c, 0x15, 0x89, 0x6c, 0xdc, 0x36, 0x2c, 0x6c, 0x44, 0x4c, 0xb9, 0x3b, 0xd9, 0xbb, 0x7e, 0x3c, 0xbc, 0x4b, 0x9e, 0x51, 0x9a, 0xa9, 0xb3, 0xae, 0xe3, 0x03, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4824 = { .name = "ecdh_brainpoolp256t1_4824", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4824_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4824_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4824_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2549 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4825 for ECDH, tcId is 2550 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4825_peerpubkey[] = { 0x31, 0xab, 0xc1, 0x72, 0x42, 0xea, 0x45, 0xfe, 0xe3, 0x13, 0x2b, 0xbc, 0xe4, 0xad, 0x46, 0x48, 0x2c, 0x73, 0x3b, 0xe9, 0x6d, 0xda, 0x82, 0xd9, 0x46, 0xa9, 0x42, 0x75, 0x05, 0xfb, 0xca, 0x02, 0x5f, 0x87, 0xe1, 0x80, 0xd7, 0x07, 0x92, 0x21, 0x66, 0xdf, 0xe2, 0xd7, 0x91, 0xda, 0x2c, 0x98, 0x44, 0xe2, 0x57, 0xe0, 0x93, 0x7e, 0x59, 0x8c, 0xa2, 0x2a, 0x94, 0x9a, 0xbb, 0x80, 0xa9, 0xc3, }; static const unsigned char ecdh_brainpoolp256t1_4825_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4825_sharedsecret[] = { 0x5b, 0xe5, 0x8f, 0x63, 0x79, 0xbc, 0x6b, 0xa2, 0x02, 0xea, 0x6e, 0x9b, 0xd3, 0xd9, 0x60, 0x5f, 0xb2, 0x5e, 0x26, 0x10, 0xa4, 0x29, 0x00, 0xdb, 0xd1, 0x2f, 0x8f, 0xd7, 0x4c, 0x2e, 0xa7, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4825 = { .name = "ecdh_brainpoolp256t1_4825", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4825_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4825_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4825_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2550 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4826 for ECDH, tcId is 2551 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4826_peerpubkey[] = { 0x69, 0xa5, 0xb3, 0xc7, 0x28, 0x1e, 0x64, 0xeb, 0x7d, 0xe8, 0xe6, 0x69, 0x33, 0xb7, 0x87, 0x85, 0x85, 0x5d, 0xb0, 0xff, 0xe7, 0x0b, 0x9b, 0xd0, 0x4f, 0xef, 0x8c, 0x62, 0x78, 0xb0, 0xfd, 0x7d, 0x52, 0xea, 0x6f, 0xc1, 0xbc, 0xdf, 0x1d, 0xa5, 0xe8, 0x18, 0x4e, 0xed, 0xe0, 0xca, 0x2a, 0x22, 0x18, 0x48, 0x09, 0x5c, 0x10, 0xfa, 0xcb, 0x09, 0x28, 0x18, 0x4b, 0x32, 0x98, 0x23, 0x90, 0x66, }; static const unsigned char ecdh_brainpoolp256t1_4826_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4826_sharedsecret[] = { 0x3f, 0xa3, 0x82, 0x90, 0x23, 0x34, 0xee, 0xfc, 0x9d, 0x31, 0x2f, 0x78, 0xf5, 0x87, 0x38, 0x34, 0x02, 0x4f, 0x0a, 0x25, 0x85, 0x2d, 0xe5, 0xc0, 0x87, 0x58, 0xc1, 0xa2, 0x28, 0xe0, 0xf4, 0x81, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4826 = { .name = "ecdh_brainpoolp256t1_4826", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4826_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4826_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4826_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2551 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4827 for ECDH, tcId is 2552 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4827_peerpubkey[] = { 0x1e, 0xc9, 0x4d, 0x45, 0x25, 0x73, 0x50, 0x6a, 0x2c, 0xa3, 0xd1, 0x72, 0x87, 0xe1, 0xb3, 0xda, 0x96, 0x7c, 0xa0, 0x12, 0x53, 0xcf, 0xc0, 0x81, 0x09, 0x8b, 0x97, 0x5d, 0xdd, 0xf7, 0x5d, 0xf1, 0x92, 0x77, 0x77, 0x27, 0x46, 0xb0, 0xb7, 0x71, 0x8d, 0x1a, 0xb2, 0xcf, 0x93, 0x2a, 0xaf, 0xdd, 0xe4, 0x42, 0x11, 0xfd, 0x8a, 0xf7, 0x6d, 0xe8, 0x39, 0x2c, 0x44, 0xa3, 0xa0, 0xbf, 0xce, 0xb5, }; static const unsigned char ecdh_brainpoolp256t1_4827_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4827_sharedsecret[] = { 0x7b, 0xf8, 0xbc, 0x95, 0x63, 0xa6, 0xf5, 0xf8, 0x8f, 0x2b, 0x2f, 0xfc, 0xf5, 0x73, 0xa3, 0x0c, 0x57, 0x8f, 0x0b, 0x2f, 0xe2, 0x05, 0xed, 0x6b, 0xf8, 0x2e, 0x64, 0x1f, 0x88, 0x5b, 0x67, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4827 = { .name = "ecdh_brainpoolp256t1_4827", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4827_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4827_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4827_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2552 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4828 for ECDH, tcId is 2553 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4828_peerpubkey[] = { 0x19, 0x45, 0x80, 0xbd, 0xe2, 0x34, 0xf0, 0x42, 0x4d, 0xa6, 0x16, 0xca, 0x1c, 0xc6, 0x67, 0x78, 0x09, 0xfd, 0xd4, 0xea, 0x15, 0x78, 0xf7, 0xb5, 0x12, 0xe3, 0xbf, 0xef, 0x32, 0xb2, 0x55, 0xc7, 0x8d, 0x5d, 0x71, 0x4b, 0x94, 0xdf, 0xc8, 0x90, 0x10, 0xc1, 0x39, 0x26, 0x43, 0x47, 0x2d, 0xe3, 0x61, 0xa4, 0x42, 0x97, 0x0f, 0xba, 0xf8, 0xcf, 0x6a, 0x2d, 0x6f, 0x28, 0x79, 0x48, 0x85, 0x32, }; static const unsigned char ecdh_brainpoolp256t1_4828_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4828_sharedsecret[] = { 0x9d, 0x29, 0x0d, 0x7d, 0x6c, 0x24, 0xa7, 0x08, 0x16, 0x49, 0x91, 0x3b, 0xda, 0x1e, 0x32, 0xb4, 0xfd, 0x02, 0xd1, 0xfd, 0xbe, 0x24, 0xd5, 0x69, 0xd8, 0xfc, 0x6b, 0xfb, 0x76, 0xf2, 0x7f, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4828 = { .name = "ecdh_brainpoolp256t1_4828", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4828_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4828_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4828_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2553 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4829 for ECDH, tcId is 2554 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4829_peerpubkey[] = { 0x0e, 0xc1, 0xb9, 0x3e, 0x82, 0x9f, 0xd7, 0x04, 0xc7, 0x51, 0xd0, 0xc8, 0x97, 0x3c, 0xd1, 0xda, 0x23, 0x75, 0x18, 0x10, 0x86, 0xcd, 0xf9, 0x2e, 0x6c, 0x07, 0xb3, 0xb4, 0x8e, 0x61, 0xfe, 0x4c, 0x90, 0x6b, 0xbe, 0x52, 0xc8, 0xf7, 0xfe, 0x9b, 0x3a, 0xd1, 0x43, 0xea, 0xa1, 0xf5, 0xc6, 0xd4, 0xbc, 0x15, 0x7d, 0xba, 0x11, 0x69, 0x48, 0x8d, 0x7f, 0x47, 0xe9, 0xc4, 0xa0, 0xee, 0x68, 0x8a, }; static const unsigned char ecdh_brainpoolp256t1_4829_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4829_sharedsecret[] = { 0x9b, 0x11, 0xcc, 0xe0, 0xbd, 0x0a, 0xf4, 0xd5, 0x85, 0x3d, 0x01, 0x4b, 0xef, 0x52, 0xac, 0xd2, 0xca, 0x4d, 0x80, 0x19, 0x37, 0xb2, 0x9b, 0x26, 0x4a, 0x07, 0x24, 0x88, 0x26, 0xe2, 0x7f, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4829 = { .name = "ecdh_brainpoolp256t1_4829", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4829_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4829_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4829_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2554 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4830 for ECDH, tcId is 2555 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4830_peerpubkey[] = { 0x8a, 0x6b, 0xf2, 0x57, 0x96, 0x66, 0x69, 0x13, 0x76, 0x12, 0x39, 0x5c, 0x1b, 0x11, 0x28, 0xfe, 0xce, 0xf8, 0x10, 0x1c, 0xa7, 0x13, 0xd7, 0xc0, 0xaa, 0xcd, 0x8f, 0x9e, 0xb0, 0x45, 0x69, 0x34, 0x3b, 0xa0, 0xb0, 0xdf, 0xf7, 0x2c, 0x8b, 0xe9, 0x2a, 0x73, 0xfb, 0x50, 0xfb, 0x16, 0xe2, 0x4f, 0x5e, 0x77, 0x14, 0x8e, 0xa0, 0xf0, 0x35, 0x77, 0x60, 0xce, 0xda, 0x7f, 0x3a, 0xb4, 0xb1, 0xb8, }; static const unsigned char ecdh_brainpoolp256t1_4830_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4830_sharedsecret[] = { 0x21, 0x6b, 0x7f, 0xc6, 0x50, 0xff, 0xd4, 0x84, 0x07, 0x36, 0x6d, 0x6d, 0x63, 0xd3, 0xde, 0x60, 0xb5, 0x9a, 0x3c, 0x21, 0xed, 0xb2, 0x11, 0x3a, 0xd0, 0x3f, 0xbb, 0x51, 0xd5, 0xeb, 0xba, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4830 = { .name = "ecdh_brainpoolp256t1_4830", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4830_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4830_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4830_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2555 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4831 for ECDH, tcId is 2556 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4831_peerpubkey[] = { 0x78, 0xbb, 0x07, 0x57, 0x1f, 0x2f, 0xe4, 0xdf, 0x7e, 0xb2, 0x19, 0x3f, 0x87, 0xf2, 0x60, 0x42, 0xdf, 0x2a, 0xfd, 0xfd, 0x2d, 0xfb, 0xf6, 0x5e, 0xe5, 0x72, 0xb7, 0x48, 0xdd, 0xe3, 0x4f, 0xc8, 0x5c, 0xb4, 0x09, 0x1c, 0x9e, 0x2f, 0x41, 0x81, 0x1a, 0x07, 0x68, 0x20, 0x77, 0xcc, 0x54, 0x42, 0x40, 0x8e, 0x25, 0x8b, 0x0d, 0x9d, 0x72, 0xe2, 0x02, 0xf4, 0x73, 0xfe, 0xc6, 0xeb, 0x84, 0xb4, }; static const unsigned char ecdh_brainpoolp256t1_4831_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4831_sharedsecret[] = { 0x20, 0xaf, 0x6e, 0x65, 0xa1, 0x02, 0xdb, 0x3d, 0x2c, 0x0a, 0x31, 0xcf, 0x83, 0xdf, 0x48, 0x83, 0xf9, 0x12, 0x9a, 0x35, 0x38, 0x88, 0xc3, 0x75, 0x73, 0xcb, 0x8b, 0x5c, 0x09, 0x5b, 0xa2, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4831 = { .name = "ecdh_brainpoolp256t1_4831", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4831_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4831_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4831_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2556 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4832 for ECDH, tcId is 2557 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4832_peerpubkey[] = { 0x69, 0x10, 0x95, 0xf6, 0x94, 0x88, 0x3f, 0x19, 0x90, 0x37, 0xb1, 0xf4, 0x6d, 0x8a, 0xdf, 0xeb, 0x7c, 0xe4, 0x06, 0xa4, 0x18, 0x87, 0x1f, 0x98, 0xc6, 0xc0, 0xdf, 0x30, 0xcd, 0x05, 0x9d, 0x6f, 0x63, 0x5f, 0xe4, 0x19, 0xf0, 0x2c, 0xda, 0x1a, 0x42, 0xdc, 0x00, 0xed, 0x04, 0x2a, 0x22, 0x0c, 0xf4, 0xa5, 0xe8, 0x9e, 0x9f, 0xa1, 0x90, 0xda, 0xeb, 0x50, 0xf8, 0x06, 0x9f, 0x0c, 0x15, 0x9f, }; static const unsigned char ecdh_brainpoolp256t1_4832_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4832_sharedsecret[] = { 0xa9, 0xb8, 0x08, 0xd3, 0x24, 0xe7, 0x8a, 0xbe, 0x2c, 0xa2, 0x37, 0x75, 0xce, 0x0d, 0xfe, 0xa7, 0x12, 0x94, 0xc3, 0x62, 0xe3, 0xab, 0x60, 0x88, 0x01, 0x73, 0xc6, 0xb6, 0xed, 0x4e, 0x4c, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4832 = { .name = "ecdh_brainpoolp256t1_4832", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4832_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4832_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4832_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2557 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4833 for ECDH, tcId is 2558 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4833_peerpubkey[] = { 0x2d, 0x7b, 0x83, 0x3f, 0x94, 0xe9, 0x72, 0x6a, 0xfa, 0xf8, 0x31, 0xad, 0x89, 0x2b, 0xa5, 0x04, 0x70, 0x1c, 0x01, 0xe4, 0xee, 0x36, 0x6d, 0xdd, 0x66, 0xea, 0xcb, 0x2d, 0x0d, 0x16, 0xef, 0xf4, 0x0d, 0x63, 0x9a, 0x57, 0xc4, 0x56, 0xae, 0x6d, 0xe2, 0x99, 0xd5, 0xf5, 0x94, 0x5d, 0x0b, 0xd6, 0xae, 0x67, 0xc8, 0xde, 0x61, 0x02, 0x7d, 0x54, 0xbc, 0x4d, 0x2f, 0x80, 0x23, 0x9b, 0xd7, 0x7a, }; static const unsigned char ecdh_brainpoolp256t1_4833_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4833_sharedsecret[] = { 0x5d, 0x20, 0xec, 0x50, 0x81, 0x11, 0xc9, 0x6e, 0x71, 0x34, 0x84, 0xd0, 0x13, 0x4d, 0xa0, 0x1b, 0xa3, 0xd8, 0x36, 0x6a, 0x16, 0x17, 0x72, 0xec, 0xda, 0x98, 0x3c, 0x6d, 0x7f, 0xf8, 0xad, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4833 = { .name = "ecdh_brainpoolp256t1_4833", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4833_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4833_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4833_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2558 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4834 for ECDH, tcId is 2559 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4834_peerpubkey[] = { 0x3e, 0x0a, 0xf4, 0x9a, 0x60, 0x32, 0xa7, 0xdd, 0x02, 0x44, 0xcb, 0xbd, 0x94, 0xdc, 0xd0, 0x10, 0x06, 0xfa, 0x57, 0x9f, 0xef, 0x16, 0xad, 0xf8, 0x79, 0x4b, 0x45, 0x37, 0x79, 0xee, 0xda, 0xff, 0x3f, 0x0a, 0x4a, 0x06, 0x4d, 0x19, 0xb4, 0x92, 0xa9, 0x06, 0xf9, 0x10, 0x21, 0xfa, 0xab, 0xc5, 0x9e, 0x8c, 0x77, 0xaf, 0xde, 0x5c, 0x4d, 0x8d, 0xb0, 0x4c, 0xee, 0x22, 0xac, 0x35, 0x2c, 0xc0, }; static const unsigned char ecdh_brainpoolp256t1_4834_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4834_sharedsecret[] = { 0x9c, 0xea, 0x4a, 0xe9, 0xcd, 0xc6, 0x50, 0x49, 0x1f, 0xfc, 0x96, 0x46, 0xb8, 0x03, 0xdf, 0x86, 0x84, 0xb7, 0x10, 0x6d, 0x5b, 0x6c, 0x4e, 0x42, 0x39, 0x27, 0xde, 0xda, 0x1a, 0x2c, 0x12, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4834 = { .name = "ecdh_brainpoolp256t1_4834", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4834_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4834_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4834_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2559 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4835 for ECDH, tcId is 2560 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4835_peerpubkey[] = { 0xa2, 0x07, 0xfb, 0x7e, 0xb7, 0x34, 0x56, 0x4f, 0xe1, 0xf9, 0x52, 0x3f, 0xc5, 0x54, 0x42, 0x9c, 0xfd, 0x8b, 0x2c, 0xcf, 0xb5, 0x50, 0x8e, 0x25, 0x27, 0xf7, 0xf5, 0x06, 0x29, 0xfb, 0x2f, 0x97, 0x44, 0x81, 0x8f, 0x7c, 0x5f, 0x17, 0x9b, 0xb1, 0x7b, 0xb6, 0xd7, 0x59, 0x36, 0x26, 0xb6, 0x18, 0x65, 0xd9, 0x4c, 0x80, 0x15, 0x25, 0xbc, 0x6c, 0xe8, 0x25, 0x95, 0xf5, 0xa7, 0x72, 0x93, 0x42, }; static const unsigned char ecdh_brainpoolp256t1_4835_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4835_sharedsecret[] = { 0x18, 0xaf, 0xc6, 0x37, 0xa5, 0x62, 0x4c, 0xfc, 0xdc, 0x1d, 0x55, 0x33, 0x28, 0x04, 0x19, 0x2b, 0x89, 0xc8, 0x76, 0x1b, 0x03, 0x02, 0xc2, 0xd7, 0xdd, 0x2c, 0x37, 0xcc, 0xd5, 0x34, 0xb8, 0xd2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4835 = { .name = "ecdh_brainpoolp256t1_4835", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4835_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4835_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4835_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2560 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4836 for ECDH, tcId is 2561 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4836_peerpubkey[] = { 0x6a, 0x48, 0xc4, 0xa3, 0xbb, 0x31, 0xc8, 0x91, 0x97, 0xa8, 0xee, 0x9d, 0x95, 0x49, 0xd7, 0x71, 0xce, 0xac, 0x76, 0xa3, 0x02, 0x1d, 0xd7, 0x6e, 0x79, 0x5e, 0xa7, 0x1f, 0x3e, 0x2e, 0x51, 0xb3, 0x5e, 0x6c, 0xa5, 0x13, 0xd2, 0x18, 0xd2, 0x29, 0x72, 0xba, 0x7d, 0x79, 0xbf, 0xab, 0xda, 0x5b, 0x47, 0xf6, 0x7f, 0x13, 0xcc, 0x59, 0x83, 0x1c, 0x4f, 0x7c, 0x2e, 0x6a, 0xd0, 0x99, 0xc8, 0xc0, }; static const unsigned char ecdh_brainpoolp256t1_4836_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4836_sharedsecret[] = { 0x24, 0xff, 0x78, 0x68, 0x0f, 0x4b, 0x27, 0x28, 0xb2, 0xbf, 0x60, 0xea, 0xc6, 0x82, 0x5e, 0x71, 0x4e, 0xea, 0xc7, 0xa3, 0x92, 0x7e, 0xfb, 0x78, 0xfe, 0x15, 0xb2, 0xe3, 0x8f, 0x50, 0x11, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4836 = { .name = "ecdh_brainpoolp256t1_4836", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4836_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4836_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4836_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2561 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4837 for ECDH, tcId is 2562 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4837_peerpubkey[] = { 0x69, 0x77, 0x15, 0x27, 0x24, 0x64, 0x4a, 0xed, 0x7a, 0x24, 0xce, 0xba, 0xec, 0x58, 0x36, 0x3b, 0x0c, 0xfd, 0x5f, 0x89, 0xe3, 0x03, 0x3a, 0x4f, 0x6d, 0x9d, 0x45, 0xc5, 0xf6, 0x3c, 0x42, 0xda, 0x9e, 0x32, 0x87, 0xd6, 0xeb, 0x4b, 0xeb, 0x7a, 0x5f, 0x3a, 0x2a, 0x04, 0x67, 0x39, 0xfc, 0x40, 0xa2, 0xd7, 0x97, 0x5e, 0x8d, 0x6c, 0x4b, 0xe5, 0x63, 0xcf, 0x17, 0xda, 0x8b, 0xb4, 0xc7, 0x37, }; static const unsigned char ecdh_brainpoolp256t1_4837_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4837_sharedsecret[] = { 0x7b, 0x50, 0x4e, 0xfb, 0x37, 0xe5, 0xb7, 0x47, 0x9d, 0xb9, 0xd9, 0xd7, 0x06, 0xb6, 0xc9, 0xdd, 0x75, 0xf8, 0x24, 0xcd, 0x02, 0x99, 0xdb, 0x74, 0xb4, 0xe2, 0xd1, 0x40, 0x9a, 0x85, 0xdc, 0x9a, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4837 = { .name = "ecdh_brainpoolp256t1_4837", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4837_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4837_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4837_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2562 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4838 for ECDH, tcId is 2563 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4838_peerpubkey[] = { 0x62, 0xe4, 0x04, 0x54, 0x00, 0xae, 0x26, 0x92, 0xdf, 0x85, 0x6b, 0x2a, 0x48, 0xeb, 0xeb, 0x6b, 0x26, 0x97, 0xc3, 0x1d, 0xb9, 0xd7, 0xbd, 0x0e, 0x31, 0xec, 0x2c, 0x87, 0x82, 0xe7, 0xcf, 0x4c, 0x2d, 0xf2, 0xb9, 0xc8, 0xd8, 0x18, 0x41, 0x63, 0x2d, 0x5f, 0xbf, 0xbd, 0x41, 0x68, 0x58, 0xb3, 0x43, 0x29, 0x4b, 0xa4, 0x84, 0xbd, 0x71, 0xa4, 0xf1, 0x7c, 0xb3, 0xe9, 0xd6, 0x70, 0x62, 0x40, }; static const unsigned char ecdh_brainpoolp256t1_4838_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4838_sharedsecret[] = { 0x23, 0x95, 0x7a, 0x5c, 0xe4, 0x48, 0xa7, 0x44, 0xe9, 0xa0, 0xec, 0xd5, 0xe3, 0xdd, 0x29, 0xff, 0x8a, 0xe0, 0x04, 0x89, 0xa2, 0x0c, 0xa7, 0x98, 0xe1, 0x2b, 0x21, 0x9c, 0x77, 0x2e, 0x4a, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4838 = { .name = "ecdh_brainpoolp256t1_4838", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4838_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4838_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4838_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2563 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4839 for ECDH, tcId is 2564 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4839_peerpubkey[] = { 0x3d, 0x41, 0xd7, 0x8f, 0x4a, 0x5b, 0x3e, 0xbb, 0x7b, 0x44, 0x4d, 0x83, 0x34, 0x19, 0x7f, 0xab, 0xfd, 0x0b, 0xcb, 0x66, 0x5c, 0x87, 0xb5, 0x76, 0x37, 0xc2, 0x3f, 0x24, 0x68, 0x56, 0x7f, 0x85, 0x71, 0x73, 0xd1, 0xab, 0x20, 0x33, 0x70, 0xfd, 0x35, 0x65, 0x0d, 0x06, 0x5c, 0xe1, 0x17, 0xfd, 0xd9, 0x15, 0xa0, 0x2b, 0xf5, 0x69, 0x8e, 0x6d, 0xd6, 0xb3, 0x2c, 0x03, 0xe9, 0x73, 0xa5, 0xcb, }; static const unsigned char ecdh_brainpoolp256t1_4839_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4839_sharedsecret[] = { 0x7c, 0x1d, 0xe9, 0x67, 0x7a, 0xb6, 0xaf, 0x6f, 0xed, 0x58, 0x3a, 0x49, 0xc3, 0xd9, 0x3b, 0xad, 0x60, 0x62, 0x10, 0xfc, 0x95, 0x6e, 0x8e, 0x79, 0x47, 0x86, 0x7b, 0x3d, 0x14, 0xde, 0xa8, 0xd4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4839 = { .name = "ecdh_brainpoolp256t1_4839", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4839_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4839_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4839_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2564 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4840 for ECDH, tcId is 2565 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4840_peerpubkey[] = { 0x6a, 0x86, 0x47, 0x9c, 0xee, 0xe5, 0x65, 0x41, 0xae, 0x0c, 0x34, 0xb0, 0x43, 0x50, 0xd2, 0x09, 0xc3, 0x1a, 0x95, 0x56, 0xd2, 0xc2, 0xb1, 0x90, 0xcb, 0x57, 0xd1, 0xc5, 0xfe, 0x11, 0xce, 0x35, 0x25, 0xf4, 0xda, 0x10, 0x11, 0x48, 0x74, 0x78, 0xa2, 0x25, 0x81, 0x89, 0xc4, 0xbb, 0x36, 0x16, 0xfb, 0x8a, 0x47, 0xe4, 0xdf, 0x64, 0xcb, 0x3e, 0x7f, 0xc8, 0x68, 0x8a, 0x02, 0xa0, 0x08, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4840_privkey[] = { 0xa3, 0x15, 0xff, 0xcb, 0xdc, 0x5c, 0xfd, 0xc8, 0x01, 0xb6, 0x65, 0x13, 0x07, 0x04, 0x0e, 0x3b, 0x21, 0x4b, 0xb9, 0x04, 0xf8, 0x63, 0xf6, 0x03, 0x9e, 0x0a, 0xae, 0x14, 0x7e, 0xc2, 0xa8, 0x33, }; static const unsigned char ecdh_brainpoolp256t1_4840_sharedsecret[] = { 0x22, 0xed, 0x8d, 0xf1, 0x62, 0x09, 0x99, 0xd6, 0xf1, 0x55, 0xcb, 0xac, 0x2b, 0x60, 0xc4, 0x0f, 0xce, 0xfe, 0xfb, 0x9c, 0x25, 0x65, 0x89, 0xd1, 0xf6, 0xf2, 0xbc, 0x85, 0x0f, 0x9d, 0x1e, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4840 = { .name = "ecdh_brainpoolp256t1_4840", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4840_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4840_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4840_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2565 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4841 for ECDH, tcId is 2566 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4841_peerpubkey[] = { 0x7c, 0xe2, 0x06, 0x14, 0x97, 0x50, 0xd6, 0x7d, 0x83, 0x4b, 0xb1, 0x6e, 0x1b, 0xf1, 0xb3, 0x4e, 0xd8, 0x38, 0x3b, 0x46, 0x53, 0xe4, 0x7e, 0x1d, 0x97, 0x28, 0xa9, 0xb7, 0x04, 0x40, 0x3d, 0x53, 0x10, 0x45, 0xe7, 0xa8, 0x1b, 0x78, 0x7b, 0x40, 0xe6, 0xe0, 0x95, 0x41, 0xb3, 0x88, 0xe1, 0x49, 0x45, 0x0c, 0x63, 0x50, 0x0b, 0x15, 0x93, 0x9e, 0xcb, 0x21, 0x57, 0xbe, 0x9c, 0x0a, 0xb2, 0x51, }; static const unsigned char ecdh_brainpoolp256t1_4841_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4841_sharedsecret[] = { 0x38, 0xd6, 0xaf, 0xf5, 0xed, 0x24, 0xba, 0x5b, 0x7f, 0x2f, 0xa9, 0x30, 0xee, 0xde, 0x09, 0x6e, 0x0d, 0x5e, 0x78, 0x42, 0x04, 0x31, 0x3e, 0xbb, 0x31, 0x85, 0xb5, 0x09, 0x99, 0x30, 0xa0, 0x18, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4841 = { .name = "ecdh_brainpoolp256t1_4841", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4841_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4841_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4841_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2566 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4842 for ECDH, tcId is 2567 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4842_peerpubkey[] = { 0x2d, 0xb2, 0x31, 0x32, 0xf8, 0x16, 0x42, 0x42, 0xba, 0x1f, 0x67, 0x00, 0x63, 0x71, 0x46, 0xb5, 0x24, 0x15, 0xc4, 0xa9, 0x42, 0x38, 0x23, 0xb4, 0x4c, 0x3f, 0xa6, 0xa2, 0xa8, 0x7b, 0x7d, 0x50, 0x2b, 0xcd, 0xd7, 0xe5, 0xbd, 0x69, 0x75, 0x39, 0x87, 0x0a, 0xca, 0xfd, 0x68, 0xc1, 0x59, 0x29, 0x68, 0x94, 0xe8, 0x71, 0x46, 0x08, 0x1c, 0x06, 0xc6, 0x64, 0x4e, 0x84, 0xe7, 0x13, 0xf8, 0xd0, }; static const unsigned char ecdh_brainpoolp256t1_4842_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4842_sharedsecret[] = { 0x98, 0x79, 0x02, 0x5d, 0x98, 0xfd, 0x06, 0x8b, 0x8e, 0xf6, 0xba, 0xbd, 0x02, 0x46, 0xa1, 0x1e, 0x08, 0xc3, 0xd4, 0x99, 0xce, 0xf3, 0x16, 0xf4, 0x5a, 0x9a, 0x7c, 0x6a, 0x1f, 0xe8, 0x67, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4842 = { .name = "ecdh_brainpoolp256t1_4842", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4842_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4842_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4842_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2567 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4843 for ECDH, tcId is 2568 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4843_peerpubkey[] = { 0x31, 0x79, 0x5f, 0x53, 0x89, 0x7a, 0x7f, 0xe7, 0x1c, 0xdb, 0xc1, 0x6e, 0x8a, 0xda, 0x5c, 0xd3, 0x94, 0xf6, 0xbb, 0x4d, 0xad, 0x03, 0x06, 0x6c, 0x5e, 0xa3, 0x58, 0x2c, 0xa8, 0x32, 0xf2, 0x01, 0x9a, 0x61, 0x61, 0x26, 0xd4, 0xf7, 0x3c, 0x70, 0x00, 0x53, 0x7b, 0x6d, 0xfa, 0x4b, 0x87, 0x9c, 0xc1, 0x76, 0xc4, 0x12, 0x19, 0x20, 0x4c, 0xb6, 0x88, 0x7e, 0x70, 0x29, 0x7a, 0xde, 0x4e, 0x32, }; static const unsigned char ecdh_brainpoolp256t1_4843_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4843_sharedsecret[] = { 0x51, 0x9d, 0x0e, 0x40, 0x34, 0x5a, 0x43, 0x6a, 0x72, 0x37, 0x22, 0x00, 0x56, 0xc0, 0x29, 0x8c, 0xd5, 0x1c, 0xf1, 0xc7, 0xbc, 0x37, 0x19, 0x12, 0x9f, 0x8f, 0x77, 0x0d, 0x8d, 0x8f, 0xa8, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4843 = { .name = "ecdh_brainpoolp256t1_4843", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4843_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4843_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4843_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2568 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4844 for ECDH, tcId is 2569 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4844_peerpubkey[] = { 0x60, 0xf8, 0xfb, 0x8d, 0x51, 0x50, 0x70, 0x3f, 0x95, 0x48, 0xca, 0xcb, 0xb6, 0xa5, 0xed, 0x4c, 0xf3, 0x17, 0xa2, 0x87, 0x8b, 0xea, 0xf3, 0x5f, 0xe6, 0xda, 0xf6, 0x45, 0xef, 0x23, 0xf2, 0xcf, 0x1d, 0x73, 0x17, 0x42, 0xac, 0x16, 0x9b, 0x7e, 0xcd, 0xd3, 0x8f, 0x1e, 0x05, 0x7d, 0x0a, 0xc8, 0x29, 0x32, 0xf9, 0xdb, 0xa9, 0x04, 0xfb, 0xdd, 0x45, 0xdc, 0x21, 0x50, 0x70, 0xdb, 0xac, 0x2b, }; static const unsigned char ecdh_brainpoolp256t1_4844_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4844_sharedsecret[] = { 0x48, 0x57, 0x90, 0x7e, 0xd9, 0xd0, 0x3a, 0x7b, 0x4a, 0x87, 0xe3, 0x46, 0xb1, 0xf8, 0xd8, 0x72, 0xf0, 0x29, 0x84, 0x7c, 0xab, 0x05, 0xfd, 0x7f, 0x6b, 0x37, 0xf5, 0x38, 0x05, 0x98, 0xec, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4844 = { .name = "ecdh_brainpoolp256t1_4844", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4844_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4844_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4844_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2569 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4845 for ECDH, tcId is 2570 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4845_peerpubkey[] = { 0x7c, 0x78, 0xa0, 0x0c, 0xe8, 0x5b, 0x83, 0x96, 0xa6, 0xc4, 0xe2, 0x95, 0xba, 0x24, 0xc2, 0xfa, 0xdd, 0xd8, 0xdc, 0x3e, 0x35, 0x62, 0x67, 0xaa, 0x6e, 0xf3, 0xea, 0xac, 0x16, 0x36, 0x2e, 0x70, 0x38, 0x51, 0x80, 0x6b, 0x82, 0xdd, 0x62, 0xf5, 0x3b, 0xfc, 0xa9, 0x64, 0x11, 0x11, 0xac, 0x2f, 0x7d, 0xdc, 0xfc, 0x0c, 0xe2, 0xc0, 0xc6, 0xc5, 0xc0, 0xfb, 0xad, 0xb5, 0x25, 0xf3, 0xd6, 0xc8, }; static const unsigned char ecdh_brainpoolp256t1_4845_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4845_sharedsecret[] = { 0x2f, 0x49, 0x0a, 0x50, 0xaf, 0xec, 0xa3, 0x1a, 0x53, 0xfe, 0xe3, 0x72, 0x4b, 0x2a, 0xc4, 0x08, 0x00, 0x3d, 0x73, 0x6a, 0x3a, 0x52, 0x12, 0x45, 0x70, 0xd6, 0x13, 0x86, 0x64, 0x21, 0x41, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4845 = { .name = "ecdh_brainpoolp256t1_4845", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4845_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4845_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4845_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2570 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4846 for ECDH, tcId is 2571 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4846_peerpubkey[] = { 0x24, 0xe9, 0x75, 0xec, 0xc3, 0x5d, 0x14, 0x92, 0xcc, 0x8b, 0x62, 0x00, 0x9d, 0xf2, 0x8b, 0x4d, 0x7b, 0x64, 0x0d, 0xac, 0x0d, 0xa8, 0xc0, 0xfd, 0x23, 0x3a, 0x1b, 0x84, 0xe3, 0xad, 0x62, 0x65, 0x2d, 0x58, 0x65, 0xaa, 0xdd, 0xe0, 0xad, 0xca, 0xbc, 0x5f, 0xc2, 0xac, 0x0f, 0x7a, 0x51, 0xda, 0xe6, 0xdd, 0xb6, 0x0b, 0x30, 0x1b, 0xb2, 0xf9, 0x1b, 0xfa, 0xd0, 0x0f, 0x5c, 0xc2, 0x0a, 0xdd, }; static const unsigned char ecdh_brainpoolp256t1_4846_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4846_sharedsecret[] = { 0x8e, 0x1c, 0x88, 0xb6, 0xbb, 0x56, 0x76, 0x49, 0x64, 0xc6, 0x1b, 0x53, 0x38, 0x87, 0xef, 0xbb, 0x00, 0xf6, 0xaf, 0x00, 0x4a, 0xb4, 0x97, 0xc5, 0x02, 0xdb, 0xdf, 0xb7, 0xd5, 0xed, 0x13, 0xa9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4846 = { .name = "ecdh_brainpoolp256t1_4846", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4846_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4846_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4846_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2571 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4847 for ECDH, tcId is 2572 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4847_peerpubkey[] = { 0x25, 0xfe, 0x9a, 0x68, 0x91, 0xb3, 0xdb, 0x33, 0xae, 0x41, 0xbd, 0x80, 0x33, 0xca, 0x2f, 0x6d, 0xb1, 0x7c, 0x4f, 0x85, 0xd5, 0x50, 0x41, 0x96, 0x23, 0x58, 0x5e, 0xf6, 0x4f, 0x33, 0x0d, 0xdf, 0x32, 0x8b, 0xe2, 0x86, 0xb3, 0x0e, 0xd8, 0x69, 0x5b, 0xda, 0xe4, 0xaf, 0xc7, 0xca, 0x50, 0xc6, 0x51, 0xbd, 0xdd, 0xf2, 0x56, 0xf9, 0x3a, 0x2f, 0x46, 0x99, 0x3d, 0xdd, 0x5e, 0x52, 0x66, 0x57, }; static const unsigned char ecdh_brainpoolp256t1_4847_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4847_sharedsecret[] = { 0x9c, 0xab, 0x67, 0x5c, 0xb4, 0x44, 0x0d, 0x09, 0x1c, 0xc0, 0xed, 0xf0, 0x56, 0x4c, 0x0f, 0xfd, 0xa3, 0x3a, 0x2c, 0xfd, 0xcb, 0xb6, 0x8b, 0x6f, 0xe8, 0xf4, 0xa3, 0x50, 0x56, 0x26, 0x8e, 0xe2, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4847 = { .name = "ecdh_brainpoolp256t1_4847", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4847_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4847_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4847_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2572 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4848 for ECDH, tcId is 2573 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4848_peerpubkey[] = { 0x49, 0xd4, 0xed, 0xa7, 0x5e, 0x02, 0xf1, 0x36, 0xa2, 0xa7, 0x14, 0x0d, 0x7a, 0xe5, 0x9c, 0x85, 0x18, 0x78, 0xf5, 0x22, 0x78, 0x6e, 0x6a, 0x16, 0xa0, 0x94, 0x38, 0x68, 0x62, 0xd1, 0xd5, 0x57, 0x40, 0x9c, 0x67, 0x32, 0xca, 0xc6, 0x33, 0x1f, 0x03, 0x38, 0xf8, 0xbe, 0xde, 0x9d, 0xa9, 0x95, 0xe3, 0x05, 0xd3, 0x50, 0x14, 0xbc, 0x7e, 0x04, 0x76, 0xa0, 0xfa, 0x19, 0x54, 0x4e, 0x4d, 0x7e, }; static const unsigned char ecdh_brainpoolp256t1_4848_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4848_sharedsecret[] = { 0x3f, 0x90, 0x66, 0x88, 0x45, 0x0c, 0x62, 0xbe, 0x58, 0x12, 0xf2, 0xab, 0x37, 0xa7, 0x0e, 0x46, 0x69, 0x92, 0x24, 0x7a, 0x2d, 0x6b, 0x2d, 0x6d, 0xc5, 0x0f, 0xae, 0x9d, 0x62, 0x70, 0xeb, 0xdc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4848 = { .name = "ecdh_brainpoolp256t1_4848", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4848_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4848_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4848_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2573 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4849 for ECDH, tcId is 2574 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4849_peerpubkey[] = { 0x15, 0x56, 0x8e, 0x78, 0x87, 0x92, 0xec, 0xb7, 0x6d, 0x44, 0xce, 0x67, 0xac, 0xd5, 0x04, 0x75, 0x86, 0x65, 0x06, 0x10, 0x8f, 0xcf, 0xa0, 0x09, 0x0d, 0xa0, 0xf7, 0x02, 0x12, 0xa9, 0x22, 0x95, 0x5c, 0x83, 0xa2, 0x2f, 0xa4, 0x64, 0x45, 0x12, 0x55, 0x25, 0x8c, 0xf2, 0xd9, 0x90, 0x89, 0xe4, 0xbe, 0x50, 0x33, 0x8e, 0x5c, 0xa4, 0x76, 0x8a, 0xd1, 0xb5, 0x69, 0xd4, 0xbc, 0x6d, 0x0e, 0x50, }; static const unsigned char ecdh_brainpoolp256t1_4849_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4849_sharedsecret[] = { 0x73, 0x7a, 0x79, 0x7f, 0x08, 0x54, 0x41, 0xe1, 0x7b, 0xdb, 0xb9, 0x6b, 0x38, 0xc2, 0x03, 0xec, 0x17, 0x75, 0x8f, 0x48, 0x4d, 0xf3, 0xba, 0xdf, 0xf6, 0x2c, 0xd2, 0xe0, 0xfd, 0xb3, 0xbf, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4849 = { .name = "ecdh_brainpoolp256t1_4849", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4849_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4849_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4849_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2574 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4850 for ECDH, tcId is 2575 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4850_peerpubkey[] = { 0x4f, 0xc4, 0x3e, 0xf4, 0xd6, 0x60, 0x00, 0x45, 0xcf, 0x3d, 0x23, 0xaf, 0x95, 0xc5, 0x6d, 0xc0, 0xa7, 0x0d, 0xbe, 0xd8, 0x3d, 0x7f, 0xf7, 0x07, 0x12, 0x9b, 0xb7, 0x79, 0x3a, 0x9a, 0x23, 0xde, 0x90, 0x64, 0xf3, 0x1f, 0xe7, 0x3c, 0x62, 0xa7, 0x16, 0x2e, 0x5a, 0xed, 0xce, 0x52, 0xcc, 0x48, 0x67, 0x3c, 0xfa, 0xc6, 0x32, 0x4b, 0xd7, 0x27, 0xeb, 0x42, 0xa2, 0x03, 0x8d, 0x69, 0x79, 0x40, }; static const unsigned char ecdh_brainpoolp256t1_4850_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4850_sharedsecret[] = { 0x32, 0x2a, 0x96, 0x2a, 0xa7, 0xfe, 0x08, 0xb0, 0x0c, 0xdb, 0xc7, 0x58, 0x47, 0x12, 0x72, 0xee, 0x93, 0x99, 0x04, 0xe5, 0xc1, 0x66, 0x30, 0x15, 0xca, 0x26, 0x75, 0x17, 0x8b, 0x02, 0x22, 0x81, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4850 = { .name = "ecdh_brainpoolp256t1_4850", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4850_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4850_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4850_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2575 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4851 for ECDH, tcId is 2576 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4851_peerpubkey[] = { 0x46, 0xf6, 0x03, 0xc5, 0xff, 0x30, 0xe5, 0xcb, 0x5b, 0xac, 0xfb, 0x17, 0x40, 0xb3, 0x3e, 0xb2, 0xe9, 0xf7, 0x9c, 0xcb, 0x62, 0x10, 0xcf, 0x4d, 0xdc, 0x21, 0xf7, 0xe4, 0x59, 0xdf, 0x51, 0x3f, 0x21, 0x5a, 0x19, 0x1e, 0x5a, 0x13, 0xfb, 0xb0, 0x5d, 0x3c, 0x98, 0x88, 0xf7, 0x22, 0xb5, 0x60, 0xc8, 0x6c, 0x33, 0x86, 0xab, 0x61, 0xed, 0xef, 0x8c, 0x8e, 0xc6, 0xf8, 0x3f, 0x62, 0x38, 0x67, }; static const unsigned char ecdh_brainpoolp256t1_4851_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4851_sharedsecret[] = { 0x16, 0x16, 0x85, 0x0d, 0x80, 0xe4, 0x1a, 0x80, 0x33, 0xe2, 0x73, 0xad, 0x40, 0x00, 0x72, 0x99, 0x61, 0x0d, 0x7e, 0x8f, 0x2b, 0xf5, 0x93, 0x94, 0x54, 0x3d, 0x58, 0x56, 0x8f, 0x9d, 0x66, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4851 = { .name = "ecdh_brainpoolp256t1_4851", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4851_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4851_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4851_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2576 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4852 for ECDH, tcId is 2577 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4852_peerpubkey[] = { 0x1b, 0x9e, 0x10, 0x12, 0x57, 0xa3, 0x0f, 0x23, 0xe7, 0x4c, 0xb5, 0x9c, 0xbd, 0x6f, 0x0f, 0x8d, 0x93, 0x6d, 0x26, 0x36, 0x7d, 0x94, 0x05, 0x37, 0x73, 0xbf, 0x22, 0xd0, 0x7d, 0xf0, 0xaf, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4852_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4852_sharedsecret[] = { 0x79, 0xbf, 0x04, 0x7a, 0x34, 0x38, 0x8e, 0x07, 0x21, 0x6e, 0x7e, 0xfa, 0x05, 0xc0, 0x26, 0xed, 0xf4, 0xc5, 0xa0, 0x1d, 0x15, 0xb8, 0xc6, 0x02, 0x2e, 0x71, 0x69, 0x02, 0x44, 0x7c, 0x06, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4852 = { .name = "ecdh_brainpoolp256t1_4852", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4852_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4852_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4852_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 2577 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4853 for ECDH, tcId is 2578 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4853_peerpubkey[] = { 0x16, 0xdb, 0xea, 0x40, 0xdd, 0x20, 0x4e, 0x25, 0xc6, 0x23, 0xf6, 0xa2, 0xe9, 0x62, 0x9a, 0xc9, 0x27, 0xbd, 0xc2, 0x93, 0x58, 0x3a, 0xad, 0xb5, 0x49, 0x98, 0x1b, 0x4d, 0x22, 0xa5, 0x00, 0xeb, 0x8f, 0x87, 0x63, 0x9f, 0xe0, 0x65, 0x92, 0x2a, 0xdd, 0x6c, 0x67, 0xda, 0x2b, 0x9e, 0x01, 0x22, 0x91, 0x19, 0x16, 0x91, 0xf8, 0xbf, 0x4f, 0xdb, 0x55, 0x70, 0xe6, 0xb2, 0xaf, 0x51, 0x18, 0x02, }; static const unsigned char ecdh_brainpoolp256t1_4853_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4853_sharedsecret[] = { 0x07, 0x89, 0x79, 0xe0, 0x2a, 0xde, 0x50, 0x37, 0x6e, 0xe6, 0xec, 0xec, 0xe5, 0x4b, 0x10, 0x90, 0xbb, 0xc3, 0x32, 0x3a, 0xde, 0x19, 0x25, 0xd4, 0xfa, 0xfb, 0x89, 0xa5, 0xdf, 0xc9, 0xa0, 0x5c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4853 = { .name = "ecdh_brainpoolp256t1_4853", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4853_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4853_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4853_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 2578 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4854 for ECDH, tcId is 2579 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4854_peerpubkey[] = { 0x53, 0x0e, 0x58, 0xfd, 0xe2, 0xa4, 0x40, 0x09, 0x25, 0xe7, 0x49, 0x1e, 0x37, 0x61, 0x78, 0x48, 0x5a, 0x27, 0xfc, 0xc5, 0xbe, 0xd7, 0x2b, 0x3a, 0xf9, 0x1e, 0xc4, 0x04, 0xce, 0xef, 0x35, 0xec, 0x6c, 0x16, 0xc6, 0x95, 0x89, 0xf5, 0x4a, 0x44, 0xdc, 0x9e, 0xc8, 0x3c, 0x51, 0x99, 0xe5, 0x7e, 0x30, 0x2d, 0x25, 0x4b, 0x39, 0x9f, 0x5a, 0x3f, 0x33, 0x89, 0xeb, 0x13, 0x6e, 0xec, 0x08, 0x47, }; static const unsigned char ecdh_brainpoolp256t1_4854_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4854_sharedsecret[] = { 0x77, 0xf4, 0xad, 0x56, 0xdb, 0x69, 0x8e, 0xb8, 0xea, 0xd1, 0x8c, 0x54, 0x2b, 0x87, 0xd8, 0x33, 0xa5, 0xb7, 0x8c, 0xac, 0x4c, 0x1f, 0xf6, 0x56, 0xce, 0xe3, 0x0f, 0x12, 0xba, 0x53, 0x8f, 0x39, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4854 = { .name = "ecdh_brainpoolp256t1_4854", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4854_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4854_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4854_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 2579 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4855 for ECDH, tcId is 2580 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4855_peerpubkey[] = { 0x70, 0xda, 0xe3, 0xa6, 0x5c, 0x3b, 0x5b, 0x6e, 0x5b, 0x52, 0x59, 0xae, 0xb0, 0x27, 0xa2, 0x22, 0x30, 0xaa, 0x21, 0x4e, 0x56, 0x75, 0x80, 0x3d, 0x2a, 0xa5, 0x8c, 0x5b, 0x59, 0x27, 0x03, 0x84, 0x94, 0x79, 0xf0, 0xa6, 0x5e, 0x54, 0x46, 0xbe, 0x0d, 0x0d, 0x29, 0x7c, 0xab, 0x51, 0xac, 0xc3, 0x43, 0x74, 0xd5, 0x9e, 0xc7, 0xaf, 0xb6, 0xb5, 0x20, 0x47, 0x8a, 0x48, 0x83, 0xb1, 0x25, 0xfd, }; static const unsigned char ecdh_brainpoolp256t1_4855_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4855_sharedsecret[] = { 0x85, 0x88, 0x11, 0x3d, 0x85, 0x81, 0x13, 0x16, 0x9c, 0x05, 0xb3, 0x61, 0x6d, 0xf9, 0x2b, 0xa7, 0xc2, 0x50, 0xd9, 0x41, 0x76, 0xaa, 0x5c, 0x76, 0x2a, 0x40, 0xb7, 0xdb, 0x4d, 0xff, 0x8c, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4855 = { .name = "ecdh_brainpoolp256t1_4855", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4855_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4855_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4855_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2580 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4856 for ECDH, tcId is 2581 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4856_peerpubkey[] = { 0x73, 0x40, 0x92, 0x44, 0x7e, 0x40, 0x0a, 0x71, 0x32, 0x25, 0x91, 0xc2, 0x3e, 0x6b, 0x20, 0x9f, 0x56, 0x61, 0xad, 0xdf, 0x76, 0x83, 0xb5, 0xf3, 0xe4, 0x5f, 0x57, 0x52, 0x29, 0x89, 0x4e, 0x6b, 0x40, 0x1c, 0xe4, 0xb0, 0x37, 0x85, 0x2c, 0xb3, 0xbc, 0xbc, 0xe5, 0x59, 0x67, 0x2e, 0xd5, 0x2c, 0xa1, 0x60, 0x84, 0xb0, 0x90, 0x31, 0x2b, 0x0a, 0xec, 0x49, 0xfa, 0xd8, 0x74, 0xf3, 0x72, 0xd5, }; static const unsigned char ecdh_brainpoolp256t1_4856_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4856_sharedsecret[] = { 0x0e, 0x4d, 0x70, 0x5e, 0xe4, 0x78, 0xfe, 0x0d, 0x92, 0x46, 0x66, 0xe0, 0xc4, 0x2e, 0x50, 0x02, 0x25, 0xb0, 0xde, 0x3e, 0x60, 0x17, 0xa1, 0xe3, 0x75, 0xb9, 0xbc, 0x61, 0xb3, 0x18, 0x21, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4856 = { .name = "ecdh_brainpoolp256t1_4856", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4856_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4856_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4856_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2581 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4857 for ECDH, tcId is 2582 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4857_peerpubkey[] = { 0x6d, 0x76, 0xe7, 0x26, 0xa2, 0xec, 0x12, 0xc7, 0xee, 0xd8, 0xf2, 0x00, 0x60, 0x44, 0xb3, 0x7d, 0x03, 0x57, 0x6f, 0xf2, 0x8b, 0x17, 0xc5, 0x42, 0x31, 0x7c, 0xa4, 0x92, 0x99, 0x43, 0x59, 0xe5, 0x0e, 0xd9, 0x78, 0xa3, 0x2a, 0x01, 0xcb, 0x2f, 0x36, 0x86, 0xb6, 0x84, 0xa4, 0x37, 0x60, 0xe3, 0x2c, 0x74, 0x34, 0xc2, 0xbd, 0xc8, 0x4a, 0x86, 0xc2, 0xe1, 0x39, 0xcc, 0xbc, 0x1c, 0x7e, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4857_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4857_sharedsecret[] = { 0x8f, 0x0d, 0x90, 0xbe, 0x2e, 0xd1, 0xd1, 0x70, 0xd6, 0xe5, 0x5f, 0x29, 0x6f, 0x37, 0xa5, 0x84, 0x6c, 0x5a, 0xb2, 0x0d, 0x53, 0xc5, 0x00, 0x18, 0xc6, 0x88, 0xce, 0x49, 0xc3, 0x2d, 0xc0, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4857 = { .name = "ecdh_brainpoolp256t1_4857", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4857_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4857_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4857_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2582 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4858 for ECDH, tcId is 2583 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4858_peerpubkey[] = { 0x26, 0xf7, 0xfb, 0x74, 0x0d, 0x28, 0x3d, 0xd4, 0x88, 0x7f, 0xd9, 0x2a, 0xb7, 0x30, 0x3d, 0x24, 0xf9, 0x51, 0x57, 0xb7, 0x3e, 0xf4, 0x73, 0xc5, 0xae, 0xe7, 0x14, 0x35, 0x7e, 0xb3, 0x72, 0x50, 0x32, 0xab, 0x40, 0x10, 0xd2, 0x39, 0x05, 0xcb, 0xbe, 0x50, 0xd1, 0x5a, 0x9c, 0xec, 0xd1, 0xbe, 0xca, 0x4e, 0xc4, 0x29, 0x91, 0x61, 0x62, 0xa9, 0x4d, 0xef, 0x00, 0xae, 0x26, 0x4c, 0x60, 0xbf, }; static const unsigned char ecdh_brainpoolp256t1_4858_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4858_sharedsecret[] = { 0x3b, 0xe6, 0x31, 0x3d, 0x2d, 0xb0, 0xa1, 0x22, 0x8f, 0xcf, 0x0e, 0x32, 0x6a, 0x3f, 0x9d, 0x11, 0xf6, 0x10, 0x92, 0xe5, 0x73, 0x79, 0xe8, 0xaa, 0x83, 0x0d, 0x40, 0x52, 0xdd, 0x91, 0x55, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4858 = { .name = "ecdh_brainpoolp256t1_4858", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4858_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4858_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4858_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2583 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4859 for ECDH, tcId is 2584 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4859_peerpubkey[] = { 0x4f, 0xb9, 0x9b, 0x3f, 0x31, 0xbf, 0x47, 0x38, 0xec, 0x09, 0x56, 0x19, 0x25, 0x47, 0x50, 0x74, 0xaa, 0xda, 0xf1, 0xd0, 0x93, 0x1b, 0xbe, 0x6d, 0x81, 0xc7, 0xc4, 0x2d, 0xd0, 0xa5, 0x3c, 0x05, 0x63, 0x72, 0x83, 0x27, 0xa5, 0x8e, 0x54, 0x19, 0x0a, 0xed, 0x35, 0x79, 0xdd, 0x43, 0x92, 0xfc, 0xe0, 0xef, 0xe5, 0x83, 0x69, 0x05, 0x34, 0x21, 0x82, 0xc5, 0x45, 0xfa, 0xe7, 0x91, 0xc4, 0x32, }; static const unsigned char ecdh_brainpoolp256t1_4859_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4859_sharedsecret[] = { 0x5b, 0x0d, 0x3c, 0x7d, 0x82, 0x53, 0xb6, 0x69, 0x56, 0x20, 0x11, 0xa9, 0x4b, 0x35, 0x87, 0x03, 0x6f, 0x59, 0xe2, 0xd0, 0x21, 0x29, 0xca, 0xf1, 0xfa, 0x3b, 0xe5, 0x89, 0x9c, 0x75, 0x4c, 0xba, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4859 = { .name = "ecdh_brainpoolp256t1_4859", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4859_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4859_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4859_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2584 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4860 for ECDH, tcId is 2585 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4860_peerpubkey[] = { 0x16, 0x65, 0x69, 0x5f, 0x1e, 0xed, 0x16, 0xf4, 0xc7, 0x35, 0x7c, 0x63, 0x6c, 0xa6, 0xf5, 0xad, 0xaa, 0xd6, 0xef, 0xdb, 0x63, 0x54, 0x91, 0x0c, 0x1a, 0xf6, 0xed, 0x0e, 0xc0, 0x49, 0xc8, 0x44, 0x47, 0x02, 0x19, 0xde, 0x3c, 0x07, 0x0c, 0xa5, 0xc8, 0x0b, 0x03, 0xf3, 0x48, 0xbe, 0xfc, 0xb5, 0x0e, 0xa3, 0x7e, 0xe3, 0xbb, 0x72, 0x84, 0xca, 0xd7, 0xf7, 0xa4, 0x28, 0x6c, 0x82, 0xee, 0xe3, }; static const unsigned char ecdh_brainpoolp256t1_4860_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4860_sharedsecret[] = { 0x0f, 0x55, 0x59, 0x1b, 0x4a, 0x9b, 0xe4, 0x7d, 0x8c, 0x88, 0xab, 0xa9, 0xd3, 0x79, 0xac, 0x9f, 0xef, 0x60, 0xfc, 0x01, 0xb2, 0x09, 0x89, 0x57, 0xb7, 0xd3, 0x84, 0xe1, 0xf4, 0xa8, 0xbd, 0x91, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4860 = { .name = "ecdh_brainpoolp256t1_4860", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4860_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4860_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4860_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2585 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4861 for ECDH, tcId is 2586 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4861_peerpubkey[] = { 0x2d, 0xc6, 0x6d, 0x1e, 0x05, 0xe4, 0xd2, 0x94, 0x82, 0x69, 0x32, 0x09, 0x89, 0xdc, 0x3f, 0x98, 0xc8, 0xcb, 0x4d, 0x87, 0x5f, 0xf8, 0xf1, 0x25, 0x39, 0x14, 0xb1, 0xf6, 0x58, 0x37, 0xc4, 0xb1, 0x50, 0x58, 0x74, 0xf3, 0x34, 0x65, 0xb3, 0x3a, 0x36, 0x85, 0xa4, 0x39, 0x87, 0x63, 0x61, 0xb1, 0x0e, 0x42, 0xde, 0x59, 0x12, 0xc2, 0x65, 0x91, 0xd2, 0xcd, 0xba, 0x4d, 0x84, 0x36, 0xaa, 0xe7, }; static const unsigned char ecdh_brainpoolp256t1_4861_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4861_sharedsecret[] = { 0x13, 0x83, 0x9c, 0x81, 0x5a, 0x14, 0xc3, 0x95, 0xee, 0xe7, 0x2b, 0x42, 0xaf, 0x9c, 0x98, 0x23, 0x29, 0x41, 0xb9, 0xe6, 0x8c, 0x0a, 0xd8, 0x4d, 0x0b, 0x72, 0x23, 0x38, 0xdc, 0xcd, 0x77, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4861 = { .name = "ecdh_brainpoolp256t1_4861", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4861_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4861_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4861_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2586 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4862 for ECDH, tcId is 2587 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4862_peerpubkey[] = { 0x80, 0xec, 0xd6, 0x02, 0x31, 0x32, 0x5f, 0x76, 0xd9, 0x4a, 0x4c, 0x12, 0x40, 0x7c, 0x88, 0xd0, 0x27, 0x18, 0xec, 0x1b, 0x38, 0xeb, 0x60, 0x1f, 0xf5, 0xa5, 0x66, 0xd7, 0x8f, 0x53, 0xe9, 0x66, 0x8f, 0x01, 0xff, 0x5a, 0x73, 0x69, 0x98, 0x42, 0x20, 0xb8, 0x51, 0x74, 0x28, 0xd5, 0x49, 0xbe, 0x21, 0xef, 0x73, 0x10, 0x7e, 0x0e, 0xb1, 0x6f, 0x26, 0x4c, 0x89, 0x18, 0xbe, 0x4f, 0xe2, 0xad, }; static const unsigned char ecdh_brainpoolp256t1_4862_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4862_sharedsecret[] = { 0x5a, 0x2f, 0x47, 0xe1, 0xe6, 0x1f, 0xf9, 0xcf, 0x45, 0xaa, 0xd4, 0xf3, 0x9d, 0x97, 0x1f, 0x12, 0x14, 0x74, 0x12, 0xa1, 0xa9, 0xd9, 0x98, 0xaa, 0x38, 0xf1, 0x62, 0xcc, 0x1e, 0x2a, 0x06, 0x99, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4862 = { .name = "ecdh_brainpoolp256t1_4862", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4862_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4862_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4862_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2587 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4863 for ECDH, tcId is 2588 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4863_peerpubkey[] = { 0x6e, 0xc4, 0x33, 0xdf, 0xdb, 0x0f, 0x0d, 0xbe, 0x21, 0xac, 0x10, 0xb9, 0x79, 0x21, 0x1c, 0xe3, 0xfd, 0x36, 0x18, 0x9d, 0x9a, 0x06, 0xb6, 0x5d, 0x98, 0x1e, 0x24, 0xa1, 0xa2, 0x43, 0xbd, 0xdb, 0xa3, 0xd0, 0xe0, 0xc2, 0xf8, 0x47, 0x91, 0x78, 0x20, 0x87, 0xde, 0x45, 0x67, 0x9d, 0xc7, 0x7a, 0xb6, 0xa5, 0x1c, 0x4d, 0x5b, 0xc4, 0x31, 0x78, 0x05, 0x95, 0x8d, 0x38, 0xbc, 0x9d, 0x45, 0x8b, }; static const unsigned char ecdh_brainpoolp256t1_4863_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4863_sharedsecret[] = { 0x7d, 0x99, 0xe2, 0x7f, 0x41, 0x0c, 0xb2, 0x8e, 0xab, 0x5a, 0x0b, 0x27, 0xa4, 0x77, 0xaf, 0xd5, 0x96, 0xda, 0xc3, 0xd6, 0x96, 0x65, 0xd3, 0x6c, 0xe7, 0xf3, 0x91, 0x28, 0x42, 0x8f, 0xe2, 0xd5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4863 = { .name = "ecdh_brainpoolp256t1_4863", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4863_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4863_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4863_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2588 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4864 for ECDH, tcId is 2589 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4864_peerpubkey[] = { 0x6a, 0x0c, 0x87, 0x7a, 0xf6, 0x35, 0xd3, 0x6a, 0xc3, 0x47, 0x05, 0x6e, 0xbb, 0xbb, 0xde, 0x97, 0x2a, 0xc6, 0x8a, 0xc3, 0x15, 0x64, 0x31, 0x6c, 0x11, 0x69, 0x0a, 0x3f, 0x1e, 0x11, 0x1e, 0x1d, 0x93, 0xe6, 0xed, 0x73, 0xeb, 0xd1, 0xd2, 0x3f, 0x68, 0x80, 0x9f, 0x29, 0xf1, 0x72, 0x31, 0x40, 0x63, 0x09, 0xf7, 0x7d, 0xc6, 0x89, 0x89, 0x0c, 0xfa, 0xab, 0x09, 0x25, 0xa8, 0x16, 0x69, 0x48, }; static const unsigned char ecdh_brainpoolp256t1_4864_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4864_sharedsecret[] = { 0x4b, 0xf2, 0x2f, 0x8c, 0x72, 0xdb, 0xbc, 0xfc, 0x7a, 0x53, 0x1d, 0xd1, 0xa9, 0x26, 0x6b, 0x74, 0x63, 0x14, 0x57, 0xe0, 0xbb, 0xed, 0x9d, 0x44, 0x97, 0x43, 0x9f, 0x86, 0x51, 0x00, 0xd3, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4864 = { .name = "ecdh_brainpoolp256t1_4864", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4864_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4864_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4864_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2589 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4865 for ECDH, tcId is 2590 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4865_peerpubkey[] = { 0x4b, 0x0d, 0x2f, 0x33, 0xb1, 0xf1, 0x3f, 0xdf, 0x07, 0xe3, 0x38, 0x52, 0x90, 0xa8, 0x0f, 0x56, 0x19, 0x26, 0xd9, 0x15, 0x6c, 0xc8, 0x3d, 0x25, 0xc0, 0xff, 0x3f, 0x2d, 0x03, 0xdf, 0x5e, 0x1e, 0x75, 0x2c, 0x11, 0x61, 0xd5, 0xcf, 0x2c, 0x44, 0x72, 0x47, 0xfa, 0x25, 0x91, 0x68, 0x3e, 0xa2, 0x78, 0x29, 0x9e, 0x91, 0xa5, 0x24, 0x55, 0x40, 0x98, 0x14, 0xd5, 0x22, 0xad, 0x26, 0x47, 0xdb, }; static const unsigned char ecdh_brainpoolp256t1_4865_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4865_sharedsecret[] = { 0x9a, 0x73, 0x68, 0x4f, 0x5c, 0x3a, 0xda, 0x87, 0x8a, 0xa6, 0xe8, 0x9c, 0x56, 0x49, 0x8b, 0x85, 0xa0, 0x03, 0x31, 0x0b, 0xf1, 0xab, 0xbe, 0x89, 0x05, 0x44, 0x19, 0x24, 0xbb, 0x7e, 0x51, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4865 = { .name = "ecdh_brainpoolp256t1_4865", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4865_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4865_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4865_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2590 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4866 for ECDH, tcId is 2591 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4866_peerpubkey[] = { 0x90, 0xec, 0xb2, 0xd7, 0x35, 0xaf, 0x0c, 0xb9, 0xc8, 0x8a, 0x3b, 0xbd, 0x46, 0xa5, 0x1e, 0x84, 0x04, 0x5b, 0xc5, 0x67, 0xff, 0x5a, 0x59, 0x30, 0x71, 0x3c, 0x58, 0x58, 0x4c, 0x70, 0x76, 0xf6, 0x8b, 0x27, 0x9c, 0xa5, 0xef, 0x77, 0x77, 0xc5, 0xd1, 0x34, 0xbe, 0xc3, 0x58, 0xef, 0x7f, 0xa2, 0x6e, 0x85, 0x41, 0xb1, 0x8c, 0xf5, 0x87, 0xf6, 0x0c, 0xb3, 0x22, 0x1d, 0x0b, 0x3d, 0x2e, 0x2c, }; static const unsigned char ecdh_brainpoolp256t1_4866_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4866_sharedsecret[] = { 0x13, 0xca, 0x4c, 0x25, 0xd4, 0x8e, 0x68, 0x86, 0x59, 0x68, 0x33, 0x74, 0xa7, 0xbe, 0x05, 0x21, 0xe5, 0x81, 0xb8, 0xe2, 0xc6, 0xfc, 0x08, 0x11, 0x2d, 0xa5, 0xb3, 0x29, 0x1f, 0x32, 0x3a, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4866 = { .name = "ecdh_brainpoolp256t1_4866", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4866_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4866_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4866_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2591 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4867 for ECDH, tcId is 2592 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4867_peerpubkey[] = { 0x91, 0xc3, 0xff, 0x53, 0x50, 0xa8, 0xb4, 0xa0, 0xd6, 0xb3, 0x66, 0x33, 0x3e, 0x13, 0x1a, 0xf1, 0x86, 0xed, 0xa5, 0x7f, 0x91, 0xda, 0xfb, 0x60, 0xe3, 0x8a, 0x5e, 0x41, 0x03, 0x49, 0x2b, 0x14, 0x4e, 0xee, 0x7e, 0x05, 0x66, 0x8c, 0xbb, 0x94, 0x07, 0x07, 0x5c, 0x6f, 0x73, 0xd9, 0xdc, 0x93, 0xc0, 0xf4, 0xe8, 0x58, 0x9d, 0x7a, 0x08, 0xf8, 0x8b, 0xfb, 0x6a, 0x3d, 0x56, 0xe0, 0x4b, 0x49, }; static const unsigned char ecdh_brainpoolp256t1_4867_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4867_sharedsecret[] = { 0x69, 0x3d, 0xd4, 0x22, 0x82, 0xfa, 0xa3, 0x3a, 0x8c, 0xe5, 0x04, 0x6b, 0x72, 0x8d, 0x24, 0x4b, 0xcf, 0x5c, 0x8d, 0xdb, 0x24, 0xae, 0xc5, 0x82, 0xa3, 0x01, 0x89, 0x05, 0xa6, 0x68, 0x18, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4867 = { .name = "ecdh_brainpoolp256t1_4867", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4867_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4867_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4867_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2592 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4868 for ECDH, tcId is 2593 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4868_peerpubkey[] = { 0x26, 0xfe, 0x02, 0xd7, 0xa2, 0xbf, 0x98, 0x78, 0xf5, 0x5c, 0x57, 0xa9, 0xb4, 0xa9, 0x4c, 0x0e, 0xa6, 0x1e, 0x03, 0x2a, 0x8a, 0x1f, 0x70, 0x7e, 0x28, 0xaf, 0x6b, 0x66, 0x96, 0x8e, 0xf4, 0xee, 0x7d, 0xdd, 0x04, 0xe5, 0xe2, 0x8d, 0x8c, 0xf3, 0x9f, 0x13, 0x79, 0xe1, 0x66, 0xae, 0xa1, 0x34, 0x2f, 0x03, 0xe9, 0xc7, 0xfb, 0x94, 0xbe, 0x30, 0xc5, 0xe1, 0xcc, 0xf1, 0x10, 0xbe, 0x00, 0x0c, }; static const unsigned char ecdh_brainpoolp256t1_4868_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4868_sharedsecret[] = { 0x63, 0x60, 0x9b, 0xff, 0xa6, 0xdc, 0x88, 0xa8, 0x9e, 0xe3, 0x17, 0xde, 0x1e, 0x7e, 0x52, 0x60, 0x9c, 0xb8, 0xd7, 0x6a, 0xb1, 0x73, 0xe1, 0xb5, 0x40, 0xf0, 0xa3, 0x3c, 0xeb, 0x51, 0xdb, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4868 = { .name = "ecdh_brainpoolp256t1_4868", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4868_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4868_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4868_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2593 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4869 for ECDH, tcId is 2594 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4869_peerpubkey[] = { 0x6f, 0x64, 0x20, 0x0e, 0x5d, 0x44, 0xc2, 0xc3, 0xaf, 0xa4, 0xbd, 0x63, 0xd4, 0xba, 0x09, 0xe9, 0xe5, 0x1b, 0xf5, 0xf6, 0x18, 0xa9, 0xb4, 0x69, 0x0d, 0x50, 0x05, 0x6d, 0xa7, 0x8c, 0x8d, 0x45, 0xa7, 0x53, 0xe7, 0x05, 0xd6, 0x70, 0x1f, 0xbf, 0xab, 0x73, 0x0a, 0x9f, 0x3d, 0x37, 0x8b, 0x07, 0xcf, 0x6b, 0xbe, 0xef, 0xe9, 0x76, 0x0b, 0x46, 0xfe, 0xae, 0x15, 0x55, 0x97, 0x78, 0xae, 0x57, }; static const unsigned char ecdh_brainpoolp256t1_4869_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4869_sharedsecret[] = { 0x69, 0x2c, 0x7e, 0xaf, 0x6c, 0x73, 0x97, 0x80, 0x76, 0x13, 0xc7, 0x88, 0x28, 0x60, 0x16, 0xa7, 0xd3, 0x7e, 0x67, 0xaa, 0xe1, 0x2f, 0x86, 0xcd, 0xeb, 0x2a, 0x31, 0xdd, 0x24, 0x18, 0x4c, 0xcb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4869 = { .name = "ecdh_brainpoolp256t1_4869", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4869_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4869_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4869_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2594 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4870 for ECDH, tcId is 2595 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4870_peerpubkey[] = { 0x12, 0x14, 0xb9, 0x17, 0xe9, 0x32, 0x9e, 0xf2, 0x71, 0x43, 0xa1, 0xe1, 0x63, 0xc1, 0x9d, 0xd3, 0xc8, 0xab, 0xad, 0x05, 0x37, 0xc4, 0x60, 0x49, 0x21, 0xe4, 0xbb, 0x3f, 0xc8, 0xfb, 0x0a, 0x43, 0x54, 0xeb, 0x90, 0xc3, 0x41, 0x88, 0x01, 0xee, 0x75, 0x0b, 0x31, 0xdf, 0x4b, 0x2e, 0xed, 0xb7, 0xca, 0xf9, 0x71, 0x30, 0x1f, 0x97, 0x58, 0x10, 0xdc, 0x40, 0x94, 0xcc, 0x42, 0x5a, 0xe5, 0xf3, }; static const unsigned char ecdh_brainpoolp256t1_4870_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4870_sharedsecret[] = { 0x24, 0x4c, 0x34, 0xd5, 0xe0, 0x17, 0xa0, 0xea, 0xc9, 0xc8, 0x6b, 0x89, 0x37, 0x2c, 0x12, 0xba, 0xeb, 0x83, 0xf5, 0x78, 0xba, 0x06, 0xfe, 0xa0, 0xc6, 0xad, 0x8f, 0xc9, 0xe6, 0x75, 0xf4, 0xd0, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4870 = { .name = "ecdh_brainpoolp256t1_4870", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4870_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4870_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4870_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2595 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4871 for ECDH, tcId is 2596 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4871_peerpubkey[] = { 0x00, 0x23, 0x41, 0xea, 0x44, 0x88, 0xf0, 0x2f, 0x2a, 0xfc, 0x8f, 0x18, 0xb8, 0xdd, 0xb4, 0x2a, 0x96, 0xd8, 0x56, 0x7d, 0xfe, 0x08, 0xd8, 0x7b, 0x42, 0x3b, 0xe1, 0x59, 0x09, 0x9a, 0xac, 0xb8, 0x9b, 0xa1, 0xcd, 0x92, 0xad, 0x9b, 0x5d, 0x23, 0x28, 0xf4, 0x5c, 0xca, 0x45, 0xd0, 0x7f, 0xd5, 0xef, 0x52, 0xe6, 0x39, 0xfb, 0x5d, 0x88, 0xac, 0x38, 0xe2, 0x1c, 0xea, 0x25, 0xe1, 0xbd, 0xd3, }; static const unsigned char ecdh_brainpoolp256t1_4871_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4871_sharedsecret[] = { 0x7e, 0x8d, 0x4c, 0x70, 0xe4, 0x57, 0x09, 0xde, 0x99, 0xc4, 0xb8, 0xe6, 0xf6, 0x1c, 0xb6, 0x1d, 0xd5, 0xcc, 0xe1, 0x2e, 0x8d, 0x1d, 0x1f, 0xde, 0x25, 0xb7, 0xe8, 0x00, 0x5a, 0x46, 0xc7, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4871 = { .name = "ecdh_brainpoolp256t1_4871", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4871_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4871_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4871_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2596 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4872 for ECDH, tcId is 2597 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4872_peerpubkey[] = { 0x64, 0x3a, 0x82, 0xbc, 0x27, 0x92, 0xa2, 0x42, 0xe6, 0xee, 0x01, 0xcb, 0xa5, 0x83, 0x22, 0xb7, 0x19, 0xaa, 0xd5, 0x54, 0xdf, 0x57, 0xaf, 0x77, 0xf6, 0xfc, 0x6f, 0xb0, 0xe2, 0x84, 0x68, 0x3b, 0x7d, 0xb9, 0x3f, 0xc7, 0x7b, 0xa6, 0x2b, 0xfa, 0xb5, 0x5b, 0xa1, 0x5a, 0x78, 0xdf, 0x7e, 0xf8, 0x95, 0xca, 0x5c, 0x39, 0x03, 0xf7, 0x5a, 0x21, 0xc5, 0xdf, 0x1e, 0xa6, 0x28, 0x95, 0x68, 0x97, }; static const unsigned char ecdh_brainpoolp256t1_4872_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4872_sharedsecret[] = { 0x2b, 0xbd, 0xd2, 0x98, 0xb3, 0x40, 0x03, 0x3d, 0xad, 0x6d, 0x19, 0xdf, 0xc3, 0x1a, 0x12, 0x48, 0x22, 0xca, 0x39, 0x86, 0xca, 0x13, 0x87, 0xbf, 0x44, 0x1b, 0x30, 0xba, 0xcb, 0x48, 0x39, 0xf5, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4872 = { .name = "ecdh_brainpoolp256t1_4872", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4872_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4872_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4872_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2597 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4873 for ECDH, tcId is 2598 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4873_peerpubkey[] = { 0x46, 0x9d, 0xf6, 0x7d, 0xf5, 0x08, 0x14, 0x50, 0xfd, 0x70, 0x1a, 0xf9, 0xc6, 0x7e, 0x51, 0x8d, 0x11, 0x19, 0x64, 0xb6, 0x03, 0x96, 0x2e, 0xa6, 0xc7, 0xf9, 0x0d, 0xae, 0x5e, 0x99, 0xf9, 0x9a, 0x22, 0x1f, 0x6c, 0xf6, 0x98, 0xd7, 0x16, 0xda, 0x86, 0xf5, 0x2a, 0xd1, 0x3e, 0x0b, 0x09, 0x43, 0xb6, 0xe4, 0x9b, 0x25, 0x94, 0x43, 0x30, 0xfd, 0xc0, 0x9e, 0xb8, 0x80, 0xf9, 0x62, 0x32, 0x8e, }; static const unsigned char ecdh_brainpoolp256t1_4873_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4873_sharedsecret[] = { 0x6f, 0x8b, 0xa1, 0xfc, 0xe2, 0x6b, 0x4b, 0xc7, 0x41, 0xa7, 0x5a, 0x4c, 0x64, 0xc2, 0x4d, 0xda, 0x98, 0xfc, 0x05, 0xa8, 0xe4, 0x1f, 0xbf, 0x3b, 0x05, 0xc7, 0x97, 0x19, 0x51, 0x96, 0x23, 0x99, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4873 = { .name = "ecdh_brainpoolp256t1_4873", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4873_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4873_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4873_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2598 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4874 for ECDH, tcId is 2599 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4874_peerpubkey[] = { 0x45, 0xd9, 0x5c, 0xf3, 0x8b, 0xef, 0x7e, 0xcd, 0xab, 0xe1, 0x00, 0x20, 0x4c, 0xdb, 0x2a, 0xf5, 0x3d, 0xc9, 0x51, 0xc3, 0x86, 0xa9, 0x87, 0xc0, 0x1e, 0x39, 0xbb, 0xa2, 0xca, 0xa1, 0x92, 0x4b, 0x8d, 0x4b, 0x51, 0x22, 0xba, 0xd0, 0xd5, 0x9a, 0x92, 0x17, 0x53, 0xef, 0x1b, 0xf3, 0x54, 0x4a, 0xfa, 0x24, 0x4f, 0x0a, 0xdc, 0x56, 0x1a, 0x9f, 0x8d, 0x51, 0x6e, 0x07, 0x8f, 0x1a, 0xee, 0xca, }; static const unsigned char ecdh_brainpoolp256t1_4874_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4874_sharedsecret[] = { 0x1a, 0xef, 0x7d, 0x10, 0x5f, 0xec, 0x29, 0x2d, 0x2b, 0xee, 0x3d, 0xab, 0x69, 0x47, 0x05, 0x81, 0xba, 0xdc, 0x60, 0x6e, 0x60, 0x24, 0xc0, 0xca, 0xaf, 0xb9, 0x29, 0xa2, 0xb7, 0x1c, 0x4e, 0x22, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4874 = { .name = "ecdh_brainpoolp256t1_4874", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4874_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4874_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4874_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2599 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4875 for ECDH, tcId is 2600 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4875_peerpubkey[] = { 0x9e, 0xb1, 0xad, 0xd7, 0xc2, 0xd6, 0xf1, 0x08, 0xdd, 0x15, 0x42, 0x26, 0xce, 0x89, 0x23, 0xcf, 0x6b, 0x70, 0xb0, 0x1a, 0xbe, 0xf1, 0x88, 0x76, 0xaf, 0x73, 0xdc, 0xa4, 0x66, 0x61, 0x34, 0xd6, 0x5c, 0xc9, 0xe8, 0x01, 0x5d, 0xf5, 0x58, 0x3d, 0x25, 0xaa, 0x8e, 0xca, 0x04, 0x04, 0x04, 0x0a, 0xae, 0x5d, 0xdf, 0xee, 0xa1, 0xba, 0x29, 0xc8, 0xb9, 0xaa, 0xc0, 0x70, 0x44, 0x35, 0xc8, 0x8b, }; static const unsigned char ecdh_brainpoolp256t1_4875_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4875_sharedsecret[] = { 0x55, 0x26, 0x4d, 0x77, 0x3a, 0xac, 0xaa, 0x9b, 0x66, 0xfb, 0x50, 0xe0, 0x9e, 0x70, 0x58, 0x56, 0x8a, 0xd2, 0xb0, 0x34, 0x98, 0x4b, 0x9d, 0xe1, 0x95, 0x82, 0x72, 0xb6, 0x83, 0xf6, 0xd9, 0xab, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4875 = { .name = "ecdh_brainpoolp256t1_4875", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4875_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4875_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4875_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2600 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4876 for ECDH, tcId is 2601 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4876_peerpubkey[] = { 0x31, 0x2c, 0xdd, 0x07, 0xe0, 0x99, 0x7b, 0xec, 0x19, 0xf7, 0xf5, 0x79, 0xca, 0x95, 0xf5, 0x5e, 0x47, 0xcc, 0xaf, 0xd0, 0x59, 0x71, 0x98, 0xf7, 0xcd, 0xe5, 0x2b, 0xe4, 0x22, 0x92, 0x99, 0xdc, 0x8e, 0xa9, 0x6f, 0x46, 0x66, 0x83, 0x25, 0x06, 0x22, 0x15, 0x2a, 0x34, 0x49, 0x0a, 0xa6, 0xe8, 0xd5, 0x70, 0x66, 0xeb, 0x89, 0x13, 0x47, 0xd8, 0x9d, 0xc7, 0x93, 0xdf, 0xe4, 0x41, 0xdf, 0x49, }; static const unsigned char ecdh_brainpoolp256t1_4876_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4876_sharedsecret[] = { 0x79, 0x3c, 0xc6, 0x0a, 0xa9, 0x34, 0xd3, 0xba, 0xe2, 0xd1, 0x60, 0xa7, 0x14, 0x32, 0x4b, 0xd0, 0xea, 0x8b, 0x83, 0x0f, 0xfd, 0x50, 0xa9, 0x9e, 0x42, 0x5a, 0x7c, 0x39, 0x20, 0x45, 0x39, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4876 = { .name = "ecdh_brainpoolp256t1_4876", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4876_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4876_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4876_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2601 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4877 for ECDH, tcId is 2602 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4877_peerpubkey[] = { 0x91, 0x19, 0x72, 0x24, 0xf4, 0x87, 0xe1, 0xde, 0x86, 0x40, 0x2e, 0x4f, 0x38, 0x4c, 0xf5, 0x8a, 0xf2, 0x15, 0x2f, 0xd8, 0x18, 0x57, 0x10, 0xf1, 0x2b, 0xb4, 0x35, 0x22, 0x63, 0xc0, 0xd2, 0x3b, 0x0b, 0x47, 0x71, 0x28, 0x6d, 0xc5, 0xcb, 0x7b, 0x3b, 0x88, 0x52, 0x6f, 0xf3, 0x5b, 0x84, 0x5c, 0xcb, 0x9b, 0x4f, 0xb0, 0xe6, 0x4f, 0xbf, 0xf4, 0xf3, 0x4a, 0x8b, 0x5d, 0xe3, 0xd7, 0xed, 0xa9, }; static const unsigned char ecdh_brainpoolp256t1_4877_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4877_sharedsecret[] = { 0x95, 0x87, 0x83, 0x86, 0x06, 0x78, 0xa3, 0x4b, 0x73, 0xf9, 0x55, 0xb5, 0x24, 0x8a, 0xef, 0x90, 0x1c, 0x76, 0x5d, 0x35, 0x92, 0x99, 0x39, 0x9f, 0xbe, 0x49, 0x6f, 0x7d, 0xf8, 0xbf, 0x47, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4877 = { .name = "ecdh_brainpoolp256t1_4877", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4877_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4877_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4877_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2602 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4878 for ECDH, tcId is 2603 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4878_peerpubkey[] = { 0x1b, 0xbd, 0x98, 0x9e, 0x9f, 0x5a, 0xc1, 0xdc, 0xb9, 0x52, 0x81, 0x45, 0x6c, 0x28, 0x80, 0xc2, 0xae, 0x62, 0xd0, 0xfe, 0xac, 0x88, 0x78, 0x88, 0xa8, 0x2b, 0x73, 0xc6, 0x3a, 0x3a, 0x85, 0xa5, 0x59, 0xfe, 0x3c, 0xc0, 0xd8, 0x21, 0xf7, 0x0a, 0x43, 0x4c, 0x14, 0xf2, 0x50, 0xc6, 0xd6, 0xb6, 0x95, 0x30, 0xe7, 0x6d, 0xe6, 0x3e, 0x8d, 0xd4, 0xc3, 0x14, 0x92, 0xcf, 0xaa, 0xd0, 0x4c, 0xd5, }; static const unsigned char ecdh_brainpoolp256t1_4878_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4878_sharedsecret[] = { 0x6c, 0xcc, 0xe2, 0x18, 0xdc, 0xec, 0x1c, 0xe6, 0x75, 0x32, 0xb1, 0xce, 0x23, 0x03, 0x62, 0xb4, 0x8e, 0xfd, 0xee, 0xd3, 0xc8, 0xb7, 0x2c, 0x91, 0x98, 0x60, 0x3d, 0x86, 0xc4, 0xed, 0x71, 0x7e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4878 = { .name = "ecdh_brainpoolp256t1_4878", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4878_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4878_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4878_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2603 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4879 for ECDH, tcId is 2604 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4879_peerpubkey[] = { 0x6a, 0xcd, 0xd1, 0xa5, 0x9d, 0x09, 0x85, 0xef, 0x39, 0x47, 0x6f, 0x5b, 0x6e, 0x85, 0x37, 0xcc, 0x2e, 0x04, 0xb4, 0x94, 0x31, 0x84, 0xe9, 0xec, 0x8d, 0xcf, 0x25, 0xf6, 0x3d, 0x2c, 0xf1, 0xfc, 0x4d, 0x31, 0xd0, 0xc8, 0x62, 0xbd, 0x98, 0xb1, 0x76, 0x9a, 0x0c, 0x70, 0x14, 0xeb, 0xa0, 0xe9, 0xac, 0xcd, 0xef, 0x68, 0x8d, 0xac, 0x36, 0x27, 0xca, 0xba, 0x39, 0xa5, 0x9b, 0x2a, 0x85, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4879_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4879_sharedsecret[] = { 0x6f, 0x89, 0x84, 0x28, 0x4d, 0x4c, 0x05, 0xe9, 0x5f, 0x00, 0xd0, 0xa4, 0xb8, 0x6a, 0x96, 0x95, 0x8c, 0x49, 0x11, 0x59, 0x69, 0x02, 0xc7, 0x4c, 0xb9, 0xc2, 0xc0, 0xf0, 0xbf, 0xa9, 0x99, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4879 = { .name = "ecdh_brainpoolp256t1_4879", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4879_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4879_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4879_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2604 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4880 for ECDH, tcId is 2605 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4880_peerpubkey[] = { 0x1d, 0x6d, 0x25, 0x45, 0x67, 0xaf, 0x2c, 0xa5, 0x6c, 0x60, 0x58, 0x37, 0x95, 0x79, 0xa5, 0xf1, 0x53, 0x44, 0x4f, 0xa6, 0x60, 0x06, 0x20, 0x34, 0xd2, 0xe2, 0x65, 0x72, 0x6f, 0x8b, 0x09, 0x58, 0x1a, 0xd7, 0x17, 0xe0, 0x8a, 0x1d, 0xd3, 0xf0, 0x59, 0x5e, 0x52, 0x93, 0x81, 0x9a, 0xe8, 0x06, 0xb3, 0xce, 0x35, 0x9d, 0xef, 0xf5, 0xf9, 0xcb, 0xb4, 0xb4, 0xfa, 0xd3, 0xff, 0x99, 0x85, 0x2e, }; static const unsigned char ecdh_brainpoolp256t1_4880_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4880_sharedsecret[] = { 0x46, 0xb8, 0x3c, 0xdb, 0x40, 0xb1, 0x79, 0x98, 0x99, 0x1f, 0xbb, 0xb2, 0x43, 0xed, 0x73, 0xfe, 0x7c, 0x18, 0xac, 0xe0, 0x9c, 0xed, 0xdf, 0x0f, 0x22, 0x20, 0x33, 0x2e, 0x55, 0x18, 0xae, 0x6e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4880 = { .name = "ecdh_brainpoolp256t1_4880", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4880_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4880_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4880_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2605 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4881 for ECDH, tcId is 2606 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4881_peerpubkey[] = { 0x19, 0x5b, 0x7e, 0xbd, 0x02, 0x6a, 0x25, 0x3f, 0x76, 0x64, 0xd0, 0xbd, 0x0d, 0x0b, 0xc6, 0xcd, 0x62, 0xac, 0x21, 0xda, 0xc7, 0x40, 0xe9, 0xe2, 0x7d, 0xd1, 0x17, 0xc9, 0x5a, 0x4f, 0xda, 0xf8, 0x93, 0x2f, 0xa1, 0x2c, 0xaf, 0x8a, 0x5c, 0x34, 0xaa, 0xe3, 0xcb, 0x8d, 0xff, 0xf9, 0xdc, 0x85, 0x11, 0xfb, 0x87, 0x81, 0xa5, 0xf3, 0x30, 0x10, 0x2c, 0x62, 0xf3, 0x5d, 0x0d, 0xbe, 0xdb, 0x2e, }; static const unsigned char ecdh_brainpoolp256t1_4881_privkey[] = { 0x91, 0x68, 0x11, 0x29, 0xca, 0xc7, 0x4a, 0xd9, 0xa4, 0x79, 0xe1, 0xb0, 0x15, 0xb4, 0x18, 0xe4, 0xd5, 0xa8, 0x01, 0xb1, 0x10, 0x77, 0xf2, 0x4d, 0x56, 0xcb, 0x48, 0x5e, 0x46, 0x84, 0xc3, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4881_sharedsecret[] = { 0x8f, 0x70, 0xeb, 0xd4, 0xc2, 0xee, 0x8f, 0x8b, 0xb7, 0xe4, 0x8c, 0xcb, 0x22, 0x50, 0x6f, 0x01, 0xf9, 0x5a, 0x30, 0x25, 0x12, 0xa3, 0x13, 0x03, 0xda, 0x00, 0x45, 0x2d, 0xa3, 0xf8, 0x3c, 0x39, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4881 = { .name = "ecdh_brainpoolp256t1_4881", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4881_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4881_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4881_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2606 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4882 for ECDH, tcId is 2607 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4882_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4882_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp256t1_4882_sharedsecret[] = { 0x17, 0x0e, 0x87, 0x29, 0x94, 0xf1, 0x0d, 0x63, 0x28, 0xdc, 0x27, 0x16, 0x3a, 0x73, 0xaf, 0x40, 0x0d, 0x6a, 0x20, 0x6c, 0xd1, 0x3c, 0xb3, 0xec, 0xd7, 0xc8, 0xfa, 0xc7, 0x09, 0xf2, 0x24, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4882 = { .name = "ecdh_brainpoolp256t1_4882", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4882_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4882_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4882_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2607 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4883 for ECDH, tcId is 2608 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4883_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4883_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256t1_4883_sharedsecret[] = { 0x73, 0xfa, 0x6a, 0xa7, 0x13, 0x44, 0x4c, 0xc6, 0x95, 0xcc, 0xe1, 0xa6, 0xea, 0x22, 0x99, 0xb5, 0xc0, 0x9b, 0xb0, 0xda, 0xd2, 0x19, 0x58, 0xe6, 0xc1, 0x45, 0x24, 0xd2, 0xbe, 0xca, 0x3d, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4883 = { .name = "ecdh_brainpoolp256t1_4883", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4883_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4883_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4883_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2608 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4884 for ECDH, tcId is 2609 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4884_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4884_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4884_sharedsecret[] = { 0x22, 0x70, 0xbc, 0xec, 0xf6, 0xf7, 0x1f, 0x10, 0x34, 0x5c, 0xe2, 0x4b, 0x1d, 0x4c, 0x87, 0x88, 0x64, 0xb8, 0x0c, 0xf7, 0x92, 0x28, 0xfb, 0x25, 0x31, 0xb1, 0x3d, 0x95, 0xbb, 0x0e, 0x98, 0xa3, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4884 = { .name = "ecdh_brainpoolp256t1_4884", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4884_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4884_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4884_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2609 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4885 for ECDH, tcId is 2610 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4885_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4885_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp256t1_4885_sharedsecret[] = { 0x23, 0xa1, 0x3d, 0x59, 0xf8, 0xad, 0xf5, 0xa8, 0x54, 0x1b, 0xd2, 0xe5, 0xa9, 0xd8, 0x2c, 0xac, 0x39, 0xee, 0x5a, 0xef, 0xb8, 0x9f, 0x10, 0x5b, 0xfc, 0x16, 0x2b, 0xaa, 0x62, 0x1c, 0x30, 0x8e, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4885 = { .name = "ecdh_brainpoolp256t1_4885", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4885_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4885_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4885_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2610 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4886 for ECDH, tcId is 2611 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4886_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4886_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4886_sharedsecret[] = { 0x80, 0xdf, 0x8c, 0xf4, 0xd7, 0xe7, 0xe5, 0x83, 0xb2, 0x66, 0xf1, 0x29, 0x54, 0x0a, 0xdb, 0x4d, 0x9e, 0x59, 0x3d, 0x09, 0x80, 0x45, 0xd5, 0x19, 0xc7, 0xb5, 0xbd, 0x71, 0x92, 0xd7, 0x4d, 0x1c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4886 = { .name = "ecdh_brainpoolp256t1_4886", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4886_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4886_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4886_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2611 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4887 for ECDH, tcId is 2612 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4887_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4887_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf6, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256t1_4887_sharedsecret[] = { 0x91, 0x00, 0x4e, 0x13, 0x17, 0x10, 0x62, 0xeb, 0x7d, 0x17, 0x03, 0xc4, 0xc4, 0x78, 0x00, 0x18, 0x3a, 0xea, 0xeb, 0xf5, 0x5b, 0xa8, 0x67, 0xc7, 0x36, 0xc4, 0x96, 0xc9, 0x0e, 0xab, 0x54, 0x28, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4887 = { .name = "ecdh_brainpoolp256t1_4887", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4887_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4887_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4887_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2612 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4888 for ECDH, tcId is 2613 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4888_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4888_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x0e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256t1_4888_sharedsecret[] = { 0x9a, 0x2b, 0xff, 0xea, 0x6f, 0x35, 0x61, 0x60, 0xa6, 0xfd, 0x1f, 0xab, 0xa7, 0xee, 0x23, 0x64, 0x6d, 0x43, 0x38, 0x8a, 0x45, 0xf1, 0xbc, 0x4c, 0x61, 0xe9, 0xb3, 0x7a, 0xbf, 0xd5, 0x2e, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4888 = { .name = "ecdh_brainpoolp256t1_4888", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4888_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4888_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4888_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2613 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4889 for ECDH, tcId is 2614 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4889_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4889_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x16, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256t1_4889_sharedsecret[] = { 0x69, 0x98, 0x9f, 0xcb, 0x37, 0x6f, 0xf1, 0xf3, 0x87, 0x6a, 0xeb, 0x6b, 0x40, 0xc5, 0xcc, 0x3b, 0x67, 0x05, 0xe3, 0x68, 0xcc, 0x4e, 0xb5, 0x49, 0x23, 0xf8, 0xbf, 0x54, 0x74, 0xe3, 0x04, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4889 = { .name = "ecdh_brainpoolp256t1_4889", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4889_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4889_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4889_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2614 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4890 for ECDH, tcId is 2615 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4890_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4890_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x81, 0x97, 0x48, 0x56, 0xa7, }; static const unsigned char ecdh_brainpoolp256t1_4890_sharedsecret[] = { 0x01, 0xd2, 0x41, 0x47, 0x90, 0x8f, 0x76, 0x8d, 0x7b, 0x10, 0xa7, 0xaa, 0xa6, 0xd1, 0xad, 0xb6, 0x53, 0x97, 0x16, 0xea, 0x6f, 0xce, 0x19, 0x1f, 0xcc, 0x8d, 0x4e, 0x63, 0xba, 0xeb, 0xb5, 0x81, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4890 = { .name = "ecdh_brainpoolp256t1_4890", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4890_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4890_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4890_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2615 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4891 for ECDH, tcId is 2616 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4891_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4891_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x55, 0xf5, }; static const unsigned char ecdh_brainpoolp256t1_4891_sharedsecret[] = { 0x48, 0x75, 0xed, 0x4b, 0x2b, 0xc7, 0xe7, 0xa0, 0xcb, 0x89, 0xd9, 0x3b, 0x35, 0x9f, 0xa7, 0x2d, 0xda, 0xf0, 0x37, 0x7d, 0xde, 0xdd, 0xd3, 0x3f, 0x62, 0xec, 0x24, 0x50, 0xcd, 0x80, 0xe7, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4891 = { .name = "ecdh_brainpoolp256t1_4891", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4891_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4891_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4891_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2616 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4892 for ECDH, tcId is 2617 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4892_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4892_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x75, }; static const unsigned char ecdh_brainpoolp256t1_4892_sharedsecret[] = { 0x31, 0x56, 0x37, 0xf9, 0x4d, 0x67, 0x76, 0xcc, 0x39, 0x28, 0xc1, 0xff, 0xbe, 0x3c, 0x70, 0x04, 0xaa, 0x70, 0xb7, 0x87, 0xcc, 0x06, 0x87, 0xfa, 0xee, 0x1d, 0xa5, 0xf9, 0x32, 0x4a, 0x36, 0xc4, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4892 = { .name = "ecdh_brainpoolp256t1_4892", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4892_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4892_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4892_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2617 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4893 for ECDH, tcId is 2618 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4893_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4893_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0x95, }; static const unsigned char ecdh_brainpoolp256t1_4893_sharedsecret[] = { 0x54, 0xd1, 0x00, 0x9a, 0xb7, 0xd3, 0xcb, 0x9d, 0x43, 0x14, 0xea, 0x75, 0x12, 0xf7, 0xbc, 0x4d, 0x91, 0x6e, 0xcd, 0x47, 0xbc, 0x9e, 0x49, 0x1a, 0xd4, 0xa6, 0xd6, 0x5a, 0x40, 0x67, 0x25, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4893 = { .name = "ecdh_brainpoolp256t1_4893", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4893_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4893_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4893_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2618 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4894 for ECDH, tcId is 2619 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4894_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4894_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa4, }; static const unsigned char ecdh_brainpoolp256t1_4894_sharedsecret[] = { 0x17, 0x0e, 0x87, 0x29, 0x94, 0xf1, 0x0d, 0x63, 0x28, 0xdc, 0x27, 0x16, 0x3a, 0x73, 0xaf, 0x40, 0x0d, 0x6a, 0x20, 0x6c, 0xd1, 0x3c, 0xb3, 0xec, 0xd7, 0xc8, 0xfa, 0xc7, 0x09, 0xf2, 0x24, 0x78, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4894 = { .name = "ecdh_brainpoolp256t1_4894", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4894_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4894_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4894_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2619 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4895 for ECDH, tcId is 2620 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4895_peerpubkey[] = { 0x20, 0x53, 0xbf, 0x93, 0x6c, 0x82, 0x59, 0x9d, 0x38, 0xae, 0xf8, 0xec, 0x65, 0x0f, 0x50, 0x2a, 0xd9, 0xdc, 0xe3, 0xbe, 0x81, 0x8d, 0x32, 0xde, 0x66, 0x00, 0x9a, 0x31, 0x37, 0x60, 0x4f, 0x5b, 0x02, 0x31, 0x7c, 0x89, 0x4b, 0x11, 0x38, 0xb8, 0x73, 0xb6, 0x12, 0x71, 0x4c, 0x95, 0x52, 0x70, 0x21, 0xb4, 0x24, 0x0e, 0xdd, 0x45, 0xad, 0x26, 0xee, 0x96, 0xd5, 0x07, 0x95, 0x4c, 0x32, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4895_privkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x71, 0x8c, 0x39, 0x7a, 0xa3, 0xb5, 0x61, 0xa6, 0xf7, 0x90, 0x1e, 0x0e, 0x82, 0x97, 0x48, 0x56, 0xa5, }; static const unsigned char ecdh_brainpoolp256t1_4895_sharedsecret[] = { 0x89, 0x29, 0x23, 0x52, 0x7e, 0xb5, 0x29, 0xde, 0x96, 0x3e, 0x90, 0x26, 0x41, 0xc0, 0x17, 0x01, 0xa6, 0x6c, 0xd9, 0x99, 0xd1, 0xb6, 0x65, 0x71, 0x7d, 0x7b, 0x11, 0xcb, 0xb5, 0xa9, 0x6f, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4895 = { .name = "ecdh_brainpoolp256t1_4895", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4895_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4895_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4895_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 2620 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4896 for ECDH, tcId is 2621 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4896_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4896_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4896 = { .name = "ecdh_brainpoolp256t1_4896", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4896_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4896_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2621 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4897 for ECDH, tcId is 2622 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4897_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4897_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4897 = { .name = "ecdh_brainpoolp256t1_4897", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4897_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4897_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2622 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4898 for ECDH, tcId is 2623 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4898_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256t1_4898_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4898 = { .name = "ecdh_brainpoolp256t1_4898", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4898_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4898_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2623 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4899 for ECDH, tcId is 2624 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4899_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256t1_4899_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4899 = { .name = "ecdh_brainpoolp256t1_4899", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4899_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4899_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2624 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4900 for ECDH, tcId is 2625 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4900_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4900_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4900 = { .name = "ecdh_brainpoolp256t1_4900", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4900_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4900_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2625 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4901 for ECDH, tcId is 2626 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4901_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4901_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4901 = { .name = "ecdh_brainpoolp256t1_4901", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4901_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4901_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2626 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4902 for ECDH, tcId is 2627 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4902_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256t1_4902_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4902 = { .name = "ecdh_brainpoolp256t1_4902", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4902_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4902_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2627 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4903 for ECDH, tcId is 2628 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4903_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256t1_4903_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4903 = { .name = "ecdh_brainpoolp256t1_4903", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4903_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4903_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2628 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4904 for ECDH, tcId is 2629 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4904_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4904_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4904 = { .name = "ecdh_brainpoolp256t1_4904", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4904_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4904_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2629 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4905 for ECDH, tcId is 2630 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4905_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4905_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4905 = { .name = "ecdh_brainpoolp256t1_4905", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4905_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4905_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2630 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4906 for ECDH, tcId is 2631 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4906_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256t1_4906_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4906 = { .name = "ecdh_brainpoolp256t1_4906", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4906_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4906_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2631 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4907 for ECDH, tcId is 2632 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4907_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256t1_4907_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4907 = { .name = "ecdh_brainpoolp256t1_4907", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4907_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4907_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2632 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4908 for ECDH, tcId is 2633 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4908_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4908_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4908 = { .name = "ecdh_brainpoolp256t1_4908", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4908_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4908_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2633 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4909 for ECDH, tcId is 2634 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4909_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp256t1_4909_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4909 = { .name = "ecdh_brainpoolp256t1_4909", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4909_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4909_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2634 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4910 for ECDH, tcId is 2635 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4910_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x76, }; static const unsigned char ecdh_brainpoolp256t1_4910_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4910 = { .name = "ecdh_brainpoolp256t1_4910", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4910_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4910_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2635 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4911 for ECDH, tcId is 2636 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4911_peerpubkey[] = { 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, 0xa9, 0xfb, 0x57, 0xdb, 0xa1, 0xee, 0xa9, 0xbc, 0x3e, 0x66, 0x0a, 0x90, 0x9d, 0x83, 0x8d, 0x72, 0x6e, 0x3b, 0xf6, 0x23, 0xd5, 0x26, 0x20, 0x28, 0x20, 0x13, 0x48, 0x1d, 0x1f, 0x6e, 0x53, 0x77, }; static const unsigned char ecdh_brainpoolp256t1_4911_privkey[] = { 0x0b, 0x56, 0xc9, 0xa5, 0xfb, 0x87, 0xb2, 0x09, 0x0d, 0xc6, 0x2f, 0x82, 0xc7, 0xdd, 0xde, 0x9d, 0x76, 0x2e, 0xeb, 0xf7, 0x72, 0x64, 0x0b, 0x23, 0x60, 0x41, 0xca, 0x71, 0xbf, 0xc7, 0xfb, 0x41, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4911 = { .name = "ecdh_brainpoolp256t1_4911", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4911_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4911_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2636 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4912 for ECDH, tcId is 2638 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4912_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbd, }; static const unsigned char ecdh_brainpoolp256t1_4912_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4912 = { .name = "ecdh_brainpoolp256t1_4912", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4912_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4912_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2638 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4913 for ECDH, tcId is 2639 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4913_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp256t1_4913_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4913 = { .name = "ecdh_brainpoolp256t1_4913", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4913_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4913_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2639 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4914 for ECDH, tcId is 2642 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4914_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4914_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4914_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4914 = { .name = "ecdh_brainpoolp256t1_4914", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4914_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4914_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4914_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 1, tcId is 2642 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4915 for ECDH, tcId is 2643 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4915_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4915_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4915_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4915 = { .name = "ecdh_brainpoolp256t1_4915", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4915_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4915_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4915_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "order = 17901173885223768702896718547912698493510841341785744190857633730178, tcId is 2643 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4916 for ECDH, tcId is 2644 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4916_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4916_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4916_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4916 = { .name = "ecdh_brainpoolp256t1_4916", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4916_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4916_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4916_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator = (0,0), tcId is 2644 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4917 for ECDH, tcId is 2645 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4917_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4917_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4917_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4917 = { .name = "ecdh_brainpoolp256t1_4917", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4917_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4917_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4917_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "generator not on curve, tcId is 2645 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4918 for ECDH, tcId is 2648 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4918_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4918_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4918_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4918 = { .name = "ecdh_brainpoolp256t1_4918", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4918_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4918_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4918_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = 2, tcId is 2648 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4919 for ECDH, tcId is 2650 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4919_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4919_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4919_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4919 = { .name = "ecdh_brainpoolp256t1_4919", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4919_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4919_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4919_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "cofactor = None, tcId is 2650 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4920 for ECDH, tcId is 2653 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4920_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_brainpoolp256t1_4920_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4920 = { .name = "ecdh_brainpoolp256t1_4920", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4920_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4920_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 2653 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4921 for ECDH, tcId is 2654 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4921_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_brainpoolp256t1_4921_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4921 = { .name = "ecdh_brainpoolp256t1_4921", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4921_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4921_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 2654 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4922 for ECDH, tcId is 2655 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4922_peerpubkey[] = { 0x45, 0x39, 0xff, 0x7f, 0xef, 0xf2, 0x38, 0xb3, 0xd6, 0x60, 0x0a, 0xfd, 0x89, 0xc1, 0xd9, 0xd1, 0x63, 0x2b, 0xf3, 0x69, 0xc4, 0x10, 0xf9, 0x30, 0x89, 0x46, 0xf1, 0xdd, 0x1a, 0xb6, 0xa0, 0x70, 0x5d, 0x57, 0x60, 0x8e, 0x0e, 0xf4, 0xb1, 0x96, 0xf8, 0x91, 0x0b, 0x96, 0xe9, 0x24, 0x88, 0xa0, 0xf4, 0x3c, 0x17, 0x48, 0x99, 0x62, 0xea, 0x46, 0xfa, 0x1a, 0x83, 0x15, 0xc8, 0xa9, 0x60, 0xbb, }; static const unsigned char ecdh_brainpoolp256t1_4922_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const unsigned char ecdh_brainpoolp256t1_4922_sharedsecret[] = { 0x2b, 0x90, 0x74, 0x84, 0xa8, 0xb7, 0x2f, 0x8d, 0xc8, 0x5c, 0x38, 0x82, 0x4d, 0xfe, 0xc0, 0x6c, 0xb1, 0xaf, 0xe7, 0xd6, 0xd7, 0x83, 0xdd, 0xb8, 0xef, 0x44, 0x1d, 0xc1, 0x1d, 0xdc, 0xe0, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4922 = { .name = "ecdh_brainpoolp256t1_4922", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4922_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4922_privkey, .privkeylen = 32, .sharedsecret = ecdh_brainpoolp256t1_4922_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "a = 0, tcId is 2655 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4923 for ECDH, tcId is 2657 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4923_peerpubkey[] = { 0x05, 0xd5, 0x43, 0xc6, 0x63, 0x37, 0x5d, 0x5b, 0x1d, 0xa5, 0x6e, 0x7b, 0xe9, 0x4e, 0x2b, 0x12, 0xf6, 0x4b, 0x09, 0xe7, 0x7e, 0x9e, 0xba, 0x76, 0x2e, 0x38, 0xc8, 0x01, 0x9f, 0x90, 0x65, 0x19, 0x2d, 0xd3, 0xb9, 0xef, 0x66, 0x7e, 0x91, 0xf4, 0x10, 0x0d, 0x19, 0x2d, 0x43, 0x09, 0x48, 0x07, 0xd1, 0x43, 0xfe, 0x34, 0xb2, 0xbd, 0x18, 0x4e, 0x81, 0x32, 0x69, 0x3f, 0x00, 0x6e, 0x5d, 0x8c, }; static const unsigned char ecdh_brainpoolp256t1_4923_privkey[] = { 0x44, 0x05, 0x83, 0xc0, 0x68, 0xa2, 0xbb, 0x22, 0xad, 0xcc, 0x68, 0x62, 0xa1, 0xc5, 0xca, 0x37, 0xab, 0xc4, 0x82, 0xc9, 0x19, 0xec, 0xb1, 0x5a, 0xba, 0x61, 0xcb, 0xbe, 0x16, 0xed, 0xf8, 0x45, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4923 = { .name = "ecdh_brainpoolp256t1_4923", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4923_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4923_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP256r1, tcId is 2657 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4924 for ECDH, tcId is 2659 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4924_peerpubkey[] = { 0xe9, 0xc9, 0xee, 0x8e, 0x9f, 0xf0, 0x23, 0x03, 0x35, 0x38, 0xe2, 0xb5, 0x7c, 0xa3, 0x9d, 0x89, 0xb8, 0x90, 0x07, 0x65, 0x5c, 0xc8, 0x79, 0xcc, 0xb8, 0xae, 0x0b, 0xdc, 0xa3, 0x49, 0xb0, 0x62, 0x22, 0xe2, 0x64, 0x8f, 0x4a, 0x4f, 0xd7, 0xe0, 0x11, 0xc0, 0x8d, 0xf2, 0xb5, 0x54, 0x50, 0xe3, 0x9a, 0x8d, 0x8b, 0xaf, 0xba, 0x00, 0x2f, 0x1e, 0x1d, 0xec, 0xaf, 0x67, 0xc1, 0xaf, 0x69, 0xa3, }; static const unsigned char ecdh_brainpoolp256t1_4924_privkey[] = { 0x3f, 0x88, 0x22, 0x34, 0x0f, 0xb5, 0x07, 0x7b, 0x26, 0x0a, 0xd2, 0x95, 0x64, 0xb8, 0xb7, 0xbd, 0xa2, 0x35, 0x35, 0x7a, 0x90, 0x68, 0x02, 0x68, 0xac, 0x67, 0x56, 0x12, 0x5a, 0x87, 0x28, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4924 = { .name = "ecdh_brainpoolp256t1_4924", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4924_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4924_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 2659 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4925 for ECDH, tcId is 2662 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4925_peerpubkey[] = { 0xf7, 0x9b, 0xff, 0x10, 0xed, 0xcf, 0x61, 0x98, 0x78, 0x09, 0x32, 0xec, 0x7c, 0x8e, 0x96, 0x49, 0x77, 0x57, 0xde, 0x35, 0x68, 0x89, 0xcb, 0xca, 0x20, 0xa0, 0xce, 0x1f, 0xdc, 0x56, 0xc2, 0xb3, 0x9f, 0xa4, 0xe5, 0x64, 0x88, 0x69, 0x1c, 0x4b, 0x9c, 0xbf, 0xc8, 0x50, 0x90, 0xa5, 0x7a, 0x6c, 0xa1, 0x4d, 0x48, 0xf0, 0x7e, 0x08, 0xac, 0xd5, 0x24, 0x77, 0xcf, 0xbd, 0x0a, 0x1b, 0x51, 0xcb, }; static const unsigned char ecdh_brainpoolp256t1_4925_privkey[] = { 0x3f, 0x88, 0x22, 0x34, 0x0f, 0xb5, 0x07, 0x7b, 0x26, 0x0a, 0xd2, 0x95, 0x64, 0xb8, 0xb7, 0xbd, 0xa2, 0x35, 0x35, 0x7a, 0x90, 0x68, 0x02, 0x68, 0xac, 0x67, 0x56, 0x12, 0x5a, 0x87, 0x28, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4925 = { .name = "ecdh_brainpoolp256t1_4925", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4925_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4925_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 2662 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4926 for ECDH, tcId is 2665 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4926_peerpubkey[] = { 0x22, 0xad, 0x0f, 0xf6, 0xc4, 0x7d, 0x9f, 0x5d, 0xde, 0x95, 0x5c, 0xb1, 0x40, 0xe7, 0xd9, 0x99, 0x70, 0x24, 0x45, 0xd6, 0x02, 0xc0, 0x01, 0x2d, 0x2f, 0x25, 0x26, 0x90, 0x76, 0x1f, 0xe9, 0x18, 0x9e, 0xac, 0x32, 0x13, 0xdd, 0xac, 0x2c, 0xfa, 0xb6, 0x4e, 0x33, 0x07, 0xb3, 0xe6, 0x13, 0xd4, 0x70, 0xaf, 0x93, 0x0f, 0x70, 0xd7, 0xd5, 0xbe, 0x12, 0xc5, 0xb8, 0x1a, 0x1e, 0xeb, 0xc4, 0xfa, }; static const unsigned char ecdh_brainpoolp256t1_4926_privkey[] = { 0x3f, 0x88, 0x22, 0x34, 0x0f, 0xb5, 0x07, 0x7b, 0x26, 0x0a, 0xd2, 0x95, 0x64, 0xb8, 0xb7, 0xbd, 0xa2, 0x35, 0x35, 0x7a, 0x90, 0x68, 0x02, 0x68, 0xac, 0x67, 0x56, 0x12, 0x5a, 0x87, 0x28, 0x31, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4926 = { .name = "ecdh_brainpoolp256t1_4926", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4926_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4926_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP256r1, tcId is 2665 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4927 for ECDH, tcId is 2673 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4927_peerpubkey[] = { 0x00, 0x09, 0x98, 0x9b, 0x93, 0x91, 0x33, 0x0a, 0xb7, 0xde, 0xd9, 0x82, 0x76, 0xf8, 0x10, 0xb9, 0xc4, 0xc0, 0xf0, 0x51, 0xb8, 0xfa, 0x00, 0x44, 0x93, 0xe8, 0x6a, 0x69, 0x43, 0x4e, 0xbf, 0xd4, }; static const unsigned char ecdh_brainpoolp256t1_4927_privkey[] = { 0x6b, 0xe6, 0xbb, 0xe1, 0xfe, 0x2a, 0xe4, 0xd5, 0x4d, 0x3c, 0x51, 0xa2, 0x55, 0xe4, 0x7d, 0x15, 0x56, 0x26, 0x49, 0xc7, 0xa3, 0xc8, 0xcc, 0xb8, 0x05, 0x8c, 0x00, 0x6b, 0x42, 0x63, 0x93, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4927 = { .name = "ecdh_brainpoolp256t1_4927", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4927_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4927_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2673 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4928 for ECDH, tcId is 2674 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4928_peerpubkey[] = { 0x90, 0xdf, 0x76, 0x51, 0x34, 0x71, 0xdc, 0xb6, 0x9e, 0x24, 0x32, 0x1e, 0xcb, 0x87, 0x02, 0x93, 0x09, 0xbc, 0xf2, 0x35, 0x65, 0x79, 0xf0, 0x97, 0xdb, 0x6d, 0xa5, 0xcb, 0x3f, 0xe5, 0x48, 0x24, }; static const unsigned char ecdh_brainpoolp256t1_4928_privkey[] = { 0x07, 0xca, 0xb8, 0xb6, 0x3d, 0x45, 0xe3, 0xa8, 0xd1, 0x6b, 0xae, 0x7c, 0x1f, 0xa1, 0xb7, 0x79, 0x06, 0x60, 0x00, 0x9f, 0x1b, 0xd3, 0x69, 0xec, 0xbf, 0x5b, 0xc0, 0xa2, 0x68, 0xb5, 0x50, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4928 = { .name = "ecdh_brainpoolp256t1_4928", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4928_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4928_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2674 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4929 for ECDH, tcId is 2675 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4929_peerpubkey[] = { 0x55, 0x95, 0x65, 0xd0, 0xd9, 0xed, 0x27, 0x06, 0xaf, 0x2e, 0xd4, 0x05, 0x5b, 0xf4, 0xb5, 0xd0, 0xd1, 0xa8, 0x40, 0x0e, 0xad, 0x1b, 0x94, 0xeb, 0xbf, 0x35, 0xee, 0x2e, 0xcf, 0xc4, 0x5b, 0x93, }; static const unsigned char ecdh_brainpoolp256t1_4929_privkey[] = { 0x77, 0x97, 0xef, 0x89, 0x7d, 0xeb, 0x6b, 0x8c, 0xf2, 0x63, 0xfb, 0x85, 0x87, 0x4c, 0xc1, 0x4a, 0xcf, 0xae, 0x5d, 0x99, 0x94, 0x4b, 0x70, 0x06, 0xbf, 0xf4, 0x34, 0x91, 0x2b, 0x9b, 0xcc, 0xad, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4929 = { .name = "ecdh_brainpoolp256t1_4929", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4929_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4929_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2675 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4930 for ECDH, tcId is 2676 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4930_peerpubkey[] = { 0x55, 0x95, 0x65, 0xd0, 0xd9, 0xed, 0x27, 0x06, 0xaf, 0x2e, 0xd4, 0x05, 0x5b, 0xf4, 0xb5, 0xd0, 0xd1, 0xa8, 0x40, 0x0e, 0xad, 0x1b, 0x94, 0xeb, 0xbf, 0x35, 0xee, 0x2e, 0xcf, 0xc4, 0x5b, 0x93, }; static const unsigned char ecdh_brainpoolp256t1_4930_privkey[] = { 0x77, 0x97, 0xef, 0x89, 0x7d, 0xeb, 0x6b, 0x8c, 0xf2, 0x63, 0xfb, 0x85, 0x87, 0x4c, 0xc1, 0x4a, 0xcf, 0xae, 0x5d, 0x99, 0x94, 0x4b, 0x70, 0x06, 0xbf, 0xf4, 0x34, 0x91, 0x2b, 0x9b, 0xcc, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4930 = { .name = "ecdh_brainpoolp256t1_4930", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4930_peerpubkey, .peerpubkeylen = 32, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4930_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2676 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4931 for ECDH, tcId is 2677 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) static const unsigned char ecdh_brainpoolp256t1_4931_peerpubkey[] = { 0x90, 0xdf, 0x76, 0x51, 0x34, 0x71, 0xdc, 0xb6, 0x9e, 0x24, 0x32, 0x1e, 0xcb, 0x87, 0x02, 0x93, 0x09, 0xbc, 0xf2, 0x35, 0x65, 0x79, 0xf0, 0x97, 0xdb, 0x6d, 0xa5, 0xcb, 0x3f, 0xe5, 0x48, 0x24, }; static const unsigned char ecdh_brainpoolp256t1_4931_privkey[] = { 0x07, 0xca, 0xb8, 0xb6, 0x3d, 0x45, 0xe3, 0xa8, 0xd1, 0x6b, 0xae, 0x7c, 0x1f, 0xa1, 0xb7, 0x79, 0x06, 0x60, 0x00, 0x9f, 0x1b, 0xd3, 0x69, 0xec, 0xbf, 0x5b, 0xc0, 0xa2, 0x68, 0xb5, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp256t1_4931 = { .name = "ecdh_brainpoolp256t1_4931", .ecdh_alg = ECCCDH, .curve = &brainpoolp256t1_str_params, .peerpubkey = ecdh_brainpoolp256t1_4931_peerpubkey, .peerpubkeylen = 32, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp256t1_4931_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2677 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) */ /* Test 4932 for ECDH, tcId is 2678 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4932_peerpubkey[] = { 0x3e, 0xbc, 0xe5, 0xcd, 0xff, 0x67, 0xf6, 0x09, 0x19, 0xdc, 0xfd, 0x90, 0x90, 0xfd, 0x97, 0x73, 0xfc, 0x16, 0x66, 0xae, 0x48, 0x24, 0x2b, 0x45, 0xb0, 0x57, 0x17, 0xf8, 0xec, 0xfa, 0x19, 0x60, 0x52, 0xaa, 0xbe, 0xc5, 0xef, 0xcf, 0xd7, 0xd7, 0x0a, 0xcf, 0x6c, 0x4c, 0xee, 0x85, 0xa7, 0xcc, 0x62, 0x03, 0x3c, 0x9e, 0xb0, 0x71, 0x43, 0xa7, 0x3f, 0x6b, 0x6c, 0xec, 0xa7, 0xe3, 0xae, 0x38, 0x42, 0x5b, 0x20, 0xbf, 0x03, 0xec, 0xdd, 0x66, 0xe1, 0xf1, 0x54, 0x49, 0x46, 0x89, 0xec, 0x1e, }; static const unsigned char ecdh_brainpoolp320t1_4932_privkey[] = { 0xd2, 0xde, 0x78, 0x39, 0x1d, 0xe4, 0xe2, 0x7f, 0x6a, 0x7d, 0x8a, 0x21, 0xd9, 0x39, 0x3a, 0x47, 0x0b, 0x52, 0x11, 0x0e, 0x8e, 0x9d, 0x5d, 0xdd, 0xe6, 0xda, 0xba, 0xc2, 0x66, 0x36, 0x08, 0xe1, 0xb1, 0x50, 0xae, 0x67, 0xcb, 0xb6, 0xb7, 0x19, }; static const unsigned char ecdh_brainpoolp320t1_4932_sharedsecret[] = { 0x2d, 0x7f, 0x82, 0xb3, 0x02, 0x6c, 0x3b, 0x66, 0xe8, 0x73, 0x77, 0x1a, 0x6d, 0xc2, 0x1b, 0x9c, 0xba, 0x21, 0xb1, 0xee, 0x9c, 0x4f, 0x67, 0xe1, 0xb0, 0xd9, 0xdd, 0xf7, 0xe4, 0x65, 0xef, 0x1d, 0xb3, 0x99, 0x14, 0x88, 0x1e, 0x88, 0x31, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4932 = { .name = "ecdh_brainpoolp320t1_4932", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4932_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4932_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4932_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "normal case, tcId is 2678 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4933 for ECDH, tcId is 2679 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4933_peerpubkey[] = { 0x3e, 0xbc, 0xe5, 0xcd, 0xff, 0x67, 0xf6, 0x09, 0x19, 0xdc, 0xfd, 0x90, 0x90, 0xfd, 0x97, 0x73, 0xfc, 0x16, 0x66, 0xae, 0x48, 0x24, 0x2b, 0x45, 0xb0, 0x57, 0x17, 0xf8, 0xec, 0xfa, 0x19, 0x60, 0x52, 0xaa, 0xbe, 0xc5, 0xef, 0xcf, 0xd7, 0xd7, }; static const unsigned char ecdh_brainpoolp320t1_4933_privkey[] = { 0xd2, 0xde, 0x78, 0x39, 0x1d, 0xe4, 0xe2, 0x7f, 0x6a, 0x7d, 0x8a, 0x21, 0xd9, 0x39, 0x3a, 0x47, 0x0b, 0x52, 0x11, 0x0e, 0x8e, 0x9d, 0x5d, 0xdd, 0xe6, 0xda, 0xba, 0xc2, 0x66, 0x36, 0x08, 0xe1, 0xb1, 0x50, 0xae, 0x67, 0xcb, 0xb6, 0xb7, 0x19, }; static const unsigned char ecdh_brainpoolp320t1_4933_sharedsecret[] = { 0x2d, 0x7f, 0x82, 0xb3, 0x02, 0x6c, 0x3b, 0x66, 0xe8, 0x73, 0x77, 0x1a, 0x6d, 0xc2, 0x1b, 0x9c, 0xba, 0x21, 0xb1, 0xee, 0x9c, 0x4f, 0x67, 0xe1, 0xb0, 0xd9, 0xdd, 0xf7, 0xe4, 0x65, 0xef, 0x1d, 0xb3, 0x99, 0x14, 0x88, 0x1e, 0x88, 0x31, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4933 = { .name = "ecdh_brainpoolp320t1_4933", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4933_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4933_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4933_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "compressed public key, tcId is 2679 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4934 for ECDH, tcId is 2680 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4934_peerpubkey[] = { 0x69, 0x75, 0xae, 0x12, 0xf6, 0xab, 0x7c, 0xde, 0xcf, 0x38, 0xdb, 0xfc, 0x73, 0xc3, 0x03, 0xb7, 0xe7, 0x61, 0xbd, 0xdb, 0xa9, 0x42, 0x7a, 0x09, 0x62, 0xc5, 0x2e, 0x8b, 0xc8, 0xfd, 0x4d, 0x50, 0xe2, 0xc6, 0x16, 0xe2, 0x72, 0xd0, 0x6f, 0xd2, 0xa3, 0x0b, 0x18, 0x3e, 0xd9, 0x2b, 0xc3, 0x97, 0xe4, 0x61, 0x31, 0x1a, 0xe7, 0x60, 0x6d, 0xa7, 0xf5, 0x1e, 0x03, 0xb4, 0x35, 0x00, 0xd1, 0x98, 0x44, 0xf7, 0x7f, 0x2f, 0xe0, 0x6b, 0x59, 0x91, 0xb7, 0x9a, 0x6a, 0xe7, 0x4e, 0x45, 0xd8, 0xf4, }; static const unsigned char ecdh_brainpoolp320t1_4934_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4934_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4934 = { .name = "ecdh_brainpoolp320t1_4934", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4934_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4934_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4934_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2680 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4935 for ECDH, tcId is 2681 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4935_peerpubkey[] = { 0x5e, 0xd6, 0x0d, 0x7e, 0x4b, 0x27, 0x83, 0x63, 0x54, 0x38, 0xab, 0x94, 0xa2, 0x6c, 0xcf, 0x3e, 0xea, 0xb6, 0x21, 0xde, 0xca, 0xb7, 0x00, 0x02, 0x1e, 0xbb, 0xd5, 0xda, 0x9c, 0x98, 0x0d, 0x94, 0x67, 0x5f, 0xe8, 0x97, 0x13, 0xce, 0x7a, 0xaf, 0x4a, 0x24, 0xd4, 0x59, 0x7c, 0xca, 0x04, 0x9b, 0xab, 0xc6, 0xd7, 0x31, 0xbd, 0xc4, 0xfc, 0x9b, 0x32, 0x29, 0x91, 0x3a, 0x56, 0xf9, 0xb7, 0x0d, 0xa2, 0x36, 0x1d, 0x68, 0x1c, 0x4d, 0xa9, 0x2c, 0x26, 0xa4, 0x5f, 0x74, 0x1c, 0xdc, 0x24, 0x67, }; static const unsigned char ecdh_brainpoolp320t1_4935_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4935_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4935 = { .name = "ecdh_brainpoolp320t1_4935", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4935_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4935_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4935_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2681 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4936 for ECDH, tcId is 2682 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4936_peerpubkey[] = { 0x84, 0x55, 0xea, 0x50, 0xe3, 0x17, 0xf1, 0x00, 0xab, 0xf6, 0x86, 0x26, 0x1d, 0x54, 0xb7, 0x45, 0x71, 0xbb, 0xaa, 0x29, 0x4a, 0x0b, 0xe3, 0x5f, 0x01, 0x12, 0x9b, 0xfe, 0x83, 0x84, 0xf6, 0xbe, 0x19, 0x44, 0x6e, 0x56, 0x4e, 0xc7, 0x5d, 0x26, 0x71, 0x73, 0xe8, 0x6e, 0x51, 0x6a, 0xb3, 0x7f, 0x4a, 0xa7, 0x47, 0x8b, 0xb2, 0xb8, 0xa4, 0x4b, 0x6b, 0x89, 0xfb, 0xa4, 0x1a, 0x56, 0x17, 0x9c, 0x82, 0xcb, 0xe0, 0xc2, 0x8d, 0x3d, 0xf0, 0x46, 0x4c, 0xa1, 0xe0, 0x21, 0xbf, 0x1e, 0xec, 0xf7, }; static const unsigned char ecdh_brainpoolp320t1_4936_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4936_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4936 = { .name = "ecdh_brainpoolp320t1_4936", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4936_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4936_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4936_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2682 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4937 for ECDH, tcId is 2683 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4937_peerpubkey[] = { 0x87, 0xda, 0x65, 0xa0, 0x08, 0xa0, 0x62, 0x88, 0x1c, 0x8e, 0x36, 0x79, 0xc8, 0xa2, 0x46, 0xef, 0x33, 0xec, 0x9b, 0x45, 0x76, 0x71, 0x53, 0xb8, 0xaa, 0xda, 0xf0, 0x45, 0x16, 0x10, 0x88, 0xa1, 0x1e, 0xfc, 0xd9, 0xda, 0x42, 0xff, 0x99, 0xc6, 0x13, 0x2f, 0x8e, 0x6c, 0xe6, 0x92, 0xef, 0xb7, 0xad, 0x39, 0xbe, 0xbf, 0xcf, 0xa9, 0x65, 0xe7, 0x66, 0x8b, 0x82, 0x22, 0x51, 0xb0, 0x2c, 0x31, 0x13, 0xd9, 0xdc, 0x48, 0x0c, 0x42, 0xed, 0x09, 0x10, 0x24, 0x6a, 0x86, 0x26, 0x8f, 0x4d, 0x2b, }; static const unsigned char ecdh_brainpoolp320t1_4937_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4937_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4937 = { .name = "ecdh_brainpoolp320t1_4937", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4937_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4937_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4937_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2683 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4938 for ECDH, tcId is 2684 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4938_peerpubkey[] = { 0xaf, 0xa8, 0x4b, 0xb0, 0x68, 0x16, 0x94, 0x6b, 0x78, 0x09, 0xbf, 0x03, 0x43, 0x28, 0x72, 0x17, 0x0a, 0x38, 0xf5, 0x08, 0x07, 0xa3, 0x8f, 0x46, 0x10, 0x38, 0x85, 0x68, 0x66, 0x16, 0x52, 0xd2, 0xbf, 0xad, 0x50, 0x0f, 0xd7, 0x4d, 0x32, 0x4c, 0x7e, 0x1a, 0x4c, 0xff, 0x63, 0x14, 0x4f, 0xb9, 0xb7, 0xc9, 0x04, 0x10, 0x47, 0x6c, 0xe4, 0xff, 0x0d, 0x00, 0x84, 0x96, 0x73, 0xfd, 0x7a, 0x83, 0x0f, 0xc0, 0xf4, 0x42, 0xad, 0x40, 0xda, 0xda, 0x46, 0x94, 0xf1, 0xde, 0x1c, 0xaf, 0x67, 0xff, }; static const unsigned char ecdh_brainpoolp320t1_4938_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4938_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4938 = { .name = "ecdh_brainpoolp320t1_4938", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4938_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4938_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4938_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2684 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4939 for ECDH, tcId is 2685 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4939_peerpubkey[] = { 0x42, 0x36, 0x8c, 0x6d, 0x3c, 0xcc, 0x9e, 0x6b, 0x4c, 0x55, 0xa2, 0xcf, 0x58, 0x2d, 0xcf, 0x6c, 0x33, 0x2c, 0x3e, 0xc5, 0xc1, 0x29, 0x83, 0xe4, 0x62, 0x6a, 0x90, 0x4f, 0x22, 0x87, 0xfd, 0xe5, 0xa5, 0xc4, 0x41, 0xec, 0xba, 0xfb, 0xc8, 0x4e, 0x49, 0x2e, 0x36, 0x70, 0x17, 0x30, 0x68, 0xfa, 0xa3, 0x44, 0xff, 0x7e, 0x7a, 0x45, 0x4d, 0x8d, 0xbc, 0xdc, 0x12, 0x64, 0x22, 0x74, 0x53, 0x40, 0xd1, 0xb4, 0x14, 0xd5, 0x2e, 0xc5, 0x04, 0x81, 0xed, 0x15, 0x0c, 0x2c, 0xff, 0x56, 0x89, 0x12, }; static const unsigned char ecdh_brainpoolp320t1_4939_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4939_sharedsecret[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4939 = { .name = "ecdh_brainpoolp320t1_4939", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4939_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4939_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4939_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2685 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4940 for ECDH, tcId is 2686 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4940_peerpubkey[] = { 0x04, 0x75, 0x29, 0xdf, 0x82, 0x7d, 0x47, 0x4f, 0xae, 0x66, 0x11, 0x60, 0x22, 0xfd, 0xab, 0x49, 0x0e, 0xe3, 0xaf, 0x13, 0x23, 0x35, 0x8d, 0x2e, 0x06, 0x18, 0x83, 0x34, 0xa9, 0xd7, 0x10, 0xef, 0x01, 0x19, 0xe3, 0xb6, 0xb2, 0x78, 0x6c, 0x7a, 0x76, 0xeb, 0xaf, 0xa5, 0x5f, 0xf2, 0xe5, 0x26, 0x83, 0xec, 0x5a, 0xc9, 0xfd, 0x59, 0x01, 0xe7, 0xa6, 0x89, 0x43, 0xa0, 0x2c, 0x11, 0xc5, 0x23, 0x1c, 0xe9, 0xee, 0x12, 0x82, 0xc1, 0x76, 0x75, 0x2d, 0x7e, 0x5a, 0x19, 0x9f, 0x19, 0xc6, 0x86, }; static const unsigned char ecdh_brainpoolp320t1_4940_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4940_sharedsecret[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4940 = { .name = "ecdh_brainpoolp320t1_4940", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4940_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4940_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4940_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2686 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4941 for ECDH, tcId is 2687 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4941_peerpubkey[] = { 0xbc, 0x1c, 0xdd, 0x16, 0x02, 0x8b, 0x9c, 0x3b, 0xa4, 0x9a, 0x85, 0x9a, 0x7a, 0x2b, 0xb1, 0x10, 0x98, 0x9e, 0x4e, 0xbb, 0xd9, 0xc6, 0x24, 0x77, 0xb8, 0x8b, 0x77, 0x4b, 0x2d, 0xa3, 0x54, 0xd6, 0xce, 0x6c, 0x51, 0x62, 0x76, 0x2d, 0x01, 0x16, 0xc0, 0xd1, 0xa9, 0x25, 0x10, 0x0f, 0x49, 0x59, 0xc6, 0xb6, 0x4b, 0xb3, 0x52, 0x29, 0x3a, 0xd7, 0x28, 0x61, 0xea, 0x9f, 0xa7, 0xef, 0xd5, 0x05, 0x00, 0x11, 0x5c, 0xd4, 0x32, 0xad, 0x16, 0xef, 0x3f, 0x08, 0xca, 0x2c, 0x1b, 0xf2, 0x42, 0xdd, }; static const unsigned char ecdh_brainpoolp320t1_4941_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4941_sharedsecret[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4941 = { .name = "ecdh_brainpoolp320t1_4941", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4941_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4941_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4941_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2687 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4942 for ECDH, tcId is 2688 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4942_peerpubkey[] = { 0x8d, 0x90, 0xe9, 0x13, 0x0b, 0x67, 0x4b, 0x3b, 0x52, 0x50, 0xe8, 0x9f, 0xed, 0x97, 0xf6, 0x4f, 0x46, 0x34, 0xd2, 0x6f, 0x3d, 0x60, 0x6f, 0x9d, 0xe2, 0x79, 0xd0, 0x59, 0x14, 0x3d, 0x87, 0x50, 0xb2, 0x1d, 0xc0, 0xcb, 0xcf, 0xfa, 0x6a, 0x98, 0x97, 0xc8, 0x09, 0xe9, 0x17, 0xce, 0x01, 0x3e, 0xb0, 0xda, 0x3a, 0x42, 0xd6, 0x0c, 0xda, 0x90, 0x30, 0x55, 0x6b, 0x11, 0xa2, 0xd5, 0xb7, 0x06, 0x89, 0xa0, 0xd1, 0xc5, 0x85, 0x50, 0x55, 0x73, 0x31, 0x7a, 0xac, 0x20, 0x1e, 0x28, 0x38, 0x95, }; static const unsigned char ecdh_brainpoolp320t1_4942_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4942_sharedsecret[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4942 = { .name = "ecdh_brainpoolp320t1_4942", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4942_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4942_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4942_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2688 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4943 for ECDH, tcId is 2689 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4943_peerpubkey[] = { 0xb7, 0x5d, 0x0c, 0x35, 0x2b, 0x5d, 0xf8, 0x53, 0x6c, 0x22, 0xf6, 0x02, 0x86, 0x59, 0x5e, 0xdb, 0xe5, 0x2b, 0x7b, 0xf1, 0x09, 0xf1, 0xe7, 0x2b, 0x01, 0x90, 0x42, 0x58, 0xc0, 0x17, 0x35, 0x92, 0x84, 0x23, 0x8b, 0x65, 0xa0, 0x53, 0x52, 0xd7, 0x43, 0xa3, 0x79, 0x3e, 0xff, 0x36, 0x28, 0x83, 0x2b, 0x97, 0x6f, 0xec, 0x09, 0xcb, 0x4a, 0x2b, 0x59, 0xeb, 0x59, 0x23, 0xbe, 0x4c, 0xd4, 0xe0, 0xa6, 0xf5, 0x2f, 0x62, 0xfa, 0xd9, 0x54, 0x3f, 0x10, 0x61, 0x6a, 0xcc, 0x31, 0xf3, 0x87, 0x2e, }; static const unsigned char ecdh_brainpoolp320t1_4943_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4943_sharedsecret[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4943 = { .name = "ecdh_brainpoolp320t1_4943", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4943_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4943_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4943_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2689 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4944 for ECDH, tcId is 2690 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4944_peerpubkey[] = { 0x60, 0x7f, 0xc2, 0xfb, 0x45, 0xfb, 0xe9, 0x82, 0x61, 0x2b, 0xd1, 0x36, 0xea, 0x06, 0xdd, 0xf8, 0xad, 0x26, 0x5e, 0xda, 0xa8, 0x84, 0xca, 0x20, 0xbf, 0xb2, 0x88, 0xfd, 0xaf, 0x61, 0xc1, 0xa0, 0x89, 0x6f, 0xa3, 0x94, 0x71, 0x59, 0x32, 0x1a, 0x63, 0xf6, 0x4e, 0xed, 0x7d, 0x48, 0xed, 0x52, 0x9a, 0xdc, 0x61, 0xc7, 0x82, 0xeb, 0x6b, 0xba, 0xcb, 0xab, 0x0a, 0x2e, 0xdc, 0xbe, 0xdd, 0x18, 0x3b, 0xa7, 0xf8, 0xe1, 0x65, 0x37, 0x91, 0xd4, 0x38, 0xd9, 0xcf, 0x8a, 0x88, 0xcc, 0xda, 0xa2, }; static const unsigned char ecdh_brainpoolp320t1_4944_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4944_sharedsecret[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4944 = { .name = "ecdh_brainpoolp320t1_4944", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4944_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4944_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4944_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2690 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4945 for ECDH, tcId is 2691 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4945_peerpubkey[] = { 0x68, 0xb7, 0xb4, 0x84, 0x2c, 0x85, 0x65, 0x2f, 0x38, 0x78, 0xc7, 0x33, 0x3e, 0xe9, 0xb3, 0x72, 0x01, 0x0e, 0xbd, 0xe9, 0xa3, 0x18, 0xa9, 0xe2, 0x8c, 0x9c, 0xed, 0xca, 0x3d, 0x1b, 0xc9, 0xd0, 0xb9, 0x92, 0x71, 0xdb, 0xdb, 0x40, 0x17, 0x4e, 0x3b, 0xb8, 0x5d, 0x9b, 0x32, 0x5e, 0xb3, 0xfc, 0x27, 0x13, 0x71, 0x8b, 0x3f, 0x64, 0xb3, 0xac, 0x98, 0xb2, 0x95, 0x7e, 0x27, 0xbd, 0xb3, 0x98, 0x99, 0x5f, 0x5d, 0xff, 0x1e, 0xf5, 0xc0, 0x04, 0x14, 0x07, 0xdb, 0xe7, 0x80, 0xe8, 0x34, 0x1b, }; static const unsigned char ecdh_brainpoolp320t1_4945_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4945_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4945 = { .name = "ecdh_brainpoolp320t1_4945", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4945_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4945_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4945_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2691 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4946 for ECDH, tcId is 2692 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4946_peerpubkey[] = { 0xb3, 0x65, 0x8b, 0x49, 0x38, 0x62, 0xd5, 0x9a, 0x24, 0xb0, 0x34, 0x41, 0x43, 0x31, 0x53, 0x48, 0xd8, 0xcd, 0x9f, 0x4e, 0xd0, 0xea, 0x44, 0x39, 0xa6, 0x6c, 0x22, 0xbb, 0x0a, 0xd8, 0xcf, 0x7e, 0x9b, 0x7d, 0xec, 0x83, 0x4f, 0x3a, 0x0f, 0x9a, 0x92, 0xd1, 0x2a, 0xd4, 0xe9, 0xe6, 0xac, 0x59, 0x6a, 0x71, 0xa3, 0x76, 0xbd, 0xdc, 0x52, 0x60, 0x1e, 0xd5, 0x3b, 0x5b, 0x62, 0xfa, 0xab, 0x2b, 0xc3, 0x9d, 0xb8, 0x72, 0xa9, 0x83, 0xb1, 0x3e, 0x93, 0xd1, 0xc1, 0x09, 0x7b, 0x57, 0x3b, 0x05, }; static const unsigned char ecdh_brainpoolp320t1_4946_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4946_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4946 = { .name = "ecdh_brainpoolp320t1_4946", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4946_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4946_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4946_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2692 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4947 for ECDH, tcId is 2693 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4947_peerpubkey[] = { 0x37, 0xd5, 0x3a, 0xb4, 0x3b, 0x7a, 0x73, 0x18, 0xb5, 0xd5, 0x6e, 0x2e, 0x17, 0x4d, 0x51, 0x84, 0xf7, 0x0d, 0x7a, 0xeb, 0x7c, 0x56, 0x80, 0x05, 0x30, 0x16, 0x5d, 0xa9, 0x9f, 0xc9, 0x81, 0xbf, 0x59, 0xa8, 0xb3, 0x00, 0xe2, 0x1e, 0xec, 0x55, 0x58, 0x1a, 0x2a, 0x66, 0xc2, 0x70, 0x48, 0x19, 0x06, 0xd7, 0x13, 0x4f, 0x4e, 0x02, 0xbe, 0x48, 0xdb, 0x2b, 0x59, 0xda, 0xfe, 0x0f, 0x23, 0x15, 0x5f, 0x2a, 0x6c, 0xca, 0x69, 0xdb, 0x34, 0x91, 0x07, 0x4e, 0x94, 0x34, 0x68, 0x6b, 0x55, 0x15, }; static const unsigned char ecdh_brainpoolp320t1_4947_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4947_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4947 = { .name = "ecdh_brainpoolp320t1_4947", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4947_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4947_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4947_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2693 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4948 for ECDH, tcId is 2694 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4948_peerpubkey[] = { 0x8b, 0xef, 0x4a, 0xfc, 0x02, 0xbc, 0xf8, 0x89, 0x84, 0xe4, 0x3f, 0xad, 0xc7, 0x91, 0x29, 0x00, 0xc7, 0x69, 0xd8, 0xf5, 0xdc, 0x00, 0x73, 0x36, 0x56, 0x48, 0x7f, 0x04, 0xb7, 0x77, 0xb8, 0x03, 0xc2, 0xfd, 0xf1, 0xa9, 0x7f, 0x5a, 0xf9, 0x11, 0xc7, 0xb8, 0x1a, 0x31, 0xdb, 0x0f, 0x94, 0x8b, 0x3d, 0x4d, 0x75, 0xa0, 0x6e, 0xb5, 0x20, 0x3f, 0x1a, 0x44, 0x95, 0x46, 0xe3, 0xf8, 0x56, 0x9f, 0x0b, 0x9b, 0xe7, 0xc7, 0xb8, 0xff, 0x0f, 0x00, 0xcf, 0x98, 0x9a, 0xef, 0x29, 0x9b, 0xf8, 0x3d, }; static const unsigned char ecdh_brainpoolp320t1_4948_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4948_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4948 = { .name = "ecdh_brainpoolp320t1_4948", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4948_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4948_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4948_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2694 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4949 for ECDH, tcId is 2695 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4949_peerpubkey[] = { 0x8c, 0xf8, 0x64, 0x13, 0xec, 0x2a, 0xe3, 0x57, 0x9d, 0x69, 0xe5, 0xfe, 0xf5, 0x20, 0x65, 0xc0, 0x09, 0xa0, 0x80, 0xb3, 0x57, 0x0b, 0x1b, 0x3e, 0xfc, 0x40, 0xce, 0x9d, 0xe0, 0x13, 0x80, 0x25, 0xc1, 0x7b, 0x86, 0x82, 0xd2, 0x60, 0x04, 0x39, 0xb6, 0x1f, 0x31, 0x82, 0xd0, 0x76, 0xf3, 0xfa, 0x95, 0xda, 0x23, 0x40, 0x7d, 0xd6, 0x67, 0xfc, 0x9c, 0x7b, 0xe3, 0xeb, 0x1f, 0x55, 0x74, 0xfb, 0xc3, 0xf0, 0xab, 0x5d, 0x60, 0xd0, 0xca, 0xdf, 0x64, 0xb5, 0xc8, 0x1e, 0x91, 0x1e, 0x28, 0x68, }; static const unsigned char ecdh_brainpoolp320t1_4949_privkey[] = { 0x5a, 0x21, 0xb0, 0xe1, 0x6c, 0x6e, 0xb8, 0x88, 0x38, 0x1f, 0x19, 0x00, 0x9d, 0xae, 0x7a, 0x91, 0x27, 0x4e, 0x8f, 0x18, 0xe1, 0x66, 0x74, 0xee, 0x6c, 0x2b, 0xf7, 0x82, 0xe2, 0x4c, 0x2f, 0x0c, 0xf9, 0x94, 0xda, 0xa6, 0xfe, 0x60, 0xed, 0x10, }; static const unsigned char ecdh_brainpoolp320t1_4949_sharedsecret[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4949 = { .name = "ecdh_brainpoolp320t1_4949", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4949_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4949_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4949_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for shared secret, tcId is 2695 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4950 for ECDH, tcId is 2696 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4950_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x18, 0xc1, 0xb0, 0x41, 0x01, 0xec, 0x5f, 0x9b, 0x33, 0xeb, 0x6e, 0xef, 0xfe, 0xc1, 0xb7, 0x46, 0x1b, 0x69, 0x0d, 0xd8, 0x41, 0x6c, 0xa3, 0x4c, 0x88, 0xbe, 0xe6, 0x4a, 0x1a, 0xfd, 0x24, 0x67, 0x48, 0xfe, 0xa0, 0xf3, 0xe6, 0x99, 0x5d, }; static const unsigned char ecdh_brainpoolp320t1_4950_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4950_sharedsecret[] = { 0x58, 0xf6, 0x28, 0x1e, 0xf8, 0x63, 0xcf, 0xcd, 0x12, 0x1f, 0x00, 0xe0, 0xd8, 0x9b, 0xb6, 0x25, 0xd9, 0xc3, 0xed, 0xdc, 0x97, 0xfb, 0xef, 0x3d, 0xa9, 0x89, 0x81, 0x5b, 0x7f, 0xae, 0xfc, 0xf8, 0x4d, 0x52, 0x77, 0x2d, 0xd2, 0xbf, 0x9b, 0x1f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4950 = { .name = "ecdh_brainpoolp320t1_4950", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4950_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4950_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4950_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2696 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4951 for ECDH, tcId is 2697 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4951_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0xcc, 0xd5, 0x20, 0xe9, 0x69, 0xc2, 0x02, 0x5c, 0x6a, 0xc0, 0xc6, 0xf1, 0x6a, 0x4e, 0xd5, 0x5f, 0xa7, 0x9f, 0x44, 0x40, 0xa9, 0xcb, 0xed, 0x5d, 0xeb, 0x91, 0xb0, 0xb5, 0xf5, 0x7b, 0xde, 0x62, 0xf0, 0x5d, 0x86, 0x7d, 0x1a, 0xaf, 0x40, }; static const unsigned char ecdh_brainpoolp320t1_4951_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4951_sharedsecret[] = { 0x2b, 0xe2, 0x07, 0x8b, 0x9f, 0x8c, 0x41, 0x2b, 0xf5, 0x31, 0xca, 0x4e, 0x1e, 0x1f, 0xae, 0xfc, 0x51, 0xda, 0xd9, 0x01, 0x2f, 0x05, 0x76, 0x58, 0xec, 0x66, 0x4e, 0xba, 0x02, 0x60, 0xe3, 0x05, 0xe6, 0x87, 0x75, 0x87, 0xb0, 0xca, 0x48, 0x44, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4951 = { .name = "ecdh_brainpoolp320t1_4951", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4951_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4951_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4951_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2697 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4952 for ECDH, tcId is 2698 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4952_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x1b, 0x11, 0x42, 0xe0, 0xe2, 0x0a, 0x4b, 0x42, 0x67, 0x47, 0x7a, 0xe4, 0x01, 0x95, 0x14, 0x26, 0x79, 0x1d, 0xb6, 0x6a, 0x86, 0x22, 0x06, 0x1a, 0x18, 0xfb, 0x7f, 0x7c, 0xb4, 0x04, 0x82, 0x70, 0xfc, 0x08, 0x36, 0x62, 0xc5, 0xe3, 0x6f, }; static const unsigned char ecdh_brainpoolp320t1_4952_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4952_sharedsecret[] = { 0x5a, 0xa7, 0x5e, 0x8e, 0xcd, 0xea, 0x56, 0x1d, 0x09, 0x48, 0x41, 0x1a, 0xa7, 0xa5, 0x4c, 0xd1, 0xf3, 0xba, 0x04, 0x63, 0xb5, 0xe4, 0xaa, 0x37, 0x84, 0xf8, 0x95, 0x3e, 0x2a, 0x2d, 0x6f, 0x47, 0x23, 0xb8, 0x90, 0xde, 0x0d, 0x37, 0x49, 0x47, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4952 = { .name = "ecdh_brainpoolp320t1_4952", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4952_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4952_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4952_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2698 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4953 for ECDH, tcId is 2699 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4953_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x07, 0xb1, 0x3c, 0xc6, 0x1a, 0xde, 0x2a, 0x01, 0x20, 0x6c, 0x9c, 0x7a, 0x57, 0x7f, 0xdc, 0xe7, 0x3b, 0x2f, 0xaf, 0x70, 0xc3, 0xb3, 0xc6, 0x9b, 0xd5, 0x7a, 0x46, 0x65, 0x61, 0x11, 0x1f, 0x93, 0x26, 0x79, 0x58, 0x35, 0xd3, 0xc2, 0xba, 0x79, }; static const unsigned char ecdh_brainpoolp320t1_4953_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4953_sharedsecret[] = { 0xbe, 0xf5, 0x05, 0x09, 0x49, 0xce, 0x67, 0xc1, 0x46, 0x3d, 0xfe, 0x11, 0xc4, 0x9e, 0x10, 0x7d, 0xaf, 0x6b, 0x04, 0xe6, 0x27, 0xa4, 0xe6, 0xb1, 0x49, 0xe8, 0x18, 0xe5, 0xff, 0xb3, 0xf3, 0xd7, 0x93, 0xeb, 0xeb, 0xe6, 0xea, 0xf2, 0x0c, 0x90, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4953 = { .name = "ecdh_brainpoolp320t1_4953", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4953_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4953_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4953_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2699 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4954 for ECDH, tcId is 2700 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4954_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x3f, 0xce, 0x98, 0x19, 0x33, 0x57, 0x60, 0xe6, 0x03, 0xd2, 0x9d, 0x87, 0x36, 0xc5, 0xcb, 0xfe, 0x7d, 0x61, 0xaf, 0x21, 0xd7, 0xfa, 0x30, 0x07, 0xb3, 0x35, 0x78, 0x77, 0x3e, 0xb7, 0x79, 0x36, 0x97, 0x30, 0x3f, 0xa0, 0x6c, 0xe4, 0x7b, 0x8a, }; static const unsigned char ecdh_brainpoolp320t1_4954_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4954_sharedsecret[] = { 0x9d, 0x35, 0xad, 0x36, 0xec, 0x1f, 0xb7, 0xc9, 0x68, 0x76, 0x49, 0x76, 0x6a, 0x44, 0xfd, 0x65, 0x95, 0xfd, 0xe0, 0xbd, 0xde, 0xd2, 0x19, 0x9e, 0x8a, 0x82, 0x57, 0x0d, 0xeb, 0x8b, 0xde, 0xd7, 0x76, 0x22, 0xf3, 0x11, 0xb7, 0x72, 0x72, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4954 = { .name = "ecdh_brainpoolp320t1_4954", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4954_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4954_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4954_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2700 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4955 for ECDH, tcId is 2701 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4955_peerpubkey[] = { 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x09, 0x63, 0x50, 0x08, 0xf0, 0xdf, 0xbf, 0xbb, 0xbc, 0xf1, 0x8d, 0xb7, 0x2d, 0x5e, 0x06, 0x08, 0x61, 0x5d, 0xba, 0x0a, 0xf0, 0x87, 0xcd, 0x37, 0x58, 0xca, 0x1d, 0xef, 0xe5, 0x8e, 0xa2, 0x32, 0xec, 0x76, 0xd6, 0x76, 0x4d, 0x2d, 0x0d, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4955_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4955_sharedsecret[] = { 0xaa, 0x1b, 0x41, 0xfc, 0xef, 0xf4, 0xba, 0x87, 0x59, 0x1a, 0x14, 0x5b, 0xf3, 0xa1, 0xb4, 0x4a, 0xdb, 0x6d, 0xc7, 0x94, 0xca, 0x53, 0x5c, 0x93, 0xf5, 0x0c, 0xdc, 0xb0, 0x3a, 0x35, 0xf4, 0xd0, 0x63, 0xc5, 0x73, 0xd4, 0xdb, 0x19, 0x51, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4955 = { .name = "ecdh_brainpoolp320t1_4955", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4955_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4955_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4955_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2701 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4956 for ECDH, tcId is 2702 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4956_peerpubkey[] = { 0x5c, 0xaa, 0x89, 0xfa, 0xfb, 0x08, 0x7e, 0xbb, 0xf0, 0xf7, 0x5a, 0x88, 0x45, 0xdc, 0x5e, 0x20, 0x27, 0x2e, 0x91, 0xd6, 0x00, 0x92, 0xe9, 0x87, 0x0b, 0x1f, 0x14, 0xf4, 0xd1, 0x3b, 0xef, 0x25, 0x5c, 0x15, 0xe1, 0x1b, 0x88, 0x68, 0x29, 0xb2, 0x0a, 0x91, 0xe5, 0xff, 0x65, 0xc7, 0x60, 0x43, 0x89, 0x27, 0xf5, 0x8d, 0x93, 0x11, 0x4a, 0xc1, 0x7a, 0x88, 0xb8, 0xd5, 0xe6, 0x41, 0x5f, 0x7d, 0xb7, 0xfe, 0x80, 0x9a, 0xfe, 0x33, 0x6a, 0xc4, 0x8b, 0x88, 0xf1, 0x58, 0x74, 0x4f, 0xa8, 0xa2, }; static const unsigned char ecdh_brainpoolp320t1_4956_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4956_sharedsecret[] = { 0x1b, 0x84, 0xbf, 0xdb, 0x39, 0xf1, 0x3e, 0x6f, 0x3f, 0xd8, 0x7b, 0xe6, 0xd8, 0xe0, 0x8e, 0xdd, 0x2e, 0x01, 0x22, 0xc4, 0xaa, 0x7e, 0x49, 0x6f, 0xf6, 0x99, 0xda, 0xae, 0x96, 0x1e, 0xcb, 0x4e, 0x2e, 0x5b, 0x07, 0xcc, 0x3a, 0x98, 0x04, 0xfb, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4956 = { .name = "ecdh_brainpoolp320t1_4956", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4956_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4956_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4956_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2702 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4957 for ECDH, tcId is 2703 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4957_peerpubkey[] = { 0x61, 0x66, 0xf3, 0xde, 0x8d, 0xa8, 0xf6, 0xe2, 0x86, 0x17, 0x62, 0x76, 0xa0, 0x3a, 0xc6, 0xdb, 0xb4, 0xa9, 0xf8, 0xb0, 0x15, 0x4a, 0x15, 0x04, 0xca, 0xa5, 0xba, 0x2b, 0xb1, 0x2d, 0xde, 0x1b, 0xe6, 0xea, 0xe8, 0x9f, 0x33, 0x84, 0x12, 0x3b, 0x19, 0x89, 0xdb, 0xce, 0x13, 0xa6, 0x6c, 0x64, 0x2c, 0x51, 0x17, 0xfa, 0x0f, 0x9b, 0x6d, 0x9b, 0xfa, 0xf5, 0x7e, 0x4d, 0xc6, 0x74, 0xd7, 0x0e, 0xcb, 0x59, 0x37, 0x1a, 0xad, 0x85, 0x38, 0x54, 0x1a, 0x4b, 0xc4, 0x6c, 0xc9, 0xc0, 0x9d, 0x34, }; static const unsigned char ecdh_brainpoolp320t1_4957_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4957_sharedsecret[] = { 0xcc, 0x11, 0x2d, 0x08, 0x3e, 0x38, 0x11, 0x27, 0x2e, 0x53, 0x32, 0x4e, 0x65, 0xc2, 0xad, 0x7d, 0x95, 0x8b, 0xb9, 0x65, 0xfd, 0xa3, 0xaf, 0x81, 0x37, 0x2c, 0xde, 0x66, 0x80, 0x16, 0xf8, 0xbc, 0x71, 0x3d, 0x55, 0xc2, 0x74, 0x17, 0x09, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4957 = { .name = "ecdh_brainpoolp320t1_4957", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4957_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4957_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4957_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2703 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4958 for ECDH, tcId is 2704 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4958_peerpubkey[] = { 0x7f, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x3f, 0x4a, 0xa3, 0xfb, 0xf2, 0xc3, 0xf9, 0x08, 0x3c, 0xe6, 0x4c, 0xb0, 0x67, 0x18, 0x9f, 0xc8, 0x6f, 0x00, 0x09, 0x52, 0x2b, 0x0b, 0xc6, 0xcc, 0xe8, 0xb9, 0xaa, 0x61, 0x84, 0xfe, 0x8e, 0xe2, 0xa6, 0xd2, 0xdb, 0x21, 0x91, 0x35, 0x8b, 0xe3, }; static const unsigned char ecdh_brainpoolp320t1_4958_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4958_sharedsecret[] = { 0x94, 0x45, 0xca, 0xe9, 0xd8, 0xb9, 0xe5, 0xfd, 0x8b, 0xd3, 0xd7, 0x3d, 0xa5, 0x6a, 0x3b, 0xa3, 0x7f, 0xf8, 0x31, 0x56, 0xe1, 0x74, 0x1a, 0x44, 0x71, 0xf4, 0xac, 0x01, 0x32, 0xbc, 0x24, 0x38, 0x2e, 0xeb, 0x32, 0x04, 0xfc, 0x1e, 0x41, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4958 = { .name = "ecdh_brainpoolp320t1_4958", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4958_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4958_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4958_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2704 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4959 for ECDH, tcId is 2705 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4959_peerpubkey[] = { 0x7f, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x10, 0xd6, 0x58, 0x0b, 0x65, 0x03, 0x3f, 0x2f, 0x1a, 0x38, 0x90, 0x75, 0x67, 0xd7, 0x69, 0x0a, 0xbc, 0xdd, 0xb0, 0xdc, 0x33, 0x9a, 0x01, 0x1e, 0x7c, 0xd3, 0xdb, 0xb4, 0xae, 0x91, 0x9d, 0x2c, 0xbf, 0xbf, 0x9b, 0xb2, 0x52, 0x0b, 0xaf, 0xc9, }; static const unsigned char ecdh_brainpoolp320t1_4959_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4959_sharedsecret[] = { 0x98, 0xe6, 0xaf, 0x1e, 0xe8, 0x37, 0x17, 0xfb, 0xbe, 0x7b, 0x19, 0x14, 0x6e, 0x2b, 0xbb, 0x85, 0x88, 0x62, 0x62, 0xbf, 0xa4, 0x23, 0xc6, 0x15, 0x5b, 0x5f, 0x02, 0x83, 0xab, 0xb1, 0xd2, 0x87, 0x82, 0x10, 0xef, 0xcd, 0xaa, 0xed, 0x36, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4959 = { .name = "ecdh_brainpoolp320t1_4959", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4959_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4959_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4959_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2705 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4960 for ECDH, tcId is 2706 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4960_peerpubkey[] = { 0x7f, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x01, 0x6b, 0x3d, 0xaf, 0x99, 0x7c, 0xd6, 0xc2, 0x4f, 0xe8, 0x55, 0x47, 0x46, 0x92, 0xd5, 0x7c, 0x73, 0x6b, 0x15, 0x18, 0xaf, 0xd4, 0xe9, 0xe1, 0xd2, 0xcd, 0xab, 0x20, 0xca, 0x9a, 0x6b, 0xf9, 0x36, 0x63, 0x75, 0xf3, 0xf8, 0x11, 0x41, 0x8a, }; static const unsigned char ecdh_brainpoolp320t1_4960_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4960_sharedsecret[] = { 0x08, 0x19, 0x2a, 0x42, 0x71, 0x10, 0xf0, 0x3c, 0x20, 0x4f, 0xb6, 0xd7, 0x35, 0x26, 0x62, 0xac, 0xb3, 0x38, 0xf9, 0x71, 0x1b, 0x45, 0x76, 0x15, 0x3e, 0xe0, 0x94, 0x21, 0x28, 0x4d, 0x17, 0x57, 0xdc, 0x93, 0x19, 0x1f, 0x11, 0x98, 0x2e, 0x82, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4960 = { .name = "ecdh_brainpoolp320t1_4960", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4960_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4960_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4960_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2706 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4961 for ECDH, tcId is 2707 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4961_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x1b, 0x95, 0xc5, 0x63, 0x73, 0x89, 0x69, 0x70, 0x7e, 0xdf, 0x3c, 0x3e, 0x52, 0x83, 0x6a, 0x73, 0xef, 0x99, 0xf7, 0x55, 0x89, 0x13, 0x21, 0x89, 0xd4, 0xef, 0xbb, 0x02, 0xe2, 0x1e, 0xcd, 0x85, 0x74, 0xd8, 0x93, 0x9b, 0xb5, 0xfb, 0x47, 0x59, }; static const unsigned char ecdh_brainpoolp320t1_4961_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4961_sharedsecret[] = { 0x18, 0x96, 0xfb, 0x3f, 0x03, 0x4e, 0x8d, 0x3f, 0xc3, 0x99, 0x2a, 0x43, 0x36, 0x29, 0x6c, 0x1d, 0x97, 0x4a, 0x4a, 0x47, 0x70, 0xfb, 0x98, 0x73, 0x63, 0xfc, 0x23, 0x19, 0x6d, 0xb7, 0x86, 0xdd, 0x76, 0x56, 0xa5, 0x12, 0xd0, 0x2f, 0x93, 0x60, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4961 = { .name = "ecdh_brainpoolp320t1_4961", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4961_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4961_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4961_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2707 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4962 for ECDH, tcId is 2708 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4962_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x89, 0x23, 0xa0, 0xb6, 0x4a, 0x9d, 0x71, 0x18, 0xa9, 0x7f, 0x89, 0x13, 0x51, 0x92, 0x8b, 0xee, 0xb7, 0x85, 0xc7, 0xad, 0xc6, 0x37, 0xf5, 0x53, 0xd1, 0x4e, 0xaf, 0xce, 0x7a, 0x87, 0xd4, 0xb7, 0x90, 0x65, 0xbf, 0x8b, 0xdb, 0x1f, 0x20, }; static const unsigned char ecdh_brainpoolp320t1_4962_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4962_sharedsecret[] = { 0x7a, 0x7f, 0x45, 0xbf, 0xb4, 0xd8, 0xde, 0x69, 0x72, 0xab, 0x54, 0x7d, 0x20, 0x4c, 0xf1, 0x44, 0x89, 0xe5, 0xbe, 0x7d, 0x2f, 0xec, 0xdc, 0xac, 0x6f, 0xb9, 0x1d, 0x23, 0x4e, 0xa6, 0xe5, 0xa0, 0x4d, 0xb6, 0xb6, 0xc2, 0xee, 0x34, 0x5e, 0x3f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4962 = { .name = "ecdh_brainpoolp320t1_4962", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4962_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4962_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4962_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2708 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4963 for ECDH, tcId is 2709 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4963_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x5e, 0xa7, 0x2c, 0x6d, 0xe9, 0x32, 0x98, 0xdd, 0xdf, 0xb9, 0x82, 0x3c, 0xe5, 0x43, 0x99, 0x14, 0x9f, 0x08, 0xb7, 0x32, 0x20, 0x57, 0x3d, 0x58, 0x11, 0x71, 0xca, 0xa1, 0x9d, 0x6d, 0x19, 0xb0, 0xd0, 0x47, 0xc7, 0x2b, 0xb4, 0xd7, 0x24, 0x8b, }; static const unsigned char ecdh_brainpoolp320t1_4963_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4963_sharedsecret[] = { 0x05, 0x0f, 0xb1, 0x2d, 0x81, 0x29, 0xbc, 0xeb, 0x33, 0x60, 0xb1, 0xdf, 0x06, 0x46, 0x87, 0xa7, 0x54, 0x38, 0xe4, 0xc3, 0x64, 0x83, 0xed, 0xce, 0x32, 0x54, 0xb6, 0x58, 0xe5, 0xa2, 0xca, 0xda, 0x54, 0xab, 0xe6, 0x18, 0x2d, 0x16, 0xac, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4963 = { .name = "ecdh_brainpoolp320t1_4963", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4963_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4963_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4963_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2709 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4964 for ECDH, tcId is 2710 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4964_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5d, 0xd5, 0x47, 0xd9, 0x22, 0x44, 0x52, 0xa9, 0x6d, 0x93, 0x75, 0xe4, 0x00, 0x08, 0x87, 0x96, 0x97, 0x64, 0xb1, 0xdc, 0xaa, 0xca, 0xfc, 0xdd, 0x2f, 0x11, 0x1f, 0xe8, 0x5f, 0xe9, 0x12, 0x25, 0xad, 0x37, 0xf2, 0x6d, 0x4c, 0xee, 0xea, 0x19, }; static const unsigned char ecdh_brainpoolp320t1_4964_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4964_sharedsecret[] = { 0xc0, 0xdf, 0xb9, 0x4b, 0xdd, 0x6b, 0xf6, 0x40, 0x04, 0x3a, 0x61, 0x79, 0x83, 0x0e, 0x5a, 0x8c, 0xec, 0x1e, 0xeb, 0x80, 0x28, 0xc5, 0xae, 0x9b, 0xff, 0xf7, 0x1e, 0x25, 0x1b, 0xd1, 0xcf, 0x73, 0xf9, 0x01, 0x41, 0x96, 0xf8, 0x63, 0x41, 0xd1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4964 = { .name = "ecdh_brainpoolp320t1_4964", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4964_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4964_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4964_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2710 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4965 for ECDH, tcId is 2711 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4965_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x01, 0x18, 0xc1, 0xb0, 0x41, 0x01, 0xec, 0x5f, 0x9b, 0x33, 0xeb, 0x6e, 0xef, 0xfe, 0xc1, 0xb7, 0x46, 0x1b, 0x69, 0x0d, 0xd8, 0x41, 0x6c, 0xa3, 0x4c, 0x88, 0xbe, 0xe6, 0x4a, 0x1a, 0xfd, 0x24, 0x67, 0x48, 0xfe, 0xa0, 0xf3, 0xe6, 0x99, 0x5d, }; static const unsigned char ecdh_brainpoolp320t1_4965_privkey[] = { 0xa0, 0xfd, 0x4a, 0xaf, 0x14, 0xd5, 0xc4, 0xf1, 0x3a, 0x2b, 0x5a, 0xfb, 0x67, 0x7d, 0x44, 0xe2, 0x08, 0x78, 0x56, 0xcd, 0x75, 0xbb, 0x7b, 0xd9, 0x0c, 0x62, 0x8e, 0x47, 0x61, 0xde, 0xfe, 0x14, 0x85, 0xde, 0x4f, 0xbb, 0x97, 0xae, 0x3a, 0xca, }; static const unsigned char ecdh_brainpoolp320t1_4965_sharedsecret[] = { 0xaa, 0xe3, 0x1f, 0x95, 0x98, 0xc7, 0x49, 0x1b, 0x6c, 0x2c, 0xf6, 0x80, 0xe6, 0xe6, 0xa6, 0x0a, 0x5e, 0x21, 0xb0, 0x7a, 0xce, 0x64, 0x61, 0x2b, 0x0b, 0x09, 0x98, 0xfc, 0x2c, 0xee, 0x54, 0xcc, 0x98, 0x4f, 0x75, 0xcd, 0xc2, 0xc5, 0x89, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4965 = { .name = "ecdh_brainpoolp320t1_4965", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4965_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4965_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4965_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2711 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4966 for ECDH, tcId is 2712 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4966_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x01, 0x18, 0xc1, 0xb0, 0x41, 0x01, 0xec, 0x5f, 0x9b, 0x33, 0xeb, 0x6e, 0xef, 0xfe, 0xc1, 0xb7, 0x46, 0x1b, 0x69, 0x0d, 0xd8, 0x41, 0x6c, 0xa3, 0x4c, 0x88, 0xbe, 0xe6, 0x4a, 0x1a, 0xfd, 0x24, 0x67, 0x48, 0xfe, 0xa0, 0xf3, 0xe6, 0x99, 0x5d, }; static const unsigned char ecdh_brainpoolp320t1_4966_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4966_sharedsecret[] = { 0x47, 0xb5, 0x6a, 0x21, 0xdd, 0x80, 0xf3, 0xb6, 0xee, 0x47, 0x47, 0x47, 0x6f, 0xe6, 0x98, 0x9f, 0x54, 0x9b, 0x86, 0xc4, 0xa1, 0xc5, 0xf9, 0x3a, 0x7b, 0x42, 0x42, 0x9a, 0xae, 0x74, 0x9c, 0x8c, 0xbf, 0x2c, 0x30, 0x76, 0xb1, 0x2f, 0xb2, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4966 = { .name = "ecdh_brainpoolp320t1_4966", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4966_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4966_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4966_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2712 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4967 for ECDH, tcId is 2713 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4967_peerpubkey[] = { 0x74, 0xc4, 0xf1, 0x8d, 0x91, 0x06, 0x5a, 0x57, 0xbe, 0xd5, 0xce, 0x78, 0x8c, 0x91, 0x1e, 0x13, 0x7d, 0x2c, 0x9f, 0xeb, 0x75, 0x42, 0xf3, 0x16, 0x8e, 0x27, 0x91, 0x8b, 0x38, 0x34, 0x38, 0x14, 0xb2, 0x5f, 0xb3, 0xf0, 0xe1, 0x71, 0xb4, 0xde, 0x14, 0xc7, 0xc5, 0xed, 0x5b, 0x90, 0x86, 0x0d, 0x3d, 0x1d, 0xd2, 0xb2, 0x1f, 0x01, 0x49, 0x28, 0x66, 0x51, 0xc0, 0x91, 0xf2, 0xd9, 0x8a, 0xf9, 0xdb, 0xbc, 0x6f, 0xac, 0x88, 0xa3, 0x61, 0x06, 0x03, 0x97, 0x82, 0xf7, 0x07, 0xba, 0xf0, 0x67, }; static const unsigned char ecdh_brainpoolp320t1_4967_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4967_sharedsecret[] = { 0x9a, 0x47, 0x3d, 0xe0, 0xa7, 0x30, 0x43, 0xad, 0x6c, 0xd1, 0xb7, 0xc7, 0x77, 0x39, 0xc3, 0xed, 0xf8, 0x36, 0x73, 0x52, 0xe6, 0x6c, 0x3a, 0x85, 0x88, 0x77, 0xd8, 0xc7, 0xad, 0xe9, 0x70, 0x9e, 0x38, 0xae, 0xc5, 0xd5, 0xbe, 0x26, 0x5f, 0xb7, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4967 = { .name = "ecdh_brainpoolp320t1_4967", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4967_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4967_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4967_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2713 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4968 for ECDH, tcId is 2714 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4968_peerpubkey[] = { 0x5f, 0x71, 0x2f, 0xbe, 0xa1, 0xe9, 0x8f, 0xc6, 0x8d, 0xd7, 0xb7, 0x7e, 0x10, 0x3d, 0x18, 0xe1, 0x73, 0x7f, 0x6b, 0xa5, 0x4e, 0x1c, 0xd7, 0x26, 0xa7, 0x77, 0x8f, 0xb9, 0x7f, 0xc6, 0x3e, 0xc1, 0xc4, 0xba, 0x7e, 0xb6, 0x9e, 0x27, 0x87, 0x9c, 0x10, 0x28, 0xa8, 0x7a, 0xee, 0x3d, 0x15, 0xa3, 0x6c, 0xea, 0xa2, 0x39, 0x4e, 0x69, 0xa5, 0x5c, 0x4f, 0x41, 0x11, 0x84, 0xa9, 0x78, 0x59, 0xff, 0x2e, 0x0f, 0x1d, 0x4e, 0x25, 0x22, 0x33, 0x8b, 0x6d, 0x70, 0x09, 0xcb, 0xd2, 0x9a, 0x89, 0x98, }; static const unsigned char ecdh_brainpoolp320t1_4968_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4968_sharedsecret[] = { 0x77, 0x06, 0x8b, 0xa6, 0x84, 0x4e, 0x75, 0xcd, 0x21, 0x59, 0x7c, 0xb8, 0xae, 0x02, 0x6a, 0xd7, 0x19, 0x7e, 0xb1, 0xf3, 0xcf, 0x9d, 0xbf, 0x46, 0x47, 0x79, 0x6c, 0x9c, 0x0b, 0x13, 0x4d, 0xd1, 0x3f, 0x2f, 0xda, 0xb8, 0xda, 0x6c, 0x5f, 0xc3, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4968 = { .name = "ecdh_brainpoolp320t1_4968", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4968_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4968_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4968_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2714 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4969 for ECDH, tcId is 2715 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4969_peerpubkey[] = { 0x51, 0x34, 0x96, 0xac, 0x76, 0x5d, 0x99, 0x50, 0xa7, 0x8c, 0x55, 0x70, 0x95, 0x95, 0x9d, 0x04, 0x23, 0x38, 0x14, 0x0d, 0x1f, 0xa3, 0x68, 0x74, 0xb6, 0x7c, 0xc7, 0x5d, 0x81, 0x8d, 0x61, 0x74, 0x0c, 0x43, 0x63, 0x7b, 0x30, 0x77, 0xc5, 0xce, 0xa9, 0x20, 0x7d, 0x50, 0xf8, 0x81, 0xdf, 0x39, 0x17, 0xc6, 0xbe, 0x5f, 0x5a, 0x0b, 0x80, 0x9f, 0x9d, 0x67, 0x1f, 0xe3, 0x4b, 0x1f, 0x54, 0x22, 0xc0, 0x71, 0x80, 0x46, 0xd6, 0x11, 0x9f, 0x37, 0x6d, 0x6b, 0x8f, 0x8a, 0xd2, 0x21, 0x70, 0x3d, }; static const unsigned char ecdh_brainpoolp320t1_4969_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4969_sharedsecret[] = { 0x3b, 0x8f, 0xab, 0xfa, 0x26, 0x6f, 0x46, 0x3d, 0x7f, 0xe4, 0xe9, 0x81, 0xfc, 0xa6, 0xb9, 0xae, 0xaf, 0x97, 0x95, 0x41, 0x32, 0x35, 0x9c, 0x2d, 0xbf, 0x3d, 0xf2, 0x2e, 0x2a, 0xcc, 0x02, 0x34, 0xbf, 0xbd, 0x0a, 0x51, 0xc0, 0x6f, 0x24, 0xa9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4969 = { .name = "ecdh_brainpoolp320t1_4969", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4969_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4969_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4969_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2715 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4970 for ECDH, tcId is 2716 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4970_peerpubkey[] = { 0xcb, 0x4c, 0x0c, 0x21, 0x7b, 0x74, 0xcc, 0x95, 0xed, 0x2d, 0xe9, 0x02, 0xac, 0x15, 0xc5, 0xfc, 0xef, 0xad, 0x8b, 0x3f, 0xf3, 0x0f, 0xac, 0xf9, 0x49, 0xac, 0xaa, 0x17, 0x81, 0xc5, 0xf5, 0x04, 0x33, 0x4e, 0xa1, 0x40, 0xad, 0x7f, 0x10, 0x71, 0x80, 0xf1, 0x15, 0x73, 0xfe, 0x66, 0x18, 0x02, 0x9c, 0xf6, 0xf1, 0xdf, 0x0a, 0x62, 0x13, 0x78, 0x4d, 0xa3, 0xb4, 0xae, 0xb0, 0xa5, 0x96, 0x2a, 0x32, 0xb8, 0xea, 0x55, 0x35, 0x22, 0xce, 0xe1, 0xae, 0x48, 0x42, 0x78, 0x4c, 0xf2, 0xca, 0xe9, }; static const unsigned char ecdh_brainpoolp320t1_4970_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4970_sharedsecret[] = { 0xac, 0x2e, 0x16, 0xed, 0xe1, 0x53, 0x79, 0x18, 0xfd, 0x08, 0x6d, 0xa7, 0x74, 0x32, 0xda, 0x5e, 0xa2, 0x57, 0xa2, 0x18, 0x86, 0x1e, 0x79, 0x1e, 0xc2, 0x08, 0xc2, 0xec, 0x35, 0x18, 0x18, 0x87, 0x66, 0xf7, 0x4b, 0x51, 0x12, 0xab, 0x16, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4970 = { .name = "ecdh_brainpoolp320t1_4970", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4970_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4970_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4970_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2716 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4971 for ECDH, tcId is 2717 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4971_peerpubkey[] = { 0x15, 0x6f, 0xe1, 0x8f, 0xd3, 0xf7, 0x25, 0x1a, 0x07, 0xdf, 0xa3, 0x4a, 0x25, 0xd6, 0x70, 0x74, 0xe4, 0xda, 0xa6, 0x58, 0xdd, 0xd9, 0x47, 0xeb, 0x9c, 0xcd, 0x91, 0x38, 0xc5, 0x03, 0x77, 0xa1, 0x67, 0x48, 0x2a, 0xc8, 0x0e, 0x7a, 0x99, 0xfd, 0xd2, 0x69, 0x25, 0xf0, 0x42, 0xe0, 0x6a, 0x52, 0x4f, 0xd4, 0xed, 0xf7, 0xc2, 0x53, 0x7e, 0x8c, 0x0a, 0xa1, 0xc1, 0xdc, 0x04, 0xb0, 0xf2, 0x1a, 0x4c, 0xc9, 0xf7, 0x02, 0x8c, 0xea, 0x45, 0x96, 0xf5, 0x0f, 0xb8, 0x69, 0x88, 0x98, 0x44, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4971_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4971_sharedsecret[] = { 0x01, 0xfb, 0xf8, 0x73, 0x14, 0xa6, 0x91, 0x88, 0x33, 0x1a, 0x47, 0x3e, 0x5e, 0xd7, 0x61, 0xe0, 0xc8, 0x8e, 0xc1, 0xea, 0xbc, 0xef, 0x10, 0x76, 0xbd, 0xec, 0x84, 0xe3, 0xb8, 0xfe, 0x8b, 0xd2, 0x02, 0xfb, 0xe9, 0xbb, 0xa3, 0x7b, 0xd0, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4971 = { .name = "ecdh_brainpoolp320t1_4971", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4971_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4971_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4971_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2717 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4972 for ECDH, tcId is 2718 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4972_peerpubkey[] = { 0x2b, 0x20, 0x51, 0xcb, 0xf3, 0xbd, 0x6a, 0xdb, 0xfd, 0xc0, 0xf7, 0x4e, 0x0b, 0x41, 0x52, 0x57, 0x6d, 0xa9, 0x6b, 0x24, 0xc4, 0x4b, 0x85, 0x57, 0x5c, 0x8c, 0x2d, 0x7c, 0x7c, 0xbc, 0x52, 0xda, 0xcd, 0x83, 0xfa, 0xe7, 0x43, 0xe1, 0xf9, 0xf4, 0x70, 0x66, 0x31, 0xb3, 0xe4, 0xf9, 0x8f, 0xa7, 0x74, 0x5a, 0x8f, 0xea, 0xad, 0x64, 0x98, 0x81, 0x76, 0x41, 0x88, 0x14, 0x16, 0xb0, 0xb7, 0x18, 0x52, 0x52, 0x4a, 0xa4, 0x79, 0xc8, 0xaa, 0x3c, 0x14, 0x32, 0x0f, 0x15, 0x37, 0x3f, 0x75, 0x39, }; static const unsigned char ecdh_brainpoolp320t1_4972_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4972_sharedsecret[] = { 0xc9, 0x91, 0xc3, 0xc3, 0x5f, 0x51, 0xbc, 0x2c, 0x1a, 0x86, 0xc6, 0xff, 0xd3, 0xf9, 0x7b, 0x00, 0xe1, 0x88, 0x2f, 0x1a, 0x5c, 0x51, 0x52, 0xf8, 0xd7, 0x7c, 0xef, 0x09, 0x91, 0x25, 0x84, 0x4b, 0xc2, 0xf2, 0x9e, 0x0d, 0x11, 0x0c, 0x79, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4972 = { .name = "ecdh_brainpoolp320t1_4972", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4972_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4972_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4972_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2718 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4973 for ECDH, tcId is 2719 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4973_peerpubkey[] = { 0x80, 0xa1, 0xee, 0xad, 0x8a, 0xd7, 0x18, 0xf4, 0x91, 0x1b, 0x29, 0x28, 0x5a, 0x91, 0x66, 0x31, 0x92, 0x1e, 0x1a, 0xdd, 0x93, 0x5e, 0x7f, 0x62, 0xd5, 0xeb, 0x66, 0x84, 0xdb, 0xba, 0xeb, 0xa9, 0x30, 0x32, 0x1c, 0xa9, 0x21, 0x1a, 0xd3, 0x36, 0x0d, 0x15, 0xf1, 0x93, 0x08, 0x08, 0xe2, 0xc0, 0x4c, 0x31, 0x4d, 0x84, 0x1a, 0x96, 0x31, 0x9e, 0x63, 0x3d, 0xce, 0x0c, 0x80, 0x3c, 0x5f, 0x1d, 0x8c, 0x92, 0x96, 0xd2, 0xae, 0x1a, 0x52, 0x24, 0x2a, 0x0c, 0xba, 0x0c, 0xfd, 0x54, 0x74, 0x85, }; static const unsigned char ecdh_brainpoolp320t1_4973_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4973_sharedsecret[] = { 0x17, 0x2d, 0x53, 0x48, 0x06, 0x3b, 0x52, 0x55, 0x41, 0x88, 0xc8, 0x46, 0xfb, 0x91, 0x2e, 0x75, 0x39, 0x1f, 0x95, 0x61, 0x2c, 0xb5, 0xa5, 0xed, 0x69, 0xc5, 0xd0, 0xbd, 0xc9, 0x91, 0x36, 0xc3, 0x0c, 0x08, 0xa0, 0x36, 0x9c, 0x9f, 0x7c, 0xb8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4973 = { .name = "ecdh_brainpoolp320t1_4973", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4973_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4973_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4973_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2719 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4974 for ECDH, tcId is 2720 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4974_peerpubkey[] = { 0x13, 0x47, 0x0b, 0xe4, 0xf8, 0x0d, 0xff, 0x55, 0xd2, 0xbc, 0xa2, 0xa3, 0xc8, 0x95, 0x5f, 0xc9, 0x3a, 0x62, 0x3f, 0x5b, 0xd6, 0x62, 0xa4, 0xfb, 0x6c, 0x5f, 0xba, 0xf8, 0x27, 0x88, 0xed, 0xc4, 0x6e, 0x8a, 0x2f, 0xc6, 0xd4, 0x5f, 0xea, 0x2b, 0x80, 0x15, 0x2e, 0xde, 0xe3, 0xb2, 0xfe, 0xb1, 0xa3, 0xa2, 0xf1, 0x81, 0xf5, 0x88, 0xfa, 0x19, 0x1f, 0xa8, 0xff, 0x28, 0x09, 0x02, 0xef, 0xb1, 0x50, 0x17, 0x92, 0xe6, 0xee, 0xcb, 0xbe, 0x2c, 0xe5, 0xca, 0xe0, 0x90, 0xc7, 0x9f, 0x7b, 0x29, }; static const unsigned char ecdh_brainpoolp320t1_4974_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4974_sharedsecret[] = { 0xce, 0xd6, 0x62, 0xfb, 0x00, 0x25, 0xce, 0x0f, 0x38, 0x9e, 0xe4, 0xad, 0xf7, 0x0a, 0x0f, 0xa8, 0xc2, 0x37, 0x2c, 0x0a, 0x4e, 0x0d, 0x30, 0x6f, 0x24, 0x20, 0x33, 0x6c, 0x8f, 0xa2, 0xd9, 0xe9, 0xf7, 0x43, 0x1c, 0x1f, 0x28, 0xe1, 0x3e, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4974 = { .name = "ecdh_brainpoolp320t1_4974", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4974_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4974_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4974_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2720 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4975 for ECDH, tcId is 2721 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4975_peerpubkey[] = { 0x5e, 0x56, 0x4b, 0xe1, 0x59, 0x26, 0xff, 0x7c, 0x8e, 0x30, 0xef, 0x8d, 0x2d, 0x6b, 0xd8, 0x30, 0x9b, 0xe7, 0xc6, 0x4f, 0x31, 0x05, 0x92, 0x88, 0x7b, 0xf5, 0xb8, 0x71, 0x7b, 0x04, 0x83, 0x31, 0x7f, 0xd5, 0x80, 0x28, 0x0d, 0x4d, 0x56, 0x6a, 0x17, 0xbb, 0xbb, 0xf5, 0x26, 0x97, 0x80, 0x23, 0xf9, 0x1c, 0xc4, 0x77, 0x99, 0x77, 0x87, 0x72, 0xa7, 0xf7, 0x57, 0x3a, 0x77, 0x63, 0x20, 0x90, 0x98, 0x86, 0xe9, 0x2c, 0xd3, 0x47, 0x5b, 0x8f, 0x77, 0x19, 0xf2, 0xb7, 0x2f, 0x1b, 0xc7, 0xe4, }; static const unsigned char ecdh_brainpoolp320t1_4975_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4975_sharedsecret[] = { 0xc0, 0x17, 0x4d, 0x9d, 0xd6, 0x54, 0xde, 0xaf, 0xea, 0x71, 0x85, 0x3f, 0x13, 0x29, 0xa9, 0x35, 0xb0, 0x98, 0xba, 0xa6, 0x6d, 0xff, 0xb9, 0x3e, 0xaf, 0x57, 0xba, 0xab, 0xbf, 0x93, 0x0e, 0xa6, 0xa2, 0xf0, 0x71, 0x24, 0x4a, 0x86, 0xcb, 0xea, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4975 = { .name = "ecdh_brainpoolp320t1_4975", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4975_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4975_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4975_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2721 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4976 for ECDH, tcId is 2722 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4976_peerpubkey[] = { 0x99, 0x3f, 0x2a, 0xeb, 0x18, 0x10, 0xd0, 0xc8, 0xfd, 0x0d, 0xfe, 0x18, 0x5a, 0xf3, 0x66, 0x84, 0x0f, 0x00, 0x45, 0x7f, 0xa8, 0x23, 0xe5, 0x65, 0x83, 0x26, 0xd1, 0xc1, 0xe4, 0xe7, 0x5c, 0x6d, 0x86, 0x9e, 0x9a, 0x7b, 0xd6, 0x40, 0x90, 0xae, 0x4e, 0x9f, 0x48, 0xfa, 0x42, 0x44, 0x1e, 0x0a, 0x22, 0x9f, 0x33, 0x43, 0x86, 0xe1, 0x01, 0x46, 0xb1, 0xad, 0xcd, 0x67, 0x16, 0x8d, 0x46, 0xee, 0x9e, 0x43, 0xeb, 0x22, 0x44, 0x32, 0x29, 0xfb, 0x0a, 0x95, 0x54, 0x40, 0x51, 0xbb, 0x21, 0xf4, }; static const unsigned char ecdh_brainpoolp320t1_4976_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4976_sharedsecret[] = { 0x02, 0x63, 0x8d, 0x67, 0x6a, 0xd8, 0x18, 0x06, 0xdc, 0xea, 0x1d, 0x39, 0x34, 0x17, 0x39, 0x88, 0xf1, 0x54, 0xed, 0x1e, 0xd8, 0x0d, 0x15, 0xaa, 0x14, 0x71, 0x52, 0xbc, 0x06, 0x4d, 0xb6, 0x0d, 0xd8, 0x7d, 0x92, 0xa9, 0x67, 0xa5, 0x3d, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4976 = { .name = "ecdh_brainpoolp320t1_4976", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4976_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4976_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4976_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2722 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4977 for ECDH, tcId is 2723 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4977_peerpubkey[] = { 0xb1, 0xd9, 0x76, 0xce, 0xea, 0x49, 0x6d, 0xc7, 0xbd, 0xe1, 0x9d, 0x6f, 0x65, 0xc2, 0x41, 0x98, 0xa4, 0x12, 0x20, 0x4e, 0xf2, 0xf7, 0x0a, 0xfd, 0xff, 0x0d, 0x02, 0xa7, 0x9e, 0x5d, 0x43, 0x5d, 0x02, 0xdd, 0x94, 0x83, 0xe6, 0x43, 0xa1, 0x0c, 0x70, 0x7d, 0x32, 0xed, 0x81, 0xca, 0x84, 0xb4, 0x24, 0x59, 0x6d, 0xb7, 0x15, 0x3a, 0x68, 0x35, 0x76, 0xb3, 0x61, 0x55, 0xd7, 0xe8, 0x89, 0xe1, 0x56, 0x9b, 0xf5, 0x23, 0x62, 0x48, 0xa4, 0x69, 0x42, 0x4b, 0x77, 0x6e, 0xc3, 0xd6, 0xee, 0x21, }; static const unsigned char ecdh_brainpoolp320t1_4977_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4977_sharedsecret[] = { 0xc8, 0x40, 0x0c, 0x30, 0x9e, 0x73, 0x49, 0x04, 0x55, 0xae, 0x3b, 0xf1, 0x5a, 0x20, 0x51, 0xb5, 0x94, 0x2c, 0x01, 0x4b, 0xa6, 0x57, 0x2d, 0x59, 0x37, 0xa9, 0x3d, 0x42, 0x54, 0xe2, 0xae, 0x40, 0xc9, 0x52, 0xb0, 0xc2, 0xd9, 0xd2, 0x20, 0xa9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4977 = { .name = "ecdh_brainpoolp320t1_4977", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4977_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4977_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4977_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2723 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4978 for ECDH, tcId is 2724 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4978_peerpubkey[] = { 0x7f, 0xc1, 0x1f, 0xb2, 0xa0, 0xc4, 0xc4, 0x08, 0x22, 0xf0, 0xd0, 0x87, 0x7e, 0xc7, 0xc7, 0xfe, 0x81, 0x4e, 0x6a, 0x62, 0xc6, 0x5f, 0xe8, 0x52, 0xe4, 0xfd, 0x54, 0x05, 0x5b, 0xf9, 0xe6, 0x63, 0x82, 0x18, 0x7e, 0x90, 0xbc, 0x60, 0x05, 0xd5, 0xca, 0x48, 0x1a, 0x3d, 0xc2, 0x42, 0x1e, 0xc2, 0x0b, 0x40, 0x23, 0x27, 0xe7, 0xf7, 0x2d, 0x80, 0xdb, 0x65, 0x1a, 0x2b, 0x69, 0xe0, 0x55, 0xf3, 0xb0, 0x0d, 0x3b, 0x98, 0xae, 0xbe, 0xe7, 0x6a, 0x1a, 0xb0, 0xbc, 0x48, 0x37, 0x78, 0xb0, 0x39, }; static const unsigned char ecdh_brainpoolp320t1_4978_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4978_sharedsecret[] = { 0xc4, 0x12, 0x08, 0xb3, 0xe9, 0x78, 0x3f, 0x17, 0x89, 0xf1, 0xf0, 0x25, 0x03, 0x89, 0xf9, 0x40, 0xe0, 0x65, 0x78, 0x4d, 0xcc, 0xce, 0xa6, 0xb0, 0xa0, 0x68, 0x30, 0x84, 0x1d, 0x16, 0x16, 0x75, 0x6c, 0x0d, 0x50, 0x9d, 0xcd, 0x8f, 0xae, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4978 = { .name = "ecdh_brainpoolp320t1_4978", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4978_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4978_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4978_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2724 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4979 for ECDH, tcId is 2725 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4979_peerpubkey[] = { 0x0a, 0x42, 0x65, 0x02, 0x09, 0x1c, 0xad, 0x86, 0x23, 0xa9, 0x0d, 0xf7, 0x85, 0xc9, 0x8d, 0x94, 0x82, 0x11, 0x60, 0x75, 0x03, 0x7c, 0x68, 0x8d, 0xa3, 0x0b, 0x88, 0x3d, 0xd2, 0x33, 0x9a, 0x2d, 0x77, 0x45, 0x08, 0x4a, 0x43, 0x83, 0x92, 0xe3, 0xb7, 0x56, 0xfa, 0x1d, 0x92, 0xef, 0x30, 0x85, 0x1d, 0x2c, 0x35, 0x0c, 0xb6, 0x66, 0xc7, 0x3c, 0x70, 0x95, 0xa7, 0x4d, 0x6e, 0xf6, 0x4d, 0x8b, 0x38, 0x01, 0x91, 0x75, 0x00, 0x66, 0xb4, 0xb4, 0xd9, 0xd4, 0x35, 0x39, 0xe6, 0x60, 0x5b, 0x3f, }; static const unsigned char ecdh_brainpoolp320t1_4979_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4979_sharedsecret[] = { 0x31, 0xfa, 0xde, 0x5b, 0x50, 0x7e, 0x07, 0xd5, 0x98, 0x02, 0xc5, 0x28, 0x67, 0x73, 0x25, 0x0a, 0x92, 0x06, 0x8b, 0x6e, 0x5c, 0xc2, 0xb0, 0x9a, 0x64, 0x69, 0x07, 0xd7, 0x87, 0xb1, 0x47, 0x3a, 0x57, 0x89, 0x95, 0xb9, 0x4f, 0x40, 0x23, 0x9f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4979 = { .name = "ecdh_brainpoolp320t1_4979", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4979_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4979_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4979_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2725 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4980 for ECDH, tcId is 2726 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4980_peerpubkey[] = { 0xb7, 0x8e, 0xeb, 0xb7, 0xa3, 0x8a, 0x40, 0x06, 0x60, 0xc5, 0x59, 0xf0, 0x41, 0xce, 0xc8, 0x47, 0x85, 0x1f, 0x2e, 0x5f, 0x68, 0x79, 0x7f, 0x4d, 0x8b, 0x80, 0xa1, 0x23, 0x3e, 0x92, 0x71, 0x2b, 0x04, 0x55, 0x35, 0xa7, 0xea, 0x60, 0xe7, 0xaa, 0x3c, 0xb6, 0xe5, 0x05, 0x1d, 0xbd, 0x98, 0xc1, 0x65, 0xcc, 0xe3, 0xa7, 0x4c, 0x61, 0xfb, 0xc8, 0x7b, 0x04, 0x2a, 0x96, 0x3d, 0x19, 0x4a, 0x5b, 0x65, 0xe5, 0x48, 0xd7, 0x7a, 0x9f, 0xd3, 0x71, 0xb4, 0xda, 0x8e, 0xb5, 0x2c, 0xfc, 0xd7, 0x23, }; static const unsigned char ecdh_brainpoolp320t1_4980_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4980_sharedsecret[] = { 0x6c, 0x6d, 0xa5, 0x71, 0x77, 0x42, 0xca, 0x83, 0x33, 0xb8, 0xed, 0xeb, 0x09, 0xa4, 0x45, 0xb6, 0xfb, 0x24, 0xe2, 0x8c, 0xaa, 0x8e, 0x89, 0x1b, 0x30, 0x49, 0x5b, 0xbb, 0x51, 0xa0, 0x58, 0x2f, 0x05, 0x37, 0x4e, 0x0c, 0x3c, 0xa4, 0x9e, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4980 = { .name = "ecdh_brainpoolp320t1_4980", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4980_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4980_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4980_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2726 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4981 for ECDH, tcId is 2727 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4981_peerpubkey[] = { 0x73, 0x24, 0x39, 0x4e, 0x0e, 0x23, 0xb2, 0xa7, 0xe9, 0xf7, 0x0a, 0xbb, 0xce, 0x09, 0x60, 0x85, 0xdd, 0x26, 0x85, 0x5f, 0xc2, 0xc5, 0x47, 0xc9, 0xf7, 0xe5, 0x5b, 0xf9, 0x47, 0x61, 0x02, 0x6b, 0x51, 0x54, 0x16, 0xd6, 0xbb, 0x2a, 0x2a, 0x19, 0x28, 0x1b, 0xa3, 0xbd, 0x22, 0xbf, 0x6e, 0xf4, 0x29, 0x8d, 0x95, 0xae, 0x20, 0xa6, 0x19, 0xdb, 0x9b, 0xae, 0xf8, 0x03, 0xb4, 0xcc, 0xe2, 0x81, 0x6d, 0xf5, 0xda, 0xdc, 0x8d, 0xdc, 0xc5, 0x57, 0x7d, 0x5a, 0x07, 0x94, 0xec, 0xfc, 0x32, 0x9e, }; static const unsigned char ecdh_brainpoolp320t1_4981_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4981_sharedsecret[] = { 0xc6, 0xa2, 0x2b, 0xd5, 0x40, 0x5c, 0xf2, 0x96, 0x5c, 0xfb, 0xa3, 0x52, 0x25, 0x81, 0x13, 0xf3, 0x10, 0x93, 0xca, 0xeb, 0x85, 0x98, 0x3b, 0x51, 0xc1, 0x11, 0xfe, 0x0f, 0xdc, 0x9a, 0xf3, 0xa6, 0x52, 0x52, 0xba, 0xbd, 0x66, 0xbb, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4981 = { .name = "ecdh_brainpoolp320t1_4981", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4981_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4981_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4981_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2727 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4982 for ECDH, tcId is 2728 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4982_peerpubkey[] = { 0x2c, 0xee, 0xdf, 0x25, 0x1d, 0xe7, 0x8b, 0x11, 0x2d, 0x75, 0xa9, 0xc1, 0x6b, 0x7f, 0x2e, 0xfe, 0x51, 0x4e, 0xef, 0xd9, 0x36, 0x8e, 0x92, 0xf8, 0x2b, 0xa8, 0xe3, 0xd9, 0x28, 0x96, 0x92, 0xd8, 0x40, 0x51, 0xd0, 0xc3, 0xbe, 0x6d, 0x48, 0x06, 0x1f, 0x7a, 0x07, 0xc0, 0x59, 0xff, 0x3a, 0x55, 0x85, 0x9c, 0xc8, 0x42, 0x00, 0xab, 0xec, 0x7e, 0x58, 0xbc, 0x80, 0x0e, 0x58, 0xc5, 0x16, 0x9f, 0x56, 0x70, 0x06, 0x09, 0xf1, 0x47, 0xec, 0x18, 0x41, 0x09, 0xbf, 0xfb, 0x1a, 0x9f, 0x04, 0x44, }; static const unsigned char ecdh_brainpoolp320t1_4982_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4982_sharedsecret[] = { 0x25, 0xcb, 0x5f, 0xfb, 0xaa, 0xe3, 0x17, 0xdf, 0x51, 0xeb, 0x96, 0xe3, 0xa9, 0xc6, 0xd8, 0x55, 0xdd, 0x7b, 0x02, 0x69, 0xdd, 0x24, 0xf2, 0x1b, 0x5d, 0x6b, 0x1f, 0x99, 0xc1, 0x12, 0x32, 0xd9, 0xd3, 0xcc, 0x38, 0xbe, 0x68, 0x9f, 0x15, 0x65, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4982 = { .name = "ecdh_brainpoolp320t1_4982", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4982_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4982_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4982_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2728 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4983 for ECDH, tcId is 2729 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4983_peerpubkey[] = { 0x49, 0x85, 0xf0, 0x3c, 0xc2, 0x83, 0xcb, 0x5c, 0xc4, 0x25, 0xe5, 0x59, 0xc0, 0x48, 0x3f, 0x0a, 0x2e, 0x51, 0x80, 0x62, 0x94, 0x2d, 0xac, 0x73, 0x8b, 0x1a, 0x22, 0x64, 0xb1, 0xed, 0x6b, 0x5a, 0x7b, 0x56, 0xcc, 0xf3, 0x32, 0xf2, 0x45, 0x7e, 0xb1, 0x27, 0xe2, 0xb1, 0x4d, 0x04, 0x88, 0x32, 0x79, 0xf6, 0x81, 0x3a, 0x53, 0x40, 0xa5, 0xac, 0x78, 0x35, 0xfb, 0xe7, 0x07, 0x95, 0x88, 0x74, 0x23, 0x7e, 0xb1, 0x62, 0xe9, 0xf6, 0xd5, 0x5b, 0x5c, 0xe0, 0xb5, 0xf1, 0x7f, 0x9b, 0xd8, 0xac, }; static const unsigned char ecdh_brainpoolp320t1_4983_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4983_sharedsecret[] = { 0xcb, 0x59, 0xea, 0x7d, 0xa5, 0x23, 0x89, 0xab, 0xe6, 0x36, 0x20, 0xc1, 0xeb, 0xad, 0xaf, 0xb6, 0xa6, 0xbd, 0xa7, 0xe8, 0xee, 0x19, 0x24, 0x03, 0xa3, 0xfd, 0xdf, 0x19, 0xd9, 0x9b, 0x88, 0xa0, 0x97, 0xc5, 0x75, 0xe5, 0x2e, 0x79, 0x7b, 0x19, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4983 = { .name = "ecdh_brainpoolp320t1_4983", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4983_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4983_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4983_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2729 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4984 for ECDH, tcId is 2730 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4984_peerpubkey[] = { 0x43, 0x80, 0x41, 0x05, 0x1b, 0xdd, 0x77, 0xa4, 0xc8, 0x39, 0xb8, 0x79, 0x1d, 0x85, 0x23, 0x72, 0x83, 0xcf, 0x39, 0x80, 0xaf, 0x90, 0xf0, 0xd9, 0xae, 0xec, 0x15, 0x5f, 0x22, 0xa1, 0x9b, 0xb1, 0xab, 0x9c, 0x69, 0xd0, 0xd6, 0xdc, 0xac, 0xa4, 0xa3, 0x2d, 0x9f, 0x53, 0xa3, 0xcf, 0xcc, 0xc6, 0xaa, 0x7f, 0x30, 0x54, 0x1e, 0x3e, 0xf5, 0x47, 0x24, 0x4d, 0x6e, 0x08, 0x24, 0x83, 0x3f, 0xe1, 0xaa, 0x27, 0xcc, 0x59, 0x76, 0x9e, 0x50, 0x5a, 0x77, 0x61, 0xda, 0x4f, 0x64, 0xa1, 0x86, 0x61, }; static const unsigned char ecdh_brainpoolp320t1_4984_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4984_sharedsecret[] = { 0x54, 0xdf, 0xfe, 0x27, 0xaf, 0xdf, 0xc3, 0xf4, 0x2f, 0x81, 0xbe, 0x5a, 0x41, 0x7e, 0x5f, 0x79, 0xe3, 0xa5, 0x69, 0x0e, 0x8b, 0x4d, 0x96, 0x97, 0xd0, 0xad, 0x21, 0x8d, 0x97, 0xe1, 0x42, 0x70, 0xa5, 0x52, 0x8e, 0x6d, 0x39, 0x52, 0x2d, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4984 = { .name = "ecdh_brainpoolp320t1_4984", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4984_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4984_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4984_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2730 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4985 for ECDH, tcId is 2731 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4985_peerpubkey[] = { 0x4f, 0xe9, 0x1d, 0xd2, 0xc2, 0xd1, 0x2c, 0xe3, 0x03, 0x14, 0xc2, 0xf0, 0x53, 0xee, 0xbe, 0xb4, 0xf0, 0x74, 0xd7, 0xc8, 0xa3, 0x71, 0x84, 0x1d, 0x2f, 0xa8, 0xbd, 0xb2, 0x88, 0x02, 0x59, 0xb6, 0xe5, 0xdc, 0xf7, 0xaa, 0x4a, 0xf5, 0xbe, 0x76, 0xb0, 0x54, 0x0d, 0xcf, 0x04, 0x42, 0x91, 0x0c, 0x61, 0x07, 0x14, 0x49, 0x39, 0x4d, 0x5d, 0x84, 0x8f, 0x98, 0x97, 0x04, 0xe8, 0x5e, 0x3d, 0x4e, 0x8d, 0xfc, 0x13, 0xa5, 0xd8, 0x24, 0x42, 0x68, 0x54, 0xc5, 0x69, 0x65, 0x0f, 0xa7, 0xc9, 0x1b, }; static const unsigned char ecdh_brainpoolp320t1_4985_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4985_sharedsecret[] = { 0xcc, 0xf5, 0x3e, 0x41, 0xbe, 0x40, 0x4f, 0x51, 0xc7, 0x43, 0x9d, 0x67, 0xa6, 0xcd, 0x22, 0x36, 0xb3, 0x6e, 0x71, 0xdd, 0x32, 0x13, 0xbd, 0x22, 0x06, 0xf9, 0x90, 0x61, 0x2d, 0xb9, 0x05, 0xa4, 0x99, 0xfd, 0x80, 0x1b, 0xa3, 0x10, 0xa5, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4985 = { .name = "ecdh_brainpoolp320t1_4985", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4985_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4985_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4985_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2731 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4986 for ECDH, tcId is 2732 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4986_peerpubkey[] = { 0x41, 0x8d, 0xca, 0x9e, 0x81, 0xdc, 0x67, 0x17, 0xd0, 0x7a, 0x2e, 0x05, 0x8c, 0x63, 0x62, 0x4d, 0xb9, 0x27, 0x71, 0xf1, 0x02, 0x26, 0x6a, 0xd7, 0xb4, 0x6e, 0x4f, 0xd4, 0xa2, 0xca, 0xc8, 0x6c, 0xc0, 0x21, 0x0b, 0x1f, 0x7d, 0x28, 0xee, 0x31, 0xba, 0xe3, 0x77, 0x86, 0x5c, 0x57, 0xa4, 0x46, 0x97, 0xab, 0x1d, 0x6a, 0xb5, 0x20, 0x43, 0x26, 0x0f, 0x0d, 0x6c, 0x91, 0xed, 0x60, 0xb4, 0x8a, 0x3b, 0x41, 0x20, 0xb6, 0x51, 0x21, 0x17, 0xb0, 0x8e, 0x74, 0x35, 0x43, 0x88, 0x0a, 0x3e, 0xf6, }; static const unsigned char ecdh_brainpoolp320t1_4986_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4986_sharedsecret[] = { 0xa4, 0x7d, 0xf3, 0x29, 0x34, 0x20, 0x9c, 0xc9, 0x7c, 0xc5, 0xe2, 0x7d, 0x46, 0x5d, 0xb8, 0xe8, 0x01, 0xaf, 0x78, 0xc5, 0xa3, 0x2b, 0x61, 0x9d, 0x92, 0xc7, 0x59, 0x5f, 0x77, 0x90, 0x51, 0x2d, 0x73, 0x30, 0xd7, 0x37, 0x9b, 0xdb, 0xf2, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4986 = { .name = "ecdh_brainpoolp320t1_4986", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4986_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4986_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4986_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2732 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4987 for ECDH, tcId is 2733 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4987_peerpubkey[] = { 0x2a, 0x94, 0xf0, 0xa4, 0x1d, 0xe8, 0x28, 0x17, 0xec, 0x6f, 0x92, 0xf5, 0x31, 0xba, 0x96, 0xb4, 0x4a, 0xb1, 0x20, 0x6f, 0xa4, 0xe3, 0x3c, 0x8f, 0xe8, 0x56, 0x7f, 0x5d, 0xae, 0x1d, 0x1f, 0x01, 0xdb, 0x09, 0x1a, 0x37, 0x25, 0x87, 0x54, 0x6c, 0x5f, 0x54, 0xfe, 0x53, 0xd9, 0x8d, 0xbc, 0xca, 0xc7, 0x91, 0xbf, 0xd6, 0xc8, 0xd6, 0xb2, 0x38, 0xf6, 0x0e, 0xe2, 0x6e, 0xd6, 0xe8, 0x95, 0xbc, 0x2c, 0xb7, 0xe2, 0x1c, 0xa1, 0xa2, 0x74, 0x2f, 0xa2, 0x50, 0x21, 0x44, 0xe6, 0x50, 0xe4, 0x11, }; static const unsigned char ecdh_brainpoolp320t1_4987_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4987_sharedsecret[] = { 0xab, 0xcc, 0x8a, 0x63, 0xd4, 0x4c, 0x41, 0x0f, 0xbe, 0x80, 0x0c, 0xbd, 0xc6, 0xc0, 0x7c, 0x14, 0x0f, 0xf9, 0x71, 0xc1, 0x88, 0x0a, 0x0e, 0xb4, 0xbe, 0x91, 0xd2, 0x35, 0x30, 0x92, 0x08, 0x8b, 0xb8, 0x2b, 0xa0, 0x6c, 0xf3, 0x8f, 0xe6, 0xeb, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4987 = { .name = "ecdh_brainpoolp320t1_4987", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4987_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4987_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4987_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2733 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4988 for ECDH, tcId is 2734 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4988_peerpubkey[] = { 0xbc, 0x7c, 0x0b, 0x03, 0x4f, 0x2a, 0xfb, 0x53, 0x0f, 0xd7, 0xef, 0x6f, 0x71, 0xc8, 0xc3, 0x01, 0xfa, 0x7e, 0x0b, 0x7e, 0x39, 0x11, 0xc0, 0x6c, 0xb2, 0xa1, 0xac, 0x4a, 0xa0, 0xf7, 0xf6, 0x38, 0xd5, 0x50, 0xbd, 0x2d, 0xe7, 0x71, 0x81, 0xff, 0x55, 0x09, 0x04, 0xab, 0xc6, 0x7a, 0x58, 0xf3, 0xd0, 0x0f, 0xc2, 0xfd, 0xe7, 0x6d, 0x35, 0x85, 0x9a, 0xfd, 0xe1, 0xa1, 0x6a, 0x14, 0x4d, 0xda, 0xc4, 0x4d, 0x40, 0x34, 0x20, 0x01, 0x4e, 0xe9, 0xe7, 0x8f, 0x25, 0x2b, 0xae, 0x4d, 0x20, 0x44, }; static const unsigned char ecdh_brainpoolp320t1_4988_privkey[] = { 0x6e, 0xc3, 0x19, 0x89, 0x0c, 0x09, 0x75, 0x59, 0x24, 0x61, 0x01, 0xbe, 0x7c, 0xf0, 0x9f, 0x4d, 0xd8, 0x9b, 0x6b, 0x3e, 0x58, 0xc1, 0x79, 0x9f, 0x58, 0xbb, 0x18, 0x31, 0x18, 0x80, 0x9c, 0x1a, 0xd7, 0x33, 0xb6, 0xe8, 0xa6, 0x32, 0x9a, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4988_sharedsecret[] = { 0x4a, 0x7f, 0x42, 0x77, 0x65, 0x84, 0x49, 0x29, 0xa4, 0x0c, 0x11, 0x5f, 0xe7, 0xb2, 0x4c, 0x87, 0x9d, 0xc3, 0x5a, 0xa2, 0x37, 0x49, 0x3c, 0xa2, 0x97, 0x9f, 0xc6, 0x50, 0x96, 0x1e, 0xb9, 0x57, 0xcd, 0xb1, 0x37, 0xd2, 0xaa, 0x0b, 0x8a, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4988 = { .name = "ecdh_brainpoolp320t1_4988", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4988_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4988_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4988_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 2734 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4989 for ECDH, tcId is 2735 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4989_peerpubkey[] = { 0xce, 0x04, 0x99, 0x40, 0x77, 0xed, 0x06, 0x3f, 0x88, 0x0b, 0xe6, 0x79, 0xd3, 0x53, 0x20, 0xd7, 0x3c, 0x7e, 0x38, 0xe0, 0x4a, 0xc0, 0x88, 0x9d, 0x22, 0xfe, 0xb1, 0xf5, 0xca, 0xe5, 0x9b, 0x92, 0x3e, 0x6b, 0x24, 0xef, 0x79, 0xc0, 0xcd, 0xf8, 0x5b, 0xca, 0x47, 0x4f, 0x57, 0xb3, 0x16, 0x19, 0x37, 0x59, 0xbd, 0xf2, 0xd2, 0xa1, 0x1d, 0x28, 0x1d, 0x66, 0xda, 0xcb, 0x5f, 0x31, 0xf4, 0x15, 0x61, 0x2c, 0x77, 0xda, 0xf1, 0x5f, 0xbe, 0x3c, 0x01, 0x64, 0x4e, 0x78, 0xcc, 0xcc, 0xae, 0x54, }; static const unsigned char ecdh_brainpoolp320t1_4989_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4989_sharedsecret[] = { 0x38, 0x72, 0xe3, 0xe1, 0xc6, 0xd8, 0xe4, 0xbb, 0xa2, 0xa9, 0x1a, 0xc7, 0x87, 0x3c, 0xd0, 0x0b, 0xf9, 0x25, 0xb4, 0x8d, 0x17, 0x19, 0x81, 0xde, 0x9d, 0x76, 0xec, 0xa3, 0xd2, 0xff, 0x4a, 0x58, 0x3f, 0xe4, 0x59, 0xb9, 0x1e, 0xac, 0xcc, 0x7d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4989 = { .name = "ecdh_brainpoolp320t1_4989", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4989_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4989_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4989_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2735 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4990 for ECDH, tcId is 2736 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4990_peerpubkey[] = { 0x21, 0x37, 0xd5, 0xdb, 0x93, 0x82, 0xad, 0xca, 0x9c, 0xfc, 0xaf, 0x5e, 0xd2, 0x10, 0xc4, 0xea, 0x7c, 0xe0, 0x2c, 0xdc, 0xed, 0xa7, 0x5c, 0xde, 0x7b, 0xa3, 0x39, 0x58, 0xd4, 0x55, 0xae, 0x34, 0xb6, 0xa6, 0x0b, 0x51, 0x39, 0x82, 0xb2, 0x82, 0xa2, 0x67, 0x86, 0x04, 0x1b, 0x97, 0x9f, 0x8d, 0xa2, 0x3e, 0x9a, 0xdf, 0xa1, 0xe3, 0x26, 0x6c, 0xc2, 0xdb, 0x7e, 0x58, 0x17, 0x3b, 0x71, 0x8c, 0xa6, 0x87, 0xa8, 0xb8, 0x08, 0xdd, 0x99, 0xc4, 0x60, 0xc0, 0x4e, 0x9e, 0x60, 0xa1, 0xe7, 0x17, }; static const unsigned char ecdh_brainpoolp320t1_4990_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4990_sharedsecret[] = { 0xcb, 0xed, 0xc0, 0xe8, 0x66, 0x6c, 0xfb, 0x97, 0x7c, 0x4a, 0x8a, 0x48, 0x77, 0x6c, 0xe4, 0xe3, 0xd2, 0xc3, 0xcb, 0x6c, 0xea, 0xdf, 0xa1, 0x4f, 0xef, 0xad, 0x7f, 0xc4, 0x00, 0xf1, 0xba, 0x17, 0x7b, 0x0d, 0xbd, 0x59, 0x8f, 0x2a, 0x51, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4990 = { .name = "ecdh_brainpoolp320t1_4990", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4990_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4990_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4990_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2736 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4991 for ECDH, tcId is 2737 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4991_peerpubkey[] = { 0x81, 0x3f, 0x2e, 0x57, 0x7a, 0x7c, 0x62, 0xa5, 0x23, 0x07, 0xbf, 0xf7, 0x23, 0xf5, 0x0c, 0x95, 0x75, 0x68, 0xf4, 0xbd, 0x1c, 0xfa, 0x9f, 0x33, 0x87, 0xa1, 0xc8, 0x45, 0x81, 0xe0, 0xba, 0xe3, 0x90, 0xb9, 0x78, 0x4d, 0x02, 0xce, 0xf5, 0x73, 0x57, 0x12, 0x05, 0x23, 0x7c, 0x86, 0xbf, 0x8a, 0x06, 0xa8, 0xbc, 0x18, 0x07, 0xd2, 0xb9, 0x5a, 0x7f, 0x6c, 0x97, 0x45, 0x3a, 0xeb, 0x47, 0x03, 0x7a, 0x8b, 0xf6, 0xd1, 0xa7, 0xc5, 0xdc, 0x0b, 0x91, 0x38, 0x5c, 0xd4, 0x57, 0xbf, 0xe3, 0x49, }; static const unsigned char ecdh_brainpoolp320t1_4991_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4991_sharedsecret[] = { 0x04, 0x2e, 0x63, 0xe3, 0xea, 0xeb, 0xa1, 0xfa, 0x86, 0x00, 0x33, 0x25, 0x3d, 0xa4, 0xc6, 0x60, 0x8b, 0x07, 0x57, 0xe4, 0x15, 0x01, 0x95, 0xc1, 0x6e, 0x8c, 0x16, 0xdf, 0x98, 0x01, 0x47, 0x9c, 0x1b, 0x98, 0xa5, 0x42, 0xae, 0x51, 0x2b, 0x7a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4991 = { .name = "ecdh_brainpoolp320t1_4991", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4991_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4991_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4991_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2737 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4992 for ECDH, tcId is 2738 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4992_peerpubkey[] = { 0x36, 0x98, 0xae, 0x9c, 0xd0, 0x74, 0x79, 0x65, 0x84, 0xbe, 0xd1, 0x0e, 0xff, 0xce, 0xde, 0x9f, 0xd3, 0xf7, 0x87, 0x3e, 0xbe, 0x2a, 0xa3, 0x2c, 0x7c, 0x3d, 0x16, 0xcd, 0x33, 0x5a, 0x31, 0x67, 0x85, 0xb0, 0x45, 0x7f, 0x70, 0x16, 0xab, 0x7b, 0x7c, 0x3e, 0xb0, 0xfb, 0x15, 0x9c, 0x39, 0x67, 0xda, 0x43, 0x05, 0xd2, 0xec, 0x0c, 0x5b, 0xbe, 0x6b, 0xa8, 0xfd, 0x64, 0xe2, 0xa6, 0x38, 0xaf, 0x52, 0xfd, 0x8d, 0x2b, 0x3b, 0x71, 0x65, 0x40, 0x3f, 0xd6, 0x18, 0x95, 0x18, 0xf2, 0x7f, 0x1b, }; static const unsigned char ecdh_brainpoolp320t1_4992_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4992_sharedsecret[] = { 0x0d, 0xa0, 0xf0, 0x46, 0xd7, 0x0c, 0x15, 0x6a, 0x52, 0xd4, 0xae, 0x26, 0x84, 0x8f, 0xba, 0xe6, 0xf7, 0xaf, 0x8c, 0x9a, 0x8b, 0xbc, 0x48, 0x45, 0x22, 0x09, 0xf5, 0x2f, 0x59, 0x20, 0x7f, 0xb8, 0xe6, 0xa8, 0x92, 0x5d, 0xaf, 0xe9, 0x7b, 0x07, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4992 = { .name = "ecdh_brainpoolp320t1_4992", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4992_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4992_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4992_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2738 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4993 for ECDH, tcId is 2739 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4993_peerpubkey[] = { 0x20, 0xf4, 0x0a, 0xf7, 0xb7, 0x2a, 0x57, 0x5b, 0x1d, 0xd2, 0x43, 0x67, 0x50, 0x8b, 0x8b, 0xc8, 0x41, 0x20, 0xf7, 0x54, 0xaa, 0x41, 0xce, 0x55, 0xb4, 0x18, 0x87, 0x7a, 0x7f, 0x62, 0xfe, 0xe7, 0xec, 0x67, 0xd7, 0x1f, 0x76, 0xed, 0x99, 0x4b, 0x95, 0x86, 0x93, 0x9b, 0x9c, 0xc2, 0xd2, 0x63, 0xae, 0x42, 0x3a, 0x81, 0x66, 0xd4, 0x5f, 0xf5, 0xa6, 0xd7, 0xb5, 0x7d, 0xa8, 0x5e, 0xf7, 0xe0, 0x7c, 0x7b, 0x1d, 0x38, 0x45, 0x99, 0x0f, 0xf9, 0x2f, 0xf5, 0xd2, 0x74, 0x90, 0x88, 0x9b, 0x85, }; static const unsigned char ecdh_brainpoolp320t1_4993_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4993_sharedsecret[] = { 0xa2, 0xac, 0x7d, 0xff, 0xad, 0x0c, 0x51, 0x30, 0x7a, 0x6f, 0x91, 0x77, 0x83, 0x85, 0x42, 0x8d, 0x89, 0x0a, 0xc4, 0xab, 0x43, 0x51, 0xda, 0xe1, 0xd3, 0x8c, 0x7c, 0x04, 0x8e, 0x92, 0x5f, 0xeb, 0x90, 0xb4, 0xa9, 0xa3, 0x0b, 0xf7, 0xce, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4993 = { .name = "ecdh_brainpoolp320t1_4993", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4993_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4993_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4993_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2739 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4994 for ECDH, tcId is 2740 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4994_peerpubkey[] = { 0x96, 0x2b, 0x53, 0x7b, 0x38, 0x07, 0xc1, 0x09, 0x04, 0x15, 0x2a, 0xd7, 0x5f, 0x71, 0x1f, 0x5e, 0x0d, 0x96, 0x8b, 0xd7, 0xb6, 0xbc, 0x18, 0xf6, 0x4d, 0xc8, 0xb8, 0xf1, 0x05, 0x0b, 0x43, 0x24, 0x93, 0x02, 0x5d, 0x3d, 0x96, 0x1d, 0x4c, 0xd4, 0x55, 0x89, 0xdf, 0xdc, 0xc5, 0x3a, 0x6e, 0x6e, 0x28, 0x04, 0x87, 0xf0, 0x0a, 0xc2, 0xe2, 0x6c, 0x83, 0xc0, 0xfd, 0x7c, 0x4f, 0xe3, 0x6c, 0xf9, 0x2b, 0x26, 0xad, 0x54, 0x1c, 0x8f, 0xe2, 0x6d, 0x3b, 0x78, 0x3c, 0xd1, 0x78, 0x0f, 0xa0, 0x2c, }; static const unsigned char ecdh_brainpoolp320t1_4994_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4994_sharedsecret[] = { 0x74, 0x7a, 0x5e, 0x4b, 0xbf, 0xda, 0xb9, 0x22, 0x86, 0xde, 0x6f, 0x52, 0x95, 0xfd, 0xba, 0x05, 0x6e, 0x43, 0x24, 0x5b, 0x02, 0x21, 0xac, 0xd1, 0x50, 0xd8, 0xa0, 0xf1, 0x4e, 0xac, 0x60, 0x6b, 0xad, 0xcd, 0x14, 0x64, 0xc5, 0x45, 0x19, 0x1d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4994 = { .name = "ecdh_brainpoolp320t1_4994", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4994_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4994_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4994_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 2740 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4995 for ECDH, tcId is 2741 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4995_peerpubkey[] = { 0x1d, 0x6f, 0x53, 0x21, 0xfa, 0xec, 0x52, 0x8c, 0x2a, 0x88, 0xa7, 0xbf, 0xb0, 0x0b, 0x9e, 0xf3, 0x23, 0x4b, 0xda, 0x42, 0xed, 0xfe, 0x01, 0x97, 0x5d, 0x97, 0x68, 0x6a, 0xab, 0x3c, 0x47, 0x49, 0x1f, 0xb2, 0xe7, 0x6a, 0x95, 0x62, 0x18, 0xc2, 0x6d, 0x90, 0x38, 0xd7, 0x08, 0xf5, 0x25, 0xa1, 0xf8, 0xef, 0xb8, 0x62, 0xb3, 0x04, 0x7a, 0x6c, 0xea, 0x2e, 0x64, 0x10, 0xcf, 0x46, 0x7e, 0x03, 0x61, 0x2b, 0x89, 0x5a, 0x69, 0x81, 0x71, 0x87, 0x84, 0x85, 0xd3, 0x47, 0x51, 0xef, 0x6b, 0x67, }; static const unsigned char ecdh_brainpoolp320t1_4995_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4995_sharedsecret[] = { 0x1b, 0x48, 0x5a, 0x1e, 0x27, 0xdb, 0x97, 0x54, 0x41, 0x42, 0x92, 0xae, 0x56, 0xf3, 0x3b, 0x00, 0x6a, 0x02, 0xd2, 0xd3, 0x54, 0x7e, 0x51, 0xc6, 0x2f, 0xb2, 0xc5, 0x01, 0xde, 0x3e, 0xb7, 0xbb, 0xec, 0x58, 0xb8, 0x6e, 0x65, 0x50, 0x2f, 0xfd, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4995 = { .name = "ecdh_brainpoolp320t1_4995", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4995_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4995_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4995_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2741 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4996 for ECDH, tcId is 2742 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4996_peerpubkey[] = { 0x67, 0xa4, 0xbd, 0xdf, 0x21, 0x11, 0x3d, 0x42, 0x00, 0x5e, 0x4c, 0x05, 0xf4, 0xa1, 0xb6, 0x07, 0x4c, 0xfe, 0x1a, 0x1e, 0x42, 0xda, 0xbc, 0xfe, 0x0c, 0xd0, 0x22, 0xf6, 0xd8, 0xb2, 0xd9, 0x07, 0xeb, 0xe3, 0x5e, 0xf5, 0x8d, 0x9c, 0x1f, 0xef, 0xaf, 0x05, 0x35, 0x5b, 0x75, 0x6f, 0xed, 0x75, 0x8c, 0xdc, 0x35, 0xcc, 0xdb, 0xe7, 0xae, 0x59, 0x26, 0x0b, 0xef, 0x3d, 0x57, 0x00, 0x8c, 0x42, 0x42, 0x8f, 0xec, 0x55, 0xde, 0xe1, 0xab, 0xbf, 0xdf, 0xd5, 0xbb, 0x6d, 0x40, 0x26, 0x76, 0x88, }; static const unsigned char ecdh_brainpoolp320t1_4996_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4996_sharedsecret[] = { 0x3d, 0x66, 0xe2, 0x88, 0x13, 0x01, 0x4e, 0x75, 0x46, 0x86, 0x5a, 0x88, 0xeb, 0x6c, 0xa6, 0x3d, 0x7e, 0x47, 0x02, 0x78, 0xe5, 0xc1, 0xc4, 0xd9, 0x21, 0x50, 0xd3, 0x03, 0x60, 0x04, 0xf1, 0x60, 0xaf, 0x6f, 0xb2, 0x60, 0xbe, 0x3e, 0x41, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4996 = { .name = "ecdh_brainpoolp320t1_4996", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4996_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4996_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4996_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2742 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4997 for ECDH, tcId is 2743 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4997_peerpubkey[] = { 0x16, 0x95, 0x59, 0x75, 0x94, 0xb4, 0x9f, 0x62, 0xb1, 0x55, 0x61, 0x5f, 0x8d, 0x3a, 0xa3, 0x33, 0x5e, 0xdc, 0xe8, 0xf2, 0x8c, 0xce, 0x65, 0xa2, 0x0d, 0x6c, 0xe2, 0x94, 0x6d, 0x6a, 0x94, 0xd2, 0x25, 0xde, 0x01, 0x44, 0xd0, 0xe7, 0xf6, 0xa4, 0xab, 0x27, 0x23, 0xfa, 0xe6, 0x82, 0x5d, 0xe2, 0xee, 0x65, 0x25, 0x76, 0xb6, 0xbd, 0xf5, 0x36, 0xf0, 0xc7, 0x7f, 0x58, 0xa3, 0x68, 0x40, 0x82, 0xd4, 0x81, 0x14, 0xf6, 0xa9, 0xfa, 0x86, 0x9e, 0x75, 0x79, 0x8f, 0xac, 0x2a, 0x3c, 0x7d, 0x61, }; static const unsigned char ecdh_brainpoolp320t1_4997_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4997_sharedsecret[] = { 0x3b, 0xa6, 0x8b, 0x54, 0x00, 0x37, 0xbf, 0x26, 0xef, 0x5c, 0x34, 0xa2, 0x38, 0x53, 0xa2, 0x64, 0x0a, 0xe0, 0x18, 0xd2, 0x2f, 0xea, 0x51, 0xd2, 0x09, 0xef, 0xbc, 0x7f, 0x75, 0xa3, 0x81, 0x2f, 0xf8, 0xa4, 0xab, 0x96, 0x05, 0x83, 0x4c, 0x06, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4997 = { .name = "ecdh_brainpoolp320t1_4997", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4997_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4997_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4997_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2743 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4998 for ECDH, tcId is 2744 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4998_peerpubkey[] = { 0x02, 0xcd, 0xb8, 0xf0, 0x1f, 0xb8, 0x13, 0xd0, 0x2e, 0x1a, 0xcc, 0xad, 0x90, 0x40, 0xd6, 0x1d, 0x82, 0xbf, 0x5b, 0x21, 0xa6, 0xda, 0x3c, 0x5d, 0x96, 0x42, 0x82, 0x93, 0x96, 0x53, 0x31, 0x58, 0x8d, 0x51, 0xf3, 0x05, 0xa4, 0xf9, 0x91, 0x54, 0x4a, 0x6b, 0xbb, 0x17, 0xb4, 0x1b, 0x39, 0xd0, 0x6a, 0x28, 0x31, 0x6c, 0x93, 0x5d, 0xeb, 0xb3, 0x83, 0xe2, 0xee, 0x45, 0x98, 0xf4, 0x9a, 0x0d, 0x0b, 0x36, 0x9c, 0x36, 0x21, 0xa6, 0xe4, 0xf4, 0x16, 0x79, 0x59, 0x99, 0x67, 0x7c, 0x95, 0xcb, }; static const unsigned char ecdh_brainpoolp320t1_4998_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4998_sharedsecret[] = { 0x5d, 0xaa, 0x11, 0x5f, 0xac, 0xdb, 0x8f, 0x97, 0x61, 0xfb, 0x60, 0xcb, 0x6f, 0xf2, 0xd9, 0x8f, 0x94, 0x74, 0xa5, 0x41, 0x28, 0x94, 0x2c, 0x18, 0xb9, 0x4a, 0xd6, 0x5a, 0xdf, 0x17, 0x2c, 0x0c, 0x3a, 0xa9, 0xbc, 0xec, 0xaf, 0xa0, 0x24, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4998 = { .name = "ecdh_brainpoolp320t1_4998", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4998_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4998_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4998_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2744 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 4999 for ECDH, tcId is 2745 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_4999_peerpubkey[] = { 0xcc, 0xf4, 0x6e, 0xce, 0xe9, 0x65, 0x56, 0xf3, 0xad, 0x3a, 0x57, 0x00, 0x1b, 0x96, 0xa6, 0x7b, 0x0b, 0x3f, 0xa6, 0xc1, 0x6f, 0x50, 0x26, 0x16, 0xd4, 0x88, 0x11, 0xc1, 0x98, 0x97, 0x80, 0xc0, 0xd6, 0x83, 0x0e, 0xa5, 0x17, 0x78, 0x57, 0x6b, 0x47, 0xf5, 0x57, 0x7b, 0x58, 0xf7, 0x15, 0x76, 0xa1, 0x2d, 0x14, 0x83, 0x37, 0x0c, 0x17, 0x93, 0x13, 0x44, 0xb6, 0x8a, 0x91, 0x49, 0x3e, 0x44, 0xe3, 0xba, 0xa2, 0x35, 0xfb, 0x7e, 0x4e, 0x26, 0x78, 0xa5, 0x26, 0x15, 0x72, 0x8e, 0xd7, 0xb1, }; static const unsigned char ecdh_brainpoolp320t1_4999_privkey[] = { 0x9b, 0xfe, 0x24, 0x80, 0xd1, 0xe0, 0x3e, 0x73, 0xd2, 0x96, 0x43, 0x08, 0x07, 0xec, 0x16, 0xb8, 0x08, 0xf0, 0xa2, 0x00, 0xe5, 0xaf, 0x35, 0x72, 0x87, 0xdc, 0x28, 0x59, 0xbf, 0xdc, 0x9a, 0x89, 0xe0, 0x6b, 0xf7, 0x7c, 0x9b, 0xb7, 0xfe, 0xdb, }; static const unsigned char ecdh_brainpoolp320t1_4999_sharedsecret[] = { 0xba, 0xf4, 0x42, 0xa8, 0x92, 0x18, 0x6d, 0xb5, 0x59, 0xc6, 0x99, 0x29, 0xc3, 0xfa, 0x4a, 0x2c, 0xee, 0xd8, 0xff, 0xd0, 0xd2, 0x94, 0x55, 0x70, 0xd6, 0x83, 0xaa, 0x07, 0xf5, 0x68, 0x62, 0x32, 0xcd, 0x6c, 0x3f, 0x20, 0x8d, 0xb9, 0x3d, 0x84, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_4999 = { .name = "ecdh_brainpoolp320t1_4999", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_4999_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_4999_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_4999_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 2745 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5000 for ECDH, tcId is 2746 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5000_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5000_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp320t1_5000_sharedsecret[] = { 0x31, 0xc0, 0x28, 0x35, 0x05, 0x2e, 0x6a, 0x04, 0x44, 0x8a, 0x10, 0xb2, 0xb8, 0xaf, 0x64, 0x27, 0x5a, 0xb7, 0x8a, 0x4b, 0x66, 0x75, 0x6d, 0xdf, 0x72, 0xd9, 0x32, 0x4b, 0x0b, 0x91, 0x50, 0x21, 0xeb, 0xf0, 0xc8, 0xf3, 0x3a, 0xa3, 0x34, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5000 = { .name = "ecdh_brainpoolp320t1_5000", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5000_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5000_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5000_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2746 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5001 for ECDH, tcId is 2747 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5001_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5001_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320t1_5001_sharedsecret[] = { 0xcb, 0xa4, 0x35, 0xa0, 0xd8, 0x0b, 0xb1, 0x8c, 0xfa, 0xbe, 0xa8, 0x06, 0xf8, 0x85, 0xb0, 0xc9, 0x53, 0x19, 0x20, 0xf6, 0x4c, 0xed, 0xf6, 0xe4, 0x65, 0xbe, 0xa8, 0x9d, 0xb4, 0x62, 0xb1, 0x83, 0xc4, 0x41, 0xc3, 0x4c, 0x7d, 0x97, 0x6b, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5001 = { .name = "ecdh_brainpoolp320t1_5001", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5001_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5001_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5001_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2747 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5002 for ECDH, tcId is 2748 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5002_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5002_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5002_sharedsecret[] = { 0x8e, 0xf6, 0xf5, 0x0f, 0x1d, 0x12, 0x04, 0xf8, 0x20, 0xf1, 0xd7, 0xd0, 0x5b, 0xa0, 0x66, 0x84, 0xf9, 0x22, 0xbc, 0xa0, 0x7f, 0x9a, 0xf9, 0xce, 0x48, 0x20, 0x84, 0x97, 0x91, 0x59, 0x5a, 0x38, 0x38, 0x5e, 0xa8, 0x86, 0x14, 0x59, 0x9e, 0xc9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5002 = { .name = "ecdh_brainpoolp320t1_5002", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5002_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5002_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5002_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2748 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5003 for ECDH, tcId is 2749 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5003_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5003_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp320t1_5003_sharedsecret[] = { 0x18, 0xc6, 0xcf, 0x3f, 0x84, 0x18, 0x68, 0x38, 0x0e, 0xe5, 0x33, 0xfc, 0x70, 0xd9, 0xee, 0x02, 0x49, 0x55, 0x47, 0xe6, 0x77, 0x3d, 0x1a, 0xda, 0xd8, 0x16, 0xf3, 0x67, 0xa4, 0xfe, 0x01, 0x44, 0x09, 0x4f, 0xc7, 0x3a, 0x26, 0x92, 0xdc, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5003 = { .name = "ecdh_brainpoolp320t1_5003", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5003_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5003_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5003_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2749 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5004 for ECDH, tcId is 2750 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5004_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5004_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5004_sharedsecret[] = { 0x13, 0xf6, 0x36, 0x56, 0x3f, 0x9b, 0xf7, 0x4a, 0x28, 0x4d, 0xbb, 0x6f, 0xbb, 0xc9, 0x67, 0x44, 0x37, 0x47, 0x3a, 0x3b, 0x18, 0x00, 0x76, 0x25, 0xa0, 0xc9, 0xe1, 0x96, 0xe5, 0x48, 0x46, 0x3d, 0x6c, 0x5e, 0xca, 0xaf, 0xc8, 0xe9, 0xae, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5004 = { .name = "ecdh_brainpoolp320t1_5004", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5004_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5004_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5004_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2750 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5005 for ECDH, tcId is 2751 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5005_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5005_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe8, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320t1_5005_sharedsecret[] = { 0x7c, 0x28, 0x4b, 0xf4, 0x0b, 0xc8, 0x8e, 0xf5, 0xa1, 0x94, 0x4f, 0x87, 0x1d, 0xe3, 0xbe, 0x7f, 0x28, 0xcb, 0x00, 0x6c, 0x5e, 0x23, 0xaf, 0x6f, 0x47, 0x94, 0x56, 0x40, 0x3f, 0x74, 0x04, 0x95, 0xe0, 0x15, 0x7c, 0x7e, 0x29, 0x21, 0x85, 0x9d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5005 = { .name = "ecdh_brainpoolp320t1_5005", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5005_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5005_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5005_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2751 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5006 for ECDH, tcId is 2752 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5006_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5006_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x81, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320t1_5006_sharedsecret[] = { 0x03, 0x3b, 0x7c, 0x9c, 0x29, 0x6b, 0x90, 0x63, 0xc1, 0x97, 0x46, 0xa0, 0x26, 0x69, 0xb4, 0x00, 0xb9, 0x5d, 0x50, 0x05, 0x2c, 0x60, 0x3d, 0x25, 0x03, 0xf5, 0x99, 0x83, 0x34, 0xa8, 0x4f, 0x1a, 0xbd, 0xe8, 0xdf, 0xf3, 0x2c, 0xca, 0xf5, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5006 = { .name = "ecdh_brainpoolp320t1_5006", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5006_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5006_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5006_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2752 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5007 for ECDH, tcId is 2753 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5007_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5007_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x89, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320t1_5007_sharedsecret[] = { 0xc4, 0x5a, 0x8c, 0x78, 0xe5, 0x16, 0x19, 0x61, 0xfc, 0x84, 0xe6, 0x6c, 0x80, 0x46, 0xc8, 0xd4, 0x59, 0x9b, 0x27, 0x22, 0x5c, 0xdd, 0x4e, 0xbe, 0x24, 0x62, 0xc8, 0x2d, 0x89, 0x06, 0xbb, 0x3c, 0xf6, 0xe8, 0xa6, 0xe5, 0xcd, 0xdc, 0xb6, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5007 = { .name = "ecdh_brainpoolp320t1_5007", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5007_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5007_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5007_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2753 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5008 for ECDH, tcId is 2754 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5008_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5008_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5a, 0x44, 0xc5, 0x93, 0x11, }; static const unsigned char ecdh_brainpoolp320t1_5008_sharedsecret[] = { 0x6f, 0xbb, 0x8b, 0xb4, 0x3e, 0xcc, 0xc8, 0x6d, 0xc1, 0x3b, 0xf7, 0xdb, 0xc2, 0x65, 0x09, 0x45, 0x33, 0x41, 0x76, 0xfc, 0x5f, 0x13, 0x03, 0xa1, 0x05, 0x5f, 0x9f, 0x4c, 0xee, 0x38, 0xd7, 0x87, 0x47, 0x65, 0x7e, 0x38, 0x84, 0x6e, 0x25, 0xe9, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5008 = { .name = "ecdh_brainpoolp320t1_5008", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5008_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5008_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5008_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2754 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5009 for ECDH, tcId is 2755 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5009_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5009_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0x33, }; static const unsigned char ecdh_brainpoolp320t1_5009_sharedsecret[] = { 0x14, 0x7c, 0x9b, 0x3b, 0x48, 0x80, 0xf7, 0xf6, 0xd4, 0xeb, 0x96, 0xf8, 0x91, 0x67, 0x2c, 0xb0, 0xd0, 0x9a, 0x6b, 0xef, 0x15, 0x57, 0x4a, 0xb2, 0xa4, 0x3f, 0x09, 0xae, 0x7f, 0x80, 0x90, 0xcd, 0xfa, 0x81, 0x51, 0x7e, 0x09, 0x8d, 0xac, 0x1e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5009 = { .name = "ecdh_brainpoolp320t1_5009", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5009_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5009_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5009_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2755 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5010 for ECDH, tcId is 2756 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5010_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5010_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xb3, }; static const unsigned char ecdh_brainpoolp320t1_5010_sharedsecret[] = { 0x47, 0xf4, 0x41, 0x22, 0x78, 0xed, 0xc5, 0x1b, 0xa0, 0x63, 0x58, 0x53, 0xa8, 0x2e, 0x03, 0x3b, 0x16, 0x4a, 0x68, 0x19, 0x4d, 0x4c, 0x3e, 0x24, 0x92, 0x01, 0x74, 0x32, 0xda, 0xaa, 0x8c, 0x35, 0x68, 0x4c, 0x34, 0x3f, 0x70, 0x1f, 0x6b, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5010 = { .name = "ecdh_brainpoolp320t1_5010", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5010_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5010_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5010_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2756 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5011 for ECDH, tcId is 2757 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5011_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5011_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x92, 0xf3, }; static const unsigned char ecdh_brainpoolp320t1_5011_sharedsecret[] = { 0xa6, 0x4c, 0x2b, 0x07, 0x5a, 0xbf, 0x44, 0x6a, 0x9b, 0xa4, 0x3f, 0x6f, 0xfc, 0xef, 0xda, 0x79, 0x58, 0x35, 0xab, 0x2e, 0x1c, 0x4d, 0x19, 0xbd, 0x9c, 0x9e, 0xde, 0x59, 0xcd, 0x9e, 0xaf, 0x9c, 0x83, 0x1a, 0x52, 0x0b, 0x1e, 0x0c, 0xe2, 0x69, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5011 = { .name = "ecdh_brainpoolp320t1_5011", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5011_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5011_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5011_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2757 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5012 for ECDH, tcId is 2758 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5012_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5012_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x03, }; static const unsigned char ecdh_brainpoolp320t1_5012_sharedsecret[] = { 0xb3, 0xb2, 0x58, 0x21, 0xac, 0x9b, 0x07, 0xc6, 0x14, 0xf6, 0xfc, 0xe7, 0xf9, 0xa1, 0xc2, 0x32, 0x5d, 0x3c, 0xbd, 0x51, 0xca, 0xc8, 0x2d, 0xad, 0xeb, 0x79, 0x03, 0x7a, 0x23, 0xbc, 0xe0, 0x3b, 0x03, 0x52, 0x40, 0x7c, 0xcd, 0x44, 0x7a, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5012 = { .name = "ecdh_brainpoolp320t1_5012", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5012_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5012_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5012_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2758 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5013 for ECDH, tcId is 2759 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5013_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5013_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0b, }; static const unsigned char ecdh_brainpoolp320t1_5013_sharedsecret[] = { 0x59, 0x4a, 0xeb, 0xd8, 0x01, 0x07, 0x57, 0xd1, 0x5f, 0x79, 0x63, 0x1a, 0xf0, 0xe4, 0x81, 0x31, 0x03, 0x59, 0xe0, 0x08, 0x6e, 0x4e, 0x98, 0x8a, 0xb5, 0x52, 0x5a, 0x93, 0x03, 0xaa, 0xf8, 0x00, 0xcd, 0x4e, 0xf1, 0x23, 0xce, 0xb6, 0x88, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5013 = { .name = "ecdh_brainpoolp320t1_5013", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5013_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5013_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5013_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2759 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5014 for ECDH, tcId is 2760 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5014_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5014_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0e, }; static const unsigned char ecdh_brainpoolp320t1_5014_sharedsecret[] = { 0x31, 0xc0, 0x28, 0x35, 0x05, 0x2e, 0x6a, 0x04, 0x44, 0x8a, 0x10, 0xb2, 0xb8, 0xaf, 0x64, 0x27, 0x5a, 0xb7, 0x8a, 0x4b, 0x66, 0x75, 0x6d, 0xdf, 0x72, 0xd9, 0x32, 0x4b, 0x0b, 0x91, 0x50, 0x21, 0xeb, 0xf0, 0xc8, 0xf3, 0x3a, 0xa3, 0x34, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5014 = { .name = "ecdh_brainpoolp320t1_5014", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5014_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5014_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5014_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2760 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5015 for ECDH, tcId is 2761 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5015_peerpubkey[] = { 0xaa, 0xc3, 0x56, 0x6c, 0x8e, 0x49, 0x4d, 0x7d, 0x52, 0x97, 0x6b, 0x10, 0x7a, 0x9b, 0x90, 0x58, 0xe6, 0x5e, 0x54, 0x1c, 0x01, 0xda, 0xb5, 0xd4, 0xbb, 0xa9, 0x06, 0x58, 0xa6, 0x55, 0x89, 0x0f, 0xd2, 0xc4, 0x8d, 0x29, 0xf0, 0xb9, 0x72, 0x25, 0x39, 0x55, 0xfd, 0xbd, 0x31, 0xc6, 0x32, 0x8d, 0xf2, 0xe8, 0x93, 0xfe, 0x5b, 0x40, 0x1d, 0xdc, 0x52, 0x9c, 0x4e, 0xd7, 0x0a, 0x9c, 0x46, 0xba, 0xdb, 0x80, 0x84, 0x32, 0x77, 0xb8, 0xf9, 0x87, 0x45, 0x38, 0x31, 0x24, 0x60, 0xd5, 0x4d, 0xfd, }; static const unsigned char ecdh_brainpoolp320t1_5015_privkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa5, 0xb6, 0x8f, 0x12, 0xa3, 0x2d, 0x48, 0x2e, 0xc7, 0xee, 0x86, 0x58, 0xe9, 0x86, 0x91, 0x55, 0x5b, 0x44, 0xc5, 0x93, 0x0f, }; static const unsigned char ecdh_brainpoolp320t1_5015_sharedsecret[] = { 0xc7, 0xe6, 0x7d, 0xc2, 0xf6, 0x4d, 0x0e, 0x66, 0x84, 0x17, 0x77, 0xa6, 0xf0, 0x14, 0x34, 0x0b, 0x8a, 0x63, 0xf4, 0x20, 0x24, 0xc6, 0xcd, 0x5a, 0xc5, 0xe1, 0x0c, 0xec, 0x3b, 0x02, 0xa2, 0xd0, 0x50, 0xc2, 0xfd, 0x8f, 0x07, 0x8a, 0x75, 0x4f, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5015 = { .name = "ecdh_brainpoolp320t1_5015", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5015_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5015_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5015_sharedsecret, .sharedsecretlen = 40, .result = 1, .comment = "edge case private key, tcId is 2761 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5016 for ECDH, tcId is 2762 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5016_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5016_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5016 = { .name = "ecdh_brainpoolp320t1_5016", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5016_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5016_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2762 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5017 for ECDH, tcId is 2763 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5017_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320t1_5017_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5017 = { .name = "ecdh_brainpoolp320t1_5017", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5017_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5017_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2763 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5018 for ECDH, tcId is 2764 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5018_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320t1_5018_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5018 = { .name = "ecdh_brainpoolp320t1_5018", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5018_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5018_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2764 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5019 for ECDH, tcId is 2765 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5019_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320t1_5019_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5019 = { .name = "ecdh_brainpoolp320t1_5019", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5019_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5019_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2765 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5020 for ECDH, tcId is 2766 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5020_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5020_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5020 = { .name = "ecdh_brainpoolp320t1_5020", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5020_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5020_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2766 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5021 for ECDH, tcId is 2767 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5021_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320t1_5021_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5021 = { .name = "ecdh_brainpoolp320t1_5021", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5021_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5021_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2767 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5022 for ECDH, tcId is 2768 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5022_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320t1_5022_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5022 = { .name = "ecdh_brainpoolp320t1_5022", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5022_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5022_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2768 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5023 for ECDH, tcId is 2769 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5023_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320t1_5023_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5023 = { .name = "ecdh_brainpoolp320t1_5023", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5023_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5023_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2769 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5024 for ECDH, tcId is 2770 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5024_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5024_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5024 = { .name = "ecdh_brainpoolp320t1_5024", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5024_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5024_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2770 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5025 for ECDH, tcId is 2771 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5025_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320t1_5025_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5025 = { .name = "ecdh_brainpoolp320t1_5025", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5025_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5025_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2771 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5026 for ECDH, tcId is 2772 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5026_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320t1_5026_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5026 = { .name = "ecdh_brainpoolp320t1_5026", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5026_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5026_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2772 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5027 for ECDH, tcId is 2773 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5027_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320t1_5027_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5027 = { .name = "ecdh_brainpoolp320t1_5027", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5027_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5027_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2773 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5028 for ECDH, tcId is 2774 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5028_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5028_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5028 = { .name = "ecdh_brainpoolp320t1_5028", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5028_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5028_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2774 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5029 for ECDH, tcId is 2775 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5029_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp320t1_5029_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5029 = { .name = "ecdh_brainpoolp320t1_5029", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5029_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5029_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2775 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5030 for ECDH, tcId is 2776 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5030_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x26, }; static const unsigned char ecdh_brainpoolp320t1_5030_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5030 = { .name = "ecdh_brainpoolp320t1_5030", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5030_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5030_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2776 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5031 for ECDH, tcId is 2777 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5031_peerpubkey[] = { 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, 0xd3, 0x5e, 0x47, 0x20, 0x36, 0xbc, 0x4f, 0xb7, 0xe1, 0x3c, 0x78, 0x5e, 0xd2, 0x01, 0xe0, 0x65, 0xf9, 0x8f, 0xcf, 0xa6, 0xf6, 0xf4, 0x0d, 0xef, 0x4f, 0x92, 0xb9, 0xec, 0x78, 0x93, 0xec, 0x28, 0xfc, 0xd4, 0x12, 0xb1, 0xf1, 0xb3, 0x2e, 0x27, }; static const unsigned char ecdh_brainpoolp320t1_5031_privkey[] = { 0x06, 0x57, 0x26, 0x0a, 0xcc, 0x89, 0x7a, 0xdc, 0x69, 0xb0, 0xaa, 0x87, 0x11, 0x63, 0x79, 0x84, 0x2a, 0x39, 0x5b, 0x66, 0x1a, 0xbc, 0x1b, 0xef, 0xad, 0x47, 0x87, 0xcf, 0x96, 0xa2, 0xd7, 0x02, 0x22, 0x0f, 0x2d, 0xa2, 0xb7, 0xf7, 0x62, 0xaa, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5031 = { .name = "ecdh_brainpoolp320t1_5031", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5031_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5031_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2777 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5032 for ECDH, tcId is 2779 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5032_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xec, }; static const unsigned char ecdh_brainpoolp320t1_5032_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5032 = { .name = "ecdh_brainpoolp320t1_5032", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5032_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5032_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2779 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5033 for ECDH, tcId is 2780 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5033_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp320t1_5033_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5033 = { .name = "ecdh_brainpoolp320t1_5033", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5033_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5033_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2780 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5034 for ECDH, tcId is 2783 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5034_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5034_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5034_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5034 = { .name = "ecdh_brainpoolp320t1_5034", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5034_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5034_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5034_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 1, tcId is 2783 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5035 for ECDH, tcId is 2784 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5035_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5035_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5035_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5035 = { .name = "ecdh_brainpoolp320t1_5035", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5035_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5035_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5035_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "order = 410618568360611413177547474029944166748205379750040840301822434183392856467013123528027, tcId is 2784 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5036 for ECDH, tcId is 2785 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5036_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5036_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5036_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5036 = { .name = "ecdh_brainpoolp320t1_5036", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5036_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5036_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5036_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator = (0,0), tcId is 2785 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5037 for ECDH, tcId is 2786 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5037_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5037_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5037_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5037 = { .name = "ecdh_brainpoolp320t1_5037", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5037_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5037_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5037_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "generator not on curve, tcId is 2786 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5038 for ECDH, tcId is 2789 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5038_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5038_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5038_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5038 = { .name = "ecdh_brainpoolp320t1_5038", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5038_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5038_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5038_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = 2, tcId is 2789 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5039 for ECDH, tcId is 2791 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5039_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5039_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5039_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5039 = { .name = "ecdh_brainpoolp320t1_5039", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5039_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5039_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5039_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "cofactor = None, tcId is 2791 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5040 for ECDH, tcId is 2796 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5040_peerpubkey[] = { 0x83, 0xde, 0xfe, 0xcd, 0x61, 0x0d, 0x44, 0xb0, 0x1e, 0x5d, 0xfa, 0x43, 0x70, 0x34, 0x74, 0x45, 0xd4, 0x3b, 0xf2, 0x89, 0x6a, 0x3f, 0x38, 0x36, 0xbe, 0x16, 0x17, 0xab, 0xcf, 0x69, 0xad, 0xc1, 0x85, 0x75, 0x99, 0x03, 0xc9, 0x32, 0x75, 0xa0, 0x95, 0x7e, 0x2f, 0xfc, 0x79, 0xcb, 0x4f, 0x96, 0x49, 0x27, 0x94, 0x65, 0xb7, 0xa3, 0x3e, 0x6b, 0x31, 0x3c, 0x4f, 0x43, 0xaf, 0x13, 0xfd, 0x7b, 0x61, 0x96, 0x39, 0x5e, 0x1d, 0x47, 0x68, 0x26, 0x8b, 0x7e, 0xd1, 0xb6, 0x24, 0x96, 0x20, 0xea, }; static const unsigned char ecdh_brainpoolp320t1_5040_privkey[] = { 0x2f, 0x20, 0x7c, 0x43, 0x1c, 0x6e, 0xd8, 0x35, 0x2c, 0x56, 0x50, 0x25, 0x0c, 0xf8, 0x5f, 0xf1, 0x88, 0x13, 0x4c, 0x9a, 0xa2, 0x83, 0xdc, 0x73, 0xe6, 0x91, 0x3f, 0x8e, 0x26, 0x94, 0x89, 0x9d, 0xb3, 0x59, 0x6a, 0x3d, 0x74, 0xb1, 0x56, 0x37, }; static const unsigned char ecdh_brainpoolp320t1_5040_sharedsecret[] = { 0x1e, 0xc3, 0xbf, 0xbc, 0xd6, 0x2f, 0x68, 0x74, 0x66, 0x0a, 0x7f, 0x62, 0xdc, 0xbb, 0xbd, 0xbf, 0x39, 0x9e, 0x34, 0x3d, 0x85, 0x2a, 0x5a, 0x54, 0xc6, 0xe5, 0x09, 0x93, 0xbc, 0xaf, 0xcd, 0xe8, 0x14, 0x99, 0x3d, 0x54, 0x2b, 0xde, 0xab, 0x12, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5040 = { .name = "ecdh_brainpoolp320t1_5040", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5040_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5040_privkey, .privkeylen = 40, .sharedsecret = ecdh_brainpoolp320t1_5040_sharedsecret, .sharedsecretlen = 40, .result = 0, .comment = "a = 0, tcId is 2796 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5041 for ECDH, tcId is 2806 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5041_peerpubkey[] = { 0xb0, 0x18, 0x52, 0x8b, 0x7e, 0xcf, 0x6c, 0x6b, 0x93, 0xdb, 0x9a, 0x73, 0x2a, 0x98, 0x55, 0xb4, 0xcc, 0x96, 0xd4, 0x9a, 0x6c, 0x99, 0xcf, 0xc1, 0x58, 0x85, 0x57, 0xbf, 0x73, 0x28, 0xb9, 0xdb, 0xfb, 0x77, 0xea, 0xb0, 0x0d, 0xd3, 0xf5, 0x25, 0x67, 0x8d, 0xa9, 0x03, 0xf7, 0x9b, 0xf8, 0xa8, 0x6f, 0xa1, 0xbc, 0xb1, 0x12, 0xa3, 0x14, 0x1b, 0x82, 0x20, 0x36, 0xa8, 0xd6, 0x46, 0x2f, 0xcb, 0x10, 0x80, 0xfe, 0x72, 0x4d, 0x9c, 0x5a, 0x93, 0x9a, 0xe7, 0x39, 0xf8, 0x4b, 0xc9, 0x36, 0x03, }; static const unsigned char ecdh_brainpoolp320t1_5041_privkey[] = { 0x83, 0xff, 0xee, 0x80, 0x35, 0x95, 0x4e, 0x92, 0xb6, 0x33, 0xbe, 0x34, 0xa9, 0x99, 0xd0, 0xeb, 0xe6, 0xaf, 0x72, 0x5f, 0x64, 0x3d, 0xb2, 0x3a, 0x1e, 0x56, 0xe6, 0xaa, 0x07, 0xca, 0x7a, 0x08, 0xff, 0x60, 0x72, 0x6d, 0x42, 0x8a, 0x60, 0x1e, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5041 = { .name = "ecdh_brainpoolp320t1_5041", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5041_peerpubkey, .peerpubkeylen = 80, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5041_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP320r1, tcId is 2806 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5042 for ECDH, tcId is 2813 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5042_peerpubkey[] = { 0x15, 0x8d, 0xdc, 0x4c, 0x25, 0x20, 0x67, 0xe2, 0x19, 0xe0, 0xa5, 0x5d, 0x7d, 0x55, 0xc3, 0xf5, 0x52, 0x32, 0x96, 0xab, 0x8d, 0x63, 0x17, 0x5d, 0x19, 0x07, 0xc8, 0x2a, 0x8a, 0x03, 0x89, 0x7c, 0xf2, 0x6b, 0xc6, 0xcf, 0x9b, 0x6f, 0xc1, 0x2f, }; static const unsigned char ecdh_brainpoolp320t1_5042_privkey[] = { 0x16, 0x05, 0x38, 0xc4, 0x62, 0xcd, 0x2d, 0x76, 0x98, 0xfc, 0x25, 0xd2, 0x71, 0x2b, 0x98, 0x1d, 0x7d, 0x62, 0x41, 0x36, 0x79, 0xde, 0x89, 0xe0, 0x89, 0xa5, 0x3c, 0xd1, 0x01, 0x7f, 0xed, 0x6f, 0xe6, 0xa6, 0x9d, 0xe1, 0xc2, 0x87, 0x5d, 0x0a, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5042 = { .name = "ecdh_brainpoolp320t1_5042", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5042_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5042_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2813 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5043 for ECDH, tcId is 2814 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5043_peerpubkey[] = { 0xb8, 0xa8, 0x51, 0xb1, 0x60, 0x50, 0x50, 0x03, 0xd2, 0x34, 0x1f, 0x9c, 0x3a, 0x1c, 0xec, 0x50, 0xe1, 0xf5, 0xd7, 0x59, 0x70, 0x57, 0x69, 0xcb, 0xff, 0x60, 0x5b, 0x02, 0x67, 0xaf, 0x15, 0xf7, 0xb9, 0x35, 0x52, 0x86, 0x7b, 0xe4, 0x88, 0xcd, }; static const unsigned char ecdh_brainpoolp320t1_5043_privkey[] = { 0x0c, 0x80, 0xed, 0x1a, 0x96, 0x78, 0x62, 0x2c, 0x2b, 0x69, 0x8d, 0xc1, 0xa7, 0xe6, 0x3c, 0x13, 0xe2, 0x8e, 0x93, 0x62, 0x2b, 0xb1, 0xc3, 0x68, 0x91, 0xc4, 0xcb, 0xf2, 0x52, 0x5e, 0x10, 0xa1, 0x0d, 0x5f, 0x48, 0x55, 0xb9, 0xc5, 0xfb, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5043 = { .name = "ecdh_brainpoolp320t1_5043", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5043_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5043_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2814 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5044 for ECDH, tcId is 2815 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5044_peerpubkey[] = { 0x60, 0xfa, 0x08, 0xa0, 0x14, 0x32, 0x84, 0x9d, 0x03, 0x36, 0x45, 0xcc, 0x7e, 0x49, 0x8c, 0xc0, 0x5a, 0xb5, 0x3b, 0xba, 0x46, 0x33, 0x6b, 0x6a, 0x0d, 0x53, 0x8e, 0xa3, 0xf4, 0xe7, 0x7d, 0x2d, 0xcc, 0x09, 0xa7, 0x04, 0xa7, 0x73, 0x70, 0x60, }; static const unsigned char ecdh_brainpoolp320t1_5044_privkey[] = { 0xd2, 0x08, 0x2a, 0x5d, 0xa7, 0x6b, 0xdb, 0xfb, 0x06, 0xb4, 0xce, 0xd0, 0x30, 0x45, 0xd4, 0xaa, 0x78, 0x84, 0x93, 0x3b, 0x3a, 0xac, 0x19, 0x86, 0x40, 0x68, 0x54, 0xe3, 0xd0, 0x5c, 0x06, 0x9e, 0x1f, 0x89, 0xb4, 0x81, 0xe4, 0x2c, 0xbf, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5044 = { .name = "ecdh_brainpoolp320t1_5044", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5044_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5044_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2815 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5045 for ECDH, tcId is 2816 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5045_peerpubkey[] = { 0x60, 0xfa, 0x08, 0xa0, 0x14, 0x32, 0x84, 0x9d, 0x03, 0x36, 0x45, 0xcc, 0x7e, 0x49, 0x8c, 0xc0, 0x5a, 0xb5, 0x3b, 0xba, 0x46, 0x33, 0x6b, 0x6a, 0x0d, 0x53, 0x8e, 0xa3, 0xf4, 0xe7, 0x7d, 0x2d, 0xcc, 0x09, 0xa7, 0x04, 0xa7, 0x73, 0x70, 0x60, }; static const unsigned char ecdh_brainpoolp320t1_5045_privkey[] = { 0xd2, 0x08, 0x2a, 0x5d, 0xa7, 0x6b, 0xdb, 0xfb, 0x06, 0xb4, 0xce, 0xd0, 0x30, 0x45, 0xd4, 0xaa, 0x78, 0x84, 0x93, 0x3b, 0x3a, 0xac, 0x19, 0x86, 0x40, 0x68, 0x54, 0xe3, 0xd0, 0x5c, 0x06, 0x9e, 0x1f, 0x89, 0xb4, 0x81, 0xe4, 0x2c, 0xbf, 0x95, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5045 = { .name = "ecdh_brainpoolp320t1_5045", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5045_peerpubkey, .peerpubkeylen = 40, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5045_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2816 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5046 for ECDH, tcId is 2817 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) static const unsigned char ecdh_brainpoolp320t1_5046_peerpubkey[] = { 0xb8, 0xa8, 0x51, 0xb1, 0x60, 0x50, 0x50, 0x03, 0xd2, 0x34, 0x1f, 0x9c, 0x3a, 0x1c, 0xec, 0x50, 0xe1, 0xf5, 0xd7, 0x59, 0x70, 0x57, 0x69, 0xcb, 0xff, 0x60, 0x5b, 0x02, 0x67, 0xaf, 0x15, 0xf7, 0xb9, 0x35, 0x52, 0x86, 0x7b, 0xe4, 0x88, 0xcd, }; static const unsigned char ecdh_brainpoolp320t1_5046_privkey[] = { 0x0c, 0x80, 0xed, 0x1a, 0x96, 0x78, 0x62, 0x2c, 0x2b, 0x69, 0x8d, 0xc1, 0xa7, 0xe6, 0x3c, 0x13, 0xe2, 0x8e, 0x93, 0x62, 0x2b, 0xb1, 0xc3, 0x68, 0x91, 0xc4, 0xcb, 0xf2, 0x52, 0x5e, 0x10, 0xa1, 0x0d, 0x5f, 0x48, 0x55, 0xb9, 0xc5, 0xfb, 0x6d, }; static const wycheproof_ecdh_test ecdh_brainpoolp320t1_5046 = { .name = "ecdh_brainpoolp320t1_5046", .ecdh_alg = ECCCDH, .curve = &brainpoolp320t1_str_params, .peerpubkey = ecdh_brainpoolp320t1_5046_peerpubkey, .peerpubkeylen = 40, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp320t1_5046_privkey, .privkeylen = 40, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2817 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) */ /* Test 5047 for ECDH, tcId is 2818 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5047_peerpubkey[] = { 0x7c, 0x99, 0x71, 0xb3, 0xd2, 0xb5, 0xf6, 0x11, 0x11, 0x73, 0xbf, 0x61, 0xf5, 0x46, 0xbd, 0xea, 0xd7, 0x91, 0x8a, 0xa0, 0x13, 0x4b, 0x72, 0xc1, 0x1d, 0xd2, 0xfe, 0x22, 0xeb, 0x33, 0x6e, 0xcd, 0xce, 0x95, 0x41, 0xdd, 0x8c, 0x64, 0xc6, 0x07, 0x3a, 0xf5, 0x62, 0x7c, 0xf0, 0x4a, 0x5f, 0xda, 0x30, 0x44, 0x0f, 0xda, 0xb7, 0x6d, 0x73, 0x77, 0x70, 0x8e, 0x5a, 0x1c, 0xcb, 0x97, 0x3d, 0x3e, 0x56, 0xcd, 0xb5, 0x3f, 0x29, 0x9b, 0x79, 0x1c, 0xdf, 0xdb, 0xc4, 0x5c, 0x43, 0x85, 0x1a, 0xf0, 0xae, 0xed, 0x35, 0xab, 0x68, 0x73, 0xf4, 0xe2, 0xf8, 0xd7, 0x78, 0x31, 0xeb, 0x71, 0xb0, 0xcb, }; static const unsigned char ecdh_brainpoolp384t1_5047_privkey[] = { 0x6b, 0x3c, 0xff, 0x85, 0x13, 0xeb, 0x44, 0xfa, 0xda, 0x3d, 0xe5, 0xba, 0xf6, 0x61, 0x2c, 0x87, 0xe6, 0xe5, 0xd3, 0xcc, 0xca, 0x55, 0xe3, 0x0f, 0xe6, 0xd5, 0x40, 0xed, 0xd1, 0x54, 0x4b, 0x0a, 0xd2, 0x3e, 0xc9, 0x1a, 0x20, 0x84, 0x05, 0xcc, 0x52, 0x88, 0xea, 0x02, 0xd0, 0xe0, 0x9b, 0xa3, }; static const unsigned char ecdh_brainpoolp384t1_5047_sharedsecret[] = { 0x58, 0x13, 0x32, 0xce, 0x12, 0xeb, 0xb3, 0x12, 0xa6, 0xc0, 0xa9, 0x5f, 0x0e, 0x33, 0x91, 0xfc, 0x1a, 0xf5, 0x9c, 0x37, 0xf7, 0xdc, 0x94, 0xab, 0x1b, 0xf7, 0xae, 0xbc, 0x93, 0x54, 0x0c, 0xd6, 0x36, 0x2c, 0x13, 0x01, 0x6e, 0x3f, 0x70, 0xba, 0x02, 0xd5, 0xcd, 0x33, 0xbc, 0x89, 0x5f, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5047 = { .name = "ecdh_brainpoolp384t1_5047", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5047_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5047_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5047_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 2818 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5048 for ECDH, tcId is 2819 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5048_peerpubkey[] = { 0x7c, 0x99, 0x71, 0xb3, 0xd2, 0xb5, 0xf6, 0x11, 0x11, 0x73, 0xbf, 0x61, 0xf5, 0x46, 0xbd, 0xea, 0xd7, 0x91, 0x8a, 0xa0, 0x13, 0x4b, 0x72, 0xc1, 0x1d, 0xd2, 0xfe, 0x22, 0xeb, 0x33, 0x6e, 0xcd, 0xce, 0x95, 0x41, 0xdd, 0x8c, 0x64, 0xc6, 0x07, 0x3a, 0xf5, 0x62, 0x7c, 0xf0, 0x4a, 0x5f, 0xda, }; static const unsigned char ecdh_brainpoolp384t1_5048_privkey[] = { 0x6b, 0x3c, 0xff, 0x85, 0x13, 0xeb, 0x44, 0xfa, 0xda, 0x3d, 0xe5, 0xba, 0xf6, 0x61, 0x2c, 0x87, 0xe6, 0xe5, 0xd3, 0xcc, 0xca, 0x55, 0xe3, 0x0f, 0xe6, 0xd5, 0x40, 0xed, 0xd1, 0x54, 0x4b, 0x0a, 0xd2, 0x3e, 0xc9, 0x1a, 0x20, 0x84, 0x05, 0xcc, 0x52, 0x88, 0xea, 0x02, 0xd0, 0xe0, 0x9b, 0xa3, }; static const unsigned char ecdh_brainpoolp384t1_5048_sharedsecret[] = { 0x58, 0x13, 0x32, 0xce, 0x12, 0xeb, 0xb3, 0x12, 0xa6, 0xc0, 0xa9, 0x5f, 0x0e, 0x33, 0x91, 0xfc, 0x1a, 0xf5, 0x9c, 0x37, 0xf7, 0xdc, 0x94, 0xab, 0x1b, 0xf7, 0xae, 0xbc, 0x93, 0x54, 0x0c, 0xd6, 0x36, 0x2c, 0x13, 0x01, 0x6e, 0x3f, 0x70, 0xba, 0x02, 0xd5, 0xcd, 0x33, 0xbc, 0x89, 0x5f, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5048 = { .name = "ecdh_brainpoolp384t1_5048", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5048_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5048_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5048_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "compressed public key, tcId is 2819 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5049 for ECDH, tcId is 2820 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5049_peerpubkey[] = { 0x31, 0x9a, 0xd6, 0xd4, 0x31, 0x01, 0x8c, 0x70, 0x36, 0x15, 0x2d, 0x48, 0x14, 0xaa, 0xd9, 0x45, 0x9b, 0xb4, 0xe3, 0xe4, 0x79, 0xb4, 0x07, 0x52, 0xa8, 0x4c, 0x39, 0x02, 0x91, 0x0a, 0x18, 0x52, 0x33, 0x15, 0x3a, 0x49, 0xce, 0x7f, 0x08, 0xee, 0xe8, 0x6c, 0x5a, 0x76, 0xbe, 0x63, 0x7b, 0x2a, 0x13, 0x8b, 0xf1, 0x27, 0x70, 0xcb, 0xaa, 0xe6, 0xe5, 0xbc, 0x86, 0x6f, 0x1b, 0xb0, 0x72, 0xf0, 0x83, 0xdc, 0x4b, 0xcc, 0x36, 0x72, 0x38, 0xc8, 0x33, 0xc2, 0x26, 0x82, 0x34, 0x71, 0xde, 0x82, 0xd5, 0x26, 0x60, 0x80, 0xf8, 0x9b, 0x57, 0x76, 0xdf, 0xa7, 0xea, 0x3c, 0x24, 0xca, 0x26, 0x3b, }; static const unsigned char ecdh_brainpoolp384t1_5049_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5049_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5049 = { .name = "ecdh_brainpoolp384t1_5049", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5049_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5049_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5049_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2820 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5050 for ECDH, tcId is 2821 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5050_peerpubkey[] = { 0x77, 0x9c, 0xe9, 0x83, 0xdc, 0xe3, 0xb9, 0x3b, 0x66, 0xf1, 0xd5, 0xf5, 0xda, 0x0e, 0x64, 0x61, 0xed, 0x87, 0xda, 0x6a, 0x0b, 0xd2, 0x0b, 0x39, 0xdd, 0x1b, 0x85, 0xcd, 0x4d, 0xa1, 0x49, 0xc0, 0x9f, 0xe8, 0x15, 0x82, 0x2e, 0x49, 0xd2, 0x70, 0x6a, 0xf3, 0x2c, 0x76, 0xaa, 0x72, 0x8d, 0x62, 0x00, 0x58, 0xe6, 0x6c, 0x02, 0x1c, 0xe3, 0xab, 0x68, 0x1c, 0x47, 0x1c, 0xa9, 0xde, 0xb0, 0x82, 0x6b, 0x96, 0x71, 0x2c, 0x74, 0x94, 0x8a, 0x4c, 0x97, 0x1b, 0x8d, 0xb1, 0xf4, 0xc0, 0x49, 0xcc, 0x75, 0xd3, 0x55, 0xdf, 0x8d, 0x0f, 0x1f, 0xcf, 0x16, 0xbc, 0x4e, 0xce, 0x28, 0x66, 0x91, 0x22, }; static const unsigned char ecdh_brainpoolp384t1_5050_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5050_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5050 = { .name = "ecdh_brainpoolp384t1_5050", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5050_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5050_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5050_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2821 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5051 for ECDH, tcId is 2822 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5051_peerpubkey[] = { 0x4d, 0x69, 0xd5, 0x48, 0x11, 0x2a, 0x12, 0x1a, 0xe1, 0x39, 0xb4, 0xb8, 0xb4, 0xf9, 0x2f, 0xe0, 0xc3, 0x1a, 0x4f, 0xfe, 0x14, 0xbc, 0xfe, 0x60, 0xfe, 0x60, 0x02, 0x80, 0x49, 0xc7, 0xe7, 0xe3, 0x1c, 0x51, 0x36, 0xfb, 0x64, 0xb6, 0x41, 0x88, 0x5d, 0xa6, 0x59, 0x5d, 0x3d, 0x32, 0x26, 0x0f, 0x50, 0x8f, 0x63, 0xdc, 0x8f, 0xf1, 0xe4, 0x02, 0x08, 0x98, 0x88, 0x30, 0x08, 0x09, 0x80, 0xec, 0x4f, 0x04, 0x5d, 0x2d, 0x75, 0xb6, 0x33, 0xd2, 0x3d, 0x24, 0x43, 0x74, 0xac, 0x9d, 0x94, 0xeb, 0xb3, 0x33, 0x67, 0xbb, 0x6b, 0x92, 0xb0, 0xbd, 0x8e, 0xbf, 0xe8, 0x7c, 0x01, 0x12, 0x46, 0x42, }; static const unsigned char ecdh_brainpoolp384t1_5051_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5051_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5051 = { .name = "ecdh_brainpoolp384t1_5051", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5051_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5051_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5051_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2822 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5052 for ECDH, tcId is 2823 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5052_peerpubkey[] = { 0x7b, 0xed, 0x12, 0x48, 0x36, 0x4e, 0x9e, 0xe7, 0xdc, 0xe7, 0x21, 0x0d, 0x03, 0xa2, 0xea, 0x8c, 0x96, 0x75, 0xba, 0x12, 0xde, 0x09, 0xd9, 0x2f, 0xea, 0x65, 0xf3, 0x1a, 0x93, 0x36, 0xbd, 0x77, 0x30, 0x06, 0x4e, 0x8c, 0x42, 0x5a, 0xb5, 0x7d, 0x74, 0x1e, 0xed, 0x5f, 0x0a, 0x90, 0xab, 0x58, 0x7c, 0x3f, 0x3d, 0xbf, 0x31, 0xeb, 0x24, 0x80, 0xf0, 0xbd, 0xc7, 0xc2, 0xe7, 0xd5, 0x39, 0x82, 0x84, 0x43, 0x7d, 0x10, 0x79, 0x9b, 0x19, 0xc0, 0x6d, 0x73, 0xa0, 0x5a, 0x5d, 0xd3, 0x8b, 0x49, 0x51, 0x95, 0x13, 0xd5, 0x13, 0x7d, 0x1f, 0xf1, 0x68, 0x94, 0x39, 0x0f, 0x8c, 0xab, 0xba, 0x09, }; static const unsigned char ecdh_brainpoolp384t1_5052_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5052_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5052 = { .name = "ecdh_brainpoolp384t1_5052", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5052_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5052_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5052_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2823 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5053 for ECDH, tcId is 2824 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5053_peerpubkey[] = { 0x86, 0xa0, 0xf6, 0x86, 0x95, 0x9b, 0x86, 0xa8, 0x2f, 0xd1, 0x3a, 0x24, 0x55, 0xa1, 0x87, 0xa7, 0xfc, 0x62, 0xc2, 0xa1, 0x15, 0x5d, 0xec, 0xd8, 0x56, 0x30, 0xe1, 0x0c, 0x08, 0x05, 0xa2, 0x38, 0xdc, 0x26, 0x87, 0x2b, 0x29, 0x5a, 0x4d, 0x40, 0x33, 0xe2, 0xd2, 0xa3, 0x13, 0xc6, 0xf6, 0x13, 0x8c, 0x6f, 0x5e, 0xcc, 0x3b, 0xc8, 0xa8, 0xd5, 0xe8, 0xe0, 0x57, 0xcc, 0x8c, 0xf5, 0x42, 0xee, 0xd9, 0x99, 0x1c, 0x45, 0x85, 0x29, 0x96, 0x0a, 0x1a, 0x43, 0x79, 0xe9, 0xcd, 0x4d, 0x94, 0x9d, 0xa8, 0xac, 0x40, 0xaa, 0xc5, 0x1e, 0x4e, 0xe1, 0x31, 0x7a, 0xe8, 0xaf, 0x5a, 0x38, 0xf6, 0x42, }; static const unsigned char ecdh_brainpoolp384t1_5053_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5053_sharedsecret[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5053 = { .name = "ecdh_brainpoolp384t1_5053", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5053_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5053_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5053_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2824 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5054 for ECDH, tcId is 2825 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5054_peerpubkey[] = { 0x2c, 0x5e, 0xcd, 0x27, 0x75, 0xc6, 0x22, 0xfe, 0xba, 0xea, 0xb9, 0x4a, 0x29, 0xb9, 0xf5, 0x93, 0xea, 0x12, 0x42, 0xbd, 0x0f, 0xef, 0xc5, 0x9b, 0xb7, 0xa9, 0x70, 0xaf, 0x89, 0xf5, 0xbd, 0x43, 0xcb, 0xcf, 0xc2, 0x89, 0xff, 0x56, 0x3a, 0x41, 0x8c, 0x25, 0xf1, 0xc0, 0x60, 0xa2, 0x2d, 0x6f, 0x69, 0xa2, 0x85, 0xb0, 0x49, 0x92, 0xfd, 0x34, 0x03, 0x5c, 0x7a, 0xe3, 0x5b, 0x21, 0xa9, 0x97, 0x8a, 0xb2, 0x6d, 0xba, 0xfb, 0x5b, 0xbf, 0x7a, 0x84, 0xaa, 0x11, 0xcb, 0x6f, 0xe8, 0x0a, 0x1d, 0xf1, 0x68, 0xa3, 0x0d, 0xbe, 0xcc, 0xe6, 0xf5, 0xe1, 0x6b, 0xd2, 0x9e, 0xb9, 0xb6, 0x99, 0xf9, }; static const unsigned char ecdh_brainpoolp384t1_5054_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5054_sharedsecret[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5054 = { .name = "ecdh_brainpoolp384t1_5054", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5054_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5054_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5054_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2825 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5055 for ECDH, tcId is 2826 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5055_peerpubkey[] = { 0x71, 0xca, 0xd2, 0x93, 0xad, 0x4b, 0xef, 0xb3, 0x02, 0x3a, 0x07, 0x7d, 0x44, 0x4b, 0x41, 0x42, 0xc3, 0x47, 0x0e, 0xcf, 0x74, 0xe1, 0xee, 0xde, 0x03, 0xc1, 0xc9, 0xdb, 0x83, 0x24, 0x17, 0x77, 0x7c, 0x75, 0x77, 0x97, 0x28, 0x2f, 0x78, 0x77, 0x1b, 0xa0, 0x94, 0xed, 0xa4, 0xc6, 0xa4, 0xb6, 0x45, 0xd6, 0x57, 0x39, 0x13, 0x1f, 0xd6, 0xaa, 0x93, 0x91, 0xf9, 0x47, 0x55, 0x27, 0xb6, 0x04, 0x5f, 0x7e, 0x54, 0x74, 0x78, 0x40, 0xc6, 0xb4, 0x20, 0xd4, 0xa9, 0xb5, 0xdc, 0xa4, 0x07, 0x02, 0xf7, 0x6a, 0x72, 0x65, 0x16, 0x92, 0xdb, 0x41, 0x15, 0x97, 0x7a, 0x56, 0x75, 0xd5, 0x84, 0xfc, }; static const unsigned char ecdh_brainpoolp384t1_5055_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5055_sharedsecret[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5055 = { .name = "ecdh_brainpoolp384t1_5055", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5055_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5055_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5055_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2826 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5056 for ECDH, tcId is 2827 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5056_peerpubkey[] = { 0x33, 0x13, 0xa6, 0x67, 0x86, 0x37, 0x96, 0xec, 0xb2, 0x68, 0x37, 0x51, 0xdd, 0x1b, 0xf5, 0x18, 0x36, 0xfd, 0x64, 0xbf, 0xaa, 0xd8, 0x4f, 0x9f, 0xf1, 0x8a, 0xeb, 0xf9, 0x2a, 0x80, 0xb8, 0xe4, 0x98, 0x94, 0xba, 0xa5, 0x8c, 0xf8, 0x91, 0x8c, 0x08, 0xf7, 0x1e, 0x8f, 0xe8, 0xe6, 0x73, 0x96, 0x0d, 0x15, 0xae, 0x41, 0xc9, 0x0f, 0x98, 0xf9, 0xa5, 0xa8, 0x37, 0xfb, 0x27, 0xd0, 0x8c, 0x5d, 0xc1, 0x13, 0x7f, 0xe3, 0x11, 0x64, 0x95, 0x52, 0xd5, 0x33, 0x25, 0x05, 0x10, 0x0f, 0x03, 0xc8, 0xf7, 0x71, 0xbc, 0xa6, 0x3b, 0x4a, 0x11, 0x33, 0xae, 0xc9, 0xbe, 0xb8, 0x43, 0xd1, 0x0d, 0xfc, }; static const unsigned char ecdh_brainpoolp384t1_5056_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5056_sharedsecret[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5056 = { .name = "ecdh_brainpoolp384t1_5056", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5056_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5056_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5056_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2827 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5057 for ECDH, tcId is 2828 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5057_peerpubkey[] = { 0x4b, 0x35, 0x76, 0xc4, 0x84, 0xf5, 0x54, 0xf3, 0x3b, 0xd2, 0x94, 0xd1, 0xd2, 0x0b, 0x94, 0xe7, 0xca, 0xf6, 0x10, 0x46, 0xf5, 0xe1, 0x08, 0x9c, 0xe8, 0xb0, 0x96, 0xf9, 0xff, 0x3a, 0xd2, 0x04, 0x9a, 0x8d, 0x4b, 0x36, 0x5e, 0xbd, 0x97, 0x13, 0x3a, 0x65, 0x14, 0x23, 0x2a, 0x84, 0x73, 0xc9, 0x1d, 0xe0, 0x68, 0x94, 0x97, 0x39, 0x6b, 0x18, 0x4a, 0x6a, 0x9a, 0x3b, 0xed, 0x37, 0xda, 0x61, 0xcf, 0xfb, 0x8a, 0x62, 0xb1, 0xae, 0x09, 0x65, 0x07, 0xf7, 0xf4, 0xdf, 0xa7, 0x4e, 0x26, 0x76, 0x01, 0x60, 0xf9, 0x30, 0xd2, 0x8e, 0x41, 0x70, 0xd2, 0xa6, 0xb2, 0x44, 0x6b, 0x0b, 0x1a, 0x93, }; static const unsigned char ecdh_brainpoolp384t1_5057_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5057_sharedsecret[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5057 = { .name = "ecdh_brainpoolp384t1_5057", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5057_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5057_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5057_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2828 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5058 for ECDH, tcId is 2829 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5058_peerpubkey[] = { 0x85, 0xc0, 0x92, 0x45, 0xc2, 0x96, 0x5f, 0x43, 0x87, 0xe3, 0x27, 0x6a, 0x73, 0x05, 0xe9, 0x26, 0xce, 0x5f, 0xdc, 0xa2, 0xe9, 0x99, 0x00, 0x42, 0x54, 0x39, 0xa0, 0x61, 0x26, 0x85, 0xd3, 0x8f, 0x84, 0x3a, 0x46, 0x8d, 0x9e, 0x2d, 0x29, 0x68, 0xa6, 0x52, 0x15, 0xac, 0x43, 0x4a, 0x65, 0x42, 0x66, 0x89, 0x17, 0xbb, 0x4e, 0x44, 0x33, 0x99, 0xa5, 0xb3, 0x91, 0x0b, 0xa9, 0xf7, 0x5f, 0x97, 0xd8, 0x95, 0x09, 0x8d, 0xbe, 0x20, 0x49, 0xdd, 0x43, 0xb0, 0x76, 0xb5, 0x0e, 0xf2, 0xca, 0xc1, 0x6f, 0xfa, 0x80, 0xbf, 0x9f, 0xc3, 0xcf, 0x35, 0xc4, 0x58, 0x97, 0x46, 0x21, 0x3d, 0xdc, 0xa1, }; static const unsigned char ecdh_brainpoolp384t1_5058_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5058_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5058 = { .name = "ecdh_brainpoolp384t1_5058", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5058_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5058_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5058_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2829 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5059 for ECDH, tcId is 2830 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5059_peerpubkey[] = { 0x78, 0xb7, 0x63, 0x73, 0xf3, 0xd0, 0x2f, 0x5c, 0x0d, 0x39, 0x61, 0x68, 0x4f, 0x47, 0x90, 0x57, 0xd3, 0x5e, 0x37, 0x6a, 0xd8, 0x58, 0x3a, 0xad, 0x78, 0xfd, 0xde, 0x98, 0xc1, 0xbc, 0xbb, 0xb9, 0xaf, 0x95, 0x82, 0xc5, 0x0e, 0x8c, 0xce, 0x0e, 0xe7, 0x61, 0x46, 0x62, 0x3a, 0x68, 0x79, 0x45, 0x08, 0xe7, 0x0b, 0xed, 0xac, 0x88, 0x31, 0x88, 0x95, 0x9e, 0x5d, 0xfe, 0xb6, 0x23, 0x37, 0x75, 0xad, 0xce, 0x6d, 0x19, 0xd3, 0x06, 0x7d, 0x80, 0xcd, 0xbc, 0x9b, 0x78, 0xdc, 0x33, 0x00, 0x68, 0x06, 0xa6, 0x45, 0x73, 0x03, 0xf9, 0xc6, 0x56, 0x98, 0xf1, 0xfa, 0x88, 0x16, 0x92, 0x10, 0x77, }; static const unsigned char ecdh_brainpoolp384t1_5059_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5059_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5059 = { .name = "ecdh_brainpoolp384t1_5059", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5059_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5059_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5059_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2830 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5060 for ECDH, tcId is 2831 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5060_peerpubkey[] = { 0x87, 0x9e, 0x31, 0xbe, 0x41, 0x83, 0x1a, 0x7b, 0x30, 0x9c, 0x71, 0x14, 0x4f, 0xf5, 0xba, 0xff, 0x93, 0x07, 0x15, 0x9f, 0xe5, 0x75, 0x1d, 0x2d, 0xd0, 0xc4, 0x59, 0x5c, 0xe2, 0x88, 0xe1, 0xf8, 0x1a, 0x34, 0x00, 0x1a, 0xc7, 0x4f, 0x68, 0xf3, 0x42, 0x71, 0xc2, 0xef, 0x4d, 0xcf, 0x2a, 0x58, 0x48, 0x22, 0xe2, 0xdc, 0xde, 0x90, 0xab, 0x1e, 0x44, 0x11, 0xfb, 0x99, 0x87, 0x74, 0xc1, 0xbd, 0x08, 0x40, 0x56, 0x0e, 0x67, 0x21, 0xba, 0x00, 0xf9, 0x78, 0xaf, 0xa5, 0x87, 0x0d, 0x75, 0xb9, 0x48, 0x2f, 0x59, 0x4e, 0x9d, 0x72, 0xb0, 0x30, 0x34, 0x58, 0x42, 0x92, 0xbc, 0x8d, 0xf9, 0x5e, }; static const unsigned char ecdh_brainpoolp384t1_5060_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5060_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5060 = { .name = "ecdh_brainpoolp384t1_5060", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5060_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5060_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5060_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2831 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5061 for ECDH, tcId is 2832 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5061_peerpubkey[] = { 0x23, 0xc4, 0x0e, 0x7a, 0x2e, 0xc9, 0xb6, 0x18, 0x37, 0xff, 0x67, 0xeb, 0x7a, 0xda, 0x25, 0x02, 0x32, 0x79, 0xc0, 0xc7, 0x7e, 0x7b, 0x46, 0xe3, 0xd4, 0x0a, 0x91, 0x59, 0x81, 0x1e, 0x0a, 0x77, 0x31, 0xcd, 0x51, 0x56, 0x06, 0xdf, 0x44, 0xb5, 0x20, 0x82, 0xb5, 0x31, 0x99, 0x79, 0x04, 0x75, 0x75, 0xd4, 0x46, 0x7c, 0xe4, 0x9e, 0xf0, 0x8f, 0xc1, 0xe9, 0xaa, 0x50, 0x16, 0xc6, 0xe2, 0x19, 0x39, 0x32, 0x11, 0xcf, 0xa1, 0xcc, 0x86, 0x8d, 0x16, 0xca, 0xf2, 0x34, 0x76, 0x52, 0xb7, 0x2d, 0xfc, 0xd8, 0x8b, 0x9d, 0xf8, 0x21, 0xeb, 0xde, 0x89, 0x05, 0x4a, 0xd7, 0xb4, 0xa8, 0xb8, 0x07, }; static const unsigned char ecdh_brainpoolp384t1_5061_privkey[] = { 0x0a, 0x33, 0x15, 0xe6, 0xcd, 0xeb, 0x73, 0x3e, 0x26, 0xd7, 0x2d, 0x2a, 0x98, 0xe9, 0x43, 0x72, 0x7b, 0x63, 0x7f, 0x98, 0x40, 0x67, 0x55, 0x56, 0x2b, 0x05, 0x31, 0xf1, 0xf9, 0x2a, 0x8f, 0x4a, 0x66, 0xe6, 0xac, 0xe6, 0x29, 0x24, 0x9e, 0x0f, 0x61, 0xca, 0xd0, 0x7b, 0x22, 0xff, 0x62, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5061_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5061 = { .name = "ecdh_brainpoolp384t1_5061", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5061_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5061_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5061_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 2832 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5062 for ECDH, tcId is 2833 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5062_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x41, 0x99, 0xab, 0xa2, 0xf2, 0xae, 0x96, 0xba, 0x11, 0xe6, 0x3e, 0x82, 0xa9, 0x23, 0x2a, 0x83, 0xbb, 0xff, 0xd4, 0x65, 0xc3, 0xdd, 0x76, 0xc4, 0xcd, 0x24, 0xff, 0x07, 0xf8, 0xcc, 0x1c, 0x1c, 0xc1, 0x0e, 0xb7, 0xca, 0x2d, 0x80, 0x07, 0x28, 0x73, 0xf2, 0x7c, 0x10, 0x31, 0x53, 0xed, 0xbd, }; static const unsigned char ecdh_brainpoolp384t1_5062_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5062_sharedsecret[] = { 0x55, 0x58, 0xf8, 0xc9, 0x78, 0x4d, 0x2e, 0x17, 0xcd, 0x8b, 0xfb, 0xa3, 0xe7, 0x17, 0xca, 0xf1, 0xe9, 0x08, 0x5a, 0xe7, 0x4f, 0xbc, 0x5e, 0x58, 0x55, 0xa3, 0x47, 0x73, 0x4f, 0x64, 0xc4, 0xa9, 0x9b, 0x6f, 0x10, 0x9c, 0x8d, 0xc8, 0x5f, 0xfa, 0x31, 0x5c, 0xfb, 0x01, 0x01, 0x0e, 0x59, 0xda, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5062 = { .name = "ecdh_brainpoolp384t1_5062", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5062_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5062_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5062_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2833 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5063 for ECDH, tcId is 2834 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5063_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x10, 0xde, 0x23, 0xe1, 0x54, 0x9f, 0x36, 0x7b, 0x07, 0xb7, 0x2d, 0x47, 0xdf, 0x2b, 0x0e, 0x4d, 0xd3, 0x2a, 0x78, 0xac, 0xc9, 0xfa, 0x2e, 0xad, 0x7d, 0xbc, 0x9a, 0x5a, 0x3f, 0x05, 0xed, 0x44, 0x8f, 0xe7, 0x5d, 0x12, 0x12, 0x69, 0xed, 0x68, 0x9a, 0x8d, 0xc8, 0x23, 0x21, 0x21, 0x29, 0x84, }; static const unsigned char ecdh_brainpoolp384t1_5063_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5063_sharedsecret[] = { 0x3e, 0x59, 0xac, 0xeb, 0x85, 0xae, 0x1e, 0x9c, 0x48, 0x2e, 0x49, 0xec, 0xee, 0x60, 0xd8, 0x55, 0x62, 0x7d, 0x4a, 0xb9, 0x12, 0x43, 0xc0, 0x5c, 0xbc, 0xfc, 0xf8, 0x81, 0x74, 0xfc, 0x31, 0x65, 0x8e, 0x89, 0xec, 0xe9, 0xb6, 0x73, 0xba, 0x22, 0x2c, 0x2e, 0x31, 0xd5, 0x1a, 0x54, 0xe6, 0xd5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5063 = { .name = "ecdh_brainpoolp384t1_5063", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5063_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5063_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5063_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2834 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5064 for ECDH, tcId is 2835 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5064_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x18, 0x3e, 0x00, 0x91, 0xd6, 0x9e, 0x92, 0x7e, 0xaa, 0xa9, 0xc8, 0x87, 0xf1, 0x16, 0x4b, 0x2b, 0x6f, 0x58, 0xff, 0x48, 0x2d, 0xe5, 0x3f, 0x28, 0xd3, 0x81, 0xbe, 0x26, 0x0a, 0x77, 0x3b, 0x30, 0x6e, 0x05, 0xae, 0xf3, 0x74, 0x5e, 0x8a, 0x72, 0xb6, 0xb7, 0x24, 0x96, 0xf5, 0x00, 0x9e, 0x51, }; static const unsigned char ecdh_brainpoolp384t1_5064_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5064_sharedsecret[] = { 0x47, 0xb5, 0xbb, 0xe7, 0xbf, 0x2e, 0xc7, 0xf8, 0x67, 0x77, 0xc0, 0x08, 0xb8, 0x4d, 0x75, 0x3d, 0xe9, 0xe6, 0xec, 0x45, 0x79, 0xee, 0x2f, 0x27, 0x4d, 0x5f, 0xf3, 0xbf, 0x46, 0x66, 0x80, 0xea, 0x6f, 0x46, 0xa2, 0xdb, 0x7b, 0x50, 0xec, 0x59, 0x7a, 0xd1, 0xaa, 0x06, 0xd2, 0x0c, 0xe5, 0x49, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5064 = { .name = "ecdh_brainpoolp384t1_5064", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5064_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5064_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5064_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2835 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5065 for ECDH, tcId is 2836 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5065_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x3b, 0xcf, 0x7a, 0xd8, 0xf5, 0x11, 0x86, 0xc0, 0xf9, 0x9d, 0xb0, 0x98, 0x8e, 0xd9, 0xc5, 0x0e, 0x20, 0x76, 0x31, 0x25, 0xaa, 0xe2, 0xcb, 0x69, 0xc2, 0xa4, 0xfa, 0x0d, 0x29, 0xb4, 0x10, 0x75, 0xc5, 0x9c, 0xf3, 0x79, 0x8c, 0xba, 0xc0, 0xb0, 0x6b, 0x51, 0x44, 0x5e, 0x4f, 0x68, 0x95, 0x7c, }; static const unsigned char ecdh_brainpoolp384t1_5065_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5065_sharedsecret[] = { 0x44, 0xac, 0xbe, 0x68, 0x1b, 0xb3, 0x6e, 0xfd, 0x73, 0x88, 0x1c, 0xde, 0x8c, 0xd2, 0x26, 0x9f, 0x85, 0xdc, 0x0f, 0x3e, 0xae, 0xdd, 0xf7, 0x29, 0xa2, 0x43, 0xe1, 0x78, 0x41, 0xd6, 0xa7, 0x70, 0xc2, 0x48, 0x98, 0x59, 0xfe, 0x24, 0x87, 0xff, 0x9c, 0x1f, 0x5c, 0x2e, 0x00, 0x01, 0x8b, 0x76, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5065 = { .name = "ecdh_brainpoolp384t1_5065", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5065_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5065_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5065_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2836 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5066 for ECDH, tcId is 2837 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5066_peerpubkey[] = { 0x1b, 0x63, 0x58, 0x95, 0xe1, 0xe2, 0xc8, 0x09, 0x65, 0x34, 0x71, 0xa1, 0xa1, 0xce, 0x34, 0x60, 0xf7, 0x6c, 0x7b, 0x06, 0x99, 0x3c, 0x65, 0x4e, 0xe2, 0x66, 0x10, 0x11, 0xa5, 0xb8, 0x8a, 0xfe, 0xcb, 0xa1, 0x6d, 0x6f, 0xff, 0x26, 0xa7, 0x70, 0x9b, 0x7e, 0x59, 0xf9, 0x3a, 0x9d, 0xe7, 0x03, 0x22, 0x0e, 0x4c, 0xda, 0x75, 0xc3, 0x54, 0xf6, 0x21, 0x7b, 0xb3, 0x85, 0x7f, 0x55, 0xbb, 0xf6, 0x72, 0x1c, 0x09, 0x7a, 0x14, 0x90, 0x0a, 0xd9, 0xe0, 0xc3, 0x0b, 0x0f, 0xaf, 0xe1, 0x8a, 0xd6, 0x8c, 0x5c, 0xc4, 0x88, 0x1c, 0xba, 0xde, 0x4e, 0x47, 0x1f, 0xab, 0x68, 0x5c, 0x43, 0x87, 0x69, }; static const unsigned char ecdh_brainpoolp384t1_5066_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5066_sharedsecret[] = { 0x11, 0x7f, 0xc6, 0x25, 0xab, 0x3f, 0x21, 0x3a, 0xae, 0xf4, 0xec, 0xf4, 0xcb, 0xb0, 0x32, 0xac, 0x37, 0x99, 0x7f, 0xd6, 0x3e, 0xcb, 0x8b, 0xe3, 0x30, 0xea, 0x8e, 0x53, 0x6a, 0x49, 0x27, 0x4b, 0xf8, 0x2e, 0xda, 0x05, 0xfd, 0xd5, 0x33, 0x02, 0xc3, 0x47, 0x84, 0x19, 0x74, 0x93, 0x4e, 0x4c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5066 = { .name = "ecdh_brainpoolp384t1_5066", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5066_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5066_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5066_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2837 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5067 for ECDH, tcId is 2838 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5067_peerpubkey[] = { 0x3b, 0xc0, 0x88, 0x23, 0x77, 0x6f, 0x7e, 0xe0, 0x8b, 0x4f, 0x21, 0x8f, 0x4b, 0xdb, 0x41, 0xe9, 0x54, 0xe7, 0xe7, 0x4a, 0xbb, 0x2d, 0x31, 0x91, 0x40, 0xc6, 0x7b, 0x93, 0x57, 0x06, 0xb1, 0xd1, 0x44, 0x0b, 0x3d, 0xa7, 0x00, 0x00, 0x68, 0xae, 0x55, 0xd5, 0x6a, 0xcb, 0x97, 0x46, 0xd4, 0xa6, 0x40, 0xbf, 0x43, 0xbe, 0xcd, 0x91, 0x7f, 0x53, 0x99, 0x57, 0x63, 0x50, 0x9f, 0x65, 0x1a, 0x40, 0x19, 0x06, 0x8e, 0x8c, 0x48, 0x00, 0x7b, 0x79, 0x2b, 0x05, 0x0c, 0x3c, 0x6a, 0x4a, 0x41, 0xd3, 0xc5, 0x3e, 0x14, 0x04, 0x4e, 0xf6, 0x68, 0x26, 0x5a, 0x76, 0xd8, 0x3b, 0xfd, 0x25, 0x66, 0x80, }; static const unsigned char ecdh_brainpoolp384t1_5067_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5067_sharedsecret[] = { 0x05, 0xd2, 0x35, 0xcd, 0x3f, 0x4d, 0xba, 0xa1, 0xdd, 0xec, 0x87, 0x7a, 0x1c, 0xe9, 0xc6, 0xa3, 0x17, 0x07, 0x76, 0x01, 0x35, 0x9f, 0x18, 0xbe, 0x53, 0xe9, 0xfc, 0x79, 0x04, 0xfe, 0xe3, 0x43, 0xd7, 0x06, 0x69, 0xd7, 0x81, 0xec, 0x31, 0x45, 0x36, 0x86, 0xed, 0xa2, 0xd9, 0x62, 0x64, 0x7c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5067 = { .name = "ecdh_brainpoolp384t1_5067", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5067_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5067_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5067_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2838 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5068 for ECDH, tcId is 2839 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5068_peerpubkey[] = { 0x7f, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x05, 0x32, 0xe6, 0x40, 0x08, 0xd9, 0xcd, 0x98, 0x7b, 0x0e, 0x99, 0xb2, 0x97, 0x53, 0x34, 0xb3, 0xbd, 0x6f, 0x04, 0x2a, 0x5a, 0x8e, 0x5e, 0xac, 0xf7, 0x2d, 0x0c, 0x4c, 0xa2, 0x90, 0x6f, 0x7f, 0x5a, 0x54, 0x6d, 0x26, 0x11, 0x7b, 0x06, 0x79, 0x06, 0x7c, 0x7c, 0x57, 0x85, 0x27, 0xf1, 0xd1, }; static const unsigned char ecdh_brainpoolp384t1_5068_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5068_sharedsecret[] = { 0x4b, 0xbd, 0x8d, 0x34, 0xc4, 0xc2, 0x5f, 0x07, 0x8a, 0xd4, 0x34, 0x46, 0x82, 0x40, 0x59, 0x43, 0x9a, 0xbd, 0xd9, 0x14, 0xa2, 0xac, 0x9a, 0x83, 0xe9, 0xe1, 0x50, 0x8b, 0xcc, 0x7e, 0xac, 0x39, 0x74, 0xc0, 0x63, 0x14, 0xec, 0x18, 0x88, 0x5e, 0x64, 0x08, 0x8f, 0x77, 0x35, 0xb4, 0x7b, 0x0b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5068 = { .name = "ecdh_brainpoolp384t1_5068", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5068_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5068_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5068_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2839 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5069 for ECDH, tcId is 2840 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5069_peerpubkey[] = { 0x7f, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x2e, 0xb8, 0xd2, 0xea, 0xcb, 0xc8, 0xbd, 0xb2, 0xc8, 0x3f, 0xf1, 0x18, 0x64, 0xf2, 0x8f, 0xe3, 0x07, 0xa8, 0x61, 0x7e, 0x3f, 0x65, 0x1e, 0x2c, 0x98, 0xc1, 0x34, 0x96, 0x91, 0xa1, 0x9d, 0x91, 0x42, 0x40, 0x43, 0x4e, 0x2f, 0xc5, 0x99, 0x59, 0x6a, 0x18, 0xae, 0x05, 0xd6, 0x2c, 0x80, 0xb6, }; static const unsigned char ecdh_brainpoolp384t1_5069_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5069_sharedsecret[] = { 0x33, 0xd5, 0x88, 0x5c, 0x57, 0x82, 0x5c, 0x73, 0xef, 0x0e, 0x48, 0x95, 0x13, 0x70, 0x94, 0x68, 0xc1, 0xd8, 0x6e, 0xf7, 0x15, 0x3f, 0x85, 0x60, 0xea, 0xf8, 0xd1, 0xef, 0xf3, 0xa3, 0x8a, 0xfb, 0xd6, 0x31, 0x57, 0xc4, 0x84, 0x0a, 0xea, 0x14, 0x18, 0x26, 0x92, 0xac, 0xc0, 0xdf, 0x29, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5069 = { .name = "ecdh_brainpoolp384t1_5069", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5069_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5069_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5069_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2840 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5070 for ECDH, tcId is 2841 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5070_peerpubkey[] = { 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x33, 0x3b, 0x6e, 0xdc, 0x37, 0xe1, 0xde, 0xe2, 0x50, 0x2c, 0x77, 0x3a, 0x2a, 0xf9, 0xd3, 0x6b, 0xe3, 0xc1, 0x4b, 0x92, 0xfb, 0x7f, 0xf9, 0x47, 0xb2, 0xb3, 0x98, 0x88, 0x4e, 0x93, 0x8d, 0x47, 0xd7, 0xe9, 0x1a, 0xb6, 0x16, 0x3e, 0x35, 0xcf, 0x7f, 0xb5, 0x49, 0xa1, 0xc8, 0xb4, 0x0c, 0xb4, }; static const unsigned char ecdh_brainpoolp384t1_5070_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5070_sharedsecret[] = { 0x60, 0xe9, 0x29, 0x12, 0xa1, 0xcd, 0x8b, 0xf1, 0x1e, 0x10, 0xd8, 0x82, 0xeb, 0x3b, 0xea, 0xc7, 0x5f, 0x92, 0x49, 0x57, 0x95, 0x7f, 0xce, 0x63, 0xb0, 0xd6, 0x46, 0x83, 0x6a, 0xc3, 0x8a, 0x5f, 0x39, 0xc0, 0x49, 0x7d, 0x9b, 0xc1, 0x4c, 0x18, 0x84, 0xa3, 0xec, 0x62, 0xcf, 0x84, 0x26, 0x4d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5070 = { .name = "ecdh_brainpoolp384t1_5070", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5070_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5070_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5070_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2841 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5071 for ECDH, tcId is 2842 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5071_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x2c, 0x6b, 0xc7, 0xe8, 0x54, 0xb2, 0xd2, 0x94, 0xbb, 0xf5, 0x6b, 0x01, 0x65, 0x46, 0x59, 0x8a, 0xee, 0x72, 0xe1, 0xa0, 0x5b, 0x12, 0x49, 0x17, 0x38, 0xdd, 0x65, 0xd3, 0x66, 0xb0, 0x38, 0xc8, 0xb0, 0x27, 0xf9, 0x0d, 0x52, 0x01, 0x2d, 0xc5, 0x46, 0x76, 0x88, 0x26, 0xb9, 0xf7, 0x6d, 0x2f, }; static const unsigned char ecdh_brainpoolp384t1_5071_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5071_sharedsecret[] = { 0x65, 0xe5, 0x93, 0x16, 0x4f, 0x35, 0x4d, 0xd3, 0xdd, 0x77, 0xba, 0x72, 0xba, 0x55, 0xba, 0x80, 0xb8, 0x11, 0x69, 0xa0, 0x3b, 0x11, 0x5d, 0x5d, 0x42, 0x49, 0xd8, 0x83, 0xe0, 0x71, 0xa0, 0x0b, 0xaf, 0x11, 0x42, 0x89, 0xd6, 0x18, 0x6e, 0x35, 0x50, 0x37, 0x60, 0x92, 0xa3, 0x0a, 0x44, 0xd5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5071 = { .name = "ecdh_brainpoolp384t1_5071", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5071_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5071_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5071_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2842 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5072 for ECDH, tcId is 2843 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5072_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0xee, 0x7a, 0xdc, 0x97, 0x8f, 0x64, 0xeb, 0x8c, 0xe1, 0xac, 0x64, 0xd4, 0xc9, 0xc7, 0x5f, 0x4c, 0x35, 0xd3, 0x6d, 0xe0, 0xed, 0x3c, 0x9d, 0x7a, 0x10, 0x13, 0xfb, 0x13, 0x23, 0xc4, 0xf2, 0xb2, 0xe6, 0xf0, 0x2c, 0x24, 0x0e, 0x82, 0xed, 0x75, 0x47, 0x2a, 0x72, 0xf2, 0x77, 0x55, 0xdd, }; static const unsigned char ecdh_brainpoolp384t1_5072_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5072_sharedsecret[] = { 0x2a, 0xdd, 0x18, 0x65, 0x40, 0xd1, 0xc1, 0x42, 0x06, 0xa3, 0x01, 0xc8, 0xf0, 0x87, 0xe6, 0x08, 0x99, 0x75, 0x6d, 0x8e, 0xb0, 0xfd, 0x95, 0xd0, 0xde, 0xfd, 0x14, 0x35, 0xee, 0x1f, 0xb8, 0x81, 0x03, 0xfe, 0xca, 0x37, 0x04, 0xcf, 0x37, 0x47, 0xa3, 0x75, 0x81, 0x3b, 0xcf, 0x82, 0xd4, 0x39, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5072 = { .name = "ecdh_brainpoolp384t1_5072", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5072_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5072_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5072_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2843 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5073 for ECDH, tcId is 2844 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5073_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x04, 0xd4, 0x6c, 0x61, 0x3e, 0x7c, 0xea, 0x77, 0xe5, 0x79, 0xa3, 0xa1, 0xc3, 0x86, 0x07, 0xda, 0x44, 0xb1, 0xad, 0x73, 0x3c, 0xd7, 0x8e, 0x98, 0x31, 0x5f, 0x5f, 0xce, 0xda, 0xa3, 0x55, 0xbd, 0xcd, 0x98, 0x15, 0x7d, 0x19, 0x41, 0x26, 0xa9, 0x20, 0x0d, 0xa3, 0x4b, 0x94, 0x5a, 0x01, 0xa9, }; static const unsigned char ecdh_brainpoolp384t1_5073_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5073_sharedsecret[] = { 0x78, 0xb1, 0x96, 0xd7, 0x19, 0x76, 0x19, 0x66, 0x1d, 0xce, 0xfb, 0x46, 0xa1, 0x9a, 0x0a, 0x61, 0x4b, 0xae, 0x44, 0x3c, 0xd5, 0x05, 0xaf, 0x15, 0x8e, 0xbb, 0xfb, 0x74, 0x4a, 0x98, 0x3f, 0x29, 0x9d, 0x32, 0xc6, 0x2f, 0x42, 0xe7, 0x6c, 0xb4, 0xbf, 0x67, 0x96, 0x35, 0xe1, 0x79, 0x49, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5073 = { .name = "ecdh_brainpoolp384t1_5073", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5073_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5073_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5073_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2844 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5074 for ECDH, tcId is 2845 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5074_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x05, 0x55, 0xff, 0x1d, 0x91, 0x17, 0xe3, 0xe1, 0xdb, 0x68, 0x59, 0x7a, 0x91, 0x64, 0x92, 0xe7, 0xe6, 0x9a, 0x91, 0xb3, 0xaa, 0x0d, 0x7b, 0x06, 0x8d, 0xfb, 0x37, 0x83, 0x72, 0x9d, 0xaf, 0x94, 0x89, 0x01, 0x01, 0x22, 0x6c, 0xa5, 0x67, 0xee, 0x4d, 0x4f, 0x93, 0xd5, 0x6a, 0x57, 0x94, 0x08, }; static const unsigned char ecdh_brainpoolp384t1_5074_privkey[] = { 0x5c, 0x1e, 0x1f, 0xf7, 0x06, 0xfd, 0xb4, 0xc9, 0xb7, 0x04, 0xa2, 0xae, 0x93, 0x75, 0xb6, 0x8f, 0x21, 0xa0, 0xb6, 0x05, 0x93, 0x09, 0xa4, 0xe2, 0x93, 0x36, 0x9c, 0xf6, 0xa3, 0xa1, 0x23, 0xa0, 0xaa, 0xd3, 0xb2, 0xda, 0xae, 0x16, 0x29, 0x82, 0x1a, 0x12, 0xb9, 0xc2, 0xc6, 0x2d, 0x3b, 0x85, }; static const unsigned char ecdh_brainpoolp384t1_5074_sharedsecret[] = { 0x35, 0xe7, 0x20, 0x46, 0xa2, 0x54, 0x76, 0xac, 0xf5, 0x3a, 0xd5, 0x0f, 0x82, 0x39, 0xf4, 0x5b, 0x78, 0xd7, 0x6a, 0x99, 0x68, 0x11, 0x76, 0xd0, 0x20, 0x4c, 0x18, 0x0e, 0x7d, 0x73, 0x0c, 0x96, 0x9e, 0x82, 0xe5, 0x74, 0x3e, 0x73, 0x70, 0x15, 0x93, 0x0c, 0x4b, 0xd2, 0xca, 0x1d, 0x8f, 0x61, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5074 = { .name = "ecdh_brainpoolp384t1_5074", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5074_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5074_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5074_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2845 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5075 for ECDH, tcId is 2846 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5075_peerpubkey[] = { 0x5e, 0x98, 0xfa, 0x93, 0xf2, 0x6d, 0xb6, 0x82, 0x87, 0xf2, 0x4d, 0x0c, 0x30, 0x37, 0x9c, 0x2a, 0x82, 0x6b, 0x30, 0x16, 0xb0, 0x2b, 0xce, 0x67, 0x7e, 0x2b, 0x13, 0x74, 0x01, 0x8b, 0x2d, 0xbd, 0xaa, 0x52, 0x52, 0xeb, 0x62, 0x8f, 0x5e, 0x61, 0x82, 0x73, 0x8a, 0x7a, 0x38, 0x3b, 0xca, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5075_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5075_sharedsecret[] = { 0x03, 0xfe, 0x68, 0xae, 0x6d, 0x12, 0x76, 0x5d, 0xea, 0xd2, 0x35, 0x36, 0xb0, 0xee, 0x48, 0x82, 0x81, 0xfe, 0xa0, 0xad, 0x3e, 0xb6, 0xc2, 0x1f, 0xd8, 0xf2, 0x60, 0xbb, 0x95, 0xa6, 0x1f, 0x54, 0xf4, 0xfa, 0x1d, 0xd5, 0x39, 0x6f, 0x8a, 0x11, 0xd2, 0x79, 0x7f, 0xad, 0xec, 0xeb, 0x79, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5075 = { .name = "ecdh_brainpoolp384t1_5075", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5075_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5075_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5075_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 2846 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5076 for ECDH, tcId is 2847 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5076_peerpubkey[] = { 0x81, 0x37, 0x5c, 0x50, 0xc1, 0xf4, 0x9e, 0x6e, 0x3e, 0xa7, 0x41, 0x18, 0xb3, 0xf2, 0xb9, 0x21, 0xbf, 0xe6, 0xed, 0xd4, 0xc7, 0x82, 0x8b, 0xaa, 0x42, 0x43, 0xbe, 0x3b, 0x43, 0x4b, 0xeb, 0x24, 0x06, 0x57, 0x62, 0xdf, 0x6b, 0x49, 0x9d, 0x90, 0xe8, 0xcc, 0xd8, 0x66, 0x87, 0x1a, 0x4b, 0x51, 0x76, 0x0a, 0x69, 0xcb, 0x26, 0x48, 0xd4, 0x18, 0x5c, 0x12, 0x12, 0x98, 0x96, 0x95, 0x32, 0x8f, 0xc6, 0x99, 0x11, 0xfe, 0x78, 0x3f, 0x54, 0x74, 0x5c, 0xcd, 0x18, 0xc5, 0x8f, 0x91, 0xa9, 0x44, 0xe4, 0xcf, 0xd4, 0x37, 0x15, 0x6d, 0x58, 0x76, 0xde, 0x6d, 0x21, 0x23, 0x0b, 0x1d, 0xf2, 0x89, }; static const unsigned char ecdh_brainpoolp384t1_5076_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5076_sharedsecret[] = { 0x3b, 0x84, 0x5d, 0xc0, 0x33, 0x3a, 0xc9, 0x8c, 0x50, 0xa8, 0x84, 0x78, 0xae, 0x3f, 0xa0, 0x85, 0x4f, 0x15, 0x06, 0x5c, 0xac, 0x6a, 0xec, 0x3a, 0x57, 0x46, 0x00, 0xbe, 0x88, 0xa8, 0x7c, 0xdb, 0x50, 0xd8, 0xd6, 0x08, 0xd3, 0x1c, 0xd2, 0x38, 0xcd, 0x9e, 0xd5, 0xa1, 0x5a, 0x3b, 0xe1, 0x09, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5076 = { .name = "ecdh_brainpoolp384t1_5076", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5076_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5076_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5076_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 2847 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5077 for ECDH, tcId is 2848 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5077_peerpubkey[] = { 0x68, 0x0d, 0x76, 0x66, 0x48, 0x06, 0x72, 0xa7, 0x68, 0x33, 0xef, 0x6b, 0xff, 0x07, 0xe8, 0xa0, 0x8b, 0x7c, 0xc1, 0x5a, 0x06, 0xcc, 0xc0, 0x05, 0xb0, 0x39, 0xb8, 0x17, 0x2e, 0x71, 0xa2, 0x1f, 0x7b, 0xed, 0x49, 0x9f, 0x9d, 0xba, 0xa4, 0x5e, 0x41, 0x9d, 0x63, 0xae, 0xbb, 0x54, 0x44, 0x77, 0x41, 0x41, 0x99, 0xe2, 0x0d, 0xfb, 0xde, 0x97, 0xbb, 0x0d, 0x4b, 0x1f, 0x84, 0x8c, 0xdd, 0x3c, 0x13, 0xaa, 0x41, 0xa3, 0x03, 0x60, 0x73, 0x74, 0x14, 0x95, 0xd7, 0xb5, 0x1a, 0x8f, 0xd1, 0x5b, 0x0f, 0xa4, 0x4f, 0xf5, 0x52, 0x8e, 0x35, 0xf3, 0x3c, 0x96, 0xb6, 0x1d, 0x48, 0x6a, 0x37, 0x54, }; static const unsigned char ecdh_brainpoolp384t1_5077_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5077_sharedsecret[] = { 0x0b, 0xa2, 0xf6, 0x60, 0x07, 0xc9, 0xfc, 0x07, 0x51, 0x94, 0xad, 0xc8, 0x3d, 0x65, 0x70, 0xea, 0x26, 0xf7, 0x97, 0x27, 0x46, 0x39, 0xcf, 0xb9, 0x2d, 0xd9, 0xcf, 0x6f, 0x07, 0xbb, 0x85, 0xa8, 0x17, 0x18, 0x73, 0x66, 0x04, 0x01, 0x0c, 0xd9, 0xa8, 0x8d, 0xf6, 0x22, 0xba, 0xb5, 0x7f, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5077 = { .name = "ecdh_brainpoolp384t1_5077", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5077_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5077_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5077_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2848 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5078 for ECDH, tcId is 2849 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5078_peerpubkey[] = { 0x05, 0x35, 0xde, 0x61, 0x08, 0x8f, 0xed, 0x3c, 0x66, 0x5c, 0xd8, 0x0a, 0xed, 0x16, 0x2f, 0xdb, 0x21, 0xfc, 0x64, 0x82, 0x9a, 0x3e, 0x9c, 0x4a, 0x35, 0xba, 0x0a, 0xaa, 0xda, 0x95, 0xe8, 0xcd, 0x65, 0xce, 0xc4, 0x9d, 0xd6, 0xba, 0x96, 0xf5, 0xd0, 0x67, 0x0d, 0x99, 0x70, 0xf5, 0xe5, 0xcf, 0x82, 0x25, 0xd9, 0xd1, 0x1e, 0x4c, 0xb5, 0xf5, 0x99, 0x38, 0x5a, 0xa8, 0x65, 0xd8, 0xa0, 0x60, 0xa3, 0x69, 0xea, 0x65, 0xe5, 0xee, 0xed, 0xda, 0x96, 0x7f, 0x4d, 0x53, 0x76, 0x76, 0x25, 0xc4, 0xfb, 0xb4, 0xf2, 0x15, 0xe2, 0xa7, 0xcf, 0x8f, 0xa0, 0x67, 0xf6, 0xaa, 0x90, 0x3e, 0xb0, 0x7e, }; static const unsigned char ecdh_brainpoolp384t1_5078_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5078_sharedsecret[] = { 0x14, 0x67, 0x1f, 0x8c, 0x37, 0x8c, 0x5e, 0xef, 0x58, 0xb6, 0x80, 0x3d, 0xad, 0x05, 0x45, 0xc5, 0xa7, 0xf6, 0x17, 0x65, 0x31, 0xe9, 0xb3, 0x57, 0x57, 0xe9, 0x1a, 0xfa, 0x02, 0x1c, 0xeb, 0xee, 0x52, 0x44, 0xec, 0x2a, 0x95, 0x1d, 0x30, 0x2d, 0x08, 0x73, 0x98, 0xed, 0x42, 0x80, 0x63, 0x3c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5078 = { .name = "ecdh_brainpoolp384t1_5078", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5078_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5078_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5078_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2849 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5079 for ECDH, tcId is 2850 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5079_peerpubkey[] = { 0x2c, 0x73, 0x6c, 0x1a, 0xdb, 0xf2, 0x0e, 0xff, 0xff, 0x96, 0xea, 0x19, 0xf1, 0xaa, 0xb8, 0xf9, 0x38, 0xc6, 0x83, 0x6a, 0x03, 0xce, 0xae, 0xc8, 0xf4, 0xf7, 0x9c, 0x5c, 0xeb, 0x3d, 0xa4, 0x07, 0x93, 0x36, 0xb1, 0x54, 0xf2, 0xb8, 0x9d, 0x2a, 0xa9, 0xbb, 0x44, 0x61, 0xfa, 0x8d, 0x02, 0xc9, 0x20, 0x44, 0xd1, 0x9a, 0xc4, 0x05, 0x5e, 0x81, 0x72, 0xc0, 0x80, 0x4f, 0xcd, 0x1b, 0xeb, 0x4e, 0xe4, 0x51, 0x95, 0x02, 0xfc, 0xfa, 0x3a, 0x65, 0x40, 0x67, 0xdc, 0x59, 0xf7, 0x2d, 0x04, 0xfa, 0x6e, 0x62, 0xde, 0xa4, 0x8d, 0x79, 0x13, 0xa0, 0x11, 0xe1, 0xa2, 0xf9, 0xc7, 0x67, 0x27, 0x67, }; static const unsigned char ecdh_brainpoolp384t1_5079_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5079_sharedsecret[] = { 0x79, 0x26, 0x43, 0x1d, 0xfe, 0x48, 0x0c, 0x2e, 0xf2, 0x1d, 0x95, 0x4e, 0xc5, 0x6b, 0x6f, 0x5e, 0x99, 0x21, 0x4a, 0x5a, 0x4b, 0x27, 0xb2, 0x8b, 0xdf, 0x62, 0xa4, 0x1f, 0xde, 0xd2, 0xbf, 0xb2, 0xe4, 0x25, 0x09, 0x09, 0xd8, 0xa6, 0xc4, 0x31, 0x02, 0x23, 0x72, 0x65, 0xdf, 0xc3, 0x07, 0xd1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5079 = { .name = "ecdh_brainpoolp384t1_5079", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5079_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5079_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5079_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2850 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5080 for ECDH, tcId is 2851 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5080_peerpubkey[] = { 0x22, 0xaf, 0xc4, 0x2f, 0xf7, 0x5d, 0xb7, 0x62, 0x76, 0x0a, 0x2b, 0xc5, 0x05, 0xbc, 0x48, 0x00, 0xab, 0xd9, 0x67, 0x88, 0x80, 0x39, 0x60, 0x3f, 0xe3, 0xce, 0xa9, 0x2a, 0xb7, 0xb9, 0x87, 0x92, 0xb7, 0x47, 0xbe, 0x3c, 0x83, 0xdb, 0x9a, 0xca, 0xab, 0xa0, 0x55, 0xc0, 0xa7, 0xae, 0x6c, 0xef, 0x20, 0xd6, 0xa8, 0x47, 0x65, 0xec, 0x7a, 0x4c, 0x0f, 0xf3, 0x0b, 0x3e, 0x08, 0x05, 0x55, 0x1e, 0xc4, 0x9b, 0xb7, 0xff, 0x9c, 0xca, 0xd6, 0x2e, 0x82, 0xd7, 0x93, 0x87, 0x16, 0xc2, 0xdd, 0x1f, 0xa4, 0x51, 0xdf, 0x1a, 0x96, 0xd9, 0x66, 0x88, 0xb0, 0xad, 0x95, 0x6e, 0x46, 0x96, 0x4d, 0x32, }; static const unsigned char ecdh_brainpoolp384t1_5080_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5080_sharedsecret[] = { 0x78, 0x33, 0x5c, 0xfc, 0xa3, 0x4d, 0x7e, 0x6f, 0x66, 0xd6, 0x28, 0xb1, 0xa9, 0x68, 0x7e, 0x75, 0xca, 0xd9, 0x62, 0xc1, 0x72, 0x14, 0x91, 0xca, 0x97, 0xce, 0x90, 0x09, 0x32, 0x48, 0x1b, 0x38, 0x7a, 0x21, 0xa8, 0xab, 0xab, 0x18, 0x56, 0x5a, 0xb2, 0x5f, 0x92, 0x24, 0xda, 0x66, 0x69, 0x77, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5080 = { .name = "ecdh_brainpoolp384t1_5080", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5080_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5080_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5080_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2851 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5081 for ECDH, tcId is 2852 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5081_peerpubkey[] = { 0x2d, 0x4d, 0x01, 0x80, 0x5e, 0xe0, 0xc4, 0x45, 0x92, 0x6e, 0x80, 0x29, 0xfd, 0x14, 0x7e, 0x80, 0xaa, 0xf9, 0x6b, 0xea, 0x55, 0xf4, 0x19, 0x4d, 0x35, 0x0f, 0xc4, 0xb2, 0x4a, 0x32, 0x4e, 0xbc, 0xf9, 0x51, 0x28, 0xf0, 0xea, 0x07, 0xaa, 0xcf, 0x0b, 0xf8, 0x40, 0x9d, 0xfc, 0xae, 0xd9, 0x5b, 0x77, 0xe5, 0xc5, 0x0b, 0x50, 0xde, 0x14, 0x89, 0xca, 0x84, 0xa2, 0x59, 0xca, 0x72, 0xde, 0x9e, 0xf6, 0x9f, 0x77, 0x58, 0x6d, 0x40, 0xfb, 0x54, 0xe5, 0x21, 0xea, 0x60, 0xc8, 0xb0, 0x35, 0xb5, 0x3f, 0x9e, 0x3e, 0xe8, 0xcb, 0x3e, 0x40, 0xa4, 0x26, 0xc9, 0x0e, 0xb9, 0x3c, 0x8a, 0x4e, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5081_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5081_sharedsecret[] = { 0x1a, 0x66, 0x11, 0xf6, 0xb7, 0x60, 0x85, 0x03, 0x76, 0x6f, 0xf7, 0x8f, 0xe1, 0x18, 0xaa, 0x56, 0xcf, 0x8f, 0xf9, 0xe9, 0x16, 0xec, 0xe5, 0x05, 0x88, 0xf5, 0xe3, 0x79, 0x8b, 0xd7, 0x85, 0x01, 0x50, 0x04, 0x4b, 0x53, 0x8f, 0x93, 0xc2, 0xb1, 0x4f, 0x95, 0xfd, 0x41, 0x3c, 0xaf, 0x20, 0xb5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5081 = { .name = "ecdh_brainpoolp384t1_5081", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5081_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5081_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5081_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2852 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5082 for ECDH, tcId is 2853 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5082_peerpubkey[] = { 0x0a, 0x70, 0x47, 0xc8, 0x31, 0x14, 0x3b, 0xcf, 0x04, 0x2d, 0xd6, 0x11, 0xed, 0x75, 0xcf, 0x3f, 0xae, 0x39, 0xcb, 0x8c, 0x45, 0xd0, 0x51, 0xbc, 0x3a, 0x41, 0x7f, 0x97, 0x2d, 0xfb, 0xd2, 0x90, 0x66, 0x71, 0x1c, 0x55, 0x69, 0x1e, 0xa5, 0xc3, 0x8d, 0xa9, 0xd1, 0x69, 0x90, 0x33, 0xa1, 0xe9, 0x67, 0x71, 0x0b, 0x68, 0x94, 0x9c, 0x76, 0xb2, 0xc7, 0xf0, 0x43, 0x35, 0x76, 0xbe, 0xf6, 0xa4, 0x13, 0x31, 0x16, 0x09, 0x7f, 0xdf, 0x4e, 0x32, 0x94, 0x5a, 0x0a, 0xff, 0x06, 0x2d, 0xe2, 0x56, 0x70, 0x3c, 0x11, 0xa7, 0x10, 0x99, 0xc7, 0x5c, 0xa7, 0xaa, 0xe5, 0xe7, 0xfc, 0x80, 0x84, 0xe3, }; static const unsigned char ecdh_brainpoolp384t1_5082_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5082_sharedsecret[] = { 0x30, 0x42, 0xe3, 0xa5, 0x57, 0x7f, 0x80, 0xe6, 0x01, 0xde, 0x2f, 0xd0, 0x44, 0x2f, 0x04, 0x00, 0xda, 0x64, 0xa4, 0xbf, 0xdf, 0xab, 0x7a, 0xbf, 0x19, 0x4d, 0xf9, 0x09, 0x37, 0x2e, 0x84, 0xf5, 0xb0, 0x55, 0x06, 0xa2, 0x2e, 0x6a, 0x68, 0x5c, 0x61, 0x5e, 0xc2, 0x14, 0x62, 0x4d, 0xc0, 0x3b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5082 = { .name = "ecdh_brainpoolp384t1_5082", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5082_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5082_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5082_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2853 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5083 for ECDH, tcId is 2854 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5083_peerpubkey[] = { 0x11, 0xa7, 0x5f, 0xd7, 0x99, 0x00, 0xd3, 0xe4, 0x30, 0xc4, 0xf9, 0xaf, 0x5d, 0x2a, 0x87, 0xe6, 0xb5, 0xa3, 0x41, 0x79, 0x00, 0x6c, 0xb9, 0x68, 0x71, 0x23, 0x79, 0x5f, 0x51, 0xe9, 0x1f, 0x52, 0xa8, 0xcf, 0x0b, 0x28, 0x3c, 0x96, 0xb2, 0x2f, 0xc6, 0x48, 0xf5, 0x10, 0x3c, 0xc7, 0x87, 0xc8, 0x80, 0x78, 0x51, 0x12, 0xbf, 0xf9, 0xaa, 0x6e, 0x8c, 0x8c, 0xa1, 0x74, 0x23, 0x52, 0x3c, 0x2c, 0x25, 0x4e, 0xe0, 0xa5, 0x48, 0x32, 0x51, 0x30, 0xc3, 0x71, 0x3f, 0x51, 0x96, 0x79, 0xab, 0xf0, 0x69, 0xeb, 0x61, 0x09, 0xd6, 0x78, 0xfa, 0x91, 0x0a, 0x50, 0x99, 0x24, 0xa6, 0x6c, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5083_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5083_sharedsecret[] = { 0x62, 0x7f, 0x39, 0xc7, 0x58, 0x01, 0x97, 0x7c, 0x2b, 0xb2, 0x25, 0x12, 0x69, 0x2e, 0xd3, 0x45, 0xd9, 0x15, 0x48, 0x18, 0x1c, 0x7d, 0x13, 0xab, 0xc9, 0x47, 0xb7, 0x01, 0x84, 0x7c, 0xbf, 0x54, 0x35, 0x85, 0x49, 0xd7, 0x3b, 0xdf, 0xed, 0xde, 0xcf, 0x24, 0x4e, 0xb3, 0xb9, 0xcf, 0x37, 0xb1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5083 = { .name = "ecdh_brainpoolp384t1_5083", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5083_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5083_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5083_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2854 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5084 for ECDH, tcId is 2855 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5084_peerpubkey[] = { 0x1d, 0xff, 0xce, 0x44, 0xd9, 0x5f, 0x95, 0xa7, 0x29, 0xae, 0xdf, 0x2e, 0x7e, 0x3a, 0xe7, 0x79, 0x07, 0x49, 0x7e, 0xa9, 0xc7, 0x44, 0x40, 0x30, 0x48, 0x23, 0x9f, 0xd7, 0x4f, 0x98, 0x21, 0xf0, 0x3e, 0xaf, 0x76, 0xec, 0x57, 0x0d, 0xaf, 0x4d, 0x4d, 0xfc, 0xb1, 0x7a, 0xdd, 0x36, 0x4e, 0xe5, 0x6a, 0x85, 0x37, 0xc9, 0x74, 0x5b, 0x88, 0xd4, 0x63, 0xe7, 0x03, 0xb3, 0x16, 0x8c, 0x32, 0x2c, 0xb7, 0x2d, 0x3c, 0x70, 0xc6, 0xbd, 0xfb, 0xcb, 0x68, 0x90, 0x3b, 0xa8, 0xca, 0xf0, 0x6e, 0x15, 0xb2, 0x85, 0xd0, 0x5e, 0x56, 0x76, 0x75, 0x4a, 0xd3, 0x98, 0xe1, 0x6c, 0xb5, 0x5d, 0xc5, 0x89, }; static const unsigned char ecdh_brainpoolp384t1_5084_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5084_sharedsecret[] = { 0x1a, 0x6f, 0x38, 0xea, 0x31, 0xa7, 0x8f, 0x02, 0x0a, 0xc7, 0xe8, 0x89, 0x41, 0x6f, 0xe6, 0x3c, 0x00, 0xcd, 0xd0, 0x01, 0xd2, 0x03, 0xd4, 0xf9, 0xdb, 0x3f, 0xcf, 0x08, 0x3f, 0x01, 0x9b, 0xa9, 0x59, 0xa4, 0x70, 0x31, 0x37, 0x64, 0x3c, 0x79, 0xa3, 0x5a, 0xc6, 0xdd, 0x32, 0xeb, 0x76, 0x5b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5084 = { .name = "ecdh_brainpoolp384t1_5084", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5084_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5084_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5084_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2855 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5085 for ECDH, tcId is 2856 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5085_peerpubkey[] = { 0x5a, 0x5e, 0xd3, 0x3f, 0xae, 0xf0, 0xe8, 0x39, 0x1c, 0xdd, 0x6a, 0xc0, 0xc0, 0x7a, 0x4d, 0xe3, 0xce, 0x2f, 0xb3, 0x0d, 0xcf, 0x2c, 0x49, 0xc5, 0x8f, 0x43, 0xa5, 0xbe, 0x49, 0x3e, 0x2b, 0xe1, 0xe5, 0x94, 0xd2, 0xd2, 0x4e, 0x9a, 0xc8, 0x87, 0xf1, 0x1a, 0x98, 0xf8, 0x13, 0x2a, 0x84, 0x88, 0x20, 0xab, 0x21, 0x56, 0x79, 0x0d, 0x98, 0x04, 0x6e, 0x4d, 0xad, 0xb8, 0x5a, 0x35, 0x13, 0x68, 0xbf, 0xf1, 0x86, 0xb5, 0x36, 0xc6, 0x2e, 0xda, 0x0e, 0x26, 0xfc, 0xfd, 0x91, 0x98, 0x1e, 0x59, 0xa9, 0xc7, 0x4c, 0xa4, 0xc8, 0x9b, 0x79, 0x20, 0x01, 0xf5, 0xeb, 0x4f, 0xa9, 0x2d, 0x86, 0xb5, }; static const unsigned char ecdh_brainpoolp384t1_5085_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5085_sharedsecret[] = { 0x61, 0xb6, 0x50, 0x00, 0x8a, 0x73, 0xa7, 0xe8, 0x12, 0x0b, 0x12, 0x0c, 0xed, 0x82, 0xda, 0x89, 0x16, 0x0f, 0x63, 0x1c, 0x81, 0x7d, 0x43, 0x04, 0x51, 0x1c, 0xd0, 0x82, 0xea, 0xe5, 0x30, 0x7a, 0xe8, 0x80, 0xa1, 0xfc, 0x94, 0x70, 0xaa, 0x17, 0xf6, 0x84, 0xe4, 0x92, 0xa9, 0xd9, 0x10, 0x64, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5085 = { .name = "ecdh_brainpoolp384t1_5085", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5085_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5085_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5085_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2856 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5086 for ECDH, tcId is 2857 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5086_peerpubkey[] = { 0x7c, 0xaa, 0x36, 0xa7, 0x5a, 0x51, 0xbb, 0x26, 0x40, 0xca, 0xba, 0xd7, 0x0a, 0x73, 0x11, 0xf9, 0x96, 0xc0, 0xfb, 0xa9, 0xbc, 0x59, 0x44, 0xbc, 0x03, 0x50, 0x4f, 0xd9, 0x84, 0x22, 0x1a, 0xe8, 0x19, 0x9a, 0x90, 0x9c, 0x10, 0x38, 0x50, 0x46, 0x33, 0xc4, 0x61, 0x15, 0x7b, 0x18, 0xee, 0x8f, 0x44, 0x13, 0x0f, 0x17, 0xb4, 0x43, 0x12, 0x47, 0x50, 0x54, 0xce, 0xc8, 0x9d, 0xd4, 0x88, 0xe4, 0xcb, 0xf6, 0x56, 0x0c, 0x66, 0x9d, 0xa2, 0x7e, 0x92, 0x33, 0x7e, 0x55, 0x02, 0xa6, 0x56, 0x5c, 0x75, 0xa2, 0xe1, 0xf8, 0x14, 0x11, 0x12, 0xfd, 0xb7, 0xd1, 0x4b, 0xa0, 0xd5, 0x4a, 0x0c, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5086_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5086_sharedsecret[] = { 0x58, 0x8f, 0x9b, 0x15, 0xb4, 0xa6, 0x7f, 0x41, 0x7c, 0xeb, 0x81, 0x3e, 0xc4, 0xdb, 0x6c, 0x37, 0xa3, 0x61, 0xe7, 0x03, 0xf2, 0xd5, 0x92, 0x68, 0x6a, 0xd3, 0xcb, 0x8e, 0x19, 0xda, 0x73, 0x63, 0x22, 0x28, 0xc7, 0x18, 0x62, 0xe5, 0xf6, 0x78, 0x81, 0xb8, 0x5c, 0x38, 0x07, 0x92, 0xcf, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5086 = { .name = "ecdh_brainpoolp384t1_5086", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5086_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5086_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5086_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2857 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5087 for ECDH, tcId is 2858 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5087_peerpubkey[] = { 0x47, 0xfc, 0x8e, 0x95, 0xdb, 0x47, 0x73, 0x75, 0xa3, 0x72, 0x86, 0xd4, 0xda, 0xc1, 0x50, 0x19, 0x4c, 0xe8, 0xe2, 0x0b, 0x19, 0x90, 0x10, 0x79, 0x3a, 0xa3, 0x76, 0x71, 0x3c, 0x13, 0xd3, 0x07, 0x5a, 0x9c, 0x56, 0x49, 0x41, 0x64, 0x14, 0xbf, 0x4c, 0xd4, 0x4c, 0x1a, 0x09, 0x02, 0x42, 0xa5, 0x5a, 0x83, 0x12, 0xc7, 0x92, 0xb4, 0x5e, 0x56, 0x4c, 0x60, 0xe6, 0x8b, 0x3c, 0x73, 0x89, 0xda, 0xb4, 0x59, 0x4c, 0x60, 0x8c, 0xcb, 0xfe, 0x00, 0x5c, 0xc6, 0x24, 0x66, 0x36, 0x45, 0x9f, 0x08, 0xb9, 0x9f, 0x5c, 0x30, 0x55, 0x62, 0xfc, 0x39, 0x32, 0xbf, 0xbf, 0x89, 0x2a, 0xa8, 0x99, 0x57, }; static const unsigned char ecdh_brainpoolp384t1_5087_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5087_sharedsecret[] = { 0x56, 0x93, 0x16, 0xbb, 0x27, 0xa7, 0x95, 0xc2, 0x10, 0x79, 0x06, 0xee, 0x36, 0x27, 0x1e, 0x77, 0x97, 0xec, 0x86, 0x11, 0xfd, 0x99, 0xcb, 0x88, 0x76, 0x7b, 0x99, 0x3a, 0x55, 0xc0, 0xe6, 0x34, 0xd6, 0xf2, 0x1c, 0x9c, 0x2b, 0x43, 0x19, 0x28, 0x10, 0x59, 0x90, 0x66, 0xd3, 0x35, 0x57, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5087 = { .name = "ecdh_brainpoolp384t1_5087", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5087_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5087_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5087_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2858 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5088 for ECDH, tcId is 2859 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5088_peerpubkey[] = { 0x5e, 0x74, 0x33, 0xfe, 0x8d, 0xaf, 0x95, 0x7a, 0x6e, 0x15, 0xc0, 0xe8, 0xa9, 0x98, 0x0a, 0xec, 0xf0, 0x4a, 0xe0, 0x1f, 0xf6, 0xc5, 0x50, 0x9b, 0x70, 0x2d, 0x9b, 0x28, 0x23, 0x09, 0x9f, 0xff, 0x5b, 0x30, 0xb5, 0x85, 0xb4, 0x3d, 0xfb, 0xd3, 0x7d, 0x16, 0xcb, 0x86, 0xa4, 0x5e, 0x07, 0x6e, 0x80, 0xb7, 0x7b, 0xe4, 0x85, 0xc8, 0xcf, 0xf2, 0x30, 0x00, 0x84, 0x89, 0x06, 0xb1, 0x52, 0x9c, 0x0e, 0x0c, 0xc7, 0x6e, 0xa1, 0x01, 0x2d, 0x27, 0x41, 0x58, 0x05, 0xa8, 0x36, 0xa6, 0x9a, 0xc5, 0xf9, 0x5d, 0xe5, 0xc8, 0x5b, 0x59, 0x89, 0x91, 0xd7, 0x75, 0x01, 0x6e, 0xd1, 0x32, 0x5c, 0x21, }; static const unsigned char ecdh_brainpoolp384t1_5088_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5088_sharedsecret[] = { 0x35, 0xfa, 0xef, 0x58, 0x9b, 0xf1, 0xb9, 0x06, 0x9d, 0x10, 0xd9, 0xa6, 0x7d, 0x39, 0x48, 0x9d, 0x2b, 0x50, 0xa0, 0x57, 0x3b, 0x09, 0x9b, 0x39, 0x87, 0x3d, 0x9c, 0x97, 0x9d, 0x12, 0xc3, 0xf5, 0x24, 0xbc, 0xdb, 0x00, 0xa5, 0x49, 0x6d, 0x31, 0x4e, 0x93, 0xe7, 0x58, 0x87, 0x28, 0x06, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5088 = { .name = "ecdh_brainpoolp384t1_5088", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5088_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5088_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5088_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2859 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5089 for ECDH, tcId is 2860 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5089_peerpubkey[] = { 0x7e, 0xad, 0xd8, 0xb5, 0x8b, 0xe6, 0xf5, 0x40, 0xae, 0x28, 0x0e, 0x35, 0x34, 0xc9, 0x63, 0xd8, 0xca, 0x46, 0x24, 0x80, 0xb4, 0xe1, 0x04, 0x83, 0x40, 0x0e, 0xea, 0x8a, 0x62, 0x9d, 0xc8, 0x55, 0x63, 0x55, 0xc5, 0x57, 0x49, 0x0a, 0x28, 0x97, 0xd3, 0x2c, 0x23, 0x69, 0x5e, 0x19, 0xdd, 0x54, 0x4f, 0x53, 0xdd, 0x47, 0x47, 0x36, 0x3a, 0x4d, 0xe1, 0x2f, 0xdb, 0xa6, 0xf5, 0x9c, 0x3c, 0x04, 0xf9, 0x01, 0xa6, 0x79, 0x74, 0x83, 0xb2, 0xa8, 0x53, 0x98, 0x4a, 0x6e, 0xee, 0x99, 0xb3, 0x27, 0x91, 0xb9, 0xea, 0x97, 0xfc, 0x3a, 0xd7, 0x7f, 0x96, 0xcb, 0x49, 0xa5, 0xe4, 0x5e, 0x3c, 0xc5, }; static const unsigned char ecdh_brainpoolp384t1_5089_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5089_sharedsecret[] = { 0x05, 0x24, 0x20, 0xe8, 0x0f, 0x69, 0x19, 0x24, 0x53, 0x11, 0x32, 0x3b, 0xf3, 0x08, 0xf6, 0xd0, 0xfa, 0x7c, 0x9a, 0x4a, 0xb7, 0xd1, 0xf8, 0xf5, 0x74, 0x21, 0x41, 0xb4, 0x30, 0xdc, 0xa3, 0x7b, 0x23, 0x9a, 0x5d, 0xd9, 0xe1, 0x66, 0x57, 0x87, 0x32, 0xdc, 0x26, 0x9f, 0xec, 0x3e, 0x39, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5089 = { .name = "ecdh_brainpoolp384t1_5089", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5089_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5089_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5089_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2860 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5090 for ECDH, tcId is 2861 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5090_peerpubkey[] = { 0x61, 0xe5, 0xbf, 0x91, 0xb2, 0x5f, 0xb2, 0xf4, 0xf3, 0xc3, 0xc8, 0xe9, 0xfc, 0x2f, 0x61, 0x71, 0x3a, 0x7c, 0xd6, 0x90, 0xc7, 0xe6, 0x6c, 0x49, 0xed, 0xde, 0xdf, 0xd6, 0x27, 0xa2, 0xa7, 0x79, 0x60, 0x42, 0xcd, 0xb3, 0x67, 0xc1, 0xed, 0x72, 0xf7, 0xd1, 0x1e, 0x58, 0x2a, 0x74, 0xd2, 0x1c, 0x5e, 0xec, 0x7a, 0x55, 0x3d, 0xdb, 0x5f, 0xf7, 0x84, 0xb9, 0x26, 0xb4, 0xa9, 0x77, 0x4a, 0x24, 0x99, 0xd5, 0xab, 0xee, 0xb1, 0x5a, 0xcc, 0x32, 0xba, 0x89, 0xd3, 0x73, 0xa5, 0xc0, 0xa2, 0xdb, 0x8c, 0x3b, 0xaa, 0x4e, 0x29, 0xf0, 0xf5, 0x1d, 0xf6, 0xd4, 0x78, 0x90, 0x12, 0x82, 0xb1, 0xbf, }; static const unsigned char ecdh_brainpoolp384t1_5090_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5090_sharedsecret[] = { 0x46, 0xbd, 0x8a, 0xf0, 0x2c, 0x9d, 0xae, 0x0f, 0x27, 0x97, 0x36, 0x64, 0x96, 0xc2, 0x92, 0xf5, 0x95, 0xb3, 0xc5, 0xf6, 0xee, 0x48, 0x00, 0x7e, 0x3f, 0x14, 0xdf, 0x50, 0x65, 0xf5, 0x0b, 0x06, 0x6b, 0xd6, 0x0e, 0x7d, 0x9e, 0xcf, 0xf2, 0x0a, 0xf3, 0xf6, 0x9b, 0x1a, 0x8e, 0x6d, 0x60, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5090 = { .name = "ecdh_brainpoolp384t1_5090", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5090_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5090_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5090_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2861 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5091 for ECDH, tcId is 2862 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5091_peerpubkey[] = { 0x54, 0x7a, 0x72, 0x7c, 0x78, 0x45, 0xab, 0xba, 0x83, 0x3f, 0xaa, 0x23, 0xfa, 0xc9, 0xa1, 0xea, 0xf2, 0x72, 0x1d, 0xee, 0x45, 0xd4, 0xcc, 0x65, 0xdf, 0xd6, 0xe9, 0x5b, 0x0f, 0xbb, 0x74, 0xd2, 0x93, 0xc2, 0x34, 0x6d, 0x25, 0xf8, 0x20, 0x6a, 0xbd, 0x63, 0xb6, 0x86, 0xf2, 0xe4, 0x05, 0xb8, 0x46, 0xff, 0x08, 0x94, 0x22, 0x9f, 0xfb, 0xfb, 0x9d, 0x9b, 0x25, 0xcf, 0x20, 0x77, 0x61, 0x5f, 0xd8, 0x0b, 0x79, 0x49, 0xb4, 0xa3, 0xab, 0x44, 0xcb, 0x39, 0x50, 0xee, 0x40, 0x94, 0x60, 0xe3, 0x58, 0x0f, 0x6f, 0x89, 0x14, 0x2f, 0x2c, 0x40, 0xdc, 0x66, 0xca, 0x68, 0xb9, 0x52, 0xba, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5091_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5091_sharedsecret[] = { 0x65, 0x90, 0x0e, 0xad, 0x6f, 0xa4, 0x54, 0x9d, 0x22, 0x2c, 0xb5, 0xe0, 0x8e, 0xad, 0xe4, 0x8c, 0x92, 0x6a, 0x67, 0x48, 0x55, 0x54, 0x6b, 0xa2, 0xa2, 0xff, 0xfe, 0x54, 0x5a, 0xd9, 0x5e, 0xb9, 0xab, 0xaa, 0xad, 0x61, 0xa9, 0x96, 0x30, 0x07, 0x6d, 0xf7, 0x64, 0xa1, 0xe7, 0xe1, 0xdf, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5091 = { .name = "ecdh_brainpoolp384t1_5091", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5091_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5091_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5091_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2862 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5092 for ECDH, tcId is 2863 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5092_peerpubkey[] = { 0x01, 0x8b, 0xd9, 0xee, 0x88, 0x10, 0xe7, 0x44, 0x40, 0x81, 0x05, 0xfa, 0xcb, 0x83, 0x56, 0x69, 0x98, 0xb1, 0xfb, 0x47, 0xcb, 0xa7, 0x11, 0x57, 0x89, 0x99, 0xf8, 0x8e, 0xad, 0x8b, 0x81, 0x84, 0x6b, 0x8c, 0x69, 0x6e, 0x89, 0x64, 0x07, 0xfe, 0x7c, 0x65, 0x67, 0xd3, 0xb4, 0x50, 0x38, 0x21, 0x6e, 0x55, 0x9b, 0x2b, 0xa1, 0xb8, 0x2e, 0x0f, 0xdd, 0x97, 0x0a, 0x66, 0x40, 0xba, 0x51, 0x23, 0x43, 0xa4, 0x66, 0x2b, 0xad, 0x74, 0xc1, 0x47, 0x65, 0xd1, 0x66, 0xae, 0x6e, 0xe0, 0xe0, 0x51, 0xac, 0x63, 0x28, 0xb4, 0x70, 0xa6, 0x5d, 0x87, 0x51, 0x5b, 0xf2, 0x0d, 0xa1, 0xd0, 0xdf, 0xa3, }; static const unsigned char ecdh_brainpoolp384t1_5092_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5092_sharedsecret[] = { 0x44, 0xf9, 0x7e, 0x2a, 0x51, 0x36, 0x47, 0xac, 0x79, 0xf5, 0x48, 0x42, 0x4b, 0xcb, 0xad, 0x7d, 0x14, 0x75, 0x98, 0x35, 0x0e, 0x44, 0x11, 0x7a, 0xa7, 0xc3, 0x64, 0x50, 0x39, 0x73, 0x5a, 0x92, 0x82, 0x7f, 0xe4, 0x7c, 0x6f, 0x02, 0xda, 0x70, 0x5b, 0x89, 0xbe, 0xda, 0x1f, 0xf0, 0x5c, 0xcd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5092 = { .name = "ecdh_brainpoolp384t1_5092", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5092_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5092_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5092_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2863 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5093 for ECDH, tcId is 2864 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5093_peerpubkey[] = { 0x4b, 0x9d, 0x9d, 0x8c, 0x9c, 0xf8, 0x57, 0xad, 0x92, 0x17, 0x10, 0x6f, 0x80, 0xf2, 0xdf, 0xc5, 0x48, 0x71, 0x66, 0x88, 0xfc, 0x0b, 0xb8, 0xe7, 0x02, 0xf3, 0x3f, 0xf7, 0x92, 0xe3, 0xc6, 0xbd, 0x37, 0xdf, 0xeb, 0x3f, 0x3b, 0xf9, 0xc7, 0x1d, 0x35, 0xbf, 0xbf, 0x03, 0x3e, 0x4f, 0xec, 0x4c, 0x4b, 0xc6, 0x14, 0x15, 0x9b, 0xb2, 0x25, 0xdf, 0x84, 0x68, 0x40, 0x20, 0x6c, 0xe8, 0x2e, 0xb1, 0xb0, 0x48, 0xba, 0xae, 0x32, 0xf3, 0x2a, 0xae, 0x3d, 0xaa, 0xbe, 0x85, 0x30, 0x5b, 0xb1, 0xc2, 0xcf, 0x3d, 0x44, 0x4a, 0x05, 0x2f, 0x8e, 0xa4, 0xfb, 0x43, 0xb0, 0xc4, 0x3b, 0x2b, 0x0d, 0xad, }; static const unsigned char ecdh_brainpoolp384t1_5093_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5093_sharedsecret[] = { 0x6a, 0xe4, 0x89, 0x58, 0x1c, 0xfd, 0xe6, 0xb6, 0x8b, 0x8d, 0x1e, 0x7f, 0xe8, 0x9f, 0x43, 0x47, 0x24, 0x9b, 0xe0, 0x2d, 0x9f, 0xa1, 0x3d, 0x81, 0x1e, 0x6a, 0xc0, 0xd2, 0xc6, 0xa4, 0xcd, 0xb1, 0x70, 0x37, 0xd6, 0x09, 0x10, 0xe1, 0xab, 0x6e, 0x3c, 0x82, 0xde, 0x9b, 0x4b, 0xf3, 0xd8, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5093 = { .name = "ecdh_brainpoolp384t1_5093", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5093_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5093_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5093_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2864 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5094 for ECDH, tcId is 2865 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5094_peerpubkey[] = { 0x74, 0x9f, 0x15, 0x83, 0xe6, 0x91, 0xea, 0x95, 0x56, 0xf0, 0xdc, 0x89, 0xbe, 0xd3, 0xa1, 0x76, 0x71, 0x5c, 0xb4, 0xef, 0x84, 0xab, 0x62, 0x9f, 0x56, 0x02, 0x0c, 0x73, 0x7a, 0x61, 0xd4, 0xdc, 0xd5, 0xb8, 0x84, 0xac, 0xc5, 0x21, 0x0d, 0xf2, 0x52, 0x37, 0xc4, 0x8b, 0x31, 0x3c, 0x7d, 0x06, 0x6c, 0x3d, 0x98, 0x31, 0xce, 0xe3, 0xd7, 0xd6, 0x1d, 0x2b, 0x9d, 0x2a, 0xf5, 0xbe, 0xe6, 0xd2, 0x72, 0x78, 0x0f, 0x10, 0x44, 0xe1, 0xec, 0xa9, 0xae, 0x83, 0x31, 0xa4, 0xf7, 0x90, 0x1a, 0xfc, 0x9e, 0x97, 0xbb, 0xb1, 0x8e, 0x47, 0xfb, 0x20, 0x94, 0xc8, 0xa4, 0x64, 0xbf, 0xbe, 0x89, 0x30, }; static const unsigned char ecdh_brainpoolp384t1_5094_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5094_sharedsecret[] = { 0x10, 0x57, 0xce, 0xc1, 0xcf, 0x55, 0xb7, 0x8b, 0x81, 0xa8, 0x4b, 0xfd, 0x29, 0xd4, 0x06, 0xec, 0x69, 0x09, 0xfe, 0xd4, 0x54, 0xf0, 0x29, 0x02, 0x8e, 0x62, 0x5b, 0x4b, 0x7e, 0xd7, 0x35, 0x5f, 0x04, 0x40, 0xe1, 0x5c, 0x5e, 0x17, 0xf6, 0x10, 0x92, 0xc7, 0x4a, 0x7f, 0xc9, 0x06, 0x74, 0xf6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5094 = { .name = "ecdh_brainpoolp384t1_5094", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5094_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5094_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5094_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2865 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5095 for ECDH, tcId is 2866 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5095_peerpubkey[] = { 0x78, 0x5f, 0xf9, 0x98, 0xa8, 0xb8, 0x9c, 0x49, 0x70, 0xb3, 0x6f, 0xb5, 0x51, 0x58, 0x12, 0xf7, 0x10, 0xdf, 0xc0, 0xc5, 0xb8, 0x92, 0x31, 0x90, 0x34, 0xe1, 0x6c, 0xf8, 0xdd, 0xe8, 0x70, 0x90, 0x60, 0x8d, 0x4f, 0x1b, 0x13, 0xc6, 0x15, 0xf0, 0x22, 0x2f, 0xb5, 0xf3, 0xef, 0x36, 0x52, 0xe8, 0x3f, 0x23, 0x7e, 0x2b, 0x7c, 0x98, 0x15, 0x78, 0x38, 0x7d, 0x49, 0xee, 0x3c, 0xd4, 0x3a, 0xf0, 0xad, 0x5d, 0xff, 0xf6, 0x71, 0xb3, 0x6b, 0x52, 0x0e, 0x7e, 0x96, 0x18, 0x77, 0x15, 0x44, 0x29, 0x6c, 0xec, 0x26, 0x41, 0xa6, 0x9c, 0xee, 0xbc, 0xa3, 0x69, 0xdf, 0x95, 0xf0, 0xf6, 0x32, 0x7c, }; static const unsigned char ecdh_brainpoolp384t1_5095_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5095_sharedsecret[] = { 0x2e, 0x30, 0xfb, 0x04, 0x26, 0xdb, 0x2f, 0xaa, 0x09, 0xcb, 0xbf, 0xbe, 0x4b, 0xd6, 0x28, 0x22, 0xf4, 0x3d, 0xc3, 0x59, 0x28, 0x8d, 0x3d, 0x52, 0x9f, 0x19, 0x59, 0xa8, 0x5e, 0x9b, 0xcb, 0xc7, 0xdf, 0x99, 0xdb, 0x28, 0xab, 0x68, 0xcc, 0x8b, 0x5b, 0x70, 0x6a, 0x33, 0xaa, 0x17, 0xd8, 0xca, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5095 = { .name = "ecdh_brainpoolp384t1_5095", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5095_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5095_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5095_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2866 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5096 for ECDH, tcId is 2867 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5096_peerpubkey[] = { 0x67, 0x27, 0x36, 0xd1, 0x43, 0x78, 0x3c, 0x71, 0xa5, 0x00, 0x1a, 0xe1, 0x9b, 0x7c, 0x65, 0x7f, 0x8f, 0x58, 0x3e, 0xff, 0x3d, 0xb0, 0x88, 0xeb, 0x5a, 0x12, 0x07, 0x0e, 0x98, 0xdc, 0x22, 0x99, 0x1e, 0xb7, 0x70, 0xc3, 0x74, 0xf5, 0x37, 0xd9, 0xc4, 0x4d, 0x16, 0x1a, 0x6e, 0xe7, 0xe6, 0x30, 0x7b, 0xf5, 0x9f, 0x2d, 0x50, 0xfe, 0x8f, 0xc5, 0x94, 0x7c, 0xc8, 0xa1, 0x53, 0x68, 0x5a, 0x53, 0xe4, 0x31, 0xd9, 0x95, 0x9a, 0xd0, 0xd2, 0x11, 0x5c, 0x72, 0xc7, 0x48, 0x24, 0x13, 0xef, 0xd8, 0x03, 0x3d, 0xbe, 0x10, 0x12, 0xad, 0xcd, 0xd8, 0x6e, 0x5a, 0xa8, 0xb0, 0x03, 0x96, 0x84, 0x62, }; static const unsigned char ecdh_brainpoolp384t1_5096_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5096_sharedsecret[] = { 0x3f, 0x9c, 0x9b, 0xef, 0xec, 0xfa, 0x9c, 0x17, 0x64, 0x3f, 0x4c, 0xd8, 0x90, 0xdb, 0x4b, 0xeb, 0x26, 0xa0, 0xba, 0x14, 0xf4, 0x49, 0x85, 0xe7, 0x6d, 0xf5, 0x9d, 0x18, 0xf9, 0xf5, 0x1e, 0xe9, 0xf8, 0x0f, 0x43, 0x7f, 0x88, 0xae, 0x8c, 0x39, 0xd2, 0x65, 0x30, 0xbe, 0x50, 0xc4, 0x07, 0x15, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5096 = { .name = "ecdh_brainpoolp384t1_5096", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5096_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5096_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5096_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2867 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5097 for ECDH, tcId is 2868 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5097_peerpubkey[] = { 0x63, 0xff, 0xd1, 0x11, 0x7e, 0xd9, 0x5a, 0x2e, 0xd5, 0xc4, 0x79, 0x3c, 0x07, 0x95, 0x66, 0x83, 0x5b, 0x99, 0xab, 0xdb, 0x3d, 0xeb, 0xbd, 0x7c, 0x67, 0x6d, 0x63, 0x0b, 0xd4, 0x37, 0xeb, 0xb6, 0xf8, 0x7f, 0x60, 0x36, 0xf1, 0xda, 0x8b, 0xed, 0xc1, 0xcc, 0xa2, 0xe5, 0x72, 0x29, 0x5b, 0x0d, 0x0a, 0xda, 0x55, 0x0f, 0x20, 0x5e, 0x4b, 0x6a, 0xe7, 0x9f, 0x5b, 0xba, 0x8e, 0x5d, 0xcf, 0x8b, 0xe3, 0x1f, 0xfe, 0xcb, 0x18, 0x5a, 0xa1, 0x8d, 0x72, 0x23, 0x5a, 0x60, 0xb4, 0x0b, 0xee, 0xfb, 0x05, 0x43, 0x9c, 0xc7, 0xf5, 0xa5, 0xda, 0xcc, 0x00, 0xcc, 0x0d, 0x61, 0xb1, 0x26, 0x13, 0xcc, }; static const unsigned char ecdh_brainpoolp384t1_5097_privkey[] = { 0x4a, 0x7f, 0xa2, 0xb9, 0x89, 0x02, 0x07, 0xfe, 0xe6, 0xe4, 0x77, 0x5f, 0xae, 0x86, 0xe3, 0x44, 0xf0, 0x0e, 0x0d, 0x77, 0x4c, 0xe5, 0x23, 0x8f, 0xf3, 0x10, 0xec, 0x06, 0x2d, 0xdb, 0x88, 0x16, 0xb2, 0xca, 0xec, 0x0c, 0x4f, 0x8a, 0x18, 0x08, 0x5a, 0x20, 0x92, 0x5e, 0xea, 0xe4, 0xc2, 0xc1, }; static const unsigned char ecdh_brainpoolp384t1_5097_sharedsecret[] = { 0x2a, 0x5e, 0xa9, 0x09, 0xd6, 0x22, 0x9f, 0x69, 0x5c, 0xc8, 0x91, 0xbf, 0xbb, 0x8e, 0x12, 0x35, 0xeb, 0xdf, 0x25, 0x5e, 0x56, 0xe4, 0xe7, 0x74, 0x40, 0x38, 0xd6, 0x47, 0x03, 0x47, 0x42, 0x42, 0x97, 0xcd, 0x19, 0xf2, 0xdf, 0x34, 0x50, 0x85, 0x49, 0xb9, 0x16, 0x08, 0x66, 0x05, 0xfa, 0xf3, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5097 = { .name = "ecdh_brainpoolp384t1_5097", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5097_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5097_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5097_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 2868 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5098 for ECDH, tcId is 2869 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5098_peerpubkey[] = { 0x4c, 0xef, 0x89, 0xb3, 0x97, 0xeb, 0x3e, 0x5d, 0xe3, 0x38, 0x85, 0x0f, 0x0c, 0x20, 0x96, 0x96, 0xa2, 0xc2, 0x96, 0xf8, 0x20, 0x23, 0xd7, 0x36, 0x73, 0xf7, 0xa1, 0x4c, 0x99, 0xd3, 0x93, 0xce, 0xc9, 0x70, 0x43, 0x08, 0xb0, 0x53, 0x2f, 0x7d, 0x85, 0xe9, 0x81, 0x6e, 0x22, 0x8c, 0xa3, 0x7e, 0x18, 0x8b, 0x9a, 0x7c, 0x41, 0x4a, 0x94, 0x65, 0xc9, 0xb7, 0xbe, 0xc0, 0xe6, 0xd9, 0x05, 0xbd, 0x98, 0x4a, 0x84, 0xfc, 0x32, 0x73, 0x53, 0xed, 0xee, 0x1f, 0xdd, 0x40, 0x1c, 0x1f, 0xa7, 0xc9, 0x9b, 0xdd, 0xdb, 0x77, 0xa5, 0xb1, 0x39, 0x9e, 0x1e, 0xa8, 0x5b, 0xf2, 0xfb, 0x96, 0x4b, 0x91, }; static const unsigned char ecdh_brainpoolp384t1_5098_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5098_sharedsecret[] = { 0x2a, 0x53, 0x64, 0xd2, 0x24, 0x6b, 0xcd, 0xa9, 0x6e, 0xd7, 0x3f, 0xbf, 0xc8, 0x02, 0xd4, 0xe9, 0xfa, 0xbe, 0xfb, 0xdb, 0x25, 0x59, 0x21, 0xd6, 0x9e, 0x52, 0x78, 0x1b, 0xef, 0xa5, 0xf4, 0x7d, 0x24, 0x01, 0xd7, 0x2e, 0x41, 0xcb, 0x83, 0x43, 0xe2, 0x88, 0x42, 0x88, 0x56, 0x16, 0x7f, 0x13, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5098 = { .name = "ecdh_brainpoolp384t1_5098", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5098_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5098_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5098_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2869 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5099 for ECDH, tcId is 2870 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5099_peerpubkey[] = { 0x01, 0x28, 0x5d, 0xec, 0x46, 0x08, 0x3e, 0xaf, 0x3c, 0x56, 0x6c, 0xf1, 0x80, 0xae, 0x7b, 0xbb, 0x23, 0xc4, 0xc6, 0x66, 0xaa, 0x93, 0x6c, 0xbf, 0x00, 0x7b, 0x0a, 0xbe, 0xdf, 0xfd, 0x14, 0x0d, 0xb9, 0x94, 0x72, 0xc2, 0x4c, 0xf7, 0x26, 0x70, 0x62, 0x90, 0x9b, 0xe1, 0x83, 0x00, 0xb2, 0x2f, 0x6b, 0xa5, 0x9a, 0x8f, 0xc8, 0x84, 0xc4, 0xc1, 0x61, 0xec, 0xc1, 0x7f, 0x2a, 0xb5, 0x6e, 0x13, 0x46, 0x08, 0x6b, 0x56, 0xbd, 0x19, 0xea, 0x04, 0x1b, 0x69, 0xe6, 0x66, 0x7d, 0x4b, 0xaf, 0x99, 0x78, 0xd9, 0xce, 0xb6, 0xe8, 0xc0, 0xb7, 0x8b, 0x35, 0x66, 0xf3, 0xc7, 0x3c, 0x1a, 0x5d, 0x18, }; static const unsigned char ecdh_brainpoolp384t1_5099_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5099_sharedsecret[] = { 0x84, 0x3a, 0x80, 0xed, 0x65, 0x11, 0x7d, 0xd3, 0x4d, 0xca, 0x15, 0x14, 0x5d, 0x45, 0x21, 0x4c, 0x15, 0xf5, 0x50, 0x7d, 0x64, 0x48, 0xf0, 0x4a, 0xfe, 0xd6, 0xf4, 0x27, 0x25, 0xf3, 0x52, 0x59, 0x1a, 0x7d, 0x4f, 0x30, 0x17, 0xf7, 0xbf, 0x4e, 0x7e, 0xe4, 0xdc, 0x20, 0xa2, 0x74, 0xb7, 0x30, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5099 = { .name = "ecdh_brainpoolp384t1_5099", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5099_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5099_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5099_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2870 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5100 for ECDH, tcId is 2871 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5100_peerpubkey[] = { 0x01, 0x8e, 0x6d, 0x9f, 0x3c, 0x8b, 0x01, 0x7f, 0xa0, 0xd1, 0x83, 0xfe, 0x56, 0x34, 0xb1, 0x2f, 0x27, 0x19, 0xa2, 0xef, 0xc2, 0x4b, 0xdc, 0x9c, 0xbf, 0x06, 0x27, 0x6a, 0x51, 0xa2, 0xd9, 0x95, 0xf3, 0xaa, 0xf9, 0xfb, 0x90, 0x2b, 0x0e, 0x61, 0xa7, 0x47, 0x7f, 0xa8, 0x4d, 0x46, 0x92, 0x2f, 0x08, 0x0c, 0x3b, 0x67, 0xd4, 0x59, 0x89, 0x63, 0x3c, 0xda, 0x4e, 0x40, 0x0e, 0x49, 0x48, 0x1b, 0x82, 0x7b, 0x94, 0x79, 0x9e, 0x2e, 0xd1, 0x7f, 0xe7, 0xa8, 0x89, 0xaa, 0x84, 0xd0, 0xac, 0x59, 0x41, 0x50, 0xfd, 0x20, 0xdf, 0x86, 0x81, 0x8b, 0xd9, 0x35, 0xbf, 0xac, 0x2e, 0x13, 0xb0, 0xd2, }; static const unsigned char ecdh_brainpoolp384t1_5100_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5100_sharedsecret[] = { 0x1a, 0xeb, 0x37, 0x3e, 0xdc, 0x90, 0x33, 0x7c, 0xa0, 0x00, 0x82, 0x6b, 0xc0, 0xf2, 0xdd, 0xfd, 0xb7, 0x04, 0x8b, 0x9b, 0x69, 0xb7, 0x09, 0xd3, 0xd6, 0x24, 0x54, 0xc0, 0x74, 0x24, 0x9c, 0x58, 0x96, 0x96, 0x95, 0xbc, 0x14, 0xfe, 0x45, 0xc0, 0x1e, 0xf4, 0x7b, 0x60, 0x98, 0xdd, 0x8e, 0x59, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5100 = { .name = "ecdh_brainpoolp384t1_5100", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5100_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5100_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5100_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2871 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5101 for ECDH, tcId is 2872 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5101_peerpubkey[] = { 0x7b, 0x48, 0xf9, 0xa9, 0x2a, 0x9f, 0x46, 0x6b, 0x21, 0xc1, 0x6d, 0x6b, 0x44, 0x89, 0x65, 0xf4, 0x0c, 0x33, 0x17, 0xa6, 0x3b, 0x7f, 0x8a, 0x6e, 0x3e, 0x36, 0x3a, 0x37, 0x1a, 0x13, 0xdd, 0x7c, 0xe2, 0x7c, 0xa7, 0x0b, 0x60, 0xa4, 0x02, 0xf4, 0xbd, 0xbc, 0x1b, 0xb1, 0x24, 0x3a, 0x1d, 0x05, 0x4e, 0x41, 0x8d, 0x6e, 0x80, 0xc6, 0x79, 0x6c, 0x05, 0xf2, 0xec, 0xc5, 0x1e, 0x8a, 0x44, 0xa9, 0x0a, 0x03, 0xc0, 0x4b, 0x42, 0x96, 0xc0, 0x0c, 0xa0, 0x12, 0xf3, 0xc3, 0x7e, 0x8a, 0xa7, 0xe0, 0x00, 0xa4, 0xc1, 0xe6, 0x5c, 0xd5, 0x02, 0xb3, 0xe4, 0x73, 0x3f, 0xbd, 0xdd, 0xf2, 0x8c, 0x48, }; static const unsigned char ecdh_brainpoolp384t1_5101_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5101_sharedsecret[] = { 0x20, 0x5e, 0xf1, 0x11, 0x51, 0x62, 0xbc, 0x60, 0x76, 0x2e, 0x88, 0xe3, 0x71, 0xfb, 0x0c, 0xb8, 0x12, 0x12, 0xb7, 0x93, 0xb4, 0x4f, 0x29, 0x90, 0xb0, 0x74, 0xb4, 0x70, 0xe1, 0xc8, 0xb2, 0xe7, 0xff, 0x6d, 0x7d, 0xf1, 0x6a, 0xfe, 0x17, 0xfb, 0xea, 0xac, 0x1e, 0x31, 0x09, 0xd6, 0x17, 0x87, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5101 = { .name = "ecdh_brainpoolp384t1_5101", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5101_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5101_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5101_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2872 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5102 for ECDH, tcId is 2873 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5102_peerpubkey[] = { 0x72, 0x76, 0xaf, 0x52, 0xd1, 0x4f, 0x07, 0xab, 0x6c, 0x19, 0x87, 0xb9, 0x51, 0x90, 0x93, 0x32, 0x10, 0xff, 0xb4, 0x40, 0xd8, 0x73, 0xe6, 0xc0, 0x3a, 0x5a, 0x9b, 0xc7, 0x11, 0x37, 0xd8, 0xa1, 0x41, 0x6c, 0x6d, 0xb2, 0xaa, 0xf9, 0x1a, 0x02, 0x02, 0xfb, 0xaf, 0xb7, 0xf9, 0xca, 0x0a, 0x28, 0x4d, 0x81, 0x7f, 0x4d, 0xc7, 0x56, 0x11, 0xdb, 0x71, 0xe6, 0x6f, 0x56, 0x7b, 0x10, 0x46, 0x46, 0x0b, 0xae, 0x3a, 0x89, 0xc2, 0xed, 0xec, 0x54, 0x2c, 0x61, 0x08, 0x45, 0x74, 0x42, 0xdb, 0x43, 0x96, 0xa0, 0xb7, 0x8a, 0x81, 0xd1, 0x24, 0xe0, 0xd1, 0x25, 0x00, 0x21, 0xb0, 0xe6, 0xac, 0x06, }; static const unsigned char ecdh_brainpoolp384t1_5102_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5102_sharedsecret[] = { 0x49, 0x43, 0xfa, 0x5e, 0x1c, 0x61, 0x01, 0x7b, 0x8c, 0xb4, 0xe3, 0x45, 0x36, 0x06, 0xfa, 0xd0, 0x81, 0x33, 0xc4, 0x0e, 0x8d, 0x70, 0xb6, 0x79, 0xb5, 0x97, 0x36, 0x88, 0x55, 0x19, 0xab, 0xc9, 0xc5, 0x00, 0xc5, 0x42, 0xbf, 0x6c, 0x82, 0x53, 0x1d, 0x29, 0x22, 0xbf, 0x8c, 0xa5, 0xaa, 0x63, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5102 = { .name = "ecdh_brainpoolp384t1_5102", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5102_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5102_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5102_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2873 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5103 for ECDH, tcId is 2874 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5103_peerpubkey[] = { 0x0d, 0x53, 0x15, 0xbd, 0xf1, 0x23, 0x74, 0x75, 0x61, 0x88, 0xdf, 0x55, 0x77, 0xde, 0xea, 0xae, 0xa8, 0xa2, 0xfa, 0x59, 0xf5, 0x17, 0x0c, 0x9a, 0xcb, 0x7a, 0xf5, 0x89, 0xf9, 0xb9, 0x39, 0x4c, 0x30, 0x34, 0xc6, 0x82, 0x53, 0x6e, 0xd8, 0x54, 0xf7, 0x7d, 0x4d, 0xba, 0x4c, 0x03, 0x45, 0x65, 0x87, 0xb6, 0xab, 0xd1, 0x12, 0x58, 0x04, 0xe6, 0x35, 0x6d, 0x40, 0x6e, 0xb7, 0xae, 0x79, 0x50, 0xf3, 0x9c, 0x71, 0x1a, 0x3e, 0x36, 0xbb, 0xf9, 0x43, 0x0c, 0xf3, 0x87, 0x48, 0x27, 0x64, 0x0f, 0x4b, 0x96, 0x0f, 0x04, 0xae, 0x8c, 0x8d, 0x17, 0x5f, 0x1d, 0x50, 0xe8, 0x78, 0x7f, 0x4a, 0xb8, }; static const unsigned char ecdh_brainpoolp384t1_5103_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5103_sharedsecret[] = { 0x65, 0x22, 0x87, 0xce, 0xd5, 0x8d, 0x02, 0xdb, 0x86, 0x03, 0x5d, 0xdf, 0xc3, 0xfc, 0x55, 0xe7, 0x9f, 0x34, 0xc2, 0xe8, 0xa1, 0xd4, 0xdc, 0x35, 0x81, 0x47, 0x68, 0x49, 0xee, 0xc2, 0xcd, 0x8a, 0x87, 0x07, 0x86, 0x44, 0xd8, 0xcb, 0xd9, 0x16, 0xd3, 0xe0, 0xcc, 0x02, 0x6b, 0xa2, 0x00, 0x2e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5103 = { .name = "ecdh_brainpoolp384t1_5103", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5103_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5103_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5103_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 2874 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5104 for ECDH, tcId is 2875 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5104_peerpubkey[] = { 0x08, 0x21, 0x18, 0x72, 0xcf, 0x8c, 0xd8, 0x68, 0x55, 0x3f, 0x42, 0x6c, 0x89, 0xa5, 0x76, 0xc8, 0xf5, 0x77, 0xb6, 0xda, 0x22, 0xdb, 0x9b, 0x68, 0xae, 0x74, 0xbe, 0x89, 0x1d, 0x7f, 0xf1, 0x20, 0xa7, 0xfb, 0xff, 0x22, 0x57, 0xaf, 0xc8, 0x24, 0x78, 0x60, 0x4a, 0x23, 0x9b, 0x4d, 0x22, 0x0b, 0x5b, 0x6c, 0x60, 0x78, 0x0c, 0x07, 0x07, 0x43, 0x4d, 0xad, 0x7d, 0xf7, 0x37, 0x84, 0xe8, 0x45, 0xb3, 0xef, 0x18, 0x61, 0xf8, 0x1a, 0xf1, 0xce, 0xd2, 0x23, 0xcb, 0xca, 0xdf, 0xda, 0x76, 0x7d, 0xa3, 0xb1, 0x8d, 0x59, 0xec, 0xfc, 0x9a, 0xb9, 0x5b, 0x6b, 0x74, 0x1b, 0xbf, 0x2f, 0x72, 0x1c, }; static const unsigned char ecdh_brainpoolp384t1_5104_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5104_sharedsecret[] = { 0x6f, 0x73, 0x4a, 0xf3, 0x11, 0x7b, 0x2d, 0x0c, 0x6a, 0x1d, 0x04, 0x63, 0xa2, 0x27, 0x84, 0xdf, 0xc2, 0x8b, 0xb5, 0x6d, 0x94, 0x27, 0xea, 0xf3, 0x79, 0xf0, 0x54, 0xe9, 0x04, 0xcf, 0x59, 0x8b, 0x3e, 0x75, 0x50, 0x9a, 0xa4, 0x0d, 0x64, 0x1f, 0x32, 0xd7, 0x54, 0x0a, 0x1e, 0x67, 0xae, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5104 = { .name = "ecdh_brainpoolp384t1_5104", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5104_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5104_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5104_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2875 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5105 for ECDH, tcId is 2876 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5105_peerpubkey[] = { 0x88, 0x12, 0x88, 0x71, 0x6a, 0x98, 0x07, 0x0e, 0x03, 0x62, 0xbe, 0x07, 0x65, 0x36, 0x32, 0x71, 0x82, 0xf1, 0x02, 0x44, 0x1c, 0x97, 0x4f, 0x97, 0xc6, 0x06, 0x56, 0x92, 0xe5, 0x07, 0xa0, 0x0d, 0x55, 0xa6, 0xf4, 0x48, 0xe1, 0x5b, 0x22, 0xa2, 0xb5, 0x38, 0x9d, 0x5f, 0xba, 0xea, 0x5e, 0xdd, 0x62, 0xfa, 0xb5, 0x6f, 0x03, 0x71, 0xc1, 0x03, 0x56, 0xf6, 0x7e, 0xb1, 0x26, 0xd0, 0x10, 0xdc, 0xf3, 0x7b, 0x6c, 0x9d, 0x8a, 0x11, 0x17, 0x5b, 0x19, 0xf4, 0xec, 0x2d, 0x9e, 0x82, 0x7b, 0xbc, 0xfd, 0x34, 0xbf, 0x39, 0x81, 0xdd, 0xe0, 0x9a, 0x00, 0x67, 0x7a, 0xe7, 0x75, 0xff, 0x7e, 0x83, }; static const unsigned char ecdh_brainpoolp384t1_5105_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5105_sharedsecret[] = { 0x4a, 0xfa, 0xf5, 0x1d, 0x83, 0x81, 0x96, 0xfd, 0xdb, 0x5f, 0xf5, 0x5e, 0xe8, 0xa2, 0x26, 0xe8, 0x0f, 0xd6, 0xe0, 0x9f, 0xf2, 0x0b, 0x5a, 0xb2, 0xf4, 0xf5, 0x32, 0x6e, 0x6f, 0x75, 0x76, 0x6a, 0x64, 0x24, 0x22, 0xdc, 0x74, 0xde, 0x41, 0x77, 0xb9, 0xb8, 0xf3, 0xd2, 0xe9, 0x40, 0x39, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5105 = { .name = "ecdh_brainpoolp384t1_5105", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5105_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5105_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5105_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2876 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5106 for ECDH, tcId is 2877 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5106_peerpubkey[] = { 0x2c, 0x9b, 0x33, 0x73, 0xc1, 0x84, 0x03, 0x30, 0xa6, 0x61, 0xac, 0x51, 0x84, 0xc0, 0x9a, 0x3c, 0x04, 0x92, 0xa3, 0x08, 0x6e, 0xc2, 0x4a, 0x5a, 0x59, 0x02, 0x2e, 0xfc, 0xe6, 0xa4, 0x92, 0xa8, 0x48, 0xd9, 0xab, 0x87, 0x24, 0x53, 0xd8, 0xf6, 0x44, 0x94, 0xd5, 0xa1, 0xdb, 0x78, 0xcc, 0x0a, 0x11, 0x76, 0x30, 0xdd, 0xf1, 0xfd, 0xce, 0xff, 0x6d, 0xef, 0x62, 0x22, 0xa8, 0x01, 0x5a, 0x57, 0xaf, 0x15, 0x80, 0x56, 0xfa, 0x41, 0x37, 0x68, 0xef, 0x22, 0xa3, 0x88, 0xa9, 0x2a, 0x3f, 0xd7, 0x38, 0xb2, 0x1d, 0x96, 0x3c, 0x8c, 0x03, 0xc6, 0x9c, 0x23, 0xbb, 0xea, 0x61, 0x3f, 0xdd, 0x3e, }; static const unsigned char ecdh_brainpoolp384t1_5106_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5106_sharedsecret[] = { 0x67, 0x71, 0x4d, 0x1b, 0x4c, 0xb3, 0x93, 0xc1, 0xc8, 0x8e, 0x25, 0xe1, 0xec, 0x8a, 0x8e, 0x2b, 0x18, 0x94, 0x41, 0x97, 0xef, 0x79, 0x3b, 0x21, 0x8a, 0xdb, 0x23, 0xc3, 0x5c, 0x1e, 0xef, 0xf5, 0x31, 0x22, 0xc6, 0x93, 0x05, 0x88, 0xa3, 0xf4, 0xd1, 0xfe, 0xea, 0x25, 0xe4, 0x26, 0x2c, 0xab, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5106 = { .name = "ecdh_brainpoolp384t1_5106", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5106_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5106_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5106_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2877 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5107 for ECDH, tcId is 2878 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5107_peerpubkey[] = { 0x52, 0x6d, 0x4e, 0xa7, 0xa8, 0x6e, 0x29, 0xb6, 0xf6, 0x36, 0xfa, 0xc7, 0x1e, 0x18, 0xb0, 0x17, 0xb6, 0x99, 0x66, 0x28, 0x14, 0x68, 0x18, 0xbc, 0x4f, 0xe7, 0x10, 0x5a, 0xcf, 0x4e, 0x0c, 0x62, 0x7b, 0x2f, 0x8c, 0x1f, 0x46, 0xdf, 0x4b, 0xa9, 0x43, 0x2c, 0x8c, 0x08, 0xc9, 0xff, 0x13, 0x31, 0x4a, 0x1a, 0x76, 0xab, 0xec, 0x05, 0xf4, 0xf5, 0x8c, 0x67, 0x4f, 0xd4, 0x91, 0x15, 0x36, 0xbb, 0x41, 0x2d, 0x77, 0x91, 0xd9, 0x71, 0xf7, 0x53, 0x82, 0x52, 0xc4, 0xc4, 0x68, 0xfa, 0x23, 0xe6, 0xaa, 0xd5, 0x46, 0xe7, 0x47, 0xe6, 0x5d, 0xa2, 0xcf, 0x21, 0x36, 0x43, 0x33, 0xa3, 0x27, 0xb2, }; static const unsigned char ecdh_brainpoolp384t1_5107_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5107_sharedsecret[] = { 0x6c, 0xab, 0x1b, 0xc0, 0x0e, 0x11, 0xf9, 0xe8, 0xfc, 0xd2, 0xaf, 0xfa, 0xb4, 0x3e, 0x62, 0xf3, 0x0d, 0x74, 0x59, 0xa7, 0xf0, 0x0a, 0x6e, 0x89, 0xce, 0xae, 0x1a, 0x9a, 0x79, 0x01, 0x25, 0x2d, 0x7e, 0x91, 0xfa, 0x23, 0x10, 0x5c, 0x90, 0xd5, 0x74, 0xd9, 0xbf, 0x6e, 0x44, 0xdf, 0x82, 0xa6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5107 = { .name = "ecdh_brainpoolp384t1_5107", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5107_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5107_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5107_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2878 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5108 for ECDH, tcId is 2879 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5108_peerpubkey[] = { 0x51, 0x53, 0xa0, 0x0c, 0x0b, 0xf7, 0x99, 0x0d, 0xff, 0x39, 0xcb, 0x4f, 0xfd, 0xef, 0x53, 0xde, 0x21, 0x1f, 0x81, 0xa3, 0xc8, 0xcb, 0x8e, 0xf1, 0xa8, 0x5f, 0xfd, 0xb5, 0xfe, 0x89, 0xc5, 0x6b, 0xf2, 0x4b, 0xad, 0x65, 0x39, 0x35, 0x9b, 0xa4, 0x19, 0x3f, 0x9e, 0x69, 0xeb, 0x4a, 0x39, 0xa2, 0x17, 0x57, 0x69, 0x13, 0x21, 0x30, 0x9f, 0x51, 0xe3, 0x63, 0xdb, 0x57, 0xf5, 0xfb, 0x04, 0x1d, 0x79, 0x45, 0x3b, 0x89, 0xb8, 0x3f, 0x47, 0x6f, 0xe8, 0xad, 0x29, 0x93, 0xfb, 0xfb, 0xbe, 0xfd, 0xc9, 0x2f, 0x88, 0x53, 0x0c, 0xbc, 0x48, 0x82, 0x8d, 0x7a, 0xd3, 0xd1, 0x8e, 0x30, 0x88, 0x96, }; static const unsigned char ecdh_brainpoolp384t1_5108_privkey[] = { 0x59, 0xa4, 0x12, 0x9f, 0x8a, 0x2e, 0xe9, 0x2d, 0x4d, 0x4f, 0xf6, 0x90, 0xf7, 0xb8, 0x17, 0xf0, 0x13, 0xbb, 0x3d, 0xa5, 0x2e, 0x72, 0x9e, 0x55, 0xfc, 0xf6, 0x51, 0xae, 0x71, 0x81, 0xee, 0x4c, 0xca, 0xcb, 0xae, 0x97, 0xd2, 0x46, 0x88, 0x45, 0x65, 0xf6, 0xb6, 0x6a, 0x54, 0xaf, 0x4f, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5108_sharedsecret[] = { 0x67, 0x38, 0xdc, 0xe4, 0x6a, 0xb6, 0x1b, 0x09, 0xb2, 0x6c, 0x38, 0xb2, 0xea, 0xca, 0x16, 0xa0, 0x16, 0xe6, 0x49, 0x34, 0x4f, 0xb6, 0x95, 0xc7, 0xe9, 0x1e, 0x9e, 0x29, 0x7a, 0xc8, 0x3c, 0x91, 0x89, 0x47, 0xd9, 0xbf, 0xd6, 0xb3, 0x30, 0x78, 0x4e, 0xf2, 0xe6, 0x0d, 0xd7, 0x3b, 0x7b, 0x26, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5108 = { .name = "ecdh_brainpoolp384t1_5108", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5108_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5108_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5108_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 2879 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5109 for ECDH, tcId is 2880 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5109_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5109_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp384t1_5109_sharedsecret[] = { 0x84, 0x8a, 0x0d, 0x6b, 0x07, 0x14, 0xc8, 0xfb, 0x6b, 0x9d, 0x92, 0x08, 0x40, 0x1e, 0xe6, 0x49, 0x4c, 0x1f, 0x7e, 0x06, 0x25, 0x2d, 0x1e, 0x80, 0x55, 0x2b, 0xca, 0x6e, 0x49, 0xb9, 0xbb, 0xcd, 0x75, 0x7f, 0x98, 0x72, 0x22, 0x15, 0xa0, 0x3b, 0x4b, 0x44, 0xd1, 0x3b, 0x46, 0xac, 0x53, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5109 = { .name = "ecdh_brainpoolp384t1_5109", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5109_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5109_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5109_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2880 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5110 for ECDH, tcId is 2881 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5110_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5110_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384t1_5110_sharedsecret[] = { 0x37, 0x6c, 0x19, 0x2f, 0x94, 0x7b, 0x95, 0x7f, 0xac, 0x5e, 0x8a, 0x1b, 0x2d, 0x1f, 0x24, 0xf0, 0x81, 0xb7, 0x79, 0x68, 0xd4, 0xe5, 0x3a, 0xd1, 0x15, 0xf8, 0x9b, 0x05, 0x8f, 0xbc, 0x44, 0x97, 0x4e, 0x1a, 0x37, 0x43, 0x48, 0x14, 0xa6, 0x28, 0xe9, 0x34, 0xbb, 0xde, 0xf4, 0x24, 0x27, 0xf2, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5110 = { .name = "ecdh_brainpoolp384t1_5110", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5110_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5110_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5110_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2881 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5111 for ECDH, tcId is 2882 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5111_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5111_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5111_sharedsecret[] = { 0x46, 0xdb, 0x5c, 0x4b, 0xd9, 0x51, 0x2e, 0xd6, 0x25, 0x34, 0xe2, 0x35, 0x7b, 0x8f, 0xbf, 0x1b, 0xff, 0x2a, 0xa9, 0x7e, 0x04, 0x06, 0x1e, 0xee, 0xa8, 0xfe, 0x18, 0x02, 0xf8, 0x10, 0x32, 0x70, 0x4f, 0xad, 0xbc, 0x0e, 0x12, 0xd6, 0xd0, 0x55, 0x59, 0x53, 0x9e, 0xcd, 0xd7, 0xc5, 0x5d, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5111 = { .name = "ecdh_brainpoolp384t1_5111", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5111_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5111_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5111_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2882 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5112 for ECDH, tcId is 2883 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5112_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5112_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp384t1_5112_sharedsecret[] = { 0x29, 0x98, 0x1c, 0x8f, 0xdd, 0x06, 0xb9, 0x78, 0x87, 0x07, 0xc7, 0x8d, 0x52, 0xbc, 0x34, 0xb5, 0xdf, 0x76, 0x9b, 0xe1, 0xed, 0xbe, 0x5a, 0x96, 0x14, 0x4f, 0xf4, 0xe3, 0x9c, 0x8a, 0x8f, 0xc3, 0x77, 0x12, 0x90, 0x3c, 0xf9, 0x4e, 0xa0, 0xe6, 0x4e, 0xd0, 0xd6, 0x7d, 0x2a, 0x27, 0x05, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5112 = { .name = "ecdh_brainpoolp384t1_5112", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5112_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5112_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5112_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2883 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5113 for ECDH, tcId is 2884 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5113_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5113_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5113_sharedsecret[] = { 0x25, 0x92, 0x47, 0xa7, 0x65, 0xe1, 0x04, 0x67, 0x70, 0x97, 0x0c, 0xa4, 0xb2, 0xcc, 0x7b, 0x3d, 0x65, 0x22, 0x70, 0x2c, 0x89, 0x2b, 0xe7, 0x59, 0x98, 0xaf, 0x16, 0xa7, 0x59, 0x6b, 0xbc, 0xbb, 0x6d, 0x9b, 0xcc, 0xde, 0x43, 0x1f, 0xfc, 0x67, 0x9c, 0x63, 0x54, 0x4d, 0x04, 0x35, 0xac, 0xcf, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5113 = { .name = "ecdh_brainpoolp384t1_5113", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5113_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5113_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5113_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2884 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5114 for ECDH, tcId is 2885 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5114_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5114_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x0f, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5114_sharedsecret[] = { 0x0b, 0x4a, 0x99, 0x47, 0x3f, 0x90, 0xdd, 0x72, 0x61, 0xd4, 0x2c, 0x5f, 0xd5, 0xde, 0xa7, 0x43, 0x6e, 0xc4, 0x8c, 0x5b, 0x91, 0x45, 0x39, 0x27, 0xb9, 0xa9, 0x7c, 0x3a, 0x84, 0xb7, 0x70, 0xe0, 0x49, 0x97, 0x00, 0x50, 0x60, 0x5f, 0x34, 0xdc, 0x38, 0xaa, 0x60, 0xcf, 0x04, 0x61, 0xc9, 0xc7, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5114 = { .name = "ecdh_brainpoolp384t1_5114", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5114_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5114_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5114_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2885 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5115 for ECDH, tcId is 2886 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5115_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5115_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x78, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5115_sharedsecret[] = { 0x06, 0x0b, 0x43, 0x69, 0x76, 0x5c, 0xe2, 0xc1, 0xaf, 0xf4, 0x04, 0xb8, 0xe7, 0x7a, 0x6c, 0x37, 0x95, 0x52, 0xed, 0x1a, 0xc5, 0x81, 0x4e, 0x03, 0x4a, 0xe1, 0x95, 0xd0, 0xed, 0x08, 0xdf, 0x5c, 0x4c, 0xad, 0x46, 0xc2, 0xa4, 0x64, 0xe1, 0x55, 0x2b, 0xff, 0xca, 0x1e, 0x13, 0x1d, 0x75, 0x6f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5115 = { .name = "ecdh_brainpoolp384t1_5115", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5115_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5115_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5115_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2886 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5116 for ECDH, tcId is 2887 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5116_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5116_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x80, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5116_sharedsecret[] = { 0x7a, 0xfd, 0xfc, 0x83, 0xd3, 0x22, 0x1c, 0xd5, 0x28, 0x2e, 0x95, 0x54, 0xf7, 0xd1, 0xe3, 0x20, 0x50, 0x4c, 0x27, 0x71, 0xa3, 0x37, 0x4d, 0xe3, 0x1b, 0xb2, 0x04, 0xc1, 0xda, 0x08, 0x31, 0x18, 0x6f, 0x37, 0x7b, 0x6e, 0x90, 0x90, 0x67, 0x2b, 0x0d, 0x1d, 0xf0, 0x0e, 0x22, 0xa3, 0xa1, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5116 = { .name = "ecdh_brainpoolp384t1_5116", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5116_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5116_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5116_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2887 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5117 for ECDH, tcId is 2888 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5117_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5117_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x01, 0xe9, 0x04, 0x65, 0x65, }; static const unsigned char ecdh_brainpoolp384t1_5117_sharedsecret[] = { 0x01, 0x01, 0x39, 0x81, 0xf8, 0x87, 0x30, 0x50, 0x14, 0x3f, 0x73, 0xce, 0xfd, 0x5a, 0x75, 0x0c, 0x22, 0x3c, 0x5e, 0x6f, 0xdf, 0x1e, 0x25, 0xa2, 0x4e, 0xd0, 0xd7, 0x23, 0x3c, 0x78, 0x2b, 0x8b, 0x9d, 0x82, 0xa4, 0xcb, 0x99, 0x6f, 0x83, 0xbe, 0xcb, 0x09, 0x6f, 0x6a, 0xbb, 0x83, 0x52, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5117 = { .name = "ecdh_brainpoolp384t1_5117", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5117_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5117_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5117_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2888 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5118 for ECDH, tcId is 2889 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5118_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5118_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x2f, }; static const unsigned char ecdh_brainpoolp384t1_5118_sharedsecret[] = { 0x22, 0xd7, 0x72, 0xbd, 0x21, 0x04, 0xc3, 0xd2, 0x4b, 0x85, 0x05, 0xb3, 0xe7, 0xd1, 0xf3, 0xf0, 0x0c, 0xa2, 0xda, 0xcb, 0x49, 0x3c, 0xa7, 0x29, 0x17, 0x08, 0x54, 0xef, 0x21, 0x58, 0x40, 0x7a, 0x0f, 0xfa, 0xb0, 0x06, 0x15, 0x3d, 0x5c, 0xb7, 0x78, 0x1e, 0x9c, 0xb5, 0x7c, 0xda, 0x50, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5118 = { .name = "ecdh_brainpoolp384t1_5118", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5118_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5118_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5118_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2889 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5119 for ECDH, tcId is 2890 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5119_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5119_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x4f, }; static const unsigned char ecdh_brainpoolp384t1_5119_sharedsecret[] = { 0x2b, 0x2c, 0x61, 0x7f, 0x8c, 0x84, 0x71, 0x3f, 0x84, 0x40, 0xe5, 0xe2, 0x73, 0x34, 0x1d, 0x69, 0xed, 0xf9, 0xe6, 0xea, 0x20, 0x56, 0xaf, 0x38, 0xcc, 0xfc, 0x6e, 0xe7, 0x33, 0xa9, 0xc1, 0x1e, 0x1f, 0x9a, 0xa6, 0x3c, 0xb3, 0x61, 0x5d, 0x2b, 0x3c, 0xeb, 0xe6, 0x9d, 0x83, 0x60, 0xa2, 0xbd, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5119 = { .name = "ecdh_brainpoolp384t1_5119", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5119_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5119_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5119_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2890 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5120 for ECDH, tcId is 2891 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5120_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5120_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x5f, }; static const unsigned char ecdh_brainpoolp384t1_5120_sharedsecret[] = { 0x28, 0x51, 0x8f, 0x75, 0xe0, 0x20, 0xe0, 0x00, 0x95, 0xd4, 0x71, 0x66, 0xf7, 0x82, 0x5f, 0x17, 0x67, 0xb6, 0x42, 0x51, 0x72, 0xde, 0xcd, 0xe3, 0x90, 0xc9, 0x26, 0x67, 0x64, 0xc8, 0xb6, 0x31, 0x60, 0x8d, 0xc3, 0x23, 0xb8, 0x41, 0x5c, 0x39, 0xc9, 0xd0, 0xb8, 0xa2, 0x4c, 0xd3, 0x37, 0xac, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5120 = { .name = "ecdh_brainpoolp384t1_5120", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5120_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5120_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5120_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2891 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5121 for ECDH, tcId is 2892 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5121_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5121_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x62, }; static const unsigned char ecdh_brainpoolp384t1_5121_sharedsecret[] = { 0x84, 0x8a, 0x0d, 0x6b, 0x07, 0x14, 0xc8, 0xfb, 0x6b, 0x9d, 0x92, 0x08, 0x40, 0x1e, 0xe6, 0x49, 0x4c, 0x1f, 0x7e, 0x06, 0x25, 0x2d, 0x1e, 0x80, 0x55, 0x2b, 0xca, 0x6e, 0x49, 0xb9, 0xbb, 0xcd, 0x75, 0x7f, 0x98, 0x72, 0x22, 0x15, 0xa0, 0x3b, 0x4b, 0x44, 0xd1, 0x3b, 0x46, 0xac, 0x53, 0x73, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5121 = { .name = "ecdh_brainpoolp384t1_5121", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5121_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5121_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5121_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2892 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5122 for ECDH, tcId is 2893 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5122_peerpubkey[] = { 0x1e, 0x6c, 0x40, 0x53, 0x58, 0xfa, 0xb0, 0xf6, 0x3c, 0x09, 0xed, 0xda, 0xcc, 0x37, 0x2d, 0xd2, 0x9c, 0x17, 0xd0, 0xee, 0xbc, 0xff, 0xe3, 0x79, 0x75, 0xee, 0x3c, 0x6b, 0xf0, 0x5c, 0x7b, 0x8d, 0xb0, 0x9f, 0x10, 0x4f, 0xcf, 0x6c, 0xc1, 0xa0, 0x57, 0x6c, 0x44, 0xc1, 0x26, 0x37, 0xb4, 0xbf, 0x88, 0x93, 0x8d, 0x33, 0xd2, 0xd9, 0x39, 0x0c, 0x10, 0x75, 0xf3, 0xaf, 0x46, 0x79, 0x37, 0x07, 0x4d, 0xb4, 0x02, 0x2a, 0x44, 0xe2, 0xea, 0x2e, 0x9c, 0xbf, 0xf6, 0xbf, 0xcb, 0x4a, 0xf4, 0x90, 0x9f, 0xbb, 0x8b, 0xd3, 0xab, 0x62, 0x7e, 0x1d, 0xd1, 0x64, 0x9d, 0x5f, 0xae, 0xc2, 0x8a, 0x71, }; static const unsigned char ecdh_brainpoolp384t1_5122_privkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb3, 0x1f, 0x16, 0x6e, 0x6c, 0xac, 0x04, 0x25, 0xa7, 0xcf, 0x3a, 0xb6, 0xaf, 0x6b, 0x7f, 0xc3, 0x10, 0x3b, 0x88, 0x32, 0x02, 0xe9, 0x04, 0x65, 0x63, }; static const unsigned char ecdh_brainpoolp384t1_5122_sharedsecret[] = { 0x44, 0x24, 0xa1, 0xb4, 0x8e, 0xba, 0x05, 0x24, 0xe4, 0xaa, 0x82, 0x45, 0x5e, 0x28, 0x2b, 0x35, 0xcf, 0x0d, 0x13, 0xd8, 0x53, 0x6f, 0xe6, 0xc4, 0x10, 0xcd, 0x50, 0x50, 0xf3, 0xd4, 0xd1, 0x73, 0x92, 0x54, 0x94, 0x5a, 0x8f, 0x58, 0x0d, 0x43, 0xee, 0x02, 0x45, 0xb1, 0xdf, 0x67, 0xde, 0x56, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5122 = { .name = "ecdh_brainpoolp384t1_5122", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5122_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5122_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5122_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 2893 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5123 for ECDH, tcId is 2894 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5123_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5123_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5123 = { .name = "ecdh_brainpoolp384t1_5123", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5123_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5123_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2894 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5124 for ECDH, tcId is 2895 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5124_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5124_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5124 = { .name = "ecdh_brainpoolp384t1_5124", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5124_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5124_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2895 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5125 for ECDH, tcId is 2896 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5125_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384t1_5125_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5125 = { .name = "ecdh_brainpoolp384t1_5125", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5125_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5125_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2896 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5126 for ECDH, tcId is 2897 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5126_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384t1_5126_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5126 = { .name = "ecdh_brainpoolp384t1_5126", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5126_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5126_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2897 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5127 for ECDH, tcId is 2898 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5127_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5127_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5127 = { .name = "ecdh_brainpoolp384t1_5127", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5127_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5127_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2898 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5128 for ECDH, tcId is 2899 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5128_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5128_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5128 = { .name = "ecdh_brainpoolp384t1_5128", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5128_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5128_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2899 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5129 for ECDH, tcId is 2900 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5129_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384t1_5129_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5129 = { .name = "ecdh_brainpoolp384t1_5129", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5129_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5129_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2900 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5130 for ECDH, tcId is 2901 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5130_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384t1_5130_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5130 = { .name = "ecdh_brainpoolp384t1_5130", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5130_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5130_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2901 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5131 for ECDH, tcId is 2902 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5131_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5131_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5131 = { .name = "ecdh_brainpoolp384t1_5131", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5131_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5131_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2902 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5132 for ECDH, tcId is 2903 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5132_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5132_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5132 = { .name = "ecdh_brainpoolp384t1_5132", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5132_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5132_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2903 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5133 for ECDH, tcId is 2904 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5133_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384t1_5133_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5133 = { .name = "ecdh_brainpoolp384t1_5133", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5133_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5133_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2904 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5134 for ECDH, tcId is 2905 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5134_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384t1_5134_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5134 = { .name = "ecdh_brainpoolp384t1_5134", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5134_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5134_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2905 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5135 for ECDH, tcId is 2906 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5135_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5135_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5135 = { .name = "ecdh_brainpoolp384t1_5135", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5135_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5135_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2906 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5136 for ECDH, tcId is 2907 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5136_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp384t1_5136_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5136 = { .name = "ecdh_brainpoolp384t1_5136", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5136_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5136_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2907 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5137 for ECDH, tcId is 2908 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5137_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x52, }; static const unsigned char ecdh_brainpoolp384t1_5137_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5137 = { .name = "ecdh_brainpoolp384t1_5137", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5137_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5137_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2908 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5138 for ECDH, tcId is 2909 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5138_peerpubkey[] = { 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, 0x8c, 0xb9, 0x1e, 0x82, 0xa3, 0x38, 0x6d, 0x28, 0x0f, 0x5d, 0x6f, 0x7e, 0x50, 0xe6, 0x41, 0xdf, 0x15, 0x2f, 0x71, 0x09, 0xed, 0x54, 0x56, 0xb4, 0x12, 0xb1, 0xda, 0x19, 0x7f, 0xb7, 0x11, 0x23, 0xac, 0xd3, 0xa7, 0x29, 0x90, 0x1d, 0x1a, 0x71, 0x87, 0x47, 0x00, 0x13, 0x31, 0x07, 0xec, 0x53, }; static const unsigned char ecdh_brainpoolp384t1_5138_privkey[] = { 0x18, 0x30, 0x67, 0xd5, 0x09, 0x9f, 0xde, 0x86, 0x22, 0x16, 0x51, 0x5d, 0x6e, 0x29, 0x2c, 0x2c, 0xe5, 0x68, 0x12, 0xa1, 0x9b, 0x76, 0x84, 0x9b, 0x50, 0x51, 0xc4, 0x6d, 0xb2, 0x64, 0x52, 0xf5, 0x43, 0x75, 0xe1, 0xe3, 0x75, 0x67, 0xc7, 0xd6, 0x2e, 0x63, 0xfc, 0x96, 0x04, 0x45, 0x04, 0x11, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5138 = { .name = "ecdh_brainpoolp384t1_5138", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5138_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5138_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 2909 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5139 for ECDH, tcId is 2911 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5139_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xaa, }; static const unsigned char ecdh_brainpoolp384t1_5139_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5139 = { .name = "ecdh_brainpoolp384t1_5139", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5139_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5139_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 2911 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5140 for ECDH, tcId is 2912 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5140_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp384t1_5140_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5140 = { .name = "ecdh_brainpoolp384t1_5140", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5140_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5140_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 2912 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5141 for ECDH, tcId is 2915 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5141_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5141_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5141_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5141 = { .name = "ecdh_brainpoolp384t1_5141", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5141_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5141_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5141_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 1, tcId is 2915 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5142 for ECDH, tcId is 2916 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5142_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5142_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5142_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5142 = { .name = "ecdh_brainpoolp384t1_5142", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5142_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5142_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5142_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "order = 5042941954480324912133914614639385831494842746066313376667826733277554507683616955290244686736004252971522, tcId is 2916 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5143 for ECDH, tcId is 2917 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5143_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5143_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5143_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5143 = { .name = "ecdh_brainpoolp384t1_5143", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5143_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5143_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5143_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator = (0,0), tcId is 2917 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5144 for ECDH, tcId is 2918 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5144_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5144_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5144_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5144 = { .name = "ecdh_brainpoolp384t1_5144", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5144_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5144_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5144_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "generator not on curve, tcId is 2918 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5145 for ECDH, tcId is 2921 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5145_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5145_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5145_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5145 = { .name = "ecdh_brainpoolp384t1_5145", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5145_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5145_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5145_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = 2, tcId is 2921 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5146 for ECDH, tcId is 2923 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5146_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5146_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5146_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5146 = { .name = "ecdh_brainpoolp384t1_5146", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5146_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5146_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5146_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "cofactor = None, tcId is 2923 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5147 for ECDH, tcId is 2928 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5147_peerpubkey[] = { 0x10, 0x3e, 0x05, 0x8f, 0x7a, 0x7d, 0x7f, 0x6f, 0x07, 0xdf, 0xbe, 0x36, 0xac, 0x0a, 0x55, 0xe3, 0x37, 0xe1, 0xad, 0x21, 0x73, 0xf6, 0x3e, 0x16, 0xaa, 0x22, 0x2f, 0xe1, 0x7f, 0xd3, 0xdf, 0x25, 0xec, 0x4e, 0x19, 0xf7, 0x8f, 0xf9, 0xd8, 0x2f, 0xcf, 0x6e, 0x15, 0xd8, 0x30, 0x9a, 0xbc, 0x3b, 0x7c, 0x0e, 0xca, 0x82, 0x58, 0x94, 0x92, 0x07, 0xc0, 0x18, 0xc4, 0x8e, 0x00, 0x5c, 0x28, 0x5b, 0xb6, 0x75, 0x06, 0x95, 0x1a, 0x0f, 0x7e, 0x38, 0x37, 0x28, 0x28, 0xb6, 0xea, 0x2e, 0x23, 0x75, 0x9e, 0x59, 0xb5, 0x93, 0x12, 0xc5, 0xa8, 0x1e, 0xb9, 0x57, 0xd3, 0x87, 0x50, 0x05, 0x15, 0xa8, }; static const unsigned char ecdh_brainpoolp384t1_5147_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const unsigned char ecdh_brainpoolp384t1_5147_sharedsecret[] = { 0x28, 0xf8, 0x65, 0xe2, 0xf8, 0x8c, 0xc5, 0xf6, 0x3f, 0x3f, 0x4a, 0xf2, 0x4b, 0xe3, 0x2f, 0x2e, 0x3e, 0x9f, 0x49, 0x53, 0x69, 0x33, 0xe8, 0x33, 0xf3, 0x83, 0xaf, 0x8c, 0x11, 0x23, 0x3d, 0x72, 0x6e, 0xb1, 0x2a, 0x25, 0x1f, 0xa3, 0x83, 0x66, 0x0a, 0xc1, 0x90, 0x10, 0x48, 0xe2, 0x9b, 0xc1, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5147 = { .name = "ecdh_brainpoolp384t1_5147", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5147_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5147_privkey, .privkeylen = 48, .sharedsecret = ecdh_brainpoolp384t1_5147_sharedsecret, .sharedsecretlen = 48, .result = 0, .comment = "a = 0, tcId is 2928 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5148 for ECDH, tcId is 2930 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5148_peerpubkey[] = { 0x1a, 0xf6, 0x67, 0xfa, 0x3a, 0xb0, 0x33, 0x7b, 0x0f, 0x9b, 0x51, 0xa7, 0x11, 0xf2, 0xc5, 0xa3, 0xee, 0x1d, 0x4f, 0xb0, 0x1d, 0x5c, 0x8e, 0x31, 0x14, 0x45, 0xab, 0x2c, 0x4d, 0xec, 0xc9, 0xc2, 0x23, 0x46, 0x91, 0x3f, 0x92, 0x21, 0x14, 0xb7, 0x28, 0xa3, 0x12, 0xb1, 0x17, 0xd0, 0x19, 0x6f, 0x83, 0x14, 0xff, 0x6d, 0x47, 0xf8, 0xaa, 0xf6, 0x6b, 0x69, 0x1b, 0x5e, 0xbd, 0x80, 0xfb, 0xcd, 0xd9, 0x20, 0x29, 0xc1, 0x63, 0x40, 0xeb, 0x77, 0x67, 0x26, 0x6a, 0x34, 0xb9, 0x8e, 0xf5, 0xe2, 0x66, 0x6f, 0xdd, 0x6a, 0x2b, 0x3b, 0xcb, 0x7c, 0xda, 0xee, 0x47, 0x31, 0xec, 0xd8, 0x51, 0x41, }; static const unsigned char ecdh_brainpoolp384t1_5148_privkey[] = { 0x05, 0xe6, 0x5b, 0xb2, 0x85, 0xc4, 0xa1, 0xc4, 0x1d, 0x27, 0x38, 0x5c, 0x99, 0x95, 0xe3, 0x0d, 0x1b, 0x9a, 0x68, 0x7f, 0x4c, 0x70, 0x41, 0x9f, 0x0c, 0x54, 0x3b, 0x29, 0x2a, 0x2b, 0x69, 0x65, 0x5b, 0xc7, 0x91, 0x41, 0x49, 0x21, 0xd0, 0xed, 0xa3, 0x55, 0x6b, 0x6d, 0x5e, 0x94, 0xd5, 0x97, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5148 = { .name = "ecdh_brainpoolp384t1_5148", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5148_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5148_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP384r1, tcId is 2930 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5149 for ECDH, tcId is 2933 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5149_peerpubkey[] = { 0x57, 0xaa, 0x0e, 0x44, 0xae, 0x28, 0xfb, 0xc6, 0x0e, 0x90, 0xc7, 0x12, 0xaf, 0x4f, 0x07, 0x77, 0x48, 0x1d, 0xb3, 0x5c, 0x81, 0x49, 0x47, 0x22, 0x0f, 0x28, 0xa0, 0xae, 0xf3, 0xea, 0xfc, 0xb7, 0x54, 0x1a, 0x61, 0x7f, 0x91, 0x78, 0x67, 0x7e, 0x36, 0x5d, 0xd2, 0x11, 0xef, 0xf8, 0xd3, 0x3d, 0xe3, 0x15, 0xa1, 0xaf, 0x94, 0xb3, 0x24, 0x56, 0x8f, 0x2a, 0x5f, 0x5f, 0xec, 0xf2, 0xb4, 0x0d, 0xf0, 0x20, 0xf0, 0x0e, 0x20, 0x99, 0xa3, 0x21, 0xee, 0xb8, 0x9b, 0x4a, 0x00, 0x78, 0x98, 0x74, 0xd3, 0x9d, 0xf7, 0x73, 0x69, 0x7f, 0x71, 0xd6, 0xfe, 0x40, 0x13, 0x6d, 0x19, 0xa5, 0x4a, 0xde, }; static const unsigned char ecdh_brainpoolp384t1_5149_privkey[] = { 0x1e, 0xec, 0x94, 0x87, 0x15, 0x76, 0x8c, 0x12, 0x14, 0x36, 0x3b, 0xd8, 0x06, 0xa4, 0x4d, 0x1e, 0xf4, 0x93, 0x25, 0xc1, 0x98, 0x0d, 0xc2, 0x1a, 0xc2, 0xa0, 0xb1, 0x56, 0x0d, 0x9b, 0x5c, 0xd6, 0x57, 0x5b, 0x74, 0x9e, 0xba, 0x07, 0x18, 0x6c, 0x2f, 0x9e, 0xfb, 0x22, 0x3c, 0xa7, 0x86, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5149 = { .name = "ecdh_brainpoolp384t1_5149", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5149_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5149_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 2933 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5150 for ECDH, tcId is 2940 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5150_peerpubkey[] = { 0x75, 0x0c, 0x5d, 0x80, 0x95, 0xfa, 0x65, 0x16, 0x39, 0x37, 0xb8, 0xeb, 0x53, 0xf7, 0x27, 0xbc, 0x39, 0x37, 0x63, 0xe8, 0x05, 0x61, 0xab, 0xc0, 0x23, 0x8a, 0x3d, 0xb4, 0xd5, 0x01, 0x47, 0x92, 0x30, 0x52, 0x01, 0x48, 0x91, 0x2f, 0x30, 0xa5, 0x9c, 0x40, 0x8b, 0x6c, 0xa6, 0x8c, 0x4a, 0xfa, 0x66, 0x8c, 0x34, 0x59, 0x58, 0xaa, 0x1f, 0xd0, 0xba, 0x8f, 0xd8, 0x57, 0xee, 0x72, 0xe1, 0x17, 0xaf, 0x82, 0x86, 0xb6, 0x68, 0x4f, 0x0d, 0x72, 0x3a, 0xc2, 0xfe, 0x1d, 0xe0, 0x45, 0x4a, 0x03, 0x17, 0xec, 0x73, 0x0d, 0xd5, 0xc1, 0x93, 0xf4, 0xff, 0x8e, 0xa1, 0xa1, 0xb4, 0x1f, 0xd4, 0xf3, }; static const unsigned char ecdh_brainpoolp384t1_5150_privkey[] = { 0x1e, 0xec, 0x94, 0x87, 0x15, 0x76, 0x8c, 0x12, 0x14, 0x36, 0x3b, 0xd8, 0x06, 0xa4, 0x4d, 0x1e, 0xf4, 0x93, 0x25, 0xc1, 0x98, 0x0d, 0xc2, 0x1a, 0xc2, 0xa0, 0xb1, 0x56, 0x0d, 0x9b, 0x5c, 0xd6, 0x57, 0x5b, 0x74, 0x9e, 0xba, 0x07, 0x18, 0x6c, 0x2f, 0x9e, 0xfb, 0x22, 0x3c, 0xa7, 0x86, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5150 = { .name = "ecdh_brainpoolp384t1_5150", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5150_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5150_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP384r1, tcId is 2940 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5151 for ECDH, tcId is 2946 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5151_peerpubkey[] = { 0x43, 0xc5, 0x1b, 0x92, 0xc3, 0x1f, 0xdd, 0x61, 0xee, 0x53, 0x38, 0x53, 0xfc, 0x66, 0x0d, 0x6c, 0xcf, 0x4d, 0x49, 0x03, 0xdc, 0x0a, 0x99, 0x6c, 0xf2, 0x96, 0x8c, 0xc8, 0x94, 0xd9, 0x7f, 0x97, 0x09, 0xd9, 0x23, 0x52, 0xee, 0x4b, 0x93, 0xed, 0x23, 0xff, 0x61, 0x8d, 0xe7, 0x9e, 0x4d, 0x30, }; static const unsigned char ecdh_brainpoolp384t1_5151_privkey[] = { 0x25, 0x84, 0x74, 0xba, 0xf3, 0xb3, 0xb8, 0x3f, 0x1f, 0x4c, 0xc0, 0xac, 0x76, 0x45, 0x67, 0x7d, 0x5d, 0x56, 0xa4, 0x0f, 0x78, 0x7d, 0x99, 0x2a, 0xc5, 0x10, 0x98, 0x94, 0xaa, 0x37, 0x2a, 0xcb, 0x87, 0x88, 0x3f, 0x74, 0xbc, 0x63, 0x51, 0xa3, 0x1b, 0xc6, 0x6c, 0x62, 0xdf, 0xb8, 0x2a, 0x83, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5151 = { .name = "ecdh_brainpoolp384t1_5151", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5151_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5151_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 2946 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5152 for ECDH, tcId is 2947 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5152_peerpubkey[] = { 0x08, 0xf3, 0x12, 0x34, 0xf8, 0x74, 0x97, 0xb1, 0xba, 0xed, 0xe9, 0xbc, 0x74, 0xc1, 0xf6, 0x66, 0xa5, 0xdb, 0x95, 0x7d, 0x5b, 0x58, 0x92, 0xef, 0x3c, 0xad, 0x56, 0xdb, 0x44, 0x8f, 0xfb, 0x4b, 0xb5, 0x99, 0x76, 0xa8, 0x20, 0xf0, 0x57, 0x2e, 0x95, 0xd4, 0xe7, 0x77, 0x1a, 0xfb, 0xc1, 0x2f, }; static const unsigned char ecdh_brainpoolp384t1_5152_privkey[] = { 0x18, 0x23, 0x15, 0xca, 0x6c, 0x80, 0xfa, 0x1f, 0x76, 0xec, 0x0b, 0xb5, 0xa3, 0x59, 0x91, 0xb9, 0x7e, 0x4f, 0x9a, 0xda, 0x27, 0x29, 0x89, 0x12, 0x0a, 0x2c, 0x6d, 0xc5, 0xfe, 0x30, 0x20, 0xd0, 0x47, 0xef, 0x5c, 0x13, 0xa0, 0xfa, 0x50, 0x5d, 0x21, 0xd2, 0x50, 0xeb, 0x39, 0xc5, 0xe9, 0xef, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5152 = { .name = "ecdh_brainpoolp384t1_5152", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5152_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5152_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2947 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5153 for ECDH, tcId is 2948 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5153_peerpubkey[] = { 0x08, 0x44, 0x78, 0x79, 0x74, 0x47, 0x19, 0x44, 0x23, 0x24, 0x2f, 0xee, 0xcd, 0x06, 0x00, 0x0d, 0x17, 0x50, 0x87, 0xde, 0x6a, 0xdf, 0x6f, 0x2b, 0x78, 0x25, 0x82, 0xf4, 0x24, 0x23, 0x4c, 0x48, 0x89, 0x5c, 0x35, 0x63, 0x26, 0xe8, 0xd1, 0x55, 0x0f, 0xc0, 0x40, 0x9c, 0xc1, 0xa4, 0xec, 0xad, }; static const unsigned char ecdh_brainpoolp384t1_5153_privkey[] = { 0x87, 0x92, 0x41, 0x86, 0xcf, 0xbe, 0x51, 0x3d, 0xc9, 0x4b, 0x16, 0xa5, 0xe8, 0xff, 0x0e, 0x86, 0xb0, 0xda, 0x8d, 0x61, 0x15, 0xfc, 0x44, 0xce, 0x9d, 0x08, 0xba, 0xfd, 0x26, 0x36, 0x29, 0x9e, 0x49, 0x86, 0x49, 0xfe, 0x9b, 0x1b, 0xbb, 0x50, 0x7d, 0xe2, 0xc7, 0x29, 0xa8, 0x84, 0x22, 0xa8, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5153 = { .name = "ecdh_brainpoolp384t1_5153", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5153_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5153_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2948 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5154 for ECDH, tcId is 2949 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5154_peerpubkey[] = { 0x02, 0x42, 0x78, 0xcf, 0x56, 0x41, 0x5a, 0x23, 0x47, 0x92, 0xda, 0xe6, 0xc2, 0x2e, 0x3c, 0x3d, 0x70, 0x51, 0x7d, 0x43, 0x50, 0xd9, 0x1d, 0x39, 0x5b, 0x54, 0xf1, 0xff, 0x36, 0x0b, 0xac, 0x0a, 0x5b, 0x19, 0x47, 0x3d, 0x64, 0x76, 0xd1, 0xe0, 0x58, 0x5b, 0x1b, 0x1d, 0xbb, 0x21, 0x32, 0xe9, }; static const unsigned char ecdh_brainpoolp384t1_5154_privkey[] = { 0x15, 0x98, 0xec, 0xfc, 0xc3, 0xc9, 0xf7, 0x6d, 0xfb, 0x75, 0x8c, 0xd5, 0x72, 0xde, 0xf7, 0xa8, 0xf3, 0x6a, 0xa3, 0x48, 0xaf, 0x6c, 0x31, 0xfb, 0x29, 0xd5, 0x9b, 0x7f, 0x06, 0xa8, 0xe8, 0x51, 0xb6, 0xa5, 0xc9, 0xe9, 0x65, 0xe6, 0x73, 0x4e, 0x5f, 0xfd, 0xe5, 0xb0, 0xde, 0x63, 0x88, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5154 = { .name = "ecdh_brainpoolp384t1_5154", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5154_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5154_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2949 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5155 for ECDH, tcId is 2950 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5155_peerpubkey[] = { 0x02, 0x42, 0x78, 0xcf, 0x56, 0x41, 0x5a, 0x23, 0x47, 0x92, 0xda, 0xe6, 0xc2, 0x2e, 0x3c, 0x3d, 0x70, 0x51, 0x7d, 0x43, 0x50, 0xd9, 0x1d, 0x39, 0x5b, 0x54, 0xf1, 0xff, 0x36, 0x0b, 0xac, 0x0a, 0x5b, 0x19, 0x47, 0x3d, 0x64, 0x76, 0xd1, 0xe0, 0x58, 0x5b, 0x1b, 0x1d, 0xbb, 0x21, 0x32, 0xe9, }; static const unsigned char ecdh_brainpoolp384t1_5155_privkey[] = { 0x15, 0x98, 0xec, 0xfc, 0xc3, 0xc9, 0xf7, 0x6d, 0xfb, 0x75, 0x8c, 0xd5, 0x72, 0xde, 0xf7, 0xa8, 0xf3, 0x6a, 0xa3, 0x48, 0xaf, 0x6c, 0x31, 0xfb, 0x29, 0xd5, 0x9b, 0x7f, 0x06, 0xa8, 0xe8, 0x51, 0xb6, 0xa5, 0xc9, 0xe9, 0x65, 0xe6, 0x73, 0x4e, 0x5f, 0xfd, 0xe5, 0xb0, 0xde, 0x63, 0x88, 0xfe, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5155 = { .name = "ecdh_brainpoolp384t1_5155", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5155_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5155_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2950 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5156 for ECDH, tcId is 2951 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5156_peerpubkey[] = { 0x08, 0x44, 0x78, 0x79, 0x74, 0x47, 0x19, 0x44, 0x23, 0x24, 0x2f, 0xee, 0xcd, 0x06, 0x00, 0x0d, 0x17, 0x50, 0x87, 0xde, 0x6a, 0xdf, 0x6f, 0x2b, 0x78, 0x25, 0x82, 0xf4, 0x24, 0x23, 0x4c, 0x48, 0x89, 0x5c, 0x35, 0x63, 0x26, 0xe8, 0xd1, 0x55, 0x0f, 0xc0, 0x40, 0x9c, 0xc1, 0xa4, 0xec, 0xad, }; static const unsigned char ecdh_brainpoolp384t1_5156_privkey[] = { 0x87, 0x92, 0x41, 0x86, 0xcf, 0xbe, 0x51, 0x3d, 0xc9, 0x4b, 0x16, 0xa5, 0xe8, 0xff, 0x0e, 0x86, 0xb0, 0xda, 0x8d, 0x61, 0x15, 0xfc, 0x44, 0xce, 0x9d, 0x08, 0xba, 0xfd, 0x26, 0x36, 0x29, 0x9e, 0x49, 0x86, 0x49, 0xfe, 0x9b, 0x1b, 0xbb, 0x50, 0x7d, 0xe2, 0xc7, 0x29, 0xa8, 0x84, 0x22, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5156 = { .name = "ecdh_brainpoolp384t1_5156", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5156_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5156_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2951 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5157 for ECDH, tcId is 2952 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5157_peerpubkey[] = { 0x08, 0xf3, 0x12, 0x34, 0xf8, 0x74, 0x97, 0xb1, 0xba, 0xed, 0xe9, 0xbc, 0x74, 0xc1, 0xf6, 0x66, 0xa5, 0xdb, 0x95, 0x7d, 0x5b, 0x58, 0x92, 0xef, 0x3c, 0xad, 0x56, 0xdb, 0x44, 0x8f, 0xfb, 0x4b, 0xb5, 0x99, 0x76, 0xa8, 0x20, 0xf0, 0x57, 0x2e, 0x95, 0xd4, 0xe7, 0x77, 0x1a, 0xfb, 0xc1, 0x2f, }; static const unsigned char ecdh_brainpoolp384t1_5157_privkey[] = { 0x18, 0x23, 0x15, 0xca, 0x6c, 0x80, 0xfa, 0x1f, 0x76, 0xec, 0x0b, 0xb5, 0xa3, 0x59, 0x91, 0xb9, 0x7e, 0x4f, 0x9a, 0xda, 0x27, 0x29, 0x89, 0x12, 0x0a, 0x2c, 0x6d, 0xc5, 0xfe, 0x30, 0x20, 0xd0, 0x47, 0xef, 0x5c, 0x13, 0xa0, 0xfa, 0x50, 0x5d, 0x21, 0xd2, 0x50, 0xeb, 0x39, 0xc5, 0xe9, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5157 = { .name = "ecdh_brainpoolp384t1_5157", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5157_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5157_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2952 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5158 for ECDH, tcId is 2953 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5158_peerpubkey[] = { 0x7d, 0x06, 0x72, 0xc7, 0x50, 0x82, 0xf9, 0x62, 0x54, 0x6a, 0x91, 0x2c, 0x6e, 0x23, 0x51, 0xcd, 0x82, 0xd1, 0x81, 0xc1, 0xeb, 0x31, 0x6f, 0x99, 0xdd, 0xbe, 0x27, 0x5f, 0xfa, 0x81, 0x3e, 0x44, 0x42, 0x27, 0xd4, 0xee, 0x6c, 0x71, 0xa4, 0xfd, 0xd5, 0x40, 0x9a, 0x1e, 0x99, 0xec, 0x7c, 0x04, }; static const unsigned char ecdh_brainpoolp384t1_5158_privkey[] = { 0x0b, 0x24, 0x78, 0x83, 0xeb, 0x43, 0xb6, 0x26, 0xd4, 0xdd, 0x53, 0xcb, 0x63, 0x25, 0xf7, 0xd7, 0x62, 0x51, 0x24, 0x2e, 0xf8, 0xef, 0x3a, 0x07, 0x57, 0x5e, 0x88, 0x54, 0x67, 0x33, 0xd4, 0x1c, 0xf5, 0x0f, 0x29, 0x3d, 0xaa, 0xd9, 0x3b, 0x8d, 0xe7, 0xb5, 0x2d, 0x34, 0x8b, 0x0c, 0x66, 0x5e, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5158 = { .name = "ecdh_brainpoolp384t1_5158", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5158_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5158_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2953 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5159 for ECDH, tcId is 2954 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5159_peerpubkey[] = { 0x3b, 0xa6, 0x75, 0x5e, 0x4d, 0x89, 0x92, 0xec, 0xc3, 0x97, 0x6c, 0x92, 0x95, 0x3b, 0xbf, 0x46, 0x3a, 0xce, 0x5e, 0x46, 0xb5, 0x83, 0x3b, 0x5d, 0xe9, 0x76, 0x15, 0x29, 0x10, 0x3f, 0xcd, 0x74, 0x44, 0x6e, 0x4d, 0x71, 0x7f, 0x8d, 0xbc, 0x77, 0xd1, 0xc9, 0x92, 0x79, 0xf4, 0xcf, 0x41, 0x5b, }; static const unsigned char ecdh_brainpoolp384t1_5159_privkey[] = { 0x6d, 0xce, 0xd8, 0xbb, 0xcb, 0x61, 0x40, 0xc1, 0xf1, 0x9f, 0xae, 0x20, 0x71, 0xfe, 0x0c, 0x4a, 0x56, 0x9f, 0x05, 0x4e, 0x08, 0x7c, 0x9c, 0x9c, 0x01, 0x0d, 0xaa, 0x0b, 0xcf, 0x0b, 0xc6, 0x50, 0x07, 0xaf, 0xa9, 0x6e, 0x51, 0x42, 0x18, 0xb6, 0xaa, 0x10, 0x51, 0x0e, 0x7d, 0xe7, 0xd7, 0xe4, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5159 = { .name = "ecdh_brainpoolp384t1_5159", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5159_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5159_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2954 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5160 for ECDH, tcId is 2955 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5160_peerpubkey[] = { 0x26, 0x1a, 0x23, 0x06, 0x0a, 0x03, 0x98, 0x69, 0x91, 0xe2, 0x58, 0x25, 0x90, 0x09, 0xae, 0x06, 0xc6, 0xba, 0x0e, 0x17, 0x8b, 0x1a, 0xa6, 0xfc, 0xd5, 0x64, 0x4a, 0x52, 0x6b, 0x78, 0x52, 0x37, 0x66, 0x96, 0x57, 0xc5, 0x53, 0xc1, 0xaa, 0x82, 0xba, 0x89, 0x19, 0x49, 0x1d, 0x4b, 0xab, 0xa1, }; static const unsigned char ecdh_brainpoolp384t1_5160_privkey[] = { 0x26, 0xe8, 0xf2, 0x9d, 0x60, 0x87, 0x7d, 0x0b, 0x67, 0x9d, 0x33, 0x69, 0xff, 0x9a, 0xff, 0xdd, 0x0e, 0xae, 0xe3, 0x56, 0x1f, 0xb4, 0xe7, 0x04, 0x21, 0x71, 0xb8, 0x7c, 0x2d, 0x9f, 0x32, 0xac, 0xcc, 0xd9, 0x49, 0x0b, 0x61, 0xdf, 0x41, 0x36, 0xff, 0x40, 0xf6, 0xac, 0x40, 0x2b, 0x27, 0x92, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5160 = { .name = "ecdh_brainpoolp384t1_5160", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5160_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5160_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2955 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5161 for ECDH, tcId is 2956 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5161_peerpubkey[] = { 0x54, 0x3b, 0x22, 0xc9, 0x77, 0xfb, 0xcd, 0x34, 0x6e, 0xa0, 0x77, 0x42, 0xd2, 0xc6, 0x53, 0xd2, 0xa4, 0x55, 0xa7, 0x45, 0xa6, 0x97, 0x85, 0xfc, 0xe2, 0x7d, 0x7a, 0x3a, 0x9a, 0x35, 0x95, 0x40, 0xa8, 0xab, 0xf5, 0xbd, 0x6e, 0xb3, 0xe3, 0xa3, 0xa5, 0x3b, 0xc2, 0xc0, 0xd3, 0x88, 0xe2, 0x60, }; static const unsigned char ecdh_brainpoolp384t1_5161_privkey[] = { 0x5a, 0x75, 0x8a, 0x03, 0x69, 0xca, 0xaa, 0xc2, 0x76, 0x2c, 0x2f, 0x2b, 0xd6, 0xb6, 0xab, 0x72, 0x88, 0x6d, 0x32, 0x02, 0x17, 0xbe, 0x21, 0x6e, 0xfe, 0x48, 0xd4, 0x91, 0x44, 0x62, 0xa5, 0x69, 0x89, 0x1b, 0xb4, 0x0a, 0xef, 0x43, 0x9b, 0x27, 0xbc, 0x27, 0xe6, 0x5b, 0x63, 0xb3, 0xc1, 0xc6, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5161 = { .name = "ecdh_brainpoolp384t1_5161", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5161_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5161_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2956 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5162 for ECDH, tcId is 2957 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5162_peerpubkey[] = { 0x6b, 0x70, 0x2f, 0x8d, 0xac, 0xe7, 0x76, 0xa8, 0x0e, 0xab, 0x19, 0x4f, 0xba, 0x1b, 0xe0, 0xa3, 0x27, 0x20, 0x58, 0xe7, 0x15, 0xdd, 0xb6, 0xae, 0xa3, 0xad, 0xc5, 0x88, 0x1a, 0xd5, 0x9c, 0xa4, 0xf0, 0x43, 0xf5, 0x24, 0x78, 0x3a, 0x8a, 0x00, 0xa5, 0x88, 0x6a, 0x56, 0xac, 0xac, 0xf4, 0xc6, }; static const unsigned char ecdh_brainpoolp384t1_5162_privkey[] = { 0x04, 0x0e, 0x73, 0x2d, 0xb5, 0xe2, 0x0b, 0x27, 0xe0, 0x27, 0x33, 0x6c, 0xd5, 0x26, 0x1f, 0xf6, 0x4c, 0x91, 0x5e, 0x2e, 0xbb, 0xfb, 0x38, 0x44, 0xb7, 0x1e, 0x85, 0x4c, 0x06, 0x9f, 0x2f, 0xe1, 0x87, 0xcd, 0x81, 0x6b, 0x60, 0x32, 0x1a, 0x84, 0x41, 0x4f, 0x5c, 0xd6, 0x96, 0x70, 0x36, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5162 = { .name = "ecdh_brainpoolp384t1_5162", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5162_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5162_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2957 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5163 for ECDH, tcId is 2958 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5163_peerpubkey[] = { 0x6b, 0x70, 0x2f, 0x8d, 0xac, 0xe7, 0x76, 0xa8, 0x0e, 0xab, 0x19, 0x4f, 0xba, 0x1b, 0xe0, 0xa3, 0x27, 0x20, 0x58, 0xe7, 0x15, 0xdd, 0xb6, 0xae, 0xa3, 0xad, 0xc5, 0x88, 0x1a, 0xd5, 0x9c, 0xa4, 0xf0, 0x43, 0xf5, 0x24, 0x78, 0x3a, 0x8a, 0x00, 0xa5, 0x88, 0x6a, 0x56, 0xac, 0xac, 0xf4, 0xc6, }; static const unsigned char ecdh_brainpoolp384t1_5163_privkey[] = { 0x04, 0x0e, 0x73, 0x2d, 0xb5, 0xe2, 0x0b, 0x27, 0xe0, 0x27, 0x33, 0x6c, 0xd5, 0x26, 0x1f, 0xf6, 0x4c, 0x91, 0x5e, 0x2e, 0xbb, 0xfb, 0x38, 0x44, 0xb7, 0x1e, 0x85, 0x4c, 0x06, 0x9f, 0x2f, 0xe1, 0x87, 0xcd, 0x81, 0x6b, 0x60, 0x32, 0x1a, 0x84, 0x41, 0x4f, 0x5c, 0xd6, 0x96, 0x70, 0x36, 0xc0, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5163 = { .name = "ecdh_brainpoolp384t1_5163", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5163_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5163_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2958 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5164 for ECDH, tcId is 2959 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5164_peerpubkey[] = { 0x54, 0x3b, 0x22, 0xc9, 0x77, 0xfb, 0xcd, 0x34, 0x6e, 0xa0, 0x77, 0x42, 0xd2, 0xc6, 0x53, 0xd2, 0xa4, 0x55, 0xa7, 0x45, 0xa6, 0x97, 0x85, 0xfc, 0xe2, 0x7d, 0x7a, 0x3a, 0x9a, 0x35, 0x95, 0x40, 0xa8, 0xab, 0xf5, 0xbd, 0x6e, 0xb3, 0xe3, 0xa3, 0xa5, 0x3b, 0xc2, 0xc0, 0xd3, 0x88, 0xe2, 0x60, }; static const unsigned char ecdh_brainpoolp384t1_5164_privkey[] = { 0x5a, 0x75, 0x8a, 0x03, 0x69, 0xca, 0xaa, 0xc2, 0x76, 0x2c, 0x2f, 0x2b, 0xd6, 0xb6, 0xab, 0x72, 0x88, 0x6d, 0x32, 0x02, 0x17, 0xbe, 0x21, 0x6e, 0xfe, 0x48, 0xd4, 0x91, 0x44, 0x62, 0xa5, 0x69, 0x89, 0x1b, 0xb4, 0x0a, 0xef, 0x43, 0x9b, 0x27, 0xbc, 0x27, 0xe6, 0x5b, 0x63, 0xb3, 0xc1, 0xc5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5164 = { .name = "ecdh_brainpoolp384t1_5164", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5164_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5164_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2959 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5165 for ECDH, tcId is 2960 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5165_peerpubkey[] = { 0x26, 0x1a, 0x23, 0x06, 0x0a, 0x03, 0x98, 0x69, 0x91, 0xe2, 0x58, 0x25, 0x90, 0x09, 0xae, 0x06, 0xc6, 0xba, 0x0e, 0x17, 0x8b, 0x1a, 0xa6, 0xfc, 0xd5, 0x64, 0x4a, 0x52, 0x6b, 0x78, 0x52, 0x37, 0x66, 0x96, 0x57, 0xc5, 0x53, 0xc1, 0xaa, 0x82, 0xba, 0x89, 0x19, 0x49, 0x1d, 0x4b, 0xab, 0xa1, }; static const unsigned char ecdh_brainpoolp384t1_5165_privkey[] = { 0x26, 0xe8, 0xf2, 0x9d, 0x60, 0x87, 0x7d, 0x0b, 0x67, 0x9d, 0x33, 0x69, 0xff, 0x9a, 0xff, 0xdd, 0x0e, 0xae, 0xe3, 0x56, 0x1f, 0xb4, 0xe7, 0x04, 0x21, 0x71, 0xb8, 0x7c, 0x2d, 0x9f, 0x32, 0xac, 0xcc, 0xd9, 0x49, 0x0b, 0x61, 0xdf, 0x41, 0x36, 0xff, 0x40, 0xf6, 0xac, 0x40, 0x2b, 0x27, 0x93, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5165 = { .name = "ecdh_brainpoolp384t1_5165", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5165_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5165_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2960 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5166 for ECDH, tcId is 2961 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5166_peerpubkey[] = { 0x3b, 0xa6, 0x75, 0x5e, 0x4d, 0x89, 0x92, 0xec, 0xc3, 0x97, 0x6c, 0x92, 0x95, 0x3b, 0xbf, 0x46, 0x3a, 0xce, 0x5e, 0x46, 0xb5, 0x83, 0x3b, 0x5d, 0xe9, 0x76, 0x15, 0x29, 0x10, 0x3f, 0xcd, 0x74, 0x44, 0x6e, 0x4d, 0x71, 0x7f, 0x8d, 0xbc, 0x77, 0xd1, 0xc9, 0x92, 0x79, 0xf4, 0xcf, 0x41, 0x5b, }; static const unsigned char ecdh_brainpoolp384t1_5166_privkey[] = { 0x6d, 0xce, 0xd8, 0xbb, 0xcb, 0x61, 0x40, 0xc1, 0xf1, 0x9f, 0xae, 0x20, 0x71, 0xfe, 0x0c, 0x4a, 0x56, 0x9f, 0x05, 0x4e, 0x08, 0x7c, 0x9c, 0x9c, 0x01, 0x0d, 0xaa, 0x0b, 0xcf, 0x0b, 0xc6, 0x50, 0x07, 0xaf, 0xa9, 0x6e, 0x51, 0x42, 0x18, 0xb6, 0xaa, 0x10, 0x51, 0x0e, 0x7d, 0xe7, 0xd7, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5166 = { .name = "ecdh_brainpoolp384t1_5166", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5166_peerpubkey, .peerpubkeylen = 48, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5166_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2961 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5167 for ECDH, tcId is 2962 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) static const unsigned char ecdh_brainpoolp384t1_5167_peerpubkey[] = { 0x7d, 0x06, 0x72, 0xc7, 0x50, 0x82, 0xf9, 0x62, 0x54, 0x6a, 0x91, 0x2c, 0x6e, 0x23, 0x51, 0xcd, 0x82, 0xd1, 0x81, 0xc1, 0xeb, 0x31, 0x6f, 0x99, 0xdd, 0xbe, 0x27, 0x5f, 0xfa, 0x81, 0x3e, 0x44, 0x42, 0x27, 0xd4, 0xee, 0x6c, 0x71, 0xa4, 0xfd, 0xd5, 0x40, 0x9a, 0x1e, 0x99, 0xec, 0x7c, 0x04, }; static const unsigned char ecdh_brainpoolp384t1_5167_privkey[] = { 0x0b, 0x24, 0x78, 0x83, 0xeb, 0x43, 0xb6, 0x26, 0xd4, 0xdd, 0x53, 0xcb, 0x63, 0x25, 0xf7, 0xd7, 0x62, 0x51, 0x24, 0x2e, 0xf8, 0xef, 0x3a, 0x07, 0x57, 0x5e, 0x88, 0x54, 0x67, 0x33, 0xd4, 0x1c, 0xf5, 0x0f, 0x29, 0x3d, 0xaa, 0xd9, 0x3b, 0x8d, 0xe7, 0xb5, 0x2d, 0x34, 0x8b, 0x0c, 0x66, 0x5d, }; static const wycheproof_ecdh_test ecdh_brainpoolp384t1_5167 = { .name = "ecdh_brainpoolp384t1_5167", .ecdh_alg = ECCCDH, .curve = &brainpoolp384t1_str_params, .peerpubkey = ecdh_brainpoolp384t1_5167_peerpubkey, .peerpubkeylen = 48, .compressed = 3, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp384t1_5167_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key is a low order point on twist, tcId is 2962 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) */ /* Test 5168 for ECDH, tcId is 2963 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5168_peerpubkey[] = { 0x97, 0x72, 0xe5, 0x67, 0x58, 0x0e, 0xd9, 0xa9, 0x62, 0x8c, 0xba, 0x4a, 0x94, 0x84, 0x77, 0xd3, 0x84, 0xd5, 0xe1, 0x6c, 0x10, 0x6a, 0x8d, 0x32, 0x16, 0x01, 0x3c, 0xa5, 0x57, 0xaa, 0x0b, 0xd1, 0xa4, 0xcd, 0xee, 0x0f, 0xa5, 0x60, 0xd2, 0x93, 0x53, 0x38, 0xf5, 0x23, 0xfc, 0x61, 0x2b, 0x7f, 0x0e, 0xb2, 0x34, 0xaf, 0xf1, 0x5f, 0x25, 0x64, 0x0a, 0xda, 0xe0, 0x1e, 0xd0, 0x7a, 0x06, 0x1c, 0x54, 0x1b, 0xb6, 0xea, 0xd1, 0x8e, 0x9b, 0xbc, 0x7e, 0xf0, 0x4d, 0x8c, 0x54, 0x27, 0x25, 0xb6, 0xe3, 0x5d, 0x4d, 0xa6, 0x08, 0xac, 0xcd, 0x3a, 0x28, 0x4d, 0x05, 0x0a, 0xee, 0x19, 0xab, 0x14, 0xad, 0xa0, 0xdc, 0x01, 0x18, 0x50, 0x19, 0xb6, 0xbf, 0x13, 0x3c, 0x04, 0x72, 0x14, 0x88, 0xf8, 0xca, 0x80, 0xa6, 0xad, 0x13, 0xb9, 0x97, 0x79, 0xcc, 0x09, 0xaa, 0x9a, 0x97, 0xad, 0x68, 0x28, }; static const unsigned char ecdh_brainpoolp512t1_5168_privkey[] = { 0x9c, 0x68, 0x74, 0x6b, 0xfa, 0x3f, 0x4a, 0x43, 0x9e, 0x98, 0x7e, 0xea, 0x34, 0x78, 0xd4, 0x42, 0xc9, 0x68, 0x90, 0xa0, 0x87, 0x60, 0x5b, 0x61, 0x9b, 0x62, 0xce, 0xcb, 0xe6, 0xc6, 0xfa, 0xac, 0x77, 0x46, 0x9f, 0xee, 0xdc, 0xe3, 0xe2, 0x2d, 0xfd, 0x42, 0xa6, 0xd1, 0xed, 0xc8, 0xa0, 0x5b, 0xad, 0xbc, 0xf4, 0x00, 0x2b, 0xe5, 0x53, 0x85, 0x4d, 0xb3, 0x1d, 0xa4, 0xfe, 0xcf, 0xdd, 0xaa, }; static const unsigned char ecdh_brainpoolp512t1_5168_sharedsecret[] = { 0x3d, 0x71, 0xc1, 0xa0, 0x89, 0x60, 0xdf, 0x3e, 0x3f, 0xce, 0x6e, 0x57, 0xa7, 0x7e, 0x69, 0xd3, 0xda, 0x6b, 0xf4, 0x52, 0xbd, 0x5a, 0x2e, 0x8e, 0x45, 0x81, 0x22, 0x40, 0x2a, 0x1c, 0xc1, 0xef, 0x45, 0x98, 0xd6, 0x82, 0x61, 0x23, 0xa2, 0x64, 0x93, 0xca, 0xb7, 0x32, 0x53, 0xbb, 0x69, 0x92, 0xfb, 0xc5, 0xad, 0x95, 0xb2, 0x34, 0xe7, 0x06, 0x85, 0x40, 0xfd, 0x19, 0x02, 0x85, 0xbd, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5168 = { .name = "ecdh_brainpoolp512t1_5168", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5168_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5168_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5168_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "normal case, tcId is 2963 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5169 for ECDH, tcId is 2964 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5169_peerpubkey[] = { 0x97, 0x72, 0xe5, 0x67, 0x58, 0x0e, 0xd9, 0xa9, 0x62, 0x8c, 0xba, 0x4a, 0x94, 0x84, 0x77, 0xd3, 0x84, 0xd5, 0xe1, 0x6c, 0x10, 0x6a, 0x8d, 0x32, 0x16, 0x01, 0x3c, 0xa5, 0x57, 0xaa, 0x0b, 0xd1, 0xa4, 0xcd, 0xee, 0x0f, 0xa5, 0x60, 0xd2, 0x93, 0x53, 0x38, 0xf5, 0x23, 0xfc, 0x61, 0x2b, 0x7f, 0x0e, 0xb2, 0x34, 0xaf, 0xf1, 0x5f, 0x25, 0x64, 0x0a, 0xda, 0xe0, 0x1e, 0xd0, 0x7a, 0x06, 0x1c, }; static const unsigned char ecdh_brainpoolp512t1_5169_privkey[] = { 0x9c, 0x68, 0x74, 0x6b, 0xfa, 0x3f, 0x4a, 0x43, 0x9e, 0x98, 0x7e, 0xea, 0x34, 0x78, 0xd4, 0x42, 0xc9, 0x68, 0x90, 0xa0, 0x87, 0x60, 0x5b, 0x61, 0x9b, 0x62, 0xce, 0xcb, 0xe6, 0xc6, 0xfa, 0xac, 0x77, 0x46, 0x9f, 0xee, 0xdc, 0xe3, 0xe2, 0x2d, 0xfd, 0x42, 0xa6, 0xd1, 0xed, 0xc8, 0xa0, 0x5b, 0xad, 0xbc, 0xf4, 0x00, 0x2b, 0xe5, 0x53, 0x85, 0x4d, 0xb3, 0x1d, 0xa4, 0xfe, 0xcf, 0xdd, 0xaa, }; static const unsigned char ecdh_brainpoolp512t1_5169_sharedsecret[] = { 0x3d, 0x71, 0xc1, 0xa0, 0x89, 0x60, 0xdf, 0x3e, 0x3f, 0xce, 0x6e, 0x57, 0xa7, 0x7e, 0x69, 0xd3, 0xda, 0x6b, 0xf4, 0x52, 0xbd, 0x5a, 0x2e, 0x8e, 0x45, 0x81, 0x22, 0x40, 0x2a, 0x1c, 0xc1, 0xef, 0x45, 0x98, 0xd6, 0x82, 0x61, 0x23, 0xa2, 0x64, 0x93, 0xca, 0xb7, 0x32, 0x53, 0xbb, 0x69, 0x92, 0xfb, 0xc5, 0xad, 0x95, 0xb2, 0x34, 0xe7, 0x06, 0x85, 0x40, 0xfd, 0x19, 0x02, 0x85, 0xbd, 0x36, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5169 = { .name = "ecdh_brainpoolp512t1_5169", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5169_peerpubkey, .peerpubkeylen = 64, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5169_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5169_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "compressed public key, tcId is 2964 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5170 for ECDH, tcId is 2965 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5170_peerpubkey[] = { 0x5a, 0x9c, 0x98, 0x95, 0xb7, 0xd2, 0xd8, 0x7b, 0xc4, 0x5e, 0xe6, 0x50, 0x41, 0x20, 0x53, 0xbf, 0x86, 0x92, 0x54, 0x1f, 0xe5, 0x49, 0x6f, 0x9a, 0xd9, 0x0d, 0xb9, 0x9e, 0x11, 0xb7, 0x15, 0xad, 0xc3, 0x51, 0x61, 0x19, 0xd6, 0x07, 0x8e, 0x25, 0xa0, 0xa1, 0x2e, 0xee, 0x0f, 0x78, 0xc4, 0x1c, 0xad, 0xf9, 0x85, 0xfe, 0xa0, 0xed, 0x6c, 0x78, 0x23, 0x6d, 0x73, 0x52, 0x7d, 0xec, 0xb8, 0xca, 0x92, 0xc7, 0xef, 0xb8, 0xb6, 0xf7, 0x75, 0x50, 0xe1, 0x33, 0x43, 0x16, 0x31, 0x76, 0x24, 0x69, 0xed, 0xcf, 0x47, 0x86, 0x00, 0x05, 0xc5, 0x7d, 0x5d, 0x32, 0x7c, 0x37, 0x01, 0xc0, 0xa5, 0xbd, 0xe7, 0x51, 0xd3, 0xa6, 0xc6, 0xb6, 0x16, 0xa4, 0x23, 0x81, 0x39, 0xd3, 0xde, 0x9f, 0xec, 0xd4, 0x9f, 0x6a, 0x0c, 0xa7, 0xd8, 0xd7, 0x81, 0xbc, 0x6a, 0x51, 0x72, 0x3b, 0xa3, 0x8e, 0xa0, 0xc1, }; static const unsigned char ecdh_brainpoolp512t1_5170_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5170_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5170 = { .name = "ecdh_brainpoolp512t1_5170", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5170_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5170_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5170_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2965 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5171 for ECDH, tcId is 2966 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5171_peerpubkey[] = { 0x3c, 0x7c, 0x98, 0x2b, 0xca, 0xdd, 0x9c, 0xc5, 0xf0, 0x1e, 0x9f, 0x6b, 0x59, 0x34, 0x0e, 0xa2, 0x0d, 0xfc, 0x86, 0x53, 0x7f, 0x7a, 0x10, 0x8d, 0x54, 0xef, 0x0a, 0x60, 0x43, 0xab, 0x2d, 0x67, 0x3c, 0x79, 0x8d, 0x6f, 0xc4, 0xba, 0xcd, 0xc9, 0xff, 0x03, 0xb3, 0x05, 0xdf, 0x7c, 0x09, 0x33, 0x53, 0xfe, 0xc7, 0xea, 0x4a, 0x05, 0xd4, 0x4a, 0x5f, 0x14, 0xc4, 0x18, 0x34, 0x85, 0x87, 0x59, 0x69, 0xf9, 0x16, 0x74, 0x7d, 0x92, 0x54, 0xc9, 0xee, 0x26, 0x8a, 0xb6, 0x30, 0xde, 0xec, 0x32, 0x7b, 0x9e, 0x22, 0xcc, 0x74, 0x3a, 0xcb, 0xd2, 0x68, 0x35, 0xde, 0xd6, 0x5f, 0xd3, 0x70, 0xa7, 0x44, 0x5b, 0x81, 0x9f, 0x2a, 0x9b, 0x7d, 0xa6, 0x95, 0x59, 0xe3, 0x89, 0x60, 0xb1, 0x09, 0xb2, 0x10, 0x83, 0x05, 0x7a, 0xe5, 0x45, 0x01, 0x12, 0x86, 0xd7, 0x27, 0xb3, 0xd3, 0xc5, 0x61, 0x66, }; static const unsigned char ecdh_brainpoolp512t1_5171_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5171_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5171 = { .name = "ecdh_brainpoolp512t1_5171", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5171_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5171_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5171_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2966 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5172 for ECDH, tcId is 2967 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5172_peerpubkey[] = { 0x8f, 0x4a, 0xd4, 0xe3, 0x64, 0xfb, 0x67, 0xbd, 0x09, 0xd6, 0x58, 0x19, 0xb8, 0xa6, 0x67, 0x70, 0xe3, 0xd2, 0x59, 0x28, 0x5e, 0x2b, 0x8c, 0x9c, 0x80, 0xef, 0x2f, 0x77, 0xc6, 0xfa, 0x18, 0x91, 0x42, 0x04, 0x5a, 0x68, 0x52, 0xd2, 0xec, 0x76, 0xc1, 0x3a, 0xd9, 0x5a, 0xda, 0x83, 0x79, 0x53, 0x99, 0x19, 0xf5, 0x89, 0x70, 0x11, 0xd0, 0x60, 0x7a, 0xef, 0x0c, 0x35, 0xed, 0xd8, 0x94, 0x63, 0x14, 0xaa, 0xba, 0x98, 0xf1, 0xdc, 0x6d, 0x60, 0xdc, 0x89, 0x8f, 0x0c, 0x7e, 0x9b, 0x12, 0x84, 0x0d, 0x17, 0xcd, 0x3f, 0xeb, 0x73, 0xe2, 0x57, 0xf3, 0xa7, 0xd1, 0x23, 0xa3, 0x3d, 0x07, 0x32, 0xc1, 0xb9, 0xcb, 0x24, 0xe1, 0x54, 0x2b, 0xe1, 0x67, 0x9d, 0x81, 0x8c, 0xdf, 0x6f, 0xed, 0x41, 0xf5, 0xc0, 0x35, 0x27, 0x8c, 0x3d, 0x4f, 0x61, 0xe0, 0xd2, 0xe8, 0x9f, 0x70, 0x9e, 0x36, 0x81, }; static const unsigned char ecdh_brainpoolp512t1_5172_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5172_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5172 = { .name = "ecdh_brainpoolp512t1_5172", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5172_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5172_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5172_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2967 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5173 for ECDH, tcId is 2968 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5173_peerpubkey[] = { 0x79, 0x8f, 0xe0, 0x77, 0x87, 0x2c, 0x65, 0x8c, 0x3f, 0xd3, 0x71, 0x25, 0x46, 0x08, 0xce, 0xe9, 0xf2, 0xf5, 0xf4, 0x2e, 0x92, 0xee, 0x35, 0xee, 0x61, 0x25, 0xa4, 0xf6, 0x60, 0x5f, 0xfd, 0xc5, 0x3c, 0xe8, 0xeb, 0xe4, 0xe5, 0xb2, 0x79, 0x8b, 0x27, 0xe7, 0x83, 0x45, 0x3f, 0xc0, 0x14, 0xcb, 0x97, 0x95, 0xfe, 0x67, 0x26, 0x4c, 0x63, 0x5b, 0xf6, 0x96, 0x43, 0x98, 0xae, 0x00, 0x99, 0x96, 0x1f, 0x18, 0x83, 0x2e, 0x3a, 0xc4, 0x3f, 0xcc, 0xd1, 0xef, 0xf6, 0xab, 0x05, 0x62, 0xb2, 0x99, 0xd0, 0x78, 0x28, 0xbe, 0x07, 0xe8, 0x86, 0x30, 0xc5, 0x2d, 0x46, 0xe8, 0x43, 0xcd, 0x54, 0x83, 0x90, 0x88, 0x25, 0x60, 0xfe, 0xfb, 0x89, 0x4b, 0x4c, 0x50, 0x8f, 0xc2, 0x58, 0x3e, 0xe8, 0x3d, 0xdb, 0x4e, 0x6f, 0x52, 0x6f, 0xa9, 0xa9, 0x00, 0xfe, 0x5c, 0xd5, 0x25, 0x5d, 0xa0, 0x71, 0xa6, }; static const unsigned char ecdh_brainpoolp512t1_5173_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5173_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5173 = { .name = "ecdh_brainpoolp512t1_5173", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5173_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5173_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5173_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2968 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5174 for ECDH, tcId is 2969 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5174_peerpubkey[] = { 0x23, 0x46, 0xfc, 0x0a, 0x8a, 0x94, 0x0a, 0x63, 0x76, 0xe5, 0xd3, 0x3e, 0x9b, 0x6d, 0x13, 0x8e, 0x94, 0xd1, 0x97, 0x45, 0x74, 0xf0, 0x4a, 0xb4, 0x69, 0x0c, 0x2d, 0x65, 0x9a, 0x29, 0xf0, 0xc9, 0x5e, 0xaa, 0x84, 0xa5, 0x87, 0xf4, 0x30, 0xe9, 0xed, 0x64, 0xf0, 0x0b, 0xa3, 0x1d, 0x12, 0x67, 0x82, 0xf6, 0x1f, 0x10, 0x39, 0x9a, 0xfb, 0xab, 0xca, 0x2f, 0x60, 0x98, 0xb9, 0x89, 0xb6, 0xbb, 0x93, 0xe0, 0xea, 0x73, 0x7c, 0x08, 0x74, 0x30, 0xde, 0x82, 0xf3, 0x3b, 0x19, 0x70, 0x4a, 0x95, 0x32, 0xb2, 0xb5, 0xb5, 0xf8, 0x5b, 0xe7, 0x69, 0x84, 0x90, 0x60, 0xf6, 0xcc, 0xf7, 0xbb, 0xea, 0x03, 0x33, 0xc5, 0xe6, 0xf2, 0x63, 0x5a, 0xe4, 0xab, 0xd8, 0x3e, 0x6d, 0xf0, 0x7a, 0xbf, 0x1a, 0x5b, 0xa8, 0x72, 0x3e, 0x7f, 0xd3, 0xe0, 0xf5, 0x28, 0x24, 0x27, 0xc3, 0x24, 0xb7, 0x81, 0xa9, }; static const unsigned char ecdh_brainpoolp512t1_5174_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5174_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5174 = { .name = "ecdh_brainpoolp512t1_5174", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5174_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5174_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5174_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2969 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5175 for ECDH, tcId is 2970 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5175_peerpubkey[] = { 0x82, 0x48, 0xec, 0x80, 0x1e, 0xfc, 0x1f, 0xd2, 0x43, 0xb0, 0x2b, 0xc1, 0xcc, 0x25, 0x84, 0xa8, 0x03, 0x10, 0x16, 0x50, 0xd1, 0x1a, 0xe3, 0x7c, 0x29, 0x69, 0x2f, 0x4f, 0x61, 0x61, 0x5e, 0x3f, 0x5a, 0x29, 0xb8, 0x9a, 0x6f, 0xe9, 0x0b, 0x55, 0x0e, 0x0a, 0x32, 0xc9, 0xde, 0xe8, 0xa6, 0x80, 0xe4, 0xb8, 0x03, 0x39, 0x35, 0x24, 0xf1, 0x21, 0x90, 0x4e, 0x0a, 0xd6, 0x22, 0xbb, 0xf9, 0x02, 0x4a, 0xaa, 0x31, 0x05, 0x95, 0x7b, 0x85, 0x0a, 0x86, 0x2e, 0x3b, 0x11, 0xac, 0xea, 0xc7, 0x64, 0x89, 0xcf, 0xce, 0x4f, 0xfe, 0x72, 0xf4, 0x65, 0xd1, 0x86, 0x7f, 0xa9, 0x3f, 0x9a, 0x36, 0xce, 0x62, 0xe6, 0x66, 0x8f, 0x19, 0xc3, 0x60, 0x45, 0x8a, 0x2d, 0x55, 0x25, 0xce, 0x4e, 0x2b, 0x5c, 0xb5, 0x55, 0xcf, 0x47, 0x79, 0x9c, 0x26, 0x4a, 0xe6, 0xe5, 0x7e, 0x35, 0xc2, 0x73, 0x74, 0x36, }; static const unsigned char ecdh_brainpoolp512t1_5175_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5175_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5175 = { .name = "ecdh_brainpoolp512t1_5175", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5175_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5175_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5175_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2970 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5176 for ECDH, tcId is 2971 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5176_peerpubkey[] = { 0x8d, 0x33, 0xde, 0xc8, 0x60, 0xef, 0xdd, 0x79, 0x7e, 0xcf, 0x40, 0xfb, 0xc9, 0xb8, 0x3f, 0x5b, 0xd2, 0xa4, 0xe4, 0x29, 0x5b, 0x5f, 0x02, 0x64, 0x32, 0x22, 0xa9, 0x30, 0x88, 0x54, 0x57, 0xf8, 0x0b, 0x40, 0xfd, 0x0b, 0xd0, 0x48, 0x1c, 0x70, 0xb8, 0xe6, 0x61, 0x87, 0x69, 0x84, 0xca, 0x69, 0x99, 0x50, 0x43, 0xe4, 0x55, 0x4a, 0xc6, 0x0c, 0xc3, 0xba, 0xcd, 0x93, 0x8d, 0x5e, 0x34, 0xda, 0x94, 0x87, 0xad, 0x24, 0x61, 0x7d, 0xeb, 0xb0, 0x27, 0xee, 0x0b, 0x0a, 0x72, 0x2a, 0xbb, 0x3b, 0x6f, 0xc2, 0xb8, 0x24, 0x85, 0xde, 0xe1, 0xa0, 0x69, 0xed, 0xaf, 0x9a, 0xe8, 0x48, 0x4f, 0xf7, 0x2a, 0x9d, 0x24, 0x10, 0xc9, 0xd7, 0x40, 0x4f, 0xa8, 0x6d, 0xe0, 0x2b, 0xbd, 0xfc, 0x02, 0x56, 0x80, 0x15, 0xb0, 0x71, 0xce, 0xac, 0x10, 0xe9, 0xe8, 0x9e, 0x3c, 0x38, 0xf4, 0x28, 0x4b, 0xad, }; static const unsigned char ecdh_brainpoolp512t1_5176_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5176_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5176 = { .name = "ecdh_brainpoolp512t1_5176", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5176_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5176_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5176_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2971 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5177 for ECDH, tcId is 2972 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5177_peerpubkey[] = { 0x00, 0x2e, 0xee, 0xae, 0x67, 0x25, 0xad, 0xaa, 0x9e, 0x3b, 0x23, 0xed, 0x16, 0x49, 0x08, 0x88, 0xe3, 0x60, 0xb1, 0xde, 0x5e, 0x6d, 0xaa, 0x29, 0xb5, 0xdb, 0xba, 0x86, 0x8b, 0xa7, 0x03, 0x9e, 0x49, 0x27, 0x43, 0x8d, 0x22, 0xa6, 0xe2, 0xff, 0x76, 0xda, 0x75, 0xd2, 0xac, 0xbb, 0x2b, 0xf8, 0xe5, 0xb0, 0x6f, 0xd8, 0x5f, 0x70, 0xeb, 0x0f, 0x8b, 0x81, 0xb0, 0x55, 0x10, 0xfd, 0x7d, 0x44, 0xa6, 0x52, 0xd9, 0x3f, 0x57, 0x51, 0x82, 0xc5, 0x51, 0x48, 0xb6, 0x99, 0xf1, 0xd8, 0x80, 0x8a, 0xb5, 0x6d, 0x2f, 0x5c, 0xd5, 0x2d, 0x1a, 0xa1, 0x0f, 0x86, 0x36, 0xfb, 0xc3, 0x8a, 0x8d, 0x5f, 0xff, 0x57, 0x28, 0xd2, 0x10, 0x27, 0x56, 0x13, 0x1d, 0x1c, 0xe6, 0xe8, 0x6d, 0x78, 0xce, 0x29, 0xed, 0xf2, 0x3d, 0x47, 0x89, 0x3d, 0x16, 0x7a, 0xe2, 0x35, 0x2e, 0x57, 0x0c, 0xe9, 0xfb, 0xcd, }; static const unsigned char ecdh_brainpoolp512t1_5177_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5177_sharedsecret[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5177 = { .name = "ecdh_brainpoolp512t1_5177", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5177_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5177_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5177_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2972 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5178 for ECDH, tcId is 2973 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5178_peerpubkey[] = { 0x35, 0xc4, 0xf2, 0x86, 0x85, 0x3b, 0x5c, 0x0d, 0xde, 0x03, 0xdf, 0x00, 0x12, 0x6c, 0x26, 0xb4, 0xe5, 0x01, 0xab, 0x1f, 0x06, 0x4f, 0x1e, 0xf2, 0x63, 0x5e, 0xe2, 0x6f, 0x13, 0x03, 0x83, 0xf9, 0xd2, 0xca, 0xd9, 0x72, 0x78, 0x86, 0x0c, 0x62, 0x4a, 0x68, 0xca, 0x80, 0x58, 0x38, 0x99, 0x91, 0x33, 0xda, 0xe4, 0x84, 0x20, 0x52, 0x67, 0xe9, 0xb5, 0x72, 0xd6, 0x44, 0xea, 0x1c, 0xb9, 0xbd, 0x4d, 0x4f, 0xe3, 0xc3, 0x92, 0x78, 0x77, 0x1d, 0x56, 0x34, 0xec, 0xb8, 0x44, 0x80, 0x0a, 0xcb, 0x5c, 0x4c, 0x01, 0xbc, 0xe7, 0xab, 0x45, 0xef, 0x59, 0x91, 0xe7, 0x00, 0xcc, 0x07, 0xac, 0x93, 0x8a, 0xbd, 0x62, 0x11, 0x34, 0xd3, 0xcc, 0xe6, 0xbd, 0x00, 0xc7, 0xb4, 0x32, 0x4b, 0x5b, 0x06, 0xbf, 0xb6, 0x55, 0x18, 0x87, 0x38, 0x13, 0x95, 0x16, 0x33, 0x40, 0xe1, 0xa2, 0xc7, 0x86, 0xe6, }; static const unsigned char ecdh_brainpoolp512t1_5178_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5178_sharedsecret[] = { 0x1c, 0xfd, 0x80, 0x90, 0xbe, 0xb0, 0xe7, 0x3d, 0x73, 0x93, 0x00, 0x52, 0x06, 0x61, 0x39, 0xcf, 0x5e, 0xb5, 0xb8, 0x04, 0xcb, 0x1b, 0xdc, 0x6b, 0x4e, 0x9a, 0x9d, 0x5c, 0xf0, 0xcf, 0x7a, 0x00, 0x22, 0x77, 0x2c, 0xb4, 0xbd, 0xc9, 0x03, 0x65, 0xe9, 0x2f, 0x5d, 0x4f, 0xc0, 0xdc, 0xde, 0x0d, 0xb5, 0x2f, 0x6d, 0x3a, 0xf7, 0x79, 0x1d, 0x11, 0x0b, 0x9d, 0x5a, 0x48, 0x2b, 0x14, 0xb3, 0x5a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5178 = { .name = "ecdh_brainpoolp512t1_5178", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5178_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5178_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5178_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2973 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5179 for ECDH, tcId is 2974 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5179_peerpubkey[] = { 0xa0, 0x1d, 0x1e, 0x2a, 0x3d, 0x7e, 0x31, 0x57, 0xee, 0x38, 0xd1, 0x26, 0x1f, 0xbb, 0xa9, 0xba, 0xc5, 0x9e, 0xee, 0x25, 0x41, 0xaf, 0x60, 0x09, 0xdd, 0x6d, 0xb3, 0xa0, 0xaa, 0x0f, 0x55, 0x1a, 0xad, 0x6e, 0x62, 0x72, 0x0f, 0x0a, 0x20, 0x2e, 0x60, 0xbc, 0x0a, 0x02, 0x83, 0x10, 0xcd, 0x8c, 0xb8, 0xfe, 0x9d, 0x3e, 0x15, 0x52, 0x5c, 0xdf, 0xa5, 0xef, 0x45, 0xcb, 0x0f, 0xdc, 0x5b, 0x7b, 0x35, 0x8b, 0x37, 0xa2, 0x27, 0x6f, 0x69, 0x0b, 0x54, 0x54, 0xd8, 0x28, 0xac, 0xdf, 0x20, 0x77, 0xe6, 0xe2, 0x07, 0xed, 0x63, 0xb3, 0x43, 0x65, 0x27, 0xa6, 0xfa, 0xcf, 0xa6, 0xb0, 0xaf, 0xca, 0xe9, 0x6e, 0x8d, 0x55, 0x6a, 0x60, 0x52, 0x52, 0xcd, 0x4d, 0x66, 0x40, 0xc8, 0xf0, 0x09, 0x8f, 0xb2, 0x07, 0xba, 0xbd, 0x6e, 0x47, 0x1e, 0x87, 0x18, 0xc8, 0xe8, 0x4e, 0x58, 0xb2, 0xf8, 0xca, }; static const unsigned char ecdh_brainpoolp512t1_5179_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5179_sharedsecret[] = { 0x34, 0xf9, 0xde, 0x74, 0xbe, 0xd5, 0x5e, 0x40, 0xdf, 0x90, 0xa5, 0xe7, 0x29, 0xc2, 0x7f, 0x1e, 0xdb, 0x29, 0xd2, 0xca, 0x0c, 0x91, 0xce, 0x2c, 0xa6, 0x12, 0xef, 0xa6, 0x25, 0xe5, 0x5d, 0x8f, 0x1b, 0x8c, 0xa4, 0xa2, 0x3a, 0xb0, 0xcd, 0x91, 0x52, 0xb8, 0x32, 0xd3, 0x1a, 0x0c, 0x8f, 0xf6, 0x7e, 0x2d, 0x0e, 0xd8, 0x8c, 0x23, 0xc3, 0x56, 0xee, 0x49, 0xb9, 0x33, 0x1f, 0x50, 0x2b, 0x54, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5179 = { .name = "ecdh_brainpoolp512t1_5179", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5179_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5179_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5179_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2974 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5180 for ECDH, tcId is 2975 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5180_peerpubkey[] = { 0x56, 0x8d, 0x77, 0x79, 0x55, 0x66, 0x3d, 0xca, 0xa0, 0x41, 0x68, 0xe5, 0x53, 0xa6, 0x6b, 0x3b, 0x20, 0x76, 0xef, 0x5e, 0x65, 0xf5, 0x9b, 0xc0, 0x50, 0xed, 0x79, 0x8f, 0x34, 0x19, 0x4f, 0xa6, 0x44, 0x67, 0xd2, 0x0f, 0x69, 0x4b, 0x69, 0x24, 0x53, 0x51, 0xff, 0x9b, 0xcc, 0x91, 0x85, 0xe3, 0x73, 0xc1, 0xe3, 0xcb, 0xb2, 0x73, 0x84, 0x49, 0x33, 0xac, 0x87, 0x3c, 0x5b, 0xe9, 0x80, 0x72, 0x04, 0xba, 0x6f, 0xe9, 0xc3, 0x06, 0x17, 0x71, 0x84, 0x67, 0x1e, 0xe7, 0xa3, 0x55, 0xe3, 0xd2, 0xfd, 0xac, 0xfd, 0x87, 0x02, 0x2c, 0x06, 0x4f, 0xe4, 0x63, 0x0d, 0x21, 0xb5, 0x44, 0x70, 0x81, 0xfc, 0x94, 0xba, 0xea, 0x0f, 0x0e, 0x20, 0x1c, 0x75, 0x46, 0x0d, 0x2a, 0x56, 0x32, 0x63, 0x99, 0xcf, 0x39, 0xce, 0x89, 0xe2, 0xff, 0x0f, 0xde, 0x8d, 0x15, 0xe4, 0x55, 0xf7, 0x07, 0x65, 0xda, }; static const unsigned char ecdh_brainpoolp512t1_5180_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5180_sharedsecret[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5180 = { .name = "ecdh_brainpoolp512t1_5180", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5180_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5180_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5180_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2975 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5181 for ECDH, tcId is 2976 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5181_peerpubkey[] = { 0x62, 0x34, 0x64, 0xb3, 0xe5, 0xfa, 0x4c, 0xab, 0xe1, 0x16, 0xce, 0xa3, 0x54, 0xd7, 0x34, 0xde, 0x16, 0x45, 0x10, 0x18, 0x10, 0x80, 0x8d, 0x90, 0xc5, 0xd5, 0x1f, 0x89, 0x3d, 0xde, 0x2e, 0x35, 0xe0, 0x5c, 0x0a, 0x91, 0x3e, 0xcb, 0x6e, 0xe6, 0x30, 0x03, 0x76, 0x28, 0xea, 0x4e, 0x77, 0x3d, 0xa2, 0x03, 0xfd, 0xbf, 0xa8, 0x44, 0xa8, 0xc1, 0x43, 0x0a, 0x01, 0x30, 0xda, 0x89, 0x3b, 0xdc, 0x4d, 0xec, 0x5d, 0x7b, 0x46, 0x8b, 0xc1, 0x51, 0xdd, 0x5c, 0x38, 0x72, 0x2c, 0x92, 0xce, 0x2f, 0xb5, 0x19, 0x0d, 0xd8, 0x03, 0xc0, 0x5a, 0x0c, 0xd8, 0x04, 0x34, 0xf1, 0x46, 0x0d, 0xa3, 0x69, 0x93, 0x06, 0x8a, 0x7a, 0x63, 0x9d, 0xda, 0xe6, 0xa9, 0x0f, 0xe8, 0x13, 0x19, 0xbf, 0x81, 0x13, 0x89, 0x49, 0x65, 0xcf, 0x94, 0xf9, 0x06, 0x05, 0x24, 0x04, 0xc4, 0xe8, 0x67, 0x24, 0x32, 0x3e, }; static const unsigned char ecdh_brainpoolp512t1_5181_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5181_sharedsecret[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5181 = { .name = "ecdh_brainpoolp512t1_5181", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5181_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5181_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5181_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2976 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5182 for ECDH, tcId is 2977 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5182_peerpubkey[] = { 0x5a, 0x19, 0x50, 0x94, 0x24, 0x34, 0x52, 0x82, 0x05, 0xa1, 0xa3, 0xcf, 0x54, 0x02, 0x6b, 0x47, 0x41, 0xa9, 0x29, 0x7d, 0xde, 0xae, 0xbe, 0x2e, 0xda, 0xc8, 0x5f, 0x12, 0xbc, 0x4f, 0x45, 0xac, 0xc4, 0x8e, 0x4f, 0xc8, 0x3c, 0xbf, 0x6e, 0x22, 0x8b, 0xcb, 0x1f, 0x37, 0x69, 0x68, 0x7c, 0x5a, 0x95, 0xd8, 0xb6, 0x9d, 0xd2, 0x1c, 0x1f, 0xd3, 0x65, 0xb6, 0x4a, 0xe9, 0x8a, 0x72, 0x5b, 0x73, 0x97, 0xcb, 0x87, 0xb9, 0x63, 0xee, 0xc9, 0xae, 0xa1, 0x47, 0xb0, 0x07, 0xd7, 0x32, 0x78, 0x4c, 0x2f, 0x50, 0x66, 0x21, 0x6b, 0xe7, 0xc4, 0xbd, 0x8b, 0x6b, 0x44, 0x84, 0x8f, 0x0a, 0x47, 0x88, 0xe0, 0xf4, 0xa5, 0x94, 0x41, 0xe2, 0x05, 0x7b, 0x8a, 0xc4, 0xb8, 0x23, 0x76, 0x13, 0x30, 0x85, 0x82, 0x8e, 0x41, 0xd5, 0x5c, 0x77, 0x4a, 0x74, 0xfc, 0x31, 0xca, 0x97, 0xf8, 0x0a, 0x60, 0x42, }; static const unsigned char ecdh_brainpoolp512t1_5182_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5182_sharedsecret[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5182 = { .name = "ecdh_brainpoolp512t1_5182", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5182_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5182_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5182_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2977 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5183 for ECDH, tcId is 2978 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5183_peerpubkey[] = { 0x62, 0x95, 0xa1, 0xd8, 0x5e, 0xf3, 0xf4, 0xee, 0x6c, 0xa8, 0x7b, 0x04, 0x2a, 0x05, 0xd4, 0xc3, 0x98, 0xac, 0x6d, 0x5a, 0x50, 0x3e, 0x82, 0x99, 0xfc, 0x8e, 0xfc, 0x98, 0xd8, 0x25, 0x67, 0x02, 0xf8, 0x44, 0x9e, 0xf4, 0xec, 0x8b, 0x8b, 0x9b, 0xcd, 0xf0, 0x2d, 0xb8, 0x68, 0xb3, 0x2b, 0x81, 0xd5, 0x83, 0xb1, 0x22, 0x37, 0x65, 0x2e, 0x3a, 0x56, 0x49, 0xbc, 0xd5, 0x35, 0x3f, 0x55, 0x66, 0x10, 0x6c, 0xa8, 0x52, 0x76, 0x1a, 0x66, 0x12, 0x07, 0xa8, 0x9d, 0x0b, 0x88, 0xb1, 0x26, 0x14, 0x6c, 0xf6, 0x65, 0xda, 0x1f, 0xb6, 0x5d, 0x89, 0x75, 0x37, 0x70, 0xf3, 0x80, 0x5b, 0x25, 0x81, 0x28, 0x0a, 0x80, 0xeb, 0x78, 0xd5, 0x65, 0xe9, 0xf8, 0x81, 0x50, 0xf6, 0x58, 0x64, 0x7d, 0x98, 0x83, 0xa6, 0x4c, 0xd4, 0xa6, 0xf7, 0xe3, 0xe9, 0x89, 0x79, 0xae, 0x6a, 0xea, 0x29, 0xd8, 0x8b, }; static const unsigned char ecdh_brainpoolp512t1_5183_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5183_sharedsecret[] = { 0x49, 0xba, 0x9a, 0x7a, 0x28, 0xbc, 0xe1, 0x49, 0x9b, 0x99, 0xd9, 0xd0, 0xbf, 0x6f, 0x53, 0xf2, 0x09, 0xe7, 0xa8, 0x37, 0xaf, 0x24, 0x2b, 0x1c, 0x7e, 0xd8, 0x25, 0x99, 0xd5, 0xf1, 0xb6, 0xb2, 0x29, 0x1c, 0xaf, 0x32, 0xfb, 0x21, 0x9f, 0x80, 0x04, 0x41, 0xfb, 0xcd, 0xf5, 0x30, 0x15, 0x8c, 0xbb, 0x54, 0x03, 0x4c, 0x5d, 0x6e, 0xba, 0xea, 0xb8, 0x4f, 0x58, 0x7c, 0x79, 0xef, 0xf8, 0x4b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5183 = { .name = "ecdh_brainpoolp512t1_5183", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5183_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5183_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5183_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2978 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5184 for ECDH, tcId is 2979 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5184_peerpubkey[] = { 0x79, 0xa6, 0xcd, 0x2e, 0x2c, 0x21, 0x18, 0xb9, 0xbb, 0xe6, 0x92, 0x16, 0x53, 0xd9, 0x96, 0xd1, 0xbb, 0xe4, 0x81, 0x8e, 0x99, 0x6b, 0xce, 0x1a, 0x8e, 0xdf, 0x29, 0x18, 0xa9, 0x86, 0x27, 0xb9, 0x2d, 0x36, 0x24, 0x5c, 0x0e, 0x21, 0x41, 0xfe, 0x11, 0x1a, 0x3d, 0x9e, 0x82, 0x60, 0x2c, 0x40, 0x8c, 0xe0, 0x29, 0xc7, 0xb3, 0x85, 0x89, 0x08, 0x31, 0x55, 0xcc, 0xd3, 0xbb, 0x03, 0x3c, 0xae, 0x55, 0x96, 0xc9, 0x59, 0x6d, 0x7e, 0xf7, 0x2e, 0xd8, 0xcf, 0x06, 0xcf, 0x63, 0x92, 0xd8, 0x4a, 0x84, 0xd3, 0x11, 0x70, 0x84, 0x7c, 0xa2, 0xe5, 0x01, 0x09, 0xa4, 0xd3, 0x71, 0xbf, 0x4e, 0xdb, 0xe0, 0xe0, 0x2e, 0xb0, 0x75, 0x15, 0x8a, 0x1f, 0x58, 0x16, 0x55, 0x48, 0x24, 0x49, 0x01, 0x43, 0x6d, 0x38, 0x0e, 0x2a, 0x17, 0x43, 0x84, 0xe9, 0x7f, 0x7a, 0x1a, 0x15, 0x63, 0x15, 0xcd, 0xad, }; static const unsigned char ecdh_brainpoolp512t1_5184_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5184_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5184 = { .name = "ecdh_brainpoolp512t1_5184", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5184_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5184_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5184_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2979 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5185 for ECDH, tcId is 2980 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5185_peerpubkey[] = { 0x95, 0xe9, 0x3d, 0x3f, 0xb8, 0x4d, 0xe7, 0xdf, 0x8e, 0x32, 0x1a, 0xc2, 0xb0, 0xe9, 0x36, 0x87, 0xf7, 0x3a, 0xbe, 0xda, 0xb8, 0x63, 0xe8, 0x62, 0x43, 0x4d, 0x16, 0x34, 0x86, 0x90, 0xf5, 0xf2, 0x34, 0x15, 0x5f, 0x08, 0x86, 0x7f, 0xcf, 0x32, 0x19, 0x57, 0xd9, 0x9e, 0xe0, 0xb0, 0xa1, 0xf5, 0x3a, 0x81, 0x52, 0x56, 0xd3, 0x8d, 0x7c, 0x72, 0x95, 0x3a, 0x31, 0x69, 0x94, 0x1c, 0x68, 0x10, 0x55, 0xf6, 0x0b, 0x55, 0x9c, 0x0f, 0x66, 0x5c, 0xbf, 0xcd, 0x9e, 0xe1, 0x63, 0x38, 0xcf, 0x99, 0xc5, 0x4f, 0x11, 0xc8, 0x78, 0x5b, 0x92, 0x5c, 0x4b, 0x3a, 0xc9, 0x92, 0xf8, 0xd6, 0x4c, 0x74, 0x4b, 0x18, 0x28, 0x37, 0xdc, 0x61, 0x1e, 0xc1, 0xe2, 0xb8, 0xf1, 0x1f, 0xc9, 0xdd, 0x93, 0xb9, 0x83, 0xa6, 0xc0, 0x7c, 0x50, 0x49, 0x81, 0x0e, 0xcf, 0x2f, 0x01, 0xaa, 0x68, 0x2f, 0x5d, 0xa5, }; static const unsigned char ecdh_brainpoolp512t1_5185_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5185_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5185 = { .name = "ecdh_brainpoolp512t1_5185", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5185_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5185_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5185_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2980 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5186 for ECDH, tcId is 2981 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5186_peerpubkey[] = { 0x18, 0xd6, 0x49, 0x00, 0x60, 0x2b, 0x4f, 0xea, 0x02, 0xd5, 0x96, 0x36, 0x5d, 0xbf, 0x38, 0xa9, 0xba, 0x87, 0x62, 0x43, 0xc4, 0x5b, 0x5d, 0xf6, 0xc3, 0xdc, 0x51, 0xd3, 0x2f, 0xbe, 0xb5, 0xe5, 0xbf, 0xa5, 0x69, 0xdc, 0x48, 0xba, 0x68, 0x11, 0x34, 0xdd, 0x38, 0xab, 0xb3, 0x67, 0x02, 0xc4, 0x5e, 0xa5, 0xad, 0x97, 0xbd, 0x5f, 0xb5, 0x9b, 0x72, 0xac, 0x7a, 0xf7, 0x88, 0x0f, 0x77, 0x93, 0x16, 0xa6, 0xcc, 0xd3, 0x71, 0x12, 0xd5, 0x88, 0xd4, 0xf3, 0xf6, 0x75, 0xa0, 0xcb, 0xfd, 0x74, 0x3f, 0x4b, 0x26, 0x35, 0x44, 0xcc, 0xc1, 0xc6, 0x33, 0xcc, 0x26, 0xe4, 0x30, 0x05, 0x46, 0xe7, 0x4f, 0x56, 0xa5, 0x83, 0xdc, 0xe4, 0x91, 0x50, 0xe3, 0x45, 0x11, 0x18, 0xca, 0x2a, 0xb2, 0xa7, 0xef, 0xe3, 0x5c, 0x5e, 0x48, 0x89, 0xc4, 0x97, 0x50, 0x6c, 0x3f, 0xf5, 0x0a, 0x13, 0x1f, 0x61, }; static const unsigned char ecdh_brainpoolp512t1_5186_privkey[] = { 0x84, 0x24, 0x79, 0xc3, 0x1f, 0x83, 0x05, 0x6d, 0xa8, 0x07, 0xc6, 0xbf, 0xf5, 0x82, 0x54, 0x06, 0x44, 0xed, 0x6a, 0x3b, 0xbc, 0x4a, 0x52, 0x26, 0xcf, 0x3a, 0x21, 0xe9, 0x18, 0xef, 0x36, 0xe0, 0x61, 0x6c, 0x8c, 0x6a, 0xd4, 0xbf, 0x13, 0xfa, 0xca, 0x90, 0x0d, 0xba, 0x60, 0xb6, 0x76, 0x1c, 0xb0, 0x7b, 0x0d, 0xdb, 0x01, 0x67, 0x3a, 0xe3, 0x14, 0x77, 0xe0, 0x95, 0xcd, 0x21, 0x1b, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5186_sharedsecret[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5186 = { .name = "ecdh_brainpoolp512t1_5186", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5186_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5186_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5186_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for shared secret, tcId is 2981 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5187 for ECDH, tcId is 2982 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5187_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0e, 0xb2, 0x8f, 0x88, 0xdd, 0xc9, 0x62, 0xde, 0x75, 0x54, 0x2f, 0xf5, 0x78, 0xb6, 0x10, 0x4f, 0x4d, 0x71, 0x3b, 0x25, 0xba, 0xe5, 0x0d, 0x40, 0xbf, 0x91, 0x00, 0x88, 0x05, 0x60, 0x59, 0x72, 0x95, 0x2e, 0x7f, 0x2a, 0x9d, 0xf7, 0xe8, 0xe1, 0xdd, 0x14, 0xa4, 0x61, 0xd3, 0x97, 0x37, 0x79, 0xd2, 0x43, 0x83, 0xf2, 0x0b, 0x77, 0xc6, 0x04, 0xcf, 0x69, 0xf8, 0xeb, 0x5c, 0xba, 0xce, 0x9e, }; static const unsigned char ecdh_brainpoolp512t1_5187_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5187_sharedsecret[] = { 0x46, 0xf3, 0x01, 0xc8, 0x20, 0x0f, 0xac, 0x3c, 0x3a, 0x3f, 0xff, 0x3d, 0xc6, 0x3d, 0xd1, 0xa9, 0x34, 0x77, 0x32, 0x03, 0x85, 0x3b, 0x88, 0x93, 0x70, 0xc3, 0x39, 0xa4, 0x05, 0x2e, 0x0b, 0x7c, 0xd0, 0x0c, 0xee, 0xcb, 0x14, 0xde, 0x01, 0x51, 0x43, 0x60, 0x5f, 0x95, 0x19, 0xef, 0xe5, 0x74, 0xd8, 0x20, 0xef, 0xbb, 0xca, 0xcc, 0xeb, 0x81, 0xeb, 0xcf, 0x5c, 0x28, 0x5f, 0x09, 0xae, 0x29, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5187 = { .name = "ecdh_brainpoolp512t1_5187", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5187_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5187_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5187_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2982 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5188 for ECDH, tcId is 2983 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5188_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0xe3, 0x43, 0xd3, 0xe9, 0x31, 0x9c, 0x1a, 0xb5, 0x54, 0x6a, 0x85, 0xfa, 0x05, 0x14, 0xdb, 0x8d, 0x35, 0x57, 0x80, 0x15, 0xc1, 0x14, 0xf2, 0x4f, 0xab, 0x29, 0x74, 0x46, 0x53, 0xa2, 0xff, 0x0d, 0xac, 0xac, 0x25, 0x4d, 0x1d, 0xed, 0x8b, 0x5f, 0x41, 0xdf, 0x46, 0x00, 0x51, 0x3a, 0x86, 0x68, 0xa5, 0x23, 0xf4, 0x1e, 0x4c, 0x73, 0xb4, 0x3a, 0xc2, 0xf7, 0x9c, 0x9d, 0x75, 0x5d, 0x64, }; static const unsigned char ecdh_brainpoolp512t1_5188_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5188_sharedsecret[] = { 0x14, 0x77, 0xab, 0x84, 0xd0, 0x9a, 0x82, 0xbc, 0x69, 0xbe, 0xcd, 0x36, 0x3a, 0x89, 0x3e, 0xad, 0x8a, 0x0c, 0x98, 0xb2, 0xae, 0x4a, 0xe0, 0xb5, 0x4e, 0x58, 0x76, 0x18, 0xa8, 0x75, 0x62, 0x48, 0x81, 0xd7, 0x4b, 0xca, 0xed, 0xca, 0xa0, 0x39, 0xe0, 0xf5, 0x11, 0x64, 0xfa, 0x72, 0xdb, 0x5d, 0x6d, 0xd2, 0xbe, 0x89, 0xbb, 0x5c, 0xf2, 0x78, 0x62, 0x29, 0xec, 0xb7, 0x9c, 0xf8, 0xa0, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5188 = { .name = "ecdh_brainpoolp512t1_5188", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5188_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5188_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5188_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2983 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5189 for ECDH, tcId is 2984 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5189_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x76, 0xdf, 0xaa, 0x11, 0x90, 0x72, 0x56, 0x27, 0x87, 0xae, 0x26, 0xf8, 0x74, 0xa9, 0x35, 0x53, 0x3d, 0x4c, 0x77, 0xd3, 0x01, 0x52, 0x7a, 0x9a, 0xde, 0xb9, 0x05, 0xac, 0xc4, 0x64, 0x3a, 0xfc, 0x58, 0x03, 0x41, 0xbd, 0x05, 0xae, 0x4f, 0x63, 0xaf, 0x97, 0x6b, 0x08, 0x1d, 0x22, 0xc9, 0x3d, 0x46, 0x6a, 0xbe, 0xcd, 0x2d, 0xd3, 0xb3, 0xa9, 0x39, 0x4d, 0x15, 0xc5, 0x4d, 0x1e, 0x17, }; static const unsigned char ecdh_brainpoolp512t1_5189_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5189_sharedsecret[] = { 0x30, 0xa3, 0x38, 0x55, 0x80, 0x16, 0x31, 0x54, 0xbb, 0x0e, 0xa3, 0xe5, 0xc8, 0x2e, 0x38, 0xea, 0x10, 0x1f, 0x75, 0x47, 0x57, 0xd2, 0x79, 0xe7, 0x16, 0x66, 0x3f, 0x46, 0x4a, 0xdb, 0x61, 0xc1, 0xa6, 0x65, 0xcf, 0x5c, 0x79, 0xdb, 0x6e, 0xea, 0x70, 0xe0, 0xa3, 0x5e, 0xa1, 0xd1, 0xc9, 0xa8, 0xc0, 0x03, 0xf1, 0x30, 0x30, 0xa5, 0x22, 0x67, 0x95, 0xda, 0xec, 0x05, 0x07, 0xe1, 0x89, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5189 = { .name = "ecdh_brainpoolp512t1_5189", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5189_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5189_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5189_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2984 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5190 for ECDH, tcId is 2985 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5190_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x4c, 0x96, 0x33, 0xe8, 0xb5, 0x52, 0x58, 0x09, 0xdd, 0x87, 0x9c, 0x06, 0xa3, 0x6b, 0x71, 0xd8, 0x4d, 0xc3, 0x9d, 0x49, 0x4d, 0x6c, 0x20, 0xaa, 0x3d, 0x00, 0x51, 0x8b, 0x71, 0xd8, 0xf4, 0x4e, 0xc9, 0x79, 0xe8, 0x22, 0xef, 0xb7, 0x37, 0x20, 0xc0, 0x3a, 0x85, 0x14, 0x56, 0x2f, 0x29, 0xb1, 0x41, 0x78, 0x82, 0xa9, 0x29, 0x8e, 0x25, 0xab, 0xee, 0xa9, 0xb2, 0x60, 0x26, 0xe3, 0x1c, 0x8f, }; static const unsigned char ecdh_brainpoolp512t1_5190_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5190_sharedsecret[] = { 0x46, 0x06, 0xc8, 0x0c, 0xe9, 0x84, 0x9a, 0x33, 0x99, 0xa5, 0x26, 0x27, 0x56, 0x46, 0x4f, 0xd9, 0x05, 0x86, 0xea, 0xd9, 0xca, 0x9e, 0x85, 0xb1, 0x76, 0x6d, 0x52, 0x5a, 0x1e, 0x8f, 0xb1, 0xe8, 0xe2, 0xf3, 0x12, 0xfe, 0xd3, 0x20, 0x9c, 0xf6, 0x02, 0x12, 0xe0, 0xeb, 0xe1, 0x08, 0xd6, 0x84, 0x58, 0xd0, 0xfa, 0xbb, 0x51, 0x6f, 0x50, 0x6e, 0xdd, 0x74, 0x56, 0x3f, 0x4b, 0x18, 0x8e, 0xa1, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5190 = { .name = "ecdh_brainpoolp512t1_5190", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5190_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5190_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5190_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2985 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5191 for ECDH, tcId is 2986 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5191_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x53, 0xd8, 0x54, 0x7a, 0x99, 0x36, 0x79, 0xba, 0xbf, 0xed, 0x1d, 0x48, 0xe5, 0x13, 0x68, 0xfb, 0xa3, 0xd5, 0xc9, 0xc7, 0xa7, 0x9e, 0x4d, 0x0a, 0x04, 0x19, 0xee, 0xa7, 0x08, 0xe9, 0x75, 0x98, 0x25, 0xcd, 0x72, 0xea, 0x19, 0x40, 0xaa, 0xfa, 0xca, 0x35, 0xec, 0xe7, 0x26, 0x03, 0x2f, 0xbd, 0xf8, 0x2c, 0x7d, 0x2a, 0x2b, 0x04, 0x50, 0xf9, 0x5c, 0xf6, 0x8c, 0xd3, 0x01, 0x9d, 0x9a, 0xe6, }; static const unsigned char ecdh_brainpoolp512t1_5191_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5191_sharedsecret[] = { 0x3c, 0x46, 0xa8, 0x94, 0xeb, 0xd9, 0xb3, 0xd9, 0x48, 0x44, 0x4c, 0x55, 0xef, 0x7d, 0xff, 0x0f, 0x50, 0x43, 0xab, 0xab, 0x0f, 0x50, 0x54, 0x86, 0xec, 0x47, 0x24, 0xdc, 0xdb, 0x32, 0xe9, 0xdd, 0xf1, 0xc0, 0x32, 0xe5, 0x0c, 0x9c, 0x8b, 0xcd, 0xe8, 0x33, 0x7a, 0xb6, 0x7c, 0x2e, 0xcf, 0x7f, 0x41, 0xe0, 0x79, 0xee, 0x87, 0x0f, 0x61, 0x8b, 0x65, 0xa6, 0xe8, 0xc8, 0xa6, 0x80, 0x58, 0x3d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5191 = { .name = "ecdh_brainpoolp512t1_5191", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5191_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5191_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5191_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2986 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5192 for ECDH, tcId is 2987 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5192_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x44, 0xab, 0x29, 0x02, 0xb1, 0x51, 0xd5, 0xc2, 0x67, 0xdf, 0xe9, 0x02, 0x93, 0xa5, 0x2e, 0x42, 0xee, 0xa1, 0x25, 0x24, 0x0e, 0xa8, 0xbb, 0x0f, 0x2e, 0xd2, 0x41, 0x4d, 0x47, 0x36, 0x2d, 0xaa, 0xd9, 0x3d, 0xd5, 0xa9, 0xa1, 0x63, 0x0e, 0x7c, 0x5b, 0x79, 0x94, 0x3b, 0x46, 0x85, 0x8c, 0xc0, 0x72, 0x15, 0x72, 0xcb, 0x6b, 0x9a, 0x8e, 0x1c, 0x69, 0xfe, 0x99, 0x5c, 0x7d, 0xea, 0xc6, 0x5a, }; static const unsigned char ecdh_brainpoolp512t1_5192_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5192_sharedsecret[] = { 0xa3, 0x74, 0x27, 0x0c, 0xa0, 0x6a, 0x0d, 0x55, 0xfb, 0xcc, 0x3d, 0xd7, 0xe1, 0x64, 0x0e, 0xb9, 0x0d, 0xe3, 0x3c, 0x21, 0x7d, 0x87, 0xd4, 0xfb, 0x91, 0x13, 0xda, 0xb5, 0x51, 0xd7, 0x4c, 0xa9, 0x97, 0xf0, 0xc2, 0x4c, 0x7c, 0xd1, 0xf4, 0x14, 0x65, 0xbf, 0x02, 0xe6, 0x03, 0x73, 0x85, 0x09, 0xf2, 0x9e, 0x53, 0x8e, 0xbc, 0xfd, 0x2b, 0x64, 0x2a, 0x59, 0x5e, 0xa4, 0xd6, 0x1b, 0xff, 0xbf, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5192 = { .name = "ecdh_brainpoolp512t1_5192", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5192_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5192_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5192_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2987 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5193 for ECDH, tcId is 2988 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5193_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x13, 0x45, 0xbf, 0x06, 0x04, 0x7f, 0x22, 0x99, 0x0a, 0x08, 0x3f, 0xeb, 0x02, 0x77, 0x22, 0xbd, 0xce, 0xcd, 0xc6, 0xa0, 0x56, 0xf0, 0x2a, 0xd6, 0x0d, 0x86, 0xa3, 0x14, 0x4a, 0xb6, 0xac, 0x72, 0x6a, 0x0e, 0x8d, 0x63, 0x4f, 0x1a, 0x54, 0xd5, 0x38, 0xa4, 0x32, 0xaf, 0xf9, 0xf6, 0x80, 0x49, 0x76, 0x8c, 0xbc, 0x61, 0x8c, 0xf4, 0xf3, 0x86, 0xef, 0xf0, 0x76, 0x2d, 0x85, 0x83, 0x2d, 0xce, }; static const unsigned char ecdh_brainpoolp512t1_5193_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5193_sharedsecret[] = { 0x75, 0xc4, 0x61, 0x7e, 0x3f, 0x44, 0x12, 0xb6, 0x9e, 0xcb, 0xff, 0xa2, 0x23, 0x0a, 0xd5, 0xdd, 0x62, 0x8d, 0xbd, 0x27, 0x8b, 0xbb, 0x6a, 0xbd, 0x3b, 0xfd, 0xc6, 0x49, 0x93, 0x0f, 0x0c, 0x73, 0x94, 0xb4, 0x01, 0xb8, 0xf0, 0x69, 0x18, 0x44, 0x10, 0x77, 0x9e, 0xe5, 0xe7, 0x12, 0x81, 0x69, 0x93, 0xb6, 0x6a, 0xca, 0x81, 0x1c, 0x9c, 0x0c, 0xf9, 0x3d, 0x9c, 0x62, 0xca, 0x03, 0x72, 0x3e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5193 = { .name = "ecdh_brainpoolp512t1_5193", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5193_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5193_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5193_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2988 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5194 for ECDH, tcId is 2989 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5194_peerpubkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0xf5, 0xd9, 0x9c, 0x74, 0x8d, 0xc7, 0xac, 0xe1, 0x9d, 0x90, 0x4a, 0xa8, 0x32, 0xda, 0xa6, 0xf0, 0x7e, 0x5f, 0xc0, 0xea, 0x90, 0xc5, 0x37, 0xde, 0x42, 0x2a, 0xda, 0x83, 0x88, 0xc6, 0x81, 0x84, 0xb9, 0x1d, 0x5d, 0x6c, 0x61, 0x93, 0x5d, 0x61, 0xcc, 0xef, 0x2d, 0x36, 0xff, 0x80, 0x87, 0x17, 0xca, 0xcb, 0x15, 0xc2, 0x80, 0x4d, 0x01, 0xc9, 0x8d, 0x6d, 0xf3, 0xfd, 0x36, 0x68, 0x70, }; static const unsigned char ecdh_brainpoolp512t1_5194_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5194_sharedsecret[] = { 0x44, 0xc8, 0x8f, 0xf6, 0x38, 0xe7, 0x53, 0xe1, 0x6d, 0xf6, 0x6c, 0x73, 0x94, 0x00, 0xfc, 0xd9, 0xd4, 0x63, 0x72, 0x16, 0x91, 0x35, 0x8d, 0xed, 0xb6, 0xb5, 0xd0, 0x79, 0x8c, 0x9f, 0x16, 0x14, 0x11, 0xcf, 0x15, 0x27, 0x78, 0x6d, 0x4c, 0x84, 0xe7, 0x7c, 0x2d, 0x81, 0x59, 0xb8, 0x1a, 0x0e, 0xc6, 0x53, 0xf5, 0xb2, 0x9a, 0xc5, 0xbc, 0x20, 0xc9, 0xc9, 0x14, 0xb9, 0x22, 0x88, 0x94, 0xb0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5194 = { .name = "ecdh_brainpoolp512t1_5194", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5194_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5194_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5194_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2989 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5195 for ECDH, tcId is 2990 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5195_peerpubkey[] = { 0x1c, 0xfd, 0x80, 0x90, 0xbe, 0xb0, 0xe7, 0x3d, 0x73, 0x93, 0x00, 0x52, 0x06, 0x61, 0x39, 0xcf, 0x5e, 0xb5, 0xb8, 0x04, 0xcb, 0x1b, 0xdc, 0x6b, 0x4e, 0x9a, 0x9d, 0x5c, 0xf0, 0xcf, 0x7a, 0x00, 0x22, 0x77, 0x2c, 0xb4, 0xbd, 0xc9, 0x03, 0x65, 0xe9, 0x2f, 0x5d, 0x4f, 0xc0, 0xdc, 0xde, 0x0d, 0xb5, 0x2f, 0x6d, 0x3a, 0xf7, 0x79, 0x1d, 0x11, 0x0b, 0x9d, 0x5a, 0x48, 0x2b, 0x14, 0xb3, 0x5a, 0x04, 0xe6, 0x21, 0xd8, 0x29, 0x91, 0x55, 0xa1, 0x8d, 0x68, 0xd7, 0xe5, 0x68, 0xf6, 0x64, 0xd5, 0x4d, 0xc4, 0xd2, 0xde, 0x64, 0xf8, 0xfc, 0xbe, 0xad, 0x71, 0x91, 0x6e, 0x10, 0xa4, 0x90, 0x36, 0x4d, 0x2f, 0x6a, 0xf2, 0x68, 0xa9, 0xd4, 0xfe, 0xf4, 0x84, 0xab, 0xb2, 0x0a, 0xf4, 0xab, 0x05, 0x98, 0xa7, 0xec, 0xde, 0xfb, 0x6f, 0xa5, 0x56, 0xb3, 0xd7, 0xe0, 0x38, 0xe8, 0xe0, 0xd3, 0xc6, }; static const unsigned char ecdh_brainpoolp512t1_5195_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5195_sharedsecret[] = { 0x10, 0x0c, 0x9d, 0xc6, 0xf8, 0xa3, 0xf5, 0x60, 0xb6, 0xc8, 0x2c, 0x63, 0x4a, 0xe1, 0x31, 0x93, 0x15, 0x73, 0xae, 0xcf, 0xc3, 0x39, 0xe5, 0xad, 0xcd, 0xb4, 0x1e, 0x07, 0x6c, 0x0d, 0x61, 0x94, 0xc2, 0x71, 0x2e, 0x20, 0xda, 0x81, 0x92, 0x60, 0xc7, 0xfc, 0x74, 0x7b, 0x86, 0x28, 0xfd, 0xfd, 0x28, 0xb8, 0x5e, 0x74, 0x80, 0x64, 0x50, 0x1e, 0x5e, 0xe0, 0x6d, 0x06, 0x7e, 0xfa, 0x5b, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5195 = { .name = "ecdh_brainpoolp512t1_5195", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5195_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5195_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5195_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2990 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5196 for ECDH, tcId is 2991 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5196_peerpubkey[] = { 0x34, 0xf9, 0xde, 0x74, 0xbe, 0xd5, 0x5e, 0x40, 0xdf, 0x90, 0xa5, 0xe7, 0x29, 0xc2, 0x7f, 0x1e, 0xdb, 0x29, 0xd2, 0xca, 0x0c, 0x91, 0xce, 0x2c, 0xa6, 0x12, 0xef, 0xa6, 0x25, 0xe5, 0x5d, 0x8f, 0x1b, 0x8c, 0xa4, 0xa2, 0x3a, 0xb0, 0xcd, 0x91, 0x52, 0xb8, 0x32, 0xd3, 0x1a, 0x0c, 0x8f, 0xf6, 0x7e, 0x2d, 0x0e, 0xd8, 0x8c, 0x23, 0xc3, 0x56, 0xee, 0x49, 0xb9, 0x33, 0x1f, 0x50, 0x2b, 0x54, 0x45, 0x89, 0x25, 0xa9, 0x49, 0x6c, 0x13, 0x51, 0x3e, 0xdf, 0x93, 0x9b, 0x9d, 0xd9, 0xbd, 0x26, 0x33, 0x68, 0xd5, 0xa6, 0x01, 0x37, 0x23, 0x65, 0x03, 0x16, 0x86, 0x9c, 0xce, 0xf5, 0xcb, 0xb2, 0xd7, 0x71, 0x31, 0xab, 0x2f, 0x55, 0x17, 0x1d, 0x28, 0xa7, 0x53, 0xed, 0xbe, 0x73, 0xb2, 0x01, 0xde, 0x58, 0xd1, 0xf9, 0x46, 0x25, 0xe8, 0xaf, 0x3c, 0x07, 0x8d, 0x0a, 0x6c, 0xbe, 0xf6, 0x7c, }; static const unsigned char ecdh_brainpoolp512t1_5196_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5196_sharedsecret[] = { 0x47, 0xca, 0x1b, 0x06, 0x8c, 0x55, 0xa1, 0x3c, 0x45, 0xcc, 0x08, 0xb6, 0xda, 0xe8, 0x89, 0xf6, 0xb1, 0xee, 0x00, 0xb5, 0xb9, 0x6b, 0x26, 0xff, 0xd5, 0xb6, 0xd7, 0xf0, 0x83, 0x4e, 0x80, 0xb1, 0x05, 0xc7, 0x90, 0xf0, 0x02, 0xd5, 0x37, 0xcf, 0xca, 0xaa, 0xff, 0xc2, 0xfb, 0xfb, 0xb3, 0x92, 0x20, 0xde, 0xaa, 0xa3, 0xb2, 0x95, 0xd3, 0xfa, 0x0e, 0xe9, 0x37, 0x76, 0x6c, 0x9b, 0x6d, 0x37, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5196 = { .name = "ecdh_brainpoolp512t1_5196", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5196_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5196_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5196_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2991 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5197 for ECDH, tcId is 2992 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5197_peerpubkey[] = { 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x43, 0xa5, 0x10, 0x0f, 0xea, 0x68, 0x45, 0x72, 0x5a, 0xcf, 0xe7, 0x6f, 0xe7, 0x72, 0x4c, 0x20, 0xe1, 0xc6, 0xd2, 0x0e, 0x6e, 0xac, 0x1d, 0x88, 0xaf, 0x4f, 0xc2, 0x97, 0x3d, 0x01, 0x1d, 0x67, 0xe1, 0xa5, 0x48, 0x86, 0x86, 0x14, 0x7f, 0x36, 0x34, 0x3d, 0x83, 0x7c, 0xab, 0x42, 0xb5, 0x25, 0xb7, 0x7a, 0x12, 0x8e, 0x9f, 0x3d, 0x29, 0x99, 0x83, 0xc0, 0xcd, 0x9e, 0x27, 0x44, 0xd5, 0x98, }; static const unsigned char ecdh_brainpoolp512t1_5197_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5197_sharedsecret[] = { 0x2b, 0xa6, 0x1d, 0x9b, 0x78, 0x2c, 0x3b, 0xf2, 0x32, 0x79, 0x67, 0xae, 0xa7, 0x86, 0x52, 0xbc, 0xab, 0x06, 0xed, 0xfd, 0x40, 0x19, 0x4f, 0x9f, 0x29, 0xa0, 0x50, 0xee, 0x2e, 0x7b, 0x21, 0x52, 0x66, 0xbb, 0x40, 0x12, 0x39, 0xe0, 0x93, 0x9d, 0x69, 0x60, 0xaa, 0xd9, 0x63, 0x9a, 0xb8, 0xa3, 0xe1, 0x09, 0xe6, 0x90, 0x00, 0x44, 0x79, 0x3f, 0xc7, 0x85, 0xb3, 0x65, 0x9c, 0xec, 0x84, 0x4e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5197 = { .name = "ecdh_brainpoolp512t1_5197", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5197_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5197_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5197_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2992 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5198 for ECDH, tcId is 2993 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5198_peerpubkey[] = { 0x40, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x11, 0x4d, 0xd3, 0xa8, 0xa1, 0xfd, 0xcd, 0x7a, 0x4f, 0x73, 0x23, 0x0d, 0x0c, 0xd6, 0x4e, 0x3e, 0x70, 0xe4, 0xd3, 0xcd, 0xc7, 0xf1, 0x78, 0x13, 0x22, 0x59, 0x71, 0xe5, 0xa4, 0xf1, 0x14, 0xc1, 0xac, 0x83, 0x2e, 0xe4, 0x7b, 0x3e, 0x46, 0xa0, 0x68, 0x31, 0x82, 0x3e, 0x10, 0x6a, 0xfb, 0xfd, 0x78, 0x7a, 0xb0, 0xcb, 0x24, 0xf0, 0x84, 0x31, 0xe3, 0x1d, 0x03, 0x6c, 0x42, 0xc8, 0x3b, 0xf8, }; static const unsigned char ecdh_brainpoolp512t1_5198_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5198_sharedsecret[] = { 0x03, 0x29, 0xbc, 0xaa, 0x4e, 0xf0, 0xbe, 0x64, 0x39, 0x43, 0xba, 0xee, 0xf3, 0xda, 0x0f, 0x49, 0x28, 0x07, 0xfa, 0x3b, 0x80, 0x96, 0x89, 0x81, 0x62, 0x79, 0x0e, 0xef, 0xc0, 0xe6, 0xa9, 0xae, 0x17, 0x4a, 0x2d, 0xfe, 0xeb, 0x74, 0xa8, 0x2b, 0xcf, 0xdf, 0x96, 0x2f, 0xaf, 0x7a, 0x53, 0x83, 0xf9, 0x82, 0x8e, 0x90, 0x50, 0x33, 0xc7, 0x9c, 0x83, 0xc4, 0x4d, 0xa1, 0xa7, 0x6d, 0xba, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5198 = { .name = "ecdh_brainpoolp512t1_5198", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5198_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5198_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5198_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2993 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5199 for ECDH, tcId is 2994 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5199_peerpubkey[] = { 0x40, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x3c, 0x95, 0x71, 0xb0, 0xb8, 0x9f, 0x23, 0xc9, 0x91, 0x07, 0xb1, 0xa0, 0xaf, 0x05, 0xf5, 0x63, 0x87, 0xae, 0x4c, 0x99, 0x5d, 0x46, 0x58, 0x88, 0xce, 0x76, 0xfd, 0x8c, 0x81, 0x6f, 0xfa, 0xde, 0x0f, 0xe5, 0x46, 0x3c, 0x15, 0xd3, 0xc7, 0x0b, 0xf9, 0x9b, 0x69, 0xa3, 0xfe, 0xe7, 0xe1, 0x01, 0x1a, 0x38, 0x51, 0x89, 0x9f, 0x02, 0x38, 0xc5, 0x68, 0x17, 0xca, 0xe0, 0x6e, 0xf2, 0x3e, 0xcc, }; static const unsigned char ecdh_brainpoolp512t1_5199_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5199_sharedsecret[] = { 0x51, 0x16, 0x6f, 0x09, 0x6d, 0xf5, 0x2a, 0xce, 0x94, 0x4e, 0xcd, 0x44, 0xa5, 0x17, 0x75, 0xbe, 0x90, 0x59, 0xa5, 0x73, 0xb9, 0x6f, 0xa0, 0xb8, 0x86, 0x06, 0x83, 0x02, 0xd0, 0xbc, 0xe7, 0xb6, 0x11, 0x54, 0xfa, 0x8a, 0x79, 0x87, 0xc5, 0xe4, 0x49, 0xf7, 0xed, 0x01, 0xc3, 0x48, 0x78, 0xd8, 0xc0, 0xe0, 0xf6, 0xa0, 0x39, 0x3a, 0xac, 0xc7, 0x78, 0xd6, 0x0e, 0xf9, 0x90, 0x9d, 0x02, 0xce, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5199 = { .name = "ecdh_brainpoolp512t1_5199", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5199_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5199_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5199_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2994 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5200 for ECDH, tcId is 2995 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5200_peerpubkey[] = { 0x49, 0xba, 0x9a, 0x7a, 0x28, 0xbc, 0xe1, 0x49, 0x9b, 0x99, 0xd9, 0xd0, 0xbf, 0x6f, 0x53, 0xf2, 0x09, 0xe7, 0xa8, 0x37, 0xaf, 0x24, 0x2b, 0x1c, 0x7e, 0xd8, 0x25, 0x99, 0xd5, 0xf1, 0xb6, 0xb2, 0x29, 0x1c, 0xaf, 0x32, 0xfb, 0x21, 0x9f, 0x80, 0x04, 0x41, 0xfb, 0xcd, 0xf5, 0x30, 0x15, 0x8c, 0xbb, 0x54, 0x03, 0x4c, 0x5d, 0x6e, 0xba, 0xea, 0xb8, 0x4f, 0x58, 0x7c, 0x79, 0xef, 0xf8, 0x4b, 0x46, 0xf3, 0x95, 0x12, 0x65, 0x2e, 0x7c, 0x25, 0x78, 0xd6, 0x0e, 0x48, 0x4c, 0x3f, 0xd9, 0xfa, 0x5b, 0xf4, 0x92, 0x18, 0xe6, 0x77, 0xce, 0x2d, 0x20, 0x48, 0x52, 0x7e, 0x85, 0x71, 0x05, 0x89, 0x01, 0xe5, 0xd2, 0x23, 0xae, 0xed, 0x86, 0xdd, 0x65, 0x21, 0x06, 0xe7, 0x59, 0xa9, 0x17, 0xb1, 0x44, 0x7f, 0xe1, 0x55, 0xc3, 0xf0, 0xa9, 0x66, 0x08, 0xb3, 0x8f, 0xef, 0xf3, 0x1d, 0x28, 0x5f, }; static const unsigned char ecdh_brainpoolp512t1_5200_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5200_sharedsecret[] = { 0x26, 0x9c, 0xc9, 0xd1, 0x7a, 0xb5, 0x7a, 0x85, 0xd3, 0x82, 0xc2, 0xfd, 0x67, 0x72, 0x8f, 0xc2, 0xcc, 0x2c, 0x82, 0xe2, 0x53, 0xcb, 0x8c, 0x4c, 0x6e, 0x67, 0x56, 0x70, 0x67, 0xa2, 0x37, 0x60, 0x6a, 0xf9, 0x46, 0x7a, 0x67, 0x2d, 0x5a, 0xfa, 0x4c, 0xa3, 0x83, 0xff, 0x79, 0xf7, 0xf7, 0x54, 0x39, 0x7c, 0x85, 0xee, 0x05, 0xf2, 0x46, 0x91, 0x10, 0xba, 0x20, 0xf2, 0x50, 0xe3, 0x95, 0x53, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5200 = { .name = "ecdh_brainpoolp512t1_5200", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5200_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5200_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5200_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2995 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5201 for ECDH, tcId is 2996 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5201_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x17, 0x86, 0x95, 0xb6, 0xac, 0x05, 0xf8, 0xd1, 0x87, 0xc2, 0xaf, 0x28, 0x8f, 0x71, 0x6d, 0xa9, 0xa5, 0xb3, 0xbb, 0x33, 0xe6, 0x99, 0x89, 0xa7, 0x4f, 0x0f, 0x8c, 0x05, 0xaf, 0x0f, 0x24, 0x59, 0xfc, 0x2c, 0xc4, 0xee, 0x5c, 0x85, 0x05, 0x98, 0xc9, 0xdb, 0xd8, 0x87, 0x0c, 0x2d, 0x7b, 0xde, 0x30, 0xe7, 0xcd, 0x10, 0xdd, 0x81, 0x0c, 0x1a, 0x9e, 0xa8, 0xfb, 0xa0, 0x66, 0x52, 0x56, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5201_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5201_sharedsecret[] = { 0x07, 0xec, 0x18, 0x7c, 0xe9, 0x63, 0x77, 0xcc, 0xe3, 0xf1, 0x93, 0x19, 0xad, 0x08, 0x1a, 0xb4, 0x31, 0x15, 0x94, 0xaa, 0x7d, 0x89, 0x43, 0x54, 0x85, 0x7f, 0xca, 0x87, 0xcf, 0xdd, 0x4b, 0x28, 0x68, 0x10, 0x0e, 0x61, 0x20, 0xc2, 0x2b, 0xd1, 0xf5, 0x3e, 0x09, 0x5b, 0xd1, 0xa0, 0xe6, 0x0d, 0x74, 0xe5, 0x5e, 0x23, 0xc5, 0x59, 0x0b, 0x29, 0x33, 0x62, 0xde, 0x2c, 0x35, 0x40, 0xfd, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5201 = { .name = "ecdh_brainpoolp512t1_5201", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5201_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5201_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5201_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2996 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5202 for ECDH, tcId is 2997 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5202_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0x12, 0x33, 0x9d, 0x72, 0x69, 0x83, 0xe1, 0xf5, 0xa4, 0xf6, 0x02, 0xf3, 0x71, 0x24, 0xb0, 0xf9, 0xbd, 0xbc, 0xbf, 0xb5, 0x0c, 0xc2, 0xb7, 0x4c, 0x64, 0x18, 0x44, 0x80, 0xe6, 0xab, 0x3f, 0x7a, 0x0d, 0xb8, 0x84, 0xb9, 0xfc, 0x2a, 0x1c, 0x08, 0x1b, 0x4d, 0x3f, 0x6d, 0x6f, 0x9b, 0x5b, 0x81, 0x3b, 0x7d, 0x9c, 0x72, 0x75, 0x8a, 0x2f, 0xaa, 0x55, 0xc7, 0xfd, 0x8d, 0x0a, 0x63, 0x3d, }; static const unsigned char ecdh_brainpoolp512t1_5202_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5202_sharedsecret[] = { 0x20, 0xa7, 0xfb, 0xcb, 0xe5, 0x7f, 0xf0, 0xd3, 0xc1, 0xaf, 0x10, 0xd1, 0x7f, 0x26, 0xae, 0xc0, 0x32, 0x99, 0xb5, 0xbc, 0x59, 0x4a, 0x9d, 0xdd, 0x17, 0xac, 0xd0, 0xd1, 0xee, 0xa0, 0x43, 0x2b, 0x08, 0xda, 0x94, 0x34, 0x88, 0x9c, 0xd9, 0x61, 0xc6, 0x58, 0x20, 0xf3, 0x73, 0xb5, 0x9c, 0xe2, 0x14, 0x42, 0x5a, 0x1b, 0x58, 0xa6, 0x56, 0x8e, 0xae, 0xda, 0x7b, 0xea, 0xca, 0x6a, 0x05, 0xd6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5202 = { .name = "ecdh_brainpoolp512t1_5202", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5202_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5202_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5202_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2997 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5203 for ECDH, tcId is 2998 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5203_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf1, 0x0e, 0xb2, 0x8f, 0x88, 0xdd, 0xc9, 0x62, 0xde, 0x75, 0x54, 0x2f, 0xf5, 0x78, 0xb6, 0x10, 0x4f, 0x4d, 0x71, 0x3b, 0x25, 0xba, 0xe5, 0x0d, 0x40, 0xbf, 0x91, 0x00, 0x88, 0x05, 0x60, 0x59, 0x72, 0x95, 0x2e, 0x7f, 0x2a, 0x9d, 0xf7, 0xe8, 0xe1, 0xdd, 0x14, 0xa4, 0x61, 0xd3, 0x97, 0x37, 0x79, 0xd2, 0x43, 0x83, 0xf2, 0x0b, 0x77, 0xc6, 0x04, 0xcf, 0x69, 0xf8, 0xeb, 0x5c, 0xba, 0xce, 0x9e, }; static const unsigned char ecdh_brainpoolp512t1_5203_privkey[] = { 0x5e, 0x5f, 0xb5, 0x22, 0xb1, 0x2a, 0x9b, 0x51, 0xf1, 0x78, 0xa4, 0xc1, 0xd9, 0x59, 0xc1, 0xb4, 0x6a, 0x5b, 0xd5, 0x1f, 0xce, 0x1f, 0x00, 0x3a, 0xb0, 0x7c, 0x24, 0xa2, 0x26, 0xf3, 0xcf, 0x7a, 0x43, 0x85, 0x62, 0x63, 0xc1, 0x74, 0x64, 0x81, 0xea, 0x29, 0x4c, 0x2e, 0x47, 0x65, 0x8a, 0x14, 0x39, 0x4e, 0x20, 0x90, 0x3f, 0x97, 0x2b, 0xf7, 0xe1, 0xc2, 0x9c, 0x33, 0xf2, 0xa3, 0x43, 0x4e, }; static const unsigned char ecdh_brainpoolp512t1_5203_sharedsecret[] = { 0x05, 0x8e, 0xf8, 0xe8, 0x18, 0x49, 0x37, 0xd3, 0x74, 0x24, 0xcb, 0xf0, 0x61, 0xe5, 0x54, 0x8a, 0xde, 0x07, 0xac, 0xda, 0x19, 0x5b, 0x2e, 0x5f, 0x41, 0xc8, 0x48, 0xa8, 0x00, 0x3a, 0x11, 0x82, 0x03, 0x6a, 0xe1, 0x69, 0xf0, 0xe3, 0x47, 0x09, 0x2f, 0x48, 0x34, 0x75, 0xf8, 0xf7, 0x99, 0x9d, 0x7a, 0x76, 0x2e, 0x72, 0x71, 0x1a, 0xe5, 0x4e, 0x50, 0xc1, 0x6e, 0x4d, 0x6b, 0xaf, 0x3f, 0x99, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5203 = { .name = "ecdh_brainpoolp512t1_5203", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5203_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5203_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5203_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge cases for ephemeral key, tcId is 2998 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5204 for ECDH, tcId is 2999 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5204_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0e, 0xb2, 0x8f, 0x88, 0xdd, 0xc9, 0x62, 0xde, 0x75, 0x54, 0x2f, 0xf5, 0x78, 0xb6, 0x10, 0x4f, 0x4d, 0x71, 0x3b, 0x25, 0xba, 0xe5, 0x0d, 0x40, 0xbf, 0x91, 0x00, 0x88, 0x05, 0x60, 0x59, 0x72, 0x95, 0x2e, 0x7f, 0x2a, 0x9d, 0xf7, 0xe8, 0xe1, 0xdd, 0x14, 0xa4, 0x61, 0xd3, 0x97, 0x37, 0x79, 0xd2, 0x43, 0x83, 0xf2, 0x0b, 0x77, 0xc6, 0x04, 0xcf, 0x69, 0xf8, 0xeb, 0x5c, 0xba, 0xce, 0x9e, }; static const unsigned char ecdh_brainpoolp512t1_5204_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5204_sharedsecret[] = { 0x8e, 0x09, 0xd0, 0x38, 0xef, 0x90, 0x07, 0x94, 0xa7, 0xef, 0x65, 0xe0, 0x45, 0x43, 0x01, 0xe5, 0xb7, 0xa7, 0xab, 0x06, 0xc3, 0xaa, 0xfe, 0xe5, 0x09, 0x79, 0x75, 0xf6, 0x30, 0x41, 0x91, 0x31, 0x20, 0xe6, 0x0b, 0x56, 0x0d, 0x42, 0x5e, 0x5b, 0xf3, 0x63, 0x51, 0x4a, 0x4e, 0xb1, 0xfe, 0x68, 0x19, 0xa3, 0x84, 0x7f, 0xe2, 0xfa, 0xc6, 0x97, 0x9c, 0x13, 0xe1, 0xe5, 0xff, 0x62, 0x49, 0xd3, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5204 = { .name = "ecdh_brainpoolp512t1_5204", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5204_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5204_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5204_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 2999 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5205 for ECDH, tcId is 3000 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5205_peerpubkey[] = { 0x5d, 0x47, 0xc8, 0x46, 0x52, 0xb7, 0x10, 0xdc, 0x65, 0x53, 0x77, 0xb3, 0xbf, 0xc5, 0x67, 0x1c, 0x98, 0x23, 0xf6, 0x02, 0x2f, 0xf8, 0x75, 0x86, 0x0c, 0x93, 0x93, 0xa9, 0xc1, 0xb8, 0x22, 0x4e, 0x52, 0xff, 0xe6, 0x12, 0x21, 0x28, 0x4a, 0xe6, 0xfe, 0x78, 0xe5, 0x8d, 0x0c, 0x76, 0x2a, 0x40, 0xc4, 0xac, 0x33, 0xee, 0xdc, 0x3c, 0x28, 0x49, 0x0e, 0x0e, 0x13, 0xb9, 0xe4, 0x0d, 0x62, 0xe6, 0x02, 0x8d, 0x03, 0x76, 0x53, 0xfc, 0x9b, 0x5d, 0xee, 0xeb, 0x35, 0xa5, 0xa2, 0x72, 0x5d, 0x31, 0xee, 0x1a, 0xf5, 0x7c, 0xab, 0x3a, 0xf9, 0xd7, 0x95, 0x33, 0x2f, 0x9a, 0xf9, 0xba, 0x39, 0xf4, 0x84, 0x4d, 0x25, 0x2d, 0x3b, 0xfa, 0x4c, 0xfc, 0x36, 0x2f, 0x3a, 0x68, 0x39, 0x98, 0xe2, 0x86, 0x6a, 0x7b, 0xd5, 0x61, 0xc4, 0x6f, 0x15, 0x55, 0xd4, 0x7f, 0x7a, 0xd9, 0x53, 0x5c, 0x58, 0xd5, }; static const unsigned char ecdh_brainpoolp512t1_5205_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5205_sharedsecret[] = { 0x85, 0x5e, 0xb5, 0x37, 0x55, 0xb7, 0x6b, 0x9b, 0x03, 0x22, 0xd1, 0xab, 0x8d, 0xd3, 0xf4, 0x6a, 0xab, 0x20, 0x0a, 0x3b, 0x6f, 0x1d, 0x83, 0xb5, 0xa7, 0xcf, 0xdf, 0x80, 0x66, 0x1f, 0x3b, 0xdf, 0x0c, 0xd4, 0x42, 0x0a, 0xd4, 0x4d, 0x31, 0x70, 0xbb, 0x10, 0xcb, 0xa4, 0xa8, 0x82, 0x31, 0xcb, 0x2e, 0x2c, 0x4d, 0x08, 0x8b, 0xb9, 0xe2, 0x8f, 0xc8, 0xe7, 0x2d, 0xf1, 0xf2, 0xb5, 0x08, 0x8b, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5205 = { .name = "ecdh_brainpoolp512t1_5205", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5205_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5205_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5205_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 3000 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5206 for ECDH, tcId is 3001 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5206_peerpubkey[] = { 0x2f, 0xc1, 0xcc, 0xd4, 0x55, 0xd2, 0xdb, 0x5e, 0xbf, 0xca, 0x11, 0x1e, 0xac, 0x70, 0x9e, 0xed, 0x94, 0xc2, 0xde, 0x64, 0xc2, 0xd7, 0xe9, 0x8b, 0xa8, 0xdc, 0x8f, 0x81, 0x9f, 0xee, 0x23, 0xe5, 0x1f, 0x0d, 0xf5, 0x4e, 0x31, 0x43, 0xa6, 0xf9, 0x48, 0x38, 0x00, 0xb6, 0x89, 0xd8, 0x58, 0xd0, 0xd2, 0xe2, 0xb5, 0x94, 0x24, 0xf6, 0x4c, 0xb9, 0x57, 0xa9, 0x7e, 0x7a, 0xc3, 0x6b, 0x55, 0xea, 0x3a, 0x43, 0xe6, 0xba, 0x86, 0x43, 0x5a, 0xf0, 0x39, 0x12, 0x56, 0x31, 0xf0, 0xf1, 0xa9, 0xcd, 0xf9, 0xf7, 0x61, 0xc0, 0x59, 0x54, 0x85, 0xb3, 0xa7, 0x6f, 0x4b, 0x5c, 0xd9, 0x3d, 0x08, 0xfa, 0x67, 0xca, 0x6e, 0x84, 0xf8, 0x50, 0x80, 0x20, 0x82, 0x01, 0x89, 0x7f, 0x69, 0x59, 0x4c, 0xfa, 0x61, 0x5c, 0x46, 0xa5, 0xb2, 0x87, 0xcb, 0x57, 0x74, 0x77, 0x67, 0x3f, 0x16, 0xbd, 0x87, 0x11, }; static const unsigned char ecdh_brainpoolp512t1_5206_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5206_sharedsecret[] = { 0x70, 0x1d, 0x30, 0x01, 0xab, 0xf5, 0x11, 0xf6, 0xc2, 0xc1, 0xbc, 0x0e, 0x65, 0xc6, 0x5d, 0x0f, 0x01, 0xb0, 0xfd, 0x58, 0xf0, 0xa0, 0x22, 0xcf, 0x86, 0x9a, 0x1e, 0x30, 0x97, 0x10, 0x07, 0xca, 0x60, 0x52, 0xed, 0xa8, 0x31, 0x0b, 0x11, 0x18, 0xd8, 0x8d, 0x02, 0xca, 0x86, 0x1d, 0xc9, 0x0c, 0xdf, 0x0f, 0x72, 0x0b, 0x30, 0xc6, 0x89, 0xb3, 0x24, 0x16, 0x57, 0x02, 0x0c, 0x2c, 0xca, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5206 = { .name = "ecdh_brainpoolp512t1_5206", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5206_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5206_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5206_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3001 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5207 for ECDH, tcId is 3002 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5207_peerpubkey[] = { 0x32, 0x3e, 0x16, 0x57, 0x01, 0xb9, 0x56, 0x83, 0x96, 0x8d, 0xe9, 0xfe, 0xce, 0x4f, 0x8c, 0x61, 0xe4, 0x03, 0x41, 0xbf, 0xa4, 0x61, 0x0b, 0x0c, 0x79, 0xc3, 0x78, 0x23, 0xc8, 0x76, 0xf9, 0x4d, 0x8a, 0xfe, 0xf3, 0x45, 0xea, 0x05, 0x9d, 0xee, 0x89, 0x50, 0x82, 0x5c, 0x8b, 0x93, 0x75, 0xb0, 0xf9, 0xe4, 0x96, 0xae, 0x51, 0xe5, 0x1d, 0x3b, 0xab, 0xb2, 0x7e, 0xcb, 0x14, 0x15, 0x5b, 0x2a, 0x7c, 0x45, 0x6d, 0xb5, 0x94, 0xe7, 0xa8, 0x0d, 0x4f, 0xf4, 0xdd, 0x84, 0x5d, 0x3c, 0xaf, 0x9c, 0x43, 0xc1, 0x43, 0xd4, 0x76, 0xca, 0x6f, 0xe2, 0x8a, 0x5a, 0x03, 0x62, 0x68, 0x4b, 0xe9, 0xdf, 0x38, 0x40, 0xce, 0xbc, 0x9a, 0x2c, 0xda, 0x83, 0x73, 0x59, 0xa6, 0x09, 0xea, 0x1d, 0xf3, 0x74, 0xc9, 0x6c, 0xce, 0x40, 0x75, 0xda, 0x1e, 0x83, 0xdd, 0x54, 0x12, 0xfc, 0x10, 0x44, 0x09, 0x48, }; static const unsigned char ecdh_brainpoolp512t1_5207_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5207_sharedsecret[] = { 0x98, 0xf9, 0x3e, 0x52, 0x95, 0x6c, 0xab, 0xa9, 0xde, 0xf4, 0x75, 0x55, 0x2a, 0x54, 0x83, 0x65, 0x8b, 0xd4, 0xb6, 0x3c, 0xc1, 0xcb, 0xa7, 0xf3, 0x5e, 0x04, 0xab, 0xf0, 0x93, 0x3f, 0xc8, 0x51, 0x18, 0x5d, 0xcf, 0xb7, 0xd2, 0xcc, 0xdf, 0x9f, 0x96, 0xf6, 0x72, 0x9a, 0x92, 0xdb, 0x72, 0x1c, 0x90, 0xa2, 0x96, 0x88, 0x1e, 0x4c, 0x3c, 0x5a, 0x3e, 0xb2, 0x3f, 0x2a, 0xad, 0x0b, 0x9f, 0x32, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5207 = { .name = "ecdh_brainpoolp512t1_5207", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5207_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5207_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5207_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3002 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5208 for ECDH, tcId is 3003 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5208_peerpubkey[] = { 0x2f, 0x94, 0x6a, 0xbf, 0xf7, 0x64, 0xf9, 0xc3, 0xcc, 0x5d, 0xce, 0xba, 0xf8, 0x8f, 0x86, 0xd0, 0xd2, 0x2b, 0x61, 0x9e, 0x17, 0xb6, 0x85, 0xcc, 0xa1, 0x1a, 0x74, 0xc1, 0xe8, 0xed, 0x00, 0x45, 0xf2, 0x8b, 0xa5, 0x4a, 0xed, 0x02, 0x87, 0xba, 0x0c, 0x99, 0x56, 0xda, 0xaf, 0x63, 0x14, 0xdd, 0x54, 0xf4, 0xd5, 0xaa, 0x1f, 0x52, 0xc9, 0x39, 0x97, 0x02, 0x81, 0x11, 0xbb, 0x01, 0x25, 0x85, 0x1d, 0x28, 0xc7, 0x2b, 0xf9, 0xfb, 0xed, 0x43, 0x49, 0xce, 0x88, 0xb7, 0xe2, 0x63, 0x00, 0xeb, 0x3b, 0x4f, 0x3a, 0x5a, 0x61, 0x22, 0x9e, 0xba, 0x25, 0x62, 0x22, 0x34, 0x98, 0x89, 0xfc, 0x00, 0x94, 0x4a, 0x32, 0x75, 0x28, 0x0c, 0x0b, 0x66, 0x49, 0xe7, 0x0c, 0x45, 0xa8, 0x20, 0xad, 0xea, 0x15, 0x7a, 0xe7, 0x65, 0x4c, 0xfd, 0x89, 0xb2, 0xac, 0x8d, 0xed, 0xfe, 0xc2, 0x16, 0xa7, 0xb7, }; static const unsigned char ecdh_brainpoolp512t1_5208_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5208_sharedsecret[] = { 0xa9, 0xe0, 0xd4, 0xa0, 0xd7, 0xbf, 0xef, 0x24, 0xc8, 0x48, 0xa3, 0x34, 0xce, 0x02, 0x69, 0xca, 0xc0, 0xd6, 0x33, 0xd0, 0x9b, 0x60, 0xea, 0x51, 0x72, 0xc2, 0xe0, 0x4c, 0xc5, 0x12, 0xc7, 0x28, 0x84, 0x2e, 0xce, 0xde, 0xf3, 0x29, 0x67, 0x5d, 0x81, 0x49, 0x1b, 0x09, 0xf1, 0xfe, 0xe2, 0x0b, 0x3c, 0xb0, 0x7c, 0xff, 0xb4, 0xf4, 0x07, 0xd5, 0xd0, 0xf0, 0x88, 0xf9, 0x35, 0x09, 0x1a, 0x66, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5208 = { .name = "ecdh_brainpoolp512t1_5208", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5208_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5208_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5208_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3003 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5209 for ECDH, tcId is 3004 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5209_peerpubkey[] = { 0x5d, 0x60, 0x87, 0x12, 0xb8, 0x84, 0x78, 0xc4, 0x5d, 0x6e, 0x93, 0x32, 0x23, 0xda, 0xb9, 0xc0, 0x8c, 0x91, 0x63, 0x32, 0xe7, 0x2d, 0xa7, 0xa5, 0x23, 0xa3, 0xd2, 0x0d, 0x6d, 0x45, 0xb2, 0x0f, 0x69, 0xaf, 0x77, 0xe0, 0x39, 0xdf, 0x07, 0xc4, 0x07, 0xa4, 0x0b, 0x1e, 0x7e, 0x63, 0xc8, 0xfa, 0xb2, 0x29, 0xd8, 0xdd, 0xff, 0xc4, 0xd0, 0xfc, 0x2f, 0x18, 0x80, 0x6f, 0xa3, 0x5f, 0xb3, 0xc0, 0x6c, 0x42, 0x47, 0x25, 0x92, 0xe6, 0xa6, 0x31, 0x4a, 0x56, 0x35, 0xd6, 0x1b, 0x7b, 0x78, 0xe4, 0x2a, 0x03, 0x6b, 0x73, 0x37, 0x92, 0x34, 0xc0, 0x47, 0xae, 0xd6, 0xcc, 0x60, 0x4c, 0x83, 0xe2, 0x1a, 0x52, 0xef, 0xd8, 0x99, 0x17, 0xbe, 0x28, 0x16, 0x79, 0x0b, 0x6f, 0x53, 0x8e, 0xaf, 0xea, 0xaf, 0x82, 0x6c, 0xcf, 0x01, 0xbd, 0xcd, 0x8b, 0x73, 0xfb, 0x07, 0xc0, 0x16, 0x20, 0x7a, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5209_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5209_sharedsecret[] = { 0x04, 0x57, 0x1a, 0x7c, 0x82, 0xa1, 0x29, 0x55, 0x8e, 0x2c, 0x3d, 0xc2, 0xfe, 0x8c, 0xb6, 0x3b, 0x2b, 0xdd, 0x30, 0xe1, 0x47, 0xa5, 0xd5, 0xc1, 0xe8, 0x34, 0x94, 0x88, 0xcd, 0x4d, 0xb0, 0xf1, 0x4f, 0x07, 0x48, 0xef, 0x9f, 0x2b, 0x5e, 0x32, 0xf7, 0x58, 0x57, 0x1c, 0x83, 0x91, 0x26, 0xf7, 0xb2, 0xbf, 0x96, 0xd0, 0xa6, 0x4e, 0xdc, 0x55, 0x07, 0x75, 0x11, 0xc8, 0x34, 0x1c, 0x26, 0x68, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5209 = { .name = "ecdh_brainpoolp512t1_5209", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5209_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5209_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5209_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3004 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5210 for ECDH, tcId is 3005 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5210_peerpubkey[] = { 0x91, 0xfa, 0x0a, 0x21, 0xf5, 0xf5, 0x34, 0xb8, 0x9e, 0xa5, 0xf8, 0x25, 0xfb, 0x24, 0xae, 0xf3, 0xb4, 0xac, 0x54, 0xb3, 0x54, 0x55, 0x81, 0x9b, 0x6e, 0x8c, 0xe0, 0xa1, 0xfc, 0xfc, 0xe6, 0xff, 0xd2, 0xce, 0x41, 0xfc, 0x01, 0x12, 0xcd, 0xe7, 0x6d, 0xa7, 0xe9, 0x54, 0x2f, 0x96, 0xa4, 0xbe, 0xc3, 0x09, 0xb3, 0x96, 0x69, 0x14, 0x32, 0xf4, 0xf8, 0x8f, 0x5b, 0x54, 0x57, 0x3e, 0x91, 0xf7, 0x57, 0x1f, 0x5c, 0x81, 0x76, 0x14, 0x5c, 0x04, 0x20, 0x1d, 0x0f, 0x61, 0xa2, 0x9c, 0x2d, 0xee, 0xbc, 0xb7, 0x38, 0x52, 0xbc, 0x77, 0xa9, 0x0a, 0x2f, 0x5e, 0x3c, 0xc6, 0xeb, 0xd9, 0xed, 0x85, 0xfc, 0xa3, 0x10, 0x05, 0x6f, 0xdf, 0x9b, 0xa7, 0x64, 0x1f, 0xc5, 0x0d, 0xcc, 0x21, 0xd9, 0xa0, 0xae, 0x64, 0x74, 0xe4, 0x7b, 0x75, 0x31, 0x79, 0x24, 0x64, 0x8a, 0xeb, 0x23, 0x84, 0x15, 0x6b, }; static const unsigned char ecdh_brainpoolp512t1_5210_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5210_sharedsecret[] = { 0x1b, 0xbb, 0x34, 0x21, 0xaa, 0x8f, 0x4e, 0xd8, 0x90, 0x79, 0xbd, 0x45, 0x97, 0xb9, 0x49, 0xd0, 0x7a, 0x05, 0x80, 0xaf, 0x92, 0x5e, 0x6d, 0xe4, 0x1e, 0x65, 0xd2, 0xef, 0xdf, 0x28, 0x0b, 0x50, 0xe6, 0xb6, 0x86, 0xcf, 0x94, 0x04, 0xe5, 0xad, 0x02, 0xb3, 0xcc, 0xb8, 0x5b, 0x02, 0xd6, 0x8d, 0x72, 0xf5, 0xea, 0x0d, 0xe9, 0xd8, 0x6c, 0x24, 0x9d, 0xa4, 0x6c, 0xd5, 0x79, 0x0d, 0x17, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5210 = { .name = "ecdh_brainpoolp512t1_5210", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5210_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5210_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5210_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3005 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5211 for ECDH, tcId is 3006 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5211_peerpubkey[] = { 0x9b, 0xcd, 0x88, 0x77, 0x11, 0x14, 0x50, 0xeb, 0x84, 0x68, 0x6b, 0x70, 0x8c, 0x3a, 0x2c, 0x2a, 0x27, 0x2f, 0xda, 0x4f, 0x1a, 0x89, 0xc6, 0xbd, 0xee, 0x7e, 0x37, 0xb7, 0x67, 0x58, 0xd9, 0x38, 0xcd, 0xed, 0x3b, 0xae, 0x93, 0x28, 0xf4, 0xe9, 0x73, 0x3b, 0x7d, 0x77, 0x37, 0x75, 0x1d, 0x72, 0xaa, 0xd8, 0xd2, 0x2d, 0x31, 0xb6, 0x3a, 0x80, 0x74, 0x20, 0x7c, 0x4b, 0xcf, 0xc6, 0x92, 0x17, 0x00, 0xa8, 0xde, 0x00, 0xce, 0x7d, 0xc3, 0x64, 0xab, 0x1f, 0x1f, 0x86, 0xd1, 0xc3, 0xaa, 0x2f, 0x79, 0x78, 0xfc, 0x5e, 0xe9, 0x4b, 0xa4, 0x3e, 0xbf, 0x48, 0x46, 0x0b, 0x43, 0x79, 0x87, 0x6c, 0x4a, 0x77, 0x88, 0x30, 0x83, 0x8e, 0x0f, 0xfb, 0x1c, 0x6e, 0xbc, 0xfb, 0xf1, 0x1a, 0x77, 0x29, 0xf2, 0x9f, 0xac, 0xea, 0xd9, 0x01, 0x48, 0x2d, 0x3e, 0x35, 0x5a, 0x7d, 0x47, 0xd8, 0x06, 0x22, }; static const unsigned char ecdh_brainpoolp512t1_5211_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5211_sharedsecret[] = { 0x77, 0x3a, 0x09, 0x0a, 0x87, 0x41, 0x32, 0x7d, 0xdc, 0x2f, 0x5d, 0xa6, 0x0b, 0x99, 0x89, 0x10, 0xa4, 0xef, 0x51, 0xe0, 0x0c, 0x9e, 0xc7, 0x33, 0x9d, 0x81, 0x9b, 0xf2, 0x93, 0x3c, 0xc5, 0x43, 0x13, 0xcb, 0xe0, 0x08, 0x18, 0x52, 0x8d, 0xc3, 0xa8, 0x16, 0x37, 0xe6, 0x40, 0x04, 0x33, 0xd5, 0x50, 0x98, 0xde, 0xe7, 0xcf, 0x96, 0x99, 0x8a, 0xdd, 0xea, 0x67, 0x14, 0x97, 0x66, 0xd5, 0x91, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5211 = { .name = "ecdh_brainpoolp512t1_5211", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5211_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5211_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5211_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3006 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5212 for ECDH, tcId is 3007 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5212_peerpubkey[] = { 0x12, 0x9a, 0xe4, 0x75, 0x67, 0x24, 0x45, 0xc0, 0x05, 0x26, 0x01, 0x93, 0x65, 0x66, 0xe2, 0x4a, 0x8a, 0xe0, 0xd4, 0x9f, 0x82, 0x2a, 0x59, 0x0f, 0x21, 0xe9, 0x6b, 0x08, 0xf6, 0xc7, 0xa7, 0xcc, 0x86, 0x7b, 0x39, 0x15, 0xd6, 0x98, 0x8f, 0xc6, 0x80, 0xcd, 0x0a, 0xb9, 0xa1, 0x05, 0xa6, 0x51, 0x05, 0x25, 0xc7, 0xe1, 0x52, 0xc8, 0x2d, 0x14, 0x20, 0x6f, 0x9c, 0xd8, 0xe5, 0x5e, 0x5c, 0xd5, 0x07, 0x19, 0x95, 0x78, 0xc7, 0x64, 0xb9, 0x7d, 0x06, 0xba, 0x20, 0x92, 0xdc, 0x43, 0xee, 0xfb, 0xdf, 0x91, 0x0f, 0x48, 0x25, 0xfb, 0x27, 0x96, 0x91, 0xd2, 0xd0, 0x31, 0x2c, 0x32, 0xb6, 0x18, 0x6d, 0xc0, 0x23, 0x41, 0xf2, 0xe2, 0x82, 0x5b, 0x71, 0xe5, 0x20, 0x05, 0x06, 0x5d, 0x8a, 0xa1, 0x16, 0xe1, 0x5e, 0x71, 0x87, 0xef, 0x3d, 0xc5, 0xc5, 0xa3, 0xbe, 0x69, 0x07, 0xe9, 0x03, 0x32, }; static const unsigned char ecdh_brainpoolp512t1_5212_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5212_sharedsecret[] = { 0x43, 0x78, 0xc4, 0xd8, 0x6b, 0x14, 0x14, 0xfc, 0x31, 0xfa, 0x8d, 0xc2, 0x4f, 0x73, 0xcf, 0x29, 0xcf, 0x12, 0xab, 0x2d, 0x5f, 0x43, 0x04, 0xf3, 0xb7, 0x96, 0xd6, 0x65, 0xac, 0x3b, 0xee, 0x85, 0x2e, 0x5c, 0xee, 0x47, 0xfd, 0xbc, 0xdc, 0xb4, 0x32, 0x6a, 0x2d, 0x9e, 0x11, 0xb4, 0x3d, 0x91, 0xd8, 0xac, 0x05, 0xc3, 0xc7, 0xc4, 0x41, 0x93, 0x4a, 0x19, 0x4e, 0xb5, 0x05, 0x9b, 0x9a, 0x6c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5212 = { .name = "ecdh_brainpoolp512t1_5212", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5212_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5212_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5212_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3007 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5213 for ECDH, tcId is 3008 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5213_peerpubkey[] = { 0x41, 0x3e, 0xc4, 0xa7, 0x77, 0xa6, 0x26, 0xa1, 0xe1, 0xe0, 0xe4, 0x44, 0x40, 0xfc, 0xf0, 0xfc, 0x61, 0xfc, 0xad, 0x9c, 0xd4, 0xe3, 0xca, 0x0a, 0xd1, 0xd8, 0x4c, 0x39, 0xed, 0x10, 0xf1, 0x2e, 0xc0, 0x01, 0x90, 0xed, 0xc0, 0x10, 0x5b, 0xd5, 0x79, 0x28, 0xe3, 0xf4, 0x2b, 0x6f, 0xed, 0x1e, 0x40, 0x6f, 0xd7, 0x97, 0x5e, 0x05, 0xf8, 0xd3, 0x4c, 0x4b, 0xe4, 0xc1, 0x14, 0xf4, 0x02, 0xd2, 0x1f, 0x06, 0xfc, 0x89, 0x9d, 0x7c, 0x01, 0x84, 0xa8, 0x32, 0x7a, 0xa4, 0x6f, 0x5f, 0xa4, 0x44, 0x63, 0x04, 0xe3, 0x73, 0x1b, 0x41, 0xb1, 0x5d, 0x5d, 0x3a, 0x95, 0x98, 0x13, 0x6f, 0xb6, 0xde, 0x66, 0xf4, 0xa9, 0xd8, 0xff, 0x40, 0x49, 0xc4, 0xd9, 0x7a, 0xdd, 0xac, 0x18, 0x7a, 0x3b, 0x48, 0x7a, 0x7e, 0x4e, 0xb5, 0xb1, 0x0e, 0x7c, 0xc8, 0x27, 0xda, 0xf6, 0x8e, 0x59, 0xae, 0xea, 0xb1, }; static const unsigned char ecdh_brainpoolp512t1_5213_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5213_sharedsecret[] = { 0x33, 0x94, 0x3f, 0xd2, 0x8e, 0x6b, 0x42, 0x5b, 0x2d, 0x59, 0x89, 0xf3, 0x32, 0xc7, 0xd5, 0xd6, 0x34, 0xd0, 0xd4, 0xd8, 0xae, 0x93, 0xc6, 0xd6, 0xda, 0x62, 0x28, 0x5e, 0x47, 0x9f, 0x22, 0x0f, 0x67, 0x4b, 0x10, 0x3b, 0x3d, 0x9b, 0xd4, 0x8c, 0xfe, 0xc3, 0xd9, 0xd8, 0x05, 0xbf, 0x60, 0x92, 0xd2, 0xad, 0x7b, 0x16, 0xaf, 0x1e, 0x10, 0xd9, 0x93, 0xdd, 0x03, 0xa7, 0x97, 0x4f, 0xaf, 0x2d, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5213 = { .name = "ecdh_brainpoolp512t1_5213", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5213_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5213_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5213_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3008 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5214 for ECDH, tcId is 3009 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5214_peerpubkey[] = { 0x1f, 0xd0, 0x04, 0x5a, 0xec, 0xf2, 0x8d, 0x1d, 0xe9, 0x07, 0xb4, 0x1f, 0x6a, 0x65, 0x10, 0x95, 0xcd, 0x21, 0xef, 0xec, 0x88, 0x75, 0xa3, 0x52, 0x6c, 0xcd, 0x83, 0x58, 0xf6, 0xe7, 0x69, 0x5c, 0x25, 0x76, 0x80, 0xd2, 0x26, 0xe0, 0x75, 0x14, 0xb1, 0x94, 0xf2, 0xc0, 0xac, 0x24, 0x7f, 0x92, 0x2b, 0x40, 0xbc, 0xbc, 0xa9, 0xdb, 0xf7, 0x45, 0x70, 0x83, 0x22, 0x2c, 0x02, 0x5c, 0x4d, 0xa4, 0x76, 0x4e, 0x60, 0x0c, 0x76, 0xd8, 0x85, 0xb4, 0xb8, 0xe5, 0xab, 0x1e, 0xab, 0xea, 0x6a, 0x5d, 0x6e, 0xbc, 0xb6, 0xc0, 0x78, 0x75, 0xf8, 0x87, 0xb0, 0x74, 0x7a, 0xd5, 0xdb, 0xe4, 0xc1, 0xdb, 0x34, 0x9d, 0x92, 0xba, 0x41, 0xe3, 0x71, 0x93, 0xad, 0xfd, 0xa4, 0x95, 0xf2, 0x25, 0x68, 0x55, 0x8b, 0x35, 0x22, 0x38, 0x80, 0x98, 0x08, 0x38, 0xe6, 0xe9, 0xc7, 0x2b, 0x9f, 0x66, 0xcf, 0xeb, }; static const unsigned char ecdh_brainpoolp512t1_5214_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5214_sharedsecret[] = { 0x2a, 0xf9, 0x1e, 0x39, 0xc7, 0x2f, 0x56, 0x04, 0xd8, 0x26, 0x7b, 0xc1, 0xd8, 0x9c, 0x0f, 0xe6, 0xfd, 0x38, 0x60, 0xbb, 0xc3, 0x3d, 0x86, 0x85, 0xe1, 0xba, 0x6a, 0x50, 0xf1, 0x76, 0xb8, 0x6b, 0x13, 0xd6, 0xd5, 0xf4, 0x5d, 0xdd, 0xb7, 0x8a, 0x1f, 0x62, 0x21, 0xc4, 0xb6, 0xc4, 0xf0, 0x8a, 0xf7, 0x9c, 0x0b, 0x1b, 0xf7, 0x18, 0x4a, 0x34, 0xf1, 0x8f, 0x28, 0x9b, 0x25, 0x06, 0x6c, 0x1a, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5214 = { .name = "ecdh_brainpoolp512t1_5214", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5214_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5214_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5214_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3009 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5215 for ECDH, tcId is 3010 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5215_peerpubkey[] = { 0x20, 0xcc, 0x21, 0xea, 0xd2, 0x29, 0xb0, 0xf2, 0xc4, 0x46, 0x39, 0x9c, 0x7c, 0xe1, 0x8e, 0x94, 0xf3, 0x41, 0xdb, 0x85, 0x98, 0xab, 0x06, 0xa0, 0xdc, 0x2c, 0x81, 0x11, 0xf0, 0xa9, 0x65, 0x11, 0x83, 0x31, 0x51, 0xb1, 0x0f, 0xe2, 0x59, 0x2d, 0xbb, 0x0e, 0x2f, 0xc4, 0x98, 0x06, 0xc0, 0x1c, 0x39, 0x5b, 0xb9, 0x7d, 0xf5, 0x1a, 0xc0, 0xae, 0x05, 0xdc, 0x31, 0x92, 0x70, 0x99, 0x58, 0xf2, 0x65, 0x01, 0x14, 0x12, 0xec, 0x30, 0x56, 0xa1, 0xf7, 0xcd, 0xa0, 0x83, 0x46, 0xf7, 0x70, 0xce, 0x68, 0x53, 0x15, 0xd2, 0x68, 0x25, 0x74, 0xd1, 0x22, 0x43, 0x4b, 0x54, 0xf4, 0x7d, 0x35, 0x0a, 0x6f, 0x7d, 0x2a, 0x22, 0xd5, 0xc1, 0x5b, 0xf5, 0xd5, 0x46, 0x0a, 0x57, 0x4c, 0x2b, 0x05, 0xed, 0x9e, 0x17, 0x0c, 0xba, 0x5c, 0x4f, 0x8a, 0xc0, 0xa9, 0x8e, 0x0f, 0x84, 0xa8, 0xab, 0x25, 0xf8, }; static const unsigned char ecdh_brainpoolp512t1_5215_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5215_sharedsecret[] = { 0x56, 0x0e, 0x34, 0x1a, 0x72, 0x50, 0x13, 0x2a, 0xec, 0x0c, 0xb3, 0xf4, 0x3c, 0xfd, 0xa9, 0x28, 0x9f, 0x3f, 0x86, 0xfb, 0xfe, 0xef, 0xce, 0x99, 0x03, 0x64, 0xb5, 0xd6, 0x8e, 0x6a, 0x3e, 0x2e, 0x82, 0x02, 0x61, 0x0a, 0xca, 0xcd, 0x96, 0x3e, 0x84, 0x42, 0x01, 0x3c, 0xa4, 0x5c, 0xa1, 0x6b, 0x43, 0x96, 0x77, 0x16, 0xd7, 0x99, 0x9b, 0xf7, 0xee, 0x9f, 0x7a, 0x48, 0xb5, 0xbf, 0x40, 0xb6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5215 = { .name = "ecdh_brainpoolp512t1_5215", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5215_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5215_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5215_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3010 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5216 for ECDH, tcId is 3011 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5216_peerpubkey[] = { 0x55, 0xb8, 0x7e, 0x74, 0x4d, 0x5b, 0x07, 0x00, 0x47, 0x57, 0x97, 0x2d, 0x81, 0x99, 0x4a, 0x1c, 0x23, 0xd9, 0x97, 0x29, 0xe0, 0xbd, 0x76, 0xdf, 0x63, 0x78, 0xbd, 0x5e, 0xfe, 0x14, 0x3d, 0x4e, 0x6f, 0xb2, 0xae, 0x42, 0xc8, 0x08, 0x0b, 0x5d, 0xd5, 0x59, 0xb2, 0xf7, 0x8c, 0xe0, 0x69, 0x05, 0xa0, 0x71, 0xcd, 0x02, 0xed, 0xd3, 0xf4, 0xa6, 0x86, 0xe5, 0x61, 0x76, 0x3b, 0x31, 0xc3, 0x68, 0x58, 0xa9, 0xc3, 0xb3, 0xac, 0xbf, 0xce, 0x45, 0xb4, 0x6a, 0x10, 0x02, 0x93, 0xaf, 0x2d, 0x28, 0x06, 0xd8, 0xec, 0x73, 0xb0, 0xb2, 0xce, 0x6d, 0x08, 0x75, 0x05, 0x08, 0x2b, 0xa5, 0x36, 0x65, 0x79, 0x86, 0xd6, 0xf5, 0xc2, 0xf0, 0x32, 0x08, 0xcd, 0xdb, 0x45, 0xf0, 0x8f, 0xf4, 0x1e, 0x7b, 0xf3, 0xcf, 0x1d, 0xd3, 0xcc, 0x7e, 0x09, 0xd4, 0x34, 0x5c, 0xdb, 0x2f, 0x6c, 0x55, 0x93, 0x0e, }; static const unsigned char ecdh_brainpoolp512t1_5216_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5216_sharedsecret[] = { 0x5a, 0x1e, 0x10, 0x05, 0x44, 0x57, 0xb5, 0xb7, 0x2d, 0xf4, 0x07, 0x8d, 0xc6, 0xfd, 0xfa, 0x4a, 0xe9, 0xe6, 0x2c, 0x6a, 0x2b, 0x8b, 0x7e, 0xb9, 0xdb, 0x7f, 0x54, 0x09, 0x9c, 0xd0, 0xb3, 0x67, 0xaa, 0xfc, 0xcc, 0xd3, 0x52, 0x15, 0x93, 0x5e, 0x72, 0x20, 0x1f, 0xb2, 0x29, 0x2a, 0x75, 0x6e, 0xd0, 0x92, 0x97, 0x97, 0x70, 0xdd, 0x70, 0x39, 0x5c, 0x58, 0xbb, 0x92, 0x94, 0x40, 0x49, 0x2c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5216 = { .name = "ecdh_brainpoolp512t1_5216", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5216_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5216_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5216_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3011 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5217 for ECDH, tcId is 3012 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5217_peerpubkey[] = { 0x79, 0xbd, 0xd2, 0x13, 0x8f, 0x84, 0x08, 0xad, 0x61, 0xa9, 0x24, 0x56, 0x20, 0x9e, 0x41, 0xfb, 0x54, 0x73, 0xaa, 0x94, 0x4d, 0xc1, 0x56, 0x11, 0x9f, 0x25, 0xa0, 0x4d, 0x6a, 0xd0, 0xf3, 0x61, 0xc5, 0x82, 0x14, 0xc4, 0xad, 0xb4, 0xe3, 0xc8, 0xdf, 0xc7, 0xc0, 0xa5, 0x67, 0xff, 0x5f, 0xb6, 0xf8, 0x04, 0xf4, 0xfd, 0x54, 0x81, 0xcc, 0x86, 0xd0, 0xd0, 0xd2, 0x70, 0x1a, 0x99, 0xf2, 0x48, 0x90, 0x0e, 0xd0, 0xc6, 0xb0, 0xa6, 0xca, 0x98, 0x06, 0xeb, 0x09, 0xa1, 0x86, 0x93, 0x36, 0xcf, 0x26, 0x30, 0xe5, 0x37, 0x81, 0xca, 0x9e, 0x31, 0x36, 0x99, 0x06, 0x31, 0x7f, 0xee, 0x02, 0x4f, 0x24, 0x93, 0x46, 0x52, 0xf9, 0x3a, 0x84, 0xca, 0x1c, 0x16, 0x74, 0x21, 0x34, 0xbc, 0x8e, 0x78, 0xd5, 0x59, 0x81, 0x39, 0xeb, 0x06, 0xc1, 0x5f, 0x86, 0x83, 0xd3, 0xe9, 0x46, 0xad, 0x28, 0x77, }; static const unsigned char ecdh_brainpoolp512t1_5217_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5217_sharedsecret[] = { 0x32, 0x6e, 0xea, 0xe4, 0x3c, 0x48, 0xa9, 0x3b, 0xaf, 0x08, 0xd0, 0xdd, 0xe4, 0x2e, 0x5f, 0x43, 0x86, 0x96, 0xb0, 0x31, 0x21, 0xd0, 0xfc, 0xbd, 0xec, 0x93, 0x41, 0x5e, 0xc3, 0x4f, 0x80, 0x6c, 0xf1, 0x20, 0xd9, 0xdd, 0x90, 0x9b, 0x7f, 0xf6, 0x50, 0xba, 0xdf, 0xce, 0x88, 0x81, 0x60, 0x6b, 0xc5, 0xdc, 0xe6, 0xea, 0x15, 0x18, 0x3e, 0xf1, 0xa2, 0x13, 0xf2, 0x89, 0x68, 0x87, 0x6b, 0xa7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5217 = { .name = "ecdh_brainpoolp512t1_5217", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5217_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5217_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5217_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3012 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5218 for ECDH, tcId is 3013 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5218_peerpubkey[] = { 0x99, 0xc2, 0x05, 0x7e, 0x84, 0xd0, 0x4e, 0x3b, 0x75, 0xba, 0x46, 0x82, 0x17, 0x1d, 0xe7, 0xc8, 0x45, 0x24, 0x89, 0x4e, 0x08, 0x95, 0xaf, 0xeb, 0x0a, 0x44, 0xb1, 0x77, 0xe1, 0x89, 0x37, 0x2e, 0xb8, 0x06, 0xe8, 0x90, 0x40, 0x0f, 0x8c, 0xe0, 0x42, 0xe4, 0xed, 0x10, 0xe1, 0xe0, 0x21, 0x5a, 0x27, 0xd8, 0x32, 0xd7, 0x4b, 0xc7, 0xa4, 0xbf, 0x0d, 0xfc, 0x0b, 0x3c, 0xe7, 0x4a, 0xb2, 0xe7, 0x32, 0x96, 0x4f, 0x2c, 0x51, 0x14, 0x16, 0xd1, 0x93, 0x08, 0x01, 0xbe, 0x78, 0x20, 0xfd, 0x3b, 0x42, 0x41, 0x1b, 0xcd, 0xdc, 0xb5, 0xfb, 0xa3, 0xff, 0xb8, 0xdc, 0xd5, 0xcb, 0x4d, 0xe6, 0xde, 0xb9, 0xc0, 0x3e, 0x0b, 0x02, 0xec, 0xd6, 0x22, 0x57, 0x8e, 0x80, 0x4c, 0xea, 0x5f, 0x74, 0xee, 0x1c, 0xb7, 0xb0, 0x25, 0xe4, 0x5a, 0x09, 0x21, 0x92, 0xee, 0x73, 0x92, 0x3a, 0x26, 0x1f, 0xef, }; static const unsigned char ecdh_brainpoolp512t1_5218_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5218_sharedsecret[] = { 0x4d, 0x44, 0x5e, 0x14, 0x73, 0x13, 0xbf, 0xc1, 0xaf, 0x83, 0xee, 0xc1, 0x1f, 0xfe, 0x79, 0x36, 0x45, 0xa8, 0xbe, 0xa5, 0x92, 0x5e, 0x8f, 0x62, 0x58, 0x9e, 0xc3, 0x87, 0xad, 0xf5, 0x22, 0x99, 0x66, 0xdf, 0xa1, 0xb8, 0x6a, 0x64, 0x98, 0xf0, 0x1d, 0x2a, 0xb8, 0x1f, 0x6b, 0x9c, 0x14, 0x82, 0xbc, 0x8a, 0xa8, 0x83, 0x8a, 0x5c, 0xdf, 0x27, 0x3e, 0xae, 0xb9, 0xea, 0x9e, 0x55, 0x2e, 0x8f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5218 = { .name = "ecdh_brainpoolp512t1_5218", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5218_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5218_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5218_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3013 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5219 for ECDH, tcId is 3014 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5219_peerpubkey[] = { 0x1f, 0x80, 0x56, 0x6d, 0xdd, 0x65, 0x86, 0x2d, 0xf8, 0xe6, 0xf7, 0xe1, 0x6c, 0x60, 0xb7, 0x75, 0xe2, 0xa4, 0x20, 0x5e, 0xe4, 0x8d, 0xc6, 0x12, 0x5a, 0x87, 0x4a, 0x1f, 0xfa, 0x72, 0x4a, 0x13, 0x39, 0x43, 0xe9, 0xe7, 0x71, 0x10, 0xee, 0x7b, 0xb3, 0x93, 0xf7, 0xf6, 0xa3, 0xcf, 0xe4, 0xab, 0x32, 0xb0, 0xa8, 0x13, 0x28, 0x0a, 0xb7, 0xf6, 0xbf, 0x5a, 0x02, 0x16, 0x4d, 0xba, 0xbb, 0xc7, 0x7c, 0x47, 0x66, 0xce, 0xef, 0x36, 0xe6, 0x22, 0x49, 0x9d, 0x60, 0x30, 0xf8, 0x35, 0x50, 0x73, 0xc7, 0xcc, 0xe1, 0xfc, 0x21, 0x9c, 0x28, 0x2d, 0x78, 0x1f, 0x44, 0xe6, 0x67, 0x48, 0x62, 0x46, 0x08, 0xc6, 0xe2, 0x3f, 0x8d, 0x4f, 0xdb, 0xb5, 0x0b, 0x26, 0x85, 0xb6, 0xb4, 0x82, 0x75, 0x7a, 0x00, 0xf2, 0xf1, 0xac, 0xd2, 0x27, 0xf1, 0xea, 0x87, 0x17, 0x19, 0x7d, 0x81, 0x05, 0x6a, 0xa8, }; static const unsigned char ecdh_brainpoolp512t1_5219_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5219_sharedsecret[] = { 0x07, 0x15, 0x28, 0x3a, 0x5c, 0xac, 0x2f, 0x0c, 0xeb, 0xb8, 0xea, 0x7d, 0xc1, 0x70, 0xa8, 0xa3, 0x7f, 0xfc, 0x4b, 0x5d, 0x91, 0x22, 0x5a, 0x45, 0xbc, 0x48, 0xab, 0xd1, 0x32, 0x99, 0x1d, 0x6a, 0x42, 0x69, 0x6e, 0xeb, 0x83, 0xc7, 0xf5, 0x34, 0xce, 0xa8, 0x08, 0xe5, 0x47, 0x13, 0xe5, 0x2b, 0x10, 0x94, 0xc4, 0x65, 0x51, 0x1d, 0xfb, 0xb8, 0xf1, 0xfd, 0xed, 0x7e, 0xe7, 0xd3, 0xe4, 0x57, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5219 = { .name = "ecdh_brainpoolp512t1_5219", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5219_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5219_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5219_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3014 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5220 for ECDH, tcId is 3015 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5220_peerpubkey[] = { 0x5e, 0xa0, 0x52, 0x73, 0x26, 0xaf, 0x5e, 0x49, 0xdf, 0x09, 0xf1, 0xfc, 0x99, 0xfd, 0xa6, 0x82, 0x03, 0x0f, 0x7d, 0xfb, 0xfd, 0x26, 0x1a, 0xa0, 0x75, 0xfe, 0xb5, 0x35, 0xcf, 0x81, 0xa2, 0x11, 0x6e, 0x0f, 0x4f, 0xe3, 0x49, 0x0f, 0x78, 0x8e, 0x13, 0xdf, 0x05, 0xd7, 0xd7, 0x72, 0xbe, 0x94, 0x0a, 0xd8, 0xd0, 0x3a, 0x24, 0x4a, 0xc2, 0x81, 0x41, 0xff, 0x60, 0x26, 0xac, 0x09, 0x72, 0x4d, 0x04, 0x82, 0x9d, 0xe9, 0x91, 0x3e, 0x9e, 0x7e, 0xe9, 0x7b, 0xae, 0x46, 0x33, 0x11, 0x32, 0xc1, 0x07, 0x0d, 0x1f, 0x55, 0x8b, 0x0a, 0x6e, 0x8e, 0xb4, 0x3d, 0x9b, 0xec, 0xf1, 0x94, 0xd2, 0x73, 0xb1, 0x59, 0x18, 0x9f, 0x6a, 0x64, 0x22, 0x9b, 0x6f, 0x71, 0xbf, 0x2b, 0xaa, 0xd0, 0x9e, 0x4b, 0x9c, 0xf0, 0x92, 0xaa, 0x6e, 0x16, 0x84, 0xeb, 0xd6, 0xb1, 0xf1, 0x6a, 0x47, 0x61, 0x39, 0xdc, }; static const unsigned char ecdh_brainpoolp512t1_5220_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5220_sharedsecret[] = { 0x34, 0x43, 0xd3, 0xc8, 0x6e, 0xdb, 0x86, 0x00, 0x5d, 0x30, 0x6c, 0x34, 0x64, 0xfd, 0x0c, 0xf0, 0x6a, 0x3f, 0xfa, 0x05, 0x96, 0xd0, 0x71, 0x2a, 0x10, 0xe1, 0x51, 0xec, 0x69, 0x96, 0xfc, 0xd0, 0x8f, 0xb5, 0x7f, 0x47, 0x1e, 0x4a, 0x8d, 0x4c, 0x6f, 0xc5, 0x35, 0x42, 0x16, 0xbc, 0x74, 0xfd, 0xaa, 0x5a, 0x6e, 0xb6, 0xcd, 0xfb, 0x96, 0xea, 0x73, 0xa6, 0xef, 0xe4, 0x4f, 0x53, 0xea, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5220 = { .name = "ecdh_brainpoolp512t1_5220", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5220_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5220_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5220_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3015 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5221 for ECDH, tcId is 3016 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5221_peerpubkey[] = { 0x93, 0xf2, 0x81, 0x58, 0x28, 0xc4, 0x0c, 0x83, 0x32, 0xd4, 0x10, 0x59, 0x24, 0x5a, 0xf3, 0x10, 0x00, 0x98, 0x8f, 0xd0, 0x9a, 0xb3, 0x4d, 0xe0, 0xc3, 0x8a, 0xea, 0x5b, 0x1f, 0xa7, 0x2f, 0x7c, 0x28, 0x03, 0x62, 0xad, 0x2e, 0x10, 0x3e, 0x9d, 0x66, 0x25, 0x90, 0xf5, 0x0a, 0x25, 0xd1, 0x28, 0x72, 0x94, 0xd5, 0xfd, 0x9d, 0xcd, 0x02, 0x06, 0x59, 0x4e, 0xd2, 0x00, 0x0f, 0x4b, 0x44, 0x61, 0x35, 0xc3, 0xee, 0xc3, 0x0e, 0x1c, 0xe9, 0x45, 0x49, 0xd5, 0x48, 0x06, 0x58, 0x4d, 0x99, 0x9b, 0x4d, 0x8e, 0x51, 0xf6, 0xe4, 0xbe, 0xcb, 0x31, 0x10, 0x20, 0x2b, 0x6d, 0x06, 0xc7, 0x3b, 0x94, 0xe5, 0xae, 0x69, 0xf0, 0x2d, 0x15, 0xa9, 0x6e, 0xc9, 0x28, 0xb4, 0x8f, 0xf6, 0x4c, 0x59, 0xc4, 0xdd, 0xa0, 0xf5, 0x08, 0x01, 0xf3, 0xc9, 0xa6, 0xd2, 0xca, 0x8f, 0xb9, 0xc7, 0xe6, 0x47, 0xd5, }; static const unsigned char ecdh_brainpoolp512t1_5221_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5221_sharedsecret[] = { 0x92, 0xce, 0xd4, 0xa2, 0xe3, 0x74, 0xe7, 0xf2, 0xed, 0x69, 0x90, 0xc2, 0xe2, 0xc6, 0xad, 0x95, 0x57, 0x31, 0xef, 0x72, 0xce, 0x32, 0x05, 0x05, 0xba, 0x6d, 0x1b, 0x71, 0x34, 0xa3, 0xa0, 0xd4, 0xc5, 0xd6, 0xcc, 0xcb, 0xd5, 0x8f, 0xec, 0x1b, 0x4c, 0xd9, 0xb1, 0x02, 0x28, 0x20, 0xf0, 0xbe, 0x6f, 0xe7, 0xa4, 0xd3, 0x06, 0x73, 0xf7, 0x26, 0xd5, 0xec, 0xcc, 0x7f, 0xb6, 0x17, 0x5a, 0x60, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5221 = { .name = "ecdh_brainpoolp512t1_5221", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5221_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5221_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5221_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3016 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5222 for ECDH, tcId is 3017 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5222_peerpubkey[] = { 0x5b, 0x88, 0x4d, 0xbd, 0x67, 0xe4, 0xee, 0x26, 0x24, 0x26, 0xb3, 0xdd, 0xb7, 0xba, 0xd6, 0x36, 0x3d, 0x0f, 0x81, 0x04, 0x23, 0xea, 0x12, 0x26, 0x23, 0xbe, 0xd3, 0x30, 0x48, 0x5a, 0x9e, 0x54, 0x4a, 0x16, 0x23, 0xbe, 0xb5, 0x11, 0x47, 0xf6, 0x7f, 0x45, 0xfe, 0x1f, 0xdc, 0x7c, 0x76, 0x74, 0x74, 0x95, 0x24, 0x9b, 0x9a, 0xd6, 0xdc, 0x3f, 0x01, 0x47, 0x4e, 0xb8, 0x36, 0x80, 0x55, 0x0c, 0x61, 0x4d, 0xeb, 0x81, 0x73, 0xa2, 0x76, 0xda, 0x93, 0x6b, 0x47, 0xe4, 0xbd, 0x75, 0x09, 0x38, 0x05, 0xb1, 0x4d, 0x7a, 0x29, 0xdc, 0x26, 0x51, 0x38, 0xc0, 0xcd, 0xc1, 0x29, 0x56, 0x0b, 0xf6, 0x6f, 0xb7, 0xab, 0x14, 0x2c, 0xc9, 0x51, 0x6a, 0x2f, 0x3e, 0x47, 0x96, 0xc7, 0x80, 0x31, 0xe1, 0x30, 0xe9, 0x1b, 0x4d, 0xc4, 0xcb, 0xff, 0x1d, 0x26, 0x75, 0xbe, 0x55, 0x77, 0xff, 0x01, 0xd4, }; static const unsigned char ecdh_brainpoolp512t1_5222_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5222_sharedsecret[] = { 0xa7, 0x0d, 0x4a, 0x20, 0x0b, 0x5c, 0xed, 0xf6, 0x91, 0x55, 0x5e, 0xdd, 0x60, 0xe0, 0x43, 0xd6, 0x5e, 0x6c, 0x21, 0x32, 0xcd, 0x81, 0xfc, 0xb9, 0xe1, 0xcd, 0xaf, 0x7d, 0xfa, 0x7e, 0x7b, 0xfe, 0x78, 0x20, 0xb6, 0x27, 0x85, 0xaf, 0x8b, 0x16, 0xdd, 0xbd, 0x86, 0xdb, 0xfd, 0xb4, 0xca, 0x6a, 0x8c, 0x8f, 0xf4, 0xef, 0x56, 0x26, 0x5a, 0xaa, 0x82, 0x95, 0x0d, 0x98, 0x6c, 0x7d, 0x79, 0x8c, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5222 = { .name = "ecdh_brainpoolp512t1_5222", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5222_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5222_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5222_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3017 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5223 for ECDH, tcId is 3018 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5223_peerpubkey[] = { 0x9f, 0xd5, 0x62, 0x09, 0x0f, 0x61, 0x0b, 0xca, 0x9d, 0xcb, 0xfe, 0x7d, 0x3f, 0x9f, 0xad, 0xf0, 0x39, 0x5c, 0x50, 0xad, 0x83, 0x9e, 0xfc, 0x0f, 0x6b, 0x1d, 0x4a, 0x82, 0xa2, 0x4c, 0xb0, 0x2d, 0xb9, 0x4a, 0x77, 0x27, 0x74, 0x8a, 0x75, 0xe7, 0xa4, 0xf1, 0x6d, 0xe9, 0xeb, 0x4a, 0x6a, 0x08, 0x30, 0xbd, 0xcf, 0xb6, 0x51, 0x5c, 0xb4, 0x81, 0x5f, 0x3c, 0x3f, 0x06, 0x5c, 0x66, 0x2a, 0x0d, 0x49, 0xb4, 0x78, 0xb7, 0xf4, 0x39, 0x23, 0x28, 0xdc, 0xcc, 0xdc, 0xf1, 0xdf, 0x07, 0x8a, 0x7b, 0x8a, 0x8a, 0xea, 0x9c, 0x62, 0x9f, 0x68, 0x4f, 0x1e, 0x7e, 0xc5, 0x0d, 0x26, 0x24, 0xed, 0xd4, 0xd0, 0x6b, 0xb5, 0xe5, 0x67, 0x9f, 0xfa, 0x6a, 0xdb, 0x57, 0xfa, 0xa0, 0xa1, 0x6c, 0x1a, 0xed, 0x92, 0xea, 0x00, 0x3d, 0xcc, 0xa8, 0x00, 0x46, 0x95, 0x96, 0xc5, 0x74, 0x9c, 0x35, 0x57, 0x02, }; static const unsigned char ecdh_brainpoolp512t1_5223_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5223_sharedsecret[] = { 0x7e, 0x8c, 0x07, 0x33, 0x28, 0xb4, 0x7d, 0x91, 0x41, 0x34, 0x36, 0xb0, 0xd8, 0xa6, 0x2d, 0xf5, 0xbb, 0x05, 0x08, 0x9e, 0xdc, 0x76, 0x9b, 0xb4, 0x26, 0xe1, 0x57, 0xaf, 0xc2, 0x9e, 0xfb, 0x86, 0xbb, 0x63, 0x3f, 0xf6, 0x43, 0x57, 0xb3, 0x9c, 0x83, 0xaf, 0x2d, 0x35, 0xe7, 0x34, 0x3e, 0x0b, 0x90, 0x79, 0x81, 0x48, 0x59, 0x0e, 0xc9, 0xb4, 0x92, 0x1e, 0xdd, 0x10, 0x08, 0xea, 0xb6, 0xf7, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5223 = { .name = "ecdh_brainpoolp512t1_5223", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5223_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5223_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5223_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3018 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5224 for ECDH, tcId is 3019 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5224_peerpubkey[] = { 0xa9, 0x4c, 0x93, 0xca, 0x77, 0x0e, 0xf3, 0xad, 0x58, 0xbc, 0xce, 0xa8, 0xfa, 0x4d, 0x4c, 0xec, 0xa1, 0xa2, 0xdf, 0x32, 0xcb, 0x3d, 0xd8, 0xe3, 0xa5, 0xa4, 0x4a, 0x6f, 0xa9, 0x50, 0x62, 0x8a, 0x9b, 0x26, 0x7b, 0x22, 0xfc, 0xbe, 0xa6, 0x8c, 0x4e, 0xd7, 0x57, 0x98, 0x7c, 0xc5, 0x81, 0x5d, 0xe7, 0xa7, 0x6a, 0x25, 0x34, 0xda, 0x5c, 0xf4, 0xe6, 0x5b, 0x28, 0x3b, 0x4c, 0xc3, 0xd2, 0x93, 0x30, 0x81, 0xf8, 0xaf, 0xed, 0xb8, 0xba, 0x23, 0x74, 0x08, 0xec, 0xc9, 0x79, 0x67, 0xb1, 0x8a, 0x77, 0x1c, 0x8e, 0x8e, 0xd8, 0xdd, 0x98, 0x37, 0x8e, 0xa8, 0x40, 0xe1, 0xd3, 0x3a, 0x05, 0x01, 0xc4, 0xee, 0x90, 0x65, 0xd0, 0xf9, 0x80, 0x53, 0xce, 0xf9, 0xdc, 0x35, 0x99, 0x6e, 0x72, 0x7e, 0x7f, 0xd7, 0x96, 0x3c, 0x93, 0x00, 0xed, 0x3f, 0x06, 0xee, 0x8b, 0xdf, 0x21, 0x10, 0x62, 0xf3, }; static const unsigned char ecdh_brainpoolp512t1_5224_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5224_sharedsecret[] = { 0x0c, 0x88, 0x20, 0xf5, 0xb2, 0x95, 0x8d, 0xf3, 0xcc, 0xc6, 0x5f, 0x21, 0xfe, 0x14, 0xf8, 0xc3, 0x41, 0x30, 0xd7, 0xc4, 0xec, 0x88, 0x5e, 0x42, 0x5b, 0x9a, 0x3d, 0x22, 0xa6, 0x97, 0xce, 0x3c, 0x0f, 0x78, 0x22, 0x86, 0xb9, 0x27, 0x41, 0x5e, 0xb3, 0xe4, 0x5c, 0xf8, 0x14, 0x30, 0xd9, 0xd1, 0x57, 0x6d, 0xd4, 0xc9, 0xb1, 0x38, 0x28, 0x73, 0xb7, 0xd4, 0x04, 0x0e, 0x58, 0x0d, 0xc4, 0x0e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5224 = { .name = "ecdh_brainpoolp512t1_5224", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5224_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5224_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5224_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3019 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5225 for ECDH, tcId is 3020 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5225_peerpubkey[] = { 0x17, 0xa7, 0x68, 0x69, 0x78, 0xce, 0xbf, 0x25, 0x68, 0x55, 0x25, 0x6a, 0x0e, 0xa5, 0x09, 0xa6, 0x17, 0x58, 0x41, 0xac, 0xe6, 0xe0, 0xfc, 0x65, 0xc0, 0xb5, 0x1f, 0x24, 0xb3, 0xe9, 0xdb, 0x2f, 0x26, 0x68, 0xa1, 0xe0, 0x0a, 0xc9, 0x06, 0xef, 0x34, 0x8b, 0x78, 0xc0, 0x49, 0xe4, 0x4f, 0x5a, 0xc7, 0xaf, 0x71, 0xb4, 0x9c, 0x8b, 0xb2, 0x07, 0x8c, 0x7b, 0xd1, 0xdc, 0xd6, 0x7f, 0xd4, 0xd2, 0x57, 0xd0, 0x04, 0xd0, 0x0a, 0x3c, 0x2c, 0xc2, 0x06, 0x80, 0x20, 0x47, 0x26, 0xd1, 0x11, 0xb2, 0x0c, 0x61, 0x8d, 0xbf, 0xfa, 0xed, 0x90, 0x04, 0xf2, 0xde, 0xaf, 0xfc, 0x08, 0x63, 0x8d, 0x0d, 0xd5, 0xf7, 0x18, 0x3a, 0xb1, 0x03, 0x96, 0x8a, 0xd2, 0xf8, 0x21, 0x1d, 0xa9, 0xbc, 0xc5, 0x2c, 0xfe, 0x62, 0x2d, 0x14, 0x25, 0x7b, 0xc0, 0xd9, 0x0a, 0xd1, 0xab, 0x1b, 0x13, 0x3c, 0x23, 0xa1, }; static const unsigned char ecdh_brainpoolp512t1_5225_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5225_sharedsecret[] = { 0x88, 0x1c, 0x4c, 0xcd, 0x83, 0x30, 0xbb, 0xd7, 0x35, 0x71, 0xc0, 0xdf, 0x95, 0xce, 0x54, 0x8f, 0x40, 0xfd, 0x93, 0xc8, 0x8a, 0x7a, 0x40, 0x0d, 0x05, 0xf5, 0xd7, 0xa5, 0x32, 0x40, 0x84, 0x49, 0x29, 0xa4, 0x77, 0x2c, 0x94, 0x53, 0xd3, 0x1c, 0xb1, 0x85, 0x24, 0xdc, 0x8b, 0xbe, 0xd6, 0xc8, 0x90, 0x6c, 0x02, 0xf3, 0xbe, 0x3a, 0x30, 0x49, 0x52, 0x86, 0x04, 0xcf, 0xef, 0x34, 0x6a, 0x74, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5225 = { .name = "ecdh_brainpoolp512t1_5225", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5225_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5225_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5225_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3020 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5226 for ECDH, tcId is 3021 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5226_peerpubkey[] = { 0x93, 0x0e, 0x0b, 0x6d, 0xb7, 0xc9, 0xca, 0x5a, 0x30, 0xcb, 0x21, 0xc4, 0x19, 0x0d, 0x63, 0x5d, 0xc8, 0x97, 0x3c, 0xd4, 0x02, 0xb4, 0x8f, 0x1d, 0xfd, 0x30, 0xc8, 0x12, 0x43, 0x89, 0xd9, 0xd2, 0x08, 0x36, 0x92, 0xec, 0xe8, 0x4b, 0x02, 0x9f, 0x57, 0x09, 0xc9, 0x18, 0x79, 0x87, 0x03, 0x32, 0x7e, 0xb7, 0x51, 0x3a, 0x8b, 0x2d, 0xc0, 0x7e, 0x05, 0xcb, 0xfe, 0x8f, 0xc3, 0x88, 0x66, 0x57, 0x90, 0xb1, 0x75, 0xee, 0x34, 0x5d, 0x37, 0xc0, 0xee, 0xd0, 0x1a, 0xaf, 0x7f, 0xdd, 0x18, 0x88, 0xf1, 0x0c, 0xf1, 0xa4, 0x0f, 0x6f, 0xe4, 0x04, 0xe7, 0xf3, 0xb1, 0x03, 0xfe, 0xf5, 0x67, 0x78, 0x36, 0xc9, 0xf5, 0x9f, 0x6d, 0x1a, 0xba, 0x08, 0x54, 0x24, 0x08, 0xcd, 0x69, 0x02, 0xd2, 0x58, 0xaa, 0x66, 0x3e, 0x90, 0x14, 0xed, 0x65, 0xbf, 0x1f, 0x34, 0x91, 0x32, 0x4a, 0x07, 0x04, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5226_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5226_sharedsecret[] = { 0x1c, 0x15, 0x64, 0xe8, 0x89, 0xd5, 0x5e, 0x47, 0xc6, 0xef, 0x75, 0x7e, 0x2c, 0xf2, 0xed, 0xff, 0xd9, 0x9e, 0xf3, 0x54, 0x98, 0xfe, 0xe8, 0x85, 0x0e, 0x34, 0x07, 0x8f, 0x46, 0x4b, 0x52, 0xdc, 0xfb, 0x91, 0x84, 0xdb, 0x97, 0x1f, 0xe2, 0x27, 0xaa, 0x55, 0x18, 0xf3, 0x7a, 0xa6, 0xf1, 0x24, 0x02, 0x9d, 0x83, 0x99, 0xeb, 0x62, 0xa1, 0x38, 0x0e, 0x18, 0x5c, 0xb2, 0x21, 0x60, 0x4d, 0xcb, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5226 = { .name = "ecdh_brainpoolp512t1_5226", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5226_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5226_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5226_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3021 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5227 for ECDH, tcId is 3022 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5227_peerpubkey[] = { 0x37, 0x92, 0xf1, 0x4c, 0x3a, 0x3a, 0x4e, 0x21, 0xf5, 0x1e, 0xd9, 0x72, 0xb4, 0x88, 0x77, 0x36, 0x26, 0x28, 0x4b, 0xf4, 0x4e, 0x88, 0x4f, 0xf5, 0xb2, 0x38, 0x90, 0xb0, 0x0f, 0x9f, 0x2d, 0x76, 0x0c, 0x01, 0x94, 0x0e, 0xc8, 0xd8, 0xc8, 0xa9, 0xa8, 0x7b, 0xae, 0x12, 0xa8, 0x0c, 0xf4, 0x35, 0x1e, 0xa9, 0x74, 0x00, 0x1b, 0x9e, 0x53, 0x35, 0xd5, 0xce, 0xd0, 0x36, 0x7f, 0x8b, 0x9a, 0x9c, 0x98, 0xbf, 0xf1, 0xf0, 0xed, 0x7a, 0x92, 0x4a, 0x67, 0xa5, 0x3e, 0xe2, 0x00, 0x88, 0xfc, 0x73, 0x49, 0x9f, 0x1b, 0x75, 0x06, 0xbb, 0x9a, 0x74, 0xe8, 0x52, 0xc8, 0x3b, 0x27, 0xc0, 0x21, 0x3b, 0xfb, 0x0d, 0x9d, 0x55, 0xa1, 0xbb, 0x05, 0xc8, 0x85, 0xd4, 0x83, 0xa2, 0x01, 0x7c, 0x33, 0xe5, 0xb2, 0x54, 0x2a, 0x05, 0x8f, 0x80, 0x6f, 0x19, 0x4e, 0x5f, 0xb2, 0xf1, 0x84, 0x03, 0x1b, 0x82, }; static const unsigned char ecdh_brainpoolp512t1_5227_privkey[] = { 0x5d, 0x48, 0x16, 0x91, 0xb7, 0x44, 0x04, 0xf4, 0x39, 0xdf, 0xfd, 0x5c, 0x45, 0x8c, 0x11, 0x13, 0x10, 0x3f, 0x28, 0x49, 0x3e, 0x60, 0x79, 0xba, 0x6b, 0x84, 0xec, 0xfa, 0x88, 0xce, 0xab, 0x4b, 0x9c, 0x0d, 0xf7, 0x82, 0xbb, 0x72, 0x88, 0x12, 0x79, 0x4a, 0x0b, 0xef, 0x96, 0x1e, 0xfc, 0x60, 0x1b, 0x5b, 0x5a, 0x08, 0xb1, 0x99, 0xcb, 0x2c, 0x9e, 0x8b, 0x0f, 0xf5, 0x44, 0xdd, 0x11, 0xaf, }; static const unsigned char ecdh_brainpoolp512t1_5227_sharedsecret[] = { 0x52, 0x04, 0x16, 0x75, 0xda, 0x2d, 0xf5, 0xa4, 0x99, 0x2c, 0xdb, 0xe2, 0x30, 0x70, 0x64, 0x15, 0x6c, 0xec, 0x48, 0x10, 0x12, 0x33, 0x1a, 0x75, 0xde, 0xc5, 0xd9, 0x5b, 0xee, 0x4d, 0xdb, 0x5c, 0xf5, 0x62, 0xc2, 0x31, 0x39, 0x05, 0xe9, 0xe7, 0x3f, 0xba, 0x1d, 0x47, 0x50, 0xc0, 0xbf, 0x78, 0x10, 0x6b, 0x6e, 0x6a, 0x96, 0xd8, 0xe9, 0x5b, 0x5d, 0x94, 0x5b, 0x71, 0x4b, 0xe0, 0xc6, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5227 = { .name = "ecdh_brainpoolp512t1_5227", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5227_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5227_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5227_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 3022 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5228 for ECDH, tcId is 3023 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5228_peerpubkey[] = { 0x3b, 0x0d, 0xdf, 0x72, 0xa2, 0xfa, 0xb0, 0x59, 0x78, 0xa1, 0x8a, 0x13, 0xcc, 0x8c, 0x6d, 0x77, 0xf1, 0xee, 0x26, 0xa4, 0xff, 0xff, 0x03, 0xa5, 0x1e, 0x5c, 0xa5, 0x95, 0x19, 0x70, 0xd9, 0x9e, 0xe5, 0x8d, 0x10, 0xfc, 0x51, 0xfb, 0x73, 0x9c, 0xe0, 0xe0, 0xc6, 0x38, 0xa1, 0x6f, 0x2a, 0x95, 0x96, 0x02, 0xae, 0xe1, 0x2e, 0xbc, 0x9b, 0x9b, 0x41, 0x8e, 0x08, 0x1c, 0x34, 0x3a, 0x77, 0xae, 0x4a, 0x78, 0xfe, 0x68, 0xb2, 0x79, 0xcc, 0xe5, 0x06, 0x36, 0x61, 0x29, 0xf0, 0x6d, 0xee, 0xe6, 0xc1, 0x84, 0x33, 0xf3, 0x7c, 0x15, 0xf2, 0xda, 0xcb, 0xac, 0xc7, 0xe4, 0xa8, 0x33, 0x80, 0xdf, 0xde, 0x11, 0x5f, 0xc8, 0xa3, 0xd7, 0x59, 0x35, 0x90, 0x6b, 0x71, 0xdb, 0x87, 0xd8, 0x7e, 0xe0, 0x54, 0x8f, 0x82, 0x84, 0xad, 0x15, 0xea, 0x99, 0xa8, 0x3c, 0x92, 0x2b, 0x22, 0x49, 0xc6, 0x1c, }; static const unsigned char ecdh_brainpoolp512t1_5228_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5228_sharedsecret[] = { 0x9f, 0xca, 0xe3, 0x72, 0x40, 0x69, 0x36, 0x55, 0x79, 0xbe, 0x40, 0x11, 0x24, 0xbe, 0x68, 0x90, 0x60, 0xbd, 0x39, 0x5f, 0xe7, 0xdc, 0xbc, 0x23, 0xa9, 0x2b, 0x85, 0x83, 0x85, 0xd6, 0xfd, 0x65, 0x4a, 0x22, 0xfb, 0x44, 0x75, 0xed, 0xd0, 0xd0, 0x8c, 0x11, 0xd4, 0x84, 0x37, 0x39, 0x2c, 0x4a, 0x43, 0x8d, 0x51, 0xe7, 0xd7, 0x61, 0x3c, 0x9b, 0x6c, 0x56, 0xca, 0xb0, 0x26, 0x88, 0x67, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5228 = { .name = "ecdh_brainpoolp512t1_5228", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5228_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5228_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5228_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3023 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5229 for ECDH, tcId is 3024 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5229_peerpubkey[] = { 0x3a, 0x27, 0x26, 0xbf, 0x5f, 0x79, 0x4e, 0x01, 0x0a, 0xad, 0x50, 0xe4, 0xc5, 0xb7, 0xd0, 0x8d, 0xa4, 0x64, 0x53, 0x72, 0xf9, 0x78, 0xf3, 0x34, 0x2e, 0x6d, 0xab, 0x3b, 0x13, 0x3a, 0x21, 0x57, 0xd0, 0x97, 0xcc, 0x74, 0x0b, 0x32, 0xcf, 0x36, 0x8e, 0x76, 0xe1, 0x35, 0xfa, 0x33, 0xdb, 0xc2, 0x25, 0x34, 0xaa, 0x02, 0xc3, 0x05, 0x9e, 0x11, 0xbf, 0x94, 0x32, 0xe4, 0x9d, 0xdd, 0xc4, 0xf2, 0x97, 0x1f, 0x3d, 0xd4, 0x72, 0x3e, 0x2a, 0xaa, 0xc4, 0xf3, 0xb6, 0xf0, 0x60, 0xee, 0x61, 0xd5, 0x3f, 0xe6, 0x91, 0xea, 0x41, 0xde, 0xe1, 0xe3, 0x6d, 0x22, 0x5a, 0xf3, 0x29, 0x7a, 0xb2, 0xdc, 0xb8, 0xe8, 0x9d, 0x5c, 0x19, 0x27, 0xc2, 0x51, 0x6b, 0x64, 0x94, 0xf8, 0xdb, 0x09, 0x66, 0x11, 0xb6, 0x52, 0x43, 0x97, 0x7f, 0xb6, 0x40, 0x52, 0xa9, 0x15, 0xc2, 0xd8, 0xd2, 0x6a, 0xb2, 0x6e, }; static const unsigned char ecdh_brainpoolp512t1_5229_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5229_sharedsecret[] = { 0x32, 0x10, 0x12, 0x9f, 0xe6, 0xa7, 0x8f, 0xb0, 0x3f, 0xf0, 0xf6, 0x6c, 0x69, 0x04, 0x41, 0xb7, 0xb8, 0x82, 0xa7, 0x5c, 0x9b, 0x7c, 0x22, 0x49, 0xde, 0xd2, 0x85, 0xe3, 0x82, 0xd7, 0xfc, 0xed, 0xe4, 0x54, 0x05, 0xd7, 0xca, 0xe3, 0x7a, 0x5d, 0x10, 0x02, 0xf6, 0x26, 0xff, 0x38, 0x7e, 0x8e, 0x20, 0x2d, 0xfa, 0x15, 0x05, 0x6d, 0x90, 0xd1, 0xe4, 0x04, 0xc2, 0xea, 0x2f, 0x57, 0x54, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5229 = { .name = "ecdh_brainpoolp512t1_5229", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5229_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5229_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5229_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3024 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5230 for ECDH, tcId is 3025 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5230_peerpubkey[] = { 0xa2, 0x20, 0xe4, 0x35, 0xab, 0x1d, 0xe2, 0xa3, 0x0f, 0x8e, 0xa8, 0x08, 0xb0, 0x6a, 0x7b, 0x75, 0x5b, 0x6c, 0x95, 0x93, 0x92, 0x98, 0xef, 0xb1, 0x5b, 0x25, 0xaf, 0x04, 0x0a, 0x55, 0x0e, 0x09, 0xd8, 0x32, 0x2d, 0x24, 0x49, 0x25, 0xcd, 0x33, 0xbd, 0xef, 0x39, 0xb6, 0x68, 0xd5, 0xff, 0x38, 0xc4, 0x7c, 0x58, 0x33, 0x88, 0xe0, 0xd0, 0xf1, 0xa5, 0xfd, 0xcf, 0x3a, 0x9e, 0xe1, 0xa7, 0x93, 0x1d, 0xd2, 0x4f, 0x51, 0x99, 0x8d, 0x07, 0x6b, 0x04, 0x47, 0xfb, 0x22, 0x63, 0xc8, 0x65, 0x68, 0x4a, 0x01, 0xfb, 0xad, 0xe1, 0xe3, 0x67, 0x1d, 0x9b, 0xdb, 0x36, 0xa4, 0xd5, 0x93, 0xe6, 0x9d, 0x5d, 0x13, 0xe9, 0x86, 0x01, 0x20, 0x97, 0x62, 0x0b, 0x0f, 0xab, 0x5b, 0x18, 0xdc, 0xdd, 0xa8, 0x8e, 0xb0, 0xf0, 0x9f, 0xe7, 0x6c, 0xc1, 0xf5, 0x66, 0x64, 0xcc, 0xf3, 0x18, 0x1c, 0x15, 0x4f, }; static const unsigned char ecdh_brainpoolp512t1_5230_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5230_sharedsecret[] = { 0x42, 0xd7, 0xa2, 0x7c, 0x57, 0x39, 0x48, 0xf3, 0x93, 0x64, 0x20, 0x47, 0x3a, 0xfd, 0xe1, 0x8c, 0xad, 0xe0, 0x5f, 0x71, 0x9b, 0xb5, 0x99, 0x47, 0x1f, 0xae, 0xbb, 0x38, 0xc4, 0x8c, 0x24, 0x87, 0x8b, 0x7b, 0x6f, 0xe6, 0x06, 0xc5, 0x57, 0xff, 0x37, 0xc4, 0xca, 0xe2, 0x5d, 0x0e, 0xf4, 0x87, 0x0b, 0xb0, 0x1a, 0x60, 0xef, 0xce, 0x24, 0x83, 0x4e, 0x07, 0x32, 0x05, 0x41, 0x36, 0x4b, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5230 = { .name = "ecdh_brainpoolp512t1_5230", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5230_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5230_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5230_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3025 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5231 for ECDH, tcId is 3026 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5231_peerpubkey[] = { 0x0f, 0xba, 0x3f, 0xcb, 0xee, 0xf0, 0x3c, 0xec, 0xc1, 0xec, 0x37, 0x1c, 0x63, 0x1d, 0x71, 0xea, 0x52, 0x4d, 0x63, 0x70, 0xbc, 0x72, 0x26, 0xe3, 0xbf, 0xb2, 0xc5, 0x6d, 0x5a, 0x32, 0xc2, 0x44, 0xdf, 0x94, 0x29, 0x8c, 0x0e, 0xd8, 0x09, 0x96, 0x23, 0x87, 0xc6, 0x51, 0x1c, 0xb6, 0x17, 0x33, 0x95, 0x7f, 0x92, 0x18, 0x9d, 0x4c, 0x29, 0x3f, 0x5a, 0x66, 0x7e, 0x73, 0x53, 0x52, 0x71, 0x3c, 0x9d, 0x31, 0xd7, 0x33, 0x32, 0xf8, 0x60, 0x3c, 0x23, 0x3b, 0xa6, 0x15, 0xf6, 0x8f, 0x33, 0x59, 0x44, 0xe4, 0xb0, 0x96, 0xd4, 0x7a, 0x9d, 0x63, 0x06, 0x83, 0x7f, 0xe1, 0xfe, 0x4d, 0x8b, 0xdd, 0x77, 0x59, 0x1d, 0x88, 0xeb, 0xa3, 0x21, 0xcf, 0x55, 0x25, 0xf4, 0x1b, 0x2d, 0x9d, 0x07, 0x39, 0xe1, 0xf4, 0xe3, 0x31, 0x5c, 0x20, 0x46, 0xf6, 0x38, 0x6a, 0xa3, 0xe3, 0xee, 0xb5, 0xe2, 0x56, }; static const unsigned char ecdh_brainpoolp512t1_5231_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5231_sharedsecret[] = { 0x0c, 0xc6, 0x1f, 0x41, 0x28, 0x68, 0x33, 0x55, 0xc1, 0x62, 0xf8, 0x4c, 0xcf, 0x21, 0x09, 0x8d, 0xb5, 0x54, 0xf3, 0xe1, 0x2c, 0x18, 0x6e, 0x22, 0x71, 0x21, 0x71, 0x16, 0x4a, 0x62, 0xb7, 0x11, 0x4b, 0x7c, 0x62, 0xec, 0x15, 0xbd, 0x8b, 0x47, 0xfd, 0x40, 0xc6, 0x5f, 0x0b, 0xb8, 0x41, 0x38, 0xc1, 0x34, 0x52, 0x9c, 0xf0, 0xe4, 0x35, 0x1b, 0xb8, 0x5f, 0x70, 0xe1, 0x94, 0xe3, 0x1c, 0x75, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5231 = { .name = "ecdh_brainpoolp512t1_5231", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5231_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5231_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5231_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3026 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5232 for ECDH, tcId is 3027 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5232_peerpubkey[] = { 0x55, 0x53, 0xf2, 0x51, 0x29, 0x08, 0x0d, 0x74, 0xe3, 0x77, 0xb7, 0x50, 0xca, 0xc3, 0x16, 0x28, 0x67, 0x69, 0xdb, 0xcd, 0xbb, 0xc5, 0xd8, 0x84, 0xe5, 0x69, 0x90, 0x23, 0xf9, 0xc4, 0xbf, 0xcf, 0x91, 0x9c, 0x38, 0xc6, 0xf4, 0xc1, 0x47, 0x65, 0x54, 0x2b, 0xb5, 0x85, 0xce, 0x33, 0x1a, 0xf2, 0xeb, 0x33, 0x02, 0xcf, 0x30, 0xfe, 0x8f, 0x9c, 0x8f, 0x77, 0x89, 0xd7, 0x79, 0x2e, 0x48, 0xdb, 0x87, 0x3f, 0x8b, 0x4d, 0x93, 0x39, 0x74, 0x17, 0xf9, 0xd3, 0xfe, 0x55, 0x3f, 0x62, 0xc7, 0x66, 0x5b, 0xcf, 0x0f, 0xfd, 0x03, 0xeb, 0x70, 0xcb, 0xaa, 0xa6, 0x49, 0x53, 0x5e, 0xb1, 0x37, 0x19, 0x42, 0xe2, 0xc6, 0xe1, 0x04, 0xfa, 0xac, 0x68, 0xcc, 0xfe, 0x0e, 0x97, 0xdc, 0x98, 0x5d, 0xd1, 0x8a, 0xf7, 0x29, 0xc4, 0xa5, 0xba, 0x13, 0x82, 0x45, 0x33, 0xbd, 0x8b, 0x40, 0x2f, 0xb5, 0x79, }; static const unsigned char ecdh_brainpoolp512t1_5232_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5232_sharedsecret[] = { 0x88, 0x97, 0x2a, 0xf4, 0x20, 0x0b, 0xe4, 0x8b, 0x13, 0xc2, 0x7b, 0x1e, 0x5a, 0x05, 0xec, 0xad, 0x74, 0xb3, 0x5f, 0x2f, 0x80, 0x07, 0xe1, 0x6f, 0x19, 0x8c, 0x0c, 0xa8, 0xa6, 0xda, 0x67, 0xe4, 0x1c, 0xb6, 0x6c, 0x81, 0x10, 0x20, 0x46, 0xac, 0x63, 0xed, 0x21, 0x1b, 0xaf, 0xe8, 0xcd, 0x18, 0xca, 0xb2, 0xdd, 0x45, 0x32, 0xd3, 0x4a, 0xdf, 0x4c, 0x8e, 0x00, 0x75, 0x58, 0xd9, 0x92, 0x01, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5232 = { .name = "ecdh_brainpoolp512t1_5232", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5232_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5232_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5232_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3027 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5233 for ECDH, tcId is 3028 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5233_peerpubkey[] = { 0x85, 0x89, 0x76, 0xf2, 0x3a, 0x92, 0x40, 0x85, 0xc9, 0x2a, 0x6e, 0x22, 0xac, 0xbf, 0x94, 0x33, 0x91, 0x8c, 0xe6, 0xb3, 0xd2, 0x29, 0x4b, 0xea, 0x9d, 0x3c, 0x1f, 0x96, 0xf6, 0xc3, 0x7c, 0x8a, 0x2c, 0x78, 0xd7, 0x25, 0x41, 0xd2, 0xbe, 0xb5, 0xab, 0xe3, 0xc7, 0x5a, 0xb1, 0x09, 0x8b, 0x7c, 0x4a, 0xda, 0xf5, 0x95, 0x09, 0x0a, 0x44, 0x21, 0x8a, 0xe0, 0xf2, 0xad, 0xf8, 0xaf, 0x32, 0x72, 0x19, 0x96, 0xcf, 0x2f, 0x20, 0xd8, 0xa5, 0x5a, 0xb6, 0xc2, 0x24, 0x0d, 0x73, 0xbd, 0x7c, 0x33, 0x58, 0x84, 0xc3, 0x94, 0x04, 0x89, 0xff, 0x48, 0xba, 0xe9, 0x72, 0xc8, 0x7a, 0x9a, 0x38, 0x21, 0x67, 0x60, 0x7a, 0x6e, 0x25, 0x5d, 0xcf, 0x6d, 0x5b, 0x20, 0xb9, 0x80, 0xba, 0xe0, 0x4d, 0x22, 0x3d, 0x43, 0x29, 0x52, 0x7a, 0x3c, 0x47, 0xa4, 0xb3, 0x3c, 0x88, 0xe6, 0x08, 0x83, 0x83, 0x58, }; static const unsigned char ecdh_brainpoolp512t1_5233_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5233_sharedsecret[] = { 0xa6, 0x4e, 0x3b, 0x2a, 0x5e, 0xd0, 0x5c, 0x58, 0x59, 0x82, 0x9e, 0xdd, 0x7f, 0x66, 0x8d, 0xe6, 0xd6, 0x44, 0xd0, 0xca, 0x40, 0xe8, 0x87, 0xf6, 0xda, 0xb7, 0xdb, 0x6d, 0x52, 0x6d, 0x0a, 0x55, 0x0d, 0x6b, 0x26, 0x79, 0xb9, 0xf6, 0xa0, 0xcc, 0x1b, 0xd2, 0x63, 0xc5, 0xf7, 0xb8, 0x4c, 0x1d, 0x13, 0x02, 0x9e, 0xe0, 0xbf, 0xd9, 0x98, 0x20, 0x64, 0x08, 0xcd, 0x2a, 0x2d, 0x53, 0xef, 0x96, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5233 = { .name = "ecdh_brainpoolp512t1_5233", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5233_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5233_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5233_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 3028 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5234 for ECDH, tcId is 3029 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5234_peerpubkey[] = { 0x46, 0xb5, 0x11, 0x14, 0x45, 0xb2, 0xe7, 0xca, 0x1b, 0x2f, 0x4b, 0xe1, 0x4b, 0xc9, 0x79, 0x44, 0x36, 0x90, 0xc1, 0xc5, 0x50, 0x52, 0x1c, 0x8d, 0x6c, 0x33, 0x66, 0xe6, 0x19, 0xd1, 0xff, 0x15, 0x69, 0x6b, 0x98, 0xfb, 0xec, 0xe4, 0xf1, 0x46, 0xe6, 0x42, 0xf3, 0xcb, 0x0b, 0xe0, 0xc1, 0x2f, 0xe7, 0xd5, 0xd8, 0x3d, 0x5f, 0x81, 0xb2, 0xd5, 0x69, 0xba, 0x11, 0xcc, 0xf9, 0x54, 0x8e, 0xda, 0x57, 0x6c, 0xa2, 0xb7, 0xae, 0x26, 0x40, 0x2c, 0x0b, 0xb2, 0x4a, 0xd2, 0x1f, 0x66, 0xa4, 0xb2, 0xcc, 0xc1, 0x64, 0x83, 0x6b, 0xdc, 0x3a, 0x6b, 0x52, 0x1b, 0xd2, 0xab, 0x81, 0x45, 0xd2, 0x5c, 0x3c, 0xe7, 0x95, 0x14, 0xf4, 0xf0, 0xd7, 0x41, 0x09, 0x6c, 0x01, 0xfb, 0x4c, 0x61, 0x74, 0x58, 0x40, 0xa2, 0xc9, 0x67, 0x2d, 0x30, 0x14, 0xf0, 0x80, 0x12, 0x1f, 0xee, 0x8b, 0x0a, 0x07, 0x53, }; static const unsigned char ecdh_brainpoolp512t1_5234_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5234_sharedsecret[] = { 0x2a, 0xdd, 0xae, 0xd9, 0x87, 0xef, 0x65, 0x03, 0xfa, 0x36, 0xb7, 0x9e, 0x62, 0xbb, 0x63, 0xe2, 0xd3, 0x48, 0x1b, 0x9e, 0xd4, 0x51, 0x0f, 0x84, 0xe7, 0xbd, 0x46, 0x06, 0x76, 0xe8, 0x6d, 0x8e, 0x22, 0x7a, 0xc6, 0x9b, 0x9a, 0x7d, 0x2b, 0x21, 0x11, 0x19, 0xb0, 0x0e, 0xd2, 0xc2, 0x8f, 0xd9, 0x32, 0x0f, 0x92, 0x39, 0x4a, 0xf3, 0xd3, 0x60, 0x20, 0x86, 0x27, 0x6f, 0x26, 0xef, 0x24, 0xf8, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5234 = { .name = "ecdh_brainpoolp512t1_5234", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5234_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5234_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5234_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 3029 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5235 for ECDH, tcId is 3030 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5235_peerpubkey[] = { 0x2a, 0xee, 0x0e, 0xb0, 0xfb, 0xb7, 0xf3, 0xc7, 0xa3, 0x51, 0xf6, 0xe8, 0x40, 0x09, 0x54, 0xd9, 0xb9, 0xb7, 0x5e, 0xaa, 0x30, 0xd3, 0xa9, 0xd5, 0x7c, 0x88, 0x44, 0xe2, 0x4a, 0x76, 0x55, 0xae, 0xa6, 0x48, 0x7c, 0x8f, 0x5a, 0x59, 0x6d, 0x45, 0x4b, 0xcb, 0x99, 0x2a, 0xed, 0x9b, 0xbb, 0xba, 0xbf, 0xd3, 0xcf, 0xd7, 0x38, 0xf0, 0x4f, 0x4b, 0x19, 0x26, 0x40, 0x83, 0xa4, 0xd2, 0x81, 0xb3, 0x4c, 0x84, 0xc3, 0x93, 0xe8, 0x69, 0x79, 0x0e, 0x10, 0x2a, 0x7c, 0x80, 0x06, 0x86, 0x54, 0x83, 0x4e, 0x10, 0x70, 0x5f, 0x63, 0x60, 0xb5, 0xea, 0x71, 0x7e, 0x2c, 0x3f, 0x6d, 0xfc, 0x55, 0xbb, 0x2d, 0x39, 0xfe, 0x7c, 0xb8, 0xf1, 0xdd, 0x24, 0xdf, 0x7b, 0xe8, 0xf7, 0x98, 0x41, 0x4b, 0xf7, 0xae, 0x0c, 0xa0, 0x6f, 0xf4, 0xf8, 0x3c, 0x04, 0x42, 0x4f, 0xf8, 0x9b, 0x9d, 0xe4, 0x58, 0x81, }; static const unsigned char ecdh_brainpoolp512t1_5235_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5235_sharedsecret[] = { 0x27, 0x77, 0x8b, 0x9d, 0x52, 0x12, 0xdc, 0xcc, 0xb3, 0xb3, 0xff, 0xbb, 0x5d, 0xe8, 0x5e, 0xf7, 0xd2, 0x55, 0x75, 0xbf, 0xee, 0x40, 0x72, 0x07, 0x43, 0x42, 0x32, 0x84, 0xa3, 0x9e, 0xbb, 0x7f, 0x58, 0x99, 0x1b, 0x64, 0x71, 0x4e, 0x21, 0x4d, 0xcf, 0xb1, 0xa4, 0xea, 0xbb, 0xfd, 0x17, 0x68, 0x19, 0x39, 0xb1, 0xb6, 0x34, 0x25, 0x7c, 0xc9, 0xb7, 0x85, 0xe1, 0xa2, 0x43, 0x73, 0x82, 0xec, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5235 = { .name = "ecdh_brainpoolp512t1_5235", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5235_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5235_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5235_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 3030 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5236 for ECDH, tcId is 3031 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5236_peerpubkey[] = { 0x49, 0x15, 0x2d, 0xaa, 0x23, 0x06, 0x76, 0x54, 0xfa, 0xd8, 0x51, 0x47, 0x3f, 0x0f, 0x2b, 0x76, 0x9d, 0x73, 0x92, 0x30, 0xa7, 0x35, 0xc2, 0x00, 0xce, 0xbb, 0xaf, 0x6d, 0xa0, 0x21, 0x5c, 0x1d, 0xc9, 0x83, 0xe3, 0x43, 0x0e, 0x0c, 0xd2, 0xc8, 0x93, 0x00, 0x7e, 0x30, 0xce, 0xcf, 0xb3, 0xc0, 0x04, 0x20, 0x68, 0x1f, 0x59, 0xe9, 0xb8, 0xd9, 0x93, 0x24, 0xac, 0x13, 0xd2, 0x39, 0xaf, 0x2b, 0x0a, 0xce, 0x04, 0x76, 0x57, 0xc3, 0x4f, 0x4f, 0xba, 0xb4, 0xae, 0xec, 0x45, 0xf5, 0x6e, 0x97, 0xe1, 0x88, 0x52, 0x06, 0x21, 0xe7, 0xf1, 0x2d, 0x2d, 0x65, 0x14, 0x77, 0x8e, 0x7a, 0x76, 0x2f, 0x83, 0x57, 0xbe, 0x3f, 0x8f, 0x7a, 0x84, 0x44, 0xc9, 0xad, 0x71, 0xbd, 0x01, 0xaa, 0x91, 0xe1, 0x0d, 0x97, 0x7a, 0xec, 0xb0, 0x84, 0x47, 0xeb, 0x09, 0x24, 0xa5, 0x6b, 0x43, 0x71, 0x47, 0x22, }; static const unsigned char ecdh_brainpoolp512t1_5236_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5236_sharedsecret[] = { 0x5d, 0x9f, 0x31, 0x5d, 0xf9, 0xae, 0x91, 0x4b, 0xb0, 0x4b, 0xd6, 0xee, 0x81, 0xc2, 0xed, 0xfb, 0x7e, 0x8a, 0x6d, 0x15, 0xa1, 0x88, 0x8c, 0x08, 0x34, 0x2a, 0x64, 0xa5, 0x8f, 0x68, 0xfb, 0x69, 0x9a, 0x9a, 0xc9, 0x8d, 0x1c, 0xbc, 0x99, 0x9a, 0x8e, 0x34, 0x4f, 0xa6, 0x91, 0xb2, 0xe6, 0x57, 0xaf, 0x99, 0xad, 0x8d, 0x4c, 0xdb, 0x61, 0xa1, 0x69, 0xe7, 0xdc, 0xde, 0xdf, 0x76, 0x62, 0xe6, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5236 = { .name = "ecdh_brainpoolp512t1_5236", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5236_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5236_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5236_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 3031 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5237 for ECDH, tcId is 3032 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5237_peerpubkey[] = { 0x2f, 0x5a, 0xad, 0x21, 0x2c, 0x7f, 0x12, 0x05, 0xa4, 0x22, 0x93, 0xc8, 0xe7, 0x98, 0x11, 0x6a, 0xeb, 0x9c, 0x30, 0x02, 0xd9, 0x8b, 0x92, 0x43, 0xec, 0xc6, 0xaa, 0x75, 0x92, 0x5d, 0x33, 0x93, 0x8e, 0x89, 0xfc, 0xbf, 0xa2, 0xec, 0xf3, 0xb5, 0xd1, 0xd1, 0x2a, 0xcb, 0xcb, 0xb8, 0x5a, 0x55, 0x1c, 0x85, 0x0a, 0x21, 0xd7, 0x55, 0x29, 0x4e, 0x6c, 0x51, 0xe1, 0x23, 0x62, 0x8d, 0x31, 0x7f, 0x1a, 0x69, 0xf7, 0xe5, 0x15, 0xfa, 0xf8, 0xe6, 0x4b, 0x25, 0xe0, 0xc5, 0x42, 0x62, 0xb5, 0x2e, 0xd6, 0x35, 0x91, 0xb4, 0x84, 0x15, 0x5f, 0x4d, 0x44, 0xfe, 0x8d, 0xe1, 0xdb, 0x1e, 0xef, 0x4b, 0xa8, 0xfe, 0x19, 0x71, 0xda, 0x8c, 0x46, 0x41, 0x8c, 0xb4, 0x89, 0xe2, 0x43, 0x95, 0x2b, 0x37, 0xc2, 0x1d, 0x4e, 0x08, 0x3b, 0x8b, 0x52, 0x11, 0x04, 0x01, 0x34, 0x73, 0x96, 0x21, 0x72, 0x82, }; static const unsigned char ecdh_brainpoolp512t1_5237_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5237_sharedsecret[] = { 0x3e, 0xb0, 0x7a, 0xa6, 0x1d, 0x20, 0xb4, 0xb0, 0x45, 0x65, 0x43, 0xf8, 0x6b, 0x27, 0xe5, 0x70, 0x10, 0x00, 0xfd, 0x19, 0x64, 0x28, 0x58, 0x93, 0x6b, 0x3c, 0xa4, 0xca, 0x30, 0x79, 0x7e, 0x9e, 0xc9, 0xd5, 0x3b, 0x40, 0xf3, 0x88, 0x68, 0x0b, 0xea, 0xc4, 0x0c, 0x00, 0x8c, 0x38, 0x7f, 0x1e, 0x70, 0xb7, 0x65, 0x81, 0xe1, 0x7b, 0xfb, 0x5a, 0xe6, 0x42, 0xf3, 0x16, 0x74, 0x61, 0xb3, 0xa2, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5237 = { .name = "ecdh_brainpoolp512t1_5237", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5237_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5237_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5237_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 3032 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5238 for ECDH, tcId is 3033 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5238_peerpubkey[] = { 0x5c, 0x22, 0x2e, 0xc3, 0x2f, 0x38, 0xf1, 0x53, 0x20, 0xc5, 0x1a, 0x45, 0x9a, 0xbe, 0xf9, 0x21, 0x0e, 0xec, 0x92, 0x1c, 0xe0, 0xfd, 0x00, 0x5d, 0x9c, 0xac, 0x78, 0x1a, 0x77, 0x2a, 0x9c, 0x32, 0xe1, 0xc0, 0x73, 0xb7, 0x19, 0x4e, 0x90, 0x35, 0x8f, 0xec, 0x34, 0xb9, 0x5b, 0x05, 0xfa, 0xb3, 0x02, 0x4a, 0x64, 0xb8, 0x23, 0x9a, 0x1c, 0x23, 0xef, 0xce, 0x7b, 0x06, 0xd8, 0x57, 0xac, 0x6d, 0x75, 0x64, 0xeb, 0x81, 0xd2, 0x8e, 0xc8, 0x8b, 0x41, 0x66, 0x92, 0xdb, 0x03, 0x52, 0x69, 0xfd, 0xe4, 0x1c, 0xaa, 0xc8, 0xd2, 0x29, 0x16, 0xa4, 0x6c, 0xf6, 0x78, 0x25, 0x86, 0x49, 0x0f, 0x84, 0xcf, 0x7e, 0x04, 0x49, 0xb2, 0x76, 0xa3, 0x18, 0x5d, 0x70, 0xac, 0xaa, 0x79, 0x2c, 0x9f, 0xaf, 0xd6, 0xef, 0x1d, 0xd1, 0x73, 0x76, 0x0f, 0x22, 0xf4, 0xe3, 0x56, 0x17, 0x43, 0x5e, 0x42, 0xc8, }; static const unsigned char ecdh_brainpoolp512t1_5238_privkey[] = { 0x70, 0x86, 0x71, 0xbb, 0x68, 0xdf, 0xf1, 0xe2, 0x77, 0x1a, 0x9f, 0x5a, 0x9b, 0x89, 0x49, 0xcb, 0x1c, 0xa1, 0x2b, 0x63, 0xb2, 0xb6, 0xe6, 0x89, 0x0a, 0x2c, 0x93, 0xa0, 0x5e, 0xed, 0x0b, 0x7b, 0x12, 0xfc, 0xc0, 0x4b, 0xb1, 0x64, 0xdd, 0x25, 0x57, 0x84, 0x85, 0xe6, 0x3b, 0x8e, 0x36, 0x68, 0x80, 0x33, 0xd3, 0xa4, 0xe8, 0x04, 0xbc, 0xcd, 0xc7, 0xd1, 0xbd, 0xe4, 0xe4, 0xbf, 0x7f, 0x59, }; static const unsigned char ecdh_brainpoolp512t1_5238_sharedsecret[] = { 0x5e, 0x15, 0x4e, 0xa0, 0xc2, 0x49, 0x07, 0x11, 0x2e, 0x72, 0x5f, 0x1c, 0xa3, 0x48, 0xc6, 0xd9, 0x88, 0x94, 0x2b, 0x70, 0x36, 0xaa, 0x32, 0x6a, 0xa6, 0x77, 0x8e, 0xd7, 0x72, 0x8b, 0xd0, 0x53, 0x9e, 0x74, 0xe9, 0x65, 0xc8, 0x73, 0x4a, 0xf4, 0xf5, 0xe5, 0x4e, 0xcc, 0x46, 0x78, 0xc2, 0x79, 0xe7, 0xab, 0x85, 0x16, 0xad, 0x44, 0x50, 0x6f, 0xf9, 0x37, 0x10, 0xec, 0x7e, 0x55, 0xc9, 0x9e, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5238 = { .name = "ecdh_brainpoolp512t1_5238", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5238_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5238_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5238_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 3033 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5239 for ECDH, tcId is 3034 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5239_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5239_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_brainpoolp512t1_5239_sharedsecret[] = { 0x12, 0xb8, 0xf0, 0x05, 0xde, 0x7e, 0x6b, 0xe9, 0x4e, 0x50, 0xaf, 0xde, 0xda, 0xf1, 0x41, 0x41, 0x98, 0xd9, 0xe3, 0xd7, 0xc4, 0xe9, 0xfc, 0xf9, 0x14, 0x11, 0x10, 0x4b, 0xfa, 0x69, 0x53, 0xa5, 0xcc, 0x72, 0xac, 0xd0, 0x6a, 0xa0, 0x61, 0xc4, 0x76, 0xaf, 0xfd, 0x45, 0x88, 0x04, 0xfb, 0x50, 0x70, 0xaa, 0x2a, 0x85, 0x26, 0x5d, 0x6b, 0x38, 0xa0, 0xc8, 0xb4, 0xcf, 0x0c, 0x1b, 0xcf, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5239 = { .name = "ecdh_brainpoolp512t1_5239", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5239_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5239_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5239_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3034 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5240 for ECDH, tcId is 3035 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5240_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5240_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512t1_5240_sharedsecret[] = { 0x43, 0x67, 0x7f, 0xd0, 0xb1, 0x36, 0x5e, 0x97, 0x1c, 0x06, 0xe2, 0xbf, 0xf5, 0xbf, 0x1d, 0xdc, 0x0e, 0xf9, 0x33, 0xc2, 0xfc, 0xca, 0x25, 0x12, 0xa0, 0xd3, 0x59, 0x0c, 0xb3, 0x9a, 0x00, 0x0f, 0x2c, 0xa8, 0x22, 0xa6, 0x27, 0x4e, 0xab, 0x37, 0x6d, 0x79, 0xdc, 0x5b, 0x66, 0x15, 0xe5, 0xdf, 0x8f, 0x1f, 0xe7, 0x9d, 0x4b, 0x3b, 0x8c, 0x97, 0x82, 0x86, 0xf7, 0xaa, 0xb4, 0x60, 0xaf, 0xdf, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5240 = { .name = "ecdh_brainpoolp512t1_5240", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5240_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5240_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5240_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3035 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5241 for ECDH, tcId is 3036 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5241_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5241_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5241_sharedsecret[] = { 0x78, 0x5a, 0xe4, 0x98, 0x19, 0xf9, 0x1d, 0x09, 0xad, 0xe5, 0xe2, 0x46, 0xfe, 0x4a, 0x10, 0x98, 0x49, 0xcb, 0x6d, 0x6a, 0x4f, 0x44, 0x9e, 0x2e, 0x1d, 0xca, 0xd0, 0xac, 0x7b, 0x77, 0x20, 0x6f, 0x5e, 0x9e, 0x2e, 0x8e, 0xa1, 0xe9, 0xc0, 0x46, 0x12, 0x5e, 0x32, 0x08, 0x98, 0x39, 0x37, 0x7f, 0x0d, 0x5f, 0x64, 0x15, 0x87, 0xc2, 0xc8, 0xa1, 0x0c, 0x64, 0xb6, 0xd1, 0xc1, 0x5f, 0x9c, 0xff, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5241 = { .name = "ecdh_brainpoolp512t1_5241", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5241_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5241_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5241_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3036 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5242 for ECDH, tcId is 3037 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5242_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5242_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_brainpoolp512t1_5242_sharedsecret[] = { 0x23, 0x3e, 0x7e, 0x7b, 0x98, 0x42, 0x09, 0x42, 0x61, 0xb0, 0xbb, 0x71, 0x68, 0x40, 0x23, 0x6b, 0xfa, 0x57, 0xd6, 0x3e, 0x37, 0x10, 0x2b, 0x8e, 0xf6, 0x8d, 0x7a, 0xc4, 0xe6, 0xb6, 0x15, 0x7c, 0x2e, 0x30, 0xb0, 0x81, 0xc8, 0xf3, 0x8a, 0xc2, 0x49, 0xbf, 0x98, 0xea, 0x0e, 0xf6, 0x82, 0xe2, 0x4c, 0xe3, 0x98, 0x28, 0x18, 0x89, 0x92, 0xe0, 0x4f, 0x8e, 0x4c, 0xa3, 0x2f, 0x80, 0x9b, 0x99, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5242 = { .name = "ecdh_brainpoolp512t1_5242", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5242_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5242_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5242_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3037 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5243 for ECDH, tcId is 3038 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5243_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5243_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5243_sharedsecret[] = { 0x84, 0xa5, 0xb8, 0xcd, 0xa5, 0xb6, 0x3d, 0x7d, 0xf7, 0x50, 0xc8, 0xc6, 0x56, 0xab, 0xdb, 0xf2, 0x6c, 0x89, 0xa6, 0x79, 0xb2, 0x08, 0xb0, 0xcb, 0xf3, 0x27, 0x17, 0x84, 0xba, 0x7f, 0x6c, 0x5a, 0xb7, 0x41, 0x36, 0xb5, 0xca, 0xb2, 0x4e, 0x83, 0xf8, 0x2f, 0x9d, 0x55, 0x33, 0x86, 0xd8, 0x94, 0xda, 0x78, 0xde, 0x9b, 0x75, 0x85, 0x01, 0x6d, 0x56, 0xd0, 0x47, 0x48, 0xee, 0x09, 0x5e, 0x67, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5243 = { .name = "ecdh_brainpoolp512t1_5243", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5243_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5243_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5243_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3038 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5244 for ECDH, tcId is 3039 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5244_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5244_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdc, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512t1_5244_sharedsecret[] = { 0x55, 0x03, 0x81, 0x5c, 0x93, 0x64, 0x1c, 0xd0, 0x12, 0xbf, 0xbe, 0xa8, 0xf2, 0x93, 0xe9, 0xbf, 0x4f, 0x2d, 0x41, 0x10, 0xb6, 0x60, 0xcc, 0x08, 0x0f, 0x17, 0xe6, 0x23, 0xc3, 0xfc, 0xa8, 0x59, 0x77, 0x91, 0xb4, 0x1f, 0x84, 0xf8, 0x56, 0xa0, 0xea, 0x29, 0x02, 0xfe, 0x51, 0x6f, 0xac, 0x4c, 0xe8, 0xe3, 0xcf, 0x19, 0x08, 0xc9, 0x00, 0xae, 0x30, 0x4c, 0x2c, 0xa2, 0x2e, 0x0e, 0x7a, 0xe5, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5244 = { .name = "ecdh_brainpoolp512t1_5244", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5244_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5244_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5244_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3039 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5245 for ECDH, tcId is 3040 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5245_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5245_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x77, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512t1_5245_sharedsecret[] = { 0x4e, 0x00, 0xd6, 0x4d, 0x85, 0x1b, 0x94, 0x79, 0x49, 0xaf, 0x3f, 0xce, 0x19, 0xa4, 0x13, 0xd2, 0x09, 0xc4, 0x57, 0x0f, 0xbd, 0x02, 0x3c, 0x5b, 0x92, 0xd5, 0x34, 0xcc, 0x6b, 0xd0, 0xc1, 0x37, 0x8d, 0x8d, 0xdc, 0x0d, 0xc3, 0xe5, 0x40, 0x71, 0x31, 0xd1, 0x7d, 0x57, 0xe7, 0xd9, 0xb9, 0x86, 0xb8, 0xb3, 0x48, 0x5f, 0xf9, 0x8f, 0xdf, 0x46, 0x0f, 0xaf, 0x9f, 0xff, 0xbe, 0x59, 0x55, 0xf0, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5245 = { .name = "ecdh_brainpoolp512t1_5245", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5245_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5245_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5245_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3040 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5246 for ECDH, tcId is 3041 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5246_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5246_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x7f, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512t1_5246_sharedsecret[] = { 0x09, 0xf1, 0x4c, 0xa5, 0x70, 0x89, 0x94, 0x90, 0xd1, 0x2d, 0xda, 0x0b, 0xcc, 0x82, 0x9d, 0xc8, 0xdf, 0x39, 0xf4, 0xb0, 0x08, 0x67, 0xf0, 0x78, 0x1a, 0x6c, 0x23, 0x56, 0x8b, 0x01, 0x0d, 0x89, 0x28, 0xed, 0xc0, 0xfc, 0x06, 0x02, 0x07, 0x89, 0x1a, 0xf5, 0xc2, 0x63, 0xb6, 0x77, 0x4b, 0x89, 0x4b, 0xe7, 0x0d, 0xda, 0x4c, 0x2b, 0x4b, 0x30, 0x5b, 0xf5, 0x7a, 0x01, 0x07, 0x58, 0x74, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5246 = { .name = "ecdh_brainpoolp512t1_5246", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5246_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5246_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5246_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3041 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5247 for ECDH, tcId is 3042 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5247_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5247_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x81, 0x9c, 0xa9, 0x00, 0x69, }; static const unsigned char ecdh_brainpoolp512t1_5247_sharedsecret[] = { 0x3d, 0x25, 0xd4, 0x03, 0xe5, 0xde, 0xda, 0x27, 0xc4, 0x80, 0x4e, 0xee, 0x4c, 0x41, 0x1e, 0xb2, 0x24, 0x08, 0x0f, 0x2c, 0x2b, 0xc8, 0x2c, 0x3b, 0x94, 0xe9, 0xd0, 0x0c, 0x50, 0xe3, 0x9b, 0xbd, 0x9b, 0xf5, 0xef, 0xdd, 0x34, 0x87, 0x1a, 0x64, 0xaf, 0xc1, 0xe7, 0xf6, 0x27, 0x08, 0xdc, 0x95, 0xf0, 0xa3, 0xb7, 0xfb, 0x82, 0x51, 0x8d, 0xc5, 0xb3, 0xaa, 0xd9, 0x4a, 0xd7, 0x2d, 0x11, 0xed, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5247 = { .name = "ecdh_brainpoolp512t1_5247", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5247_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5247_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5247_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3042 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5248 for ECDH, tcId is 3043 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5248_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5248_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x3b, }; static const unsigned char ecdh_brainpoolp512t1_5248_sharedsecret[] = { 0x71, 0xf9, 0x26, 0x5f, 0xcb, 0x0a, 0x1a, 0x89, 0x9c, 0x5a, 0x3c, 0x8d, 0xc3, 0x1d, 0x2f, 0xc3, 0xc8, 0x79, 0x55, 0x28, 0x56, 0x87, 0xe7, 0x39, 0x28, 0xaa, 0xb9, 0xc5, 0xcc, 0x75, 0x0a, 0x83, 0x76, 0x02, 0x92, 0xd5, 0x14, 0xd4, 0xcd, 0xe4, 0x57, 0xfc, 0x8e, 0x05, 0xbb, 0x49, 0xea, 0xc1, 0xfb, 0x67, 0x7f, 0xfa, 0x5f, 0x9d, 0xc9, 0xfa, 0x62, 0xe1, 0x12, 0x6a, 0x9e, 0xde, 0xd5, 0xa4, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5248 = { .name = "ecdh_brainpoolp512t1_5248", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5248_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5248_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5248_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3043 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5249 for ECDH, tcId is 3044 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5249_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5249_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x5b, }; static const unsigned char ecdh_brainpoolp512t1_5249_sharedsecret[] = { 0x79, 0xcc, 0x52, 0xb0, 0x5b, 0x94, 0x2d, 0xec, 0x98, 0x4e, 0xa1, 0xd8, 0x86, 0x75, 0xfc, 0xff, 0x93, 0xf8, 0x71, 0x03, 0xb5, 0x8b, 0xd0, 0xf7, 0x15, 0x3c, 0x7b, 0x36, 0xb2, 0x05, 0xea, 0x39, 0xf9, 0x9e, 0x85, 0x01, 0x7e, 0x97, 0xba, 0x89, 0x72, 0x6d, 0x15, 0xe7, 0xd7, 0xfe, 0x5e, 0xb1, 0x52, 0x58, 0x27, 0x01, 0x1b, 0x38, 0x52, 0xe1, 0x12, 0x17, 0x53, 0xde, 0xa1, 0x5c, 0xfb, 0xb9, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5249 = { .name = "ecdh_brainpoolp512t1_5249", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5249_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5249_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5249_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3044 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5250 for ECDH, tcId is 3045 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5250_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5250_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x63, }; static const unsigned char ecdh_brainpoolp512t1_5250_sharedsecret[] = { 0x61, 0x8f, 0x57, 0xd9, 0x71, 0xef, 0xa6, 0x05, 0xcb, 0x14, 0x19, 0x93, 0xa1, 0x14, 0x9d, 0xff, 0x87, 0xd0, 0x1c, 0x77, 0x3f, 0xb8, 0xf2, 0xa8, 0xdb, 0x57, 0x26, 0xeb, 0x17, 0x03, 0x52, 0x25, 0x68, 0xcc, 0x55, 0xab, 0xca, 0x61, 0x6d, 0xae, 0x57, 0x27, 0xf3, 0x90, 0xc9, 0x0c, 0xfa, 0x79, 0x2d, 0x43, 0x49, 0x85, 0x68, 0x20, 0xf2, 0xd0, 0xb5, 0xdf, 0x7d, 0xa4, 0x18, 0x32, 0x8e, 0x7f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5250 = { .name = "ecdh_brainpoolp512t1_5250", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5250_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5250_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5250_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3045 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5251 for ECDH, tcId is 3046 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5251_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5251_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x66, }; static const unsigned char ecdh_brainpoolp512t1_5251_sharedsecret[] = { 0x12, 0xb8, 0xf0, 0x05, 0xde, 0x7e, 0x6b, 0xe9, 0x4e, 0x50, 0xaf, 0xde, 0xda, 0xf1, 0x41, 0x41, 0x98, 0xd9, 0xe3, 0xd7, 0xc4, 0xe9, 0xfc, 0xf9, 0x14, 0x11, 0x10, 0x4b, 0xfa, 0x69, 0x53, 0xa5, 0xcc, 0x72, 0xac, 0xd0, 0x6a, 0xa0, 0x61, 0xc4, 0x76, 0xaf, 0xfd, 0x45, 0x88, 0x04, 0xfb, 0x50, 0x70, 0xaa, 0x2a, 0x85, 0x26, 0x5d, 0x6b, 0x38, 0xa0, 0xc8, 0xb4, 0xcf, 0x0c, 0x1b, 0xcf, 0x72, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5251 = { .name = "ecdh_brainpoolp512t1_5251", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5251_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5251_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5251_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3046 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5252 for ECDH, tcId is 3047 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5252_peerpubkey[] = { 0x24, 0x27, 0x48, 0xb1, 0xfa, 0x44, 0xed, 0xac, 0x41, 0x3a, 0x79, 0xee, 0x1c, 0xdc, 0xc3, 0xd4, 0xba, 0xb5, 0xfa, 0x12, 0x5d, 0x4d, 0x69, 0x22, 0x08, 0xac, 0x52, 0x76, 0x43, 0x77, 0xb8, 0x4f, 0xe3, 0x47, 0x2d, 0xbe, 0x8f, 0x29, 0x25, 0x72, 0xf1, 0xf3, 0xdb, 0xf3, 0xe9, 0x27, 0x62, 0x4d, 0x98, 0x3d, 0x5c, 0x0f, 0x4b, 0xfc, 0xa5, 0x22, 0x4d, 0xc0, 0x73, 0x98, 0x89, 0xdd, 0xd0, 0x79, 0x3d, 0x1f, 0x20, 0x89, 0x63, 0x99, 0x92, 0xa7, 0x4a, 0x3c, 0x17, 0x83, 0xd2, 0xf1, 0xbd, 0x50, 0xf8, 0x5a, 0xd7, 0x75, 0x40, 0xad, 0xfa, 0x78, 0xb1, 0xa6, 0x58, 0x1b, 0xcd, 0x74, 0xb3, 0xef, 0x0d, 0xd9, 0x96, 0xbe, 0x28, 0x09, 0xed, 0x16, 0x43, 0x4c, 0x42, 0xb3, 0xa2, 0x9c, 0xb8, 0x1b, 0x1a, 0x39, 0x72, 0x0c, 0xed, 0xe1, 0xb6, 0x40, 0xf0, 0x18, 0x78, 0x8a, 0xfa, 0x61, 0xcb, 0xed, }; static const unsigned char ecdh_brainpoolp512t1_5252_privkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x70, 0x55, 0x3e, 0x5c, 0x41, 0x4c, 0xa9, 0x26, 0x19, 0x41, 0x86, 0x61, 0x19, 0x7f, 0xac, 0x10, 0x47, 0x1d, 0xb1, 0xd3, 0x81, 0x08, 0x5d, 0xda, 0xdd, 0xb5, 0x87, 0x96, 0x82, 0x9c, 0xa9, 0x00, 0x67, }; static const unsigned char ecdh_brainpoolp512t1_5252_sharedsecret[] = { 0x34, 0x99, 0x8a, 0x16, 0x2b, 0x04, 0x63, 0xd8, 0x1a, 0x96, 0xdd, 0xa6, 0xc4, 0xe2, 0x56, 0xb9, 0x4e, 0xd3, 0x5f, 0x89, 0xcb, 0x0b, 0x69, 0xa9, 0xaf, 0x70, 0x12, 0x3b, 0xec, 0x61, 0xb3, 0x87, 0xbb, 0x35, 0x84, 0x51, 0xe1, 0x99, 0x4d, 0x6c, 0x29, 0xac, 0xbe, 0xc6, 0x6c, 0x50, 0xc6, 0x1f, 0x36, 0xb6, 0x6d, 0xa3, 0x37, 0x82, 0xdb, 0x21, 0x52, 0x14, 0x15, 0x95, 0x2b, 0x55, 0xfa, 0x48, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5252 = { .name = "ecdh_brainpoolp512t1_5252", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5252_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5252_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5252_sharedsecret, .sharedsecretlen = 64, .result = 1, .comment = "edge case private key, tcId is 3047 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5253 for ECDH, tcId is 3048 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5253_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5253_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5253 = { .name = "ecdh_brainpoolp512t1_5253", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5253_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5253_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3048 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5254 for ECDH, tcId is 3049 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5254_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512t1_5254_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5254 = { .name = "ecdh_brainpoolp512t1_5254", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5254_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5254_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3049 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5255 for ECDH, tcId is 3050 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5255_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512t1_5255_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5255 = { .name = "ecdh_brainpoolp512t1_5255", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5255_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5255_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3050 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5256 for ECDH, tcId is 3051 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5256_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512t1_5256_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5256 = { .name = "ecdh_brainpoolp512t1_5256", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5256_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5256_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3051 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5257 for ECDH, tcId is 3052 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5257_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5257_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5257 = { .name = "ecdh_brainpoolp512t1_5257", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5257_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5257_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3052 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5258 for ECDH, tcId is 3053 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5258_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512t1_5258_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5258 = { .name = "ecdh_brainpoolp512t1_5258", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5258_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5258_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3053 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5259 for ECDH, tcId is 3054 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5259_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512t1_5259_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5259 = { .name = "ecdh_brainpoolp512t1_5259", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5259_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5259_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3054 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5260 for ECDH, tcId is 3055 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5260_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512t1_5260_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5260 = { .name = "ecdh_brainpoolp512t1_5260", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5260_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5260_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3055 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5261 for ECDH, tcId is 3056 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5261_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5261_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5261 = { .name = "ecdh_brainpoolp512t1_5261", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5261_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5261_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3056 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5262 for ECDH, tcId is 3057 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5262_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512t1_5262_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5262 = { .name = "ecdh_brainpoolp512t1_5262", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5262_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5262_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3057 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5263 for ECDH, tcId is 3058 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5263_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512t1_5263_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5263 = { .name = "ecdh_brainpoolp512t1_5263", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5263_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5263_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3058 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5264 for ECDH, tcId is 3059 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5264_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512t1_5264_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5264 = { .name = "ecdh_brainpoolp512t1_5264", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5264_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5264_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3059 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5265 for ECDH, tcId is 3060 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5265_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5265_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5265 = { .name = "ecdh_brainpoolp512t1_5265", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5265_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5265_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3060 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5266 for ECDH, tcId is 3061 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5266_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_brainpoolp512t1_5266_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5266 = { .name = "ecdh_brainpoolp512t1_5266", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5266_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5266_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3061 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5267 for ECDH, tcId is 3062 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5267_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf2, }; static const unsigned char ecdh_brainpoolp512t1_5267_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5267 = { .name = "ecdh_brainpoolp512t1_5267", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5267_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5267_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3062 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5268 for ECDH, tcId is 3063 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5268_peerpubkey[] = { 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, 0xaa, 0xdd, 0x9d, 0xb8, 0xdb, 0xe9, 0xc4, 0x8b, 0x3f, 0xd4, 0xe6, 0xae, 0x33, 0xc9, 0xfc, 0x07, 0xcb, 0x30, 0x8d, 0xb3, 0xb3, 0xc9, 0xd2, 0x0e, 0xd6, 0x63, 0x9c, 0xca, 0x70, 0x33, 0x08, 0x71, 0x7d, 0x4d, 0x9b, 0x00, 0x9b, 0xc6, 0x68, 0x42, 0xae, 0xcd, 0xa1, 0x2a, 0xe6, 0xa3, 0x80, 0xe6, 0x28, 0x81, 0xff, 0x2f, 0x2d, 0x82, 0xc6, 0x85, 0x28, 0xaa, 0x60, 0x56, 0x58, 0x3a, 0x48, 0xf3, }; static const unsigned char ecdh_brainpoolp512t1_5268_privkey[] = { 0x14, 0x5c, 0x39, 0xbd, 0x01, 0xe3, 0x6c, 0x6a, 0x69, 0x7a, 0x49, 0xdd, 0x72, 0xf5, 0x40, 0x74, 0x1c, 0x8a, 0x60, 0xdd, 0x57, 0xe6, 0x07, 0xe1, 0xe0, 0x5f, 0x34, 0x01, 0xe7, 0x9d, 0x2f, 0xeb, 0xf8, 0x3e, 0x7c, 0x1b, 0xcb, 0xc5, 0x35, 0xde, 0xb3, 0xd2, 0x15, 0xca, 0xae, 0x94, 0xbe, 0x83, 0x56, 0x7f, 0x99, 0x45, 0x31, 0x90, 0x5f, 0x4d, 0x83, 0xee, 0x30, 0x9c, 0x0c, 0xec, 0x9b, 0xcc, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5268 = { .name = "ecdh_brainpoolp512t1_5268", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5268_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5268_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 3063 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5269 for ECDH, tcId is 3065 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5269_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7f, }; static const unsigned char ecdh_brainpoolp512t1_5269_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5269 = { .name = "ecdh_brainpoolp512t1_5269", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5269_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5269_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 3065 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5270 for ECDH, tcId is 3066 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5270_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_brainpoolp512t1_5270_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5270 = { .name = "ecdh_brainpoolp512t1_5270", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5270_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5270_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 3066 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5271 for ECDH, tcId is 3069 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5271_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5271_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5271_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5271 = { .name = "ecdh_brainpoolp512t1_5271", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5271_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5271_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5271_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 1, tcId is 3069 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5272 for ECDH, tcId is 3070 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5272_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5272_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5272_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5272 = { .name = "ecdh_brainpoolp512t1_5272", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5272_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5272_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5272_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "order = 2083592630841357761914050861997332755048435564175796348448981807380927961881602771668457829077617488768289656930144243078095422967775269405300354, tcId is 3070 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5273 for ECDH, tcId is 3071 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5273_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5273_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5273_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5273 = { .name = "ecdh_brainpoolp512t1_5273", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5273_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5273_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5273_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator = (0,0), tcId is 3071 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5274 for ECDH, tcId is 3072 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5274_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5274_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5274_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5274 = { .name = "ecdh_brainpoolp512t1_5274", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5274_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5274_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5274_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "generator not on curve, tcId is 3072 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5275 for ECDH, tcId is 3075 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5275_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5275_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5275_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5275 = { .name = "ecdh_brainpoolp512t1_5275", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5275_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5275_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5275_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = 2, tcId is 3075 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5276 for ECDH, tcId is 3077 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5276_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5276_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5276_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5276 = { .name = "ecdh_brainpoolp512t1_5276", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5276_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5276_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5276_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "cofactor = None, tcId is 3077 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5277 for ECDH, tcId is 3082 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5277_peerpubkey[] = { 0x1b, 0x79, 0xc3, 0xd2, 0x9e, 0xe8, 0xa8, 0xd0, 0x0d, 0x34, 0x90, 0xfb, 0x4a, 0x2b, 0x38, 0x03, 0x54, 0x0e, 0x27, 0xc1, 0x1d, 0xe4, 0x03, 0xc3, 0xa6, 0xf9, 0xbf, 0x74, 0xc4, 0x79, 0x94, 0x3f, 0x34, 0xd6, 0x71, 0x8a, 0x73, 0xd0, 0x6f, 0x9c, 0xbb, 0xc9, 0xde, 0x9c, 0x48, 0xec, 0xff, 0xd8, 0x9d, 0xe9, 0x5c, 0xb9, 0x11, 0x26, 0xa4, 0xff, 0x79, 0x44, 0x6a, 0x20, 0x45, 0x1c, 0xcd, 0xab, 0x76, 0xbc, 0x2f, 0x96, 0x99, 0x4d, 0xee, 0xef, 0x1b, 0xc6, 0x0d, 0xa0, 0x87, 0x7c, 0x3a, 0xcc, 0x9a, 0x71, 0x1b, 0xbd, 0x8a, 0x5c, 0xa5, 0x86, 0x6f, 0xed, 0x75, 0x16, 0x15, 0x0e, 0xfd, 0xd5, 0x7b, 0x08, 0x9c, 0xad, 0xe7, 0x70, 0xaf, 0x74, 0x02, 0xae, 0xab, 0x08, 0x2c, 0x2b, 0x80, 0xcf, 0xd4, 0xfd, 0x7c, 0x92, 0x11, 0xed, 0xc8, 0x8d, 0x97, 0x8e, 0xbc, 0x94, 0x41, 0xd8, 0xa7, 0x7d, }; static const unsigned char ecdh_brainpoolp512t1_5277_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const unsigned char ecdh_brainpoolp512t1_5277_sharedsecret[] = { 0x56, 0x50, 0x7c, 0x88, 0x66, 0x2c, 0xc3, 0xd5, 0x43, 0xc7, 0x03, 0x8e, 0x14, 0xf3, 0xe6, 0x56, 0xc8, 0x77, 0x62, 0x8f, 0x75, 0x6a, 0x05, 0x60, 0x8c, 0x44, 0x54, 0x96, 0x91, 0xc6, 0xef, 0x38, 0x5a, 0x92, 0x20, 0xd5, 0xbb, 0x86, 0x45, 0xde, 0xd1, 0x73, 0xe1, 0xad, 0x3e, 0x2d, 0xb3, 0x90, 0xdf, 0x62, 0xac, 0x04, 0xcd, 0x32, 0x8a, 0x0d, 0x0d, 0xd4, 0xd8, 0x2e, 0x99, 0xcf, 0x3c, 0xfa, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5277 = { .name = "ecdh_brainpoolp512t1_5277", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5277_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5277_privkey, .privkeylen = 64, .sharedsecret = ecdh_brainpoolp512t1_5277_sharedsecret, .sharedsecretlen = 64, .result = 0, .comment = "a = 0, tcId is 3082 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5278 for ECDH, tcId is 3084 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5278_peerpubkey[] = { 0x9b, 0xd1, 0x01, 0x71, 0x66, 0x02, 0x65, 0xda, 0xb6, 0xc9, 0xe2, 0x5a, 0x9a, 0xf4, 0x2f, 0x1d, 0xfd, 0xc0, 0xad, 0x0b, 0x66, 0x4d, 0x7c, 0x93, 0x5b, 0x31, 0x74, 0x7f, 0xff, 0x72, 0x02, 0x2e, 0x4f, 0x83, 0x69, 0x71, 0x1a, 0x7f, 0x03, 0xc9, 0x64, 0xb9, 0xcf, 0xec, 0x33, 0xbb, 0xf0, 0x85, 0x65, 0x56, 0xc1, 0xca, 0x3c, 0xc1, 0x0d, 0xb6, 0x31, 0x7d, 0x2f, 0x20, 0xbf, 0x57, 0xfd, 0x21, 0x4e, 0x04, 0xb7, 0x66, 0xa6, 0xd8, 0xac, 0x26, 0xff, 0x3c, 0x8c, 0xfc, 0x78, 0xbf, 0x70, 0xbe, 0x14, 0x9f, 0x38, 0xc1, 0x72, 0x79, 0x31, 0x14, 0x3e, 0xb3, 0x71, 0xc2, 0x86, 0xe9, 0xcf, 0x14, 0xf3, 0xf2, 0xc2, 0xc5, 0xfe, 0x7c, 0xdb, 0x73, 0xc9, 0x3f, 0x26, 0x1c, 0x4f, 0x8c, 0x76, 0xa3, 0x8d, 0xa0, 0x76, 0x08, 0x0b, 0xe5, 0xac, 0x23, 0x3d, 0x07, 0xb2, 0xb6, 0xe7, 0x48, 0x98, 0xf9, }; static const unsigned char ecdh_brainpoolp512t1_5278_privkey[] = { 0x2c, 0x97, 0xc5, 0x26, 0x57, 0x98, 0x4e, 0xc1, 0xd9, 0x4e, 0x4d, 0x44, 0xa1, 0x60, 0x45, 0xd2, 0xac, 0x16, 0x04, 0xaf, 0x84, 0x55, 0x97, 0x0d, 0x96, 0x7a, 0xa0, 0x95, 0x92, 0x3a, 0x89, 0xa0, 0x0d, 0xf2, 0x0d, 0xb0, 0x23, 0xc6, 0xc0, 0x18, 0x68, 0x84, 0xec, 0x18, 0xa3, 0x46, 0xe3, 0xf6, 0x50, 0xcc, 0xe8, 0xa1, 0xb0, 0xa4, 0x17, 0x77, 0xe0, 0xc0, 0x9f, 0x2c, 0xbf, 0xfe, 0x55, 0x89, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5278 = { .name = "ecdh_brainpoolp512t1_5278", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5278_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5278_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public key on isomorphic curve brainpoolP512r1, tcId is 3084 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5279 for ECDH, tcId is 3095 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5279_peerpubkey[] = { 0x6c, 0xae, 0x8e, 0xb7, 0x45, 0xa4, 0x13, 0xb1, 0x2b, 0x41, 0x6e, 0x51, 0x1a, 0x01, 0x46, 0x1d, 0xfc, 0x4b, 0xe4, 0x3f, 0xdf, 0xef, 0xb6, 0x1d, 0x43, 0x91, 0xde, 0x41, 0xd8, 0x4b, 0x67, 0xe6, 0x05, 0x51, 0xb9, 0x00, 0x92, 0x13, 0x36, 0x8f, 0x26, 0x65, 0x27, 0x10, 0x12, 0x32, 0x5e, 0x9c, 0x1f, 0x23, 0x99, 0x0b, 0xab, 0xe3, 0x9b, 0x20, 0xb1, 0x8d, 0x63, 0xd7, 0x4c, 0x74, 0x83, 0x76, 0x43, 0xe7, 0x8e, 0x36, 0x1b, 0x59, 0xaf, 0x75, 0x4f, 0x47, 0x7e, 0x01, 0xeb, 0x2a, 0x7c, 0x12, 0x05, 0x96, 0xfd, 0x1f, 0x75, 0x5a, 0x8e, 0x57, 0xe4, 0x8b, 0xd6, 0x1c, 0x65, 0xe5, 0xb3, 0x28, 0x02, 0x53, 0x58, 0xd4, 0x55, 0xa9, 0x5a, 0x6b, 0x7a, 0x61, 0x23, 0xcc, 0x0c, 0x34, 0xdf, 0x10, 0x43, 0x4c, 0x4d, 0x08, 0xd2, 0xca, 0x95, 0x6f, 0x48, 0xcb, 0x71, 0x5c, 0xb8, 0x8f, 0x31, 0x91, }; static const unsigned char ecdh_brainpoolp512t1_5279_privkey[] = { 0x47, 0xc9, 0xd4, 0xae, 0x3e, 0xcf, 0xea, 0x82, 0x6f, 0x6f, 0xc9, 0x59, 0x1d, 0xd2, 0xe2, 0x58, 0x20, 0xa3, 0xfd, 0x96, 0xdc, 0xed, 0xb2, 0x2e, 0xd2, 0xcd, 0xb0, 0xf3, 0x0c, 0x69, 0xa3, 0x67, 0x62, 0xb5, 0x00, 0x18, 0x5c, 0x17, 0x0a, 0x70, 0x92, 0x10, 0x49, 0x88, 0x5d, 0x36, 0x0e, 0x51, 0xf6, 0xc1, 0x95, 0x03, 0xbd, 0x3d, 0x77, 0xbb, 0x96, 0xcc, 0xf5, 0x28, 0x5e, 0x25, 0x6b, 0xf1, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5279 = { .name = "ecdh_brainpoolp512t1_5279", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5279_peerpubkey, .peerpubkeylen = 128, .compressed = 0, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5279_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: brainpoolP512r1, tcId is 3095 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5280 for ECDH, tcId is 3100 in file ecdh_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) static const unsigned char ecdh_brainpoolp512t1_5280_peerpubkey[] = { 0x35, 0xe6, 0x7a, 0xfb, 0x6a, 0xf3, 0xdd, 0xf2, 0x99, 0x88, 0xa8, 0xc5, 0x71, 0x02, 0x2e, 0xdb, 0xe5, 0xbc, 0x69, 0xda, 0x07, 0xbc, 0x75, 0x2e, 0xfe, 0x22, 0x5c, 0xa4, 0x49, 0xb1, 0x23, 0xcf, 0x1f, 0x7d, 0xce, 0x24, 0x50, 0x69, 0x59, 0x7e, 0x4f, 0xb4, 0x9d, 0x08, 0x8f, 0x36, 0x75, 0x30, 0x59, 0x60, 0x19, 0x32, 0xeb, 0x62, 0x4e, 0xf2, 0x82, 0x21, 0xa5, 0xf1, 0xac, 0xf3, 0x8f, 0xf7, }; static const unsigned char ecdh_brainpoolp512t1_5280_privkey[] = { 0x90, 0xbd, 0x09, 0x5b, 0x9d, 0xce, 0xe0, 0x6a, 0xcf, 0x56, 0xc2, 0xe4, 0xc7, 0xb2, 0xc2, 0x5e, 0xcd, 0x9f, 0x24, 0xed, 0x86, 0xdd, 0x30, 0x5e, 0x9f, 0xa0, 0x35, 0x9f, 0x33, 0x39, 0x2e, 0xdd, 0x4e, 0xa3, 0xf2, 0x1b, 0x4b, 0xa7, 0x82, 0x89, 0x5b, 0x57, 0xae, 0x4d, 0x0d, 0x4e, 0xc5, 0x2a, 0x18, 0xdf, 0x0c, 0xf0, 0x76, 0xa0, 0xf8, 0xca, 0x96, 0x15, 0x77, 0x46, 0x6f, 0x66, 0x80, 0x5f, }; static const wycheproof_ecdh_test ecdh_brainpoolp512t1_5280 = { .name = "ecdh_brainpoolp512t1_5280", .ecdh_alg = ECCCDH, .curve = &brainpoolp512t1_str_params, .peerpubkey = ecdh_brainpoolp512t1_5280_peerpubkey, .peerpubkeylen = 64, .compressed = 2, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = ecdh_brainpoolp512t1_5280_privkey, .privkeylen = 64, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "invalid public key, tcId is 3100 in file ecdh_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) */ /* Test 5281 for ECDH, tcId is 1 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5281_peerpubkey[] = { 0x62, 0xd5, 0xbd, 0x33, 0x72, 0xaf, 0x75, 0xfe, 0x85, 0xa0, 0x40, 0x71, 0x5d, 0x0f, 0x50, 0x24, 0x28, 0xe0, 0x70, 0x46, 0x86, 0x8b, 0x0b, 0xfd, 0xfa, 0x61, 0xd7, 0x31, 0xaf, 0xe4, 0x4f, 0x26, 0xac, 0x33, 0x3a, 0x93, 0xa9, 0xe7, 0x0a, 0x81, 0xcd, 0x5a, 0x95, 0xb5, 0xbf, 0x8d, 0x13, 0x99, 0x0e, 0xb7, 0x41, 0xc8, 0xc3, 0x88, 0x72, 0xb4, 0xa0, 0x7d, 0x27, 0x5a, 0x01, 0x4e, 0x30, 0xcf, }; static const unsigned char ecdh_secp256r1_5281_ourpubkey[] = { 0xb5, 0x9c, 0xc7, 0x67, 0x1d, 0xd6, 0xa6, 0xb8, 0x36, 0xe2, 0xcd, 0x93, 0x96, 0xef, 0x56, 0x18, 0xb2, 0xff, 0x3e, 0x81, 0x92, 0xdd, 0x7c, 0x9d, 0x36, 0xc2, 0x7c, 0xb5, 0x6f, 0xf9, 0x16, 0x61, 0x48, 0x26, 0xd9, 0xdb, 0xd5, 0xae, 0x64, 0xcd, 0xd8, 0x57, 0x50, 0x68, 0xbb, 0xc9, 0xe6, 0x3f, 0x23, 0x1e, 0xa5, 0x7e, 0xd0, 0x32, 0x48, 0x84, 0x4c, 0x09, 0x33, 0x1b, 0x95, 0x39, 0x20, 0x53, }; static const unsigned char ecdh_secp256r1_5281_privkey[] = { 0x06, 0x12, 0x46, 0x5c, 0x89, 0xa0, 0x23, 0xab, 0x17, 0x85, 0x5b, 0x0a, 0x6b, 0xce, 0xbf, 0xd3, 0xfe, 0xbb, 0x53, 0xae, 0xf8, 0x41, 0x38, 0x64, 0x7b, 0x53, 0x52, 0xe0, 0x2c, 0x10, 0xc3, 0x46, }; static const unsigned char ecdh_secp256r1_5281_sharedsecret[] = { 0x53, 0x02, 0x0d, 0x90, 0x8b, 0x02, 0x19, 0x32, 0x8b, 0x65, 0x8b, 0x52, 0x5f, 0x26, 0x78, 0x0e, 0x3a, 0xe1, 0x2b, 0xcd, 0x95, 0x2b, 0xb2, 0x5a, 0x93, 0xbc, 0x08, 0x95, 0xe1, 0x71, 0x42, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256r1_5281 = { .name = "ecdh_secp256r1_5281", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5281_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5281_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5281_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5281_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5282 for ECDH, tcId is 2 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5282_peerpubkey[] = { 0x58, 0xfd, 0x41, 0x68, 0xa8, 0x77, 0x95, 0x60, 0x3e, 0x2b, 0x04, 0x39, 0x02, 0x85, 0xbd, 0xca, 0x6e, 0x57, 0xde, 0x60, 0x27, 0xfe, 0x21, 0x1d, 0xd9, 0xd2, 0x5e, 0x22, 0x12, 0xd2, 0x9e, 0x62, 0x08, 0x0d, 0x36, 0xbd, 0x22, 0x4d, 0x74, 0x05, 0x50, 0x92, 0x95, 0xee, 0xd0, 0x2a, 0x17, 0x15, 0x0e, 0x03, 0xb3, 0x14, 0xf9, 0x6d, 0xa3, 0x74, 0x45, 0xb0, 0xd1, 0xd2, 0x93, 0x77, 0xd1, 0x2c, }; static const unsigned char ecdh_secp256r1_5282_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5282_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5282_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5282 = { .name = "ecdh_secp256r1_5282", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5282_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5282_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5282_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5282_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 2 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5283 for ECDH, tcId is 3 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5283_peerpubkey[] = { 0x0f, 0x6d, 0x20, 0xc0, 0x42, 0x61, 0xec, 0xc3, 0xe9, 0x28, 0x46, 0xac, 0xad, 0x48, 0xdc, 0x8e, 0xc5, 0xee, 0x35, 0xae, 0x08, 0x83, 0xf0, 0xd2, 0xea, 0x71, 0x21, 0x69, 0x06, 0xee, 0x1c, 0x47, 0xc0, 0x42, 0x68, 0x9a, 0x99, 0x6d, 0xd1, 0x28, 0x30, 0xae, 0x45, 0x93, 0x82, 0xe9, 0x4a, 0xac, 0x56, 0xb7, 0x17, 0xaf, 0x2e, 0x20, 0x80, 0x21, 0x5f, 0x9e, 0x41, 0x94, 0x9b, 0x1f, 0x52, 0xbe, }; static const unsigned char ecdh_secp256r1_5283_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5283_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5283_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5283 = { .name = "ecdh_secp256r1_5283", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5283_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5283_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5283_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5283_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 3 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5284 for ECDH, tcId is 4 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5284_peerpubkey[] = { 0x00, 0xc7, 0xde, 0xfe, 0xb1, 0xa1, 0x62, 0x36, 0x73, 0x8e, 0x9a, 0x11, 0x23, 0xba, 0x62, 0x1b, 0xc8, 0xe9, 0xa3, 0xf2, 0x48, 0x5b, 0x3f, 0x8f, 0xfd, 0xe7, 0xf9, 0xce, 0x98, 0xf5, 0xa8, 0xa1, 0xcb, 0x33, 0x8c, 0x39, 0x12, 0xb1, 0x79, 0x2f, 0x60, 0xc2, 0xb0, 0x6e, 0xc5, 0x23, 0x1e, 0x2d, 0x84, 0xb0, 0xe5, 0x96, 0xe9, 0xb7, 0x6d, 0x41, 0x9c, 0xe1, 0x05, 0xec, 0xe3, 0x79, 0x1d, 0xbc, }; static const unsigned char ecdh_secp256r1_5284_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5284_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5284_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_5284 = { .name = "ecdh_secp256r1_5284", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5284_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5284_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5284_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5284_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 4 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5285 for ECDH, tcId is 5 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5285_peerpubkey[] = { 0xe9, 0xb9, 0x8f, 0xb2, 0xc0, 0xac, 0x04, 0x5f, 0x8c, 0x76, 0x12, 0x5f, 0xfd, 0x99, 0xeb, 0x8a, 0x51, 0x57, 0xbe, 0x1d, 0x7d, 0xb3, 0xe8, 0x5d, 0x65, 0x5e, 0xc1, 0xd8, 0x21, 0x02, 0x88, 0xcf, 0x21, 0x8d, 0xf2, 0x4f, 0xd2, 0xc2, 0x74, 0x6b, 0xe5, 0x9d, 0xf4, 0x12, 0x62, 0xef, 0x3a, 0x97, 0xd9, 0x86, 0x74, 0x4b, 0x28, 0x36, 0x74, 0x8a, 0x74, 0x86, 0x23, 0x0a, 0x31, 0x9f, 0xfe, 0xc0, }; static const unsigned char ecdh_secp256r1_5285_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5285_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5285_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5285 = { .name = "ecdh_secp256r1_5285", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5285_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5285_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5285_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5285_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 5 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5286 for ECDH, tcId is 6 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5286_peerpubkey[] = { 0xe9, 0x48, 0x4e, 0x58, 0xf3, 0x33, 0x1b, 0x66, 0xff, 0xed, 0x6d, 0x90, 0xcb, 0x1c, 0x78, 0x06, 0x5f, 0xa2, 0x8c, 0xfb, 0xa5, 0xc7, 0xdd, 0x43, 0x52, 0x01, 0x3d, 0x32, 0x52, 0xee, 0x42, 0x77, 0xbd, 0x75, 0x03, 0xb0, 0x45, 0xa3, 0x8b, 0x4b, 0x24, 0x7b, 0x32, 0xc5, 0x95, 0x93, 0x58, 0x0f, 0x39, 0xe6, 0xab, 0xfa, 0x37, 0x6c, 0x3d, 0xca, 0x20, 0xcf, 0x7f, 0x9c, 0xfb, 0x65, 0x9e, 0x13, }; static const unsigned char ecdh_secp256r1_5286_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5286_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5286_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5286 = { .name = "ecdh_secp256r1_5286", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5286_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5286_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5286_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5286_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 6 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5287 for ECDH, tcId is 7 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5287_peerpubkey[] = { 0x76, 0x7d, 0x7f, 0xbb, 0x84, 0xaa, 0x6a, 0x4d, 0xb1, 0x07, 0x93, 0x72, 0x64, 0x4e, 0x42, 0xec, 0xb2, 0xfe, 0xc2, 0x00, 0xc1, 0x78, 0x82, 0x23, 0x92, 0xcb, 0x8b, 0x95, 0x0f, 0xfd, 0xd0, 0xc9, 0x1c, 0x86, 0x85, 0x3c, 0xaf, 0xd0, 0x9b, 0x52, 0xba, 0x2f, 0x28, 0x7f, 0x0e, 0xba, 0xa2, 0x64, 0x15, 0xa3, 0xcf, 0xab, 0xaf, 0x92, 0xc6, 0xa6, 0x17, 0xa1, 0x99, 0x88, 0x56, 0x3d, 0x9d, 0xea, }; static const unsigned char ecdh_secp256r1_5287_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5287_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5287_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256r1_5287 = { .name = "ecdh_secp256r1_5287", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5287_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5287_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5287_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5287_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 7 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5288 for ECDH, tcId is 8 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5288_peerpubkey[] = { 0xc7, 0x4d, 0x54, 0x6f, 0x2f, 0xcc, 0x6d, 0xd3, 0x92, 0xf8, 0x5e, 0x5b, 0xe1, 0x67, 0xe3, 0x58, 0xde, 0x90, 0x87, 0x56, 0xb0, 0xc0, 0xbb, 0x01, 0xcb, 0x69, 0xd8, 0x64, 0xca, 0x08, 0x3e, 0x1c, 0x93, 0xf9, 0x59, 0xee, 0xce, 0x6e, 0x10, 0xee, 0x11, 0xbd, 0x39, 0x34, 0x20, 0x7d, 0x65, 0xae, 0x28, 0xaf, 0x68, 0xb0, 0x92, 0x58, 0x5a, 0x15, 0x09, 0x26, 0x0e, 0xce, 0xb3, 0x9b, 0x92, 0xef, }; static const unsigned char ecdh_secp256r1_5288_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5288_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5288_sharedsecret[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5288 = { .name = "ecdh_secp256r1_5288", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5288_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5288_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5288_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5288_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 8 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5289 for ECDH, tcId is 9 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5289_peerpubkey[] = { 0x34, 0xfc, 0x9f, 0x1e, 0x7a, 0x09, 0x4c, 0xd2, 0x95, 0x98, 0xd1, 0x84, 0x1f, 0xa9, 0x61, 0x3d, 0xbe, 0x82, 0x31, 0x3d, 0x63, 0x3a, 0x51, 0xd6, 0x3f, 0xb6, 0xef, 0xf0, 0x74, 0xcc, 0x9b, 0x9a, 0x4e, 0xcf, 0xd9, 0xf2, 0x58, 0xc5, 0xc4, 0xd4, 0x21, 0x0b, 0x49, 0x75, 0x12, 0x13, 0xa2, 0x4c, 0x59, 0x69, 0x82, 0xbd, 0x1d, 0x54, 0xe0, 0x44, 0x54, 0x43, 0xf2, 0x1e, 0xf1, 0x54, 0x92, 0xa5, }; static const unsigned char ecdh_secp256r1_5289_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5289_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5289_sharedsecret[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5289 = { .name = "ecdh_secp256r1_5289", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5289_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5289_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5289_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5289_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 9 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5290 for ECDH, tcId is 10 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5290_peerpubkey[] = { 0xd5, 0xc9, 0x6e, 0xfd, 0x19, 0x07, 0xfd, 0x48, 0xde, 0x2a, 0xd7, 0x15, 0xac, 0xf8, 0x2e, 0xae, 0x5c, 0x66, 0x90, 0xfe, 0x3e, 0xfe, 0x16, 0xa7, 0x8d, 0x61, 0xc6, 0x8d, 0x3b, 0xfd, 0x10, 0xdf, 0x03, 0xea, 0xc8, 0x16, 0xb9, 0xe7, 0xb7, 0x76, 0x19, 0x2a, 0x3f, 0x50, 0x75, 0x88, 0x7c, 0x0e, 0x22, 0x56, 0x17, 0x50, 0x58, 0x33, 0xca, 0x99, 0x7c, 0xda, 0x32, 0xfd, 0x0f, 0x67, 0x3c, 0x5e, }; static const unsigned char ecdh_secp256r1_5290_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5290_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5290_sharedsecret[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_5290 = { .name = "ecdh_secp256r1_5290", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5290_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5290_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5290_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5290_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 10 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5291 for ECDH, tcId is 11 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5291_peerpubkey[] = { 0xf4, 0x75, 0xf5, 0x03, 0xa7, 0x70, 0xdf, 0x72, 0xc4, 0x5a, 0xed, 0xfe, 0x42, 0xc0, 0x08, 0xf5, 0x9a, 0xa5, 0x7e, 0x72, 0xb2, 0x32, 0xf2, 0x66, 0x00, 0xbd, 0xd0, 0x35, 0x39, 0x57, 0xcb, 0x20, 0xbd, 0xb8, 0xf6, 0x40, 0x5b, 0x49, 0x18, 0x05, 0x0a, 0x35, 0x49, 0xf4, 0x4c, 0x07, 0xa8, 0xeb, 0xa8, 0x20, 0xcd, 0xce, 0x4e, 0xce, 0x69, 0x98, 0x88, 0xc6, 0x38, 0xdf, 0x66, 0xf5, 0x4f, 0x7c, }; static const unsigned char ecdh_secp256r1_5291_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5291_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5291_sharedsecret[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_5291 = { .name = "ecdh_secp256r1_5291", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5291_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5291_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5291_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5291_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 11 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5292 for ECDH, tcId is 12 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5292_peerpubkey[] = { 0xf3, 0xcb, 0x67, 0x54, 0xb7, 0xe2, 0xa8, 0x6d, 0x06, 0x4d, 0xfb, 0x9f, 0x90, 0x31, 0x85, 0xaa, 0xa4, 0xc9, 0x2b, 0x48, 0x1c, 0x2c, 0x1a, 0x1f, 0xf2, 0x76, 0x30, 0x3b, 0xbc, 0x41, 0x83, 0xe4, 0x9c, 0x31, 0x85, 0x99, 0xb0, 0x98, 0x4c, 0x35, 0x63, 0xdf, 0x33, 0x93, 0x11, 0xfe, 0x14, 0x3a, 0x7d, 0x92, 0x1e, 0xe7, 0x5b, 0x75, 0x5a, 0x52, 0xc6, 0xf8, 0x04, 0xf8, 0x97, 0xb8, 0x09, 0xf7, }; static const unsigned char ecdh_secp256r1_5292_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5292_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5292_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5292 = { .name = "ecdh_secp256r1_5292", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5292_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5292_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5292_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5292_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 12 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5293 for ECDH, tcId is 13 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5293_peerpubkey[] = { 0xcc, 0xe1, 0x3f, 0xbd, 0xc9, 0x6a, 0x94, 0x6d, 0xfb, 0x8c, 0x6d, 0x9e, 0xd7, 0x62, 0xdb, 0xd1, 0x73, 0x16, 0x30, 0x45, 0x56, 0x89, 0xf5, 0x7a, 0x43, 0x7f, 0xee, 0x12, 0x4d, 0xd5, 0x4c, 0xec, 0xae, 0xf7, 0x80, 0x26, 0xc6, 0x53, 0x03, 0x0c, 0xf2, 0xf3, 0x14, 0xa6, 0x70, 0x64, 0x23, 0x6b, 0x0a, 0x35, 0x4d, 0xef, 0xeb, 0xc5, 0xe9, 0x0c, 0x94, 0x12, 0x4e, 0x9b, 0xf5, 0xc4, 0xfc, 0x24, }; static const unsigned char ecdh_secp256r1_5293_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5293_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5293_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256r1_5293 = { .name = "ecdh_secp256r1_5293", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5293_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5293_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5293_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5293_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 13 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5294 for ECDH, tcId is 14 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5294_peerpubkey[] = { 0x76, 0x33, 0xdf, 0xd0, 0xad, 0x06, 0x76, 0x50, 0x97, 0xbc, 0x11, 0xbd, 0x50, 0x22, 0xb2, 0x00, 0xdf, 0x31, 0xf2, 0x8c, 0x4f, 0xf0, 0x62, 0x54, 0x21, 0x22, 0x1a, 0xc7, 0xee, 0xb6, 0xe6, 0xf4, 0xcb, 0x9c, 0x67, 0x69, 0x36, 0x09, 0xdd, 0xd6, 0xf9, 0x23, 0x43, 0xa5, 0xa1, 0xc6, 0x35, 0x40, 0x82, 0x40, 0xf4, 0xf8, 0xe2, 0x71, 0x20, 0xc1, 0x25, 0x54, 0xc7, 0xff, 0x8c, 0x76, 0xe2, 0xfe, }; static const unsigned char ecdh_secp256r1_5294_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5294_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5294_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5294 = { .name = "ecdh_secp256r1_5294", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5294_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5294_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5294_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5294_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 14 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5295 for ECDH, tcId is 15 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5295_peerpubkey[] = { 0xa3, 0x86, 0xac, 0xe5, 0x73, 0xf8, 0x75, 0x58, 0xa6, 0x8e, 0xad, 0x2a, 0x20, 0x08, 0x8e, 0x3f, 0xe9, 0x28, 0xbd, 0xae, 0x9e, 0x10, 0x94, 0x46, 0xf9, 0x3a, 0x07, 0x8c, 0x15, 0x74, 0x1f, 0x04, 0x21, 0x26, 0x1e, 0x6d, 0xb2, 0xbf, 0x12, 0x10, 0x6e, 0x4c, 0x6b, 0xf8, 0x5b, 0x95, 0x81, 0xb4, 0xc0, 0x30, 0x2a, 0x52, 0x62, 0x22, 0xf9, 0x0a, 0xbc, 0x5a, 0x54, 0x92, 0x06, 0xb1, 0x10, 0x11, }; static const unsigned char ecdh_secp256r1_5295_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5295_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5295_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5295 = { .name = "ecdh_secp256r1_5295", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5295_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5295_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5295_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5295_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 15 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5296 for ECDH, tcId is 16 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5296_peerpubkey[] = { 0x8e, 0x7b, 0x50, 0xf7, 0xd8, 0xc4, 0x4d, 0x5d, 0x34, 0x96, 0xc4, 0x31, 0x41, 0xa5, 0x02, 0xf4, 0xa4, 0x3f, 0x15, 0x3d, 0x03, 0xad, 0x43, 0xed, 0xa8, 0xe3, 0x95, 0x97, 0xf1, 0xd4, 0x77, 0xb8, 0x64, 0x7f, 0x3d, 0xa6, 0x79, 0x69, 0xb7, 0xf9, 0x89, 0xff, 0x4a, 0xdd, 0xc3, 0x93, 0x51, 0x5a, 0xf4, 0x0c, 0x82, 0x08, 0x5c, 0xe1, 0xf2, 0xee, 0x19, 0x54, 0x12, 0xc6, 0xf5, 0x83, 0x77, 0x4f, }; static const unsigned char ecdh_secp256r1_5296_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5296_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5296_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5296 = { .name = "ecdh_secp256r1_5296", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5296_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5296_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5296_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5296_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 16 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5297 for ECDH, tcId is 17 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5297_peerpubkey[] = { 0xc8, 0x27, 0xfb, 0x93, 0x0f, 0xd5, 0x1d, 0x92, 0x60, 0x86, 0x19, 0x1b, 0x50, 0x2a, 0xf8, 0x3a, 0xbb, 0x5f, 0x71, 0x7d, 0xeb, 0xc8, 0xde, 0x29, 0x89, 0x7a, 0x39, 0x34, 0xb2, 0x57, 0x1c, 0xa0, 0x59, 0x90, 0xc0, 0x59, 0x7b, 0x0b, 0x7a, 0x2e, 0x42, 0xfe, 0xbd, 0x56, 0xb1, 0x32, 0x35, 0xd1, 0xd4, 0x08, 0xd7, 0x6e, 0xd2, 0xc9, 0x3b, 0x3f, 0xac, 0xf5, 0x14, 0xd9, 0x02, 0xf6, 0x91, 0x0a, }; static const unsigned char ecdh_secp256r1_5297_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5297_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5297_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5297 = { .name = "ecdh_secp256r1_5297", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5297_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5297_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5297_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5297_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 17 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5298 for ECDH, tcId is 18 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5298_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0x4f, 0xde, 0x0a, 0x4e, 0xf9, 0x38, 0x87, 0x46, 0x97, 0x93, 0x27, 0x0e, 0xb2, 0xff, 0x14, 0x82, 0x87, 0xda, 0x92, 0x65, 0xb0, 0x33, 0x4f, 0x9e, 0x26, 0x09, 0xaa, 0xc1, 0x6e, 0x8a, 0xd5, 0x03, }; static const unsigned char ecdh_secp256r1_5298_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5298_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5298_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5298 = { .name = "ecdh_secp256r1_5298", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5298_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5298_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5298_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5298_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 18 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5299 for ECDH, tcId is 19 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5299_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0x18, 0xab, 0xe6, 0x6f, 0x57, 0x5e, 0xe8, 0xa2, 0xf1, 0xc4, 0xa8, 0x0e, 0x35, 0x26, 0x0a, 0xe8, 0x2a, 0xd7, 0xd6, 0xf6, 0x61, 0xd1, 0x5f, 0x06, 0x96, 0x79, 0x30, 0xa5, 0x85, 0x09, 0x7e, 0xf7, }; static const unsigned char ecdh_secp256r1_5299_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5299_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5299_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5299 = { .name = "ecdh_secp256r1_5299", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5299_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5299_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5299_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5299_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 19 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5300 for ECDH, tcId is 20 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5300_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x89, 0x4e, 0x90, 0xf0, 0xdf, 0x1b, 0x0e, 0x6c, 0xad, 0xb0, 0x3b, 0x9d, 0xe2, 0x4f, 0x6a, 0x22, 0xd1, 0xbd, 0x0a, 0x4a, 0x58, 0xcd, 0x64, 0x5c, 0x27, 0x3c, 0xae, 0x1c, 0x61, 0x9b, 0xfd, 0x61, }; static const unsigned char ecdh_secp256r1_5300_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5300_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5300_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5300 = { .name = "ecdh_secp256r1_5300", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5300_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5300_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5300_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5300_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 20 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5301 for ECDH, tcId is 21 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5301_peerpubkey[] = { 0x3c, 0xbc, 0x1b, 0x31, 0xb4, 0x3f, 0x17, 0xdc, 0x20, 0x0d, 0xd7, 0x0c, 0x29, 0x44, 0xc0, 0x4c, 0x6c, 0xb1, 0xb0, 0x82, 0x82, 0x0c, 0x23, 0x4a, 0x30, 0x0b, 0x05, 0xb7, 0x76, 0x38, 0x44, 0xc7, 0xb0, 0x21, 0xf5, 0xb0, 0x06, 0xc7, 0x78, 0xba, 0x68, 0x6c, 0xd8, 0xf1, 0x4d, 0x00, 0xeb, 0x7d, 0x78, 0x25, 0x6d, 0x9b, 0x4f, 0xcc, 0xb0, 0x61, 0xd9, 0xf6, 0x55, 0x3e, 0x91, 0x75, 0x2a, 0xfc, }; static const unsigned char ecdh_secp256r1_5301_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5301_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5301_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5301 = { .name = "ecdh_secp256r1_5301", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5301_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5301_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5301_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5301_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 21 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5302 for ECDH, tcId is 22 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5302_peerpubkey[] = { 0x28, 0x30, 0xd9, 0x64, 0x89, 0xae, 0x24, 0xb7, 0x9c, 0xad, 0x42, 0x50, 0x56, 0xe8, 0x27, 0x46, 0xf9, 0xe3, 0xf4, 0x19, 0xab, 0x9a, 0xa2, 0x1c, 0xa1, 0xfb, 0xb1, 0x1c, 0x73, 0x25, 0xe7, 0xd3, 0xe7, 0x54, 0x19, 0x8f, 0xa8, 0xa1, 0x17, 0x5e, 0x0e, 0x3b, 0x57, 0xf1, 0xca, 0xd9, 0xf5, 0x17, 0xd5, 0x28, 0x29, 0x0a, 0x9e, 0x2e, 0xa0, 0xf9, 0x69, 0x86, 0xcf, 0x5a, 0x7a, 0xf6, 0x81, 0x08, }; static const unsigned char ecdh_secp256r1_5302_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5302_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5302_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5302 = { .name = "ecdh_secp256r1_5302", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5302_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5302_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5302_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5302_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 22 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5303 for ECDH, tcId is 23 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5303_peerpubkey[] = { 0x45, 0x0b, 0x6b, 0x6e, 0x20, 0x97, 0x17, 0x8e, 0x9d, 0x28, 0x50, 0x10, 0x95, 0x18, 0xd2, 0x8e, 0xb3, 0xb6, 0xde, 0xd2, 0x92, 0x2a, 0x54, 0x52, 0x00, 0x3b, 0xc2, 0xe4, 0xa4, 0xec, 0x77, 0x5c, 0x76, 0xb1, 0x6f, 0x0e, 0x20, 0xe4, 0xf1, 0x94, 0x52, 0x4f, 0xc4, 0x62, 0x1d, 0xb0, 0x95, 0xdd, 0x2e, 0x42, 0xf5, 0xb6, 0xa7, 0x32, 0x9b, 0xa3, 0xd8, 0xc3, 0x51, 0xe3, 0x9e, 0x64, 0x02, 0x9e, }; static const unsigned char ecdh_secp256r1_5303_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5303_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5303_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5303 = { .name = "ecdh_secp256r1_5303", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5303_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5303_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5303_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5303_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 23 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5304 for ECDH, tcId is 24 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5304_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0xb0, 0x2c, 0x82, 0xf3, 0xa6, 0x1a, 0x37, 0x6d, 0xb7, 0x95, 0x62, 0x6e, 0x94, 0x00, 0x55, 0x71, 0x12, 0x27, 0x3a, 0x36, 0xcd, 0xdb, 0x08, 0xca, 0xaa, 0x43, 0x95, 0x39, 0x65, 0x45, 0x47, 0x30, }; static const unsigned char ecdh_secp256r1_5304_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5304_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5304_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5304 = { .name = "ecdh_secp256r1_5304", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5304_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5304_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5304_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5304_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 24 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5305 for ECDH, tcId is 25 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5305_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x8e, 0xa7, 0xa0, 0x70, 0x23, 0xef, 0x67, 0x67, 0x70, 0x24, 0xbd, 0x38, 0x41, 0xe1, 0x87, 0xc6, 0x4b, 0x30, 0xa3, 0x0a, 0x37, 0x50, 0xeb, 0x2e, 0xe8, 0x73, 0xfb, 0xe5, 0x8f, 0xa1, 0x35, 0x7b, }; static const unsigned char ecdh_secp256r1_5305_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5305_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5305_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5305 = { .name = "ecdh_secp256r1_5305", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5305_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5305_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5305_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5305_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 25 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5306 for ECDH, tcId is 26 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5306_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0x11, 0x81, 0x82, 0xb8, 0x5e, 0xf4, 0x66, 0xeb, 0x9a, 0x8e, 0x87, 0xf9, 0x66, 0x1f, 0x7d, 0x01, 0x79, 0x84, 0xc1, 0x5e, 0xa8, 0x20, 0x43, 0xf5, 0x36, 0xd1, 0xee, 0x6a, 0x6d, 0x95, 0xb5, 0x09, }; static const unsigned char ecdh_secp256r1_5306_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5306_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5306_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5306 = { .name = "ecdh_secp256r1_5306", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5306_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5306_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5306_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5306_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 26 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5307 for ECDH, tcId is 27 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5307_peerpubkey[] = { 0x9a, 0x0f, 0x0e, 0x3d, 0xd3, 0x14, 0x17, 0xbb, 0xd9, 0xe2, 0x98, 0xbc, 0x06, 0x8a, 0xb6, 0xd5, 0xc3, 0x67, 0x33, 0xaf, 0x26, 0xed, 0x67, 0x67, 0x6f, 0x41, 0x0c, 0x80, 0x4b, 0x8b, 0x2c, 0xa1, 0x4f, 0xd3, 0x7d, 0x0b, 0x59, 0xe5, 0xc8, 0x93, 0x48, 0x6a, 0x9d, 0x91, 0x6b, 0xff, 0xaa, 0x8e, 0xed, 0xd8, 0xc5, 0xca, 0x32, 0x24, 0xf7, 0x35, 0x55, 0xbc, 0x6a, 0xc6, 0x9a, 0xba, 0xb8, 0xcf, }; static const unsigned char ecdh_secp256r1_5307_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5307_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5307_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5307 = { .name = "ecdh_secp256r1_5307", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5307_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5307_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5307_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5307_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 27 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5308 for ECDH, tcId is 28 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5308_peerpubkey[] = { 0x8e, 0x5d, 0x22, 0xd5, 0xe5, 0x3e, 0xc7, 0x97, 0xc5, 0x5e, 0xcd, 0x68, 0xa0, 0x8a, 0x7c, 0x33, 0x61, 0xcd, 0x99, 0xca, 0x7f, 0xad, 0x1a, 0x68, 0xea, 0x80, 0x2a, 0x6a, 0x4c, 0xb5, 0x8a, 0x91, 0x71, 0x58, 0x5f, 0x8e, 0xdc, 0x10, 0x98, 0x99, 0x8f, 0xdb, 0x42, 0xc7, 0xbe, 0x1e, 0x78, 0x39, 0xb4, 0xcf, 0x5c, 0xf6, 0xc8, 0xaf, 0x14, 0xd1, 0x17, 0x8c, 0x04, 0x1a, 0x70, 0x5e, 0xca, 0x84, }; static const unsigned char ecdh_secp256r1_5308_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5308_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5308_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256r1_5308 = { .name = "ecdh_secp256r1_5308", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5308_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5308_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5308_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5308_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 28 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5309 for ECDH, tcId is 29 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5309_peerpubkey[] = { 0x29, 0x3a, 0xa3, 0x49, 0xb9, 0x34, 0xab, 0x2c, 0x83, 0x9c, 0xf5, 0x4b, 0x8a, 0x73, 0x7d, 0xf2, 0x30, 0x4e, 0xf9, 0xb2, 0x0f, 0xa4, 0x94, 0xe3, 0x1a, 0xd6, 0x2b, 0x31, 0x5d, 0xd6, 0xa5, 0x3c, 0xee, 0x7e, 0x7d, 0x46, 0xa1, 0x0b, 0x99, 0x15, 0x65, 0x71, 0x78, 0x06, 0x99, 0xe0, 0x82, 0xfe, 0x86, 0x7b, 0x3e, 0xa2, 0x57, 0xdf, 0xbc, 0x0a, 0xc9, 0x2e, 0x11, 0x95, 0x92, 0x6a, 0x4a, 0xf6, }; static const unsigned char ecdh_secp256r1_5309_ourpubkey[] = { 0x74, 0x61, 0x8c, 0xba, 0xaf, 0x69, 0xff, 0x59, 0x0f, 0x5f, 0xb5, 0x85, 0x51, 0xce, 0x4a, 0x94, 0x8b, 0x5c, 0x72, 0x51, 0xd4, 0x0e, 0x59, 0x5a, 0x18, 0xb1, 0xba, 0x6b, 0xbe, 0xe6, 0xad, 0xa5, 0xbf, 0xf4, 0x03, 0xa8, 0xe9, 0x9d, 0x53, 0xa7, 0x0d, 0x3c, 0xe4, 0x61, 0x0b, 0xfd, 0x05, 0xd4, 0xba, 0x3a, 0x88, 0x55, 0xb6, 0xa0, 0xd3, 0x63, 0xc8, 0x1f, 0x7d, 0x07, 0x8c, 0xde, 0xcd, 0x92, }; static const unsigned char ecdh_secp256r1_5309_privkey[] = { 0x0a, 0x0d, 0x62, 0x2a, 0x47, 0xe4, 0x8f, 0x6b, 0xc1, 0x03, 0x8a, 0xce, 0x43, 0x8c, 0x6f, 0x52, 0x8a, 0xa0, 0x0a, 0xd2, 0xbd, 0x1d, 0xa5, 0xf1, 0x3e, 0xe4, 0x6b, 0xf5, 0xf6, 0x33, 0xd7, 0x1a, }; static const unsigned char ecdh_secp256r1_5309_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256r1_5309 = { .name = "ecdh_secp256r1_5309", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5309_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5309_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5309_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5309_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 29 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5310 for ECDH, tcId is 30 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5310_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_5310_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5310_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5310_sharedsecret[] = { 0xcf, 0xe4, 0x07, 0x7c, 0x87, 0x30, 0xb1, 0xc9, 0x38, 0x45, 0x81, 0xd3, 0x6b, 0xff, 0x55, 0x42, 0xbc, 0x41, 0x7c, 0x9e, 0xff, 0x5c, 0x2a, 0xfc, 0xb9, 0x8c, 0xc8, 0x82, 0x9b, 0x2c, 0xe8, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256r1_5310 = { .name = "ecdh_secp256r1_5310", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5310_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5310_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5310_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5310_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 30 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5311 for ECDH, tcId is 31 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5311_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0x2b, 0x92, 0xb4, 0xc5, 0x96, 0xa5, 0xa4, 0x7f, 0x8b, 0x04, 0x1d, 0x2d, 0xea, 0x60, 0x43, 0x02, 0x1a, 0xc7, 0x7b, 0x9a, 0x80, 0xb1, 0x34, 0x3a, 0xc9, 0xd7, 0x78, 0xf4, 0xf8, 0xf7, 0x33, }; static const unsigned char ecdh_secp256r1_5311_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5311_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5311_sharedsecret[] = { 0x49, 0xae, 0x50, 0xfe, 0x09, 0x6a, 0x6c, 0xd2, 0x66, 0x98, 0xb7, 0x83, 0x56, 0xb2, 0xc8, 0xad, 0xf1, 0xf6, 0xa3, 0x49, 0x0f, 0x14, 0xe3, 0x64, 0x62, 0x9f, 0x7a, 0x06, 0x39, 0x44, 0x25, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_5311 = { .name = "ecdh_secp256r1_5311", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5311_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5311_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5311_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5311_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 31 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5312 for ECDH, tcId is 32 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5312_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x38, 0x12, 0x0b, 0xe6, 0xab, 0x31, 0xed, 0xfa, 0x34, 0x76, 0x8c, 0x43, 0x87, 0xd2, 0xf8, 0x4f, 0xb4, 0xb0, 0xbe, 0x8a, 0x9a, 0x98, 0x58, 0x64, 0xa1, 0x57, 0x5f, 0x44, 0x36, 0xbb, 0x37, 0xb0, }; static const unsigned char ecdh_secp256r1_5312_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5312_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5312_sharedsecret[] = { 0x5a, 0x13, 0x34, 0x57, 0x2b, 0x2a, 0x71, 0x1e, 0xad, 0x8b, 0x46, 0x53, 0xeb, 0x31, 0x0c, 0xd8, 0xd9, 0xfd, 0x11, 0x43, 0x99, 0x37, 0x9a, 0x8f, 0x6b, 0x87, 0x2e, 0x3b, 0x8f, 0xdd, 0xa2, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256r1_5312 = { .name = "ecdh_secp256r1_5312", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5312_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5312_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5312_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5312_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 32 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5313 for ECDH, tcId is 33 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5313_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x46, 0x2c, 0x04, 0x66, 0xe4, 0x18, 0x02, 0x23, 0x8d, 0x6c, 0x92, 0x5e, 0xcb, 0xef, 0xc7, 0x47, 0xcf, 0xe5, 0x05, 0xea, 0x19, 0x6a, 0xf9, 0xa2, 0xd1, 0x1b, 0x62, 0x85, 0x0f, 0xce, 0x94, 0x6e, }; static const unsigned char ecdh_secp256r1_5313_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5313_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5313_sharedsecret[] = { 0xc7, 0x37, 0x55, 0x13, 0x3b, 0x6b, 0x9b, 0x4b, 0x2a, 0x00, 0x63, 0x1c, 0xbc, 0x79, 0x40, 0xec, 0xbe, 0x6e, 0xc0, 0x8f, 0x20, 0x44, 0x80, 0x71, 0x42, 0x2e, 0x33, 0x62, 0xf2, 0x55, 0x68, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_5313 = { .name = "ecdh_secp256r1_5313", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5313_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5313_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5313_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5313_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 33 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5314 for ECDH, tcId is 34 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5314_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x15, 0x82, 0xfa, 0x32, 0xe2, 0xd4, 0xa8, 0x9d, 0xfc, 0xfb, 0x3d, 0x0b, 0x14, 0x9f, 0x66, 0x7d, 0xba, 0x33, 0x29, 0x49, 0x0f, 0x4d, 0x64, 0xee, 0x2a, 0xd5, 0x86, 0xc0, 0xc9, 0xe8, 0xc5, 0x08, }; static const unsigned char ecdh_secp256r1_5314_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5314_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5314_sharedsecret[] = { 0x06, 0xfa, 0x10, 0x59, 0x93, 0x5e, 0x47, 0xa9, 0xfd, 0x66, 0x7e, 0x13, 0xf4, 0x69, 0x61, 0x4e, 0xb2, 0x57, 0xcc, 0x9a, 0x7e, 0x3f, 0xc5, 0x99, 0xbf, 0xb9, 0x27, 0x80, 0xd5, 0x9b, 0x14, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5314 = { .name = "ecdh_secp256r1_5314", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5314_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5314_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5314_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5314_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 34 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5315 for ECDH, tcId is 35 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5315_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x01, 0x68, 0x4c, 0x8a, 0x95, 0x86, 0xed, 0x6f, 0x9c, 0xbe, 0x44, 0x70, 0x58, 0xa7, 0xda, 0x21, 0x08, 0xba, 0xb1, 0xe5, 0xe0, 0xa6, 0x0d, 0x1f, 0x73, 0xe4, 0xe2, 0xe7, 0x13, 0xf0, 0xa3, 0xdf, 0xe0, }; static const unsigned char ecdh_secp256r1_5315_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5315_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5315_sharedsecret[] = { 0xf2, 0x37, 0xdf, 0x4c, 0x10, 0xbd, 0x3e, 0x35, 0x79, 0x71, 0xbb, 0x2b, 0x16, 0xb2, 0x93, 0x56, 0x6b, 0x7e, 0x35, 0x5b, 0xdc, 0x81, 0x41, 0xd6, 0xc9, 0x2c, 0xab, 0xc6, 0x82, 0x98, 0x3c, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256r1_5315 = { .name = "ecdh_secp256r1_5315", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5315_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5315_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5315_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5315_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 35 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5316 for ECDH, tcId is 36 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5316_peerpubkey[] = { 0x08, 0x5e, 0xc5, 0xa4, 0xaf, 0x40, 0x17, 0x6b, 0x63, 0x18, 0x90, 0x69, 0xae, 0xff, 0xcb, 0x22, 0x9c, 0x96, 0xd3, 0xe0, 0x46, 0xe0, 0x28, 0x3e, 0xd2, 0xf9, 0xda, 0xc2, 0x1b, 0x15, 0xad, 0x3c, 0x78, 0x59, 0xf9, 0x7c, 0xb6, 0xe2, 0x03, 0xf4, 0x6b, 0xf3, 0x43, 0x8f, 0x61, 0x28, 0x23, 0x25, 0xe9, 0x4e, 0x68, 0x1b, 0x60, 0xb5, 0x66, 0x97, 0x88, 0xae, 0xb0, 0x65, 0x5b, 0xf1, 0x9d, 0x38, }; static const unsigned char ecdh_secp256r1_5316_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5316_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5316_sharedsecret[] = { 0xd8, 0x74, 0xb5, 0x56, 0x78, 0xd0, 0xa0, 0x4d, 0x21, 0x6c, 0x31, 0xb0, 0x2f, 0x3a, 0xd1, 0xf3, 0x0c, 0x92, 0xca, 0xaf, 0x16, 0x8f, 0x34, 0xe3, 0xa7, 0x43, 0x35, 0x6d, 0x92, 0x76, 0xe9, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_5316 = { .name = "ecdh_secp256r1_5316", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5316_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5316_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5316_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5316_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 36 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5317 for ECDH, tcId is 37 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5317_peerpubkey[] = { 0x19, 0x0c, 0x25, 0xf8, 0x8a, 0xd9, 0xae, 0x3a, 0x09, 0x8e, 0x6c, 0xff, 0xe6, 0xfd, 0x0b, 0x1b, 0xea, 0x42, 0x11, 0x4e, 0xb0, 0xce, 0xdd, 0x58, 0x68, 0xa4, 0x5c, 0x5f, 0xe2, 0x77, 0xdf, 0xf3, 0x21, 0xb8, 0x34, 0x2e, 0xf0, 0x77, 0xbc, 0x67, 0x24, 0x11, 0x24, 0x03, 0xea, 0xee, 0x5a, 0x15, 0xb4, 0xc3, 0x1a, 0x71, 0x58, 0x9f, 0x02, 0xde, 0xd0, 0x9c, 0xd9, 0x9c, 0xc5, 0xdb, 0x9c, 0x83, }; static const unsigned char ecdh_secp256r1_5317_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5317_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5317_sharedsecret[] = { 0x11, 0xa8, 0x58, 0x20, 0x57, 0x46, 0x3f, 0xc7, 0x6f, 0xda, 0x3a, 0xb8, 0x08, 0x7e, 0xb0, 0xa4, 0x20, 0xb0, 0xd6, 0x01, 0xbb, 0x31, 0x34, 0x16, 0x5a, 0x36, 0x96, 0x46, 0x93, 0x1e, 0x52, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_5317 = { .name = "ecdh_secp256r1_5317", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5317_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5317_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5317_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5317_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 37 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5318 for ECDH, tcId is 38 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5318_peerpubkey[] = { 0x50, 0x74, 0x42, 0x00, 0x73, 0x22, 0xaa, 0x89, 0x53, 0x40, 0xcb, 0xa4, 0xab, 0xc2, 0xd7, 0x30, 0xbf, 0xd0, 0xb1, 0x6c, 0x2c, 0x79, 0xa4, 0x68, 0x15, 0xf8, 0x78, 0x0d, 0x2c, 0x55, 0xa2, 0xdd, 0x46, 0x19, 0xd6, 0x9f, 0x99, 0x40, 0xf5, 0x16, 0x63, 0xaa, 0x12, 0x38, 0x1b, 0xc7, 0xcf, 0x67, 0x8b, 0xd1, 0xa7, 0x2a, 0x49, 0xfb, 0xc1, 0x1b, 0x0b, 0x69, 0xcb, 0x22, 0xd1, 0xaf, 0x9f, 0x2d, }; static const unsigned char ecdh_secp256r1_5318_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5318_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5318_sharedsecret[] = { 0x4e, 0x17, 0x3a, 0x80, 0x90, 0x7f, 0x36, 0x1f, 0xe5, 0xa5, 0xd3, 0x35, 0xba, 0x76, 0x85, 0xd5, 0xeb, 0xa9, 0x3e, 0x9d, 0xfc, 0x8d, 0x8f, 0xcd, 0xb1, 0xdc, 0xd2, 0xd2, 0xbd, 0xe2, 0x75, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_5318 = { .name = "ecdh_secp256r1_5318", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5318_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5318_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5318_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5318_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 38 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5319 for ECDH, tcId is 39 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5319_peerpubkey[] = { 0x5f, 0x17, 0x7b, 0xfe, 0x19, 0xba, 0xaa, 0xee, 0x59, 0x7e, 0x68, 0xb6, 0xa8, 0x7a, 0x51, 0x9e, 0x80, 0x5e, 0x9d, 0x28, 0xa7, 0x0c, 0xb7, 0x2f, 0xd4, 0x0f, 0x0f, 0xe5, 0xa7, 0x54, 0xba, 0x45, 0x62, 0xca, 0x11, 0x03, 0xf7, 0x0a, 0x20, 0x06, 0xcd, 0x1f, 0x67, 0xf5, 0xf6, 0xa3, 0x58, 0x0b, 0x29, 0xdc, 0x44, 0x6a, 0xbc, 0x90, 0xe0, 0xe9, 0x10, 0xc1, 0xe0, 0x5a, 0x9a, 0xa7, 0x88, 0xcd, }; static const unsigned char ecdh_secp256r1_5319_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5319_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5319_sharedsecret[] = { 0x73, 0x22, 0x04, 0x71, 0xec, 0x8b, 0xad, 0x99, 0xa2, 0x97, 0xdb, 0x48, 0x8a, 0x34, 0xa2, 0x59, 0xf9, 0xbc, 0x89, 0x1f, 0xfa, 0xf0, 0x99, 0x22, 0xe6, 0xb5, 0x00, 0x1f, 0x5d, 0xf6, 0x70, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_5319 = { .name = "ecdh_secp256r1_5319", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5319_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5319_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5319_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5319_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 39 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5320 for ECDH, tcId is 40 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5320_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x2e, 0x22, 0x13, 0xca, 0xf0, 0x30, 0x33, 0xe0, 0xfd, 0x0f, 0x79, 0x51, 0x15, 0x4f, 0x6e, 0x6c, 0x3a, 0x92, 0x44, 0xa7, 0x2f, 0xac, 0xa6, 0x5e, 0x9c, 0xe9, 0xee, 0xb5, 0xc8, 0xe1, 0xce, 0xa9, }; static const unsigned char ecdh_secp256r1_5320_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5320_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5320_sharedsecret[] = { 0x55, 0xd0, 0xa2, 0x03, 0xe2, 0x2f, 0xfb, 0x52, 0x3c, 0x8d, 0x27, 0x05, 0x06, 0x0c, 0xee, 0x9d, 0x28, 0x30, 0x8b, 0x51, 0xf1, 0x84, 0xbe, 0xef, 0xc5, 0x18, 0xcf, 0xf6, 0x90, 0xba, 0xd3, 0x46, }; static const wycheproof_ecdh_test ecdh_secp256r1_5320 = { .name = "ecdh_secp256r1_5320", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5320_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5320_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5320_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5320_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 40 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5321 for ECDH, tcId is 41 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5321_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x2b, 0xe8, 0x78, 0x9d, 0xb8, 0x1b, 0xb4, 0x87, 0x0a, 0x9e, 0x60, 0xc5, 0xc1, 0x8c, 0x80, 0xc8, 0x3d, 0xe4, 0x64, 0x27, 0x72, 0x81, 0xf1, 0xaf, 0x1e, 0x64, 0x08, 0x43, 0xa1, 0xa3, 0x14, 0x8e, }; static const unsigned char ecdh_secp256r1_5321_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5321_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5321_sharedsecret[] = { 0x25, 0x18, 0xd8, 0x46, 0xe5, 0x77, 0xd9, 0x5e, 0x9e, 0x7b, 0xc7, 0x66, 0xcd, 0xe7, 0x99, 0x7c, 0xb8, 0x87, 0xfb, 0x26, 0x6d, 0x3a, 0x6c, 0xb5, 0x98, 0xa8, 0x39, 0xfd, 0x54, 0xaa, 0x2f, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5321 = { .name = "ecdh_secp256r1_5321", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5321_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5321_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5321_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5321_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 41 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5322 for ECDH, tcId is 42 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5322_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x72, 0x25, 0x40, 0xf8, 0xa4, 0x71, 0xc3, 0x79, 0x08, 0x3c, 0x60, 0x0b, 0x58, 0xfd, 0xe4, 0xd9, 0x5c, 0x7d, 0xca, 0xd5, 0x09, 0x5f, 0x42, 0x19, 0xfc, 0x5e, 0x9b, 0xdd, 0xe3, 0xc5, 0xcd, 0x39, }; static const unsigned char ecdh_secp256r1_5322_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5322_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5322_sharedsecret[] = { 0xbd, 0xb4, 0x9f, 0x4b, 0xdf, 0x42, 0xac, 0x64, 0x50, 0x4e, 0x9c, 0xe6, 0x77, 0xb3, 0xec, 0x5c, 0x0a, 0x03, 0x82, 0x8c, 0x5b, 0x3e, 0xfa, 0xd7, 0x26, 0x00, 0x56, 0x92, 0xd3, 0x5c, 0x0f, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_5322 = { .name = "ecdh_secp256r1_5322", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5322_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5322_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5322_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5322_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 42 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5323 for ECDH, tcId is 43 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5323_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x5d, 0xf8, 0x0f, 0xc6, 0xca, 0xe2, 0x6b, 0x6c, 0x19, 0x52, 0xfb, 0xd0, 0x0e, 0xd1, 0x74, 0xee, 0x12, 0x09, 0xd0, 0x69, 0x33, 0x5f, 0x5b, 0x48, 0x58, 0x8e, 0x29, 0xe8, 0x0b, 0x91, 0x91, 0xad, }; static const unsigned char ecdh_secp256r1_5323_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5323_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5323_sharedsecret[] = { 0xf5, 0x03, 0xac, 0x65, 0x63, 0x7e, 0x0f, 0x17, 0xcb, 0x44, 0x08, 0x96, 0x1c, 0xb8, 0x82, 0xc8, 0x75, 0xe4, 0xc6, 0xef, 0x7a, 0x54, 0x8d, 0x2d, 0x52, 0xd8, 0xc2, 0xf6, 0x81, 0x83, 0x8c, 0x55, }; static const wycheproof_ecdh_test ecdh_secp256r1_5323 = { .name = "ecdh_secp256r1_5323", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5323_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5323_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5323_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5323_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 43 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5324 for ECDH, tcId is 44 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5324_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x2c, 0x63, 0x65, 0x0e, 0x6a, 0x5d, 0x33, 0x2e, 0x29, 0x87, 0xdd, 0x09, 0xa7, 0x90, 0x08, 0xe8, 0xfa, 0xab, 0xbd, 0x37, 0xe4, 0x9c, 0xb0, 0x16, 0xbf, 0xb9, 0x2c, 0x8c, 0xd0, 0xf5, 0xda, 0x77, }; static const unsigned char ecdh_secp256r1_5324_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5324_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5324_sharedsecret[] = { 0xe3, 0xc1, 0x8e, 0x7d, 0x73, 0x77, 0xdc, 0x54, 0x0b, 0xc4, 0x5c, 0x08, 0xd3, 0x89, 0xbd, 0xbe, 0x25, 0x5f, 0xa8, 0x0c, 0xa8, 0xfa, 0xf1, 0xef, 0x6b, 0x94, 0xd5, 0x20, 0x49, 0x98, 0x7d, 0x21, }; static const wycheproof_ecdh_test ecdh_secp256r1_5324 = { .name = "ecdh_secp256r1_5324", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5324_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5324_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5324_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5324_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 44 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5325 for ECDH, tcId is 45 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5325_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7a, 0x11, 0x6c, 0x96, 0x4a, 0x4c, 0xd6, 0x06, 0x68, 0xbf, 0x89, 0xcf, 0xfe, 0x15, 0x77, 0x14, 0xa3, 0xce, 0x21, 0xb9, 0x3b, 0x3c, 0xa6, 0x07, 0xc8, 0xa5, 0xb9, 0x3a, 0xc5, 0x4f, 0xfc, 0x0a, }; static const unsigned char ecdh_secp256r1_5325_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5325_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5325_sharedsecret[] = { 0x51, 0x6d, 0x6d, 0x32, 0x9b, 0x09, 0x5a, 0x7c, 0x7e, 0x93, 0xb4, 0x02, 0x3d, 0x4d, 0x05, 0x02, 0x0c, 0x14, 0x45, 0xef, 0x1d, 0xdc, 0xb3, 0x34, 0x7b, 0x3a, 0x27, 0xd7, 0xd7, 0xf5, 0x72, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256r1_5325 = { .name = "ecdh_secp256r1_5325", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5325_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5325_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5325_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5325_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 45 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5326 for ECDH, tcId is 46 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5326_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xc7, 0xc3, 0x06, 0x43, 0xab, 0xed, 0x0a, 0xf0, 0xa4, 0x9f, 0xe3, 0x52, 0xcb, 0x48, 0x3f, 0xf9, 0xb9, 0x7d, 0xcc, 0xdf, 0x42, 0x7c, 0x65, 0x8e, 0x87, 0x93, 0x24, 0x0d, }; static const unsigned char ecdh_secp256r1_5326_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5326_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5326_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5326 = { .name = "ecdh_secp256r1_5326", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5326_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5326_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5326_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5326_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 46 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5327 for ECDH, tcId is 47 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5327_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xee, 0xcf, 0x22, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x38, 0x3c, 0xf9, 0xbd, 0x54, 0x12, 0xf5, 0x0f, 0x5b, 0x60, 0x1c, 0xad, 0x34, 0xb7, 0xc0, 0x07, 0x46, 0x82, 0x33, 0x20, 0xbd, 0x83, 0x9a, 0x71, 0x78, 0x6c, 0xdb, 0xf2, }; static const unsigned char ecdh_secp256r1_5327_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5327_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5327_sharedsecret[] = { 0x6f, 0xd2, 0x66, 0x61, 0x85, 0x1a, 0x8d, 0xe3, 0xc6, 0xd0, 0x6f, 0x83, 0x4e, 0xf3, 0xac, 0xb8, 0xf2, 0xa5, 0xf9, 0xc1, 0x36, 0xa9, 0x85, 0xff, 0xe1, 0x0d, 0x5e, 0xeb, 0x51, 0xed, 0xcf, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5327 = { .name = "ecdh_secp256r1_5327", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5327_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5327_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5327_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5327_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 47 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5328 for ECDH, tcId is 48 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5328_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x26, 0x7b, 0xfd, 0xf8, 0xa6, 0x11, 0x48, 0xde, 0xcd, 0x80, 0x28, 0x37, 0x32, 0xdd, 0x4c, 0x10, 0x95, 0xe4, 0xbb, 0x40, 0xb9, 0x65, 0x84, 0x08, 0x20, 0x8d, 0xc1, 0x14, 0x7f, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5328_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5328_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5328_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5328 = { .name = "ecdh_secp256r1_5328", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5328_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5328_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5328_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5328_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 48 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5329 for ECDH, tcId is 49 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5329_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0x08, 0x90, 0x11, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd9, 0x84, 0x02, 0x06, 0x59, 0xee, 0xb7, 0x22, 0x32, 0x7f, 0xd7, 0xc8, 0xcd, 0x22, 0xb3, 0xef, 0x6a, 0x1b, 0x44, 0xc0, 0x46, 0x9a, 0x7b, 0xf7, 0xdf, 0x72, 0x3e, 0xeb, 0x80, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5329_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5329_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5329_sharedsecret[] = { 0x44, 0x23, 0x6c, 0x8b, 0x95, 0x05, 0xa1, 0x9d, 0x48, 0x77, 0x4a, 0x39, 0x03, 0xc0, 0x29, 0x27, 0x59, 0xb0, 0xf8, 0x26, 0xe6, 0xac, 0x09, 0x2f, 0xf8, 0x98, 0xd8, 0x7e, 0x53, 0xd3, 0x53, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5329 = { .name = "ecdh_secp256r1_5329", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5329_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5329_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5329_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5329_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 49 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5330 for ECDH, tcId is 50 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5330_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x12, 0xd3, 0x81, 0xb0, 0x76, 0x0b, 0x1c, 0x50, 0xbe, 0x8a, 0xcf, 0x85, 0x93, 0x85, 0x05, 0x2c, 0x7f, 0x53, 0xcd, 0xe6, 0x7c, 0xe1, 0x37, 0x59, 0xde, 0x31, 0x23, 0xa0, }; static const unsigned char ecdh_secp256r1_5330_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5330_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5330_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_5330 = { .name = "ecdh_secp256r1_5330", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5330_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5330_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5330_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5330_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 50 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5331 for ECDH, tcId is 51 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5331_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x24, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf1, 0xed, 0x2c, 0x7e, 0x50, 0x89, 0xf4, 0xe3, 0xaf, 0x41, 0x75, 0x30, 0x7a, 0x6c, 0x7a, 0xfa, 0xd4, 0x80, 0xac, 0x32, 0x19, 0x83, 0x1e, 0xc8, 0xa6, 0x21, 0xce, 0xdc, 0x5f, }; static const unsigned char ecdh_secp256r1_5331_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5331_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5331_sharedsecret[] = { 0xf1, 0xf0, 0xe4, 0x3b, 0x37, 0x4f, 0xeb, 0x7e, 0x7f, 0x96, 0xd4, 0xff, 0xe7, 0x51, 0x9f, 0xa8, 0xbb, 0x6c, 0x3c, 0xfd, 0x25, 0xf6, 0xf8, 0x7d, 0xab, 0x26, 0x23, 0xd2, 0xa2, 0xd3, 0x38, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_5331 = { .name = "ecdh_secp256r1_5331", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5331_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5331_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5331_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5331_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 51 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5332 for ECDH, tcId is 52 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5332_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x96, 0xed, 0xd6, 0x87, 0x1c, 0x32, 0x0c, 0xb8, 0xa9, 0xf4, 0x53, 0x17, 0x51, 0x10, 0x5c, 0x97, 0xb4, 0xc2, 0x57, 0x81, 0x1b, 0xbc, 0x32, 0x96, 0x3e, 0xaf, 0x39, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5332_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5332_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5332_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5332 = { .name = "ecdh_secp256r1_5332", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5332_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5332_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5332_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5332_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 52 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5333 for ECDH, tcId is 53 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5333_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x6b, 0xd1, 0xe5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0x69, 0x12, 0x28, 0x78, 0xe3, 0xcd, 0xf4, 0x47, 0x56, 0x0b, 0xac, 0xe8, 0xae, 0xef, 0xa3, 0x68, 0x4b, 0x3d, 0xa9, 0x7e, 0xe4, 0x43, 0xcd, 0x69, 0xc1, 0x50, 0xc6, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5333_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5333_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5333_sharedsecret[] = { 0x3e, 0xbb, 0xac, 0xe1, 0x09, 0x8a, 0x81, 0x94, 0x9d, 0x56, 0x05, 0xdd, 0x94, 0xa7, 0xaa, 0x88, 0xdc, 0x39, 0x6c, 0x2c, 0x23, 0xe0, 0x1a, 0x9c, 0x8c, 0xca, 0x5b, 0xb0, 0x7b, 0xfb, 0xb6, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5333 = { .name = "ecdh_secp256r1_5333", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5333_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5333_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5333_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5333_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 53 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5334 for ECDH, tcId is 54 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5334_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x7a, 0xfb, 0xc0, 0xb3, 0x25, 0xe8, 0x20, 0x64, 0x6d, 0xec, 0x62, 0x2f, 0xb5, 0x58, 0xa5, 0x1c, 0x34, 0x2a, 0xa2, 0x57, 0xf4, 0xb6, 0xa8, 0xec, 0x5d, 0xdf, 0x14, 0x4f, }; static const unsigned char ecdh_secp256r1_5334_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5334_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5334_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5334 = { .name = "ecdh_secp256r1_5334", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5334_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5334_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5334_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5334_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 54 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5335 for ECDH, tcId is 55 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5335_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xea, 0x77, 0xd4, 0x49, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x85, 0x04, 0x3f, 0x4d, 0xda, 0x17, 0xdf, 0x9b, 0x92, 0x13, 0x9d, 0xd0, 0x4a, 0xa7, 0x5a, 0xe4, 0xcb, 0xd5, 0x5d, 0xa8, 0x0b, 0x49, 0x57, 0x13, 0xa2, 0x20, 0xeb, 0xb0, }; static const unsigned char ecdh_secp256r1_5335_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5335_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5335_sharedsecret[] = { 0x1b, 0x08, 0x52, 0x13, 0xa9, 0xc8, 0x9d, 0x35, 0x3e, 0x11, 0x11, 0xaf, 0x07, 0x8c, 0x38, 0xc5, 0x02, 0xb7, 0xb4, 0x77, 0x1e, 0xfb, 0xa5, 0x1f, 0x58, 0x9b, 0x5b, 0xe2, 0x43, 0x41, 0x7b, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5335 = { .name = "ecdh_secp256r1_5335", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5335_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5335_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5335_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5335_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 55 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5336 for ECDH, tcId is 56 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5336_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x15, 0x2c, 0x1a, 0x22, 0xd8, 0x23, 0xa2, 0x78, 0x55, 0xed, 0x03, 0xf8, 0xe2, 0xab, 0x50, 0x38, 0xbb, 0x1d, 0xf4, 0xd8, 0x7e, 0x43, 0x86, 0x5f, 0x2d, 0xaf, 0x69, 0x48, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5336_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5336_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5336_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5336 = { .name = "ecdh_secp256r1_5336", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5336_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5336_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5336_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5336_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 56 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5337 for ECDH, tcId is 57 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5337_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x9f, 0x55, 0xd5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0xd3, 0xe5, 0xdc, 0x27, 0xdc, 0x5d, 0x88, 0xaa, 0x12, 0xfc, 0x07, 0x1d, 0x54, 0xaf, 0xc7, 0x44, 0xe2, 0x0b, 0x28, 0x81, 0xbc, 0x79, 0xa0, 0xd2, 0x50, 0x96, 0xb7, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5337_ourpubkey[] = { 0x4b, 0x16, 0x63, 0xee, 0x1d, 0x93, 0x30, 0xb7, 0x2b, 0x20, 0xbe, 0xb2, 0x83, 0x98, 0x50, 0x99, 0xef, 0xf7, 0xb4, 0x07, 0xa5, 0xe9, 0x77, 0xa4, 0x5a, 0x82, 0x5d, 0xe2, 0x9d, 0xee, 0x96, 0xe9, 0xe9, 0xd0, 0x74, 0xae, 0x4a, 0x80, 0x0e, 0x5c, 0x76, 0x7e, 0x99, 0xeb, 0x88, 0xcd, 0x1d, 0x57, 0xb0, 0x57, 0x8a, 0x62, 0x0e, 0xd2, 0xbe, 0xb5, 0x57, 0xa8, 0x4f, 0x3f, 0x76, 0x20, 0x1a, 0x75, }; static const unsigned char ecdh_secp256r1_5337_privkey[] = { 0x55, 0xd5, 0x5f, 0x11, 0xbb, 0x8d, 0xa1, 0xea, 0x31, 0x8b, 0xca, 0x72, 0x66, 0xf0, 0x37, 0x66, 0x62, 0x44, 0x1e, 0xa8, 0x72, 0x70, 0xaa, 0x20, 0x77, 0xf1, 0xb7, 0x70, 0xc4, 0x85, 0x4a, 0x48, }; static const unsigned char ecdh_secp256r1_5337_sharedsecret[] = { 0x67, 0xcb, 0x63, 0x56, 0x6c, 0x7c, 0xeb, 0x12, 0xfd, 0xd8, 0x5c, 0xe9, 0xd2, 0xf7, 0x7c, 0x35, 0x92, 0x42, 0xbb, 0xaa, 0x0e, 0xa1, 0xbf, 0x3c, 0xf5, 0x10, 0xa4, 0xa2, 0x65, 0x91, 0xd1, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5337 = { .name = "ecdh_secp256r1_5337", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5337_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5337_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5337_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5337_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 57 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5338 for ECDH, tcId is 58 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5338_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x48, 0x5c, 0x78, 0x0e, 0x2f, 0x83, 0xd7, 0x24, 0x33, 0xbd, 0x5d, 0x84, 0xa0, 0x6b, 0xb6, 0x54, 0x1c, 0x2a, 0xf3, 0x1d, 0xae, 0x87, 0x17, 0x28, 0xbf, 0x85, 0x6a, 0x17, 0x4f, 0x93, 0xf4, }; static const unsigned char ecdh_secp256r1_5338_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5338_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5338_sharedsecret[] = { 0xd1, 0x1c, 0x64, 0x0b, 0x43, 0x82, 0xe6, 0x0e, 0xc8, 0xd2, 0x54, 0xee, 0x76, 0xf0, 0x9b, 0x8f, 0xac, 0x57, 0x65, 0x1a, 0xb7, 0x3b, 0x6d, 0xd3, 0xfd, 0xc9, 0x35, 0xa6, 0x15, 0x64, 0xa3, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp256r1_5338 = { .name = "ecdh_secp256r1_5338", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5338_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5338_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5338_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5338_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 58 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5339 for ECDH, tcId is 59 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5339_peerpubkey[] = { 0x10, 0x01, 0x21, 0xf1, 0xa0, 0x94, 0x43, 0x85, 0x1c, 0x9a, 0xa2, 0xab, 0x6e, 0xe6, 0x44, 0x0e, 0x2a, 0xc5, 0xe1, 0xbe, 0x64, 0x82, 0x74, 0xbd, 0x5d, 0x26, 0xc1, 0x2f, 0xb3, 0xba, 0x3f, 0x7f, 0x03, 0x2a, 0x1c, 0x21, 0x9f, 0xa1, 0x45, 0x7c, 0xb2, 0x05, 0x88, 0x29, 0x7e, 0x05, 0x13, 0xcf, 0xd4, 0x90, 0x1f, 0x9a, 0x95, 0x41, 0x4f, 0x7e, 0x91, 0x4f, 0x91, 0x79, 0xf3, 0x85, 0x67, 0xa6, }; static const unsigned char ecdh_secp256r1_5339_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5339_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5339_sharedsecret[] = { 0x90, 0xe7, 0x12, 0xe2, 0xaf, 0xd1, 0x41, 0x71, 0xc1, 0x94, 0x67, 0xa2, 0xbf, 0xe7, 0xab, 0xf1, 0xc4, 0x77, 0xd1, 0xf4, 0x0f, 0x66, 0x75, 0xf0, 0x0e, 0x62, 0x2f, 0xd5, 0x60, 0x4f, 0xa1, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5339 = { .name = "ecdh_secp256r1_5339", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5339_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5339_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5339_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5339_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 59 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5340 for ECDH, tcId is 60 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5340_peerpubkey[] = { 0xca, 0xd0, 0x2a, 0xb5, 0x37, 0xc8, 0x08, 0x31, 0xcc, 0xdd, 0x39, 0x51, 0x29, 0xfc, 0x4b, 0xfe, 0x4a, 0x89, 0xae, 0x0c, 0x86, 0x6f, 0x66, 0x19, 0xa3, 0xe1, 0x41, 0x46, 0xd3, 0x69, 0x16, 0x94, 0x68, 0x9d, 0x47, 0x70, 0x65, 0xb4, 0x0f, 0x14, 0x0e, 0xd8, 0x7b, 0x37, 0xad, 0x04, 0x1e, 0x28, 0x22, 0x9b, 0x0f, 0x79, 0xa6, 0xb3, 0xc9, 0x92, 0x68, 0x99, 0x54, 0xc9, 0x7f, 0x73, 0x36, 0xd0, }; static const unsigned char ecdh_secp256r1_5340_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5340_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5340_sharedsecret[] = { 0x15, 0x95, 0x83, 0x10, 0x3d, 0x83, 0xf6, 0x35, 0x38, 0xbd, 0x4e, 0x20, 0x36, 0x07, 0xd7, 0x34, 0x89, 0x90, 0xbb, 0x7f, 0x84, 0x7f, 0xfb, 0xc9, 0xe5, 0xe5, 0x09, 0xc7, 0xe3, 0x4d, 0x39, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5340 = { .name = "ecdh_secp256r1_5340", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5340_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5340_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5340_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5340_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0, tcId is 60 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5341 for ECDH, tcId is 61 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5341_peerpubkey[] = { 0xab, 0xd1, 0x2e, 0xed, 0x4d, 0x65, 0x4b, 0xaa, 0x7d, 0x96, 0x86, 0x33, 0x77, 0x0f, 0x4a, 0x58, 0x2f, 0x17, 0x3d, 0x66, 0x33, 0x90, 0x60, 0x00, 0xed, 0x8a, 0xcf, 0x62, 0x33, 0xc6, 0x36, 0x5f, 0x09, 0x12, 0xf3, 0x0b, 0xb9, 0x8e, 0x7c, 0xb5, 0x25, 0x89, 0x0d, 0x5e, 0xa1, 0xe2, 0x17, 0x14, 0x9d, 0x52, 0xa6, 0xc5, 0x9f, 0x78, 0x02, 0xa9, 0xf3, 0x07, 0xe8, 0x0d, 0x2a, 0x9f, 0xee, 0x3a, }; static const unsigned char ecdh_secp256r1_5341_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5341_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5341_sharedsecret[] = { 0x54, 0x6a, 0x2d, 0xfa, 0xdb, 0x1d, 0x60, 0x14, 0x0b, 0xec, 0xac, 0x2d, 0xc2, 0xe6, 0x2d, 0x20, 0xc7, 0x89, 0x03, 0x77, 0x55, 0xad, 0x5a, 0x49, 0xe3, 0x7e, 0x48, 0xf2, 0xca, 0x1b, 0x76, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256r1_5341 = { .name = "ecdh_secp256r1_5341", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5341_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5341_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5341_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5341_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 61 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5342 for ECDH, tcId is 62 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5342_peerpubkey[] = { 0xa5, 0x62, 0xc1, 0xad, 0x9a, 0x72, 0x21, 0x7d, 0xf0, 0x01, 0x47, 0xc7, 0xd2, 0xce, 0xaf, 0xc6, 0x5a, 0x16, 0x20, 0xa1, 0x46, 0x9c, 0x94, 0x7e, 0x14, 0xfe, 0x43, 0x00, 0x3a, 0xc5, 0x37, 0x1b, 0x7a, 0xd1, 0xd3, 0x3c, 0x01, 0xf0, 0xeb, 0x92, 0xb7, 0x79, 0xed, 0x6e, 0x46, 0x0d, 0x03, 0x34, 0x44, 0x70, 0x75, 0xa3, 0xcf, 0x66, 0xb2, 0xff, 0xbd, 0xae, 0x31, 0xb4, 0x38, 0xdf, 0x6d, 0x7b, }; static const unsigned char ecdh_secp256r1_5342_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5342_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5342_sharedsecret[] = { 0xe5, 0x85, 0x9c, 0x78, 0x11, 0xc5, 0xc3, 0xac, 0xa6, 0xc2, 0x36, 0xab, 0x49, 0x9c, 0xca, 0xd1, 0x03, 0x01, 0xc7, 0xc5, 0xee, 0x91, 0x3c, 0xe9, 0x1b, 0xb6, 0x64, 0x28, 0xcd, 0xe1, 0x1e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5342 = { .name = "ecdh_secp256r1_5342", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5342_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5342_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5342_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5342_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 62 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5343 for ECDH, tcId is 63 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5343_peerpubkey[] = { 0x8c, 0xdb, 0xeb, 0xe9, 0xd0, 0x7d, 0x2e, 0xbc, 0x4e, 0x41, 0xb1, 0xd7, 0x2a, 0x9b, 0xac, 0x29, 0x74, 0xcf, 0xc4, 0xcf, 0x73, 0x8d, 0x8b, 0x6d, 0xe7, 0x1a, 0x40, 0xed, 0xe9, 0x92, 0x0d, 0x88, 0xdc, 0x24, 0x39, 0xee, 0x00, 0x03, 0xfb, 0xde, 0x7b, 0x0a, 0x3a, 0xe4, 0x17, 0x10, 0xc6, 0x4b, 0x17, 0xb0, 0x8a, 0x88, 0x41, 0xe9, 0x7a, 0x39, 0x0e, 0x48, 0x2c, 0x97, 0x68, 0xfe, 0x01, 0xea, }; static const unsigned char ecdh_secp256r1_5343_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5343_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5343_sharedsecret[] = { 0x65, 0x75, 0x4a, 0xb4, 0x59, 0xa1, 0x04, 0x71, 0xaf, 0x00, 0x94, 0x3f, 0x41, 0x4f, 0x28, 0xde, 0x1b, 0xc3, 0x79, 0x68, 0xb0, 0x97, 0xad, 0x28, 0x45, 0xfe, 0x11, 0x14, 0x20, 0x85, 0x50, 0x08, }; static const wycheproof_ecdh_test ecdh_secp256r1_5343 = { .name = "ecdh_secp256r1_5343", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5343_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5343_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5343_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5343_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 63 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5344 for ECDH, tcId is 64 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5344_peerpubkey[] = { 0xf0, 0xcd, 0x7c, 0xd8, 0x33, 0x46, 0x78, 0x30, 0x8c, 0xfe, 0xb7, 0x85, 0xa6, 0x8a, 0x15, 0x04, 0xa9, 0x14, 0x18, 0xd4, 0x44, 0x1c, 0x4d, 0x4c, 0x74, 0x0c, 0x57, 0x48, 0x8b, 0x9a, 0xaf, 0xb0, 0x79, 0xd8, 0xa8, 0xd2, 0x99, 0x73, 0xeb, 0x50, 0x22, 0x67, 0xec, 0xcf, 0x6e, 0xda, 0x32, 0x66, 0x26, 0xfc, 0x6e, 0x02, 0x5d, 0x53, 0x2b, 0x85, 0xe9, 0xf7, 0x11, 0xf8, 0xce, 0x69, 0x71, 0xbb, }; static const unsigned char ecdh_secp256r1_5344_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5344_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5344_sharedsecret[] = { 0x86, 0x31, 0xfe, 0xde, 0xe6, 0xce, 0xb3, 0x38, 0x6a, 0xc4, 0x2e, 0xdf, 0x32, 0x2c, 0x18, 0x88, 0x24, 0x89, 0x3d, 0x26, 0x7d, 0x61, 0x08, 0xf0, 0xcf, 0x5d, 0xe6, 0x96, 0x4b, 0x88, 0x33, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5344 = { .name = "ecdh_secp256r1_5344", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5344_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5344_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5344_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5344_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 64 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5345 for ECDH, tcId is 65 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5345_peerpubkey[] = { 0x8a, 0xd0, 0xaf, 0x23, 0xb9, 0x0e, 0x03, 0x41, 0xb4, 0xe2, 0xa5, 0xa9, 0x63, 0xc8, 0x52, 0x2f, 0xe0, 0x11, 0xac, 0xe1, 0x9b, 0x1b, 0x86, 0x10, 0xcb, 0xe7, 0x92, 0x7a, 0x17, 0xa7, 0x24, 0x97, 0x36, 0xb8, 0x7a, 0xb9, 0x90, 0x72, 0x89, 0xa2, 0x3a, 0x0f, 0xb2, 0x0c, 0xa4, 0xbe, 0x42, 0xd4, 0x21, 0xfe, 0x38, 0xd3, 0x5a, 0xf0, 0x9d, 0x79, 0xcb, 0xe6, 0xe6, 0xa4, 0xe9, 0x5a, 0x1a, 0x8b, }; static const unsigned char ecdh_secp256r1_5345_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5345_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5345_sharedsecret[] = { 0x68, 0xc5, 0x85, 0x99, 0xc1, 0x23, 0xbe, 0x6d, 0x37, 0xd3, 0x43, 0xbd, 0x41, 0xb1, 0x1c, 0xec, 0xc5, 0xf8, 0x4b, 0x26, 0x35, 0x66, 0x11, 0x63, 0x65, 0x6f, 0x76, 0xd7, 0xfb, 0x04, 0xb4, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_5345 = { .name = "ecdh_secp256r1_5345", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5345_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5345_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5345_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5345_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 65 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5346 for ECDH, tcId is 66 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5346_peerpubkey[] = { 0x59, 0xc9, 0xcc, 0x2d, 0x72, 0x97, 0xdd, 0xb0, 0xbe, 0x63, 0x04, 0xc9, 0x4c, 0xeb, 0xf4, 0x2d, 0x81, 0x3e, 0x97, 0x0c, 0x50, 0xf4, 0x52, 0x87, 0x75, 0x3b, 0x8e, 0x9c, 0xb0, 0xc6, 0xdb, 0x45, 0xf5, 0x71, 0xd9, 0x86, 0x99, 0x08, 0x97, 0x85, 0x1f, 0xc8, 0xe1, 0xdb, 0x67, 0xc9, 0x97, 0x59, 0xe8, 0x97, 0x9c, 0x3d, 0x9d, 0xdf, 0xd0, 0x2f, 0x63, 0x3c, 0xf1, 0xea, 0x5b, 0x6c, 0x48, 0xab, }; static const unsigned char ecdh_secp256r1_5346_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5346_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5346_sharedsecret[] = { 0xb5, 0x8d, 0x00, 0x52, 0x5c, 0x4c, 0x4b, 0x4f, 0x46, 0x56, 0x28, 0x52, 0xc1, 0x5c, 0xe2, 0xe4, 0x8d, 0xbe, 0x23, 0xa3, 0xbe, 0x37, 0x54, 0x1e, 0x04, 0x84, 0x46, 0xef, 0xf5, 0x15, 0x2e, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp256r1_5346 = { .name = "ecdh_secp256r1_5346", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5346_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5346_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5346_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5346_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 66 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5347 for ECDH, tcId is 67 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5347_peerpubkey[] = { 0xe9, 0x70, 0x80, 0xda, 0x72, 0x63, 0xa2, 0x9c, 0x30, 0x72, 0xa6, 0x51, 0x78, 0xb7, 0xb3, 0x15, 0x87, 0xa5, 0xdf, 0xfc, 0x19, 0x75, 0x4c, 0x56, 0x1e, 0x32, 0xfc, 0x53, 0x19, 0x92, 0x34, 0xf0, 0x4e, 0x0b, 0x9b, 0x70, 0xc9, 0x7b, 0x60, 0xe9, 0x40, 0xd5, 0x62, 0x9f, 0x22, 0x66, 0xd1, 0xa8, 0xe2, 0x42, 0xde, 0xb7, 0x1e, 0xb7, 0xf0, 0xb2, 0xb2, 0xda, 0x2e, 0x30, 0x44, 0x73, 0x8a, 0xb0, }; static const unsigned char ecdh_secp256r1_5347_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5347_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5347_sharedsecret[] = { 0x4b, 0xaa, 0x01, 0xc2, 0x11, 0xaf, 0x8f, 0x94, 0xac, 0xa8, 0x95, 0x48, 0x90, 0x2a, 0x71, 0xf7, 0xb5, 0x3f, 0x78, 0x14, 0xbb, 0xce, 0xb3, 0xd4, 0xbe, 0xf3, 0x1b, 0x37, 0x6e, 0x34, 0xb4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_5347 = { .name = "ecdh_secp256r1_5347", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5347_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5347_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5347_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5347_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 67 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5348 for ECDH, tcId is 68 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5348_peerpubkey[] = { 0x44, 0xf6, 0x00, 0xda, 0x71, 0x60, 0xb9, 0x75, 0xa0, 0x23, 0x2c, 0xb6, 0xa4, 0xa9, 0xe7, 0x28, 0x03, 0xfd, 0x77, 0xca, 0xac, 0x84, 0x35, 0x20, 0x39, 0xce, 0x9f, 0x4a, 0x67, 0xa1, 0xda, 0x77, 0x62, 0x60, 0x45, 0x59, 0x93, 0x81, 0xe5, 0x99, 0xeb, 0x9c, 0xd0, 0x3f, 0x28, 0x2e, 0x26, 0x7b, 0x8c, 0xfd, 0x3b, 0xa9, 0x8d, 0xab, 0xbb, 0x0f, 0x29, 0xab, 0x1c, 0x09, 0x44, 0x27, 0x0f, 0x3f, }; static const unsigned char ecdh_secp256r1_5348_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5348_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5348_sharedsecret[] = { 0xe1, 0x9f, 0xe9, 0xd1, 0x29, 0x4c, 0xca, 0x94, 0xa6, 0x38, 0x88, 0x25, 0x24, 0x9e, 0x6b, 0x37, 0x93, 0x1a, 0x23, 0x1e, 0xb9, 0x17, 0xcf, 0xec, 0xb2, 0x92, 0x79, 0x2d, 0x0c, 0x18, 0xf1, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_5348 = { .name = "ecdh_secp256r1_5348", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5348_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5348_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5348_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5348_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 68 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5349 for ECDH, tcId is 69 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5349_peerpubkey[] = { 0x71, 0xe3, 0xe9, 0xbe, 0x0e, 0x0e, 0xe4, 0x44, 0x9a, 0x19, 0xd2, 0xef, 0x79, 0x19, 0x26, 0x68, 0x14, 0xa0, 0xfa, 0xfd, 0x04, 0xfb, 0x67, 0x7e, 0xdc, 0x32, 0x65, 0x6e, 0x6a, 0x46, 0xe4, 0xd2, 0xbc, 0x5f, 0x40, 0x4c, 0x5b, 0x54, 0xf0, 0x3e, 0x29, 0x4b, 0xe2, 0x2e, 0x88, 0x20, 0xa7, 0x1b, 0x4d, 0x4a, 0xc0, 0x4a, 0x70, 0x8e, 0x13, 0xcd, 0x71, 0xfd, 0xb0, 0x04, 0x1e, 0x7e, 0x96, 0x98, }; static const unsigned char ecdh_secp256r1_5349_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5349_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5349_sharedsecret[] = { 0xdd, 0xc1, 0xf4, 0x66, 0x3b, 0x92, 0x8a, 0xdd, 0x06, 0xb1, 0xe5, 0x7c, 0x48, 0xdb, 0x98, 0xea, 0x08, 0xc4, 0xd3, 0x3c, 0x3c, 0x21, 0x06, 0x37, 0x14, 0x07, 0xf3, 0x84, 0x8a, 0x9d, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256r1_5349 = { .name = "ecdh_secp256r1_5349", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5349_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5349_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5349_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5349_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 69 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5350 for ECDH, tcId is 70 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5350_peerpubkey[] = { 0x27, 0xb6, 0x93, 0x61, 0x01, 0x54, 0xd5, 0xb7, 0xf0, 0x80, 0x94, 0xe4, 0x6f, 0xf2, 0xa2, 0xac, 0x1c, 0x01, 0xd3, 0xcd, 0x82, 0x6e, 0x32, 0x08, 0xe5, 0x25, 0x44, 0x36, 0xed, 0x27, 0x99, 0x60, 0xf2, 0x36, 0x4e, 0x3a, 0x60, 0x4f, 0x3b, 0x59, 0x2e, 0x19, 0x26, 0x2a, 0x1b, 0x22, 0xb1, 0xa1, 0x48, 0xe3, 0x8c, 0xd8, 0x2c, 0x9e, 0x54, 0xf1, 0x08, 0xef, 0x8f, 0x83, 0x36, 0x83, 0xf8, 0xb4, }; static const unsigned char ecdh_secp256r1_5350_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5350_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5350_sharedsecret[] = { 0x91, 0xdf, 0xa9, 0x5e, 0xd1, 0xea, 0xcb, 0xea, 0x41, 0x91, 0x56, 0x47, 0x1a, 0x8d, 0xdb, 0xb6, 0xcb, 0x93, 0xdd, 0x45, 0x64, 0x33, 0xe1, 0x86, 0x33, 0xd2, 0x68, 0x17, 0x61, 0x1b, 0x9c, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_5350 = { .name = "ecdh_secp256r1_5350", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5350_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5350_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5350_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5350_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 70 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5351 for ECDH, tcId is 71 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5351_peerpubkey[] = { 0xc3, 0x2a, 0x52, 0xaf, 0x6d, 0xac, 0x36, 0x9b, 0x6a, 0x49, 0x9a, 0x49, 0xd3, 0xe3, 0x8e, 0x7c, 0x95, 0x34, 0xbb, 0x91, 0x39, 0xf5, 0x7d, 0x49, 0x84, 0xb1, 0xd3, 0xc0, 0x4a, 0xb8, 0x22, 0x06, 0x53, 0xcd, 0xc2, 0xda, 0xef, 0xac, 0x83, 0xcf, 0x43, 0xc0, 0xd6, 0x46, 0x04, 0xe5, 0xf9, 0xd8, 0x5b, 0x55, 0xdd, 0xe6, 0x2b, 0x69, 0x2c, 0xd3, 0x6a, 0xf9, 0x9e, 0xbf, 0xf4, 0x14, 0x0c, 0x39, }; static const unsigned char ecdh_secp256r1_5351_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5351_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5351_sharedsecret[] = { 0x9f, 0x91, 0xa9, 0x63, 0x3d, 0xaa, 0x4c, 0x56, 0x46, 0x5e, 0x9f, 0xbe, 0xf4, 0x43, 0x1e, 0x13, 0x04, 0x1f, 0x68, 0x91, 0x0f, 0xb5, 0xba, 0x89, 0xf8, 0xda, 0x93, 0x81, 0xd6, 0x8a, 0x0d, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256r1_5351 = { .name = "ecdh_secp256r1_5351", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5351_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5351_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5351_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5351_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 71 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5352 for ECDH, tcId is 72 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5352_peerpubkey[] = { 0x6f, 0x4e, 0x2f, 0x72, 0xf3, 0x2a, 0xe6, 0x6f, 0x1f, 0x46, 0x10, 0x96, 0x60, 0x04, 0xc4, 0x36, 0xaa, 0x0d, 0x90, 0xb7, 0xdf, 0x07, 0xce, 0x9c, 0x4a, 0xca, 0x52, 0xb0, 0x2d, 0x46, 0xb4, 0xd0, 0xc6, 0xa3, 0xec, 0x76, 0xbf, 0x32, 0x1b, 0x7f, 0xe5, 0x20, 0x3c, 0xf3, 0xd6, 0x6e, 0x2d, 0x52, 0xe3, 0xee, 0x04, 0x95, 0xec, 0x76, 0x6d, 0x57, 0x9a, 0x45, 0x11, 0x17, 0x5e, 0x01, 0xbc, 0x4d, }; static const unsigned char ecdh_secp256r1_5352_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5352_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5352_sharedsecret[] = { 0x01, 0x4a, 0xe8, 0x14, 0x42, 0xf8, 0xcb, 0x6d, 0xf5, 0x8f, 0xf4, 0x1e, 0x6d, 0xb2, 0x03, 0xdb, 0x40, 0xea, 0x95, 0x1b, 0x91, 0xbe, 0xbf, 0x86, 0xd4, 0x2c, 0xda, 0x7b, 0xe3, 0x3f, 0xea, 0x64, }; static const wycheproof_ecdh_test ecdh_secp256r1_5352 = { .name = "ecdh_secp256r1_5352", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5352_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5352_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5352_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5352_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 72 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5353 for ECDH, tcId is 73 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5353_peerpubkey[] = { 0x2e, 0x06, 0x59, 0x75, 0xdf, 0x64, 0x2f, 0xcf, 0xda, 0xfe, 0x2f, 0xa5, 0xaf, 0xfc, 0x18, 0xb2, 0xc6, 0x83, 0x71, 0x79, 0x6f, 0x9d, 0x96, 0x3d, 0x89, 0xc4, 0xf5, 0xac, 0x5c, 0xce, 0xa2, 0x8b, 0x99, 0x0f, 0x31, 0x52, 0x2f, 0xbb, 0x26, 0x5c, 0x3f, 0x4d, 0x5c, 0x4b, 0xb8, 0x2e, 0xbf, 0x5d, 0xdf, 0xf5, 0xa8, 0xea, 0x58, 0x8d, 0xb4, 0xd2, 0x82, 0xac, 0xdc, 0xa7, 0xa6, 0xcc, 0xf4, 0x28, }; static const unsigned char ecdh_secp256r1_5353_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5353_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5353_sharedsecret[] = { 0x78, 0xe8, 0x1e, 0x85, 0x73, 0xc3, 0xae, 0x60, 0x89, 0xdf, 0x7d, 0xb1, 0xfb, 0x29, 0xd7, 0xbe, 0x12, 0xdc, 0x11, 0xf1, 0x5b, 0xb2, 0x5b, 0xff, 0x2a, 0xf8, 0x02, 0xe1, 0x5d, 0xdc, 0x13, 0x6e, }; static const wycheproof_ecdh_test ecdh_secp256r1_5353 = { .name = "ecdh_secp256r1_5353", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5353_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5353_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5353_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5353_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 73 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5354 for ECDH, tcId is 74 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5354_peerpubkey[] = { 0xe1, 0x33, 0x1e, 0xee, 0x03, 0xc5, 0x0c, 0xc2, 0xb9, 0x09, 0x44, 0xdd, 0xfc, 0x0d, 0x3a, 0x7d, 0xd8, 0x18, 0x5e, 0x6c, 0x21, 0xc7, 0x5f, 0xa9, 0x2a, 0x0c, 0x14, 0xb0, 0xf1, 0x94, 0x9a, 0xc9, 0x15, 0x4d, 0x78, 0x3f, 0x45, 0x47, 0xdc, 0xf5, 0x50, 0x8b, 0xbd, 0x86, 0xc3, 0xdd, 0x8c, 0x3b, 0x17, 0xb6, 0x19, 0x89, 0xf9, 0x3d, 0xb5, 0x49, 0x0e, 0xc0, 0x2a, 0x46, 0xa1, 0x00, 0x5c, 0x2c, }; static const unsigned char ecdh_secp256r1_5354_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5354_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5354_sharedsecret[] = { 0xed, 0x67, 0x19, 0x5a, 0x27, 0x2c, 0x63, 0xc5, 0x02, 0x05, 0xab, 0xf2, 0x74, 0x39, 0x29, 0x11, 0x34, 0xff, 0xa1, 0xe8, 0xec, 0x59, 0x7f, 0x3b, 0x30, 0x27, 0x16, 0xd9, 0x36, 0x32, 0xe9, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5354 = { .name = "ecdh_secp256r1_5354", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5354_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5354_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5354_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5354_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 74 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5355 for ECDH, tcId is 75 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5355_peerpubkey[] = { 0xe0, 0xc5, 0x6d, 0x48, 0x6e, 0x9c, 0x01, 0x16, 0x3e, 0xd6, 0xc3, 0xff, 0x25, 0xde, 0x3c, 0xdf, 0x57, 0x44, 0xdb, 0xf9, 0xe0, 0xe0, 0x0b, 0xdc, 0xf1, 0x99, 0x65, 0xdf, 0x4b, 0xa1, 0xf3, 0x11, 0xbd, 0x5e, 0x44, 0x43, 0x06, 0x65, 0x82, 0x3d, 0x8c, 0x0b, 0x34, 0xeb, 0xec, 0x0a, 0x6a, 0xab, 0x5e, 0xa9, 0x6c, 0xf2, 0x39, 0xde, 0x21, 0x4f, 0xd0, 0x11, 0xe6, 0xf9, 0xec, 0x50, 0x1d, 0xd4, }; static const unsigned char ecdh_secp256r1_5355_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5355_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5355_sharedsecret[] = { 0x50, 0x77, 0x43, 0x47, 0x84, 0x88, 0x28, 0xee, 0xb6, 0x23, 0x0f, 0x49, 0x7c, 0xd1, 0x81, 0xf8, 0xc5, 0x7f, 0xbd, 0x18, 0xff, 0xbf, 0x83, 0x28, 0xcd, 0x00, 0x83, 0x21, 0xa1, 0xc3, 0x7c, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256r1_5355 = { .name = "ecdh_secp256r1_5355", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5355_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5355_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5355_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5355_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 75 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5356 for ECDH, tcId is 76 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5356_peerpubkey[] = { 0x88, 0x5e, 0xad, 0x6c, 0x07, 0x4f, 0x8d, 0x75, 0x1a, 0x76, 0x7e, 0x91, 0x8c, 0x4e, 0x89, 0x21, 0x0a, 0x58, 0x7c, 0x4b, 0x19, 0xd4, 0x22, 0x44, 0xae, 0x07, 0x02, 0x7e, 0x36, 0x18, 0x31, 0x05, 0x3e, 0x80, 0x77, 0x2b, 0xe5, 0x7f, 0xbd, 0x74, 0x49, 0x55, 0xa2, 0xe8, 0x52, 0x30, 0x63, 0xcc, 0x61, 0x36, 0xf2, 0xbb, 0x37, 0xbe, 0xfb, 0xef, 0x7a, 0x68, 0x1d, 0x3b, 0xbb, 0xc5, 0x77, 0x88, }; static const unsigned char ecdh_secp256r1_5356_ourpubkey[] = { 0xb0, 0xc8, 0x32, 0xa3, 0x24, 0xe8, 0x0a, 0xd0, 0x28, 0xf7, 0x2f, 0xf9, 0xbd, 0x8f, 0x5f, 0x0d, 0x1a, 0xad, 0x5c, 0x12, 0x1d, 0xc4, 0xcb, 0xeb, 0x77, 0xde, 0x40, 0xd8, 0xa7, 0x0f, 0x4a, 0x85, 0x92, 0x78, 0x72, 0x1b, 0x23, 0x84, 0x99, 0xbf, 0xb0, 0xc9, 0x78, 0x5d, 0x6f, 0x2d, 0xca, 0x2b, 0xc9, 0xf6, 0x36, 0x51, 0xa4, 0x58, 0xb5, 0x55, 0x10, 0xa2, 0x27, 0x54, 0xbe, 0x3d, 0xe2, 0x03, }; static const unsigned char ecdh_secp256r1_5356_privkey[] = { 0xe4, 0x61, 0xc5, 0xb5, 0xe6, 0x3d, 0x75, 0xb4, 0xc8, 0xc1, 0x23, 0xbf, 0x8b, 0x9c, 0xd4, 0x5e, 0x71, 0x2a, 0xf0, 0x8f, 0x7e, 0x2e, 0x49, 0x4a, 0x8f, 0x25, 0x5a, 0xc9, 0xd8, 0x0e, 0x05, 0x8b, }; static const unsigned char ecdh_secp256r1_5356_sharedsecret[] = { 0x91, 0x3d, 0xa7, 0x10, 0x44, 0xb8, 0x02, 0x1a, 0x86, 0xc8, 0xfc, 0xaf, 0x4f, 0x63, 0x4d, 0x0d, 0x62, 0x5f, 0xf9, 0x1e, 0xe1, 0xc8, 0x47, 0x4d, 0x54, 0x8b, 0xd1, 0x08, 0x88, 0x96, 0x4f, 0xb1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5356 = { .name = "ecdh_secp256r1_5356", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5356_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5356_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5356_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5356_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 76 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5357 for ECDH, tcId is 77 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5357_peerpubkey[] = { 0x41, 0xe9, 0xd4, 0xcf, 0xa8, 0xef, 0xe8, 0x0b, 0x89, 0x5a, 0x8c, 0xbc, 0xce, 0x25, 0x68, 0xe2, 0x51, 0xdb, 0x7e, 0xcd, 0xfd, 0x20, 0xa7, 0xad, 0x71, 0x0d, 0x4a, 0x4b, 0xf2, 0xad, 0xdc, 0x6b, 0x5e, 0xc3, 0x6a, 0x83, 0x39, 0x16, 0x8a, 0x03, 0xf1, 0x5b, 0x8c, 0x80, 0xf2, 0xa2, 0xa8, 0x28, 0xf1, 0x51, 0xd3, 0x87, 0x91, 0x58, 0x48, 0x53, 0xba, 0x2f, 0xf4, 0x4a, 0x2a, 0x04, 0x60, 0xa1, }; static const unsigned char ecdh_secp256r1_5357_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5357_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5357_sharedsecret[] = { 0xb4, 0x8e, 0x11, 0x9d, 0x29, 0xee, 0xf7, 0xdb, 0xb7, 0x6b, 0x64, 0x21, 0x8e, 0x72, 0x8d, 0xdb, 0xf6, 0xec, 0x60, 0x05, 0x05, 0xec, 0x7c, 0xed, 0x6a, 0xb6, 0xfb, 0x87, 0x63, 0x30, 0x8d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5357 = { .name = "ecdh_secp256r1_5357", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5357_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5357_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5357_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5357_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 77 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5358 for ECDH, tcId is 78 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5358_peerpubkey[] = { 0x77, 0x6a, 0xef, 0x1a, 0xcb, 0x82, 0xb6, 0x28, 0xe1, 0x32, 0xcc, 0x29, 0x44, 0x09, 0x88, 0xf0, 0xa1, 0x5d, 0x4c, 0xc2, 0xb4, 0xf3, 0x28, 0xae, 0xcb, 0x06, 0x3c, 0x9b, 0x86, 0xe5, 0x01, 0x8e, 0x6e, 0x44, 0xdf, 0xc6, 0x04, 0x44, 0xfa, 0xa9, 0xc4, 0xe3, 0x6b, 0xc2, 0x17, 0x45, 0x1f, 0x7a, 0xc2, 0x95, 0x6c, 0xb3, 0xb2, 0xe9, 0xbb, 0xd6, 0x55, 0xeb, 0xa2, 0x97, 0x16, 0x3d, 0x1f, 0x34, }; static const unsigned char ecdh_secp256r1_5358_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5358_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5358_sharedsecret[] = { 0x28, 0xa8, 0x8b, 0x6b, 0x25, 0x8f, 0x23, 0x30, 0x20, 0xba, 0x6f, 0xa9, 0xc0, 0x0d, 0x1d, 0x72, 0x83, 0x1f, 0x45, 0x15, 0xb8, 0x69, 0x66, 0xa9, 0x78, 0x2f, 0x52, 0x13, 0x15, 0xe1, 0x8a, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256r1_5358 = { .name = "ecdh_secp256r1_5358", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5358_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5358_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5358_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5358_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 78 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5359 for ECDH, tcId is 79 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5359_peerpubkey[] = { 0x9e, 0xc0, 0x6b, 0x0b, 0x08, 0x66, 0x2c, 0x0e, 0x1d, 0xd9, 0x11, 0x16, 0x96, 0xa6, 0x3a, 0x16, 0x01, 0xcc, 0x83, 0xce, 0xe2, 0x06, 0x95, 0x77, 0x8a, 0xdf, 0x84, 0xd4, 0x30, 0x64, 0xfc, 0x90, 0x15, 0x60, 0x01, 0xf0, 0x84, 0xcd, 0x3c, 0x1d, 0xf1, 0xa0, 0x87, 0xf6, 0x26, 0x53, 0x3b, 0x65, 0x72, 0x58, 0x48, 0x89, 0xbd, 0x3d, 0x5c, 0x2c, 0x99, 0xf0, 0xe3, 0x11, 0xe2, 0x2b, 0x41, 0xe6, }; static const unsigned char ecdh_secp256r1_5359_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5359_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5359_sharedsecret[] = { 0xc4, 0xff, 0x86, 0x5f, 0xf3, 0xdc, 0x49, 0x53, 0xea, 0x78, 0xd9, 0x2a, 0x02, 0xf3, 0x34, 0x5a, 0x53, 0xbd, 0xb6, 0x05, 0x0c, 0xfd, 0x8f, 0x41, 0xba, 0xa4, 0x39, 0x5e, 0xcb, 0x6a, 0xca, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp256r1_5359 = { .name = "ecdh_secp256r1_5359", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5359_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5359_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5359_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5359_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 79 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5360 for ECDH, tcId is 80 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5360_peerpubkey[] = { 0xfa, 0x51, 0xd1, 0x28, 0xad, 0xc2, 0x00, 0x0f, 0x09, 0xff, 0x12, 0xc6, 0xfd, 0x8e, 0x25, 0xaa, 0x08, 0x55, 0x6d, 0x70, 0x8b, 0xf6, 0xb0, 0xff, 0xff, 0x9e, 0x8e, 0xaa, 0xd4, 0x78, 0x3f, 0x0d, 0xe2, 0x2b, 0xf5, 0x29, 0xe5, 0x16, 0xe1, 0xf6, 0x4b, 0x8e, 0x0d, 0x09, 0xf9, 0x8f, 0xad, 0x4e, 0x50, 0x16, 0x95, 0xa9, 0x30, 0xa1, 0xb2, 0x20, 0x76, 0x65, 0x9d, 0xa7, 0x07, 0xe3, 0xcc, 0xd0, }; static const unsigned char ecdh_secp256r1_5360_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5360_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5360_sharedsecret[] = { 0xde, 0x10, 0x69, 0xf0, 0x51, 0x63, 0x7e, 0x10, 0x16, 0x65, 0x59, 0xce, 0xf4, 0x46, 0x88, 0xaf, 0xc8, 0x09, 0x34, 0x18, 0x55, 0x26, 0x12, 0x15, 0xc4, 0xf3, 0x81, 0xd9, 0xd7, 0xda, 0x76, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_5360 = { .name = "ecdh_secp256r1_5360", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5360_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5360_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5360_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5360_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 80 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5361 for ECDH, tcId is 81 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5361_peerpubkey[] = { 0x61, 0x4d, 0xcf, 0xbe, 0xa4, 0x78, 0x9a, 0x3f, 0x3e, 0xb4, 0xa8, 0xe2, 0xf1, 0x11, 0xc8, 0x87, 0xf0, 0x24, 0x8d, 0x93, 0x16, 0xb9, 0x9d, 0x08, 0x64, 0xc9, 0x27, 0xa0, 0x45, 0xd6, 0x94, 0x17, 0x53, 0xa0, 0x73, 0xbe, 0xfe, 0x08, 0x49, 0x1a, 0x80, 0x50, 0xa4, 0xd9, 0x6d, 0x08, 0xba, 0x47, 0x90, 0xae, 0x18, 0xdb, 0x3e, 0xf7, 0xf0, 0xea, 0xcc, 0xf5, 0x9c, 0xe1, 0x09, 0x5a, 0xfc, 0x54, }; static const unsigned char ecdh_secp256r1_5361_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5361_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5361_sharedsecret[] = { 0x42, 0x07, 0xbf, 0x41, 0x59, 0xfa, 0xa0, 0xe5, 0x0e, 0xd2, 0x38, 0xb9, 0xc0, 0xff, 0x46, 0x19, 0x4a, 0x53, 0x9a, 0x1b, 0xa0, 0x3a, 0x5a, 0x4c, 0x8d, 0x68, 0xf3, 0x69, 0xae, 0xcd, 0x31, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5361 = { .name = "ecdh_secp256r1_5361", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5361_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5361_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5361_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5361_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 81 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5362 for ECDH, tcId is 82 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5362_peerpubkey[] = { 0xef, 0xe7, 0x75, 0x4e, 0xd4, 0xc0, 0xb3, 0xc1, 0xdd, 0x30, 0x1b, 0xc1, 0xed, 0x69, 0x80, 0x0a, 0xa2, 0xff, 0x5d, 0x51, 0xfb, 0x85, 0x93, 0x77, 0x15, 0xe6, 0x0d, 0x2e, 0x7b, 0xca, 0xda, 0x8e, 0xb1, 0x58, 0x1a, 0xb7, 0x5f, 0xb3, 0xc7, 0x97, 0xef, 0x94, 0xa9, 0xdb, 0xa3, 0xd8, 0x25, 0x68, 0xc8, 0x46, 0x17, 0xea, 0xf3, 0xfa, 0x04, 0xf2, 0x79, 0xfb, 0xfd, 0x89, 0x8f, 0x70, 0x46, 0x04, }; static const unsigned char ecdh_secp256r1_5362_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5362_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5362_sharedsecret[] = { 0xb5, 0xa0, 0xec, 0x92, 0xae, 0xcc, 0x30, 0x10, 0xd2, 0x7d, 0x22, 0x63, 0xd3, 0xda, 0x66, 0xe3, 0xd2, 0xf3, 0x39, 0x5d, 0x23, 0x94, 0x70, 0x24, 0xa3, 0xf4, 0x74, 0x44, 0x54, 0x62, 0x20, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256r1_5362 = { .name = "ecdh_secp256r1_5362", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5362_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5362_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5362_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5362_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 82 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5363 for ECDH, tcId is 83 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5363_peerpubkey[] = { 0xd8, 0xe1, 0x3f, 0xbd, 0x01, 0x7f, 0x1f, 0x9a, 0x26, 0xbe, 0x35, 0xc6, 0x11, 0xd7, 0xb2, 0x29, 0x9f, 0x5d, 0x10, 0xde, 0x3c, 0x8a, 0x26, 0x36, 0x22, 0x73, 0xff, 0xfb, 0x85, 0x23, 0x8f, 0x3e, 0xd1, 0x42, 0x6b, 0x74, 0x8c, 0x1f, 0x87, 0xe3, 0xaf, 0xa2, 0xc1, 0xe7, 0xa0, 0x22, 0x43, 0x10, 0xc9, 0x80, 0x65, 0x5e, 0x07, 0x39, 0x95, 0x90, 0xd1, 0x49, 0x4d, 0x6d, 0x6b, 0xea, 0x03, 0x96, }; static const unsigned char ecdh_secp256r1_5363_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5363_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5363_sharedsecret[] = { 0xd2, 0xa5, 0xbc, 0x66, 0x49, 0x8c, 0x60, 0x36, 0xae, 0xcd, 0xfa, 0xad, 0x04, 0x1c, 0xef, 0x73, 0x2a, 0x89, 0x3d, 0xe1, 0x90, 0xa0, 0xa5, 0xb4, 0x2f, 0xf7, 0x1e, 0x13, 0xf0, 0x92, 0x80, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_5363 = { .name = "ecdh_secp256r1_5363", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5363_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5363_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5363_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5363_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 83 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5364 for ECDH, tcId is 84 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5364_peerpubkey[] = { 0x5a, 0x10, 0x27, 0x66, 0x6a, 0x0e, 0x37, 0x24, 0x81, 0xfe, 0xc0, 0xb3, 0x90, 0x1e, 0x05, 0x8d, 0x60, 0x10, 0x7c, 0x07, 0xb1, 0x11, 0x55, 0x50, 0xce, 0xb0, 0x57, 0x89, 0xb5, 0x5a, 0x6d, 0x35, 0x06, 0x3d, 0x4c, 0x8e, 0xe6, 0x6e, 0xd4, 0x5f, 0xf3, 0xe1, 0xdf, 0xdc, 0xfd, 0x73, 0xed, 0x96, 0xa9, 0xe8, 0x31, 0x93, 0x88, 0x4a, 0xdb, 0xca, 0xa5, 0x74, 0xb2, 0xdd, 0x11, 0x8a, 0x69, 0x2b, }; static const unsigned char ecdh_secp256r1_5364_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5364_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5364_sharedsecret[] = { 0x1f, 0x81, 0x23, 0x13, 0xdd, 0xcf, 0x36, 0xbc, 0x38, 0x07, 0x1d, 0x0e, 0x51, 0xa7, 0x41, 0x00, 0xd6, 0x30, 0xc8, 0xe2, 0x0c, 0xc4, 0x14, 0x32, 0x6e, 0xef, 0xa4, 0x2e, 0xcb, 0x1b, 0x5f, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp256r1_5364 = { .name = "ecdh_secp256r1_5364", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5364_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5364_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5364_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5364_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 84 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5365 for ECDH, tcId is 85 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5365_peerpubkey[] = { 0x79, 0x37, 0xb9, 0xc4, 0x09, 0x86, 0xdd, 0x75, 0x5a, 0x06, 0x56, 0x20, 0x30, 0x89, 0x78, 0x25, 0x83, 0xda, 0x7d, 0x81, 0x13, 0xa4, 0x41, 0x90, 0x76, 0x2a, 0xb4, 0x74, 0xa2, 0x0b, 0xcf, 0x60, 0xef, 0xcb, 0xc1, 0x52, 0x5a, 0xed, 0x5b, 0x4a, 0xd8, 0xe6, 0x87, 0xcb, 0x02, 0xc2, 0xef, 0x88, 0x87, 0x09, 0x5c, 0xad, 0xca, 0x56, 0xc7, 0x65, 0xb4, 0x1b, 0x4a, 0x95, 0x44, 0xff, 0x2f, 0xe8, }; static const unsigned char ecdh_secp256r1_5365_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5365_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5365_sharedsecret[] = { 0xf2, 0x84, 0x08, 0x9b, 0xdd, 0xd5, 0xe2, 0xe1, 0xbe, 0x3f, 0x82, 0x64, 0x0e, 0xfa, 0x06, 0x58, 0x46, 0x8f, 0xa1, 0xf1, 0x0b, 0x28, 0x19, 0x63, 0xa3, 0xca, 0x19, 0x0c, 0x39, 0x82, 0xfd, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_5365 = { .name = "ecdh_secp256r1_5365", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5365_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5365_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5365_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5365_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 85 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5366 for ECDH, tcId is 86 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5366_peerpubkey[] = { 0x93, 0x68, 0x06, 0x6a, 0x07, 0x48, 0x86, 0x7a, 0x7b, 0x87, 0x02, 0x44, 0xf5, 0xc9, 0xf8, 0x2e, 0xa8, 0xbd, 0x51, 0x55, 0x29, 0x59, 0xdd, 0x55, 0x0b, 0xb7, 0x39, 0x44, 0x97, 0x15, 0x9a, 0x5d, 0x40, 0x76, 0x4a, 0xdd, 0x1a, 0xe2, 0x4c, 0x8e, 0x3f, 0x43, 0x2e, 0xe0, 0x11, 0xbe, 0x97, 0xd3, 0x13, 0x07, 0x18, 0xfe, 0x0a, 0x6a, 0x90, 0xed, 0x8b, 0x10, 0x11, 0xb2, 0x03, 0x4d, 0x09, 0xa0, }; static const unsigned char ecdh_secp256r1_5366_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5366_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5366_sharedsecret[] = { 0x45, 0x29, 0xf4, 0xb6, 0x31, 0xc9, 0x98, 0x4a, 0xb2, 0x16, 0xa6, 0x80, 0x12, 0x81, 0xfc, 0x4f, 0xd8, 0x73, 0x1a, 0x58, 0xb6, 0x5c, 0xa8, 0xd0, 0x7b, 0xff, 0x07, 0x81, 0x11, 0x16, 0x37, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5366 = { .name = "ecdh_secp256r1_5366", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5366_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5366_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5366_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5366_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 86 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5367 for ECDH, tcId is 87 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5367_peerpubkey[] = { 0x98, 0x1d, 0x74, 0x49, 0xbd, 0xf0, 0x01, 0x3f, 0x5e, 0xed, 0xdb, 0xb7, 0xe4, 0x2c, 0x44, 0x2f, 0x7c, 0xcd, 0xd9, 0x42, 0x7b, 0xd2, 0x6d, 0x7b, 0x38, 0x87, 0x55, 0xaa, 0x5e, 0x26, 0xf4, 0x6a, 0x12, 0x92, 0xb8, 0x8f, 0xa6, 0xbf, 0x5d, 0xff, 0xca, 0x05, 0x4d, 0xd4, 0x2e, 0xd3, 0x59, 0x42, 0x77, 0xb5, 0x93, 0xdc, 0xc4, 0x02, 0xd8, 0x03, 0x40, 0xfb, 0x78, 0x16, 0xe4, 0xdc, 0xab, 0x37, }; static const unsigned char ecdh_secp256r1_5367_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5367_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5367_sharedsecret[] = { 0x64, 0xbb, 0xc9, 0xfd, 0xd7, 0x36, 0x43, 0xeb, 0x29, 0x54, 0xf4, 0xab, 0x64, 0x03, 0x81, 0xb9, 0x38, 0xc5, 0xe6, 0x01, 0x84, 0x6a, 0x0c, 0x6b, 0x69, 0x54, 0x96, 0x6e, 0x0d, 0xc7, 0x3e, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5367 = { .name = "ecdh_secp256r1_5367", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5367_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5367_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5367_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5367_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 87 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5368 for ECDH, tcId is 88 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5368_peerpubkey[] = { 0x09, 0xe7, 0x8d, 0x4e, 0xf6, 0x0d, 0x05, 0xf7, 0x50, 0xf6, 0x63, 0x62, 0x09, 0x09, 0x2b, 0xc4, 0x3c, 0xbd, 0xd6, 0xb4, 0x7e, 0x11, 0xa9, 0xde, 0x20, 0xa9, 0xfe, 0xb2, 0xa5, 0x0b, 0xb9, 0x6c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5368_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5368_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5368_sharedsecret[] = { 0x28, 0xf6, 0x77, 0x57, 0xac, 0xc2, 0x8b, 0x16, 0x84, 0xba, 0x76, 0xff, 0xd5, 0x34, 0xae, 0xd4, 0x2d, 0x45, 0xb8, 0xb3, 0xf1, 0x0b, 0x82, 0xa5, 0x69, 0x94, 0x16, 0xef, 0xf7, 0x19, 0x9a, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256r1_5368 = { .name = "ecdh_secp256r1_5368", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5368_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5368_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5368_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5368_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 88 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5369 for ECDH, tcId is 89 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5369_peerpubkey[] = { 0x53, 0x84, 0xd6, 0xc0, 0xde, 0xf7, 0x89, 0x60, 0xdb, 0x96, 0x7b, 0x80, 0x96, 0xd3, 0x54, 0x77, 0xc5, 0xa5, 0xce, 0x30, 0xef, 0x0c, 0x6d, 0x88, 0x79, 0xa5, 0x56, 0x8c, 0xa8, 0x7e, 0x97, 0x94, 0x01, 0xee, 0x56, 0xc4, 0x58, 0x17, 0x22, 0x61, 0x0b, 0x43, 0xf3, 0xcb, 0xfc, 0xf3, 0x86, 0x2c, 0x08, 0x2a, 0x6e, 0x36, 0xba, 0xa3, 0x6f, 0xd6, 0xf7, 0x84, 0x03, 0xc0, 0xe3, 0x99, 0xfa, 0xa5, }; static const unsigned char ecdh_secp256r1_5369_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5369_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5369_sharedsecret[] = { 0x9e, 0xe6, 0x53, 0xcd, 0xa4, 0x6d, 0xb6, 0x76, 0x12, 0x76, 0x0c, 0xe3, 0x5b, 0xac, 0x84, 0x50, 0xbb, 0xf4, 0x8d, 0xbf, 0x74, 0x45, 0x1e, 0xd9, 0x3a, 0xbb, 0x6d, 0xb4, 0x08, 0xa9, 0xfe, 0x10, }; static const wycheproof_ecdh_test ecdh_secp256r1_5369 = { .name = "ecdh_secp256r1_5369", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5369_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5369_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5369_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5369_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 89 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5370 for ECDH, tcId is 90 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5370_peerpubkey[] = { 0x4e, 0xca, 0x76, 0x41, 0xa4, 0xaf, 0xd5, 0xea, 0xb0, 0xb2, 0x14, 0x65, 0x7f, 0xf3, 0xbd, 0xcb, 0xfc, 0x66, 0xf1, 0x55, 0x1a, 0x53, 0xbb, 0x59, 0x49, 0x3b, 0xc3, 0x8e, 0xd7, 0x8f, 0xf3, 0x96, 0x14, 0xa0, 0xca, 0xdf, 0xf1, 0x4c, 0x14, 0x73, 0x6e, 0xdb, 0xdc, 0xda, 0xb5, 0x10, 0xcb, 0xa0, 0x7a, 0x89, 0x24, 0xff, 0xd0, 0x49, 0x0e, 0xe5, 0x14, 0xae, 0xdf, 0xaa, 0xdb, 0x64, 0x8b, 0x01, }; static const unsigned char ecdh_secp256r1_5370_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5370_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5370_sharedsecret[] = { 0x97, 0x36, 0xad, 0x6b, 0x2a, 0x2e, 0xf1, 0x7e, 0xc3, 0xf8, 0xc8, 0xdc, 0x2e, 0x35, 0x71, 0x5f, 0xb1, 0xc0, 0x6f, 0x28, 0xd8, 0x2e, 0x4e, 0x26, 0x87, 0x6f, 0x02, 0x14, 0x58, 0x81, 0x65, 0xf1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5370 = { .name = "ecdh_secp256r1_5370", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5370_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5370_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5370_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5370_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 90 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5371 for ECDH, tcId is 91 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5371_peerpubkey[] = { 0x8d, 0x01, 0x77, 0xeb, 0xab, 0x9c, 0x6e, 0x9e, 0x10, 0xdb, 0x6d, 0xd0, 0x95, 0xdb, 0xac, 0x0d, 0x63, 0x75, 0xe8, 0xa9, 0x7b, 0x70, 0xf6, 0x11, 0x87, 0x5d, 0x87, 0x7f, 0x00, 0x69, 0xd2, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5371_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5371_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5371_sharedsecret[] = { 0x74, 0x8f, 0xa4, 0xf5, 0xa3, 0x99, 0x32, 0x03, 0x82, 0xdc, 0x92, 0x00, 0x26, 0x93, 0x86, 0x94, 0xc4, 0x1a, 0x26, 0xfe, 0x2a, 0xaa, 0x31, 0x8c, 0x5e, 0x71, 0x01, 0x98, 0xdd, 0x71, 0xc7, 0x93, }; static const wycheproof_ecdh_test ecdh_secp256r1_5371 = { .name = "ecdh_secp256r1_5371", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5371_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5371_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5371_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5371_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 91 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5372 for ECDH, tcId is 92 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5372_peerpubkey[] = { 0x5f, 0xdb, 0x7f, 0x0c, 0xff, 0xb8, 0xb5, 0xb1, 0x14, 0x2d, 0x24, 0x69, 0x8a, 0x4b, 0xda, 0x76, 0xbf, 0x98, 0x27, 0xd6, 0x3b, 0x1a, 0x6b, 0xd8, 0x5a, 0x4e, 0x2f, 0x9b, 0x59, 0xc5, 0x10, 0xcf, 0xbc, 0xb3, 0x5b, 0xa9, 0xc9, 0x87, 0x10, 0x8b, 0x6d, 0x43, 0x37, 0xad, 0x53, 0x93, 0xf9, 0xf9, 0x10, 0xec, 0x92, 0x41, 0x0c, 0x23, 0x08, 0x69, 0xd6, 0x65, 0x28, 0xed, 0x88, 0xc1, 0xb9, 0x8a, }; static const unsigned char ecdh_secp256r1_5372_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5372_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5372_sharedsecret[] = { 0x7f, 0x97, 0xdb, 0x83, 0xb4, 0xd8, 0x6f, 0x04, 0xfe, 0x28, 0x60, 0x41, 0xee, 0x21, 0xe8, 0x0e, 0xc3, 0xd5, 0x9f, 0x3c, 0xe8, 0x2c, 0xde, 0xea, 0xf3, 0x62, 0x01, 0x6f, 0xc8, 0x7a, 0x3e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_5372 = { .name = "ecdh_secp256r1_5372", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5372_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5372_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5372_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5372_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 92 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5373 for ECDH, tcId is 93 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5373_peerpubkey[] = { 0x53, 0x0b, 0x22, 0x93, 0xe6, 0x0c, 0x6b, 0x6f, 0x14, 0xc7, 0x5c, 0x90, 0xb1, 0xef, 0x8b, 0x9f, 0x9f, 0xa6, 0xb2, 0x15, 0x1b, 0x8d, 0x98, 0x55, 0x79, 0x2e, 0xb2, 0xb3, 0xdc, 0x69, 0xf0, 0x7a, 0x0d, 0xb4, 0x24, 0x40, 0xe7, 0x3f, 0xd7, 0xd6, 0xdf, 0x04, 0xae, 0xd5, 0x02, 0x2f, 0xbe, 0x21, 0xce, 0xae, 0xc3, 0x3c, 0x5f, 0xba, 0xde, 0x1b, 0xd6, 0xad, 0x32, 0x1e, 0xf2, 0xe1, 0x0d, 0x0b, }; static const unsigned char ecdh_secp256r1_5373_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5373_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5373_sharedsecret[] = { 0x21, 0x79, 0x4c, 0xf2, 0x4f, 0x56, 0x27, 0x3f, 0xa4, 0x46, 0x3c, 0xc7, 0xae, 0x42, 0x32, 0xfa, 0x34, 0xdb, 0xe0, 0xf1, 0x8b, 0x73, 0x61, 0x3b, 0x8a, 0xe9, 0xcb, 0xfb, 0x9c, 0x36, 0xab, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256r1_5373 = { .name = "ecdh_secp256r1_5373", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5373_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5373_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5373_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5373_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 93 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5374 for ECDH, tcId is 94 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5374_peerpubkey[] = { 0x69, 0x16, 0xfa, 0xc4, 0x5e, 0x56, 0x8b, 0x6b, 0x9e, 0x2e, 0x2e, 0xcd, 0x61, 0x1b, 0x28, 0x2e, 0x5f, 0xcc, 0x40, 0xa3, 0x06, 0x7d, 0x60, 0x10, 0x57, 0xf8, 0x79, 0xce, 0x5a, 0x8a, 0x73, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5374_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5374_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5374_sharedsecret[] = { 0x91, 0x51, 0x06, 0xd0, 0x78, 0x16, 0xe8, 0x79, 0xe7, 0x64, 0x3f, 0x00, 0xab, 0xf6, 0xd7, 0x9f, 0xb8, 0xf1, 0xcb, 0x78, 0xbf, 0x64, 0xa6, 0xa3, 0x82, 0x7f, 0x91, 0xa7, 0xb0, 0xef, 0x0f, 0x41, }; static const wycheproof_ecdh_test ecdh_secp256r1_5374 = { .name = "ecdh_secp256r1_5374", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5374_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5374_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5374_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5374_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 94 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5375 for ECDH, tcId is 95 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5375_peerpubkey[] = { 0xed, 0x95, 0x68, 0xc8, 0x5b, 0xc5, 0x2a, 0x6b, 0x45, 0x73, 0x36, 0x18, 0xc3, 0x60, 0x21, 0x07, 0xc1, 0xfd, 0xac, 0xf2, 0x3b, 0x1a, 0x38, 0xe4, 0x86, 0xaf, 0x95, 0x97, 0x8a, 0x21, 0x4e, 0x2e, 0xfa, 0x0d, 0x71, 0xd5, 0xe7, 0x37, 0x89, 0x1c, 0x42, 0x76, 0xe2, 0x47, 0x58, 0x1e, 0xe6, 0x13, 0x90, 0x11, 0xca, 0x14, 0x60, 0xdb, 0x9b, 0x1e, 0x20, 0xb3, 0x64, 0xd9, 0x27, 0x56, 0x83, 0xe2, }; static const unsigned char ecdh_secp256r1_5375_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5375_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5375_sharedsecret[] = { 0x2f, 0xcc, 0xe5, 0x52, 0x31, 0x08, 0x19, 0xdd, 0x77, 0x5a, 0xb7, 0xba, 0x9f, 0xf0, 0xf9, 0x6a, 0x1f, 0xca, 0xdd, 0x25, 0xa0, 0xc7, 0x09, 0x70, 0x3c, 0xef, 0x04, 0xbb, 0x6e, 0x1a, 0x7b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256r1_5375 = { .name = "ecdh_secp256r1_5375", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5375_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5375_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5375_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5375_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 95 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5376 for ECDH, tcId is 96 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5376_peerpubkey[] = { 0x9f, 0xf7, 0x73, 0x1c, 0x00, 0xf2, 0xaa, 0x88, 0xb3, 0xfc, 0x17, 0x4a, 0xba, 0x90, 0x7a, 0xd1, 0x75, 0x95, 0xe6, 0x02, 0xe7, 0x68, 0xa5, 0xf1, 0xe9, 0x46, 0x2a, 0x6d, 0x4b, 0x89, 0xb2, 0xd2, 0x3f, 0x17, 0x8a, 0x70, 0xb9, 0xbb, 0x3e, 0xdc, 0xe2, 0x89, 0x11, 0x83, 0x38, 0xa3, 0x3d, 0xf3, 0x0c, 0x43, 0x2c, 0x34, 0x7f, 0x12, 0xa3, 0xde, 0x0a, 0x2b, 0x03, 0xb3, 0x53, 0x87, 0x8d, 0x96, }; static const unsigned char ecdh_secp256r1_5376_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5376_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5376_sharedsecret[] = { 0x75, 0x7d, 0x92, 0x6a, 0x26, 0x93, 0xbc, 0x8a, 0x3d, 0x2d, 0x8c, 0x05, 0x54, 0xa1, 0x35, 0x79, 0xef, 0x9e, 0x55, 0x91, 0x86, 0x57, 0x89, 0x11, 0xf3, 0x7e, 0xdc, 0x88, 0xb2, 0xf5, 0xe6, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5376 = { .name = "ecdh_secp256r1_5376", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5376_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5376_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5376_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5376_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 96 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5377 for ECDH, tcId is 97 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5377_peerpubkey[] = { 0x82, 0x70, 0xf8, 0x17, 0x9d, 0x57, 0x43, 0x6b, 0x34, 0xdf, 0xc0, 0xbd, 0xf7, 0xd4, 0x17, 0xa5, 0xc8, 0x95, 0x11, 0x6b, 0x90, 0xcb, 0x51, 0xae, 0xc7, 0x18, 0x61, 0x4f, 0x86, 0x4a, 0x63, 0x5d, 0x17, 0x48, 0x04, 0xe0, 0xc0, 0xe0, 0x6e, 0x3d, 0x68, 0xd3, 0x14, 0x9e, 0x0b, 0x95, 0x66, 0x21, 0xc6, 0xaa, 0x2b, 0xde, 0x83, 0xf4, 0xd1, 0x7d, 0x03, 0xd2, 0x8e, 0xf8, 0xaa, 0x38, 0x9f, 0xff, }; static const unsigned char ecdh_secp256r1_5377_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5377_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5377_sharedsecret[] = { 0x3d, 0xb2, 0x9e, 0xc6, 0xf9, 0x78, 0xd2, 0x26, 0x9e, 0x92, 0xe9, 0xc7, 0xeb, 0x5c, 0x8b, 0x5a, 0x8e, 0x56, 0xc2, 0x22, 0x8a, 0x4f, 0xb9, 0xe4, 0x83, 0xfe, 0xca, 0x50, 0xaa, 0x3e, 0x45, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5377 = { .name = "ecdh_secp256r1_5377", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5377_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5377_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5377_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5377_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 97 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5378 for ECDH, tcId is 98 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5378_peerpubkey[] = { 0xc6, 0x17, 0x50, 0xe9, 0x8a, 0xba, 0xf2, 0x02, 0x25, 0xa8, 0x81, 0xdb, 0xfd, 0x35, 0x10, 0x53, 0x2c, 0xfc, 0x3d, 0xf9, 0x71, 0xbb, 0xbc, 0xa4, 0xa2, 0xbd, 0x52, 0xf9, 0x1a, 0xcc, 0x9c, 0x59, 0xd0, 0xfe, 0x79, 0x34, 0x20, 0x97, 0xf8, 0x8a, 0xe7, 0x8f, 0xc7, 0x9a, 0x80, 0x32, 0x24, 0x5f, 0xdd, 0x2c, 0x30, 0xcc, 0x64, 0xac, 0xea, 0xaa, 0x9f, 0xd5, 0x7b, 0x08, 0x25, 0x69, 0x25, 0x31, }; static const unsigned char ecdh_secp256r1_5378_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5378_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5378_sharedsecret[] = { 0x72, 0xc5, 0x7c, 0x2e, 0x10, 0xd7, 0x73, 0x18, 0xb3, 0xa7, 0x96, 0x09, 0x7b, 0xbf, 0x76, 0x8c, 0x63, 0x66, 0x14, 0x2d, 0x80, 0xf9, 0x8c, 0x90, 0xa9, 0x37, 0x80, 0xa8, 0x41, 0x07, 0x5f, 0x32, }; static const wycheproof_ecdh_test ecdh_secp256r1_5378 = { .name = "ecdh_secp256r1_5378", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5378_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5378_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5378_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5378_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 98 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5379 for ECDH, tcId is 99 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5379_peerpubkey[] = { 0x9c, 0x5d, 0x3b, 0xb5, 0x46, 0x50, 0xd9, 0x55, 0x0e, 0x1e, 0xe2, 0xef, 0xa3, 0xea, 0x43, 0xc1, 0x4a, 0xb9, 0x9d, 0x18, 0xbb, 0x04, 0x9f, 0x37, 0xb4, 0x2a, 0x6d, 0xac, 0x48, 0x23, 0x2f, 0x0b, 0xd3, 0xa2, 0x76, 0x0d, 0x83, 0xd3, 0x3a, 0xfe, 0x4c, 0xe6, 0xf1, 0xd1, 0x24, 0x54, 0x89, 0xc5, 0x09, 0xbd, 0x26, 0xb0, 0x25, 0x1f, 0x30, 0x8f, 0x8c, 0x99, 0x6e, 0x80, 0xf7, 0xa3, 0xf8, 0xeb, }; static const unsigned char ecdh_secp256r1_5379_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5379_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5379_sharedsecret[] = { 0xa9, 0x6b, 0x07, 0x94, 0x4e, 0x9e, 0xb2, 0xb2, 0x2a, 0x9a, 0x36, 0x57, 0x5e, 0xff, 0x1f, 0x4f, 0x63, 0x63, 0xb4, 0xaa, 0x3a, 0x53, 0xb1, 0x00, 0xb8, 0x51, 0x8a, 0x67, 0xba, 0x54, 0x05, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp256r1_5379 = { .name = "ecdh_secp256r1_5379", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5379_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5379_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5379_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5379_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 99 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5380 for ECDH, tcId is 100 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5380_peerpubkey[] = { 0xf1, 0x72, 0x4e, 0xfd, 0x48, 0x1a, 0xd4, 0x5a, 0x55, 0x79, 0x5f, 0x06, 0x12, 0x6b, 0x1f, 0x5e, 0xd2, 0x8e, 0x7d, 0x9b, 0xb4, 0xfe, 0xe9, 0x10, 0xaf, 0x2a, 0xd8, 0xc1, 0x37, 0x3b, 0x18, 0xff, 0x77, 0xed, 0xbc, 0x34, 0xda, 0x6c, 0x78, 0x7e, 0xc7, 0x34, 0x30, 0x34, 0x7f, 0x4d, 0xa8, 0x68, 0x10, 0x03, 0x2d, 0x88, 0xf7, 0x47, 0x5f, 0x6c, 0x42, 0xf1, 0x59, 0x14, 0x07, 0x9d, 0x17, 0x9e, }; static const unsigned char ecdh_secp256r1_5380_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5380_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5380_sharedsecret[] = { 0x85, 0x58, 0x83, 0x31, 0x6b, 0x6d, 0x09, 0x7a, 0xe5, 0xea, 0xb6, 0xc6, 0x7e, 0x84, 0x11, 0xa1, 0x39, 0x73, 0x49, 0xa0, 0x9b, 0x9d, 0x7d, 0x8f, 0x09, 0x6b, 0x2b, 0xa1, 0xbd, 0x03, 0xea, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256r1_5380 = { .name = "ecdh_secp256r1_5380", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5380_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5380_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5380_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5380_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 100 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5381 for ECDH, tcId is 101 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5381_peerpubkey[] = { 0xfc, 0x36, 0x80, 0xaf, 0x52, 0xfa, 0x89, 0xff, 0xcd, 0x19, 0x3e, 0xcc, 0x0b, 0x07, 0x14, 0x46, 0x6f, 0xe5, 0xdb, 0x27, 0x7e, 0xe5, 0x87, 0x28, 0x46, 0xc5, 0x20, 0xbf, 0x4e, 0x37, 0x21, 0xd9, 0x27, 0x26, 0x0a, 0x0e, 0x22, 0x5a, 0x3d, 0x37, 0x7e, 0x67, 0x23, 0xec, 0xb6, 0xbe, 0xf8, 0xd4, 0x49, 0x3c, 0x2d, 0xa7, 0x8a, 0x22, 0xa3, 0x07, 0xfc, 0xca, 0x8f, 0x88, 0xf4, 0x52, 0x72, 0x08, }; static const unsigned char ecdh_secp256r1_5381_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5381_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5381_sharedsecret[] = { 0x5a, 0x75, 0xbb, 0x7a, 0x0c, 0x96, 0xb8, 0x34, 0x0d, 0x08, 0x42, 0xbc, 0xcc, 0xf1, 0x19, 0x74, 0xe1, 0xa5, 0xa2, 0xc8, 0xf4, 0xbc, 0x22, 0xb3, 0x33, 0x43, 0x3c, 0xce, 0x64, 0x6b, 0x6a, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5381 = { .name = "ecdh_secp256r1_5381", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5381_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5381_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5381_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5381_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 101 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5382 for ECDH, tcId is 102 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5382_peerpubkey[] = { 0x10, 0x6b, 0x6f, 0x81, 0xe3, 0x48, 0x2d, 0xb1, 0x8d, 0x74, 0x02, 0x92, 0x91, 0x82, 0x1a, 0xe4, 0x48, 0xc3, 0x88, 0x44, 0xef, 0x78, 0x3b, 0xf1, 0xd6, 0x99, 0x9a, 0x40, 0x44, 0x01, 0xf6, 0x3f, 0x6a, 0x57, 0x53, 0xf0, 0xed, 0xc6, 0x8a, 0x62, 0xcf, 0xd6, 0xa0, 0xb1, 0x81, 0xbb, 0x25, 0x99, 0xe1, 0xf3, 0xba, 0xc5, 0xfa, 0x88, 0x24, 0xaf, 0x16, 0x0d, 0xe7, 0x9e, 0xd8, 0x67, 0xc3, 0x50, }; static const unsigned char ecdh_secp256r1_5382_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5382_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5382_sharedsecret[] = { 0xd9, 0x64, 0x12, 0xe3, 0x1c, 0xf4, 0xd2, 0x61, 0x95, 0x92, 0x0c, 0xac, 0x95, 0x2f, 0xb7, 0x9e, 0xa2, 0x5f, 0x6c, 0x50, 0xab, 0xc7, 0x9b, 0x5e, 0xd0, 0xef, 0x80, 0x26, 0xa6, 0xe8, 0x33, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256r1_5382 = { .name = "ecdh_secp256r1_5382", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5382_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5382_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5382_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5382_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 102 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5383 for ECDH, tcId is 103 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5383_peerpubkey[] = { 0x09, 0x3c, 0xb5, 0x19, 0x3a, 0x4f, 0x94, 0xcd, 0x18, 0xed, 0xaa, 0x20, 0xa9, 0x73, 0xb8, 0x7f, 0xf7, 0x9b, 0x0c, 0x03, 0x68, 0x4c, 0x79, 0x48, 0x7e, 0xcf, 0xee, 0x34, 0x7e, 0x53, 0x54, 0xeb, 0x04, 0xfc, 0xb5, 0x75, 0x25, 0x39, 0x17, 0x07, 0x77, 0x93, 0x2b, 0xe1, 0x5c, 0xd8, 0x4c, 0x97, 0xf0, 0x38, 0x15, 0xff, 0xee, 0x8b, 0x60, 0xb6, 0x47, 0xc1, 0x78, 0xee, 0xbb, 0x8e, 0x14, 0xd4, }; static const unsigned char ecdh_secp256r1_5383_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5383_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5383_sharedsecret[] = { 0x2b, 0x0e, 0xed, 0x9b, 0xad, 0xc9, 0x2a, 0x10, 0x68, 0x19, 0x6d, 0xfe, 0xc1, 0x24, 0xfe, 0x8f, 0x9d, 0x3f, 0x45, 0x1e, 0x29, 0x4d, 0x32, 0x2e, 0xb8, 0x81, 0xcc, 0xe0, 0x2f, 0x28, 0x60, 0x26, }; static const wycheproof_ecdh_test ecdh_secp256r1_5383 = { .name = "ecdh_secp256r1_5383", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5383_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5383_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5383_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5383_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 103 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5384 for ECDH, tcId is 104 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5384_peerpubkey[] = { 0xd6, 0xc3, 0x8f, 0x44, 0x8b, 0x96, 0x4e, 0x27, 0xb5, 0xb4, 0x50, 0xcc, 0x38, 0xd3, 0xcf, 0x41, 0xef, 0x9d, 0xf8, 0x3d, 0x8a, 0x95, 0x97, 0x71, 0xeb, 0x9c, 0x21, 0x85, 0x5c, 0xb3, 0x64, 0x45, 0xdf, 0x63, 0x8a, 0xef, 0x46, 0xa2, 0xae, 0xb1, 0x31, 0x99, 0x28, 0x1e, 0x1a, 0x26, 0xd1, 0x2f, 0xe6, 0x1b, 0x02, 0x9e, 0xc7, 0xf6, 0x8b, 0x90, 0xfa, 0xa8, 0x9f, 0x88, 0xc7, 0xa9, 0x59, 0x42, }; static const unsigned char ecdh_secp256r1_5384_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5384_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5384_sharedsecret[] = { 0xed, 0x0b, 0x1d, 0x8d, 0xfd, 0x27, 0xa6, 0x1f, 0xce, 0x91, 0xdc, 0x64, 0x05, 0xbf, 0xc5, 0x3b, 0x6d, 0x48, 0xa8, 0xc1, 0x3b, 0xa5, 0x41, 0xc9, 0x6e, 0xf3, 0xdc, 0xf3, 0x1d, 0x7c, 0xdb, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256r1_5384 = { .name = "ecdh_secp256r1_5384", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5384_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5384_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5384_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5384_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 104 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5385 for ECDH, tcId is 105 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5385_peerpubkey[] = { 0x8a, 0x74, 0x8d, 0x61, 0xf5, 0x9c, 0x3b, 0x6a, 0x29, 0xb7, 0x33, 0xb0, 0xd5, 0x54, 0xb2, 0x49, 0x2e, 0x7f, 0x76, 0xfa, 0xd7, 0xca, 0xe1, 0xc1, 0x7f, 0x2a, 0xc3, 0xde, 0x9e, 0x4a, 0x65, 0xd2, 0xee, 0xdb, 0xe6, 0xc2, 0x6b, 0x6f, 0xd2, 0x2b, 0xfc, 0x03, 0xc1, 0x68, 0x75, 0x55, 0xd2, 0xf0, 0xa3, 0x8e, 0x02, 0xad, 0xee, 0x55, 0x70, 0x68, 0x61, 0x71, 0xab, 0xfe, 0xc6, 0x68, 0x19, 0x17, }; static const unsigned char ecdh_secp256r1_5385_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5385_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5385_sharedsecret[] = { 0xa7, 0x96, 0xdd, 0x14, 0x4f, 0x21, 0xba, 0x33, 0x18, 0xf9, 0xe1, 0x08, 0x28, 0xec, 0xef, 0xc9, 0xc0, 0xf6, 0xef, 0x2c, 0x42, 0x7a, 0xe3, 0x13, 0x51, 0xc1, 0x6c, 0x2f, 0xbf, 0xa3, 0xcf, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp256r1_5385 = { .name = "ecdh_secp256r1_5385", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5385_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5385_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5385_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5385_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 105 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5386 for ECDH, tcId is 106 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5386_peerpubkey[] = { 0xf1, 0x05, 0x26, 0x99, 0xd8, 0x7e, 0x56, 0x77, 0xc7, 0x5e, 0x26, 0xb2, 0xab, 0xe7, 0x19, 0x31, 0x06, 0x48, 0xd8, 0x20, 0xa9, 0x6e, 0x5b, 0x38, 0x1f, 0xff, 0x58, 0xb3, 0x92, 0x40, 0x15, 0x81, 0xb1, 0xbb, 0x16, 0xae, 0x8b, 0x68, 0xcb, 0xb7, 0x6a, 0x32, 0x56, 0x87, 0x0b, 0xad, 0x1e, 0xe5, 0xa3, 0x0f, 0xf9, 0xfd, 0x66, 0x2f, 0xd4, 0xf8, 0xd1, 0xfe, 0x5b, 0x5f, 0x1f, 0x98, 0xff, 0x46, }; static const unsigned char ecdh_secp256r1_5386_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5386_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5386_sharedsecret[] = { 0x1f, 0x3a, 0x96, 0x15, 0xb0, 0x74, 0x50, 0x46, 0xa9, 0x72, 0xba, 0xd5, 0xd5, 0x97, 0x94, 0xa0, 0xb6, 0x0b, 0x03, 0x2b, 0x4a, 0xc9, 0x4f, 0xe8, 0x5f, 0x77, 0xdf, 0xb3, 0x80, 0xd1, 0xf3, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5386 = { .name = "ecdh_secp256r1_5386", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5386_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5386_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5386_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5386_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 106 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5387 for ECDH, tcId is 107 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5387_peerpubkey[] = { 0x12, 0x19, 0xaf, 0x52, 0x30, 0x06, 0x4e, 0xe9, 0x77, 0x86, 0x67, 0x22, 0x5f, 0x0e, 0x00, 0x9c, 0xdb, 0x96, 0x13, 0x30, 0xe3, 0x86, 0xed, 0xb3, 0x4e, 0x4f, 0xa9, 0xfd, 0xdd, 0x0e, 0x5b, 0xe7, 0xe2, 0xa1, 0x25, 0x54, 0x22, 0x7f, 0x61, 0x3a, 0xaa, 0xa7, 0x89, 0x38, 0xdd, 0xbb, 0xc9, 0x9b, 0x92, 0x3f, 0x9d, 0x18, 0x1b, 0x81, 0x92, 0xdc, 0x4b, 0x81, 0x65, 0x77, 0xe8, 0xf3, 0xb7, 0xe9, }; static const unsigned char ecdh_secp256r1_5387_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5387_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5387_sharedsecret[] = { 0xca, 0xf9, 0x14, 0x1d, 0x1f, 0xca, 0x4d, 0x0f, 0x10, 0x68, 0x3b, 0x5e, 0x86, 0xd2, 0xb4, 0x1a, 0xf5, 0x60, 0x2f, 0x01, 0x79, 0x91, 0xfe, 0x73, 0x48, 0xd4, 0x4e, 0x8d, 0x70, 0x14, 0x11, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5387 = { .name = "ecdh_secp256r1_5387", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5387_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5387_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5387_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5387_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 107 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5388 for ECDH, tcId is 108 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5388_peerpubkey[] = { 0x60, 0xde, 0xf1, 0x30, 0xf1, 0x90, 0xe6, 0xdc, 0x44, 0xf5, 0xeb, 0x8a, 0x59, 0xe1, 0x2e, 0x7e, 0xfb, 0x27, 0xdb, 0x96, 0x8c, 0x7f, 0xa6, 0xcc, 0x6d, 0x31, 0x78, 0x5f, 0x06, 0x6b, 0x41, 0xb1, 0xf1, 0xbb, 0x55, 0x6a, 0xc4, 0xcd, 0x77, 0x03, 0x3e, 0x7a, 0xa6, 0xc5, 0xba, 0x16, 0xf4, 0x7e, 0xba, 0xfb, 0x14, 0x97, 0x5a, 0x7f, 0xd7, 0x2d, 0xd9, 0xb7, 0xfe, 0x23, 0x11, 0x6b, 0xca, 0x55, }; static const unsigned char ecdh_secp256r1_5388_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5388_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5388_sharedsecret[] = { 0x65, 0x39, 0xec, 0x1c, 0x98, 0xfa, 0x75, 0x19, 0x7b, 0xa0, 0x7c, 0x67, 0x8b, 0x26, 0x30, 0x0b, 0x3d, 0xa1, 0xfe, 0x40, 0x7d, 0xd4, 0xc6, 0x8b, 0x89, 0x45, 0x7e, 0xd6, 0x69, 0x08, 0x2e, 0x06, }; static const wycheproof_ecdh_test ecdh_secp256r1_5388 = { .name = "ecdh_secp256r1_5388", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5388_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5388_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5388_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5388_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 108 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5389 for ECDH, tcId is 109 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5389_peerpubkey[] = { 0xf2, 0x3f, 0x09, 0xbd, 0xb7, 0xd1, 0x72, 0x89, 0xeb, 0x00, 0x59, 0x75, 0xa7, 0x57, 0xa3, 0x93, 0x25, 0xb4, 0xdf, 0x9b, 0x29, 0xe5, 0x5b, 0xa2, 0xca, 0x67, 0x9b, 0x5e, 0xc0, 0x97, 0x3a, 0xe9, 0x18, 0xc8, 0x81, 0xf3, 0xc7, 0xb6, 0xc1, 0x2b, 0xed, 0x1e, 0xc5, 0x4b, 0x83, 0x7d, 0x08, 0xc5, 0x90, 0x8e, 0x89, 0xbd, 0xce, 0xdd, 0x84, 0xb9, 0x17, 0x77, 0x20, 0x37, 0x8f, 0x78, 0x96, 0x00, }; static const unsigned char ecdh_secp256r1_5389_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5389_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5389_sharedsecret[] = { 0x0b, 0x66, 0x19, 0x82, 0x7c, 0xfa, 0x94, 0x8d, 0x63, 0xf0, 0x21, 0xe9, 0xed, 0xdb, 0x92, 0xf8, 0x84, 0xfb, 0x5c, 0xe8, 0xa4, 0x04, 0xbf, 0xe0, 0x59, 0xe9, 0x93, 0xfc, 0x23, 0x44, 0x7a, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256r1_5389 = { .name = "ecdh_secp256r1_5389", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5389_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5389_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5389_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5389_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 109 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5390 for ECDH, tcId is 110 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5390_peerpubkey[] = { 0x5d, 0xbe, 0xc0, 0x98, 0xc1, 0xb7, 0xde, 0x3e, 0x3e, 0x2e, 0x73, 0xd0, 0xb6, 0x2c, 0xd4, 0x9c, 0x87, 0x7e, 0x1a, 0x01, 0x30, 0xa1, 0xb3, 0x9e, 0xb2, 0xfd, 0x4d, 0xbd, 0x44, 0x26, 0xaa, 0x4c, 0xcb, 0xee, 0xe2, 0x17, 0x59, 0x1a, 0x8d, 0x76, 0xcc, 0x8d, 0xea, 0xf1, 0x4d, 0xde, 0x52, 0xe3, 0xf4, 0x01, 0xe5, 0x3b, 0x30, 0xcb, 0xb9, 0xc1, 0x80, 0x79, 0x10, 0xd8, 0x27, 0xd0, 0x04, 0x1d, }; static const unsigned char ecdh_secp256r1_5390_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5390_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5390_sharedsecret[] = { 0x2a, 0x53, 0xa5, 0x61, 0xac, 0xf5, 0xca, 0xec, 0x6e, 0xb0, 0xd8, 0xaa, 0x40, 0x72, 0x79, 0x42, 0x88, 0x1a, 0x75, 0xd1, 0x36, 0x89, 0x9d, 0xfb, 0xff, 0x91, 0x52, 0x82, 0x36, 0x92, 0x6c, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256r1_5390 = { .name = "ecdh_secp256r1_5390", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5390_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5390_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5390_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5390_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 110 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5391 for ECDH, tcId is 111 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5391_peerpubkey[] = { 0x1e, 0x70, 0x73, 0x0d, 0xc4, 0xf3, 0x9c, 0x89, 0x70, 0x18, 0x2e, 0x1a, 0x29, 0xcc, 0x83, 0x6b, 0x9e, 0x9d, 0x6c, 0xbd, 0x6f, 0xca, 0xa8, 0xc0, 0xdc, 0x10, 0x62, 0xfe, 0xd9, 0xa8, 0x49, 0x69, 0x3e, 0x7b, 0x91, 0x51, 0xf9, 0xc8, 0xa3, 0x34, 0x53, 0x66, 0xf8, 0x22, 0x1c, 0x8f, 0xb7, 0x00, 0xe8, 0xc3, 0xa9, 0xaa, 0x7f, 0x0c, 0xc4, 0x6a, 0x48, 0x86, 0x4e, 0x16, 0x05, 0x59, 0x20, 0x94, }; static const unsigned char ecdh_secp256r1_5391_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5391_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5391_sharedsecret[] = { 0x9b, 0x37, 0x77, 0x16, 0xff, 0x1d, 0x05, 0x6d, 0xac, 0x8e, 0x39, 0x22, 0x49, 0xea, 0xec, 0x74, 0x0d, 0x2f, 0x5a, 0xa6, 0x23, 0x03, 0xf4, 0xba, 0xf6, 0xbb, 0x1b, 0x03, 0xb2, 0xa2, 0x76, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5391 = { .name = "ecdh_secp256r1_5391", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5391_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5391_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5391_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5391_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 111 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5392 for ECDH, tcId is 112 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5392_peerpubkey[] = { 0xf4, 0x28, 0xc9, 0xae, 0x3e, 0x23, 0xea, 0xf9, 0xc2, 0xa5, 0xb9, 0xa7, 0xe4, 0x1e, 0xfd, 0x1c, 0xff, 0xbf, 0x35, 0xf8, 0x81, 0xbf, 0xc3, 0x56, 0x94, 0xd9, 0xc0, 0x5d, 0x1e, 0x31, 0x2b, 0x10, 0xef, 0x6d, 0xa9, 0x02, 0x3c, 0xfd, 0x2d, 0xd0, 0xcb, 0x7b, 0x9e, 0x2a, 0x77, 0xd6, 0x44, 0xaf, 0xfe, 0x62, 0xa6, 0x3f, 0xb0, 0xf2, 0x9d, 0x45, 0x29, 0x1c, 0x68, 0x61, 0xaa, 0x06, 0x3c, 0x5c, }; static const unsigned char ecdh_secp256r1_5392_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5392_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5392_sharedsecret[] = { 0x0c, 0x0c, 0x68, 0x67, 0x66, 0x97, 0x43, 0x08, 0x25, 0x47, 0xaa, 0x94, 0x45, 0x1f, 0xeb, 0x36, 0x2f, 0xa2, 0x9f, 0xba, 0xf2, 0x28, 0xdf, 0xb3, 0xea, 0xf3, 0x75, 0xf1, 0xa5, 0xec, 0x2f, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5392 = { .name = "ecdh_secp256r1_5392", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5392_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5392_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5392_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5392_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 112 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5393 for ECDH, tcId is 113 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5393_peerpubkey[] = { 0xb9, 0xa1, 0x6d, 0x9a, 0x5b, 0x85, 0xa7, 0x14, 0xe2, 0xbb, 0x2a, 0xa2, 0x2b, 0x08, 0x6a, 0x17, 0x40, 0x4c, 0x7a, 0x3f, 0xf6, 0x24, 0x52, 0x73, 0x23, 0x47, 0x41, 0x9c, 0x99, 0xe9, 0x0b, 0xda, 0xd5, 0x78, 0xb4, 0x62, 0xf5, 0x23, 0x99, 0x43, 0x04, 0xb6, 0xaf, 0xcf, 0x69, 0x44, 0xa9, 0xcc, 0x5d, 0x0a, 0xd1, 0xaf, 0xad, 0x95, 0x64, 0x75, 0xc8, 0xf2, 0x95, 0x3c, 0x06, 0xb0, 0x6b, 0x97, }; static const unsigned char ecdh_secp256r1_5393_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5393_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5393_sharedsecret[] = { 0xd1, 0x1f, 0x9e, 0x32, 0x58, 0x7f, 0xd3, 0xb6, 0xf4, 0xa2, 0x35, 0x48, 0x12, 0x61, 0x8b, 0x4b, 0x3b, 0x4a, 0x75, 0x39, 0xb8, 0xa2, 0x23, 0xb3, 0x88, 0xbb, 0x74, 0x37, 0xf8, 0xd1, 0x38, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5393 = { .name = "ecdh_secp256r1_5393", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5393_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5393_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5393_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5393_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 113 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5394 for ECDH, tcId is 114 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5394_peerpubkey[] = { 0x8f, 0x65, 0x9a, 0x16, 0x3a, 0x58, 0xe9, 0xf9, 0x00, 0xc1, 0xe9, 0xb3, 0x4f, 0xb1, 0xcd, 0x61, 0xff, 0xc9, 0x89, 0x02, 0x67, 0xbe, 0x34, 0x17, 0xc8, 0xaf, 0xe7, 0x9d, 0x57, 0x21, 0x4d, 0xa0, 0x5c, 0xd5, 0xcb, 0x68, 0xa2, 0xb9, 0x3d, 0xa0, 0xdb, 0xe5, 0x6c, 0x1c, 0xfc, 0x0d, 0xce, 0x8b, 0x6c, 0x32, 0x60, 0xe0, 0xc4, 0x83, 0x79, 0xc6, 0xd2, 0x09, 0x1f, 0x16, 0xb3, 0x92, 0x21, 0xc0, }; static const unsigned char ecdh_secp256r1_5394_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5394_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5394_sharedsecret[] = { 0x4b, 0xab, 0xf6, 0x36, 0x8e, 0x03, 0x59, 0xb7, 0x86, 0x14, 0x06, 0x02, 0x41, 0xec, 0xe4, 0x6f, 0xac, 0xca, 0x3f, 0x52, 0xf5, 0xbb, 0xc4, 0x7a, 0xc0, 0xb4, 0x6a, 0x07, 0x5b, 0x5d, 0xd3, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256r1_5394 = { .name = "ecdh_secp256r1_5394", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5394_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5394_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5394_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5394_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 114 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5395 for ECDH, tcId is 115 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5395_peerpubkey[] = { 0xd2, 0x57, 0xf1, 0x33, 0xf0, 0x0a, 0x07, 0x9f, 0x4e, 0x67, 0x78, 0xea, 0x4a, 0x9b, 0xf4, 0x2b, 0x9f, 0x23, 0x12, 0x90, 0x43, 0x1b, 0x5b, 0x93, 0xd7, 0xe8, 0xb0, 0xe3, 0x5b, 0x48, 0x01, 0x06, 0x50, 0xd6, 0xc6, 0xb4, 0x65, 0x74, 0xd1, 0xef, 0xce, 0x03, 0x51, 0x0b, 0x8d, 0xb4, 0xa0, 0x98, 0x1c, 0xe1, 0x38, 0xc5, 0xbd, 0x8f, 0xe0, 0xe5, 0x4c, 0x98, 0x8c, 0x40, 0xc5, 0xfc, 0x92, 0x00, }; static const unsigned char ecdh_secp256r1_5395_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5395_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5395_sharedsecret[] = { 0x96, 0x27, 0xcc, 0x5c, 0x8d, 0x8b, 0x72, 0x27, 0x8b, 0xe8, 0x9c, 0x32, 0xb5, 0x22, 0x10, 0x17, 0x3e, 0x6f, 0x4b, 0x8e, 0x2f, 0x48, 0xe4, 0x60, 0xc6, 0x42, 0x9f, 0x46, 0xf9, 0xf4, 0x69, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256r1_5395 = { .name = "ecdh_secp256r1_5395", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5395_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5395_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5395_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5395_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 115 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5396 for ECDH, tcId is 116 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5396_peerpubkey[] = { 0x5e, 0xf2, 0xac, 0x57, 0xc4, 0xe9, 0x3c, 0xf7, 0x8d, 0x8f, 0x86, 0xc3, 0x5d, 0x41, 0x3b, 0x98, 0xdc, 0x19, 0x02, 0xdd, 0x24, 0x5a, 0xff, 0xde, 0x5c, 0x16, 0x03, 0x4a, 0xfc, 0x7e, 0xa4, 0x55, 0x47, 0xb3, 0xe9, 0xf7, 0x7f, 0xbc, 0x50, 0x75, 0xba, 0xd0, 0x3c, 0x41, 0x80, 0x94, 0xf1, 0xae, 0xc1, 0xd0, 0x3e, 0xde, 0xaf, 0xa1, 0x67, 0xfa, 0x6a, 0xf8, 0x35, 0x26, 0x55, 0x2f, 0x70, 0x34, }; static const unsigned char ecdh_secp256r1_5396_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5396_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5396_sharedsecret[] = { 0xd2, 0xb1, 0x78, 0xbc, 0x9b, 0xb1, 0x6b, 0x5a, 0x91, 0xa1, 0x00, 0xbb, 0x72, 0xe1, 0x5a, 0x96, 0x39, 0xe0, 0x50, 0xc0, 0x34, 0x34, 0x60, 0x61, 0x41, 0x3e, 0xc2, 0x0c, 0x4f, 0xcc, 0x9b, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5396 = { .name = "ecdh_secp256r1_5396", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5396_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5396_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5396_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5396_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 116 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5397 for ECDH, tcId is 117 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5397_peerpubkey[] = { 0xa7, 0xb5, 0x13, 0xf9, 0x62, 0x66, 0x41, 0x4f, 0xa6, 0xff, 0x43, 0x9a, 0x35, 0xd8, 0xf0, 0x9a, 0xb6, 0x15, 0xdb, 0x0b, 0xb6, 0xa3, 0xb1, 0xa1, 0x20, 0xc2, 0x17, 0x68, 0x3f, 0x72, 0x4b, 0x23, 0x42, 0x00, 0x7a, 0x2c, 0x9f, 0xea, 0xbc, 0xd6, 0x24, 0x9a, 0x0d, 0x17, 0xac, 0xec, 0xd9, 0x95, 0xe2, 0xa2, 0x17, 0xfb, 0x5f, 0x07, 0xbe, 0xc9, 0x69, 0x38, 0x01, 0x6e, 0x29, 0x7e, 0xfa, 0x52, }; static const unsigned char ecdh_secp256r1_5397_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5397_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5397_sharedsecret[] = { 0x6c, 0xdc, 0xa0, 0xa7, 0x31, 0xaf, 0xf1, 0xcc, 0xfb, 0x19, 0x04, 0xa7, 0x69, 0xce, 0xf7, 0x9e, 0xba, 0x96, 0x5f, 0xba, 0xb1, 0xcc, 0x64, 0xd2, 0x04, 0x9d, 0x0d, 0xf4, 0x5d, 0xcc, 0xd2, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256r1_5397 = { .name = "ecdh_secp256r1_5397", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5397_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5397_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5397_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5397_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 117 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5398 for ECDH, tcId is 118 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5398_peerpubkey[] = { 0x77, 0x43, 0xab, 0x72, 0x48, 0xda, 0xe5, 0xf1, 0xa5, 0x9a, 0xc6, 0xb0, 0xa1, 0x36, 0xe9, 0xf1, 0xe5, 0x1a, 0xff, 0x8b, 0xd4, 0x57, 0x95, 0xac, 0xe5, 0xf8, 0x18, 0x7a, 0x13, 0xed, 0xf9, 0xad, 0xbd, 0x96, 0x42, 0x07, 0x83, 0x78, 0xba, 0xb5, 0xc6, 0xd4, 0x84, 0xf9, 0xe1, 0xce, 0x39, 0x67, 0x5b, 0x72, 0x17, 0x0b, 0xf3, 0x9a, 0xbc, 0x9b, 0xe7, 0x94, 0x2f, 0xc0, 0x1f, 0xc4, 0x35, 0xd7, }; static const unsigned char ecdh_secp256r1_5398_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5398_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5398_sharedsecret[] = { 0xbd, 0x15, 0xe9, 0x7a, 0x7f, 0x49, 0xaa, 0x33, 0xe5, 0x7b, 0x54, 0x14, 0x0a, 0x75, 0xff, 0xfc, 0xe7, 0x1b, 0x78, 0x8c, 0xe0, 0xfa, 0xa3, 0x34, 0xcf, 0x8b, 0x45, 0x62, 0x3d, 0xcc, 0x81, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5398 = { .name = "ecdh_secp256r1_5398", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5398_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5398_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5398_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5398_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 118 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5399 for ECDH, tcId is 119 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5399_peerpubkey[] = { 0x0e, 0x3a, 0xa9, 0x71, 0xba, 0xcd, 0xac, 0xe3, 0x50, 0xdc, 0x09, 0x57, 0xfa, 0x5b, 0xde, 0x09, 0x46, 0x32, 0x4e, 0xb1, 0x39, 0x93, 0x9d, 0x7f, 0xc1, 0x99, 0x7c, 0x70, 0x1e, 0xff, 0xd0, 0x4a, 0x4e, 0x6c, 0x36, 0x25, 0xd9, 0x56, 0x41, 0x68, 0xd3, 0xa7, 0x52, 0x96, 0x12, 0x21, 0xa1, 0xde, 0x8c, 0xf5, 0xf3, 0xd6, 0x03, 0x75, 0x2a, 0x8c, 0x2e, 0x62, 0x77, 0xac, 0x3a, 0x91, 0x8c, 0x25, }; static const unsigned char ecdh_secp256r1_5399_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5399_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5399_sharedsecret[] = { 0xc8, 0xb5, 0xe8, 0xe7, 0x48, 0x88, 0x57, 0xa2, 0xdd, 0xe6, 0x2c, 0x5f, 0xc2, 0x1e, 0x45, 0x25, 0xeb, 0xab, 0xa0, 0xe0, 0x6b, 0x5b, 0xe8, 0x3e, 0xc6, 0xe7, 0xdd, 0x77, 0x1e, 0x15, 0xa0, 0x1a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5399 = { .name = "ecdh_secp256r1_5399", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5399_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5399_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5399_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5399_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 119 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5400 for ECDH, tcId is 120 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5400_peerpubkey[] = { 0x0f, 0x56, 0x3e, 0x21, 0xbf, 0x9b, 0x24, 0x01, 0x5a, 0x7c, 0xdb, 0xb6, 0xf0, 0x00, 0xa6, 0x92, 0x78, 0x4a, 0xc2, 0xe4, 0xbc, 0x27, 0x15, 0xc7, 0x6f, 0x68, 0x42, 0x64, 0xa8, 0x99, 0xc8, 0x24, 0x0c, 0xab, 0x0d, 0x76, 0xe6, 0xb0, 0x1c, 0xab, 0xe4, 0xf3, 0x27, 0x42, 0x9d, 0x11, 0xbe, 0x11, 0x5e, 0xd6, 0xdc, 0x0c, 0xa7, 0x4f, 0x02, 0xc1, 0xb9, 0x87, 0xa0, 0x82, 0xf5, 0xaf, 0x43, 0xa8, }; static const unsigned char ecdh_secp256r1_5400_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5400_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5400_sharedsecret[] = { 0x1c, 0x63, 0xa4, 0x57, 0x50, 0x9b, 0x14, 0x82, 0x72, 0x68, 0x7e, 0x6e, 0x44, 0x2b, 0xde, 0x51, 0x98, 0x2d, 0x41, 0xb0, 0x08, 0x0d, 0x8c, 0x0c, 0x5e, 0xb7, 0x14, 0x25, 0x7a, 0xf9, 0x71, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp256r1_5400 = { .name = "ecdh_secp256r1_5400", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5400_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5400_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5400_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5400_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 120 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5401 for ECDH, tcId is 121 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5401_peerpubkey[] = { 0x5d, 0xa4, 0x9f, 0x10, 0x24, 0x9e, 0x4d, 0xf3, 0xdb, 0xb4, 0xe3, 0x1e, 0xce, 0x0b, 0x0e, 0xe9, 0xaa, 0x07, 0x3f, 0x25, 0x88, 0x19, 0x5a, 0xaa, 0xe6, 0x3e, 0x74, 0xf6, 0x56, 0x7a, 0x77, 0x48, 0x10, 0xb5, 0xdd, 0x61, 0xb6, 0xbf, 0x21, 0x9e, 0x9e, 0xab, 0x30, 0xef, 0x09, 0xc1, 0x3f, 0xc1, 0x84, 0xb3, 0xd0, 0x9f, 0xf7, 0xa4, 0xe1, 0x92, 0xbc, 0xa8, 0xf5, 0x11, 0x1c, 0x41, 0x63, 0xc7, }; static const unsigned char ecdh_secp256r1_5401_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5401_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5401_sharedsecret[] = { 0x73, 0xa1, 0xac, 0x9e, 0xce, 0x35, 0x4a, 0x93, 0x0d, 0xfd, 0x9c, 0x77, 0x57, 0x7b, 0x4f, 0x50, 0xac, 0xc0, 0xa7, 0x89, 0x64, 0xea, 0x0d, 0x77, 0x75, 0x63, 0x1d, 0x64, 0xc7, 0x09, 0xc4, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256r1_5401 = { .name = "ecdh_secp256r1_5401", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5401_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5401_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5401_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5401_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 121 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5402 for ECDH, tcId is 122 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5402_peerpubkey[] = { 0x6f, 0x72, 0xe6, 0xe5, 0xc6, 0x30, 0x06, 0x79, 0xd3, 0xf1, 0x4f, 0x0f, 0x6e, 0x59, 0x06, 0x65, 0x64, 0x35, 0x76, 0xae, 0x8b, 0xbc, 0xb7, 0xc0, 0x5b, 0x2f, 0x4a, 0x83, 0xe7, 0x5e, 0x6a, 0xc3, 0xe7, 0x12, 0xcb, 0x05, 0x6f, 0xf0, 0x34, 0xda, 0x34, 0x05, 0x43, 0xc5, 0xda, 0x69, 0x97, 0xe6, 0x5a, 0x3a, 0xb4, 0xcd, 0x39, 0xe9, 0x97, 0x89, 0x2b, 0xb9, 0x2e, 0xe2, 0xc2, 0x2b, 0x81, 0x67, }; static const unsigned char ecdh_secp256r1_5402_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5402_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5402_sharedsecret[] = { 0xfc, 0xaa, 0x40, 0x63, 0x29, 0xbb, 0x74, 0xf9, 0x95, 0x86, 0x2c, 0xea, 0x7c, 0xec, 0xc7, 0x42, 0x5c, 0x6b, 0xd4, 0x14, 0x8e, 0xf1, 0xa9, 0xf4, 0x6b, 0x5d, 0x42, 0xda, 0x59, 0x94, 0x55, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp256r1_5402 = { .name = "ecdh_secp256r1_5402", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5402_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5402_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5402_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5402_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 122 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5403 for ECDH, tcId is 123 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5403_peerpubkey[] = { 0x6b, 0x54, 0x4d, 0xf9, 0x16, 0x8e, 0x77, 0x87, 0xdb, 0x28, 0x2e, 0x2a, 0xe0, 0x1d, 0xd7, 0x23, 0x06, 0xd9, 0xc9, 0xbc, 0x80, 0xf5, 0xab, 0x38, 0xce, 0x59, 0x47, 0x66, 0xc3, 0xd9, 0x29, 0xe9, 0x67, 0x49, 0x3f, 0xf6, 0x01, 0xca, 0x60, 0x86, 0x2b, 0x47, 0xd3, 0xa0, 0x78, 0x5c, 0x91, 0x7e, 0x44, 0x58, 0x40, 0x44, 0xe3, 0x60, 0x23, 0xa5, 0x44, 0x24, 0x01, 0x5e, 0x58, 0xbe, 0x50, 0x40, }; static const unsigned char ecdh_secp256r1_5403_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5403_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5403_sharedsecret[] = { 0xe4, 0x9f, 0xf1, 0x1d, 0x46, 0xb6, 0xc4, 0xb5, 0xdd, 0xe5, 0x28, 0xb0, 0x41, 0x32, 0xd1, 0x5c, 0x04, 0x0e, 0x79, 0xf9, 0xb7, 0x15, 0x1f, 0xbc, 0x65, 0x00, 0x30, 0x98, 0x80, 0x28, 0xcb, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_5403 = { .name = "ecdh_secp256r1_5403", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5403_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5403_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5403_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5403_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 123 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5404 for ECDH, tcId is 124 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5404_peerpubkey[] = { 0x1c, 0x31, 0x38, 0x5b, 0x9d, 0xb9, 0xb3, 0x74, 0xe9, 0x24, 0x99, 0x93, 0x9a, 0xb0, 0xfd, 0x7e, 0x7e, 0xda, 0x46, 0x45, 0x61, 0xeb, 0xa8, 0x9f, 0xcd, 0x7b, 0x47, 0x69, 0x81, 0x4a, 0x86, 0x38, 0xa4, 0x76, 0x4c, 0xf8, 0xce, 0x97, 0xb5, 0xd1, 0x43, 0xbb, 0x8e, 0xeb, 0x9e, 0x1b, 0x27, 0x28, 0x7f, 0x2b, 0x73, 0x94, 0x2e, 0xcd, 0xbc, 0x63, 0x59, 0xaa, 0xfb, 0x1e, 0xe7, 0xa1, 0x52, 0xc2, }; static const unsigned char ecdh_secp256r1_5404_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5404_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5404_sharedsecret[] = { 0xfc, 0x8f, 0x64, 0xea, 0xc1, 0xc7, 0xe6, 0x88, 0xc5, 0x2c, 0x46, 0x71, 0x85, 0xde, 0x21, 0x91, 0x4e, 0x8b, 0x25, 0x30, 0x56, 0xd9, 0xe4, 0xbe, 0x01, 0x0e, 0xd0, 0x12, 0x8f, 0x92, 0xa8, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_5404 = { .name = "ecdh_secp256r1_5404", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5404_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5404_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5404_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5404_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 124 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5405 for ECDH, tcId is 125 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5405_peerpubkey[] = { 0xaa, 0xbc, 0xf8, 0xb1, 0x44, 0x3d, 0x6c, 0xbb, 0x1d, 0xe1, 0x29, 0xa0, 0xff, 0xe0, 0x9f, 0x60, 0xb2, 0x3f, 0xd9, 0xd0, 0xa4, 0x4b, 0x6b, 0xdf, 0x25, 0xbe, 0xd7, 0x37, 0x3f, 0xdb, 0xfd, 0x1d, 0xb7, 0x16, 0xbd, 0xe7, 0xfe, 0x9f, 0x2f, 0x46, 0xde, 0x0b, 0x68, 0x8e, 0x30, 0x25, 0xe0, 0x29, 0xcf, 0xf1, 0x52, 0x44, 0x42, 0x9a, 0xd4, 0xf8, 0x34, 0x84, 0xf5, 0xde, 0xa4, 0xaf, 0x85, 0x83, }; static const unsigned char ecdh_secp256r1_5405_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5405_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5405_sharedsecret[] = { 0x6b, 0x56, 0xd8, 0xa0, 0x1a, 0x88, 0x43, 0x19, 0xab, 0x5f, 0xb9, 0xd8, 0x90, 0xca, 0xcf, 0xc7, 0xaa, 0xbd, 0x81, 0xad, 0x93, 0x8c, 0xb5, 0xea, 0xae, 0x20, 0x7c, 0x8c, 0x1a, 0xa0, 0x6e, 0xfb, }; static const wycheproof_ecdh_test ecdh_secp256r1_5405 = { .name = "ecdh_secp256r1_5405", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5405_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5405_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5405_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5405_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 125 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5406 for ECDH, tcId is 126 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5406_peerpubkey[] = { 0xe7, 0xcd, 0x58, 0x0b, 0xd9, 0x57, 0x91, 0x5d, 0x52, 0x70, 0x56, 0x83, 0x2e, 0x37, 0x79, 0x3a, 0xb3, 0xb0, 0x82, 0xdd, 0xfa, 0xd9, 0x37, 0x24, 0x12, 0xe1, 0x90, 0x8e, 0x5c, 0x16, 0xbb, 0xb6, 0x20, 0x86, 0x01, 0xa9, 0x70, 0xd5, 0x84, 0x4b, 0x78, 0x0d, 0x92, 0x46, 0xe9, 0x58, 0x3e, 0xb3, 0x59, 0x18, 0xc4, 0x2e, 0xd6, 0x95, 0xc0, 0x7d, 0x52, 0x24, 0x40, 0x37, 0xf0, 0xe3, 0x1d, 0xb5, }; static const unsigned char ecdh_secp256r1_5406_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5406_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5406_sharedsecret[] = { 0x2f, 0x64, 0xb5, 0xc8, 0x04, 0x6d, 0x41, 0xa4, 0xe1, 0xd6, 0x31, 0xff, 0x23, 0x84, 0x6b, 0xff, 0x95, 0x6a, 0x49, 0x25, 0xa4, 0x7f, 0x85, 0x34, 0x49, 0x0a, 0x20, 0xb4, 0xb1, 0x91, 0x8b, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5406 = { .name = "ecdh_secp256r1_5406", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5406_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5406_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5406_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5406_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 126 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5407 for ECDH, tcId is 127 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5407_peerpubkey[] = { 0x2a, 0x52, 0xdb, 0x1f, 0xe2, 0x46, 0xb7, 0x1c, 0x79, 0xc0, 0xd0, 0xac, 0x49, 0xa7, 0xd3, 0x8d, 0xe6, 0x7b, 0x20, 0x29, 0x95, 0xef, 0xbb, 0xd2, 0xa9, 0xcc, 0x52, 0x5f, 0x6f, 0x36, 0x01, 0x03, 0x68, 0xf4, 0x94, 0xbe, 0x27, 0xe0, 0x59, 0x3e, 0x2d, 0x61, 0x2f, 0x1f, 0xa1, 0x0a, 0x92, 0x11, 0x43, 0x7e, 0x6a, 0xa1, 0x6e, 0x65, 0xd9, 0x77, 0x35, 0x01, 0x40, 0x72, 0xf0, 0xdc, 0xec, 0x94, }; static const unsigned char ecdh_secp256r1_5407_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5407_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5407_sharedsecret[] = { 0x63, 0xac, 0x31, 0xe7, 0x18, 0xb9, 0xa7, 0x80, 0xa8, 0x5f, 0x06, 0x70, 0xe1, 0xd3, 0x68, 0x5b, 0xbe, 0x30, 0x6e, 0x5f, 0x06, 0xfe, 0xe2, 0x82, 0xa8, 0x78, 0x47, 0x00, 0xb5, 0x03, 0xc1, 0x24, }; static const wycheproof_ecdh_test ecdh_secp256r1_5407 = { .name = "ecdh_secp256r1_5407", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5407_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5407_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5407_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5407_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 127 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5408 for ECDH, tcId is 128 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5408_peerpubkey[] = { 0x1c, 0x50, 0xdc, 0x49, 0xfe, 0xf7, 0x08, 0xc4, 0xcd, 0xd6, 0x2e, 0x76, 0x6f, 0x9b, 0x60, 0xf7, 0x84, 0xd5, 0x1a, 0xfe, 0xe1, 0x7a, 0x8f, 0xe9, 0xf3, 0x70, 0x1b, 0x2f, 0xae, 0x55, 0xb7, 0xa5, 0xd1, 0x0f, 0x0d, 0x96, 0x39, 0xd8, 0x3d, 0xce, 0x8f, 0x26, 0xa8, 0x69, 0x70, 0x5a, 0x6d, 0x6d, 0x38, 0xe6, 0xd3, 0x28, 0xf5, 0x68, 0x55, 0x81, 0x14, 0x2a, 0xec, 0x0d, 0xcd, 0x1f, 0x90, 0xe7, }; static const unsigned char ecdh_secp256r1_5408_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5408_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5408_sharedsecret[] = { 0x55, 0x5c, 0x19, 0x17, 0xb7, 0x70, 0xce, 0xbe, 0x6a, 0x98, 0x33, 0x7a, 0x00, 0x8a, 0xe3, 0xd8, 0xd0, 0x4f, 0x57, 0x15, 0x65, 0x32, 0x7c, 0x93, 0xde, 0xbf, 0x61, 0xef, 0x90, 0xdd, 0xdd, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256r1_5408 = { .name = "ecdh_secp256r1_5408", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5408_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5408_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5408_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5408_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 128 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5409 for ECDH, tcId is 129 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5409_peerpubkey[] = { 0x6d, 0x0a, 0xa1, 0xbc, 0x1c, 0xee, 0x6d, 0x07, 0xd0, 0x45, 0x00, 0x2c, 0x13, 0x29, 0x0d, 0x0c, 0xa2, 0x5c, 0xa3, 0xc8, 0x78, 0x33, 0x43, 0xa5, 0x25, 0xfa, 0xc7, 0x04, 0x72, 0xb9, 0x2c, 0x62, 0xd6, 0xfb, 0xa7, 0x11, 0x74, 0x44, 0x8b, 0x47, 0x2c, 0xf1, 0x72, 0xb0, 0xca, 0x9e, 0x37, 0x7f, 0x1a, 0x26, 0x03, 0xba, 0x7a, 0xe1, 0x27, 0x6d, 0x15, 0x3b, 0x20, 0xc6, 0x3e, 0x7d, 0x24, 0xbf, }; static const unsigned char ecdh_secp256r1_5409_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5409_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5409_sharedsecret[] = { 0x3a, 0x65, 0xa9, 0x20, 0x0f, 0x8f, 0x96, 0x63, 0x59, 0x12, 0xfa, 0xa5, 0xe7, 0x85, 0x9f, 0xa3, 0x03, 0xa7, 0x6a, 0x1c, 0x2a, 0x41, 0xea, 0x97, 0xef, 0x61, 0xaa, 0x39, 0x28, 0x77, 0x00, 0xa9, }; static const wycheproof_ecdh_test ecdh_secp256r1_5409 = { .name = "ecdh_secp256r1_5409", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5409_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5409_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5409_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5409_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 129 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5410 for ECDH, tcId is 130 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5410_peerpubkey[] = { 0xf0, 0x7e, 0x3d, 0x8b, 0xe2, 0xba, 0x54, 0xc6, 0x08, 0x41, 0x41, 0xe1, 0xfd, 0x2b, 0x29, 0xcf, 0xd0, 0x0d, 0x4e, 0x6d, 0xd6, 0xff, 0xb1, 0x15, 0xed, 0x83, 0x9b, 0x10, 0xbd, 0x8a, 0x42, 0x2f, 0x42, 0x99, 0x2c, 0xb9, 0xa5, 0x24, 0x38, 0x97, 0xd5, 0x54, 0x08, 0xe9, 0xbb, 0x55, 0x60, 0x43, 0x31, 0x8d, 0x87, 0x34, 0x9a, 0xf3, 0x5d, 0xcc, 0x09, 0x75, 0xed, 0x80, 0x5c, 0x8f, 0xa2, 0xc9, }; static const unsigned char ecdh_secp256r1_5410_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5410_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5410_sharedsecret[] = { 0xbb, 0x7b, 0xb5, 0x2d, 0xa5, 0x70, 0xba, 0x58, 0xe0, 0x5f, 0xd3, 0x22, 0xf8, 0x2d, 0x55, 0x6c, 0x2d, 0x65, 0xb3, 0x65, 0xdb, 0x30, 0x81, 0x58, 0x79, 0xf6, 0x7f, 0x23, 0x3b, 0x08, 0x9b, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256r1_5410 = { .name = "ecdh_secp256r1_5410", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5410_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5410_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5410_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5410_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 130 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5411 for ECDH, tcId is 131 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5411_peerpubkey[] = { 0x43, 0xa9, 0xb9, 0x02, 0x74, 0xdb, 0xd5, 0xf3, 0x6d, 0xd2, 0x90, 0x46, 0xfc, 0x83, 0x90, 0x00, 0x8d, 0xde, 0x74, 0x51, 0x3c, 0xe4, 0xc3, 0xe8, 0x89, 0x2b, 0x23, 0x6e, 0xff, 0xf8, 0x0c, 0x9d, 0xc7, 0x15, 0x47, 0x15, 0x2a, 0x58, 0x97, 0xdb, 0xe1, 0x69, 0x57, 0xbd, 0x15, 0xd1, 0xa8, 0x7d, 0x77, 0x04, 0x96, 0xf8, 0x14, 0xfe, 0x29, 0x21, 0xc8, 0xf3, 0x3d, 0xf0, 0x43, 0x93, 0xc7, 0xf8, }; static const unsigned char ecdh_secp256r1_5411_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5411_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5411_sharedsecret[] = { 0xe8, 0xca, 0xe9, 0x94, 0x42, 0x33, 0xb8, 0x67, 0xee, 0xdf, 0x59, 0x02, 0xfc, 0x49, 0xec, 0xd0, 0x7e, 0x4c, 0x81, 0xc4, 0x62, 0x79, 0x53, 0x1e, 0x89, 0x52, 0x0b, 0x74, 0xba, 0x53, 0x70, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5411 = { .name = "ecdh_secp256r1_5411", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5411_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5411_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5411_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5411_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 131 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5412 for ECDH, tcId is 132 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5412_peerpubkey[] = { 0xe9, 0xaf, 0x8e, 0x8c, 0x19, 0xda, 0x9d, 0x5c, 0x2f, 0x3b, 0x3c, 0x03, 0xb8, 0xe9, 0x27, 0xc3, 0xcb, 0xe2, 0xd7, 0x17, 0xf9, 0x8f, 0x50, 0x09, 0x72, 0xe5, 0x6d, 0x82, 0xeb, 0x07, 0xc2, 0xb1, 0x4e, 0x83, 0xfc, 0xaa, 0xca, 0xdc, 0x26, 0xf8, 0xbb, 0x5e, 0x7b, 0x94, 0x74, 0x1f, 0xe5, 0x4f, 0x31, 0x27, 0x5e, 0xbd, 0x6e, 0x1c, 0x96, 0x9d, 0x7e, 0xc2, 0xfe, 0xce, 0xad, 0x8a, 0x0d, 0xae, }; static const unsigned char ecdh_secp256r1_5412_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5412_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5412_sharedsecret[] = { 0xe7, 0x2a, 0xd0, 0xcd, 0xb2, 0x5f, 0x43, 0x07, 0xd1, 0xd8, 0x34, 0xa5, 0xf7, 0x92, 0xe9, 0xaf, 0x64, 0xfd, 0x1b, 0x69, 0xa4, 0x70, 0x41, 0xec, 0x8f, 0xa4, 0x6d, 0x52, 0x6f, 0x41, 0x9e, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5412 = { .name = "ecdh_secp256r1_5412", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5412_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5412_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5412_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5412_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 132 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5413 for ECDH, tcId is 133 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5413_peerpubkey[] = { 0x33, 0xd9, 0x58, 0x2b, 0x56, 0x7a, 0xad, 0xbe, 0x59, 0x60, 0x6f, 0xa6, 0xff, 0xc1, 0x18, 0x48, 0xe4, 0x94, 0x7b, 0x51, 0x79, 0x59, 0x73, 0x17, 0x77, 0x63, 0x17, 0xb2, 0xb4, 0xff, 0x65, 0xd0, 0xb4, 0xd8, 0x56, 0x8d, 0xc8, 0x43, 0x31, 0x9c, 0xc0, 0x4f, 0x4b, 0xf1, 0x10, 0x49, 0x6d, 0xee, 0x7c, 0x92, 0x29, 0xfc, 0x68, 0xcb, 0x09, 0x58, 0xf3, 0xcb, 0xd3, 0x7e, 0xcc, 0xa6, 0x99, 0x0f, }; static const unsigned char ecdh_secp256r1_5413_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5413_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5413_sharedsecret[] = { 0x00, 0x01, 0x97, 0xfb, 0xc2, 0x60, 0xa8, 0x4d, 0xbc, 0xbf, 0x88, 0x13, 0x6a, 0xea, 0xa7, 0x9b, 0x03, 0xbb, 0x89, 0x49, 0xae, 0xfd, 0x24, 0x16, 0xbe, 0xf6, 0x39, 0x29, 0xef, 0x78, 0x9b, 0xf3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5413 = { .name = "ecdh_secp256r1_5413", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5413_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5413_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5413_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5413_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 133 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5414 for ECDH, tcId is 134 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5414_peerpubkey[] = { 0xe2, 0x1c, 0x02, 0x82, 0xad, 0xb1, 0xb2, 0x05, 0x5f, 0xda, 0x74, 0x46, 0x44, 0xc6, 0x86, 0x12, 0xcf, 0xb0, 0xc6, 0x8a, 0x70, 0xb9, 0x81, 0x2d, 0x00, 0x7f, 0x21, 0xa7, 0x8f, 0x1a, 0xdc, 0x48, 0x49, 0xf3, 0xe7, 0x64, 0x4b, 0xc6, 0x63, 0x3e, 0x27, 0x73, 0xa2, 0xf3, 0xcc, 0x52, 0x14, 0xfa, 0x72, 0x08, 0xe3, 0x0a, 0xfb, 0x3d, 0xe9, 0x92, 0xf0, 0x77, 0xee, 0x32, 0x15, 0x69, 0xdc, 0x48, }; static const unsigned char ecdh_secp256r1_5414_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5414_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5414_sharedsecret[] = { 0xcd, 0xb1, 0x8b, 0xf6, 0x26, 0x70, 0xa8, 0x53, 0x48, 0x8c, 0xa5, 0x10, 0xd8, 0xf5, 0x5b, 0xab, 0x29, 0x18, 0x99, 0x14, 0x24, 0x92, 0x5b, 0xd9, 0xb7, 0x4a, 0x82, 0x1d, 0x2c, 0x6e, 0x7e, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5414 = { .name = "ecdh_secp256r1_5414", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5414_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5414_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5414_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5414_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 134 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5415 for ECDH, tcId is 135 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5415_peerpubkey[] = { 0xaf, 0x27, 0xde, 0x0d, 0xa6, 0x55, 0x6e, 0x4e, 0x64, 0x58, 0x8c, 0x96, 0x94, 0xaf, 0xee, 0x9a, 0x84, 0xe1, 0xcb, 0xd0, 0xc3, 0x88, 0x97, 0x2d, 0xf3, 0xa9, 0x97, 0xf7, 0x60, 0xbb, 0xcd, 0x90, 0x3c, 0x5a, 0x02, 0xe1, 0x61, 0x55, 0x1f, 0x33, 0x3d, 0x77, 0x05, 0x59, 0xab, 0x1a, 0xf4, 0x9b, 0xf8, 0xb6, 0x82, 0x74, 0x89, 0x65, 0x90, 0x93, 0x9c, 0xe9, 0x56, 0xd9, 0x91, 0x3b, 0x67, 0x6f, }; static const unsigned char ecdh_secp256r1_5415_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5415_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5415_sharedsecret[] = { 0x16, 0x73, 0x03, 0x50, 0x5d, 0x22, 0xcf, 0x9e, 0xf7, 0x8c, 0x5b, 0x96, 0x87, 0xa5, 0x41, 0x8f, 0xa9, 0xfb, 0x28, 0x4f, 0x2b, 0x0f, 0xf6, 0x83, 0x16, 0x28, 0x8e, 0xcd, 0x7f, 0x2e, 0x2e, 0x09, }; static const wycheproof_ecdh_test ecdh_secp256r1_5415 = { .name = "ecdh_secp256r1_5415", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5415_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5415_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5415_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5415_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 135 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5416 for ECDH, tcId is 136 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5416_peerpubkey[] = { 0x0d, 0xa4, 0x1b, 0x82, 0x55, 0x0b, 0x35, 0x8f, 0xf4, 0x74, 0x91, 0x5d, 0x83, 0x10, 0x4d, 0x41, 0xa8, 0x3a, 0x12, 0xef, 0x70, 0x58, 0x9b, 0x9d, 0x39, 0x2f, 0x0f, 0x30, 0xdc, 0x32, 0x42, 0x9e, 0xdc, 0x76, 0x16, 0x3c, 0x8f, 0xe0, 0x7a, 0x3f, 0x70, 0x9c, 0xbd, 0x92, 0xda, 0x0b, 0xbf, 0xc5, 0x04, 0x5f, 0x3d, 0xb8, 0x2a, 0xa5, 0x34, 0x4c, 0xf1, 0xfd, 0x5b, 0x27, 0xfc, 0xd2, 0xf7, 0xa6, }; static const unsigned char ecdh_secp256r1_5416_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5416_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5416_sharedsecret[] = { 0x85, 0x60, 0x0f, 0xf2, 0x3c, 0x3c, 0xde, 0x26, 0x00, 0x9f, 0xea, 0x9b, 0x65, 0x39, 0x66, 0x4b, 0xf0, 0x45, 0x05, 0x68, 0x83, 0x72, 0x8a, 0xb0, 0xd4, 0x49, 0x8e, 0xa0, 0xa8, 0xf4, 0xa4, 0x53, }; static const wycheproof_ecdh_test ecdh_secp256r1_5416 = { .name = "ecdh_secp256r1_5416", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5416_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5416_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5416_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5416_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 136 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5417 for ECDH, tcId is 137 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5417_peerpubkey[] = { 0x19, 0xc8, 0x44, 0xb8, 0xc7, 0x20, 0x90, 0x26, 0xa0, 0x99, 0x6a, 0x78, 0x29, 0x83, 0xe1, 0xbd, 0x0f, 0x0d, 0xe9, 0x25, 0x5b, 0x86, 0x73, 0x9b, 0xe9, 0xbe, 0xf0, 0x8e, 0xa5, 0x47, 0x5c, 0xc6, 0x69, 0xa7, 0x79, 0xdd, 0xf5, 0x77, 0x47, 0xcf, 0x7d, 0x9a, 0x22, 0xf0, 0x0e, 0xd8, 0xef, 0xc6, 0xe8, 0x18, 0xaf, 0x58, 0x27, 0xb7, 0x50, 0xd6, 0x65, 0xfe, 0xe6, 0xd6, 0xd5, 0x8a, 0x22, 0xe8, }; static const unsigned char ecdh_secp256r1_5417_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5417_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5417_sharedsecret[] = { 0xa3, 0x25, 0x0a, 0x2b, 0xfb, 0x14, 0x5c, 0xe8, 0x6e, 0x70, 0x6a, 0xc3, 0xab, 0x2b, 0xf5, 0x03, 0xa6, 0x64, 0x86, 0xac, 0x0b, 0x2f, 0x75, 0x22, 0x60, 0x1c, 0x12, 0x4b, 0x0e, 0x0f, 0x9c, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5417 = { .name = "ecdh_secp256r1_5417", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5417_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5417_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5417_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5417_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 137 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5418 for ECDH, tcId is 138 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5418_peerpubkey[] = { 0xbd, 0x07, 0xbd, 0x43, 0x26, 0xcd, 0xca, 0xbf, 0x42, 0x90, 0x5e, 0xfa, 0x45, 0x59, 0xa3, 0x0e, 0x68, 0xcb, 0x21, 0x5d, 0x40, 0xc9, 0xaf, 0xb6, 0x0c, 0xe0, 0x2d, 0x4f, 0xda, 0x61, 0x75, 0x79, 0xb9, 0x27, 0xb5, 0xcb, 0xa0, 0x2d, 0x24, 0xfb, 0x9a, 0xaf, 0xe1, 0xd4, 0x29, 0x35, 0x1e, 0x48, 0xba, 0xe9, 0xdd, 0x92, 0xd7, 0xbc, 0x7b, 0xe1, 0x5e, 0x5b, 0x8a, 0x30, 0xa8, 0x6b, 0xe1, 0x3d, }; static const unsigned char ecdh_secp256r1_5418_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5418_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5418_sharedsecret[] = { 0x2d, 0x70, 0xcc, 0x8c, 0x8a, 0xf0, 0x13, 0x66, 0x05, 0x1c, 0xc8, 0x35, 0x9c, 0x2f, 0xc8, 0xf2, 0x58, 0x75, 0x7e, 0x26, 0x01, 0xfd, 0x8f, 0x3e, 0x08, 0x42, 0x2a, 0x7b, 0x23, 0xbf, 0xef, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5418 = { .name = "ecdh_secp256r1_5418", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5418_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5418_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5418_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5418_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 138 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5419 for ECDH, tcId is 139 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5419_peerpubkey[] = { 0x00, 0x89, 0xde, 0xe2, 0x7a, 0x60, 0xd0, 0x71, 0xda, 0xbb, 0xaf, 0x58, 0xf3, 0xe5, 0x66, 0x14, 0xda, 0xd3, 0xb7, 0xf9, 0xa8, 0x03, 0x07, 0x69, 0xfd, 0x04, 0x63, 0xb3, 0xe6, 0xe0, 0xf0, 0x3a, 0x14, 0x7b, 0x4d, 0x6e, 0x7e, 0x7f, 0xd9, 0x39, 0xb9, 0xb5, 0x4d, 0xab, 0x45, 0x8f, 0xd5, 0x56, 0xad, 0x8f, 0xda, 0xf4, 0xda, 0x6c, 0x39, 0x09, 0x58, 0x8c, 0x4e, 0x05, 0x0c, 0xa7, 0x4a, 0x67, }; static const unsigned char ecdh_secp256r1_5419_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5419_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5419_sharedsecret[] = { 0xcb, 0xe0, 0xc5, 0x71, 0xd1, 0x08, 0x0e, 0xa3, 0x4e, 0xe2, 0x0a, 0xd1, 0xbf, 0xd2, 0x1e, 0xa5, 0xec, 0xc4, 0x42, 0xea, 0xd7, 0x33, 0xfb, 0x4e, 0xee, 0x3c, 0x0d, 0x7b, 0x0c, 0xce, 0x99, 0x35, }; static const wycheproof_ecdh_test ecdh_secp256r1_5419 = { .name = "ecdh_secp256r1_5419", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5419_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5419_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5419_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5419_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 139 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5420 for ECDH, tcId is 140 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5420_peerpubkey[] = { 0x42, 0xed, 0xe1, 0x06, 0xcf, 0x85, 0xae, 0xf4, 0x6d, 0xf7, 0xe5, 0xdb, 0xa8, 0xa8, 0xb0, 0x04, 0x59, 0x31, 0x7d, 0x9e, 0x76, 0x6a, 0x7b, 0x77, 0xc2, 0x99, 0xaa, 0x0e, 0x17, 0xde, 0xa1, 0x42, 0xb6, 0xe9, 0xa8, 0x6f, 0x4f, 0xc3, 0xe9, 0x45, 0xd4, 0x32, 0x3b, 0xa8, 0xe4, 0x59, 0xf6, 0xb7, 0xb1, 0x4c, 0x56, 0x3a, 0x69, 0x8c, 0x75, 0x7a, 0x2d, 0x5f, 0x7b, 0x0b, 0xc3, 0x01, 0xed, 0xe2, }; static const unsigned char ecdh_secp256r1_5420_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5420_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5420_sharedsecret[] = { 0x33, 0x32, 0x0f, 0xc7, 0x91, 0x7f, 0xe4, 0xe1, 0x92, 0x80, 0xbf, 0xbf, 0xe1, 0x6f, 0x22, 0x3c, 0x03, 0x7f, 0x7c, 0x2d, 0xc3, 0x0c, 0x0f, 0xda, 0x98, 0x31, 0x07, 0x40, 0xf5, 0x7f, 0xe2, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_5420 = { .name = "ecdh_secp256r1_5420", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5420_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5420_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5420_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5420_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 140 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5421 for ECDH, tcId is 141 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5421_peerpubkey[] = { 0x97, 0x4b, 0x43, 0x16, 0xc5, 0xe7, 0xd1, 0x34, 0x8b, 0x28, 0xdb, 0xc4, 0xfd, 0x61, 0xd8, 0xd3, 0x47, 0x0d, 0xe7, 0x44, 0xc3, 0x0f, 0x5b, 0xe2, 0x37, 0xf8, 0x5f, 0x29, 0x96, 0x9d, 0xea, 0x77, 0xb5, 0xf0, 0x0b, 0x58, 0xb8, 0x3c, 0xfc, 0x7b, 0xc5, 0x16, 0x55, 0x46, 0x5b, 0x4a, 0x28, 0xab, 0xe1, 0xed, 0x3d, 0xbe, 0xc2, 0x0c, 0x6b, 0x46, 0x43, 0xae, 0xc8, 0x5b, 0x95, 0xa5, 0xbe, 0xc6, }; static const unsigned char ecdh_secp256r1_5421_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5421_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5421_sharedsecret[] = { 0x35, 0xc7, 0x26, 0xea, 0xd6, 0x6c, 0x39, 0x41, 0x4f, 0xe0, 0xc2, 0x46, 0x04, 0xdf, 0x78, 0x38, 0xe5, 0x72, 0x5d, 0x2f, 0xc1, 0xbd, 0x08, 0x53, 0x26, 0x1e, 0x1d, 0xe3, 0x33, 0x8e, 0xcb, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5421 = { .name = "ecdh_secp256r1_5421", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5421_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5421_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5421_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5421_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 141 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5422 for ECDH, tcId is 142 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5422_peerpubkey[] = { 0x59, 0x87, 0x3d, 0x75, 0x23, 0x93, 0x6a, 0x12, 0x1b, 0x62, 0x9e, 0x98, 0x70, 0xf9, 0x30, 0x41, 0x9f, 0x25, 0x3a, 0x57, 0x67, 0xb9, 0xd0, 0xdc, 0x49, 0x71, 0x6f, 0x2c, 0x50, 0xe1, 0x7b, 0xd0, 0x16, 0x3b, 0x71, 0xf2, 0xbf, 0x43, 0x18, 0xfb, 0xde, 0x1c, 0xea, 0xa5, 0x85, 0x45, 0x00, 0x80, 0xee, 0xc2, 0x84, 0x74, 0xcd, 0x18, 0xbf, 0x7c, 0x21, 0xd2, 0xd1, 0xbf, 0xde, 0x4f, 0xf6, 0x77, }; static const unsigned char ecdh_secp256r1_5422_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5422_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5422_sharedsecret[] = { 0x66, 0xea, 0x42, 0xfe, 0x6f, 0xd8, 0x74, 0x1b, 0x37, 0x59, 0x9b, 0xbd, 0xad, 0xa3, 0xec, 0x0e, 0x6b, 0x08, 0xc0, 0xb5, 0x2e, 0xa6, 0x7c, 0x29, 0xa3, 0x31, 0x72, 0xf7, 0x27, 0x42, 0x58, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5422 = { .name = "ecdh_secp256r1_5422", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5422_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5422_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5422_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5422_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 142 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5423 for ECDH, tcId is 143 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5423_peerpubkey[] = { 0xbd, 0x85, 0xa7, 0x9f, 0x81, 0xc4, 0xf9, 0x61, 0x3e, 0x64, 0xfa, 0x34, 0x78, 0x86, 0x43, 0x78, 0x56, 0xc7, 0x35, 0x8d, 0x1b, 0x69, 0xcf, 0x1e, 0x92, 0x3d, 0x77, 0x42, 0xd8, 0x2f, 0x9b, 0x67, 0x67, 0xd2, 0x69, 0x18, 0xea, 0xa8, 0xac, 0xb1, 0x13, 0xa1, 0xda, 0xad, 0xae, 0xdc, 0x70, 0x97, 0x42, 0x45, 0x73, 0x03, 0xeb, 0xc2, 0x3c, 0xdd, 0xa5, 0x57, 0x26, 0x13, 0xdc, 0x82, 0x77, 0x03, }; static const unsigned char ecdh_secp256r1_5423_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5423_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5423_sharedsecret[] = { 0x2f, 0x8a, 0x50, 0x2e, 0x4f, 0x44, 0x01, 0x33, 0xe8, 0x4f, 0xb6, 0x25, 0x29, 0x2c, 0xbe, 0xab, 0xe2, 0xcb, 0x79, 0xda, 0x73, 0x98, 0x7c, 0x76, 0xd4, 0xfe, 0xd8, 0x64, 0xd1, 0xb1, 0xb7, 0x62, }; static const wycheproof_ecdh_test ecdh_secp256r1_5423 = { .name = "ecdh_secp256r1_5423", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5423_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5423_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5423_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5423_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 143 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5424 for ECDH, tcId is 144 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5424_peerpubkey[] = { 0x3e, 0x6a, 0x4e, 0xff, 0xc4, 0x7c, 0x2f, 0x59, 0x26, 0xbb, 0x6b, 0x4a, 0xcf, 0x2e, 0xac, 0x48, 0xb9, 0x52, 0x4c, 0x47, 0xd5, 0x11, 0xf8, 0x16, 0x97, 0x67, 0x96, 0x77, 0x86, 0x00, 0xd6, 0xc5, 0xbf, 0xce, 0x59, 0x32, 0x42, 0xa5, 0x98, 0x5a, 0x97, 0x75, 0x90, 0xf8, 0xd7, 0x48, 0x5d, 0xf3, 0xf9, 0x53, 0x35, 0x29, 0x57, 0xf3, 0xc1, 0x7c, 0x13, 0xe9, 0x45, 0x83, 0xd9, 0xc0, 0xe7, 0xb9, }; static const unsigned char ecdh_secp256r1_5424_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5424_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5424_sharedsecret[] = { 0x06, 0x43, 0x68, 0x17, 0xd8, 0x92, 0x8b, 0x77, 0xb7, 0x3d, 0x16, 0xc5, 0xc3, 0xb3, 0x5e, 0x24, 0x3a, 0xd3, 0xef, 0x2a, 0xb5, 0x9a, 0xd0, 0x47, 0x14, 0x2c, 0x67, 0xa6, 0xd0, 0x92, 0x3c, 0x84, }; static const wycheproof_ecdh_test ecdh_secp256r1_5424 = { .name = "ecdh_secp256r1_5424", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5424_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5424_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5424_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5424_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 144 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5425 for ECDH, tcId is 145 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5425_peerpubkey[] = { 0x9a, 0x44, 0x87, 0xfc, 0xfc, 0xe8, 0x39, 0x66, 0x88, 0xe7, 0x44, 0x9e, 0x09, 0x5f, 0xe8, 0x03, 0xca, 0xa2, 0x53, 0xd4, 0xbd, 0x7c, 0x66, 0xdb, 0xc6, 0x26, 0x1c, 0xc9, 0xd9, 0xf8, 0x83, 0xa5, 0x0e, 0x52, 0x51, 0xba, 0xe2, 0x9c, 0x5a, 0x5c, 0xdf, 0xa3, 0x1b, 0xc6, 0x11, 0x05, 0x67, 0x1a, 0x88, 0xa0, 0x18, 0x46, 0x73, 0x98, 0x15, 0x8d, 0x35, 0xb8, 0x88, 0x29, 0x23, 0x7c, 0x0b, 0xff, }; static const unsigned char ecdh_secp256r1_5425_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5425_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5425_sharedsecret[] = { 0x7e, 0x83, 0xfd, 0x2c, 0x3d, 0x71, 0x3b, 0xc8, 0x5d, 0x6d, 0x85, 0xd9, 0x07, 0x8b, 0x3a, 0x08, 0x42, 0x82, 0x4d, 0x41, 0x0e, 0x8a, 0xbd, 0xe0, 0x4d, 0xa0, 0xfd, 0x71, 0xc7, 0xd9, 0x47, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256r1_5425 = { .name = "ecdh_secp256r1_5425", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5425_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5425_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5425_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5425_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 145 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5426 for ECDH, tcId is 146 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5426_peerpubkey[] = { 0xfe, 0xd6, 0xce, 0x12, 0x72, 0x90, 0xc1, 0x29, 0x1c, 0xa5, 0xce, 0x64, 0xac, 0xb4, 0xe0, 0xf2, 0xf8, 0x90, 0x56, 0x54, 0xd1, 0xd2, 0x5b, 0xa5, 0x7c, 0x1f, 0x74, 0xab, 0x52, 0xf2, 0x1f, 0x42, 0x96, 0x3d, 0x31, 0x67, 0x1c, 0x06, 0xb8, 0x02, 0x16, 0x99, 0x29, 0x52, 0x5c, 0x4a, 0x1f, 0xde, 0xff, 0x5b, 0x1e, 0xaf, 0xab, 0x91, 0x9d, 0xc2, 0xdf, 0x6c, 0x52, 0xbe, 0x84, 0xdf, 0xae, 0xf3, }; static const unsigned char ecdh_secp256r1_5426_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5426_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5426_sharedsecret[] = { 0x0e, 0x3d, 0xfd, 0xab, 0x60, 0x6e, 0xbd, 0xc6, 0x42, 0x82, 0x82, 0xac, 0xd4, 0x43, 0xf1, 0x89, 0xc9, 0x9b, 0x3b, 0x48, 0x3a, 0xa1, 0x01, 0xfd, 0x8d, 0x6b, 0xed, 0x38, 0xae, 0xc5, 0x9e, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256r1_5426 = { .name = "ecdh_secp256r1_5426", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5426_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5426_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5426_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5426_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 146 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5427 for ECDH, tcId is 147 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5427_peerpubkey[] = { 0xf7, 0xce, 0xe5, 0xb5, 0x5f, 0x18, 0x69, 0xf1, 0x37, 0xdd, 0x70, 0x7c, 0x8f, 0x8f, 0xb8, 0x96, 0x5a, 0x2b, 0xe5, 0x84, 0x0c, 0x31, 0x49, 0xfb, 0x75, 0x96, 0x95, 0xa4, 0x66, 0x1b, 0x9c, 0x0d, 0x23, 0xc7, 0x8c, 0x4e, 0x96, 0x47, 0xb0, 0xd6, 0xcb, 0x2f, 0x26, 0x02, 0xbe, 0x73, 0xff, 0x25, 0xcf, 0x3d, 0x09, 0xc9, 0x6d, 0x89, 0x2b, 0x57, 0x45, 0xfe, 0x5e, 0xca, 0x81, 0x4a, 0xec, 0x91, }; static const unsigned char ecdh_secp256r1_5427_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5427_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5427_sharedsecret[] = { 0xf4, 0x89, 0xf2, 0xbd, 0x93, 0xf7, 0x6b, 0x8e, 0x41, 0xfc, 0x6b, 0x9f, 0x21, 0x1b, 0xc5, 0x99, 0xd4, 0x9d, 0xb1, 0xf1, 0x7a, 0x38, 0xe9, 0x5b, 0xab, 0x1d, 0x31, 0xb2, 0xa2, 0xb5, 0x58, 0x29, }; static const wycheproof_ecdh_test ecdh_secp256r1_5427 = { .name = "ecdh_secp256r1_5427", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5427_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5427_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5427_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5427_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 147 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5428 for ECDH, tcId is 148 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5428_peerpubkey[] = { 0x2b, 0xaa, 0xae, 0xc3, 0xb3, 0xe8, 0xd5, 0x4a, 0x4e, 0x18, 0xf0, 0x96, 0x0b, 0x94, 0x7d, 0xa2, 0x53, 0x5e, 0x3c, 0xfc, 0xca, 0x2c, 0xfa, 0x8b, 0x71, 0x13, 0xaa, 0xd8, 0xe3, 0xb6, 0x62, 0x6f, 0x72, 0xf7, 0x1e, 0x7c, 0x9e, 0x96, 0x04, 0x2c, 0x1d, 0x39, 0xcc, 0x8f, 0x11, 0x39, 0xd5, 0x14, 0x7c, 0x6f, 0x4f, 0xe6, 0x2e, 0x23, 0xcf, 0x6d, 0xf3, 0x64, 0xb5, 0xf4, 0xd8, 0x99, 0xf8, 0x42, }; static const unsigned char ecdh_secp256r1_5428_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5428_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5428_sharedsecret[] = { 0xcc, 0x57, 0x38, 0xb4, 0x9d, 0x30, 0xd5, 0xd0, 0x2c, 0xf7, 0xe0, 0xc5, 0x4a, 0x3d, 0xe0, 0x9b, 0x5b, 0x6f, 0x3c, 0x4d, 0xea, 0x91, 0xdd, 0x06, 0x79, 0x07, 0x2a, 0x35, 0x62, 0x44, 0x4c, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_5428 = { .name = "ecdh_secp256r1_5428", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5428_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5428_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5428_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5428_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 148 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5429 for ECDH, tcId is 149 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5429_peerpubkey[] = { 0xa5, 0x1a, 0xb1, 0x23, 0x8b, 0xc1, 0xbe, 0xd2, 0x52, 0x47, 0xe7, 0xd1, 0x79, 0xc8, 0x3a, 0x61, 0xae, 0x2d, 0x4a, 0x9f, 0xe2, 0x28, 0x8c, 0x36, 0x3a, 0xe0, 0xeb, 0x7a, 0x77, 0xde, 0x43, 0x2a, 0x3c, 0x6d, 0x35, 0xd8, 0x2b, 0xa8, 0x01, 0x7e, 0x6c, 0xa9, 0x04, 0x1c, 0xc7, 0x85, 0xa3, 0x07, 0x03, 0xf7, 0xbc, 0x44, 0x27, 0x50, 0x6e, 0x62, 0x4a, 0xc5, 0x97, 0x9d, 0x71, 0x54, 0x21, 0xdd, }; static const unsigned char ecdh_secp256r1_5429_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5429_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5429_sharedsecret[] = { 0x89, 0xa1, 0x11, 0x77, 0xd6, 0x90, 0x7a, 0x81, 0xd4, 0x74, 0x67, 0x09, 0x3b, 0xf6, 0xa3, 0xcc, 0x8b, 0xa5, 0x5d, 0xee, 0x05, 0x23, 0x9b, 0x16, 0x0a, 0x31, 0xa3, 0x00, 0x0f, 0x5d, 0x80, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5429 = { .name = "ecdh_secp256r1_5429", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5429_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5429_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5429_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5429_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 149 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5430 for ECDH, tcId is 150 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5430_peerpubkey[] = { 0x8b, 0x5a, 0xe8, 0xa0, 0xe5, 0x5f, 0x30, 0xf5, 0x09, 0x06, 0x13, 0x15, 0xab, 0xae, 0x79, 0xac, 0x48, 0x0f, 0x88, 0xb4, 0x46, 0x55, 0xf7, 0x26, 0x9a, 0x38, 0x5c, 0x81, 0x52, 0x68, 0x84, 0xbe, 0x26, 0x29, 0x74, 0xa3, 0x1a, 0x0e, 0x23, 0x22, 0x12, 0x6c, 0x2d, 0x77, 0xb2, 0x6b, 0x10, 0x8a, 0xbd, 0x81, 0xf8, 0xb9, 0x52, 0xc4, 0x58, 0xcc, 0xc9, 0x5d, 0x46, 0xfb, 0x49, 0x24, 0xc7, 0xc0, }; static const unsigned char ecdh_secp256r1_5430_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5430_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5430_sharedsecret[] = { 0x2c, 0xb0, 0x3c, 0x30, 0xb2, 0x00, 0x37, 0xa5, 0xcf, 0x4d, 0x5b, 0x33, 0x57, 0x4f, 0x3a, 0xba, 0xc8, 0x95, 0xbf, 0xab, 0x37, 0x86, 0x7e, 0xb2, 0xeb, 0xed, 0x26, 0x0e, 0x09, 0x29, 0x05, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5430 = { .name = "ecdh_secp256r1_5430", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5430_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5430_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5430_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5430_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 150 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5431 for ECDH, tcId is 151 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5431_peerpubkey[] = { 0x5f, 0x60, 0xc7, 0x7e, 0x47, 0x4d, 0xd6, 0x6c, 0x81, 0x35, 0xee, 0x3d, 0xaf, 0xc7, 0x5b, 0xa6, 0x44, 0x64, 0x98, 0x24, 0xc7, 0x27, 0x37, 0x54, 0x20, 0x91, 0xad, 0x46, 0x9a, 0xdb, 0xb6, 0x85, 0x31, 0x2c, 0x09, 0xc6, 0x9b, 0x62, 0x9d, 0x04, 0x36, 0xbf, 0x3b, 0xd6, 0xc6, 0x08, 0x3f, 0xf2, 0xa8, 0x7b, 0xe4, 0x84, 0xa7, 0x3e, 0xf3, 0xa5, 0xd2, 0xc3, 0xe0, 0x6b, 0x5d, 0x9b, 0x21, 0xb3, }; static const unsigned char ecdh_secp256r1_5431_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5431_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5431_sharedsecret[] = { 0xe5, 0x4d, 0x48, 0x7d, 0x0c, 0x4b, 0x12, 0xfe, 0x52, 0x2a, 0xf3, 0xe6, 0x63, 0xce, 0x31, 0x6e, 0x63, 0x2b, 0xa9, 0xd6, 0x3a, 0x1f, 0x02, 0xa3, 0x6f, 0xc5, 0xa8, 0x2b, 0xf8, 0x27, 0x31, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp256r1_5431 = { .name = "ecdh_secp256r1_5431", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5431_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5431_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5431_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5431_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 151 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5432 for ECDH, tcId is 152 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5432_peerpubkey[] = { 0xe0, 0x6e, 0xaa, 0x73, 0xf6, 0xfe, 0xae, 0x45, 0x41, 0x7d, 0x85, 0x9b, 0xba, 0xd4, 0xbc, 0x40, 0x4b, 0x28, 0x85, 0xbc, 0xd2, 0x13, 0xeb, 0xac, 0xe5, 0x94, 0xe1, 0x6f, 0x49, 0x70, 0xe0, 0xc4, 0x11, 0xed, 0x33, 0x23, 0xa3, 0xd7, 0xaf, 0xc7, 0x07, 0x62, 0x39, 0x88, 0x43, 0x07, 0xf9, 0x18, 0x49, 0xed, 0x5f, 0x5e, 0x36, 0xb6, 0x17, 0x1d, 0x30, 0x9c, 0x81, 0x34, 0x4c, 0x53, 0xe0, 0x6d, }; static const unsigned char ecdh_secp256r1_5432_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5432_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5432_sharedsecret[] = { 0xcc, 0xea, 0x96, 0x9d, 0x40, 0xfa, 0x42, 0x93, 0x3f, 0x4f, 0xbd, 0xc4, 0xca, 0xbe, 0x21, 0x85, 0xf8, 0xa4, 0x52, 0x99, 0x62, 0x54, 0xc1, 0xf4, 0xe0, 0xdd, 0xe5, 0xe1, 0x4f, 0xee, 0xea, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5432 = { .name = "ecdh_secp256r1_5432", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5432_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5432_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5432_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5432_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 152 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5433 for ECDH, tcId is 153 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5433_peerpubkey[] = { 0x0f, 0x1c, 0x1b, 0x89, 0xe9, 0xfc, 0x6f, 0xc0, 0xfa, 0xef, 0xc9, 0x10, 0x9f, 0xc4, 0xa1, 0x24, 0x7d, 0x9f, 0x54, 0xc7, 0x49, 0x7b, 0x6c, 0xc9, 0x75, 0xe6, 0xa5, 0x45, 0x5b, 0xef, 0x41, 0x08, 0x36, 0xcb, 0x38, 0x18, 0x54, 0x8a, 0xc9, 0xb4, 0x1e, 0x2b, 0x83, 0x36, 0xc3, 0xeb, 0x8d, 0x97, 0x07, 0x5a, 0xe4, 0x7e, 0x18, 0x27, 0xfa, 0x1f, 0xf9, 0x3d, 0x43, 0x41, 0xd4, 0x3c, 0x0c, 0x1d, }; static const unsigned char ecdh_secp256r1_5433_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5433_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5433_sharedsecret[] = { 0xea, 0xae, 0x0e, 0x18, 0x8c, 0x94, 0x27, 0xbf, 0x3c, 0x8b, 0x3d, 0xed, 0x77, 0x21, 0x22, 0x20, 0x4c, 0x32, 0x8d, 0x59, 0x41, 0xe3, 0x89, 0xd8, 0x08, 0xe2, 0x72, 0x46, 0x38, 0xf9, 0xaf, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256r1_5433 = { .name = "ecdh_secp256r1_5433", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5433_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5433_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5433_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5433_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 153 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5434 for ECDH, tcId is 154 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5434_peerpubkey[] = { 0x57, 0x70, 0x69, 0xe8, 0x28, 0x4a, 0x95, 0xf5, 0x1d, 0xca, 0xb9, 0x19, 0xb0, 0x53, 0x66, 0x57, 0x05, 0x89, 0x71, 0xda, 0xb7, 0x62, 0x17, 0xf8, 0xd3, 0xae, 0x72, 0x2a, 0x64, 0x09, 0x2e, 0x26, 0xe5, 0x1f, 0x68, 0xa7, 0x22, 0xcc, 0x03, 0x97, 0xf4, 0x80, 0x14, 0x01, 0x77, 0x1e, 0x9a, 0x3d, 0x19, 0x88, 0xd4, 0xaf, 0x76, 0xf1, 0x4f, 0x9e, 0x2f, 0x9c, 0x36, 0xe0, 0x77, 0x3e, 0x29, 0xc2, }; static const unsigned char ecdh_secp256r1_5434_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5434_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5434_sharedsecret[] = { 0xfe, 0xa0, 0xcc, 0xe1, 0x35, 0x8f, 0x1f, 0xf4, 0x0f, 0xfe, 0xaa, 0xff, 0xbf, 0x91, 0xb2, 0xe8, 0xd4, 0x26, 0xd4, 0xe3, 0x1e, 0x96, 0x27, 0x73, 0x1a, 0xce, 0x3a, 0x12, 0x2e, 0xab, 0x6b, 0x0d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5434 = { .name = "ecdh_secp256r1_5434", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5434_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5434_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5434_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5434_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 154 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5435 for ECDH, tcId is 155 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5435_peerpubkey[] = { 0x24, 0x06, 0xa2, 0x75, 0x90, 0x50, 0xb9, 0x25, 0xdd, 0x4f, 0x81, 0x4c, 0x50, 0x33, 0xe3, 0x55, 0x54, 0x8f, 0x42, 0xbb, 0xf1, 0xaf, 0xb7, 0x91, 0xc1, 0x10, 0xf0, 0x03, 0x1f, 0x29, 0xf6, 0x80, 0x99, 0xd5, 0xf4, 0xb0, 0x05, 0xde, 0x39, 0x27, 0xf1, 0x65, 0xab, 0xef, 0xf1, 0x96, 0xa2, 0x8c, 0x72, 0x17, 0xfa, 0xb1, 0xbe, 0x2b, 0x52, 0x09, 0xc3, 0x24, 0xe7, 0xd6, 0x2d, 0x2d, 0xd6, 0x87, }; static const unsigned char ecdh_secp256r1_5435_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5435_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5435_sharedsecret[] = { 0x83, 0x76, 0x21, 0xea, 0x48, 0x27, 0xbb, 0xa0, 0x37, 0x6a, 0xaa, 0x8a, 0xa6, 0x6c, 0xfe, 0x14, 0x4a, 0x2f, 0xf1, 0xe3, 0x59, 0xdc, 0x61, 0x9a, 0x06, 0x44, 0x1d, 0x3e, 0x05, 0x5f, 0x97, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256r1_5435 = { .name = "ecdh_secp256r1_5435", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5435_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5435_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5435_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5435_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 155 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5436 for ECDH, tcId is 156 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5436_peerpubkey[] = { 0xcc, 0xaa, 0xc6, 0x1f, 0x35, 0xa2, 0x78, 0x61, 0x18, 0x36, 0x21, 0x64, 0x2b, 0xc5, 0x73, 0xaf, 0x91, 0x33, 0x56, 0xfb, 0x47, 0xcf, 0x58, 0x2f, 0x0b, 0x52, 0x99, 0x09, 0x9d, 0x6f, 0x6c, 0x69, 0x91, 0xf7, 0x27, 0x2b, 0x83, 0xb7, 0x38, 0xa7, 0xa5, 0xd3, 0x04, 0x47, 0xc8, 0x7f, 0x12, 0x6a, 0x7d, 0x98, 0xec, 0x72, 0xfa, 0x26, 0x09, 0xd0, 0x93, 0x9d, 0x18, 0xdb, 0x7e, 0xa7, 0xeb, 0x3a, }; static const unsigned char ecdh_secp256r1_5436_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5436_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5436_sharedsecret[] = { 0x63, 0x97, 0x4c, 0xe6, 0x15, 0x37, 0x62, 0xe5, 0xb3, 0x64, 0x52, 0x3c, 0xea, 0xd9, 0x3e, 0x8c, 0xe8, 0xbc, 0xc7, 0x7d, 0xda, 0x56, 0x36, 0x5d, 0x67, 0x61, 0x36, 0x16, 0x9f, 0xc4, 0xe3, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5436 = { .name = "ecdh_secp256r1_5436", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5436_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5436_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5436_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5436_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 156 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5437 for ECDH, tcId is 157 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5437_peerpubkey[] = { 0x01, 0x41, 0x59, 0x17, 0x27, 0x2f, 0x19, 0x84, 0xe7, 0x21, 0x7a, 0x36, 0xfb, 0x31, 0x1f, 0xd2, 0x90, 0x4d, 0x41, 0xa6, 0xb1, 0x39, 0x73, 0xf9, 0x2a, 0xae, 0x3b, 0x90, 0xe8, 0x5e, 0x4d, 0x56, 0xd9, 0x7c, 0x82, 0x2e, 0xb7, 0xb2, 0x1a, 0x84, 0xd0, 0xd1, 0xbe, 0x48, 0x67, 0x40, 0x4a, 0x80, 0xc3, 0x48, 0x67, 0xf4, 0x31, 0x39, 0xda, 0xdc, 0xc3, 0x61, 0x9e, 0x10, 0xb2, 0x22, 0x56, 0x2b, }; static const unsigned char ecdh_secp256r1_5437_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5437_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5437_sharedsecret[] = { 0x0a, 0x04, 0x88, 0x14, 0x4b, 0xc3, 0x6d, 0x69, 0x0b, 0x62, 0x14, 0x8a, 0xc3, 0x07, 0x60, 0x47, 0xd4, 0x6d, 0x48, 0xf7, 0xad, 0xbb, 0x0f, 0x34, 0xfe, 0xe9, 0xa6, 0x36, 0x29, 0x5f, 0xe7, 0x37, }; static const wycheproof_ecdh_test ecdh_secp256r1_5437 = { .name = "ecdh_secp256r1_5437", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5437_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5437_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5437_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5437_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 157 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5438 for ECDH, tcId is 158 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5438_peerpubkey[] = { 0xb2, 0x57, 0x5d, 0x10, 0x0c, 0x6f, 0xa0, 0x56, 0xbc, 0xd1, 0x37, 0xab, 0x11, 0x1b, 0x53, 0x15, 0xa8, 0x90, 0x8c, 0x29, 0x24, 0x3b, 0x84, 0xf3, 0xdc, 0x99, 0x6d, 0x0e, 0x45, 0x76, 0x4b, 0x91, 0x66, 0xca, 0xbe, 0xb4, 0x18, 0x85, 0x58, 0x8e, 0xc0, 0x8b, 0x47, 0x25, 0x7d, 0xf5, 0x8b, 0xd5, 0x8f, 0x7d, 0xcd, 0x9e, 0x01, 0x2e, 0x26, 0x69, 0xfa, 0x2f, 0x52, 0xe2, 0x57, 0x67, 0xfc, 0x4c, }; static const unsigned char ecdh_secp256r1_5438_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5438_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5438_sharedsecret[] = { 0x12, 0x32, 0x16, 0x55, 0x38, 0xa4, 0x42, 0x68, 0xaa, 0x7c, 0x19, 0x9c, 0x54, 0xd6, 0xd2, 0x07, 0xc4, 0xef, 0x3f, 0x5a, 0xa7, 0x90, 0xc1, 0x0c, 0x92, 0x6a, 0x20, 0x75, 0x2c, 0xa6, 0x45, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256r1_5438 = { .name = "ecdh_secp256r1_5438", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5438_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5438_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5438_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5438_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 158 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5439 for ECDH, tcId is 159 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5439_peerpubkey[] = { 0xc1, 0x73, 0x55, 0xed, 0x30, 0xcc, 0xd6, 0x42, 0x7f, 0x96, 0x85, 0x70, 0x90, 0x21, 0xb2, 0x5c, 0x11, 0xed, 0x17, 0x6e, 0x96, 0x10, 0xc4, 0x79, 0xbc, 0xc4, 0xcc, 0x75, 0x52, 0xa7, 0x38, 0xe6, 0x1f, 0x75, 0x11, 0x47, 0x61, 0xdb, 0xa0, 0xec, 0x60, 0xcd, 0x26, 0x4b, 0xba, 0xb7, 0x63, 0xc5, 0xd5, 0xab, 0xcc, 0x75, 0xcd, 0x8f, 0xb5, 0x65, 0x1d, 0x06, 0x45, 0x17, 0x99, 0x88, 0xcc, 0x6d, }; static const unsigned char ecdh_secp256r1_5439_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5439_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5439_sharedsecret[] = { 0xdc, 0xab, 0x5e, 0x87, 0x4e, 0x4f, 0xb7, 0x6b, 0xc4, 0x31, 0x25, 0x28, 0xe9, 0xd7, 0x6d, 0xfa, 0xe5, 0x61, 0x45, 0x92, 0x25, 0x33, 0x08, 0x97, 0x34, 0x11, 0x0b, 0xf5, 0x65, 0x3f, 0x4d, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256r1_5439 = { .name = "ecdh_secp256r1_5439", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5439_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5439_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5439_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5439_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 159 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5440 for ECDH, tcId is 160 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5440_peerpubkey[] = { 0x34, 0x15, 0x92, 0x39, 0x0c, 0xcc, 0xe4, 0x85, 0xde, 0x88, 0x80, 0xf3, 0xd7, 0x27, 0xf6, 0x64, 0xc3, 0x81, 0x91, 0x4a, 0x1b, 0xec, 0xec, 0x38, 0x3b, 0x35, 0x58, 0x67, 0x51, 0xfc, 0x81, 0xc2, 0xad, 0xd7, 0x18, 0x52, 0xb8, 0x70, 0x16, 0xe1, 0x01, 0x9c, 0xae, 0x7a, 0x90, 0x80, 0xe7, 0x5c, 0xe0, 0xb0, 0xb8, 0xaa, 0xc1, 0x75, 0xd6, 0x92, 0xd5, 0xe7, 0xb4, 0xda, 0xd0, 0x88, 0xf5, 0xcc, }; static const unsigned char ecdh_secp256r1_5440_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5440_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5440_sharedsecret[] = { 0x4c, 0xe2, 0x70, 0x1b, 0x2b, 0xe6, 0x3a, 0x00, 0x83, 0xa4, 0xc5, 0x3f, 0x7a, 0x0b, 0xf0, 0x4c, 0xf8, 0x71, 0x65, 0x4f, 0x5e, 0xdb, 0x6f, 0x62, 0x5e, 0x3e, 0xa5, 0xe7, 0xd0, 0xbd, 0xcc, 0x90, }; static const wycheproof_ecdh_test ecdh_secp256r1_5440 = { .name = "ecdh_secp256r1_5440", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5440_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5440_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5440_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5440_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 160 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5441 for ECDH, tcId is 161 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5441_peerpubkey[] = { 0xfa, 0x76, 0x4b, 0x6b, 0x76, 0xa8, 0x6c, 0x3b, 0x76, 0x21, 0x20, 0x82, 0x5d, 0x35, 0x3a, 0x24, 0x76, 0x62, 0x08, 0xc1, 0xf5, 0xcc, 0x0f, 0xe3, 0xfe, 0x79, 0x98, 0x02, 0x6a, 0x2e, 0xc5, 0xc4, 0x3b, 0xb2, 0xf9, 0x48, 0xfd, 0x94, 0xcd, 0xaa, 0x58, 0x69, 0xb1, 0xe0, 0xe7, 0x3a, 0x4d, 0x97, 0x03, 0x5c, 0xc4, 0x93, 0x57, 0xfb, 0x7b, 0x74, 0xd7, 0xed, 0x0a, 0x2c, 0x5b, 0x8d, 0x54, 0xeb, }; static const unsigned char ecdh_secp256r1_5441_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5441_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5441_sharedsecret[] = { 0x7a, 0xbe, 0xf9, 0x76, 0x5c, 0xca, 0x72, 0x13, 0x20, 0xfb, 0xf8, 0xed, 0xcb, 0xef, 0x6d, 0x2b, 0xa2, 0x5d, 0x17, 0xb7, 0x0f, 0xfa, 0x17, 0x76, 0x02, 0x9b, 0xc3, 0x8f, 0xe6, 0x77, 0xa1, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5441 = { .name = "ecdh_secp256r1_5441", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5441_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5441_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5441_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5441_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 161 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5442 for ECDH, tcId is 162 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5442_peerpubkey[] = { 0xa7, 0x1f, 0xbb, 0x61, 0x71, 0x99, 0xbd, 0x58, 0x5b, 0x4b, 0x66, 0x21, 0x2c, 0xa3, 0x3c, 0xa9, 0xe0, 0x93, 0x70, 0xe6, 0xbf, 0x15, 0xc8, 0xea, 0x0a, 0xce, 0xfd, 0x9c, 0x8e, 0x94, 0x5d, 0x06, 0x84, 0x0f, 0x05, 0x88, 0x63, 0x07, 0x8e, 0x74, 0x3e, 0x22, 0x0f, 0xf9, 0x9f, 0x23, 0xbb, 0xc1, 0xda, 0xa3, 0x68, 0x35, 0xd4, 0xb1, 0x26, 0x9f, 0x0a, 0x75, 0x36, 0xe6, 0x3f, 0x06, 0xd8, 0x53, }; static const unsigned char ecdh_secp256r1_5442_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5442_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5442_sharedsecret[] = { 0x5f, 0x61, 0x40, 0x4d, 0xbb, 0xbc, 0x28, 0x67, 0xdf, 0xf9, 0x5c, 0x1f, 0x37, 0xed, 0x44, 0xf4, 0xcb, 0x8f, 0xab, 0xcd, 0x22, 0x3b, 0x03, 0x73, 0x9d, 0x88, 0x83, 0x08, 0xd1, 0x3b, 0xc4, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_5442 = { .name = "ecdh_secp256r1_5442", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5442_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5442_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5442_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5442_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 162 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5443 for ECDH, tcId is 163 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5443_peerpubkey[] = { 0x13, 0xc8, 0x29, 0x2d, 0x85, 0x4d, 0x39, 0x45, 0x1c, 0x0c, 0x63, 0xa8, 0x02, 0xb8, 0xc0, 0x3e, 0x4f, 0xcb, 0x87, 0x5e, 0xf0, 0x12, 0x39, 0x89, 0x62, 0x95, 0xba, 0x1c, 0x0f, 0x38, 0x69, 0x75, 0xf8, 0x2d, 0xf1, 0x97, 0x08, 0x6f, 0xd8, 0x60, 0x32, 0xcb, 0x36, 0xb6, 0x9a, 0x27, 0x87, 0x6d, 0xd7, 0x5a, 0x8e, 0x96, 0x79, 0xf3, 0x6f, 0xfc, 0x22, 0x10, 0xed, 0xb1, 0x28, 0xd4, 0xbe, 0x13, }; static const unsigned char ecdh_secp256r1_5443_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5443_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5443_sharedsecret[] = { 0x8d, 0x67, 0x3a, 0x57, 0x7e, 0x35, 0xbf, 0x9d, 0x5d, 0x00, 0x67, 0x6c, 0x08, 0xb2, 0xc7, 0x39, 0x61, 0x7c, 0x46, 0xa0, 0x52, 0x18, 0x84, 0x03, 0xaa, 0x06, 0xdc, 0x71, 0x4a, 0xf6, 0xac, 0xc1, }; static const wycheproof_ecdh_test ecdh_secp256r1_5443 = { .name = "ecdh_secp256r1_5443", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5443_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5443_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5443_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5443_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 163 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5444 for ECDH, tcId is 164 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5444_peerpubkey[] = { 0x0c, 0xd9, 0xdf, 0x41, 0x5a, 0xcc, 0x0c, 0x32, 0xfd, 0x4e, 0x3d, 0x69, 0x24, 0xce, 0x53, 0x07, 0x5b, 0x04, 0x52, 0xbf, 0x91, 0x9a, 0x2a, 0xb2, 0xeb, 0xe2, 0x65, 0x97, 0x57, 0x0f, 0x1e, 0xcd, 0x59, 0x85, 0xd8, 0xd2, 0xc5, 0xdf, 0x78, 0xfc, 0x10, 0x0f, 0x87, 0xef, 0xb6, 0xdf, 0xa9, 0x54, 0x37, 0x57, 0xbd, 0xff, 0xec, 0xf0, 0x83, 0xdf, 0xcd, 0x1e, 0xcb, 0x38, 0xde, 0x6c, 0x23, 0xf8, }; static const unsigned char ecdh_secp256r1_5444_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5444_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5444_sharedsecret[] = { 0xa7, 0x83, 0x5f, 0xfe, 0xe0, 0xf2, 0xa6, 0x9d, 0xfc, 0xf7, 0x0d, 0x4e, 0x79, 0x8d, 0xbe, 0x3e, 0xd3, 0x2b, 0xa0, 0x3c, 0xfd, 0xda, 0xe5, 0xdd, 0xd1, 0x1d, 0x8c, 0x0a, 0xc3, 0xd7, 0x4f, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp256r1_5444 = { .name = "ecdh_secp256r1_5444", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5444_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5444_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5444_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5444_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 164 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5445 for ECDH, tcId is 165 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5445_peerpubkey[] = { 0xd2, 0xdb, 0xea, 0x40, 0x46, 0xb2, 0x3f, 0xd2, 0xb2, 0x33, 0xd1, 0xce, 0x31, 0xdc, 0xed, 0xdb, 0x89, 0xb2, 0x5f, 0x26, 0xc0, 0x62, 0x7a, 0x9d, 0x2d, 0xb3, 0xc5, 0x60, 0x5c, 0x9c, 0xc9, 0x95, 0x35, 0xbd, 0xc8, 0xde, 0x74, 0x51, 0xc1, 0xe2, 0x7e, 0x97, 0xaa, 0x91, 0x40, 0x2c, 0xce, 0x38, 0x82, 0xc7, 0x12, 0x69, 0xd9, 0xcb, 0xdc, 0xb5, 0xd7, 0xac, 0x0c, 0xeb, 0x91, 0x1b, 0x9b, 0x6d, }; static const unsigned char ecdh_secp256r1_5445_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5445_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5445_sharedsecret[] = { 0xe9, 0x8e, 0xa2, 0x22, 0x09, 0xcd, 0x39, 0x7e, 0xdb, 0x6c, 0x31, 0x96, 0x48, 0xc1, 0xeb, 0x24, 0xbc, 0x4d, 0x39, 0x59, 0x8a, 0xb1, 0x19, 0x95, 0x57, 0x19, 0x26, 0x68, 0x4c, 0xe2, 0xce, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_5445 = { .name = "ecdh_secp256r1_5445", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5445_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5445_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5445_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5445_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 165 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5446 for ECDH, tcId is 166 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5446_peerpubkey[] = { 0x88, 0x8f, 0xb0, 0x44, 0xfb, 0x2b, 0x6c, 0xaa, 0x60, 0x36, 0x6b, 0xfa, 0x66, 0x2a, 0xdb, 0xa4, 0x79, 0xb8, 0x36, 0x5a, 0x65, 0x55, 0xa2, 0x98, 0x87, 0xd5, 0x80, 0xf5, 0x87, 0x08, 0x6b, 0xa8, 0x48, 0x2f, 0x4e, 0xc2, 0x40, 0x82, 0xa4, 0x8d, 0x64, 0x02, 0xaf, 0xa1, 0x62, 0x21, 0x43, 0xf2, 0x6e, 0x61, 0xd9, 0x1b, 0x7e, 0x30, 0xd6, 0xa4, 0xb2, 0x23, 0x63, 0x0e, 0xe1, 0x0f, 0x70, 0xfb, }; static const unsigned char ecdh_secp256r1_5446_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5446_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5446_sharedsecret[] = { 0x91, 0xb6, 0x57, 0x33, 0x86, 0x0b, 0x1b, 0xdb, 0x95, 0x41, 0xd9, 0xf5, 0x58, 0x95, 0xa3, 0xdb, 0xb3, 0xf1, 0x3c, 0x19, 0x92, 0x51, 0xd3, 0x30, 0x06, 0xb6, 0xdc, 0xf9, 0x0a, 0xc3, 0x49, 0xed, }; static const wycheproof_ecdh_test ecdh_secp256r1_5446 = { .name = "ecdh_secp256r1_5446", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5446_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5446_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5446_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5446_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 166 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5447 for ECDH, tcId is 167 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5447_peerpubkey[] = { 0x2e, 0x2b, 0xec, 0x13, 0x42, 0x49, 0x37, 0x9d, 0x57, 0x70, 0x03, 0x01, 0xf3, 0xa5, 0x8e, 0x4b, 0x39, 0x5a, 0x4d, 0x28, 0x37, 0x0d, 0x2a, 0x06, 0xe6, 0x5e, 0x7a, 0xc8, 0x9e, 0xd7, 0x6a, 0xc6, 0x97, 0xdc, 0x96, 0x0b, 0xd7, 0x95, 0xcd, 0xf4, 0xfb, 0xcf, 0xdd, 0x75, 0x14, 0x90, 0x57, 0xb8, 0xe0, 0x22, 0x33, 0x1c, 0x7b, 0x54, 0x61, 0xf3, 0x83, 0xac, 0x58, 0x9d, 0x76, 0x4d, 0xf3, 0x33, }; static const unsigned char ecdh_secp256r1_5447_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5447_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5447_sharedsecret[] = { 0x1f, 0xdf, 0x7c, 0x5c, 0x48, 0x04, 0x7a, 0x11, 0x3e, 0x5e, 0x5d, 0x1b, 0x7e, 0xd5, 0x93, 0x33, 0x7e, 0x76, 0x92, 0x31, 0xcc, 0xa5, 0xc7, 0x11, 0x01, 0x60, 0xe0, 0xc1, 0xb9, 0x7f, 0x42, 0x56, }; static const wycheproof_ecdh_test ecdh_secp256r1_5447 = { .name = "ecdh_secp256r1_5447", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5447_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5447_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5447_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5447_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 167 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5448 for ECDH, tcId is 168 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5448_peerpubkey[] = { 0xc7, 0x8c, 0xda, 0x7e, 0x3b, 0x9e, 0x17, 0x72, 0xeb, 0xed, 0x30, 0xb2, 0xb5, 0x1d, 0xcf, 0x15, 0x5a, 0x69, 0xa0, 0xfc, 0x50, 0x45, 0x57, 0x83, 0x6e, 0x25, 0x14, 0x7c, 0xfb, 0x81, 0x27, 0xd2, 0xf8, 0x28, 0x9c, 0xf3, 0x8b, 0x03, 0x3d, 0x37, 0x63, 0xc8, 0xf9, 0xf6, 0xc0, 0x91, 0x78, 0x7a, 0x31, 0x42, 0xfb, 0x83, 0xdf, 0xf5, 0x71, 0x95, 0x90, 0x28, 0x2c, 0x6f, 0x85, 0x2e, 0x01, 0x05, }; static const unsigned char ecdh_secp256r1_5448_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5448_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5448_sharedsecret[] = { 0xba, 0x0a, 0xbc, 0x3e, 0x71, 0x72, 0x6c, 0xb5, 0x13, 0x30, 0x48, 0x91, 0x76, 0x35, 0x7b, 0x81, 0xb8, 0x07, 0x4d, 0x76, 0x90, 0xe4, 0xe8, 0x2e, 0x9a, 0x3c, 0x00, 0x15, 0x1e, 0x1f, 0xa3, 0x18, }; static const wycheproof_ecdh_test ecdh_secp256r1_5448 = { .name = "ecdh_secp256r1_5448", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5448_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5448_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5448_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 168 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5449 for ECDH, tcId is 169 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5449_peerpubkey[] = { 0x1e, 0x3d, 0xf4, 0xdd, 0x7f, 0xb7, 0x71, 0x8c, 0xb0, 0xaa, 0x0d, 0xd7, 0x2f, 0x8a, 0x25, 0xc8, 0x3c, 0x4e, 0x80, 0x4e, 0x7c, 0xbd, 0x48, 0xc5, 0xe9, 0x65, 0x65, 0x1f, 0x9e, 0x23, 0xbf, 0x4e, 0xf0, 0xff, 0x40, 0xdd, 0x97, 0x96, 0xe4, 0xa9, 0xa5, 0xed, 0xdd, 0x2c, 0x4c, 0xa4, 0xeb, 0xd1, 0x09, 0x90, 0xd8, 0xfb, 0x89, 0x18, 0xd1, 0x2d, 0x53, 0xc7, 0x60, 0x01, 0xaf, 0xa9, 0xde, 0x7f, }; static const unsigned char ecdh_secp256r1_5449_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5449_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5449_sharedsecret[] = { 0x16, 0xe6, 0x32, 0xf9, 0x75, 0x2d, 0x36, 0x60, 0x2c, 0x95, 0xec, 0x27, 0x4b, 0x32, 0xad, 0x59, 0x4f, 0x39, 0xf6, 0xac, 0x3b, 0xd4, 0xb0, 0xb2, 0x0f, 0x86, 0x37, 0x39, 0x21, 0x42, 0xce, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256r1_5449 = { .name = "ecdh_secp256r1_5449", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5449_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5449_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5449_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5449_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 169 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5450 for ECDH, tcId is 170 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5450_peerpubkey[] = { 0xe5, 0xc5, 0xdc, 0x3f, 0xd8, 0x8d, 0x85, 0x66, 0x8b, 0x3b, 0x70, 0x9f, 0xd6, 0xb4, 0x23, 0x2f, 0x1f, 0x80, 0x94, 0x9c, 0xbc, 0xcb, 0x55, 0x88, 0x36, 0x3e, 0x6c, 0x21, 0x7a, 0x2b, 0x3e, 0xd8, 0x8d, 0xbd, 0x0d, 0x6e, 0x3c, 0xc9, 0x7f, 0x30, 0x81, 0xd1, 0x66, 0x02, 0xaa, 0x3d, 0x1b, 0x65, 0x5e, 0xe0, 0x79, 0x1c, 0x87, 0xfc, 0xb5, 0xab, 0xe6, 0x21, 0x7d, 0x8c, 0x85, 0x13, 0x80, 0x7e, }; static const unsigned char ecdh_secp256r1_5450_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5450_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5450_sharedsecret[] = { 0x9e, 0xed, 0x4b, 0x96, 0x56, 0x9f, 0x60, 0x4a, 0x4d, 0x3f, 0x5a, 0xf9, 0x74, 0x99, 0x80, 0x71, 0x11, 0xfc, 0x98, 0x88, 0xc4, 0x58, 0xec, 0xe2, 0xe3, 0x00, 0x0e, 0x24, 0x5c, 0x2c, 0x02, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp256r1_5450 = { .name = "ecdh_secp256r1_5450", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5450_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5450_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5450_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5450_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 170 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5451 for ECDH, tcId is 171 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5451_peerpubkey[] = { 0x02, 0x1c, 0x41, 0xec, 0xee, 0xc2, 0x4e, 0x0f, 0xba, 0x89, 0x4a, 0xd7, 0x41, 0x5a, 0x95, 0x98, 0xcb, 0xcd, 0x14, 0xfa, 0x6c, 0xa4, 0x6e, 0x25, 0x57, 0x52, 0x68, 0xa1, 0xd8, 0xe5, 0xbb, 0xc6, 0x3f, 0x84, 0x6c, 0x6a, 0x18, 0x5f, 0xa3, 0xf2, 0x3b, 0xb9, 0x2c, 0x14, 0xe7, 0xe2, 0xcb, 0xa8, 0xc7, 0x40, 0x47, 0xc0, 0x9a, 0xf7, 0x66, 0xf5, 0x5e, 0xf0, 0xc9, 0x07, 0xc8, 0x0d, 0x94, 0x51, }; static const unsigned char ecdh_secp256r1_5451_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5451_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5451_sharedsecret[] = { 0x21, 0xac, 0x32, 0x01, 0x38, 0x38, 0x81, 0x26, 0x21, 0xdb, 0xb5, 0x84, 0x96, 0x5b, 0xde, 0xd6, 0xfc, 0x85, 0x1d, 0x3a, 0x02, 0x98, 0x10, 0x67, 0x9b, 0xc5, 0x7b, 0x23, 0x81, 0xbb, 0x7a, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5451 = { .name = "ecdh_secp256r1_5451", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5451_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5451_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5451_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5451_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 171 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5452 for ECDH, tcId is 172 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5452_peerpubkey[] = { 0x8e, 0x24, 0x19, 0x2c, 0xd3, 0x33, 0x35, 0xa1, 0x14, 0xf5, 0x07, 0x02, 0x66, 0xc0, 0x14, 0xcb, 0x0d, 0x8c, 0x70, 0x4d, 0x16, 0xd6, 0x04, 0x2e, 0x89, 0xc1, 0x75, 0x97, 0xbc, 0xd4, 0xe7, 0x7e, 0xbd, 0xb4, 0xc5, 0x17, 0x17, 0x04, 0xc2, 0xc0, 0x92, 0x75, 0xc2, 0x2a, 0x31, 0x0e, 0x0c, 0x4f, 0xe0, 0x92, 0xe4, 0x08, 0x48, 0x56, 0xda, 0x99, 0xb9, 0x4a, 0xbb, 0xfa, 0x9f, 0x46, 0x9f, 0x48, }; static const unsigned char ecdh_secp256r1_5452_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5452_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5452_sharedsecret[] = { 0xfc, 0x59, 0x78, 0xda, 0x01, 0xca, 0x83, 0xe1, 0x27, 0xdd, 0xdf, 0x98, 0x9a, 0x03, 0x58, 0x87, 0x1b, 0x3c, 0x4c, 0xe0, 0x75, 0x5b, 0xfb, 0x02, 0x06, 0x33, 0xdb, 0x46, 0x7e, 0x21, 0xa5, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5452 = { .name = "ecdh_secp256r1_5452", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5452_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5452_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5452_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5452_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 172 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5453 for ECDH, tcId is 173 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5453_peerpubkey[] = { 0x31, 0xc9, 0x0a, 0xe4, 0x7a, 0x93, 0xd0, 0x9a, 0x23, 0x52, 0xb6, 0xf3, 0x67, 0x7e, 0x79, 0x75, 0xea, 0x62, 0xaa, 0xde, 0xdb, 0x56, 0xc1, 0x18, 0xeb, 0x8b, 0x9f, 0x77, 0x1e, 0x2d, 0xd9, 0xf5, 0xf2, 0x60, 0x1f, 0xb9, 0xcc, 0xa2, 0x30, 0x4e, 0x59, 0x44, 0x23, 0xcf, 0x48, 0x06, 0x4d, 0xbe, 0xd1, 0x7a, 0xe4, 0x04, 0x52, 0xf1, 0x8b, 0xe6, 0xae, 0x01, 0x83, 0x21, 0x91, 0x1e, 0x8c, 0xb3, }; static const unsigned char ecdh_secp256r1_5453_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5453_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5453_sharedsecret[] = { 0x9f, 0x41, 0x73, 0x41, 0x26, 0x1a, 0xa4, 0x5d, 0x39, 0x6b, 0x0c, 0xcf, 0x2a, 0x3d, 0xee, 0x7a, 0x46, 0x6c, 0xa4, 0x7e, 0x3c, 0xe8, 0x6e, 0xcd, 0x20, 0x71, 0xd9, 0xc4, 0xdb, 0x08, 0x82, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256r1_5453 = { .name = "ecdh_secp256r1_5453", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5453_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5453_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5453_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 173 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5454 for ECDH, tcId is 174 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5454_peerpubkey[] = { 0xd2, 0xf2, 0x11, 0xcf, 0xab, 0x84, 0xe0, 0x1c, 0x8e, 0x55, 0x44, 0x03, 0x62, 0x34, 0xde, 0xbe, 0x35, 0xae, 0x10, 0x3b, 0xb8, 0x78, 0xd7, 0xab, 0xce, 0xa6, 0x82, 0x5f, 0x75, 0x3e, 0x03, 0xa3, 0x85, 0xf7, 0xf1, 0x87, 0x0e, 0x64, 0xf1, 0x26, 0x2a, 0xf6, 0x7a, 0x25, 0xef, 0x98, 0x80, 0x41, 0x9f, 0x45, 0x60, 0x8e, 0x7f, 0x9d, 0xa6, 0xde, 0xe8, 0x3f, 0x5f, 0x46, 0xce, 0xb5, 0x3d, 0xcb, }; static const unsigned char ecdh_secp256r1_5454_ourpubkey[] = { 0x04, 0x68, 0xae, 0x77, 0x06, 0x22, 0x1e, 0x59, 0x90, 0xf7, 0x48, 0x4d, 0x34, 0xfb, 0xec, 0x5a, 0x99, 0x05, 0x01, 0x79, 0xa6, 0xc1, 0x18, 0x17, 0xbb, 0xed, 0x4a, 0xed, 0x96, 0x29, 0x98, 0xff, 0xb5, 0x22, 0x8d, 0x89, 0xa1, 0xb4, 0x48, 0xf1, 0x23, 0x32, 0x37, 0x6c, 0x8c, 0x7f, 0x08, 0x07, 0x63, 0x53, 0x2a, 0x05, 0x5e, 0x07, 0xf1, 0x4a, 0x5d, 0xe0, 0xdc, 0x30, 0x10, 0x45, 0x79, 0xe1, }; static const unsigned char ecdh_secp256r1_5454_privkey[] = { 0x80, 0x9c, 0x46, 0x1d, 0x8b, 0x39, 0x16, 0x35, 0x37, 0xff, 0x8f, 0x5e, 0xf5, 0xb9, 0x77, 0xe4, 0xcd, 0xb9, 0x80, 0xe7, 0x0e, 0x38, 0xa7, 0xee, 0x0b, 0x37, 0xcc, 0x87, 0x67, 0x29, 0xe9, 0xff, }; static const unsigned char ecdh_secp256r1_5454_sharedsecret[] = { 0xf4, 0x19, 0xfe, 0xbb, 0x32, 0xc2, 0x54, 0x61, 0x1a, 0xdf, 0x56, 0x9c, 0x2d, 0x58, 0x3b, 0x17, 0x54, 0x2b, 0x15, 0x38, 0xca, 0xa0, 0x00, 0x19, 0x67, 0xf0, 0xa4, 0xbc, 0x34, 0xb8, 0xb7, 0x89, }; static const wycheproof_ecdh_test ecdh_secp256r1_5454 = { .name = "ecdh_secp256r1_5454", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5454_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5454_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5454_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 174 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5455 for ECDH, tcId is 175 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5455_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5455_ourpubkey[] = { 0x5e, 0xcb, 0xe4, 0xd1, 0xa6, 0x33, 0x0a, 0x44, 0xc8, 0xf7, 0xef, 0x95, 0x1d, 0x4b, 0xf1, 0x65, 0xe6, 0xc6, 0xb7, 0x21, 0xef, 0xad, 0xa9, 0x85, 0xfb, 0x41, 0x66, 0x1b, 0xc6, 0xe7, 0xfd, 0x6c, 0x87, 0x34, 0x64, 0x0c, 0x49, 0x98, 0xff, 0x7e, 0x37, 0x4b, 0x06, 0xce, 0x1a, 0x64, 0xa2, 0xec, 0xd8, 0x2a, 0xb0, 0x36, 0x38, 0x4f, 0xb8, 0x3d, 0x9a, 0x79, 0xb1, 0x27, 0xa2, 0x7d, 0x50, 0x32, }; static const unsigned char ecdh_secp256r1_5455_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256r1_5455_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_5455 = { .name = "ecdh_secp256r1_5455", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5455_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5455_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5455_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 175 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5456 for ECDH, tcId is 176 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5456_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5456_ourpubkey[] = { 0x69, 0xc0, 0xe7, 0x67, 0xf9, 0xbe, 0xaa, 0xbf, 0xdb, 0xcd, 0xf3, 0x04, 0xa0, 0xec, 0x68, 0xb5, 0xf6, 0xd6, 0x71, 0x03, 0xcf, 0x37, 0x58, 0x9f, 0xd8, 0x46, 0xda, 0x1a, 0x1d, 0xd4, 0x47, 0xb3, 0xc5, 0x17, 0x41, 0x6e, 0x45, 0x01, 0x44, 0x63, 0xfc, 0x9c, 0xf1, 0xc4, 0x04, 0x7d, 0x02, 0xac, 0xe4, 0x5d, 0xa4, 0x73, 0x91, 0x6a, 0xa5, 0x1d, 0x7b, 0x2d, 0xc3, 0xd0, 0x80, 0x33, 0x45, 0x2b, }; static const unsigned char ecdh_secp256r1_5456_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5456_sharedsecret[] = { 0xa3, 0x29, 0xa7, 0xd8, 0x04, 0x24, 0xea, 0x2d, 0x6c, 0x90, 0x43, 0x93, 0x80, 0x8e, 0x51, 0x0d, 0xfb, 0xb2, 0x81, 0x55, 0x09, 0x2f, 0x1b, 0xac, 0x28, 0x4d, 0xce, 0xda, 0x1f, 0x13, 0xaf, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5456 = { .name = "ecdh_secp256r1_5456", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5456_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5456_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5456_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5456_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 176 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5457 for ECDH, tcId is 177 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5457_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5457_ourpubkey[] = { 0x9b, 0xbf, 0x06, 0xda, 0xd9, 0xab, 0x59, 0x05, 0xe0, 0x54, 0x71, 0xce, 0x16, 0xd5, 0x22, 0x2c, 0x89, 0xc2, 0xca, 0xa3, 0x9f, 0x26, 0x26, 0x7a, 0xc0, 0x74, 0x71, 0x29, 0x88, 0x5f, 0xbd, 0x44, 0x1b, 0xcc, 0x7f, 0xa8, 0x4d, 0xe1, 0x20, 0xa3, 0x67, 0x55, 0xda, 0xf3, 0x0a, 0x6f, 0x47, 0xe8, 0xc0, 0xd4, 0xbd, 0xdc, 0x15, 0x03, 0x6e, 0xd2, 0xa3, 0x44, 0x7d, 0xfa, 0x7a, 0x1d, 0x3e, 0x88, }; static const unsigned char ecdh_secp256r1_5457_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5457_sharedsecret[] = { 0xbd, 0x26, 0xd0, 0x29, 0x3e, 0x88, 0x51, 0xc5, 0x1e, 0xbe, 0x0d, 0x42, 0x63, 0x45, 0x68, 0x3a, 0xe9, 0x40, 0x26, 0xac, 0xa5, 0x45, 0x28, 0x2a, 0x47, 0x59, 0xfa, 0xa8, 0x5f, 0xde, 0x66, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256r1_5457 = { .name = "ecdh_secp256r1_5457", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5457_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5457_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5457_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5457_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 177 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5458 for ECDH, tcId is 178 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5458_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5458_ourpubkey[] = { 0xc1, 0xd1, 0x72, 0x69, 0xe4, 0x6e, 0x38, 0x7a, 0xcb, 0xe2, 0x99, 0xec, 0x2c, 0xc9, 0xcc, 0x2d, 0xad, 0xa3, 0xf0, 0x5e, 0x4c, 0xf4, 0x12, 0xf2, 0xad, 0x94, 0x6b, 0x70, 0x0a, 0xa2, 0x61, 0x3a, 0xed, 0xb7, 0x74, 0x4f, 0x37, 0x0c, 0x13, 0xa4, 0xf4, 0x99, 0x57, 0xd5, 0x4f, 0xf7, 0x98, 0x11, 0x9d, 0x11, 0x1f, 0x69, 0x12, 0x9c, 0x24, 0xdb, 0x5f, 0x5f, 0xb8, 0x41, 0x62, 0x90, 0x9d, 0xbb, }; static const unsigned char ecdh_secp256r1_5458_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5458_sharedsecret[] = { 0xea, 0x93, 0x50, 0xb2, 0x49, 0x0a, 0x20, 0x10, 0xc7, 0xab, 0xf4, 0x3f, 0xb1, 0xa3, 0x8b, 0xe7, 0x29, 0xa2, 0xde, 0x37, 0x5e, 0xa7, 0xa6, 0xac, 0x34, 0xff, 0x58, 0xcc, 0x87, 0xe5, 0x1b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5458 = { .name = "ecdh_secp256r1_5458", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5458_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5458_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5458_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5458_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 178 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5459 for ECDH, tcId is 179 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5459_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5459_ourpubkey[] = { 0x77, 0xb2, 0x0a, 0x91, 0x2e, 0x6b, 0x23, 0x13, 0x50, 0x66, 0xe9, 0x11, 0x89, 0x15, 0x24, 0xbc, 0x4e, 0xfe, 0x35, 0x60, 0xe3, 0xe9, 0x23, 0x50, 0xb5, 0x2d, 0xec, 0x8f, 0x37, 0x5f, 0x2b, 0x54, 0xa3, 0xdc, 0x29, 0x18, 0x25, 0xce, 0xa3, 0xf7, 0xf7, 0xb1, 0x0b, 0xfc, 0xdd, 0x03, 0x8a, 0x72, 0xdf, 0x62, 0x3d, 0xa1, 0xe8, 0x50, 0xe0, 0xf1, 0xca, 0xa8, 0x01, 0xfc, 0xd6, 0xcc, 0x67, 0xff, }; static const unsigned char ecdh_secp256r1_5459_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5459_sharedsecret[] = { 0x34, 0xee, 0xd3, 0xf6, 0x67, 0x3d, 0x34, 0x0b, 0x6f, 0x71, 0x69, 0x13, 0xf6, 0xdf, 0xa3, 0x6b, 0x5a, 0xc8, 0x5f, 0xa6, 0x67, 0x79, 0x1e, 0x2d, 0x6a, 0x21, 0x7b, 0x0c, 0x0b, 0x7b, 0xa8, 0x07, }; static const wycheproof_ecdh_test ecdh_secp256r1_5459 = { .name = "ecdh_secp256r1_5459", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5459_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5459_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5459_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 179 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5460 for ECDH, tcId is 180 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5460_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5460_ourpubkey[] = { 0x0f, 0xa8, 0x22, 0xbc, 0x28, 0x11, 0xaa, 0xa5, 0x84, 0x92, 0x59, 0x2e, 0x32, 0x6e, 0x25, 0xde, 0x29, 0x49, 0x3b, 0xaa, 0xad, 0x65, 0x1f, 0x7e, 0x90, 0xe7, 0x5c, 0xb4, 0x8e, 0x14, 0xdb, 0x63, 0x40, 0x0b, 0xb5, 0x16, 0x0a, 0x24, 0x57, 0xf3, 0x90, 0xb5, 0x2b, 0x43, 0x4c, 0x20, 0xe7, 0x74, 0xcb, 0x4e, 0x59, 0xb0, 0xaf, 0x01, 0x7d, 0x0a, 0x1b, 0xee, 0xdb, 0xab, 0xa0, 0xb9, 0xd1, 0x18, }; static const unsigned char ecdh_secp256r1_5460_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x83, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_5460_sharedsecret[] = { 0x13, 0x54, 0xce, 0x66, 0x92, 0xc9, 0xdf, 0x7b, 0x6f, 0xc3, 0x11, 0x9d, 0x47, 0xc5, 0x63, 0x38, 0xaf, 0xbe, 0xdc, 0xcb, 0x62, 0xfa, 0xa5, 0x46, 0xc0, 0xfe, 0x6e, 0xd4, 0x95, 0x9e, 0x41, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5460 = { .name = "ecdh_secp256r1_5460", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5460_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5460_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5460_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5460_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 180 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5461 for ECDH, tcId is 181 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5461_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5461_ourpubkey[] = { 0x54, 0xcc, 0xc9, 0x41, 0x50, 0x26, 0xd7, 0x3f, 0x20, 0xa8, 0x45, 0xb7, 0x2a, 0x58, 0xe5, 0xb1, 0x8b, 0xd2, 0x7f, 0x19, 0x85, 0x42, 0xa0, 0xbe, 0xee, 0xa6, 0xbc, 0x92, 0x07, 0x1e, 0x5c, 0x83, 0xe3, 0xbc, 0xc0, 0xb9, 0x4b, 0xae, 0xba, 0xce, 0xc5, 0x70, 0x78, 0xea, 0x25, 0x2d, 0x40, 0xdd, 0x6d, 0x61, 0xf4, 0x34, 0xa2, 0x71, 0x1b, 0x69, 0x30, 0x2f, 0x71, 0x08, 0xeb, 0xf6, 0xe9, 0x5e, }; static const unsigned char ecdh_secp256r1_5461_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xa9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_5461_sharedsecret[] = { 0xfe, 0x74, 0x96, 0xc3, 0x0d, 0x53, 0x49, 0x95, 0xf0, 0xbf, 0x42, 0x8b, 0x54, 0x71, 0xc2, 0x15, 0x85, 0xaa, 0xaf, 0xc8, 0x17, 0x33, 0x91, 0x6f, 0x01, 0x65, 0x59, 0x7a, 0x55, 0xd1, 0x2c, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp256r1_5461 = { .name = "ecdh_secp256r1_5461", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5461_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5461_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5461_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5461_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 181 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5462 for ECDH, tcId is 182 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5462_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5462_ourpubkey[] = { 0xc9, 0x0e, 0x30, 0x08, 0x39, 0xdd, 0x58, 0x95, 0x1e, 0x80, 0x95, 0x70, 0x63, 0x15, 0x44, 0x03, 0xcb, 0x4e, 0x66, 0x44, 0xc7, 0x74, 0x36, 0x48, 0x13, 0xd0, 0x0c, 0x24, 0x8f, 0xa8, 0xee, 0x41, 0x9d, 0x0a, 0xfb, 0xe7, 0x92, 0xe6, 0x18, 0xc4, 0x63, 0xf8, 0xef, 0x39, 0xac, 0x7b, 0xfc, 0x9d, 0xaf, 0xba, 0xac, 0xb9, 0xe8, 0x53, 0x32, 0x91, 0xb8, 0x59, 0xc9, 0x98, 0x3c, 0x28, 0x3e, 0x51, }; static const unsigned char ecdh_secp256r1_5462_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb1, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_5462_sharedsecret[] = { 0x34, 0x8b, 0xf8, 0x04, 0x2e, 0x4e, 0xdf, 0x1d, 0x03, 0xc8, 0xb3, 0x6a, 0xb8, 0x15, 0x15, 0x6e, 0x77, 0xc2, 0x01, 0xb7, 0x64, 0xed, 0x45, 0x62, 0xcf, 0xe2, 0xee, 0x90, 0x63, 0x8f, 0xfe, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256r1_5462 = { .name = "ecdh_secp256r1_5462", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5462_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5462_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5462_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5462_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 182 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5463 for ECDH, tcId is 183 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5463_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5463_ourpubkey[] = { 0x7f, 0xe3, 0x6b, 0x40, 0xaf, 0x22, 0xaf, 0x89, 0x21, 0x65, 0x6b, 0x32, 0x26, 0x2c, 0x71, 0xda, 0x1a, 0xb9, 0x19, 0x36, 0x5c, 0x65, 0xdf, 0xb6, 0x3a, 0x5a, 0x9e, 0x22, 0x18, 0x5a, 0x59, 0x43, 0x19, 0x68, 0x2b, 0xa6, 0xda, 0x49, 0xc9, 0xdc, 0x60, 0xf6, 0x0b, 0xfb, 0xf8, 0x23, 0x59, 0x0e, 0x8b, 0x4c, 0x2a, 0x7a, 0x84, 0x75, 0x0d, 0xed, 0x2a, 0xf2, 0xea, 0xd3, 0x96, 0x63, 0x5e, 0xfe, }; static const unsigned char ecdh_secp256r1_5463_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc1, 0xfc, 0x63, 0x25, 0x51, }; static const unsigned char ecdh_secp256r1_5463_sharedsecret[] = { 0x6e, 0x4e, 0xc5, 0x47, 0x9a, 0x7c, 0x20, 0xa5, 0x37, 0x50, 0x17, 0x00, 0x48, 0x4f, 0x6f, 0x43, 0x3a, 0x8a, 0x8f, 0xe5, 0x3c, 0x28, 0x8f, 0x7a, 0x25, 0xc8, 0xe8, 0xc9, 0x2d, 0x39, 0xe8, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256r1_5463 = { .name = "ecdh_secp256r1_5463", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5463_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5463_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5463_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5463_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 183 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5464 for ECDH, tcId is 184 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5464_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5464_ourpubkey[] = { 0x80, 0xd1, 0x99, 0x7e, 0xbd, 0xbe, 0x8e, 0x54, 0xe0, 0x55, 0x96, 0x19, 0x6c, 0x7a, 0x95, 0xec, 0x3a, 0x53, 0xe2, 0x67, 0xba, 0x2a, 0x24, 0x71, 0x99, 0x60, 0xaa, 0x57, 0x7e, 0x61, 0x50, 0xe4, 0x0c, 0x69, 0x6b, 0x01, 0x47, 0xdb, 0x06, 0x59, 0x5b, 0x27, 0x28, 0x4a, 0x0c, 0x16, 0x52, 0x4c, 0x01, 0x11, 0xe9, 0x8d, 0x4a, 0x46, 0x58, 0xa5, 0xab, 0xb9, 0x38, 0xe7, 0x7d, 0x57, 0x82, 0xed, }; static const unsigned char ecdh_secp256r1_5464_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x24, 0xf3, }; static const unsigned char ecdh_secp256r1_5464_sharedsecret[] = { 0xf7, 0x40, 0x7d, 0x61, 0xfd, 0xf5, 0x81, 0xbe, 0x4f, 0x56, 0x46, 0x21, 0xd5, 0x90, 0xca, 0x9b, 0x7b, 0xa3, 0x7f, 0x31, 0x39, 0x61, 0x50, 0xf9, 0x92, 0x2f, 0x15, 0x01, 0xda, 0x8c, 0x83, 0xef, }; static const wycheproof_ecdh_test ecdh_secp256r1_5464 = { .name = "ecdh_secp256r1_5464", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5464_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5464_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5464_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5464_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 184 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5465 for ECDH, tcId is 185 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5465_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5465_ourpubkey[] = { 0x40, 0x9f, 0x8d, 0xa2, 0x1a, 0xea, 0x23, 0x6a, 0x5f, 0x5a, 0x19, 0x04, 0xd0, 0x31, 0x0c, 0x1c, 0x61, 0x92, 0xa6, 0x7d, 0x0d, 0xa0, 0x89, 0x36, 0x31, 0x98, 0x69, 0xa8, 0xad, 0x08, 0x38, 0xa3, 0x8f, 0x23, 0x08, 0x4d, 0x30, 0xff, 0x71, 0xa9, 0xf1, 0xd9, 0x18, 0xd4, 0x2c, 0x42, 0xbf, 0x08, 0xc1, 0x66, 0x5f, 0x14, 0xe9, 0xd5, 0x98, 0x6c, 0x1e, 0x9c, 0x2d, 0x38, 0xd5, 0xe1, 0x70, 0xa5, }; static const unsigned char ecdh_secp256r1_5465_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x33, }; static const unsigned char ecdh_secp256r1_5465_sharedsecret[] = { 0x82, 0x23, 0x6f, 0xd2, 0x72, 0x20, 0x86, 0x93, 0xe0, 0x57, 0x45, 0x55, 0xca, 0x46, 0x5c, 0x6c, 0xc5, 0x12, 0x16, 0x34, 0x86, 0x08, 0x4f, 0xa5, 0x7f, 0x5e, 0x1b, 0xd2, 0xe2, 0xcc, 0xc0, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5465 = { .name = "ecdh_secp256r1_5465", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5465_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5465_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5465_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5465_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 185 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5466 for ECDH, tcId is 186 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5466_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5466_ourpubkey[] = { 0x54, 0xe7, 0x7a, 0x00, 0x1c, 0x38, 0x62, 0xb9, 0x7a, 0x76, 0x64, 0x7f, 0x43, 0x36, 0xdf, 0x3c, 0xf1, 0x26, 0xac, 0xbe, 0x7a, 0x06, 0x9c, 0x5e, 0x57, 0x09, 0x27, 0x73, 0x24, 0xd2, 0x92, 0x0b, 0x0a, 0x66, 0x0e, 0x43, 0xd6, 0x0b, 0xce, 0x8b, 0xbd, 0xed, 0xe0, 0x73, 0xfa, 0x5d, 0x18, 0x3c, 0x8e, 0x8e, 0x15, 0x89, 0x8c, 0xaf, 0x6f, 0xf7, 0xe4, 0x58, 0x37, 0xd0, 0x9f, 0x2f, 0x4c, 0x8a, }; static const unsigned char ecdh_secp256r1_5466_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x43, }; static const unsigned char ecdh_secp256r1_5466_sharedsecret[] = { 0x06, 0x53, 0x71, 0x49, 0x66, 0x4d, 0xba, 0x1a, 0x99, 0x24, 0x65, 0x4c, 0xb7, 0xf7, 0x87, 0xed, 0x22, 0x48, 0x51, 0xb0, 0xdf, 0x25, 0xef, 0x53, 0xfc, 0xf5, 0x4f, 0x8f, 0x26, 0xcd, 0x5f, 0x3f, }; static const wycheproof_ecdh_test ecdh_secp256r1_5466 = { .name = "ecdh_secp256r1_5466", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5466_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5466_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5466_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5466_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 186 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5467 for ECDH, tcId is 187 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5467_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5467_ourpubkey[] = { 0xb0, 0x1a, 0x17, 0x2a, 0x76, 0xa4, 0x60, 0x2c, 0x92, 0xd3, 0x24, 0x2c, 0xb8, 0x97, 0xdd, 0xe3, 0x02, 0x4c, 0x74, 0x0d, 0xeb, 0xb2, 0x15, 0xb4, 0xc6, 0xb0, 0xaa, 0xe9, 0x3c, 0x22, 0x91, 0xa9, 0x17, 0xa3, 0xef, 0x8a, 0xcd, 0xc8, 0x25, 0x2b, 0x90, 0x13, 0xf1, 0xd2, 0x04, 0x58, 0xfc, 0x86, 0xe3, 0xff, 0x08, 0x90, 0xe3, 0x81, 0xe9, 0x42, 0x02, 0x83, 0xb7, 0xac, 0x70, 0x38, 0x80, 0x1d, }; static const unsigned char ecdh_secp256r1_5467_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4b, }; static const unsigned char ecdh_secp256r1_5467_sharedsecret[] = { 0xf2, 0xb3, 0x85, 0x39, 0xbc, 0xe9, 0x95, 0xd4, 0x43, 0xc7, 0xbf, 0xee, 0xef, 0xad, 0xc9, 0xe4, 0x2c, 0xc2, 0xc8, 0x9c, 0x60, 0xbf, 0x4e, 0x86, 0xea, 0xc9, 0x5d, 0x51, 0x98, 0x7b, 0xd1, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256r1_5467 = { .name = "ecdh_secp256r1_5467", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5467_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5467_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5467_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5467_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 187 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5468 for ECDH, tcId is 188 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5468_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5468_ourpubkey[] = { 0x5e, 0xcb, 0xe4, 0xd1, 0xa6, 0x33, 0x0a, 0x44, 0xc8, 0xf7, 0xef, 0x95, 0x1d, 0x4b, 0xf1, 0x65, 0xe6, 0xc6, 0xb7, 0x21, 0xef, 0xad, 0xa9, 0x85, 0xfb, 0x41, 0x66, 0x1b, 0xc6, 0xe7, 0xfd, 0x6c, 0x78, 0xcb, 0x9b, 0xf2, 0xb6, 0x67, 0x00, 0x82, 0xc8, 0xb4, 0xf9, 0x31, 0xe5, 0x9b, 0x5d, 0x13, 0x27, 0xd5, 0x4f, 0xca, 0xc7, 0xb0, 0x47, 0xc2, 0x65, 0x86, 0x4e, 0xd8, 0x5d, 0x82, 0xaf, 0xcd, }; static const unsigned char ecdh_secp256r1_5468_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4e, }; static const unsigned char ecdh_secp256r1_5468_sharedsecret[] = { 0x85, 0xa0, 0xb5, 0x85, 0x19, 0xb2, 0x8e, 0x70, 0xa6, 0x94, 0xec, 0x51, 0x98, 0xf7, 0x2c, 0x4b, 0xfd, 0xab, 0xaa, 0x30, 0xa7, 0x0f, 0x71, 0x43, 0xb5, 0xb1, 0xcd, 0x75, 0x36, 0xf7, 0x16, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256r1_5468 = { .name = "ecdh_secp256r1_5468", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5468_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5468_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5468_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5468_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 188 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5469 for ECDH, tcId is 189 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5469_peerpubkey[] = { 0x31, 0x02, 0x8f, 0x33, 0x77, 0xfc, 0x8f, 0x2b, 0x19, 0x67, 0xed, 0xaa, 0xb9, 0x02, 0x13, 0xac, 0xad, 0x0d, 0xa9, 0xf5, 0x08, 0x97, 0xf0, 0x8f, 0x57, 0x53, 0x7f, 0x78, 0xf1, 0x16, 0x74, 0x47, 0x43, 0xa1, 0x93, 0x01, 0x89, 0x36, 0x3b, 0xbd, 0xe2, 0xac, 0x4c, 0xbd, 0x16, 0x49, 0xcd, 0xc6, 0xf4, 0x51, 0xad, 0xd7, 0x1d, 0xd2, 0xf1, 0x6a, 0x8a, 0x86, 0x7f, 0x2b, 0x17, 0xca, 0xa1, 0x6b, }; static const unsigned char ecdh_secp256r1_5469_ourpubkey[] = { 0x7c, 0xf2, 0x7b, 0x18, 0x8d, 0x03, 0x4f, 0x7e, 0x8a, 0x52, 0x38, 0x03, 0x04, 0xb5, 0x1a, 0xc3, 0xc0, 0x89, 0x69, 0xe2, 0x77, 0xf2, 0x1b, 0x35, 0xa6, 0x0b, 0x48, 0xfc, 0x47, 0x66, 0x99, 0x78, 0xf8, 0x88, 0xaa, 0xee, 0x24, 0x71, 0x2f, 0xc0, 0xd6, 0xc2, 0x65, 0x39, 0x60, 0x8b, 0xcf, 0x24, 0x45, 0x82, 0x52, 0x1a, 0xc3, 0x16, 0x7d, 0xd6, 0x61, 0xfb, 0x48, 0x62, 0xdd, 0x87, 0x8c, 0x2e, }; static const unsigned char ecdh_secp256r1_5469_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0xe6, 0xfa, 0xad, 0xa7, 0x17, 0x9e, 0x84, 0xf3, 0xb9, 0xca, 0xc2, 0xfc, 0x63, 0x25, 0x4f, }; static const unsigned char ecdh_secp256r1_5469_sharedsecret[] = { 0x02, 0x7b, 0x01, 0x3a, 0x6f, 0x16, 0x6d, 0xb6, 0x55, 0xd6, 0x9d, 0x64, 0x3c, 0x12, 0x7e, 0xf8, 0xac, 0xe1, 0x75, 0x31, 0x1e, 0x66, 0x7d, 0xff, 0x25, 0x20, 0xf5, 0xb5, 0xc7, 0x5b, 0x76, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256r1_5469 = { .name = "ecdh_secp256r1_5469", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5469_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5469_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5469_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 189 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5470 for ECDH, tcId is 190 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5470_peerpubkey[] = { 0x02, 0x38, 0x19, 0x81, 0x3a, 0xc9, 0x69, 0x84, 0x70, 0x59, 0x02, 0x8e, 0xa8, 0x8a, 0x1f, 0x30, 0xdf, 0xbc, 0xde, 0x03, 0xfc, 0x79, 0x1d, 0x3a, 0x25, 0x2c, 0x6b, 0x41, 0x21, 0x18, 0x82, 0xea, 0xf9, 0x3e, 0x4a, 0xe4, 0x33, 0xcc, 0x12, 0xcf, 0x2a, 0x43, 0xfc, 0x0e, 0xf2, 0x64, 0x00, 0xc0, 0xe1, 0x25, 0x50, 0x82, 0x24, 0xcd, 0xb6, 0x49, 0x38, 0x0f, 0x25, 0x47, 0x91, 0x48, 0xa4, 0xad, }; static const unsigned char ecdh_secp256r1_5470_ourpubkey[] = { 0x1c, 0x00, 0x7c, 0xee, 0xcf, 0x21, 0x56, 0x08, 0x67, 0x7a, 0x28, 0x7f, 0x8e, 0x70, 0xba, 0x6e, 0xd5, 0xc0, 0x46, 0x58, 0x44, 0xbd, 0x88, 0xc9, 0xe3, 0x51, 0x71, 0x31, 0x2f, 0x34, 0x68, 0xa6, 0x0e, 0x0b, 0xb1, 0x9e, 0x53, 0x3e, 0xb4, 0xc1, 0x16, 0x2b, 0xda, 0xaf, 0xcb, 0x05, 0x34, 0x83, 0xb1, 0xc0, 0x75, 0x9f, 0x8c, 0xe0, 0x36, 0x0f, 0xc3, 0xc8, 0x8c, 0xd0, 0x7d, 0x50, 0xea, 0xb9, }; static const unsigned char ecdh_secp256r1_5470_privkey[] = { 0x2a, 0x26, 0x5f, 0x8b, 0xcb, 0xdc, 0xaf, 0x94, 0xd5, 0x85, 0x19, 0x14, 0x1e, 0x57, 0x81, 0x24, 0xcb, 0x40, 0xd6, 0x4a, 0x50, 0x1f, 0xba, 0x9c, 0x11, 0x84, 0x7b, 0x28, 0x96, 0x5b, 0xc7, 0x37, }; static const unsigned char ecdh_secp256r1_5470_sharedsecret[] = { 0x4d, 0x4d, 0xe8, 0x0f, 0x15, 0x34, 0x85, 0x0d, 0x26, 0x10, 0x75, 0x99, 0x7e, 0x30, 0x49, 0x32, 0x1a, 0x08, 0x64, 0x08, 0x2d, 0x24, 0xa9, 0x17, 0x86, 0x33, 0x66, 0xc0, 0x72, 0x4f, 0x5a, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256r1_5470 = { .name = "ecdh_secp256r1_5470", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5470_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5470_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5470_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 190 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5471 for ECDH, tcId is 191 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5471_peerpubkey[] = { 0xcc, 0x11, 0x88, 0x7b, 0x2d, 0x66, 0xcb, 0xae, 0x8f, 0x4d, 0x30, 0x66, 0x27, 0x19, 0x25, 0x22, 0x93, 0x21, 0x46, 0xb4, 0x2f, 0x01, 0xd3, 0xc6, 0xf9, 0x2b, 0xd5, 0xc8, 0xba, 0x73, 0x9b, 0x06, 0xa2, 0xf0, 0x8a, 0x02, 0x9c, 0xd0, 0x6b, 0x46, 0x18, 0x30, 0x85, 0xba, 0xe9, 0x24, 0x8b, 0x0e, 0xd1, 0x5b, 0x70, 0x28, 0x0c, 0x7e, 0xf1, 0x3a, 0x45, 0x7f, 0x5a, 0xf3, 0x82, 0x42, 0x60, 0x31, }; static const unsigned char ecdh_secp256r1_5471_ourpubkey[] = { 0x5a, 0x06, 0x2b, 0x0b, 0x18, 0x92, 0x13, 0x17, 0xaf, 0xfb, 0xb3, 0xd4, 0x2c, 0x3d, 0xbf, 0xca, 0xb2, 0x96, 0xcb, 0xf2, 0x30, 0x41, 0xa6, 0x00, 0x82, 0x04, 0xc3, 0xb8, 0x31, 0xc6, 0xdf, 0x6e, 0x60, 0x66, 0x75, 0x9d, 0xb0, 0x02, 0xbe, 0x5a, 0x2f, 0x2e, 0x9a, 0xe4, 0x80, 0xda, 0x24, 0x8b, 0x0b, 0x2a, 0x99, 0x30, 0x2d, 0x59, 0x2d, 0xe5, 0x52, 0x93, 0xd1, 0x63, 0x41, 0x24, 0x63, 0xd6, }; static const unsigned char ecdh_secp256r1_5471_privkey[] = { 0x31, 0x3f, 0x72, 0xff, 0x9f, 0xe8, 0x11, 0xbf, 0x57, 0x31, 0x76, 0x23, 0x1b, 0x28, 0x6a, 0x3b, 0xdb, 0x6f, 0x1b, 0x14, 0xe0, 0x5c, 0x40, 0x14, 0x65, 0x90, 0x72, 0x7a, 0x71, 0xc3, 0xbc, 0xcd, }; static const unsigned char ecdh_secp256r1_5471_sharedsecret[] = { 0x83, 0x1c, 0x3f, 0x6b, 0x5f, 0x76, 0x2d, 0x2f, 0x46, 0x19, 0x01, 0x57, 0x7a, 0xf4, 0x13, 0x54, 0xac, 0x5f, 0x22, 0x8c, 0x25, 0x91, 0xf8, 0x4f, 0x8a, 0x6e, 0x51, 0xe2, 0xe3, 0xf1, 0x79, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256r1_5471 = { .name = "ecdh_secp256r1_5471", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5471_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5471_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5471_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256r1_5471_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "CVE-2017-8932, tcId is 191 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5472 for ECDH, tcId is 192 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5472_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5472_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5472_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5472 = { .name = "ecdh_secp256r1_5472", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5472_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5472_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5472_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 192 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5473 for ECDH, tcId is 193 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5473_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5473_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5473_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5473 = { .name = "ecdh_secp256r1_5473", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5473_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5473_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5473_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 193 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5474 for ECDH, tcId is 194 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5474_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_5474_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5474_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5474 = { .name = "ecdh_secp256r1_5474", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5474_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5474_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5474_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 194 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5475 for ECDH, tcId is 195 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5475_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5475_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5475_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5475 = { .name = "ecdh_secp256r1_5475", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5475_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5475_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5475_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 195 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5476 for ECDH, tcId is 196 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5476_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5476_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5476_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5476 = { .name = "ecdh_secp256r1_5476", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5476_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5476_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5476_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 196 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5477 for ECDH, tcId is 197 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5477_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5477_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5477_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5477 = { .name = "ecdh_secp256r1_5477", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5477_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5477_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5477_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 197 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5478 for ECDH, tcId is 198 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5478_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_5478_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5478_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5478 = { .name = "ecdh_secp256r1_5478", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5478_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5478_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5478_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 198 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5479 for ECDH, tcId is 199 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5479_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5479_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5479_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5479 = { .name = "ecdh_secp256r1_5479", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5479_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5479_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5479_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 199 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5480 for ECDH, tcId is 200 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5480_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5480_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5480_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5480 = { .name = "ecdh_secp256r1_5480", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5480_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5480_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5480_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 200 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5481 for ECDH, tcId is 201 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5481_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5481_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5481_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5481 = { .name = "ecdh_secp256r1_5481", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5481_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5481_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5481_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 201 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5482 for ECDH, tcId is 202 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5482_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_5482_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5482_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5482 = { .name = "ecdh_secp256r1_5482", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5482_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5482_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5482_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 202 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5483 for ECDH, tcId is 203 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5483_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5483_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5483_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5483 = { .name = "ecdh_secp256r1_5483", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5483_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5483_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5483_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 203 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5484 for ECDH, tcId is 204 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5484_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5484_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5484_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5484 = { .name = "ecdh_secp256r1_5484", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5484_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5484_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5484_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 204 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5485 for ECDH, tcId is 205 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5485_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256r1_5485_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5485_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5485 = { .name = "ecdh_secp256r1_5485", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5485_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5485_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5485_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 205 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5486 for ECDH, tcId is 206 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5486_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp256r1_5486_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5486_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5486 = { .name = "ecdh_secp256r1_5486", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5486_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5486_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5486_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 206 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5487 for ECDH, tcId is 207 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5487_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256r1_5487_ourpubkey[] = { 0x47, 0xf6, 0x7d, 0xe3, 0x5e, 0x5c, 0xb4, 0x32, 0xb0, 0x57, 0xe8, 0xa0, 0xd0, 0xff, 0x62, 0x2e, 0xb6, 0x98, 0xb3, 0x4b, 0xc9, 0xff, 0xe5, 0x23, 0x51, 0x19, 0x36, 0x63, 0xcc, 0x6e, 0x72, 0x74, 0x14, 0x0f, 0x81, 0x5e, 0xf6, 0x1f, 0xf6, 0xed, 0x06, 0xdf, 0x0a, 0x15, 0x03, 0x66, 0xea, 0xbc, 0xfb, 0x18, 0xed, 0xa1, 0xce, 0xe3, 0xd4, 0xb3, 0x0f, 0x2d, 0x15, 0xd4, 0xa4, 0xfa, 0xe5, 0x17, }; static const unsigned char ecdh_secp256r1_5487_privkey[] = { 0x7e, 0x4a, 0xa5, 0x4f, 0x71, 0x4b, 0xf0, 0x1d, 0xf8, 0x5c, 0x50, 0x26, 0x9b, 0xea, 0x3a, 0x86, 0x72, 0x1f, 0x84, 0xaf, 0xe7, 0x4f, 0x7b, 0x41, 0xea, 0x58, 0xab, 0xcf, 0x34, 0x74, 0xe8, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256r1_5487 = { .name = "ecdh_secp256r1_5487", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5487_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5487_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5487_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 207 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5488 for ECDH, tcId is 208 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5488_peerpubkey[] = { 0x15, 0x10, 0x26, 0x4c, 0x18, 0x9c, 0x3d, 0x52, 0x3f, 0xf9, 0x91, 0x6a, 0xbd, 0x70, 0x69, 0xef, 0xa6, 0x96, 0x8d, 0x8d, 0xc7, 0xdd, 0xb6, 0x45, 0x7d, 0x78, 0x69, 0xb5, 0x3e, 0xa6, 0x0c, 0xdc, 0xfa, 0xfb, 0x7e, 0xd4, 0x78, 0x6d, 0xa1, 0x5d, 0x29, 0xee, 0x59, 0x25, 0x6f, 0x53, 0x6d, 0xa3, 0x57, 0x5a, 0x48, 0x88, 0xc1, 0xbb, 0x0a, 0x95, 0xb2, 0x56, 0xf4, 0xa7, 0xe9, 0xfd, 0x76, 0x4c, }; static const unsigned char ecdh_secp256r1_5488_ourpubkey[] = { 0x41, 0xde, 0xe3, 0x0a, 0x22, 0x44, 0xd9, 0x20, 0x1c, 0xa6, 0x4d, 0x6f, 0xd2, 0xdd, 0x12, 0x6b, 0x70, 0x95, 0x36, 0x9e, 0x67, 0x3a, 0xec, 0xaa, 0xa5, 0xe0, 0x42, 0x30, 0x85, 0x28, 0x9d, 0x5d, 0x4d, 0x17, 0x35, 0xb9, 0x28, 0x41, 0xe7, 0x7d, 0x3c, 0x8b, 0x20, 0x64, 0xde, 0xd2, 0xc3, 0xd6, 0x5d, 0x86, 0x92, 0xf0, 0xa0, 0x54, 0x52, 0x65, 0xdf, 0x6d, 0xa2, 0xe5, 0x2b, 0x94, 0xa1, 0xc9, }; static const unsigned char ecdh_secp256r1_5488_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5488 = { .name = "ecdh_secp256r1_5488", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5488_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5488_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5488_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 208 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5489 for ECDH, tcId is 209 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5489_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256r1_5489_ourpubkey[] = { 0x41, 0xde, 0xe3, 0x0a, 0x22, 0x44, 0xd9, 0x20, 0x1c, 0xa6, 0x4d, 0x6f, 0xd2, 0xdd, 0x12, 0x6b, 0x70, 0x95, 0x36, 0x9e, 0x67, 0x3a, 0xec, 0xaa, 0xa5, 0xe0, 0x42, 0x30, 0x85, 0x28, 0x9d, 0x5d, 0x4d, 0x17, 0x35, 0xb9, 0x28, 0x41, 0xe7, 0x7d, 0x3c, 0x8b, 0x20, 0x64, 0xde, 0xd2, 0xc3, 0xd6, 0x5d, 0x86, 0x92, 0xf0, 0xa0, 0x54, 0x52, 0x65, 0xdf, 0x6d, 0xa2, 0xe5, 0x2b, 0x94, 0xa1, 0xc9, }; static const unsigned char ecdh_secp256r1_5489_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5489 = { .name = "ecdh_secp256r1_5489", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5489_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5489_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5489_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 209 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5490 for ECDH, tcId is 210 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5490_peerpubkey[] = { 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_secp256r1_5490_ourpubkey[] = { 0x41, 0xde, 0xe3, 0x0a, 0x22, 0x44, 0xd9, 0x20, 0x1c, 0xa6, 0x4d, 0x6f, 0xd2, 0xdd, 0x12, 0x6b, 0x70, 0x95, 0x36, 0x9e, 0x67, 0x3a, 0xec, 0xaa, 0xa5, 0xe0, 0x42, 0x30, 0x85, 0x28, 0x9d, 0x5d, 0x4d, 0x17, 0x35, 0xb9, 0x28, 0x41, 0xe7, 0x7d, 0x3c, 0x8b, 0x20, 0x64, 0xde, 0xd2, 0xc3, 0xd6, 0x5d, 0x86, 0x92, 0xf0, 0xa0, 0x54, 0x52, 0x65, 0xdf, 0x6d, 0xa2, 0xe5, 0x2b, 0x94, 0xa1, 0xc9, }; static const unsigned char ecdh_secp256r1_5490_privkey[] = { 0x4f, 0x34, 0x14, 0xd1, 0x58, 0x9b, 0x49, 0xf7, 0x17, 0x2d, 0x43, 0x9c, 0xbb, 0xe7, 0x8e, 0x5b, 0x53, 0x50, 0xdc, 0x85, 0xde, 0xa4, 0x0c, 0xd2, 0xd6, 0x27, 0x47, 0x40, 0xc6, 0xe0, 0x23, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp256r1_5490 = { .name = "ecdh_secp256r1_5490", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5490_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5490_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5490_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 210 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5491 for ECDH, tcId is 211 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5491_peerpubkey[] = { 0x1f, 0x17, 0x90, 0x1e, 0x73, 0x1b, 0x06, 0xf3, 0x49, 0xb6, 0xe9, 0xd7, 0xd1, 0x7d, 0x45, 0xe8, 0xa2, 0xb4, 0x61, 0x15, 0xa4, 0x74, 0x85, 0xbe, 0x16, 0x19, 0x79, 0x32, 0xdb, 0x87, 0xb3, 0x94, 0x05, 0xb5, 0xc9, 0x41, 0xb3, 0x6f, 0xd6, 0x1b, 0x9e, 0xf7, 0xdd, 0x20, 0x87, 0x8e, 0x12, 0x9e, 0x55, 0xa2, 0x27, 0x70, 0x99, 0xc6, 0x01, 0xdc, 0xdb, 0x37, 0x47, 0xf8, 0x0a, 0xd6, 0xe1, 0x66, 0x11, 0x63, 0x78, 0xe1, 0xeb, 0xce, 0x2c, 0x95, 0x74, 0x4a, 0x09, 0x86, 0x12, 0x8c, 0xfe, 0xea, 0xac, 0x7f, 0x90, 0xb7, 0x17, 0x87, 0xd9, 0xa1, 0xcf, 0xe4, 0x17, 0xcd, 0x4c, 0x8f, 0x6a, 0xf5, }; static const unsigned char ecdh_secp256r1_5491_ourpubkey[] = { 0x9f, 0x57, 0xb8, 0xfc, 0x70, 0x69, 0xce, 0x46, 0xca, 0x9a, 0x56, 0xe6, 0x3d, 0x88, 0xe9, 0x9d, 0x4e, 0xcb, 0x58, 0x45, 0xf8, 0x1e, 0x71, 0xcf, 0x6b, 0xc8, 0x6a, 0xcc, 0x85, 0x8b, 0xd2, 0x90, 0x88, 0x69, 0xfc, 0x9e, 0xe5, 0x61, 0x7d, 0xbb, 0x64, 0x68, 0xaf, 0x36, 0x38, 0x1f, 0x0c, 0x40, 0x96, 0x8d, 0x74, 0x79, 0x4e, 0x18, 0x3a, 0x66, 0x9b, 0x01, 0x92, 0xeb, 0xd9, 0xd7, 0x56, 0x11, }; static const unsigned char ecdh_secp256r1_5491_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_5491 = { .name = "ecdh_secp256r1_5491", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5491_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp256r1_5491_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5491_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 211 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5492 for ECDH, tcId is 212 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5492_peerpubkey[] = { 0x00, 0xed, 0x76, 0xe5, 0x88, 0x84, 0x28, 0xfa, 0xd4, 0x09, 0xff, 0x20, 0x3a, 0xb2, 0x98, 0xb0, 0xf2, 0x48, 0x27, 0xc0, 0x91, 0x93, 0x9a, 0xe0, 0xf9, 0xb1, 0x24, 0x5d, 0x86, 0x5a, 0xc5, 0xfb, 0xcd, 0x27, 0x49, 0xf9, 0xae, 0x6c, 0x90, 0xfa, 0x8e, 0x29, 0x41, 0x4d, 0x1b, 0xc7, 0xdc, 0x7b, 0x3c, 0x4a, 0xca, 0x90, 0x4c, 0xd8, 0x24, 0x48, 0x44, 0x21, 0xcc, 0x66, 0xfe, 0x6a, 0xf4, 0x3b, 0xdf, 0xd2, 0x00, 0xc1, 0xf7, 0x90, 0xa0, 0xb3, 0xae, 0x99, 0x49, 0x37, 0xf9, 0x1b, 0x6b, 0xdb, 0x97, 0x78, 0xb0, 0x8c, 0x83, 0xec, 0xad, 0xb8, 0xcb, 0xa2, 0x2a, 0x78, 0xc3, 0x7b, 0xf5, 0x65, 0xda, 0xc1, 0x64, 0xf1, 0x8e, 0x71, 0x9b, 0xe0, 0xef, 0x89, 0x0e, 0xe5, 0xcb, 0xf2, 0x0e, 0x17, 0xfc, 0xfc, 0x9a, 0x55, 0x85, 0xe5, 0x41, 0x64, 0x70, 0xb9, 0x86, 0x2f, 0x82, 0xfb, 0x76, 0x93, 0x39, 0x99, 0x4f, 0x4e, }; static const unsigned char ecdh_secp256r1_5492_ourpubkey[] = { 0x9f, 0x57, 0xb8, 0xfc, 0x70, 0x69, 0xce, 0x46, 0xca, 0x9a, 0x56, 0xe6, 0x3d, 0x88, 0xe9, 0x9d, 0x4e, 0xcb, 0x58, 0x45, 0xf8, 0x1e, 0x71, 0xcf, 0x6b, 0xc8, 0x6a, 0xcc, 0x85, 0x8b, 0xd2, 0x90, 0x88, 0x69, 0xfc, 0x9e, 0xe5, 0x61, 0x7d, 0xbb, 0x64, 0x68, 0xaf, 0x36, 0x38, 0x1f, 0x0c, 0x40, 0x96, 0x8d, 0x74, 0x79, 0x4e, 0x18, 0x3a, 0x66, 0x9b, 0x01, 0x92, 0xeb, 0xd9, 0xd7, 0x56, 0x11, }; static const unsigned char ecdh_secp256r1_5492_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_5492 = { .name = "ecdh_secp256r1_5492", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5492_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp256r1_5492_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5492_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp521r1, tcId is 212 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5493 for ECDH, tcId is 213 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) static const unsigned char ecdh_secp256r1_5493_peerpubkey[] = { 0x80, 0x28, 0xd1, 0x60, 0x82, 0xb0, 0x76, 0x96, 0xd4, 0xaa, 0x4a, 0xab, 0x9d, 0x6b, 0x1f, 0x14, 0x63, 0x43, 0x5a, 0xc0, 0x97, 0x90, 0x06, 0x31, 0x10, 0x8f, 0x98, 0x88, 0xe1, 0x3d, 0xa6, 0x7c, 0x48, 0x41, 0xfd, 0x8d, 0xd3, 0xce, 0xd6, 0xe7, 0xad, 0x8c, 0x6f, 0xc6, 0x56, 0x62, 0x1c, 0x2f, 0x93, 0xd3, 0xdb, 0x0e, 0xb2, 0x9d, 0x48, 0xd1, 0x42, 0x31, 0x54, 0x51, 0x98, 0x65, 0xdb, 0xc1, }; static const unsigned char ecdh_secp256r1_5493_ourpubkey[] = { 0x9f, 0x57, 0xb8, 0xfc, 0x70, 0x69, 0xce, 0x46, 0xca, 0x9a, 0x56, 0xe6, 0x3d, 0x88, 0xe9, 0x9d, 0x4e, 0xcb, 0x58, 0x45, 0xf8, 0x1e, 0x71, 0xcf, 0x6b, 0xc8, 0x6a, 0xcc, 0x85, 0x8b, 0xd2, 0x90, 0x88, 0x69, 0xfc, 0x9e, 0xe5, 0x61, 0x7d, 0xbb, 0x64, 0x68, 0xaf, 0x36, 0x38, 0x1f, 0x0c, 0x40, 0x96, 0x8d, 0x74, 0x79, 0x4e, 0x18, 0x3a, 0x66, 0x9b, 0x01, 0x92, 0xeb, 0xd9, 0xd7, 0x56, 0x11, }; static const unsigned char ecdh_secp256r1_5493_privkey[] = { 0xb4, 0x4f, 0x96, 0x70, 0xfe, 0xdb, 0xa8, 0x87, 0xad, 0x8e, 0x80, 0x62, 0x26, 0x06, 0x3e, 0x77, 0x60, 0x4b, 0x27, 0xc3, 0x62, 0x83, 0x63, 0x26, 0xe9, 0x3e, 0xcb, 0x7f, 0xcc, 0x6d, 0xc2, 0x97, }; static const wycheproof_ecdh_test ecdh_secp256r1_5493 = { .name = "ecdh_secp256r1_5493", .ecdh_alg = ECCCDH, .curve = &secp256r1_str_params, .peerpubkey = ecdh_secp256r1_5493_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256r1_5493_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256r1_5493_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 213 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) */ /* Test 5494 for ECDH, tcId is 214 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5494_peerpubkey[] = { 0x79, 0x0a, 0x6e, 0x05, 0x9e, 0xf9, 0xa5, 0x94, 0x01, 0x63, 0x18, 0x3d, 0x4a, 0x78, 0x09, 0x13, 0x5d, 0x29, 0x79, 0x16, 0x43, 0xfc, 0x43, 0xa2, 0xf1, 0x7e, 0xe8, 0xbf, 0x67, 0x7a, 0xb8, 0x4f, 0x79, 0x1b, 0x64, 0xa6, 0xbe, 0x15, 0x96, 0x9f, 0xfa, 0x01, 0x2d, 0xd9, 0x18, 0x5d, 0x87, 0x96, 0xd9, 0xb9, 0x54, 0xba, 0xa8, 0xa7, 0x5e, 0x82, 0xdf, 0x71, 0x1b, 0x3b, 0x56, 0xea, 0xdf, 0xf6, 0xb0, 0xf6, 0x68, 0xc3, 0xb2, 0x6b, 0x4b, 0x1a, 0xeb, 0x30, 0x8a, 0x1f, 0xcc, 0x1c, 0x68, 0x0d, 0x32, 0x9a, 0x67, 0x05, 0x02, 0x5f, 0x1c, 0x98, 0xa0, 0xb5, 0xe5, 0xbf, 0xcb, 0x16, 0x3c, 0xaa, }; static const unsigned char ecdh_secp384r1_5494_ourpubkey[] = { 0x7a, 0x6e, 0xc8, 0xd3, 0x11, 0xd5, 0xca, 0x58, 0x8b, 0xae, 0xd4, 0x1b, 0xe3, 0xe9, 0x8f, 0x30, 0xc9, 0x29, 0x48, 0x44, 0xec, 0xbb, 0x62, 0x99, 0x95, 0x65, 0x36, 0x35, 0xdb, 0xc2, 0x2d, 0xa2, 0xf0, 0x83, 0xf2, 0x97, 0x11, 0xe0, 0xf9, 0xc5, 0x96, 0x3b, 0xc0, 0x21, 0xbd, 0x8c, 0xb2, 0x10, 0x9d, 0xaf, 0x56, 0xa5, 0x5f, 0x88, 0x3a, 0x72, 0x00, 0xce, 0xa9, 0xc4, 0xde, 0x44, 0x48, 0x8e, 0x6d, 0xc4, 0x9f, 0xb9, 0xc3, 0x94, 0xf5, 0x1c, 0xb5, 0xa4, 0x9f, 0xc6, 0x9d, 0x7e, 0x8a, 0x03, 0x47, 0x92, 0x96, 0x3a, 0xe4, 0xea, 0xbc, 0x63, 0x48, 0x3a, 0x2c, 0xf1, 0xa8, 0x99, 0xe8, 0xc8, }; static const unsigned char ecdh_secp384r1_5494_privkey[] = { 0x76, 0x6e, 0x61, 0x42, 0x5b, 0x2d, 0xa9, 0xf8, 0x46, 0xc0, 0x9f, 0xc3, 0x56, 0x4b, 0x93, 0xa6, 0xf8, 0x60, 0x3b, 0x73, 0x92, 0xc7, 0x85, 0x16, 0x5b, 0xf2, 0x0d, 0xa9, 0x48, 0xc4, 0x9f, 0xd1, 0xfb, 0x1d, 0xee, 0x4e, 0xdd, 0x64, 0x35, 0x6b, 0x9f, 0x21, 0xc5, 0x88, 0xb7, 0x5d, 0xfd, 0x81, }; static const unsigned char ecdh_secp384r1_5494_sharedsecret[] = { 0x64, 0x61, 0xde, 0xfb, 0x95, 0xd9, 0x96, 0xb2, 0x42, 0x96, 0xf5, 0xa1, 0x83, 0x2b, 0x34, 0xdb, 0x05, 0xed, 0x03, 0x11, 0x14, 0xfb, 0xe7, 0xd9, 0x8d, 0x09, 0x8f, 0x93, 0x85, 0x98, 0x66, 0xe4, 0xde, 0x1e, 0x22, 0x9d, 0xa7, 0x1f, 0xef, 0x0c, 0x77, 0xfe, 0x49, 0xb2, 0x49, 0x19, 0x01, 0x35, }; static const wycheproof_ecdh_test ecdh_secp384r1_5494 = { .name = "ecdh_secp384r1_5494", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5494_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5494_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5494_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5494_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "normal case, tcId is 214 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5495 for ECDH, tcId is 215 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5495_peerpubkey[] = { 0x49, 0x0e, 0x96, 0xd1, 0x7f, 0x4c, 0x6c, 0xec, 0xcd, 0x45, 0xde, 0xf4, 0x08, 0xce, 0xa3, 0x3e, 0x97, 0x04, 0xa5, 0xf1, 0xb0, 0x1a, 0x3d, 0xe2, 0xea, 0xaa, 0x34, 0x09, 0xfd, 0x16, 0x0d, 0x78, 0xd3, 0x95, 0xd6, 0xb3, 0xb0, 0x03, 0xd7, 0x1f, 0xd1, 0xf5, 0x90, 0xfa, 0xd9, 0x5b, 0xf1, 0xc9, 0xd8, 0x66, 0x5e, 0xfc, 0x20, 0x70, 0xd0, 0x59, 0xaa, 0x84, 0x71, 0x25, 0xc2, 0xf7, 0x07, 0x43, 0x59, 0x55, 0x53, 0x5c, 0x7c, 0x5d, 0xf6, 0xd6, 0xc0, 0x79, 0xec, 0x80, 0x6d, 0xce, 0x6b, 0x68, 0x49, 0xd3, 0x37, 0x14, 0x0d, 0xb7, 0xca, 0x50, 0x61, 0x6f, 0x94, 0x56, 0xde, 0x13, 0x23, 0xc4, }; static const unsigned char ecdh_secp384r1_5495_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5495_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5495_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5495 = { .name = "ecdh_secp384r1_5495", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5495_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5495_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5495_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5495_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 215 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5496 for ECDH, tcId is 216 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5496_peerpubkey[] = { 0x01, 0x61, 0x32, 0x89, 0x09, 0x67, 0x52, 0x13, 0xe3, 0x20, 0x98, 0xd3, 0x5a, 0x6b, 0x83, 0x08, 0xa8, 0xd5, 0x00, 0xcc, 0xa3, 0x9d, 0xce, 0xe5, 0xe8, 0x04, 0xe7, 0x3b, 0xdb, 0x8d, 0xea, 0xf0, 0x6f, 0xe4, 0x17, 0x29, 0x1f, 0xd9, 0x79, 0x3b, 0x23, 0x1e, 0xf5, 0xfe, 0x86, 0x94, 0x54, 0x44, 0xa9, 0x7a, 0x01, 0xf3, 0xae, 0x3a, 0x83, 0x10, 0xc4, 0xaf, 0x49, 0xb5, 0x92, 0xcb, 0x29, 0x1e, 0xf7, 0x0e, 0xe5, 0xbc, 0x7f, 0x55, 0x34, 0xd3, 0xc2, 0x3d, 0xc9, 0xee, 0xfd, 0xe2, 0x30, 0x48, 0x42, 0xc7, 0x73, 0x7a, 0xe9, 0x37, 0xcc, 0xf9, 0xbd, 0x21, 0x5c, 0x28, 0x10, 0x3e, 0x9f, 0xe2, }; static const unsigned char ecdh_secp384r1_5496_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5496_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5496_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_5496 = { .name = "ecdh_secp384r1_5496", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5496_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5496_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5496_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5496_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 216 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5497 for ECDH, tcId is 217 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5497_peerpubkey[] = { 0xaf, 0x4a, 0xe9, 0x64, 0xe3, 0xbc, 0xbd, 0x92, 0x3a, 0xcc, 0xda, 0x5d, 0xa3, 0x17, 0x5d, 0x41, 0x1f, 0xd6, 0x2d, 0x17, 0xdd, 0x3c, 0x3a, 0x1c, 0x41, 0x0b, 0xef, 0x17, 0x30, 0x98, 0x5a, 0x62, 0x65, 0xd9, 0x0e, 0x95, 0x0a, 0xc0, 0xfc, 0x50, 0x74, 0x3b, 0x1e, 0xd7, 0x71, 0x90, 0x6f, 0xf3, 0x3b, 0x68, 0xcf, 0x4d, 0x3d, 0x83, 0xa8, 0x85, 0xa8, 0x70, 0x97, 0xfd, 0xd3, 0x29, 0xce, 0x83, 0xb1, 0x89, 0xf9, 0x8c, 0xec, 0x5b, 0xe4, 0x4c, 0x31, 0xd1, 0xa3, 0xa2, 0xbb, 0xa1, 0x0f, 0x47, 0x19, 0x63, 0x23, 0x2b, 0x8b, 0xa7, 0x61, 0x0f, 0xa8, 0xc7, 0x21, 0x79, 0x05, 0x0e, 0xb8, 0x6d, }; static const unsigned char ecdh_secp384r1_5497_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5497_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5497_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp384r1_5497 = { .name = "ecdh_secp384r1_5497", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5497_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5497_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5497_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5497_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 217 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5498 for ECDH, tcId is 218 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5498_peerpubkey[] = { 0x14, 0x78, 0xab, 0x6e, 0x03, 0x2b, 0x95, 0x45, 0xed, 0xa9, 0xac, 0x2c, 0x26, 0x4e, 0x57, 0xa1, 0x1f, 0x08, 0xac, 0xbc, 0x76, 0xd1, 0x6a, 0x0a, 0xb7, 0x7b, 0x04, 0xdb, 0xda, 0xf2, 0x0f, 0x21, 0x5c, 0x41, 0x83, 0x43, 0x7b, 0x32, 0xaf, 0xc4, 0x71, 0xea, 0xa6, 0x03, 0xd1, 0x4c, 0x7c, 0x5d, 0x8a, 0x4c, 0x84, 0xee, 0x0e, 0x89, 0x5b, 0xec, 0x5c, 0x37, 0xf0, 0xa1, 0xca, 0x07, 0x5e, 0x10, 0x6f, 0xf6, 0xbf, 0x38, 0x80, 0x1b, 0x5c, 0x69, 0x74, 0x09, 0xd3, 0x96, 0x75, 0x23, 0x11, 0x08, 0xd3, 0x3c, 0x4a, 0x5e, 0xa6, 0x5a, 0xaa, 0x8c, 0x03, 0xe9, 0x39, 0xc9, 0x5d, 0x96, 0xc4, 0xc4, }; static const unsigned char ecdh_secp384r1_5498_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5498_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5498_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_5498 = { .name = "ecdh_secp384r1_5498", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5498_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5498_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5498_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5498_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 218 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5499 for ECDH, tcId is 219 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5499_peerpubkey[] = { 0xf6, 0x32, 0x08, 0xe3, 0x4e, 0x7e, 0x90, 0xbb, 0x5f, 0xb0, 0x36, 0x43, 0x24, 0x67, 0xa8, 0x99, 0x81, 0x44, 0x40, 0x10, 0x66, 0x3b, 0x85, 0x33, 0xb4, 0x7b, 0xfa, 0x94, 0xbd, 0x2b, 0xc1, 0x6f, 0x38, 0xaa, 0x51, 0x6b, 0x93, 0x0a, 0x47, 0x26, 0xe3, 0x87, 0x6d, 0x30, 0x91, 0xbf, 0xb7, 0x2e, 0xc7, 0x83, 0xed, 0x4d, 0xa0, 0xca, 0xc0, 0x63, 0x20, 0x81, 0x7d, 0xc8, 0xbc, 0x64, 0xf5, 0x9c, 0xcf, 0x06, 0xf4, 0x8a, 0xbc, 0x43, 0x86, 0xa1, 0x50, 0x91, 0x3f, 0xa9, 0x57, 0x43, 0xa7, 0xb4, 0x60, 0x11, 0x90, 0xe1, 0xc6, 0xee, 0x8f, 0x8b, 0xf6, 0x35, 0x4b, 0x25, 0x4e, 0xca, 0xce, 0x45, }; static const unsigned char ecdh_secp384r1_5499_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5499_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5499_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_5499 = { .name = "ecdh_secp384r1_5499", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5499_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5499_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5499_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5499_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 219 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5500 for ECDH, tcId is 220 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5500_peerpubkey[] = { 0x03, 0x32, 0x71, 0xef, 0x42, 0xd9, 0x2a, 0xd4, 0x7b, 0x27, 0x3b, 0x09, 0xea, 0x2f, 0x45, 0x40, 0x11, 0x61, 0xba, 0xa5, 0x26, 0x96, 0x59, 0x0d, 0x0e, 0x17, 0x5f, 0xf2, 0xd1, 0xc0, 0xdf, 0xa3, 0xfe, 0xa4, 0x0e, 0x42, 0x66, 0xd4, 0x46, 0x54, 0x6c, 0x05, 0xe4, 0x80, 0xd5, 0x7f, 0xab, 0xec, 0x78, 0x89, 0xf1, 0x6a, 0x8b, 0xcc, 0x17, 0x66, 0x02, 0xf6, 0xd4, 0x65, 0x61, 0x61, 0x4a, 0x2f, 0x42, 0x84, 0xab, 0xe6, 0x97, 0xb7, 0xcb, 0x9c, 0xe7, 0x9f, 0x7e, 0x2e, 0x71, 0xb1, 0x55, 0xcb, 0x1f, 0x15, 0x5c, 0xe9, 0x25, 0xd1, 0x63, 0x91, 0xa6, 0x80, 0xed, 0xa2, 0x31, 0x52, 0xe6, 0xe1, }; static const unsigned char ecdh_secp384r1_5500_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5500_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5500_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_5500 = { .name = "ecdh_secp384r1_5500", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5500_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5500_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5500_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5500_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 220 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5501 for ECDH, tcId is 221 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5501_peerpubkey[] = { 0x73, 0x7e, 0x84, 0x37, 0xe1, 0x86, 0x83, 0xde, 0x24, 0x55, 0xb6, 0x89, 0x45, 0xbb, 0xa3, 0x1d, 0xae, 0xc3, 0xe7, 0x54, 0xd7, 0x2f, 0x0a, 0x07, 0x76, 0xd3, 0x19, 0x2b, 0x2f, 0x92, 0x98, 0xbb, 0x95, 0xca, 0x14, 0x64, 0xba, 0xa6, 0x68, 0x7a, 0xab, 0xb6, 0x79, 0xf8, 0x04, 0xcf, 0x6e, 0xc6, 0xc2, 0xb4, 0xd4, 0x7d, 0x61, 0xa6, 0x04, 0x04, 0xdf, 0x63, 0xb1, 0xe9, 0xac, 0x09, 0x54, 0xb3, 0x41, 0x9b, 0xbc, 0x2a, 0xd5, 0x2a, 0x04, 0x09, 0xae, 0xeb, 0x82, 0xf4, 0x70, 0x37, 0x58, 0x58, 0x80, 0x59, 0x16, 0x5b, 0x20, 0x36, 0x7d, 0xcb, 0x4b, 0x23, 0x5b, 0x0c, 0xaf, 0x71, 0xd7, 0x27, }; static const unsigned char ecdh_secp384r1_5501_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5501_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5501_sharedsecret[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5501 = { .name = "ecdh_secp384r1_5501", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5501_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5501_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5501_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5501_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 221 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5502 for ECDH, tcId is 222 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5502_peerpubkey[] = { 0x37, 0xf9, 0x00, 0x49, 0x83, 0x15, 0x6b, 0xbd, 0x9c, 0x47, 0x89, 0x1e, 0x75, 0x23, 0x7b, 0xb1, 0x30, 0x16, 0xbd, 0x7f, 0xe6, 0xf4, 0xe0, 0xf7, 0x1c, 0xef, 0x0e, 0x63, 0xf1, 0x6a, 0x67, 0x2f, 0x0d, 0x3b, 0x0e, 0x20, 0x16, 0x5c, 0x33, 0x40, 0x7e, 0x14, 0x6b, 0x6a, 0x4a, 0xe6, 0x96, 0x2d, 0xd3, 0xb5, 0x7c, 0xcb, 0x99, 0xe7, 0xaa, 0xf1, 0x30, 0x32, 0x40, 0x51, 0x6d, 0x0e, 0xbe, 0x08, 0xe5, 0x85, 0x51, 0x3e, 0x36, 0x95, 0xd4, 0x2c, 0x46, 0x7d, 0xca, 0xb5, 0x34, 0x0e, 0xf7, 0x61, 0x99, 0x0c, 0xad, 0xc8, 0xd8, 0x84, 0x0a, 0xac, 0xc9, 0x44, 0x48, 0x14, 0x15, 0xc0, 0x7f, 0xeb, }; static const unsigned char ecdh_secp384r1_5502_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5502_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5502_sharedsecret[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp384r1_5502 = { .name = "ecdh_secp384r1_5502", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5502_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5502_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5502_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5502_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 222 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5503 for ECDH, tcId is 223 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5503_peerpubkey[] = { 0x96, 0x55, 0xd8, 0xe5, 0x62, 0x27, 0x18, 0xb3, 0x17, 0xcf, 0xbc, 0x09, 0x89, 0x43, 0x57, 0xf7, 0x5a, 0x6b, 0x13, 0xfa, 0x51, 0x6b, 0xcd, 0x66, 0x30, 0x72, 0x1b, 0x86, 0x9a, 0x62, 0x01, 0x96, 0xcf, 0x0c, 0x3d, 0xec, 0x88, 0x60, 0xb3, 0x2d, 0x27, 0xed, 0x9b, 0xac, 0x2c, 0xf2, 0x63, 0xaf, 0x17, 0x32, 0x16, 0x98, 0x11, 0x6d, 0x7d, 0x81, 0x1a, 0xe8, 0xda, 0x9b, 0x9c, 0xbb, 0xf9, 0x38, 0x2c, 0x1e, 0x36, 0xe2, 0xb6, 0x7d, 0x6c, 0x6a, 0xf9, 0xbc, 0xea, 0x7d, 0x9d, 0xe0, 0x0c, 0xa7, 0x2b, 0x39, 0x86, 0x06, 0xc0, 0x98, 0xa0, 0xa0, 0xf0, 0xc4, 0xb8, 0x94, 0x19, 0x43, 0xed, 0x65, }; static const unsigned char ecdh_secp384r1_5503_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5503_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5503_sharedsecret[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5503 = { .name = "ecdh_secp384r1_5503", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5503_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5503_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5503_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5503_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 223 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5504 for ECDH, tcId is 224 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5504_peerpubkey[] = { 0xcc, 0xb1, 0x3d, 0x42, 0x7b, 0x3c, 0x4b, 0xb3, 0x3d, 0xd4, 0xf2, 0x0c, 0xdd, 0xab, 0xc6, 0x86, 0x00, 0xea, 0xf9, 0x7e, 0xeb, 0x2c, 0x81, 0xe8, 0xc2, 0x18, 0xae, 0x90, 0x74, 0x3e, 0x74, 0xff, 0x38, 0xca, 0x56, 0xf0, 0xc0, 0x22, 0x43, 0x79, 0xdb, 0x46, 0x4d, 0xcf, 0x4a, 0x40, 0xf0, 0x43, 0x50, 0xcd, 0x7a, 0x65, 0x9b, 0x2c, 0x48, 0x51, 0xa5, 0xdc, 0xf8, 0xc9, 0x90, 0xfc, 0x92, 0x0c, 0x07, 0xd4, 0xd5, 0xaa, 0x50, 0xa2, 0x18, 0x57, 0x50, 0xe6, 0xb8, 0x4c, 0x42, 0xe8, 0x3c, 0xff, 0x63, 0x50, 0x50, 0x48, 0x2d, 0xec, 0xb4, 0x78, 0x0f, 0x81, 0x2e, 0x4c, 0x49, 0xfc, 0x74, 0x04, }; static const unsigned char ecdh_secp384r1_5504_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5504_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5504_sharedsecret[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, }; static const wycheproof_ecdh_test ecdh_secp384r1_5504 = { .name = "ecdh_secp384r1_5504", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5504_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5504_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5504_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5504_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 224 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5505 for ECDH, tcId is 225 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5505_peerpubkey[] = { 0x26, 0x64, 0x62, 0x43, 0x07, 0xc0, 0x2e, 0xf4, 0x87, 0x03, 0x0a, 0x63, 0x21, 0x62, 0xc5, 0x15, 0xf8, 0x41, 0xd1, 0x5e, 0xa3, 0x15, 0x2d, 0x98, 0xff, 0x23, 0x64, 0x23, 0x2d, 0x7a, 0xab, 0x39, 0x34, 0x3d, 0x5f, 0x70, 0x3a, 0x4d, 0x5a, 0x31, 0x09, 0x2a, 0xa7, 0x35, 0x6c, 0x3a, 0x2f, 0x67, 0x1c, 0x1c, 0xd6, 0x03, 0xad, 0xdf, 0xd8, 0xb5, 0x47, 0x75, 0x52, 0xa3, 0xb3, 0x2a, 0x18, 0xed, 0xaf, 0x3e, 0x33, 0xbe, 0xc2, 0x2e, 0xe2, 0x16, 0x7f, 0x9d, 0xa7, 0x29, 0x63, 0x60, 0x02, 0xa7, 0x97, 0x4e, 0xae, 0xb5, 0xff, 0x08, 0x2b, 0x2a, 0xab, 0xf8, 0xc7, 0x05, 0x6b, 0x84, 0xc3, 0xab, }; static const unsigned char ecdh_secp384r1_5505_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5505_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5505_sharedsecret[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_5505 = { .name = "ecdh_secp384r1_5505", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5505_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5505_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5505_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5505_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 225 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5506 for ECDH, tcId is 226 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5506_peerpubkey[] = { 0x66, 0x5f, 0x1f, 0x32, 0x0b, 0x6a, 0xb1, 0xc1, 0xb5, 0x2d, 0x14, 0x4e, 0x52, 0xd8, 0x7a, 0x15, 0x4c, 0x2b, 0x44, 0x89, 0x83, 0x8c, 0x91, 0x19, 0xde, 0x62, 0x2c, 0x2d, 0x1b, 0x52, 0xb6, 0x5b, 0x0a, 0x39, 0x55, 0xe4, 0x4e, 0x0d, 0x48, 0x59, 0x17, 0x53, 0x60, 0xc0, 0xf6, 0x3d, 0xee, 0x81, 0x3f, 0x14, 0xf6, 0x99, 0x72, 0xf1, 0x8c, 0xae, 0xd7, 0x91, 0x6c, 0x94, 0xa4, 0xd2, 0x0e, 0xc3, 0x44, 0x59, 0x1e, 0x75, 0x36, 0xa4, 0xa7, 0xa4, 0xd8, 0xc9, 0x83, 0x28, 0x18, 0xc9, 0x6d, 0x60, 0xb1, 0xa8, 0x1f, 0xab, 0xe6, 0x4e, 0xa0, 0x2c, 0x5f, 0x64, 0x7e, 0x36, 0x1b, 0xf5, 0xb6, 0x0f, }; static const unsigned char ecdh_secp384r1_5506_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5506_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5506_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp384r1_5506 = { .name = "ecdh_secp384r1_5506", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5506_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5506_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5506_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5506_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 226 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5507 for ECDH, tcId is 227 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5507_peerpubkey[] = { 0x91, 0x35, 0x7c, 0xa8, 0x7d, 0xbb, 0x08, 0xe8, 0x5d, 0x7b, 0x1a, 0xce, 0xcf, 0xd1, 0xe0, 0x86, 0x07, 0x8a, 0x82, 0xd1, 0x9f, 0x81, 0x47, 0x4d, 0xa3, 0x89, 0x36, 0x4a, 0x39, 0xfe, 0x25, 0x43, 0xeb, 0x93, 0x4b, 0x44, 0x01, 0x73, 0xc3, 0x8e, 0x61, 0xa1, 0xd9, 0x40, 0x78, 0x55, 0xb5, 0xd8, 0x9e, 0xf0, 0xd9, 0xe9, 0x20, 0x76, 0x4b, 0x6d, 0x77, 0x65, 0xb0, 0x84, 0xcf, 0x95, 0x41, 0xda, 0xcc, 0x43, 0xd1, 0xda, 0xba, 0xa3, 0x90, 0xb0, 0xfb, 0x85, 0x60, 0x97, 0xb0, 0xc0, 0x0a, 0x85, 0x56, 0xf4, 0xe3, 0x84, 0x85, 0x68, 0xab, 0x4a, 0xe7, 0x90, 0xc3, 0xd3, 0x46, 0xca, 0x01, 0xb6, }; static const unsigned char ecdh_secp384r1_5507_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5507_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5507_sharedsecret[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_5507 = { .name = "ecdh_secp384r1_5507", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5507_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5507_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5507_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5507_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 227 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5508 for ECDH, tcId is 228 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5508_peerpubkey[] = { 0xd5, 0xa8, 0x33, 0xba, 0xe3, 0x3b, 0x2d, 0x10, 0xfd, 0xff, 0x6d, 0xb7, 0xc5, 0x47, 0x7a, 0xdb, 0x61, 0x4b, 0x19, 0x1c, 0x70, 0xd9, 0x7c, 0x6f, 0x13, 0x0a, 0x14, 0xe9, 0x39, 0x31, 0xcc, 0x1d, 0xc0, 0x58, 0x05, 0x3f, 0xee, 0x54, 0xa2, 0x64, 0xa0, 0x0f, 0xdd, 0x16, 0xd3, 0x16, 0x6f, 0xdc, 0x42, 0x99, 0x22, 0x76, 0xb7, 0x99, 0x25, 0xba, 0xfc, 0xd1, 0x83, 0xb0, 0x3e, 0xd1, 0x82, 0x35, 0x35, 0x09, 0x80, 0xab, 0xfe, 0x67, 0xb8, 0x14, 0xc6, 0xc1, 0x10, 0x74, 0xc3, 0x8f, 0x74, 0xcd, 0x4e, 0x73, 0x4a, 0xd5, 0x8c, 0xdb, 0x49, 0xd9, 0xfc, 0xd2, 0x18, 0x1d, 0x1b, 0x8f, 0x11, 0x19, }; static const unsigned char ecdh_secp384r1_5508_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5508_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5508_sharedsecret[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5508 = { .name = "ecdh_secp384r1_5508", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5508_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5508_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5508_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5508_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 228 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5509 for ECDH, tcId is 229 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5509_peerpubkey[] = { 0x67, 0x54, 0x7c, 0xda, 0x7f, 0xbe, 0x8f, 0x16, 0xbe, 0x5a, 0x44, 0x77, 0xcb, 0xb0, 0x29, 0x79, 0xf1, 0xaf, 0x72, 0xfc, 0x0f, 0x39, 0x30, 0x27, 0x73, 0x55, 0x2f, 0xbc, 0xf4, 0x66, 0x7a, 0x8e, 0x23, 0xab, 0xc0, 0xe1, 0x28, 0x56, 0xee, 0x62, 0x34, 0xde, 0xec, 0xa5, 0xf2, 0x2a, 0xe0, 0x50, 0x3a, 0x4d, 0xf7, 0xc0, 0x68, 0xe7, 0x43, 0x24, 0x17, 0x26, 0x0c, 0xb9, 0xfe, 0x0d, 0x68, 0xb9, 0xc7, 0xfc, 0xf7, 0xe1, 0x6a, 0x2a, 0xda, 0x05, 0x68, 0x7d, 0x8f, 0x89, 0x00, 0xb8, 0x47, 0x23, 0x10, 0x3e, 0xdb, 0xff, 0x0a, 0x42, 0xb2, 0x75, 0x17, 0xda, 0x27, 0x60, 0xb7, 0xd3, 0x88, 0x43, }; static const unsigned char ecdh_secp384r1_5509_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5509_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5509_sharedsecret[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_5509 = { .name = "ecdh_secp384r1_5509", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5509_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5509_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5509_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5509_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 229 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5510 for ECDH, tcId is 230 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5510_peerpubkey[] = { 0x13, 0x63, 0xe3, 0xb9, 0x90, 0x08, 0xe0, 0x9b, 0xb3, 0xf0, 0x85, 0x94, 0x9b, 0x9b, 0x6e, 0xa2, 0x6a, 0x31, 0x8f, 0x49, 0x6d, 0xe5, 0x68, 0xa9, 0x66, 0x30, 0xfd, 0xb9, 0xd4, 0xc7, 0x2c, 0x28, 0x14, 0xdf, 0x30, 0x87, 0xa1, 0x74, 0x1f, 0x32, 0xf2, 0x49, 0x89, 0xb4, 0x28, 0x16, 0x7f, 0x93, 0xc6, 0x53, 0xcb, 0x3a, 0xe8, 0xc3, 0xec, 0xfa, 0xec, 0x57, 0xef, 0xd5, 0x4b, 0xb8, 0xce, 0x9d, 0x79, 0xc7, 0xbf, 0x6c, 0xc7, 0x0f, 0xb1, 0x11, 0x4f, 0x93, 0x9b, 0xe8, 0xf1, 0xa9, 0x9b, 0xf1, 0xe4, 0x2b, 0x97, 0x43, 0x11, 0x24, 0xef, 0x9f, 0xa3, 0x34, 0x50, 0xfa, 0xa4, 0xe7, 0x68, 0x39, }; static const unsigned char ecdh_secp384r1_5510_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5510_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5510_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp384r1_5510 = { .name = "ecdh_secp384r1_5510", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5510_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5510_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5510_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5510_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 230 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5511 for ECDH, tcId is 231 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5511_peerpubkey[] = { 0xba, 0x2b, 0xe8, 0xd7, 0x14, 0x7e, 0x24, 0x17, 0xc2, 0xec, 0x80, 0xb2, 0x4b, 0x4c, 0x1a, 0xa9, 0x44, 0x64, 0xff, 0xd0, 0xaa, 0xe1, 0xfa, 0x2e, 0x07, 0x8b, 0x3a, 0xfb, 0xc7, 0x7c, 0x14, 0x44, 0x89, 0xca, 0x9d, 0x06, 0x4a, 0xcb, 0xb7, 0xa9, 0xcf, 0xa6, 0x19, 0x6d, 0x0f, 0x46, 0x7b, 0x7e, 0x65, 0xee, 0x1c, 0xa1, 0xeb, 0x13, 0x51, 0xff, 0x99, 0x68, 0xf5, 0x53, 0xdf, 0xe2, 0xe4, 0xc5, 0x9f, 0xf8, 0xba, 0x34, 0xc2, 0x2a, 0x42, 0xb3, 0xba, 0xa1, 0x3a, 0x9a, 0x1a, 0xdc, 0x7f, 0x13, 0xab, 0xd4, 0x0f, 0x1f, 0xd2, 0x5d, 0x46, 0xbc, 0x53, 0x30, 0x85, 0x2b, 0x93, 0x71, 0x96, 0x6a, }; static const unsigned char ecdh_secp384r1_5511_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5511_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5511_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp384r1_5511 = { .name = "ecdh_secp384r1_5511", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5511_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5511_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5511_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5511_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 231 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5512 for ECDH, tcId is 232 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5512_peerpubkey[] = { 0xd6, 0x98, 0x50, 0xcc, 0xba, 0xcc, 0x47, 0x36, 0xea, 0x20, 0x0f, 0xf2, 0xf8, 0x48, 0x8f, 0x26, 0x24, 0x79, 0x45, 0xa2, 0xab, 0x48, 0xdd, 0x37, 0x08, 0xf4, 0x94, 0xb2, 0x93, 0xd8, 0xcb, 0xa8, 0x34, 0x17, 0xf4, 0x89, 0x74, 0x88, 0x1c, 0x7f, 0xb0, 0x38, 0x54, 0x08, 0x9b, 0xbf, 0x66, 0xcc, 0x1c, 0x77, 0x3e, 0xc0, 0x3c, 0xb8, 0xcd, 0x5f, 0x00, 0x7e, 0xc3, 0xb0, 0x3b, 0xdd, 0x05, 0xa4, 0x09, 0xb3, 0x52, 0x10, 0x3f, 0x0d, 0xec, 0xf2, 0x5b, 0x41, 0x67, 0x3a, 0xb8, 0xca, 0x3d, 0x04, 0x33, 0x4b, 0xab, 0xee, 0x01, 0x21, 0x9f, 0x15, 0x70, 0x1f, 0x2b, 0xca, 0x22, 0xd4, 0x0b, 0x37, }; static const unsigned char ecdh_secp384r1_5512_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5512_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5512_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_5512 = { .name = "ecdh_secp384r1_5512", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5512_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5512_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5512_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5512_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for shared secret, tcId is 232 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5513 for ECDH, tcId is 233 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5513_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x82, 0x6f, 0xde, 0x2e, 0xd9, 0xf5, 0x64, 0x9c, 0x11, 0xcf, 0x84, 0x65, 0xf8, 0xbf, 0x8a, 0xd5, 0x0f, 0x68, 0x91, 0x49, 0x36, 0xfc, 0x39, 0x66, 0x6f, 0x68, 0x21, 0x9d, 0x06, 0x65, 0x06, 0xbe, 0xa4, 0x00, 0x1f, 0xdc, 0x81, 0x6c, 0x9a, 0x90, 0xe7, 0xe2, 0xaf, 0xb1, 0x9b, 0xea, 0x08, 0x5f, }; static const unsigned char ecdh_secp384r1_5513_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5513_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5513_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5513 = { .name = "ecdh_secp384r1_5513", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5513_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5513_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5513_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5513_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 233 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5514 for ECDH, tcId is 234 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5514_peerpubkey[] = { 0x6f, 0xca, 0xf8, 0x2d, 0x98, 0x2d, 0x22, 0x2d, 0x60, 0x96, 0xba, 0x83, 0xe5, 0x5b, 0x1c, 0x7d, 0xcb, 0x71, 0xa4, 0x1e, 0x88, 0xf3, 0x23, 0x33, 0x3f, 0x44, 0x28, 0x4d, 0x95, 0xc4, 0xbd, 0x36, 0x16, 0xda, 0x7a, 0x1b, 0xef, 0x92, 0x8f, 0x31, 0xc2, 0x6f, 0x88, 0x5b, 0xa7, 0xad, 0xb4, 0x87, 0x7d, 0x90, 0x21, 0xd1, 0x26, 0x0a, 0x9b, 0x63, 0xee, 0x30, 0x7b, 0x9a, 0x07, 0x40, 0x75, 0x2a, 0xf0, 0x97, 0x6e, 0xb6, 0xc9, 0x03, 0xc6, 0x99, 0x90, 0x97, 0xde, 0x62, 0xf9, 0x9a, 0xf9, 0x40, 0x5b, 0xff, 0xe0, 0x22, 0x7e, 0x93, 0x65, 0x6f, 0x18, 0x1d, 0x50, 0x4f, 0x64, 0x15, 0xf7, 0xa0, }; static const unsigned char ecdh_secp384r1_5514_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5514_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5514_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5514 = { .name = "ecdh_secp384r1_5514", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5514_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5514_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5514_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5514_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 234 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5515 for ECDH, tcId is 235 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5515_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0xfd, 0x2e, 0x55, 0xec, 0x41, 0xfd, 0xfe, 0x8c, 0xab, 0xbb, 0xb7, 0xbc, 0xd8, 0x16, 0x36, 0x45, 0xa1, 0x9e, 0x9d, 0xac, 0x59, 0x63, 0x0f, 0x3f, 0xe9, 0x3b, 0x20, 0x80, 0x94, 0xff, 0x87, 0xcd, 0x46, 0x1b, 0x53, 0xce, 0xf5, 0x34, 0x82, 0xe7, 0x0e, 0x2e, 0x8e, 0xa8, 0x72, 0x00, 0xcc, 0x3f, }; static const unsigned char ecdh_secp384r1_5515_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5515_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5515_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5515 = { .name = "ecdh_secp384r1_5515", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5515_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5515_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5515_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5515_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 235 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5516 for ECDH, tcId is 236 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5516_peerpubkey[] = { 0xbf, 0xeb, 0x47, 0xfb, 0x40, 0xa6, 0x58, 0x78, 0xe6, 0xb6, 0x42, 0xf4, 0x0b, 0x8e, 0x15, 0x02, 0x2a, 0xde, 0x9e, 0xcf, 0xa8, 0xcb, 0x61, 0x80, 0x43, 0x06, 0x34, 0x94, 0xe2, 0xbc, 0x5d, 0x2d, 0xf1, 0x0d, 0x36, 0xf3, 0x78, 0x69, 0xb5, 0x8e, 0xf1, 0x2d, 0xcc, 0x35, 0xe3, 0x98, 0x28, 0x35, 0x02, 0xd1, 0xaa, 0x13, 0xbe, 0x02, 0x01, 0x73, 0x54, 0x44, 0x48, 0x43, 0x27, 0xe9, 0xc9, 0xba, 0x5e, 0x61, 0x62, 0x53, 0xa6, 0x9c, 0xf0, 0xc0, 0x16, 0xc4, 0xdf, 0x7f, 0x6b, 0x00, 0x78, 0x31, 0xb9, 0xe4, 0xac, 0x30, 0x0a, 0xcb, 0x7d, 0x18, 0xf1, 0xd1, 0x71, 0x58, 0x8d, 0xff, 0x33, 0xc0, }; static const unsigned char ecdh_secp384r1_5516_ourpubkey[] = { 0x5f, 0xb6, 0xfc, 0x5f, 0x17, 0xd5, 0x87, 0xde, 0xe5, 0xe9, 0x50, 0x2c, 0x4c, 0x48, 0x8e, 0xf3, 0xd6, 0xb0, 0x6c, 0x09, 0x81, 0x02, 0xf6, 0x23, 0x0a, 0x26, 0x4d, 0x0b, 0x4d, 0x19, 0x27, 0xc4, 0x61, 0x60, 0x1e, 0x47, 0xca, 0xb6, 0xd9, 0x3f, 0xaf, 0x0e, 0xe9, 0x82, 0x29, 0xd5, 0xc5, 0xdd, 0xb4, 0x16, 0xc8, 0xa5, 0x21, 0xfd, 0xef, 0xcc, 0xab, 0x5c, 0xbd, 0x14, 0xa3, 0x9b, 0x05, 0xc6, 0xb8, 0x8c, 0xb6, 0x5f, 0xfb, 0x48, 0x79, 0x08, 0x62, 0x52, 0x35, 0xc6, 0x91, 0x64, 0xc3, 0x9e, 0x5e, 0x27, 0xec, 0x34, 0x7c, 0x7f, 0x58, 0xf8, 0x31, 0x1a, 0xde, 0x42, 0x03, 0x4a, 0x8c, 0xe1, }; static const unsigned char ecdh_secp384r1_5516_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5b, 0x14, 0xf5, 0xa6, 0x76, 0x6d, 0xa8, 0x03, 0x5c, 0xc1, 0x94, 0x3b, 0x15, 0xa8, 0xe4, 0xeb, 0xb6, 0x02, 0x5f, 0x37, 0x3b, 0xe3, 0x34, 0x08, 0x0f, 0x22, 0xab, 0x82, 0x1a, 0x35, 0x35, 0xa6, 0xa7, }; static const unsigned char ecdh_secp384r1_5516_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp384r1_5516 = { .name = "ecdh_secp384r1_5516", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5516_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5516_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5516_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5516_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 236 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5517 for ECDH, tcId is 237 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5517_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_5517_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5517_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5517_sharedsecret[] = { 0x60, 0x92, 0xa1, 0x75, 0x7d, 0xdd, 0x43, 0xa0, 0x4e, 0x18, 0x5f, 0xf9, 0x47, 0x2a, 0x0d, 0x18, 0xc7, 0xf7, 0xa7, 0xdc, 0x80, 0x2f, 0x7e, 0x05, 0x9e, 0x0c, 0x69, 0xae, 0x16, 0xc8, 0x02, 0x65, 0x17, 0x19, 0x40, 0x6e, 0x04, 0xde, 0x27, 0x65, 0x2f, 0xf8, 0x3d, 0xa4, 0xa7, 0x80, 0xef, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5517 = { .name = "ecdh_secp384r1_5517", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5517_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5517_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5517_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5517_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 237 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5518 for ECDH, tcId is 238 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5518_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_5518_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5518_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5518_sharedsecret[] = { 0x89, 0xc8, 0x04, 0xcb, 0x81, 0x44, 0x33, 0x86, 0xb1, 0x85, 0xbc, 0xd9, 0xe2, 0xe6, 0xc3, 0x5e, 0xe6, 0x17, 0x7c, 0x3b, 0x90, 0x29, 0x89, 0x85, 0xc4, 0xe8, 0x1a, 0x89, 0xd5, 0x20, 0xcc, 0xeb, 0x17, 0xd7, 0x29, 0x54, 0x0e, 0x56, 0xec, 0xc3, 0x43, 0xc2, 0x6b, 0xf3, 0x14, 0xf2, 0xd0, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_5518 = { .name = "ecdh_secp384r1_5518", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5518_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5518_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5518_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5518_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 238 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5519 for ECDH, tcId is 239 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5519_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x66, 0x60, 0x04, 0x1b, 0x1c, 0x79, 0x84, 0x62, 0x0e, 0x8d, 0x7f, 0xd7, 0xcc, 0xdb, 0x50, 0xcc, 0x3b, 0xa8, 0x16, 0xda, 0x14, 0xd4, 0x1a, 0x4d, 0x8a, 0xff, 0xab, 0xa8, 0x48, 0x88, 0x67, 0xf0, 0xca, 0x5a, 0x24, 0xf8, 0xd4, 0x2d, 0xd7, 0xe4, 0x4b, 0x53, 0x0a, 0x27, 0xdc, 0x5b, 0x58, 0xda, }; static const unsigned char ecdh_secp384r1_5519_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5519_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5519_sharedsecret[] = { 0x35, 0x51, 0x31, 0x57, 0xe8, 0x04, 0xbd, 0x91, 0x8d, 0x04, 0xde, 0x20, 0x27, 0x78, 0xb8, 0x1a, 0x6f, 0xc7, 0xad, 0x8a, 0xa5, 0x41, 0xee, 0x94, 0x11, 0x6a, 0x0f, 0x18, 0x46, 0x67, 0x25, 0xd7, 0x5e, 0x71, 0xc6, 0x94, 0x2b, 0xf0, 0x44, 0xb1, 0xb0, 0xec, 0xba, 0x19, 0xdb, 0x33, 0xe0, 0xde, }; static const wycheproof_ecdh_test ecdh_secp384r1_5519 = { .name = "ecdh_secp384r1_5519", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5519_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5519_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5519_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5519_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 239 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5520 for ECDH, tcId is 240 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5520_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x14, 0x1b, 0x9e, 0xe5, 0x31, 0x0e, 0xa8, 0x17, 0x01, 0x31, 0xb6, 0x04, 0x48, 0x4a, 0x6d, 0x67, 0x7e, 0xd4, 0x25, 0x76, 0x04, 0x5b, 0x71, 0x43, 0xc0, 0x26, 0x71, 0x0a, 0xe9, 0x2b, 0x27, 0x7a, 0xfb, 0xbe, 0xa0, 0xc4, 0x45, 0x8c, 0x22, 0x0d, 0x56, 0x1e, 0x69, 0x40, 0x4d, 0xc7, 0xd8, 0x88, }; static const unsigned char ecdh_secp384r1_5520_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5520_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5520_sharedsecret[] = { 0x10, 0x20, 0x80, 0xc0, 0x47, 0x88, 0x1d, 0x19, 0xae, 0xfb, 0x01, 0xc2, 0x9c, 0x82, 0xa4, 0xfb, 0x32, 0x8a, 0x8e, 0xa6, 0xe6, 0xd6, 0xc9, 0x14, 0xaf, 0x73, 0x10, 0x05, 0x07, 0xc8, 0xee, 0x49, 0x97, 0x99, 0xaa, 0xa6, 0x46, 0xde, 0x0e, 0xa8, 0xc2, 0x72, 0x7c, 0x0b, 0x5e, 0xd2, 0x43, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5520 = { .name = "ecdh_secp384r1_5520", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5520_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5520_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5520_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5520_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 240 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5521 for ECDH, tcId is 241 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5521_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x70, 0x37, 0x03, 0x85, 0x41, 0x3d, 0x3e, 0xff, 0x6f, 0xa3, 0x40, 0x7b, 0xa2, 0x4f, 0x68, 0x2c, 0x2b, 0x01, 0xb5, 0x14, 0x45, 0xdb, 0xdf, 0x5e, 0xf7, 0xb0, 0xdd, 0x09, 0x79, 0xf1, 0x7e, 0x71, 0x3e, 0x09, 0x08, 0x15, 0x71, 0xf1, 0xe9, 0x4d, 0xfb, 0x66, 0xbf, 0x28, 0x20, 0x02, 0xf3, 0x9f, }; static const unsigned char ecdh_secp384r1_5521_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5521_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5521_sharedsecret[] = { 0xf6, 0x89, 0xf6, 0xe4, 0x75, 0xb4, 0xe1, 0x51, 0x62, 0x52, 0x1a, 0xca, 0xb4, 0x63, 0x7a, 0x3c, 0xdb, 0x9c, 0xb4, 0x2a, 0xa9, 0x2f, 0x91, 0x14, 0xb0, 0xee, 0x30, 0x0d, 0xda, 0xe8, 0x9d, 0x5e, 0xaf, 0xff, 0x34, 0x63, 0xa1, 0xf5, 0x00, 0x4a, 0x2a, 0x1b, 0xd4, 0xae, 0xff, 0xa4, 0x7b, 0x78, }; static const wycheproof_ecdh_test ecdh_secp384r1_5521 = { .name = "ecdh_secp384r1_5521", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5521_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5521_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5521_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5521_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 241 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5522 for ECDH, tcId is 242 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5522_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x11, 0x2e, 0x19, 0x1f, 0x1f, 0x78, 0xbb, 0xc5, 0x4b, 0x6c, 0xc4, 0xf0, 0xb1, 0xe5, 0x9a, 0xe8, 0xc6, 0xff, 0x1a, 0x07, 0xf5, 0x12, 0x8e, 0x41, 0xdf, 0xa2, 0x82, 0x8e, 0x1b, 0x65, 0x38, 0xd4, 0xfa, 0x2c, 0xa2, 0x39, 0x4c, 0x6a, 0xab, 0x34, 0x49, 0xdc, 0xb3, 0xfc, 0x4e, 0xb4, 0x4c, 0x09, }; static const unsigned char ecdh_secp384r1_5522_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5522_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5522_sharedsecret[] = { 0xf3, 0x48, 0x62, 0x44, 0x11, 0x9b, 0x36, 0x32, 0xfd, 0x55, 0xbe, 0x9e, 0x69, 0x51, 0xeb, 0x5d, 0x9c, 0x8c, 0x62, 0xf6, 0xa2, 0x70, 0x42, 0xf9, 0x4b, 0x92, 0x41, 0x55, 0xec, 0xfd, 0x4f, 0xf8, 0x74, 0x4b, 0xa3, 0xd2, 0x5b, 0xcf, 0x85, 0xa7, 0xb9, 0x25, 0xbd, 0x28, 0xa1, 0x2b, 0x89, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5522 = { .name = "ecdh_secp384r1_5522", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5522_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5522_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5522_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5522_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 242 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5523 for ECDH, tcId is 243 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5523_peerpubkey[] = { 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x02, 0x8a, 0x4c, 0x8d, 0xa5, 0xa0, 0x51, 0x12, 0xfe, 0x60, 0x25, 0xef, 0x41, 0x90, 0x89, 0x69, 0xde, 0x20, 0xd0, 0x5d, 0x96, 0x68, 0xe5, 0xc8, 0x52, 0xef, 0x2d, 0x49, 0x21, 0x72, 0xdd, 0xc2, 0xa0, 0xa6, 0x22, 0xfc, 0x48, 0x81, 0x64, 0xfc, 0xc1, 0xa0, 0x76, 0xb8, 0x72, 0x94, 0x2a, 0xf2, }; static const unsigned char ecdh_secp384r1_5523_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5523_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5523_sharedsecret[] = { 0x81, 0x71, 0xb7, 0xc8, 0x0d, 0x4c, 0x90, 0xbb, 0x58, 0xae, 0x54, 0x39, 0x39, 0x21, 0xab, 0x9c, 0x5c, 0x0b, 0x31, 0x96, 0xf0, 0x45, 0xe9, 0xfe, 0x5c, 0x8b, 0x16, 0x8f, 0x0e, 0x5f, 0x6a, 0x77, 0xe1, 0xaa, 0x34, 0xec, 0xed, 0xc5, 0x48, 0x1c, 0xe5, 0x5a, 0xb3, 0x4c, 0x14, 0xe0, 0xf2, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp384r1_5523 = { .name = "ecdh_secp384r1_5523", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5523_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5523_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5523_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5523_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 243 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5524 for ECDH, tcId is 244 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5524_peerpubkey[] = { 0x3b, 0x5e, 0xed, 0x80, 0x72, 0x7b, 0xcb, 0xc5, 0x11, 0x3b, 0x8a, 0x9e, 0x4d, 0xb1, 0xc8, 0x1b, 0x1d, 0xdd, 0xc2, 0xd9, 0x9f, 0xf5, 0x6d, 0x9c, 0x3c, 0x10, 0x54, 0x34, 0x89, 0x13, 0xbd, 0xe2, 0x96, 0x31, 0x1c, 0x4b, 0xd2, 0xfa, 0x89, 0x9b, 0x4d, 0x0e, 0x66, 0xaa, 0xa1, 0xb6, 0xa0, 0xdd, 0x7b, 0x7f, 0x0f, 0x28, 0xd5, 0x5e, 0x2f, 0x3a, 0x50, 0xf1, 0xf1, 0xbe, 0xf3, 0x97, 0x68, 0x34, 0xa0, 0x5b, 0x43, 0x41, 0x8e, 0x97, 0x93, 0x03, 0xbc, 0x03, 0x63, 0xed, 0x16, 0xd2, 0xd0, 0xb4, 0x01, 0x1c, 0xc3, 0x7b, 0x3c, 0x06, 0xad, 0x73, 0x15, 0x4f, 0xae, 0xab, 0x79, 0x15, 0xcd, 0x87, }; static const unsigned char ecdh_secp384r1_5524_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5524_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5524_sharedsecret[] = { 0x1f, 0xe6, 0xfe, 0xa5, 0xf0, 0x0d, 0x30, 0x05, 0xab, 0xaa, 0xe2, 0x26, 0x7f, 0xf1, 0x8e, 0x43, 0x09, 0x15, 0x83, 0x8d, 0x87, 0x90, 0x9a, 0xb5, 0x03, 0x88, 0x5e, 0xdf, 0x38, 0xbe, 0x76, 0x18, 0xec, 0xb3, 0x21, 0xf0, 0xa4, 0xdf, 0x71, 0xb0, 0x91, 0x3f, 0xbf, 0x12, 0xc7, 0x6f, 0xc1, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp384r1_5524 = { .name = "ecdh_secp384r1_5524", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5524_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5524_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5524_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5524_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 244 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5525 for ECDH, tcId is 245 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5525_peerpubkey[] = { 0x6a, 0x99, 0xa5, 0xac, 0xd4, 0xa7, 0xed, 0xb1, 0xc7, 0x07, 0xd7, 0xf8, 0xbe, 0x12, 0xe8, 0x11, 0x40, 0x33, 0x8e, 0x3e, 0x14, 0xba, 0x56, 0x3c, 0x70, 0x3c, 0x68, 0x1a, 0x31, 0x9a, 0x3f, 0x9c, 0xe1, 0xf9, 0x0f, 0x03, 0x2b, 0xf8, 0x40, 0xf3, 0x75, 0x8e, 0x89, 0xcb, 0x85, 0x2c, 0xec, 0xa6, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_5525_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5525_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5525_sharedsecret[] = { 0xf5, 0x8a, 0xdc, 0x13, 0xff, 0x99, 0x7d, 0x38, 0x38, 0x39, 0x10, 0xdb, 0x7b, 0xef, 0xb1, 0x76, 0x70, 0x39, 0x3a, 0x33, 0xd9, 0x5b, 0x04, 0x9c, 0x2a, 0xa1, 0x9d, 0x76, 0x0c, 0x8e, 0x72, 0x8e, 0xce, 0xdd, 0x32, 0x16, 0x84, 0x76, 0xb9, 0x0b, 0x26, 0xa3, 0x74, 0x2d, 0xcc, 0x12, 0x1b, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_5525 = { .name = "ecdh_secp384r1_5525", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5525_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5525_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5525_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5525_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 245 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5526 for ECDH, tcId is 246 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5526_peerpubkey[] = { 0x7c, 0x25, 0xa4, 0xf5, 0x7f, 0x76, 0xab, 0x13, 0xb2, 0x5c, 0xab, 0x3c, 0x26, 0x5d, 0xb9, 0xd9, 0xbd, 0x92, 0x5f, 0xec, 0xbf, 0x7b, 0xf9, 0x3b, 0xef, 0x13, 0x08, 0x77, 0x86, 0x46, 0x62, 0x8d, 0xec, 0xab, 0x06, 0x7e, 0xd9, 0x88, 0xa9, 0x75, 0x5c, 0xd8, 0x8e, 0x88, 0xde, 0x36, 0x71, 0x04, 0x56, 0x2e, 0xe0, 0xc5, 0x7e, 0x71, 0xd9, 0x6c, 0xef, 0xe3, 0x1b, 0x4c, 0x40, 0x45, 0xbd, 0x40, 0x86, 0xa3, 0x8e, 0x8a, 0xb9, 0xad, 0xf2, 0xd5, 0x56, 0x7b, 0xe3, 0x18, 0x05, 0x1d, 0x70, 0xf3, 0xaa, 0x68, 0xb7, 0x53, 0xf2, 0x71, 0xab, 0x03, 0x2b, 0x6a, 0xbc, 0xce, 0x91, 0x9e, 0x29, 0x62, }; static const unsigned char ecdh_secp384r1_5526_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5526_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5526_sharedsecret[] = { 0x56, 0x29, 0x96, 0x84, 0xec, 0x5c, 0xeb, 0x09, 0xba, 0x4d, 0x94, 0xd1, 0x23, 0x10, 0x05, 0xa8, 0x26, 0xc9, 0xc0, 0x8a, 0x52, 0x19, 0xc7, 0x57, 0xe0, 0x13, 0x6c, 0xbe, 0x8b, 0x64, 0x30, 0xba, 0xdd, 0x49, 0x25, 0x17, 0x2f, 0x29, 0x39, 0x89, 0x1d, 0xa7, 0xc7, 0x89, 0x38, 0x50, 0x51, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5526 = { .name = "ecdh_secp384r1_5526", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5526_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5526_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5526_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5526_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 246 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5527 for ECDH, tcId is 247 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5527_peerpubkey[] = { 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x02, 0x44, 0x80, 0xab, 0x33, 0xcb, 0x4b, 0xf7, 0xcb, 0x79, 0xc0, 0x24, 0xee, 0xad, 0xe3, 0xfd, 0x64, 0x1e, 0x2f, 0x30, 0x03, 0x69, 0x84, 0x00, 0xe8, 0x98, 0x6a, 0x73, 0x43, 0xa5, 0xda, 0x59, 0xa3, 0xb2, 0x6e, 0xea, 0x4b, 0x41, 0x76, 0xe5, 0x32, 0x39, 0x37, 0x14, 0x37, 0xd8, 0x34, 0xa1, 0xa7, }; static const unsigned char ecdh_secp384r1_5527_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5527_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5527_sharedsecret[] = { 0x19, 0x11, 0xa0, 0xee, 0x6a, 0xeb, 0xe2, 0x63, 0xfd, 0xcf, 0x3d, 0xb0, 0x73, 0xf2, 0x59, 0x8c, 0xda, 0xfa, 0xbe, 0xc2, 0x12, 0x3a, 0x2f, 0x24, 0xa2, 0x8c, 0x3d, 0x91, 0x51, 0xc8, 0x71, 0xf3, 0x2d, 0x6d, 0xc2, 0xf3, 0x1d, 0x25, 0xaf, 0x9c, 0x49, 0x8f, 0xd6, 0x8d, 0xa2, 0x3e, 0x5b, 0xef, }; static const wycheproof_ecdh_test ecdh_secp384r1_5527 = { .name = "ecdh_secp384r1_5527", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5527_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5527_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5527_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5527_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 247 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5528 for ECDH, tcId is 248 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5528_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x97, 0xda, 0x4c, 0x07, 0x51, 0xce, 0xd1, 0x6d, 0xe8, 0x0d, 0x16, 0xab, 0x7c, 0x65, 0x4a, 0x5d, 0xc2, 0x7d, 0x09, 0x26, 0x26, 0xd0, 0x86, 0x5a, 0x19, 0x2a, 0x1c, 0x5e, 0xa7, 0xc1, 0xb8, 0x8c, 0x9f, 0xca, 0xb0, 0x57, 0x94, 0x67, 0x41, 0xe4, 0x1c, 0xc2, 0x8c, 0x80, 0xec, 0x0b, 0x9a, }; static const unsigned char ecdh_secp384r1_5528_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5528_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5528_sharedsecret[] = { 0x15, 0x90, 0x06, 0x43, 0xe2, 0xe0, 0x58, 0x39, 0x76, 0x97, 0x4b, 0x05, 0xf8, 0x3c, 0x7a, 0x96, 0x61, 0x14, 0x25, 0xf7, 0xc4, 0xa6, 0xeb, 0x51, 0x91, 0x6a, 0xb9, 0x58, 0xa0, 0x37, 0xfd, 0x9c, 0xc1, 0x72, 0xbd, 0xcf, 0xff, 0x45, 0x40, 0xa2, 0xff, 0x3c, 0xe6, 0x4e, 0x65, 0x05, 0x55, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5528 = { .name = "ecdh_secp384r1_5528", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5528_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5528_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5528_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5528_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 248 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5529 for ECDH, tcId is 249 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5529_peerpubkey[] = { 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x6c, 0x70, 0x89, 0x8a, 0xe6, 0xfb, 0x31, 0xfa, 0x2f, 0x08, 0x65, 0x62, 0xaf, 0x2d, 0x10, 0x48, 0x6b, 0xa4, 0xc6, 0xfd, 0x5e, 0x41, 0xdf, 0xe4, 0xaa, 0x61, 0x59, 0x8b, 0x47, 0x07, 0xa3, 0xbc, 0x27, 0x6a, 0x62, 0xfe, 0xb1, 0xb9, 0x85, 0x57, 0xe3, 0xb1, 0x7c, 0x02, 0x5f, 0x7a, 0xdf, 0x4e, }; static const unsigned char ecdh_secp384r1_5529_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5529_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5529_sharedsecret[] = { 0x88, 0xa5, 0x44, 0xa7, 0x69, 0xd5, 0xc3, 0x4a, 0x05, 0x14, 0x16, 0xbd, 0x50, 0x9d, 0xfa, 0xc9, 0x11, 0x86, 0x3f, 0x60, 0x4c, 0x83, 0xea, 0x84, 0x4b, 0xf0, 0xe4, 0xc5, 0xc2, 0x72, 0xde, 0xc8, 0x6d, 0x05, 0x7a, 0x88, 0xb1, 0x52, 0xa9, 0x27, 0x47, 0x01, 0x93, 0x8c, 0x70, 0x59, 0x00, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp384r1_5529 = { .name = "ecdh_secp384r1_5529", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5529_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5529_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5529_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5529_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 249 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5530 for ECDH, tcId is 250 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5530_peerpubkey[] = { 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0e, 0xb1, 0x59, 0x28, 0x58, 0xb6, 0xe6, 0xe3, 0xa1, 0x99, 0xc0, 0xf3, 0xe7, 0xc5, 0xf0, 0xb4, 0xa9, 0x29, 0x15, 0x93, 0x6e, 0xfb, 0x8b, 0xc0, 0x40, 0x76, 0x80, 0xeb, 0x72, 0x74, 0xbe, 0x74, 0x22, 0x15, 0x6c, 0xe8, 0xcf, 0xc8, 0xb5, 0x05, 0xb2, 0xd9, 0x02, 0xc3, 0x99, 0x92, 0x38, 0x0f, }; static const unsigned char ecdh_secp384r1_5530_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5530_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5530_sharedsecret[] = { 0xb7, 0xdb, 0x26, 0xb2, 0x86, 0xe7, 0x52, 0x7c, 0xb1, 0xf4, 0x54, 0x78, 0x2f, 0xe5, 0x41, 0x86, 0x2f, 0xf0, 0xf8, 0xd7, 0xee, 0xd9, 0x60, 0xe2, 0x28, 0x55, 0xde, 0xb7, 0xac, 0x2a, 0x69, 0x61, 0x16, 0x68, 0xc7, 0x77, 0xc5, 0x3b, 0xb7, 0x4c, 0x2b, 0xcd, 0x40, 0xed, 0xfb, 0xf7, 0x94, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_5530 = { .name = "ecdh_secp384r1_5530", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5530_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5530_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5530_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5530_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 250 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5531 for ECDH, tcId is 251 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5531_peerpubkey[] = { 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x49, 0x87, 0xab, 0xae, 0x41, 0x28, 0x09, 0xc2, 0xfa, 0x48, 0xfd, 0x23, 0xb1, 0xbd, 0xf9, 0xe6, 0x22, 0xf5, 0xa6, 0x06, 0xc4, 0x41, 0x17, 0x21, 0x5f, 0xfa, 0x61, 0xb1, 0x8e, 0xf4, 0x6e, 0x54, 0xa7, 0xfb, 0xbf, 0x11, 0xf9, 0xa6, 0xba, 0x59, 0xc9, 0x91, 0xb4, 0xae, 0x50, 0x1f, 0xed, 0xce, }; static const unsigned char ecdh_secp384r1_5531_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5531_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5531_sharedsecret[] = { 0xb1, 0xe8, 0xaa, 0xb1, 0xaa, 0x63, 0x3d, 0x98, 0xdc, 0x6b, 0x76, 0x85, 0x94, 0xe1, 0xe3, 0xed, 0xb8, 0x01, 0xa9, 0xef, 0x48, 0x3f, 0x28, 0x7c, 0x83, 0xe1, 0x97, 0x44, 0xd2, 0xad, 0x34, 0x3a, 0xd3, 0xde, 0xbd, 0xc4, 0xdc, 0x17, 0x82, 0x13, 0xad, 0x68, 0x76, 0xb5, 0x22, 0x84, 0xf5, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_5531 = { .name = "ecdh_secp384r1_5531", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5531_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5531_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5531_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5531_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 251 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5532 for ECDH, tcId is 252 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5532_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x36, 0x91, 0xfe, 0x49, 0x3d, 0x4d, 0x28, 0xbf, 0x8e, 0xe1, 0xdf, 0xec, 0x81, 0x2d, 0x6c, 0x30, 0x6e, 0xae, 0x08, 0x42, 0x91, 0x9e, 0xda, 0x6d, 0xc5, 0x25, 0xf0, 0xd4, 0x9a, 0xc2, 0xd2, 0x6a, 0x99, 0x22, 0x51, 0x91, 0x21, 0x39, 0xa2, 0x93, 0x68, 0x49, 0xf9, 0xd6, 0xfa, 0x94, 0x9a, 0x68, }; static const unsigned char ecdh_secp384r1_5532_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5532_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5532_sharedsecret[] = { 0xb0, 0xde, 0x00, 0x6f, 0x80, 0xf6, 0xf8, 0x9e, 0x4e, 0xea, 0x6e, 0x46, 0xdf, 0xe3, 0x05, 0x15, 0x30, 0x05, 0x61, 0x2d, 0x1e, 0x90, 0x31, 0x71, 0xec, 0x28, 0x86, 0x23, 0x09, 0x71, 0x96, 0x1b, 0x52, 0x02, 0xa9, 0xf3, 0x18, 0x7b, 0xda, 0xc4, 0x13, 0xac, 0x24, 0xc8, 0x36, 0xad, 0xf7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp384r1_5532 = { .name = "ecdh_secp384r1_5532", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5532_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5532_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5532_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5532_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 252 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5533 for ECDH, tcId is 253 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5533_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x61, 0x58, 0x42, 0xaa, 0x06, 0xb0, 0x6f, 0x78, 0xf0, 0xa6, 0x6f, 0x7b, 0xea, 0x88, 0xd4, 0xb6, 0xee, 0x59, 0x65, 0x3e, 0xea, 0xa0, 0x0d, 0xc5, 0xe0, 0xa2, 0xb6, 0x58, 0xf9, 0x69, 0xb7, 0x1a, 0xf9, 0x0c, 0x9b, 0x4e, 0x96, 0xbd, 0x3c, 0xa3, 0x38, 0x46, 0x95, 0x5b, 0xdc, 0xcb, 0xd3, 0x59, }; static const unsigned char ecdh_secp384r1_5533_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5533_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5533_sharedsecret[] = { 0xca, 0x8c, 0xfa, 0x42, 0xc5, 0xe3, 0x74, 0x91, 0x4c, 0x14, 0xd6, 0x40, 0x2b, 0x1a, 0x99, 0x20, 0x8e, 0x47, 0xe0, 0x2e, 0xc4, 0x98, 0x18, 0x91, 0x36, 0x94, 0xea, 0x08, 0x22, 0xa2, 0xcc, 0x6c, 0x31, 0x02, 0x59, 0xa8, 0xf3, 0xab, 0x75, 0x59, 0xb9, 0x97, 0x4b, 0xc4, 0xc2, 0xfa, 0x33, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5533 = { .name = "ecdh_secp384r1_5533", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5533_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5533_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5533_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5533_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 253 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5534 for ECDH, tcId is 254 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5534_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_5534_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5534_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5534_sharedsecret[] = { 0xed, 0xf0, 0x40, 0xba, 0xce, 0x18, 0xd9, 0x0b, 0xf9, 0xce, 0x72, 0x0d, 0xf2, 0xa3, 0xb3, 0x1d, 0x76, 0xd9, 0x5b, 0x7e, 0xd9, 0x53, 0x0a, 0x15, 0x9a, 0xc0, 0xb2, 0x4e, 0x82, 0xa8, 0x71, 0x03, 0x3e, 0xad, 0xa4, 0x05, 0x52, 0xf9, 0xe6, 0x06, 0xf7, 0x11, 0x5e, 0x6a, 0x78, 0x92, 0x75, 0x11, }; static const wycheproof_ecdh_test ecdh_secp384r1_5534 = { .name = "ecdh_secp384r1_5534", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5534_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5534_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5534_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5534_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 254 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5535 for ECDH, tcId is 255 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5535_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x71, 0xbd, 0x1e, 0x70, 0x0c, 0x34, 0x07, 0x5c, 0x3c, 0xad, 0xe8, 0xce, 0x29, 0xd3, 0x37, 0x24, 0xaf, 0x68, 0xa7, 0x67, 0x2b, 0x26, 0x5a, 0x4e, 0x15, 0x70, 0x55, 0x36, 0x04, 0x40, 0xab, 0x7c, 0x46, 0x1b, 0x8e, 0x9a, 0xc8, 0x02, 0x4e, 0x63, 0xa8, 0xb9, 0xc1, 0x7c, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5535_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5535_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5535_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5535 = { .name = "ecdh_secp384r1_5535", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5535_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5535_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5535_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5535_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 255 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5536 for ECDH, tcId is 256 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5536_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x03, 0x12, 0x3b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x42, 0xe1, 0x8f, 0xf3, 0xcb, 0xf8, 0xa3, 0xc3, 0x52, 0x17, 0x31, 0xd6, 0x2c, 0xc8, 0xdb, 0x50, 0x97, 0x58, 0x98, 0xd4, 0xd9, 0xa5, 0xb1, 0xea, 0x8f, 0xaa, 0xc9, 0xfb, 0xbf, 0x54, 0x82, 0xb9, 0xe4, 0x71, 0x64, 0x37, 0xfd, 0xb1, 0x9c, 0x57, 0x46, 0x3e, 0x84, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5536_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5536_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5536_sharedsecret[] = { 0xea, 0x81, 0x7d, 0xff, 0x44, 0xf1, 0x94, 0x4a, 0x38, 0x44, 0x44, 0x98, 0xf1, 0xb6, 0xc1, 0xa7, 0x0a, 0x8b, 0x91, 0x3a, 0xa3, 0x26, 0xbc, 0x2a, 0xcc, 0x50, 0x68, 0x80, 0x5d, 0x8d, 0xdd, 0x7a, 0x5e, 0x41, 0xb8, 0xee, 0x5b, 0x83, 0x71, 0xa1, 0xcf, 0x3f, 0x7a, 0x09, 0x42, 0x58, 0xe3, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5536 = { .name = "ecdh_secp384r1_5536", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5536_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5536_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5536_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5536_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 256 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5537 for ECDH, tcId is 257 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5537_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x57, 0xb6, 0x9a, 0x01, 0x47, 0x83, 0xdb, 0xfa, 0x49, 0x67, 0xb2, 0xf9, 0xcf, 0xa6, 0x78, 0xa6, 0xf0, 0xb6, 0xe9, 0xcf, 0xd4, 0x16, 0x48, 0xce, 0xc5, 0xb3, 0xc4, 0x98, 0xe7, 0x21, 0x52, 0xda, 0x3f, 0x82, 0xd3, 0xda, 0x2e, 0x8e, 0x9f, 0x8e, 0xf3, 0x7b, 0x11, }; static const unsigned char ecdh_secp384r1_5537_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5537_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5537_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_5537 = { .name = "ecdh_secp384r1_5537", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5537_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5537_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5537_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5537_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 257 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5538 for ECDH, tcId is 258 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5538_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x36, 0xa2, 0x90, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x80, 0xa8, 0x49, 0x65, 0xfe, 0xb8, 0x7c, 0x24, 0x05, 0xb6, 0x98, 0x4d, 0x06, 0x30, 0x59, 0x87, 0x59, 0x0f, 0x49, 0x16, 0x30, 0x2b, 0xe9, 0xb7, 0x31, 0x3a, 0x4c, 0x3a, 0x67, 0x18, 0xde, 0xac, 0x25, 0xc0, 0x7d, 0x2c, 0x25, 0xd1, 0x71, 0x61, 0x71, 0x0c, 0x84, 0xee, }; static const unsigned char ecdh_secp384r1_5538_ourpubkey[] = { 0xcb, 0x52, 0xa5, 0xb3, 0x76, 0x36, 0xb4, 0x21, 0x00, 0x73, 0x42, 0x52, 0x74, 0x42, 0x2b, 0x0a, 0xd6, 0xda, 0xda, 0x39, 0x37, 0xc9, 0x46, 0x12, 0xa4, 0x8c, 0xb2, 0x89, 0x2d, 0xfb, 0xc0, 0x6c, 0x32, 0xad, 0xdb, 0xbe, 0x9d, 0xea, 0x14, 0x2f, 0x09, 0xc3, 0xba, 0x5e, 0x58, 0xf1, 0x54, 0xee, 0x20, 0x8a, 0x84, 0xe0, 0xc7, 0x3a, 0x06, 0x20, 0x87, 0xb4, 0x9c, 0x2d, 0x13, 0x6b, 0x32, 0xce, 0xab, 0x49, 0xad, 0x9d, 0xdc, 0xfa, 0xe9, 0x24, 0x40, 0x29, 0xc4, 0x12, 0x0c, 0xbb, 0x9f, 0xf6, 0x08, 0x7f, 0x2e, 0xbe, 0x56, 0x88, 0xc2, 0x07, 0x97, 0xa6, 0x47, 0xc8, 0x71, 0xd0, 0xd1, 0x04, }; static const unsigned char ecdh_secp384r1_5538_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x9d, 0xb5, 0x9c, 0x2c, 0x02, 0xa5, 0x44, 0x11, 0x92, 0x8d, 0x73, 0xc3, 0x94, 0x5d, 0x15, 0x78, 0x48, 0xdc, 0x36, 0x95, 0x9e, 0xfe, 0xf7, 0x49, 0x5c, 0x85, 0x28, 0xea, 0x28, 0x4c, 0x1c, 0x97, }; static const unsigned char ecdh_secp384r1_5538_sharedsecret[] = { 0xbf, 0xa9, 0x3e, 0x18, 0x4f, 0x76, 0x27, 0x9f, 0xd7, 0x07, 0xd5, 0x3d, 0xdc, 0xb3, 0x62, 0x88, 0x55, 0xcf, 0xaf, 0xb1, 0x11, 0xbc, 0xbd, 0x0b, 0x4d, 0xf6, 0xef, 0x77, 0xae, 0xe6, 0x24, 0x92, 0x4d, 0x68, 0x16, 0x26, 0xa1, 0x53, 0xfa, 0x4e, 0x59, 0xc9, 0x23, 0xb7, 0x1f, 0xc0, 0x90, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp384r1_5538 = { .name = "ecdh_secp384r1_5538", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5538_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5538_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5538_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5538_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge cases for ephemeral key, tcId is 258 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5539 for ECDH, tcId is 259 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5539_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x73, 0x21, 0x52, 0x44, 0x2f, 0xb6, 0xee, 0x5c, 0x3e, 0x6c, 0xe1, 0xd9, 0x20, 0xc0, 0x59, 0xbc, 0x62, 0x35, 0x63, 0x81, 0x4d, 0x79, 0x04, 0x2b, 0x90, 0x3c, 0xe6, 0x0f, 0x1d, 0x44, 0x87, 0xfc, 0xcd, 0x45, 0x0a, 0x86, 0xda, 0x03, 0xf3, 0xe6, 0xed, 0x52, 0x5d, 0x02, 0x01, 0x7b, 0xfd, 0xb3, }; static const unsigned char ecdh_secp384r1_5539_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5539_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5539_sharedsecret[] = { 0xc3, 0xd3, 0x84, 0x50, 0xa5, 0xdf, 0xdb, 0xe6, 0x4f, 0x4b, 0x5d, 0xa3, 0xad, 0xd4, 0xac, 0x13, 0x15, 0xf8, 0x7d, 0x11, 0x72, 0x0f, 0x29, 0xbe, 0xb6, 0xf3, 0x61, 0x6a, 0x65, 0xeb, 0xca, 0x1d, 0x56, 0x9c, 0x0f, 0xae, 0x5c, 0x5b, 0xbb, 0x6d, 0x14, 0x6b, 0xf9, 0x10, 0x3e, 0x64, 0x5b, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5539 = { .name = "ecdh_secp384r1_5539", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5539_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5539_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5539_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5539_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 259 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5540 for ECDH, tcId is 260 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5540_peerpubkey[] = { 0x18, 0x3c, 0x0d, 0x36, 0x50, 0xd3, 0x5a, 0x33, 0x42, 0x3c, 0x0d, 0x00, 0x89, 0x6a, 0xa0, 0xaf, 0x9f, 0x34, 0x02, 0x17, 0xf4, 0x20, 0x86, 0xba, 0x51, 0x20, 0x3d, 0x15, 0x8a, 0x60, 0xfa, 0x91, 0xee, 0x83, 0xb5, 0x20, 0x34, 0xee, 0x61, 0x67, 0xc6, 0x59, 0x3c, 0xe6, 0x7a, 0x31, 0xc3, 0x8a, 0x20, 0x81, 0x3d, 0x9e, 0x7e, 0xea, 0x71, 0x8d, 0x46, 0x48, 0x56, 0x50, 0x42, 0x03, 0x66, 0xdc, 0xc1, 0xcf, 0xdb, 0x5c, 0xde, 0x93, 0xea, 0xb2, 0x83, 0x08, 0xde, 0xf7, 0x58, 0xba, 0x4c, 0x3b, 0xa3, 0x86, 0x13, 0x9d, 0x4a, 0x3a, 0x3b, 0xda, 0xd6, 0x4c, 0x54, 0x19, 0x2f, 0x2b, 0xde, 0x32, }; static const unsigned char ecdh_secp384r1_5540_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5540_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5540_sharedsecret[] = { 0x18, 0x15, 0x09, 0x61, 0x85, 0x9e, 0x3e, 0xfa, 0xd6, 0x26, 0x75, 0x82, 0xf9, 0x74, 0x17, 0xf1, 0x9e, 0xd8, 0xe7, 0xe5, 0x37, 0xb6, 0x92, 0xb9, 0x10, 0x50, 0x94, 0x4a, 0x6f, 0xab, 0x80, 0x30, 0x41, 0x1d, 0xd9, 0x2e, 0x94, 0x13, 0x57, 0xc7, 0x49, 0x4a, 0xf0, 0x11, 0x88, 0x40, 0xa6, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_5540 = { .name = "ecdh_secp384r1_5540", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5540_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5540_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5540_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5540_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 260 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5541 for ECDH, tcId is 261 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5541_peerpubkey[] = { 0xce, 0x5a, 0xd8, 0x11, 0xe7, 0xeb, 0x08, 0x02, 0x4e, 0x40, 0xe3, 0x0c, 0x1c, 0xb2, 0x9c, 0xac, 0xdf, 0xc8, 0xf8, 0x09, 0xf7, 0xf0, 0x11, 0x0e, 0x6b, 0x22, 0x5c, 0x6d, 0x83, 0x36, 0xf6, 0x0c, 0x30, 0xa5, 0x73, 0xef, 0x1b, 0x91, 0x2f, 0x5f, 0xd3, 0x00, 0xb0, 0x61, 0x5e, 0x9f, 0xdf, 0x1f, 0x63, 0x1b, 0xa9, 0x74, 0xbe, 0xb9, 0x54, 0x4b, 0x4a, 0x8c, 0x99, 0x45, 0xf7, 0x2f, 0x3e, 0x5f, 0xc5, 0x69, 0x43, 0x8c, 0x43, 0x03, 0x67, 0x22, 0x79, 0xfa, 0xfa, 0x90, 0x0e, 0x53, 0x69, 0x0a, 0xff, 0x75, 0x3d, 0xa9, 0x2f, 0x40, 0x0a, 0xb6, 0x2d, 0xe8, 0x06, 0x7d, 0xa9, 0x9f, 0xe3, 0x7b, }; static const unsigned char ecdh_secp384r1_5541_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5541_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5541_sharedsecret[] = { 0xcd, 0xfc, 0x94, 0x63, 0xaf, 0x89, 0x16, 0x82, 0xc5, 0x1b, 0x6f, 0x4c, 0x96, 0x56, 0x55, 0x1c, 0x33, 0xb8, 0x07, 0x39, 0xf1, 0x77, 0x61, 0x2f, 0x27, 0xa4, 0xb1, 0xf3, 0x7c, 0x97, 0xfd, 0x80, 0x23, 0x49, 0x5b, 0x0b, 0xc1, 0x5c, 0x68, 0x8a, 0xb1, 0x9b, 0x7f, 0x98, 0x80, 0xef, 0xc8, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_5541 = { .name = "ecdh_secp384r1_5541", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5541_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5541_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5541_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5541_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 261 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5542 for ECDH, tcId is 262 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5542_peerpubkey[] = { 0x42, 0xfa, 0xac, 0x2a, 0xe2, 0xbb, 0xad, 0x43, 0xa6, 0xe4, 0x5a, 0x79, 0x6f, 0x1d, 0xcc, 0x70, 0xca, 0xc4, 0x44, 0xec, 0x15, 0x70, 0xac, 0x76, 0x9d, 0x6e, 0x86, 0x20, 0x74, 0x43, 0xdb, 0x8c, 0x03, 0xa3, 0x3b, 0xa0, 0x78, 0x62, 0xfc, 0xc6, 0x19, 0xce, 0xc8, 0x06, 0xce, 0x88, 0x26, 0xc2, 0x77, 0x6e, 0x31, 0xdd, 0x08, 0x6c, 0x1b, 0x19, 0x32, 0x3b, 0x58, 0x08, 0x45, 0x53, 0xbb, 0x08, 0x25, 0xd0, 0x91, 0xff, 0xb1, 0x23, 0xd2, 0x65, 0xaf, 0xa5, 0x97, 0x0c, 0xb7, 0x2c, 0x2e, 0x68, 0x04, 0xab, 0x32, 0x78, 0x34, 0x29, 0x96, 0x41, 0xe7, 0x0f, 0xf1, 0x42, 0x91, 0x97, 0x5b, 0xb1, }; static const unsigned char ecdh_secp384r1_5542_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5542_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5542_sharedsecret[] = { 0xbe, 0xe4, 0x6c, 0x55, 0x18, 0xe8, 0xe2, 0xf5, 0xc7, 0xfa, 0x23, 0xf2, 0xab, 0x8f, 0xc4, 0x3f, 0x5a, 0x74, 0x19, 0xf7, 0x03, 0x73, 0xda, 0xa1, 0xa6, 0x74, 0x63, 0x0b, 0x16, 0x1e, 0xa3, 0x9c, 0x38, 0x1a, 0x1e, 0xaa, 0xa9, 0x0e, 0xfd, 0x34, 0xae, 0xfa, 0x9a, 0xc6, 0xed, 0xb5, 0x3c, 0x75, }; static const wycheproof_ecdh_test ecdh_secp384r1_5542 = { .name = "ecdh_secp384r1_5542", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5542_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5542_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5542_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5542_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 262 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5543 for ECDH, tcId is 263 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5543_peerpubkey[] = { 0x6a, 0xd6, 0x6f, 0x67, 0x3d, 0x83, 0x2f, 0x8a, 0x86, 0xcf, 0xd7, 0xa6, 0x6d, 0x21, 0x6d, 0x23, 0xa2, 0x65, 0x83, 0x23, 0x5c, 0x28, 0xec, 0xb7, 0xb5, 0x98, 0xff, 0x8d, 0xd1, 0x13, 0x2b, 0xc6, 0xcf, 0x0d, 0xc4, 0x6a, 0x98, 0xc8, 0x64, 0x66, 0x5f, 0x19, 0x5a, 0x99, 0x65, 0x63, 0xe5, 0x77, 0x70, 0xaa, 0xaa, 0xdc, 0xbf, 0x36, 0x53, 0x1a, 0x31, 0x8d, 0xa9, 0x51, 0x20, 0xd9, 0xa8, 0x00, 0x22, 0x6a, 0xc9, 0xfb, 0xff, 0x06, 0xf4, 0x78, 0x37, 0x91, 0x1c, 0x7b, 0x95, 0xf5, 0x18, 0x7c, 0x43, 0xef, 0x95, 0x9a, 0x4e, 0xa3, 0xe1, 0x17, 0xb8, 0x47, 0xf1, 0xdd, 0x1f, 0x8c, 0xc4, 0xb2, }; static const unsigned char ecdh_secp384r1_5543_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5543_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5543_sharedsecret[] = { 0x1e, 0xf2, 0xe4, 0x85, 0x53, 0x1e, 0x26, 0xd6, 0x9a, 0xb7, 0xc7, 0xb8, 0xc2, 0x7c, 0x1b, 0x4b, 0xe1, 0x52, 0x72, 0x89, 0x61, 0x87, 0x56, 0x81, 0x04, 0x26, 0x83, 0x67, 0x8c, 0x7b, 0xb4, 0xef, 0x8b, 0x59, 0xc7, 0xc1, 0xd6, 0x2a, 0xdb, 0x5f, 0x03, 0x4b, 0xb2, 0x88, 0x6f, 0xf6, 0x91, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5543 = { .name = "ecdh_secp384r1_5543", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5543_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5543_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5543_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5543_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 263 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5544 for ECDH, tcId is 264 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5544_peerpubkey[] = { 0xf8, 0x42, 0xe8, 0xf4, 0x71, 0x51, 0x94, 0x9b, 0x5c, 0xb6, 0xcd, 0xe4, 0xac, 0xc7, 0xa8, 0x3d, 0x90, 0x11, 0x73, 0xae, 0x31, 0x6e, 0xc4, 0x23, 0xe1, 0xc9, 0x66, 0xc8, 0xa3, 0x96, 0x38, 0xff, 0xa6, 0xde, 0xf3, 0x16, 0x0f, 0x7b, 0xea, 0x66, 0x49, 0x82, 0xb9, 0x63, 0x6f, 0x63, 0x9f, 0x72, 0x70, 0x2f, 0xe1, 0xd5, 0x93, 0x45, 0x4f, 0x73, 0xd0, 0x60, 0x50, 0x65, 0x5e, 0x28, 0xec, 0xb8, 0xcf, 0xdf, 0xe1, 0x3d, 0xcc, 0x77, 0x52, 0xbd, 0xe3, 0x8f, 0xe0, 0x07, 0x0b, 0x43, 0xbd, 0xa5, 0xe6, 0xb7, 0x20, 0x3b, 0x45, 0x07, 0x74, 0x71, 0x82, 0x5d, 0xf1, 0xb8, 0x16, 0xa4, 0x28, 0xc9, }; static const unsigned char ecdh_secp384r1_5544_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5544_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5544_sharedsecret[] = { 0xa8, 0x57, 0x3b, 0x49, 0x00, 0x63, 0x62, 0xd9, 0xb7, 0x36, 0x3c, 0x50, 0x29, 0x69, 0xb2, 0x23, 0x3b, 0x2f, 0xc5, 0x73, 0x0c, 0xf5, 0x75, 0xd4, 0x14, 0xc5, 0x0a, 0x45, 0xf0, 0xa5, 0xb4, 0xd5, 0x18, 0xbd, 0x45, 0x02, 0x88, 0xc8, 0x9e, 0x81, 0xd5, 0x17, 0x1e, 0xfa, 0xdb, 0xce, 0x59, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp384r1_5544 = { .name = "ecdh_secp384r1_5544", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5544_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5544_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5544_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5544_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 264 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5545 for ECDH, tcId is 265 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5545_peerpubkey[] = { 0x64, 0xe6, 0x8d, 0x8a, 0x8e, 0x6d, 0x44, 0x14, 0x2f, 0xd0, 0xb3, 0x35, 0x32, 0x75, 0xdf, 0x4b, 0xe9, 0x5b, 0x0f, 0xf9, 0x46, 0x5d, 0x11, 0x4a, 0x18, 0xff, 0x23, 0x8f, 0xa4, 0xd3, 0x94, 0x7f, 0xf4, 0xe3, 0xfc, 0x66, 0x97, 0x0d, 0x85, 0x73, 0x1d, 0x78, 0x4b, 0x0a, 0x17, 0x15, 0x78, 0x87, 0xcb, 0x96, 0x1c, 0xf6, 0x36, 0xc0, 0xe8, 0xd4, 0xb5, 0xf8, 0xdb, 0x00, 0x60, 0xc2, 0xb6, 0x99, 0xed, 0x75, 0x0e, 0x92, 0xa0, 0x5a, 0xc4, 0xda, 0x49, 0x78, 0x0b, 0x8a, 0x48, 0x72, 0x9c, 0x6c, 0x2b, 0x86, 0x6c, 0x75, 0x75, 0x4a, 0xfb, 0x2c, 0x7c, 0x2d, 0x66, 0x1e, 0xcf, 0x64, 0x0c, 0xc2, }; static const unsigned char ecdh_secp384r1_5545_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5545_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5545_sharedsecret[] = { 0x33, 0xf9, 0xaa, 0x30, 0x84, 0x45, 0xcd, 0xc2, 0xd1, 0x59, 0xcd, 0x39, 0xc3, 0x3b, 0x49, 0x53, 0x82, 0xff, 0x8b, 0x9e, 0x21, 0xb6, 0xd1, 0xb1, 0x60, 0x57, 0x7a, 0x4b, 0x3c, 0x5d, 0xaf, 0x00, 0xb8, 0xda, 0xd3, 0xc8, 0x38, 0x52, 0xf1, 0x8f, 0x27, 0xa4, 0x40, 0x2c, 0xe9, 0x44, 0x21, 0xee, }; static const wycheproof_ecdh_test ecdh_secp384r1_5545 = { .name = "ecdh_secp384r1_5545", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5545_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5545_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5545_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5545_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 265 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5546 for ECDH, tcId is 266 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5546_peerpubkey[] = { 0x23, 0x7e, 0x5a, 0x05, 0xa3, 0xb9, 0xdd, 0x16, 0xf2, 0x7d, 0x1c, 0xc0, 0x4d, 0x16, 0xf1, 0x9e, 0xc3, 0xd2, 0x78, 0x81, 0xb9, 0x0c, 0x20, 0x49, 0xfd, 0x26, 0x65, 0xce, 0xc7, 0xea, 0xae, 0x1c, 0xac, 0xde, 0xd4, 0xe0, 0xf8, 0xab, 0xba, 0x5a, 0x64, 0xd4, 0x18, 0x3a, 0x71, 0x44, 0x9d, 0x9b, 0x74, 0x10, 0x73, 0xdc, 0x25, 0x94, 0xd0, 0x2a, 0xc9, 0xa8, 0x89, 0x88, 0xe5, 0x1d, 0x7b, 0xee, 0x22, 0x11, 0x19, 0x62, 0xf6, 0x37, 0x48, 0xef, 0xdc, 0x8c, 0x31, 0x1f, 0x63, 0x1a, 0xe8, 0x68, 0x0c, 0x89, 0x96, 0x02, 0x8d, 0xa4, 0xe9, 0x56, 0xac, 0x12, 0x84, 0xd0, 0xc0, 0x16, 0x14, 0xf5, }; static const unsigned char ecdh_secp384r1_5546_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5546_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5546_sharedsecret[] = { 0xdd, 0xf7, 0xfe, 0xa5, 0x2b, 0x92, 0xe1, 0x54, 0x4f, 0xb1, 0xc7, 0xce, 0x22, 0x74, 0x40, 0x9b, 0xca, 0x17, 0x04, 0xf4, 0x4b, 0xc0, 0xae, 0x1a, 0x6a, 0x8b, 0x38, 0x8e, 0xaf, 0x31, 0x6c, 0x90, 0xbc, 0xe9, 0x9b, 0x0c, 0x20, 0x3f, 0x75, 0x56, 0xe5, 0xba, 0xaa, 0x26, 0xc6, 0xb7, 0xad, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp384r1_5546 = { .name = "ecdh_secp384r1_5546", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5546_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5546_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5546_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5546_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 266 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5547 for ECDH, tcId is 267 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5547_peerpubkey[] = { 0x81, 0x0f, 0xac, 0xe9, 0x95, 0x12, 0xbe, 0xc2, 0x59, 0xd5, 0x75, 0x22, 0x9d, 0x95, 0x86, 0x79, 0x1b, 0xdf, 0xb1, 0xb2, 0x21, 0xd2, 0x3c, 0x17, 0x38, 0xe4, 0xf9, 0xaf, 0x04, 0x98, 0xf5, 0x4b, 0x18, 0xcc, 0x0c, 0xbb, 0x01, 0xb6, 0x4c, 0xf3, 0x41, 0x1e, 0xc4, 0xb6, 0x84, 0x80, 0xdb, 0x6d, 0x6c, 0x06, 0xe6, 0x20, 0x91, 0x88, 0xf3, 0x54, 0x32, 0x3b, 0x4d, 0xb6, 0xf5, 0x4f, 0x2b, 0x1d, 0xfc, 0x5c, 0x1c, 0x3d, 0xd4, 0xfe, 0xf0, 0xcb, 0x37, 0x9a, 0x7d, 0x7e, 0xa0, 0x85, 0xac, 0xda, 0xc9, 0xe6, 0x0e, 0x04, 0xf8, 0xdb, 0x48, 0x8b, 0xe9, 0x7f, 0x81, 0xde, 0xd6, 0x6e, 0xa3, 0x3e, }; static const unsigned char ecdh_secp384r1_5547_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5547_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5547_sharedsecret[] = { 0xd2, 0x28, 0x7c, 0xcb, 0x64, 0x2a, 0x76, 0xe0, 0x01, 0x12, 0x4d, 0xba, 0x6c, 0x6c, 0xe1, 0x9e, 0x82, 0x53, 0x66, 0x90, 0xab, 0xf5, 0x42, 0x10, 0x4c, 0xbd, 0x45, 0xc8, 0x70, 0x8e, 0x46, 0x2d, 0x8c, 0xe0, 0x6e, 0x05, 0xad, 0x2a, 0x0f, 0xea, 0x4d, 0x68, 0x49, 0x2f, 0xcf, 0x37, 0x6a, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp384r1_5547 = { .name = "ecdh_secp384r1_5547", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5547_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5547_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5547_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5547_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 267 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5548 for ECDH, tcId is 268 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5548_peerpubkey[] = { 0xf0, 0xb0, 0x02, 0x71, 0xa2, 0xbd, 0xde, 0x4b, 0xdd, 0xbd, 0xac, 0x00, 0x40, 0x6a, 0xdf, 0x05, 0x6d, 0x32, 0xb9, 0xb0, 0x3f, 0x4b, 0xd2, 0x9c, 0xc6, 0x60, 0x93, 0xdf, 0x22, 0xe5, 0xda, 0x09, 0xfe, 0x48, 0xca, 0xbf, 0xc8, 0xd4, 0x4b, 0xf1, 0x36, 0xb5, 0xbe, 0x27, 0x5c, 0x7f, 0x53, 0xf6, 0x6c, 0xcd, 0xd0, 0xd0, 0x03, 0x54, 0xa3, 0x07, 0xfe, 0xa0, 0x09, 0x10, 0x70, 0xb6, 0x1f, 0xa9, 0xe2, 0xda, 0x1e, 0x2f, 0x32, 0x9f, 0xad, 0x68, 0x01, 0x34, 0x49, 0xec, 0xf4, 0x77, 0xfe, 0x33, 0x45, 0x80, 0x39, 0xba, 0xc9, 0x11, 0x10, 0x4d, 0xa6, 0x2c, 0x29, 0xc0, 0x81, 0x92, 0xa3, 0x15, }; static const unsigned char ecdh_secp384r1_5548_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5548_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5548_sharedsecret[] = { 0x36, 0x15, 0x1b, 0x0d, 0x1c, 0x1b, 0x28, 0xac, 0x06, 0x2e, 0x08, 0x29, 0xf4, 0x1b, 0xd5, 0x50, 0x44, 0xda, 0xe6, 0xf1, 0xda, 0xf3, 0x0a, 0xb3, 0xff, 0x41, 0x48, 0xa8, 0x3c, 0xcb, 0xcc, 0xf5, 0x07, 0xbe, 0xf7, 0x34, 0x0c, 0x95, 0x44, 0xf0, 0x47, 0xf5, 0x54, 0xc7, 0x12, 0x72, 0xae, 0x24, }; static const wycheproof_ecdh_test ecdh_secp384r1_5548 = { .name = "ecdh_secp384r1_5548", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5548_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5548_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5548_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5548_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 268 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5549 for ECDH, tcId is 269 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5549_peerpubkey[] = { 0xf8, 0x2c, 0xbb, 0xaf, 0x1c, 0x9b, 0x60, 0x63, 0xa1, 0xb5, 0x05, 0x58, 0x07, 0x66, 0xb1, 0x44, 0x6b, 0x6b, 0x5a, 0x99, 0x01, 0x51, 0x70, 0x3e, 0x7a, 0xfd, 0x8a, 0x31, 0x75, 0x38, 0x7f, 0xae, 0x56, 0x70, 0x81, 0x01, 0x9e, 0x0f, 0xdb, 0xa7, 0x96, 0x4e, 0xd6, 0xc0, 0xe4, 0xd0, 0xe4, 0x5e, 0xcf, 0x37, 0x9b, 0xc1, 0xed, 0xa3, 0x0c, 0xe4, 0xfa, 0x56, 0x01, 0x06, 0xb3, 0xd0, 0x9b, 0xf3, 0x8e, 0x9f, 0xcb, 0xec, 0x3e, 0xad, 0xc9, 0xe1, 0x2c, 0x56, 0x22, 0xc0, 0x11, 0x30, 0xc8, 0x70, 0xc6, 0x13, 0x64, 0x98, 0xf5, 0x2b, 0xf6, 0x2f, 0x39, 0x87, 0xde, 0xfd, 0x29, 0x4d, 0xf3, 0x3c, }; static const unsigned char ecdh_secp384r1_5549_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5549_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5549_sharedsecret[] = { 0x24, 0x51, 0xfd, 0x97, 0x98, 0x64, 0x16, 0x94, 0x62, 0xa7, 0x7d, 0x74, 0x2a, 0xdb, 0x6f, 0x45, 0x05, 0xf2, 0xdb, 0x95, 0x6d, 0x2d, 0x2d, 0xea, 0x5b, 0x05, 0xe4, 0x0f, 0x40, 0xf2, 0x65, 0x4f, 0xc1, 0x7d, 0x1c, 0xd1, 0xd3, 0xb3, 0x53, 0x32, 0x2b, 0xf0, 0xd1, 0xf3, 0xcf, 0x82, 0x8c, 0x49, }; static const wycheproof_ecdh_test ecdh_secp384r1_5549 = { .name = "ecdh_secp384r1_5549", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5549_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5549_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5549_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5549_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 269 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5550 for ECDH, tcId is 270 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5550_peerpubkey[] = { 0xcc, 0xec, 0x11, 0x70, 0x25, 0xee, 0xce, 0x29, 0xe0, 0xed, 0x07, 0x7d, 0x98, 0x67, 0x87, 0x38, 0xfd, 0x1a, 0x5c, 0xca, 0x20, 0xe4, 0x0b, 0xb3, 0x22, 0xa4, 0x05, 0x66, 0x83, 0x12, 0x43, 0xda, 0xc8, 0x06, 0x55, 0x5b, 0x85, 0x08, 0xf4, 0xea, 0xa6, 0x8b, 0xeb, 0x4e, 0x78, 0xed, 0x91, 0x76, 0x86, 0x41, 0x5f, 0x11, 0x23, 0x2c, 0x5e, 0xcb, 0x9f, 0x80, 0x5b, 0x0d, 0xcc, 0x6c, 0xe0, 0x6b, 0x57, 0xfd, 0xf4, 0xe4, 0xae, 0x4e, 0x6d, 0x82, 0x24, 0x72, 0xd6, 0x72, 0x5a, 0x9c, 0x1d, 0xa4, 0x1c, 0x2f, 0xee, 0x15, 0x19, 0x58, 0x6c, 0x50, 0x2b, 0xbb, 0x1a, 0x4c, 0xe2, 0x58, 0x28, 0x63, }; static const unsigned char ecdh_secp384r1_5550_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5550_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5550_sharedsecret[] = { 0x0b, 0x3c, 0x06, 0xfb, 0x8c, 0x7c, 0x31, 0xa9, 0x6f, 0xa6, 0xdc, 0x80, 0x25, 0x01, 0x43, 0xe3, 0x9a, 0xf9, 0xe5, 0xc2, 0x01, 0xfd, 0xbe, 0x92, 0x24, 0x57, 0x71, 0xe3, 0x45, 0xcf, 0x78, 0x7f, 0x99, 0x23, 0x4e, 0xcc, 0x1d, 0x68, 0x70, 0x59, 0x9a, 0xd5, 0x0a, 0x1c, 0xad, 0xf6, 0x87, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5550 = { .name = "ecdh_secp384r1_5550", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5550_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5550_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5550_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5550_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 270 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5551 for ECDH, tcId is 271 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5551_peerpubkey[] = { 0x1e, 0x82, 0x9b, 0xdb, 0xd8, 0xa2, 0xc1, 0x32, 0x1d, 0x04, 0x93, 0x2a, 0xac, 0xd4, 0x29, 0x72, 0xf5, 0xb2, 0xac, 0x5b, 0x6a, 0x61, 0xb0, 0x41, 0x21, 0x6c, 0xa9, 0x48, 0x1b, 0xb0, 0xda, 0x8a, 0xbf, 0x6d, 0x5c, 0x1b, 0x63, 0xe8, 0x68, 0x47, 0x9f, 0x88, 0xd9, 0x13, 0x45, 0xcb, 0x91, 0x53, 0xfc, 0xa2, 0xc5, 0x69, 0x8f, 0xd5, 0xb4, 0x04, 0xc9, 0xbc, 0x12, 0x5b, 0xdc, 0x3c, 0x60, 0x8f, 0xe3, 0x85, 0x36, 0x7e, 0xe2, 0xb6, 0x84, 0x08, 0xe9, 0x59, 0xb8, 0x3e, 0xc8, 0xbc, 0x3e, 0xc1, 0xe0, 0x5a, 0x6f, 0xb9, 0x84, 0xfe, 0xdb, 0x25, 0x65, 0x74, 0x88, 0x5f, 0x5d, 0xd9, 0x89, 0x40, }; static const unsigned char ecdh_secp384r1_5551_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5551_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5551_sharedsecret[] = { 0x53, 0x88, 0x90, 0x5a, 0xee, 0x7f, 0x82, 0x6b, 0x9a, 0x5b, 0x46, 0xfa, 0xef, 0xfe, 0x26, 0xd4, 0x9f, 0x85, 0x66, 0xc7, 0xa8, 0xe8, 0xaf, 0x5a, 0x16, 0x53, 0xfc, 0xfb, 0xff, 0x7c, 0x0d, 0xfd, 0xe5, 0x66, 0xf0, 0x43, 0x40, 0x12, 0x48, 0x48, 0x6f, 0xf9, 0x1c, 0x39, 0x0f, 0x5c, 0xc6, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_5551 = { .name = "ecdh_secp384r1_5551", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5551_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5551_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5551_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5551_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 271 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5552 for ECDH, tcId is 272 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5552_peerpubkey[] = { 0x4d, 0xd1, 0xe1, 0xb4, 0x54, 0x81, 0x4f, 0x3b, 0xe1, 0xc6, 0x2e, 0xb8, 0x7c, 0x12, 0x07, 0x72, 0xc2, 0x06, 0x2a, 0x3d, 0x7e, 0x54, 0x61, 0xd5, 0x55, 0x4b, 0x39, 0x63, 0xa9, 0xfb, 0x11, 0x90, 0xdb, 0x96, 0x56, 0x95, 0xca, 0xf5, 0x55, 0xa4, 0x5a, 0xe2, 0x5b, 0xe7, 0x3e, 0x47, 0xc3, 0x74, 0x5b, 0xaa, 0x93, 0xfe, 0x2b, 0xfb, 0x09, 0x4f, 0xe7, 0x18, 0xc8, 0xc9, 0xbd, 0x8e, 0x1e, 0x6e, 0x86, 0xcd, 0x62, 0x9d, 0xca, 0x0b, 0xb9, 0x1e, 0xe9, 0x34, 0xe9, 0x34, 0x69, 0xd4, 0xff, 0xf3, 0x2a, 0x41, 0xdf, 0xd7, 0x8c, 0x27, 0xba, 0x53, 0x4a, 0x3d, 0x59, 0x70, 0xc3, 0x88, 0xef, 0xfb, }; static const unsigned char ecdh_secp384r1_5552_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5552_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5552_sharedsecret[] = { 0xb9, 0x20, 0x29, 0x9b, 0xa2, 0x60, 0x75, 0xd2, 0x64, 0x7c, 0xcb, 0x97, 0x8d, 0x15, 0xa5, 0x4e, 0xf4, 0x83, 0x30, 0xdb, 0x3a, 0x87, 0x94, 0xd8, 0x68, 0xae, 0x02, 0xbf, 0x15, 0x2b, 0x3c, 0x24, 0xff, 0xa9, 0x66, 0x89, 0x3e, 0xa9, 0xeb, 0x5d, 0x3c, 0xce, 0x83, 0xe0, 0x23, 0x9b, 0xe0, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp384r1_5552 = { .name = "ecdh_secp384r1_5552", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5552_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5552_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5552_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5552_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 272 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5553 for ECDH, tcId is 273 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5553_peerpubkey[] = { 0x94, 0x71, 0xab, 0xf4, 0xfd, 0x1b, 0x89, 0xd1, 0x4d, 0xf2, 0x32, 0x5c, 0xb0, 0xa6, 0xbc, 0x92, 0xe7, 0x3c, 0x8e, 0xc8, 0xe0, 0x6c, 0x47, 0xb0, 0x97, 0x8d, 0x93, 0xe9, 0x22, 0x5a, 0xdf, 0x08, 0x9d, 0x3e, 0xe4, 0xe2, 0x5c, 0x22, 0x2b, 0x60, 0xd0, 0x21, 0x99, 0xc1, 0xb5, 0x80, 0x04, 0xc1, 0xd1, 0xb3, 0x5b, 0xc1, 0x47, 0x5c, 0xfc, 0xf3, 0xe3, 0xa6, 0x11, 0x65, 0x93, 0xe2, 0xca, 0x5a, 0x70, 0x34, 0x41, 0x27, 0xad, 0x90, 0x7a, 0x4a, 0xa1, 0xd0, 0xc6, 0x61, 0x39, 0xf2, 0x87, 0xa7, 0xfe, 0x48, 0xce, 0xa5, 0x84, 0x4a, 0x20, 0xdf, 0x5a, 0x68, 0x8b, 0x89, 0x21, 0x1f, 0x19, 0xc3, }; static const unsigned char ecdh_secp384r1_5553_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5553_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5553_sharedsecret[] = { 0x70, 0x54, 0x21, 0xb3, 0x66, 0x18, 0x11, 0x5f, 0xcc, 0xb7, 0xce, 0x6d, 0xb8, 0x57, 0x5f, 0xc4, 0xb3, 0xf0, 0xa2, 0x78, 0x0c, 0xe0, 0x2a, 0x34, 0x87, 0xe4, 0x05, 0x5d, 0xd0, 0xd5, 0x18, 0x34, 0x00, 0x62, 0x70, 0xe9, 0x92, 0xe0, 0xaf, 0xaa, 0x4c, 0x7c, 0xe0, 0xf6, 0x99, 0xf7, 0xfe, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5553 = { .name = "ecdh_secp384r1_5553", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5553_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5553_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5553_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5553_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 273 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5554 for ECDH, tcId is 274 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5554_peerpubkey[] = { 0x97, 0x04, 0x6c, 0x44, 0x38, 0xb0, 0x40, 0x31, 0x5b, 0xe3, 0x9e, 0xe3, 0x86, 0x9f, 0x3e, 0x87, 0x11, 0xc3, 0x19, 0x67, 0x58, 0x47, 0x6f, 0x2b, 0x4d, 0x90, 0xcd, 0x43, 0x99, 0x66, 0x5c, 0x8c, 0x5c, 0x87, 0xf9, 0xcf, 0x64, 0x28, 0x9c, 0x2b, 0xb0, 0x11, 0x66, 0x74, 0x2e, 0x1a, 0xe0, 0x36, 0xb2, 0x81, 0x92, 0x2e, 0x88, 0x72, 0xb4, 0x8b, 0x7d, 0x3e, 0x13, 0x84, 0xab, 0x4d, 0x0a, 0x92, 0xc6, 0x02, 0xac, 0xe7, 0xdf, 0x3a, 0x93, 0xa4, 0x7d, 0xc5, 0x0c, 0x8c, 0x2e, 0x5e, 0x8a, 0x87, 0x5d, 0x2d, 0x92, 0x7f, 0x72, 0x01, 0xce, 0x11, 0xfd, 0x8d, 0xf8, 0x12, 0xba, 0xa1, 0xe4, 0xf8, }; static const unsigned char ecdh_secp384r1_5554_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5554_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5554_sharedsecret[] = { 0x3c, 0x51, 0x00, 0x06, 0xf8, 0x65, 0x8f, 0x3f, 0xa4, 0x14, 0xfe, 0xf9, 0x72, 0x3d, 0x63, 0x4a, 0x17, 0x9d, 0xb7, 0xaa, 0xf0, 0xb7, 0x06, 0x8b, 0x76, 0x96, 0xcf, 0xf9, 0x3f, 0x88, 0xe0, 0x41, 0x36, 0xdf, 0xda, 0xc6, 0x83, 0x49, 0x78, 0x1b, 0xf0, 0x5a, 0x78, 0x7a, 0xe1, 0x9e, 0x90, 0x21, }; static const wycheproof_ecdh_test ecdh_secp384r1_5554 = { .name = "ecdh_secp384r1_5554", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5554_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5554_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5554_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5554_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 274 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5555 for ECDH, tcId is 275 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5555_peerpubkey[] = { 0x8e, 0x3d, 0xae, 0x50, 0x0f, 0xe2, 0xc6, 0x45, 0xaa, 0xb1, 0x53, 0x79, 0x17, 0x06, 0x82, 0x50, 0x31, 0x54, 0xaf, 0x1f, 0xd0, 0xa2, 0x1f, 0xfd, 0x2e, 0x34, 0xf0, 0x50, 0x1c, 0x51, 0x85, 0x07, 0xe0, 0xeb, 0xf4, 0x5d, 0x7c, 0xb8, 0x65, 0x3f, 0xd5, 0x7b, 0xf1, 0xf8, 0x94, 0xf2, 0xa5, 0x52, 0xcb, 0x69, 0xaf, 0x7e, 0x00, 0x9d, 0x43, 0xbd, 0x6e, 0x68, 0x8b, 0xf2, 0x8f, 0x5e, 0x28, 0x15, 0xf3, 0xc9, 0xf4, 0xfa, 0xb1, 0xd8, 0x29, 0xd2, 0x9f, 0x05, 0x31, 0x2b, 0xad, 0x99, 0xd7, 0x5c, 0x25, 0x18, 0xd2, 0xa3, 0x01, 0xa7, 0x4d, 0x5e, 0xce, 0xe1, 0x33, 0x35, 0x82, 0xd7, 0x9c, 0x14, }; static const unsigned char ecdh_secp384r1_5555_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5555_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5555_sharedsecret[] = { 0x24, 0x89, 0x67, 0xaf, 0xa3, 0x63, 0x86, 0xcf, 0xea, 0xa2, 0x21, 0x48, 0x47, 0xc7, 0xc8, 0xc3, 0x2a, 0x89, 0x1a, 0x24, 0x38, 0xb8, 0x36, 0x65, 0xf9, 0x9e, 0x5f, 0xe7, 0xab, 0x6d, 0xd8, 0x63, 0x53, 0xff, 0x7a, 0x8b, 0x15, 0xd4, 0xbe, 0x4e, 0x12, 0x77, 0xc7, 0x21, 0xd6, 0x9c, 0xbb, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_5555 = { .name = "ecdh_secp384r1_5555", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5555_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5555_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5555_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5555_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 275 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5556 for ECDH, tcId is 276 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5556_peerpubkey[] = { 0x1f, 0xca, 0x8f, 0x96, 0x95, 0x65, 0x0a, 0x02, 0xd6, 0xfb, 0x80, 0x49, 0xb1, 0x53, 0x1a, 0x37, 0x83, 0xe4, 0x49, 0xdf, 0x75, 0xa9, 0x8d, 0x45, 0x99, 0x9f, 0xb9, 0x85, 0x7c, 0x3e, 0x75, 0x62, 0x19, 0xd4, 0x8b, 0x2c, 0x84, 0xd5, 0x14, 0x3f, 0x08, 0xc2, 0xab, 0x09, 0x7b, 0x36, 0x5a, 0x33, 0x45, 0xaa, 0x19, 0x7e, 0x10, 0xc6, 0x59, 0xd9, 0xc5, 0x3f, 0xa7, 0x54, 0xf1, 0x12, 0xd7, 0x79, 0x73, 0x10, 0x7e, 0xe3, 0x5c, 0x3a, 0xee, 0x3b, 0x0b, 0x13, 0x22, 0xb3, 0x62, 0xfa, 0x08, 0x49, 0x7c, 0x09, 0x7c, 0x18, 0x81, 0x93, 0x4e, 0x36, 0xce, 0xbd, 0x5e, 0x18, 0xe9, 0x24, 0x0c, 0xb6, }; static const unsigned char ecdh_secp384r1_5556_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5556_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5556_sharedsecret[] = { 0xa4, 0x54, 0xff, 0x4d, 0x94, 0x45, 0x87, 0xa1, 0x88, 0xe7, 0xeb, 0xac, 0xcd, 0x97, 0x64, 0x9a, 0xb0, 0xcf, 0x83, 0xf8, 0xf8, 0xd1, 0x9b, 0x36, 0x53, 0xa2, 0xe6, 0x21, 0x20, 0x6d, 0x39, 0x92, 0x86, 0x8b, 0x5a, 0x57, 0x65, 0xd1, 0xfa, 0x76, 0x2f, 0x0e, 0x3b, 0x01, 0x61, 0xa6, 0x80, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5556 = { .name = "ecdh_secp384r1_5556", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5556_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5556_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5556_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5556_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 276 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5557 for ECDH, tcId is 277 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5557_peerpubkey[] = { 0x73, 0x1b, 0xa7, 0x84, 0xe2, 0xed, 0x21, 0xf4, 0xa4, 0xa2, 0xb4, 0xdd, 0x48, 0x77, 0xae, 0xc2, 0xfc, 0xd5, 0x90, 0x31, 0xf8, 0x01, 0x93, 0xb9, 0x55, 0x8b, 0xbc, 0x1c, 0xf7, 0xfe, 0x67, 0x04, 0x46, 0x94, 0x43, 0xfc, 0x7f, 0x39, 0x8e, 0x8b, 0xec, 0x40, 0x86, 0xf8, 0x8a, 0xa7, 0x6a, 0xa2, 0x6c, 0x38, 0x9a, 0xcf, 0xd5, 0x1f, 0x69, 0xc8, 0x9a, 0x15, 0x3b, 0xfa, 0xdb, 0x5d, 0x70, 0x3a, 0x36, 0xcb, 0x12, 0xa4, 0xd8, 0x5f, 0x55, 0x17, 0xcf, 0x46, 0x2b, 0xf5, 0xd0, 0x2a, 0xbf, 0x7d, 0x19, 0x72, 0x2f, 0x48, 0x0e, 0xaf, 0x1a, 0x26, 0x17, 0xcb, 0xa1, 0x94, 0x1e, 0x1c, 0x76, 0xb6, }; static const unsigned char ecdh_secp384r1_5557_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5557_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5557_sharedsecret[] = { 0x99, 0x78, 0x0e, 0xd2, 0x15, 0xdc, 0x41, 0x7f, 0x79, 0x8c, 0x24, 0x32, 0x7c, 0x3c, 0xaf, 0x22, 0xf3, 0x68, 0x5e, 0x5c, 0xf2, 0xab, 0x83, 0x5f, 0xc5, 0x4b, 0x42, 0x81, 0x17, 0xb7, 0xd1, 0x7f, 0x0f, 0xeb, 0x63, 0xf1, 0x75, 0x54, 0x68, 0x15, 0x7f, 0x32, 0x37, 0xb8, 0x11, 0x7d, 0xff, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5557 = { .name = "ecdh_secp384r1_5557", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5557_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5557_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5557_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5557_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 277 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5558 for ECDH, tcId is 278 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5558_peerpubkey[] = { 0x87, 0x25, 0xcb, 0x75, 0x4b, 0x55, 0x27, 0xa3, 0xb0, 0x53, 0xd6, 0x3e, 0x0c, 0x4b, 0x09, 0x7e, 0x4c, 0x34, 0xc5, 0xd7, 0x31, 0xab, 0x5c, 0xd4, 0x72, 0x86, 0x50, 0xa6, 0x18, 0xb4, 0xde, 0xd4, 0xbf, 0x92, 0x14, 0xd7, 0x93, 0xad, 0x74, 0xcf, 0xc4, 0x70, 0xe3, 0x5c, 0x54, 0x93, 0xa4, 0xb4, 0x20, 0xa3, 0xc5, 0x00, 0x49, 0xa4, 0x27, 0x91, 0x72, 0x1b, 0xc5, 0x0d, 0x5f, 0x60, 0x8c, 0xb2, 0x72, 0xb6, 0x0a, 0x55, 0x45, 0xdb, 0x06, 0x08, 0x85, 0x5b, 0xac, 0x8f, 0xbf, 0xa9, 0x39, 0x90, 0xd6, 0xb8, 0x0e, 0x30, 0x41, 0x77, 0x3e, 0x10, 0x93, 0x7d, 0x83, 0x70, 0x10, 0xca, 0xe6, 0x40, }; static const unsigned char ecdh_secp384r1_5558_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5558_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5558_sharedsecret[] = { 0xd7, 0x38, 0xb7, 0x37, 0x3f, 0xe9, 0x78, 0xf2, 0x7b, 0x19, 0x4f, 0x69, 0xed, 0xd5, 0xc4, 0x21, 0xb9, 0x89, 0x22, 0xf5, 0xe3, 0x13, 0xb7, 0x68, 0x59, 0xa9, 0x35, 0x7a, 0x1f, 0xaf, 0x42, 0xed, 0x0e, 0x06, 0xdc, 0x13, 0xd5, 0x58, 0x43, 0x35, 0x75, 0x38, 0xce, 0x7f, 0x41, 0x27, 0xce, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_5558 = { .name = "ecdh_secp384r1_5558", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5558_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5558_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5558_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5558_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 278 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5559 for ECDH, tcId is 279 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5559_peerpubkey[] = { 0x9c, 0x7a, 0x59, 0x4e, 0xaf, 0x2d, 0xdf, 0x3c, 0x8a, 0xb6, 0xc6, 0xe9, 0x4f, 0x1e, 0xc0, 0x11, 0xda, 0xc9, 0xfa, 0x42, 0xbd, 0x27, 0xdf, 0x2f, 0xbe, 0x40, 0x2a, 0xc9, 0x49, 0xd3, 0xa2, 0xc6, 0x76, 0xb6, 0x84, 0xa2, 0x4c, 0x99, 0xf7, 0xd1, 0xb7, 0xe8, 0x9e, 0x9f, 0x8a, 0x06, 0x34, 0xeb, 0x3b, 0x83, 0x09, 0x5c, 0x7a, 0x1c, 0xd6, 0xaa, 0x93, 0x32, 0x46, 0x0e, 0xcb, 0xf2, 0x57, 0xf7, 0xaf, 0xa4, 0x49, 0x60, 0x8b, 0x9e, 0x0d, 0xdd, 0x15, 0x29, 0x2b, 0x87, 0x5a, 0xd2, 0xfd, 0x06, 0x9d, 0xc9, 0x27, 0xce, 0x00, 0xa4, 0xb5, 0xe6, 0x79, 0x33, 0x80, 0x23, 0xbd, 0x3a, 0x4e, 0x6c, }; static const unsigned char ecdh_secp384r1_5559_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5559_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5559_sharedsecret[] = { 0xd9, 0xcc, 0x86, 0x1d, 0xb3, 0x05, 0xb0, 0x4a, 0x27, 0x3d, 0x6b, 0x55, 0x34, 0x8e, 0xf9, 0xf0, 0xa0, 0xa2, 0xae, 0xdf, 0x8b, 0x3d, 0x04, 0x1a, 0x19, 0xe2, 0x63, 0xed, 0x6a, 0xe2, 0xe0, 0x1e, 0x43, 0x9a, 0x46, 0x82, 0x30, 0x98, 0xf2, 0xaa, 0xa4, 0x86, 0x7d, 0x4f, 0x08, 0x89, 0x1e, 0x36, }; static const wycheproof_ecdh_test ecdh_secp384r1_5559 = { .name = "ecdh_secp384r1_5559", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5559_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5559_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5559_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5559_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 279 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5560 for ECDH, tcId is 280 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5560_peerpubkey[] = { 0x21, 0xb1, 0xaa, 0x35, 0x9d, 0x72, 0xff, 0x33, 0xa8, 0x4e, 0xc9, 0x62, 0x14, 0x83, 0xe6, 0x58, 0x81, 0xd4, 0xfa, 0x8c, 0xe6, 0xdf, 0x36, 0x69, 0xe0, 0xab, 0xbb, 0x9f, 0x6b, 0xf8, 0xd0, 0xee, 0x3d, 0x98, 0x62, 0xa7, 0xdf, 0xb4, 0x52, 0x13, 0xe3, 0x9f, 0xfa, 0xc7, 0xb3, 0xe1, 0xed, 0x87, 0x1f, 0x5e, 0x59, 0xcd, 0xa5, 0xa5, 0xb8, 0x61, 0xab, 0x3e, 0xb8, 0x6c, 0xaa, 0x7c, 0x6e, 0x85, 0x93, 0x36, 0x76, 0xef, 0xe6, 0x60, 0xdf, 0xf8, 0xac, 0x56, 0x25, 0xec, 0x8a, 0x76, 0x30, 0xa9, 0xcb, 0xa9, 0xeb, 0x3f, 0xc1, 0x49, 0xd3, 0xef, 0x37, 0x9d, 0x4a, 0x5e, 0xc1, 0x74, 0xd2, 0x37, }; static const unsigned char ecdh_secp384r1_5560_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5560_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5560_sharedsecret[] = { 0xc5, 0x92, 0x81, 0xd0, 0x9f, 0x44, 0xf6, 0x79, 0x29, 0x4a, 0xee, 0x56, 0x68, 0xeb, 0x53, 0x8d, 0x50, 0x3e, 0xf2, 0x5a, 0xac, 0x59, 0x16, 0x14, 0xb4, 0x6f, 0x52, 0x5d, 0x8c, 0x0b, 0x10, 0x9a, 0xb1, 0x29, 0x67, 0x49, 0x63, 0x50, 0x0a, 0xd7, 0xb6, 0x26, 0x89, 0x41, 0xa2, 0x8c, 0x00, 0x67, }; static const wycheproof_ecdh_test ecdh_secp384r1_5560 = { .name = "ecdh_secp384r1_5560", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5560_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5560_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5560_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5560_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 280 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5561 for ECDH, tcId is 281 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5561_peerpubkey[] = { 0xe1, 0xad, 0x2b, 0x68, 0xfa, 0x69, 0x45, 0x65, 0x74, 0xde, 0x95, 0xb1, 0xe0, 0x48, 0xb0, 0x71, 0x50, 0x09, 0x40, 0x9e, 0xf5, 0xcc, 0x27, 0x0b, 0xe5, 0x1f, 0xdd, 0x40, 0xb4, 0xf6, 0x5b, 0x1a, 0xde, 0x67, 0x93, 0x8a, 0x6a, 0x6d, 0x72, 0x5b, 0x01, 0x31, 0x0f, 0x22, 0x53, 0xa3, 0x8c, 0xf4, 0x44, 0xf7, 0x26, 0xb3, 0xeb, 0x5c, 0x5d, 0xdc, 0x25, 0x7d, 0x6d, 0x9b, 0xda, 0x9b, 0xfa, 0x60, 0xbe, 0xc6, 0xa0, 0x7f, 0xe0, 0x7d, 0xae, 0x96, 0x75, 0x11, 0x31, 0x43, 0x70, 0xd3, 0xa4, 0xe0, 0x41, 0xc3, 0x4f, 0x1c, 0xb4, 0x9f, 0xe6, 0xb7, 0x06, 0x63, 0xf0, 0x20, 0x48, 0x8e, 0x98, 0xa8, }; static const unsigned char ecdh_secp384r1_5561_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5561_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5561_sharedsecret[] = { 0x9e, 0xb7, 0x0f, 0x89, 0x49, 0x86, 0x1c, 0x30, 0xf2, 0x45, 0x69, 0x90, 0xab, 0xe4, 0xd3, 0x45, 0x55, 0x00, 0x08, 0xb8, 0x53, 0x19, 0x01, 0x52, 0x13, 0x61, 0xaa, 0xa1, 0x72, 0x96, 0xdb, 0xca, 0x06, 0xfb, 0x3c, 0x87, 0xe8, 0xf4, 0x59, 0x2b, 0x7d, 0xc5, 0xd1, 0x99, 0x7c, 0x58, 0xc0, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_5561 = { .name = "ecdh_secp384r1_5561", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5561_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5561_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5561_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5561_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 281 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5562 for ECDH, tcId is 282 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5562_peerpubkey[] = { 0x0b, 0xad, 0x67, 0xea, 0x0c, 0xca, 0x96, 0x0e, 0xd3, 0xea, 0x05, 0x88, 0xd5, 0xee, 0xef, 0x36, 0x6c, 0x24, 0x34, 0x2a, 0xb3, 0xe4, 0x66, 0x02, 0x89, 0x1d, 0x1a, 0xdb, 0x4d, 0x85, 0xd8, 0x0d, 0xd2, 0x42, 0x96, 0x2c, 0x56, 0x54, 0xbd, 0x6a, 0xf5, 0x91, 0x3a, 0xea, 0xef, 0xab, 0x27, 0xad, 0x9a, 0x07, 0xb4, 0x19, 0x71, 0x80, 0xc9, 0x86, 0x9a, 0xf7, 0x95, 0xf6, 0x96, 0xfd, 0xf6, 0xf2, 0x5c, 0xdc, 0x66, 0x46, 0x9f, 0x4c, 0xa7, 0xca, 0x89, 0xc5, 0xc9, 0x04, 0x63, 0x6d, 0x85, 0xf6, 0xb9, 0xa1, 0x9e, 0x7b, 0xcf, 0x05, 0x40, 0x83, 0x1c, 0xa7, 0xaa, 0x40, 0x44, 0x6d, 0xd8, 0xe1, }; static const unsigned char ecdh_secp384r1_5562_ourpubkey[] = { 0x8a, 0x9c, 0x52, 0x27, 0xd1, 0x39, 0x02, 0x59, 0xb6, 0x75, 0x09, 0x59, 0xaf, 0x6e, 0xf9, 0xbc, 0x0a, 0x51, 0xb0, 0xf0, 0x85, 0xc9, 0x99, 0x33, 0xf5, 0x6a, 0x76, 0x3a, 0x60, 0xb5, 0x90, 0xf7, 0x11, 0x5f, 0x0c, 0x6c, 0xf1, 0xe3, 0x0d, 0x35, 0x5e, 0xbb, 0xe7, 0x60, 0x1e, 0xcb, 0x4d, 0x1a, 0xbb, 0xd2, 0xdf, 0x65, 0xae, 0x39, 0x9a, 0x71, 0x78, 0x0d, 0xe1, 0x1e, 0x3c, 0xf8, 0xf1, 0xaa, 0x32, 0x95, 0x2f, 0xc4, 0xb1, 0x48, 0x82, 0x84, 0x45, 0x2f, 0x43, 0xa9, 0x0b, 0x9d, 0xd1, 0xf3, 0x1a, 0x3a, 0xac, 0xa7, 0x19, 0x11, 0x4f, 0xe7, 0x05, 0x37, 0xf9, 0xc6, 0xde, 0xc0, 0x79, 0x51, }; static const unsigned char ecdh_secp384r1_5562_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfe, 0x7a, 0x4c, 0xff, 0x4e, 0xac, 0xf9, 0x06, 0x12, 0xa4, 0x88, 0x65, 0xdc, 0x43, 0xe9, 0xb5, 0xd2, 0x30, 0xf7, 0x61, 0xd1, 0xfc, 0x4d, 0xfb, 0x69, 0xbe, 0x20, 0xe8, 0x4c, 0xcc, 0x8f, }; static const unsigned char ecdh_secp384r1_5562_sharedsecret[] = { 0x45, 0xb0, 0x2f, 0xd4, 0xdd, 0x76, 0x49, 0x67, 0x01, 0xbe, 0x3b, 0x37, 0xe6, 0x32, 0x05, 0x6c, 0xf7, 0xf6, 0x3e, 0x98, 0x08, 0xf6, 0x27, 0xfa, 0x85, 0x8e, 0xec, 0xc5, 0xba, 0xc1, 0x6a, 0x01, 0xa9, 0x49, 0x74, 0x1b, 0x4d, 0xe1, 0x51, 0xfe, 0x35, 0xe7, 0x74, 0xc6, 0xd1, 0xe3, 0x89, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5562 = { .name = "ecdh_secp384r1_5562", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5562_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5562_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5562_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5562_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 282 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5563 for ECDH, tcId is 283 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5563_peerpubkey[] = { 0x2c, 0x40, 0x69, 0xbc, 0x80, 0x78, 0x23, 0x6e, 0xb2, 0x3a, 0x8c, 0x4d, 0x57, 0x5b, 0xde, 0x9b, 0x53, 0x7b, 0x13, 0xb7, 0x99, 0x89, 0x68, 0x8c, 0x40, 0xd8, 0x9d, 0x89, 0x8a, 0x8c, 0x29, 0xbd, 0x7a, 0xc6, 0x17, 0x45, 0x79, 0x7b, 0x7e, 0xe5, 0x5a, 0xca, 0x60, 0xea, 0x7d, 0x6c, 0x2a, 0x84, 0x30, 0xfc, 0xfb, 0xed, 0x18, 0xa2, 0x50, 0x46, 0x61, 0xe0, 0x25, 0x3c, 0x43, 0xe4, 0x7b, 0xe0, 0x19, 0x40, 0xe8, 0x1f, 0xcb, 0x2d, 0x65, 0xa5, 0xe5, 0x01, 0x11, 0x19, 0x78, 0x05, 0x99, 0x49, 0xc5, 0xd2, 0x5b, 0x0b, 0x60, 0xde, 0x78, 0x21, 0x47, 0x6b, 0x88, 0xa8, 0x34, 0x2a, 0x0b, 0xdf, }; static const unsigned char ecdh_secp384r1_5563_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5563_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5563_sharedsecret[] = { 0x6c, 0xe9, 0xbf, 0xfb, 0x89, 0x01, 0xba, 0xa8, 0x01, 0xd1, 0xb1, 0x9e, 0x92, 0xb5, 0xe5, 0xf4, 0x7f, 0x5b, 0xee, 0x10, 0xc1, 0x5f, 0xe4, 0x4b, 0x82, 0x09, 0x97, 0x75, 0x72, 0xcc, 0x8b, 0xd7, 0x90, 0x2c, 0xcf, 0xc0, 0xd7, 0xae, 0x98, 0xf6, 0xb5, 0x8b, 0xb8, 0x7f, 0x31, 0x6a, 0x57, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_5563 = { .name = "ecdh_secp384r1_5563", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5563_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5563_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5563_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5563_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 283 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5564 for ECDH, tcId is 284 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5564_peerpubkey[] = { 0x44, 0xbc, 0x1c, 0xb2, 0xd4, 0x2f, 0xf9, 0x74, 0xe7, 0x2b, 0xc8, 0x83, 0xdf, 0xf7, 0x84, 0xe8, 0x69, 0x78, 0x50, 0x1f, 0x91, 0x8e, 0xef, 0x4d, 0x96, 0xd6, 0xe5, 0x24, 0x2d, 0xa6, 0xf5, 0x65, 0x1a, 0x29, 0xcf, 0x52, 0x05, 0xc3, 0xdc, 0x3b, 0xe3, 0x33, 0x32, 0xfa, 0x2d, 0xef, 0xc3, 0x47, 0x88, 0xf8, 0x8f, 0x54, 0x9e, 0xd7, 0x87, 0x32, 0x06, 0x30, 0x20, 0xdd, 0x3f, 0xcb, 0x87, 0x25, 0x15, 0xb2, 0x5e, 0x08, 0x87, 0x00, 0xe3, 0xea, 0xcb, 0x92, 0x5d, 0xe7, 0x67, 0xe9, 0xed, 0xf6, 0xe8, 0x9f, 0x08, 0x9c, 0x4f, 0x9e, 0x0f, 0x4d, 0x88, 0x46, 0x98, 0x03, 0x93, 0x66, 0x7f, 0x6d, }; static const unsigned char ecdh_secp384r1_5564_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5564_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5564_sharedsecret[] = { 0xc6, 0xdd, 0x2d, 0x37, 0x2d, 0x5a, 0x51, 0x73, 0xac, 0x63, 0xf6, 0xd5, 0xab, 0x5d, 0xec, 0x97, 0x2e, 0x8a, 0xe4, 0x4d, 0x56, 0x6c, 0x7f, 0x82, 0x6b, 0xeb, 0x7f, 0x26, 0x93, 0xe2, 0x00, 0xc4, 0x70, 0xdd, 0xed, 0xb1, 0xc9, 0x92, 0x9c, 0x11, 0xed, 0x86, 0xd1, 0x35, 0xf4, 0x4c, 0x97, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5564 = { .name = "ecdh_secp384r1_5564", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5564_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5564_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5564_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5564_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 284 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5565 for ECDH, tcId is 285 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5565_peerpubkey[] = { 0xb8, 0x24, 0xeb, 0x72, 0xc4, 0x3e, 0xdb, 0x5b, 0x3c, 0xe9, 0xaf, 0x94, 0xeb, 0xbd, 0x33, 0xb4, 0x46, 0xb4, 0xa7, 0x23, 0x3b, 0x89, 0xaf, 0xfe, 0x1c, 0xfa, 0x3b, 0xeb, 0x53, 0xcd, 0x19, 0x9f, 0xb1, 0x19, 0xa3, 0x56, 0x77, 0x2b, 0xfe, 0xc1, 0x78, 0xc0, 0x3b, 0x07, 0x7d, 0xf1, 0x2f, 0x53, 0xf9, 0x98, 0x51, 0xfb, 0xeb, 0x99, 0x71, 0xff, 0xcf, 0x29, 0xad, 0x61, 0xba, 0x48, 0x4b, 0xd0, 0x58, 0x00, 0x36, 0xdc, 0xaa, 0x59, 0xf4, 0x07, 0xbc, 0x88, 0xa4, 0x71, 0xcd, 0x86, 0x2b, 0x80, 0xa1, 0x63, 0xc9, 0x1a, 0x6f, 0x64, 0x60, 0x2b, 0x6f, 0x71, 0x39, 0x59, 0xb2, 0xf6, 0xc2, 0xfd, }; static const unsigned char ecdh_secp384r1_5565_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5565_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5565_sharedsecret[] = { 0x02, 0x99, 0xb7, 0xfc, 0x3e, 0x55, 0x06, 0x92, 0x6f, 0xea, 0x66, 0xd2, 0x0f, 0x65, 0xb9, 0x79, 0x1f, 0xb6, 0xc8, 0x8c, 0x71, 0x79, 0xf7, 0xd4, 0x70, 0x1d, 0x68, 0xc1, 0x34, 0x27, 0xab, 0x56, 0xac, 0x0f, 0x9e, 0x1d, 0xa9, 0x6c, 0x1d, 0x5f, 0x3d, 0x1a, 0x65, 0xff, 0x31, 0x22, 0xc1, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_5565 = { .name = "ecdh_secp384r1_5565", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5565_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5565_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5565_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5565_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 285 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5566 for ECDH, tcId is 286 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5566_peerpubkey[] = { 0x92, 0x70, 0xb8, 0xce, 0xfb, 0x61, 0xa5, 0xd5, 0x2f, 0xbb, 0x5e, 0x6b, 0x3b, 0x62, 0x36, 0x1f, 0x3a, 0xfa, 0x5d, 0x1a, 0x6b, 0x01, 0x41, 0x9d, 0xb9, 0x26, 0x6e, 0x2d, 0xba, 0xba, 0xb3, 0x6a, 0xea, 0x5b, 0x19, 0x61, 0x31, 0x8e, 0xaf, 0x8f, 0x0b, 0xd7, 0xcc, 0xa7, 0x5f, 0xf2, 0xdf, 0x5b, 0x7e, 0x53, 0x8c, 0x63, 0x01, 0x2a, 0x73, 0xf7, 0x77, 0xb2, 0x5e, 0x17, 0x37, 0xd4, 0x4f, 0xdb, 0xc2, 0x99, 0xa7, 0x62, 0x88, 0xd7, 0xbc, 0xb5, 0x7c, 0x84, 0x84, 0xc7, 0x1c, 0x9b, 0xb6, 0x45, 0x32, 0x45, 0xf2, 0x39, 0xb6, 0xc6, 0xdf, 0x32, 0x89, 0x84, 0x24, 0x38, 0x3b, 0x4c, 0x03, 0x09, }; static const unsigned char ecdh_secp384r1_5566_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5566_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5566_sharedsecret[] = { 0x13, 0xd7, 0x8b, 0x7a, 0x4d, 0xaf, 0x8d, 0xdd, 0x62, 0xe3, 0x47, 0xba, 0x23, 0x5c, 0x36, 0x48, 0x6f, 0xb2, 0xeb, 0x4a, 0x75, 0xa3, 0xe1, 0x7a, 0x13, 0x7e, 0xc6, 0xc2, 0xde, 0x37, 0xab, 0xaf, 0x45, 0xda, 0x92, 0xd1, 0xcf, 0x1b, 0x29, 0x66, 0xde, 0xd8, 0xd5, 0x38, 0x1f, 0xd2, 0x31, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5566 = { .name = "ecdh_secp384r1_5566", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5566_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5566_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5566_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5566_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 286 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5567 for ECDH, tcId is 287 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5567_peerpubkey[] = { 0x19, 0xe5, 0xc2, 0x86, 0x57, 0x47, 0x9e, 0xb4, 0x1d, 0x37, 0x18, 0xf6, 0x3e, 0x06, 0x78, 0xbe, 0x0d, 0xaa, 0x58, 0x50, 0x2a, 0x54, 0x06, 0xd6, 0x59, 0x13, 0x56, 0x7d, 0xf7, 0xb8, 0x6a, 0xb2, 0x5e, 0x90, 0x5e, 0xc8, 0x46, 0x78, 0x95, 0x30, 0xd8, 0x1d, 0x8d, 0x1f, 0xc2, 0xa8, 0xca, 0xde, 0x4a, 0xaf, 0x13, 0x1a, 0x0c, 0xcf, 0xc7, 0x9a, 0x24, 0xbc, 0x88, 0x9c, 0x95, 0x32, 0x49, 0xee, 0x85, 0xb4, 0x9e, 0x2a, 0x1b, 0xfa, 0x52, 0x16, 0x7f, 0xe2, 0x0d, 0xe2, 0x96, 0xe6, 0x49, 0x7e, 0xf9, 0x01, 0x4c, 0x2c, 0xd0, 0xa0, 0x2a, 0xfb, 0xad, 0x1f, 0x9d, 0x00, 0xac, 0x3d, 0x92, 0x4d, }; static const unsigned char ecdh_secp384r1_5567_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5567_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5567_sharedsecret[] = { 0x7b, 0x08, 0x63, 0xfc, 0x6d, 0x72, 0xc4, 0xbd, 0x05, 0x85, 0x76, 0xcf, 0xf7, 0xa4, 0xae, 0xdf, 0x86, 0x48, 0x2d, 0x3d, 0x9b, 0xc9, 0xc5, 0xfc, 0x55, 0xbd, 0x8f, 0xac, 0x84, 0x10, 0x7d, 0xd0, 0xbf, 0x9f, 0x27, 0xd7, 0xe8, 0xd6, 0x24, 0xed, 0xb0, 0xaa, 0x6e, 0xf1, 0xb9, 0xcc, 0x22, 0x46, }; static const wycheproof_ecdh_test ecdh_secp384r1_5567 = { .name = "ecdh_secp384r1_5567", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5567_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5567_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5567_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5567_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 287 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5568 for ECDH, tcId is 288 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5568_peerpubkey[] = { 0x59, 0x66, 0x6d, 0xf4, 0x47, 0xda, 0xbc, 0x38, 0x6d, 0x8d, 0xdd, 0xae, 0x93, 0x54, 0x3d, 0xc7, 0x61, 0x51, 0xf7, 0xc1, 0xc0, 0x48, 0x58, 0x66, 0x0d, 0x9c, 0xa8, 0xe0, 0x65, 0x5b, 0x51, 0xa7, 0x2f, 0xef, 0xfb, 0x70, 0x85, 0xba, 0xcb, 0xde, 0x15, 0x3f, 0xea, 0x75, 0xb5, 0x71, 0x6a, 0xb5, 0xc3, 0xc7, 0x81, 0x1d, 0x0c, 0x74, 0x35, 0xbe, 0x9e, 0x36, 0xdb, 0x00, 0xcd, 0x29, 0xc6, 0xca, 0x87, 0x9e, 0xf9, 0x91, 0xad, 0xb1, 0x57, 0xa6, 0xb4, 0xbf, 0x56, 0xe3, 0xde, 0x5c, 0xb3, 0x45, 0x98, 0xb7, 0x9a, 0x68, 0x4c, 0xc3, 0xd4, 0xe2, 0x3f, 0x22, 0xd1, 0x00, 0x63, 0xe8, 0xd1, 0x9c, }; static const unsigned char ecdh_secp384r1_5568_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5568_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5568_sharedsecret[] = { 0xfb, 0xa2, 0xbd, 0xfb, 0x54, 0xe4, 0x68, 0xa4, 0xff, 0x5a, 0xfb, 0xaa, 0x54, 0xc7, 0x03, 0x74, 0x00, 0xd7, 0x64, 0x14, 0xc9, 0x8e, 0xaf, 0xaa, 0x41, 0x9a, 0xda, 0xb0, 0xdf, 0x50, 0xc9, 0x69, 0x2a, 0xac, 0x67, 0xd4, 0x4a, 0x9e, 0xfb, 0xd0, 0x0d, 0x4f, 0x9c, 0xfc, 0x20, 0x6d, 0x53, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5568 = { .name = "ecdh_secp384r1_5568", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5568_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5568_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5568_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5568_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 288 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5569 for ECDH, tcId is 289 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5569_peerpubkey[] = { 0x3b, 0xaf, 0xce, 0x9b, 0x32, 0x61, 0x6f, 0x3b, 0xde, 0x17, 0xfc, 0x98, 0x9f, 0x1e, 0x55, 0x6f, 0x92, 0xfa, 0xf5, 0xc3, 0x0e, 0x2c, 0xdd, 0xeb, 0xc2, 0xab, 0xa4, 0x4e, 0xdf, 0x36, 0xae, 0x39, 0x57, 0xc9, 0xc6, 0x10, 0xa3, 0x45, 0x21, 0xe6, 0xac, 0x45, 0x46, 0x52, 0xaa, 0x59, 0x78, 0x11, 0x82, 0x7b, 0x4f, 0xf4, 0x5f, 0x99, 0x1f, 0x94, 0x05, 0xf2, 0xd8, 0xcf, 0x45, 0xd5, 0xd0, 0x87, 0x6a, 0x26, 0x0e, 0xf0, 0xde, 0xb6, 0xe8, 0x60, 0x90, 0xc5, 0xb4, 0x5f, 0x5b, 0x7b, 0x17, 0x86, 0x10, 0x53, 0x24, 0xf4, 0x0a, 0x0d, 0x2b, 0x43, 0xde, 0xd5, 0x78, 0x68, 0xb3, 0x8b, 0x43, 0xef, }; static const unsigned char ecdh_secp384r1_5569_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5569_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5569_sharedsecret[] = { 0xba, 0x9b, 0x68, 0xd1, 0xc0, 0x0a, 0xa1, 0x24, 0x6e, 0xda, 0xfb, 0x70, 0xdb, 0x6d, 0xda, 0xed, 0x85, 0x70, 0xc4, 0x65, 0xd9, 0xa5, 0x83, 0x6d, 0x41, 0x56, 0xa1, 0xac, 0x7f, 0xda, 0x2a, 0x20, 0x9c, 0x25, 0x47, 0x1a, 0x0d, 0xf6, 0xd7, 0xde, 0x93, 0xf9, 0x80, 0xc8, 0x9c, 0x84, 0x16, 0x20, }; static const wycheproof_ecdh_test ecdh_secp384r1_5569 = { .name = "ecdh_secp384r1_5569", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5569_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5569_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5569_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5569_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 289 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5570 for ECDH, tcId is 290 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5570_peerpubkey[] = { 0x53, 0x38, 0x5b, 0x93, 0x03, 0xd2, 0xc5, 0xd1, 0xea, 0x83, 0xe7, 0x70, 0x0b, 0x3e, 0x81, 0x1a, 0x7c, 0x90, 0x5d, 0x17, 0x75, 0xc3, 0x79, 0xa4, 0x4e, 0x9e, 0x5c, 0x96, 0x82, 0x15, 0x59, 0x70, 0x0b, 0x49, 0x2e, 0xe2, 0x86, 0x8c, 0x5a, 0x01, 0x95, 0x0a, 0xa4, 0xe2, 0xb0, 0x59, 0x32, 0xee, 0x8f, 0xa1, 0xbd, 0x83, 0x03, 0x5a, 0xab, 0xba, 0xbc, 0x2b, 0xe7, 0xb6, 0x1f, 0x38, 0x8f, 0x78, 0xb8, 0x04, 0x6d, 0x36, 0xbe, 0xe9, 0x9b, 0x54, 0x89, 0xba, 0xfb, 0x3a, 0x86, 0xde, 0xde, 0x29, 0xc1, 0x4d, 0x53, 0x73, 0xed, 0x9b, 0xac, 0x72, 0xa9, 0x2a, 0xb8, 0xe7, 0xc3, 0x1f, 0xb8, 0x6a, }; static const unsigned char ecdh_secp384r1_5570_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5570_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5570_sharedsecret[] = { 0x33, 0xc6, 0xc7, 0xe2, 0xc8, 0x05, 0x88, 0x9c, 0xaa, 0xe5, 0x67, 0x9a, 0xa0, 0x24, 0xdd, 0x79, 0xf5, 0x44, 0x56, 0xf7, 0x98, 0xef, 0xf0, 0xa0, 0xdd, 0xcc, 0x1b, 0x28, 0xd8, 0xad, 0x30, 0x2d, 0x2f, 0x67, 0x09, 0x22, 0x75, 0xff, 0x55, 0xf8, 0xf4, 0xd9, 0x93, 0x57, 0xac, 0x86, 0xce, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_5570 = { .name = "ecdh_secp384r1_5570", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5570_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5570_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5570_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5570_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 290 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5571 for ECDH, tcId is 291 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5571_peerpubkey[] = { 0x9e, 0xbf, 0x8d, 0x31, 0x3d, 0xa3, 0xe5, 0xba, 0x23, 0x7e, 0xe3, 0x3e, 0x6d, 0xd5, 0xbe, 0x77, 0x03, 0x90, 0xf8, 0x37, 0xc9, 0x52, 0x8f, 0xbd, 0xd4, 0x40, 0xa9, 0xeb, 0x2b, 0xa1, 0xcf, 0xfb, 0x27, 0x83, 0x7d, 0x86, 0x5c, 0xbe, 0x1b, 0x32, 0xff, 0x9c, 0x79, 0x95, 0xd5, 0xdd, 0x51, 0x1c, 0xaa, 0x41, 0x25, 0xec, 0x25, 0x8d, 0x18, 0x2e, 0xe7, 0xf7, 0x17, 0x3c, 0xa1, 0xd1, 0x71, 0x39, 0xae, 0x13, 0xe6, 0x07, 0x2a, 0xcd, 0x97, 0x0b, 0xa5, 0x6f, 0x6d, 0x50, 0x34, 0xe9, 0xf4, 0x5d, 0xa3, 0x6b, 0x2e, 0xc7, 0x74, 0x34, 0x9b, 0xe2, 0x16, 0x8f, 0x32, 0xbb, 0xf0, 0x4f, 0x9a, 0x31, }; static const unsigned char ecdh_secp384r1_5571_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5571_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5571_sharedsecret[] = { 0x0d, 0xee, 0xb0, 0x1d, 0xec, 0xaa, 0xe0, 0xee, 0xe5, 0x5e, 0x2c, 0x29, 0x50, 0x1c, 0xdd, 0x9c, 0xf7, 0xd4, 0xdb, 0x2f, 0x16, 0x79, 0xfb, 0x72, 0xef, 0xca, 0xa5, 0xdb, 0x6e, 0x05, 0xcc, 0x4a, 0x65, 0x84, 0x80, 0x24, 0x5c, 0x59, 0xfe, 0xc9, 0x98, 0x4c, 0x61, 0x35, 0x01, 0x41, 0x1b, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_5571 = { .name = "ecdh_secp384r1_5571", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5571_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5571_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5571_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5571_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 291 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5572 for ECDH, tcId is 292 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5572_peerpubkey[] = { 0xd4, 0xcd, 0x22, 0xe8, 0xdf, 0xa6, 0x20, 0xca, 0x7d, 0x68, 0xe2, 0x90, 0x45, 0x1b, 0x09, 0x28, 0x52, 0x98, 0xa1, 0xdb, 0x5a, 0x7c, 0xa0, 0x0e, 0xa8, 0x30, 0xd6, 0xe9, 0xec, 0x9c, 0xc4, 0xd0, 0x3f, 0x5c, 0xd4, 0x3f, 0xb2, 0xa9, 0xaa, 0xaa, 0x14, 0x2f, 0xe4, 0xc6, 0xe2, 0x26, 0x9c, 0xdc, 0x74, 0x7e, 0x0c, 0xa0, 0x7e, 0x38, 0xf4, 0xc5, 0xb4, 0x12, 0xe5, 0x2c, 0xb7, 0x93, 0x0c, 0x38, 0x11, 0x00, 0xd2, 0xaa, 0xfe, 0x54, 0xb6, 0x19, 0xeb, 0xf7, 0x2e, 0x81, 0xa4, 0x6e, 0x11, 0x49, 0x63, 0x5d, 0x25, 0xa3, 0x7f, 0xa6, 0x6e, 0x2d, 0x1b, 0xc9, 0xac, 0x25, 0xfc, 0x1a, 0x83, 0xf3, }; static const unsigned char ecdh_secp384r1_5572_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5572_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5572_sharedsecret[] = { 0xd3, 0x60, 0x75, 0x3c, 0x56, 0x86, 0x98, 0xd7, 0xf7, 0xb2, 0x61, 0xdd, 0x2f, 0x50, 0x64, 0xff, 0xc8, 0xaa, 0x9f, 0x03, 0x34, 0x3a, 0x22, 0x91, 0xb9, 0x67, 0x63, 0x26, 0x46, 0xd5, 0x15, 0x70, 0x56, 0x2f, 0x1a, 0xe8, 0x77, 0x75, 0x64, 0x8e, 0x74, 0xf9, 0xf3, 0x0e, 0x96, 0x6e, 0x73, 0x80, }; static const wycheproof_ecdh_test ecdh_secp384r1_5572 = { .name = "ecdh_secp384r1_5572", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5572_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5572_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5572_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5572_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 292 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5573 for ECDH, tcId is 293 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5573_peerpubkey[] = { 0x21, 0xb9, 0x1b, 0x9c, 0x37, 0x4e, 0xcf, 0x5c, 0xed, 0xc6, 0xd7, 0x34, 0x22, 0xc6, 0x53, 0x9b, 0x22, 0xae, 0x5d, 0xb6, 0x1b, 0xfd, 0xb0, 0x6b, 0x9c, 0x89, 0xe6, 0x81, 0x12, 0xf6, 0x43, 0x3e, 0x9d, 0x49, 0x71, 0x5f, 0x47, 0x45, 0x34, 0xfb, 0x9c, 0xd6, 0xc2, 0xcb, 0xfc, 0xde, 0xf9, 0x4f, 0xb5, 0xd4, 0xfe, 0x30, 0x6d, 0x59, 0x02, 0x5a, 0xf4, 0xe8, 0x8f, 0x8c, 0xb3, 0xdd, 0xc3, 0xd6, 0x4f, 0x70, 0x7e, 0x68, 0x20, 0xb4, 0x1c, 0xdf, 0xc0, 0x55, 0xcd, 0x67, 0x62, 0xda, 0x23, 0xde, 0x01, 0xc1, 0xb3, 0x11, 0xf1, 0xa5, 0xbf, 0x70, 0x10, 0xc4, 0xff, 0x4e, 0xd0, 0xa7, 0xe8, 0x4c, }; static const unsigned char ecdh_secp384r1_5573_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5573_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5573_sharedsecret[] = { 0x59, 0x6a, 0xf7, 0x12, 0x09, 0xcd, 0xd2, 0x3c, 0x38, 0x6b, 0xb8, 0x61, 0xed, 0xbd, 0x17, 0x1e, 0xa9, 0xbc, 0x6a, 0x85, 0x89, 0x93, 0x11, 0x0c, 0x93, 0x33, 0xa9, 0x56, 0xb3, 0xa0, 0x3f, 0xc0, 0xf5, 0x53, 0x93, 0xca, 0x46, 0xbb, 0x15, 0xbc, 0xf9, 0xf1, 0x2b, 0x49, 0x64, 0x59, 0xc4, 0xe6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5573 = { .name = "ecdh_secp384r1_5573", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5573_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5573_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5573_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5573_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 293 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5574 for ECDH, tcId is 294 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5574_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xf9, 0x9e, 0xf0, 0x4f, 0x51, 0xa5, 0xea, 0x63, 0x0b, 0xa3, 0xf9, 0xf9, 0x60, 0xdd, 0x59, 0x3a, 0x14, 0xc9, 0xbe, 0x39, 0xfd, 0x2b, 0xd2, 0x15, 0xd3, 0xb4, 0xb0, 0x8a, 0xaa, 0xf8, 0x6b, 0xbf, 0x92, 0x7f, 0x2c, 0x46, 0xe5, 0x2a, 0xb0, 0x6f, 0xb7, 0x42, 0xb8, 0x85, 0x0e, 0x52, 0x1e, }; static const unsigned char ecdh_secp384r1_5574_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5574_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5574_sharedsecret[] = { 0x96, 0x87, 0x6e, 0x9e, 0xd8, 0x9e, 0xdf, 0x3e, 0x3d, 0xfd, 0x8e, 0xad, 0x06, 0xdc, 0xba, 0x0a, 0xcd, 0xce, 0x77, 0x63, 0xeb, 0x98, 0xad, 0xed, 0x82, 0x97, 0x6f, 0xa3, 0x61, 0x81, 0xc7, 0x9a, 0xc4, 0xe8, 0x33, 0xdf, 0x38, 0x5a, 0xf5, 0xee, 0x86, 0x0c, 0xa1, 0xf2, 0x0d, 0xf4, 0xcb, 0x72, }; static const wycheproof_ecdh_test ecdh_secp384r1_5574 = { .name = "ecdh_secp384r1_5574", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5574_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5574_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5574_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5574_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 294 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5575 for ECDH, tcId is 295 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5575_peerpubkey[] = { 0xdd, 0x60, 0x7e, 0x95, 0x45, 0x56, 0xc6, 0x2e, 0x39, 0xb4, 0x32, 0xd1, 0xf1, 0xb2, 0xfe, 0x66, 0x52, 0xd7, 0x5a, 0x1f, 0xe3, 0x3c, 0xd1, 0x5c, 0x79, 0x9f, 0xfa, 0xc9, 0xd1, 0x3d, 0x5d, 0x52, 0x18, 0x99, 0xd2, 0x59, 0x40, 0xda, 0x65, 0x3d, 0x08, 0x24, 0xad, 0x84, 0x56, 0xdd, 0xfb, 0x62, 0x9f, 0x41, 0x42, 0xe0, 0x8a, 0x3b, 0xd1, 0xd8, 0x7b, 0xf6, 0x11, 0x9a, 0x9e, 0xf4, 0xb0, 0xa8, 0x0d, 0xc7, 0x12, 0xa4, 0xd6, 0xc0, 0x01, 0xbc, 0xb2, 0x79, 0x4c, 0x4d, 0x1a, 0x03, 0xb1, 0xf1, 0xd3, 0x92, 0xdc, 0x08, 0x8c, 0x89, 0xef, 0x84, 0x4f, 0x93, 0xad, 0xb1, 0x39, 0xd9, 0x56, 0xb8, }; static const unsigned char ecdh_secp384r1_5575_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5575_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5575_sharedsecret[] = { 0x60, 0xd5, 0x97, 0xa9, 0x9c, 0x86, 0xa4, 0x32, 0xe1, 0x44, 0xbc, 0x2b, 0x0e, 0x0a, 0x89, 0xb9, 0x1c, 0x4a, 0x72, 0xf3, 0xe1, 0xff, 0x8e, 0x56, 0xe7, 0xf0, 0x7d, 0x53, 0xb2, 0xe5, 0x63, 0xe9, 0x79, 0xc0, 0x9e, 0x27, 0xb3, 0x4b, 0xe9, 0x8b, 0xb1, 0x98, 0x65, 0xe8, 0x08, 0xd4, 0x29, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5575 = { .name = "ecdh_secp384r1_5575", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5575_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5575_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5575_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5575_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 295 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5576 for ECDH, tcId is 296 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5576_peerpubkey[] = { 0x82, 0x6d, 0x71, 0xae, 0x4f, 0x7b, 0x3e, 0xcb, 0xb2, 0xa9, 0xbd, 0xf5, 0x95, 0x12, 0x94, 0x95, 0x42, 0xd0, 0x11, 0x6f, 0x61, 0x64, 0x40, 0xa5, 0x50, 0x16, 0x8f, 0x4b, 0x58, 0x81, 0x2f, 0xd6, 0xc1, 0xab, 0x94, 0xf3, 0x10, 0x38, 0x5f, 0xdf, 0x24, 0x6d, 0xb5, 0xef, 0xc0, 0xfd, 0x13, 0x99, 0x5d, 0xe0, 0x99, 0xbd, 0xfc, 0xea, 0x35, 0x5e, 0xe6, 0x38, 0x27, 0xcf, 0x2a, 0x2e, 0x2d, 0x86, 0x8f, 0x5c, 0xf0, 0xb4, 0x87, 0xe4, 0x12, 0x45, 0xdf, 0x54, 0xfd, 0xc7, 0x35, 0xee, 0xd6, 0xeb, 0x72, 0x6c, 0xfc, 0x92, 0x8b, 0xd5, 0xb4, 0xd0, 0x17, 0x19, 0xd1, 0x64, 0x49, 0x67, 0xed, 0x1f, }; static const unsigned char ecdh_secp384r1_5576_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5576_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5576_sharedsecret[] = { 0x85, 0x96, 0x19, 0x06, 0xed, 0xaa, 0x9a, 0xdf, 0xa9, 0xc9, 0xb8, 0x27, 0x9d, 0xa6, 0x61, 0x58, 0xf5, 0x7f, 0xb3, 0x50, 0xff, 0x9b, 0x15, 0xdc, 0x4d, 0x75, 0xb8, 0xca, 0xb6, 0x4b, 0x9d, 0x34, 0xf5, 0xce, 0x91, 0x2f, 0x1a, 0xa5, 0x12, 0xa5, 0x4c, 0x71, 0x82, 0x1c, 0x6e, 0x31, 0xff, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5576 = { .name = "ecdh_secp384r1_5576", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5576_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5576_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5576_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5576_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0, tcId is 296 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5577 for ECDH, tcId is 297 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5577_peerpubkey[] = { 0xfa, 0x89, 0x19, 0xe4, 0x52, 0x4e, 0x70, 0x40, 0x48, 0x9c, 0xc1, 0x7a, 0xa3, 0xd6, 0x20, 0xf8, 0x82, 0x76, 0xef, 0x24, 0x8d, 0x1e, 0xcd, 0x1e, 0x9a, 0x66, 0x37, 0xc7, 0xa0, 0x67, 0x65, 0xf6, 0xf1, 0xd5, 0x93, 0xb1, 0xfe, 0xbe, 0x33, 0x1b, 0x9f, 0x69, 0x6e, 0x82, 0xc5, 0xbe, 0x61, 0xa4, 0xa0, 0x74, 0xa9, 0x12, 0x30, 0x96, 0x62, 0xf4, 0x4c, 0xe0, 0x82, 0x5b, 0xf1, 0x34, 0x58, 0x21, 0x16, 0xca, 0xc3, 0x31, 0x05, 0x77, 0xd5, 0xa0, 0x07, 0x22, 0xba, 0x51, 0x3e, 0x63, 0x34, 0xcc, 0x17, 0x10, 0x10, 0x91, 0x22, 0x33, 0x46, 0xdb, 0x67, 0x06, 0x3c, 0xf6, 0xe7, 0xbf, 0xfb, 0xff, }; static const unsigned char ecdh_secp384r1_5577_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5577_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5577_sharedsecret[] = { 0x43, 0x48, 0x4d, 0xcf, 0x01, 0x49, 0x2e, 0xab, 0x68, 0x4d, 0x39, 0x88, 0x19, 0x08, 0xda, 0x7f, 0x40, 0x11, 0x9f, 0xe7, 0x18, 0x3b, 0xba, 0x62, 0x5c, 0x32, 0xfd, 0xc1, 0x4d, 0xa3, 0xc4, 0x23, 0x6d, 0xc3, 0x39, 0x72, 0x34, 0xe7, 0xdb, 0x41, 0x85, 0x74, 0x95, 0xcd, 0x0d, 0x09, 0x49, 0x1b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5577 = { .name = "ecdh_secp384r1_5577", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5577_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5577_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5577_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5577_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 297 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5578 for ECDH, tcId is 298 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5578_peerpubkey[] = { 0xae, 0xcb, 0x8f, 0x15, 0xab, 0x87, 0x57, 0x9a, 0x03, 0xf5, 0xb8, 0xfc, 0xf3, 0x3a, 0xa0, 0x94, 0x33, 0x7e, 0x4c, 0x36, 0x23, 0x59, 0xc9, 0xf2, 0x72, 0x76, 0x34, 0x90, 0x9c, 0x69, 0x13, 0xc3, 0x21, 0xbe, 0x69, 0xf3, 0xf8, 0xae, 0xd6, 0x93, 0xa3, 0x10, 0x59, 0x98, 0x99, 0x97, 0xfb, 0x32, 0xd4, 0xf4, 0xa3, 0x7f, 0xf2, 0x36, 0xd8, 0xf6, 0x23, 0x71, 0x86, 0xa3, 0xa7, 0x21, 0xa8, 0x2a, 0x2b, 0xa2, 0x2f, 0x8a, 0x62, 0x8d, 0x72, 0x73, 0xef, 0x31, 0x73, 0xe2, 0x1e, 0xcc, 0x69, 0x96, 0x9a, 0x47, 0xe6, 0x69, 0x38, 0x3e, 0xcf, 0x0c, 0xf5, 0x39, 0x6e, 0xb0, 0x2f, 0x46, 0xc3, 0xed, }; static const unsigned char ecdh_secp384r1_5578_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5578_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5578_sharedsecret[] = { 0x65, 0xe6, 0x13, 0x39, 0x29, 0xc8, 0xb0, 0x61, 0xc2, 0x5f, 0xe0, 0xbe, 0xc9, 0x14, 0x2c, 0x93, 0xd5, 0x2c, 0x9f, 0x16, 0x95, 0x06, 0x1b, 0x10, 0x5f, 0x6c, 0x7d, 0xa1, 0x34, 0x7a, 0x96, 0x7b, 0x5a, 0x3f, 0x11, 0x83, 0x56, 0x56, 0x45, 0xf7, 0xb8, 0xfa, 0xd8, 0x86, 0x3f, 0x9a, 0x63, 0x45, }; static const wycheproof_ecdh_test ecdh_secp384r1_5578 = { .name = "ecdh_secp384r1_5578", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5578_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5578_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5578_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5578_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 298 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5579 for ECDH, tcId is 299 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5579_peerpubkey[] = { 0x40, 0xdc, 0x66, 0xd8, 0x1c, 0x4e, 0x15, 0xe1, 0xa4, 0xc0, 0x09, 0xc6, 0x0c, 0x34, 0x41, 0x72, 0x5f, 0xff, 0x08, 0xb2, 0x54, 0x37, 0x73, 0xb0, 0xdd, 0xe0, 0x0d, 0xb2, 0x31, 0xf4, 0x4b, 0xad, 0xd7, 0x7a, 0x8b, 0xc9, 0x61, 0x94, 0x79, 0xbd, 0x52, 0x88, 0xe4, 0x0d, 0xa1, 0x53, 0xb8, 0xdd, 0xc3, 0xd5, 0x30, 0x26, 0x2b, 0x16, 0x9a, 0x6f, 0xa7, 0x00, 0xee, 0x32, 0xa5, 0xcd, 0x05, 0x7b, 0xaf, 0x43, 0xd2, 0x96, 0x27, 0xf3, 0x42, 0xfd, 0xa8, 0xf6, 0xf0, 0xfb, 0x21, 0xb1, 0xfa, 0x35, 0xbe, 0x96, 0xa4, 0x52, 0xab, 0x48, 0x81, 0xf4, 0x17, 0xc9, 0xa4, 0xe4, 0x13, 0x6b, 0x1e, 0x6d, }; static const unsigned char ecdh_secp384r1_5579_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5579_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5579_sharedsecret[] = { 0x07, 0x73, 0x67, 0x3d, 0xae, 0x33, 0x7a, 0x16, 0x88, 0xc2, 0xc3, 0x1d, 0x1a, 0x60, 0x0c, 0x0e, 0xd7, 0x26, 0x04, 0xa1, 0x71, 0xc6, 0x65, 0xb5, 0x30, 0x7e, 0xba, 0xf7, 0x40, 0xfd, 0x51, 0x8e, 0x4a, 0x7c, 0x5c, 0x91, 0xe4, 0xf8, 0x6f, 0x65, 0x90, 0x56, 0x40, 0xee, 0x37, 0xf4, 0xf8, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_5579 = { .name = "ecdh_secp384r1_5579", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5579_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5579_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5579_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5579_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 299 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5580 for ECDH, tcId is 300 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5580_peerpubkey[] = { 0x53, 0xb5, 0x87, 0x47, 0x38, 0x27, 0x5a, 0x2e, 0x1d, 0x73, 0x4e, 0x51, 0xf8, 0x36, 0x36, 0xf8, 0x91, 0x79, 0xc1, 0x6f, 0xe8, 0x9f, 0x46, 0xf4, 0xd8, 0xe7, 0x1f, 0x52, 0x1c, 0x59, 0x47, 0x69, 0xd3, 0x17, 0x25, 0xf6, 0x40, 0x41, 0x22, 0xf2, 0x11, 0x12, 0x94, 0x3a, 0x1a, 0x22, 0xff, 0x07, 0x58, 0x6b, 0x41, 0xbb, 0x24, 0xbf, 0x30, 0x3a, 0xe8, 0x54, 0x5b, 0x25, 0xf7, 0xb9, 0x84, 0x25, 0xea, 0x62, 0xc4, 0xd3, 0xbf, 0x51, 0xd2, 0x3d, 0x9d, 0x85, 0xe0, 0x77, 0x19, 0xb8, 0x28, 0x77, 0x7e, 0xfa, 0x0a, 0x28, 0xfb, 0x30, 0xf3, 0x3b, 0x89, 0x99, 0x80, 0xde, 0x3c, 0x53, 0x26, 0x11, }; static const unsigned char ecdh_secp384r1_5580_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5580_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5580_sharedsecret[] = { 0xea, 0x25, 0xb0, 0x7a, 0x16, 0x1f, 0x31, 0x8a, 0x81, 0xa6, 0x93, 0xf6, 0x60, 0x48, 0x10, 0xb8, 0x14, 0x28, 0x43, 0xc4, 0xfd, 0x26, 0x65, 0x8d, 0x9b, 0x64, 0xfe, 0xdb, 0x58, 0xa5, 0xeb, 0xa5, 0x8c, 0x21, 0x7c, 0x41, 0x76, 0x56, 0x9c, 0xf3, 0x3f, 0xa4, 0x7a, 0xc9, 0xf2, 0xb3, 0xd7, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp384r1_5580 = { .name = "ecdh_secp384r1_5580", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5580_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5580_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5580_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5580_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 300 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5581 for ECDH, tcId is 301 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5581_peerpubkey[] = { 0x29, 0x88, 0xad, 0xdf, 0x62, 0x14, 0x9e, 0x6a, 0xc0, 0x82, 0x19, 0xd2, 0xf0, 0x36, 0xd3, 0xf5, 0x72, 0x0a, 0xa8, 0x62, 0x90, 0x5c, 0xf3, 0xfe, 0x7b, 0xdf, 0x13, 0x6d, 0xc0, 0x8b, 0x84, 0x5e, 0x8a, 0x61, 0xbe, 0x43, 0xdb, 0x86, 0xd7, 0x1a, 0x26, 0xdc, 0x17, 0xbf, 0x55, 0x37, 0x4a, 0x9d, 0x53, 0xac, 0x99, 0xc5, 0xd0, 0x7d, 0xe1, 0x0c, 0xe7, 0x4e, 0xd3, 0xb1, 0xc4, 0x13, 0x68, 0x6e, 0xbb, 0xa7, 0x00, 0xf4, 0x92, 0x60, 0xb0, 0x83, 0x57, 0xf9, 0x5d, 0xaf, 0x5b, 0x31, 0xa5, 0x55, 0x34, 0x5c, 0x07, 0x60, 0x79, 0xf2, 0x5d, 0x86, 0x90, 0xfc, 0x1a, 0xc2, 0x0c, 0x71, 0x52, 0x8d, }; static const unsigned char ecdh_secp384r1_5581_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5581_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5581_sharedsecret[] = { 0xa8, 0xd4, 0x24, 0x06, 0x8f, 0xb7, 0x84, 0x6b, 0x0d, 0x43, 0xa5, 0xcc, 0x13, 0x02, 0x9d, 0x05, 0x4b, 0x11, 0xc9, 0x7e, 0x50, 0x8e, 0xe0, 0xf9, 0x2e, 0x73, 0xd3, 0x5a, 0xc8, 0x35, 0x1a, 0x46, 0x2e, 0xed, 0xfc, 0x9d, 0xa9, 0xdd, 0x12, 0x79, 0xf1, 0x28, 0x12, 0xba, 0x46, 0xc0, 0x60, 0x53, }; static const wycheproof_ecdh_test ecdh_secp384r1_5581 = { .name = "ecdh_secp384r1_5581", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5581_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5581_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5581_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5581_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 301 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5582 for ECDH, tcId is 302 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5582_peerpubkey[] = { 0x49, 0x4b, 0x59, 0xde, 0x1b, 0x69, 0x53, 0x4b, 0x4b, 0x62, 0xd7, 0x58, 0x10, 0xee, 0x3d, 0xad, 0x05, 0xa1, 0x9a, 0xfa, 0x41, 0xc7, 0x83, 0x6d, 0xb5, 0xca, 0x78, 0x63, 0x02, 0x08, 0xa8, 0x00, 0x38, 0x8d, 0x04, 0x03, 0x4b, 0xaf, 0x29, 0x23, 0xad, 0x5a, 0xf6, 0xac, 0x72, 0xee, 0x05, 0xf9, 0x89, 0xdf, 0x6d, 0x08, 0xf9, 0xa6, 0x40, 0x08, 0x58, 0xd0, 0x84, 0xfe, 0x77, 0x0c, 0x0d, 0xdd, 0xe2, 0x98, 0x96, 0x6c, 0xdc, 0x56, 0xa9, 0x21, 0xa4, 0x31, 0x84, 0x38, 0x4d, 0x5a, 0x13, 0xf3, 0x1c, 0x1e, 0xb4, 0xe8, 0x34, 0xe2, 0x3b, 0xed, 0x30, 0x69, 0xc1, 0x0d, 0xfe, 0xd6, 0xb6, 0x3c, }; static const unsigned char ecdh_secp384r1_5582_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5582_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5582_sharedsecret[] = { 0x29, 0x6f, 0x5d, 0x6f, 0xe4, 0xdd, 0xd8, 0xc3, 0xc7, 0x30, 0x4b, 0xea, 0xdd, 0x45, 0xf6, 0xcd, 0x3e, 0x3f, 0xcd, 0x42, 0x30, 0xc9, 0xd2, 0xba, 0x1a, 0x13, 0xbd, 0x9b, 0x94, 0x98, 0xa3, 0xc8, 0xd1, 0xef, 0x0a, 0xb6, 0xee, 0x2a, 0x45, 0x0b, 0x0c, 0x68, 0xe8, 0x9a, 0x83, 0x71, 0x1f, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5582 = { .name = "ecdh_secp384r1_5582", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5582_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5582_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5582_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5582_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 302 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5583 for ECDH, tcId is 303 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5583_peerpubkey[] = { 0xb6, 0x4c, 0x49, 0xdd, 0xf1, 0x8b, 0xce, 0x79, 0xcf, 0xf3, 0xb8, 0xcb, 0x7b, 0x0e, 0x58, 0xd4, 0x84, 0x21, 0xeb, 0x67, 0x39, 0xf5, 0x9d, 0x27, 0x1f, 0xc4, 0xf5, 0x4d, 0xd2, 0xfc, 0xb1, 0xcf, 0x56, 0xdd, 0x3b, 0x3c, 0x69, 0x17, 0x3a, 0x5e, 0xab, 0x50, 0xab, 0x1a, 0x2e, 0x06, 0x16, 0xd0, 0x5d, 0x92, 0xb8, 0x64, 0xcb, 0xc9, 0xe4, 0xa3, 0xf7, 0x56, 0x50, 0xef, 0xf3, 0x9e, 0x0e, 0xac, 0xbf, 0x87, 0xc4, 0xc0, 0x10, 0x08, 0x8f, 0x33, 0x38, 0x84, 0x2c, 0xd9, 0x78, 0x32, 0x72, 0x4f, 0x79, 0xbb, 0x15, 0x98, 0x6b, 0xd3, 0xfa, 0x85, 0x25, 0x58, 0x16, 0x35, 0x04, 0x73, 0xbb, 0xd3, }; static const unsigned char ecdh_secp384r1_5583_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5583_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5583_sharedsecret[] = { 0xdb, 0x1e, 0xdb, 0xbb, 0x1f, 0x3a, 0xc6, 0xdf, 0x9f, 0x46, 0x12, 0x88, 0x12, 0xbc, 0xe7, 0x81, 0x8b, 0x5d, 0x74, 0x5c, 0x75, 0x32, 0x2a, 0x9a, 0xbe, 0x89, 0x98, 0x3b, 0xe8, 0x68, 0xaa, 0x1a, 0xac, 0x55, 0x5f, 0x4d, 0x60, 0xec, 0x27, 0x27, 0x30, 0xbb, 0x4a, 0xd9, 0x49, 0xa5, 0x3d, 0x38, }; static const wycheproof_ecdh_test ecdh_secp384r1_5583 = { .name = "ecdh_secp384r1_5583", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5583_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5583_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5583_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5583_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 303 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5584 for ECDH, tcId is 304 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5584_peerpubkey[] = { 0xa4, 0x0b, 0x1c, 0xa1, 0xa5, 0x1a, 0x8e, 0xe6, 0xbe, 0xf5, 0xb5, 0x8a, 0xaa, 0xbc, 0xff, 0xe2, 0xe1, 0x5f, 0x74, 0xa3, 0x08, 0x7e, 0xdb, 0x26, 0x20, 0x88, 0x5d, 0x7d, 0x93, 0x3e, 0x4f, 0x50, 0xd6, 0x25, 0xea, 0xad, 0x93, 0xb8, 0x7b, 0x8d, 0xff, 0x58, 0xf0, 0x56, 0x57, 0x92, 0xb1, 0x74, 0xab, 0x89, 0x71, 0x7f, 0xfe, 0x87, 0xcd, 0x29, 0xff, 0xbf, 0x3c, 0xd7, 0xd9, 0x38, 0xb1, 0x17, 0x37, 0x47, 0xbf, 0xc0, 0x31, 0x1b, 0x78, 0x72, 0x36, 0x84, 0xd7, 0xc9, 0xa1, 0xc2, 0xbe, 0x3b, 0x59, 0x7b, 0xf9, 0x23, 0x6e, 0xed, 0x09, 0x00, 0x28, 0xed, 0xa2, 0x14, 0x6c, 0x47, 0x7e, 0x65, }; static const unsigned char ecdh_secp384r1_5584_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5584_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5584_sharedsecret[] = { 0x1f, 0x84, 0xc6, 0x41, 0xad, 0xe1, 0x62, 0xa2, 0x74, 0xab, 0x2e, 0xfc, 0x7c, 0xf6, 0x58, 0x2f, 0x5a, 0x5d, 0x91, 0xce, 0x79, 0x93, 0xaf, 0x69, 0x56, 0xd5, 0x5e, 0xea, 0x0e, 0x1b, 0x7f, 0xbf, 0x04, 0x0d, 0xa9, 0x75, 0x04, 0x86, 0xb0, 0xfb, 0xb2, 0xbd, 0x70, 0xd9, 0xcc, 0xab, 0xb7, 0x85, }; static const wycheproof_ecdh_test ecdh_secp384r1_5584 = { .name = "ecdh_secp384r1_5584", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5584_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5584_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5584_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5584_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 304 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5585 for ECDH, tcId is 305 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5585_peerpubkey[] = { 0x4e, 0x7a, 0x82, 0xad, 0x74, 0xa1, 0xb7, 0x85, 0x19, 0x95, 0xf6, 0xe1, 0xa1, 0x81, 0x41, 0xbb, 0x45, 0x84, 0xac, 0x22, 0xe8, 0x39, 0xd4, 0xd9, 0x16, 0x01, 0x8b, 0x15, 0x0f, 0xed, 0x9c, 0xd0, 0xcc, 0xe4, 0x27, 0xbd, 0x44, 0x67, 0x98, 0x52, 0x27, 0x44, 0xd3, 0x95, 0xe9, 0x0e, 0xe4, 0xb6, 0x34, 0x45, 0xc1, 0xa6, 0xa4, 0xcd, 0x46, 0x7c, 0x20, 0xcd, 0xb2, 0x98, 0x85, 0x4f, 0x1e, 0x27, 0x0a, 0xfb, 0xea, 0x05, 0x3b, 0x77, 0x84, 0x97, 0x6b, 0x50, 0x4d, 0x0e, 0x13, 0x39, 0xc5, 0xc8, 0x60, 0x07, 0xce, 0xc3, 0x63, 0x83, 0x99, 0x58, 0xa1, 0xfa, 0x51, 0xe9, 0x48, 0x3d, 0xe5, 0x61, }; static const unsigned char ecdh_secp384r1_5585_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5585_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5585_sharedsecret[] = { 0x54, 0xef, 0xb9, 0xbb, 0x72, 0x69, 0xd8, 0x6b, 0x06, 0x28, 0x2b, 0x1d, 0x7d, 0xc2, 0x8a, 0x94, 0x0c, 0xd7, 0x78, 0x9c, 0xa4, 0xe1, 0x04, 0xc4, 0xbb, 0x7c, 0x5e, 0x57, 0x36, 0x67, 0x6c, 0x3e, 0x53, 0x70, 0xcf, 0xd9, 0x78, 0x49, 0xe1, 0x20, 0x0a, 0x03, 0x1b, 0x66, 0x83, 0x88, 0xd8, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_5585 = { .name = "ecdh_secp384r1_5585", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5585_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5585_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5585_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5585_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 305 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5586 for ECDH, tcId is 306 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5586_peerpubkey[] = { 0x9b, 0x54, 0x67, 0x8f, 0x85, 0x81, 0xce, 0x66, 0x51, 0x08, 0xab, 0xeb, 0x0c, 0x09, 0xcb, 0x79, 0x85, 0xbb, 0x5d, 0xd8, 0x58, 0xbb, 0xb7, 0x1c, 0x88, 0xe0, 0x53, 0x44, 0xde, 0x5b, 0x45, 0xb4, 0xe6, 0x7f, 0x33, 0xab, 0x58, 0xd3, 0x59, 0xdc, 0xa2, 0xda, 0x8d, 0xf1, 0x14, 0x9d, 0xd1, 0xbb, 0xd0, 0x9b, 0xa7, 0xf6, 0x3a, 0x8d, 0x35, 0x84, 0x8b, 0x40, 0x74, 0x6e, 0xd5, 0xfe, 0xc7, 0x94, 0x4e, 0xd4, 0x4f, 0xd9, 0xa9, 0xa2, 0xfc, 0x3d, 0x13, 0xeb, 0xc5, 0xc0, 0x5f, 0xf9, 0x4d, 0x5f, 0x50, 0x0e, 0xe1, 0x50, 0x72, 0xd1, 0xb4, 0xc1, 0x37, 0x5f, 0xd6, 0xec, 0x4f, 0x32, 0x12, 0x5c, }; static const unsigned char ecdh_secp384r1_5586_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5586_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5586_sharedsecret[] = { 0x1e, 0x96, 0xc8, 0x29, 0xcc, 0x8a, 0x79, 0xd7, 0x3f, 0xa6, 0x43, 0x4b, 0xc1, 0x59, 0xdc, 0x43, 0x2c, 0x2a, 0xce, 0x3b, 0x49, 0xad, 0x2e, 0x74, 0x38, 0x0e, 0x7b, 0x02, 0xfe, 0xb5, 0x3b, 0x33, 0x93, 0x44, 0x6a, 0x03, 0x31, 0xb9, 0x74, 0xf2, 0xbf, 0x21, 0x9a, 0xe9, 0x5d, 0x2b, 0x23, 0xe7, }; static const wycheproof_ecdh_test ecdh_secp384r1_5586 = { .name = "ecdh_secp384r1_5586", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5586_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5586_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5586_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5586_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 306 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5587 for ECDH, tcId is 307 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5587_peerpubkey[] = { 0x86, 0xcb, 0x7a, 0x3f, 0xf3, 0xae, 0xdb, 0x2f, 0x39, 0xae, 0x22, 0xf2, 0xe8, 0x28, 0xec, 0x08, 0x17, 0xd9, 0x4b, 0x83, 0x1a, 0xe6, 0x54, 0xdd, 0x66, 0xaf, 0xf3, 0x1a, 0x4d, 0x84, 0xb3, 0x3f, 0xab, 0x46, 0xfe, 0xc1, 0xab, 0xe1, 0xa9, 0xe6, 0xbb, 0xfa, 0xc5, 0xc9, 0x95, 0x65, 0xfd, 0x3b, 0xb2, 0xf7, 0x2d, 0x56, 0x5d, 0x2f, 0xf5, 0xc5, 0xc2, 0x4f, 0x37, 0x54, 0x48, 0xdd, 0x7b, 0xb4, 0x42, 0xdf, 0xdc, 0xb6, 0x1e, 0x07, 0x3e, 0x48, 0x40, 0x27, 0x07, 0xbb, 0xcc, 0x26, 0xad, 0x43, 0xd4, 0x78, 0x8a, 0x9f, 0x44, 0x71, 0x5f, 0x1b, 0x8e, 0x5b, 0x62, 0xbf, 0x49, 0xce, 0xca, 0x65, }; static const unsigned char ecdh_secp384r1_5587_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5587_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5587_sharedsecret[] = { 0x84, 0xe7, 0xaf, 0x17, 0x6d, 0xdb, 0xa3, 0xec, 0x3c, 0xe7, 0xb7, 0xfc, 0x43, 0xdf, 0x1e, 0xd5, 0x9b, 0x4e, 0x32, 0x28, 0xfa, 0x3f, 0x6f, 0xb4, 0x1a, 0x01, 0xf4, 0x13, 0xb0, 0xa6, 0xc7, 0x40, 0x4e, 0x43, 0xf7, 0x74, 0x71, 0x18, 0xba, 0x26, 0x4b, 0x7b, 0x02, 0x6d, 0x71, 0x4e, 0x90, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_5587 = { .name = "ecdh_secp384r1_5587", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5587_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5587_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5587_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5587_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 307 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5588 for ECDH, tcId is 308 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5588_peerpubkey[] = { 0xcc, 0xf5, 0xa5, 0xb8, 0x0d, 0xeb, 0xa6, 0x31, 0x8b, 0x85, 0xf5, 0x7a, 0x0d, 0x56, 0x3e, 0x95, 0x76, 0x5c, 0x7f, 0xe3, 0x0d, 0xf5, 0xac, 0x88, 0x83, 0x7f, 0x35, 0x32, 0x9d, 0xd5, 0x10, 0x70, 0xe2, 0x98, 0x96, 0xf4, 0xd9, 0x6e, 0xf4, 0x0b, 0xcc, 0xcf, 0x36, 0x24, 0x4d, 0xf8, 0x35, 0x61, 0x4e, 0x87, 0x85, 0xf8, 0x06, 0x5f, 0x81, 0xc5, 0xe9, 0x27, 0x0f, 0xd5, 0x59, 0xb6, 0xa3, 0x80, 0xb4, 0x83, 0x87, 0x4d, 0x29, 0x8d, 0x0d, 0x38, 0x2e, 0xee, 0x1e, 0xdb, 0x6a, 0x59, 0xd9, 0xc1, 0x63, 0x29, 0x6a, 0xb7, 0xa0, 0x68, 0x18, 0x6b, 0x0d, 0x23, 0xf3, 0x37, 0x37, 0xdd, 0x0e, 0xed, }; static const unsigned char ecdh_secp384r1_5588_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5588_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5588_sharedsecret[] = { 0x82, 0x86, 0x4e, 0xf4, 0xd5, 0xfd, 0x25, 0x20, 0x4a, 0xe1, 0x59, 0x1c, 0x61, 0x9f, 0x3e, 0xd8, 0x13, 0xc7, 0x62, 0xba, 0xa0, 0x09, 0xba, 0x3b, 0x49, 0xac, 0x38, 0xc5, 0x7b, 0x2f, 0x46, 0x65, 0x2f, 0x71, 0x9a, 0xdc, 0xea, 0xbf, 0xbc, 0xaf, 0x98, 0x5b, 0x29, 0x95, 0x8d, 0x1f, 0x42, 0x0c, }; static const wycheproof_ecdh_test ecdh_secp384r1_5588 = { .name = "ecdh_secp384r1_5588", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5588_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5588_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5588_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5588_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 308 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5589 for ECDH, tcId is 309 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5589_peerpubkey[] = { 0xc7, 0xf7, 0x7a, 0xd2, 0x86, 0xc6, 0x8b, 0x88, 0xff, 0xa6, 0x4f, 0xef, 0xe4, 0xaa, 0xab, 0x3d, 0xee, 0x1f, 0x9b, 0xae, 0x37, 0xb7, 0xd0, 0x69, 0xbb, 0x92, 0xbe, 0xa8, 0x20, 0x89, 0xe8, 0x31, 0xa7, 0x0d, 0xd9, 0xed, 0x00, 0x7b, 0xa6, 0xdc, 0xe1, 0x4f, 0x9c, 0x6d, 0x5e, 0x74, 0x4e, 0xcc, 0xb3, 0x19, 0xad, 0x6e, 0xc1, 0x34, 0x37, 0x6c, 0xb0, 0x59, 0xa1, 0xc8, 0x69, 0x84, 0xea, 0x8b, 0xd1, 0x54, 0xd8, 0x26, 0xed, 0x3d, 0xba, 0xe8, 0xd8, 0xd8, 0xe0, 0x6a, 0xa0, 0xcb, 0xe0, 0x12, 0x7d, 0xdf, 0xc3, 0x26, 0x21, 0xbb, 0xc1, 0xf7, 0x31, 0xf9, 0xd9, 0x0e, 0x68, 0x7a, 0x7c, 0xf5, }; static const unsigned char ecdh_secp384r1_5589_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5589_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5589_sharedsecret[] = { 0x1d, 0x0d, 0x3e, 0xd8, 0xc1, 0xe0, 0xd2, 0x8f, 0x5e, 0x37, 0x66, 0xf1, 0x93, 0xda, 0x7b, 0xdc, 0xa1, 0xcc, 0x08, 0x37, 0x62, 0x93, 0xf9, 0xbb, 0xde, 0x7b, 0xde, 0x0e, 0x9b, 0x1e, 0xbc, 0xf4, 0xcf, 0xa3, 0xc6, 0x83, 0xdc, 0x63, 0xbc, 0xb4, 0x2b, 0x2d, 0x9e, 0xde, 0x54, 0x24, 0x2b, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5589 = { .name = "ecdh_secp384r1_5589", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5589_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5589_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5589_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5589_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 309 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5590 for ECDH, tcId is 310 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5590_peerpubkey[] = { 0xaa, 0xc3, 0xb4, 0xd2, 0x80, 0xfc, 0x70, 0xa9, 0xfe, 0x17, 0x5e, 0x18, 0x82, 0xa6, 0x9e, 0xac, 0xa2, 0x48, 0x2a, 0x0c, 0x9d, 0xed, 0x92, 0x00, 0x44, 0x40, 0x28, 0xca, 0x3d, 0xbf, 0x50, 0x1f, 0xc3, 0x61, 0xf7, 0x65, 0x8b, 0xff, 0xec, 0x32, 0x1a, 0xd5, 0x77, 0xb4, 0x8c, 0x97, 0x86, 0xb0, 0x7f, 0x59, 0x6b, 0xd8, 0x68, 0xd5, 0x1e, 0x73, 0xf0, 0xf7, 0xc2, 0x5d, 0xb9, 0x56, 0xb1, 0x21, 0x71, 0xcf, 0xab, 0x11, 0xab, 0xd4, 0xab, 0xb0, 0x0a, 0x59, 0xac, 0x43, 0x2c, 0x0b, 0x0f, 0x05, 0x8f, 0x4c, 0xca, 0x44, 0xfb, 0x58, 0x1b, 0xc5, 0x80, 0x3e, 0x47, 0x2a, 0x05, 0x30, 0x5f, 0x33, }; static const unsigned char ecdh_secp384r1_5590_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5590_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5590_sharedsecret[] = { 0xbf, 0x19, 0x54, 0x8b, 0xb1, 0xd7, 0x33, 0x3f, 0x46, 0xcf, 0xf4, 0xd9, 0xd2, 0xa8, 0x1d, 0xbb, 0x48, 0xca, 0x82, 0xa5, 0x2f, 0xae, 0xc2, 0xb2, 0x0c, 0x3b, 0x27, 0xbd, 0xe3, 0x92, 0xa6, 0x6b, 0x8e, 0x44, 0x78, 0x0c, 0x20, 0x98, 0xa7, 0xb5, 0x25, 0x31, 0x57, 0xb0, 0x14, 0xb4, 0x0e, 0x51, }; static const wycheproof_ecdh_test ecdh_secp384r1_5590 = { .name = "ecdh_secp384r1_5590", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5590_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5590_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5590_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5590_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 310 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5591 for ECDH, tcId is 311 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5591_peerpubkey[] = { 0x74, 0x7e, 0xfb, 0x59, 0x5d, 0x03, 0xdc, 0x05, 0xdd, 0x50, 0xc1, 0x71, 0x55, 0xe1, 0x01, 0x8c, 0xa1, 0x47, 0x15, 0x05, 0x45, 0x92, 0x90, 0x6e, 0x67, 0x1a, 0x2e, 0x22, 0x04, 0xac, 0xae, 0x55, 0x2b, 0x6f, 0x5d, 0x34, 0x5d, 0x3f, 0xcf, 0x9b, 0x41, 0x71, 0x89, 0x2a, 0xfb, 0x3e, 0x55, 0x87, 0xd8, 0xe7, 0x09, 0xb0, 0x83, 0xa8, 0xb5, 0x36, 0x36, 0x63, 0x49, 0x2f, 0x8a, 0x2a, 0x9a, 0xf6, 0x4c, 0x3a, 0xd0, 0x1c, 0x64, 0xd8, 0xfa, 0x47, 0x64, 0xd6, 0x1f, 0x43, 0xe6, 0x90, 0x1a, 0x24, 0x45, 0xce, 0x94, 0xb5, 0x86, 0xf6, 0x09, 0x0a, 0xe0, 0x68, 0x7a, 0xf0, 0x09, 0x0f, 0xcd, 0x47, }; static const unsigned char ecdh_secp384r1_5591_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5591_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5591_sharedsecret[] = { 0x32, 0xd5, 0x69, 0x31, 0x0f, 0x61, 0xaf, 0x47, 0x5b, 0x6c, 0x6d, 0x07, 0x55, 0x99, 0x62, 0x5a, 0x33, 0x81, 0xb0, 0xa5, 0xb6, 0xa0, 0xb8, 0xc2, 0x7c, 0x71, 0x65, 0xd0, 0x0e, 0x2f, 0xd4, 0xdc, 0x8b, 0x2c, 0xf8, 0xe3, 0xb3, 0x3e, 0x28, 0xad, 0x40, 0x05, 0x52, 0x53, 0x84, 0x22, 0x7f, 0xb4, }; static const wycheproof_ecdh_test ecdh_secp384r1_5591 = { .name = "ecdh_secp384r1_5591", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5591_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5591_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5591_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5591_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 311 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5592 for ECDH, tcId is 312 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5592_peerpubkey[] = { 0xab, 0x14, 0x76, 0x4b, 0xf2, 0x4f, 0x83, 0x13, 0xb1, 0xc4, 0x9c, 0x4b, 0xd6, 0xe3, 0x67, 0x23, 0x12, 0x75, 0xb3, 0x03, 0xc6, 0x01, 0xc6, 0x6f, 0x7e, 0x8b, 0x31, 0x05, 0xc6, 0xb0, 0x2a, 0x90, 0xb6, 0x0f, 0x38, 0x74, 0x5d, 0x75, 0x5c, 0xe4, 0xdd, 0x40, 0x68, 0x1e, 0xd1, 0x5a, 0x1a, 0xc9, 0x3e, 0x14, 0xcf, 0x2f, 0xa7, 0x08, 0x30, 0x0a, 0x2b, 0x27, 0x9f, 0x2c, 0x37, 0xfb, 0xc0, 0xda, 0x71, 0x75, 0xc9, 0x2c, 0x11, 0x14, 0xc5, 0x7e, 0xf2, 0x51, 0x46, 0x7f, 0x6f, 0x3d, 0xe7, 0x9f, 0xbc, 0x38, 0xcb, 0x1e, 0x3d, 0xb7, 0x0e, 0x4d, 0x95, 0x22, 0x5f, 0xbd, 0x8a, 0xd9, 0x68, 0x89, }; static const unsigned char ecdh_secp384r1_5592_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5592_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5592_sharedsecret[] = { 0x26, 0x6b, 0x26, 0x1b, 0x6d, 0xd9, 0xeb, 0x51, 0x77, 0x0f, 0x6c, 0x4c, 0x11, 0xb8, 0x71, 0x34, 0xab, 0xff, 0x16, 0x29, 0xb6, 0x51, 0x71, 0x10, 0x7a, 0x9b, 0x20, 0xe0, 0xc7, 0xd1, 0x68, 0xe1, 0xef, 0xc3, 0xcb, 0xc4, 0x02, 0x46, 0x4f, 0x36, 0xae, 0xb3, 0xc0, 0x27, 0xb9, 0x19, 0x8e, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_5592 = { .name = "ecdh_secp384r1_5592", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5592_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5592_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5592_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5592_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 312 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5593 for ECDH, tcId is 313 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5593_peerpubkey[] = { 0x1e, 0x1f, 0xe9, 0x73, 0x0f, 0xcd, 0x5b, 0x87, 0xb0, 0x65, 0xfa, 0x90, 0xa6, 0x95, 0x34, 0x03, 0x6b, 0xe4, 0x57, 0x58, 0x51, 0x34, 0x43, 0xf7, 0x9c, 0x64, 0x27, 0xdb, 0xc3, 0x1f, 0xc4, 0x03, 0xe8, 0x94, 0x04, 0x3f, 0xb9, 0xc7, 0xf9, 0xf5, 0x8c, 0x0a, 0x36, 0x70, 0xb1, 0xc0, 0xd8, 0x03, 0x59, 0xdb, 0x8f, 0x6a, 0x48, 0x97, 0x0c, 0xcb, 0x99, 0x18, 0xce, 0xf0, 0x4f, 0x35, 0x2a, 0x4d, 0x91, 0xa2, 0x04, 0x50, 0x21, 0x19, 0xb2, 0xb7, 0xef, 0xc6, 0xc6, 0x71, 0xa6, 0xba, 0x45, 0x37, 0xe8, 0x2c, 0x19, 0x6e, 0x6d, 0x42, 0x68, 0x5c, 0x5a, 0x6f, 0x55, 0x9e, 0x4e, 0x8a, 0xf7, 0x04, }; static const unsigned char ecdh_secp384r1_5593_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5593_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5593_sharedsecret[] = { 0xfa, 0x9f, 0x20, 0x8d, 0xce, 0xde, 0xe5, 0x97, 0xf5, 0x11, 0x22, 0xe6, 0x27, 0x4b, 0x86, 0x71, 0x0e, 0x36, 0x56, 0x1f, 0x23, 0x61, 0xe7, 0x61, 0x86, 0xfc, 0xb7, 0x3d, 0x1d, 0x7f, 0x29, 0x28, 0x42, 0x6d, 0x98, 0xc3, 0xf6, 0x9e, 0x4c, 0xf4, 0x8d, 0x30, 0x01, 0xd6, 0x49, 0x70, 0x42, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5593 = { .name = "ecdh_secp384r1_5593", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5593_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5593_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5593_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5593_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 313 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5594 for ECDH, tcId is 314 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5594_peerpubkey[] = { 0x83, 0xfc, 0xea, 0x20, 0x8c, 0x79, 0x22, 0x7c, 0xbd, 0x97, 0x31, 0x9a, 0x86, 0x59, 0x7f, 0x85, 0xcb, 0xfc, 0x19, 0xef, 0x60, 0xc5, 0xba, 0x7a, 0x92, 0xfc, 0x52, 0x1c, 0x68, 0x5e, 0x20, 0x8c, 0xec, 0x77, 0x35, 0xbe, 0x9b, 0xe2, 0x7c, 0x73, 0x7d, 0x3f, 0x9d, 0x2f, 0xaa, 0x1c, 0x3f, 0x46, 0x95, 0xa3, 0x21, 0x84, 0xd5, 0x8f, 0xc9, 0x00, 0x14, 0x02, 0x43, 0x6c, 0xe0, 0x0b, 0x52, 0xb8, 0x88, 0x5b, 0xb1, 0x15, 0x0f, 0x61, 0xe6, 0x60, 0xec, 0xeb, 0xa1, 0x07, 0x68, 0xd0, 0xf4, 0x1d, 0x5e, 0x4e, 0x7c, 0x21, 0xd4, 0xfd, 0x90, 0x9a, 0xce, 0xaf, 0x61, 0xa7, 0x45, 0x5d, 0xd0, 0xc6, }; static const unsigned char ecdh_secp384r1_5594_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5594_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5594_sharedsecret[] = { 0x9a, 0x1d, 0xdf, 0x3d, 0x9f, 0xeb, 0x19, 0x0a, 0x26, 0xf2, 0x0e, 0xd9, 0x25, 0xff, 0xbd, 0x35, 0xdf, 0x10, 0x17, 0xc4, 0xa4, 0xc9, 0x48, 0x5d, 0x34, 0x4c, 0xb8, 0xf8, 0x1c, 0x7f, 0x45, 0x2b, 0x2f, 0xf3, 0xae, 0xc4, 0x4b, 0xaf, 0x34, 0xe5, 0x08, 0x86, 0xf1, 0x83, 0x48, 0x0b, 0x63, 0x25, }; static const wycheproof_ecdh_test ecdh_secp384r1_5594 = { .name = "ecdh_secp384r1_5594", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5594_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5594_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5594_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5594_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 314 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5595 for ECDH, tcId is 315 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5595_peerpubkey[] = { 0x2b, 0xf2, 0x69, 0x36, 0xc9, 0x16, 0x4b, 0xa1, 0x07, 0x25, 0x44, 0xc4, 0x10, 0x75, 0x76, 0x30, 0xb9, 0x7d, 0x4e, 0x85, 0x3f, 0xdb, 0x78, 0x44, 0xf1, 0x81, 0x15, 0x07, 0xd0, 0x4a, 0x68, 0x7d, 0x95, 0x1f, 0xa6, 0x5a, 0x34, 0x36, 0x4e, 0x89, 0x4c, 0xf8, 0xb0, 0x81, 0x5d, 0xb9, 0x5f, 0x5e, 0x10, 0x66, 0x46, 0x27, 0xbf, 0x6f, 0x72, 0x33, 0x0a, 0x2d, 0x6f, 0x21, 0x23, 0x61, 0xa2, 0x33, 0x15, 0x5a, 0xbb, 0x79, 0xda, 0x54, 0x34, 0x3b, 0x85, 0x72, 0xe3, 0x0e, 0xac, 0xe8, 0xc8, 0xf5, 0x48, 0x02, 0x00, 0xe7, 0x51, 0xc2, 0x10, 0x20, 0x78, 0x52, 0x88, 0x12, 0xc8, 0x3f, 0x3c, 0xf4, }; static const unsigned char ecdh_secp384r1_5595_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5595_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5595_sharedsecret[] = { 0x47, 0xe4, 0x60, 0x8e, 0x9b, 0xcc, 0xf6, 0xa3, 0x29, 0x6e, 0x41, 0xfe, 0x34, 0xeb, 0x71, 0x81, 0xa1, 0xb5, 0xec, 0x30, 0x6a, 0x93, 0xaa, 0xbd, 0x5f, 0xb3, 0x8e, 0x75, 0xe3, 0xd7, 0x5e, 0x8e, 0x2e, 0xe4, 0xc1, 0xc4, 0x4a, 0x7d, 0x08, 0x66, 0x06, 0x81, 0xb9, 0xfa, 0x66, 0x64, 0x29, 0x10, }; static const wycheproof_ecdh_test ecdh_secp384r1_5595 = { .name = "ecdh_secp384r1_5595", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5595_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5595_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5595_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5595_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 315 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5596 for ECDH, tcId is 316 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5596_peerpubkey[] = { 0xbb, 0x58, 0x3d, 0xa5, 0xde, 0x4c, 0x35, 0x2e, 0x8a, 0x4f, 0xad, 0x31, 0xe9, 0xf7, 0x12, 0x97, 0xbc, 0x96, 0x31, 0x34, 0xec, 0x18, 0x2e, 0x96, 0x37, 0x9c, 0x6b, 0x28, 0xa1, 0x1d, 0x25, 0xfa, 0x4b, 0x77, 0xa4, 0xa0, 0xf9, 0x47, 0x08, 0x5d, 0xb3, 0x3b, 0x0e, 0xa7, 0x7b, 0x9d, 0xa0, 0x9b, 0xe1, 0xa0, 0xbd, 0x13, 0x00, 0x38, 0x3e, 0xbd, 0x60, 0xb5, 0xaa, 0x6e, 0xeb, 0x20, 0xf0, 0x3d, 0x56, 0xdd, 0x14, 0xdf, 0x46, 0x15, 0x74, 0x65, 0x14, 0x62, 0x78, 0x53, 0x6e, 0xbc, 0x28, 0xc5, 0x47, 0x1a, 0x94, 0xf0, 0x95, 0x55, 0x4c, 0x4c, 0x08, 0x5a, 0xc9, 0xdc, 0xeb, 0x1d, 0xa5, 0x5f, }; static const unsigned char ecdh_secp384r1_5596_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5596_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5596_sharedsecret[] = { 0x83, 0x93, 0xa2, 0x68, 0x9b, 0x37, 0x6a, 0x22, 0x8f, 0x32, 0x33, 0xac, 0x61, 0x57, 0x8b, 0xe1, 0xaa, 0x2d, 0xe1, 0xdb, 0xfb, 0xb2, 0x8b, 0x03, 0xad, 0x24, 0xf1, 0x1a, 0xd9, 0xd7, 0x7f, 0x85, 0x43, 0xe0, 0x97, 0x7a, 0xea, 0x9a, 0x76, 0x1d, 0x84, 0xe1, 0x15, 0xb6, 0x15, 0x07, 0xae, 0x59, }; static const wycheproof_ecdh_test ecdh_secp384r1_5596 = { .name = "ecdh_secp384r1_5596", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5596_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5596_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5596_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5596_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 316 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5597 for ECDH, tcId is 317 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5597_peerpubkey[] = { 0xe3, 0x77, 0x91, 0x59, 0x5b, 0x54, 0xe9, 0xb1, 0x7c, 0xc3, 0x07, 0x26, 0xd2, 0x42, 0x5e, 0xea, 0xcc, 0x96, 0x72, 0xf5, 0xfb, 0xc9, 0x1f, 0xc1, 0x08, 0xcf, 0x8c, 0x84, 0xff, 0xf9, 0xb6, 0x6e, 0xa6, 0x54, 0x83, 0x84, 0x1b, 0x76, 0x18, 0x69, 0x48, 0x15, 0xe1, 0xa4, 0x15, 0x18, 0x6b, 0xa7, 0x27, 0xaf, 0x3a, 0xe6, 0xc6, 0x58, 0xeb, 0x8c, 0x48, 0x5d, 0x6a, 0xd8, 0xe4, 0x9c, 0x1e, 0xad, 0xe7, 0x51, 0x45, 0x75, 0x62, 0xd6, 0x00, 0x3d, 0xe7, 0x5c, 0xd1, 0xf1, 0xe1, 0x3e, 0xc1, 0x5e, 0xa1, 0xd0, 0x41, 0x36, 0x02, 0xed, 0x7f, 0x6a, 0x6b, 0x7b, 0x84, 0xef, 0xd8, 0xa3, 0x05, 0x6e, }; static const unsigned char ecdh_secp384r1_5597_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5597_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5597_sharedsecret[] = { 0x20, 0x94, 0x17, 0xda, 0x72, 0x1b, 0x49, 0xd6, 0x4d, 0xfa, 0x09, 0x98, 0x3a, 0x86, 0x83, 0x52, 0x0e, 0x5e, 0x30, 0x0a, 0x52, 0xb2, 0xe8, 0xf1, 0x67, 0x77, 0x72, 0xee, 0x3c, 0x08, 0x6b, 0x33, 0x9a, 0x1d, 0xa2, 0x5c, 0xab, 0x2b, 0xe6, 0xe4, 0x4d, 0xe4, 0x52, 0x6c, 0x31, 0xf4, 0xeb, 0xbc, }; static const wycheproof_ecdh_test ecdh_secp384r1_5597 = { .name = "ecdh_secp384r1_5597", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5597_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5597_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5597_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5597_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 317 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5598 for ECDH, tcId is 318 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5598_peerpubkey[] = { 0x7f, 0x12, 0xcb, 0x98, 0x7b, 0x08, 0xc2, 0x35, 0x52, 0x34, 0x65, 0x14, 0x6b, 0x42, 0x25, 0x85, 0x84, 0x39, 0x80, 0x62, 0xa1, 0x07, 0x42, 0x9c, 0xe4, 0x86, 0xb4, 0xb2, 0xf2, 0x6a, 0x96, 0x28, 0x29, 0x3a, 0xe4, 0xd3, 0x0a, 0xa6, 0x1c, 0x64, 0xbf, 0x92, 0xf9, 0x7e, 0x6c, 0x08, 0xae, 0xa8, 0xd6, 0x62, 0x1c, 0xfc, 0xe5, 0x27, 0x0c, 0xd7, 0xfa, 0x69, 0xdc, 0xb0, 0x38, 0xed, 0x8b, 0xa4, 0x28, 0xaf, 0xd7, 0x7d, 0x52, 0x8c, 0x23, 0x0f, 0x8e, 0x5c, 0x9b, 0x83, 0xef, 0x65, 0x9c, 0x7e, 0x57, 0x3f, 0x66, 0x71, 0xa1, 0x8d, 0x8b, 0x8c, 0x4c, 0xeb, 0x20, 0xf2, 0xd7, 0x60, 0x85, 0x8e, }; static const unsigned char ecdh_secp384r1_5598_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5598_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5598_sharedsecret[] = { 0xe7, 0xea, 0xc4, 0x60, 0xea, 0xda, 0x6e, 0xb9, 0x99, 0x88, 0xcc, 0x39, 0xf6, 0x12, 0x9a, 0x74, 0xd9, 0x51, 0x0d, 0x2e, 0xc3, 0x96, 0x01, 0xad, 0xae, 0x76, 0xb2, 0xb8, 0xfd, 0x61, 0x22, 0x40, 0x7b, 0x79, 0x41, 0x1f, 0x8e, 0x7a, 0xdf, 0xbc, 0x4f, 0x0d, 0xc5, 0x0d, 0xa9, 0xf2, 0xb8, 0x2b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5598 = { .name = "ecdh_secp384r1_5598", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5598_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5598_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5598_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5598_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 318 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5599 for ECDH, tcId is 319 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5599_peerpubkey[] = { 0xdc, 0x4f, 0x06, 0xd6, 0x71, 0xd8, 0x60, 0x12, 0xcd, 0x5c, 0xe1, 0x03, 0x77, 0xff, 0xef, 0xbd, 0xe6, 0x57, 0xda, 0x08, 0xfa, 0x92, 0x59, 0xe4, 0xae, 0xff, 0xe6, 0x21, 0x1a, 0xc5, 0x7f, 0x6e, 0x1c, 0x5b, 0xf8, 0x73, 0x29, 0x89, 0xd4, 0x4c, 0x13, 0x42, 0xa8, 0x4f, 0xa6, 0xfd, 0x7f, 0xba, 0x27, 0x14, 0xce, 0x23, 0xcc, 0x0f, 0x8e, 0x0a, 0x8b, 0xda, 0x59, 0x3e, 0xc2, 0xb4, 0xb5, 0x29, 0x4f, 0xfc, 0x03, 0x63, 0xe6, 0xe8, 0x94, 0x03, 0xd4, 0x48, 0x2f, 0x35, 0x37, 0xdb, 0xa9, 0xe4, 0xf3, 0x6b, 0xe6, 0x8d, 0x8e, 0x2e, 0xda, 0xfd, 0x8c, 0xc2, 0xc0, 0x1f, 0x5f, 0x7d, 0xce, 0xc4, }; static const unsigned char ecdh_secp384r1_5599_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5599_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5599_sharedsecret[] = { 0x5a, 0x19, 0x7a, 0x9a, 0x87, 0x93, 0xd9, 0x4d, 0x8b, 0x84, 0x08, 0x4c, 0x6d, 0xc3, 0x6c, 0x36, 0xa2, 0x93, 0xac, 0x90, 0x33, 0x7a, 0x1c, 0xf6, 0xa2, 0x65, 0x34, 0x35, 0xd0, 0x5e, 0x2f, 0x56, 0x3b, 0xfd, 0x29, 0x33, 0xf2, 0x3e, 0xd3, 0xae, 0xfd, 0x75, 0x55, 0x5e, 0xad, 0x76, 0xe8, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_5599 = { .name = "ecdh_secp384r1_5599", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5599_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5599_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5599_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5599_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 319 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5600 for ECDH, tcId is 320 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5600_peerpubkey[] = { 0xca, 0x1e, 0xc6, 0x79, 0x8c, 0x56, 0x67, 0x81, 0x3b, 0xfc, 0x45, 0xdd, 0x18, 0x15, 0xe8, 0x2b, 0xec, 0x93, 0xea, 0xa7, 0x08, 0x10, 0x69, 0x76, 0x7b, 0xec, 0x36, 0x85, 0xcd, 0xfa, 0x56, 0x26, 0x7f, 0xc2, 0x4d, 0xa6, 0xc1, 0x86, 0xd8, 0xb3, 0x27, 0x16, 0x27, 0xa8, 0x52, 0x56, 0x0c, 0x5a, 0x09, 0x7d, 0x7c, 0x41, 0xe6, 0x10, 0xe5, 0x26, 0x7d, 0xab, 0xf5, 0x25, 0x76, 0x3f, 0x4a, 0x4a, 0x74, 0x78, 0xc5, 0xf9, 0xae, 0x4b, 0x80, 0xba, 0xa1, 0xe6, 0x20, 0xac, 0x1f, 0x22, 0xd8, 0x68, 0x9b, 0x07, 0xed, 0x9a, 0x99, 0xdc, 0xe0, 0xcd, 0x4a, 0x11, 0x68, 0x2f, 0x07, 0x22, 0x7f, 0xc4, }; static const unsigned char ecdh_secp384r1_5600_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5600_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5600_sharedsecret[] = { 0x8b, 0xf5, 0x20, 0x33, 0x7d, 0xe6, 0xe5, 0xc6, 0xf2, 0x70, 0x05, 0x16, 0x1b, 0x3b, 0x2f, 0x1c, 0xf0, 0x87, 0x59, 0x52, 0x7c, 0x8f, 0xc7, 0x93, 0x5e, 0x36, 0x21, 0xf6, 0x89, 0x36, 0xf1, 0x91, 0xac, 0x6e, 0x93, 0x1b, 0x79, 0x42, 0x78, 0xd3, 0xca, 0x1e, 0x37, 0x72, 0xdb, 0xfb, 0x19, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp384r1_5600 = { .name = "ecdh_secp384r1_5600", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5600_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5600_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5600_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5600_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 320 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5601 for ECDH, tcId is 321 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5601_peerpubkey[] = { 0x44, 0xb9, 0xe9, 0x76, 0xb9, 0xe8, 0x9a, 0xa3, 0x15, 0x19, 0xfc, 0x0a, 0x35, 0x28, 0x8c, 0x55, 0xe2, 0xd7, 0x63, 0x0a, 0x1c, 0xd1, 0xff, 0xfd, 0x28, 0x8c, 0xda, 0xc8, 0xc7, 0x4b, 0xc2, 0xed, 0xcb, 0x0f, 0xf8, 0x78, 0xfc, 0xcc, 0xeb, 0xbb, 0x78, 0xdf, 0x9e, 0x7e, 0xb0, 0xaf, 0xa6, 0xb1, 0x38, 0x47, 0x82, 0xb8, 0xa1, 0x13, 0x89, 0x46, 0x59, 0x4d, 0x8f, 0xd3, 0xb6, 0xc9, 0xb4, 0x95, 0x4e, 0x73, 0xd8, 0xc0, 0x40, 0xa7, 0xa1, 0x53, 0xf3, 0xda, 0x5a, 0x40, 0xf9, 0xfd, 0xaf, 0x3b, 0xf3, 0x1a, 0x45, 0x22, 0x41, 0x6c, 0x31, 0x6f, 0x10, 0xdc, 0x7c, 0xd8, 0xaf, 0xc2, 0x84, 0x9b, }; static const unsigned char ecdh_secp384r1_5601_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5601_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5601_sharedsecret[] = { 0x1e, 0x56, 0xdc, 0x30, 0xda, 0xd3, 0x3e, 0x34, 0x27, 0x35, 0x35, 0x68, 0x86, 0x05, 0xbb, 0x98, 0xad, 0x7c, 0x6d, 0xd5, 0x1d, 0x92, 0x67, 0xc9, 0x0a, 0x62, 0x56, 0x2d, 0x08, 0xe4, 0x7d, 0xd6, 0x84, 0x18, 0x0d, 0x4a, 0xb7, 0xab, 0xb6, 0xcc, 0x14, 0xae, 0x4c, 0x9b, 0xd6, 0xae, 0x9e, 0x92, }; static const wycheproof_ecdh_test ecdh_secp384r1_5601 = { .name = "ecdh_secp384r1_5601", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5601_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5601_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5601_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5601_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 321 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5602 for ECDH, tcId is 322 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5602_peerpubkey[] = { 0xcf, 0x66, 0x1b, 0x71, 0xc2, 0xb8, 0x73, 0x4f, 0x7c, 0xf5, 0x14, 0x2a, 0x66, 0xed, 0xf7, 0x87, 0xc5, 0x6a, 0x33, 0x17, 0x43, 0x03, 0xc2, 0x07, 0x41, 0xf0, 0x7e, 0x0c, 0x34, 0x8e, 0x1b, 0x54, 0x25, 0x70, 0x5d, 0x9e, 0xbb, 0xb4, 0x59, 0x96, 0x76, 0x21, 0xde, 0xd6, 0xeb, 0x56, 0xd7, 0x10, 0x37, 0x33, 0x7a, 0xa1, 0x6e, 0x1c, 0xf6, 0xe5, 0x03, 0x18, 0x21, 0x84, 0xc9, 0x45, 0x1f, 0x9b, 0xa4, 0x57, 0xd8, 0x1a, 0x03, 0x13, 0xfb, 0x98, 0x73, 0x43, 0xb8, 0xb3, 0x93, 0x44, 0xf3, 0x69, 0x32, 0x98, 0x01, 0x0c, 0xd5, 0xb7, 0x3e, 0x38, 0xbc, 0xde, 0xce, 0x66, 0xc6, 0x7f, 0xa5, 0x08, }; static const unsigned char ecdh_secp384r1_5602_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5602_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5602_sharedsecret[] = { 0x14, 0xe3, 0xa9, 0x7e, 0x9e, 0xe6, 0x90, 0x89, 0x41, 0x0b, 0x72, 0x45, 0x98, 0x70, 0x49, 0x5a, 0x03, 0x7d, 0x40, 0x77, 0xbb, 0xa0, 0x27, 0xef, 0xf4, 0xc4, 0x99, 0x56, 0x7d, 0x7e, 0x7f, 0x1a, 0xf2, 0x72, 0x0e, 0x1f, 0xed, 0xd0, 0x7b, 0xd7, 0x80, 0x50, 0x9a, 0x45, 0x16, 0xfa, 0x5c, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_5602 = { .name = "ecdh_secp384r1_5602", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5602_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5602_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5602_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5602_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 322 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5603 for ECDH, tcId is 323 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5603_peerpubkey[] = { 0x50, 0x79, 0x09, 0x08, 0xc0, 0x43, 0x34, 0x4e, 0x1c, 0xf4, 0x2b, 0x27, 0xe4, 0xdc, 0x33, 0xa3, 0x5d, 0x68, 0xa0, 0xb9, 0x3b, 0xe0, 0xec, 0x2b, 0xe0, 0x57, 0x45, 0xb3, 0xc8, 0x3c, 0x35, 0xf0, 0xa3, 0xec, 0xc3, 0xed, 0x27, 0xfb, 0x31, 0x88, 0xa5, 0xed, 0x9f, 0x24, 0xcd, 0xbd, 0x29, 0xd1, 0xb0, 0xf0, 0x3f, 0xf8, 0x5f, 0xd7, 0xfc, 0xad, 0x4e, 0xa5, 0xbb, 0xd8, 0xbd, 0x4c, 0x42, 0x93, 0x5f, 0x09, 0x57, 0xca, 0x80, 0x11, 0xcf, 0xc9, 0x3e, 0xbe, 0xb7, 0x89, 0xc4, 0x72, 0x14, 0xe6, 0x0e, 0x5d, 0xa1, 0x6e, 0x4d, 0xd8, 0x7a, 0x53, 0x54, 0x7e, 0xed, 0xee, 0x47, 0x9b, 0x09, 0x78, }; static const unsigned char ecdh_secp384r1_5603_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5603_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5603_sharedsecret[] = { 0x85, 0xa8, 0xdd, 0xb9, 0x99, 0x7e, 0x25, 0x25, 0xcd, 0x55, 0x57, 0x21, 0xf2, 0xd5, 0xf3, 0xb1, 0x99, 0xff, 0x76, 0xb5, 0x7e, 0x91, 0xee, 0xc6, 0xfc, 0x7d, 0x2c, 0x95, 0x70, 0x3a, 0x1a, 0x32, 0xf4, 0x6e, 0x3d, 0x46, 0x95, 0x2a, 0x90, 0xb5, 0x10, 0x54, 0xc5, 0xfd, 0x04, 0x6b, 0x31, 0x07, }; static const wycheproof_ecdh_test ecdh_secp384r1_5603 = { .name = "ecdh_secp384r1_5603", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5603_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5603_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5603_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5603_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 323 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5604 for ECDH, tcId is 324 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5604_peerpubkey[] = { 0x23, 0x95, 0xd0, 0x07, 0x79, 0xb6, 0xc7, 0xd4, 0xda, 0xd8, 0xcc, 0x9a, 0x89, 0x18, 0x49, 0x6c, 0x28, 0xb2, 0xd4, 0x07, 0x7e, 0x68, 0x86, 0xd0, 0xa1, 0xbe, 0xf5, 0x15, 0xe3, 0x12, 0x5d, 0xdd, 0x81, 0x3e, 0x5a, 0x9e, 0xa0, 0xf1, 0x85, 0xcd, 0x00, 0x9a, 0x69, 0xea, 0x92, 0x21, 0x01, 0x74, 0xb6, 0x76, 0x77, 0x5f, 0x76, 0x31, 0x83, 0xc8, 0x6f, 0x6f, 0xa5, 0x05, 0x51, 0xba, 0x13, 0x7d, 0x79, 0xa8, 0x3e, 0x8e, 0x32, 0xff, 0x2f, 0xc0, 0x9a, 0x2c, 0x28, 0xcd, 0xf8, 0x0c, 0xdd, 0xaf, 0xcc, 0x0f, 0x40, 0x69, 0x3e, 0x39, 0x85, 0xf2, 0x8f, 0xe5, 0xc7, 0xdf, 0xe2, 0xd8, 0xb2, 0x75, }; static const unsigned char ecdh_secp384r1_5604_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5604_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5604_sharedsecret[] = { 0xc2, 0x69, 0x46, 0x5c, 0xfb, 0x33, 0x6e, 0xd8, 0xc7, 0xe9, 0xc0, 0x37, 0x73, 0x49, 0x19, 0x3a, 0xa4, 0xdb, 0xdb, 0x92, 0xa9, 0xf4, 0x67, 0x0d, 0xbf, 0x7f, 0xa7, 0xa1, 0xf7, 0x55, 0x6e, 0x8e, 0x4b, 0x24, 0x0d, 0x5b, 0x70, 0xed, 0xee, 0xdd, 0x1b, 0xf5, 0xce, 0x76, 0x9c, 0xb8, 0x41, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5604 = { .name = "ecdh_secp384r1_5604", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5604_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5604_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5604_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5604_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 324 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5605 for ECDH, tcId is 325 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5605_peerpubkey[] = { 0x56, 0x34, 0xee, 0x15, 0x52, 0x63, 0xc0, 0x7d, 0x7d, 0x1e, 0x34, 0x6b, 0x86, 0x8d, 0xdd, 0x80, 0xe9, 0xa2, 0x82, 0xfc, 0xef, 0x93, 0xbf, 0x6d, 0xf8, 0xe8, 0xbc, 0x4e, 0xa3, 0x4f, 0xf0, 0x2e, 0x11, 0x9a, 0x9f, 0x70, 0x78, 0x16, 0xd0, 0x63, 0x68, 0xcc, 0xb9, 0x4c, 0x6e, 0x48, 0x02, 0xfb, 0xaa, 0xdc, 0x33, 0x99, 0x15, 0x74, 0xdd, 0xe8, 0x51, 0xe5, 0x47, 0xe4, 0x70, 0x27, 0xf5, 0x43, 0x53, 0xe0, 0x2d, 0x70, 0xbe, 0x6b, 0xfa, 0x9f, 0x73, 0x95, 0x3c, 0xa2, 0x59, 0x01, 0x1f, 0x23, 0xa4, 0xa8, 0x0c, 0xbb, 0xaa, 0xe8, 0x80, 0x5d, 0x9d, 0x09, 0x4e, 0xf1, 0x50, 0xe0, 0xc5, 0x4a, }; static const unsigned char ecdh_secp384r1_5605_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5605_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5605_sharedsecret[] = { 0x6a, 0x21, 0xf2, 0x44, 0x47, 0x25, 0x22, 0x38, 0x9f, 0x08, 0x4e, 0x2e, 0x4a, 0xe9, 0x9b, 0x74, 0x7b, 0x39, 0xcb, 0xee, 0x99, 0x6c, 0xe9, 0xa3, 0xfa, 0x05, 0x35, 0x32, 0x19, 0xb6, 0x0c, 0x20, 0xfa, 0x38, 0x34, 0xd3, 0x9b, 0x0b, 0x82, 0x6f, 0x10, 0x96, 0xb7, 0xa4, 0x67, 0xe8, 0xa2, 0x18, }; static const wycheproof_ecdh_test ecdh_secp384r1_5605 = { .name = "ecdh_secp384r1_5605", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5605_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5605_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5605_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5605_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 325 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5606 for ECDH, tcId is 326 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5606_peerpubkey[] = { 0x63, 0xaa, 0x6c, 0x3c, 0x24, 0x9a, 0x32, 0xeb, 0xbc, 0xcc, 0xe6, 0x5f, 0xfa, 0x1c, 0x56, 0xa2, 0x05, 0x64, 0x4b, 0x2c, 0x40, 0xb9, 0x31, 0xb1, 0xec, 0x9b, 0x04, 0x2b, 0x52, 0xc1, 0xe9, 0x9c, 0xd0, 0x7e, 0x53, 0x82, 0x99, 0xfb, 0x83, 0x7f, 0xe6, 0x75, 0x86, 0xaa, 0xe7, 0x1b, 0x47, 0x06, 0x16, 0x6a, 0xc4, 0x50, 0xfb, 0xd6, 0xd4, 0x92, 0x1b, 0x44, 0x2a, 0x11, 0x67, 0x9f, 0x77, 0x86, 0xba, 0x5a, 0x77, 0x2a, 0xb3, 0x3d, 0xb0, 0x05, 0x43, 0xa9, 0x41, 0xbb, 0xc0, 0x15, 0xe2, 0x35, 0x81, 0xba, 0x62, 0x5a, 0x72, 0xc0, 0xe4, 0xeb, 0x44, 0x83, 0x8e, 0x5f, 0x40, 0x6c, 0xa1, 0xdc, }; static const unsigned char ecdh_secp384r1_5606_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5606_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5606_sharedsecret[] = { 0xc4, 0x69, 0x91, 0x9f, 0x58, 0xd8, 0x0b, 0x1e, 0x45, 0xd5, 0xd5, 0x3e, 0xe2, 0x8d, 0x61, 0x6b, 0xdf, 0x82, 0x7a, 0x88, 0xe0, 0xb2, 0xf4, 0x99, 0x29, 0x1e, 0xc4, 0xf7, 0x6c, 0x3c, 0x89, 0xf2, 0x76, 0x77, 0x6e, 0xa9, 0x6a, 0x6b, 0x90, 0x53, 0xcf, 0x02, 0x77, 0x66, 0x98, 0x86, 0x45, 0x26, }; static const wycheproof_ecdh_test ecdh_secp384r1_5606 = { .name = "ecdh_secp384r1_5606", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5606_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5606_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5606_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5606_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 326 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5607 for ECDH, tcId is 327 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5607_peerpubkey[] = { 0xa2, 0x87, 0xbd, 0x74, 0xd5, 0x01, 0xc2, 0x9d, 0xf2, 0x3d, 0x78, 0x6b, 0x7c, 0x34, 0xea, 0x0d, 0xaf, 0x10, 0xe4, 0xb3, 0xfc, 0xe7, 0x1d, 0x72, 0x0f, 0x61, 0xa2, 0x72, 0xf2, 0x21, 0x51, 0xdb, 0x2c, 0x59, 0x14, 0x86, 0x74, 0x93, 0x02, 0x8c, 0x01, 0xe1, 0x03, 0x82, 0x0b, 0x0b, 0xa6, 0xb1, 0x21, 0xcb, 0x29, 0x8f, 0xf8, 0x97, 0x7e, 0xcf, 0x21, 0xfe, 0xa8, 0xee, 0x1b, 0x6b, 0xa7, 0xd9, 0xb9, 0x8d, 0xac, 0xc2, 0xa4, 0x5d, 0x75, 0xc6, 0x3e, 0xc8, 0x32, 0x30, 0x01, 0xa9, 0xbf, 0x5f, 0x5b, 0xa4, 0xd3, 0xcb, 0xfe, 0xe8, 0x04, 0x82, 0xca, 0x13, 0x33, 0xf4, 0xde, 0x90, 0xa1, 0x4a, }; static const unsigned char ecdh_secp384r1_5607_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5607_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5607_sharedsecret[] = { 0x18, 0xdd, 0x1d, 0x7b, 0x6b, 0xbc, 0x63, 0x11, 0xaf, 0xe5, 0x38, 0x3d, 0x79, 0x6a, 0x5f, 0xec, 0x13, 0x84, 0x4b, 0xae, 0x25, 0x70, 0x87, 0x25, 0x55, 0x4d, 0xe0, 0xb5, 0xf0, 0x3e, 0xc0, 0xf7, 0xd2, 0xe6, 0x3b, 0x64, 0xdb, 0x5f, 0x83, 0xd4, 0xee, 0x98, 0x90, 0xc6, 0x1e, 0x44, 0x2c, 0x41, }; static const wycheproof_ecdh_test ecdh_secp384r1_5607 = { .name = "ecdh_secp384r1_5607", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5607_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5607_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5607_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5607_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 327 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5608 for ECDH, tcId is 328 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5608_peerpubkey[] = { 0xba, 0x40, 0x6b, 0x46, 0xc1, 0xd9, 0x2d, 0x4b, 0xa3, 0xf4, 0x0b, 0x7b, 0x1f, 0xcf, 0x1e, 0x18, 0x22, 0x89, 0xb8, 0x4c, 0xdb, 0x38, 0x7f, 0x28, 0xe5, 0xad, 0x20, 0xf1, 0xed, 0x8c, 0x43, 0xfe, 0x5f, 0xfa, 0x37, 0x12, 0x84, 0x62, 0x76, 0x30, 0x51, 0xe8, 0x7f, 0x0d, 0x5e, 0xbf, 0xcd, 0x9d, 0x9d, 0xd4, 0x10, 0x7c, 0xe4, 0xd9, 0x2d, 0x78, 0x3d, 0x0f, 0x0f, 0x81, 0xd7, 0xa9, 0x98, 0xb7, 0x60, 0x60, 0x73, 0x5b, 0x6f, 0xd6, 0x3b, 0xfc, 0xd9, 0x71, 0xca, 0x70, 0x13, 0x2f, 0xe6, 0xdc, 0x9f, 0xbf, 0x85, 0x34, 0xec, 0xc7, 0x4b, 0x50, 0x1e, 0xa0, 0x1c, 0xd2, 0xe4, 0xf6, 0xc5, 0x64, }; static const unsigned char ecdh_secp384r1_5608_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5608_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5608_sharedsecret[] = { 0xd6, 0x39, 0xb9, 0xc3, 0x1a, 0xd3, 0xce, 0xdd, 0xda, 0x77, 0x45, 0xd1, 0x9e, 0x82, 0xfd, 0xe2, 0x72, 0xa8, 0x6d, 0x31, 0xf8, 0xe6, 0xc2, 0x03, 0xee, 0xd5, 0x3b, 0xcb, 0x70, 0x5e, 0x9f, 0xf5, 0x8d, 0x65, 0x9f, 0x8e, 0x9d, 0x66, 0xaa, 0x04, 0x92, 0xda, 0x54, 0x5a, 0x39, 0x92, 0x94, 0xec, }; static const wycheproof_ecdh_test ecdh_secp384r1_5608 = { .name = "ecdh_secp384r1_5608", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5608_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5608_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5608_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5608_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 328 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5609 for ECDH, tcId is 329 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5609_peerpubkey[] = { 0x22, 0x61, 0xb2, 0xbf, 0x60, 0x5c, 0x22, 0xf2, 0xf3, 0xae, 0xf6, 0x33, 0x87, 0x19, 0xb2, 0xc4, 0x86, 0x38, 0x8a, 0xd5, 0x24, 0x07, 0x19, 0xa5, 0x25, 0x73, 0x15, 0x96, 0x9e, 0xf0, 0x1b, 0xa2, 0x7f, 0x0a, 0x10, 0x4c, 0x89, 0x70, 0x47, 0x73, 0xa8, 0x1f, 0xda, 0xbe, 0xe6, 0xab, 0x5c, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_5609_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5609_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5609_sharedsecret[] = { 0xc9, 0x23, 0xfb, 0x0d, 0x4b, 0x24, 0xe9, 0x96, 0xe5, 0xe0, 0xd5, 0xdf, 0x15, 0x1d, 0x3c, 0x26, 0xb1, 0xf6, 0x1c, 0x05, 0xb1, 0x7b, 0x7f, 0xb3, 0x9f, 0xc8, 0x59, 0x0b, 0x47, 0xee, 0xaf, 0xf3, 0x47, 0x09, 0xf6, 0xf7, 0x32, 0x89, 0x23, 0xbd, 0xca, 0xf7, 0xe8, 0xe4, 0x13, 0xd7, 0x7d, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp384r1_5609 = { .name = "ecdh_secp384r1_5609", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5609_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5609_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5609_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5609_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 329 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5610 for ECDH, tcId is 330 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5610_peerpubkey[] = { 0xd3, 0x9c, 0x38, 0xaa, 0xfa, 0x09, 0x52, 0x33, 0xef, 0x1a, 0xf8, 0xc0, 0xf4, 0xaa, 0xf3, 0x57, 0xdd, 0x68, 0x41, 0x31, 0xb4, 0xac, 0x58, 0xa5, 0x34, 0xf3, 0xd9, 0x44, 0x61, 0x96, 0xb6, 0x00, 0x92, 0x07, 0x2d, 0xc7, 0xe5, 0x38, 0x10, 0x6b, 0x7b, 0x2e, 0x66, 0xdc, 0x33, 0xca, 0xc7, 0x28, 0x3a, 0x1b, 0x20, 0x3f, 0xca, 0x47, 0x82, 0x8e, 0x6f, 0x7a, 0x09, 0xaf, 0x64, 0x5a, 0xf0, 0xf7, 0x29, 0x80, 0x2c, 0xa2, 0xf4, 0x00, 0x0c, 0x4b, 0x97, 0x73, 0xb0, 0x8c, 0x5a, 0xf4, 0x0e, 0x20, 0x1a, 0x27, 0x49, 0x3a, 0xb3, 0xeb, 0xa9, 0xca, 0xd7, 0xda, 0x15, 0x7f, 0x89, 0xf1, 0x4a, 0x2c, }; static const unsigned char ecdh_secp384r1_5610_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5610_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5610_sharedsecret[] = { 0xaf, 0x39, 0x04, 0xf8, 0x3b, 0x9a, 0x0e, 0x95, 0xee, 0x0b, 0x86, 0xb0, 0x61, 0x55, 0x99, 0x3a, 0xe5, 0x98, 0xd1, 0x48, 0x98, 0x36, 0x6e, 0x5d, 0xcf, 0xc6, 0x43, 0xde, 0x9d, 0x5a, 0xb7, 0x2f, 0xc5, 0xfb, 0xef, 0x17, 0xd0, 0xa8, 0xfb, 0x36, 0xeb, 0xfd, 0xdc, 0xe4, 0x6e, 0x5d, 0x44, 0x55, }; static const wycheproof_ecdh_test ecdh_secp384r1_5610 = { .name = "ecdh_secp384r1_5610", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5610_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5610_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5610_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5610_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 330 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5611 for ECDH, tcId is 331 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5611_peerpubkey[] = { 0x86, 0xda, 0x57, 0x85, 0x67, 0x78, 0x8e, 0xa3, 0xcc, 0x0f, 0x2a, 0x9d, 0xa8, 0xd1, 0x39, 0x3e, 0xd3, 0xa4, 0x44, 0x7a, 0x75, 0xc1, 0x8e, 0xa8, 0x6a, 0xf9, 0xd8, 0x4b, 0x0c, 0xac, 0xc3, 0xb0, 0x37, 0x49, 0x19, 0x98, 0x90, 0xef, 0x8e, 0x5d, 0x31, 0x88, 0xd4, 0xf1, 0xd0, 0x41, 0xd4, 0x6e, 0x43, 0x3a, 0xcd, 0x5d, 0x9f, 0x55, 0x42, 0x43, 0x9e, 0xb2, 0x38, 0x4e, 0xc1, 0xde, 0x08, 0x47, 0xd0, 0x56, 0x05, 0x8e, 0xa9, 0x24, 0x89, 0xa7, 0x4e, 0x08, 0x3f, 0xfd, 0x6e, 0x03, 0x0d, 0x06, 0x0f, 0xad, 0x67, 0x4f, 0x6a, 0x2a, 0x9a, 0x7c, 0x21, 0x98, 0xb8, 0xbe, 0x9e, 0x46, 0x5b, 0xae, }; static const unsigned char ecdh_secp384r1_5611_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5611_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5611_sharedsecret[] = { 0x11, 0x24, 0xbe, 0xdd, 0x4c, 0x53, 0x8a, 0xe7, 0x12, 0x93, 0x08, 0x5f, 0x2c, 0x95, 0xcf, 0x6b, 0x13, 0xcf, 0xe7, 0x41, 0xf2, 0x1d, 0x62, 0xc1, 0xf0, 0x2a, 0x1e, 0x91, 0x16, 0x67, 0xd5, 0x34, 0x8b, 0x16, 0xd8, 0xaf, 0xb5, 0x44, 0x02, 0x1a, 0xcd, 0xc3, 0xcb, 0x74, 0x48, 0xd4, 0xd3, 0x58, }; static const wycheproof_ecdh_test ecdh_secp384r1_5611 = { .name = "ecdh_secp384r1_5611", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5611_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5611_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5611_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5611_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1, tcId is 331 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5612 for ECDH, tcId is 332 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5612_peerpubkey[] = { 0x11, 0x14, 0x47, 0xd2, 0x42, 0xf6, 0xb4, 0x21, 0xca, 0x91, 0xf5, 0x61, 0xd0, 0x4b, 0x2f, 0x1d, 0x2f, 0x0d, 0x92, 0x12, 0xd9, 0x18, 0xbb, 0x4a, 0x0f, 0xfb, 0x1a, 0xe6, 0x45, 0x9d, 0x07, 0x8e, 0x21, 0xa3, 0x12, 0xb2, 0xa1, 0x25, 0x94, 0xfc, 0x8c, 0x78, 0xfe, 0x94, 0x4c, 0x81, 0xd5, 0x13, 0xd3, 0xc9, 0x81, 0xd5, 0xe9, 0xcd, 0xa0, 0x6c, 0x43, 0x80, 0xd1, 0xa8, 0x42, 0xca, 0x5b, 0xb5, 0x1e, 0xd3, 0xa7, 0x12, 0xb0, 0x49, 0xdd, 0xa3, 0xa5, 0x0c, 0xe1, 0x0a, 0x9f, 0xbd, 0x0b, 0x69, 0xdf, 0xff, 0xaf, 0xf0, 0x78, 0x7c, 0x74, 0xd8, 0x32, 0x37, 0xba, 0x9c, 0x46, 0x86, 0xa0, 0x1e, }; static const unsigned char ecdh_secp384r1_5612_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5612_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5612_sharedsecret[] = { 0x69, 0x42, 0x61, 0x58, 0xa2, 0x99, 0x71, 0xef, 0x44, 0xb1, 0x17, 0x83, 0xef, 0x55, 0x9e, 0xf4, 0x29, 0x72, 0x46, 0x61, 0x1c, 0x99, 0x4d, 0x48, 0x15, 0x63, 0x71, 0x28, 0x86, 0x9d, 0x5f, 0x6a, 0x02, 0x02, 0x63, 0x2f, 0xe9, 0xb5, 0xad, 0x7c, 0x36, 0x5b, 0x63, 0x05, 0x0c, 0x9f, 0x2d, 0x08, }; static const wycheproof_ecdh_test ecdh_secp384r1_5612 = { .name = "ecdh_secp384r1_5612", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5612_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5612_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5612_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5612_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 332 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5613 for ECDH, tcId is 333 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5613_peerpubkey[] = { 0xd7, 0xcd, 0x50, 0x24, 0xc4, 0x48, 0x1e, 0x27, 0xd1, 0x65, 0x35, 0x66, 0x15, 0x2e, 0xfb, 0xa3, 0x28, 0x4b, 0x50, 0xba, 0x2a, 0x14, 0x1b, 0x26, 0x43, 0xff, 0xda, 0x18, 0xf3, 0x00, 0xfa, 0x64, 0xb8, 0x1b, 0x23, 0x4b, 0x8f, 0x64, 0x6c, 0xab, 0x47, 0x28, 0xb4, 0xe7, 0xa9, 0x70, 0x24, 0xd7, 0x68, 0x50, 0xae, 0xc0, 0xa2, 0xd1, 0x31, 0xc6, 0xac, 0xd5, 0xb2, 0x98, 0xb6, 0xf9, 0x05, 0xcd, 0xba, 0x18, 0xe6, 0x85, 0x64, 0xbc, 0x31, 0xf8, 0x82, 0xfe, 0xd5, 0x1b, 0x28, 0x78, 0x6a, 0x2e, 0x72, 0xf8, 0x81, 0x26, 0x68, 0xc9, 0x76, 0xf9, 0xdd, 0xc0, 0x42, 0x69, 0x55, 0x95, 0xfc, 0x6f, }; static const unsigned char ecdh_secp384r1_5613_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5613_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5613_sharedsecret[] = { 0x65, 0x97, 0x40, 0x1c, 0x83, 0x7f, 0xb4, 0x98, 0xef, 0x07, 0x80, 0xa3, 0x82, 0xde, 0xcd, 0x4a, 0x0d, 0xd5, 0x80, 0xe1, 0xaf, 0x5f, 0x24, 0xc4, 0x4a, 0xc1, 0x64, 0xe2, 0x56, 0xa4, 0x88, 0x4a, 0xd5, 0xbd, 0x2f, 0xb1, 0xf6, 0xc9, 0x64, 0x68, 0x2c, 0xb0, 0xbf, 0x79, 0xe2, 0xc7, 0xa6, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5613 = { .name = "ecdh_secp384r1_5613", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5613_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5613_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5613_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5613_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 333 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5614 for ECDH, tcId is 334 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5614_peerpubkey[] = { 0xe3, 0x14, 0x87, 0x54, 0x80, 0x37, 0xc0, 0x42, 0x3e, 0x57, 0x10, 0xfc, 0x60, 0xe7, 0x46, 0xab, 0x6e, 0x47, 0x35, 0x25, 0x61, 0xe4, 0x16, 0xb5, 0x83, 0x12, 0x3a, 0x6d, 0x45, 0xca, 0xa9, 0x11, 0x76, 0x2c, 0xd8, 0x8a, 0x60, 0xbc, 0xe5, 0x7b, 0x29, 0xa2, 0xec, 0x1a, 0x1d, 0xc9, 0x7f, 0xc1, 0xbd, 0x4b, 0x60, 0x40, 0x38, 0xe6, 0xac, 0x01, 0x6d, 0xbd, 0xd4, 0x8f, 0x0e, 0x6b, 0xd9, 0xf4, 0xb5, 0xda, 0xad, 0x8d, 0x68, 0xfc, 0x28, 0x83, 0x8c, 0x6a, 0xb4, 0xa4, 0xeb, 0x5a, 0xb0, 0xea, 0xea, 0x2c, 0xbd, 0xef, 0xa6, 0x1d, 0xc5, 0x7a, 0x3e, 0x04, 0xae, 0x71, 0x24, 0x29, 0x38, 0xb6, }; static const unsigned char ecdh_secp384r1_5614_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5614_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5614_sharedsecret[] = { 0x89, 0x41, 0x1d, 0x9c, 0x81, 0x49, 0xb9, 0x51, 0xfa, 0x0d, 0x5b, 0xea, 0x1e, 0x14, 0x1b, 0xdf, 0xc2, 0xbe, 0x7e, 0xd5, 0x6d, 0x5e, 0x61, 0x47, 0x39, 0x35, 0x78, 0x90, 0x16, 0xbf, 0xd2, 0xda, 0xf6, 0xa4, 0x0a, 0xc7, 0xbf, 0x5b, 0x1b, 0x0c, 0x0c, 0x02, 0xcd, 0x3a, 0xa0, 0xb2, 0xd9, 0x5f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5614 = { .name = "ecdh_secp384r1_5614", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5614_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5614_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5614_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5614_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 334 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5615 for ECDH, tcId is 335 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5615_peerpubkey[] = { 0x1e, 0x17, 0xe1, 0x73, 0xd3, 0x7a, 0xb9, 0x83, 0x82, 0x83, 0xf8, 0x4f, 0x24, 0xa0, 0xa2, 0x5c, 0xaa, 0xa6, 0x0c, 0x41, 0x1f, 0xbf, 0xea, 0x58, 0x2c, 0x44, 0xf8, 0xfb, 0xa2, 0x56, 0x0e, 0xce, 0x02, 0x8c, 0xbe, 0x39, 0x7b, 0x0e, 0xda, 0x69, 0xfc, 0x87, 0x2d, 0x80, 0xd9, 0xeb, 0xe0, 0x65, 0x78, 0x9c, 0x07, 0x23, 0xea, 0xfc, 0xc9, 0xe9, 0xa2, 0xba, 0xd4, 0x31, 0xb1, 0x1c, 0xaf, 0x7c, 0x5d, 0x75, 0x98, 0xca, 0x99, 0x90, 0x74, 0x05, 0x6b, 0xa8, 0x08, 0xa5, 0xd0, 0x79, 0x77, 0xc6, 0x78, 0xf9, 0x53, 0x4d, 0xe1, 0x52, 0xff, 0xda, 0xca, 0x3f, 0x63, 0xcb, 0xa3, 0xf9, 0x78, 0x94, }; static const unsigned char ecdh_secp384r1_5615_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5615_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5615_sharedsecret[] = { 0x6f, 0x0a, 0xa1, 0x1a, 0xb7, 0x4a, 0xe5, 0x03, 0x4e, 0x23, 0x1e, 0xf2, 0x63, 0x0b, 0xc7, 0x6c, 0xda, 0x6e, 0xed, 0x26, 0x32, 0x5d, 0x12, 0x36, 0x42, 0xfc, 0xe6, 0xa9, 0x50, 0xb5, 0x0f, 0x90, 0x4b, 0xc0, 0x26, 0x9f, 0x8f, 0x58, 0x9b, 0xc4, 0xd3, 0x81, 0x07, 0x33, 0x2b, 0x14, 0xda, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_5615 = { .name = "ecdh_secp384r1_5615", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5615_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5615_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5615_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5615_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 335 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5616 for ECDH, tcId is 336 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5616_peerpubkey[] = { 0x76, 0xef, 0xcc, 0x83, 0x22, 0xf0, 0xaf, 0x8d, 0x62, 0xe7, 0x36, 0xa0, 0xe1, 0x10, 0xf6, 0x6b, 0x3a, 0xad, 0x5c, 0x87, 0xbf, 0x7a, 0x77, 0x33, 0x3f, 0xce, 0x86, 0x4f, 0x4b, 0xa6, 0xe8, 0xdf, 0xdc, 0x16, 0xd6, 0xad, 0xd2, 0xc5, 0x42, 0xc4, 0x80, 0x55, 0x89, 0xa7, 0x1f, 0x0e, 0x48, 0xa3, 0xc2, 0x68, 0xfe, 0xab, 0x02, 0x71, 0x4c, 0x89, 0x2f, 0x82, 0x66, 0x22, 0xb2, 0x5b, 0xd2, 0x1c, 0xe2, 0xa3, 0x35, 0x14, 0xb1, 0x6c, 0x9e, 0xe8, 0x4c, 0x72, 0x2b, 0x52, 0x3b, 0x19, 0xec, 0x5f, 0xc3, 0x4d, 0x87, 0x41, 0x33, 0x08, 0x0e, 0x15, 0x89, 0x81, 0x84, 0x93, 0x55, 0xe1, 0xf5, 0x0d, }; static const unsigned char ecdh_secp384r1_5616_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5616_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5616_sharedsecret[] = { 0x7e, 0xb9, 0x96, 0x2e, 0x04, 0x49, 0xcc, 0xd2, 0xe6, 0x0b, 0x4f, 0x80, 0x94, 0xd5, 0xa7, 0xb4, 0x61, 0xd0, 0xd4, 0xb0, 0x6a, 0xf0, 0xba, 0x30, 0x6b, 0x74, 0xab, 0x0d, 0x60, 0xad, 0x5c, 0xf8, 0x94, 0xfb, 0xfc, 0x28, 0x2a, 0xc8, 0xdc, 0xa3, 0xda, 0x19, 0x6d, 0x7a, 0x29, 0x6b, 0xaa, 0x14, }; static const wycheproof_ecdh_test ecdh_secp384r1_5616 = { .name = "ecdh_secp384r1_5616", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5616_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5616_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5616_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5616_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 336 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5617 for ECDH, tcId is 337 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5617_peerpubkey[] = { 0xc1, 0x47, 0xd6, 0xc2, 0x35, 0xd7, 0x40, 0xb3, 0x88, 0xe6, 0xd2, 0xaf, 0xaf, 0xcf, 0x85, 0xd5, 0xb7, 0x16, 0x6e, 0x0d, 0xf4, 0xea, 0x21, 0x29, 0x40, 0x88, 0xe3, 0x04, 0x9b, 0x5c, 0x27, 0xd7, 0x63, 0x3c, 0x93, 0xd3, 0x0f, 0xdc, 0xf2, 0xb9, 0x37, 0x5e, 0x18, 0x14, 0xf5, 0x1b, 0x57, 0xbb, 0xef, 0xb2, 0xc1, 0x25, 0x75, 0xc2, 0x23, 0x4e, 0xe1, 0xf6, 0xb1, 0x47, 0xb2, 0xe0, 0x4c, 0x10, 0x4a, 0x4d, 0x2b, 0x29, 0xcd, 0x84, 0x58, 0xf5, 0x9b, 0x57, 0xbf, 0xf7, 0x5c, 0xab, 0x9b, 0x6a, 0xcb, 0xe8, 0x54, 0xfc, 0x4d, 0x96, 0xfb, 0x73, 0x37, 0x2d, 0x60, 0x54, 0xbb, 0x76, 0x83, 0x90, }; static const unsigned char ecdh_secp384r1_5617_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5617_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5617_sharedsecret[] = { 0x79, 0x02, 0x95, 0xbe, 0xd6, 0x9f, 0x53, 0x47, 0xec, 0xaa, 0xe9, 0xbe, 0xfe, 0x15, 0xcd, 0x34, 0x99, 0x75, 0x9c, 0xdf, 0xbe, 0x51, 0x97, 0x4b, 0x1f, 0x1c, 0x4b, 0xc5, 0x76, 0xe7, 0xd8, 0x81, 0xce, 0xfa, 0x93, 0xd5, 0xe8, 0xbf, 0x2c, 0x21, 0xeb, 0xb9, 0x82, 0x69, 0x8e, 0x1c, 0x7a, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp384r1_5617 = { .name = "ecdh_secp384r1_5617", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5617_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5617_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5617_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5617_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 337 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5618 for ECDH, tcId is 338 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5618_peerpubkey[] = { 0x84, 0x9c, 0x98, 0xff, 0xf5, 0xe3, 0x1b, 0x10, 0x8a, 0xef, 0xb1, 0x6c, 0xc5, 0xcf, 0x5c, 0x7e, 0x88, 0x43, 0x9d, 0x8b, 0x3e, 0xf1, 0x88, 0xf2, 0xa5, 0xbc, 0x53, 0xf3, 0x09, 0x01, 0xde, 0xdf, 0xe2, 0x94, 0xab, 0xb3, 0x8f, 0xb8, 0xcb, 0x46, 0x54, 0x7a, 0x23, 0xcf, 0xe4, 0x79, 0x09, 0xd6, 0x56, 0x44, 0x9f, 0x8a, 0x09, 0xaa, 0x88, 0xf8, 0xe2, 0x60, 0x59, 0x8e, 0xa2, 0x77, 0x2d, 0xf7, 0x4d, 0x26, 0xa4, 0x43, 0x1a, 0x03, 0x78, 0x59, 0x34, 0x37, 0x3b, 0xe7, 0xb0, 0xec, 0x91, 0x87, 0xb8, 0x21, 0x59, 0x65, 0x76, 0x17, 0x23, 0xe7, 0x95, 0x91, 0x17, 0x69, 0x60, 0xea, 0xc0, 0x14, }; static const unsigned char ecdh_secp384r1_5618_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5618_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5618_sharedsecret[] = { 0x58, 0xa1, 0x1a, 0x17, 0xc4, 0xad, 0xa4, 0xd4, 0x46, 0xc0, 0x8b, 0x83, 0xaa, 0x05, 0x68, 0x7f, 0xee, 0x8f, 0xd6, 0xe7, 0x83, 0x03, 0x64, 0x8b, 0x85, 0x83, 0x26, 0x21, 0x97, 0xf8, 0x7b, 0xe9, 0x7d, 0xbe, 0x0b, 0xbd, 0x27, 0x4e, 0x44, 0x4a, 0x38, 0x4e, 0x22, 0x16, 0x96, 0x53, 0x0f, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5618 = { .name = "ecdh_secp384r1_5618", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5618_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5618_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5618_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5618_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 338 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5619 for ECDH, tcId is 339 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5619_peerpubkey[] = { 0x57, 0xcf, 0x64, 0x55, 0x78, 0xdd, 0x24, 0x2c, 0x71, 0x4d, 0x10, 0x0d, 0xd2, 0x35, 0x68, 0xb1, 0x6d, 0x37, 0x45, 0xda, 0x80, 0x97, 0x08, 0xd0, 0x1e, 0xb6, 0xa7, 0x16, 0x8e, 0x6f, 0x71, 0xde, 0xc2, 0x07, 0x4c, 0x5a, 0x6c, 0x23, 0xbd, 0x05, 0x52, 0x3d, 0xfc, 0xcc, 0x97, 0xde, 0xa6, 0xf0, 0x8d, 0xa1, 0x95, 0xda, 0xa2, 0x05, 0x6d, 0xa0, 0x57, 0x6b, 0xbc, 0x0f, 0xfb, 0x5e, 0x73, 0xbb, 0xda, 0xd0, 0x3b, 0x04, 0xd2, 0x3b, 0x4b, 0x60, 0x24, 0x51, 0xa5, 0xba, 0x91, 0xb1, 0x7d, 0xce, 0x30, 0x2f, 0x4a, 0xd1, 0x64, 0xc6, 0xa4, 0xa2, 0xb5, 0x8e, 0x3f, 0x02, 0x53, 0xa5, 0xe9, 0xd6, }; static const unsigned char ecdh_secp384r1_5619_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5619_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5619_sharedsecret[] = { 0x92, 0x60, 0x48, 0x3a, 0x16, 0x56, 0x90, 0xd5, 0x4c, 0x10, 0xcb, 0x86, 0x7a, 0x9f, 0x89, 0x6b, 0xbd, 0x12, 0x3d, 0x47, 0x68, 0xa1, 0x8d, 0x32, 0x23, 0x00, 0xd4, 0x20, 0xaa, 0xc8, 0x8a, 0xe2, 0x0f, 0x18, 0x8b, 0x57, 0xf8, 0xe9, 0x7a, 0xfa, 0xd5, 0x5e, 0xbb, 0x81, 0x57, 0x28, 0xf4, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp384r1_5619 = { .name = "ecdh_secp384r1_5619", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5619_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5619_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5619_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5619_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 339 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5620 for ECDH, tcId is 340 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5620_peerpubkey[] = { 0xca, 0xb2, 0xd9, 0xd3, 0x6c, 0x8e, 0xc0, 0x9f, 0x18, 0xba, 0xa0, 0xab, 0xb5, 0x21, 0x37, 0x2a, 0x5c, 0xc2, 0xf6, 0x24, 0x84, 0x8f, 0x95, 0x46, 0x0a, 0x86, 0x15, 0x23, 0x8e, 0x68, 0xc1, 0x1c, 0x1b, 0x43, 0xd2, 0x2b, 0x84, 0xd1, 0xe5, 0x35, 0xec, 0x1d, 0x85, 0x56, 0x0d, 0xe2, 0x93, 0xce, 0x1f, 0xd5, 0xe6, 0xe7, 0xac, 0x7e, 0xb6, 0xf1, 0x73, 0xad, 0x27, 0xb6, 0x39, 0x85, 0xfc, 0xc8, 0x3b, 0x95, 0x32, 0xaa, 0x56, 0xf2, 0xb5, 0x9b, 0x53, 0xa9, 0xd1, 0x16, 0x09, 0x8f, 0xda, 0x9a, 0xba, 0x49, 0xd5, 0x7c, 0x1e, 0xed, 0x0f, 0x06, 0x3b, 0xcc, 0x70, 0x1b, 0xb1, 0x0f, 0x6c, 0x2b, }; static const unsigned char ecdh_secp384r1_5620_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5620_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5620_sharedsecret[] = { 0xb4, 0x67, 0x9a, 0xf8, 0x0a, 0x2a, 0xd3, 0x4e, 0xf8, 0x6e, 0xac, 0xf2, 0xc2, 0x19, 0x15, 0x56, 0xbc, 0x02, 0x40, 0xc7, 0x91, 0x3f, 0xb1, 0x4c, 0x4c, 0x1f, 0x86, 0x23, 0xb5, 0xdb, 0x41, 0xb8, 0x54, 0xd6, 0x30, 0xdc, 0x65, 0x73, 0x8d, 0x1f, 0xaf, 0x54, 0x4a, 0xa4, 0x29, 0x79, 0xae, 0xd0, }; static const wycheproof_ecdh_test ecdh_secp384r1_5620 = { .name = "ecdh_secp384r1_5620", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5620_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5620_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5620_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5620_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 340 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5621 for ECDH, tcId is 341 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5621_peerpubkey[] = { 0xd7, 0x1d, 0xf4, 0x09, 0x5c, 0x13, 0x85, 0x23, 0x34, 0x0a, 0x40, 0x10, 0xcf, 0xa9, 0x76, 0xb3, 0xb2, 0x7a, 0xf4, 0x8c, 0xa8, 0x3e, 0x8c, 0x6b, 0xb4, 0x59, 0x6f, 0x9f, 0x8e, 0x8f, 0x13, 0xe3, 0x8d, 0xe4, 0xe2, 0x5c, 0xe1, 0xd3, 0x79, 0xb4, 0x1a, 0x95, 0xf9, 0xd7, 0xf8, 0xa8, 0x46, 0x06, 0xb2, 0x8c, 0x69, 0x70, 0x4b, 0x68, 0x78, 0x8e, 0xb6, 0xa3, 0x5c, 0x8b, 0xca, 0xa7, 0xd9, 0x71, 0x8e, 0x00, 0xc9, 0xbc, 0x56, 0x7a, 0xcd, 0xc4, 0x58, 0xb6, 0x73, 0x2a, 0xa8, 0x70, 0x41, 0xd2, 0x7b, 0x6a, 0x57, 0x4d, 0x51, 0xe9, 0x54, 0x37, 0x85, 0x5b, 0xdc, 0x86, 0x74, 0x8c, 0x5c, 0xac, }; static const unsigned char ecdh_secp384r1_5621_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5621_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5621_sharedsecret[] = { 0x8a, 0x34, 0xde, 0x8b, 0xeb, 0x88, 0x43, 0x64, 0xb5, 0x83, 0xc9, 0xcb, 0xce, 0x39, 0x09, 0x69, 0x96, 0x7c, 0xc2, 0xa5, 0x00, 0x90, 0xee, 0x13, 0x2a, 0xcb, 0xd4, 0x9b, 0xf7, 0x80, 0xad, 0x7f, 0x09, 0x2a, 0xe3, 0xeb, 0xd4, 0x68, 0x6a, 0x70, 0xba, 0x55, 0x4e, 0xfd, 0xd6, 0xac, 0xd4, 0xed, }; static const wycheproof_ecdh_test ecdh_secp384r1_5621 = { .name = "ecdh_secp384r1_5621", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5621_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5621_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5621_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5621_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 341 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5622 for ECDH, tcId is 342 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5622_peerpubkey[] = { 0xa5, 0x76, 0x17, 0x75, 0x85, 0x0a, 0x25, 0x98, 0x5a, 0x32, 0x43, 0x04, 0x42, 0xd6, 0x60, 0xaa, 0xdf, 0x9e, 0x1e, 0x38, 0x8b, 0x57, 0xe6, 0xe1, 0xbf, 0xe4, 0x14, 0x95, 0xb9, 0xa0, 0x5a, 0x82, 0x40, 0xf7, 0x7f, 0x33, 0x97, 0xc5, 0xcd, 0xb0, 0xc8, 0x3d, 0x73, 0x94, 0x59, 0x84, 0xab, 0xed, 0xd2, 0xc7, 0xcf, 0xa5, 0xd5, 0xd9, 0x17, 0x38, 0xc6, 0x57, 0x76, 0x46, 0x65, 0x8c, 0x04, 0x48, 0xf0, 0x15, 0x5b, 0x5b, 0xf8, 0x39, 0x57, 0x5a, 0x36, 0xd1, 0xb2, 0x6d, 0x87, 0xd1, 0xb2, 0xb3, 0xaf, 0xb4, 0xf6, 0x86, 0x53, 0xa6, 0xbf, 0xa5, 0xed, 0xfc, 0x57, 0xaa, 0x85, 0x29, 0xe6, 0x22, }; static const unsigned char ecdh_secp384r1_5622_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5622_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5622_sharedsecret[] = { 0x79, 0x0d, 0xfc, 0xff, 0x47, 0x21, 0xef, 0x17, 0x01, 0xe3, 0xff, 0x52, 0x1e, 0x42, 0x21, 0xbe, 0x51, 0xae, 0x24, 0x2f, 0x95, 0x16, 0x6b, 0x92, 0x92, 0xc7, 0xaa, 0x2f, 0xa3, 0xc9, 0xb7, 0x99, 0xaf, 0xd3, 0x53, 0x98, 0x7a, 0x53, 0x56, 0x90, 0xff, 0x20, 0xd6, 0x6f, 0x57, 0x8f, 0x38, 0xfc, }; static const wycheproof_ecdh_test ecdh_secp384r1_5622 = { .name = "ecdh_secp384r1_5622", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5622_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5622_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5622_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5622_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 342 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5623 for ECDH, tcId is 343 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5623_peerpubkey[] = { 0x54, 0xfc, 0x2f, 0x89, 0xcd, 0xe6, 0xf6, 0xe8, 0x6b, 0x6c, 0xf3, 0x28, 0x61, 0x98, 0xf9, 0xa9, 0xe3, 0x3c, 0x8d, 0x66, 0x2c, 0x21, 0x51, 0x20, 0x5d, 0xdc, 0xff, 0x12, 0xe2, 0xd3, 0x2f, 0xa8, 0x91, 0xee, 0xc2, 0x35, 0x9b, 0xc0, 0x72, 0x24, 0xd6, 0x4c, 0x5e, 0x33, 0x9f, 0xf9, 0xd5, 0x89, 0x18, 0xa3, 0xb7, 0x93, 0x72, 0xd1, 0x42, 0xfb, 0x34, 0x1d, 0xf3, 0xb1, 0x5b, 0x54, 0xb3, 0x0e, 0x8f, 0x95, 0x6b, 0x07, 0x9b, 0x12, 0x78, 0x27, 0x6a, 0x33, 0xb4, 0xd8, 0x50, 0x89, 0x20, 0x94, 0x0c, 0xa6, 0x3f, 0xb8, 0xe9, 0x70, 0xff, 0x98, 0xf9, 0x1e, 0xcc, 0x79, 0x86, 0x27, 0x5e, 0xdb, }; static const unsigned char ecdh_secp384r1_5623_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5623_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5623_sharedsecret[] = { 0xcb, 0x86, 0x10, 0x53, 0xc1, 0xd6, 0x85, 0x19, 0x4e, 0xa5, 0x84, 0x13, 0xd8, 0xf9, 0x98, 0x1e, 0x07, 0x14, 0x5b, 0xc5, 0x73, 0xba, 0x92, 0x4b, 0xdb, 0xa2, 0xe2, 0x9c, 0x5f, 0x98, 0xe9, 0xe7, 0x0e, 0xa0, 0xcd, 0x04, 0x12, 0xd6, 0xc3, 0x87, 0x44, 0x9e, 0x9a, 0xe7, 0x67, 0xdc, 0x43, 0x30, }; static const wycheproof_ecdh_test ecdh_secp384r1_5623 = { .name = "ecdh_secp384r1_5623", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5623_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5623_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5623_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5623_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 343 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5624 for ECDH, tcId is 344 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5624_peerpubkey[] = { 0xbf, 0xbf, 0x3f, 0xab, 0x1a, 0xcb, 0x39, 0xce, 0x28, 0xf0, 0x63, 0xd7, 0x8c, 0xf2, 0x50, 0x77, 0x2b, 0xd0, 0x0b, 0xdc, 0xa9, 0x8b, 0x76, 0x9e, 0x1f, 0x1f, 0xd4, 0x42, 0xb7, 0x7f, 0x42, 0x70, 0x10, 0x6a, 0x5f, 0x7d, 0x91, 0x3c, 0x19, 0x05, 0xbe, 0xa0, 0xdc, 0x75, 0xb3, 0x1f, 0x87, 0xa1, 0x15, 0xc5, 0x66, 0xdb, 0xff, 0x0c, 0xd1, 0x07, 0x33, 0x25, 0x45, 0x0a, 0x91, 0x09, 0x6f, 0xe5, 0xf5, 0xd6, 0x01, 0xa6, 0x36, 0x40, 0x7c, 0xfb, 0xc4, 0xf5, 0x72, 0x0f, 0x39, 0x6f, 0xa6, 0xcb, 0x16, 0x98, 0x73, 0x70, 0xce, 0x70, 0xe2, 0x9b, 0xb7, 0xed, 0x2f, 0x44, 0x74, 0x25, 0xf1, 0x0a, }; static const unsigned char ecdh_secp384r1_5624_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5624_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5624_sharedsecret[] = { 0x37, 0x5f, 0xfb, 0x90, 0xad, 0x6c, 0x51, 0x86, 0x68, 0xe5, 0xd2, 0x59, 0x41, 0xac, 0xd5, 0xf9, 0xc0, 0x17, 0x34, 0x6d, 0x06, 0xf8, 0x93, 0xcf, 0x95, 0x75, 0x22, 0x58, 0xbc, 0xc5, 0xf9, 0xa2, 0x59, 0x96, 0xa8, 0x0f, 0x42, 0xe0, 0x47, 0x5a, 0x80, 0x44, 0x3d, 0xc4, 0x19, 0x7b, 0xba, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp384r1_5624 = { .name = "ecdh_secp384r1_5624", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5624_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5624_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5624_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5624_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 344 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5625 for ECDH, tcId is 345 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5625_peerpubkey[] = { 0x57, 0x57, 0x57, 0x74, 0x80, 0xf3, 0x2a, 0xed, 0xac, 0x6e, 0x19, 0x76, 0x5f, 0x91, 0x97, 0xcc, 0x27, 0x8c, 0xb0, 0xb1, 0xa2, 0x1f, 0xc6, 0xb6, 0x42, 0x3c, 0x8f, 0x6c, 0x6c, 0xde, 0xa1, 0xd3, 0x24, 0xc9, 0x3e, 0xea, 0x8b, 0xd7, 0xdc, 0xca, 0x8f, 0xd2, 0x93, 0xd6, 0x98, 0x76, 0x52, 0x43, 0x60, 0xb1, 0xa4, 0x82, 0x55, 0x22, 0xac, 0xd8, 0x33, 0xd3, 0x8d, 0xbd, 0x61, 0x50, 0x85, 0x47, 0x35, 0x8a, 0x2f, 0x5c, 0x28, 0x1b, 0x49, 0x6a, 0xbd, 0x57, 0x07, 0x2a, 0xb1, 0x4f, 0x9a, 0x22, 0x35, 0xbc, 0xa0, 0x25, 0x45, 0xe0, 0x42, 0x75, 0x26, 0xbc, 0x2b, 0xbc, 0x92, 0x68, 0x34, 0x9f, }; static const unsigned char ecdh_secp384r1_5625_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5625_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5625_sharedsecret[] = { 0xd1, 0xa0, 0x2a, 0x26, 0x4a, 0xb1, 0x5a, 0xef, 0x52, 0xa5, 0x34, 0xeb, 0x50, 0x00, 0xe2, 0x94, 0x3d, 0x8c, 0xf1, 0xf7, 0x72, 0x55, 0xa2, 0x7f, 0x84, 0x5e, 0x96, 0xe1, 0xf8, 0x1d, 0xf4, 0x7e, 0xe9, 0x03, 0xc3, 0xe9, 0x21, 0x53, 0x9d, 0x77, 0xd7, 0x2f, 0x55, 0xb7, 0xef, 0xc9, 0xdf, 0xbb, }; static const wycheproof_ecdh_test ecdh_secp384r1_5625 = { .name = "ecdh_secp384r1_5625", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5625_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5625_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5625_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5625_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 345 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5626 for ECDH, tcId is 346 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5626_peerpubkey[] = { 0x14, 0x52, 0xf5, 0xea, 0xfb, 0xb5, 0xcc, 0x56, 0x3f, 0x2c, 0x7c, 0xa4, 0x03, 0xb8, 0x03, 0xf6, 0xf8, 0xd6, 0x64, 0x79, 0x06, 0x25, 0x08, 0xa2, 0x25, 0x8a, 0x8d, 0x98, 0x8a, 0x76, 0x9b, 0x80, 0xe0, 0x77, 0x73, 0x5b, 0x45, 0xef, 0xab, 0x1f, 0x29, 0x7c, 0xee, 0xbd, 0x74, 0x34, 0x7f, 0x58, 0x4f, 0x2b, 0xad, 0xbc, 0xa5, 0x54, 0x57, 0x40, 0x48, 0x66, 0xba, 0xef, 0xab, 0xfa, 0x99, 0xb7, 0x0f, 0xbf, 0x10, 0x5d, 0x17, 0xf3, 0x52, 0x34, 0x7f, 0x67, 0x99, 0x64, 0x74, 0x48, 0x70, 0x8f, 0x78, 0x8f, 0x8a, 0x14, 0x5b, 0xdd, 0x96, 0xd4, 0xaf, 0x2d, 0x7e, 0x65, 0x4b, 0xe7, 0xe5, 0xf1, }; static const unsigned char ecdh_secp384r1_5626_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5626_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5626_sharedsecret[] = { 0xcc, 0xaa, 0x37, 0x76, 0x9d, 0x03, 0x51, 0x70, 0xbb, 0x5c, 0x19, 0xc1, 0x35, 0xda, 0x22, 0x91, 0x44, 0x6e, 0xfd, 0x7e, 0xcd, 0x3b, 0xe9, 0x00, 0x86, 0x12, 0xb8, 0xcc, 0xc2, 0x9f, 0x6e, 0x9d, 0x7a, 0x45, 0xdd, 0x4e, 0x04, 0x79, 0x12, 0x3f, 0x03, 0xe7, 0xe3, 0x04, 0xf3, 0x47, 0x29, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5626 = { .name = "ecdh_secp384r1_5626", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5626_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5626_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5626_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5626_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 346 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5627 for ECDH, tcId is 347 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5627_peerpubkey[] = { 0xad, 0x27, 0xa3, 0x65, 0xe4, 0xb6, 0x99, 0x4c, 0x5e, 0xd1, 0x35, 0xfc, 0x47, 0x94, 0xd7, 0x3e, 0xb7, 0x1e, 0xc2, 0x6d, 0x78, 0x7f, 0xec, 0x10, 0xf1, 0x38, 0x2b, 0x19, 0xc1, 0xb5, 0xcd, 0x1d, 0x67, 0x29, 0x99, 0xfe, 0xee, 0x86, 0xd5, 0xf3, 0x05, 0x51, 0x6d, 0x60, 0x1f, 0xd1, 0xc6, 0xaa, 0xf8, 0x66, 0x48, 0x58, 0x98, 0x8f, 0x02, 0xf3, 0x6c, 0x88, 0x8f, 0x71, 0x87, 0x20, 0x07, 0x87, 0x0b, 0xb3, 0x26, 0x54, 0xaa, 0x75, 0x53, 0x0f, 0xc3, 0xb7, 0xa2, 0x35, 0xf7, 0xfd, 0x2b, 0xcd, 0x81, 0x5e, 0x30, 0x34, 0x45, 0x52, 0x69, 0x60, 0xf6, 0xff, 0xcd, 0xd6, 0x1d, 0x2d, 0x13, 0x40, }; static const unsigned char ecdh_secp384r1_5627_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5627_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5627_sharedsecret[] = { 0x4a, 0xe9, 0x4d, 0x3e, 0xda, 0x58, 0x39, 0xf4, 0xb8, 0xb9, 0xff, 0xe6, 0xd5, 0x10, 0x14, 0x4c, 0xf2, 0x8b, 0xde, 0x98, 0x58, 0x1e, 0x82, 0x72, 0x6f, 0x2d, 0x76, 0xd9, 0x33, 0x91, 0x9a, 0xda, 0xb7, 0x1d, 0x2c, 0xdf, 0x4c, 0x43, 0x10, 0xf8, 0xab, 0xcc, 0x74, 0xd7, 0x0e, 0xba, 0x3a, 0x33, }; static const wycheproof_ecdh_test ecdh_secp384r1_5627 = { .name = "ecdh_secp384r1_5627", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5627_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5627_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5627_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5627_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 347 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5628 for ECDH, tcId is 348 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5628_peerpubkey[] = { 0x73, 0x30, 0x41, 0xf3, 0xa6, 0x04, 0x68, 0xbc, 0x07, 0x11, 0xd5, 0xa5, 0x07, 0x3a, 0x71, 0xef, 0x60, 0x62, 0xd0, 0xae, 0x70, 0x70, 0x6a, 0xf5, 0x13, 0x16, 0x03, 0x35, 0x80, 0xca, 0xe0, 0x58, 0xfc, 0x4a, 0xc9, 0x9e, 0xbb, 0xa8, 0x23, 0xb1, 0x9f, 0x48, 0xf3, 0x09, 0xe3, 0x4f, 0xb0, 0x29, 0x33, 0x67, 0x0d, 0xcc, 0x75, 0xed, 0x47, 0x74, 0x47, 0x71, 0xf6, 0x02, 0x38, 0xcc, 0xeb, 0xcd, 0xdc, 0xcd, 0x42, 0xd6, 0x4e, 0x41, 0x04, 0x5f, 0xd8, 0xeb, 0xc3, 0x5b, 0xba, 0xe0, 0xa3, 0x7b, 0x43, 0x38, 0x8d, 0xdb, 0x87, 0x35, 0x6c, 0xbb, 0x52, 0x5a, 0x13, 0xd5, 0x7f, 0x47, 0xa2, 0xcd, }; static const unsigned char ecdh_secp384r1_5628_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5628_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5628_sharedsecret[] = { 0x06, 0x2b, 0x8a, 0x96, 0x8e, 0x45, 0x43, 0x5c, 0x2b, 0x5b, 0x54, 0xb4, 0x17, 0xf5, 0x5e, 0x89, 0xf9, 0x35, 0xb6, 0x6d, 0xec, 0x44, 0x88, 0x2c, 0x06, 0xab, 0x8d, 0x6c, 0xda, 0x8d, 0xcf, 0xb5, 0x53, 0xa7, 0x83, 0x61, 0xd3, 0x82, 0xa9, 0x21, 0x11, 0x91, 0x87, 0x1e, 0x9a, 0x34, 0x22, 0x0f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5628 = { .name = "ecdh_secp384r1_5628", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5628_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5628_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5628_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5628_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 348 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5629 for ECDH, tcId is 349 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5629_peerpubkey[] = { 0x81, 0x88, 0x58, 0x04, 0xee, 0x93, 0x19, 0x88, 0xcf, 0xf3, 0xf2, 0x18, 0xc9, 0xaf, 0x14, 0x29, 0x57, 0x3c, 0xcf, 0x8c, 0x8f, 0x3d, 0xf4, 0x0c, 0x69, 0x8d, 0x97, 0x6e, 0x8b, 0xc7, 0xc1, 0x28, 0x81, 0x95, 0x34, 0x45, 0xdd, 0xc4, 0xf1, 0x90, 0x2b, 0x2f, 0x2f, 0x31, 0x53, 0x30, 0x4e, 0x82, 0xd7, 0x09, 0x4b, 0x67, 0x3b, 0x76, 0xbe, 0xeb, 0xfa, 0x5d, 0x84, 0xc4, 0x9b, 0x01, 0xce, 0x16, 0x8c, 0x45, 0x92, 0x01, 0xcb, 0x81, 0x92, 0xef, 0x96, 0xd8, 0x91, 0x01, 0x0e, 0x4b, 0xc8, 0x8f, 0x0a, 0xcc, 0x4f, 0xbb, 0x40, 0xad, 0x61, 0x96, 0x6e, 0x78, 0x7b, 0x9a, 0x29, 0x8a, 0x2b, 0xba, }; static const unsigned char ecdh_secp384r1_5629_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5629_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5629_sharedsecret[] = { 0xba, 0x41, 0xc3, 0x8d, 0x33, 0xb2, 0xae, 0x34, 0x27, 0x97, 0xee, 0x69, 0x72, 0x3f, 0x04, 0x2a, 0x71, 0xdd, 0x7f, 0xb1, 0x5f, 0x3d, 0xc8, 0x0d, 0xae, 0x40, 0x3d, 0x4f, 0x88, 0xac, 0xae, 0x28, 0xe2, 0xe5, 0x1f, 0x2c, 0xa9, 0xd5, 0x2b, 0x4a, 0xa4, 0xe2, 0xb3, 0xe5, 0x82, 0x57, 0xe2, 0x4d, }; static const wycheproof_ecdh_test ecdh_secp384r1_5629 = { .name = "ecdh_secp384r1_5629", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5629_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5629_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5629_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5629_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 349 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5630 for ECDH, tcId is 350 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5630_peerpubkey[] = { 0x16, 0x79, 0x15, 0xd9, 0x62, 0xa4, 0x05, 0xf8, 0xd0, 0x4d, 0x6d, 0x64, 0x94, 0x27, 0x0d, 0x88, 0x3f, 0xe7, 0x59, 0x4e, 0x9a, 0x21, 0xf7, 0xb5, 0x77, 0x15, 0x75, 0x0f, 0x8d, 0x78, 0xec, 0x07, 0x14, 0xf0, 0xfb, 0x85, 0xa9, 0xfe, 0x5a, 0xee, 0x4e, 0x6d, 0x10, 0x34, 0x4e, 0x4b, 0x12, 0xf9, 0x1f, 0x00, 0x44, 0x1c, 0x8b, 0xf5, 0x67, 0xff, 0x84, 0xe6, 0xee, 0x42, 0x98, 0xb9, 0xd3, 0x39, 0x2c, 0x78, 0xfb, 0x32, 0x46, 0x19, 0x58, 0x10, 0x2e, 0x1d, 0x29, 0xd2, 0xf4, 0xc4, 0x73, 0x21, 0x04, 0x24, 0x2c, 0xc4, 0xbf, 0xee, 0x22, 0xaa, 0x8f, 0x4a, 0x17, 0x2a, 0xa5, 0x10, 0xac, 0x88, }; static const unsigned char ecdh_secp384r1_5630_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5630_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5630_sharedsecret[] = { 0xc6, 0xaf, 0x4e, 0xae, 0x59, 0x99, 0xe0, 0xd0, 0x65, 0x85, 0x05, 0xcb, 0x4b, 0x39, 0x5e, 0x9d, 0x73, 0x59, 0x2a, 0x3d, 0x9d, 0x0b, 0x3c, 0x07, 0xca, 0xeb, 0x2b, 0xef, 0x1b, 0x03, 0xca, 0x4d, 0x60, 0x3b, 0x33, 0xe6, 0xf6, 0xbb, 0xd9, 0x0f, 0x94, 0x16, 0xc4, 0xaa, 0x00, 0x22, 0xe5, 0x84, }; static const wycheproof_ecdh_test ecdh_secp384r1_5630 = { .name = "ecdh_secp384r1_5630", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5630_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5630_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5630_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5630_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 350 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5631 for ECDH, tcId is 351 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5631_peerpubkey[] = { 0x66, 0xe1, 0xfe, 0x89, 0x3f, 0x72, 0xff, 0xea, 0x5e, 0x24, 0xea, 0x5a, 0x4f, 0x0d, 0x65, 0x58, 0xfd, 0xbd, 0x32, 0x22, 0xdb, 0xa6, 0xe3, 0x34, 0x07, 0x53, 0xc8, 0x29, 0x79, 0xac, 0x59, 0x53, 0x0d, 0xbd, 0x37, 0xfa, 0xc2, 0xf5, 0x13, 0x55, 0x46, 0x5d, 0x56, 0xaf, 0xe1, 0xde, 0x58, 0x2b, 0xea, 0xca, 0x91, 0x04, 0xad, 0x26, 0x9b, 0x0f, 0x84, 0x8d, 0x8b, 0x4d, 0x71, 0x18, 0x2a, 0xfc, 0x30, 0x12, 0x91, 0x47, 0x36, 0x9a, 0x74, 0x19, 0x3d, 0xdf, 0x4d, 0xdb, 0x3b, 0x6f, 0xf1, 0x28, 0xf9, 0x41, 0x68, 0xce, 0x0b, 0xc6, 0x0e, 0x77, 0x91, 0xb4, 0xb1, 0xca, 0x2e, 0x29, 0x43, 0x1b, }; static const unsigned char ecdh_secp384r1_5631_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5631_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5631_sharedsecret[] = { 0x9e, 0x36, 0x4a, 0xdc, 0xb7, 0x2b, 0x15, 0xa4, 0x2c, 0xbd, 0x6f, 0xa7, 0x91, 0x14, 0x88, 0x9e, 0x22, 0xb9, 0x3b, 0x53, 0x3b, 0x01, 0x19, 0xaf, 0xd9, 0x09, 0x14, 0xb1, 0x81, 0x12, 0x81, 0x51, 0xb8, 0xa1, 0x7d, 0xb4, 0x90, 0x04, 0xec, 0x39, 0xad, 0x5d, 0xb5, 0x60, 0x3f, 0xb9, 0x71, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp384r1_5631 = { .name = "ecdh_secp384r1_5631", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5631_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5631_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5631_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5631_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 351 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5632 for ECDH, tcId is 352 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5632_peerpubkey[] = { 0x62, 0xeb, 0xaa, 0xbf, 0xf2, 0xa0, 0x7a, 0x85, 0x2a, 0xf9, 0xaa, 0xb8, 0x12, 0x6e, 0x93, 0xc3, 0x11, 0x09, 0xe8, 0x93, 0xcc, 0x61, 0xb3, 0x54, 0xa7, 0x2a, 0x17, 0x44, 0xcb, 0x40, 0x9a, 0x02, 0xce, 0xc6, 0xe6, 0x19, 0x58, 0x45, 0x95, 0x7a, 0x53, 0xbd, 0xe9, 0x7d, 0xec, 0x7a, 0x87, 0xc2, 0x5e, 0xa1, 0x1b, 0x00, 0x3a, 0x69, 0x4e, 0x37, 0x1c, 0x2b, 0xe1, 0xcf, 0x5d, 0xb5, 0xb7, 0xfb, 0xa2, 0x78, 0xf6, 0x96, 0x8f, 0x54, 0xc5, 0xfb, 0x66, 0x77, 0x98, 0x7b, 0xbb, 0x6b, 0x55, 0xdd, 0x90, 0x72, 0xe8, 0x32, 0x5b, 0x36, 0x5c, 0x25, 0x26, 0x2c, 0x50, 0x24, 0xf6, 0x8b, 0x2e, 0x5b, }; static const unsigned char ecdh_secp384r1_5632_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5632_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5632_sharedsecret[] = { 0x23, 0x10, 0x48, 0x06, 0xdb, 0xd8, 0x5f, 0x71, 0xd8, 0xfc, 0x38, 0x10, 0x1b, 0x0c, 0xd0, 0xbb, 0xcd, 0x60, 0x33, 0x1d, 0x8f, 0x74, 0x86, 0x9f, 0x06, 0x43, 0x11, 0x6a, 0xc3, 0x62, 0xb5, 0xe9, 0x33, 0xdb, 0x87, 0x43, 0xff, 0x80, 0xdf, 0xcc, 0x2d, 0xf5, 0xcb, 0xcb, 0xf0, 0x27, 0x18, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5632 = { .name = "ecdh_secp384r1_5632", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5632_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5632_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5632_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5632_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 352 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5633 for ECDH, tcId is 353 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5633_peerpubkey[] = { 0x27, 0x6a, 0x5a, 0x27, 0x4b, 0x46, 0xa0, 0xa3, 0x6f, 0x81, 0x1c, 0xf6, 0x4b, 0xc7, 0xa6, 0x44, 0xd5, 0xad, 0x9c, 0x12, 0x4b, 0xe0, 0x02, 0xa6, 0xfd, 0xd1, 0xcc, 0x11, 0x18, 0x80, 0x65, 0x5c, 0x8d, 0x29, 0x87, 0x67, 0x4e, 0xa4, 0x9e, 0x7d, 0x70, 0xd2, 0xa0, 0xae, 0x82, 0x0d, 0x1a, 0x7d, 0x4e, 0xc3, 0xba, 0xe2, 0xdd, 0x1d, 0x77, 0xaf, 0x08, 0x2f, 0xab, 0xcd, 0x68, 0xac, 0x20, 0xf2, 0x09, 0xe8, 0xfa, 0x44, 0x64, 0x78, 0x79, 0x42, 0x23, 0xbe, 0x1d, 0x63, 0xd7, 0x19, 0x87, 0xe9, 0x64, 0xe4, 0x5f, 0x0b, 0xcf, 0x6a, 0x2e, 0xa0, 0xa1, 0x2c, 0x63, 0x34, 0x45, 0x28, 0x5a, 0x46, }; static const unsigned char ecdh_secp384r1_5633_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5633_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5633_sharedsecret[] = { 0x28, 0x35, 0x02, 0x35, 0x5b, 0x21, 0x18, 0x9f, 0x73, 0x61, 0xe8, 0x94, 0x57, 0x55, 0x09, 0x74, 0xf8, 0x6a, 0xe2, 0xb6, 0x6d, 0x02, 0x55, 0x06, 0x89, 0x9c, 0x15, 0xb3, 0x90, 0xda, 0x24, 0x8e, 0x14, 0xfd, 0x1b, 0x4f, 0x25, 0xc8, 0x58, 0x4d, 0x1a, 0x71, 0xe7, 0xf8, 0xc9, 0x3f, 0xa9, 0x76, }; static const wycheproof_ecdh_test ecdh_secp384r1_5633 = { .name = "ecdh_secp384r1_5633", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5633_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5633_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5633_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5633_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 353 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5634 for ECDH, tcId is 354 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5634_peerpubkey[] = { 0x98, 0xfe, 0xe3, 0x14, 0xcf, 0xb3, 0xc0, 0x1c, 0xc2, 0xd9, 0xfd, 0x7c, 0x25, 0x68, 0x33, 0x60, 0x27, 0x84, 0x00, 0x08, 0xbc, 0xfb, 0xfc, 0x82, 0x92, 0x42, 0x1e, 0xd6, 0xb0, 0x72, 0x7f, 0xa2, 0x0b, 0x70, 0x02, 0xa5, 0x72, 0x6a, 0x68, 0x5d, 0x44, 0x96, 0x3a, 0xd8, 0xf7, 0x4c, 0x69, 0x5d, 0xa2, 0x5a, 0x54, 0x2b, 0x8e, 0x0b, 0xb9, 0xa4, 0x85, 0x8b, 0xe6, 0x4f, 0x70, 0x80, 0x0d, 0xa9, 0x3a, 0xf6, 0x77, 0x6b, 0xb7, 0x95, 0xbb, 0x16, 0x9f, 0x4c, 0x9d, 0x15, 0x17, 0x95, 0xf3, 0xa5, 0xa3, 0x7a, 0x3c, 0x82, 0x26, 0x4c, 0xf6, 0x87, 0x0c, 0x4d, 0xed, 0x68, 0x4a, 0x71, 0x26, 0x9b, }; static const unsigned char ecdh_secp384r1_5634_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5634_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5634_sharedsecret[] = { 0x90, 0x44, 0xbe, 0x70, 0x56, 0x66, 0x64, 0xed, 0x91, 0xda, 0xb8, 0x5a, 0xa5, 0xff, 0x64, 0x4d, 0x7a, 0x34, 0x68, 0x10, 0xd2, 0x67, 0x8d, 0x27, 0x75, 0x19, 0x17, 0xc3, 0x82, 0x0c, 0x4c, 0x82, 0x50, 0x34, 0xb7, 0x8a, 0x95, 0x7b, 0x8f, 0xd1, 0xd4, 0x7e, 0x86, 0xe6, 0x7e, 0x5b, 0xa9, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp384r1_5634 = { .name = "ecdh_secp384r1_5634", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5634_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5634_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5634_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5634_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 354 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5635 for ECDH, tcId is 355 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5635_peerpubkey[] = { 0xd1, 0x6d, 0x0b, 0x11, 0xd0, 0xa3, 0x26, 0xbb, 0x27, 0x25, 0xb3, 0xc9, 0xcd, 0x59, 0x87, 0x46, 0xaf, 0x11, 0x92, 0x4f, 0x61, 0x72, 0xce, 0x53, 0xb1, 0x9a, 0x94, 0x2b, 0x96, 0x55, 0x62, 0xc2, 0xa2, 0x87, 0x5f, 0xd1, 0x5c, 0xe1, 0xf4, 0x86, 0x91, 0x56, 0xd5, 0xcf, 0x08, 0x78, 0x0c, 0x74, 0xd4, 0xc4, 0x92, 0x7c, 0xa1, 0x75, 0xb5, 0x32, 0x7c, 0x9f, 0x32, 0x1c, 0xd2, 0xa7, 0xb1, 0xac, 0xb5, 0x8f, 0xce, 0x35, 0x11, 0x60, 0xda, 0xea, 0x5d, 0x5c, 0x64, 0xd7, 0x6d, 0x38, 0xd3, 0xab, 0x17, 0xf7, 0xc1, 0x43, 0x20, 0x93, 0xad, 0x4d, 0x62, 0x00, 0x53, 0xf6, 0xf6, 0x75, 0x86, 0x4a, }; static const unsigned char ecdh_secp384r1_5635_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5635_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5635_sharedsecret[] = { 0x1f, 0xa4, 0xc8, 0xe6, 0xde, 0xc8, 0x90, 0x88, 0xa8, 0xfe, 0x72, 0x55, 0x30, 0xf5, 0xc1, 0x54, 0x67, 0x2e, 0x84, 0x48, 0x8b, 0xaa, 0xf7, 0x0a, 0x08, 0xb2, 0xe9, 0x65, 0x65, 0x96, 0x26, 0x53, 0x57, 0x74, 0x02, 0x16, 0x14, 0x24, 0x29, 0x4b, 0x7f, 0x37, 0x72, 0x08, 0xfc, 0x93, 0x61, 0x39, }; static const wycheproof_ecdh_test ecdh_secp384r1_5635 = { .name = "ecdh_secp384r1_5635", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5635_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5635_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5635_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5635_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 355 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5636 for ECDH, tcId is 356 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5636_peerpubkey[] = { 0x10, 0x52, 0x6e, 0x3b, 0x09, 0x7a, 0x99, 0xea, 0x50, 0x7b, 0xa6, 0x79, 0x5e, 0xa1, 0xf7, 0x77, 0x18, 0x69, 0x04, 0x60, 0x11, 0x7b, 0xfa, 0xc9, 0xed, 0x95, 0xbe, 0xe3, 0x11, 0xdb, 0x5f, 0x8a, 0x1a, 0x27, 0x67, 0xc1, 0x34, 0xb1, 0x9d, 0xb3, 0xc3, 0x87, 0xa1, 0xfb, 0x45, 0xbe, 0x70, 0x29, 0x31, 0x2c, 0x75, 0xd7, 0xbb, 0xee, 0xee, 0x48, 0xbc, 0x15, 0xb5, 0x5d, 0xfb, 0x71, 0x65, 0x11, 0xc5, 0x63, 0x4d, 0x71, 0x9d, 0x26, 0x90, 0x3b, 0xca, 0xce, 0x1c, 0x60, 0xa8, 0xe0, 0x30, 0x49, 0x61, 0x56, 0xd9, 0xcc, 0xac, 0x97, 0xca, 0xc7, 0x24, 0xe0, 0x93, 0x57, 0x4a, 0xe4, 0xbc, 0x83, }; static const unsigned char ecdh_secp384r1_5636_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5636_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5636_sharedsecret[] = { 0x04, 0xf4, 0x02, 0x9d, 0x37, 0x23, 0x32, 0xb4, 0xb2, 0x26, 0xc9, 0xf3, 0x25, 0x21, 0xea, 0x39, 0xa5, 0x8b, 0x65, 0x5d, 0x24, 0xe3, 0x51, 0x90, 0xce, 0x04, 0xd5, 0x8f, 0x0c, 0x04, 0x81, 0x4b, 0xe7, 0xf6, 0xff, 0xcb, 0x8a, 0x4a, 0x15, 0x13, 0x42, 0x24, 0x13, 0x4f, 0x02, 0x9e, 0xda, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp384r1_5636 = { .name = "ecdh_secp384r1_5636", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5636_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5636_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5636_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5636_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 356 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5637 for ECDH, tcId is 357 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5637_peerpubkey[] = { 0xe6, 0x32, 0xcb, 0x20, 0x12, 0x88, 0xb6, 0x43, 0xf2, 0x35, 0x53, 0x3c, 0x44, 0x84, 0x6b, 0x11, 0xa2, 0x87, 0x40, 0xee, 0x41, 0x37, 0xa2, 0x2c, 0xff, 0x7f, 0x54, 0x20, 0x54, 0xd6, 0x33, 0x7f, 0x46, 0x36, 0x38, 0x49, 0xc8, 0x31, 0x0e, 0x20, 0xd8, 0xb2, 0x9b, 0xad, 0xdb, 0x31, 0x09, 0xff, 0x94, 0x8d, 0x42, 0xae, 0x95, 0x9c, 0x3a, 0xe1, 0x43, 0xd4, 0xf0, 0x2d, 0x26, 0x87, 0x26, 0xbc, 0x2b, 0x66, 0xba, 0xfe, 0xd7, 0x65, 0x7b, 0x1a, 0x53, 0xe2, 0x3e, 0xed, 0x48, 0x09, 0x4c, 0x5c, 0xa8, 0xd2, 0x8d, 0x16, 0x12, 0x1a, 0xa6, 0x23, 0x7d, 0x81, 0x50, 0xad, 0x6c, 0x32, 0x66, 0x55, }; static const unsigned char ecdh_secp384r1_5637_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5637_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5637_sharedsecret[] = { 0xf4, 0x1f, 0x91, 0x21, 0x65, 0x82, 0x7c, 0xea, 0x27, 0xab, 0x81, 0x47, 0xa4, 0x6a, 0xbe, 0xb3, 0x0c, 0x1b, 0xc7, 0x3c, 0xfe, 0x05, 0x20, 0xd7, 0xd8, 0x69, 0x8d, 0xf8, 0xf9, 0x52, 0x9a, 0xfe, 0x26, 0xea, 0xc7, 0x07, 0x34, 0x0f, 0x38, 0xb4, 0x9e, 0xc5, 0xe7, 0x41, 0xd6, 0x46, 0xb9, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp384r1_5637 = { .name = "ecdh_secp384r1_5637", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5637_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5637_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5637_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5637_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 357 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5638 for ECDH, tcId is 358 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5638_peerpubkey[] = { 0x08, 0x83, 0x30, 0x38, 0x06, 0x13, 0xad, 0xb0, 0xb8, 0xe5, 0x31, 0x64, 0x98, 0x09, 0xfb, 0xea, 0x34, 0x0e, 0xdb, 0xdf, 0x59, 0x8a, 0xf0, 0x28, 0xe7, 0x4b, 0xa0, 0xb4, 0xf1, 0x8e, 0x2d, 0x50, 0x11, 0x85, 0x31, 0xb9, 0xa9, 0x2b, 0x07, 0x75, 0x3b, 0x2c, 0x13, 0xce, 0xb8, 0x7d, 0x3c, 0x8e, 0x38, 0xe6, 0x25, 0xb5, 0x00, 0xf4, 0xb9, 0xbd, 0x2d, 0xc7, 0x81, 0x89, 0x2f, 0xff, 0x96, 0xd8, 0x92, 0x71, 0x90, 0x9d, 0x3e, 0x56, 0x1a, 0x63, 0xe4, 0x15, 0x46, 0x7d, 0x6d, 0x45, 0x5d, 0x0a, 0x4c, 0x19, 0xc3, 0x6f, 0x16, 0xdc, 0xc2, 0x41, 0x7a, 0x34, 0x25, 0xc2, 0xad, 0xda, 0x90, 0x34, }; static const unsigned char ecdh_secp384r1_5638_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5638_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5638_sharedsecret[] = { 0x6e, 0x43, 0x7e, 0x26, 0x31, 0x6e, 0xb2, 0x59, 0x64, 0x00, 0xd8, 0xfd, 0xda, 0x5b, 0xe9, 0x0c, 0xaa, 0x94, 0xd6, 0x2c, 0x42, 0x5f, 0x27, 0xdf, 0x5c, 0xa6, 0x78, 0x98, 0xa8, 0xff, 0xdf, 0x3c, 0xde, 0x57, 0x7c, 0x4d, 0x2d, 0x66, 0xf6, 0x52, 0x24, 0x98, 0xf0, 0xb2, 0x95, 0xd7, 0x7a, 0x2e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5638 = { .name = "ecdh_secp384r1_5638", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5638_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5638_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5638_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5638_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 358 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5639 for ECDH, tcId is 359 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5639_peerpubkey[] = { 0xd9, 0xa9, 0xd1, 0xe0, 0xaa, 0xca, 0xef, 0x4a, 0xec, 0xf2, 0x41, 0xd6, 0x90, 0xee, 0x41, 0x01, 0xdf, 0x74, 0xd7, 0xa3, 0x7f, 0x18, 0xce, 0x31, 0x81, 0x12, 0x8f, 0x8d, 0x42, 0x55, 0xcd, 0x34, 0x70, 0x2b, 0x17, 0xf1, 0x16, 0xb2, 0x50, 0x6c, 0xb8, 0xf5, 0x77, 0xd9, 0x35, 0x7e, 0x36, 0x29, 0x96, 0x6e, 0x62, 0xe6, 0xf9, 0x5c, 0x9e, 0xb7, 0x83, 0x3c, 0xcc, 0x1f, 0x22, 0x95, 0x6a, 0x1e, 0x25, 0x99, 0xa8, 0x75, 0xf8, 0x13, 0x9d, 0x9a, 0x2b, 0x31, 0xe2, 0x00, 0x06, 0x11, 0xb4, 0xd6, 0xdb, 0x1d, 0x23, 0xe7, 0xf0, 0xdb, 0x5b, 0x5c, 0x17, 0xbb, 0x44, 0xe1, 0x50, 0xea, 0x26, 0x95, }; static const unsigned char ecdh_secp384r1_5639_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5639_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5639_sharedsecret[] = { 0x85, 0x47, 0x72, 0xb9, 0xb7, 0x7d, 0x46, 0x87, 0x57, 0x1f, 0x19, 0x34, 0x06, 0x1d, 0xbc, 0xe0, 0x01, 0x6d, 0x47, 0xb9, 0x0a, 0x8b, 0x5d, 0x38, 0x22, 0x94, 0x75, 0xc2, 0x13, 0xcd, 0x5d, 0xf2, 0x5f, 0x96, 0x0b, 0x77, 0x5a, 0xe7, 0x29, 0x09, 0xcc, 0xcc, 0x5b, 0xa1, 0x4d, 0xd0, 0x34, 0x48, }; static const wycheproof_ecdh_test ecdh_secp384r1_5639 = { .name = "ecdh_secp384r1_5639", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5639_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5639_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5639_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5639_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 359 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5640 for ECDH, tcId is 360 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5640_peerpubkey[] = { 0x53, 0x5d, 0x22, 0xf3, 0x9c, 0x8a, 0x55, 0x91, 0xe7, 0xa1, 0xde, 0xef, 0x7a, 0x6c, 0x34, 0x96, 0x5f, 0xb5, 0xd1, 0xe6, 0x16, 0xf1, 0x4b, 0xb1, 0x2a, 0x7e, 0x63, 0x10, 0xd5, 0x20, 0x35, 0x0f, 0x2f, 0x75, 0x83, 0x6f, 0x9c, 0x81, 0x89, 0xec, 0x45, 0x03, 0xef, 0x74, 0xa0, 0xb8, 0x50, 0xd4, 0xab, 0xb0, 0x5a, 0xb1, 0xe5, 0xc6, 0x06, 0x18, 0x84, 0xd1, 0xef, 0xf3, 0xd2, 0xbe, 0x78, 0xc7, 0x67, 0x59, 0xb9, 0x86, 0xdd, 0xe7, 0x05, 0x52, 0xaa, 0x1e, 0x97, 0xbc, 0x01, 0x4f, 0x33, 0x3c, 0x0d, 0x5a, 0xf8, 0xb4, 0x6d, 0x61, 0xe1, 0xae, 0x06, 0x77, 0x4e, 0x2f, 0x86, 0x26, 0x73, 0x12, }; static const unsigned char ecdh_secp384r1_5640_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5640_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5640_sharedsecret[] = { 0x03, 0x7d, 0x45, 0x9a, 0x54, 0xfe, 0x6b, 0x69, 0xd8, 0x93, 0xf4, 0xd3, 0x09, 0x4a, 0x5e, 0x0a, 0x93, 0x25, 0x1d, 0x52, 0x54, 0xce, 0xf5, 0xb0, 0x22, 0xe7, 0x06, 0x5f, 0xdf, 0x52, 0xe3, 0xbe, 0x81, 0x27, 0xf2, 0xae, 0x2e, 0x33, 0x6e, 0x26, 0x1a, 0x71, 0xf6, 0xe4, 0x1a, 0xac, 0xb2, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp384r1_5640 = { .name = "ecdh_secp384r1_5640", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5640_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5640_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5640_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5640_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 360 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5641 for ECDH, tcId is 361 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5641_peerpubkey[] = { 0x89, 0x40, 0x2a, 0x14, 0x3d, 0x57, 0xec, 0x58, 0x5a, 0xee, 0x12, 0x43, 0xd3, 0xa7, 0xad, 0xfa, 0x87, 0xeb, 0x80, 0xc6, 0x0b, 0xd0, 0x9c, 0xbb, 0x56, 0xb6, 0x4e, 0xb0, 0xa1, 0xb7, 0xf5, 0x92, 0x73, 0x18, 0xd8, 0x57, 0x3c, 0x62, 0x39, 0xc6, 0xfe, 0xea, 0xa5, 0x8d, 0xc2, 0xae, 0x2e, 0x40, 0xd6, 0x05, 0x18, 0x9a, 0xc4, 0xa6, 0x6b, 0xd6, 0xb9, 0xe7, 0x08, 0xbd, 0xbc, 0xcc, 0x46, 0x47, 0x54, 0x3c, 0x0d, 0xd1, 0xd3, 0xc6, 0x4a, 0x2c, 0x16, 0x0c, 0x32, 0xf7, 0x29, 0xf2, 0xb1, 0x5d, 0xd9, 0x58, 0x52, 0xc9, 0xb2, 0x07, 0x50, 0x86, 0x51, 0xd7, 0x74, 0x63, 0x95, 0xa5, 0xa4, 0x90, }; static const unsigned char ecdh_secp384r1_5641_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5641_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5641_sharedsecret[] = { 0xe8, 0xd0, 0x3d, 0xff, 0xea, 0xd2, 0xe4, 0x0e, 0xa9, 0x15, 0xdb, 0x4c, 0x9c, 0x67, 0xab, 0xb4, 0x5a, 0xa6, 0x09, 0x92, 0x42, 0x2b, 0x70, 0x37, 0x42, 0x39, 0xca, 0xf5, 0x8b, 0x96, 0xf8, 0x67, 0x16, 0x60, 0x0c, 0x1c, 0xc4, 0x44, 0x93, 0x62, 0xdc, 0x56, 0xca, 0x05, 0x7b, 0xfc, 0x5e, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5641 = { .name = "ecdh_secp384r1_5641", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5641_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5641_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5641_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5641_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 361 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5642 for ECDH, tcId is 362 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5642_peerpubkey[] = { 0xc2, 0xa9, 0xc5, 0x2a, 0x59, 0x36, 0x91, 0x0c, 0x05, 0xc4, 0x14, 0x43, 0x15, 0x12, 0x7b, 0xf6, 0x62, 0xc2, 0x92, 0xb8, 0xf0, 0x68, 0x18, 0x11, 0xc2, 0xbf, 0x8f, 0x4f, 0x9c, 0xc5, 0xbd, 0x7a, 0xb6, 0x93, 0xf7, 0xcb, 0xdd, 0xb5, 0x72, 0x4e, 0x7e, 0x29, 0xdd, 0x02, 0x3d, 0x15, 0x5f, 0xfd, 0x33, 0x5e, 0x8b, 0x87, 0x2a, 0xe1, 0xb7, 0xa9, 0x12, 0x93, 0xae, 0x9c, 0xc8, 0xf6, 0x54, 0xf0, 0x5f, 0xf4, 0x76, 0x7d, 0xb2, 0x08, 0xb7, 0x6c, 0x73, 0xb6, 0xb3, 0x4c, 0x56, 0x26, 0x51, 0x2e, 0x6b, 0xa9, 0x2b, 0xcc, 0x93, 0x7c, 0x9b, 0xcc, 0xa9, 0x44, 0x7d, 0xbe, 0xc2, 0x2f, 0xf1, 0x06, }; static const unsigned char ecdh_secp384r1_5642_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5642_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5642_sharedsecret[] = { 0xe8, 0x20, 0xf9, 0x97, 0x92, 0x8a, 0x71, 0x18, 0x6c, 0xe0, 0x9b, 0x96, 0x92, 0x3c, 0x31, 0x7c, 0xc1, 0x28, 0xcb, 0x76, 0x1c, 0x87, 0xe9, 0x70, 0x73, 0xa8, 0x51, 0x61, 0x0c, 0xa1, 0x2f, 0x21, 0x99, 0x37, 0x93, 0x87, 0x89, 0xbd, 0x22, 0x7a, 0x8d, 0x72, 0xb2, 0xb4, 0x06, 0xc4, 0x71, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp384r1_5642 = { .name = "ecdh_secp384r1_5642", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5642_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5642_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5642_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5642_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 362 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5643 for ECDH, tcId is 363 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5643_peerpubkey[] = { 0xdc, 0xd0, 0x22, 0x4a, 0xd2, 0x21, 0x9d, 0xc3, 0xaf, 0x05, 0xee, 0xa5, 0xd2, 0x79, 0x74, 0xa7, 0x5f, 0xb1, 0x96, 0x0d, 0x0d, 0x72, 0x1c, 0x39, 0xf1, 0x07, 0xbf, 0x45, 0x34, 0x62, 0x20, 0x99, 0x4e, 0x52, 0x0c, 0xa5, 0xa6, 0x46, 0x70, 0x1e, 0x93, 0x19, 0xce, 0xb0, 0x80, 0x17, 0xa3, 0x02, 0xe0, 0xb1, 0xbe, 0xe2, 0x92, 0xcd, 0x1c, 0xb9, 0x9f, 0x14, 0x5e, 0xad, 0x3d, 0x12, 0x28, 0x59, 0x03, 0xb1, 0xe5, 0x49, 0xfc, 0xce, 0x75, 0x91, 0xa1, 0x01, 0xa1, 0x67, 0x5f, 0xb9, 0xb6, 0xe3, 0x0e, 0x67, 0x80, 0x37, 0xf4, 0xd5, 0x8d, 0x22, 0x0c, 0x1e, 0x36, 0xa4, 0xe7, 0x9f, 0x88, 0x3c, }; static const unsigned char ecdh_secp384r1_5643_ourpubkey[] = { 0x29, 0xeb, 0x9c, 0x63, 0xa1, 0x23, 0x22, 0xcd, 0x99, 0xde, 0x0e, 0x8e, 0x3c, 0x11, 0xe6, 0xc8, 0xa4, 0x86, 0xb1, 0x00, 0x81, 0x81, 0xbe, 0x4c, 0x82, 0x5f, 0x38, 0xb3, 0x71, 0xe6, 0xf0, 0x3e, 0x29, 0x26, 0xcd, 0x60, 0xe9, 0xa9, 0xcc, 0xd4, 0x2e, 0x1a, 0xa8, 0x79, 0x9d, 0x2e, 0xf3, 0xa7, 0x9d, 0x04, 0x5f, 0x3a, 0x3d, 0xf9, 0x74, 0x74, 0x32, 0x68, 0xbe, 0x65, 0x0f, 0xba, 0xf6, 0x8c, 0x70, 0x45, 0xa4, 0x83, 0x09, 0x3c, 0xe2, 0xe2, 0x89, 0x90, 0x30, 0x97, 0x39, 0x6f, 0x04, 0x00, 0x58, 0xfa, 0xac, 0xb7, 0x23, 0xeb, 0x49, 0x3b, 0x5b, 0x63, 0x1b, 0xc3, 0x65, 0xc5, 0xfc, 0x49, }; static const unsigned char ecdh_secp384r1_5643_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x30, 0x52, 0xf4, 0xe5, 0x04, 0x39, 0x7e, 0x75, 0xe4, 0xd7, 0xcd, 0x0c, 0xa1, 0x49, 0xda, 0x0b, 0x49, 0x88, 0xb8, 0xa6, 0xde, 0xd5, 0xce, 0xae, 0x4b, 0x58, 0x06, 0x91, 0x37, 0x61, 0x87, }; static const unsigned char ecdh_secp384r1_5643_sharedsecret[] = { 0x0a, 0xed, 0x8a, 0xc7, 0xd0, 0x4a, 0xf0, 0x70, 0xb7, 0x3a, 0x03, 0xf3, 0x7e, 0xf7, 0x11, 0x29, 0x6d, 0xb8, 0xac, 0x64, 0xba, 0xb1, 0x3e, 0x15, 0x41, 0x8d, 0xf6, 0x37, 0x3a, 0xad, 0x81, 0xd8, 0xe0, 0xfa, 0x78, 0x9b, 0x92, 0x92, 0x93, 0x3d, 0x7f, 0x11, 0xb8, 0x61, 0x40, 0x76, 0xe0, 0x74, }; static const wycheproof_ecdh_test ecdh_secp384r1_5643 = { .name = "ecdh_secp384r1_5643", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5643_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5643_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5643_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5643_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 363 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5644 for ECDH, tcId is 364 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5644_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5644_ourpubkey[] = { 0x07, 0x7a, 0x41, 0xd4, 0x60, 0x6f, 0xfa, 0x14, 0x64, 0x79, 0x3c, 0x7e, 0x5f, 0xdc, 0x7d, 0x98, 0xcb, 0x9d, 0x39, 0x10, 0x20, 0x2d, 0xcd, 0x06, 0xbe, 0xa4, 0xf2, 0x40, 0xd3, 0x56, 0x6d, 0xa6, 0xb4, 0x08, 0xbb, 0xae, 0x50, 0x26, 0x58, 0x0d, 0x02, 0xd7, 0xe5, 0xc7, 0x05, 0x00, 0xc8, 0x31, 0xc9, 0x95, 0xf7, 0xca, 0x0b, 0x0c, 0x42, 0x83, 0x7d, 0x0b, 0xbe, 0x96, 0x02, 0xa9, 0xfc, 0x99, 0x85, 0x20, 0xb4, 0x1c, 0x85, 0x11, 0x5a, 0xa5, 0xf7, 0x68, 0x4c, 0x0e, 0xdc, 0x11, 0x1e, 0xac, 0xc2, 0x4a, 0xbd, 0x6b, 0xe4, 0xb5, 0xd2, 0x98, 0xb6, 0x5f, 0x28, 0x60, 0x0a, 0x2f, 0x1d, 0xf1, }; static const unsigned char ecdh_secp384r1_5644_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp384r1_5644_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5644 = { .name = "ecdh_secp384r1_5644", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5644_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5644_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5644_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5644_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 364 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5645 for ECDH, tcId is 365 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5645_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5645_ourpubkey[] = { 0xaf, 0x51, 0xf1, 0x8a, 0x15, 0x62, 0x8d, 0x56, 0x12, 0xc8, 0xf7, 0x14, 0x43, 0x6e, 0xf9, 0x0f, 0x90, 0xd5, 0xa0, 0xba, 0x35, 0x05, 0x4e, 0x99, 0xc5, 0x74, 0x5b, 0xb1, 0x0d, 0x0b, 0xf3, 0x18, 0xcc, 0x82, 0xc0, 0xf7, 0xf2, 0xc1, 0x19, 0xe0, 0x8a, 0x31, 0xe3, 0xfc, 0xca, 0x5b, 0x9f, 0xe3, 0x1c, 0xff, 0xb5, 0x65, 0xc8, 0x67, 0x18, 0xc5, 0x9e, 0x1e, 0x6a, 0x70, 0xa6, 0x57, 0x90, 0x76, 0x89, 0xf7, 0x3a, 0x71, 0x13, 0xe3, 0x5f, 0xff, 0x59, 0x68, 0x61, 0xd3, 0xe2, 0xfa, 0xee, 0x70, 0x92, 0x9b, 0xb1, 0x35, 0x74, 0xe0, 0xe1, 0x03, 0x56, 0x94, 0x42, 0x0c, 0xd7, 0x3e, 0x0c, 0xf5, }; static const unsigned char ecdh_secp384r1_5645_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5645_sharedsecret[] = { 0xdb, 0x1d, 0x8e, 0xf1, 0x11, 0x72, 0x82, 0x87, 0x0d, 0xb8, 0x11, 0x3a, 0xa4, 0xf5, 0x87, 0x23, 0xc7, 0x56, 0xce, 0x59, 0x86, 0x86, 0xeb, 0x8e, 0xa5, 0x31, 0xaa, 0x4d, 0x39, 0xab, 0xb1, 0xb9, 0x82, 0xb1, 0xe7, 0xbb, 0x26, 0x48, 0xa6, 0xc2, 0x68, 0xd2, 0xd3, 0x51, 0x20, 0x4d, 0xb8, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp384r1_5645 = { .name = "ecdh_secp384r1_5645", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5645_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5645_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5645_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5645_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 365 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5646 for ECDH, tcId is 366 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5646_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5646_ourpubkey[] = { 0x28, 0x41, 0xb4, 0xda, 0xff, 0x11, 0x3d, 0x37, 0x57, 0xff, 0xca, 0xca, 0xd8, 0x7a, 0x4a, 0x75, 0xf0, 0x71, 0x1a, 0x2f, 0xfd, 0x23, 0x52, 0x9e, 0xf1, 0xf3, 0x3f, 0xca, 0x75, 0x66, 0x5b, 0x49, 0xa8, 0xa8, 0xac, 0xce, 0x54, 0x13, 0x89, 0x4a, 0x4d, 0x15, 0xeb, 0x3d, 0xb4, 0x1f, 0x37, 0x2e, 0x7c, 0x45, 0x25, 0xe9, 0x1a, 0x53, 0x18, 0xd1, 0x71, 0x84, 0xf9, 0xff, 0x52, 0x9f, 0xa3, 0xef, 0x96, 0xad, 0x8a, 0x95, 0x15, 0x55, 0x0e, 0x58, 0x1c, 0x2d, 0x38, 0x90, 0x9c, 0xfc, 0x4d, 0x7e, 0xc2, 0x58, 0x2d, 0xb4, 0xdb, 0x3e, 0x1b, 0x77, 0xc2, 0x18, 0x15, 0x90, 0xc9, 0xfa, 0xb2, 0x49, }; static const unsigned char ecdh_secp384r1_5646_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5646_sharedsecret[] = { 0xe9, 0x80, 0x62, 0xdf, 0x47, 0xef, 0x88, 0x4c, 0x94, 0x11, 0xe1, 0x64, 0x66, 0xaf, 0x84, 0xad, 0x27, 0x1d, 0x58, 0x60, 0x08, 0xb1, 0xfb, 0xc5, 0x0a, 0xeb, 0x3b, 0x36, 0x83, 0x6a, 0x35, 0xa7, 0x70, 0xdd, 0x42, 0xe0, 0xdb, 0x84, 0xd3, 0x9b, 0x26, 0xf4, 0xdc, 0xd2, 0xdc, 0x03, 0xd9, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp384r1_5646 = { .name = "ecdh_secp384r1_5646", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5646_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5646_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5646_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5646_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 366 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5647 for ECDH, tcId is 367 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5647_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5647_ourpubkey[] = { 0xd1, 0x3f, 0x9b, 0xd0, 0xc0, 0x5b, 0x56, 0xcc, 0x30, 0xf6, 0x01, 0x06, 0xa4, 0xb8, 0xe5, 0x00, 0x69, 0x3b, 0x9d, 0xf0, 0x59, 0x69, 0xcf, 0x47, 0x49, 0x4d, 0x5d, 0x2c, 0x16, 0x85, 0x4e, 0xf1, 0xd8, 0x69, 0x2b, 0x3e, 0x09, 0xb8, 0x09, 0x47, 0xf7, 0x35, 0x71, 0x07, 0x61, 0x6d, 0xdc, 0xb3, 0xbb, 0x3c, 0x7e, 0x83, 0x06, 0xc4, 0x6f, 0xc3, 0x98, 0xc6, 0x52, 0x1b, 0x64, 0x34, 0x70, 0xc2, 0x57, 0x74, 0xda, 0xd8, 0x3f, 0xaf, 0xef, 0xb5, 0xc6, 0x41, 0xcf, 0xec, 0xad, 0xec, 0xbf, 0x94, 0xb3, 0xd6, 0xdd, 0x59, 0xaf, 0x7a, 0xee, 0x86, 0xa9, 0x89, 0x39, 0x07, 0xd6, 0x81, 0x98, 0x14, }; static const unsigned char ecdh_secp384r1_5647_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5647_sharedsecret[] = { 0x89, 0x8a, 0xae, 0x0e, 0xbf, 0x1c, 0xb4, 0x9f, 0xb6, 0xb1, 0x23, 0x4d, 0x60, 0xf5, 0x90, 0x06, 0x32, 0x54, 0x21, 0x04, 0x9a, 0x8a, 0x32, 0x08, 0x20, 0xe1, 0xad, 0x6a, 0xf6, 0x59, 0x3c, 0xdc, 0x22, 0x29, 0xa0, 0x8c, 0x50, 0x0a, 0xa5, 0x5c, 0xa0, 0x59, 0x99, 0xd1, 0x28, 0x29, 0xdb, 0x9c, }; static const wycheproof_ecdh_test ecdh_secp384r1_5647 = { .name = "ecdh_secp384r1_5647", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5647_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5647_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5647_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5647_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 367 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5648 for ECDH, tcId is 368 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5648_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5648_ourpubkey[] = { 0xe3, 0xe2, 0x5c, 0xdb, 0x16, 0x02, 0x08, 0xb6, 0x47, 0x4e, 0x2b, 0x34, 0xd7, 0x2b, 0xf5, 0x86, 0xbb, 0xa1, 0x4f, 0x72, 0xc3, 0xf9, 0x7f, 0x51, 0x5a, 0x40, 0x5d, 0x14, 0x29, 0x19, 0x6e, 0x66, 0x73, 0x16, 0x1b, 0x78, 0xad, 0x80, 0xaf, 0xe6, 0x64, 0xee, 0x50, 0x4d, 0x4b, 0x16, 0x1a, 0xb7, 0x37, 0x70, 0xb6, 0x4d, 0x54, 0x42, 0x69, 0x59, 0x59, 0xfb, 0x89, 0xda, 0x7e, 0xb3, 0xa7, 0xca, 0xfc, 0xba, 0x07, 0x9d, 0x32, 0x03, 0x1d, 0xf6, 0x21, 0x30, 0x49, 0xc1, 0xcc, 0x50, 0x9e, 0x3f, 0x91, 0x20, 0xca, 0xf8, 0xdd, 0x91, 0x09, 0x11, 0x5f, 0x40, 0x38, 0x59, 0xac, 0x33, 0x7a, 0xcc, }; static const unsigned char ecdh_secp384r1_5648_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5648_sharedsecret[] = { 0x83, 0xf8, 0x62, 0xf4, 0x96, 0xab, 0x8a, 0xf1, 0x2b, 0x82, 0xa8, 0xa0, 0xc0, 0x47, 0xd8, 0x36, 0xbd, 0xfa, 0x36, 0x28, 0x13, 0x24, 0xb3, 0xa1, 0xeb, 0x2e, 0x9c, 0x1d, 0x46, 0x69, 0x9d, 0x81, 0xcb, 0x12, 0x5c, 0xbe, 0x4b, 0x93, 0x93, 0x9f, 0xd8, 0x4e, 0x1a, 0xe8, 0x6d, 0x8a, 0x83, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_5648 = { .name = "ecdh_secp384r1_5648", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5648_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5648_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5648_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5648_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 368 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5649 for ECDH, tcId is 369 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5649_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5649_ourpubkey[] = { 0x07, 0x9d, 0xc5, 0x66, 0x51, 0x0c, 0xc7, 0x18, 0xff, 0x34, 0x87, 0x97, 0xe2, 0xcf, 0xe6, 0x7c, 0x2f, 0xce, 0x93, 0xbf, 0x5f, 0x6f, 0x39, 0xbf, 0x74, 0xc1, 0xac, 0x3d, 0x8c, 0xba, 0xe3, 0xef, 0x92, 0xdd, 0x9c, 0xde, 0xdf, 0xa0, 0xf5, 0x6d, 0x06, 0xba, 0x59, 0x18, 0xd7, 0x4d, 0x96, 0x42, 0x59, 0xb2, 0x5f, 0x65, 0xa2, 0x6f, 0x78, 0x43, 0x76, 0x57, 0xbc, 0x81, 0xa3, 0x7f, 0x90, 0x77, 0x9d, 0x9c, 0x88, 0x8f, 0x7b, 0x7b, 0x4a, 0x0e, 0xc9, 0xd8, 0xaa, 0xc7, 0x76, 0xdb, 0xa6, 0x55, 0xd6, 0x0b, 0x62, 0xae, 0x33, 0xae, 0x3b, 0xd0, 0x5f, 0x13, 0x2a, 0x30, 0x3e, 0x94, 0x4a, 0xdc, }; static const unsigned char ecdh_secp384r1_5649_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x79, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_5649_sharedsecret[] = { 0x9a, 0x26, 0x89, 0x48, 0x87, 0xa0, 0x34, 0x2c, 0xa5, 0x59, 0xa7, 0x4a, 0x4d, 0x4a, 0x8e, 0x1d, 0x6b, 0x20, 0x84, 0xf0, 0x2e, 0x1c, 0x65, 0xb3, 0x09, 0x71, 0x21, 0xa9, 0xa9, 0xaf, 0x04, 0x7d, 0x88, 0x10, 0xfb, 0x94, 0x5d, 0xc2, 0x5b, 0xbf, 0x02, 0x22, 0x2b, 0x3b, 0x62, 0x5f, 0x1e, 0x0a, }; static const wycheproof_ecdh_test ecdh_secp384r1_5649 = { .name = "ecdh_secp384r1_5649", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5649_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5649_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5649_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5649_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 369 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5650 for ECDH, tcId is 370 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5650_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5650_ourpubkey[] = { 0xda, 0xe9, 0x76, 0xe4, 0xbe, 0xe3, 0x3d, 0xfc, 0xeb, 0x34, 0x68, 0xe9, 0x87, 0x4c, 0xd0, 0xd4, 0x72, 0xc8, 0xda, 0xb9, 0xec, 0xb7, 0x53, 0x83, 0x4f, 0xa6, 0x38, 0x84, 0xc7, 0x33, 0xaa, 0x38, 0x60, 0x73, 0xbb, 0x16, 0x37, 0x06, 0xe5, 0xac, 0xb5, 0x00, 0x4b, 0x5d, 0xce, 0xd7, 0xe5, 0xce, 0x8b, 0xac, 0x01, 0xcf, 0xab, 0x26, 0x8f, 0xa4, 0x12, 0xa4, 0x60, 0xf7, 0x00, 0x75, 0x79, 0x4a, 0x5e, 0xde, 0x56, 0xc9, 0xa1, 0x60, 0xf1, 0x33, 0x17, 0x3a, 0xe8, 0x68, 0xa2, 0x59, 0x18, 0x16, 0x0c, 0xd4, 0x6b, 0x94, 0x1c, 0xdc, 0xbc, 0xe4, 0x09, 0xe0, 0xb0, 0xf4, 0xd7, 0x02, 0x7b, 0x22, }; static const unsigned char ecdh_secp384r1_5650_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xdc, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_5650_sharedsecret[] = { 0x8a, 0x8d, 0x9d, 0xc1, 0x94, 0xa2, 0x69, 0x10, 0xcb, 0xda, 0xe7, 0x90, 0x8d, 0x18, 0x5b, 0x6a, 0xd0, 0x4b, 0x62, 0x0c, 0x94, 0xc5, 0xee, 0x33, 0x1e, 0x58, 0x4e, 0xd8, 0x04, 0xe4, 0x95, 0xbe, 0xbc, 0x22, 0x90, 0xa2, 0xd7, 0x00, 0x6a, 0x06, 0xe6, 0x5b, 0x9b, 0xca, 0xce, 0x86, 0xc6, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp384r1_5650 = { .name = "ecdh_secp384r1_5650", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5650_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5650_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5650_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5650_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 370 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5651 for ECDH, tcId is 371 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5651_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5651_ourpubkey[] = { 0xa7, 0x1b, 0x35, 0xdc, 0xe0, 0x5d, 0x1a, 0x61, 0x77, 0x64, 0xfb, 0x2e, 0x24, 0x2d, 0x62, 0xba, 0x74, 0x2c, 0x86, 0xb1, 0x39, 0x23, 0xe8, 0x85, 0x66, 0x4b, 0x60, 0xe5, 0x0f, 0x3e, 0x56, 0xa4, 0x53, 0xe9, 0x5f, 0x4e, 0x14, 0x36, 0x0b, 0xc1, 0xc9, 0x00, 0x2a, 0xab, 0x1d, 0x45, 0xa7, 0x23, 0xc6, 0x99, 0xe1, 0x34, 0xfd, 0xef, 0x15, 0x53, 0xee, 0x35, 0x62, 0x0e, 0x79, 0x41, 0x0e, 0x53, 0x69, 0x6b, 0xfd, 0x4e, 0xb8, 0x76, 0x2e, 0x34, 0x36, 0x0a, 0x67, 0xdc, 0xad, 0x0b, 0xf3, 0xba, 0xd1, 0x8f, 0x91, 0x60, 0xf8, 0xfa, 0xc6, 0x7e, 0x81, 0xbb, 0x74, 0x67, 0x49, 0x6f, 0xb1, 0x9d, }; static const unsigned char ecdh_secp384r1_5651_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xe4, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_5651_sharedsecret[] = { 0xd5, 0x7f, 0x6a, 0xa1, 0x2d, 0x3f, 0x07, 0xe8, 0x95, 0x84, 0x99, 0xf2, 0x49, 0xe5, 0x2c, 0xfb, 0xe5, 0xbe, 0x58, 0x48, 0x2e, 0x14, 0x6c, 0x54, 0x14, 0xdb, 0xbf, 0x98, 0x4f, 0xc5, 0x33, 0x37, 0x10, 0x35, 0x0e, 0x2c, 0xe9, 0x6b, 0x33, 0xbe, 0xb7, 0x67, 0x83, 0x81, 0xf4, 0x0f, 0x1d, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp384r1_5651 = { .name = "ecdh_secp384r1_5651", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5651_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5651_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5651_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5651_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 371 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5652 for ECDH, tcId is 372 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5652_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5652_ourpubkey[] = { 0xba, 0x22, 0x13, 0xc7, 0xad, 0x62, 0xb8, 0x95, 0x62, 0x72, 0xbe, 0xeb, 0x51, 0xd2, 0x58, 0xa2, 0xa5, 0xbe, 0x80, 0x4e, 0x0e, 0x29, 0xee, 0xd1, 0x61, 0xa1, 0x62, 0x16, 0xee, 0x89, 0xfb, 0x8a, 0x45, 0x34, 0x6c, 0x2d, 0x84, 0x43, 0x9a, 0xc8, 0x1a, 0xc3, 0xb9, 0xd6, 0x75, 0xef, 0x7e, 0xce, 0x57, 0x02, 0x46, 0xc3, 0xbb, 0x92, 0x79, 0x61, 0xe3, 0x81, 0x23, 0x33, 0xef, 0xa9, 0x4c, 0x7d, 0x6e, 0xcd, 0xbb, 0x71, 0x20, 0xa0, 0xe1, 0x3e, 0xb8, 0xa6, 0x1e, 0xc7, 0xd9, 0x21, 0x54, 0x71, 0x25, 0x4a, 0x5f, 0x3e, 0x71, 0xfa, 0xa2, 0x0f, 0xfd, 0xdc, 0xb9, 0xdb, 0xfc, 0xd7, 0xfb, 0x64, }; static const unsigned char ecdh_secp384r1_5652_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x69, 0xcc, 0xc5, 0x29, 0x73, }; static const unsigned char ecdh_secp384r1_5652_sharedsecret[] = { 0x18, 0x8e, 0x80, 0x41, 0xd9, 0xa5, 0xf0, 0xb6, 0xcf, 0xda, 0xd3, 0x15, 0xad, 0xa4, 0x82, 0x3b, 0xed, 0xa0, 0x14, 0x67, 0x74, 0xfa, 0xd6, 0x5b, 0x50, 0x0e, 0x6e, 0xf9, 0x43, 0x76, 0xeb, 0xf8, 0xaf, 0x7a, 0x40, 0xff, 0x6f, 0x6b, 0x45, 0x01, 0x9a, 0x09, 0xdd, 0xe7, 0xd7, 0xfb, 0x55, 0x52, }; static const wycheproof_ecdh_test ecdh_secp384r1_5652 = { .name = "ecdh_secp384r1_5652", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5652_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5652_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5652_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5652_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 372 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5653 for ECDH, tcId is 373 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5653_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5653_ourpubkey[] = { 0x88, 0xda, 0xe9, 0x6d, 0xc7, 0x6a, 0xb8, 0xcb, 0x2b, 0x88, 0xd3, 0x63, 0xd1, 0xfc, 0xee, 0xc6, 0xa4, 0x37, 0x3c, 0x71, 0xc9, 0x03, 0x99, 0xa7, 0xce, 0xbb, 0xb2, 0x5a, 0x07, 0x79, 0x2c, 0x43, 0x14, 0xfc, 0xdf, 0x3b, 0xc8, 0x56, 0x52, 0x76, 0x9c, 0x2c, 0xd4, 0x8b, 0xb6, 0x52, 0x6e, 0x80, 0x42, 0x89, 0x37, 0xbd, 0xbb, 0xf0, 0x5c, 0xb4, 0x44, 0xac, 0x12, 0xed, 0xfe, 0xf3, 0x5e, 0x9f, 0x32, 0x9a, 0x3b, 0xb9, 0x65, 0x8f, 0x56, 0x63, 0x95, 0x8b, 0xec, 0xeb, 0x34, 0x9e, 0xe7, 0x31, 0x5e, 0x7b, 0xcd, 0xc0, 0xf3, 0x3b, 0x55, 0x6f, 0x86, 0xf9, 0xe7, 0xae, 0x74, 0x5a, 0x68, 0x65, }; static const unsigned char ecdh_secp384r1_5653_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x59, }; static const unsigned char ecdh_secp384r1_5653_sharedsecret[] = { 0x2e, 0xcf, 0x9d, 0xc4, 0x7e, 0x8b, 0x07, 0xae, 0x61, 0xdd, 0xbd, 0x16, 0x80, 0xea, 0xd0, 0x26, 0x98, 0xe9, 0xe8, 0x46, 0x9f, 0x78, 0xd5, 0xa2, 0x83, 0x28, 0xe4, 0x8d, 0x0c, 0x9d, 0x7a, 0x2a, 0xc7, 0x87, 0xe5, 0x0c, 0xba, 0x58, 0xcc, 0x44, 0xa3, 0x2f, 0xb1, 0x23, 0x5d, 0x2d, 0x70, 0x27, }; static const wycheproof_ecdh_test ecdh_secp384r1_5653 = { .name = "ecdh_secp384r1_5653", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5653_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5653_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5653_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5653_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 373 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5654 for ECDH, tcId is 374 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5654_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5654_ourpubkey[] = { 0xa6, 0x69, 0xc5, 0x56, 0x3b, 0xd6, 0x7e, 0xec, 0x67, 0x8d, 0x29, 0xd6, 0xef, 0x4f, 0xde, 0x86, 0x4f, 0x37, 0x2d, 0x90, 0xb7, 0x9b, 0x9e, 0x88, 0x93, 0x1d, 0x5c, 0x29, 0x29, 0x12, 0x38, 0xcc, 0xed, 0x8e, 0x85, 0xab, 0x50, 0x7b, 0xf9, 0x1a, 0xa9, 0xcb, 0x2d, 0x13, 0x18, 0x66, 0x58, 0xfb, 0x56, 0x77, 0x48, 0xd5, 0x18, 0x3e, 0xd8, 0x60, 0xdd, 0x26, 0xf7, 0xc2, 0x4a, 0x0f, 0x13, 0x22, 0x08, 0xfe, 0xe6, 0xaa, 0xf3, 0xe7, 0xc3, 0xce, 0x3a, 0xfd, 0x20, 0x87, 0x3c, 0x48, 0xfa, 0x56, 0xd6, 0x92, 0x7e, 0x69, 0xdb, 0x7d, 0x77, 0x26, 0x68, 0x87, 0xb0, 0x96, 0x48, 0xc5, 0xde, 0x22, }; static const unsigned char ecdh_secp384r1_5654_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x69, }; static const unsigned char ecdh_secp384r1_5654_sharedsecret[] = { 0x06, 0xee, 0x9f, 0x55, 0x07, 0x9d, 0x3d, 0x3c, 0x18, 0xc6, 0x83, 0xba, 0x33, 0xe0, 0xd2, 0x52, 0x1b, 0xe9, 0x7c, 0x4f, 0xbf, 0x79, 0x17, 0xbf, 0x3b, 0x62, 0x87, 0xd5, 0x8f, 0xfc, 0xde, 0x2d, 0xf8, 0x88, 0x42, 0xe3, 0xf5, 0x53, 0x0b, 0x39, 0x54, 0x9a, 0xc2, 0x09, 0x74, 0xb1, 0xb6, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp384r1_5654 = { .name = "ecdh_secp384r1_5654", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5654_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5654_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5654_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5654_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 374 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5655 for ECDH, tcId is 375 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5655_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5655_ourpubkey[] = { 0x07, 0x7a, 0x41, 0xd4, 0x60, 0x6f, 0xfa, 0x14, 0x64, 0x79, 0x3c, 0x7e, 0x5f, 0xdc, 0x7d, 0x98, 0xcb, 0x9d, 0x39, 0x10, 0x20, 0x2d, 0xcd, 0x06, 0xbe, 0xa4, 0xf2, 0x40, 0xd3, 0x56, 0x6d, 0xa6, 0xb4, 0x08, 0xbb, 0xae, 0x50, 0x26, 0x58, 0x0d, 0x02, 0xd7, 0xe5, 0xc7, 0x05, 0x00, 0xc8, 0x31, 0x36, 0x6a, 0x08, 0x35, 0xf4, 0xf3, 0xbd, 0x7c, 0x82, 0xf4, 0x41, 0x69, 0xfd, 0x56, 0x03, 0x66, 0x7a, 0xdf, 0x4b, 0xe3, 0x7a, 0xee, 0xa5, 0x5a, 0x08, 0x97, 0xb3, 0xf1, 0x23, 0xee, 0xe1, 0x52, 0x3d, 0xb5, 0x42, 0x93, 0x1b, 0x4a, 0x2d, 0x67, 0x49, 0xa0, 0xd7, 0xa0, 0xf5, 0xd0, 0xe2, 0x0e, }; static const unsigned char ecdh_secp384r1_5655_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x70, }; static const unsigned char ecdh_secp384r1_5655_sharedsecret[] = { 0x45, 0x5a, 0xea, 0x99, 0x24, 0x33, 0x0b, 0xd6, 0xd2, 0xd6, 0x40, 0x34, 0x78, 0x32, 0x79, 0x00, 0xe1, 0x72, 0xe9, 0x35, 0x98, 0xe2, 0x54, 0xcf, 0x6d, 0x8e, 0xb1, 0x3f, 0x0a, 0x3d, 0x21, 0xbe, 0x51, 0xa4, 0x61, 0x07, 0x33, 0x38, 0x44, 0xe6, 0x1d, 0xfa, 0x3d, 0x80, 0xdf, 0x69, 0x28, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp384r1_5655 = { .name = "ecdh_secp384r1_5655", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5655_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5655_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5655_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5655_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 375 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5656 for ECDH, tcId is 376 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5656_peerpubkey[] = { 0xe9, 0xdf, 0xaa, 0xab, 0x80, 0x8b, 0x3a, 0xac, 0x1c, 0xcc, 0xa7, 0xcc, 0x62, 0x42, 0xa7, 0xee, 0x58, 0x32, 0x49, 0xaf, 0xe8, 0xee, 0x8f, 0x66, 0xb9, 0x04, 0xcc, 0x8e, 0xec, 0x34, 0xad, 0x33, 0x44, 0x56, 0xe0, 0x0f, 0x33, 0xa9, 0x4d, 0xe8, 0xb5, 0x16, 0x9c, 0xf0, 0x19, 0x95, 0x50, 0xc0, 0x20, 0x15, 0x6e, 0x96, 0x51, 0x73, 0x4f, 0xf9, 0x99, 0xc5, 0xf3, 0xea, 0x62, 0xb8, 0x3d, 0x00, 0x83, 0xa6, 0x09, 0x3f, 0x23, 0x44, 0x57, 0x25, 0x1e, 0xcf, 0x72, 0xc4, 0x1e, 0x4d, 0xf7, 0xce, 0xa2, 0x42, 0x0b, 0x54, 0x54, 0xa7, 0xf6, 0x90, 0x03, 0x43, 0x80, 0xba, 0xc9, 0x81, 0xe9, 0x2e, }; static const unsigned char ecdh_secp384r1_5656_ourpubkey[] = { 0x08, 0xd9, 0x99, 0x05, 0x7b, 0xa3, 0xd2, 0xd9, 0x69, 0x26, 0x00, 0x45, 0xc5, 0x5b, 0x97, 0xf0, 0x89, 0x02, 0x59, 0x59, 0xa6, 0xf4, 0x34, 0xd6, 0x51, 0xd2, 0x07, 0xd1, 0x9f, 0xb9, 0x6e, 0x9e, 0x4f, 0xe0, 0xe8, 0x6e, 0xbe, 0x0e, 0x64, 0xf8, 0x5b, 0x96, 0xa9, 0xc7, 0x52, 0x95, 0xdf, 0x61, 0x71, 0x7f, 0x0e, 0x05, 0xa4, 0xe4, 0xc3, 0x12, 0x48, 0x40, 0x17, 0x20, 0x02, 0x92, 0x45, 0x8b, 0x4d, 0x8a, 0x27, 0x8a, 0x43, 0x93, 0x3b, 0xc1, 0x6f, 0xb1, 0xaf, 0xa0, 0xda, 0x95, 0x4b, 0xd9, 0xa0, 0x02, 0xbc, 0x15, 0xb2, 0xc6, 0x1d, 0xd2, 0x9e, 0xaf, 0xe1, 0x90, 0xf5, 0x6b, 0xf1, 0x7f, }; static const unsigned char ecdh_secp384r1_5656_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x63, 0x4d, 0x81, 0xf4, 0x37, 0x2d, 0xdf, 0x58, 0x1a, 0x0d, 0xb2, 0x48, 0xb0, 0xa7, 0x7a, 0xec, 0xec, 0x19, 0x6a, 0xcc, 0xc5, 0x29, 0x71, }; static const unsigned char ecdh_secp384r1_5656_sharedsecret[] = { 0x02, 0x4c, 0x52, 0x81, 0x48, 0x72, 0x16, 0x05, 0x82, 0x70, 0xcd, 0x1c, 0xfe, 0x25, 0x9e, 0x94, 0x83, 0x10, 0xe4, 0xad, 0xc2, 0x63, 0xa9, 0xed, 0xaa, 0x4d, 0xa0, 0xbc, 0x3f, 0x5f, 0x8c, 0xe8, 0xff, 0xc8, 0x8a, 0xe4, 0x1b, 0x2c, 0x05, 0x0b, 0xf6, 0xdd, 0x9c, 0x8c, 0x66, 0x85, 0x72, 0x37, }; static const wycheproof_ecdh_test ecdh_secp384r1_5656 = { .name = "ecdh_secp384r1_5656", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5656_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5656_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5656_privkey, .privkeylen = 48, .sharedsecret = ecdh_secp384r1_5656_sharedsecret, .sharedsecretlen = 48, .result = 1, .comment = "edge case private key, tcId is 376 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5657 for ECDH, tcId is 377 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5657_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5657_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5657_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5657 = { .name = "ecdh_secp384r1_5657", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5657_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5657_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5657_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 377 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5658 for ECDH, tcId is 378 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5658_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_5658_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5658_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5658 = { .name = "ecdh_secp384r1_5658", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5658_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5658_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5658_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 378 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5659 for ECDH, tcId is 379 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5659_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_5659_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5659_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5659 = { .name = "ecdh_secp384r1_5659", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5659_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5659_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5659_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 379 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5660 for ECDH, tcId is 380 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5660_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5660_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5660_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5660 = { .name = "ecdh_secp384r1_5660", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5660_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5660_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5660_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 380 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5661 for ECDH, tcId is 381 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5661_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5661_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5661_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5661 = { .name = "ecdh_secp384r1_5661", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5661_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5661_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5661_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 381 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5662 for ECDH, tcId is 382 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5662_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_5662_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5662_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5662 = { .name = "ecdh_secp384r1_5662", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5662_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5662_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5662_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 382 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5663 for ECDH, tcId is 383 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5663_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_5663_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5663_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5663 = { .name = "ecdh_secp384r1_5663", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5663_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5663_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5663_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 383 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5664 for ECDH, tcId is 384 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5664_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5664_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5664_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5664 = { .name = "ecdh_secp384r1_5664", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5664_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5664_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5664_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 384 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5665 for ECDH, tcId is 385 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5665_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5665_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5665_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5665 = { .name = "ecdh_secp384r1_5665", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5665_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5665_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5665_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 385 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5666 for ECDH, tcId is 386 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5666_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_5666_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5666_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5666 = { .name = "ecdh_secp384r1_5666", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5666_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5666_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5666_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 386 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5667 for ECDH, tcId is 387 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5667_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_5667_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5667_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5667 = { .name = "ecdh_secp384r1_5667", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5667_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5667_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5667_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 387 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5668 for ECDH, tcId is 388 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5668_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5668_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5668_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5668 = { .name = "ecdh_secp384r1_5668", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5668_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5668_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5668_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 388 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5669 for ECDH, tcId is 389 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5669_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5669_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5669_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5669 = { .name = "ecdh_secp384r1_5669", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5669_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5669_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5669_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 389 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5670 for ECDH, tcId is 390 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5670_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp384r1_5670_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5670_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5670 = { .name = "ecdh_secp384r1_5670", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5670_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5670_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5670_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 390 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5671 for ECDH, tcId is 391 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5671_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp384r1_5671_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5671_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5671 = { .name = "ecdh_secp384r1_5671", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5671_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5671_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5671_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 391 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5672 for ECDH, tcId is 392 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5672_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp384r1_5672_ourpubkey[] = { 0x5e, 0x53, 0xe8, 0x36, 0x14, 0x6b, 0x51, 0x96, 0x7e, 0x75, 0xc6, 0x23, 0x47, 0xb4, 0x14, 0x6e, 0x79, 0xc0, 0x56, 0x10, 0xac, 0x61, 0x8b, 0x95, 0xd9, 0xa6, 0x14, 0x2c, 0x0b, 0x23, 0xfb, 0xcd, 0x3e, 0x3a, 0xf8, 0x65, 0x4a, 0xda, 0x3b, 0xbf, 0xe8, 0x1e, 0x80, 0xa7, 0x57, 0xac, 0x16, 0x23, 0xda, 0xd5, 0xc2, 0x79, 0x3a, 0x8b, 0xde, 0x3e, 0x8a, 0x47, 0xab, 0xdb, 0xa3, 0x25, 0x7e, 0x41, 0xc7, 0x07, 0x47, 0xc8, 0x96, 0x7b, 0xb5, 0x94, 0xe0, 0xaf, 0x5d, 0x3b, 0x97, 0xfa, 0x11, 0xe8, 0x2f, 0x71, 0xf2, 0x29, 0xcf, 0x4c, 0xff, 0x3b, 0x5c, 0xc8, 0x5b, 0x5d, 0xa8, 0x09, 0x0e, 0x70, }; static const unsigned char ecdh_secp384r1_5672_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x3d, 0x0b, 0xc5, 0x04, 0xba, 0x2b, 0x08, 0xa3, 0x92, 0xc9, 0x08, 0x1b, 0xf3, 0x81, 0x5d, 0x9e, 0x44, 0xd9, 0x69, 0xed, 0x7f, 0x05, 0xff, 0xd1, 0xd8, 0x59, 0x43, 0x55, 0x05, 0x3c, 0x61, 0x47, }; static const wycheproof_ecdh_test ecdh_secp384r1_5672 = { .name = "ecdh_secp384r1_5672", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5672_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5672_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5672_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 392 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5673 for ECDH, tcId is 393 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5673_peerpubkey[] = { 0x21, 0x21, 0xa3, 0x48, 0xf9, 0x74, 0x38, 0x55, 0x85, 0x9c, 0x49, 0x6f, 0x91, 0xd0, 0xf3, 0x9f, 0xe7, 0x28, 0xfc, 0x46, 0xe4, 0x8d, 0x00, 0x77, 0x13, 0x05, 0x1b, 0x22, 0xf1, 0xc0, 0x25, 0x7f, 0xe2, 0x0d, 0xd8, 0x5b, 0x21, 0xdf, 0x7e, 0x1e, 0xc8, 0x2b, 0xf8, 0xb3, 0x9b, 0x21, 0x38, 0xa2, 0xae, 0x74, 0xf8, 0x0e, 0x62, 0x57, 0x77, 0x8f, 0x8c, 0xca, 0x9f, 0x27, 0x9b, 0x57, 0xd2, 0x5e, 0xee, 0xb1, 0x55, 0x96, 0x06, 0x42, 0x97, 0x2f, 0x05, 0x67, 0xe2, 0x04, 0x51, 0x4f, 0x0a, 0xc1, 0xeb, 0x1e, 0x27, 0xdb, 0x51, 0x15, 0x05, 0x32, 0x11, 0x91, 0x49, 0x61, 0xd0, 0x96, 0x44, 0xc8, }; static const unsigned char ecdh_secp384r1_5673_ourpubkey[] = { 0x65, 0xce, 0x6b, 0x9d, 0x7e, 0x71, 0xe9, 0x31, 0xb6, 0xfd, 0x1f, 0xac, 0x91, 0x05, 0x07, 0xb4, 0x37, 0x7a, 0xc1, 0x5e, 0x45, 0x32, 0x92, 0xa2, 0x35, 0x5d, 0xf3, 0x9a, 0xb7, 0x41, 0xca, 0x36, 0x29, 0x7b, 0xf6, 0xde, 0x3c, 0x34, 0xa5, 0xaf, 0xbb, 0xad, 0x37, 0x18, 0x06, 0xb8, 0x91, 0xf2, 0x4b, 0x08, 0x8b, 0xc5, 0xd1, 0x46, 0x46, 0xa7, 0x4f, 0x3e, 0xfc, 0xfe, 0xa3, 0x9e, 0x12, 0xe2, 0xb5, 0xf5, 0x6e, 0xbb, 0xdd, 0x50, 0x3d, 0x5e, 0x8f, 0xee, 0x3f, 0xc3, 0x00, 0xd7, 0x50, 0x9b, 0xaa, 0x22, 0xb6, 0x68, 0xdb, 0xf1, 0xfd, 0x24, 0x18, 0x07, 0x0a, 0xb4, 0x0a, 0x07, 0xd9, 0xf6, }; static const unsigned char ecdh_secp384r1_5673_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5673 = { .name = "ecdh_secp384r1_5673", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5673_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5673_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5673_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 393 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5674 for ECDH, tcId is 394 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5674_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp384r1_5674_ourpubkey[] = { 0x65, 0xce, 0x6b, 0x9d, 0x7e, 0x71, 0xe9, 0x31, 0xb6, 0xfd, 0x1f, 0xac, 0x91, 0x05, 0x07, 0xb4, 0x37, 0x7a, 0xc1, 0x5e, 0x45, 0x32, 0x92, 0xa2, 0x35, 0x5d, 0xf3, 0x9a, 0xb7, 0x41, 0xca, 0x36, 0x29, 0x7b, 0xf6, 0xde, 0x3c, 0x34, 0xa5, 0xaf, 0xbb, 0xad, 0x37, 0x18, 0x06, 0xb8, 0x91, 0xf2, 0x4b, 0x08, 0x8b, 0xc5, 0xd1, 0x46, 0x46, 0xa7, 0x4f, 0x3e, 0xfc, 0xfe, 0xa3, 0x9e, 0x12, 0xe2, 0xb5, 0xf5, 0x6e, 0xbb, 0xdd, 0x50, 0x3d, 0x5e, 0x8f, 0xee, 0x3f, 0xc3, 0x00, 0xd7, 0x50, 0x9b, 0xaa, 0x22, 0xb6, 0x68, 0xdb, 0xf1, 0xfd, 0x24, 0x18, 0x07, 0x0a, 0xb4, 0x0a, 0x07, 0xd9, 0xf6, }; static const unsigned char ecdh_secp384r1_5674_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5674 = { .name = "ecdh_secp384r1_5674", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5674_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5674_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5674_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 394 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5675 for ECDH, tcId is 395 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5675_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_secp384r1_5675_ourpubkey[] = { 0x65, 0xce, 0x6b, 0x9d, 0x7e, 0x71, 0xe9, 0x31, 0xb6, 0xfd, 0x1f, 0xac, 0x91, 0x05, 0x07, 0xb4, 0x37, 0x7a, 0xc1, 0x5e, 0x45, 0x32, 0x92, 0xa2, 0x35, 0x5d, 0xf3, 0x9a, 0xb7, 0x41, 0xca, 0x36, 0x29, 0x7b, 0xf6, 0xde, 0x3c, 0x34, 0xa5, 0xaf, 0xbb, 0xad, 0x37, 0x18, 0x06, 0xb8, 0x91, 0xf2, 0x4b, 0x08, 0x8b, 0xc5, 0xd1, 0x46, 0x46, 0xa7, 0x4f, 0x3e, 0xfc, 0xfe, 0xa3, 0x9e, 0x12, 0xe2, 0xb5, 0xf5, 0x6e, 0xbb, 0xdd, 0x50, 0x3d, 0x5e, 0x8f, 0xee, 0x3f, 0xc3, 0x00, 0xd7, 0x50, 0x9b, 0xaa, 0x22, 0xb6, 0x68, 0xdb, 0xf1, 0xfd, 0x24, 0x18, 0x07, 0x0a, 0xb4, 0x0a, 0x07, 0xd9, 0xf6, }; static const unsigned char ecdh_secp384r1_5675_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5675 = { .name = "ecdh_secp384r1_5675", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5675_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5675_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5675_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 395 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5676 for ECDH, tcId is 396 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5676_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_secp384r1_5676_ourpubkey[] = { 0x65, 0xce, 0x6b, 0x9d, 0x7e, 0x71, 0xe9, 0x31, 0xb6, 0xfd, 0x1f, 0xac, 0x91, 0x05, 0x07, 0xb4, 0x37, 0x7a, 0xc1, 0x5e, 0x45, 0x32, 0x92, 0xa2, 0x35, 0x5d, 0xf3, 0x9a, 0xb7, 0x41, 0xca, 0x36, 0x29, 0x7b, 0xf6, 0xde, 0x3c, 0x34, 0xa5, 0xaf, 0xbb, 0xad, 0x37, 0x18, 0x06, 0xb8, 0x91, 0xf2, 0x4b, 0x08, 0x8b, 0xc5, 0xd1, 0x46, 0x46, 0xa7, 0x4f, 0x3e, 0xfc, 0xfe, 0xa3, 0x9e, 0x12, 0xe2, 0xb5, 0xf5, 0x6e, 0xbb, 0xdd, 0x50, 0x3d, 0x5e, 0x8f, 0xee, 0x3f, 0xc3, 0x00, 0xd7, 0x50, 0x9b, 0xaa, 0x22, 0xb6, 0x68, 0xdb, 0xf1, 0xfd, 0x24, 0x18, 0x07, 0x0a, 0xb4, 0x0a, 0x07, 0xd9, 0xf6, }; static const unsigned char ecdh_secp384r1_5676_privkey[] = { 0xde, 0x44, 0xe6, 0x3f, 0xd9, 0x24, 0xf1, 0x77, 0x34, 0x0d, 0x78, 0x0a, 0xf6, 0xaa, 0xae, 0xa2, 0x71, 0xf5, 0x2d, 0x2c, 0xb9, 0xa5, 0xc5, 0x19, 0xb6, 0x02, 0x0e, 0x06, 0xc3, 0xcf, 0x0b, 0xaa, 0xfb, 0xc0, 0xb8, 0x01, 0xc6, 0x50, 0x8c, 0x2e, 0x14, 0x83, 0xb1, 0x5c, 0xfe, 0xf7, 0xaf, 0xc2, }; static const wycheproof_ecdh_test ecdh_secp384r1_5676 = { .name = "ecdh_secp384r1_5676", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5676_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5676_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5676_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 396 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5677 for ECDH, tcId is 397 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5677_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f, 0xa4, 0xfa, 0x0b, 0x23, 0x5c, 0x21, 0xe5, 0xc9, 0xf3, 0xba, 0xea, 0x93, 0x03, 0xbf, 0x86, 0xec, 0xcb, 0x7d, 0x31, 0xd0, 0xb9, 0x98, 0xe1, 0x41, 0xbc, 0x54, 0xb5, 0xdc, 0x43, 0xb2, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xef, 0x7f, 0xc5, 0xcf, 0x56, 0x30, 0x8e, 0xd5, 0x95, 0xee, 0xe9, 0x9a, 0xde, 0x6a, 0xaf, 0x74, 0xd5, 0x91, 0xc3, 0xd0, 0x0a, 0xa1, 0xb4, 0x38, 0xab, 0xc5, 0x9c, 0x96, 0x07, 0xc2, 0x2c, 0x36, }; static const unsigned char ecdh_secp384r1_5677_ourpubkey[] = { 0x2d, 0xff, 0x77, 0x3a, 0x88, 0x32, 0x9e, 0x60, 0xd4, 0xa0, 0x6b, 0xf3, 0x26, 0xb4, 0x13, 0x83, 0xa4, 0x52, 0xb1, 0x3b, 0x8c, 0x80, 0x74, 0x5e, 0xc7, 0x01, 0xb9, 0xc4, 0x7e, 0x11, 0x4e, 0x16, 0x11, 0x53, 0x80, 0x26, 0x59, 0xc5, 0x72, 0x84, 0x0b, 0x56, 0xf7, 0xaa, 0x77, 0xe4, 0x5c, 0x16, 0x2c, 0xe6, 0xe8, 0xfa, 0x19, 0x44, 0xaf, 0xcc, 0x45, 0x5a, 0x11, 0x7f, 0x21, 0xde, 0x91, 0xcf, 0x7b, 0x0f, 0x3d, 0x4e, 0x83, 0xa1, 0x3c, 0xe2, 0xaa, 0xa5, 0xe5, 0xb0, 0xb9, 0xef, 0x43, 0x32, 0x2a, 0x84, 0xde, 0xb3, 0x11, 0x7c, 0xb7, 0x78, 0x4a, 0x86, 0xd8, 0xa1, 0x86, 0xbc, 0xb1, 0x5b, }; static const unsigned char ecdh_secp384r1_5677_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_5677 = { .name = "ecdh_secp384r1_5677", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5677_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5677_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5677_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 397 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5678 for ECDH, tcId is 398 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5678_peerpubkey[] = { 0x00, 0x5b, 0xce, 0x61, 0xfe, 0x27, 0xc4, 0x40, 0xfe, 0xdb, 0xad, 0x47, 0xd8, 0x8b, 0xcc, 0xf6, 0x45, 0xdb, 0x9c, 0x1d, 0x30, 0xda, 0xa0, 0x86, 0xe5, 0x92, 0xe8, 0xb6, 0xa0, 0xa1, 0x73, 0xb8, 0x79, 0x91, 0xb6, 0x19, 0x80, 0x19, 0x07, 0xb4, 0x20, 0xfa, 0x55, 0x8c, 0x79, 0x53, 0xab, 0x97, 0xba, 0xdd, 0x9c, 0x6c, 0x1d, 0x85, 0x85, 0x9d, 0x9e, 0xbe, 0xf7, 0x44, 0x1a, 0x08, 0x8f, 0xf5, 0x7e, 0xd5, 0x00, 0x8d, 0x76, 0x38, 0xde, 0x70, 0x3f, 0xaa, 0xbe, 0xb5, 0xa7, 0x8e, 0x83, 0xe8, 0xfc, 0xd4, 0xeb, 0x78, 0x61, 0x44, 0xa7, 0x5d, 0x79, 0xbd, 0x4c, 0xc8, 0xcf, 0xa8, 0xbe, 0x66, 0x61, 0x2d, 0x75, 0x6c, 0x7b, 0x65, 0xc6, 0x7f, 0x72, 0xc6, 0xac, 0xba, 0xde, 0x6f, 0x0d, 0x59, 0xe9, 0x75, 0x2e, 0x84, 0x52, 0x05, 0xb2, 0xa5, 0x60, 0xd4, 0xf8, 0xd6, 0xa9, 0xe8, 0x4b, 0xf8, 0x12, 0xf9, 0x4d, 0x18, }; static const unsigned char ecdh_secp384r1_5678_ourpubkey[] = { 0x2d, 0xff, 0x77, 0x3a, 0x88, 0x32, 0x9e, 0x60, 0xd4, 0xa0, 0x6b, 0xf3, 0x26, 0xb4, 0x13, 0x83, 0xa4, 0x52, 0xb1, 0x3b, 0x8c, 0x80, 0x74, 0x5e, 0xc7, 0x01, 0xb9, 0xc4, 0x7e, 0x11, 0x4e, 0x16, 0x11, 0x53, 0x80, 0x26, 0x59, 0xc5, 0x72, 0x84, 0x0b, 0x56, 0xf7, 0xaa, 0x77, 0xe4, 0x5c, 0x16, 0x2c, 0xe6, 0xe8, 0xfa, 0x19, 0x44, 0xaf, 0xcc, 0x45, 0x5a, 0x11, 0x7f, 0x21, 0xde, 0x91, 0xcf, 0x7b, 0x0f, 0x3d, 0x4e, 0x83, 0xa1, 0x3c, 0xe2, 0xaa, 0xa5, 0xe5, 0xb0, 0xb9, 0xef, 0x43, 0x32, 0x2a, 0x84, 0xde, 0xb3, 0x11, 0x7c, 0xb7, 0x78, 0x4a, 0x86, 0xd8, 0xa1, 0x86, 0xbc, 0xb1, 0x5b, }; static const unsigned char ecdh_secp384r1_5678_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_5678 = { .name = "ecdh_secp384r1_5678", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5678_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp384r1_5678_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5678_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp521r1, tcId is 398 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5679 for ECDH, tcId is 399 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) static const unsigned char ecdh_secp384r1_5679_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa6, 0x9c, 0xed, 0x11, 0xa8, 0xbf, 0x7a, 0x90, 0x7b, 0xfa, 0x47, 0xcb, 0xa3, 0x36, 0x8f, 0x24, 0x98, 0xb4, 0x65, 0xa2, 0x40, 0x7c, 0x90, 0x64, 0x9c, 0x8d, 0xa2, 0x24, 0xd2, 0xa8, 0x5b, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0xad, 0x2d, 0xf3, 0xd0, 0x11, 0x3e, 0x72, 0xae, 0xdc, 0xcf, 0x92, 0xba, 0x6b, 0x85, 0x29, 0xed, 0x6f, 0xaa, 0x15, 0x4b, 0xc2, 0x7a, 0xba, 0x25, 0xf4, 0x93, 0x71, 0x98, 0x1e, 0x3b, 0x38, }; static const unsigned char ecdh_secp384r1_5679_ourpubkey[] = { 0x2d, 0xff, 0x77, 0x3a, 0x88, 0x32, 0x9e, 0x60, 0xd4, 0xa0, 0x6b, 0xf3, 0x26, 0xb4, 0x13, 0x83, 0xa4, 0x52, 0xb1, 0x3b, 0x8c, 0x80, 0x74, 0x5e, 0xc7, 0x01, 0xb9, 0xc4, 0x7e, 0x11, 0x4e, 0x16, 0x11, 0x53, 0x80, 0x26, 0x59, 0xc5, 0x72, 0x84, 0x0b, 0x56, 0xf7, 0xaa, 0x77, 0xe4, 0x5c, 0x16, 0x2c, 0xe6, 0xe8, 0xfa, 0x19, 0x44, 0xaf, 0xcc, 0x45, 0x5a, 0x11, 0x7f, 0x21, 0xde, 0x91, 0xcf, 0x7b, 0x0f, 0x3d, 0x4e, 0x83, 0xa1, 0x3c, 0xe2, 0xaa, 0xa5, 0xe5, 0xb0, 0xb9, 0xef, 0x43, 0x32, 0x2a, 0x84, 0xde, 0xb3, 0x11, 0x7c, 0xb7, 0x78, 0x4a, 0x86, 0xd8, 0xa1, 0x86, 0xbc, 0xb1, 0x5b, }; static const unsigned char ecdh_secp384r1_5679_privkey[] = { 0xd6, 0x33, 0x1a, 0x5a, 0x96, 0x8e, 0x4d, 0x3b, 0xd7, 0x33, 0x6a, 0x42, 0x3b, 0x41, 0x05, 0x5b, 0x68, 0xed, 0xd1, 0x00, 0xb8, 0xb9, 0x98, 0xd0, 0x0e, 0xb9, 0xed, 0x93, 0x88, 0x1c, 0x21, 0xe3, 0x91, 0x2b, 0xb2, 0xee, 0x08, 0xe7, 0x13, 0x27, 0xbe, 0x20, 0x58, 0x98, 0x67, 0x5e, 0xf7, 0xa4, }; static const wycheproof_ecdh_test ecdh_secp384r1_5679 = { .name = "ecdh_secp384r1_5679", .ecdh_alg = ECCCDH, .curve = &secp384r1_str_params, .peerpubkey = ecdh_secp384r1_5679_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp384r1_5679_ourpubkey, .ourpubkeylen = 96, .privkey = ecdh_secp384r1_5679_privkey, .privkeylen = 48, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 399 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) */ /* Test 5680 for ECDH, tcId is 400 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5680_peerpubkey[] = { 0x00, 0x64, 0xda, 0x3e, 0x94, 0x73, 0x3d, 0xb5, 0x36, 0xa7, 0x4a, 0x0d, 0x8a, 0x5c, 0xb2, 0x26, 0x5a, 0x31, 0xc5, 0x4a, 0x1d, 0xa6, 0x52, 0x9a, 0x19, 0x83, 0x77, 0xfb, 0xd3, 0x85, 0x75, 0xd9, 0xd7, 0x97, 0x69, 0xca, 0x2b, 0xdf, 0x2d, 0x4c, 0x97, 0x26, 0x42, 0x92, 0x6d, 0x44, 0x48, 0x91, 0xa6, 0x52, 0xe7, 0xf4, 0x92, 0x33, 0x72, 0x51, 0xad, 0xf1, 0x61, 0x3c, 0xf3, 0x07, 0x79, 0x99, 0xb5, 0xce, 0x00, 0xe0, 0x4a, 0xd1, 0x9c, 0xf9, 0xfd, 0x47, 0x22, 0xb0, 0xc8, 0x24, 0xc0, 0x69, 0xf7, 0x0c, 0x3c, 0x0e, 0x7e, 0xbc, 0x52, 0x88, 0x94, 0x0d, 0xfa, 0x92, 0x42, 0x21, 0x52, 0xae, 0x4a, 0x4f, 0x79, 0x18, 0x3c, 0xed, 0x37, 0x5a, 0xfb, 0x54, 0xdb, 0x14, 0x09, 0xdd, 0xf3, 0x38, 0xb8, 0x5b, 0xb6, 0xdb, 0xfc, 0x59, 0x50, 0x16, 0x33, 0x46, 0xbb, 0x63, 0xa9, 0x0a, 0x70, 0xc5, 0xab, 0xa0, 0x98, 0xf7, }; static const unsigned char ecdh_secp521r1_5680_ourpubkey[] = { 0x01, 0xfa, 0xc8, 0x4b, 0x38, 0xd7, 0x32, 0xda, 0xcc, 0xfc, 0xef, 0xaa, 0xd9, 0xa1, 0x78, 0xe3, 0xd0, 0x4f, 0x2c, 0x30, 0xe1, 0x9c, 0x49, 0x25, 0xd1, 0x12, 0xe8, 0x82, 0x35, 0xc1, 0x0c, 0x08, 0x80, 0x36, 0xd4, 0xd1, 0xea, 0x25, 0x28, 0xf5, 0xe0, 0x20, 0x03, 0xda, 0x70, 0x35, 0x33, 0x17, 0x04, 0x89, 0xc6, 0x57, 0x6d, 0x6e, 0x1e, 0x4d, 0x0f, 0xc7, 0x3e, 0xec, 0x12, 0x6c, 0xa5, 0x5a, 0xcd, 0x84, 0x00, 0x09, 0x04, 0xb6, 0x19, 0x9d, 0x2f, 0x6e, 0x89, 0x0a, 0x65, 0x4b, 0xe2, 0x0c, 0x9e, 0x65, 0xa4, 0x0a, 0xd1, 0x20, 0x15, 0x70, 0x43, 0x88, 0x18, 0x22, 0xfc, 0x52, 0xdf, 0x41, 0x20, 0xe4, 0x56, 0x3a, 0x7c, 0xd5, 0x90, 0x5c, 0x01, 0x67, 0x8d, 0x65, 0xe8, 0x45, 0xea, 0xe9, 0xc6, 0x53, 0xe3, 0x03, 0xf7, 0x9c, 0x52, 0x39, 0x10, 0x55, 0x1d, 0x21, 0x2f, 0xbd, 0x7c, 0x25, 0xe2, 0xd1, 0x34, 0x49, }; static const unsigned char ecdh_secp521r1_5680_privkey[] = { 0x01, 0x93, 0x99, 0x82, 0xb5, 0x29, 0x59, 0x6c, 0xe7, 0x7a, 0x94, 0xbc, 0x6e, 0xfd, 0x03, 0xe9, 0x2c, 0x21, 0xa8, 0x49, 0xeb, 0x4f, 0x87, 0xb8, 0xf6, 0x19, 0xd5, 0x06, 0xef, 0xc9, 0xbb, 0x22, 0xe7, 0xc6, 0x16, 0x40, 0xc9, 0x0d, 0x59, 0x8f, 0x79, 0x5b, 0x64, 0x56, 0x6d, 0xc6, 0xdf, 0x43, 0x99, 0x2a, 0xe3, 0x4a, 0x13, 0x41, 0xd4, 0x58, 0x57, 0x44, 0x40, 0xa7, 0x37, 0x1f, 0x61, 0x1c, 0x7d, 0xcd, }; static const unsigned char ecdh_secp521r1_5680_sharedsecret[] = { 0x01, 0xf1, 0xe4, 0x10, 0xf2, 0xc6, 0x26, 0x2b, 0xce, 0x68, 0x79, 0xa3, 0xf4, 0x6d, 0xfb, 0x7d, 0xd1, 0x1d, 0x30, 0xee, 0xee, 0x9a, 0xb4, 0x98, 0x52, 0x10, 0x2e, 0x18, 0x92, 0x20, 0x1d, 0xd1, 0x0f, 0x27, 0x26, 0x6c, 0x2c, 0xf7, 0xcb, 0xcc, 0xc7, 0xf6, 0x88, 0x50, 0x99, 0x04, 0x3d, 0xad, 0x80, 0xff, 0x57, 0xf0, 0xdf, 0x96, 0xac, 0xf2, 0x83, 0xfb, 0x09, 0x0d, 0xe5, 0x3d, 0xf9, 0x5f, 0x7d, 0x87, }; static const wycheproof_ecdh_test ecdh_secp521r1_5680 = { .name = "ecdh_secp521r1_5680", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5680_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5680_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5680_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5680_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "normal case, tcId is 400 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5681 for ECDH, tcId is 401 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5681_peerpubkey[] = { 0x01, 0x4c, 0x64, 0x33, 0x29, 0x69, 0x1b, 0xa2, 0x74, 0x59, 0xa4, 0x0d, 0xfe, 0x7c, 0x4c, 0xe1, 0x7b, 0x3e, 0xa1, 0x4d, 0x0c, 0xd7, 0xaa, 0x47, 0xb0, 0x1f, 0x13, 0x15, 0x40, 0x4d, 0xb5, 0x14, 0x36, 0xfb, 0xbf, 0xe6, 0xde, 0x08, 0x42, 0xe0, 0xf7, 0xe1, 0x26, 0x5f, 0x6f, 0xf3, 0xac, 0xa2, 0x87, 0x50, 0x67, 0x7d, 0x33, 0x70, 0xb2, 0xfb, 0x2a, 0x6e, 0xf4, 0x97, 0x35, 0x6f, 0x4b, 0x95, 0x81, 0x12, 0x01, 0x05, 0x1b, 0x14, 0x17, 0x86, 0x39, 0xa0, 0x9a, 0x41, 0x46, 0x5c, 0x72, 0xd3, 0x74, 0x34, 0x36, 0xee, 0x1c, 0x19, 0x1f, 0xf7, 0x38, 0x8a, 0x40, 0x14, 0x0b, 0x34, 0xd5, 0x31, 0x7d, 0xe5, 0x91, 0x1e, 0xa0, 0x3c, 0xdb, 0xb0, 0x32, 0x9f, 0xde, 0xb4, 0x46, 0x69, 0x5a, 0x3b, 0x92, 0xd4, 0x37, 0x27, 0x1a, 0x9f, 0x3c, 0x31, 0x8b, 0x02, 0xde, 0xc4, 0xd4, 0x73, 0x90, 0x81, 0x58, 0x14, 0x0e, 0x97, }; static const unsigned char ecdh_secp521r1_5681_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5681_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5681_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5681 = { .name = "ecdh_secp521r1_5681", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5681_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5681_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5681_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5681_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 401 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5682 for ECDH, tcId is 402 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5682_peerpubkey[] = { 0x00, 0x29, 0xcd, 0x32, 0x12, 0x5c, 0x23, 0xa4, 0x1a, 0xf2, 0x4f, 0xd4, 0xb7, 0x29, 0xda, 0x0f, 0xaa, 0xcb, 0xc3, 0x55, 0x16, 0xef, 0x0b, 0xa5, 0x90, 0x96, 0x60, 0x25, 0x71, 0x69, 0x3c, 0xd2, 0x82, 0xe2, 0x6d, 0x67, 0xe1, 0x8e, 0xf4, 0x64, 0x3d, 0x0f, 0x6f, 0x15, 0x8d, 0x73, 0x70, 0xd3, 0x39, 0x4c, 0xa9, 0xa8, 0xde, 0x79, 0x38, 0x03, 0x2a, 0xc1, 0x78, 0xc6, 0xfd, 0x34, 0xe3, 0x70, 0x2b, 0x8d, 0x00, 0x86, 0x49, 0x83, 0x4e, 0x2b, 0x41, 0xbe, 0x3a, 0x8b, 0x75, 0x10, 0xbf, 0xe5, 0x70, 0xf4, 0xc6, 0x70, 0x75, 0x94, 0x3c, 0xd0, 0xcb, 0xb9, 0xd9, 0xe1, 0xd1, 0xda, 0x52, 0x61, 0x8b, 0x5b, 0x96, 0xd6, 0xae, 0xc9, 0xb6, 0x50, 0xda, 0xf1, 0xca, 0x66, 0x24, 0xc1, 0x3e, 0x51, 0x16, 0x30, 0x2b, 0x9c, 0x79, 0xc8, 0xc4, 0xd3, 0xd3, 0x51, 0x91, 0x5d, 0x1e, 0x8e, 0x1a, 0xb6, 0xad, 0x76, 0x09, 0x8e, }; static const unsigned char ecdh_secp521r1_5682_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5682_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5682_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_5682 = { .name = "ecdh_secp521r1_5682", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5682_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5682_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5682_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5682_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 402 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5683 for ECDH, tcId is 403 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5683_peerpubkey[] = { 0x00, 0x32, 0xc6, 0xf0, 0x6c, 0xe6, 0xa1, 0x5e, 0xa0, 0x64, 0x46, 0x4d, 0x35, 0xaa, 0x36, 0x8d, 0x29, 0x9c, 0x9a, 0x9e, 0x1e, 0x36, 0x8f, 0x69, 0x4a, 0xef, 0xb6, 0x03, 0x87, 0x62, 0x48, 0xf8, 0x98, 0xf2, 0x23, 0xce, 0x02, 0x17, 0xbe, 0xf3, 0x7d, 0x61, 0xeb, 0x09, 0xb2, 0x7c, 0x93, 0x18, 0x7c, 0xf8, 0xe6, 0x1b, 0xa7, 0xb1, 0x4e, 0x3c, 0x9b, 0xee, 0x69, 0x2b, 0x06, 0xac, 0x6d, 0x95, 0xf8, 0x36, 0x01, 0x9f, 0xd1, 0x9f, 0x84, 0x80, 0xe2, 0x1c, 0x63, 0x21, 0x1d, 0x48, 0xd4, 0x5f, 0x96, 0xf6, 0x36, 0x5c, 0xf5, 0x5f, 0x95, 0x8e, 0x1a, 0x0f, 0xe7, 0xea, 0x6b, 0x6b, 0x9f, 0xf2, 0x30, 0xa8, 0x7b, 0x70, 0xbb, 0x1b, 0x14, 0xd3, 0xa5, 0xfb, 0x66, 0x69, 0xa9, 0x16, 0x41, 0xc6, 0xac, 0xf4, 0x57, 0x0c, 0x1d, 0x3a, 0x9e, 0x70, 0x99, 0x13, 0xb7, 0xfe, 0x6b, 0x35, 0xff, 0x81, 0xc3, 0x94, 0xd6, 0xa7, }; static const unsigned char ecdh_secp521r1_5683_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5683_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5683_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_5683 = { .name = "ecdh_secp521r1_5683", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5683_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5683_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5683_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5683_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 403 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5684 for ECDH, tcId is 404 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5684_peerpubkey[] = { 0x01, 0xf7, 0xeb, 0x96, 0xe6, 0x4b, 0x1a, 0x62, 0xda, 0xf9, 0xe0, 0x80, 0x1b, 0xfd, 0x96, 0xa0, 0xb1, 0x5b, 0x68, 0xe5, 0xf5, 0xcb, 0x3e, 0x90, 0xb4, 0x34, 0x49, 0x5a, 0x47, 0x39, 0x07, 0x33, 0x8e, 0x53, 0x09, 0x8e, 0x1c, 0x2e, 0x49, 0x33, 0x35, 0xd0, 0x9c, 0x6a, 0xae, 0x6f, 0xdd, 0xa0, 0x34, 0x5b, 0x98, 0xaa, 0xed, 0x58, 0x8f, 0x2a, 0xbe, 0x82, 0x91, 0x07, 0x13, 0xfb, 0x6c, 0x20, 0x25, 0x29, 0x01, 0x39, 0x6b, 0x17, 0xcf, 0x25, 0x0b, 0xc0, 0x18, 0xf4, 0xce, 0xad, 0x09, 0x7e, 0x7e, 0x09, 0x86, 0x3f, 0x14, 0xcf, 0x12, 0x39, 0xb0, 0x65, 0xe5, 0x7d, 0x88, 0x49, 0x49, 0xee, 0xe1, 0x41, 0x92, 0x6f, 0x7e, 0x7c, 0x9f, 0x7f, 0x34, 0xcf, 0x05, 0x36, 0x36, 0x87, 0x67, 0xbc, 0x0e, 0x1a, 0xb5, 0x14, 0x28, 0x77, 0x29, 0x3a, 0x4c, 0x72, 0x26, 0x93, 0xa7, 0x3f, 0xe1, 0x4a, 0x53, 0x90, 0xaf, 0x93, }; static const unsigned char ecdh_secp521r1_5684_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5684_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5684_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5684 = { .name = "ecdh_secp521r1_5684", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5684_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5684_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5684_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5684_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 404 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5685 for ECDH, tcId is 405 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5685_peerpubkey[] = { 0x00, 0x6d, 0xdf, 0x9b, 0x10, 0x96, 0x5d, 0x5f, 0xc1, 0x29, 0xe9, 0x6f, 0x7a, 0x37, 0x66, 0x7c, 0xcf, 0x66, 0xcc, 0x44, 0x38, 0x47, 0x72, 0x90, 0x6f, 0xed, 0xb2, 0x1f, 0x9d, 0xe4, 0x62, 0x9e, 0x01, 0xaa, 0xa0, 0x9a, 0xc7, 0xc9, 0x86, 0x61, 0x12, 0x06, 0x4b, 0xbc, 0x9b, 0xd5, 0x8e, 0xbc, 0x12, 0x3a, 0xb2, 0xfe, 0x19, 0xd8, 0xfe, 0xd1, 0xa0, 0x56, 0xd2, 0x7b, 0xfe, 0xf0, 0x63, 0x05, 0x09, 0xc7, 0x00, 0x1c, 0x44, 0x13, 0x11, 0xef, 0x20, 0xa1, 0x63, 0x46, 0x33, 0x2e, 0xa4, 0x2d, 0x5c, 0x65, 0x78, 0x8d, 0x68, 0xf6, 0x81, 0x7b, 0x02, 0x67, 0xfc, 0xab, 0x11, 0xea, 0x9c, 0x94, 0x8e, 0xd1, 0x08, 0x11, 0x5d, 0xda, 0x8e, 0x82, 0x3a, 0x38, 0x0b, 0x60, 0x14, 0x60, 0x74, 0x2d, 0x37, 0x72, 0xd6, 0x42, 0x4c, 0x67, 0xb2, 0x40, 0xda, 0x24, 0x77, 0x2f, 0xf0, 0xd2, 0xcc, 0xd9, 0xa1, 0xe0, 0xce, 0xa6, }; static const unsigned char ecdh_secp521r1_5685_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5685_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5685_sharedsecret[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5685 = { .name = "ecdh_secp521r1_5685", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5685_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5685_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5685_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5685_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 405 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5686 for ECDH, tcId is 406 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5686_peerpubkey[] = { 0x00, 0x7a, 0x8c, 0x54, 0x72, 0x68, 0xc9, 0x48, 0xb6, 0x26, 0xda, 0x63, 0x6c, 0xf5, 0x44, 0x28, 0xea, 0x2a, 0xb2, 0x38, 0x61, 0xd4, 0x99, 0xa8, 0x4a, 0xd7, 0xbe, 0x1c, 0xf6, 0x91, 0xb9, 0x28, 0x72, 0xa0, 0x6e, 0x26, 0xc6, 0xdb, 0xa0, 0x8c, 0xa9, 0xed, 0x38, 0x6f, 0x83, 0xd3, 0x96, 0x15, 0x6d, 0x5f, 0xa0, 0x23, 0xf5, 0x7d, 0x5e, 0xa6, 0x44, 0x0e, 0xc7, 0x40, 0x1d, 0xad, 0x2c, 0x08, 0xad, 0x70, 0x01, 0x8c, 0x38, 0x15, 0xb1, 0xb9, 0xa2, 0xe4, 0x25, 0x55, 0x41, 0x9a, 0x6c, 0x19, 0x04, 0x3f, 0xa2, 0xb0, 0xdd, 0xcc, 0x4b, 0x5a, 0x6e, 0x37, 0x2f, 0xee, 0x9f, 0xcb, 0x22, 0x7d, 0x85, 0xba, 0xd7, 0x04, 0x68, 0x7e, 0x7e, 0x1a, 0x81, 0x8b, 0x61, 0x2d, 0x5c, 0x04, 0x6c, 0xd7, 0x59, 0x72, 0xf7, 0xa2, 0xdd, 0x5c, 0x9a, 0x20, 0x0a, 0xc5, 0x58, 0x2c, 0xd5, 0x9f, 0xec, 0x47, 0xac, 0x52, 0x5e, 0xcf, }; static const unsigned char ecdh_secp521r1_5686_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5686_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5686_sharedsecret[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5686 = { .name = "ecdh_secp521r1_5686", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5686_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5686_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5686_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5686_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 406 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5687 for ECDH, tcId is 407 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5687_peerpubkey[] = { 0x00, 0x29, 0x15, 0x3c, 0xf0, 0x62, 0xf8, 0x8f, 0x30, 0x3e, 0x5d, 0x6f, 0x9a, 0xac, 0x96, 0x8b, 0xd9, 0x01, 0x07, 0x6d, 0x59, 0x94, 0xea, 0x7f, 0x83, 0x18, 0x33, 0xb1, 0xe6, 0x9b, 0x67, 0xe9, 0xe9, 0xfe, 0x20, 0xcf, 0x9c, 0x56, 0x23, 0xe0, 0x0e, 0x0b, 0x9e, 0x35, 0x92, 0xfc, 0xa2, 0xa0, 0x33, 0x24, 0xb5, 0xdf, 0x7c, 0x93, 0x18, 0x6a, 0xff, 0x69, 0x7a, 0xca, 0x86, 0x46, 0x00, 0xd4, 0x4e, 0xcc, 0x00, 0x28, 0x01, 0xa6, 0x2e, 0x2f, 0x41, 0x06, 0xf3, 0x41, 0x06, 0xda, 0x23, 0xdc, 0x93, 0xd5, 0x0e, 0x3e, 0x97, 0x5a, 0x1d, 0x47, 0x51, 0x00, 0x21, 0x83, 0x52, 0x90, 0x64, 0x9b, 0x7a, 0x41, 0x25, 0x10, 0x9f, 0x65, 0x6b, 0x6b, 0x0b, 0x5b, 0xd0, 0x0b, 0x24, 0xd8, 0x4e, 0xa1, 0xba, 0x4e, 0x1e, 0xd4, 0x9e, 0x61, 0xc5, 0x26, 0xfb, 0x10, 0x11, 0x00, 0x51, 0x31, 0xca, 0xee, 0x7e, 0xe0, 0x50, 0x1e, }; static const unsigned char ecdh_secp521r1_5687_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5687_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5687_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5687 = { .name = "ecdh_secp521r1_5687", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5687_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5687_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5687_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5687_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 407 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5688 for ECDH, tcId is 408 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5688_peerpubkey[] = { 0x00, 0xa6, 0x1e, 0xb9, 0x94, 0xe2, 0x87, 0x22, 0xc5, 0x9b, 0x3c, 0x60, 0x07, 0xdf, 0xdf, 0x8b, 0x37, 0x89, 0x3f, 0x63, 0x50, 0xf4, 0x61, 0xb2, 0x6a, 0x00, 0xe1, 0xa4, 0x51, 0x04, 0x31, 0x4a, 0xae, 0x99, 0x89, 0xda, 0x87, 0xe4, 0xfa, 0xcb, 0x2c, 0x4e, 0xf7, 0x21, 0x18, 0x5b, 0x7d, 0x96, 0xd9, 0xa4, 0x5a, 0x28, 0xa1, 0x02, 0x75, 0x65, 0x01, 0xa1, 0xac, 0xc5, 0xd3, 0x29, 0xa2, 0x1b, 0xbf, 0x73, 0x01, 0x0e, 0x8d, 0x0e, 0x12, 0xf5, 0xa9, 0xa4, 0x0e, 0x0d, 0x59, 0xc9, 0x0c, 0xe7, 0x30, 0x43, 0xd3, 0x97, 0x30, 0xae, 0xad, 0xd3, 0x78, 0x8e, 0x31, 0xd7, 0xc2, 0xbb, 0x62, 0xa1, 0x16, 0x61, 0x61, 0x99, 0x46, 0x64, 0xaf, 0xa6, 0x58, 0xce, 0x2e, 0x60, 0xa1, 0x3f, 0x45, 0xf2, 0x7f, 0x91, 0x43, 0x07, 0xc8, 0xd6, 0xf8, 0xd4, 0xed, 0x16, 0xab, 0x04, 0x1b, 0x8f, 0x69, 0x90, 0x8a, 0x62, 0x78, 0x2f, }; static const unsigned char ecdh_secp521r1_5688_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5688_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5688_sharedsecret[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5688 = { .name = "ecdh_secp521r1_5688", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5688_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5688_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5688_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5688_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 408 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5689 for ECDH, tcId is 409 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5689_peerpubkey[] = { 0x01, 0x1d, 0xd4, 0x97, 0xb3, 0x0c, 0x73, 0x70, 0x99, 0x06, 0xb1, 0x64, 0xa9, 0xa7, 0x9d, 0xc7, 0xf2, 0xa9, 0x8c, 0x01, 0x48, 0xed, 0x63, 0x01, 0x6b, 0xb9, 0x52, 0x43, 0x83, 0x4f, 0xbc, 0xdf, 0x8e, 0xb7, 0x4b, 0x0f, 0xf6, 0x52, 0xd5, 0x4f, 0x59, 0xf3, 0x1a, 0xef, 0x51, 0xda, 0x6e, 0x89, 0x74, 0xd3, 0x63, 0x65, 0x5b, 0x1d, 0xa1, 0x38, 0xdc, 0x4d, 0xe0, 0xf2, 0xa8, 0xd8, 0x00, 0xf4, 0x75, 0xae, 0x00, 0x57, 0xbd, 0x4b, 0x84, 0x60, 0x74, 0x00, 0xd8, 0x63, 0xff, 0xbf, 0x45, 0xa3, 0xcf, 0x58, 0x99, 0x9e, 0xe2, 0x4b, 0xa0, 0x5e, 0x93, 0xec, 0xa7, 0xb0, 0xe4, 0xae, 0x76, 0x0e, 0xb1, 0x73, 0x35, 0x59, 0xa4, 0x5d, 0x15, 0x57, 0x9d, 0x33, 0x70, 0xd7, 0x16, 0xff, 0xa3, 0xec, 0x4b, 0xfd, 0xae, 0x41, 0x8e, 0x32, 0xfb, 0x06, 0x13, 0x8d, 0xfc, 0xa2, 0x13, 0x72, 0x0a, 0x93, 0x85, 0x77, 0x61, 0x0e, }; static const unsigned char ecdh_secp521r1_5689_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5689_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5689_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5689 = { .name = "ecdh_secp521r1_5689", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5689_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5689_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5689_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5689_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 409 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5690 for ECDH, tcId is 410 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5690_peerpubkey[] = { 0x01, 0x28, 0x3e, 0xb9, 0x3f, 0xa3, 0x69, 0xfe, 0x70, 0x12, 0xb6, 0x47, 0xd2, 0x1e, 0x0a, 0x97, 0xcf, 0x99, 0x50, 0xe5, 0xfb, 0xed, 0x81, 0x9e, 0xf5, 0x61, 0x58, 0xf2, 0x0c, 0x8a, 0x94, 0x73, 0xa4, 0x18, 0xec, 0xcb, 0xca, 0x4d, 0xc2, 0xb4, 0x7f, 0x4c, 0xb6, 0xd3, 0x22, 0xf9, 0x17, 0x00, 0x58, 0x59, 0xbf, 0x22, 0x1e, 0x84, 0xac, 0x98, 0x27, 0xca, 0xb8, 0x2a, 0x80, 0x1c, 0x62, 0x7f, 0xb1, 0xec, 0x00, 0x75, 0xc4, 0x80, 0xcb, 0xaf, 0xb3, 0x52, 0xfc, 0xaf, 0x93, 0xba, 0xf2, 0x3a, 0x14, 0x05, 0xfd, 0x81, 0xfe, 0xbe, 0x09, 0x72, 0x9a, 0x90, 0x8d, 0x10, 0x77, 0xe1, 0x77, 0xdd, 0x89, 0x93, 0xd9, 0x4b, 0x25, 0x1a, 0x0d, 0x52, 0x65, 0x2d, 0xa3, 0xed, 0xb6, 0xfd, 0xf8, 0x64, 0xe8, 0x0c, 0xd5, 0x15, 0x40, 0xe7, 0x3d, 0x0b, 0x51, 0x07, 0xe3, 0x43, 0x35, 0x76, 0xdc, 0xaa, 0x4e, 0x18, 0xdb, 0x43, }; static const unsigned char ecdh_secp521r1_5690_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5690_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5690_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5690 = { .name = "ecdh_secp521r1_5690", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5690_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5690_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5690_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5690_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 410 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5691 for ECDH, tcId is 411 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5691_peerpubkey[] = { 0x00, 0x17, 0x3b, 0xee, 0xfe, 0x35, 0xee, 0x86, 0x8d, 0x49, 0x7f, 0xf6, 0x60, 0x16, 0x28, 0xf6, 0x5c, 0xe1, 0x8a, 0x15, 0x91, 0xf7, 0xe4, 0xa3, 0xa4, 0x06, 0x62, 0x2f, 0x3f, 0x50, 0x8e, 0x2d, 0xa6, 0x8f, 0x10, 0x1e, 0xd0, 0x2f, 0xeb, 0xc3, 0x84, 0x18, 0xc6, 0xdd, 0xfc, 0x26, 0xa5, 0xec, 0x98, 0x48, 0xc4, 0x27, 0x92, 0x46, 0x3b, 0x1e, 0x94, 0x5f, 0x9e, 0x16, 0x7d, 0xb3, 0x4b, 0xdf, 0x2d, 0x66, 0x00, 0x53, 0x07, 0x06, 0x47, 0xab, 0xa7, 0xcd, 0x60, 0xeb, 0x29, 0x5a, 0xb8, 0x1a, 0x26, 0x8a, 0x39, 0x03, 0xf3, 0x93, 0xc5, 0xd2, 0x8b, 0xbc, 0x5e, 0x02, 0x23, 0x51, 0xc3, 0x77, 0xcd, 0x84, 0xf0, 0x2c, 0x19, 0xde, 0xb3, 0x64, 0x42, 0x37, 0x2c, 0xae, 0x13, 0x32, 0xe9, 0x2f, 0x95, 0xba, 0x60, 0xb6, 0xc8, 0x52, 0xe0, 0xde, 0x07, 0x18, 0xe8, 0x9d, 0x24, 0xe4, 0x3c, 0xd4, 0x79, 0xc9, 0xfb, 0x11, }; static const unsigned char ecdh_secp521r1_5691_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5691_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5691_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5691 = { .name = "ecdh_secp521r1_5691", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5691_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5691_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5691_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5691_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 411 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5692 for ECDH, tcId is 412 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5692_peerpubkey[] = { 0x00, 0x98, 0x29, 0xcd, 0x54, 0x32, 0x68, 0x77, 0x39, 0xab, 0x6a, 0xe1, 0x0a, 0xf8, 0xea, 0x73, 0xd2, 0xcb, 0x53, 0xb8, 0x1e, 0xbb, 0x06, 0xb5, 0x96, 0x1b, 0x7b, 0xad, 0xc1, 0x67, 0x6b, 0x3e, 0xf7, 0xb0, 0x04, 0x54, 0xf7, 0xcd, 0xe5, 0x67, 0x74, 0xa0, 0x13, 0x12, 0xd5, 0x74, 0xa9, 0x19, 0x3c, 0x1a, 0x5f, 0xe5, 0x33, 0x6f, 0xbe, 0x62, 0x62, 0x3a, 0xd9, 0xbf, 0x81, 0x14, 0x37, 0x89, 0xf9, 0xf9, 0x00, 0x12, 0xf9, 0x55, 0x69, 0x7e, 0xd5, 0x78, 0x20, 0x71, 0x97, 0xbf, 0x9a, 0xac, 0x38, 0x96, 0x52, 0x16, 0x15, 0xdb, 0xac, 0xc8, 0xdc, 0x66, 0x5d, 0x4f, 0x17, 0x15, 0xb0, 0x84, 0x39, 0xf4, 0x9c, 0x2a, 0xa6, 0xed, 0x33, 0x70, 0x23, 0xff, 0xcc, 0xc5, 0x07, 0x5a, 0x85, 0x94, 0x49, 0x36, 0x82, 0x6d, 0xb9, 0x2f, 0x91, 0x97, 0x37, 0xca, 0x3a, 0xfe, 0xad, 0xba, 0x18, 0x47, 0x08, 0x4b, 0xde, 0xf7, }; static const unsigned char ecdh_secp521r1_5692_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5692_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5692_sharedsecret[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5692 = { .name = "ecdh_secp521r1_5692", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5692_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5692_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5692_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5692_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 412 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5693 for ECDH, tcId is 413 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5693_peerpubkey[] = { 0x01, 0x26, 0xe3, 0xc9, 0x59, 0xcd, 0x41, 0x12, 0x0b, 0xb8, 0x36, 0x93, 0xb1, 0xd6, 0xa0, 0x34, 0xb3, 0x85, 0x13, 0x7c, 0x1b, 0xb3, 0x21, 0x3b, 0x77, 0x61, 0x22, 0xfe, 0xd9, 0x60, 0x56, 0xe3, 0x29, 0x88, 0x57, 0x18, 0xa7, 0x3b, 0xee, 0x63, 0x9c, 0x0b, 0xa4, 0xb6, 0x88, 0x18, 0x68, 0x2f, 0x49, 0x8c, 0xe5, 0x49, 0x69, 0x25, 0x00, 0x2b, 0xd7, 0x65, 0x25, 0x16, 0x40, 0x5f, 0xcc, 0x4f, 0xec, 0xad, 0x00, 0x73, 0xa9, 0xc6, 0xe3, 0xb0, 0xc6, 0x94, 0xbf, 0x7c, 0xc8, 0xcc, 0xbb, 0xd0, 0x98, 0x00, 0xe8, 0x1e, 0x35, 0x48, 0xba, 0x44, 0xa0, 0xc2, 0x38, 0x1c, 0xef, 0x0b, 0x07, 0xbf, 0x70, 0x2a, 0x19, 0x05, 0x4b, 0xb5, 0xd7, 0x17, 0xa1, 0xb7, 0x92, 0x94, 0x60, 0x9c, 0xbd, 0xaf, 0xd4, 0xe2, 0x01, 0x80, 0x64, 0xf7, 0xb2, 0xc4, 0xc2, 0x04, 0xd8, 0x18, 0xeb, 0x7c, 0xe5, 0x21, 0xc3, 0x26, 0x8c, 0xe5, }; static const unsigned char ecdh_secp521r1_5693_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5693_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5693_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_5693 = { .name = "ecdh_secp521r1_5693", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5693_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5693_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5693_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5693_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 413 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5694 for ECDH, tcId is 414 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5694_peerpubkey[] = { 0x01, 0x53, 0xdc, 0x48, 0x1a, 0xb3, 0xc5, 0xdc, 0x8d, 0xec, 0xd2, 0x4c, 0xea, 0xee, 0x1b, 0xec, 0x77, 0xf5, 0x9f, 0x21, 0xf7, 0xf3, 0x1c, 0x19, 0x53, 0x8a, 0xf0, 0x47, 0xd2, 0x81, 0xac, 0x9e, 0x25, 0x67, 0x93, 0x3f, 0xd3, 0xd2, 0x10, 0x96, 0xb1, 0x85, 0xd4, 0x09, 0x89, 0x19, 0x57, 0x19, 0x31, 0xbb, 0x9b, 0x0b, 0xe7, 0x19, 0x79, 0x95, 0xe2, 0xfb, 0xaf, 0x21, 0xc8, 0xa1, 0x00, 0x07, 0xad, 0xe0, 0x01, 0xad, 0x69, 0xf0, 0x8f, 0xca, 0xe1, 0x64, 0x39, 0x0b, 0xe8, 0x26, 0x25, 0x6b, 0x50, 0xfa, 0xe4, 0x75, 0x02, 0xce, 0x0e, 0x9c, 0xa4, 0x6a, 0xf0, 0xc4, 0x90, 0xcb, 0x40, 0x33, 0xc8, 0x86, 0xf8, 0x86, 0x61, 0xa9, 0x9f, 0xf2, 0xbd, 0x3c, 0x9c, 0x8e, 0x7d, 0xa3, 0x0f, 0xaf, 0x2b, 0x4c, 0x76, 0x9e, 0xdc, 0x58, 0x31, 0x81, 0x0a, 0xc0, 0x50, 0x54, 0xc9, 0x7e, 0x41, 0x06, 0x3f, 0x49, 0x6e, 0x1f, }; static const unsigned char ecdh_secp521r1_5694_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5694_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5694_sharedsecret[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5694 = { .name = "ecdh_secp521r1_5694", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5694_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5694_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5694_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5694_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 414 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5695 for ECDH, tcId is 415 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5695_peerpubkey[] = { 0x01, 0xf5, 0x86, 0x61, 0x1c, 0x87, 0x15, 0x02, 0x88, 0xc3, 0xe8, 0x61, 0x16, 0xc5, 0xdb, 0x94, 0xa2, 0x67, 0x18, 0x97, 0x88, 0x29, 0xd7, 0x01, 0xdd, 0xac, 0x05, 0xe9, 0xb0, 0xce, 0x22, 0xde, 0xe4, 0xb1, 0x8e, 0x95, 0xf6, 0x0c, 0xba, 0x78, 0x3e, 0xd3, 0x38, 0x4d, 0xa3, 0x73, 0xde, 0xae, 0xfc, 0x57, 0xb8, 0x26, 0x5d, 0x3a, 0x34, 0xee, 0xb4, 0x58, 0xbf, 0x24, 0xb9, 0xd8, 0x2b, 0xe3, 0x28, 0x19, 0x00, 0x84, 0x56, 0xe0, 0xf1, 0xd8, 0x04, 0x92, 0xef, 0x00, 0x78, 0xcc, 0x24, 0x6d, 0x32, 0xfc, 0x7c, 0x7f, 0xb6, 0x72, 0x0b, 0x4d, 0x45, 0x8b, 0x51, 0xb2, 0x09, 0x8d, 0x35, 0x74, 0x67, 0x52, 0xb0, 0xef, 0x03, 0x45, 0xbd, 0x0d, 0x34, 0x2d, 0xfe, 0xe6, 0xdd, 0x2f, 0x12, 0xed, 0x12, 0xb3, 0x4b, 0xd9, 0x5d, 0x05, 0x8c, 0x28, 0x11, 0xfd, 0x47, 0x9d, 0x2d, 0xde, 0x32, 0x18, 0x0e, 0x6c, 0x9e, 0xf2, }; static const unsigned char ecdh_secp521r1_5695_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5695_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5695_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp521r1_5695 = { .name = "ecdh_secp521r1_5695", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5695_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5695_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5695_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5695_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 415 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5696 for ECDH, tcId is 416 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5696_peerpubkey[] = { 0x01, 0x5e, 0xdc, 0x87, 0xfd, 0x49, 0x9a, 0x73, 0xea, 0xbf, 0xfd, 0x14, 0xd2, 0xb6, 0xa7, 0x0a, 0x8f, 0xb6, 0x9b, 0x6a, 0x39, 0xd0, 0xd9, 0xc4, 0xdd, 0xa2, 0x33, 0x7b, 0x53, 0xcc, 0x72, 0xe4, 0x9a, 0x9e, 0x3d, 0x5a, 0x2d, 0x9e, 0x89, 0x30, 0xcf, 0xa1, 0x18, 0x52, 0xda, 0xc3, 0x34, 0x43, 0x22, 0x7f, 0xba, 0x66, 0x84, 0xbd, 0x74, 0x73, 0x2e, 0x68, 0x79, 0x88, 0x4b, 0x6e, 0xf9, 0xda, 0xe9, 0x8f, 0x01, 0x0e, 0xeb, 0x8d, 0x2e, 0x33, 0x60, 0xea, 0x97, 0x26, 0x62, 0x80, 0x85, 0x26, 0x8a, 0xf3, 0xf2, 0xa0, 0x5a, 0xd4, 0x12, 0x35, 0xd0, 0xa8, 0x92, 0x09, 0x8b, 0xd6, 0x61, 0xb6, 0x36, 0xf7, 0xef, 0x0a, 0x82, 0x02, 0x82, 0x90, 0x6e, 0xda, 0x3f, 0x1f, 0xf1, 0x98, 0x0b, 0x98, 0xfb, 0x59, 0x37, 0x22, 0x8e, 0x9e, 0xdc, 0xd6, 0x33, 0x2e, 0x36, 0x41, 0x21, 0x6c, 0x73, 0x07, 0xe7, 0xf3, 0xf4, 0x52, }; static const unsigned char ecdh_secp521r1_5696_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5696_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5696_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_5696 = { .name = "ecdh_secp521r1_5696", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5696_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5696_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5696_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5696_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 416 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5697 for ECDH, tcId is 417 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5697_peerpubkey[] = { 0x01, 0x31, 0xb4, 0x30, 0x02, 0xf7, 0xe6, 0x87, 0xee, 0xc1, 0xec, 0xf6, 0xa2, 0x53, 0xc2, 0xcc, 0xc9, 0xe4, 0x8f, 0x04, 0xd8, 0x6f, 0xcc, 0xd1, 0x8f, 0xee, 0x0d, 0x2d, 0x22, 0x19, 0x1f, 0x1e, 0xa5, 0x39, 0xc4, 0x0d, 0x52, 0x19, 0x70, 0xb4, 0x70, 0x9d, 0xc0, 0x39, 0x86, 0xf6, 0x47, 0xe0, 0xe8, 0xbb, 0x33, 0x40, 0xcf, 0x8a, 0x3e, 0x64, 0x3a, 0x35, 0x41, 0x03, 0x54, 0x37, 0xcf, 0x25, 0xf0, 0x15, 0x00, 0xb2, 0x7a, 0x55, 0xac, 0x45, 0xf0, 0x29, 0x6f, 0x8c, 0x96, 0x56, 0xbc, 0xfd, 0x52, 0xb5, 0xce, 0xa9, 0xf4, 0x11, 0x5c, 0x06, 0xe4, 0xc6, 0x43, 0x19, 0x60, 0x98, 0x47, 0xd4, 0x5e, 0x92, 0x41, 0x84, 0x00, 0xe7, 0x86, 0x86, 0x72, 0xc0, 0xd3, 0xe6, 0xe5, 0xe6, 0xe0, 0x04, 0xa7, 0x19, 0x04, 0x76, 0xed, 0x77, 0xcf, 0xc3, 0x3a, 0xd1, 0x9a, 0x4b, 0xd2, 0xc6, 0x15, 0xad, 0x99, 0x50, 0xf3, 0x74, }; static const unsigned char ecdh_secp521r1_5697_ourpubkey[] = { 0x00, 0x3d, 0xde, 0xc1, 0x3e, 0x0d, 0x48, 0xb3, 0x94, 0xae, 0x28, 0x52, 0xaf, 0x56, 0xa3, 0xb7, 0xdb, 0x52, 0xa5, 0xaf, 0xff, 0xb1, 0x4e, 0xd4, 0xad, 0x87, 0xb0, 0x28, 0x60, 0x4d, 0x0c, 0xa3, 0x2f, 0x39, 0x18, 0xad, 0x6c, 0xe6, 0xcb, 0xfd, 0x49, 0x50, 0x48, 0x65, 0xca, 0x64, 0x74, 0x7e, 0xa7, 0xd1, 0xd5, 0x1d, 0x16, 0x76, 0xe5, 0x75, 0x92, 0x04, 0x9c, 0x85, 0xfe, 0x85, 0xc7, 0x94, 0xe9, 0x27, 0x00, 0x58, 0xad, 0xbb, 0xa7, 0x76, 0x73, 0x24, 0x40, 0xb7, 0xc4, 0xfa, 0xa3, 0xb2, 0x1c, 0x2a, 0x44, 0x8b, 0x40, 0x17, 0x69, 0xa5, 0x96, 0x1d, 0x3e, 0x95, 0x49, 0xbd, 0x27, 0x7d, 0x2d, 0xac, 0xb0, 0xce, 0xb4, 0x11, 0x7d, 0x42, 0x55, 0x36, 0x9a, 0xd0, 0xf3, 0x27, 0x4e, 0xb1, 0xc8, 0x88, 0x5f, 0x62, 0xae, 0x44, 0x43, 0x2a, 0xd7, 0xd1, 0x79, 0x49, 0x55, 0x22, 0xcc, 0x57, 0x4f, 0x5e, 0x9f, 0x3c, }; static const unsigned char ecdh_secp521r1_5697_privkey[] = { 0x00, 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x75, 0x9d, 0x2c, 0xb9, 0x1d, 0xf5, 0xec, 0xa7, 0x5a, 0xf6, 0xb8, 0x9e, 0x27, 0xba, 0xf2, 0xf6, 0xcb, 0xf9, 0x71, 0xde, 0xe5, 0x05, 0x8f, 0xfa, 0x9d, 0x8d, 0xac, 0x80, 0x5c, 0x7b, 0xc7, 0x2f, 0x37, 0x18, 0x48, 0x9d, 0x6a, 0x9c, 0xb2, 0x78, 0x7a, 0xf8, 0xc9, 0x3a, 0x17, 0xdd, 0xeb, 0x1a, 0x19, 0x21, 0x1a, 0xb2, 0x36, 0x04, 0xd4, 0x7b, 0x76, 0x46, }; static const unsigned char ecdh_secp521r1_5697_sharedsecret[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp521r1_5697 = { .name = "ecdh_secp521r1_5697", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5697_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5697_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5697_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5697_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for shared secret, tcId is 417 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5698 for ECDH, tcId is 418 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5698_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_5698_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5698_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5698_sharedsecret[] = { 0x00, 0x53, 0xbf, 0x13, 0x7f, 0xee, 0x89, 0x22, 0x76, 0x9f, 0x8d, 0x0f, 0xe2, 0x79, 0xca, 0xa4, 0xda, 0xc9, 0xc6, 0x05, 0x4a, 0xd0, 0x46, 0x09, 0x95, 0x58, 0x8a, 0x84, 0x5d, 0x0a, 0x95, 0x9e, 0x24, 0xbc, 0x0f, 0xc2, 0x39, 0x1a, 0x2b, 0x92, 0xf7, 0xbd, 0x40, 0x0f, 0x50, 0xa1, 0x1a, 0x9d, 0xb3, 0x7f, 0x07, 0xbe, 0xf7, 0xfa, 0x8d, 0xad, 0x2a, 0x90, 0x3f, 0xcf, 0x53, 0x4a, 0xbc, 0x87, 0x36, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5698 = { .name = "ecdh_secp521r1_5698", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5698_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5698_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5698_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5698_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 418 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5699 for ECDH, tcId is 419 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5699_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_5699_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5699_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5699_sharedsecret[] = { 0x01, 0xc9, 0x5a, 0xc4, 0x17, 0xc9, 0x0a, 0x52, 0x01, 0x49, 0xb2, 0x91, 0x05, 0xcd, 0xab, 0x36, 0xf5, 0x28, 0xa2, 0x3e, 0xfb, 0x56, 0x21, 0x52, 0x0d, 0xbd, 0xaf, 0xea, 0x95, 0xa7, 0xd4, 0x34, 0x99, 0xc4, 0xc8, 0xbe, 0x02, 0xcd, 0x1c, 0x2d, 0xe0, 0x00, 0xda, 0x18, 0x10, 0x4f, 0xa8, 0x4a, 0x1e, 0x9e, 0xce, 0x63, 0x86, 0xf0, 0xe0, 0xef, 0xa5, 0x23, 0x4a, 0x24, 0x59, 0x5d, 0x7c, 0x4c, 0x96, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp521r1_5699 = { .name = "ecdh_secp521r1_5699", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5699_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5699_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5699_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5699_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 419 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5700 for ECDH, tcId is 420 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5700_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_5700_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5700_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5700_sharedsecret[] = { 0x01, 0xb4, 0x7e, 0xc4, 0x1e, 0x3a, 0x5a, 0xbd, 0x9d, 0xd9, 0x80, 0x8f, 0xc0, 0x4d, 0x90, 0x78, 0xcb, 0xed, 0x72, 0xb9, 0xeb, 0xa9, 0x8d, 0x3c, 0x1d, 0xed, 0x70, 0xa2, 0x99, 0x38, 0xf0, 0xef, 0xd5, 0xa2, 0x7a, 0x71, 0x13, 0xff, 0x72, 0x1f, 0x12, 0x2c, 0xb1, 0x74, 0x11, 0xde, 0x30, 0x7a, 0x35, 0x5c, 0x68, 0x50, 0x74, 0xf5, 0x76, 0x6b, 0x6d, 0x1a, 0x03, 0x3d, 0x2f, 0xa1, 0x88, 0xc9, 0x45, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5700 = { .name = "ecdh_secp521r1_5700", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5700_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5700_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5700_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5700_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 420 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5701 for ECDH, tcId is 421 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5701_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5f, 0x88, 0x0f, 0x50, 0xec, 0x94, 0xbf, 0xac, 0x66, 0x58, 0xfa, 0x2f, 0xce, 0x05, 0x94, 0x5c, 0x6a, 0x36, 0xb2, 0x66, 0x40, 0x7b, 0x6f, 0xbd, 0x54, 0x37, 0xa8, 0x3e, 0x2f, 0x2f, 0x9b, 0x9c, 0x50, 0xa7, 0x34, 0x87, 0x2e, 0x48, 0xe7, 0x0d, 0xf6, 0x54, 0x57, 0xf1, 0x3e, 0x47, 0xd0, 0x6c, 0x6b, 0x8b, 0x29, 0xf4, 0x73, 0x5a, 0xcf, 0x10, 0x5e, 0xa6, 0x3e, 0x05, 0x19, 0x04, 0xd1, 0x8a, 0xea, }; static const unsigned char ecdh_secp521r1_5701_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5701_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5701_sharedsecret[] = { 0x01, 0x3a, 0xef, 0xe3, 0x24, 0x57, 0x28, 0xa0, 0x8c, 0x90, 0x4f, 0xe7, 0xd6, 0x1c, 0xd9, 0xc2, 0xfd, 0xac, 0x63, 0xf2, 0x9c, 0xf6, 0x64, 0xd8, 0xf1, 0x61, 0xbe, 0xba, 0xcb, 0x93, 0xf8, 0xa7, 0x10, 0xe9, 0x69, 0x2f, 0x96, 0x89, 0x48, 0x0a, 0xd4, 0x98, 0xde, 0x00, 0xf0, 0x00, 0x61, 0xe4, 0x0e, 0x46, 0xe7, 0x6e, 0x47, 0x54, 0xc1, 0x13, 0x0e, 0xf4, 0x21, 0x7a, 0x58, 0x93, 0x3e, 0x0b, 0x1d, 0xc6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5701 = { .name = "ecdh_secp521r1_5701", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5701_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5701_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5701_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5701_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 421 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5702 for ECDH, tcId is 422 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5702_peerpubkey[] = { 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x3f, 0xfc, 0x45, 0xda, 0x3e, 0xac, 0x1b, 0xaa, 0xb7, 0x27, 0xab, 0x8f, 0xd3, 0x55, 0xcf, 0xa1, 0x34, 0xc4, 0x20, 0x47, 0xd5, 0x52, 0x62, 0x65, 0x16, 0x54, 0xfb, 0x50, 0xdf, 0x7e, 0x9a, 0x5a, 0x75, 0xf1, 0x79, 0xc8, 0xc8, 0x6c, 0x43, 0x88, 0x21, 0x3b, 0x56, 0x87, 0xdc, 0x43, 0xdf, 0xeb, 0xb3, 0x7f, 0x30, 0x12, 0x87, 0x03, 0xc4, 0x4c, 0xcd, 0x5c, 0x32, 0x84, 0x83, 0x3b, 0x87, 0x17, }; static const unsigned char ecdh_secp521r1_5702_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5702_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5702_sharedsecret[] = { 0x01, 0x68, 0xdf, 0x27, 0x2d, 0x53, 0xe3, 0x16, 0x19, 0x26, 0x16, 0x8c, 0x4a, 0xea, 0xb5, 0xf3, 0x55, 0xb8, 0xd2, 0xa6, 0x68, 0x9c, 0xfd, 0x56, 0x7f, 0x2b, 0x6e, 0xb2, 0x01, 0x1a, 0x18, 0xc7, 0x75, 0xac, 0x2a, 0x21, 0xf8, 0xdd, 0x49, 0x7f, 0x69, 0x57, 0x21, 0x70, 0x20, 0xb3, 0xb1, 0xaf, 0xcb, 0x70, 0x21, 0xf2, 0x4f, 0xcc, 0xc2, 0x52, 0x3b, 0xe7, 0x6a, 0x2b, 0xff, 0x44, 0x59, 0x6e, 0x5a, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_5702 = { .name = "ecdh_secp521r1_5702", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5702_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5702_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5702_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5702_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 422 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5703 for ECDH, tcId is 423 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5703_peerpubkey[] = { 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0xcd, 0x28, 0x39, 0xd8, 0x57, 0xb4, 0x69, 0x9f, 0x5c, 0x8e, 0x8a, 0x01, 0x94, 0x78, 0x6e, 0x26, 0xa8, 0x62, 0xf0, 0x86, 0xb4, 0xba, 0x80, 0x74, 0x6a, 0xe5, 0x22, 0x5e, 0xd3, 0xaa, 0x68, 0xf9, 0x6b, 0x7a, 0xae, 0xc5, 0x52, 0x25, 0x83, 0x0b, 0xb9, 0x8f, 0x52, 0xd7, 0x52, 0x21, 0x14, 0x18, 0x97, 0xba, 0x49, 0xd7, 0xa3, 0x1e, 0xbb, 0xf0, 0xb6, 0xd7, 0xd3, 0x13, 0x52, 0xe5, 0x26, 0x61, 0x90, }; static const unsigned char ecdh_secp521r1_5703_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5703_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5703_sharedsecret[] = { 0x01, 0x3d, 0xb1, 0xb9, 0x24, 0x1b, 0x23, 0xd3, 0x38, 0x60, 0xd3, 0x2d, 0xec, 0x37, 0xa7, 0x9e, 0x45, 0x46, 0xa4, 0x1a, 0xfd, 0xfd, 0xd9, 0xc4, 0x38, 0xd0, 0x4e, 0x1f, 0x8b, 0x56, 0x6a, 0xc8, 0xd9, 0xd3, 0xf5, 0x72, 0xc2, 0x93, 0xe9, 0x69, 0x43, 0x72, 0x2a, 0x4e, 0xe2, 0x90, 0xe1, 0x13, 0xff, 0xfa, 0xa8, 0x2a, 0x61, 0x86, 0x7d, 0x9c, 0xa2, 0x8d, 0x34, 0x99, 0x82, 0x35, 0x4c, 0x9b, 0x25, 0x6f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5703 = { .name = "ecdh_secp521r1_5703", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5703_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5703_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5703_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5703_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 423 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5704 for ECDH, tcId is 424 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5704_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x13, 0xd9, 0x82, 0x91, 0x19, 0xf4, 0x2f, 0xfa, 0x95, 0xfe, 0xa8, 0xba, 0x9e, 0x81, 0xe4, 0xcd, 0x6a, 0x6c, 0xa9, 0x7f, 0xb0, 0x77, 0x8e, 0x12, 0xe5, 0xf5, 0xdf, 0xe3, 0x52, 0x01, 0xdd, 0x4c, 0xca, 0x8e, 0xca, 0x0d, 0x2e, 0x39, 0x55, 0x55, 0x99, 0x70, 0x41, 0x38, 0x1e, 0x6a, 0xc1, 0xf1, 0x8d, 0xdf, 0x4c, 0x74, 0xe0, 0xb6, 0xe9, 0x04, 0x1c, 0xfd, 0xca, 0x1d, 0x1c, 0x10, 0x30, 0x91, }; static const unsigned char ecdh_secp521r1_5704_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5704_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5704_sharedsecret[] = { 0x01, 0xd2, 0xbb, 0xe9, 0xf7, 0x54, 0x58, 0x4e, 0xbb, 0xc7, 0xc7, 0xad, 0x74, 0x13, 0x6d, 0x1c, 0x8a, 0x14, 0x49, 0x48, 0x94, 0x8a, 0xa8, 0xbe, 0x49, 0x98, 0x9d, 0xd9, 0xb4, 0xc5, 0x14, 0xdb, 0x2e, 0x2a, 0xb1, 0xe0, 0x71, 0x3a, 0xd1, 0x69, 0x9f, 0x63, 0x2d, 0xd2, 0xce, 0xa5, 0x3d, 0xa2, 0x18, 0xed, 0x54, 0x9f, 0x03, 0x0a, 0x11, 0x3e, 0x28, 0x2f, 0xd9, 0xe3, 0xbe, 0x46, 0x2d, 0x9a, 0xba, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_5704 = { .name = "ecdh_secp521r1_5704", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5704_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5704_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5704_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5704_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 424 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5705 for ECDH, tcId is 425 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5705_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x87, 0x8a, 0xd5, 0x97, 0xd2, 0x90, 0xdb, 0x2c, 0xf6, 0x60, 0x59, 0x4a, 0xee, 0xd0, 0xf9, 0xb7, 0xc8, 0xdd, 0x68, 0x45, 0x1d, 0x2d, 0x1b, 0x2c, 0xbc, 0x81, 0x6b, 0x1e, 0xc4, 0xf3, 0x54, 0x65, 0xb3, 0x96, 0x4a, 0xff, 0x2e, 0xdf, 0x12, 0x55, 0x16, 0x3f, 0x5f, 0xca, 0x58, 0x01, 0x32, 0xf8, 0x5c, 0xad, 0xe2, 0x88, 0x7a, 0x01, 0x7e, 0x7c, 0xd0, 0xb3, 0x71, 0x96, 0xad, 0x85, 0x22, 0x11, 0x07, }; static const unsigned char ecdh_secp521r1_5705_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5705_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5705_sharedsecret[] = { 0x00, 0x0f, 0x37, 0xa2, 0xe2, 0xca, 0xef, 0x54, 0xff, 0xf4, 0x12, 0x6c, 0x0f, 0xa9, 0x6e, 0x7c, 0x47, 0xf0, 0xca, 0xd7, 0x46, 0x26, 0xef, 0x91, 0xe5, 0x89, 0xe1, 0x2d, 0x2e, 0x1e, 0x8c, 0x22, 0x1b, 0xe7, 0x29, 0x5b, 0xe9, 0xdc, 0x27, 0x12, 0xb8, 0x7b, 0xb0, 0xaa, 0x0f, 0x58, 0x80, 0xb7, 0x38, 0xbc, 0x12, 0x42, 0xf2, 0xba, 0x77, 0x3b, 0xf9, 0xeb, 0x2a, 0x54, 0xe3, 0xc1, 0xca, 0x47, 0x58, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5705 = { .name = "ecdh_secp521r1_5705", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5705_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5705_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5705_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5705_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 425 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5706 for ECDH, tcId is 426 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5706_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb5, 0xe1, 0x19, 0x1b, 0x44, 0x9f, 0xa1, 0xeb, 0xdb, 0xd6, 0x77, 0xda, 0xa4, 0x8f, 0x90, 0xe2, 0xd1, 0xd6, 0xc0, 0x58, 0xc8, 0x77, 0x08, 0x7c, 0xaf, 0xd9, 0x36, 0x4d, 0x99, 0xdb, 0xb2, 0x83, 0xc6, 0x84, 0x02, 0xe6, 0xe6, 0xc5, 0xf5, 0x41, 0x1b, 0x2e, 0xd4, 0x28, 0x24, 0xd8, 0xb2, 0x80, 0xce, 0xb9, 0x10, 0xab, 0xa6, 0x84, 0x78, 0x83, 0xa7, 0xe3, 0x78, 0x0e, 0x21, 0x32, 0xaf, 0x41, 0xc1, }; static const unsigned char ecdh_secp521r1_5706_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5706_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5706_sharedsecret[] = { 0x01, 0x7a, 0xeb, 0x25, 0x4d, 0x9c, 0x8c, 0x8e, 0xe0, 0x62, 0x15, 0xff, 0x33, 0x81, 0x13, 0x57, 0xda, 0x73, 0xbf, 0x7f, 0x6d, 0xd6, 0xd7, 0xf8, 0xf1, 0x76, 0xd6, 0x2c, 0x06, 0x5a, 0x88, 0xa9, 0x00, 0x5f, 0x68, 0x0c, 0x63, 0x0e, 0x9f, 0x27, 0x63, 0x58, 0x5e, 0xa2, 0xee, 0x76, 0xb6, 0xe4, 0xab, 0x45, 0xe6, 0x73, 0xf8, 0x14, 0xeb, 0xfa, 0x95, 0x94, 0x7c, 0x0c, 0x63, 0xfb, 0x24, 0xfa, 0x6e, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_5706 = { .name = "ecdh_secp521r1_5706", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5706_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5706_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5706_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5706_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 426 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5707 for ECDH, tcId is 427 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5707_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x20, 0x75, 0x13, 0xd6, 0x15, 0x65, 0x6a, 0x1c, 0xc7, 0x50, 0x5c, 0x18, 0xaa, 0x21, 0xb0, 0x8e, 0x2b, 0x1d, 0x5a, 0x84, 0x1d, 0xe0, 0x81, 0x6c, 0xc2, 0x9c, 0x00, 0x4e, 0xfd, 0xb2, 0xd9, 0x02, 0xac, 0x1a, 0x7b, 0xb0, 0x5e, 0x20, 0x72, 0x2b, 0x57, 0x6b, 0x64, 0xa3, 0xdd, 0xf4, 0xd2, 0x48, 0x64, 0x21, 0xac, 0x70, 0x6b, 0xf4, 0xa4, 0x24, 0xf2, 0x52, 0x38, 0x63, 0x68, 0xa5, 0x34, 0x0f, 0xb6, }; static const unsigned char ecdh_secp521r1_5707_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5707_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5707_sharedsecret[] = { 0x00, 0x61, 0xbe, 0xd4, 0x22, 0x48, 0xa3, 0x7b, 0x46, 0x25, 0xef, 0x04, 0xc4, 0xf9, 0xc7, 0xef, 0x69, 0xee, 0x3c, 0x6f, 0x95, 0x03, 0x37, 0x83, 0x51, 0xfc, 0xab, 0x1b, 0x8c, 0xe1, 0x34, 0x32, 0x06, 0x99, 0x7e, 0xec, 0x1b, 0x88, 0x44, 0x9e, 0xb6, 0xf7, 0x35, 0x57, 0x11, 0xea, 0x1a, 0x81, 0x8a, 0x48, 0x6e, 0xe3, 0x0a, 0x24, 0x12, 0x62, 0x41, 0xa7, 0xe2, 0x28, 0x92, 0x67, 0xcf, 0x5d, 0xd6, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5707 = { .name = "ecdh_secp521r1_5707", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5707_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5707_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5707_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5707_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 427 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5708 for ECDH, tcId is 428 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5708_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x1f, 0xe8, 0x00, 0xc5, 0x0e, 0x54, 0x01, 0x2b, 0x75, 0xa3, 0x3e, 0x4b, 0xe7, 0xd0, 0x7c, 0x8d, 0x60, 0xf2, 0x96, 0x80, 0xa3, 0x95, 0xe9, 0x51, 0xa6, 0xa3, 0x1c, 0x50, 0x96, 0xb0, 0xea, 0x92, 0x8f, 0xc2, 0xcb, 0xf3, 0x27, 0xdd, 0x78, 0x4d, 0xc0, 0xa7, 0xca, 0x46, 0xea, 0x73, 0x99, 0x2b, 0x75, 0x8b, 0x56, 0x41, 0x36, 0x4b, 0x4a, 0xba, 0x39, 0xe9, 0x37, 0x98, 0xa4, 0xd9, 0x25, 0xa0, 0x08, }; static const unsigned char ecdh_secp521r1_5708_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5708_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5708_sharedsecret[] = { 0x00, 0x10, 0x67, 0xd9, 0x10, 0x4e, 0x29, 0x6e, 0xf4, 0x2b, 0x94, 0x45, 0x87, 0xde, 0x11, 0xb1, 0x0d, 0xf0, 0x5d, 0x2d, 0x95, 0x9e, 0xd4, 0x4c, 0xac, 0x9e, 0x7e, 0xf1, 0xc7, 0xa0, 0x5d, 0x90, 0x81, 0x9c, 0x43, 0xbc, 0x79, 0xc7, 0x39, 0x79, 0x18, 0xf9, 0x57, 0xcc, 0x98, 0xdb, 0x93, 0x17, 0x63, 0xbb, 0xeb, 0x1b, 0xdf, 0xc3, 0x58, 0x65, 0xe8, 0xa3, 0x59, 0xa0, 0x13, 0xf1, 0x3d, 0x60, 0xc4, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_5708 = { .name = "ecdh_secp521r1_5708", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5708_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5708_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5708_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5708_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 428 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5709 for ECDH, tcId is 429 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5709_peerpubkey[] = { 0x01, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x00, 0x00, 0x8d, 0xd1, 0x8a, 0x1f, 0x5e, 0x48, 0x21, 0x40, 0xbe, 0x79, 0xbb, 0x65, 0xa2, 0x1a, 0xd6, 0x0c, 0x89, 0x87, 0xe5, 0x32, 0xc8, 0x43, 0x45, 0xf0, 0x13, 0x5a, 0xff, 0xd4, 0x6e, 0xc7, 0x1e, 0xf0, 0x2b, 0x1c, 0xa3, 0xad, 0x56, 0xf3, 0x01, 0xd9, 0x55, 0xfa, 0x30, 0x6c, 0x12, 0x2d, 0x44, 0x1d, 0x6f, 0xed, 0xcf, 0x8b, 0x85, 0x5e, 0xf2, 0x56, 0x35, 0x0b, 0xf6, 0x9d, 0x23, 0xa7, 0x20, 0x7a, 0xd9, }; static const unsigned char ecdh_secp521r1_5709_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5709_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5709_sharedsecret[] = { 0x00, 0xb7, 0x79, 0xd8, 0x30, 0x35, 0xcf, 0x7b, 0xb0, 0xbb, 0x04, 0xc7, 0xb2, 0xf4, 0x6d, 0x08, 0xf6, 0x79, 0x1f, 0x0d, 0x15, 0x42, 0xc9, 0xbc, 0xce, 0x72, 0x50, 0xe7, 0x72, 0xb1, 0x2a, 0xd8, 0xe3, 0x8f, 0xce, 0x1d, 0x2b, 0x06, 0x3a, 0x06, 0xf0, 0xfa, 0x3a, 0x1b, 0x07, 0x2d, 0xd9, 0x76, 0xf5, 0xf8, 0x54, 0x29, 0x79, 0x90, 0x30, 0x75, 0x16, 0x2f, 0x1f, 0x5c, 0x6b, 0xa3, 0xb7, 0x6c, 0xc4, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5709 = { .name = "ecdh_secp521r1_5709", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5709_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5709_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5709_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5709_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 429 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5710 for ECDH, tcId is 430 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5710_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x00, 0x56, 0x62, 0x03, 0xdd, 0x32, 0x5a, 0x08, 0x1c, 0x44, 0x41, 0xf0, 0x01, 0xf7, 0x80, 0x36, 0x58, 0x74, 0xfd, 0x3d, 0x0c, 0x9b, 0xc4, 0x72, 0x27, 0x48, 0x1a, 0xfe, 0x76, 0xa9, 0x3a, 0xe1, 0xbf, 0xde, 0x63, 0xaf, 0x97, 0x22, 0x03, 0xab, 0xfe, 0x22, 0xc6, 0x3b, 0x80, 0xe8, 0x3f, 0x7c, 0xc2, 0x18, 0x4c, 0x3c, 0xb8, 0xcf, 0xd0, 0x15, 0x2c, 0x54, 0x32, 0x4c, 0x47, 0x59, 0xfd, 0x1f, 0x9a, 0x50, }; static const unsigned char ecdh_secp521r1_5710_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5710_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5710_sharedsecret[] = { 0x01, 0xaf, 0xe5, 0xd2, 0x37, 0x33, 0x72, 0x8b, 0x79, 0xc7, 0x43, 0x93, 0x3b, 0x9b, 0xa7, 0xdf, 0xec, 0x5e, 0xd1, 0x9b, 0x77, 0x37, 0xe3, 0x93, 0x90, 0x8a, 0x1d, 0x00, 0x09, 0x18, 0xaa, 0x79, 0x5d, 0x1c, 0xe0, 0xad, 0x53, 0x39, 0x83, 0xd0, 0x18, 0xf9, 0x27, 0xb3, 0x5d, 0x2a, 0xf6, 0x46, 0x33, 0x56, 0x57, 0x3f, 0x38, 0x7f, 0xeb, 0xd7, 0x59, 0x11, 0xa4, 0x94, 0x86, 0x20, 0x2c, 0xa6, 0x9d, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5710 = { .name = "ecdh_secp521r1_5710", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5710_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5710_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5710_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5710_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 430 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5711 for ECDH, tcId is 431 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5711_peerpubkey[] = { 0x01, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0xb1, 0x1c, 0x66, 0x8f, 0xbd, 0x54, 0x9f, 0x36, 0x88, 0x9f, 0x7b, 0x63, 0x43, 0x40, 0x51, 0xda, 0x26, 0xf1, 0x57, 0x05, 0x83, 0x91, 0x36, 0xb1, 0xb1, 0x4a, 0x09, 0x15, 0x2d, 0x7a, 0x18, 0x2e, 0xa7, 0x80, 0x6c, 0x35, 0x47, 0x8a, 0x32, 0xd3, 0xaa, 0x3c, 0x9c, 0x16, 0x27, 0xa6, 0x15, 0x19, 0xeb, 0xec, 0x71, 0xb3, 0x6f, 0xa7, 0x74, 0x49, 0x02, 0x5b, 0x88, 0x29, 0xe2, 0x7f, 0x30, 0x78, 0x34, }; static const unsigned char ecdh_secp521r1_5711_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5711_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5711_sharedsecret[] = { 0x01, 0x96, 0x12, 0xae, 0xb3, 0x86, 0xfe, 0xbb, 0x1a, 0x28, 0x09, 0x6f, 0xe5, 0xb2, 0xf6, 0x82, 0xde, 0xad, 0x02, 0x38, 0x97, 0x85, 0x22, 0x5b, 0x80, 0xa2, 0x7d, 0xf4, 0x39, 0x51, 0x0d, 0x08, 0x34, 0x9a, 0x19, 0x38, 0x39, 0x52, 0x5f, 0x24, 0x8b, 0x7f, 0x9b, 0xca, 0xbf, 0xd3, 0xdc, 0x8d, 0xa8, 0xcc, 0x17, 0x24, 0x02, 0x22, 0x99, 0xb7, 0xb5, 0xe7, 0x23, 0x99, 0xd8, 0x94, 0x64, 0xb8, 0x2e, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_5711 = { .name = "ecdh_secp521r1_5711", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5711_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5711_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5711_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5711_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 431 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5712 for ECDH, tcId is 432 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5712_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x02, 0x00, 0xaa, 0x75, 0xef, 0xc0, 0xa8, 0xda, 0xac, 0x1d, 0x73, 0xf3, 0x2c, 0x9c, 0x55, 0x24, 0x14, 0xbc, 0xcf, 0x44, 0xaf, 0x8e, 0x74, 0x33, 0x1b, 0x47, 0x43, 0x9e, 0x7d, 0xcc, 0x49, 0xa1, 0x35, 0xb3, 0xee, 0x61, 0xe9, 0xf6, 0x97, 0x17, 0xd8, 0x9b, 0x4b, 0xba, 0x35, 0x67, 0xa1, 0x95, 0xae, 0xda, 0x13, 0xfb, 0xec, 0x63, 0x4b, 0xf2, 0x98, 0x4b, 0x5e, 0xc6, 0xb6, 0xf8, 0x0f, 0x59, 0x78, 0xed, 0x5a, }; static const unsigned char ecdh_secp521r1_5712_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5712_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5712_sharedsecret[] = { 0x00, 0x57, 0x06, 0x73, 0xf8, 0x7a, 0xdc, 0xef, 0x49, 0xc1, 0xf0, 0x11, 0xe8, 0xb9, 0xf1, 0xe1, 0x1f, 0x7f, 0xd3, 0xb3, 0xc9, 0x31, 0x14, 0xd0, 0x8d, 0x3f, 0x51, 0x5a, 0xa4, 0xa8, 0x95, 0xa6, 0xc7, 0x01, 0xc5, 0x23, 0x06, 0x3b, 0xdc, 0x13, 0xad, 0x1d, 0xb0, 0xa5, 0x4f, 0x6e, 0x7b, 0x47, 0x6f, 0xe1, 0x0d, 0xb2, 0x07, 0x04, 0x41, 0xbe, 0xfc, 0x58, 0xc8, 0xcf, 0xf3, 0xc0, 0x8e, 0xf7, 0x6e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_5712 = { .name = "ecdh_secp521r1_5712", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5712_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5712_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5712_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5712_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 432 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5713 for ECDH, tcId is 433 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5713_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_5713_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5713_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5713_sharedsecret[] = { 0x00, 0x16, 0xaa, 0xf2, 0x28, 0xb0, 0xae, 0xc1, 0x90, 0xd4, 0xe4, 0xe5, 0xb8, 0x13, 0x8f, 0xf9, 0xcc, 0x46, 0xd7, 0x05, 0xda, 0x1b, 0xf0, 0x02, 0x90, 0x1c, 0x6a, 0xb4, 0x20, 0xf5, 0x93, 0x14, 0xd5, 0xb6, 0x41, 0x71, 0x2b, 0x14, 0xef, 0x3e, 0x4f, 0xb1, 0x25, 0x65, 0x2c, 0x47, 0x88, 0x86, 0x76, 0x80, 0x4f, 0xb5, 0x57, 0x5b, 0x74, 0x1a, 0x84, 0x08, 0xc5, 0x62, 0x5b, 0xfc, 0xcf, 0xf4, 0xfd, 0xda, }; static const wycheproof_ecdh_test ecdh_secp521r1_5713 = { .name = "ecdh_secp521r1_5713", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5713_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5713_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5713_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5713_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 433 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5714 for ECDH, tcId is 434 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5714_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_5714_ourpubkey[] = { 0x01, 0x7f, 0xc7, 0xcf, 0x66, 0x6d, 0xac, 0x5a, 0x38, 0x16, 0xc6, 0x37, 0x0c, 0xd6, 0x92, 0xc4, 0xe2, 0x86, 0x65, 0xd5, 0xa9, 0xaa, 0x70, 0xce, 0x51, 0x89, 0x1e, 0xe5, 0xc7, 0x6f, 0x92, 0x14, 0x49, 0xe9, 0x62, 0x05, 0x25, 0xe7, 0x18, 0xcd, 0x52, 0x79, 0xcd, 0x61, 0x2e, 0xfb, 0xbf, 0xb8, 0x2f, 0x17, 0xae, 0x12, 0xa0, 0x01, 0x40, 0x7f, 0x55, 0xd3, 0x9b, 0x69, 0xbb, 0x7c, 0x6f, 0x59, 0xb2, 0xea, 0x01, 0xf6, 0x1a, 0x2e, 0xad, 0xce, 0xf8, 0xac, 0x1b, 0x92, 0x83, 0x0a, 0xf6, 0x2a, 0x34, 0x3c, 0xbb, 0x13, 0x25, 0x2a, 0x2c, 0xcf, 0x1a, 0xb7, 0x52, 0xcb, 0x15, 0x1e, 0x0b, 0xd3, 0x9b, 0x58, 0x01, 0x75, 0x23, 0x4b, 0xf6, 0x41, 0xd4, 0x4e, 0x86, 0x60, 0x77, 0x3d, 0x84, 0x20, 0x68, 0x41, 0x1d, 0xaf, 0x37, 0xf0, 0x2e, 0x59, 0xe5, 0x45, 0xa9, 0x46, 0xca, 0x9c, 0x3e, 0xf0, 0x7e, 0x5c, 0x0b, 0xbd, }; static const unsigned char ecdh_secp521r1_5714_privkey[] = { 0x01, 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0x02, 0xc3, 0x9f, 0x9a, 0x92, 0x5a, 0xa1, 0x30, 0x76, 0x3d, 0x01, 0xed, 0x6e, 0xda, 0xf1, 0x43, 0x06, 0xeb, 0x0a, 0x14, 0xdd, 0x75, 0xdf, 0xf5, 0x04, 0x07, 0x0d, 0xef, 0x7b, 0x88, 0xd8, 0xb1, 0x65, 0x08, 0x2f, 0x69, 0x99, 0x2d, 0xe0, 0xff, 0xa5, 0xee, 0x92, 0x2c, 0xb3, 0xab, 0x39, 0x91, 0x7d, 0xa8, 0x52, 0x4c, 0xac, 0x73, 0xf0, 0xa0, 0x9c, }; static const unsigned char ecdh_secp521r1_5714_sharedsecret[] = { 0x00, 0xa5, 0xd6, 0xdf, 0xda, 0x2b, 0x26, 0x9f, 0x4a, 0xb8, 0x95, 0xa4, 0x1c, 0x3b, 0x71, 0xb6, 0xba, 0x10, 0xd5, 0xc9, 0xf0, 0xd9, 0xb3, 0xe7, 0x30, 0x27, 0x53, 0x45, 0xe4, 0x72, 0x15, 0x94, 0xab, 0xfd, 0x39, 0x46, 0x4c, 0x22, 0x77, 0x16, 0xde, 0xd8, 0xef, 0x3e, 0x60, 0xbb, 0x1c, 0xa0, 0xb5, 0x51, 0x71, 0x6e, 0x3f, 0x6e, 0xeb, 0xb4, 0x8d, 0x5c, 0xe8, 0xe0, 0xab, 0x58, 0xcb, 0x1b, 0x73, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_5714 = { .name = "ecdh_secp521r1_5714", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5714_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5714_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5714_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5714_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge cases for ephemeral key, tcId is 434 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5715 for ECDH, tcId is 435 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5715_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x10, 0xe5, 0x9b, 0xe9, 0x3c, 0x4f, 0x26, 0x9c, 0x02, 0x69, 0xc7, 0x9e, 0x2a, 0xfd, 0x65, 0xd6, 0xae, 0xaa, 0x9b, 0x70, 0x1e, 0xac, 0xc1, 0x94, 0xfb, 0x3e, 0xe0, 0x3d, 0xf4, 0x78, 0x49, 0xbf, 0x55, 0x0e, 0xc6, 0x36, 0xeb, 0xee, 0x0d, 0xdd, 0x4a, 0x16, 0xf1, 0xcd, 0x94, 0x06, 0x60, 0x5a, 0xf3, 0x8f, 0x58, 0x45, 0x67, 0x77, 0x0e, 0x3f, 0x27, 0x2d, 0x68, 0x8c, 0x83, 0x2e, 0x84, 0x35, 0x64, }; static const unsigned char ecdh_secp521r1_5715_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5715_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5715_sharedsecret[] = { 0x00, 0x8f, 0x61, 0xe1, 0x5e, 0x8c, 0x85, 0x45, 0xdc, 0xda, 0xb1, 0x88, 0xf1, 0x0b, 0xa9, 0x11, 0x1b, 0x63, 0x45, 0xd5, 0x29, 0xd9, 0xc5, 0x47, 0x06, 0x77, 0x34, 0x2d, 0xf7, 0xef, 0x54, 0xc5, 0x6a, 0x1f, 0xb9, 0xfb, 0xe8, 0xde, 0xa7, 0x6a, 0xfb, 0xe8, 0xf2, 0xdd, 0x4c, 0x3c, 0xfb, 0x4d, 0x5b, 0x74, 0x9d, 0x74, 0x39, 0x44, 0xc9, 0x6d, 0x74, 0xfb, 0x47, 0xbc, 0x4b, 0xf6, 0x01, 0xe5, 0xdc, 0x7e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5715 = { .name = "ecdh_secp521r1_5715", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5715_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5715_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5715_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5715_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 435 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5716 for ECDH, tcId is 436 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5716_peerpubkey[] = { 0x00, 0x4d, 0xc1, 0x6c, 0xaf, 0xca, 0x98, 0x33, 0xee, 0xb9, 0x7c, 0x13, 0x6c, 0x15, 0x4f, 0x3a, 0xe3, 0x90, 0x83, 0x0f, 0x26, 0xd3, 0x00, 0xed, 0xef, 0x06, 0xf8, 0x67, 0xef, 0xab, 0x1c, 0x42, 0x14, 0xf5, 0x63, 0xc2, 0x5e, 0x1c, 0x81, 0xe1, 0x6a, 0x86, 0xea, 0xac, 0x82, 0x72, 0x89, 0x2d, 0x1b, 0x65, 0xb2, 0xee, 0x7f, 0xb2, 0xb6, 0x9b, 0xa1, 0x11, 0x0b, 0x08, 0x3b, 0xbe, 0xb6, 0xb8, 0x87, 0x3a, 0x01, 0x0d, 0xbb, 0x70, 0x12, 0x66, 0xa8, 0xdf, 0x32, 0xd1, 0x7b, 0xd5, 0x8b, 0xea, 0x36, 0x5c, 0x26, 0x37, 0xd6, 0x86, 0x27, 0x29, 0x00, 0xa5, 0xea, 0x7a, 0x19, 0xff, 0x98, 0xdb, 0x3b, 0xf9, 0x24, 0x25, 0xa4, 0x83, 0xc7, 0x0f, 0xdd, 0x9d, 0xb2, 0x5b, 0x6e, 0xe6, 0x99, 0x81, 0xcb, 0x69, 0xdc, 0xc9, 0xc4, 0x18, 0xc3, 0x29, 0x89, 0xe7, 0x3f, 0x0a, 0x5f, 0xd7, 0xf3, 0xc3, 0xba, 0x44, 0xb0, 0x51, }; static const unsigned char ecdh_secp521r1_5716_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5716_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5716_sharedsecret[] = { 0x01, 0x7e, 0x7e, 0xec, 0xdb, 0x0f, 0x52, 0xe3, 0xb8, 0xae, 0xdd, 0x0f, 0x55, 0x50, 0xf2, 0x6c, 0xd5, 0xe2, 0x7e, 0x71, 0x1d, 0x68, 0x60, 0xc5, 0x4f, 0x88, 0xcf, 0xd3, 0xff, 0x07, 0x5d, 0xf8, 0xd3, 0x63, 0xee, 0x3b, 0xe4, 0xda, 0xc2, 0xf4, 0x2d, 0x03, 0x6b, 0x7c, 0x64, 0xe2, 0xb5, 0x0d, 0x90, 0x76, 0x4a, 0xb4, 0xee, 0xf0, 0xb9, 0xd6, 0x8c, 0x29, 0x68, 0x2b, 0x97, 0x07, 0xd4, 0x5e, 0xc2, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_5716 = { .name = "ecdh_secp521r1_5716", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5716_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5716_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5716_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5716_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 436 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5717 for ECDH, tcId is 437 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5717_peerpubkey[] = { 0x01, 0x82, 0x55, 0xc0, 0x14, 0xf2, 0x53, 0x3a, 0xd9, 0x30, 0xe4, 0x32, 0x02, 0x16, 0x49, 0x6a, 0x3f, 0x4e, 0x0d, 0x78, 0xb5, 0x0f, 0xa2, 0x7d, 0x42, 0x20, 0x9e, 0x27, 0x0e, 0x39, 0xba, 0xf4, 0x80, 0xa9, 0x87, 0xa2, 0xc8, 0x40, 0x98, 0xee, 0xe5, 0x38, 0x89, 0xea, 0x8b, 0x6c, 0xc9, 0x03, 0x6d, 0xde, 0xeb, 0xef, 0xc0, 0x0b, 0x55, 0x42, 0xd2, 0x42, 0x5f, 0xaf, 0xd5, 0xe1, 0xba, 0xba, 0xe8, 0x41, 0x01, 0xdb, 0x81, 0x7b, 0x33, 0x2b, 0x29, 0x7a, 0x00, 0x3c, 0xff, 0xc4, 0x25, 0x1b, 0x58, 0xd9, 0xc7, 0xce, 0x0b, 0x90, 0x30, 0x1e, 0xf5, 0xc6, 0x5e, 0x8a, 0xc0, 0xf8, 0x25, 0x17, 0xfd, 0x17, 0x30, 0xa1, 0x67, 0xd8, 0x3a, 0xf5, 0x0d, 0x92, 0xf7, 0xe2, 0x5e, 0x08, 0x78, 0x71, 0x30, 0x61, 0x89, 0x20, 0x34, 0x5c, 0x43, 0x53, 0x37, 0xef, 0x45, 0xeb, 0x2e, 0x9b, 0x1a, 0xce, 0x53, 0x0d, 0x0e, 0xaf, }; static const unsigned char ecdh_secp521r1_5717_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5717_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5717_sharedsecret[] = { 0x01, 0x15, 0xba, 0x7f, 0xc1, 0xef, 0x5d, 0x15, 0x47, 0xbb, 0x25, 0x9d, 0x73, 0x02, 0xcf, 0x84, 0x40, 0x01, 0x60, 0xa5, 0x99, 0xa3, 0xfd, 0x1d, 0x36, 0x8e, 0x4d, 0x8f, 0x13, 0x68, 0x48, 0xbc, 0x32, 0xb3, 0x45, 0xa7, 0x92, 0x6b, 0x95, 0x14, 0x0c, 0x31, 0x9d, 0xb3, 0x9d, 0x3d, 0x89, 0x47, 0x9d, 0x44, 0xae, 0xac, 0xc0, 0x5c, 0x8a, 0xf3, 0x7d, 0x55, 0x45, 0x0c, 0x1a, 0xe1, 0x14, 0xbe, 0xb5, 0x83, }; static const wycheproof_ecdh_test ecdh_secp521r1_5717 = { .name = "ecdh_secp521r1_5717", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5717_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5717_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5717_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5717_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 437 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5718 for ECDH, tcId is 438 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5718_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0xd9, 0x25, 0x4f, 0xdf, 0x80, 0x04, 0x96, 0xac, 0xb3, 0x37, 0x90, 0xb1, 0x03, 0xc5, 0xee, 0x9f, 0xac, 0x12, 0x83, 0x2f, 0xe5, 0x46, 0xc6, 0x32, 0x22, 0x5b, 0x0f, 0x7f, 0xce, 0x3d, 0xa4, 0x57, 0x4b, 0x1a, 0x87, 0x9b, 0x62, 0x3d, 0x72, 0x2f, 0xa8, 0xfc, 0x34, 0xd5, 0xfc, 0x2a, 0x87, 0x31, 0xaa, 0xd6, 0x91, 0xa9, 0xa8, 0xbb, 0x8b, 0x55, 0x4c, 0x95, 0xa0, 0x51, 0xd6, 0xaa, 0x50, 0x5a, 0xcf, }; static const unsigned char ecdh_secp521r1_5718_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5718_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5718_sharedsecret[] = { 0x01, 0xd6, 0x39, 0x65, 0xc1, 0x50, 0xdc, 0xc6, 0xc8, 0x34, 0xdd, 0x2a, 0x94, 0x46, 0xa9, 0x00, 0x6e, 0x01, 0x1a, 0xff, 0xb8, 0x24, 0x1a, 0x38, 0xe3, 0x40, 0x97, 0x52, 0xb7, 0xf4, 0x78, 0xd3, 0x2c, 0x6d, 0x46, 0x1f, 0x97, 0x82, 0x96, 0xa5, 0x73, 0x39, 0xff, 0x4a, 0xb1, 0xa3, 0x08, 0xf8, 0xfd, 0x03, 0x30, 0xa9, 0x32, 0x97, 0x9b, 0x3f, 0xc2, 0x36, 0x3d, 0x04, 0x53, 0x8e, 0x72, 0x51, 0x01, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_5718 = { .name = "ecdh_secp521r1_5718", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5718_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5718_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5718_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5718_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 438 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5719 for ECDH, tcId is 439 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5719_peerpubkey[] = { 0x01, 0x73, 0xde, 0x99, 0x09, 0x78, 0xda, 0x53, 0xa0, 0x5c, 0x46, 0x3a, 0x56, 0x73, 0x04, 0x72, 0x7b, 0xbc, 0x9d, 0xbe, 0xd8, 0xd5, 0xda, 0xb3, 0xba, 0xd1, 0x1d, 0x18, 0x04, 0xde, 0xa8, 0x64, 0xfb, 0xed, 0x5b, 0xbe, 0xc8, 0x07, 0xc1, 0x3e, 0x41, 0x28, 0x74, 0x9c, 0xf8, 0xc1, 0x17, 0x27, 0xa4, 0xc5, 0x28, 0xf9, 0x1f, 0xf0, 0x21, 0x7f, 0x95, 0x3a, 0x30, 0x48, 0xde, 0x5b, 0xa7, 0xa2, 0xb9, 0xad, 0x00, 0xf0, 0x21, 0x3d, 0x03, 0x2c, 0xc6, 0x74, 0xe1, 0x02, 0x9c, 0x71, 0xd1, 0x0c, 0xb3, 0xf9, 0x1d, 0xe5, 0x37, 0x53, 0xa0, 0x1d, 0x6d, 0xdc, 0x41, 0x06, 0x40, 0x36, 0xa4, 0x3d, 0x61, 0x3f, 0x2b, 0xb8, 0x3f, 0xb9, 0x99, 0x87, 0x4a, 0x0f, 0xad, 0xcf, 0x8a, 0x6d, 0x40, 0xb9, 0x17, 0x13, 0xcc, 0x91, 0x14, 0xbd, 0x44, 0xc0, 0xf1, 0x33, 0x3e, 0xf9, 0x8f, 0x0e, 0xfb, 0x63, 0x72, 0xa9, 0xa4, 0x53, }; static const unsigned char ecdh_secp521r1_5719_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5719_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5719_sharedsecret[] = { 0x00, 0x81, 0x5a, 0x61, 0xf2, 0xc7, 0x62, 0x2d, 0x1b, 0x9e, 0x33, 0x10, 0x10, 0x4a, 0x41, 0xc5, 0x76, 0x83, 0x5a, 0x29, 0xcf, 0x3a, 0x87, 0x5e, 0x3b, 0x10, 0x62, 0xe4, 0x58, 0x87, 0x16, 0xd2, 0x57, 0x77, 0xf0, 0xa9, 0x0f, 0xa6, 0xa9, 0x9a, 0x95, 0x22, 0x63, 0x20, 0xba, 0x22, 0x5b, 0x89, 0x65, 0xd0, 0xef, 0x5a, 0xf6, 0x74, 0xfb, 0xa6, 0x9a, 0x8a, 0xcb, 0x85, 0x0b, 0x77, 0x73, 0xbe, 0x0c, 0x82, }; static const wycheproof_ecdh_test ecdh_secp521r1_5719 = { .name = "ecdh_secp521r1_5719", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5719_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5719_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5719_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5719_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 439 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5720 for ECDH, tcId is 440 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5720_peerpubkey[] = { 0x01, 0x0f, 0x43, 0x66, 0x2f, 0x4b, 0xad, 0x61, 0x87, 0xad, 0x22, 0xa4, 0x1d, 0xfc, 0x83, 0x1d, 0xcb, 0xa2, 0x55, 0xaf, 0x6c, 0x4b, 0x5f, 0x1c, 0x14, 0xb2, 0xed, 0x54, 0x47, 0xf8, 0x8b, 0x65, 0xd6, 0x90, 0xb8, 0x75, 0x84, 0x8e, 0xa7, 0xa0, 0xc4, 0xef, 0xe5, 0x5b, 0x82, 0x14, 0x88, 0xd1, 0xb0, 0xf8, 0x5c, 0xda, 0x6e, 0x71, 0x73, 0xd8, 0x7e, 0x0d, 0x76, 0x44, 0x1a, 0xaf, 0x60, 0xe9, 0x60, 0xd1, 0x00, 0x17, 0xfa, 0x4b, 0x51, 0x09, 0x7c, 0x5e, 0xf9, 0xcb, 0x66, 0xd6, 0xc3, 0xeb, 0x85, 0x1e, 0x1a, 0x8a, 0x41, 0x10, 0x24, 0x52, 0xbd, 0x3f, 0x89, 0x02, 0xf1, 0x7e, 0xe7, 0x2a, 0xb0, 0x77, 0x22, 0x41, 0x51, 0x01, 0x44, 0x67, 0x46, 0x86, 0x41, 0x9c, 0x7c, 0xd5, 0x5a, 0x93, 0x09, 0x51, 0x16, 0x5b, 0xa0, 0x7d, 0x34, 0xc2, 0xc2, 0x0c, 0x42, 0x10, 0x69, 0xc1, 0xfe, 0x3d, 0x97, 0x67, 0x37, 0xa4, }; static const unsigned char ecdh_secp521r1_5720_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5720_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5720_sharedsecret[] = { 0x01, 0x10, 0xea, 0x8a, 0xf7, 0x65, 0x67, 0x35, 0x17, 0x66, 0xd7, 0xdd, 0xcb, 0x73, 0x43, 0xee, 0x04, 0xed, 0xd9, 0x50, 0x35, 0xf7, 0x27, 0xe6, 0xba, 0xe0, 0xd8, 0x9d, 0x50, 0x17, 0x01, 0x9a, 0x3d, 0xf7, 0x95, 0x54, 0xd1, 0xd0, 0xe8, 0x4f, 0xe3, 0x39, 0xa7, 0xc0, 0xfd, 0x79, 0x82, 0x9c, 0xda, 0xe1, 0x37, 0x2e, 0x5d, 0x99, 0x00, 0xa0, 0xdc, 0x8b, 0xac, 0x63, 0xae, 0x33, 0x06, 0x6d, 0x3f, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_5720 = { .name = "ecdh_secp521r1_5720", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5720_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5720_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5720_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5720_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates, tcId is 440 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5721 for ECDH, tcId is 441 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5721_peerpubkey[] = { 0x01, 0x21, 0x83, 0xff, 0xf5, 0x77, 0x7e, 0x31, 0x9e, 0x8c, 0xd2, 0x3a, 0xb5, 0x39, 0x2b, 0xaa, 0x9d, 0x4b, 0x1d, 0x43, 0xc7, 0xf8, 0xb0, 0x1f, 0x78, 0xf2, 0x95, 0xc0, 0xc3, 0x7d, 0x4a, 0x3a, 0x12, 0x2f, 0x88, 0xc1, 0x63, 0xa8, 0xf9, 0x64, 0x8d, 0x9d, 0xa2, 0x3b, 0x38, 0x9b, 0xa5, 0x6e, 0x8e, 0x9c, 0xa0, 0x22, 0xc2, 0xfe, 0x9c, 0x27, 0x3f, 0x25, 0x85, 0x42, 0x9a, 0x2d, 0xe4, 0x32, 0x95, 0xb9, 0x01, 0xe1, 0x8e, 0x9e, 0xaa, 0xf8, 0xa4, 0x06, 0xf1, 0x0b, 0x1d, 0xcb, 0xaa, 0x68, 0x47, 0x43, 0xa4, 0x3d, 0x20, 0x3f, 0x6c, 0xdd, 0xd8, 0x70, 0x9d, 0xb9, 0x0f, 0x43, 0xfe, 0x7b, 0x8b, 0x38, 0x15, 0xea, 0xd2, 0x04, 0x6b, 0x6b, 0x37, 0x23, 0x9e, 0x06, 0x5d, 0xa6, 0x2d, 0x79, 0x7c, 0xd0, 0xa7, 0x31, 0x22, 0xee, 0x9b, 0xf1, 0xbd, 0x00, 0xb0, 0xd8, 0x01, 0x29, 0x7a, 0x3d, 0x2b, 0xce, 0xfd, 0x0d, }; static const unsigned char ecdh_secp521r1_5721_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5721_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5721_sharedsecret[] = { 0x01, 0xf3, 0xc9, 0xb4, 0x4f, 0xaf, 0x75, 0x4b, 0xe2, 0x50, 0xc2, 0xed, 0x75, 0x65, 0x41, 0xc2, 0x61, 0xcb, 0x53, 0x79, 0x5a, 0x55, 0x5e, 0x92, 0x47, 0x82, 0xdc, 0x4f, 0x2c, 0x1d, 0xd4, 0xa3, 0x85, 0x5c, 0x82, 0x3f, 0x33, 0xbd, 0xfc, 0xb0, 0xf0, 0x50, 0x3e, 0xa3, 0xf9, 0xa9, 0x11, 0xe2, 0x42, 0x35, 0x37, 0x5a, 0x69, 0xda, 0x21, 0xa9, 0xae, 0x4c, 0x64, 0x77, 0x38, 0xb7, 0xe5, 0xc5, 0x29, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_5721 = { .name = "ecdh_secp521r1_5721", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5721_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5721_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5721_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5721_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 441 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5722 for ECDH, tcId is 442 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5722_peerpubkey[] = { 0x00, 0x96, 0x06, 0x8a, 0x51, 0x2e, 0x31, 0x7e, 0xc6, 0x35, 0x88, 0xff, 0x28, 0xd3, 0x80, 0xa8, 0xd7, 0xc9, 0x1e, 0x3a, 0x59, 0x27, 0x9c, 0x85, 0xf5, 0x41, 0x6e, 0x8e, 0xd3, 0x21, 0x74, 0x7b, 0x05, 0xd5, 0x37, 0xd1, 0x9d, 0x79, 0x73, 0x64, 0xaf, 0xce, 0x0e, 0x54, 0x8b, 0xfb, 0x75, 0x8e, 0x33, 0xcc, 0x6d, 0x75, 0x1b, 0x5c, 0x21, 0x79, 0x72, 0xde, 0x2e, 0xc4, 0xff, 0x00, 0x0c, 0xc1, 0x5d, 0xee, 0x00, 0x85, 0xaf, 0xf0, 0xf0, 0x25, 0x2a, 0xb4, 0x6f, 0xf8, 0x0d, 0x84, 0x9e, 0x14, 0x94, 0x3d, 0xe8, 0x14, 0x5d, 0xbb, 0x30, 0x7b, 0x4b, 0xc4, 0x5c, 0x9e, 0xed, 0xe7, 0x8c, 0x04, 0x0a, 0x08, 0x36, 0xd8, 0x04, 0x06, 0x77, 0x0c, 0x7c, 0x94, 0x59, 0xc0, 0x65, 0xc5, 0x33, 0x67, 0xe6, 0x83, 0x12, 0x8e, 0x8f, 0xc1, 0xdd, 0x89, 0x19, 0x0e, 0x74, 0x78, 0x93, 0xd9, 0xf2, 0x7e, 0x49, 0x61, 0x0b, 0xfb, }; static const unsigned char ecdh_secp521r1_5722_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5722_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5722_sharedsecret[] = { 0x01, 0xf5, 0x67, 0xd0, 0x11, 0x52, 0xc9, 0x06, 0x44, 0xbe, 0x34, 0xfc, 0x7f, 0x4d, 0xcd, 0xac, 0xda, 0x02, 0xe1, 0xe1, 0x4d, 0x80, 0xcd, 0xb3, 0x77, 0x61, 0x1a, 0x8c, 0x9a, 0x7a, 0x4d, 0x0f, 0xa5, 0x41, 0x3b, 0x9d, 0x41, 0x54, 0x10, 0xc9, 0xac, 0x6f, 0xf1, 0x46, 0x7c, 0xf3, 0x72, 0x35, 0xe5, 0x88, 0xd1, 0x14, 0xa5, 0x4e, 0x6f, 0x9e, 0x0a, 0x65, 0xb6, 0xd0, 0x2c, 0xdb, 0x82, 0x88, 0x98, 0x14, }; static const wycheproof_ecdh_test ecdh_secp521r1_5722 = { .name = "ecdh_secp521r1_5722", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5722_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5722_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5722_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5722_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 442 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5723 for ECDH, tcId is 443 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5723_peerpubkey[] = { 0x01, 0xbf, 0xd8, 0xc3, 0xe3, 0x46, 0xef, 0x88, 0x4b, 0x4b, 0x1c, 0x01, 0xfd, 0x27, 0x3e, 0x98, 0x2f, 0xed, 0x38, 0xb5, 0xc8, 0x04, 0x61, 0x65, 0xcc, 0x1e, 0x0d, 0xe8, 0x76, 0x78, 0x76, 0x90, 0xc1, 0x9c, 0x4e, 0xc2, 0x46, 0x06, 0xbc, 0x8e, 0x1e, 0xd8, 0x3a, 0x4c, 0xe1, 0x0b, 0x7a, 0x42, 0xe6, 0xdb, 0x19, 0xc7, 0xaa, 0x5e, 0x99, 0x71, 0x65, 0x4e, 0x57, 0x84, 0x2d, 0x41, 0xe7, 0x09, 0x85, 0xa3, 0x00, 0xb3, 0x57, 0x35, 0x14, 0x99, 0x60, 0x05, 0x60, 0xba, 0xfa, 0xa2, 0x5e, 0x24, 0x3a, 0xff, 0x7b, 0x33, 0x60, 0x2c, 0xf4, 0x1d, 0x35, 0x18, 0x49, 0x9e, 0x1b, 0x43, 0xba, 0x1e, 0x81, 0x4a, 0x0b, 0x45, 0xec, 0x01, 0xfe, 0x69, 0x47, 0x89, 0xe0, 0x15, 0x7a, 0x3c, 0x28, 0x1d, 0x17, 0xfa, 0x00, 0xe7, 0x01, 0x9f, 0x47, 0xae, 0x7a, 0x10, 0xce, 0x40, 0xed, 0x0c, 0xb7, 0xca, 0x56, 0xb4, 0x1e, 0x26, }; static const unsigned char ecdh_secp521r1_5723_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5723_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5723_sharedsecret[] = { 0x01, 0x81, 0x9c, 0xd3, 0xa3, 0xb3, 0x68, 0x83, 0xc4, 0x80, 0xc2, 0x70, 0xdb, 0x13, 0x9a, 0x94, 0xd7, 0xf9, 0x4a, 0xfd, 0x88, 0x79, 0xb3, 0x4e, 0xf6, 0x5a, 0x30, 0x4d, 0x0b, 0x9a, 0x62, 0x01, 0xa1, 0xdb, 0xcf, 0xcb, 0x8e, 0xe5, 0xc4, 0xe6, 0x66, 0x98, 0xd9, 0x8d, 0xd0, 0xe8, 0xbd, 0xd5, 0x3e, 0x56, 0x36, 0x28, 0xb1, 0x5a, 0xfe, 0x05, 0xf4, 0x82, 0x30, 0xfa, 0x1c, 0x52, 0x95, 0x2d, 0x89, 0x89, }; static const wycheproof_ecdh_test ecdh_secp521r1_5723 = { .name = "ecdh_secp521r1_5723", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5723_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5723_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5723_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5723_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 443 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5724 for ECDH, tcId is 444 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5724_peerpubkey[] = { 0x00, 0x0c, 0xc8, 0xc8, 0x4d, 0x1d, 0xb7, 0x1f, 0xb9, 0x15, 0x95, 0xf0, 0x07, 0x03, 0xdf, 0x25, 0x7f, 0x2a, 0x03, 0x05, 0x78, 0x47, 0xb4, 0xb9, 0x50, 0x6d, 0x3b, 0x26, 0x15, 0xa8, 0xb7, 0x24, 0x06, 0x2d, 0x93, 0xa6, 0x29, 0x54, 0x21, 0x9d, 0xf9, 0xec, 0x98, 0x62, 0x61, 0xfb, 0x77, 0x08, 0xea, 0xa1, 0x39, 0x54, 0x18, 0x2e, 0x10, 0x5e, 0x8e, 0x93, 0xc1, 0x11, 0xc0, 0xd2, 0xa8, 0xbd, 0xc5, 0x1d, 0x00, 0xe2, 0x0c, 0xc6, 0x48, 0x8c, 0x77, 0x61, 0xf3, 0x1a, 0x3e, 0x76, 0x26, 0x98, 0x55, 0x3e, 0x5f, 0x2b, 0xf4, 0x9b, 0x41, 0xa3, 0xa9, 0x5a, 0xc5, 0xb4, 0x82, 0x3c, 0x29, 0x75, 0x9c, 0x73, 0x81, 0x51, 0xc3, 0x01, 0x9c, 0xe9, 0xd3, 0xd9, 0xee, 0x74, 0x11, 0xa4, 0x10, 0x6d, 0x58, 0x10, 0xc8, 0xb8, 0xaa, 0xfd, 0x37, 0xf5, 0x44, 0xf1, 0xca, 0xf3, 0x7f, 0x6f, 0x5f, 0xad, 0x59, 0x2e, 0x59, 0xbd, }; static const unsigned char ecdh_secp521r1_5724_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5724_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5724_sharedsecret[] = { 0x00, 0x80, 0x85, 0x9c, 0x07, 0xca, 0xe1, 0x91, 0x1b, 0x75, 0x39, 0x64, 0xee, 0x17, 0x5c, 0x88, 0x84, 0xbd, 0x19, 0xab, 0xad, 0x66, 0x6e, 0x2e, 0x47, 0x2e, 0xd6, 0x32, 0x9e, 0x71, 0xf9, 0x51, 0x53, 0x42, 0x27, 0xb2, 0x74, 0x28, 0x05, 0xc6, 0xe6, 0x31, 0x0f, 0x6e, 0xa3, 0x23, 0x0b, 0xd4, 0x03, 0xc2, 0x26, 0x0e, 0x97, 0xb0, 0xd7, 0xf1, 0x27, 0x40, 0x27, 0xf7, 0xe6, 0x9f, 0xc7, 0xb8, 0x12, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_5724 = { .name = "ecdh_secp521r1_5724", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5724_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5724_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5724_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5724_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 444 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5725 for ECDH, tcId is 445 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5725_peerpubkey[] = { 0x00, 0x54, 0x94, 0x02, 0x37, 0x09, 0xee, 0x6a, 0xe3, 0x9d, 0x0c, 0x5b, 0x67, 0xd9, 0x59, 0xf5, 0xf8, 0xcb, 0xd1, 0xbe, 0xa9, 0x64, 0x42, 0x93, 0x3a, 0x89, 0x29, 0xe3, 0x32, 0xb7, 0x04, 0xf7, 0x14, 0x6e, 0xcc, 0x68, 0x9b, 0x7f, 0xdb, 0x85, 0xc8, 0x3f, 0x3a, 0x60, 0x84, 0x6e, 0x69, 0x2d, 0xde, 0x0c, 0x27, 0x48, 0xcd, 0x7b, 0xec, 0xbb, 0x0d, 0x6b, 0x4c, 0x7c, 0x0c, 0x0f, 0x79, 0x3f, 0x3a, 0xde, 0x01, 0xa7, 0x7d, 0x75, 0xc2, 0x60, 0x06, 0x87, 0x24, 0x18, 0x43, 0xe2, 0xeb, 0x6a, 0xc8, 0x1a, 0xb1, 0x9d, 0x0f, 0x8a, 0x97, 0x47, 0x98, 0x8c, 0x03, 0xf2, 0xc7, 0x70, 0x59, 0x3d, 0xfa, 0x48, 0x04, 0x8f, 0x28, 0x16, 0xe3, 0x85, 0x6c, 0x5f, 0x11, 0xce, 0x3c, 0xdc, 0xca, 0x3a, 0xe0, 0xe1, 0xf1, 0x37, 0x18, 0xc2, 0xc5, 0xdb, 0x2c, 0x1c, 0x85, 0x9f, 0x7c, 0xae, 0xff, 0xff, 0xdf, 0xd6, 0x29, 0xfc, }; static const unsigned char ecdh_secp521r1_5725_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5725_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5725_sharedsecret[] = { 0x00, 0x9d, 0x53, 0x2a, 0xf8, 0xd9, 0x9d, 0xfc, 0x0c, 0xe9, 0x3e, 0x2b, 0x63, 0x30, 0x5b, 0x1f, 0x05, 0x5c, 0x42, 0xaf, 0xff, 0x3f, 0xa9, 0x01, 0x11, 0xb0, 0x71, 0x34, 0x1c, 0xca, 0xd4, 0x5b, 0xa6, 0x3a, 0xd9, 0xed, 0x3a, 0x14, 0x1e, 0x95, 0xc0, 0xcd, 0x0d, 0x70, 0xe7, 0x8a, 0x7e, 0xbd, 0x82, 0xc2, 0x2e, 0x68, 0xfa, 0xc4, 0x6a, 0xa5, 0xc9, 0x33, 0x5a, 0x95, 0x56, 0x31, 0xf9, 0xb7, 0xc6, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5725 = { .name = "ecdh_secp521r1_5725", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5725_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5725_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5725_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5725_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 445 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5726 for ECDH, tcId is 446 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5726_peerpubkey[] = { 0x00, 0x91, 0x28, 0x09, 0xb7, 0x3f, 0x50, 0x47, 0x5a, 0x3b, 0x97, 0xe9, 0x60, 0x2b, 0x75, 0x7e, 0xb2, 0xe9, 0x4f, 0xd2, 0x45, 0xe4, 0x83, 0x04, 0x0e, 0x16, 0x7b, 0x83, 0x38, 0x40, 0xa6, 0x2d, 0xf2, 0x79, 0x12, 0xa9, 0xc2, 0xe0, 0x31, 0x7d, 0xbf, 0xe5, 0x8d, 0xc4, 0x3b, 0xa2, 0x05, 0x3d, 0xee, 0xde, 0x5e, 0xca, 0x2b, 0x22, 0xbd, 0x06, 0x79, 0x20, 0x01, 0xdb, 0xca, 0xa7, 0xea, 0x6b, 0x70, 0x00, 0x00, 0x43, 0x8e, 0x5b, 0xb8, 0x4f, 0x3e, 0xf7, 0x86, 0x51, 0x52, 0xb2, 0x31, 0x7d, 0x8d, 0xf0, 0xc6, 0x91, 0xc3, 0xd2, 0xbe, 0xd2, 0x46, 0x7d, 0x5e, 0x75, 0x07, 0x26, 0x8a, 0x7b, 0xa9, 0x8c, 0xab, 0x4e, 0x46, 0x08, 0xce, 0xa0, 0xf5, 0xfb, 0xf5, 0x0f, 0xd0, 0xa4, 0x87, 0xd0, 0x05, 0xb3, 0x81, 0x90, 0x5c, 0x95, 0xaa, 0xf6, 0xa1, 0x8c, 0xd1, 0xa2, 0xdb, 0xd6, 0x74, 0x2b, 0x5b, 0x05, 0xba, 0x71, }; static const unsigned char ecdh_secp521r1_5726_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5726_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5726_sharedsecret[] = { 0x00, 0x1b, 0x01, 0x8f, 0xec, 0xf2, 0xc0, 0x78, 0x11, 0xa5, 0x4b, 0x43, 0xa0, 0xb2, 0x84, 0xc9, 0x96, 0xee, 0xcc, 0x77, 0x42, 0x21, 0x02, 0x69, 0x37, 0x3c, 0x39, 0xdb, 0xa2, 0x99, 0xd1, 0xab, 0x91, 0xc7, 0x78, 0xb0, 0xdf, 0x40, 0xaa, 0xa5, 0x25, 0x30, 0x76, 0x66, 0x50, 0xff, 0x11, 0x78, 0xde, 0x05, 0xb6, 0x9c, 0x3b, 0xc4, 0x6b, 0x29, 0xd1, 0xaf, 0x19, 0x34, 0x33, 0xfa, 0x12, 0x5e, 0xb9, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5726 = { .name = "ecdh_secp521r1_5726", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5726_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5726_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5726_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5726_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 446 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5727 for ECDH, tcId is 447 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5727_peerpubkey[] = { 0x00, 0x43, 0xcf, 0xe2, 0xc3, 0x0d, 0x3f, 0x9f, 0x0f, 0xf9, 0x6e, 0x0e, 0x37, 0xf6, 0x1e, 0xb2, 0xde, 0xa3, 0x81, 0x69, 0x99, 0xc9, 0x1c, 0x5b, 0x77, 0x95, 0x7e, 0xf9, 0x2b, 0x0e, 0xcd, 0xe0, 0x92, 0xc7, 0x50, 0x4b, 0xa5, 0x74, 0x06, 0xea, 0xdd, 0x74, 0x43, 0x81, 0x90, 0x63, 0x37, 0xcd, 0x13, 0xae, 0x45, 0x55, 0xe5, 0x0a, 0x9e, 0xb2, 0x57, 0x16, 0x8c, 0x21, 0x40, 0xe8, 0x28, 0xa4, 0x6a, 0xd3, 0x00, 0x05, 0xc1, 0x29, 0xfa, 0x97, 0x25, 0xa8, 0x2d, 0x3e, 0x6d, 0xa7, 0x21, 0xec, 0x0d, 0x14, 0x12, 0xff, 0x6d, 0x6a, 0x2d, 0x8f, 0x75, 0xbf, 0xc7, 0xb2, 0xb6, 0xaa, 0xdc, 0x5f, 0xad, 0x86, 0xfc, 0x1a, 0x8a, 0x67, 0xcd, 0x7e, 0x6b, 0x7a, 0xab, 0x42, 0xa5, 0x46, 0x17, 0x9c, 0x6e, 0x05, 0x60, 0x55, 0x4d, 0xb5, 0xf6, 0x13, 0x8a, 0x7e, 0xf2, 0xdc, 0x79, 0xd2, 0xbe, 0x38, 0x53, 0x56, 0xc9, 0xea, }; static const unsigned char ecdh_secp521r1_5727_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5727_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5727_sharedsecret[] = { 0x00, 0x14, 0x50, 0xd8, 0x40, 0x2f, 0x26, 0x9d, 0xfb, 0x63, 0x64, 0x99, 0xf1, 0x64, 0x54, 0x45, 0x10, 0x6c, 0x3d, 0x95, 0xf9, 0x30, 0x80, 0xc9, 0x94, 0x72, 0x6d, 0xb7, 0xe4, 0x3f, 0xb6, 0x84, 0x88, 0xf7, 0x43, 0x0f, 0x6d, 0x17, 0x15, 0x43, 0xa1, 0x27, 0x03, 0x8c, 0x93, 0x02, 0x64, 0xe6, 0x0d, 0xbf, 0x0f, 0x48, 0xd3, 0x32, 0xaf, 0x21, 0x0e, 0xcd, 0x32, 0x32, 0x0b, 0x1c, 0xb9, 0x0a, 0xcf, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_5727 = { .name = "ecdh_secp521r1_5727", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5727_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5727_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5727_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5727_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 447 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5728 for ECDH, tcId is 448 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5728_peerpubkey[] = { 0x01, 0x2e, 0xda, 0x90, 0x20, 0xc6, 0x65, 0xae, 0x69, 0xa5, 0x06, 0xac, 0x6b, 0x32, 0x87, 0x46, 0x5e, 0x0f, 0xc0, 0x13, 0x7b, 0x21, 0x07, 0x5c, 0xfb, 0x6c, 0x69, 0x96, 0x3d, 0x9a, 0xcb, 0x39, 0xa2, 0x6c, 0xa9, 0x40, 0xc3, 0xa3, 0x9e, 0x0d, 0x94, 0xc0, 0x54, 0x67, 0x2f, 0xfc, 0x17, 0x61, 0xe5, 0x6d, 0xed, 0x3c, 0x18, 0x0f, 0x00, 0x68, 0x57, 0xd1, 0x31, 0xdc, 0x34, 0xa5, 0xac, 0xe7, 0xfd, 0x50, 0x01, 0x70, 0x9e, 0x8a, 0x2c, 0xd9, 0x9e, 0x1e, 0x20, 0x16, 0xc2, 0x4f, 0x1c, 0x54, 0x85, 0xe3, 0xc4, 0x79, 0x47, 0xbc, 0xc6, 0xef, 0xbe, 0xbd, 0x22, 0x11, 0xc0, 0xd5, 0x29, 0xa8, 0x3d, 0x09, 0x7a, 0xc6, 0x11, 0xaa, 0x50, 0xd7, 0x87, 0x99, 0x79, 0xf4, 0xbe, 0x2d, 0x9c, 0xec, 0xc1, 0x63, 0x60, 0xfe, 0x4b, 0x94, 0x9e, 0xa9, 0x97, 0x0f, 0x10, 0x75, 0xcb, 0xf9, 0x57, 0xf0, 0x31, 0xcc, 0xfd, 0xb2, }; static const unsigned char ecdh_secp521r1_5728_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5728_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5728_sharedsecret[] = { 0x00, 0x78, 0x46, 0xa2, 0x0b, 0x43, 0xa4, 0x98, 0x27, 0x79, 0x04, 0x68, 0x6f, 0x37, 0x66, 0xb9, 0xa3, 0xad, 0x99, 0x4d, 0xc6, 0x13, 0x29, 0xdb, 0x3a, 0xe9, 0xd9, 0x76, 0x18, 0xb8, 0x13, 0x0c, 0x2b, 0xbe, 0xce, 0x0d, 0xa7, 0xe2, 0xc7, 0x9d, 0xbd, 0x0e, 0x1d, 0xc8, 0x30, 0x3a, 0xe5, 0xf9, 0x90, 0x3d, 0x97, 0x15, 0x7d, 0x0a, 0x74, 0xdb, 0x7f, 0x46, 0x5a, 0xbe, 0x99, 0x65, 0xcf, 0xa8, 0x3e, 0xee, }; static const wycheproof_ecdh_test ecdh_secp521r1_5728 = { .name = "ecdh_secp521r1_5728", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5728_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5728_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5728_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5728_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 448 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5729 for ECDH, tcId is 449 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5729_peerpubkey[] = { 0x00, 0x08, 0x4b, 0xa1, 0xcb, 0x8f, 0x33, 0xcf, 0xba, 0x89, 0xd1, 0xc1, 0x4e, 0xd2, 0xb5, 0x0d, 0xa7, 0x37, 0xa0, 0x5a, 0xe0, 0xa4, 0xca, 0x35, 0xfe, 0xde, 0x3b, 0x26, 0x32, 0x4d, 0x3b, 0xe7, 0x4f, 0x5e, 0x33, 0x20, 0xa9, 0x0b, 0xf3, 0x88, 0xbc, 0xf8, 0xbb, 0xcc, 0x4c, 0x3c, 0x1c, 0x88, 0xed, 0x52, 0x10, 0x3c, 0xc7, 0xc5, 0xca, 0x2b, 0x59, 0xcc, 0xd3, 0xe7, 0xdf, 0xab, 0x6d, 0x2f, 0x4b, 0xdc, 0x01, 0xa3, 0xf1, 0x75, 0xc3, 0xc8, 0xa8, 0x9d, 0x4f, 0xda, 0x95, 0xd4, 0x7b, 0x2d, 0x4f, 0x30, 0x47, 0xae, 0xbc, 0x75, 0xca, 0x7e, 0xa4, 0x16, 0xed, 0x76, 0xd8, 0xe6, 0x89, 0xd7, 0xeb, 0xe7, 0xe9, 0x77, 0x73, 0x7b, 0xc6, 0xef, 0xf9, 0x73, 0x3e, 0x6a, 0x6c, 0x05, 0x93, 0x48, 0x6e, 0x62, 0x83, 0x4f, 0xf4, 0x61, 0x21, 0xb7, 0x2f, 0xde, 0x5b, 0x33, 0x59, 0xfa, 0x70, 0x7f, 0xba, 0x6d, 0x67, 0xcc, }; static const unsigned char ecdh_secp521r1_5729_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5729_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5729_sharedsecret[] = { 0x01, 0x8e, 0x64, 0x5f, 0xbe, 0xdd, 0x9f, 0x12, 0xd4, 0x47, 0x4d, 0xb1, 0x20, 0x6a, 0xa6, 0x70, 0x57, 0xe0, 0x8d, 0xf5, 0x67, 0xc1, 0xee, 0xcb, 0xda, 0x39, 0x5e, 0xdb, 0x20, 0x49, 0xf7, 0x70, 0x90, 0x8e, 0x35, 0x15, 0xcc, 0xe7, 0x79, 0xe3, 0x71, 0x69, 0xeb, 0xc0, 0x26, 0xeb, 0x5c, 0x35, 0x30, 0x40, 0x05, 0x8d, 0xa8, 0x5f, 0xba, 0xbd, 0x67, 0x4c, 0x8d, 0x52, 0xa7, 0x8a, 0x39, 0x72, 0x31, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_5729 = { .name = "ecdh_secp521r1_5729", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5729_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5729_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5729_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5729_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 449 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5730 for ECDH, tcId is 450 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5730_peerpubkey[] = { 0x01, 0xea, 0x36, 0xce, 0x4e, 0x51, 0xbb, 0xb3, 0x33, 0xea, 0x94, 0x2a, 0x53, 0x25, 0xe1, 0x41, 0x08, 0x96, 0xe7, 0x36, 0x52, 0xc2, 0x83, 0x3b, 0x46, 0x22, 0x62, 0xda, 0x5d, 0x79, 0x1b, 0x18, 0x35, 0x53, 0x8b, 0x06, 0xcd, 0x9d, 0x7b, 0x97, 0x41, 0xf3, 0x41, 0x4d, 0x52, 0x0d, 0xa8, 0x7f, 0x8b, 0xe0, 0xbe, 0x21, 0x80, 0x43, 0xb0, 0x5c, 0xad, 0x61, 0xb9, 0x3b, 0x0b, 0xc0, 0x48, 0x4e, 0x0b, 0x28, 0x01, 0xec, 0xe2, 0x8d, 0xf4, 0xd9, 0xca, 0x3f, 0xfb, 0x23, 0xd6, 0x9c, 0x36, 0x96, 0x6c, 0xc2, 0x6b, 0x49, 0x2f, 0x70, 0x10, 0xdf, 0xac, 0xa6, 0x7b, 0x4b, 0xde, 0xd7, 0x1c, 0xf7, 0x4c, 0x2b, 0x0a, 0x86, 0xe6, 0x1b, 0xc7, 0x79, 0x03, 0x39, 0x7e, 0xb8, 0xa4, 0x36, 0x23, 0x79, 0xf0, 0x94, 0x92, 0xaa, 0x63, 0xd9, 0xc9, 0xf5, 0xff, 0x30, 0xd1, 0x05, 0xb5, 0x30, 0xc0, 0x1f, 0x46, 0xcd, 0x7c, 0xdc, }; static const unsigned char ecdh_secp521r1_5730_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5730_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5730_sharedsecret[] = { 0x01, 0x91, 0x2a, 0xa1, 0x77, 0xea, 0x8f, 0x88, 0x78, 0x44, 0x7b, 0x4a, 0x19, 0xda, 0x17, 0xd4, 0x82, 0x35, 0x7a, 0x27, 0x2d, 0xea, 0x19, 0xb5, 0x42, 0x39, 0x8a, 0x6b, 0xb4, 0x8b, 0x80, 0x59, 0x87, 0x54, 0xae, 0x27, 0xc7, 0x39, 0x58, 0x04, 0x6a, 0xaa, 0x1c, 0x69, 0x95, 0x13, 0x02, 0x72, 0x7d, 0xdd, 0xaa, 0xf9, 0x66, 0xf0, 0x3f, 0xf5, 0xb7, 0x23, 0xac, 0xb7, 0xdb, 0x7f, 0xcc, 0xf3, 0xa6, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp521r1_5730 = { .name = "ecdh_secp521r1_5730", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5730_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5730_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5730_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5730_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 450 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5731 for ECDH, tcId is 451 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5731_peerpubkey[] = { 0x00, 0x9c, 0x96, 0x02, 0x4f, 0xac, 0x77, 0xe6, 0x4b, 0x84, 0x6f, 0x14, 0x1c, 0xd1, 0x01, 0x1f, 0x2a, 0xd5, 0x2e, 0x3a, 0xa5, 0x51, 0x10, 0x3b, 0x96, 0xe3, 0x5b, 0x43, 0x9c, 0xf8, 0x9c, 0x03, 0x04, 0x29, 0x3f, 0x1b, 0xfb, 0x52, 0x2f, 0x98, 0x1f, 0xbb, 0x56, 0x92, 0x1d, 0xb8, 0x71, 0x51, 0xe7, 0x97, 0xd0, 0x7f, 0x11, 0x27, 0xa0, 0x1c, 0x3f, 0x3d, 0xe5, 0x6d, 0xd4, 0x99, 0x65, 0x6c, 0x10, 0x3b, 0x01, 0x77, 0xb6, 0x7f, 0xb2, 0x67, 0x8b, 0x72, 0x0d, 0x08, 0xed, 0x05, 0xa5, 0xc0, 0x6b, 0xcf, 0x88, 0x13, 0x42, 0x01, 0xc1, 0x92, 0x99, 0x7f, 0xc6, 0xdc, 0x15, 0xf8, 0x20, 0xb6, 0x0b, 0xcc, 0x0f, 0x77, 0x7d, 0x06, 0x61, 0xbd, 0x8f, 0x81, 0xcf, 0xed, 0x59, 0xde, 0xec, 0x33, 0xcd, 0x69, 0x6e, 0x1c, 0x1e, 0xf7, 0x2c, 0x76, 0x66, 0xcd, 0x5a, 0xed, 0x49, 0xeb, 0x32, 0x57, 0x14, 0x73, 0x9b, 0xed, }; static const unsigned char ecdh_secp521r1_5731_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5731_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5731_sharedsecret[] = { 0x00, 0x6a, 0x5b, 0x0c, 0x09, 0xa7, 0xbd, 0xef, 0x31, 0x6d, 0x25, 0xf3, 0x95, 0x79, 0x27, 0x9e, 0x28, 0x6b, 0x78, 0x1c, 0x2e, 0x43, 0x0f, 0x20, 0x1c, 0x54, 0xcf, 0xc9, 0xe1, 0x54, 0xa3, 0x8e, 0xc3, 0x1e, 0xee, 0x9d, 0x09, 0xf6, 0xd5, 0xae, 0xd4, 0x50, 0x56, 0xc5, 0xb7, 0xbb, 0x44, 0x21, 0x3c, 0x63, 0x57, 0xc7, 0x49, 0x2d, 0x1f, 0xd9, 0xb1, 0xc7, 0xdb, 0xa1, 0x16, 0xfa, 0x51, 0xd2, 0x1c, 0xfa, }; static const wycheproof_ecdh_test ecdh_secp521r1_5731 = { .name = "ecdh_secp521r1_5731", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5731_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5731_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5731_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5731_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 451 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5732 for ECDH, tcId is 452 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5732_peerpubkey[] = { 0x00, 0x8d, 0x4d, 0x67, 0x7a, 0xaa, 0xef, 0x39, 0x25, 0xa1, 0xd4, 0x1f, 0xce, 0x4d, 0x30, 0x54, 0x3a, 0x1f, 0xa3, 0x3a, 0x2b, 0x30, 0x51, 0xb3, 0x67, 0xcf, 0xdf, 0x1b, 0x8d, 0xa7, 0xcd, 0x1a, 0xb6, 0x7c, 0xe9, 0xbb, 0x25, 0x5e, 0x60, 0x47, 0x56, 0x84, 0x44, 0x3c, 0xf1, 0x9e, 0xa2, 0xe1, 0xf0, 0x1e, 0x58, 0xfd, 0x79, 0xf4, 0x77, 0x25, 0x66, 0x1b, 0xe2, 0x08, 0x76, 0x7c, 0xb2, 0xa1, 0x75, 0x30, 0x01, 0x0b, 0xe1, 0x75, 0xe2, 0x4d, 0x3b, 0xbf, 0x27, 0xdc, 0xad, 0x25, 0x96, 0xb8, 0x09, 0x0c, 0x7f, 0x2e, 0x00, 0x59, 0x01, 0x03, 0x86, 0x57, 0x28, 0x4a, 0x80, 0xff, 0x77, 0xd3, 0x89, 0x4a, 0x29, 0xee, 0x2d, 0x7d, 0xaa, 0x58, 0x80, 0xb3, 0xba, 0x05, 0x22, 0x61, 0xe4, 0x79, 0x6f, 0x13, 0x2d, 0xb9, 0xe8, 0xa9, 0x78, 0x1f, 0xac, 0xb3, 0x2b, 0xd8, 0xa0, 0x9b, 0xab, 0xd9, 0xe0, 0xcb, 0xa9, 0x18, }; static const unsigned char ecdh_secp521r1_5732_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5732_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5732_sharedsecret[] = { 0x00, 0x65, 0x2f, 0xba, 0xa4, 0x11, 0xad, 0x31, 0x6d, 0xea, 0x40, 0xa3, 0x7d, 0x37, 0x98, 0xd0, 0xc0, 0x3c, 0xa7, 0xca, 0x59, 0x0d, 0x8e, 0xea, 0xee, 0x45, 0x4c, 0x7d, 0x24, 0xff, 0x1c, 0x4e, 0xc7, 0xdf, 0xfd, 0x5e, 0xf3, 0xe9, 0x07, 0x62, 0xd5, 0x53, 0x9c, 0x5a, 0x57, 0xe7, 0x45, 0xb9, 0xc0, 0xf8, 0x8e, 0x18, 0xff, 0xf6, 0xf7, 0x37, 0x72, 0x9e, 0x67, 0x60, 0x6d, 0xdf, 0xe3, 0xa7, 0x75, 0x19, }; static const wycheproof_ecdh_test ecdh_secp521r1_5732 = { .name = "ecdh_secp521r1_5732", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5732_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5732_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5732_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5732_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 452 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5733 for ECDH, tcId is 453 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5733_peerpubkey[] = { 0x00, 0x9b, 0x76, 0xbf, 0xa3, 0x96, 0xb3, 0x70, 0x63, 0x81, 0x55, 0x2a, 0xd0, 0x8f, 0xb3, 0xb9, 0xf9, 0x2b, 0x49, 0x2c, 0x43, 0xd6, 0x10, 0x2b, 0x7c, 0x02, 0xcc, 0xa4, 0x01, 0x77, 0x18, 0xe0, 0x64, 0x34, 0x78, 0xc0, 0xd7, 0x37, 0x65, 0xc2, 0x79, 0x58, 0x13, 0x8c, 0x7f, 0x6d, 0x23, 0xb4, 0xe8, 0x3b, 0xaa, 0xf2, 0x7e, 0xaf, 0x21, 0x7e, 0xd5, 0x65, 0xe6, 0x60, 0x2b, 0x4d, 0x08, 0x02, 0x00, 0xb1, 0x01, 0x7b, 0xa7, 0xae, 0xfc, 0x45, 0x67, 0x7b, 0x8c, 0x4d, 0x4c, 0xa4, 0x68, 0xe8, 0xa9, 0xf5, 0xa2, 0xfc, 0x41, 0x1a, 0x4a, 0xf4, 0xff, 0x45, 0x93, 0xa9, 0xb7, 0x81, 0xf1, 0x35, 0x7a, 0xae, 0x46, 0x98, 0x86, 0x42, 0xa1, 0x25, 0x4d, 0x6c, 0xf5, 0x88, 0x70, 0x8e, 0xfe, 0x60, 0xb2, 0xdf, 0xab, 0x15, 0xd3, 0x71, 0xba, 0x4f, 0x4d, 0x9e, 0x09, 0xe6, 0x1f, 0x06, 0xd4, 0xd2, 0x43, 0xe5, 0xec, 0x57, }; static const unsigned char ecdh_secp521r1_5733_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5733_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5733_sharedsecret[] = { 0x00, 0xb1, 0xae, 0x05, 0xc2, 0xa9, 0x1f, 0x7e, 0x1e, 0x9d, 0x62, 0x6b, 0x1a, 0x46, 0xbe, 0xd2, 0x00, 0x9d, 0xd6, 0x66, 0x2e, 0x71, 0x24, 0x16, 0xe1, 0x9c, 0x1b, 0xe9, 0xe5, 0xe5, 0x12, 0xec, 0x73, 0x41, 0x27, 0xad, 0xaf, 0xe6, 0x12, 0x9a, 0x83, 0xd7, 0x4b, 0xa7, 0xa7, 0x97, 0xf4, 0x1a, 0xfc, 0x4b, 0x11, 0x45, 0xa1, 0x6f, 0x6e, 0x38, 0x91, 0x69, 0xc8, 0xb6, 0x59, 0x2b, 0xf6, 0x28, 0xf7, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_5733 = { .name = "ecdh_secp521r1_5733", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5733_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5733_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5733_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5733_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 453 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5734 for ECDH, tcId is 454 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5734_peerpubkey[] = { 0x01, 0x00, 0x89, 0x19, 0x0e, 0x9b, 0x63, 0xf5, 0xa2, 0x9e, 0x41, 0xb5, 0xa1, 0x83, 0x7d, 0x9b, 0xf4, 0x1c, 0x0b, 0x2c, 0xa1, 0x07, 0xd6, 0xd0, 0x88, 0xf4, 0xc1, 0xd4, 0x68, 0x77, 0x31, 0x50, 0xd7, 0xd1, 0x45, 0xcc, 0xe7, 0x0a, 0x24, 0x08, 0x27, 0x26, 0x83, 0x71, 0x14, 0x4e, 0x4a, 0xcd, 0xda, 0x79, 0xd0, 0x9a, 0x51, 0xb3, 0x1c, 0xa2, 0x0b, 0xac, 0x11, 0x97, 0xe6, 0x19, 0xd1, 0xa8, 0x4f, 0x4d, 0x01, 0x22, 0xc6, 0x38, 0xc0, 0x69, 0x12, 0x58, 0x65, 0x80, 0xc7, 0xa7, 0xde, 0xe4, 0x29, 0xb1, 0xba, 0x00, 0x0f, 0x62, 0x85, 0xb7, 0xfd, 0xa4, 0x41, 0x38, 0x8c, 0x32, 0x3c, 0x08, 0x95, 0xff, 0x90, 0x44, 0x3f, 0x06, 0x15, 0x01, 0x1c, 0xaa, 0x33, 0x26, 0x22, 0xe6, 0x7e, 0xde, 0x86, 0x7a, 0x8c, 0x44, 0x53, 0x35, 0x44, 0x4e, 0xa1, 0x12, 0xe8, 0x05, 0x32, 0xd5, 0xf6, 0xdf, 0x14, 0x08, 0xe7, 0x2b, }; static const unsigned char ecdh_secp521r1_5734_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5734_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5734_sharedsecret[] = { 0x00, 0x03, 0x7d, 0x3e, 0x43, 0x59, 0xc3, 0x26, 0xf7, 0x4a, 0x8c, 0xdc, 0xc4, 0xbb, 0x82, 0x09, 0x0e, 0x93, 0xbd, 0x48, 0x75, 0x7b, 0x6c, 0xaf, 0x74, 0x9f, 0xb3, 0x9a, 0x83, 0xf9, 0x92, 0xa7, 0xfa, 0x96, 0x76, 0xad, 0x46, 0x6c, 0x8d, 0x71, 0x93, 0x90, 0x22, 0x14, 0xda, 0xbc, 0xfc, 0x10, 0x4b, 0xc8, 0x66, 0x4e, 0xb9, 0x34, 0xa2, 0xdf, 0x64, 0x8b, 0x2e, 0x1f, 0x40, 0x1d, 0x74, 0x5e, 0x16, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5734 = { .name = "ecdh_secp521r1_5734", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5734_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5734_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5734_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5734_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 454 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5735 for ECDH, tcId is 455 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5735_peerpubkey[] = { 0x00, 0x70, 0x55, 0x05, 0x37, 0xe3, 0x85, 0xe4, 0x60, 0x14, 0x90, 0xac, 0x5a, 0x78, 0x34, 0x8e, 0xf2, 0x66, 0x78, 0xa4, 0xab, 0x3a, 0x74, 0x69, 0xf2, 0x99, 0xdc, 0x49, 0x3b, 0xd2, 0x97, 0x64, 0x16, 0xf6, 0x49, 0xee, 0x3e, 0x3c, 0xdd, 0x77, 0x19, 0x1d, 0x8f, 0x8f, 0x9d, 0x60, 0x0e, 0x8c, 0xb9, 0xfd, 0xe3, 0xaf, 0xe6, 0x35, 0xe2, 0x24, 0x63, 0x5b, 0x70, 0xfa, 0x79, 0xeb, 0x10, 0x53, 0x74, 0x4f, 0x00, 0x0a, 0x54, 0x69, 0x59, 0xae, 0x4a, 0xbc, 0xda, 0x82, 0x74, 0x29, 0xa4, 0x7a, 0x8c, 0xbc, 0x6a, 0xfe, 0x42, 0xfa, 0x0f, 0x83, 0x91, 0x29, 0x3d, 0xa7, 0x78, 0xbe, 0x29, 0x6c, 0x72, 0x2e, 0x02, 0xc7, 0xff, 0x55, 0xe2, 0x0c, 0x11, 0x95, 0x31, 0xd2, 0x11, 0x17, 0x3f, 0x02, 0xeb, 0x10, 0x8f, 0xe1, 0xb8, 0xbb, 0x10, 0xd4, 0x65, 0xc7, 0x15, 0x8d, 0xd3, 0xcb, 0x2d, 0x9f, 0x32, 0x0d, 0x17, 0x11, }; static const unsigned char ecdh_secp521r1_5735_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5735_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5735_sharedsecret[] = { 0x01, 0x8e, 0x22, 0xa6, 0x3d, 0xfe, 0xb1, 0x4f, 0x28, 0xd4, 0xf3, 0x38, 0xb7, 0x84, 0x55, 0x87, 0x78, 0x51, 0xe9, 0x5b, 0x34, 0x97, 0x96, 0x24, 0x5e, 0xff, 0xa8, 0x30, 0xe2, 0x9e, 0xa1, 0x97, 0x84, 0x99, 0xf0, 0x7a, 0xd9, 0x70, 0x4b, 0x35, 0x27, 0x46, 0xda, 0xc3, 0x0b, 0xfb, 0xb8, 0x27, 0xe1, 0xf0, 0x0b, 0x97, 0x9f, 0x64, 0x2b, 0xb8, 0x86, 0xf1, 0x56, 0xb5, 0x38, 0xac, 0x6b, 0xe9, 0x17, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_5735 = { .name = "ecdh_secp521r1_5735", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5735_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5735_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5735_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5735_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 455 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5736 for ECDH, tcId is 456 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5736_peerpubkey[] = { 0x00, 0x01, 0xb6, 0x69, 0x58, 0x93, 0x1e, 0xf3, 0x0c, 0x54, 0xf8, 0x31, 0x95, 0xcc, 0x40, 0x53, 0x0c, 0x0e, 0x44, 0xba, 0xa2, 0x23, 0xd2, 0x8d, 0x8b, 0xfa, 0xab, 0xf1, 0x0d, 0x16, 0x30, 0x2f, 0x3a, 0x19, 0x60, 0x1f, 0xb7, 0x4e, 0xfc, 0xbe, 0xfc, 0x1b, 0x71, 0xd1, 0xe8, 0x1a, 0xe4, 0xf6, 0x0b, 0x3f, 0x8d, 0x7c, 0x21, 0xde, 0x1d, 0xfa, 0xfd, 0x5c, 0xf1, 0x9c, 0x94, 0xb3, 0x96, 0x41, 0x0c, 0x39, 0x00, 0x8f, 0x13, 0xc4, 0x2f, 0xf4, 0x6d, 0x1a, 0x18, 0xf3, 0xd9, 0x75, 0xfd, 0xbc, 0x0b, 0xbb, 0x43, 0xc3, 0x1d, 0xa9, 0x42, 0x3f, 0xa9, 0x35, 0xf4, 0xc2, 0x11, 0x43, 0x55, 0x18, 0xa0, 0x14, 0x37, 0xbf, 0xae, 0xb6, 0xaa, 0xf0, 0x31, 0xf9, 0x2b, 0x0c, 0x37, 0xd7, 0x62, 0x90, 0xff, 0x68, 0x23, 0x78, 0xc2, 0x65, 0x1c, 0xd9, 0x75, 0xea, 0xc1, 0x92, 0xcd, 0x65, 0x82, 0xdb, 0xbe, 0xc0, 0x99, 0x74, }; static const unsigned char ecdh_secp521r1_5736_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5736_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5736_sharedsecret[] = { 0x00, 0x32, 0x28, 0x4e, 0xd3, 0xe1, 0x5d, 0x5e, 0x9d, 0xed, 0xa5, 0x3c, 0xea, 0xf5, 0xaf, 0xf2, 0x1c, 0x23, 0x0e, 0x60, 0x38, 0xe6, 0xd7, 0xe5, 0xca, 0xae, 0x2a, 0x71, 0x5a, 0x52, 0x88, 0xbc, 0xb8, 0x46, 0x9c, 0xe2, 0xbe, 0xfa, 0xaf, 0x3b, 0x41, 0x84, 0xea, 0xb3, 0x48, 0x69, 0x14, 0x40, 0x95, 0x66, 0x17, 0x88, 0xd3, 0xfd, 0xf4, 0x1a, 0xc6, 0x1e, 0xf1, 0x25, 0x68, 0x90, 0xdc, 0x7a, 0x0b, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_5736 = { .name = "ecdh_secp521r1_5736", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5736_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5736_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5736_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5736_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 456 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5737 for ECDH, tcId is 457 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5737_peerpubkey[] = { 0x00, 0x50, 0x57, 0x11, 0x67, 0xdc, 0x9f, 0x3b, 0x1f, 0x4a, 0xe3, 0x01, 0xdd, 0x1f, 0xac, 0x47, 0x00, 0x2d, 0x90, 0x13, 0x98, 0x82, 0x3f, 0x2e, 0x3d, 0xea, 0x43, 0x38, 0x28, 0x8d, 0xe8, 0xa8, 0xfb, 0x43, 0x2a, 0x68, 0x3b, 0xd5, 0x2b, 0xfa, 0x38, 0x07, 0x00, 0xb2, 0x7a, 0x90, 0x4a, 0xd6, 0x0a, 0x5a, 0x4d, 0x36, 0x39, 0x51, 0xff, 0xe7, 0x45, 0x40, 0xd5, 0x4d, 0xe8, 0xe7, 0xd4, 0x8e, 0xa1, 0x6c, 0x00, 0x85, 0xf6, 0xa7, 0xa7, 0x43, 0x96, 0x9a, 0xe2, 0x7e, 0x9a, 0x96, 0xbc, 0x60, 0x37, 0x03, 0x9a, 0x87, 0xd9, 0x7c, 0x69, 0x6a, 0xed, 0x99, 0xa3, 0x9f, 0x6e, 0x2d, 0x56, 0xac, 0xe5, 0x58, 0x07, 0x4d, 0x49, 0x54, 0x6e, 0x41, 0x7d, 0x79, 0x1a, 0xa5, 0xff, 0x04, 0x9c, 0x9d, 0x30, 0xc3, 0x05, 0x02, 0xf4, 0x00, 0x20, 0xae, 0x41, 0xe7, 0xa5, 0x12, 0x67, 0x1c, 0xdc, 0xc4, 0x9b, 0x60, 0x79, 0xb5, }; static const unsigned char ecdh_secp521r1_5737_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5737_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5737_sharedsecret[] = { 0x01, 0xdf, 0xb4, 0x6a, 0xfe, 0x0b, 0xf0, 0x64, 0xdf, 0xf0, 0xb4, 0x17, 0x7f, 0x7f, 0xd2, 0x7f, 0xa2, 0xee, 0x08, 0x32, 0xaf, 0x7c, 0xdc, 0x92, 0x1f, 0x66, 0xc0, 0xe5, 0xbe, 0x30, 0xc8, 0x06, 0x30, 0xc4, 0x1e, 0x09, 0x20, 0x2e, 0xa2, 0xf3, 0x70, 0xf5, 0xbb, 0xd0, 0x2e, 0xd2, 0x98, 0xb0, 0x88, 0x20, 0xce, 0x86, 0xe2, 0xcb, 0x72, 0x4a, 0x19, 0x62, 0xc6, 0xe7, 0xb1, 0x06, 0x2f, 0x50, 0x32, 0xdd, }; static const wycheproof_ecdh_test ecdh_secp521r1_5737 = { .name = "ecdh_secp521r1_5737", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5737_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5737_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5737_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5737_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 457 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5738 for ECDH, tcId is 458 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5738_peerpubkey[] = { 0x01, 0x7e, 0x4f, 0x40, 0x2b, 0x1c, 0xe2, 0x09, 0xf6, 0x73, 0xdd, 0xf5, 0x0a, 0xe8, 0x7b, 0x9e, 0xf6, 0x1d, 0x81, 0x4d, 0x51, 0xe1, 0x4f, 0x43, 0xda, 0x3c, 0x23, 0xf4, 0x0f, 0xac, 0x42, 0x2f, 0x10, 0x58, 0xfd, 0x89, 0x30, 0xdf, 0xaf, 0x11, 0x71, 0x0c, 0x41, 0xa7, 0xf6, 0xb7, 0x92, 0x55, 0xe1, 0xc2, 0xcf, 0xba, 0xd6, 0x9d, 0x25, 0x7a, 0x0e, 0xcc, 0x10, 0x2f, 0x5e, 0x38, 0xe1, 0x40, 0x7f, 0x9d, 0x00, 0xe1, 0x0a, 0x67, 0xd1, 0x75, 0xb3, 0x99, 0xbf, 0x19, 0x41, 0xbd, 0x0f, 0xc1, 0x31, 0x27, 0xf7, 0xeb, 0x11, 0x2e, 0x1a, 0x86, 0x81, 0xac, 0xc2, 0xcf, 0xae, 0x0d, 0xc2, 0x95, 0x9e, 0x82, 0x37, 0x48, 0x81, 0x46, 0x28, 0x1c, 0xa3, 0xdf, 0x2b, 0x1e, 0x60, 0x56, 0xee, 0x93, 0x2f, 0xeb, 0x1a, 0xc6, 0xe6, 0xe9, 0xdf, 0x3f, 0x7a, 0x6e, 0xe6, 0x02, 0x15, 0x78, 0xa0, 0xff, 0xdb, 0x50, 0xec, 0xa2, }; static const unsigned char ecdh_secp521r1_5738_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5738_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5738_sharedsecret[] = { 0x00, 0x17, 0xb9, 0x9f, 0xab, 0x0e, 0xe0, 0xd7, 0xf9, 0x3f, 0x73, 0x09, 0xff, 0xdc, 0x91, 0x49, 0xba, 0x3c, 0xb6, 0x83, 0x04, 0x2f, 0xb3, 0xd0, 0x2b, 0xd5, 0x31, 0x9e, 0xb4, 0x26, 0x78, 0xac, 0x7a, 0xc7, 0xde, 0x21, 0x4e, 0x5c, 0x0f, 0x84, 0x73, 0x62, 0x7e, 0xf1, 0x51, 0x12, 0xc0, 0xd1, 0xa3, 0x19, 0x42, 0x84, 0xb6, 0xfc, 0xcc, 0xf5, 0x61, 0xd0, 0xd2, 0x52, 0xad, 0x25, 0xfc, 0xc9, 0x39, 0x53, }; static const wycheproof_ecdh_test ecdh_secp521r1_5738 = { .name = "ecdh_secp521r1_5738", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5738_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5738_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5738_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5738_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 458 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5739 for ECDH, tcId is 459 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5739_peerpubkey[] = { 0x00, 0x04, 0xcd, 0x97, 0xe1, 0x2d, 0x06, 0x2b, 0x74, 0x90, 0xbe, 0x45, 0xd8, 0x5e, 0x85, 0xbd, 0x40, 0x1c, 0x17, 0x91, 0xfb, 0xb4, 0x4e, 0x74, 0xa4, 0x54, 0x38, 0xa8, 0x31, 0x7c, 0x7e, 0xc9, 0xf0, 0x25, 0xb3, 0x4c, 0x59, 0x5b, 0x47, 0x69, 0xc7, 0xb3, 0x7f, 0x44, 0x29, 0x6b, 0x4b, 0x8f, 0x73, 0xd5, 0x64, 0x1d, 0xa2, 0x81, 0xfe, 0x35, 0x50, 0x8a, 0x23, 0xad, 0x50, 0x3d, 0xa9, 0x1e, 0xe7, 0xdb, 0x01, 0x7c, 0x4e, 0xd0, 0xd8, 0x4b, 0x40, 0x1d, 0xab, 0x74, 0x88, 0xda, 0x83, 0x9b, 0x20, 0xb5, 0x78, 0x09, 0xfe, 0x71, 0x27, 0xfa, 0x66, 0xef, 0x94, 0xdc, 0x02, 0x9e, 0x44, 0xb2, 0x50, 0x85, 0x7b, 0x30, 0x9a, 0x11, 0xc9, 0x1f, 0x73, 0x6a, 0x76, 0xf3, 0xc8, 0x9d, 0x9a, 0xde, 0xd9, 0x7f, 0x5b, 0x0b, 0xee, 0xc9, 0x3a, 0x7b, 0x6d, 0x78, 0x82, 0xe4, 0x28, 0xbe, 0xfc, 0xc2, 0x0d, 0x90, 0xdf, 0x15, }; static const unsigned char ecdh_secp521r1_5739_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5739_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5739_sharedsecret[] = { 0x01, 0xb6, 0x6a, 0x06, 0x5e, 0x62, 0xca, 0x0e, 0xa4, 0x9c, 0x25, 0xfe, 0x2a, 0x37, 0x79, 0x9b, 0x46, 0x86, 0x7e, 0x27, 0x4f, 0x8b, 0x85, 0x3a, 0x53, 0x4d, 0xd6, 0xcd, 0x1a, 0xd8, 0x1c, 0xc1, 0x3d, 0x27, 0xf2, 0x79, 0xd1, 0xee, 0x5b, 0xc2, 0xd9, 0x6d, 0x0b, 0x77, 0x01, 0xab, 0xb2, 0xd2, 0x13, 0xfa, 0x37, 0x83, 0x6b, 0xbc, 0xd2, 0xd1, 0xd8, 0x93, 0x7b, 0x6d, 0x20, 0xdc, 0xb3, 0x5b, 0x53, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_5739 = { .name = "ecdh_secp521r1_5739", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5739_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5739_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5739_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5739_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 459 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5740 for ECDH, tcId is 460 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5740_peerpubkey[] = { 0x01, 0xb2, 0x3c, 0x60, 0xee, 0xfd, 0xbd, 0xe0, 0x7c, 0xe9, 0x75, 0x1d, 0x9f, 0x99, 0x39, 0xbf, 0x75, 0x45, 0x8e, 0x6f, 0x2a, 0xf0, 0xaf, 0xa3, 0xd9, 0x0f, 0xa1, 0x76, 0x2d, 0x01, 0xa6, 0xd6, 0xe3, 0xfa, 0x40, 0x82, 0xc3, 0x7a, 0xd6, 0xbf, 0x03, 0xba, 0x8f, 0xf1, 0x79, 0x19, 0xe8, 0xb9, 0x62, 0x5b, 0x5a, 0x90, 0x9c, 0x92, 0x5d, 0x9f, 0xeb, 0x7c, 0x3e, 0xe1, 0x9a, 0x04, 0x25, 0x38, 0x5c, 0xea, 0x00, 0x0d, 0xf6, 0x84, 0x06, 0xc6, 0x74, 0xbe, 0x5e, 0x1f, 0x42, 0xd1, 0x4b, 0xf5, 0x0c, 0x19, 0x46, 0x0a, 0xee, 0xbd, 0xde, 0x37, 0x9a, 0xd3, 0x13, 0x0a, 0x33, 0x2e, 0x8f, 0xbe, 0xea, 0x15, 0x69, 0xd3, 0x14, 0xd5, 0x07, 0xb3, 0x7f, 0x1d, 0xcd, 0x28, 0x3b, 0x1c, 0x17, 0x15, 0x85, 0x2b, 0xd3, 0x9b, 0x81, 0xc4, 0xed, 0xca, 0xe0, 0xf2, 0xe1, 0xce, 0x53, 0x58, 0xc6, 0x59, 0x8b, 0x8c, 0x97, 0x0a, }; static const unsigned char ecdh_secp521r1_5740_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5740_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5740_sharedsecret[] = { 0x00, 0x59, 0xa3, 0x20, 0x50, 0x1b, 0xde, 0x6b, 0x9b, 0x26, 0x82, 0x36, 0xf9, 0x66, 0xac, 0x88, 0x1d, 0xed, 0xe9, 0x8c, 0xe6, 0x35, 0x6a, 0x7a, 0x90, 0x0a, 0x45, 0x2c, 0x59, 0xcb, 0xf8, 0xd8, 0xd2, 0x06, 0x30, 0x32, 0x16, 0x25, 0xc6, 0x89, 0xc7, 0x9d, 0xff, 0xff, 0xae, 0x7f, 0x87, 0x0a, 0x7f, 0xbf, 0x29, 0x86, 0x95, 0x89, 0x6c, 0xac, 0xdd, 0x2d, 0x0e, 0x13, 0xb7, 0x02, 0xf2, 0x2e, 0x7e, 0x43, }; static const wycheproof_ecdh_test ecdh_secp521r1_5740 = { .name = "ecdh_secp521r1_5740", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5740_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5740_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5740_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5740_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 460 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5741 for ECDH, tcId is 461 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5741_peerpubkey[] = { 0x00, 0x68, 0x36, 0x15, 0x44, 0x77, 0xdb, 0x9d, 0xb0, 0x3b, 0xb8, 0xa4, 0x04, 0xc5, 0x94, 0x2d, 0x32, 0xe1, 0xcd, 0xea, 0x20, 0x35, 0x4e, 0xda, 0x96, 0x93, 0xc3, 0x33, 0x39, 0x14, 0xb5, 0x19, 0x0c, 0x9d, 0x63, 0xa0, 0x43, 0x3a, 0x43, 0x06, 0x2b, 0x88, 0x60, 0xd5, 0xe5, 0x9c, 0x0f, 0x27, 0xac, 0x63, 0x30, 0x38, 0x49, 0x1d, 0x46, 0xb9, 0x1f, 0xc1, 0x1e, 0xce, 0xf8, 0x32, 0x6e, 0x75, 0xb5, 0x0e, 0x01, 0x41, 0x78, 0xe1, 0xbb, 0xf0, 0x84, 0x73, 0xee, 0x5b, 0xa8, 0x56, 0x85, 0x64, 0x16, 0xe6, 0x32, 0x6c, 0xaf, 0xe6, 0xf7, 0x42, 0x27, 0x76, 0x8e, 0x83, 0x5c, 0x25, 0xc5, 0x20, 0xba, 0xe0, 0x5d, 0x1d, 0x45, 0x1f, 0x63, 0x91, 0x58, 0xdc, 0xca, 0xa2, 0x93, 0x64, 0x2a, 0x57, 0x2a, 0xc7, 0x61, 0x2d, 0x60, 0xe9, 0x6d, 0xf4, 0xc6, 0x73, 0xab, 0x8f, 0x2a, 0x4e, 0xd8, 0x2e, 0x5e, 0x2a, 0xf3, 0x0b, }; static const unsigned char ecdh_secp521r1_5741_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5741_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5741_sharedsecret[] = { 0x00, 0x20, 0x4c, 0xcc, 0x53, 0x56, 0x21, 0x9b, 0xee, 0xf3, 0xb6, 0xd9, 0x0e, 0xa2, 0xef, 0x37, 0x85, 0xf7, 0x6f, 0x14, 0xaa, 0x3b, 0x84, 0xca, 0x04, 0xf6, 0xb2, 0xa5, 0xe9, 0x07, 0x00, 0x59, 0x64, 0x31, 0x54, 0x6e, 0x10, 0x4e, 0x77, 0x88, 0x30, 0x71, 0x47, 0x31, 0x2c, 0xa8, 0x90, 0x98, 0x4f, 0x76, 0xb5, 0x3c, 0x48, 0x9d, 0xe0, 0x4c, 0xc7, 0x28, 0xef, 0x00, 0x3d, 0x24, 0x6f, 0xdd, 0xb3, 0x60, }; static const wycheproof_ecdh_test ecdh_secp521r1_5741 = { .name = "ecdh_secp521r1_5741", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5741_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5741_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5741_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5741_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 461 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5742 for ECDH, tcId is 462 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5742_peerpubkey[] = { 0x01, 0x9c, 0x26, 0xd8, 0x15, 0xbb, 0xe9, 0x23, 0x58, 0xe1, 0xec, 0xd0, 0x21, 0x45, 0xa5, 0xf4, 0x5e, 0x1f, 0x8f, 0x46, 0xcb, 0x90, 0xba, 0xe1, 0x31, 0xee, 0x58, 0x9e, 0x51, 0xbb, 0x09, 0x3d, 0x84, 0x10, 0x20, 0x65, 0x85, 0xc0, 0x3e, 0xd7, 0xc5, 0xb3, 0x97, 0x54, 0x45, 0xba, 0x07, 0xfb, 0x7d, 0xd6, 0x68, 0xa8, 0xe5, 0x8c, 0x27, 0xe0, 0x1d, 0xd0, 0x0b, 0x08, 0xfe, 0x40, 0x9b, 0x44, 0x40, 0xe7, 0x00, 0x9f, 0xe8, 0x59, 0xe9, 0xd2, 0x2b, 0xb1, 0x65, 0x2e, 0x38, 0x4d, 0x5a, 0xe5, 0x79, 0xe4, 0x4a, 0x0f, 0x8c, 0x5c, 0x82, 0xe5, 0x9b, 0x46, 0x39, 0xd4, 0x2a, 0x9b, 0x27, 0xcb, 0x14, 0x05, 0x99, 0xc1, 0x23, 0x6e, 0x93, 0x23, 0x38, 0xdc, 0xe0, 0x3d, 0xe4, 0x6a, 0x60, 0xfb, 0xec, 0xe6, 0x1f, 0xd3, 0x4b, 0x8e, 0xce, 0x7d, 0xa9, 0x37, 0xb5, 0xcc, 0x1e, 0x3e, 0x7c, 0xeb, 0xcc, 0xe3, 0x39, 0xee, }; static const unsigned char ecdh_secp521r1_5742_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5742_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5742_sharedsecret[] = { 0x01, 0x7a, 0x82, 0x40, 0x3f, 0x78, 0xf8, 0xa5, 0x17, 0x29, 0xe8, 0xbc, 0x63, 0xc5, 0xde, 0x9b, 0x67, 0xc5, 0x72, 0xd4, 0x1f, 0x2a, 0xac, 0x28, 0xbd, 0xd9, 0x57, 0x92, 0xe6, 0x58, 0x33, 0x8f, 0x19, 0xbd, 0xdc, 0x45, 0xa6, 0xa1, 0xcb, 0x1b, 0xb2, 0x75, 0xf8, 0xa9, 0x10, 0xfa, 0x64, 0xda, 0xae, 0x25, 0x02, 0x60, 0x0a, 0xa9, 0x7b, 0x71, 0xf4, 0x9b, 0x28, 0x98, 0x1b, 0x71, 0x8f, 0x6a, 0xe0, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_5742 = { .name = "ecdh_secp521r1_5742", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5742_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5742_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5742_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5742_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 462 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5743 for ECDH, tcId is 463 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5743_peerpubkey[] = { 0x01, 0xdd, 0x2a, 0xe9, 0x57, 0x64, 0x07, 0x84, 0x96, 0x80, 0x45, 0x29, 0xa5, 0xee, 0xd0, 0xda, 0x61, 0x82, 0xbe, 0x0f, 0x08, 0x5c, 0x95, 0x78, 0x9a, 0x26, 0x34, 0xa9, 0x56, 0x9f, 0x00, 0x80, 0x86, 0x1b, 0x18, 0x3c, 0xef, 0xd1, 0xa1, 0x48, 0x9d, 0x0f, 0x90, 0x46, 0x53, 0x53, 0xb9, 0x72, 0xc8, 0x45, 0x0c, 0x2a, 0xeb, 0x5f, 0xd8, 0x0b, 0xe6, 0x4f, 0x15, 0xa7, 0x19, 0xd0, 0x87, 0x3e, 0x0a, 0x16, 0x00, 0xe1, 0x09, 0x8d, 0xd4, 0xb3, 0x0f, 0x78, 0xe3, 0xfe, 0x6c, 0x1a, 0xaf, 0x00, 0x48, 0xb1, 0x5b, 0x1d, 0x0f, 0x98, 0xff, 0x07, 0x44, 0xc1, 0xc8, 0x88, 0x64, 0x1d, 0x17, 0xac, 0x21, 0x63, 0x29, 0x37, 0x6b, 0xe7, 0x11, 0x3e, 0x93, 0x21, 0xca, 0x7f, 0x9f, 0x7e, 0x19, 0x35, 0xdf, 0xf6, 0x61, 0xbc, 0xe9, 0xff, 0xbe, 0x86, 0xae, 0xdb, 0xc9, 0x33, 0xf2, 0x43, 0x8f, 0xc4, 0x82, 0xc4, 0x62, 0xbf, }; static const unsigned char ecdh_secp521r1_5743_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5743_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5743_sharedsecret[] = { 0x00, 0x88, 0x79, 0x7d, 0x31, 0xf9, 0xb6, 0x6f, 0xae, 0xe9, 0x7e, 0xeb, 0x9a, 0x69, 0x5c, 0xf6, 0x68, 0xc7, 0x96, 0x0f, 0x49, 0xbd, 0xce, 0x05, 0x1b, 0x2f, 0xc2, 0x73, 0xd5, 0xea, 0x6d, 0x86, 0xc7, 0x86, 0x88, 0xee, 0x3e, 0xf4, 0xbe, 0x14, 0xea, 0xb0, 0x65, 0x9c, 0x57, 0xcc, 0xec, 0xb2, 0xbd, 0xb1, 0x90, 0xe5, 0x0b, 0xe0, 0x4f, 0x65, 0x07, 0x99, 0x50, 0xc5, 0xeb, 0x90, 0xd6, 0x76, 0xee, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5743 = { .name = "ecdh_secp521r1_5743", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5743_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5743_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5743_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5743_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 463 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5744 for ECDH, tcId is 464 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5744_peerpubkey[] = { 0x00, 0x71, 0x24, 0xed, 0x9d, 0x26, 0x1b, 0xc3, 0xe5, 0xd2, 0x99, 0x47, 0xff, 0x49, 0xcc, 0x44, 0x20, 0xdb, 0x90, 0xd3, 0xaf, 0xac, 0x7e, 0xb6, 0xab, 0x91, 0xbb, 0xab, 0x09, 0x0b, 0xd8, 0x4f, 0xfc, 0xc3, 0xef, 0x33, 0xe9, 0x63, 0xbc, 0xc0, 0x56, 0x85, 0x91, 0x0e, 0xe6, 0x3b, 0x06, 0x3b, 0xb9, 0xad, 0xae, 0x7f, 0xce, 0xa4, 0x11, 0x99, 0x61, 0x99, 0x88, 0xd3, 0x4d, 0x64, 0x77, 0xd1, 0x1e, 0xa9, 0x00, 0x39, 0x73, 0x8e, 0xd5, 0x52, 0x9f, 0x31, 0xa5, 0x57, 0x97, 0x0f, 0x89, 0xe6, 0xc9, 0x27, 0xfe, 0x0b, 0xdd, 0x64, 0x13, 0xdc, 0x31, 0x23, 0x7e, 0x75, 0x27, 0x0f, 0xee, 0x8e, 0x3b, 0xa6, 0xf3, 0xa2, 0x4e, 0xe5, 0x65, 0x16, 0xec, 0xe1, 0x17, 0x73, 0x3c, 0x38, 0x5a, 0x8b, 0xb7, 0x59, 0xe5, 0x7e, 0xe7, 0x95, 0x33, 0xf3, 0xc8, 0x57, 0x32, 0x7b, 0x75, 0x42, 0x67, 0x7d, 0x83, 0x4b, 0x8d, 0xfb, }; static const unsigned char ecdh_secp521r1_5744_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5744_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5744_sharedsecret[] = { 0x00, 0x2b, 0xa2, 0x5d, 0x01, 0x69, 0x89, 0xea, 0x24, 0xd5, 0x5f, 0xcd, 0xd9, 0xda, 0xe6, 0x9b, 0xc7, 0x67, 0xa4, 0xf3, 0x28, 0x19, 0x35, 0xf5, 0x06, 0x62, 0x03, 0x81, 0x29, 0x77, 0x73, 0x7b, 0x6a, 0x25, 0x6a, 0xe8, 0x39, 0xcd, 0xe9, 0xb2, 0x73, 0x28, 0x16, 0x72, 0xd7, 0xd8, 0x5d, 0xfb, 0x40, 0xca, 0x89, 0x5f, 0xc1, 0x44, 0x9c, 0xe4, 0x28, 0x3f, 0x74, 0x16, 0xcd, 0x91, 0x3a, 0x56, 0xd8, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp521r1_5744 = { .name = "ecdh_secp521r1_5744", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5744_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5744_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5744_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5744_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 464 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5745 for ECDH, tcId is 465 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5745_peerpubkey[] = { 0x00, 0x42, 0x20, 0xb1, 0x64, 0x2d, 0xb6, 0x38, 0x10, 0xf9, 0x6c, 0xf5, 0x4f, 0x93, 0xba, 0x6c, 0x3c, 0x9b, 0x16, 0xba, 0xa8, 0xab, 0x42, 0xec, 0xac, 0xc2, 0x81, 0xa2, 0xfc, 0xa3, 0x68, 0xbe, 0x87, 0x60, 0x24, 0xb6, 0xae, 0x18, 0xa8, 0xaa, 0xf9, 0xe4, 0x33, 0x79, 0x9f, 0xb4, 0x3c, 0x0f, 0xa1, 0x75, 0xd4, 0xca, 0x4a, 0x5e, 0x12, 0x17, 0x39, 0xc7, 0x24, 0x9e, 0x9a, 0x26, 0xfc, 0x90, 0x44, 0xd7, 0x01, 0xb0, 0x6a, 0xe5, 0x8d, 0xc3, 0xf7, 0xb7, 0x73, 0x01, 0x3e, 0x2d, 0xc8, 0x00, 0xe0, 0x01, 0x22, 0x0b, 0xad, 0x2e, 0x68, 0x11, 0x5c, 0xa6, 0x75, 0x16, 0xe9, 0xc8, 0x17, 0x63, 0xd1, 0x7e, 0xad, 0xfa, 0xd2, 0xc6, 0xd3, 0x82, 0x26, 0xf6, 0x66, 0x23, 0xa2, 0xd5, 0xc1, 0x17, 0x86, 0xe0, 0x7f, 0xac, 0xe4, 0x2d, 0x7b, 0x0a, 0x1d, 0xf9, 0x6d, 0x09, 0x5b, 0xbb, 0xed, 0xfc, 0xd3, 0x48, 0xe4, 0xd6, }; static const unsigned char ecdh_secp521r1_5745_ourpubkey[] = { 0x00, 0xe6, 0x2f, 0xa1, 0xe1, 0x82, 0x15, 0x1e, 0x5d, 0xd5, 0x29, 0x3b, 0x0e, 0x5f, 0x66, 0xe6, 0x7c, 0xaf, 0xd1, 0x35, 0x60, 0x02, 0xc4, 0x62, 0x06, 0x52, 0xee, 0xea, 0xc5, 0x38, 0x08, 0xcb, 0x9d, 0x90, 0x7e, 0x4c, 0x70, 0xfe, 0x0c, 0xe9, 0x09, 0x0e, 0xcd, 0xd6, 0x94, 0x25, 0x60, 0xf0, 0xf0, 0x8e, 0x9f, 0x0f, 0xeb, 0x3e, 0xfc, 0xb1, 0xe7, 0x25, 0x14, 0x1d, 0xae, 0x16, 0x4a, 0x1a, 0x45, 0x0a, 0x00, 0xfa, 0x1e, 0xa8, 0x2e, 0x63, 0x20, 0x97, 0x23, 0x18, 0x0a, 0xfc, 0x7e, 0xb3, 0x59, 0x6f, 0x06, 0x4c, 0xde, 0xd6, 0x78, 0xaf, 0xbd, 0xab, 0x7d, 0xc3, 0x7c, 0xbe, 0xa0, 0x04, 0x81, 0xd8, 0xd7, 0xc7, 0x19, 0x91, 0xe6, 0x1b, 0x6e, 0x7d, 0x26, 0x9e, 0xbd, 0x38, 0xe0, 0xef, 0xe2, 0xa5, 0x31, 0x11, 0x9b, 0x12, 0x2c, 0x61, 0xd9, 0xb9, 0x8f, 0x86, 0x01, 0xb7, 0xaa, 0x10, 0xe7, 0x5c, 0x6f, 0x22, }; static const unsigned char ecdh_secp521r1_5745_privkey[] = { 0x01, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc0, 0x41, 0x82, 0x95, 0x2f, 0x6e, 0x6f, 0x9b, 0xfd, 0xbb, 0x6a, 0xf4, 0xc9, 0x8f, 0x31, 0xba, 0x30, 0xab, 0xc6, 0x8d, 0x88, 0xe1, 0xea, 0x98, 0x0d, 0x4e, 0xdc, 0xdb, 0x5b, 0x19, 0xf0, 0x61, 0x00, 0x82, 0x19, 0x41, 0x37, 0xeb, 0xb0, 0x19, 0xe7, 0xa6, 0x64, 0xb5, 0x22, 0x18, 0x9a, 0x18, 0x6c, 0xbe, 0x5a, 0x03, 0x37, 0x6c, 0x07, 0x13, 0xfb, }; static const unsigned char ecdh_secp521r1_5745_sharedsecret[] = { 0x01, 0xf5, 0x64, 0x6e, 0x72, 0x4f, 0x63, 0x7e, 0x1d, 0x4e, 0xa8, 0x99, 0x7c, 0xc6, 0x72, 0x68, 0xda, 0x3f, 0x74, 0x1b, 0x9a, 0xf6, 0xd2, 0x1f, 0x30, 0x77, 0x5a, 0x9a, 0x9b, 0x09, 0x77, 0xed, 0x75, 0xbf, 0xa0, 0xca, 0x5a, 0x80, 0xdb, 0x2d, 0x44, 0x82, 0x2d, 0xe4, 0x94, 0xd1, 0x5c, 0x87, 0xd3, 0x92, 0xcf, 0xf4, 0xac, 0xec, 0xfb, 0x50, 0x60, 0x9b, 0x43, 0xd7, 0x84, 0x59, 0x28, 0x28, 0x65, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_5745 = { .name = "ecdh_secp521r1_5745", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5745_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5745_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5745_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5745_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 465 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5746 for ECDH, tcId is 466 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5746_peerpubkey[] = { 0x00, 0x6d, 0xb3, 0xdb, 0xd1, 0xaf, 0x24, 0x99, 0x80, 0xef, 0xfd, 0x62, 0x4e, 0x9f, 0x50, 0x0e, 0x4d, 0x9f, 0xa4, 0x46, 0xc9, 0xbe, 0x94, 0xe3, 0x9b, 0x48, 0x60, 0x76, 0x7b, 0x55, 0xb1, 0x31, 0x08, 0x89, 0xe1, 0x78, 0xca, 0xf6, 0xc8, 0x59, 0xf6, 0x0f, 0xfb, 0x0d, 0x87, 0x61, 0x2c, 0x57, 0x90, 0x83, 0x3c, 0xad, 0x16, 0x0a, 0x5b, 0x23, 0xf7, 0x41, 0x22, 0x1a, 0x12, 0x3e, 0x36, 0xf0, 0xee, 0xb7, 0x00, 0x2c, 0xe8, 0x39, 0xf2, 0xba, 0x30, 0x72, 0x91, 0x92, 0x97, 0xee, 0x5a, 0x68, 0x29, 0xb8, 0x74, 0x6a, 0xf3, 0x9f, 0xbc, 0xe9, 0xfa, 0x70, 0xdb, 0xbf, 0x59, 0xbd, 0x20, 0x9b, 0xb5, 0x00, 0xd6, 0x12, 0x94, 0x19, 0xba, 0x96, 0x02, 0x0a, 0x25, 0x50, 0xbe, 0x0a, 0x19, 0x42, 0x6e, 0xe9, 0xe1, 0x11, 0xe6, 0x98, 0x7a, 0xf0, 0xc3, 0x26, 0xe1, 0xae, 0x1d, 0xa4, 0x36, 0x5d, 0x15, 0xa7, 0xbb, 0xf5, }; static const unsigned char ecdh_secp521r1_5746_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5746_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5746_sharedsecret[] = { 0x01, 0x77, 0x70, 0x17, 0x49, 0xc0, 0xc5, 0x4b, 0xd6, 0xd5, 0x4a, 0xda, 0x39, 0xaa, 0x22, 0x22, 0xe5, 0xb4, 0xd3, 0x22, 0x73, 0xea, 0x16, 0x59, 0x41, 0xd1, 0xa9, 0xa6, 0x11, 0x4d, 0x2c, 0xbe, 0x60, 0x9e, 0xe6, 0x2c, 0x23, 0x06, 0xbc, 0x5c, 0x1a, 0xba, 0xbe, 0x08, 0x22, 0x72, 0x15, 0x7f, 0xda, 0xc8, 0xdd, 0xa3, 0x9c, 0x7b, 0x45, 0x28, 0x20, 0xc9, 0x43, 0xdb, 0x42, 0x67, 0xfe, 0xd8, 0xc2, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp521r1_5746 = { .name = "ecdh_secp521r1_5746", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5746_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5746_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5746_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5746_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 466 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5747 for ECDH, tcId is 467 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5747_peerpubkey[] = { 0x00, 0x0d, 0x2f, 0xca, 0xb6, 0x2b, 0x46, 0x7f, 0x97, 0x8a, 0x02, 0x67, 0xff, 0x35, 0x98, 0xe6, 0xfd, 0xff, 0x08, 0x7d, 0x32, 0x37, 0xf8, 0xfb, 0x00, 0xc1, 0x7d, 0x0f, 0x5a, 0xcc, 0xbb, 0x4e, 0xde, 0xd3, 0xc4, 0xc4, 0x85, 0x8d, 0x45, 0x53, 0x03, 0x3e, 0x59, 0x94, 0x60, 0x30, 0xc6, 0xf5, 0x22, 0x37, 0x79, 0xa2, 0x12, 0x05, 0xba, 0x2a, 0x49, 0xb4, 0x54, 0x5b, 0xe5, 0x96, 0xb7, 0x6f, 0x91, 0xb2, 0x00, 0x57, 0xc9, 0x75, 0xda, 0x05, 0x20, 0xe1, 0xdc, 0xaa, 0x51, 0x89, 0x51, 0xdb, 0x05, 0x78, 0x64, 0x96, 0x6c, 0x81, 0x8e, 0x4e, 0x64, 0xfa, 0x91, 0x0a, 0x0c, 0x0c, 0x7f, 0x9b, 0x89, 0x4c, 0x06, 0x46, 0x1f, 0xed, 0x9b, 0x44, 0xf7, 0xec, 0x43, 0xb7, 0x0e, 0x33, 0x39, 0xda, 0x0f, 0x56, 0x6a, 0xac, 0x07, 0xfd, 0xe5, 0x01, 0xbb, 0xf2, 0x28, 0x71, 0x45, 0x2d, 0xba, 0x5c, 0x93, 0xe5, 0xd6, 0x23, }; static const unsigned char ecdh_secp521r1_5747_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5747_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5747_sharedsecret[] = { 0x00, 0xf5, 0x24, 0xb1, 0x72, 0x6e, 0x88, 0x9d, 0x14, 0xd5, 0xfd, 0x70, 0xbb, 0xfc, 0x76, 0xfb, 0x2e, 0xb3, 0x2d, 0xc2, 0x42, 0x5f, 0x11, 0x2a, 0x5f, 0xca, 0x52, 0x03, 0x30, 0x54, 0x16, 0xb8, 0x56, 0x09, 0xf3, 0x37, 0xcf, 0x87, 0xef, 0x87, 0x8e, 0x64, 0xe3, 0x75, 0xfa, 0x29, 0xeb, 0x32, 0xf9, 0xf1, 0x39, 0xbf, 0x77, 0x5c, 0x0d, 0x32, 0x29, 0xa7, 0x2c, 0x2e, 0x88, 0x09, 0x79, 0xf8, 0x22, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5747 = { .name = "ecdh_secp521r1_5747", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5747_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5747_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5747_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5747_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 467 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5748 for ECDH, tcId is 468 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5748_peerpubkey[] = { 0x00, 0x2c, 0xca, 0x1f, 0x37, 0xdd, 0x94, 0xa0, 0xa4, 0x7c, 0x81, 0x68, 0xac, 0xea, 0x47, 0x3f, 0xb0, 0x57, 0x65, 0x27, 0x13, 0x01, 0x5e, 0x58, 0x57, 0x43, 0xc9, 0xd3, 0x3f, 0x5b, 0x7d, 0x01, 0xd6, 0x38, 0xbc, 0x0d, 0x03, 0x91, 0x47, 0x58, 0x1a, 0x5f, 0x30, 0x96, 0x13, 0x9e, 0x5e, 0xe8, 0xed, 0x38, 0xbd, 0xcb, 0x72, 0xcd, 0xe4, 0x93, 0x92, 0x47, 0x76, 0x57, 0x9b, 0xcb, 0xb2, 0x52, 0x29, 0x61, 0x01, 0x5b, 0xd4, 0x85, 0x9c, 0x20, 0x15, 0xc0, 0x81, 0x69, 0x6a, 0xb1, 0x05, 0xb8, 0x92, 0x2c, 0x1f, 0x81, 0xce, 0x4a, 0x61, 0x04, 0xe5, 0xb5, 0x6b, 0x3c, 0xd9, 0x9c, 0xcc, 0x3c, 0x50, 0x66, 0xcb, 0xc3, 0x39, 0xae, 0x68, 0x5a, 0x90, 0x4d, 0xf5, 0xdd, 0x15, 0x48, 0x5c, 0xc3, 0xca, 0x72, 0xd2, 0xc8, 0x4f, 0x15, 0xf6, 0x25, 0x39, 0x7f, 0x46, 0x05, 0x90, 0x5b, 0x36, 0x17, 0x01, 0xe0, 0x0d, 0x2b, }; static const unsigned char ecdh_secp521r1_5748_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5748_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5748_sharedsecret[] = { 0x01, 0xca, 0x20, 0xd5, 0x56, 0xbf, 0x1b, 0xaf, 0x10, 0x15, 0x3e, 0x2c, 0x1d, 0x99, 0xb5, 0x8f, 0xa8, 0xd8, 0xf2, 0x1c, 0xd7, 0xee, 0xf3, 0x0a, 0xfc, 0x94, 0xef, 0xb4, 0x7d, 0x38, 0xbb, 0x36, 0x4a, 0xbd, 0xb5, 0x9a, 0x32, 0x6d, 0xff, 0xc4, 0x1f, 0xc0, 0x56, 0xef, 0xb7, 0x14, 0x38, 0x4b, 0x5d, 0x3f, 0x09, 0x27, 0x0b, 0x48, 0x06, 0xfc, 0xb0, 0xe2, 0x71, 0x38, 0x3c, 0xda, 0xec, 0x02, 0x3b, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5748 = { .name = "ecdh_secp521r1_5748", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5748_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5748_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5748_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5748_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 468 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5749 for ECDH, tcId is 469 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5749_peerpubkey[] = { 0x01, 0xb5, 0x38, 0x6f, 0xc6, 0x15, 0x97, 0x30, 0x76, 0x32, 0xb3, 0xf2, 0xc9, 0x84, 0xfe, 0x0e, 0xe8, 0xe2, 0x2c, 0x5f, 0xd9, 0x04, 0xb1, 0xd1, 0x4b, 0x35, 0x68, 0xe9, 0xeb, 0x76, 0x50, 0x03, 0x79, 0xd9, 0x17, 0xf2, 0x43, 0x0b, 0x7f, 0x2f, 0x55, 0xe0, 0xba, 0xc3, 0x56, 0xe7, 0x46, 0x72, 0xa2, 0x3d, 0xf2, 0xa5, 0xdd, 0xd4, 0x6f, 0xc0, 0xa5, 0x8f, 0x9f, 0x54, 0x07, 0x09, 0x37, 0x26, 0xc2, 0x5d, 0x00, 0x9c, 0xbf, 0x98, 0x33, 0x03, 0xfc, 0xbe, 0x0b, 0x5a, 0x92, 0x6e, 0x28, 0xc0, 0x65, 0x4e, 0xd4, 0x57, 0x43, 0x7e, 0x40, 0x10, 0xcc, 0xc1, 0xd1, 0xe0, 0x2e, 0x28, 0x68, 0x8c, 0x9f, 0x21, 0x0c, 0x76, 0xaf, 0x02, 0xed, 0x0d, 0xf6, 0xb7, 0x27, 0xfb, 0x18, 0xb9, 0x38, 0x71, 0x8e, 0x9d, 0xcc, 0x2c, 0x24, 0x21, 0xa6, 0x39, 0xd7, 0x32, 0xa6, 0x17, 0x11, 0xa5, 0xa4, 0x5f, 0xaa, 0x1b, 0xa1, 0x44, }; static const unsigned char ecdh_secp521r1_5749_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5749_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5749_sharedsecret[] = { 0x01, 0x20, 0x6d, 0x9b, 0xc7, 0x47, 0xf0, 0xe7, 0x59, 0x1d, 0xbe, 0x7a, 0x88, 0x95, 0x0a, 0x78, 0xdb, 0x27, 0x70, 0xce, 0xba, 0xc4, 0xe9, 0x1f, 0x71, 0xb3, 0x05, 0x2a, 0x33, 0x6b, 0xd1, 0x9f, 0x0f, 0x90, 0x6b, 0x72, 0x98, 0xeb, 0x92, 0x79, 0x0b, 0xe7, 0xbd, 0xa3, 0x3c, 0x28, 0x21, 0x6b, 0x28, 0x16, 0xb1, 0x00, 0xfe, 0x31, 0xba, 0x8a, 0x74, 0x89, 0xa9, 0xec, 0xa3, 0xba, 0x82, 0xb9, 0xd1, 0x98, }; static const wycheproof_ecdh_test ecdh_secp521r1_5749 = { .name = "ecdh_secp521r1_5749", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5749_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5749_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5749_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5749_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 469 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5750 for ECDH, tcId is 470 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5750_peerpubkey[] = { 0x00, 0x12, 0xd9, 0xeb, 0xd3, 0xfe, 0xb5, 0x43, 0xb4, 0x3c, 0xf3, 0x8f, 0x7b, 0xab, 0xa9, 0xc2, 0x0f, 0xcd, 0x5f, 0xe2, 0xde, 0xe9, 0x04, 0x9c, 0xa8, 0x85, 0x41, 0x84, 0xa2, 0xea, 0xd6, 0x4a, 0xa5, 0x40, 0x5e, 0x16, 0x9a, 0xe8, 0x27, 0x41, 0x37, 0x25, 0x95, 0x83, 0x07, 0x93, 0x9e, 0xe2, 0x44, 0x0c, 0x21, 0xb8, 0xda, 0x58, 0xb3, 0xff, 0x51, 0x6a, 0xe5, 0x69, 0x95, 0x3c, 0xf4, 0x87, 0x37, 0xee, 0x00, 0xcd, 0x5b, 0xec, 0x6c, 0xf7, 0x28, 0x63, 0x2d, 0x31, 0xe3, 0xa1, 0x99, 0xa2, 0x98, 0x24, 0x0d, 0xde, 0xd0, 0xab, 0x5d, 0x2b, 0x35, 0x13, 0xbc, 0xb2, 0xd1, 0x14, 0xc6, 0xb8, 0xf2, 0x79, 0xa0, 0x75, 0xff, 0x0c, 0x56, 0xa3, 0xee, 0x9e, 0x40, 0x58, 0xac, 0xec, 0x89, 0x36, 0xbf, 0x86, 0xbb, 0x28, 0x44, 0xba, 0x13, 0x07, 0xa4, 0x34, 0xfb, 0x43, 0xd2, 0x89, 0x74, 0x66, 0x62, 0xa8, 0x3d, 0xd5, }; static const unsigned char ecdh_secp521r1_5750_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5750_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5750_sharedsecret[] = { 0x01, 0x28, 0xdd, 0xe1, 0x34, 0x1c, 0xa1, 0x7b, 0x37, 0xef, 0xb3, 0x4b, 0x30, 0xee, 0x47, 0x9b, 0x76, 0x3e, 0x87, 0x8d, 0xc8, 0x00, 0x6c, 0x8c, 0xee, 0x43, 0x5c, 0x0b, 0xd2, 0x10, 0x73, 0xc5, 0xbb, 0x3d, 0xf5, 0x28, 0x65, 0xbd, 0x41, 0x31, 0xf5, 0xce, 0xc4, 0x15, 0x88, 0xef, 0x77, 0x8e, 0xf1, 0x4a, 0xf4, 0xca, 0x47, 0xdc, 0x49, 0xa1, 0x6d, 0x5b, 0x70, 0x08, 0xed, 0xe0, 0xb6, 0xe6, 0xb1, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5750 = { .name = "ecdh_secp521r1_5750", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5750_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5750_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5750_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5750_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 470 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5751 for ECDH, tcId is 471 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5751_peerpubkey[] = { 0x00, 0xf3, 0xaa, 0x49, 0xfe, 0xaf, 0x68, 0x6f, 0xcf, 0xfe, 0x3a, 0x0a, 0x36, 0x06, 0x92, 0xef, 0x02, 0xfe, 0xb1, 0x4d, 0xe6, 0xe0, 0xfd, 0x8d, 0xc9, 0x22, 0x85, 0x7b, 0x29, 0xd6, 0x83, 0x7a, 0x59, 0xce, 0x40, 0x13, 0xbe, 0xe9, 0x9b, 0xf8, 0x7f, 0x83, 0x23, 0xc3, 0xab, 0x7f, 0x57, 0xe0, 0x2e, 0x7b, 0x0a, 0x0d, 0xfa, 0xa0, 0x72, 0xbf, 0x1a, 0xda, 0x48, 0x36, 0xbe, 0x49, 0x08, 0xdd, 0xae, 0x49, 0x00, 0x6a, 0xf8, 0x1a, 0xb3, 0xe3, 0x05, 0xfb, 0xe5, 0xce, 0x8a, 0x81, 0x9f, 0x81, 0x68, 0xa8, 0xb4, 0x4e, 0x40, 0xb1, 0x6e, 0xae, 0x82, 0x68, 0xa6, 0x0e, 0xa5, 0xd6, 0x6c, 0x0f, 0x28, 0x43, 0x65, 0xe6, 0x09, 0xa1, 0x91, 0x23, 0x37, 0x0b, 0xee, 0xe4, 0x20, 0xd0, 0xf0, 0x19, 0xa1, 0x98, 0x41, 0x56, 0xce, 0x29, 0xad, 0xe4, 0x95, 0x10, 0xe7, 0xa3, 0x16, 0x37, 0x05, 0x33, 0x3b, 0x85, 0x89, 0x14, }; static const unsigned char ecdh_secp521r1_5751_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5751_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5751_sharedsecret[] = { 0x00, 0x58, 0xbd, 0x4d, 0x20, 0x6d, 0xf1, 0xcf, 0xb3, 0xfe, 0x34, 0x9c, 0xda, 0x27, 0xb0, 0x13, 0xd5, 0x9d, 0xd6, 0xf5, 0x07, 0xc0, 0x66, 0xc0, 0xb6, 0xcf, 0x45, 0x8a, 0xa5, 0x4a, 0x1c, 0x13, 0x83, 0x25, 0x54, 0xc6, 0x6f, 0xf2, 0x7f, 0x61, 0x75, 0xf1, 0xbf, 0x40, 0x58, 0x37, 0x8c, 0x9f, 0x7c, 0x7a, 0x9d, 0x8b, 0x81, 0x0e, 0x40, 0xa3, 0xa8, 0xaf, 0x19, 0xfe, 0x0e, 0x48, 0xc7, 0x28, 0x4e, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5751 = { .name = "ecdh_secp521r1_5751", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5751_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5751_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5751_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5751_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 471 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5752 for ECDH, tcId is 472 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5752_peerpubkey[] = { 0x00, 0x54, 0x68, 0x2c, 0x18, 0x6f, 0x9b, 0x80, 0xc4, 0xc7, 0x6d, 0x70, 0x50, 0xf6, 0xa1, 0x80, 0xfa, 0xd9, 0xfc, 0x85, 0x19, 0x41, 0x95, 0x74, 0xbf, 0xaf, 0xca, 0x96, 0x78, 0xc5, 0x9c, 0xa9, 0x5e, 0x22, 0x53, 0x34, 0x8e, 0x0b, 0x15, 0x79, 0x49, 0x46, 0x1e, 0x95, 0x51, 0xca, 0x7d, 0xdf, 0xb9, 0xfa, 0xe8, 0xfd, 0x7f, 0xd2, 0x3a, 0x88, 0x55, 0xd9, 0x96, 0x29, 0x13, 0xc6, 0x6f, 0x2f, 0xce, 0x54, 0x00, 0xf4, 0x05, 0x29, 0x73, 0x10, 0xed, 0x41, 0x23, 0x9c, 0x56, 0x5c, 0x04, 0x4c, 0xfc, 0x4c, 0xad, 0x28, 0x68, 0x12, 0x6d, 0x44, 0x4b, 0x37, 0x3d, 0x52, 0xe0, 0x51, 0x82, 0x45, 0x60, 0x0a, 0x99, 0xc4, 0x0f, 0x1b, 0xfa, 0x5c, 0xca, 0x7d, 0x1f, 0x39, 0x7c, 0x18, 0xea, 0xd3, 0x3c, 0x4d, 0x3f, 0xd4, 0xd4, 0x31, 0xef, 0x84, 0xf1, 0x12, 0x92, 0x38, 0xe2, 0x96, 0xe3, 0xed, 0x7b, 0xe0, 0xf9, 0x9e, }; static const unsigned char ecdh_secp521r1_5752_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5752_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5752_sharedsecret[] = { 0x01, 0x61, 0x2e, 0xba, 0xcb, 0x6c, 0x31, 0xaf, 0x20, 0x08, 0xaa, 0x26, 0x4c, 0x45, 0xd1, 0xce, 0xe7, 0xaa, 0x53, 0x3d, 0x78, 0xe1, 0xfc, 0xf4, 0x80, 0xa3, 0x11, 0x8d, 0x23, 0x41, 0x8e, 0x23, 0x62, 0x1f, 0x0c, 0xe9, 0xc7, 0x50, 0x9f, 0x71, 0x82, 0xbf, 0x23, 0xa0, 0x2a, 0x65, 0x30, 0x65, 0x9b, 0xa6, 0x2c, 0x5f, 0x16, 0xf8, 0x63, 0x4a, 0x4f, 0x74, 0xd4, 0xc3, 0x2b, 0x26, 0xc6, 0xee, 0xcc, 0x27, }; static const wycheproof_ecdh_test ecdh_secp521r1_5752 = { .name = "ecdh_secp521r1_5752", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5752_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5752_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5752_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5752_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 472 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5753 for ECDH, tcId is 473 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5753_peerpubkey[] = { 0x01, 0xea, 0xbf, 0x31, 0x92, 0x53, 0xf8, 0x83, 0x41, 0x7a, 0x0c, 0xe2, 0x65, 0xd3, 0x14, 0x23, 0x96, 0xa7, 0x5f, 0x83, 0x0f, 0x33, 0x58, 0x94, 0x86, 0x88, 0x9b, 0xbd, 0x4e, 0x20, 0x91, 0xb8, 0x27, 0xfe, 0xf6, 0x09, 0x0a, 0xb6, 0x57, 0x68, 0xa3, 0x8f, 0xfb, 0x3a, 0x9c, 0x97, 0x79, 0x64, 0x64, 0x63, 0x4d, 0x07, 0x06, 0x22, 0xad, 0xbc, 0x3e, 0x9a, 0xf1, 0x98, 0xef, 0xb9, 0xd7, 0x29, 0xd7, 0xca, 0x00, 0x02, 0xfa, 0x30, 0x58, 0x1a, 0x7b, 0x26, 0x81, 0xf7, 0xe2, 0x24, 0xea, 0xd1, 0x35, 0xec, 0x7a, 0x61, 0x63, 0xaf, 0x4f, 0x40, 0xaa, 0x33, 0x30, 0x43, 0xa2, 0xba, 0xde, 0xce, 0xac, 0x13, 0x53, 0xab, 0x5f, 0xfb, 0xee, 0xf9, 0x29, 0x60, 0x91, 0x37, 0xcd, 0x43, 0x7e, 0x8a, 0xcc, 0xc0, 0xb0, 0x24, 0x11, 0x60, 0x39, 0x59, 0xd6, 0x1c, 0x7a, 0x70, 0xf1, 0x39, 0x1a, 0x7a, 0x99, 0x23, 0x27, 0xa7, }; static const unsigned char ecdh_secp521r1_5753_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5753_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5753_sharedsecret[] = { 0x00, 0x6a, 0x32, 0x35, 0xdf, 0x6b, 0x85, 0x34, 0x3e, 0xab, 0x82, 0x35, 0x06, 0x20, 0x88, 0x9f, 0xeb, 0xa2, 0x73, 0x60, 0x4e, 0x59, 0xeb, 0x98, 0xd7, 0x8f, 0xe6, 0x3b, 0xd4, 0x41, 0xce, 0x39, 0x41, 0x1e, 0xad, 0x84, 0x02, 0xe2, 0x50, 0x7f, 0xe1, 0x0a, 0x03, 0xfa, 0xd9, 0x56, 0x2c, 0x3b, 0xe4, 0x48, 0x83, 0x78, 0xcf, 0x2a, 0x1f, 0x4c, 0x42, 0x78, 0x5e, 0x7d, 0x93, 0x21, 0x8d, 0x99, 0xfe, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5753 = { .name = "ecdh_secp521r1_5753", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5753_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5753_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5753_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5753_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 473 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5754 for ECDH, tcId is 474 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5754_peerpubkey[] = { 0x01, 0xd3, 0x6e, 0x69, 0x6a, 0xad, 0xbb, 0xc4, 0x09, 0xb4, 0x73, 0x3f, 0xc3, 0xc8, 0x6d, 0xcb, 0x2e, 0x98, 0x0a, 0x1b, 0x7d, 0x01, 0x58, 0xf8, 0x2a, 0x27, 0xe5, 0xb1, 0x33, 0x7f, 0xd2, 0x27, 0x2e, 0x52, 0xa2, 0x7f, 0xe6, 0x7c, 0xc5, 0x87, 0x2b, 0x5b, 0x46, 0x04, 0x0d, 0x88, 0x32, 0x5b, 0x2b, 0x52, 0x4a, 0x2d, 0x5b, 0x87, 0x3b, 0xc5, 0x4f, 0xf0, 0x51, 0xc1, 0xd1, 0x6c, 0x99, 0xd9, 0xbc, 0x81, 0x00, 0x3e, 0x3f, 0x6b, 0x1a, 0x73, 0x7d, 0xa1, 0x68, 0x02, 0x43, 0x0f, 0x80, 0x9e, 0x08, 0x4c, 0xd8, 0xb3, 0x42, 0x00, 0x19, 0xc2, 0xf9, 0xf1, 0xb9, 0x78, 0xa1, 0x12, 0x8f, 0xfc, 0xb9, 0x00, 0xb9, 0xc4, 0xfa, 0xf1, 0x77, 0xa7, 0x87, 0x7e, 0x4a, 0x83, 0x84, 0x72, 0x8a, 0x1c, 0x30, 0x9d, 0x2b, 0xcf, 0xb4, 0x12, 0xfa, 0x98, 0x39, 0x82, 0xae, 0x6b, 0x45, 0x9f, 0xe0, 0x7e, 0xb9, 0xc7, 0x9e, 0xdd, }; static const unsigned char ecdh_secp521r1_5754_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5754_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5754_sharedsecret[] = { 0x00, 0x09, 0xca, 0x92, 0x9a, 0x3a, 0xd9, 0x52, 0x5d, 0x0a, 0xe1, 0x9d, 0x36, 0xb4, 0x0d, 0xc5, 0x43, 0xd2, 0x34, 0x8f, 0x8b, 0x0d, 0x95, 0xc5, 0x9c, 0x42, 0x07, 0xf8, 0x6a, 0x89, 0x88, 0x49, 0x85, 0x8e, 0x93, 0x9b, 0x44, 0x58, 0xb5, 0x68, 0xf5, 0x7c, 0x05, 0x4e, 0xe9, 0xd9, 0x56, 0x32, 0xaa, 0x24, 0xc5, 0xd5, 0xf1, 0xd4, 0xea, 0xa8, 0x9f, 0xaf, 0x8f, 0xac, 0x4d, 0x11, 0xda, 0x28, 0xdd, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_5754 = { .name = "ecdh_secp521r1_5754", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5754_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5754_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5754_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5754_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 474 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5755 for ECDH, tcId is 475 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5755_peerpubkey[] = { 0x01, 0x06, 0x1a, 0xa8, 0x9a, 0x31, 0x7c, 0x63, 0xb8, 0x24, 0xf7, 0xeb, 0xfc, 0x8b, 0xd9, 0x53, 0x4e, 0x29, 0x7d, 0xf9, 0xba, 0xcf, 0x80, 0xb8, 0x35, 0x0c, 0xbd, 0x94, 0xcd, 0xc4, 0xd3, 0xd8, 0x12, 0x7a, 0x80, 0xdb, 0x95, 0x55, 0xb7, 0x7d, 0x50, 0xea, 0x82, 0xc9, 0x9e, 0x66, 0x7f, 0x6f, 0xe5, 0x37, 0x9a, 0x77, 0xc9, 0x07, 0x8b, 0xf9, 0xc7, 0xcc, 0x04, 0x9a, 0xbe, 0x9e, 0xac, 0x7f, 0x17, 0x4c, 0x00, 0xa9, 0xab, 0xfc, 0x2a, 0x89, 0x2f, 0x10, 0x4e, 0x30, 0xcb, 0x20, 0xcc, 0x2b, 0xfb, 0xa6, 0xb9, 0x48, 0xc6, 0x63, 0x7a, 0xc0, 0x62, 0xe8, 0x3a, 0xe4, 0x78, 0xf0, 0x96, 0x86, 0x9f, 0x17, 0xdc, 0x1b, 0xb4, 0xea, 0xf5, 0x2f, 0x7d, 0x63, 0x51, 0x80, 0x31, 0xed, 0xec, 0xb2, 0x20, 0xec, 0x14, 0xb0, 0x65, 0x2e, 0x6c, 0x96, 0xe0, 0x23, 0x49, 0x0d, 0x5e, 0xd0, 0x8f, 0xb4, 0x25, 0x9d, 0xa9, 0xfa, }; static const unsigned char ecdh_secp521r1_5755_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5755_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5755_sharedsecret[] = { 0x01, 0x39, 0x50, 0xdd, 0xb6, 0xb9, 0x15, 0x45, 0x41, 0x25, 0xe3, 0x7a, 0x03, 0x84, 0x57, 0x94, 0xfe, 0x32, 0x03, 0x7e, 0xdd, 0xc0, 0x41, 0x43, 0xd9, 0x1c, 0xbf, 0x2a, 0xb8, 0x42, 0x49, 0x50, 0x12, 0x89, 0x64, 0x60, 0xd3, 0x82, 0x43, 0x74, 0xb2, 0x14, 0xec, 0xe1, 0x0f, 0x39, 0xd2, 0xac, 0x60, 0x6b, 0xb4, 0xb2, 0xf9, 0xb2, 0x75, 0x48, 0xe2, 0x17, 0x20, 0xae, 0x13, 0x26, 0x6d, 0x14, 0xbe, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_5755 = { .name = "ecdh_secp521r1_5755", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5755_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5755_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5755_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5755_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 475 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5756 for ECDH, tcId is 476 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5756_peerpubkey[] = { 0x00, 0xdf, 0x58, 0xf1, 0x93, 0xb6, 0xd4, 0xfd, 0xba, 0x1d, 0x61, 0xa4, 0xe0, 0x73, 0xa3, 0x05, 0xc9, 0x5d, 0xba, 0x4c, 0xa0, 0xfd, 0xd5, 0x8f, 0x86, 0xee, 0x32, 0xa9, 0x30, 0x4a, 0x62, 0x09, 0x7a, 0xc3, 0xc0, 0xd1, 0xfa, 0xe3, 0x2c, 0xf2, 0xe4, 0xe6, 0x5b, 0xa4, 0xef, 0xc6, 0xd0, 0x40, 0x87, 0x25, 0xf5, 0x72, 0x74, 0xf9, 0xbc, 0x22, 0x89, 0xed, 0x42, 0x6e, 0xc2, 0x70, 0x79, 0xae, 0x0b, 0x6e, 0x01, 0xf0, 0x7d, 0x98, 0xe2, 0xab, 0xa8, 0xd3, 0x8e, 0x6d, 0x54, 0xb1, 0x49, 0x6d, 0x68, 0x25, 0x10, 0x04, 0x54, 0x7f, 0x50, 0x78, 0x97, 0x54, 0xc4, 0x09, 0x76, 0x62, 0x82, 0x7b, 0xc8, 0x3f, 0x2c, 0xf5, 0x91, 0x92, 0xeb, 0x9e, 0x09, 0x01, 0x1b, 0x30, 0xc5, 0x4c, 0xad, 0x9f, 0x92, 0x41, 0xc0, 0x92, 0x41, 0x5a, 0x36, 0x6f, 0xfe, 0x5b, 0x6b, 0xdb, 0x4c, 0xfc, 0xbc, 0xdc, 0x46, 0xed, 0xcc, 0x12, }; static const unsigned char ecdh_secp521r1_5756_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5756_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5756_sharedsecret[] = { 0x01, 0xa1, 0xbc, 0x2b, 0x5e, 0x8e, 0x0a, 0x62, 0x10, 0xef, 0x8a, 0x51, 0x4d, 0xed, 0x99, 0xee, 0xe3, 0x0a, 0xc8, 0xe9, 0xaa, 0x77, 0x58, 0xad, 0xec, 0xc4, 0x91, 0x03, 0x01, 0xfc, 0x62, 0x6a, 0x56, 0x66, 0xe4, 0x54, 0x1c, 0xea, 0x03, 0xa9, 0x0f, 0x1e, 0x59, 0xfd, 0x82, 0xb8, 0xcd, 0x87, 0x08, 0x6f, 0x26, 0x10, 0x52, 0x12, 0x4c, 0xd4, 0x3b, 0x1c, 0x89, 0xfd, 0x04, 0x8d, 0xad, 0x5f, 0x29, 0x11, }; static const wycheproof_ecdh_test ecdh_secp521r1_5756 = { .name = "ecdh_secp521r1_5756", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5756_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5756_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5756_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5756_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 476 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5757 for ECDH, tcId is 477 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5757_peerpubkey[] = { 0x00, 0x73, 0xb9, 0x17, 0xa3, 0x56, 0xc0, 0xde, 0x8f, 0xef, 0x14, 0x59, 0x3f, 0x66, 0xd5, 0xda, 0xb1, 0xf0, 0xd5, 0x6b, 0x04, 0x2b, 0xa6, 0x5d, 0x20, 0x3e, 0xc1, 0x39, 0xc6, 0xcb, 0x71, 0xd9, 0x0b, 0xb7, 0xdc, 0x04, 0x44, 0xd0, 0xe3, 0xb0, 0x1b, 0xed, 0x97, 0xa5, 0xc6, 0x9f, 0x27, 0x54, 0x9c, 0x92, 0xe9, 0x5b, 0xbc, 0x7e, 0x8e, 0x0c, 0xe9, 0x32, 0xe6, 0xc4, 0x3a, 0x75, 0x55, 0x0e, 0x86, 0xec, 0x00, 0x9f, 0x20, 0x14, 0xe2, 0x9a, 0xcb, 0x2b, 0x25, 0x5b, 0xf6, 0xec, 0x91, 0x18, 0xbe, 0xbe, 0x73, 0x25, 0xe1, 0xf1, 0x1f, 0xf7, 0x88, 0x5d, 0x1a, 0x2e, 0x14, 0x29, 0x45, 0xcb, 0x74, 0x1e, 0x26, 0xb4, 0xff, 0xc6, 0xde, 0x72, 0xb7, 0x15, 0xa1, 0x48, 0xb8, 0x40, 0xdf, 0x54, 0x9b, 0x49, 0xc9, 0xa0, 0x5f, 0x88, 0x27, 0xf3, 0xef, 0x05, 0xdb, 0x98, 0xa4, 0xf6, 0x64, 0xf6, 0xdd, 0x84, 0x78, 0xf0, }; static const unsigned char ecdh_secp521r1_5757_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5757_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5757_sharedsecret[] = { 0x00, 0xf3, 0x4f, 0x3b, 0x8a, 0xe2, 0xf0, 0xfe, 0xc3, 0x68, 0x39, 0x66, 0x33, 0xf5, 0x81, 0xb9, 0x3c, 0x38, 0xe3, 0x29, 0x77, 0x00, 0x85, 0xa5, 0x1a, 0x93, 0x45, 0x70, 0x87, 0xf8, 0x11, 0x63, 0x86, 0xd5, 0x8d, 0xea, 0x54, 0xb9, 0x9c, 0xe5, 0x6a, 0x80, 0x89, 0x6a, 0xad, 0x40, 0xc2, 0xdf, 0xe6, 0x9b, 0x2d, 0xfe, 0x12, 0x6b, 0xe1, 0x7b, 0xf1, 0x5a, 0xb7, 0xf1, 0x9c, 0xe6, 0x67, 0xbf, 0xf4, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5757 = { .name = "ecdh_secp521r1_5757", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5757_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5757_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5757_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5757_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 477 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5758 for ECDH, tcId is 478 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5758_peerpubkey[] = { 0x01, 0xd8, 0x60, 0xab, 0xb5, 0xc6, 0x5f, 0x6d, 0x17, 0x91, 0xbc, 0x3f, 0xd6, 0x26, 0xe3, 0xda, 0x1c, 0xe8, 0x90, 0x51, 0x44, 0x17, 0xd6, 0x7b, 0x40, 0x71, 0x68, 0xdc, 0x7f, 0xc9, 0x66, 0x41, 0xfd, 0xa5, 0x6f, 0xb1, 0x83, 0x0f, 0x36, 0x95, 0xab, 0x01, 0x71, 0xd7, 0x86, 0x67, 0x30, 0x74, 0x7b, 0x3d, 0xce, 0x3d, 0xe6, 0x1c, 0xe7, 0x0f, 0x83, 0x1a, 0xf8, 0x5e, 0x5c, 0x6e, 0xae, 0x0b, 0x7c, 0x77, 0x01, 0xb1, 0xeb, 0xa9, 0x2b, 0x65, 0xba, 0x7e, 0xe9, 0x69, 0x1d, 0x90, 0x8a, 0x14, 0xad, 0x0a, 0x11, 0x6a, 0x4e, 0x09, 0xb4, 0x0c, 0x9e, 0xa4, 0x19, 0x7e, 0x60, 0xc0, 0xb5, 0x4f, 0x94, 0x84, 0x22, 0xba, 0xa9, 0x7d, 0x80, 0xb4, 0xcc, 0xaf, 0x7b, 0x35, 0xbe, 0x68, 0x1d, 0xed, 0x0a, 0xec, 0xdd, 0x8b, 0xdd, 0x30, 0x59, 0x05, 0x4a, 0xf8, 0x38, 0x05, 0x78, 0x88, 0x48, 0x9c, 0x00, 0xa3, 0xb7, 0x59, }; static const unsigned char ecdh_secp521r1_5758_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5758_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5758_sharedsecret[] = { 0x01, 0x20, 0x3d, 0xf6, 0x0d, 0xb3, 0x97, 0x32, 0x20, 0x7b, 0xd8, 0xdb, 0x87, 0x50, 0x1b, 0xcd, 0x84, 0x81, 0x66, 0x4a, 0x91, 0x11, 0xc8, 0xc6, 0x5b, 0x46, 0xf0, 0x02, 0xb0, 0xb8, 0x31, 0x59, 0x96, 0x0e, 0x47, 0x10, 0xeb, 0xa5, 0x48, 0xf0, 0x03, 0x9d, 0xb2, 0x4f, 0x66, 0x19, 0x0c, 0x56, 0x05, 0x33, 0x70, 0xb3, 0xc9, 0x88, 0x4d, 0x44, 0x59, 0x71, 0xa1, 0x29, 0x6d, 0xa4, 0xd6, 0x56, 0xf9, 0xc3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5758 = { .name = "ecdh_secp521r1_5758", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5758_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5758_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5758_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5758_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 478 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5759 for ECDH, tcId is 479 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5759_peerpubkey[] = { 0x01, 0xb3, 0x41, 0xa7, 0xb5, 0x81, 0x22, 0xc7, 0x0b, 0x72, 0xe7, 0x0b, 0x05, 0x1a, 0x33, 0x51, 0x86, 0xc8, 0x9f, 0xe4, 0x7b, 0x8f, 0x68, 0xc3, 0x5d, 0x09, 0x9b, 0x77, 0x59, 0xfb, 0x62, 0x08, 0x71, 0x88, 0x75, 0xd8, 0xcd, 0x8c, 0x45, 0xd1, 0x15, 0x1a, 0x37, 0x02, 0x01, 0xa1, 0xb0, 0x47, 0x00, 0x2f, 0x61, 0x9b, 0x05, 0xca, 0xfe, 0x39, 0xd4, 0x94, 0xb6, 0xa6, 0x9a, 0x52, 0xb4, 0x26, 0x53, 0x33, 0x01, 0x27, 0xe7, 0x0b, 0x8f, 0xc8, 0x40, 0x89, 0x13, 0x95, 0xaf, 0xd3, 0xb0, 0x37, 0x32, 0xd0, 0xa5, 0x2f, 0x47, 0x77, 0x65, 0x1c, 0x3d, 0x8a, 0x85, 0x79, 0xd6, 0x65, 0x85, 0x10, 0xd8, 0x68, 0xb6, 0x9f, 0x14, 0x3c, 0x7e, 0xec, 0xd2, 0xbe, 0x41, 0x2e, 0x0a, 0xd2, 0xb2, 0xd7, 0xae, 0xf0, 0x71, 0x77, 0x96, 0xf3, 0xf8, 0x48, 0x0f, 0xa9, 0x24, 0xb0, 0x9d, 0xf9, 0x01, 0x88, 0xde, 0xbe, 0x51, 0xbb, }; static const unsigned char ecdh_secp521r1_5759_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5759_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5759_sharedsecret[] = { 0x00, 0xb2, 0x2d, 0x94, 0xb5, 0x3f, 0xb0, 0x0d, 0x48, 0xe1, 0x2f, 0x12, 0x56, 0x0e, 0xaf, 0xcd, 0xec, 0x7e, 0xa1, 0x57, 0xc9, 0xb0, 0x42, 0x43, 0x6f, 0xc6, 0x66, 0x81, 0xde, 0x96, 0xaf, 0x98, 0xba, 0x98, 0xad, 0xb7, 0xfa, 0xf7, 0x9d, 0x12, 0xb3, 0x99, 0xe9, 0x01, 0xec, 0x7b, 0xc9, 0xd5, 0x11, 0x78, 0x83, 0xda, 0x20, 0x5a, 0xc2, 0x6b, 0x38, 0xf7, 0x88, 0xa7, 0x88, 0x5d, 0x43, 0x4b, 0x6e, 0x18, }; static const wycheproof_ecdh_test ecdh_secp521r1_5759 = { .name = "ecdh_secp521r1_5759", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5759_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5759_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5759_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5759_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 479 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5760 for ECDH, tcId is 480 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5760_peerpubkey[] = { 0x00, 0x01, 0xff, 0x24, 0x9a, 0xab, 0xa8, 0x06, 0xd8, 0x38, 0xc1, 0xa1, 0xd0, 0x0d, 0x9d, 0x22, 0x59, 0xe6, 0x0e, 0xa1, 0xe8, 0xee, 0xc6, 0x68, 0x64, 0x05, 0x46, 0x2a, 0xb2, 0x2a, 0x32, 0xa5, 0xb6, 0x73, 0x93, 0x2b, 0xbf, 0x63, 0xfd, 0x74, 0xea, 0xb3, 0xf6, 0x33, 0x48, 0xa6, 0xc2, 0x2e, 0x0d, 0x6e, 0x59, 0x4b, 0x25, 0x3f, 0x01, 0xea, 0x21, 0x1b, 0xb7, 0x6f, 0x0b, 0x9d, 0xce, 0x66, 0xd6, 0x71, 0x00, 0x50, 0x52, 0xc1, 0xf4, 0x4d, 0x17, 0xc3, 0x34, 0xe5, 0x22, 0xa0, 0xd8, 0xe3, 0xd9, 0x9a, 0xe3, 0x2f, 0xa4, 0x8d, 0xf6, 0xfb, 0x91, 0x17, 0xbe, 0xe4, 0x31, 0xb7, 0xa3, 0x74, 0x40, 0x31, 0x09, 0x85, 0xe5, 0xfd, 0xd8, 0x21, 0x70, 0x81, 0x7b, 0x0f, 0x68, 0xc0, 0xbb, 0x73, 0x00, 0xd2, 0x17, 0x85, 0x4e, 0x45, 0xfb, 0x69, 0x4b, 0x46, 0xf5, 0xf5, 0x03, 0x00, 0x62, 0x73, 0x90, 0x90, 0x00, 0x87, }; static const unsigned char ecdh_secp521r1_5760_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5760_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5760_sharedsecret[] = { 0x00, 0xe1, 0x7a, 0x9e, 0xbd, 0x3c, 0xe6, 0xa1, 0x9e, 0x5e, 0xaa, 0xf8, 0x89, 0xb1, 0x20, 0xac, 0x1e, 0x38, 0x77, 0x8e, 0x1c, 0x11, 0x29, 0xc3, 0x83, 0xfe, 0xc2, 0xbf, 0x97, 0x80, 0xd1, 0xc4, 0x12, 0xeb, 0xc8, 0xfb, 0xc2, 0x9b, 0x06, 0x46, 0xd7, 0x7b, 0x84, 0xe4, 0x54, 0x93, 0x37, 0x6e, 0x99, 0x1d, 0x59, 0x54, 0xce, 0x3b, 0x3c, 0xaf, 0x47, 0x9c, 0xf8, 0xf7, 0x01, 0xd8, 0x83, 0x51, 0xae, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp521r1_5760 = { .name = "ecdh_secp521r1_5760", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5760_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5760_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5760_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5760_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 480 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5761 for ECDH, tcId is 481 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5761_peerpubkey[] = { 0x00, 0xd2, 0xcb, 0x24, 0x3b, 0xdf, 0xc5, 0xff, 0xb2, 0xba, 0xcb, 0xf4, 0x37, 0x16, 0x1f, 0x02, 0xcf, 0x22, 0x97, 0x1d, 0x8b, 0x7f, 0x9c, 0xd0, 0xe6, 0x5c, 0x17, 0x49, 0x89, 0xf5, 0xed, 0x7c, 0x9c, 0xc7, 0x52, 0xa0, 0xc6, 0xa7, 0x71, 0x9d, 0xc1, 0xbf, 0x3c, 0xbb, 0x67, 0xaf, 0x5c, 0xd6, 0x02, 0x5e, 0x31, 0x3a, 0x4b, 0x0c, 0x46, 0x42, 0x9e, 0xac, 0x13, 0x20, 0xa6, 0xce, 0xb2, 0x79, 0xda, 0xc2, 0x01, 0x80, 0x93, 0xc8, 0xff, 0xb1, 0x76, 0x7b, 0x2b, 0x50, 0x10, 0x9e, 0x40, 0xf1, 0x8d, 0xbe, 0x74, 0x8a, 0x35, 0x7d, 0xe1, 0xe2, 0x84, 0x66, 0x4a, 0xa7, 0xb1, 0x0a, 0x8d, 0xf3, 0x09, 0x2a, 0x81, 0xed, 0xc1, 0x88, 0x9d, 0x15, 0x39, 0x65, 0xeb, 0x2e, 0x4f, 0x7b, 0x31, 0x48, 0x27, 0x51, 0x2b, 0x01, 0x8b, 0xaa, 0xf3, 0x92, 0x58, 0x1e, 0x2a, 0x49, 0x94, 0x1f, 0x60, 0x61, 0x35, 0x64, 0x8f, 0x8c, }; static const unsigned char ecdh_secp521r1_5761_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5761_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5761_sharedsecret[] = { 0x00, 0xff, 0x5c, 0xaf, 0x7f, 0xd6, 0xda, 0x41, 0xa1, 0xa8, 0xbb, 0x47, 0xde, 0x3a, 0x08, 0x38, 0x83, 0xe2, 0xe3, 0x82, 0x47, 0x7c, 0x1f, 0xf1, 0xd6, 0xec, 0xaa, 0x44, 0xa1, 0x63, 0xe7, 0xbd, 0x37, 0x5b, 0x67, 0xd7, 0x01, 0x37, 0x63, 0xa7, 0x76, 0xdf, 0x38, 0xe7, 0x96, 0x62, 0x31, 0x0a, 0x74, 0x87, 0x3a, 0x4c, 0xe6, 0x12, 0x6d, 0x2e, 0xc6, 0xf6, 0x82, 0x63, 0xf2, 0x48, 0x79, 0x69, 0x97, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5761 = { .name = "ecdh_secp521r1_5761", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5761_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5761_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5761_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5761_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 481 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5762 for ECDH, tcId is 482 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5762_peerpubkey[] = { 0x01, 0xda, 0x72, 0x33, 0x0f, 0xd0, 0x0e, 0xba, 0xf4, 0xe6, 0xff, 0x8a, 0x30, 0x3d, 0x25, 0xc2, 0x52, 0x7d, 0xff, 0x19, 0xd1, 0x0d, 0x8e, 0x8a, 0xad, 0x05, 0xfd, 0x75, 0x9d, 0x98, 0x07, 0x3f, 0x26, 0x2e, 0x69, 0x3c, 0xe2, 0xfc, 0x49, 0x74, 0x7a, 0xed, 0x29, 0xe2, 0x7e, 0x32, 0x3e, 0x53, 0x5d, 0x46, 0x9f, 0x0f, 0xcd, 0x1a, 0x8a, 0x1d, 0x08, 0x60, 0x4f, 0xaf, 0xe0, 0x0d, 0x1b, 0xad, 0xc4, 0xb3, 0x00, 0xb7, 0xde, 0x13, 0xe7, 0xdc, 0xed, 0xb7, 0x37, 0x60, 0x04, 0xa9, 0xf5, 0x89, 0x92, 0x2f, 0x18, 0x7b, 0xd1, 0xbe, 0x72, 0xe2, 0xde, 0x78, 0x93, 0x87, 0x3d, 0x23, 0x92, 0xbb, 0xb8, 0x4a, 0xa8, 0x71, 0x10, 0x0f, 0x8b, 0x95, 0x54, 0x8f, 0x5d, 0xf8, 0x96, 0x62, 0xe9, 0x8b, 0x63, 0x1c, 0x4e, 0xe4, 0xd0, 0x55, 0x80, 0x96, 0xd4, 0x17, 0x0b, 0xe0, 0xc1, 0xe2, 0x1c, 0xc0, 0x59, 0x55, 0x82, 0x3b, }; static const unsigned char ecdh_secp521r1_5762_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5762_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5762_sharedsecret[] = { 0x01, 0xa6, 0x4d, 0xa0, 0x50, 0x3e, 0x2d, 0xf5, 0xd3, 0x83, 0x83, 0x7d, 0x05, 0xcd, 0x43, 0x6e, 0xa6, 0x27, 0x38, 0x1e, 0x48, 0xe3, 0x69, 0x58, 0x91, 0x17, 0x5a, 0xc8, 0xed, 0xe9, 0x16, 0x9d, 0xdf, 0x57, 0x3b, 0x66, 0x72, 0x6c, 0x28, 0x13, 0x22, 0x77, 0xbe, 0xda, 0x84, 0xbb, 0x47, 0xf2, 0x79, 0x2b, 0x41, 0x11, 0x3a, 0x0d, 0x2a, 0xca, 0x71, 0x08, 0x46, 0x18, 0xf5, 0x5d, 0xaa, 0xe5, 0x5f, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_5762 = { .name = "ecdh_secp521r1_5762", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5762_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5762_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5762_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5762_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 482 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5763 for ECDH, tcId is 483 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5763_peerpubkey[] = { 0x00, 0x77, 0xfe, 0x79, 0x58, 0x11, 0x95, 0x35, 0xca, 0x6c, 0x1a, 0x7c, 0x87, 0xbb, 0x4d, 0xc9, 0xb9, 0x36, 0x67, 0x8a, 0xb3, 0xb7, 0x57, 0xe7, 0x81, 0x69, 0x38, 0xbc, 0x85, 0x76, 0x43, 0x60, 0x6e, 0x61, 0x64, 0x7d, 0x23, 0x1b, 0x9d, 0xad, 0x3e, 0x03, 0xfc, 0x4d, 0xd2, 0x9a, 0xce, 0x5f, 0xc8, 0x23, 0xe1, 0x5f, 0x34, 0x64, 0xd8, 0xe2, 0x36, 0xd5, 0x86, 0x2b, 0x1f, 0x62, 0x80, 0xc8, 0x36, 0x92, 0x00, 0x61, 0xba, 0x73, 0x6c, 0x11, 0xff, 0xa6, 0xd0, 0xfa, 0xe6, 0xbc, 0x8f, 0x3e, 0x66, 0xba, 0xbd, 0x3c, 0x6d, 0x79, 0xb8, 0x9e, 0xe6, 0x39, 0x45, 0x9e, 0xc6, 0x5a, 0x71, 0xf1, 0x2e, 0xab, 0xcd, 0xac, 0xa4, 0x47, 0xa9, 0x93, 0x12, 0x1d, 0xc6, 0x3d, 0xde, 0x6a, 0xe0, 0xcc, 0xeb, 0xe4, 0x15, 0xf4, 0xbf, 0xe6, 0x0f, 0xe3, 0xfe, 0xc3, 0xd2, 0xf4, 0x8a, 0x08, 0x4b, 0x75, 0x9f, 0x07, 0x8a, 0xc4, }; static const unsigned char ecdh_secp521r1_5763_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5763_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5763_sharedsecret[] = { 0x01, 0x40, 0x95, 0x2c, 0x27, 0x3a, 0xb5, 0x12, 0xe3, 0xa5, 0x89, 0x34, 0xe3, 0x75, 0x4f, 0x27, 0x24, 0x63, 0x40, 0x7e, 0x61, 0x89, 0xb9, 0xc1, 0xe2, 0x59, 0xc2, 0x7f, 0x6d, 0x43, 0x3c, 0x48, 0x27, 0x53, 0x2d, 0xf6, 0x27, 0x74, 0x5a, 0xcd, 0xa6, 0x4f, 0xd1, 0x79, 0x93, 0x50, 0x8b, 0xfd, 0xef, 0x54, 0x71, 0x1f, 0x57, 0x5c, 0xff, 0xad, 0x61, 0xc7, 0x29, 0xe8, 0xd6, 0xdd, 0x87, 0x84, 0x20, 0x4f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5763 = { .name = "ecdh_secp521r1_5763", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5763_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5763_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5763_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5763_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 483 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5764 for ECDH, tcId is 484 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5764_peerpubkey[] = { 0x01, 0x1d, 0x3f, 0xf1, 0x4f, 0x89, 0x06, 0xdb, 0x60, 0xc7, 0xbc, 0x09, 0xc7, 0x86, 0xbe, 0x68, 0x47, 0x76, 0x8b, 0x86, 0x84, 0x95, 0x7b, 0xf3, 0x92, 0x8c, 0x55, 0x6b, 0xf5, 0xce, 0x7a, 0x8c, 0xc8, 0x2f, 0x9a, 0xb0, 0xe6, 0x3b, 0x4b, 0xd7, 0xeb, 0x87, 0x76, 0x7b, 0x3d, 0xb2, 0x62, 0x49, 0x57, 0xc3, 0xf1, 0x03, 0xe8, 0x7b, 0x5c, 0x19, 0x7d, 0xc8, 0xc6, 0xd2, 0x50, 0x73, 0x33, 0xea, 0x56, 0x9d, 0x00, 0x4a, 0xb9, 0xee, 0xee, 0xab, 0x95, 0x00, 0x86, 0xe0, 0x30, 0xfc, 0x60, 0xb6, 0xb2, 0xe4, 0x79, 0x73, 0x58, 0x2a, 0x28, 0x2e, 0x3b, 0x01, 0x9e, 0x62, 0x74, 0x4f, 0x19, 0xc6, 0x0c, 0xa0, 0x20, 0x8e, 0x3a, 0x53, 0x7d, 0x6c, 0xa3, 0x53, 0x2c, 0x59, 0xa7, 0x7c, 0x54, 0x0b, 0xce, 0x03, 0x99, 0x98, 0x87, 0x48, 0x3d, 0xdd, 0xdf, 0xd5, 0x24, 0xb6, 0xf9, 0xd7, 0xbf, 0xb6, 0xb1, 0x13, 0x9b, 0xba, }; static const unsigned char ecdh_secp521r1_5764_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5764_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5764_sharedsecret[] = { 0x00, 0x1a, 0x3a, 0x43, 0x43, 0xa4, 0x29, 0x5b, 0x07, 0xd4, 0xb2, 0x8f, 0x71, 0x69, 0x7c, 0xaf, 0x7e, 0x36, 0x3e, 0x2f, 0x3c, 0xa2, 0x05, 0xeb, 0xb8, 0x28, 0xc4, 0x4d, 0xeb, 0x2f, 0x5b, 0xb3, 0xd9, 0x51, 0x16, 0xf3, 0x6e, 0x25, 0xe9, 0x0e, 0xb0, 0x04, 0x24, 0xc9, 0x88, 0x0b, 0x45, 0x53, 0x55, 0x4f, 0xf0, 0x1f, 0x38, 0xb5, 0x2c, 0xb3, 0x4d, 0xa6, 0x43, 0x20, 0x7d, 0x6f, 0x29, 0x31, 0x2f, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_5764 = { .name = "ecdh_secp521r1_5764", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5764_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5764_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5764_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5764_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 484 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5765 for ECDH, tcId is 485 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5765_peerpubkey[] = { 0x00, 0x9c, 0x9e, 0xb4, 0xcc, 0x6b, 0xed, 0x68, 0x9d, 0xa8, 0x15, 0xf0, 0x5e, 0x3c, 0xcd, 0x26, 0x75, 0x47, 0x3c, 0x42, 0x7d, 0x31, 0x15, 0x8f, 0x12, 0x10, 0xfd, 0x8a, 0x6a, 0xfc, 0xfb, 0x27, 0x29, 0x71, 0xef, 0x0a, 0x06, 0x96, 0xe4, 0x8f, 0xc0, 0x1e, 0xd9, 0xd8, 0x2c, 0x9b, 0x1d, 0x4b, 0xe0, 0x86, 0xfa, 0x5a, 0x13, 0x63, 0x70, 0x27, 0x80, 0x83, 0x8d, 0xa4, 0xfb, 0xd6, 0x48, 0x15, 0x36, 0xd3, 0x00, 0xb3, 0x87, 0xbd, 0xba, 0x82, 0xa5, 0xfe, 0x57, 0x73, 0x2e, 0xbe, 0xd2, 0x6a, 0x48, 0x7d, 0x03, 0x15, 0x72, 0xc2, 0x23, 0x40, 0x3c, 0x06, 0x30, 0x39, 0x61, 0x7f, 0x8e, 0x5c, 0x27, 0x02, 0xf6, 0x02, 0xe4, 0xb8, 0x75, 0x24, 0xf2, 0x98, 0x39, 0x2a, 0xe1, 0xd5, 0x86, 0x2f, 0xa0, 0xff, 0x99, 0x2e, 0x51, 0xfc, 0xe7, 0xf1, 0x45, 0x7a, 0x09, 0x91, 0xbf, 0x25, 0xf6, 0x6c, 0xf8, 0x45, 0x63, 0x9e, }; static const unsigned char ecdh_secp521r1_5765_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5765_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5765_sharedsecret[] = { 0x00, 0x10, 0x3e, 0xda, 0x70, 0x7b, 0x4d, 0x5e, 0x9a, 0x4a, 0xdc, 0x17, 0xb8, 0x8c, 0xc3, 0x41, 0x96, 0x67, 0x98, 0xb6, 0x4c, 0x24, 0x2c, 0xd1, 0x3a, 0xbd, 0xf3, 0x19, 0xb7, 0x7c, 0xb9, 0xef, 0x2f, 0x06, 0x81, 0x6e, 0xe8, 0x20, 0x89, 0x82, 0x35, 0x19, 0x8f, 0x62, 0x07, 0x1e, 0xe8, 0xb5, 0xc1, 0x73, 0x5e, 0x28, 0x8d, 0xd7, 0x5b, 0xb0, 0xe5, 0xd5, 0x47, 0x92, 0x87, 0xa0, 0x2d, 0x21, 0xe8, 0x33, }; static const wycheproof_ecdh_test ecdh_secp521r1_5765 = { .name = "ecdh_secp521r1_5765", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5765_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5765_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5765_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5765_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 485 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5766 for ECDH, tcId is 486 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5766_peerpubkey[] = { 0x01, 0x99, 0x3d, 0x74, 0xf0, 0xa4, 0xa1, 0x2d, 0x28, 0x04, 0xbf, 0x9e, 0x25, 0x75, 0x2f, 0xab, 0x9d, 0xc0, 0xae, 0x60, 0xab, 0xc6, 0x77, 0x2d, 0xfe, 0x10, 0xaf, 0xb0, 0x56, 0xb3, 0x26, 0x1f, 0x14, 0xfc, 0x51, 0x58, 0x4b, 0xaf, 0x25, 0x63, 0x40, 0xb3, 0x65, 0x21, 0x20, 0xf2, 0x4f, 0xac, 0x70, 0x0b, 0x72, 0x9d, 0xed, 0xec, 0x97, 0xb4, 0x21, 0xa1, 0xe9, 0x31, 0xc1, 0x7c, 0x52, 0x8d, 0x5a, 0x43, 0x00, 0x90, 0x3f, 0x97, 0x78, 0x2e, 0xc1, 0xc5, 0xaa, 0xcd, 0x7c, 0x3a, 0xb0, 0x20, 0x82, 0xd7, 0xa2, 0xf6, 0x31, 0xd9, 0x94, 0x4d, 0xc5, 0x2c, 0x9a, 0xd4, 0xe0, 0x25, 0x8a, 0x89, 0x9e, 0xfb, 0x33, 0xbd, 0x81, 0x06, 0x8a, 0xd4, 0x3d, 0x7d, 0xc6, 0x43, 0xb4, 0xd7, 0xf2, 0x39, 0xa7, 0xac, 0x42, 0xa2, 0x6f, 0x4d, 0x27, 0x80, 0x21, 0x5a, 0x68, 0x49, 0x5f, 0x79, 0xed, 0xa8, 0x1e, 0x8e, 0xad, 0x64, }; static const unsigned char ecdh_secp521r1_5766_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5766_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5766_sharedsecret[] = { 0x01, 0x08, 0x7a, 0xd9, 0x7d, 0x71, 0x21, 0x92, 0x8c, 0x8e, 0x35, 0xe2, 0xfe, 0x91, 0x5f, 0x8c, 0x90, 0xf3, 0x45, 0x0d, 0xee, 0x09, 0xd3, 0xf6, 0x76, 0x1c, 0x29, 0x04, 0x26, 0xc7, 0x43, 0x18, 0xe8, 0x8f, 0xd0, 0x44, 0x64, 0xc0, 0xfc, 0xc0, 0x43, 0x21, 0x71, 0x66, 0x7b, 0x57, 0x1d, 0x83, 0x4a, 0xe7, 0x7e, 0xcc, 0xa8, 0xa4, 0x10, 0x37, 0x96, 0x85, 0xd3, 0x0b, 0x8c, 0xd2, 0x8d, 0xc0, 0x4b, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5766 = { .name = "ecdh_secp521r1_5766", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5766_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5766_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5766_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5766_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 486 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5767 for ECDH, tcId is 487 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5767_peerpubkey[] = { 0x01, 0x07, 0xd8, 0xb6, 0x3b, 0xc0, 0x95, 0x85, 0x10, 0xed, 0xda, 0xb9, 0xf1, 0x1f, 0xa3, 0x5a, 0xe4, 0xe5, 0xd9, 0x7c, 0x92, 0x30, 0x40, 0x38, 0xd8, 0xec, 0x27, 0xf6, 0xe9, 0x70, 0x05, 0xd0, 0x14, 0x3e, 0x96, 0x9c, 0x54, 0x19, 0xe8, 0x2e, 0xba, 0x50, 0x93, 0x36, 0xe2, 0x34, 0x98, 0xc5, 0xb7, 0x3e, 0x8f, 0x0b, 0x21, 0xe3, 0xd9, 0xf5, 0xcb, 0x56, 0x16, 0x09, 0x66, 0x9e, 0xf6, 0x78, 0xc7, 0xd4, 0x01, 0x96, 0xc5, 0x35, 0xb6, 0x23, 0xbe, 0x6e, 0xfa, 0x50, 0x4e, 0x96, 0x9e, 0xa7, 0x1c, 0xb9, 0x25, 0x28, 0x76, 0x08, 0x74, 0x0d, 0x04, 0xac, 0xb3, 0x42, 0xb4, 0x13, 0x58, 0x82, 0x78, 0x3d, 0xb8, 0xd2, 0x55, 0xa6, 0xd5, 0x56, 0xff, 0xc1, 0x65, 0x24, 0xba, 0xbe, 0xee, 0x06, 0xd1, 0xf2, 0x80, 0xab, 0x81, 0x71, 0x84, 0x8e, 0x7d, 0xb5, 0x4b, 0x76, 0xa3, 0xb3, 0x1e, 0x41, 0x57, 0x21, 0x96, 0x14, }; static const unsigned char ecdh_secp521r1_5767_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5767_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5767_sharedsecret[] = { 0x00, 0x74, 0xc3, 0x32, 0xbe, 0xc2, 0x02, 0x83, 0x72, 0xda, 0xc8, 0x2b, 0xb7, 0x4c, 0x3f, 0x3b, 0x4b, 0xd0, 0xf0, 0xa6, 0x52, 0x1d, 0xfd, 0xf0, 0xcc, 0xe8, 0x77, 0xb1, 0xa9, 0x9e, 0x50, 0x6e, 0xf0, 0xe4, 0xfd, 0x9b, 0xce, 0xfd, 0x33, 0x65, 0x42, 0x8f, 0x25, 0x7e, 0xd1, 0x59, 0x5d, 0xce, 0xdb, 0xef, 0xe9, 0x99, 0x28, 0xe7, 0xfa, 0x7a, 0xf8, 0x91, 0xfd, 0xc1, 0xb6, 0xff, 0x9d, 0xe1, 0x25, 0x36, }; static const wycheproof_ecdh_test ecdh_secp521r1_5767 = { .name = "ecdh_secp521r1_5767", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5767_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5767_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5767_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5767_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 487 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5768 for ECDH, tcId is 488 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5768_peerpubkey[] = { 0x01, 0xd3, 0xf5, 0x70, 0x4d, 0xbc, 0x67, 0xfe, 0x3e, 0x9e, 0xc3, 0xa0, 0x26, 0x12, 0xed, 0xf0, 0x4a, 0x82, 0xfc, 0xf9, 0xd5, 0xa4, 0x1c, 0x5a, 0x33, 0x0f, 0x4d, 0xc6, 0x5b, 0x7c, 0x1e, 0x8a, 0x92, 0x7f, 0xed, 0xf3, 0x1a, 0x52, 0xb2, 0x8b, 0xfe, 0x2b, 0x84, 0xe0, 0x8f, 0x9d, 0xd9, 0x8a, 0x26, 0x89, 0x44, 0x05, 0x53, 0xdd, 0x89, 0x19, 0xfd, 0xdd, 0x56, 0xed, 0x73, 0x6b, 0x9d, 0x06, 0x4c, 0xc3, 0x00, 0x01, 0x79, 0xaa, 0xda, 0x23, 0x20, 0x04, 0x9f, 0x18, 0x43, 0x0d, 0x32, 0xa6, 0x58, 0x89, 0xab, 0x5a, 0x98, 0x40, 0xff, 0x43, 0x38, 0x8f, 0x7e, 0x22, 0x53, 0xbe, 0x3e, 0x0e, 0xa4, 0x1d, 0x6a, 0xbe, 0x9e, 0x33, 0xb0, 0xc8, 0xa8, 0x05, 0xc8, 0x0c, 0x52, 0xfa, 0x66, 0xda, 0xb4, 0x5f, 0x7e, 0xd2, 0x04, 0x39, 0x00, 0xe3, 0xad, 0xa8, 0xd0, 0x25, 0x64, 0x8c, 0x48, 0x22, 0x74, 0x3b, 0x51, 0x94, }; static const unsigned char ecdh_secp521r1_5768_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5768_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5768_sharedsecret[] = { 0x01, 0x8d, 0x9f, 0x7f, 0x73, 0x20, 0x23, 0xd2, 0xf8, 0x70, 0x97, 0xc6, 0xf5, 0x8a, 0xfc, 0x7c, 0xee, 0x91, 0xc6, 0x7b, 0x3d, 0xf3, 0xb3, 0x18, 0x51, 0x7b, 0xbb, 0x40, 0x26, 0x64, 0xf5, 0x82, 0x94, 0x08, 0xd9, 0x11, 0xb0, 0xa9, 0xb4, 0x1c, 0xb2, 0xf7, 0xdc, 0xb9, 0x6d, 0x4f, 0xba, 0x36, 0xd9, 0x0f, 0x02, 0x75, 0xe0, 0xbf, 0x6b, 0x12, 0x53, 0xd1, 0x7c, 0xe3, 0xf2, 0x67, 0xa7, 0xb5, 0x6b, 0xff, }; static const wycheproof_ecdh_test ecdh_secp521r1_5768 = { .name = "ecdh_secp521r1_5768", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5768_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5768_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5768_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5768_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 488 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5769 for ECDH, tcId is 489 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5769_peerpubkey[] = { 0x00, 0xd3, 0xdc, 0x62, 0xa0, 0x70, 0xaf, 0x81, 0xad, 0x1d, 0xbe, 0x02, 0xff, 0x07, 0x58, 0x68, 0xaa, 0x35, 0xe3, 0xc3, 0xb5, 0x55, 0xf5, 0x8d, 0xa4, 0x48, 0x5e, 0x15, 0xbd, 0xe7, 0x89, 0xb6, 0x80, 0x2b, 0x57, 0x98, 0x87, 0xd7, 0x53, 0xaa, 0x13, 0x58, 0x91, 0x67, 0xdd, 0x26, 0xb1, 0x24, 0x89, 0x73, 0x4e, 0x80, 0xa3, 0x49, 0x41, 0xc6, 0x38, 0xc1, 0x02, 0xfa, 0x5c, 0x19, 0x9e, 0x4d, 0x11, 0x18, 0x01, 0x90, 0xa3, 0x53, 0x41, 0x20, 0xb8, 0xff, 0x4c, 0xf7, 0xa9, 0x38, 0x61, 0x85, 0xcd, 0x2c, 0x7a, 0xee, 0x66, 0x67, 0xf1, 0x30, 0xcf, 0xf1, 0xb0, 0x60, 0x24, 0x2d, 0x34, 0x00, 0x29, 0xc1, 0x5e, 0xb7, 0xd5, 0x21, 0xe1, 0xf6, 0xa9, 0x66, 0x3f, 0x19, 0xb2, 0xfe, 0x74, 0x0b, 0x43, 0x84, 0xbf, 0x34, 0x80, 0xe7, 0x6c, 0xbd, 0xee, 0x1d, 0xa7, 0x7b, 0x8f, 0x1c, 0x45, 0xb9, 0xe9, 0x26, 0x88, 0x4f, }; static const unsigned char ecdh_secp521r1_5769_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5769_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5769_sharedsecret[] = { 0x01, 0x6f, 0x12, 0x95, 0x31, 0xc6, 0x71, 0x38, 0x80, 0x10, 0xd4, 0x1c, 0x93, 0x4a, 0x25, 0x92, 0xd5, 0x7d, 0xe3, 0x37, 0x6d, 0xe7, 0xab, 0xfd, 0x32, 0xdb, 0x1b, 0x42, 0xb3, 0x4f, 0xdb, 0x13, 0xe5, 0xc8, 0x37, 0x1d, 0xb8, 0xc3, 0x61, 0x01, 0xea, 0x35, 0xe2, 0x6d, 0x04, 0xe1, 0x9b, 0xa8, 0x91, 0xb0, 0x81, 0x6a, 0x82, 0x1c, 0x51, 0x03, 0xa1, 0xf6, 0x8c, 0x9d, 0xc3, 0x99, 0xb1, 0xe4, 0xed, 0x50, }; static const wycheproof_ecdh_test ecdh_secp521r1_5769 = { .name = "ecdh_secp521r1_5769", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5769_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5769_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5769_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5769_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 489 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5770 for ECDH, tcId is 490 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5770_peerpubkey[] = { 0x00, 0xd5, 0x1e, 0x31, 0x63, 0x49, 0x26, 0x26, 0x9b, 0x2a, 0x08, 0x85, 0xc8, 0x28, 0xa5, 0xab, 0x76, 0xb1, 0xfe, 0x4e, 0x5e, 0x3d, 0x94, 0x1d, 0x96, 0x78, 0xe4, 0xbb, 0x07, 0x90, 0x02, 0xbd, 0x3c, 0x8e, 0x6c, 0x1f, 0x15, 0x7e, 0x63, 0xc2, 0x75, 0x73, 0x1d, 0x57, 0x37, 0x91, 0x42, 0xa8, 0xdf, 0x95, 0x87, 0xd1, 0x0b, 0x75, 0xff, 0xe6, 0x2e, 0xb4, 0x53, 0x0e, 0x75, 0xd7, 0x63, 0x40, 0x26, 0xd7, 0x00, 0x07, 0x80, 0xe8, 0xbc, 0xea, 0x8d, 0x13, 0x99, 0x94, 0x3f, 0x5b, 0xd0, 0xf4, 0xfd, 0x18, 0x37, 0xdb, 0x2f, 0x9b, 0xe7, 0xfc, 0x46, 0x69, 0xd0, 0x42, 0x2c, 0x42, 0x8c, 0x22, 0x3d, 0xa5, 0x3b, 0x95, 0x66, 0xef, 0x0d, 0x27, 0xbb, 0x64, 0xca, 0xe0, 0x1d, 0x9f, 0x94, 0x9d, 0x1a, 0x74, 0x4e, 0x8b, 0x0e, 0x79, 0x27, 0x80, 0xd1, 0xa2, 0x43, 0xa0, 0x79, 0x39, 0x54, 0x18, 0x16, 0x6d, 0x17, 0x6b, }; static const unsigned char ecdh_secp521r1_5770_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5770_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5770_sharedsecret[] = { 0x00, 0xf5, 0x55, 0x04, 0xf1, 0x71, 0x4e, 0x07, 0x70, 0x2a, 0xcb, 0x1c, 0x59, 0x4d, 0xd2, 0x46, 0x60, 0x3f, 0xb7, 0x1f, 0x11, 0xe4, 0x9d, 0xe5, 0x90, 0x6a, 0xcf, 0x6d, 0xc3, 0xbe, 0xf6, 0xa2, 0x40, 0x2e, 0x1c, 0x5d, 0xad, 0x88, 0x31, 0xaa, 0x18, 0x89, 0x45, 0x31, 0xca, 0xe0, 0x87, 0xa2, 0xdd, 0xa4, 0x0f, 0xe2, 0xdb, 0x58, 0x2d, 0x3c, 0x20, 0xd6, 0x02, 0xaf, 0x62, 0xdc, 0x12, 0xb7, 0xe2, 0x95, }; static const wycheproof_ecdh_test ecdh_secp521r1_5770 = { .name = "ecdh_secp521r1_5770", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5770_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5770_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5770_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5770_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in left to right addition chain, tcId is 490 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5771 for ECDH, tcId is 491 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5771_peerpubkey[] = { 0x01, 0x9d, 0x77, 0x70, 0xd5, 0xd9, 0xdb, 0xe5, 0x07, 0x86, 0xec, 0x90, 0x9d, 0x07, 0x1f, 0x12, 0xd0, 0xb6, 0xd1, 0x0c, 0x8b, 0x1d, 0xdb, 0xf5, 0x46, 0xd0, 0xe6, 0xf4, 0xa3, 0xff, 0x7e, 0x04, 0x76, 0xf0, 0x44, 0x72, 0xee, 0xe3, 0x3d, 0x87, 0x75, 0x58, 0x65, 0x04, 0xf0, 0x05, 0xe8, 0x23, 0x29, 0xcd, 0x6b, 0x6c, 0xae, 0x3f, 0x63, 0x01, 0x2a, 0x37, 0xab, 0x16, 0xc4, 0x7f, 0x27, 0xce, 0xb3, 0x6c, 0x00, 0x9d, 0x6b, 0x67, 0x0e, 0xb3, 0x3f, 0xef, 0xca, 0xfa, 0x11, 0x85, 0x7f, 0x5c, 0x3b, 0xab, 0x4f, 0xbe, 0x41, 0xc1, 0x74, 0x65, 0x0e, 0x25, 0xe4, 0x9c, 0x65, 0xac, 0x63, 0xcd, 0xd2, 0xc2, 0xa8, 0xf8, 0xf6, 0x05, 0xd7, 0xe2, 0x67, 0xec, 0x20, 0x23, 0xf3, 0x99, 0x96, 0xb8, 0xe8, 0x25, 0xdd, 0x04, 0x31, 0x82, 0x21, 0x08, 0xe2, 0xc0, 0x1f, 0xf0, 0x77, 0x57, 0xd2, 0x49, 0x58, 0x05, 0xb4, 0x4b, }; static const unsigned char ecdh_secp521r1_5771_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5771_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5771_sharedsecret[] = { 0x01, 0xb6, 0x3a, 0x08, 0xa8, 0xfe, 0xa8, 0x20, 0xed, 0x8c, 0x01, 0xf0, 0xb8, 0x48, 0x25, 0x49, 0xa1, 0x36, 0x06, 0xbd, 0x95, 0xa7, 0xf3, 0x68, 0x9f, 0xdf, 0xca, 0x6c, 0x3f, 0x4e, 0x3d, 0x34, 0x9c, 0x7d, 0x41, 0x84, 0x7f, 0x13, 0x4d, 0x06, 0xfa, 0xbc, 0x01, 0x2b, 0xff, 0xe9, 0x8c, 0xc6, 0xe1, 0x6e, 0xf5, 0x73, 0xb5, 0x34, 0xb3, 0xd6, 0x47, 0x92, 0xd1, 0x2d, 0x0c, 0xd3, 0xf1, 0xcc, 0xf1, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5771 = { .name = "ecdh_secp521r1_5771", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5771_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5771_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5771_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5771_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 491 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5772 for ECDH, tcId is 492 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5772_peerpubkey[] = { 0x01, 0xf3, 0x83, 0xca, 0x1f, 0xa8, 0xfb, 0xa4, 0xec, 0x01, 0x31, 0x92, 0x7e, 0x66, 0x88, 0xa3, 0x74, 0xf1, 0xfb, 0xf0, 0x4f, 0x2e, 0x79, 0x3b, 0x6b, 0x06, 0x31, 0xd1, 0x9c, 0x24, 0xec, 0x6c, 0xd7, 0x5c, 0x52, 0xd0, 0xb1, 0x9e, 0xc2, 0x7c, 0x37, 0x7a, 0x4a, 0xc4, 0x83, 0x4b, 0xc9, 0x90, 0x01, 0x62, 0x42, 0x04, 0x55, 0x21, 0x54, 0xbe, 0xa2, 0x98, 0x56, 0x63, 0x00, 0x64, 0x3c, 0x63, 0x28, 0x7c, 0x00, 0xbd, 0x95, 0x61, 0x7d, 0x16, 0x55, 0xdc, 0xcc, 0x5b, 0x8a, 0xd5, 0x0f, 0xe7, 0xb1, 0xc0, 0x0b, 0xd5, 0x11, 0x1b, 0x00, 0x33, 0x8d, 0x6e, 0x59, 0x87, 0xa0, 0x74, 0x2f, 0x60, 0x8b, 0x74, 0xa9, 0x35, 0x02, 0xb1, 0x26, 0x0f, 0xd1, 0x93, 0xb3, 0xbd, 0x3a, 0x90, 0xc8, 0x43, 0xc1, 0x34, 0x4a, 0xf1, 0x63, 0x87, 0x73, 0x18, 0x90, 0x36, 0x63, 0x7c, 0x3d, 0x75, 0x04, 0xd5, 0x0e, 0x80, 0x65, 0x55, }; static const unsigned char ecdh_secp521r1_5772_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5772_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5772_sharedsecret[] = { 0x01, 0x53, 0x53, 0xc0, 0x8c, 0xa7, 0xc4, 0x84, 0xe2, 0x7a, 0x3e, 0x04, 0xc1, 0xd8, 0xdf, 0xee, 0xec, 0xac, 0x17, 0x3c, 0x2b, 0x6e, 0x2a, 0x5d, 0xbc, 0xb0, 0xda, 0x52, 0x23, 0xe6, 0x34, 0xbd, 0x2d, 0x52, 0x7d, 0x8b, 0x34, 0xba, 0x0e, 0x59, 0x2c, 0xaf, 0x9d, 0x62, 0x34, 0xfc, 0x54, 0x45, 0x2c, 0x5f, 0xb5, 0x05, 0x83, 0x3a, 0x97, 0x70, 0x8c, 0xcb, 0x8d, 0xeb, 0xc4, 0xdf, 0x5d, 0xca, 0xcb, 0xb3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5772 = { .name = "ecdh_secp521r1_5772", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5772_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5772_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5772_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5772_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 492 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5773 for ECDH, tcId is 493 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5773_peerpubkey[] = { 0x00, 0x5d, 0x11, 0xff, 0xc0, 0x3c, 0x08, 0xae, 0x32, 0x3c, 0xb9, 0x38, 0xfb, 0x6f, 0x2a, 0x33, 0xef, 0xbc, 0xbd, 0x61, 0xa6, 0x58, 0x40, 0xc3, 0x3b, 0x20, 0x72, 0x65, 0xec, 0x8a, 0xdd, 0x07, 0x64, 0xd5, 0x9e, 0x58, 0x40, 0xa8, 0x5a, 0x06, 0x2b, 0xfb, 0x1f, 0x70, 0x55, 0x59, 0xc1, 0x95, 0x4a, 0xee, 0x96, 0xe2, 0x3c, 0x88, 0x8e, 0x0a, 0xb6, 0x70, 0x4f, 0x36, 0x2b, 0xf5, 0xc5, 0x88, 0x82, 0xf7, 0x01, 0x3d, 0x7a, 0x4a, 0xf3, 0xb3, 0xa5, 0x8a, 0xd1, 0x96, 0x12, 0xa1, 0xc3, 0x71, 0x23, 0x43, 0x88, 0xd8, 0xc0, 0x6f, 0x53, 0xf0, 0x3b, 0x39, 0xe8, 0x4c, 0x22, 0x55, 0x7c, 0xc6, 0x64, 0x1a, 0x55, 0x80, 0x68, 0x7b, 0xb0, 0x86, 0x32, 0xee, 0xd3, 0x1e, 0x0c, 0xc1, 0x14, 0xd1, 0x79, 0xda, 0x68, 0x65, 0x37, 0x6a, 0x9d, 0x9b, 0x0e, 0xec, 0x67, 0xc1, 0xc5, 0x98, 0xee, 0x97, 0x2b, 0x77, 0x1b, 0x6e, }; static const unsigned char ecdh_secp521r1_5773_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5773_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5773_sharedsecret[] = { 0x01, 0x74, 0x0f, 0x76, 0xc8, 0xd2, 0xbb, 0xd7, 0x17, 0x9f, 0xbe, 0xd6, 0x14, 0x12, 0x3f, 0xe2, 0xfd, 0xbb, 0x85, 0xfe, 0x82, 0x20, 0x30, 0x0b, 0x40, 0xcb, 0xbb, 0x53, 0x9d, 0x47, 0x54, 0xc5, 0xef, 0x63, 0xf7, 0xb2, 0xbc, 0x27, 0xe1, 0x29, 0x47, 0x8e, 0x7a, 0xce, 0xec, 0x83, 0x47, 0x13, 0xce, 0xba, 0x27, 0xe2, 0xf6, 0x79, 0x53, 0x44, 0x37, 0x2d, 0x3c, 0x4d, 0x93, 0x5a, 0x9c, 0x9e, 0x46, 0x96, }; static const wycheproof_ecdh_test ecdh_secp521r1_5773 = { .name = "ecdh_secp521r1_5773", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5773_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5773_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5773_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5773_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 493 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5774 for ECDH, tcId is 494 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5774_peerpubkey[] = { 0x01, 0xe9, 0xe3, 0x95, 0xfe, 0x1b, 0x0b, 0x16, 0x62, 0x25, 0x6a, 0x4b, 0x59, 0x53, 0xe9, 0x89, 0x71, 0xdc, 0xee, 0xe0, 0x98, 0xb3, 0x4f, 0x9f, 0xaa, 0x87, 0xc0, 0x7a, 0x15, 0xe2, 0xd9, 0x61, 0x8e, 0x71, 0x3f, 0x98, 0xcc, 0x4f, 0x8e, 0x89, 0xd6, 0x6e, 0x06, 0xbf, 0x7f, 0x6b, 0x5b, 0x2e, 0x01, 0x24, 0x91, 0x85, 0x1b, 0x11, 0xd7, 0x11, 0x41, 0x38, 0x5f, 0xa9, 0xb4, 0x33, 0x47, 0xc4, 0x82, 0x3f, 0x00, 0x82, 0x05, 0xa3, 0x91, 0xbb, 0x03, 0x75, 0x0c, 0x79, 0x51, 0xf4, 0x10, 0x69, 0x1d, 0xd4, 0x2c, 0xf3, 0xd7, 0x1d, 0xf5, 0xf7, 0x6b, 0x98, 0xc0, 0xd0, 0x82, 0x46, 0x0c, 0x21, 0xf9, 0x63, 0x61, 0x01, 0x39, 0x52, 0x22, 0x4d, 0xda, 0x74, 0x63, 0xcd, 0xe1, 0x6f, 0x24, 0x2c, 0x34, 0xc6, 0x26, 0x73, 0xd9, 0x15, 0x6a, 0xed, 0x72, 0x60, 0xe7, 0xb0, 0x17, 0x57, 0xee, 0xe6, 0xbe, 0xa6, 0x0e, 0xe5, }; static const unsigned char ecdh_secp521r1_5774_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5774_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5774_sharedsecret[] = { 0x01, 0x73, 0x42, 0x53, 0xe8, 0xd5, 0xe9, 0x30, 0x8c, 0xd5, 0x1b, 0xf0, 0x41, 0x04, 0xee, 0x08, 0xd1, 0x63, 0xac, 0xb5, 0x90, 0xb1, 0xa9, 0x55, 0x89, 0x64, 0x47, 0xb8, 0xa2, 0x55, 0xfc, 0xd3, 0xc1, 0x25, 0x6b, 0x4e, 0x86, 0xb9, 0xf3, 0x16, 0xef, 0xf4, 0xd7, 0x61, 0x3b, 0x38, 0x29, 0xf5, 0x78, 0x59, 0x61, 0xed, 0xa4, 0xee, 0x9e, 0xdd, 0xed, 0xa4, 0xdb, 0x4d, 0x60, 0xaf, 0x19, 0xe3, 0x19, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_5774 = { .name = "ecdh_secp521r1_5774", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5774_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5774_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5774_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5774_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 494 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5775 for ECDH, tcId is 495 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5775_peerpubkey[] = { 0x01, 0x64, 0x01, 0x6e, 0x2b, 0xc3, 0x6f, 0xa9, 0xef, 0x56, 0x71, 0x3d, 0xa8, 0x9a, 0xcf, 0x0b, 0x04, 0x80, 0x82, 0xdc, 0x63, 0x11, 0x56, 0x74, 0x0e, 0xc8, 0xec, 0xd2, 0x2c, 0x12, 0x38, 0x48, 0x83, 0x71, 0x28, 0x43, 0x45, 0xa9, 0x6e, 0xce, 0xf6, 0xdc, 0xdd, 0xa2, 0xe1, 0x3b, 0x4f, 0x2b, 0x94, 0x91, 0xc3, 0x86, 0x27, 0x48, 0x97, 0xfa, 0x13, 0xc6, 0xb2, 0x31, 0x3c, 0x50, 0x00, 0x41, 0x97, 0x55, 0x01, 0xc9, 0x0a, 0x40, 0x54, 0x31, 0x00, 0x55, 0x32, 0x37, 0x7c, 0x20, 0x4b, 0xac, 0x9a, 0x0d, 0x9d, 0x22, 0x65, 0x42, 0x58, 0x4f, 0xbe, 0x3c, 0x89, 0xf7, 0x85, 0xc7, 0x08, 0xa2, 0x33, 0x99, 0xa1, 0xbd, 0x14, 0xda, 0xa3, 0xe6, 0x8c, 0xc7, 0x6a, 0xed, 0x9f, 0x5f, 0xd4, 0xbf, 0xbe, 0x4e, 0xec, 0xab, 0x4a, 0x7a, 0xd2, 0xa0, 0x01, 0x70, 0xda, 0xd3, 0x7e, 0x6f, 0xe5, 0x6e, 0x92, 0x5e, 0x6b, 0xfe, }; static const unsigned char ecdh_secp521r1_5775_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5775_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5775_sharedsecret[] = { 0x00, 0x9c, 0x62, 0x34, 0x17, 0x1b, 0x4c, 0x43, 0xf7, 0x9f, 0xf0, 0xad, 0x95, 0x81, 0x2e, 0x36, 0xb0, 0x78, 0x4a, 0xd5, 0x92, 0x53, 0xd2, 0x0e, 0xa0, 0xcb, 0x98, 0x63, 0x3f, 0xb0, 0x63, 0xff, 0xd8, 0xaa, 0x22, 0xa2, 0xdc, 0xba, 0x29, 0xd4, 0x11, 0x6c, 0xd7, 0x07, 0x37, 0xc1, 0xb1, 0xf6, 0xeb, 0xab, 0x47, 0x31, 0xc5, 0xb8, 0xa4, 0x55, 0x78, 0x85, 0x97, 0xa6, 0x07, 0xb5, 0xa4, 0x5b, 0xd5, 0x47, }; static const wycheproof_ecdh_test ecdh_secp521r1_5775 = { .name = "ecdh_secp521r1_5775", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5775_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5775_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5775_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5775_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 495 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5776 for ECDH, tcId is 496 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5776_peerpubkey[] = { 0x01, 0xd3, 0x6d, 0x2b, 0x3e, 0xc4, 0x25, 0xa6, 0xc2, 0x50, 0x7c, 0x4d, 0xdf, 0xb5, 0xb4, 0xa1, 0x0e, 0xc4, 0xd4, 0xa1, 0x50, 0xc5, 0xc2, 0xb8, 0x0a, 0x26, 0x3b, 0xad, 0xde, 0xbd, 0x31, 0x98, 0x79, 0x7e, 0x97, 0xed, 0x7d, 0x0c, 0xca, 0x81, 0x8c, 0xf4, 0xdd, 0xd4, 0x7f, 0x61, 0x34, 0xb7, 0xa6, 0xd2, 0xb0, 0xa1, 0x5e, 0xe6, 0x09, 0x73, 0xf9, 0xd7, 0xda, 0x22, 0x0f, 0x62, 0x80, 0x0c, 0x54, 0x67, 0x01, 0x1b, 0xbb, 0x5f, 0x8e, 0x9d, 0xf6, 0x5b, 0x9b, 0x2c, 0x10, 0x5e, 0x4d, 0x8f, 0x6d, 0xbd, 0xc4, 0xf2, 0x3f, 0x25, 0x6b, 0x53, 0xb4, 0x7b, 0xc2, 0x89, 0x2c, 0x29, 0x5e, 0x7c, 0xbd, 0xb4, 0xaa, 0xe8, 0x18, 0x58, 0xba, 0x66, 0x44, 0x32, 0x55, 0x65, 0x9b, 0xea, 0xa3, 0x08, 0xae, 0xa4, 0xc5, 0x09, 0xc9, 0x9d, 0x57, 0x8f, 0xdf, 0xb8, 0x73, 0xf5, 0x1f, 0xf5, 0x36, 0x81, 0xae, 0xa6, 0x22, 0xe0, }; static const unsigned char ecdh_secp521r1_5776_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5776_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5776_sharedsecret[] = { 0x01, 0xce, 0xc1, 0xf0, 0x27, 0xa1, 0x0d, 0xe4, 0xa6, 0x90, 0x5e, 0xa3, 0x2f, 0x53, 0x48, 0x51, 0xa2, 0xf2, 0x3d, 0xdc, 0x9e, 0x7e, 0xcd, 0x3d, 0x24, 0xb8, 0xb8, 0x8b, 0xe0, 0x1f, 0x76, 0x39, 0xca, 0xc7, 0x84, 0x7c, 0x9a, 0xbd, 0xbe, 0x74, 0x6c, 0x17, 0x1a, 0x91, 0x3d, 0x67, 0x19, 0xd7, 0xc2, 0xa0, 0xc0, 0x35, 0x9c, 0x40, 0x36, 0x36, 0x0b, 0xe1, 0xe7, 0x5e, 0x8b, 0x2f, 0x7a, 0xaa, 0x67, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5776 = { .name = "ecdh_secp521r1_5776", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5776_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5776_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5776_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5776_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 496 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5777 for ECDH, tcId is 497 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5777_peerpubkey[] = { 0x00, 0xdb, 0x63, 0xbd, 0x5a, 0xee, 0x53, 0xbd, 0x63, 0xfc, 0xe0, 0x54, 0x06, 0x3d, 0xc3, 0x64, 0xaa, 0xe4, 0xf3, 0x20, 0xf7, 0xad, 0x2d, 0xf2, 0x94, 0x14, 0x04, 0x31, 0xad, 0x15, 0x50, 0xc7, 0xea, 0xb3, 0x71, 0xa1, 0x3d, 0x4d, 0xbb, 0x78, 0xf6, 0x3d, 0x71, 0x88, 0xe6, 0x1d, 0xc8, 0xe2, 0x68, 0x88, 0x8d, 0x93, 0x19, 0x90, 0x6a, 0x28, 0xf3, 0x60, 0xbf, 0x7c, 0xe8, 0x68, 0xeb, 0x67, 0xd0, 0xc7, 0x00, 0x7d, 0x66, 0x37, 0x11, 0x52, 0x95, 0x4f, 0x48, 0x58, 0x1d, 0xb9, 0x1c, 0x15, 0x33, 0xdd, 0xf3, 0xb1, 0x48, 0xb7, 0xe9, 0x6a, 0x5e, 0x99, 0x64, 0xf7, 0x06, 0xcb, 0x3f, 0x6e, 0xe8, 0x05, 0x79, 0x3f, 0xd7, 0xc5, 0x76, 0x7e, 0x79, 0xf4, 0x26, 0x23, 0x33, 0x08, 0xc8, 0xef, 0xfc, 0x1d, 0xa7, 0x1e, 0xc7, 0x37, 0x44, 0xa4, 0x9a, 0x69, 0xfb, 0x5f, 0x66, 0x24, 0x07, 0xff, 0x54, 0xd9, 0x48, 0x79, }; static const unsigned char ecdh_secp521r1_5777_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5777_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5777_sharedsecret[] = { 0x00, 0x5f, 0x90, 0x0e, 0xfb, 0xba, 0xd4, 0x97, 0xee, 0x90, 0x4b, 0x80, 0xfc, 0xe0, 0x70, 0x29, 0xad, 0x3f, 0x97, 0x9c, 0xb3, 0x42, 0x3d, 0xc7, 0xd1, 0x6c, 0x9c, 0xf0, 0x85, 0x3f, 0x89, 0xa4, 0x87, 0xdf, 0xdc, 0x5c, 0xc3, 0x45, 0x30, 0xaf, 0xa8, 0xcc, 0xdf, 0x5a, 0x0e, 0x37, 0x6e, 0x27, 0x8a, 0x09, 0x1b, 0xd4, 0xf6, 0x07, 0x7c, 0x94, 0x1d, 0xed, 0x6f, 0x1b, 0x0f, 0xc8, 0x84, 0x01, 0x00, 0xa3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5777 = { .name = "ecdh_secp521r1_5777", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5777_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5777_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5777_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5777_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 497 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5778 for ECDH, tcId is 498 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5778_peerpubkey[] = { 0x01, 0x56, 0x81, 0xf7, 0x78, 0x6b, 0x77, 0x07, 0x9c, 0x6a, 0xa9, 0xcc, 0xda, 0xa5, 0x8f, 0x39, 0xe9, 0xec, 0x4e, 0x14, 0xe2, 0x4d, 0x1b, 0xb3, 0xf0, 0xd6, 0xcb, 0x56, 0xbf, 0x7b, 0x78, 0x76, 0x1c, 0x3b, 0xf5, 0x8c, 0x7f, 0xb7, 0x6a, 0x22, 0x94, 0x3b, 0xb2, 0x5d, 0xb8, 0x0e, 0xb0, 0xaf, 0x74, 0x10, 0xd6, 0x07, 0x15, 0x4e, 0xf9, 0x27, 0x15, 0x2a, 0x89, 0x21, 0xfd, 0xef, 0xe7, 0x28, 0x8d, 0xba, 0x01, 0xe5, 0xb1, 0x9c, 0x82, 0x7b, 0x28, 0x85, 0x58, 0xda, 0x2d, 0xf5, 0xf9, 0xfc, 0xa3, 0x13, 0x7e, 0xd0, 0x69, 0x40, 0x78, 0xd3, 0xf6, 0x00, 0xaa, 0x7a, 0x49, 0x5f, 0xe2, 0x8f, 0x41, 0x8d, 0x45, 0x8b, 0xc5, 0x52, 0x76, 0xbf, 0x7d, 0x29, 0x69, 0xac, 0x24, 0x29, 0xe2, 0xaf, 0x8d, 0x05, 0xd4, 0x11, 0x2e, 0xdb, 0xe9, 0x3b, 0x04, 0x1f, 0x2d, 0x5d, 0x56, 0xa4, 0xfe, 0xe5, 0xfb, 0x91, 0x8b, 0x69, }; static const unsigned char ecdh_secp521r1_5778_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5778_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5778_sharedsecret[] = { 0x01, 0x24, 0xc2, 0x3c, 0x00, 0xd3, 0x03, 0x29, 0x06, 0x56, 0x11, 0x07, 0x5b, 0x02, 0xe5, 0x5c, 0x3c, 0x66, 0x7b, 0xbe, 0x3d, 0x65, 0x16, 0x0f, 0xa1, 0x89, 0x12, 0x8a, 0xf4, 0x55, 0x24, 0x0e, 0xb6, 0x77, 0xa1, 0xee, 0x07, 0xca, 0x87, 0x89, 0xbe, 0x7a, 0x8e, 0xd0, 0x74, 0xce, 0x17, 0x50, 0x4a, 0x59, 0x03, 0xd9, 0xa7, 0x52, 0x68, 0x1a, 0xfe, 0x63, 0x42, 0xb0, 0x54, 0x86, 0x6c, 0xbb, 0xf1, 0x99, }; static const wycheproof_ecdh_test ecdh_secp521r1_5778 = { .name = "ecdh_secp521r1_5778", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5778_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5778_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5778_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5778_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 498 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5779 for ECDH, tcId is 499 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5779_peerpubkey[] = { 0x00, 0xb3, 0xe7, 0xc9, 0x77, 0x4c, 0x52, 0x3b, 0xbe, 0xf8, 0x57, 0xd5, 0x9f, 0x8c, 0xce, 0xcd, 0x06, 0x7f, 0xd1, 0x8c, 0x7d, 0x77, 0x77, 0xc8, 0x2c, 0x68, 0x14, 0x6b, 0x33, 0x8e, 0x14, 0xc5, 0xd0, 0x99, 0x8b, 0x3b, 0x96, 0x23, 0x54, 0xd9, 0xb1, 0x07, 0x33, 0x7a, 0xfd, 0x41, 0x37, 0x23, 0x30, 0x47, 0xad, 0xb3, 0x52, 0xb8, 0xb1, 0xe2, 0x15, 0xfc, 0xac, 0x25, 0xf1, 0xe3, 0x39, 0x59, 0x40, 0x77, 0x01, 0x48, 0xe5, 0xce, 0xd5, 0x84, 0x10, 0x18, 0x3d, 0x15, 0xc7, 0x19, 0xf8, 0xae, 0x4c, 0x19, 0xd9, 0x5f, 0x91, 0x0f, 0x35, 0x83, 0xde, 0x6e, 0x0b, 0x63, 0xb9, 0x38, 0xe2, 0xd5, 0xec, 0x67, 0x07, 0x55, 0xdc, 0x24, 0xcb, 0xf0, 0x8f, 0x93, 0x40, 0xf9, 0x14, 0xc5, 0x53, 0x4b, 0xf7, 0xf1, 0x48, 0x39, 0x47, 0xb6, 0xb4, 0x06, 0x26, 0xf1, 0xc7, 0xfe, 0x0e, 0x4d, 0x8e, 0xd8, 0x43, 0x02, 0x7b, 0x14, }; static const unsigned char ecdh_secp521r1_5779_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5779_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5779_sharedsecret[] = { 0x01, 0x7a, 0x94, 0x0d, 0xca, 0x15, 0xb1, 0xdb, 0x9a, 0x1e, 0x3f, 0x54, 0xc0, 0xaa, 0x8e, 0xb0, 0x72, 0xdc, 0xe1, 0x16, 0x50, 0xed, 0x92, 0x0a, 0x29, 0x31, 0xc6, 0x8b, 0x93, 0x0c, 0x34, 0xb5, 0x81, 0x1d, 0x07, 0x6c, 0x0a, 0x3d, 0x10, 0x39, 0x7a, 0x18, 0xbd, 0x0a, 0x7a, 0x87, 0xfa, 0xa7, 0x8a, 0x6d, 0x98, 0x4f, 0xb4, 0x8b, 0x3e, 0xe5, 0x3d, 0x20, 0xbc, 0xda, 0x84, 0xcb, 0x2e, 0xa7, 0xba, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_5779 = { .name = "ecdh_secp521r1_5779", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5779_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5779_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5779_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5779_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 499 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5780 for ECDH, tcId is 500 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5780_peerpubkey[] = { 0x00, 0xaf, 0xf0, 0xe5, 0x21, 0x6e, 0xe7, 0xcd, 0x11, 0x5c, 0xc6, 0x30, 0x90, 0x9d, 0x20, 0xfd, 0x3c, 0x38, 0x23, 0x57, 0xf0, 0x74, 0x44, 0x80, 0xd8, 0x6b, 0x17, 0x7a, 0xf4, 0xff, 0x94, 0x71, 0xa1, 0xe3, 0x60, 0x53, 0x2a, 0x92, 0xa5, 0x82, 0x52, 0xd9, 0x3d, 0x1e, 0xa1, 0x6a, 0xb4, 0x7f, 0x4c, 0x09, 0x0b, 0x6a, 0xef, 0xdc, 0x6a, 0x7a, 0x37, 0x78, 0xd1, 0x5c, 0x68, 0xa8, 0x66, 0x75, 0x8b, 0x9a, 0x00, 0x98, 0xe2, 0x3c, 0x43, 0x72, 0x37, 0x2a, 0x52, 0x7b, 0xe2, 0xc6, 0xc3, 0x11, 0x73, 0x80, 0xb4, 0x83, 0x6d, 0x5e, 0xbd, 0x08, 0x07, 0xb8, 0x0c, 0xd9, 0xc6, 0xef, 0xd9, 0x6a, 0x7c, 0xf0, 0x75, 0x7c, 0x2a, 0x63, 0x5b, 0x9a, 0xd6, 0xdf, 0xe0, 0x11, 0x57, 0xff, 0x92, 0xde, 0xd3, 0x13, 0xa7, 0x8c, 0xad, 0x96, 0x80, 0x82, 0xaf, 0x33, 0xd1, 0x36, 0x87, 0x3f, 0x80, 0x8d, 0x8e, 0x49, 0x16, 0x26, }; static const unsigned char ecdh_secp521r1_5780_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5780_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5780_sharedsecret[] = { 0x01, 0xb9, 0x84, 0x47, 0xf0, 0xc3, 0xa5, 0x7d, 0xef, 0x59, 0x2c, 0xc0, 0x59, 0x9c, 0xe7, 0x40, 0x6f, 0x14, 0x81, 0x86, 0xf9, 0x4c, 0xd3, 0x07, 0xbf, 0x87, 0xe4, 0xab, 0x27, 0x3d, 0x3a, 0x9b, 0x5a, 0xe6, 0x36, 0x9b, 0x26, 0x69, 0x2c, 0xab, 0x5c, 0x24, 0xbc, 0xe5, 0x9c, 0x13, 0x95, 0x98, 0x44, 0x07, 0x77, 0x83, 0xec, 0xfe, 0xb7, 0x77, 0xfc, 0xf3, 0xce, 0x99, 0x8f, 0x65, 0x6a, 0x23, 0x82, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5780 = { .name = "ecdh_secp521r1_5780", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5780_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5780_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5780_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5780_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 500 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5781 for ECDH, tcId is 501 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5781_peerpubkey[] = { 0x01, 0xad, 0x13, 0xaf, 0x79, 0xe8, 0xbd, 0xa3, 0x31, 0x20, 0xa2, 0xa9, 0x24, 0xb4, 0x81, 0x00, 0x11, 0x17, 0x47, 0x9c, 0x8f, 0xbe, 0xcc, 0xd0, 0xa6, 0xaf, 0x4f, 0x50, 0xed, 0xbf, 0x7d, 0xf8, 0xe3, 0x95, 0xe3, 0x2f, 0xf6, 0xa1, 0xe5, 0xb2, 0xc1, 0xb8, 0x74, 0x33, 0x6c, 0x44, 0xc6, 0x5e, 0x1e, 0xed, 0x20, 0x9e, 0x54, 0x7b, 0x3c, 0x57, 0x61, 0xca, 0xb9, 0x6f, 0x56, 0xda, 0xf1, 0x7b, 0xc6, 0x93, 0x00, 0x28, 0x6b, 0xd6, 0xb0, 0x20, 0x6c, 0xbc, 0xc7, 0xa9, 0x9e, 0x78, 0x07, 0xf1, 0x5d, 0xf0, 0xff, 0x83, 0xcc, 0x17, 0xe4, 0x47, 0x4f, 0x17, 0x69, 0xc4, 0x73, 0xe7, 0x14, 0x1c, 0x38, 0x4b, 0x8a, 0x39, 0xf5, 0xb5, 0xab, 0xcd, 0xcf, 0xc7, 0x04, 0x97, 0x05, 0x7a, 0xe7, 0xe0, 0x9b, 0x70, 0x7a, 0xc3, 0xa7, 0x1b, 0x82, 0x4a, 0x55, 0xd4, 0xd8, 0x64, 0x8c, 0x5a, 0x95, 0xd6, 0x3b, 0xd8, 0x22, 0x41, }; static const unsigned char ecdh_secp521r1_5781_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5781_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5781_sharedsecret[] = { 0x00, 0xa3, 0xcd, 0x90, 0x0b, 0x98, 0x85, 0x62, 0x9a, 0xe8, 0xd8, 0x3f, 0xd8, 0x14, 0x3e, 0x7d, 0x8a, 0x29, 0x1c, 0xd9, 0x33, 0x16, 0x3b, 0xc6, 0x58, 0xf3, 0x79, 0x13, 0x51, 0x18, 0x37, 0x35, 0x50, 0x82, 0xd5, 0xf3, 0x94, 0x25, 0xea, 0x32, 0x2b, 0x19, 0xd6, 0x1d, 0xb3, 0xdd, 0xa0, 0x5f, 0x25, 0x5e, 0x14, 0x0e, 0xec, 0x4e, 0x98, 0xa7, 0xa1, 0x01, 0x21, 0xeb, 0x29, 0x18, 0xdc, 0xf1, 0x26, 0xa6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5781 = { .name = "ecdh_secp521r1_5781", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5781_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5781_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5781_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5781_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 501 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5782 for ECDH, tcId is 502 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5782_peerpubkey[] = { 0x00, 0xd4, 0xd7, 0x6b, 0x40, 0xd9, 0x70, 0x46, 0xcc, 0xf0, 0x2d, 0x5b, 0xd1, 0x31, 0xa5, 0x45, 0x2d, 0x91, 0x19, 0x5a, 0x13, 0x20, 0x4b, 0x6e, 0xb4, 0xf7, 0x1a, 0x5d, 0xa9, 0xdc, 0x91, 0x56, 0xf6, 0x19, 0xaf, 0x8b, 0xfa, 0xe8, 0xfb, 0xac, 0xed, 0x47, 0x5c, 0x27, 0xca, 0x89, 0x45, 0x6f, 0x35, 0xe5, 0x47, 0x68, 0x8a, 0x6d, 0x0d, 0x99, 0x48, 0xfe, 0xa4, 0x9e, 0xf4, 0xb7, 0x5b, 0x5e, 0x83, 0x9c, 0x01, 0x73, 0x8d, 0xb8, 0xb3, 0xd3, 0xff, 0xfb, 0x1a, 0xb6, 0x97, 0xfb, 0xc8, 0x14, 0x6a, 0x70, 0xcd, 0xd6, 0x57, 0xd3, 0x07, 0xa6, 0xe6, 0xca, 0x8a, 0x33, 0x86, 0x61, 0xa0, 0x81, 0x31, 0xe0, 0x5c, 0x68, 0x0e, 0xe9, 0xda, 0x4c, 0x88, 0xa9, 0x0f, 0xde, 0x96, 0xc5, 0x63, 0x02, 0x27, 0xc2, 0xfd, 0x43, 0x23, 0xf3, 0x02, 0xd5, 0x3a, 0x0b, 0x51, 0x21, 0x16, 0x3c, 0xcc, 0x40, 0xbe, 0xfa, 0xf5, 0x33, }; static const unsigned char ecdh_secp521r1_5782_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5782_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5782_sharedsecret[] = { 0x00, 0x93, 0x1d, 0x8a, 0xa3, 0x8c, 0x53, 0x0d, 0xb8, 0xd5, 0xe7, 0x7d, 0xaa, 0x40, 0x6d, 0x16, 0x61, 0x69, 0xc9, 0xce, 0xb7, 0x4c, 0xcf, 0x70, 0x20, 0x96, 0x56, 0x73, 0xd0, 0x91, 0x33, 0x25, 0x3c, 0xa2, 0x30, 0x28, 0x7e, 0xc9, 0x99, 0x74, 0x47, 0xf1, 0xcc, 0xbb, 0xbb, 0xe8, 0x68, 0xcb, 0x73, 0xea, 0x0e, 0x28, 0xf4, 0xb6, 0x7e, 0xd4, 0x91, 0x32, 0x99, 0x5e, 0x75, 0xf4, 0x17, 0x83, 0x8d, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5782 = { .name = "ecdh_secp521r1_5782", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5782_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5782_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5782_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5782_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in precomputation or right to left addition chain, tcId is 502 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5783 for ECDH, tcId is 503 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5783_peerpubkey[] = { 0x01, 0x03, 0xf3, 0x6e, 0xc4, 0x25, 0xdd, 0x88, 0xe5, 0xd8, 0x2d, 0x1f, 0x8d, 0x74, 0x7c, 0x93, 0xee, 0xcc, 0x4b, 0x46, 0xac, 0x98, 0xcd, 0x36, 0x4f, 0xc6, 0x78, 0xbc, 0x0d, 0x6c, 0x79, 0xf8, 0xbf, 0x1f, 0xe0, 0xbd, 0x28, 0x23, 0x5e, 0xe4, 0x3f, 0xbd, 0x0d, 0xc2, 0x37, 0x33, 0x2c, 0xc2, 0xed, 0x6e, 0xba, 0x8c, 0x7a, 0x56, 0x10, 0xb5, 0x65, 0x1c, 0x9e, 0x0f, 0x26, 0x44, 0x58, 0x7c, 0xa3, 0xbc, 0x01, 0x4d, 0xde, 0x8f, 0xbe, 0x83, 0xb5, 0x69, 0x73, 0x9b, 0x86, 0x0d, 0x7b, 0x1e, 0xda, 0xdc, 0x7b, 0xf7, 0x3f, 0x7f, 0x0e, 0x7a, 0x87, 0x02, 0xeb, 0x48, 0x8d, 0x23, 0x0d, 0xa2, 0x84, 0x32, 0x2c, 0xe0, 0x20, 0xe9, 0xc8, 0x83, 0x12, 0x98, 0xda, 0x14, 0x18, 0x0a, 0xb0, 0x08, 0x46, 0x5e, 0x6d, 0xed, 0x1f, 0x1e, 0xba, 0xf6, 0x56, 0x40, 0xd9, 0x2c, 0xcf, 0x29, 0xab, 0xb6, 0x75, 0x1a, 0x6f, 0x6c, }; static const unsigned char ecdh_secp521r1_5783_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5783_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5783_sharedsecret[] = { 0x01, 0x27, 0x0c, 0xfe, 0x9b, 0x86, 0x9d, 0x88, 0xe7, 0xdf, 0xf6, 0xd4, 0x5f, 0xc7, 0x52, 0xa4, 0xac, 0x72, 0xcc, 0xde, 0x73, 0xcf, 0x12, 0xec, 0x22, 0x7c, 0x27, 0x43, 0x28, 0xb0, 0x01, 0xa9, 0xf2, 0x4d, 0x92, 0xb0, 0x0c, 0xa0, 0x32, 0x6f, 0xe1, 0x9d, 0x69, 0x57, 0x3d, 0x5b, 0x3e, 0x35, 0xf8, 0x22, 0xcc, 0xbf, 0x4c, 0x83, 0xa3, 0xb3, 0xbf, 0x6e, 0x31, 0x53, 0xf0, 0x98, 0x42, 0x81, 0xb3, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5783 = { .name = "ecdh_secp521r1_5783", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5783_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5783_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5783_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5783_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 503 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5784 for ECDH, tcId is 504 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5784_peerpubkey[] = { 0x01, 0x3f, 0x8c, 0xc5, 0x56, 0x93, 0x46, 0xbf, 0x33, 0x25, 0xd8, 0x40, 0x5f, 0xdd, 0xe9, 0xfd, 0xe7, 0x1d, 0xd1, 0xe9, 0x53, 0xc1, 0x0e, 0xd6, 0x21, 0x5b, 0x4f, 0x40, 0x10, 0xf5, 0xbb, 0xe1, 0x73, 0x71, 0x8a, 0x8e, 0x2e, 0x6d, 0x9f, 0x80, 0x27, 0x26, 0xcd, 0x91, 0x6e, 0x16, 0xea, 0x1c, 0xd3, 0x14, 0x8c, 0x87, 0x9f, 0x0a, 0xce, 0xbd, 0x8d, 0xb2, 0x62, 0x8f, 0x58, 0x9c, 0x19, 0xaa, 0xa5, 0xbe, 0x01, 0x59, 0x5d, 0x66, 0x9c, 0xfa, 0x78, 0x6b, 0xfe, 0xb9, 0xdc, 0xda, 0xce, 0xdf, 0x56, 0x3d, 0x04, 0x05, 0x98, 0x67, 0x89, 0x8f, 0x42, 0xe8, 0xa1, 0x57, 0xc9, 0x11, 0x33, 0xc9, 0x52, 0xa9, 0x7d, 0x90, 0x38, 0x98, 0x91, 0xb3, 0x64, 0x78, 0x75, 0xc8, 0x22, 0xeb, 0x48, 0xf7, 0x61, 0x93, 0x0a, 0xfe, 0xf9, 0xb0, 0x68, 0x85, 0x3e, 0xfe, 0xc0, 0xd2, 0x60, 0xd8, 0xe5, 0x1d, 0xbc, 0xb6, 0xd2, 0x4b, }; static const unsigned char ecdh_secp521r1_5784_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5784_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5784_sharedsecret[] = { 0x01, 0x4d, 0xf0, 0x4e, 0x39, 0xe8, 0xbf, 0x5f, 0x6c, 0x34, 0x47, 0x2f, 0x94, 0xf6, 0xf4, 0x28, 0x96, 0x2a, 0xc8, 0xa3, 0x9d, 0x27, 0x33, 0x77, 0xd0, 0x00, 0x72, 0x31, 0xfa, 0x7f, 0x5f, 0x79, 0xed, 0x89, 0x62, 0x69, 0xf6, 0x5b, 0xf8, 0x4e, 0xca, 0x44, 0xe0, 0x73, 0x9c, 0xd8, 0xb9, 0x9f, 0x2e, 0x67, 0x97, 0x7e, 0xef, 0xd7, 0x68, 0x55, 0x3d, 0x46, 0x4c, 0x79, 0xe7, 0xd4, 0xd9, 0x0a, 0x0c, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_5784 = { .name = "ecdh_secp521r1_5784", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5784_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5784_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5784_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5784_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 504 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5785 for ECDH, tcId is 505 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5785_peerpubkey[] = { 0x01, 0x37, 0x5c, 0xc4, 0xe1, 0xa9, 0x28, 0x51, 0x35, 0x98, 0x08, 0x1a, 0xc4, 0xe4, 0xc0, 0x63, 0x2c, 0x24, 0xbd, 0x19, 0x97, 0xe4, 0x85, 0x0d, 0x14, 0x72, 0x50, 0x7b, 0xc7, 0x14, 0x22, 0xfc, 0xcb, 0x64, 0xcd, 0x82, 0x3d, 0x33, 0x65, 0xc0, 0x6e, 0x3f, 0x08, 0xc9, 0xfd, 0x6e, 0x6e, 0x47, 0x6a, 0x68, 0x12, 0x0f, 0x20, 0x3e, 0xf6, 0x9c, 0xa1, 0x1c, 0x70, 0x88, 0x9e, 0x38, 0x09, 0xeb, 0x75, 0xdc, 0x00, 0xd1, 0xed, 0x8d, 0x7a, 0xb7, 0x4a, 0x72, 0x46, 0x23, 0x67, 0xcb, 0x93, 0xe8, 0x43, 0xc6, 0x03, 0x89, 0xbf, 0xce, 0xeb, 0x2f, 0x86, 0x9a, 0xa3, 0x34, 0x91, 0x96, 0x1c, 0x4b, 0x83, 0x89, 0x23, 0x8f, 0x5d, 0xb1, 0xf7, 0x8b, 0x39, 0xfc, 0x09, 0x23, 0xa5, 0x4d, 0x9a, 0x7e, 0x0b, 0xe8, 0xed, 0xcb, 0x95, 0x72, 0xb2, 0xdb, 0xff, 0x0a, 0x72, 0x95, 0x85, 0x38, 0x2b, 0xff, 0xa6, 0x90, 0x19, 0x25, }; static const unsigned char ecdh_secp521r1_5785_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5785_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5785_sharedsecret[] = { 0x01, 0xd3, 0x77, 0x2b, 0x25, 0x2c, 0x9b, 0xa3, 0x5f, 0xf3, 0x47, 0x2b, 0x28, 0x0a, 0x76, 0x35, 0xca, 0x04, 0x51, 0x3e, 0xd0, 0x2e, 0x4d, 0x8c, 0x25, 0x59, 0x6c, 0x90, 0x0c, 0x37, 0x99, 0x4d, 0x26, 0xea, 0x77, 0x47, 0x37, 0xd9, 0xa9, 0xa8, 0xf8, 0x61, 0x8a, 0x6e, 0xf0, 0xc1, 0x01, 0x93, 0x44, 0xcb, 0x3f, 0x96, 0x56, 0xa6, 0x36, 0x9d, 0xfb, 0x1d, 0x8f, 0x2a, 0x3f, 0x28, 0xb4, 0xf0, 0x59, 0xcc, }; static const wycheproof_ecdh_test ecdh_secp521r1_5785 = { .name = "ecdh_secp521r1_5785", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5785_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5785_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5785_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5785_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 505 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5786 for ECDH, tcId is 506 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5786_peerpubkey[] = { 0x00, 0x6b, 0x6c, 0x41, 0x49, 0xce, 0x3b, 0x4f, 0xa6, 0x19, 0xe3, 0x60, 0xf0, 0x97, 0x94, 0x27, 0xd2, 0xc6, 0xbf, 0xeb, 0x3f, 0xa4, 0x12, 0x05, 0xa0, 0xce, 0xd3, 0xa4, 0x37, 0x28, 0x7c, 0x71, 0x1c, 0xc6, 0xe5, 0x87, 0x59, 0x92, 0xce, 0xa3, 0x13, 0xae, 0x3d, 0x2e, 0xc0, 0xdf, 0x6e, 0x42, 0x17, 0xc8, 0xc4, 0x2b, 0xbc, 0xff, 0xa7, 0x32, 0xc4, 0x03, 0xe7, 0xb4, 0x47, 0x1d, 0x0c, 0xf3, 0x95, 0x33, 0x00, 0xad, 0x7f, 0x74, 0xc6, 0x9b, 0x73, 0x08, 0xb7, 0x87, 0x47, 0xf7, 0x3b, 0x4e, 0x3e, 0x66, 0xe3, 0x3b, 0xfe, 0x4b, 0x21, 0xd4, 0x5a, 0xc8, 0x2a, 0x0b, 0x29, 0x3b, 0x0f, 0x63, 0x5a, 0xdd, 0xbe, 0xe4, 0x2a, 0x71, 0x8b, 0x72, 0x6a, 0xee, 0xb9, 0xdf, 0x13, 0x55, 0x70, 0x04, 0x97, 0x90, 0x0d, 0x9c, 0xdd, 0x0a, 0x42, 0xe0, 0x22, 0x8c, 0xd1, 0x79, 0x4f, 0x76, 0x7d, 0x3b, 0xff, 0xb1, 0xc7, 0xa7, }; static const unsigned char ecdh_secp521r1_5786_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5786_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5786_sharedsecret[] = { 0x01, 0xc5, 0x48, 0xcb, 0xdf, 0xdb, 0x40, 0x54, 0x1d, 0xab, 0x74, 0x4c, 0xbe, 0x5c, 0x45, 0xd9, 0x6a, 0x4f, 0x0d, 0x1c, 0xf2, 0xe5, 0x37, 0xd3, 0x3a, 0x9f, 0xb4, 0xe4, 0x67, 0x5c, 0x1e, 0xf5, 0x45, 0x82, 0xc1, 0x92, 0x94, 0xfd, 0x17, 0xc5, 0xfa, 0xe2, 0xc5, 0x1a, 0x9b, 0x18, 0xc3, 0x71, 0x95, 0xe0, 0xea, 0xc0, 0xd9, 0xb5, 0xff, 0x47, 0xa6, 0x43, 0xdf, 0x37, 0x5a, 0x70, 0x8d, 0xec, 0x71, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp521r1_5786 = { .name = "ecdh_secp521r1_5786", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5786_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5786_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5786_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5786_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 506 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5787 for ECDH, tcId is 507 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5787_peerpubkey[] = { 0x01, 0xa7, 0xba, 0xe0, 0x87, 0x25, 0xb9, 0x7e, 0x8a, 0xd3, 0xd9, 0x18, 0x43, 0xa4, 0x71, 0x4d, 0x92, 0x05, 0x00, 0x0d, 0xed, 0xea, 0x86, 0x07, 0x61, 0x05, 0x33, 0x07, 0x30, 0xbd, 0x8b, 0x6e, 0x5a, 0x68, 0x30, 0x49, 0x49, 0x6c, 0xd9, 0xf0, 0x8b, 0x32, 0x1c, 0xb2, 0xf3, 0xf8, 0xa0, 0x5b, 0xad, 0xf2, 0x37, 0x0b, 0xb9, 0x0e, 0xa1, 0xa4, 0x92, 0x36, 0xe3, 0xfe, 0xfd, 0x91, 0xb9, 0xc3, 0xd7, 0x6c, 0x00, 0x8c, 0x50, 0x24, 0x40, 0x40, 0xc6, 0x5b, 0xcb, 0x86, 0xcd, 0xbe, 0x19, 0x3e, 0xaf, 0x6d, 0xaa, 0xae, 0x2b, 0xa3, 0xa3, 0x28, 0xad, 0xeb, 0xc6, 0xb7, 0x2c, 0x12, 0x73, 0x66, 0x08, 0xab, 0xaf, 0x9c, 0x1d, 0xe7, 0xe7, 0xb3, 0x51, 0xc8, 0xe7, 0x5d, 0x4a, 0xb8, 0x01, 0xff, 0xdd, 0x6e, 0x84, 0xb7, 0xe4, 0x6b, 0x50, 0x97, 0x62, 0x47, 0xc3, 0x25, 0x15, 0xbf, 0x91, 0xce, 0xa3, 0x34, 0x89, 0x06, }; static const unsigned char ecdh_secp521r1_5787_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5787_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5787_sharedsecret[] = { 0x00, 0x52, 0xc6, 0xc1, 0xb8, 0x2b, 0x8e, 0x26, 0xf7, 0xed, 0xe7, 0x05, 0xa8, 0xb4, 0x84, 0x06, 0x8b, 0x50, 0x1a, 0x8d, 0xa4, 0x69, 0xca, 0xa5, 0xc2, 0x03, 0xbe, 0x01, 0x81, 0x43, 0x61, 0x8d, 0x98, 0x4f, 0xa9, 0x42, 0x1b, 0x13, 0x5e, 0x1a, 0xe2, 0x21, 0x2a, 0x27, 0xcb, 0xbb, 0xce, 0x3a, 0x74, 0x57, 0x80, 0xd1, 0x84, 0x70, 0x59, 0xd5, 0x6c, 0x3c, 0x3d, 0xda, 0x47, 0x48, 0x62, 0xa7, 0x90, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5787 = { .name = "ecdh_secp521r1_5787", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5787_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5787_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5787_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5787_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 507 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5788 for ECDH, tcId is 508 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5788_peerpubkey[] = { 0x00, 0x90, 0xf7, 0x4a, 0x2c, 0x8a, 0x5d, 0x2a, 0x99, 0x0c, 0xdf, 0x38, 0xb1, 0x85, 0xc7, 0x17, 0x6b, 0x37, 0xee, 0x50, 0xb7, 0x05, 0x59, 0xed, 0x85, 0xda, 0xff, 0x2f, 0xd4, 0x5b, 0x94, 0xb7, 0xf9, 0xdf, 0x34, 0xce, 0x57, 0xee, 0xa6, 0x54, 0x42, 0x7b, 0xfa, 0xd8, 0x99, 0x1f, 0x6a, 0x5d, 0x38, 0x53, 0x42, 0xaf, 0x3a, 0x56, 0x88, 0xb1, 0xf8, 0xc7, 0x24, 0xfb, 0x7e, 0x78, 0xdc, 0x18, 0xf2, 0x0e, 0x01, 0x61, 0x41, 0xf2, 0xb7, 0xbc, 0x94, 0x22, 0x86, 0xdb, 0xe8, 0x34, 0x4b, 0x68, 0xe0, 0xf9, 0xa2, 0xd0, 0x95, 0x0d, 0xa6, 0x51, 0x91, 0xf4, 0x7e, 0xba, 0x73, 0x8a, 0xbe, 0xf2, 0x0b, 0x9d, 0x10, 0x7c, 0xc0, 0xcc, 0xcf, 0x60, 0xbc, 0x92, 0x99, 0xb7, 0x5f, 0x0d, 0x14, 0x14, 0x7a, 0x6c, 0x7a, 0x7d, 0x5a, 0xe6, 0x7a, 0x00, 0x87, 0xeb, 0x1f, 0x4b, 0x48, 0xa2, 0x78, 0x0e, 0xc0, 0x86, 0x42, 0x8b, }; static const unsigned char ecdh_secp521r1_5788_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5788_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5788_sharedsecret[] = { 0x01, 0x13, 0xde, 0x20, 0xae, 0xa6, 0x91, 0xf5, 0xd3, 0x8b, 0x80, 0xba, 0xd9, 0x3c, 0x80, 0xd9, 0x23, 0x77, 0xeb, 0xb7, 0x30, 0x20, 0x14, 0xf6, 0x4c, 0xcd, 0x89, 0x3f, 0xa9, 0xe6, 0x7d, 0x38, 0x4a, 0x4e, 0xd1, 0xa5, 0xe3, 0xfc, 0xe2, 0xc8, 0x4b, 0xa5, 0xfc, 0x37, 0x9a, 0x0a, 0x6b, 0xda, 0xcd, 0xb6, 0x17, 0x65, 0x94, 0xdf, 0x87, 0x6d, 0x3d, 0x13, 0xfd, 0xf1, 0xdc, 0x82, 0x4d, 0xa8, 0x25, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_5788 = { .name = "ecdh_secp521r1_5788", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5788_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5788_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5788_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5788_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 508 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5789 for ECDH, tcId is 509 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5789_peerpubkey[] = { 0x01, 0xf7, 0xbe, 0x22, 0x9d, 0xcb, 0x35, 0xe4, 0x44, 0xd3, 0xd8, 0x91, 0xbb, 0x04, 0xff, 0x5a, 0xaf, 0x27, 0x0e, 0x8f, 0x8d, 0x90, 0xaf, 0xd6, 0x5a, 0xfb, 0x1c, 0x56, 0xf8, 0xc7, 0x7e, 0xab, 0x3d, 0x32, 0xe5, 0x5d, 0xaa, 0x31, 0xda, 0x9a, 0xeb, 0xda, 0x76, 0xfb, 0x67, 0x29, 0x8e, 0x3a, 0x1b, 0xb7, 0x15, 0x05, 0xd3, 0xa5, 0xb6, 0xc5, 0xaf, 0x37, 0x36, 0x6c, 0x88, 0x04, 0x10, 0x90, 0xe9, 0x6e, 0x00, 0xcf, 0x3e, 0x13, 0x2f, 0xd8, 0x83, 0x84, 0xfa, 0xe8, 0x75, 0x3a, 0xe3, 0x2b, 0xa6, 0x69, 0xe9, 0x67, 0x93, 0xb6, 0x9d, 0x6a, 0x81, 0x53, 0x65, 0x38, 0x7c, 0xd9, 0xd4, 0xd2, 0x1a, 0xd2, 0x86, 0x2e, 0x4b, 0x2f, 0xfc, 0xa1, 0xfa, 0x8e, 0xa0, 0x5e, 0x34, 0x27, 0x5f, 0xea, 0x95, 0xff, 0x1d, 0xcc, 0xab, 0x75, 0x0b, 0xc7, 0x42, 0xde, 0x12, 0x61, 0x1c, 0xc3, 0xa1, 0x35, 0xa9, 0xda, 0xf9, 0xc0, }; static const unsigned char ecdh_secp521r1_5789_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5789_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5789_sharedsecret[] = { 0x01, 0x20, 0x90, 0x84, 0x72, 0x93, 0xba, 0x80, 0xdc, 0x7a, 0x8a, 0x4d, 0x50, 0x38, 0xad, 0x6f, 0x3e, 0xd4, 0x36, 0xb5, 0xa8, 0x2e, 0x7a, 0x4a, 0x6d, 0x7c, 0xfa, 0xea, 0x1c, 0x19, 0xd6, 0xc7, 0x4d, 0x3f, 0x70, 0x7f, 0xa0, 0xff, 0xc9, 0xf1, 0x5a, 0x8c, 0x95, 0xc3, 0xe0, 0x40, 0xb4, 0xf1, 0xb5, 0xd2, 0xb5, 0xee, 0x08, 0xb9, 0x43, 0x64, 0x10, 0xe3, 0x6f, 0xda, 0x20, 0x3f, 0xd6, 0xc5, 0xfc, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5789 = { .name = "ecdh_secp521r1_5789", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5789_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5789_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5789_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5789_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 509 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5790 for ECDH, tcId is 510 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5790_peerpubkey[] = { 0x01, 0xd8, 0x57, 0x8b, 0x22, 0x20, 0x92, 0x10, 0x3b, 0xb1, 0x77, 0x64, 0xfd, 0xa3, 0x34, 0x97, 0x4b, 0x12, 0x13, 0x05, 0xc4, 0xc1, 0xcf, 0xae, 0xe7, 0xd8, 0x6e, 0x81, 0x4d, 0xee, 0x33, 0x05, 0x7a, 0x03, 0xbe, 0xa2, 0x34, 0x54, 0x66, 0x05, 0xcf, 0x7f, 0xba, 0x50, 0xd2, 0xd5, 0x7a, 0xbd, 0x08, 0x08, 0x76, 0x0a, 0x4f, 0x8d, 0x23, 0xf7, 0x24, 0xc0, 0x0f, 0x9f, 0x5d, 0xd4, 0xb0, 0x26, 0xf6, 0x28, 0x01, 0x92, 0x33, 0x25, 0xa3, 0x7b, 0x03, 0x14, 0xc7, 0xa1, 0xd1, 0x85, 0x17, 0x3b, 0x48, 0xc1, 0x40, 0x51, 0xbc, 0x0e, 0xfc, 0x9b, 0xf3, 0xe5, 0x7a, 0xe7, 0x78, 0xba, 0x53, 0x7e, 0x90, 0xc8, 0x2c, 0xc0, 0xd4, 0x2d, 0xd9, 0x8e, 0x9f, 0xf5, 0xa8, 0x23, 0x5e, 0xde, 0x5c, 0x42, 0x86, 0x7e, 0x96, 0x1d, 0xef, 0x8f, 0x9f, 0x66, 0xa6, 0x31, 0x16, 0x8c, 0x2e, 0x3a, 0x10, 0x99, 0xc9, 0xc2, 0xde, 0x06, }; static const unsigned char ecdh_secp521r1_5790_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5790_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5790_sharedsecret[] = { 0x01, 0x99, 0xaa, 0xaf, 0x77, 0x7a, 0x6c, 0x29, 0xb8, 0x5e, 0x0e, 0xc9, 0x90, 0x2f, 0x4f, 0x8d, 0x00, 0x4a, 0x29, 0x7b, 0x45, 0x70, 0xdd, 0x46, 0x77, 0x62, 0x23, 0x05, 0xf4, 0x33, 0x9e, 0xc7, 0x26, 0xaf, 0xb9, 0x8b, 0x55, 0x41, 0x75, 0xb9, 0x9b, 0x8b, 0x32, 0x43, 0xf1, 0x2a, 0x60, 0xb7, 0x9f, 0xfe, 0x25, 0x94, 0x71, 0x05, 0x3e, 0x14, 0xc7, 0x68, 0xa1, 0x8c, 0xbf, 0x9a, 0xe5, 0x9e, 0x14, 0x9b, }; static const wycheproof_ecdh_test ecdh_secp521r1_5790 = { .name = "ecdh_secp521r1_5790", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5790_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5790_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5790_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5790_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 510 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5791 for ECDH, tcId is 511 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5791_peerpubkey[] = { 0x01, 0xba, 0xdf, 0x6a, 0x41, 0x1a, 0x40, 0x56, 0x52, 0xd3, 0xe5, 0x4b, 0x8f, 0xb2, 0xc5, 0xaa, 0xed, 0x8e, 0xb9, 0xad, 0xa9, 0xf0, 0x6e, 0xff, 0xc2, 0xe6, 0x52, 0x99, 0x05, 0x3b, 0x8a, 0x32, 0x16, 0xe0, 0xb5, 0xee, 0x7b, 0x25, 0x65, 0x61, 0xdf, 0xa1, 0x77, 0x99, 0x70, 0x54, 0x7b, 0x10, 0x72, 0x42, 0x4b, 0x86, 0xbb, 0x6e, 0xf4, 0x08, 0xce, 0xf5, 0x75, 0xbd, 0xb0, 0x2b, 0x79, 0xde, 0x35, 0xd4, 0x01, 0x4e, 0xf3, 0xa4, 0x7c, 0x25, 0x26, 0x5b, 0x1c, 0xb2, 0xf2, 0x8d, 0x59, 0x63, 0xf5, 0x33, 0xf7, 0xac, 0xfb, 0xde, 0x34, 0xd4, 0x5f, 0xa1, 0xae, 0x5f, 0xae, 0x77, 0xb4, 0xc4, 0xe0, 0xc8, 0x94, 0x28, 0x02, 0x47, 0x66, 0x4a, 0xad, 0x91, 0xc3, 0x1a, 0x01, 0x1f, 0xba, 0x50, 0xeb, 0x6e, 0x34, 0xbd, 0xfd, 0xf2, 0x8f, 0x3e, 0x40, 0x6a, 0x60, 0x2c, 0x50, 0x71, 0xee, 0xbb, 0x63, 0x2c, 0xdb, 0xe5, }; static const unsigned char ecdh_secp521r1_5791_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5791_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5791_sharedsecret[] = { 0x01, 0x6b, 0x74, 0xca, 0x4a, 0x58, 0x8f, 0xa4, 0x8c, 0xc5, 0xfe, 0x73, 0x8a, 0xa8, 0x49, 0x52, 0xe7, 0xd4, 0x90, 0x8e, 0xf9, 0xfb, 0x69, 0xa4, 0xbc, 0x47, 0x0e, 0xb7, 0x2e, 0xd8, 0x6b, 0x1c, 0x6b, 0xca, 0x0b, 0x63, 0x14, 0x93, 0x9c, 0x31, 0x1b, 0x0e, 0x3d, 0xae, 0x7f, 0xed, 0xd8, 0xda, 0xf9, 0x6a, 0x37, 0xb7, 0x42, 0x0d, 0xc5, 0x56, 0xac, 0x2b, 0xbc, 0xbd, 0x0d, 0xfd, 0xda, 0x28, 0x17, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_5791 = { .name = "ecdh_secp521r1_5791", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5791_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5791_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5791_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5791_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 511 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5792 for ECDH, tcId is 512 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5792_peerpubkey[] = { 0x01, 0x8b, 0x92, 0x37, 0x72, 0x3c, 0x02, 0x9c, 0x55, 0x1b, 0x1e, 0x14, 0x49, 0x24, 0x60, 0xe7, 0xd2, 0xe4, 0x95, 0x7d, 0xce, 0xee, 0x53, 0x6d, 0xec, 0x92, 0xbb, 0x35, 0xfe, 0x8e, 0xde, 0x36, 0xe6, 0xb1, 0xcc, 0xe1, 0x55, 0xb6, 0x9a, 0x0d, 0x72, 0x12, 0xc2, 0xb4, 0xf0, 0xba, 0x89, 0xd3, 0xf6, 0xfc, 0x0e, 0x7f, 0x67, 0x77, 0xff, 0x5c, 0x2e, 0xed, 0x8c, 0x71, 0xef, 0xf3, 0xc4, 0x4d, 0xa8, 0x48, 0x01, 0x25, 0xbe, 0xe7, 0x80, 0x39, 0xfb, 0xd3, 0xc3, 0x39, 0xa5, 0x8b, 0xbf, 0x62, 0x5e, 0x50, 0x34, 0x6a, 0x3e, 0x8a, 0x9c, 0x73, 0x46, 0x0e, 0xc6, 0x8f, 0xb0, 0x28, 0xfd, 0x4d, 0x14, 0xcd, 0x63, 0x15, 0x31, 0x0e, 0x03, 0x11, 0xa0, 0xec, 0x4f, 0x39, 0xfb, 0x34, 0x08, 0x51, 0x93, 0x77, 0xdd, 0x4e, 0xa9, 0xd5, 0x77, 0x79, 0x00, 0x38, 0x62, 0xc3, 0x12, 0xbf, 0xd0, 0x9a, 0x9a, 0x1f, 0x96, 0x59, }; static const unsigned char ecdh_secp521r1_5792_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5792_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5792_sharedsecret[] = { 0x01, 0xd8, 0x1c, 0x81, 0x2e, 0x14, 0x80, 0x4d, 0x56, 0x2e, 0x4a, 0x89, 0xe9, 0xee, 0xa7, 0xd2, 0x63, 0x02, 0xcf, 0xd7, 0x55, 0xfe, 0x92, 0x21, 0xfc, 0xa5, 0x77, 0xe3, 0x2f, 0xd5, 0xbc, 0x53, 0x4e, 0x3f, 0xb2, 0xd8, 0x1b, 0x17, 0x01, 0xaf, 0xa0, 0xb4, 0xd9, 0xf2, 0x5b, 0xbd, 0x1b, 0x2d, 0x7e, 0xc9, 0x84, 0xda, 0x40, 0x40, 0x14, 0xb5, 0xc2, 0x3d, 0x8b, 0x29, 0x58, 0xae, 0xd8, 0x64, 0xdb, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5792 = { .name = "ecdh_secp521r1_5792", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5792_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5792_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5792_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5792_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case for Jacobian and projective coordinates in right to left addition chain, tcId is 512 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5793 for ECDH, tcId is 513 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5793_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd2, 0x0e, 0xc9, 0xfe, 0xa6, 0xb5, 0x77, 0xc1, 0x0d, 0x26, 0xca, 0x1b, 0xb4, 0x46, 0xf4, 0x0b, 0x29, 0x9e, 0x64, 0x8b, 0x1a, 0xd5, 0x08, 0xaa, 0xd0, 0x68, 0x89, 0x6f, 0xee, 0x3f, 0x8e, 0x61, 0x4b, 0xc6, 0x30, 0x54, 0xd5, 0x77, 0x2b, 0xf0, 0x1a, 0x65, 0xd4, 0x12, 0xe0, 0xbc, 0xaa, 0x8e, 0x96, 0x5d, 0x2f, 0x5d, 0x33, 0x2d, 0x7f, 0x39, 0xf8, 0x46, 0xd4, 0x40, 0xae, 0x00, 0x1f, 0x4f, 0x87, }; static const unsigned char ecdh_secp521r1_5793_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5793_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5793_sharedsecret[] = { 0x01, 0x7f, 0xde, 0xde, 0x94, 0x70, 0x80, 0x15, 0x68, 0x29, 0x8e, 0x0a, 0x94, 0xcd, 0x49, 0xa0, 0xe8, 0x17, 0x02, 0xb6, 0xf4, 0xef, 0x91, 0x69, 0x83, 0xff, 0x89, 0xe4, 0xf0, 0x1a, 0xde, 0x2e, 0xe1, 0x30, 0x01, 0xc6, 0xea, 0xa6, 0x77, 0x49, 0x9a, 0x9d, 0xe7, 0xa4, 0x8b, 0x7c, 0x79, 0x56, 0xfa, 0xac, 0x58, 0x0e, 0x63, 0x93, 0x38, 0x53, 0x13, 0x4d, 0xc9, 0x68, 0x52, 0x26, 0x4f, 0xb2, 0x3f, 0x2c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5793 = { .name = "ecdh_secp521r1_5793", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5793_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5793_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5793_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5793_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 513 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5794 for ECDH, tcId is 514 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5794_peerpubkey[] = { 0x01, 0x99, 0xff, 0x89, 0xac, 0xaa, 0x60, 0xd0, 0xe4, 0x79, 0xc8, 0x16, 0x87, 0x36, 0xa7, 0x79, 0x5e, 0xe0, 0xc1, 0xb5, 0xc0, 0xb2, 0x1f, 0x6c, 0xbf, 0x90, 0xe3, 0x06, 0x82, 0xcf, 0x44, 0x64, 0xdf, 0x92, 0x32, 0x34, 0x3c, 0x91, 0xf3, 0x65, 0x0c, 0xf0, 0x1f, 0x7b, 0xc2, 0xb1, 0x48, 0xd8, 0xf3, 0xb7, 0x07, 0xfd, 0x2e, 0x3d, 0xff, 0x50, 0x2b, 0xca, 0x0c, 0x03, 0x94, 0x1a, 0x9a, 0xfe, 0x63, 0x1c, 0x00, 0x84, 0xe2, 0x71, 0x55, 0xc0, 0x90, 0x3d, 0xfe, 0x65, 0xd7, 0xb5, 0xd8, 0xb1, 0xbd, 0xec, 0x24, 0x56, 0xca, 0x50, 0xc9, 0x77, 0xa4, 0x3f, 0x44, 0xe4, 0xfc, 0x4d, 0xd7, 0x0d, 0x94, 0xb2, 0x9c, 0x44, 0x69, 0x65, 0x59, 0x81, 0xaf, 0x4f, 0x0c, 0x21, 0x81, 0xf1, 0x9d, 0xc4, 0x48, 0x13, 0x07, 0xe6, 0x9e, 0x20, 0x6d, 0x4e, 0x0a, 0x59, 0xd4, 0x8e, 0x43, 0xf5, 0x58, 0x09, 0x13, 0x9a, 0xda, 0x7c, }; static const unsigned char ecdh_secp521r1_5794_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5794_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5794_sharedsecret[] = { 0x00, 0x5f, 0xf9, 0xd0, 0xe3, 0x3b, 0x19, 0xa1, 0xed, 0x65, 0x40, 0x82, 0x54, 0x95, 0x7a, 0x43, 0xc0, 0x05, 0x0b, 0x19, 0x5d, 0xfd, 0x8f, 0xeb, 0x56, 0x47, 0x2d, 0x3f, 0xef, 0xc4, 0x63, 0xd9, 0x59, 0x10, 0x86, 0x2f, 0x9b, 0xb0, 0xa3, 0x2d, 0x98, 0x05, 0x37, 0x63, 0x33, 0x3f, 0x92, 0x33, 0x26, 0x37, 0xda, 0xbe, 0x2a, 0x4f, 0x9e, 0xeb, 0xcf, 0x48, 0xa4, 0x63, 0x0e, 0xc5, 0x0b, 0xbf, 0x13, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5794 = { .name = "ecdh_secp521r1_5794", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5794_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5794_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5794_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5794_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 514 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5795 for ECDH, tcId is 515 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5795_peerpubkey[] = { 0x01, 0x43, 0x69, 0xb6, 0xe6, 0x71, 0x7e, 0x08, 0x54, 0x38, 0x08, 0x33, 0xd9, 0x74, 0xbe, 0xea, 0x9c, 0xcc, 0xc0, 0x1d, 0x7f, 0xbc, 0xc3, 0x92, 0x45, 0xbc, 0x14, 0x27, 0x10, 0x4c, 0x21, 0x43, 0x26, 0x80, 0x9f, 0xd1, 0xa6, 0x78, 0xf8, 0x96, 0x12, 0xd0, 0x87, 0xdf, 0x5e, 0x3d, 0x5a, 0xb1, 0x85, 0x51, 0x78, 0xe0, 0x1f, 0xbc, 0x67, 0x12, 0x48, 0x2b, 0x34, 0x43, 0xcd, 0xbb, 0xfe, 0xc3, 0xc7, 0x7a, 0x00, 0x7e, 0x5a, 0x87, 0x86, 0xaa, 0xca, 0xe7, 0x5f, 0x9f, 0x7e, 0x59, 0xb3, 0xb0, 0x0c, 0xf1, 0x36, 0xac, 0xda, 0xc4, 0x2f, 0xf0, 0xda, 0x06, 0xa0, 0xde, 0x82, 0xd5, 0xe3, 0xc4, 0x16, 0x9a, 0x9b, 0x5d, 0x63, 0xcd, 0x7c, 0x0c, 0x68, 0x30, 0x85, 0x85, 0xf6, 0xf3, 0x1a, 0x30, 0x0d, 0x33, 0xc0, 0x10, 0x04, 0x2b, 0x44, 0xcd, 0xd0, 0xe6, 0xa8, 0x11, 0xad, 0x61, 0x4e, 0xf1, 0x8b, 0x6d, 0x4e, 0x06, }; static const unsigned char ecdh_secp521r1_5795_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5795_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5795_sharedsecret[] = { 0x00, 0x01, 0x4a, 0x36, 0xb9, 0x8a, 0xb5, 0x7d, 0x1d, 0x59, 0x93, 0x51, 0x27, 0x2b, 0x31, 0x31, 0xfd, 0x12, 0xe1, 0x8c, 0xb0, 0xf6, 0x65, 0xcc, 0x98, 0x05, 0xb2, 0x40, 0x2c, 0x67, 0x0e, 0xe3, 0x09, 0xa8, 0x5b, 0x6e, 0x0c, 0x2a, 0x9c, 0xca, 0x28, 0xd5, 0xa4, 0x58, 0x3c, 0xcc, 0xcd, 0xe7, 0xb8, 0xd5, 0xaa, 0xf3, 0x0c, 0x67, 0x80, 0xce, 0xdf, 0x8a, 0x0b, 0x9a, 0x4f, 0x6a, 0x49, 0xe9, 0xc1, 0xe9, }; static const wycheproof_ecdh_test ecdh_secp521r1_5795 = { .name = "ecdh_secp521r1_5795", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5795_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5795_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5795_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5795_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0, tcId is 515 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5796 for ECDH, tcId is 516 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5796_peerpubkey[] = { 0x00, 0xb0, 0x8d, 0xf0, 0x61, 0x2d, 0xdb, 0xbd, 0x8a, 0xbe, 0x1c, 0xad, 0xf6, 0x54, 0xf7, 0xb1, 0x50, 0x09, 0x42, 0x97, 0x1c, 0xb1, 0x7f, 0xb6, 0x39, 0x36, 0x75, 0x03, 0x08, 0xbd, 0xf3, 0xe9, 0x1d, 0xab, 0xa0, 0xe2, 0x00, 0x55, 0x75, 0xde, 0x7e, 0x70, 0x38, 0xf8, 0x37, 0x9e, 0x99, 0x75, 0x96, 0xd6, 0x69, 0x6e, 0x57, 0x22, 0x48, 0x9f, 0x7f, 0xd5, 0xf4, 0x1a, 0x85, 0xf9, 0xb2, 0x7b, 0x20, 0x6e, 0x00, 0x6d, 0x4f, 0x35, 0x58, 0xec, 0x85, 0x8e, 0x8b, 0x7b, 0x8f, 0x31, 0xaf, 0x48, 0x0a, 0x80, 0x48, 0x42, 0x23, 0xa6, 0xf3, 0x65, 0x28, 0x68, 0xa3, 0x6d, 0x8a, 0xa0, 0x41, 0x2e, 0x79, 0xd5, 0x7c, 0x5d, 0x32, 0x29, 0x7d, 0x80, 0xb5, 0x08, 0xbf, 0x5a, 0x1b, 0xb5, 0x2f, 0xb4, 0x39, 0x16, 0x3a, 0xcc, 0x26, 0xb4, 0x73, 0x03, 0x3d, 0xc2, 0x48, 0x34, 0xe0, 0xa4, 0x4d, 0xfa, 0x43, 0x48, 0x0a, 0x9e, }; static const unsigned char ecdh_secp521r1_5796_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5796_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5796_sharedsecret[] = { 0x01, 0x54, 0x15, 0xd5, 0x4a, 0xbd, 0xb8, 0x53, 0x6e, 0x1a, 0xe2, 0xac, 0x00, 0x05, 0x1e, 0x2a, 0xf3, 0xc0, 0x42, 0xa8, 0x21, 0x53, 0x01, 0x65, 0xd1, 0xfe, 0xbb, 0x6e, 0xbd, 0xd7, 0x47, 0x81, 0xeb, 0xd3, 0x38, 0x7f, 0x9d, 0xd8, 0x84, 0x5d, 0x31, 0xa0, 0x33, 0x1e, 0x4e, 0xb5, 0x42, 0x08, 0x5b, 0x61, 0xf0, 0xf9, 0xf4, 0x08, 0xba, 0x5b, 0x46, 0x35, 0xdd, 0x24, 0xda, 0xba, 0xda, 0xef, 0x47, 0x01, }; static const wycheproof_ecdh_test ecdh_secp521r1_5796 = { .name = "ecdh_secp521r1_5796", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5796_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5796_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5796_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5796_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 516 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5797 for ECDH, tcId is 517 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5797_peerpubkey[] = { 0x00, 0xb5, 0x74, 0xf6, 0xdf, 0x47, 0x93, 0x2a, 0x18, 0x27, 0xe3, 0x6c, 0x94, 0x41, 0xe9, 0xa6, 0x16, 0x70, 0x96, 0x98, 0x17, 0x73, 0x56, 0x32, 0xf1, 0xec, 0x8f, 0xcd, 0xe6, 0x05, 0x09, 0xf6, 0xcc, 0x99, 0xa5, 0xc6, 0x53, 0x0a, 0x96, 0x00, 0x3d, 0x03, 0x3f, 0x4a, 0xb6, 0x38, 0x36, 0xca, 0x29, 0x26, 0x52, 0xb8, 0x60, 0x64, 0x1a, 0x2b, 0x98, 0xdf, 0x83, 0xce, 0xff, 0x2b, 0xf2, 0x41, 0x9f, 0x7d, 0x01, 0x6c, 0x80, 0x74, 0x2e, 0x03, 0x92, 0xdd, 0xe7, 0x01, 0x6b, 0x10, 0x6e, 0x3f, 0xb9, 0x76, 0xbd, 0x5d, 0x8f, 0x46, 0xa8, 0xf0, 0xe7, 0x4b, 0x90, 0x0a, 0x8d, 0x26, 0xf6, 0x92, 0x8b, 0x02, 0xd4, 0xfc, 0x1a, 0x97, 0xd8, 0x48, 0x44, 0xc2, 0x38, 0x0f, 0x6f, 0xd6, 0x24, 0x9b, 0xeb, 0xbb, 0xa6, 0xe5, 0xf8, 0x7f, 0xc5, 0xea, 0x2e, 0xdc, 0x13, 0x62, 0xd7, 0x7e, 0x1c, 0x24, 0x66, 0x51, 0xa5, 0x6c, }; static const unsigned char ecdh_secp521r1_5797_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5797_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5797_sharedsecret[] = { 0x00, 0xe5, 0xa3, 0x3a, 0xa0, 0xd3, 0x46, 0xba, 0x57, 0x86, 0x67, 0x41, 0xf9, 0x90, 0x11, 0xf1, 0x45, 0xad, 0xbf, 0x2d, 0xfc, 0xc1, 0x0c, 0xbc, 0x98, 0x8c, 0x86, 0xe8, 0xa2, 0x6e, 0x97, 0x7b, 0x41, 0x9a, 0xc7, 0x48, 0xb1, 0x06, 0xf1, 0x4f, 0xf2, 0xfd, 0xee, 0x5a, 0x32, 0x66, 0x16, 0xab, 0x53, 0xcc, 0xbe, 0x2d, 0x80, 0xe8, 0x09, 0x81, 0x13, 0x77, 0xfe, 0x9a, 0xf2, 0x03, 0x2c, 0xa1, 0x84, 0x64, }; static const wycheproof_ecdh_test ecdh_secp521r1_5797 = { .name = "ecdh_secp521r1_5797", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5797_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5797_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5797_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5797_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 517 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5798 for ECDH, tcId is 518 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5798_peerpubkey[] = { 0x00, 0x31, 0x74, 0xc3, 0xd3, 0x40, 0x77, 0xf9, 0x46, 0xf8, 0x98, 0x6a, 0xf2, 0x18, 0xca, 0x01, 0xf3, 0x1e, 0xfe, 0x57, 0xa2, 0x36, 0x71, 0x8e, 0xb8, 0x8d, 0xf2, 0x6a, 0x3c, 0xcc, 0xb2, 0x4b, 0x30, 0xf1, 0xf8, 0xe9, 0xd4, 0xfb, 0xba, 0x2b, 0x95, 0x3e, 0x16, 0x1b, 0xd1, 0x94, 0x47, 0x03, 0x9d, 0xba, 0xf1, 0xbc, 0xe0, 0x4c, 0x34, 0x60, 0xe1, 0xe3, 0xa2, 0x17, 0x0e, 0x26, 0x73, 0x02, 0xd2, 0xdf, 0x00, 0x10, 0xcf, 0xe1, 0x8a, 0xe6, 0xcb, 0x53, 0x6a, 0xc3, 0xe1, 0x4b, 0x3e, 0x60, 0xcc, 0xbe, 0x52, 0xb2, 0x9a, 0x19, 0x52, 0xa4, 0x7b, 0x5b, 0x3b, 0x1f, 0x4c, 0x26, 0x37, 0xad, 0xa5, 0x34, 0xb6, 0x1a, 0x5d, 0x94, 0xf6, 0x58, 0xfc, 0x38, 0x6b, 0xee, 0xd6, 0x12, 0x46, 0x7f, 0x3d, 0xd1, 0xcb, 0xd8, 0xe4, 0xd6, 0xd1, 0x54, 0x56, 0x6a, 0xb9, 0x94, 0x32, 0x8d, 0x2a, 0x58, 0xe6, 0x9c, 0xa7, 0xa8, }; static const unsigned char ecdh_secp521r1_5798_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5798_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5798_sharedsecret[] = { 0x01, 0x87, 0x79, 0xcb, 0xba, 0x17, 0x18, 0xbd, 0x2b, 0x7f, 0xc2, 0xac, 0x5c, 0xb4, 0x71, 0x30, 0x85, 0x76, 0x25, 0x0a, 0xd4, 0x12, 0xa5, 0xf9, 0x8e, 0x28, 0xd1, 0x4d, 0x76, 0xda, 0xfe, 0xcb, 0x84, 0x55, 0x60, 0x3b, 0xb2, 0x45, 0x91, 0xb8, 0xe8, 0x3e, 0x8a, 0x5c, 0x2c, 0x55, 0x05, 0x60, 0x94, 0x45, 0xbf, 0x7a, 0x01, 0x9a, 0x22, 0x98, 0x61, 0x35, 0x1d, 0x16, 0x58, 0x01, 0x28, 0x5b, 0x19, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp521r1_5798 = { .name = "ecdh_secp521r1_5798", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5798_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5798_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5798_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5798_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 518 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5799 for ECDH, tcId is 519 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5799_peerpubkey[] = { 0x00, 0xf8, 0x7b, 0xb7, 0x4f, 0x77, 0xe9, 0xbb, 0x46, 0x11, 0xaf, 0x79, 0xdc, 0x58, 0x2e, 0x36, 0x8a, 0x51, 0xf4, 0x5e, 0x6b, 0xa1, 0xe0, 0xf3, 0xa5, 0x6f, 0xf2, 0x5a, 0x60, 0x0a, 0x5a, 0xfe, 0x0a, 0x20, 0xed, 0xf6, 0x49, 0x62, 0x04, 0xfb, 0xd2, 0xe7, 0x3a, 0x9a, 0x54, 0xd9, 0xc8, 0x80, 0x7f, 0xc0, 0xb9, 0x53, 0x01, 0xdf, 0x19, 0xca, 0x7d, 0x67, 0x29, 0x9f, 0x44, 0xb2, 0x80, 0xbc, 0x69, 0x63, 0x01, 0x44, 0xcd, 0x54, 0x35, 0x8b, 0x30, 0x1b, 0xf3, 0x41, 0xe7, 0xb0, 0xdb, 0x7e, 0xff, 0xf4, 0xb0, 0x01, 0x0f, 0x17, 0x92, 0x62, 0xe5, 0xfa, 0x18, 0x1b, 0x30, 0xd1, 0x91, 0x39, 0x12, 0x9f, 0x42, 0x46, 0x4b, 0x71, 0xea, 0x2e, 0x06, 0x88, 0xba, 0x32, 0x44, 0xd4, 0xf7, 0xcb, 0xe2, 0xf7, 0xa8, 0xc2, 0xa2, 0xb3, 0x79, 0xc6, 0x4a, 0x72, 0xd6, 0xbf, 0xbf, 0x87, 0xf6, 0xf1, 0xa8, 0x7b, 0xc0, 0x6b, }; static const unsigned char ecdh_secp521r1_5799_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5799_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5799_sharedsecret[] = { 0x01, 0xf4, 0x55, 0x81, 0x6a, 0xcb, 0x59, 0xe6, 0x18, 0x9e, 0x6c, 0x14, 0xda, 0xd7, 0xa7, 0x79, 0x95, 0x8b, 0x9b, 0x60, 0xa9, 0x54, 0x97, 0x28, 0xd6, 0x28, 0xb0, 0xaf, 0x1a, 0x38, 0xbe, 0xe0, 0x29, 0xa7, 0x17, 0xb3, 0x11, 0xfb, 0x2b, 0x6c, 0xea, 0x5f, 0xf3, 0xc8, 0xae, 0xa0, 0x96, 0x23, 0x6c, 0x67, 0xc6, 0xa3, 0xac, 0xe0, 0x42, 0x64, 0xac, 0x7e, 0xd1, 0xbe, 0xea, 0x2a, 0x4f, 0x5e, 0x90, 0x44, }; static const wycheproof_ecdh_test ecdh_secp521r1_5799 = { .name = "ecdh_secp521r1_5799", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5799_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5799_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5799_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5799_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 519 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5800 for ECDH, tcId is 520 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5800_peerpubkey[] = { 0x00, 0x58, 0x20, 0xa1, 0x2b, 0x52, 0x9a, 0xa3, 0x90, 0x6a, 0xfb, 0x06, 0x12, 0x03, 0xc1, 0x24, 0xd3, 0xb8, 0x1f, 0x39, 0x9b, 0x67, 0xf4, 0x8f, 0x5c, 0xc3, 0xb5, 0xfd, 0x45, 0x90, 0x70, 0x51, 0xce, 0x05, 0x36, 0xdb, 0xde, 0xeb, 0x4b, 0x3e, 0x4e, 0xa3, 0xe2, 0xc3, 0x79, 0x91, 0xbf, 0x68, 0xbe, 0x9a, 0x1a, 0x1c, 0x60, 0x9a, 0x2e, 0xc7, 0xb4, 0xab, 0x55, 0xdc, 0x00, 0x6e, 0xae, 0x44, 0x0d, 0xda, 0x01, 0xcb, 0x77, 0xd7, 0xdf, 0x78, 0xb9, 0x87, 0x44, 0x70, 0xc3, 0xdd, 0x26, 0x8e, 0x91, 0x99, 0xf9, 0x8f, 0x83, 0x29, 0x53, 0xae, 0xb7, 0xb0, 0x74, 0x49, 0xd3, 0x79, 0x04, 0x05, 0x4c, 0x9d, 0xd2, 0x17, 0xda, 0xf2, 0xf0, 0xae, 0x6d, 0xb0, 0x58, 0x97, 0x51, 0x23, 0xc9, 0xea, 0xf9, 0xd8, 0x86, 0xd5, 0xc3, 0xd6, 0x03, 0x69, 0x07, 0xa5, 0xcf, 0xf3, 0xc7, 0x1c, 0x7a, 0x7a, 0x85, 0xf6, 0x2f, 0x0b, }; static const unsigned char ecdh_secp521r1_5800_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5800_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5800_sharedsecret[] = { 0x00, 0x20, 0x07, 0xfd, 0x98, 0xb4, 0xe3, 0x34, 0xd9, 0xdd, 0x76, 0x86, 0xae, 0x5d, 0xa3, 0x79, 0xc3, 0xc3, 0xa0, 0x51, 0x22, 0x32, 0x84, 0x4f, 0xa0, 0x0e, 0xce, 0x76, 0xea, 0x94, 0x21, 0x17, 0x8b, 0x9c, 0x15, 0x49, 0x42, 0xc0, 0x98, 0x1c, 0xa2, 0xb8, 0x18, 0x71, 0x61, 0xd5, 0x9a, 0xd3, 0x6a, 0xb2, 0xda, 0xf1, 0x75, 0x3e, 0x3b, 0x59, 0xd8, 0xfa, 0x5b, 0x4c, 0x9b, 0xf2, 0x24, 0xa7, 0x37, 0x7d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5800 = { .name = "ecdh_secp521r1_5800", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5800_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5800_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5800_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5800_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 520 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5801 for ECDH, tcId is 521 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5801_peerpubkey[] = { 0x00, 0x58, 0xe0, 0xd2, 0x0d, 0x8a, 0x18, 0x8d, 0x48, 0xca, 0x57, 0xd4, 0xb7, 0x3e, 0xa4, 0xe9, 0xf4, 0x53, 0xa3, 0x89, 0xd5, 0xd8, 0xfb, 0x94, 0x87, 0x37, 0xef, 0x55, 0xee, 0xc3, 0x0a, 0xb6, 0x0f, 0xad, 0x58, 0x0d, 0x9e, 0x12, 0xbb, 0x84, 0x0f, 0x82, 0xe7, 0x49, 0x50, 0xda, 0x3d, 0x12, 0xbe, 0x72, 0x66, 0x45, 0x7b, 0xbd, 0xd9, 0x43, 0xb8, 0x31, 0xf8, 0xad, 0x0d, 0x3b, 0x57, 0xe6, 0x24, 0x34, 0x00, 0xd7, 0x0c, 0x27, 0xab, 0x9c, 0xb2, 0x9f, 0x9d, 0x75, 0x39, 0x67, 0xff, 0xaf, 0xd2, 0x75, 0x51, 0xc7, 0x8a, 0x1b, 0xae, 0x47, 0x44, 0x1a, 0xd3, 0x82, 0x04, 0x13, 0x4f, 0x83, 0x49, 0x5d, 0xeb, 0x19, 0x82, 0x47, 0xd8, 0x75, 0xf1, 0x9a, 0xf9, 0x93, 0x22, 0xc2, 0x93, 0x73, 0x90, 0x34, 0x0b, 0x32, 0x7d, 0x9e, 0x6a, 0x58, 0xb4, 0x1c, 0x76, 0xa3, 0x26, 0xc6, 0xef, 0xbe, 0xc0, 0x2c, 0x99, 0x56, }; static const unsigned char ecdh_secp521r1_5801_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5801_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5801_sharedsecret[] = { 0x00, 0x19, 0x9e, 0x65, 0xe0, 0x6f, 0x7c, 0x56, 0xf3, 0xc4, 0x7a, 0xaf, 0x9f, 0xb6, 0x65, 0x1f, 0x5d, 0x2f, 0xce, 0x23, 0xfa, 0x4b, 0x93, 0xa2, 0x1d, 0xbb, 0xff, 0x96, 0x55, 0x9b, 0x49, 0x1b, 0xb4, 0xa6, 0x0c, 0xb2, 0xb9, 0xf3, 0x5b, 0x7b, 0x45, 0xc3, 0xa8, 0x38, 0x82, 0x8a, 0x53, 0xc5, 0x47, 0x54, 0x36, 0x56, 0xc6, 0x57, 0xc9, 0x16, 0x59, 0x7a, 0xc0, 0x4c, 0xc0, 0x05, 0xb0, 0x20, 0x5b, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_5801 = { .name = "ecdh_secp521r1_5801", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5801_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5801_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5801_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5801_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 521 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5802 for ECDH, tcId is 522 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5802_peerpubkey[] = { 0x00, 0x14, 0x25, 0x1e, 0x9b, 0x87, 0xce, 0x81, 0xf7, 0xf1, 0x49, 0x77, 0x0c, 0x00, 0x7f, 0x1d, 0x63, 0x20, 0xb2, 0xd8, 0x13, 0xd2, 0x75, 0x45, 0x77, 0x3c, 0xcf, 0xf4, 0xce, 0x74, 0x84, 0x35, 0x4f, 0xdf, 0xd1, 0x9f, 0x93, 0x80, 0xde, 0x8c, 0xce, 0x76, 0xce, 0xab, 0xd6, 0x53, 0x0a, 0x0c, 0x81, 0x2a, 0x34, 0xe4, 0x40, 0x4b, 0xd8, 0x22, 0x69, 0xcd, 0x01, 0x2e, 0x1a, 0x17, 0xc7, 0x1c, 0x9d, 0x66, 0x00, 0xfb, 0xcd, 0x44, 0x30, 0x52, 0xcf, 0xaf, 0x03, 0x76, 0x0b, 0xd5, 0x36, 0x63, 0x78, 0x30, 0x8f, 0xdd, 0x6b, 0xf2, 0x93, 0x79, 0xf9, 0xb6, 0xb6, 0x77, 0xc9, 0xe8, 0x8b, 0x03, 0x6e, 0xf2, 0x6a, 0x3a, 0x27, 0x6b, 0x64, 0xa7, 0x51, 0x9e, 0x0d, 0x01, 0x9a, 0x00, 0x76, 0x0f, 0xef, 0x38, 0x7d, 0xd4, 0x83, 0xd0, 0xd5, 0x8a, 0xb3, 0xd3, 0x01, 0x58, 0xcd, 0x18, 0xb2, 0x60, 0xe5, 0x04, 0x15, 0x89, }; static const unsigned char ecdh_secp521r1_5802_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5802_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5802_sharedsecret[] = { 0x00, 0x2e, 0xe3, 0x0b, 0xb0, 0x81, 0xa0, 0x4b, 0x7c, 0x58, 0x5d, 0x12, 0xcf, 0x2e, 0x0d, 0xcc, 0xe9, 0x49, 0x38, 0xde, 0xb0, 0xb7, 0x2a, 0x5f, 0xba, 0x80, 0x16, 0x08, 0x63, 0x85, 0x4c, 0xbf, 0x74, 0x95, 0xfc, 0x4e, 0x83, 0x99, 0xad, 0x06, 0xaa, 0x6e, 0xa0, 0x59, 0x57, 0xb7, 0x62, 0x81, 0x05, 0x7f, 0x07, 0x01, 0x19, 0x6b, 0x98, 0x33, 0x71, 0xae, 0xec, 0x0e, 0x4e, 0x31, 0xf6, 0xb4, 0x2b, 0x6c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5802 = { .name = "ecdh_secp521r1_5802", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5802_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5802_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5802_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5802_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 522 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5803 for ECDH, tcId is 523 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5803_peerpubkey[] = { 0x01, 0xf5, 0x18, 0x38, 0xae, 0xe3, 0x6d, 0x1d, 0xfb, 0xb0, 0x00, 0xc0, 0xa3, 0xdd, 0x84, 0x75, 0x5a, 0x87, 0xd6, 0xdc, 0xc5, 0xee, 0x5c, 0x78, 0xc8, 0x8b, 0x30, 0xd3, 0xfe, 0x15, 0x49, 0xa8, 0x91, 0x82, 0x04, 0xaf, 0xbb, 0x74, 0x2a, 0xcd, 0x9b, 0x51, 0x20, 0xf1, 0x09, 0xdb, 0xfd, 0xf9, 0xe1, 0x6f, 0x0e, 0xae, 0x84, 0xbc, 0x82, 0xca, 0xf4, 0x13, 0x49, 0x25, 0x2f, 0xa9, 0x81, 0x2a, 0x94, 0x41, 0x01, 0xe0, 0xb3, 0xa7, 0x66, 0x9b, 0xb3, 0xae, 0xe5, 0x4e, 0x64, 0xbb, 0x03, 0xb6, 0x8a, 0x62, 0x28, 0x31, 0x15, 0x07, 0x19, 0xa2, 0x1d, 0x43, 0x28, 0xf7, 0x32, 0xa6, 0x49, 0x66, 0x6a, 0x25, 0x98, 0xd5, 0xad, 0x0f, 0x62, 0xb0, 0x0a, 0x26, 0x5a, 0x9e, 0x08, 0xf5, 0xec, 0x0b, 0x7b, 0x6f, 0x9e, 0x1f, 0x8c, 0xad, 0xa0, 0x43, 0x78, 0x58, 0x0b, 0x4a, 0x28, 0x7a, 0x3a, 0xf4, 0xae, 0x39, 0x53, 0x15, }; static const unsigned char ecdh_secp521r1_5803_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5803_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5803_sharedsecret[] = { 0x01, 0x89, 0x78, 0x67, 0x00, 0x90, 0x2c, 0xf0, 0xc1, 0xf5, 0x47, 0x9d, 0x83, 0x9e, 0xe4, 0xe2, 0x40, 0x1b, 0xd2, 0x49, 0xf4, 0x13, 0xc0, 0x4a, 0xa3, 0x01, 0x87, 0x32, 0xfc, 0x5f, 0xf9, 0xc4, 0x6a, 0x63, 0x74, 0x79, 0xf9, 0x34, 0x27, 0xe0, 0x30, 0xfa, 0x47, 0x46, 0x60, 0xe1, 0x8b, 0x2c, 0xab, 0x46, 0xf6, 0xae, 0x78, 0xf3, 0x31, 0xc5, 0xbd, 0x35, 0x1c, 0xbf, 0x32, 0xea, 0x67, 0x91, 0xfe, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp521r1_5803 = { .name = "ecdh_secp521r1_5803", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5803_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5803_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5803_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5803_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 523 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5804 for ECDH, tcId is 524 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5804_peerpubkey[] = { 0x00, 0xa8, 0xbb, 0x7b, 0x5f, 0x42, 0x57, 0xa3, 0x31, 0x9c, 0x6d, 0xcb, 0x1d, 0xf5, 0x89, 0x88, 0xcd, 0xf6, 0x04, 0x53, 0xe4, 0x39, 0xd2, 0x30, 0xf4, 0x25, 0x16, 0x32, 0xff, 0x92, 0xb2, 0x42, 0x4b, 0x14, 0x7c, 0xa4, 0x08, 0x24, 0xb2, 0x5e, 0x6e, 0xc5, 0xf7, 0x15, 0x99, 0xcc, 0xfd, 0x13, 0xea, 0x62, 0x13, 0x9e, 0x0e, 0xad, 0xf2, 0x50, 0xc0, 0xd0, 0xda, 0x62, 0x6f, 0x4f, 0x1e, 0xf0, 0xcc, 0xbe, 0x00, 0x49, 0x4f, 0xa6, 0x59, 0x39, 0xd5, 0xf5, 0xd1, 0x44, 0xce, 0xa5, 0x42, 0xde, 0xa2, 0x7d, 0x7b, 0x26, 0xdc, 0xb5, 0xd5, 0xd6, 0xe8, 0x13, 0xbc, 0x53, 0x07, 0x75, 0x3b, 0x61, 0x84, 0x10, 0x46, 0x5b, 0x1b, 0x96, 0xbe, 0xd7, 0x9c, 0x98, 0xb6, 0xa6, 0x0b, 0x58, 0xa0, 0xbd, 0xf8, 0x36, 0x08, 0xc8, 0x1a, 0x9e, 0xd3, 0x62, 0xb6, 0x6a, 0x4c, 0x61, 0x32, 0x3b, 0x34, 0xd2, 0xa6, 0x41, 0x6c, 0x83, }; static const unsigned char ecdh_secp521r1_5804_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5804_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5804_sharedsecret[] = { 0x00, 0x70, 0x68, 0x31, 0x1b, 0x5c, 0x58, 0x39, 0x7c, 0x16, 0x37, 0xbd, 0x9a, 0xf3, 0x8b, 0x6b, 0xa8, 0x7f, 0x10, 0x85, 0x1e, 0xee, 0x67, 0x5c, 0xba, 0xdc, 0x27, 0x86, 0x0e, 0x78, 0xd4, 0x48, 0xab, 0xf3, 0x3d, 0xec, 0x17, 0x4d, 0x98, 0x2d, 0xab, 0x6d, 0x10, 0x0d, 0x31, 0x5c, 0x55, 0x78, 0x72, 0xbc, 0x8f, 0x7a, 0xff, 0x2b, 0xa0, 0xff, 0xd5, 0x08, 0x2e, 0xe2, 0x03, 0x84, 0x0a, 0x7d, 0x64, 0xc7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5804 = { .name = "ecdh_secp521r1_5804", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5804_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5804_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5804_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5804_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 524 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5805 for ECDH, tcId is 525 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5805_peerpubkey[] = { 0x01, 0xec, 0x49, 0xde, 0x21, 0xd6, 0x92, 0xfc, 0xd7, 0x08, 0x42, 0x80, 0x46, 0x0d, 0xc1, 0x41, 0x0b, 0x5c, 0xe1, 0x48, 0x55, 0xf5, 0x30, 0x21, 0x44, 0x47, 0xb6, 0xf5, 0x3d, 0x03, 0xb0, 0x19, 0xb8, 0xe1, 0xfa, 0x7a, 0x86, 0x2e, 0xae, 0x55, 0xfa, 0x90, 0x18, 0xfc, 0x93, 0x57, 0x99, 0x36, 0x74, 0x7c, 0x96, 0x59, 0x2c, 0x98, 0xee, 0xc6, 0x25, 0x71, 0x57, 0x2e, 0x4b, 0x40, 0xac, 0x81, 0x65, 0xe1, 0x01, 0x45, 0x73, 0xce, 0xe6, 0x5c, 0xae, 0x4d, 0x54, 0x38, 0x9e, 0x8d, 0x74, 0xe1, 0x20, 0xb3, 0x08, 0x29, 0x8f, 0x15, 0xb0, 0x75, 0xa4, 0x4e, 0xd0, 0xf5, 0x0e, 0xcf, 0x3e, 0x4a, 0xb0, 0x81, 0xac, 0xa1, 0x52, 0xc6, 0x14, 0xc5, 0x1a, 0x7b, 0x31, 0x21, 0x17, 0xdf, 0x7f, 0xc6, 0x07, 0xa8, 0x61, 0xd2, 0xda, 0xd1, 0x02, 0x37, 0x9b, 0xba, 0xbb, 0x8d, 0x72, 0xfc, 0x83, 0x6e, 0xc2, 0xc8, 0x23, 0x0c, }; static const unsigned char ecdh_secp521r1_5805_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5805_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5805_sharedsecret[] = { 0x00, 0x4e, 0x26, 0xf4, 0x6b, 0x52, 0x04, 0xc8, 0xea, 0x45, 0xf8, 0x01, 0x15, 0x74, 0x1a, 0xc6, 0xb0, 0xad, 0x0f, 0xbc, 0x34, 0xae, 0x30, 0xd8, 0x9b, 0x85, 0xc1, 0xa3, 0x90, 0xca, 0x28, 0xb6, 0xb8, 0x3d, 0xcd, 0x74, 0x48, 0xcd, 0x41, 0x3a, 0x00, 0x57, 0x28, 0x3d, 0xae, 0x28, 0x56, 0x25, 0xbe, 0xc2, 0x93, 0x2e, 0x93, 0x3f, 0xf3, 0x48, 0x09, 0x98, 0x21, 0x58, 0x7b, 0xee, 0xd6, 0x5d, 0x37, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5805 = { .name = "ecdh_secp521r1_5805", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5805_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5805_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5805_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5805_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 525 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5806 for ECDH, tcId is 526 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5806_peerpubkey[] = { 0x00, 0x55, 0x85, 0x82, 0x56, 0x8f, 0xf6, 0x81, 0x75, 0xce, 0xca, 0xa0, 0x65, 0x2b, 0xef, 0x37, 0x3d, 0x68, 0x75, 0xa1, 0x96, 0xa3, 0x0d, 0x77, 0x71, 0x56, 0x38, 0xcd, 0x45, 0x05, 0x9e, 0x9c, 0x20, 0x75, 0x95, 0xf9, 0x2b, 0xa5, 0xa0, 0x29, 0x90, 0xa9, 0xb7, 0xa0, 0x5f, 0xc8, 0x64, 0x93, 0x65, 0x51, 0x8c, 0xef, 0xea, 0x24, 0x60, 0x1e, 0xc1, 0x18, 0x7a, 0x9b, 0x6a, 0x6f, 0xd3, 0x7d, 0x3e, 0x82, 0x00, 0x2c, 0x25, 0x24, 0x98, 0x3d, 0x5c, 0x3d, 0x4c, 0x09, 0x35, 0x99, 0xf0, 0x0f, 0x96, 0xa7, 0xa3, 0x88, 0xe2, 0xdc, 0xd1, 0x8d, 0xdd, 0x24, 0x92, 0x3a, 0xb6, 0xf8, 0x23, 0x6d, 0xfc, 0xd5, 0x44, 0x72, 0x1f, 0xd2, 0x2c, 0xda, 0xf2, 0x0f, 0xa5, 0x1e, 0x1b, 0xf9, 0xf9, 0xa9, 0xe9, 0x98, 0xf3, 0x41, 0x54, 0xf2, 0x66, 0x24, 0x82, 0x7c, 0xd2, 0xcf, 0xa1, 0xb0, 0xe6, 0x34, 0xc8, 0x30, 0x56, 0xd9, }; static const unsigned char ecdh_secp521r1_5806_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5806_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5806_sharedsecret[] = { 0x01, 0x59, 0xf2, 0xd6, 0x52, 0x3e, 0xd3, 0xf3, 0x73, 0xf2, 0xf9, 0x55, 0xbb, 0x30, 0x2b, 0xb9, 0x4e, 0xfb, 0x74, 0x2c, 0x39, 0xfc, 0x08, 0x1d, 0xa1, 0xb9, 0x6b, 0x36, 0xce, 0x5f, 0x3f, 0xe0, 0x7b, 0xff, 0x07, 0xfb, 0xd2, 0x25, 0xdb, 0xa9, 0xea, 0x2a, 0x82, 0xc3, 0xbf, 0xf8, 0x93, 0x9b, 0x3c, 0xff, 0xec, 0xb5, 0x84, 0x4b, 0xe0, 0xec, 0xe9, 0xab, 0xe5, 0xc5, 0x1d, 0xbf, 0x02, 0x12, 0x64, 0x7f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5806 = { .name = "ecdh_secp521r1_5806", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5806_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5806_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5806_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5806_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 526 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5807 for ECDH, tcId is 527 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5807_peerpubkey[] = { 0x01, 0x88, 0xdc, 0xd8, 0xcd, 0xf3, 0x85, 0x5c, 0xf7, 0xcf, 0x7f, 0x62, 0x25, 0x11, 0xc6, 0x49, 0xaa, 0x96, 0x82, 0x4b, 0xdc, 0xfe, 0x31, 0x84, 0x85, 0x97, 0x0a, 0xb2, 0xee, 0xb2, 0x42, 0x8e, 0x49, 0xae, 0x46, 0xe2, 0x79, 0xe3, 0xb0, 0x21, 0x10, 0x83, 0x9d, 0x5a, 0x44, 0x71, 0xf6, 0xa2, 0x36, 0xad, 0xee, 0x76, 0x03, 0x61, 0x04, 0x3b, 0x31, 0x06, 0x48, 0x84, 0x88, 0xcc, 0xbd, 0x2c, 0xaf, 0xb8, 0x00, 0x4b, 0x58, 0x4a, 0xc1, 0xd3, 0x22, 0x3c, 0x7a, 0x01, 0xa7, 0x25, 0xc3, 0x8c, 0x18, 0x2b, 0x4c, 0xa9, 0x28, 0x58, 0xdd, 0x2e, 0x76, 0x9f, 0x83, 0x05, 0x1d, 0xb9, 0x53, 0xe2, 0x0c, 0x63, 0xd4, 0x5d, 0x69, 0x72, 0xc6, 0x65, 0x9f, 0xca, 0x66, 0x4d, 0x97, 0x08, 0xb6, 0x97, 0x39, 0x05, 0xe7, 0x30, 0x4c, 0x39, 0x6c, 0x5f, 0x73, 0x9a, 0x0f, 0xc6, 0x68, 0x13, 0xac, 0xaa, 0xc1, 0xec, 0x1b, 0x0c, }; static const unsigned char ecdh_secp521r1_5807_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5807_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5807_sharedsecret[] = { 0x01, 0x5b, 0x29, 0xe3, 0x3f, 0x79, 0x59, 0xe2, 0xca, 0x91, 0xf5, 0x8a, 0x7e, 0x9e, 0x4b, 0x13, 0x2a, 0x09, 0x89, 0x68, 0x7f, 0x5a, 0x39, 0xf8, 0xbd, 0x61, 0xf7, 0xf4, 0x22, 0x75, 0xcc, 0x25, 0x60, 0x59, 0xa0, 0x4f, 0x05, 0xa5, 0xa7, 0xa3, 0x86, 0xed, 0xf0, 0x71, 0xf7, 0xc9, 0x81, 0x23, 0x5c, 0x3d, 0x05, 0x2f, 0xf7, 0x33, 0x84, 0x3b, 0xc9, 0x73, 0x8f, 0xa1, 0x04, 0xb9, 0xde, 0xb9, 0x24, 0x5e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5807 = { .name = "ecdh_secp521r1_5807", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5807_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5807_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5807_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5807_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 527 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5808 for ECDH, tcId is 528 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5808_peerpubkey[] = { 0x01, 0x13, 0xc7, 0x1c, 0xb3, 0xb6, 0xb3, 0x2f, 0x6d, 0x20, 0x87, 0x97, 0x8f, 0x3f, 0x0a, 0xee, 0x36, 0xea, 0x8c, 0xb1, 0xf0, 0x28, 0xd2, 0xd9, 0x81, 0x61, 0xf7, 0x75, 0x8b, 0xbb, 0xee, 0xb3, 0xb9, 0x65, 0x88, 0xaf, 0x97, 0xbc, 0xb4, 0xf3, 0xff, 0xfc, 0x45, 0x7b, 0x90, 0xb5, 0x17, 0x39, 0xe7, 0x89, 0x4f, 0x23, 0x81, 0x16, 0xe9, 0x85, 0xca, 0xac, 0xff, 0x3e, 0x75, 0x1b, 0x56, 0x51, 0x8b, 0x3b, 0x00, 0x5b, 0x71, 0xf5, 0x23, 0x05, 0x98, 0x68, 0x9e, 0x62, 0x54, 0x78, 0x8b, 0x89, 0x40, 0x03, 0xdc, 0x91, 0xeb, 0xd9, 0x53, 0xa2, 0xfe, 0xdb, 0xed, 0x23, 0xa0, 0x68, 0xb9, 0xf9, 0x43, 0x79, 0x8b, 0xfe, 0x4d, 0x04, 0x5f, 0x7b, 0x0b, 0xad, 0x53, 0x67, 0x27, 0xa7, 0x3a, 0x66, 0xf2, 0x50, 0x13, 0x6f, 0x8f, 0x50, 0x06, 0x75, 0x3f, 0xf0, 0x4b, 0x00, 0xa1, 0x48, 0xaf, 0xbe, 0x70, 0xef, 0xc1, 0x43, }; static const unsigned char ecdh_secp521r1_5808_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5808_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5808_sharedsecret[] = { 0x00, 0x39, 0xcf, 0x50, 0x09, 0xc6, 0x41, 0x1a, 0x5b, 0x71, 0xb0, 0x45, 0x3f, 0x85, 0xb4, 0x1f, 0x50, 0x6b, 0x72, 0xdc, 0xcb, 0x33, 0xf3, 0x44, 0xad, 0x25, 0x72, 0x44, 0xdc, 0xf9, 0xc5, 0x24, 0xca, 0xa8, 0xfd, 0xd3, 0x76, 0xb5, 0x23, 0x48, 0x0b, 0xa2, 0x25, 0x31, 0x90, 0x42, 0x15, 0xd2, 0x6c, 0x8a, 0x81, 0x8b, 0x8f, 0x80, 0xa4, 0xaa, 0x1d, 0xd1, 0x11, 0xac, 0xd8, 0xee, 0x84, 0xcd, 0x45, 0x3d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5808 = { .name = "ecdh_secp521r1_5808", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5808_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5808_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5808_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5808_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 528 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5809 for ECDH, tcId is 529 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5809_peerpubkey[] = { 0x01, 0x75, 0x75, 0xa3, 0xf8, 0x58, 0x34, 0xca, 0x48, 0x32, 0xbf, 0x64, 0xc5, 0x9d, 0xf1, 0xbf, 0x30, 0xac, 0x83, 0x04, 0x29, 0x1c, 0x81, 0x53, 0x97, 0xdd, 0x9d, 0x90, 0xc0, 0x2a, 0xe0, 0x55, 0x96, 0x41, 0x10, 0x81, 0x4b, 0x15, 0x8f, 0x02, 0x9d, 0x40, 0xb3, 0x6b, 0x2a, 0x85, 0xa9, 0x56, 0x86, 0x79, 0xfb, 0x56, 0xa5, 0xab, 0x49, 0x73, 0x06, 0x8d, 0x9e, 0xdd, 0x80, 0xed, 0xb7, 0xa6, 0xa7, 0x6a, 0x00, 0xef, 0xa3, 0xca, 0x31, 0x01, 0x15, 0x86, 0x94, 0xba, 0x59, 0x9d, 0x27, 0xb4, 0xed, 0x0c, 0x43, 0x99, 0x77, 0xd2, 0x85, 0x5d, 0xd5, 0x7d, 0xd4, 0xbd, 0x31, 0x1a, 0xcc, 0x38, 0x82, 0xb0, 0x99, 0x67, 0xaf, 0x64, 0xfa, 0x34, 0xab, 0x08, 0xca, 0xf2, 0x4d, 0x2a, 0xca, 0xaf, 0x32, 0xd9, 0x3c, 0xac, 0x88, 0x39, 0xd3, 0x91, 0xaa, 0xc5, 0x1e, 0x2c, 0xd0, 0x67, 0xf4, 0x04, 0x6b, 0x5f, 0x87, 0xd3, }; static const unsigned char ecdh_secp521r1_5809_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5809_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5809_sharedsecret[] = { 0x01, 0xba, 0x06, 0x92, 0x54, 0xa9, 0x51, 0xa9, 0x61, 0xaa, 0xde, 0x06, 0x6f, 0xf0, 0x47, 0x97, 0xbf, 0xc9, 0xcd, 0xfe, 0xbf, 0x2a, 0x19, 0xe4, 0xf4, 0xb7, 0x24, 0x02, 0x4e, 0x31, 0x6e, 0x8a, 0xfd, 0x9e, 0xd4, 0x8b, 0x63, 0x6a, 0x4a, 0x0d, 0x78, 0xcc, 0x4d, 0x37, 0xd9, 0x40, 0x2a, 0xd1, 0xc9, 0x81, 0x64, 0x0f, 0x90, 0xd2, 0x8f, 0x4e, 0x56, 0x6c, 0xea, 0xc9, 0xb6, 0x6c, 0x40, 0x00, 0xd3, 0xef, }; static const wycheproof_ecdh_test ecdh_secp521r1_5809 = { .name = "ecdh_secp521r1_5809", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5809_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5809_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5809_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5809_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 529 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5810 for ECDH, tcId is 530 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5810_peerpubkey[] = { 0x00, 0x6d, 0xd0, 0xee, 0x8e, 0x43, 0xf6, 0x15, 0xe3, 0x0b, 0x63, 0xdc, 0x45, 0x57, 0x01, 0x66, 0x1c, 0x9d, 0xec, 0x69, 0xdf, 0xde, 0x65, 0xab, 0x7c, 0xf9, 0x72, 0x10, 0x39, 0xe3, 0xe5, 0xd3, 0xcc, 0x5c, 0x12, 0xf8, 0xe4, 0xc0, 0xb6, 0xa3, 0x42, 0x2b, 0xf1, 0x3d, 0x32, 0xe4, 0x10, 0x82, 0x55, 0x29, 0x0f, 0x9c, 0xc9, 0xd6, 0xe4, 0xcf, 0xb9, 0xc9, 0xea, 0x16, 0x5f, 0x93, 0x45, 0xe1, 0x75, 0x9c, 0x00, 0x46, 0x49, 0xf0, 0x3b, 0x78, 0xe5, 0xdf, 0xfa, 0xbb, 0xa7, 0x0e, 0x74, 0xe9, 0x6c, 0x53, 0x62, 0xfa, 0x83, 0x18, 0x6b, 0xdc, 0x44, 0x82, 0x0b, 0xb0, 0xea, 0xf1, 0xbb, 0xd1, 0xa5, 0x19, 0x76, 0xcb, 0xbc, 0xfc, 0x03, 0xa9, 0x86, 0xbd, 0xdf, 0x93, 0x99, 0x6d, 0x96, 0x0f, 0xa7, 0x7a, 0xac, 0x46, 0xf9, 0xb7, 0xa5, 0xc3, 0x2c, 0x62, 0xc3, 0x40, 0x2c, 0x40, 0x0b, 0x31, 0x65, 0xc1, 0xba, 0x21, }; static const unsigned char ecdh_secp521r1_5810_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5810_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5810_sharedsecret[] = { 0x01, 0x6c, 0x4b, 0xfe, 0x17, 0xc9, 0x1c, 0x3a, 0xb2, 0xc6, 0x0e, 0x5c, 0x9c, 0x2f, 0xac, 0x1b, 0xe4, 0x89, 0x3f, 0x80, 0xfc, 0xa0, 0x56, 0x47, 0xc3, 0x4c, 0x82, 0xee, 0x8e, 0xe5, 0xe3, 0xb3, 0xc8, 0x9c, 0x6e, 0x87, 0xbc, 0x3a, 0xf4, 0x44, 0xdf, 0xdd, 0x1d, 0x69, 0x2a, 0x3d, 0xa4, 0x5a, 0x45, 0x97, 0x5b, 0xd5, 0x07, 0x74, 0x47, 0x13, 0x13, 0xd5, 0xb7, 0xd1, 0x49, 0xa5, 0x39, 0x5b, 0xa7, 0xed, }; static const wycheproof_ecdh_test ecdh_secp521r1_5810 = { .name = "ecdh_secp521r1_5810", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5810_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5810_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5810_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5810_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 530 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5811 for ECDH, tcId is 531 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5811_peerpubkey[] = { 0x01, 0xa6, 0xd5, 0xd0, 0x68, 0xb1, 0x90, 0x81, 0x77, 0xa1, 0xb1, 0x8f, 0xe0, 0x78, 0xdf, 0x8f, 0x89, 0x94, 0x58, 0x70, 0xca, 0x88, 0x11, 0x69, 0x5b, 0x44, 0x70, 0x04, 0x8c, 0xe0, 0xc3, 0x44, 0x43, 0xb9, 0xa7, 0xf9, 0x5f, 0x8a, 0xf9, 0xfb, 0x6a, 0x4c, 0xa0, 0x28, 0x5d, 0x17, 0x91, 0xce, 0x97, 0x5a, 0xd5, 0xa6, 0x5a, 0x5c, 0x9f, 0x6b, 0x3d, 0xf8, 0x05, 0xcc, 0x69, 0xb3, 0x98, 0x4e, 0xfe, 0xd4, 0x01, 0x02, 0x53, 0x39, 0xe4, 0x0a, 0x26, 0xa3, 0xf6, 0xf4, 0xfe, 0x54, 0x10, 0x17, 0x06, 0xb7, 0xf6, 0xd4, 0x75, 0xb9, 0x0f, 0x58, 0xf7, 0xca, 0x58, 0x17, 0xab, 0x5c, 0x3d, 0xf4, 0xd8, 0x38, 0x44, 0xf4, 0x29, 0x79, 0xdc, 0xc8, 0x8d, 0xab, 0x07, 0x85, 0xea, 0x24, 0x26, 0x43, 0x15, 0x95, 0x29, 0xbd, 0x1c, 0xee, 0xd9, 0xbe, 0x4e, 0xee, 0xb2, 0x30, 0x2f, 0xac, 0xc6, 0xb4, 0x40, 0xb5, 0x82, 0x64, }; static const unsigned char ecdh_secp521r1_5811_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5811_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5811_sharedsecret[] = { 0x00, 0x51, 0x91, 0x84, 0x91, 0x04, 0xcd, 0xe5, 0xbe, 0x25, 0x63, 0xc0, 0x13, 0x30, 0x65, 0xff, 0xcb, 0xf4, 0xbf, 0x41, 0x1a, 0xf3, 0x2e, 0x09, 0x86, 0x59, 0x89, 0xb3, 0x94, 0xec, 0x75, 0xe8, 0x2b, 0x4e, 0x46, 0x49, 0xd3, 0x31, 0x25, 0x03, 0x4f, 0x2b, 0x8c, 0xae, 0x1c, 0x29, 0x59, 0x2a, 0xaa, 0x9e, 0x50, 0x70, 0x0d, 0xa7, 0x4c, 0x08, 0x83, 0x18, 0xd7, 0x20, 0xa6, 0x8f, 0x58, 0x65, 0x3e, 0x12, }; static const wycheproof_ecdh_test ecdh_secp521r1_5811 = { .name = "ecdh_secp521r1_5811", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5811_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5811_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5811_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5811_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 531 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5812 for ECDH, tcId is 532 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5812_peerpubkey[] = { 0x01, 0xbd, 0x7d, 0x67, 0x37, 0x9b, 0x30, 0x96, 0x72, 0x8a, 0x36, 0x67, 0x96, 0xf7, 0x01, 0x49, 0x77, 0xd1, 0x1e, 0xff, 0x92, 0xf1, 0xfd, 0x30, 0x98, 0x3c, 0x74, 0x52, 0xb8, 0x2f, 0xea, 0x61, 0xf7, 0x7a, 0xe4, 0xa4, 0x31, 0x87, 0x3e, 0x2c, 0x55, 0x88, 0x95, 0x1b, 0x66, 0x35, 0x04, 0x61, 0x0d, 0x13, 0x91, 0xb8, 0xf9, 0x12, 0x2f, 0xd7, 0x89, 0x6e, 0xd4, 0x5b, 0x27, 0xd2, 0x32, 0x03, 0x82, 0xa3, 0x01, 0x95, 0x47, 0x26, 0x0a, 0x02, 0x1b, 0xd8, 0x6b, 0xb1, 0x49, 0x03, 0x2b, 0xad, 0x3c, 0x6a, 0xe1, 0x94, 0x44, 0x58, 0x99, 0x57, 0x3c, 0x40, 0x07, 0xf4, 0x4c, 0xec, 0x88, 0xe2, 0x32, 0xe4, 0x3d, 0x02, 0x7a, 0x36, 0x2c, 0xf5, 0x9c, 0xf1, 0x28, 0x36, 0x7c, 0xdd, 0x59, 0x53, 0x60, 0xe0, 0xbb, 0xc2, 0xa2, 0x5a, 0xca, 0x86, 0x3b, 0x09, 0x77, 0x57, 0x16, 0x7d, 0xe4, 0x41, 0x0d, 0x26, 0x1b, 0x16, }; static const unsigned char ecdh_secp521r1_5812_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5812_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5812_sharedsecret[] = { 0x00, 0x1f, 0x8e, 0x92, 0x5d, 0x5b, 0x2d, 0x22, 0xf7, 0xd1, 0xd7, 0xfd, 0xda, 0xa3, 0x57, 0x5f, 0xa3, 0x2d, 0x44, 0x6f, 0x99, 0xe7, 0x74, 0xdb, 0x28, 0x2c, 0x93, 0xd0, 0x0b, 0xee, 0xca, 0xbd, 0xa9, 0xaa, 0xcf, 0xc6, 0x44, 0xb9, 0xce, 0xcd, 0x76, 0xe7, 0xf1, 0x22, 0x51, 0x5b, 0x6e, 0xbe, 0xf3, 0xb5, 0x60, 0x75, 0xf7, 0xa2, 0x10, 0x1f, 0x9c, 0x49, 0x2e, 0x83, 0xe6, 0x21, 0x47, 0xd0, 0x9b, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_5812 = { .name = "ecdh_secp521r1_5812", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5812_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5812_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5812_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5812_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 532 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5813 for ECDH, tcId is 533 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5813_peerpubkey[] = { 0x00, 0x91, 0x43, 0xdc, 0xc8, 0xd4, 0x45, 0xd7, 0xf6, 0x64, 0x48, 0x1f, 0xba, 0xce, 0x68, 0x90, 0x04, 0x53, 0x94, 0x95, 0x37, 0xfa, 0xd7, 0x37, 0x56, 0xd8, 0x18, 0x56, 0x1e, 0x59, 0x44, 0x8f, 0xfb, 0x49, 0x02, 0x2b, 0x73, 0x7f, 0xc3, 0xe7, 0x25, 0xd6, 0xc1, 0xc4, 0x5b, 0xb0, 0xb0, 0x68, 0x80, 0x92, 0x28, 0xb0, 0xfd, 0x89, 0x61, 0xee, 0xf2, 0x20, 0x61, 0x2b, 0xe0, 0x50, 0x40, 0xc5, 0x40, 0x2e, 0x01, 0xf8, 0xbd, 0x05, 0x6f, 0x5f, 0x9f, 0xb3, 0x08, 0x3e, 0x90, 0x83, 0x37, 0x48, 0x64, 0x73, 0x1d, 0x75, 0x44, 0x1a, 0x1d, 0xc5, 0x2b, 0x41, 0x90, 0x4d, 0x6b, 0x2e, 0xaa, 0xb8, 0x05, 0x03, 0x0b, 0x04, 0xcd, 0xa6, 0xfb, 0x42, 0xea, 0xcc, 0xc7, 0xc9, 0xd5, 0x06, 0x56, 0xf0, 0xa8, 0x52, 0x25, 0x12, 0x0a, 0x06, 0x71, 0xb1, 0x89, 0x2f, 0x2c, 0x11, 0x8e, 0x7b, 0x53, 0x8e, 0x5c, 0x55, 0xaa, 0x64, }; static const unsigned char ecdh_secp521r1_5813_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5813_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5813_sharedsecret[] = { 0x00, 0x72, 0xa7, 0xf9, 0x9e, 0x29, 0x1a, 0x15, 0xc4, 0x5b, 0xc7, 0x8c, 0x48, 0x4e, 0x4f, 0xe9, 0x49, 0x03, 0xa9, 0x58, 0x04, 0x81, 0x26, 0xf3, 0xc2, 0x40, 0x5c, 0x5f, 0xf8, 0xba, 0xc7, 0xdd, 0x07, 0xdd, 0x96, 0xd4, 0x50, 0xb0, 0x17, 0xf6, 0xcb, 0xf6, 0xac, 0xf6, 0x9f, 0xe1, 0x13, 0xfb, 0x7a, 0x67, 0x66, 0xde, 0x8a, 0x95, 0x6e, 0xc0, 0x6f, 0x77, 0x2c, 0x15, 0xc8, 0x4d, 0xe9, 0xf4, 0xd4, 0x62, }; static const wycheproof_ecdh_test ecdh_secp521r1_5813 = { .name = "ecdh_secp521r1_5813", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5813_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5813_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5813_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5813_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 533 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5814 for ECDH, tcId is 534 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5814_peerpubkey[] = { 0x00, 0x80, 0xfa, 0xa5, 0x68, 0x5c, 0x19, 0xf0, 0x85, 0x10, 0x1f, 0x01, 0x0e, 0x83, 0xb2, 0xf0, 0x10, 0x09, 0x62, 0xa1, 0x84, 0x78, 0xc9, 0xb5, 0x1a, 0xa0, 0xd7, 0x52, 0xbd, 0x0e, 0x43, 0x95, 0x37, 0x89, 0x2a, 0x10, 0x7c, 0x34, 0xa5, 0x53, 0xc1, 0x8d, 0xb4, 0xf7, 0x51, 0x5f, 0x2e, 0xf3, 0x8c, 0xaf, 0x82, 0x53, 0xad, 0x2a, 0xf8, 0xc5, 0x9d, 0x84, 0xb7, 0xf7, 0x91, 0x72, 0xcf, 0x2e, 0xb4, 0xcb, 0x01, 0xe9, 0xc0, 0x32, 0x82, 0x70, 0xb7, 0x61, 0xa0, 0xc9, 0x15, 0xa6, 0xed, 0x29, 0xee, 0x22, 0x31, 0x33, 0xeb, 0x46, 0x6e, 0xfe, 0x23, 0x17, 0xc6, 0xf8, 0xad, 0x2b, 0x3c, 0x8d, 0x88, 0x79, 0x4e, 0x4a, 0xba, 0x3f, 0x96, 0x6b, 0x4a, 0xca, 0x55, 0x94, 0xc9, 0xa7, 0x4b, 0x37, 0xb4, 0x50, 0x3e, 0xe5, 0xa0, 0x79, 0x4d, 0x59, 0xc1, 0x08, 0x66, 0x68, 0x97, 0xf5, 0xec, 0x9b, 0xc7, 0xbb, 0xcb, 0xd1, }; static const unsigned char ecdh_secp521r1_5814_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5814_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5814_sharedsecret[] = { 0x00, 0xfe, 0x7b, 0x90, 0xed, 0xa1, 0xf7, 0x23, 0xc5, 0xe4, 0x42, 0x01, 0x7d, 0xad, 0xde, 0x8a, 0xff, 0xe3, 0xca, 0x80, 0xaf, 0xc9, 0xf4, 0x70, 0x32, 0x67, 0x62, 0x6f, 0x47, 0x74, 0xf0, 0x6e, 0x2c, 0x21, 0xa5, 0xd9, 0xc6, 0x47, 0x28, 0x82, 0xea, 0x88, 0x06, 0xa9, 0x13, 0x9c, 0x4a, 0x74, 0x0f, 0x26, 0x54, 0xd1, 0x0c, 0xaa, 0x5e, 0x3d, 0x7b, 0xbb, 0x7e, 0x59, 0x71, 0x3f, 0xa0, 0x32, 0xb9, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp521r1_5814 = { .name = "ecdh_secp521r1_5814", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5814_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5814_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5814_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5814_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 534 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5815 for ECDH, tcId is 535 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5815_peerpubkey[] = { 0x01, 0x4d, 0x6f, 0x8f, 0xa1, 0x57, 0xee, 0xbe, 0xa8, 0xbc, 0x27, 0x28, 0x62, 0xd9, 0xf8, 0xfb, 0xee, 0x63, 0xda, 0x5b, 0xe9, 0x53, 0xe3, 0x33, 0xd0, 0x6b, 0x74, 0x43, 0xcb, 0xb9, 0x6d, 0x0c, 0x46, 0x4a, 0x17, 0x19, 0x43, 0xb8, 0x25, 0x65, 0xea, 0x71, 0x0c, 0x12, 0x64, 0x98, 0xae, 0xb7, 0x97, 0x98, 0x23, 0xb2, 0xeb, 0x1e, 0x81, 0xbe, 0xd3, 0xff, 0xdd, 0x6e, 0x40, 0xf4, 0x52, 0x1e, 0x6c, 0xb9, 0x00, 0x70, 0x1b, 0xcf, 0x9e, 0x45, 0xd6, 0xae, 0x48, 0x99, 0xd9, 0x6e, 0xd5, 0x9a, 0x80, 0x15, 0xc4, 0x54, 0x73, 0x5f, 0x9e, 0xfd, 0xdb, 0x47, 0x59, 0x8f, 0xbe, 0x04, 0x7e, 0x8c, 0x40, 0x21, 0xd7, 0x86, 0xdb, 0x35, 0x39, 0xda, 0x79, 0x76, 0x03, 0x58, 0xc0, 0xf9, 0x28, 0xb2, 0xb7, 0x2c, 0xb9, 0x36, 0xcb, 0x66, 0xe4, 0xfc, 0x81, 0xff, 0x07, 0x9e, 0xcd, 0xe8, 0xe1, 0x89, 0x89, 0xe8, 0x79, 0x50, }; static const unsigned char ecdh_secp521r1_5815_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5815_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5815_sharedsecret[] = { 0x01, 0x40, 0x63, 0xb3, 0xdc, 0xe4, 0xc9, 0x9f, 0x5f, 0x53, 0xe5, 0xf3, 0x60, 0x87, 0x5c, 0x02, 0xbd, 0x45, 0x34, 0xa8, 0x3b, 0xbb, 0x77, 0x9b, 0xe9, 0xeb, 0x05, 0xe6, 0x70, 0x59, 0x5e, 0x57, 0xa7, 0x08, 0x69, 0x1c, 0x5d, 0xf0, 0xa0, 0x06, 0x2b, 0x43, 0xd0, 0xfa, 0x34, 0x9d, 0xb2, 0x01, 0xd6, 0x27, 0x9c, 0x13, 0x1d, 0x84, 0xe9, 0x66, 0x2c, 0xf8, 0x2f, 0xbe, 0xea, 0xb6, 0xea, 0x02, 0x94, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp521r1_5815 = { .name = "ecdh_secp521r1_5815", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5815_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5815_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5815_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5815_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 535 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5816 for ECDH, tcId is 536 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5816_peerpubkey[] = { 0x01, 0x63, 0x61, 0xd1, 0x92, 0x07, 0xfa, 0xd3, 0xb9, 0xcf, 0x68, 0xa0, 0xd7, 0xcb, 0x22, 0x47, 0x44, 0xda, 0xf5, 0xc1, 0x8c, 0x0d, 0x79, 0xf0, 0x60, 0xab, 0x13, 0x69, 0xd7, 0xf0, 0x26, 0xc2, 0x1d, 0xa2, 0xde, 0xa0, 0x98, 0x73, 0x9f, 0xc7, 0x9e, 0x66, 0x4b, 0xce, 0xed, 0x06, 0xbd, 0x8b, 0x8f, 0x29, 0x47, 0x19, 0x07, 0x75, 0x43, 0x19, 0xce, 0xfd, 0x9f, 0x21, 0x6f, 0x32, 0x26, 0xa4, 0xa8, 0x7b, 0x00, 0xb7, 0x00, 0x7b, 0x2d, 0xf9, 0xa1, 0x23, 0xdd, 0x81, 0xdf, 0x4f, 0x5d, 0x52, 0x13, 0x58, 0x0c, 0x17, 0x4f, 0xd6, 0x8a, 0xa5, 0xde, 0x23, 0xe5, 0x38, 0x6c, 0x1f, 0x76, 0xbc, 0x67, 0x11, 0xba, 0xbf, 0xab, 0x72, 0xcf, 0x9b, 0xfa, 0x32, 0x8e, 0x97, 0xfb, 0xe9, 0xa3, 0xb7, 0x9a, 0xd0, 0xd3, 0x9a, 0x77, 0x8e, 0x3c, 0x64, 0xb7, 0x4a, 0x34, 0x31, 0x9a, 0xea, 0x04, 0x23, 0xfa, 0x27, 0x00, 0x67, }; static const unsigned char ecdh_secp521r1_5816_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5816_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5816_sharedsecret[] = { 0x00, 0x76, 0x51, 0x88, 0xff, 0x6d, 0x0d, 0xb1, 0x90, 0x91, 0x4b, 0x3e, 0xe9, 0xcb, 0xf6, 0x33, 0xe9, 0xe5, 0xc2, 0x60, 0x7b, 0x73, 0x23, 0xe7, 0x0e, 0x76, 0xc3, 0xcf, 0x3e, 0x2b, 0x3f, 0x1c, 0xdc, 0xed, 0xa6, 0x2b, 0x50, 0x75, 0xa8, 0xd4, 0x3b, 0x30, 0x6f, 0xc8, 0x3e, 0x5e, 0x43, 0x94, 0xcb, 0xa6, 0xbe, 0x00, 0x98, 0x87, 0x7b, 0x20, 0x00, 0x38, 0x55, 0x08, 0xd0, 0x94, 0x2c, 0xdb, 0xa4, 0x6a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5816 = { .name = "ecdh_secp521r1_5816", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5816_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5816_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5816_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5816_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 536 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5817 for ECDH, tcId is 537 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5817_peerpubkey[] = { 0x01, 0x12, 0x3d, 0x8b, 0xb1, 0x7d, 0x84, 0x76, 0x0c, 0xeb, 0x4e, 0x3e, 0xc9, 0x83, 0x87, 0x47, 0x8f, 0x95, 0x87, 0xdc, 0xc0, 0x5b, 0x47, 0x20, 0xd8, 0x83, 0x4f, 0xfc, 0xd8, 0x2c, 0x06, 0xf5, 0x9a, 0xba, 0x27, 0x83, 0x65, 0xe8, 0x34, 0xbc, 0xa2, 0x73, 0x6e, 0xd6, 0x33, 0x37, 0x57, 0xf5, 0x79, 0x20, 0x25, 0x6b, 0xd9, 0xe1, 0xb1, 0xbf, 0x3d, 0x43, 0xb6, 0x20, 0x89, 0x6d, 0xbf, 0xd8, 0x77, 0xa3, 0x01, 0x21, 0x35, 0xf5, 0x87, 0xed, 0x6a, 0x6b, 0xd6, 0xb0, 0x95, 0xd4, 0x1c, 0x7a, 0xbc, 0x2a, 0x70, 0xc9, 0xd4, 0x94, 0x61, 0xd3, 0xed, 0x7c, 0xf4, 0xe7, 0x81, 0xc8, 0x20, 0x05, 0x83, 0xa0, 0xe8, 0xe9, 0x4a, 0xb8, 0xa0, 0x0b, 0x52, 0xa7, 0xd0, 0xbb, 0xf1, 0x82, 0xcb, 0x3b, 0xc0, 0x83, 0x2f, 0xe8, 0x2c, 0xca, 0x18, 0xe5, 0x3e, 0x78, 0xb0, 0x49, 0xbf, 0x9e, 0xa6, 0xac, 0x60, 0x17, 0xe3, 0xd8, }; static const unsigned char ecdh_secp521r1_5817_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5817_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5817_sharedsecret[] = { 0x01, 0xb1, 0xc9, 0xe8, 0xa4, 0x74, 0x8e, 0x6e, 0x1a, 0xea, 0x3d, 0xab, 0xf3, 0x7a, 0xe7, 0x4b, 0xaf, 0x28, 0x61, 0xe4, 0x82, 0xaf, 0x32, 0x30, 0x9d, 0xc9, 0x3e, 0x7c, 0x7e, 0xac, 0xea, 0xa5, 0x84, 0x41, 0x64, 0x45, 0xa1, 0xec, 0x4f, 0x0f, 0x24, 0xb3, 0x93, 0x8e, 0x11, 0x81, 0x91, 0xa5, 0xbf, 0x9e, 0x72, 0x88, 0x5b, 0xba, 0x5c, 0x28, 0x22, 0x75, 0xc4, 0x9f, 0x5e, 0x4b, 0xd8, 0x2e, 0x25, 0x67, }; static const wycheproof_ecdh_test ecdh_secp521r1_5817 = { .name = "ecdh_secp521r1_5817", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5817_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5817_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5817_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5817_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 537 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5818 for ECDH, tcId is 538 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5818_peerpubkey[] = { 0x00, 0x61, 0xaa, 0x4a, 0xa6, 0x80, 0xe5, 0xa3, 0x27, 0xee, 0x04, 0x95, 0xbe, 0xff, 0x81, 0xc9, 0xa9, 0x60, 0x1a, 0x4a, 0x42, 0xa8, 0x30, 0x72, 0x55, 0x38, 0xf9, 0x94, 0x0d, 0x23, 0x4f, 0x8f, 0xec, 0x38, 0xff, 0xd2, 0x15, 0x37, 0x09, 0x44, 0x92, 0xb5, 0x8e, 0xcc, 0x41, 0x02, 0xed, 0xdf, 0xe1, 0x8e, 0xe8, 0xf5, 0x94, 0x7c, 0x47, 0x36, 0xdc, 0x60, 0x06, 0x6f, 0xa8, 0xd9, 0xb8, 0x23, 0x0f, 0x40, 0x01, 0x73, 0x02, 0x96, 0xbd, 0x1d, 0x13, 0xab, 0x65, 0xe8, 0x5a, 0xdc, 0x69, 0xc0, 0x82, 0x2e, 0x20, 0xe7, 0xdd, 0x73, 0x97, 0x55, 0xbc, 0x28, 0xd7, 0x23, 0x1e, 0x79, 0xba, 0x1c, 0x31, 0x25, 0x0c, 0x19, 0x72, 0x25, 0x2c, 0x28, 0x08, 0x96, 0xf3, 0x0a, 0x26, 0xc8, 0x80, 0xa3, 0x48, 0x04, 0x1b, 0x09, 0x58, 0xee, 0x04, 0x43, 0xc2, 0xe4, 0x03, 0xeb, 0x98, 0x28, 0x59, 0x9c, 0xda, 0x90, 0xf7, 0xa8, }; static const unsigned char ecdh_secp521r1_5818_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5818_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5818_sharedsecret[] = { 0x01, 0x53, 0xa4, 0x70, 0x9f, 0xc4, 0x74, 0x47, 0x6e, 0x76, 0x94, 0x8b, 0x04, 0xd4, 0x30, 0xc2, 0xed, 0x70, 0x8a, 0xb6, 0x97, 0xbb, 0x54, 0x58, 0x9d, 0x35, 0xa7, 0xc9, 0x6d, 0x33, 0x63, 0x20, 0x72, 0xb4, 0xa3, 0x7d, 0xee, 0xa3, 0x42, 0x8d, 0x8d, 0x0a, 0x93, 0x3c, 0x7b, 0xff, 0xed, 0x06, 0x8d, 0x92, 0xa9, 0x06, 0x1f, 0x0f, 0xa3, 0x9e, 0x62, 0xe7, 0xd5, 0x52, 0xb3, 0x1e, 0x4a, 0x15, 0x05, 0x09, }; static const wycheproof_ecdh_test ecdh_secp521r1_5818 = { .name = "ecdh_secp521r1_5818", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5818_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5818_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5818_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5818_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 538 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5819 for ECDH, tcId is 539 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5819_peerpubkey[] = { 0x00, 0x86, 0xb5, 0xbc, 0xf4, 0xbb, 0xd0, 0x5a, 0x5b, 0x56, 0x51, 0xbc, 0xa9, 0x79, 0x1e, 0x55, 0x0f, 0xec, 0x3e, 0x9b, 0x2f, 0xf0, 0xd6, 0xbb, 0x25, 0x5b, 0x2d, 0x91, 0x90, 0xf5, 0x94, 0x64, 0x39, 0xb5, 0x3f, 0x95, 0x13, 0xa1, 0x22, 0xe5, 0xca, 0x0a, 0x9f, 0xf1, 0x2e, 0x33, 0x86, 0xb7, 0x52, 0x4e, 0x46, 0xd7, 0xf5, 0x61, 0x67, 0xca, 0x61, 0x27, 0xce, 0x83, 0xe6, 0x7b, 0xf5, 0xdc, 0xe6, 0xce, 0x00, 0x86, 0x5b, 0x20, 0x83, 0xd5, 0xc0, 0x20, 0x02, 0x85, 0xee, 0x7f, 0xf4, 0x95, 0x09, 0x22, 0xa8, 0xab, 0xd4, 0xee, 0xf9, 0x3d, 0x8d, 0xed, 0x25, 0xb5, 0x3c, 0xf9, 0xaf, 0x32, 0x7e, 0x6e, 0x4c, 0x30, 0xc4, 0x43, 0x8e, 0xd2, 0xc4, 0x0c, 0x67, 0xe8, 0x78, 0x35, 0x51, 0x83, 0x61, 0xc9, 0x8f, 0xd7, 0x43, 0xd8, 0x59, 0xf6, 0xc1, 0x73, 0xa9, 0x51, 0xa9, 0x5a, 0x99, 0x40, 0x9e, 0x83, 0x19, 0x59, }; static const unsigned char ecdh_secp521r1_5819_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5819_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5819_sharedsecret[] = { 0x01, 0x67, 0xd0, 0xda, 0x4c, 0x5d, 0xad, 0xd2, 0x5f, 0x87, 0x87, 0xa8, 0x4a, 0x96, 0x44, 0x5c, 0x25, 0x4d, 0x8e, 0x17, 0xfe, 0xee, 0xb7, 0xd2, 0x1a, 0xf6, 0x71, 0x2e, 0x30, 0x7c, 0xd7, 0x35, 0x1e, 0xbe, 0x18, 0x5c, 0x0a, 0x52, 0x74, 0x02, 0xa5, 0xfe, 0xda, 0xa1, 0xb2, 0x6a, 0xce, 0x55, 0x49, 0xab, 0x13, 0xb2, 0x08, 0x15, 0x6d, 0x14, 0x38, 0x9f, 0xd8, 0x13, 0x3c, 0x6f, 0x4f, 0xe3, 0x1e, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5819 = { .name = "ecdh_secp521r1_5819", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5819_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5819_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5819_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5819_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 539 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5820 for ECDH, tcId is 540 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5820_peerpubkey[] = { 0x01, 0xa0, 0x9a, 0xca, 0x76, 0x5c, 0x94, 0x9b, 0x65, 0x6a, 0xbd, 0xb5, 0x96, 0x80, 0x55, 0x31, 0x63, 0x84, 0x24, 0x5a, 0xb7, 0x75, 0xe8, 0x58, 0x41, 0x19, 0x40, 0x5c, 0x85, 0xab, 0x79, 0xfd, 0xc7, 0xef, 0x1e, 0x07, 0x9a, 0x35, 0xbd, 0x29, 0x9a, 0xe1, 0x49, 0xd6, 0x5f, 0x15, 0xab, 0x0d, 0x64, 0x91, 0x2c, 0x5c, 0x9a, 0x62, 0xbc, 0xa4, 0x1b, 0xdb, 0x58, 0x67, 0x82, 0xe8, 0xeb, 0x0c, 0xff, 0x96, 0x00, 0x25, 0x8a, 0x50, 0xf1, 0xbb, 0x54, 0x2d, 0xd1, 0x64, 0xb8, 0x94, 0x3b, 0xde, 0x1f, 0x20, 0x78, 0xea, 0x7d, 0x3e, 0x89, 0x18, 0x1e, 0xfa, 0xb2, 0x42, 0xda, 0x30, 0xb1, 0xa1, 0x25, 0x62, 0x18, 0x41, 0x04, 0x44, 0x9e, 0x4d, 0x75, 0x9d, 0xae, 0x9c, 0xb9, 0xd0, 0x75, 0xc3, 0x04, 0x56, 0xb1, 0xa4, 0xe4, 0x87, 0x40, 0xdc, 0xca, 0xd7, 0xb5, 0x9b, 0x17, 0xdc, 0x1c, 0x81, 0xd5, 0x17, 0xf2, 0xcd, }; static const unsigned char ecdh_secp521r1_5820_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5820_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5820_sharedsecret[] = { 0x01, 0x52, 0x8f, 0x5a, 0xb7, 0x58, 0xd9, 0xb6, 0x11, 0x2f, 0x19, 0xe1, 0x02, 0x1f, 0x50, 0x89, 0xd5, 0x26, 0xcc, 0x50, 0x91, 0x10, 0x26, 0xe2, 0x7d, 0x44, 0xca, 0x6d, 0x77, 0x22, 0x0c, 0x81, 0x6b, 0x23, 0x26, 0xa2, 0xdd, 0x6b, 0x91, 0x52, 0x40, 0x88, 0x13, 0xbf, 0x8d, 0x39, 0x99, 0x06, 0xcb, 0x1a, 0xe3, 0x3a, 0x52, 0xcf, 0x67, 0xe7, 0x47, 0x09, 0xd7, 0x96, 0xc7, 0x07, 0x01, 0x71, 0x04, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5820 = { .name = "ecdh_secp521r1_5820", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5820_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5820_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5820_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5820_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in left to right addition chain, tcId is 540 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5821 for ECDH, tcId is 541 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5821_peerpubkey[] = { 0x00, 0xa6, 0xe2, 0x16, 0xa0, 0x9b, 0x63, 0x60, 0x32, 0xf3, 0x9e, 0xea, 0x55, 0x21, 0x92, 0xc2, 0x42, 0xbe, 0x7f, 0xf5, 0x47, 0x8f, 0x7f, 0x7f, 0x9b, 0x0c, 0xaa, 0x25, 0xb8, 0xae, 0xed, 0xea, 0xde, 0xd3, 0x3b, 0xa6, 0x6b, 0x5f, 0xee, 0xc7, 0xe7, 0x5b, 0x0d, 0xe3, 0xe7, 0xfe, 0xe1, 0x42, 0xf2, 0x50, 0xe6, 0xcb, 0x4c, 0x7b, 0x09, 0xa1, 0x68, 0x6c, 0xa0, 0xbd, 0x9c, 0xf2, 0xd2, 0xd4, 0x8b, 0xae, 0x00, 0xfc, 0xfa, 0xfc, 0xa2, 0x39, 0x1a, 0x55, 0xad, 0xe0, 0xa7, 0x7f, 0xb9, 0xa3, 0x81, 0xcb, 0x0a, 0xf1, 0x62, 0x53, 0xcd, 0x3b, 0xc5, 0x87, 0x23, 0xf8, 0x52, 0x76, 0x70, 0xb5, 0x95, 0x67, 0x69, 0x8e, 0x7f, 0xc3, 0xa1, 0x7e, 0x6d, 0x26, 0xb3, 0xa8, 0xa4, 0xa6, 0x17, 0xe2, 0xb1, 0x2e, 0x6d, 0x60, 0x39, 0x1f, 0x50, 0x31, 0x17, 0xfe, 0xa2, 0xdd, 0xb4, 0x69, 0x78, 0xb6, 0xd2, 0xd3, 0x0a, 0x26, }; static const unsigned char ecdh_secp521r1_5821_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5821_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5821_sharedsecret[] = { 0x01, 0xd9, 0x37, 0xdb, 0x2f, 0xca, 0xae, 0x79, 0x5f, 0x4a, 0xec, 0x63, 0x65, 0xbe, 0x81, 0xa5, 0x14, 0x93, 0x9c, 0x54, 0x83, 0x57, 0xc6, 0x14, 0x00, 0x75, 0xdb, 0x4a, 0x07, 0x6b, 0xe8, 0xc0, 0xd3, 0xa6, 0x12, 0x6b, 0x72, 0x0b, 0x10, 0x5b, 0x3d, 0x9c, 0xf6, 0xa8, 0x30, 0x73, 0x46, 0xcb, 0x83, 0x2f, 0xbe, 0x3a, 0x93, 0x60, 0x17, 0xa6, 0xe6, 0x20, 0x59, 0xba, 0xb6, 0x72, 0x3e, 0x88, 0x51, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_5821 = { .name = "ecdh_secp521r1_5821", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5821_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5821_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5821_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5821_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 541 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5822 for ECDH, tcId is 542 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5822_peerpubkey[] = { 0x00, 0x50, 0xb8, 0x62, 0xa8, 0x2a, 0x0b, 0xa9, 0x2a, 0xb4, 0x5b, 0x39, 0x6c, 0x51, 0xaa, 0x51, 0x9a, 0xa4, 0x4d, 0x11, 0x7f, 0x55, 0x76, 0x0e, 0x5a, 0x4f, 0x1f, 0x17, 0x7d, 0xfb, 0x5b, 0xcd, 0xf0, 0xd5, 0x4f, 0xb9, 0x95, 0x65, 0xe9, 0xf7, 0xd6, 0x75, 0x7c, 0x04, 0xf4, 0x94, 0x56, 0xae, 0xa8, 0x70, 0x75, 0x56, 0x0b, 0x1d, 0xc5, 0x14, 0x5b, 0xfa, 0x40, 0x68, 0x68, 0x4b, 0x04, 0x17, 0x8a, 0x85, 0x01, 0xe1, 0xc6, 0x8a, 0x57, 0xb3, 0x8e, 0x22, 0x81, 0x80, 0x6f, 0x3d, 0xb7, 0xb0, 0xaf, 0x0e, 0x3c, 0x2b, 0x5e, 0x52, 0xd5, 0xd5, 0xd4, 0x89, 0x0c, 0x5b, 0x9f, 0x5d, 0x73, 0x7d, 0xf9, 0xa7, 0x06, 0xe6, 0x31, 0xe4, 0x45, 0x3f, 0x6e, 0x79, 0xcb, 0xc2, 0x8d, 0x57, 0xbd, 0xc6, 0x04, 0xae, 0xa8, 0x01, 0x0e, 0xb4, 0x91, 0xf5, 0xc0, 0x9f, 0xeb, 0x20, 0xe3, 0xbc, 0x0c, 0x0e, 0xd4, 0xae, 0x44, 0xbf, }; static const unsigned char ecdh_secp521r1_5822_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5822_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5822_sharedsecret[] = { 0x00, 0xcb, 0xeb, 0x5c, 0x9d, 0xf0, 0xbb, 0x30, 0xa8, 0xb4, 0x5b, 0xc1, 0x7a, 0x5b, 0xd2, 0x55, 0xe2, 0xc8, 0x24, 0x9d, 0xbf, 0x91, 0x33, 0x70, 0x5b, 0xf1, 0xe5, 0x02, 0xd4, 0xe7, 0x30, 0xed, 0xd3, 0x13, 0x1c, 0x8d, 0x37, 0x0a, 0xa7, 0xfc, 0x78, 0xd4, 0x6b, 0x22, 0x91, 0x18, 0x1b, 0xb4, 0x0c, 0xa8, 0x5e, 0x7a, 0x0a, 0xc6, 0x07, 0x7c, 0xf4, 0x36, 0x79, 0x27, 0xd8, 0xc5, 0xb6, 0x74, 0x43, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_5822 = { .name = "ecdh_secp521r1_5822", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5822_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5822_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5822_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5822_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 542 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5823 for ECDH, tcId is 543 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5823_peerpubkey[] = { 0x00, 0x57, 0xf2, 0x7c, 0xc7, 0x40, 0x0b, 0x6f, 0x9b, 0xb3, 0xa0, 0xf7, 0x23, 0xbc, 0x06, 0x70, 0x93, 0x8f, 0xf8, 0x88, 0xf8, 0x79, 0x17, 0x10, 0x0a, 0x93, 0x21, 0x15, 0xb1, 0x27, 0x53, 0xa1, 0xfb, 0xb0, 0x86, 0xe5, 0xb2, 0x25, 0x20, 0x9b, 0x4f, 0x70, 0x70, 0x3a, 0xba, 0x37, 0x44, 0x43, 0xf1, 0x1f, 0xcb, 0xcf, 0x87, 0x79, 0x49, 0x1e, 0x22, 0x97, 0xfb, 0xae, 0x7f, 0x18, 0xbe, 0x2d, 0x4f, 0x23, 0x00, 0x06, 0xa7, 0xf0, 0x4e, 0x4d, 0xe3, 0x74, 0x14, 0x9d, 0xcf, 0x59, 0x6d, 0x94, 0xa6, 0xd7, 0xef, 0x8d, 0x30, 0xd9, 0x88, 0x8b, 0xc7, 0x50, 0x02, 0x26, 0xed, 0x7b, 0xc8, 0x56, 0x07, 0x29, 0xb7, 0xc4, 0xb4, 0xbf, 0x28, 0xf4, 0xf9, 0x2d, 0x7f, 0x3b, 0x25, 0xa5, 0xac, 0xe8, 0x86, 0xe8, 0xbe, 0x3e, 0xd0, 0x1a, 0xf0, 0x21, 0x69, 0xca, 0xea, 0x76, 0x5d, 0xc7, 0x63, 0xd0, 0xda, 0x94, 0x95, 0xc7, }; static const unsigned char ecdh_secp521r1_5823_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5823_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5823_sharedsecret[] = { 0x01, 0xa2, 0x6a, 0xa9, 0x92, 0x22, 0xe4, 0x4e, 0xa4, 0xd6, 0xdc, 0xee, 0x22, 0x9f, 0x21, 0xf4, 0x0f, 0x72, 0x3b, 0x5c, 0xbb, 0xe9, 0x2d, 0x56, 0x56, 0x12, 0x52, 0xe7, 0xb0, 0x9f, 0x96, 0xeb, 0x27, 0x1a, 0xd9, 0x2b, 0x3e, 0x16, 0x46, 0x46, 0x08, 0x74, 0x56, 0x15, 0x18, 0x2f, 0xbb, 0x70, 0x50, 0xe2, 0x99, 0x1b, 0x0a, 0xfc, 0x04, 0x0f, 0x27, 0xca, 0x74, 0xe3, 0x58, 0x34, 0x64, 0x66, 0xcb, 0x8a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5823 = { .name = "ecdh_secp521r1_5823", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5823_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5823_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5823_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5823_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 543 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5824 for ECDH, tcId is 544 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5824_peerpubkey[] = { 0x00, 0xe0, 0x4a, 0x04, 0xd1, 0xe2, 0xbf, 0xa1, 0xa5, 0xf6, 0xf3, 0x78, 0x67, 0xec, 0x25, 0x14, 0x50, 0xd4, 0x6e, 0x6b, 0xd2, 0x80, 0x67, 0xcb, 0x99, 0xa6, 0x12, 0xf6, 0xef, 0xab, 0xf1, 0xf7, 0x2c, 0x70, 0xea, 0xf7, 0x2d, 0x70, 0xda, 0xab, 0x53, 0x89, 0x0d, 0x54, 0x80, 0x6c, 0x46, 0x04, 0x77, 0x66, 0x29, 0x3d, 0xe0, 0x85, 0xf0, 0xf4, 0x04, 0x62, 0xb2, 0xf5, 0x6a, 0xc4, 0xfc, 0x68, 0x11, 0xbb, 0x00, 0xa2, 0x0f, 0xa0, 0x0f, 0xe8, 0xcc, 0xd8, 0xb0, 0x07, 0xef, 0xdd, 0x6d, 0xaf, 0xbd, 0xaf, 0x91, 0xb1, 0x09, 0x24, 0xc0, 0xb8, 0xd5, 0x83, 0xce, 0x82, 0x92, 0x02, 0xc8, 0x53, 0x3e, 0x98, 0x15, 0x45, 0x17, 0x19, 0xf1, 0x2c, 0xaf, 0xef, 0xc3, 0xd3, 0xbd, 0xca, 0x5d, 0x51, 0x02, 0x47, 0xd5, 0x9f, 0xfd, 0x20, 0xd5, 0x39, 0xe2, 0x21, 0x65, 0xf1, 0x1b, 0x5d, 0x10, 0xe9, 0x12, 0xf1, 0xf9, 0xe4, }; static const unsigned char ecdh_secp521r1_5824_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5824_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5824_sharedsecret[] = { 0x00, 0x9a, 0x6c, 0x01, 0x7d, 0xae, 0x44, 0x95, 0x7d, 0xb6, 0xab, 0x34, 0x76, 0xa9, 0xdb, 0xeb, 0x66, 0x0e, 0xa5, 0x4e, 0x20, 0xab, 0x78, 0x5d, 0x5a, 0x34, 0x1e, 0x0e, 0x02, 0x65, 0x05, 0x0f, 0xde, 0x21, 0x79, 0x00, 0x71, 0x89, 0x08, 0xe1, 0x76, 0x3e, 0xeb, 0x66, 0x53, 0x04, 0x75, 0xfc, 0x0d, 0x0a, 0x13, 0x46, 0xc6, 0xc3, 0xbc, 0x29, 0x52, 0xda, 0x7c, 0xf0, 0x34, 0xdf, 0x18, 0x65, 0x06, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_5824 = { .name = "ecdh_secp521r1_5824", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5824_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5824_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5824_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5824_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 544 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5825 for ECDH, tcId is 545 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5825_peerpubkey[] = { 0x00, 0x8d, 0x3e, 0x0c, 0x98, 0x20, 0xd2, 0xb4, 0x97, 0x11, 0x78, 0x08, 0x49, 0xab, 0x93, 0x49, 0xde, 0x29, 0x58, 0x51, 0xb6, 0x9a, 0xc0, 0xff, 0x6b, 0x2e, 0xda, 0x1f, 0xdd, 0xc1, 0x7e, 0x97, 0xc7, 0xac, 0x26, 0x95, 0xf2, 0x8e, 0xf6, 0xdd, 0xc1, 0xe1, 0x60, 0x62, 0xee, 0x48, 0x29, 0x5f, 0xff, 0x57, 0x11, 0xcd, 0x87, 0x19, 0x92, 0xa8, 0xa1, 0x84, 0xb8, 0xe5, 0xb4, 0x9d, 0x71, 0x78, 0xb5, 0xff, 0x01, 0x70, 0x9e, 0x43, 0x5e, 0xe6, 0xc7, 0xcc, 0xfe, 0x66, 0x92, 0xc7, 0xf1, 0x69, 0xae, 0x35, 0x7e, 0x94, 0xfe, 0xeb, 0xca, 0xd5, 0xd6, 0xff, 0x0d, 0xa7, 0xff, 0x55, 0xa1, 0x9d, 0x14, 0x09, 0x00, 0x6a, 0xa6, 0x08, 0x3f, 0x89, 0x78, 0x24, 0xde, 0x4c, 0x0c, 0x59, 0xbc, 0x80, 0xd4, 0x06, 0x07, 0xa9, 0xbc, 0xfd, 0xf6, 0x66, 0xb9, 0xaa, 0x38, 0x8f, 0xa3, 0xb8, 0x65, 0xd7, 0x6c, 0x49, 0x29, 0x16, }; static const unsigned char ecdh_secp521r1_5825_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5825_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5825_sharedsecret[] = { 0x01, 0xef, 0xd3, 0xfe, 0xff, 0xad, 0x8d, 0x28, 0x37, 0x3d, 0xff, 0xc0, 0xe3, 0xa9, 0xcd, 0x54, 0x40, 0x85, 0xff, 0xc2, 0x8f, 0x5b, 0xb8, 0x06, 0x97, 0x80, 0x1d, 0xb4, 0xcc, 0xb9, 0x83, 0xfa, 0x23, 0x28, 0x22, 0x2a, 0x42, 0x9e, 0x7d, 0x63, 0x67, 0xdd, 0xd4, 0xa4, 0x08, 0x11, 0xac, 0x2a, 0xdc, 0x8f, 0xbd, 0x8e, 0xa0, 0x6e, 0xa4, 0x08, 0x80, 0x9d, 0x5b, 0x82, 0xfb, 0xed, 0x3c, 0x8a, 0x95, 0xcb, }; static const wycheproof_ecdh_test ecdh_secp521r1_5825 = { .name = "ecdh_secp521r1_5825", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5825_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5825_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5825_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5825_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 545 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5826 for ECDH, tcId is 546 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5826_peerpubkey[] = { 0x01, 0xc0, 0x2e, 0xbd, 0x54, 0x76, 0x5a, 0x38, 0x25, 0xd7, 0xbf, 0xad, 0x56, 0x35, 0xa9, 0x8d, 0x97, 0xf7, 0x3c, 0xfb, 0x57, 0xda, 0x9c, 0x42, 0xc1, 0xf4, 0x64, 0x20, 0x5f, 0xac, 0x01, 0xcd, 0x89, 0x9f, 0x7e, 0x09, 0x5a, 0x10, 0x39, 0xb4, 0x7e, 0x0f, 0xcb, 0xeb, 0xd6, 0x5b, 0x6e, 0xa2, 0xc4, 0x86, 0xa7, 0xbd, 0xe4, 0x90, 0x0e, 0x95, 0x48, 0xd8, 0xa6, 0x4a, 0x0e, 0x6f, 0x39, 0xd6, 0x1c, 0x95, 0x01, 0xf5, 0xeb, 0x9d, 0x24, 0x91, 0xb4, 0x2e, 0x3d, 0x02, 0xc2, 0x0f, 0xf8, 0x53, 0x08, 0x0a, 0xa2, 0xdb, 0x82, 0x3f, 0x60, 0x91, 0xa6, 0x2a, 0x2a, 0x6b, 0xb5, 0x2d, 0x09, 0xd3, 0xc1, 0x62, 0xa3, 0xad, 0x02, 0xe0, 0x24, 0x2d, 0x24, 0x3a, 0x61, 0xce, 0x00, 0x63, 0xff, 0x8f, 0x8e, 0x93, 0xec, 0x21, 0xae, 0xca, 0x4a, 0xe2, 0xb1, 0x52, 0xb8, 0xf6, 0x8d, 0x40, 0xdd, 0x87, 0x6f, 0x80, 0xe7, 0xc3, }; static const unsigned char ecdh_secp521r1_5826_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5826_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5826_sharedsecret[] = { 0x01, 0x42, 0x47, 0x84, 0xd1, 0xfc, 0xa3, 0xb4, 0xc7, 0x81, 0x10, 0x83, 0x85, 0x5f, 0xbf, 0x86, 0x62, 0xe1, 0xf0, 0xee, 0x52, 0xb5, 0xff, 0xaa, 0xa0, 0xcf, 0x89, 0x0b, 0xb9, 0x04, 0x15, 0x05, 0x12, 0xa7, 0x5a, 0x10, 0x77, 0xea, 0xd3, 0x9a, 0xe3, 0x7e, 0xc6, 0x7d, 0x5a, 0x3c, 0x03, 0xd2, 0xfc, 0xb5, 0xf9, 0xf6, 0x95, 0xf9, 0x91, 0x8c, 0xf4, 0x87, 0x2c, 0x5b, 0x4a, 0x75, 0x7d, 0x1d, 0x0f, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_5826 = { .name = "ecdh_secp521r1_5826", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5826_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5826_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5826_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5826_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in precomputation or right to left addition chain, tcId is 546 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5827 for ECDH, tcId is 547 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5827_peerpubkey[] = { 0x00, 0x4b, 0x04, 0xd3, 0xd1, 0xc6, 0xc4, 0x70, 0x69, 0xc0, 0xbd, 0x44, 0x97, 0x3e, 0x75, 0xac, 0x75, 0x3c, 0x9f, 0x28, 0x4b, 0x0b, 0x1d, 0x52, 0x30, 0x8b, 0xcd, 0xd9, 0xa1, 0xe0, 0x63, 0x07, 0xa8, 0xce, 0x7a, 0xf0, 0x93, 0x62, 0xf8, 0xcc, 0x6a, 0x2b, 0x5b, 0x4b, 0x23, 0x49, 0xe2, 0x83, 0x09, 0x56, 0xab, 0xb1, 0x19, 0x1c, 0x7e, 0x84, 0x58, 0x2d, 0xb1, 0x22, 0x8c, 0x2e, 0xc2, 0x50, 0x21, 0xcc, 0x00, 0xc2, 0xaf, 0x05, 0xe5, 0xc3, 0x10, 0x38, 0x8c, 0x8a, 0x16, 0x83, 0x5d, 0x06, 0x04, 0x2e, 0x49, 0x0a, 0x9e, 0xa8, 0xc4, 0xc9, 0xbc, 0x53, 0x2c, 0x2e, 0x7d, 0x46, 0xf2, 0x00, 0x10, 0x7a, 0x97, 0xe0, 0xfb, 0xc5, 0xd9, 0xfa, 0xca, 0x9d, 0xcb, 0x22, 0x49, 0x51, 0x0e, 0x19, 0x98, 0x96, 0xac, 0x36, 0xe0, 0x39, 0x9b, 0x0f, 0x17, 0x65, 0x04, 0x85, 0xeb, 0x74, 0x8e, 0x1f, 0xff, 0x9c, 0x77, 0xfa, }; static const unsigned char ecdh_secp521r1_5827_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5827_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5827_sharedsecret[] = { 0x01, 0x32, 0xb9, 0x76, 0x32, 0xe5, 0x7b, 0xe5, 0x55, 0x86, 0xe8, 0x87, 0xd2, 0x6d, 0xad, 0x41, 0xe5, 0x00, 0xbf, 0xfc, 0xfa, 0x96, 0x36, 0x84, 0x84, 0x55, 0x7f, 0x34, 0x7c, 0x4b, 0xe8, 0x21, 0x30, 0x2d, 0xe8, 0xf3, 0xf7, 0x2b, 0x98, 0x65, 0x83, 0x4d, 0x57, 0x9c, 0xf6, 0x96, 0x40, 0x61, 0x45, 0xea, 0xb5, 0x12, 0xe2, 0xf9, 0x6d, 0x2a, 0xa5, 0x89, 0x74, 0x8f, 0x64, 0x42, 0x08, 0x69, 0x12, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5827 = { .name = "ecdh_secp521r1_5827", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5827_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5827_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5827_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5827_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 547 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5828 for ECDH, tcId is 548 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5828_peerpubkey[] = { 0x00, 0xcd, 0xa2, 0xdb, 0x7f, 0xc4, 0xf9, 0xd4, 0xc1, 0xce, 0x36, 0xba, 0x82, 0xa1, 0x84, 0xb2, 0xfb, 0xfe, 0xe2, 0x06, 0xd9, 0xa5, 0xd0, 0x50, 0xd2, 0xbf, 0x1b, 0x2f, 0xc9, 0x2c, 0x0d, 0x0b, 0x78, 0xec, 0xa3, 0xb5, 0x1d, 0x72, 0x4a, 0xa5, 0xfa, 0x48, 0xf6, 0x66, 0x97, 0x2b, 0x47, 0x3a, 0xcc, 0xed, 0xc4, 0x97, 0x24, 0xac, 0x2b, 0x3e, 0x77, 0x9d, 0x4c, 0x89, 0x41, 0x98, 0xd9, 0xab, 0x93, 0x7c, 0x00, 0xcd, 0x13, 0x85, 0x7d, 0x84, 0x87, 0x18, 0x37, 0xf7, 0x7a, 0x54, 0xf0, 0xba, 0x9d, 0x18, 0xf6, 0xe9, 0x42, 0xd1, 0xd6, 0xd2, 0xe7, 0x16, 0x7f, 0xb5, 0x3e, 0x35, 0x85, 0xb2, 0x49, 0x43, 0x82, 0x89, 0xab, 0xc6, 0x89, 0x27, 0xac, 0x8c, 0x29, 0xd6, 0x53, 0x77, 0xcc, 0x73, 0xf8, 0x5d, 0x11, 0x35, 0x11, 0xf2, 0x62, 0x2b, 0xff, 0x69, 0x74, 0x65, 0x29, 0x4f, 0x5c, 0xd1, 0xa3, 0x77, 0x28, 0x39, }; static const unsigned char ecdh_secp521r1_5828_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5828_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5828_sharedsecret[] = { 0x01, 0xba, 0xef, 0xf7, 0x27, 0x53, 0x0d, 0xed, 0x5f, 0x90, 0x3b, 0x20, 0x90, 0xf9, 0x22, 0xb4, 0x79, 0xc4, 0x63, 0x1a, 0xfc, 0xed, 0x97, 0xef, 0x17, 0x80, 0x98, 0x4d, 0x9d, 0x98, 0xfe, 0x06, 0xa4, 0x7e, 0xf0, 0x71, 0x4e, 0xe4, 0xf2, 0xa3, 0x2f, 0x08, 0xaf, 0xac, 0x5a, 0x58, 0x3a, 0x51, 0x62, 0x29, 0x53, 0x9c, 0x2c, 0x4c, 0x82, 0xf3, 0x61, 0xb6, 0xf1, 0x59, 0x22, 0x2d, 0x5c, 0x13, 0x76, 0xb0, }; static const wycheproof_ecdh_test ecdh_secp521r1_5828 = { .name = "ecdh_secp521r1_5828", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5828_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5828_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5828_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5828_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 548 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5829 for ECDH, tcId is 549 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5829_peerpubkey[] = { 0x00, 0x3a, 0xb4, 0xdb, 0x21, 0xd5, 0x64, 0x5f, 0x42, 0xbb, 0xf1, 0x62, 0x2e, 0x26, 0xcf, 0xe7, 0x60, 0x3b, 0xf2, 0x22, 0xaf, 0x84, 0x54, 0x9d, 0xd4, 0x84, 0xa6, 0x2e, 0x98, 0xff, 0xef, 0x26, 0xc1, 0x3d, 0xa6, 0x1a, 0xeb, 0x51, 0x57, 0xa9, 0x1d, 0x70, 0xa8, 0x28, 0xe9, 0x68, 0x73, 0xe2, 0x5f, 0x06, 0xc4, 0x5d, 0x65, 0x25, 0x09, 0x30, 0x7b, 0x0c, 0x99, 0x83, 0x91, 0xf9, 0x51, 0xd6, 0x11, 0xdd, 0x01, 0x4e, 0x59, 0x9e, 0x94, 0xf3, 0x27, 0x5c, 0xe6, 0x01, 0x90, 0xaa, 0x63, 0xbd, 0x8c, 0x8b, 0x6e, 0xdd, 0x7e, 0xd1, 0x1e, 0xeb, 0x13, 0x85, 0xd0, 0xd1, 0x13, 0x71, 0x68, 0x62, 0x4e, 0xb6, 0xd8, 0x12, 0x5a, 0xe9, 0xb8, 0x54, 0x61, 0x18, 0x72, 0x01, 0x98, 0x8c, 0xc1, 0x1b, 0xc5, 0x57, 0x68, 0x0d, 0x5b, 0xbb, 0xb4, 0xf5, 0x4c, 0x27, 0xb4, 0x54, 0x98, 0x31, 0xb7, 0xb6, 0xf1, 0xe5, 0x9e, 0x93, }; static const unsigned char ecdh_secp521r1_5829_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5829_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5829_sharedsecret[] = { 0x01, 0x85, 0x5a, 0x66, 0x85, 0xdb, 0x05, 0xfe, 0xe3, 0xee, 0xc9, 0xdd, 0x11, 0x75, 0x0d, 0x31, 0x44, 0x9e, 0x40, 0x69, 0x6e, 0x8e, 0x1c, 0x6a, 0x5e, 0x63, 0x34, 0x3d, 0xe2, 0xda, 0xe8, 0x31, 0x47, 0xfa, 0xd3, 0x37, 0xad, 0x90, 0x20, 0xea, 0x13, 0x1f, 0xab, 0x8c, 0x4c, 0xa3, 0x0f, 0x4a, 0x03, 0xe0, 0xbc, 0x62, 0x8a, 0x4a, 0x5a, 0xb7, 0x8a, 0x09, 0xe0, 0x71, 0xfe, 0xad, 0x71, 0x15, 0x43, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp521r1_5829 = { .name = "ecdh_secp521r1_5829", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5829_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5829_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5829_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5829_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 549 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5830 for ECDH, tcId is 550 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5830_peerpubkey[] = { 0x00, 0xbc, 0xaf, 0x9d, 0xf5, 0x98, 0x6e, 0xfa, 0x54, 0x2d, 0x7c, 0xe9, 0xee, 0xa0, 0x5e, 0x55, 0x7c, 0x39, 0x3a, 0x3a, 0x3e, 0x3d, 0xdf, 0xab, 0xeb, 0x47, 0x54, 0x9e, 0xf9, 0xa2, 0x92, 0x4e, 0xbf, 0xf5, 0x8f, 0x7f, 0xb5, 0x98, 0x9d, 0x40, 0x42, 0x58, 0x79, 0x16, 0x59, 0xcf, 0x42, 0x1c, 0xd9, 0xd2, 0xeb, 0x1e, 0xf6, 0xcf, 0x21, 0xfe, 0x42, 0x81, 0x82, 0xac, 0xb7, 0x2a, 0xad, 0xb3, 0xfd, 0xc0, 0x00, 0x3d, 0x63, 0x8e, 0xfe, 0x16, 0x36, 0x3a, 0x8a, 0xf8, 0x69, 0xee, 0x85, 0xda, 0xd1, 0xc6, 0xf0, 0x03, 0xd4, 0xf4, 0xf8, 0x27, 0xa7, 0xa1, 0x8c, 0x75, 0xbd, 0x7f, 0xeb, 0x33, 0x01, 0x33, 0xe5, 0xbd, 0x29, 0x7a, 0xbf, 0x56, 0x15, 0x9c, 0x50, 0xc0, 0xd0, 0x4a, 0xa2, 0xe3, 0xb0, 0x19, 0x4d, 0x8d, 0xe2, 0xe7, 0xd0, 0xfe, 0x4d, 0x6d, 0x7a, 0x89, 0x01, 0xfd, 0x36, 0x2e, 0x31, 0x0e, 0xd4, 0xe6, }; static const unsigned char ecdh_secp521r1_5830_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5830_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5830_sharedsecret[] = { 0x00, 0xa5, 0x7b, 0xff, 0xf0, 0x31, 0x40, 0x61, 0x1b, 0xe2, 0x3a, 0xd5, 0x2b, 0x3f, 0x0d, 0x52, 0x5a, 0xbc, 0x85, 0x4f, 0x83, 0x0d, 0x3e, 0x48, 0x35, 0xd8, 0x01, 0xfa, 0x97, 0x54, 0xe1, 0xcf, 0xc1, 0x2a, 0x4e, 0x60, 0x18, 0x95, 0x8b, 0x44, 0xba, 0x82, 0x80, 0x87, 0xec, 0xfa, 0xb3, 0xae, 0x91, 0x7a, 0xba, 0x09, 0x0b, 0xe1, 0x46, 0x41, 0x54, 0xac, 0xe5, 0x5d, 0x4c, 0x48, 0x1a, 0xd8, 0x31, 0x45, }; static const wycheproof_ecdh_test ecdh_secp521r1_5830 = { .name = "ecdh_secp521r1_5830", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5830_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5830_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5830_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5830_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 550 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5831 for ECDH, tcId is 551 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5831_peerpubkey[] = { 0x00, 0x11, 0x8c, 0x04, 0xc3, 0x2a, 0x75, 0xb0, 0x77, 0x02, 0x32, 0x3c, 0xa2, 0x26, 0xa4, 0xac, 0xe0, 0x54, 0x42, 0x4b, 0x1a, 0x6e, 0x6e, 0xdc, 0xd4, 0x01, 0x1a, 0x03, 0x5f, 0x4b, 0xc0, 0x78, 0x9f, 0x61, 0x51, 0xff, 0x84, 0x9e, 0xff, 0x89, 0x49, 0x55, 0x4f, 0xe4, 0xd5, 0x42, 0xaf, 0x1f, 0x03, 0xc7, 0x9b, 0x36, 0x9f, 0xf4, 0xc3, 0x8d, 0x1d, 0x29, 0xb4, 0xa3, 0xbc, 0x41, 0xd5, 0xe0, 0x5b, 0xb2, 0x01, 0x0f, 0x4b, 0x8d, 0x51, 0x1a, 0xc5, 0xb1, 0xa6, 0x53, 0x4a, 0xac, 0x9d, 0xd2, 0x48, 0x6b, 0x8c, 0xd0, 0x7c, 0xf3, 0xd5, 0xba, 0xbc, 0x24, 0xf7, 0x4f, 0x53, 0x7b, 0x04, 0x11, 0x5a, 0x0a, 0x8f, 0x6d, 0x79, 0x77, 0x98, 0xfc, 0x80, 0x7f, 0xb0, 0x02, 0x74, 0x6b, 0x27, 0x89, 0x2a, 0xe3, 0x0f, 0x75, 0x10, 0x34, 0xb6, 0x80, 0xb1, 0x72, 0x3c, 0x2e, 0xe8, 0x59, 0xbd, 0xae, 0xd0, 0x54, 0x0e, 0x77, }; static const unsigned char ecdh_secp521r1_5831_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5831_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5831_sharedsecret[] = { 0x01, 0x51, 0x9b, 0xa4, 0x17, 0x9e, 0xf8, 0x5a, 0x4b, 0x51, 0xb3, 0x0d, 0xb2, 0xf6, 0xe9, 0xe2, 0xf3, 0xd4, 0x9b, 0x1f, 0x3e, 0x86, 0x11, 0xc9, 0xba, 0x32, 0x86, 0xd7, 0x8c, 0xa6, 0x45, 0xd2, 0x9d, 0x7a, 0x16, 0x30, 0x55, 0xfe, 0x44, 0xac, 0xcf, 0xc7, 0x24, 0x09, 0x1d, 0x08, 0x42, 0x08, 0x1a, 0x0f, 0xc3, 0x9f, 0x0f, 0xf7, 0xb7, 0xd7, 0x42, 0x34, 0x6e, 0xf2, 0x93, 0xe5, 0x1a, 0x1d, 0x71, 0x07, }; static const wycheproof_ecdh_test ecdh_secp521r1_5831 = { .name = "ecdh_secp521r1_5831", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5831_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5831_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5831_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5831_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate x = 0 in right to left addition chain, tcId is 551 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5832 for ECDH, tcId is 552 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5832_peerpubkey[] = { 0x00, 0xd9, 0xcb, 0x7a, 0x32, 0xda, 0xb3, 0x42, 0xf8, 0x63, 0xed, 0xb3, 0x40, 0xf3, 0xea, 0x61, 0xdd, 0xf8, 0x33, 0xe7, 0x55, 0xce, 0x66, 0xbb, 0x1a, 0x91, 0x8a, 0x42, 0x71, 0x4b, 0xa0, 0x5b, 0xcd, 0xf4, 0xff, 0x10, 0x99, 0x4f, 0x61, 0x6a, 0x9d, 0x80, 0xcd, 0x0b, 0x48, 0xb3, 0x26, 0xe3, 0xa8, 0xa2, 0xa8, 0xf5, 0x63, 0x4d, 0x82, 0x48, 0x75, 0xb6, 0xe7, 0x1f, 0xb7, 0xcd, 0xdd, 0x7b, 0x50, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_5832_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5832_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5832_sharedsecret[] = { 0x01, 0xb4, 0x3c, 0xd9, 0x28, 0x0f, 0xaf, 0xf2, 0x42, 0xc6, 0xeb, 0x21, 0x24, 0x3f, 0x54, 0x47, 0x7a, 0x0d, 0xd9, 0x1f, 0xf1, 0xb0, 0xb1, 0xa3, 0x1d, 0x60, 0x11, 0xac, 0xb9, 0x21, 0x1b, 0xd7, 0xc4, 0xe7, 0x60, 0x2e, 0x48, 0x8d, 0x4c, 0xd3, 0x84, 0xfa, 0xce, 0x2a, 0xa2, 0x43, 0xdb, 0x2c, 0xf8, 0xc8, 0x22, 0x0c, 0x56, 0x6d, 0xcf, 0x95, 0x11, 0xfe, 0xad, 0xe8, 0xfc, 0x26, 0xb0, 0x7b, 0x1d, 0x73, }; static const wycheproof_ecdh_test ecdh_secp521r1_5832 = { .name = "ecdh_secp521r1_5832", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5832_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5832_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5832_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5832_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 552 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5833 for ECDH, tcId is 553 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5833_peerpubkey[] = { 0x00, 0x70, 0x3d, 0xde, 0x20, 0x2e, 0xa0, 0x3d, 0x1d, 0x67, 0x37, 0x35, 0x00, 0x2c, 0xc6, 0x2c, 0xc7, 0x40, 0x53, 0x61, 0x04, 0xd8, 0x1f, 0xc9, 0xfd, 0x8e, 0xbd, 0xb7, 0xdf, 0xa9, 0x08, 0xf5, 0x99, 0xd8, 0xfe, 0xa4, 0x6d, 0xeb, 0xc1, 0x90, 0xa5, 0xb2, 0xef, 0x5f, 0x44, 0x93, 0xf9, 0xb5, 0xec, 0xd8, 0xda, 0x94, 0x07, 0xbf, 0x4f, 0xc8, 0xe1, 0x73, 0x28, 0x03, 0xa7, 0x4e, 0xe6, 0x5f, 0x74, 0x7b, 0x01, 0x7c, 0x9b, 0x03, 0x8d, 0x86, 0xaf, 0xc9, 0x41, 0x40, 0x3f, 0xac, 0xaa, 0x1e, 0x2a, 0x63, 0x76, 0xde, 0xc0, 0x75, 0xc0, 0x35, 0xab, 0x2c, 0x1f, 0x42, 0xdb, 0x5f, 0xcd, 0xa3, 0xad, 0x3f, 0xec, 0x67, 0xbc, 0xf2, 0x2b, 0xaf, 0x6c, 0x81, 0xb4, 0x24, 0x1b, 0x4a, 0x92, 0x57, 0xf8, 0xc2, 0x12, 0x68, 0x80, 0xe1, 0xd6, 0xa6, 0x9a, 0x3e, 0x5a, 0xc7, 0xe9, 0x87, 0x10, 0xfb, 0x24, 0xd5, 0x05, 0xdf, }; static const unsigned char ecdh_secp521r1_5833_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5833_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5833_sharedsecret[] = { 0x01, 0xb2, 0x48, 0xdb, 0xd8, 0xdf, 0xa6, 0x67, 0xa1, 0x0a, 0xb3, 0x2a, 0xf6, 0x8f, 0xa8, 0x96, 0x7c, 0x69, 0x49, 0x6e, 0xbf, 0x80, 0xc1, 0x1f, 0xd0, 0xef, 0xb7, 0x69, 0xea, 0x93, 0xf8, 0x4f, 0x5a, 0x29, 0x68, 0xb7, 0xed, 0x81, 0xb2, 0xfd, 0x9a, 0xa9, 0x13, 0xac, 0xce, 0xc7, 0x01, 0xdd, 0xce, 0x0d, 0x1f, 0x8b, 0x43, 0xb1, 0xc6, 0x71, 0xf5, 0x47, 0x82, 0x2f, 0x79, 0x6e, 0xfb, 0x12, 0xd5, 0x59, }; static const wycheproof_ecdh_test ecdh_secp521r1_5833 = { .name = "ecdh_secp521r1_5833", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5833_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5833_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5833_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5833_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 553 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5834 for ECDH, tcId is 554 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5834_peerpubkey[] = { 0x00, 0x04, 0xfa, 0xbe, 0x53, 0xe6, 0x31, 0x93, 0x57, 0x1d, 0x44, 0x52, 0x1d, 0x36, 0xc4, 0xb6, 0x46, 0xe2, 0x99, 0xb3, 0x90, 0xef, 0xe5, 0x0e, 0x5f, 0xa1, 0xa7, 0x38, 0xe7, 0x00, 0x58, 0x6f, 0xe4, 0x1b, 0xf5, 0x43, 0xb0, 0x7f, 0xe4, 0xfa, 0xfc, 0xb7, 0x24, 0x30, 0x12, 0x46, 0xe8, 0xc0, 0x96, 0xc4, 0x99, 0xb8, 0xa5, 0xd0, 0x63, 0x23, 0x3a, 0xa7, 0x48, 0xdb, 0x9d, 0x21, 0x63, 0xd1, 0x00, 0x04, 0x00, 0x92, 0x8a, 0x59, 0xf3, 0xe4, 0xbe, 0xc0, 0x46, 0x4f, 0x02, 0x1c, 0x5a, 0xd0, 0x86, 0x45, 0x62, 0x31, 0xa4, 0xe4, 0x4f, 0x16, 0x2f, 0xe6, 0xae, 0xfa, 0x7a, 0x2c, 0xae, 0xf9, 0x03, 0x1b, 0xa8, 0x37, 0x68, 0xb5, 0x47, 0x62, 0xef, 0x90, 0xb1, 0xe5, 0x08, 0xed, 0xdb, 0xef, 0x69, 0xe5, 0x3f, 0x3f, 0x9a, 0xe2, 0x15, 0xd4, 0xa0, 0x61, 0x2f, 0x73, 0x7d, 0x16, 0x09, 0x6d, 0xdd, 0xa3, 0x22, 0xaa, }; static const unsigned char ecdh_secp521r1_5834_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5834_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5834_sharedsecret[] = { 0x01, 0x08, 0x1c, 0x5a, 0x32, 0x89, 0x35, 0x4d, 0xb2, 0x0a, 0x92, 0x9f, 0xa3, 0xd9, 0x60, 0x7c, 0x2a, 0xc5, 0x8c, 0xab, 0x7b, 0x1f, 0xfb, 0x28, 0x02, 0xe6, 0xa7, 0x78, 0xaf, 0x1b, 0x79, 0xca, 0x7a, 0x68, 0xc7, 0xbc, 0x1b, 0xd3, 0x7a, 0x05, 0x77, 0x2e, 0xf8, 0xc2, 0x8f, 0x46, 0x09, 0x55, 0x7f, 0x43, 0x38, 0x7b, 0x27, 0x1f, 0xb5, 0xa2, 0x74, 0xae, 0x3e, 0x88, 0x14, 0xc7, 0x50, 0x54, 0x44, 0xc4, }; static const wycheproof_ecdh_test ecdh_secp521r1_5834 = { .name = "ecdh_secp521r1_5834", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5834_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5834_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5834_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5834_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1, tcId is 554 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5835 for ECDH, tcId is 555 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5835_peerpubkey[] = { 0x00, 0xb1, 0x08, 0xb6, 0xcb, 0x1e, 0x04, 0x34, 0x14, 0x73, 0x64, 0x6c, 0x80, 0xf8, 0xc9, 0xc5, 0x10, 0x14, 0xce, 0xc7, 0xf0, 0x79, 0xf9, 0x68, 0x11, 0x0a, 0xb3, 0x5c, 0x0f, 0x05, 0xb2, 0x4e, 0xa7, 0x72, 0x23, 0x27, 0xb5, 0xeb, 0x5b, 0xca, 0x74, 0x8c, 0x35, 0xc7, 0x71, 0xab, 0xa6, 0x7b, 0x23, 0x2c, 0x82, 0x0e, 0xd5, 0x44, 0xf9, 0xd4, 0xef, 0xd4, 0x3d, 0x37, 0xec, 0x49, 0x96, 0x0d, 0xb2, 0xd7, 0x00, 0xac, 0x75, 0x8a, 0x1e, 0x22, 0x5e, 0x3d, 0xb1, 0x9a, 0x1f, 0x3e, 0xa9, 0x58, 0x3a, 0xd9, 0xea, 0x6e, 0x99, 0x45, 0x68, 0xf6, 0xdd, 0xc1, 0x24, 0xb8, 0xda, 0xb4, 0x9b, 0xae, 0x83, 0x57, 0xb3, 0xc7, 0x05, 0x37, 0x40, 0x4e, 0xd4, 0xd0, 0x23, 0x70, 0xe1, 0x63, 0x7e, 0xd5, 0x91, 0x6b, 0x43, 0x33, 0x48, 0x59, 0xec, 0xe3, 0xdb, 0xe6, 0xdd, 0x26, 0x06, 0x5c, 0x24, 0xdf, 0x11, 0xb8, 0xf2, 0x81, }; static const unsigned char ecdh_secp521r1_5835_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5835_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5835_sharedsecret[] = { 0x01, 0x0e, 0x64, 0xa6, 0xdd, 0x87, 0x61, 0x0b, 0xfb, 0x99, 0xa1, 0x34, 0x03, 0x9b, 0x51, 0x8c, 0x8c, 0xc8, 0x70, 0x19, 0xed, 0x5a, 0x2f, 0xa0, 0xb3, 0xf9, 0x8b, 0xe8, 0xfb, 0x3b, 0x2d, 0x90, 0x03, 0x81, 0xa5, 0x07, 0x55, 0x73, 0x9b, 0xff, 0x48, 0x3e, 0x40, 0x0e, 0x5a, 0xd9, 0x2c, 0x01, 0x6e, 0xe3, 0x17, 0x4d, 0xf8, 0xd5, 0x28, 0xfd, 0xc0, 0x8a, 0x17, 0x6d, 0x60, 0x80, 0xc1, 0x83, 0xe0, 0x94, }; static const wycheproof_ecdh_test ecdh_secp521r1_5835 = { .name = "ecdh_secp521r1_5835", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5835_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5835_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5835_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5835_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 555 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5836 for ECDH, tcId is 556 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5836_peerpubkey[] = { 0x01, 0x24, 0x50, 0x8b, 0x18, 0x2d, 0xcc, 0xea, 0x6a, 0xce, 0x21, 0x36, 0xe5, 0x3a, 0x2d, 0x9b, 0x61, 0x49, 0xdd, 0x0a, 0xe4, 0x50, 0x83, 0x06, 0x66, 0xf0, 0xa9, 0xc8, 0x44, 0x91, 0x8f, 0x0f, 0xb3, 0xeb, 0x87, 0xf7, 0xf3, 0xf7, 0x70, 0x7a, 0xdd, 0xd7, 0x7b, 0xb1, 0x2c, 0xd1, 0xe5, 0x52, 0xef, 0x12, 0x10, 0x5c, 0x68, 0x67, 0xa4, 0xfe, 0x81, 0xcd, 0x1f, 0x6a, 0x40, 0x01, 0xc3, 0xfe, 0x6e, 0x08, 0x01, 0x57, 0x6d, 0x60, 0xd0, 0x7c, 0x02, 0xb2, 0x55, 0x9c, 0xd1, 0x89, 0xab, 0xaa, 0x70, 0x3e, 0x36, 0xe2, 0x9c, 0x66, 0xd3, 0xda, 0x18, 0xd3, 0x49, 0x26, 0xae, 0x82, 0x1b, 0xd2, 0x16, 0x94, 0xe1, 0x53, 0x19, 0x09, 0x3d, 0xb2, 0x5f, 0x62, 0x0b, 0x64, 0x80, 0xe0, 0x4a, 0x4c, 0x6c, 0x53, 0xb1, 0xfa, 0x38, 0x8f, 0x95, 0x9b, 0x65, 0xfb, 0xf8, 0xa8, 0x82, 0x9b, 0x3b, 0x26, 0x2f, 0x55, 0xe4, 0xf2, }; static const unsigned char ecdh_secp521r1_5836_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5836_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5836_sharedsecret[] = { 0x00, 0x4a, 0xf5, 0x56, 0xf0, 0x9b, 0x9d, 0x7a, 0x02, 0x4c, 0x4d, 0xc9, 0x41, 0x93, 0x1d, 0x65, 0x5d, 0x22, 0x31, 0x93, 0x2e, 0xa0, 0x45, 0xa7, 0xfa, 0xf3, 0x22, 0xb1, 0x4f, 0x97, 0x34, 0x19, 0x99, 0xa5, 0xa5, 0x60, 0x5c, 0x7d, 0x31, 0xb2, 0xe9, 0x3d, 0x56, 0xf9, 0xd8, 0x13, 0x63, 0x06, 0xa8, 0x99, 0xd8, 0x2b, 0xbe, 0x2b, 0x61, 0xb3, 0x6a, 0xf2, 0x33, 0x6a, 0x0e, 0xde, 0x70, 0xdc, 0xd3, 0x92, }; static const wycheproof_ecdh_test ecdh_secp521r1_5836 = { .name = "ecdh_secp521r1_5836", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5836_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5836_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5836_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5836_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 556 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5837 for ECDH, tcId is 557 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5837_peerpubkey[] = { 0x00, 0xe2, 0xb5, 0xd2, 0xbc, 0xd2, 0xb4, 0x83, 0x87, 0x1b, 0x7d, 0x83, 0xc2, 0xdb, 0x0e, 0x95, 0x7e, 0xf2, 0x23, 0xf6, 0x5b, 0x30, 0xf4, 0x5d, 0x4a, 0xda, 0x33, 0x72, 0x53, 0x73, 0x78, 0x5c, 0x0d, 0x66, 0x4a, 0x8c, 0xa2, 0xc3, 0x5b, 0xc3, 0x5a, 0x95, 0x2f, 0xd8, 0x22, 0xb0, 0x07, 0x2a, 0x96, 0x0c, 0x60, 0xe3, 0x19, 0xf4, 0xe0, 0x6d, 0xe6, 0xc7, 0x85, 0xfd, 0x8d, 0xdc, 0xbb, 0xea, 0x18, 0xd2, 0x00, 0x30, 0x02, 0x34, 0x47, 0x1a, 0x92, 0xac, 0x2c, 0x5f, 0x77, 0x8c, 0xba, 0x8a, 0x97, 0xf3, 0xb3, 0xc4, 0x5c, 0xc8, 0xea, 0xc1, 0xd8, 0x15, 0xb4, 0x5d, 0xc0, 0x2f, 0x9b, 0x74, 0x07, 0x9a, 0xc5, 0x66, 0x49, 0x09, 0x3d, 0x43, 0x61, 0x30, 0x05, 0x86, 0x7b, 0x38, 0xf3, 0xf6, 0x69, 0x5d, 0x50, 0x27, 0x3e, 0xa2, 0xf6, 0x8f, 0xfa, 0x81, 0x00, 0x0c, 0x78, 0x95, 0xe9, 0x1e, 0xc5, 0x38, 0x56, 0xe3, }; static const unsigned char ecdh_secp521r1_5837_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5837_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5837_sharedsecret[] = { 0x01, 0x84, 0x77, 0x1f, 0x10, 0x89, 0x1b, 0x6d, 0xab, 0x95, 0x36, 0x63, 0xdc, 0x41, 0x60, 0x0b, 0xb7, 0xb2, 0xbc, 0xd0, 0xcc, 0x6b, 0xd3, 0x19, 0x79, 0x5b, 0xc8, 0x9c, 0xe2, 0xcc, 0xa1, 0x88, 0x3c, 0xf9, 0x2f, 0xd6, 0xfa, 0x7b, 0x16, 0xfb, 0x39, 0xc3, 0x73, 0x74, 0x54, 0xbd, 0x3c, 0x22, 0xf4, 0xfb, 0x2c, 0x2e, 0x86, 0x91, 0x4d, 0xb4, 0x18, 0xb6, 0x53, 0xa9, 0xe0, 0xdc, 0xe3, 0xbe, 0x5e, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5837 = { .name = "ecdh_secp521r1_5837", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5837_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5837_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5837_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5837_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 557 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5838 for ECDH, tcId is 558 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5838_peerpubkey[] = { 0x00, 0xae, 0xe0, 0xe3, 0x09, 0x74, 0x41, 0xd5, 0x01, 0x38, 0x80, 0x3f, 0xf9, 0xb1, 0x78, 0x06, 0xbf, 0xca, 0x10, 0x64, 0xfe, 0xec, 0x20, 0x9f, 0xd0, 0xb5, 0xae, 0x57, 0xc6, 0xd8, 0x7d, 0x9e, 0x5e, 0xb3, 0x2c, 0xb0, 0x67, 0x0f, 0x12, 0xfb, 0xde, 0x06, 0xc3, 0xf3, 0xed, 0x8b, 0x18, 0x61, 0xb6, 0xd1, 0x8f, 0x6b, 0xc6, 0xa2, 0x55, 0x22, 0x66, 0xa2, 0x40, 0x68, 0x6c, 0x52, 0x9f, 0x04, 0x4f, 0x57, 0x01, 0x00, 0x89, 0x8b, 0x3c, 0x65, 0x01, 0xeb, 0xaa, 0x81, 0xe6, 0x9e, 0xe0, 0x19, 0xb8, 0x79, 0xd6, 0xee, 0x37, 0x15, 0xd5, 0x09, 0x6d, 0xf8, 0x39, 0x61, 0xe1, 0x0b, 0xc8, 0x05, 0xd5, 0xc6, 0x74, 0xca, 0xa9, 0x8a, 0x1b, 0xa2, 0x9e, 0xd0, 0x04, 0x80, 0x89, 0x31, 0xa9, 0x61, 0x5d, 0xfe, 0xda, 0x86, 0x73, 0xcf, 0x39, 0xf0, 0xce, 0x4a, 0x61, 0x8d, 0x18, 0x1c, 0x04, 0xa8, 0x66, 0x18, 0x90, 0x37, }; static const unsigned char ecdh_secp521r1_5838_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5838_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5838_sharedsecret[] = { 0x00, 0x24, 0xf7, 0x92, 0x51, 0xc8, 0x6e, 0x06, 0xac, 0x18, 0xe6, 0x40, 0x4c, 0xd3, 0x03, 0xc2, 0xfa, 0xbc, 0xaa, 0x95, 0x64, 0x21, 0x8c, 0x16, 0x0c, 0x1f, 0xb7, 0xa9, 0x9f, 0xb2, 0xc6, 0x99, 0xb3, 0xae, 0x65, 0xca, 0x2d, 0xa8, 0xf6, 0x6a, 0xd9, 0xd7, 0x5c, 0xee, 0x42, 0xf1, 0x9f, 0x1d, 0x77, 0xf1, 0x94, 0xfd, 0xf2, 0xad, 0x78, 0x54, 0x18, 0x6b, 0x97, 0x7b, 0xa2, 0x6c, 0x0e, 0x87, 0xcd, 0xab, }; static const wycheproof_ecdh_test ecdh_secp521r1_5838 = { .name = "ecdh_secp521r1_5838", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5838_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5838_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5838_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5838_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 558 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5839 for ECDH, tcId is 559 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5839_peerpubkey[] = { 0x00, 0x47, 0xad, 0x26, 0x4a, 0x37, 0x3c, 0x49, 0x94, 0xf9, 0x42, 0xad, 0x09, 0x42, 0xda, 0xe8, 0xb2, 0x3a, 0x32, 0x9f, 0xb7, 0xa4, 0x6e, 0x98, 0x7c, 0xb9, 0x21, 0xc2, 0x8b, 0xca, 0xed, 0x4a, 0xed, 0x60, 0xe5, 0xea, 0x6f, 0xcc, 0xed, 0x4b, 0x3e, 0xce, 0x4a, 0xb7, 0xd9, 0x1b, 0x34, 0x9e, 0x3e, 0x45, 0xab, 0xce, 0x93, 0xe9, 0x76, 0x5e, 0xe2, 0xfe, 0x9f, 0x13, 0xd5, 0xf2, 0x30, 0x71, 0x5a, 0x23, 0x00, 0x59, 0x65, 0x40, 0x10, 0xa5, 0x7f, 0x0e, 0x9d, 0x1e, 0xd4, 0x6a, 0xfa, 0xc4, 0xaa, 0xf5, 0xb3, 0x22, 0x87, 0x63, 0xed, 0x2c, 0xb2, 0xb4, 0xd7, 0x8a, 0x13, 0x16, 0x36, 0xbd, 0x13, 0x33, 0xf1, 0x27, 0x99, 0x77, 0x9a, 0x9f, 0x0f, 0xec, 0x3e, 0xf2, 0x44, 0x52, 0xc5, 0x1e, 0x8e, 0x4f, 0x31, 0xef, 0x6d, 0xc1, 0x12, 0x9a, 0x45, 0x4f, 0x07, 0x92, 0x58, 0xea, 0xc1, 0x0a, 0xdf, 0x88, 0x79, 0xaf, }; static const unsigned char ecdh_secp521r1_5839_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5839_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5839_sharedsecret[] = { 0x01, 0x64, 0x6e, 0x6e, 0xd9, 0x5c, 0x47, 0xf6, 0x08, 0x51, 0xb1, 0x6b, 0x8d, 0xa1, 0x21, 0xb7, 0xa0, 0x27, 0xae, 0x9b, 0x05, 0xfa, 0xcb, 0x08, 0xbf, 0x52, 0xef, 0x17, 0xe6, 0x7a, 0x0e, 0xfb, 0x1c, 0x49, 0xef, 0x90, 0x3d, 0xe8, 0x90, 0x82, 0xd3, 0xb3, 0x4a, 0xca, 0xcc, 0x5c, 0xfb, 0x63, 0xeb, 0x6a, 0x62, 0x0d, 0x0e, 0x14, 0x98, 0x72, 0x0e, 0x04, 0x55, 0x9e, 0xe4, 0x76, 0xbb, 0x9a, 0x75, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_5839 = { .name = "ecdh_secp521r1_5839", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5839_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5839_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5839_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5839_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 559 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5840 for ECDH, tcId is 560 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5840_peerpubkey[] = { 0x00, 0x07, 0x5d, 0xaa, 0x66, 0xc8, 0xb4, 0x29, 0x8a, 0x8a, 0x8c, 0xd3, 0x95, 0x02, 0x2b, 0xf2, 0xf2, 0x7e, 0x52, 0x83, 0x08, 0x68, 0xb1, 0x3b, 0x17, 0x60, 0xf2, 0x2b, 0xc2, 0x9c, 0x99, 0x66, 0x6f, 0x39, 0x23, 0x85, 0x80, 0x5b, 0x94, 0x90, 0xec, 0xa4, 0x76, 0xde, 0xfd, 0xf7, 0xdf, 0x0d, 0x6b, 0x49, 0x18, 0x1c, 0x37, 0x23, 0x77, 0x09, 0x33, 0xc8, 0x27, 0x61, 0xa2, 0xf7, 0xd3, 0xce, 0xa3, 0x9a, 0x01, 0xbd, 0x89, 0xc2, 0xff, 0xbb, 0xfb, 0x46, 0x1f, 0x21, 0x2d, 0x16, 0xe9, 0xa9, 0x04, 0x72, 0x53, 0xcd, 0xcd, 0xf1, 0x79, 0xce, 0x76, 0x3f, 0xd4, 0x91, 0x72, 0xf8, 0xbf, 0xee, 0xb6, 0x8d, 0x1c, 0x1f, 0xd6, 0xe2, 0xfd, 0x6e, 0x64, 0x16, 0xa8, 0xb0, 0x15, 0x51, 0x32, 0x22, 0x73, 0x43, 0x60, 0xf5, 0x12, 0x80, 0xce, 0xf5, 0xf3, 0x9e, 0xc5, 0xff, 0xdc, 0x75, 0x6e, 0x44, 0xa5, 0x94, 0x27, 0x64, }; static const unsigned char ecdh_secp521r1_5840_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5840_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5840_sharedsecret[] = { 0x01, 0x29, 0xe9, 0x2c, 0x8b, 0xcf, 0x5e, 0x73, 0x57, 0x32, 0xa7, 0xf8, 0x76, 0x32, 0x1a, 0xeb, 0x26, 0x55, 0xe8, 0xd2, 0x26, 0xc2, 0x28, 0xe5, 0x1d, 0x5a, 0xb6, 0xfc, 0x7c, 0x05, 0xb6, 0x3c, 0xa9, 0x40, 0x0a, 0x0c, 0x25, 0xbf, 0xa1, 0x2b, 0x0a, 0x7e, 0xbc, 0x84, 0xef, 0xd6, 0x2f, 0x69, 0x5d, 0xa7, 0xcd, 0x44, 0xc1, 0xce, 0xd1, 0xed, 0x5c, 0xb7, 0x88, 0xc4, 0xde, 0x12, 0xa5, 0x17, 0xf1, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5840 = { .name = "ecdh_secp521r1_5840", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5840_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5840_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5840_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5840_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 560 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5841 for ECDH, tcId is 561 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5841_peerpubkey[] = { 0x00, 0x4a, 0xbc, 0xd8, 0x46, 0x9f, 0x19, 0x4d, 0x0c, 0xcc, 0x0d, 0xb4, 0x64, 0x92, 0xcd, 0xdf, 0xb0, 0x55, 0x2b, 0xc1, 0x30, 0x62, 0xb7, 0x48, 0x7a, 0xcc, 0x38, 0xf5, 0x9a, 0x07, 0x4f, 0x68, 0x20, 0x01, 0xdb, 0x1a, 0xdd, 0xef, 0x6b, 0x28, 0xc5, 0x47, 0x9e, 0xaf, 0x5d, 0x6b, 0x95, 0xb3, 0x7c, 0x39, 0x4e, 0xb9, 0x1e, 0xcf, 0xe0, 0x2f, 0x00, 0x87, 0xfc, 0x63, 0x97, 0x00, 0xb4, 0x90, 0xed, 0xdf, 0x01, 0x21, 0x39, 0x86, 0x73, 0xaf, 0x0d, 0x63, 0x91, 0x91, 0xe3, 0x12, 0x2d, 0xec, 0x7b, 0x58, 0x52, 0x6d, 0xf7, 0x05, 0x46, 0x27, 0xf6, 0x96, 0xa5, 0x69, 0x89, 0x28, 0x51, 0xf9, 0x04, 0x38, 0x2d, 0xbf, 0xf7, 0xb6, 0x1e, 0xd4, 0xab, 0x19, 0x53, 0x91, 0x0d, 0x27, 0xaa, 0x35, 0x60, 0x95, 0xa2, 0xca, 0x45, 0x95, 0x64, 0x56, 0xc8, 0xd4, 0xe1, 0xac, 0x56, 0xb1, 0xff, 0xec, 0x95, 0xfb, 0xe8, 0xcf, }; static const unsigned char ecdh_secp521r1_5841_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5841_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5841_sharedsecret[] = { 0x00, 0xce, 0xe0, 0x32, 0x8e, 0x75, 0xf0, 0x16, 0xd0, 0x56, 0x98, 0x6b, 0x4c, 0x7f, 0xce, 0xee, 0x76, 0x10, 0x23, 0x7f, 0x69, 0xdc, 0x2c, 0xbb, 0xb6, 0x26, 0x66, 0x59, 0x53, 0x55, 0x41, 0x26, 0x9f, 0x85, 0x1e, 0x36, 0xe0, 0x88, 0x8d, 0x63, 0x5b, 0x50, 0x6b, 0x8c, 0x00, 0xa8, 0xde, 0xe7, 0xd9, 0x87, 0x74, 0x5d, 0x8d, 0x06, 0x51, 0x9d, 0x15, 0xbc, 0x75, 0x2b, 0xd5, 0x75, 0x6f, 0xe3, 0x27, 0xaa, }; static const wycheproof_ecdh_test ecdh_secp521r1_5841 = { .name = "ecdh_secp521r1_5841", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5841_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5841_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5841_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5841_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 561 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5842 for ECDH, tcId is 562 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5842_peerpubkey[] = { 0x01, 0xbd, 0x16, 0x39, 0x89, 0xc4, 0x07, 0xd5, 0xf8, 0xf9, 0xfd, 0x2e, 0x08, 0x7b, 0x14, 0x73, 0x71, 0x0c, 0x4b, 0xc2, 0xd6, 0xa9, 0x7d, 0x28, 0x19, 0x84, 0xc1, 0x2c, 0xbb, 0x06, 0x15, 0xbe, 0x9a, 0xc8, 0x06, 0xc2, 0x92, 0xc9, 0xd9, 0x0c, 0xf3, 0x5f, 0xfe, 0xc6, 0x65, 0x76, 0x01, 0x93, 0xb1, 0xd7, 0x68, 0x1c, 0x47, 0xf8, 0xbd, 0xae, 0x37, 0xac, 0x50, 0xd8, 0xa4, 0x07, 0x60, 0xa0, 0x47, 0xfc, 0x01, 0x67, 0xcc, 0xe4, 0xdc, 0x54, 0xe6, 0x7e, 0xbf, 0x56, 0x40, 0x7a, 0xec, 0x33, 0xa5, 0xaa, 0x20, 0xba, 0x86, 0x7c, 0x85, 0x6f, 0x92, 0x9f, 0xad, 0x77, 0x8b, 0x39, 0xb0, 0xdc, 0x51, 0x24, 0x9d, 0x24, 0xe3, 0x90, 0xd7, 0xe3, 0x3c, 0x72, 0x38, 0x2c, 0x4a, 0x1d, 0x02, 0xbf, 0x73, 0xd6, 0x05, 0x94, 0x8a, 0x73, 0xa4, 0x81, 0xbd, 0xf3, 0x29, 0xef, 0x7b, 0x7f, 0x04, 0xcf, 0x3a, 0x33, 0x3c, 0x76, }; static const unsigned char ecdh_secp521r1_5842_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5842_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5842_sharedsecret[] = { 0x00, 0x1e, 0x87, 0x2a, 0x53, 0x4b, 0xd0, 0x79, 0x55, 0x0d, 0x50, 0xa2, 0xde, 0xf1, 0xd4, 0x39, 0x08, 0x3b, 0xb3, 0x42, 0x3a, 0x58, 0xa9, 0x23, 0xde, 0xd2, 0xed, 0x7d, 0xe7, 0x68, 0x02, 0x29, 0x81, 0xb7, 0xcf, 0xc7, 0x5c, 0x97, 0x0c, 0xaa, 0x2c, 0xbb, 0xf2, 0xc4, 0xc7, 0xcf, 0xd9, 0xcf, 0x98, 0x46, 0x84, 0x4e, 0x9c, 0x54, 0x00, 0x35, 0x67, 0x00, 0x08, 0x0a, 0x70, 0x97, 0xf0, 0x0e, 0x15, 0x48, }; static const wycheproof_ecdh_test ecdh_secp521r1_5842 = { .name = "ecdh_secp521r1_5842", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5842_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5842_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5842_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5842_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 562 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5843 for ECDH, tcId is 563 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5843_peerpubkey[] = { 0x01, 0xf3, 0xd6, 0x59, 0x37, 0x89, 0x97, 0xa7, 0x5e, 0x45, 0x6f, 0x77, 0x0f, 0x34, 0xbf, 0xac, 0x63, 0x8f, 0x1d, 0x38, 0x77, 0x7c, 0xd0, 0xa7, 0x72, 0x07, 0xcb, 0xc4, 0x2b, 0x54, 0x0c, 0x1f, 0xcb, 0xad, 0x58, 0x3b, 0x93, 0x87, 0x31, 0x63, 0x42, 0x6e, 0xb9, 0x16, 0x99, 0xf8, 0xc0, 0x83, 0x4b, 0x13, 0x69, 0x54, 0x00, 0xde, 0x49, 0x79, 0x67, 0x88, 0xc5, 0x92, 0x41, 0x0c, 0x52, 0x0e, 0x85, 0x9f, 0x01, 0x94, 0x62, 0x25, 0xc7, 0x1e, 0x24, 0x1a, 0x3a, 0x78, 0x5d, 0x26, 0xd1, 0x21, 0xd5, 0x61, 0x45, 0xea, 0x8f, 0x97, 0x68, 0xf3, 0xa0, 0x09, 0xa2, 0xe3, 0xc5, 0x4f, 0x9c, 0x87, 0x6b, 0x89, 0x9e, 0x81, 0xab, 0x12, 0x61, 0xb2, 0xbd, 0x5e, 0xf9, 0x9f, 0x54, 0xf4, 0x45, 0x35, 0xf9, 0xcc, 0x76, 0xbf, 0x0f, 0x44, 0xe9, 0x1a, 0x5f, 0x13, 0x9e, 0x99, 0x27, 0xb8, 0x8d, 0x16, 0xdc, 0xcc, 0x4b, 0x39, }; static const unsigned char ecdh_secp521r1_5843_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5843_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5843_sharedsecret[] = { 0x01, 0xf9, 0x71, 0x7e, 0x8a, 0x71, 0xcf, 0xa9, 0x4b, 0x94, 0x3d, 0x41, 0xbf, 0x12, 0xc7, 0x0b, 0xcf, 0x51, 0x43, 0x74, 0x19, 0xb2, 0xda, 0x0b, 0x6e, 0x16, 0x0d, 0x06, 0xa3, 0x18, 0x7d, 0x78, 0x17, 0x69, 0xc7, 0x5d, 0x2a, 0x9f, 0x97, 0xa8, 0x49, 0x9e, 0x39, 0x60, 0x69, 0xa0, 0x59, 0x72, 0x5f, 0x47, 0xa1, 0x01, 0x03, 0xb7, 0x8e, 0x56, 0x8e, 0x07, 0x68, 0x49, 0x91, 0x12, 0xf2, 0xf1, 0x6b, 0x79, }; static const wycheproof_ecdh_test ecdh_secp521r1_5843 = { .name = "ecdh_secp521r1_5843", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5843_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5843_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5843_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5843_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 563 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5844 for ECDH, tcId is 564 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5844_peerpubkey[] = { 0x00, 0x05, 0x20, 0xd4, 0xf9, 0x3a, 0xd1, 0x5b, 0xd8, 0x39, 0x96, 0x97, 0xda, 0x58, 0xb2, 0x03, 0xa5, 0x81, 0xa3, 0x86, 0x8c, 0x55, 0xc8, 0xad, 0x9a, 0xf9, 0xae, 0xf6, 0x13, 0xe2, 0x14, 0x04, 0x6e, 0x56, 0xf2, 0xa8, 0x23, 0x82, 0xfd, 0x9e, 0xaf, 0xb1, 0xf5, 0x28, 0x1e, 0x6f, 0x6e, 0x9f, 0x0b, 0xcb, 0xb4, 0x38, 0x6f, 0xfd, 0x8c, 0xdf, 0x5d, 0xce, 0x09, 0x25, 0x7c, 0xad, 0xab, 0x97, 0xa0, 0x10, 0x01, 0x1b, 0x42, 0x58, 0x53, 0xcc, 0xf7, 0x98, 0x7d, 0xe7, 0x24, 0x59, 0x6b, 0xe0, 0xc2, 0x3f, 0x1d, 0x5e, 0x1c, 0x7d, 0x09, 0x32, 0xd2, 0xfe, 0x72, 0xc5, 0xf2, 0x23, 0xb9, 0xd0, 0x3a, 0x78, 0xb8, 0x8c, 0xb0, 0x9e, 0xba, 0x6c, 0x42, 0x45, 0x24, 0x0f, 0x85, 0x49, 0xc7, 0x21, 0x6e, 0x53, 0xa8, 0x79, 0xc9, 0x66, 0x68, 0xcd, 0xdc, 0x01, 0xd5, 0x1c, 0x7a, 0x52, 0xdb, 0x20, 0x1a, 0xb7, 0x7b, 0x89, }; static const unsigned char ecdh_secp521r1_5844_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5844_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5844_sharedsecret[] = { 0x01, 0x91, 0xc0, 0x56, 0x5f, 0xdd, 0x56, 0x12, 0x98, 0x75, 0x56, 0x20, 0xd9, 0xa7, 0x69, 0x3c, 0xfc, 0xe1, 0x85, 0xc5, 0x7b, 0x63, 0x91, 0xe4, 0xf9, 0xb9, 0x0f, 0x7b, 0x22, 0x28, 0x8b, 0x4f, 0x3e, 0xa3, 0xd9, 0x5d, 0xd4, 0xd9, 0x1b, 0x73, 0x16, 0x15, 0x64, 0x6a, 0xa9, 0xcf, 0x66, 0xdb, 0x8a, 0xa0, 0xc3, 0x02, 0xff, 0x07, 0x03, 0x02, 0x6c, 0x30, 0x3a, 0x8c, 0x3b, 0x1f, 0x3e, 0x15, 0xec, 0xad, }; static const wycheproof_ecdh_test ecdh_secp521r1_5844 = { .name = "ecdh_secp521r1_5844", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5844_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5844_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5844_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5844_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 564 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5845 for ECDH, tcId is 565 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5845_peerpubkey[] = { 0x00, 0x56, 0x8a, 0x78, 0xce, 0x5d, 0x2d, 0x03, 0x0f, 0xf8, 0x50, 0x87, 0x9e, 0xe0, 0x3c, 0x20, 0x1e, 0x4d, 0xc6, 0x4c, 0x58, 0x58, 0x8d, 0x2c, 0x8f, 0xeb, 0x3b, 0xa9, 0xb2, 0xd0, 0x38, 0x57, 0xaf, 0x3c, 0x29, 0xcf, 0xbd, 0x78, 0x9b, 0x79, 0x7f, 0x8d, 0xba, 0x4b, 0x74, 0x70, 0xf0, 0xc8, 0x41, 0x21, 0x23, 0x1f, 0x35, 0x6b, 0x63, 0xe6, 0x13, 0xd0, 0xff, 0xf5, 0xf8, 0xaa, 0xea, 0x8c, 0x86, 0xf9, 0x00, 0x3d, 0x67, 0xdd, 0x0b, 0xbb, 0x1d, 0x85, 0x88, 0xf1, 0x8c, 0xcf, 0x31, 0xcb, 0xe5, 0xcd, 0x28, 0x64, 0x22, 0xb7, 0x08, 0xc3, 0x86, 0xc1, 0xf8, 0x10, 0x08, 0x64, 0x7c, 0x82, 0x4f, 0x69, 0x4c, 0x11, 0x53, 0x55, 0x30, 0x09, 0x77, 0x3c, 0x65, 0x7b, 0x2b, 0x84, 0xcd, 0xae, 0x98, 0xe5, 0x2f, 0xb6, 0x24, 0x08, 0x72, 0xa3, 0x1b, 0xfb, 0x0f, 0xee, 0x3f, 0x2d, 0x8a, 0x94, 0xe5, 0x31, 0x9e, 0x49, }; static const unsigned char ecdh_secp521r1_5845_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5845_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5845_sharedsecret[] = { 0x01, 0xf8, 0x6b, 0x35, 0x03, 0x8a, 0xf9, 0x37, 0x1a, 0x84, 0x12, 0xd7, 0x5e, 0x5d, 0x46, 0xa4, 0xfa, 0x76, 0xed, 0xa9, 0xd7, 0xbe, 0x74, 0x0b, 0x14, 0xe8, 0xcf, 0x19, 0x41, 0x6f, 0xd5, 0xdf, 0x2a, 0x4c, 0xed, 0x30, 0x64, 0xfc, 0x38, 0x46, 0xae, 0x99, 0x54, 0x24, 0x88, 0xd6, 0x9e, 0x38, 0x79, 0x61, 0x9f, 0xa9, 0x07, 0x8c, 0xb9, 0x87, 0xdd, 0x0d, 0x14, 0x86, 0x0b, 0x72, 0x4d, 0xa9, 0x33, 0x9f, }; static const wycheproof_ecdh_test ecdh_secp521r1_5845 = { .name = "ecdh_secp521r1_5845", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5845_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5845_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5845_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5845_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 565 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5846 for ECDH, tcId is 566 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5846_peerpubkey[] = { 0x00, 0xd7, 0x24, 0xed, 0x03, 0xce, 0xa8, 0x0c, 0x57, 0x94, 0xc0, 0xf0, 0x77, 0xb8, 0x06, 0x06, 0x62, 0xdd, 0x74, 0x4e, 0x4e, 0x8d, 0x41, 0x90, 0xf7, 0xf3, 0x13, 0xc4, 0x05, 0x97, 0xfe, 0x94, 0xbd, 0x2a, 0xa7, 0x0b, 0x20, 0xf7, 0x3a, 0xc4, 0xdc, 0xef, 0x99, 0x31, 0x36, 0x08, 0xc2, 0x03, 0x1c, 0x73, 0xf1, 0x3e, 0xd1, 0xf5, 0xd9, 0xac, 0xe8, 0x37, 0xc5, 0x80, 0xfd, 0x02, 0xa4, 0xf2, 0xd6, 0xd5, 0x01, 0x55, 0xff, 0x55, 0x6f, 0x04, 0x66, 0x57, 0xee, 0x5f, 0x50, 0x75, 0x7b, 0x90, 0x78, 0xc5, 0x46, 0x7f, 0xec, 0x8a, 0x0f, 0x75, 0x66, 0xac, 0x15, 0xdb, 0x16, 0x8a, 0xfe, 0xcb, 0x7f, 0x51, 0x45, 0x41, 0xd2, 0xd1, 0xff, 0x87, 0xc5, 0xf6, 0x7c, 0x51, 0x1a, 0x4f, 0x61, 0xa9, 0x1c, 0x57, 0x99, 0x91, 0x48, 0x9a, 0xd5, 0xa1, 0xc8, 0xc0, 0xc5, 0x54, 0xd9, 0xb3, 0x6d, 0x14, 0x86, 0xb2, 0x7e, 0x72, }; static const unsigned char ecdh_secp521r1_5846_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5846_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5846_sharedsecret[] = { 0x01, 0xd1, 0x04, 0x7b, 0xf7, 0xe6, 0x22, 0xcd, 0x42, 0x8e, 0x1c, 0x76, 0xaa, 0x2c, 0x04, 0x4a, 0x20, 0x58, 0xa2, 0xd9, 0xf4, 0xb5, 0xc1, 0x79, 0xcf, 0x9c, 0x9d, 0x46, 0x07, 0x00, 0x81, 0x81, 0xb1, 0x59, 0xc1, 0x56, 0x47, 0x3e, 0x7d, 0x25, 0xfe, 0x49, 0xdd, 0x63, 0xad, 0x15, 0x00, 0x73, 0xcb, 0xc2, 0xde, 0x2f, 0xa9, 0xca, 0xd5, 0x0d, 0xba, 0xd9, 0xa0, 0x8d, 0x56, 0xeb, 0x22, 0xd8, 0xd3, 0x41, }; static const wycheproof_ecdh_test ecdh_secp521r1_5846 = { .name = "ecdh_secp521r1_5846", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5846_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5846_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5846_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5846_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 566 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5847 for ECDH, tcId is 567 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5847_peerpubkey[] = { 0x00, 0x93, 0x39, 0xef, 0x1c, 0x1f, 0x93, 0xca, 0x5f, 0xed, 0xec, 0x1f, 0xf5, 0xfe, 0x30, 0x33, 0x4e, 0xb1, 0x23, 0xc3, 0x0e, 0x6a, 0x17, 0xc7, 0xb6, 0x5f, 0x3a, 0xc8, 0x46, 0x1f, 0xb7, 0x79, 0x07, 0x5f, 0xe6, 0x98, 0x89, 0xa4, 0x28, 0x37, 0xb0, 0x1e, 0xaf, 0x44, 0xbb, 0x7f, 0xf8, 0x98, 0x4c, 0x0b, 0xed, 0xa0, 0xe1, 0xb5, 0x27, 0x8a, 0x62, 0xc0, 0x7e, 0xc1, 0x28, 0xca, 0xaf, 0x52, 0xd8, 0xbd, 0x00, 0x19, 0xc0, 0x95, 0xff, 0xad, 0x69, 0xed, 0x80, 0x0e, 0x22, 0x3a, 0x8b, 0xfa, 0x55, 0xd2, 0x1f, 0x58, 0x8d, 0xc7, 0xf9, 0xf4, 0x1b, 0x9d, 0x75, 0xdc, 0x01, 0x07, 0x92, 0xb6, 0xfe, 0x24, 0x3d, 0x23, 0x08, 0xf1, 0x2d, 0xfc, 0xd3, 0x12, 0x72, 0x9e, 0xbe, 0xf9, 0xcc, 0x40, 0x74, 0x43, 0xc0, 0x4b, 0x0c, 0xdb, 0xe5, 0x77, 0x14, 0x61, 0x52, 0x41, 0xda, 0xb8, 0x74, 0x5c, 0xf6, 0x48, 0x7b, 0xc9, }; static const unsigned char ecdh_secp521r1_5847_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5847_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5847_sharedsecret[] = { 0x00, 0x3e, 0xef, 0x53, 0x52, 0x75, 0xe1, 0x5f, 0x77, 0x9e, 0xc1, 0x3e, 0x5c, 0xc7, 0xff, 0x93, 0x9c, 0x3d, 0xc1, 0x52, 0xe7, 0x9a, 0xad, 0x0c, 0x32, 0xa0, 0x3b, 0x8c, 0xb9, 0xf8, 0xc4, 0x49, 0xb4, 0xd9, 0x46, 0x9b, 0x36, 0x2e, 0x95, 0x98, 0x87, 0xc5, 0xa6, 0xf2, 0x09, 0x62, 0x78, 0x3c, 0x66, 0x7b, 0x32, 0xb3, 0x79, 0x1f, 0xa7, 0x01, 0xed, 0x52, 0xe8, 0x2d, 0x1e, 0x3d, 0x22, 0x29, 0x73, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp521r1_5847 = { .name = "ecdh_secp521r1_5847", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5847_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5847_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5847_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5847_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 567 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5848 for ECDH, tcId is 568 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5848_peerpubkey[] = { 0x00, 0xc2, 0x5a, 0x90, 0x65, 0x37, 0x7d, 0x2d, 0x84, 0x37, 0x25, 0x80, 0xa2, 0x68, 0x76, 0x67, 0xcd, 0xce, 0xce, 0xa5, 0x80, 0xbe, 0x1a, 0x5e, 0x72, 0xe1, 0xfd, 0x2a, 0xdb, 0x42, 0xeb, 0xda, 0x8d, 0x6a, 0x70, 0xac, 0x05, 0x3e, 0x49, 0xda, 0x48, 0x57, 0x32, 0xbf, 0x13, 0x43, 0x02, 0x82, 0xfa, 0x4c, 0xed, 0xac, 0x64, 0xe1, 0xb0, 0x69, 0x30, 0x51, 0xd1, 0x35, 0x4d, 0x8d, 0x6e, 0xfc, 0xec, 0x12, 0x01, 0xe2, 0xd2, 0xbf, 0xb7, 0xb4, 0x4f, 0x53, 0x5b, 0x87, 0x31, 0x2a, 0xe6, 0x7b, 0xea, 0x3d, 0x62, 0x80, 0x0b, 0x69, 0xd4, 0x34, 0x22, 0xfc, 0xd3, 0x68, 0x9a, 0x1b, 0xce, 0xca, 0x6f, 0xcf, 0xe4, 0x39, 0x9b, 0x7c, 0x31, 0x8a, 0x56, 0x88, 0xd0, 0xb4, 0xd2, 0x33, 0x39, 0x22, 0xd5, 0x95, 0xcf, 0x81, 0x42, 0x58, 0x4f, 0xa8, 0x98, 0xc6, 0x94, 0x26, 0xf4, 0xbc, 0x47, 0x85, 0x76, 0xed, 0xc8, 0xbf, }; static const unsigned char ecdh_secp521r1_5848_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5848_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5848_sharedsecret[] = { 0x01, 0x90, 0x34, 0x89, 0x6a, 0xfa, 0x68, 0x1f, 0xdc, 0xfb, 0x11, 0xee, 0x0c, 0x03, 0xe5, 0xc5, 0x88, 0xa6, 0x52, 0x39, 0xbe, 0x8e, 0x55, 0x5a, 0x89, 0x28, 0x0b, 0x7a, 0x98, 0x14, 0x17, 0x42, 0x54, 0xfd, 0xb4, 0x96, 0xec, 0x0f, 0xae, 0xb2, 0xa1, 0xd6, 0x81, 0x6d, 0x27, 0x6a, 0xce, 0xaa, 0x98, 0xa5, 0x3e, 0x09, 0xef, 0xe8, 0x4a, 0x75, 0x2c, 0x09, 0xc5, 0x01, 0xb2, 0xba, 0xca, 0xba, 0x69, 0xb8, }; static const wycheproof_ecdh_test ecdh_secp521r1_5848 = { .name = "ecdh_secp521r1_5848", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5848_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5848_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5848_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5848_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 568 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5849 for ECDH, tcId is 569 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5849_peerpubkey[] = { 0x01, 0xc2, 0x40, 0x2f, 0x34, 0x1b, 0x4e, 0x1c, 0x97, 0x55, 0xb3, 0xe1, 0x02, 0x22, 0x3c, 0x80, 0x56, 0x3c, 0x61, 0xc4, 0x1a, 0x64, 0xcb, 0x11, 0x99, 0x58, 0xc4, 0x1b, 0xec, 0x2d, 0xd9, 0x51, 0x9a, 0x47, 0x5a, 0xb8, 0x4b, 0xaa, 0xfb, 0x70, 0x83, 0x97, 0x00, 0x0b, 0x80, 0xb9, 0xd2, 0x75, 0xc1, 0x3d, 0x7c, 0xdb, 0x49, 0x12, 0x7e, 0x1e, 0xb2, 0x9a, 0x65, 0xd2, 0xd3, 0x74, 0x90, 0x4d, 0x09, 0x0b, 0x01, 0x9e, 0x06, 0xc3, 0xda, 0x4e, 0x88, 0x4d, 0x6e, 0xd9, 0x35, 0xc4, 0xb9, 0x2c, 0x84, 0xbc, 0x63, 0xe9, 0x1c, 0xbd, 0x66, 0x5c, 0xee, 0x86, 0xcc, 0x15, 0x13, 0x44, 0xa3, 0xa3, 0x63, 0xfa, 0x75, 0xad, 0x56, 0xa9, 0xb8, 0x04, 0xb4, 0x65, 0x1e, 0xd8, 0x56, 0x63, 0x11, 0x41, 0x88, 0xe6, 0x3c, 0xeb, 0xb2, 0xc1, 0x88, 0x7f, 0x96, 0x99, 0x4d, 0xb9, 0x70, 0x3c, 0x1d, 0x06, 0x43, 0x81, 0x2c, 0xd6, }; static const unsigned char ecdh_secp521r1_5849_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5849_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5849_sharedsecret[] = { 0x00, 0x28, 0x65, 0x55, 0x1b, 0xa9, 0x5f, 0xcc, 0xdb, 0x0c, 0x81, 0x4b, 0x14, 0x5b, 0x5a, 0x57, 0xc8, 0x08, 0xb4, 0x7d, 0x5b, 0x08, 0x25, 0x9e, 0xe4, 0x11, 0x74, 0x77, 0x0a, 0x73, 0x02, 0xd7, 0x4a, 0x2c, 0xc7, 0x8c, 0x78, 0x22, 0xa6, 0xed, 0xfa, 0x19, 0xb2, 0x2e, 0x8a, 0x0d, 0x61, 0x62, 0x60, 0xf1, 0x85, 0x1e, 0x0d, 0x5d, 0xba, 0x50, 0xa9, 0x18, 0x8e, 0x45, 0xaf, 0xcb, 0x7d, 0xbb, 0xab, 0x40, }; static const wycheproof_ecdh_test ecdh_secp521r1_5849 = { .name = "ecdh_secp521r1_5849", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5849_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5849_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5849_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5849_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 569 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5850 for ECDH, tcId is 570 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5850_peerpubkey[] = { 0x00, 0x83, 0xf9, 0x9c, 0xf2, 0x76, 0x7c, 0xe0, 0xcc, 0x88, 0x98, 0xe4, 0x61, 0xf9, 0x10, 0x40, 0x60, 0xa9, 0xc9, 0xea, 0x13, 0x42, 0xa2, 0xaf, 0xf7, 0x05, 0x61, 0x04, 0x69, 0x28, 0x65, 0x92, 0xaa, 0x41, 0xf3, 0x19, 0xc5, 0x0c, 0x83, 0x52, 0x48, 0x81, 0xfc, 0x42, 0x16, 0x9d, 0x07, 0x25, 0x50, 0x82, 0x5c, 0xf9, 0x2e, 0x5a, 0xd1, 0x10, 0xab, 0xd7, 0x7e, 0x8e, 0xcd, 0xd8, 0xca, 0x09, 0xf9, 0x5e, 0x00, 0x37, 0xaf, 0x6a, 0x24, 0xd6, 0xdb, 0xc9, 0xc8, 0x5d, 0xfa, 0xad, 0xa6, 0xc5, 0xa9, 0x45, 0xdd, 0x63, 0x49, 0xb9, 0xf1, 0xd1, 0xee, 0x10, 0xf2, 0x5f, 0x8d, 0xfc, 0xf0, 0x52, 0x2f, 0x36, 0x23, 0x33, 0x7b, 0xfc, 0xba, 0x20, 0x4e, 0x7e, 0x8e, 0x08, 0xc2, 0x55, 0x64, 0xb4, 0xfe, 0x93, 0x3c, 0xb6, 0xfc, 0x14, 0x5f, 0xfe, 0xf8, 0x2b, 0xaa, 0x2f, 0xd0, 0x3a, 0x89, 0x67, 0x8f, 0xfb, 0x75, 0x85, }; static const unsigned char ecdh_secp521r1_5850_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5850_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5850_sharedsecret[] = { 0x01, 0xb3, 0x84, 0xb4, 0x84, 0x05, 0x39, 0x6f, 0xdc, 0xb2, 0xc5, 0x7f, 0x68, 0x0b, 0xe5, 0x2f, 0x91, 0xb7, 0xc8, 0x85, 0x22, 0x5e, 0xcf, 0xb4, 0xf7, 0x86, 0xce, 0x6c, 0x14, 0x90, 0x16, 0x2b, 0x3c, 0x15, 0xeb, 0xd8, 0xe6, 0x75, 0x5e, 0x46, 0x9a, 0x7f, 0xfc, 0xb9, 0x1c, 0xfd, 0x74, 0x06, 0xcf, 0x0a, 0xb9, 0x34, 0xa4, 0x64, 0x5c, 0x3a, 0x03, 0x99, 0x41, 0xe7, 0xd8, 0xcd, 0xc0, 0x7d, 0xda, 0xce, }; static const wycheproof_ecdh_test ecdh_secp521r1_5850 = { .name = "ecdh_secp521r1_5850", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5850_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5850_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5850_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5850_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 570 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5851 for ECDH, tcId is 571 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5851_peerpubkey[] = { 0x00, 0xd7, 0xfb, 0x4d, 0x55, 0x92, 0xe7, 0xcf, 0x72, 0x4e, 0x57, 0xe6, 0xab, 0x95, 0xe1, 0x58, 0xd8, 0x18, 0xf1, 0x97, 0xf7, 0x40, 0x31, 0x31, 0x8d, 0xc8, 0x3d, 0x3c, 0x2b, 0xec, 0x5c, 0xd8, 0x48, 0x64, 0x81, 0xfa, 0xc9, 0x7a, 0xd6, 0xb4, 0x81, 0xe8, 0x37, 0xab, 0xbf, 0x35, 0x2b, 0x99, 0x2c, 0x22, 0x64, 0xb1, 0x6f, 0x56, 0x3f, 0x84, 0x42, 0x52, 0x6b, 0xc6, 0xdd, 0x05, 0xa6, 0x37, 0x4d, 0xf8, 0x01, 0x61, 0xdd, 0x90, 0xc9, 0x08, 0xf5, 0x52, 0x4e, 0xe6, 0xb1, 0x57, 0xa8, 0x6f, 0x67, 0x34, 0xa2, 0x5e, 0x14, 0x06, 0x38, 0xbd, 0xd8, 0x39, 0x27, 0x6f, 0xb0, 0x9b, 0x3f, 0xad, 0x93, 0xe7, 0xba, 0x89, 0x9d, 0x6b, 0x6b, 0x3e, 0xd2, 0x4f, 0xff, 0x8d, 0x49, 0x9a, 0xd9, 0x8c, 0xc4, 0x5a, 0x35, 0xd6, 0x2b, 0x8c, 0x46, 0x1f, 0x7c, 0xc2, 0x56, 0x99, 0x72, 0x3a, 0x03, 0x3e, 0x5b, 0x1d, 0xbb, 0x03, }; static const unsigned char ecdh_secp521r1_5851_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5851_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5851_sharedsecret[] = { 0x00, 0x8b, 0x00, 0xb6, 0x5c, 0xbd, 0x72, 0xa5, 0x1c, 0x27, 0x9d, 0x1b, 0x59, 0x62, 0x8d, 0x4e, 0x7a, 0x1a, 0x84, 0x72, 0x77, 0xf6, 0xd8, 0xbd, 0x53, 0x11, 0xe5, 0xea, 0xe9, 0x45, 0xc8, 0x87, 0xe4, 0xc8, 0x02, 0x4d, 0xc4, 0x12, 0xeb, 0x42, 0x05, 0xc7, 0x61, 0x03, 0xea, 0x49, 0x3e, 0x25, 0xdf, 0x4c, 0xdf, 0x00, 0x11, 0x61, 0x9e, 0x3e, 0xfb, 0x29, 0x0d, 0x1c, 0xea, 0x8c, 0x29, 0x05, 0x81, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp521r1_5851 = { .name = "ecdh_secp521r1_5851", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5851_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5851_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5851_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5851_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 571 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5852 for ECDH, tcId is 572 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5852_peerpubkey[] = { 0x00, 0x58, 0x49, 0x93, 0x15, 0xbb, 0x22, 0x97, 0xd7, 0x8f, 0x8e, 0x74, 0xd3, 0x63, 0x4b, 0xbf, 0x83, 0xbd, 0xc1, 0x0e, 0xae, 0x30, 0x6d, 0x82, 0x60, 0xad, 0x0c, 0x62, 0xa4, 0x1c, 0xbf, 0x78, 0x92, 0x91, 0x44, 0xbb, 0xb6, 0x93, 0x71, 0xac, 0x92, 0x18, 0xd1, 0x8e, 0xee, 0x59, 0xfe, 0x82, 0x00, 0xc1, 0x01, 0x73, 0xd3, 0x80, 0xcd, 0x78, 0x43, 0x80, 0x8e, 0xb1, 0x6b, 0x2c, 0x4c, 0xdc, 0x56, 0xdc, 0x00, 0x4e, 0xcd, 0xec, 0xaf, 0xe5, 0x9b, 0x4a, 0xee, 0xd0, 0x84, 0xd2, 0xd7, 0x3a, 0xf0, 0x91, 0x1a, 0x7d, 0x54, 0x47, 0x48, 0x74, 0x68, 0x9b, 0xd6, 0xf7, 0x71, 0x6c, 0x16, 0xee, 0x5f, 0x4f, 0x29, 0x3f, 0x72, 0xba, 0x7d, 0x26, 0x98, 0x9e, 0x55, 0x1a, 0xda, 0xc0, 0x56, 0x8c, 0xd3, 0x45, 0xc5, 0xc9, 0x48, 0x23, 0x1d, 0x5e, 0x49, 0xbc, 0x26, 0x29, 0x01, 0x15, 0x18, 0x6b, 0x18, 0x5b, 0x5d, 0xed, }; static const unsigned char ecdh_secp521r1_5852_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5852_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5852_sharedsecret[] = { 0x00, 0x7d, 0xf5, 0x3f, 0x8d, 0x32, 0xa1, 0xea, 0x1f, 0x57, 0x34, 0xb5, 0x94, 0x56, 0x56, 0x4c, 0xac, 0x46, 0x1f, 0x1c, 0x3a, 0x94, 0x9d, 0x4f, 0xed, 0xff, 0x5e, 0xa9, 0x69, 0x28, 0xe7, 0xf2, 0xb4, 0x75, 0x35, 0x20, 0x33, 0x47, 0x60, 0xf1, 0x4e, 0xde, 0x15, 0xea, 0xa9, 0x64, 0xf6, 0xa0, 0xe5, 0x20, 0x34, 0x6c, 0x4f, 0x6b, 0x3b, 0x40, 0x1b, 0xa6, 0xe3, 0x01, 0xb5, 0x81, 0xdd, 0x49, 0xbd, 0x21, }; static const wycheproof_ecdh_test ecdh_secp521r1_5852 = { .name = "ecdh_secp521r1_5852", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5852_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5852_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5852_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5852_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 572 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5853 for ECDH, tcId is 573 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5853_peerpubkey[] = { 0x01, 0x1d, 0x26, 0x60, 0xb0, 0xf8, 0xfa, 0x5b, 0xba, 0xae, 0xb0, 0xe1, 0xd9, 0xe2, 0xa9, 0x64, 0x25, 0x58, 0x96, 0x9f, 0x13, 0xcd, 0x08, 0xc5, 0x1c, 0x57, 0x25, 0xb1, 0x9f, 0x18, 0x48, 0x1a, 0xf2, 0xbe, 0x6e, 0xdf, 0x0b, 0xc2, 0xce, 0x59, 0x06, 0x5b, 0xbe, 0xd4, 0xb1, 0xf3, 0x83, 0xf3, 0x2f, 0x52, 0xfc, 0x55, 0x91, 0x74, 0xf2, 0xa4, 0x02, 0x27, 0x5e, 0xe9, 0x51, 0xad, 0xea, 0x00, 0x09, 0x1d, 0x00, 0x5a, 0x34, 0x26, 0x94, 0x5e, 0x6c, 0xb7, 0x06, 0xb8, 0xe4, 0x20, 0x10, 0xa6, 0x9a, 0x47, 0xc0, 0x99, 0x48, 0xfe, 0xc3, 0xf2, 0xc5, 0x5f, 0x8d, 0xa5, 0xce, 0xf5, 0xec, 0xbf, 0x3f, 0x0e, 0xa3, 0xdc, 0x2c, 0xde, 0x92, 0xcb, 0xe2, 0xee, 0xb7, 0x6d, 0xc7, 0xfd, 0x33, 0x82, 0x54, 0x35, 0xee, 0x54, 0x57, 0xbe, 0xb7, 0xa6, 0x06, 0x9e, 0x3e, 0x34, 0x8d, 0x26, 0xed, 0x33, 0xe0, 0x7d, 0xcd, 0xb8, }; static const unsigned char ecdh_secp521r1_5853_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5853_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5853_sharedsecret[] = { 0x00, 0x72, 0x5e, 0x7b, 0x5b, 0x8f, 0x0d, 0x7e, 0xb2, 0xd4, 0xfc, 0x60, 0x45, 0xd6, 0x1b, 0x5b, 0x85, 0x05, 0xa1, 0x56, 0xfe, 0xf8, 0xfa, 0x4b, 0x1a, 0x2e, 0x35, 0x17, 0x60, 0xb2, 0xf6, 0x35, 0xa1, 0x83, 0x7f, 0x23, 0xa4, 0xc6, 0xb7, 0x24, 0xdf, 0x07, 0x6b, 0x21, 0x87, 0xb7, 0xe2, 0x13, 0xda, 0x63, 0x6b, 0x06, 0x25, 0x0c, 0x66, 0x19, 0x3a, 0x23, 0x5a, 0x4e, 0x3c, 0x90, 0xed, 0x86, 0xeb, 0x5b, }; static const wycheproof_ecdh_test ecdh_secp521r1_5853 = { .name = "ecdh_secp521r1_5853", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5853_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5853_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5853_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5853_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 573 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5854 for ECDH, tcId is 574 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5854_peerpubkey[] = { 0x00, 0x9c, 0x93, 0x06, 0x5d, 0x67, 0xcd, 0x83, 0x91, 0x87, 0x23, 0x3f, 0xbf, 0xb3, 0x3f, 0x80, 0x8f, 0x7a, 0x6c, 0xd4, 0x44, 0x92, 0x4e, 0xe4, 0xea, 0x0f, 0xd4, 0xbb, 0x9b, 0x3d, 0xbc, 0x8b, 0x4a, 0xff, 0xa7, 0xd3, 0xc8, 0xe3, 0xac, 0x2a, 0xbf, 0x82, 0x44, 0x9d, 0x7c, 0xf4, 0x16, 0x6c, 0x6c, 0x18, 0x1b, 0x4f, 0x60, 0x9f, 0xe0, 0x9e, 0x3f, 0xf7, 0xa2, 0xb6, 0x64, 0x0f, 0x81, 0x63, 0xb0, 0x81, 0x00, 0xb5, 0xf4, 0x4a, 0x94, 0x7b, 0x7d, 0x9b, 0xc7, 0x80, 0x69, 0xd1, 0x5d, 0x50, 0x49, 0xac, 0x1e, 0xe9, 0xda, 0x21, 0xe7, 0x81, 0x31, 0x52, 0x3e, 0xba, 0x4d, 0x9c, 0x9e, 0xe6, 0x72, 0x6d, 0x32, 0xbd, 0x4a, 0xd8, 0x49, 0xdb, 0xd7, 0x12, 0x70, 0x71, 0x0c, 0xcc, 0xb3, 0xcb, 0x88, 0xd2, 0x43, 0x18, 0x8f, 0xd0, 0x4a, 0xc3, 0x94, 0xc1, 0x25, 0xdc, 0xb6, 0x27, 0x35, 0x57, 0x0e, 0x12, 0x38, 0x90, }; static const unsigned char ecdh_secp521r1_5854_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5854_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5854_sharedsecret[] = { 0x00, 0x71, 0x8e, 0x90, 0x0a, 0x7e, 0xf9, 0x93, 0xd6, 0x71, 0xab, 0x0d, 0xc5, 0x41, 0x7c, 0x98, 0xf6, 0x1f, 0x6e, 0xb0, 0x73, 0x16, 0x41, 0xe5, 0x52, 0xff, 0x48, 0xfa, 0x4f, 0x93, 0x31, 0x8b, 0x8b, 0xff, 0xfa, 0xff, 0x2a, 0x1c, 0xfa, 0x4b, 0x75, 0x9d, 0x35, 0x1e, 0x56, 0x03, 0x6a, 0x61, 0xdd, 0x10, 0x61, 0xd8, 0x5c, 0x3d, 0x14, 0x4b, 0x8a, 0x88, 0x2f, 0x46, 0x98, 0x10, 0xc5, 0x8e, 0x06, 0x46, }; static const wycheproof_ecdh_test ecdh_secp521r1_5854 = { .name = "ecdh_secp521r1_5854", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5854_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5854_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5854_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5854_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 574 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5855 for ECDH, tcId is 575 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5855_peerpubkey[] = { 0x00, 0x3c, 0x1f, 0x1b, 0xe4, 0x61, 0xd3, 0xcf, 0x43, 0x02, 0xcf, 0x1f, 0xa8, 0xeb, 0x92, 0x1e, 0x5c, 0x28, 0x06, 0xfe, 0x56, 0x73, 0xf2, 0x7f, 0x6d, 0xa3, 0xa5, 0xbc, 0x2b, 0x3d, 0x78, 0xa8, 0xaa, 0xe7, 0xba, 0x41, 0x02, 0x36, 0xdd, 0x9e, 0x65, 0x09, 0x42, 0xcc, 0xdb, 0x11, 0x04, 0x23, 0xab, 0xf5, 0x3c, 0x5d, 0x13, 0x16, 0x76, 0x38, 0xff, 0x81, 0x62, 0xb4, 0xb9, 0x31, 0xa0, 0xbc, 0xbb, 0xa9, 0x00, 0x60, 0x8d, 0x65, 0x17, 0x00, 0x9d, 0x99, 0xfc, 0x3b, 0xf1, 0x16, 0x5e, 0x81, 0x99, 0x22, 0x1a, 0x79, 0x89, 0xf2, 0xeb, 0xda, 0x3b, 0x73, 0x9a, 0x74, 0x8c, 0xc9, 0x38, 0xd2, 0xdb, 0x3e, 0x69, 0x7c, 0x5f, 0x75, 0xc3, 0x2d, 0xd5, 0xbc, 0xc5, 0x57, 0x8e, 0x54, 0x9e, 0x42, 0x9f, 0x45, 0x4a, 0x03, 0x95, 0x79, 0xea, 0x1e, 0x79, 0x68, 0x51, 0xe7, 0x57, 0x8e, 0xfd, 0x28, 0x08, 0x58, 0xcc, 0x96, }; static const unsigned char ecdh_secp521r1_5855_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5855_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5855_sharedsecret[] = { 0x01, 0x61, 0xc8, 0x4c, 0x64, 0xcb, 0xd6, 0x5e, 0x71, 0x8a, 0xbf, 0xab, 0x1f, 0x82, 0x7a, 0xf3, 0x30, 0x64, 0xe7, 0x02, 0x9a, 0xe6, 0xfe, 0xeb, 0x11, 0xe0, 0x57, 0x18, 0x1b, 0x4b, 0x7f, 0xf3, 0xdb, 0xce, 0x4d, 0x85, 0x68, 0x62, 0xb4, 0x9a, 0xbb, 0xc0, 0xb9, 0x23, 0x16, 0x43, 0x61, 0x72, 0x8f, 0x62, 0x74, 0xd8, 0x90, 0x60, 0x3b, 0x7c, 0xe1, 0x87, 0xd7, 0xcc, 0xfc, 0x3f, 0xf1, 0x57, 0xb4, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5855 = { .name = "ecdh_secp521r1_5855", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5855_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5855_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5855_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5855_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 575 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5856 for ECDH, tcId is 576 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5856_peerpubkey[] = { 0x01, 0x0b, 0x7b, 0x6f, 0xad, 0xa1, 0xf6, 0x02, 0xc9, 0xe9, 0x7d, 0xa4, 0xac, 0xd7, 0xeb, 0xfd, 0x2f, 0x9f, 0x8e, 0x30, 0xe0, 0xb3, 0x0b, 0x77, 0xfb, 0x39, 0x54, 0xde, 0xaa, 0xfa, 0xa2, 0xae, 0x26, 0x28, 0xba, 0x04, 0x2b, 0x92, 0x57, 0xa0, 0xb6, 0x11, 0xdf, 0x77, 0x0a, 0x7a, 0xd7, 0x0d, 0xa7, 0xb9, 0xa2, 0x0b, 0xf4, 0xd6, 0xf8, 0x05, 0x12, 0xce, 0xe7, 0x4b, 0xa2, 0x14, 0xc6, 0x1c, 0x6d, 0x66, 0x00, 0x20, 0x61, 0xf8, 0x90, 0xcd, 0x81, 0xb9, 0xb4, 0x9c, 0x91, 0x00, 0x7a, 0x32, 0x5d, 0xdb, 0x67, 0xc4, 0x60, 0x62, 0xbb, 0x64, 0x26, 0x6d, 0x3e, 0x72, 0x93, 0x42, 0x49, 0xcb, 0x72, 0x62, 0xb8, 0xb9, 0x2a, 0x73, 0x72, 0x34, 0xf6, 0xe8, 0x5b, 0x74, 0xf8, 0x18, 0xb9, 0x54, 0xab, 0xbc, 0x35, 0x29, 0xda, 0x11, 0x6c, 0x03, 0x21, 0xf8, 0x2e, 0x21, 0xdd, 0x25, 0xe5, 0x3c, 0x07, 0x3a, 0xbb, 0xe1, }; static const unsigned char ecdh_secp521r1_5856_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5856_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5856_sharedsecret[] = { 0x01, 0x72, 0xbd, 0xb2, 0x4a, 0xc7, 0xef, 0x74, 0x1a, 0x94, 0xc1, 0x5a, 0xcc, 0x7e, 0x20, 0x8d, 0x8d, 0x01, 0x18, 0x3b, 0xe1, 0xc4, 0x5f, 0x5e, 0x51, 0x0d, 0xa1, 0xc0, 0x80, 0x91, 0x02, 0xa9, 0x60, 0x3f, 0xe3, 0x0d, 0xcb, 0xb0, 0x33, 0x25, 0x08, 0x6a, 0xed, 0x94, 0xba, 0x23, 0x42, 0x2b, 0xe9, 0x40, 0x42, 0x87, 0xcd, 0xea, 0xe4, 0xa2, 0x88, 0xaf, 0xdd, 0xc2, 0xaa, 0xa0, 0xe8, 0xcb, 0xc4, 0x15, }; static const wycheproof_ecdh_test ecdh_secp521r1_5856 = { .name = "ecdh_secp521r1_5856", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5856_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5856_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5856_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5856_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 576 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5857 for ECDH, tcId is 577 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5857_peerpubkey[] = { 0x01, 0x1d, 0x28, 0xb1, 0xa9, 0x5f, 0xbf, 0x27, 0xa4, 0xad, 0x21, 0xef, 0x46, 0x13, 0xe1, 0x98, 0x3c, 0xce, 0x35, 0x4c, 0x01, 0x8a, 0xa7, 0x57, 0x33, 0x0f, 0xe1, 0x35, 0x72, 0xf8, 0x48, 0xab, 0xfa, 0x25, 0x58, 0x98, 0xd1, 0x39, 0x8f, 0x13, 0xce, 0xb0, 0x6b, 0x3b, 0x53, 0x29, 0x2d, 0x00, 0x0e, 0x87, 0xdd, 0x20, 0xdd, 0x19, 0x54, 0x76, 0x3a, 0x94, 0xfd, 0xce, 0xb1, 0x28, 0xfe, 0x63, 0xaf, 0x1b, 0x01, 0x11, 0xff, 0xc1, 0xb2, 0x68, 0x66, 0xdc, 0xff, 0x9e, 0x42, 0x10, 0x4a, 0x12, 0x1a, 0x24, 0xef, 0x5a, 0x15, 0xd7, 0x81, 0x41, 0xcc, 0x93, 0xc2, 0x61, 0x67, 0x39, 0x89, 0x75, 0x91, 0x6e, 0xaf, 0xc8, 0xad, 0x8b, 0xaa, 0xe1, 0x3f, 0x59, 0xdf, 0x23, 0xfe, 0x79, 0xaa, 0xfb, 0x6e, 0x20, 0x78, 0xba, 0x46, 0x5c, 0x6b, 0x14, 0xe4, 0x4c, 0x06, 0x0e, 0xea, 0xaa, 0x1a, 0xe6, 0xf4, 0xc7, 0xc9, 0x79, }; static const unsigned char ecdh_secp521r1_5857_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5857_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5857_sharedsecret[] = { 0x01, 0x24, 0xea, 0xcf, 0xd5, 0x98, 0xb6, 0xfc, 0x20, 0xb9, 0xf0, 0x18, 0x73, 0xed, 0x3c, 0x55, 0xb0, 0xdb, 0xb3, 0xf9, 0xdb, 0xc1, 0x8a, 0x05, 0x23, 0x3e, 0x59, 0xa4, 0xec, 0x72, 0x70, 0xd0, 0x12, 0xb7, 0x90, 0x84, 0x0d, 0x22, 0x05, 0x1c, 0x4f, 0x1c, 0x55, 0xa2, 0x52, 0xe8, 0xad, 0xb1, 0x0d, 0xae, 0x85, 0x55, 0x99, 0xe2, 0x2a, 0xbc, 0xb3, 0xe2, 0x39, 0x04, 0xaa, 0x07, 0x67, 0xe3, 0xcc, 0x84, }; static const wycheproof_ecdh_test ecdh_secp521r1_5857 = { .name = "ecdh_secp521r1_5857", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5857_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5857_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5857_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5857_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 577 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5858 for ECDH, tcId is 578 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5858_peerpubkey[] = { 0x01, 0x87, 0xb3, 0x11, 0x1a, 0x71, 0x8b, 0x18, 0x07, 0x7d, 0x97, 0x89, 0x12, 0x5e, 0xbd, 0xb6, 0xfd, 0xec, 0x77, 0x89, 0x08, 0x75, 0x44, 0x0d, 0x36, 0x69, 0x2e, 0x30, 0x15, 0x9b, 0x4c, 0xfb, 0xde, 0x18, 0x07, 0xb3, 0xeb, 0xb1, 0xb1, 0xa8, 0xc7, 0xdb, 0x00, 0xc1, 0xfa, 0x66, 0xcf, 0x32, 0xc5, 0xf9, 0xae, 0x0f, 0x59, 0x41, 0xe3, 0x2d, 0x7c, 0x7d, 0x2a, 0xf0, 0xfa, 0x98, 0x83, 0x2f, 0x01, 0xba, 0x00, 0x8f, 0x7d, 0xef, 0x20, 0x63, 0xa7, 0x79, 0x76, 0x25, 0x23, 0x67, 0x97, 0xfb, 0xea, 0xf8, 0xd0, 0x7d, 0x74, 0xe0, 0x7d, 0x13, 0x9e, 0x6d, 0x73, 0x58, 0x3d, 0x2d, 0x45, 0x0a, 0x77, 0x94, 0xa8, 0xf7, 0x12, 0xff, 0x78, 0x52, 0xaa, 0xa2, 0x3d, 0xa6, 0xee, 0x81, 0x42, 0xd9, 0xb6, 0x97, 0x56, 0x8f, 0x7f, 0x4a, 0x63, 0xa8, 0x7f, 0x97, 0xd6, 0x35, 0x4f, 0xc4, 0x69, 0x59, 0x64, 0x06, 0x92, 0x6c, }; static const unsigned char ecdh_secp521r1_5858_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5858_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5858_sharedsecret[] = { 0x01, 0x2f, 0xdc, 0xff, 0x44, 0xa9, 0xaf, 0x94, 0xf1, 0x8b, 0x50, 0xf4, 0x9c, 0x19, 0xa1, 0xe0, 0xe6, 0xf9, 0x99, 0x96, 0x4d, 0x5c, 0xa4, 0x32, 0x7f, 0x28, 0x0b, 0x2e, 0xdb, 0xab, 0xf8, 0x23, 0x5d, 0x2e, 0x2b, 0xa2, 0xe1, 0x01, 0xb3, 0x91, 0xd0, 0xdc, 0x1a, 0xa0, 0x67, 0xd3, 0x59, 0x3c, 0xaf, 0xb3, 0xc5, 0xa9, 0x9c, 0x05, 0x31, 0x65, 0xfa, 0x28, 0xd6, 0x77, 0x99, 0x0e, 0xa8, 0x86, 0xfc, 0x7a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5858 = { .name = "ecdh_secp521r1_5858", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5858_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5858_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5858_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5858_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 578 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5859 for ECDH, tcId is 579 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5859_peerpubkey[] = { 0x00, 0x9a, 0x64, 0xba, 0x8c, 0x66, 0x62, 0xbb, 0x51, 0x55, 0x3f, 0x85, 0x60, 0x8a, 0xa2, 0xe5, 0x22, 0xbb, 0xff, 0xd1, 0xb4, 0x4e, 0xf6, 0x46, 0xde, 0x09, 0x38, 0xf6, 0x26, 0x79, 0x90, 0xdd, 0x9d, 0x7f, 0x52, 0x50, 0x51, 0x36, 0xb6, 0x76, 0x20, 0xaf, 0xc1, 0xf6, 0xd2, 0x5a, 0xcf, 0x6d, 0x1d, 0xc3, 0x97, 0x2c, 0x3a, 0x88, 0x49, 0x3a, 0xe3, 0x92, 0x72, 0x30, 0x22, 0x5c, 0x03, 0xa8, 0x13, 0x5d, 0x00, 0x89, 0x52, 0xc1, 0x5d, 0xc9, 0x44, 0x61, 0x87, 0x3c, 0x23, 0x2a, 0x2f, 0xbe, 0xb4, 0xa7, 0xa4, 0x68, 0x7e, 0x64, 0x1d, 0x10, 0xb3, 0x34, 0x8d, 0x17, 0xa3, 0x1e, 0xa3, 0xfb, 0xf1, 0x7c, 0xed, 0x90, 0x65, 0xbf, 0xcd, 0xdf, 0xd9, 0x2a, 0xc7, 0x42, 0xce, 0xe6, 0x1d, 0x5b, 0xf5, 0x82, 0xb9, 0x58, 0xd2, 0x53, 0xe9, 0x39, 0xce, 0x5c, 0xf9, 0x2c, 0xe7, 0x96, 0x15, 0x43, 0x3d, 0x06, 0x9d, 0x8d, }; static const unsigned char ecdh_secp521r1_5859_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5859_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5859_sharedsecret[] = { 0x01, 0xcd, 0xf3, 0xf0, 0xc8, 0x13, 0xba, 0xdf, 0x74, 0x54, 0xde, 0x52, 0x0d, 0x12, 0x48, 0xb2, 0x98, 0x50, 0x21, 0x94, 0x50, 0x4a, 0xfd, 0x59, 0x04, 0x08, 0x09, 0x41, 0xcb, 0x85, 0xa3, 0x71, 0x56, 0x28, 0x48, 0xe4, 0x75, 0x60, 0x11, 0x71, 0x35, 0x93, 0xaf, 0x46, 0x14, 0x5d, 0x06, 0x52, 0xb2, 0xed, 0xce, 0x18, 0xd5, 0xc9, 0xe4, 0xa4, 0xcd, 0x55, 0x37, 0x0b, 0xcd, 0x60, 0x83, 0x99, 0x06, 0x28, }; static const wycheproof_ecdh_test ecdh_secp521r1_5859 = { .name = "ecdh_secp521r1_5859", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5859_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5859_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5859_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5859_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 579 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5860 for ECDH, tcId is 580 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5860_peerpubkey[] = { 0x00, 0x39, 0x3b, 0xd8, 0xfe, 0x3c, 0x49, 0xf7, 0x88, 0x5e, 0xfb, 0xca, 0xb8, 0x79, 0x62, 0xef, 0x12, 0x45, 0x8c, 0x18, 0xf2, 0x55, 0xf0, 0x1a, 0x24, 0xa1, 0xab, 0x79, 0x5c, 0xbf, 0xe2, 0xb4, 0xdd, 0xf6, 0xe8, 0xac, 0x25, 0x3e, 0x4f, 0xd9, 0x48, 0x43, 0x77, 0xf5, 0x9d, 0xdc, 0x7c, 0x08, 0x79, 0x96, 0x38, 0x6e, 0xd9, 0xa1, 0x65, 0xcc, 0xa8, 0x1f, 0x85, 0x3c, 0x91, 0x8b, 0xe1, 0xc9, 0xd3, 0x99, 0x00, 0x7c, 0x47, 0xac, 0xa4, 0xae, 0xe1, 0x79, 0x5d, 0x41, 0x4c, 0x43, 0x34, 0xce, 0x4b, 0xfe, 0xca, 0xfa, 0xbf, 0x3c, 0x33, 0x91, 0xa0, 0x2e, 0x93, 0x32, 0xd7, 0xf1, 0x7e, 0xc1, 0xb5, 0xc5, 0x42, 0x00, 0x9f, 0x98, 0x0f, 0xba, 0xf3, 0xea, 0xdc, 0xc1, 0x92, 0xf4, 0x00, 0xb9, 0xad, 0x24, 0x00, 0x22, 0x0c, 0x09, 0x0a, 0x75, 0x87, 0x84, 0xdb, 0xa6, 0x6d, 0xe4, 0x06, 0x00, 0xc6, 0x26, 0xe4, 0xa1, }; static const unsigned char ecdh_secp521r1_5860_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5860_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5860_sharedsecret[] = { 0x01, 0xd1, 0x08, 0x25, 0xbb, 0x71, 0xd0, 0x94, 0xea, 0x2b, 0x01, 0x85, 0x55, 0x83, 0xa8, 0x22, 0x68, 0x71, 0xeb, 0xe7, 0xd6, 0xbc, 0xae, 0x06, 0x42, 0x27, 0xbd, 0xd8, 0x41, 0x78, 0x8d, 0x1c, 0x48, 0x9b, 0x94, 0xdb, 0x20, 0xc3, 0x95, 0x62, 0x45, 0x0d, 0xb8, 0x47, 0x35, 0xf9, 0x28, 0x52, 0x59, 0xb3, 0x4c, 0x5d, 0x3b, 0x43, 0xa4, 0x87, 0xf0, 0x70, 0x86, 0x32, 0xb7, 0x5d, 0xe2, 0xeb, 0xe1, 0x04, }; static const wycheproof_ecdh_test ecdh_secp521r1_5860 = { .name = "ecdh_secp521r1_5860", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5860_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5860_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5860_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5860_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 580 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5861 for ECDH, tcId is 581 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5861_peerpubkey[] = { 0x01, 0xb4, 0xb1, 0x9a, 0x12, 0x5b, 0xc0, 0xcb, 0xd0, 0x60, 0x60, 0x64, 0xa0, 0x51, 0xaf, 0x4a, 0xb1, 0x7f, 0x79, 0x18, 0x80, 0x47, 0x5f, 0x00, 0xa1, 0xfb, 0xcd, 0x4a, 0x79, 0x7b, 0x40, 0x1b, 0xda, 0x39, 0x0e, 0xf7, 0x82, 0x6f, 0xa0, 0x16, 0x82, 0x65, 0x1d, 0x72, 0xcb, 0x13, 0x53, 0x70, 0x4d, 0x7a, 0x18, 0x02, 0x7c, 0x4d, 0x60, 0x93, 0x34, 0xb2, 0xe8, 0xc5, 0xd4, 0xde, 0xf8, 0x6e, 0xa0, 0xe4, 0x01, 0x90, 0xe4, 0xcd, 0x6a, 0x4e, 0x0b, 0xa9, 0xea, 0x45, 0xd3, 0xb7, 0x14, 0x4f, 0x74, 0xaa, 0xf1, 0x98, 0x64, 0x62, 0x55, 0x8c, 0x8b, 0x3a, 0x10, 0x50, 0x18, 0x82, 0xc2, 0x66, 0x9e, 0xc2, 0x65, 0xef, 0xc1, 0x52, 0xf5, 0x51, 0x0f, 0x3e, 0x99, 0x0d, 0x67, 0x21, 0x84, 0x71, 0xca, 0xfc, 0x66, 0xc8, 0x45, 0xcf, 0x69, 0xe5, 0xef, 0xf6, 0xe0, 0x30, 0x8c, 0xc5, 0x9a, 0xc5, 0x9a, 0x40, 0x76, 0x67, }; static const unsigned char ecdh_secp521r1_5861_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5861_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5861_sharedsecret[] = { 0x00, 0x31, 0xeb, 0x14, 0x66, 0x16, 0xd7, 0xbc, 0x61, 0xff, 0xb5, 0x53, 0xb7, 0xca, 0x85, 0x22, 0xa5, 0xb6, 0x08, 0x8d, 0x23, 0xd5, 0xca, 0x6e, 0x30, 0xb2, 0x01, 0xb8, 0x6d, 0xa2, 0x37, 0x5d, 0x1f, 0x6c, 0xc4, 0x8e, 0x88, 0xa2, 0x4b, 0x52, 0xb0, 0xe2, 0x20, 0x45, 0xca, 0x7c, 0x50, 0x6c, 0x20, 0x69, 0x30, 0x61, 0x9c, 0x28, 0x9f, 0xc4, 0xa6, 0x88, 0x43, 0x2a, 0xde, 0xe4, 0x70, 0x28, 0x80, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp521r1_5861 = { .name = "ecdh_secp521r1_5861", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5861_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5861_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5861_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5861_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 581 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5862 for ECDH, tcId is 582 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5862_peerpubkey[] = { 0x00, 0xe7, 0xfa, 0x4a, 0xc2, 0x36, 0x5a, 0xf9, 0x37, 0x8d, 0xd2, 0xc8, 0x1f, 0x32, 0xf9, 0xef, 0x55, 0xd4, 0xd3, 0x41, 0xac, 0x32, 0x4e, 0xb4, 0x69, 0x23, 0xec, 0x7f, 0x15, 0x44, 0x8c, 0x37, 0xef, 0x60, 0x7c, 0x97, 0x5c, 0x35, 0x27, 0x54, 0xf4, 0x72, 0x87, 0x3e, 0x46, 0x9f, 0x8d, 0x37, 0xd3, 0x8d, 0x97, 0xd1, 0x61, 0xa7, 0xb9, 0xb1, 0xda, 0xe2, 0xe9, 0x65, 0xfd, 0xcc, 0x95, 0x97, 0x47, 0xba, 0x01, 0xe6, 0xc0, 0x96, 0x39, 0x72, 0x94, 0x99, 0xb6, 0x07, 0x33, 0x0d, 0x7d, 0xab, 0xa2, 0xb5, 0xc1, 0xef, 0xae, 0x4f, 0x12, 0x1e, 0x54, 0x0b, 0xf7, 0xe6, 0x91, 0x80, 0x9a, 0x05, 0x55, 0x42, 0x28, 0x4c, 0xb5, 0xee, 0x87, 0x47, 0x55, 0x89, 0xce, 0xc6, 0x63, 0xb5, 0x3f, 0x21, 0xb9, 0x12, 0x31, 0xa6, 0x38, 0xd8, 0x40, 0x2e, 0x35, 0x8f, 0xd1, 0x69, 0x95, 0x34, 0x91, 0xab, 0x39, 0x53, 0x12, 0x2a, }; static const unsigned char ecdh_secp521r1_5862_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5862_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5862_sharedsecret[] = { 0x00, 0xa8, 0xf2, 0xda, 0xd7, 0x49, 0xea, 0x1e, 0x15, 0x67, 0x35, 0x86, 0xbb, 0x67, 0xb5, 0xc8, 0x5f, 0xf8, 0xf4, 0x5c, 0x72, 0xef, 0x84, 0x47, 0xef, 0xef, 0x3e, 0xfc, 0x62, 0x6a, 0x6a, 0x10, 0xca, 0x88, 0x45, 0x16, 0x43, 0xb4, 0x34, 0xa2, 0x51, 0x76, 0xcb, 0xae, 0x77, 0x89, 0x9a, 0x3e, 0x32, 0xa4, 0x48, 0x47, 0x81, 0xb7, 0x00, 0xe0, 0x38, 0x57, 0xbd, 0xd1, 0x58, 0xad, 0x3c, 0xfb, 0xf2, 0x00, }; static const wycheproof_ecdh_test ecdh_secp521r1_5862 = { .name = "ecdh_secp521r1_5862", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5862_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5862_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5862_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5862_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 582 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5863 for ECDH, tcId is 583 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5863_peerpubkey[] = { 0x01, 0x04, 0xf4, 0x3f, 0xfb, 0xb3, 0x7c, 0xe5, 0xd0, 0xea, 0x95, 0x61, 0x71, 0xc0, 0x70, 0xd6, 0x14, 0x7a, 0xcf, 0xa9, 0x51, 0x9b, 0x88, 0x79, 0x95, 0x83, 0x2a, 0x0e, 0xb8, 0x01, 0xe0, 0xdb, 0xc6, 0x68, 0x96, 0xdf, 0xaf, 0xf9, 0x44, 0x09, 0xb4, 0x97, 0xf4, 0xa4, 0x16, 0xcc, 0xd8, 0x27, 0x50, 0xda, 0x47, 0xa5, 0x20, 0xb8, 0x70, 0xdf, 0xe6, 0xcd, 0x37, 0x64, 0xf0, 0xe3, 0xc0, 0xf1, 0xbc, 0x3b, 0x00, 0xa5, 0xf3, 0xdb, 0x99, 0x39, 0xc2, 0x11, 0x47, 0xab, 0x44, 0x88, 0xc8, 0x12, 0x8b, 0xa0, 0x56, 0x4f, 0x19, 0x2f, 0x27, 0x88, 0x56, 0x01, 0x45, 0xd2, 0xb1, 0x4a, 0x85, 0x28, 0x16, 0xb4, 0x85, 0x1e, 0xf6, 0x9a, 0x46, 0x2c, 0x98, 0x54, 0xba, 0xce, 0x72, 0x0e, 0x46, 0x29, 0xed, 0x55, 0xaf, 0x9d, 0x2c, 0x7d, 0xa7, 0x4c, 0xd3, 0x09, 0xfc, 0x55, 0x66, 0xe1, 0x16, 0x30, 0x74, 0x6a, 0x35, 0x22, }; static const unsigned char ecdh_secp521r1_5863_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5863_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5863_sharedsecret[] = { 0x01, 0xee, 0x85, 0xa3, 0xb6, 0xd3, 0x5d, 0x0d, 0xf6, 0xa4, 0x45, 0x59, 0x3c, 0x94, 0x60, 0x99, 0x32, 0x53, 0x0e, 0x25, 0xee, 0x71, 0x90, 0x9c, 0x56, 0x81, 0xae, 0x39, 0x8a, 0x38, 0x30, 0x9e, 0x86, 0x99, 0xe9, 0x4e, 0x0f, 0x23, 0xf5, 0x6c, 0x64, 0xa0, 0xd0, 0x4f, 0xc1, 0x0e, 0x28, 0x96, 0xc5, 0x0f, 0x21, 0x3f, 0x12, 0xc6, 0x85, 0x15, 0x1f, 0xa4, 0x0f, 0x18, 0xac, 0x6d, 0x8e, 0xd8, 0x59, 0x06, }; static const wycheproof_ecdh_test ecdh_secp521r1_5863 = { .name = "ecdh_secp521r1_5863", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5863_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5863_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5863_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5863_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 583 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5864 for ECDH, tcId is 584 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5864_peerpubkey[] = { 0x01, 0x25, 0x0e, 0xca, 0xd8, 0x94, 0xd3, 0xfd, 0xff, 0xb5, 0x80, 0x09, 0x9c, 0x2c, 0x30, 0x5b, 0xd5, 0xd9, 0x03, 0xfe, 0xdd, 0x2e, 0x53, 0x2e, 0xa5, 0x8d, 0x29, 0xd6, 0x3c, 0x32, 0x81, 0xb3, 0x9e, 0x6f, 0x47, 0xa1, 0x1b, 0x3b, 0xe9, 0x7c, 0x1c, 0x04, 0xe0, 0x42, 0xd3, 0xf1, 0x9b, 0xd0, 0xcb, 0xe0, 0xef, 0x41, 0x21, 0xa2, 0x57, 0x27, 0x9b, 0xbd, 0x76, 0xc6, 0x6a, 0x05, 0xe8, 0xd2, 0x22, 0xd0, 0x01, 0xa2, 0xb3, 0xce, 0x41, 0xca, 0x09, 0xb5, 0xb6, 0x28, 0x7b, 0x4c, 0x32, 0x8a, 0x31, 0x5d, 0xca, 0x24, 0x3c, 0x72, 0x6e, 0x86, 0x16, 0x62, 0x9d, 0x2b, 0x37, 0x50, 0x6b, 0x7e, 0xb3, 0x1e, 0xb7, 0x6f, 0x51, 0x3d, 0xec, 0xb0, 0xab, 0x20, 0xa5, 0x2c, 0x0c, 0x26, 0x0a, 0x92, 0x0e, 0x92, 0xae, 0x1a, 0x62, 0x9f, 0xb8, 0x17, 0xdf, 0x5a, 0xd6, 0xd7, 0xe6, 0x23, 0x67, 0xac, 0x5e, 0x8e, 0xe5, 0xf0, }; static const unsigned char ecdh_secp521r1_5864_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5864_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5864_sharedsecret[] = { 0x01, 0x1e, 0x7d, 0x52, 0x9d, 0xc9, 0x61, 0x52, 0x09, 0x16, 0x24, 0x01, 0xab, 0x2b, 0xb7, 0x17, 0x37, 0x81, 0x09, 0xd8, 0x7a, 0x1a, 0xc8, 0x6b, 0x98, 0xb7, 0x95, 0x4e, 0xa9, 0x1b, 0x96, 0x0b, 0x08, 0xfa, 0x93, 0x74, 0xea, 0x72, 0x70, 0x35, 0x19, 0xc3, 0x9c, 0x69, 0x79, 0x72, 0x40, 0xc9, 0x77, 0x81, 0x7e, 0x2b, 0x34, 0xb5, 0x32, 0x26, 0x65, 0xdd, 0x51, 0x82, 0x51, 0xbc, 0xc1, 0xfa, 0x97, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp521r1_5864 = { .name = "ecdh_secp521r1_5864", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5864_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5864_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5864_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5864_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 584 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5865 for ECDH, tcId is 585 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5865_peerpubkey[] = { 0x00, 0x19, 0xf6, 0xff, 0xd8, 0x1d, 0x01, 0x2b, 0x70, 0x80, 0x4c, 0x30, 0x85, 0x94, 0xb4, 0x70, 0x66, 0x51, 0x6b, 0xbb, 0x33, 0x9b, 0x44, 0xab, 0xad, 0xb4, 0xda, 0x19, 0x43, 0x99, 0xd1, 0xb4, 0xd5, 0xfc, 0x98, 0xdd, 0x9d, 0x0d, 0xc3, 0x63, 0xa9, 0xbc, 0xb1, 0x43, 0x96, 0x32, 0x7f, 0xfa, 0xdb, 0x39, 0xf9, 0xb3, 0x57, 0xb7, 0xe6, 0x31, 0xa8, 0x4b, 0x23, 0x03, 0x93, 0x96, 0xf1, 0xcc, 0x96, 0xf1, 0x01, 0xa6, 0xa8, 0xc0, 0xaf, 0x8e, 0x08, 0x3a, 0x9f, 0x8c, 0x19, 0xcb, 0x0f, 0xba, 0xe7, 0xb4, 0x52, 0x3c, 0x4c, 0x54, 0xfc, 0x9f, 0xfe, 0xfb, 0x73, 0x51, 0x13, 0xf5, 0x28, 0xf7, 0xa3, 0xe9, 0x66, 0x25, 0x71, 0x06, 0x08, 0x61, 0xdd, 0x6c, 0x9c, 0x71, 0xb3, 0x3d, 0x99, 0xb5, 0x3d, 0x71, 0x6c, 0x36, 0xa8, 0xa9, 0x02, 0xbc, 0xa6, 0x4c, 0x46, 0xc7, 0xe3, 0x4a, 0x2e, 0x88, 0xdb, 0xc9, 0x6b, 0x6d, }; static const unsigned char ecdh_secp521r1_5865_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5865_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5865_sharedsecret[] = { 0x00, 0x6b, 0x46, 0xbb, 0xda, 0x9f, 0x37, 0x96, 0x1a, 0xec, 0x9e, 0xfc, 0xd6, 0xfc, 0xba, 0xf4, 0xe2, 0x5b, 0x66, 0x74, 0xea, 0x37, 0xf8, 0xd8, 0x2c, 0xa2, 0xed, 0xcc, 0x06, 0x35, 0x3e, 0x24, 0xd0, 0x9e, 0xa5, 0xd8, 0x61, 0x36, 0xfe, 0xde, 0xe3, 0x4e, 0x0c, 0x39, 0x1b, 0x85, 0x90, 0x72, 0xab, 0x91, 0x91, 0x8b, 0x51, 0xd0, 0x80, 0x0a, 0xb2, 0x02, 0x55, 0xf4, 0x38, 0xc6, 0x60, 0x88, 0x2e, 0x91, }; static const wycheproof_ecdh_test ecdh_secp521r1_5865 = { .name = "ecdh_secp521r1_5865", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5865_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5865_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5865_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5865_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 585 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5866 for ECDH, tcId is 586 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5866_peerpubkey[] = { 0x00, 0x77, 0xd8, 0x97, 0xcf, 0xf6, 0xa2, 0xa3, 0x44, 0x6f, 0xb3, 0x85, 0x28, 0xad, 0x80, 0xcf, 0x3c, 0xc5, 0x03, 0xad, 0x93, 0xda, 0x06, 0xc7, 0xc5, 0xa5, 0x25, 0xcf, 0x9a, 0x7b, 0xba, 0x33, 0xd7, 0x9d, 0x68, 0x6a, 0x0c, 0x53, 0x29, 0x0a, 0x45, 0x94, 0x24, 0x05, 0x40, 0xa0, 0x2a, 0x85, 0xcf, 0x14, 0x33, 0x6a, 0x23, 0xda, 0x56, 0xef, 0xdb, 0x56, 0x2b, 0x06, 0x56, 0x80, 0x0f, 0xf3, 0x96, 0xa4, 0x01, 0x20, 0x77, 0x9a, 0xe0, 0xdf, 0x7c, 0x1d, 0x92, 0x8c, 0xa1, 0x8d, 0x63, 0xfc, 0xab, 0xf0, 0xd2, 0x1b, 0xd4, 0x37, 0xc8, 0x6e, 0x40, 0x96, 0x6b, 0xae, 0x8c, 0x9f, 0xef, 0x2a, 0xc7, 0x27, 0x38, 0xa7, 0x5b, 0xe4, 0x99, 0x38, 0xab, 0x99, 0x17, 0x03, 0x4a, 0x25, 0x36, 0xc0, 0x23, 0x69, 0x5e, 0x82, 0x1f, 0x70, 0xb4, 0x58, 0x33, 0x9b, 0xd8, 0xde, 0x21, 0x8a, 0x5c, 0xf7, 0x41, 0xe5, 0x5a, 0x7d, }; static const unsigned char ecdh_secp521r1_5866_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5866_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5866_sharedsecret[] = { 0x01, 0x10, 0x99, 0x89, 0xb6, 0x2a, 0x37, 0x93, 0x97, 0x23, 0x2c, 0x23, 0x8c, 0xf5, 0x7d, 0x81, 0x88, 0x4b, 0xab, 0xb3, 0x9b, 0x04, 0x1f, 0xbf, 0x0f, 0x0b, 0x48, 0xbb, 0x7d, 0x79, 0x49, 0x44, 0xf9, 0xa3, 0x02, 0xde, 0x0e, 0xcc, 0xaa, 0x9a, 0x56, 0x25, 0xb2, 0x22, 0xc6, 0x69, 0x2d, 0x24, 0x07, 0x76, 0x54, 0xf1, 0x98, 0x36, 0xb8, 0xf1, 0x4d, 0x86, 0x22, 0xba, 0x14, 0xee, 0xac, 0xe2, 0x74, 0xc9, }; static const wycheproof_ecdh_test ecdh_secp521r1_5866 = { .name = "ecdh_secp521r1_5866", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5866_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5866_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5866_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5866_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 586 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5867 for ECDH, tcId is 587 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5867_peerpubkey[] = { 0x01, 0xa0, 0x27, 0x19, 0x24, 0x4d, 0xf8, 0x07, 0x86, 0x47, 0x07, 0xfb, 0xc6, 0xc5, 0x28, 0x5d, 0xa7, 0x84, 0x30, 0x1d, 0xab, 0xff, 0xb8, 0x58, 0x53, 0xda, 0xf9, 0x46, 0xf8, 0xd7, 0x15, 0x98, 0xfa, 0x95, 0xf7, 0xc9, 0x0a, 0x3d, 0x5f, 0x06, 0xe4, 0x50, 0x51, 0x79, 0x9c, 0x16, 0xf9, 0xaf, 0x0a, 0xfe, 0x27, 0x5f, 0xf4, 0xf5, 0x1e, 0x83, 0xe1, 0xbf, 0xab, 0xc1, 0x81, 0x76, 0xf2, 0xbc, 0x4a, 0x74, 0x01, 0x54, 0xde, 0x99, 0xc7, 0x4d, 0xd2, 0x63, 0x45, 0x60, 0x34, 0xab, 0xdf, 0x5b, 0x2a, 0x17, 0x3e, 0x31, 0x84, 0x42, 0xd1, 0x32, 0x00, 0xf4, 0x09, 0x0a, 0xaa, 0x27, 0x14, 0x52, 0x4c, 0x43, 0xa8, 0x5e, 0xc5, 0xf6, 0x07, 0xd5, 0xf3, 0x55, 0x20, 0x5f, 0xef, 0x0f, 0x4a, 0xa3, 0xb4, 0x1b, 0x2f, 0xf7, 0x9e, 0xca, 0x36, 0x1f, 0xc2, 0x88, 0x78, 0xfd, 0x4e, 0x26, 0xbc, 0xc5, 0x7a, 0xc0, 0x14, 0xd8, }; static const unsigned char ecdh_secp521r1_5867_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5867_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5867_sharedsecret[] = { 0x01, 0x05, 0x4b, 0x61, 0x91, 0xcb, 0x25, 0x7e, 0x0f, 0x18, 0xd0, 0x9c, 0xf4, 0x54, 0xfc, 0xa4, 0xc4, 0x57, 0x16, 0xea, 0x00, 0xf1, 0x67, 0xb2, 0xfb, 0xd2, 0xd0, 0x28, 0xb6, 0x6c, 0x90, 0x3b, 0x5e, 0x75, 0x1a, 0x6c, 0xaa, 0xcc, 0xf4, 0xed, 0x18, 0xe2, 0x86, 0x35, 0xd8, 0x45, 0x4e, 0xd3, 0x81, 0x1e, 0x1c, 0x4b, 0x36, 0x38, 0xeb, 0x42, 0x0a, 0xd2, 0x1e, 0xa4, 0xfd, 0xbd, 0xba, 0xda, 0xe8, 0x66, }; static const wycheproof_ecdh_test ecdh_secp521r1_5867 = { .name = "ecdh_secp521r1_5867", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5867_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5867_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5867_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5867_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 587 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5868 for ECDH, tcId is 588 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5868_peerpubkey[] = { 0x01, 0x8a, 0x82, 0xcb, 0x60, 0x81, 0x2f, 0xd3, 0x6c, 0xcc, 0xb2, 0x9e, 0x47, 0x47, 0xd2, 0x05, 0x79, 0xac, 0x9a, 0xc6, 0xb5, 0xef, 0x64, 0x90, 0x32, 0x6b, 0x30, 0xc5, 0xf0, 0x77, 0xe9, 0xd7, 0x84, 0x1e, 0xd1, 0x89, 0xad, 0x17, 0x21, 0x40, 0x05, 0x5d, 0x7e, 0xe6, 0xb0, 0x15, 0xe0, 0x2b, 0x1e, 0xbb, 0x9f, 0xc1, 0x7d, 0x6a, 0xcd, 0x8b, 0xb4, 0xc0, 0x8d, 0x2d, 0xdb, 0x45, 0x41, 0xbb, 0x88, 0xf4, 0x00, 0x77, 0x50, 0xfe, 0x26, 0x40, 0xe5, 0x90, 0xf1, 0x54, 0x26, 0xd6, 0x4e, 0x23, 0x34, 0xcb, 0x2a, 0xd5, 0x97, 0x34, 0x0c, 0x44, 0x5a, 0x42, 0x37, 0x9f, 0xc1, 0x94, 0xef, 0x74, 0xd7, 0xe0, 0x6a, 0x22, 0x0a, 0xad, 0xb8, 0xe6, 0x9e, 0x36, 0x1b, 0x49, 0x60, 0xdd, 0xe7, 0x0f, 0x08, 0x5e, 0x92, 0x43, 0x19, 0xde, 0xa0, 0xdf, 0x1d, 0x4c, 0x12, 0xc4, 0x15, 0x19, 0x53, 0x57, 0x02, 0x67, 0x0e, 0xa8, }; static const unsigned char ecdh_secp521r1_5868_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5868_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5868_sharedsecret[] = { 0x00, 0x71, 0x13, 0xf5, 0xf3, 0xc5, 0x47, 0xa2, 0xbd, 0xee, 0x4a, 0xf7, 0x62, 0x5b, 0xf1, 0x61, 0xad, 0x98, 0x40, 0xe8, 0x3f, 0x2c, 0x3b, 0x87, 0x1b, 0x18, 0xbe, 0x0c, 0x9d, 0xb5, 0x68, 0x6c, 0xaf, 0xd3, 0x94, 0x8c, 0x83, 0x1a, 0x25, 0x1a, 0x46, 0x49, 0x99, 0x91, 0x93, 0x85, 0x26, 0x50, 0xe6, 0xdc, 0x8a, 0x9f, 0x82, 0xcc, 0x69, 0x6a, 0xd5, 0x7c, 0x71, 0x81, 0xac, 0x9a, 0x9e, 0xc2, 0x20, 0xec, }; static const wycheproof_ecdh_test ecdh_secp521r1_5868 = { .name = "ecdh_secp521r1_5868", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5868_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5868_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5868_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5868_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 588 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5869 for ECDH, tcId is 589 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5869_peerpubkey[] = { 0x00, 0x27, 0x3b, 0x9b, 0xf3, 0x81, 0x8c, 0x12, 0x9c, 0xc2, 0x72, 0x27, 0x0b, 0x5b, 0xb0, 0xb8, 0xb7, 0xe5, 0x57, 0xca, 0x8c, 0x54, 0x8a, 0x6f, 0x32, 0x05, 0xe3, 0x7b, 0x61, 0x19, 0x62, 0xb1, 0x4d, 0x9b, 0xe3, 0x17, 0xdc, 0x44, 0xfe, 0x82, 0xb2, 0xd2, 0x50, 0x49, 0x84, 0xdb, 0x98, 0xa9, 0x02, 0xe7, 0xea, 0x2a, 0x5a, 0xfe, 0x58, 0x4d, 0xc2, 0xb2, 0x99, 0x0e, 0x5a, 0x79, 0x0f, 0xd5, 0x5b, 0x19, 0x00, 0xb9, 0x21, 0x1f, 0xbf, 0xa2, 0x21, 0xe3, 0xc2, 0x4b, 0xc3, 0xde, 0x2f, 0x70, 0xe8, 0xf0, 0xe8, 0x4f, 0x4b, 0x05, 0xc2, 0xd2, 0xbc, 0x5e, 0x98, 0xda, 0x3e, 0x37, 0x9e, 0x80, 0xbe, 0xcd, 0x53, 0xd2, 0x21, 0x13, 0x6a, 0xd7, 0x40, 0xb2, 0x73, 0x2e, 0xcb, 0xc3, 0xc7, 0xe0, 0x6c, 0x07, 0xe0, 0x64, 0xd5, 0xde, 0x69, 0xe6, 0xa6, 0xd5, 0x67, 0x71, 0x3f, 0x64, 0x4e, 0x8a, 0xc2, 0x5a, 0x1d, 0x93, }; static const unsigned char ecdh_secp521r1_5869_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5869_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5869_sharedsecret[] = { 0x01, 0x91, 0x88, 0x47, 0x8c, 0x62, 0x34, 0x92, 0x99, 0xba, 0x2f, 0x12, 0xae, 0xc3, 0xc7, 0xef, 0x65, 0x85, 0x8f, 0x50, 0x39, 0x53, 0x80, 0xed, 0x0e, 0x7e, 0x70, 0xe7, 0x31, 0xd7, 0xc4, 0x78, 0x85, 0xcf, 0xb1, 0x83, 0xec, 0xca, 0x22, 0xfc, 0x71, 0xf0, 0xaf, 0xd0, 0x62, 0x12, 0x43, 0x75, 0x07, 0x86, 0x96, 0x9a, 0x00, 0x97, 0xb3, 0x6a, 0x52, 0x1e, 0xf4, 0x1d, 0xf9, 0xf0, 0x8f, 0x9a, 0x45, 0x58, }; static const wycheproof_ecdh_test ecdh_secp521r1_5869 = { .name = "ecdh_secp521r1_5869", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5869_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5869_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5869_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5869_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 589 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5870 for ECDH, tcId is 590 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5870_peerpubkey[] = { 0x00, 0xb9, 0xd4, 0x03, 0xdf, 0x5b, 0x1d, 0xac, 0xbe, 0xf2, 0xba, 0xec, 0xe8, 0x8a, 0x0b, 0x10, 0xfa, 0xbc, 0x5d, 0x72, 0x97, 0x53, 0xf4, 0xe9, 0x36, 0x01, 0x5a, 0xfb, 0x96, 0xb9, 0x29, 0x39, 0x2a, 0x9e, 0xeb, 0x03, 0x46, 0x09, 0x68, 0xed, 0x18, 0x86, 0x87, 0x14, 0xca, 0xac, 0x2d, 0xc1, 0x6c, 0x07, 0x24, 0x5a, 0x9e, 0xf4, 0x83, 0x2a, 0xc4, 0x18, 0xe3, 0x29, 0x0d, 0x1f, 0x8d, 0x0d, 0x10, 0x2e, 0x00, 0x84, 0x94, 0xf4, 0x44, 0x2d, 0x00, 0xfd, 0xca, 0x67, 0xd3, 0x1b, 0x3e, 0xb6, 0x56, 0xc8, 0xa0, 0x6b, 0xd5, 0x21, 0x04, 0x6c, 0x1a, 0xf0, 0x75, 0xb0, 0xed, 0x26, 0xc2, 0x6d, 0x5b, 0xdd, 0x8b, 0x80, 0x04, 0x93, 0xc6, 0x8c, 0xf4, 0x93, 0x51, 0x60, 0x27, 0xed, 0xe7, 0x71, 0xae, 0xe3, 0xed, 0x8b, 0x5f, 0xb9, 0x47, 0xe9, 0xd6, 0x00, 0xcc, 0x0a, 0x82, 0xc3, 0xf2, 0x07, 0x6d, 0x96, 0xaa, 0xc0, }; static const unsigned char ecdh_secp521r1_5870_ourpubkey[] = { 0x00, 0x26, 0xe4, 0xbc, 0x8e, 0x3d, 0xfc, 0xb2, 0x89, 0x8f, 0x9f, 0xb7, 0x1e, 0xb3, 0x73, 0x19, 0x9e, 0xcd, 0x58, 0xb1, 0x3b, 0x66, 0xc2, 0x21, 0x11, 0x08, 0x19, 0xbd, 0x05, 0x15, 0x9e, 0xb5, 0xe3, 0xb8, 0xd1, 0x37, 0x6f, 0x7d, 0x51, 0x51, 0xdb, 0x14, 0x0b, 0x3c, 0xda, 0xe6, 0x98, 0xbc, 0xa9, 0x68, 0x3f, 0x3d, 0x04, 0x11, 0x64, 0xfe, 0x0e, 0x3d, 0xba, 0x0d, 0x2f, 0x02, 0xd6, 0x64, 0x3a, 0xdb, 0x01, 0x0a, 0x3f, 0x1f, 0xcb, 0x6d, 0xbc, 0xcc, 0x77, 0x3d, 0x14, 0x3d, 0x45, 0x43, 0x47, 0x14, 0x5a, 0x9b, 0xec, 0x49, 0x8e, 0x7a, 0x5e, 0x2d, 0x41, 0x20, 0x95, 0xb9, 0x35, 0x0c, 0x58, 0xd8, 0xe9, 0x41, 0x1e, 0xa8, 0x5a, 0xfe, 0x4c, 0x56, 0x05, 0x3a, 0xd3, 0x5d, 0x8b, 0xe4, 0x23, 0x0f, 0x5e, 0x27, 0x18, 0x36, 0x5f, 0x43, 0xdb, 0xd2, 0xed, 0x44, 0xb0, 0x96, 0xa9, 0x0b, 0xfc, 0x62, 0x27, 0xb6, }; static const unsigned char ecdh_secp521r1_5870_privkey[] = { 0x01, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb7, 0xe4, 0xf4, 0x8c, 0xef, 0x41, 0x5c, 0x5c, 0x13, 0x19, 0xe0, 0x7d, 0xb7, 0x0d, 0xb9, 0x2a, 0x49, 0x7c, 0x2a, 0xc7, 0x64, 0xe9, 0x50, 0x9a, 0xc0, 0xb0, 0x73, 0x22, 0x80, 0x1f, 0x5a, 0xe1, 0xf2, 0x8c, 0x9d, 0x7d, 0xb7, 0x1f, 0x79, 0xe5, 0xf5, 0x1b, 0xf6, 0x46, 0x79, 0x0a, 0xf9, 0x88, 0xd6, 0x23, 0x39, 0xa6, 0xd1, 0x54, 0x31, 0x92, 0xe3, 0x27, }; static const unsigned char ecdh_secp521r1_5870_sharedsecret[] = { 0x01, 0xad, 0xf7, 0x24, 0xcf, 0x47, 0xae, 0x31, 0x97, 0x91, 0xa3, 0xdb, 0xe3, 0x36, 0xb2, 0xf5, 0x4a, 0x4d, 0x74, 0xbc, 0x28, 0xff, 0x8a, 0x23, 0xc2, 0xf3, 0x33, 0xe2, 0xa5, 0xa3, 0x6b, 0xbe, 0x73, 0xdd, 0x6c, 0x9d, 0xe7, 0x26, 0x16, 0xad, 0x5b, 0x77, 0x9e, 0x51, 0x63, 0x6d, 0x08, 0xf7, 0xce, 0xc5, 0x8f, 0xf1, 0x8b, 0x71, 0x27, 0xe3, 0x96, 0x85, 0x6b, 0xc1, 0x3d, 0x39, 0x09, 0x44, 0x10, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5870 = { .name = "ecdh_secp521r1_5870", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5870_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5870_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5870_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5870_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 590 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5871 for ECDH, tcId is 591 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5871_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5871_ourpubkey[] = { 0x01, 0xa7, 0x3d, 0x35, 0x24, 0x43, 0xde, 0x29, 0x19, 0x5d, 0xd9, 0x1d, 0x6a, 0x64, 0xb5, 0x95, 0x94, 0x79, 0xb5, 0x2a, 0x6e, 0x5b, 0x12, 0x3d, 0x9a, 0xb9, 0xe5, 0xad, 0x7a, 0x11, 0x2d, 0x7a, 0x8d, 0xd1, 0xad, 0x3f, 0x16, 0x4a, 0x3a, 0x48, 0x32, 0x05, 0x1d, 0xa6, 0xbd, 0x16, 0xb5, 0x9f, 0xe2, 0x1b, 0xae, 0xb4, 0x90, 0x86, 0x2c, 0x32, 0xea, 0x05, 0xa5, 0x91, 0x9d, 0x2e, 0xde, 0x37, 0xad, 0x7d, 0x01, 0x3e, 0x9b, 0x03, 0xb9, 0x7d, 0xfa, 0x62, 0xdd, 0xd9, 0x97, 0x9f, 0x86, 0xc6, 0xca, 0xb8, 0x14, 0xf2, 0xf1, 0x55, 0x7f, 0xa8, 0x2a, 0x9d, 0x03, 0x17, 0xd2, 0xf8, 0xab, 0x1f, 0xa3, 0x55, 0xce, 0xec, 0x2e, 0x2d, 0xd4, 0xcf, 0x8d, 0xc5, 0x75, 0xb0, 0x2d, 0x5a, 0xce, 0xd1, 0xde, 0xc3, 0xc7, 0x0c, 0xf1, 0x05, 0xc9, 0xbc, 0x93, 0xa5, 0x90, 0x42, 0x5f, 0x58, 0x8c, 0xa1, 0xee, 0x86, 0xc0, 0xe5, }; static const unsigned char ecdh_secp521r1_5871_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp521r1_5871_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5871 = { .name = "ecdh_secp521r1_5871", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5871_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5871_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5871_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5871_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 591 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5872 for ECDH, tcId is 592 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5872_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5872_ourpubkey[] = { 0x00, 0xf0, 0xdd, 0x6a, 0x2e, 0x53, 0xf2, 0x3e, 0x9e, 0x50, 0xb8, 0x1f, 0x25, 0x5d, 0x39, 0x0b, 0x5a, 0xcc, 0x31, 0xcc, 0x84, 0x06, 0xe9, 0x57, 0x51, 0xfb, 0x15, 0x3c, 0x6b, 0xf6, 0x5a, 0xf9, 0xbb, 0x18, 0x5a, 0xd5, 0x9b, 0x0a, 0xe0, 0xcb, 0x35, 0xed, 0x21, 0xbb, 0x07, 0xcb, 0x43, 0xa9, 0x5b, 0x1f, 0x50, 0xdb, 0xfe, 0xf0, 0x76, 0x39, 0xcb, 0x48, 0xc3, 0xf6, 0xac, 0x64, 0x5f, 0xd5, 0xe8, 0x67, 0x01, 0x1f, 0xd2, 0x1d, 0x5b, 0xe9, 0x9c, 0x28, 0xe8, 0x9f, 0xb5, 0xb4, 0xc6, 0xce, 0x2d, 0x71, 0x39, 0x0b, 0x33, 0x06, 0x8f, 0x2d, 0x50, 0x47, 0x65, 0x75, 0xfc, 0xe8, 0x35, 0x18, 0xd9, 0xc1, 0xfd, 0xe2, 0x16, 0x72, 0xf9, 0xa2, 0xe9, 0xfe, 0x59, 0x7f, 0x1a, 0xff, 0xab, 0x2e, 0xd1, 0xbf, 0x6f, 0xee, 0xf1, 0xe8, 0x09, 0xde, 0x78, 0xd9, 0x7e, 0xa5, 0xd9, 0x00, 0x2a, 0x2f, 0x71, 0x64, 0x55, 0xfb, }; static const unsigned char ecdh_secp521r1_5872_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5872_sharedsecret[] = { 0x00, 0x34, 0x7c, 0x51, 0xf5, 0x87, 0xc7, 0x26, 0x07, 0x0b, 0xde, 0xb9, 0x17, 0x3d, 0x0a, 0x54, 0x74, 0x27, 0xea, 0xd3, 0xf2, 0xc8, 0xde, 0x62, 0xd9, 0xec, 0xc3, 0x01, 0x32, 0x85, 0xf6, 0x45, 0xd2, 0x20, 0x93, 0x15, 0x20, 0xbc, 0xef, 0x85, 0xd0, 0x8c, 0xfb, 0x67, 0x86, 0x04, 0x57, 0x45, 0xfb, 0xfb, 0xfb, 0x19, 0x24, 0xc4, 0x4a, 0x89, 0xd0, 0x66, 0x76, 0x13, 0x1a, 0x96, 0x56, 0x77, 0x27, 0x2a, }; static const wycheproof_ecdh_test ecdh_secp521r1_5872 = { .name = "ecdh_secp521r1_5872", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5872_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5872_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5872_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5872_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 592 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5873 for ECDH, tcId is 593 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5873_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5873_ourpubkey[] = { 0x01, 0xe3, 0x5e, 0x18, 0x24, 0x5e, 0xd3, 0xda, 0xd9, 0x65, 0xd2, 0xdc, 0x67, 0xbc, 0x6e, 0xe0, 0x30, 0x89, 0x11, 0x17, 0x84, 0x13, 0x14, 0x20, 0x5f, 0x46, 0x16, 0xc6, 0xf8, 0x0e, 0x80, 0xd3, 0x86, 0x81, 0x56, 0x19, 0x46, 0x75, 0xf3, 0x8c, 0x52, 0x43, 0xb9, 0x9a, 0x5d, 0xc8, 0x1c, 0x1e, 0x38, 0xb1, 0xa1, 0xfc, 0x03, 0x32, 0xbe, 0x96, 0x14, 0x0b, 0xae, 0xd7, 0x66, 0x6a, 0xe6, 0xb2, 0x85, 0x3f, 0x01, 0xc3, 0x54, 0x1a, 0xa5, 0xb4, 0x64, 0x0c, 0x2c, 0x60, 0xb4, 0x3e, 0x4f, 0xd7, 0x70, 0x08, 0xa3, 0x56, 0xb9, 0x02, 0x7c, 0xe4, 0x7c, 0xf6, 0x88, 0x96, 0x15, 0xac, 0x31, 0x45, 0x6e, 0x81, 0x13, 0x13, 0xf3, 0xa1, 0xa0, 0x82, 0x07, 0x64, 0x0c, 0xea, 0xec, 0x15, 0xd2, 0x7a, 0x26, 0x0b, 0x32, 0xb0, 0xf3, 0x41, 0xd6, 0x49, 0x25, 0x9e, 0x4d, 0xcb, 0x38, 0x9e, 0x59, 0xca, 0xfd, 0xa7, 0x74, 0x1e, }; static const unsigned char ecdh_secp521r1_5873_privkey[] = { 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5873_sharedsecret[] = { 0x01, 0xc4, 0x1d, 0xc4, 0x43, 0x7c, 0x2f, 0x2b, 0x94, 0xa9, 0x40, 0x71, 0x1b, 0x3a, 0x69, 0x17, 0x23, 0x39, 0x7a, 0x1f, 0x83, 0xd6, 0xbc, 0x0c, 0x67, 0xdd, 0xc7, 0xa6, 0x57, 0x16, 0x09, 0x25, 0xc7, 0xf8, 0x5b, 0xb4, 0xeb, 0x38, 0x42, 0xb6, 0x0b, 0x26, 0x10, 0xdd, 0xb7, 0xc0, 0xb8, 0x67, 0x62, 0x67, 0x71, 0x0e, 0x58, 0x35, 0x9a, 0x87, 0x50, 0x84, 0x3c, 0x6d, 0x8e, 0x25, 0xd4, 0x8d, 0x1c, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp521r1_5873 = { .name = "ecdh_secp521r1_5873", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5873_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5873_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5873_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5873_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 593 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5874 for ECDH, tcId is 594 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5874_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5874_ourpubkey[] = { 0x01, 0x4a, 0x8d, 0x4d, 0x7e, 0x86, 0x55, 0xcd, 0xc3, 0x3f, 0xf7, 0xc1, 0x45, 0x28, 0xe9, 0x11, 0xa3, 0x8c, 0xa0, 0xb9, 0x1a, 0x71, 0xca, 0xa4, 0xbe, 0x5f, 0x88, 0x00, 0x9d, 0xbf, 0x0c, 0x39, 0x39, 0x16, 0xc3, 0x9a, 0xca, 0x91, 0x09, 0x84, 0x99, 0xbd, 0xf4, 0xfd, 0x4c, 0x10, 0xc6, 0xfc, 0x6e, 0xb8, 0x06, 0x19, 0x32, 0xd3, 0x8a, 0x93, 0x11, 0x40, 0x86, 0xe5, 0xbe, 0xa6, 0xf9, 0x74, 0x0a, 0xfe, 0x00, 0xa6, 0x5e, 0x53, 0xe2, 0xba, 0xb7, 0x4e, 0xe5, 0x16, 0x61, 0xf4, 0x76, 0x0f, 0xee, 0xde, 0x68, 0x45, 0x19, 0x5f, 0xf9, 0xb7, 0xae, 0x8e, 0x08, 0xa8, 0xc7, 0xff, 0x4d, 0xdc, 0x9c, 0x65, 0xf8, 0x4a, 0xa3, 0x26, 0x6b, 0x2b, 0xc4, 0xfa, 0x5f, 0x8b, 0xd0, 0x42, 0x46, 0xce, 0x31, 0x22, 0x84, 0x31, 0x98, 0x6c, 0xfc, 0x7b, 0xbf, 0xc8, 0xbc, 0xd6, 0xef, 0x59, 0x45, 0xfe, 0x21, 0xcf, 0x3c, 0x24, }; static const unsigned char ecdh_secp521r1_5874_privkey[] = { 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5874_sharedsecret[] = { 0x00, 0x6a, 0x23, 0x9c, 0xdb, 0x7a, 0x78, 0x38, 0x40, 0x65, 0x8d, 0x5f, 0x31, 0x4b, 0xfe, 0x5c, 0x51, 0xe8, 0x06, 0xa4, 0xbf, 0x12, 0x36, 0xf8, 0x42, 0x12, 0x65, 0xbc, 0xc5, 0x03, 0xc6, 0x73, 0xeb, 0x16, 0xc5, 0xc2, 0xb3, 0x8b, 0x57, 0x17, 0xfa, 0x04, 0xee, 0x7d, 0xbc, 0xde, 0xb1, 0x5c, 0x87, 0x17, 0x11, 0x50, 0x7a, 0xbb, 0x75, 0x57, 0xa8, 0xa8, 0xc7, 0xb3, 0x25, 0x01, 0x41, 0xe8, 0x54, 0xd5, }; static const wycheproof_ecdh_test ecdh_secp521r1_5874 = { .name = "ecdh_secp521r1_5874", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5874_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5874_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5874_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5874_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 594 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5875 for ECDH, tcId is 595 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5875_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5875_ourpubkey[] = { 0x00, 0x2d, 0xa7, 0xdb, 0x02, 0x84, 0x0f, 0x02, 0x3a, 0x36, 0xe1, 0xff, 0xfe, 0xae, 0xe1, 0x6d, 0x3c, 0x47, 0xbb, 0x43, 0x5b, 0xec, 0x6a, 0x23, 0x1d, 0x4a, 0xab, 0x1e, 0xc5, 0x41, 0x2f, 0x56, 0xfb, 0x90, 0xfc, 0xc4, 0xea, 0xab, 0x9f, 0xd8, 0x57, 0x10, 0x84, 0xcb, 0x9d, 0xa2, 0x52, 0x46, 0x6c, 0x05, 0x2d, 0x21, 0x91, 0x3c, 0xe0, 0xfd, 0xa4, 0x7e, 0x61, 0x82, 0x99, 0x72, 0xce, 0x8f, 0x9a, 0x17, 0x00, 0x98, 0x1a, 0xf3, 0xa6, 0x14, 0x55, 0xdb, 0x8a, 0xe9, 0x31, 0x61, 0xa2, 0xc0, 0x5a, 0xae, 0xc2, 0x08, 0xc1, 0xac, 0x30, 0x54, 0x2b, 0x23, 0xbf, 0x87, 0x13, 0x65, 0xe4, 0x4a, 0x4e, 0xb0, 0x9c, 0x8a, 0x62, 0x65, 0xf9, 0xcb, 0x96, 0xa2, 0xb6, 0x32, 0xcf, 0x7f, 0xdf, 0x77, 0xbf, 0x6d, 0xfc, 0x59, 0xcd, 0x22, 0x78, 0xb1, 0xa3, 0x66, 0x11, 0x99, 0x72, 0x59, 0xe7, 0x19, 0x38, 0xd7, 0x7a, 0x9e, }; static const unsigned char ecdh_secp521r1_5875_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5875_sharedsecret[] = { 0x01, 0x12, 0xdb, 0xf9, 0x71, 0x3a, 0xad, 0xd4, 0x78, 0xe4, 0xf2, 0xeb, 0xcb, 0x05, 0x8f, 0x05, 0xb5, 0x12, 0xb1, 0x95, 0x9c, 0x7d, 0xa1, 0x99, 0x4f, 0x85, 0x1f, 0x37, 0x3c, 0xe8, 0xc3, 0x41, 0xd3, 0x9c, 0x68, 0x43, 0x37, 0x3f, 0x6f, 0xe5, 0x59, 0x90, 0x59, 0x53, 0xe1, 0x14, 0x76, 0x40, 0x15, 0x94, 0x37, 0x95, 0x3c, 0x57, 0x19, 0x61, 0xc0, 0x9b, 0xad, 0x15, 0x7a, 0x8e, 0x1a, 0x5b, 0xf4, 0x76, }; static const wycheproof_ecdh_test ecdh_secp521r1_5875 = { .name = "ecdh_secp521r1_5875", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5875_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5875_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5875_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5875_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 595 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5876 for ECDH, tcId is 596 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5876_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5876_ourpubkey[] = { 0x01, 0x85, 0x1a, 0x55, 0x09, 0xda, 0x86, 0xf5, 0xba, 0xf0, 0xa1, 0x9b, 0xec, 0xcf, 0xc9, 0x6b, 0xfc, 0xfa, 0x2a, 0xd4, 0xb9, 0xec, 0x13, 0x27, 0x50, 0x75, 0xb5, 0x0d, 0x34, 0xb0, 0x8f, 0x58, 0xf3, 0xaf, 0x24, 0x4d, 0xb1, 0x20, 0x0a, 0x7f, 0xcf, 0x2d, 0x4d, 0x0c, 0xb2, 0x59, 0xe6, 0x29, 0x42, 0x91, 0x2d, 0x8e, 0xe1, 0x66, 0x02, 0x61, 0x02, 0x56, 0x94, 0xa1, 0x82, 0xe2, 0x68, 0x9d, 0xbe, 0x3c, 0x00, 0x90, 0xd1, 0x32, 0x81, 0x30, 0x85, 0x6c, 0xae, 0x9c, 0xac, 0x35, 0x79, 0x33, 0x4c, 0xb6, 0xf0, 0x0a, 0xed, 0x24, 0xae, 0x2f, 0x2f, 0xc7, 0x4e, 0x7d, 0x75, 0xc7, 0x0c, 0xf0, 0x59, 0x4f, 0x26, 0x66, 0xcc, 0x5c, 0xcd, 0xb1, 0xde, 0x7f, 0xf0, 0x34, 0xdc, 0xdb, 0x50, 0xf3, 0xd9, 0xf9, 0x7f, 0x65, 0x37, 0x94, 0x88, 0xde, 0x82, 0xd8, 0xce, 0xcf, 0x10, 0x1e, 0xb9, 0x63, 0xa5, 0x3f, 0xbc, 0x19, }; static const unsigned char ecdh_secp521r1_5876_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xad, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_5876_sharedsecret[] = { 0x00, 0x3e, 0xca, 0x22, 0x10, 0xc8, 0x62, 0x31, 0x05, 0x08, 0x5a, 0xa2, 0x84, 0xd1, 0x19, 0xf3, 0xd7, 0x16, 0x73, 0x05, 0x95, 0xc6, 0x29, 0x1a, 0xa8, 0x9b, 0xf3, 0x2a, 0x95, 0xe8, 0xa5, 0xfd, 0xc6, 0x4f, 0x3d, 0x76, 0xe9, 0x24, 0x94, 0xa4, 0x3a, 0x9d, 0xce, 0xd1, 0x2d, 0x05, 0xb6, 0xdc, 0xa4, 0xff, 0xe6, 0x49, 0xb3, 0x2a, 0xc1, 0x2c, 0xb0, 0x20, 0x2e, 0x70, 0x2d, 0xc8, 0x3a, 0x2c, 0xb2, 0x77, }; static const wycheproof_ecdh_test ecdh_secp521r1_5876 = { .name = "ecdh_secp521r1_5876", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5876_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5876_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5876_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5876_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 596 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5877 for ECDH, tcId is 597 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5877_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5877_ourpubkey[] = { 0x00, 0xba, 0x8a, 0x65, 0xbe, 0xe8, 0xde, 0x2d, 0xa5, 0x8e, 0xbb, 0xec, 0x7a, 0x91, 0x9d, 0x16, 0x31, 0x17, 0x5f, 0x51, 0x8c, 0xfc, 0xf0, 0xbb, 0x0c, 0x51, 0x70, 0xb0, 0x1f, 0xb4, 0xbe, 0xca, 0xc3, 0x0b, 0x4e, 0xf3, 0x41, 0xb0, 0x61, 0xbd, 0xf2, 0x24, 0x48, 0x26, 0xe0, 0x15, 0xa4, 0xc6, 0xd8, 0x60, 0xac, 0x37, 0xb3, 0x68, 0x76, 0xf3, 0x73, 0xa1, 0xbb, 0x59, 0xf2, 0x67, 0x5c, 0x34, 0x65, 0x88, 0x01, 0xbd, 0x40, 0xb4, 0xa0, 0x7f, 0x92, 0x17, 0x03, 0x12, 0x37, 0x98, 0x0e, 0x05, 0x71, 0xe4, 0x11, 0xbf, 0x75, 0x95, 0xfd, 0xd7, 0xaa, 0x84, 0x99, 0x21, 0x37, 0x70, 0x5a, 0x9e, 0xfe, 0x5b, 0x65, 0x90, 0x0a, 0xe9, 0x60, 0xa3, 0xc9, 0x81, 0xde, 0xaa, 0x88, 0x0b, 0x1d, 0x82, 0x8d, 0x66, 0x04, 0x3e, 0x17, 0x45, 0xf1, 0x7e, 0x50, 0x42, 0x7b, 0xc9, 0x69, 0xa3, 0x50, 0x71, 0xa9, 0x9f, 0x67, 0x4a, }; static const unsigned char ecdh_secp521r1_5877_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x5f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_5877_sharedsecret[] = { 0x01, 0xc4, 0xca, 0xe9, 0xfb, 0xfd, 0xd4, 0x5d, 0xe5, 0x1d, 0x85, 0x25, 0xe8, 0x44, 0x7a, 0x75, 0x53, 0xc3, 0x5c, 0xf3, 0x58, 0xf1, 0x34, 0x6f, 0x1d, 0x79, 0x66, 0x68, 0x87, 0xbb, 0x74, 0x9a, 0x3b, 0xa0, 0xde, 0x62, 0xe1, 0x86, 0x6b, 0x47, 0xa4, 0x47, 0xd5, 0x3b, 0x6f, 0x1c, 0xa5, 0xa3, 0x3e, 0xc9, 0x45, 0x07, 0xe2, 0xcf, 0xb6, 0x55, 0x44, 0xf5, 0xa1, 0x19, 0x5f, 0xc6, 0xb4, 0xdc, 0x58, 0x10, }; static const wycheproof_ecdh_test ecdh_secp521r1_5877 = { .name = "ecdh_secp521r1_5877", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5877_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5877_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5877_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5877_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 597 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5878 for ECDH, tcId is 598 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5878_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5878_ourpubkey[] = { 0x01, 0xa2, 0x1c, 0x2e, 0x07, 0x7e, 0xe3, 0x1c, 0x06, 0xd5, 0x6d, 0x67, 0xdb, 0x8c, 0x1b, 0x6e, 0x16, 0x41, 0x9c, 0x67, 0x9e, 0x26, 0x11, 0x7b, 0xa6, 0x2a, 0xe5, 0xc6, 0x17, 0x98, 0x3d, 0xfe, 0xc2, 0x1f, 0xc2, 0x6e, 0x3a, 0x3c, 0xf5, 0xeb, 0x83, 0x37, 0x7e, 0xba, 0x71, 0x4b, 0xbb, 0x5e, 0xe0, 0xce, 0x7b, 0x7b, 0xed, 0x87, 0xd6, 0x6c, 0xc1, 0x44, 0x7b, 0xad, 0x21, 0x1d, 0x4c, 0xa9, 0x4c, 0xe3, 0x01, 0x2a, 0x11, 0xe4, 0xac, 0x37, 0x56, 0x62, 0xcf, 0x6c, 0xb1, 0xde, 0x16, 0xff, 0x4b, 0x5a, 0xb6, 0x6f, 0x69, 0x68, 0x0c, 0xd6, 0xbe, 0x13, 0xcf, 0xf6, 0xfc, 0x3b, 0x99, 0x47, 0x37, 0x40, 0x1d, 0x78, 0x65, 0x8f, 0xe7, 0x8c, 0x41, 0xda, 0x25, 0x2a, 0x45, 0xe0, 0xcc, 0xa6, 0x23, 0xd3, 0x14, 0x93, 0xf4, 0xea, 0x4e, 0xb8, 0xf6, 0xc8, 0xe4, 0xd6, 0x3f, 0x28, 0xed, 0x86, 0x32, 0x3d, 0x28, 0xa3, }; static const unsigned char ecdh_secp521r1_5878_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x67, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_5878_sharedsecret[] = { 0x00, 0x80, 0x73, 0xb4, 0x79, 0x6e, 0x74, 0x8f, 0x3d, 0x0d, 0xe5, 0xe8, 0x5b, 0x22, 0xae, 0xd4, 0x63, 0xf1, 0xa6, 0xae, 0xcd, 0xb3, 0x36, 0xbc, 0x28, 0x7b, 0x50, 0xd1, 0x39, 0xe3, 0x59, 0x1e, 0xf5, 0xf8, 0x6b, 0x78, 0xc3, 0xf6, 0x05, 0x14, 0x67, 0x75, 0x5f, 0x05, 0x9f, 0x29, 0x5d, 0x75, 0x80, 0x75, 0x34, 0x7d, 0x65, 0x7a, 0xaa, 0xe0, 0x23, 0x83, 0x83, 0x8b, 0xb9, 0x60, 0x71, 0xea, 0xcb, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp521r1_5878 = { .name = "ecdh_secp521r1_5878", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5878_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5878_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5878_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5878_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 598 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5879 for ECDH, tcId is 599 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5879_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5879_ourpubkey[] = { 0x00, 0x8e, 0xd9, 0x5a, 0x6b, 0x2d, 0xd6, 0xf2, 0xdb, 0xb2, 0x8f, 0x3d, 0xc6, 0x58, 0xf0, 0x5f, 0x9b, 0x27, 0xe4, 0x2f, 0x10, 0x0d, 0xbc, 0xbd, 0x5d, 0x3e, 0x8f, 0x47, 0x61, 0x5c, 0xab, 0x13, 0x6c, 0xae, 0x8e, 0xf4, 0xaf, 0x44, 0xf0, 0xd9, 0xf9, 0xf1, 0xbf, 0xba, 0x65, 0xb8, 0x37, 0x86, 0xb0, 0x33, 0xad, 0xe7, 0x91, 0x7a, 0x7b, 0x12, 0xde, 0xf4, 0xab, 0xf1, 0x7f, 0xeb, 0x00, 0x8c, 0x7a, 0x44, 0x01, 0x5a, 0xf2, 0x8d, 0x04, 0x50, 0xe8, 0xb2, 0x09, 0x3a, 0x98, 0x61, 0x9e, 0xb1, 0xac, 0x92, 0xec, 0xd4, 0x13, 0xb0, 0xab, 0x7d, 0x9b, 0x16, 0xfe, 0xcc, 0x99, 0x7d, 0x98, 0x4f, 0x01, 0x71, 0x3b, 0xdf, 0x89, 0x80, 0x11, 0xbd, 0x28, 0x09, 0xbb, 0x5f, 0x70, 0xe9, 0xc6, 0x3b, 0x4b, 0x12, 0x61, 0xef, 0xea, 0x8e, 0x79, 0x66, 0x2f, 0xec, 0xa1, 0x49, 0xdc, 0x44, 0xf9, 0x5a, 0xb9, 0x44, 0x3b, 0xed, }; static const unsigned char ecdh_secp521r1_5879_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1d, 0x91, 0x38, 0x64, 0x09, }; static const unsigned char ecdh_secp521r1_5879_sharedsecret[] = { 0x01, 0xf1, 0x1f, 0xf8, 0x98, 0x37, 0x92, 0xd4, 0xa7, 0x90, 0xd0, 0xde, 0x4b, 0x56, 0xd0, 0x78, 0xb9, 0x03, 0x3a, 0xd6, 0x31, 0x8a, 0x44, 0x0e, 0x81, 0x19, 0x34, 0x29, 0x37, 0xcc, 0x48, 0xa3, 0x93, 0x75, 0x15, 0x0a, 0xb2, 0xcf, 0x98, 0x27, 0x3b, 0x0f, 0xe3, 0x5d, 0x5a, 0x3a, 0xf5, 0xd8, 0x43, 0x22, 0xa6, 0x85, 0xe8, 0x9f, 0x2c, 0xb3, 0x78, 0xa9, 0x9b, 0x9b, 0x7b, 0xac, 0x87, 0xe4, 0x49, 0x52, }; static const wycheproof_ecdh_test ecdh_secp521r1_5879 = { .name = "ecdh_secp521r1_5879", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5879_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5879_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5879_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5879_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 599 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5880 for ECDH, tcId is 600 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5880_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5880_ourpubkey[] = { 0x00, 0xe4, 0x54, 0x5c, 0x8c, 0x0e, 0x13, 0x47, 0x00, 0x52, 0x66, 0x22, 0x76, 0x53, 0xb8, 0x61, 0x8e, 0x46, 0xed, 0xda, 0xa7, 0xba, 0x17, 0xb1, 0x13, 0xe0, 0x6d, 0x3f, 0xa8, 0x95, 0xff, 0xe0, 0x19, 0x1c, 0x81, 0xee, 0x5e, 0xdb, 0xe6, 0xcf, 0x25, 0x8a, 0x69, 0xaf, 0x43, 0xad, 0x9e, 0x06, 0x20, 0x46, 0x09, 0x50, 0xb4, 0x2e, 0x8e, 0xd3, 0xfb, 0xe1, 0x04, 0x29, 0x0a, 0x9e, 0x86, 0x6a, 0xb6, 0x6d, 0x00, 0xac, 0x21, 0x7f, 0x69, 0x78, 0x29, 0x4e, 0x37, 0x0b, 0xd0, 0x94, 0x49, 0xe6, 0xde, 0x5d, 0x19, 0xea, 0x8e, 0x99, 0xbe, 0xf1, 0xb9, 0x19, 0x64, 0xc2, 0x9f, 0x6d, 0xc8, 0x18, 0x68, 0x76, 0xd8, 0x28, 0x3d, 0xa7, 0x45, 0x00, 0x99, 0x30, 0x5a, 0x2e, 0x2e, 0x6e, 0xb4, 0xca, 0x60, 0xea, 0xea, 0x62, 0xe6, 0xc4, 0x13, 0x4d, 0x08, 0xdd, 0x76, 0xbb, 0x07, 0x3d, 0x05, 0xec, 0x49, 0xd0, 0x7e, 0x25, }; static const unsigned char ecdh_secp521r1_5880_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x1b, }; static const unsigned char ecdh_secp521r1_5880_sharedsecret[] = { 0x00, 0x28, 0x6c, 0xef, 0xaa, 0xf3, 0x8c, 0xa4, 0xc6, 0x65, 0x7e, 0xb9, 0xb1, 0x87, 0xd8, 0x61, 0x4d, 0x51, 0x77, 0x5f, 0xd7, 0x1c, 0x1a, 0x79, 0xb4, 0xc0, 0xef, 0x1a, 0x0d, 0x4c, 0xe7, 0x2b, 0x6f, 0x5b, 0x2b, 0xc8, 0x54, 0xa4, 0xe7, 0x82, 0x83, 0x53, 0x09, 0x42, 0xa3, 0xf4, 0xfd, 0x2a, 0x85, 0x86, 0xd5, 0xea, 0x51, 0x51, 0x3c, 0x89, 0xd3, 0xd2, 0x9d, 0xe5, 0xde, 0x06, 0x32, 0x1e, 0x11, 0x8e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5880 = { .name = "ecdh_secp521r1_5880", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5880_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5880_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5880_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5880_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 600 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5881 for ECDH, tcId is 601 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5881_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5881_ourpubkey[] = { 0x00, 0x47, 0xe4, 0xcf, 0x0f, 0x0f, 0x54, 0xd0, 0xf3, 0x2e, 0xb1, 0x79, 0x63, 0xbb, 0xae, 0x20, 0x8a, 0x76, 0xd3, 0x2e, 0x31, 0x61, 0x3b, 0x64, 0x79, 0xa9, 0xc9, 0x98, 0x5c, 0x24, 0xb9, 0x16, 0x86, 0x16, 0xf4, 0x02, 0xa7, 0x6a, 0x7f, 0x66, 0xed, 0xc0, 0x46, 0x9d, 0xe9, 0xfd, 0x96, 0xc5, 0x5d, 0xbe, 0x33, 0xe6, 0xf2, 0x44, 0xa1, 0x1b, 0x44, 0x95, 0x5c, 0x62, 0x2f, 0xee, 0xee, 0x80, 0x64, 0x55, 0x01, 0x15, 0xaa, 0x58, 0x2f, 0x1d, 0x6a, 0x22, 0xe9, 0x7a, 0xa4, 0x14, 0xb7, 0xc7, 0x15, 0x40, 0x11, 0x51, 0x19, 0x35, 0xbc, 0xb3, 0xb8, 0x70, 0x45, 0xaa, 0xc5, 0x13, 0x19, 0x1d, 0x10, 0x1a, 0xf1, 0xfa, 0xf6, 0x1c, 0xb4, 0xdf, 0xec, 0xf6, 0xf0, 0x07, 0x92, 0x87, 0x09, 0x61, 0xf6, 0xfc, 0x91, 0x92, 0xa0, 0xb0, 0xec, 0xb3, 0xe8, 0x50, 0x23, 0x34, 0x68, 0xca, 0x7b, 0x4d, 0x00, 0x56, 0xf6, 0xbe, }; static const unsigned char ecdh_secp521r1_5881_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0x9b, }; static const unsigned char ecdh_secp521r1_5881_sharedsecret[] = { 0x01, 0x47, 0x90, 0xde, 0x14, 0xc4, 0x81, 0xf1, 0x33, 0x6f, 0xcb, 0x7d, 0x33, 0xa8, 0xbf, 0x8e, 0x23, 0xeb, 0x59, 0x4c, 0xc4, 0x86, 0x08, 0xe9, 0xed, 0xfe, 0x0e, 0x32, 0x6e, 0x10, 0x6b, 0x67, 0xe7, 0xea, 0xa3, 0xf0, 0x4e, 0xc9, 0x98, 0x55, 0x99, 0x17, 0x8f, 0x63, 0x2a, 0x5e, 0xe6, 0x41, 0x9e, 0x11, 0x21, 0x70, 0x60, 0xe9, 0xfc, 0xd5, 0x95, 0x8a, 0x43, 0x88, 0x2b, 0xf8, 0xcd, 0x3b, 0xe6, 0xba, }; static const wycheproof_ecdh_test ecdh_secp521r1_5881 = { .name = "ecdh_secp521r1_5881", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5881_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5881_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5881_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5881_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 601 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5882 for ECDH, tcId is 602 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5882_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5882_ourpubkey[] = { 0x00, 0xbb, 0xdb, 0x16, 0x2d, 0x82, 0x84, 0xa9, 0x10, 0x02, 0x19, 0x98, 0xe2, 0xd1, 0x4f, 0x33, 0xa8, 0xc5, 0x1a, 0x9c, 0xfb, 0x9a, 0x69, 0xa8, 0xfc, 0x57, 0x09, 0xf7, 0x53, 0xaa, 0xf1, 0xc4, 0xd2, 0x48, 0xa6, 0xdd, 0xb5, 0x62, 0x65, 0x40, 0xf8, 0x1d, 0x07, 0xc0, 0x92, 0x31, 0xd2, 0xec, 0x15, 0x49, 0xf6, 0x72, 0xb6, 0xd2, 0xbd, 0x57, 0xd2, 0x2f, 0x64, 0xf2, 0xae, 0x80, 0x93, 0xe7, 0x38, 0xa5, 0x00, 0xc4, 0x79, 0x0f, 0x2a, 0x6d, 0xed, 0xe9, 0x10, 0x1f, 0xe0, 0x16, 0x38, 0x35, 0x43, 0xef, 0x4f, 0xf5, 0x47, 0xe3, 0x60, 0x42, 0x69, 0x8b, 0xeb, 0x62, 0xd1, 0x31, 0xbd, 0xb4, 0x87, 0x90, 0x93, 0xc8, 0xd5, 0xe7, 0xce, 0xee, 0xd0, 0xab, 0xec, 0xd2, 0x82, 0xc5, 0x0b, 0xd2, 0x37, 0x32, 0x81, 0xe8, 0x48, 0x13, 0x7f, 0x4f, 0x60, 0x5a, 0x60, 0xf1, 0xbd, 0x3e, 0xbd, 0x76, 0xa6, 0x9e, 0xda, 0x65, }; static const unsigned char ecdh_secp521r1_5882_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xdb, }; static const unsigned char ecdh_secp521r1_5882_sharedsecret[] = { 0x01, 0xae, 0x77, 0x5d, 0xbc, 0x40, 0x96, 0xa3, 0xae, 0xa7, 0x97, 0x7b, 0x1a, 0x0a, 0xf4, 0xb2, 0x83, 0x0e, 0xcf, 0x9c, 0xa9, 0x27, 0xa6, 0x24, 0x7f, 0xba, 0x4c, 0xcc, 0xb4, 0x6b, 0x3f, 0x71, 0xd0, 0xe7, 0xab, 0xb8, 0xdd, 0xa7, 0x2d, 0x1c, 0x1e, 0xe7, 0xbb, 0x5b, 0x87, 0x5b, 0x47, 0x73, 0xcc, 0x8d, 0xf4, 0x0f, 0x73, 0x28, 0x19, 0xc4, 0x14, 0x7d, 0xa3, 0x30, 0x77, 0x5d, 0x17, 0x42, 0xea, 0x35, }; static const wycheproof_ecdh_test ecdh_secp521r1_5882 = { .name = "ecdh_secp521r1_5882", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5882_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5882_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5882_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5882_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 602 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5883 for ECDH, tcId is 603 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5883_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5883_ourpubkey[] = { 0x01, 0x87, 0x5b, 0xc7, 0xdc, 0x55, 0x1b, 0x1b, 0x65, 0xa9, 0xe1, 0xb8, 0xcc, 0xfa, 0xaf, 0x84, 0xde, 0xd1, 0x95, 0x8b, 0x40, 0x14, 0x94, 0x11, 0x6a, 0x2f, 0xd4, 0xfb, 0x0b, 0xab, 0xe0, 0xb3, 0x19, 0x99, 0x74, 0xfc, 0x06, 0xc8, 0xb8, 0x97, 0x22, 0x2d, 0x79, 0xdf, 0x3e, 0x4b, 0x7b, 0xc7, 0x44, 0xaa, 0x67, 0x67, 0xf6, 0xb8, 0x12, 0xef, 0xbf, 0x5d, 0x2c, 0x9e, 0x68, 0x2d, 0xd3, 0x43, 0x2d, 0x74, 0x01, 0xa3, 0x5b, 0x6d, 0xca, 0x8a, 0x25, 0x34, 0xa4, 0x2d, 0x29, 0x9d, 0x6f, 0x44, 0x54, 0x4b, 0x42, 0x04, 0x7b, 0x8f, 0xed, 0xd4, 0x71, 0xae, 0x7d, 0x95, 0xf7, 0xb8, 0x31, 0x64, 0x79, 0x28, 0x12, 0x9d, 0x2f, 0x88, 0x7e, 0x4e, 0x4b, 0x0c, 0xa7, 0xb3, 0xee, 0x17, 0x64, 0x0e, 0x2e, 0xcc, 0x23, 0xf2, 0xa4, 0x96, 0xf0, 0xac, 0x57, 0x83, 0x7b, 0x41, 0xbe, 0x99, 0x60, 0x7a, 0xd8, 0xff, 0x2a, 0xb5, }; static const unsigned char ecdh_secp521r1_5883_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xfb, }; static const unsigned char ecdh_secp521r1_5883_sharedsecret[] = { 0x01, 0x97, 0x9f, 0xb0, 0x5e, 0x06, 0x8a, 0x12, 0xa3, 0xf2, 0x0c, 0xfd, 0xfb, 0x9e, 0xae, 0xe9, 0xf2, 0x2b, 0x35, 0x6e, 0xdc, 0xc7, 0x65, 0x53, 0x83, 0xed, 0x38, 0x12, 0x4b, 0x86, 0x81, 0x4f, 0x86, 0xa6, 0xf2, 0x21, 0x6a, 0x34, 0xf3, 0xfc, 0x22, 0x99, 0xd4, 0x03, 0xee, 0x42, 0x40, 0x8f, 0x95, 0xd0, 0x8c, 0x5c, 0x6c, 0xd1, 0x1d, 0xb7, 0x2c, 0xbf, 0x29, 0x9a, 0x4a, 0x3c, 0x25, 0x45, 0xbe, 0x25, }; static const wycheproof_ecdh_test ecdh_secp521r1_5883 = { .name = "ecdh_secp521r1_5883", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5883_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5883_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5883_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5883_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 603 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5884 for ECDH, tcId is 604 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5884_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5884_ourpubkey[] = { 0x01, 0xee, 0x45, 0x69, 0xd6, 0xcd, 0xb5, 0x92, 0x19, 0x53, 0x2e, 0xff, 0x34, 0xf9, 0x44, 0x80, 0xd1, 0x95, 0x62, 0x3d, 0x30, 0x97, 0x7f, 0xd7, 0x1c, 0xf3, 0x98, 0x15, 0x06, 0xad, 0xe4, 0xab, 0x01, 0x52, 0x5f, 0xbc, 0xca, 0x16, 0x15, 0x3f, 0x73, 0x94, 0xe0, 0x72, 0x7a, 0x23, 0x95, 0x31, 0xbe, 0x8c, 0x2f, 0x66, 0xe9, 0x56, 0x57, 0xf3, 0x80, 0xae, 0x23, 0x73, 0x1b, 0xed, 0xf7, 0x92, 0x06, 0xb9, 0x00, 0x21, 0xfd, 0xaa, 0x52, 0xf3, 0x39, 0xb0, 0xa7, 0x95, 0x1d, 0x22, 0xd8, 0xfa, 0xb9, 0x1c, 0x4e, 0xee, 0xd5, 0x54, 0x44, 0x8c, 0x25, 0xa5, 0x7f, 0x71, 0x8d, 0xbf, 0x56, 0xd9, 0xdf, 0xe5, 0x75, 0x69, 0x35, 0x48, 0xd2, 0xf1, 0xa9, 0x9b, 0x73, 0x62, 0x06, 0x93, 0x67, 0xb2, 0x1d, 0x8b, 0x0d, 0xdf, 0xc2, 0x38, 0x47, 0x4a, 0xa3, 0x5f, 0x25, 0x21, 0xe1, 0x53, 0x32, 0x87, 0xa7, 0x2b, 0xb0, 0xe8, }; static const unsigned char ecdh_secp521r1_5884_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x03, }; static const unsigned char ecdh_secp521r1_5884_sharedsecret[] = { 0x01, 0x97, 0xeb, 0xe2, 0x67, 0x98, 0xbf, 0x67, 0xf0, 0x6f, 0xf0, 0x28, 0x27, 0x73, 0xaf, 0x75, 0x11, 0x55, 0x31, 0xf4, 0x1d, 0x94, 0xc0, 0x93, 0xd8, 0x74, 0x81, 0xb7, 0x6b, 0xef, 0x70, 0x7b, 0xc2, 0x22, 0xf2, 0xd6, 0x67, 0x2f, 0x84, 0xa0, 0x0f, 0xa2, 0x0c, 0x5e, 0xd2, 0x70, 0x27, 0xab, 0x40, 0x06, 0xb6, 0x8d, 0x93, 0xee, 0x21, 0x51, 0x01, 0x6c, 0x9d, 0xdb, 0xe0, 0x14, 0x34, 0x62, 0x72, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp521r1_5884 = { .name = "ecdh_secp521r1_5884", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5884_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5884_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5884_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5884_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 604 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5885 for ECDH, tcId is 605 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5885_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5885_ourpubkey[] = { 0x01, 0xa7, 0x3d, 0x35, 0x24, 0x43, 0xde, 0x29, 0x19, 0x5d, 0xd9, 0x1d, 0x6a, 0x64, 0xb5, 0x95, 0x94, 0x79, 0xb5, 0x2a, 0x6e, 0x5b, 0x12, 0x3d, 0x9a, 0xb9, 0xe5, 0xad, 0x7a, 0x11, 0x2d, 0x7a, 0x8d, 0xd1, 0xad, 0x3f, 0x16, 0x4a, 0x3a, 0x48, 0x32, 0x05, 0x1d, 0xa6, 0xbd, 0x16, 0xb5, 0x9f, 0xe2, 0x1b, 0xae, 0xb4, 0x90, 0x86, 0x2c, 0x32, 0xea, 0x05, 0xa5, 0x91, 0x9d, 0x2e, 0xde, 0x37, 0xad, 0x7d, 0x00, 0xc1, 0x64, 0xfc, 0x46, 0x82, 0x05, 0x9d, 0x22, 0x26, 0x68, 0x60, 0x79, 0x39, 0x35, 0x47, 0xeb, 0x0d, 0x0e, 0xaa, 0x80, 0x57, 0xd5, 0x62, 0xfc, 0xe8, 0x2d, 0x07, 0x54, 0xe0, 0x5c, 0xaa, 0x31, 0x13, 0xd1, 0xd2, 0x2b, 0x30, 0x72, 0x3a, 0x8a, 0x4f, 0xd2, 0xa5, 0x31, 0x2e, 0x21, 0x3c, 0x38, 0xf3, 0x0e, 0xfa, 0x36, 0x43, 0x6c, 0x5a, 0x6f, 0xbd, 0xa0, 0xa7, 0x73, 0x5e, 0x11, 0x79, 0x3f, 0x1a, }; static const unsigned char ecdh_secp521r1_5885_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x06, }; static const unsigned char ecdh_secp521r1_5885_sharedsecret[] = { 0x00, 0xf2, 0x24, 0x64, 0x31, 0xb5, 0x97, 0x93, 0x0f, 0x2e, 0xae, 0x61, 0xe9, 0xaa, 0xbb, 0xd3, 0x9f, 0x8f, 0x6a, 0xe9, 0x7c, 0x3c, 0xf2, 0x52, 0x1a, 0x6a, 0xee, 0xce, 0xdd, 0xa1, 0x0b, 0x5e, 0xf5, 0xf3, 0xb2, 0xeb, 0x3a, 0x89, 0x06, 0xd0, 0x2f, 0x51, 0xd2, 0x44, 0x71, 0x0a, 0xa9, 0xe1, 0x9c, 0xc0, 0xbe, 0x21, 0xdb, 0x92, 0x01, 0x32, 0xbe, 0x1c, 0x91, 0xde, 0xb8, 0x5e, 0x46, 0x6c, 0x28, 0xdf, }; static const wycheproof_ecdh_test ecdh_secp521r1_5885 = { .name = "ecdh_secp521r1_5885", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5885_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5885_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5885_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5885_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 605 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5886 for ECDH, tcId is 606 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5886_peerpubkey[] = { 0x01, 0xad, 0x50, 0x43, 0x59, 0x1d, 0xbe, 0x81, 0x65, 0x7f, 0xe3, 0xd1, 0xc3, 0xd7, 0xa5, 0x16, 0x60, 0x6a, 0xd9, 0xd3, 0x20, 0xa3, 0x5f, 0xce, 0x8a, 0xae, 0xc8, 0xa9, 0x50, 0xfb, 0x53, 0xf9, 0x53, 0x88, 0xf3, 0xfc, 0x48, 0xbe, 0x99, 0x8e, 0x99, 0x33, 0x4a, 0xd9, 0xe9, 0x23, 0x4c, 0xde, 0xd1, 0x44, 0x71, 0xfe, 0x86, 0xca, 0xcc, 0xaa, 0x07, 0xd0, 0x58, 0xee, 0x87, 0x71, 0x73, 0x3a, 0xc3, 0xb9, 0x00, 0x85, 0x4d, 0xe3, 0x63, 0x66, 0x59, 0x0b, 0x9e, 0xe4, 0xd0, 0x37, 0x0e, 0xa6, 0xb0, 0x0f, 0x7e, 0xbd, 0x81, 0x56, 0xcc, 0xf1, 0x4e, 0x99, 0xf1, 0xa5, 0x34, 0x4a, 0x9b, 0x49, 0x64, 0xfb, 0xb8, 0x34, 0x8b, 0x08, 0x1a, 0x88, 0x40, 0xc6, 0xb6, 0x4b, 0xe7, 0x79, 0x97, 0xad, 0x8b, 0xeb, 0xfe, 0xa5, 0xe7, 0xd9, 0xf7, 0xa6, 0xa7, 0xfa, 0x6d, 0x76, 0x55, 0xc5, 0x0b, 0x2b, 0x78, 0x35, 0xf3, 0x14, }; static const unsigned char ecdh_secp521r1_5886_ourpubkey[] = { 0x00, 0x43, 0x3c, 0x21, 0x90, 0x24, 0x27, 0x7e, 0x7e, 0x68, 0x2f, 0xcb, 0x28, 0x81, 0x48, 0xc2, 0x82, 0x74, 0x74, 0x03, 0x27, 0x9b, 0x1c, 0xcc, 0x06, 0x35, 0x2c, 0x6e, 0x55, 0x05, 0xd7, 0x69, 0xbe, 0x97, 0xb3, 0xb2, 0x04, 0xda, 0x6e, 0xf5, 0x55, 0x07, 0xaa, 0x10, 0x4a, 0x3a, 0x35, 0xc5, 0xaf, 0x41, 0xcf, 0x2f, 0xa3, 0x64, 0xd6, 0x0f, 0xd9, 0x67, 0xf4, 0x3e, 0x39, 0x33, 0xba, 0x6d, 0x78, 0x3d, 0x01, 0x0b, 0x44, 0x73, 0x38, 0x07, 0x92, 0x4d, 0x98, 0xff, 0x58, 0x0c, 0x13, 0x11, 0x11, 0x2c, 0x0f, 0x4a, 0x39, 0x4a, 0xef, 0x83, 0xb2, 0x56, 0x88, 0xbf, 0x54, 0xde, 0x5d, 0x66, 0xf9, 0x3b, 0xd2, 0x44, 0x4c, 0x1c, 0x88, 0x21, 0x60, 0xda, 0xe0, 0x94, 0x6c, 0x6c, 0x80, 0x56, 0x65, 0xcd, 0xb7, 0x0b, 0x15, 0x03, 0x41, 0x6a, 0x12, 0x3f, 0x0b, 0x08, 0xe4, 0x1c, 0xa9, 0x29, 0x9e, 0x0b, 0xe4, 0xfd, }; static const unsigned char ecdh_secp521r1_5886_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x64, 0x07, }; static const unsigned char ecdh_secp521r1_5886_sharedsecret[] = { 0x01, 0xc1, 0x68, 0x31, 0x4c, 0xdc, 0x85, 0x75, 0x7a, 0xde, 0x34, 0xa5, 0x2a, 0x9e, 0x53, 0x79, 0xff, 0xa5, 0x96, 0x8f, 0x08, 0x4b, 0x7e, 0x40, 0x49, 0x39, 0xa8, 0x03, 0x3a, 0x0f, 0xc6, 0x98, 0xe2, 0x62, 0x11, 0x75, 0x4b, 0x9b, 0x2c, 0x04, 0xcf, 0x8a, 0x14, 0x20, 0xab, 0xe6, 0xe9, 0x86, 0xef, 0x1a, 0x23, 0x8b, 0xbb, 0x91, 0xdd, 0x40, 0x2b, 0x72, 0xe0, 0xed, 0x50, 0xa8, 0x76, 0xf1, 0xa8, 0x3e, }; static const wycheproof_ecdh_test ecdh_secp521r1_5886 = { .name = "ecdh_secp521r1_5886", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5886_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5886_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5886_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5886_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "edge case private key, tcId is 606 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5887 for ECDH, tcId is 607 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5887_peerpubkey[] = { 0x00, 0xc6, 0x85, 0x8e, 0x06, 0xb7, 0x04, 0x04, 0xe9, 0xcd, 0x9e, 0x3e, 0xcb, 0x66, 0x23, 0x95, 0xb4, 0x42, 0x9c, 0x64, 0x81, 0x39, 0x05, 0x3f, 0xb5, 0x21, 0xf8, 0x28, 0xaf, 0x60, 0x6b, 0x4d, 0x3d, 0xba, 0xa1, 0x4b, 0x5e, 0x77, 0xef, 0xe7, 0x59, 0x28, 0xfe, 0x1d, 0xc1, 0x27, 0xa2, 0xff, 0xa8, 0xde, 0x33, 0x48, 0xb3, 0xc1, 0x85, 0x6a, 0x42, 0x9b, 0xf9, 0x7e, 0x7e, 0x31, 0xc2, 0xe5, 0xbd, 0x66, 0x01, 0x18, 0x39, 0x29, 0x6a, 0x78, 0x9a, 0x3b, 0xc0, 0x04, 0x5c, 0x8a, 0x5f, 0xb4, 0x2c, 0x7d, 0x1b, 0xd9, 0x98, 0xf5, 0x44, 0x49, 0x57, 0x9b, 0x44, 0x68, 0x17, 0xaf, 0xbd, 0x17, 0x27, 0x3e, 0x66, 0x2c, 0x97, 0xee, 0x72, 0x99, 0x5e, 0xf4, 0x26, 0x40, 0xc5, 0x50, 0xb9, 0x01, 0x3f, 0xad, 0x07, 0x61, 0x35, 0x3c, 0x70, 0x86, 0xa2, 0x72, 0xc2, 0x40, 0x88, 0xbe, 0x94, 0x76, 0x9f, 0xd1, 0x66, 0x50, }; static const unsigned char ecdh_secp521r1_5887_ourpubkey[] = { 0x01, 0xbc, 0x33, 0x42, 0x5e, 0x72, 0xa1, 0x27, 0x79, 0xea, 0xcb, 0x2e, 0xdc, 0xc5, 0xb6, 0x3d, 0x12, 0x81, 0xf7, 0xe8, 0x6d, 0xbc, 0x7b, 0xf9, 0x9a, 0x7a, 0xbd, 0x0c, 0xfe, 0x36, 0x7d, 0xe4, 0x66, 0x6d, 0x6e, 0xdb, 0xb8, 0x52, 0x5b, 0xff, 0xe5, 0x22, 0x2f, 0x07, 0x02, 0xc3, 0x09, 0x6d, 0xec, 0x08, 0x84, 0xce, 0x57, 0x2f, 0x5a, 0x15, 0xc4, 0x23, 0xfd, 0xf4, 0x4d, 0x01, 0xdd, 0x99, 0xc6, 0x1d, 0x00, 0xf2, 0xf9, 0x16, 0x66, 0x77, 0xa4, 0x9c, 0xac, 0xa2, 0x1c, 0x18, 0xb2, 0xcc, 0x26, 0x19, 0xc2, 0xfd, 0xb0, 0x4f, 0x83, 0x1f, 0x2e, 0x69, 0x0d, 0xaa, 0xd3, 0x71, 0xb5, 0xff, 0x53, 0x7b, 0x3f, 0xbb, 0xdc, 0xb5, 0x14, 0xdf, 0xe0, 0x85, 0x6e, 0xcc, 0x6e, 0xa2, 0xe4, 0xb4, 0xba, 0xdf, 0x64, 0x62, 0x58, 0x60, 0x1e, 0xa4, 0xe6, 0x07, 0xb0, 0x2e, 0xca, 0x27, 0xbe, 0x1d, 0x27, 0x06, 0x57, 0x95, }; static const unsigned char ecdh_secp521r1_5887_privkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x51, 0x86, 0x87, 0x83, 0xbf, 0x2f, 0x96, 0x6b, 0x7f, 0xcc, 0x01, 0x48, 0xf7, 0x09, 0xa5, 0xd0, 0x3b, 0xb5, 0xc9, 0xb8, 0x89, 0x9c, 0x47, 0xae, 0xbb, 0x6f, 0xb7, 0x1e, 0x91, 0x38, 0x63, 0xf7, }; static const unsigned char ecdh_secp521r1_5887_sharedsecret[] = { 0x01, 0xbc, 0x33, 0x42, 0x5e, 0x72, 0xa1, 0x27, 0x79, 0xea, 0xcb, 0x2e, 0xdc, 0xc5, 0xb6, 0x3d, 0x12, 0x81, 0xf7, 0xe8, 0x6d, 0xbc, 0x7b, 0xf9, 0x9a, 0x7a, 0xbd, 0x0c, 0xfe, 0x36, 0x7d, 0xe4, 0x66, 0x6d, 0x6e, 0xdb, 0xb8, 0x52, 0x5b, 0xff, 0xe5, 0x22, 0x2f, 0x07, 0x02, 0xc3, 0x09, 0x6d, 0xec, 0x08, 0x84, 0xce, 0x57, 0x2f, 0x5a, 0x15, 0xc4, 0x23, 0xfd, 0xf4, 0x4d, 0x01, 0xdd, 0x99, 0xc6, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp521r1_5887 = { .name = "ecdh_secp521r1_5887", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5887_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5887_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5887_privkey, .privkeylen = 66, .sharedsecret = ecdh_secp521r1_5887_sharedsecret, .sharedsecretlen = 66, .result = 1, .comment = "CVE-2017-10176: Issue with elliptic curve addition, tcId is 607 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5888 for ECDH, tcId is 608 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5888_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5888_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5888_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5888 = { .name = "ecdh_secp521r1_5888", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5888_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5888_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5888_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 608 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5889 for ECDH, tcId is 609 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5889_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_5889_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5889_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5889 = { .name = "ecdh_secp521r1_5889", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5889_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5889_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5889_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 609 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5890 for ECDH, tcId is 610 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5890_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_5890_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5890_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5890 = { .name = "ecdh_secp521r1_5890", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5890_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5890_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5890_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 610 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5891 for ECDH, tcId is 611 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5891_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5891_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5891_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5891 = { .name = "ecdh_secp521r1_5891", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5891_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5891_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5891_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 611 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5892 for ECDH, tcId is 612 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5892_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5892_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5892_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5892 = { .name = "ecdh_secp521r1_5892", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5892_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5892_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5892_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 612 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5893 for ECDH, tcId is 613 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5893_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_5893_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5893_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5893 = { .name = "ecdh_secp521r1_5893", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5893_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5893_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5893_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 613 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5894 for ECDH, tcId is 614 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5894_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_5894_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5894_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5894 = { .name = "ecdh_secp521r1_5894", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5894_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5894_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5894_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 614 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5895 for ECDH, tcId is 615 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5895_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5895_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5895_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5895 = { .name = "ecdh_secp521r1_5895", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5895_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5895_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5895_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 615 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5896 for ECDH, tcId is 616 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5896_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5896_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5896_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5896 = { .name = "ecdh_secp521r1_5896", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5896_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5896_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5896_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 616 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5897 for ECDH, tcId is 617 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5897_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_5897_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5897_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5897 = { .name = "ecdh_secp521r1_5897", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5897_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5897_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5897_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 617 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5898 for ECDH, tcId is 618 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5898_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_5898_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5898_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5898 = { .name = "ecdh_secp521r1_5898", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5898_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5898_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5898_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 618 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5899 for ECDH, tcId is 619 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5899_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5899_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5899_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5899 = { .name = "ecdh_secp521r1_5899", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5899_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5899_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5899_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 619 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5900 for ECDH, tcId is 620 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5900_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5900_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5900_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5900 = { .name = "ecdh_secp521r1_5900", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5900_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5900_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5900_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 620 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5901 for ECDH, tcId is 621 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5901_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp521r1_5901_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5901_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5901 = { .name = "ecdh_secp521r1_5901", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5901_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5901_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5901_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 621 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5902 for ECDH, tcId is 622 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5902_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, }; static const unsigned char ecdh_secp521r1_5902_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5902_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5902 = { .name = "ecdh_secp521r1_5902", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5902_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5902_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5902_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 622 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5903 for ECDH, tcId is 623 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5903_peerpubkey[] = { 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp521r1_5903_ourpubkey[] = { 0x00, 0x9b, 0x15, 0xd9, 0x54, 0x2f, 0x45, 0x79, 0xd8, 0x6c, 0xf6, 0x8d, 0x3b, 0x60, 0xac, 0x74, 0x24, 0xfb, 0x90, 0x2b, 0xe1, 0x3b, 0xa6, 0x40, 0x49, 0x6a, 0x40, 0xb7, 0xa4, 0xac, 0x4d, 0x05, 0x7b, 0x99, 0x0a, 0xd6, 0x7c, 0x34, 0x25, 0x41, 0x08, 0x3f, 0x37, 0x7a, 0xf6, 0x32, 0x24, 0x8e, 0x6b, 0x87, 0x6d, 0xf1, 0xde, 0x5c, 0x98, 0x54, 0x73, 0x15, 0x0d, 0x03, 0x04, 0x8b, 0x2b, 0xcd, 0xbd, 0xf9, 0x00, 0x5e, 0xc0, 0xd0, 0x1b, 0x44, 0x24, 0x21, 0xf5, 0x48, 0x3e, 0x01, 0x6c, 0xf4, 0x2f, 0x8a, 0xca, 0x40, 0x11, 0xf0, 0x1b, 0x9f, 0x54, 0x5a, 0x8b, 0x20, 0xe0, 0x05, 0x68, 0x78, 0x50, 0x50, 0x4a, 0xa8, 0x28, 0x1f, 0xdd, 0x00, 0xaa, 0x32, 0x87, 0x39, 0xd0, 0x5a, 0x26, 0x7b, 0x7a, 0x9a, 0xfd, 0x3f, 0x4b, 0x6b, 0x9b, 0x15, 0x88, 0xd4, 0xef, 0x10, 0xe1, 0xf8, 0x67, 0x36, 0x52, 0x4e, 0x1b, 0x57, }; static const unsigned char ecdh_secp521r1_5903_privkey[] = { 0x01, 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x82, 0xc7, 0xa6, 0x3d, 0x13, 0x29, 0x4b, 0xfe, 0xa1, 0x13, 0xf2, 0x71, 0xe0, 0x1a, 0xe3, 0x05, 0xf7, 0x9a, 0xf4, 0x32, 0x03, 0xcd, 0x32, 0x11, 0x5e, 0xcd, 0xf2, 0xfe, 0xe5, 0xfe, 0xdb, 0xa2, 0xad, 0x31, 0x26, 0x78, 0x3d, 0xb0, 0xc3, 0xc4, 0xd3, 0x02, 0x9a, 0x14, 0x36, 0x9e, 0x8f, 0x80, 0xdb, 0xd1, 0x5d, 0x51, 0x2f, 0x13, 0xe5, 0x1c, 0x50, 0x3c, }; static const wycheproof_ecdh_test ecdh_secp521r1_5903 = { .name = "ecdh_secp521r1_5903", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5903_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5903_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5903_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 623 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5904 for ECDH, tcId is 624 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5904_peerpubkey[] = { 0x00, 0xc2, 0xa4, 0x3a, 0xc3, 0x74, 0x2b, 0x09, 0xe0, 0x06, 0xc2, 0xdf, 0xc9, 0xc3, 0x64, 0x44, 0xd7, 0xe6, 0x99, 0xf5, 0x67, 0xa7, 0x3f, 0x67, 0x4c, 0xe2, 0x57, 0x33, 0x0b, 0x31, 0x2d, 0xd7, 0xa8, 0xa0, 0x4f, 0xbe, 0x92, 0xd1, 0xd9, 0xac, 0xbc, 0xc6, 0x5f, 0x61, 0x84, 0x71, 0x1a, 0xda, 0x5b, 0xf3, 0x9f, 0x6e, 0x11, 0xe0, 0xcb, 0xde, 0x98, 0xf1, 0x64, 0x0d, 0x09, 0x9e, 0xb9, 0x0d, 0xfc, 0xe7, 0x01, 0x80, 0x2d, 0x77, 0x55, 0xc2, 0xfe, 0x31, 0x80, 0x84, 0x8d, 0x4a, 0x70, 0xb1, 0x70, 0x09, 0x6e, 0xc6, 0x4e, 0xba, 0x99, 0xb4, 0x78, 0xba, 0x7f, 0x6f, 0xc1, 0x29, 0xb0, 0x56, 0x62, 0x79, 0xb8, 0xe1, 0xab, 0x79, 0x62, 0xfa, 0x91, 0x2f, 0xc4, 0xae, 0x53, 0xb5, 0x20, 0x2a, 0x03, 0x52, 0x06, 0x17, 0x84, 0x3d, 0xc6, 0x3e, 0x5c, 0xb5, 0xf9, 0x56, 0xec, 0x7f, 0x14, 0x53, 0xd0, 0x86, 0x5f, 0xe1, }; static const unsigned char ecdh_secp521r1_5904_ourpubkey[] = { 0x01, 0xea, 0x78, 0x18, 0x1e, 0x04, 0xf4, 0x80, 0xfd, 0x98, 0x9e, 0x05, 0x96, 0x42, 0x44, 0x61, 0x3b, 0x7f, 0x7a, 0x63, 0x79, 0xab, 0xf0, 0x81, 0x93, 0x27, 0xa9, 0xf5, 0xad, 0xef, 0xa6, 0xf4, 0x41, 0x07, 0x45, 0x02, 0x8b, 0xf1, 0xa4, 0x6a, 0x80, 0x31, 0xfe, 0xc7, 0x00, 0x37, 0xeb, 0xcb, 0x50, 0x7d, 0xbd, 0x8f, 0x50, 0xb8, 0x12, 0xa4, 0xbc, 0xc0, 0x31, 0x3b, 0xa7, 0xdf, 0x02, 0xc7, 0xd3, 0x55, 0x01, 0xe0, 0x45, 0x5f, 0xe6, 0xce, 0x1e, 0xa9, 0x98, 0xc7, 0x39, 0x75, 0x69, 0x48, 0xcf, 0xa2, 0x7b, 0xb8, 0xb1, 0xa9, 0xe0, 0xca, 0x0a, 0x50, 0x26, 0x31, 0x83, 0x6f, 0x96, 0xe0, 0xf5, 0xdf, 0x66, 0x9c, 0xb3, 0xca, 0x3f, 0x6f, 0x7c, 0x0f, 0x92, 0x40, 0xb3, 0xd8, 0x7e, 0x17, 0x41, 0x61, 0xb3, 0xb0, 0x4d, 0x83, 0x9a, 0xb6, 0xfe, 0x46, 0xf2, 0x45, 0xbd, 0x62, 0x65, 0x05, 0xef, 0x4b, 0x41, 0x54, }; static const unsigned char ecdh_secp521r1_5904_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5904 = { .name = "ecdh_secp521r1_5904", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5904_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5904_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5904_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 624 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5905 for ECDH, tcId is 625 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5905_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp521r1_5905_ourpubkey[] = { 0x01, 0xea, 0x78, 0x18, 0x1e, 0x04, 0xf4, 0x80, 0xfd, 0x98, 0x9e, 0x05, 0x96, 0x42, 0x44, 0x61, 0x3b, 0x7f, 0x7a, 0x63, 0x79, 0xab, 0xf0, 0x81, 0x93, 0x27, 0xa9, 0xf5, 0xad, 0xef, 0xa6, 0xf4, 0x41, 0x07, 0x45, 0x02, 0x8b, 0xf1, 0xa4, 0x6a, 0x80, 0x31, 0xfe, 0xc7, 0x00, 0x37, 0xeb, 0xcb, 0x50, 0x7d, 0xbd, 0x8f, 0x50, 0xb8, 0x12, 0xa4, 0xbc, 0xc0, 0x31, 0x3b, 0xa7, 0xdf, 0x02, 0xc7, 0xd3, 0x55, 0x01, 0xe0, 0x45, 0x5f, 0xe6, 0xce, 0x1e, 0xa9, 0x98, 0xc7, 0x39, 0x75, 0x69, 0x48, 0xcf, 0xa2, 0x7b, 0xb8, 0xb1, 0xa9, 0xe0, 0xca, 0x0a, 0x50, 0x26, 0x31, 0x83, 0x6f, 0x96, 0xe0, 0xf5, 0xdf, 0x66, 0x9c, 0xb3, 0xca, 0x3f, 0x6f, 0x7c, 0x0f, 0x92, 0x40, 0xb3, 0xd8, 0x7e, 0x17, 0x41, 0x61, 0xb3, 0xb0, 0x4d, 0x83, 0x9a, 0xb6, 0xfe, 0x46, 0xf2, 0x45, 0xbd, 0x62, 0x65, 0x05, 0xef, 0x4b, 0x41, 0x54, }; static const unsigned char ecdh_secp521r1_5905_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5905 = { .name = "ecdh_secp521r1_5905", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5905_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5905_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5905_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 625 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5906 for ECDH, tcId is 626 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5906_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_secp521r1_5906_ourpubkey[] = { 0x01, 0xea, 0x78, 0x18, 0x1e, 0x04, 0xf4, 0x80, 0xfd, 0x98, 0x9e, 0x05, 0x96, 0x42, 0x44, 0x61, 0x3b, 0x7f, 0x7a, 0x63, 0x79, 0xab, 0xf0, 0x81, 0x93, 0x27, 0xa9, 0xf5, 0xad, 0xef, 0xa6, 0xf4, 0x41, 0x07, 0x45, 0x02, 0x8b, 0xf1, 0xa4, 0x6a, 0x80, 0x31, 0xfe, 0xc7, 0x00, 0x37, 0xeb, 0xcb, 0x50, 0x7d, 0xbd, 0x8f, 0x50, 0xb8, 0x12, 0xa4, 0xbc, 0xc0, 0x31, 0x3b, 0xa7, 0xdf, 0x02, 0xc7, 0xd3, 0x55, 0x01, 0xe0, 0x45, 0x5f, 0xe6, 0xce, 0x1e, 0xa9, 0x98, 0xc7, 0x39, 0x75, 0x69, 0x48, 0xcf, 0xa2, 0x7b, 0xb8, 0xb1, 0xa9, 0xe0, 0xca, 0x0a, 0x50, 0x26, 0x31, 0x83, 0x6f, 0x96, 0xe0, 0xf5, 0xdf, 0x66, 0x9c, 0xb3, 0xca, 0x3f, 0x6f, 0x7c, 0x0f, 0x92, 0x40, 0xb3, 0xd8, 0x7e, 0x17, 0x41, 0x61, 0xb3, 0xb0, 0x4d, 0x83, 0x9a, 0xb6, 0xfe, 0x46, 0xf2, 0x45, 0xbd, 0x62, 0x65, 0x05, 0xef, 0x4b, 0x41, 0x54, }; static const unsigned char ecdh_secp521r1_5906_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5906 = { .name = "ecdh_secp521r1_5906", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5906_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5906_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5906_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 626 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5907 for ECDH, tcId is 627 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5907_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa1, 0x26, 0x3e, 0x75, 0xb8, 0x7a, 0xe0, 0x93, 0x70, 0x60, 0xff, 0x14, 0x72, 0xf3, 0x30, 0xee, 0x55, 0xcd, 0xf8, 0xf4, 0x32, 0x9d, 0x62, 0x84, 0xa9, 0xeb, 0xfb, 0xcc, 0x85, 0x6c, 0x11, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x25, 0xe7, 0x2c, 0xbe, 0xbf, 0xf4, 0x1e, 0x54, 0xfb, 0x6f, 0x00, 0xe1, 0x1a, 0xfe, 0x53, 0xa1, 0x79, 0x37, 0xbe, 0xdb, 0xf2, 0xdf, 0x78, 0x7f, 0x8e, 0xf9, 0x58, 0x4f, 0x77, 0x58, 0x38, }; static const unsigned char ecdh_secp521r1_5907_ourpubkey[] = { 0x01, 0xea, 0x78, 0x18, 0x1e, 0x04, 0xf4, 0x80, 0xfd, 0x98, 0x9e, 0x05, 0x96, 0x42, 0x44, 0x61, 0x3b, 0x7f, 0x7a, 0x63, 0x79, 0xab, 0xf0, 0x81, 0x93, 0x27, 0xa9, 0xf5, 0xad, 0xef, 0xa6, 0xf4, 0x41, 0x07, 0x45, 0x02, 0x8b, 0xf1, 0xa4, 0x6a, 0x80, 0x31, 0xfe, 0xc7, 0x00, 0x37, 0xeb, 0xcb, 0x50, 0x7d, 0xbd, 0x8f, 0x50, 0xb8, 0x12, 0xa4, 0xbc, 0xc0, 0x31, 0x3b, 0xa7, 0xdf, 0x02, 0xc7, 0xd3, 0x55, 0x01, 0xe0, 0x45, 0x5f, 0xe6, 0xce, 0x1e, 0xa9, 0x98, 0xc7, 0x39, 0x75, 0x69, 0x48, 0xcf, 0xa2, 0x7b, 0xb8, 0xb1, 0xa9, 0xe0, 0xca, 0x0a, 0x50, 0x26, 0x31, 0x83, 0x6f, 0x96, 0xe0, 0xf5, 0xdf, 0x66, 0x9c, 0xb3, 0xca, 0x3f, 0x6f, 0x7c, 0x0f, 0x92, 0x40, 0xb3, 0xd8, 0x7e, 0x17, 0x41, 0x61, 0xb3, 0xb0, 0x4d, 0x83, 0x9a, 0xb6, 0xfe, 0x46, 0xf2, 0x45, 0xbd, 0x62, 0x65, 0x05, 0xef, 0x4b, 0x41, 0x54, }; static const unsigned char ecdh_secp521r1_5907_privkey[] = { 0x01, 0x39, 0x6a, 0x99, 0xa3, 0x37, 0x82, 0x1d, 0x8c, 0x92, 0xd7, 0x5f, 0x56, 0x27, 0x93, 0xc7, 0x0a, 0xfa, 0x40, 0x74, 0xae, 0x5e, 0x6d, 0xad, 0x2b, 0xd2, 0xcc, 0x6a, 0xea, 0x8f, 0x36, 0xf6, 0xc4, 0x5d, 0xdd, 0xe7, 0x39, 0x31, 0x44, 0x0d, 0x22, 0x9f, 0x34, 0x00, 0x93, 0xab, 0x8c, 0x6f, 0xb3, 0xf2, 0x0d, 0x20, 0x99, 0x9a, 0x37, 0x37, 0x1f, 0xe9, 0x21, 0x04, 0x69, 0x21, 0x36, 0xd0, 0x19, 0xb7, }; static const wycheproof_ecdh_test ecdh_secp521r1_5907 = { .name = "ecdh_secp521r1_5907", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5907_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5907_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5907_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256k1, tcId is 627 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5908 for ECDH, tcId is 628 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5908_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x53, 0x36, 0x6d, 0xb7, 0x9b, 0x32, 0x07, 0x81, 0x93, 0x6d, 0xf6, 0x1b, 0xb5, 0x5d, 0x44, 0x99, 0x94, 0x9d, 0x81, 0x3e, 0xe5, 0xab, 0xaa, 0x5d, 0xda, 0x70, 0xda, 0x4f, 0x97, 0xf6, 0x82, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcc, 0xc6, 0x9d, 0x7c, 0xd0, 0xb7, 0x26, 0x6c, 0xfc, 0x28, 0xd0, 0xdc, 0xaf, 0xdf, 0x3e, 0x83, 0x73, 0x8c, 0xc6, 0x11, 0xac, 0xb0, 0x8f, 0x8b, 0x89, 0x6c, 0x4e, 0xcf, 0x82, 0xdd, 0x65, 0xae, }; static const unsigned char ecdh_secp521r1_5908_ourpubkey[] = { 0x01, 0x72, 0x49, 0x0e, 0x27, 0xf6, 0x64, 0x7c, 0xfd, 0x0b, 0xf7, 0x7e, 0xf9, 0xf4, 0xf4, 0x16, 0x0a, 0xa8, 0xcf, 0x9b, 0x56, 0xe0, 0xec, 0x2f, 0xeb, 0x32, 0xad, 0x12, 0xca, 0xc1, 0x48, 0x92, 0x00, 0xfa, 0xdf, 0x69, 0x4f, 0xf0, 0x85, 0x0b, 0xe2, 0x77, 0x40, 0x43, 0xc4, 0x33, 0xd3, 0x85, 0xff, 0xc3, 0x9f, 0x96, 0xfe, 0xf7, 0xcd, 0xcf, 0x4d, 0x00, 0x9d, 0xcf, 0x12, 0x56, 0xa0, 0x81, 0x17, 0x4c, 0x01, 0x2e, 0x36, 0x78, 0x78, 0xf5, 0xcf, 0x6e, 0x08, 0xb4, 0x2d, 0x58, 0xc8, 0x13, 0x37, 0x89, 0xef, 0x0f, 0xf9, 0xd6, 0x7b, 0x0c, 0xfa, 0x43, 0xe5, 0x6e, 0x28, 0x34, 0x82, 0x4e, 0xf9, 0x91, 0x53, 0x0f, 0xc4, 0x22, 0x13, 0x34, 0xd2, 0x28, 0x48, 0x21, 0xd3, 0x92, 0xea, 0xc2, 0x1e, 0x4c, 0xa5, 0xaf, 0x14, 0xa6, 0xed, 0x6c, 0xc8, 0x4c, 0xcd, 0xd5, 0x09, 0xce, 0xfa, 0x44, 0xc1, 0xc9, 0x87, 0x6d, }; static const unsigned char ecdh_secp521r1_5908_privkey[] = { 0x00, 0x2b, 0x0d, 0x77, 0xcd, 0x5c, 0x47, 0x89, 0x0a, 0x52, 0x61, 0x2f, 0xc9, 0xb3, 0x8d, 0x80, 0x42, 0x66, 0xb9, 0x78, 0x4a, 0xbc, 0xa2, 0xb9, 0x4d, 0xe9, 0x9b, 0xdc, 0x67, 0x47, 0x5a, 0xec, 0xc2, 0xab, 0xc3, 0x1e, 0x72, 0xa6, 0xda, 0xda, 0x0c, 0xf1, 0xd4, 0xd7, 0x76, 0xb0, 0x02, 0xc8, 0xd2, 0xdb, 0xd6, 0x01, 0xab, 0x8a, 0x0c, 0xae, 0x41, 0x57, 0x37, 0x08, 0x46, 0xb2, 0x0e, 0x8d, 0xd6, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5908 = { .name = "ecdh_secp521r1_5908", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5908_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5908_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5908_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 628 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5909 for ECDH, tcId is 629 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5909_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaa, 0x45, 0xc1, 0x3c, 0xe3, 0xcf, 0xea, 0x85, 0x38, 0x42, 0x27, 0x12, 0x90, 0x3e, 0xdc, 0x0c, 0xe5, 0x6d, 0xf7, 0x4e, 0xde, 0x07, 0x76, 0xe8, 0x43, 0x55, 0x5a, 0x78, 0x6f, 0x97, 0x38, 0xde, 0x19, 0x43, 0xdf, 0xfd, 0x72, 0x9a, 0xdd, 0xfd, 0x47, 0x72, 0x16, 0x97, 0x51, 0xd7, 0x76, 0x5a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x45, 0xb5, 0xbb, 0x54, 0x0a, 0x47, 0xd1, 0x98, 0xf4, 0xc8, 0xc7, 0xc2, 0x1e, 0x67, 0x56, 0x0c, 0x1e, 0x12, 0xf7, 0x0b, 0x64, 0x52, 0x01, 0x09, 0xbb, 0x88, 0x58, 0xa3, 0xf8, 0xd6, 0xbb, 0x40, 0x12, 0x00, 0x34, 0x31, 0xdb, 0x07, 0x78, 0x63, 0x33, 0x13, 0xfd, 0xb9, 0x46, 0x4c, 0x47, 0xec, }; static const unsigned char ecdh_secp521r1_5909_ourpubkey[] = { 0x01, 0x72, 0x49, 0x0e, 0x27, 0xf6, 0x64, 0x7c, 0xfd, 0x0b, 0xf7, 0x7e, 0xf9, 0xf4, 0xf4, 0x16, 0x0a, 0xa8, 0xcf, 0x9b, 0x56, 0xe0, 0xec, 0x2f, 0xeb, 0x32, 0xad, 0x12, 0xca, 0xc1, 0x48, 0x92, 0x00, 0xfa, 0xdf, 0x69, 0x4f, 0xf0, 0x85, 0x0b, 0xe2, 0x77, 0x40, 0x43, 0xc4, 0x33, 0xd3, 0x85, 0xff, 0xc3, 0x9f, 0x96, 0xfe, 0xf7, 0xcd, 0xcf, 0x4d, 0x00, 0x9d, 0xcf, 0x12, 0x56, 0xa0, 0x81, 0x17, 0x4c, 0x01, 0x2e, 0x36, 0x78, 0x78, 0xf5, 0xcf, 0x6e, 0x08, 0xb4, 0x2d, 0x58, 0xc8, 0x13, 0x37, 0x89, 0xef, 0x0f, 0xf9, 0xd6, 0x7b, 0x0c, 0xfa, 0x43, 0xe5, 0x6e, 0x28, 0x34, 0x82, 0x4e, 0xf9, 0x91, 0x53, 0x0f, 0xc4, 0x22, 0x13, 0x34, 0xd2, 0x28, 0x48, 0x21, 0xd3, 0x92, 0xea, 0xc2, 0x1e, 0x4c, 0xa5, 0xaf, 0x14, 0xa6, 0xed, 0x6c, 0xc8, 0x4c, 0xcd, 0xd5, 0x09, 0xce, 0xfa, 0x44, 0xc1, 0xc9, 0x87, 0x6d, }; static const unsigned char ecdh_secp521r1_5909_privkey[] = { 0x00, 0x2b, 0x0d, 0x77, 0xcd, 0x5c, 0x47, 0x89, 0x0a, 0x52, 0x61, 0x2f, 0xc9, 0xb3, 0x8d, 0x80, 0x42, 0x66, 0xb9, 0x78, 0x4a, 0xbc, 0xa2, 0xb9, 0x4d, 0xe9, 0x9b, 0xdc, 0x67, 0x47, 0x5a, 0xec, 0xc2, 0xab, 0xc3, 0x1e, 0x72, 0xa6, 0xda, 0xda, 0x0c, 0xf1, 0xd4, 0xd7, 0x76, 0xb0, 0x02, 0xc8, 0xd2, 0xdb, 0xd6, 0x01, 0xab, 0x8a, 0x0c, 0xae, 0x41, 0x57, 0x37, 0x08, 0x46, 0xb2, 0x0e, 0x8d, 0xd6, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5909 = { .name = "ecdh_secp521r1_5909", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5909_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5909_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5909_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 629 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5910 for ECDH, tcId is 630 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) static const unsigned char ecdh_secp521r1_5910_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0xe0, 0x1a, 0x15, 0x55, 0x38, 0x0b, 0xe1, 0x88, 0xd6, 0x9a, 0xac, 0x34, 0x0a, 0x46, 0x75, 0xe4, 0xa6, 0xf7, 0x3d, 0x63, 0x97, 0x6a, 0x10, 0x75, 0x24, 0x98, 0x27, 0xd8, 0xec, 0xc2, 0xa3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x65, 0xed, 0x1e, 0xb5, 0x91, 0x95, 0x4e, 0x33, 0xa3, 0x8f, 0x68, 0xef, 0x8a, 0xa6, 0xc9, 0x30, 0x22, 0x9d, 0x87, 0x55, 0xe5, 0x32, 0x57, 0x60, 0x2b, 0x3e, 0xaa, 0x87, 0xde, 0x6f, 0x02, }; static const unsigned char ecdh_secp521r1_5910_ourpubkey[] = { 0x01, 0x72, 0x49, 0x0e, 0x27, 0xf6, 0x64, 0x7c, 0xfd, 0x0b, 0xf7, 0x7e, 0xf9, 0xf4, 0xf4, 0x16, 0x0a, 0xa8, 0xcf, 0x9b, 0x56, 0xe0, 0xec, 0x2f, 0xeb, 0x32, 0xad, 0x12, 0xca, 0xc1, 0x48, 0x92, 0x00, 0xfa, 0xdf, 0x69, 0x4f, 0xf0, 0x85, 0x0b, 0xe2, 0x77, 0x40, 0x43, 0xc4, 0x33, 0xd3, 0x85, 0xff, 0xc3, 0x9f, 0x96, 0xfe, 0xf7, 0xcd, 0xcf, 0x4d, 0x00, 0x9d, 0xcf, 0x12, 0x56, 0xa0, 0x81, 0x17, 0x4c, 0x01, 0x2e, 0x36, 0x78, 0x78, 0xf5, 0xcf, 0x6e, 0x08, 0xb4, 0x2d, 0x58, 0xc8, 0x13, 0x37, 0x89, 0xef, 0x0f, 0xf9, 0xd6, 0x7b, 0x0c, 0xfa, 0x43, 0xe5, 0x6e, 0x28, 0x34, 0x82, 0x4e, 0xf9, 0x91, 0x53, 0x0f, 0xc4, 0x22, 0x13, 0x34, 0xd2, 0x28, 0x48, 0x21, 0xd3, 0x92, 0xea, 0xc2, 0x1e, 0x4c, 0xa5, 0xaf, 0x14, 0xa6, 0xed, 0x6c, 0xc8, 0x4c, 0xcd, 0xd5, 0x09, 0xce, 0xfa, 0x44, 0xc1, 0xc9, 0x87, 0x6d, }; static const unsigned char ecdh_secp521r1_5910_privkey[] = { 0x00, 0x2b, 0x0d, 0x77, 0xcd, 0x5c, 0x47, 0x89, 0x0a, 0x52, 0x61, 0x2f, 0xc9, 0xb3, 0x8d, 0x80, 0x42, 0x66, 0xb9, 0x78, 0x4a, 0xbc, 0xa2, 0xb9, 0x4d, 0xe9, 0x9b, 0xdc, 0x67, 0x47, 0x5a, 0xec, 0xc2, 0xab, 0xc3, 0x1e, 0x72, 0xa6, 0xda, 0xda, 0x0c, 0xf1, 0xd4, 0xd7, 0x76, 0xb0, 0x02, 0xc8, 0xd2, 0xdb, 0xd6, 0x01, 0xab, 0x8a, 0x0c, 0xae, 0x41, 0x57, 0x37, 0x08, 0x46, 0xb2, 0x0e, 0x8d, 0xd6, 0x57, }; static const wycheproof_ecdh_test ecdh_secp521r1_5910 = { .name = "ecdh_secp521r1_5910", .ecdh_alg = ECCCDH, .curve = &secp521r1_str_params, .peerpubkey = ecdh_secp521r1_5910_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp521r1_5910_ourpubkey, .ourpubkeylen = 132, .privkey = ecdh_secp521r1_5910_privkey, .privkeylen = 66, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256k1, tcId is 630 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) */ /* Test 5911 for ECDH, tcId is 631 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5911_peerpubkey[] = { 0xd8, 0x09, 0x6a, 0xf8, 0xa1, 0x1e, 0x0b, 0x80, 0x03, 0x7e, 0x1e, 0xe6, 0x82, 0x46, 0xb5, 0xdc, 0xbb, 0x0a, 0xeb, 0x1c, 0xf1, 0x24, 0x4f, 0xd7, 0x67, 0xdb, 0x80, 0xf3, 0xfa, 0x27, 0xda, 0x2b, 0x39, 0x68, 0x12, 0xea, 0x16, 0x86, 0xe7, 0x47, 0x2e, 0x96, 0x92, 0xea, 0xf3, 0xe9, 0x58, 0xe5, 0x0e, 0x95, 0x00, 0xd3, 0xb4, 0xc7, 0x72, 0x43, 0xdb, 0x1f, 0x2a, 0xcd, 0x67, 0xba, 0x9c, 0xc4, }; static const unsigned char ecdh_secp256k1_5911_ourpubkey[] = { 0x24, 0x37, 0x21, 0x75, 0x54, 0xf2, 0xc4, 0xa4, 0x25, 0xd3, 0x20, 0xac, 0xb9, 0x51, 0x9a, 0xbe, 0x59, 0xfb, 0x49, 0x12, 0x79, 0x63, 0x0c, 0x8d, 0xaa, 0x8d, 0x19, 0xbc, 0xaa, 0x6d, 0x6d, 0x32, 0xfc, 0x1d, 0x8c, 0x23, 0xfe, 0xba, 0x0a, 0x9e, 0xa3, 0x93, 0x1f, 0xa3, 0xba, 0xa6, 0x68, 0x4d, 0x87, 0x0a, 0x51, 0x48, 0x85, 0xb9, 0xf8, 0x54, 0xba, 0x1d, 0x1f, 0xda, 0x8f, 0xb3, 0x3c, 0xc3, }; static const unsigned char ecdh_secp256k1_5911_privkey[] = { 0xf4, 0xb7, 0xff, 0x7c, 0xcc, 0xc9, 0x88, 0x13, 0xa6, 0x9f, 0xae, 0x3d, 0xf2, 0x22, 0xbf, 0xe3, 0xf4, 0xe2, 0x8f, 0x76, 0x4b, 0xf9, 0x1b, 0x4a, 0x10, 0xd8, 0x09, 0x6c, 0xe4, 0x46, 0xb2, 0x54, }; static const unsigned char ecdh_secp256k1_5911_sharedsecret[] = { 0x54, 0x4d, 0xfa, 0xe2, 0x2a, 0xf6, 0xaf, 0x93, 0x90, 0x42, 0xb1, 0xd8, 0x5b, 0x71, 0xa1, 0xe4, 0x9e, 0x9a, 0x56, 0x14, 0x12, 0x3c, 0x4d, 0x6a, 0xd0, 0xc8, 0xaf, 0x65, 0xba, 0xf8, 0x7d, 0x65, }; static const wycheproof_ecdh_test ecdh_secp256k1_5911 = { .name = "ecdh_secp256k1_5911", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5911_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5911_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5911_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5911_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 631 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5912 for ECDH, tcId is 632 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5912_peerpubkey[] = { 0x96, 0x5f, 0xf4, 0x2d, 0x65, 0x4e, 0x05, 0x8e, 0xe7, 0x31, 0x7c, 0xce, 0xd7, 0xca, 0xf0, 0x93, 0xfb, 0xb1, 0x80, 0xd8, 0xd3, 0xa7, 0x4b, 0x0d, 0xcd, 0x9d, 0x8c, 0xd4, 0x7a, 0x39, 0xd5, 0xcb, 0x9c, 0x2a, 0xa4, 0xda, 0xac, 0x01, 0xa4, 0xbe, 0x37, 0xc2, 0x04, 0x67, 0xed, 0xe9, 0x64, 0x66, 0x2f, 0x12, 0x98, 0x3e, 0x0b, 0x52, 0x72, 0xa4, 0x7a, 0x5f, 0x27, 0x85, 0x68, 0x5d, 0x80, 0x87, }; static const unsigned char ecdh_secp256k1_5912_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5912_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5912_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_5912 = { .name = "ecdh_secp256k1_5912", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5912_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5912_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5912_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5912_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 632 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5913 for ECDH, tcId is 633 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5913_peerpubkey[] = { 0x06, 0xc4, 0xb8, 0x7b, 0xa7, 0x6c, 0x6d, 0xcb, 0x10, 0x1f, 0x54, 0xa0, 0x50, 0xa0, 0x86, 0xaa, 0x2c, 0xb0, 0x72, 0x2f, 0x03, 0x13, 0x7d, 0xf5, 0xa9, 0x22, 0x47, 0x2f, 0x1b, 0xdc, 0x11, 0xb9, 0x82, 0xe3, 0xc7, 0x35, 0xc4, 0xb6, 0xc4, 0x81, 0xd0, 0x92, 0x69, 0x55, 0x9f, 0x08, 0x0a, 0xd0, 0x86, 0x32, 0xf3, 0x70, 0xa0, 0x54, 0xaf, 0x12, 0xc1, 0xfd, 0x1e, 0xce, 0xd2, 0xea, 0x92, 0x11, }; static const unsigned char ecdh_secp256k1_5913_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5913_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5913_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_5913 = { .name = "ecdh_secp256k1_5913", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5913_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5913_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5913_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5913_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 633 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5914 for ECDH, tcId is 634 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5914_peerpubkey[] = { 0xbb, 0xa3, 0x0e, 0xef, 0x79, 0x67, 0xa2, 0xf2, 0xf0, 0x8a, 0x2f, 0xfa, 0xda, 0xc0, 0xe4, 0x1f, 0xd4, 0xdb, 0x12, 0xa9, 0x3c, 0xef, 0x0b, 0x04, 0x5b, 0x57, 0x06, 0xf2, 0x85, 0x38, 0x21, 0xe6, 0xd5, 0x0b, 0x2b, 0xf8, 0xcb, 0xf5, 0x30, 0xe6, 0x19, 0x86, 0x9e, 0x07, 0xc0, 0x21, 0xef, 0x16, 0xf6, 0x93, 0xcf, 0xc0, 0xa4, 0xb0, 0xd4, 0xed, 0x5a, 0x8f, 0x46, 0x46, 0x92, 0xbf, 0x3d, 0x6e, }; static const unsigned char ecdh_secp256k1_5914_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5914_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5914_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_5914 = { .name = "ecdh_secp256k1_5914", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5914_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5914_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5914_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5914_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 634 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5915 for ECDH, tcId is 635 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5915_peerpubkey[] = { 0x16, 0x6a, 0xed, 0x3b, 0xc2, 0x81, 0x70, 0x54, 0x44, 0xf9, 0x33, 0x91, 0x3f, 0x67, 0x09, 0x57, 0xa1, 0x18, 0xf8, 0xda, 0x2c, 0x71, 0xbd, 0x30, 0x1a, 0x90, 0x92, 0x97, 0x43, 0xe2, 0xca, 0x58, 0x35, 0x14, 0xa7, 0x97, 0x2e, 0x33, 0xd6, 0xfe, 0xa1, 0xe3, 0x77, 0xef, 0x41, 0x84, 0x93, 0x7f, 0x67, 0xb3, 0x7e, 0x41, 0xef, 0x30, 0x99, 0xc2, 0x28, 0xa8, 0x8f, 0x5b, 0xfb, 0x67, 0xe5, 0xb9, }; static const unsigned char ecdh_secp256k1_5915_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5915_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5915_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5915 = { .name = "ecdh_secp256k1_5915", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5915_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5915_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5915_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5915_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 635 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5916 for ECDH, tcId is 636 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5916_peerpubkey[] = { 0x36, 0xe1, 0xe7, 0x6f, 0xfd, 0xbe, 0x85, 0x77, 0x52, 0x0b, 0x07, 0x16, 0xeb, 0x88, 0xc1, 0x8e, 0xa7, 0x2a, 0x49, 0xe5, 0xa4, 0xe5, 0x68, 0x0a, 0x7d, 0x29, 0x00, 0x93, 0xf8, 0x41, 0xcb, 0x6e, 0x73, 0x10, 0x72, 0x8b, 0x59, 0xc7, 0x57, 0x2c, 0x4b, 0x35, 0xfb, 0x6c, 0x29, 0xc3, 0x6e, 0xba, 0xbf, 0xc5, 0x35, 0x53, 0xc0, 0x6e, 0xcf, 0x74, 0x7f, 0xcf, 0xbe, 0xfc, 0xf6, 0x11, 0x4e, 0x1c, }; static const unsigned char ecdh_secp256k1_5916_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5916_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5916_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5916 = { .name = "ecdh_secp256k1_5916", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5916_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5916_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5916_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5916_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 636 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5917 for ECDH, tcId is 637 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5917_peerpubkey[] = { 0x72, 0x8e, 0x15, 0xd5, 0x78, 0x21, 0x2b, 0xc4, 0x22, 0x87, 0xc0, 0x11, 0x8c, 0x82, 0xc8, 0x4b, 0x12, 0x6f, 0x97, 0xd5, 0x49, 0x22, 0x3c, 0x10, 0xad, 0x07, 0xf4, 0xe9, 0x8a, 0xf9, 0x12, 0x38, 0x5d, 0x23, 0xb1, 0xa6, 0xe7, 0x16, 0x92, 0x58, 0x55, 0xa2, 0x47, 0xb1, 0x6e, 0xff, 0xe9, 0x27, 0x73, 0x31, 0x52, 0x41, 0xac, 0x95, 0x1c, 0xdf, 0xef, 0xdf, 0xac, 0x0e, 0xd1, 0x64, 0x67, 0xf6, }; static const unsigned char ecdh_secp256k1_5917_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5917_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5917_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5917 = { .name = "ecdh_secp256k1_5917", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5917_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5917_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5917_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5917_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 637 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5918 for ECDH, tcId is 638 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5918_peerpubkey[] = { 0xca, 0x03, 0xff, 0x8e, 0x99, 0xe2, 0x69, 0x57, 0x6c, 0xf7, 0x56, 0x45, 0x45, 0xc8, 0x92, 0x68, 0xeb, 0x41, 0x5f, 0xf4, 0x57, 0x78, 0x73, 0x25, 0x29, 0xfa, 0x59, 0x97, 0xcc, 0x2b, 0x23, 0x09, 0x50, 0xd6, 0xb8, 0x4b, 0x72, 0x9b, 0xc0, 0x7f, 0x9b, 0x2d, 0x92, 0x75, 0x42, 0x81, 0xcd, 0xc0, 0xd2, 0x89, 0xd2, 0x45, 0x33, 0x85, 0xae, 0xf7, 0x7e, 0x4b, 0xdc, 0x69, 0xbf, 0x15, 0x5c, 0x5f, }; static const unsigned char ecdh_secp256k1_5918_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5918_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5918_sharedsecret[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_5918 = { .name = "ecdh_secp256k1_5918", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5918_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5918_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5918_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5918_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 638 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5919 for ECDH, tcId is 639 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5919_peerpubkey[] = { 0x51, 0xbe, 0x66, 0x13, 0x7e, 0x39, 0xbb, 0xf3, 0x5a, 0x91, 0xc6, 0xdb, 0x5b, 0xa6, 0x91, 0x9f, 0xf4, 0x71, 0xd8, 0x85, 0xca, 0x94, 0x46, 0x2e, 0xaa, 0xa6, 0x5b, 0x1e, 0xac, 0x36, 0x6b, 0xaa, 0x59, 0x10, 0xde, 0x70, 0xb6, 0xe0, 0x9e, 0x97, 0xaa, 0x00, 0x62, 0x1e, 0xf1, 0x8f, 0x28, 0x01, 0x71, 0x9b, 0x19, 0x9b, 0x3e, 0x77, 0x69, 0xfd, 0xab, 0x2b, 0xd9, 0x09, 0xb2, 0xf3, 0x40, 0xd7, }; static const unsigned char ecdh_secp256k1_5919_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5919_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5919_sharedsecret[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, }; static const wycheproof_ecdh_test ecdh_secp256k1_5919 = { .name = "ecdh_secp256k1_5919", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5919_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5919_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5919_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5919_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 639 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5920 for ECDH, tcId is 640 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5920_peerpubkey[] = { 0x23, 0x55, 0x65, 0x64, 0x85, 0x0c, 0x50, 0xfb, 0xa5, 0x1f, 0x1e, 0x64, 0xef, 0x98, 0x37, 0x8e, 0xf5, 0xc2, 0x2f, 0xea, 0xfa, 0x29, 0x49, 0x9c, 0xa2, 0x76, 0x00, 0xc4, 0x73, 0xca, 0xce, 0x88, 0x9d, 0x56, 0x79, 0xe9, 0x17, 0xda, 0xa7, 0xf4, 0xc7, 0x89, 0x95, 0x17, 0xd3, 0x78, 0x26, 0x28, 0x4f, 0x03, 0x1d, 0xe0, 0x1a, 0x60, 0xbc, 0x81, 0x36, 0x96, 0x41, 0x4d, 0x04, 0x53, 0x1a, 0x21, }; static const unsigned char ecdh_secp256k1_5920_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5920_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5920_sharedsecret[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_5920 = { .name = "ecdh_secp256k1_5920", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5920_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5920_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5920_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5920_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 640 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5921 for ECDH, tcId is 641 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5921_peerpubkey[] = { 0xdd, 0xbf, 0x80, 0x7e, 0x22, 0xc5, 0x6a, 0x19, 0xcf, 0x6c, 0x47, 0x28, 0x29, 0x15, 0x03, 0x50, 0x78, 0x10, 0x34, 0xa5, 0xed, 0xde, 0xc3, 0x65, 0x69, 0x4d, 0x4b, 0xd5, 0xc8, 0x65, 0xea, 0xd1, 0x4e, 0x67, 0x41, 0x27, 0x02, 0x8c, 0x91, 0xd3, 0x39, 0x4c, 0xac, 0x37, 0x29, 0x3a, 0x86, 0x60, 0x55, 0xd1, 0x0f, 0x0f, 0x40, 0xa3, 0x70, 0x6a, 0xd1, 0x6b, 0x64, 0xfc, 0x9d, 0x59, 0x98, 0xbd, }; static const unsigned char ecdh_secp256k1_5921_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5921_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5921_sharedsecret[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_5921 = { .name = "ecdh_secp256k1_5921", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5921_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5921_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5921_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5921_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 641 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5922 for ECDH, tcId is 642 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5922_peerpubkey[] = { 0x59, 0x5e, 0x46, 0xee, 0x7c, 0x2d, 0x71, 0x83, 0xff, 0x2e, 0xa7, 0x60, 0xff, 0xd8, 0x47, 0x2f, 0xb8, 0x34, 0xec, 0x89, 0xc0, 0x8b, 0x6e, 0xf4, 0x8f, 0xf9, 0x2b, 0x44, 0xa1, 0x3a, 0x6e, 0x1a, 0xe5, 0x63, 0xe2, 0x39, 0x53, 0xc9, 0x7c, 0x26, 0x44, 0x13, 0x23, 0xd2, 0x50, 0x0c, 0x84, 0xe8, 0xce, 0xe0, 0x4c, 0x15, 0xd4, 0xd5, 0xd2, 0xcc, 0x45, 0x87, 0x03, 0xd1, 0xf2, 0xd0, 0x2d, 0x31, }; static const unsigned char ecdh_secp256k1_5922_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5922_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5922_sharedsecret[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5922 = { .name = "ecdh_secp256k1_5922", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5922_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5922_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5922_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5922_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 642 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5923 for ECDH, tcId is 643 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5923_peerpubkey[] = { 0xe4, 0x26, 0xe2, 0xf5, 0x10, 0x83, 0x33, 0x11, 0x75, 0x87, 0x97, 0x5f, 0x18, 0xd8, 0xcc, 0x07, 0x8d, 0x41, 0xe5, 0x6b, 0x7d, 0x6b, 0x82, 0xf5, 0x85, 0xd7, 0x5b, 0x0d, 0x73, 0x47, 0x9f, 0xfd, 0x75, 0x80, 0x0f, 0xd4, 0x12, 0x36, 0xa5, 0x60, 0x34, 0xbe, 0xd9, 0xab, 0xc5, 0x5d, 0x82, 0xcf, 0x05, 0x9a, 0x14, 0xd6, 0x3c, 0x07, 0xcd, 0x07, 0x50, 0x93, 0x17, 0x14, 0x73, 0x1a, 0x1c, 0xa1, }; static const unsigned char ecdh_secp256k1_5923_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5923_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5923_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_5923 = { .name = "ecdh_secp256k1_5923", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5923_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5923_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5923_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5923_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 643 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5924 for ECDH, tcId is 644 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5924_peerpubkey[] = { 0xe1, 0xc7, 0x07, 0x6c, 0xaf, 0x26, 0x01, 0x0b, 0x17, 0x67, 0xf1, 0xa9, 0xc4, 0x15, 0x6b, 0x5b, 0x42, 0x36, 0x36, 0x8d, 0x5d, 0x90, 0xde, 0xce, 0x34, 0x41, 0xb7, 0x34, 0xe8, 0x68, 0x4e, 0xe6, 0xb3, 0x53, 0x4c, 0x3c, 0x54, 0xe6, 0x14, 0xe5, 0x94, 0xdc, 0xe6, 0xca, 0x43, 0x8b, 0x87, 0xc4, 0x24, 0xc8, 0xe8, 0x0f, 0x8f, 0xae, 0x22, 0x6b, 0xbd, 0xf5, 0x0e, 0x49, 0x06, 0xc1, 0x3f, 0x6b, }; static const unsigned char ecdh_secp256k1_5924_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5924_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5924_sharedsecret[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, }; static const wycheproof_ecdh_test ecdh_secp256k1_5924 = { .name = "ecdh_secp256k1_5924", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5924_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5924_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5924_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5924_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 644 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5925 for ECDH, tcId is 645 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5925_peerpubkey[] = { 0x66, 0x3c, 0xea, 0x10, 0x63, 0xc9, 0x91, 0x6b, 0x75, 0xe8, 0x5f, 0xc8, 0x15, 0xd8, 0xa2, 0x37, 0x0e, 0xc0, 0xa0, 0x2a, 0xce, 0xef, 0x3d, 0xb0, 0x22, 0xe3, 0x95, 0xdb, 0x8b, 0x03, 0xbf, 0x3f, 0x18, 0x87, 0x87, 0xf4, 0x04, 0x7d, 0xc1, 0x06, 0x80, 0x75, 0x26, 0x50, 0x2c, 0x7a, 0xe8, 0x80, 0xe4, 0x71, 0xc9, 0x29, 0xb9, 0x2e, 0x23, 0x84, 0x48, 0x9c, 0x80, 0x70, 0xb5, 0xbc, 0xc1, 0x09, }; static const unsigned char ecdh_secp256k1_5925_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5925_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5925_sharedsecret[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_5925 = { .name = "ecdh_secp256k1_5925", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5925_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5925_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5925_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5925_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 645 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5926 for ECDH, tcId is 646 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5926_peerpubkey[] = { 0x24, 0x17, 0x5c, 0x07, 0x8e, 0x30, 0x5d, 0x31, 0x39, 0xe5, 0xda, 0xb7, 0x27, 0xa6, 0xab, 0x85, 0x87, 0xb2, 0x6d, 0xaa, 0x47, 0x0a, 0x52, 0x9a, 0x23, 0xc1, 0x05, 0x85, 0xcb, 0x56, 0xc0, 0x38, 0xbf, 0x1f, 0x2b, 0x93, 0x7a, 0xe0, 0x74, 0xff, 0x94, 0xb1, 0x5f, 0x5c, 0xb5, 0xe6, 0x0e, 0xb5, 0xd3, 0x2a, 0xfb, 0xa2, 0x07, 0x75, 0x39, 0xdb, 0x79, 0x42, 0x94, 0xbc, 0xaa, 0xb7, 0x1a, 0x81, }; static const unsigned char ecdh_secp256k1_5926_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5926_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5926_sharedsecret[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5926 = { .name = "ecdh_secp256k1_5926", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5926_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5926_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5926_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5926_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 646 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5927 for ECDH, tcId is 647 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5927_peerpubkey[] = { 0x00, 0x8d, 0x71, 0xc7, 0x12, 0xdd, 0x95, 0x88, 0x1c, 0xd1, 0x40, 0x0d, 0xbe, 0x76, 0x83, 0xac, 0xbd, 0x8e, 0x26, 0x9d, 0x25, 0x26, 0x1b, 0x08, 0xf1, 0xf4, 0x91, 0xb4, 0x5e, 0x3b, 0x56, 0x21, 0x77, 0x81, 0x82, 0xa2, 0x41, 0x98, 0xb0, 0xf2, 0x35, 0x02, 0xd0, 0x6e, 0x24, 0xc4, 0x51, 0x22, 0xe1, 0xf4, 0x20, 0xaf, 0x48, 0xdc, 0x1e, 0x17, 0xb1, 0xea, 0x92, 0x33, 0x86, 0xa3, 0x30, 0x62, }; static const unsigned char ecdh_secp256k1_5927_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5927_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5927_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_5927 = { .name = "ecdh_secp256k1_5927", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5927_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5927_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5927_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5927_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 647 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5928 for ECDH, tcId is 648 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5928_peerpubkey[] = { 0x56, 0xba, 0xf1, 0xd7, 0x26, 0x06, 0xc7, 0xaf, 0x5a, 0x5f, 0xa1, 0x08, 0x62, 0x0b, 0x08, 0x39, 0xe2, 0xc7, 0xdd, 0x40, 0xb8, 0x32, 0xef, 0x84, 0x7e, 0x5b, 0x64, 0xc8, 0x6e, 0xfe, 0x1a, 0xa5, 0x63, 0xe5, 0x86, 0xa6, 0x67, 0xa6, 0x5b, 0xbb, 0x56, 0x92, 0x50, 0x0d, 0xf1, 0xff, 0x84, 0x03, 0x73, 0x68, 0x38, 0xb3, 0x0e, 0xa9, 0x79, 0x1d, 0x9d, 0x39, 0x0e, 0x3d, 0xc6, 0x68, 0x9e, 0x2c, }; static const unsigned char ecdh_secp256k1_5928_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5928_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5928_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5928 = { .name = "ecdh_secp256k1_5928", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5928_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5928_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5928_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5928_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 1's, tcId is 648 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5929 for ECDH, tcId is 649 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5929_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0x5a, 0x5e, 0x4a, 0xf1, 0x1c, 0xf6, 0x3c, 0xea, 0xaa, 0x42, 0xa6, 0xdc, 0x9e, 0x4c, 0xcb, 0x39, 0x48, 0x52, 0xcf, 0x84, 0x28, 0x4e, 0x8d, 0x26, 0x27, 0x57, 0x2f, 0xbf, 0x22, 0xc0, 0xba, 0x88, }; static const unsigned char ecdh_secp256k1_5929_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5929_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5929_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5929 = { .name = "ecdh_secp256k1_5929", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5929_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5929_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5929_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5929_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 649 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5930 for ECDH, tcId is 650 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5930_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0x07, 0xeb, 0x78, 0xd3, 0x87, 0x70, 0xfe, 0xa1, 0xa4, 0x4f, 0x4d, 0xa7, 0x2c, 0x26, 0xf8, 0x5b, 0x17, 0xf3, 0x50, 0x1a, 0x4f, 0x93, 0x94, 0xfe, 0x29, 0x85, 0x6c, 0xcb, 0xf1, 0x5f, 0xd2, 0x84, }; static const unsigned char ecdh_secp256k1_5930_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5930_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5930_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5930 = { .name = "ecdh_secp256k1_5930", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5930_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5930_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5930_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5930_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is small, tcId is 650 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5931 for ECDH, tcId is 651 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5931_peerpubkey[] = { 0x5e, 0x4c, 0x2c, 0xf1, 0x32, 0x0e, 0xc8, 0x4e, 0xf8, 0x92, 0x08, 0x67, 0xb4, 0x09, 0xa9, 0xa9, 0x1d, 0x2d, 0xd0, 0x08, 0x21, 0x6a, 0x28, 0x2e, 0x36, 0xbd, 0x84, 0xe8, 0x84, 0x72, 0x6f, 0xa0, 0xa5, 0xa1, 0xb5, 0x0e, 0xe3, 0x09, 0xc3, 0x15, 0x55, 0xbd, 0x59, 0x23, 0x61, 0xb3, 0x34, 0xc6, 0xb7, 0xad, 0x30, 0x7b, 0xd7, 0xb1, 0x72, 0xd9, 0xd8, 0xa8, 0xd0, 0x3f, 0xdd, 0x3f, 0x41, 0xa7, }; static const unsigned char ecdh_secp256k1_5931_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5931_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5931_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5931 = { .name = "ecdh_secp256k1_5931", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5931_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5931_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5931_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5931_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 651 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5932 for ECDH, tcId is 652 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5932_peerpubkey[] = { 0x02, 0xa3, 0x0c, 0x2f, 0xab, 0xc8, 0x7e, 0x67, 0x30, 0x62, 0x5d, 0xec, 0x2f, 0x0d, 0x03, 0x89, 0x43, 0x87, 0xb7, 0xf7, 0x43, 0xce, 0x69, 0xc4, 0x73, 0x51, 0xeb, 0xe5, 0xee, 0x98, 0xa4, 0x83, 0xf8, 0x14, 0x87, 0x2c, 0x78, 0x8f, 0x01, 0x5e, 0x5b, 0xb0, 0xb2, 0x58, 0xd3, 0xd9, 0x07, 0xa4, 0xe8, 0x0c, 0xaf, 0xe5, 0xb0, 0x6c, 0x6b, 0x01, 0xd6, 0x7a, 0x93, 0x33, 0x0e, 0xa0, 0x29, 0xab, }; static const unsigned char ecdh_secp256k1_5932_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5932_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5932_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5932 = { .name = "ecdh_secp256k1_5932", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5932_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5932_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5932_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5932_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key is large, tcId is 652 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5933 for ECDH, tcId is 653 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5933_peerpubkey[] = { 0x54, 0x50, 0xca, 0xce, 0x04, 0x38, 0x6a, 0xdc, 0x54, 0xa1, 0x43, 0x50, 0x79, 0x3e, 0x83, 0xbd, 0xc5, 0xf2, 0x65, 0xd6, 0xc2, 0x92, 0x87, 0xec, 0xd0, 0x7f, 0x79, 0x1a, 0xd2, 0x78, 0x4c, 0x4c, 0xeb, 0xd3, 0xc2, 0x44, 0x51, 0x32, 0x23, 0x34, 0xd8, 0xd5, 0x10, 0x33, 0xe9, 0xd3, 0x4b, 0x6b, 0xb5, 0x92, 0xb1, 0x99, 0x5d, 0x07, 0x86, 0x78, 0x63, 0xd1, 0x04, 0x4b, 0xd5, 0x9d, 0x75, 0x01, }; static const unsigned char ecdh_secp256k1_5933_ourpubkey[] = { 0xe4, 0xf9, 0x8f, 0xe8, 0xd5, 0x96, 0x28, 0xdc, 0xca, 0xd1, 0xa9, 0x7d, 0x02, 0x7c, 0xab, 0xb4, 0x83, 0x37, 0xb7, 0x9e, 0x2d, 0x1a, 0xcf, 0xa9, 0x9f, 0x08, 0x20, 0x5e, 0xa8, 0xa3, 0xc8, 0x12, 0xb2, 0x37, 0x82, 0x3e, 0xdf, 0x5b, 0xd1, 0xd3, 0x9b, 0x07, 0x08, 0x4b, 0xfc, 0xf7, 0x28, 0xec, 0xee, 0x89, 0xea, 0xd3, 0xbf, 0xd3, 0xd3, 0x64, 0x3b, 0x9d, 0x1d, 0xa7, 0x78, 0x70, 0x73, 0x4d, }; static const unsigned char ecdh_secp256k1_5933_privkey[] = { 0xa2, 0xb6, 0x44, 0x2a, 0x37, 0xf8, 0xa3, 0x76, 0x4a, 0xef, 0xf4, 0x01, 0x1a, 0x4c, 0x42, 0x2b, 0x38, 0x9a, 0x1e, 0x50, 0x96, 0x69, 0xc4, 0x3f, 0x27, 0x9c, 0x8b, 0x7e, 0x32, 0xd8, 0x0c, 0x3a, }; static const unsigned char ecdh_secp256k1_5933_sharedsecret[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5933 = { .name = "ecdh_secp256k1_5933", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5933_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5933_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5933_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5933_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "y-coordinate of the public key has many trailing 0's, tcId is 653 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5934 for ECDH, tcId is 654 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5934_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_5934_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5934_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5934_sharedsecret[] = { 0x12, 0xc2, 0xad, 0x36, 0xa5, 0x9f, 0xda, 0x5a, 0xc4, 0xf7, 0xe9, 0x7f, 0xf6, 0x11, 0x72, 0x8d, 0x07, 0x48, 0xac, 0x35, 0x9f, 0xca, 0x9b, 0x12, 0xf6, 0xd4, 0xf4, 0x35, 0x19, 0x51, 0x64, 0x87, }; static const wycheproof_ecdh_test ecdh_secp256k1_5934 = { .name = "ecdh_secp256k1_5934", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5934_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5934_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5934_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5934_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 654 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5935 for ECDH, tcId is 655 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5935_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x66, 0xfb, 0xe7, 0x27, 0xb2, 0xba, 0x09, 0xe0, 0x9f, 0x5a, 0x98, 0xd7, 0x0a, 0x5e, 0xfc, 0xe8, 0x42, 0x4c, 0x5f, 0xa4, 0x25, 0xbb, 0xda, 0x1c, 0x51, 0x1f, 0x86, 0x06, 0x57, 0xb8, 0x53, 0x5e, }; static const unsigned char ecdh_secp256k1_5935_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5935_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5935_sharedsecret[] = { 0x45, 0xaa, 0x96, 0x66, 0x75, 0x78, 0x15, 0xe9, 0x97, 0x41, 0x40, 0xd1, 0xb5, 0x71, 0x91, 0xc9, 0x2c, 0x58, 0x8f, 0x6e, 0x56, 0x81, 0x13, 0x1e, 0x0d, 0xf9, 0xb3, 0xd2, 0x41, 0x83, 0x1a, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_5935 = { .name = "ecdh_secp256k1_5935", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5935_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5935_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5935_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5935_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 655 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5936 for ECDH, tcId is 656 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5936_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x2f, 0x23, 0x33, 0x95, 0xc8, 0xb0, 0x7a, 0x38, 0x34, 0xa0, 0xe5, 0x9b, 0xda, 0x43, 0x94, 0x4b, 0x5d, 0xf3, 0x78, 0x85, 0x2e, 0x56, 0x0e, 0xbc, 0x0f, 0x22, 0x87, 0x7e, 0x9f, 0x49, 0xbb, 0x4b, }; static const unsigned char ecdh_secp256k1_5936_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5936_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5936_sharedsecret[] = { 0xb9, 0x09, 0x64, 0xc0, 0x5e, 0x46, 0x4c, 0x23, 0xac, 0xb7, 0x47, 0xa4, 0xc8, 0x35, 0x11, 0xe9, 0x30, 0x07, 0xf7, 0x49, 0x9b, 0x06, 0x5c, 0x8e, 0x8e, 0xcc, 0xec, 0x95, 0x5d, 0x87, 0x31, 0xf4, }; static const wycheproof_ecdh_test ecdh_secp256k1_5936 = { .name = "ecdh_secp256k1_5936", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5936_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5936_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5936_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5936_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 656 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5937 for ECDH, tcId is 657 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5937_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3d, 0xb7, 0x72, 0xad, 0x92, 0xdb, 0x86, 0x99, 0xce, 0xac, 0x1a, 0x3c, 0x30, 0xe1, 0x26, 0xb8, 0x66, 0xc4, 0xfe, 0xfe, 0x29, 0x2c, 0xf0, 0xc1, 0x79, 0x0e, 0x55, 0xce, 0xe8, 0x41, 0x4f, 0x18, }; static const unsigned char ecdh_secp256k1_5937_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5937_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5937_sharedsecret[] = { 0x81, 0x63, 0xc9, 0xdc, 0xe8, 0x35, 0x6f, 0x1d, 0xf7, 0x2b, 0x69, 0x8f, 0x2f, 0x04, 0xa1, 0x4d, 0xb0, 0x26, 0x3a, 0x84, 0x02, 0x90, 0x5e, 0xee, 0x87, 0x94, 0x1b, 0x00, 0xd8, 0xd6, 0x77, 0xf5, }; static const wycheproof_ecdh_test ecdh_secp256k1_5937 = { .name = "ecdh_secp256k1_5937", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5937_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5937_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5937_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5937_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 657 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5938 for ECDH, tcId is 658 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5938_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x31, 0xcf, 0x13, 0x67, 0x1b, 0x57, 0x4e, 0x31, 0x3c, 0x35, 0x21, 0x75, 0x66, 0xf1, 0x8b, 0xd2, 0xc5, 0xf7, 0x58, 0xc1, 0x40, 0xd2, 0x4e, 0x94, 0xe6, 0xa4, 0xfd, 0xa7, 0xf4, 0xc7, 0xb1, 0x2b, }; static const unsigned char ecdh_secp256k1_5938_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5938_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5938_sharedsecret[] = { 0x1a, 0x32, 0x74, 0x9d, 0xcf, 0x04, 0x7a, 0x7e, 0x06, 0x19, 0x4c, 0xcb, 0x34, 0xd7, 0xc9, 0x53, 0x8a, 0x16, 0xdd, 0xab, 0xee, 0xed, 0xe7, 0x4b, 0xea, 0x5f, 0x7e, 0xf0, 0x49, 0x79, 0xf7, 0xf7, }; static const wycheproof_ecdh_test ecdh_secp256k1_5938 = { .name = "ecdh_secp256k1_5938", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5938_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5938_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5938_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5938_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 658 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5939 for ECDH, tcId is 659 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5939_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x73, 0xb0, 0x88, 0x64, 0x96, 0xae, 0xd7, 0x0d, 0xb3, 0x71, 0xe2, 0xe4, 0x9d, 0xb6, 0x40, 0xab, 0xba, 0x54, 0x7e, 0x5e, 0x0c, 0x27, 0x63, 0xb7, 0x3a, 0x0a, 0x42, 0xf8, 0x43, 0x48, 0xa6, 0xb1, }; static const unsigned char ecdh_secp256k1_5939_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5939_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5939_sharedsecret[] = { 0xab, 0x43, 0x91, 0x7a, 0x64, 0xc1, 0xb0, 0x10, 0x15, 0x96, 0x43, 0xc1, 0x8e, 0x2e, 0xb0, 0x6d, 0x25, 0xee, 0xda, 0xe5, 0xb7, 0x8d, 0x02, 0xfa, 0x9b, 0x3d, 0xeb, 0xac, 0xbf, 0x31, 0xb7, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_5939 = { .name = "ecdh_secp256k1_5939", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5939_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5939_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5939_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5939_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 659 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5940 for ECDH, tcId is 660 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5940_peerpubkey[] = { 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0f, 0x4d, 0x81, 0x57, 0x5c, 0x8e, 0x32, 0x82, 0x85, 0x63, 0x3c, 0xcf, 0xd8, 0x62, 0x3f, 0x04, 0xdd, 0x4e, 0xd6, 0x1e, 0x18, 0x7b, 0x3a, 0x6d, 0x7e, 0xac, 0x55, 0x3a, 0xed, 0xe7, 0xf8, 0x50, }; static const unsigned char ecdh_secp256k1_5940_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5940_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5940_sharedsecret[] = { 0x16, 0x48, 0x32, 0x1c, 0x70, 0x66, 0x51, 0xad, 0xf0, 0x66, 0x43, 0xfc, 0x4a, 0xe0, 0x60, 0x41, 0xdc, 0xe6, 0x4a, 0x82, 0x63, 0x2a, 0xd4, 0x41, 0x28, 0x06, 0x12, 0x16, 0xcc, 0x98, 0x27, 0xff, }; static const wycheproof_ecdh_test ecdh_secp256k1_5940 = { .name = "ecdh_secp256k1_5940", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5940_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5940_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5940_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5940_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 660 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5941 for ECDH, tcId is 661 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5941_peerpubkey[] = { 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0x00, 0x01, 0x00, 0x02, 0x42, 0x21, 0x7b, 0x70, 0x59, 0xb3, 0xdd, 0xeb, 0xc6, 0x8e, 0x95, 0x44, 0x3f, 0x6c, 0x10, 0x93, 0x69, 0xe1, 0xf9, 0x32, 0x3d, 0xd2, 0x48, 0x52, 0xac, 0x76, 0x12, 0x99, 0x6b, 0x6e, 0x56, 0x01, }; static const unsigned char ecdh_secp256k1_5941_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5941_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5941_sharedsecret[] = { 0xfb, 0x86, 0x6b, 0x2e, 0x4b, 0x1f, 0x9e, 0xd6, 0xb3, 0x78, 0x47, 0xfc, 0x80, 0xa1, 0x9a, 0x52, 0xe1, 0xe9, 0x1b, 0x75, 0xd7, 0x13, 0xb0, 0xd4, 0xf6, 0xb9, 0x95, 0xd2, 0xd3, 0xc7, 0x5c, 0xfe, }; static const wycheproof_ecdh_test ecdh_secp256k1_5941 = { .name = "ecdh_secp256k1_5941", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5941_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5941_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5941_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5941_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 661 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5942 for ECDH, tcId is 662 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5942_peerpubkey[] = { 0x21, 0x0c, 0x79, 0x05, 0x73, 0x63, 0x23, 0x59, 0xb1, 0xed, 0xb4, 0x30, 0x2c, 0x11, 0x7d, 0x8a, 0x13, 0x26, 0x54, 0x69, 0x2c, 0x3f, 0xee, 0xb7, 0xde, 0x3a, 0x86, 0xac, 0x3f, 0x3b, 0x53, 0xf7, 0x5f, 0x45, 0x0d, 0xbb, 0xf7, 0x18, 0xa4, 0xf6, 0x58, 0x2d, 0x7a, 0xf8, 0x39, 0x53, 0x17, 0x0b, 0x30, 0x37, 0xfb, 0x81, 0xa4, 0x50, 0xa5, 0xca, 0x5a, 0xcb, 0xec, 0x74, 0xad, 0x6c, 0xac, 0x89, }; static const unsigned char ecdh_secp256k1_5942_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5942_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5942_sharedsecret[] = { 0x19, 0x08, 0xae, 0x93, 0x6f, 0x53, 0xb9, 0xa8, 0xa2, 0xd0, 0x97, 0x07, 0xae, 0x41, 0x40, 0x84, 0x09, 0x0b, 0x17, 0x53, 0x65, 0x40, 0x14, 0x25, 0x47, 0x9b, 0x10, 0xb8, 0xc3, 0xe8, 0xd1, 0xba, }; static const wycheproof_ecdh_test ecdh_secp256k1_5942 = { .name = "ecdh_secp256k1_5942", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5942_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5942_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5942_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5942_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 662 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5943 for ECDH, tcId is 663 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5943_peerpubkey[] = { 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, 0x37, 0x26, 0x9a, 0x64, 0xbb, 0xcf, 0x3a, 0x3f, 0x22, 0x76, 0x31, 0xc7, 0xa8, 0xce, 0x53, 0x2c, 0x77, 0x24, 0x5a, 0x1c, 0x0d, 0xb4, 0x34, 0x3f, 0x16, 0xaa, 0x1d, 0x33, 0x9f, 0xd2, 0x59, 0x1a, }; static const unsigned char ecdh_secp256k1_5943_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5943_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5943_sharedsecret[] = { 0x5e, 0x13, 0xb3, 0xdc, 0x04, 0xe3, 0x3f, 0x18, 0xd1, 0x28, 0x6c, 0x60, 0x6c, 0xb0, 0x19, 0x17, 0x85, 0xf6, 0x94, 0xe8, 0x2e, 0x17, 0x79, 0x61, 0x45, 0xc9, 0xe7, 0xb4, 0x9b, 0xc2, 0xaf, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_5943 = { .name = "ecdh_secp256k1_5943", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5943_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5943_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5943_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5943_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 663 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5944 for ECDH, tcId is 664 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5944_peerpubkey[] = { 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x00, 0x01, 0xff, 0xfc, 0x00, 0x07, 0xff, 0xf0, 0x00, 0x1f, 0xff, 0xc0, 0x00, 0x7f, 0xff, 0x4b, 0x66, 0x00, 0x3c, 0x74, 0x82, 0xd0, 0xf2, 0xfd, 0x7b, 0x1c, 0xb2, 0xb0, 0xb7, 0x07, 0x8c, 0xd1, 0x99, 0xf2, 0x20, 0x8f, 0xc3, 0x7e, 0xb2, 0xef, 0x28, 0x6c, 0xcb, 0x2f, 0x12, 0x24, 0xe7, }; static const unsigned char ecdh_secp256k1_5944_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5944_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5944_sharedsecret[] = { 0x31, 0x35, 0xa6, 0x28, 0x3b, 0x97, 0xe7, 0x53, 0x7a, 0x8b, 0xc2, 0x08, 0xa3, 0x55, 0xc2, 0xa8, 0x54, 0xb8, 0xee, 0x6e, 0x42, 0x27, 0x20, 0x67, 0x30, 0xe6, 0xd7, 0x25, 0xda, 0x04, 0x4d, 0xee, }; static const wycheproof_ecdh_test ecdh_secp256k1_5944 = { .name = "ecdh_secp256k1_5944", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5944_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5944_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5944_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5944_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 664 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5945 for ECDH, tcId is 665 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5945_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x69, 0xd3, 0xcd, 0x0c, 0x70, 0xf1, 0x48, 0x4d, 0x4b, 0x3b, 0xbb, 0xd6, 0x80, 0x67, 0x9e, 0xf4, 0x77, 0xa2, 0x2a, 0x07, 0xdf, 0x08, 0x56, 0x34, 0xf1, 0x17, 0xc4, 0x1c, 0x08, 0xbf, 0x12, 0x30, }; static const unsigned char ecdh_secp256k1_5945_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5945_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5945_sharedsecret[] = { 0x62, 0x95, 0x90, 0x89, 0xa7, 0xed, 0x47, 0x7c, 0x22, 0xcb, 0x4f, 0x1c, 0x77, 0x87, 0x32, 0x73, 0x18, 0xfc, 0xcc, 0xa2, 0x5e, 0x5a, 0xa3, 0xe4, 0x46, 0x88, 0xa2, 0x82, 0x93, 0x1a, 0xb0, 0x49, }; static const wycheproof_ecdh_test ecdh_secp256k1_5945 = { .name = "ecdh_secp256k1_5945", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5945_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5945_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5945_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5945_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 665 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5946 for ECDH, tcId is 666 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5946_peerpubkey[] = { 0x80, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x07, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x04, 0x00, 0x00, 0x01, 0x30, 0xf6, 0x9b, 0x6e, 0x95, 0xa3, 0x30, 0x32, 0x14, 0xa7, 0x3a, 0xd9, 0x82, 0xa1, 0xf3, 0xee, 0x16, 0x9d, 0x7e, 0xcf, 0x95, 0x8d, 0xe7, 0xb0, 0xbc, 0xa8, 0xa9, 0xff, 0xa3, 0xb8, 0xe8, 0xb3, }; static const unsigned char ecdh_secp256k1_5946_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5946_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5946_sharedsecret[] = { 0x04, 0xfd, 0xa5, 0xc0, 0x0a, 0x39, 0x6f, 0xad, 0x6b, 0x80, 0x9a, 0x88, 0x43, 0xde, 0x57, 0x3e, 0x86, 0xb0, 0x40, 0x3d, 0x64, 0x49, 0x95, 0xc8, 0x33, 0x13, 0xda, 0x51, 0xfb, 0x1f, 0x58, 0x80, }; static const wycheproof_ecdh_test ecdh_secp256k1_5946 = { .name = "ecdh_secp256k1_5946", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5946_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5946_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5946_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5946_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 666 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5947 for ECDH, tcId is 667 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5947_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x56, 0x95, 0x1e, 0xad, 0x86, 0x1a, 0xa8, 0xec, 0x7a, 0x31, 0x4f, 0xcd, 0x54, 0xf9, 0x05, 0xbd, 0x92, 0xc9, 0x10, 0x78, 0x63, 0x75, 0xeb, 0x7e, 0xe5, 0xf3, 0xa5, 0x5f, 0x8a, 0xa8, 0x78, 0x84, }; static const unsigned char ecdh_secp256k1_5947_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5947_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5947_sharedsecret[] = { 0xbb, 0xd9, 0x93, 0x7b, 0xb5, 0x1d, 0x27, 0xf9, 0x4e, 0xca, 0xea, 0x29, 0x71, 0x7d, 0xf7, 0x89, 0xaf, 0xea, 0xc4, 0x41, 0x4e, 0x3e, 0xf2, 0x7b, 0xb2, 0xe6, 0xfa, 0x72, 0x59, 0x18, 0x2e, 0x59, }; static const wycheproof_ecdh_test ecdh_secp256k1_5947 = { .name = "ecdh_secp256k1_5947", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5947_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5947_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5947_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5947_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 667 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5948 for ECDH, tcId is 668 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5948_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x63, 0xa8, 0x8b, 0x2e, 0x0c, 0x89, 0x87, 0xc6, 0x31, 0x0c, 0xf8, 0x1d, 0x0c, 0x93, 0x5f, 0x00, 0x21, 0x3f, 0x98, 0xa3, 0xda, 0xd2, 0xf4, 0x3c, 0x81, 0x28, 0xfa, 0x31, 0x3a, 0x90, 0xd5, 0x5b, }; static const unsigned char ecdh_secp256k1_5948_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5948_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5948_sharedsecret[] = { 0xbb, 0xd9, 0xd3, 0x05, 0xb9, 0x9f, 0xf3, 0xdb, 0x56, 0xf7, 0x7f, 0xea, 0x9e, 0x89, 0xf3, 0x22, 0x60, 0xee, 0x73, 0x26, 0x04, 0x00, 0x67, 0xce, 0x05, 0xdd, 0x15, 0xe0, 0xdc, 0xc1, 0x3e, 0xd8, }; static const wycheproof_ecdh_test ecdh_secp256k1_5948 = { .name = "ecdh_secp256k1_5948", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5948_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5948_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5948_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5948_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 668 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5949 for ECDH, tcId is 669 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5949_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0xa4, 0x45, 0x6c, 0xa6, 0xd4, 0x05, 0x4d, 0x13, 0xb2, 0x09, 0xf6, 0xd2, 0x62, 0xe6, 0x05, 0x7a, 0xd7, 0x12, 0x56, 0x6f, 0x46, 0xe9, 0xe2, 0x38, 0xe8, 0x94, 0xde, 0xeb, 0xe3, 0xd3, 0xaa, }; static const unsigned char ecdh_secp256k1_5949_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5949_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5949_sharedsecret[] = { 0x4f, 0xfb, 0x2c, 0x79, 0x62, 0xe3, 0x2d, 0x53, 0x65, 0xf9, 0x8f, 0x66, 0xbe, 0x62, 0x86, 0x72, 0x4d, 0x40, 0xd5, 0xf0, 0x33, 0x3b, 0xa4, 0xfc, 0x94, 0x3c, 0x0f, 0x0f, 0x06, 0xcd, 0xbb, 0x1f, }; static const wycheproof_ecdh_test ecdh_secp256k1_5949 = { .name = "ecdh_secp256k1_5949", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5949_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5949_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5949_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5949_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 669 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5950 for ECDH, tcId is 670 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5950_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xa2, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0xed, 0x35, 0x3c, 0x9f, 0x10, 0x39, 0xed, 0xcc, 0x9c, 0xc5, 0x33, 0x6c, 0x03, 0x4d, 0xc1, 0x31, 0xa4, 0x08, 0x76, 0x92, 0xc2, 0xe5, 0x6b, 0xc1, 0xdd, 0x19, 0x04, 0xe3, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_5950_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5950_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5950_sharedsecret[] = { 0x7c, 0x07, 0xb1, 0x99, 0xb6, 0xa6, 0x2e, 0x7a, 0xc6, 0x46, 0xc7, 0xe1, 0xde, 0xe9, 0x4a, 0xca, 0x55, 0xde, 0x1a, 0x97, 0x25, 0x1d, 0xdf, 0x92, 0xfc, 0xd4, 0xfe, 0x01, 0x45, 0xb4, 0x0f, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_5950 = { .name = "ecdh_secp256k1_5950", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5950_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5950_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5950_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5950_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 670 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5951 for ECDH, tcId is 671 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5951_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x03, 0x1a, 0x6b, 0xf3, 0x44, 0xb8, 0x67, 0x30, 0xac, 0x5c, 0x54, 0xa7, 0x75, 0x1a, 0xef, 0xdb, 0xa1, 0x35, 0x75, 0x9b, 0x9d, 0x53, 0x5c, 0xa6, 0x41, 0x11, 0xf2, 0x98, 0xa3, 0x8d, }; static const unsigned char ecdh_secp256k1_5951_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5951_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5951_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_5951 = { .name = "ecdh_secp256k1_5951", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5951_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5951_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5951_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5951_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 671 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5952 for ECDH, tcId is 672 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5952_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa3, 0x03, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe5, 0x94, 0x0c, 0xbb, 0x47, 0x98, 0xcf, 0x53, 0xa3, 0xab, 0x58, 0x8a, 0xe5, 0x10, 0x24, 0x5e, 0xca, 0x8a, 0x64, 0x62, 0xac, 0xa3, 0x59, 0xbe, 0xed, 0x0d, 0x67, 0x58, 0xa2, }; static const unsigned char ecdh_secp256k1_5952_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5952_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5952_sharedsecret[] = { 0x52, 0x06, 0xc3, 0xde, 0x46, 0x94, 0x9b, 0x9d, 0xa1, 0x60, 0x29, 0x5e, 0xe0, 0xaa, 0x14, 0x2f, 0xe3, 0xe6, 0x62, 0x9c, 0xc2, 0x5e, 0x2d, 0x67, 0x1e, 0x58, 0x2e, 0x30, 0xff, 0x87, 0x50, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_5952 = { .name = "ecdh_secp256k1_5952", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5952_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5952_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5952_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5952_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 672 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5953 for ECDH, tcId is 673 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5953_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x12, 0x6b, 0x54, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x41, 0x06, 0xa3, 0x69, 0x06, 0x8d, 0x45, 0x4e, 0xa4, 0xb9, 0xc3, 0xac, 0x61, 0x77, 0xf8, 0x7f, 0xc8, 0xfd, 0x3a, 0xa2, 0x40, 0xb2, 0xcc, 0xb4, 0x88, 0x2b, 0xdc, 0xcb, 0xd4, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_5953_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5953_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5953_sharedsecret[] = { 0xe5, 0x9d, 0xdc, 0x76, 0x46, 0xe4, 0xae, 0xf0, 0x62, 0x3c, 0x71, 0xc4, 0x86, 0xf2, 0x4d, 0x5d, 0x32, 0xf7, 0x25, 0x7e, 0xf3, 0xda, 0xb8, 0xfa, 0x52, 0x4b, 0x39, 0x4e, 0xae, 0x19, 0xeb, 0xe1, }; static const wycheproof_ecdh_test ecdh_secp256k1_5953 = { .name = "ecdh_secp256k1_5953", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5953_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5953_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5953_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5953_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 673 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5954 for ECDH, tcId is 674 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5954_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x01, 0x3b, 0xc6, 0xf0, 0x84, 0x31, 0xe7, 0x29, 0xed, 0x28, 0x63, 0xf2, 0xf4, 0xac, 0x8a, 0x30, 0x27, 0x96, 0x95, 0xc8, 0x10, 0x9c, 0x34, 0x0a, 0x39, 0xfa, 0x86, 0xf4, 0x51, 0xcd, }; static const unsigned char ecdh_secp256k1_5954_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5954_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5954_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_5954 = { .name = "ecdh_secp256k1_5954", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5954_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5954_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5954_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5954_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 674 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5955 for ECDH, tcId is 675 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5955_peerpubkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x24, 0xdc, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc4, 0x39, 0x0f, 0x7b, 0xce, 0x18, 0xd6, 0x12, 0xd7, 0x9c, 0x0d, 0x0b, 0x53, 0x75, 0xcf, 0xd8, 0x69, 0x6a, 0x37, 0xef, 0x63, 0xcb, 0xf5, 0xc6, 0x04, 0x79, 0x0b, 0xaa, 0x62, }; static const unsigned char ecdh_secp256k1_5955_ourpubkey[] = { 0x94, 0xa0, 0x3e, 0xbc, 0x12, 0xc3, 0x02, 0x46, 0xe1, 0x0d, 0x29, 0xa5, 0x8a, 0x2d, 0xdf, 0x58, 0xcf, 0x9b, 0x13, 0x53, 0x9f, 0x73, 0x19, 0x42, 0x64, 0x6a, 0x8d, 0xd9, 0xbb, 0x2d, 0x3c, 0x63, 0xdf, 0x3a, 0x74, 0xf1, 0x4f, 0x48, 0x33, 0x64, 0x3e, 0x2b, 0x5c, 0xa5, 0x46, 0xd3, 0xbb, 0xa3, 0x92, 0x56, 0xa8, 0xb9, 0xf1, 0x83, 0x18, 0x94, 0x3d, 0x95, 0xcc, 0xa0, 0x79, 0xd0, 0xab, 0x44, }; static const unsigned char ecdh_secp256k1_5955_privkey[] = { 0x2b, 0xc1, 0x5c, 0xf3, 0x98, 0x1e, 0xab, 0x61, 0xe5, 0x94, 0xeb, 0xf5, 0x91, 0x29, 0x0a, 0x04, 0x5c, 0xa9, 0x32, 0x6a, 0x8d, 0x3d, 0xd4, 0x9f, 0x3d, 0xe1, 0x19, 0x0d, 0x39, 0x27, 0x0b, 0xb8, }; static const unsigned char ecdh_secp256k1_5955_sharedsecret[] = { 0x8a, 0x8c, 0x18, 0xb7, 0x8e, 0x1b, 0x1f, 0xcf, 0xd2, 0x2e, 0xe1, 0x8b, 0x4a, 0x3a, 0x9f, 0x39, 0x1a, 0x3f, 0xdf, 0x15, 0x40, 0x8f, 0xb7, 0xf8, 0xc1, 0xdb, 0xa3, 0x3c, 0x27, 0x1d, 0xbd, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_5955 = { .name = "ecdh_secp256k1_5955", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5955_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5955_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5955_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5955_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge cases for ephemeral key, tcId is 675 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5956 for ECDH, tcId is 676 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5956_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x42, 0x18, 0xf2, 0x0a, 0xe6, 0xc6, 0x46, 0xb3, 0x63, 0xdb, 0x68, 0x60, 0x58, 0x22, 0xfb, 0x14, 0x26, 0x4c, 0xa8, 0xd2, 0x58, 0x7f, 0xdd, 0x6f, 0xbc, 0x75, 0x0d, 0x58, 0x7e, 0x76, 0xa7, 0xee, }; static const unsigned char ecdh_secp256k1_5956_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5956_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5956_sharedsecret[] = { 0xf3, 0x62, 0x28, 0x9d, 0x3a, 0x80, 0x3d, 0x56, 0x8a, 0x0a, 0x42, 0x76, 0x70, 0x70, 0xd7, 0x93, 0xbd, 0x70, 0x89, 0x1f, 0xb5, 0xe0, 0x3b, 0x01, 0x41, 0x3b, 0x6d, 0x3f, 0x1e, 0xb5, 0x2f, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_5956 = { .name = "ecdh_secp256k1_5956", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5956_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5956_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5956_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5956_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 676 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5957 for ECDH, tcId is 677 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5957_peerpubkey[] = { 0x22, 0xb9, 0x61, 0xed, 0x14, 0xf6, 0x36, 0x89, 0x03, 0xfe, 0xeb, 0x42, 0xd6, 0x3d, 0x37, 0xbd, 0x11, 0x30, 0x28, 0x93, 0xe8, 0xff, 0x64, 0xc1, 0xa8, 0xe7, 0xfd, 0x07, 0x31, 0x43, 0x9b, 0xb6, 0x98, 0x1a, 0x71, 0x20, 0x63, 0xbf, 0xba, 0x34, 0xd1, 0x77, 0x41, 0x2b, 0xb2, 0x84, 0xc4, 0x36, 0x19, 0x53, 0xde, 0xcf, 0x29, 0xbb, 0xde, 0x01, 0x85, 0xa5, 0x8b, 0xd0, 0x2f, 0x3b, 0xe4, 0x30, }; static const unsigned char ecdh_secp256k1_5957_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5957_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5957_sharedsecret[] = { 0xba, 0xe2, 0x29, 0xe6, 0xd0, 0x01, 0xfd, 0x47, 0x74, 0x1a, 0xee, 0xe8, 0x60, 0x04, 0x8a, 0x85, 0x54, 0x32, 0x07, 0x6f, 0xe2, 0x70, 0xf6, 0x32, 0xf4, 0x6d, 0x13, 0x01, 0x02, 0x2b, 0x64, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_5957 = { .name = "ecdh_secp256k1_5957", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5957_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5957_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5957_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5957_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 677 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5958 for ECDH, tcId is 678 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5958_peerpubkey[] = { 0x2f, 0x92, 0x45, 0xba, 0xc6, 0xfa, 0x95, 0x9b, 0x4f, 0x02, 0x77, 0x3e, 0x21, 0x41, 0x1f, 0x48, 0xb7, 0x4f, 0x98, 0x06, 0xfe, 0x4d, 0x32, 0xe3, 0x6b, 0xdf, 0x9a, 0xb0, 0x28, 0x14, 0xf3, 0x53, 0x57, 0x45, 0xda, 0x33, 0x4d, 0x06, 0xba, 0xfe, 0x2d, 0x83, 0xc2, 0x35, 0xf0, 0xc7, 0xa2, 0x9f, 0x8f, 0x04, 0x27, 0x22, 0xec, 0x34, 0xe5, 0x3a, 0xa9, 0x6d, 0x97, 0xa3, 0x31, 0xa7, 0x33, 0xef, }; static const unsigned char ecdh_secp256k1_5958_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5958_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5958_sharedsecret[] = { 0xe9, 0x0b, 0x9e, 0x81, 0xbd, 0x01, 0x3d, 0x34, 0x9f, 0x70, 0xfd, 0xe1, 0xb5, 0x1b, 0xad, 0x04, 0xc5, 0x81, 0x01, 0x1c, 0x68, 0xf0, 0xc2, 0x05, 0x3a, 0xc9, 0x1d, 0xc8, 0x18, 0x7a, 0xbb, 0x9a, }; static const wycheproof_ecdh_test ecdh_secp256k1_5958 = { .name = "ecdh_secp256k1_5958", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5958_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5958_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5958_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5958_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1, tcId is 678 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5959 for ECDH, tcId is 679 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5959_peerpubkey[] = { 0x1e, 0x39, 0x6a, 0x25, 0x25, 0xbc, 0x3f, 0xb0, 0x0a, 0xf8, 0x98, 0xb0, 0x6b, 0xb8, 0x7c, 0x1d, 0x67, 0x4f, 0xc0, 0x66, 0x2b, 0x86, 0x7f, 0xfa, 0xc0, 0x8e, 0xb0, 0xdb, 0xa2, 0x14, 0x6c, 0x21, 0xa8, 0xb8, 0x42, 0x9f, 0x11, 0x80, 0x36, 0x49, 0xbe, 0x34, 0xae, 0x51, 0x5c, 0x17, 0x3a, 0x43, 0xba, 0x74, 0xf1, 0x3e, 0xbb, 0xd0, 0xe2, 0x61, 0x01, 0x1c, 0x16, 0x2e, 0x57, 0x35, 0x99, 0xb4, }; static const unsigned char ecdh_secp256k1_5959_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5959_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5959_sharedsecret[] = { 0xde, 0x7c, 0xde, 0x6b, 0x58, 0x06, 0xa3, 0x25, 0xda, 0x84, 0x5e, 0x9a, 0x19, 0x1e, 0x18, 0x37, 0x78, 0x68, 0x63, 0x6e, 0x5e, 0xf1, 0xf5, 0xfa, 0x08, 0xe7, 0x56, 0xc0, 0x2d, 0x6f, 0xd4, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_5959 = { .name = "ecdh_secp256k1_5959", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5959_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5959_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5959_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5959_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 679 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5960 for ECDH, tcId is 680 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5960_peerpubkey[] = { 0x45, 0x21, 0x58, 0x30, 0x3b, 0x37, 0xff, 0x9b, 0xeb, 0xca, 0x72, 0x0e, 0xa1, 0x08, 0x5e, 0xfa, 0xa4, 0xf8, 0x59, 0xdb, 0x95, 0x0a, 0x99, 0xfc, 0xcd, 0x9d, 0x2d, 0x17, 0x92, 0x73, 0xab, 0xb1, 0x08, 0xa9, 0x08, 0x3f, 0x80, 0x75, 0x00, 0x59, 0x43, 0xbd, 0x68, 0xc5, 0x66, 0xec, 0x1f, 0x2f, 0x06, 0x76, 0x64, 0xda, 0x92, 0x12, 0xec, 0x18, 0x33, 0x79, 0x9b, 0xba, 0x88, 0x1d, 0x8e, 0x8b, }; static const unsigned char ecdh_secp256k1_5960_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5960_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5960_sharedsecret[] = { 0x96, 0x32, 0x8f, 0xa8, 0x40, 0x38, 0xa6, 0x3c, 0x81, 0x7e, 0xf7, 0xcd, 0x13, 0xb7, 0x97, 0x94, 0xa2, 0xdb, 0x46, 0x7d, 0xd3, 0xbd, 0x87, 0x69, 0xdf, 0x78, 0x2a, 0xda, 0xce, 0x3c, 0x82, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_5960 = { .name = "ecdh_secp256k1_5960", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5960_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5960_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5960_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5960_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 680 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5961 for ECDH, tcId is 681 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5961_peerpubkey[] = { 0x5a, 0x2a, 0x40, 0x16, 0x66, 0xe0, 0xf1, 0x97, 0x8c, 0x6f, 0x30, 0xae, 0xc5, 0x3f, 0xee, 0x58, 0xb4, 0xc4, 0xf7, 0x5e, 0x7c, 0x1a, 0x00, 0x15, 0x6a, 0x36, 0xad, 0x27, 0xc0, 0xa5, 0xa2, 0x95, 0x65, 0x85, 0x77, 0xe6, 0x57, 0x22, 0x3b, 0x8c, 0x20, 0xc8, 0x26, 0x24, 0x3b, 0x5a, 0xe2, 0xca, 0x0f, 0x61, 0x48, 0xc2, 0x52, 0x9e, 0xc6, 0xd6, 0x0e, 0xc2, 0x60, 0x91, 0x66, 0x41, 0xd8, 0xfa, }; static const unsigned char ecdh_secp256k1_5961_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5961_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5961_sharedsecret[] = { 0xb6, 0x69, 0x9f, 0xe9, 0xa1, 0x8c, 0x2d, 0x0d, 0x14, 0xe9, 0x54, 0x05, 0x13, 0x3e, 0x00, 0x0b, 0x16, 0x7d, 0xc2, 0xe5, 0x45, 0x1d, 0xcd, 0xf0, 0x9a, 0xde, 0x49, 0xba, 0x0d, 0xb2, 0x13, 0xeb, }; static const wycheproof_ecdh_test ecdh_secp256k1_5961 = { .name = "ecdh_secp256k1_5961", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5961_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5961_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5961_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5961_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 681 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5962 for ECDH, tcId is 682 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5962_peerpubkey[] = { 0xb2, 0xcd, 0x03, 0x95, 0x00, 0xbc, 0xf4, 0x60, 0xe2, 0x4f, 0xd8, 0x03, 0x83, 0xb6, 0x0e, 0xb8, 0x1a, 0x56, 0xf4, 0x67, 0x07, 0x7e, 0x76, 0x82, 0x31, 0x55, 0x3a, 0x0f, 0xa0, 0xda, 0xfc, 0xc8, 0x1d, 0x4a, 0x1b, 0x8f, 0xd8, 0x8b, 0x3b, 0x23, 0xf2, 0xd5, 0x03, 0x28, 0x5c, 0x9d, 0x72, 0xbb, 0xa4, 0x48, 0xc1, 0x5b, 0xc0, 0x16, 0xc6, 0x20, 0xf7, 0x07, 0x59, 0x9a, 0x12, 0x95, 0x46, 0xae, }; static const unsigned char ecdh_secp256k1_5962_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5962_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5962_sharedsecret[] = { 0x7a, 0x23, 0xae, 0xe5, 0xb0, 0xfe, 0xd1, 0x66, 0x38, 0xf0, 0xe2, 0xeb, 0x05, 0xfb, 0xa1, 0xfd, 0x44, 0x16, 0x7d, 0x49, 0x6e, 0xbe, 0xb2, 0x74, 0xdb, 0x21, 0x85, 0x93, 0xb4, 0xea, 0x20, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_5962 = { .name = "ecdh_secp256k1_5962", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5962_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5962_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5962_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5962_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 682 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5963 for ECDH, tcId is 683 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5963_peerpubkey[] = { 0x03, 0xcf, 0x50, 0x0d, 0x83, 0x8c, 0x9f, 0xcb, 0x97, 0xd8, 0xdd, 0xba, 0x24, 0x66, 0xec, 0x6e, 0x47, 0x44, 0x98, 0x31, 0x5d, 0x6c, 0x2a, 0x43, 0x11, 0x03, 0x08, 0xf2, 0x24, 0x59, 0xd4, 0x9b, 0x07, 0x87, 0x5a, 0xae, 0xd2, 0xed, 0xab, 0xed, 0x84, 0x2f, 0xb1, 0x60, 0x8c, 0xa7, 0x06, 0xbd, 0x39, 0xd6, 0x02, 0x1a, 0x60, 0xbc, 0x27, 0x09, 0x47, 0xc1, 0x20, 0x53, 0xc9, 0xdb, 0xaf, 0xa1, }; static const unsigned char ecdh_secp256k1_5963_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5963_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5963_sharedsecret[] = { 0xd8, 0xae, 0xf4, 0xc5, 0xc8, 0xb6, 0x08, 0x86, 0xd7, 0xf3, 0x3c, 0xdd, 0x23, 0x90, 0xc2, 0x13, 0x11, 0xe6, 0x9f, 0x60, 0x6d, 0xc7, 0x77, 0xdc, 0x41, 0xc4, 0x3a, 0x46, 0x19, 0x95, 0xc3, 0x15, }; static const wycheproof_ecdh_test ecdh_secp256k1_5963 = { .name = "ecdh_secp256k1_5963", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5963_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5963_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5963_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5963_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 683 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5964 for ECDH, tcId is 684 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5964_peerpubkey[] = { 0x0b, 0x6f, 0x2c, 0xb6, 0x29, 0x54, 0xf9, 0x94, 0x56, 0x4e, 0x14, 0x19, 0xcf, 0x9d, 0x59, 0x82, 0xec, 0x65, 0x11, 0xe7, 0xfa, 0x7e, 0x17, 0xf9, 0x68, 0x5e, 0x01, 0x99, 0x49, 0x90, 0x6d, 0xf2, 0xfb, 0x42, 0x9b, 0x05, 0x54, 0xa2, 0x5a, 0x4a, 0x0c, 0x51, 0x02, 0x70, 0xd3, 0xcc, 0x73, 0xe6, 0xcf, 0xec, 0x9b, 0xc2, 0xe6, 0x3c, 0xbd, 0x2b, 0x7a, 0xa0, 0xdb, 0x98, 0xe1, 0xf3, 0x30, 0xcd, }; static const unsigned char ecdh_secp256k1_5964_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5964_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5964_sharedsecret[] = { 0x4c, 0x08, 0x92, 0xba, 0xcd, 0x98, 0x3e, 0xc0, 0x01, 0x3f, 0x47, 0x7d, 0x94, 0xd8, 0xfb, 0x85, 0x05, 0x85, 0xef, 0xf2, 0x19, 0x7b, 0x53, 0xd5, 0x66, 0xa9, 0x92, 0x6b, 0xd8, 0x98, 0xd9, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_5964 = { .name = "ecdh_secp256k1_5964", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5964_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5964_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5964_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5964_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 684 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5965 for ECDH, tcId is 685 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5965_peerpubkey[] = { 0x30, 0x25, 0xb0, 0x46, 0xf4, 0xa7, 0x0e, 0x06, 0x33, 0x0f, 0x3b, 0x14, 0xc4, 0xfa, 0x3e, 0xc1, 0xe0, 0x4f, 0xe1, 0x9e, 0xd8, 0xc9, 0x03, 0x52, 0xdc, 0x6f, 0xf5, 0x62, 0x7c, 0xa7, 0xb3, 0xb3, 0xa2, 0x64, 0xd5, 0xad, 0x9f, 0x06, 0xd8, 0x48, 0x74, 0x30, 0xf6, 0x54, 0xf7, 0xdd, 0x8f, 0x67, 0x35, 0xfc, 0x83, 0x6e, 0xf4, 0x8d, 0x6d, 0x4d, 0x49, 0x96, 0xa9, 0xc2, 0x0a, 0xf3, 0x20, 0xee, }; static const unsigned char ecdh_secp256k1_5965_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5965_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5965_sharedsecret[] = { 0x6e, 0x21, 0x19, 0x93, 0x5a, 0x5c, 0x25, 0x21, 0x18, 0x2a, 0x70, 0x1d, 0x5a, 0x13, 0x21, 0x5a, 0x7d, 0xfb, 0x8a, 0x1f, 0x00, 0x1b, 0x38, 0x87, 0xe8, 0xae, 0x51, 0xbf, 0x25, 0x9b, 0x18, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_5965 = { .name = "ecdh_secp256k1_5965", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5965_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5965_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5965_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5965_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 685 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5966 for ECDH, tcId is 686 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5966_peerpubkey[] = { 0x7d, 0x3b, 0x84, 0x28, 0xc8, 0x02, 0x99, 0xa4, 0xff, 0x1d, 0x96, 0xed, 0x75, 0xa5, 0xa4, 0x46, 0x29, 0xfd, 0x03, 0x13, 0xc0, 0x97, 0xc4, 0x78, 0xe5, 0x5f, 0x2f, 0xa0, 0xae, 0x45, 0xb6, 0x91, 0xbb, 0x49, 0x63, 0xb5, 0xcc, 0x09, 0x5a, 0xbe, 0x5d, 0xcf, 0xe9, 0x83, 0x99, 0x31, 0x7f, 0xd5, 0xad, 0x59, 0xf3, 0x67, 0x4c, 0x07, 0x06, 0x3a, 0x91, 0x23, 0xa2, 0xaa, 0x24, 0x81, 0x45, 0x85, }; static const unsigned char ecdh_secp256k1_5966_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5966_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5966_sharedsecret[] = { 0x2b, 0x8b, 0x0d, 0x4e, 0xee, 0x83, 0xd1, 0xc4, 0xb1, 0xf2, 0xa6, 0x71, 0x44, 0xfe, 0xf7, 0x8e, 0x7f, 0xaa, 0x86, 0xe6, 0xd5, 0xd6, 0xa8, 0xb7, 0x2b, 0x35, 0x9c, 0x4f, 0x37, 0x3a, 0xdb, 0x71, }; static const wycheproof_ecdh_test ecdh_secp256k1_5966 = { .name = "ecdh_secp256k1_5966", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5966_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5966_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5966_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5966_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 686 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5967 for ECDH, tcId is 687 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5967_peerpubkey[] = { 0xfb, 0x77, 0x84, 0x18, 0x84, 0xd3, 0x0f, 0xa5, 0xb7, 0x3a, 0xd2, 0x1d, 0x0a, 0x5a, 0xe4, 0x0c, 0x53, 0xa9, 0xfa, 0xa5, 0xd3, 0x25, 0x69, 0x94, 0x36, 0x33, 0x8c, 0xee, 0x4b, 0xa2, 0x13, 0x69, 0x7b, 0xd7, 0x32, 0xd4, 0x7c, 0x86, 0xdc, 0xd6, 0x36, 0x91, 0x09, 0x7b, 0x19, 0x99, 0xc9, 0xf0, 0xa6, 0x60, 0xa9, 0xc3, 0xd6, 0x13, 0x67, 0x10, 0x39, 0xcf, 0x17, 0x63, 0x46, 0x7d, 0x81, 0x40, }; static const unsigned char ecdh_secp256k1_5967_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5967_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5967_sharedsecret[] = { 0x58, 0xdb, 0xf6, 0xad, 0x5e, 0x79, 0x19, 0x56, 0xe8, 0x63, 0x54, 0x27, 0x25, 0x2c, 0xf5, 0xe5, 0x18, 0xbd, 0x10, 0xed, 0x2a, 0x93, 0x6a, 0x1f, 0x37, 0x47, 0xba, 0x4e, 0xa7, 0x98, 0x32, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_5967 = { .name = "ecdh_secp256k1_5967", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5967_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5967_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5967_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5967_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 687 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5968 for ECDH, tcId is 688 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5968_peerpubkey[] = { 0x9a, 0xef, 0x51, 0x38, 0x3a, 0x55, 0x6c, 0xf3, 0x17, 0xfe, 0x68, 0xbe, 0xa6, 0xa8, 0x5a, 0x25, 0x48, 0x25, 0xec, 0x5b, 0x3f, 0x13, 0x58, 0xae, 0xa2, 0x09, 0xa4, 0x3c, 0xa3, 0x8c, 0x66, 0x35, 0x1a, 0xee, 0x1a, 0x91, 0xae, 0xb2, 0xa4, 0xdc, 0xad, 0x73, 0x97, 0x22, 0xf4, 0x4c, 0x43, 0x7d, 0xfd, 0x32, 0x73, 0x1f, 0x08, 0x62, 0xdd, 0x75, 0x1b, 0x80, 0xbd, 0x88, 0xd0, 0x96, 0x9b, 0xd6, }; static const unsigned char ecdh_secp256k1_5968_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5968_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5968_sharedsecret[] = { 0x12, 0x3b, 0x49, 0x40, 0x58, 0xde, 0xc3, 0x2f, 0xb7, 0x4f, 0xde, 0xb1, 0xaa, 0x9a, 0x4d, 0x52, 0xbf, 0xdd, 0xf2, 0xd9, 0x0b, 0x9b, 0x46, 0xed, 0xbc, 0xf4, 0xcc, 0x95, 0xea, 0x73, 0x62, 0x51, }; static const wycheproof_ecdh_test ecdh_secp256k1_5968 = { .name = "ecdh_secp256k1_5968", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5968_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5968_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5968_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5968_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 688 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5969 for ECDH, tcId is 689 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5969_peerpubkey[] = { 0x27, 0x69, 0xdf, 0x33, 0x51, 0x32, 0xf2, 0x02, 0x5e, 0x64, 0x10, 0x48, 0x04, 0x67, 0x87, 0x37, 0x86, 0x0e, 0xe6, 0x6e, 0x07, 0xe6, 0x75, 0xf7, 0x20, 0xe7, 0xd4, 0xef, 0x5c, 0x38, 0xa2, 0xc2, 0x81, 0xf8, 0x0c, 0x3b, 0x6d, 0x47, 0xdb, 0x0a, 0x41, 0x2e, 0x6e, 0xdd, 0x3c, 0x5b, 0xf4, 0x8a, 0xcc, 0xac, 0x14, 0x97, 0xb5, 0x9e, 0x13, 0xb1, 0x5d, 0xfc, 0x2c, 0xd1, 0x5e, 0x6a, 0xe4, 0x7a, }; static const unsigned char ecdh_secp256k1_5969_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5969_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5969_sharedsecret[] = { 0xaf, 0x4b, 0x79, 0xef, 0xc4, 0x50, 0x63, 0x0b, 0x8c, 0x02, 0x76, 0x97, 0xe2, 0x37, 0x6f, 0x14, 0x84, 0x2b, 0xab, 0xad, 0x81, 0xbd, 0x68, 0x59, 0x2c, 0x37, 0x27, 0x9a, 0x9f, 0xc4, 0x1a, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_5969 = { .name = "ecdh_secp256k1_5969", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5969_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5969_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5969_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5969_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 689 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5970 for ECDH, tcId is 690 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5970_peerpubkey[] = { 0x61, 0xb8, 0xc4, 0x87, 0x50, 0x73, 0x5a, 0x6b, 0x5c, 0xc4, 0x5b, 0x69, 0x19, 0x06, 0xe5, 0xcc, 0x29, 0x2d, 0x59, 0x69, 0xbb, 0x1d, 0x6f, 0xf9, 0x0f, 0xf4, 0x46, 0xd9, 0x48, 0x11, 0xce, 0x7c, 0x28, 0x53, 0x97, 0x74, 0x19, 0xcb, 0xa2, 0xb9, 0x2c, 0xc5, 0x74, 0xab, 0xce, 0x03, 0x04, 0x73, 0xeb, 0x00, 0x83, 0x50, 0x56, 0x6d, 0x7e, 0xaa, 0x24, 0xcb, 0x9d, 0xaa, 0xd7, 0x07, 0x10, 0xed, }; static const unsigned char ecdh_secp256k1_5970_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5970_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5970_sharedsecret[] = { 0x08, 0xb4, 0x32, 0x6b, 0x42, 0xd8, 0x17, 0xe2, 0xf8, 0xbc, 0x09, 0xf2, 0x6f, 0x49, 0xb7, 0x20, 0xaf, 0xce, 0xde, 0x10, 0x23, 0x6d, 0x0a, 0x25, 0xe7, 0xe9, 0x51, 0x8e, 0xac, 0x96, 0xe3, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_5970 = { .name = "ecdh_secp256k1_5970", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5970_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5970_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5970_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5970_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 690 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5971 for ECDH, tcId is 691 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5971_peerpubkey[] = { 0x16, 0xee, 0xab, 0xc8, 0x02, 0xe3, 0x40, 0x9b, 0x7c, 0x7b, 0x3e, 0x76, 0x07, 0xb7, 0x16, 0x62, 0x43, 0xfc, 0x17, 0x46, 0x29, 0x49, 0x48, 0xfc, 0x81, 0x23, 0xb3, 0x99, 0xcf, 0xb8, 0x99, 0x62, 0xfc, 0xbf, 0x0b, 0xf8, 0xa5, 0x19, 0x1c, 0xe9, 0x58, 0xdd, 0x5e, 0xa3, 0xab, 0x63, 0x3c, 0x09, 0x0d, 0x12, 0x59, 0xfb, 0xd9, 0xa9, 0x77, 0xfd, 0xe0, 0xcc, 0x21, 0x2d, 0x5b, 0x3b, 0x98, 0x58, }; static const unsigned char ecdh_secp256k1_5971_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5971_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5971_sharedsecret[] = { 0x52, 0x50, 0x5b, 0xfe, 0xa9, 0xd0, 0x66, 0xf0, 0xaa, 0x90, 0x08, 0xe8, 0x38, 0x23, 0x82, 0xc7, 0xd4, 0x84, 0x60, 0xd7, 0x6f, 0x29, 0x62, 0xe5, 0x09, 0x48, 0x2b, 0x6e, 0xb5, 0x6e, 0x0a, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_5971 = { .name = "ecdh_secp256k1_5971", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5971_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5971_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5971_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5971_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 691 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5972 for ECDH, tcId is 692 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5972_peerpubkey[] = { 0x63, 0xb1, 0xd9, 0x94, 0x91, 0xb4, 0x6c, 0xee, 0x7e, 0x18, 0x6a, 0x24, 0x3b, 0xce, 0x1c, 0xc3, 0x86, 0x29, 0x75, 0x71, 0x85, 0x0a, 0x10, 0xd9, 0xa2, 0x96, 0x2d, 0x76, 0x9a, 0x41, 0x1c, 0x61, 0x63, 0x45, 0xe2, 0x85, 0x32, 0xca, 0xc3, 0x99, 0x60, 0xa2, 0xf1, 0x2b, 0xbd, 0x03, 0x20, 0x5b, 0x77, 0x46, 0x4a, 0x80, 0xa0, 0x41, 0x64, 0x46, 0xe6, 0xff, 0x85, 0x85, 0x1a, 0x00, 0x9f, 0x64, }; static const unsigned char ecdh_secp256k1_5972_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5972_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5972_sharedsecret[] = { 0x1e, 0x64, 0x64, 0xf7, 0x8f, 0xbe, 0xde, 0xcd, 0x82, 0x1a, 0x4f, 0xa0, 0x4d, 0x7e, 0x8f, 0x13, 0x64, 0xd3, 0x24, 0xbe, 0x24, 0xd1, 0x22, 0x12, 0x99, 0x46, 0x83, 0xfc, 0x2b, 0x6b, 0xb1, 0xa2, }; static const wycheproof_ecdh_test ecdh_secp256k1_5972 = { .name = "ecdh_secp256k1_5972", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5972_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5972_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5972_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5972_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 692 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5973 for ECDH, tcId is 693 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5973_peerpubkey[] = { 0x75, 0xc7, 0x8a, 0xe9, 0xc9, 0x46, 0x13, 0xdd, 0x05, 0x1e, 0xed, 0x7d, 0xd7, 0xdf, 0x66, 0xa0, 0x81, 0xcd, 0x0a, 0xc2, 0x7c, 0xf6, 0x5e, 0x4e, 0xf0, 0xea, 0x82, 0x62, 0x76, 0xc5, 0xef, 0xcf, 0xa9, 0x2e, 0xd1, 0xc4, 0xff, 0xbb, 0x84, 0x30, 0x1f, 0x5b, 0xb1, 0xc6, 0xbc, 0x9e, 0x14, 0xc6, 0xe6, 0xda, 0xd1, 0xe0, 0x4a, 0x28, 0x78, 0x26, 0x52, 0x84, 0x78, 0xf9, 0xae, 0x16, 0x09, 0xc2, }; static const unsigned char ecdh_secp256k1_5973_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5973_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5973_sharedsecret[] = { 0xb4, 0xfc, 0xb7, 0x2d, 0x1f, 0x81, 0xdb, 0x21, 0x1d, 0xd9, 0x40, 0x39, 0xa1, 0x36, 0x8c, 0x2c, 0x4e, 0xff, 0xd1, 0xef, 0xe8, 0x32, 0xf1, 0xa1, 0xdb, 0x2d, 0xae, 0x52, 0x53, 0xc2, 0x73, 0x03, }; static const wycheproof_ecdh_test ecdh_secp256k1_5973 = { .name = "ecdh_secp256k1_5973", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5973_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5973_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5973_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5973_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 693 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5974 for ECDH, tcId is 694 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5974_peerpubkey[] = { 0x07, 0x28, 0x38, 0xe4, 0xf9, 0x72, 0xd4, 0xa6, 0x5d, 0x25, 0x8d, 0xbc, 0x32, 0xa5, 0x30, 0xfd, 0xe2, 0xe8, 0x73, 0x53, 0x7b, 0x5a, 0x4a, 0xa7, 0x07, 0xcf, 0x81, 0xce, 0xcc, 0x0f, 0x7f, 0xf1, 0x2e, 0x4b, 0x60, 0x8b, 0x9e, 0x32, 0x1c, 0x9d, 0xb7, 0x2c, 0xf4, 0xd9, 0xba, 0x4b, 0x3c, 0x2c, 0x13, 0x75, 0x60, 0x40, 0xd7, 0x7a, 0xf6, 0xbd, 0x25, 0x1b, 0xc2, 0x4c, 0xf1, 0x86, 0x76, 0xf1, }; static const unsigned char ecdh_secp256k1_5974_ourpubkey[] = { 0x58, 0x7c, 0xbe, 0x1a, 0xc8, 0xdf, 0x51, 0x33, 0x54, 0x4d, 0xc4, 0xd9, 0x0e, 0xcb, 0x7e, 0xa1, 0xaa, 0x66, 0x84, 0x9d, 0x8e, 0xd1, 0x82, 0x9e, 0x6e, 0xe5, 0x6e, 0x7a, 0x4c, 0x59, 0xd9, 0xe4, 0xca, 0x99, 0x74, 0x0a, 0x55, 0xb5, 0x44, 0x1b, 0xdb, 0x91, 0x8d, 0x4b, 0xb0, 0x27, 0x11, 0x85, 0xb0, 0x40, 0x68, 0x64, 0x83, 0xbd, 0xb7, 0x72, 0x66, 0x75, 0x0c, 0xe7, 0x13, 0xb0, 0x45, 0xb3, }; static const unsigned char ecdh_secp256k1_5974_privkey[] = { 0x93, 0x8f, 0x3d, 0xbe, 0x37, 0x13, 0x5c, 0xd8, 0xc8, 0xc4, 0x8a, 0x67, 0x6b, 0x28, 0xb2, 0x33, 0x4b, 0x72, 0xa3, 0xf0, 0x98, 0x14, 0xc8, 0xef, 0xb6, 0xa4, 0x51, 0xbe, 0x00, 0xc9, 0x3d, 0x23, }; static const unsigned char ecdh_secp256k1_5974_sharedsecret[] = { 0xf4, 0xf4, 0x92, 0x6b, 0x6f, 0x64, 0xe4, 0x7a, 0xbe, 0xad, 0xbd, 0xc5, 0xa8, 0xa6, 0x77, 0x06, 0xa4, 0x2e, 0x00, 0x77, 0x4e, 0x1c, 0xc5, 0xaf, 0xda, 0x7d, 0x57, 0xce, 0xd6, 0x42, 0x3b, 0x39, }; static const wycheproof_ecdh_test ecdh_secp256k1_5974 = { .name = "ecdh_secp256k1_5974", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5974_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5974_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5974_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5974_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in left to right addition chain, tcId is 694 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5975 for ECDH, tcId is 695 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5975_peerpubkey[] = { 0x43, 0x01, 0xf5, 0x4b, 0x35, 0x92, 0xd1, 0xea, 0x2a, 0x40, 0x98, 0x9c, 0x94, 0x26, 0x1d, 0x2b, 0x1d, 0x1f, 0xe2, 0x97, 0xed, 0x6e, 0xd6, 0x41, 0x25, 0xee, 0x24, 0x1d, 0xe0, 0x5d, 0x00, 0x4b, 0xc7, 0x90, 0x14, 0xf1, 0x56, 0xe9, 0xb7, 0xbf, 0xb3, 0x6b, 0x8a, 0xd2, 0xd6, 0x6d, 0x55, 0xf3, 0xa7, 0x53, 0x82, 0x9a, 0x9d, 0xdb, 0x86, 0x05, 0x5b, 0xb9, 0x16, 0x6d, 0xd3, 0xaf, 0xf4, 0x57, }; static const unsigned char ecdh_secp256k1_5975_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5975_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5975_sharedsecret[] = { 0xfd, 0xc1, 0x5a, 0x26, 0xab, 0xba, 0xde, 0x34, 0x16, 0xe1, 0x20, 0x1a, 0x6d, 0x73, 0x71, 0x28, 0xa2, 0xf8, 0x97, 0xf0, 0xd8, 0x81, 0x08, 0x64, 0x54, 0x53, 0xa1, 0xb3, 0xdd, 0xd0, 0x56, 0x88, }; static const wycheproof_ecdh_test ecdh_secp256k1_5975 = { .name = "ecdh_secp256k1_5975", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5975_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5975_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5975_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5975_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 695 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5976 for ECDH, tcId is 696 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5976_peerpubkey[] = { 0x36, 0xb0, 0xf6, 0x6b, 0xf5, 0xf9, 0xfd, 0x4b, 0x2d, 0xf9, 0xcd, 0xae, 0x2a, 0xf8, 0x73, 0xa0, 0x75, 0xc5, 0x54, 0x97, 0xd7, 0xfe, 0xc4, 0x73, 0x7a, 0x7c, 0x96, 0x43, 0xc2, 0xc7, 0x6f, 0xe5, 0xda, 0x9f, 0x72, 0x87, 0xb3, 0xcd, 0x4e, 0x5f, 0x05, 0xb9, 0xa1, 0xa4, 0xf6, 0x4e, 0x8a, 0x8d, 0x96, 0xc3, 0x16, 0xe4, 0x52, 0x59, 0x4d, 0x02, 0xa4, 0x59, 0x2a, 0x21, 0x07, 0xec, 0xe9, 0x0b, }; static const unsigned char ecdh_secp256k1_5976_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5976_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5976_sharedsecret[] = { 0xe3, 0x63, 0x48, 0xe3, 0xa4, 0x64, 0xbc, 0x51, 0x83, 0x84, 0x80, 0x6c, 0x54, 0x8e, 0x15, 0x6e, 0xdd, 0x99, 0x4c, 0xb6, 0x94, 0x64, 0x73, 0xc2, 0x65, 0xa2, 0x49, 0x14, 0xd5, 0x55, 0x9f, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_5976 = { .name = "ecdh_secp256k1_5976", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5976_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5976_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5976_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5976_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 696 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5977 for ECDH, tcId is 697 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5977_peerpubkey[] = { 0x82, 0xab, 0xb5, 0x8a, 0xfb, 0x62, 0xd2, 0x61, 0x87, 0x8b, 0xde, 0xe1, 0x26, 0x64, 0xdf, 0x14, 0x99, 0xb8, 0x24, 0xf1, 0xd6, 0x0f, 0xb0, 0x28, 0x11, 0x64, 0x2c, 0xb0, 0x2f, 0x4a, 0xff, 0x5d, 0x30, 0x71, 0x98, 0x35, 0xd9, 0x6f, 0x32, 0xdc, 0x03, 0xc4, 0x9d, 0x81, 0x5f, 0xfa, 0x21, 0x28, 0x57, 0x33, 0x13, 0x7f, 0x50, 0x7c, 0xe3, 0x16, 0xce, 0xc6, 0x5c, 0xa5, 0x62, 0xce, 0x2a, 0xd0, }; static const unsigned char ecdh_secp256k1_5977_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5977_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5977_sharedsecret[] = { 0x7d, 0x65, 0x68, 0x4b, 0xdc, 0xe4, 0xac, 0x95, 0xdb, 0x00, 0x2f, 0xba, 0x35, 0x0d, 0xc8, 0x9d, 0x0d, 0x0f, 0xc9, 0xe1, 0x22, 0x60, 0xd0, 0x18, 0x68, 0x54, 0x3f, 0x2a, 0x6c, 0x8c, 0x5b, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_5977 = { .name = "ecdh_secp256k1_5977", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5977_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5977_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5977_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5977_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 697 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5978 for ECDH, tcId is 698 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5978_peerpubkey[] = { 0x7d, 0xe7, 0xb7, 0xcf, 0x5c, 0x5f, 0xf4, 0x24, 0x0d, 0xaf, 0x31, 0xa5, 0x0a, 0xc6, 0xcf, 0x6b, 0x16, 0x9a, 0xad, 0x07, 0xd2, 0xc5, 0x93, 0x6c, 0x73, 0xb8, 0x3e, 0xe3, 0x98, 0x7e, 0x22, 0xa1, 0x94, 0x0c, 0x1b, 0xd7, 0x8e, 0x4b, 0xe6, 0x69, 0x25, 0x85, 0xc9, 0x9d, 0xc9, 0x2b, 0x47, 0x67, 0x1e, 0x2c, 0xcb, 0xcf, 0x12, 0xa9, 0xa9, 0x85, 0x4c, 0x66, 0x07, 0xf9, 0x82, 0x13, 0xc1, 0x08, }; static const unsigned char ecdh_secp256k1_5978_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5978_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5978_sharedsecret[] = { 0x6e, 0xc6, 0xba, 0x23, 0x74, 0xab, 0x0a, 0x9a, 0xe6, 0x63, 0xf3, 0xf7, 0x36, 0x71, 0x15, 0x8a, 0xaa, 0xba, 0xc3, 0xac, 0x68, 0x9d, 0x6c, 0x27, 0x02, 0xeb, 0xdf, 0x41, 0x86, 0x59, 0x7a, 0x85, }; static const wycheproof_ecdh_test ecdh_secp256k1_5978 = { .name = "ecdh_secp256k1_5978", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5978_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5978_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5978_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5978_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 698 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5979 for ECDH, tcId is 699 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5979_peerpubkey[] = { 0x06, 0xfa, 0x93, 0x52, 0x72, 0x94, 0xc8, 0x53, 0x3a, 0xa4, 0x01, 0xce, 0x4e, 0x6c, 0x8a, 0xeb, 0x05, 0xa6, 0x92, 0x1b, 0xc4, 0x87, 0x98, 0xa8, 0xe2, 0x0a, 0x0f, 0x84, 0xa5, 0x08, 0x5a, 0xf4, 0xec, 0x48, 0x28, 0xf8, 0x39, 0x4d, 0x22, 0xde, 0x43, 0x04, 0x31, 0x17, 0xb8, 0x59, 0x5f, 0xb1, 0x13, 0x24, 0x5f, 0x72, 0x85, 0xcb, 0x35, 0x43, 0x93, 0x89, 0xe8, 0x54, 0x7a, 0x10, 0x50, 0x39, }; static const unsigned char ecdh_secp256k1_5979_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5979_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5979_sharedsecret[] = { 0x6d, 0x6e, 0x87, 0x78, 0x7d, 0x0a, 0x94, 0x7e, 0xcf, 0xbf, 0x79, 0x62, 0x14, 0x2f, 0xde, 0x8f, 0xf9, 0xb5, 0x90, 0xe4, 0x72, 0xc0, 0xc4, 0x6b, 0xbc, 0x5d, 0x39, 0x02, 0x0e, 0x4f, 0x78, 0xa7, }; static const wycheproof_ecdh_test ecdh_secp256k1_5979 = { .name = "ecdh_secp256k1_5979", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5979_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5979_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5979_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5979_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 699 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5980 for ECDH, tcId is 700 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5980_peerpubkey[] = { 0x8a, 0x4f, 0x62, 0x52, 0x10, 0xb4, 0x48, 0xdc, 0x84, 0x6a, 0xd2, 0x39, 0x9b, 0x31, 0xcd, 0x1b, 0xc3, 0xf1, 0x78, 0x8c, 0x7b, 0xed, 0x69, 0xcc, 0x1c, 0xb7, 0xaa, 0xc8, 0xab, 0x28, 0xd5, 0x39, 0x30, 0x07, 0xc6, 0xf1, 0x1f, 0x3e, 0x24, 0x8d, 0xe6, 0x51, 0xc6, 0x62, 0x2d, 0xe3, 0x08, 0xee, 0x55, 0x76, 0xbe, 0x84, 0xef, 0x1e, 0xd8, 0xed, 0x91, 0xfd, 0x24, 0x4f, 0x14, 0xfc, 0x20, 0x53, }; static const unsigned char ecdh_secp256k1_5980_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5980_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5980_sharedsecret[] = { 0x56, 0xea, 0x43, 0x82, 0xf8, 0xe1, 0xab, 0xfc, 0xb2, 0x11, 0x98, 0x9f, 0x50, 0x06, 0x76, 0x44, 0x9a, 0xbc, 0xeb, 0xfe, 0x2c, 0xd2, 0x20, 0x4d, 0xd8, 0x92, 0x3d, 0xeb, 0x53, 0x0a, 0x6c, 0x7b, }; static const wycheproof_ecdh_test ecdh_secp256k1_5980 = { .name = "ecdh_secp256k1_5980", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5980_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5980_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5980_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5980_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in precomputation or right to left addition chain, tcId is 700 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5981 for ECDH, tcId is 701 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5981_peerpubkey[] = { 0x88, 0x5e, 0x45, 0x2c, 0xbb, 0x0e, 0x4b, 0x2a, 0x97, 0x68, 0xb7, 0x59, 0x6c, 0x15, 0x31, 0x98, 0xa9, 0x22, 0xda, 0xbb, 0xb8, 0xd0, 0xca, 0x1d, 0xc3, 0xfa, 0xf4, 0xf0, 0x97, 0xf0, 0x91, 0x13, 0xbe, 0x9a, 0xaa, 0x63, 0x09, 0x18, 0xd5, 0x05, 0x60, 0x53, 0xec, 0xf7, 0x38, 0x8f, 0x44, 0x8b, 0x91, 0x2d, 0x9c, 0xcf, 0xbe, 0xd8, 0x0d, 0x7c, 0xa2, 0x3c, 0x0e, 0x79, 0x91, 0xa3, 0x49, 0x01, }; static const unsigned char ecdh_secp256k1_5981_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5981_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5981_sharedsecret[] = { 0x2c, 0x36, 0x2c, 0x27, 0xb3, 0x10, 0x7e, 0xa8, 0xa0, 0x42, 0xc0, 0x5c, 0xc5, 0x0c, 0x4a, 0x8d, 0xda, 0xae, 0x8c, 0xdc, 0x33, 0xd0, 0x58, 0x49, 0x29, 0x51, 0xa0, 0x3f, 0x8d, 0x8f, 0x81, 0x94, }; static const wycheproof_ecdh_test ecdh_secp256k1_5981 = { .name = "ecdh_secp256k1_5981", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5981_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5981_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5981_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5981_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 701 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5982 for ECDH, tcId is 702 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5982_peerpubkey[] = { 0xe2, 0x26, 0xdf, 0x1f, 0xcf, 0x7c, 0x13, 0x7a, 0x41, 0xc9, 0x20, 0xff, 0x74, 0xd6, 0x20, 0x4f, 0xaa, 0x20, 0x93, 0xee, 0xff, 0xc4, 0xa9, 0xee, 0x0a, 0x23, 0xfb, 0x2e, 0x99, 0x40, 0x41, 0xc3, 0x45, 0x71, 0x07, 0x44, 0x2c, 0xc4, 0xb3, 0xaf, 0x63, 0x1c, 0x4d, 0xfb, 0x5f, 0x53, 0xe2, 0xc5, 0x60, 0x8b, 0xed, 0x04, 0xff, 0x66, 0x53, 0xb7, 0x71, 0xf7, 0xcd, 0x46, 0x70, 0xf8, 0x10, 0x34, }; static const unsigned char ecdh_secp256k1_5982_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5982_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5982_sharedsecret[] = { 0x01, 0x88, 0xda, 0x28, 0x9c, 0xe8, 0x97, 0x4a, 0x4f, 0x44, 0x52, 0x09, 0x60, 0xfa, 0xe8, 0xb3, 0x53, 0x75, 0x0a, 0xca, 0x78, 0x92, 0x72, 0xe9, 0xf9, 0x0d, 0x12, 0x15, 0xba, 0xcd, 0xd8, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_5982 = { .name = "ecdh_secp256k1_5982", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5982_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5982_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5982_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5982_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 702 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5983 for ECDH, tcId is 703 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5983_peerpubkey[] = { 0xf5, 0x3e, 0xad, 0x95, 0x75, 0xee, 0xbb, 0xa3, 0xb0, 0xeb, 0x0d, 0x03, 0x3a, 0xcb, 0x7e, 0x99, 0x38, 0x8e, 0x85, 0x90, 0xb4, 0xad, 0x2d, 0xb5, 0xea, 0x4f, 0x6b, 0xd9, 0xbd, 0xe1, 0x69, 0x95, 0xb5, 0xf3, 0xab, 0x15, 0xf9, 0x73, 0xca, 0x9e, 0x3a, 0xa9, 0xdf, 0xe2, 0x91, 0x4e, 0xeb, 0xbd, 0x2e, 0x11, 0x01, 0x0b, 0x45, 0x55, 0x13, 0x90, 0x79, 0x08, 0x80, 0x03, 0x96, 0xfb, 0x9d, 0x1a, }; static const unsigned char ecdh_secp256k1_5983_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5983_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5983_sharedsecret[] = { 0xf7, 0x8b, 0xd7, 0xff, 0x89, 0x9c, 0x81, 0xb8, 0x66, 0xbe, 0x17, 0xc0, 0xa9, 0x4b, 0xec, 0x59, 0x28, 0x38, 0xd7, 0x8d, 0x1f, 0x0c, 0x0c, 0xf5, 0x32, 0x82, 0x9b, 0x6c, 0x46, 0x4c, 0x28, 0xac, }; static const wycheproof_ecdh_test ecdh_secp256k1_5983 = { .name = "ecdh_secp256k1_5983", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5983_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5983_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5983_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5983_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 703 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5984 for ECDH, tcId is 704 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5984_peerpubkey[] = { 0x88, 0x27, 0x73, 0xec, 0x7e, 0x10, 0x60, 0x5c, 0x8f, 0x9e, 0x2e, 0x3b, 0x87, 0x00, 0x94, 0x3b, 0xe2, 0x6b, 0xcc, 0x4c, 0x9d, 0x1f, 0xed, 0xf2, 0xbd, 0xcf, 0xb3, 0x69, 0x94, 0xf2, 0x3c, 0x7f, 0x8e, 0x5d, 0x05, 0xb2, 0xfd, 0xd2, 0x95, 0x4b, 0x61, 0x88, 0x73, 0x6e, 0xbe, 0x3f, 0x56, 0x46, 0x60, 0x2a, 0x58, 0xd9, 0x78, 0xb7, 0x16, 0xb5, 0x30, 0x4e, 0xa5, 0x67, 0x77, 0x69, 0x1d, 0xb3, }; static const unsigned char ecdh_secp256k1_5984_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5984_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5984_sharedsecret[] = { 0x99, 0xf6, 0x15, 0x1f, 0xba, 0x28, 0x06, 0x7e, 0xac, 0x73, 0x35, 0x49, 0x20, 0xfc, 0xc1, 0xfa, 0x17, 0xfe, 0xa6, 0x32, 0x25, 0xa5, 0x83, 0x32, 0x3c, 0xb6, 0xc3, 0xd4, 0x05, 0x4e, 0xca, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_5984 = { .name = "ecdh_secp256k1_5984", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5984_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5984_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5984_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5984_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 704 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5985 for ECDH, tcId is 705 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5985_peerpubkey[] = { 0xa6, 0x0b, 0x64, 0x58, 0x25, 0x6b, 0x38, 0xd4, 0x64, 0x44, 0x51, 0xb4, 0x90, 0xbd, 0x35, 0x7f, 0xea, 0xde, 0x7b, 0xb6, 0xb8, 0x45, 0x3c, 0x1f, 0xc8, 0x97, 0x94, 0xd5, 0xa4, 0x5f, 0x76, 0x8d, 0x81, 0xee, 0xe9, 0x05, 0x48, 0xa5, 0x9e, 0x5d, 0x2c, 0xec, 0xd7, 0x2d, 0x4b, 0x0b, 0x5e, 0x65, 0x74, 0xd6, 0x5a, 0x9d, 0x83, 0x7c, 0x7c, 0x59, 0x0d, 0x1d, 0x12, 0x5e, 0xe3, 0x7c, 0x4d, 0x51, }; static const unsigned char ecdh_secp256k1_5985_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5985_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5985_sharedsecret[] = { 0x68, 0xca, 0x39, 0xde, 0x0c, 0xec, 0x22, 0x97, 0x52, 0x9f, 0x56, 0x87, 0x6b, 0xc3, 0xde, 0x7b, 0xe3, 0x70, 0xf3, 0x00, 0xe8, 0x7c, 0x2b, 0x09, 0xcd, 0xbb, 0x51, 0x20, 0x38, 0x2d, 0x69, 0x77, }; static const wycheproof_ecdh_test ecdh_secp256k1_5985 = { .name = "ecdh_secp256k1_5985", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5985_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5985_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5985_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5985_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate x = 1 in right to left addition chain, tcId is 705 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5986 for ECDH, tcId is 706 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5986_peerpubkey[] = { 0xcb, 0xb0, 0xde, 0xab, 0x12, 0x57, 0x54, 0xf1, 0xfd, 0xb2, 0x03, 0x8b, 0x04, 0x34, 0xed, 0x9c, 0xb3, 0xfb, 0x53, 0xab, 0x73, 0x53, 0x91, 0x12, 0x99, 0x94, 0xa5, 0x35, 0xd9, 0x25, 0xf6, 0x73, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_5986_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5986_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5986_sharedsecret[] = { 0xaf, 0x30, 0x6c, 0x99, 0x3d, 0xee, 0x0d, 0xcf, 0xc4, 0x41, 0xeb, 0xe5, 0x33, 0x60, 0xb5, 0x69, 0xe2, 0x1f, 0x18, 0x60, 0x52, 0xdb, 0x81, 0x97, 0xf4, 0xa1, 0x24, 0xfa, 0x77, 0xb9, 0x81, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_5986 = { .name = "ecdh_secp256k1_5986", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5986_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5986_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5986_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5986_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 706 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5987 for ECDH, tcId is 707 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5987_peerpubkey[] = { 0x24, 0x80, 0x0d, 0xea, 0xc3, 0xfe, 0x4c, 0x76, 0x5b, 0x6d, 0xec, 0x80, 0xea, 0x29, 0x9d, 0x77, 0x1a, 0xda, 0x4f, 0x30, 0xe4, 0xe1, 0x56, 0xb3, 0xac, 0xb7, 0x20, 0xdb, 0xa3, 0x73, 0x94, 0x71, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_5987_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5987_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5987_sharedsecret[] = { 0xaa, 0x7f, 0xc9, 0xfe, 0x60, 0x44, 0x5e, 0xac, 0x24, 0x51, 0xec, 0x24, 0xc1, 0xa4, 0x49, 0x09, 0x84, 0x2f, 0xa1, 0x40, 0x25, 0xf2, 0xa1, 0xd3, 0xdd, 0x7f, 0x31, 0x01, 0x9f, 0x96, 0x2b, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_5987 = { .name = "ecdh_secp256k1_5987", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5987_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5987_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5987_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5987_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 707 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5988 for ECDH, tcId is 708 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5988_peerpubkey[] = { 0x8f, 0x33, 0x65, 0x2f, 0x5b, 0xda, 0x2c, 0x32, 0x95, 0x3e, 0xbf, 0x2d, 0x2e, 0xca, 0x95, 0xe0, 0x5b, 0x17, 0xc8, 0xab, 0x7d, 0x99, 0x60, 0x1b, 0xee, 0x44, 0x5d, 0xf8, 0x44, 0xd4, 0x6a, 0x36, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_5988_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5988_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5988_sharedsecret[] = { 0x08, 0x2a, 0x43, 0xa8, 0x41, 0x77, 0x82, 0xa7, 0x95, 0xc8, 0xd4, 0xc7, 0x0f, 0x43, 0xed, 0xca, 0xbb, 0xc2, 0x45, 0xa8, 0x82, 0x0a, 0xc0, 0x1b, 0xe9, 0x0c, 0x1a, 0xcf, 0x03, 0x43, 0xba, 0x91, }; static const wycheproof_ecdh_test ecdh_secp256k1_5988 = { .name = "ecdh_secp256k1_5988", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5988_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5988_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5988_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5988_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 708 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5989 for ECDH, tcId is 709 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5989_peerpubkey[] = { 0x14, 0x6d, 0x3b, 0x65, 0xad, 0xd9, 0xf5, 0x4c, 0xcc, 0xa2, 0x85, 0x33, 0xc8, 0x8e, 0x2c, 0xbc, 0x63, 0xf7, 0x44, 0x3e, 0x16, 0x58, 0x78, 0x3a, 0xb4, 0x1f, 0x8e, 0xf9, 0x7c, 0x2a, 0x10, 0xb5, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_5989_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5989_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5989_sharedsecret[] = { 0x70, 0x81, 0x0b, 0x47, 0x80, 0xa6, 0x3c, 0x86, 0x04, 0x27, 0xd3, 0xa0, 0x26, 0x9f, 0x6c, 0x9d, 0x3c, 0x2e, 0xa3, 0x34, 0x94, 0xc5, 0x0e, 0x58, 0xa2, 0x0b, 0x94, 0x80, 0x03, 0x4b, 0xc7, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_5989 = { .name = "ecdh_secp256k1_5989", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5989_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5989_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5989_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5989_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 709 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5990 for ECDH, tcId is 710 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5990_peerpubkey[] = { 0xb0, 0x34, 0x44, 0x18, 0xa4, 0x50, 0x4c, 0x07, 0xe7, 0x92, 0x1e, 0xd9, 0xf0, 0x07, 0x14, 0xb5, 0xd3, 0x90, 0xe5, 0xcb, 0x5e, 0x79, 0x3b, 0xb1, 0x46, 0x5f, 0x73, 0x17, 0x4f, 0x6c, 0x26, 0xfe, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_5990_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5990_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5990_sharedsecret[] = { 0xa7, 0xd3, 0x4e, 0xe2, 0x5f, 0xbb, 0x35, 0x4f, 0x86, 0x38, 0xd3, 0x18, 0x50, 0xda, 0xb4, 0x1e, 0x4b, 0x08, 0x68, 0x86, 0xf7, 0xed, 0x3f, 0x2d, 0x6e, 0x03, 0x5b, 0xce, 0xb8, 0xca, 0xb8, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_5990 = { .name = "ecdh_secp256k1_5990", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5990_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5990_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5990_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5990_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 710 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5991 for ECDH, tcId is 711 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5991_peerpubkey[] = { 0x8a, 0x98, 0xc1, 0xbc, 0x6b, 0xe7, 0x5c, 0x57, 0x96, 0xbe, 0x4b, 0x29, 0xdd, 0x88, 0x5c, 0x34, 0x85, 0xe7, 0x5e, 0x37, 0xb4, 0xcc, 0xac, 0x9b, 0x37, 0x25, 0x1e, 0x67, 0x17, 0x5f, 0xf0, 0xd6, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_5991_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5991_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5991_sharedsecret[] = { 0x3f, 0x09, 0xcb, 0xc1, 0x2e, 0xd1, 0x70, 0x1f, 0x59, 0xdd, 0x5a, 0xa8, 0x3d, 0xae, 0xf5, 0xe6, 0x67, 0x6a, 0xdf, 0x7f, 0xd2, 0x35, 0xc5, 0x3f, 0x69, 0xae, 0xb5, 0xd5, 0xb6, 0x77, 0x99, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_5991 = { .name = "ecdh_secp256k1_5991", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5991_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5991_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5991_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5991_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 711 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5992 for ECDH, tcId is 712 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5992_peerpubkey[] = { 0x1f, 0xe1, 0xe5, 0xef, 0x3f, 0xce, 0xb5, 0xc1, 0x35, 0xab, 0x77, 0x41, 0x33, 0x3c, 0xe5, 0xa6, 0xe8, 0x0d, 0x68, 0x16, 0x76, 0x53, 0xf6, 0xb2, 0xb2, 0x4b, 0xcb, 0xcf, 0xaa, 0xaf, 0xf5, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_5992_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5992_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5992_sharedsecret[] = { 0xe0, 0x4e, 0x88, 0x1f, 0x41, 0x6b, 0xb5, 0xaa, 0x37, 0x96, 0x40, 0x7a, 0xa5, 0xff, 0xdd, 0xf8, 0xe1, 0xb2, 0x44, 0x6b, 0x18, 0x5f, 0x70, 0x0f, 0x69, 0x53, 0x46, 0x83, 0x84, 0xfa, 0xaf, 0x76, }; static const wycheproof_ecdh_test ecdh_secp256k1_5992 = { .name = "ecdh_secp256k1_5992", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5992_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5992_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5992_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5992_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 712 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5993 for ECDH, tcId is 713 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5993_peerpubkey[] = { 0x2b, 0x4b, 0xad, 0xfc, 0x97, 0xb1, 0x67, 0x81, 0xbc, 0xff, 0xf4, 0xa5, 0x25, 0xcf, 0x4d, 0xd3, 0x11, 0x94, 0xcb, 0x03, 0xbc, 0xa5, 0x6d, 0x9b, 0x0c, 0xe9, 0x6c, 0x0c, 0x0d, 0x20, 0x40, 0xc0, 0x5f, 0xe4, 0xc6, 0x4b, 0xb0, 0x64, 0x8e, 0x26, 0xd0, 0x5c, 0xb9, 0xcc, 0x98, 0xac, 0x86, 0xd4, 0xe9, 0x7b, 0x8b, 0xf1, 0x2f, 0x92, 0xb9, 0xb2, 0xfd, 0xc3, 0xae, 0xcd, 0x8e, 0xa6, 0x64, 0x8b, }; static const unsigned char ecdh_secp256k1_5993_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5993_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5993_sharedsecret[] = { 0xad, 0xac, 0xe7, 0x1f, 0x40, 0x00, 0x6c, 0x04, 0x55, 0x75, 0x40, 0xc2, 0xed, 0x81, 0x02, 0xd8, 0x30, 0xc7, 0xf6, 0x38, 0xe2, 0x20, 0x1e, 0xfe, 0xb4, 0x7d, 0x73, 0x2d, 0xa7, 0x9f, 0x13, 0xd9, }; static const wycheproof_ecdh_test ecdh_secp256k1_5993 = { .name = "ecdh_secp256k1_5993", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5993_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5993_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5993_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5993_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 713 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5994 for ECDH, tcId is 714 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5994_peerpubkey[] = { 0xe6, 0x33, 0xd9, 0x14, 0x38, 0x3e, 0x77, 0x75, 0xd4, 0x02, 0xf5, 0xa8, 0xf3, 0xad, 0x0d, 0xeb, 0x1f, 0x00, 0xd9, 0x1c, 0xcd, 0x99, 0xf3, 0x48, 0xda, 0x96, 0x83, 0x9e, 0xa3, 0xcb, 0x9d, 0x52, 0x9c, 0xf5, 0xac, 0x00, 0x77, 0x11, 0xbd, 0xbe, 0x5c, 0x03, 0x33, 0xdc, 0x0c, 0x06, 0x36, 0xa6, 0x48, 0x23, 0xee, 0x48, 0x01, 0x94, 0x64, 0x94, 0x0d, 0x1f, 0x27, 0xe0, 0x5c, 0x42, 0x08, 0xde, }; static const unsigned char ecdh_secp256k1_5994_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5994_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5994_sharedsecret[] = { 0xb8, 0xcb, 0xf0, 0x96, 0x8f, 0xb7, 0x0d, 0x39, 0x10, 0x59, 0xd0, 0x90, 0xb3, 0x0d, 0x1c, 0x4e, 0xdc, 0xd2, 0xda, 0xd7, 0xab, 0xbf, 0x7a, 0xa4, 0xad, 0x45, 0x2f, 0x5a, 0x46, 0x44, 0xa7, 0xbe, }; static const wycheproof_ecdh_test ecdh_secp256k1_5994 = { .name = "ecdh_secp256k1_5994", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5994_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5994_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5994_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5994_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1, tcId is 714 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5995 for ECDH, tcId is 715 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5995_peerpubkey[] = { 0xd1, 0xc1, 0xb5, 0x09, 0xc9, 0xdd, 0xb7, 0x62, 0x21, 0xa0, 0x66, 0xa2, 0x2a, 0x3c, 0x33, 0x3f, 0xee, 0x5e, 0x1d, 0x2d, 0x1a, 0x4b, 0xab, 0xde, 0x4a, 0x1d, 0x33, 0xec, 0x24, 0x7a, 0x7e, 0xa3, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_5995_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5995_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5995_sharedsecret[] = { 0x07, 0x25, 0x72, 0x45, 0xda, 0x4b, 0xc2, 0x66, 0x96, 0xe2, 0x45, 0x53, 0x1c, 0x7a, 0x97, 0xc2, 0xb5, 0x29, 0xf1, 0xca, 0x2d, 0x8c, 0x05, 0x16, 0x26, 0x52, 0x0e, 0x6b, 0x83, 0xd7, 0xfa, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_5995 = { .name = "ecdh_secp256k1_5995", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5995_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5995_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5995_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5995_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 715 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5996 for ECDH, tcId is 716 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5996_peerpubkey[] = { 0x75, 0x5d, 0x88, 0x45, 0xe7, 0xb4, 0xfd, 0x27, 0x03, 0x53, 0xf6, 0x99, 0x9e, 0x97, 0x24, 0x22, 0x24, 0x01, 0x55, 0x27, 0xbf, 0x3f, 0x94, 0xcc, 0x2c, 0x69, 0x3d, 0x1b, 0x6b, 0xa1, 0x22, 0x98, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_5996_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5996_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5996_sharedsecret[] = { 0xd6, 0xaa, 0x40, 0x1b, 0x9c, 0xe1, 0x7e, 0xcf, 0x7d, 0xd7, 0xb0, 0x86, 0x1d, 0xfe, 0xb3, 0x6b, 0xb1, 0x74, 0x9d, 0x12, 0x53, 0x39, 0x91, 0xe6, 0x6c, 0x0d, 0x94, 0x22, 0x81, 0xae, 0x13, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_5996 = { .name = "ecdh_secp256k1_5996", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5996_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5996_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5996_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5996_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 716 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5997 for ECDH, tcId is 717 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5997_peerpubkey[] = { 0xc6, 0xf9, 0xfc, 0x86, 0x44, 0xba, 0x5c, 0x9e, 0xa9, 0xbe, 0xb1, 0x2c, 0xe2, 0xcb, 0x91, 0x1c, 0x54, 0x87, 0xe8, 0xb1, 0xbe, 0x91, 0xd5, 0xa1, 0x68, 0x31, 0x8f, 0x4a, 0xe4, 0x4d, 0x66, 0x80, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_5997_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5997_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5997_sharedsecret[] = { 0xf4, 0x3b, 0xfe, 0x4e, 0xcc, 0xc2, 0x4e, 0xbf, 0x6e, 0x36, 0xc5, 0xbc, 0xac, 0xa4, 0x7b, 0x77, 0x0c, 0x17, 0xbc, 0xb5, 0x9e, 0xa7, 0x88, 0xb1, 0x5c, 0x74, 0xae, 0x6c, 0x9d, 0xd0, 0x55, 0xa1, }; static const wycheproof_ecdh_test ecdh_secp256k1_5997 = { .name = "ecdh_secp256k1_5997", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5997_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5997_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5997_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5997_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 717 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5998 for ECDH, tcId is 718 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5998_peerpubkey[] = { 0xd3, 0x17, 0x9f, 0xce, 0x57, 0x81, 0xd0, 0xc4, 0x9c, 0xe8, 0x48, 0x0a, 0x81, 0x1f, 0x6f, 0x08, 0xe3, 0xf1, 0x23, 0xd9, 0xf6, 0x01, 0x0f, 0xbf, 0x61, 0x9b, 0x5d, 0x86, 0x8a, 0x8e, 0xa8, 0x33, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_5998_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5998_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5998_sharedsecret[] = { 0x00, 0x9b, 0xc3, 0xab, 0xb3, 0xcf, 0x0a, 0xca, 0x21, 0x4f, 0x0e, 0x8d, 0xb5, 0x08, 0x8d, 0x52, 0x0b, 0x3d, 0x4a, 0xad, 0xb1, 0xd4, 0x4c, 0x4a, 0x2b, 0xe7, 0xf0, 0x31, 0x46, 0x1c, 0x94, 0x20, }; static const wycheproof_ecdh_test ecdh_secp256k1_5998 = { .name = "ecdh_secp256k1_5998", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5998_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5998_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5998_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5998_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 718 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 5999 for ECDH, tcId is 719 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_5999_peerpubkey[] = { 0x9e, 0x09, 0x80, 0x95, 0x46, 0x3c, 0x91, 0xac, 0x71, 0x07, 0xa9, 0x20, 0xcc, 0xb2, 0x76, 0xd4, 0x5e, 0x1f, 0x72, 0x40, 0xef, 0x2b, 0x93, 0xb9, 0x57, 0xee, 0x09, 0x39, 0x3d, 0x32, 0xe0, 0x01, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_5999_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_5999_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_5999_sharedsecret[] = { 0x8b, 0xcb, 0x07, 0xa3, 0xd0, 0xfa, 0x82, 0xaf, 0x60, 0xc8, 0x8a, 0x8d, 0x67, 0x81, 0x0e, 0xbc, 0xa0, 0xea, 0x27, 0x54, 0x83, 0x84, 0xe9, 0x6d, 0x34, 0x83, 0x31, 0x02, 0x12, 0x21, 0x93, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_5999 = { .name = "ecdh_secp256k1_5999", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_5999_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_5999_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_5999_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_5999_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 719 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6000 for ECDH, tcId is 720 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6000_peerpubkey[] = { 0xbf, 0x30, 0x34, 0xa9, 0x93, 0x51, 0x82, 0xda, 0x36, 0x25, 0x70, 0x31, 0x50, 0x11, 0x54, 0x4a, 0xc2, 0xce, 0x8a, 0x9c, 0x22, 0x77, 0x7c, 0x2f, 0xc7, 0x67, 0xac, 0x9c, 0x5c, 0x0d, 0xae, 0xeb, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_6000_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6000_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6000_sharedsecret[] = { 0xa0, 0x9d, 0xdc, 0x7c, 0xfe, 0x02, 0x3a, 0xcd, 0x95, 0x71, 0xef, 0x07, 0x54, 0x01, 0x02, 0x89, 0xc8, 0x04, 0x67, 0x8c, 0x04, 0x3f, 0x90, 0x0f, 0x26, 0x91, 0xdd, 0x80, 0x1b, 0x94, 0x2e, 0xd4, }; static const wycheproof_ecdh_test ecdh_secp256k1_6000 = { .name = "ecdh_secp256k1_6000", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6000_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6000_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6000_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6000_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 720 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6001 for ECDH, tcId is 721 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6001_peerpubkey[] = { 0x70, 0x9c, 0x71, 0x79, 0xc2, 0xbb, 0x27, 0xce, 0x39, 0x85, 0xba, 0x42, 0xfe, 0xb8, 0x70, 0xf0, 0x69, 0xda, 0xce, 0xad, 0x92, 0x94, 0xc8, 0x05, 0x57, 0xbe, 0x88, 0x2f, 0xb5, 0x77, 0x90, 0x48, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_6001_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6001_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6001_sharedsecret[] = { 0xda, 0x98, 0x05, 0x4d, 0x51, 0xac, 0x96, 0x15, 0xe9, 0xd4, 0xf5, 0xce, 0xda, 0x1f, 0x1b, 0xad, 0x40, 0x30, 0x2a, 0xc1, 0x16, 0x03, 0x43, 0x1e, 0xfe, 0xc1, 0x3a, 0xb5, 0x0e, 0x32, 0xfc, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_6001 = { .name = "ecdh_secp256k1_6001", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6001_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6001_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6001_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6001_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 721 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6002 for ECDH, tcId is 722 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6002_peerpubkey[] = { 0x26, 0x4c, 0x00, 0xa2, 0xd9, 0x25, 0x14, 0xa6, 0xdb, 0xe6, 0x55, 0xde, 0x3c, 0x71, 0xa5, 0x74, 0x0c, 0xec, 0x4f, 0xcb, 0x25, 0x1a, 0xa4, 0x8c, 0xa6, 0x74, 0x5d, 0xbe, 0xa6, 0xf5, 0xf7, 0xcf, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_6002_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6002_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6002_sharedsecret[] = { 0xd6, 0x07, 0x95, 0xd8, 0xf3, 0x10, 0xb1, 0x55, 0x72, 0x65, 0x34, 0xb8, 0xbe, 0x3d, 0x0b, 0x8a, 0x7b, 0xc2, 0xce, 0xd4, 0x68, 0xc6, 0xe6, 0x4c, 0x8b, 0x9a, 0xe0, 0x87, 0xb3, 0x3e, 0xe0, 0x0b, }; static const wycheproof_ecdh_test ecdh_secp256k1_6002 = { .name = "ecdh_secp256k1_6002", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6002_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6002_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6002_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6002_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 722 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6003 for ECDH, tcId is 723 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6003_peerpubkey[] = { 0xa1, 0x21, 0x24, 0x60, 0x6b, 0xcb, 0xbb, 0x33, 0xce, 0xce, 0xc7, 0xfc, 0x8d, 0x78, 0xb3, 0x89, 0x71, 0x92, 0xca, 0x85, 0x15, 0x60, 0xc5, 0x39, 0xe4, 0x7d, 0xd2, 0x76, 0xc6, 0x3b, 0xd3, 0xc2, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_6003_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6003_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6003_sharedsecret[] = { 0x67, 0x5f, 0xef, 0x8f, 0x56, 0x80, 0xbf, 0x76, 0x22, 0x0e, 0x91, 0x36, 0x26, 0x13, 0x94, 0x40, 0x99, 0x04, 0x6b, 0x0b, 0xa0, 0x7e, 0x58, 0x24, 0xe9, 0x3f, 0x3e, 0x3c, 0xc2, 0xcc, 0x27, 0x58, }; static const wycheproof_ecdh_test ecdh_secp256k1_6003 = { .name = "ecdh_secp256k1_6003", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6003_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6003_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6003_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6003_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 723 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6004 for ECDH, tcId is 724 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6004_peerpubkey[] = { 0x24, 0x4b, 0x7a, 0xfe, 0x7f, 0x31, 0x28, 0x9f, 0x9d, 0x6a, 0xae, 0xb7, 0xf7, 0x0d, 0x29, 0xa7, 0xb4, 0x9a, 0x22, 0x8c, 0x7b, 0xb2, 0x02, 0x76, 0x4a, 0xba, 0x94, 0xda, 0xaa, 0xa3, 0x33, 0x22, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_6004_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6004_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6004_sharedsecret[] = { 0x76, 0xb4, 0x39, 0xf8, 0xea, 0x7b, 0x42, 0xf1, 0x1c, 0xd5, 0x9e, 0x6d, 0x91, 0xb2, 0xd2, 0xa7, 0x25, 0x77, 0xc1, 0x85, 0x38, 0x6b, 0x6a, 0xf6, 0x63, 0x9b, 0xe8, 0xe3, 0x86, 0x4a, 0x7f, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_6004 = { .name = "ecdh_secp256k1_6004", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6004_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6004_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6004_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6004_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 724 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6005 for ECDH, tcId is 725 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6005_peerpubkey[] = { 0x2a, 0xc2, 0x9d, 0xb2, 0xeb, 0xc4, 0xfa, 0x94, 0x73, 0xb4, 0x2b, 0xd3, 0x35, 0xa6, 0x02, 0x26, 0x57, 0x9c, 0xc1, 0x86, 0xb2, 0xc6, 0x76, 0xa3, 0xb0, 0x1b, 0xc6, 0x0e, 0x58, 0x96, 0x16, 0x16, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_6005_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6005_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6005_sharedsecret[] = { 0x56, 0xe6, 0x3f, 0xa7, 0x88, 0x12, 0x1d, 0x5e, 0xfa, 0x0c, 0xe3, 0xca, 0xf4, 0x60, 0x5a, 0xf1, 0x8d, 0x48, 0xc6, 0x31, 0x49, 0x6c, 0xdf, 0xa8, 0x62, 0xc4, 0x3e, 0xcf, 0x5e, 0x5f, 0xc1, 0x27, }; static const wycheproof_ecdh_test ecdh_secp256k1_6005 = { .name = "ecdh_secp256k1_6005", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6005_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6005_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6005_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6005_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 725 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6006 for ECDH, tcId is 726 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6006_peerpubkey[] = { 0xe6, 0x2a, 0xee, 0x52, 0x05, 0xa8, 0x06, 0x3e, 0x3a, 0xe4, 0x01, 0xd5, 0x3e, 0x93, 0x43, 0x00, 0x1e, 0x55, 0xeb, 0x5f, 0x4e, 0x4d, 0x6b, 0x70, 0xe2, 0xb8, 0x41, 0x59, 0xcf, 0x31, 0x57, 0xe6, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_6006_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6006_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6006_sharedsecret[] = { 0xcf, 0xf3, 0xb5, 0xe1, 0x9e, 0xd6, 0x7e, 0x51, 0x11, 0xdd, 0x76, 0xe3, 0x10, 0xa1, 0xf1, 0x1d, 0x7f, 0x99, 0xa9, 0x3f, 0xbe, 0x9c, 0xc5, 0xc6, 0xf3, 0x38, 0x40, 0x86, 0xca, 0xcd, 0x11, 0x42, }; static const wycheproof_ecdh_test ecdh_secp256k1_6006 = { .name = "ecdh_secp256k1_6006", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6006_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6006_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6006_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6006_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 726 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6007 for ECDH, tcId is 727 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6007_peerpubkey[] = { 0x31, 0xdc, 0xe6, 0xde, 0x74, 0x1f, 0x10, 0x26, 0x7f, 0x2e, 0x8f, 0x3d, 0x57, 0x2a, 0x4f, 0x49, 0xbe, 0x5f, 0xe5, 0x2f, 0xf7, 0xbf, 0xf3, 0xc3, 0xb4, 0x64, 0x6f, 0x38, 0x07, 0x6c, 0x06, 0x75, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_6007_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6007_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6007_sharedsecret[] = { 0xe2, 0x94, 0x83, 0x88, 0x4a, 0x74, 0xfb, 0x84, 0xf4, 0x60, 0x16, 0x54, 0x88, 0x5a, 0x0f, 0x57, 0x46, 0x91, 0x39, 0x4f, 0x06, 0x4e, 0xa6, 0x93, 0x7a, 0x84, 0x61, 0x75, 0xef, 0x08, 0x1f, 0xc5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6007 = { .name = "ecdh_secp256k1_6007", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6007_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6007_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6007_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6007_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 727 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6008 for ECDH, tcId is 728 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6008_peerpubkey[] = { 0x65, 0x18, 0xcd, 0x66, 0xb1, 0xd8, 0x41, 0xe6, 0x89, 0xd5, 0xdc, 0x66, 0x74, 0xc7, 0xcc, 0x7d, 0x96, 0x45, 0x74, 0xd1, 0x49, 0x0f, 0xff, 0x79, 0x06, 0xbd, 0x37, 0x34, 0x94, 0x79, 0x15, 0x99, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_6008_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6008_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6008_sharedsecret[] = { 0x9c, 0x6a, 0x4b, 0xcb, 0x2f, 0xc0, 0x86, 0xac, 0xa8, 0x72, 0x6d, 0x85, 0x0f, 0xa7, 0x99, 0x20, 0x21, 0x4a, 0xf4, 0xc1, 0x51, 0xac, 0xea, 0x0f, 0xcf, 0x12, 0xa7, 0x69, 0xad, 0x1f, 0x35, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_6008 = { .name = "ecdh_secp256k1_6008", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6008_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6008_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6008_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6008_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 728 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6009 for ECDH, tcId is 729 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6009_peerpubkey[] = { 0x95, 0x2a, 0x88, 0xce, 0x31, 0xad, 0x4c, 0xb0, 0x86, 0x97, 0x8e, 0x6c, 0x56, 0x21, 0xc3, 0xd8, 0x02, 0x3b, 0x2c, 0x11, 0x41, 0x8d, 0x6f, 0xd0, 0xdc, 0xef, 0x8d, 0xe7, 0x21, 0x23, 0xef, 0xc1, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_6009_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6009_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6009_sharedsecret[] = { 0x34, 0xb7, 0xab, 0xc3, 0xf3, 0xe3, 0x6e, 0x37, 0xe2, 0xd5, 0x72, 0x8a, 0x87, 0x0a, 0x29, 0x3a, 0x16, 0x40, 0x31, 0x46, 0xca, 0x67, 0xff, 0x91, 0xcb, 0xab, 0xee, 0xe2, 0xbb, 0x2e, 0x03, 0x8b, }; static const wycheproof_ecdh_test ecdh_secp256k1_6009 = { .name = "ecdh_secp256k1_6009", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6009_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6009_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6009_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6009_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 729 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6010 for ECDH, tcId is 730 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6010_peerpubkey[] = { 0x2a, 0x43, 0xf3, 0x35, 0x73, 0xb6, 0x19, 0x71, 0x90, 0x99, 0xcf, 0x54, 0xf6, 0xcc, 0xcb, 0x28, 0xd1, 0x6d, 0xf3, 0x99, 0x22, 0x39, 0xfa, 0xdf, 0x79, 0xc7, 0xac, 0xb9, 0xc6, 0x4f, 0x7a, 0xf0, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_6010_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6010_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6010_sharedsecret[] = { 0x9b, 0xd1, 0x28, 0x4f, 0x1b, 0xcb, 0x19, 0x34, 0xd4, 0x83, 0x83, 0x4c, 0xae, 0x41, 0xa7, 0x7d, 0xb2, 0x8c, 0xd9, 0x55, 0x38, 0x69, 0x38, 0x47, 0x55, 0xb6, 0x98, 0x3f, 0x4f, 0x38, 0x48, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_6010 = { .name = "ecdh_secp256k1_6010", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6010_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6010_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6010_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6010_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 730 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6011 for ECDH, tcId is 731 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6011_peerpubkey[] = { 0x1b, 0x1b, 0x0c, 0x75, 0x40, 0x87, 0x85, 0xe8, 0x47, 0x27, 0xb0, 0xe5, 0x5e, 0x4b, 0xa2, 0x0d, 0x0f, 0x25, 0x99, 0xc4, 0xed, 0x08, 0x48, 0x2d, 0xc1, 0xf3, 0xb5, 0xdf, 0x54, 0x56, 0x91, 0x38, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_6011_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6011_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6011_sharedsecret[] = { 0x16, 0x7e, 0x3d, 0xb6, 0xa9, 0x12, 0xac, 0x61, 0x17, 0x64, 0x45, 0x25, 0x91, 0x1f, 0xc8, 0x87, 0x2e, 0xd3, 0x3b, 0x8e, 0x0b, 0xbd, 0x50, 0x07, 0x3d, 0xd3, 0xc1, 0x7a, 0x74, 0x4e, 0x61, 0xe0, }; static const wycheproof_ecdh_test ecdh_secp256k1_6011 = { .name = "ecdh_secp256k1_6011", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6011_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6011_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6011_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6011_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 731 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6012 for ECDH, tcId is 732 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6012_peerpubkey[] = { 0x4d, 0xd1, 0x28, 0x3b, 0xcc, 0xd3, 0x6c, 0xc3, 0x40, 0x2f, 0x3a, 0x81, 0xe2, 0xe9, 0xb0, 0xd6, 0xa2, 0xb2, 0xb1, 0xde, 0xbb, 0xbd, 0x44, 0xff, 0xc1, 0xf1, 0x79, 0xbd, 0x49, 0xcf, 0x0a, 0x7e, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_6012_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6012_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6012_sharedsecret[] = { 0x7c, 0x30, 0x20, 0xe2, 0x79, 0xcb, 0x5a, 0xf1, 0x41, 0x84, 0xb4, 0x65, 0x3c, 0xc8, 0x7c, 0x1d, 0xdd, 0x7f, 0x49, 0xcd, 0x31, 0xcd, 0x37, 0x1a, 0xe8, 0x13, 0x68, 0x1d, 0xd6, 0x61, 0x7d, 0x0e, }; static const wycheproof_ecdh_test ecdh_secp256k1_6012 = { .name = "ecdh_secp256k1_6012", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6012_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6012_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6012_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6012_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 732 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6013 for ECDH, tcId is 733 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6013_peerpubkey[] = { 0xa4, 0x99, 0xdb, 0xf7, 0x32, 0xe4, 0x38, 0xbe, 0x0e, 0xb0, 0x84, 0xb9, 0xe6, 0xad, 0x87, 0x9d, 0xd7, 0xa2, 0x90, 0x4b, 0xbb, 0x00, 0x4b, 0x40, 0x02, 0x79, 0x69, 0xa1, 0x71, 0xf2, 0xd4, 0x26, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_6013_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6013_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6013_sharedsecret[] = { 0xac, 0xfd, 0xff, 0x56, 0x6b, 0x8b, 0x55, 0x31, 0x88, 0x69, 0xfa, 0x64, 0x6f, 0x78, 0x9f, 0x80, 0x36, 0xd4, 0x0b, 0x90, 0xf0, 0xfc, 0x52, 0x0a, 0xe2, 0xa5, 0xa2, 0x75, 0x44, 0xf9, 0x62, 0xc0, }; static const wycheproof_ecdh_test ecdh_secp256k1_6013 = { .name = "ecdh_secp256k1_6013", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6013_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6013_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6013_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6013_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 733 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6014 for ECDH, tcId is 734 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6014_peerpubkey[] = { 0xad, 0xcf, 0x0f, 0xfb, 0xa9, 0xcb, 0x6e, 0xf0, 0xc8, 0x03, 0x1c, 0x42, 0x91, 0xa4, 0x34, 0xb1, 0x8d, 0x78, 0xf4, 0x2e, 0x45, 0xe6, 0x2b, 0xa0, 0x1f, 0xbe, 0x91, 0xf9, 0x27, 0x3f, 0x0a, 0xd1, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_6014_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6014_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6014_sharedsecret[] = { 0x5c, 0x6b, 0x01, 0xcf, 0xf4, 0xe6, 0xce, 0x81, 0xa6, 0x30, 0x23, 0x8b, 0x5d, 0xb3, 0x66, 0x2e, 0x77, 0xfb, 0x88, 0xbf, 0xfd, 0xde, 0x61, 0x44, 0x3a, 0x7d, 0x85, 0x54, 0xba, 0x00, 0x1e, 0xf2, }; static const wycheproof_ecdh_test ecdh_secp256k1_6014 = { .name = "ecdh_secp256k1_6014", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6014_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6014_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6014_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6014_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 734 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6015 for ECDH, tcId is 735 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6015_peerpubkey[] = { 0x21, 0x71, 0x27, 0x25, 0xd9, 0x80, 0x6a, 0xcf, 0x54, 0xd3, 0xa6, 0xc8, 0x2b, 0xf9, 0x3c, 0x0f, 0xe2, 0x49, 0x26, 0x8c, 0xa9, 0xf4, 0x2e, 0xce, 0xac, 0x19, 0xe9, 0x3a, 0x5e, 0xab, 0x80, 0x56, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_6015_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6015_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6015_sharedsecret[] = { 0xe7, 0x28, 0x1d, 0x12, 0xb7, 0x4b, 0x06, 0xee, 0xcb, 0x27, 0x3e, 0xc3, 0xe0, 0xd8, 0xfe, 0x66, 0x3e, 0x9e, 0xc1, 0xd5, 0xa5, 0x0c, 0x2b, 0x6c, 0x68, 0xec, 0x8b, 0x36, 0x93, 0xf2, 0x3c, 0x4c, }; static const wycheproof_ecdh_test ecdh_secp256k1_6015 = { .name = "ecdh_secp256k1_6015", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6015_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6015_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6015_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6015_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 735 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6016 for ECDH, tcId is 736 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6016_peerpubkey[] = { 0x1e, 0x02, 0x17, 0x68, 0x24, 0xbd, 0x31, 0xea, 0xbd, 0xce, 0x03, 0xa9, 0x40, 0x3c, 0x7d, 0x3c, 0x2a, 0xc6, 0x31, 0xf9, 0xb0, 0xe8, 0x8d, 0x9a, 0x92, 0x47, 0x01, 0xc1, 0xb2, 0xf2, 0x9b, 0x85, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_6016_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6016_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6016_sharedsecret[] = { 0x80, 0x64, 0x3e, 0xd8, 0xb9, 0x05, 0x2a, 0x2e, 0x74, 0x6a, 0x26, 0xd9, 0x17, 0x8f, 0xe2, 0xcc, 0xff, 0x35, 0xed, 0xbb, 0x81, 0xf6, 0x0c, 0xd7, 0x80, 0x04, 0xfb, 0x8d, 0x5f, 0x14, 0x3a, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_6016 = { .name = "ecdh_secp256k1_6016", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6016_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6016_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6016_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6016_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 736 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6017 for ECDH, tcId is 737 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6017_peerpubkey[] = { 0x63, 0xe7, 0xa1, 0xaf, 0x36, 0xd6, 0xb5, 0x40, 0xa4, 0x92, 0x76, 0xaa, 0xc3, 0xfe, 0xc9, 0xcb, 0x45, 0xed, 0x6b, 0xab, 0x16, 0x7c, 0x06, 0xb0, 0x41, 0x9a, 0x77, 0xb9, 0x13, 0x99, 0xf6, 0x18, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_6017_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6017_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6017_sharedsecret[] = { 0x75, 0x87, 0x3a, 0xc5, 0x44, 0xad, 0x69, 0xd3, 0xdd, 0xc5, 0xc9, 0xcf, 0xfe, 0x38, 0x4d, 0x27, 0x5e, 0x9d, 0xa2, 0x94, 0x9d, 0x69, 0x82, 0xda, 0x4b, 0x99, 0x0f, 0x8b, 0xf2, 0xb7, 0x64, 0x74, }; static const wycheproof_ecdh_test ecdh_secp256k1_6017 = { .name = "ecdh_secp256k1_6017", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6017_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6017_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6017_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6017_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 737 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6018 for ECDH, tcId is 738 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6018_peerpubkey[] = { 0x1e, 0x26, 0x5a, 0xb5, 0xb7, 0xf7, 0x19, 0x94, 0x70, 0xe5, 0x32, 0x65, 0x3d, 0x2a, 0x7b, 0x9a, 0x8b, 0x72, 0x89, 0x70, 0xb8, 0x38, 0x13, 0x7c, 0x96, 0x92, 0xed, 0x06, 0x92, 0x89, 0x7b, 0x2a, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_6018_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6018_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6018_sharedsecret[] = { 0x35, 0x5c, 0x9f, 0xac, 0xa2, 0x9c, 0xf7, 0xcc, 0x96, 0x88, 0x53, 0xee, 0x29, 0xff, 0xe6, 0x2d, 0x11, 0x27, 0xfc, 0xc1, 0xdc, 0x57, 0xe9, 0xdd, 0xaf, 0x0e, 0x0f, 0x44, 0x71, 0x46, 0x06, 0x4e, }; static const wycheproof_ecdh_test ecdh_secp256k1_6018 = { .name = "ecdh_secp256k1_6018", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6018_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6018_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6018_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6018_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 738 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6019 for ECDH, tcId is 739 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6019_peerpubkey[] = { 0x54, 0xd2, 0xa4, 0x39, 0x4c, 0x10, 0x9f, 0xcb, 0xd3, 0xcb, 0x98, 0x86, 0xfe, 0xc3, 0xad, 0xd5, 0x1b, 0xa4, 0xd2, 0xe4, 0x4e, 0x1d, 0x56, 0x76, 0xe4, 0xb9, 0x8f, 0x0c, 0x13, 0x65, 0x5f, 0xc5, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_6019_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6019_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6019_sharedsecret[] = { 0xfc, 0x17, 0x5a, 0x5e, 0xf1, 0x85, 0x95, 0xb6, 0x9e, 0x45, 0xbe, 0x2c, 0xda, 0x8a, 0xe0, 0x0d, 0x9c, 0x8b, 0xdb, 0xef, 0xbc, 0xf7, 0xf6, 0x92, 0xf9, 0x1c, 0xef, 0xdc, 0x56, 0x0e, 0x47, 0x22, }; static const wycheproof_ecdh_test ecdh_secp256k1_6019 = { .name = "ecdh_secp256k1_6019", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6019_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6019_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6019_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6019_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 739 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6020 for ECDH, tcId is 740 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6020_peerpubkey[] = { 0x93, 0xf1, 0x45, 0x92, 0x07, 0xfb, 0x09, 0xc6, 0xf0, 0xa8, 0x8c, 0x39, 0x8a, 0xc8, 0x0d, 0x10, 0x52, 0xa4, 0xcd, 0x33, 0xe7, 0xee, 0xf5, 0x68, 0x7d, 0xa9, 0x9a, 0xb9, 0x7c, 0x60, 0x24, 0xb7, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_6020_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6020_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6020_sharedsecret[] = { 0x46, 0x55, 0x91, 0x46, 0xa9, 0x3a, 0xae, 0x90, 0x4d, 0xbc, 0xaa, 0xaa, 0x07, 0xe6, 0xcd, 0x1b, 0xb4, 0x50, 0xf1, 0xb3, 0x7c, 0x83, 0x92, 0x9a, 0x99, 0x4b, 0x45, 0x79, 0x23, 0x33, 0xd5, 0xf6, }; static const wycheproof_ecdh_test ecdh_secp256k1_6020 = { .name = "ecdh_secp256k1_6020", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6020_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6020_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6020_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6020_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 740 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6021 for ECDH, tcId is 741 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6021_peerpubkey[] = { 0x1f, 0xa0, 0x49, 0xa1, 0x89, 0x2b, 0x67, 0x98, 0x57, 0xc6, 0xdf, 0xf0, 0x8a, 0xf1, 0x9d, 0xb7, 0x0c, 0xbc, 0x99, 0xb6, 0xf2, 0xd7, 0xbc, 0x51, 0xa3, 0x41, 0xfe, 0x79, 0xd1, 0x64, 0x7f, 0x4a, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_6021_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6021_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6021_sharedsecret[] = { 0xc6, 0x4b, 0x07, 0x11, 0x90, 0x54, 0xa3, 0x79, 0x61, 0xc0, 0xa1, 0x77, 0x15, 0x82, 0x56, 0x08, 0x1b, 0x38, 0xb0, 0x08, 0x7b, 0x30, 0x7e, 0x0c, 0xad, 0x7e, 0x30, 0xd7, 0x90, 0xce, 0xb0, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_6021 = { .name = "ecdh_secp256k1_6021", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6021_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6021_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6021_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6021_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 741 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6022 for ECDH, tcId is 742 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6022_peerpubkey[] = { 0x84, 0xe0, 0xb1, 0x92, 0xd6, 0x0a, 0xbf, 0x53, 0x1e, 0x82, 0x8e, 0x88, 0x7d, 0x36, 0x6d, 0x86, 0x9e, 0x10, 0x33, 0xa1, 0x6e, 0x9c, 0x7f, 0x11, 0x67, 0x45, 0x8c, 0x81, 0x34, 0xc1, 0x0f, 0xba, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_6022_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6022_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6022_sharedsecret[] = { 0xbe, 0xa8, 0xcf, 0xc0, 0xbe, 0xe8, 0x57, 0x1c, 0xcf, 0x0c, 0x52, 0x56, 0x54, 0xef, 0x26, 0xd1, 0xfc, 0x78, 0x2b, 0xb2, 0x2d, 0xec, 0xcf, 0x67, 0xea, 0x4e, 0xa0, 0x80, 0x3d, 0xc1, 0x5d, 0xaf, }; static const wycheproof_ecdh_test ecdh_secp256k1_6022 = { .name = "ecdh_secp256k1_6022", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6022_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6022_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6022_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6022_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 742 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6023 for ECDH, tcId is 743 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6023_peerpubkey[] = { 0x2f, 0x97, 0x07, 0xc6, 0x71, 0x18, 0x72, 0x41, 0x11, 0xef, 0xbb, 0xbb, 0xf0, 0x6b, 0x62, 0x3a, 0xb2, 0xff, 0xd9, 0x25, 0x9d, 0xdc, 0x35, 0x4f, 0xca, 0xaf, 0x81, 0xba, 0x01, 0xf6, 0xfa, 0x7b, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_6023_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6023_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6023_sharedsecret[] = { 0x60, 0x45, 0x1d, 0xa4, 0xad, 0xfe, 0x5b, 0xb3, 0x93, 0x10, 0x90, 0x69, 0xef, 0xdc, 0x84, 0x41, 0x5e, 0xc8, 0xa2, 0xc4, 0x29, 0x95, 0x5c, 0xbf, 0x22, 0xa4, 0x34, 0x0f, 0x8f, 0xc4, 0x89, 0x36, }; static const wycheproof_ecdh_test ecdh_secp256k1_6023 = { .name = "ecdh_secp256k1_6023", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6023_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6023_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6023_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6023_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 743 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6024 for ECDH, tcId is 744 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6024_peerpubkey[] = { 0xac, 0x1f, 0xbb, 0xe4, 0x22, 0x93, 0xa9, 0xf9, 0xae, 0x10, 0x4e, 0xe2, 0xda, 0x0b, 0x0a, 0x9b, 0x34, 0x64, 0xd5, 0xd8, 0xb1, 0xe8, 0x54, 0xdf, 0x19, 0xd3, 0xc4, 0x45, 0x6a, 0xf8, 0xf9, 0xa6, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_6024_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6024_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6024_sharedsecret[] = { 0xd6, 0x8e, 0x74, 0x6f, 0x3d, 0x43, 0xfe, 0xac, 0x5f, 0xd4, 0x89, 0x8d, 0xe9, 0x43, 0xdc, 0x38, 0x20, 0x5a, 0xf7, 0xe2, 0x63, 0x1e, 0xd7, 0x32, 0x07, 0x9b, 0xbf, 0xc8, 0xab, 0x52, 0x51, 0x1c, }; static const wycheproof_ecdh_test ecdh_secp256k1_6024 = { .name = "ecdh_secp256k1_6024", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6024_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6024_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6024_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6024_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 744 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6025 for ECDH, tcId is 745 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6025_peerpubkey[] = { 0xba, 0xe1, 0x0c, 0xf9, 0x3f, 0xf7, 0xb7, 0x2d, 0x6e, 0xd9, 0x85, 0x19, 0x60, 0x2e, 0x9f, 0x03, 0xaa, 0x40, 0x30, 0x3f, 0xa0, 0x67, 0x4f, 0xb3, 0xdd, 0xee, 0x7d, 0x2d, 0xb1, 0xc9, 0x2b, 0xb2, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_6025_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6025_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6025_sharedsecret[] = { 0x28, 0xda, 0xea, 0xad, 0xc6, 0x09, 0x38, 0x6d, 0x77, 0x0d, 0xff, 0x4c, 0x71, 0x20, 0xb2, 0xa8, 0x7c, 0xab, 0x3e, 0x21, 0xfd, 0xb8, 0xa6, 0xe4, 0xdc, 0x12, 0x40, 0xa5, 0x1d, 0x12, 0xe5, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_6025 = { .name = "ecdh_secp256k1_6025", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6025_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6025_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6025_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6025_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 745 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6026 for ECDH, tcId is 746 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6026_peerpubkey[] = { 0xed, 0xb4, 0x28, 0x8c, 0xf5, 0x56, 0x76, 0x73, 0xd5, 0x0a, 0x1c, 0xd9, 0xe6, 0xbe, 0xa4, 0x53, 0x17, 0x82, 0x3f, 0x30, 0x38, 0x3f, 0x60, 0xd9, 0xbc, 0x3b, 0x9e, 0xe4, 0x2a, 0xc2, 0x98, 0x71, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_6026_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6026_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6026_sharedsecret[] = { 0xbb, 0x41, 0x10, 0xb7, 0x34, 0xc8, 0xef, 0x8a, 0x08, 0xbb, 0x60, 0x11, 0xac, 0xb3, 0x5c, 0xbd, 0xa9, 0xae, 0x8e, 0x2e, 0xf6, 0xc4, 0xd0, 0x86, 0x25, 0x76, 0xa6, 0x87, 0x92, 0x66, 0x7b, 0xb9, }; static const wycheproof_ecdh_test ecdh_secp256k1_6026 = { .name = "ecdh_secp256k1_6026", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6026_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6026_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6026_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6026_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 746 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6027 for ECDH, tcId is 747 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6027_peerpubkey[] = { 0x13, 0x23, 0x3e, 0x80, 0xf5, 0x9a, 0xc2, 0xb5, 0x97, 0x37, 0xe8, 0x78, 0x77, 0x78, 0x2a, 0xb3, 0x02, 0x7c, 0x49, 0x0d, 0xf8, 0xac, 0x0b, 0xf3, 0xf3, 0xef, 0x16, 0x33, 0x87, 0x2e, 0xec, 0x54, 0x01, 0x62, 0xf9, 0x54, 0x53, 0x4e, 0xad, 0xb1, 0xb4, 0xea, 0x95, 0xc5, 0x7d, 0x40, 0xa1, 0x02, 0x14, 0xe5, 0xb7, 0x46, 0xee, 0x6a, 0xa4, 0x19, 0x4e, 0xd2, 0xb2, 0x01, 0x2b, 0x72, 0xf9, 0x7d, }; static const unsigned char ecdh_secp256k1_6027_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6027_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6027_sharedsecret[] = { 0xe2, 0x5c, 0x50, 0x03, 0x7c, 0xa1, 0x91, 0x38, 0x51, 0xb9, 0x75, 0x87, 0x52, 0x65, 0x9f, 0xb6, 0x1c, 0x02, 0xd2, 0xa7, 0xc6, 0xb6, 0xaa, 0xe2, 0x9b, 0xda, 0x30, 0x19, 0x07, 0xd9, 0x9f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6027 = { .name = "ecdh_secp256k1_6027", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6027_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6027_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6027_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6027_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 747 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6028 for ECDH, tcId is 748 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6028_peerpubkey[] = { 0x3c, 0xd1, 0x4f, 0x7e, 0x4b, 0x77, 0x96, 0x15, 0xbc, 0x7c, 0xce, 0xe4, 0x7e, 0x7f, 0x2b, 0x07, 0x39, 0x4b, 0xf8, 0xf9, 0x85, 0x03, 0x26, 0x34, 0x11, 0xa5, 0x49, 0x26, 0x4a, 0x8f, 0xcf, 0x19, 0x60, 0x4f, 0x81, 0x74, 0xe3, 0x60, 0x5b, 0x8f, 0x18, 0xbe, 0xd3, 0x74, 0x2b, 0x68, 0x71, 0xa8, 0xcf, 0xfc, 0xe0, 0x06, 0xdb, 0x31, 0xb8, 0xd7, 0xd8, 0x36, 0xf5, 0x0c, 0xfc, 0xda, 0x7d, 0x16, }; static const unsigned char ecdh_secp256k1_6028_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6028_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6028_sharedsecret[] = { 0xad, 0x25, 0x9f, 0x01, 0xe9, 0x53, 0x26, 0x3f, 0x40, 0xa3, 0x9b, 0x14, 0xa5, 0x38, 0xd0, 0x76, 0x71, 0x0c, 0x19, 0x20, 0x7a, 0xf9, 0x36, 0xfe, 0xab, 0xdf, 0x03, 0xbd, 0xa7, 0xf0, 0x67, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6028 = { .name = "ecdh_secp256k1_6028", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6028_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6028_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6028_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6028_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 748 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6029 for ECDH, tcId is 749 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6029_peerpubkey[] = { 0x94, 0x6c, 0x27, 0x82, 0x88, 0x61, 0x6a, 0xa3, 0x47, 0x90, 0xca, 0x19, 0x36, 0x86, 0xe7, 0x45, 0xd3, 0xd5, 0x87, 0x02, 0x86, 0x6d, 0xdf, 0x1e, 0x95, 0x55, 0x07, 0x11, 0xa9, 0xbf, 0xbd, 0xb8, 0x7b, 0xc3, 0x37, 0xa1, 0xc8, 0x2e, 0x3c, 0x5f, 0x7a, 0x29, 0x27, 0x98, 0x7b, 0x8f, 0xae, 0x13, 0x62, 0x72, 0x37, 0xd2, 0x20, 0xfa, 0xfb, 0x40, 0x13, 0x12, 0x3b, 0xfb, 0xd9, 0x5f, 0x0b, 0xa5, }; static const unsigned char ecdh_secp256k1_6029_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6029_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6029_sharedsecret[] = { 0x5e, 0xc6, 0x02, 0x5a, 0xc7, 0xb2, 0x5c, 0x0f, 0x09, 0x5f, 0x3f, 0xde, 0xe3, 0xe2, 0xe5, 0x08, 0xbd, 0x14, 0x37, 0xb9, 0x70, 0x5c, 0x25, 0x43, 0xc0, 0xe5, 0xaf, 0x1c, 0x1d, 0x36, 0x3f, 0xfd, }; static const wycheproof_ecdh_test ecdh_secp256k1_6029 = { .name = "ecdh_secp256k1_6029", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6029_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6029_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6029_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6029_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 749 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6030 for ECDH, tcId is 750 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6030_peerpubkey[] = { 0x7f, 0x19, 0x50, 0x35, 0xfe, 0xb2, 0xc0, 0x4a, 0x9b, 0x14, 0x9b, 0xb2, 0xed, 0x3c, 0x5c, 0x45, 0x8e, 0x95, 0xe7, 0xf7, 0xc4, 0x18, 0xc4, 0xa0, 0x7e, 0xa6, 0x10, 0x7e, 0x4e, 0x32, 0x45, 0x5a, 0xdd, 0xf9, 0xa6, 0x66, 0xbf, 0x00, 0x15, 0xb2, 0x0e, 0x49, 0x12, 0xf7, 0x0f, 0x65, 0x5e, 0xf2, 0x1b, 0x82, 0x08, 0x75, 0x96, 0xaa, 0x1e, 0x2f, 0x1e, 0x28, 0x65, 0x35, 0x0d, 0x15, 0x91, 0x85, }; static const unsigned char ecdh_secp256k1_6030_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6030_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6030_sharedsecret[] = { 0xa2, 0xf9, 0x3a, 0x84, 0x57, 0x4a, 0x26, 0xb4, 0x38, 0x80, 0xcd, 0xe6, 0xed, 0x44, 0x0c, 0x7f, 0x7c, 0xc7, 0x2c, 0x92, 0x50, 0x4d, 0x52, 0x71, 0x99, 0x9a, 0x8a, 0x78, 0xff, 0xe3, 0x49, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6030 = { .name = "ecdh_secp256k1_6030", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6030_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6030_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6030_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6030_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 750 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6031 for ECDH, tcId is 751 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6031_peerpubkey[] = { 0x40, 0x85, 0x58, 0x44, 0xe0, 0x43, 0x03, 0x84, 0x3a, 0x24, 0xb0, 0x17, 0x07, 0x54, 0x4d, 0x1b, 0xbf, 0x97, 0x67, 0x32, 0x66, 0xe0, 0x3d, 0x77, 0xfb, 0xf8, 0x0d, 0x8b, 0x64, 0x21, 0x9b, 0xd8, 0x50, 0x3a, 0xf4, 0xa2, 0xe3, 0xb2, 0x62, 0x79, 0x56, 0x4f, 0xed, 0x8e, 0x77, 0x2a, 0x04, 0x3e, 0x75, 0x63, 0x0e, 0x4e, 0x38, 0x59, 0x97, 0x6e, 0xde, 0x88, 0xff, 0xcf, 0x16, 0xf5, 0xca, 0x71, }; static const unsigned char ecdh_secp256k1_6031_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6031_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6031_sharedsecret[] = { 0x8d, 0x0c, 0xdb, 0x49, 0x77, 0xba, 0x76, 0x61, 0xd4, 0x10, 0x36, 0xae, 0xb7, 0xa5, 0xf2, 0xdd, 0x20, 0x77, 0x16, 0xd5, 0xd7, 0x6e, 0xeb, 0x26, 0x62, 0x90, 0x43, 0xc5, 0x59, 0xec, 0x29, 0x00, }; static const wycheproof_ecdh_test ecdh_secp256k1_6031 = { .name = "ecdh_secp256k1_6031", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6031_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6031_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6031_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6031_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 751 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6032 for ECDH, tcId is 752 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6032_peerpubkey[] = { 0x22, 0xcd, 0xb3, 0xee, 0x47, 0xf1, 0x4b, 0x3b, 0x0c, 0x0c, 0x8c, 0x25, 0x6f, 0xb2, 0x2e, 0x79, 0x12, 0x6b, 0x43, 0x6a, 0x2c, 0x9f, 0xf6, 0x35, 0xa6, 0x51, 0x51, 0xa0, 0xf0, 0xff, 0xb1, 0xbf, 0xcf, 0x33, 0x35, 0x62, 0xf3, 0xe0, 0x18, 0x89, 0x23, 0x74, 0x35, 0x36, 0x74, 0xde, 0x84, 0x90, 0xfc, 0x9d, 0x30, 0x42, 0x65, 0x98, 0xeb, 0x60, 0x07, 0x79, 0x15, 0x4b, 0xaf, 0x2a, 0xec, 0x17, }; static const unsigned char ecdh_secp256k1_6032_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6032_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6032_sharedsecret[] = { 0xde, 0xfd, 0xe4, 0xaa, 0x48, 0xf8, 0x9b, 0x03, 0xf6, 0x23, 0xea, 0x1f, 0x94, 0x6f, 0x1a, 0xa9, 0x38, 0xc5, 0xaa, 0xb8, 0x79, 0xca, 0x63, 0x19, 0x59, 0x69, 0x26, 0xf0, 0x85, 0x57, 0x8e, 0xdc, }; static const wycheproof_ecdh_test ecdh_secp256k1_6032 = { .name = "ecdh_secp256k1_6032", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6032_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6032_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6032_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6032_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 752 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6033 for ECDH, tcId is 753 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6033_peerpubkey[] = { 0x2b, 0x7b, 0xec, 0xd7, 0x06, 0x6e, 0x22, 0xf1, 0x21, 0xe7, 0xcf, 0x12, 0x3d, 0x48, 0xc5, 0x44, 0x50, 0x37, 0xc5, 0xa7, 0x56, 0xef, 0x31, 0x4a, 0x66, 0xa7, 0x00, 0x16, 0x36, 0xee, 0x75, 0xcf, 0x1e, 0x6f, 0xe2, 0xc1, 0xa7, 0x15, 0x16, 0x3e, 0xfa, 0xf8, 0x6e, 0xa8, 0xb1, 0xe5, 0x5e, 0xa5, 0x74, 0x2d, 0x6b, 0x04, 0x2e, 0x6c, 0xbf, 0x8a, 0xcc, 0x69, 0xc9, 0x9f, 0x82, 0x71, 0xa9, 0x02, }; static const unsigned char ecdh_secp256k1_6033_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6033_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6033_sharedsecret[] = { 0xaf, 0xe0, 0xbf, 0xed, 0x69, 0xa6, 0x00, 0x16, 0x38, 0x65, 0x40, 0x61, 0x27, 0xa8, 0x97, 0x2b, 0x61, 0x32, 0x32, 0xaa, 0x4c, 0x93, 0x3a, 0x06, 0xb5, 0xa5, 0xb5, 0xbc, 0xff, 0x15, 0x96, 0xf8, }; static const wycheproof_ecdh_test ecdh_secp256k1_6033 = { .name = "ecdh_secp256k1_6033", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6033_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6033_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6033_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6033_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 753 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6034 for ECDH, tcId is 754 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6034_peerpubkey[] = { 0xbb, 0x8d, 0xa4, 0xa7, 0x6e, 0xe3, 0xd1, 0xc4, 0xb3, 0x34, 0x77, 0xbc, 0x86, 0x63, 0xde, 0xf1, 0x67, 0xa1, 0x26, 0xc4, 0x22, 0xad, 0x47, 0xf6, 0xc2, 0xf8, 0xb5, 0x39, 0xc6, 0x80, 0x89, 0x36, 0xc1, 0xd5, 0xee, 0x9f, 0xc3, 0xce, 0x49, 0xfd, 0x45, 0x09, 0xd3, 0x3c, 0x4d, 0xcf, 0xcc, 0x1a, 0x20, 0xa6, 0x60, 0x52, 0x9f, 0xa9, 0xeb, 0xd6, 0xe6, 0xaf, 0xc3, 0xd5, 0xc8, 0x4c, 0x72, 0xbb, }; static const unsigned char ecdh_secp256k1_6034_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6034_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6034_sharedsecret[] = { 0xf4, 0x9b, 0xca, 0x7a, 0x6a, 0x52, 0x56, 0xdd, 0xf7, 0x12, 0x77, 0x59, 0x17, 0xc3, 0x0e, 0x48, 0x73, 0x15, 0x34, 0x69, 0xba, 0xe1, 0x2f, 0xd5, 0xc5, 0x57, 0x10, 0x31, 0xdb, 0x7b, 0x12, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_6034 = { .name = "ecdh_secp256k1_6034", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6034_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6034_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6034_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6034_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 754 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6035 for ECDH, tcId is 755 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6035_peerpubkey[] = { 0x0a, 0x0c, 0x37, 0x66, 0x48, 0x23, 0xa5, 0x00, 0x5d, 0x65, 0x9f, 0x7c, 0x73, 0xc3, 0x9e, 0xa1, 0x72, 0xc8, 0x62, 0x96, 0x9c, 0x81, 0xe4, 0x4f, 0x36, 0xc8, 0x9e, 0x7c, 0x26, 0x5e, 0xc8, 0xa8, 0xf2, 0x0a, 0x0c, 0xa6, 0x18, 0xba, 0x01, 0x31, 0xa2, 0xe3, 0x73, 0xf3, 0x1f, 0x73, 0xb3, 0xf5, 0x5e, 0x91, 0x88, 0xd4, 0x6f, 0xdd, 0xbc, 0x63, 0x87, 0xe3, 0x2a, 0xef, 0xb9, 0xf3, 0xba, 0x12, }; static const unsigned char ecdh_secp256k1_6035_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6035_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6035_sharedsecret[] = { 0x9c, 0x88, 0xb6, 0x11, 0xb7, 0xf9, 0xaa, 0xd3, 0x3f, 0xab, 0xb0, 0x9c, 0xff, 0x61, 0x8b, 0xb1, 0xca, 0x6f, 0xb9, 0x04, 0xa2, 0x89, 0xb1, 0x48, 0x1d, 0xa3, 0xd1, 0xe4, 0xe7, 0x25, 0x89, 0xe4, }; static const wycheproof_ecdh_test ecdh_secp256k1_6035 = { .name = "ecdh_secp256k1_6035", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6035_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6035_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6035_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6035_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 755 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6036 for ECDH, tcId is 756 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6036_peerpubkey[] = { 0x47, 0xc3, 0x3f, 0x6f, 0x78, 0xd3, 0xcd, 0x99, 0x71, 0xec, 0xc5, 0x0e, 0x7e, 0x2a, 0xc9, 0x47, 0xf8, 0xc1, 0x10, 0x3f, 0x9c, 0x5f, 0x08, 0x21, 0x37, 0x9b, 0xd0, 0x6a, 0xd8, 0xfc, 0xa4, 0x56, 0x70, 0xc6, 0x09, 0x75, 0x74, 0x8f, 0x0c, 0x74, 0x9a, 0x8b, 0x0f, 0x8f, 0xc1, 0xe2, 0x22, 0xdd, 0xcb, 0xd3, 0x38, 0x4f, 0x6d, 0x68, 0xf0, 0xb6, 0xb6, 0xff, 0x67, 0x9b, 0x43, 0x5c, 0xdc, 0xb1, }; static const unsigned char ecdh_secp256k1_6036_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6036_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6036_sharedsecret[] = { 0x42, 0xf6, 0x34, 0xc0, 0x6c, 0x4a, 0x0e, 0x7e, 0x95, 0x6d, 0xb6, 0xe8, 0x66, 0x66, 0x60, 0x3d, 0x26, 0x37, 0x4c, 0xc7, 0x4b, 0x11, 0x02, 0x6f, 0x03, 0x18, 0xd1, 0xa2, 0x56, 0x81, 0xa7, 0x12, }; static const wycheproof_ecdh_test ecdh_secp256k1_6036 = { .name = "ecdh_secp256k1_6036", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6036_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6036_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6036_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6036_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 756 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6037 for ECDH, tcId is 757 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6037_peerpubkey[] = { 0xb5, 0x9d, 0x18, 0xab, 0x8b, 0x0f, 0x9d, 0xd3, 0x34, 0x84, 0xf4, 0x3c, 0x3f, 0x68, 0x60, 0x22, 0x9b, 0xa6, 0xa4, 0xc2, 0x5a, 0x61, 0xcd, 0x0a, 0xac, 0xa2, 0x3b, 0x76, 0xd6, 0x05, 0x66, 0xcf, 0x5a, 0xa9, 0xc0, 0xd1, 0xb2, 0x40, 0xe6, 0xdd, 0x42, 0x11, 0xe3, 0x23, 0x54, 0x25, 0x63, 0x4b, 0x27, 0x8a, 0xd8, 0x8f, 0xed, 0xe0, 0x33, 0x7d, 0x5a, 0xcf, 0x31, 0x36, 0x58, 0x7d, 0x84, 0x13, }; static const unsigned char ecdh_secp256k1_6037_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6037_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6037_sharedsecret[] = { 0xe2, 0xce, 0xb9, 0x46, 0xe7, 0x99, 0x3f, 0x27, 0xa4, 0x32, 0x7a, 0xbd, 0xf6, 0x1d, 0x4f, 0x06, 0x57, 0x7e, 0x89, 0xc6, 0x3b, 0x62, 0xa2, 0x4a, 0xef, 0xbd, 0x90, 0x57, 0x10, 0xd1, 0x86, 0x69, }; static const wycheproof_ecdh_test ecdh_secp256k1_6037 = { .name = "ecdh_secp256k1_6037", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6037_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6037_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6037_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6037_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 757 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6038 for ECDH, tcId is 758 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6038_peerpubkey[] = { 0x94, 0xf4, 0x60, 0x1b, 0x24, 0x4d, 0x3a, 0x6e, 0xa6, 0x99, 0x6f, 0xa2, 0x44, 0x36, 0x4f, 0x79, 0x43, 0x99, 0xe0, 0xff, 0x43, 0x16, 0x15, 0x7d, 0xb6, 0x02, 0x32, 0x22, 0xfc, 0x0d, 0x90, 0xbe, 0x4b, 0xa2, 0xe4, 0x20, 0xca, 0xbc, 0x43, 0xb6, 0xe8, 0xe8, 0x65, 0x90, 0xfc, 0x23, 0x83, 0xd1, 0x78, 0x27, 0xdd, 0x99, 0xa6, 0x0c, 0x21, 0x1f, 0x19, 0x0a, 0x74, 0x26, 0x91, 0x00, 0xc1, 0x41, }; static const unsigned char ecdh_secp256k1_6038_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6038_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6038_sharedsecret[] = { 0x71, 0x63, 0x7a, 0x5d, 0xa2, 0x41, 0x2a, 0x92, 0x1f, 0x16, 0x36, 0xc6, 0x9a, 0x6e, 0xe8, 0x10, 0x83, 0xee, 0x2b, 0x0e, 0x13, 0x76, 0x6a, 0xd1, 0x22, 0x79, 0x1e, 0xf6, 0xf7, 0x71, 0x89, 0x6d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6038 = { .name = "ecdh_secp256k1_6038", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6038_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6038_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6038_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6038_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 758 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6039 for ECDH, tcId is 759 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6039_peerpubkey[] = { 0x9e, 0x8c, 0x11, 0x5b, 0x1a, 0xc8, 0x7d, 0x98, 0x6e, 0xe1, 0xb5, 0x06, 0xb8, 0x6a, 0x4e, 0x7b, 0x8e, 0xa0, 0x41, 0xaa, 0x6a, 0x63, 0xd6, 0xec, 0x80, 0xec, 0x0f, 0x0c, 0xf6, 0x9c, 0xfb, 0x3f, 0x27, 0x02, 0xa5, 0x15, 0xa9, 0xa5, 0x0d, 0xb1, 0xd8, 0x6f, 0xd4, 0x2a, 0xea, 0x08, 0x34, 0xda, 0xeb, 0x62, 0xbe, 0x03, 0xd0, 0xcd, 0x90, 0x33, 0xf8, 0x4b, 0x9c, 0x4b, 0x56, 0xa1, 0x9f, 0x12, }; static const unsigned char ecdh_secp256k1_6039_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6039_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6039_sharedsecret[] = { 0xbd, 0x26, 0x5e, 0xd3, 0x07, 0x8c, 0xa8, 0xc7, 0x78, 0x8f, 0x59, 0x41, 0x87, 0xc9, 0x6c, 0x67, 0x5a, 0xa6, 0x23, 0xec, 0xd0, 0x1b, 0xfc, 0xad, 0x62, 0xd7, 0x6a, 0x78, 0x81, 0x33, 0x4f, 0x63, }; static const wycheproof_ecdh_test ecdh_secp256k1_6039 = { .name = "ecdh_secp256k1_6039", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6039_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6039_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6039_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6039_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 759 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6040 for ECDH, tcId is 760 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6040_peerpubkey[] = { 0xee, 0xc7, 0x76, 0xb5, 0x2b, 0x94, 0x14, 0x1f, 0xc8, 0x19, 0xd4, 0xb6, 0xb1, 0x2d, 0x28, 0xe7, 0x35, 0x55, 0xb5, 0x56, 0x05, 0x07, 0xab, 0xa7, 0xdf, 0x6f, 0x04, 0x84, 0x00, 0x8d, 0xe9, 0x1f, 0x10, 0x42, 0x77, 0x17, 0x06, 0x92, 0xfa, 0x6b, 0xf2, 0x27, 0x05, 0x80, 0xd5, 0x6d, 0x1b, 0xc8, 0x1b, 0x54, 0xf4, 0x77, 0xd8, 0xab, 0x6c, 0x3f, 0x58, 0x42, 0x65, 0x0a, 0xc7, 0x17, 0x6d, 0x71, }; static const unsigned char ecdh_secp256k1_6040_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6040_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6040_sharedsecret[] = { 0x8d, 0x07, 0x3f, 0xc5, 0x92, 0xfb, 0x7a, 0xa6, 0xf7, 0xb9, 0x08, 0xed, 0x07, 0x14, 0x8a, 0xa7, 0xbe, 0x5a, 0x13, 0x5c, 0x4b, 0x34, 0x3e, 0xbe, 0x29, 0x51, 0x98, 0xcb, 0xa7, 0x8e, 0x71, 0xce, }; static const wycheproof_ecdh_test ecdh_secp256k1_6040 = { .name = "ecdh_secp256k1_6040", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6040_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6040_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6040_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6040_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 760 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6041 for ECDH, tcId is 761 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6041_peerpubkey[] = { 0xaf, 0xf4, 0x6a, 0x38, 0x8e, 0x5a, 0xfc, 0x22, 0x0a, 0x8e, 0xec, 0x7a, 0x49, 0xaf, 0x9d, 0x24, 0x53, 0x84, 0xa3, 0xaf, 0x1e, 0x0b, 0x40, 0x7b, 0x45, 0x21, 0xf4, 0xe9, 0x2d, 0x12, 0xdc, 0xeb, 0x5d, 0x36, 0x76, 0x88, 0xfd, 0xe5, 0xe0, 0x82, 0xf0, 0x97, 0x85, 0x5a, 0x0c, 0x0a, 0xdc, 0x30, 0x5d, 0xd6, 0xcf, 0x46, 0xf5, 0x0c, 0xa7, 0x58, 0x59, 0xbb, 0x24, 0x3b, 0x70, 0x24, 0x96, 0x05, }; static const unsigned char ecdh_secp256k1_6041_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6041_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6041_sharedsecret[] = { 0xa2, 0x6d, 0x69, 0x8e, 0x46, 0x13, 0x59, 0x5a, 0xa6, 0x1c, 0x8e, 0x29, 0x07, 0xd5, 0x24, 0x1d, 0x6d, 0x14, 0x90, 0x97, 0x37, 0xdf, 0x59, 0x89, 0x58, 0x41, 0xd0, 0x77, 0x27, 0xbf, 0x13, 0x48, }; static const wycheproof_ecdh_test ecdh_secp256k1_6041 = { .name = "ecdh_secp256k1_6041", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6041_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6041_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6041_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6041_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 761 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6042 for ECDH, tcId is 762 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6042_peerpubkey[] = { 0xe8, 0x07, 0xe4, 0x3d, 0x96, 0xf3, 0x70, 0x1a, 0x9a, 0x5c, 0x13, 0xd1, 0x22, 0x74, 0x90, 0x84, 0x17, 0x0f, 0xcd, 0x36, 0xa5, 0x86, 0xa4, 0x46, 0xc9, 0xfc, 0xb4, 0x60, 0x0e, 0xed, 0xe4, 0xfd, 0xf4, 0xd1, 0xd2, 0x2a, 0xf7, 0x18, 0x7c, 0x8d, 0xe1, 0xb9, 0x92, 0xa4, 0x04, 0x6c, 0x41, 0x9b, 0x80, 0x1c, 0xde, 0x57, 0xd6, 0x38, 0xd3, 0x0f, 0x2e, 0x1a, 0xc4, 0x93, 0x53, 0x11, 0x7a, 0x20, }; static const unsigned char ecdh_secp256k1_6042_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6042_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6042_sharedsecret[] = { 0xa8, 0xed, 0xc6, 0xf9, 0xaf, 0x6b, 0xf7, 0x41, 0x22, 0xc1, 0x1c, 0xa1, 0xa5, 0x0a, 0xfb, 0xc4, 0xa3, 0xc4, 0x98, 0x7b, 0xd0, 0xd1, 0xf7, 0x32, 0x84, 0xd2, 0xc1, 0x37, 0x1e, 0x61, 0x34, 0x05, }; static const wycheproof_ecdh_test ecdh_secp256k1_6042 = { .name = "ecdh_secp256k1_6042", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6042_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6042_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6042_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6042_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in left to right addition chain, tcId is 762 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6043 for ECDH, tcId is 763 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6043_peerpubkey[] = { 0x79, 0x88, 0x68, 0xa5, 0x69, 0x16, 0xd3, 0x41, 0xe7, 0xd6, 0xf9, 0x63, 0x59, 0xae, 0x36, 0x58, 0x83, 0x6e, 0x22, 0x14, 0x59, 0xf4, 0xf7, 0xb7, 0xb6, 0x36, 0x94, 0xde, 0x18, 0xa5, 0xe9, 0x24, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_6043_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6043_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6043_sharedsecret[] = { 0x17, 0x96, 0x3d, 0xe0, 0x78, 0x99, 0x6e, 0xb8, 0x50, 0x3c, 0x7c, 0xc3, 0xe1, 0xa2, 0xd5, 0x14, 0x7d, 0x7f, 0x0b, 0xfb, 0x25, 0x1a, 0x02, 0x0b, 0x43, 0x92, 0x03, 0x30, 0x63, 0x58, 0x7c, 0x8d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6043 = { .name = "ecdh_secp256k1_6043", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6043_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6043_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6043_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6043_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 763 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6044 for ECDH, tcId is 764 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6044_peerpubkey[] = { 0xff, 0x41, 0x99, 0x09, 0xd8, 0xa8, 0xce, 0x0a, 0x94, 0x16, 0x05, 0x1f, 0x4e, 0x25, 0x62, 0x08, 0xc1, 0xdc, 0x03, 0x55, 0x81, 0xa5, 0x33, 0x12, 0xd5, 0x66, 0x13, 0x7e, 0x22, 0x10, 0x4e, 0x98, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_6044_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6044_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6044_sharedsecret[] = { 0x06, 0x27, 0x99, 0xa1, 0x95, 0x45, 0xd3, 0x1b, 0x3e, 0xd7, 0x22, 0x53, 0xbc, 0xde, 0x59, 0x76, 0x2a, 0xa6, 0x10, 0x4a, 0x88, 0xac, 0x5e, 0x2f, 0xb6, 0x89, 0x26, 0xb0, 0xf7, 0x14, 0x66, 0x98, }; static const wycheproof_ecdh_test ecdh_secp256k1_6044 = { .name = "ecdh_secp256k1_6044", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6044_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6044_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6044_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6044_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 764 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6045 for ECDH, tcId is 765 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6045_peerpubkey[] = { 0x8b, 0x48, 0x11, 0x9d, 0x70, 0x89, 0xd3, 0xb9, 0x5c, 0xd2, 0xea, 0xf8, 0xc8, 0x55, 0x84, 0xfa, 0x8f, 0x5e, 0x56, 0xc4, 0xc4, 0xcc, 0xee, 0x70, 0x37, 0xd7, 0x4c, 0xdb, 0xf8, 0x8e, 0x57, 0x17, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_6045_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6045_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6045_sharedsecret[] = { 0x9f, 0x42, 0xdd, 0x8f, 0xce, 0x13, 0xf8, 0x10, 0x3b, 0x3b, 0x2b, 0xc1, 0x5e, 0x61, 0x24, 0x2e, 0x68, 0x20, 0xfe, 0x13, 0x25, 0xa2, 0x0e, 0xf4, 0x60, 0xfe, 0x64, 0xd9, 0xeb, 0x12, 0xb2, 0x31, }; static const wycheproof_ecdh_test ecdh_secp256k1_6045 = { .name = "ecdh_secp256k1_6045", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6045_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6045_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6045_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6045_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 765 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6046 for ECDH, tcId is 766 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6046_peerpubkey[] = { 0xe2, 0x88, 0x81, 0x19, 0x37, 0x9b, 0x5b, 0x21, 0x51, 0xbd, 0x78, 0x85, 0x05, 0xde, 0xf1, 0xd6, 0xbd, 0x78, 0x63, 0x29, 0x43, 0x1c, 0xaf, 0x39, 0x70, 0x5d, 0x9c, 0xbf, 0x96, 0xa4, 0x2e, 0xa4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_6046_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6046_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6046_sharedsecret[] = { 0xd1, 0xb2, 0x04, 0xe5, 0x2d, 0x1f, 0xac, 0x6d, 0x50, 0x41, 0x32, 0xc7, 0x6c, 0xa2, 0x33, 0xc8, 0x7e, 0x37, 0x7d, 0xcc, 0x79, 0xc8, 0x93, 0xc9, 0x70, 0xdd, 0xbb, 0x9f, 0x87, 0xb2, 0x7f, 0xa0, }; static const wycheproof_ecdh_test ecdh_secp256k1_6046 = { .name = "ecdh_secp256k1_6046", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6046_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6046_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6046_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6046_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 766 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6047 for ECDH, tcId is 767 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6047_peerpubkey[] = { 0x6d, 0xcc, 0x39, 0x71, 0xbd, 0x20, 0x91, 0x3d, 0x59, 0xa9, 0x1f, 0x20, 0xd9, 0x12, 0xf5, 0x6d, 0x07, 0xe7, 0xf0, 0x14, 0x20, 0x6b, 0xef, 0x4a, 0x65, 0x3d, 0xdf, 0xe5, 0xd1, 0x28, 0x42, 0xc3, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_6047_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6047_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6047_sharedsecret[] = { 0xc8, 0xd6, 0xbd, 0x28, 0xc1, 0xe6, 0x5a, 0xe7, 0xc7, 0xa5, 0xde, 0xbe, 0x67, 0xa7, 0xdf, 0xaf, 0x92, 0xb4, 0x29, 0xed, 0xe3, 0x68, 0xef, 0xc9, 0xda, 0x7d, 0x57, 0x8a, 0x53, 0x9b, 0x70, 0x54, }; static const wycheproof_ecdh_test ecdh_secp256k1_6047 = { .name = "ecdh_secp256k1_6047", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6047_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6047_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6047_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6047_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 767 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6048 for ECDH, tcId is 768 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6048_peerpubkey[] = { 0x7e, 0xbe, 0xa4, 0x58, 0x54, 0x56, 0x9a, 0x1f, 0x7e, 0xa6, 0xb9, 0x5b, 0x82, 0xd6, 0xbe, 0xfe, 0xfb, 0xf6, 0x29, 0x6e, 0xbc, 0x87, 0xc8, 0x10, 0xb6, 0xcb, 0xa9, 0x3c, 0x0c, 0x12, 0x20, 0xb2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_6048_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6048_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6048_sharedsecret[] = { 0x0d, 0x1f, 0x90, 0x5c, 0xc7, 0x47, 0x20, 0xbd, 0xe6, 0x7a, 0xe8, 0x4f, 0x58, 0x27, 0x28, 0x58, 0x8c, 0x75, 0x44, 0x4c, 0x27, 0x3d, 0xae, 0x41, 0x06, 0xfa, 0x20, 0xd1, 0xd6, 0x94, 0x64, 0x30, }; static const wycheproof_ecdh_test ecdh_secp256k1_6048 = { .name = "ecdh_secp256k1_6048", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6048_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6048_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6048_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6048_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 768 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6049 for ECDH, tcId is 769 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6049_peerpubkey[] = { 0xce, 0xab, 0x59, 0x37, 0x90, 0x0d, 0x34, 0xfa, 0x88, 0x37, 0x8d, 0x37, 0x1f, 0x4a, 0xca, 0xa7, 0xc6, 0xa2, 0x02, 0x8b, 0x61, 0x43, 0x21, 0x34, 0x13, 0xf1, 0x6b, 0xa2, 0xdc, 0x71, 0x47, 0x87, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_6049_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6049_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6049_sharedsecret[] = { 0x3f, 0x01, 0x4e, 0x30, 0x91, 0x92, 0x58, 0x8f, 0xa8, 0x3e, 0x47, 0xd4, 0xac, 0x96, 0x85, 0xd2, 0x04, 0x12, 0x04, 0xe2, 0xea, 0xf6, 0x33, 0xa1, 0x31, 0x28, 0x12, 0xe5, 0x1a, 0xe7, 0x4c, 0xbd, }; static const wycheproof_ecdh_test ecdh_secp256k1_6049 = { .name = "ecdh_secp256k1_6049", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6049_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6049_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6049_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6049_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 769 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6050 for ECDH, tcId is 770 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6050_peerpubkey[] = { 0xa4, 0xff, 0xea, 0x5e, 0x25, 0xf7, 0x5e, 0x4f, 0x68, 0x9c, 0x81, 0x08, 0x4a, 0x35, 0xc1, 0x22, 0x0e, 0x8e, 0x6b, 0x91, 0x4c, 0x48, 0x2f, 0x4a, 0x2e, 0x8f, 0x93, 0xcf, 0xfc, 0xa6, 0x96, 0x47, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_6050_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6050_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6050_sharedsecret[] = { 0x68, 0xb4, 0x04, 0xd5, 0x56, 0xc8, 0x20, 0x04, 0xc6, 0xc4, 0xbb, 0xa4, 0x51, 0x8e, 0xc0, 0x0b, 0x1d, 0x4f, 0x11, 0x61, 0xca, 0xfe, 0x6c, 0x89, 0xae, 0xb8, 0x49, 0x4a, 0x9b, 0xa0, 0x9d, 0xb5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6050 = { .name = "ecdh_secp256k1_6050", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6050_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6050_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6050_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6050_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 770 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6051 for ECDH, tcId is 771 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6051_peerpubkey[] = { 0xde, 0x88, 0x09, 0xea, 0x0e, 0xcc, 0xe1, 0xd2, 0x4a, 0x04, 0x31, 0x42, 0x95, 0x10, 0x38, 0x3a, 0x6f, 0x6e, 0x5a, 0x1c, 0x51, 0xce, 0xa3, 0x2d, 0x83, 0x0c, 0x6c, 0x35, 0x30, 0x42, 0x60, 0x3e, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_6051_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6051_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6051_sharedsecret[] = { 0xc3, 0x31, 0xad, 0xe7, 0xa4, 0x57, 0xdf, 0x7f, 0x12, 0xa2, 0xf5, 0xc4, 0x3d, 0x7e, 0xa9, 0x48, 0x6c, 0x15, 0x63, 0xb8, 0x1c, 0xd8, 0xa0, 0xf2, 0x3f, 0x92, 0x3c, 0x1a, 0x9f, 0xa6, 0x12, 0xe3, }; static const wycheproof_ecdh_test ecdh_secp256k1_6051 = { .name = "ecdh_secp256k1_6051", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6051_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6051_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6051_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6051_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 771 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6052 for ECDH, tcId is 772 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6052_peerpubkey[] = { 0x56, 0x62, 0x09, 0xf1, 0x74, 0xd6, 0xbf, 0x79, 0x72, 0x0b, 0x70, 0xed, 0xb2, 0x7e, 0x51, 0x35, 0x0b, 0xee, 0xb2, 0xb0, 0xbc, 0xd0, 0x83, 0xbb, 0xae, 0x72, 0x14, 0xf7, 0x1c, 0xf8, 0x24, 0xd4, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_6052_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6052_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6052_sharedsecret[] = { 0x17, 0xb5, 0xc7, 0xa3, 0x11, 0xee, 0xa9, 0xd2, 0xab, 0x75, 0x71, 0xf8, 0xb9, 0xf8, 0x48, 0xd4, 0x70, 0x59, 0x97, 0xcf, 0x3e, 0xaf, 0x9b, 0xdc, 0xbe, 0x0e, 0x34, 0xa6, 0x70, 0xf8, 0x1f, 0x45, }; static const wycheproof_ecdh_test ecdh_secp256k1_6052 = { .name = "ecdh_secp256k1_6052", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6052_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6052_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6052_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6052_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 772 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6053 for ECDH, tcId is 773 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6053_peerpubkey[] = { 0xcc, 0x31, 0x81, 0xc0, 0x12, 0x71, 0x37, 0x53, 0x6c, 0xee, 0xc9, 0x4f, 0xd4, 0x59, 0x96, 0x65, 0x7d, 0xf7, 0x2e, 0x0f, 0x97, 0xc4, 0x4b, 0x9d, 0xad, 0x14, 0x76, 0x3c, 0xe5, 0x06, 0xe9, 0xdc, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_6053_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6053_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6053_sharedsecret[] = { 0x2f, 0x0e, 0x4e, 0xcc, 0xbc, 0x45, 0x18, 0xac, 0xe5, 0x58, 0xe0, 0x66, 0x04, 0xf9, 0xbf, 0xf4, 0x78, 0x7f, 0x5b, 0x01, 0x94, 0x37, 0xb5, 0x21, 0x95, 0xec, 0xb6, 0xb8, 0x21, 0x91, 0xa6, 0xae, }; static const wycheproof_ecdh_test ecdh_secp256k1_6053 = { .name = "ecdh_secp256k1_6053", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6053_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6053_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6053_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6053_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 773 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6054 for ECDH, tcId is 774 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6054_peerpubkey[] = { 0xd7, 0x05, 0x2a, 0x1e, 0xea, 0xfc, 0x0e, 0x78, 0xd7, 0x9e, 0x7f, 0x26, 0x00, 0x3a, 0xa0, 0xa4, 0x09, 0x28, 0x7c, 0xf4, 0x76, 0x00, 0x7d, 0xf2, 0x8d, 0x28, 0x1b, 0x14, 0x2b, 0xe1, 0xa0, 0xe2, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_6054_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6054_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6054_sharedsecret[] = { 0x74, 0x94, 0xd8, 0x64, 0xcb, 0x6e, 0xa9, 0xc5, 0xd9, 0x82, 0xd4, 0x0a, 0x5f, 0x10, 0x37, 0x00, 0xd0, 0x2d, 0xc9, 0x82, 0x63, 0x77, 0x53, 0xcf, 0xc7, 0xd8, 0xaf, 0xe1, 0xbe, 0xaf, 0xff, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_6054 = { .name = "ecdh_secp256k1_6054", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6054_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6054_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6054_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6054_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 774 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6055 for ECDH, tcId is 775 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6055_peerpubkey[] = { 0xb7, 0xcc, 0x3e, 0x23, 0x06, 0xdb, 0xf7, 0xc3, 0x8f, 0xf1, 0x79, 0x65, 0x87, 0x06, 0xfe, 0xff, 0xb5, 0xef, 0xdb, 0x60, 0x44, 0xc7, 0xe7, 0x14, 0x35, 0xd7, 0xff, 0x7d, 0x0a, 0xe8, 0xc7, 0xb3, 0x77, 0x13, 0xfd, 0xb0, 0x3a, 0x8d, 0xe8, 0xc6, 0xd2, 0x9c, 0xa3, 0x8a, 0x9f, 0xba, 0xa8, 0x2e, 0x5e, 0x02, 0xbe, 0xad, 0x2f, 0x9e, 0xec, 0x69, 0xb6, 0x44, 0x4b, 0x7a, 0xdb, 0x05, 0x33, 0x3b, }; static const unsigned char ecdh_secp256k1_6055_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6055_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6055_sharedsecret[] = { 0xa9, 0x68, 0x73, 0xee, 0xf5, 0xd4, 0x38, 0xb8, 0x07, 0x85, 0x3b, 0x67, 0x71, 0xc6, 0xa5, 0x19, 0x7e, 0x6e, 0xef, 0x21, 0xef, 0xef, 0xca, 0x53, 0x8b, 0x45, 0xe9, 0xe9, 0x81, 0xc0, 0x32, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6055 = { .name = "ecdh_secp256k1_6055", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6055_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6055_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6055_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6055_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 775 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6056 for ECDH, tcId is 776 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6056_peerpubkey[] = { 0x5b, 0xbe, 0x7c, 0x98, 0x01, 0x5f, 0xd3, 0xa6, 0x03, 0x4d, 0x79, 0xd8, 0x67, 0xa4, 0xdc, 0xd5, 0x2f, 0x95, 0x91, 0x19, 0x32, 0x12, 0x9d, 0xa2, 0xfc, 0x0a, 0x58, 0xaf, 0xe1, 0x49, 0x13, 0x7f, 0x77, 0x42, 0x1a, 0xb0, 0x1e, 0x00, 0xe8, 0x38, 0x41, 0xb9, 0x46, 0xda, 0xe5, 0xbb, 0x5a, 0x23, 0x97, 0x3d, 0xaa, 0x98, 0xfe, 0x1a, 0x81, 0x72, 0x88, 0x3a, 0xbc, 0xbe, 0xdc, 0xed, 0x70, 0x21, }; static const unsigned char ecdh_secp256k1_6056_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6056_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6056_sharedsecret[] = { 0x91, 0x24, 0x61, 0x89, 0x13, 0xf2, 0x0c, 0xdf, 0xfa, 0x64, 0x22, 0x07, 0xf1, 0x92, 0xe6, 0x7e, 0xb8, 0x0a, 0xde, 0x53, 0xac, 0x55, 0x35, 0x46, 0x9a, 0xbe, 0x90, 0x03, 0x6d, 0x4a, 0xf7, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_6056 = { .name = "ecdh_secp256k1_6056", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6056_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6056_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6056_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6056_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 776 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6057 for ECDH, tcId is 777 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6057_peerpubkey[] = { 0x96, 0x2f, 0xe4, 0x78, 0x80, 0xa9, 0x4a, 0x74, 0x59, 0x28, 0xe3, 0xc4, 0xa2, 0x9a, 0x42, 0xcb, 0x01, 0x33, 0x4f, 0x1e, 0xe9, 0x64, 0x6e, 0x62, 0x45, 0x1c, 0x46, 0xec, 0xd7, 0x2f, 0x41, 0x09, 0x14, 0xc1, 0xaa, 0xc5, 0xf0, 0xbf, 0x1b, 0x48, 0xa4, 0xab, 0xcf, 0x1d, 0x92, 0x91, 0xb9, 0xa8, 0x77, 0x6a, 0x00, 0x43, 0x80, 0x54, 0x6a, 0x5a, 0x1c, 0x1f, 0x29, 0x46, 0x90, 0xf6, 0x19, 0x69, }; static const unsigned char ecdh_secp256k1_6057_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6057_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6057_sharedsecret[] = { 0x9d, 0x8b, 0x74, 0x88, 0x8d, 0x94, 0x28, 0x70, 0xb2, 0x21, 0xde, 0x7a, 0x64, 0x20, 0x32, 0x89, 0x2b, 0xc9, 0x9e, 0x34, 0xbd, 0x85, 0x50, 0x19, 0x5f, 0x6f, 0x5f, 0x09, 0x75, 0x47, 0x33, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6057 = { .name = "ecdh_secp256k1_6057", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6057_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6057_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6057_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6057_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 777 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6058 for ECDH, tcId is 778 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6058_peerpubkey[] = { 0xc7, 0x15, 0x74, 0xf5, 0x53, 0x8d, 0xe5, 0x65, 0x3c, 0x37, 0x16, 0x8d, 0x47, 0xa2, 0xbc, 0xf4, 0x36, 0x98, 0xea, 0x26, 0x00, 0x12, 0xcd, 0x0a, 0xe1, 0x30, 0x4e, 0x47, 0x4c, 0x63, 0xa4, 0xe6, 0x3b, 0xb7, 0x32, 0x88, 0x39, 0xd2, 0xae, 0xca, 0xc6, 0x4b, 0x1c, 0xdb, 0x18, 0x2f, 0x08, 0xad, 0xcc, 0xaa, 0xc3, 0x27, 0xed, 0x00, 0x89, 0x87, 0xa1, 0x0e, 0xdc, 0x97, 0x32, 0x41, 0x3c, 0xed, }; static const unsigned char ecdh_secp256k1_6058_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6058_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6058_sharedsecret[] = { 0x16, 0x98, 0x33, 0x77, 0xc0, 0xf1, 0xa9, 0xc0, 0x04, 0x49, 0x5b, 0x3f, 0xd9, 0x65, 0x83, 0x63, 0x11, 0x6e, 0xea, 0x64, 0x47, 0x87, 0xd0, 0x59, 0xd1, 0x14, 0x0f, 0xb9, 0x07, 0x55, 0x5d, 0x4a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6058 = { .name = "ecdh_secp256k1_6058", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6058_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6058_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6058_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6058_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 778 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6059 for ECDH, tcId is 779 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6059_peerpubkey[] = { 0xc6, 0x02, 0x44, 0xce, 0x30, 0x6e, 0x37, 0x6f, 0x39, 0x68, 0x17, 0x8f, 0x52, 0x93, 0x74, 0x2d, 0x7a, 0x20, 0xe1, 0xdc, 0x47, 0xcf, 0xc5, 0x17, 0xed, 0xad, 0xa9, 0xdb, 0x49, 0xd0, 0xcb, 0xbf, 0x9b, 0x51, 0xb1, 0x7b, 0x76, 0xea, 0x6c, 0xc1, 0x37, 0xee, 0xbd, 0x93, 0xc8, 0x11, 0xe6, 0x36, 0xd8, 0xae, 0x26, 0xc7, 0x0d, 0x06, 0x46, 0x50, 0xf7, 0x20, 0x5a, 0x86, 0x5d, 0x01, 0xa6, 0xee, }; static const unsigned char ecdh_secp256k1_6059_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6059_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6059_sharedsecret[] = { 0x08, 0x1a, 0xf4, 0x0a, 0x81, 0xd4, 0x8c, 0x6b, 0x53, 0x01, 0x40, 0xdb, 0x93, 0x5e, 0x60, 0x5b, 0xf4, 0xcc, 0x7b, 0x10, 0x88, 0x5f, 0x5b, 0x14, 0x8f, 0x95, 0xf1, 0xbc, 0x8a, 0xd2, 0xe5, 0x2d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6059 = { .name = "ecdh_secp256k1_6059", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6059_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6059_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6059_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6059_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 779 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6060 for ECDH, tcId is 780 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6060_peerpubkey[] = { 0xaa, 0x3c, 0x31, 0x88, 0xc0, 0xad, 0x57, 0x67, 0xa9, 0xba, 0xc7, 0x7e, 0x7c, 0xee, 0xa0, 0x5c, 0xfa, 0xe1, 0x59, 0x9c, 0xcd, 0x77, 0xb9, 0xfc, 0xbc, 0x0c, 0x3b, 0xad, 0xc8, 0x0c, 0x36, 0xca, 0x3f, 0x18, 0x74, 0xfa, 0x08, 0xa6, 0x93, 0xb0, 0x86, 0x64, 0x3e, 0xf2, 0x1e, 0xb5, 0x9d, 0x75, 0x56, 0x2d, 0xa9, 0x42, 0x2d, 0x13, 0xd9, 0xa3, 0x9b, 0x0b, 0x17, 0xe2, 0x41, 0xb0, 0x4d, 0x32, }; static const unsigned char ecdh_secp256k1_6060_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6060_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6060_sharedsecret[] = { 0x7e, 0x4b, 0x97, 0x3e, 0x6d, 0x4a, 0x35, 0x7c, 0x40, 0x02, 0x43, 0xa6, 0x48, 0xc8, 0xa0, 0xa6, 0xa3, 0x5c, 0xf2, 0x31, 0x75, 0x4a, 0xfd, 0xef, 0x31, 0x2d, 0x2f, 0x4b, 0x6a, 0xbb, 0x98, 0x8f, }; static const wycheproof_ecdh_test ecdh_secp256k1_6060 = { .name = "ecdh_secp256k1_6060", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6060_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6060_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6060_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6060_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in precomputation or right to left addition chain, tcId is 780 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6061 for ECDH, tcId is 781 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6061_peerpubkey[] = { 0x2c, 0xce, 0x8d, 0xdf, 0xe4, 0x82, 0x7d, 0xc0, 0x30, 0xdd, 0xf3, 0x8f, 0x99, 0x8b, 0x3f, 0x2e, 0xd5, 0xe0, 0x62, 0x1d, 0x0b, 0x38, 0x05, 0x66, 0x6d, 0xaf, 0x48, 0xc8, 0xc3, 0x1e, 0x75, 0xe5, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_6061_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6061_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6061_sharedsecret[] = { 0x0f, 0x02, 0x35, 0xda, 0x2a, 0x06, 0xc8, 0xd4, 0x08, 0xc2, 0x71, 0x51, 0xf3, 0xf1, 0x53, 0x42, 0xed, 0x8c, 0x19, 0x45, 0xaa, 0xf8, 0x4e, 0xd1, 0x49, 0x93, 0x78, 0x6d, 0x6a, 0xc5, 0xf5, 0x70, }; static const wycheproof_ecdh_test ecdh_secp256k1_6061 = { .name = "ecdh_secp256k1_6061", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6061_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6061_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6061_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6061_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 781 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6062 for ECDH, tcId is 782 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6062_peerpubkey[] = { 0x14, 0xbf, 0xc3, 0xe5, 0xa4, 0x6b, 0x69, 0x88, 0x1a, 0x9a, 0x34, 0x6d, 0x95, 0x89, 0x44, 0x18, 0x61, 0x4e, 0xd9, 0x14, 0x76, 0xa1, 0xdd, 0xce, 0x48, 0x67, 0x6b, 0x7c, 0xba, 0xb9, 0xba, 0x02, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_6062_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6062_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6062_sharedsecret[] = { 0x56, 0x22, 0xc2, 0xfb, 0xe8, 0xaf, 0x5a, 0xd6, 0xce, 0xf7, 0x2a, 0x01, 0xbe, 0x18, 0x6e, 0x55, 0x48, 0x47, 0x57, 0x61, 0x06, 0xf8, 0x97, 0x97, 0x72, 0xfa, 0x56, 0x11, 0x4d, 0x11, 0x60, 0xab, }; static const wycheproof_ecdh_test ecdh_secp256k1_6062 = { .name = "ecdh_secp256k1_6062", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6062_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6062_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6062_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6062_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 782 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6063 for ECDH, tcId is 783 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6063_peerpubkey[] = { 0xbd, 0x44, 0x2f, 0xa5, 0xa2, 0xa8, 0xd7, 0x2e, 0x13, 0xe4, 0x4f, 0xd2, 0x22, 0x2c, 0x85, 0xa0, 0x06, 0xf0, 0x33, 0x75, 0xe0, 0x21, 0x1b, 0x27, 0x2f, 0x55, 0x50, 0x52, 0xb0, 0x3d, 0xb7, 0x50, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_6063_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6063_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6063_sharedsecret[] = { 0xbb, 0x95, 0xe0, 0xd0, 0xfb, 0xaa, 0xd8, 0x6c, 0x5b, 0xd8, 0x7b, 0x95, 0x94, 0x6c, 0x77, 0xff, 0x1d, 0x65, 0x32, 0x2a, 0x17, 0x5c, 0xcf, 0x16, 0x41, 0x91, 0x02, 0xc0, 0xa1, 0x7f, 0x5a, 0x72, }; static const wycheproof_ecdh_test ecdh_secp256k1_6063 = { .name = "ecdh_secp256k1_6063", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6063_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6063_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6063_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6063_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 783 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6064 for ECDH, tcId is 784 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6064_peerpubkey[] = { 0x0d, 0x7a, 0x3f, 0xf4, 0x9b, 0xda, 0x6a, 0x58, 0x7e, 0xd0, 0x76, 0x91, 0x45, 0x04, 0x25, 0xaa, 0x02, 0xd2, 0x53, 0xba, 0x57, 0x3a, 0x16, 0xad, 0x86, 0xc6, 0x1a, 0xf4, 0x12, 0xdd, 0x3c, 0x77, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_6064_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6064_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6064_sharedsecret[] = { 0x45, 0x10, 0x68, 0x3c, 0x7b, 0xfa, 0x25, 0x1f, 0x0c, 0xb5, 0x6b, 0xba, 0x7e, 0x0a, 0xb7, 0x4d, 0x90, 0xf5, 0xe2, 0xca, 0x01, 0xe9, 0x1e, 0x7c, 0xa9, 0x93, 0x12, 0xcc, 0xff, 0x2d, 0x90, 0xb6, }; static const wycheproof_ecdh_test ecdh_secp256k1_6064 = { .name = "ecdh_secp256k1_6064", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6064_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6064_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6064_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6064_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 784 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6065 for ECDH, tcId is 785 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6065_peerpubkey[] = { 0xbd, 0xea, 0x5d, 0x2a, 0x3a, 0xdd, 0xe7, 0xdf, 0x2e, 0x83, 0x9f, 0xf6, 0x3f, 0x62, 0x53, 0x4b, 0x3f, 0x27, 0xcb, 0x19, 0x1b, 0xb5, 0x4d, 0xfa, 0x1d, 0x39, 0xcb, 0xff, 0x71, 0x3b, 0xa9, 0xed, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_6065_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6065_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6065_sharedsecret[] = { 0x02, 0x54, 0x85, 0x14, 0x2c, 0xa1, 0xce, 0xd7, 0x52, 0x28, 0x9f, 0x77, 0x21, 0x30, 0xfc, 0x10, 0xc7, 0x5a, 0x45, 0x08, 0xc4, 0x6b, 0xff, 0xde, 0xf9, 0x29, 0x0a, 0xd3, 0xe7, 0xba, 0xf9, 0xca, }; static const wycheproof_ecdh_test ecdh_secp256k1_6065 = { .name = "ecdh_secp256k1_6065", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6065_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6065_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6065_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6065_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 785 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6066 for ECDH, tcId is 786 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6066_peerpubkey[] = { 0xd4, 0xc0, 0x63, 0xe3, 0xc0, 0x36, 0xf4, 0x7c, 0x92, 0xf6, 0xf5, 0x47, 0x0a, 0x26, 0xa8, 0x35, 0xe1, 0xa2, 0x45, 0x05, 0xb1, 0x4d, 0x1b, 0x29, 0x27, 0x90, 0x62, 0xa1, 0x6c, 0xf6, 0xf4, 0x89, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_6066_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6066_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6066_sharedsecret[] = { 0x90, 0x67, 0x93, 0x21, 0x50, 0x72, 0x49, 0x65, 0xaa, 0x47, 0x9c, 0x1e, 0xf1, 0xbe, 0x55, 0x54, 0x4b, 0xed, 0x9f, 0xa9, 0x45, 0x00, 0xa3, 0xb6, 0x78, 0x87, 0xed, 0x91, 0xae, 0x3b, 0x81, 0xe5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6066 = { .name = "ecdh_secp256k1_6066", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6066_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6066_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6066_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6066_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 786 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6067 for ECDH, tcId is 787 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6067_peerpubkey[] = { 0x3c, 0xb9, 0xf0, 0x79, 0x97, 0x75, 0x68, 0x59, 0xe9, 0xb9, 0xa8, 0x5b, 0x68, 0x1f, 0xa5, 0x0e, 0xe2, 0x03, 0x57, 0xf5, 0x35, 0xc1, 0xb3, 0x11, 0xc4, 0x63, 0x7d, 0x16, 0xb7, 0x6b, 0x9e, 0xbf, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_6067_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6067_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6067_sharedsecret[] = { 0xf8, 0x08, 0x4a, 0x89, 0xad, 0xcc, 0xdc, 0x3a, 0xef, 0x89, 0xe5, 0x09, 0x1a, 0x0f, 0x07, 0xd6, 0x16, 0x0a, 0x66, 0xcb, 0x95, 0x75, 0x24, 0x11, 0x00, 0xc1, 0xd3, 0x9b, 0xf0, 0x54, 0x9a, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_6067 = { .name = "ecdh_secp256k1_6067", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6067_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6067_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6067_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6067_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 787 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6068 for ECDH, tcId is 788 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6068_peerpubkey[] = { 0x79, 0x34, 0x12, 0xff, 0x63, 0x6c, 0x08, 0xa2, 0xd0, 0xf6, 0xd6, 0x0c, 0xc6, 0x08, 0xe9, 0xa9, 0x09, 0x83, 0x49, 0xa2, 0x50, 0x1f, 0x91, 0xc9, 0x5f, 0x69, 0x20, 0x10, 0xbc, 0x12, 0x38, 0xb2, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_6068_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6068_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6068_sharedsecret[] = { 0x44, 0x62, 0x55, 0x8c, 0x89, 0x90, 0x21, 0x17, 0x05, 0x1c, 0xb2, 0xc5, 0x99, 0xad, 0x66, 0xf0, 0x08, 0x87, 0xb5, 0x4c, 0xae, 0x3d, 0xa9, 0xc0, 0x4d, 0x31, 0x7a, 0x5b, 0x2a, 0xfb, 0x46, 0x3b, }; static const wycheproof_ecdh_test ecdh_secp256k1_6068 = { .name = "ecdh_secp256k1_6068", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6068_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6068_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6068_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6068_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 788 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6069 for ECDH, tcId is 789 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6069_peerpubkey[] = { 0xbd, 0x1e, 0xb0, 0x84, 0x9e, 0x2e, 0x6a, 0x13, 0xd5, 0x4b, 0x76, 0x51, 0x8f, 0x11, 0xba, 0x87, 0x75, 0xc2, 0xd7, 0x63, 0x4d, 0x85, 0x15, 0x25, 0x34, 0xbc, 0x7c, 0x3a, 0xf4, 0x16, 0x1e, 0xfa, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_6069_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6069_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6069_sharedsecret[] = { 0x30, 0xb4, 0x74, 0x1a, 0x64, 0xf8, 0x7d, 0x28, 0xec, 0x00, 0x29, 0xbd, 0x19, 0x6b, 0x5a, 0x74, 0x55, 0x5f, 0x2c, 0x9a, 0x97, 0x6a, 0x46, 0xd6, 0x28, 0x57, 0x24, 0x74, 0x46, 0x6a, 0x63, 0x1d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6069 = { .name = "ecdh_secp256k1_6069", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6069_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6069_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6069_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6069_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 789 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6070 for ECDH, tcId is 790 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6070_peerpubkey[] = { 0x62, 0x4b, 0x3b, 0x4b, 0xa9, 0x93, 0xa8, 0xb9, 0x38, 0x12, 0x56, 0x89, 0xf6, 0xcf, 0x75, 0x73, 0x92, 0xee, 0x39, 0x0d, 0x14, 0xa9, 0x0f, 0xea, 0x6d, 0xb9, 0x44, 0xb5, 0xa8, 0xde, 0xb8, 0xd0, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_6070_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6070_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6070_sharedsecret[] = { 0x3a, 0xfc, 0x04, 0xac, 0x92, 0x11, 0x7e, 0x50, 0xb0, 0x91, 0x3b, 0x09, 0xdb, 0xbb, 0x4e, 0x6c, 0x78, 0x0c, 0x05, 0x15, 0x00, 0x20, 0x1f, 0xad, 0x51, 0x2b, 0x79, 0x08, 0x0b, 0xff, 0x39, 0xe2, }; static const wycheproof_ecdh_test ecdh_secp256k1_6070 = { .name = "ecdh_secp256k1_6070", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6070_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6070_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6070_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6070_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 790 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6071 for ECDH, tcId is 791 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6071_peerpubkey[] = { 0xfe, 0x71, 0x0e, 0x3c, 0x5b, 0x46, 0x8d, 0xc3, 0x3c, 0x2b, 0x17, 0x29, 0x5c, 0x4e, 0x18, 0x9b, 0x48, 0x7d, 0x58, 0xdd, 0x43, 0x7a, 0xdf, 0x70, 0x6a, 0xc0, 0x54, 0x93, 0xcf, 0xea, 0x8d, 0xf0, 0x19, 0x8d, 0x9e, 0xf4, 0xe9, 0x73, 0xb6, 0xbd, 0xeb, 0xe1, 0x19, 0xa3, 0x5f, 0xaa, 0xe8, 0x61, 0x91, 0xac, 0xd7, 0x58, 0xc1, 0xed, 0x8a, 0xcc, 0xaf, 0x1e, 0x70, 0x6a, 0xd5, 0x5d, 0x83, 0xd7, }; static const unsigned char ecdh_secp256k1_6071_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6071_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6071_sharedsecret[] = { 0x60, 0x96, 0x37, 0x04, 0x85, 0x86, 0xed, 0xc6, 0x4c, 0xf5, 0xf2, 0x8f, 0x1a, 0x50, 0x57, 0x68, 0xc6, 0x86, 0x47, 0x11, 0x10, 0x07, 0x0d, 0x78, 0x3d, 0xe4, 0x99, 0xff, 0xe6, 0xfe, 0x84, 0xda, }; static const wycheproof_ecdh_test ecdh_secp256k1_6071 = { .name = "ecdh_secp256k1_6071", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6071_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6071_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6071_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6071_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 791 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6072 for ECDH, tcId is 792 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6072_peerpubkey[] = { 0xae, 0x86, 0x4b, 0xa0, 0xc4, 0x1f, 0x2e, 0x1d, 0xfb, 0xac, 0x23, 0x37, 0x02, 0x57, 0x16, 0xd8, 0xbc, 0xad, 0xce, 0xf6, 0x53, 0x9c, 0x6f, 0x1f, 0xf3, 0x35, 0x17, 0x6b, 0x8d, 0xda, 0xa3, 0x6e, 0xf3, 0x34, 0xd6, 0x4f, 0x2c, 0xaf, 0x56, 0x1b, 0x06, 0x3b, 0xc1, 0xf7, 0x88, 0x9e, 0x93, 0x73, 0x02, 0xa4, 0x55, 0xff, 0x68, 0x5d, 0x8a, 0xe5, 0x7c, 0xb2, 0x44, 0x4a, 0x17, 0xda, 0xd0, 0x68, }; static const unsigned char ecdh_secp256k1_6072_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6072_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6072_sharedsecret[] = { 0xb1, 0xd4, 0xf2, 0x7a, 0x69, 0x83, 0xc8, 0xee, 0x41, 0x7e, 0xf0, 0xf5, 0x27, 0xd8, 0x89, 0xd4, 0xa1, 0xae, 0x41, 0xd3, 0x63, 0x92, 0x44, 0x57, 0x8c, 0x43, 0xd6, 0x50, 0xc2, 0x99, 0xfc, 0xd1, }; static const wycheproof_ecdh_test ecdh_secp256k1_6072 = { .name = "ecdh_secp256k1_6072", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6072_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6072_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6072_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6072_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 792 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6073 for ECDH, tcId is 793 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6073_peerpubkey[] = { 0xc9, 0x87, 0xbd, 0x5a, 0xf9, 0xeb, 0x20, 0x2f, 0x1b, 0x24, 0xda, 0x21, 0x17, 0xca, 0x90, 0xb6, 0xef, 0x8c, 0x82, 0xe7, 0xcf, 0xbf, 0x53, 0x0f, 0x71, 0x41, 0x8f, 0x9a, 0x93, 0xb0, 0x08, 0x5c, 0xbe, 0x34, 0x57, 0x37, 0xf7, 0xc6, 0xb5, 0xe7, 0x0e, 0x97, 0xd9, 0xfe, 0x9d, 0xc4, 0xca, 0x94, 0xfb, 0x18, 0x5f, 0x4b, 0x9d, 0x2a, 0x00, 0xe0, 0x86, 0xc1, 0xd4, 0x72, 0x73, 0xb3, 0x36, 0x02, }; static const unsigned char ecdh_secp256k1_6073_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6073_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6073_sharedsecret[] = { 0x00, 0x07, 0xc9, 0xa2, 0x7a, 0xc5, 0x06, 0x7c, 0x9f, 0x0a, 0xd1, 0xa4, 0xd1, 0xe6, 0x21, 0x10, 0xda, 0x13, 0x18, 0x89, 0x3a, 0x65, 0x87, 0x29, 0x71, 0x3d, 0x82, 0xe3, 0x33, 0x85, 0x5b, 0x82, }; static const wycheproof_ecdh_test ecdh_secp256k1_6073 = { .name = "ecdh_secp256k1_6073", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6073_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6073_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6073_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6073_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 793 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6074 for ECDH, tcId is 794 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6074_peerpubkey[] = { 0x35, 0x67, 0x0f, 0x86, 0xc5, 0xf7, 0x2b, 0x93, 0xab, 0xe4, 0x13, 0x1d, 0x2b, 0xea, 0x1f, 0xce, 0x87, 0x6a, 0xd4, 0xe2, 0x5b, 0x40, 0xd4, 0x2d, 0x44, 0x7d, 0x68, 0xcf, 0xf9, 0x0c, 0xa0, 0xbe, 0x0b, 0x6d, 0x3b, 0x9e, 0x57, 0x0b, 0xa0, 0x04, 0x87, 0x7c, 0x9a, 0x69, 0xe4, 0x81, 0xfe, 0x21, 0x5d, 0xe0, 0x3a, 0x70, 0x12, 0x63, 0x05, 0xa4, 0x52, 0x82, 0x6e, 0x66, 0xd9, 0xb5, 0x58, 0x3e, }; static const unsigned char ecdh_secp256k1_6074_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6074_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6074_sharedsecret[] = { 0x8a, 0x3b, 0x23, 0xa9, 0x1f, 0x0d, 0x5d, 0xb8, 0x07, 0x4a, 0x6a, 0x88, 0x68, 0x89, 0xee, 0x3e, 0x19, 0xaa, 0xf0, 0x9b, 0x66, 0xac, 0x9a, 0xad, 0x2e, 0x15, 0xc8, 0xbd, 0xba, 0x68, 0x08, 0x5c, }; static const wycheproof_ecdh_test ecdh_secp256k1_6074 = { .name = "ecdh_secp256k1_6074", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6074_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6074_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6074_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6074_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 794 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6075 for ECDH, tcId is 795 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6075_peerpubkey[] = { 0xdf, 0xca, 0x67, 0x8a, 0x1b, 0x8e, 0x6f, 0x67, 0x99, 0x6a, 0x09, 0x7f, 0xc9, 0xce, 0x37, 0x41, 0x2d, 0xe9, 0xfb, 0xd9, 0xcf, 0xa1, 0xa2, 0x1b, 0x75, 0x0c, 0xef, 0x48, 0xe5, 0xe5, 0x95, 0xa1, 0x30, 0x7d, 0x8f, 0x1d, 0x02, 0xc6, 0xf0, 0x71, 0x46, 0x65, 0x5e, 0x63, 0x83, 0xb0, 0xef, 0x30, 0x35, 0xbe, 0xe7, 0x06, 0x7c, 0x33, 0x6f, 0xdb, 0x91, 0x36, 0x5e, 0x19, 0x7a, 0x97, 0xb6, 0x16, }; static const unsigned char ecdh_secp256k1_6075_ourpubkey[] = { 0x4f, 0x59, 0x22, 0x17, 0x2f, 0xe4, 0xc4, 0x01, 0x6f, 0xb0, 0x37, 0xa3, 0x2b, 0xf9, 0x1d, 0xa0, 0xf8, 0x3e, 0x84, 0xa6, 0x3a, 0x3b, 0x14, 0xa0, 0xc5, 0x49, 0x1c, 0x99, 0x5c, 0xad, 0xc7, 0x5d, 0xf1, 0x69, 0x74, 0x8e, 0x37, 0x08, 0xc0, 0x45, 0x19, 0xd0, 0xa9, 0x94, 0x29, 0x82, 0xfc, 0x3a, 0xe4, 0x09, 0x24, 0x57, 0x86, 0x10, 0x18, 0x51, 0x92, 0xbe, 0x24, 0x18, 0xad, 0xca, 0xdc, 0x5d, }; static const unsigned char ecdh_secp256k1_6075_privkey[] = { 0xc1, 0x78, 0x1d, 0x86, 0xca, 0xc2, 0xc0, 0x52, 0xb8, 0x65, 0xf2, 0x28, 0xe6, 0x4b, 0xd1, 0xce, 0x43, 0x3c, 0x78, 0xca, 0x7d, 0xfc, 0xa9, 0xe8, 0xb8, 0x10, 0x47, 0x3e, 0x2c, 0xe1, 0x7d, 0xa5, }; static const unsigned char ecdh_secp256k1_6075_sharedsecret[] = { 0xc2, 0xaf, 0x76, 0x3f, 0x41, 0x4c, 0xb2, 0xd7, 0xfd, 0x46, 0x25, 0x7f, 0x03, 0x13, 0xb5, 0x82, 0xc0, 0x99, 0xb5, 0xe2, 0x3b, 0x73, 0xe0, 0x73, 0xb5, 0xab, 0x7c, 0x23, 0x0c, 0x45, 0xc8, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_6075 = { .name = "ecdh_secp256k1_6075", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6075_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6075_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6075_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6075_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "point with coordinate y = 1 in right to left addition chain, tcId is 795 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6076 for ECDH, tcId is 796 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6076_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6076_ourpubkey[] = { 0xf9, 0x30, 0x8a, 0x01, 0x92, 0x58, 0xc3, 0x10, 0x49, 0x34, 0x4f, 0x85, 0xf8, 0x9d, 0x52, 0x29, 0xb5, 0x31, 0xc8, 0x45, 0x83, 0x6f, 0x99, 0xb0, 0x86, 0x01, 0xf1, 0x13, 0xbc, 0xe0, 0x36, 0xf9, 0x38, 0x8f, 0x7b, 0x0f, 0x63, 0x2d, 0xe8, 0x14, 0x0f, 0xe3, 0x37, 0xe6, 0x2a, 0x37, 0xf3, 0x56, 0x65, 0x00, 0xa9, 0x99, 0x34, 0xc2, 0x23, 0x1b, 0x6c, 0xb9, 0xfd, 0x75, 0x84, 0xb8, 0xe6, 0x72, }; static const unsigned char ecdh_secp256k1_6076_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, }; static const unsigned char ecdh_secp256k1_6076_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_6076 = { .name = "ecdh_secp256k1_6076", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6076_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6076_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6076_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6076_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 796 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6077 for ECDH, tcId is 797 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6077_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6077_ourpubkey[] = { 0xa4, 0x90, 0x0a, 0x7c, 0x15, 0x4e, 0x61, 0x1f, 0xbf, 0xff, 0x1e, 0xbe, 0x04, 0x61, 0x15, 0xcf, 0x31, 0xfc, 0x7e, 0x3b, 0x55, 0x38, 0xc0, 0x2c, 0xad, 0x94, 0x13, 0x40, 0xbf, 0x73, 0xd7, 0x89, 0x37, 0x00, 0xcc, 0x54, 0x7e, 0x52, 0xe9, 0x4a, 0xf5, 0x14, 0x7c, 0xee, 0x9d, 0x10, 0xd7, 0x74, 0x6d, 0x20, 0x67, 0xd5, 0xdb, 0x25, 0x13, 0x77, 0x97, 0x3b, 0xd6, 0xe7, 0xde, 0xe8, 0x2a, 0xbf, }; static const unsigned char ecdh_secp256k1_6077_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_6077_sharedsecret[] = { 0x58, 0x41, 0xac, 0xd3, 0xcf, 0xf2, 0xd6, 0x28, 0x61, 0xbb, 0xe1, 0x10, 0x84, 0x73, 0x80, 0x06, 0xd6, 0x8c, 0xcf, 0x35, 0xac, 0xae, 0x61, 0x5e, 0xe9, 0x52, 0x47, 0x26, 0xe9, 0x3d, 0x0d, 0xa5, }; static const wycheproof_ecdh_test ecdh_secp256k1_6077 = { .name = "ecdh_secp256k1_6077", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6077_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6077_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6077_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6077_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 797 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6078 for ECDH, tcId is 798 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6078_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6078_ourpubkey[] = { 0x8c, 0x28, 0xa9, 0x7b, 0xf8, 0x29, 0x8b, 0xc0, 0xd2, 0x3d, 0x8c, 0x74, 0x94, 0x52, 0xa3, 0x2e, 0x69, 0x4b, 0x65, 0xe3, 0x0a, 0x94, 0x72, 0xa3, 0x95, 0x4a, 0xb3, 0x0f, 0xe5, 0x32, 0x4c, 0xaa, 0x40, 0xa3, 0x04, 0x63, 0xa3, 0x30, 0x51, 0x93, 0x37, 0x8f, 0xed, 0xf3, 0x1f, 0x7c, 0xc0, 0xeb, 0x7a, 0xe7, 0x84, 0xf0, 0x45, 0x1c, 0xb9, 0x45, 0x9e, 0x71, 0xdc, 0x73, 0xcb, 0xef, 0x94, 0x82, }; static const unsigned char ecdh_secp256k1_6078_privkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6078_sharedsecret[] = { 0x43, 0x48, 0xe4, 0xcb, 0xa3, 0x71, 0xea, 0xd0, 0x39, 0x82, 0x01, 0x8a, 0xbc, 0x9a, 0xac, 0xec, 0xae, 0xbf, 0xd6, 0x36, 0xdd, 0xa8, 0x2e, 0x60, 0x9f, 0xd2, 0x98, 0x94, 0x7f, 0x90, 0x7d, 0xe8, }; static const wycheproof_ecdh_test ecdh_secp256k1_6078 = { .name = "ecdh_secp256k1_6078", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6078_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6078_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6078_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6078_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 798 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6079 for ECDH, tcId is 799 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6079_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6079_ourpubkey[] = { 0x37, 0x0e, 0xbf, 0xed, 0x47, 0x31, 0x78, 0x15, 0x9f, 0xd0, 0x8c, 0x3f, 0x7b, 0xc0, 0x7e, 0x12, 0x30, 0x17, 0x92, 0xfb, 0xd2, 0x51, 0x55, 0x4a, 0x80, 0x29, 0x8e, 0xfc, 0x66, 0x6c, 0x65, 0x1d, 0xad, 0x08, 0xb7, 0x51, 0x61, 0xc5, 0x42, 0xe5, 0x50, 0x3b, 0x77, 0x76, 0x25, 0xc2, 0x96, 0xb9, 0xef, 0x85, 0x45, 0x57, 0x56, 0xba, 0x7d, 0x58, 0x2b, 0xc3, 0xc0, 0x09, 0x65, 0xde, 0xa4, 0xa2, }; static const unsigned char ecdh_secp256k1_6079_privkey[] = { 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char ecdh_secp256k1_6079_sharedsecret[] = { 0xe5, 0x62, 0x21, 0xc2, 0xb0, 0xdc, 0x33, 0xb9, 0x8b, 0x90, 0xdf, 0xd3, 0x23, 0x9a, 0x2c, 0x0c, 0xb1, 0xe4, 0xad, 0x03, 0x99, 0xa3, 0xaa, 0xef, 0x3f, 0x9d, 0x47, 0xfb, 0x10, 0x3d, 0xae, 0xf0, }; static const wycheproof_ecdh_test ecdh_secp256k1_6079 = { .name = "ecdh_secp256k1_6079", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6079_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6079_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6079_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6079_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 799 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6080 for ECDH, tcId is 800 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6080_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6080_ourpubkey[] = { 0xb2, 0x37, 0x90, 0xa4, 0x2b, 0xe6, 0x3e, 0x1b, 0x25, 0x1a, 0xd6, 0xc9, 0x4f, 0xde, 0xf0, 0x72, 0x71, 0xec, 0x0a, 0xad, 0xa3, 0x1d, 0xb6, 0xc3, 0xe8, 0xbd, 0x32, 0x04, 0x3f, 0x8b, 0xe3, 0x84, 0xfc, 0x6b, 0x69, 0x49, 0x19, 0xd5, 0x5e, 0xdb, 0xe8, 0xd5, 0x0f, 0x88, 0xaa, 0x81, 0xf9, 0x45, 0x17, 0xf0, 0x04, 0xf4, 0x14, 0x9e, 0xcb, 0x58, 0xd1, 0x0a, 0x47, 0x3d, 0xeb, 0x19, 0x88, 0x0e, }; static const unsigned char ecdh_secp256k1_6080_privkey[] = { 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6080_sharedsecret[] = { 0x5b, 0x34, 0xa2, 0x9b, 0x1c, 0x4d, 0xdc, 0xb2, 0x10, 0x11, 0x62, 0xd3, 0x4b, 0xed, 0x9f, 0x07, 0x02, 0x36, 0x1f, 0xe5, 0xaf, 0x50, 0x5d, 0xf3, 0x15, 0xef, 0xf7, 0xbe, 0xfd, 0x0e, 0x47, 0x19, }; static const wycheproof_ecdh_test ecdh_secp256k1_6080 = { .name = "ecdh_secp256k1_6080", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6080_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6080_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6080_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6080_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 800 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6081 for ECDH, tcId is 801 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6081_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6081_ourpubkey[] = { 0x33, 0x22, 0xd4, 0x01, 0x24, 0x3c, 0x4e, 0x25, 0x82, 0xa2, 0x14, 0x7c, 0x10, 0x4d, 0x6e, 0xcb, 0xf7, 0x74, 0xd1, 0x63, 0xdb, 0x0f, 0x5e, 0x53, 0x13, 0xb7, 0xe0, 0xe7, 0x42, 0xd0, 0xe6, 0xbd, 0xa9, 0x18, 0xf8, 0x68, 0x16, 0x99, 0xb1, 0x0a, 0x40, 0x4f, 0xe6, 0x43, 0xb2, 0x25, 0x06, 0x48, 0xd7, 0xfa, 0x09, 0xc1, 0x5d, 0x78, 0xc5, 0x09, 0xdb, 0x0c, 0x5d, 0x15, 0x93, 0xd7, 0x49, 0x8f, }; static const unsigned char ecdh_secp256k1_6081_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3a, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_6081_sharedsecret[] = { 0xce, 0xce, 0x52, 0x1b, 0x8b, 0x5a, 0x32, 0xbb, 0xee, 0x38, 0x93, 0x6b, 0xa7, 0xd6, 0x45, 0x82, 0x4f, 0x23, 0x8e, 0x56, 0x17, 0x01, 0xa3, 0x86, 0xfb, 0x88, 0x8e, 0x01, 0x0d, 0xb5, 0x4b, 0x2f, }; static const wycheproof_ecdh_test ecdh_secp256k1_6081 = { .name = "ecdh_secp256k1_6081", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6081_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6081_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6081_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6081_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 801 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6082 for ECDH, tcId is 802 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6082_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6082_ourpubkey[] = { 0x8e, 0x7b, 0xcd, 0x0b, 0xd3, 0x59, 0x83, 0xa7, 0x71, 0x9c, 0xca, 0x77, 0x64, 0xca, 0x90, 0x67, 0x79, 0xb5, 0x3a, 0x04, 0x3a, 0x9b, 0x8b, 0xca, 0xef, 0xf9, 0x59, 0xf4, 0x3a, 0xd8, 0x60, 0x47, 0xef, 0x48, 0x88, 0xf4, 0xd5, 0xc2, 0x5b, 0x4c, 0x6b, 0xfc, 0xef, 0xbd, 0xf3, 0x56, 0xae, 0xba, 0x86, 0x17, 0x71, 0xd1, 0xb8, 0x02, 0x97, 0x4c, 0x15, 0xef, 0xfb, 0x80, 0x7b, 0x9f, 0xc5, 0x05, }; static const unsigned char ecdh_secp256k1_6082_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xc2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_6082_sharedsecret[] = { 0x82, 0x95, 0x21, 0xb7, 0x9d, 0x71, 0xf5, 0x01, 0x1e, 0x07, 0x97, 0x56, 0xb8, 0x51, 0xa0, 0xd5, 0xc8, 0x35, 0x57, 0x86, 0x61, 0x89, 0xa6, 0x25, 0x8c, 0x1e, 0x78, 0xa1, 0x70, 0x0c, 0x69, 0x04, }; static const wycheproof_ecdh_test ecdh_secp256k1_6082 = { .name = "ecdh_secp256k1_6082", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6082_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6082_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6082_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6082_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 802 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6083 for ECDH, tcId is 803 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6083_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6083_ourpubkey[] = { 0x8f, 0x50, 0x6f, 0x0b, 0x6c, 0x0b, 0x6e, 0x9a, 0x57, 0xa7, 0xf3, 0x6d, 0x97, 0x0c, 0xa4, 0xe3, 0x47, 0xcb, 0xc9, 0x21, 0x46, 0x22, 0x76, 0x42, 0xcb, 0xe7, 0x81, 0xd9, 0xf5, 0x36, 0x2d, 0x33, 0xb9, 0x60, 0x6a, 0xa2, 0xd5, 0x05, 0x9e, 0x8e, 0x6a, 0xcf, 0x3a, 0xbd, 0xb0, 0xe3, 0xcc, 0x97, 0xb7, 0x30, 0x6d, 0xa2, 0xbc, 0x44, 0x71, 0x50, 0xcf, 0xb7, 0x82, 0xf2, 0x78, 0x05, 0xd7, 0xf0, }; static const unsigned char ecdh_secp256k1_6083_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xca, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_6083_sharedsecret[] = { 0x8c, 0x59, 0x34, 0x79, 0x35, 0x05, 0xa6, 0xa1, 0xf8, 0x4d, 0x41, 0x28, 0x33, 0x41, 0x68, 0x0c, 0x49, 0x23, 0xf1, 0xf4, 0xd5, 0x62, 0x98, 0x9a, 0x11, 0xcc, 0x62, 0x6f, 0xea, 0x5e, 0xda, 0x5a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6083 = { .name = "ecdh_secp256k1_6083", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6083_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6083_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6083_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6083_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 803 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6084 for ECDH, tcId is 804 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6084_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6084_ourpubkey[] = { 0x10, 0x0f, 0x44, 0xda, 0x69, 0x6e, 0x71, 0x67, 0x27, 0x91, 0xd0, 0xa0, 0x9b, 0x7b, 0xde, 0x45, 0x9f, 0x12, 0x15, 0xa2, 0x9b, 0x3c, 0x03, 0xbf, 0xef, 0xd7, 0x83, 0x5b, 0x39, 0xa4, 0x8d, 0xb0, 0x32, 0x26, 0x1e, 0xce, 0x6d, 0x5f, 0xf4, 0x88, 0xd1, 0x37, 0x0c, 0xcf, 0xf3, 0xf6, 0xf9, 0x99, 0x48, 0x00, 0xb5, 0xe7, 0x00, 0xae, 0x6a, 0x53, 0xf0, 0x42, 0xa3, 0x28, 0xd4, 0x39, 0xa2, 0x26, }; static const unsigned char ecdh_secp256k1_6084_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8b, 0xd0, 0x36, 0x41, 0x41, }; static const unsigned char ecdh_secp256k1_6084_sharedsecret[] = { 0x35, 0x6c, 0xae, 0xe7, 0xe7, 0xee, 0xe0, 0x31, 0xa1, 0x5e, 0x54, 0xc3, 0xa5, 0xc4, 0xe7, 0x2f, 0x9c, 0x74, 0xbb, 0x28, 0x7c, 0xe6, 0x01, 0x61, 0x9e, 0xf8, 0x5e, 0xb9, 0x6c, 0x28, 0x94, 0x52, }; static const wycheproof_ecdh_test ecdh_secp256k1_6084 = { .name = "ecdh_secp256k1_6084", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6084_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6084_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6084_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6084_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 804 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6085 for ECDH, tcId is 805 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6085_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6085_ourpubkey[] = { 0x6d, 0xf7, 0xb5, 0xa7, 0xa1, 0x26, 0xa6, 0x11, 0x2e, 0x1e, 0x0b, 0xa0, 0x1a, 0xd1, 0xa0, 0xf8, 0x9f, 0x05, 0x5d, 0xd3, 0xc1, 0xc7, 0xe5, 0x33, 0x69, 0x38, 0xad, 0x32, 0xc4, 0x94, 0xb3, 0x19, 0x61, 0xda, 0x66, 0x4b, 0xdf, 0x67, 0xda, 0xca, 0x4d, 0x6f, 0x30, 0xba, 0xcd, 0xa5, 0x0f, 0x4b, 0x57, 0xe1, 0x05, 0x94, 0xbe, 0xb5, 0xa7, 0xc1, 0x14, 0xf6, 0xad, 0xf4, 0x67, 0xe0, 0x1c, 0xfd, }; static const unsigned char ecdh_secp256k1_6085_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x40, 0xc3, }; static const unsigned char ecdh_secp256k1_6085_sharedsecret[] = { 0x09, 0xc7, 0x33, 0x7d, 0xf6, 0xc2, 0xb3, 0x5e, 0xdf, 0x3a, 0x21, 0x38, 0x25, 0x11, 0xcc, 0x5a, 0xdd, 0x1a, 0x71, 0xa8, 0x4c, 0xbf, 0x8d, 0x33, 0x96, 0xa5, 0xbe, 0x54, 0x8d, 0x92, 0xfa, 0x67, }; static const wycheproof_ecdh_test ecdh_secp256k1_6085 = { .name = "ecdh_secp256k1_6085", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6085_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6085_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6085_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6085_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 805 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6086 for ECDH, tcId is 806 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6086_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6086_ourpubkey[] = { 0x10, 0x84, 0x43, 0xb9, 0x48, 0xd1, 0x55, 0x35, 0x84, 0xa2, 0x71, 0x33, 0x3f, 0x7f, 0xbd, 0x04, 0x3c, 0x4d, 0x66, 0xa9, 0x17, 0x06, 0xed, 0xec, 0xbf, 0x07, 0xf6, 0x89, 0x4c, 0x04, 0xf2, 0x99, 0xb1, 0x84, 0xa2, 0x54, 0x5c, 0xb0, 0x43, 0x06, 0x0f, 0xaa, 0xad, 0xf2, 0xb2, 0x47, 0x3b, 0x60, 0x29, 0xfd, 0x7d, 0x2c, 0xd5, 0x20, 0x35, 0xaa, 0xa4, 0xfb, 0xbf, 0xc1, 0x46, 0xa7, 0xe1, 0x90, }; static const unsigned char ecdh_secp256k1_6086_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x03, }; static const unsigned char ecdh_secp256k1_6086_sharedsecret[] = { 0xd1, 0x6c, 0xae, 0xdd, 0x25, 0x79, 0x36, 0x66, 0xf9, 0xe2, 0x6f, 0x53, 0x31, 0x38, 0x21, 0x06, 0xf5, 0x40, 0x95, 0xb3, 0xd2, 0x0d, 0x40, 0xc7, 0x45, 0xb6, 0x8c, 0xa7, 0x6c, 0x0e, 0x69, 0x83, }; static const wycheproof_ecdh_test ecdh_secp256k1_6086 = { .name = "ecdh_secp256k1_6086", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6086_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6086_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6086_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6086_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 806 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6087 for ECDH, tcId is 807 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6087_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6087_ourpubkey[] = { 0x6d, 0x2b, 0x08, 0x5e, 0x9e, 0x38, 0x2e, 0xd1, 0x0b, 0x69, 0xfc, 0x31, 0x1a, 0x03, 0xf8, 0x64, 0x1c, 0xcf, 0xff, 0x21, 0x57, 0x4d, 0xe0, 0x92, 0x75, 0x13, 0xa4, 0x9d, 0x9a, 0x68, 0x8a, 0x00, 0x53, 0x47, 0xd1, 0x46, 0xcc, 0xf6, 0x52, 0xe3, 0x38, 0xc6, 0x22, 0x05, 0xcc, 0x9f, 0xb5, 0x7c, 0x88, 0x9d, 0xc7, 0x55, 0xf4, 0x2a, 0x00, 0xdb, 0x72, 0x45, 0x3b, 0x84, 0xe8, 0x0c, 0x73, 0x34, }; static const unsigned char ecdh_secp256k1_6087_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x23, }; static const unsigned char ecdh_secp256k1_6087_sharedsecret[] = { 0xb8, 0xae, 0x1e, 0x21, 0xd8, 0xb3, 0x4c, 0xe4, 0xca, 0xff, 0xed, 0x71, 0x67, 0xa2, 0x68, 0x68, 0xec, 0x80, 0xa7, 0xd4, 0xa6, 0xa9, 0x8b, 0x63, 0x9d, 0x4d, 0x05, 0xcd, 0x22, 0x65, 0x04, 0xde, }; static const wycheproof_ecdh_test ecdh_secp256k1_6087 = { .name = "ecdh_secp256k1_6087", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6087_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6087_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6087_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6087_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 807 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6088 for ECDH, tcId is 808 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6088_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6088_ourpubkey[] = { 0x49, 0x9f, 0xdf, 0x9e, 0x89, 0x5e, 0x71, 0x9c, 0xfd, 0x64, 0xe6, 0x7f, 0x07, 0xd3, 0x8e, 0x32, 0x26, 0xaa, 0x7b, 0x63, 0x67, 0x89, 0x49, 0xe6, 0xe4, 0x9b, 0x24, 0x1a, 0x60, 0xe8, 0x23, 0xe4, 0x35, 0x3d, 0x09, 0x3b, 0x4a, 0xb1, 0x7a, 0xae, 0x6f, 0x0f, 0xbb, 0x1b, 0x58, 0x4c, 0x2b, 0x9b, 0xb9, 0xbd, 0x86, 0x3d, 0x85, 0xc0, 0x6a, 0x43, 0x39, 0xa0, 0xbf, 0x2a, 0xfc, 0x5e, 0xbc, 0xd4, }; static const unsigned char ecdh_secp256k1_6088_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x33, }; static const unsigned char ecdh_secp256k1_6088_sharedsecret[] = { 0x02, 0x77, 0x63, 0x15, 0xfe, 0x14, 0x7a, 0x36, 0xa4, 0xb0, 0x98, 0x74, 0x92, 0xb6, 0x50, 0x3a, 0xcd, 0xea, 0x60, 0xf9, 0x26, 0x45, 0x0e, 0x5e, 0xdd, 0xb9, 0xf8, 0x8f, 0xc8, 0x21, 0x78, 0xd3, }; static const wycheproof_ecdh_test ecdh_secp256k1_6088 = { .name = "ecdh_secp256k1_6088", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6088_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6088_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6088_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6088_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 808 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6089 for ECDH, tcId is 809 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6089_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6089_ourpubkey[] = { 0xff, 0xf9, 0x7b, 0xd5, 0x75, 0x5e, 0xee, 0xa4, 0x20, 0x45, 0x3a, 0x14, 0x35, 0x52, 0x35, 0xd3, 0x82, 0xf6, 0x47, 0x2f, 0x85, 0x68, 0xa1, 0x8b, 0x2f, 0x05, 0x7a, 0x14, 0x60, 0x29, 0x75, 0x56, 0x51, 0xed, 0x88, 0x85, 0x53, 0x04, 0x49, 0xdf, 0x0c, 0x41, 0x69, 0xfe, 0x80, 0xba, 0x3a, 0x9f, 0x21, 0x7f, 0x0f, 0x09, 0xae, 0x70, 0x1b, 0x5f, 0xc3, 0x78, 0xf3, 0xc8, 0x4f, 0x8a, 0x09, 0x98, }; static const unsigned char ecdh_secp256k1_6089_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3b, }; static const unsigned char ecdh_secp256k1_6089_sharedsecret[] = { 0x39, 0x88, 0xc9, 0xc7, 0x05, 0x0a, 0x28, 0x79, 0x49, 0x34, 0xe5, 0xbd, 0x67, 0x62, 0x9b, 0x55, 0x6d, 0x97, 0xa4, 0x85, 0x8d, 0x22, 0x81, 0x28, 0x35, 0xf4, 0xa3, 0x7d, 0xca, 0x35, 0x19, 0x43, }; static const wycheproof_ecdh_test ecdh_secp256k1_6089 = { .name = "ecdh_secp256k1_6089", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6089_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6089_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6089_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6089_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 809 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6090 for ECDH, tcId is 810 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6090_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6090_ourpubkey[] = { 0xf9, 0x30, 0x8a, 0x01, 0x92, 0x58, 0xc3, 0x10, 0x49, 0x34, 0x4f, 0x85, 0xf8, 0x9d, 0x52, 0x29, 0xb5, 0x31, 0xc8, 0x45, 0x83, 0x6f, 0x99, 0xb0, 0x86, 0x01, 0xf1, 0x13, 0xbc, 0xe0, 0x36, 0xf9, 0xc7, 0x70, 0x84, 0xf0, 0x9c, 0xd2, 0x17, 0xeb, 0xf0, 0x1c, 0xc8, 0x19, 0xd5, 0xc8, 0x0c, 0xa9, 0x9a, 0xff, 0x56, 0x66, 0xcb, 0x3d, 0xdc, 0xe4, 0x93, 0x46, 0x02, 0x89, 0x7b, 0x47, 0x15, 0xbd, }; static const unsigned char ecdh_secp256k1_6090_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3e, }; static const unsigned char ecdh_secp256k1_6090_sharedsecret[] = { 0x34, 0x00, 0x56, 0x94, 0xe3, 0xca, 0xc0, 0x93, 0x32, 0xaa, 0x42, 0x80, 0x7e, 0x3a, 0xfd, 0xc3, 0xb3, 0xb3, 0xbc, 0x7c, 0x7b, 0xe8, 0x87, 0xd1, 0xf9, 0x8d, 0x76, 0x77, 0x8c, 0x55, 0xcf, 0xd7, }; static const wycheproof_ecdh_test ecdh_secp256k1_6090 = { .name = "ecdh_secp256k1_6090", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6090_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6090_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6090_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6090_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 810 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6091 for ECDH, tcId is 811 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6091_peerpubkey[] = { 0x32, 0xbd, 0xd9, 0x78, 0xeb, 0x62, 0xb1, 0xf3, 0x69, 0xa5, 0x6d, 0x09, 0x49, 0xab, 0x85, 0x51, 0xa7, 0xad, 0x52, 0x7d, 0x96, 0x02, 0xe8, 0x91, 0xce, 0x45, 0x75, 0x86, 0xc2, 0xa8, 0x56, 0x9e, 0x98, 0x1e, 0x67, 0xfa, 0xe0, 0x53, 0xb0, 0x3f, 0xc3, 0x3e, 0x1a, 0x29, 0x1f, 0x0a, 0x3b, 0xeb, 0x58, 0xfc, 0xeb, 0x2e, 0x85, 0xbb, 0x12, 0x05, 0xda, 0xce, 0xe1, 0x23, 0x2d, 0xfd, 0x31, 0x6b, }; static const unsigned char ecdh_secp256k1_6091_ourpubkey[] = { 0xc6, 0x04, 0x7f, 0x94, 0x41, 0xed, 0x7d, 0x6d, 0x30, 0x45, 0x40, 0x6e, 0x95, 0xc0, 0x7c, 0xd8, 0x5c, 0x77, 0x8e, 0x4b, 0x8c, 0xef, 0x3c, 0xa7, 0xab, 0xac, 0x09, 0xb9, 0x5c, 0x70, 0x9e, 0xe5, 0xe5, 0x1e, 0x97, 0x01, 0x59, 0xc2, 0x3c, 0xc6, 0x5c, 0x3a, 0x7b, 0xe6, 0xb9, 0x93, 0x15, 0x11, 0x08, 0x09, 0xcd, 0x9a, 0xcd, 0x99, 0x2f, 0x1e, 0xdc, 0x9b, 0xce, 0x55, 0xaf, 0x30, 0x17, 0x05, }; static const unsigned char ecdh_secp256k1_6091_privkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xba, 0xae, 0xdc, 0xe6, 0xaf, 0x48, 0xa0, 0x3b, 0xbf, 0xd2, 0x5e, 0x8c, 0xd0, 0x36, 0x41, 0x3f, }; static const unsigned char ecdh_secp256k1_6091_sharedsecret[] = { 0x4b, 0x52, 0x25, 0x7d, 0x8b, 0x3b, 0xa3, 0x87, 0x79, 0x7f, 0xdf, 0x7a, 0x75, 0x2f, 0x19, 0x5d, 0xdc, 0x4f, 0x7d, 0x76, 0x26, 0x3d, 0xe6, 0x1d, 0x0d, 0x52, 0xa5, 0xec, 0x14, 0xa3, 0x6c, 0xbf, }; static const wycheproof_ecdh_test ecdh_secp256k1_6091 = { .name = "ecdh_secp256k1_6091", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6091_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6091_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6091_privkey, .privkeylen = 32, .sharedsecret = ecdh_secp256k1_6091_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case private key, tcId is 811 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6092 for ECDH, tcId is 812 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6092_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6092_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6092_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6092 = { .name = "ecdh_secp256k1_6092", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6092_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6092_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6092_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 812 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6093 for ECDH, tcId is 813 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6093_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_6093_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6093_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6093 = { .name = "ecdh_secp256k1_6093", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6093_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6093_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6093_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 813 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6094 for ECDH, tcId is 814 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6094_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_6094_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6094_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6094 = { .name = "ecdh_secp256k1_6094", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6094_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6094_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6094_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 814 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6095 for ECDH, tcId is 815 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6095_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_6095_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6095_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6095 = { .name = "ecdh_secp256k1_6095", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6095_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6095_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6095_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 815 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6096 for ECDH, tcId is 816 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6096_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6096_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6096_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6096 = { .name = "ecdh_secp256k1_6096", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6096_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6096_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6096_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 816 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6097 for ECDH, tcId is 817 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6097_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_6097_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6097_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6097 = { .name = "ecdh_secp256k1_6097", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6097_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6097_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6097_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 817 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6098 for ECDH, tcId is 818 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6098_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_6098_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6098_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6098 = { .name = "ecdh_secp256k1_6098", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6098_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6098_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6098_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 818 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6099 for ECDH, tcId is 819 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6099_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_6099_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6099_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6099 = { .name = "ecdh_secp256k1_6099", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6099_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6099_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6099_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 819 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6100 for ECDH, tcId is 820 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6100_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6100_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6100_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6100 = { .name = "ecdh_secp256k1_6100", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6100_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6100_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6100_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 820 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6101 for ECDH, tcId is 821 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6101_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_6101_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6101_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6101 = { .name = "ecdh_secp256k1_6101", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6101_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6101_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6101_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 821 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6102 for ECDH, tcId is 822 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6102_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_6102_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6102_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6102 = { .name = "ecdh_secp256k1_6102", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6102_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6102_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6102_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 822 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6103 for ECDH, tcId is 823 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6103_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_6103_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6103_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6103 = { .name = "ecdh_secp256k1_6103", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6103_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6103_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6103_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 823 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6104 for ECDH, tcId is 824 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6104_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6104_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6104_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6104 = { .name = "ecdh_secp256k1_6104", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6104_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6104_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6104_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 824 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6105 for ECDH, tcId is 825 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6105_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char ecdh_secp256k1_6105_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6105_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6105 = { .name = "ecdh_secp256k1_6105", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6105_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6105_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6105_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 825 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6106 for ECDH, tcId is 826 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6106_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2e, }; static const unsigned char ecdh_secp256k1_6106_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6106_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6106 = { .name = "ecdh_secp256k1_6106", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6106_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6106_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6106_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 826 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6107 for ECDH, tcId is 827 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6107_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0x2f, }; static const unsigned char ecdh_secp256k1_6107_ourpubkey[] = { 0x59, 0x78, 0xf3, 0x2e, 0x4d, 0x56, 0xf3, 0xec, 0x76, 0x33, 0xe6, 0xc0, 0x30, 0x27, 0x30, 0xe5, 0xda, 0x5e, 0x24, 0x6a, 0x2a, 0x55, 0x95, 0x66, 0xa8, 0x35, 0x18, 0xcd, 0x2c, 0x16, 0x9c, 0x30, 0x2e, 0x64, 0xd6, 0x15, 0x0b, 0x71, 0x31, 0x33, 0x1b, 0xfc, 0xe6, 0x31, 0x58, 0x15, 0x0e, 0x85, 0xe8, 0x75, 0x60, 0x5e, 0x8c, 0x93, 0xa1, 0x08, 0xf2, 0xf1, 0x9a, 0x2a, 0xf9, 0x2f, 0x37, 0xa7, }; static const unsigned char ecdh_secp256k1_6107_privkey[] = { 0xc6, 0xca, 0xfb, 0x74, 0xe2, 0xa5, 0x0c, 0x83, 0xb3, 0xd2, 0x32, 0xc4, 0x58, 0x52, 0x37, 0xf4, 0x4d, 0x4c, 0x54, 0x33, 0xc4, 0xb3, 0xf5, 0x0c, 0xe9, 0x78, 0xe6, 0xae, 0xda, 0x3a, 0x4f, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6107 = { .name = "ecdh_secp256k1_6107", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6107_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6107_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6107_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "point is not on curve, tcId is 827 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6108 for ECDH, tcId is 828 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6108_peerpubkey[] = { 0x49, 0xc2, 0x48, 0xed, 0xc6, 0x59, 0xe1, 0x84, 0x82, 0xb7, 0x10, 0x57, 0x48, 0xa4, 0xb9, 0x5d, 0x3a, 0x46, 0x95, 0x2a, 0x5b, 0xa7, 0x2d, 0xa0, 0xd7, 0x02, 0xdc, 0x97, 0xa6, 0x4e, 0x99, 0x79, 0x9d, 0x8c, 0xff, 0x7a, 0x5c, 0x4b, 0x92, 0x5e, 0x43, 0x60, 0xec, 0xe2, 0x5c, 0xcf, 0x30, 0x7d, 0x7a, 0x9a, 0x70, 0x63, 0x28, 0x6b, 0xbd, 0x16, 0xef, 0x64, 0xc6, 0x5f, 0x54, 0x67, 0x57, 0xe4, }; static const unsigned char ecdh_secp256k1_6108_ourpubkey[] = { 0xb5, 0x0e, 0x34, 0x24, 0x46, 0xab, 0x7e, 0xfa, 0x6c, 0xc2, 0xd6, 0xca, 0xad, 0x94, 0xf9, 0x3d, 0xcf, 0x70, 0xb1, 0xec, 0xc2, 0x82, 0x18, 0x13, 0x4f, 0x98, 0xa7, 0x76, 0x90, 0x90, 0x6c, 0x70, 0x78, 0x2b, 0x6a, 0xf1, 0x89, 0xe8, 0x1a, 0xcc, 0x4d, 0xe9, 0x5e, 0x7c, 0x7f, 0xa9, 0x55, 0xb0, 0x47, 0x5a, 0x7b, 0x4c, 0xd2, 0x5b, 0xc6, 0xb1, 0xdd, 0xbc, 0xd6, 0x17, 0x7a, 0x77, 0x34, 0x29, }; static const unsigned char ecdh_secp256k1_6108_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6108 = { .name = "ecdh_secp256k1_6108", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6108_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6108_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6108_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point not on curve, tcId is 828 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6109 for ECDH, tcId is 829 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6109_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char ecdh_secp256k1_6109_ourpubkey[] = { 0xb5, 0x0e, 0x34, 0x24, 0x46, 0xab, 0x7e, 0xfa, 0x6c, 0xc2, 0xd6, 0xca, 0xad, 0x94, 0xf9, 0x3d, 0xcf, 0x70, 0xb1, 0xec, 0xc2, 0x82, 0x18, 0x13, 0x4f, 0x98, 0xa7, 0x76, 0x90, 0x90, 0x6c, 0x70, 0x78, 0x2b, 0x6a, 0xf1, 0x89, 0xe8, 0x1a, 0xcc, 0x4d, 0xe9, 0x5e, 0x7c, 0x7f, 0xa9, 0x55, 0xb0, 0x47, 0x5a, 0x7b, 0x4c, 0xd2, 0x5b, 0xc6, 0xb1, 0xdd, 0xbc, 0xd6, 0x17, 0x7a, 0x77, 0x34, 0x29, }; static const unsigned char ecdh_secp256k1_6109_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6109 = { .name = "ecdh_secp256k1_6109", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6109_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6109_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6109_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "public point = (0,0), tcId is 829 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6110 for ECDH, tcId is 830 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6110_peerpubkey[] = { 0xcb, 0xf6, 0x60, 0x65, 0x95, 0xa3, 0xee, 0x50, 0xf9, 0xfc, 0xea, 0xa2, 0x79, 0x8c, 0x27, 0x40, 0xc8, 0x25, 0x40, 0x51, 0x6b, 0x4e, 0x5a, 0x7d, 0x36, 0x1f, 0xf2, 0x4e, 0x9d, 0xd1, 0x53, 0x64, 0xe5, 0x40, 0x8b, 0x2e, 0x67, 0x9f, 0x9d, 0x53, 0x10, 0xd1, 0xf6, 0x89, 0x3b, 0x36, 0xce, 0x16, 0xb4, 0xa5, 0x07, 0x50, 0x91, 0x75, 0xfc, 0xb5, 0x2a, 0xea, 0x53, 0xb7, 0x81, 0x55, 0x6b, 0x39, }; static const unsigned char ecdh_secp256k1_6110_ourpubkey[] = { 0xb5, 0x0e, 0x34, 0x24, 0x46, 0xab, 0x7e, 0xfa, 0x6c, 0xc2, 0xd6, 0xca, 0xad, 0x94, 0xf9, 0x3d, 0xcf, 0x70, 0xb1, 0xec, 0xc2, 0x82, 0x18, 0x13, 0x4f, 0x98, 0xa7, 0x76, 0x90, 0x90, 0x6c, 0x70, 0x78, 0x2b, 0x6a, 0xf1, 0x89, 0xe8, 0x1a, 0xcc, 0x4d, 0xe9, 0x5e, 0x7c, 0x7f, 0xa9, 0x55, 0xb0, 0x47, 0x5a, 0x7b, 0x4c, 0xd2, 0x5b, 0xc6, 0xb1, 0xdd, 0xbc, 0xd6, 0x17, 0x7a, 0x77, 0x34, 0x29, }; static const unsigned char ecdh_secp256k1_6110_privkey[] = { 0xcf, 0xe7, 0x5e, 0xe7, 0x64, 0x19, 0x7a, 0xa7, 0x73, 0x2a, 0x54, 0x78, 0x55, 0x6b, 0x47, 0x88, 0x98, 0x42, 0x3d, 0x2b, 0xc0, 0xe4, 0x84, 0xa6, 0xeb, 0xb3, 0x67, 0x4a, 0x60, 0x36, 0xa6, 0x5d, }; static const wycheproof_ecdh_test ecdh_secp256k1_6110 = { .name = "ecdh_secp256k1_6110", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6110_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6110_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6110_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "using secp256r1, tcId is 830 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6111 for ECDH, tcId is 831 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6111_peerpubkey[] = { 0x06, 0x37, 0x28, 0x52, 0x58, 0x40, 0x37, 0x72, 0x2a, 0x7f, 0x9b, 0xfa, 0xad, 0x56, 0x61, 0xac, 0xb6, 0x23, 0x16, 0x2d, 0x45, 0xf7, 0x0a, 0x55, 0x2c, 0x61, 0x7f, 0x40, 0x80, 0xe8, 0x73, 0xaa, 0x43, 0x60, 0x92, 0x75, 0xdf, 0xf6, 0xdc, 0xaa, 0xa1, 0x22, 0xa7, 0x45, 0xd0, 0xf1, 0x54, 0x68, 0x1f, 0x9c, 0x77, 0x26, 0x86, 0x7b, 0x43, 0xe7, 0x52, 0x3b, 0x7f, 0x5a, 0xb5, 0xea, 0x96, 0x3e, }; static const unsigned char ecdh_secp256k1_6111_ourpubkey[] = { 0x79, 0x6c, 0x79, 0x21, 0x63, 0x57, 0x4e, 0x4f, 0x78, 0x1f, 0x6f, 0x04, 0x20, 0x8a, 0xda, 0x53, 0xb8, 0x02, 0x51, 0xac, 0x44, 0xd4, 0xf8, 0x1c, 0x9b, 0x8f, 0xe2, 0x36, 0x9a, 0x02, 0x07, 0xac, 0x21, 0xa4, 0x2f, 0x16, 0x25, 0xa3, 0xb7, 0xc4, 0x5d, 0x4e, 0xeb, 0x35, 0xed, 0xe2, 0xf5, 0x8e, 0x40, 0xf0, 0x20, 0x0d, 0x49, 0xae, 0xe1, 0x31, 0x8a, 0x6f, 0xde, 0xee, 0x4b, 0x1e, 0xab, 0xf7, }; static const unsigned char ecdh_secp256k1_6111_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6111 = { .name = "ecdh_secp256k1_6111", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6111_peerpubkey, .peerpubkeylen = 64, .compressed = 0, .ourpubkey = ecdh_secp256k1_6111_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6111_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp256r1, tcId is 831 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6112 for ECDH, tcId is 832 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6112_peerpubkey[] = { 0x0e, 0xf5, 0x80, 0x47, 0x31, 0xd9, 0x18, 0xf0, 0x37, 0x50, 0x6e, 0xe0, 0x0b, 0x86, 0x02, 0xb8, 0x77, 0xc7, 0xd5, 0x09, 0xff, 0xa2, 0xc0, 0x84, 0x7a, 0x86, 0xe7, 0xa2, 0xd3, 0x58, 0xba, 0x7c, 0x98, 0x1c, 0x2a, 0x74, 0xb2, 0x24, 0x01, 0xac, 0x61, 0x53, 0x07, 0xa6, 0xde, 0xb2, 0x75, 0x40, 0x2f, 0xa6, 0xc8, 0x21, 0x8c, 0x33, 0x74, 0xf8, 0xa9, 0x17, 0x52, 0xd2, 0xef, 0xf6, 0xbd, 0x14, 0xad, 0x8c, 0xae, 0x59, 0x6d, 0x2f, 0x37, 0xda, 0xe8, 0xae, 0xec, 0x08, 0x57, 0x60, 0xed, 0xf4, 0xfd, 0xa9, 0xa7, 0xcf, 0x70, 0x25, 0x38, 0x98, 0xa5, 0x41, 0x83, 0x46, 0x90, 0x72, 0xa5, 0x61, }; static const unsigned char ecdh_secp256k1_6112_ourpubkey[] = { 0x79, 0x6c, 0x79, 0x21, 0x63, 0x57, 0x4e, 0x4f, 0x78, 0x1f, 0x6f, 0x04, 0x20, 0x8a, 0xda, 0x53, 0xb8, 0x02, 0x51, 0xac, 0x44, 0xd4, 0xf8, 0x1c, 0x9b, 0x8f, 0xe2, 0x36, 0x9a, 0x02, 0x07, 0xac, 0x21, 0xa4, 0x2f, 0x16, 0x25, 0xa3, 0xb7, 0xc4, 0x5d, 0x4e, 0xeb, 0x35, 0xed, 0xe2, 0xf5, 0x8e, 0x40, 0xf0, 0x20, 0x0d, 0x49, 0xae, 0xe1, 0x31, 0x8a, 0x6f, 0xde, 0xee, 0x4b, 0x1e, 0xab, 0xf7, }; static const unsigned char ecdh_secp256k1_6112_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6112 = { .name = "ecdh_secp256k1_6112", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6112_peerpubkey, .peerpubkeylen = 96, .compressed = 0, .ourpubkey = ecdh_secp256k1_6112_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6112_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp384r1, tcId is 832 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /* Test 6113 for ECDH, tcId is 833 in file ecdh_webcrypto_test.json */ #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) static const unsigned char ecdh_secp256k1_6113_peerpubkey[] = { 0x00, 0x92, 0x1d, 0xa5, 0x71, 0x10, 0xdb, 0x26, 0xc7, 0x83, 0x8a, 0x69, 0xd5, 0x74, 0xfc, 0x98, 0x58, 0x8c, 0x5c, 0x07, 0xa7, 0x92, 0xcb, 0x37, 0x9f, 0x46, 0x66, 0x4c, 0xc7, 0x73, 0xc1, 0xe1, 0xf6, 0xfa, 0x16, 0x14, 0x86, 0x67, 0x74, 0x8e, 0xde, 0x23, 0x2d, 0x1a, 0x1f, 0x1c, 0xea, 0x7f, 0x15, 0x2c, 0x5d, 0x58, 0x61, 0x72, 0xac, 0xbe, 0xaa, 0x48, 0x41, 0x6b, 0xcb, 0xd7, 0x0b, 0xb2, 0x7f, 0x0f, 0x01, 0xb4, 0x47, 0x7e, 0x1a, 0xe7, 0x4b, 0xf4, 0xf0, 0x93, 0x18, 0x4a, 0x9f, 0x26, 0xf1, 0x03, 0x71, 0x2c, 0xcf, 0x6c, 0xeb, 0x45, 0xa0, 0x50, 0x5b, 0x19, 0x16, 0x06, 0xd8, 0x97, 0xed, 0xaf, 0x87, 0x2b, 0x37, 0xf0, 0xf9, 0x0a, 0x93, 0x30, 0x00, 0xa8, 0x0f, 0xc3, 0x20, 0x70, 0x48, 0x32, 0x3c, 0x16, 0x88, 0x3a, 0x3d, 0x67, 0xa9, 0x0a, 0xa7, 0x8b, 0xcc, 0x9c, 0x5e, 0x58, 0xd7, 0x84, 0xb9, 0xb9, }; static const unsigned char ecdh_secp256k1_6113_ourpubkey[] = { 0x79, 0x6c, 0x79, 0x21, 0x63, 0x57, 0x4e, 0x4f, 0x78, 0x1f, 0x6f, 0x04, 0x20, 0x8a, 0xda, 0x53, 0xb8, 0x02, 0x51, 0xac, 0x44, 0xd4, 0xf8, 0x1c, 0x9b, 0x8f, 0xe2, 0x36, 0x9a, 0x02, 0x07, 0xac, 0x21, 0xa4, 0x2f, 0x16, 0x25, 0xa3, 0xb7, 0xc4, 0x5d, 0x4e, 0xeb, 0x35, 0xed, 0xe2, 0xf5, 0x8e, 0x40, 0xf0, 0x20, 0x0d, 0x49, 0xae, 0xe1, 0x31, 0x8a, 0x6f, 0xde, 0xee, 0x4b, 0x1e, 0xab, 0xf7, }; static const unsigned char ecdh_secp256k1_6113_privkey[] = { 0xda, 0xfa, 0x20, 0x9e, 0x0f, 0x81, 0x11, 0x9a, 0x4a, 0xfa, 0x3f, 0x1b, 0xc4, 0x6e, 0x2f, 0x79, 0x47, 0x35, 0x4e, 0x37, 0x27, 0xc6, 0x08, 0xb0, 0x5c, 0x49, 0x50, 0xb1, 0x03, 0x86, 0x64, 0x3a, }; static const wycheproof_ecdh_test ecdh_secp256k1_6113 = { .name = "ecdh_secp256k1_6113", .ecdh_alg = ECCCDH, .curve = &secp256k1_str_params, .peerpubkey = ecdh_secp256k1_6113_peerpubkey, .peerpubkeylen = 132, .compressed = 0, .ourpubkey = ecdh_secp256k1_6113_ourpubkey, .ourpubkeylen = 64, .privkey = ecdh_secp256k1_6113_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "Public key uses wrong curve: secp521r1, tcId is 833 in file ecdh_webcrypto_test.json", }; #endif /* defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) */ /*****************/ ATTRIBUTE_USED static const wycheproof_ecdh_test *wycheproof_ecdh_all_tests[] = { #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_0, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_1, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_2, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_4, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_5, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_6, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_7, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_8, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_9, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_10, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_11, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_12, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_13, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_14, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_15, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_16, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_17, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_18, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_19, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_20, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_21, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_22, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_23, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_24, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_25, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_26, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_27, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_28, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_29, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_30, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_31, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_32, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_33, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_34, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_35, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_36, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_37, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_38, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_39, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_40, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_41, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_42, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_43, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_44, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_45, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_46, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_47, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_48, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_49, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_50, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_51, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_52, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_53, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_54, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_55, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_56, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_57, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_58, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_59, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_60, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_61, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_62, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_63, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_64, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_65, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_66, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_67, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_68, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_69, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_70, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_71, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_72, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_73, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_74, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_75, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_76, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_77, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_78, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_79, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_80, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_81, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_82, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_83, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_84, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_85, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_86, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_87, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_88, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_89, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_90, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_91, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_92, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_93, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_94, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_95, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_96, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_97, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_98, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_99, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_1078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_1276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_1441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_1713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_1999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_2550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224R1) &ecdh_secp224r1_2657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_2885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_2999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_3077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_3322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_3536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP224K1) &ecdh_secp224k1_3610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224R1) &ecdh_brainpoolp224r1_3853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_3999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256R1) &ecdh_brainpoolp256r1_4143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320R1) &ecdh_brainpoolp320r1_4334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384R1) &ecdh_brainpoolp384r1_4465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512R1) &ecdh_brainpoolp512r1_4609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP224T1) &ecdh_brainpoolp224t1_4759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP256T1) &ecdh_brainpoolp256t1_4931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_4999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP320T1) &ecdh_brainpoolp320t1_5046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5113, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5114, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5115, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5116, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5117, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5118, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5119, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5120, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5121, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5122, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5123, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5124, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5125, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5126, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5127, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5128, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5129, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5130, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5131, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5132, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5133, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5134, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5135, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5136, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5137, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5138, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5139, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5140, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5141, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5142, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5143, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5144, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5145, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5146, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5147, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5148, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5149, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5150, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5151, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5152, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5153, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5154, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5155, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5156, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5157, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5158, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5159, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5160, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5161, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5162, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5163, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5164, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5165, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5166, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP384T1) &ecdh_brainpoolp384t1_5167, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5168, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5169, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5170, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5171, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5172, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5173, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5174, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5175, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5176, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5177, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5178, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5179, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5180, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5181, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5182, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5183, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5184, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5185, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5186, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5187, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5188, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5189, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5190, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5191, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5192, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5193, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5194, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5195, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5196, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5197, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5198, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5199, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5200, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5201, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5202, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5203, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5204, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5205, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5206, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5207, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5208, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5209, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5210, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5211, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5212, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5213, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5214, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5215, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5216, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5217, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5218, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5219, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5220, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5221, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5222, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5223, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5224, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5225, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5226, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5227, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5228, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5229, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5230, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5231, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5232, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5233, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5234, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5235, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5236, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5237, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5238, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5239, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5240, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5241, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5242, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5243, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5244, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5245, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5246, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5247, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5248, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5249, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5250, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5251, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5252, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5253, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5254, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5255, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5256, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5257, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5258, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5259, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5260, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5261, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5262, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5263, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5264, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5265, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5266, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5267, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5268, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5269, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5270, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5271, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5272, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5273, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5274, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5275, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5276, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5277, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5278, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5279, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_BRAINPOOLP512T1) &ecdh_brainpoolp512t1_5280, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5281, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5282, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5283, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5284, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5285, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5286, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5287, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5288, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5289, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5290, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5291, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5292, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5293, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5294, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5295, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5296, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5297, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5298, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5299, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5300, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5301, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5302, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5303, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5304, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5305, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5306, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5307, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5308, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5309, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5310, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5311, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5312, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5313, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5314, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5315, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5316, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5317, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5318, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5319, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5320, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5321, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5322, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5323, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5324, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5325, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5326, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5327, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5328, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5329, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5330, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5331, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5332, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5333, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5334, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5335, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5336, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5337, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5338, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5339, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5340, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5341, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5342, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5343, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5344, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5345, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5346, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5347, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5348, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5349, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5350, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5351, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5352, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5353, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5354, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5355, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5356, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5357, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5358, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5359, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5360, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5361, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5362, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5363, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5364, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5365, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5366, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5367, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5368, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5369, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5370, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5371, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5372, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5373, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5374, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5375, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5376, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5377, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5378, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5379, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5380, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5381, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5382, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5383, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5384, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5385, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5386, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5387, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5388, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5389, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5390, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5391, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5392, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5393, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5394, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5395, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5396, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5397, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5398, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5399, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5400, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5401, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5402, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5403, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5404, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5405, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5406, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5407, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5408, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5409, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5410, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5411, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5412, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5413, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5414, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5415, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5416, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5417, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5418, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5419, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5420, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5421, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5422, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5423, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5424, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5425, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5426, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5427, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5428, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5429, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5430, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5431, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5432, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5433, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5434, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5435, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5436, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5437, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5438, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5439, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5440, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5441, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5442, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5443, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5444, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5445, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5446, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5447, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5448, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5449, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5450, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5451, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5452, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5453, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5454, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5455, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5456, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5457, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5458, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5459, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5460, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5461, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5462, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5463, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5464, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5465, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5466, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5467, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5468, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5469, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5470, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5471, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5472, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5473, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5474, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5475, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5476, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5477, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5478, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5479, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5480, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5481, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5482, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5483, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5484, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5485, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5486, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5487, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5488, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5489, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5490, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5491, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5492, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256R1) &ecdh_secp256r1_5493, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5494, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5495, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5496, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5497, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5498, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5499, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5500, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5501, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5502, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5503, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5504, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5505, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5506, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5507, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5508, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5509, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5510, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5511, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5512, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5513, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5514, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5515, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5516, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5517, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5518, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5519, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5520, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5521, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5522, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5523, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5524, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5525, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5526, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5527, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5528, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5529, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5530, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5531, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5532, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5533, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5534, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5535, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5536, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5537, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5538, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5539, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5540, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5541, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5542, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5543, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5544, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5545, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5546, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5547, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5548, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5549, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5550, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5551, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5552, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5553, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5554, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5555, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5556, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5557, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5558, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5559, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5560, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5561, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5562, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5563, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5564, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5565, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5566, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5567, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5568, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5569, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5570, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5571, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5572, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5573, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5574, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5575, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5576, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5577, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5578, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5579, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5580, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5581, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5582, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5583, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5584, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5585, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5586, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5587, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5588, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5589, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5590, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5591, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5592, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5593, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5594, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5595, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5596, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5597, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5598, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5599, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5600, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5601, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5602, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5603, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5604, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5605, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5606, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5607, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5608, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5609, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5610, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5611, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5612, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5613, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5614, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5615, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5616, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5617, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5618, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5619, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5620, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5621, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5622, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5623, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5624, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5625, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5626, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5627, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5628, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5629, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5630, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5631, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5632, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5633, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5634, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5635, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5636, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5637, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5638, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5639, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5640, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5641, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5642, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5643, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5644, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5645, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5646, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5647, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5648, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5649, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5650, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5651, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5652, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5653, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5654, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5655, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5656, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5657, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5658, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5659, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5660, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5661, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5662, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5663, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5664, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5665, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5666, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5667, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5668, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5669, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5670, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5671, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5672, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5673, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5674, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5675, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5676, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5677, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5678, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP384R1) &ecdh_secp384r1_5679, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5680, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5681, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5682, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5683, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5684, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5685, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5686, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5687, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5688, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5689, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5690, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5691, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5692, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5693, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5694, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5695, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5696, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5697, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5698, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5699, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5700, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5701, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5702, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5703, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5704, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5705, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5706, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5707, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5708, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5709, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5710, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5711, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5712, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5713, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5714, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5715, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5716, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5717, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5718, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5719, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5720, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5721, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5722, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5723, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5724, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5725, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5726, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5727, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5728, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5729, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5730, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5731, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5732, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5733, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5734, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5735, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5736, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5737, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5738, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5739, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5740, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5741, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5742, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5743, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5744, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5745, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5746, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5747, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5748, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5749, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5750, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5751, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5752, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5753, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5754, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5755, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5756, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5757, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5758, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5759, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5760, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5761, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5762, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5763, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5764, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5765, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5766, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5767, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5768, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5769, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5770, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5771, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5772, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5773, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5774, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5775, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5776, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5777, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5778, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5779, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5780, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5781, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5782, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5783, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5784, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5785, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5786, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5787, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5788, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5789, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5790, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5791, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5792, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5793, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5794, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5795, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5796, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5797, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5798, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5799, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5800, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5801, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5802, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5803, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5804, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5805, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5806, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5807, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5808, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5809, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5810, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5811, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5812, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5813, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5814, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5815, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5816, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5817, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5818, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5819, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5820, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5821, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5822, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5823, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5824, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5825, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5826, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5827, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5828, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5829, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5830, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5831, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5832, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5833, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5834, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5835, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5836, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5837, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5838, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5839, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5840, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5841, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5842, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5843, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5844, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5845, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5846, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5847, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5848, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5849, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5850, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5851, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5852, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5853, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5854, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5855, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5856, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5857, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5858, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5859, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5860, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5861, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5862, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5863, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5864, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5865, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5866, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5867, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5868, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5869, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5870, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5871, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5872, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5873, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5874, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5875, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5876, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5877, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5878, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5879, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5880, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5881, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5882, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5883, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5884, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5885, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5886, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5887, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5888, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5889, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5890, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5891, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5892, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5893, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5894, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5895, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5896, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5897, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5898, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5899, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5900, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5901, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5902, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5903, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5904, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5905, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5906, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5907, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5908, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5909, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP521R1) &ecdh_secp521r1_5910, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5911, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5912, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5913, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5914, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5915, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5916, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5917, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5918, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5919, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5920, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5921, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5922, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5923, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5924, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5925, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5926, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5927, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5928, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5929, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5930, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5931, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5932, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5933, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5934, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5935, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5936, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5937, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5938, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5939, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5940, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5941, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5942, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5943, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5944, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5945, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5946, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5947, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5948, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5949, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5950, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5951, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5952, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5953, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5954, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5955, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5956, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5957, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5958, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5959, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5960, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5961, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5962, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5963, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5964, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5965, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5966, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5967, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5968, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5969, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5970, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5971, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5972, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5973, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5974, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5975, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5976, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5977, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5978, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5979, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5980, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5981, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5982, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5983, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5984, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5985, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5986, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5987, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5988, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5989, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5990, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5991, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5992, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5993, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5994, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5995, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5996, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5997, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5998, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_5999, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6000, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6001, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6002, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6003, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6004, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6005, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6006, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6007, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6008, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6009, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6010, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6011, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6012, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6013, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6014, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6015, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6016, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6017, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6018, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6019, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6020, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6021, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6022, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6023, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6024, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6025, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6026, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6027, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6028, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6029, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6030, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6031, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6032, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6033, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6034, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6035, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6036, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6037, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6038, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6039, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6040, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6041, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6042, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6043, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6044, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6045, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6046, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6047, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6048, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6049, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6050, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6051, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6052, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6053, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6054, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6055, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6056, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6057, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6058, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6059, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6060, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6061, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6062, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6063, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6064, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6065, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6066, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6067, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6068, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6069, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6070, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6071, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6072, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6073, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6074, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6075, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6076, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6077, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6078, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6079, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6080, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6081, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6082, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6083, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6084, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6085, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6086, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6087, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6088, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6089, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6090, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6091, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6092, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6093, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6094, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6095, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6096, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6097, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6098, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6099, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6100, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6101, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6102, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6103, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6104, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6105, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6106, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6107, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6108, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6109, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6110, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6111, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6112, #endif #if defined(WITH_ECCCDH) && defined(WITH_CURVE_SECP256K1) &ecdh_secp256k1_6113, #endif NULL, }; #define NUM_WYCHEPROOF_ECDH_TESTS (sizeof(wycheproof_ecdh_all_tests) / sizeof(wycheproof_ecdh_test *)) /******** ECDH tests extracted from ecdh_brainpoolP224r1_test.json ecdh_brainpoolP256r1_test.json ecdh_brainpoolP320r1_test.json ecdh_brainpoolP384r1_test.json ecdh_brainpoolP512r1_test.json ecdh_secp224r1_ecpoint_test.json ecdh_secp224r1_test.json ecdh_secp256k1_test.json ecdh_secp256r1_ecpoint_test.json ecdh_secp256r1_test.json ecdh_secp384r1_ecpoint_test.json ecdh_secp384r1_test.json ecdh_secp521r1_ecpoint_test.json ecdh_secp521r1_test.json ecdh_test.json ecdh_webcrypto_test.json is 6114, skipped = 2872 **********/ #define NUM_WYCHEPROOF_ECDH_TESTS_IMPORTED 6114 #define NUM_WYCHEPROOF_ECDH_TESTS_SKIPPED 2872 #define NUM_WYCHEPROOF_ECDH_TESTS_ACCEPTABLE 774 #define NUM_WYCHEPROOF_ECDH_TESTS_VALID 4549 #define NUM_WYCHEPROOF_ECDH_TESTS_INVALID 791 /* Test 0 for EDDSA, tcId is 1 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_0_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_0_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_0_sig[] = { 0xcf, 0x79, 0x53, 0x00, 0x76, 0x66, 0xe1, 0x2f, 0x73, 0xaf, 0x9e, 0xc9, 0x2e, 0x3e, 0x01, 0x8d, 0xa5, 0xee, 0x5a, 0x8d, 0x5b, 0x17, 0xf5, 0x10, 0x0a, 0x35, 0x4c, 0x58, 0xf1, 0xd5, 0xf4, 0xbb, 0x37, 0xab, 0x83, 0x5c, 0x52, 0xf7, 0x23, 0x74, 0xc7, 0x2d, 0x61, 0x26, 0x89, 0x14, 0x9c, 0xf6, 0xd3, 0x6a, 0x70, 0xdb, 0x6d, 0xc5, 0xa6, 0xc4, 0x00, 0xb5, 0x97, 0x34, 0x8e, 0x0e, 0x31, 0xe5, 0x1e, 0x65, 0xbb, 0x14, 0x4e, 0x63, 0xc8, 0x92, 0xa3, 0x67, 0xb4, 0xc0, 0x55, 0xc0, 0x36, 0xaa, 0x6c, 0xd7, 0xe7, 0x28, 0xcd, 0xd2, 0xa0, 0x98, 0x96, 0x3b, 0xda, 0x86, 0x39, 0x03, 0xe6, 0xdd, 0x02, 0x5b, 0x5a, 0x5d, 0x89, 0x12, 0x09, 0xf4, 0xe2, 0x85, 0x37, 0x69, 0x48, 0x04, 0xe5, 0x0b, 0x08, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_0 = { .name = "eddsa_wei448_0", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_0_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_0_privkey, .privkeylen = 57, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei448_0_sig, .siglen = 114, .result = 1, .comment = ", tcId is 1 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 1 for EDDSA, tcId is 2 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_1_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_1_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_1_msg[] = { 0x78, }; static const unsigned char eddsa_wei448_1_sig[] = { 0xc5, 0x6e, 0x94, 0xd5, 0xc9, 0xca, 0x86, 0x0c, 0x24, 0x4f, 0x33, 0xdb, 0x55, 0x6b, 0xf6, 0xb3, 0xce, 0xc3, 0x8b, 0x02, 0x4b, 0x77, 0x60, 0x4a, 0x35, 0xd6, 0xa0, 0x72, 0x11, 0xb1, 0x31, 0x6b, 0x9a, 0x02, 0x71, 0x33, 0xc3, 0x74, 0xb8, 0x6f, 0x72, 0x66, 0x5c, 0xc4, 0x5c, 0xe0, 0x15, 0x83, 0xa2, 0xe0, 0xf2, 0x77, 0x5c, 0x61, 0x72, 0xda, 0x80, 0x1a, 0xce, 0xf1, 0x68, 0x71, 0x7c, 0xab, 0x11, 0x96, 0xcd, 0xdf, 0xb1, 0x49, 0x35, 0x9d, 0xfe, 0xf5, 0x89, 0x75, 0x62, 0x57, 0xcc, 0x2d, 0x6b, 0x02, 0xfc, 0x51, 0x6d, 0x8d, 0x41, 0xb4, 0xad, 0xaa, 0x3f, 0x11, 0x42, 0x8f, 0x41, 0x41, 0x0e, 0xf0, 0xdc, 0x3c, 0x1b, 0x00, 0x8d, 0x3d, 0x05, 0x21, 0x73, 0xd4, 0x38, 0x95, 0x08, 0xed, 0x01, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_1 = { .name = "eddsa_wei448_1", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_1_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_1_privkey, .privkeylen = 57, .msg = eddsa_wei448_1_msg, .msglen = 1, .sig = eddsa_wei448_1_sig, .siglen = 114, .result = 1, .comment = ", tcId is 2 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 2 for EDDSA, tcId is 3 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_2_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_2_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_2_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_2_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_2 = { .name = "eddsa_wei448_2", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_2_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_2_privkey, .privkeylen = 57, .msg = eddsa_wei448_2_msg, .msglen = 4, .sig = eddsa_wei448_2_sig, .siglen = 114, .result = 1, .comment = ", tcId is 3 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 3 for EDDSA, tcId is 4 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_3_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_3_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_3_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char eddsa_wei448_3_sig[] = { 0x44, 0x2e, 0x33, 0x78, 0x0f, 0x19, 0x9d, 0xd7, 0xbc, 0x71, 0xd1, 0x33, 0x5f, 0x74, 0xdf, 0x7f, 0x3a, 0x0e, 0xc7, 0x89, 0xe2, 0x1a, 0x17, 0x5c, 0x1b, 0xff, 0xdd, 0xb6, 0xe5, 0x00, 0x91, 0x99, 0x8d, 0x96, 0x9a, 0xc8, 0x19, 0x4b, 0x3a, 0xce, 0xfb, 0x77, 0x02, 0xf6, 0xc2, 0x22, 0xf8, 0x4f, 0x7e, 0xec, 0xa3, 0xb8, 0x04, 0x06, 0xf1, 0xfe, 0x80, 0x68, 0x79, 0x15, 0xe7, 0x92, 0x5b, 0xf5, 0x2d, 0xeb, 0x47, 0xb6, 0xb7, 0x79, 0xe2, 0x6d, 0x30, 0xee, 0xc7, 0xc5, 0xfe, 0xf0, 0x35, 0x80, 0xf2, 0x80, 0xa0, 0x89, 0xee, 0xfd, 0x0b, 0xac, 0xc9, 0xfb, 0xbb, 0x6a, 0x4d, 0x73, 0xa5, 0x91, 0xd1, 0x67, 0x1d, 0x19, 0x2e, 0x6b, 0xbc, 0xfd, 0xb7, 0x9a, 0xd3, 0xdb, 0x56, 0x73, 0xa1, 0x26, 0x30, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_3 = { .name = "eddsa_wei448_3", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_3_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_3_privkey, .privkeylen = 57, .msg = eddsa_wei448_3_msg, .msglen = 5, .sig = eddsa_wei448_3_sig, .siglen = 114, .result = 1, .comment = ", tcId is 4 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 4 for EDDSA, tcId is 5 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_4_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_4_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_4_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_4_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x60, 0xa0, 0x52, 0x36, 0xfc, 0x9c, 0x16, 0x82, 0xb0, 0xe5, 0x5b, 0x60, 0xa0, 0x82, 0xc9, 0xa5, 0x7b, 0xff, 0xe6, 0x1e, 0xf4, 0xdd, 0xa5, 0xce, 0x65, 0xdf, 0x53, 0x98, 0x05, 0x12, 0x2b, 0x3a, 0x09, 0xa0, 0x59, 0x76, 0xd4, 0x1a, 0xd6, 0x8a, 0xb5, 0x2d, 0xf8, 0x54, 0x28, 0x15, 0x2c, 0x57, 0xda, 0x93, 0x53, 0x1e, 0x5d, 0x16, 0x92, 0x0e, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_4 = { .name = "eddsa_wei448_4", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_4_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_4_privkey, .privkeylen = 57, .msg = eddsa_wei448_4_msg, .msglen = 6, .sig = eddsa_wei448_4_sig, .siglen = 114, .result = 1, .comment = ", tcId is 5 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 5 for EDDSA, tcId is 6 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_5_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_5_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_5_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char eddsa_wei448_5_sig[] = { 0xa8, 0xca, 0x64, 0xd1, 0xab, 0x00, 0xea, 0xe7, 0x7f, 0xd2, 0x85, 0x4d, 0x84, 0x22, 0xdb, 0x3a, 0xe1, 0x2f, 0xca, 0x91, 0xc1, 0x4f, 0x27, 0x4f, 0x30, 0xa4, 0x4d, 0xf9, 0x85, 0x90, 0x78, 0x6e, 0xc4, 0xcb, 0xb9, 0x6a, 0x95, 0x64, 0xfc, 0x1b, 0x9b, 0x16, 0xc2, 0x2d, 0x2b, 0xd0, 0x0a, 0xa6, 0x5f, 0x08, 0x76, 0x32, 0x37, 0x29, 0xf5, 0xac, 0x80, 0x9f, 0xb0, 0xb8, 0x9a, 0x4d, 0x3f, 0x27, 0xaf, 0xba, 0xbb, 0x59, 0x68, 0x51, 0xd8, 0x35, 0x17, 0x3d, 0x60, 0xea, 0x34, 0xe0, 0x87, 0x53, 0x59, 0xf3, 0xd6, 0xad, 0xb1, 0x3c, 0xef, 0x13, 0x95, 0xb7, 0xea, 0xa5, 0xf9, 0x14, 0x75, 0x83, 0xff, 0x38, 0xb4, 0xde, 0xb1, 0x83, 0x06, 0x28, 0x74, 0x91, 0x5b, 0xf1, 0x94, 0xae, 0x61, 0x07, 0x23, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_5 = { .name = "eddsa_wei448_5", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_5_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_5_privkey, .privkeylen = 57, .msg = eddsa_wei448_5_msg, .msglen = 12, .sig = eddsa_wei448_5_sig, .siglen = 114, .result = 1, .comment = ", tcId is 6 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 6 for EDDSA, tcId is 7 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_6_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_6_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_6_msg[] = { 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, }; static const unsigned char eddsa_wei448_6_sig[] = { 0xb2, 0x05, 0xd3, 0xe2, 0x4c, 0xce, 0xf6, 0x4c, 0x1e, 0x86, 0xf1, 0x5f, 0x48, 0xdd, 0xfa, 0x68, 0x24, 0x53, 0x50, 0x34, 0x89, 0x47, 0x51, 0x88, 0xb0, 0x4a, 0x8f, 0x55, 0x86, 0x0b, 0x3c, 0x8a, 0x9c, 0x01, 0xe6, 0xde, 0x82, 0x0b, 0xb7, 0xd9, 0xb1, 0x5d, 0xaf, 0xf8, 0xde, 0x25, 0xa4, 0xa8, 0x70, 0xe9, 0x87, 0x15, 0x7a, 0x11, 0x5e, 0xc1, 0x80, 0x2d, 0xa0, 0xd0, 0x60, 0x6d, 0xa1, 0x28, 0x42, 0xea, 0x7e, 0xab, 0x65, 0x8b, 0x5e, 0xea, 0x6d, 0xd1, 0xf3, 0xa6, 0x41, 0xa5, 0x17, 0x44, 0x25, 0x57, 0x80, 0x03, 0xcd, 0x31, 0x8b, 0x8d, 0x6b, 0x8d, 0xcb, 0x4d, 0xe9, 0x54, 0xb5, 0x07, 0x8d, 0x19, 0x12, 0xc5, 0x78, 0xad, 0x82, 0x81, 0x51, 0x5d, 0x6d, 0xf3, 0x67, 0x2b, 0x94, 0x17, 0x3f, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_6 = { .name = "eddsa_wei448_6", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_6_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_6_privkey, .privkeylen = 57, .msg = eddsa_wei448_6_msg, .msglen = 65, .sig = eddsa_wei448_6_sig, .siglen = 114, .result = 1, .comment = ", tcId is 7 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 7 for EDDSA, tcId is 8 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_7_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_7_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_7_msg[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, }; static const unsigned char eddsa_wei448_7_sig[] = { 0x34, 0x92, 0xef, 0x66, 0xe5, 0xfd, 0xf1, 0x50, 0x3e, 0x9e, 0x20, 0x6c, 0x5c, 0x2f, 0x0d, 0x4b, 0x78, 0x91, 0xaa, 0xd7, 0x93, 0x57, 0x55, 0x27, 0xd2, 0x25, 0x1e, 0x0d, 0xf1, 0xb9, 0x7c, 0x2f, 0xea, 0xc1, 0x88, 0xbc, 0x38, 0x2c, 0xe3, 0xc9, 0x2c, 0x4b, 0xc3, 0x6b, 0xa2, 0x69, 0x5f, 0x32, 0xbe, 0xda, 0xdd, 0x48, 0x0e, 0xaa, 0x93, 0x23, 0x00, 0xd0, 0xdb, 0x1f, 0x9a, 0x9c, 0x60, 0x84, 0x4d, 0x2e, 0xa5, 0xae, 0xa6, 0x49, 0x33, 0xc7, 0xbe, 0x46, 0xc4, 0xf9, 0xd2, 0x1c, 0xb4, 0x8b, 0x39, 0xea, 0xe2, 0x3d, 0x08, 0x49, 0x6d, 0xe7, 0xce, 0x95, 0x01, 0x19, 0x71, 0x85, 0xcc, 0x5d, 0x4f, 0xf8, 0xaa, 0x4b, 0x01, 0x8c, 0xe7, 0xad, 0x32, 0x1f, 0x6a, 0x7d, 0x77, 0x8c, 0x4a, 0x07, 0x04, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_7 = { .name = "eddsa_wei448_7", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_7_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_7_privkey, .privkeylen = 57, .msg = eddsa_wei448_7_msg, .msglen = 65, .sig = eddsa_wei448_7_sig, .siglen = 114, .result = 1, .comment = ", tcId is 8 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 8 for EDDSA, tcId is 9 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_8_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_8_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_8_msg[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char eddsa_wei448_8_sig[] = { 0x54, 0x5e, 0x19, 0x05, 0xaf, 0x1b, 0x58, 0x86, 0x55, 0x2e, 0xaf, 0x78, 0xe1, 0x73, 0x04, 0xc6, 0xf8, 0x3f, 0xcf, 0xb3, 0x44, 0x4d, 0xf2, 0xd1, 0xea, 0x05, 0x64, 0x86, 0xdb, 0x61, 0x5e, 0x3b, 0xb2, 0x91, 0x31, 0xbb, 0x0c, 0x1f, 0xd2, 0x95, 0x36, 0x4d, 0xc5, 0x15, 0xda, 0xe5, 0x81, 0x96, 0x71, 0x48, 0xeb, 0x23, 0xc6, 0xc9, 0x01, 0x2e, 0x80, 0x6d, 0x36, 0x23, 0xba, 0xff, 0x00, 0x54, 0x8c, 0x64, 0x8e, 0x3c, 0xb3, 0x75, 0x6a, 0xaa, 0xaf, 0x65, 0x9f, 0x2f, 0xb7, 0xdd, 0x2e, 0x71, 0xc7, 0x61, 0x14, 0x48, 0x59, 0x3c, 0xa6, 0x3f, 0x2a, 0x98, 0x91, 0x3a, 0xb7, 0xf1, 0x82, 0xe6, 0x82, 0x0e, 0xaf, 0x13, 0x34, 0xe2, 0x74, 0x5e, 0x0e, 0x7b, 0xc0, 0xdc, 0xca, 0xb9, 0x8d, 0xe7, 0x16, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_8 = { .name = "eddsa_wei448_8", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_8_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_8_privkey, .privkeylen = 57, .msg = eddsa_wei448_8_msg, .msglen = 16, .sig = eddsa_wei448_8_sig, .siglen = 114, .result = 1, .comment = ", tcId is 9 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 9 for EDDSA, tcId is 10 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_9_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_9_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_9_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_9_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_9 = { .name = "eddsa_wei448_9", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_9_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_9_privkey, .privkeylen = 57, .msg = eddsa_wei448_9_msg, .msglen = 1, .sig = eddsa_wei448_9_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 10 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 10 for EDDSA, tcId is 11 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_10_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_10_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_10_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_10_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_10 = { .name = "eddsa_wei448_10", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_10_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_10_privkey, .privkeylen = 57, .msg = eddsa_wei448_10_msg, .msglen = 1, .sig = eddsa_wei448_10_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 11 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 11 for EDDSA, tcId is 12 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_11_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_11_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_11_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_11_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_11 = { .name = "eddsa_wei448_11", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_11_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_11_privkey, .privkeylen = 57, .msg = eddsa_wei448_11_msg, .msglen = 1, .sig = eddsa_wei448_11_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 12 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 12 for EDDSA, tcId is 13 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_12_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_12_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_12_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_12_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_12 = { .name = "eddsa_wei448_12", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_12_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_12_privkey, .privkeylen = 57, .msg = eddsa_wei448_12_msg, .msglen = 1, .sig = eddsa_wei448_12_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 13 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 13 for EDDSA, tcId is 14 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_13_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_13_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_13_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_13_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_eddsa_test eddsa_wei448_13 = { .name = "eddsa_wei448_13", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_13_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_13_privkey, .privkeylen = 57, .msg = eddsa_wei448_13_msg, .msglen = 1, .sig = eddsa_wei448_13_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 14 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 14 for EDDSA, tcId is 15 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_14_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_14_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_14_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_14_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_14 = { .name = "eddsa_wei448_14", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_14_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_14_privkey, .privkeylen = 57, .msg = eddsa_wei448_14_msg, .msglen = 1, .sig = eddsa_wei448_14_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 15 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 15 for EDDSA, tcId is 16 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_15_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_15_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_15_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_15_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_15 = { .name = "eddsa_wei448_15", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_15_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_15_privkey, .privkeylen = 57, .msg = eddsa_wei448_15_msg, .msglen = 1, .sig = eddsa_wei448_15_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 16 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 16 for EDDSA, tcId is 17 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_16_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_16_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_16_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_16_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_16 = { .name = "eddsa_wei448_16", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_16_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_16_privkey, .privkeylen = 57, .msg = eddsa_wei448_16_msg, .msglen = 1, .sig = eddsa_wei448_16_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 17 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 17 for EDDSA, tcId is 18 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_17_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_17_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_17_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_17_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_17 = { .name = "eddsa_wei448_17", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_17_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_17_privkey, .privkeylen = 57, .msg = eddsa_wei448_17_msg, .msglen = 1, .sig = eddsa_wei448_17_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 18 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 18 for EDDSA, tcId is 19 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_18_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_18_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_18_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_18_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_eddsa_test eddsa_wei448_18 = { .name = "eddsa_wei448_18", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_18_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_18_privkey, .privkeylen = 57, .msg = eddsa_wei448_18_msg, .msglen = 1, .sig = eddsa_wei448_18_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 19 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 19 for EDDSA, tcId is 20 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_19_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_19_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_19_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_19_sig[] = { 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_19 = { .name = "eddsa_wei448_19", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_19_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_19_privkey, .privkeylen = 57, .msg = eddsa_wei448_19_msg, .msglen = 1, .sig = eddsa_wei448_19_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 20 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 20 for EDDSA, tcId is 21 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_20_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_20_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_20_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_20_sig[] = { 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_20 = { .name = "eddsa_wei448_20", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_20_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_20_privkey, .privkeylen = 57, .msg = eddsa_wei448_20_msg, .msglen = 1, .sig = eddsa_wei448_20_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 21 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 21 for EDDSA, tcId is 22 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_21_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_21_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_21_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_21_sig[] = { 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf2, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_21 = { .name = "eddsa_wei448_21", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_21_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_21_privkey, .privkeylen = 57, .msg = eddsa_wei448_21_msg, .msglen = 1, .sig = eddsa_wei448_21_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 22 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 22 for EDDSA, tcId is 23 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_22_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_22_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_22_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_22_sig[] = { 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_22 = { .name = "eddsa_wei448_22", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_22_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_22_privkey, .privkeylen = 57, .msg = eddsa_wei448_22_msg, .msglen = 1, .sig = eddsa_wei448_22_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 23 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 23 for EDDSA, tcId is 24 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_23_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_23_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_23_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_23_sig[] = { 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_eddsa_test eddsa_wei448_23 = { .name = "eddsa_wei448_23", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_23_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_23_privkey, .privkeylen = 57, .msg = eddsa_wei448_23_msg, .msglen = 1, .sig = eddsa_wei448_23_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 24 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 24 for EDDSA, tcId is 25 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_24_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_24_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_24_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_24_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_24 = { .name = "eddsa_wei448_24", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_24_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_24_privkey, .privkeylen = 57, .msg = eddsa_wei448_24_msg, .msglen = 1, .sig = eddsa_wei448_24_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 25 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 25 for EDDSA, tcId is 26 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_25_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_25_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_25_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_25_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_25 = { .name = "eddsa_wei448_25", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_25_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_25_privkey, .privkeylen = 57, .msg = eddsa_wei448_25_msg, .msglen = 1, .sig = eddsa_wei448_25_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 26 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 26 for EDDSA, tcId is 27 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_26_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_26_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_26_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_26_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_26 = { .name = "eddsa_wei448_26", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_26_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_26_privkey, .privkeylen = 57, .msg = eddsa_wei448_26_msg, .msglen = 1, .sig = eddsa_wei448_26_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 27 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 27 for EDDSA, tcId is 28 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_27_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_27_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_27_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_27_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0x44, 0x58, 0xab, 0x92, 0xc2, 0x78, 0x23, 0x55, 0x8f, 0xc5, 0x8d, 0x72, 0xc2, 0x6c, 0x21, 0x90, 0x36, 0xd6, 0xae, 0x49, 0xdb, 0x4e, 0xc4, 0xe9, 0x23, 0xca, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_27 = { .name = "eddsa_wei448_27", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_27_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_27_privkey, .privkeylen = 57, .msg = eddsa_wei448_27_msg, .msglen = 1, .sig = eddsa_wei448_27_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 28 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 28 for EDDSA, tcId is 29 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_28_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_28_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_28_msg[] = { 0x3f, }; static const unsigned char eddsa_wei448_28_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_eddsa_test eddsa_wei448_28 = { .name = "eddsa_wei448_28", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_28_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_28_privkey, .privkeylen = 57, .msg = eddsa_wei448_28_msg, .msglen = 1, .sig = eddsa_wei448_28_sig, .siglen = 112, .result = -1, .comment = "special values for r and s, tcId is 29 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 29 for EDDSA, tcId is 30 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_29_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_29_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_29_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const wycheproof_eddsa_test eddsa_wei448_29 = { .name = "eddsa_wei448_29", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_29_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_29_privkey, .privkeylen = 57, .msg = eddsa_wei448_29_msg, .msglen = 4, .sig = (const unsigned char*)"", .siglen = 0, .result = -1, .comment = "empty signature, tcId is 30 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 30 for EDDSA, tcId is 31 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_30_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_30_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_30_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_30_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, }; static const wycheproof_eddsa_test eddsa_wei448_30 = { .name = "eddsa_wei448_30", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_30_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_30_privkey, .privkeylen = 57, .msg = eddsa_wei448_30_msg, .msglen = 4, .sig = eddsa_wei448_30_sig, .siglen = 57, .result = -1, .comment = "s missing, tcId is 31 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 31 for EDDSA, tcId is 32 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_31_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_31_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_31_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_31_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, }; static const wycheproof_eddsa_test eddsa_wei448_31 = { .name = "eddsa_wei448_31", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_31_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_31_privkey, .privkeylen = 57, .msg = eddsa_wei448_31_msg, .msglen = 4, .sig = eddsa_wei448_31_sig, .siglen = 112, .result = -1, .comment = "signature too short, tcId is 32 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 32 for EDDSA, tcId is 33 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_32_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_32_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_32_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_32_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, 0x20, 0x20, }; static const wycheproof_eddsa_test eddsa_wei448_32 = { .name = "eddsa_wei448_32", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_32_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_32_privkey, .privkeylen = 57, .msg = eddsa_wei448_32_msg, .msglen = 4, .sig = eddsa_wei448_32_sig, .siglen = 116, .result = -1, .comment = "signature too long, tcId is 33 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 33 for EDDSA, tcId is 34 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_33_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_33_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_33_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_33_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_33 = { .name = "eddsa_wei448_33", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_33_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_33_privkey, .privkeylen = 57, .msg = eddsa_wei448_33_msg, .msglen = 4, .sig = eddsa_wei448_33_sig, .siglen = 171, .result = -1, .comment = "include pk in signature, tcId is 34 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 34 for EDDSA, tcId is 35 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_34_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_34_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_34_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_34_sig[] = { 0x00, 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_34 = { .name = "eddsa_wei448_34", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_34_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_34_privkey, .privkeylen = 57, .msg = eddsa_wei448_34_msg, .msglen = 4, .sig = eddsa_wei448_34_sig, .siglen = 115, .result = -1, .comment = "prepending 0 byte to signature, tcId is 35 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 35 for EDDSA, tcId is 36 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_35_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_35_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_35_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_35_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x00, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_35 = { .name = "eddsa_wei448_35", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_35_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_35_privkey, .privkeylen = 57, .msg = eddsa_wei448_35_msg, .msglen = 4, .sig = eddsa_wei448_35_sig, .siglen = 115, .result = -1, .comment = "prepending 0 byte to s, tcId is 36 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 36 for EDDSA, tcId is 37 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_36_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_36_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_36_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_36_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_36 = { .name = "eddsa_wei448_36", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_36_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_36_privkey, .privkeylen = 57, .msg = eddsa_wei448_36_msg, .msglen = 4, .sig = eddsa_wei448_36_sig, .siglen = 115, .result = -1, .comment = "appending 0 byte to signature, tcId is 37 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 37 for EDDSA, tcId is 38 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_37_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_37_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_37_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x30, }; static const unsigned char eddsa_wei448_37_sig[] = { 0xdb, 0xd6, 0x38, 0x45, 0x16, 0xab, 0x6b, 0x0e, 0xb2, 0xd6, 0x09, 0x41, 0x45, 0x64, 0xec, 0x21, 0x73, 0x83, 0xb6, 0x60, 0x40, 0xdf, 0xb0, 0x67, 0x61, 0x28, 0x25, 0x1a, 0xe2, 0x4c, 0x1d, 0x7c, 0x17, 0x9c, 0x21, 0xa9, 0xee, 0x30, 0x7d, 0xc1, 0x3f, 0x8f, 0xe6, 0x55, 0x0b, 0xc4, 0x01, 0x87, 0xf0, 0x93, 0xda, 0x85, 0x61, 0x7b, 0xcf, 0x5d, 0x00, 0x9d, 0x3e, 0xe8, 0xb7, 0x98, 0xad, 0x97, 0x8b, 0x6e, 0x68, 0x3b, 0xc4, 0xe9, 0x11, 0x94, 0x0e, 0xa8, 0x2e, 0xa0, 0xb7, 0xe9, 0x5d, 0xc2, 0x4f, 0xe0, 0xb2, 0x9e, 0x44, 0x66, 0x32, 0x11, 0x89, 0x2c, 0x2a, 0xaa, 0x34, 0x51, 0x37, 0x9d, 0x22, 0xc2, 0x89, 0xb9, 0x43, 0x78, 0xf1, 0x1f, 0xb7, 0x00, 0xf1, 0x68, 0x9d, 0x4a, 0x00, 0xd7, 0x3e, }; static const wycheproof_eddsa_test eddsa_wei448_37 = { .name = "eddsa_wei448_37", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_37_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_37_privkey, .privkeylen = 57, .msg = eddsa_wei448_37_msg, .msglen = 5, .sig = eddsa_wei448_37_sig, .siglen = 113, .result = -1, .comment = "removing 0 byte from signature, tcId is 38 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 38 for EDDSA, tcId is 39 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_38_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_38_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_38_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x35, 0x35, }; static const unsigned char eddsa_wei448_38_sig[] = { 0xce, 0x2b, 0x2f, 0xff, 0x0b, 0xf4, 0x45, 0xa3, 0x68, 0x13, 0xcf, 0x2a, 0x76, 0xe0, 0xcc, 0x56, 0x19, 0xa4, 0xf1, 0x6e, 0xe5, 0x3f, 0x0f, 0xe3, 0xcd, 0x46, 0xfc, 0x04, 0x14, 0xdb, 0x72, 0x48, 0xb3, 0x2f, 0xbd, 0xa5, 0x4b, 0xbb, 0x37, 0xe7, 0x08, 0xd6, 0x23, 0x80, 0x76, 0xea, 0x12, 0xbf, 0x85, 0x0b, 0x96, 0x4b, 0x04, 0x45, 0x20, 0xbb, 0x80, 0xfb, 0xaf, 0x0e, 0x1d, 0x1e, 0xd3, 0xbc, 0xab, 0x26, 0x14, 0x62, 0xdf, 0x5e, 0x7f, 0x2d, 0xe7, 0x3a, 0xc9, 0xcb, 0xae, 0x26, 0xdf, 0xa2, 0x90, 0x15, 0x03, 0x9a, 0xcf, 0x90, 0x57, 0x59, 0x61, 0xfc, 0x9b, 0x91, 0xb9, 0xca, 0x27, 0x6d, 0xae, 0x7d, 0x5f, 0xa8, 0x05, 0xbd, 0x20, 0x2c, 0x55, 0x79, 0xa0, 0xf4, 0xc6, 0x6e, 0x80, 0x14, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_38 = { .name = "eddsa_wei448_38", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_38_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_38_privkey, .privkeylen = 57, .msg = eddsa_wei448_38_msg, .msglen = 6, .sig = eddsa_wei448_38_sig, .siglen = 113, .result = -1, .comment = "removing 0 byte from signature, tcId is 39 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 39 for EDDSA, tcId is 40 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_39_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_39_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_39_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x36, 0x33, }; static const unsigned char eddsa_wei448_39_sig[] = { 0xc2, 0x83, 0xed, 0x36, 0xd7, 0x8c, 0x27, 0x5a, 0x5d, 0x02, 0xf7, 0x93, 0x9a, 0xed, 0x2c, 0x4e, 0xf6, 0x83, 0x20, 0xae, 0x1b, 0xf6, 0xfc, 0x25, 0xe8, 0x34, 0xb7, 0x58, 0x04, 0x6a, 0x6d, 0x52, 0xa4, 0x80, 0x21, 0x6a, 0x94, 0x2d, 0xfe, 0x77, 0x1f, 0x3b, 0xd3, 0x07, 0xf4, 0xce, 0x7d, 0x3f, 0x44, 0x6e, 0x08, 0x24, 0x96, 0x1b, 0xd5, 0xde, 0x80, 0xcd, 0xa4, 0x2b, 0x5c, 0xc3, 0x8e, 0x6e, 0xc3, 0xd5, 0x3f, 0x38, 0x69, 0x78, 0xb9, 0x87, 0x7d, 0x3c, 0x98, 0xa2, 0x8a, 0xc8, 0xfc, 0x66, 0x63, 0x0f, 0xfd, 0x17, 0x89, 0x33, 0xa1, 0x8d, 0xe1, 0xae, 0xe2, 0x3c, 0xab, 0x50, 0x11, 0xc9, 0xff, 0x4c, 0x92, 0x77, 0x31, 0x1b, 0x4c, 0x6c, 0x33, 0xac, 0xb8, 0xe8, 0x2b, 0x8c, 0x69, 0x3c, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_39 = { .name = "eddsa_wei448_39", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_39_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_39_privkey, .privkeylen = 57, .msg = eddsa_wei448_39_msg, .msglen = 6, .sig = eddsa_wei448_39_sig, .siglen = 113, .result = -1, .comment = "dropping byte from signature, tcId is 40 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 40 for EDDSA, tcId is 41 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_40_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_40_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_40_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x33, 0x36, 0x31, }; static const unsigned char eddsa_wei448_40_sig[] = { 0x62, 0xe6, 0x29, 0xbd, 0x2b, 0x8f, 0x59, 0x5d, 0xf4, 0x01, 0xc3, 0x62, 0xc7, 0x66, 0x21, 0x6d, 0x45, 0xde, 0x89, 0xfc, 0xee, 0xcd, 0x99, 0xc6, 0x9d, 0x32, 0x3b, 0x5c, 0x53, 0xad, 0x5a, 0xc3, 0xea, 0x72, 0x24, 0x96, 0x3f, 0xeb, 0xa2, 0xf2, 0x89, 0x55, 0x51, 0xd9, 0x4f, 0x54, 0x82, 0x48, 0xef, 0x85, 0x97, 0xd2, 0xa9, 0x59, 0xf8, 0x80, 0xd5, 0x99, 0x34, 0xa5, 0xe8, 0xf0, 0x78, 0x47, 0x83, 0x4d, 0x66, 0xba, 0x1a, 0x6b, 0x09, 0xde, 0x5d, 0xba, 0x69, 0x21, 0x72, 0xb1, 0x3f, 0x76, 0x8f, 0x0c, 0x29, 0xe8, 0x19, 0x61, 0x44, 0xc1, 0x30, 0xd2, 0x35, 0x34, 0x45, 0xd6, 0x3c, 0xbd, 0x0b, 0x69, 0x07, 0x94, 0xfd, 0xad, 0x30, 0xa4, 0x8e, 0x8b, 0xb7, 0xcc, 0x25, 0x04, 0xf8, 0x07, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_40 = { .name = "eddsa_wei448_40", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_40_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_40_privkey, .privkeylen = 57, .msg = eddsa_wei448_40_msg, .msglen = 7, .sig = eddsa_wei448_40_sig, .siglen = 113, .result = -1, .comment = "removing leading 0 byte from signature, tcId is 41 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 41 for EDDSA, tcId is 42 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_41_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_41_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_41_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_41_sig[] = { 0x5c, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xaf, 0xc3, 0x3a, 0x52, 0x51, 0x16, 0xcc, 0x12, 0xe0, 0xd1, 0xc3, 0xa1, 0xfd, 0xe6, 0xde, 0x51, 0x8a, 0x65, 0x44, 0xf3, 0x60, 0xd0, 0xfe, 0x18, 0xd5, 0xbe, 0x77, 0x70, 0xb0, 0x57, 0xa2, 0xbf, 0x79, 0x2d, 0xb4, 0xb7, 0x64, 0x8f, 0xa8, 0x4a, 0x6e, 0xae, 0xca, 0xe9, 0x09, 0xe3, 0x3f, 0xa5, 0x9c, 0x5d, 0xfe, 0x48, 0x04, 0xba, 0x26, 0x23, }; static const wycheproof_eddsa_test eddsa_wei448_41 = { .name = "eddsa_wei448_41", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_41_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_41_privkey, .privkeylen = 57, .msg = eddsa_wei448_41_msg, .msglen = 6, .sig = eddsa_wei448_41_sig, .siglen = 113, .result = -1, .comment = "modified bit 0 in R, tcId is 42 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 42 for EDDSA, tcId is 43 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_42_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_42_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_42_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_42_sig[] = { 0x5f, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xf9, 0x13, 0x86, 0xc3, 0xe9, 0xdd, 0x9e, 0x7c, 0x9a, 0xf7, 0xca, 0x6b, 0xbe, 0xf8, 0xb7, 0xa4, 0x4a, 0xe3, 0xd6, 0x8e, 0xea, 0xde, 0x44, 0x9d, 0x7d, 0xfb, 0xb3, 0x1d, 0xe8, 0x41, 0x9e, 0xb9, 0x43, 0xe2, 0xec, 0xbc, 0xdd, 0x06, 0xdf, 0x52, 0x27, 0xe8, 0x2b, 0x9d, 0xed, 0x51, 0x9a, 0x56, 0xe7, 0x0f, 0x0a, 0x1c, 0x0f, 0xc1, 0x7b, 0x06, }; static const wycheproof_eddsa_test eddsa_wei448_42 = { .name = "eddsa_wei448_42", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_42_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_42_privkey, .privkeylen = 57, .msg = eddsa_wei448_42_msg, .msglen = 6, .sig = eddsa_wei448_42_sig, .siglen = 113, .result = -1, .comment = "modified bit 1 in R, tcId is 43 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 43 for EDDSA, tcId is 44 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_43_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_43_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_43_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_43_sig[] = { 0x59, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xf1, 0xaa, 0xb0, 0x7b, 0x4a, 0xd0, 0x69, 0xdf, 0xaf, 0xc0, 0x1b, 0x45, 0x32, 0xe1, 0xe4, 0x4c, 0xbf, 0x71, 0x77, 0xe1, 0xbd, 0xda, 0x19, 0x7f, 0xc8, 0x74, 0x34, 0x04, 0x6d, 0xb5, 0xb9, 0x35, 0xaf, 0xd9, 0x11, 0x4a, 0xc5, 0xe1, 0x13, 0x8e, 0xae, 0xad, 0x23, 0xc3, 0xb5, 0x9d, 0xba, 0x90, 0x26, 0xd2, 0xda, 0x4a, 0x86, 0xfe, 0x80, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei448_43 = { .name = "eddsa_wei448_43", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_43_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_43_privkey, .privkeylen = 57, .msg = eddsa_wei448_43_msg, .msglen = 6, .sig = eddsa_wei448_43_sig, .siglen = 113, .result = -1, .comment = "modified bit 2 in R, tcId is 44 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 44 for EDDSA, tcId is 45 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_44_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_44_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_44_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_44_sig[] = { 0xdd, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x76, 0x68, 0x40, 0x2b, 0x7b, 0x09, 0x3f, 0xc7, 0x54, 0x01, 0x93, 0x24, 0x07, 0x7c, 0x1f, 0x84, 0x2a, 0x7d, 0x2e, 0x35, 0xad, 0xf7, 0xb8, 0x70, 0x94, 0x11, 0x5c, 0xec, 0x45, 0x9a, 0xd5, 0x41, 0x9e, 0x16, 0x29, 0x88, 0xef, 0x42, 0xb1, 0x98, 0x8d, 0x9b, 0x94, 0x4d, 0x9d, 0x5a, 0x7c, 0xe0, 0x9c, 0x6f, 0x34, 0x2a, 0xfa, 0x50, 0x08, 0x39, }; static const wycheproof_eddsa_test eddsa_wei448_44 = { .name = "eddsa_wei448_44", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_44_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_44_privkey, .privkeylen = 57, .msg = eddsa_wei448_44_msg, .msglen = 6, .sig = eddsa_wei448_44_sig, .siglen = 113, .result = -1, .comment = "modified bit 7 in R, tcId is 45 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 45 for EDDSA, tcId is 46 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_45_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_45_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_45_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_45_sig[] = { 0x5d, 0xb8, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x27, 0x9b, 0x70, 0x33, 0x85, 0x86, 0xb9, 0xe1, 0x3e, 0x66, 0x91, 0x91, 0xcc, 0x0d, 0xfc, 0x2a, 0x93, 0x7d, 0x50, 0xa6, 0x11, 0x87, 0x58, 0xde, 0x04, 0xa4, 0xca, 0x41, 0xf4, 0x87, 0x7a, 0xbd, 0xb9, 0x71, 0xaf, 0xa8, 0x7f, 0xe4, 0xb8, 0x3b, 0xc2, 0x43, 0xb8, 0xdf, 0xd2, 0xcb, 0x36, 0x8a, 0xa3, 0x89, 0xa4, 0xcb, 0x11, 0xe8, 0x3e, 0x31, }; static const wycheproof_eddsa_test eddsa_wei448_45 = { .name = "eddsa_wei448_45", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_45_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_45_privkey, .privkeylen = 57, .msg = eddsa_wei448_45_msg, .msglen = 6, .sig = eddsa_wei448_45_sig, .siglen = 113, .result = -1, .comment = "modified bit 8 in R, tcId is 46 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 46 for EDDSA, tcId is 47 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_46_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_46_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_46_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_46_sig[] = { 0x5d, 0xb9, 0x4d, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xc7, 0xb8, 0x47, 0x55, 0x6b, 0x3a, 0x6f, 0x94, 0x47, 0x48, 0x38, 0x99, 0xab, 0x73, 0x0a, 0x23, 0x00, 0x4c, 0x69, 0x50, 0x54, 0xdd, 0x57, 0xb1, 0xc3, 0x21, 0x4f, 0xa8, 0x7f, 0x63, 0x2f, 0x39, 0xc8, 0xff, 0x14, 0x71, 0xf0, 0x53, 0x2b, 0x8e, 0xee, 0x41, 0x54, 0x93, 0x0e, 0x1c, 0xa3, 0x0d, 0x57, 0x4b, 0x8f, 0x9e, 0x85, 0xb0, 0x43, 0x2b, }; static const wycheproof_eddsa_test eddsa_wei448_46 = { .name = "eddsa_wei448_46", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_46_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_46_privkey, .privkeylen = 57, .msg = eddsa_wei448_46_msg, .msglen = 6, .sig = eddsa_wei448_46_sig, .siglen = 113, .result = -1, .comment = "modified bit 16 in R, tcId is 47 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 47 for EDDSA, tcId is 48 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_47_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_47_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_47_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_47_sig[] = { 0x5d, 0xb9, 0x4c, 0xd3, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x0b, 0x01, 0x79, 0x17, 0x47, 0x2b, 0x13, 0x0a, 0x1c, 0xc1, 0xc8, 0xe9, 0x95, 0xa2, 0x52, 0x61, 0x7d, 0x5d, 0xda, 0xf1, 0xf3, 0xd4, 0x89, 0x30, 0xb4, 0x87, 0x6f, 0xa0, 0xd2, 0xcf, 0xed, 0xec, 0x90, 0xa8, 0xc8, 0x5c, 0x82, 0x74, 0x89, 0x2a, 0x1c, 0xa3, 0xb6, 0xcf, 0xce, 0x63, 0xeb, 0xfe, 0xbc, 0x30, 0x72, 0x10, 0xb8, 0x44, 0xae, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei448_47 = { .name = "eddsa_wei448_47", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_47_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_47_privkey, .privkeylen = 57, .msg = eddsa_wei448_47_msg, .msglen = 6, .sig = eddsa_wei448_47_sig, .siglen = 113, .result = -1, .comment = "modified bit 31 in R, tcId is 48 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 48 for EDDSA, tcId is 49 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_48_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_48_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_48_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_48_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x11, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x5f, 0x38, 0xf6, 0x37, 0x18, 0x60, 0xfc, 0xc4, 0xf2, 0xec, 0x51, 0x5a, 0xfd, 0x35, 0xcb, 0x05, 0xd8, 0x94, 0x1e, 0x24, 0x48, 0xcc, 0x46, 0x9a, 0x15, 0xb8, 0x53, 0x7e, 0x75, 0x8b, 0x16, 0xd4, 0x6b, 0x12, 0x35, 0x81, 0x61, 0x34, 0x62, 0xc2, 0xbb, 0x20, 0xd8, 0xa0, 0x72, 0x99, 0xab, 0x79, 0x5d, 0x09, 0x98, 0xe1, 0xe4, 0x27, 0x79, 0x31, }; static const wycheproof_eddsa_test eddsa_wei448_48 = { .name = "eddsa_wei448_48", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_48_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_48_privkey, .privkeylen = 57, .msg = eddsa_wei448_48_msg, .msglen = 6, .sig = eddsa_wei448_48_sig, .siglen = 113, .result = -1, .comment = "modified bit 32 in R, tcId is 49 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 49 for EDDSA, tcId is 50 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_49_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_49_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_49_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_49_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x9f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x17, 0x11, 0x1b, 0xa6, 0xfe, 0xfd, 0x45, 0xe2, 0x49, 0x0f, 0x1d, 0x53, 0xa1, 0x84, 0x00, 0x7f, 0xa0, 0x73, 0x47, 0x07, 0x06, 0xd7, 0xf4, 0xa9, 0x60, 0x6f, 0xca, 0xd2, 0x95, 0x4e, 0x74, 0xc3, 0x21, 0x16, 0xba, 0x77, 0x01, 0xd2, 0x25, 0xb7, 0x6e, 0x55, 0x16, 0x4e, 0x64, 0xdf, 0x32, 0x45, 0xc1, 0x03, 0x1f, 0x0d, 0xf7, 0x34, 0xbd, 0x31, }; static const wycheproof_eddsa_test eddsa_wei448_49 = { .name = "eddsa_wei448_49", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_49_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_49_privkey, .privkeylen = 57, .msg = eddsa_wei448_49_msg, .msglen = 6, .sig = eddsa_wei448_49_sig, .siglen = 113, .result = -1, .comment = "modified bit 63 in R, tcId is 50 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 50 for EDDSA, tcId is 51 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_50_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_50_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_50_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_50_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6d, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x8d, 0x7d, 0x0a, 0xa1, 0xfd, 0x81, 0xd0, 0xe3, 0x17, 0x89, 0x92, 0x17, 0x71, 0xc6, 0x54, 0x33, 0x8f, 0x96, 0xf0, 0xb5, 0x57, 0xb6, 0x15, 0xe3, 0xda, 0x55, 0x67, 0x02, 0x71, 0x60, 0x8a, 0x0e, 0x02, 0x2e, 0x4e, 0x8c, 0xf3, 0x93, 0xe3, 0x09, 0xf8, 0xf6, 0x41, 0x22, 0x81, 0xb6, 0x14, 0x7e, 0x7f, 0xce, 0x42, 0xb0, 0x89, 0xeb, 0x1e, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei448_50 = { .name = "eddsa_wei448_50", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_50_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_50_privkey, .privkeylen = 57, .msg = eddsa_wei448_50_msg, .msglen = 6, .sig = eddsa_wei448_50_sig, .siglen = 113, .result = -1, .comment = "modified bit 64 in R, tcId is 51 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 51 for EDDSA, tcId is 52 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_51_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_51_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_51_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_51_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0c, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xb0, 0x8d, 0x3b, 0xe6, 0xeb, 0xf4, 0xe6, 0x0b, 0xf6, 0xd7, 0x4e, 0x10, 0x5e, 0xa2, 0xfa, 0x9b, 0x96, 0x5c, 0x62, 0x81, 0x6b, 0xbd, 0x22, 0xea, 0x3b, 0xb0, 0xc1, 0xac, 0xfd, 0x12, 0x30, 0x05, 0x23, 0xca, 0x76, 0xf9, 0x4b, 0x6f, 0x78, 0x94, 0x88, 0xa9, 0x57, 0xfb, 0xeb, 0x21, 0x2d, 0x71, 0x3b, 0xac, 0xcf, 0x95, 0xfd, 0x59, 0x4f, 0x3d, }; static const wycheproof_eddsa_test eddsa_wei448_51 = { .name = "eddsa_wei448_51", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_51_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_51_privkey, .privkeylen = 57, .msg = eddsa_wei448_51_msg, .msglen = 6, .sig = eddsa_wei448_51_sig, .siglen = 113, .result = -1, .comment = "modified bit 97 in R, tcId is 52 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 52 for EDDSA, tcId is 53 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_52_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_52_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_52_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_52_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0x60, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xa2, 0x3f, 0x54, 0x85, 0x7e, 0x9b, 0x0f, 0x72, 0xb2, 0xef, 0x90, 0xd2, 0x76, 0x88, 0x34, 0x59, 0x04, 0x64, 0xd7, 0x59, 0x33, 0xed, 0x08, 0xc4, 0x54, 0xfa, 0xa7, 0x62, 0xb3, 0x70, 0x2a, 0x2b, 0x63, 0x1c, 0x33, 0xc3, 0x39, 0xd0, 0x5b, 0x2e, 0x24, 0xc2, 0x0a, 0x82, 0x14, 0xf9, 0x9a, 0xf3, 0x1f, 0x93, 0xf8, 0x0f, 0x41, 0x6a, 0x11, 0x29, }; static const wycheproof_eddsa_test eddsa_wei448_52 = { .name = "eddsa_wei448_52", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_52_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_52_privkey, .privkeylen = 57, .msg = eddsa_wei448_52_msg, .msglen = 6, .sig = eddsa_wei448_52_sig, .siglen = 113, .result = -1, .comment = "modified bit 127 in R, tcId is 53 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 53 for EDDSA, tcId is 54 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_53_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_53_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_53_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_53_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x81, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x73, 0x4b, 0xdc, 0x39, 0x92, 0x73, 0xd3, 0x40, 0x3d, 0x93, 0x4c, 0xea, 0xae, 0x16, 0xe8, 0x7a, 0x68, 0xc6, 0xbf, 0xf6, 0xb7, 0x7d, 0x80, 0x37, 0xff, 0x41, 0xc9, 0x79, 0x22, 0x49, 0x8a, 0x58, 0xe7, 0x04, 0xc2, 0x9a, 0xb5, 0x19, 0xd4, 0x1b, 0xab, 0x70, 0x73, 0x5f, 0x71, 0xfc, 0x26, 0xf5, 0x89, 0x36, 0x1e, 0x2b, 0x21, 0x75, 0x43, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_53 = { .name = "eddsa_wei448_53", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_53_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_53_privkey, .privkeylen = 57, .msg = eddsa_wei448_53_msg, .msglen = 6, .sig = eddsa_wei448_53_sig, .siglen = 113, .result = -1, .comment = "modified bit 240 in R, tcId is 54 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 54 for EDDSA, tcId is 55 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_54_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_54_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_54_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_54_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x00, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xba, 0x96, 0x1c, 0xc8, 0xd0, 0x76, 0x5c, 0x99, 0xd5, 0x74, 0x70, 0xee, 0x1c, 0x0c, 0x77, 0xf0, 0xa5, 0x62, 0xa1, 0x98, 0xfd, 0x01, 0x75, 0xed, 0xdb, 0x0c, 0x03, 0x3e, 0x0f, 0xb8, 0x52, 0x53, 0x28, 0xc5, 0xe2, 0xc5, 0x16, 0xe2, 0xb0, 0x0f, 0x73, 0x60, 0x9c, 0x7f, 0x76, 0x91, 0x95, 0xeb, 0x1a, 0x02, 0xff, 0x54, 0x09, 0x0d, 0x78, 0x1f, }; static const wycheproof_eddsa_test eddsa_wei448_54 = { .name = "eddsa_wei448_54", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_54_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_54_privkey, .privkeylen = 57, .msg = eddsa_wei448_54_msg, .msglen = 6, .sig = eddsa_wei448_54_sig, .siglen = 113, .result = -1, .comment = "modified bit 247 in R, tcId is 55 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 55 for EDDSA, tcId is 56 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_55_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_55_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_55_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_55_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa9, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0xe7, 0x26, 0x85, 0x90, 0x7d, 0xa9, 0xe5, 0xa6, 0x4e, 0x41, 0x42, 0xed, 0x02, 0xfc, 0x0c, 0x6b, 0xf9, 0x57, 0x63, 0x20, 0x1d, 0xb5, 0x94, 0x2a, 0xac, 0x05, 0x5f, 0xa8, 0x7e, 0x6f, 0xdd, 0x32, 0xe4, 0x83, 0xfd, 0x21, 0xed, 0x41, 0x10, 0xd5, 0xd7, 0xef, 0x61, 0x9b, 0x74, 0x0f, 0xef, 0x2a, 0xd8, 0xa7, 0x1f, 0xe8, 0x21, 0xe4, 0x2a, 0x2a, }; static const wycheproof_eddsa_test eddsa_wei448_55 = { .name = "eddsa_wei448_55", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_55_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_55_privkey, .privkeylen = 57, .msg = eddsa_wei448_55_msg, .msglen = 6, .sig = eddsa_wei448_55_sig, .siglen = 113, .result = -1, .comment = "modified bit 248 in R, tcId is 56 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 56 for EDDSA, tcId is 57 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_56_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_56_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_56_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_56_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0x88, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x50, 0x06, 0x46, 0xd6, 0x7c, 0x74, 0xf1, 0x34, 0x71, 0xf0, 0xad, 0x03, 0x4d, 0xa5, 0x30, 0xf7, 0x23, 0x8f, 0xe7, 0x89, 0x7e, 0x53, 0x2a, 0xf8, 0xec, 0x29, 0x77, 0x64, 0x3a, 0x41, 0x0b, 0x1d, 0x05, 0x49, 0x34, 0xdf, 0x56, 0x7e, 0x17, 0x02, 0x76, 0x38, 0x9e, 0x66, 0xb3, 0xf3, 0xcc, 0xb3, 0xc1, 0x5a, 0xed, 0x23, 0x9d, 0x04, 0xf7, 0x2b, }; static const wycheproof_eddsa_test eddsa_wei448_56 = { .name = "eddsa_wei448_56", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_56_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_56_privkey, .privkeylen = 57, .msg = eddsa_wei448_56_msg, .msglen = 6, .sig = eddsa_wei448_56_sig, .siglen = 113, .result = -1, .comment = "modified bit 253 in R, tcId is 57 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 57 for EDDSA, tcId is 58 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_57_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_57_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_57_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_57_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xe8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x7b, 0xb1, 0x53, 0xb8, 0xe3, 0x50, 0xaa, 0x73, 0x6a, 0x91, 0xc9, 0x21, 0x21, 0x75, 0x78, 0x53, 0x96, 0x00, 0xc1, 0x29, 0x9a, 0xb7, 0x65, 0x22, 0xef, 0x8f, 0x69, 0x02, 0xd7, 0x9c, 0x93, 0xf2, 0x74, 0x07, 0x3e, 0xe6, 0xbe, 0xaf, 0xe6, 0x20, 0x0e, 0xca, 0xf5, 0x9f, 0x7c, 0xd1, 0x1b, 0xb1, 0xc8, 0x33, 0xf2, 0x4b, 0xf3, 0x0e, 0xd5, 0x2d, }; static const wycheproof_eddsa_test eddsa_wei448_57 = { .name = "eddsa_wei448_57", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_57_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_57_privkey, .privkeylen = 57, .msg = eddsa_wei448_57_msg, .msglen = 6, .sig = eddsa_wei448_57_sig, .siglen = 113, .result = -1, .comment = "modified bit 254 in R, tcId is 58 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 58 for EDDSA, tcId is 59 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_58_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_58_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_58_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_58_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0x28, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x80, 0x4a, 0x67, 0xb2, 0x2b, 0xe5, 0x99, 0xd6, 0x43, 0x3b, 0x87, 0xea, 0x96, 0x1c, 0x82, 0xc4, 0x57, 0xab, 0x50, 0xf6, 0x4a, 0xc6, 0xb7, 0xef, 0xb0, 0xb2, 0xf9, 0x09, 0x88, 0x92, 0x7f, 0x83, 0x74, 0x23, 0x03, 0xc2, 0x78, 0xf8, 0x24, 0x8e, 0x02, 0xd5, 0x67, 0x9b, 0x41, 0xed, 0x50, 0x5a, 0xba, 0x0f, 0xb5, 0x11, 0x10, 0xd0, 0xde, 0xf8, 0x10, }; static const wycheproof_eddsa_test eddsa_wei448_58 = { .name = "eddsa_wei448_58", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_58_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_58_privkey, .privkeylen = 57, .msg = eddsa_wei448_58_msg, .msglen = 6, .sig = eddsa_wei448_58_sig, .siglen = 113, .result = -1, .comment = "modified bit 255 in R, tcId is 59 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 59 for EDDSA, tcId is 60 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_59_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_59_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_59_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_59_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf3, 0x80, 0x7f, 0x45, 0x2e, 0xfb, 0x0c, 0xd9, 0x7d, 0xab, 0x55, 0x06, 0x02, 0x8b, 0x7b, 0x87, 0x68, 0x30, 0xde, 0xe0, 0x2a, 0x9c, 0x0c, 0xbd, 0x14, 0x0d, 0xcd, 0xe5, 0x09, 0x63, 0x8d, 0x4d, 0x54, 0x6c, 0x30, 0x85, 0x6b, 0x21, 0x51, 0xbd, 0xf7, 0x99, 0x30, 0xdf, 0x5b, 0xbb, 0x11, 0xf2, 0xbe, 0xb6, 0x6b, 0xcd, 0xc2, 0x5a, 0xd7, 0x5f, 0x21, 0x16, }; static const wycheproof_eddsa_test eddsa_wei448_59 = { .name = "eddsa_wei448_59", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_59_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_59_privkey, .privkeylen = 57, .msg = eddsa_wei448_59_msg, .msglen = 6, .sig = eddsa_wei448_59_sig, .siglen = 113, .result = -1, .comment = "modified bit 440 in R, tcId is 60 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 60 for EDDSA, tcId is 61 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_60_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_60_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_60_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_60_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf0, 0x80, 0x8d, 0x78, 0x23, 0x1b, 0xb3, 0xc9, 0xa8, 0x7c, 0x5b, 0x8d, 0x16, 0x8f, 0xe0, 0x5f, 0x81, 0x97, 0x50, 0x3a, 0x3d, 0x73, 0xa6, 0xd7, 0x00, 0xf4, 0x36, 0xb5, 0xa7, 0x6a, 0xb8, 0x66, 0x38, 0x8b, 0xaa, 0x69, 0x30, 0x19, 0x1a, 0x07, 0x7a, 0xca, 0x79, 0x70, 0x05, 0x89, 0x32, 0xc8, 0x8b, 0x7f, 0x9e, 0x6e, 0xcb, 0x13, 0xc8, 0x9d, 0xcd, 0x1d, }; static const wycheproof_eddsa_test eddsa_wei448_60 = { .name = "eddsa_wei448_60", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_60_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_60_privkey, .privkeylen = 57, .msg = eddsa_wei448_60_msg, .msglen = 6, .sig = eddsa_wei448_60_sig, .siglen = 113, .result = -1, .comment = "modified bit 441 in R, tcId is 61 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 61 for EDDSA, tcId is 62 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_61_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_61_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_61_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_61_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0x72, 0x80, 0x9e, 0x5a, 0x84, 0x06, 0x06, 0x3f, 0xb3, 0x54, 0x5f, 0x0f, 0xb6, 0x27, 0xf8, 0x41, 0xb2, 0xe3, 0xa8, 0x5a, 0xd5, 0xd3, 0x78, 0x01, 0x8e, 0x8b, 0x58, 0xfe, 0x58, 0xe1, 0x4e, 0xe5, 0x52, 0x0d, 0x57, 0xab, 0xc9, 0x14, 0x0e, 0x9c, 0x5a, 0x75, 0xa8, 0xb0, 0x9a, 0xc3, 0x33, 0x4d, 0xd0, 0xca, 0xd6, 0x9b, 0x48, 0x77, 0x12, 0x84, 0x32, 0x1d, }; static const wycheproof_eddsa_test eddsa_wei448_61 = { .name = "eddsa_wei448_61", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_61_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_61_privkey, .privkeylen = 57, .msg = eddsa_wei448_61_msg, .msglen = 6, .sig = eddsa_wei448_61_sig, .siglen = 113, .result = -1, .comment = "modified bit 447 in R, tcId is 62 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 62 for EDDSA, tcId is 63 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_62_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_62_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_62_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_62_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x81, 0x1a, 0xdf, 0x92, 0x20, 0x10, 0x88, 0xe0, 0x51, 0xee, 0x48, 0xb5, 0x7a, 0xec, 0xf4, 0x6e, 0xdf, 0xc6, 0x8e, 0x5b, 0xae, 0xed, 0x5a, 0xe4, 0x91, 0x0b, 0xa5, 0x68, 0x1d, 0x37, 0x0f, 0x75, 0xab, 0x59, 0x38, 0x11, 0xe1, 0x82, 0x93, 0xef, 0x08, 0x08, 0x58, 0x1c, 0x25, 0x41, 0x96, 0xbc, 0xbf, 0x2b, 0x4c, 0x45, 0x41, 0x36, 0xa6, 0x71, 0x1b, }; static const wycheproof_eddsa_test eddsa_wei448_62 = { .name = "eddsa_wei448_62", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_62_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_62_privkey, .privkeylen = 57, .msg = eddsa_wei448_62_msg, .msglen = 6, .sig = eddsa_wei448_62_sig, .siglen = 113, .result = -1, .comment = "modified bit 448 in R, tcId is 63 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 63 for EDDSA, tcId is 64 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_63_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_63_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_63_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_63_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x82, 0x5e, 0x06, 0xc3, 0x99, 0x9e, 0x83, 0x08, 0xbe, 0x43, 0x9c, 0x40, 0x94, 0x0b, 0x00, 0x75, 0xd3, 0xe4, 0xf6, 0x51, 0x47, 0xc1, 0x60, 0x8c, 0xbe, 0x6e, 0x9c, 0x43, 0x2e, 0x33, 0xbe, 0xd6, 0x68, 0x6f, 0x93, 0x93, 0xae, 0x25, 0x68, 0xf0, 0xad, 0x60, 0xfe, 0xbc, 0xb4, 0xb6, 0x17, 0x9c, 0x0d, 0x90, 0xd0, 0x34, 0xe7, 0xc3, 0xc4, 0x68, 0x10, }; static const wycheproof_eddsa_test eddsa_wei448_63 = { .name = "eddsa_wei448_63", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_63_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_63_privkey, .privkeylen = 57, .msg = eddsa_wei448_63_msg, .msglen = 6, .sig = eddsa_wei448_63_sig, .siglen = 113, .result = -1, .comment = "modified bit 449 in R, tcId is 64 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 64 for EDDSA, tcId is 65 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_64_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_64_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_64_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_64_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0xc0, 0x24, 0x56, 0xbb, 0xd1, 0x41, 0xdf, 0x04, 0x8d, 0xbf, 0x18, 0x43, 0xbe, 0x6d, 0x5f, 0xef, 0x40, 0x24, 0x83, 0x31, 0x4c, 0x2a, 0xf5, 0x47, 0xb3, 0x61, 0xa0, 0x9f, 0x33, 0x19, 0x48, 0x9e, 0xae, 0xde, 0x43, 0x40, 0x4d, 0xf9, 0xfa, 0xf6, 0x34, 0xc1, 0x29, 0x8d, 0x67, 0x8b, 0x52, 0x61, 0xc8, 0x08, 0xb0, 0xbe, 0x37, 0x26, 0x01, 0x3e, 0x39, }; static const wycheproof_eddsa_test eddsa_wei448_64 = { .name = "eddsa_wei448_64", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_64_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_64_privkey, .privkeylen = 57, .msg = eddsa_wei448_64_msg, .msglen = 6, .sig = eddsa_wei448_64_sig, .siglen = 113, .result = -1, .comment = "modified bit 454 in R, tcId is 65 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 65 for EDDSA, tcId is 66 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_65_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_65_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_65_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_65_sig[] = { 0x5d, 0xb9, 0x4c, 0x53, 0x10, 0x1f, 0x52, 0x1f, 0x6c, 0x1f, 0x43, 0xb6, 0x0e, 0xa4, 0xd7, 0xe0, 0x6f, 0xbd, 0x49, 0xc2, 0xe8, 0xaf, 0xaf, 0x4f, 0xcc, 0x28, 0x9e, 0x64, 0x5e, 0x08, 0x80, 0xa8, 0x7b, 0x8e, 0x55, 0x85, 0x8d, 0xf4, 0xcf, 0x22, 0x91, 0xa7, 0x30, 0x3f, 0xfd, 0xa4, 0x46, 0xb8, 0x2a, 0x11, 0x7b, 0x4d, 0xd4, 0x08, 0xcf, 0xf2, 0x00, 0x71, 0x06, 0xd2, 0xa8, 0x96, 0xa7, 0xfe, 0xc6, 0xde, 0xe5, 0x3e, 0xea, 0x27, 0x2d, 0x9b, 0x6e, 0x73, 0x8c, 0x34, 0x02, 0x95, 0x41, 0x6b, 0x50, 0xf3, 0x9a, 0x94, 0x63, 0xa5, 0x63, 0x54, 0x50, 0xb9, 0xf9, 0x3c, 0x4c, 0x06, 0x73, 0x7a, 0xff, 0xd4, 0x2a, 0xe0, 0x6c, 0xee, 0x58, 0x79, 0xc9, 0x6c, 0x0b, 0xd5, 0x8a, 0x91, 0x34, 0x55, 0x03, }; static const wycheproof_eddsa_test eddsa_wei448_65 = { .name = "eddsa_wei448_65", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_65_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_65_privkey, .privkeylen = 57, .msg = eddsa_wei448_65_msg, .msglen = 6, .sig = eddsa_wei448_65_sig, .siglen = 113, .result = -1, .comment = "modified bit 455 in R, tcId is 66 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 66 for EDDSA, tcId is 67 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_66_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_66_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_66_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_66_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0xab, 0x98, 0xab, 0x86, 0x2e, 0x4e, 0x7e, 0xc3, 0x36, 0x1a, 0x45, 0xac, 0x19, 0x93, 0xe9, 0xb4, 0x7d, 0x9a, 0xc4, 0x0d, 0xb9, 0x1f, 0xae, 0xd7, 0x52, 0x39, 0x9c, 0xee, 0x04, 0x13, 0x12, 0x2b, 0x47, 0x34, 0x65, 0x94, 0xfd, 0x7d, 0x2c, 0x89, 0x49, 0xb4, 0x3e, 0x4c, 0xab, 0xaf, 0x17, 0xd8, 0x33, 0x9e, 0xa0, 0xe3, 0x07, 0x02, 0x3f, }; static const wycheproof_eddsa_test eddsa_wei448_66 = { .name = "eddsa_wei448_66", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_66_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_66_privkey, .privkeylen = 57, .msg = eddsa_wei448_66_msg, .msglen = 6, .sig = eddsa_wei448_66_sig, .siglen = 113, .result = -1, .comment = "R==0, tcId is 67 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 67 for EDDSA, tcId is 68 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_67_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_67_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_67_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_67_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0x1b, 0xae, 0x33, 0xa0, 0x99, 0x9f, 0xd3, 0xfd, 0x2b, 0xed, 0x6f, 0xa5, 0x57, 0x76, 0x85, 0xe8, 0xfd, 0x59, 0x5e, 0x79, 0xc0, 0x06, 0xe5, 0x8f, 0xd3, 0x5f, 0x69, 0xf9, 0x1b, 0x1d, 0x85, 0x35, 0x53, 0xfb, 0x40, 0x06, 0x01, 0x9a, 0x07, 0x72, 0x5a, 0xa3, 0x77, 0x73, 0x88, 0x3d, 0xbe, 0x12, 0x25, 0x38, 0x12, 0x88, 0x7a, 0xc8, 0x28, }; static const wycheproof_eddsa_test eddsa_wei448_67 = { .name = "eddsa_wei448_67", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_67_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_67_privkey, .privkeylen = 57, .msg = eddsa_wei448_67_msg, .msglen = 6, .sig = eddsa_wei448_67_sig, .siglen = 113, .result = -1, .comment = "invalid R, tcId is 68 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 68 for EDDSA, tcId is 69 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_68_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_68_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_68_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei448_68_sig[] = { 0xa2, 0x46, 0xb3, 0xac, 0xef, 0xe0, 0xad, 0xe0, 0x93, 0xe0, 0xbc, 0x49, 0xf1, 0x5b, 0x28, 0x1f, 0x90, 0x42, 0xb6, 0x3d, 0x17, 0x50, 0x50, 0xb0, 0x33, 0xd7, 0x61, 0x9b, 0xa1, 0xf7, 0x7f, 0x57, 0x84, 0x71, 0xaa, 0x7a, 0x72, 0x0b, 0x30, 0xdd, 0x6e, 0x58, 0xcf, 0xc0, 0x02, 0x5b, 0xb9, 0x47, 0xd5, 0xee, 0x84, 0xb2, 0x2b, 0xf7, 0x30, 0x0d, 0x7f, 0x33, 0x4e, 0x48, 0x14, 0x1a, 0xf0, 0xfa, 0xde, 0x14, 0x69, 0xf5, 0xde, 0xdb, 0x85, 0x1c, 0x9e, 0x72, 0x5d, 0x27, 0xbd, 0x65, 0x01, 0x2b, 0xad, 0xa0, 0x5e, 0x70, 0xcd, 0xe6, 0x41, 0xaa, 0xd9, 0xce, 0x0b, 0xea, 0x49, 0x83, 0x16, 0x4f, 0x73, 0x81, 0x6b, 0x6f, 0x13, 0x09, 0x5e, 0x6b, 0x93, 0xeb, 0x03, 0xe8, 0x50, 0xca, 0xd0, 0xcf, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei448_68 = { .name = "eddsa_wei448_68", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_68_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_68_privkey, .privkeylen = 57, .msg = eddsa_wei448_68_msg, .msglen = 6, .sig = eddsa_wei448_68_sig, .siglen = 113, .result = -1, .comment = "all bits flipped in R, tcId is 69 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 69 for EDDSA, tcId is 70 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_69_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_69_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_69_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_69_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x24, 0x1b, 0xd6, 0x14, 0x2d, 0xdb, 0x02, 0xc0, 0xf9, 0xfa, 0x13, 0x39, 0x55, 0xd3, 0xe6, 0x10, 0xb4, 0xb2, 0x7c, 0xb8, 0x14, 0x22, 0x7d, 0xe8, 0xb2, 0x41, 0xef, 0x4e, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x66, }; static const wycheproof_eddsa_test eddsa_wei448_69 = { .name = "eddsa_wei448_69", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_69_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_69_privkey, .privkeylen = 57, .msg = eddsa_wei448_69_msg, .msglen = 4, .sig = eddsa_wei448_69_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 70 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 70 for EDDSA, tcId is 71 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_70_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_70_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_70_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_70_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x17, 0x60, 0x2e, 0xc0, 0xbf, 0x9d, 0x7b, 0xe3, 0x4e, 0x8a, 0xd9, 0xc6, 0xc7, 0x95, 0x53, 0x32, 0x44, 0xe9, 0x52, 0x67, 0x5e, 0xfd, 0xcb, 0xac, 0x9c, 0x65, 0xb9, 0xcb, 0x85, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0xa6, }; static const wycheproof_eddsa_test eddsa_wei448_70 = { .name = "eddsa_wei448_70", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_70_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_70_privkey, .privkeylen = 57, .msg = eddsa_wei448_70_msg, .msglen = 4, .sig = eddsa_wei448_70_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 71 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 71 for EDDSA, tcId is 72 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_71_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_71_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_71_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_71_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0xfd, 0xe9, 0xde, 0x16, 0xe5, 0x22, 0x6d, 0x2a, 0xf9, 0xa8, 0x64, 0xe2, 0xac, 0x1a, 0x2d, 0x75, 0x64, 0x56, 0xff, 0xc4, 0xf1, 0xb3, 0x69, 0x35, 0x70, 0xad, 0x4d, 0xc5, 0x84, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, }; static const wycheproof_eddsa_test eddsa_wei448_71 = { .name = "eddsa_wei448_71", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_71_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_71_privkey, .privkeylen = 57, .msg = eddsa_wei448_71_msg, .msglen = 4, .sig = eddsa_wei448_71_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 72 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 72 for EDDSA, tcId is 73 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_72_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_72_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_72_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_72_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0xc9, 0xfd, 0x3f, 0xc4, 0x2f, 0x2d, 0x50, 0xb8, 0x4d, 0xe6, 0x7a, 0x19, 0x77, 0x24, 0xe0, 0xfa, 0xa4, 0x30, 0x58, 0x80, 0x18, 0x21, 0xa5, 0x46, 0x17, 0x3d, 0x76, 0xb8, 0x82, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, }; static const wycheproof_eddsa_test eddsa_wei448_72 = { .name = "eddsa_wei448_72", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_72_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_72_privkey, .privkeylen = 57, .msg = eddsa_wei448_72_msg, .msglen = 4, .sig = eddsa_wei448_72_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 73 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 73 for EDDSA, tcId is 74 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_73_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_73_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_73_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_73_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x66, }; static const wycheproof_eddsa_test eddsa_wei448_73 = { .name = "eddsa_wei448_73", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_73_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_73_privkey, .privkeylen = 57, .msg = eddsa_wei448_73_msg, .msglen = 4, .sig = eddsa_wei448_73_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 74 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 74 for EDDSA, tcId is 75 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_74_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_74_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_74_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_74_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0xa6, }; static const wycheproof_eddsa_test eddsa_wei448_74 = { .name = "eddsa_wei448_74", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_74_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_74_privkey, .privkeylen = 57, .msg = eddsa_wei448_74_msg, .msglen = 4, .sig = eddsa_wei448_74_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 75 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 75 for EDDSA, tcId is 76 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_75_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_75_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_75_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_75_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x31, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x86, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, }; static const wycheproof_eddsa_test eddsa_wei448_75 = { .name = "eddsa_wei448_75", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_75_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_75_privkey, .privkeylen = 57, .msg = eddsa_wei448_75_msg, .msglen = 4, .sig = eddsa_wei448_75_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 76 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 76 for EDDSA, tcId is 77 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_76_pubkey[] = { 0x41, 0x96, 0x10, 0xa5, 0x34, 0xaf, 0x12, 0x7f, 0x58, 0x3b, 0x04, 0x81, 0x8c, 0xdb, 0x7f, 0x0f, 0xf3, 0x00, 0xb0, 0x25, 0xf2, 0xe0, 0x16, 0x82, 0xbc, 0xae, 0x33, 0xfd, 0x69, 0x1c, 0xee, 0x03, 0x95, 0x11, 0xdf, 0x0c, 0xdd, 0xc6, 0x90, 0xee, 0x97, 0x84, 0x26, 0xe8, 0xb3, 0x8e, 0x50, 0xce, 0x5a, 0xf7, 0xdc, 0xfb, 0xa5, 0x0f, 0x70, 0x4c, 0x00, }; static const unsigned char eddsa_wei448_76_privkey[] = { 0x88, 0x30, 0x1e, 0x07, 0x65, 0x18, 0xd3, 0x53, 0x7f, 0x93, 0x02, 0xee, 0x0f, 0x52, 0x23, 0xe4, 0xb6, 0x3e, 0x1f, 0x01, 0x60, 0x07, 0xd3, 0xc2, 0xeb, 0xdf, 0xec, 0x5f, 0x70, 0x99, 0x7e, 0x81, 0x19, 0xc6, 0xba, 0xd0, 0xae, 0x7b, 0x80, 0x3f, 0x48, 0x79, 0x1c, 0xa8, 0xec, 0x54, 0x9a, 0xa2, 0xa1, 0xb8, 0x62, 0xf7, 0xa5, 0x15, 0x90, 0xb9, 0xd5, }; static const unsigned char eddsa_wei448_76_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei448_76_sig[] = { 0x5d, 0x05, 0x3f, 0xf5, 0xb7, 0x1f, 0x6e, 0xc3, 0x28, 0x45, 0x25, 0xd3, 0x5d, 0x77, 0x93, 0x31, 0x78, 0xc8, 0xe1, 0x98, 0x79, 0x88, 0x6d, 0x08, 0xec, 0xcc, 0x6c, 0x7d, 0x27, 0xe9, 0xe5, 0xb5, 0xe0, 0x25, 0x37, 0xdb, 0xc4, 0xd4, 0x72, 0x35, 0x06, 0xe8, 0xd1, 0x71, 0xfc, 0x17, 0x33, 0x85, 0x75, 0x73, 0xdd, 0x02, 0xd1, 0x8f, 0x48, 0xf2, 0x80, 0x30, 0xd6, 0x7d, 0x69, 0x9a, 0x18, 0x8a, 0x9c, 0xa4, 0x6b, 0x4e, 0xab, 0xe2, 0x10, 0x7a, 0xef, 0x23, 0x7c, 0xa6, 0x09, 0xcb, 0x46, 0x2e, 0x24, 0xc9, 0x1d, 0x25, 0xd2, 0x85, 0x40, 0x2b, 0x6e, 0xf7, 0x86, 0x2b, 0x78, 0xa3, 0x86, 0x95, 0x02, 0x46, 0xff, 0x38, 0xd6, 0xd2, 0xf4, 0x58, 0x13, 0x6d, 0x12, 0xe3, 0xc9, 0x7f, 0xdd, 0x98, 0x26, }; static const wycheproof_eddsa_test eddsa_wei448_76 = { .name = "eddsa_wei448_76", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_76_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_76_privkey, .privkeylen = 57, .msg = eddsa_wei448_76_msg, .msglen = 4, .sig = eddsa_wei448_76_sig, .siglen = 113, .result = -1, .comment = "checking malleability , tcId is 77 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 77 for EDDSA, tcId is 78 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_77_pubkey[] = { 0x5f, 0xd7, 0x44, 0x9b, 0x59, 0xb4, 0x61, 0xfd, 0x2c, 0xe7, 0x87, 0xec, 0x61, 0x6a, 0xd4, 0x6a, 0x1d, 0xa1, 0x34, 0x24, 0x85, 0xa7, 0x0e, 0x1f, 0x8a, 0x0e, 0xa7, 0x5d, 0x80, 0xe9, 0x67, 0x78, 0xed, 0xf1, 0x24, 0x76, 0x9b, 0x46, 0xc7, 0x06, 0x1b, 0xd6, 0x78, 0x3d, 0xf1, 0xe5, 0x0f, 0x6c, 0xd1, 0xfa, 0x1a, 0xbe, 0xaf, 0xe8, 0x25, 0x61, 0x80, }; static const unsigned char eddsa_wei448_77_privkey[] = { 0x6c, 0x82, 0xa5, 0x62, 0xcb, 0x80, 0x8d, 0x10, 0xd6, 0x32, 0xbe, 0x89, 0xc8, 0x51, 0x3e, 0xbf, 0x6c, 0x92, 0x9f, 0x34, 0xdd, 0xfa, 0x8c, 0x9f, 0x63, 0xc9, 0x96, 0x0e, 0xf6, 0xe3, 0x48, 0xa3, 0x52, 0x8c, 0x8a, 0x3f, 0xcc, 0x2f, 0x04, 0x4e, 0x39, 0xa3, 0xfc, 0x5b, 0x94, 0x49, 0x2f, 0x8f, 0x03, 0x2e, 0x75, 0x49, 0xa2, 0x00, 0x98, 0xf9, 0x5b, }; static const unsigned char eddsa_wei448_77_sig[] = { 0x53, 0x3a, 0x37, 0xf6, 0xbb, 0xe4, 0x57, 0x25, 0x1f, 0x02, 0x3c, 0x0d, 0x88, 0xf9, 0x76, 0xae, 0x2d, 0xfb, 0x50, 0x4a, 0x84, 0x3e, 0x34, 0xd2, 0x07, 0x4f, 0xd8, 0x23, 0xd4, 0x1a, 0x59, 0x1f, 0x2b, 0x23, 0x3f, 0x03, 0x4f, 0x62, 0x82, 0x81, 0xf2, 0xfd, 0x7a, 0x22, 0xdd, 0xd4, 0x7d, 0x78, 0x28, 0xc5, 0x9b, 0xd0, 0xa2, 0x1b, 0xfd, 0x39, 0x80, 0xff, 0x0d, 0x20, 0x28, 0xd4, 0xb1, 0x8a, 0x9d, 0xf6, 0x3e, 0x00, 0x6c, 0x5d, 0x1c, 0x2d, 0x34, 0x5b, 0x92, 0x5d, 0x8d, 0xc0, 0x0b, 0x41, 0x04, 0x85, 0x2d, 0xb9, 0x9a, 0xc5, 0xc7, 0xcd, 0xda, 0x85, 0x30, 0xa1, 0x13, 0xa0, 0xf4, 0xdb, 0xb6, 0x11, 0x49, 0xf0, 0x5a, 0x73, 0x63, 0x26, 0x8c, 0x71, 0xd9, 0x58, 0x08, 0xff, 0x2e, 0x65, 0x26, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_77 = { .name = "eddsa_wei448_77", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_77_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_77_privkey, .privkeylen = 57, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei448_77_sig, .siglen = 114, .result = 1, .comment = "RFC 8032, tcId is 78 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 78 for EDDSA, tcId is 79 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_78_pubkey[] = { 0x43, 0xba, 0x28, 0xf4, 0x30, 0xcd, 0xff, 0x45, 0x6a, 0xe5, 0x31, 0x54, 0x5f, 0x7e, 0xcd, 0x0a, 0xc8, 0x34, 0xa5, 0x5d, 0x93, 0x58, 0xc0, 0x37, 0x2b, 0xfa, 0x0c, 0x6c, 0x67, 0x98, 0xc0, 0x86, 0x6a, 0xea, 0x01, 0xeb, 0x00, 0x74, 0x28, 0x02, 0xb8, 0x43, 0x8e, 0xa4, 0xcb, 0x82, 0x16, 0x9c, 0x23, 0x51, 0x60, 0x62, 0x7b, 0x4c, 0x3a, 0x94, 0x80, }; static const unsigned char eddsa_wei448_78_privkey[] = { 0xc4, 0xea, 0xb0, 0x5d, 0x35, 0x70, 0x07, 0xc6, 0x32, 0xf3, 0xdb, 0xb4, 0x84, 0x89, 0x92, 0x4d, 0x55, 0x2b, 0x08, 0xfe, 0x0c, 0x35, 0x3a, 0x0d, 0x4a, 0x1f, 0x00, 0xac, 0xda, 0x2c, 0x46, 0x3a, 0xfb, 0xea, 0x67, 0xc5, 0xe8, 0xd2, 0x87, 0x7c, 0x5e, 0x3b, 0xc3, 0x97, 0xa6, 0x59, 0x94, 0x9e, 0xf8, 0x02, 0x1e, 0x95, 0x4e, 0x0a, 0x12, 0x27, 0x4e, }; static const unsigned char eddsa_wei448_78_msg[] = { 0x03, }; static const unsigned char eddsa_wei448_78_sig[] = { 0x26, 0xb8, 0xf9, 0x17, 0x27, 0xbd, 0x62, 0x89, 0x7a, 0xf1, 0x5e, 0x41, 0xeb, 0x43, 0xc3, 0x77, 0xef, 0xb9, 0xc6, 0x10, 0xd4, 0x8f, 0x23, 0x35, 0xcb, 0x0b, 0xd0, 0x08, 0x78, 0x10, 0xf4, 0x35, 0x25, 0x41, 0xb1, 0x43, 0xc4, 0xb9, 0x81, 0xb7, 0xe1, 0x8f, 0x62, 0xde, 0x8c, 0xcd, 0xf6, 0x33, 0xfc, 0x1b, 0xf0, 0x37, 0xab, 0x7c, 0xd7, 0x79, 0x80, 0x5e, 0x0d, 0xbc, 0xc0, 0xaa, 0xe1, 0xcb, 0xce, 0xe1, 0xaf, 0xb2, 0xe0, 0x27, 0xdf, 0x36, 0xbc, 0x04, 0xdc, 0xec, 0xbf, 0x15, 0x43, 0x36, 0xc1, 0x9f, 0x0a, 0xf7, 0xe0, 0xa6, 0x47, 0x29, 0x05, 0xe7, 0x99, 0xf1, 0x95, 0x3d, 0x2a, 0x0f, 0xf3, 0x34, 0x8a, 0xb2, 0x1a, 0xa4, 0xad, 0xaf, 0xd1, 0xd2, 0x34, 0x44, 0x1c, 0xf8, 0x07, 0xc0, 0x3a, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_78 = { .name = "eddsa_wei448_78", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_78_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_78_privkey, .privkeylen = 57, .msg = eddsa_wei448_78_msg, .msglen = 1, .sig = eddsa_wei448_78_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 1 octet, tcId is 79 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 79 for EDDSA, tcId is 80 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_79_pubkey[] = { 0x43, 0xba, 0x28, 0xf4, 0x30, 0xcd, 0xff, 0x45, 0x6a, 0xe5, 0x31, 0x54, 0x5f, 0x7e, 0xcd, 0x0a, 0xc8, 0x34, 0xa5, 0x5d, 0x93, 0x58, 0xc0, 0x37, 0x2b, 0xfa, 0x0c, 0x6c, 0x67, 0x98, 0xc0, 0x86, 0x6a, 0xea, 0x01, 0xeb, 0x00, 0x74, 0x28, 0x02, 0xb8, 0x43, 0x8e, 0xa4, 0xcb, 0x82, 0x16, 0x9c, 0x23, 0x51, 0x60, 0x62, 0x7b, 0x4c, 0x3a, 0x94, 0x80, }; static const unsigned char eddsa_wei448_79_privkey[] = { 0xc4, 0xea, 0xb0, 0x5d, 0x35, 0x70, 0x07, 0xc6, 0x32, 0xf3, 0xdb, 0xb4, 0x84, 0x89, 0x92, 0x4d, 0x55, 0x2b, 0x08, 0xfe, 0x0c, 0x35, 0x3a, 0x0d, 0x4a, 0x1f, 0x00, 0xac, 0xda, 0x2c, 0x46, 0x3a, 0xfb, 0xea, 0x67, 0xc5, 0xe8, 0xd2, 0x87, 0x7c, 0x5e, 0x3b, 0xc3, 0x97, 0xa6, 0x59, 0x94, 0x9e, 0xf8, 0x02, 0x1e, 0x95, 0x4e, 0x0a, 0x12, 0x27, 0x4e, }; static const unsigned char eddsa_wei448_79_msg[] = { 0x03, }; static const unsigned char eddsa_wei448_79_sig[] = { 0xd4, 0xf8, 0xf6, 0x13, 0x17, 0x70, 0xdd, 0x46, 0xf4, 0x08, 0x67, 0xd6, 0xfd, 0x5d, 0x50, 0x55, 0xde, 0x43, 0x54, 0x1f, 0x8c, 0x5e, 0x35, 0xab, 0xbc, 0xd0, 0x01, 0xb3, 0x2a, 0x89, 0xf7, 0xd2, 0x15, 0x1f, 0x76, 0x47, 0xf1, 0x1d, 0x8c, 0xa2, 0xae, 0x27, 0x9f, 0xb8, 0x42, 0xd6, 0x07, 0x21, 0x7f, 0xce, 0x6e, 0x04, 0x2f, 0x68, 0x15, 0xea, 0x00, 0x0c, 0x85, 0x74, 0x1d, 0xe5, 0xc8, 0xda, 0x11, 0x44, 0xa6, 0xa1, 0xab, 0xa7, 0xf9, 0x6d, 0xe4, 0x25, 0x05, 0xd7, 0xa7, 0x29, 0x85, 0x24, 0xfd, 0xa5, 0x38, 0xfc, 0xcb, 0xbb, 0x75, 0x4f, 0x57, 0x8c, 0x1c, 0xad, 0x10, 0xd5, 0x4d, 0x0d, 0x54, 0x28, 0x40, 0x7e, 0x85, 0xdc, 0xbc, 0x98, 0xa4, 0x91, 0x55, 0xc1, 0x37, 0x64, 0xe6, 0x6c, 0x3c, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_79 = { .name = "eddsa_wei448_79", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_79_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_79_privkey, .privkeylen = 57, .msg = eddsa_wei448_79_msg, .msglen = 1, .sig = eddsa_wei448_79_sig, .siglen = 114, .result = -1, .comment = "RFC 8032: 1 octet with context, tcId is 80 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 80 for EDDSA, tcId is 81 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_80_pubkey[] = { 0xdc, 0xea, 0x9e, 0x78, 0xf3, 0x5a, 0x1b, 0xf3, 0x49, 0x9a, 0x83, 0x1b, 0x10, 0xb8, 0x6c, 0x90, 0xaa, 0xc0, 0x1c, 0xd8, 0x4b, 0x67, 0xa0, 0x10, 0x9b, 0x55, 0xa3, 0x6e, 0x93, 0x28, 0xb1, 0xe3, 0x65, 0xfc, 0xe1, 0x61, 0xd7, 0x1c, 0xe7, 0x13, 0x1a, 0x54, 0x3e, 0xa4, 0xcb, 0x5f, 0x7e, 0x9f, 0x1d, 0x8b, 0x00, 0x69, 0x64, 0x47, 0x00, 0x14, 0x00, }; static const unsigned char eddsa_wei448_80_privkey[] = { 0xcd, 0x23, 0xd2, 0x4f, 0x71, 0x42, 0x74, 0xe7, 0x44, 0x34, 0x32, 0x37, 0xb9, 0x32, 0x90, 0xf5, 0x11, 0xf6, 0x42, 0x5f, 0x98, 0xe6, 0x44, 0x59, 0xff, 0x20, 0x3e, 0x89, 0x85, 0x08, 0x3f, 0xfd, 0xf6, 0x05, 0x00, 0x55, 0x3a, 0xbc, 0x0e, 0x05, 0xcd, 0x02, 0x18, 0x4b, 0xdb, 0x89, 0xc4, 0xcc, 0xd6, 0x7e, 0x18, 0x79, 0x51, 0x26, 0x7e, 0xb3, 0x28, }; static const unsigned char eddsa_wei448_80_msg[] = { 0x0c, 0x3e, 0x54, 0x40, 0x74, 0xec, 0x63, 0xb0, 0x26, 0x5e, 0x0c, }; static const unsigned char eddsa_wei448_80_sig[] = { 0x1f, 0x0a, 0x88, 0x88, 0xce, 0x25, 0xe8, 0xd4, 0x58, 0xa2, 0x11, 0x30, 0x87, 0x9b, 0x84, 0x0a, 0x90, 0x89, 0xd9, 0x99, 0xaa, 0xba, 0x03, 0x9e, 0xaf, 0x3e, 0x3a, 0xfa, 0x09, 0x0a, 0x09, 0xd3, 0x89, 0xdb, 0xa8, 0x2c, 0x4f, 0xf2, 0xae, 0x8a, 0xc5, 0xcd, 0xfb, 0x7c, 0x55, 0xe9, 0x4d, 0x5d, 0x96, 0x1a, 0x29, 0xfe, 0x01, 0x09, 0x94, 0x1e, 0x00, 0xb8, 0xdb, 0xde, 0xea, 0x6d, 0x3b, 0x05, 0x10, 0x68, 0xdf, 0x72, 0x54, 0xc0, 0xcd, 0xc1, 0x29, 0xcb, 0xe6, 0x2d, 0xb2, 0xdc, 0x95, 0x7d, 0xbb, 0x47, 0xb5, 0x1f, 0xd3, 0xf2, 0x13, 0xfb, 0x86, 0x98, 0xf0, 0x64, 0x77, 0x42, 0x50, 0xa5, 0x02, 0x89, 0x61, 0xc9, 0xbf, 0x8f, 0xfd, 0x97, 0x3f, 0xe5, 0xd5, 0xc2, 0x06, 0x49, 0x2b, 0x14, 0x0e, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_80 = { .name = "eddsa_wei448_80", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_80_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_80_privkey, .privkeylen = 57, .msg = eddsa_wei448_80_msg, .msglen = 11, .sig = eddsa_wei448_80_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 11 bytes, tcId is 81 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 81 for EDDSA, tcId is 82 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_81_pubkey[] = { 0x3b, 0xa1, 0x6d, 0xa0, 0xc6, 0xf2, 0xcc, 0x1f, 0x30, 0x18, 0x77, 0x40, 0x75, 0x6f, 0x5e, 0x79, 0x8d, 0x6b, 0xc5, 0xfc, 0x01, 0x5d, 0x7c, 0x63, 0xcc, 0x95, 0x10, 0xee, 0x3f, 0xd4, 0x4a, 0xdc, 0x24, 0xd8, 0xe9, 0x68, 0xb6, 0xe4, 0x6e, 0x6f, 0x94, 0xd1, 0x9b, 0x94, 0x53, 0x61, 0x72, 0x6b, 0xd7, 0x5e, 0x14, 0x9e, 0xf0, 0x98, 0x17, 0xf5, 0x80, }; static const unsigned char eddsa_wei448_81_privkey[] = { 0x25, 0x8c, 0xdd, 0x4a, 0xda, 0x32, 0xed, 0x9c, 0x9f, 0xf5, 0x4e, 0x63, 0x75, 0x6a, 0xe5, 0x82, 0xfb, 0x8f, 0xab, 0x2a, 0xc7, 0x21, 0xf2, 0xc8, 0xe6, 0x76, 0xa7, 0x27, 0x68, 0x51, 0x3d, 0x93, 0x9f, 0x63, 0xdd, 0xdb, 0x55, 0x60, 0x91, 0x33, 0xf2, 0x9a, 0xdf, 0x86, 0xec, 0x99, 0x29, 0xdc, 0xcb, 0x52, 0xc1, 0xc5, 0xfd, 0x2f, 0xf7, 0xe2, 0x1b, }; static const unsigned char eddsa_wei448_81_msg[] = { 0x64, 0xa6, 0x5f, 0x3c, 0xde, 0xdc, 0xdd, 0x66, 0x81, 0x1e, 0x29, 0x15, }; static const unsigned char eddsa_wei448_81_sig[] = { 0x7e, 0xee, 0xab, 0x7c, 0x4e, 0x50, 0xfb, 0x79, 0x9b, 0x41, 0x8e, 0xe5, 0xe3, 0x19, 0x7f, 0xf6, 0xbf, 0x15, 0xd4, 0x3a, 0x14, 0xc3, 0x43, 0x89, 0xb5, 0x9d, 0xd1, 0xa7, 0xb1, 0xb8, 0x5b, 0x4a, 0xe9, 0x04, 0x38, 0xac, 0xa6, 0x34, 0xbe, 0xa4, 0x5e, 0x3a, 0x26, 0x95, 0xf1, 0x27, 0x0f, 0x07, 0xfd, 0xcd, 0xf7, 0xc6, 0x2b, 0x8e, 0xfe, 0xaf, 0x00, 0xb4, 0x5c, 0x2c, 0x96, 0xba, 0x45, 0x7e, 0xb1, 0xa8, 0xbf, 0x07, 0x5a, 0x3d, 0xb2, 0x8e, 0x5c, 0x24, 0xf6, 0xb9, 0x23, 0xed, 0x4a, 0xd7, 0x47, 0xc3, 0xc9, 0xe0, 0x3c, 0x70, 0x79, 0xef, 0xb8, 0x7c, 0xb1, 0x10, 0xd3, 0xa9, 0x98, 0x61, 0xe7, 0x20, 0x03, 0xcb, 0xae, 0x6d, 0x6b, 0x8b, 0x82, 0x7e, 0x4e, 0x6c, 0x14, 0x30, 0x64, 0xff, 0x3c, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_81 = { .name = "eddsa_wei448_81", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_81_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_81_privkey, .privkeylen = 57, .msg = eddsa_wei448_81_msg, .msglen = 12, .sig = eddsa_wei448_81_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 12 bytes, tcId is 82 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 82 for EDDSA, tcId is 83 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_82_pubkey[] = { 0xb3, 0xda, 0x07, 0x9b, 0x0a, 0xa4, 0x93, 0xa5, 0x77, 0x20, 0x29, 0xf0, 0x46, 0x7b, 0xae, 0xbe, 0xe5, 0xa8, 0x11, 0x2d, 0x9d, 0x3a, 0x22, 0x53, 0x23, 0x61, 0xda, 0x29, 0x4f, 0x7b, 0xb3, 0x81, 0x5c, 0x5d, 0xc5, 0x9e, 0x17, 0x6b, 0x4d, 0x9f, 0x38, 0x1c, 0xa0, 0x93, 0x8e, 0x13, 0xc6, 0xc0, 0x7b, 0x17, 0x4b, 0xe6, 0x5d, 0xfa, 0x57, 0x8e, 0x80, }; static const unsigned char eddsa_wei448_82_privkey[] = { 0x7e, 0xf4, 0xe8, 0x45, 0x44, 0x23, 0x67, 0x52, 0xfb, 0xb5, 0x6b, 0x8f, 0x31, 0xa2, 0x3a, 0x10, 0xe4, 0x28, 0x14, 0xf5, 0xf5, 0x5c, 0xa0, 0x37, 0xcd, 0xcc, 0x11, 0xc6, 0x4c, 0x9a, 0x3b, 0x29, 0x49, 0xc1, 0xbb, 0x60, 0x70, 0x03, 0x14, 0x61, 0x17, 0x32, 0xa6, 0xc2, 0xfe, 0xa9, 0x8e, 0xeb, 0xc0, 0x26, 0x6a, 0x11, 0xa9, 0x39, 0x70, 0x10, 0x0e, }; static const unsigned char eddsa_wei448_82_msg[] = { 0x64, 0xa6, 0x5f, 0x3c, 0xde, 0xdc, 0xdd, 0x66, 0x81, 0x1e, 0x29, 0x15, 0xe7, }; static const unsigned char eddsa_wei448_82_sig[] = { 0x6a, 0x12, 0x06, 0x6f, 0x55, 0x33, 0x1b, 0x6c, 0x22, 0xac, 0xd5, 0xd5, 0xbf, 0xc5, 0xd7, 0x12, 0x28, 0xfb, 0xda, 0x80, 0xae, 0x8d, 0xec, 0x26, 0xbd, 0xd3, 0x06, 0x74, 0x3c, 0x50, 0x27, 0xcb, 0x48, 0x90, 0x81, 0x0c, 0x16, 0x2c, 0x02, 0x74, 0x68, 0x67, 0x5e, 0xcf, 0x64, 0x5a, 0x83, 0x17, 0x6c, 0x0d, 0x73, 0x23, 0xa2, 0xcc, 0xde, 0x2d, 0x80, 0xef, 0xe5, 0xa1, 0x26, 0x8e, 0x8a, 0xca, 0x1d, 0x6f, 0xbc, 0x19, 0x4d, 0x3f, 0x77, 0xc4, 0x49, 0x86, 0xeb, 0x4a, 0xb4, 0x17, 0x79, 0x19, 0xad, 0x8b, 0xec, 0x33, 0xeb, 0x47, 0xbb, 0xb5, 0xfc, 0x6e, 0x28, 0x19, 0x6f, 0xd1, 0xca, 0xf5, 0x6b, 0x4e, 0x7e, 0x0b, 0xa5, 0x51, 0x92, 0x34, 0xd0, 0x47, 0x15, 0x5a, 0xc7, 0x27, 0xa1, 0x05, 0x31, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_82 = { .name = "eddsa_wei448_82", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_82_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_82_privkey, .privkeylen = 57, .msg = eddsa_wei448_82_msg, .msglen = 13, .sig = eddsa_wei448_82_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 13 bytes, tcId is 83 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 83 for EDDSA, tcId is 84 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_83_pubkey[] = { 0xdf, 0x97, 0x05, 0xf5, 0x8e, 0xdb, 0xab, 0x80, 0x2c, 0x7f, 0x83, 0x63, 0xcf, 0xe5, 0x56, 0x0a, 0xb1, 0xc6, 0x13, 0x2c, 0x20, 0xa9, 0xf1, 0xdd, 0x16, 0x34, 0x83, 0xa2, 0x6f, 0x8a, 0xc5, 0x3a, 0x39, 0xd6, 0x80, 0x8b, 0xf4, 0xa1, 0xdf, 0xbd, 0x26, 0x1b, 0x09, 0x9b, 0xb0, 0x3b, 0x3f, 0xb5, 0x09, 0x06, 0xcb, 0x28, 0xbd, 0x8a, 0x08, 0x1f, 0x00, }; static const unsigned char eddsa_wei448_83_privkey[] = { 0xd6, 0x5d, 0xf3, 0x41, 0xad, 0x13, 0xe0, 0x08, 0x56, 0x76, 0x88, 0xba, 0xed, 0xda, 0x8e, 0x9d, 0xcd, 0xc1, 0x7d, 0xc0, 0x24, 0x97, 0x4e, 0xa5, 0xb4, 0x22, 0x7b, 0x65, 0x30, 0xe3, 0x39, 0xbf, 0xf2, 0x1f, 0x99, 0xe6, 0x8c, 0xa6, 0x96, 0x8f, 0x3c, 0xca, 0x6d, 0xfe, 0x0f, 0xb9, 0xf4, 0xfa, 0xb4, 0xfa, 0x13, 0x5d, 0x55, 0x42, 0xea, 0x3f, 0x01, }; static const unsigned char eddsa_wei448_83_msg[] = { 0xbd, 0x0f, 0x6a, 0x37, 0x47, 0xcd, 0x56, 0x1b, 0xdd, 0xdf, 0x46, 0x40, 0xa3, 0x32, 0x46, 0x1a, 0x4a, 0x30, 0xa1, 0x2a, 0x43, 0x4c, 0xd0, 0xbf, 0x40, 0xd7, 0x66, 0xd9, 0xc6, 0xd4, 0x58, 0xe5, 0x51, 0x22, 0x04, 0xa3, 0x0c, 0x17, 0xd1, 0xf5, 0x0b, 0x50, 0x79, 0x63, 0x1f, 0x64, 0xeb, 0x31, 0x12, 0x18, 0x2d, 0xa3, 0x00, 0x58, 0x35, 0x46, 0x11, 0x13, 0x71, 0x8d, 0x1a, 0x5e, 0xf9, 0x44, }; static const unsigned char eddsa_wei448_83_sig[] = { 0x55, 0x4b, 0xc2, 0x48, 0x08, 0x60, 0xb4, 0x9e, 0xab, 0x85, 0x32, 0xd2, 0xa5, 0x33, 0xb7, 0xd5, 0x78, 0xef, 0x47, 0x3e, 0xeb, 0x58, 0xc9, 0x8b, 0xb2, 0xd0, 0xe1, 0xce, 0x48, 0x8a, 0x98, 0xb1, 0x8d, 0xfd, 0xe9, 0xb9, 0xb9, 0x07, 0x75, 0xe6, 0x7f, 0x47, 0xd4, 0xa1, 0xc3, 0x48, 0x20, 0x58, 0xef, 0xc9, 0xf4, 0x0d, 0x2c, 0xa0, 0x33, 0xa0, 0x80, 0x1b, 0x63, 0xd4, 0x5b, 0x3b, 0x72, 0x2e, 0xf5, 0x52, 0xba, 0xd3, 0xb4, 0xcc, 0xb6, 0x67, 0xda, 0x35, 0x01, 0x92, 0xb6, 0x1c, 0x50, 0x8c, 0xf7, 0xb6, 0xb5, 0xad, 0xad, 0xc2, 0xc8, 0xd9, 0xa4, 0x46, 0xef, 0x00, 0x3f, 0xb0, 0x5c, 0xba, 0x5f, 0x30, 0xe8, 0x8e, 0x36, 0xec, 0x27, 0x03, 0xb3, 0x49, 0xca, 0x22, 0x9c, 0x26, 0x70, 0x83, 0x39, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_83 = { .name = "eddsa_wei448_83", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_83_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_83_privkey, .privkeylen = 57, .msg = eddsa_wei448_83_msg, .msglen = 64, .sig = eddsa_wei448_83_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 64 bytes, tcId is 84 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 84 for EDDSA, tcId is 85 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_84_pubkey[] = { 0x79, 0x75, 0x6f, 0x01, 0x4d, 0xcf, 0xe2, 0x07, 0x9f, 0x5d, 0xd9, 0xe7, 0x18, 0xbe, 0x41, 0x71, 0xe2, 0xef, 0x24, 0x86, 0xa0, 0x8f, 0x25, 0x18, 0x6f, 0x6b, 0xff, 0x43, 0xa9, 0x93, 0x6b, 0x9b, 0xfe, 0x12, 0x40, 0x2b, 0x08, 0xae, 0x65, 0x79, 0x8a, 0x3d, 0x81, 0xe2, 0x2e, 0x9e, 0xc8, 0x0e, 0x76, 0x90, 0x86, 0x2e, 0xf3, 0xd4, 0xed, 0x3a, 0x00, }; static const unsigned char eddsa_wei448_84_privkey[] = { 0x2e, 0xc5, 0xfe, 0x3c, 0x17, 0x04, 0x5a, 0xbd, 0xb1, 0x36, 0xa5, 0xe6, 0xa9, 0x13, 0xe3, 0x2a, 0xb7, 0x5a, 0xe6, 0x8b, 0x53, 0xd2, 0xfc, 0x14, 0x9b, 0x77, 0xe5, 0x04, 0x13, 0x2d, 0x37, 0x56, 0x9b, 0x7e, 0x76, 0x6b, 0xa7, 0x4a, 0x19, 0xbd, 0x61, 0x62, 0x34, 0x3a, 0x21, 0xc8, 0x59, 0x0a, 0xa9, 0xce, 0xbc, 0xa9, 0x01, 0x4c, 0x63, 0x6d, 0xf5, }; static const unsigned char eddsa_wei448_84_msg[] = { 0x15, 0x77, 0x75, 0x32, 0xb0, 0xbd, 0xd0, 0xd1, 0x38, 0x9f, 0x63, 0x6c, 0x5f, 0x6b, 0x9b, 0xa7, 0x34, 0xc9, 0x0a, 0xf5, 0x72, 0x87, 0x7e, 0x2d, 0x27, 0x2d, 0xd0, 0x78, 0xaa, 0x1e, 0x56, 0x7c, 0xfa, 0x80, 0xe1, 0x29, 0x28, 0xbb, 0x54, 0x23, 0x30, 0xe8, 0x40, 0x9f, 0x31, 0x74, 0x50, 0x41, 0x07, 0xec, 0xd5, 0xef, 0xac, 0x61, 0xae, 0x75, 0x04, 0xda, 0xbe, 0x2a, 0x60, 0x2e, 0xde, 0x89, 0xe5, 0xcc, 0xa6, 0x25, 0x7a, 0x7c, 0x77, 0xe2, 0x7a, 0x70, 0x2b, 0x3a, 0xe3, 0x9f, 0xc7, 0x69, 0xfc, 0x54, 0xf2, 0x39, 0x5a, 0xe6, 0xa1, 0x17, 0x8c, 0xab, 0x47, 0x38, 0xe5, 0x43, 0x07, 0x2f, 0xc1, 0xc1, 0x77, 0xfe, 0x71, 0xe9, 0x2e, 0x25, 0xbf, 0x03, 0xe4, 0xec, 0xb7, 0x2f, 0x47, 0xb6, 0x4d, 0x04, 0x65, 0xaa, 0xea, 0x4c, 0x7f, 0xad, 0x37, 0x25, 0x36, 0xc8, 0xba, 0x51, 0x6a, 0x60, 0x39, 0xc3, 0xc2, 0xa3, 0x9f, 0x0e, 0x4d, 0x83, 0x2b, 0xe4, 0x32, 0xdf, 0xa9, 0xa7, 0x06, 0xa6, 0xe5, 0xc7, 0xe1, 0x9f, 0x39, 0x79, 0x64, 0xca, 0x42, 0x58, 0x00, 0x2f, 0x7c, 0x05, 0x41, 0xb5, 0x90, 0x31, 0x6d, 0xbc, 0x56, 0x22, 0xb6, 0xb2, 0xa6, 0xfe, 0x7a, 0x4a, 0xbf, 0xfd, 0x96, 0x10, 0x5e, 0xca, 0x76, 0xea, 0x7b, 0x98, 0x81, 0x6a, 0xf0, 0x74, 0x8c, 0x10, 0xdf, 0x04, 0x8c, 0xe0, 0x12, 0xd9, 0x01, 0x01, 0x5a, 0x51, 0xf1, 0x89, 0xf3, 0x88, 0x81, 0x45, 0xc0, 0x36, 0x50, 0xaa, 0x23, 0xce, 0x89, 0x4c, 0x3b, 0xd8, 0x89, 0xe0, 0x30, 0xd5, 0x65, 0x07, 0x1c, 0x59, 0xf4, 0x09, 0xa9, 0x98, 0x1b, 0x51, 0x87, 0x8f, 0xd6, 0xfc, 0x11, 0x06, 0x24, 0xdc, 0xbc, 0xde, 0x0b, 0xf7, 0xa6, 0x9c, 0xcc, 0xe3, 0x8f, 0xab, 0xdf, 0x86, 0xf3, 0xbe, 0xf6, 0x04, 0x48, 0x19, 0xde, 0x11, }; static const unsigned char eddsa_wei448_84_sig[] = { 0xc6, 0x50, 0xdd, 0xbb, 0x06, 0x01, 0xc1, 0x9c, 0xa1, 0x14, 0x39, 0xe1, 0x64, 0x0d, 0xd9, 0x31, 0xf4, 0x3c, 0x51, 0x8e, 0xa5, 0xbe, 0xa7, 0x0d, 0x3d, 0xcd, 0xe5, 0xf4, 0x19, 0x1f, 0xe5, 0x3f, 0x00, 0xcf, 0x96, 0x65, 0x46, 0xb7, 0x2b, 0xcc, 0x7d, 0x58, 0xbe, 0x2b, 0x9b, 0xad, 0xef, 0x28, 0x74, 0x39, 0x54, 0xe3, 0xa4, 0x4a, 0x23, 0xf8, 0x80, 0xe8, 0xd4, 0xf1, 0xcf, 0xce, 0x2d, 0x7a, 0x61, 0x45, 0x2d, 0x26, 0xda, 0x05, 0x89, 0x6f, 0x0a, 0x50, 0xda, 0x66, 0xa2, 0x39, 0xa8, 0xa1, 0x88, 0xb6, 0xd8, 0x25, 0xb3, 0x30, 0x5a, 0xd7, 0x7b, 0x73, 0xfb, 0xac, 0x08, 0x36, 0xec, 0xc6, 0x09, 0x87, 0xfd, 0x08, 0x52, 0x7c, 0x1a, 0x8e, 0x80, 0xd5, 0x82, 0x3e, 0x65, 0xca, 0xfe, 0x2a, 0x3d, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_84 = { .name = "eddsa_wei448_84", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_84_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_84_privkey, .privkeylen = 57, .msg = eddsa_wei448_84_msg, .msglen = 256, .sig = eddsa_wei448_84_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 256 bytes, tcId is 85 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 85 for EDDSA, tcId is 86 in file ed448_test.json */ #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) static const unsigned char eddsa_wei448_85_pubkey[] = { 0xa8, 0x1b, 0x2e, 0x8a, 0x70, 0xa5, 0xac, 0x94, 0xff, 0xdb, 0xcc, 0x9b, 0xad, 0xfc, 0x3f, 0xeb, 0x08, 0x01, 0xf2, 0x58, 0x57, 0x8b, 0xb1, 0x14, 0xad, 0x44, 0xec, 0xe1, 0xec, 0x0e, 0x79, 0x9d, 0xa0, 0x8e, 0xff, 0xb8, 0x1c, 0x5d, 0x68, 0x5c, 0x0c, 0x56, 0xf6, 0x4e, 0xec, 0xae, 0xf8, 0xcd, 0xf1, 0x1c, 0xc3, 0x87, 0x37, 0x83, 0x8c, 0xf4, 0x00, }; static const unsigned char eddsa_wei448_85_privkey[] = { 0x87, 0x2d, 0x09, 0x37, 0x80, 0xf5, 0xd3, 0x73, 0x0d, 0xf7, 0xc2, 0x12, 0x66, 0x4b, 0x37, 0xb8, 0xa0, 0xf2, 0x4f, 0x56, 0x81, 0x0d, 0xaa, 0x83, 0x82, 0xcd, 0x4f, 0xa3, 0xf7, 0x76, 0x34, 0xec, 0x44, 0xdc, 0x54, 0xf1, 0xc2, 0xed, 0x9b, 0xea, 0x86, 0xfa, 0xfb, 0x76, 0x32, 0xd8, 0xbe, 0x19, 0x9e, 0xa1, 0x65, 0xf5, 0xad, 0x55, 0xdd, 0x9c, 0xe8, }; static const unsigned char eddsa_wei448_85_msg[] = { 0x6d, 0xdf, 0x80, 0x2e, 0x1a, 0xae, 0x49, 0x86, 0x93, 0x5f, 0x7f, 0x98, 0x1b, 0xa3, 0xf0, 0x35, 0x1d, 0x62, 0x73, 0xc0, 0xa0, 0xc2, 0x2c, 0x9c, 0x0e, 0x83, 0x39, 0x16, 0x8e, 0x67, 0x54, 0x12, 0xa3, 0xde, 0xbf, 0xaf, 0x43, 0x5e, 0xd6, 0x51, 0x55, 0x80, 0x07, 0xdb, 0x43, 0x84, 0xb6, 0x50, 0xfc, 0xc0, 0x7e, 0x3b, 0x58, 0x6a, 0x27, 0xa4, 0xf7, 0xa0, 0x0a, 0xc8, 0xa6, 0xfe, 0xc2, 0xcd, 0x86, 0xae, 0x4b, 0xf1, 0x57, 0x0c, 0x41, 0xe6, 0xa4, 0x0c, 0x93, 0x1d, 0xb2, 0x7b, 0x2f, 0xaa, 0x15, 0xa8, 0xce, 0xdd, 0x52, 0xcf, 0xf7, 0x36, 0x2c, 0x4e, 0x6e, 0x23, 0xda, 0xec, 0x0f, 0xbc, 0x3a, 0x79, 0xb6, 0x80, 0x6e, 0x31, 0x6e, 0xfc, 0xc7, 0xb6, 0x81, 0x19, 0xbf, 0x46, 0xbc, 0x76, 0xa2, 0x60, 0x67, 0xa5, 0x3f, 0x29, 0x6d, 0xaf, 0xdb, 0xdc, 0x11, 0xc7, 0x7f, 0x77, 0x77, 0xe9, 0x72, 0x66, 0x0c, 0xf4, 0xb6, 0xa9, 0xb3, 0x69, 0xa6, 0x66, 0x5f, 0x02, 0xe0, 0xcc, 0x9b, 0x6e, 0xdf, 0xad, 0x13, 0x6b, 0x4f, 0xab, 0xe7, 0x23, 0xd2, 0x81, 0x3d, 0xb3, 0x13, 0x6c, 0xfd, 0xe9, 0xb6, 0xd0, 0x44, 0x32, 0x2f, 0xee, 0x29, 0x47, 0x95, 0x2e, 0x03, 0x1b, 0x73, 0xab, 0x5c, 0x60, 0x33, 0x49, 0xb3, 0x07, 0xbd, 0xc2, 0x7b, 0xc6, 0xcb, 0x8b, 0x8b, 0xbd, 0x7b, 0xd3, 0x23, 0x21, 0x9b, 0x80, 0x33, 0xa5, 0x81, 0xb5, 0x9e, 0xad, 0xeb, 0xb0, 0x9b, 0x3c, 0x4f, 0x3d, 0x22, 0x77, 0xd4, 0xf0, 0x34, 0x36, 0x24, 0xac, 0xc8, 0x17, 0x80, 0x47, 0x28, 0xb2, 0x5a, 0xb7, 0x97, 0x17, 0x2b, 0x4c, 0x5c, 0x21, 0xa2, 0x2f, 0x9c, 0x78, 0x39, 0xd6, 0x43, 0x00, 0x23, 0x2e, 0xb6, 0x6e, 0x53, 0xf3, 0x1c, 0x72, 0x3f, 0xa3, 0x7f, 0xe3, 0x87, 0xc7, 0xd3, 0xe5, 0x0b, 0xdf, 0x98, 0x13, 0xa3, 0x0e, 0x5b, 0xb1, 0x2c, 0xf4, 0xcd, 0x93, 0x0c, 0x40, 0xcf, 0xb4, 0xe1, 0xfc, 0x62, 0x25, 0x92, 0xa4, 0x95, 0x88, 0x79, 0x44, 0x94, 0xd5, 0x6d, 0x24, 0xea, 0x4b, 0x40, 0xc8, 0x9f, 0xc0, 0x59, 0x6c, 0xc9, 0xeb, 0xb9, 0x61, 0xc8, 0xcb, 0x10, 0xad, 0xde, 0x97, 0x6a, 0x5d, 0x60, 0x2b, 0x1c, 0x3f, 0x85, 0xb9, 0xb9, 0xa0, 0x01, 0xed, 0x3c, 0x6a, 0x4d, 0x3b, 0x14, 0x37, 0xf5, 0x20, 0x96, 0xcd, 0x19, 0x56, 0xd0, 0x42, 0xa5, 0x97, 0xd5, 0x61, 0xa5, 0x96, 0xec, 0xd3, 0xd1, 0x73, 0x5a, 0x8d, 0x57, 0x0e, 0xa0, 0xec, 0x27, 0x22, 0x5a, 0x2c, 0x4a, 0xaf, 0xf2, 0x63, 0x06, 0xd1, 0x52, 0x6c, 0x1a, 0xf3, 0xca, 0x6d, 0x9c, 0xf5, 0xa2, 0xc9, 0x8f, 0x47, 0xe1, 0xc4, 0x6d, 0xb9, 0xa3, 0x32, 0x34, 0xcf, 0xd4, 0xd8, 0x1f, 0x2c, 0x98, 0x53, 0x8a, 0x09, 0xeb, 0xe7, 0x69, 0x98, 0xd0, 0xd8, 0xfd, 0x25, 0x99, 0x7c, 0x7d, 0x25, 0x5c, 0x6d, 0x66, 0xec, 0xe6, 0xfa, 0x56, 0xf1, 0x11, 0x44, 0x95, 0x0f, 0x02, 0x77, 0x95, 0xe6, 0x53, 0x00, 0x8f, 0x4b, 0xd7, 0xca, 0x2d, 0xee, 0x85, 0xd8, 0xe9, 0x0f, 0x3d, 0xc3, 0x15, 0x13, 0x0c, 0xe2, 0xa0, 0x03, 0x75, 0xa3, 0x18, 0xc7, 0xc3, 0xd9, 0x7b, 0xe2, 0xc8, 0xce, 0x5b, 0x6d, 0xb4, 0x1a, 0x62, 0x54, 0xff, 0x26, 0x4f, 0xa6, 0x15, 0x5b, 0xae, 0xe3, 0xb0, 0x77, 0x3c, 0x0f, 0x49, 0x7c, 0x57, 0x3f, 0x19, 0xbb, 0x4f, 0x42, 0x40, 0x28, 0x1f, 0x0b, 0x1f, 0x4f, 0x7b, 0xe8, 0x57, 0xa4, 0xe5, 0x9d, 0x41, 0x6c, 0x06, 0xb4, 0xc5, 0x0f, 0xa0, 0x9e, 0x18, 0x10, 0xdd, 0xc6, 0xb1, 0x46, 0x7b, 0xae, 0xac, 0x5a, 0x36, 0x68, 0xd1, 0x1b, 0x6e, 0xca, 0xa9, 0x01, 0x44, 0x00, 0x16, 0xf3, 0x89, 0xf8, 0x0a, 0xcc, 0x4d, 0xb9, 0x77, 0x02, 0x5e, 0x7f, 0x59, 0x24, 0x38, 0x8c, 0x7e, 0x34, 0x0a, 0x73, 0x2e, 0x55, 0x44, 0x40, 0xe7, 0x65, 0x70, 0xf8, 0xdd, 0x71, 0xb7, 0xd6, 0x40, 0xb3, 0x45, 0x0d, 0x1f, 0xd5, 0xf0, 0x41, 0x0a, 0x18, 0xf9, 0xa3, 0x49, 0x4f, 0x70, 0x7c, 0x71, 0x7b, 0x79, 0xb4, 0xbf, 0x75, 0xc9, 0x84, 0x00, 0xb0, 0x96, 0xb2, 0x16, 0x53, 0xb5, 0xd2, 0x17, 0xcf, 0x35, 0x65, 0xc9, 0x59, 0x74, 0x56, 0xf7, 0x07, 0x03, 0x49, 0x7a, 0x07, 0x87, 0x63, 0x82, 0x9b, 0xc0, 0x1b, 0xb1, 0xcb, 0xc8, 0xfa, 0x04, 0xea, 0xdc, 0x9a, 0x6e, 0x3f, 0x66, 0x99, 0x58, 0x7a, 0x9e, 0x75, 0xc9, 0x4e, 0x5b, 0xab, 0x00, 0x36, 0xe0, 0xb2, 0xe7, 0x11, 0x39, 0x2c, 0xff, 0x00, 0x47, 0xd0, 0xd6, 0xb0, 0x5b, 0xd2, 0xa5, 0x88, 0xbc, 0x10, 0x97, 0x18, 0x95, 0x42, 0x59, 0xf1, 0xd8, 0x66, 0x78, 0xa5, 0x79, 0xa3, 0x12, 0x0f, 0x19, 0xcf, 0xb2, 0x96, 0x3f, 0x17, 0x7a, 0xeb, 0x70, 0xf2, 0xd4, 0x84, 0x48, 0x26, 0x26, 0x2e, 0x51, 0xb8, 0x02, 0x71, 0x27, 0x20, 0x68, 0xef, 0x5b, 0x38, 0x56, 0xfa, 0x85, 0x35, 0xaa, 0x2a, 0x88, 0xb2, 0xd4, 0x1f, 0x2a, 0x0e, 0x2f, 0xda, 0x76, 0x24, 0xc2, 0x85, 0x02, 0x72, 0xac, 0x4a, 0x2f, 0x56, 0x1f, 0x8f, 0x2f, 0x7a, 0x31, 0x8b, 0xfd, 0x5c, 0xaf, 0x96, 0x96, 0x14, 0x9e, 0x4a, 0xc8, 0x24, 0xad, 0x34, 0x60, 0x53, 0x8f, 0xdc, 0x25, 0x42, 0x1b, 0xee, 0xc2, 0xcc, 0x68, 0x18, 0x16, 0x2d, 0x06, 0xbb, 0xed, 0x0c, 0x40, 0xa3, 0x87, 0x19, 0x23, 0x49, 0xdb, 0x67, 0xa1, 0x18, 0xba, 0xda, 0x6c, 0xd5, 0xab, 0x01, 0x40, 0xee, 0x27, 0x32, 0x04, 0xf6, 0x28, 0xaa, 0xd1, 0xc1, 0x35, 0xf7, 0x70, 0x27, 0x9a, 0x65, 0x1e, 0x24, 0xd8, 0xc1, 0x4d, 0x75, 0xa6, 0x05, 0x9d, 0x76, 0xb9, 0x6a, 0x6f, 0xd8, 0x57, 0xde, 0xf5, 0xe0, 0xb3, 0x54, 0xb2, 0x7a, 0xb9, 0x37, 0xa5, 0x81, 0x5d, 0x16, 0xb5, 0xfa, 0xe4, 0x07, 0xff, 0x18, 0x22, 0x2c, 0x6d, 0x1e, 0xd2, 0x63, 0xbe, 0x68, 0xc9, 0x5f, 0x32, 0xd9, 0x08, 0xbd, 0x89, 0x5c, 0xd7, 0x62, 0x07, 0xae, 0x72, 0x64, 0x87, 0x56, 0x7f, 0x9a, 0x67, 0xda, 0xd7, 0x9a, 0xbe, 0xc3, 0x16, 0xf6, 0x83, 0xb1, 0x7f, 0x2d, 0x02, 0xbf, 0x07, 0xe0, 0xac, 0x8b, 0x5b, 0xc6, 0x16, 0x2c, 0xf9, 0x46, 0x97, 0xb3, 0xc2, 0x7c, 0xd1, 0xfe, 0xa4, 0x9b, 0x27, 0xf2, 0x3b, 0xa2, 0x90, 0x18, 0x71, 0x96, 0x25, 0x06, 0x52, 0x0c, 0x39, 0x2d, 0xa8, 0xb6, 0xad, 0x0d, 0x99, 0xf7, 0x01, 0x3f, 0xbc, 0x06, 0xc2, 0xc1, 0x7a, 0x56, 0x95, 0x00, 0xc8, 0xa7, 0x69, 0x64, 0x81, 0xc1, 0xcd, 0x33, 0xe9, 0xb1, 0x4e, 0x40, 0xb8, 0x2e, 0x79, 0xa5, 0xf5, 0xdb, 0x82, 0x57, 0x1b, 0xa9, 0x7b, 0xae, 0x3a, 0xd3, 0xe0, 0x47, 0x95, 0x15, 0xbb, 0x0e, 0x2b, 0x0f, 0x3b, 0xfc, 0xd1, 0xfd, 0x33, 0x03, 0x4e, 0xfc, 0x62, 0x45, 0xed, 0xdd, 0x7e, 0xe2, 0x08, 0x6d, 0xda, 0xe2, 0x60, 0x0d, 0x8c, 0xa7, 0x3e, 0x21, 0x4e, 0x8c, 0x2b, 0x0b, 0xdb, 0x2b, 0x04, 0x7c, 0x6a, 0x46, 0x4a, 0x56, 0x2e, 0xd7, 0x7b, 0x73, 0xd2, 0xd8, 0x41, 0xc4, 0xb3, 0x49, 0x73, 0x55, 0x12, 0x57, 0x71, 0x3b, 0x75, 0x36, 0x32, 0xef, 0xba, 0x34, 0x81, 0x69, 0xab, 0xc9, 0x0a, 0x68, 0xf4, 0x26, 0x11, 0xa4, 0x01, 0x26, 0xd7, 0xcb, 0x21, 0xb5, 0x86, 0x95, 0x56, 0x81, 0x86, 0xf7, 0xe5, 0x69, 0xd2, 0xff, 0x0f, 0x9e, 0x74, 0x5d, 0x04, 0x87, 0xdd, 0x2e, 0xb9, 0x97, 0xca, 0xfc, 0x5a, 0xbf, 0x9d, 0xd1, 0x02, 0xe6, 0x2f, 0xf6, 0x6c, 0xba, 0x87, }; static const unsigned char eddsa_wei448_85_sig[] = { 0xe3, 0x01, 0x34, 0x5a, 0x41, 0xa3, 0x9a, 0x4d, 0x72, 0xff, 0xf8, 0xdf, 0x69, 0xc9, 0x80, 0x75, 0xa0, 0xcc, 0x08, 0x2b, 0x80, 0x2f, 0xc9, 0xb2, 0xb6, 0xbc, 0x50, 0x3f, 0x92, 0x6b, 0x65, 0xbd, 0xdf, 0x7f, 0x4c, 0x8f, 0x1c, 0xb4, 0x9f, 0x63, 0x96, 0xaf, 0xc8, 0xa7, 0x0a, 0xbe, 0x6d, 0x8a, 0xef, 0x0d, 0xb4, 0x78, 0xd4, 0xc6, 0xb2, 0x97, 0x00, 0x76, 0xc6, 0xa0, 0x48, 0x4f, 0xe7, 0x6d, 0x76, 0xb3, 0xa9, 0x76, 0x25, 0xd7, 0x9f, 0x1c, 0xe2, 0x40, 0xe7, 0xc5, 0x76, 0x75, 0x0d, 0x29, 0x55, 0x28, 0x28, 0x6f, 0x71, 0x9b, 0x41, 0x3d, 0xe9, 0xad, 0xa3, 0xe8, 0xeb, 0x78, 0xed, 0x57, 0x36, 0x03, 0xce, 0x30, 0xd8, 0xbb, 0x76, 0x17, 0x85, 0xdc, 0x30, 0xdb, 0xc3, 0x20, 0x86, 0x9e, 0x1a, 0x00, }; static const wycheproof_eddsa_test eddsa_wei448_85 = { .name = "eddsa_wei448_85", .sig_alg = EDDSA448, .hash = SHAKE256, .curve = &wei448_str_params, .pubkey = eddsa_wei448_85_pubkey, .pubkeylen = 57, .privkey = eddsa_wei448_85_privkey, .privkeylen = 57, .msg = eddsa_wei448_85_msg, .msglen = 1023, .sig = eddsa_wei448_85_sig, .siglen = 114, .result = 1, .comment = "RFC 8032: 1023 bytes, tcId is 86 in file ed448_test.json", }; #endif /* defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) */ /* Test 86 for EDDSA, tcId is 1 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_86_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_86_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_86_sig[] = { 0xd4, 0xfb, 0xdb, 0x52, 0xbf, 0xa7, 0x26, 0xb4, 0x4d, 0x17, 0x86, 0xa8, 0xc0, 0xd1, 0x71, 0xc3, 0xe6, 0x2c, 0xa8, 0x3c, 0x9e, 0x5b, 0xbe, 0x63, 0xde, 0x0b, 0xb2, 0x48, 0x3f, 0x8f, 0xd6, 0xcc, 0x14, 0x29, 0xab, 0x72, 0xca, 0xfc, 0x41, 0xab, 0x56, 0xaf, 0x02, 0xff, 0x8f, 0xcc, 0x43, 0xb9, 0x9b, 0xfe, 0x4c, 0x7a, 0xe9, 0x40, 0xf6, 0x0f, 0x38, 0xeb, 0xaa, 0x9d, 0x31, 0x1c, 0x40, 0x07, }; static const wycheproof_eddsa_test eddsa_wei25519_86 = { .name = "eddsa_wei25519_86", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_86_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_86_privkey, .privkeylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei25519_86_sig, .siglen = 64, .result = 1, .comment = ", tcId is 1 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 87 for EDDSA, tcId is 2 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_87_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_87_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_87_msg[] = { 0x78, }; static const unsigned char eddsa_wei25519_87_sig[] = { 0xd8, 0x07, 0x37, 0x35, 0x8e, 0xde, 0x54, 0x8a, 0xcb, 0x17, 0x3e, 0xf7, 0xe0, 0x39, 0x9f, 0x83, 0x39, 0x2f, 0xe8, 0x12, 0x5b, 0x2c, 0xe8, 0x77, 0xde, 0x79, 0x75, 0xd8, 0xb7, 0x26, 0xef, 0x5b, 0x1e, 0x76, 0x63, 0x22, 0x80, 0xee, 0x38, 0xaf, 0xad, 0x12, 0x12, 0x5e, 0xa4, 0x4b, 0x96, 0x1b, 0xf9, 0x2f, 0x11, 0x78, 0xc9, 0xfa, 0x81, 0x9d, 0x02, 0x08, 0x69, 0x97, 0x5b, 0xcb, 0xe1, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_87 = { .name = "eddsa_wei25519_87", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_87_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_87_privkey, .privkeylen = 32, .msg = eddsa_wei25519_87_msg, .msglen = 1, .sig = eddsa_wei25519_87_sig, .siglen = 64, .result = 1, .comment = ", tcId is 2 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 88 for EDDSA, tcId is 3 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_88_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_88_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_88_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_88_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_88 = { .name = "eddsa_wei25519_88", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_88_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_88_privkey, .privkeylen = 32, .msg = eddsa_wei25519_88_msg, .msglen = 4, .sig = eddsa_wei25519_88_sig, .siglen = 64, .result = 1, .comment = ", tcId is 3 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 89 for EDDSA, tcId is 4 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_89_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_89_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_89_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char eddsa_wei25519_89_sig[] = { 0x1c, 0x1a, 0xd9, 0x76, 0xcb, 0xaa, 0xe3, 0xb3, 0x1d, 0xee, 0x07, 0x97, 0x1c, 0xf9, 0x2c, 0x92, 0x8c, 0xe2, 0x09, 0x1a, 0x85, 0xf5, 0x89, 0x9f, 0x5e, 0x11, 0xec, 0xec, 0x90, 0xfc, 0x9f, 0x8e, 0x93, 0xdf, 0x18, 0xc5, 0x03, 0x7e, 0xc9, 0xb2, 0x9c, 0x07, 0x19, 0x5a, 0xd2, 0x84, 0xe6, 0x3d, 0x54, 0x8c, 0xd0, 0xa6, 0xfe, 0x35, 0x8c, 0xc7, 0x75, 0xbd, 0x6c, 0x16, 0x08, 0xd2, 0xc9, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_89 = { .name = "eddsa_wei25519_89", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_89_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_89_privkey, .privkeylen = 32, .msg = eddsa_wei25519_89_msg, .msglen = 5, .sig = eddsa_wei25519_89_sig, .siglen = 64, .result = 1, .comment = ", tcId is 4 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 90 for EDDSA, tcId is 5 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_90_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_90_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_90_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_90_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xf0, 0xcf, 0x5b, 0x3a, 0x28, 0x99, 0x76, 0x45, 0x8a, 0x1b, 0xe6, 0x27, 0x7a, 0x50, 0x55, 0x54, 0x52, 0x53, 0xb4, 0x5b, 0x07, 0xdc, 0xc1, 0xab, 0xd9, 0x6c, 0x8b, 0x98, 0x9c, 0x00, 0xf3, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_90 = { .name = "eddsa_wei25519_90", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_90_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_90_privkey, .privkeylen = 32, .msg = eddsa_wei25519_90_msg, .msglen = 6, .sig = eddsa_wei25519_90_sig, .siglen = 64, .result = 1, .comment = ", tcId is 5 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 91 for EDDSA, tcId is 6 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_91_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_91_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_91_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char eddsa_wei25519_91_sig[] = { 0xd4, 0x65, 0x43, 0xbf, 0xb8, 0x92, 0xf8, 0x4e, 0xc1, 0x24, 0xdc, 0xdf, 0xc8, 0x47, 0x03, 0x4c, 0x19, 0x36, 0x3b, 0xf3, 0xfc, 0x2f, 0xa8, 0x9b, 0x12, 0x67, 0x83, 0x3a, 0x14, 0x85, 0x6e, 0x52, 0xe6, 0x07, 0x36, 0x91, 0x87, 0x83, 0xf9, 0x50, 0xb6, 0xf1, 0xdd, 0x8d, 0x40, 0xdc, 0x34, 0x32, 0x47, 0xcd, 0x43, 0xce, 0x05, 0x4c, 0x2d, 0x68, 0xef, 0x97, 0x4f, 0x7e, 0xd0, 0xf3, 0xc6, 0x0f, }; static const wycheproof_eddsa_test eddsa_wei25519_91 = { .name = "eddsa_wei25519_91", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_91_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_91_privkey, .privkeylen = 32, .msg = eddsa_wei25519_91_msg, .msglen = 12, .sig = eddsa_wei25519_91_sig, .siglen = 64, .result = 1, .comment = ", tcId is 6 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 92 for EDDSA, tcId is 7 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_92_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_92_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_92_msg[] = { 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, }; static const unsigned char eddsa_wei25519_92_sig[] = { 0x87, 0x93, 0x50, 0x04, 0x55, 0x43, 0xbc, 0x14, 0xed, 0x2c, 0x08, 0x93, 0x9b, 0x68, 0xc3, 0x0d, 0x22, 0x25, 0x1d, 0x83, 0xe0, 0x18, 0xca, 0xcb, 0xaf, 0x0c, 0x9d, 0x7a, 0x48, 0xdb, 0x57, 0x7e, 0x80, 0xbd, 0xf7, 0x6c, 0xe9, 0x9e, 0x59, 0x26, 0x76, 0x2b, 0xc1, 0x3b, 0x7b, 0x34, 0x83, 0x26, 0x0a, 0x5e, 0xf6, 0x3d, 0x07, 0xe3, 0x4b, 0x58, 0xeb, 0x9c, 0x14, 0x62, 0x1a, 0xc9, 0x2f, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_92 = { .name = "eddsa_wei25519_92", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_92_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_92_privkey, .privkeylen = 32, .msg = eddsa_wei25519_92_msg, .msglen = 65, .sig = eddsa_wei25519_92_sig, .siglen = 64, .result = 1, .comment = ", tcId is 7 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 93 for EDDSA, tcId is 8 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_93_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_93_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_93_msg[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, }; static const unsigned char eddsa_wei25519_93_sig[] = { 0x7b, 0xdc, 0x3f, 0x99, 0x19, 0xa0, 0x5f, 0x1d, 0x5d, 0xb4, 0xa3, 0xad, 0xa8, 0x96, 0x09, 0x4f, 0x68, 0x71, 0xc1, 0xf3, 0x7a, 0xfc, 0x75, 0xdb, 0x82, 0xec, 0x31, 0x47, 0xd8, 0x4d, 0x6f, 0x23, 0x7b, 0x7e, 0x5e, 0xcc, 0x26, 0xb5, 0x9c, 0xfe, 0xa0, 0xc7, 0xea, 0xf1, 0x05, 0x2d, 0xc4, 0x27, 0xb0, 0xf7, 0x24, 0x61, 0x5b, 0xe9, 0xc3, 0xd3, 0xe0, 0x13, 0x56, 0xc6, 0x5b, 0x9b, 0x51, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_93 = { .name = "eddsa_wei25519_93", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_93_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_93_privkey, .privkeylen = 32, .msg = eddsa_wei25519_93_msg, .msglen = 65, .sig = eddsa_wei25519_93_sig, .siglen = 64, .result = 1, .comment = ", tcId is 8 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 94 for EDDSA, tcId is 9 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_94_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_94_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_94_msg[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char eddsa_wei25519_94_sig[] = { 0x5d, 0xbd, 0x73, 0x60, 0xe5, 0x5a, 0xa3, 0x8e, 0x85, 0x5d, 0x6a, 0xd4, 0x8c, 0x34, 0xbd, 0x35, 0xb7, 0x87, 0x16, 0x28, 0x50, 0x89, 0x06, 0x86, 0x1a, 0x7c, 0x47, 0x76, 0x76, 0x5e, 0xd7, 0xd1, 0xe1, 0x3d, 0x91, 0x0f, 0xaa, 0xbd, 0x68, 0x9e, 0xc8, 0x61, 0x8b, 0x78, 0x29, 0x5c, 0x8a, 0xb8, 0xf0, 0xe1, 0x9c, 0x8b, 0x4b, 0x43, 0xeb, 0x86, 0x85, 0x77, 0x84, 0x99, 0xe9, 0x43, 0xae, 0x04, }; static const wycheproof_eddsa_test eddsa_wei25519_94 = { .name = "eddsa_wei25519_94", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_94_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_94_privkey, .privkeylen = 32, .msg = eddsa_wei25519_94_msg, .msglen = 16, .sig = eddsa_wei25519_94_sig, .siglen = 64, .result = 1, .comment = ", tcId is 9 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 95 for EDDSA, tcId is 10 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_95_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_95_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_95_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_95_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_95 = { .name = "eddsa_wei25519_95", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_95_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_95_privkey, .privkeylen = 32, .msg = eddsa_wei25519_95_msg, .msglen = 1, .sig = eddsa_wei25519_95_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 10 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 96 for EDDSA, tcId is 11 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_96_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_96_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_96_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_96_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_96 = { .name = "eddsa_wei25519_96", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_96_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_96_privkey, .privkeylen = 32, .msg = eddsa_wei25519_96_msg, .msglen = 1, .sig = eddsa_wei25519_96_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 11 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 97 for EDDSA, tcId is 12 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_97_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_97_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_97_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_97_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_97 = { .name = "eddsa_wei25519_97", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_97_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_97_privkey, .privkeylen = 32, .msg = eddsa_wei25519_97_msg, .msglen = 1, .sig = eddsa_wei25519_97_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 12 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 98 for EDDSA, tcId is 13 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_98_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_98_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_98_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_98_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_98 = { .name = "eddsa_wei25519_98", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_98_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_98_privkey, .privkeylen = 32, .msg = eddsa_wei25519_98_msg, .msglen = 1, .sig = eddsa_wei25519_98_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 13 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 99 for EDDSA, tcId is 14 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_99_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_99_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_99_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_99_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_eddsa_test eddsa_wei25519_99 = { .name = "eddsa_wei25519_99", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_99_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_99_privkey, .privkeylen = 32, .msg = eddsa_wei25519_99_msg, .msglen = 1, .sig = eddsa_wei25519_99_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 14 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 100 for EDDSA, tcId is 15 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_100_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_100_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_100_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_100_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_100 = { .name = "eddsa_wei25519_100", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_100_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_100_privkey, .privkeylen = 32, .msg = eddsa_wei25519_100_msg, .msglen = 1, .sig = eddsa_wei25519_100_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 15 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 101 for EDDSA, tcId is 16 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_101_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_101_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_101_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_101_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_101 = { .name = "eddsa_wei25519_101", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_101_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_101_privkey, .privkeylen = 32, .msg = eddsa_wei25519_101_msg, .msglen = 1, .sig = eddsa_wei25519_101_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 16 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 102 for EDDSA, tcId is 17 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_102_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_102_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_102_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_102_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_102 = { .name = "eddsa_wei25519_102", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_102_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_102_privkey, .privkeylen = 32, .msg = eddsa_wei25519_102_msg, .msglen = 1, .sig = eddsa_wei25519_102_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 17 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 103 for EDDSA, tcId is 18 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_103_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_103_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_103_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_103_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_103 = { .name = "eddsa_wei25519_103", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_103_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_103_privkey, .privkeylen = 32, .msg = eddsa_wei25519_103_msg, .msglen = 1, .sig = eddsa_wei25519_103_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 18 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 104 for EDDSA, tcId is 19 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_104_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_104_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_104_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_104_sig[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_eddsa_test eddsa_wei25519_104 = { .name = "eddsa_wei25519_104", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_104_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_104_privkey, .privkeylen = 32, .msg = eddsa_wei25519_104_msg, .msglen = 1, .sig = eddsa_wei25519_104_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 19 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 105 for EDDSA, tcId is 20 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_105_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_105_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_105_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_105_sig[] = { 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_105 = { .name = "eddsa_wei25519_105", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_105_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_105_privkey, .privkeylen = 32, .msg = eddsa_wei25519_105_msg, .msglen = 1, .sig = eddsa_wei25519_105_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 20 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 106 for EDDSA, tcId is 21 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_106_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_106_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_106_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_106_sig[] = { 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_106 = { .name = "eddsa_wei25519_106", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_106_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_106_privkey, .privkeylen = 32, .msg = eddsa_wei25519_106_msg, .msglen = 1, .sig = eddsa_wei25519_106_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 21 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 107 for EDDSA, tcId is 22 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_107_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_107_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_107_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_107_sig[] = { 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xec, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_107 = { .name = "eddsa_wei25519_107", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_107_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_107_privkey, .privkeylen = 32, .msg = eddsa_wei25519_107_msg, .msglen = 1, .sig = eddsa_wei25519_107_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 22 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 108 for EDDSA, tcId is 23 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_108_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_108_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_108_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_108_sig[] = { 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_108 = { .name = "eddsa_wei25519_108", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_108_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_108_privkey, .privkeylen = 32, .msg = eddsa_wei25519_108_msg, .msglen = 1, .sig = eddsa_wei25519_108_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 23 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 109 for EDDSA, tcId is 24 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_109_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_109_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_109_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_109_sig[] = { 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_eddsa_test eddsa_wei25519_109 = { .name = "eddsa_wei25519_109", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_109_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_109_privkey, .privkeylen = 32, .msg = eddsa_wei25519_109_msg, .msglen = 1, .sig = eddsa_wei25519_109_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 24 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 110 for EDDSA, tcId is 25 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_110_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_110_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_110_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_110_sig[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_110 = { .name = "eddsa_wei25519_110", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_110_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_110_privkey, .privkeylen = 32, .msg = eddsa_wei25519_110_msg, .msglen = 1, .sig = eddsa_wei25519_110_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 25 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 111 for EDDSA, tcId is 26 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_111_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_111_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_111_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_111_sig[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_111 = { .name = "eddsa_wei25519_111", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_111_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_111_privkey, .privkeylen = 32, .msg = eddsa_wei25519_111_msg, .msglen = 1, .sig = eddsa_wei25519_111_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 26 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 112 for EDDSA, tcId is 27 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_112_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_112_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_112_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_112_sig[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xec, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_112 = { .name = "eddsa_wei25519_112", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_112_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_112_privkey, .privkeylen = 32, .msg = eddsa_wei25519_112_msg, .msglen = 1, .sig = eddsa_wei25519_112_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 27 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 113 for EDDSA, tcId is 28 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_113_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_113_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_113_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_113_sig[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xed, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, }; static const wycheproof_eddsa_test eddsa_wei25519_113 = { .name = "eddsa_wei25519_113", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_113_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_113_privkey, .privkeylen = 32, .msg = eddsa_wei25519_113_msg, .msglen = 1, .sig = eddsa_wei25519_113_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 28 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 114 for EDDSA, tcId is 29 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_114_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_114_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_114_msg[] = { 0x3f, }; static const unsigned char eddsa_wei25519_114_sig[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_eddsa_test eddsa_wei25519_114 = { .name = "eddsa_wei25519_114", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_114_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_114_privkey, .privkeylen = 32, .msg = eddsa_wei25519_114_msg, .msglen = 1, .sig = eddsa_wei25519_114_sig, .siglen = 64, .result = -1, .comment = "special values for r and s, tcId is 29 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 115 for EDDSA, tcId is 30 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_115_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_115_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_115_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const wycheproof_eddsa_test eddsa_wei25519_115 = { .name = "eddsa_wei25519_115", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_115_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_115_privkey, .privkeylen = 32, .msg = eddsa_wei25519_115_msg, .msglen = 4, .sig = (const unsigned char*)"", .siglen = 0, .result = -1, .comment = "empty signature, tcId is 30 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 116 for EDDSA, tcId is 31 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_116_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_116_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_116_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_116_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, }; static const wycheproof_eddsa_test eddsa_wei25519_116 = { .name = "eddsa_wei25519_116", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_116_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_116_privkey, .privkeylen = 32, .msg = eddsa_wei25519_116_msg, .msglen = 4, .sig = eddsa_wei25519_116_sig, .siglen = 32, .result = -1, .comment = "s missing, tcId is 31 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 117 for EDDSA, tcId is 32 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_117_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_117_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_117_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_117_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, }; static const wycheproof_eddsa_test eddsa_wei25519_117 = { .name = "eddsa_wei25519_117", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_117_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_117_privkey, .privkeylen = 32, .msg = eddsa_wei25519_117_msg, .msglen = 4, .sig = eddsa_wei25519_117_sig, .siglen = 62, .result = -1, .comment = "signature too short, tcId is 32 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 118 for EDDSA, tcId is 33 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_118_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_118_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_118_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_118_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, 0x20, 0x20, }; static const wycheproof_eddsa_test eddsa_wei25519_118 = { .name = "eddsa_wei25519_118", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_118_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_118_privkey, .privkeylen = 32, .msg = eddsa_wei25519_118_msg, .msglen = 4, .sig = eddsa_wei25519_118_sig, .siglen = 66, .result = -1, .comment = "signature too long, tcId is 33 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 119 for EDDSA, tcId is 34 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_119_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_119_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_119_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_119_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const wycheproof_eddsa_test eddsa_wei25519_119 = { .name = "eddsa_wei25519_119", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_119_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_119_privkey, .privkeylen = 32, .msg = eddsa_wei25519_119_msg, .msglen = 4, .sig = eddsa_wei25519_119_sig, .siglen = 96, .result = -1, .comment = "include pk in signature, tcId is 34 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 120 for EDDSA, tcId is 35 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_120_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_120_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_120_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_120_sig[] = { 0x00, 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_120 = { .name = "eddsa_wei25519_120", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_120_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_120_privkey, .privkeylen = 32, .msg = eddsa_wei25519_120_msg, .msglen = 4, .sig = eddsa_wei25519_120_sig, .siglen = 65, .result = -1, .comment = "prepending 0 byte to signature, tcId is 35 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 121 for EDDSA, tcId is 36 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_121_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_121_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_121_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_121_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x00, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_121 = { .name = "eddsa_wei25519_121", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_121_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_121_privkey, .privkeylen = 32, .msg = eddsa_wei25519_121_msg, .msglen = 4, .sig = eddsa_wei25519_121_sig, .siglen = 65, .result = -1, .comment = "prepending 0 byte to s, tcId is 36 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 122 for EDDSA, tcId is 37 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_122_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_122_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_122_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_122_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x0d, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_122 = { .name = "eddsa_wei25519_122", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_122_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_122_privkey, .privkeylen = 32, .msg = eddsa_wei25519_122_msg, .msglen = 4, .sig = eddsa_wei25519_122_sig, .siglen = 65, .result = -1, .comment = "appending 0 byte to signature, tcId is 37 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 123 for EDDSA, tcId is 38 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_123_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_123_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_123_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x31, 0x37, }; static const unsigned char eddsa_wei25519_123_sig[] = { 0x93, 0xde, 0x3c, 0xa2, 0x52, 0x42, 0x6c, 0x95, 0xf7, 0x35, 0xcb, 0x9e, 0xdd, 0x92, 0xe8, 0x33, 0x21, 0xac, 0x62, 0x37, 0x2d, 0x5a, 0xa5, 0xb3, 0x79, 0x78, 0x6b, 0xae, 0x11, 0x1a, 0xb6, 0xb1, 0x72, 0x51, 0x33, 0x0e, 0x8f, 0x9a, 0x7c, 0x30, 0xd6, 0x99, 0x31, 0x37, 0xc5, 0x96, 0x00, 0x7d, 0x7b, 0x00, 0x14, 0x09, 0x28, 0x75, 0x35, 0xac, 0x48, 0x04, 0xe6, 0x62, 0xbc, 0x58, 0xa3, }; static const wycheproof_eddsa_test eddsa_wei25519_123 = { .name = "eddsa_wei25519_123", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_123_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_123_privkey, .privkeylen = 32, .msg = eddsa_wei25519_123_msg, .msglen = 6, .sig = eddsa_wei25519_123_sig, .siglen = 63, .result = -1, .comment = "removing 0 byte from signature, tcId is 38 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 124 for EDDSA, tcId is 39 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_124_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_124_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_124_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x31, 0x32, 0x36, }; static const unsigned char eddsa_wei25519_124_sig[] = { 0xdf, 0xfe, 0xd3, 0x3a, 0x7f, 0x42, 0x0b, 0x62, 0xbb, 0x17, 0x31, 0xcf, 0xd0, 0x3b, 0xe8, 0x05, 0xaf, 0xfd, 0x18, 0xa2, 0x81, 0xec, 0x02, 0xb1, 0x06, 0x7b, 0xa6, 0xe9, 0xd2, 0x08, 0x26, 0x56, 0x9e, 0x74, 0x23, 0x47, 0xdf, 0x59, 0xc8, 0x8a, 0xe9, 0x6d, 0xb1, 0xf1, 0x96, 0x9f, 0xb1, 0x89, 0xb0, 0xec, 0x34, 0x38, 0x1d, 0x85, 0x63, 0x3e, 0x18, 0x89, 0xda, 0x48, 0xd9, 0x5e, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_124 = { .name = "eddsa_wei25519_124", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_124_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_124_privkey, .privkeylen = 32, .msg = eddsa_wei25519_124_msg, .msglen = 7, .sig = eddsa_wei25519_124_sig, .siglen = 63, .result = -1, .comment = "removing 0 byte from signature, tcId is 39 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 125 for EDDSA, tcId is 40 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_125_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_125_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_125_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x35, 0x30, }; static const unsigned char eddsa_wei25519_125_sig[] = { 0x6e, 0x17, 0x0c, 0x71, 0x95, 0x77, 0xc2, 0x5e, 0x0e, 0x1e, 0x8b, 0x8a, 0xa7, 0xa6, 0x34, 0x6f, 0x8b, 0x10, 0x9f, 0x37, 0x38, 0x5c, 0xc2, 0xe8, 0x5d, 0xc3, 0xb4, 0xc0, 0xf4, 0x6a, 0x9c, 0x6b, 0xca, 0xfd, 0x67, 0xf5, 0x23, 0x24, 0xc5, 0xdb, 0xaf, 0x40, 0xa1, 0xb6, 0x73, 0xfb, 0x29, 0xc4, 0xa5, 0x60, 0x52, 0xd2, 0xd6, 0x99, 0x9d, 0x08, 0x38, 0xa8, 0x33, 0x7b, 0xcc, 0xb5, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_125 = { .name = "eddsa_wei25519_125", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_125_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_125_privkey, .privkeylen = 32, .msg = eddsa_wei25519_125_msg, .msglen = 6, .sig = eddsa_wei25519_125_sig, .siglen = 63, .result = -1, .comment = "removing leading 0 byte from signature, tcId is 40 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 126 for EDDSA, tcId is 41 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_126_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_126_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_126_msg[] = { 0x54, 0x65, 0x73, 0x74, 0x33, 0x34, 0x37, }; static const unsigned char eddsa_wei25519_126_sig[] = { 0xb0, 0x92, 0x8b, 0x46, 0xe9, 0x9f, 0xbb, 0xad, 0x3f, 0x5c, 0xb5, 0x02, 0xd2, 0xcd, 0x30, 0x9d, 0x94, 0xa7, 0xe8, 0x6c, 0xfd, 0x4d, 0x84, 0xb1, 0xfc, 0xf4, 0xce, 0xa1, 0x80, 0x75, 0xa9, 0xc3, 0x69, 0x93, 0xc0, 0x58, 0x2d, 0xba, 0x1e, 0x9e, 0x51, 0x9f, 0xae, 0x5a, 0x86, 0x54, 0xf4, 0x54, 0x20, 0x1a, 0xe0, 0xc3, 0xcb, 0x39, 0x7c, 0x37, 0xb8, 0xf4, 0xf8, 0xee, 0xf1, 0x84, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_126 = { .name = "eddsa_wei25519_126", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_126_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_126_privkey, .privkeylen = 32, .msg = eddsa_wei25519_126_msg, .msglen = 7, .sig = eddsa_wei25519_126_sig, .siglen = 63, .result = -1, .comment = "dropping byte from signature, tcId is 41 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 127 for EDDSA, tcId is 42 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_127_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_127_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_127_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_127_sig[] = { 0x64, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0x1d, 0x12, 0x5e, 0x55, 0x38, 0xf3, 0x8a, 0xfb, 0xcc, 0x1c, 0x84, 0xe4, 0x89, 0x52, 0x10, 0x83, 0x04, 0x1d, 0x24, 0xbc, 0x62, 0x40, 0x76, 0x70, 0x29, 0xda, 0x06, 0x32, 0x71, 0xa1, 0xff, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_127 = { .name = "eddsa_wei25519_127", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_127_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_127_privkey, .privkeylen = 32, .msg = eddsa_wei25519_127_msg, .msglen = 6, .sig = eddsa_wei25519_127_sig, .siglen = 64, .result = -1, .comment = "modified bit 0 in R, tcId is 42 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 128 for EDDSA, tcId is 43 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_128_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_128_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_128_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_128_sig[] = { 0x67, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xc1, 0x08, 0xca, 0x4b, 0x87, 0xa4, 0x9c, 0x9e, 0xd2, 0xcf, 0x38, 0x3a, 0xec, 0xad, 0x8f, 0x54, 0xa9, 0x62, 0xb2, 0x89, 0x9d, 0xa8, 0x91, 0xe1, 0x20, 0x04, 0xd7, 0x99, 0x3a, 0x62, 0x7e, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_128 = { .name = "eddsa_wei25519_128", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_128_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_128_privkey, .privkeylen = 32, .msg = eddsa_wei25519_128_msg, .msglen = 6, .sig = eddsa_wei25519_128_sig, .siglen = 64, .result = -1, .comment = "modified bit 1 in R, tcId is 43 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 129 for EDDSA, tcId is 44 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_129_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_129_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_129_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_129_sig[] = { 0x61, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0x9c, 0xe2, 0x3f, 0xc6, 0x21, 0x3e, 0xd5, 0xb8, 0x79, 0x12, 0xe9, 0xbb, 0xf9, 0x2f, 0x5e, 0x2c, 0x78, 0x0e, 0xae, 0x26, 0xd1, 0x5c, 0x50, 0xa1, 0x12, 0xd1, 0xe9, 0x7d, 0x2e, 0xa3, 0x3c, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_129 = { .name = "eddsa_wei25519_129", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_129_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_129_privkey, .privkeylen = 32, .msg = eddsa_wei25519_129_msg, .msglen = 6, .sig = eddsa_wei25519_129_sig, .siglen = 64, .result = -1, .comment = "modified bit 2 in R, tcId is 44 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 130 for EDDSA, tcId is 45 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_130_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_130_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_130_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_130_sig[] = { 0xe5, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xbb, 0x3e, 0xb5, 0x1c, 0xd9, 0x8d, 0xdd, 0xb2, 0x35, 0xa5, 0xf4, 0x6f, 0x2b, 0xde, 0xd6, 0xaf, 0x18, 0x4a, 0x58, 0xd0, 0x9c, 0xce, 0x92, 0x8b, 0xda, 0x43, 0xf4, 0x1d, 0x69, 0x11, 0x8a, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_130 = { .name = "eddsa_wei25519_130", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_130_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_130_privkey, .privkeylen = 32, .msg = eddsa_wei25519_130_msg, .msglen = 6, .sig = eddsa_wei25519_130_sig, .siglen = 64, .result = -1, .comment = "modified bit 7 in R, tcId is 45 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 131 for EDDSA, tcId is 46 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_131_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_131_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_131_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_131_sig[] = { 0x65, 0x7d, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xcd, 0x23, 0x7d, 0xda, 0x9a, 0x11, 0x65, 0x01, 0xf6, 0x7a, 0x57, 0x05, 0xa8, 0x54, 0xb9, 0xad, 0xc3, 0x04, 0xf3, 0x47, 0x20, 0x80, 0x3a, 0x91, 0xb3, 0x24, 0xf2, 0xc1, 0x3e, 0x0f, 0x5a, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_131 = { .name = "eddsa_wei25519_131", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_131_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_131_privkey, .privkeylen = 32, .msg = eddsa_wei25519_131_msg, .msglen = 6, .sig = eddsa_wei25519_131_sig, .siglen = 64, .result = -1, .comment = "modified bit 8 in R, tcId is 46 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 132 for EDDSA, tcId is 47 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_132_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_132_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_132_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_132_sig[] = { 0x65, 0x7c, 0x15, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0x6b, 0x16, 0x7b, 0xbd, 0xc0, 0xd8, 0x81, 0xcc, 0x04, 0xd2, 0x89, 0x05, 0x55, 0x2c, 0x18, 0x76, 0xf3, 0x70, 0x98, 0x51, 0xab, 0xc5, 0x00, 0x73, 0x76, 0x94, 0x0c, 0xc8, 0xa4, 0x35, 0xc3, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_132 = { .name = "eddsa_wei25519_132", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_132_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_132_privkey, .privkeylen = 32, .msg = eddsa_wei25519_132_msg, .msglen = 6, .sig = eddsa_wei25519_132_sig, .siglen = 64, .result = -1, .comment = "modified bit 16 in R, tcId is 47 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 133 for EDDSA, tcId is 48 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_133_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_133_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_133_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_133_sig[] = { 0x65, 0x7c, 0x14, 0x12, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0x7f, 0xd2, 0xac, 0x7d, 0xa1, 0x4a, 0xff, 0xfc, 0xce, 0xeb, 0x13, 0xf2, 0xa0, 0xd6, 0xb8, 0x87, 0x94, 0x1c, 0xb1, 0xa5, 0xeb, 0x57, 0xa5, 0x2f, 0x3c, 0xb1, 0x31, 0xa1, 0x6c, 0xce, 0x7b, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_133 = { .name = "eddsa_wei25519_133", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_133_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_133_privkey, .privkeylen = 32, .msg = eddsa_wei25519_133_msg, .msglen = 6, .sig = eddsa_wei25519_133_sig, .siglen = 64, .result = -1, .comment = "modified bit 31 in R, tcId is 48 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 134 for EDDSA, tcId is 49 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_134_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_134_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_134_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_134_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x41, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0x73, 0x73, 0xba, 0x13, 0xeb, 0xbe, 0xf9, 0x9c, 0xd2, 0xa8, 0xea, 0xd5, 0x5c, 0xe7, 0x35, 0xc9, 0x87, 0xd8, 0x5a, 0x35, 0x32, 0x09, 0x25, 0xa8, 0xe8, 0x71, 0x70, 0x2d, 0xc7, 0xc5, 0xc4, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_134 = { .name = "eddsa_wei25519_134", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_134_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_134_privkey, .privkeylen = 32, .msg = eddsa_wei25519_134_msg, .msglen = 6, .sig = eddsa_wei25519_134_sig, .siglen = 64, .result = -1, .comment = "modified bit 32 in R, tcId is 49 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 135 for EDDSA, tcId is 50 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_135_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_135_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_135_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_135_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0x4e, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xd3, 0x5b, 0xd3, 0x31, 0xc0, 0x3f, 0x08, 0x55, 0x50, 0x4c, 0xa1, 0xca, 0xb8, 0x7b, 0x83, 0xc3, 0x6a, 0x02, 0x84, 0x25, 0xa3, 0xcf, 0x00, 0x7e, 0xde, 0x4f, 0x42, 0x54, 0xc2, 0x61, 0xcb, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_135 = { .name = "eddsa_wei25519_135", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_135_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_135_privkey, .privkeylen = 32, .msg = eddsa_wei25519_135_msg, .msglen = 6, .sig = eddsa_wei25519_135_sig, .siglen = 64, .result = -1, .comment = "modified bit 63 in R, tcId is 50 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 136 for EDDSA, tcId is 51 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_136_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_136_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_136_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_136_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x02, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xcb, 0x35, 0x10, 0x1f, 0x73, 0xcf, 0x46, 0x7d, 0xea, 0xc8, 0xc1, 0xa0, 0x3b, 0x6c, 0x3d, 0xc3, 0x5a, 0xf5, 0x44, 0x13, 0x27, 0x34, 0xb7, 0xe5, 0x7a, 0xb2, 0x0c, 0x89, 0xb2, 0xe4, 0x75, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_136 = { .name = "eddsa_wei25519_136", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_136_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_136_privkey, .privkeylen = 32, .msg = eddsa_wei25519_136_msg, .msglen = 6, .sig = eddsa_wei25519_136_sig, .siglen = 64, .result = -1, .comment = "modified bit 64 in R, tcId is 51 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 137 for EDDSA, tcId is 52 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_137_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_137_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_137_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_137_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf2, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xb5, 0x8d, 0x2e, 0x88, 0x78, 0x29, 0x0b, 0xff, 0x8d, 0x33, 0x55, 0xfd, 0xd4, 0xea, 0x38, 0x19, 0x24, 0xee, 0x57, 0x87, 0x52, 0x35, 0x4e, 0xb6, 0xde, 0xe6, 0x78, 0xab, 0x40, 0x11, 0xc3, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_137 = { .name = "eddsa_wei25519_137", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_137_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_137_privkey, .privkeylen = 32, .msg = eddsa_wei25519_137_msg, .msglen = 6, .sig = eddsa_wei25519_137_sig, .siglen = 64, .result = -1, .comment = "modified bit 97 in R, tcId is 52 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 138 for EDDSA, tcId is 53 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_138_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_138_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_138_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_138_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x85, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2b, 0xb9, 0x78, 0xc8, 0x66, 0x18, 0x7f, 0xfb, 0x1c, 0xc7, 0xb2, 0x9a, 0x0b, 0x40, 0x45, 0xae, 0xfc, 0x08, 0x76, 0x8d, 0xf6, 0x57, 0x17, 0x19, 0x4f, 0xf0, 0xc6, 0xe6, 0x3f, 0x4d, 0xea, 0x0d, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_138 = { .name = "eddsa_wei25519_138", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_138_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_138_privkey, .privkeylen = 32, .msg = eddsa_wei25519_138_msg, .msglen = 6, .sig = eddsa_wei25519_138_sig, .siglen = 64, .result = -1, .comment = "modified bit 127 in R, tcId is 53 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 139 for EDDSA, tcId is 54 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_139_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_139_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_139_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_139_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1d, 0x2b, 0x05, 0x76, 0xec, 0xf8, 0xea, 0xf6, 0x75, 0xf0, 0x0f, 0x3d, 0xfb, 0xe1, 0x9f, 0x75, 0xb8, 0x3b, 0x76, 0x07, 0xa6, 0xc9, 0x64, 0x14, 0xf6, 0x82, 0x1a, 0xf9, 0x20, 0xa2, 0x49, 0x8d, 0x03, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_139 = { .name = "eddsa_wei25519_139", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_139_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_139_privkey, .privkeylen = 32, .msg = eddsa_wei25519_139_msg, .msglen = 6, .sig = eddsa_wei25519_139_sig, .siglen = 64, .result = -1, .comment = "modified bit 240 in R, tcId is 54 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 140 for EDDSA, tcId is 55 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_140_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_140_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_140_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_140_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x9c, 0x2b, 0xe5, 0x24, 0x1a, 0x34, 0x5c, 0x7b, 0x54, 0x28, 0x05, 0x4c, 0x74, 0xb7, 0xc3, 0x82, 0xfa, 0x10, 0xd4, 0xa5, 0xf1, 0xe8, 0xf8, 0xb7, 0x9a, 0x71, 0xd3, 0xfd, 0xea, 0x22, 0x54, 0xf1, 0xff, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_140 = { .name = "eddsa_wei25519_140", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_140_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_140_privkey, .privkeylen = 32, .msg = eddsa_wei25519_140_msg, .msglen = 6, .sig = eddsa_wei25519_140_sig, .siglen = 64, .result = -1, .comment = "modified bit 247 in R, tcId is 55 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 141 for EDDSA, tcId is 56 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_141_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_141_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_141_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_141_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x2a, 0x63, 0x95, 0x0c, 0x85, 0xcd, 0x6d, 0xc9, 0x63, 0x64, 0xe7, 0x68, 0xde, 0x50, 0xff, 0x77, 0x32, 0xb5, 0x38, 0xf8, 0xa0, 0xb1, 0x61, 0x5d, 0x79, 0x91, 0x90, 0xab, 0x60, 0x08, 0x49, 0x23, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_141 = { .name = "eddsa_wei25519_141", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_141_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_141_privkey, .privkeylen = 32, .msg = eddsa_wei25519_141_msg, .msglen = 6, .sig = eddsa_wei25519_141_sig, .siglen = 64, .result = -1, .comment = "modified bit 248 in R, tcId is 56 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 142 for EDDSA, tcId is 57 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_142_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_142_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_142_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_142_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x0b, 0x54, 0x3b, 0xd3, 0xda, 0x0a, 0x56, 0xa8, 0xc9, 0xc1, 0x52, 0xf5, 0x9c, 0x9f, 0xec, 0x12, 0xf3, 0x1f, 0xa6, 0x64, 0x34, 0xd4, 0x8b, 0x81, 0x7b, 0x30, 0xd9, 0x0c, 0xb4, 0xef, 0xa8, 0xb5, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_142 = { .name = "eddsa_wei25519_142", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_142_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_142_privkey, .privkeylen = 32, .msg = eddsa_wei25519_142_msg, .msglen = 6, .sig = eddsa_wei25519_142_sig, .siglen = 64, .result = -1, .comment = "modified bit 253 in R, tcId is 57 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 143 for EDDSA, tcId is 58 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_143_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_143_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_143_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_143_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0x6b, 0x8d, 0xa0, 0x7e, 0xfd, 0x07, 0xa6, 0xda, 0xfb, 0x01, 0x5e, 0xd6, 0xa3, 0x2f, 0xe1, 0x36, 0x31, 0x9a, 0x97, 0x2f, 0xfb, 0xc3, 0x41, 0xf3, 0xa0, 0xbe, 0xae, 0x97, 0xcc, 0xf8, 0x13, 0x65, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_143 = { .name = "eddsa_wei25519_143", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_143_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_143_privkey, .privkeylen = 32, .msg = eddsa_wei25519_143_msg, .msglen = 6, .sig = eddsa_wei25519_143_sig, .siglen = 64, .result = -1, .comment = "modified bit 254 in R, tcId is 58 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 144 for EDDSA, tcId is 59 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_144_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_144_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_144_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_144_sig[] = { 0x65, 0x7c, 0x14, 0x92, 0x40, 0x2a, 0xb5, 0xce, 0x03, 0xe2, 0xc3, 0xa7, 0xf0, 0x38, 0x4d, 0x05, 0x1b, 0x9c, 0xf3, 0x57, 0x0f, 0x12, 0x07, 0xfc, 0x78, 0xc1, 0xbc, 0xc9, 0x8c, 0x28, 0x1c, 0xab, 0x22, 0x7a, 0xed, 0xf2, 0x59, 0xf9, 0x10, 0xf0, 0xf3, 0xa7, 0x59, 0xa3, 0x35, 0x06, 0x26, 0x65, 0x21, 0x79, 0x25, 0xd0, 0x19, 0x17, 0x3b, 0x88, 0x91, 0x7e, 0xae, 0x29, 0x4f, 0x75, 0xd4, 0x0f, }; static const wycheproof_eddsa_test eddsa_wei25519_144 = { .name = "eddsa_wei25519_144", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_144_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_144_privkey, .privkeylen = 32, .msg = eddsa_wei25519_144_msg, .msglen = 6, .sig = eddsa_wei25519_144_sig, .siglen = 64, .result = -1, .comment = "modified bit 255 in R, tcId is 59 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 145 for EDDSA, tcId is 60 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_145_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_145_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_145_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_145_sig[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xb8, 0xe7, 0x77, 0x0d, 0x51, 0xc7, 0xa3, 0x63, 0x75, 0xd0, 0x06, 0xc5, 0xbf, 0xfd, 0x6a, 0xf4, 0x3f, 0xf5, 0x4a, 0xaf, 0x47, 0xe4, 0x33, 0x0d, 0xc1, 0x18, 0xc7, 0x1d, 0x61, 0xec, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_145 = { .name = "eddsa_wei25519_145", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_145_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_145_privkey, .privkeylen = 32, .msg = eddsa_wei25519_145_msg, .msglen = 6, .sig = eddsa_wei25519_145_sig, .siglen = 64, .result = -1, .comment = "R==0, tcId is 60 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 146 for EDDSA, tcId is 61 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_146_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_146_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_146_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_146_sig[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x46, 0x3a, 0x19, 0x08, 0x38, 0x2e, 0x7e, 0xb7, 0x69, 0x3a, 0xce, 0xf9, 0x88, 0x4f, 0x7c, 0xf9, 0x31, 0xa2, 0x15, 0xe0, 0x79, 0x18, 0x76, 0xbe, 0x22, 0xc6, 0x31, 0xa5, 0x98, 0x81, 0xfd, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_146 = { .name = "eddsa_wei25519_146", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_146_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_146_privkey, .privkeylen = 32, .msg = eddsa_wei25519_146_msg, .msglen = 6, .sig = eddsa_wei25519_146_sig, .siglen = 64, .result = -1, .comment = "invalid R, tcId is 61 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 147 for EDDSA, tcId is 62 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_147_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_147_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_147_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_147_sig[] = { 0x9a, 0x83, 0xeb, 0x6d, 0xbf, 0xd5, 0x4a, 0x31, 0xfc, 0x1d, 0x3c, 0x58, 0x0f, 0xc7, 0xb2, 0xfa, 0xe4, 0x63, 0x0c, 0xa8, 0xf0, 0xed, 0xf8, 0x03, 0x87, 0x3e, 0x43, 0x36, 0x73, 0xd7, 0xe3, 0xd4, 0x0e, 0x94, 0x25, 0x45, 0x86, 0xcb, 0x61, 0x88, 0xc5, 0x38, 0x6c, 0x3f, 0xeb, 0xed, 0x47, 0x7c, 0xb9, 0xa6, 0xcb, 0x29, 0xe3, 0x97, 0x9a, 0xdc, 0x4c, 0xb2, 0x7c, 0xf5, 0x27, 0x8f, 0xb7, 0x0a, }; static const wycheproof_eddsa_test eddsa_wei25519_147 = { .name = "eddsa_wei25519_147", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_147_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_147_privkey, .privkeylen = 32, .msg = eddsa_wei25519_147_msg, .msglen = 6, .sig = eddsa_wei25519_147_sig, .siglen = 64, .result = -1, .comment = "all bits flipped in R, tcId is 62 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 148 for EDDSA, tcId is 63 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_148_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_148_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_148_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_148_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x67, 0x65, 0x4b, 0xce, 0x38, 0x32, 0xc2, 0xd7, 0x6f, 0x8f, 0x6f, 0x5d, 0xaf, 0xc0, 0x8d, 0x93, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x1d, }; static const wycheproof_eddsa_test eddsa_wei25519_148 = { .name = "eddsa_wei25519_148", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_148_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_148_privkey, .privkeylen = 32, .msg = eddsa_wei25519_148_msg, .msglen = 4, .sig = eddsa_wei25519_148_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 63 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 149 for EDDSA, tcId is 64 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_149_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_149_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_149_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_149_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x54, 0x39, 0x41, 0x2b, 0x53, 0x95, 0xd4, 0x2f, 0x46, 0x2c, 0x67, 0x00, 0x8e, 0xba, 0x6c, 0xa8, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x2d, }; static const wycheproof_eddsa_test eddsa_wei25519_149 = { .name = "eddsa_wei25519_149", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_149_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_149_privkey, .privkeylen = 32, .msg = eddsa_wei25519_149_msg, .msglen = 4, .sig = eddsa_wei25519_149_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 64 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 150 for EDDSA, tcId is 65 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_150_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_150_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_150_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_150_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x2e, 0xe1, 0x2c, 0xe5, 0x87, 0x5b, 0xf9, 0xdf, 0xf2, 0x65, 0x56, 0x46, 0x4b, 0xae, 0x2a, 0xd2, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x4d, }; static const wycheproof_eddsa_test eddsa_wei25519_150 = { .name = "eddsa_wei25519_150", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_150_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_150_privkey, .privkeylen = 32, .msg = eddsa_wei25519_150_msg, .msglen = 4, .sig = eddsa_wei25519_150_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 65 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 151 for EDDSA, tcId is 66 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_151_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_151_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_151_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_151_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0xe2, 0x30, 0x04, 0x59, 0xf1, 0xe7, 0x42, 0x40, 0x4c, 0xd9, 0x34, 0xd2, 0xc5, 0x95, 0xa6, 0x25, 0x3a, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x8d, }; static const wycheproof_eddsa_test eddsa_wei25519_151 = { .name = "eddsa_wei25519_151", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_151_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_151_privkey, .privkeylen = 32, .msg = eddsa_wei25519_151_msg, .msglen = 4, .sig = eddsa_wei25519_151_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 66 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 152 for EDDSA, tcId is 67 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_152_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_152_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_152_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_152_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x2d, }; static const wycheproof_eddsa_test eddsa_wei25519_152 = { .name = "eddsa_wei25519_152", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_152_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_152_privkey, .privkeylen = 32, .msg = eddsa_wei25519_152_msg, .msglen = 4, .sig = eddsa_wei25519_152_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 67 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 153 for EDDSA, tcId is 68 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_153_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_153_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_153_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_153_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x4d, }; static const wycheproof_eddsa_test eddsa_wei25519_153 = { .name = "eddsa_wei25519_153", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_153_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_153_privkey, .privkeylen = 32, .msg = eddsa_wei25519_153_msg, .msglen = 4, .sig = eddsa_wei25519_153_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 68 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 154 for EDDSA, tcId is 69 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_154_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_154_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_154_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_154_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x7a, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x8d, }; static const wycheproof_eddsa_test eddsa_wei25519_154 = { .name = "eddsa_wei25519_154", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_154_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_154_privkey, .privkeylen = 32, .msg = eddsa_wei25519_154_msg, .msglen = 4, .sig = eddsa_wei25519_154_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 69 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 155 for EDDSA, tcId is 70 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_155_pubkey[] = { 0x7d, 0x4d, 0x0e, 0x7f, 0x61, 0x53, 0xa6, 0x9b, 0x62, 0x42, 0xb5, 0x22, 0xab, 0xbe, 0xe6, 0x85, 0xfd, 0xa4, 0x42, 0x0f, 0x88, 0x34, 0xb1, 0x08, 0xc3, 0xbd, 0xae, 0x36, 0x9e, 0xf5, 0x49, 0xfa, }; static const unsigned char eddsa_wei25519_155_privkey[] = { 0xad, 0xd4, 0xbb, 0x81, 0x03, 0x78, 0x5b, 0xaf, 0x9a, 0xc5, 0x34, 0x25, 0x8e, 0x8a, 0xaf, 0x65, 0xf5, 0xf1, 0xad, 0xb5, 0xef, 0x5f, 0x3d, 0xf1, 0x9b, 0xb8, 0x0a, 0xb9, 0x89, 0xc4, 0xd6, 0x4b, }; static const unsigned char eddsa_wei25519_155_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_155_sig[] = { 0x7c, 0x38, 0xe0, 0x26, 0xf2, 0x9e, 0x14, 0xaa, 0xbd, 0x05, 0x9a, 0x0f, 0x2d, 0xb8, 0xb0, 0xcd, 0x78, 0x30, 0x40, 0x60, 0x9a, 0x8b, 0xe6, 0x84, 0xdb, 0x12, 0xf8, 0x2a, 0x27, 0x77, 0x4a, 0xb0, 0x67, 0x91, 0x55, 0x71, 0x1e, 0xcf, 0xaf, 0x7f, 0x99, 0xf2, 0x77, 0xba, 0xd0, 0xc6, 0xae, 0x7e, 0x39, 0xd4, 0xee, 0xf6, 0x76, 0x57, 0x33, 0x36, 0xa5, 0xc5, 0x1e, 0xb6, 0xf9, 0x46, 0xb3, 0x8d, }; static const wycheproof_eddsa_test eddsa_wei25519_155 = { .name = "eddsa_wei25519_155", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_155_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_155_privkey, .privkeylen = 32, .msg = eddsa_wei25519_155_msg, .msglen = 4, .sig = eddsa_wei25519_155_sig, .siglen = 64, .result = -1, .comment = "checking malleability , tcId is 70 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 156 for EDDSA, tcId is 71 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_156_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_156_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_156_sig[] = { 0x50, 0x56, 0x32, 0x5d, 0x2a, 0xb4, 0x40, 0xbf, 0x30, 0xbb, 0xf0, 0xf7, 0x17, 0x31, 0x99, 0xaa, 0x8b, 0x4e, 0x6f, 0xbc, 0x09, 0x1c, 0xf3, 0xeb, 0x6b, 0xc6, 0xcf, 0x87, 0xcd, 0x73, 0xd9, 0x92, 0xff, 0xc2, 0x16, 0xc8, 0x5e, 0x4a, 0xb5, 0xb8, 0xa0, 0xbb, 0xc7, 0xe9, 0xa6, 0xe9, 0xf8, 0xd3, 0x3b, 0x7f, 0x6e, 0x5a, 0xc0, 0xff, 0xdc, 0x22, 0xd9, 0xfc, 0xaf, 0x78, 0x4a, 0xf8, 0x43, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_156 = { .name = "eddsa_wei25519_156", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_156_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_156_privkey, .privkeylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei25519_156_sig, .siglen = 64, .result = 1, .comment = ", tcId is 71 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 157 for EDDSA, tcId is 72 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_157_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_157_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_157_msg[] = { 0x78, }; static const unsigned char eddsa_wei25519_157_sig[] = { 0x48, 0x1f, 0xaf, 0xbf, 0x43, 0x64, 0xd7, 0xb6, 0x82, 0x47, 0x52, 0x82, 0xf5, 0x17, 0xa3, 0xac, 0x05, 0x38, 0xc9, 0xa6, 0xb6, 0xa5, 0x62, 0xe9, 0x9a, 0x3d, 0x8e, 0x5a, 0xfb, 0x4f, 0x90, 0xa5, 0x59, 0xb0, 0x56, 0xb9, 0xf0, 0x7a, 0xf0, 0x23, 0x90, 0x57, 0x53, 0xb0, 0x2d, 0x95, 0xeb, 0x32, 0x9a, 0x35, 0xc7, 0x7f, 0x15, 0x4b, 0x79, 0xab, 0xbc, 0xd2, 0x91, 0x61, 0x5c, 0xe4, 0x2f, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_157 = { .name = "eddsa_wei25519_157", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_157_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_157_privkey, .privkeylen = 32, .msg = eddsa_wei25519_157_msg, .msglen = 1, .sig = eddsa_wei25519_157_sig, .siglen = 64, .result = 1, .comment = ", tcId is 72 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 158 for EDDSA, tcId is 73 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_158_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_158_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_158_msg[] = { 0x54, 0x65, 0x73, 0x74, }; static const unsigned char eddsa_wei25519_158_sig[] = { 0x8a, 0x9b, 0xb4, 0xc4, 0x65, 0xa3, 0x86, 0x3a, 0xbc, 0x9f, 0xd0, 0xdd, 0x35, 0xd8, 0x0b, 0xb2, 0x8f, 0x7d, 0x33, 0xd3, 0x7d, 0x74, 0x67, 0x98, 0x02, 0xd6, 0x3f, 0x82, 0xb2, 0x0d, 0xa1, 0x14, 0xb8, 0xd7, 0x65, 0xa1, 0x20, 0x6b, 0x3e, 0x9a, 0xd7, 0xcf, 0x2b, 0x2d, 0x8d, 0x77, 0x8b, 0xb8, 0x65, 0x1f, 0x1f, 0xa9, 0x92, 0xdb, 0x29, 0x3c, 0x00, 0x39, 0xea, 0xcb, 0x61, 0x61, 0x48, 0x0f, }; static const wycheproof_eddsa_test eddsa_wei25519_158 = { .name = "eddsa_wei25519_158", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_158_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_158_privkey, .privkeylen = 32, .msg = eddsa_wei25519_158_msg, .msglen = 4, .sig = eddsa_wei25519_158_sig, .siglen = 64, .result = 1, .comment = ", tcId is 73 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 159 for EDDSA, tcId is 74 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_159_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_159_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_159_msg[] = { 0x48, 0x65, 0x6c, 0x6c, 0x6f, }; static const unsigned char eddsa_wei25519_159_sig[] = { 0xd8, 0x39, 0xc2, 0x0a, 0xbf, 0xda, 0x1f, 0xd4, 0x29, 0x53, 0x18, 0x31, 0xc6, 0x4f, 0x81, 0x3f, 0x84, 0xb9, 0x13, 0xe9, 0x92, 0x85, 0x40, 0x31, 0x0c, 0xf0, 0x60, 0xb4, 0x4c, 0x3d, 0xbf, 0x94, 0x57, 0xd4, 0x4a, 0x77, 0x21, 0xfd, 0xc0, 0xd6, 0x77, 0x24, 0xff, 0x81, 0xcb, 0x45, 0x0d, 0xd3, 0x9b, 0x10, 0xcf, 0xb6, 0x5d, 0xb1, 0x5d, 0xda, 0x4b, 0x8b, 0xf0, 0x9d, 0x26, 0xbd, 0x38, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_159 = { .name = "eddsa_wei25519_159", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_159_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_159_privkey, .privkeylen = 32, .msg = eddsa_wei25519_159_msg, .msglen = 5, .sig = eddsa_wei25519_159_sig, .siglen = 64, .result = 1, .comment = ", tcId is 74 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 160 for EDDSA, tcId is 75 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_160_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_160_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_160_msg[] = { 0x31, 0x32, 0x33, 0x34, 0x30, 0x30, }; static const unsigned char eddsa_wei25519_160_sig[] = { 0x9b, 0xbb, 0x10, 0x52, 0xdc, 0xfa, 0x8a, 0xd2, 0x71, 0x5c, 0x2e, 0xb7, 0x16, 0xae, 0x4f, 0x19, 0x02, 0xde, 0xa3, 0x53, 0xd4, 0x2e, 0xe0, 0x9f, 0xd4, 0xc0, 0xb4, 0xfc, 0xb8, 0xb5, 0x2b, 0x52, 0x19, 0xe2, 0x20, 0x00, 0x16, 0xe1, 0x19, 0x9d, 0x00, 0x61, 0x89, 0x1c, 0x26, 0x3e, 0x31, 0xb0, 0xbc, 0x3b, 0x55, 0x67, 0x3c, 0x19, 0x61, 0x0c, 0x4e, 0x0f, 0xa5, 0x40, 0x80, 0x04, 0x16, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_160 = { .name = "eddsa_wei25519_160", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_160_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_160_privkey, .privkeylen = 32, .msg = eddsa_wei25519_160_msg, .msglen = 6, .sig = eddsa_wei25519_160_sig, .siglen = 64, .result = 1, .comment = ", tcId is 75 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 161 for EDDSA, tcId is 76 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_161_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_161_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_161_msg[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char eddsa_wei25519_161_sig[] = { 0xf6, 0x3b, 0x5c, 0x06, 0x67, 0xc7, 0x89, 0x7f, 0xc2, 0x83, 0x29, 0x64, 0x16, 0xf7, 0xf6, 0x0e, 0x84, 0xbb, 0xde, 0x9c, 0xbd, 0x83, 0x2e, 0x56, 0xbe, 0x46, 0x3e, 0xd9, 0xf5, 0x68, 0x06, 0x97, 0x02, 0xb1, 0x7a, 0x2f, 0x7c, 0x34, 0x1e, 0xbf, 0x59, 0x07, 0x06, 0xa6, 0x38, 0x8a, 0xc7, 0x6a, 0xc6, 0x13, 0xc1, 0x67, 0x5e, 0xc0, 0xf2, 0xc7, 0x11, 0x8f, 0x25, 0x73, 0x42, 0x2a, 0x50, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_161 = { .name = "eddsa_wei25519_161", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_161_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_161_privkey, .privkeylen = 32, .msg = eddsa_wei25519_161_msg, .msglen = 12, .sig = eddsa_wei25519_161_sig, .siglen = 64, .result = 1, .comment = ", tcId is 76 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 162 for EDDSA, tcId is 77 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_162_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_162_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_162_msg[] = { 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, 0x61, }; static const unsigned char eddsa_wei25519_162_sig[] = { 0x1b, 0xc4, 0x4d, 0x70, 0x01, 0xe6, 0xb5, 0xb9, 0x09, 0x0f, 0xef, 0x34, 0xb2, 0xca, 0x48, 0x0f, 0x97, 0x86, 0xbb, 0xef, 0xa7, 0xd2, 0x79, 0x35, 0x3e, 0x58, 0x81, 0xe8, 0xdf, 0xb9, 0x1b, 0x80, 0x3c, 0xcd, 0x46, 0x50, 0x0e, 0x27, 0x0e, 0xf0, 0x10, 0x9b, 0xfd, 0x74, 0x10, 0x37, 0x55, 0x88, 0x32, 0x12, 0x0b, 0xc2, 0xa4, 0xf2, 0x0f, 0xbe, 0x7b, 0x5f, 0xb3, 0xc3, 0xaa, 0xf2, 0x3e, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_162 = { .name = "eddsa_wei25519_162", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_162_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_162_privkey, .privkeylen = 32, .msg = eddsa_wei25519_162_msg, .msglen = 65, .sig = eddsa_wei25519_162_sig, .siglen = 64, .result = 1, .comment = ", tcId is 77 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 163 for EDDSA, tcId is 78 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_163_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_163_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_163_msg[] = { 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, 0x40, 0x41, 0x42, 0x43, 0x44, 0x45, 0x46, 0x47, 0x48, 0x49, 0x4a, 0x4b, 0x4c, 0x4d, 0x4e, 0x4f, 0x50, 0x51, 0x52, 0x53, 0x54, 0x55, 0x56, 0x57, 0x58, 0x59, 0x5a, 0x5b, 0x5c, 0x5d, 0x5e, 0x5f, 0x60, }; static const unsigned char eddsa_wei25519_163_sig[] = { 0xea, 0x8e, 0x22, 0x14, 0x3b, 0x02, 0x37, 0x2e, 0x76, 0xe9, 0x9a, 0xec, 0xe3, 0xed, 0x36, 0xae, 0xc5, 0x29, 0x76, 0x8a, 0x27, 0xe2, 0xbb, 0x49, 0xbd, 0xc1, 0x35, 0xd4, 0x43, 0x78, 0x06, 0x1e, 0x1f, 0x62, 0xd1, 0xac, 0x51, 0x8f, 0x33, 0xeb, 0xf3, 0x7b, 0x2e, 0xe8, 0xcc, 0x6d, 0xde, 0x68, 0xa4, 0xbd, 0x7d, 0x4a, 0x2f, 0x4d, 0x6c, 0xb7, 0x7f, 0x01, 0x5f, 0x71, 0xca, 0x9f, 0xc3, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_163 = { .name = "eddsa_wei25519_163", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_163_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_163_privkey, .privkeylen = 32, .msg = eddsa_wei25519_163_msg, .msglen = 65, .sig = eddsa_wei25519_163_sig, .siglen = 64, .result = 1, .comment = ", tcId is 78 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 164 for EDDSA, tcId is 79 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_164_pubkey[] = { 0xa1, 0x2c, 0x2b, 0xeb, 0x77, 0x26, 0x5f, 0x2a, 0xac, 0x95, 0x3b, 0x50, 0x09, 0x34, 0x9d, 0x94, 0x15, 0x5a, 0x03, 0xad, 0xa4, 0x16, 0xaa, 0xd4, 0x51, 0x31, 0x94, 0x80, 0xe9, 0x83, 0xca, 0x4c, }; static const unsigned char eddsa_wei25519_164_privkey[] = { 0x0a, 0x23, 0xa2, 0x00, 0x72, 0x89, 0x12, 0x37, 0xaa, 0x08, 0x64, 0xb5, 0x76, 0x51, 0x39, 0x51, 0x49, 0x08, 0x78, 0x78, 0x78, 0xcd, 0x77, 0x13, 0x5a, 0x00, 0x59, 0x88, 0x1d, 0x31, 0x3f, 0x00, }; static const unsigned char eddsa_wei25519_164_msg[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char eddsa_wei25519_164_sig[] = { 0x8a, 0xcd, 0x67, 0x9e, 0x1a, 0x91, 0x4f, 0xc4, 0x5d, 0x5f, 0xa8, 0x3d, 0x30, 0x21, 0xf0, 0x50, 0x9c, 0x80, 0x5c, 0x8d, 0x27, 0x1d, 0xf5, 0x4e, 0x52, 0xf4, 0x3c, 0xfb, 0xd0, 0x0c, 0xb6, 0x22, 0x2b, 0xf8, 0x1d, 0x58, 0xfe, 0x1d, 0xe2, 0xde, 0x37, 0x8d, 0xf6, 0x7e, 0xe9, 0xf4, 0x53, 0x78, 0x66, 0x26, 0x96, 0x1f, 0xe5, 0x0a, 0x9b, 0x05, 0xf1, 0x2b, 0x6f, 0x08, 0x99, 0xeb, 0xdd, 0x0a, }; static const wycheproof_eddsa_test eddsa_wei25519_164 = { .name = "eddsa_wei25519_164", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_164_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_164_privkey, .privkeylen = 32, .msg = eddsa_wei25519_164_msg, .msglen = 16, .sig = eddsa_wei25519_164_sig, .siglen = 64, .result = 1, .comment = ", tcId is 79 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 165 for EDDSA, tcId is 80 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_165_pubkey[] = { 0xd7, 0x5a, 0x98, 0x01, 0x82, 0xb1, 0x0a, 0xb7, 0xd5, 0x4b, 0xfe, 0xd3, 0xc9, 0x64, 0x07, 0x3a, 0x0e, 0xe1, 0x72, 0xf3, 0xda, 0xa6, 0x23, 0x25, 0xaf, 0x02, 0x1a, 0x68, 0xf7, 0x07, 0x51, 0x1a, }; static const unsigned char eddsa_wei25519_165_privkey[] = { 0x9d, 0x61, 0xb1, 0x9d, 0xef, 0xfd, 0x5a, 0x60, 0xba, 0x84, 0x4a, 0xf4, 0x92, 0xec, 0x2c, 0xc4, 0x44, 0x49, 0xc5, 0x69, 0x7b, 0x32, 0x69, 0x19, 0x70, 0x3b, 0xac, 0x03, 0x1c, 0xae, 0x7f, 0x60, }; static const unsigned char eddsa_wei25519_165_sig[] = { 0xe5, 0x56, 0x43, 0x00, 0xc3, 0x60, 0xac, 0x72, 0x90, 0x86, 0xe2, 0xcc, 0x80, 0x6e, 0x82, 0x8a, 0x84, 0x87, 0x7f, 0x1e, 0xb8, 0xe5, 0xd9, 0x74, 0xd8, 0x73, 0xe0, 0x65, 0x22, 0x49, 0x01, 0x55, 0x5f, 0xb8, 0x82, 0x15, 0x90, 0xa3, 0x3b, 0xac, 0xc6, 0x1e, 0x39, 0x70, 0x1c, 0xf9, 0xb4, 0x6b, 0xd2, 0x5b, 0xf5, 0xf0, 0x59, 0x5b, 0xbe, 0x24, 0x65, 0x51, 0x41, 0x43, 0x8e, 0x7a, 0x10, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_165 = { .name = "eddsa_wei25519_165", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_165_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_165_privkey, .privkeylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei25519_165_sig, .siglen = 64, .result = 1, .comment = "draft-josefsson-eddsa-ed25519-02: Test 1, tcId is 80 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 166 for EDDSA, tcId is 81 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_166_pubkey[] = { 0x3d, 0x40, 0x17, 0xc3, 0xe8, 0x43, 0x89, 0x5a, 0x92, 0xb7, 0x0a, 0xa7, 0x4d, 0x1b, 0x7e, 0xbc, 0x9c, 0x98, 0x2c, 0xcf, 0x2e, 0xc4, 0x96, 0x8c, 0xc0, 0xcd, 0x55, 0xf1, 0x2a, 0xf4, 0x66, 0x0c, }; static const unsigned char eddsa_wei25519_166_privkey[] = { 0x4c, 0xcd, 0x08, 0x9b, 0x28, 0xff, 0x96, 0xda, 0x9d, 0xb6, 0xc3, 0x46, 0xec, 0x11, 0x4e, 0x0f, 0x5b, 0x8a, 0x31, 0x9f, 0x35, 0xab, 0xa6, 0x24, 0xda, 0x8c, 0xf6, 0xed, 0x4f, 0xb8, 0xa6, 0xfb, }; static const unsigned char eddsa_wei25519_166_msg[] = { 0x72, }; static const unsigned char eddsa_wei25519_166_sig[] = { 0x92, 0xa0, 0x09, 0xa9, 0xf0, 0xd4, 0xca, 0xb8, 0x72, 0x0e, 0x82, 0x0b, 0x5f, 0x64, 0x25, 0x40, 0xa2, 0xb2, 0x7b, 0x54, 0x16, 0x50, 0x3f, 0x8f, 0xb3, 0x76, 0x22, 0x23, 0xeb, 0xdb, 0x69, 0xda, 0x08, 0x5a, 0xc1, 0xe4, 0x3e, 0x15, 0x99, 0x6e, 0x45, 0x8f, 0x36, 0x13, 0xd0, 0xf1, 0x1d, 0x8c, 0x38, 0x7b, 0x2e, 0xae, 0xb4, 0x30, 0x2a, 0xee, 0xb0, 0x0d, 0x29, 0x16, 0x12, 0xbb, 0x0c, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_166 = { .name = "eddsa_wei25519_166", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_166_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_166_privkey, .privkeylen = 32, .msg = eddsa_wei25519_166_msg, .msglen = 1, .sig = eddsa_wei25519_166_sig, .siglen = 64, .result = 1, .comment = "draft-josefsson-eddsa-ed25519-02: Test 2, tcId is 81 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 167 for EDDSA, tcId is 82 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_167_pubkey[] = { 0xfc, 0x51, 0xcd, 0x8e, 0x62, 0x18, 0xa1, 0xa3, 0x8d, 0xa4, 0x7e, 0xd0, 0x02, 0x30, 0xf0, 0x58, 0x08, 0x16, 0xed, 0x13, 0xba, 0x33, 0x03, 0xac, 0x5d, 0xeb, 0x91, 0x15, 0x48, 0x90, 0x80, 0x25, }; static const unsigned char eddsa_wei25519_167_privkey[] = { 0xc5, 0xaa, 0x8d, 0xf4, 0x3f, 0x9f, 0x83, 0x7b, 0xed, 0xb7, 0x44, 0x2f, 0x31, 0xdc, 0xb7, 0xb1, 0x66, 0xd3, 0x85, 0x35, 0x07, 0x6f, 0x09, 0x4b, 0x85, 0xce, 0x3a, 0x2e, 0x0b, 0x44, 0x58, 0xf7, }; static const unsigned char eddsa_wei25519_167_msg[] = { 0xaf, 0x82, }; static const unsigned char eddsa_wei25519_167_sig[] = { 0x62, 0x91, 0xd6, 0x57, 0xde, 0xec, 0x24, 0x02, 0x48, 0x27, 0xe6, 0x9c, 0x3a, 0xbe, 0x01, 0xa3, 0x0c, 0xe5, 0x48, 0xa2, 0x84, 0x74, 0x3a, 0x44, 0x5e, 0x36, 0x80, 0xd7, 0xdb, 0x5a, 0xc3, 0xac, 0x18, 0xff, 0x9b, 0x53, 0x8d, 0x16, 0xf2, 0x90, 0xae, 0x67, 0xf7, 0x60, 0x98, 0x4d, 0xc6, 0x59, 0x4a, 0x7c, 0x15, 0xe9, 0x71, 0x6e, 0xd2, 0x8d, 0xc0, 0x27, 0xbe, 0xce, 0xea, 0x1e, 0xc4, 0x0a, }; static const wycheproof_eddsa_test eddsa_wei25519_167 = { .name = "eddsa_wei25519_167", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_167_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_167_privkey, .privkeylen = 32, .msg = eddsa_wei25519_167_msg, .msglen = 2, .sig = eddsa_wei25519_167_sig, .siglen = 64, .result = 1, .comment = "draft-josefsson-eddsa-ed25519-02: Test 3, tcId is 82 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 168 for EDDSA, tcId is 83 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_168_pubkey[] = { 0x27, 0x81, 0x17, 0xfc, 0x14, 0x4c, 0x72, 0x34, 0x0f, 0x67, 0xd0, 0xf2, 0x31, 0x6e, 0x83, 0x86, 0xce, 0xff, 0xbf, 0x2b, 0x24, 0x28, 0xc9, 0xc5, 0x1f, 0xef, 0x7c, 0x59, 0x7f, 0x1d, 0x42, 0x6e, }; static const unsigned char eddsa_wei25519_168_privkey[] = { 0xf5, 0xe5, 0x76, 0x7c, 0xf1, 0x53, 0x31, 0x95, 0x17, 0x63, 0x0f, 0x22, 0x68, 0x76, 0xb8, 0x6c, 0x81, 0x60, 0xcc, 0x58, 0x3b, 0xc0, 0x13, 0x74, 0x4c, 0x6b, 0xf2, 0x55, 0xf5, 0xcc, 0x0e, 0xe5, }; static const unsigned char eddsa_wei25519_168_msg[] = { 0x08, 0xb8, 0xb2, 0xb7, 0x33, 0x42, 0x42, 0x43, 0x76, 0x0f, 0xe4, 0x26, 0xa4, 0xb5, 0x49, 0x08, 0x63, 0x21, 0x10, 0xa6, 0x6c, 0x2f, 0x65, 0x91, 0xea, 0xbd, 0x33, 0x45, 0xe3, 0xe4, 0xeb, 0x98, 0xfa, 0x6e, 0x26, 0x4b, 0xf0, 0x9e, 0xfe, 0x12, 0xee, 0x50, 0xf8, 0xf5, 0x4e, 0x9f, 0x77, 0xb1, 0xe3, 0x55, 0xf6, 0xc5, 0x05, 0x44, 0xe2, 0x3f, 0xb1, 0x43, 0x3d, 0xdf, 0x73, 0xbe, 0x84, 0xd8, 0x79, 0xde, 0x7c, 0x00, 0x46, 0xdc, 0x49, 0x96, 0xd9, 0xe7, 0x73, 0xf4, 0xbc, 0x9e, 0xfe, 0x57, 0x38, 0x82, 0x9a, 0xdb, 0x26, 0xc8, 0x1b, 0x37, 0xc9, 0x3a, 0x1b, 0x27, 0x0b, 0x20, 0x32, 0x9d, 0x65, 0x86, 0x75, 0xfc, 0x6e, 0xa5, 0x34, 0xe0, 0x81, 0x0a, 0x44, 0x32, 0x82, 0x6b, 0xf5, 0x8c, 0x94, 0x1e, 0xfb, 0x65, 0xd5, 0x7a, 0x33, 0x8b, 0xbd, 0x2e, 0x26, 0x64, 0x0f, 0x89, 0xff, 0xbc, 0x1a, 0x85, 0x8e, 0xfc, 0xb8, 0x55, 0x0e, 0xe3, 0xa5, 0xe1, 0x99, 0x8b, 0xd1, 0x77, 0xe9, 0x3a, 0x73, 0x63, 0xc3, 0x44, 0xfe, 0x6b, 0x19, 0x9e, 0xe5, 0xd0, 0x2e, 0x82, 0xd5, 0x22, 0xc4, 0xfe, 0xba, 0x15, 0x45, 0x2f, 0x80, 0x28, 0x8a, 0x82, 0x1a, 0x57, 0x91, 0x16, 0xec, 0x6d, 0xad, 0x2b, 0x3b, 0x31, 0x0d, 0xa9, 0x03, 0x40, 0x1a, 0xa6, 0x21, 0x00, 0xab, 0x5d, 0x1a, 0x36, 0x55, 0x3e, 0x06, 0x20, 0x3b, 0x33, 0x89, 0x0c, 0xc9, 0xb8, 0x32, 0xf7, 0x9e, 0xf8, 0x05, 0x60, 0xcc, 0xb9, 0xa3, 0x9c, 0xe7, 0x67, 0x96, 0x7e, 0xd6, 0x28, 0xc6, 0xad, 0x57, 0x3c, 0xb1, 0x16, 0xdb, 0xef, 0xef, 0xd7, 0x54, 0x99, 0xda, 0x96, 0xbd, 0x68, 0xa8, 0xa9, 0x7b, 0x92, 0x8a, 0x8b, 0xbc, 0x10, 0x3b, 0x66, 0x21, 0xfc, 0xde, 0x2b, 0xec, 0xa1, 0x23, 0x1d, 0x20, 0x6b, 0xe6, 0xcd, 0x9e, 0xc7, 0xaf, 0xf6, 0xf6, 0xc9, 0x4f, 0xcd, 0x72, 0x04, 0xed, 0x34, 0x55, 0xc6, 0x8c, 0x83, 0xf4, 0xa4, 0x1d, 0xa4, 0xaf, 0x2b, 0x74, 0xef, 0x5c, 0x53, 0xf1, 0xd8, 0xac, 0x70, 0xbd, 0xcb, 0x7e, 0xd1, 0x85, 0xce, 0x81, 0xbd, 0x84, 0x35, 0x9d, 0x44, 0x25, 0x4d, 0x95, 0x62, 0x9e, 0x98, 0x55, 0xa9, 0x4a, 0x7c, 0x19, 0x58, 0xd1, 0xf8, 0xad, 0xa5, 0xd0, 0x53, 0x2e, 0xd8, 0xa5, 0xaa, 0x3f, 0xb2, 0xd1, 0x7b, 0xa7, 0x0e, 0xb6, 0x24, 0x8e, 0x59, 0x4e, 0x1a, 0x22, 0x97, 0xac, 0xbb, 0xb3, 0x9d, 0x50, 0x2f, 0x1a, 0x8c, 0x6e, 0xb6, 0xf1, 0xce, 0x22, 0xb3, 0xde, 0x1a, 0x1f, 0x40, 0xcc, 0x24, 0x55, 0x41, 0x19, 0xa8, 0x31, 0xa9, 0xaa, 0xd6, 0x07, 0x9c, 0xad, 0x88, 0x42, 0x5d, 0xe6, 0xbd, 0xe1, 0xa9, 0x18, 0x7e, 0xbb, 0x60, 0x92, 0xcf, 0x67, 0xbf, 0x2b, 0x13, 0xfd, 0x65, 0xf2, 0x70, 0x88, 0xd7, 0x8b, 0x7e, 0x88, 0x3c, 0x87, 0x59, 0xd2, 0xc4, 0xf5, 0xc6, 0x5a, 0xdb, 0x75, 0x53, 0x87, 0x8a, 0xd5, 0x75, 0xf9, 0xfa, 0xd8, 0x78, 0xe8, 0x0a, 0x0c, 0x9b, 0xa6, 0x3b, 0xcb, 0xcc, 0x27, 0x32, 0xe6, 0x94, 0x85, 0xbb, 0xc9, 0xc9, 0x0b, 0xfb, 0xd6, 0x24, 0x81, 0xd9, 0x08, 0x9b, 0xec, 0xcf, 0x80, 0xcf, 0xe2, 0xdf, 0x16, 0xa2, 0xcf, 0x65, 0xbd, 0x92, 0xdd, 0x59, 0x7b, 0x07, 0x07, 0xe0, 0x91, 0x7a, 0xf4, 0x8b, 0xbb, 0x75, 0xfe, 0xd4, 0x13, 0xd2, 0x38, 0xf5, 0x55, 0x5a, 0x7a, 0x56, 0x9d, 0x80, 0xc3, 0x41, 0x4a, 0x8d, 0x08, 0x59, 0xdc, 0x65, 0xa4, 0x61, 0x28, 0xba, 0xb2, 0x7a, 0xf8, 0x7a, 0x71, 0x31, 0x4f, 0x31, 0x8c, 0x78, 0x2b, 0x23, 0xeb, 0xfe, 0x80, 0x8b, 0x82, 0xb0, 0xce, 0x26, 0x40, 0x1d, 0x2e, 0x22, 0xf0, 0x4d, 0x83, 0xd1, 0x25, 0x5d, 0xc5, 0x1a, 0xdd, 0xd3, 0xb7, 0x5a, 0x2b, 0x1a, 0xe0, 0x78, 0x45, 0x04, 0xdf, 0x54, 0x3a, 0xf8, 0x96, 0x9b, 0xe3, 0xea, 0x70, 0x82, 0xff, 0x7f, 0xc9, 0x88, 0x8c, 0x14, 0x4d, 0xa2, 0xaf, 0x58, 0x42, 0x9e, 0xc9, 0x60, 0x31, 0xdb, 0xca, 0xd3, 0xda, 0xd9, 0xaf, 0x0d, 0xcb, 0xaa, 0xaf, 0x26, 0x8c, 0xb8, 0xfc, 0xff, 0xea, 0xd9, 0x4f, 0x3c, 0x7c, 0xa4, 0x95, 0xe0, 0x56, 0xa9, 0xb4, 0x7a, 0xcd, 0xb7, 0x51, 0xfb, 0x73, 0xe6, 0x66, 0xc6, 0xc6, 0x55, 0xad, 0xe8, 0x29, 0x72, 0x97, 0xd0, 0x7a, 0xd1, 0xba, 0x5e, 0x43, 0xf1, 0xbc, 0xa3, 0x23, 0x01, 0x65, 0x13, 0x39, 0xe2, 0x29, 0x04, 0xcc, 0x8c, 0x42, 0xf5, 0x8c, 0x30, 0xc0, 0x4a, 0xaf, 0xdb, 0x03, 0x8d, 0xda, 0x08, 0x47, 0xdd, 0x98, 0x8d, 0xcd, 0xa6, 0xf3, 0xbf, 0xd1, 0x5c, 0x4b, 0x4c, 0x45, 0x25, 0x00, 0x4a, 0xa0, 0x6e, 0xef, 0xf8, 0xca, 0x61, 0x78, 0x3a, 0xac, 0xec, 0x57, 0xfb, 0x3d, 0x1f, 0x92, 0xb0, 0xfe, 0x2f, 0xd1, 0xa8, 0x5f, 0x67, 0x24, 0x51, 0x7b, 0x65, 0xe6, 0x14, 0xad, 0x68, 0x08, 0xd6, 0xf6, 0xee, 0x34, 0xdf, 0xf7, 0x31, 0x0f, 0xdc, 0x82, 0xae, 0xbf, 0xd9, 0x04, 0xb0, 0x1e, 0x1d, 0xc5, 0x4b, 0x29, 0x27, 0x09, 0x4b, 0x2d, 0xb6, 0x8d, 0x6f, 0x90, 0x3b, 0x68, 0x40, 0x1a, 0xde, 0xbf, 0x5a, 0x7e, 0x08, 0xd7, 0x8f, 0xf4, 0xef, 0x5d, 0x63, 0x65, 0x3a, 0x65, 0x04, 0x0c, 0xf9, 0xbf, 0xd4, 0xac, 0xa7, 0x98, 0x4a, 0x74, 0xd3, 0x71, 0x45, 0x98, 0x67, 0x80, 0xfc, 0x0b, 0x16, 0xac, 0x45, 0x16, 0x49, 0xde, 0x61, 0x88, 0xa7, 0xdb, 0xdf, 0x19, 0x1f, 0x64, 0xb5, 0xfc, 0x5e, 0x2a, 0xb4, 0x7b, 0x57, 0xf7, 0xf7, 0x27, 0x6c, 0xd4, 0x19, 0xc1, 0x7a, 0x3c, 0xa8, 0xe1, 0xb9, 0x39, 0xae, 0x49, 0xe4, 0x88, 0xac, 0xba, 0x6b, 0x96, 0x56, 0x10, 0xb5, 0x48, 0x01, 0x09, 0xc8, 0xb1, 0x7b, 0x80, 0xe1, 0xb7, 0xb7, 0x50, 0xdf, 0xc7, 0x59, 0x8d, 0x5d, 0x50, 0x11, 0xfd, 0x2d, 0xcc, 0x56, 0x00, 0xa3, 0x2e, 0xf5, 0xb5, 0x2a, 0x1e, 0xcc, 0x82, 0x0e, 0x30, 0x8a, 0xa3, 0x42, 0x72, 0x1a, 0xac, 0x09, 0x43, 0xbf, 0x66, 0x86, 0xb6, 0x4b, 0x25, 0x79, 0x37, 0x65, 0x04, 0xcc, 0xc4, 0x93, 0xd9, 0x7e, 0x6a, 0xed, 0x3f, 0xb0, 0xf9, 0xcd, 0x71, 0xa4, 0x3d, 0xd4, 0x97, 0xf0, 0x1f, 0x17, 0xc0, 0xe2, 0xcb, 0x37, 0x97, 0xaa, 0x2a, 0x2f, 0x25, 0x66, 0x56, 0x16, 0x8e, 0x6c, 0x49, 0x6a, 0xfc, 0x5f, 0xb9, 0x32, 0x46, 0xf6, 0xb1, 0x11, 0x63, 0x98, 0xa3, 0x46, 0xf1, 0xa6, 0x41, 0xf3, 0xb0, 0x41, 0xe9, 0x89, 0xf7, 0x91, 0x4f, 0x90, 0xcc, 0x2c, 0x7f, 0xff, 0x35, 0x78, 0x76, 0xe5, 0x06, 0xb5, 0x0d, 0x33, 0x4b, 0xa7, 0x7c, 0x22, 0x5b, 0xc3, 0x07, 0xba, 0x53, 0x71, 0x52, 0xf3, 0xf1, 0x61, 0x0e, 0x4e, 0xaf, 0xe5, 0x95, 0xf6, 0xd9, 0xd9, 0x0d, 0x11, 0xfa, 0xa9, 0x33, 0xa1, 0x5e, 0xf1, 0x36, 0x95, 0x46, 0x86, 0x8a, 0x7f, 0x3a, 0x45, 0xa9, 0x67, 0x68, 0xd4, 0x0f, 0xd9, 0xd0, 0x34, 0x12, 0xc0, 0x91, 0xc6, 0x31, 0x5c, 0xf4, 0xfd, 0xe7, 0xcb, 0x68, 0x60, 0x69, 0x37, 0x38, 0x0d, 0xb2, 0xea, 0xaa, 0x70, 0x7b, 0x4c, 0x41, 0x85, 0xc3, 0x2e, 0xdd, 0xcd, 0xd3, 0x06, 0x70, 0x5e, 0x4d, 0xc1, 0xff, 0xc8, 0x72, 0xee, 0xee, 0x47, 0x5a, 0x64, 0xdf, 0xac, 0x86, 0xab, 0xa4, 0x1c, 0x06, 0x18, 0x98, 0x3f, 0x87, 0x41, 0xc5, 0xef, 0x68, 0xd3, 0xa1, 0x01, 0xe8, 0xa3, 0xb8, 0xca, 0xc6, 0x0c, 0x90, 0x5c, 0x15, 0xfc, 0x91, 0x08, 0x40, 0xb9, 0x4c, 0x00, 0xa0, 0xb9, 0xd0, }; static const unsigned char eddsa_wei25519_168_sig[] = { 0x0a, 0xab, 0x4c, 0x90, 0x05, 0x01, 0xb3, 0xe2, 0x4d, 0x7c, 0xdf, 0x46, 0x63, 0x32, 0x6a, 0x3a, 0x87, 0xdf, 0x5e, 0x48, 0x43, 0xb2, 0xcb, 0xdb, 0x67, 0xcb, 0xf6, 0xe4, 0x60, 0xfe, 0xc3, 0x50, 0xaa, 0x53, 0x71, 0xb1, 0x50, 0x8f, 0x9f, 0x45, 0x28, 0xec, 0xea, 0x23, 0xc4, 0x36, 0xd9, 0x4b, 0x5e, 0x8f, 0xcd, 0x4f, 0x68, 0x1e, 0x30, 0xa6, 0xac, 0x00, 0xa9, 0x70, 0x4a, 0x18, 0x8a, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_168 = { .name = "eddsa_wei25519_168", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_168_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_168_privkey, .privkeylen = 32, .msg = eddsa_wei25519_168_msg, .msglen = 1023, .sig = eddsa_wei25519_168_sig, .siglen = 64, .result = 1, .comment = "draft-josefsson-eddsa-ed25519-02: Test 1024, tcId is 83 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 169 for EDDSA, tcId is 84 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_169_pubkey[] = { 0x8f, 0xd6, 0x59, 0xb7, 0x7b, 0x55, 0x8e, 0xd9, 0x38, 0x82, 0xc1, 0x15, 0x74, 0x38, 0x45, 0x0a, 0xc8, 0x6e, 0xc6, 0x2d, 0x42, 0x1d, 0x56, 0x8e, 0x98, 0xee, 0x23, 0x6f, 0x38, 0x10, 0x29, 0x5a, }; static const unsigned char eddsa_wei25519_169_privkey[] = { 0xd7, 0xad, 0x3f, 0x1f, 0x6b, 0xbe, 0x04, 0x77, 0xc3, 0xc3, 0x57, 0xa8, 0x06, 0xa1, 0x9e, 0xb4, 0x1a, 0xe3, 0xf9, 0x40, 0x25, 0x03, 0x5b, 0xc8, 0x7f, 0x28, 0x1f, 0x8e, 0xe9, 0xfc, 0x0e, 0x34, }; static const unsigned char eddsa_wei25519_169_msg[] = { 0xb0, 0x72, 0x9a, 0x71, 0x35, 0x93, 0xa9, 0x2e, 0x46, 0xb5, 0x6e, 0xaa, 0x66, 0xb9, 0xe4, 0x35, 0xf7, 0xa0, 0x9a, 0x8e, 0x7d, 0xe0, 0x3b, 0x07, 0x8f, 0x6f, 0x28, 0x22, 0x85, 0x27, 0x66, 0x35, 0xf3, 0x01, 0xe7, 0xaa, 0xaf, 0xe4, 0x21, 0x87, 0xc4, 0x5d, 0x6f, 0x5b, 0x13, 0xf9, 0xf1, 0x6b, 0x11, 0x19, 0x5c, 0xc1, 0x25, 0xc0, 0x5b, 0x90, 0xd2, 0x4d, 0xfe, 0x4c, }; static const unsigned char eddsa_wei25519_169_sig[] = { 0x7d, 0xb1, 0x75, 0x57, 0xac, 0x47, 0x0c, 0x0e, 0xda, 0x4e, 0xed, 0xaa, 0xbc, 0xe9, 0x91, 0x97, 0xab, 0x62, 0x56, 0x56, 0x53, 0xcf, 0x91, 0x1f, 0x63, 0x2e, 0xe8, 0xbe, 0x0e, 0x5f, 0xfc, 0xfc, 0x88, 0xfb, 0x94, 0x27, 0x6b, 0x42, 0xe0, 0x79, 0x8f, 0xd3, 0xaa, 0x2f, 0x03, 0x18, 0xbe, 0x7f, 0xc6, 0xa2, 0x9f, 0xae, 0x75, 0xf7, 0x0c, 0x3d, 0xcd, 0xc4, 0x14, 0xa0, 0xad, 0x86, 0x66, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_169 = { .name = "eddsa_wei25519_169", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_169_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_169_privkey, .privkeylen = 32, .msg = eddsa_wei25519_169_msg, .msglen = 60, .sig = eddsa_wei25519_169_sig, .siglen = 64, .result = 1, .comment = "Random test failure 1, tcId is 84 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 170 for EDDSA, tcId is 85 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_170_pubkey[] = { 0x2a, 0x60, 0x6b, 0xf6, 0x7a, 0xc7, 0x70, 0xc6, 0x07, 0x03, 0x8b, 0x00, 0x41, 0x01, 0xb3, 0x25, 0xed, 0xb5, 0x69, 0xef, 0xd3, 0x41, 0x3d, 0x2d, 0x1f, 0x2c, 0x3e, 0x6b, 0x4e, 0x6e, 0x30, 0x82, }; static const unsigned char eddsa_wei25519_170_privkey[] = { 0xad, 0x9b, 0x22, 0x79, 0x33, 0x36, 0xfc, 0xda, 0xc1, 0x0e, 0x13, 0x6c, 0x4d, 0xee, 0xa5, 0x99, 0xbe, 0x18, 0x7a, 0x38, 0xee, 0xf9, 0x1c, 0x1c, 0xf7, 0xc7, 0xa4, 0xec, 0x88, 0x4d, 0xda, 0x08, }; static const unsigned char eddsa_wei25519_170_msg[] = { 0xa8, 0x54, 0x6e, 0x50, 0xba, 0x31, 0xca, 0xe3, 0x23, 0x43, 0x10, 0xd3, 0x26, 0x72, 0x44, 0x7b, 0xe2, 0x13, 0xfa, 0xd9, 0x1a, 0x22, 0x7a, 0x19, 0x66, 0x9c, 0x53, 0xd3, 0x09, 0xb9, 0x59, 0x78, 0x2b, 0x0e, 0x6b, 0x71, 0xf8, 0x79, 0x1f, 0xdb, 0x47, 0x00, 0x43, 0xb5, 0x81, 0x22, 0x00, 0x31, 0x57, 0xd2, 0xd9, 0x6a, 0x43, 0xa6, 0xcb, 0xd7, 0xd3, 0xa8, 0xd8, 0x6b, 0xf4, 0xc9, 0x73, 0x91, 0x88, 0x3e, 0x26, 0x8d, 0x50, 0xaf, 0x80, 0xe1, 0xe6, 0xe1, 0x29, 0x39, 0xc2, 0xbd, 0x50, 0xca, 0x74, 0x6c, 0xda, 0xdf, 0xad, 0x4e, 0xdf, 0x1b, 0xda, 0x87, 0x52, 0x99, 0x74, 0x07, 0x24, 0x14, 0x8e, 0xfb, 0x1e, 0xbe, 0x73, 0xfb, 0x60, 0x08, 0x8c, 0xda, 0x89, 0x03, 0x17, 0x65, 0x86, 0x27, 0xa5, 0xf7, 0xab, 0x5a, 0x0c, 0x07, 0x5d, 0x9d, 0x8f, 0x3f, 0x97, 0xb6, 0x49, 0x2b, 0x35, 0x51, 0x9e, 0x50, 0xff, 0x6b, 0x38, 0x37, 0x74, 0x32, 0xa7, 0x08, 0x1f, 0x91, 0x76, 0xbb, 0x1c, 0x29, 0xa8, 0x62, 0xde, 0xac, 0x13, 0x36, 0xca, 0x20, 0xb0, 0x97, 0xa4, 0x78, 0x29, 0xce, 0xc1, 0x0a, 0x6a, 0x7c, 0xec, 0x17, 0x8e, 0xda, 0x2d, 0x12, 0xf6, 0xdc, 0x6c, 0x87, 0xf9, 0x10, 0x45, 0x4a, 0xf0, 0x12, 0x35, 0x55, 0xba, 0x18, 0x4e, 0x68, 0x80, 0x4d, 0x9c, 0xce, 0xd6, 0x0f, 0xd5, 0xc8, 0xc9, 0x09, 0x43, 0xe5, 0x65, 0x99, 0xc8, 0xf0, 0xba, 0x59, 0xa3, 0x84, 0x91, 0xba, 0x5e, 0x5a, 0x53, 0x46, 0x06, 0x82, 0x47, 0x4c, 0x07, 0xe4, 0x0c, 0xa1, 0x42, 0x98, 0x33, 0x14, 0xfd, 0x76, 0x28, 0x56, 0xbb, 0x10, 0x93, 0xf3, 0x59, 0xda, 0x6e, 0xb0, 0xa7, 0x56, 0xbd, 0x93, 0xa3, 0x16, 0x0c, 0x10, 0xdd, 0x8f, 0xee, 0xa6, 0xb9, 0x7e, 0x7c, 0x6a, 0x17, 0xcb, 0x54, 0xbd, 0x5d, 0x76, 0x49, 0xc0, 0x5c, 0x66, 0xd7, 0xbd, 0xee, 0x05, 0x66, 0x71, 0xdf, 0xda, 0xf6, 0x89, 0xfa, 0x39, 0x45, 0xbb, 0x8e, 0x29, 0xa4, 0x29, 0xf4, 0xbd, 0x5d, 0x35, 0x5d, 0xce, 0x96, 0x87, 0xb0, 0x6f, 0x01, 0xd5, 0xe3, 0x3e, 0x39, 0x99, 0xf0, 0xe8, }; static const unsigned char eddsa_wei25519_170_sig[] = { 0x67, 0xd8, 0x4d, 0x4c, 0x39, 0x45, 0xaa, 0xf0, 0x6e, 0x06, 0xd5, 0x24, 0xbe, 0x63, 0xac, 0xbf, 0xb5, 0xdb, 0xb1, 0x98, 0x8c, 0x4a, 0xea, 0x96, 0xa5, 0xee, 0x9f, 0x7a, 0x9b, 0x9e, 0xec, 0xc2, 0x9d, 0xf4, 0xf6, 0x6b, 0x8a, 0xa1, 0xd9, 0xe8, 0x60, 0x7a, 0x58, 0xfb, 0x1e, 0xf0, 0xc2, 0xad, 0x69, 0xaa, 0xc0, 0x05, 0xb4, 0xf5, 0x8e, 0x34, 0x10, 0x33, 0x44, 0xa9, 0xc8, 0x87, 0x1a, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_170 = { .name = "eddsa_wei25519_170", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_170_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_170_privkey, .privkeylen = 32, .msg = eddsa_wei25519_170_msg, .msglen = 296, .sig = eddsa_wei25519_170_sig, .siglen = 64, .result = 1, .comment = "Random test failure 2, tcId is 85 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 171 for EDDSA, tcId is 86 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_171_pubkey[] = { 0x2a, 0x60, 0x6b, 0xf6, 0x7a, 0xc7, 0x70, 0xc6, 0x07, 0x03, 0x8b, 0x00, 0x41, 0x01, 0xb3, 0x25, 0xed, 0xb5, 0x69, 0xef, 0xd3, 0x41, 0x3d, 0x2d, 0x1f, 0x2c, 0x3e, 0x6b, 0x4e, 0x6e, 0x30, 0x82, }; static const unsigned char eddsa_wei25519_171_privkey[] = { 0xad, 0x9b, 0x22, 0x79, 0x33, 0x36, 0xfc, 0xda, 0xc1, 0x0e, 0x13, 0x6c, 0x4d, 0xee, 0xa5, 0x99, 0xbe, 0x18, 0x7a, 0x38, 0xee, 0xf9, 0x1c, 0x1c, 0xf7, 0xc7, 0xa4, 0xec, 0x88, 0x4d, 0xda, 0x08, }; static const unsigned char eddsa_wei25519_171_msg[] = { 0xb4, 0x77, 0xb0, 0x48, 0x0b, 0xb8, 0x46, 0x42, 0x60, 0x8b, 0x90, 0x8d, 0x29, 0xa5, 0x1c, 0xf2, 0xfc, 0xe6, 0x3f, 0x24, 0xee, 0x95, }; static const unsigned char eddsa_wei25519_171_sig[] = { 0x28, 0xfa, 0xfb, 0xb6, 0x2b, 0x4d, 0x68, 0x8f, 0xa7, 0x9e, 0x1a, 0xc9, 0x28, 0x51, 0xf4, 0x6e, 0x31, 0x9b, 0x16, 0x1f, 0x80, 0x1d, 0x4d, 0xc0, 0x9a, 0xcc, 0x21, 0xfd, 0xd6, 0x78, 0x0a, 0x2c, 0x42, 0x92, 0xb8, 0xc1, 0x00, 0x3c, 0x61, 0xc2, 0xbc, 0xeb, 0xe7, 0xf3, 0xf8, 0x8c, 0xcc, 0x4b, 0xb2, 0x6d, 0x40, 0x73, 0x87, 0xc5, 0xf2, 0x7c, 0xb8, 0xc9, 0x4c, 0xf6, 0xce, 0x81, 0x04, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_171 = { .name = "eddsa_wei25519_171", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_171_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_171_privkey, .privkeylen = 32, .msg = eddsa_wei25519_171_msg, .msglen = 22, .sig = eddsa_wei25519_171_sig, .siglen = 64, .result = 1, .comment = "Random test failure 24, tcId is 86 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 172 for EDDSA, tcId is 87 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_172_pubkey[] = { 0xc9, 0xc9, 0x46, 0xcb, 0xc5, 0x54, 0x4a, 0xc7, 0x4e, 0xef, 0x49, 0x1f, 0x07, 0xc5, 0x88, 0x1c, 0x16, 0xfa, 0xf7, 0xec, 0x31, 0xce, 0x4a, 0xa9, 0x1b, 0xb6, 0x0a, 0xe7, 0xb4, 0x53, 0x90, 0x51, }; static const unsigned char eddsa_wei25519_172_privkey[] = { 0x04, 0xa6, 0x55, 0x3d, 0x68, 0xa9, 0xba, 0xef, 0x78, 0xa2, 0x17, 0x5a, 0xf3, 0x75, 0x45, 0x8e, 0xaa, 0x01, 0xcd, 0xb7, 0x73, 0x50, 0xc6, 0x1e, 0x28, 0x2e, 0xf5, 0xf0, 0xc7, 0x11, 0x65, 0x99, }; static const unsigned char eddsa_wei25519_172_msg[] = { 0xcd, 0x22, 0x12, 0xed, 0xdb, 0x07, 0x06, 0xf6, 0x2c, 0x99, 0x5c, 0xef, 0x95, 0x86, 0x34, 0xf0, 0xcb, 0x77, 0x93, 0x44, 0x4c, 0xbf, 0x4d, 0x30, 0xe8, 0x1c, 0x27, 0xc4, 0x1e, 0xbe, 0xa6, 0xcb, 0x02, 0x60, 0x75, 0x10, 0x13, 0x1f, 0x9c, 0x01, 0x56, 0x92, 0xdf, 0xd5, 0x21, 0xb1, 0x48, 0x84, 0x1e, 0x9a, 0x2d, 0x35, 0x64, 0xd2, 0x0a, 0xc4, 0x01, 0xf6, 0xcb, 0x8e, 0x40, 0xf5, 0x20, 0xfe, 0x0c, 0xaf, 0xbe, 0xaa, 0x88, 0x84, 0x0b, 0x83, 0x01, 0x33, 0x69, 0xd8, 0x79, 0xf0, 0x13, 0x46, 0x3f, 0xe5, 0x2a, 0x13, 0x26, 0x7a, 0xa0, 0xc8, 0xc5, 0x9c, 0x45, 0xcd, 0xe9, 0x39, 0x9c, 0xd1, 0xe6, 0xbe, 0x8c, 0xc6, 0x4c, 0xf4, 0x83, 0x15, 0xac, 0x2e, 0xb3, 0x1a, 0x1c, 0x56, 0x7a, 0x4f, 0xb7, 0xd6, 0x01, 0x74, 0x6d, 0x1f, 0x63, 0xb5, 0xac, 0x02, 0x07, 0x12, 0xad, 0xbb, 0xe0, 0x75, 0x19, 0xbd, 0xed, 0x6f, }; static const unsigned char eddsa_wei25519_172_sig[] = { 0x24, 0x08, 0x7d, 0x47, 0xf3, 0xe2, 0x0a, 0xf5, 0x1b, 0x96, 0x68, 0xae, 0x0a, 0x88, 0xce, 0x76, 0x58, 0x68, 0x02, 0xd0, 0xec, 0x75, 0xd8, 0xc0, 0xf2, 0x8f, 0xc3, 0x09, 0x62, 0xb5, 0xe1, 0xd1, 0xa1, 0xd5, 0x09, 0x57, 0x1a, 0x16, 0x24, 0xed, 0x12, 0x5a, 0x8d, 0xf9, 0x2a, 0x6e, 0x96, 0x37, 0x28, 0xd6, 0xb5, 0xde, 0x99, 0x20, 0x0b, 0x8e, 0x28, 0x5f, 0x70, 0xfe, 0xb6, 0xf0, 0x52, 0x07, }; static const wycheproof_eddsa_test eddsa_wei25519_172 = { .name = "eddsa_wei25519_172", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_172_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_172_privkey, .privkeylen = 32, .msg = eddsa_wei25519_172_msg, .msglen = 132, .sig = eddsa_wei25519_172_sig, .siglen = 64, .result = 1, .comment = "Random test failure 3, tcId is 87 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 173 for EDDSA, tcId is 88 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_173_pubkey[] = { 0xc9, 0xc9, 0x46, 0xcb, 0xc5, 0x54, 0x4a, 0xc7, 0x4e, 0xef, 0x49, 0x1f, 0x07, 0xc5, 0x88, 0x1c, 0x16, 0xfa, 0xf7, 0xec, 0x31, 0xce, 0x4a, 0xa9, 0x1b, 0xb6, 0x0a, 0xe7, 0xb4, 0x53, 0x90, 0x51, }; static const unsigned char eddsa_wei25519_173_privkey[] = { 0x04, 0xa6, 0x55, 0x3d, 0x68, 0xa9, 0xba, 0xef, 0x78, 0xa2, 0x17, 0x5a, 0xf3, 0x75, 0x45, 0x8e, 0xaa, 0x01, 0xcd, 0xb7, 0x73, 0x50, 0xc6, 0x1e, 0x28, 0x2e, 0xf5, 0xf0, 0xc7, 0x11, 0x65, 0x99, }; static const unsigned char eddsa_wei25519_173_msg[] = { 0x27, 0xd4, 0x65, 0xbc, 0x63, 0x27, 0x43, 0x52, 0x2a, 0xef, 0xa2, 0x3c, }; static const unsigned char eddsa_wei25519_173_sig[] = { 0xc2, 0x65, 0x69, 0x51, 0xe2, 0xa0, 0x28, 0x55, 0x85, 0xa5, 0x1f, 0xf0, 0xed, 0xa7, 0xe9, 0xa2, 0x3c, 0x2d, 0xfd, 0x2f, 0xfa, 0x27, 0x3a, 0xee, 0x78, 0x08, 0xf4, 0x60, 0x4e, 0x8f, 0x9a, 0x8c, 0x8e, 0xa4, 0x9e, 0x9f, 0xce, 0x4e, 0xb2, 0xd8, 0xd7, 0x5d, 0x36, 0xb7, 0x23, 0x8f, 0xe6, 0xfc, 0x13, 0xb6, 0xc5, 0xd9, 0x42, 0x7d, 0xd5, 0x8f, 0x8c, 0x66, 0x15, 0xd0, 0x33, 0xc0, 0xbd, 0x0f, }; static const wycheproof_eddsa_test eddsa_wei25519_173 = { .name = "eddsa_wei25519_173", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_173_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_173_privkey, .privkeylen = 32, .msg = eddsa_wei25519_173_msg, .msglen = 12, .sig = eddsa_wei25519_173_sig, .siglen = 64, .result = 1, .comment = "Random test failure 20, tcId is 88 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 174 for EDDSA, tcId is 89 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_174_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_174_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_174_msg[] = { 0xec, 0x5c, 0x7c, 0xb0, 0x78, }; static const unsigned char eddsa_wei25519_174_sig[] = { 0xd9, 0x20, 0xd4, 0x21, 0xa5, 0x95, 0x6b, 0x69, 0xbf, 0xe1, 0xba, 0x83, 0x4c, 0x02, 0x5e, 0x2b, 0xab, 0xb6, 0xc7, 0xa6, 0xd7, 0x8c, 0x97, 0xde, 0x1d, 0x9b, 0xb1, 0x11, 0x6d, 0xfd, 0xd1, 0x18, 0x51, 0x47, 0xb2, 0x88, 0x7e, 0x34, 0xe1, 0x55, 0x78, 0x17, 0x2e, 0x15, 0x07, 0x74, 0x27, 0x5e, 0xa2, 0xaa, 0xd9, 0xe0, 0x21, 0x06, 0xf7, 0xe8, 0xca, 0x1c, 0xaa, 0x66, 0x9a, 0x06, 0x6f, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_174 = { .name = "eddsa_wei25519_174", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_174_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_174_privkey, .privkeylen = 32, .msg = eddsa_wei25519_174_msg, .msglen = 5, .sig = eddsa_wei25519_174_sig, .siglen = 64, .result = 1, .comment = "Random test failure 4, tcId is 89 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 175 for EDDSA, tcId is 90 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_175_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_175_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_175_msg[] = { 0x46, 0x68, 0xc6, 0xa7, 0x6f, 0x0e, 0x48, 0x21, 0x90, 0xa7, 0x17, 0x5b, 0x9f, 0x38, 0x06, 0xa5, 0xfe, 0x43, 0x14, 0xa0, 0x04, 0xfa, 0x69, 0xf9, 0x88, 0x37, 0x3f, 0x7a, }; static const unsigned char eddsa_wei25519_175_sig[] = { 0x4f, 0x62, 0xda, 0xf7, 0xf7, 0xc1, 0x62, 0x03, 0x85, 0x52, 0xad, 0x7d, 0x30, 0x6e, 0x19, 0x5b, 0xaa, 0x37, 0xec, 0xf6, 0xca, 0x76, 0x04, 0x14, 0x26, 0x79, 0xd7, 0xd1, 0x12, 0x8e, 0x1f, 0x8a, 0xf5, 0x2e, 0x4c, 0xb3, 0x54, 0x57, 0x48, 0xc4, 0x4e, 0xf1, 0xff, 0x1c, 0x64, 0xe8, 0x77, 0xe4, 0xf4, 0xd2, 0x48, 0x25, 0x9b, 0x7f, 0x6e, 0xb5, 0x6e, 0x3e, 0xf7, 0x20, 0x97, 0xdc, 0x8e, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_175 = { .name = "eddsa_wei25519_175", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_175_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_175_privkey, .privkeylen = 32, .msg = eddsa_wei25519_175_msg, .msglen = 28, .sig = eddsa_wei25519_175_sig, .siglen = 64, .result = 1, .comment = "Random test failure 5, tcId is 90 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 176 for EDDSA, tcId is 91 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_176_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_176_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_176_msg[] = { 0x5d, 0xc9, 0xbb, 0x87, 0xeb, 0x11, 0x62, 0x1a, 0x93, 0xf9, 0x2a, 0xbe, 0x53, 0x51, 0x56, 0x97, 0xd2, 0x61, 0x1b, 0x2e, 0xef, 0x73, }; static const unsigned char eddsa_wei25519_176_sig[] = { 0xde, 0xec, 0xaf, 0xb6, 0xf2, 0xed, 0xe7, 0x3f, 0xec, 0x91, 0xa6, 0xf1, 0x0e, 0x45, 0xb9, 0xc1, 0xc6, 0x1c, 0x4b, 0x9b, 0xfb, 0xe6, 0xb6, 0x14, 0x7e, 0x2d, 0xe0, 0xb1, 0xdf, 0x69, 0x38, 0x97, 0x1f, 0x78, 0x96, 0xc3, 0xab, 0x83, 0x85, 0x1f, 0xb5, 0xd9, 0xe5, 0x37, 0x03, 0x7b, 0xff, 0x0f, 0xca, 0x0c, 0xcb, 0x4a, 0x3c, 0xc3, 0x8f, 0x05, 0x6f, 0x91, 0xf7, 0xd7, 0xa0, 0x55, 0x7e, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_176 = { .name = "eddsa_wei25519_176", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_176_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_176_privkey, .privkeylen = 32, .msg = eddsa_wei25519_176_msg, .msglen = 22, .sig = eddsa_wei25519_176_sig, .siglen = 64, .result = 1, .comment = "Random test failure 8, tcId is 91 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 177 for EDDSA, tcId is 92 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_177_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_177_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_177_msg[] = { 0x7d, 0xcf, 0xe6, 0x0f, 0x88, 0x1e, 0x12, 0x85, 0x67, 0x6f, 0x35, 0xb6, 0x8a, 0x1b, 0x2d, 0xbc, 0xdd, 0x7b, 0xe6, 0xf7, 0x19, 0xa2, 0x88, 0xab, 0xab, 0xc2, 0x8d, 0x36, 0xe3, 0xa4, 0x2a, 0xc3, 0x01, 0x0a, 0x1c, 0xa5, 0x4b, 0x32, 0x76, 0x0e, 0x74, }; static const unsigned char eddsa_wei25519_177_sig[] = { 0x7f, 0x86, 0x63, 0xcf, 0x98, 0xcb, 0xd3, 0x9d, 0x5f, 0xf5, 0x53, 0xf0, 0x0b, 0xcf, 0x3d, 0x0d, 0x52, 0x06, 0x05, 0x79, 0x4f, 0x88, 0x66, 0xce, 0x75, 0x71, 0x4d, 0x77, 0xcc, 0x51, 0xe6, 0x6c, 0x91, 0x81, 0x8b, 0x65, 0x7d, 0x7b, 0x0d, 0xae, 0x43, 0x0a, 0x68, 0x35, 0x35, 0x06, 0xed, 0xc4, 0xa7, 0x14, 0xc3, 0x45, 0xf5, 0xdd, 0xb5, 0xc8, 0xb9, 0x58, 0xba, 0x3d, 0x03, 0x5f, 0x7a, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_177 = { .name = "eddsa_wei25519_177", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_177_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_177_privkey, .privkeylen = 32, .msg = eddsa_wei25519_177_msg, .msglen = 41, .sig = eddsa_wei25519_177_sig, .siglen = 64, .result = 1, .comment = "Random test failure 10, tcId is 92 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 178 for EDDSA, tcId is 93 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_178_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_178_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_178_msg[] = { 0x58, 0xe4, 0x56, 0x06, 0x4d, 0xff, 0x47, 0x11, 0x09, 0xde, 0xf4, 0xca, 0x27, 0xfa, 0x83, 0x10, 0xa1, 0xdf, 0x32, 0x73, 0x96, 0x55, 0xb6, 0x24, 0xf2, 0x7e, 0x64, 0x18, 0xd3, 0x4b, 0x7f, 0x00, 0x71, 0x73, 0xf3, 0xfa, 0xa5, }; static const unsigned char eddsa_wei25519_178_sig[] = { 0x6a, 0xab, 0x49, 0xe5, 0xc0, 0xbc, 0x30, 0x9b, 0x78, 0x33, 0x78, 0xee, 0x03, 0xff, 0xda, 0x28, 0x2f, 0x01, 0x85, 0xcd, 0xf9, 0x4c, 0x84, 0x77, 0x01, 0xff, 0x30, 0x7a, 0x6e, 0xe8, 0xd0, 0x86, 0x54, 0x11, 0xc4, 0x4e, 0x0a, 0x82, 0x06, 0xf6, 0xa5, 0xf6, 0x06, 0x10, 0x74, 0x51, 0x94, 0x0c, 0x25, 0x93, 0xaf, 0x79, 0x0c, 0xe1, 0x86, 0x0f, 0x4c, 0x14, 0xab, 0x25, 0xb2, 0xde, 0xae, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_178 = { .name = "eddsa_wei25519_178", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_178_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_178_privkey, .privkeylen = 32, .msg = eddsa_wei25519_178_msg, .msglen = 37, .sig = eddsa_wei25519_178_sig, .siglen = 64, .result = 1, .comment = "Random test failure 12, tcId is 93 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 179 for EDDSA, tcId is 94 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_179_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_179_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_179_msg[] = { 0xa1, }; static const unsigned char eddsa_wei25519_179_sig[] = { 0x1a, 0x74, 0xed, 0x2c, 0xbd, 0xc7, 0xd8, 0xf3, 0x82, 0x70, 0x14, 0xe8, 0xe6, 0xec, 0xf8, 0xfd, 0x26, 0x98, 0xac, 0x8f, 0x86, 0x83, 0x3a, 0xcc, 0xcd, 0xd4, 0x00, 0xdf, 0x71, 0x0f, 0xe0, 0xd6, 0xb0, 0x54, 0x3c, 0x9c, 0xfa, 0x00, 0xd5, 0x2b, 0xf0, 0x24, 0xab, 0x7c, 0xe0, 0xd9, 0x19, 0x81, 0x94, 0x40, 0x97, 0x23, 0x3e, 0xc1, 0x34, 0xd5, 0xc7, 0xab, 0xbd, 0x44, 0xbf, 0xd3, 0x2d, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_179 = { .name = "eddsa_wei25519_179", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_179_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_179_privkey, .privkeylen = 32, .msg = eddsa_wei25519_179_msg, .msglen = 1, .sig = eddsa_wei25519_179_sig, .siglen = 64, .result = 1, .comment = "Random test failure 15, tcId is 94 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 180 for EDDSA, tcId is 95 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_180_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_180_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_180_msg[] = { 0x11, 0xcb, 0x1e, 0xaf, 0xa4, 0xc4, 0x2a, 0x84, 0x02, 0xc4, 0x19, 0x3c, 0x46, 0x96, 0xf7, 0xb2, 0xe6, 0xd4, 0x58, 0x5e, 0x4b, 0x42, 0xdc, 0xf1, 0xa8, 0xb6, 0x7a, 0x80, 0xb2, 0xda, 0x80, 0xbc, 0x9d, 0x4b, 0x64, 0x9f, 0xb2, 0xf3, 0x5e, 0xaf, 0x1f, 0x56, 0xc4, 0x26, 0xfd, 0x0b, }; static const unsigned char eddsa_wei25519_180_sig[] = { 0x14, 0xce, 0xb2, 0xea, 0xf4, 0x68, 0x8d, 0x99, 0x5d, 0x48, 0x2f, 0x44, 0x85, 0x2d, 0x71, 0xad, 0x87, 0x8c, 0xd7, 0xc7, 0x7b, 0x41, 0xe6, 0x0b, 0x00, 0x65, 0xfd, 0x01, 0xa5, 0x9b, 0x05, 0x4e, 0xe7, 0x47, 0x59, 0x22, 0x41, 0x87, 0xdb, 0xde, 0x9e, 0x59, 0xa7, 0x63, 0xa7, 0x02, 0x77, 0xc9, 0x60, 0x89, 0x2e, 0xf8, 0x9f, 0xba, 0x99, 0x7a, 0xba, 0x25, 0x76, 0xb2, 0xc5, 0x4b, 0xa6, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_180 = { .name = "eddsa_wei25519_180", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_180_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_180_privkey, .privkeylen = 32, .msg = eddsa_wei25519_180_msg, .msglen = 46, .sig = eddsa_wei25519_180_sig, .siglen = 64, .result = 1, .comment = "Random test failure 19, tcId is 95 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 181 for EDDSA, tcId is 96 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_181_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_181_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_181_msg[] = { 0xaa, 0x36, 0x5b, 0x44, 0x2d, 0x12, 0xb7, 0xf3, 0xc9, 0x25, }; static const unsigned char eddsa_wei25519_181_sig[] = { 0x83, 0xc4, 0x0c, 0xe1, 0x3d, 0x48, 0x3c, 0xc5, 0x8f, 0xf6, 0x58, 0x44, 0x87, 0x58, 0x62, 0xd9, 0x3d, 0xf4, 0xbd, 0x36, 0x7a, 0xf7, 0x7e, 0xfa, 0x46, 0x9e, 0xc0, 0x6a, 0x8e, 0xd9, 0xe6, 0xd7, 0x90, 0x5a, 0x04, 0x87, 0x95, 0x35, 0x70, 0x8d, 0xdf, 0x22, 0x55, 0x67, 0xa8, 0x15, 0xc9, 0xb9, 0x41, 0xd4, 0x05, 0xc9, 0x8e, 0x91, 0x8f, 0xd0, 0xc1, 0x51, 0x16, 0x5c, 0xea, 0x7f, 0xb1, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_181 = { .name = "eddsa_wei25519_181", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_181_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_181_privkey, .privkeylen = 32, .msg = eddsa_wei25519_181_msg, .msglen = 10, .sig = eddsa_wei25519_181_sig, .siglen = 64, .result = 1, .comment = "Random test failure 25, tcId is 96 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 182 for EDDSA, tcId is 97 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_182_pubkey[] = { 0x32, 0xad, 0x02, 0x6f, 0x69, 0x3d, 0x0d, 0x2a, 0xfe, 0x7f, 0x43, 0x88, 0xd9, 0x1c, 0x4c, 0x96, 0x44, 0x26, 0xfc, 0xb9, 0xe3, 0x66, 0x5c, 0x3e, 0xbd, 0x86, 0x50, 0x00, 0x9b, 0x81, 0x5c, 0x8e, }; static const unsigned char eddsa_wei25519_182_privkey[] = { 0xc3, 0x67, 0xc8, 0xd2, 0xeb, 0xee, 0xec, 0xd7, 0x0c, 0x1e, 0x89, 0x85, 0xb7, 0x0c, 0x38, 0x08, 0xb7, 0x56, 0x57, 0xf2, 0x43, 0xb2, 0x1b, 0xa4, 0xf3, 0x22, 0x79, 0x25, 0x40, 0xe9, 0x22, 0x57, }; static const unsigned char eddsa_wei25519_182_msg[] = { 0x47, 0x5f, }; static const unsigned char eddsa_wei25519_182_sig[] = { 0x71, 0xa4, 0xa0, 0x6a, 0x34, 0x07, 0x5f, 0x2f, 0xd4, 0x7b, 0xc3, 0xab, 0xf4, 0x71, 0x4d, 0x46, 0xdb, 0x7e, 0x97, 0xb0, 0x8c, 0xb6, 0x18, 0x0d, 0x3f, 0x15, 0x39, 0xac, 0x50, 0xb1, 0x8c, 0xe5, 0x1f, 0x8a, 0xf8, 0xae, 0x95, 0xed, 0x21, 0xd4, 0xfa, 0x0d, 0xaa, 0xb7, 0x23, 0x59, 0x25, 0x63, 0x1e, 0xce, 0xa1, 0xfd, 0x9d, 0x0d, 0x8a, 0x2b, 0xa7, 0xa7, 0x58, 0x3f, 0xd0, 0x4b, 0x90, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_182 = { .name = "eddsa_wei25519_182", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_182_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_182_privkey, .privkeylen = 32, .msg = eddsa_wei25519_182_msg, .msglen = 2, .sig = eddsa_wei25519_182_sig, .siglen = 64, .result = 1, .comment = "Random test failure 28, tcId is 97 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 183 for EDDSA, tcId is 98 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_183_pubkey[] = { 0xc2, 0x9e, 0xc1, 0x89, 0x4e, 0x06, 0xd2, 0x7b, 0x4e, 0x40, 0x48, 0x6b, 0x4f, 0xa5, 0x06, 0x3d, 0x66, 0xa7, 0x46, 0xc7, 0xf9, 0xc3, 0x23, 0xb1, 0x22, 0x03, 0xc0, 0x3b, 0x72, 0xb8, 0xb7, 0x8a, }; static const unsigned char eddsa_wei25519_183_privkey[] = { 0x56, 0xc1, 0xe2, 0x2d, 0x61, 0x6c, 0xbb, 0x6d, 0xea, 0x86, 0x92, 0x88, 0xb4, 0xb1, 0xc0, 0x2b, 0xb9, 0x86, 0x96, 0x58, 0x3c, 0x2f, 0x6e, 0x65, 0x00, 0x13, 0xa0, 0x3e, 0x17, 0x04, 0x9c, 0x62, }; static const unsigned char eddsa_wei25519_183_msg[] = { 0x0f, 0x32, 0x5f, 0xfd, 0x87, 0xe5, 0x81, 0x31, 0xff, 0xa2, 0x3c, 0x05, 0xea, 0x45, 0x79, 0x51, 0x3b, 0x28, 0x7f, 0xdb, 0xa8, 0x7b, 0x44, }; static const unsigned char eddsa_wei25519_183_sig[] = { 0x66, 0x69, 0xac, 0xf9, 0x46, 0x67, 0xc5, 0xb5, 0x41, 0xaf, 0xe5, 0x30, 0x7b, 0xde, 0x94, 0x76, 0xb1, 0x3a, 0xe7, 0xe0, 0xe6, 0x05, 0x8a, 0x77, 0x21, 0x01, 0xac, 0x8e, 0xb0, 0xa9, 0x43, 0x31, 0x42, 0x8e, 0xb4, 0xdb, 0x0a, 0x2c, 0x68, 0xa9, 0xb6, 0xc1, 0x76, 0x3b, 0x86, 0x24, 0xda, 0xb2, 0x59, 0xb0, 0x87, 0x6c, 0xdc, 0xfa, 0xea, 0xcc, 0x17, 0xb2, 0x1a, 0x18, 0xe3, 0xfc, 0x01, 0x0a, }; static const wycheproof_eddsa_test eddsa_wei25519_183 = { .name = "eddsa_wei25519_183", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_183_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_183_privkey, .privkeylen = 32, .msg = eddsa_wei25519_183_msg, .msglen = 23, .sig = eddsa_wei25519_183_sig, .siglen = 64, .result = 1, .comment = "Random test failure 6, tcId is 98 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 184 for EDDSA, tcId is 99 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_184_pubkey[] = { 0xc2, 0x9e, 0xc1, 0x89, 0x4e, 0x06, 0xd2, 0x7b, 0x4e, 0x40, 0x48, 0x6b, 0x4f, 0xa5, 0x06, 0x3d, 0x66, 0xa7, 0x46, 0xc7, 0xf9, 0xc3, 0x23, 0xb1, 0x22, 0x03, 0xc0, 0x3b, 0x72, 0xb8, 0xb7, 0x8a, }; static const unsigned char eddsa_wei25519_184_privkey[] = { 0x56, 0xc1, 0xe2, 0x2d, 0x61, 0x6c, 0xbb, 0x6d, 0xea, 0x86, 0x92, 0x88, 0xb4, 0xb1, 0xc0, 0x2b, 0xb9, 0x86, 0x96, 0x58, 0x3c, 0x2f, 0x6e, 0x65, 0x00, 0x13, 0xa0, 0x3e, 0x17, 0x04, 0x9c, 0x62, }; static const unsigned char eddsa_wei25519_184_msg[] = { 0x5f, 0xfa, }; static const unsigned char eddsa_wei25519_184_sig[] = { 0x93, 0x1e, 0x51, 0x52, 0xfc, 0xef, 0x07, 0x8c, 0x22, 0xcc, 0x5d, 0x6a, 0x3a, 0x65, 0xf0, 0x6e, 0x39, 0x62, 0x89, 0xf6, 0xf5, 0xf2, 0xd1, 0xef, 0xa6, 0x34, 0x02, 0x54, 0xa5, 0x35, 0x26, 0xef, 0x5d, 0xc6, 0x87, 0x4e, 0xed, 0xdf, 0x35, 0xc3, 0xf5, 0x09, 0x91, 0xc5, 0x3c, 0xd0, 0x2b, 0xf0, 0x63, 0x13, 0xe3, 0x7d, 0x93, 0xee, 0x1f, 0x70, 0x22, 0x12, 0x8f, 0xfa, 0x3b, 0x8f, 0x30, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_184 = { .name = "eddsa_wei25519_184", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_184_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_184_privkey, .privkeylen = 32, .msg = eddsa_wei25519_184_msg, .msglen = 2, .sig = eddsa_wei25519_184_sig, .siglen = 64, .result = 1, .comment = "Random test failure 21, tcId is 99 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 185 for EDDSA, tcId is 100 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_185_pubkey[] = { 0xcf, 0xda, 0x5b, 0x89, 0x9e, 0x35, 0x76, 0x4c, 0x52, 0x29, 0xe5, 0x92, 0x95, 0xfe, 0x12, 0x22, 0xb7, 0xdd, 0xce, 0x17, 0x66, 0x43, 0x69, 0x7c, 0x29, 0xe4, 0x6e, 0xcb, 0xba, 0x10, 0xcf, 0x10, }; static const unsigned char eddsa_wei25519_185_privkey[] = { 0xb7, 0xd2, 0xf6, 0x42, 0x76, 0xdf, 0x41, 0x7f, 0xed, 0x27, 0xd8, 0xe1, 0x5b, 0x4e, 0x90, 0xf6, 0xfd, 0x93, 0xda, 0xce, 0x70, 0x72, 0x94, 0xc3, 0x38, 0xbd, 0x32, 0xbc, 0x4b, 0xbd, 0x8f, 0xdb, }; static const unsigned char eddsa_wei25519_185_msg[] = { 0xec, 0x5c, 0x7c, 0xb0, 0x78, }; static const unsigned char eddsa_wei25519_185_sig[] = { 0x30, 0x49, 0x0c, 0x28, 0xf8, 0x06, 0x29, 0x82, 0x25, 0xdf, 0x62, 0x10, 0x35, 0x21, 0xdc, 0xee, 0x04, 0x71, 0x53, 0x91, 0x2c, 0x33, 0xab, 0x8a, 0xb8, 0xbb, 0xdd, 0x1f, 0xfa, 0xbd, 0x70, 0xfd, 0x4f, 0xdb, 0x36, 0x0f, 0x05, 0xbe, 0x53, 0x5b, 0x06, 0x7d, 0x1c, 0xf4, 0xe7, 0x8c, 0x2c, 0xb4, 0x32, 0x20, 0x6b, 0xf2, 0x80, 0xaa, 0xb3, 0xbd, 0x21, 0xaa, 0xa1, 0xcb, 0x89, 0x4c, 0x5b, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_185 = { .name = "eddsa_wei25519_185", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_185_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_185_privkey, .privkeylen = 32, .msg = eddsa_wei25519_185_msg, .msglen = 5, .sig = eddsa_wei25519_185_sig, .siglen = 64, .result = 1, .comment = "Random test failure 7, tcId is 100 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 186 for EDDSA, tcId is 101 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_186_pubkey[] = { 0xcf, 0xda, 0x5b, 0x89, 0x9e, 0x35, 0x76, 0x4c, 0x52, 0x29, 0xe5, 0x92, 0x95, 0xfe, 0x12, 0x22, 0xb7, 0xdd, 0xce, 0x17, 0x66, 0x43, 0x69, 0x7c, 0x29, 0xe4, 0x6e, 0xcb, 0xba, 0x10, 0xcf, 0x10, }; static const unsigned char eddsa_wei25519_186_privkey[] = { 0xb7, 0xd2, 0xf6, 0x42, 0x76, 0xdf, 0x41, 0x7f, 0xed, 0x27, 0xd8, 0xe1, 0x5b, 0x4e, 0x90, 0xf6, 0xfd, 0x93, 0xda, 0xce, 0x70, 0x72, 0x94, 0xc3, 0x38, 0xbd, 0x32, 0xbc, 0x4b, 0xbd, 0x8f, 0xdb, }; static const unsigned char eddsa_wei25519_186_msg[] = { 0x67, 0x48, 0x40, 0x59, 0xb2, 0x49, 0x0b, 0x1a, 0x0a, 0x4f, 0x8d, 0xee, 0x77, 0x97, 0x9e, 0x26, }; static const unsigned char eddsa_wei25519_186_sig[] = { 0x4c, 0xd4, 0xf7, 0x7e, 0xd4, 0x73, 0xa6, 0x64, 0x73, 0x87, 0xf3, 0x16, 0x35, 0x41, 0xc6, 0x7a, 0x17, 0x08, 0xa3, 0xc3, 0xbd, 0x16, 0x73, 0x24, 0x7c, 0xb8, 0x7f, 0x0c, 0xb6, 0x8b, 0x3c, 0x56, 0xf0, 0x4b, 0xfa, 0x72, 0x97, 0x0c, 0x8a, 0x48, 0x3e, 0xfe, 0x65, 0x9c, 0x87, 0x00, 0x9a, 0xb4, 0x02, 0x0b, 0x59, 0x0b, 0x66, 0x41, 0x31, 0x6b, 0x3d, 0xed, 0xdb, 0x54, 0x50, 0x54, 0x4e, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_186 = { .name = "eddsa_wei25519_186", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_186_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_186_privkey, .privkeylen = 32, .msg = eddsa_wei25519_186_msg, .msglen = 16, .sig = eddsa_wei25519_186_sig, .siglen = 64, .result = 1, .comment = "Random test failure 9, tcId is 101 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 187 for EDDSA, tcId is 102 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_187_pubkey[] = { 0xcf, 0xda, 0x5b, 0x89, 0x9e, 0x35, 0x76, 0x4c, 0x52, 0x29, 0xe5, 0x92, 0x95, 0xfe, 0x12, 0x22, 0xb7, 0xdd, 0xce, 0x17, 0x66, 0x43, 0x69, 0x7c, 0x29, 0xe4, 0x6e, 0xcb, 0xba, 0x10, 0xcf, 0x10, }; static const unsigned char eddsa_wei25519_187_privkey[] = { 0xb7, 0xd2, 0xf6, 0x42, 0x76, 0xdf, 0x41, 0x7f, 0xed, 0x27, 0xd8, 0xe1, 0x5b, 0x4e, 0x90, 0xf6, 0xfd, 0x93, 0xda, 0xce, 0x70, 0x72, 0x94, 0xc3, 0x38, 0xbd, 0x32, 0xbc, 0x4b, 0xbd, 0x8f, 0xdb, }; static const unsigned char eddsa_wei25519_187_msg[] = { 0xa0, 0x20, 0xa4, 0x38, 0x1d, 0xc9, 0x14, 0x1f, 0x47, 0xee, 0x50, 0x88, 0x71, 0xab, 0x7a, 0x8b, 0x5a, 0x36, 0x48, 0x72, 0x7c, 0x42, 0x81, 0xae, 0x99, 0x32, 0x37, 0x6f, 0x23, 0xa8, 0xe1, 0xbc, 0xda, 0x06, 0x26, 0xb7, 0x12, 0x91, 0x97, 0xd8, 0x64, 0x17, 0x86, 0x31, 0xec, 0x89, 0xc4, 0x33, 0x2d, 0xbb, 0x18, }; static const unsigned char eddsa_wei25519_187_sig[] = { 0x1e, 0x41, 0xa2, 0x4f, 0xe7, 0x32, 0xbd, 0x7c, 0xab, 0x14, 0xc2, 0xa2, 0xf5, 0x13, 0x4e, 0xe8, 0xc8, 0x7f, 0xcb, 0xd2, 0xe9, 0x87, 0xe6, 0x09, 0x57, 0xed, 0x92, 0x39, 0xe5, 0xc3, 0x24, 0x04, 0xd5, 0x69, 0x77, 0xe1, 0xb4, 0x28, 0x28, 0x71, 0x89, 0x6c, 0xb1, 0x06, 0x25, 0xa1, 0x93, 0x74, 0x68, 0xe4, 0xdc, 0x26, 0x6e, 0x16, 0xa9, 0xc1, 0xb8, 0xe9, 0x89, 0x11, 0x77, 0xec, 0xa8, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_187 = { .name = "eddsa_wei25519_187", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_187_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_187_privkey, .privkeylen = 32, .msg = eddsa_wei25519_187_msg, .msglen = 51, .sig = eddsa_wei25519_187_sig, .siglen = 64, .result = 1, .comment = "Random test failure 11, tcId is 102 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 188 for EDDSA, tcId is 103 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_188_pubkey[] = { 0xcf, 0xda, 0x5b, 0x89, 0x9e, 0x35, 0x76, 0x4c, 0x52, 0x29, 0xe5, 0x92, 0x95, 0xfe, 0x12, 0x22, 0xb7, 0xdd, 0xce, 0x17, 0x66, 0x43, 0x69, 0x7c, 0x29, 0xe4, 0x6e, 0xcb, 0xba, 0x10, 0xcf, 0x10, }; static const unsigned char eddsa_wei25519_188_privkey[] = { 0xb7, 0xd2, 0xf6, 0x42, 0x76, 0xdf, 0x41, 0x7f, 0xed, 0x27, 0xd8, 0xe1, 0x5b, 0x4e, 0x90, 0xf6, 0xfd, 0x93, 0xda, 0xce, 0x70, 0x72, 0x94, 0xc3, 0x38, 0xbd, 0x32, 0xbc, 0x4b, 0xbd, 0x8f, 0xdb, }; static const unsigned char eddsa_wei25519_188_msg[] = { 0xa2, 0x51, 0x76, 0xb3, 0xaf, 0xea, 0x31, 0x8b, 0x2e, 0xc1, 0x1d, 0xda, 0xcb, 0x10, 0xca, 0xf7, 0x17, 0x9c, 0x0b, 0x3f, 0x8e, 0xab, 0xbf, 0xa2, 0x89, 0x55, 0x81, 0x13, 0x8d, 0x3c, 0x1e, 0x0e, }; static const unsigned char eddsa_wei25519_188_sig[] = { 0x2a, 0x83, 0x3a, 0xad, 0xec, 0xd9, 0xf2, 0x82, 0x35, 0xcb, 0x58, 0x96, 0xbf, 0x37, 0x81, 0x52, 0x1d, 0xc7, 0x1f, 0x28, 0xaf, 0x2e, 0x91, 0xdb, 0xe1, 0x73, 0x5a, 0x61, 0xdc, 0xe3, 0xe3, 0x1a, 0xc1, 0x5c, 0xa2, 0x4b, 0x3f, 0xc4, 0x78, 0x17, 0xa5, 0x9d, 0x38, 0x6b, 0xbb, 0xb2, 0xce, 0x60, 0xa6, 0xad, 0xc0, 0xa2, 0x70, 0x3b, 0xb2, 0xbd, 0xea, 0x8f, 0x70, 0xf9, 0x10, 0x51, 0xf7, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_188 = { .name = "eddsa_wei25519_188", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_188_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_188_privkey, .privkeylen = 32, .msg = eddsa_wei25519_188_msg, .msglen = 32, .sig = eddsa_wei25519_188_sig, .siglen = 64, .result = 1, .comment = "Random test failure 14, tcId is 103 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 189 for EDDSA, tcId is 104 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_189_pubkey[] = { 0xcf, 0xda, 0x5b, 0x89, 0x9e, 0x35, 0x76, 0x4c, 0x52, 0x29, 0xe5, 0x92, 0x95, 0xfe, 0x12, 0x22, 0xb7, 0xdd, 0xce, 0x17, 0x66, 0x43, 0x69, 0x7c, 0x29, 0xe4, 0x6e, 0xcb, 0xba, 0x10, 0xcf, 0x10, }; static const unsigned char eddsa_wei25519_189_privkey[] = { 0xb7, 0xd2, 0xf6, 0x42, 0x76, 0xdf, 0x41, 0x7f, 0xed, 0x27, 0xd8, 0xe1, 0x5b, 0x4e, 0x90, 0xf6, 0xfd, 0x93, 0xda, 0xce, 0x70, 0x72, 0x94, 0xc3, 0x38, 0xbd, 0x32, 0xbc, 0x4b, 0xbd, 0x8f, 0xdb, }; static const unsigned char eddsa_wei25519_189_msg[] = { 0xa9, 0xe6, 0xd9, 0x48, 0x70, 0xa6, 0x7a, 0x9f, 0xe1, 0xcf, 0x13, 0xb1, 0xe6, 0xf9, 0x15, 0x0c, 0xdd, 0x40, 0x7b, 0xf6, 0x48, 0x0e, 0xc8, 0x41, 0xea, 0x58, 0x6a, 0xe3, 0x93, 0x5e, 0x97, 0x87, 0x16, 0x3c, 0xf4, 0x19, 0xc1, }; static const unsigned char eddsa_wei25519_189_sig[] = { 0xc9, 0x7e, 0x31, 0x90, 0xf8, 0x3b, 0xae, 0x77, 0x29, 0xba, 0x47, 0x3a, 0xd4, 0x6b, 0x42, 0x0b, 0x8a, 0xad, 0x73, 0x5f, 0x08, 0x08, 0xea, 0x42, 0xc0, 0xf8, 0x98, 0xcc, 0xfe, 0x6a, 0xdd, 0xd4, 0xfd, 0x9d, 0x9f, 0xa3, 0x35, 0x5d, 0x5e, 0x67, 0xee, 0x21, 0xab, 0x7e, 0x1f, 0x80, 0x5c, 0xd0, 0x7f, 0x1f, 0xce, 0x98, 0x0e, 0x30, 0x7f, 0x4d, 0x7a, 0xd3, 0x6c, 0xc9, 0x24, 0xee, 0xf0, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_189 = { .name = "eddsa_wei25519_189", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_189_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_189_privkey, .privkeylen = 32, .msg = eddsa_wei25519_189_msg, .msglen = 37, .sig = eddsa_wei25519_189_sig, .siglen = 64, .result = 1, .comment = "Random test failure 18, tcId is 104 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 190 for EDDSA, tcId is 105 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_190_pubkey[] = { 0x52, 0x99, 0x19, 0xc9, 0xc7, 0x80, 0x98, 0x5a, 0x84, 0x1c, 0x42, 0xba, 0x6c, 0x18, 0x0f, 0xf2, 0xd6, 0x7a, 0x27, 0x6c, 0xcf, 0xbe, 0x28, 0x10, 0x80, 0xe4, 0x7a, 0xb7, 0x1a, 0x75, 0x8f, 0x56, }; static const unsigned char eddsa_wei25519_190_privkey[] = { 0x7d, 0x59, 0x7c, 0x3b, 0x72, 0x83, 0x92, 0x9d, 0x07, 0xed, 0x8f, 0x01, 0xf3, 0x1d, 0x25, 0x96, 0x82, 0x3e, 0x5e, 0x46, 0xab, 0x22, 0x6c, 0x7b, 0xe4, 0x23, 0x4d, 0x1a, 0x9d, 0xca, 0xef, 0x37, }; static const unsigned char eddsa_wei25519_190_msg[] = { 0xe1, 0xcb, 0xf2, 0xd8, 0x68, 0x27, 0x82, 0x56, 0x13, 0xfb, 0x7a, 0x85, 0x81, 0x1d, }; static const unsigned char eddsa_wei25519_190_sig[] = { 0x01, 0xab, 0xfa, 0x4d, 0x6b, 0xbc, 0x72, 0x6b, 0x19, 0x69, 0x28, 0xec, 0x84, 0xfd, 0x03, 0xf0, 0xc9, 0x53, 0xa4, 0xfa, 0x2b, 0x22, 0x82, 0x49, 0x56, 0x2f, 0xf1, 0x44, 0x2a, 0x4f, 0x63, 0xa7, 0x15, 0x0b, 0x06, 0x4f, 0x37, 0x12, 0xb5, 0x1c, 0x2a, 0xf7, 0x68, 0xd2, 0xc2, 0x71, 0x1a, 0x71, 0xaa, 0xbf, 0x8d, 0x18, 0x68, 0x33, 0xe9, 0x41, 0xa0, 0x30, 0x1b, 0x82, 0xf0, 0x50, 0x29, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_190 = { .name = "eddsa_wei25519_190", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_190_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_190_privkey, .privkeylen = 32, .msg = eddsa_wei25519_190_msg, .msglen = 14, .sig = eddsa_wei25519_190_sig, .siglen = 64, .result = 1, .comment = "Random test failure 13, tcId is 105 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 191 for EDDSA, tcId is 106 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_191_pubkey[] = { 0x52, 0x99, 0x19, 0xc9, 0xc7, 0x80, 0x98, 0x5a, 0x84, 0x1c, 0x42, 0xba, 0x6c, 0x18, 0x0f, 0xf2, 0xd6, 0x7a, 0x27, 0x6c, 0xcf, 0xbe, 0x28, 0x10, 0x80, 0xe4, 0x7a, 0xb7, 0x1a, 0x75, 0x8f, 0x56, }; static const unsigned char eddsa_wei25519_191_privkey[] = { 0x7d, 0x59, 0x7c, 0x3b, 0x72, 0x83, 0x92, 0x9d, 0x07, 0xed, 0x8f, 0x01, 0xf3, 0x1d, 0x25, 0x96, 0x82, 0x3e, 0x5e, 0x46, 0xab, 0x22, 0x6c, 0x7b, 0xe4, 0x23, 0x4d, 0x1a, 0x9d, 0xca, 0xef, 0x37, }; static const unsigned char eddsa_wei25519_191_msg[] = { 0x25, }; static const unsigned char eddsa_wei25519_191_sig[] = { 0xe4, 0xae, 0x21, 0xf7, 0xa8, 0xf4, 0xb3, 0xb3, 0x25, 0xc1, 0x61, 0xa8, 0xc6, 0xe5, 0x3e, 0x2e, 0xdd, 0x70, 0x05, 0xb9, 0xc2, 0xf8, 0xa2, 0xe3, 0xb0, 0xac, 0x4b, 0xa9, 0x4a, 0xa8, 0x0b, 0xe6, 0xf2, 0xee, 0x22, 0xac, 0x8d, 0x4a, 0x96, 0xb9, 0xa3, 0xeb, 0x73, 0xa8, 0x25, 0xe7, 0xbb, 0x5a, 0xff, 0x4a, 0x33, 0x93, 0xbf, 0x5b, 0x4a, 0x38, 0x11, 0x9e, 0x9c, 0x9b, 0x1b, 0x04, 0x11, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_191 = { .name = "eddsa_wei25519_191", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_191_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_191_privkey, .privkeylen = 32, .msg = eddsa_wei25519_191_msg, .msglen = 1, .sig = eddsa_wei25519_191_sig, .siglen = 64, .result = 1, .comment = "Random test failure 22, tcId is 106 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 192 for EDDSA, tcId is 107 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_192_pubkey[] = { 0x22, 0x52, 0xb3, 0xd5, 0x7c, 0x74, 0xcb, 0xf8, 0xbc, 0x46, 0x0d, 0xc2, 0xe0, 0x82, 0x84, 0x79, 0x26, 0xbc, 0x02, 0x2f, 0x09, 0xab, 0x6a, 0xe9, 0x57, 0x56, 0x36, 0x2b, 0xfd, 0x11, 0x67, 0xc1, }; static const unsigned char eddsa_wei25519_192_privkey[] = { 0xf4, 0x01, 0xce, 0xe4, 0xbf, 0xb1, 0x73, 0x2f, 0x0e, 0x9b, 0x8d, 0x8b, 0xa7, 0x94, 0x69, 0x56, 0x5c, 0x31, 0x15, 0x29, 0x61, 0x41, 0xdb, 0xdf, 0x7e, 0x9c, 0x31, 0x1a, 0x0a, 0xc1, 0x82, 0x3b, }; static const unsigned char eddsa_wei25519_192_msg[] = { 0x97, 0x5e, 0xf9, 0x41, 0x71, 0x00, 0x71, 0xa9, 0xe1, 0xe6, 0x32, 0x5a, 0x0c, 0x86, 0x0b, 0xec, 0xd7, 0xc6, 0x95, 0xb5, 0x11, 0x7c, 0x31, 0x07, 0xb6, 0x86, 0xe3, 0x30, 0xe5, }; static const unsigned char eddsa_wei25519_192_sig[] = { 0xaf, 0x0f, 0xd9, 0xdd, 0xa7, 0xe0, 0x3e, 0x12, 0x31, 0x34, 0x10, 0xd8, 0xd8, 0x84, 0x4e, 0xbb, 0x6f, 0xe6, 0xb7, 0xf6, 0x51, 0x41, 0xf2, 0x2d, 0x7b, 0xcb, 0xa5, 0x69, 0x5a, 0x25, 0x41, 0x4a, 0x9e, 0x54, 0x32, 0x6f, 0xb4, 0x4d, 0x59, 0xfb, 0x14, 0x70, 0x78, 0x99, 0xa8, 0xaa, 0xe7, 0x08, 0x57, 0xb2, 0x3d, 0x40, 0x80, 0xd7, 0xab, 0x2c, 0x39, 0x6e, 0xf3, 0xa3, 0x6d, 0x45, 0xce, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_192 = { .name = "eddsa_wei25519_192", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_192_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_192_privkey, .privkeylen = 32, .msg = eddsa_wei25519_192_msg, .msglen = 29, .sig = eddsa_wei25519_192_sig, .siglen = 64, .result = 1, .comment = "Random test failure 16, tcId is 107 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 193 for EDDSA, tcId is 108 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_193_pubkey[] = { 0x22, 0x52, 0xb3, 0xd5, 0x7c, 0x74, 0xcb, 0xf8, 0xbc, 0x46, 0x0d, 0xc2, 0xe0, 0x82, 0x84, 0x79, 0x26, 0xbc, 0x02, 0x2f, 0x09, 0xab, 0x6a, 0xe9, 0x57, 0x56, 0x36, 0x2b, 0xfd, 0x11, 0x67, 0xc1, }; static const unsigned char eddsa_wei25519_193_privkey[] = { 0xf4, 0x01, 0xce, 0xe4, 0xbf, 0xb1, 0x73, 0x2f, 0x0e, 0x9b, 0x8d, 0x8b, 0xa7, 0x94, 0x69, 0x56, 0x5c, 0x31, 0x15, 0x29, 0x61, 0x41, 0xdb, 0xdf, 0x7e, 0x9c, 0x31, 0x1a, 0x0a, 0xc1, 0x82, 0x3b, }; static const unsigned char eddsa_wei25519_193_msg[] = { 0x80, 0xfd, 0xd6, 0x21, 0x8f, 0x29, 0xc8, 0xc8, 0xf6, 0xbd, 0x82, 0x09, 0x45, 0xf9, 0xb0, 0x85, 0x4e, 0x3a, 0x88, 0x24, }; static const unsigned char eddsa_wei25519_193_sig[] = { 0xe0, 0x97, 0xe0, 0xbd, 0x03, 0x70, 0xbf, 0xf5, 0xbd, 0xe3, 0x59, 0x17, 0x5a, 0x11, 0xb7, 0x28, 0xee, 0x96, 0x39, 0x09, 0x5d, 0x5d, 0xf8, 0xed, 0xa4, 0x96, 0x39, 0x55, 0x65, 0x61, 0x6e, 0xdf, 0xe0, 0x79, 0x97, 0x7f, 0x7d, 0x4d, 0xc8, 0xc7, 0x5d, 0x61, 0x13, 0xa8, 0x3d, 0x6a, 0x55, 0xe6, 0xe1, 0x67, 0x64, 0x08, 0xc0, 0x96, 0x7a, 0x29, 0x06, 0x33, 0x9b, 0x43, 0x33, 0x7d, 0xcb, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_193 = { .name = "eddsa_wei25519_193", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_193_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_193_privkey, .privkeylen = 32, .msg = eddsa_wei25519_193_msg, .msglen = 20, .sig = eddsa_wei25519_193_sig, .siglen = 64, .result = 1, .comment = "Random test failure 23, tcId is 108 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 194 for EDDSA, tcId is 109 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_194_pubkey[] = { 0xc0, 0xa7, 0x73, 0x11, 0x0f, 0x97, 0x5d, 0xe3, 0x73, 0x23, 0x55, 0xbb, 0x7e, 0xc7, 0xf0, 0xc4, 0x1c, 0x09, 0x1c, 0x02, 0x52, 0x96, 0x60, 0x70, 0x20, 0x55, 0x16, 0x69, 0x3b, 0x99, 0x2a, 0x4a, }; static const unsigned char eddsa_wei25519_194_privkey[] = { 0x3d, 0x65, 0x89, 0x56, 0x41, 0x03, 0x77, 0xd0, 0x64, 0x46, 0x76, 0xd2, 0x59, 0x95, 0x42, 0x41, 0x2a, 0x4f, 0x3b, 0x0e, 0x4e, 0xad, 0xfb, 0x7f, 0x3f, 0x83, 0x66, 0x15, 0xf4, 0x2b, 0x18, 0xbc, }; static const unsigned char eddsa_wei25519_194_sig[] = { 0x02, 0x80, 0x42, 0x7e, 0x71, 0x33, 0x78, 0xf4, 0x9d, 0x47, 0x8d, 0xf6, 0x37, 0x3c, 0x6c, 0xac, 0x84, 0x7b, 0x62, 0x2b, 0x56, 0x7d, 0xaa, 0x23, 0x76, 0xc8, 0x39, 0xe7, 0xac, 0x10, 0xe2, 0x2c, 0x38, 0x0a, 0xb0, 0xfa, 0x86, 0x17, 0xc9, 0xdc, 0xfe, 0x76, 0xc4, 0xd9, 0xdb, 0x54, 0x59, 0xb2, 0x1d, 0xc1, 0x41, 0x37, 0x26, 0xe4, 0x6c, 0xc8, 0xf3, 0x87, 0xd3, 0x59, 0xe3, 0x44, 0xf4, 0x07, }; static const wycheproof_eddsa_test eddsa_wei25519_194 = { .name = "eddsa_wei25519_194", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_194_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_194_privkey, .privkeylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .sig = eddsa_wei25519_194_sig, .siglen = 64, .result = 1, .comment = "Random test failure 17, tcId is 109 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 195 for EDDSA, tcId is 110 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_195_pubkey[] = { 0x54, 0xcd, 0xa6, 0x23, 0x24, 0x57, 0x59, 0xad, 0x6d, 0x43, 0xe6, 0x20, 0xa6, 0x06, 0x90, 0x8b, 0xef, 0xc6, 0x33, 0xd6, 0x07, 0x92, 0xbc, 0x77, 0x98, 0x44, 0x7a, 0x0e, 0xf3, 0x8e, 0x73, 0x11, }; static const unsigned char eddsa_wei25519_195_privkey[] = { 0xbc, 0xcb, 0x61, 0x32, 0x38, 0x40, 0xc2, 0xa9, 0x6f, 0xc3, 0x6f, 0x7e, 0x54, 0xea, 0x6c, 0x8e, 0x55, 0xf9, 0xd2, 0x21, 0xf7, 0xf0, 0x57, 0x91, 0xed, 0x60, 0x02, 0x5e, 0x06, 0x06, 0x44, 0x39, }; static const unsigned char eddsa_wei25519_195_msg[] = { 0x27, 0xe7, 0x92, 0xb2, 0x8b, 0x2f, 0x17, 0x02, }; static const unsigned char eddsa_wei25519_195_sig[] = { 0x14, 0xd9, 0xb4, 0x97, 0xc1, 0x9b, 0x91, 0xd4, 0x34, 0x81, 0xc5, 0x5b, 0xb6, 0xf5, 0x05, 0x6d, 0xe2, 0x52, 0xd9, 0xec, 0xb6, 0x37, 0x57, 0x5c, 0x80, 0x7e, 0x58, 0xe9, 0xb4, 0xc5, 0xea, 0xc8, 0xb2, 0x84, 0x08, 0x9d, 0x97, 0xe2, 0x19, 0x2d, 0xc2, 0x42, 0x01, 0x43, 0x63, 0x20, 0x8e, 0x2c, 0x9a, 0x34, 0x35, 0xed, 0xf8, 0x92, 0x8f, 0xb1, 0xd8, 0x93, 0x55, 0x3e, 0x9b, 0xe4, 0xc7, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_195 = { .name = "eddsa_wei25519_195", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_195_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_195_privkey, .privkeylen = 32, .msg = eddsa_wei25519_195_msg, .msglen = 8, .sig = eddsa_wei25519_195_sig, .siglen = 64, .result = 1, .comment = "Random test failure 26, tcId is 110 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 196 for EDDSA, tcId is 111 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_196_pubkey[] = { 0x23, 0x62, 0xba, 0xc5, 0x14, 0xd5, 0xfa, 0xd3, 0x38, 0x02, 0x64, 0x2e, 0x97, 0x9a, 0x1e, 0x82, 0xde, 0x6e, 0xb6, 0xf1, 0xbc, 0xbf, 0x6a, 0x5b, 0x30, 0x4f, 0x2b, 0xb0, 0x2b, 0x9e, 0x57, 0xfe, }; static const unsigned char eddsa_wei25519_196_privkey[] = { 0xf2, 0xd3, 0x02, 0x3b, 0x9c, 0x19, 0xe2, 0x41, 0x74, 0x8b, 0xc4, 0x03, 0x9a, 0x7a, 0x43, 0xc5, 0x95, 0x70, 0x1f, 0x23, 0x67, 0x55, 0x05, 0x01, 0x52, 0x13, 0xa8, 0xa2, 0xa0, 0x27, 0x4c, 0x1b, }; static const unsigned char eddsa_wei25519_196_msg[] = { 0xee, 0xf3, 0xbb, 0x0f, 0x61, 0x7c, 0x17, 0xd0, 0x42, 0x0c, 0x11, 0x5c, 0x21, 0xc2, 0x8e, 0x37, 0x62, 0xed, 0xc7, 0xb7, 0xfb, 0x04, 0x85, 0x29, 0xb8, 0x4a, 0x9c, 0x2b, 0xc6, }; static const unsigned char eddsa_wei25519_196_sig[] = { 0x24, 0x2d, 0xdb, 0x3a, 0x5d, 0x93, 0x8d, 0x07, 0xaf, 0x69, 0x0b, 0x1b, 0x0e, 0xf0, 0xfa, 0x75, 0x84, 0x2c, 0x5f, 0x95, 0x49, 0xbf, 0x39, 0xc8, 0x75, 0x0f, 0x75, 0x61, 0x4c, 0x71, 0x2e, 0x7c, 0xba, 0xf2, 0xe3, 0x7c, 0xc0, 0x79, 0x9d, 0xb3, 0x8b, 0x85, 0x8d, 0x41, 0xae, 0xc5, 0xb9, 0xdd, 0x2f, 0xca, 0x6a, 0x3c, 0x8e, 0x08, 0x2c, 0x10, 0x40, 0x8e, 0x2c, 0xf3, 0x93, 0x2b, 0x9d, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_196 = { .name = "eddsa_wei25519_196", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_196_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_196_privkey, .privkeylen = 32, .msg = eddsa_wei25519_196_msg, .msglen = 29, .sig = eddsa_wei25519_196_sig, .siglen = 64, .result = 1, .comment = "Random test failure 27, tcId is 111 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 197 for EDDSA, tcId is 112 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_197_pubkey[] = { 0x03, 0x7b, 0x55, 0xb4, 0x27, 0xdc, 0x8d, 0xaa, 0x0f, 0x80, 0xfc, 0xeb, 0xaf, 0x08, 0x46, 0x90, 0x23, 0x09, 0xf8, 0xa6, 0xcf, 0x18, 0xb4, 0x65, 0xc0, 0xce, 0x9b, 0x65, 0x39, 0x62, 0x9a, 0xc8, }; static const unsigned char eddsa_wei25519_197_privkey[] = { 0x12, 0xfc, 0x31, 0xc4, 0x0d, 0x5a, 0x7a, 0xf7, 0x1e, 0x05, 0x42, 0x46, 0x23, 0xba, 0x97, 0x0b, 0x67, 0x0c, 0xf6, 0xec, 0xb4, 0x4c, 0xda, 0x61, 0x20, 0x21, 0x0e, 0x63, 0x70, 0x24, 0x5d, 0xdb, }; static const unsigned char eddsa_wei25519_197_msg[] = { 0x01, 0x23, 0x45, 0x67, }; static const unsigned char eddsa_wei25519_197_sig[] = { 0xc9, 0x64, 0xe1, 0x00, 0x03, 0x3c, 0xe8, 0x88, 0x8b, 0x23, 0x46, 0x66, 0x77, 0xda, 0x4f, 0x4a, 0xea, 0x29, 0x92, 0x3f, 0x64, 0x2a, 0xe5, 0x08, 0xf9, 0xd0, 0x88, 0x8d, 0x78, 0x81, 0x50, 0x63, 0x6a, 0xb9, 0xb2, 0xc3, 0x76, 0x5e, 0x91, 0xbb, 0xb0, 0x51, 0x53, 0x80, 0x11, 0x14, 0xd9, 0xe5, 0x2d, 0xc7, 0x00, 0xdf, 0x37, 0x72, 0x12, 0x22, 0x2b, 0xb7, 0x66, 0xbe, 0x4b, 0x8c, 0x02, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_197 = { .name = "eddsa_wei25519_197", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_197_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_197_privkey, .privkeylen = 32, .msg = eddsa_wei25519_197_msg, .msglen = 4, .sig = eddsa_wei25519_197_sig, .siglen = 64, .result = 1, .comment = "Test case for overflow in signature generation, tcId is 112 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 198 for EDDSA, tcId is 113 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_198_pubkey[] = { 0x9c, 0x00, 0x07, 0x69, 0x8f, 0x17, 0x79, 0x98, 0xa7, 0x66, 0x6c, 0x7c, 0xf7, 0x97, 0x3e, 0x2b, 0x88, 0xe9, 0xc4, 0x94, 0x6e, 0x33, 0x80, 0x4a, 0x7b, 0xbe, 0x89, 0x68, 0xd2, 0x39, 0x4b, 0x2e, }; static const unsigned char eddsa_wei25519_198_privkey[] = { 0xe5, 0x4b, 0xcc, 0x4c, 0xe9, 0x5d, 0xb4, 0x80, 0x72, 0xc7, 0xb4, 0x95, 0x75, 0x61, 0x7d, 0xd1, 0xf9, 0x40, 0x3b, 0x07, 0x21, 0x05, 0x25, 0x9c, 0xa0, 0x6d, 0x8d, 0x01, 0x53, 0x0d, 0x07, 0xfb, }; static const unsigned char eddsa_wei25519_198_msg[] = { 0x93, 0x99, 0xa6, 0xdb, 0x94, 0x33, 0xd2, 0xa2, 0x8d, 0x2b, 0x0c, 0x11, 0xc8, 0x79, 0x4a, 0xb7, 0xd1, 0x08, 0xc9, 0x5b, }; static const unsigned char eddsa_wei25519_198_sig[] = { 0x17, 0x60, 0x65, 0xc6, 0xd6, 0x4a, 0x13, 0x6a, 0x22, 0x27, 0x68, 0x7d, 0x77, 0xf6, 0x1f, 0x3f, 0xca, 0x3b, 0x16, 0x12, 0x2c, 0x96, 0x62, 0x76, 0xfd, 0x9a, 0x8b, 0x14, 0xa1, 0xa2, 0xce, 0xa4, 0xc3, 0x3b, 0x35, 0x33, 0xd1, 0x11, 0x01, 0x71, 0x70, 0x16, 0x68, 0x4e, 0x38, 0x10, 0xef, 0xbe, 0xa6, 0x3b, 0xb2, 0x37, 0x73, 0xf7, 0xcc, 0x48, 0x01, 0x74, 0x19, 0x9a, 0xbd, 0x73, 0x4f, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_198 = { .name = "eddsa_wei25519_198", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_198_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_198_privkey, .privkeylen = 32, .msg = eddsa_wei25519_198_msg, .msglen = 20, .sig = eddsa_wei25519_198_sig, .siglen = 64, .result = 1, .comment = "Test case for overflow in signature generation, tcId is 113 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 199 for EDDSA, tcId is 114 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_199_pubkey[] = { 0xed, 0x3a, 0x6f, 0x97, 0x21, 0xdc, 0x97, 0x29, 0xc1, 0xf7, 0x66, 0x35, 0xbc, 0xf0, 0x80, 0xd7, 0x03, 0x6e, 0x1c, 0x2f, 0x02, 0x28, 0x65, 0x4c, 0xcb, 0xbe, 0x1e, 0x73, 0x8c, 0x17, 0xb9, 0x63, }; static const unsigned char eddsa_wei25519_199_privkey[] = { 0xde, 0x7f, 0x2b, 0xb1, 0x2b, 0x87, 0x5a, 0x79, 0xcc, 0xb0, 0x57, 0x34, 0x4b, 0x28, 0x67, 0xa2, 0xed, 0xb2, 0x5d, 0xbc, 0x1e, 0xcf, 0xc8, 0xcb, 0x07, 0xc6, 0x9e, 0x2d, 0xd3, 0xdf, 0x3e, 0x02, }; static const unsigned char eddsa_wei25519_199_msg[] = { 0x7a, 0xf7, 0x83, 0xaf, 0xbb, 0xd4, 0x4c, 0x18, 0x33, 0xab, 0x72, 0x37, 0xec, 0xaf, 0x63, 0xb9, 0x4f, 0xfd, 0xd0, 0x03, }; static const unsigned char eddsa_wei25519_199_sig[] = { 0x7c, 0xa6, 0x93, 0x31, 0xee, 0xc8, 0x61, 0x0d, 0x38, 0xf0, 0x0e, 0x2c, 0xdb, 0xd4, 0x69, 0x66, 0xcb, 0x35, 0x9d, 0xcd, 0xe9, 0x8a, 0x25, 0x7a, 0xc6, 0xf3, 0x62, 0xcc, 0x00, 0xc8, 0xf4, 0xfe, 0x85, 0xc0, 0x22, 0x85, 0xfe, 0x4d, 0x66, 0xe3, 0x1a, 0x44, 0xca, 0xdb, 0x2b, 0xf4, 0x74, 0xe1, 0xa7, 0x95, 0x76, 0x09, 0xeb, 0x4f, 0xe9, 0x5a, 0x71, 0x47, 0x3f, 0xe6, 0x69, 0x9a, 0xa7, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_199 = { .name = "eddsa_wei25519_199", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_199_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_199_privkey, .privkeylen = 32, .msg = eddsa_wei25519_199_msg, .msglen = 20, .sig = eddsa_wei25519_199_sig, .siglen = 64, .result = 1, .comment = "Test case for overflow in signature generation, tcId is 114 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 200 for EDDSA, tcId is 115 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_200_pubkey[] = { 0x4a, 0xbf, 0xb5, 0x35, 0x31, 0x37, 0x05, 0xa6, 0x57, 0x00, 0x18, 0x44, 0x0c, 0xde, 0xc1, 0xa3, 0xae, 0x33, 0xe5, 0x1f, 0x35, 0x21, 0x12, 0xfa, 0x6a, 0xcb, 0xd0, 0xc6, 0xbc, 0x3e, 0xa8, 0x59, }; static const unsigned char eddsa_wei25519_200_privkey[] = { 0xea, 0x79, 0x2b, 0x7a, 0x9d, 0x42, 0x0b, 0xf7, 0x4f, 0x6a, 0x82, 0xa7, 0x8e, 0x58, 0xa2, 0xcc, 0x94, 0xf3, 0xab, 0x3e, 0xb9, 0x31, 0x27, 0x06, 0x11, 0xb1, 0xf8, 0xda, 0x75, 0xc3, 0xd6, 0x0b, }; static const unsigned char eddsa_wei25519_200_msg[] = { 0x32, 0x1b, 0x5f, 0x66, 0x3c, 0x19, 0xe3, 0x0e, 0xe7, 0xbb, 0xb8, 0x5e, 0x48, 0xec, 0xf4, 0x4d, 0xb9, 0xd3, 0xf5, 0x12, }; static const unsigned char eddsa_wei25519_200_sig[] = { 0xf2, 0x96, 0x71, 0x5e, 0x85, 0x5d, 0x8a, 0xec, 0xcc, 0xba, 0x78, 0x2b, 0x67, 0x01, 0x63, 0xde, 0xdc, 0x44, 0x58, 0xfe, 0x4e, 0xb5, 0x09, 0xa8, 0x56, 0xbc, 0xac, 0x45, 0x09, 0x20, 0xfd, 0x2e, 0x95, 0xa3, 0xa3, 0xeb, 0x21, 0x2d, 0x2d, 0x9c, 0xca, 0xf9, 0x48, 0xc3, 0x9a, 0xe4, 0x6a, 0x25, 0x48, 0xaf, 0x12, 0x5f, 0x8e, 0x2a, 0xd9, 0xb7, 0x7b, 0xd1, 0x8f, 0x92, 0xd5, 0x9f, 0x92, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_200 = { .name = "eddsa_wei25519_200", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_200_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_200_privkey, .privkeylen = 32, .msg = eddsa_wei25519_200_msg, .msglen = 20, .sig = eddsa_wei25519_200_sig, .siglen = 64, .result = 1, .comment = "Test case for overflow in signature generation, tcId is 115 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 201 for EDDSA, tcId is 116 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_201_pubkey[] = { 0x4f, 0x21, 0x62, 0xe6, 0xbf, 0x03, 0xa7, 0x12, 0xdb, 0x0e, 0xfa, 0x41, 0x8b, 0x7e, 0x70, 0x06, 0xe2, 0x38, 0x71, 0xd9, 0xd7, 0xec, 0x55, 0x5a, 0x31, 0x38, 0x85, 0xc4, 0xaf, 0xd9, 0x63, 0x85, }; static const unsigned char eddsa_wei25519_201_privkey[] = { 0xec, 0xa2, 0x86, 0x45, 0xf6, 0x36, 0x46, 0x57, 0x5e, 0xe2, 0xe4, 0xbd, 0xb3, 0x6f, 0x51, 0x83, 0x81, 0x42, 0xce, 0x24, 0x74, 0x66, 0x4c, 0x2b, 0x66, 0xef, 0x05, 0x4b, 0x37, 0xaf, 0x61, 0x24, }; static const unsigned char eddsa_wei25519_201_msg[] = { 0xc4, 0x88, 0x90, 0xe9, 0x2a, 0xee, 0xb3, 0xaf, 0x04, 0x85, 0x8a, 0x8d, 0xc1, 0xd3, 0x4f, 0x16, 0xa4, 0x34, 0x7b, 0x91, }; static const unsigned char eddsa_wei25519_201_sig[] = { 0x36, 0x7d, 0x07, 0x25, 0x3a, 0x9d, 0x5a, 0x77, 0xd0, 0x54, 0xb9, 0xc1, 0xa8, 0x2d, 0x3c, 0x0a, 0x44, 0x8a, 0x51, 0x90, 0x53, 0x43, 0x32, 0x0b, 0x35, 0x59, 0x32, 0x5e, 0xf4, 0x18, 0x39, 0x60, 0x8a, 0xa4, 0x55, 0x64, 0x97, 0x8d, 0xa1, 0xb2, 0x96, 0x8c, 0x55, 0x6c, 0xfb, 0x23, 0xb0, 0xc9, 0x8a, 0x9b, 0xe8, 0x3e, 0x59, 0x4d, 0x5e, 0x76, 0x9d, 0x69, 0xd1, 0x15, 0x6e, 0x1b, 0x15, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_201 = { .name = "eddsa_wei25519_201", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_201_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_201_privkey, .privkeylen = 32, .msg = eddsa_wei25519_201_msg, .msglen = 20, .sig = eddsa_wei25519_201_sig, .siglen = 64, .result = 1, .comment = "Test case for overflow in signature generation, tcId is 116 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 202 for EDDSA, tcId is 117 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_202_pubkey[] = { 0x07, 0x17, 0xd7, 0x5c, 0xe2, 0x7e, 0xa1, 0x81, 0xed, 0x5a, 0x30, 0xe6, 0x45, 0x6c, 0x64, 0x9b, 0x5c, 0xf4, 0x53, 0xa6, 0xb4, 0xc1, 0x2c, 0xd3, 0xf9, 0xfd, 0x16, 0xb3, 0x1e, 0x0c, 0x25, 0xcd, }; static const unsigned char eddsa_wei25519_202_privkey[] = { 0x72, 0x82, 0x38, 0x60, 0x2b, 0x7e, 0x67, 0x53, 0xb3, 0xf4, 0x9e, 0xb0, 0xfc, 0x4c, 0xde, 0x38, 0xc7, 0xbb, 0x14, 0xab, 0x58, 0xdd, 0xca, 0xef, 0x25, 0x37, 0x27, 0x5b, 0x13, 0xe9, 0x9d, 0xd3, }; static const unsigned char eddsa_wei25519_202_msg[] = { 0x26, 0xd5, 0xf0, 0x63, 0x1f, 0x49, 0x10, 0x6d, 0xb5, 0x8c, 0x4c, 0xfc, 0x90, 0x36, 0x91, 0x13, 0x48, 0x11, 0xb3, 0x3c, }; static const unsigned char eddsa_wei25519_202_sig[] = { 0x95, 0x88, 0xe0, 0x2b, 0xc8, 0x15, 0x64, 0x9d, 0x35, 0x9c, 0xe7, 0x10, 0xcd, 0xc6, 0x98, 0x14, 0x55, 0x6d, 0xd8, 0xc8, 0xba, 0xb1, 0xc4, 0x68, 0xf4, 0x0a, 0x49, 0xeb, 0xef, 0xb7, 0xf0, 0xde, 0x7e, 0xd4, 0x97, 0x25, 0xed, 0xfd, 0x1b, 0x70, 0x8f, 0xa1, 0xba, 0xd2, 0x77, 0xc3, 0x5d, 0x6c, 0x1b, 0x9c, 0x5e, 0xc2, 0x59, 0x90, 0x99, 0x76, 0x45, 0x78, 0x0f, 0x92, 0x03, 0xd7, 0xdd, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_202 = { .name = "eddsa_wei25519_202", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_202_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_202_privkey, .privkeylen = 32, .msg = eddsa_wei25519_202_msg, .msglen = 20, .sig = eddsa_wei25519_202_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 117 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 203 for EDDSA, tcId is 118 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_203_pubkey[] = { 0xdb, 0x5b, 0x9e, 0xab, 0x7e, 0x84, 0xe5, 0xa1, 0x35, 0x05, 0x86, 0x5f, 0xa7, 0x11, 0xc9, 0xc8, 0x96, 0xc8, 0x98, 0x60, 0x9f, 0xc1, 0x1f, 0xc9, 0xbc, 0x1e, 0x55, 0x02, 0x8f, 0x94, 0x96, 0xdf, }; static const unsigned char eddsa_wei25519_203_privkey[] = { 0xdc, 0x40, 0x92, 0xd7, 0x80, 0x9c, 0x6b, 0x07, 0x0f, 0x28, 0x08, 0xc4, 0x34, 0x26, 0x7b, 0x66, 0x97, 0x42, 0x8f, 0x4a, 0xb1, 0xe4, 0x62, 0x6a, 0xb5, 0x6a, 0x30, 0x59, 0x64, 0x3b, 0xe4, 0x3c, }; static const unsigned char eddsa_wei25519_203_msg[] = { 0x2a, 0x71, 0xf0, 0x64, 0xaf, 0x98, 0x2a, 0x3a, 0x11, 0x03, 0xa7, 0x5c, 0xef, 0x89, 0x87, 0x32, 0xd7, 0x88, 0x19, 0x81, }; static const unsigned char eddsa_wei25519_203_sig[] = { 0x22, 0x17, 0xa0, 0xbe, 0x57, 0xdd, 0x0d, 0x6c, 0x00, 0x90, 0x64, 0x14, 0x96, 0xbc, 0xb6, 0x5e, 0x37, 0x21, 0x3f, 0x02, 0xa0, 0xdf, 0x50, 0xaf, 0xf0, 0x36, 0x8e, 0xe2, 0x80, 0x8e, 0x13, 0x76, 0x50, 0x4f, 0x37, 0xb3, 0x74, 0x94, 0x13, 0x2d, 0xfc, 0x4d, 0x48, 0x87, 0xf5, 0x8b, 0x9e, 0x86, 0xef, 0xf9, 0x24, 0x04, 0x0d, 0xb3, 0x92, 0x5e, 0xe4, 0xf8, 0xe1, 0x42, 0x8c, 0x4c, 0x50, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_203 = { .name = "eddsa_wei25519_203", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_203_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_203_privkey, .privkeylen = 32, .msg = eddsa_wei25519_203_msg, .msglen = 20, .sig = eddsa_wei25519_203_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 118 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 204 for EDDSA, tcId is 119 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_204_pubkey[] = { 0x7b, 0xac, 0x18, 0xf6, 0xd2, 0x62, 0x5d, 0x39, 0x15, 0xf2, 0x33, 0x43, 0x4c, 0xda, 0x38, 0xa5, 0x77, 0x24, 0x7a, 0x73, 0x32, 0xa5, 0x17, 0x0b, 0x37, 0x14, 0x2a, 0x34, 0x64, 0x41, 0x45, 0xe0, }; static const unsigned char eddsa_wei25519_204_privkey[] = { 0x38, 0x76, 0x5b, 0x89, 0xec, 0x56, 0x83, 0x6e, 0xa4, 0x19, 0x0f, 0xc9, 0x57, 0x80, 0x2b, 0x6a, 0x47, 0x16, 0x7f, 0x9b, 0x5e, 0xf9, 0x42, 0xe9, 0x26, 0x52, 0x80, 0x3b, 0x7d, 0xe6, 0xab, 0xfd, }; static const unsigned char eddsa_wei25519_204_msg[] = { 0xbf, 0x26, 0x79, 0x6c, 0xef, 0x4d, 0xda, 0xfc, 0xf5, 0x03, 0x3c, 0x8d, 0x10, 0x50, 0x57, 0xdb, 0x02, 0x10, 0xb6, 0xad, }; static const unsigned char eddsa_wei25519_204_sig[] = { 0x1f, 0xda, 0x6d, 0xd4, 0x51, 0x9f, 0xdb, 0xef, 0xb5, 0x15, 0xbf, 0xa3, 0x9e, 0x8e, 0x59, 0x11, 0xf4, 0xa0, 0xa8, 0xaa, 0x65, 0xf4, 0x0e, 0xf0, 0xc5, 0x42, 0xb8, 0xb3, 0x4b, 0x87, 0xf9, 0xc2, 0x49, 0xdc, 0x57, 0xf3, 0x20, 0x71, 0x8f, 0xf4, 0x57, 0xed, 0x59, 0x15, 0xc4, 0xd0, 0xfc, 0x35, 0x2a, 0xff, 0xc1, 0x28, 0x77, 0x24, 0xd3, 0xf3, 0xa9, 0xde, 0x1f, 0xf7, 0x77, 0xa0, 0x2e, 0x01, }; static const wycheproof_eddsa_test eddsa_wei25519_204 = { .name = "eddsa_wei25519_204", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_204_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_204_privkey, .privkeylen = 32, .msg = eddsa_wei25519_204_msg, .msglen = 20, .sig = eddsa_wei25519_204_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 119 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 205 for EDDSA, tcId is 120 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_205_pubkey[] = { 0x38, 0xea, 0xd3, 0x04, 0x62, 0x4a, 0xbe, 0xbf, 0x3e, 0x2b, 0x31, 0xe2, 0x0e, 0x56, 0x29, 0x53, 0x1e, 0x3f, 0xc6, 0x59, 0x00, 0x88, 0x87, 0xc9, 0x10, 0x6f, 0x5e, 0x55, 0xad, 0xbb, 0xc6, 0x2a, }; static const unsigned char eddsa_wei25519_205_privkey[] = { 0x97, 0x57, 0x53, 0x08, 0xa4, 0x90, 0xaf, 0x0c, 0x14, 0x54, 0x11, 0xdd, 0x16, 0xd5, 0x19, 0xa0, 0x73, 0xef, 0x03, 0xc2, 0xe4, 0xa0, 0xa1, 0xcd, 0x6b, 0x5d, 0xe2, 0xe8, 0x81, 0xe5, 0xea, 0xbe, }; static const unsigned char eddsa_wei25519_205_msg[] = { 0xae, 0x03, 0xda, 0x69, 0x97, 0xe4, 0x0c, 0xea, 0x67, 0x93, 0x50, 0x20, 0x15, 0x2d, 0x3a, 0x9a, 0x36, 0x5c, 0xc0, 0x55, }; static const unsigned char eddsa_wei25519_205_sig[] = { 0x06, 0x8e, 0xaf, 0xdc, 0x2f, 0x36, 0xb9, 0x7f, 0x9b, 0xae, 0x7f, 0xbd, 0xa8, 0x8b, 0x53, 0x0d, 0x16, 0xb0, 0xe3, 0x50, 0x54, 0xd3, 0xa3, 0x51, 0xe3, 0xa4, 0xc9, 0x14, 0xb2, 0x28, 0x54, 0xc7, 0x11, 0x50, 0x5e, 0x49, 0x68, 0x2e, 0x1a, 0x44, 0x7e, 0x10, 0xa6, 0x9e, 0x3b, 0x04, 0xd0, 0x75, 0x9c, 0x85, 0x98, 0x97, 0xb6, 0x4f, 0x71, 0x13, 0x7a, 0xcf, 0x35, 0x5b, 0x63, 0xfa, 0xf1, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_205 = { .name = "eddsa_wei25519_205", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_205_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_205_privkey, .privkeylen = 32, .msg = eddsa_wei25519_205_msg, .msglen = 20, .sig = eddsa_wei25519_205_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 120 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 206 for EDDSA, tcId is 121 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_206_pubkey[] = { 0xe9, 0xbc, 0x95, 0x04, 0x9a, 0xf7, 0xe4, 0x81, 0x7b, 0x17, 0xc4, 0x02, 0x26, 0x9b, 0xa5, 0xe7, 0x67, 0xb7, 0x34, 0x87, 0x57, 0xac, 0x80, 0x02, 0xfe, 0xc9, 0xe0, 0x83, 0x90, 0xc0, 0xa9, 0xcf, }; static const unsigned char eddsa_wei25519_206_privkey[] = { 0xad, 0x12, 0x9e, 0x89, 0xe0, 0xee, 0xc9, 0x08, 0xdf, 0x51, 0xad, 0xc2, 0x27, 0xc8, 0xc4, 0x90, 0x8a, 0x80, 0x95, 0xd7, 0x56, 0x21, 0x53, 0x6c, 0x8a, 0x28, 0xdc, 0xa4, 0xb3, 0xc3, 0x0d, 0xbb, }; static const unsigned char eddsa_wei25519_206_msg[] = { 0x48, 0x9d, 0x47, 0x3f, 0x7f, 0xb8, 0x3c, 0x7f, 0x68, 0x23, 0xba, 0xf6, 0x54, 0x82, 0x51, 0x7b, 0xcc, 0xd8, 0xf4, 0xea, }; static const unsigned char eddsa_wei25519_206_sig[] = { 0x43, 0x67, 0x0a, 0xbc, 0x9f, 0x09, 0xa8, 0xa4, 0x15, 0xe7, 0x6f, 0x4a, 0x21, 0xc6, 0xa4, 0x61, 0x56, 0xf0, 0x66, 0xb5, 0xa3, 0x7b, 0x3c, 0x1e, 0x86, 0x7c, 0xf6, 0x72, 0x48, 0xc7, 0xb9, 0x27, 0xe8, 0xd1, 0x3a, 0x76, 0x3e, 0x37, 0xab, 0xf9, 0x36, 0xf5, 0xf2, 0x7f, 0x7a, 0x8a, 0xa2, 0x90, 0x53, 0x9d, 0x21, 0xf7, 0x40, 0xef, 0xd2, 0x6b, 0x65, 0xfd, 0x5a, 0xd2, 0x70, 0x85, 0xf4, 0x00, }; static const wycheproof_eddsa_test eddsa_wei25519_206 = { .name = "eddsa_wei25519_206", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_206_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_206_privkey, .privkeylen = 32, .msg = eddsa_wei25519_206_msg, .msglen = 20, .sig = eddsa_wei25519_206_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 121 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 207 for EDDSA, tcId is 122 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_207_pubkey[] = { 0xee, 0x81, 0x55, 0xca, 0x4e, 0x8f, 0xe7, 0xbc, 0x5b, 0xca, 0x59, 0x92, 0x04, 0x4e, 0xab, 0x7f, 0x8c, 0x3c, 0x6a, 0x13, 0xdb, 0x11, 0x76, 0xf4, 0x2f, 0x46, 0xc2, 0x9d, 0xa5, 0xb0, 0x64, 0xf4, }; static const unsigned char eddsa_wei25519_207_privkey[] = { 0x03, 0xce, 0x64, 0x3d, 0x6d, 0x34, 0x1b, 0x70, 0x65, 0xbc, 0x9e, 0x70, 0xda, 0x81, 0x93, 0x45, 0x1c, 0xf8, 0x3c, 0xa7, 0xff, 0x5a, 0x86, 0x40, 0xfd, 0x07, 0xaf, 0x09, 0x46, 0x40, 0x36, 0x5a, }; static const unsigned char eddsa_wei25519_207_msg[] = { 0x1b, 0x70, 0x4d, 0x66, 0x92, 0xd6, 0x0a, 0x07, 0xad, 0x1e, 0x1d, 0x04, 0x7b, 0x65, 0xe1, 0x05, 0xa8, 0x0d, 0x34, 0x59, }; static const unsigned char eddsa_wei25519_207_sig[] = { 0x56, 0x38, 0x8f, 0x22, 0x28, 0x89, 0x3b, 0x14, 0xce, 0x4f, 0x2a, 0x5e, 0x0c, 0xc6, 0x26, 0x59, 0x10, 0x61, 0xde, 0x3a, 0x57, 0xc5, 0x0a, 0x5e, 0xca, 0xb7, 0xb9, 0xd5, 0xbb, 0x2c, 0xae, 0xea, 0x19, 0x15, 0x60, 0xa1, 0xcf, 0x23, 0x44, 0xc7, 0x5f, 0xdb, 0x4a, 0x08, 0x54, 0x44, 0xaa, 0x68, 0xd7, 0x27, 0xb3, 0x9f, 0x49, 0x81, 0x69, 0xea, 0xa8, 0x2c, 0xf6, 0x4a, 0x31, 0xf5, 0x98, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_207 = { .name = "eddsa_wei25519_207", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_207_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_207_privkey, .privkeylen = 32, .msg = eddsa_wei25519_207_msg, .msglen = 20, .sig = eddsa_wei25519_207_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 122 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 208 for EDDSA, tcId is 123 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_208_pubkey[] = { 0xdb, 0x50, 0x7b, 0xfc, 0xc9, 0x57, 0x63, 0x93, 0xf7, 0x15, 0x7b, 0xb3, 0x60, 0x53, 0x2b, 0x05, 0xc5, 0xfc, 0xf2, 0xe7, 0x64, 0xb6, 0x90, 0xcc, 0x66, 0x98, 0xa4, 0xa3, 0x0d, 0x34, 0x90, 0x95, }; static const unsigned char eddsa_wei25519_208_privkey[] = { 0x58, 0x1f, 0x59, 0x3a, 0x5c, 0xd9, 0x45, 0x94, 0xdc, 0x0f, 0x5d, 0xd1, 0x42, 0x02, 0x6a, 0x43, 0x6a, 0x93, 0x0e, 0x57, 0x33, 0x91, 0xb7, 0xae, 0xea, 0x6a, 0x82, 0x53, 0xee, 0xef, 0x6c, 0xeb, }; static const unsigned char eddsa_wei25519_208_msg[] = { 0xdc, 0x87, 0x03, 0x08, 0x62, 0xc4, 0xc3, 0x2f, 0x56, 0x26, 0x1e, 0x93, 0xa3, 0x67, 0xca, 0xf4, 0x58, 0xc6, 0xbe, 0x27, }; static const unsigned char eddsa_wei25519_208_sig[] = { 0x55, 0x3e, 0x58, 0x45, 0xfc, 0x48, 0x0a, 0x57, 0x7d, 0xa6, 0x54, 0x4e, 0x60, 0x2c, 0xaa, 0xda, 0xa0, 0x0a, 0xe3, 0xe5, 0xaa, 0x3d, 0xce, 0x9e, 0xf3, 0x32, 0xb1, 0x54, 0x1b, 0x6d, 0x5f, 0x21, 0xbd, 0xf1, 0xd0, 0x1e, 0x98, 0xba, 0xf8, 0x0b, 0x84, 0x35, 0xf9, 0x93, 0x2f, 0x89, 0xb3, 0xeb, 0x70, 0xf0, 0x2d, 0xa2, 0x47, 0x87, 0xaa, 0xc8, 0xe7, 0x72, 0x79, 0xe7, 0x97, 0xd0, 0xbd, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_208 = { .name = "eddsa_wei25519_208", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_208_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_208_privkey, .privkeylen = 32, .msg = eddsa_wei25519_208_msg, .msglen = 20, .sig = eddsa_wei25519_208_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 123 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 209 for EDDSA, tcId is 124 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_209_pubkey[] = { 0x99, 0x4e, 0xaf, 0x03, 0x30, 0x9d, 0x6a, 0xd9, 0xd9, 0x5a, 0x65, 0x6b, 0xc1, 0x74, 0x4e, 0x28, 0x86, 0xf0, 0x29, 0x02, 0x3a, 0x37, 0x50, 0xb3, 0x4f, 0x35, 0x08, 0x6b, 0x3c, 0x72, 0x27, 0xf8, }; static const unsigned char eddsa_wei25519_209_privkey[] = { 0x6f, 0x20, 0x7d, 0xc9, 0x4b, 0x84, 0x4d, 0x4d, 0xc7, 0x1f, 0x98, 0x2d, 0xa8, 0xd9, 0xf3, 0xae, 0x0b, 0x37, 0xb4, 0x62, 0x3e, 0x44, 0x1e, 0xca, 0x75, 0xba, 0x62, 0x62, 0x1c, 0x52, 0x4d, 0x98, }; static const unsigned char eddsa_wei25519_209_msg[] = { 0x7f, 0x41, 0xef, 0x68, 0x50, 0x83, 0x43, 0xef, 0x18, 0x81, 0x3c, 0xb2, 0xfb, 0x33, 0x24, 0x45, 0xec, 0x64, 0x80, 0xcd, }; static const unsigned char eddsa_wei25519_209_sig[] = { 0xbc, 0x10, 0xf8, 0x80, 0x81, 0xb7, 0xbe, 0x1f, 0x25, 0x05, 0xb6, 0xe7, 0x6c, 0x5c, 0x82, 0xe3, 0x58, 0xcf, 0x21, 0xec, 0x11, 0xb7, 0xdf, 0x1f, 0x33, 0x4f, 0xb5, 0x87, 0xba, 0xda, 0x46, 0x5b, 0x53, 0xd9, 0xf7, 0xb4, 0xd4, 0xfe, 0xc9, 0x64, 0x43, 0x2e, 0xe9, 0x1e, 0xad, 0x1b, 0xc3, 0x2e, 0xd3, 0xc8, 0x2f, 0x21, 0x67, 0xda, 0x1c, 0x83, 0x4a, 0x37, 0x51, 0x5d, 0xf7, 0xfe, 0x13, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_209 = { .name = "eddsa_wei25519_209", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_209_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_209_privkey, .privkeylen = 32, .msg = eddsa_wei25519_209_msg, .msglen = 20, .sig = eddsa_wei25519_209_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 124 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 210 for EDDSA, tcId is 125 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_210_pubkey[] = { 0x12, 0x7d, 0x37, 0xe4, 0x06, 0xe0, 0xd8, 0x3e, 0x4b, 0x55, 0xa0, 0x9e, 0x21, 0xe8, 0xf5, 0x0f, 0xb8, 0x8a, 0xf4, 0x7e, 0x4a, 0x43, 0xf0, 0x18, 0xcd, 0xeb, 0xff, 0xc1, 0x94, 0x87, 0x57, 0xf0, }; static const unsigned char eddsa_wei25519_210_privkey[] = { 0xde, 0xa9, 0xbb, 0xb9, 0xfb, 0x20, 0x51, 0x2f, 0xa6, 0x7e, 0xea, 0x69, 0x6a, 0xfd, 0x78, 0x6f, 0x39, 0x28, 0x26, 0x5f, 0x52, 0x08, 0xae, 0xab, 0xa6, 0x38, 0xf3, 0x17, 0x7d, 0x0d, 0xb7, 0x0e, }; static const unsigned char eddsa_wei25519_210_msg[] = { 0xe1, 0xce, 0x10, 0x79, 0x71, 0x53, 0x4b, 0xc4, 0x6a, 0x42, 0xac, 0x60, 0x9a, 0x1a, 0x37, 0xb4, 0xca, 0x65, 0x79, 0x1d, }; static const unsigned char eddsa_wei25519_210_sig[] = { 0x00, 0xc1, 0x1e, 0x76, 0xb5, 0x86, 0x6b, 0x7c, 0x37, 0x52, 0x8b, 0x06, 0x70, 0x18, 0x8c, 0x1a, 0x04, 0x73, 0xfb, 0x93, 0xc3, 0x3b, 0x72, 0xae, 0x60, 0x4a, 0x88, 0x65, 0xa7, 0xd6, 0xe0, 0x94, 0xff, 0x72, 0x2e, 0x8e, 0xde, 0x3c, 0xb1, 0x83, 0x89, 0x68, 0x5f, 0xf3, 0xc4, 0x08, 0x6c, 0x29, 0x00, 0x60, 0x47, 0x46, 0x6f, 0x81, 0xe7, 0x1a, 0x32, 0x97, 0x11, 0xe0, 0xb9, 0x29, 0x47, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_210 = { .name = "eddsa_wei25519_210", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_210_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_210_privkey, .privkeylen = 32, .msg = eddsa_wei25519_210_msg, .msglen = 20, .sig = eddsa_wei25519_210_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 125 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 211 for EDDSA, tcId is 126 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_211_pubkey[] = { 0xd8, 0x3b, 0xa8, 0x4e, 0xdf, 0xb4, 0xbe, 0xc4, 0x9f, 0x29, 0xbe, 0x31, 0xd8, 0x0a, 0x64, 0xb7, 0xc0, 0xb5, 0xa5, 0x02, 0x43, 0x8c, 0xdb, 0x1d, 0x0d, 0xd1, 0xe0, 0xe3, 0xe5, 0x57, 0x86, 0xde, }; static const unsigned char eddsa_wei25519_211_privkey[] = { 0xc9, 0x9c, 0x52, 0xae, 0x1e, 0x61, 0xf7, 0xc7, 0x9a, 0x16, 0x4e, 0xe4, 0x91, 0x0f, 0xdc, 0xaa, 0x02, 0x94, 0x62, 0x59, 0xea, 0x54, 0x43, 0xf6, 0x8b, 0x23, 0xd7, 0x21, 0xd0, 0x47, 0x2f, 0x63, }; static const unsigned char eddsa_wei25519_211_msg[] = { 0x86, 0x9a, 0x82, 0x73, 0x97, 0xc5, 0x85, 0xcf, 0x35, 0xac, 0xf8, 0x8a, 0x87, 0x28, 0x83, 0x3a, 0xb1, 0xc8, 0xc8, 0x1e, }; static const unsigned char eddsa_wei25519_211_sig[] = { 0x0a, 0x6f, 0x0a, 0xc4, 0x7e, 0xa1, 0x36, 0xcb, 0x3f, 0xf0, 0x0f, 0x7a, 0x96, 0x63, 0x8e, 0x49, 0x84, 0x04, 0x89, 0x99, 0xee, 0x2d, 0xa0, 0xaf, 0x6e, 0x5c, 0x86, 0xbf, 0xfb, 0x0e, 0x70, 0xbb, 0x97, 0x40, 0x6b, 0x6a, 0xd5, 0xa4, 0xb7, 0x64, 0xf7, 0xc9, 0x9e, 0xbb, 0x6e, 0xc0, 0xfd, 0x43, 0x4b, 0x8e, 0xfe, 0x25, 0x3b, 0x04, 0x23, 0xef, 0x87, 0x6c, 0x03, 0x79, 0x98, 0xe8, 0xab, 0x07, }; static const wycheproof_eddsa_test eddsa_wei25519_211 = { .name = "eddsa_wei25519_211", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_211_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_211_privkey, .privkeylen = 32, .msg = eddsa_wei25519_211_msg, .msglen = 20, .sig = eddsa_wei25519_211_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 126 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 212 for EDDSA, tcId is 127 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_212_pubkey[] = { 0xd3, 0xc9, 0xaa, 0x2f, 0x3d, 0x6e, 0xf2, 0x17, 0xa1, 0x66, 0xe8, 0xae, 0x40, 0x3e, 0xd4, 0x36, 0xc3, 0x7f, 0xac, 0xbb, 0xe3, 0xbe, 0xce, 0xb7, 0x8d, 0xf6, 0xeb, 0x43, 0x9f, 0x8f, 0xa0, 0x4a, }; static const unsigned char eddsa_wei25519_212_privkey[] = { 0xd8, 0xaa, 0xad, 0x07, 0x49, 0xdb, 0x15, 0x95, 0x69, 0xa6, 0x8b, 0x46, 0x04, 0x8b, 0x3d, 0x3e, 0x82, 0x66, 0xe1, 0x10, 0x15, 0x02, 0x51, 0xc4, 0x28, 0x06, 0xf0, 0x75, 0x2a, 0x84, 0xe9, 0x5b, }; static const unsigned char eddsa_wei25519_212_msg[] = { 0x61, 0x9d, 0x8c, 0x4f, 0x2c, 0x93, 0x10, 0x4b, 0xe0, 0x1c, 0xd5, 0x74, 0xa3, 0x85, 0xce, 0xca, 0x08, 0xc3, 0x3a, 0x9e, }; static const unsigned char eddsa_wei25519_212_sig[] = { 0xb7, 0xcb, 0xb9, 0x42, 0xa6, 0x66, 0x1e, 0x23, 0x12, 0xf7, 0x95, 0x48, 0x22, 0x4f, 0x3e, 0x44, 0xf5, 0x84, 0x1c, 0x6e, 0x88, 0x0c, 0x68, 0x34, 0x07, 0x56, 0xa0, 0x0c, 0xe9, 0x4a, 0x91, 0x4e, 0x84, 0x04, 0x85, 0x82, 0x65, 0x98, 0x5e, 0x6b, 0xb9, 0x7e, 0xf0, 0x1d, 0x2d, 0x7e, 0x5e, 0x41, 0x34, 0x03, 0x09, 0x60, 0x6b, 0xfc, 0x43, 0xc8, 0xc6, 0xa8, 0xf9, 0x25, 0x12, 0x6b, 0x3d, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_212 = { .name = "eddsa_wei25519_212", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_212_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_212_privkey, .privkeylen = 32, .msg = eddsa_wei25519_212_msg, .msglen = 20, .sig = eddsa_wei25519_212_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 127 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 213 for EDDSA, tcId is 128 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_213_pubkey[] = { 0xd5, 0x32, 0x80, 0x36, 0x7c, 0x1c, 0x0b, 0x95, 0xac, 0x41, 0x12, 0x21, 0x8b, 0x92, 0xc6, 0xa7, 0x1c, 0x51, 0xfb, 0x63, 0x12, 0xce, 0x66, 0x8d, 0xe1, 0x96, 0xc7, 0xd5, 0x2a, 0x13, 0x61, 0x55, }; static const unsigned char eddsa_wei25519_213_privkey[] = { 0xe7, 0x8d, 0x26, 0xab, 0x5b, 0x72, 0x6c, 0x9d, 0x4d, 0xfb, 0x1f, 0x63, 0x40, 0x82, 0xab, 0xde, 0xd9, 0x04, 0x32, 0xa2, 0xfd, 0x18, 0x08, 0x9c, 0x7c, 0x85, 0x25, 0x3a, 0x5d, 0x2f, 0xc7, 0xd0, }; static const unsigned char eddsa_wei25519_213_msg[] = { 0x52, 0x57, 0xa0, 0xba, 0xe8, 0x32, 0x6d, 0x25, 0x9a, 0x6c, 0xe9, 0x74, 0x20, 0xc6, 0x5e, 0x6c, 0x27, 0x94, 0xaf, 0xe2, }; static const unsigned char eddsa_wei25519_213_sig[] = { 0x27, 0xa4, 0xf2, 0x40, 0x09, 0xe5, 0x79, 0x17, 0x3f, 0xf3, 0x06, 0x4a, 0x6e, 0xff, 0x2a, 0x4d, 0x20, 0x22, 0x4f, 0x8f, 0x85, 0xfd, 0xec, 0x98, 0x2a, 0x9c, 0xf2, 0xe6, 0xa3, 0xb5, 0x15, 0x37, 0x34, 0x8a, 0x1d, 0x78, 0x51, 0xa3, 0xa9, 0x32, 0x12, 0x8a, 0x92, 0x3a, 0x39, 0x3e, 0xa8, 0x4e, 0x6b, 0x35, 0xeb, 0x34, 0x73, 0xc3, 0x2d, 0xce, 0xb9, 0xd7, 0xe9, 0xca, 0xb0, 0x3a, 0x0f, 0x0d, }; static const wycheproof_eddsa_test eddsa_wei25519_213 = { .name = "eddsa_wei25519_213", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_213_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_213_privkey, .privkeylen = 32, .msg = eddsa_wei25519_213_msg, .msglen = 20, .sig = eddsa_wei25519_213_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 128 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 214 for EDDSA, tcId is 129 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_214_pubkey[] = { 0x94, 0xac, 0x23, 0x36, 0xba, 0x97, 0xa4, 0x76, 0xfb, 0x4c, 0x9f, 0x2b, 0x55, 0x63, 0xe4, 0x16, 0x7c, 0xa2, 0x92, 0xc6, 0xe9, 0x9e, 0x42, 0x23, 0x50, 0xa9, 0x11, 0xae, 0x31, 0x72, 0xc3, 0x15, }; static const unsigned char eddsa_wei25519_214_privkey[] = { 0x8e, 0x7c, 0xa5, 0x6e, 0x07, 0xf1, 0x43, 0x8a, 0xc3, 0x61, 0x5f, 0xd9, 0xec, 0x77, 0xae, 0x63, 0x67, 0x9d, 0x0e, 0xc0, 0x59, 0xb4, 0x59, 0x5f, 0xeb, 0xf4, 0x0b, 0xe5, 0x9d, 0x97, 0x6a, 0x05, }; static const unsigned char eddsa_wei25519_214_msg[] = { 0x5a, 0xcb, 0x6a, 0xfc, 0x9b, 0x36, 0x8f, 0x7a, 0xca, 0xc0, 0xe7, 0x1f, 0x6a, 0x48, 0x31, 0xc7, 0x2d, 0x62, 0x84, 0x05, }; static const unsigned char eddsa_wei25519_214_sig[] = { 0x98, 0x5b, 0x60, 0x5f, 0xe3, 0xf4, 0x49, 0xf6, 0x80, 0x81, 0x19, 0x7a, 0x68, 0xc7, 0x14, 0xda, 0x0b, 0xfb, 0xf6, 0xac, 0x2a, 0xb9, 0xab, 0xb0, 0x50, 0x8b, 0x63, 0x84, 0xea, 0x49, 0x99, 0xcb, 0x8d, 0x79, 0xaf, 0x98, 0xe8, 0x6f, 0x58, 0x94, 0x09, 0xe8, 0xd2, 0x60, 0x9a, 0x8f, 0x8b, 0xd7, 0xe8, 0x0a, 0xaa, 0x8d, 0x92, 0xa8, 0x4e, 0x77, 0x37, 0xfb, 0xe8, 0xdc, 0xef, 0x41, 0x92, 0x0a, }; static const wycheproof_eddsa_test eddsa_wei25519_214 = { .name = "eddsa_wei25519_214", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_214_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_214_privkey, .privkeylen = 32, .msg = eddsa_wei25519_214_msg, .msglen = 20, .sig = eddsa_wei25519_214_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 129 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 215 for EDDSA, tcId is 130 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_215_pubkey[] = { 0xe1, 0xe7, 0x31, 0x6d, 0x23, 0x1f, 0x7f, 0x27, 0x5b, 0xdf, 0x40, 0x33, 0x60, 0x30, 0x4d, 0xa1, 0x50, 0x9f, 0xdf, 0x1a, 0xf1, 0xfd, 0x25, 0xca, 0x21, 0x4e, 0xaa, 0xc0, 0xa2, 0x89, 0x39, 0x8f, }; static const unsigned char eddsa_wei25519_215_privkey[] = { 0xe7, 0x75, 0x25, 0xaf, 0x58, 0x56, 0xab, 0x9d, 0xf5, 0xab, 0xb6, 0x4e, 0x53, 0x12, 0x57, 0x6b, 0x49, 0x8c, 0xc2, 0x7f, 0x61, 0xf2, 0x66, 0xe2, 0x1f, 0x38, 0x2e, 0x05, 0x26, 0xd4, 0xe6, 0xfb, }; static const unsigned char eddsa_wei25519_215_msg[] = { 0x3c, 0x87, 0xb3, 0x45, 0x32, 0x77, 0xb3, 0x53, 0x94, 0x15, 0x91, 0xfc, 0x7e, 0xaa, 0x7d, 0xd3, 0x76, 0x04, 0xb4, 0x2a, }; static const unsigned char eddsa_wei25519_215_sig[] = { 0x1c, 0x8f, 0xbd, 0xa3, 0xd3, 0x9e, 0x2b, 0x44, 0x1f, 0x06, 0xda, 0x60, 0x71, 0xc1, 0x31, 0x15, 0xcb, 0x41, 0x15, 0xc7, 0xc3, 0x34, 0x17, 0x04, 0xcf, 0x65, 0x13, 0x32, 0x4d, 0x4c, 0xf1, 0xef, 0x4a, 0x1d, 0xd7, 0x67, 0x8a, 0x04, 0x8b, 0x0d, 0xde, 0x84, 0xe4, 0x89, 0x94, 0xd0, 0x80, 0xbe, 0xfc, 0xd7, 0x08, 0x54, 0x07, 0x9d, 0x44, 0xb6, 0xa0, 0xb0, 0xf9, 0xfa, 0x00, 0x2d, 0x13, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_215 = { .name = "eddsa_wei25519_215", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_215_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_215_privkey, .privkeylen = 32, .msg = eddsa_wei25519_215_msg, .msglen = 20, .sig = eddsa_wei25519_215_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 130 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 216 for EDDSA, tcId is 131 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_216_pubkey[] = { 0xff, 0xfb, 0xee, 0xa7, 0x12, 0x15, 0xef, 0xaf, 0x98, 0x88, 0xfe, 0xc2, 0xcc, 0x68, 0xed, 0xb3, 0x70, 0x3f, 0xf1, 0x1a, 0x66, 0xfd, 0x62, 0x9b, 0x53, 0xcb, 0xda, 0x5e, 0xab, 0xc1, 0x87, 0x50, }; static const unsigned char eddsa_wei25519_216_privkey[] = { 0x1f, 0x43, 0x23, 0x5a, 0xd7, 0x16, 0xf1, 0xbe, 0xb7, 0x54, 0xab, 0x0f, 0x54, 0x6d, 0xfa, 0x93, 0x44, 0x88, 0xfd, 0xf7, 0x47, 0x2b, 0x49, 0x3d, 0x7c, 0xc3, 0xc6, 0x03, 0x53, 0x00, 0x5d, 0x24, }; static const unsigned char eddsa_wei25519_216_msg[] = { 0x0a, 0x68, 0xe2, 0x7e, 0xf6, 0x84, 0x7b, 0xfd, 0x9e, 0x39, 0x8b, 0x32, 0x8a, 0x0d, 0xed, 0x36, 0x79, 0xd4, 0x64, 0x9d, }; static const unsigned char eddsa_wei25519_216_sig[] = { 0x59, 0x09, 0x72, 0x33, 0xeb, 0x14, 0x1e, 0xd9, 0x48, 0xb4, 0xf3, 0xc2, 0x8a, 0x94, 0x96, 0xb9, 0xa7, 0xec, 0xa7, 0x74, 0x54, 0xec, 0xfe, 0x7e, 0x46, 0x73, 0x7d, 0x14, 0x49, 0xa0, 0xb7, 0x6b, 0x15, 0xaa, 0xcf, 0x77, 0xcf, 0x48, 0xaf, 0x27, 0xa6, 0x68, 0xaa, 0x44, 0x34, 0xcf, 0xa2, 0x6c, 0x50, 0x4d, 0x75, 0xa2, 0xbc, 0xc4, 0xfe, 0xac, 0x46, 0x46, 0x54, 0x46, 0x23, 0x4c, 0x05, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_216 = { .name = "eddsa_wei25519_216", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_216_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_216_privkey, .privkeylen = 32, .msg = eddsa_wei25519_216_msg, .msglen = 20, .sig = eddsa_wei25519_216_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 131 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 217 for EDDSA, tcId is 132 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_217_pubkey[] = { 0x19, 0xcc, 0xc0, 0x52, 0x75, 0x99, 0xcb, 0x03, 0x2e, 0x0b, 0x4c, 0x4d, 0x74, 0xe6, 0x0f, 0x13, 0x90, 0x17, 0x68, 0xa9, 0x9d, 0xf0, 0x41, 0xc3, 0xbc, 0x1b, 0xf6, 0xc0, 0xef, 0x27, 0x11, 0x69, }; static const unsigned char eddsa_wei25519_217_privkey[] = { 0x39, 0x77, 0x78, 0x5b, 0x9f, 0x8c, 0x53, 0x20, 0xe5, 0x1a, 0x3a, 0x16, 0xf8, 0xcc, 0x22, 0xc4, 0xf7, 0xe6, 0x48, 0x57, 0x61, 0x7f, 0x95, 0x50, 0x14, 0x7f, 0xa3, 0x5d, 0x68, 0x5c, 0xa3, 0x4f, }; static const unsigned char eddsa_wei25519_217_msg[] = { 0x4e, 0x9b, 0xef, 0x60, 0x73, 0x7c, 0x7d, 0x4d, 0xd1, 0x0b, 0xd5, 0x25, 0x67, 0xe1, 0x47, 0x3a, 0x36, 0xd3, 0x57, 0x3d, }; static const unsigned char eddsa_wei25519_217_sig[] = { 0x51, 0x91, 0x05, 0x60, 0x85, 0x08, 0xfe, 0x2f, 0x1b, 0x6d, 0xa4, 0xcc, 0x8b, 0x23, 0xe3, 0x97, 0x98, 0xb1, 0xd1, 0x8d, 0x25, 0x97, 0x2b, 0xee, 0xd0, 0x40, 0x4c, 0xec, 0x72, 0x2e, 0x01, 0xba, 0x1b, 0x6a, 0x0f, 0x85, 0xe9, 0x9e, 0x09, 0x2c, 0xca, 0x80, 0x76, 0xb1, 0x01, 0xb6, 0x0d, 0x4a, 0xc5, 0x03, 0x56, 0x84, 0x35, 0x7f, 0x4d, 0x0d, 0xaa, 0xcd, 0xc6, 0x42, 0xda, 0x74, 0x2a, 0x06, }; static const wycheproof_eddsa_test eddsa_wei25519_217 = { .name = "eddsa_wei25519_217", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_217_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_217_privkey, .privkeylen = 32, .msg = eddsa_wei25519_217_msg, .msglen = 20, .sig = eddsa_wei25519_217_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 132 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 218 for EDDSA, tcId is 133 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_218_pubkey[] = { 0x0e, 0x72, 0x6e, 0x27, 0x04, 0x75, 0x63, 0xaa, 0x0a, 0x1a, 0x9c, 0x2e, 0x08, 0x5d, 0x8d, 0x26, 0xaf, 0x2a, 0xcb, 0xa1, 0x29, 0xd0, 0x86, 0x9c, 0x65, 0x03, 0x1e, 0x3e, 0x6c, 0xac, 0x32, 0x9a, }; static const unsigned char eddsa_wei25519_218_privkey[] = { 0x1a, 0xa4, 0x41, 0x5c, 0x5d, 0xb0, 0x13, 0x1b, 0xec, 0x6f, 0xa1, 0x88, 0xd0, 0xc2, 0x3d, 0x49, 0xa6, 0x5b, 0xf7, 0x95, 0x65, 0x71, 0x53, 0xfa, 0xe9, 0x47, 0x77, 0xe3, 0xf1, 0x9b, 0xcf, 0x54, }; static const unsigned char eddsa_wei25519_218_msg[] = { 0xcc, 0x82, 0xb3, 0x16, 0x3e, 0xfd, 0xa3, 0xba, 0x7e, 0x92, 0x40, 0xe7, 0x65, 0x11, 0x2c, 0xaa, 0x69, 0x11, 0x36, 0x94, }; static const unsigned char eddsa_wei25519_218_sig[] = { 0xd8, 0xb0, 0x3e, 0xe5, 0x79, 0xe7, 0x3f, 0x16, 0x47, 0x75, 0x27, 0xfc, 0x9d, 0xc3, 0x7a, 0x72, 0xea, 0xac, 0x07, 0x48, 0xa7, 0x33, 0x77, 0x2c, 0x48, 0x3b, 0xa0, 0x13, 0x94, 0x4f, 0x01, 0xef, 0x64, 0xfb, 0x4e, 0xc5, 0xe3, 0xa9, 0x50, 0x21, 0xdc, 0x22, 0xf4, 0xae, 0x28, 0x2b, 0xaf, 0xf6, 0xe9, 0xb9, 0xcc, 0x84, 0x33, 0xc6, 0xb6, 0x71, 0x0d, 0x82, 0xe7, 0x39, 0x7d, 0x72, 0xef, 0x04, }; static const wycheproof_eddsa_test eddsa_wei25519_218 = { .name = "eddsa_wei25519_218", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_218_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_218_privkey, .privkeylen = 32, .msg = eddsa_wei25519_218_msg, .msglen = 20, .sig = eddsa_wei25519_218_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 133 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 219 for EDDSA, tcId is 134 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_219_pubkey[] = { 0xe7, 0x77, 0x17, 0xb5, 0x4a, 0x2b, 0x5e, 0x5b, 0xce, 0x5b, 0xcc, 0xb8, 0xf0, 0xc5, 0xfd, 0xb5, 0xfd, 0x7d, 0xf7, 0x7a, 0xc2, 0x54, 0x02, 0x0f, 0xc9, 0x12, 0x0d, 0xc0, 0xd4, 0xdf, 0x41, 0x78, }; static const unsigned char eddsa_wei25519_219_privkey[] = { 0x0f, 0xb7, 0x68, 0x0a, 0x50, 0xd3, 0xf2, 0x94, 0x00, 0x77, 0xea, 0x4d, 0xfc, 0xb7, 0xeb, 0x04, 0x0a, 0x12, 0x5c, 0x4f, 0x4b, 0x5d, 0xce, 0xfa, 0x16, 0xd3, 0xaf, 0x96, 0x8f, 0xc8, 0xe5, 0xde, }; static const unsigned char eddsa_wei25519_219_msg[] = { 0x92, 0x3a, 0x5c, 0x9e, 0x7b, 0x56, 0x35, 0xbb, 0x6c, 0x32, 0xc5, 0xa4, 0x08, 0xa4, 0xa1, 0x5b, 0x65, 0x24, 0x50, 0xeb, }; static const unsigned char eddsa_wei25519_219_sig[] = { 0x26, 0xda, 0x61, 0xfd, 0xfd, 0x38, 0xe6, 0xd0, 0x17, 0x92, 0x81, 0x3f, 0x27, 0x84, 0x0c, 0x8b, 0x47, 0x66, 0xb0, 0xfa, 0xae, 0xd3, 0x9d, 0x0e, 0xe8, 0x98, 0xcb, 0x45, 0x0d, 0x94, 0xa5, 0xd5, 0xf5, 0x7e, 0x58, 0xb6, 0xa0, 0x03, 0xd7, 0xf9, 0xb5, 0x6b, 0x20, 0x56, 0x19, 0x54, 0xc6, 0xed, 0xcf, 0x66, 0x49, 0x2d, 0x11, 0x6b, 0x8b, 0x5e, 0x91, 0xf2, 0x05, 0xa3, 0xa6, 0x44, 0x9d, 0x0b, }; static const wycheproof_eddsa_test eddsa_wei25519_219 = { .name = "eddsa_wei25519_219", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_219_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_219_privkey, .privkeylen = 32, .msg = eddsa_wei25519_219_msg, .msglen = 20, .sig = eddsa_wei25519_219_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 134 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 220 for EDDSA, tcId is 135 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_220_pubkey[] = { 0x62, 0x20, 0x97, 0x2d, 0x3f, 0x7d, 0x15, 0x0b, 0x36, 0x79, 0x0d, 0x7d, 0x52, 0x23, 0x84, 0x87, 0x6d, 0x64, 0xd6, 0x40, 0xcd, 0x99, 0x13, 0x18, 0x68, 0x15, 0xe1, 0x62, 0x95, 0x82, 0xed, 0x36, }; static const unsigned char eddsa_wei25519_220_privkey[] = { 0xe2, 0x22, 0xc4, 0x44, 0xd6, 0xbc, 0x8a, 0x47, 0x96, 0xa0, 0xd5, 0xa2, 0xd7, 0x1d, 0x19, 0xb9, 0x88, 0x45, 0xcc, 0x56, 0xe3, 0x9c, 0xaa, 0xf8, 0x23, 0x3e, 0xa4, 0xc6, 0xb0, 0x70, 0x4f, 0x09, }; static const unsigned char eddsa_wei25519_220_msg[] = { 0x6f, 0x2f, 0x02, 0x45, 0xde, 0x45, 0x87, 0x06, 0x29, 0x79, 0xd0, 0x42, 0x2d, 0x34, 0x9f, 0x93, 0xcc, 0xdc, 0x3a, 0xf2, }; static const unsigned char eddsa_wei25519_220_sig[] = { 0x4a, 0xde, 0xaf, 0xf7, 0xa5, 0x8c, 0x50, 0x10, 0xa5, 0xa0, 0x67, 0xfe, 0xea, 0x0a, 0xe5, 0x04, 0xd3, 0x7b, 0x0c, 0x6a, 0x76, 0xc6, 0xc1, 0x53, 0xe2, 0x22, 0xf1, 0x34, 0x09, 0xdf, 0xf2, 0xdf, 0x0f, 0xab, 0x69, 0xbc, 0x50, 0x59, 0xb9, 0x7d, 0x92, 0x5d, 0xc1, 0xb8, 0x9e, 0x98, 0x51, 0xd7, 0xc6, 0x27, 0xcb, 0x82, 0xd6, 0x55, 0x85, 0xf9, 0xfd, 0x97, 0x61, 0x24, 0x55, 0x3f, 0x89, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_220 = { .name = "eddsa_wei25519_220", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_220_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_220_privkey, .privkeylen = 32, .msg = eddsa_wei25519_220_msg, .msglen = 20, .sig = eddsa_wei25519_220_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 135 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 221 for EDDSA, tcId is 136 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_221_pubkey[] = { 0x7b, 0x64, 0xa2, 0x8c, 0x50, 0xec, 0x76, 0x78, 0xa9, 0x0e, 0x3e, 0x1a, 0x21, 0x52, 0x2e, 0x30, 0xac, 0x9d, 0xb7, 0xb5, 0x21, 0x5a, 0xea, 0x2b, 0xfb, 0x33, 0xbe, 0xa0, 0x37, 0xea, 0xb9, 0x87, }; static const unsigned char eddsa_wei25519_221_privkey[] = { 0xa8, 0x9e, 0xa1, 0x84, 0x76, 0xb9, 0xad, 0x90, 0xcb, 0x14, 0xb8, 0xb1, 0xff, 0x24, 0x77, 0x7e, 0x4e, 0xbd, 0x01, 0x5b, 0xc8, 0x10, 0xa6, 0x07, 0x85, 0xa9, 0x15, 0x4d, 0xac, 0xf3, 0xbe, 0x52, }; static const unsigned char eddsa_wei25519_221_msg[] = { 0x6e, 0x91, 0x1e, 0xdb, 0x27, 0xa1, 0x70, 0xb9, 0x83, 0xd4, 0xde, 0xe1, 0x11, 0x05, 0x54, 0xf8, 0x04, 0x33, 0x0f, 0x41, }; static const unsigned char eddsa_wei25519_221_sig[] = { 0x42, 0x04, 0xd6, 0x20, 0xcd, 0xe0, 0xc3, 0x00, 0x8c, 0x0b, 0x29, 0x01, 0xf5, 0xd6, 0xb4, 0x4f, 0x88, 0xf0, 0xe3, 0xcb, 0x4f, 0x4d, 0x62, 0x25, 0x2b, 0xf6, 0xf3, 0xcb, 0x37, 0xc1, 0xfb, 0x15, 0x0a, 0x9c, 0xcb, 0x29, 0x6a, 0xfe, 0x5e, 0x7c, 0x75, 0xf6, 0x5b, 0x5c, 0x8e, 0xdd, 0x13, 0xdc, 0x49, 0x10, 0xff, 0xe1, 0xe1, 0x26, 0x5b, 0x37, 0x07, 0xc5, 0x90, 0x42, 0xcf, 0x9a, 0x59, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_221 = { .name = "eddsa_wei25519_221", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_221_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_221_privkey, .privkeylen = 32, .msg = eddsa_wei25519_221_msg, .msglen = 20, .sig = eddsa_wei25519_221_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 136 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 222 for EDDSA, tcId is 137 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_222_pubkey[] = { 0x72, 0x44, 0x52, 0x21, 0x0a, 0x9e, 0x4c, 0x99, 0x48, 0x19, 0x22, 0x9b, 0xf1, 0x2b, 0xf8, 0x4e, 0x95, 0x76, 0x8a, 0x3a, 0x97, 0xc0, 0x8d, 0x8d, 0x8f, 0x5f, 0x93, 0x9a, 0x4c, 0xad, 0x34, 0xc5, }; static const unsigned char eddsa_wei25519_222_privkey[] = { 0x69, 0xb1, 0xda, 0x56, 0xcd, 0xe8, 0xd1, 0x67, 0x6c, 0x2a, 0x8c, 0x0e, 0x7f, 0x95, 0xc7, 0xd0, 0xbf, 0x60, 0x73, 0x9e, 0xfd, 0x13, 0x04, 0xdd, 0x2c, 0xcb, 0x02, 0x72, 0x9d, 0x17, 0xa2, 0x2c, }; static const unsigned char eddsa_wei25519_222_msg[] = { 0xb8, 0xcf, 0x80, 0x7e, 0xea, 0x80, 0x9a, 0xaf, 0x73, 0x9a, 0xa0, 0x91, 0xf3, 0xb7, 0xa3, 0xf2, 0xfd, 0x39, 0xfb, 0x51, }; static const unsigned char eddsa_wei25519_222_sig[] = { 0xf8, 0xa6, 0x9d, 0x3f, 0xd8, 0xc2, 0xff, 0x0a, 0x9d, 0xec, 0x41, 0xe4, 0xc6, 0xb4, 0x36, 0x75, 0xce, 0x08, 0x36, 0x6a, 0x35, 0xe2, 0x20, 0xb1, 0x18, 0x5f, 0xfc, 0x24, 0x6c, 0x33, 0x9e, 0x22, 0xc2, 0x0a, 0xc6, 0x61, 0xe8, 0x66, 0xf5, 0x20, 0x54, 0x01, 0x5e, 0xfd, 0x04, 0xf4, 0x2e, 0xca, 0x2a, 0xdc, 0xee, 0x68, 0x34, 0xc4, 0xdf, 0x92, 0x3b, 0x4a, 0x62, 0x57, 0x6e, 0x4d, 0xff, 0x0e, }; static const wycheproof_eddsa_test eddsa_wei25519_222 = { .name = "eddsa_wei25519_222", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_222_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_222_privkey, .privkeylen = 32, .msg = eddsa_wei25519_222_msg, .msglen = 20, .sig = eddsa_wei25519_222_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 137 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 223 for EDDSA, tcId is 138 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_223_pubkey[] = { 0xba, 0xd2, 0x65, 0xb2, 0x94, 0xed, 0x2f, 0x42, 0x2c, 0xb6, 0xa1, 0x41, 0x69, 0x40, 0x86, 0x23, 0x8f, 0xbf, 0xe9, 0x87, 0x57, 0x1a, 0xa7, 0x65, 0xd8, 0xb4, 0xf3, 0xa2, 0x41, 0x05, 0xaa, 0x01, }; static const unsigned char eddsa_wei25519_223_privkey[] = { 0xb3, 0x32, 0x26, 0x5c, 0xf9, 0x55, 0x95, 0xf0, 0xc9, 0x02, 0x21, 0x59, 0x3b, 0x5a, 0x2b, 0x3c, 0x57, 0x4d, 0x60, 0xdc, 0x63, 0x4d, 0xdf, 0xf6, 0x18, 0x6f, 0x0e, 0xed, 0x79, 0x80, 0xa3, 0x83, }; static const unsigned char eddsa_wei25519_223_msg[] = { 0x01, 0xa2, 0xb5, 0xf7, 0xfe, 0xe8, 0x13, 0xb4, 0xe9, 0xbd, 0x7f, 0xc2, 0x51, 0x37, 0x64, 0x80, 0x04, 0x79, 0x50, 0x10, }; static const unsigned char eddsa_wei25519_223_sig[] = { 0x61, 0x79, 0x2c, 0x94, 0x42, 0xbc, 0x63, 0x38, 0xac, 0x41, 0xfd, 0x42, 0xa4, 0x0b, 0xee, 0x9b, 0x02, 0xec, 0x18, 0x36, 0x50, 0x3d, 0x60, 0xff, 0x72, 0x51, 0x28, 0xc6, 0x3d, 0x72, 0x80, 0x88, 0x80, 0xc3, 0x6e, 0x61, 0x90, 0xb7, 0xda, 0x52, 0x5c, 0xbe, 0xe5, 0xd1, 0x29, 0x00, 0xaa, 0x04, 0x35, 0x47, 0xdd, 0x14, 0xa2, 0x70, 0x9e, 0xf9, 0xe4, 0x9d, 0x62, 0x8f, 0x37, 0xf6, 0xb7, 0x0c, }; static const wycheproof_eddsa_test eddsa_wei25519_223 = { .name = "eddsa_wei25519_223", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_223_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_223_privkey, .privkeylen = 32, .msg = eddsa_wei25519_223_msg, .msglen = 20, .sig = eddsa_wei25519_223_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 138 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 224 for EDDSA, tcId is 139 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_224_pubkey[] = { 0x0a, 0xae, 0xe4, 0xb7, 0x23, 0xdb, 0x9b, 0x51, 0xba, 0x7d, 0x22, 0xeb, 0x23, 0xeb, 0x8a, 0x76, 0xa5, 0xac, 0x02, 0xf4, 0xfc, 0x9d, 0xd0, 0x6f, 0x77, 0xbe, 0xa4, 0x2e, 0x1d, 0x37, 0xec, 0x5a, }; static const unsigned char eddsa_wei25519_224_privkey[] = { 0xfa, 0xec, 0x97, 0x64, 0xb3, 0x69, 0xdf, 0x0e, 0xf1, 0x08, 0x90, 0xdd, 0x02, 0x2c, 0x50, 0x2e, 0x55, 0x1a, 0x32, 0x22, 0xb4, 0x3e, 0x84, 0x29, 0x45, 0x54, 0x96, 0xc7, 0x6f, 0xee, 0xa4, 0x5d, }; static const unsigned char eddsa_wei25519_224_msg[] = { 0x0f, 0xbf, 0x5d, 0x47, 0xcb, 0x5d, 0x49, 0x8f, 0xea, 0xce, 0x8f, 0x98, 0xf1, 0x89, 0x62, 0x08, 0xda, 0x38, 0xa8, 0x85, }; static const unsigned char eddsa_wei25519_224_sig[] = { 0xfa, 0x3c, 0xd4, 0x1e, 0x3a, 0x8c, 0x00, 0xb1, 0x9e, 0xec, 0xd4, 0x04, 0xa6, 0x3c, 0x3c, 0xb7, 0x87, 0xcd, 0x30, 0xde, 0x0d, 0xfc, 0x93, 0x69, 0x66, 0xcf, 0xf2, 0x11, 0x7f, 0x5a, 0xff, 0x18, 0xdb, 0x6b, 0xef, 0x80, 0xfc, 0xfd, 0x88, 0x56, 0xf3, 0xfb, 0x2e, 0x9c, 0x3d, 0xc4, 0x75, 0x93, 0xe9, 0x47, 0x11, 0x03, 0x03, 0x2a, 0xf9, 0x18, 0xfe, 0xee, 0x63, 0x8a, 0x33, 0xd4, 0x05, 0x05, }; static const wycheproof_eddsa_test eddsa_wei25519_224 = { .name = "eddsa_wei25519_224", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_224_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_224_privkey, .privkeylen = 32, .msg = eddsa_wei25519_224_msg, .msglen = 20, .sig = eddsa_wei25519_224_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 139 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 225 for EDDSA, tcId is 140 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_225_pubkey[] = { 0x81, 0x23, 0x44, 0xaf, 0x15, 0xa9, 0x1b, 0xa8, 0x3c, 0x2c, 0x91, 0xe9, 0x6f, 0x17, 0x27, 0xac, 0x0f, 0x3c, 0x4c, 0x41, 0x38, 0x5b, 0x9f, 0xa8, 0x4e, 0xfa, 0x39, 0x9a, 0xda, 0x51, 0x68, 0xbe, }; static const unsigned char eddsa_wei25519_225_privkey[] = { 0x4e, 0xb1, 0x9e, 0x27, 0x8f, 0x7a, 0x30, 0xa0, 0x6a, 0x7d, 0x55, 0xe4, 0x2c, 0x44, 0x77, 0x5f, 0x4a, 0x81, 0xb7, 0xa4, 0x5c, 0x05, 0x12, 0xaa, 0xe0, 0x26, 0x26, 0x2e, 0x71, 0x77, 0x0d, 0xac, }; static const unsigned char eddsa_wei25519_225_msg[] = { 0x36, 0xe6, 0x7c, 0x19, 0x39, 0x75, 0x0b, 0xff, 0xb3, 0xe4, 0xba, 0x6c, 0xb8, 0x55, 0x62, 0x61, 0x22, 0x75, 0xe8, 0x62, }; static const unsigned char eddsa_wei25519_225_sig[] = { 0x97, 0xfb, 0xbc, 0xd7, 0xa1, 0xd0, 0xeb, 0x42, 0xd2, 0xf8, 0xc4, 0x24, 0x48, 0xef, 0x35, 0xa2, 0xc2, 0x47, 0x27, 0x40, 0x55, 0x6b, 0x64, 0x55, 0x47, 0x86, 0x53, 0x30, 0xd6, 0xc5, 0x70, 0x68, 0xaf, 0x37, 0x7f, 0xce, 0xd0, 0x8a, 0xaf, 0x81, 0x0c, 0x08, 0xcd, 0x3c, 0x43, 0xd2, 0x96, 0xf1, 0x97, 0x57, 0x10, 0x31, 0x2e, 0x93, 0x34, 0xc9, 0x8b, 0x48, 0x5f, 0x83, 0x1e, 0xfa, 0x41, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_225 = { .name = "eddsa_wei25519_225", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_225_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_225_privkey, .privkeylen = 32, .msg = eddsa_wei25519_225_msg, .msglen = 20, .sig = eddsa_wei25519_225_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 140 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 226 for EDDSA, tcId is 141 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_226_pubkey[] = { 0x0e, 0xe5, 0xcb, 0x55, 0x97, 0xfb, 0xdf, 0x8d, 0xcc, 0xc4, 0x8b, 0x01, 0x48, 0x5e, 0x39, 0xb3, 0x3a, 0xa1, 0x33, 0xb5, 0x2d, 0x30, 0xd2, 0x37, 0x40, 0x27, 0x72, 0x67, 0xcf, 0xec, 0x3e, 0x3e, }; static const unsigned char eddsa_wei25519_226_privkey[] = { 0x19, 0x98, 0xd5, 0x94, 0x9c, 0xab, 0x36, 0x5a, 0x00, 0xf8, 0x28, 0xe7, 0xd1, 0x7b, 0x06, 0xc7, 0x08, 0xd3, 0x3f, 0xef, 0x00, 0x31, 0xd3, 0x53, 0xa4, 0xe1, 0x5b, 0xf7, 0x22, 0x2a, 0x73, 0xb0, }; static const unsigned char eddsa_wei25519_226_msg[] = { 0x13, 0x94, 0x5c, 0x89, 0x4c, 0x1d, 0x3f, 0xe8, 0x56, 0x2e, 0x8b, 0x20, 0xe5, 0xf0, 0xef, 0xaa, 0x26, 0xad, 0xe8, 0xe3, }; static const unsigned char eddsa_wei25519_226_sig[] = { 0xd7, 0xdb, 0xaa, 0x33, 0x7f, 0xfd, 0x2a, 0x5f, 0xd8, 0xd5, 0xfd, 0x8a, 0xd5, 0xae, 0xcc, 0xc0, 0xc0, 0xf8, 0x37, 0x95, 0xc2, 0xc5, 0x9f, 0xe6, 0x2a, 0x40, 0xb8, 0x79, 0x03, 0xb1, 0xae, 0x62, 0xed, 0x74, 0x8a, 0x8d, 0xf5, 0xaf, 0x4d, 0x32, 0xf9, 0xf8, 0x22, 0xa6, 0x5d, 0x0e, 0x49, 0x8b, 0x6f, 0x40, 0xea, 0xf3, 0x69, 0xa9, 0x34, 0x2a, 0x11, 0x64, 0xee, 0x7d, 0x08, 0xb5, 0x81, 0x03, }; static const wycheproof_eddsa_test eddsa_wei25519_226 = { .name = "eddsa_wei25519_226", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_226_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_226_privkey, .privkeylen = 32, .msg = eddsa_wei25519_226_msg, .msglen = 20, .sig = eddsa_wei25519_226_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 141 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 227 for EDDSA, tcId is 142 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_227_pubkey[] = { 0x9f, 0xba, 0x1d, 0xe9, 0x2b, 0x60, 0xb5, 0xb4, 0x70, 0x30, 0x89, 0x76, 0x3d, 0x0d, 0x6f, 0x91, 0x25, 0xe4, 0xdd, 0x7e, 0xfa, 0xe4, 0x1f, 0x08, 0xa2, 0x28, 0x82, 0xae, 0xf9, 0x68, 0x92, 0xc4, }; static const unsigned char eddsa_wei25519_227_privkey[] = { 0x61, 0x64, 0x67, 0x61, 0x14, 0xc6, 0x6b, 0xd9, 0x88, 0x7d, 0xac, 0x34, 0x1c, 0x66, 0x20, 0x9d, 0xc5, 0x87, 0xcc, 0xf0, 0xcc, 0x5c, 0xd9, 0xba, 0xff, 0xdf, 0xac, 0x92, 0x95, 0xa0, 0x0c, 0x4a, }; static const unsigned char eddsa_wei25519_227_msg[] = { 0x4d, 0xe1, 0x42, 0xaf, 0x4b, 0x84, 0x02, 0xf8, 0x0a, 0x47, 0xfa, 0x81, 0x2d, 0xf8, 0x4f, 0x42, 0xe2, 0x83, 0xce, 0xe7, }; static const unsigned char eddsa_wei25519_227_sig[] = { 0x09, 0xa2, 0xed, 0x30, 0x3a, 0x2f, 0xa7, 0x02, 0x7a, 0x1d, 0xd7, 0xc3, 0xb0, 0xd2, 0x51, 0x21, 0xee, 0xed, 0x2b, 0x64, 0x4a, 0x2f, 0xbc, 0x17, 0xaa, 0x0c, 0x8a, 0xea, 0x45, 0x24, 0x07, 0x1e, 0xde, 0x7e, 0x7d, 0xd7, 0xa5, 0x36, 0xd5, 0x49, 0x7f, 0x81, 0x65, 0xd2, 0x9e, 0x4e, 0x1b, 0x63, 0x20, 0x0f, 0x74, 0xbb, 0xae, 0x39, 0xfb, 0xbb, 0xcc, 0xb2, 0x98, 0x89, 0xc6, 0x2c, 0x1f, 0x09, }; static const wycheproof_eddsa_test eddsa_wei25519_227 = { .name = "eddsa_wei25519_227", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_227_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_227_privkey, .privkeylen = 32, .msg = eddsa_wei25519_227_msg, .msglen = 20, .sig = eddsa_wei25519_227_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 142 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 228 for EDDSA, tcId is 143 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_228_pubkey[] = { 0x75, 0x82, 0xab, 0x1b, 0x52, 0xe1, 0x31, 0x6e, 0x5c, 0x13, 0x67, 0x1f, 0x43, 0xb3, 0x9c, 0xa3, 0x6b, 0x28, 0x13, 0x3c, 0xd0, 0x83, 0x28, 0x31, 0xbc, 0xdd, 0xd0, 0xb0, 0xf2, 0x33, 0x98, 0xcb, }; static const unsigned char eddsa_wei25519_228_privkey[] = { 0x4b, 0x0b, 0xd0, 0x3a, 0x03, 0xb2, 0x00, 0x69, 0xcc, 0xbc, 0xc2, 0x14, 0xa7, 0x44, 0x84, 0x73, 0xf4, 0xe7, 0xa4, 0x91, 0xfa, 0x7c, 0xeb, 0x48, 0xdd, 0xbe, 0x24, 0xc8, 0x3c, 0x4a, 0xa4, 0xbb, }; static const unsigned char eddsa_wei25519_228_msg[] = { 0x56, 0x33, 0x57, 0xf4, 0x1b, 0x8b, 0x23, 0xb1, 0xd8, 0x3f, 0x19, 0xf5, 0x66, 0x71, 0x77, 0xa6, 0x7d, 0xa2, 0x0b, 0x18, }; static const unsigned char eddsa_wei25519_228_sig[] = { 0xe6, 0x88, 0x4a, 0x6e, 0x6b, 0x2e, 0x60, 0xa0, 0xb5, 0x86, 0x22, 0x51, 0xc0, 0x01, 0xe7, 0xc7, 0x9d, 0x58, 0x1d, 0x77, 0x7d, 0x6f, 0xc1, 0x1d, 0x21, 0x8d, 0x0a, 0xec, 0xd7, 0x9f, 0x26, 0xa3, 0x0e, 0x2c, 0xa2, 0x2c, 0xc7, 0xc4, 0x67, 0x4f, 0x8b, 0x72, 0x65, 0x5b, 0xc4, 0xee, 0x5c, 0xb5, 0x49, 0x4c, 0xa0, 0x7c, 0x05, 0x17, 0x76, 0x56, 0x14, 0x2a, 0xc5, 0x5c, 0xc9, 0xd3, 0x3e, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_228 = { .name = "eddsa_wei25519_228", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_228_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_228_privkey, .privkeylen = 32, .msg = eddsa_wei25519_228_msg, .msglen = 20, .sig = eddsa_wei25519_228_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 143 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 229 for EDDSA, tcId is 144 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_229_pubkey[] = { 0xdd, 0x2d, 0x67, 0x8b, 0xae, 0x22, 0x2f, 0x3f, 0xb6, 0xe8, 0x27, 0x8f, 0x08, 0xcc, 0x9e, 0x1a, 0x66, 0x33, 0x9c, 0x92, 0x6c, 0x29, 0xac, 0x0a, 0x16, 0xf9, 0x71, 0x7f, 0x5e, 0xe1, 0x8c, 0xd8, }; static const unsigned char eddsa_wei25519_229_privkey[] = { 0x2f, 0xce, 0x78, 0x70, 0xbe, 0x1f, 0x39, 0x2d, 0x21, 0xfb, 0x1d, 0x23, 0x50, 0xec, 0x78, 0x77, 0xdb, 0x8a, 0xa9, 0x9b, 0x35, 0x9f, 0xe5, 0xbd, 0xd5, 0x33, 0x8f, 0xf3, 0x5a, 0x79, 0x1d, 0x1c, }; static const unsigned char eddsa_wei25519_229_msg[] = { 0x93, 0x1b, 0xbf, 0x9c, 0x87, 0x7a, 0x65, 0x71, 0xcf, 0x7d, 0x46, 0x09, 0xfc, 0x3e, 0xb8, 0x67, 0xed, 0xd4, 0x3f, 0x51, }; static const unsigned char eddsa_wei25519_229_sig[] = { 0x61, 0x24, 0xc2, 0x06, 0xd8, 0x64, 0x50, 0x7e, 0xa5, 0xd9, 0x84, 0xb3, 0x63, 0xb4, 0xcf, 0x58, 0x33, 0x14, 0xdb, 0x68, 0x56, 0xa4, 0x5d, 0xed, 0x5e, 0x61, 0xee, 0xbf, 0xf4, 0xd5, 0xe3, 0x37, 0xe0, 0xb4, 0xc8, 0x2b, 0x44, 0x5a, 0xe2, 0xe5, 0x2d, 0x54, 0x9d, 0x2d, 0x96, 0x1e, 0xac, 0xe2, 0xea, 0x01, 0xf8, 0x11, 0x58, 0xe0, 0x9a, 0x96, 0x86, 0xba, 0xa0, 0x40, 0xdb, 0x65, 0xad, 0x08, }; static const wycheproof_eddsa_test eddsa_wei25519_229 = { .name = "eddsa_wei25519_229", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_229_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_229_privkey, .privkeylen = 32, .msg = eddsa_wei25519_229_msg, .msglen = 20, .sig = eddsa_wei25519_229_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 144 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /* Test 230 for EDDSA, tcId is 145 in file eddsa_test.json */ #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) static const unsigned char eddsa_wei25519_230_pubkey[] = { 0xcc, 0xbe, 0x7c, 0xb2, 0xe4, 0xbc, 0x21, 0x5c, 0xee, 0x2f, 0x88, 0x5e, 0x1d, 0x22, 0xf7, 0xe0, 0xd5, 0x82, 0xb2, 0xbb, 0xbd, 0x78, 0x2c, 0x10, 0x4e, 0x54, 0x8b, 0x15, 0x2d, 0x26, 0xfc, 0x69, }; static const unsigned char eddsa_wei25519_230_privkey[] = { 0xa9, 0xac, 0xe4, 0x21, 0x95, 0xdd, 0xbb, 0x3a, 0x16, 0xf3, 0x66, 0xb2, 0x4d, 0xd9, 0xd3, 0x7a, 0x8a, 0x04, 0x3e, 0xd2, 0xe6, 0x00, 0x1f, 0x54, 0x65, 0x22, 0x96, 0x75, 0x03, 0x79, 0x36, 0x7d, }; static const unsigned char eddsa_wei25519_230_msg[] = { 0x44, 0x53, 0x0b, 0x0b, 0x34, 0xf5, 0x98, 0x76, 0x7a, 0x7b, 0x87, 0x5b, 0x0c, 0xae, 0xe3, 0xc7, 0xb9, 0xc5, 0x02, 0xd1, }; static const unsigned char eddsa_wei25519_230_sig[] = { 0xcf, 0xbd, 0x45, 0x0a, 0x2c, 0x83, 0xcb, 0x84, 0x36, 0xc3, 0x48, 0x82, 0x2f, 0xe3, 0xee, 0x34, 0x7d, 0x4e, 0xe9, 0x37, 0xb7, 0xf2, 0xea, 0x11, 0xed, 0x75, 0x5c, 0xc5, 0x28, 0x52, 0x40, 0x7c, 0x9e, 0xec, 0x2c, 0x1f, 0xa3, 0x0d, 0x2f, 0x9a, 0xef, 0x90, 0xe8, 0x9b, 0x2c, 0xc3, 0xbc, 0xef, 0x2b, 0x1b, 0x9c, 0xa5, 0x9f, 0x71, 0x21, 0x10, 0xd1, 0x98, 0x94, 0xa9, 0xcf, 0x6a, 0x28, 0x02, }; static const wycheproof_eddsa_test eddsa_wei25519_230 = { .name = "eddsa_wei25519_230", .sig_alg = EDDSA25519, .hash = SHA512, .curve = &wei25519_str_params, .pubkey = eddsa_wei25519_230_pubkey, .pubkeylen = 32, .privkey = eddsa_wei25519_230_privkey, .privkeylen = 32, .msg = eddsa_wei25519_230_msg, .msglen = 20, .sig = eddsa_wei25519_230_sig, .siglen = 64, .result = 1, .comment = "regression test for arithmetic error, tcId is 145 in file eddsa_test.json", }; #endif /* defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) */ /*****************/ ATTRIBUTE_USED static const wycheproof_eddsa_test *wycheproof_eddsa_all_tests[] = { #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_0, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_1, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_2, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_3, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_4, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_5, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_6, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_7, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_8, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_9, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_10, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_11, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_12, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_13, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_14, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_15, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_16, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_17, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_18, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_19, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_20, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_21, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_22, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_23, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_24, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_25, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_26, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_27, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_28, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_29, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_30, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_31, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_32, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_33, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_34, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_35, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_36, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_37, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_38, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_39, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_40, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_41, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_42, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_43, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_44, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_45, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_46, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_47, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_48, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_49, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_50, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_51, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_52, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_53, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_54, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_55, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_56, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_57, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_58, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_59, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_60, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_61, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_62, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_63, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_64, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_65, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_66, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_67, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_68, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_69, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_70, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_71, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_72, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_73, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_74, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_75, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_76, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_77, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_78, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_79, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_80, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_81, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_82, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_83, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_84, #endif #if defined(WITH_SIG_EDDSA448) && defined(WITH_CURVE_WEI448) && defined(WITH_HASH_SHAKE256) &eddsa_wei448_85, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_86, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_87, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_88, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_89, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_90, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_91, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_92, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_93, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_94, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_95, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_96, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_97, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_98, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_99, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_100, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_101, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_102, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_103, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_104, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_105, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_106, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_107, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_108, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_109, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_110, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_111, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_112, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_113, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_114, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_115, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_116, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_117, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_118, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_119, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_120, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_121, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_122, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_123, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_124, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_125, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_126, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_127, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_128, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_129, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_130, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_131, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_132, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_133, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_134, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_135, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_136, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_137, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_138, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_139, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_140, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_141, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_142, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_143, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_144, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_145, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_146, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_147, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_148, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_149, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_150, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_151, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_152, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_153, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_154, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_155, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_156, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_157, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_158, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_159, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_160, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_161, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_162, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_163, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_164, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_165, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_166, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_167, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_168, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_169, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_170, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_171, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_172, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_173, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_174, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_175, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_176, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_177, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_178, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_179, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_180, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_181, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_182, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_183, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_184, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_185, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_186, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_187, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_188, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_189, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_190, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_191, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_192, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_193, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_194, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_195, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_196, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_197, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_198, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_199, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_200, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_201, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_202, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_203, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_204, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_205, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_206, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_207, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_208, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_209, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_210, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_211, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_212, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_213, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_214, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_215, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_216, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_217, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_218, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_219, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_220, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_221, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_222, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_223, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_224, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_225, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_226, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_227, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_228, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_229, #endif #if defined(WITH_SIG_EDDSA25519) && defined(WITH_CURVE_WEI25519) && defined(WITH_HASH_SHA512) &eddsa_wei25519_230, #endif NULL, }; #define NUM_WYCHEPROOF_EDDSA_TESTS (sizeof(wycheproof_eddsa_all_tests) / sizeof(wycheproof_eddsa_test *)) /******** EDDSA tests extracted from ed448_test.json eddsa_test.json is 231, skipped = 0 **********/ #define NUM_WYCHEPROOF_EDDSA_TESTS_IMPORTED 231 #define NUM_WYCHEPROOF_EDDSA_TESTS_SKIPPED 0 #define NUM_WYCHEPROOF_EDDSA_TESTS_ACCEPTABLE 0 #define NUM_WYCHEPROOF_EDDSA_TESTS_VALID 101 #define NUM_WYCHEPROOF_EDDSA_TESTS_INVALID 130 /* Test 0 for XDH, tcId is 1 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_0_peerpubkey[] = { 0x50, 0x4a, 0x36, 0x99, 0x9f, 0x48, 0x9c, 0xd2, 0xfd, 0xbc, 0x08, 0xba, 0xff, 0x3d, 0x88, 0xfa, 0x00, 0x56, 0x9b, 0xa9, 0x86, 0xcb, 0xa2, 0x25, 0x48, 0xff, 0xde, 0x80, 0xf9, 0x80, 0x68, 0x29, }; static const unsigned char xdh_wei25519_0_privkey[] = { 0xc8, 0xa9, 0xd5, 0xa9, 0x10, 0x91, 0xad, 0x85, 0x1c, 0x66, 0x8b, 0x07, 0x36, 0xc1, 0xc9, 0xa0, 0x29, 0x36, 0xc0, 0xd3, 0xad, 0x62, 0x67, 0x08, 0x58, 0x08, 0x80, 0x47, 0xba, 0x05, 0x74, 0x75, }; static const unsigned char xdh_wei25519_0_sharedsecret[] = { 0x43, 0x6a, 0x2c, 0x04, 0x0c, 0xf4, 0x5f, 0xea, 0x9b, 0x29, 0xa0, 0xcb, 0x81, 0xb1, 0xf4, 0x14, 0x58, 0xf8, 0x63, 0xd0, 0xd6, 0x1b, 0x45, 0x3d, 0x0a, 0x98, 0x27, 0x20, 0xd6, 0xd6, 0x13, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_0 = { .name = "xdh_wei25519_0", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_0_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_0_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_0_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1 for XDH, tcId is 2 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1_peerpubkey[] = { 0x63, 0xaa, 0x40, 0xc6, 0xe3, 0x83, 0x46, 0xc5, 0xca, 0xf2, 0x3a, 0x6d, 0xf0, 0xa5, 0xe6, 0xc8, 0x08, 0x89, 0xa0, 0x86, 0x47, 0xe5, 0x51, 0xb3, 0x56, 0x34, 0x49, 0xbe, 0xfc, 0xfc, 0x97, 0x33, }; static const unsigned char xdh_wei25519_1_privkey[] = { 0xd8, 0x5d, 0x8c, 0x06, 0x1a, 0x50, 0x80, 0x4a, 0xc4, 0x88, 0xad, 0x77, 0x4a, 0xc7, 0x16, 0xc3, 0xf5, 0xba, 0x71, 0x4b, 0x27, 0x12, 0xe0, 0x48, 0x49, 0x13, 0x79, 0xa5, 0x00, 0x21, 0x19, 0x58, }; static const unsigned char xdh_wei25519_1_sharedsecret[] = { 0x27, 0x9d, 0xf6, 0x7a, 0x7c, 0x46, 0x11, 0xdb, 0x47, 0x08, 0xa0, 0xe8, 0x28, 0x2b, 0x19, 0x5e, 0x5a, 0xc0, 0xed, 0x6f, 0x4b, 0x2f, 0x29, 0x2c, 0x6f, 0xbd, 0x0a, 0xca, 0xc3, 0x0d, 0x13, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1 = { .name = "xdh_wei25519_1", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 2 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2 for XDH, tcId is 3 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2_peerpubkey[] = { 0x0f, 0x83, 0xc3, 0x6f, 0xde, 0xd9, 0xd3, 0x2f, 0xad, 0xf4, 0xef, 0xa3, 0xae, 0x93, 0xa9, 0x0b, 0xb5, 0xcf, 0xa6, 0x68, 0x93, 0xbc, 0x41, 0x2c, 0x43, 0xfa, 0x72, 0x87, 0xdb, 0xb9, 0x97, 0x79, }; static const unsigned char xdh_wei25519_2_privkey[] = { 0xc8, 0xb4, 0x5b, 0xfd, 0x32, 0xe5, 0x53, 0x25, 0xd9, 0xfd, 0x64, 0x8c, 0xb3, 0x02, 0x84, 0x80, 0x39, 0x00, 0x0b, 0x39, 0x0e, 0x44, 0xd5, 0x21, 0xe5, 0x8a, 0xab, 0x3b, 0x29, 0xa6, 0x96, 0x4b, }; static const unsigned char xdh_wei25519_2_sharedsecret[] = { 0x4b, 0xc7, 0xe0, 0x1e, 0x7d, 0x83, 0xd6, 0xcf, 0x67, 0x63, 0x2b, 0xf9, 0x00, 0x33, 0x48, 0x7a, 0x5f, 0xc2, 0x9e, 0xba, 0x53, 0x28, 0x89, 0x0e, 0xa7, 0xb1, 0x02, 0x6d, 0x23, 0xb9, 0xa4, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_2 = { .name = "xdh_wei25519_2", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 3 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 3 for XDH, tcId is 4 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_3_peerpubkey[] = { 0x0b, 0x82, 0x11, 0xa2, 0xb6, 0x04, 0x90, 0x97, 0xf6, 0x87, 0x1c, 0x6c, 0x05, 0x2d, 0x3c, 0x5f, 0xc1, 0xba, 0x17, 0xda, 0x9e, 0x32, 0xae, 0x45, 0x84, 0x03, 0xb0, 0x5b, 0xb2, 0x83, 0x09, 0x2a, }; static const unsigned char xdh_wei25519_3_privkey[] = { 0xf8, 0x76, 0xe3, 0x4b, 0xcb, 0xe1, 0xf4, 0x7f, 0xbc, 0x0f, 0xdd, 0xfd, 0x7c, 0x1e, 0x1a, 0xa5, 0x3d, 0x57, 0xbf, 0xe0, 0xf6, 0x6d, 0x24, 0x30, 0x67, 0xb4, 0x24, 0xbb, 0x62, 0x10, 0xbe, 0x51, }; static const unsigned char xdh_wei25519_3_sharedsecret[] = { 0x11, 0x9d, 0x37, 0xed, 0x4b, 0x10, 0x9c, 0xbd, 0x64, 0x18, 0xb1, 0xf2, 0x8d, 0xea, 0x83, 0xc8, 0x36, 0xc8, 0x44, 0x71, 0x5c, 0xdf, 0x98, 0xa3, 0xa8, 0xc3, 0x62, 0x19, 0x1d, 0xeb, 0xd5, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_3 = { .name = "xdh_wei25519_3", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_3_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_3_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_3_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 4 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 4 for XDH, tcId is 5 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_4_peerpubkey[] = { 0x34, 0x3a, 0xc2, 0x0a, 0x3b, 0x9c, 0x6a, 0x27, 0xb1, 0x00, 0x81, 0x76, 0x50, 0x9a, 0xd3, 0x07, 0x35, 0x85, 0x6e, 0xc1, 0xc8, 0xd8, 0xfc, 0xae, 0x13, 0x91, 0x2d, 0x08, 0xd1, 0x52, 0xf4, 0x6c, }; static const unsigned char xdh_wei25519_4_privkey[] = { 0x00, 0x6a, 0xc1, 0xf3, 0xa6, 0x53, 0xa4, 0xcd, 0xb1, 0xd3, 0x7b, 0xba, 0x94, 0x73, 0x8f, 0x8b, 0x95, 0x7a, 0x57, 0xbe, 0xb2, 0x4d, 0x64, 0x6e, 0x99, 0x4d, 0xc2, 0x9a, 0x27, 0x6a, 0xad, 0x45, }; static const unsigned char xdh_wei25519_4_sharedsecret[] = { 0xcc, 0x48, 0x73, 0xae, 0xd3, 0xfc, 0xee, 0x4b, 0x3a, 0xae, 0xa7, 0xf0, 0xd2, 0x07, 0x16, 0xb4, 0x27, 0x63, 0x59, 0x08, 0x1f, 0x63, 0x4b, 0x7b, 0xea, 0x4b, 0x70, 0x5b, 0xfc, 0x8a, 0x4d, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_4 = { .name = "xdh_wei25519_4", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_4_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_4_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_4_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 5 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 5 for XDH, tcId is 6 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_5_peerpubkey[] = { 0xfa, 0x69, 0x5f, 0xc7, 0xbe, 0x8d, 0x1b, 0xe5, 0xbf, 0x70, 0x48, 0x98, 0xf3, 0x88, 0xc4, 0x52, 0xba, 0xfd, 0xd3, 0xb8, 0xea, 0xe8, 0x05, 0xf8, 0x68, 0x1a, 0x8d, 0x15, 0xc2, 0xd4, 0xe1, 0x42, }; static const unsigned char xdh_wei25519_5_privkey[] = { 0x08, 0xda, 0x77, 0xb2, 0x6d, 0x06, 0xdf, 0xf9, 0xd9, 0xf7, 0xfd, 0x4c, 0x5b, 0x37, 0x69, 0xf8, 0xcd, 0xd5, 0xb3, 0x05, 0x16, 0xa5, 0xab, 0x80, 0x6b, 0xe3, 0x24, 0xff, 0x3e, 0xb6, 0x9e, 0x60, }; static const unsigned char xdh_wei25519_5_sharedsecret[] = { 0xb6, 0xf8, 0xe2, 0xfc, 0xb1, 0xaf, 0xfc, 0x79, 0xe2, 0xff, 0x79, 0x83, 0x19, 0xb2, 0x70, 0x11, 0x39, 0xb9, 0x5a, 0xd6, 0xdd, 0x07, 0xf0, 0x5c, 0xba, 0xc7, 0x8b, 0xd8, 0x3e, 0xdf, 0xd9, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_5 = { .name = "xdh_wei25519_5", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_5_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_5_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_5_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 6 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 6 for XDH, tcId is 7 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_6_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_6_privkey[] = { 0xd0, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0x5f, }; static const unsigned char xdh_wei25519_6_sharedsecret[] = { 0xb8, 0x7a, 0x17, 0x22, 0xcc, 0x6c, 0x1e, 0x2f, 0xee, 0xcb, 0x54, 0xe9, 0x7a, 0xbd, 0x5a, 0x22, 0xac, 0xc2, 0x76, 0x16, 0xf7, 0x8f, 0x6e, 0x31, 0x5f, 0xd2, 0xb7, 0x3d, 0x9f, 0x22, 0x1e, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_6 = { .name = "xdh_wei25519_6", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_6_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_6_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_6_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 7 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 7 for XDH, tcId is 8 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_7_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_7_privkey[] = { 0xe0, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0x6a, }; static const unsigned char xdh_wei25519_7_sharedsecret[] = { 0xa2, 0x9d, 0x8d, 0xad, 0x28, 0xd5, 0x90, 0xcd, 0x30, 0x17, 0xaa, 0x97, 0xa4, 0x76, 0x1f, 0x85, 0x1b, 0xf1, 0xd3, 0x67, 0x2b, 0x04, 0x2a, 0x42, 0x56, 0xa4, 0x58, 0x81, 0xe2, 0xad, 0x90, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_7 = { .name = "xdh_wei25519_7", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_7_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_7_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_7_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 8 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 8 for XDH, tcId is 9 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_8_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_8_privkey[] = { 0xe0, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0x6f, }; static const unsigned char xdh_wei25519_8_sharedsecret[] = { 0xe7, 0x03, 0xbc, 0x8a, 0xa9, 0x4b, 0x7d, 0x87, 0xba, 0x34, 0xe2, 0x67, 0x83, 0x53, 0xd1, 0x2c, 0xda, 0xaa, 0x1a, 0x97, 0xb5, 0xca, 0x3e, 0x1b, 0x8c, 0x06, 0x0c, 0x46, 0x36, 0x08, 0x7f, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_8 = { .name = "xdh_wei25519_8", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_8_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_8_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_8_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 9 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 9 for XDH, tcId is 10 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_9_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_9_privkey[] = { 0xa8, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0x41, }; static const unsigned char xdh_wei25519_9_sharedsecret[] = { 0xff, 0x5c, 0xf0, 0x41, 0xe9, 0x24, 0xdb, 0xe1, 0xa6, 0x4a, 0xc9, 0xbd, 0xba, 0x96, 0xbd, 0xcd, 0xfa, 0xf7, 0xd5, 0x9d, 0x91, 0xc7, 0xe3, 0x3e, 0x76, 0xed, 0x0e, 0x4c, 0x8c, 0x83, 0x64, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_9 = { .name = "xdh_wei25519_9", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_9_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_9_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_9_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 10 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 10 for XDH, tcId is 11 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_10_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_10_privkey[] = { 0xa8, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0x7b, }; static const unsigned char xdh_wei25519_10_sharedsecret[] = { 0xa9, 0x2a, 0x96, 0xfa, 0x02, 0x99, 0x60, 0xf9, 0x53, 0x0e, 0x6f, 0xe3, 0x7e, 0x24, 0x29, 0xcd, 0x11, 0x3b, 0xe4, 0xd8, 0xf3, 0xf4, 0x43, 0x1f, 0x85, 0x46, 0xe6, 0xc7, 0x63, 0x51, 0x47, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_10 = { .name = "xdh_wei25519_10", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_10_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_10_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_10_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 11 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 11 for XDH, tcId is 12 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_11_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_11_privkey[] = { 0xd0, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0x7c, }; static const unsigned char xdh_wei25519_11_sharedsecret[] = { 0x9f, 0x89, 0x54, 0x86, 0x81, 0x58, 0xec, 0x62, 0xb6, 0xb5, 0x86, 0xb8, 0xca, 0xe1, 0xd6, 0x7d, 0x1b, 0x9f, 0x4c, 0x03, 0xd5, 0xb3, 0xca, 0x03, 0x93, 0xce, 0xe7, 0x1a, 0xcc, 0xc9, 0xab, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_11 = { .name = "xdh_wei25519_11", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_11_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_11_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_11_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 12 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 12 for XDH, tcId is 13 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_12_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_12_privkey[] = { 0xd0, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x4e, }; static const unsigned char xdh_wei25519_12_sharedsecret[] = { 0x6c, 0xbf, 0x1d, 0xc9, 0xaf, 0x97, 0xbc, 0x14, 0x85, 0x13, 0xa1, 0x8b, 0xe4, 0xa2, 0x57, 0xde, 0x1a, 0x3b, 0x06, 0x55, 0x84, 0xdf, 0x94, 0xe8, 0xb4, 0x3c, 0x1a, 0xb8, 0x97, 0x20, 0xb1, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_12 = { .name = "xdh_wei25519_12", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_12_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_12_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_12_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 13 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 13 for XDH, tcId is 14 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_13_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_13_privkey[] = { 0xa0, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0x44, }; static const unsigned char xdh_wei25519_13_sharedsecret[] = { 0x38, 0x28, 0x4b, 0x70, 0x86, 0x09, 0x5a, 0x94, 0x06, 0x02, 0x8c, 0x1f, 0x80, 0x0c, 0x07, 0x1e, 0xa1, 0x06, 0x03, 0x9a, 0xd7, 0xa1, 0xd7, 0xf8, 0x2f, 0xe0, 0x09, 0x06, 0xfd, 0x90, 0x59, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_13 = { .name = "xdh_wei25519_13", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_13_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_13_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_13_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 14 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 14 for XDH, tcId is 15 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_14_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_14_privkey[] = { 0xa8, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0x63, }; static const unsigned char xdh_wei25519_14_sharedsecret[] = { 0xc7, 0x21, 0x04, 0x1d, 0xf0, 0x24, 0x40, 0x71, 0x79, 0x4a, 0x8d, 0xb0, 0x6b, 0x9f, 0x7e, 0xae, 0xec, 0x69, 0x0c, 0x25, 0x72, 0x65, 0x34, 0x36, 0x66, 0xf4, 0x41, 0x6f, 0x41, 0x66, 0x84, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_14 = { .name = "xdh_wei25519_14", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_14_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_14_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_14_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 15 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 15 for XDH, tcId is 16 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_15_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_15_privkey[] = { 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0x50, }; static const unsigned char xdh_wei25519_15_sharedsecret[] = { 0x25, 0xff, 0x9a, 0x66, 0x31, 0xb1, 0x43, 0xdb, 0xdb, 0xdc, 0x20, 0x7b, 0x38, 0xe3, 0x8f, 0x83, 0x2a, 0xe0, 0x79, 0xa5, 0x2a, 0x61, 0x8c, 0x53, 0x43, 0x22, 0xe7, 0x73, 0x45, 0xfd, 0x90, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_15 = { .name = "xdh_wei25519_15", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_15_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_15_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_15_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 16 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 16 for XDH, tcId is 17 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_16_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_16_privkey[] = { 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0x70, }; static const unsigned char xdh_wei25519_16_sharedsecret[] = { 0xf2, 0x94, 0xe7, 0x92, 0x2c, 0x6c, 0xea, 0x58, 0x7a, 0xef, 0xe7, 0x29, 0x11, 0x63, 0x0d, 0x50, 0xf2, 0x45, 0x6a, 0x2b, 0xa7, 0xf2, 0x12, 0x07, 0xd5, 0x7f, 0x1e, 0xcc, 0xe0, 0x4f, 0x62, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_16 = { .name = "xdh_wei25519_16", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_16_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_16_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_16_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 17 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 17 for XDH, tcId is 18 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_17_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_17_privkey[] = { 0xe0, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0x4c, }; static const unsigned char xdh_wei25519_17_sharedsecret[] = { 0xff, 0x47, 0x15, 0xbd, 0x8c, 0xf8, 0x47, 0xb7, 0x7c, 0x24, 0x4c, 0xe2, 0xd9, 0xb0, 0x08, 0xb1, 0x9e, 0xfa, 0xa8, 0xe8, 0x45, 0xfe, 0xb8, 0x5c, 0xe4, 0x88, 0x9b, 0x5b, 0x2c, 0x6a, 0x4b, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_17 = { .name = "xdh_wei25519_17", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_17_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_17_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_17_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 18 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 18 for XDH, tcId is 19 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_18_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_18_privkey[] = { 0x10, 0x5d, 0x62, 0x1e, 0x1e, 0xf3, 0x39, 0xc3, 0xd9, 0x92, 0x45, 0xcf, 0xb7, 0x7c, 0xd3, 0xa5, 0xbd, 0x0c, 0x44, 0x27, 0xa0, 0xe4, 0xd8, 0x75, 0x2c, 0x3b, 0x51, 0xf0, 0x45, 0x88, 0x9b, 0x4f, }; static const unsigned char xdh_wei25519_18_sharedsecret[] = { 0x61, 0xea, 0xce, 0x52, 0xda, 0x5f, 0x5e, 0xce, 0xfa, 0xfa, 0x4f, 0x19, 0x9b, 0x07, 0x7f, 0xf6, 0x4f, 0x2e, 0x3d, 0x2a, 0x6e, 0xce, 0x6f, 0x8e, 0xc0, 0x49, 0x78, 0x26, 0xb2, 0x12, 0xef, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_18 = { .name = "xdh_wei25519_18", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_18_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_18_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_18_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 19 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 19 for XDH, tcId is 20 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_19_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, }; static const unsigned char xdh_wei25519_19_privkey[] = { 0xd8, 0x8a, 0x44, 0x1e, 0x70, 0x6f, 0x60, 0x6a, 0xe7, 0xf6, 0x30, 0xf8, 0xb2, 0x1f, 0x3c, 0x25, 0x54, 0x73, 0x9e, 0x3e, 0x54, 0x9f, 0x80, 0x41, 0x18, 0xc0, 0x37, 0x71, 0xf6, 0x08, 0x01, 0x7b, }; static const unsigned char xdh_wei25519_19_sharedsecret[] = { 0xff, 0x1b, 0x50, 0x9a, 0x0a, 0x1a, 0x54, 0x72, 0x60, 0x86, 0xf1, 0xe1, 0xc0, 0xac, 0xf0, 0x40, 0xab, 0x46, 0x3a, 0x2a, 0x54, 0x2e, 0x5d, 0x54, 0xe9, 0x2c, 0x6d, 0xf8, 0x12, 0x6c, 0xf6, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_19 = { .name = "xdh_wei25519_19", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_19_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_19_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_19_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 20 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 20 for XDH, tcId is 21 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_20_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, }; static const unsigned char xdh_wei25519_20_privkey[] = { 0x80, 0xbb, 0xad, 0x16, 0x82, 0x22, 0x27, 0x62, 0x00, 0xaa, 0xfd, 0x36, 0xf7, 0xf2, 0x5f, 0xdc, 0x02, 0x56, 0x32, 0xd8, 0xbf, 0x9f, 0x63, 0x54, 0xbb, 0x76, 0x2e, 0x06, 0xfb, 0x63, 0xe2, 0x50, }; static const unsigned char xdh_wei25519_20_sharedsecret[] = { 0xf1, 0x34, 0xe6, 0x26, 0x7b, 0xf9, 0x39, 0x03, 0x08, 0x51, 0x17, 0xb9, 0x99, 0x32, 0xcc, 0x0c, 0x7b, 0xa2, 0x6f, 0x25, 0xfc, 0xa1, 0x21, 0x02, 0xa2, 0x6d, 0x75, 0x33, 0xd9, 0xc4, 0x27, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_20 = { .name = "xdh_wei25519_20", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_20_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_20_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_20_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 21 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 21 for XDH, tcId is 22 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_21_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_21_privkey[] = { 0x68, 0xe1, 0x34, 0x09, 0x2e, 0x94, 0xe6, 0x22, 0xc8, 0xa0, 0xcd, 0x18, 0xaf, 0xf5, 0x5b, 0xe2, 0x3d, 0xab, 0xd9, 0x94, 0xeb, 0xde, 0xe9, 0x82, 0xd9, 0x06, 0x01, 0xf6, 0xf0, 0xf4, 0xb3, 0x69, }; static const unsigned char xdh_wei25519_21_sharedsecret[] = { 0x74, 0xbf, 0xc1, 0x5e, 0x55, 0x97, 0xe9, 0xf5, 0x19, 0x3f, 0x94, 0x1e, 0x10, 0xa5, 0xc0, 0x08, 0xfc, 0x89, 0xf0, 0x51, 0x39, 0x27, 0x23, 0x88, 0x6a, 0x4a, 0x8f, 0xe5, 0x09, 0x3a, 0x73, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_21 = { .name = "xdh_wei25519_21", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_21_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_21_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_21_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 22 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 22 for XDH, tcId is 23 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_22_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_22_privkey[] = { 0xe8, 0xe4, 0x3f, 0xc1, 0xeb, 0xac, 0x0b, 0xbc, 0x9b, 0x99, 0xc8, 0x03, 0x5e, 0xe1, 0xac, 0x59, 0xb9, 0x0f, 0x19, 0xa1, 0x6c, 0x42, 0xc0, 0xb9, 0x0f, 0x96, 0xad, 0xfc, 0xc5, 0xfd, 0xee, 0x78, }; static const unsigned char xdh_wei25519_22_sharedsecret[] = { 0x0d, 0x41, 0xa5, 0xb3, 0xaf, 0x77, 0x0b, 0xf2, 0xfc, 0xd3, 0x4f, 0xf7, 0x97, 0x22, 0x43, 0xa0, 0xe2, 0xcf, 0x4d, 0x34, 0xf2, 0x04, 0x6a, 0x14, 0x45, 0x81, 0xae, 0x1e, 0xc6, 0x8d, 0xf0, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_22 = { .name = "xdh_wei25519_22", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_22_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_22_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_22_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 23 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 23 for XDH, tcId is 24 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_23_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_23_privkey[] = { 0x18, 0xbf, 0xfb, 0x16, 0xf9, 0x26, 0x80, 0xa9, 0xe2, 0x67, 0x47, 0x3e, 0x43, 0xc4, 0x64, 0x47, 0x6d, 0x53, 0x72, 0xdd, 0xd1, 0xf6, 0x64, 0xf3, 0xd0, 0x67, 0x8e, 0xfe, 0x7c, 0x98, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_23_sharedsecret[] = { 0x58, 0x94, 0xe0, 0x96, 0x35, 0x83, 0xae, 0x14, 0xa0, 0xb8, 0x04, 0x20, 0x89, 0x41, 0x67, 0xf4, 0xb7, 0x59, 0xc8, 0xd2, 0xeb, 0x9b, 0x69, 0xcb, 0x67, 0x55, 0x43, 0xf6, 0x65, 0x10, 0xf6, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_23 = { .name = "xdh_wei25519_23", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_23_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_23_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_23_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 24 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 24 for XDH, tcId is 25 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_24_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_24_privkey[] = { 0x30, 0x03, 0x05, 0xeb, 0x00, 0x2b, 0xf8, 0x6c, 0x71, 0xfe, 0x9c, 0x0b, 0x31, 0x19, 0x93, 0x72, 0x7b, 0x9d, 0xc6, 0x18, 0xd0, 0xce, 0x72, 0x51, 0xd0, 0xdf, 0xd8, 0x55, 0x2d, 0x17, 0x90, 0x5d, }; static const unsigned char xdh_wei25519_24_sharedsecret[] = { 0xf8, 0x62, 0x4d, 0x6e, 0x35, 0xe6, 0xc5, 0x48, 0xac, 0x47, 0x83, 0x2f, 0x2e, 0x5d, 0x15, 0x1a, 0x8e, 0x53, 0xb9, 0x29, 0x03, 0x63, 0xb2, 0x8d, 0x2a, 0xb8, 0xd8, 0x4a, 0xb7, 0xcb, 0x6a, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_24 = { .name = "xdh_wei25519_24", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_24_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_24_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_24_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 25 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 25 for XDH, tcId is 26 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_25_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_25_privkey[] = { 0x80, 0xda, 0x9f, 0x02, 0x84, 0x22, 0x47, 0xd4, 0xad, 0xe5, 0xdd, 0xba, 0xc5, 0x1d, 0xbc, 0xe5, 0x5e, 0xa7, 0xdc, 0xa2, 0x84, 0x4e, 0x7f, 0x97, 0xab, 0x89, 0x87, 0xce, 0x7f, 0xd8, 0xbc, 0x71, }; static const unsigned char xdh_wei25519_25_sharedsecret[] = { 0xbf, 0xe1, 0x83, 0xba, 0x3d, 0x41, 0x57, 0xa7, 0xb5, 0x3e, 0xf1, 0x78, 0x61, 0x3d, 0xb6, 0x19, 0xe2, 0x78, 0x00, 0xf8, 0x53, 0x59, 0xc0, 0xb3, 0x9a, 0x9f, 0xd6, 0xe3, 0x21, 0x52, 0xc2, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_25 = { .name = "xdh_wei25519_25", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_25_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_25_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_25_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 26 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 26 for XDH, tcId is 27 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_26_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_26_privkey[] = { 0x80, 0x6e, 0x7f, 0x26, 0xca, 0x32, 0x46, 0xde, 0x81, 0x82, 0x94, 0x6c, 0xbe, 0xd0, 0x9f, 0x52, 0xb9, 0x5d, 0xa6, 0x26, 0xc8, 0x23, 0xc7, 0xb5, 0x04, 0x50, 0x00, 0x1a, 0x47, 0xb7, 0xb2, 0x52, }; static const unsigned char xdh_wei25519_26_sharedsecret[] = { 0xbc, 0xa4, 0xa0, 0x72, 0x4f, 0x5c, 0x1f, 0xeb, 0x18, 0x40, 0x78, 0x44, 0x8c, 0x89, 0x8c, 0x86, 0x20, 0xe7, 0xca, 0xf8, 0x1f, 0x64, 0xcc, 0xa7, 0x46, 0xf5, 0x57, 0xdf, 0xf2, 0x49, 0x88, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_26 = { .name = "xdh_wei25519_26", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_26_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_26_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_26_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 27 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 27 for XDH, tcId is 28 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_27_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_27_privkey[] = { 0x58, 0x35, 0x4f, 0xd6, 0x4b, 0xc0, 0x22, 0xcb, 0xa3, 0xa7, 0x1b, 0x2a, 0xe6, 0x42, 0x81, 0xe4, 0xea, 0x7b, 0xf6, 0xd6, 0x5f, 0xdb, 0xae, 0xad, 0x14, 0x40, 0xee, 0xb1, 0x86, 0x04, 0xfe, 0x62, }; static const unsigned char xdh_wei25519_27_sharedsecret[] = { 0xb3, 0x41, 0x8a, 0x52, 0x46, 0x4c, 0x15, 0xab, 0x0c, 0xac, 0xbb, 0xd4, 0x38, 0x87, 0xa1, 0x19, 0x92, 0x06, 0xd5, 0x92, 0x29, 0xce, 0xd4, 0x92, 0x02, 0x30, 0x06, 0x38, 0xd7, 0xa4, 0x0f, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_27 = { .name = "xdh_wei25519_27", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_27_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_27_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_27_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 28 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 28 for XDH, tcId is 29 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_28_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_28_privkey[] = { 0xf0, 0x01, 0x9c, 0xf0, 0x51, 0x59, 0x79, 0x4c, 0xc8, 0x05, 0x2b, 0x00, 0xc2, 0xe7, 0x5b, 0x7f, 0x46, 0xfb, 0x66, 0x93, 0xc4, 0xb3, 0x8c, 0x02, 0xb1, 0x2a, 0x4f, 0xe2, 0x72, 0xe8, 0x55, 0x6a, }; static const unsigned char xdh_wei25519_28_sharedsecret[] = { 0xfc, 0xde, 0x6e, 0x0a, 0x3d, 0x5f, 0xd5, 0xb6, 0x3f, 0x10, 0xc2, 0xd3, 0xaa, 0xd4, 0xef, 0xa0, 0x51, 0x96, 0xf2, 0x6b, 0xc0, 0xcb, 0x26, 0xfd, 0x6d, 0x9d, 0x3b, 0xd0, 0x15, 0xea, 0xa7, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_28 = { .name = "xdh_wei25519_28", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_28_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_28_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_28_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 29 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 29 for XDH, tcId is 30 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_29_peerpubkey[] = { 0xed, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_29_privkey[] = { 0xd0, 0xfc, 0xa6, 0x4c, 0xc5, 0xf3, 0xa0, 0xc8, 0xe7, 0x5c, 0x82, 0x4e, 0x8b, 0x09, 0xd1, 0x61, 0x5a, 0xa7, 0x9a, 0xeb, 0xa1, 0x39, 0xbb, 0x73, 0x02, 0xe2, 0xbb, 0x2f, 0xcb, 0xe5, 0x4b, 0x40, }; static const unsigned char xdh_wei25519_29_sharedsecret[] = { 0x7d, 0x62, 0xf1, 0x89, 0x44, 0x4c, 0x62, 0x31, 0xa4, 0x8a, 0xfa, 0xb1, 0x0a, 0x0a, 0xf2, 0xee, 0xe4, 0xa5, 0x2e, 0x43, 0x1e, 0xa0, 0x5f, 0xf7, 0x81, 0xd6, 0x16, 0xaf, 0x21, 0x14, 0x67, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_29 = { .name = "xdh_wei25519_29", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_29_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_29_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_29_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 30 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 30 for XDH, tcId is 31 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_30_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_30_privkey[] = { 0xd0, 0x24, 0x56, 0xe4, 0x56, 0x91, 0x1d, 0x3c, 0x6c, 0xd0, 0x54, 0x93, 0x31, 0x99, 0x80, 0x77, 0x32, 0xdf, 0xdc, 0x95, 0x86, 0x42, 0xad, 0x1a, 0xeb, 0xe9, 0x00, 0xc7, 0x93, 0xbe, 0xf2, 0x4a, }; static const unsigned char xdh_wei25519_30_sharedsecret[] = { 0x07, 0xba, 0x5f, 0xcb, 0xda, 0x21, 0xa9, 0xa1, 0x78, 0x45, 0xc4, 0x01, 0x49, 0x2b, 0x10, 0xe6, 0xde, 0x0a, 0x16, 0x8d, 0x5c, 0x94, 0xb6, 0x06, 0x69, 0x4c, 0x11, 0xba, 0xc3, 0x9b, 0xea, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_30 = { .name = "xdh_wei25519_30", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_30_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_30_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_30_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 31 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 31 for XDH, tcId is 32 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_31_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_31_privkey[] = { 0x88, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0x5e, }; static const unsigned char xdh_wei25519_31_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_31 = { .name = "xdh_wei25519_31", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_31_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_31_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_31_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 0, tcId is 32 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 32 for XDH, tcId is 33 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_32_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_32_privkey[] = { 0x48, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0x4f, }; static const unsigned char xdh_wei25519_32_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_32 = { .name = "xdh_wei25519_32", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_32_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_32_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_32_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 1, tcId is 33 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 33 for XDH, tcId is 34 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_33_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_33_privkey[] = { 0xa8, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x5a, }; static const unsigned char xdh_wei25519_33_sharedsecret[] = { 0x34, 0xb7, 0xe4, 0xfa, 0x53, 0x26, 0x44, 0x20, 0xd9, 0xf9, 0x43, 0xd1, 0x55, 0x13, 0x90, 0x23, 0x42, 0xb3, 0x86, 0xb1, 0x72, 0xa0, 0xb0, 0xb7, 0xc8, 0xb8, 0xf2, 0xdd, 0x3d, 0x66, 0x9f, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_33 = { .name = "xdh_wei25519_33", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_33_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_33_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_33_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 34 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 34 for XDH, tcId is 35 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_34_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_34_privkey[] = { 0xd0, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0x7d, }; static const unsigned char xdh_wei25519_34_sharedsecret[] = { 0x3a, 0xa2, 0x27, 0xa3, 0x07, 0x81, 0xed, 0x74, 0x6b, 0xd4, 0xb3, 0x36, 0x5e, 0x5f, 0x61, 0x46, 0x1b, 0x84, 0x4d, 0x09, 0x41, 0x0c, 0x70, 0x57, 0x0a, 0xbd, 0x0d, 0x75, 0x57, 0x4d, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_34 = { .name = "xdh_wei25519_34", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_34_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_34_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_34_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 35 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 35 for XDH, tcId is 36 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_35_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_35_privkey[] = { 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0x6b, }; static const unsigned char xdh_wei25519_35_sharedsecret[] = { 0x97, 0x75, 0x5e, 0x7e, 0x77, 0x57, 0x89, 0x18, 0x4e, 0x17, 0x68, 0x47, 0xff, 0xbc, 0x2f, 0x8e, 0xf9, 0x87, 0x99, 0xd4, 0x6a, 0x70, 0x9c, 0x6a, 0x1c, 0x0f, 0xfd, 0x29, 0x08, 0x1d, 0x70, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_35 = { .name = "xdh_wei25519_35", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_35_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_35_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_35_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 36 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 36 for XDH, tcId is 37 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_36_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_36_privkey[] = { 0xd0, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0x75, }; static const unsigned char xdh_wei25519_36_sharedsecret[] = { 0xc2, 0x12, 0xbf, 0xce, 0xb9, 0x1f, 0x85, 0x88, 0xd4, 0x6c, 0xd9, 0x46, 0x84, 0xc2, 0xc9, 0xee, 0x07, 0x34, 0x08, 0x77, 0x96, 0xdc, 0x0a, 0x9f, 0x34, 0x04, 0xff, 0x53, 0x40, 0x12, 0x12, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_36 = { .name = "xdh_wei25519_36", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_36_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_36_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_36_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 37 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 37 for XDH, tcId is 38 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_37_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_37_privkey[] = { 0x38, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0x4d, }; static const unsigned char xdh_wei25519_37_sharedsecret[] = { 0x38, 0x8f, 0xaf, 0xfb, 0x4a, 0x85, 0xd0, 0x67, 0x02, 0xba, 0x3e, 0x47, 0x9c, 0x6b, 0x21, 0x6a, 0x8f, 0x33, 0xef, 0xce, 0x05, 0x42, 0x97, 0x9b, 0xf1, 0x29, 0xd8, 0x60, 0xf9, 0x3b, 0x9f, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_37 = { .name = "xdh_wei25519_37", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_37_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_37_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_37_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 38 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 38 for XDH, tcId is 39 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_38_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_38_privkey[] = { 0xe0, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0x7f, }; static const unsigned char xdh_wei25519_38_sharedsecret[] = { 0x87, 0x7f, 0xec, 0x06, 0x69, 0xd8, 0xc1, 0xa5, 0xc8, 0x66, 0x64, 0x14, 0x20, 0xee, 0xa9, 0xf6, 0xbd, 0x1d, 0xfd, 0x38, 0xd3, 0x6a, 0x5d, 0x55, 0xa8, 0xc0, 0xab, 0x2b, 0xf3, 0x10, 0x5c, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_38 = { .name = "xdh_wei25519_38", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_38_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_38_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_38_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 39 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 39 for XDH, tcId is 40 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_39_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_39_privkey[] = { 0xf0, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0x56, }; static const unsigned char xdh_wei25519_39_sharedsecret[] = { 0x18, 0x03, 0x73, 0xea, 0x0f, 0x23, 0xea, 0x73, 0x44, 0x7e, 0x5a, 0x90, 0x39, 0x8a, 0x97, 0xd4, 0x90, 0xb5, 0x41, 0xc6, 0x93, 0x20, 0x71, 0x9d, 0x7d, 0xd7, 0x33, 0xfb, 0x80, 0xd5, 0x48, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_39 = { .name = "xdh_wei25519_39", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_39_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_39_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_39_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 40 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 40 for XDH, tcId is 41 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_40_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_40_privkey[] = { 0xe8, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0x77, }; static const unsigned char xdh_wei25519_40_sharedsecret[] = { 0x20, 0x81, 0x42, 0x35, 0x0a, 0xf9, 0x38, 0xab, 0xa5, 0x2a, 0x15, 0x6d, 0xce, 0x19, 0xd3, 0xc2, 0x7a, 0xb1, 0x62, 0x87, 0x29, 0x68, 0x3c, 0xf4, 0xef, 0x26, 0x67, 0xc3, 0xdc, 0x60, 0xcf, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_40 = { .name = "xdh_wei25519_40", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_40_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_40_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_40_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 41 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 41 for XDH, tcId is 42 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_41_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_41_privkey[] = { 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x54, }; static const unsigned char xdh_wei25519_41_sharedsecret[] = { 0x1c, 0x32, 0x63, 0x89, 0x0f, 0x7a, 0x08, 0x1c, 0xef, 0xe5, 0x0c, 0xb9, 0x2a, 0xbd, 0x49, 0x65, 0x82, 0xd9, 0x0d, 0xcc, 0x2b, 0x9c, 0xb8, 0x58, 0xbd, 0x28, 0x68, 0x54, 0xaa, 0x6b, 0x0a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_41 = { .name = "xdh_wei25519_41", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_41_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_41_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_41_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 42 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 42 for XDH, tcId is 43 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_42_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_42_privkey[] = { 0xa8, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0x63, }; static const unsigned char xdh_wei25519_42_sharedsecret[] = { 0x56, 0x12, 0x8e, 0x78, 0xd7, 0xc6, 0x6f, 0x48, 0xe8, 0x63, 0xe7, 0xe6, 0xf2, 0xca, 0xa9, 0xc0, 0x98, 0x8f, 0xd4, 0x39, 0xde, 0xac, 0x11, 0xd4, 0xaa, 0xc9, 0x66, 0x40, 0x83, 0x08, 0x7f, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_42 = { .name = "xdh_wei25519_42", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_42_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_42_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_42_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 43 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 43 for XDH, tcId is 44 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_43_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_43_privkey[] = { 0x98, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x4e, }; static const unsigned char xdh_wei25519_43_sharedsecret[] = { 0x30, 0xec, 0xa5, 0x6f, 0x1f, 0x1c, 0x2e, 0x8f, 0xf7, 0x80, 0x13, 0x4e, 0x0e, 0x93, 0x82, 0xc5, 0x92, 0x7d, 0x30, 0x5d, 0x86, 0xb5, 0x34, 0x77, 0xe9, 0xae, 0xca, 0x79, 0xfc, 0x9c, 0xed, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_43 = { .name = "xdh_wei25519_43", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_43_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_43_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_43_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 44 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 44 for XDH, tcId is 45 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_44_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_44_privkey[] = { 0xd8, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x40, }; static const unsigned char xdh_wei25519_44_sharedsecret[] = { 0xcb, 0x21, 0xb7, 0xaa, 0x3f, 0x99, 0x2e, 0xcf, 0xc9, 0x29, 0x54, 0x84, 0x91, 0x54, 0xb3, 0xaf, 0x6b, 0x96, 0xa0, 0x1f, 0x17, 0xbf, 0x21, 0xc6, 0x12, 0xda, 0x74, 0x8d, 0xb3, 0x8e, 0xb3, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_44 = { .name = "xdh_wei25519_44", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_44_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_44_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_44_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 45 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 45 for XDH, tcId is 46 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_45_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_45_privkey[] = { 0xa0, 0x93, 0x3e, 0xe3, 0x05, 0x12, 0xb2, 0x5e, 0xe4, 0xe9, 0x00, 0xaa, 0xa0, 0x7f, 0x73, 0xe5, 0x07, 0xa8, 0xec, 0x53, 0xb5, 0x3a, 0x44, 0x62, 0x6e, 0x0f, 0x58, 0x9a, 0xf4, 0xe0, 0x35, 0x6c, }; static const unsigned char xdh_wei25519_45_sharedsecret[] = { 0xc5, 0xca, 0xf8, 0xca, 0xbc, 0x36, 0xf0, 0x86, 0xde, 0xaf, 0x1a, 0xb2, 0x26, 0x43, 0x40, 0x98, 0xc2, 0x22, 0xab, 0xdf, 0x8a, 0xcd, 0x3c, 0xe7, 0x5c, 0x75, 0xe9, 0xde, 0xbb, 0x27, 0x15, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_45 = { .name = "xdh_wei25519_45", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_45_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_45_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_45_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 46 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 46 for XDH, tcId is 47 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_46_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_46_privkey[] = { 0x38, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0x73, }; static const unsigned char xdh_wei25519_46_sharedsecret[] = { 0x4d, 0x46, 0x05, 0x2c, 0x7e, 0xab, 0xba, 0x21, 0x5d, 0xf8, 0xd9, 0x13, 0x27, 0xe0, 0xc4, 0x61, 0x04, 0x21, 0xd2, 0xd9, 0x12, 0x9b, 0x14, 0x86, 0xd9, 0x14, 0xc7, 0x66, 0xcf, 0x10, 0x4c, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_46 = { .name = "xdh_wei25519_46", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_46_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_46_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_46_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 47 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 47 for XDH, tcId is 48 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_47_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const unsigned char xdh_wei25519_47_privkey[] = { 0x18, 0x21, 0x91, 0xb7, 0x05, 0x2e, 0x9c, 0xd6, 0x30, 0xef, 0x08, 0x00, 0x7f, 0xc6, 0xb4, 0x3b, 0xc7, 0x65, 0x29, 0x13, 0xbe, 0x67, 0x74, 0xe2, 0xfd, 0x27, 0x1b, 0x71, 0xb9, 0x62, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_47_sharedsecret[] = { 0xa0, 0xe0, 0x31, 0x51, 0x75, 0x78, 0x83, 0x62, 0xd4, 0xeb, 0xe0, 0x5e, 0x6a, 0xc7, 0x6d, 0x52, 0xd4, 0x01, 0x87, 0xbd, 0x68, 0x74, 0x92, 0xaf, 0x05, 0xab, 0xc7, 0xba, 0x7c, 0x70, 0x19, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_47 = { .name = "xdh_wei25519_47", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_47_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_47_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_47_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 48 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 48 for XDH, tcId is 49 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_48_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, }; static const unsigned char xdh_wei25519_48_privkey[] = { 0x10, 0x62, 0x21, 0xfe, 0x56, 0x94, 0xa7, 0x10, 0xd6, 0xe1, 0x47, 0x69, 0x6c, 0x5d, 0x5b, 0x93, 0xd6, 0x88, 0x7d, 0x58, 0x4f, 0x24, 0xf2, 0x28, 0x18, 0x2e, 0xbe, 0x1b, 0x1d, 0x2d, 0xb8, 0x5d, }; static const unsigned char xdh_wei25519_48_sharedsecret[] = { 0x5e, 0x64, 0x92, 0x4b, 0x91, 0x87, 0x3b, 0x49, 0x9a, 0x54, 0x02, 0xfa, 0x64, 0x33, 0x7c, 0x65, 0xd4, 0xb2, 0xed, 0x54, 0xbe, 0xeb, 0x3f, 0xa5, 0xd7, 0x34, 0x78, 0x09, 0xe4, 0x3a, 0xef, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_48 = { .name = "xdh_wei25519_48", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_48_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_48_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_48_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 49 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 49 for XDH, tcId is 50 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_49_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_49_privkey[] = { 0xd0, 0x35, 0xde, 0x94, 0x56, 0x08, 0x0d, 0x85, 0xa9, 0x12, 0x08, 0x3b, 0x2e, 0x3c, 0x7d, 0xdd, 0x79, 0x71, 0xf7, 0x86, 0xf2, 0x5a, 0x96, 0xc5, 0xe7, 0x82, 0xcf, 0x6f, 0x43, 0x76, 0xe3, 0x62, }; static const unsigned char xdh_wei25519_49_sharedsecret[] = { 0xc0, 0x52, 0x46, 0x6f, 0x97, 0x12, 0xd9, 0xec, 0x4e, 0xf4, 0x0f, 0x27, 0x6b, 0xb7, 0xe6, 0x44, 0x1c, 0x54, 0x34, 0xa8, 0x3e, 0xfd, 0x8e, 0x41, 0xd2, 0x0c, 0xe8, 0x3f, 0x2d, 0xbf, 0x59, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_49 = { .name = "xdh_wei25519_49", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_49_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_49_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_49_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 50 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 50 for XDH, tcId is 51 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_50_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_50_privkey[] = { 0xa8, 0xf3, 0x73, 0x18, 0xa4, 0xc7, 0x60, 0xf3, 0xcb, 0x2d, 0x89, 0x48, 0x22, 0x91, 0x87, 0x35, 0x68, 0x3c, 0xb1, 0xed, 0xac, 0xf3, 0xe6, 0x66, 0xe1, 0x56, 0x94, 0x15, 0x49, 0x78, 0xfd, 0x6d, }; static const unsigned char xdh_wei25519_50_sharedsecret[] = { 0xd1, 0x51, 0xb9, 0x7c, 0xba, 0x9c, 0x25, 0xd4, 0x8e, 0x6d, 0x57, 0x63, 0x38, 0xb9, 0x7d, 0x53, 0xdd, 0x8b, 0x25, 0xe8, 0x4f, 0x65, 0xf7, 0xa2, 0x09, 0x1a, 0x17, 0x01, 0x63, 0x17, 0xc5, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_50 = { .name = "xdh_wei25519_50", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_50_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_50_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_50_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 51 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 51 for XDH, tcId is 52 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_51_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_51_privkey[] = { 0x20, 0xd4, 0xd6, 0x24, 0xcf, 0x73, 0x2f, 0x82, 0x6f, 0x09, 0xe8, 0x08, 0x80, 0x17, 0x74, 0x2f, 0x13, 0xf2, 0xda, 0x98, 0xf4, 0xdc, 0xf4, 0xb4, 0x05, 0x19, 0xad, 0xb7, 0x90, 0xce, 0xbf, 0x64, }; static const unsigned char xdh_wei25519_51_sharedsecret[] = { 0x57, 0x16, 0x29, 0x6b, 0xaf, 0x2b, 0x1a, 0x6b, 0x9c, 0xd1, 0x5b, 0x23, 0xba, 0x86, 0x82, 0x97, 0x43, 0xd6, 0x0b, 0x03, 0x96, 0x56, 0x9b, 0xe1, 0xd5, 0xb4, 0x00, 0x14, 0xc0, 0x6b, 0x47, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_51 = { .name = "xdh_wei25519_51", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_51_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_51_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_51_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 52 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 52 for XDH, tcId is 53 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_52_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_52_privkey[] = { 0xd8, 0x06, 0xa7, 0x35, 0xd1, 0x38, 0xef, 0xb3, 0xb4, 0x04, 0x68, 0x3c, 0x9d, 0x84, 0x48, 0x5a, 0xb4, 0xaf, 0x54, 0x0d, 0x0a, 0xf2, 0x53, 0xb5, 0x74, 0x32, 0x3d, 0x89, 0x13, 0x00, 0x3c, 0x66, }; static const unsigned char xdh_wei25519_52_sharedsecret[] = { 0xdd, 0xbd, 0x56, 0xd0, 0x45, 0x4b, 0x79, 0x4c, 0x1d, 0x1d, 0x49, 0x23, 0xf0, 0x23, 0xa5, 0x1f, 0x6f, 0x34, 0xef, 0x3f, 0x48, 0x68, 0xe3, 0xd6, 0x65, 0x93, 0x07, 0xc6, 0x83, 0xc7, 0x41, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_52 = { .name = "xdh_wei25519_52", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_52_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_52_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_52_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 53 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 53 for XDH, tcId is 54 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_53_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_53_privkey[] = { 0x18, 0x41, 0x98, 0xc6, 0x22, 0x81, 0x77, 0xf3, 0xef, 0x41, 0xdc, 0x9a, 0x34, 0x12, 0x58, 0xf8, 0x18, 0x1a, 0xe3, 0x65, 0xfe, 0x9e, 0xc9, 0x8d, 0x93, 0x63, 0x9b, 0x0b, 0xbe, 0xe1, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_53_sharedsecret[] = { 0x80, 0x39, 0xee, 0xbe, 0xd1, 0xa4, 0xf3, 0xb8, 0x11, 0xea, 0x92, 0x10, 0x2a, 0x62, 0x67, 0xd4, 0xda, 0x41, 0x23, 0x70, 0xf3, 0xf0, 0xd6, 0xb7, 0x0f, 0x1f, 0xaa, 0xa2, 0xe8, 0xd5, 0x23, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_53 = { .name = "xdh_wei25519_53", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_53_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_53_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_53_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 54 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 54 for XDH, tcId is 55 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_54_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_54_privkey[] = { 0xf0, 0xa4, 0x6a, 0x7f, 0x4b, 0x98, 0x9f, 0xe5, 0x15, 0xed, 0xc4, 0x41, 0x10, 0x93, 0x46, 0xba, 0x74, 0x6e, 0xc1, 0x51, 0x68, 0x96, 0xec, 0x5b, 0x7e, 0x4f, 0x4d, 0x90, 0x30, 0x64, 0xb4, 0x63, }; static const unsigned char xdh_wei25519_54_sharedsecret[] = { 0xb6, 0x95, 0x24, 0xe3, 0x95, 0x5d, 0xa2, 0x3d, 0xf6, 0xad, 0x1a, 0x7c, 0xd3, 0x85, 0x40, 0x04, 0x7f, 0x50, 0x86, 0x0f, 0x1c, 0x8f, 0xde, 0xd9, 0xb1, 0xfd, 0xfc, 0xc9, 0xe8, 0x12, 0xa0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_54 = { .name = "xdh_wei25519_54", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_54_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_54_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_54_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 55 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 55 for XDH, tcId is 56 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_55_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_55_privkey[] = { 0x88, 0x18, 0x74, 0xfd, 0xa3, 0xa9, 0x9c, 0x0f, 0x02, 0x16, 0xe1, 0x17, 0x2f, 0xbd, 0x07, 0xab, 0x1c, 0x7d, 0xf7, 0x86, 0x02, 0xcc, 0x6b, 0x11, 0x26, 0x4e, 0x57, 0xaa, 0xb5, 0xf2, 0x3a, 0x49, }; static const unsigned char xdh_wei25519_55_sharedsecret[] = { 0xe4, 0x17, 0xbb, 0x88, 0x54, 0xf3, 0xb4, 0xf7, 0x0e, 0xce, 0xa5, 0x57, 0x45, 0x4c, 0x5c, 0x4e, 0x5f, 0x38, 0x04, 0xae, 0x53, 0x79, 0x60, 0xa8, 0x09, 0x7b, 0x9f, 0x33, 0x84, 0x10, 0xd7, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_55 = { .name = "xdh_wei25519_55", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_55_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_55_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_55_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 56 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 56 for XDH, tcId is 57 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_56_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_56_privkey[] = { 0xb8, 0xd0, 0xf1, 0xae, 0x05, 0xa5, 0x07, 0x28, 0x31, 0x44, 0x31, 0x50, 0xe2, 0x02, 0xac, 0x6d, 0xb0, 0x03, 0x22, 0xcd, 0xf3, 0x41, 0xf4, 0x67, 0xe9, 0xf2, 0x96, 0x58, 0x8b, 0x04, 0xdb, 0x72, }; static const unsigned char xdh_wei25519_56_sharedsecret[] = { 0xaf, 0xca, 0x72, 0xbb, 0x8e, 0xf7, 0x27, 0xb6, 0x0c, 0x53, 0x0c, 0x93, 0x7a, 0x2f, 0x7d, 0x06, 0xbb, 0x39, 0xc3, 0x9b, 0x90, 0x3a, 0x7f, 0x44, 0x35, 0xb3, 0xf5, 0xd8, 0xfc, 0x1c, 0xa8, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_56 = { .name = "xdh_wei25519_56", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_56_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_56_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_56_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 57 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 57 for XDH, tcId is 58 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_57_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_57_privkey[] = { 0xc8, 0x61, 0x9b, 0xa9, 0x88, 0x85, 0x9d, 0xb7, 0xd6, 0xf2, 0x0f, 0xbf, 0x3f, 0xfb, 0x8b, 0x11, 0x34, 0x18, 0xcc, 0x27, 0x80, 0x65, 0xb4, 0xe8, 0xbb, 0x6d, 0x4e, 0x5b, 0x3e, 0x7c, 0xb5, 0x69, }; static const unsigned char xdh_wei25519_57_sharedsecret[] = { 0x7e, 0x41, 0xc2, 0x88, 0x6f, 0xed, 0x4a, 0xf0, 0x4c, 0x16, 0x41, 0xa5, 0x9a, 0xf9, 0x38, 0x02, 0xf2, 0x5a, 0xf0, 0xf9, 0xcb, 0xa7, 0xa2, 0x9a, 0xe7, 0x2e, 0x2a, 0x92, 0xf3, 0x5a, 0x1e, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_57 = { .name = "xdh_wei25519_57", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_57_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_57_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_57_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 58 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 58 for XDH, tcId is 59 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_58_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_58_privkey[] = { 0xf8, 0xd4, 0xca, 0x1f, 0x37, 0xa3, 0x0e, 0xc9, 0xac, 0xd6, 0xdb, 0xe5, 0xa6, 0xe1, 0x50, 0xe5, 0xbc, 0x44, 0x7d, 0x22, 0xb3, 0x55, 0xd8, 0x0b, 0xa0, 0x02, 0xc5, 0xb0, 0x5c, 0x26, 0x93, 0x5d, }; static const unsigned char xdh_wei25519_58_sharedsecret[] = { 0xdd, 0x3a, 0xbd, 0x47, 0x46, 0xbf, 0x4f, 0x2a, 0x0d, 0x93, 0xc0, 0x2a, 0x7d, 0x19, 0xf7, 0x6d, 0x92, 0x1c, 0x09, 0x0d, 0x07, 0xe6, 0xea, 0x5a, 0xba, 0xe7, 0xf2, 0x88, 0x48, 0x35, 0x59, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_58 = { .name = "xdh_wei25519_58", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_58_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_58_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_58_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 59 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 59 for XDH, tcId is 60 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_59_peerpubkey[] = { 0xed, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_59_privkey[] = { 0x88, 0x03, 0x7a, 0xc8, 0xe3, 0x3c, 0x72, 0xc2, 0xc5, 0x10, 0x37, 0xc7, 0xc8, 0xc5, 0x28, 0x8b, 0xba, 0x92, 0x65, 0xc8, 0x2f, 0xd8, 0xc3, 0x17, 0x96, 0xdd, 0x7e, 0xa5, 0xdf, 0x9a, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_59_sharedsecret[] = { 0x8c, 0x27, 0xb3, 0xbf, 0xf8, 0xd3, 0xc1, 0xf6, 0xda, 0xf2, 0xd3, 0xb7, 0xb3, 0x47, 0x9c, 0xf9, 0xad, 0x20, 0x56, 0xe2, 0x00, 0x2b, 0xe2, 0x47, 0x99, 0x2a, 0x3b, 0x29, 0xde, 0x13, 0xa6, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_59 = { .name = "xdh_wei25519_59", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_59_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_59_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_59_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 60 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 60 for XDH, tcId is 61 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_60_peerpubkey[] = { 0xed, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_60_privkey[] = { 0x50, 0x34, 0xee, 0x7b, 0xf8, 0x3a, 0x13, 0xd9, 0x16, 0x7d, 0xf8, 0x6b, 0x06, 0x40, 0x29, 0x4f, 0x36, 0x20, 0xf4, 0xf4, 0xd9, 0x03, 0x0e, 0x5e, 0x29, 0x3f, 0x91, 0x90, 0x82, 0x4a, 0xe5, 0x62, }; static const unsigned char xdh_wei25519_60_sharedsecret[] = { 0x8e, 0x1d, 0x22, 0x07, 0xb4, 0x74, 0x32, 0xf8, 0x81, 0x67, 0x74, 0x48, 0xb9, 0xd4, 0x26, 0xa3, 0x0d, 0xe1, 0xa1, 0xf3, 0xfd, 0x38, 0xca, 0xd6, 0xf4, 0xb2, 0x3d, 0xbd, 0xfe, 0x8a, 0x29, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_60 = { .name = "xdh_wei25519_60", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_60_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_60_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_60_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 61 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 61 for XDH, tcId is 62 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_61_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_61_privkey[] = { 0x40, 0xbd, 0x4e, 0x1c, 0xaf, 0x39, 0xd9, 0xde, 0xf7, 0x66, 0x38, 0x23, 0x50, 0x2d, 0xad, 0x3e, 0x7d, 0x30, 0xeb, 0x6e, 0xb0, 0x1e, 0x9b, 0x89, 0x51, 0x6d, 0x4f, 0x2f, 0x45, 0xb7, 0xcd, 0x7f, }; static const unsigned char xdh_wei25519_61_sharedsecret[] = { 0x2c, 0xf6, 0x97, 0x4b, 0x0c, 0x07, 0x0e, 0x37, 0x07, 0xbf, 0x92, 0xe7, 0x21, 0xd3, 0xea, 0x9d, 0xe3, 0xdb, 0x6f, 0x61, 0xed, 0x81, 0x0e, 0x0a, 0x23, 0xd7, 0x2d, 0x43, 0x33, 0x65, 0xf6, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_61 = { .name = "xdh_wei25519_61", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_61_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_61_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_61_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 62 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 62 for XDH, tcId is 63 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_62_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_62_privkey[] = { 0xe0, 0xf9, 0x78, 0xdf, 0xcd, 0x3a, 0x8f, 0x1a, 0x50, 0x93, 0x41, 0x8d, 0xe5, 0x41, 0x36, 0xa5, 0x84, 0xc2, 0x0b, 0x7b, 0x34, 0x9a, 0xfd, 0xf6, 0xc0, 0x52, 0x08, 0x86, 0xf9, 0x5b, 0x12, 0x72, }; static const unsigned char xdh_wei25519_62_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_62 = { .name = "xdh_wei25519_62", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_62_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_62_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_62_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 63 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 63 for XDH, tcId is 64 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_63_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_63_privkey[] = { 0x38, 0x73, 0x55, 0xd9, 0x95, 0x61, 0x60, 0x90, 0x50, 0x3a, 0xaf, 0xad, 0x49, 0xda, 0x01, 0xfb, 0x3d, 0xc3, 0xed, 0xa9, 0x62, 0x70, 0x4e, 0xae, 0xe6, 0xb8, 0x6f, 0x9e, 0x20, 0xc9, 0x25, 0x79, }; static const unsigned char xdh_wei25519_63_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_63 = { .name = "xdh_wei25519_63", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_63_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_63_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_63_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 64 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 64 for XDH, tcId is 65 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_64_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_64_privkey[] = { 0xc8, 0xfe, 0x0d, 0xf9, 0x2a, 0xe6, 0x8a, 0x03, 0x02, 0x3f, 0xc0, 0xc9, 0xad, 0xb9, 0x55, 0x7d, 0x31, 0xbe, 0x7f, 0xee, 0xd0, 0xd3, 0xab, 0x36, 0xc5, 0x58, 0x14, 0x3d, 0xaf, 0x4d, 0xbb, 0x40, }; static const unsigned char xdh_wei25519_64_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_64 = { .name = "xdh_wei25519_64", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_64_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_64_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_64_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 65 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 65 for XDH, tcId is 66 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_65_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_65_privkey[] = { 0xc8, 0xd7, 0x4a, 0xcd, 0xe5, 0x93, 0x4e, 0x64, 0xb9, 0x89, 0x5d, 0x5f, 0xf7, 0xaf, 0xbf, 0xfd, 0x7f, 0x70, 0x4f, 0x7d, 0xfc, 0xcf, 0xf7, 0xac, 0x28, 0xfa, 0x62, 0xa1, 0xe6, 0x41, 0x03, 0x47, }; static const unsigned char xdh_wei25519_65_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_65 = { .name = "xdh_wei25519_65", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_65_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_65_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_65_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 66 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 66 for XDH, tcId is 67 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_66_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_66_privkey[] = { 0xb8, 0x56, 0x49, 0xd5, 0x12, 0x0e, 0x01, 0xe8, 0xcc, 0xaf, 0x7b, 0x2f, 0xb8, 0xd8, 0x1b, 0x62, 0xe8, 0xad, 0x6f, 0x3d, 0x5c, 0x05, 0x53, 0xfd, 0xde, 0x19, 0x06, 0xcb, 0x9d, 0x79, 0xc0, 0x50, }; static const unsigned char xdh_wei25519_66_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_66 = { .name = "xdh_wei25519_66", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_66_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_66_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_66_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 67 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 67 for XDH, tcId is 68 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_67_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_67_privkey[] = { 0x20, 0x64, 0xb2, 0xf4, 0xc9, 0xdc, 0x97, 0xec, 0x7c, 0xf5, 0x89, 0x32, 0xfd, 0xfa, 0x32, 0x65, 0xba, 0x6e, 0xa4, 0xd1, 0x1f, 0x02, 0x59, 0xb8, 0xef, 0xc8, 0xaf, 0xb3, 0x5d, 0xb8, 0x8c, 0x48, }; static const unsigned char xdh_wei25519_67_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_67 = { .name = "xdh_wei25519_67", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_67_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_67_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_67_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 68 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 68 for XDH, tcId is 69 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_68_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_68_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_68_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_68 = { .name = "xdh_wei25519_68", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_68_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_68_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_68_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 69 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 69 for XDH, tcId is 70 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_69_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_69_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_69_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_69 = { .name = "xdh_wei25519_69", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_69_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_69_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_69_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 70 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 70 for XDH, tcId is 71 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_70_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_70_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_70_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_70 = { .name = "xdh_wei25519_70", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_70_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_70_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_70_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 71 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 71 for XDH, tcId is 72 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_71_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_71_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_71_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_71 = { .name = "xdh_wei25519_71", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_71_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_71_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_71_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 72 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 72 for XDH, tcId is 73 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_72_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_72_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_72_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_72 = { .name = "xdh_wei25519_72", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_72_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_72_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_72_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 73 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 73 for XDH, tcId is 74 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_73_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_73_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_73_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_73 = { .name = "xdh_wei25519_73", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_73_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_73_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_73_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 74 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 74 for XDH, tcId is 75 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_74_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_74_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_74_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_74 = { .name = "xdh_wei25519_74", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_74_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_74_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_74_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 75 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 75 for XDH, tcId is 76 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_75_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_75_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_75_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_75 = { .name = "xdh_wei25519_75", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_75_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_75_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_75_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 76 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 76 for XDH, tcId is 77 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_76_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_76_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_76_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_76 = { .name = "xdh_wei25519_76", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_76_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_76_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_76_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 77 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 77 for XDH, tcId is 78 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_77_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_77_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_77_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_77 = { .name = "xdh_wei25519_77", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_77_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_77_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_77_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 78 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 78 for XDH, tcId is 79 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_78_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_78_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_78_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_78 = { .name = "xdh_wei25519_78", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_78_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_78_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_78_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 79 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 79 for XDH, tcId is 80 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_79_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_79_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_79_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_79 = { .name = "xdh_wei25519_79", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_79_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_79_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_79_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 80 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 80 for XDH, tcId is 81 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_80_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_80_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_80_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_80 = { .name = "xdh_wei25519_80", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_80_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_80_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_80_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 81 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 81 for XDH, tcId is 82 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_81_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_81_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_81_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_81 = { .name = "xdh_wei25519_81", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_81_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_81_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_81_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 82 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 82 for XDH, tcId is 83 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_82_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_82_privkey[] = { 0x40, 0xff, 0x58, 0x6e, 0x73, 0xd6, 0x1f, 0x09, 0x60, 0xdc, 0x2d, 0x76, 0x3a, 0xc1, 0x9e, 0x98, 0x22, 0x5f, 0x11, 0x94, 0xf6, 0xfe, 0x43, 0xd5, 0xdd, 0x97, 0xad, 0x55, 0xb3, 0xd3, 0x59, 0x61, }; static const unsigned char xdh_wei25519_82_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_82 = { .name = "xdh_wei25519_82", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_82_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_82_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_82_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819949, tcId is 83 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 83 for XDH, tcId is 84 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_83_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_83_privkey[] = { 0x58, 0x4f, 0xce, 0xae, 0xba, 0xe9, 0x44, 0xbf, 0xe9, 0x3b, 0x2e, 0x0d, 0x0a, 0x57, 0x5f, 0x70, 0x6c, 0xe5, 0xad, 0xa1, 0xda, 0x2b, 0x13, 0x11, 0xc3, 0xb4, 0x21, 0xf9, 0x18, 0x6c, 0x7a, 0x6f, }; static const unsigned char xdh_wei25519_83_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_83 = { .name = "xdh_wei25519_83", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_83_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_83_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_83_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819950, tcId is 84 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 84 for XDH, tcId is 85 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_84_peerpubkey[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_84_privkey[] = { 0x00, 0x16, 0xb6, 0x2a, 0xf5, 0xca, 0xbd, 0xe8, 0xc4, 0x09, 0x38, 0xeb, 0xf2, 0x10, 0x8e, 0x05, 0xd2, 0x7f, 0xa0, 0x53, 0x3e, 0xd8, 0x5d, 0x70, 0x01, 0x5a, 0xd4, 0xad, 0x39, 0x76, 0x2d, 0x54, }; static const unsigned char xdh_wei25519_84_sharedsecret[] = { 0xb4, 0xd1, 0x0e, 0x83, 0x27, 0x14, 0x97, 0x2f, 0x96, 0xbd, 0x33, 0x82, 0xe4, 0xd0, 0x82, 0xa2, 0x1a, 0x83, 0x33, 0xa1, 0x63, 0x15, 0xb3, 0xff, 0xb5, 0x36, 0x06, 0x1d, 0x24, 0x82, 0x36, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_84 = { .name = "xdh_wei25519_84", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_84_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_84_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_84_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 85 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 85 for XDH, tcId is 86 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_85_peerpubkey[] = { 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_85_privkey[] = { 0xd8, 0x36, 0x50, 0xba, 0x7c, 0xec, 0x11, 0x58, 0x81, 0x91, 0x62, 0x55, 0xe3, 0xfa, 0x5f, 0xa0, 0xd6, 0xb8, 0xdc, 0xf9, 0x68, 0x73, 0x1b, 0xd2, 0xc9, 0xd2, 0xae, 0xc3, 0xf5, 0x61, 0xf6, 0x49, }; static const unsigned char xdh_wei25519_85_sharedsecret[] = { 0x51, 0x5e, 0xac, 0x8f, 0x1e, 0xd0, 0xb0, 0x0c, 0x70, 0x76, 0x23, 0x22, 0xc3, 0xef, 0x86, 0x71, 0x6c, 0xd2, 0xc5, 0x1f, 0xe7, 0x7c, 0xec, 0x3d, 0x31, 0xb6, 0x38, 0x8b, 0xc6, 0xee, 0xa3, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_85 = { .name = "xdh_wei25519_85", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_85_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_85_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_85_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 86 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 86 for XDH, tcId is 87 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_86_peerpubkey[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_86_privkey[] = { 0x88, 0xdd, 0x14, 0xe2, 0x71, 0x1e, 0xbd, 0x0b, 0x00, 0x26, 0xc6, 0x51, 0x26, 0x4c, 0xa9, 0x65, 0xe7, 0xe3, 0xda, 0x50, 0x82, 0x78, 0x9f, 0xba, 0xb7, 0xe2, 0x44, 0x25, 0xe7, 0xb4, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_86_sharedsecret[] = { 0x69, 0x19, 0x99, 0x2d, 0x6a, 0x59, 0x1e, 0x77, 0xb3, 0xf2, 0xba, 0xcb, 0xd7, 0x4c, 0xaf, 0x3a, 0xea, 0x4b, 0xe4, 0x80, 0x2b, 0x18, 0xb2, 0xbc, 0x07, 0xeb, 0x09, 0xad, 0xe3, 0xad, 0x66, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_86 = { .name = "xdh_wei25519_86", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_86_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_86_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_86_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 87 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 87 for XDH, tcId is 88 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_87_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_87_privkey[] = { 0x98, 0xc2, 0xb0, 0x8c, 0xba, 0xc1, 0x4e, 0x15, 0x95, 0x31, 0x54, 0xe3, 0xb5, 0x58, 0xd4, 0x2b, 0xb1, 0x26, 0x8a, 0x36, 0x5b, 0x0e, 0xf2, 0xf2, 0x27, 0x25, 0x12, 0x9d, 0x8a, 0xc5, 0xcb, 0x7f, }; static const unsigned char xdh_wei25519_87_sharedsecret[] = { 0x9c, 0x03, 0x4f, 0xcd, 0x8d, 0x3b, 0xf6, 0x99, 0x64, 0x95, 0x8c, 0x01, 0x05, 0x16, 0x1f, 0xcb, 0x5d, 0x1e, 0xa5, 0xb8, 0xf8, 0xab, 0xb3, 0x71, 0x49, 0x1e, 0x42, 0xa7, 0x68, 0x4c, 0x23, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_87 = { .name = "xdh_wei25519_87", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_87_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_87_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_87_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 88 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 88 for XDH, tcId is 89 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_88_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_88_privkey[] = { 0xc0, 0x69, 0x7b, 0x6f, 0x05, 0xe0, 0xf3, 0x43, 0x3b, 0x44, 0xea, 0x35, 0x2f, 0x20, 0x50, 0x8e, 0xb0, 0x62, 0x30, 0x98, 0xa7, 0x77, 0x08, 0x53, 0xaf, 0x5c, 0xa0, 0x97, 0x27, 0x34, 0x0c, 0x4e, }; static const unsigned char xdh_wei25519_88_sharedsecret[] = { 0xed, 0x18, 0xb0, 0x6d, 0xa5, 0x12, 0xca, 0xb6, 0x3f, 0x22, 0xd2, 0xd5, 0x1d, 0x77, 0xd9, 0x9f, 0xac, 0xd3, 0xc4, 0x50, 0x2e, 0x4a, 0xbf, 0x4e, 0x97, 0xb0, 0x94, 0xc2, 0x0a, 0x9d, 0xdf, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_88 = { .name = "xdh_wei25519_88", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_88_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_88_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_88_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 89 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 89 for XDH, tcId is 90 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_89_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_89_privkey[] = { 0x18, 0x42, 0x2b, 0x58, 0xa1, 0x8e, 0x0f, 0x45, 0x19, 0xb7, 0xa8, 0x87, 0xb8, 0xcf, 0xb6, 0x49, 0xe0, 0xbf, 0xe4, 0xb3, 0x4d, 0x75, 0x96, 0x33, 0x50, 0xa9, 0x94, 0x4e, 0x5b, 0x7f, 0x5b, 0x7e, }; static const unsigned char xdh_wei25519_89_sharedsecret[] = { 0x44, 0x8c, 0xe4, 0x10, 0xff, 0xfc, 0x7e, 0x61, 0x49, 0xc5, 0xab, 0xec, 0x0a, 0xd5, 0xf3, 0x60, 0x7d, 0xfd, 0xe8, 0xa3, 0x4e, 0x2a, 0xc3, 0x24, 0x3c, 0x30, 0x09, 0x17, 0x61, 0x68, 0xb4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_89 = { .name = "xdh_wei25519_89", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_89_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_89_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_89_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 90 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 90 for XDH, tcId is 91 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_90_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_90_privkey[] = { 0x20, 0x62, 0x0d, 0x82, 0x48, 0x77, 0x07, 0xbe, 0xdf, 0x9e, 0xe3, 0x54, 0x9e, 0x95, 0xcb, 0x93, 0x90, 0xd2, 0x61, 0x8f, 0x50, 0xcf, 0x6a, 0xcb, 0xa4, 0x7f, 0xfa, 0xa1, 0x03, 0x22, 0x4a, 0x6f, }; static const unsigned char xdh_wei25519_90_sharedsecret[] = { 0x03, 0xa6, 0x33, 0xdf, 0x01, 0x48, 0x0d, 0x0d, 0x50, 0x48, 0xd9, 0x2f, 0x51, 0xb2, 0x0d, 0xc1, 0xd1, 0x1f, 0x73, 0xe9, 0x51, 0x5c, 0x69, 0x94, 0x29, 0xb9, 0x0a, 0x4f, 0x69, 0x03, 0x12, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_90 = { .name = "xdh_wei25519_90", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_90_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_90_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_90_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 91 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 91 for XDH, tcId is 92 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_91_peerpubkey[] = { 0xda, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_91_privkey[] = { 0x28, 0x5a, 0x6a, 0x7c, 0xee, 0xb7, 0x12, 0x2f, 0x2c, 0x78, 0xd9, 0x9c, 0x53, 0xb2, 0xa9, 0x02, 0xb4, 0x90, 0x89, 0x2f, 0x7d, 0xff, 0x32, 0x6f, 0x89, 0xd1, 0x26, 0x73, 0xc3, 0x10, 0x1b, 0x53, }; static const unsigned char xdh_wei25519_91_sharedsecret[] = { 0x9b, 0x01, 0x28, 0x77, 0x17, 0xd7, 0x2f, 0x4c, 0xfb, 0x58, 0x3e, 0xc8, 0x5f, 0x8f, 0x93, 0x68, 0x49, 0xb1, 0x7d, 0x97, 0x8d, 0xba, 0xe7, 0xb8, 0x37, 0xdb, 0x56, 0xa6, 0x2f, 0x10, 0x0a, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_91 = { .name = "xdh_wei25519_91", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_91_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_91_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_91_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 92 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 92 for XDH, tcId is 93 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_92_peerpubkey[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_92_privkey[] = { 0xc8, 0xe0, 0x33, 0x0a, 0xe9, 0xdc, 0xee, 0xff, 0x88, 0x7f, 0xba, 0x76, 0x12, 0x25, 0x87, 0x9a, 0x4b, 0xd2, 0xe0, 0xdb, 0x08, 0x79, 0x92, 0x44, 0x13, 0x6e, 0x47, 0x21, 0xb2, 0xc8, 0x89, 0x70, }; static const unsigned char xdh_wei25519_92_sharedsecret[] = { 0xdf, 0xe6, 0x08, 0x31, 0xc9, 0xf4, 0xf9, 0x6c, 0x81, 0x6e, 0x51, 0x04, 0x88, 0x04, 0xdb, 0xdc, 0x27, 0x79, 0x5d, 0x76, 0x0e, 0xce, 0xd7, 0x5e, 0xf5, 0x75, 0xcb, 0xe3, 0xb4, 0x64, 0x05, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_92 = { .name = "xdh_wei25519_92", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_92_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_92_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_92_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 93 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 93 for XDH, tcId is 94 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_93_peerpubkey[] = { 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_93_privkey[] = { 0x10, 0xdb, 0x62, 0x10, 0xfc, 0x1f, 0xb1, 0x33, 0x82, 0x47, 0x2f, 0xa1, 0x78, 0x7b, 0x00, 0x4b, 0x5d, 0x11, 0x86, 0x8a, 0xb3, 0xa7, 0x95, 0x10, 0xe0, 0xce, 0xe3, 0x0f, 0x4a, 0x6d, 0xf2, 0x6b, }; static const unsigned char xdh_wei25519_93_sharedsecret[] = { 0x50, 0xbf, 0xa8, 0x26, 0xca, 0x77, 0x03, 0x6d, 0xd2, 0xbb, 0xfd, 0x09, 0x2c, 0x3f, 0x78, 0xe2, 0xe4, 0xa1, 0xf9, 0x80, 0xd7, 0xc8, 0xe7, 0x8f, 0x2f, 0x14, 0xdc, 0xa3, 0xcc, 0xe5, 0xcc, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_93 = { .name = "xdh_wei25519_93", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_93_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_93_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_93_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 94 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 94 for XDH, tcId is 95 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_94_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_94_privkey[] = { 0x90, 0x41, 0xc6, 0xe0, 0x44, 0xa2, 0x77, 0xdf, 0x84, 0x66, 0x27, 0x5c, 0xa8, 0xb5, 0xee, 0x0d, 0xa7, 0xbc, 0x02, 0x86, 0x48, 0x05, 0x4a, 0xde, 0x5c, 0x59, 0x2a, 0xdd, 0x30, 0x57, 0x47, 0x4e, }; static const unsigned char xdh_wei25519_94_sharedsecret[] = { 0x13, 0xda, 0x56, 0x95, 0xa4, 0xc2, 0x06, 0x11, 0x54, 0x09, 0xb5, 0x27, 0x7a, 0x93, 0x47, 0x82, 0xfe, 0x98, 0x5f, 0xa0, 0x50, 0xbc, 0x90, 0x2c, 0xba, 0x56, 0x16, 0xf9, 0x15, 0x6f, 0xe2, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_94 = { .name = "xdh_wei25519_94", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_94_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_94_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_94_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 95 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 95 for XDH, tcId is 96 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_95_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_95_privkey[] = { 0xb8, 0xd4, 0x99, 0x04, 0x1a, 0x67, 0x13, 0xc0, 0xf6, 0xf8, 0x76, 0xdb, 0x74, 0x06, 0x58, 0x7f, 0xdb, 0x44, 0x58, 0x2f, 0x95, 0x42, 0x35, 0x6a, 0xe8, 0x9c, 0xfa, 0x95, 0x8a, 0x34, 0xd2, 0x66, }; static const unsigned char xdh_wei25519_95_sharedsecret[] = { 0x63, 0x48, 0x3b, 0x5d, 0x69, 0x23, 0x6c, 0x63, 0xcd, 0xdb, 0xed, 0x33, 0xd8, 0xe2, 0x2b, 0xae, 0xcc, 0x2b, 0x0c, 0xcf, 0x88, 0x65, 0x98, 0xe8, 0x63, 0xc8, 0x44, 0xd2, 0xbf, 0x25, 0x67, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_95 = { .name = "xdh_wei25519_95", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_95_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_95_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_95_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 96 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 96 for XDH, tcId is 97 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_96_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_96_privkey[] = { 0xc8, 0x5f, 0x08, 0xe6, 0x0c, 0x84, 0x5f, 0x82, 0x09, 0x91, 0x41, 0xa6, 0x6d, 0xc4, 0x58, 0x3d, 0x2b, 0x10, 0x40, 0x46, 0x2c, 0x54, 0x4d, 0x33, 0xd0, 0x45, 0x3b, 0x20, 0xb1, 0xa6, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_96_sharedsecret[] = { 0xe9, 0xdb, 0x74, 0xbc, 0x88, 0xd0, 0xd9, 0xbf, 0x04, 0x6d, 0xdd, 0x13, 0xf9, 0x43, 0xbc, 0xcb, 0xe6, 0xdb, 0xb4, 0x7d, 0x49, 0x32, 0x3f, 0x8d, 0xfe, 0xed, 0xc4, 0xa6, 0x94, 0x99, 0x1a, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_96 = { .name = "xdh_wei25519_96", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_96_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_96_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_96_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 97 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 97 for XDH, tcId is 98 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_97_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_97_privkey[] = { 0x78, 0x87, 0x88, 0x9b, 0xac, 0x4c, 0x62, 0x9a, 0x10, 0x1d, 0x37, 0x24, 0xf2, 0xed, 0x8b, 0x98, 0xd9, 0x36, 0xfd, 0xe7, 0x9e, 0x1a, 0x1f, 0x77, 0xd8, 0x67, 0x79, 0x62, 0x6b, 0xf8, 0xf2, 0x63, }; static const unsigned char xdh_wei25519_97_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_97 = { .name = "xdh_wei25519_97", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_97_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_97_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_97_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819968, tcId is 98 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 98 for XDH, tcId is 99 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_98_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_98_privkey[] = { 0xe0, 0x79, 0x71, 0xee, 0x82, 0x0e, 0x48, 0xb0, 0xb2, 0x66, 0xd8, 0xbe, 0x3c, 0xdb, 0xbb, 0x5e, 0x90, 0x0a, 0x43, 0xf5, 0x9e, 0xe8, 0x53, 0x5c, 0x65, 0x72, 0x41, 0x86, 0x15, 0xde, 0x49, 0x62, }; static const unsigned char xdh_wei25519_98_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_98 = { .name = "xdh_wei25519_98", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_98_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_98_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_98_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819969, tcId is 99 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 99 for XDH, tcId is 100 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_99_peerpubkey[] = { 0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1, 0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3, 0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c, }; static const unsigned char xdh_wei25519_99_privkey[] = { 0xa0, 0x46, 0xe3, 0x6b, 0xf0, 0x52, 0x7c, 0x9d, 0x3b, 0x16, 0x15, 0x4b, 0x82, 0x46, 0x5e, 0xdd, 0x62, 0x14, 0x4c, 0x0a, 0xc1, 0xfc, 0x5a, 0x18, 0x50, 0x6a, 0x22, 0x44, 0xba, 0x44, 0x9a, 0x44, }; static const unsigned char xdh_wei25519_99_sharedsecret[] = { 0xc3, 0xda, 0x55, 0x37, 0x9d, 0xe9, 0xc6, 0x90, 0x8e, 0x94, 0xea, 0x4d, 0xf2, 0x8d, 0x08, 0x4f, 0x32, 0xec, 0xcf, 0x03, 0x49, 0x1c, 0x71, 0xf7, 0x54, 0xb4, 0x07, 0x55, 0x77, 0xa2, 0x85, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_99 = { .name = "xdh_wei25519_99", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_99_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_99_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_99_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 7748, tcId is 100 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 100 for XDH, tcId is 101 in file x25519_asn_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')] */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_100_peerpubkey[] = { 0xe5, 0x21, 0x0f, 0x12, 0x78, 0x68, 0x11, 0xd3, 0xf4, 0xb7, 0x95, 0x9d, 0x05, 0x38, 0xae, 0x2c, 0x31, 0xdb, 0xe7, 0x10, 0x6f, 0xc0, 0x3c, 0x3e, 0xfc, 0x4c, 0xd5, 0x49, 0xc7, 0x15, 0xa4, 0x13, }; static const unsigned char xdh_wei25519_100_privkey[] = { 0x48, 0x66, 0xe9, 0xd4, 0xd1, 0xb4, 0x67, 0x3c, 0x5a, 0xd2, 0x26, 0x91, 0x95, 0x7d, 0x6a, 0xf5, 0xc1, 0x1b, 0x64, 0x21, 0xe0, 0xea, 0x01, 0xd4, 0x2c, 0xa4, 0x16, 0x9e, 0x79, 0x18, 0xba, 0x4d, }; static const unsigned char xdh_wei25519_100_sharedsecret[] = { 0x95, 0xcb, 0xde, 0x94, 0x76, 0xe8, 0x90, 0x7d, 0x7a, 0xad, 0xe4, 0x5c, 0xb4, 0xb8, 0x73, 0xf8, 0x8b, 0x59, 0x5a, 0x68, 0x79, 0x9f, 0xa1, 0x52, 0xe6, 0xf8, 0xf7, 0x64, 0x7a, 0xac, 0x79, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_100 = { .name = "xdh_wei25519_100", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_100_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_100_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_100_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "RFC 7748, tcId is 101 in file x25519_asn_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')]", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 101 for XDH, tcId is 102 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_101_peerpubkey[] = { 0xde, 0x9e, 0xdb, 0x7d, 0x7b, 0x7d, 0xc1, 0xb4, 0xd3, 0x5b, 0x61, 0xc2, 0xec, 0xe4, 0x35, 0x37, 0x3f, 0x83, 0x43, 0xc8, 0x5b, 0x78, 0x67, 0x4d, 0xad, 0xfc, 0x7e, 0x14, 0x6f, 0x88, 0x2b, 0x4f, }; static const unsigned char xdh_wei25519_101_privkey[] = { 0x77, 0x07, 0x6d, 0x0a, 0x73, 0x18, 0xa5, 0x7d, 0x3c, 0x16, 0xc1, 0x72, 0x51, 0xb2, 0x66, 0x45, 0xdf, 0x4c, 0x2f, 0x87, 0xeb, 0xc0, 0x99, 0x2a, 0xb1, 0x77, 0xfb, 0xa5, 0x1d, 0xb9, 0x2c, 0x2a, }; static const unsigned char xdh_wei25519_101_sharedsecret[] = { 0x4a, 0x5d, 0x9d, 0x5b, 0xa4, 0xce, 0x2d, 0xe1, 0x72, 0x8e, 0x3b, 0xf4, 0x80, 0x35, 0x0f, 0x25, 0xe0, 0x7e, 0x21, 0xc9, 0x47, 0xd1, 0x9e, 0x33, 0x76, 0xf0, 0x9b, 0x3c, 0x1e, 0x16, 0x17, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_101 = { .name = "xdh_wei25519_101", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_101_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_101_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_101_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 8037, Section A.6, tcId is 102 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 102 for XDH, tcId is 103 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_102_peerpubkey[] = { 0xb7, 0xb6, 0xd3, 0x9c, 0x76, 0x5c, 0xb6, 0x0c, 0x0c, 0x85, 0x42, 0xf4, 0xf3, 0x95, 0x2f, 0xfb, 0x51, 0xd3, 0x00, 0x2d, 0x4a, 0xeb, 0x9f, 0x8f, 0xf9, 0x88, 0xb1, 0x92, 0x04, 0x3e, 0x6d, 0x0a, }; static const unsigned char xdh_wei25519_102_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_102_sharedsecret[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_102 = { .name = "xdh_wei25519_102", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_102_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_102_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_102_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 103 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 103 for XDH, tcId is 104 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_103_peerpubkey[] = { 0x3b, 0x18, 0xdf, 0x1e, 0x50, 0xb8, 0x99, 0xeb, 0xd5, 0x88, 0xc3, 0x16, 0x1c, 0xbd, 0x3b, 0xf9, 0x8e, 0xbc, 0xc2, 0xc1, 0xf7, 0xdf, 0x53, 0xb8, 0x11, 0xbd, 0x0e, 0x91, 0xb4, 0xd5, 0x15, 0x3d, }; static const unsigned char xdh_wei25519_103_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_103_sharedsecret[] = { 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_103 = { .name = "xdh_wei25519_103", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_103_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_103_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_103_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 104 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 104 for XDH, tcId is 105 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_104_peerpubkey[] = { 0xca, 0xb6, 0xf9, 0xe7, 0xd8, 0xce, 0x00, 0xdf, 0xce, 0xa9, 0xbb, 0xd8, 0xf0, 0x69, 0xef, 0x7f, 0xb2, 0xac, 0x50, 0x4a, 0xbf, 0x83, 0xb8, 0x7d, 0xb6, 0x01, 0xb5, 0xae, 0x0a, 0x7f, 0x76, 0x15, }; static const unsigned char xdh_wei25519_104_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_104_sharedsecret[] = { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_104 = { .name = "xdh_wei25519_104", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_104_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_104_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_104_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 105 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 105 for XDH, tcId is 106 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_105_peerpubkey[] = { 0x49, 0x77, 0xd0, 0xd8, 0x97, 0xe1, 0xba, 0x56, 0x65, 0x90, 0xf6, 0x0f, 0x2e, 0xb0, 0xdb, 0x6f, 0x7b, 0x24, 0xc1, 0x3d, 0x43, 0x69, 0x18, 0xcc, 0xfd, 0x32, 0x70, 0x8d, 0xfa, 0xd7, 0xe2, 0x47, }; static const unsigned char xdh_wei25519_105_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_105_sharedsecret[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_105 = { .name = "xdh_wei25519_105", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_105_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_105_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_105_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 106 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 106 for XDH, tcId is 107 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_106_peerpubkey[] = { 0x98, 0x73, 0x0b, 0xc0, 0x3e, 0x29, 0xe8, 0xb0, 0x57, 0xfb, 0x1d, 0x20, 0xef, 0x8c, 0x0b, 0xff, 0xc8, 0x22, 0x48, 0x5d, 0x3d, 0xb7, 0xf4, 0x5f, 0x4e, 0x3c, 0xc2, 0xc3, 0xc6, 0xd1, 0xd1, 0x4c, }; static const unsigned char xdh_wei25519_106_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_106_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_106 = { .name = "xdh_wei25519_106", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_106_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_106_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_106_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 107 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 107 for XDH, tcId is 108 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_107_peerpubkey[] = { 0x97, 0xb4, 0xff, 0xf6, 0x82, 0xdf, 0x7f, 0x09, 0x6c, 0xd1, 0x75, 0x65, 0x69, 0xe2, 0x52, 0xdb, 0x48, 0x2d, 0x45, 0x40, 0x6a, 0x31, 0x98, 0xa1, 0xaf, 0xf2, 0x82, 0xa5, 0xda, 0x47, 0x4c, 0x49, }; static const unsigned char xdh_wei25519_107_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_107_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_107 = { .name = "xdh_wei25519_107", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_107_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_107_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_107_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 108 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 108 for XDH, tcId is 109 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_108_peerpubkey[] = { 0x31, 0x77, 0x81, 0xb0, 0x16, 0x3b, 0xae, 0x74, 0xac, 0xcc, 0x06, 0xc0, 0xd4, 0x4e, 0xf9, 0xa9, 0x11, 0xa2, 0x2b, 0x0d, 0x37, 0xfa, 0xf7, 0x72, 0x66, 0x21, 0x59, 0x1f, 0x93, 0x43, 0xea, 0x2f, }; static const unsigned char xdh_wei25519_108_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_108_sharedsecret[] = { 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_108 = { .name = "xdh_wei25519_108", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_108_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_108_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_108_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 109 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 109 for XDH, tcId is 110 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_109_peerpubkey[] = { 0x7e, 0x26, 0xf8, 0xf2, 0x4c, 0xb5, 0x90, 0x02, 0x7f, 0x9d, 0x1b, 0xc4, 0x9b, 0x0e, 0x1a, 0x24, 0x2c, 0x7d, 0x8f, 0x43, 0x62, 0x4d, 0x3e, 0x8f, 0xab, 0x28, 0xee, 0x08, 0xe0, 0x2c, 0xb4, 0x5e, }; static const unsigned char xdh_wei25519_109_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_109_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_109 = { .name = "xdh_wei25519_109", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_109_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_109_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_109_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 110 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 110 for XDH, tcId is 111 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_110_peerpubkey[] = { 0xe9, 0x6d, 0x27, 0x80, 0xe5, 0x46, 0x9a, 0x74, 0x62, 0x0a, 0xb5, 0xaa, 0x2f, 0x62, 0x15, 0x1d, 0x14, 0x0c, 0x47, 0x33, 0x20, 0xdb, 0xe1, 0xb0, 0x28, 0xf1, 0xa4, 0x8f, 0x8e, 0x76, 0xf9, 0x5f, }; static const unsigned char xdh_wei25519_110_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_110_sharedsecret[] = { 0xe5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_110 = { .name = "xdh_wei25519_110", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_110_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_110_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_110_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 111 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 111 for XDH, tcId is 112 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_111_peerpubkey[] = { 0x8d, 0x61, 0x2c, 0x58, 0x31, 0xaa, 0x64, 0xb0, 0x57, 0x30, 0x0e, 0x7e, 0x31, 0x0f, 0x3a, 0xa3, 0x32, 0xaf, 0x34, 0x06, 0x6f, 0xef, 0xca, 0xb2, 0xb0, 0x89, 0xc9, 0x59, 0x28, 0x78, 0xf8, 0x32, }; static const unsigned char xdh_wei25519_111_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_111_sharedsecret[] = { 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_111 = { .name = "xdh_wei25519_111", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_111_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_111_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_111_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 112 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 112 for XDH, tcId is 113 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_112_peerpubkey[] = { 0x8d, 0x44, 0x10, 0x8d, 0x05, 0xd9, 0x40, 0xd3, 0xdf, 0xe5, 0x64, 0x7e, 0xa7, 0xa8, 0x7b, 0xe2, 0x4d, 0x0d, 0x03, 0x6c, 0x9f, 0x0a, 0x95, 0xa2, 0x38, 0x6b, 0x83, 0x9e, 0x7b, 0x7b, 0xf1, 0x45, }; static const unsigned char xdh_wei25519_112_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_112_sharedsecret[] = { 0xdd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_112 = { .name = "xdh_wei25519_112", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_112_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_112_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_112_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 113 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 113 for XDH, tcId is 114 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_113_peerpubkey[] = { 0x21, 0xa3, 0x5d, 0x5d, 0xb1, 0xb6, 0x23, 0x7c, 0x73, 0x9b, 0x56, 0x34, 0x5a, 0x93, 0x0a, 0xee, 0xe3, 0x73, 0xcd, 0xcf, 0xb4, 0x70, 0x12, 0x66, 0x78, 0x2a, 0x8a, 0xc5, 0x94, 0x91, 0x3b, 0x29, }; static const unsigned char xdh_wei25519_113_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_113_sharedsecret[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_113 = { .name = "xdh_wei25519_113", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_113_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_113_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_113_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 114 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 114 for XDH, tcId is 115 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_114_peerpubkey[] = { 0x3e, 0x5e, 0xfb, 0x63, 0xc3, 0x52, 0xce, 0x94, 0x27, 0x62, 0x48, 0x2b, 0xc9, 0x33, 0x7a, 0x5d, 0x35, 0xba, 0x55, 0x66, 0x47, 0x43, 0xac, 0x5e, 0x93, 0xd1, 0x1f, 0x95, 0x73, 0x36, 0xcb, 0x10, }; static const unsigned char xdh_wei25519_114_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_114_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_114 = { .name = "xdh_wei25519_114", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_114_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_114_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_114_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 115 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 115 for XDH, tcId is 116 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_115_peerpubkey[] = { 0x8e, 0x41, 0xf0, 0x5e, 0xa3, 0xc7, 0x65, 0x72, 0xbe, 0x10, 0x4a, 0xd8, 0x78, 0x8e, 0x97, 0x08, 0x63, 0xc6, 0xe2, 0xca, 0x3d, 0xaa, 0xe6, 0x4d, 0x1c, 0x2f, 0x46, 0xde, 0xcf, 0xff, 0xa5, 0x71, }; static const unsigned char xdh_wei25519_115_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_115_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_115 = { .name = "xdh_wei25519_115", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_115_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_115_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_115_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 116 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 116 for XDH, tcId is 117 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_116_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_116_privkey[] = { 0xc8, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0x6b, }; static const unsigned char xdh_wei25519_116_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_116 = { .name = "xdh_wei25519_116", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_116_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_116_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_116_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 117 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 117 for XDH, tcId is 118 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_117_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_117_privkey[] = { 0x90, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x43, }; static const unsigned char xdh_wei25519_117_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_117 = { .name = "xdh_wei25519_117", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_117_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_117_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_117_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 118 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 118 for XDH, tcId is 119 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_118_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_118_privkey[] = { 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x51, }; static const unsigned char xdh_wei25519_118_sharedsecret[] = { 0x0c, 0x50, 0xac, 0x2b, 0xfb, 0x68, 0x15, 0xb4, 0x7d, 0x07, 0x34, 0xc5, 0x98, 0x13, 0x79, 0x88, 0x2a, 0x24, 0xa2, 0xde, 0x61, 0x66, 0x85, 0x3c, 0x73, 0x53, 0x29, 0xd9, 0x78, 0xba, 0xee, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_118 = { .name = "xdh_wei25519_118", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_118_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_118_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_118_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 119 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 119 for XDH, tcId is 120 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_119_peerpubkey[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_119_privkey[] = { 0x08, 0x40, 0xa8, 0xaf, 0x5b, 0xc4, 0xc4, 0x8d, 0xa8, 0x85, 0x0e, 0x97, 0x3d, 0x7e, 0x14, 0x22, 0x0f, 0x45, 0xc1, 0x92, 0xce, 0xa4, 0x02, 0x0d, 0x37, 0x7e, 0xec, 0xd2, 0x5c, 0x7c, 0x36, 0x43, }; static const unsigned char xdh_wei25519_119_sharedsecret[] = { 0x77, 0x55, 0x71, 0x37, 0xa2, 0xa2, 0xa6, 0x51, 0xc4, 0x96, 0x27, 0xa9, 0xb2, 0x39, 0xac, 0x1f, 0x2b, 0xf7, 0x8b, 0x8a, 0x3e, 0x72, 0x16, 0x8c, 0xce, 0xcc, 0x10, 0xa5, 0x1f, 0xc5, 0xae, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_119 = { .name = "xdh_wei25519_119", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_119_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_119_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_119_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 120 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 120 for XDH, tcId is 121 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_120_peerpubkey[] = { 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_120_privkey[] = { 0x00, 0x92, 0x22, 0x9c, 0x75, 0x3a, 0x71, 0x28, 0x4d, 0x08, 0x53, 0x90, 0x94, 0x70, 0xad, 0x84, 0x7a, 0xb6, 0x2f, 0x43, 0x9e, 0xa5, 0x14, 0x82, 0xfb, 0x41, 0xd3, 0x0c, 0xc3, 0xb4, 0x47, 0x43, }; static const unsigned char xdh_wei25519_120_sharedsecret[] = { 0xc8, 0x8e, 0x71, 0x9a, 0xe5, 0xc2, 0x24, 0x8b, 0x5f, 0x90, 0xda, 0x34, 0x6a, 0x92, 0xae, 0x21, 0x4f, 0x44, 0xa5, 0xd1, 0x29, 0xfd, 0x4e, 0x9c, 0x26, 0xcf, 0x6a, 0x0d, 0xa1, 0xef, 0xe0, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_120 = { .name = "xdh_wei25519_120", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_120_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_120_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_120_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 121 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 121 for XDH, tcId is 122 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_121_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_121_privkey[] = { 0xb8, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x5b, }; static const unsigned char xdh_wei25519_121_sharedsecret[] = { 0x4b, 0xf6, 0x78, 0x9c, 0x7e, 0xa0, 0x36, 0xf9, 0x73, 0xcd, 0xe0, 0xaf, 0x02, 0xd6, 0xfd, 0xb9, 0xb6, 0x4a, 0x0b, 0x95, 0x70, 0x22, 0x11, 0x14, 0x39, 0x57, 0x0f, 0xad, 0x7d, 0x7a, 0x45, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_121 = { .name = "xdh_wei25519_121", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_121_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_121_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_121_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 122 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 122 for XDH, tcId is 123 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_122_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_122_privkey[] = { 0x68, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0x76, }; static const unsigned char xdh_wei25519_122_sharedsecret[] = { 0xbc, 0xac, 0x23, 0x5a, 0xe1, 0x5c, 0xc7, 0x14, 0x83, 0x72, 0xe1, 0x1f, 0x93, 0x15, 0xe3, 0xbc, 0x76, 0xce, 0xb9, 0x04, 0xb3, 0xd2, 0xa8, 0x24, 0x6b, 0xd9, 0xd9, 0xbe, 0x20, 0x82, 0xbb, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_122 = { .name = "xdh_wei25519_122", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_122_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_122_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_122_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 123 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 123 for XDH, tcId is 124 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_123_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_123_privkey[] = { 0x38, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0x74, }; static const unsigned char xdh_wei25519_123_sharedsecret[] = { 0x5d, 0xd7, 0xd1, 0x6f, 0xff, 0x25, 0xcc, 0x5f, 0xdf, 0x9e, 0x03, 0xc3, 0x15, 0x7c, 0xb0, 0xa2, 0x35, 0xce, 0xa1, 0x7d, 0x61, 0x8f, 0x36, 0xe6, 0xf1, 0x34, 0x61, 0x56, 0x7e, 0xde, 0xb9, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_123 = { .name = "xdh_wei25519_123", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_123_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_123_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_123_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 124 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 124 for XDH, tcId is 125 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_124_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_124_privkey[] = { 0x30, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x4b, }; static const unsigned char xdh_wei25519_124_sharedsecret[] = { 0x28, 0x16, 0xfd, 0x03, 0x1d, 0x51, 0xd6, 0x75, 0x0f, 0x92, 0x25, 0xed, 0xe9, 0x50, 0x62, 0x5c, 0xca, 0x47, 0x44, 0x1c, 0xa9, 0x7e, 0x43, 0x09, 0x26, 0x50, 0x39, 0x69, 0x91, 0xaf, 0xcb, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_124 = { .name = "xdh_wei25519_124", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_124_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_124_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_124_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 125 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 125 for XDH, tcId is 126 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_125_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_125_privkey[] = { 0xd8, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0x4f, }; static const unsigned char xdh_wei25519_125_sharedsecret[] = { 0x7e, 0xd8, 0xf2, 0xd5, 0x42, 0x4e, 0x7e, 0xbb, 0x3e, 0xdb, 0xdf, 0x4a, 0xbe, 0x45, 0x54, 0x47, 0xe5, 0xa4, 0x8b, 0x65, 0x8e, 0x64, 0xab, 0xd0, 0x6c, 0x21, 0x8f, 0x33, 0xbd, 0x15, 0x1f, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_125 = { .name = "xdh_wei25519_125", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_125_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_125_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_125_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 126 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 126 for XDH, tcId is 127 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_126_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_126_privkey[] = { 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0x7e, }; static const unsigned char xdh_wei25519_126_sharedsecret[] = { 0xe8, 0x62, 0x0e, 0xd5, 0xca, 0x89, 0xc7, 0x2c, 0x5e, 0xa5, 0x50, 0x3e, 0x6d, 0xcd, 0x01, 0x13, 0x1c, 0xd5, 0xe8, 0x75, 0xc3, 0x0e, 0x13, 0xd5, 0xdc, 0x61, 0x9c, 0xe2, 0x8e, 0xc7, 0xd5, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_126 = { .name = "xdh_wei25519_126", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_126_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_126_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_126_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 127 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 127 for XDH, tcId is 128 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_127_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_127_privkey[] = { 0x20, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0x71, }; static const unsigned char xdh_wei25519_127_sharedsecret[] = { 0xce, 0xad, 0xb2, 0x64, 0x37, 0x9d, 0xca, 0xdd, 0x6e, 0x3b, 0xb8, 0xad, 0x24, 0xdd, 0x65, 0x3d, 0x2a, 0x60, 0x9d, 0xd7, 0x03, 0xd4, 0x1d, 0xa6, 0xca, 0xf3, 0xad, 0x00, 0xf0, 0x01, 0x86, 0x2c, }; static const wycheproof_xdh_test xdh_wei25519_127 = { .name = "xdh_wei25519_127", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_127_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_127_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_127_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 128 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 128 for XDH, tcId is 129 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_128_peerpubkey[] = { 0xa8, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_128_privkey[] = { 0x90, 0xb1, 0x50, 0xd4, 0x62, 0xde, 0x51, 0x20, 0x56, 0xd5, 0xbd, 0x55, 0x17, 0x30, 0x74, 0x96, 0x9b, 0x49, 0x6f, 0x26, 0x2f, 0xb6, 0x91, 0x6b, 0x73, 0x3f, 0x62, 0x63, 0xa8, 0x07, 0x89, 0x71, }; static const unsigned char xdh_wei25519_128_sharedsecret[] = { 0xf8, 0x6c, 0xc7, 0xbf, 0x1b, 0xe4, 0x95, 0x74, 0xfc, 0x97, 0xa0, 0x74, 0x28, 0x2e, 0x9b, 0xb5, 0xcd, 0x23, 0x8e, 0x00, 0x2b, 0xc8, 0xe9, 0xa7, 0xb8, 0x55, 0x2b, 0x2d, 0x60, 0xec, 0xcb, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_128 = { .name = "xdh_wei25519_128", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_128_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_128_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_128_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 129 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 129 for XDH, tcId is 130 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_129_peerpubkey[] = { 0xaa, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_129_privkey[] = { 0x98, 0x87, 0x28, 0x6b, 0x32, 0x61, 0xc8, 0xd8, 0x57, 0xa1, 0x6f, 0x6d, 0xb2, 0x12, 0x77, 0xf7, 0x5d, 0x88, 0xd4, 0xe8, 0x61, 0xb3, 0xeb, 0xe7, 0x59, 0x66, 0x99, 0x04, 0x7e, 0x81, 0x66, 0x68, }; static const unsigned char xdh_wei25519_129_sharedsecret[] = { 0xcc, 0xbb, 0x8f, 0xd9, 0xde, 0xe1, 0x65, 0xa3, 0x98, 0xb2, 0xdb, 0xd7, 0xc8, 0x39, 0x6f, 0x81, 0x73, 0x6c, 0x1b, 0x3d, 0xa3, 0x6b, 0x35, 0xfb, 0xec, 0x8f, 0x32, 0x6f, 0x38, 0xf9, 0x27, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_129 = { .name = "xdh_wei25519_129", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_129_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_129_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_129_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 130 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 130 for XDH, tcId is 131 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_130_peerpubkey[] = { 0x58, 0x50, 0x07, 0xa5, 0x93, 0x0d, 0x77, 0x62, 0x3c, 0xf2, 0x97, 0x56, 0x03, 0x8c, 0xa1, 0x97, 0xd3, 0xeb, 0xfd, 0x9e, 0x4c, 0x80, 0xa6, 0x95, 0x85, 0xef, 0xe0, 0x27, 0x40, 0x92, 0xc1, 0x15, }; static const unsigned char xdh_wei25519_130_privkey[] = { 0x20, 0xca, 0x2c, 0x85, 0xcc, 0x87, 0x62, 0xe9, 0x6b, 0x70, 0x47, 0xbf, 0x15, 0xc7, 0x1c, 0x05, 0x0f, 0xfe, 0x0e, 0xd1, 0x61, 0x60, 0x40, 0xa9, 0x53, 0xae, 0x32, 0xa1, 0x29, 0x7a, 0xd8, 0x71, }; static const unsigned char xdh_wei25519_130_sharedsecret[] = { 0x46, 0xad, 0xd6, 0xf4, 0x8f, 0xff, 0xf4, 0x61, 0x77, 0x7d, 0x4f, 0x89, 0xb6, 0xfd, 0xf1, 0x15, 0x5a, 0xa0, 0x51, 0xa9, 0x63, 0x87, 0xd4, 0x5f, 0x3e, 0x5e, 0x37, 0x1a, 0x23, 0x6b, 0x6e, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_130 = { .name = "xdh_wei25519_130", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_130_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_130_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_130_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 131 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 131 for XDH, tcId is 132 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_131_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_131_privkey[] = { 0xd0, 0x27, 0x65, 0x66, 0x05, 0xb1, 0x0b, 0xf1, 0x8d, 0xea, 0x28, 0xbc, 0x52, 0x54, 0x6f, 0x9f, 0x1f, 0x08, 0xce, 0xf0, 0x6c, 0xaf, 0xd2, 0x00, 0xfc, 0x84, 0xf8, 0x7d, 0xbb, 0x4e, 0xbe, 0x46, }; static const unsigned char xdh_wei25519_131_sharedsecret[] = { 0x1a, 0xdb, 0xe3, 0x22, 0x07, 0xe2, 0x1f, 0x71, 0xe1, 0xaf, 0x53, 0x88, 0x4d, 0x2a, 0x22, 0x76, 0x48, 0x1e, 0x29, 0x8e, 0x55, 0x7f, 0x4d, 0xac, 0xb3, 0x72, 0x0f, 0x24, 0x58, 0xe3, 0x08, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_131 = { .name = "xdh_wei25519_131", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_131_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_131_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_131_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 132 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 132 for XDH, tcId is 133 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_132_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_132_privkey[] = { 0x48, 0x67, 0xa8, 0x3e, 0xe9, 0xd0, 0x1b, 0x75, 0x10, 0x84, 0x08, 0x67, 0xdb, 0x1a, 0xf6, 0xa6, 0x04, 0x9b, 0xdb, 0xb0, 0x56, 0xb7, 0x44, 0x43, 0xf7, 0x0c, 0x35, 0x8e, 0x16, 0x2c, 0x88, 0x67, }; static const unsigned char xdh_wei25519_132_sharedsecret[] = { 0xe1, 0x2c, 0xc5, 0x8f, 0xbe, 0xb7, 0x0a, 0x5e, 0x35, 0xc8, 0x61, 0xc3, 0x37, 0x10, 0xbe, 0x65, 0x16, 0xa6, 0xa9, 0x2e, 0x52, 0x37, 0x60, 0x60, 0x21, 0x1b, 0x24, 0x87, 0xdb, 0x54, 0x2b, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_132 = { .name = "xdh_wei25519_132", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_132_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_132_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_132_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 133 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 133 for XDH, tcId is 134 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_133_peerpubkey[] = { 0xaf, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_133_privkey[] = { 0xa0, 0x15, 0x97, 0x0a, 0x8a, 0xdd, 0x94, 0x0f, 0xca, 0x5b, 0x1b, 0x5d, 0x23, 0x87, 0x53, 0x97, 0xd5, 0x47, 0xd8, 0xd4, 0x94, 0xfc, 0xb3, 0x14, 0xf2, 0x04, 0x5a, 0x67, 0xa2, 0xd1, 0x2c, 0x4b, }; static const unsigned char xdh_wei25519_133_sharedsecret[] = { 0x42, 0x1b, 0xed, 0x1b, 0x26, 0xda, 0x1e, 0x9a, 0xdb, 0xea, 0xda, 0x1f, 0x32, 0xb9, 0x1a, 0x0f, 0xb4, 0xce, 0xd0, 0xf1, 0x11, 0x0e, 0x0a, 0x4a, 0x88, 0xe7, 0x35, 0xa1, 0x9e, 0xe4, 0x57, 0x1e, }; static const wycheproof_xdh_test xdh_wei25519_133 = { .name = "xdh_wei25519_133", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_133_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_133_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_133_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 134 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 134 for XDH, tcId is 135 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_134_peerpubkey[] = { 0xb1, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_134_privkey[] = { 0x40, 0x58, 0xcb, 0x6b, 0x9a, 0xab, 0xa0, 0x2a, 0x33, 0x8a, 0xaa, 0x39, 0x2d, 0xbc, 0x10, 0x03, 0x9e, 0x26, 0xe9, 0xe4, 0x44, 0x11, 0x7e, 0x75, 0x8e, 0x24, 0xc5, 0xd8, 0xb2, 0x32, 0xea, 0x5e, }; static const unsigned char xdh_wei25519_134_sharedsecret[] = { 0xd7, 0xb4, 0x74, 0x63, 0xe2, 0xf4, 0xca, 0x9a, 0x1a, 0x7d, 0xee, 0xa0, 0x98, 0xda, 0x8e, 0x74, 0xac, 0x3b, 0x4a, 0x10, 0x90, 0x83, 0xd9, 0x97, 0x25, 0x9b, 0x12, 0x99, 0x2e, 0x7e, 0x7e, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_134 = { .name = "xdh_wei25519_134", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_134_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_134_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_134_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 135 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 135 for XDH, tcId is 136 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_135_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, }; static const unsigned char xdh_wei25519_135_privkey[] = { 0xb8, 0x76, 0xb0, 0x5d, 0xaf, 0xf0, 0x53, 0x0b, 0x13, 0x9d, 0x9e, 0x11, 0x25, 0x05, 0x63, 0x41, 0x80, 0x77, 0x17, 0x82, 0x46, 0xc5, 0xfa, 0x70, 0x05, 0xba, 0x00, 0xe9, 0xb6, 0x64, 0x77, 0x63, }; static const unsigned char xdh_wei25519_135_sharedsecret[] = { 0x68, 0x6e, 0xb9, 0x10, 0xa9, 0x37, 0x21, 0x1b, 0x91, 0x47, 0xc8, 0xa0, 0x51, 0xa1, 0x19, 0x79, 0x06, 0x81, 0x8f, 0xdc, 0x62, 0x66, 0x68, 0xeb, 0x5f, 0x5d, 0x39, 0x4a, 0xfd, 0x86, 0xd4, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_135 = { .name = "xdh_wei25519_135", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_135_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_135_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_135_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 136 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 136 for XDH, tcId is 137 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_136_peerpubkey[] = { 0x22, 0x23, 0x1c, 0x64, 0xef, 0x73, 0xad, 0x62, 0x31, 0x8b, 0x8a, 0x87, 0xbc, 0x38, 0xe2, 0x72, 0xe1, 0xbb, 0x8b, 0xf1, 0xa6, 0x0d, 0x7c, 0x00, 0x47, 0x6d, 0x0b, 0x05, 0x9d, 0x7b, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_136_privkey[] = { 0xd8, 0x7f, 0xd6, 0xaa, 0x5d, 0x8d, 0xee, 0xf6, 0xde, 0xe9, 0x61, 0x9a, 0x56, 0x84, 0x6a, 0x08, 0x29, 0x62, 0x05, 0x90, 0xf2, 0xda, 0x40, 0x83, 0x5d, 0x8e, 0x25, 0x15, 0x97, 0xe3, 0x90, 0x78, }; static const unsigned char xdh_wei25519_136_sharedsecret[] = { 0x09, 0x55, 0x97, 0x33, 0xb3, 0x5b, 0xcc, 0x6b, 0xb8, 0xac, 0x57, 0x4b, 0x5a, 0xbe, 0x3a, 0x4d, 0x88, 0x41, 0xde, 0xff, 0x05, 0x1c, 0x29, 0x4a, 0x07, 0x48, 0x7e, 0x3e, 0xec, 0x3c, 0x55, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_136 = { .name = "xdh_wei25519_136", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_136_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_136_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_136_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 137 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 137 for XDH, tcId is 138 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_137_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_137_privkey[] = { 0x90, 0x03, 0x63, 0x21, 0xb6, 0x37, 0x51, 0xf7, 0x62, 0x2a, 0xa9, 0x3d, 0xa3, 0x4d, 0x85, 0xe5, 0x9c, 0xe8, 0x10, 0x09, 0xac, 0x5b, 0x9a, 0x06, 0x89, 0x21, 0xd8, 0x3b, 0xc4, 0x71, 0x5b, 0x57, }; static const unsigned char xdh_wei25519_137_sharedsecret[] = { 0xf7, 0xd5, 0xcb, 0xcf, 0x39, 0xeb, 0x72, 0x2b, 0x01, 0xed, 0x20, 0xc8, 0x55, 0x63, 0xeb, 0xb8, 0x1d, 0x07, 0x65, 0x11, 0xae, 0xad, 0x4c, 0xcc, 0x42, 0x90, 0x27, 0x86, 0x6b, 0x9f, 0xd2, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_137 = { .name = "xdh_wei25519_137", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_137_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_137_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_137_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 138 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 138 for XDH, tcId is 139 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_138_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_138_privkey[] = { 0xa0, 0x67, 0x81, 0xfd, 0x4c, 0x4a, 0x08, 0x74, 0xe0, 0x0e, 0x72, 0xba, 0x13, 0x1b, 0x9d, 0xd8, 0x7a, 0x83, 0xb2, 0x90, 0x4e, 0x29, 0x4d, 0xe1, 0x76, 0xe8, 0xa9, 0xaf, 0x1f, 0x69, 0x5d, 0x67, }; static const unsigned char xdh_wei25519_138_sharedsecret[] = { 0xe9, 0x95, 0xad, 0x6a, 0x1e, 0xc6, 0xc5, 0xab, 0x32, 0x92, 0x2c, 0xff, 0x9d, 0x20, 0x47, 0x21, 0x70, 0x46, 0x73, 0x14, 0x3c, 0x4a, 0x11, 0xde, 0xaa, 0x20, 0x3f, 0x3c, 0x81, 0x98, 0x9b, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_138 = { .name = "xdh_wei25519_138", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_138_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_138_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_138_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 139 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 139 for XDH, tcId is 140 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_139_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_139_privkey[] = { 0xb8, 0x22, 0xd7, 0x2d, 0x8b, 0x68, 0xbd, 0xb4, 0xfb, 0xf6, 0x7e, 0x56, 0xa6, 0x1d, 0x67, 0x2b, 0x2c, 0x77, 0x47, 0xe9, 0x44, 0x79, 0xfe, 0x5a, 0xe4, 0x07, 0x2d, 0x0a, 0xcc, 0xdd, 0x65, 0x71, }; static const unsigned char xdh_wei25519_139_sharedsecret[] = { 0x32, 0xb6, 0xda, 0xbe, 0x01, 0xd1, 0x38, 0x67, 0xf3, 0xb5, 0xb0, 0x89, 0x2f, 0xef, 0xd8, 0x0d, 0xca, 0x66, 0x6f, 0x2e, 0xdc, 0x5a, 0xfb, 0x43, 0xcd, 0x0b, 0xaf, 0x70, 0x3c, 0x3e, 0x69, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_139 = { .name = "xdh_wei25519_139", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_139_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_139_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_139_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 140 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 140 for XDH, tcId is 141 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_140_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_140_privkey[] = { 0xd0, 0x8c, 0xe1, 0x23, 0x7e, 0x24, 0x8d, 0x02, 0xcd, 0xf6, 0x19, 0xd2, 0x0b, 0xea, 0x58, 0x48, 0xad, 0xe4, 0xf6, 0xff, 0xd1, 0x71, 0xb8, 0xde, 0xe8, 0x79, 0x3f, 0xc6, 0x7c, 0x45, 0x96, 0x40, }; static const unsigned char xdh_wei25519_140_sharedsecret[] = { 0xa9, 0x3d, 0x83, 0xfc, 0x9e, 0xa0, 0xf6, 0xcb, 0x0c, 0xc8, 0xb6, 0x31, 0xda, 0x60, 0x00, 0x19, 0xb7, 0x6c, 0xbb, 0x2e, 0xc5, 0x72, 0x22, 0xf2, 0xe4, 0x2d, 0xd5, 0x40, 0xe3, 0xda, 0x85, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_140 = { .name = "xdh_wei25519_140", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_140_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_140_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_140_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 141 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 141 for XDH, tcId is 142 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_141_peerpubkey[] = { 0xcb, 0xdc, 0xe3, 0x9b, 0x10, 0x8c, 0x52, 0x9d, 0xce, 0x74, 0x75, 0x78, 0x43, 0xc7, 0x1d, 0x8d, 0x1e, 0x44, 0x74, 0x0e, 0x59, 0xf2, 0x83, 0xff, 0xb8, 0x92, 0xf4, 0xfa, 0x62, 0x84, 0xc3, 0x4a, }; static const unsigned char xdh_wei25519_141_privkey[] = { 0x18, 0x0a, 0xe3, 0xc9, 0x28, 0x51, 0x4c, 0xfb, 0x9e, 0xdd, 0x06, 0xe7, 0xdc, 0x1d, 0x5d, 0x06, 0x61, 0x60, 0xe9, 0x67, 0x44, 0x5a, 0x5c, 0x58, 0xe4, 0x46, 0x3b, 0x69, 0xed, 0x20, 0x5e, 0x6d, }; static const unsigned char xdh_wei25519_141_sharedsecret[] = { 0x01, 0x7c, 0xbf, 0xa2, 0xb3, 0x8e, 0x9e, 0xf3, 0x29, 0x7a, 0x33, 0x9e, 0xcc, 0xe1, 0xa9, 0x17, 0xbd, 0xcf, 0x7e, 0x91, 0x00, 0x36, 0x08, 0x6a, 0x41, 0xd1, 0xe2, 0x2d, 0x04, 0x24, 0x18, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_141 = { .name = "xdh_wei25519_141", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_141_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_141_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_141_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 142 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 142 for XDH, tcId is 143 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_142_peerpubkey[] = { 0x3c, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_142_privkey[] = { 0xe8, 0x81, 0xd8, 0x06, 0xa1, 0x10, 0x56, 0x0c, 0xd8, 0xfe, 0xe8, 0x99, 0xd5, 0x9c, 0x02, 0x49, 0xf1, 0x23, 0x3a, 0x43, 0x22, 0xc4, 0x1a, 0xa3, 0x69, 0xc7, 0xa2, 0xa9, 0x9f, 0x5b, 0x59, 0x62, }; static const unsigned char xdh_wei25519_142_sharedsecret[] = { 0x71, 0x13, 0x39, 0x05, 0xb8, 0xa5, 0x7e, 0xa8, 0xc3, 0x8d, 0xe0, 0xec, 0xf2, 0x13, 0x69, 0x9a, 0x75, 0xb0, 0x96, 0xc2, 0xdf, 0x21, 0xf0, 0x7f, 0x7e, 0x9e, 0xb0, 0x3e, 0x9f, 0xa5, 0x3f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_142 = { .name = "xdh_wei25519_142", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_142_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_142_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_142_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 143 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 143 for XDH, tcId is 144 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_143_peerpubkey[] = { 0x3e, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_143_privkey[] = { 0x08, 0xe4, 0x10, 0xe1, 0xd7, 0xe8, 0xb9, 0x41, 0x12, 0x36, 0xaf, 0x4a, 0x35, 0xd6, 0xb6, 0x2a, 0x5d, 0x89, 0x31, 0x47, 0x8e, 0x4c, 0x62, 0x19, 0x7c, 0xfa, 0xfb, 0x49, 0x14, 0x67, 0xb1, 0x62, }; static const unsigned char xdh_wei25519_143_sharedsecret[] = { 0x3d, 0xc7, 0xb7, 0x0e, 0x11, 0x07, 0x66, 0xb2, 0xbf, 0x52, 0x52, 0x52, 0xeb, 0xed, 0x98, 0xa1, 0x00, 0xb2, 0xe5, 0x32, 0xdc, 0x69, 0x54, 0x44, 0x64, 0xda, 0x1b, 0xba, 0xb8, 0x62, 0x5f, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_143 = { .name = "xdh_wei25519_143", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_143_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_143_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_143_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 144 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 144 for XDH, tcId is 145 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_144_peerpubkey[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_144_privkey[] = { 0xe0, 0x2f, 0xdf, 0x7e, 0x0e, 0xe3, 0xd5, 0x5b, 0x44, 0x40, 0xf0, 0x14, 0x32, 0xdd, 0x25, 0x3c, 0x94, 0x97, 0x93, 0xbc, 0x04, 0xda, 0x44, 0xdd, 0xec, 0xe8, 0x3e, 0x54, 0xc8, 0xc3, 0x9b, 0x40, }; static const unsigned char xdh_wei25519_144_sharedsecret[] = { 0xe3, 0x17, 0xe5, 0xcc, 0x43, 0x8b, 0x5f, 0x79, 0xea, 0xd5, 0x53, 0x3a, 0xc7, 0xc4, 0x55, 0x19, 0xa1, 0x17, 0xb3, 0x10, 0x33, 0xcc, 0x21, 0x40, 0xb1, 0x9e, 0xdf, 0x85, 0x72, 0x01, 0x12, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_144 = { .name = "xdh_wei25519_144", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_144_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_144_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_144_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 145 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 145 for XDH, tcId is 146 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_145_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_145_privkey[] = { 0xf0, 0x5d, 0x18, 0xf6, 0x8e, 0xf7, 0xa5, 0x86, 0x5c, 0x14, 0xdb, 0x3a, 0x9c, 0x25, 0x5f, 0xdf, 0x2d, 0xab, 0xea, 0x2a, 0xa3, 0x65, 0x81, 0xe9, 0x4f, 0x68, 0xb7, 0x27, 0xb5, 0x82, 0x86, 0x7b, }; static const unsigned char xdh_wei25519_145_sharedsecret[] = { 0xd8, 0x68, 0x10, 0x51, 0x6a, 0xed, 0xdc, 0x18, 0x06, 0x10, 0x36, 0xf5, 0x99, 0xa9, 0xeb, 0x84, 0xd1, 0xc6, 0x14, 0x6b, 0x0f, 0x54, 0x36, 0x52, 0xdd, 0x45, 0x26, 0x74, 0x3b, 0xa4, 0x2c, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_145 = { .name = "xdh_wei25519_145", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_145_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_145_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_145_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 146 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 146 for XDH, tcId is 147 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_146_peerpubkey[] = { 0x95, 0xaf, 0xf8, 0x5a, 0x6c, 0xf2, 0x88, 0x9d, 0xc3, 0x0d, 0x68, 0xa9, 0xfc, 0x73, 0x5e, 0x68, 0x2c, 0x14, 0x02, 0x61, 0xb3, 0x7f, 0x59, 0x6a, 0x7a, 0x10, 0x1f, 0xd8, 0xbf, 0x6d, 0x3e, 0x6a, }; static const unsigned char xdh_wei25519_146_privkey[] = { 0x00, 0xc1, 0x03, 0x57, 0x8d, 0x5c, 0x07, 0x9d, 0x7b, 0xcc, 0x22, 0xc1, 0xc3, 0x1e, 0x78, 0x7c, 0x1b, 0x15, 0xc5, 0x7f, 0xcb, 0x49, 0x3f, 0xda, 0xfe, 0xfa, 0x20, 0x37, 0x1c, 0xfc, 0x74, 0x6b, }; static const unsigned char xdh_wei25519_146_sharedsecret[] = { 0xdf, 0xa9, 0x88, 0xa4, 0x77, 0x00, 0x3b, 0xe1, 0x25, 0xb9, 0x5c, 0xcb, 0xf2, 0x22, 0x3d, 0x97, 0x72, 0x95, 0x77, 0xd2, 0x5e, 0x1d, 0x6e, 0x89, 0xe3, 0xda, 0x0a, 0xfa, 0xbd, 0xd0, 0xae, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_146 = { .name = "xdh_wei25519_146", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_146_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_146_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_146_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 147 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 147 for XDH, tcId is 148 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_147_peerpubkey[] = { 0x43, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_147_privkey[] = { 0x70, 0x05, 0xbb, 0x92, 0x74, 0x85, 0xc4, 0x35, 0x64, 0x2b, 0x42, 0x4a, 0x3d, 0xde, 0x01, 0x4b, 0xcf, 0x76, 0x34, 0x5e, 0x5b, 0xe6, 0x4a, 0xe6, 0xe9, 0xb2, 0x4d, 0xb3, 0x9e, 0x1c, 0xdb, 0x51, }; static const unsigned char xdh_wei25519_147_sharedsecret[] = { 0xd4, 0x50, 0xaf, 0x45, 0xb8, 0xed, 0x5f, 0xe1, 0x40, 0xcc, 0x52, 0x63, 0xff, 0xb7, 0xb5, 0x2e, 0x66, 0x73, 0x68, 0x99, 0xa8, 0xb8, 0x72, 0xb6, 0xe2, 0x85, 0x52, 0x12, 0x98, 0x19, 0xb2, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_147 = { .name = "xdh_wei25519_147", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_147_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_147_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_147_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 148 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 148 for XDH, tcId is 149 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_148_peerpubkey[] = { 0x45, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_148_privkey[] = { 0x08, 0x22, 0x03, 0x9a, 0x5d, 0xc1, 0x3c, 0x40, 0xfc, 0xcc, 0xf3, 0x46, 0xe2, 0xa7, 0x76, 0x9b, 0x4f, 0xd2, 0x72, 0x05, 0x2d, 0x43, 0x26, 0x0a, 0xd6, 0x26, 0x46, 0x8a, 0x50, 0xd4, 0x41, 0x62, }; static const unsigned char xdh_wei25519_148_sharedsecret[] = { 0x58, 0x00, 0x2c, 0x89, 0xbf, 0x8b, 0xc3, 0x2a, 0xe6, 0xfc, 0x20, 0x5b, 0x79, 0x6a, 0xcd, 0x13, 0xef, 0x7f, 0x84, 0x76, 0xf6, 0x49, 0x2a, 0xe4, 0xb2, 0xbe, 0x47, 0xf1, 0x09, 0x5e, 0x8a, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_148 = { .name = "xdh_wei25519_148", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_148_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_148_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_148_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 149 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 149 for XDH, tcId is 150 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_149_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_149_privkey[] = { 0x40, 0xa6, 0x34, 0x9c, 0x03, 0xf0, 0xdc, 0x0a, 0x42, 0x35, 0x8f, 0x63, 0x53, 0xca, 0x67, 0x63, 0x2a, 0xf6, 0x87, 0xb1, 0x4c, 0x9d, 0xff, 0x62, 0x6c, 0x54, 0xe2, 0x11, 0xe8, 0xfc, 0x35, 0x5a, }; static const unsigned char xdh_wei25519_149_sharedsecret[] = { 0x77, 0x73, 0xaa, 0xd6, 0xe7, 0x2e, 0xb1, 0x73, 0x5b, 0x65, 0xad, 0x51, 0xf7, 0xda, 0xd2, 0x58, 0xc1, 0x1d, 0x7b, 0xff, 0xf5, 0x30, 0x94, 0x42, 0x4c, 0xb1, 0x03, 0xcd, 0x6b, 0xfb, 0x43, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_149 = { .name = "xdh_wei25519_149", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_149_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_149_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_149_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 150 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 150 for XDH, tcId is 151 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_150_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_150_privkey[] = { 0x50, 0x69, 0x6d, 0x4d, 0x05, 0x20, 0x99, 0x71, 0xd6, 0xba, 0x06, 0x76, 0xea, 0x27, 0x42, 0x62, 0xba, 0x63, 0x9a, 0xac, 0x74, 0xfa, 0x75, 0xe5, 0xdf, 0x45, 0x70, 0x76, 0x8a, 0xd8, 0xae, 0x74, }; static const unsigned char xdh_wei25519_150_sharedsecret[] = { 0xc1, 0x18, 0xdd, 0xf6, 0x46, 0x2f, 0xbe, 0xa8, 0x0f, 0x14, 0xef, 0x1f, 0x29, 0x72, 0xa1, 0xab, 0x12, 0xca, 0xfa, 0x51, 0x1d, 0x13, 0x23, 0xd4, 0xd2, 0x2d, 0x0d, 0x42, 0x6d, 0x65, 0x1b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_150 = { .name = "xdh_wei25519_150", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_150_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_150_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_150_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 151 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 151 for XDH, tcId is 152 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_151_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_151_privkey[] = { 0x68, 0xbb, 0x68, 0x0c, 0x85, 0x3f, 0x4e, 0x4d, 0xaa, 0x47, 0xc5, 0x86, 0xdc, 0x88, 0x6c, 0xf4, 0x56, 0x8d, 0x7b, 0x03, 0x83, 0x77, 0x0f, 0x6d, 0xf4, 0x39, 0xa5, 0x3b, 0xe4, 0xa3, 0x23, 0x6d, }; static const unsigned char xdh_wei25519_151_sharedsecret[] = { 0xcc, 0x07, 0x75, 0xbf, 0xd9, 0x70, 0xa2, 0x70, 0x6b, 0x11, 0xc7, 0x22, 0x2a, 0x44, 0x36, 0xa3, 0xd1, 0x71, 0x60, 0x38, 0x2c, 0x83, 0xb7, 0x6f, 0x89, 0xb6, 0x61, 0x92, 0xc8, 0x1b, 0x44, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_151 = { .name = "xdh_wei25519_151", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_151_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_151_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_151_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 152 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 152 for XDH, tcId is 153 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_152_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_152_privkey[] = { 0xb0, 0xf6, 0xc2, 0x8d, 0xbd, 0xc6, 0x47, 0x06, 0x8a, 0x76, 0xd7, 0x18, 0x05, 0xef, 0x77, 0x0f, 0x08, 0x7c, 0xf7, 0x6b, 0x82, 0xaf, 0xdc, 0x0d, 0x26, 0xc4, 0x5b, 0x71, 0xac, 0xe4, 0x97, 0x68, }; static const unsigned char xdh_wei25519_152_sharedsecret[] = { 0xf0, 0x09, 0x7f, 0xa0, 0xba, 0x70, 0xd0, 0x19, 0x12, 0x62, 0x77, 0xab, 0x15, 0xc5, 0x6e, 0xcc, 0x17, 0x0c, 0xa8, 0x81, 0x80, 0xb2, 0xbf, 0x9d, 0x80, 0xfc, 0xda, 0x3d, 0x7d, 0x74, 0x55, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_152 = { .name = "xdh_wei25519_152", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_152_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_152_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_152_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 153 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 153 for XDH, tcId is 154 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_153_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_153_privkey[] = { 0x18, 0x63, 0x0f, 0x93, 0x59, 0x86, 0x37, 0xc3, 0x5d, 0xa6, 0x23, 0xa7, 0x45, 0x59, 0xcf, 0x94, 0x43, 0x74, 0xa5, 0x59, 0x11, 0x4c, 0x79, 0x37, 0x81, 0x10, 0x41, 0xfc, 0x86, 0x05, 0x56, 0x4a, }; static const unsigned char xdh_wei25519_153_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_153 = { .name = "xdh_wei25519_153", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_153_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_153_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_153_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 154 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 154 for XDH, tcId is 155 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_154_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_154_privkey[] = { 0x58, 0x1e, 0xcb, 0xda, 0x5a, 0x4a, 0x22, 0x80, 0x44, 0xfe, 0xfd, 0x6e, 0x03, 0xdf, 0x23, 0x45, 0x58, 0xc3, 0xc7, 0x91, 0x52, 0xc6, 0xe2, 0xc5, 0xe6, 0x0b, 0x14, 0x2c, 0x4f, 0x26, 0xa8, 0x51, }; static const unsigned char xdh_wei25519_154_sharedsecret[] = { 0x59, 0xe7, 0xb1, 0xe6, 0xf4, 0x70, 0x65, 0xa4, 0x8b, 0xd3, 0x49, 0x13, 0xd9, 0x10, 0x17, 0x6b, 0x67, 0x92, 0xa1, 0x37, 0x2a, 0xad, 0x22, 0xe7, 0x3c, 0xd7, 0xdf, 0x45, 0xfc, 0xf9, 0x1a, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_154 = { .name = "xdh_wei25519_154", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_154_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_154_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_154_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 155 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 155 for XDH, tcId is 156 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_155_peerpubkey[] = { 0x77, 0xaf, 0x0d, 0x38, 0x97, 0xa7, 0x15, 0xdf, 0xe2, 0x5d, 0xf5, 0xd5, 0x38, 0xcf, 0x13, 0x3b, 0xc9, 0xab, 0x7a, 0xd5, 0x2d, 0xf6, 0xbd, 0x92, 0x2a, 0x2f, 0xb7, 0x56, 0x21, 0xd5, 0x99, 0x01, }; static const unsigned char xdh_wei25519_155_privkey[] = { 0xb0, 0x56, 0x1a, 0x38, 0x00, 0x07, 0x95, 0xb7, 0xcb, 0x53, 0x7b, 0x55, 0xe9, 0x75, 0xea, 0x45, 0x2c, 0x21, 0x18, 0x50, 0x62, 0x95, 0xd5, 0xeb, 0x15, 0xfd, 0x9c, 0x83, 0xb6, 0x7f, 0x7a, 0x50, }; static const unsigned char xdh_wei25519_155_sharedsecret[] = { 0x17, 0x9f, 0x6b, 0x02, 0x07, 0x48, 0xac, 0xba, 0x34, 0x91, 0x33, 0xea, 0xa4, 0x51, 0x8f, 0x1b, 0xd8, 0xba, 0xb7, 0xbf, 0xc4, 0xfb, 0x05, 0xfd, 0x4c, 0x24, 0xe7, 0x55, 0x3d, 0xa1, 0xe9, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_155 = { .name = "xdh_wei25519_155", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_155_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_155_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_155_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 156 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 156 for XDH, tcId is 157 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_156_peerpubkey[] = { 0x4e, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x0e, }; static const unsigned char xdh_wei25519_156_privkey[] = { 0xb0, 0x0f, 0x7d, 0xf2, 0xd4, 0x71, 0x28, 0x44, 0x1c, 0x72, 0x70, 0xb9, 0xa8, 0x7e, 0xee, 0x45, 0xb6, 0x05, 0x6f, 0xc6, 0x42, 0x36, 0xa5, 0x7b, 0xdf, 0x81, 0xdb, 0xcc, 0xcf, 0x5f, 0x5d, 0x42, }; static const unsigned char xdh_wei25519_156_sharedsecret[] = { 0x43, 0xc5, 0xee, 0x14, 0x51, 0xf2, 0x13, 0xef, 0x76, 0x24, 0x72, 0x9e, 0x59, 0x5a, 0x0f, 0xee, 0x7c, 0x9a, 0xf7, 0xee, 0x5d, 0x27, 0xeb, 0x03, 0x27, 0x8e, 0xe9, 0xf9, 0x4c, 0x20, 0x23, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_156 = { .name = "xdh_wei25519_156", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_156_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_156_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_156_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 157 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 157 for XDH, tcId is 158 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_157_peerpubkey[] = { 0xad, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x11, }; static const unsigned char xdh_wei25519_157_privkey[] = { 0xc8, 0xf7, 0xa0, 0xc0, 0xbf, 0xb1, 0xe9, 0xc7, 0x25, 0x76, 0xc5, 0x34, 0xf8, 0x68, 0x54, 0xfb, 0xe4, 0xaf, 0x52, 0x1d, 0x4f, 0xa8, 0x07, 0xf6, 0x7e, 0x24, 0x40, 0xe1, 0x00, 0xec, 0x88, 0x52, }; static const unsigned char xdh_wei25519_157_sharedsecret[] = { 0x2f, 0x35, 0x0b, 0xcf, 0x0b, 0x40, 0x78, 0x4d, 0x1d, 0x75, 0x6c, 0x9c, 0xa3, 0xe3, 0x8e, 0xc9, 0xdd, 0x68, 0xba, 0x80, 0xfa, 0xf1, 0xf9, 0x84, 0x7d, 0xe5, 0x07, 0x79, 0xc0, 0xd4, 0x90, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_157 = { .name = "xdh_wei25519_157", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_157_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_157_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_157_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 158 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 158 for XDH, tcId is 159 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_158_peerpubkey[] = { 0x77, 0x0f, 0x42, 0x18, 0xef, 0x23, 0x4f, 0x5e, 0x18, 0x54, 0x66, 0xe3, 0x24, 0x42, 0xc3, 0x02, 0xbb, 0xec, 0x21, 0xbb, 0xb6, 0xcd, 0x28, 0xc9, 0x79, 0xe7, 0x83, 0xfe, 0x50, 0x13, 0x33, 0x3f, }; static const unsigned char xdh_wei25519_158_privkey[] = { 0x58, 0x18, 0x1f, 0x58, 0x1a, 0xa3, 0x70, 0x22, 0xff, 0x71, 0xc5, 0x6c, 0x6e, 0x68, 0xe6, 0x17, 0x5d, 0x96, 0x7c, 0x5c, 0x99, 0x5a, 0x24, 0x98, 0x85, 0xf6, 0x65, 0x65, 0x07, 0x4d, 0xed, 0x4d, }; static const unsigned char xdh_wei25519_158_sharedsecret[] = { 0xd5, 0xd6, 0x50, 0xdc, 0x62, 0x10, 0x72, 0xec, 0xa9, 0x52, 0xe4, 0x34, 0x4e, 0xfc, 0x73, 0x20, 0xb2, 0xb1, 0x45, 0x9a, 0xba, 0x48, 0xf5, 0xe2, 0x48, 0x0d, 0xb8, 0x81, 0xc5, 0x0c, 0xc6, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_158 = { .name = "xdh_wei25519_158", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_158_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_158_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_158_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 159 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 159 for XDH, tcId is 160 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_159_peerpubkey[] = { 0x5c, 0x61, 0x18, 0xc4, 0xc7, 0x4c, 0xfb, 0x84, 0x2d, 0x9a, 0x87, 0x44, 0x9f, 0x9d, 0x8d, 0xb8, 0xb9, 0x92, 0xd4, 0x6c, 0x5a, 0x90, 0x93, 0xce, 0x2f, 0xcb, 0x7a, 0x49, 0xb5, 0x35, 0xc4, 0x51, }; static const unsigned char xdh_wei25519_159_privkey[] = { 0x30, 0x1c, 0x93, 0x5c, 0xae, 0x43, 0x57, 0x07, 0x0b, 0x0a, 0xda, 0xf9, 0xcd, 0x61, 0x92, 0x83, 0x0b, 0x2c, 0x98, 0x9c, 0x15, 0x37, 0x29, 0xee, 0xd9, 0x9f, 0x58, 0x9e, 0xb4, 0x5f, 0x88, 0x4b, }; static const unsigned char xdh_wei25519_159_sharedsecret[] = { 0x90, 0x9c, 0xc5, 0x72, 0x75, 0xd5, 0x4f, 0x20, 0xc6, 0x7b, 0x45, 0xf9, 0xaf, 0x94, 0x84, 0xfd, 0x67, 0x58, 0x1a, 0xfb, 0x7d, 0x88, 0x7b, 0xee, 0x1d, 0xb5, 0x46, 0x1f, 0x30, 0x3e, 0xf2, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_159 = { .name = "xdh_wei25519_159", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_159_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_159_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_159_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 160 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 160 for XDH, tcId is 161 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_160_peerpubkey[] = { 0x40, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x6e, }; static const unsigned char xdh_wei25519_160_privkey[] = { 0xd0, 0x02, 0x29, 0x2d, 0x43, 0x59, 0xa3, 0xd4, 0x2b, 0xc8, 0x76, 0x7f, 0x13, 0x80, 0x00, 0x93, 0x32, 0xe7, 0xa0, 0xdf, 0x2f, 0x33, 0x79, 0x01, 0x1a, 0xb7, 0x8f, 0x78, 0x9f, 0x6b, 0xaa, 0x54, }; static const unsigned char xdh_wei25519_160_sharedsecret[] = { 0x4a, 0x7e, 0x2c, 0x5c, 0xaf, 0x1d, 0x81, 0x80, 0xeb, 0x1c, 0x4f, 0x22, 0x69, 0x2f, 0x29, 0xa1, 0x4b, 0x4c, 0xdc, 0x9b, 0x19, 0x3b, 0xd1, 0xd1, 0x6e, 0x2f, 0x27, 0x43, 0x8e, 0xef, 0x14, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_160 = { .name = "xdh_wei25519_160", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_160_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_160_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_160_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 161 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 161 for XDH, tcId is 162 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_161_peerpubkey[] = { 0x07, 0x8f, 0xa5, 0x23, 0x49, 0x8f, 0xb5, 0x1c, 0xba, 0x11, 0x12, 0xd8, 0x3b, 0x20, 0xaf, 0x44, 0x8b, 0x80, 0x09, 0xd8, 0xee, 0xa1, 0x43, 0x68, 0x56, 0x4d, 0x01, 0xb8, 0xf9, 0xb6, 0x08, 0x6f, }; static const unsigned char xdh_wei25519_161_privkey[] = { 0xd0, 0xc2, 0xc4, 0x9e, 0x64, 0x4a, 0xb7, 0x38, 0x27, 0x07, 0x07, 0xff, 0x99, 0x17, 0x06, 0x59, 0x42, 0x68, 0x7e, 0x2f, 0x12, 0x88, 0x6d, 0x96, 0x11, 0x61, 0xdb, 0x46, 0xc0, 0x5b, 0x56, 0x5f, }; static const unsigned char xdh_wei25519_161_sharedsecret[] = { 0xc0, 0xee, 0x59, 0xd3, 0x68, 0x5f, 0xc2, 0xc3, 0xc8, 0x03, 0x60, 0x8b, 0x5e, 0xe3, 0x9a, 0x7f, 0x8d, 0xa3, 0x0b, 0x48, 0xe4, 0x29, 0x3a, 0xe0, 0x11, 0xf0, 0xea, 0x1e, 0x5a, 0xeb, 0x71, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_161 = { .name = "xdh_wei25519_161", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_161_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_161_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_161_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 162 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 162 for XDH, tcId is 163 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_162_peerpubkey[] = { 0x9f, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x71, }; static const unsigned char xdh_wei25519_162_privkey[] = { 0xf0, 0x87, 0xd3, 0x8b, 0x27, 0x4c, 0x1d, 0xad, 0x1b, 0xce, 0x6e, 0xaa, 0x36, 0xb4, 0x8e, 0x21, 0x90, 0xb9, 0x0b, 0x9b, 0xf8, 0xca, 0x59, 0x66, 0x9c, 0xc5, 0xe0, 0x04, 0x64, 0x53, 0x43, 0x42, }; static const unsigned char xdh_wei25519_162_sharedsecret[] = { 0xb2, 0x52, 0xbc, 0x8e, 0xab, 0xfa, 0xa6, 0x8c, 0x56, 0xe5, 0x4d, 0x61, 0xb9, 0x90, 0x61, 0xa3, 0x5d, 0x11, 0xe3, 0xa7, 0xb9, 0xbd, 0xa4, 0x17, 0xd9, 0x0f, 0x69, 0xb1, 0x11, 0x9b, 0xcf, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_162 = { .name = "xdh_wei25519_162", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_162_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_162_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_162_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 163 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 163 for XDH, tcId is 164 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_163_peerpubkey[] = { 0x76, 0x50, 0xf2, 0xc7, 0x68, 0x58, 0xea, 0x20, 0x1d, 0xa2, 0x02, 0x2a, 0xc7, 0x30, 0xec, 0xc4, 0x36, 0x54, 0x85, 0x2a, 0xd2, 0x09, 0x42, 0x6d, 0xd5, 0xd0, 0x48, 0xa9, 0xde, 0x2a, 0x66, 0x7e, }; static const unsigned char xdh_wei25519_163_privkey[] = { 0x48, 0xdb, 0xcc, 0x5a, 0x69, 0x5f, 0x15, 0x14, 0xbb, 0xba, 0xa6, 0xad, 0x00, 0x84, 0x2b, 0x69, 0xd9, 0xae, 0x52, 0x16, 0xb1, 0x96, 0x3a, 0xdd, 0x07, 0xfb, 0x29, 0x47, 0xc9, 0x7b, 0x84, 0x47, }; static const unsigned char xdh_wei25519_163_sharedsecret[] = { 0xfb, 0xda, 0x33, 0xbc, 0x93, 0x0c, 0x08, 0xdf, 0x83, 0x72, 0x08, 0xe1, 0x9a, 0xfd, 0xc1, 0xcf, 0xe3, 0xfd, 0x0f, 0x8f, 0x0e, 0x39, 0x76, 0xbe, 0x34, 0x77, 0x5e, 0x58, 0xa4, 0xa7, 0x77, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_163 = { .name = "xdh_wei25519_163", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_163_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_163_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_163_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 164 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 164 for XDH, tcId is 165 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_164_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_164_privkey[] = { 0x58, 0x91, 0xc9, 0x27, 0x2c, 0xf9, 0xa1, 0x97, 0x73, 0x5b, 0x70, 0x1e, 0x57, 0x15, 0x26, 0x8d, 0x36, 0xd7, 0x43, 0x6b, 0x7e, 0x35, 0x1a, 0x3e, 0x99, 0x7a, 0x08, 0x62, 0xe4, 0x80, 0x7d, 0x4d, }; static const unsigned char xdh_wei25519_164_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_164 = { .name = "xdh_wei25519_164", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_164_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_164_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_164_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 165 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 165 for XDH, tcId is 166 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_165_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_165_privkey[] = { 0xc0, 0xf9, 0xc6, 0x0a, 0xea, 0x73, 0x73, 0x1d, 0x92, 0xab, 0x5e, 0xd9, 0xf4, 0xce, 0xa1, 0x22, 0xf9, 0xa6, 0xeb, 0x25, 0x77, 0xbd, 0xa7, 0x2f, 0x94, 0x94, 0x8f, 0xea, 0x4d, 0x4c, 0xc6, 0x5d, }; static const unsigned char xdh_wei25519_165_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_165 = { .name = "xdh_wei25519_165", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_165_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_165_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_165_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 166 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 166 for XDH, tcId is 167 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_166_peerpubkey[] = { 0xb0, 0x22, 0x4e, 0x71, 0x34, 0xcf, 0x92, 0xd4, 0x0a, 0x31, 0x51, 0x5f, 0x2f, 0x0e, 0x89, 0xc2, 0xa2, 0x77, 0x7e, 0x8a, 0xc2, 0xfe, 0x74, 0x1d, 0xb0, 0xdc, 0x39, 0x39, 0x9f, 0xdf, 0x27, 0x02, }; static const unsigned char xdh_wei25519_166_privkey[] = { 0x00, 0x66, 0xdd, 0x76, 0x74, 0xfe, 0x51, 0xf9, 0x32, 0x6c, 0x1e, 0x23, 0x9b, 0x87, 0x5f, 0x8a, 0xc0, 0x70, 0x1a, 0xae, 0x69, 0xa8, 0x04, 0xc2, 0x5f, 0xe4, 0x35, 0x95, 0xe8, 0x66, 0x0b, 0x45, }; static const unsigned char xdh_wei25519_166_sharedsecret[] = { 0x8d, 0xac, 0xfe, 0x7b, 0xea, 0xaa, 0x62, 0xb9, 0x4b, 0xf6, 0xe5, 0x0e, 0xe5, 0x21, 0x4d, 0x99, 0xad, 0x7c, 0xda, 0x5a, 0x43, 0x1e, 0xa0, 0xc6, 0x2f, 0x2b, 0x20, 0xa8, 0x9d, 0x73, 0xc6, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_166 = { .name = "xdh_wei25519_166", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_166_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_166_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_166_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 167 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 167 for XDH, tcId is 168 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_167_peerpubkey[] = { 0x60, 0x1e, 0x3f, 0xeb, 0xb8, 0x48, 0xec, 0x3e, 0x57, 0xfc, 0xe6, 0x45, 0x88, 0xaa, 0xd8, 0x2a, 0xfc, 0x9c, 0x2a, 0xf9, 0x9b, 0xbc, 0xdf, 0xfc, 0xc4, 0xcd, 0x58, 0xd4, 0xb3, 0xd1, 0x5c, 0x07, }; static const unsigned char xdh_wei25519_167_privkey[] = { 0x80, 0x06, 0x7f, 0x30, 0xf4, 0x0d, 0x61, 0x31, 0x8b, 0x42, 0x0c, 0x85, 0x9f, 0xce, 0x12, 0x8c, 0x90, 0x17, 0xab, 0x81, 0xb4, 0x7b, 0x76, 0x02, 0x8a, 0x57, 0xbc, 0x30, 0xd5, 0x85, 0x68, 0x46, }; static const unsigned char xdh_wei25519_167_sharedsecret[] = { 0x20, 0xf1, 0xd3, 0xfe, 0x90, 0xe0, 0x8b, 0xc6, 0xf1, 0x52, 0xbf, 0x5d, 0xac, 0xc3, 0xed, 0x35, 0x89, 0x97, 0x85, 0x33, 0x3f, 0x14, 0x70, 0xe6, 0xa6, 0x2c, 0x3b, 0x8c, 0xbe, 0x28, 0xd2, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_167 = { .name = "xdh_wei25519_167", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_167_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_167_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_167_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 168 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 168 for XDH, tcId is 169 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_168_peerpubkey[] = { 0x82, 0xa3, 0x80, 0x7b, 0xbd, 0xec, 0x2f, 0xa9, 0x93, 0x8f, 0xb4, 0x14, 0x1e, 0x27, 0xdc, 0x57, 0x45, 0x66, 0x06, 0x30, 0x1f, 0x78, 0xff, 0x71, 0x33, 0xcf, 0x24, 0xf3, 0xd1, 0x3e, 0xe1, 0x17, }; static const unsigned char xdh_wei25519_168_privkey[] = { 0x58, 0x45, 0x77, 0x66, 0x9d, 0x21, 0xce, 0x0a, 0xe3, 0xe3, 0x0b, 0x02, 0xc9, 0x78, 0x3f, 0xfe, 0x97, 0x70, 0x9c, 0xbf, 0xe3, 0x96, 0x88, 0x9a, 0xa3, 0x1e, 0x8e, 0xe4, 0x33, 0x52, 0xdc, 0x52, }; static const unsigned char xdh_wei25519_168_sharedsecret[] = { 0x2b, 0x28, 0xcc, 0x51, 0x40, 0xb8, 0x16, 0xad, 0xd5, 0xad, 0x3a, 0x77, 0xa8, 0x1b, 0x1c, 0x07, 0x3d, 0x67, 0xbf, 0x51, 0xbf, 0x95, 0xbd, 0xa2, 0x06, 0x4a, 0x14, 0xeb, 0x12, 0xd5, 0xf7, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_168 = { .name = "xdh_wei25519_168", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_168_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_168_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_168_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 169 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 169 for XDH, tcId is 170 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_169_peerpubkey[] = { 0xf3, 0x29, 0xab, 0x23, 0x76, 0x46, 0x2e, 0x5f, 0x31, 0x28, 0xa2, 0x68, 0x20, 0x86, 0x25, 0x3c, 0x19, 0x22, 0x2a, 0xc1, 0xe2, 0xbc, 0xa4, 0x56, 0x92, 0xf0, 0xc3, 0xb5, 0x28, 0xf4, 0xc4, 0x28, }; static const unsigned char xdh_wei25519_169_privkey[] = { 0x18, 0xe5, 0x97, 0xa4, 0xe2, 0xcc, 0xdb, 0x5e, 0x80, 0x52, 0xd5, 0x7c, 0x90, 0x09, 0x93, 0x8c, 0x2d, 0x4c, 0x43, 0xd6, 0xd8, 0xc9, 0xf9, 0x3c, 0x98, 0x72, 0x7b, 0x73, 0x11, 0x03, 0x59, 0x53, }; static const unsigned char xdh_wei25519_169_sharedsecret[] = { 0x83, 0x92, 0x16, 0x00, 0x83, 0xb9, 0xaf, 0x9e, 0x0e, 0xf4, 0x4f, 0xcf, 0xce, 0x53, 0xba, 0x8f, 0xf7, 0x28, 0x2e, 0xe7, 0xa6, 0xc7, 0x1a, 0xb6, 0x6f, 0x88, 0x43, 0xa5, 0x5d, 0x09, 0xcd, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_169 = { .name = "xdh_wei25519_169", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_169_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_169_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_169_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 170 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 170 for XDH, tcId is 171 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_170_peerpubkey[] = { 0x4f, 0xce, 0x3b, 0xb6, 0xc8, 0xaa, 0xf0, 0x22, 0xdb, 0xd1, 0x00, 0xe3, 0xcd, 0xe3, 0x94, 0x1b, 0x37, 0xd5, 0x43, 0xf0, 0x04, 0x01, 0xdb, 0xa7, 0xda, 0x9b, 0xc1, 0x43, 0xdf, 0xc5, 0x57, 0x09, }; static const unsigned char xdh_wei25519_170_privkey[] = { 0x88, 0x28, 0x1c, 0xc5, 0x1d, 0x55, 0x12, 0xd8, 0x81, 0x4e, 0xa5, 0x24, 0x9b, 0x87, 0x9d, 0xcb, 0xad, 0x03, 0x23, 0xd3, 0x85, 0x12, 0xda, 0xfb, 0xdc, 0x7b, 0xa8, 0x5b, 0xba, 0x8c, 0x8d, 0x5d, }; static const unsigned char xdh_wei25519_170_sharedsecret[] = { 0x42, 0x18, 0x4e, 0x22, 0xc5, 0x35, 0x53, 0x0c, 0x45, 0x7b, 0xd3, 0xb4, 0xf1, 0x08, 0x4c, 0xbf, 0x5e, 0x29, 0x7f, 0x50, 0x2f, 0xe1, 0x36, 0xb8, 0xd1, 0xda, 0xec, 0xf5, 0x33, 0x4c, 0xc9, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_170 = { .name = "xdh_wei25519_170", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_170_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_170_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_170_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 171 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 171 for XDH, tcId is 172 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_171_peerpubkey[] = { 0x15, 0xc6, 0x88, 0x51, 0xc1, 0xdb, 0x84, 0x4b, 0x5a, 0x1e, 0xf3, 0x45, 0x6a, 0x65, 0x9f, 0x18, 0x88, 0x54, 0xb1, 0xa7, 0x5f, 0xbd, 0xb2, 0xf6, 0x8f, 0x51, 0x4c, 0x92, 0x89, 0xce, 0x71, 0x1f, }; static const unsigned char xdh_wei25519_171_privkey[] = { 0xd0, 0xe7, 0x95, 0x45, 0x0d, 0xf0, 0xa8, 0x13, 0xc6, 0x57, 0x34, 0x96, 0xec, 0x57, 0x93, 0xca, 0x02, 0xe1, 0xbd, 0xba, 0xd1, 0x0e, 0xd0, 0x8d, 0xf8, 0x3f, 0xda, 0xed, 0x68, 0xb3, 0x38, 0x5f, }; static const unsigned char xdh_wei25519_171_sharedsecret[] = { 0xf6, 0x54, 0xd7, 0x8e, 0x59, 0x45, 0xb2, 0x4b, 0xc6, 0x3e, 0x3e, 0x6d, 0x79, 0x0e, 0x0a, 0xe9, 0x86, 0xe5, 0x39, 0x37, 0x76, 0x40, 0x68, 0xb1, 0xbc, 0xe9, 0x20, 0xe1, 0xd7, 0x9b, 0x75, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_171 = { .name = "xdh_wei25519_171", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_171_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_171_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_171_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 172 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 172 for XDH, tcId is 173 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_172_peerpubkey[] = { 0x42, 0x00, 0xa2, 0x42, 0x43, 0x43, 0x37, 0xb8, 0x91, 0x4f, 0x49, 0x34, 0x53, 0x01, 0xed, 0x78, 0x2b, 0x13, 0x59, 0x4f, 0x9e, 0xde, 0x08, 0x9c, 0x41, 0xfb, 0x1e, 0x7e, 0xa8, 0x2c, 0x90, 0x53, }; static const unsigned char xdh_wei25519_172_privkey[] = { 0x30, 0xb6, 0x9a, 0x1c, 0xc1, 0xeb, 0x2d, 0x0b, 0x83, 0xea, 0x21, 0x38, 0x46, 0xe9, 0x0a, 0x2c, 0x92, 0x20, 0x88, 0xbd, 0xf2, 0x94, 0xa6, 0x99, 0x5b, 0xf6, 0xe6, 0xe7, 0x7c, 0x64, 0x6c, 0x41, }; static const unsigned char xdh_wei25519_172_sharedsecret[] = { 0xcd, 0x8a, 0x09, 0xb0, 0x47, 0x95, 0xed, 0xcc, 0x70, 0x61, 0x86, 0x73, 0x73, 0x98, 0x1a, 0xa7, 0x48, 0x65, 0x1e, 0xbd, 0xce, 0x5e, 0xc2, 0x18, 0xa3, 0x35, 0xb8, 0x78, 0xce, 0xfe, 0x48, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_172 = { .name = "xdh_wei25519_172", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_172_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_172_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_172_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 173 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 173 for XDH, tcId is 174 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_173_peerpubkey[] = { 0xba, 0xab, 0xf0, 0x17, 0x4a, 0xaa, 0xea, 0x4d, 0xe4, 0x8c, 0xc8, 0x3a, 0xdf, 0xb0, 0x40, 0x14, 0x61, 0xa7, 0x41, 0x90, 0x3e, 0xa6, 0xfb, 0x13, 0x0d, 0x7d, 0x64, 0xb7, 0xbf, 0x03, 0xa9, 0x66, }; static const unsigned char xdh_wei25519_173_privkey[] = { 0x78, 0xb3, 0x0b, 0xb6, 0x3c, 0xd8, 0xad, 0xe7, 0x1b, 0x7a, 0x77, 0xd4, 0x26, 0xf4, 0x41, 0x9d, 0x05, 0xf1, 0x99, 0xff, 0xef, 0x34, 0x9e, 0x89, 0xfa, 0xa9, 0xd9, 0xa5, 0xf2, 0x1f, 0x66, 0x54, }; static const unsigned char xdh_wei25519_173_sharedsecret[] = { 0xc9, 0xf8, 0x25, 0x8f, 0x23, 0x7d, 0xb1, 0xc8, 0x07, 0x02, 0xc5, 0xc4, 0xd9, 0x04, 0x8d, 0xfb, 0xa9, 0xdf, 0xe2, 0x59, 0xda, 0x4a, 0xee, 0xe9, 0x0d, 0xc2, 0x94, 0x55, 0x26, 0x96, 0x12, 0x75, }; static const wycheproof_xdh_test xdh_wei25519_173 = { .name = "xdh_wei25519_173", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_173_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_173_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_173_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 174 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 174 for XDH, tcId is 175 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_174_peerpubkey[] = { 0xf1, 0x2f, 0x18, 0xbd, 0x59, 0xc1, 0x26, 0x34, 0x8f, 0x6a, 0x7a, 0x9f, 0x4a, 0x5f, 0xdd, 0x9f, 0xca, 0xf5, 0x81, 0x34, 0x50, 0x73, 0xa8, 0x51, 0xfb, 0xa0, 0x98, 0xe5, 0xd6, 0x4b, 0x4a, 0x0c, }; static const unsigned char xdh_wei25519_174_privkey[] = { 0xc0, 0xb3, 0x86, 0xf4, 0xef, 0x0d, 0x46, 0x98, 0x68, 0x64, 0x04, 0x97, 0x7e, 0x7b, 0x60, 0xcb, 0x6c, 0x1f, 0x8b, 0x60, 0x12, 0xa2, 0x2e, 0x29, 0xd6, 0x22, 0x4c, 0x59, 0x47, 0x43, 0x90, 0x41, }; static const unsigned char xdh_wei25519_174_sharedsecret[] = { 0x66, 0x00, 0xcb, 0xe9, 0x00, 0x61, 0x6a, 0x77, 0x0a, 0x12, 0x6b, 0x8b, 0x19, 0x15, 0x6d, 0x5e, 0x27, 0xe1, 0x17, 0x4b, 0xd5, 0x38, 0xd0, 0x94, 0x4e, 0xb3, 0xc0, 0xbe, 0x48, 0x99, 0xc7, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_174 = { .name = "xdh_wei25519_174", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_174_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_174_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_174_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 175 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 175 for XDH, tcId is 176 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_175_peerpubkey[] = { 0xbe, 0xe3, 0x86, 0x52, 0x7b, 0x77, 0x24, 0x90, 0xae, 0xb9, 0x6f, 0xc4, 0xd2, 0x3b, 0x93, 0x04, 0x03, 0x7c, 0xb4, 0x43, 0x0f, 0x64, 0xb2, 0x28, 0xf3, 0xd8, 0xb3, 0xb4, 0x98, 0x31, 0x9f, 0x22, }; static const unsigned char xdh_wei25519_175_privkey[] = { 0x98, 0x86, 0x60, 0x2e, 0x71, 0x9b, 0xac, 0xaf, 0xea, 0x09, 0x2b, 0xb7, 0x5b, 0x51, 0xae, 0x72, 0x58, 0xab, 0xe1, 0xa3, 0x64, 0xc1, 0x76, 0x85, 0x7f, 0x3d, 0xc1, 0x88, 0xc0, 0x3e, 0x67, 0x59, }; static const unsigned char xdh_wei25519_175_sharedsecret[] = { 0x3f, 0xe7, 0x10, 0xd6, 0x34, 0x4f, 0xf0, 0xcb, 0x34, 0x2e, 0x52, 0x34, 0x9e, 0x1c, 0x5b, 0x57, 0xb7, 0xa2, 0x71, 0xf2, 0xa1, 0x33, 0xbb, 0x52, 0x49, 0xbb, 0xe4, 0x0d, 0xc8, 0x6e, 0x1b, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_175 = { .name = "xdh_wei25519_175", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_175_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_175_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_175_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 176 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 176 for XDH, tcId is 177 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_176_peerpubkey[] = { 0xcf, 0x91, 0x1a, 0xc9, 0x1b, 0x0d, 0x94, 0x40, 0x49, 0xce, 0xc6, 0x6a, 0xe5, 0xef, 0x0c, 0x45, 0x49, 0xd1, 0xe6, 0x12, 0xe1, 0x07, 0xc6, 0x8e, 0x87, 0x26, 0x3a, 0x2f, 0xbc, 0xf8, 0x32, 0x3f, }; static const unsigned char xdh_wei25519_176_privkey[] = { 0xb8, 0x39, 0x60, 0xf5, 0xd0, 0x61, 0x3c, 0xda, 0xac, 0x6d, 0xda, 0x69, 0x03, 0x51, 0x66, 0x6e, 0x9f, 0x27, 0x7b, 0xba, 0x6b, 0xd4, 0x06, 0xb0, 0xe2, 0x7a, 0x18, 0x86, 0xbb, 0x2d, 0x3e, 0x46, }; static const unsigned char xdh_wei25519_176_sharedsecret[] = { 0x71, 0x37, 0x3e, 0xbe, 0x67, 0xf3, 0x9a, 0x2c, 0x23, 0x00, 0x27, 0xc7, 0xdb, 0x4b, 0x3b, 0x74, 0xba, 0xb8, 0x0e, 0xd2, 0x12, 0xb2, 0x32, 0x67, 0x97, 0x85, 0xee, 0x10, 0xf4, 0x7c, 0x30, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_176 = { .name = "xdh_wei25519_176", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_176_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_176_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_176_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 177 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 177 for XDH, tcId is 178 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_177_peerpubkey[] = { 0x1e, 0x6e, 0xe5, 0x36, 0xe4, 0xf2, 0x6b, 0xbf, 0xb6, 0x31, 0x39, 0x95, 0x1a, 0x10, 0xf3, 0xba, 0xb6, 0x2e, 0x19, 0xed, 0x1e, 0xf8, 0x39, 0x71, 0x78, 0xd9, 0xc5, 0xd0, 0x43, 0x07, 0xcd, 0x40, }; static const unsigned char xdh_wei25519_177_privkey[] = { 0xd0, 0x3b, 0x75, 0xf0, 0x9a, 0xc8, 0x07, 0xdf, 0xd2, 0xee, 0x35, 0x2c, 0x04, 0xa1, 0xf2, 0x59, 0x84, 0x72, 0x0f, 0x78, 0x5f, 0xfa, 0xa0, 0xaf, 0x88, 0xbc, 0x5d, 0xb6, 0xff, 0x9c, 0x34, 0x53, }; static const unsigned char xdh_wei25519_177_sharedsecret[] = { 0x23, 0x8e, 0xef, 0x43, 0xc5, 0x89, 0x82, 0x2e, 0x1d, 0x3d, 0xe4, 0x1c, 0x1c, 0xc4, 0x6d, 0xcf, 0xec, 0x7a, 0x93, 0xfe, 0xbf, 0x37, 0xc8, 0x54, 0x6b, 0x66, 0x25, 0xe1, 0xa1, 0x23, 0x81, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_177 = { .name = "xdh_wei25519_177", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_177_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_177_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_177_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 178 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 178 for XDH, tcId is 179 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_178_peerpubkey[] = { 0x2f, 0x1c, 0x79, 0xad, 0x84, 0x88, 0xdb, 0x6f, 0x51, 0x46, 0x90, 0x3b, 0x2d, 0xc4, 0x6c, 0xfb, 0xfc, 0x83, 0x4b, 0xbc, 0xf0, 0x9b, 0x4d, 0xd7, 0x0c, 0x27, 0x4c, 0x4b, 0x67, 0xce, 0x60, 0x5d, }; static const unsigned char xdh_wei25519_178_privkey[] = { 0xd0, 0x36, 0x94, 0x8c, 0x0e, 0xc2, 0x23, 0xf0, 0xee, 0x57, 0x7e, 0x39, 0x0d, 0xbf, 0x87, 0x22, 0x23, 0x58, 0xed, 0x19, 0x9f, 0x28, 0x23, 0x34, 0x5a, 0xd1, 0x54, 0xbb, 0xc4, 0xcb, 0xcc, 0x47, }; static const unsigned char xdh_wei25519_178_sharedsecret[] = { 0x87, 0xa7, 0x9c, 0x9c, 0x23, 0x1d, 0x3b, 0x95, 0x26, 0xb4, 0x9b, 0xf3, 0xd6, 0x83, 0xbf, 0x38, 0xc3, 0xc3, 0x19, 0xaf, 0x7c, 0x7c, 0x5d, 0x14, 0x56, 0x48, 0x73, 0x98, 0xda, 0x53, 0x50, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_178 = { .name = "xdh_wei25519_178", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_178_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_178_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_178_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 179 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 179 for XDH, tcId is 180 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_179_peerpubkey[] = { 0xfc, 0xcf, 0xe7, 0x42, 0xa6, 0x3e, 0xd9, 0xcb, 0x70, 0x95, 0x85, 0x60, 0xb5, 0xa0, 0x22, 0x60, 0x35, 0x0a, 0x7e, 0xcb, 0xaf, 0x8c, 0x57, 0xae, 0x04, 0x5f, 0x67, 0x1a, 0x29, 0xb4, 0xb5, 0x73, }; static const unsigned char xdh_wei25519_179_privkey[] = { 0xd0, 0x54, 0xde, 0xd6, 0x13, 0xfe, 0xbf, 0x29, 0x50, 0xac, 0x5c, 0x92, 0x7f, 0xcb, 0x12, 0x0c, 0x38, 0x7d, 0xe0, 0xba, 0x61, 0xb3, 0x31, 0xcd, 0x33, 0x02, 0x4c, 0x8b, 0x6e, 0x73, 0x70, 0x48, }; static const unsigned char xdh_wei25519_179_sharedsecret[] = { 0xd6, 0x83, 0xca, 0x61, 0x94, 0x45, 0x2d, 0x87, 0x8c, 0x12, 0xd7, 0xda, 0x35, 0xf2, 0x28, 0x33, 0xf9, 0x97, 0x28, 0xbb, 0xa8, 0x99, 0x31, 0xa5, 0x12, 0x74, 0xf6, 0x12, 0x10, 0x33, 0x6a, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_179 = { .name = "xdh_wei25519_179", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_179_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_179_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_179_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 180 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 180 for XDH, tcId is 181 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_180_peerpubkey[] = { 0xcb, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_180_privkey[] = { 0xe8, 0x2c, 0x48, 0x06, 0x31, 0xfb, 0x15, 0x3b, 0xa2, 0x21, 0x1f, 0xe6, 0x03, 0x03, 0x2b, 0x3e, 0x71, 0xb1, 0x62, 0xdb, 0xd3, 0xc1, 0x1b, 0xec, 0x03, 0x20, 0x8f, 0xfc, 0xd5, 0x10, 0x65, 0x5f, }; static const unsigned char xdh_wei25519_180_sharedsecret[] = { 0xdb, 0xf6, 0x20, 0x35, 0x16, 0x63, 0x58, 0x40, 0xcf, 0x69, 0xa0, 0x2d, 0xb8, 0x7c, 0xf0, 0xd9, 0x5d, 0xae, 0x31, 0x5d, 0xa7, 0xfc, 0x1e, 0xc7, 0xce, 0x2b, 0x29, 0xe1, 0xf2, 0xdb, 0x66, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_180 = { .name = "xdh_wei25519_180", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_180_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_180_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_180_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 181 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 181 for XDH, tcId is 182 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_181_peerpubkey[] = { 0x10, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_181_privkey[] = { 0xc0, 0xc0, 0x1d, 0x28, 0xc1, 0xca, 0xb0, 0x1f, 0x59, 0x70, 0x0a, 0xca, 0x5f, 0x18, 0xd2, 0x69, 0x76, 0x58, 0xb3, 0x7f, 0xdd, 0x54, 0xa3, 0x39, 0xff, 0x39, 0x1c, 0x0a, 0x1a, 0x1b, 0x16, 0x45, }; static const unsigned char xdh_wei25519_181_sharedsecret[] = { 0x1f, 0xe3, 0x14, 0x74, 0x43, 0x90, 0xd5, 0x25, 0x27, 0x8b, 0x1f, 0x5f, 0xbf, 0x10, 0x81, 0x01, 0xb8, 0xde, 0xd5, 0x87, 0x08, 0x13, 0x75, 0xed, 0x4a, 0xc4, 0xac, 0x69, 0x0d, 0x92, 0x41, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_181 = { .name = "xdh_wei25519_181", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_181_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_181_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_181_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 182 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 182 for XDH, tcId is 183 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_182_peerpubkey[] = { 0xdc, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_182_privkey[] = { 0xc8, 0x2b, 0xde, 0x72, 0xdf, 0x36, 0x47, 0x96, 0x88, 0xc4, 0x85, 0xa8, 0xbf, 0x44, 0x2f, 0x4a, 0x34, 0x41, 0x2e, 0x42, 0x9c, 0x02, 0xdb, 0x97, 0x70, 0x4f, 0x03, 0xda, 0xf4, 0xdf, 0xd5, 0x42, }; static const unsigned char xdh_wei25519_182_sharedsecret[] = { 0xad, 0x45, 0x43, 0x95, 0xee, 0x39, 0x2b, 0xe6, 0x77, 0xbe, 0x7b, 0x9c, 0xb9, 0x14, 0x03, 0x8d, 0x57, 0xd2, 0xd8, 0x7e, 0xc5, 0x6c, 0xc9, 0x86, 0x78, 0xdd, 0x84, 0xf1, 0x99, 0x20, 0x91, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_182 = { .name = "xdh_wei25519_182", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_182_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_182_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_182_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 183 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 183 for XDH, tcId is 184 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_183_peerpubkey[] = { 0x21, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_183_privkey[] = { 0x50, 0x3f, 0x69, 0x76, 0x17, 0xfb, 0x02, 0xa7, 0xb8, 0xef, 0x00, 0xba, 0x34, 0xe7, 0xfc, 0x8c, 0xe9, 0x3f, 0x9e, 0xc3, 0xe1, 0xcb, 0xfe, 0x4b, 0xf2, 0xc0, 0x5b, 0xce, 0xe0, 0xcb, 0x97, 0x57, }; static const unsigned char xdh_wei25519_183_sharedsecret[] = { 0xc6, 0xd6, 0x49, 0x92, 0x55, 0x13, 0x33, 0x98, 0xf9, 0xdd, 0x7f, 0x32, 0x52, 0x5d, 0xb9, 0x77, 0xa5, 0x38, 0x11, 0x88, 0x00, 0xbf, 0xaf, 0x3a, 0xad, 0x8b, 0xcd, 0x26, 0xf0, 0x2c, 0x38, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_183 = { .name = "xdh_wei25519_183", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_183_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_183_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_183_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 2, tcId is 184 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 184 for XDH, tcId is 185 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_184_peerpubkey[] = { 0xcc, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_184_privkey[] = { 0x58, 0xcd, 0x4c, 0xa1, 0xe4, 0x33, 0x11, 0x88, 0xde, 0x2b, 0x28, 0x89, 0x41, 0x9c, 0xe2, 0x0e, 0xc5, 0xef, 0x88, 0xa0, 0xe9, 0x3a, 0xf0, 0x92, 0x09, 0x90, 0x65, 0x55, 0x1b, 0x90, 0x4e, 0x41, }; static const unsigned char xdh_wei25519_184_sharedsecret[] = { 0x0d, 0x74, 0x21, 0x4d, 0xa1, 0x34, 0x4b, 0x11, 0x1d, 0x59, 0xdf, 0xad, 0x37, 0x13, 0xeb, 0x56, 0xef, 0xfe, 0x7c, 0x56, 0x0c, 0x59, 0xcb, 0xbb, 0x99, 0xec, 0x31, 0x39, 0x62, 0xdb, 0xba, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_184 = { .name = "xdh_wei25519_184", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_184_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_184_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_184_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 185 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 185 for XDH, tcId is 186 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_185_peerpubkey[] = { 0x11, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_185_privkey[] = { 0x00, 0x4e, 0xa3, 0x44, 0x8b, 0x84, 0xca, 0x50, 0x9e, 0xfe, 0xc5, 0xfc, 0xc2, 0x4c, 0x63, 0xee, 0x98, 0x4d, 0xef, 0x63, 0xb2, 0x9d, 0xeb, 0x90, 0x37, 0x89, 0x47, 0x09, 0x70, 0x9c, 0x09, 0x57, }; static const unsigned char xdh_wei25519_185_sharedsecret[] = { 0x7b, 0x9d, 0xbf, 0x8d, 0x6c, 0x6d, 0x65, 0x89, 0x8b, 0x51, 0x81, 0x67, 0xbf, 0x40, 0x11, 0xd5, 0x4d, 0xdc, 0x26, 0x5d, 0x95, 0x3c, 0x07, 0x43, 0xd7, 0x86, 0x8e, 0x22, 0xd9, 0x90, 0x9e, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_185 = { .name = "xdh_wei25519_185", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_185_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_185_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_185_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 186 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 186 for XDH, tcId is 187 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_186_peerpubkey[] = { 0xdd, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_186_privkey[] = { 0xc8, 0xa6, 0xeb, 0x00, 0xa4, 0xd7, 0x4b, 0xbd, 0xff, 0x23, 0x95, 0x22, 0xc3, 0xc8, 0x91, 0xed, 0x7c, 0xe1, 0x90, 0x4b, 0xe2, 0xa3, 0x29, 0xcd, 0x0a, 0xe0, 0x06, 0x1a, 0x25, 0x3c, 0x95, 0x42, }; static const unsigned char xdh_wei25519_186_sharedsecret[] = { 0xfb, 0x0e, 0x02, 0x09, 0xc5, 0xb9, 0xd5, 0x1b, 0x40, 0x11, 0x83, 0xd7, 0xe5, 0x6a, 0x59, 0x08, 0x1d, 0x37, 0xa6, 0x2a, 0xb1, 0xe0, 0x57, 0x53, 0xa0, 0x66, 0x7e, 0xeb, 0xd3, 0x77, 0xfd, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_186 = { .name = "xdh_wei25519_186", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_186_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_186_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_186_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 187 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 187 for XDH, tcId is 188 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_187_peerpubkey[] = { 0x22, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_187_privkey[] = { 0x50, 0x32, 0x2f, 0xf0, 0xd0, 0xdc, 0xdd, 0x6b, 0x14, 0xf3, 0x07, 0xc0, 0x4d, 0xfe, 0xce, 0xfe, 0x5b, 0x7c, 0xde, 0xaf, 0x92, 0xbf, 0xfb, 0x91, 0x9e, 0x9d, 0x62, 0xed, 0x27, 0x07, 0x90, 0x40, }; static const unsigned char xdh_wei25519_187_sharedsecret[] = { 0xdb, 0xe7, 0xa1, 0xfe, 0x3b, 0x33, 0x7c, 0x97, 0x20, 0x12, 0x3e, 0x6f, 0xcc, 0x02, 0xcf, 0x96, 0x95, 0x3a, 0x17, 0xdc, 0x9b, 0x39, 0x5a, 0x22, 0x06, 0xcb, 0x1b, 0xf9, 0x1d, 0x41, 0x75, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_187 = { .name = "xdh_wei25519_187", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_187_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_187_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_187_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 188 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 188 for XDH, tcId is 189 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_188_peerpubkey[] = { 0xe5, 0x8b, 0xac, 0xce, 0xde, 0x32, 0xbc, 0xf3, 0x3b, 0x3b, 0x6e, 0x3d, 0x69, 0xc0, 0x2a, 0xf8, 0x28, 0x4a, 0x96, 0x31, 0xde, 0x74, 0xb6, 0xaf, 0x3f, 0x04, 0x6a, 0x93, 0x69, 0xdf, 0x04, 0x0f, }; static const unsigned char xdh_wei25519_188_privkey[] = { 0xe0, 0x32, 0x8c, 0x7d, 0x18, 0x8d, 0x98, 0xfa, 0xf2, 0xac, 0x72, 0xd7, 0x28, 0xb7, 0xd1, 0x4f, 0x2b, 0xbb, 0xd7, 0xa9, 0x4d, 0x0f, 0xbd, 0x8e, 0x8f, 0x79, 0xab, 0xe0, 0xb1, 0xfe, 0x10, 0x55, }; static const unsigned char xdh_wei25519_188_sharedsecret[] = { 0x97, 0xbd, 0x42, 0x09, 0x3e, 0x0d, 0x48, 0xf9, 0x73, 0xf0, 0x59, 0xdd, 0x7a, 0xb9, 0xf9, 0x7d, 0x13, 0xd5, 0xb0, 0xd5, 0xee, 0xdf, 0xfd, 0xf6, 0xda, 0x3c, 0x3c, 0x43, 0x28, 0x72, 0xc5, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_188 = { .name = "xdh_wei25519_188", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_188_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_188_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_188_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 189 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 189 for XDH, tcId is 190 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_189_peerpubkey[] = { 0xc6, 0xd5, 0xc6, 0x93, 0xfc, 0x0a, 0x4e, 0x2d, 0xf6, 0xb2, 0x90, 0x02, 0x68, 0x60, 0x56, 0x6a, 0x16, 0x6b, 0x6d, 0x7a, 0xeb, 0xe3, 0xc9, 0x88, 0x28, 0xd4, 0x92, 0x74, 0x5c, 0x8d, 0xf9, 0x36, }; static const unsigned char xdh_wei25519_189_privkey[] = { 0x50, 0x17, 0x67, 0x9a, 0x17, 0xbd, 0x23, 0xad, 0xf9, 0x5a, 0xd4, 0x7e, 0x31, 0x0f, 0xc6, 0x52, 0x6f, 0x4b, 0xa9, 0xca, 0x3b, 0x08, 0x39, 0xb5, 0x3b, 0xd0, 0xd9, 0x28, 0x39, 0xeb, 0x5b, 0x4f, }; static const unsigned char xdh_wei25519_189_sharedsecret[] = { 0x99, 0xbc, 0xbc, 0x7b, 0x9a, 0xa5, 0xe2, 0x55, 0x80, 0xf9, 0x2b, 0xf5, 0x89, 0xe9, 0x5d, 0xae, 0x87, 0x4b, 0x83, 0xe4, 0x20, 0x22, 0x5d, 0x8a, 0x93, 0xe1, 0x8e, 0x96, 0xda, 0xc0, 0x0b, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_189 = { .name = "xdh_wei25519_189", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_189_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_189_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_189_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 190 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 190 for XDH, tcId is 191 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_190_peerpubkey[] = { 0xd1, 0x5f, 0x4b, 0xf2, 0xef, 0x5c, 0x7b, 0xda, 0x4e, 0xe9, 0x51, 0x96, 0xf3, 0xc0, 0xdf, 0x71, 0x0d, 0xf5, 0xd3, 0xd2, 0x06, 0x36, 0x0f, 0xc3, 0x17, 0x4e, 0xa7, 0x5c, 0x3a, 0xa3, 0xa7, 0x43, }; static const unsigned char xdh_wei25519_190_privkey[] = { 0x28, 0x64, 0xaa, 0xf6, 0x1c, 0x14, 0x6d, 0xf0, 0x6c, 0xc2, 0x56, 0xb0, 0x65, 0xf6, 0x6b, 0x34, 0x98, 0x5c, 0xc0, 0x15, 0xda, 0x5b, 0x1d, 0x64, 0x7a, 0x6e, 0xd4, 0xe2, 0xc7, 0x6b, 0xfc, 0x43, }; static const unsigned char xdh_wei25519_190_sharedsecret[] = { 0xaf, 0xa2, 0xad, 0xb5, 0x2a, 0x67, 0x0a, 0xa9, 0xc3, 0xec, 0x30, 0x20, 0xd5, 0xfd, 0xa2, 0x85, 0x47, 0x4e, 0xde, 0x5c, 0x4f, 0x4c, 0x30, 0xe9, 0x23, 0x8b, 0x88, 0x4a, 0x77, 0x96, 0x94, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_190 = { .name = "xdh_wei25519_190", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_190_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_190_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_190_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 191 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 191 for XDH, tcId is 192 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_191_peerpubkey[] = { 0x6d, 0xff, 0xb0, 0xa2, 0x58, 0x88, 0xbf, 0x23, 0xcf, 0x1a, 0xc7, 0x01, 0xbf, 0xbd, 0xed, 0xe8, 0xa1, 0x8e, 0x32, 0x3b, 0x9d, 0x4d, 0x3d, 0x31, 0xe5, 0x16, 0xa0, 0x5f, 0xce, 0x7c, 0xe8, 0x72, }; static const unsigned char xdh_wei25519_191_privkey[] = { 0x18, 0x4a, 0x6c, 0xfb, 0xab, 0xcb, 0xd1, 0x50, 0x7a, 0x2e, 0xa4, 0x1f, 0x52, 0x79, 0x65, 0x83, 0xdb, 0xdb, 0x85, 0x1b, 0x88, 0xa8, 0x57, 0x81, 0xee, 0x8e, 0x3c, 0x28, 0x78, 0x2c, 0x33, 0x49, }; static const unsigned char xdh_wei25519_191_sharedsecret[] = { 0xe6, 0xa2, 0xfc, 0x8e, 0xd9, 0x3c, 0xe3, 0x53, 0x01, 0x78, 0xfe, 0xf9, 0x4b, 0xb0, 0x05, 0x6f, 0x43, 0x11, 0x8e, 0x5b, 0xe3, 0xa6, 0xea, 0xbe, 0xe7, 0xd2, 0xed, 0x38, 0x4a, 0x73, 0x80, 0x0c, }; static const wycheproof_xdh_test xdh_wei25519_191 = { .name = "xdh_wei25519_191", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_191_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_191_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_191_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 192 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 192 for XDH, tcId is 193 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_192_peerpubkey[] = { 0x21, 0xf8, 0x6d, 0x12, 0x3c, 0x92, 0x3a, 0x92, 0xaa, 0xf2, 0x56, 0x3d, 0xf9, 0x4b, 0x5b, 0x5c, 0x93, 0x87, 0x4f, 0x5b, 0x7a, 0xb9, 0x95, 0x4a, 0xaa, 0x53, 0xe3, 0xd7, 0x2f, 0x0f, 0xf6, 0x7e, }; static const unsigned char xdh_wei25519_192_privkey[] = { 0xc8, 0x5f, 0x95, 0x4b, 0x85, 0xbc, 0x10, 0x2a, 0xca, 0x79, 0x96, 0x71, 0x79, 0x34, 0x52, 0x17, 0x65, 0x38, 0xd0, 0x77, 0x86, 0x2e, 0xe4, 0x5e, 0x0b, 0x25, 0x36, 0x19, 0x76, 0x7d, 0xff, 0x42, }; static const unsigned char xdh_wei25519_192_sharedsecret[] = { 0x7f, 0xc2, 0x87, 0x81, 0x63, 0x14, 0x10, 0xc5, 0xa6, 0xf2, 0x5c, 0x9c, 0xfd, 0x91, 0xec, 0x0a, 0x84, 0x8a, 0xdb, 0x7a, 0x9e, 0xb4, 0x0b, 0xc5, 0xb4, 0x95, 0xd0, 0xf4, 0x75, 0x3f, 0x22, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_192 = { .name = "xdh_wei25519_192", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_192_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_192_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_192_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 193 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 193 for XDH, tcId is 194 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_193_peerpubkey[] = { 0x58, 0x7c, 0x34, 0x7c, 0x8c, 0xb2, 0x49, 0x56, 0x4a, 0xb7, 0x73, 0x83, 0xde, 0x35, 0x8c, 0xc2, 0xa1, 0x9f, 0xe7, 0x37, 0x0a, 0x84, 0x76, 0xd4, 0x30, 0x91, 0x12, 0x35, 0x98, 0x94, 0x1c, 0x7f, }; static const unsigned char xdh_wei25519_193_privkey[] = { 0x50, 0xe3, 0xe5, 0xa9, 0xa1, 0x9b, 0xe2, 0xee, 0x35, 0x48, 0xb0, 0x96, 0x46, 0x72, 0xfb, 0x5e, 0x31, 0x34, 0xcb, 0x0d, 0x2f, 0x7a, 0xdf, 0x00, 0x0e, 0x45, 0x56, 0xd0, 0xff, 0xa3, 0x76, 0x43, }; static const unsigned char xdh_wei25519_193_sharedsecret[] = { 0x31, 0x4d, 0x8a, 0x2b, 0x5c, 0x76, 0xcc, 0x7e, 0xe1, 0x21, 0x7d, 0xf2, 0x28, 0x3b, 0x7e, 0x67, 0x24, 0x43, 0x6e, 0x27, 0x3a, 0xeb, 0x80, 0x62, 0x8d, 0xce, 0x06, 0x00, 0xab, 0x47, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_193 = { .name = "xdh_wei25519_193", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_193_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_193_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_193_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 194 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 194 for XDH, tcId is 195 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_194_peerpubkey[] = { 0xf5, 0xc6, 0x31, 0x1a, 0x1d, 0xd1, 0xb9, 0xe0, 0xf8, 0xcf, 0xd0, 0x34, 0xac, 0x6d, 0x01, 0xbf, 0x28, 0xd9, 0xd0, 0xf9, 0x62, 0xa1, 0x93, 0x4a, 0xe2, 0xcb, 0x97, 0xcb, 0x17, 0x3d, 0xd8, 0x10, }; static const unsigned char xdh_wei25519_194_privkey[] = { 0x08, 0xec, 0xe5, 0x80, 0xbb, 0x6d, 0xdf, 0x96, 0x55, 0x9b, 0x81, 0xd7, 0xa9, 0x7d, 0xd4, 0x53, 0x1d, 0xef, 0x6c, 0xc7, 0x8d, 0x44, 0x8a, 0x70, 0xce, 0xba, 0xbd, 0xd2, 0x6c, 0xaa, 0xb1, 0x46, }; static const unsigned char xdh_wei25519_194_sharedsecret[] = { 0x2b, 0xfd, 0x8e, 0x53, 0x08, 0xc3, 0x44, 0x98, 0xeb, 0x2b, 0x4d, 0xaf, 0x9e, 0xd5, 0x1c, 0xf6, 0x23, 0xda, 0x3b, 0xea, 0xeb, 0x0e, 0xfd, 0x3d, 0x68, 0x7f, 0x2b, 0x8b, 0xec, 0xbf, 0x31, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_194 = { .name = "xdh_wei25519_194", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_194_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_194_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_194_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 195 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 195 for XDH, tcId is 196 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_195_peerpubkey[] = { 0x93, 0x16, 0xc0, 0x6d, 0x27, 0xb2, 0x4a, 0xbc, 0x67, 0x3f, 0xfb, 0x51, 0x05, 0xc5, 0xb9, 0xa8, 0x9b, 0xdf, 0xaa, 0x79, 0xe8, 0x1c, 0xdb, 0xb8, 0x95, 0x56, 0x07, 0x43, 0x77, 0xc7, 0x03, 0x20, }; static const unsigned char xdh_wei25519_195_privkey[] = { 0xa8, 0x86, 0x03, 0x3e, 0x9d, 0xc2, 0xb6, 0xa9, 0x13, 0xff, 0xfb, 0xc2, 0xbd, 0x40, 0x2e, 0x8c, 0x11, 0xec, 0x34, 0xd4, 0x9c, 0x0d, 0xc0, 0xfa, 0x14, 0x29, 0x32, 0x9b, 0x69, 0x4a, 0x28, 0x5f, }; static const unsigned char xdh_wei25519_195_sharedsecret[] = { 0xd5, 0x3c, 0x3d, 0x6f, 0x53, 0x8c, 0x12, 0x6b, 0x93, 0x36, 0x78, 0x5d, 0x1d, 0x4e, 0x69, 0x35, 0xdc, 0x8b, 0x21, 0xf3, 0xd7, 0xe9, 0xc2, 0x5b, 0xc2, 0x40, 0xa0, 0x3e, 0x39, 0x02, 0x33, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_195 = { .name = "xdh_wei25519_195", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_195_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_195_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_195_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 196 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 196 for XDH, tcId is 197 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_196_peerpubkey[] = { 0x8a, 0x41, 0x79, 0x80, 0x7b, 0x07, 0x64, 0x9e, 0x04, 0xf7, 0x11, 0xbf, 0x94, 0x73, 0xa7, 0x99, 0x93, 0xf8, 0x42, 0x93, 0xe4, 0xa8, 0xb9, 0xaf, 0xee, 0x44, 0xa2, 0x2e, 0xf1, 0x00, 0x0b, 0x21, }; static const unsigned char xdh_wei25519_196_privkey[] = { 0x98, 0xb1, 0xcc, 0x20, 0x20, 0xa8, 0xec, 0x57, 0x5d, 0x5c, 0x46, 0xc7, 0x60, 0x24, 0xcf, 0x7c, 0x7a, 0xd7, 0x62, 0x8e, 0xb9, 0x09, 0x73, 0x0b, 0xc4, 0xf4, 0x60, 0xaa, 0xf0, 0xe6, 0xda, 0x4b, }; static const unsigned char xdh_wei25519_196_sharedsecret[] = { 0x45, 0x31, 0x88, 0x1a, 0xd9, 0xcf, 0x01, 0x16, 0x93, 0xdd, 0xf0, 0x28, 0x42, 0xfb, 0xda, 0xb8, 0x6d, 0x71, 0xe2, 0x76, 0x80, 0xe9, 0xb4, 0xb3, 0xf9, 0x3b, 0x4c, 0xf1, 0x5e, 0x73, 0x7e, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_196 = { .name = "xdh_wei25519_196", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_196_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_196_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_196_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 197 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 197 for XDH, tcId is 198 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_197_peerpubkey[] = { 0xa7, 0x73, 0x27, 0x7a, 0xe1, 0x02, 0x9f, 0x85, 0x47, 0x49, 0x13, 0x7b, 0x0f, 0x3a, 0x02, 0xb5, 0xb3, 0x56, 0x0b, 0x9c, 0x4c, 0xa4, 0xdb, 0xde, 0xb3, 0x12, 0x5e, 0xc8, 0x96, 0xb8, 0x18, 0x41, }; static const unsigned char xdh_wei25519_197_privkey[] = { 0xc8, 0xe1, 0x93, 0xde, 0x16, 0x2a, 0xa3, 0x49, 0xa3, 0x43, 0x2c, 0x7a, 0x0c, 0x05, 0x21, 0xd9, 0x2c, 0xbc, 0x5e, 0x3b, 0xf8, 0x26, 0x15, 0xe4, 0x29, 0x55, 0xdd, 0x67, 0xec, 0x12, 0x34, 0x5f, }; static const unsigned char xdh_wei25519_197_sharedsecret[] = { 0x7b, 0xa4, 0xd3, 0xde, 0x69, 0x7a, 0xa1, 0x1a, 0xdd, 0xf3, 0x91, 0x1e, 0x93, 0xc9, 0x4b, 0x7e, 0x94, 0x3b, 0xef, 0xf3, 0xe3, 0xb1, 0xb5, 0x6b, 0x7d, 0xe4, 0x46, 0x1f, 0x9e, 0x48, 0xbe, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_197 = { .name = "xdh_wei25519_197", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_197_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_197_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_197_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 198 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 198 for XDH, tcId is 199 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_198_peerpubkey[] = { 0x1e, 0xce, 0xb2, 0xb3, 0x76, 0x32, 0x31, 0xbc, 0x3c, 0x99, 0xdc, 0x62, 0x26, 0x6a, 0x09, 0xab, 0x5d, 0x36, 0x61, 0xc7, 0x56, 0x52, 0x4c, 0xdd, 0xc5, 0xaa, 0xbc, 0xed, 0xee, 0x92, 0xda, 0x61, }; static const unsigned char xdh_wei25519_198_privkey[] = { 0x88, 0xe0, 0x12, 0x37, 0xb3, 0x36, 0x01, 0x40, 0x75, 0x67, 0x60, 0x82, 0xaf, 0xbd, 0xe5, 0x1d, 0x59, 0x5d, 0x47, 0xe1, 0xfa, 0x52, 0x14, 0xb5, 0x1a, 0x35, 0x1a, 0xbb, 0xf6, 0x49, 0x14, 0x42, }; static const unsigned char xdh_wei25519_198_sharedsecret[] = { 0xbc, 0xf0, 0x88, 0x40, 0x52, 0xf9, 0x12, 0xa6, 0x3b, 0xba, 0xb8, 0xc5, 0xc6, 0x74, 0xb9, 0x1c, 0x49, 0x89, 0xae, 0x05, 0x1f, 0xa0, 0x7f, 0xcf, 0x30, 0xcb, 0x53, 0x17, 0xfb, 0x1f, 0x2e, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_198 = { .name = "xdh_wei25519_198", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_198_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_198_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_198_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 199 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 199 for XDH, tcId is 200 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_199_peerpubkey[] = { 0x9a, 0x2a, 0xcb, 0xb3, 0xb5, 0xa3, 0x86, 0xa6, 0x10, 0x2e, 0x37, 0x28, 0xbe, 0x3a, 0x97, 0xde, 0x03, 0x98, 0x1d, 0x5c, 0x71, 0xfd, 0x2d, 0x95, 0x46, 0x04, 0xbe, 0xe3, 0xd3, 0xd0, 0xce, 0x62, }; static const unsigned char xdh_wei25519_199_privkey[] = { 0xe8, 0x23, 0x13, 0xe4, 0x51, 0xa1, 0x98, 0xdc, 0xe4, 0xae, 0x95, 0xc6, 0x83, 0x2a, 0x82, 0x81, 0xd8, 0x47, 0xfc, 0x87, 0xb2, 0x8d, 0xb0, 0x0f, 0xe4, 0x37, 0x57, 0xc1, 0x6c, 0xc4, 0x9c, 0x4a, }; static const unsigned char xdh_wei25519_199_sharedsecret[] = { 0xe5, 0x77, 0x2a, 0x92, 0xb1, 0x03, 0xee, 0x69, 0x6a, 0x99, 0x97, 0x05, 0xcf, 0x07, 0x11, 0x0c, 0x46, 0x0f, 0x05, 0x45, 0x68, 0x2d, 0xb3, 0xfa, 0xc5, 0xd8, 0x75, 0xd6, 0x96, 0x48, 0xbc, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_199 = { .name = "xdh_wei25519_199", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_199_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_199_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_199_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 200 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 200 for XDH, tcId is 201 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_200_peerpubkey[] = { 0x27, 0x43, 0x0e, 0x1c, 0x2d, 0x30, 0x89, 0x70, 0x8b, 0xca, 0x56, 0xd7, 0xa5, 0xad, 0x03, 0x79, 0x28, 0x28, 0xd4, 0x76, 0x85, 0xb6, 0x13, 0x1e, 0x02, 0x3d, 0xd0, 0x80, 0x87, 0x16, 0xb8, 0x63, }; static const unsigned char xdh_wei25519_200_privkey[] = { 0x28, 0x28, 0x59, 0x4d, 0x16, 0x76, 0x8e, 0x58, 0x6d, 0xf3, 0x96, 0x01, 0xec, 0xc8, 0x6d, 0x3f, 0xad, 0x63, 0x89, 0xd8, 0x72, 0xb5, 0x3f, 0xca, 0x3e, 0xdc, 0xaf, 0x6f, 0xb9, 0x58, 0xf6, 0x53, }; static const unsigned char xdh_wei25519_200_sharedsecret[] = { 0x37, 0x8c, 0x29, 0xe3, 0xbe, 0x97, 0xa2, 0x1b, 0x9f, 0x81, 0xaf, 0xca, 0x0d, 0x0f, 0x5c, 0x24, 0x2f, 0xd4, 0xf8, 0x96, 0x11, 0x4f, 0x77, 0xa7, 0x71, 0x55, 0xd0, 0x6c, 0xe5, 0xfb, 0xfa, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_200 = { .name = "xdh_wei25519_200", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_200_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_200_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_200_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 201 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 201 for XDH, tcId is 202 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_201_peerpubkey[] = { 0x4e, 0xf3, 0x67, 0x90, 0x1a, 0xac, 0x8b, 0xa9, 0x0a, 0x50, 0xe0, 0xcf, 0x86, 0xca, 0x4e, 0x4a, 0x3f, 0xf1, 0x64, 0xfb, 0x12, 0x16, 0x05, 0xbe, 0x34, 0x6e, 0x2e, 0x48, 0xd0, 0x4a, 0xc9, 0x12, }; static const unsigned char xdh_wei25519_201_privkey[] = { 0xa8, 0x4f, 0x48, 0x8e, 0x19, 0x31, 0x39, 0xf9, 0x86, 0xb0, 0xe5, 0xb2, 0x49, 0x63, 0x5b, 0x13, 0x7d, 0x38, 0x5e, 0x42, 0x03, 0x42, 0xae, 0xf1, 0xf1, 0x94, 0xfc, 0xde, 0x1f, 0xe5, 0xe8, 0x50, }; static const unsigned char xdh_wei25519_201_sharedsecret[] = { 0x7e, 0xb4, 0x8a, 0x60, 0xb1, 0x4f, 0xb9, 0xea, 0x57, 0x28, 0xf6, 0x41, 0x0a, 0xef, 0x62, 0x7d, 0x15, 0x22, 0xfa, 0xd4, 0x81, 0xb9, 0x34, 0xaf, 0x64, 0xe2, 0xc4, 0x83, 0xb6, 0x4d, 0x58, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_201 = { .name = "xdh_wei25519_201", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_201_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_201_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_201_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 202 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 202 for XDH, tcId is 203 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_202_peerpubkey[] = { 0xd1, 0xde, 0x30, 0x3c, 0x4d, 0xdd, 0x05, 0xd5, 0x7c, 0x29, 0xdf, 0x92, 0xad, 0x17, 0x2d, 0xd8, 0xc8, 0xf4, 0x24, 0xe6, 0x3e, 0xc9, 0x34, 0x45, 0xbe, 0xae, 0xa4, 0x4f, 0x9d, 0x12, 0x4b, 0x17, }; static const unsigned char xdh_wei25519_202_privkey[] = { 0x30, 0xfd, 0x2a, 0x78, 0x1e, 0x09, 0x5c, 0x34, 0xa4, 0x83, 0x90, 0x7b, 0x3d, 0xd2, 0xd8, 0xbd, 0x27, 0x36, 0xe2, 0x79, 0x61, 0x7b, 0xfa, 0x6b, 0x8b, 0x4e, 0x0e, 0x1c, 0xf9, 0x0f, 0xbd, 0x46, }; static const unsigned char xdh_wei25519_202_sharedsecret[] = { 0xb7, 0x1b, 0xdb, 0xed, 0x78, 0x02, 0x3a, 0x06, 0xde, 0xed, 0x1c, 0x18, 0x2e, 0x14, 0xc9, 0x8f, 0x7c, 0xf4, 0x6b, 0xc6, 0x27, 0xa4, 0xa2, 0xc1, 0x02, 0xad, 0x23, 0xc4, 0x1c, 0xf3, 0x24, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_202 = { .name = "xdh_wei25519_202", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_202_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_202_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_202_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 203 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 203 for XDH, tcId is 204 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_203_peerpubkey[] = { 0x5b, 0xcc, 0xd7, 0x39, 0xfd, 0x75, 0x17, 0xd9, 0x34, 0x4b, 0xf6, 0xb2, 0xb0, 0xf1, 0x9a, 0x1e, 0x0c, 0x38, 0xd9, 0x34, 0x9a, 0x25, 0xad, 0x1f, 0x94, 0xaf, 0x4a, 0x2c, 0xdc, 0xf5, 0xe8, 0x37, }; static const unsigned char xdh_wei25519_203_privkey[] = { 0x28, 0x31, 0x2e, 0x17, 0xb4, 0x7d, 0xd3, 0x2d, 0x90, 0x56, 0x11, 0x68, 0x24, 0x51, 0x87, 0x96, 0x3c, 0x74, 0x69, 0xa3, 0x1c, 0x88, 0x1e, 0x4a, 0x5c, 0x94, 0x38, 0x42, 0x62, 0xb7, 0x19, 0x59, }; static const unsigned char xdh_wei25519_203_sharedsecret[] = { 0x5b, 0xb5, 0x68, 0x77, 0xca, 0xf2, 0xcd, 0xac, 0x98, 0x61, 0x1b, 0x60, 0x36, 0x7f, 0xbb, 0x74, 0x26, 0x59, 0x84, 0x61, 0x4e, 0x5e, 0x73, 0x99, 0x6e, 0x8e, 0xa1, 0xbd, 0x6f, 0x74, 0x9f, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_203 = { .name = "xdh_wei25519_203", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_203_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_203_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_203_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 204 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 204 for XDH, tcId is 205 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_204_peerpubkey[] = { 0x8a, 0x7a, 0x93, 0x93, 0x10, 0xdf, 0x7e, 0xa7, 0x68, 0x45, 0x4d, 0xf5, 0x1b, 0xcd, 0x0d, 0xfb, 0xd7, 0xbe, 0x4f, 0xcb, 0xb2, 0xff, 0xc9, 0x84, 0x29, 0xd9, 0x13, 0xec, 0x69, 0x11, 0xf3, 0x37, }; static const unsigned char xdh_wei25519_204_privkey[] = { 0xa8, 0x76, 0x40, 0xcf, 0x82, 0x37, 0xb4, 0x73, 0xc6, 0x38, 0xb3, 0xe9, 0xdf, 0x08, 0x64, 0x4e, 0x86, 0x07, 0xe5, 0x63, 0xb5, 0x96, 0x43, 0x63, 0xcc, 0xc4, 0x21, 0x33, 0xb2, 0x99, 0x67, 0x42, }; static const unsigned char xdh_wei25519_204_sharedsecret[] = { 0xb5, 0x68, 0xed, 0x46, 0xd0, 0x4f, 0x62, 0x91, 0xf8, 0xc1, 0x76, 0xdc, 0xa8, 0xaf, 0xf6, 0xd2, 0x21, 0xde, 0x4c, 0x9c, 0xce, 0x4b, 0x40, 0x4d, 0x54, 0x01, 0xfb, 0xe7, 0x0a, 0x32, 0x45, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_204 = { .name = "xdh_wei25519_204", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_204_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_204_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_204_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 205 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 205 for XDH, tcId is 206 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_205_peerpubkey[] = { 0xfe, 0x35, 0x90, 0xfc, 0x38, 0x2d, 0xa7, 0xa8, 0x2e, 0x28, 0xd0, 0x7f, 0xaf, 0xe4, 0x0d, 0x4a, 0xfc, 0x91, 0x18, 0x3a, 0x45, 0x36, 0xe3, 0xe6, 0xb5, 0x50, 0xfe, 0xe8, 0x4a, 0x4b, 0x7b, 0x4b, }; static const unsigned char xdh_wei25519_205_privkey[] = { 0x78, 0x0c, 0x5b, 0x88, 0x27, 0x20, 0xd8, 0x5e, 0x5d, 0xdf, 0xaf, 0x10, 0x33, 0xe9, 0xa1, 0x38, 0x5d, 0xf9, 0xe2, 0x16, 0x89, 0xee, 0xda, 0x4d, 0xcc, 0x74, 0x44, 0xad, 0x28, 0x33, 0x0a, 0x50, }; static const unsigned char xdh_wei25519_205_sharedsecret[] = { 0x11, 0xfb, 0x44, 0xe8, 0x10, 0xbc, 0xe8, 0x53, 0x6a, 0x95, 0x7e, 0xaa, 0x56, 0xe0, 0x2d, 0x04, 0xdd, 0x86, 0x67, 0x00, 0x29, 0x8f, 0x13, 0xb0, 0x4e, 0xbe, 0xb4, 0x8e, 0x20, 0xd9, 0x36, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_205 = { .name = "xdh_wei25519_205", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_205_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_205_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_205_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 206 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 206 for XDH, tcId is 207 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_206_peerpubkey[] = { 0xfa, 0xd9, 0xab, 0x3e, 0x80, 0x3b, 0x49, 0xfc, 0x81, 0xb2, 0x7e, 0xe6, 0x9d, 0xb6, 0xfc, 0x9f, 0xdb, 0x82, 0xe3, 0x54, 0x53, 0xb5, 0x9e, 0xf8, 0xfa, 0xb2, 0xa3, 0xbe, 0xb5, 0xe1, 0x13, 0x4c, }; static const unsigned char xdh_wei25519_206_privkey[] = { 0x20, 0x9e, 0x5e, 0x0a, 0xe1, 0x99, 0x4b, 0xd8, 0x59, 0xce, 0x89, 0x92, 0xb6, 0x2e, 0xc3, 0xa6, 0x6d, 0xf2, 0xeb, 0x50, 0x23, 0x2b, 0xcc, 0x3a, 0x3d, 0x27, 0xb6, 0x61, 0x4f, 0x6b, 0x01, 0x4d, }; static const unsigned char xdh_wei25519_206_sharedsecret[] = { 0x85, 0xd9, 0xdb, 0x8f, 0x18, 0x2b, 0xc6, 0x8d, 0xb6, 0x7d, 0xe3, 0x47, 0x1f, 0x78, 0x6b, 0x45, 0xb1, 0x61, 0x9a, 0xec, 0x0f, 0x32, 0xb1, 0x08, 0xac, 0xe3, 0x0e, 0xe7, 0xb2, 0x62, 0x43, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_206 = { .name = "xdh_wei25519_206", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_206_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_206_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_206_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 207 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 207 for XDH, tcId is 208 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_207_peerpubkey[] = { 0x98, 0xbe, 0xd9, 0x55, 0xf1, 0x51, 0x6c, 0x7a, 0x44, 0x27, 0x51, 0xac, 0x59, 0x00, 0x46, 0xd7, 0xd5, 0x2c, 0xa6, 0x4f, 0x76, 0xdf, 0x82, 0xbe, 0x09, 0xd3, 0x2e, 0x5d, 0x33, 0xb4, 0x90, 0x73, }; static const unsigned char xdh_wei25519_207_privkey[] = { 0x80, 0x6d, 0x1d, 0xee, 0x5f, 0xf6, 0xae, 0xa8, 0x4a, 0x84, 0x89, 0x16, 0x99, 0x1a, 0x89, 0xef, 0x36, 0x25, 0x58, 0x3e, 0x1b, 0xd4, 0xae, 0x0b, 0x3d, 0xd2, 0x5c, 0x25, 0x24, 0xa4, 0xff, 0x46, }; static const unsigned char xdh_wei25519_207_sharedsecret[] = { 0x61, 0xd4, 0xef, 0x71, 0xcb, 0xe7, 0xbe, 0x31, 0x28, 0xbe, 0x82, 0x9a, 0xb2, 0x6e, 0xd3, 0x46, 0x3e, 0xb4, 0xab, 0x25, 0x93, 0x7c, 0x30, 0x97, 0x88, 0xe8, 0x76, 0xb2, 0x34, 0x12, 0xaa, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_207 = { .name = "xdh_wei25519_207", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_207_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_207_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_207_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 208 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 208 for XDH, tcId is 209 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_208_peerpubkey[] = { 0xe5, 0x9b, 0xe4, 0x91, 0x7b, 0x3f, 0x05, 0xb6, 0xfc, 0x87, 0x48, 0xc9, 0xb9, 0x0f, 0x1b, 0x91, 0x02, 0x73, 0xc9, 0xc6, 0xe1, 0x7f, 0xf9, 0x6e, 0xf4, 0x15, 0xff, 0x3d, 0x92, 0x7d, 0x98, 0x7e, }; static const unsigned char xdh_wei25519_208_privkey[] = { 0x00, 0xf9, 0x8b, 0x02, 0xae, 0x0d, 0xf5, 0x27, 0x4c, 0xc8, 0x99, 0xf5, 0x26, 0xeb, 0x1b, 0x87, 0x72, 0x89, 0xe0, 0x96, 0x34, 0x40, 0xa5, 0x7d, 0xd9, 0x7e, 0x41, 0x4c, 0xdd, 0x2f, 0x7c, 0x51, }; static const unsigned char xdh_wei25519_208_sharedsecret[] = { 0x5b, 0xa4, 0x39, 0x4e, 0xd1, 0xa6, 0x64, 0x81, 0x1b, 0x01, 0x55, 0x79, 0x44, 0xbe, 0xcf, 0x75, 0x85, 0x65, 0x2a, 0x8a, 0xcb, 0xdb, 0xf8, 0x06, 0x74, 0x29, 0x11, 0x20, 0x7b, 0xd7, 0x93, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_208 = { .name = "xdh_wei25519_208", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_208_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_208_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_208_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 209 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 209 for XDH, tcId is 210 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_209_peerpubkey[] = { 0x8c, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_209_privkey[] = { 0xd8, 0x6c, 0x18, 0xf2, 0xbe, 0x39, 0x6b, 0x3b, 0xb7, 0x2f, 0x22, 0xe6, 0xec, 0xe2, 0x2e, 0x27, 0x3a, 0xf6, 0xe1, 0x50, 0x6a, 0x1c, 0x09, 0xad, 0x4d, 0x01, 0xbd, 0xd2, 0xf4, 0x39, 0xf8, 0x43, }; static const unsigned char xdh_wei25519_209_sharedsecret[] = { 0xa5, 0x95, 0x25, 0x88, 0x61, 0x3e, 0xb7, 0xa5, 0xcd, 0x49, 0xdd, 0x52, 0x6f, 0x1f, 0x20, 0xa4, 0xf0, 0xff, 0xe9, 0x42, 0x3e, 0x82, 0xce, 0xa3, 0x02, 0xc2, 0xdd, 0x90, 0xce, 0x55, 0x99, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_209 = { .name = "xdh_wei25519_209", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_209_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_209_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_209_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 210 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 210 for XDH, tcId is 211 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_210_peerpubkey[] = { 0xf6, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_210_privkey[] = { 0xf8, 0x1a, 0xad, 0xb9, 0x05, 0x3e, 0xb6, 0x98, 0x99, 0x6d, 0x0f, 0x78, 0x1d, 0x9c, 0xda, 0x67, 0xf8, 0x2d, 0xde, 0xfa, 0x39, 0x87, 0xd2, 0x76, 0xff, 0x5a, 0x94, 0xff, 0xdf, 0x5d, 0x25, 0x5f, }; static const unsigned char xdh_wei25519_210_sharedsecret[] = { 0xcb, 0x6f, 0xb6, 0x23, 0x08, 0x4b, 0x61, 0x97, 0x44, 0x3e, 0xc9, 0xba, 0x10, 0x50, 0xc0, 0x92, 0x33, 0x32, 0xe5, 0xe8, 0x29, 0xae, 0x01, 0x94, 0x26, 0x9c, 0xfa, 0xf9, 0x20, 0xa4, 0x36, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_210 = { .name = "xdh_wei25519_210", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_210_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_210_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_210_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 211 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 211 for XDH, tcId is 212 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_211_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_211_privkey[] = { 0x30, 0x5b, 0x4d, 0xb4, 0x32, 0x1b, 0x49, 0x23, 0xfc, 0x55, 0x9b, 0xf9, 0x1d, 0xf6, 0x77, 0xd0, 0xe1, 0x2c, 0x3a, 0x31, 0xb1, 0x6e, 0xc6, 0x55, 0xcb, 0x70, 0x8b, 0x75, 0x9d, 0x7c, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_211_sharedsecret[] = { 0x9e, 0x52, 0x60, 0x79, 0xc2, 0xfc, 0xf1, 0x24, 0x26, 0xae, 0x6c, 0x2a, 0x54, 0xb5, 0xff, 0xb7, 0x0f, 0x2e, 0xc6, 0x62, 0xe2, 0x9e, 0xa5, 0xce, 0x0c, 0x83, 0x85, 0xc3, 0xb2, 0x1c, 0xd1, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_211 = { .name = "xdh_wei25519_211", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_211_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_211_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_211_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 212 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 212 for XDH, tcId is 213 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_212_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_212_privkey[] = { 0x90, 0x06, 0x38, 0xd1, 0x97, 0x98, 0x02, 0xdb, 0x9b, 0x52, 0xe4, 0xdd, 0x84, 0xfa, 0x19, 0x57, 0x9f, 0x61, 0xcd, 0x7b, 0xef, 0x3c, 0x0b, 0x62, 0xfc, 0xcc, 0xae, 0xaa, 0x15, 0xfa, 0x48, 0x4d, }; static const unsigned char xdh_wei25519_212_sharedsecret[] = { 0x63, 0x29, 0xc7, 0xdc, 0x23, 0x18, 0xec, 0x36, 0x15, 0x3e, 0xf4, 0xf6, 0xf9, 0x1b, 0xc6, 0xe7, 0xd1, 0xe0, 0x08, 0xf5, 0x29, 0x30, 0x65, 0xd9, 0x58, 0x6a, 0xb8, 0x8a, 0xbb, 0x58, 0xf2, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_212 = { .name = "xdh_wei25519_212", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_212_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_212_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_212_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 213 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 213 for XDH, tcId is 214 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_213_peerpubkey[] = { 0xf6, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_213_privkey[] = { 0x38, 0x57, 0x5c, 0xf7, 0xc8, 0x69, 0x1e, 0xcc, 0x79, 0xcd, 0x5f, 0x8d, 0x7d, 0x47, 0x03, 0xaa, 0x48, 0x59, 0x2f, 0xf6, 0xe7, 0xf6, 0x47, 0x31, 0xc2, 0xd9, 0x8a, 0x19, 0xae, 0xae, 0x51, 0x4f, }; static const unsigned char xdh_wei25519_213_sharedsecret[] = { 0x60, 0x3f, 0x4f, 0xc4, 0x10, 0x08, 0x1f, 0x88, 0x09, 0x44, 0xe0, 0xe1, 0x3d, 0x56, 0xfc, 0x54, 0x2a, 0x43, 0x0e, 0xec, 0x81, 0x3f, 0xad, 0x30, 0x2b, 0x7c, 0x5a, 0xc3, 0x80, 0x57, 0x6f, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_213 = { .name = "xdh_wei25519_213", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_213_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_213_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_213_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 214 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 214 for XDH, tcId is 215 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_214_peerpubkey[] = { 0x60, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_214_privkey[] = { 0xe8, 0x8b, 0xd0, 0x2c, 0x70, 0x16, 0x54, 0x7a, 0x24, 0xf4, 0x28, 0xbc, 0x2a, 0x9d, 0xcc, 0xca, 0xd6, 0xc6, 0xf8, 0x80, 0xc1, 0x7b, 0xff, 0xcf, 0x66, 0xfc, 0x68, 0x45, 0x96, 0x27, 0xaf, 0x4e, }; static const unsigned char xdh_wei25519_214_sharedsecret[] = { 0x83, 0x4b, 0xba, 0xd5, 0x47, 0x0e, 0x14, 0x98, 0xc4, 0xb0, 0x14, 0x87, 0x82, 0xdf, 0xe6, 0x30, 0xe8, 0xbf, 0xad, 0xff, 0x19, 0x97, 0xde, 0x80, 0x2a, 0xc8, 0xce, 0x30, 0x2a, 0x1b, 0xda, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_214 = { .name = "xdh_wei25519_214", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_214_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_214_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_214_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 215 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 215 for XDH, tcId is 216 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_215_peerpubkey[] = { 0x8d, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_215_privkey[] = { 0x90, 0x36, 0xed, 0x7d, 0x68, 0xf7, 0x44, 0x8a, 0xc4, 0x40, 0xdc, 0x51, 0x21, 0x6b, 0x49, 0x84, 0x0d, 0xca, 0xbd, 0x3d, 0x5e, 0x32, 0xe3, 0xb4, 0xff, 0xc3, 0x2a, 0x5f, 0xe9, 0xe9, 0x67, 0x42, }; static const unsigned char xdh_wei25519_215_sharedsecret[] = { 0xec, 0x90, 0x70, 0xad, 0x34, 0x91, 0xa5, 0xff, 0x50, 0xd7, 0xd0, 0xdb, 0x6c, 0x9c, 0x84, 0x47, 0x83, 0xdd, 0xe1, 0xc6, 0xfb, 0xd4, 0xfe, 0x16, 0x3e, 0x9a, 0xde, 0x1c, 0xe9, 0xcd, 0x04, 0x1d, }; static const wycheproof_xdh_test xdh_wei25519_215 = { .name = "xdh_wei25519_215", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_215_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_215_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_215_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 216 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 216 for XDH, tcId is 217 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_216_peerpubkey[] = { 0xf7, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_216_privkey[] = { 0x90, 0xc5, 0x5e, 0x77, 0xaa, 0x0f, 0xe4, 0xaf, 0xb1, 0x28, 0x71, 0x09, 0xfd, 0x01, 0x0f, 0x52, 0x63, 0x64, 0xde, 0xa1, 0x8d, 0x88, 0xe2, 0xfd, 0x87, 0x0a, 0xc0, 0x1b, 0x66, 0xe3, 0xfa, 0x4e, }; static const unsigned char xdh_wei25519_216_sharedsecret[] = { 0xdc, 0x6d, 0x05, 0xb9, 0x2e, 0xdc, 0xdb, 0x5d, 0xc3, 0x34, 0xb1, 0xfc, 0x3d, 0xff, 0x58, 0xfe, 0x5b, 0x24, 0xa5, 0xc5, 0xf0, 0xb2, 0xd4, 0x31, 0x15, 0x55, 0xd0, 0xfc, 0x94, 0x5d, 0x77, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_216 = { .name = "xdh_wei25519_216", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_216_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_216_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_216_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 217 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 217 for XDH, tcId is 218 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_217_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_217_privkey[] = { 0xa0, 0x21, 0xba, 0x2f, 0xd4, 0xe3, 0xad, 0x57, 0xbc, 0xbf, 0x20, 0x4d, 0x6f, 0x6c, 0x3e, 0x80, 0x18, 0xd8, 0x97, 0x85, 0x52, 0x63, 0x3b, 0x6d, 0xff, 0x1b, 0x74, 0x47, 0xbf, 0x52, 0x94, 0x59, }; static const unsigned char xdh_wei25519_217_sharedsecret[] = { 0x1b, 0x17, 0x4b, 0x18, 0x99, 0x81, 0xd8, 0x1b, 0xc6, 0x88, 0x79, 0x32, 0x08, 0x3e, 0x84, 0x88, 0xdf, 0x8b, 0xbb, 0xed, 0x57, 0xf9, 0x21, 0x4c, 0x9c, 0xfa, 0x59, 0xd5, 0x9b, 0x57, 0x23, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_217 = { .name = "xdh_wei25519_217", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_217_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_217_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_217_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 218 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 218 for XDH, tcId is 219 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_218_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_218_privkey[] = { 0x30, 0x35, 0x08, 0x3e, 0x98, 0x48, 0x37, 0x58, 0x7f, 0x6b, 0x73, 0x46, 0xaf, 0x87, 0x1b, 0xf3, 0xfc, 0x95, 0x81, 0xc5, 0x0e, 0xb5, 0x5c, 0x83, 0xae, 0xfa, 0xbe, 0xed, 0x68, 0xce, 0xe3, 0x49, }; static const unsigned char xdh_wei25519_218_sharedsecret[] = { 0x15, 0xa0, 0x52, 0x14, 0x8a, 0xba, 0xad, 0x1b, 0x0f, 0x2e, 0x74, 0x81, 0xa3, 0x4e, 0xdb, 0x61, 0x40, 0x35, 0x89, 0x43, 0x9b, 0x5b, 0xd5, 0xe5, 0x64, 0x6c, 0xec, 0xeb, 0xe2, 0xa1, 0xbe, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_218 = { .name = "xdh_wei25519_218", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_218_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_218_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_218_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 219 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 219 for XDH, tcId is 220 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_219_peerpubkey[] = { 0xf7, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_219_privkey[] = { 0x30, 0x43, 0x5c, 0xe1, 0x87, 0xf2, 0x72, 0x3f, 0x9a, 0x3b, 0xde, 0xa0, 0xee, 0xf8, 0x92, 0x20, 0x7e, 0x15, 0x2e, 0x4c, 0xee, 0x89, 0x85, 0xfa, 0x72, 0xd2, 0xdb, 0x41, 0x47, 0xbd, 0x2a, 0x53, }; static const unsigned char xdh_wei25519_219_sharedsecret[] = { 0x1d, 0x04, 0x8c, 0xbe, 0x2f, 0x8d, 0xf0, 0x7c, 0x23, 0x3a, 0x8f, 0x93, 0x70, 0x6f, 0x30, 0x7d, 0x17, 0x13, 0x0c, 0x24, 0x97, 0xfb, 0x75, 0x2e, 0xea, 0xa3, 0x1f, 0xe3, 0xed, 0xfc, 0x72, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_219 = { .name = "xdh_wei25519_219", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_219_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_219_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_219_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 220 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 220 for XDH, tcId is 221 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_220_peerpubkey[] = { 0x61, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_220_privkey[] = { 0x58, 0x0f, 0x0a, 0x9b, 0xba, 0x72, 0x81, 0xa3, 0x0f, 0xb0, 0x33, 0x49, 0x0e, 0x0f, 0x42, 0x9f, 0x22, 0xe3, 0xf2, 0x67, 0x85, 0x2c, 0xae, 0xac, 0xef, 0xa3, 0xe5, 0x29, 0x1f, 0x0e, 0x61, 0x4e, }; static const unsigned char xdh_wei25519_220_sharedsecret[] = { 0xcb, 0x92, 0xa9, 0x8b, 0x6a, 0xa9, 0x9a, 0xc9, 0xe3, 0xc5, 0x75, 0x0c, 0xea, 0x6f, 0x08, 0x46, 0xb0, 0x18, 0x1f, 0xaa, 0x59, 0x92, 0x84, 0x5b, 0x79, 0x89, 0x23, 0xd4, 0x19, 0xe8, 0x27, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_220 = { .name = "xdh_wei25519_220", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_220_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_220_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_220_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 221 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 221 for XDH, tcId is 222 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_221_peerpubkey[] = { 0xc8, 0x23, 0x9b, 0x71, 0x01, 0x36, 0xfe, 0x43, 0x1f, 0xb4, 0xd9, 0x84, 0x36, 0x15, 0x7e, 0x47, 0xc9, 0xe7, 0x8a, 0x10, 0xf0, 0x9f, 0xf9, 0x2e, 0x98, 0xba, 0xff, 0x15, 0x99, 0x26, 0x06, 0x1c, }; static const unsigned char xdh_wei25519_221_privkey[] = { 0x70, 0x90, 0x98, 0xfe, 0xb2, 0xe2, 0x5c, 0x67, 0xb4, 0xbf, 0xd3, 0xbe, 0x0a, 0x01, 0xaf, 0x40, 0x9a, 0xdb, 0x6d, 0xa5, 0x2b, 0x3f, 0xbe, 0x3d, 0x97, 0x06, 0x42, 0xdd, 0x2c, 0x98, 0x38, 0x56, }; static const unsigned char xdh_wei25519_221_sharedsecret[] = { 0xf1, 0xbd, 0x12, 0xd9, 0xd3, 0x2c, 0x6f, 0x4c, 0x5b, 0x2d, 0xcb, 0x3a, 0x5c, 0x52, 0xd9, 0xfd, 0x45, 0x4d, 0x52, 0xca, 0x70, 0x4c, 0x2c, 0x13, 0x79, 0x56, 0xec, 0x8a, 0xd9, 0xae, 0xf1, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_221 = { .name = "xdh_wei25519_221", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_221_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_221_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_221_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 2, tcId is 222 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 222 for XDH, tcId is 223 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_222_peerpubkey[] = { 0xb7, 0xa2, 0xf7, 0x9e, 0x0d, 0xe9, 0xb5, 0x81, 0x47, 0x69, 0x1b, 0x55, 0x46, 0xd9, 0xec, 0x46, 0x3d, 0xa8, 0x32, 0x5e, 0x14, 0x40, 0xe5, 0x8b, 0xb2, 0x0a, 0xa1, 0x29, 0xd1, 0xb9, 0x73, 0x27, }; static const unsigned char xdh_wei25519_222_privkey[] = { 0x18, 0x5a, 0xc6, 0x2e, 0x72, 0x9f, 0x88, 0x52, 0x89, 0x50, 0x92, 0x6c, 0x0d, 0xe7, 0xc4, 0x81, 0xc9, 0x24, 0xbf, 0x9c, 0xf2, 0x6a, 0x12, 0x2f, 0x44, 0x3b, 0x86, 0x1e, 0x8b, 0x6a, 0xf6, 0x40, }; static const unsigned char xdh_wei25519_222_sharedsecret[] = { 0xe6, 0xf1, 0xc4, 0x94, 0xc9, 0xe4, 0xbd, 0x23, 0x25, 0xc1, 0x71, 0x83, 0xe8, 0x2d, 0x31, 0xab, 0x0b, 0xbe, 0xe6, 0xc8, 0x47, 0xd4, 0xb0, 0xe4, 0xa9, 0x9c, 0x7c, 0x68, 0x91, 0x11, 0x7c, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_222 = { .name = "xdh_wei25519_222", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_222_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_222_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_222_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 223 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 223 for XDH, tcId is 224 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_223_peerpubkey[] = { 0x2d, 0xc6, 0x24, 0xe1, 0x66, 0x3f, 0x42, 0xa7, 0xb9, 0x33, 0x63, 0x50, 0xf2, 0x77, 0x54, 0x1b, 0x50, 0xb8, 0xdd, 0xc7, 0xee, 0x0d, 0x86, 0x13, 0x3a, 0xd5, 0x32, 0x73, 0xae, 0xd4, 0xe6, 0x2e, }; static const unsigned char xdh_wei25519_223_privkey[] = { 0xf0, 0x37, 0x43, 0xee, 0xad, 0x7c, 0x2f, 0x77, 0x19, 0x79, 0x43, 0x24, 0xf2, 0x71, 0x07, 0x28, 0x17, 0xd1, 0xa0, 0x4c, 0xbd, 0xa4, 0x2b, 0x23, 0x2f, 0x3b, 0xee, 0x43, 0xf3, 0x97, 0xcc, 0x40, }; static const unsigned char xdh_wei25519_223_sharedsecret[] = { 0xaa, 0x2a, 0x12, 0xed, 0xf7, 0x52, 0xd2, 0x79, 0xbd, 0xb0, 0x00, 0xfb, 0x14, 0x05, 0xa5, 0xdf, 0x8c, 0x5f, 0x1d, 0x41, 0x30, 0x9b, 0x4f, 0x2b, 0xd4, 0x1a, 0xed, 0x7a, 0xc1, 0xed, 0x01, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_223 = { .name = "xdh_wei25519_223", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_223_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_223_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_223_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 224 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 224 for XDH, tcId is 225 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_224_peerpubkey[] = { 0x0e, 0x5e, 0xce, 0xee, 0x91, 0x04, 0xa6, 0x4f, 0x82, 0xc9, 0x09, 0x3b, 0x9b, 0xf7, 0xb4, 0x07, 0x6e, 0xe5, 0xbc, 0x70, 0x81, 0x5a, 0xf7, 0xee, 0x9f, 0x94, 0x2e, 0xf0, 0x15, 0x75, 0x61, 0x76, }; static const unsigned char xdh_wei25519_224_privkey[] = { 0xa8, 0xfb, 0xb4, 0xf9, 0x0d, 0xa4, 0x57, 0x94, 0x98, 0x14, 0x05, 0xd5, 0x9e, 0xf3, 0x10, 0x62, 0x1e, 0x3c, 0x3b, 0x6b, 0x77, 0x60, 0xb5, 0xe3, 0x03, 0x08, 0xc7, 0x82, 0x2c, 0x88, 0xae, 0x5f, }; static const unsigned char xdh_wei25519_224_sharedsecret[] = { 0x74, 0xd5, 0x60, 0x6b, 0xa0, 0xb6, 0xad, 0x1d, 0x8b, 0xa3, 0x6a, 0xe6, 0xf2, 0x64, 0xd6, 0x31, 0x5f, 0x47, 0x9b, 0x39, 0x84, 0xde, 0x57, 0x3e, 0x9b, 0x00, 0x1e, 0x05, 0x55, 0x24, 0x7c, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_224 = { .name = "xdh_wei25519_224", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_224_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_224_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_224_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 225 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 225 for XDH, tcId is 226 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_225_peerpubkey[] = { 0x73, 0x7d, 0x45, 0x47, 0x7e, 0x2b, 0xeb, 0x77, 0xa6, 0xc3, 0x8b, 0x98, 0xe2, 0xa1, 0x9b, 0x05, 0xc3, 0x95, 0xdf, 0x7d, 0xa9, 0x98, 0xcb, 0x91, 0xf6, 0xdf, 0xab, 0x58, 0x19, 0x61, 0x4f, 0x27, }; static const unsigned char xdh_wei25519_225_privkey[] = { 0xc8, 0x87, 0x88, 0x6f, 0xd0, 0x71, 0x07, 0xc7, 0x22, 0x1f, 0x6d, 0x9d, 0xd3, 0x6c, 0x30, 0x5e, 0xc7, 0x79, 0xce, 0xca, 0x13, 0x2a, 0xc9, 0x33, 0xff, 0x77, 0xda, 0xb2, 0xbe, 0xac, 0x63, 0x45, }; static const unsigned char xdh_wei25519_225_sharedsecret[] = { 0x8c, 0xf4, 0x53, 0x8a, 0xe5, 0xf4, 0x45, 0xcc, 0x6d, 0x27, 0x3d, 0xf4, 0xad, 0x30, 0x0a, 0x45, 0xd7, 0xbb, 0x2f, 0x6e, 0x37, 0x3a, 0x56, 0x24, 0x40, 0xf1, 0xb3, 0x77, 0x73, 0x90, 0x4e, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_225 = { .name = "xdh_wei25519_225", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_225_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_225_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_225_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 226 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 226 for XDH, tcId is 227 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_226_peerpubkey[] = { 0x87, 0x3f, 0x8b, 0x26, 0x0e, 0xa9, 0xd9, 0xdd, 0xac, 0x08, 0xb7, 0xb0, 0x30, 0x72, 0x7b, 0xf0, 0x07, 0x23, 0x15, 0xab, 0x54, 0x07, 0x5e, 0xcc, 0x39, 0x3a, 0x37, 0xa9, 0x75, 0x88, 0x2b, 0x7e, }; static const unsigned char xdh_wei25519_226_privkey[] = { 0x58, 0x09, 0x6e, 0xe2, 0x93, 0x61, 0x97, 0x8f, 0x63, 0x0a, 0xd1, 0xfb, 0x00, 0xc1, 0x26, 0x7c, 0x5a, 0x90, 0x1f, 0x99, 0xc5, 0x02, 0xf9, 0x56, 0x9b, 0x93, 0x3a, 0xd0, 0xdc, 0xce, 0x0f, 0x50, }; static const unsigned char xdh_wei25519_226_sharedsecret[] = { 0xd5, 0x76, 0x67, 0x53, 0x21, 0x1d, 0x99, 0x68, 0xde, 0x4a, 0xc2, 0x55, 0x99, 0x98, 0xf2, 0x2e, 0xf4, 0x4e, 0x8a, 0xa8, 0x79, 0xf3, 0x32, 0x8c, 0xbc, 0x46, 0xaa, 0x85, 0x8d, 0xcb, 0x43, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_226 = { .name = "xdh_wei25519_226", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_226_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_226_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_226_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 227 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 227 for XDH, tcId is 228 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_227_peerpubkey[] = { 0x75, 0xe1, 0x58, 0x7c, 0x5e, 0xef, 0xc8, 0x37, 0x15, 0xd7, 0x10, 0x20, 0xaa, 0x6b, 0xe5, 0x34, 0x7b, 0xb9, 0xec, 0x9d, 0x91, 0xce, 0x5b, 0x28, 0xa9, 0xbb, 0xb7, 0x4c, 0x92, 0xef, 0x40, 0x7e, }; static const unsigned char xdh_wei25519_227_privkey[] = { 0x08, 0x29, 0xa4, 0x90, 0x46, 0xdc, 0xe2, 0xc0, 0x7a, 0xb2, 0x84, 0x40, 0xdb, 0xad, 0x14, 0x64, 0x53, 0xe1, 0x28, 0x96, 0x0e, 0x85, 0xdd, 0x2e, 0x6a, 0x69, 0xa1, 0x51, 0x28, 0x73, 0xdd, 0x44, }; static const unsigned char xdh_wei25519_227_sharedsecret[] = { 0x76, 0x1d, 0x8c, 0xec, 0xf1, 0x3f, 0x93, 0xb3, 0x79, 0xa7, 0x72, 0xe5, 0xfa, 0xc5, 0xb9, 0xff, 0xe9, 0x96, 0xca, 0xd9, 0xaf, 0x06, 0x15, 0x25, 0x80, 0xaf, 0xe8, 0x7f, 0xf9, 0x65, 0x1c, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_227 = { .name = "xdh_wei25519_227", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_227_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_227_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_227_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 228 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 228 for XDH, tcId is 229 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_228_peerpubkey[] = { 0xf8, 0x5a, 0x06, 0x06, 0x5e, 0xa2, 0x52, 0x72, 0x38, 0xfc, 0x5e, 0xc1, 0xb7, 0x5e, 0xad, 0x92, 0x62, 0xe6, 0xb1, 0xae, 0xd6, 0x1f, 0xef, 0xf8, 0x3b, 0x91, 0x23, 0x0a, 0xeb, 0x4b, 0x7d, 0x01, }; static const unsigned char xdh_wei25519_228_privkey[] = { 0x58, 0x7a, 0xc3, 0x6b, 0x9a, 0x23, 0x59, 0x46, 0x32, 0x67, 0x9a, 0xde, 0xa1, 0xa8, 0x26, 0xf2, 0xf6, 0x2d, 0x79, 0x73, 0x82, 0x20, 0xfb, 0x48, 0x74, 0x64, 0x03, 0x9f, 0x36, 0xca, 0x23, 0x72, }; static const unsigned char xdh_wei25519_228_sharedsecret[] = { 0xf1, 0x2a, 0xcd, 0x36, 0xf6, 0x29, 0x9a, 0x4d, 0x19, 0x2c, 0x03, 0xaa, 0x4e, 0xfe, 0xea, 0x7d, 0xf5, 0x1e, 0x2d, 0x15, 0xd7, 0x63, 0x17, 0x2e, 0x68, 0xac, 0xcf, 0x7b, 0xc6, 0xf5, 0xc2, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_228 = { .name = "xdh_wei25519_228", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_228_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_228_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_228_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 229 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 229 for XDH, tcId is 230 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_229_peerpubkey[] = { 0x6e, 0x0f, 0x1d, 0x00, 0xb1, 0x09, 0x9d, 0x2a, 0x71, 0xf7, 0xbe, 0x86, 0x65, 0x5f, 0xeb, 0x89, 0x88, 0xbb, 0xa5, 0x57, 0x7b, 0x02, 0xf9, 0x64, 0x04, 0x3a, 0x49, 0xf0, 0x0c, 0x74, 0x96, 0x13, }; static const unsigned char xdh_wei25519_229_privkey[] = { 0xa8, 0xa4, 0x42, 0xb7, 0xc0, 0xa9, 0x92, 0x27, 0xb4, 0xcb, 0x5c, 0x75, 0xfb, 0x9e, 0x5a, 0x72, 0xce, 0xa2, 0x5e, 0xba, 0x8a, 0x0b, 0xdf, 0x07, 0x27, 0x1b, 0xb4, 0xa9, 0x3c, 0x2b, 0x66, 0x65, }; static const unsigned char xdh_wei25519_229_sharedsecret[] = { 0xb2, 0xbb, 0xbd, 0x17, 0x3f, 0x41, 0xd9, 0x52, 0xd3, 0x29, 0x25, 0x1d, 0xa9, 0x73, 0xa9, 0x50, 0x03, 0x00, 0x62, 0x81, 0x77, 0xad, 0x0f, 0xb7, 0x9d, 0x01, 0xe2, 0xe2, 0x63, 0x90, 0x5b, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_229 = { .name = "xdh_wei25519_229", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_229_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_229_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_229_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 230 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 230 for XDH, tcId is 231 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_230_peerpubkey[] = { 0x69, 0x67, 0x57, 0xce, 0xd3, 0x09, 0x7f, 0xa9, 0x60, 0xc8, 0x39, 0x0a, 0x09, 0xe8, 0xbd, 0x6d, 0x39, 0x0d, 0xbd, 0xe8, 0xd1, 0xfa, 0x17, 0x02, 0x61, 0xf3, 0x42, 0x2e, 0xdc, 0x19, 0x29, 0x29, }; static const unsigned char xdh_wei25519_230_privkey[] = { 0xd8, 0xf7, 0x23, 0x3e, 0x96, 0x12, 0xc0, 0x0c, 0x9d, 0xca, 0x2c, 0x75, 0x1e, 0xc1, 0xd3, 0xf5, 0xf6, 0x7b, 0xad, 0x77, 0xc2, 0xe7, 0x14, 0xa2, 0x0e, 0x71, 0xeb, 0x3f, 0x22, 0x0a, 0x66, 0x71, }; static const unsigned char xdh_wei25519_230_sharedsecret[] = { 0x45, 0xec, 0xfa, 0x27, 0x5f, 0x1d, 0xaa, 0x25, 0xd3, 0xfa, 0xdf, 0x33, 0xcd, 0xf8, 0x9a, 0x15, 0x2a, 0xfe, 0xa2, 0x5e, 0xae, 0x37, 0xe6, 0x8e, 0x00, 0xb3, 0x0c, 0x36, 0x77, 0x89, 0x88, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_230 = { .name = "xdh_wei25519_230", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_230_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_230_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_230_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 231 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 231 for XDH, tcId is 232 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_231_peerpubkey[] = { 0xfd, 0x84, 0xb3, 0xf2, 0xfb, 0xfa, 0x16, 0xae, 0xbf, 0x40, 0xc2, 0x7f, 0x46, 0xe1, 0x8d, 0x77, 0xba, 0xfa, 0x0c, 0x79, 0x71, 0xbe, 0xdd, 0xe4, 0x90, 0x92, 0x12, 0xe7, 0x71, 0xbd, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_231_privkey[] = { 0xd8, 0x0c, 0x7c, 0x75, 0x57, 0xc9, 0x90, 0x7e, 0x1b, 0x11, 0xe8, 0x44, 0xbf, 0x13, 0x69, 0xcb, 0xa6, 0x69, 0xbc, 0x38, 0xe9, 0xb7, 0xb2, 0x53, 0xe5, 0x1f, 0x23, 0x9b, 0xda, 0x32, 0x23, 0x74, }; static const unsigned char xdh_wei25519_231_sharedsecret[] = { 0x59, 0x5e, 0x14, 0x4e, 0x07, 0xbb, 0xe6, 0x5b, 0x38, 0xe0, 0xe4, 0x16, 0x3d, 0x02, 0xad, 0x75, 0xa6, 0x5e, 0x42, 0x2e, 0x74, 0x06, 0x7d, 0xb3, 0x5c, 0x90, 0xdf, 0xa6, 0xe0, 0x55, 0xd4, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_231 = { .name = "xdh_wei25519_231", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_231_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_231_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_231_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 232 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 232 for XDH, tcId is 233 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_232_peerpubkey[] = { 0x80, 0x54, 0x85, 0x70, 0x3c, 0xcf, 0xc4, 0xa2, 0x21, 0xef, 0x28, 0x12, 0x67, 0xf5, 0x2b, 0x61, 0xce, 0xbc, 0x87, 0x9f, 0x0f, 0x13, 0xb1, 0xe5, 0xf5, 0x21, 0xc1, 0x73, 0x52, 0xa0, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_232_privkey[] = { 0x80, 0x02, 0xa8, 0x51, 0x15, 0xad, 0x7b, 0x41, 0xc5, 0x0f, 0x84, 0xf3, 0x5f, 0xac, 0x75, 0x0e, 0xe8, 0xe1, 0x97, 0x34, 0x80, 0x71, 0x02, 0x83, 0x0f, 0xf6, 0xa3, 0x06, 0xbe, 0xed, 0x44, 0x64, }; static const unsigned char xdh_wei25519_232_sharedsecret[] = { 0x22, 0x6e, 0x16, 0xa2, 0x79, 0xac, 0x81, 0xe2, 0x68, 0x43, 0x7e, 0xb3, 0xe0, 0x9e, 0x07, 0x40, 0x63, 0x24, 0xcb, 0x72, 0xa9, 0xd4, 0xee, 0x58, 0xe4, 0xcf, 0x00, 0x91, 0x47, 0x49, 0x72, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_232 = { .name = "xdh_wei25519_232", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_232_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_232_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_232_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 233 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 233 for XDH, tcId is 234 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_233_peerpubkey[] = { 0x80, 0x64, 0x2a, 0x32, 0x79, 0xda, 0x6b, 0xf5, 0xfc, 0x13, 0xdb, 0x14, 0xa5, 0x69, 0xc7, 0x08, 0x9d, 0xb0, 0x14, 0x22, 0x5c, 0xfc, 0xae, 0x7d, 0xff, 0x5a, 0x0d, 0x25, 0xec, 0xc9, 0x23, 0x5b, }; static const unsigned char xdh_wei25519_233_privkey[] = { 0x78, 0x2d, 0xb0, 0xc8, 0xe3, 0xe6, 0x8f, 0x10, 0x6f, 0xe0, 0xc5, 0x64, 0x15, 0xe0, 0xbd, 0x13, 0xd8, 0x12, 0xde, 0xa0, 0xe9, 0x4c, 0xbd, 0x18, 0xbd, 0xf6, 0x76, 0x12, 0x95, 0x61, 0x3a, 0x6d, }; static const unsigned char xdh_wei25519_233_sharedsecret[] = { 0x79, 0x0d, 0x09, 0xb1, 0x72, 0x6d, 0x21, 0x09, 0x57, 0xce, 0x8f, 0x65, 0x86, 0x9c, 0xa1, 0xec, 0x8f, 0xa0, 0xb2, 0xb0, 0x6b, 0x6b, 0xcf, 0x94, 0x83, 0xb3, 0xeb, 0x55, 0xe4, 0x9e, 0x92, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_233 = { .name = "xdh_wei25519_233", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_233_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_233_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_233_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 234 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 234 for XDH, tcId is 235 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_234_peerpubkey[] = { 0x84, 0xe8, 0x27, 0xf7, 0x8c, 0xae, 0x0c, 0xf0, 0x63, 0xe4, 0x34, 0x01, 0x98, 0xf7, 0x88, 0xc2, 0x84, 0xe0, 0x74, 0x30, 0xb3, 0xa9, 0x4a, 0x38, 0x73, 0xdf, 0x38, 0xb1, 0xf8, 0x72, 0xce, 0x02, }; static const unsigned char xdh_wei25519_234_privkey[] = { 0x90, 0x9f, 0xb0, 0xbd, 0xbf, 0x53, 0xa6, 0x9a, 0x2f, 0xe3, 0x9c, 0x8b, 0x24, 0x97, 0xab, 0xd4, 0xfa, 0x57, 0xd2, 0xd5, 0x4e, 0x04, 0x6b, 0x5f, 0x51, 0x45, 0x95, 0xe2, 0xc0, 0xf3, 0x3d, 0x63, }; static const unsigned char xdh_wei25519_234_sharedsecret[] = { 0x68, 0x4c, 0xc8, 0x3a, 0xf8, 0x06, 0xbc, 0xd9, 0xcd, 0x25, 0x1e, 0x18, 0x58, 0xf3, 0xc1, 0x0f, 0x01, 0x66, 0xe0, 0xa0, 0xcd, 0x2b, 0xe1, 0x54, 0x33, 0x9a, 0x88, 0x6b, 0x13, 0xe7, 0xc7, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_234 = { .name = "xdh_wei25519_234", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_234_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_234_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_234_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 235 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 235 for XDH, tcId is 236 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_235_peerpubkey[] = { 0xd4, 0x45, 0xe1, 0xdf, 0x00, 0x83, 0xbb, 0x6b, 0x8e, 0x88, 0x6e, 0x66, 0x32, 0x25, 0x18, 0x07, 0x17, 0x1d, 0x4e, 0x88, 0xc4, 0x18, 0x16, 0xfc, 0x68, 0x43, 0x73, 0xc0, 0x9d, 0x7e, 0x5d, 0x6e, }; static const unsigned char xdh_wei25519_235_privkey[] = { 0x78, 0xa6, 0x79, 0x09, 0x75, 0x72, 0x48, 0x66, 0x5f, 0x79, 0x37, 0x1e, 0xb0, 0x14, 0x82, 0x5a, 0xb6, 0xbd, 0x4a, 0xf3, 0x57, 0x1f, 0x14, 0x03, 0x89, 0xc6, 0x36, 0xe0, 0x04, 0xbc, 0xf4, 0x6b, }; static const unsigned char xdh_wei25519_235_sharedsecret[] = { 0xe4, 0x26, 0xe4, 0xa3, 0xc5, 0x4d, 0x3e, 0x77, 0xf4, 0xf1, 0x57, 0x30, 0x1e, 0x0a, 0xc7, 0xd9, 0xe1, 0x23, 0x37, 0xa2, 0xb5, 0x8d, 0xf1, 0x67, 0x80, 0x04, 0x1c, 0xf6, 0xd6, 0x19, 0x8c, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_235 = { .name = "xdh_wei25519_235", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_235_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_235_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_235_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 236 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 236 for XDH, tcId is 237 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_236_peerpubkey[] = { 0xf2, 0x6a, 0xa6, 0x15, 0x1a, 0x4b, 0x22, 0x39, 0x01, 0x76, 0xf6, 0x23, 0x3e, 0x74, 0x2f, 0x40, 0xf2, 0xec, 0xd5, 0x13, 0x71, 0x66, 0xfb, 0x2e, 0x1e, 0xc9, 0xb2, 0xf2, 0x45, 0x4a, 0xc2, 0x77, }; static const unsigned char xdh_wei25519_236_privkey[] = { 0x28, 0x6a, 0x30, 0x2d, 0x5b, 0x07, 0x6d, 0x2a, 0xba, 0x7c, 0x2a, 0x4d, 0xaf, 0x9e, 0x7c, 0xc9, 0xd8, 0x53, 0x9b, 0x7c, 0x03, 0x91, 0x30, 0x7d, 0xb6, 0x5a, 0x2f, 0x42, 0x20, 0xd3, 0x0f, 0x70, }; static const unsigned char xdh_wei25519_236_sharedsecret[] = { 0x86, 0x2d, 0xf9, 0x2e, 0x25, 0x27, 0x7b, 0xd9, 0x4f, 0x9a, 0xf2, 0xe1, 0xdd, 0xa5, 0x1f, 0x90, 0x5a, 0x6e, 0x2a, 0x3f, 0x60, 0x68, 0xa9, 0x2f, 0xab, 0xfc, 0x6c, 0x53, 0xda, 0x21, 0xec, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_236 = { .name = "xdh_wei25519_236", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_236_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_236_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_236_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 237 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 237 for XDH, tcId is 238 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_237_peerpubkey[] = { 0x2b, 0x02, 0xdb, 0x3c, 0x82, 0x47, 0x7f, 0xe2, 0x1a, 0xa7, 0xa9, 0x4d, 0x85, 0xdf, 0x37, 0x9f, 0x57, 0x1c, 0x84, 0x49, 0xb4, 0x3c, 0xbd, 0x06, 0x05, 0xd0, 0xac, 0xc5, 0x3c, 0x47, 0x2f, 0x05, }; static const unsigned char xdh_wei25519_237_privkey[] = { 0xa8, 0x38, 0xb7, 0x0d, 0x17, 0x16, 0x1c, 0xb3, 0x82, 0x22, 0xf7, 0xbc, 0x69, 0xa3, 0xc8, 0x57, 0x60, 0x32, 0xd5, 0x80, 0x27, 0x5b, 0x3b, 0x7d, 0x63, 0xfb, 0xa0, 0x89, 0x08, 0xcb, 0x48, 0x79, }; static const unsigned char xdh_wei25519_237_sharedsecret[] = { 0x3f, 0x43, 0x8d, 0xbf, 0x03, 0x94, 0x79, 0x95, 0xc9, 0x9f, 0xd4, 0xcb, 0x36, 0x6c, 0xa7, 0xe0, 0x0e, 0x8c, 0xfb, 0xce, 0x64, 0xc3, 0x03, 0x9c, 0x26, 0xd9, 0xfa, 0xd0, 0x0f, 0xa4, 0x9c, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_237 = { .name = "xdh_wei25519_237", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_237_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_237_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_237_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 238 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 238 for XDH, tcId is 239 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_238_peerpubkey[] = { 0xd7, 0x1d, 0xd7, 0xdb, 0x12, 0x23, 0x30, 0xc9, 0xbb, 0xaa, 0xb5, 0xda, 0x6c, 0xf1, 0xf6, 0xe1, 0xc2, 0x53, 0x45, 0xee, 0x6a, 0x66, 0xb1, 0x75, 0x12, 0xb1, 0x80, 0x4a, 0xce, 0x28, 0x73, 0x59, }; static const unsigned char xdh_wei25519_238_privkey[] = { 0xb0, 0x73, 0x3b, 0x42, 0x03, 0x26, 0x7a, 0xb3, 0xc9, 0x4c, 0x50, 0x6a, 0xca, 0xdb, 0x94, 0x9a, 0x76, 0xcc, 0x60, 0x04, 0x86, 0xfc, 0xd6, 0x01, 0x47, 0x8f, 0xcd, 0xef, 0x79, 0xc2, 0x9d, 0x6c, }; static const unsigned char xdh_wei25519_238_sharedsecret[] = { 0x95, 0xf3, 0xf1, 0x84, 0x9b, 0x0a, 0x07, 0x01, 0x84, 0xe6, 0x07, 0x7c, 0x92, 0xae, 0x36, 0xba, 0x33, 0x24, 0xbf, 0x14, 0x41, 0x16, 0x8b, 0x89, 0xbb, 0x4b, 0x91, 0x67, 0xed, 0xd6, 0x73, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_238 = { .name = "xdh_wei25519_238", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_238_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_238_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_238_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 239 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 239 for XDH, tcId is 240 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_239_peerpubkey[] = { 0x73, 0x7b, 0xc0, 0x7d, 0xe0, 0x72, 0x9b, 0xbc, 0xfb, 0xee, 0x3a, 0x08, 0xe6, 0x96, 0xf9, 0x7f, 0x37, 0x70, 0x57, 0x7e, 0x4b, 0x01, 0xec, 0x10, 0x8f, 0x59, 0xca, 0xf4, 0x64, 0x06, 0xd2, 0x05, }; static const unsigned char xdh_wei25519_239_privkey[] = { 0xd8, 0x44, 0xa3, 0x6b, 0x58, 0xae, 0xfd, 0xb0, 0x8b, 0x98, 0x17, 0x96, 0x02, 0x9a, 0x27, 0x66, 0x10, 0x18, 0x84, 0xb3, 0x48, 0xf7, 0x0e, 0xed, 0x94, 0x7c, 0x25, 0x41, 0x06, 0x4c, 0xaf, 0x6a, }; static const unsigned char xdh_wei25519_239_sharedsecret[] = { 0x6a, 0x96, 0x9a, 0xf6, 0xd2, 0x36, 0xab, 0xa0, 0x8f, 0xa8, 0x31, 0x60, 0xf6, 0x99, 0xe9, 0xed, 0x76, 0xfb, 0x63, 0x55, 0xf0, 0x66, 0x2f, 0x03, 0xdb, 0xc5, 0x91, 0x5a, 0x3c, 0x23, 0x06, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_239 = { .name = "xdh_wei25519_239", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_239_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_239_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_239_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 240 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 240 for XDH, tcId is 241 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_240_peerpubkey[] = { 0x97, 0x58, 0x06, 0x1a, 0x7b, 0x3e, 0x2c, 0x02, 0xfb, 0x5c, 0x20, 0x87, 0x5a, 0xe6, 0xb5, 0x5b, 0x11, 0xfb, 0x67, 0x95, 0x99, 0x0a, 0x0f, 0x4f, 0xdc, 0xd1, 0x14, 0x7b, 0xe5, 0x52, 0x16, 0x07, }; static const unsigned char xdh_wei25519_240_privkey[] = { 0xa0, 0xb7, 0xd3, 0x12, 0xd9, 0xb8, 0x32, 0xe1, 0x24, 0xd1, 0xbc, 0x8c, 0xb2, 0x1d, 0xb5, 0x45, 0x44, 0x0e, 0x3c, 0xf1, 0x4e, 0x74, 0x73, 0xee, 0x9c, 0xcb, 0xe9, 0xb6, 0x82, 0xf2, 0x15, 0x6c, }; static const unsigned char xdh_wei25519_240_sharedsecret[] = { 0xab, 0x39, 0xdb, 0x4a, 0xa2, 0x9a, 0xc4, 0x01, 0x7c, 0x74, 0x46, 0xf1, 0xad, 0x0c, 0x7d, 0xaa, 0x9a, 0x37, 0xf1, 0xb6, 0xb4, 0xf2, 0xe9, 0xd2, 0x90, 0x2c, 0xce, 0xfb, 0x84, 0x83, 0x9d, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_240 = { .name = "xdh_wei25519_240", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_240_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_240_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_240_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 241 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 241 for XDH, tcId is 242 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_241_peerpubkey[] = { 0x37, 0xcd, 0x65, 0xd3, 0x30, 0x36, 0x20, 0x5f, 0x34, 0x49, 0xe8, 0x65, 0x5a, 0x50, 0xd4, 0xb0, 0xc8, 0x6f, 0xec, 0x02, 0x10, 0x0b, 0x4f, 0x2d, 0xb7, 0xda, 0x92, 0xdc, 0xf5, 0xe3, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_241_privkey[] = { 0x78, 0x7f, 0x1d, 0xdd, 0x78, 0xcc, 0x64, 0x73, 0xd3, 0xe6, 0x39, 0x49, 0x40, 0x9a, 0xd3, 0xf3, 0x5b, 0xfe, 0x0c, 0xe0, 0x73, 0x8f, 0x25, 0x5d, 0xee, 0x68, 0x2f, 0x2b, 0xfb, 0xc8, 0x0f, 0x7f, }; static const unsigned char xdh_wei25519_241_sharedsecret[] = { 0x13, 0xde, 0x41, 0x65, 0x9e, 0x3e, 0x30, 0x8d, 0x6e, 0x26, 0xc9, 0x42, 0x82, 0xfc, 0xc3, 0xe0, 0x36, 0x4d, 0xdf, 0x08, 0x09, 0xdd, 0xee, 0x6c, 0x8e, 0x7a, 0xbb, 0x50, 0x91, 0xb0, 0x2b, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_241 = { .name = "xdh_wei25519_241", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_241_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_241_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_241_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 242 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 242 for XDH, tcId is 243 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_242_peerpubkey[] = { 0xa9, 0xb6, 0xe8, 0x08, 0x14, 0x60, 0x38, 0x3a, 0xdc, 0x58, 0x7c, 0x8f, 0x91, 0xa0, 0x2c, 0x59, 0xa7, 0xa3, 0x55, 0x76, 0xca, 0x62, 0x43, 0x6c, 0xcd, 0x1b, 0x5f, 0xef, 0x1b, 0x92, 0x54, 0x5d, }; static const unsigned char xdh_wei25519_242_privkey[] = { 0x40, 0x80, 0xae, 0x60, 0xa8, 0x5c, 0x1f, 0xa9, 0x5a, 0xad, 0x9b, 0xea, 0xbd, 0x98, 0xb4, 0x05, 0xe7, 0xf2, 0x81, 0x41, 0xbf, 0x08, 0xf2, 0xc9, 0xa4, 0xfd, 0xbd, 0xe1, 0xc5, 0x68, 0x02, 0x65, }; static const unsigned char xdh_wei25519_242_sharedsecret[] = { 0x69, 0xed, 0x8a, 0x0a, 0x27, 0x81, 0x2a, 0xe6, 0x74, 0x14, 0x74, 0xbd, 0x5c, 0x6a, 0x4e, 0x68, 0x3a, 0x12, 0x66, 0x49, 0xf7, 0x24, 0x5a, 0xa0, 0xf9, 0x1a, 0x3a, 0x38, 0x4b, 0xcd, 0xe2, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_242 = { .name = "xdh_wei25519_242", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_242_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_242_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_242_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 243 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 243 for XDH, tcId is 244 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_243_peerpubkey[] = { 0xfd, 0x1a, 0x2c, 0xd1, 0x7a, 0x93, 0xf8, 0x50, 0xde, 0xb8, 0xc4, 0x5a, 0x2d, 0x34, 0x53, 0x92, 0x32, 0xdf, 0xd8, 0xa5, 0x58, 0x30, 0x42, 0x09, 0x78, 0x1c, 0x6c, 0xb5, 0x82, 0x29, 0x87, 0x0e, }; static const unsigned char xdh_wei25519_243_privkey[] = { 0x08, 0xf9, 0xf4, 0xa4, 0xfa, 0xc4, 0xdb, 0x41, 0x33, 0x15, 0xf7, 0x4a, 0x59, 0x81, 0x8b, 0x24, 0x52, 0xfc, 0x7b, 0x76, 0x85, 0x59, 0x2e, 0x26, 0x55, 0x67, 0x75, 0xf9, 0xb8, 0x6d, 0x90, 0x7f, }; static const unsigned char xdh_wei25519_243_sharedsecret[] = { 0x01, 0x02, 0x18, 0xbd, 0x67, 0xb1, 0xb9, 0x2f, 0xee, 0x3e, 0x7f, 0xa4, 0x57, 0x8c, 0x13, 0x61, 0x7d, 0x73, 0x19, 0x5d, 0xe1, 0x02, 0x79, 0x74, 0x7e, 0x53, 0xba, 0x01, 0xa2, 0x54, 0x52, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_243 = { .name = "xdh_wei25519_243", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_243_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_243_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_243_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 244 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 244 for XDH, tcId is 245 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_244_peerpubkey[] = { 0xb8, 0x81, 0x19, 0xe5, 0xae, 0x6d, 0x9e, 0x6b, 0x91, 0x2d, 0x52, 0x52, 0x47, 0x39, 0xe6, 0x12, 0xef, 0x19, 0xab, 0x7e, 0x5d, 0xd3, 0xd9, 0x46, 0xcb, 0x9b, 0xc0, 0x03, 0xc3, 0x78, 0xf8, 0x1f, }; static const unsigned char xdh_wei25519_244_privkey[] = { 0x18, 0x88, 0xcf, 0xae, 0x30, 0x85, 0x86, 0x76, 0x57, 0xb0, 0x94, 0x35, 0xc4, 0x2b, 0x74, 0xcc, 0x76, 0x24, 0x57, 0x83, 0x94, 0x51, 0xa3, 0x65, 0x9d, 0xb2, 0x18, 0xd4, 0x21, 0x4f, 0xdd, 0x63, }; static const unsigned char xdh_wei25519_244_sharedsecret[] = { 0xe6, 0xb2, 0x98, 0xde, 0x9c, 0xb6, 0x35, 0x8f, 0xbb, 0xb0, 0x0f, 0x11, 0x89, 0x0f, 0x57, 0x14, 0xa3, 0x85, 0x8e, 0x8f, 0x05, 0xa2, 0xa8, 0xd1, 0xcf, 0x39, 0xfe, 0x78, 0xcc, 0x55, 0xdd, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_244 = { .name = "xdh_wei25519_244", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_244_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_244_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_244_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 245 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 245 for XDH, tcId is 246 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_245_peerpubkey[] = { 0x7b, 0x70, 0xe2, 0x9d, 0xce, 0x04, 0x79, 0xcd, 0xe4, 0xa3, 0x6c, 0x7f, 0x97, 0x86, 0x58, 0x2f, 0x10, 0x4b, 0xc0, 0x78, 0x8f, 0x04, 0x6b, 0x48, 0xaf, 0x49, 0x5e, 0x67, 0xbd, 0xb8, 0x8f, 0x36, }; static const unsigned char xdh_wei25519_245_privkey[] = { 0x78, 0x9c, 0xe1, 0x3e, 0xd0, 0x07, 0x81, 0x8d, 0x7a, 0x51, 0x81, 0xe6, 0x29, 0xee, 0xd9, 0x44, 0xa2, 0x0a, 0x05, 0x8c, 0xfe, 0x39, 0x66, 0x9c, 0x98, 0x31, 0xbf, 0xa5, 0x21, 0x5a, 0x12, 0x69, }; static const unsigned char xdh_wei25519_245_sharedsecret[] = { 0x96, 0x7b, 0xbe, 0x29, 0x84, 0x94, 0xb4, 0xa5, 0xf9, 0x58, 0x53, 0xcf, 0xde, 0x9d, 0xc8, 0x59, 0x70, 0xb2, 0xa4, 0xb5, 0xdd, 0x2c, 0x92, 0x78, 0x29, 0x01, 0xe8, 0x53, 0x95, 0x7f, 0x58, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_245 = { .name = "xdh_wei25519_245", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_245_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_245_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_245_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 246 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 246 for XDH, tcId is 247 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_246_peerpubkey[] = { 0x2a, 0x20, 0x9e, 0x2a, 0xce, 0x0e, 0x3d, 0x69, 0x73, 0xff, 0xbf, 0x74, 0x03, 0xf9, 0x85, 0x7f, 0xf9, 0x7a, 0x5f, 0xdc, 0xd2, 0x7f, 0x2c, 0x70, 0x98, 0xb4, 0x44, 0xfc, 0x3c, 0x16, 0x67, 0x38, }; static const unsigned char xdh_wei25519_246_privkey[] = { 0x00, 0x02, 0x2b, 0x43, 0x77, 0x5a, 0xb2, 0xf4, 0xb9, 0x1b, 0xc1, 0xcb, 0x54, 0xc9, 0x7f, 0x78, 0x02, 0x62, 0x89, 0xea, 0xaf, 0x02, 0xab, 0xee, 0xd0, 0x4c, 0xa8, 0x4f, 0x73, 0x6c, 0x68, 0x6c, }; static const unsigned char xdh_wei25519_246_sharedsecret[] = { 0x9f, 0x66, 0x84, 0x86, 0x81, 0xd5, 0x34, 0xe5, 0x2b, 0x65, 0x99, 0x46, 0xea, 0x2c, 0x92, 0xd2, 0xfa, 0xbe, 0xd4, 0x3f, 0xe6, 0xe6, 0x90, 0x32, 0xc1, 0x11, 0x53, 0xdb, 0x43, 0xdc, 0xa7, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_246 = { .name = "xdh_wei25519_246", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_246_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_246_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_246_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 247 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 247 for XDH, tcId is 248 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_247_peerpubkey[] = { 0xf5, 0x07, 0x09, 0xac, 0xa7, 0xf3, 0x14, 0xe8, 0xd0, 0x5b, 0x5f, 0xf9, 0x7a, 0x42, 0x7e, 0x42, 0x7b, 0xd5, 0xe8, 0x5c, 0x4e, 0x86, 0x71, 0x21, 0x25, 0x07, 0x6a, 0x77, 0x1b, 0xe2, 0x14, 0x48, }; static const unsigned char xdh_wei25519_247_privkey[] = { 0x80, 0x97, 0xa5, 0x2f, 0xc5, 0x62, 0xe8, 0xa5, 0x16, 0x68, 0x2f, 0x53, 0x63, 0xcc, 0x5e, 0x7c, 0x88, 0xe9, 0xc7, 0x8e, 0x30, 0x8d, 0xf0, 0xde, 0xef, 0x40, 0x49, 0x7b, 0x35, 0xcc, 0x12, 0x7d, }; static const unsigned char xdh_wei25519_247_sharedsecret[] = { 0xea, 0x75, 0x72, 0xe2, 0x7a, 0x91, 0x20, 0xde, 0x1f, 0x13, 0xb8, 0x57, 0x10, 0xba, 0x69, 0xa3, 0x47, 0x1b, 0x7b, 0x3f, 0x5d, 0x12, 0xbc, 0x43, 0x0c, 0x12, 0xc4, 0xbb, 0xf8, 0xaa, 0x39, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_247 = { .name = "xdh_wei25519_247", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_247_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_247_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_247_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 248 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 248 for XDH, tcId is 249 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_248_peerpubkey[] = { 0x0f, 0x13, 0x95, 0x59, 0x78, 0xb9, 0x3d, 0x7b, 0x9f, 0x9a, 0x2e, 0x70, 0xd9, 0x6d, 0xf9, 0x22, 0x85, 0x0a, 0x8f, 0xfd, 0x84, 0x12, 0xe2, 0x36, 0xfb, 0x07, 0x4a, 0xef, 0x99, 0xd3, 0x7d, 0x54, }; static const unsigned char xdh_wei25519_248_privkey[] = { 0x40, 0x28, 0x80, 0x20, 0x30, 0xd8, 0xa8, 0x22, 0x1a, 0x71, 0x60, 0xee, 0xbb, 0xf1, 0x84, 0x61, 0x16, 0xc1, 0xc2, 0x53, 0xab, 0xc4, 0x67, 0xd6, 0xe4, 0x3c, 0xb8, 0x50, 0xf1, 0x45, 0x98, 0x60, }; static const unsigned char xdh_wei25519_248_sharedsecret[] = { 0xe2, 0x3d, 0x63, 0xa4, 0x6b, 0xe6, 0x7c, 0x74, 0x43, 0xc0, 0x7b, 0x93, 0x71, 0xff, 0x6a, 0x06, 0xaf, 0xcd, 0x7a, 0x57, 0x94, 0xbf, 0x25, 0x37, 0x92, 0x60, 0x74, 0xb8, 0x81, 0x90, 0x30, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_248 = { .name = "xdh_wei25519_248", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_248_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_248_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_248_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 249 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 249 for XDH, tcId is 250 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_249_peerpubkey[] = { 0x18, 0xff, 0xe9, 0x92, 0xa7, 0x29, 0xce, 0x70, 0xc3, 0xb7, 0xcd, 0xc5, 0x5b, 0xab, 0x55, 0xf2, 0x21, 0x0d, 0x27, 0x91, 0x34, 0xb3, 0x08, 0x2a, 0x9f, 0x68, 0x2d, 0x3a, 0x0b, 0x13, 0x12, 0x73, }; static const unsigned char xdh_wei25519_249_privkey[] = { 0xd8, 0x51, 0x5d, 0x45, 0xc7, 0xab, 0x2b, 0x95, 0x29, 0x81, 0x65, 0x43, 0x15, 0x00, 0x68, 0xb8, 0xe4, 0xbb, 0x61, 0x4c, 0xf2, 0xb6, 0x8a, 0x8a, 0x99, 0x36, 0x39, 0x75, 0xaf, 0x50, 0x3d, 0x74, }; static const unsigned char xdh_wei25519_249_sharedsecret[] = { 0x33, 0xcc, 0xaf, 0x24, 0xe1, 0xe2, 0x62, 0x90, 0xed, 0x7e, 0x46, 0x20, 0x93, 0xe9, 0xf7, 0x76, 0x07, 0xef, 0x52, 0xa0, 0x62, 0x6b, 0x2c, 0xd2, 0x51, 0x1c, 0x41, 0xcd, 0x24, 0xc1, 0x38, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_249 = { .name = "xdh_wei25519_249", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_249_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_249_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_249_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 250 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 250 for XDH, tcId is 251 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_250_peerpubkey[] = { 0xc3, 0xba, 0x28, 0x05, 0x77, 0x28, 0xd0, 0x53, 0x39, 0x65, 0xec, 0x34, 0x97, 0x9f, 0xe7, 0xbd, 0x93, 0xcf, 0x6c, 0xb6, 0x44, 0xe8, 0xda, 0x03, 0x8b, 0xaa, 0x87, 0x99, 0x7b, 0x8d, 0xc2, 0x0e, }; static const unsigned char xdh_wei25519_250_privkey[] = { 0xd8, 0x81, 0x5b, 0xd1, 0x44, 0x51, 0x8f, 0xa5, 0x26, 0xbe, 0xfd, 0xd3, 0x73, 0xf5, 0xf9, 0xcf, 0xf2, 0x54, 0xd5, 0xd3, 0xc4, 0x66, 0x0e, 0x8a, 0x90, 0xef, 0x2a, 0x22, 0xc6, 0x87, 0x6a, 0x74, }; static const unsigned char xdh_wei25519_250_sharedsecret[] = { 0x74, 0xf9, 0x5b, 0x47, 0x00, 0xf0, 0x18, 0x5f, 0x33, 0xc5, 0xb5, 0x52, 0x8e, 0xd5, 0x01, 0x2a, 0x33, 0x63, 0xf8, 0xbb, 0xd6, 0xf6, 0xa8, 0x40, 0xaa, 0x1f, 0x0f, 0x3b, 0xdb, 0x7c, 0x96, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_250 = { .name = "xdh_wei25519_250", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_250_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_250_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_250_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 251 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 251 for XDH, tcId is 252 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_251_peerpubkey[] = { 0x4e, 0xb0, 0x95, 0xa8, 0x6d, 0x1e, 0x78, 0x1b, 0xb1, 0x82, 0x23, 0x30, 0x75, 0xeb, 0xf1, 0xdb, 0x10, 0x9d, 0x57, 0x13, 0x5b, 0xf9, 0x1d, 0x54, 0xfd, 0xb1, 0x8e, 0xb3, 0x71, 0x42, 0x76, 0x40, }; static const unsigned char xdh_wei25519_251_privkey[] = { 0xa8, 0x2d, 0x99, 0x60, 0x93, 0xee, 0xfd, 0xaf, 0x28, 0x3f, 0x40, 0x49, 0xbb, 0xa4, 0xf5, 0xaf, 0x6e, 0xcc, 0x2e, 0x64, 0x89, 0x4f, 0x32, 0x5e, 0xe1, 0xf9, 0xca, 0x1e, 0x15, 0x6d, 0x05, 0x67, }; static const unsigned char xdh_wei25519_251_sharedsecret[] = { 0xe9, 0x67, 0x7b, 0x85, 0x48, 0x51, 0xc4, 0x1c, 0xc4, 0x89, 0xe0, 0x39, 0x81, 0xae, 0x78, 0x69, 0x0b, 0xe6, 0xcb, 0xf0, 0x05, 0x4e, 0xa9, 0x83, 0x47, 0x59, 0xde, 0x3e, 0x27, 0xbc, 0xf0, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_251 = { .name = "xdh_wei25519_251", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_251_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_251_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_251_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 252 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 252 for XDH, tcId is 253 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_252_peerpubkey[] = { 0x83, 0xf6, 0x7d, 0x7c, 0x92, 0xb1, 0x1c, 0x8f, 0xb0, 0x72, 0x48, 0x46, 0x42, 0xa0, 0x1f, 0x43, 0xde, 0xb0, 0x22, 0xb5, 0x4d, 0x94, 0xa4, 0x01, 0x5e, 0x39, 0x84, 0x9a, 0x2e, 0x2e, 0x95, 0x55, }; static const unsigned char xdh_wei25519_252_privkey[] = { 0xc0, 0x26, 0x09, 0xdf, 0x3d, 0x54, 0x36, 0xc1, 0x23, 0xdc, 0xd7, 0xee, 0x11, 0xf2, 0x3f, 0x1d, 0xa3, 0x21, 0x66, 0x6c, 0x09, 0xf3, 0x79, 0xd3, 0x79, 0x14, 0x20, 0x33, 0x40, 0x51, 0x08, 0x61, }; static const unsigned char xdh_wei25519_252_sharedsecret[] = { 0xf1, 0x48, 0x71, 0x6e, 0xbe, 0x72, 0x69, 0xa7, 0x07, 0x6f, 0x0c, 0xf1, 0xf2, 0x2b, 0x69, 0x78, 0xd3, 0xc7, 0xe3, 0x60, 0x7b, 0x0b, 0xcc, 0x87, 0xa8, 0xc7, 0xa8, 0x5b, 0x9f, 0xd2, 0x0c, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_252 = { .name = "xdh_wei25519_252", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_252_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_252_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_252_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 253 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 253 for XDH, tcId is 254 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_253_peerpubkey[] = { 0x20, 0xcc, 0x75, 0xd3, 0x76, 0xd8, 0x45, 0x3b, 0x9d, 0x04, 0x9c, 0x84, 0xf5, 0x8e, 0xaf, 0xcf, 0x61, 0x12, 0x6c, 0x08, 0xa0, 0x36, 0x61, 0xe7, 0x35, 0xf0, 0xa8, 0xbe, 0x22, 0x8f, 0xd4, 0x66, }; static const unsigned char xdh_wei25519_253_privkey[] = { 0xa0, 0xe3, 0xb7, 0x8c, 0x0f, 0x3b, 0xe2, 0xa7, 0x60, 0xb2, 0xc9, 0x16, 0xf2, 0x44, 0xdf, 0x21, 0x96, 0x24, 0xfd, 0xda, 0x2e, 0x9e, 0x31, 0xb1, 0x53, 0x28, 0xf4, 0xa7, 0x76, 0x90, 0x29, 0x6a, }; static const unsigned char xdh_wei25519_253_sharedsecret[] = { 0x1d, 0x5c, 0x12, 0x3e, 0x88, 0xe9, 0xdc, 0x7a, 0x3b, 0x16, 0xec, 0x90, 0xb6, 0x05, 0x78, 0xdf, 0xca, 0x7e, 0x11, 0xea, 0xb9, 0xb8, 0x8c, 0x6e, 0xca, 0x7b, 0xc3, 0x3d, 0x91, 0xfd, 0xe8, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_253 = { .name = "xdh_wei25519_253", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_253_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_253_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_253_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 254 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 254 for XDH, tcId is 255 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_254_peerpubkey[] = { 0xef, 0x31, 0xb4, 0x3d, 0x19, 0xc0, 0xa5, 0x43, 0x4d, 0xeb, 0x56, 0x12, 0x9c, 0x16, 0x29, 0x8a, 0x39, 0x4a, 0x70, 0x32, 0xa2, 0xe5, 0x2c, 0xb9, 0x97, 0x47, 0x6b, 0xde, 0xca, 0x32, 0x5b, 0x73, }; static const unsigned char xdh_wei25519_254_privkey[] = { 0x70, 0x1f, 0x13, 0x0a, 0x29, 0x05, 0x84, 0xcb, 0x28, 0xc7, 0xd6, 0x53, 0x95, 0x06, 0xa1, 0xa0, 0x54, 0xf9, 0x26, 0xa1, 0x7e, 0xf7, 0xc5, 0x68, 0xae, 0x43, 0x04, 0x7c, 0x05, 0xe1, 0x0f, 0x60, }; static const unsigned char xdh_wei25519_254_sharedsecret[] = { 0x2f, 0xc0, 0x65, 0xba, 0x8f, 0x50, 0x40, 0xa0, 0xa6, 0x59, 0xf6, 0xf7, 0x33, 0x05, 0x54, 0xbd, 0x1b, 0x9d, 0x7c, 0x89, 0x3b, 0x91, 0xe3, 0x16, 0xe0, 0xaf, 0x90, 0xc3, 0x7a, 0xf4, 0xf1, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_254 = { .name = "xdh_wei25519_254", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_254_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_254_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_254_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 255 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 255 for XDH, tcId is 256 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_255_peerpubkey[] = { 0xd8, 0xc8, 0xe2, 0xc6, 0xf3, 0x3a, 0x98, 0x52, 0x5d, 0xf3, 0x76, 0x7d, 0x1d, 0x04, 0x43, 0x0d, 0xab, 0x0b, 0xda, 0x41, 0xf1, 0xf9, 0x04, 0xc9, 0x5b, 0xc6, 0x1c, 0xc1, 0x22, 0xca, 0xca, 0x74, }; static const unsigned char xdh_wei25519_255_privkey[] = { 0xd0, 0xe6, 0x7f, 0x68, 0x18, 0x3a, 0x4c, 0x1a, 0xed, 0x9c, 0x56, 0x86, 0x4b, 0x36, 0x27, 0x8b, 0xb7, 0xbb, 0x75, 0xd5, 0x7a, 0x78, 0x32, 0x1b, 0xc7, 0xc2, 0x4f, 0xf6, 0x16, 0x36, 0x60, 0x7a, }; static const unsigned char xdh_wei25519_255_sharedsecret[] = { 0xef, 0x76, 0x12, 0xc1, 0x56, 0x07, 0x8d, 0xae, 0x3a, 0x81, 0xe5, 0x0e, 0xf3, 0x39, 0x51, 0xca, 0xb6, 0x61, 0xfb, 0x07, 0x73, 0x1d, 0x8f, 0x41, 0x9b, 0xc0, 0x10, 0x5c, 0x4d, 0x6d, 0x60, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_255 = { .name = "xdh_wei25519_255", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_255_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_255_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_255_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 256 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 256 for XDH, tcId is 257 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_256_peerpubkey[] = { 0x18, 0x33, 0x61, 0x95, 0x16, 0xb8, 0x0d, 0xb0, 0xc0, 0x5b, 0x22, 0x55, 0x09, 0xe6, 0x69, 0x8d, 0xf0, 0x28, 0xd8, 0x3b, 0x66, 0xed, 0x6b, 0xac, 0x6f, 0x0f, 0x63, 0x08, 0x97, 0x0d, 0x2c, 0x7d, }; static const unsigned char xdh_wei25519_256_privkey[] = { 0x88, 0xeb, 0x77, 0x75, 0xda, 0xcc, 0x32, 0xb0, 0x45, 0xce, 0xb3, 0x5f, 0x26, 0x1b, 0x36, 0x16, 0x31, 0x5e, 0xfa, 0x98, 0xb7, 0x80, 0xe0, 0x8c, 0x79, 0xd5, 0x44, 0xed, 0xad, 0xb5, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_256_sharedsecret[] = { 0xa3, 0xcf, 0x3d, 0x81, 0xec, 0x56, 0x89, 0x6a, 0x68, 0xfc, 0xa0, 0xda, 0x63, 0x35, 0x17, 0x1d, 0x0c, 0x62, 0x25, 0x68, 0x73, 0x8c, 0x0d, 0xb2, 0x6f, 0xe1, 0x17, 0x03, 0x37, 0x26, 0xa0, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_256 = { .name = "xdh_wei25519_256", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_256_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_256_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_256_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 257 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 257 for XDH, tcId is 258 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_257_peerpubkey[] = { 0xe2, 0xe9, 0x89, 0xaa, 0xd2, 0x39, 0x7f, 0xc3, 0x4b, 0x6c, 0xbe, 0x2d, 0xb2, 0x7d, 0x5a, 0xb6, 0x9b, 0x28, 0x04, 0x83, 0x83, 0xc9, 0x1d, 0x9e, 0x82, 0x26, 0xd5, 0x48, 0x25, 0x3f, 0xab, 0x7e, }; static const unsigned char xdh_wei25519_257_privkey[] = { 0x70, 0x55, 0xb1, 0xc0, 0x57, 0x6e, 0x7a, 0xb6, 0xc8, 0x9f, 0xcc, 0x1c, 0xe4, 0x9e, 0x79, 0xc8, 0xc3, 0x71, 0xbf, 0x9f, 0xc2, 0xb2, 0x2b, 0x8f, 0x83, 0x96, 0xa9, 0xb6, 0x4c, 0x5a, 0xe2, 0x6d, }; static const unsigned char xdh_wei25519_257_sharedsecret[] = { 0xe7, 0xf4, 0x58, 0x23, 0xa4, 0x5b, 0x6a, 0x46, 0x19, 0x2b, 0x37, 0xd7, 0x3e, 0x86, 0x09, 0xb5, 0xbd, 0xa6, 0x8c, 0xd7, 0xcf, 0xbd, 0xcc, 0xaa, 0x49, 0x08, 0x20, 0x80, 0x99, 0x3e, 0x64, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_257 = { .name = "xdh_wei25519_257", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_257_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_257_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_257_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 258 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 258 for XDH, tcId is 259 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_258_peerpubkey[] = { 0xb9, 0xbd, 0x79, 0x36, 0x24, 0xd6, 0xa7, 0xe8, 0x08, 0x48, 0x61, 0x10, 0x05, 0x88, 0x53, 0xed, 0xb2, 0x5e, 0x13, 0x6b, 0xd4, 0xd6, 0xa7, 0x95, 0xd6, 0xd2, 0xef, 0x53, 0xb2, 0x5e, 0x38, 0x04, }; static const unsigned char xdh_wei25519_258_privkey[] = { 0x90, 0x6a, 0x9b, 0xfc, 0xfd, 0x71, 0x01, 0x4d, 0x18, 0x96, 0x76, 0x80, 0xd4, 0x50, 0x9e, 0xaa, 0x41, 0xc6, 0x66, 0x42, 0x4a, 0xf9, 0x8b, 0xf9, 0xff, 0x7f, 0xf4, 0x9e, 0xb1, 0xba, 0xba, 0x41, }; static const unsigned char xdh_wei25519_258_sharedsecret[] = { 0x7c, 0x61, 0x48, 0x13, 0x4c, 0x9e, 0x8b, 0x2b, 0xa5, 0xda, 0xec, 0xa4, 0x1e, 0x6a, 0x1f, 0x3a, 0x82, 0xd8, 0xf7, 0x5d, 0x0b, 0x29, 0x2b, 0x23, 0xc4, 0x0f, 0xe7, 0xf5, 0xce, 0x0a, 0x2b, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_258 = { .name = "xdh_wei25519_258", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_258_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_258_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_258_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 259 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 259 for XDH, tcId is 260 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_259_peerpubkey[] = { 0xe3, 0xf4, 0x44, 0xe2, 0x08, 0xda, 0x90, 0x43, 0xf3, 0xf7, 0x4c, 0x20, 0xe2, 0x8d, 0x7f, 0x40, 0x4b, 0xb6, 0x87, 0xa3, 0x46, 0x70, 0x9a, 0xbc, 0xd5, 0x55, 0x15, 0x6f, 0x88, 0x60, 0x78, 0x20, }; static const unsigned char xdh_wei25519_259_privkey[] = { 0x28, 0x39, 0x2b, 0x1b, 0x03, 0x5a, 0x84, 0x65, 0xaa, 0x22, 0xaa, 0xbb, 0x57, 0x10, 0x61, 0xc6, 0xef, 0xfe, 0xed, 0x40, 0xcc, 0x25, 0x30, 0xb6, 0x28, 0xe4, 0xfd, 0x40, 0x39, 0x5a, 0xe0, 0x4a, }; static const unsigned char xdh_wei25519_259_sharedsecret[] = { 0xea, 0x5e, 0x77, 0x2b, 0xac, 0x46, 0x93, 0xce, 0x69, 0xea, 0x3a, 0xc7, 0x61, 0x01, 0x1f, 0xa7, 0x67, 0x40, 0x37, 0x65, 0x3a, 0x43, 0x3c, 0x7f, 0x05, 0x45, 0x6e, 0x72, 0x91, 0xcd, 0x3c, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_259 = { .name = "xdh_wei25519_259", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_259_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_259_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_259_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 260 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 260 for XDH, tcId is 261 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_260_peerpubkey[] = { 0x87, 0xb4, 0x3f, 0x90, 0xf7, 0x6d, 0x12, 0xfb, 0x3a, 0x46, 0x9f, 0xa8, 0x68, 0x7c, 0x27, 0xe3, 0x69, 0xd4, 0xa8, 0x2f, 0x95, 0xcf, 0x95, 0xe8, 0xdc, 0x39, 0x70, 0xde, 0x8f, 0x86, 0xd9, 0x2b, }; static const unsigned char xdh_wei25519_260_privkey[] = { 0x78, 0xcb, 0xb3, 0x52, 0x04, 0xcc, 0x88, 0x67, 0x6c, 0x14, 0xe0, 0xff, 0x18, 0x17, 0x13, 0x92, 0xe9, 0x98, 0x41, 0x1b, 0x23, 0xd9, 0x05, 0xd4, 0xc4, 0xdc, 0xea, 0xb7, 0x05, 0x11, 0xf4, 0x42, }; static const unsigned char xdh_wei25519_260_sharedsecret[] = { 0x81, 0xc3, 0x95, 0xae, 0xd5, 0xcc, 0x5f, 0x5e, 0x2a, 0x20, 0x6a, 0x8a, 0x4c, 0xac, 0xec, 0xd5, 0x01, 0xdf, 0x5b, 0x81, 0xe4, 0x94, 0x33, 0x83, 0x5a, 0xd8, 0xa3, 0x77, 0x9e, 0xdf, 0xfb, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_260 = { .name = "xdh_wei25519_260", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_260_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_260_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_260_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 261 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 261 for XDH, tcId is 262 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_261_peerpubkey[] = { 0x86, 0x44, 0x1e, 0xa0, 0x6c, 0x5c, 0xd2, 0xa3, 0x4c, 0x6b, 0x51, 0x26, 0x1e, 0x93, 0xa2, 0xf3, 0x0e, 0xa7, 0xdb, 0x0f, 0x74, 0xe1, 0x4c, 0x42, 0xf0, 0xfc, 0x44, 0x3c, 0x67, 0x35, 0x97, 0x3c, }; static const unsigned char xdh_wei25519_261_privkey[] = { 0xa8, 0x22, 0x5b, 0x49, 0xef, 0x7b, 0x73, 0x30, 0xe3, 0xde, 0x78, 0x7c, 0xbc, 0x40, 0x47, 0x96, 0x44, 0xdb, 0x7a, 0xb1, 0x26, 0x37, 0x02, 0x95, 0xc9, 0x41, 0x89, 0x67, 0x34, 0x30, 0xd7, 0x45, }; static const unsigned char xdh_wei25519_261_sharedsecret[] = { 0x51, 0x3e, 0xba, 0x58, 0x70, 0xdc, 0x51, 0x87, 0xe2, 0x55, 0x2f, 0xe3, 0xba, 0x82, 0x92, 0xb5, 0x16, 0xd2, 0xaf, 0x9e, 0xcb, 0x9a, 0x9b, 0xdc, 0x51, 0xea, 0xc2, 0xce, 0x2d, 0xe4, 0x01, 0x12, }; static const wycheproof_xdh_test xdh_wei25519_261 = { .name = "xdh_wei25519_261", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_261_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_261_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_261_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 262 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 262 for XDH, tcId is 263 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_262_peerpubkey[] = { 0x46, 0x24, 0xaa, 0x4a, 0xe9, 0xd1, 0x27, 0x25, 0xbf, 0x92, 0xb8, 0x5f, 0x93, 0xe3, 0xe8, 0xce, 0xa1, 0x6b, 0x7b, 0xd8, 0x3f, 0xda, 0x0e, 0xb1, 0x8f, 0xab, 0x2d, 0xbe, 0x0e, 0x8b, 0xf7, 0x42, }; static const unsigned char xdh_wei25519_262_privkey[] = { 0x08, 0x41, 0xe1, 0xa5, 0xc7, 0x42, 0x0b, 0x94, 0xb6, 0xcc, 0x69, 0x91, 0x31, 0x6e, 0xbd, 0xd6, 0x08, 0x62, 0x63, 0x39, 0xc0, 0x9d, 0x0f, 0x67, 0xb2, 0x40, 0x88, 0x58, 0x8b, 0x9d, 0x0d, 0x49, }; static const unsigned char xdh_wei25519_262_sharedsecret[] = { 0x98, 0x3b, 0x7e, 0x23, 0x6f, 0xfa, 0xdd, 0xb4, 0xb7, 0x59, 0xb7, 0x35, 0x3f, 0xe8, 0x78, 0x46, 0xf5, 0x9f, 0xb6, 0xf2, 0x8a, 0x3e, 0xd6, 0x5c, 0x25, 0x61, 0x76, 0xb6, 0x60, 0x9b, 0x7c, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_262 = { .name = "xdh_wei25519_262", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_262_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_262_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_262_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 263 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 263 for XDH, tcId is 264 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_263_peerpubkey[] = { 0xa6, 0x25, 0xa5, 0xb7, 0xa0, 0x4c, 0xea, 0x46, 0x2d, 0x12, 0x3b, 0x48, 0x5c, 0x39, 0xea, 0x44, 0xa8, 0x07, 0x9a, 0xa2, 0x23, 0xc5, 0x9e, 0x9c, 0xa9, 0x7a, 0xbc, 0xd3, 0x0b, 0x50, 0x0e, 0x4b, }; static const unsigned char xdh_wei25519_263_privkey[] = { 0x08, 0xec, 0xf7, 0x6e, 0x31, 0xa2, 0x30, 0x39, 0xea, 0x8a, 0x15, 0xee, 0x47, 0x4b, 0x62, 0x51, 0xa9, 0xd7, 0x25, 0xbf, 0xf1, 0xa5, 0x75, 0x1e, 0xb5, 0xec, 0xde, 0x9d, 0x7d, 0x4e, 0x2f, 0x49, }; static const unsigned char xdh_wei25519_263_sharedsecret[] = { 0xc9, 0x41, 0x36, 0x9b, 0x08, 0x5c, 0x74, 0x65, 0xd5, 0x0d, 0x23, 0xce, 0xaf, 0x67, 0x17, 0xab, 0x06, 0xe2, 0x46, 0x38, 0xf2, 0x17, 0xa7, 0xb8, 0x05, 0x5c, 0xe8, 0xeb, 0xd3, 0xca, 0x12, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_263 = { .name = "xdh_wei25519_263", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_263_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_263_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_263_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 264 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 264 for XDH, tcId is 265 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_264_peerpubkey[] = { 0x8a, 0x5f, 0x20, 0x63, 0xf2, 0x59, 0xf3, 0x31, 0x7a, 0xe3, 0xe0, 0xb4, 0x59, 0xf8, 0x2c, 0x46, 0x77, 0x66, 0x6e, 0x49, 0xa2, 0xeb, 0x9b, 0xf0, 0x36, 0x9a, 0xee, 0x66, 0x36, 0x31, 0x26, 0x5b, }; static const unsigned char xdh_wei25519_264_privkey[] = { 0x60, 0x38, 0xfb, 0x0a, 0x83, 0x0d, 0x10, 0x01, 0xca, 0x8e, 0xa7, 0x4a, 0x61, 0x3e, 0xa9, 0x8f, 0x6a, 0xb8, 0x51, 0x26, 0x44, 0xe5, 0x5e, 0x8d, 0x45, 0xa2, 0x90, 0x71, 0xbd, 0x4b, 0xef, 0x45, }; static const unsigned char xdh_wei25519_264_sharedsecret[] = { 0xa3, 0xf7, 0xe1, 0x69, 0xdb, 0x44, 0xd0, 0xd1, 0x79, 0xc2, 0x42, 0xe6, 0x63, 0x47, 0x36, 0x4a, 0xb9, 0x27, 0x44, 0xdc, 0x6a, 0xd8, 0x0e, 0x47, 0x75, 0xae, 0xf7, 0xf4, 0xff, 0x9d, 0x5f, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_264 = { .name = "xdh_wei25519_264", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_264_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_264_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_264_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 265 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 265 for XDH, tcId is 266 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_265_peerpubkey[] = { 0x54, 0xcf, 0xb6, 0xad, 0x0d, 0x03, 0xe3, 0x11, 0x5a, 0xca, 0xfe, 0xe1, 0x26, 0x06, 0x39, 0x7f, 0x2b, 0xb4, 0x6a, 0x8c, 0x5f, 0x32, 0x6a, 0x25, 0x5c, 0x49, 0x41, 0x18, 0xae, 0xad, 0x3b, 0x62, }; static const unsigned char xdh_wei25519_265_privkey[] = { 0xc0, 0x4c, 0xf1, 0x29, 0xf0, 0xb3, 0x33, 0x32, 0xe2, 0x65, 0x4f, 0x8e, 0x45, 0x22, 0x5c, 0x04, 0x2d, 0x7f, 0xa6, 0xcb, 0xc7, 0x93, 0xc8, 0x8b, 0xd4, 0xc7, 0x31, 0x98, 0x52, 0x89, 0xb0, 0x45, }; static const unsigned char xdh_wei25519_265_sharedsecret[] = { 0x40, 0x1a, 0xab, 0xfb, 0xb7, 0x3f, 0xe6, 0x69, 0x4c, 0x44, 0x6e, 0xcf, 0xff, 0xb4, 0x30, 0x06, 0x42, 0x7a, 0x9d, 0x47, 0x56, 0xe0, 0x49, 0xa1, 0xff, 0xc7, 0x95, 0x78, 0xd6, 0x2f, 0x16, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_265 = { .name = "xdh_wei25519_265", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_265_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_265_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_265_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 266 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 266 for XDH, tcId is 267 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_266_peerpubkey[] = { 0x0e, 0xe3, 0xbe, 0xe8, 0xcb, 0x3a, 0x0a, 0xfc, 0xec, 0x22, 0xfa, 0x22, 0x33, 0x70, 0x6e, 0x8e, 0xc2, 0x9c, 0xcf, 0x1a, 0xf2, 0x12, 0xc0, 0xa6, 0x74, 0x74, 0x5e, 0xbb, 0xa3, 0x4f, 0x9d, 0x08, }; static const unsigned char xdh_wei25519_266_privkey[] = { 0x38, 0x06, 0xb0, 0x36, 0xc9, 0x2d, 0x7b, 0xc0, 0x77, 0x19, 0x98, 0xd2, 0x4d, 0xbd, 0xa2, 0x94, 0x5b, 0x60, 0x1d, 0x42, 0x44, 0x9b, 0xd3, 0xec, 0x4b, 0xbf, 0x37, 0x57, 0xd0, 0x1b, 0x89, 0x4d, }; static const unsigned char xdh_wei25519_266_sharedsecret[] = { 0x20, 0x32, 0x2d, 0xd0, 0x24, 0xfb, 0x5a, 0x40, 0xf3, 0x27, 0xcf, 0x7c, 0x00, 0xda, 0x20, 0x37, 0x34, 0xc2, 0xa2, 0x79, 0xb9, 0x66, 0x6a, 0x9f, 0xf7, 0xd8, 0x52, 0x7c, 0x92, 0x7b, 0x67, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_266 = { .name = "xdh_wei25519_266", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_266_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_266_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_266_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 267 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 267 for XDH, tcId is 268 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_267_peerpubkey[] = { 0x79, 0x7e, 0xc7, 0x51, 0x2a, 0xfb, 0xf0, 0xad, 0x91, 0x8d, 0x0e, 0x49, 0x47, 0x90, 0x3b, 0xe9, 0x52, 0x34, 0xf3, 0xab, 0xf3, 0x67, 0x50, 0xa8, 0xf8, 0x54, 0x88, 0x8d, 0x11, 0x7b, 0x77, 0x4e, }; static const unsigned char xdh_wei25519_267_privkey[] = { 0x38, 0x0d, 0x90, 0x56, 0xb5, 0xa2, 0xf4, 0xb3, 0xdf, 0xfb, 0x30, 0xe6, 0xce, 0xb7, 0x22, 0xac, 0x46, 0x84, 0x24, 0x5f, 0x1b, 0xef, 0xaf, 0xb5, 0x66, 0x1b, 0xc8, 0xc7, 0xa9, 0xad, 0x4c, 0x43, }; static const unsigned char xdh_wei25519_267_sharedsecret[] = { 0x46, 0x15, 0x2d, 0x59, 0xc2, 0xd2, 0xf3, 0xec, 0xf0, 0x3c, 0xe6, 0x52, 0xd2, 0xb6, 0x97, 0x8d, 0x40, 0x1d, 0x5e, 0xde, 0x45, 0x70, 0xa6, 0xc9, 0x11, 0x77, 0x1b, 0xdc, 0xfb, 0x37, 0xcd, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_267 = { .name = "xdh_wei25519_267", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_267_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_267_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_267_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 268 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 268 for XDH, tcId is 269 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_268_peerpubkey[] = { 0xd5, 0x70, 0xc7, 0x81, 0x0f, 0x69, 0xe5, 0x02, 0xb3, 0x55, 0x25, 0x3a, 0xfa, 0x7c, 0x66, 0x7b, 0xfa, 0x50, 0x60, 0xd9, 0x0d, 0xc8, 0x6e, 0x35, 0x8a, 0xb4, 0x45, 0xf6, 0x38, 0x1e, 0x41, 0x5d, }; static const unsigned char xdh_wei25519_268_privkey[] = { 0x38, 0x49, 0x29, 0xa4, 0x2c, 0x8d, 0x8d, 0xf1, 0x46, 0xdb, 0x95, 0x08, 0xe2, 0xf2, 0x1a, 0x4e, 0x8c, 0xd4, 0xd9, 0x9c, 0x1b, 0x13, 0x38, 0xdf, 0x17, 0xa4, 0x57, 0xe8, 0x8a, 0xfb, 0x00, 0x43, }; static const unsigned char xdh_wei25519_268_sharedsecret[] = { 0x37, 0x56, 0x7f, 0x7e, 0xc0, 0x44, 0x9c, 0x7b, 0x82, 0x3c, 0xf7, 0xb0, 0xe2, 0x19, 0xe9, 0xdd, 0x88, 0x0e, 0x56, 0xa1, 0x46, 0x4d, 0x04, 0x17, 0xa9, 0xe6, 0x7e, 0xff, 0x42, 0x33, 0x28, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_268 = { .name = "xdh_wei25519_268", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_268_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_268_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_268_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 269 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 269 for XDH, tcId is 270 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_269_peerpubkey[] = { 0x2c, 0x61, 0x1c, 0xb9, 0x44, 0x48, 0xf1, 0xc7, 0x82, 0x24, 0x25, 0xa4, 0xcf, 0x53, 0x56, 0x23, 0x6b, 0x90, 0xa5, 0x55, 0xb1, 0xed, 0x47, 0x47, 0x82, 0x0b, 0xa7, 0xf7, 0x39, 0xc8, 0xf5, 0x7d, }; static const unsigned char xdh_wei25519_269_privkey[] = { 0x48, 0xa9, 0x86, 0x82, 0x5b, 0x26, 0x80, 0xe2, 0xf2, 0x54, 0x7b, 0xa7, 0x5a, 0x95, 0x99, 0xb0, 0x4e, 0xd5, 0x7f, 0x8e, 0xd1, 0x8d, 0x98, 0xe7, 0x09, 0x9c, 0x54, 0x4e, 0xfb, 0xdf, 0x28, 0x4b, }; static const unsigned char xdh_wei25519_269_sharedsecret[] = { 0xfb, 0xf6, 0x58, 0x7e, 0xc1, 0x81, 0x11, 0x6c, 0xf1, 0xac, 0xe7, 0xdc, 0xd5, 0x48, 0x02, 0x9d, 0x69, 0xc1, 0x30, 0xe5, 0x0f, 0xcf, 0x6a, 0xd5, 0xdf, 0xcd, 0x25, 0xc2, 0x3e, 0xe9, 0xf9, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_269 = { .name = "xdh_wei25519_269", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_269_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_269_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_269_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 270 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 270 for XDH, tcId is 271 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_270_peerpubkey[] = { 0xe5, 0x59, 0xc4, 0x17, 0xda, 0x7f, 0xd5, 0x85, 0x13, 0x52, 0xf5, 0x08, 0xb9, 0x00, 0x31, 0xd4, 0x9b, 0x5d, 0x2d, 0x0a, 0xac, 0x88, 0xa9, 0xc8, 0xb5, 0xfb, 0x6e, 0x80, 0x16, 0x5a, 0xc1, 0x0b, }; static const unsigned char xdh_wei25519_270_privkey[] = { 0x98, 0x45, 0x2a, 0xd7, 0xdf, 0x4e, 0x26, 0xbc, 0x4b, 0x3d, 0x40, 0x3f, 0x9e, 0xbf, 0x72, 0xbb, 0x2d, 0x7b, 0x6b, 0x7d, 0x58, 0x60, 0xdb, 0xf6, 0xfb, 0x9a, 0x4f, 0x78, 0xdc, 0x02, 0x70, 0x4a, }; static const unsigned char xdh_wei25519_270_sharedsecret[] = { 0xc7, 0xc6, 0xf6, 0xd7, 0xce, 0x1e, 0x4f, 0x54, 0xc7, 0x27, 0xe5, 0x90, 0x06, 0x86, 0xc3, 0x4e, 0x6a, 0x69, 0x53, 0x25, 0x4b, 0xd4, 0x70, 0xbb, 0xbf, 0x0c, 0x7c, 0x18, 0xbb, 0xdd, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_270 = { .name = "xdh_wei25519_270", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_270_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_270_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_270_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 271 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 271 for XDH, tcId is 272 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_271_peerpubkey[] = { 0x74, 0x6d, 0x97, 0xe7, 0x77, 0x42, 0x92, 0xa3, 0xd7, 0x03, 0xf6, 0x04, 0xe7, 0x9d, 0x87, 0x64, 0xc9, 0x9a, 0x6a, 0x2f, 0xe2, 0x80, 0xea, 0xa9, 0x81, 0x11, 0x15, 0xf5, 0xe0, 0x38, 0xf2, 0x1a, }; static const unsigned char xdh_wei25519_271_privkey[] = { 0xa8, 0xdb, 0xc9, 0xbe, 0x50, 0x34, 0xed, 0x7f, 0xe7, 0xf4, 0x69, 0x26, 0x4f, 0x21, 0x35, 0xe9, 0xc6, 0x7c, 0xd3, 0x0f, 0x52, 0x55, 0x70, 0xd2, 0xd8, 0x41, 0xe4, 0xbd, 0xea, 0xc5, 0x23, 0x49, }; static const unsigned char xdh_wei25519_271_sharedsecret[] = { 0xcf, 0x7d, 0x2a, 0x66, 0xea, 0x4d, 0xfe, 0xd9, 0x44, 0x69, 0xb2, 0xd3, 0x43, 0x53, 0x3f, 0xf3, 0x02, 0xa5, 0x76, 0xf8, 0x40, 0x2e, 0xd2, 0x18, 0x79, 0x04, 0x43, 0x70, 0x38, 0xe5, 0x46, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_271 = { .name = "xdh_wei25519_271", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_271_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_271_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_271_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 272 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 272 for XDH, tcId is 273 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_272_peerpubkey[] = { 0x1f, 0x35, 0x4a, 0xa8, 0xff, 0xc4, 0xea, 0xe2, 0xb4, 0x0d, 0xad, 0x2e, 0xbf, 0x83, 0x0d, 0xb3, 0xfe, 0xb0, 0x7e, 0x2a, 0x1a, 0x2d, 0xa3, 0x9e, 0x55, 0xdf, 0x87, 0xc8, 0xc6, 0x13, 0xde, 0x1d, }; static const unsigned char xdh_wei25519_272_privkey[] = { 0xf8, 0xd2, 0x68, 0x78, 0xdf, 0xf2, 0x5c, 0xed, 0x02, 0xd3, 0xb2, 0x7c, 0xe7, 0x40, 0x02, 0x69, 0x5b, 0xb8, 0x79, 0xb3, 0xc4, 0x32, 0x89, 0x30, 0x93, 0x43, 0x15, 0xec, 0xae, 0x84, 0x2b, 0x47, }; static const unsigned char xdh_wei25519_272_sharedsecret[] = { 0xb2, 0x04, 0xd3, 0xbb, 0xcb, 0xdc, 0x62, 0x4f, 0x9f, 0x1a, 0x74, 0x3f, 0xa3, 0xda, 0xa8, 0xf4, 0xc8, 0x78, 0x5e, 0xd0, 0x88, 0xd3, 0x7d, 0x08, 0xcd, 0x13, 0xc6, 0x01, 0x17, 0x0a, 0x46, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_272 = { .name = "xdh_wei25519_272", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_272_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_272_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_272_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 273 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 273 for XDH, tcId is 274 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_273_peerpubkey[] = { 0x9c, 0x3f, 0x00, 0x23, 0xe1, 0xa4, 0x83, 0x25, 0x86, 0xaf, 0x24, 0x83, 0xbb, 0xec, 0x64, 0xce, 0x9f, 0x06, 0xf3, 0xea, 0x80, 0x6d, 0x40, 0x19, 0xa5, 0xe4, 0xab, 0xb1, 0xb5, 0x62, 0x70, 0x29, }; static const unsigned char xdh_wei25519_273_privkey[] = { 0xd0, 0xf5, 0xe9, 0xc4, 0x3c, 0x95, 0xb1, 0xff, 0xc3, 0x6f, 0x83, 0x2b, 0x94, 0x36, 0x01, 0xd5, 0xe1, 0x76, 0x47, 0xf7, 0xd7, 0x8e, 0x2e, 0x77, 0x10, 0xac, 0xe6, 0x3f, 0xf2, 0x74, 0xd4, 0x47, }; static const unsigned char xdh_wei25519_273_sharedsecret[] = { 0xb9, 0xf2, 0x14, 0x65, 0x61, 0x5f, 0x39, 0xdd, 0xdc, 0xc3, 0x75, 0x20, 0xce, 0x9b, 0x95, 0x6f, 0x7d, 0xe9, 0x88, 0x3a, 0xc9, 0x3a, 0x87, 0x0d, 0x74, 0xe3, 0x88, 0xb8, 0xe1, 0x77, 0x54, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_273 = { .name = "xdh_wei25519_273", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_273_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_273_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_273_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 274 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 274 for XDH, tcId is 275 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_274_peerpubkey[] = { 0xd0, 0x56, 0x56, 0xaa, 0x01, 0x4d, 0x47, 0x60, 0x22, 0xdf, 0xc5, 0x5e, 0x8d, 0x3b, 0x48, 0x84, 0xed, 0x0b, 0xdf, 0x85, 0x20, 0x9b, 0xe8, 0xb5, 0x53, 0x51, 0x39, 0x4d, 0x52, 0xbe, 0x68, 0x4b, }; static const unsigned char xdh_wei25519_274_privkey[] = { 0x70, 0x06, 0x79, 0xe8, 0xc2, 0x4d, 0xf8, 0x28, 0xf2, 0xe5, 0x21, 0x2a, 0x32, 0x63, 0xd5, 0xe9, 0x3e, 0xa6, 0x16, 0x79, 0x98, 0x82, 0x98, 0xba, 0xb3, 0xb4, 0x80, 0xf4, 0x6f, 0x96, 0x1a, 0x48, }; static const unsigned char xdh_wei25519_274_sharedsecret[] = { 0x20, 0xf1, 0xfc, 0x61, 0x38, 0x74, 0x49, 0x5f, 0x20, 0x56, 0x2c, 0x10, 0xb7, 0xa8, 0xbe, 0x47, 0xbf, 0xc1, 0x2c, 0x16, 0x8d, 0x82, 0x9d, 0x63, 0x21, 0xaa, 0x2d, 0xe1, 0x70, 0x60, 0xe4, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_274 = { .name = "xdh_wei25519_274", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_274_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_274_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_274_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 275 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 275 for XDH, tcId is 276 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_275_peerpubkey[] = { 0xc4, 0xa1, 0x9b, 0x86, 0x86, 0xe1, 0x8c, 0x29, 0x35, 0x9a, 0xa5, 0x48, 0x42, 0x7f, 0x06, 0xa3, 0x68, 0xd5, 0x5a, 0x87, 0x37, 0x48, 0x3d, 0x48, 0x93, 0x52, 0x3a, 0xda, 0xc6, 0x79, 0x5a, 0x4c, }; static const unsigned char xdh_wei25519_275_privkey[] = { 0xd0, 0xd0, 0x77, 0xc9, 0x46, 0x1f, 0x74, 0x7e, 0x56, 0x60, 0xbe, 0x85, 0xcc, 0x62, 0x04, 0x28, 0xb4, 0xce, 0xfe, 0x80, 0x5d, 0xe0, 0xfd, 0x25, 0x4a, 0xda, 0xa4, 0x65, 0xea, 0x5e, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_275_sharedsecret[] = { 0x65, 0x2b, 0x18, 0xff, 0xd4, 0x1c, 0xfb, 0x7d, 0x1f, 0x0b, 0x6d, 0xc7, 0x9b, 0xaa, 0x3b, 0x2a, 0x39, 0x2e, 0xf1, 0x61, 0x7f, 0x5c, 0xf6, 0x25, 0x9b, 0x5b, 0x4f, 0xf0, 0x65, 0x91, 0x6a, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_275 = { .name = "xdh_wei25519_275", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_275_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_275_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_275_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 276 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 276 for XDH, tcId is 277 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_276_peerpubkey[] = { 0x49, 0x89, 0xde, 0x79, 0x85, 0x3f, 0xf3, 0x5b, 0xe8, 0xc9, 0xf9, 0x2f, 0xc9, 0x46, 0x74, 0xfe, 0xef, 0x38, 0xa0, 0xe6, 0x57, 0x88, 0x47, 0x1c, 0x52, 0x1f, 0x8e, 0x25, 0x9a, 0xdf, 0x01, 0x5d, }; static const unsigned char xdh_wei25519_276_privkey[] = { 0x00, 0x71, 0x1a, 0xc0, 0x8e, 0xf8, 0x8c, 0x3d, 0x43, 0xa3, 0xcb, 0xda, 0x67, 0xb6, 0xfe, 0x5f, 0x34, 0xf5, 0x47, 0x23, 0xdb, 0xe6, 0xd7, 0x25, 0xc8, 0xa3, 0x56, 0x90, 0x70, 0xab, 0x9a, 0x4e, }; static const unsigned char xdh_wei25519_276_sharedsecret[] = { 0x67, 0x98, 0x25, 0xc2, 0x59, 0x39, 0x2d, 0x86, 0xf8, 0xed, 0xb1, 0x53, 0x28, 0xd4, 0xfa, 0xf5, 0x23, 0x00, 0x77, 0x9d, 0x97, 0x9a, 0x50, 0x3a, 0x76, 0xe2, 0x7b, 0xe3, 0xd7, 0xa8, 0x5e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_276 = { .name = "xdh_wei25519_276", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_276_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_276_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_276_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 277 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 277 for XDH, tcId is 278 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_277_peerpubkey[] = { 0xa9, 0x81, 0x48, 0x3c, 0xb0, 0xea, 0x43, 0x85, 0xff, 0xbb, 0x55, 0x28, 0x26, 0xc3, 0xdd, 0x11, 0x0d, 0x4a, 0xe8, 0x9f, 0xf5, 0x2e, 0xd0, 0xcd, 0x60, 0x18, 0xf9, 0x9d, 0x33, 0x87, 0x98, 0x7b, }; static const unsigned char xdh_wei25519_277_privkey[] = { 0x98, 0x9a, 0x75, 0xb4, 0x04, 0x51, 0x13, 0x9e, 0xc3, 0x6c, 0xa6, 0xaa, 0x04, 0x37, 0x65, 0xc6, 0x1a, 0x18, 0xbe, 0x32, 0x3a, 0x59, 0x87, 0xfc, 0xb0, 0x25, 0xc2, 0xda, 0xd8, 0xd4, 0xbd, 0x40, }; static const unsigned char xdh_wei25519_277_sharedsecret[] = { 0x9c, 0xad, 0xc1, 0x4a, 0xc1, 0x53, 0xfa, 0x38, 0x3e, 0xf6, 0x6d, 0x18, 0x33, 0xf5, 0x89, 0x10, 0x0d, 0xff, 0x90, 0x52, 0x32, 0x72, 0xe3, 0x2b, 0x06, 0xe2, 0xc6, 0xf1, 0xf4, 0x42, 0x40, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_277 = { .name = "xdh_wei25519_277", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_277_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_277_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_277_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 278 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 278 for XDH, tcId is 279 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_278_peerpubkey[] = { 0x1d, 0xf3, 0xdf, 0xda, 0xb7, 0x4f, 0xf3, 0x81, 0x77, 0xda, 0xc2, 0x94, 0xb2, 0xda, 0x2f, 0x49, 0xa3, 0x48, 0xbc, 0x3b, 0x3b, 0xc6, 0xce, 0x93, 0x12, 0xbe, 0xa5, 0xef, 0x3e, 0xcd, 0xd3, 0x0b, }; static const unsigned char xdh_wei25519_278_privkey[] = { 0x90, 0xc3, 0xcf, 0xed, 0xd9, 0x19, 0xa2, 0xcc, 0xd5, 0x1f, 0xb4, 0x55, 0x64, 0x9e, 0x3a, 0xd2, 0xda, 0x1e, 0xf0, 0xff, 0x61, 0x9b, 0x59, 0xa7, 0xf9, 0xc5, 0x5a, 0x68, 0xa8, 0x21, 0x96, 0x45, }; static const unsigned char xdh_wei25519_278_sharedsecret[] = { 0xbc, 0xc9, 0x5f, 0xb4, 0x89, 0x0e, 0xd3, 0x11, 0xf3, 0xfb, 0x4f, 0x44, 0xc2, 0xb6, 0x08, 0x66, 0xcd, 0xdd, 0xec, 0x97, 0xdb, 0x82, 0x0a, 0x7f, 0x79, 0xf4, 0x75, 0x33, 0x7e, 0x16, 0x28, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_278 = { .name = "xdh_wei25519_278", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_278_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_278_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_278_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 279 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 279 for XDH, tcId is 280 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_279_peerpubkey[] = { 0xfc, 0x6b, 0x71, 0x8b, 0xa8, 0xb4, 0x7d, 0x24, 0xb1, 0xcf, 0xd6, 0xb5, 0xd0, 0xdd, 0x8b, 0x20, 0xfd, 0x92, 0x09, 0x60, 0xfa, 0xbc, 0x30, 0x2d, 0xbe, 0x4f, 0x93, 0xbd, 0x2a, 0x06, 0xe9, 0x33, }; static const unsigned char xdh_wei25519_279_privkey[] = { 0xe8, 0xfe, 0xf5, 0xc9, 0xb6, 0x0f, 0x84, 0x98, 0x4e, 0x88, 0x36, 0xd5, 0x35, 0xac, 0xb3, 0x72, 0x09, 0x6b, 0xa8, 0x15, 0x98, 0x24, 0xa0, 0xb4, 0x9a, 0x17, 0xec, 0xcd, 0xa8, 0x43, 0xbd, 0x41, }; static const unsigned char xdh_wei25519_279_sharedsecret[] = { 0x06, 0xf1, 0xb4, 0x95, 0xb0, 0x4a, 0x00, 0x10, 0x84, 0x5c, 0x9d, 0x39, 0xb1, 0x3b, 0xf2, 0x78, 0x4a, 0xde, 0x86, 0x0d, 0x96, 0x32, 0xc8, 0x84, 0x76, 0x18, 0xc0, 0xb3, 0x42, 0x97, 0xc2, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_279 = { .name = "xdh_wei25519_279", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_279_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_279_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_279_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 280 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 280 for XDH, tcId is 281 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_280_peerpubkey[] = { 0xb2, 0x79, 0xb6, 0xc0, 0x65, 0xf9, 0x5c, 0x70, 0x40, 0xf1, 0x48, 0xbc, 0xb4, 0xa3, 0xd3, 0x10, 0xe3, 0x4b, 0xdb, 0x00, 0x59, 0x31, 0xa8, 0x79, 0xbe, 0x46, 0x95, 0x73, 0xde, 0xed, 0xd0, 0x41, }; static const unsigned char xdh_wei25519_280_privkey[] = { 0xc0, 0xe0, 0x5b, 0xde, 0x77, 0x27, 0xdb, 0x4e, 0x35, 0x2b, 0x5e, 0x7f, 0x03, 0x53, 0x27, 0xb4, 0xd8, 0x6a, 0x42, 0xd5, 0x13, 0xca, 0x11, 0x6e, 0x22, 0xd6, 0x4a, 0x4e, 0xde, 0x56, 0x43, 0x4a, }; static const unsigned char xdh_wei25519_280_sharedsecret[] = { 0xcc, 0xe7, 0xbb, 0x64, 0x4d, 0xf9, 0x45, 0x01, 0x42, 0x1d, 0xb4, 0x9d, 0x15, 0xe8, 0x21, 0xc7, 0xb0, 0xaa, 0xab, 0xec, 0xdf, 0x88, 0x37, 0xab, 0x98, 0x9b, 0x1f, 0x23, 0xba, 0xc0, 0x8f, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_280 = { .name = "xdh_wei25519_280", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_280_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_280_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_280_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 281 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 281 for XDH, tcId is 282 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_281_peerpubkey[] = { 0x98, 0xe2, 0xcd, 0x4c, 0x10, 0x55, 0x4e, 0x41, 0xb0, 0xa3, 0xe4, 0x10, 0x82, 0xc8, 0xb6, 0xb6, 0x1b, 0x55, 0x44, 0x7d, 0x26, 0xc0, 0xaa, 0x97, 0xf9, 0xa0, 0x6b, 0xae, 0xeb, 0x54, 0xb5, 0x5b, }; static const unsigned char xdh_wei25519_281_privkey[] = { 0xd8, 0x73, 0x08, 0xbf, 0x75, 0x35, 0x73, 0xf5, 0x96, 0xac, 0x83, 0x30, 0xb2, 0x04, 0x01, 0x4b, 0x21, 0x52, 0xdb, 0xdf, 0xc9, 0x88, 0x1a, 0x0d, 0x99, 0x75, 0x05, 0x85, 0x82, 0xbd, 0xf6, 0x46, }; static const unsigned char xdh_wei25519_281_sharedsecret[] = { 0x71, 0xfd, 0xd3, 0x40, 0x5c, 0x30, 0x80, 0x57, 0x01, 0xae, 0x4d, 0xfa, 0xd9, 0x8c, 0x49, 0x3a, 0xec, 0xfc, 0xf2, 0xe3, 0xb5, 0x63, 0xe7, 0x06, 0x83, 0x73, 0xc1, 0xb1, 0x91, 0x37, 0xc2, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_281 = { .name = "xdh_wei25519_281", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_281_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_281_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_281_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 282 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 282 for XDH, tcId is 283 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_282_peerpubkey[] = { 0x87, 0x28, 0x97, 0xf1, 0xbd, 0x18, 0x85, 0xda, 0x08, 0xb9, 0xd0, 0x3e, 0x46, 0x81, 0x10, 0x44, 0xfb, 0xb0, 0x41, 0x86, 0xba, 0x30, 0xc8, 0x06, 0xf3, 0x8b, 0x94, 0xeb, 0xdc, 0x27, 0x18, 0x6a, }; static const unsigned char xdh_wei25519_282_privkey[] = { 0xd8, 0x00, 0x59, 0xa8, 0xa3, 0x87, 0xe1, 0x6f, 0x6d, 0xed, 0x6e, 0x7e, 0x98, 0x0e, 0x80, 0x6d, 0x1f, 0x78, 0xb4, 0x70, 0xbb, 0x61, 0x10, 0x3d, 0x0c, 0xa7, 0x06, 0x23, 0xcc, 0xee, 0x8b, 0x4f, }; static const unsigned char xdh_wei25519_282_sharedsecret[] = { 0xbf, 0x28, 0x0a, 0xee, 0xcb, 0x74, 0xab, 0x34, 0xe1, 0x31, 0x0a, 0xa6, 0xfe, 0x8d, 0xc9, 0x72, 0xf9, 0x4d, 0xc4, 0x0c, 0x7f, 0x88, 0xb7, 0x21, 0x37, 0xcc, 0xfe, 0x34, 0xed, 0x34, 0x3c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_282 = { .name = "xdh_wei25519_282", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_282_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_282_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_282_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 283 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 283 for XDH, tcId is 284 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_283_peerpubkey[] = { 0xc0, 0x8f, 0x72, 0x76, 0x0d, 0x9c, 0xb4, 0xa5, 0x42, 0xaa, 0xd6, 0xe2, 0xaf, 0x77, 0x79, 0x20, 0xc4, 0x45, 0x63, 0xbd, 0x90, 0x35, 0x61, 0x68, 0xc3, 0x60, 0x8c, 0x6b, 0x9a, 0xf2, 0xef, 0x0f, }; static const unsigned char xdh_wei25519_283_privkey[] = { 0xb0, 0xa4, 0xfe, 0x63, 0x51, 0x51, 0x69, 0xbd, 0x82, 0x63, 0x9b, 0x51, 0x5f, 0xf7, 0xe5, 0xc4, 0xac, 0x85, 0xbb, 0xa0, 0xa5, 0x3b, 0xba, 0xca, 0x80, 0x47, 0x7e, 0xb3, 0xb4, 0x25, 0x0d, 0x44, }; static const unsigned char xdh_wei25519_283_sharedsecret[] = { 0x72, 0x56, 0x6a, 0x91, 0xcc, 0xd2, 0xbc, 0xf3, 0x8c, 0xf6, 0x39, 0xe4, 0xa5, 0xfc, 0xb2, 0x96, 0xf0, 0xb6, 0x7d, 0xe1, 0x92, 0xc6, 0x09, 0x12, 0x42, 0xa6, 0x2f, 0xae, 0x46, 0x7f, 0xb6, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_283 = { .name = "xdh_wei25519_283", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_283_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_283_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_283_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 284 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 284 for XDH, tcId is 285 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_284_peerpubkey[] = { 0x4f, 0x03, 0x84, 0x9c, 0x24, 0xd5, 0x84, 0x53, 0x4d, 0x74, 0x30, 0x22, 0x20, 0xcf, 0xdc, 0x90, 0xe1, 0xbc, 0x36, 0x0b, 0xb5, 0xe2, 0x97, 0xc0, 0xfd, 0x0f, 0xd5, 0xf8, 0xd7, 0x99, 0xe4, 0x16, }; static const unsigned char xdh_wei25519_284_privkey[] = { 0x98, 0x42, 0x56, 0xb1, 0x2e, 0xf1, 0x54, 0xff, 0x6c, 0x2e, 0x1d, 0x03, 0x08, 0x26, 0x16, 0x4c, 0xba, 0x36, 0x14, 0xe3, 0xdf, 0x76, 0x88, 0xd8, 0x2b, 0x59, 0xe1, 0x62, 0x01, 0xc9, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_284_sharedsecret[] = { 0x24, 0xac, 0xb4, 0xaf, 0xa6, 0x39, 0x19, 0x62, 0x1d, 0xf7, 0x95, 0x20, 0x6c, 0x39, 0x29, 0xb5, 0x99, 0xec, 0x9d, 0x25, 0x36, 0x93, 0x89, 0x5d, 0x51, 0xa0, 0x55, 0x50, 0x72, 0xe8, 0x9a, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_284 = { .name = "xdh_wei25519_284", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_284_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_284_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_284_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 285 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 285 for XDH, tcId is 286 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_285_peerpubkey[] = { 0x49, 0x59, 0x77, 0x1a, 0x93, 0x1e, 0x24, 0x2d, 0x57, 0x13, 0xd5, 0xcb, 0x76, 0xf3, 0x33, 0x10, 0xc6, 0xa2, 0x83, 0xdf, 0x16, 0x64, 0x56, 0x04, 0x28, 0x95, 0x53, 0x80, 0x9c, 0xda, 0x65, 0x18, }; static const unsigned char xdh_wei25519_285_privkey[] = { 0x68, 0x47, 0x14, 0x1d, 0x5d, 0x43, 0x77, 0xaf, 0x96, 0xa2, 0xa6, 0x47, 0xc6, 0x42, 0xee, 0x81, 0x60, 0x0f, 0xe4, 0x8d, 0x34, 0x67, 0xe3, 0xa7, 0x0f, 0x3e, 0xe3, 0x12, 0xbb, 0x62, 0x17, 0x42, }; static const unsigned char xdh_wei25519_285_sharedsecret[] = { 0x5b, 0xa2, 0x11, 0x2a, 0x41, 0xb5, 0xbb, 0x38, 0x1f, 0x20, 0x24, 0x46, 0xfa, 0x9f, 0x23, 0xc5, 0x4d, 0x2d, 0xe1, 0x49, 0xf9, 0xad, 0x23, 0x37, 0x53, 0x41, 0x72, 0x63, 0x84, 0x0e, 0xa4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_285 = { .name = "xdh_wei25519_285", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_285_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_285_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_285_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 286 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 286 for XDH, tcId is 287 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_286_peerpubkey[] = { 0xf6, 0xfe, 0x69, 0x0c, 0xf5, 0x47, 0x04, 0x96, 0x35, 0xbb, 0x3a, 0x77, 0x85, 0x53, 0x7b, 0x43, 0x79, 0xc9, 0xee, 0x06, 0xb4, 0x61, 0x20, 0x49, 0x3b, 0x8b, 0xdb, 0x15, 0x2e, 0x09, 0xc8, 0x1d, }; static const unsigned char xdh_wei25519_286_privkey[] = { 0xe8, 0x5f, 0x11, 0x64, 0xe2, 0xab, 0x6f, 0xaf, 0x62, 0x66, 0x7c, 0x74, 0xb0, 0x3c, 0xe5, 0x29, 0xb4, 0x9a, 0x0e, 0x20, 0x41, 0xb1, 0xac, 0x0f, 0xa2, 0x42, 0xe5, 0x22, 0xd2, 0xb7, 0x69, 0x4c, }; static const unsigned char xdh_wei25519_286_sharedsecret[] = { 0xa8, 0x7c, 0x9f, 0xdf, 0x40, 0xc4, 0x09, 0xb9, 0xed, 0xab, 0x48, 0x1b, 0x2c, 0xc6, 0x96, 0x87, 0xee, 0x1a, 0xb9, 0x2e, 0x34, 0x0c, 0x3d, 0xb0, 0x10, 0x7d, 0x40, 0xb5, 0xde, 0x6e, 0x7a, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_286 = { .name = "xdh_wei25519_286", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_286_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_286_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_286_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 287 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 287 for XDH, tcId is 288 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_287_peerpubkey[] = { 0xb4, 0x68, 0x68, 0x1a, 0x12, 0x75, 0x85, 0x0c, 0x11, 0xd3, 0x7e, 0xc7, 0x36, 0xaf, 0x93, 0x9a, 0x75, 0xa7, 0x09, 0x85, 0x14, 0xe0, 0x4c, 0xfc, 0x1c, 0x6c, 0xa7, 0x82, 0x39, 0xa8, 0x84, 0x26, }; static const unsigned char xdh_wei25519_287_privkey[] = { 0x28, 0x1e, 0x1b, 0xbf, 0xa7, 0x11, 0xde, 0x69, 0x92, 0x1a, 0x64, 0xc5, 0xd2, 0x18, 0x3c, 0x33, 0x8d, 0xb5, 0x50, 0x46, 0x06, 0xce, 0x2b, 0x6b, 0x4c, 0xe1, 0xcd, 0xd5, 0x4b, 0x41, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_287_sharedsecret[] = { 0x3b, 0xe9, 0x87, 0x98, 0xf0, 0x1e, 0x71, 0x63, 0x9f, 0x3c, 0xb8, 0xfd, 0x4a, 0x17, 0xbf, 0x27, 0x3e, 0x10, 0xc6, 0x7f, 0x89, 0x74, 0xdd, 0x98, 0x02, 0xee, 0xd5, 0x9d, 0x84, 0x7d, 0x40, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_287 = { .name = "xdh_wei25519_287", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_287_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_287_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_287_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 288 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 288 for XDH, tcId is 289 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_288_peerpubkey[] = { 0x2d, 0x71, 0xe8, 0x45, 0x70, 0x99, 0xe3, 0xf4, 0x45, 0xf9, 0xe2, 0xa1, 0x4f, 0x18, 0xb0, 0xf5, 0x91, 0x4b, 0xb3, 0x5f, 0x48, 0x2f, 0x9c, 0x06, 0x9b, 0x64, 0xbf, 0x63, 0x71, 0x0d, 0x42, 0x28, }; static const unsigned char xdh_wei25519_288_privkey[] = { 0x20, 0xaa, 0xcf, 0x19, 0x02, 0xb3, 0xcd, 0x60, 0x9d, 0x7e, 0xe1, 0x5c, 0xc9, 0x64, 0x53, 0xcc, 0x22, 0xe2, 0x89, 0x9d, 0x7d, 0x17, 0x85, 0x26, 0x80, 0xf2, 0xa7, 0x28, 0xba, 0xc6, 0xdc, 0x4a, }; static const unsigned char xdh_wei25519_288_sharedsecret[] = { 0x33, 0x8c, 0x99, 0x17, 0xdb, 0xf1, 0x1a, 0x0c, 0xab, 0xe8, 0xad, 0x4a, 0x65, 0x95, 0x92, 0x29, 0xbc, 0x00, 0xf9, 0x9c, 0x21, 0x1e, 0x75, 0x2b, 0x20, 0xb8, 0xb4, 0x9b, 0x87, 0x75, 0x6d, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_288 = { .name = "xdh_wei25519_288", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_288_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_288_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_288_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 289 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 289 for XDH, tcId is 290 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_289_peerpubkey[] = { 0xfa, 0x8f, 0x24, 0xe9, 0x44, 0xde, 0x5d, 0x00, 0x37, 0x46, 0xd4, 0x63, 0x03, 0x50, 0xc0, 0xf4, 0xf6, 0x17, 0x5a, 0x32, 0x69, 0xc1, 0x91, 0x84, 0x82, 0x41, 0x05, 0x39, 0x8f, 0xbd, 0xd3, 0x29, }; static const unsigned char xdh_wei25519_289_privkey[] = { 0x00, 0x9e, 0x8e, 0x9f, 0xa9, 0x93, 0x80, 0x4d, 0xce, 0x94, 0xce, 0xcb, 0x96, 0xb1, 0xde, 0x25, 0x68, 0x24, 0x5a, 0x97, 0x05, 0x9e, 0x4d, 0x7a, 0xe1, 0x16, 0xec, 0xdb, 0x1b, 0xad, 0xd1, 0x41, }; static const unsigned char xdh_wei25519_289_sharedsecret[] = { 0x56, 0xe2, 0xbf, 0xc7, 0xf6, 0xab, 0x7d, 0xa8, 0xfc, 0x73, 0x4a, 0xfc, 0x51, 0x5e, 0x57, 0xd0, 0x79, 0x4d, 0x00, 0x24, 0x34, 0xf9, 0xbc, 0x8e, 0x18, 0xbd, 0x0b, 0x72, 0xc0, 0xdf, 0x3c, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_289 = { .name = "xdh_wei25519_289", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_289_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_289_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_289_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 290 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 290 for XDH, tcId is 291 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_290_peerpubkey[] = { 0xae, 0x4e, 0x37, 0xef, 0x53, 0xc7, 0x9e, 0x25, 0xe8, 0x27, 0x5a, 0x60, 0xf2, 0xfc, 0x1d, 0xfc, 0x27, 0x7e, 0xbc, 0x5d, 0x3b, 0x88, 0x42, 0x8c, 0x64, 0x32, 0xc3, 0xf9, 0x84, 0x94, 0x21, 0x2c, }; static const unsigned char xdh_wei25519_290_privkey[] = { 0xf0, 0x15, 0x74, 0x64, 0x3f, 0x23, 0x1f, 0xfa, 0xc0, 0x55, 0xbd, 0x23, 0x5e, 0xe7, 0x4d, 0xd4, 0x16, 0xb9, 0x4c, 0x8e, 0x55, 0xa2, 0xab, 0x2b, 0x4d, 0x13, 0xa8, 0xb7, 0x88, 0xd9, 0x01, 0x48, }; static const unsigned char xdh_wei25519_290_sharedsecret[] = { 0x17, 0xfa, 0x12, 0x76, 0xd9, 0xfd, 0x50, 0x25, 0x17, 0x27, 0x36, 0x44, 0x9a, 0x1c, 0x0a, 0xe3, 0x35, 0x12, 0xe5, 0x03, 0x70, 0x14, 0xa1, 0x8d, 0xb5, 0x90, 0x3e, 0x47, 0xbb, 0x3b, 0xc9, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_290 = { .name = "xdh_wei25519_290", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_290_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_290_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_290_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 291 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 291 for XDH, tcId is 292 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_291_peerpubkey[] = { 0x95, 0xe5, 0x6a, 0x83, 0x07, 0x92, 0x47, 0x8f, 0x7c, 0x42, 0x50, 0x40, 0x43, 0xa9, 0xca, 0xb8, 0xe2, 0xee, 0xbf, 0xf5, 0xfd, 0x90, 0x98, 0x37, 0x09, 0xe2, 0x9e, 0x03, 0xc0, 0xa4, 0x1b, 0x64, }; static const unsigned char xdh_wei25519_291_privkey[] = { 0x38, 0x00, 0xa4, 0x26, 0x59, 0x95, 0x42, 0x81, 0xca, 0x26, 0x6d, 0x7c, 0xf1, 0xea, 0x9d, 0xb6, 0xd7, 0x98, 0x91, 0xa4, 0x06, 0xa7, 0x0f, 0x9e, 0x84, 0xc3, 0x57, 0x0a, 0x6a, 0x12, 0xd2, 0x4e, }; static const unsigned char xdh_wei25519_291_sharedsecret[] = { 0x16, 0x7a, 0x3b, 0x2f, 0xdc, 0xe9, 0x41, 0x3c, 0x89, 0xee, 0x89, 0x2d, 0xaf, 0x9f, 0x83, 0x9a, 0x2e, 0xea, 0x80, 0xea, 0x80, 0x44, 0x92, 0x40, 0x35, 0xdb, 0x17, 0x24, 0xa5, 0xb0, 0x21, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_291 = { .name = "xdh_wei25519_291", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_291_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_291_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_291_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 292 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 292 for XDH, tcId is 293 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_292_peerpubkey[] = { 0x5f, 0x16, 0xaa, 0x7c, 0xca, 0xbf, 0x4d, 0xa6, 0xb6, 0x86, 0xbd, 0x28, 0xc7, 0x46, 0x0e, 0x10, 0x6b, 0xb1, 0xb9, 0x7a, 0x82, 0x37, 0x92, 0x52, 0x77, 0x65, 0xc2, 0x9a, 0x9a, 0xd8, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_292_privkey[] = { 0x70, 0xa8, 0x26, 0xb1, 0x86, 0x96, 0x22, 0x18, 0xdb, 0xaf, 0xca, 0x11, 0x33, 0x19, 0xda, 0xef, 0xb5, 0xdd, 0xf3, 0xcf, 0x14, 0xe1, 0x5f, 0xe3, 0xfa, 0xad, 0xc4, 0xc0, 0xa2, 0xe4, 0x66, 0x48, }; static const unsigned char xdh_wei25519_292_sharedsecret[] = { 0x30, 0xa4, 0xba, 0x79, 0x3f, 0x2d, 0xff, 0xe1, 0x70, 0x0c, 0x61, 0x42, 0x8b, 0x4d, 0x84, 0xb5, 0xfc, 0xd0, 0xaa, 0x99, 0xa2, 0x3b, 0x90, 0x3f, 0x84, 0xa4, 0x8e, 0xca, 0x5c, 0xc9, 0xfb, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_292 = { .name = "xdh_wei25519_292", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_292_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_292_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_292_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 293 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 293 for XDH, tcId is 294 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_293_peerpubkey[] = { 0x47, 0xfb, 0x78, 0x11, 0x18, 0x05, 0xa1, 0x19, 0x82, 0xa3, 0xd6, 0xc5, 0xd8, 0x3e, 0x8e, 0x18, 0x9e, 0x7f, 0xcc, 0x46, 0x2c, 0x9a, 0xbf, 0x80, 0x5d, 0x36, 0x25, 0xbe, 0x7a, 0x6e, 0xac, 0x11, }; static const unsigned char xdh_wei25519_293_privkey[] = { 0xa8, 0x5a, 0x5e, 0xda, 0x0a, 0x26, 0x95, 0x00, 0xb3, 0xab, 0x0b, 0x58, 0x49, 0x5f, 0xc2, 0x54, 0xc2, 0x69, 0x10, 0x28, 0xac, 0x53, 0x34, 0x94, 0xb5, 0xf8, 0x6d, 0x44, 0xe9, 0xdc, 0x65, 0x4c, }; static const unsigned char xdh_wei25519_293_sharedsecret[] = { 0x2b, 0xf9, 0xab, 0x75, 0x0b, 0xd5, 0x8f, 0xf6, 0xf8, 0x77, 0xb7, 0x83, 0xed, 0xa4, 0x5a, 0x71, 0xa6, 0x5c, 0xc9, 0xb7, 0xc0, 0x37, 0xfc, 0xfe, 0xf4, 0xcb, 0x5f, 0x4c, 0x88, 0x42, 0xf5, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_293 = { .name = "xdh_wei25519_293", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_293_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_293_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_293_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 294 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 294 for XDH, tcId is 295 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_294_peerpubkey[] = { 0x03, 0xb8, 0xca, 0x5e, 0xfd, 0x17, 0x77, 0xd6, 0xd6, 0x25, 0xa9, 0x45, 0xdb, 0x52, 0xb8, 0x1f, 0x11, 0x21, 0x4d, 0xaf, 0x01, 0x5d, 0x09, 0xfd, 0xc9, 0xdf, 0x7d, 0x47, 0xb9, 0x85, 0x0e, 0x31, }; static const unsigned char xdh_wei25519_294_privkey[] = { 0x18, 0x3f, 0x28, 0xec, 0x86, 0x76, 0x24, 0xef, 0x5e, 0xca, 0x48, 0x27, 0xed, 0x07, 0x14, 0xa5, 0x52, 0x5e, 0xf2, 0x1d, 0x5e, 0x35, 0x03, 0x8b, 0x24, 0xd3, 0x07, 0xa3, 0x39, 0x1a, 0x28, 0x46, }; static const unsigned char xdh_wei25519_294_sharedsecret[] = { 0x35, 0xe9, 0x28, 0x92, 0x34, 0xbd, 0x5e, 0x53, 0x1d, 0xa6, 0x5d, 0x16, 0x1a, 0x06, 0x5a, 0x14, 0xf7, 0x85, 0x07, 0x60, 0x88, 0xd7, 0x41, 0xc9, 0xa2, 0xd8, 0x86, 0xef, 0xd7, 0xd1, 0x79, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_294 = { .name = "xdh_wei25519_294", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_294_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_294_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_294_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 295 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 295 for XDH, tcId is 296 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_295_peerpubkey[] = { 0x4e, 0xca, 0x5f, 0x87, 0x31, 0xb0, 0xfa, 0x0c, 0x10, 0x6a, 0xcf, 0x57, 0x8b, 0x83, 0xa3, 0x50, 0xfa, 0x81, 0x73, 0xa2, 0x90, 0xf1, 0xeb, 0xa8, 0x03, 0x95, 0x6d, 0xe3, 0x4e, 0xeb, 0x76, 0x71, }; static const unsigned char xdh_wei25519_295_privkey[] = { 0x88, 0x8c, 0x64, 0x44, 0xff, 0x5e, 0xb4, 0x82, 0xb2, 0xb1, 0x0b, 0xd4, 0xe8, 0xa0, 0x1b, 0xdc, 0xcb, 0x65, 0xf3, 0x29, 0x34, 0xd8, 0x02, 0x61, 0x06, 0xf1, 0x6a, 0x91, 0x34, 0x9f, 0x48, 0x4c, }; static const unsigned char xdh_wei25519_295_sharedsecret[] = { 0x83, 0x3a, 0xfb, 0x86, 0x70, 0x54, 0xb8, 0xb9, 0xac, 0x70, 0xd6, 0x01, 0x3c, 0x16, 0x3e, 0x8b, 0x76, 0x76, 0xfd, 0x45, 0xae, 0x49, 0xa1, 0x32, 0x5f, 0x3a, 0xcb, 0x75, 0x97, 0x5d, 0x8c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_295 = { .name = "xdh_wei25519_295", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_295_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_295_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_295_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 296 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 296 for XDH, tcId is 297 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_296_peerpubkey[] = { 0xa5, 0x56, 0x2b, 0x4b, 0xa8, 0x6b, 0x46, 0x4d, 0xff, 0x4c, 0x2c, 0xfa, 0xe8, 0x5b, 0x38, 0x4b, 0xe2, 0x11, 0x77, 0x1e, 0xfe, 0x8a, 0x96, 0x97, 0xe5, 0x1d, 0x84, 0xde, 0x47, 0xf1, 0xeb, 0x14, }; static const unsigned char xdh_wei25519_296_privkey[] = { 0xc8, 0xa8, 0x5d, 0x14, 0x0b, 0xa1, 0x50, 0xf5, 0xc6, 0xa8, 0xd3, 0xcb, 0x36, 0x3b, 0xcb, 0xcb, 0x75, 0x36, 0x5e, 0x51, 0xc6, 0x16, 0x40, 0xe9, 0x74, 0xa0, 0x72, 0x5b, 0x5e, 0x9d, 0x59, 0x40, }; static const unsigned char xdh_wei25519_296_sharedsecret[] = { 0x8a, 0x91, 0x47, 0x60, 0x12, 0x95, 0x75, 0xc8, 0xab, 0x32, 0x70, 0xd0, 0x4b, 0x04, 0x65, 0xfc, 0x2f, 0x32, 0x7a, 0xca, 0xf1, 0x67, 0x64, 0x63, 0x11, 0x38, 0x03, 0xbb, 0xb2, 0xec, 0x80, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_296 = { .name = "xdh_wei25519_296", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_296_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_296_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_296_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 297 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 297 for XDH, tcId is 298 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_297_peerpubkey[] = { 0x88, 0xae, 0x16, 0x31, 0xcd, 0x08, 0xab, 0x54, 0xc2, 0x4a, 0x31, 0xe1, 0xfe, 0xc8, 0x60, 0x39, 0x1f, 0xe2, 0x9b, 0xc5, 0x0d, 0xb2, 0x3e, 0xb6, 0x67, 0x09, 0x36, 0x2e, 0xc4, 0x26, 0x49, 0x29, }; static const unsigned char xdh_wei25519_297_privkey[] = { 0x90, 0xa3, 0xae, 0xb1, 0x41, 0x7c, 0x3d, 0x61, 0xc1, 0xef, 0xef, 0x1a, 0xc0, 0x52, 0x21, 0x8f, 0xb5, 0x5d, 0x3a, 0x59, 0xc4, 0xfe, 0x93, 0x0b, 0x5a, 0x33, 0xcc, 0x51, 0x83, 0xb4, 0x85, 0x47, }; static const unsigned char xdh_wei25519_297_sharedsecret[] = { 0xc1, 0x98, 0x8b, 0x6e, 0x1f, 0x02, 0x01, 0x51, 0xec, 0x91, 0x3b, 0x4f, 0xb2, 0x69, 0x5b, 0xae, 0x2c, 0x21, 0xcc, 0x55, 0x3d, 0x0f, 0x91, 0xcf, 0x0c, 0x66, 0x86, 0x23, 0xa3, 0xe5, 0xa4, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_297 = { .name = "xdh_wei25519_297", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_297_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_297_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_297_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 298 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 298 for XDH, tcId is 299 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_298_peerpubkey[] = { 0xcb, 0xc4, 0xd5, 0x5d, 0x5b, 0xfd, 0xdd, 0x0b, 0xc5, 0xc5, 0xed, 0xbe, 0x3a, 0x04, 0x83, 0x6b, 0x2c, 0x70, 0x1d, 0x25, 0x19, 0x5b, 0x26, 0x22, 0x1c, 0xbe, 0xa1, 0x93, 0x11, 0xe5, 0x5a, 0x3d, }; static const unsigned char xdh_wei25519_298_privkey[] = { 0xb8, 0x58, 0xd7, 0x41, 0x4b, 0xd9, 0xab, 0x9a, 0x3e, 0xbe, 0xa7, 0x90, 0x64, 0xab, 0x87, 0xbc, 0x05, 0x0e, 0x74, 0x40, 0x7f, 0x4d, 0x47, 0x48, 0xf6, 0x2f, 0xa4, 0xd9, 0xd2, 0x03, 0xb6, 0x40, }; static const unsigned char xdh_wei25519_298_sharedsecret[] = { 0xbb, 0x24, 0x81, 0x7b, 0xd9, 0xff, 0xf4, 0x23, 0xdc, 0x09, 0x72, 0x90, 0x8e, 0x2c, 0x03, 0xfd, 0xdf, 0x4d, 0xbe, 0x10, 0x00, 0x16, 0xb4, 0x59, 0xf2, 0x8f, 0xe9, 0x59, 0x4a, 0xdb, 0x37, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_298 = { .name = "xdh_wei25519_298", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_298_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_298_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_298_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 299 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 299 for XDH, tcId is 300 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_299_peerpubkey[] = { 0xd6, 0x6a, 0x2f, 0x9f, 0x75, 0x77, 0xe2, 0xdf, 0x4a, 0x56, 0xcb, 0x51, 0x96, 0x2b, 0x30, 0x56, 0xff, 0x5c, 0xc0, 0x49, 0x4c, 0x60, 0xf3, 0x95, 0x11, 0x78, 0x2e, 0x79, 0x92, 0x3e, 0xdd, 0x41, }; static const unsigned char xdh_wei25519_299_privkey[] = { 0xf8, 0x25, 0xed, 0xf1, 0xf7, 0x9e, 0xdd, 0xd7, 0x15, 0xa7, 0x2b, 0x3a, 0xc2, 0x67, 0xd6, 0xb2, 0xe9, 0x7e, 0x18, 0xbb, 0x13, 0xbc, 0xaf, 0xda, 0xc5, 0x94, 0x03, 0x70, 0xb8, 0x5b, 0xa6, 0x4b, }; static const unsigned char xdh_wei25519_299_sharedsecret[] = { 0xb3, 0xb4, 0x51, 0x3f, 0x8a, 0x31, 0x02, 0xe1, 0xae, 0x78, 0x2f, 0xbc, 0x69, 0x88, 0x81, 0x77, 0xf2, 0xc2, 0x4c, 0x56, 0x93, 0x03, 0xa5, 0xd0, 0x1a, 0xb1, 0xc3, 0xc5, 0xe2, 0x85, 0x52, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_299 = { .name = "xdh_wei25519_299", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_299_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_299_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_299_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 300 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 300 for XDH, tcId is 301 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_300_peerpubkey[] = { 0xde, 0x0f, 0xed, 0x2f, 0xab, 0x6e, 0x01, 0x49, 0x26, 0x75, 0xbc, 0x75, 0xcb, 0xe4, 0x5d, 0x7b, 0x45, 0xb0, 0x30, 0x6c, 0xec, 0x8d, 0xc6, 0x76, 0x11, 0x69, 0x98, 0x11, 0xc9, 0xaa, 0xef, 0x16, }; static const unsigned char xdh_wei25519_300_privkey[] = { 0xb0, 0xa7, 0x10, 0xb4, 0x70, 0xe3, 0x24, 0xbb, 0x56, 0xa7, 0xd8, 0xff, 0x87, 0x88, 0xd0, 0x5e, 0xb3, 0x27, 0x61, 0x61, 0x29, 0xb8, 0x49, 0x72, 0x48, 0x24, 0x25, 0xea, 0x4a, 0xd4, 0xf3, 0x4b, }; static const unsigned char xdh_wei25519_300_sharedsecret[] = { 0x47, 0x1b, 0xa9, 0x1a, 0x99, 0x63, 0x4f, 0x9a, 0xcf, 0x34, 0xfd, 0x7f, 0xd5, 0x8f, 0x72, 0x68, 0x2b, 0xe9, 0x7e, 0xe1, 0xc8, 0x21, 0x48, 0x6d, 0x62, 0xba, 0x4e, 0x44, 0x8c, 0xbc, 0x04, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_300 = { .name = "xdh_wei25519_300", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_300_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_300_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_300_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 301 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 301 for XDH, tcId is 302 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_301_peerpubkey[] = { 0x64, 0x18, 0xd4, 0x9f, 0xe4, 0x40, 0xa7, 0x55, 0xc9, 0xff, 0x1a, 0x35, 0x82, 0xd3, 0x5d, 0xc9, 0xb4, 0x4c, 0x81, 0x84, 0x98, 0xf1, 0x57, 0x82, 0xc9, 0x52, 0x84, 0xfe, 0x86, 0x8a, 0x91, 0x4c, }; static const unsigned char xdh_wei25519_301_privkey[] = { 0xb8, 0x98, 0xf0, 0x32, 0x97, 0x94, 0x74, 0x7d, 0x33, 0x26, 0x9a, 0x39, 0x89, 0xb6, 0x7e, 0x43, 0xa7, 0xab, 0x5a, 0x55, 0xfa, 0x12, 0x10, 0xb0, 0xe5, 0xdb, 0xa1, 0x93, 0xf4, 0xfa, 0x09, 0x4e, }; static const unsigned char xdh_wei25519_301_sharedsecret[] = { 0xcd, 0xb3, 0xca, 0x02, 0xd5, 0xfd, 0xb5, 0x36, 0xdb, 0xc7, 0x39, 0x5b, 0xab, 0x12, 0xbd, 0xcf, 0xd5, 0x5b, 0x1a, 0xe7, 0x71, 0xa4, 0x17, 0x6d, 0xed, 0xb5, 0x5e, 0xb4, 0xd7, 0x55, 0xc7, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_301 = { .name = "xdh_wei25519_301", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_301_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_301_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_301_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 302 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 302 for XDH, tcId is 303 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_302_peerpubkey[] = { 0xa8, 0x9b, 0xcf, 0xa2, 0x36, 0xbb, 0xcc, 0xf0, 0x7c, 0x43, 0x4b, 0x59, 0xf8, 0x65, 0x5f, 0xb0, 0x85, 0xb6, 0xcb, 0xe5, 0xed, 0x63, 0x76, 0x28, 0x1d, 0xf8, 0x13, 0xaf, 0xba, 0x22, 0xb7, 0x52, }; static const unsigned char xdh_wei25519_302_privkey[] = { 0xa0, 0x52, 0x8e, 0xd9, 0xa8, 0xec, 0x22, 0xeb, 0xe9, 0xcc, 0x2e, 0x32, 0xfa, 0xfc, 0x3f, 0x46, 0x75, 0x00, 0xa9, 0xa2, 0x2f, 0x53, 0x77, 0x38, 0x2d, 0xf6, 0x60, 0x4e, 0xdc, 0xdf, 0x4f, 0x44, }; static const unsigned char xdh_wei25519_302_sharedsecret[] = { 0xcd, 0x32, 0x45, 0x40, 0x3f, 0xd9, 0xed, 0xfc, 0xf9, 0x1c, 0x95, 0x81, 0xeb, 0xb2, 0xeb, 0x7c, 0x77, 0xad, 0x68, 0x37, 0xfc, 0xa3, 0x72, 0x47, 0x9e, 0x78, 0xde, 0x9f, 0xaf, 0x60, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_302 = { .name = "xdh_wei25519_302", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_302_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_302_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_302_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 303 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 303 for XDH, tcId is 304 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_303_peerpubkey[] = { 0xcd, 0xb1, 0xf9, 0x5f, 0x6e, 0xac, 0xc2, 0x4b, 0x6d, 0x02, 0x9c, 0x6e, 0xd9, 0x76, 0x66, 0x6d, 0xc5, 0x17, 0x94, 0xdb, 0x8e, 0x4a, 0xa9, 0x66, 0xba, 0x85, 0x0f, 0xd7, 0xf5, 0x04, 0x89, 0x65, }; static const unsigned char xdh_wei25519_303_privkey[] = { 0xf0, 0x68, 0x88, 0xbd, 0xe7, 0x5d, 0x68, 0x9d, 0x05, 0x68, 0x74, 0xf6, 0x43, 0x60, 0x00, 0x49, 0x7d, 0x22, 0xd8, 0xad, 0x9b, 0x95, 0xa1, 0xc6, 0x7d, 0xe1, 0xdd, 0xa4, 0xad, 0xa3, 0x16, 0x4d, }; static const unsigned char xdh_wei25519_303_sharedsecret[] = { 0xab, 0x7c, 0x47, 0xec, 0xb0, 0xc0, 0x16, 0x71, 0x56, 0xf4, 0x4f, 0x66, 0xa5, 0x27, 0x26, 0x4b, 0x95, 0x8f, 0xc9, 0x92, 0xc2, 0x1c, 0xe9, 0x8c, 0xef, 0x3a, 0xe2, 0x14, 0xd6, 0x6b, 0xd8, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_303 = { .name = "xdh_wei25519_303", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_303_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_303_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_303_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 304 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 304 for XDH, tcId is 305 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_304_peerpubkey[] = { 0x94, 0x91, 0xa8, 0x27, 0x44, 0xf1, 0xcb, 0x61, 0x05, 0xb7, 0x6b, 0x04, 0x42, 0xe5, 0x4e, 0x60, 0x5a, 0xc6, 0x7f, 0x47, 0xa1, 0xb2, 0xb3, 0xb5, 0x52, 0xd4, 0x86, 0xf7, 0x5b, 0xd9, 0x8e, 0x6a, }; static const unsigned char xdh_wei25519_304_privkey[] = { 0xe0, 0x34, 0xfc, 0xaa, 0x3a, 0xe4, 0x06, 0x03, 0xf9, 0xb2, 0x2a, 0xf1, 0x59, 0xfd, 0x67, 0xef, 0x00, 0x93, 0x80, 0x94, 0x6d, 0xe9, 0x2c, 0xb1, 0xd8, 0x3c, 0xc4, 0x89, 0xe8, 0xb3, 0x50, 0x41, }; static const unsigned char xdh_wei25519_304_sharedsecret[] = { 0x1b, 0xfa, 0x26, 0x4a, 0x7c, 0x72, 0x29, 0x14, 0x7a, 0x20, 0xdd, 0x02, 0x12, 0x11, 0x89, 0x1e, 0x61, 0xf5, 0xd8, 0xc7, 0x6c, 0xd8, 0x3f, 0x0b, 0xe2, 0x4b, 0xc7, 0x0e, 0x46, 0x6a, 0x81, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_304 = { .name = "xdh_wei25519_304", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_304_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_304_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_304_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 305 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 305 for XDH, tcId is 306 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_305_peerpubkey[] = { 0x4d, 0x19, 0xe1, 0x56, 0xe0, 0x84, 0xfe, 0x58, 0x2a, 0x0e, 0xb7, 0x9b, 0x2f, 0x12, 0xb6, 0x1d, 0x0b, 0x03, 0xf3, 0xf2, 0x29, 0x22, 0x7e, 0x79, 0x8a, 0x93, 0x3e, 0xea, 0x5a, 0x1b, 0x61, 0x29, }; static const unsigned char xdh_wei25519_305_privkey[] = { 0x70, 0x2a, 0x74, 0x48, 0xc0, 0xed, 0x58, 0xe1, 0xf4, 0xe0, 0xe3, 0x32, 0xd0, 0x96, 0xa3, 0x63, 0x60, 0xbe, 0xca, 0x2f, 0x69, 0x55, 0xc8, 0x15, 0xbc, 0x12, 0x0b, 0x3a, 0x69, 0x1d, 0x77, 0x42, }; static const unsigned char xdh_wei25519_305_sharedsecret[] = { 0xc4, 0x60, 0x57, 0xfc, 0xf6, 0x30, 0x88, 0xb3, 0xa8, 0x0e, 0x0b, 0xe5, 0xce, 0x24, 0xc8, 0x02, 0x6d, 0xfa, 0xdd, 0x34, 0x1b, 0x5d, 0x82, 0x15, 0xb8, 0xaf, 0xcb, 0x2a, 0x5a, 0x02, 0xbb, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_305 = { .name = "xdh_wei25519_305", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_305_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_305_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_305_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 306 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 306 for XDH, tcId is 307 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_306_peerpubkey[] = { 0xcc, 0x47, 0x29, 0xc4, 0xea, 0xe2, 0x92, 0xe4, 0x31, 0xec, 0x3a, 0x5c, 0xf5, 0x02, 0x0e, 0x19, 0xf9, 0xbe, 0xa5, 0x0e, 0xf3, 0x21, 0x8d, 0x9a, 0x79, 0x00, 0x34, 0x52, 0x6c, 0x3e, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_306_privkey[] = { 0x50, 0x02, 0x5c, 0xb5, 0x08, 0xad, 0x4f, 0xaa, 0x06, 0xfa, 0xfd, 0x0f, 0x4a, 0x33, 0xb7, 0x47, 0xcc, 0xf1, 0xb3, 0x57, 0x38, 0x85, 0xd3, 0x42, 0x65, 0x00, 0xd5, 0x1b, 0x56, 0x30, 0x01, 0x44, }; static const unsigned char xdh_wei25519_306_sharedsecret[] = { 0xd4, 0x36, 0x1e, 0x26, 0x12, 0x7a, 0xdf, 0xbe, 0x37, 0xc2, 0xed, 0x8f, 0x42, 0xcc, 0xe4, 0xeb, 0xab, 0x8a, 0xb7, 0x4e, 0xd9, 0xe7, 0x4f, 0x14, 0xc3, 0x43, 0x5d, 0x61, 0x2c, 0x1a, 0x99, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_306 = { .name = "xdh_wei25519_306", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_306_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_306_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_306_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 307 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 307 for XDH, tcId is 308 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_307_peerpubkey[] = { 0x4a, 0x47, 0x42, 0x49, 0xaf, 0x8f, 0x77, 0x1f, 0x0c, 0xfb, 0x11, 0x16, 0xf2, 0x4f, 0xda, 0x4c, 0x42, 0xf4, 0x13, 0x6d, 0x2a, 0xfb, 0x76, 0x6d, 0x1b, 0x29, 0x1c, 0x73, 0xc6, 0x66, 0x8d, 0x5a, }; static const unsigned char xdh_wei25519_307_privkey[] = { 0x70, 0x82, 0xfc, 0x53, 0x29, 0x9a, 0x4d, 0x30, 0xe5, 0xd0, 0xc3, 0x83, 0xc0, 0x35, 0x93, 0x5b, 0x1e, 0xee, 0xbd, 0x94, 0x08, 0xfe, 0x4d, 0x04, 0xb9, 0x3e, 0xec, 0x24, 0xbe, 0x52, 0xeb, 0x47, }; static const unsigned char xdh_wei25519_307_sharedsecret[] = { 0x80, 0xdf, 0xae, 0x7a, 0x28, 0xbb, 0x13, 0xd9, 0xe5, 0x1f, 0xf1, 0x99, 0x26, 0x7c, 0xec, 0x2a, 0x19, 0xdf, 0xc8, 0xb6, 0xf4, 0x97, 0x4e, 0x34, 0x46, 0xb2, 0xf6, 0x2f, 0xe9, 0xb6, 0x24, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_307 = { .name = "xdh_wei25519_307", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_307_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_307_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_307_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 308 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 308 for XDH, tcId is 309 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_308_peerpubkey[] = { 0x0f, 0x2a, 0x5c, 0xbb, 0xe5, 0x03, 0x13, 0x95, 0x31, 0xac, 0x05, 0x29, 0x18, 0x3d, 0xa8, 0xe6, 0x24, 0xd2, 0x52, 0x86, 0xf6, 0xe3, 0x5d, 0x14, 0x07, 0xab, 0x1f, 0x4d, 0x76, 0xeb, 0xc2, 0x60, }; static const unsigned char xdh_wei25519_308_privkey[] = { 0x98, 0xff, 0x7e, 0x71, 0x1d, 0x65, 0xcc, 0x7f, 0xd9, 0xd0, 0xac, 0x12, 0xdf, 0xe8, 0xb8, 0x94, 0xe0, 0xa9, 0x36, 0x02, 0xca, 0x9e, 0x75, 0xbf, 0x0e, 0xab, 0xbf, 0x0b, 0xfe, 0x67, 0x01, 0x48, }; static const unsigned char xdh_wei25519_308_sharedsecret[] = { 0x7a, 0x5c, 0x37, 0x30, 0x65, 0xe3, 0x39, 0xb2, 0x6e, 0xe5, 0x37, 0xcf, 0xf1, 0xcf, 0x45, 0x97, 0xcf, 0xcb, 0x4b, 0xf2, 0xdc, 0x7c, 0x4b, 0xcf, 0xec, 0x98, 0x84, 0x44, 0x32, 0x81, 0xc2, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_308 = { .name = "xdh_wei25519_308", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_308_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_308_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_308_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 309 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 309 for XDH, tcId is 310 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_309_peerpubkey[] = { 0x2f, 0xe1, 0x1d, 0x72, 0x3d, 0xba, 0x63, 0x55, 0x9e, 0x1b, 0x96, 0x14, 0x78, 0x93, 0xcb, 0x7e, 0xc8, 0x62, 0x71, 0x18, 0x06, 0x31, 0x6d, 0xaa, 0x86, 0xcd, 0x4d, 0xa7, 0x69, 0xd4, 0xb2, 0x2d, }; static const unsigned char xdh_wei25519_309_privkey[] = { 0xb0, 0x80, 0xf4, 0xac, 0x1e, 0x75, 0x8b, 0xbf, 0xbf, 0xa8, 0x88, 0xa7, 0x8c, 0xb8, 0xd6, 0x24, 0xd9, 0x7b, 0x86, 0x88, 0x00, 0x2b, 0x20, 0x17, 0xe3, 0x5f, 0x52, 0xf3, 0xd7, 0xc7, 0x96, 0x49, }; static const unsigned char xdh_wei25519_309_sharedsecret[] = { 0xc5, 0xed, 0xcc, 0x5d, 0x44, 0x70, 0x71, 0xc0, 0x8d, 0xfa, 0x82, 0x81, 0x41, 0x4a, 0xe6, 0xa0, 0x2d, 0xe7, 0x53, 0xe2, 0xf7, 0xbb, 0x80, 0xaf, 0x5f, 0x62, 0x53, 0xe5, 0x6d, 0xb4, 0x34, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_309 = { .name = "xdh_wei25519_309", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_309_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_309_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_309_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 310 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 310 for XDH, tcId is 311 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_310_peerpubkey[] = { 0x98, 0xe1, 0x21, 0x1d, 0xcf, 0x66, 0x51, 0xfa, 0x9f, 0x2d, 0x00, 0xeb, 0x08, 0x3a, 0xe5, 0x85, 0x58, 0x69, 0xa2, 0xa5, 0x3e, 0x83, 0x5f, 0x2e, 0x03, 0xb3, 0x0c, 0x0a, 0x19, 0xba, 0x80, 0x51, }; static const unsigned char xdh_wei25519_310_privkey[] = { 0xe8, 0x15, 0xbf, 0x9a, 0x96, 0x7e, 0x12, 0x08, 0xaf, 0x8e, 0x74, 0xce, 0x9a, 0xf6, 0xd1, 0x13, 0xda, 0xb1, 0x7c, 0x01, 0xc9, 0x0f, 0x1a, 0xe2, 0xbc, 0x25, 0xe3, 0xe2, 0xf9, 0xe3, 0xa4, 0x4a, }; static const unsigned char xdh_wei25519_310_sharedsecret[] = { 0x26, 0x3a, 0x38, 0xfe, 0x53, 0x8b, 0x50, 0xe8, 0xe9, 0x88, 0xbf, 0x07, 0xae, 0x86, 0xf3, 0x3d, 0x49, 0x88, 0x6b, 0x14, 0xc7, 0x14, 0x3e, 0xfd, 0x1d, 0x20, 0x25, 0xc8, 0x40, 0xe3, 0x6a, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_310 = { .name = "xdh_wei25519_310", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_310_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_310_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_310_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 311 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 311 for XDH, tcId is 312 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_311_peerpubkey[] = { 0x2f, 0x1b, 0x93, 0x8b, 0x81, 0xa4, 0xc9, 0x0e, 0x12, 0x51, 0x13, 0x5a, 0xd7, 0xfa, 0xbe, 0x83, 0x5f, 0x6a, 0x8b, 0xc5, 0xe2, 0x2d, 0x4b, 0x2a, 0xb1, 0x19, 0xf6, 0xf6, 0x77, 0x87, 0x76, 0x77, }; static const unsigned char xdh_wei25519_311_privkey[] = { 0x40, 0x51, 0xb0, 0x1c, 0xdf, 0x90, 0xaf, 0x38, 0xf0, 0xa9, 0x6f, 0xfb, 0x83, 0xf8, 0xd4, 0x13, 0x3a, 0xbe, 0x4f, 0xb0, 0x35, 0xb6, 0xfe, 0x6f, 0x65, 0x27, 0x64, 0x47, 0xca, 0xa7, 0x31, 0x4f, }; static const unsigned char xdh_wei25519_311_sharedsecret[] = { 0x34, 0x0a, 0xcf, 0x28, 0x01, 0xde, 0x71, 0xc1, 0x8f, 0x4c, 0x79, 0xcf, 0xea, 0x37, 0x2b, 0xc3, 0x54, 0xe4, 0xc8, 0xa5, 0xeb, 0x5c, 0x2c, 0xce, 0x8b, 0x45, 0xd8, 0x85, 0xdf, 0x16, 0x2f, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_311 = { .name = "xdh_wei25519_311", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_311_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_311_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_311_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 312 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 312 for XDH, tcId is 313 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_312_peerpubkey[] = { 0x34, 0x0b, 0x9f, 0x61, 0x35, 0x50, 0xd1, 0x4e, 0x3c, 0x62, 0x56, 0xca, 0xf0, 0x29, 0xb3, 0x1c, 0xad, 0x3f, 0xe6, 0xdb, 0x58, 0x82, 0x94, 0xe2, 0xd3, 0xaf, 0x37, 0x60, 0x5a, 0x68, 0xd8, 0x37, }; static const unsigned char xdh_wei25519_312_privkey[] = { 0x98, 0xc0, 0x92, 0x36, 0x31, 0x84, 0xe5, 0x8a, 0xd6, 0xce, 0x51, 0x0b, 0xd3, 0x2b, 0x30, 0x9c, 0x9d, 0x5a, 0x46, 0xf8, 0xd9, 0xee, 0x6f, 0x64, 0xa6, 0x9d, 0x81, 0x80, 0xbb, 0xc6, 0xcb, 0x45, }; static const unsigned char xdh_wei25519_312_sharedsecret[] = { 0x9e, 0xfe, 0x5c, 0xd7, 0x11, 0x02, 0xd8, 0x99, 0xa3, 0x33, 0xa4, 0x5e, 0xa6, 0xd2, 0xc0, 0x89, 0x60, 0x4b, 0x92, 0x6d, 0xb8, 0xc2, 0x64, 0x5c, 0xe5, 0xff, 0x21, 0x49, 0x2f, 0x27, 0xa3, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_312 = { .name = "xdh_wei25519_312", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_312_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_312_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_312_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 313 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 313 for XDH, tcId is 314 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_313_peerpubkey[] = { 0xed, 0xfb, 0xd6, 0xf0, 0x9a, 0xa3, 0x24, 0x35, 0x44, 0x0b, 0x0c, 0xa8, 0xba, 0x43, 0x63, 0x08, 0x31, 0x96, 0x13, 0xf8, 0xf2, 0xd5, 0x01, 0x13, 0x3c, 0x52, 0x6c, 0x3f, 0xf5, 0x5c, 0x7b, 0x3d, }; static const unsigned char xdh_wei25519_313_privkey[] = { 0x68, 0x6e, 0x51, 0xc0, 0x01, 0x16, 0xd1, 0xc1, 0x91, 0xaa, 0x9d, 0x58, 0x23, 0xb9, 0x6e, 0x59, 0x56, 0x10, 0x2e, 0x8f, 0xe7, 0x5f, 0x5c, 0xf2, 0x37, 0x6d, 0x99, 0x98, 0x9f, 0x6f, 0x43, 0x42, }; static const unsigned char xdh_wei25519_313_sharedsecret[] = { 0x19, 0x61, 0x82, 0x09, 0x5b, 0xcd, 0x2e, 0xf4, 0x6b, 0x18, 0xf6, 0x4c, 0x63, 0x60, 0x7e, 0x0a, 0xb1, 0x62, 0xa0, 0x86, 0x9e, 0x62, 0x65, 0xac, 0x8a, 0xe3, 0x5e, 0x35, 0x8c, 0x3d, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_313 = { .name = "xdh_wei25519_313", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_313_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_313_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_313_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 314 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 314 for XDH, tcId is 315 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_314_peerpubkey[] = { 0x9b, 0x05, 0x38, 0xcd, 0x61, 0x8b, 0x0a, 0x4d, 0xe0, 0x9e, 0x45, 0x42, 0x0f, 0x84, 0xd5, 0x4d, 0x74, 0x51, 0x4f, 0xbb, 0x1a, 0x31, 0xc1, 0xa4, 0xaa, 0x1e, 0x93, 0x30, 0x6f, 0x20, 0x72, 0x3f, }; static const unsigned char xdh_wei25519_314_privkey[] = { 0x20, 0x8a, 0xf2, 0xc9, 0x44, 0x2b, 0x36, 0xb5, 0x21, 0xfc, 0x3a, 0x1e, 0xce, 0xfe, 0x34, 0x2a, 0xac, 0x30, 0x8b, 0xd6, 0xe6, 0x29, 0x6e, 0xe0, 0x91, 0xc1, 0x96, 0xdc, 0x02, 0xe7, 0xae, 0x40, }; static const unsigned char xdh_wei25519_314_sharedsecret[] = { 0xa3, 0xc6, 0xb7, 0x51, 0x68, 0x21, 0x1e, 0x8e, 0x0a, 0x49, 0xca, 0x81, 0x5b, 0xfe, 0x3f, 0x46, 0x9f, 0x29, 0x86, 0x4d, 0xc8, 0x16, 0x61, 0x52, 0xb4, 0x56, 0xe7, 0x07, 0x4a, 0xfa, 0x9b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_314 = { .name = "xdh_wei25519_314", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_314_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_314_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_314_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 315 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 315 for XDH, tcId is 316 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_315_peerpubkey[] = { 0xae, 0x8c, 0xf2, 0xfc, 0xdd, 0xe7, 0x10, 0xc2, 0xc1, 0x18, 0x45, 0x24, 0xbc, 0x32, 0x43, 0x08, 0x74, 0xdf, 0xa0, 0x8c, 0x12, 0x5f, 0x61, 0xd6, 0x91, 0x9d, 0xaf, 0x8e, 0x66, 0xdb, 0x41, 0x5a, }; static const unsigned char xdh_wei25519_315_privkey[] = { 0xc0, 0xd8, 0x61, 0xa6, 0xd5, 0xff, 0x91, 0xf9, 0x1e, 0x3b, 0xd0, 0x59, 0x34, 0x16, 0x1f, 0xf0, 0xab, 0x0f, 0x3c, 0xe7, 0xe4, 0xa2, 0xb5, 0xb4, 0xfc, 0xb3, 0x1a, 0xe3, 0x4b, 0x46, 0x66, 0x4f, }; static const unsigned char xdh_wei25519_315_sharedsecret[] = { 0xde, 0xaa, 0xe6, 0xc9, 0x95, 0x28, 0x44, 0xa3, 0xa1, 0xd0, 0x16, 0x88, 0xe7, 0x10, 0x5b, 0x0b, 0xbe, 0xad, 0xc1, 0x60, 0x76, 0x3c, 0x20, 0x02, 0xb6, 0xd0, 0xbc, 0xf3, 0x5c, 0x22, 0xd1, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_315 = { .name = "xdh_wei25519_315", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_315_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_315_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_315_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 316 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 316 for XDH, tcId is 317 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_316_peerpubkey[] = { 0x2a, 0x59, 0xf4, 0x78, 0x40, 0x2d, 0x28, 0x29, 0xcd, 0x3b, 0x62, 0xe9, 0xf7, 0xcc, 0x01, 0x44, 0x5e, 0x8e, 0x73, 0xa4, 0x2c, 0xb1, 0x1a, 0xf0, 0x0b, 0x6b, 0x9a, 0x9f, 0x0e, 0x44, 0xcb, 0x3b, }; static const unsigned char xdh_wei25519_316_privkey[] = { 0x70, 0x78, 0x5c, 0xad, 0x16, 0x09, 0x72, 0xb7, 0x11, 0x31, 0x86, 0x59, 0xb4, 0x7b, 0x57, 0x4f, 0x69, 0x41, 0xef, 0x6d, 0xa1, 0xea, 0x06, 0x50, 0x8b, 0x26, 0x50, 0xf5, 0x7e, 0xc9, 0xe5, 0x4a, }; static const unsigned char xdh_wei25519_316_sharedsecret[] = { 0xc2, 0x04, 0xbd, 0x15, 0xf0, 0x1a, 0x11, 0xa2, 0xef, 0xda, 0xbe, 0x2e, 0x90, 0x2b, 0x7c, 0xd0, 0xaa, 0x07, 0x93, 0x16, 0xf6, 0x0e, 0x91, 0x1b, 0x3e, 0xe5, 0xd4, 0x62, 0x62, 0xe9, 0x86, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_316 = { .name = "xdh_wei25519_316", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_316_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_316_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_316_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 317 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 317 for XDH, tcId is 318 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_317_peerpubkey[] = { 0x83, 0x6c, 0x8e, 0x45, 0xdd, 0x89, 0x0e, 0x65, 0x8c, 0x33, 0xe6, 0x9b, 0x6f, 0x57, 0x8a, 0x5a, 0x77, 0x4c, 0x48, 0xb4, 0x35, 0xbc, 0x3b, 0x91, 0xac, 0x69, 0x3d, 0xf9, 0x4a, 0x05, 0x58, 0x57, }; static const unsigned char xdh_wei25519_317_privkey[] = { 0x60, 0xaf, 0xc8, 0xeb, 0x1f, 0x87, 0xdf, 0x4b, 0x55, 0x28, 0x7f, 0x3c, 0x46, 0x98, 0xc5, 0xf8, 0xb9, 0x97, 0xb2, 0x8a, 0x73, 0xc5, 0x73, 0xfc, 0x27, 0x3e, 0x9c, 0x46, 0x7f, 0xb7, 0xe4, 0x4c, }; static const unsigned char xdh_wei25519_317_sharedsecret[] = { 0xc5, 0x45, 0x74, 0x87, 0xe9, 0x09, 0x32, 0xf5, 0x7b, 0x94, 0xaf, 0x2e, 0x87, 0x50, 0x40, 0x3e, 0x09, 0xc9, 0xac, 0x72, 0x7e, 0x2b, 0xd2, 0x13, 0x59, 0x04, 0x62, 0xb6, 0x93, 0x7b, 0x07, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_317 = { .name = "xdh_wei25519_317", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_317_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_317_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_317_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 318 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 318 for XDH, tcId is 319 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_318_peerpubkey[] = { 0x59, 0x51, 0x9e, 0xad, 0x79, 0x95, 0xa6, 0xdf, 0x89, 0xbb, 0x54, 0xc8, 0x40, 0xd6, 0x1a, 0x84, 0x81, 0x88, 0x10, 0x98, 0xb8, 0xa4, 0xf8, 0x3c, 0x6a, 0x2f, 0x6b, 0xa8, 0x00, 0x33, 0x82, 0x57, }; static const unsigned char xdh_wei25519_318_privkey[] = { 0xa8, 0x3c, 0x11, 0xb2, 0x83, 0x41, 0x36, 0xb9, 0xaa, 0xf0, 0x15, 0x2d, 0x90, 0xe7, 0x6e, 0x3c, 0x27, 0x17, 0x76, 0x93, 0xa2, 0x83, 0x4e, 0x8b, 0xed, 0xa0, 0xa3, 0x57, 0x1b, 0xce, 0x69, 0x47, }; static const unsigned char xdh_wei25519_318_sharedsecret[] = { 0x4e, 0xd6, 0xf8, 0xd6, 0x29, 0x32, 0x54, 0x1c, 0x6b, 0xea, 0x16, 0xe0, 0x38, 0x35, 0xf1, 0xf7, 0x58, 0xa5, 0xc4, 0x17, 0x22, 0xb5, 0xc9, 0x98, 0x9c, 0x9c, 0x7c, 0xc0, 0x8e, 0x34, 0xe3, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_318 = { .name = "xdh_wei25519_318", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_318_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_318_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_318_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 319 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 319 for XDH, tcId is 320 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_319_peerpubkey[] = { 0x32, 0xf3, 0x4d, 0xa8, 0x4a, 0xb4, 0xbf, 0xca, 0x36, 0x9c, 0x4b, 0x88, 0x46, 0x91, 0xbe, 0xcf, 0x54, 0xbe, 0x7f, 0xbe, 0xd1, 0x64, 0x49, 0xdc, 0x86, 0x96, 0x9d, 0xa7, 0xea, 0x9a, 0xbf, 0x62, }; static const unsigned char xdh_wei25519_319_privkey[] = { 0xb8, 0x0d, 0x87, 0x95, 0x73, 0x58, 0x06, 0x57, 0x9e, 0x71, 0x75, 0x98, 0x94, 0x93, 0x9d, 0x75, 0x88, 0x53, 0x59, 0x21, 0x27, 0xef, 0xe8, 0x4f, 0xc8, 0x2e, 0xb7, 0xcd, 0xee, 0x45, 0x01, 0x4f, }; static const unsigned char xdh_wei25519_319_sharedsecret[] = { 0x52, 0x1a, 0x5b, 0x81, 0x49, 0xa1, 0x32, 0xd1, 0x55, 0xe6, 0xb4, 0xed, 0x11, 0x39, 0x00, 0x50, 0x6c, 0xfc, 0x2f, 0x76, 0xd2, 0xa3, 0xe1, 0x41, 0x96, 0xd6, 0x9e, 0xb8, 0x5d, 0xb3, 0xc9, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_319 = { .name = "xdh_wei25519_319", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_319_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_319_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_319_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 320 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 320 for XDH, tcId is 321 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_320_peerpubkey[] = { 0x82, 0xae, 0x48, 0xdc, 0xf5, 0x9b, 0xc5, 0xe4, 0x69, 0xf9, 0xa1, 0x1b, 0x18, 0xa3, 0x2d, 0x47, 0x53, 0xac, 0x81, 0x86, 0x92, 0xdf, 0xae, 0x27, 0xd6, 0x75, 0x41, 0x1a, 0x22, 0x72, 0xb3, 0x63, }; static const unsigned char xdh_wei25519_320_privkey[] = { 0xe0, 0x8f, 0xfa, 0x45, 0xef, 0xbe, 0x1f, 0x96, 0x58, 0x4c, 0x76, 0x25, 0x45, 0x54, 0xad, 0xb9, 0x17, 0x7b, 0x58, 0xed, 0x09, 0x60, 0x9a, 0x6c, 0xe4, 0x99, 0xe5, 0xbd, 0x22, 0xd3, 0x5c, 0x45, }; static const unsigned char xdh_wei25519_320_sharedsecret[] = { 0xe8, 0x31, 0xd6, 0xce, 0xe9, 0x5c, 0xa1, 0xb4, 0xc9, 0x6b, 0xb8, 0x94, 0x57, 0x56, 0x2f, 0xff, 0x36, 0xcb, 0x4d, 0x08, 0xb8, 0x1d, 0xa8, 0x9b, 0x81, 0x0b, 0x42, 0x5e, 0xcd, 0xba, 0xfd, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_320 = { .name = "xdh_wei25519_320", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_320_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_320_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_320_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 321 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 321 for XDH, tcId is 322 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_321_peerpubkey[] = { 0xb3, 0x3b, 0xd3, 0xad, 0x14, 0xb6, 0x68, 0x96, 0xf9, 0x71, 0xcb, 0xdf, 0x27, 0x78, 0x5f, 0xc3, 0xaa, 0x3c, 0xfb, 0x39, 0xad, 0xc6, 0xc2, 0x92, 0x57, 0xd2, 0x2e, 0xa4, 0xdf, 0x8c, 0xbf, 0x63, }; static const unsigned char xdh_wei25519_321_privkey[] = { 0x68, 0x8e, 0x1b, 0xbb, 0x51, 0x14, 0xf3, 0x4e, 0x85, 0x31, 0xc2, 0x78, 0xb2, 0xd9, 0x71, 0x4b, 0xa0, 0x7c, 0x32, 0xa7, 0xae, 0xa6, 0xe6, 0x27, 0x13, 0x5b, 0xd1, 0xfc, 0x65, 0x23, 0x80, 0x45, }; static const unsigned char xdh_wei25519_321_sharedsecret[] = { 0x35, 0x0e, 0x3a, 0xb9, 0xd0, 0xdb, 0xff, 0x78, 0xf3, 0xf2, 0x15, 0x74, 0x28, 0xbe, 0xba, 0x18, 0x93, 0x33, 0xbe, 0x27, 0x48, 0x27, 0xc1, 0x0d, 0x59, 0x67, 0x3f, 0x21, 0xc0, 0xc4, 0x8a, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_321 = { .name = "xdh_wei25519_321", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_321_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_321_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_321_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 322 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 322 for XDH, tcId is 323 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_322_peerpubkey[] = { 0x18, 0xe5, 0x8d, 0xf6, 0xbf, 0xbe, 0x18, 0x4b, 0x0e, 0x3c, 0x7c, 0x4b, 0xf2, 0xa0, 0x51, 0xed, 0x05, 0x5b, 0x79, 0x35, 0x01, 0xc0, 0xd4, 0xfc, 0x47, 0xbc, 0x8a, 0x95, 0xc4, 0xde, 0xec, 0x7c, }; static const unsigned char xdh_wei25519_322_privkey[] = { 0x80, 0x36, 0xa4, 0xe2, 0xe9, 0x3e, 0x9e, 0xd8, 0x2d, 0x99, 0xd7, 0x1a, 0x52, 0x2a, 0xac, 0x92, 0x89, 0xbd, 0x99, 0x05, 0xfe, 0x41, 0xd0, 0x1d, 0x08, 0xa4, 0x99, 0x37, 0x6a, 0x25, 0x84, 0x42, }; static const unsigned char xdh_wei25519_322_sharedsecret[] = { 0xad, 0xe7, 0x1d, 0x64, 0x60, 0x28, 0x7f, 0xe8, 0x08, 0xe9, 0x47, 0x56, 0x0e, 0x67, 0xa9, 0xd6, 0xff, 0x2f, 0x96, 0xea, 0xa1, 0x35, 0x5d, 0x2e, 0x9f, 0xbb, 0xe5, 0x49, 0xe8, 0x83, 0x38, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_322 = { .name = "xdh_wei25519_322", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_322_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_322_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_322_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 323 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 323 for XDH, tcId is 324 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_323_peerpubkey[] = { 0x77, 0x2e, 0x31, 0xe7, 0x76, 0xe8, 0xd4, 0xf2, 0x3b, 0x7a, 0xf2, 0x03, 0x7a, 0xf2, 0x8a, 0x37, 0xe6, 0x8f, 0x61, 0xe7, 0x40, 0xb3, 0x90, 0x4f, 0x4e, 0xc4, 0xc9, 0x01, 0x57, 0xbe, 0x14, 0x78, }; static const unsigned char xdh_wei25519_323_privkey[] = { 0x90, 0x1b, 0x20, 0xf0, 0xcd, 0xa7, 0x40, 0x76, 0xc3, 0xd4, 0xbf, 0x4e, 0x02, 0x65, 0x3c, 0xd4, 0x06, 0xed, 0x48, 0x0c, 0x35, 0x51, 0x59, 0xe2, 0x2c, 0xa4, 0x4b, 0x98, 0x4f, 0x10, 0x76, 0x4f, }; static const unsigned char xdh_wei25519_323_sharedsecret[] = { 0x91, 0xa9, 0xbe, 0xc2, 0x8c, 0xf1, 0x8c, 0x70, 0x94, 0xe2, 0xd8, 0x0d, 0x27, 0x64, 0xdf, 0x59, 0xad, 0xa0, 0xcb, 0x19, 0x46, 0xbe, 0x42, 0x28, 0x64, 0xbd, 0x7a, 0xd0, 0xe5, 0x33, 0xb6, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_323 = { .name = "xdh_wei25519_323", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_323_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_323_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_323_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 324 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 324 for XDH, tcId is 325 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_324_peerpubkey[] = { 0xa8, 0xd5, 0x5d, 0x5c, 0x11, 0x37, 0xe9, 0xbb, 0x62, 0x65, 0x57, 0xf9, 0xd6, 0xee, 0xa8, 0xd3, 0x12, 0x0e, 0x93, 0x64, 0xf8, 0xbc, 0xd9, 0xb6, 0x79, 0x34, 0x26, 0x0b, 0x1a, 0x09, 0x18, 0x01, }; static const unsigned char xdh_wei25519_324_privkey[] = { 0xd8, 0x3e, 0xb7, 0xaf, 0xfd, 0x1b, 0xcc, 0x1e, 0xc0, 0xb4, 0x82, 0x3c, 0xee, 0x5c, 0xf0, 0xb1, 0x5b, 0x5f, 0x57, 0x08, 0x5a, 0xa2, 0x70, 0x8e, 0xd4, 0x37, 0xa2, 0x92, 0x53, 0x29, 0xb5, 0x50, }; static const unsigned char xdh_wei25519_324_sharedsecret[] = { 0x6c, 0x1b, 0x8e, 0x24, 0x0e, 0xdf, 0xa5, 0xdb, 0x2a, 0xbb, 0x3d, 0xc1, 0x2b, 0xcf, 0x9e, 0x8a, 0xc9, 0xca, 0x10, 0xdd, 0x35, 0x07, 0x08, 0x37, 0x46, 0xf6, 0xf3, 0x6d, 0xc0, 0x35, 0xd7, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_324 = { .name = "xdh_wei25519_324", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_324_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_324_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_324_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 325 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 325 for XDH, tcId is 326 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_325_peerpubkey[] = { 0x33, 0xc9, 0x4b, 0xe5, 0x8b, 0x0f, 0x0e, 0x6c, 0xf3, 0x63, 0xe1, 0xb1, 0x2a, 0x2e, 0xbf, 0xb9, 0x30, 0x40, 0x71, 0x5b, 0xe9, 0x15, 0x18, 0xf2, 0x1d, 0xf2, 0x95, 0x3e, 0xea, 0xb5, 0xfb, 0x01, }; static const unsigned char xdh_wei25519_325_privkey[] = { 0x98, 0x9e, 0xee, 0x31, 0x7b, 0x9c, 0x25, 0x4d, 0xc0, 0x23, 0xf9, 0xe3, 0x5e, 0xff, 0x02, 0x24, 0xbc, 0x2e, 0x0b, 0xc8, 0x71, 0x99, 0x6b, 0x94, 0x6a, 0x96, 0x97, 0x0e, 0x75, 0x06, 0xa8, 0x5e, }; static const unsigned char xdh_wei25519_325_sharedsecret[] = { 0xd4, 0xc3, 0xb3, 0x46, 0x77, 0x14, 0xf2, 0xd1, 0x05, 0x90, 0x4a, 0x84, 0xcc, 0x7e, 0x81, 0xd7, 0xf2, 0x91, 0x30, 0x4e, 0x90, 0x80, 0x41, 0x68, 0x2d, 0x89, 0x06, 0xa6, 0x83, 0xc1, 0x21, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_325 = { .name = "xdh_wei25519_325", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_325_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_325_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_325_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 326 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 326 for XDH, tcId is 327 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_326_peerpubkey[] = { 0xa2, 0x18, 0xae, 0x96, 0x24, 0xb0, 0x7c, 0xe0, 0x51, 0x78, 0xb9, 0xd0, 0xcc, 0x1b, 0x71, 0xde, 0xe2, 0x1f, 0x27, 0x85, 0x2a, 0x2c, 0xeb, 0x18, 0x61, 0x0b, 0x40, 0x52, 0xb2, 0x44, 0xf0, 0x0f, }; static const unsigned char xdh_wei25519_326_privkey[] = { 0xb8, 0x35, 0x54, 0x55, 0xd3, 0x58, 0xf2, 0xdd, 0x7c, 0x57, 0x07, 0xb2, 0xc6, 0x97, 0x3c, 0x9c, 0x27, 0xb9, 0x9e, 0x7d, 0x8a, 0xc1, 0x65, 0x0c, 0x79, 0x1e, 0x5f, 0xdb, 0xcb, 0xea, 0x49, 0x57, }; static const unsigned char xdh_wei25519_326_sharedsecret[] = { 0x1e, 0xbe, 0x6c, 0xa7, 0x11, 0xa6, 0x49, 0xae, 0x48, 0x7b, 0x33, 0x27, 0x47, 0xe3, 0xdc, 0x03, 0x06, 0x34, 0x05, 0x60, 0xca, 0xb6, 0xbc, 0x60, 0x29, 0xe4, 0x4f, 0x6a, 0x7e, 0x0e, 0xe4, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_326 = { .name = "xdh_wei25519_326", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_326_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_326_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_326_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 327 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 327 for XDH, tcId is 328 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_327_peerpubkey[] = { 0xd7, 0x06, 0x7f, 0xae, 0xaf, 0xd3, 0xe9, 0x66, 0xe5, 0x75, 0x25, 0xf9, 0x30, 0xb3, 0x31, 0x7c, 0x9e, 0x8b, 0x9c, 0x9a, 0x9a, 0xe9, 0x46, 0xe7, 0x6c, 0x1e, 0x46, 0x02, 0xa5, 0x9a, 0x7e, 0x33, }; static const unsigned char xdh_wei25519_327_privkey[] = { 0x80, 0x65, 0x56, 0x7e, 0xf0, 0x82, 0xb1, 0x6c, 0x20, 0x85, 0x34, 0x87, 0xf5, 0x48, 0x93, 0x01, 0x2b, 0xa4, 0x76, 0x22, 0x24, 0xe5, 0xc5, 0x9f, 0x25, 0x0d, 0xfb, 0xf8, 0x25, 0x81, 0xe8, 0x5a, }; static const unsigned char xdh_wei25519_327_sharedsecret[] = { 0x03, 0xe7, 0xa7, 0x77, 0xe6, 0x48, 0xbd, 0xc6, 0x12, 0x18, 0x9f, 0x3c, 0xd4, 0x2d, 0x34, 0xe3, 0x57, 0x36, 0xd3, 0xe5, 0x2e, 0x6e, 0xdc, 0x8a, 0xc8, 0x73, 0xa5, 0x8e, 0x24, 0x4a, 0x60, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_327 = { .name = "xdh_wei25519_327", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_327_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_327_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_327_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 328 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 328 for XDH, tcId is 329 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_328_peerpubkey[] = { 0x8d, 0xf9, 0x68, 0x2c, 0xbe, 0x88, 0x02, 0x47, 0x8a, 0x85, 0x31, 0x37, 0x7e, 0x75, 0x2c, 0xdd, 0xe5, 0x47, 0x38, 0xd5, 0x28, 0xd6, 0x39, 0xbe, 0xa9, 0xea, 0xf4, 0x77, 0x02, 0xf8, 0xbf, 0x3b, }; static const unsigned char xdh_wei25519_328_privkey[] = { 0x00, 0xb5, 0x14, 0x48, 0x13, 0x9a, 0x61, 0xfe, 0x6c, 0x5f, 0xbf, 0x93, 0x95, 0x87, 0x7d, 0x53, 0xd8, 0x20, 0xef, 0x59, 0xda, 0x3b, 0xe8, 0x56, 0x45, 0x8b, 0x5e, 0xb9, 0x09, 0x85, 0xba, 0x53, }; static const unsigned char xdh_wei25519_328_sharedsecret[] = { 0x30, 0x8e, 0xf9, 0x9d, 0xae, 0x10, 0x64, 0xa4, 0x44, 0xfa, 0x90, 0x77, 0x5b, 0x5d, 0xd5, 0xb1, 0x95, 0x2d, 0x72, 0x24, 0xa0, 0xe5, 0xae, 0x03, 0x1d, 0xf4, 0x32, 0x64, 0x0f, 0x41, 0x62, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_328 = { .name = "xdh_wei25519_328", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_328_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_328_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_328_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 329 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 329 for XDH, tcId is 330 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_329_peerpubkey[] = { 0x7d, 0x92, 0x70, 0x68, 0x68, 0xaa, 0x09, 0x53, 0x86, 0x38, 0xd6, 0x33, 0xc2, 0x55, 0xf3, 0x33, 0xb9, 0xda, 0x03, 0xbc, 0x74, 0xb4, 0x9b, 0x35, 0x94, 0x1c, 0x57, 0x82, 0x0c, 0xd3, 0xfd, 0x47, }; static const unsigned char xdh_wei25519_329_privkey[] = { 0xe8, 0xeb, 0x9f, 0x6f, 0x62, 0xf9, 0x3d, 0xbc, 0x32, 0x5b, 0x83, 0x3a, 0xa7, 0x63, 0xa9, 0x0f, 0x13, 0xf0, 0xac, 0xb2, 0xc2, 0xc4, 0xb8, 0xb3, 0x3d, 0xec, 0xd4, 0x71, 0xce, 0x70, 0xc4, 0x5f, }; static const unsigned char xdh_wei25519_329_sharedsecret[] = { 0xf3, 0x3e, 0x2e, 0x86, 0x44, 0x3a, 0x2c, 0x68, 0x82, 0x3b, 0x72, 0xa2, 0xb5, 0x9d, 0x6a, 0x02, 0x8e, 0x0a, 0x8e, 0x28, 0x3c, 0xfe, 0x29, 0xfe, 0xa4, 0xf7, 0xaa, 0x22, 0xbd, 0x1a, 0xfe, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_329 = { .name = "xdh_wei25519_329", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_329_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_329_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_329_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 330 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 330 for XDH, tcId is 331 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_330_peerpubkey[] = { 0xdf, 0xb1, 0xff, 0xc1, 0x76, 0xaf, 0xf8, 0x4d, 0xb3, 0x01, 0x82, 0xd2, 0x37, 0x8f, 0x83, 0x72, 0x8f, 0x83, 0xdd, 0x1b, 0x33, 0xd7, 0x98, 0x56, 0xf3, 0xda, 0x54, 0x59, 0xcf, 0x9d, 0xf9, 0x07, }; static const unsigned char xdh_wei25519_330_privkey[] = { 0x68, 0xa1, 0xa7, 0xcc, 0xc5, 0x0b, 0xab, 0x4b, 0x01, 0xe5, 0x5e, 0x18, 0xcb, 0xd4, 0x64, 0xaf, 0xf4, 0x31, 0x31, 0xfb, 0x07, 0x41, 0xe6, 0x8d, 0x53, 0xcd, 0xeb, 0xfc, 0x54, 0xf3, 0x30, 0x51, }; static const unsigned char xdh_wei25519_330_sharedsecret[] = { 0x7b, 0x53, 0x5f, 0xc3, 0x1c, 0x6c, 0x2a, 0x38, 0x03, 0xd8, 0xbd, 0x45, 0x41, 0x0a, 0x17, 0x81, 0xbd, 0x90, 0xa0, 0x92, 0x05, 0xda, 0x28, 0xc9, 0xdf, 0x12, 0x0d, 0xf2, 0x3a, 0x9f, 0xa3, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_330 = { .name = "xdh_wei25519_330", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_330_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_330_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_330_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 331 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 331 for XDH, tcId is 332 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_331_peerpubkey[] = { 0x12, 0xe8, 0x1e, 0x83, 0x8b, 0x21, 0xea, 0xc9, 0x6d, 0xc1, 0x30, 0x43, 0x25, 0x71, 0x21, 0x6d, 0x7a, 0x9b, 0x4a, 0x81, 0x7f, 0x19, 0x38, 0x72, 0x1d, 0x22, 0x67, 0xdd, 0x15, 0x0e, 0xbf, 0x20, }; static const unsigned char xdh_wei25519_331_privkey[] = { 0xe0, 0x75, 0xbc, 0xfc, 0x16, 0x5a, 0x47, 0x1b, 0x2f, 0x76, 0xc3, 0x00, 0x3f, 0xb0, 0x17, 0x2c, 0x82, 0xf7, 0x07, 0x13, 0x7d, 0xe2, 0xfa, 0x70, 0x82, 0xe4, 0x3a, 0x87, 0xa2, 0x55, 0x93, 0x5c, }; static const unsigned char xdh_wei25519_331_sharedsecret[] = { 0xca, 0x23, 0xa7, 0x81, 0xda, 0x09, 0x11, 0xe4, 0x11, 0x5a, 0x29, 0xa9, 0xf5, 0x64, 0x47, 0x15, 0x7c, 0x23, 0xbe, 0xe1, 0x87, 0xb0, 0xc1, 0x73, 0x69, 0xc4, 0xf7, 0x73, 0x0d, 0x78, 0x17, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_331 = { .name = "xdh_wei25519_331", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_331_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_331_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_331_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 332 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 332 for XDH, tcId is 333 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_332_peerpubkey[] = { 0x83, 0x2a, 0x46, 0xae, 0xc0, 0x22, 0x40, 0xd7, 0x16, 0xfe, 0x22, 0xde, 0xa9, 0x4a, 0xd5, 0x66, 0xa3, 0xfa, 0xfb, 0xee, 0xdc, 0xce, 0x35, 0xc8, 0x3e, 0x41, 0xe5, 0x80, 0x76, 0xc9, 0x97, 0x49, }; static const unsigned char xdh_wei25519_332_privkey[] = { 0xc0, 0xe1, 0x96, 0x34, 0xdb, 0xf6, 0x46, 0x0e, 0x14, 0x86, 0x93, 0x0c, 0x46, 0xe8, 0x55, 0x6b, 0x3c, 0x16, 0xd6, 0xde, 0x95, 0x99, 0x04, 0x60, 0x05, 0x49, 0xbb, 0x3e, 0x08, 0x60, 0x34, 0x55, }; static const unsigned char xdh_wei25519_332_sharedsecret[] = { 0xcd, 0x06, 0x86, 0xb3, 0x2e, 0xa4, 0xcd, 0xdb, 0x8e, 0x13, 0xff, 0x20, 0xa7, 0x8d, 0x38, 0x07, 0x49, 0xa5, 0xd4, 0xf6, 0xa3, 0xdc, 0x55, 0xd7, 0x2f, 0x48, 0x13, 0xd9, 0x49, 0xa0, 0xea, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_332 = { .name = "xdh_wei25519_332", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_332_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_332_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_332_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 333 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 333 for XDH, tcId is 334 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_333_peerpubkey[] = { 0x8c, 0x80, 0x33, 0x43, 0x2b, 0xcc, 0x12, 0xd4, 0x79, 0xf6, 0x7d, 0x6d, 0x87, 0x6b, 0x1c, 0x8e, 0x89, 0xf1, 0x6a, 0x23, 0x4b, 0x9b, 0x09, 0x33, 0x22, 0xef, 0xfa, 0x9d, 0xee, 0x94, 0x55, 0x4d, }; static const unsigned char xdh_wei25519_333_privkey[] = { 0xb8, 0x4c, 0xaa, 0x18, 0xac, 0xc3, 0xdb, 0x37, 0x22, 0x5d, 0x32, 0xca, 0xb4, 0xf6, 0x0e, 0x6f, 0xba, 0x4a, 0xca, 0xb1, 0x27, 0x7e, 0x20, 0x42, 0x5d, 0x30, 0xf9, 0x4c, 0xab, 0x2e, 0x2c, 0x55, }; static const unsigned char xdh_wei25519_333_sharedsecret[] = { 0xa9, 0x50, 0xaa, 0x57, 0xbb, 0x2b, 0xeb, 0x9e, 0xd5, 0xd3, 0x22, 0x8c, 0x7e, 0xf4, 0x48, 0xda, 0xb6, 0x95, 0x52, 0xf3, 0xd3, 0xb1, 0xe4, 0x66, 0xac, 0xcf, 0x41, 0xbf, 0xb6, 0xd5, 0xb8, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_333 = { .name = "xdh_wei25519_333", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_333_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_333_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_333_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 334 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 334 for XDH, tcId is 335 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_334_peerpubkey[] = { 0x6d, 0xf7, 0x99, 0xbb, 0xa6, 0xcd, 0xf5, 0xf4, 0x6a, 0x57, 0xab, 0x22, 0x7f, 0x93, 0xfb, 0xa4, 0x91, 0xda, 0xd2, 0x96, 0xa2, 0xfd, 0xb7, 0xe4, 0x91, 0x92, 0x1d, 0x61, 0x0c, 0xce, 0x8f, 0x5e, }; static const unsigned char xdh_wei25519_334_privkey[] = { 0x28, 0x96, 0x81, 0x8c, 0xdd, 0xf5, 0x72, 0x52, 0x19, 0x43, 0xe9, 0xf0, 0xc5, 0xe8, 0x45, 0xf5, 0x30, 0xb7, 0x40, 0x42, 0x75, 0x88, 0xa0, 0xf6, 0xde, 0x25, 0x04, 0xbd, 0x5b, 0xf4, 0x0c, 0x53, }; static const unsigned char xdh_wei25519_334_sharedsecret[] = { 0x54, 0xf5, 0xae, 0x57, 0xe6, 0x76, 0xd0, 0x8c, 0x8f, 0x8a, 0x3c, 0xf8, 0x91, 0xe3, 0x6d, 0xda, 0xab, 0x75, 0x10, 0x93, 0xf9, 0x2f, 0x40, 0x90, 0x60, 0xc5, 0x7e, 0x74, 0x59, 0x41, 0x70, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_334 = { .name = "xdh_wei25519_334", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_334_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_334_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_334_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 335 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 335 for XDH, tcId is 336 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_335_peerpubkey[] = { 0x0c, 0x80, 0x90, 0xe1, 0xcf, 0xe7, 0xf7, 0x61, 0xcf, 0xdf, 0x08, 0xd9, 0x44, 0xd4, 0xae, 0xb7, 0xa5, 0x09, 0xa0, 0x7a, 0x61, 0x01, 0x64, 0x5b, 0x9a, 0x4c, 0x7c, 0x9e, 0x9c, 0x3d, 0x46, 0x09, }; static const unsigned char xdh_wei25519_335_privkey[] = { 0xa0, 0x1f, 0x0c, 0xad, 0x98, 0xcf, 0x29, 0x05, 0xb8, 0x12, 0xd3, 0x53, 0x05, 0x31, 0xbb, 0x3a, 0xc8, 0x99, 0x39, 0x1a, 0xbd, 0x1e, 0xaf, 0x4a, 0x3e, 0xbe, 0xd9, 0x6a, 0xc6, 0x12, 0x6f, 0x58, }; static const unsigned char xdh_wei25519_335_sharedsecret[] = { 0x2d, 0x49, 0xb0, 0x9f, 0x81, 0xf3, 0xf6, 0xfa, 0xb2, 0xc6, 0x7e, 0x32, 0xf1, 0xbc, 0xea, 0xd2, 0xad, 0x09, 0xac, 0x9e, 0x0d, 0x64, 0x2b, 0x08, 0x73, 0xbe, 0xcf, 0xb6, 0x4d, 0xe2, 0xab, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_335 = { .name = "xdh_wei25519_335", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_335_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_335_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_335_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 336 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 336 for XDH, tcId is 337 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_336_peerpubkey[] = { 0x08, 0x35, 0x29, 0x36, 0xc8, 0xaf, 0xd8, 0x54, 0x3a, 0xc9, 0x5f, 0x24, 0xbc, 0xe9, 0xa0, 0x7e, 0x3e, 0x32, 0x35, 0x76, 0x3e, 0xa5, 0x12, 0xa5, 0x84, 0x29, 0x89, 0x67, 0xb8, 0x3c, 0x07, 0x0a, }; static const unsigned char xdh_wei25519_336_privkey[] = { 0x10, 0x6b, 0x36, 0x34, 0x4c, 0xc4, 0xa5, 0xa3, 0x89, 0xd8, 0x16, 0x81, 0x37, 0x78, 0x68, 0x06, 0xff, 0x03, 0xcd, 0x4a, 0x00, 0xf8, 0x63, 0x6b, 0xb7, 0xe7, 0x58, 0xd4, 0x56, 0x15, 0x1d, 0x59, }; static const unsigned char xdh_wei25519_336_sharedsecret[] = { 0xa1, 0x99, 0x36, 0x8e, 0x68, 0x3c, 0x30, 0x36, 0xa4, 0x8f, 0x4c, 0x5f, 0x32, 0xb3, 0x2a, 0x54, 0x7d, 0xd3, 0x9f, 0x3d, 0x10, 0x07, 0xca, 0x0a, 0x0b, 0xeb, 0xca, 0xd0, 0xa8, 0xac, 0x6f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_336 = { .name = "xdh_wei25519_336", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_336_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_336_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_336_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 337 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 337 for XDH, tcId is 338 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_337_peerpubkey[] = { 0x73, 0xbd, 0xee, 0xf8, 0xcc, 0x04, 0x4f, 0x5a, 0xd8, 0xd6, 0xa2, 0x41, 0x27, 0x3e, 0x19, 0x95, 0xe0, 0x00, 0x7d, 0xc9, 0xe6, 0x57, 0x90, 0x46, 0xdf, 0x86, 0xaa, 0x6c, 0xd9, 0x7f, 0x5d, 0x2a, }; static const unsigned char xdh_wei25519_337_privkey[] = { 0x88, 0xf9, 0xa0, 0xd2, 0x35, 0x4a, 0xdf, 0xcb, 0xab, 0x2d, 0x12, 0xa0, 0xe0, 0x9b, 0x3c, 0x77, 0x19, 0xc9, 0x44, 0x38, 0x4e, 0xdf, 0xba, 0xa2, 0x7f, 0xe0, 0x73, 0x1c, 0xb9, 0xc6, 0xfc, 0x5a, }; static const unsigned char xdh_wei25519_337_sharedsecret[] = { 0x5a, 0xa7, 0x50, 0xde, 0x42, 0x07, 0x86, 0x9e, 0xc7, 0xfd, 0xda, 0xb3, 0x4c, 0x63, 0x95, 0x59, 0xb1, 0xeb, 0x27, 0xef, 0x24, 0x4a, 0xaf, 0x2a, 0x70, 0x2c, 0x84, 0x96, 0x3b, 0x6d, 0x6e, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_337 = { .name = "xdh_wei25519_337", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_337_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_337_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_337_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 338 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 338 for XDH, tcId is 339 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_338_peerpubkey[] = { 0x7f, 0xdd, 0x39, 0x9b, 0x6e, 0xf4, 0xa3, 0xf5, 0xca, 0xde, 0x62, 0xe7, 0x41, 0x13, 0xb2, 0x9c, 0x27, 0xdb, 0x15, 0x20, 0x3f, 0x9b, 0x8e, 0x39, 0x8d, 0x2c, 0x6f, 0x23, 0x00, 0x51, 0xcd, 0x2b, }; static const unsigned char xdh_wei25519_338_privkey[] = { 0x08, 0x11, 0xf2, 0xe5, 0x60, 0xa2, 0x05, 0xe9, 0x6e, 0x28, 0xbc, 0x31, 0x2b, 0xca, 0xd4, 0x5f, 0xe8, 0xbe, 0xfe, 0xfb, 0x7f, 0x6d, 0xa5, 0xfa, 0xa0, 0x35, 0x31, 0x1e, 0xed, 0x80, 0xb2, 0x51, }; static const unsigned char xdh_wei25519_338_sharedsecret[] = { 0xa6, 0x94, 0x7e, 0xe0, 0x89, 0xff, 0x28, 0xce, 0x36, 0x44, 0xea, 0x4c, 0x6e, 0xb3, 0x3d, 0xbb, 0x20, 0xc7, 0x97, 0x4f, 0xb8, 0xd8, 0x53, 0xf4, 0xe1, 0x46, 0xe2, 0x46, 0x61, 0x77, 0x50, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_338 = { .name = "xdh_wei25519_338", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_338_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_338_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_338_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 339 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 339 for XDH, tcId is 340 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_339_peerpubkey[] = { 0xf0, 0x17, 0x3a, 0x96, 0x27, 0x3c, 0x64, 0x6f, 0xb6, 0x3d, 0x13, 0xb0, 0xc6, 0x86, 0xb8, 0x9e, 0x37, 0x67, 0x6f, 0xcc, 0x71, 0x78, 0xfa, 0xf4, 0xa6, 0xf4, 0x60, 0x1f, 0x30, 0x68, 0x15, 0x0d, }; static const unsigned char xdh_wei25519_339_privkey[] = { 0x40, 0xad, 0x98, 0x40, 0x66, 0xa6, 0x90, 0x80, 0xfb, 0x4a, 0x31, 0x58, 0x78, 0xe7, 0x36, 0x09, 0x6c, 0xc5, 0x77, 0xda, 0xe4, 0xc4, 0x2c, 0x40, 0xd8, 0x93, 0xd8, 0xc2, 0x17, 0x3b, 0x78, 0x5a, }; static const unsigned char xdh_wei25519_339_sharedsecret[] = { 0x23, 0x0b, 0x6a, 0xa1, 0xf2, 0x4d, 0xf9, 0x0a, 0x60, 0x83, 0x91, 0x79, 0xba, 0x5e, 0x9d, 0xe6, 0x73, 0xcf, 0xf1, 0x1c, 0xab, 0x59, 0xe8, 0x02, 0x0b, 0x20, 0x62, 0x6c, 0x22, 0x09, 0x0b, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_339 = { .name = "xdh_wei25519_339", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_339_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_339_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_339_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 340 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 340 for XDH, tcId is 341 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_340_peerpubkey[] = { 0x25, 0x5b, 0xbe, 0x72, 0x30, 0xcd, 0x2b, 0xee, 0x90, 0xd2, 0x83, 0xf4, 0x18, 0xa4, 0x74, 0xab, 0x30, 0x14, 0x6c, 0xe5, 0xe8, 0x01, 0xa0, 0xf5, 0xed, 0x60, 0xee, 0x8d, 0xef, 0x3e, 0x65, 0x58, }; static const unsigned char xdh_wei25519_340_privkey[] = { 0x48, 0xb1, 0x0c, 0xd4, 0x56, 0x39, 0xbb, 0xbf, 0x83, 0xa0, 0xb2, 0x8f, 0x0d, 0xd3, 0xad, 0x0b, 0x7b, 0x00, 0xca, 0xf4, 0x8d, 0x05, 0x53, 0x44, 0x80, 0x55, 0x6a, 0x82, 0x78, 0x11, 0x6d, 0x59, }; static const unsigned char xdh_wei25519_340_sharedsecret[] = { 0x22, 0x99, 0xe3, 0x84, 0x95, 0x8b, 0xed, 0xd2, 0xc3, 0xd3, 0x67, 0x75, 0x91, 0x55, 0x13, 0x6d, 0x1f, 0xf7, 0x6e, 0x44, 0x34, 0xdc, 0x1d, 0x9e, 0x82, 0x12, 0xcd, 0xca, 0x52, 0xea, 0x84, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_340 = { .name = "xdh_wei25519_340", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_340_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_340_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_340_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 341 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 341 for XDH, tcId is 342 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_341_peerpubkey[] = { 0x21, 0xac, 0xcf, 0x97, 0xb7, 0xfe, 0xe1, 0x73, 0x00, 0x1c, 0xcf, 0xca, 0xb2, 0x16, 0x37, 0xc1, 0x75, 0xef, 0x51, 0x86, 0xff, 0x00, 0x02, 0x50, 0x2b, 0x3d, 0x52, 0xfa, 0x8c, 0x51, 0xe7, 0x66, }; static const unsigned char xdh_wei25519_341_privkey[] = { 0xe8, 0xfa, 0xd7, 0x79, 0x46, 0xe0, 0xde, 0x4c, 0xf4, 0x23, 0x67, 0x98, 0x49, 0x0b, 0x83, 0x89, 0x48, 0xb8, 0x2c, 0xfb, 0x29, 0xf8, 0xe7, 0x68, 0x60, 0x01, 0xb1, 0x1e, 0x8d, 0x96, 0x16, 0x57, }; static const unsigned char xdh_wei25519_341_sharedsecret[] = { 0x97, 0xfc, 0xa0, 0x65, 0xac, 0xd3, 0xb9, 0x43, 0xc6, 0x54, 0x99, 0x7c, 0x0f, 0x12, 0x57, 0x67, 0xf9, 0xab, 0xc4, 0xb7, 0xc9, 0xd8, 0xb7, 0x24, 0x69, 0x42, 0xf1, 0x2b, 0xe6, 0x5d, 0x92, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_341 = { .name = "xdh_wei25519_341", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_341_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_341_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_341_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 342 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 342 for XDH, tcId is 343 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_342_peerpubkey[] = { 0x5b, 0x40, 0x77, 0x7e, 0x80, 0xff, 0x6e, 0xfe, 0x37, 0x8b, 0x5e, 0x81, 0x95, 0x9c, 0xcd, 0xcb, 0xb4, 0xca, 0x04, 0xb9, 0xd7, 0x7e, 0xdc, 0x6b, 0x30, 0x06, 0xde, 0xb9, 0x99, 0x26, 0xfa, 0x22, }; static const unsigned char xdh_wei25519_342_privkey[] = { 0xd0, 0x7b, 0xab, 0xed, 0x90, 0xb2, 0x7c, 0x4e, 0xac, 0xaf, 0xdc, 0x87, 0x17, 0x03, 0xbd, 0x03, 0x6b, 0x72, 0x0a, 0x82, 0xb5, 0xc0, 0x94, 0xdc, 0xeb, 0x47, 0x49, 0xee, 0xae, 0xb8, 0x10, 0x52, }; static const unsigned char xdh_wei25519_342_sharedsecret[] = { 0xf4, 0x82, 0x53, 0x1e, 0x52, 0x3d, 0x05, 0x8d, 0x6e, 0x3f, 0xe3, 0xa4, 0x27, 0xfc, 0x40, 0xdb, 0xce, 0x6d, 0xd6, 0xf1, 0x8d, 0xef, 0xbc, 0x09, 0x7b, 0xfd, 0x7d, 0x0c, 0xdd, 0x2f, 0x71, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_342 = { .name = "xdh_wei25519_342", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_342_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_342_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_342_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 343 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 343 for XDH, tcId is 344 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_343_peerpubkey[] = { 0x48, 0xd9, 0x52, 0xa2, 0x92, 0x4f, 0xf1, 0x67, 0xf0, 0x37, 0x70, 0x74, 0x69, 0xec, 0x71, 0x5d, 0xa7, 0x2b, 0xb6, 0x5f, 0x49, 0xaa, 0xf4, 0xdc, 0xe7, 0xec, 0x5a, 0x17, 0x03, 0x9d, 0xdb, 0x42, }; static const unsigned char xdh_wei25519_343_privkey[] = { 0x68, 0xa3, 0x04, 0x9a, 0xef, 0x8c, 0x06, 0x9b, 0x90, 0x6c, 0xf7, 0x43, 0x28, 0x6d, 0x39, 0x52, 0xa8, 0x88, 0xbf, 0x2b, 0x9b, 0x93, 0xbc, 0x87, 0x75, 0xfb, 0x5a, 0xdd, 0xe0, 0x6e, 0x9f, 0x53, }; static const unsigned char xdh_wei25519_343_sharedsecret[] = { 0xde, 0x88, 0xaf, 0x90, 0x5d, 0x37, 0x41, 0x7d, 0x83, 0x31, 0x10, 0x53, 0x45, 0xda, 0xba, 0xab, 0x9f, 0xd2, 0xd3, 0xcb, 0x1e, 0xe9, 0x02, 0x91, 0x1c, 0x1c, 0x8e, 0xae, 0x29, 0x91, 0xd9, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_343 = { .name = "xdh_wei25519_343", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_343_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_343_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_343_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 344 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 344 for XDH, tcId is 345 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_344_peerpubkey[] = { 0xa5, 0xef, 0x26, 0x5c, 0xcb, 0xc5, 0xc5, 0x40, 0x21, 0xd3, 0x4f, 0x82, 0x36, 0x4a, 0x46, 0x24, 0x03, 0x0f, 0x5b, 0x9d, 0x5f, 0xf7, 0xe6, 0x3d, 0x7a, 0x37, 0x9e, 0x53, 0x3d, 0xe5, 0xe7, 0x42, }; static const unsigned char xdh_wei25519_344_privkey[] = { 0x18, 0xd8, 0xc3, 0xd2, 0xa4, 0xe3, 0x66, 0x18, 0x5a, 0x85, 0xc3, 0x86, 0x98, 0xd9, 0x37, 0xe1, 0x3b, 0xbb, 0xaf, 0xdb, 0xda, 0xb1, 0xa0, 0xa8, 0x3d, 0xbb, 0xe8, 0x9b, 0xad, 0xf7, 0x07, 0x56, }; static const unsigned char xdh_wei25519_344_sharedsecret[] = { 0x07, 0x5d, 0x18, 0xcc, 0xc9, 0x84, 0x76, 0x1b, 0x70, 0x75, 0x22, 0x79, 0xe7, 0xf6, 0xa7, 0x57, 0x20, 0x8f, 0x6c, 0x11, 0xe2, 0x94, 0x80, 0xc3, 0x2b, 0x40, 0xab, 0xa1, 0x28, 0xa4, 0xd5, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_344 = { .name = "xdh_wei25519_344", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_344_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_344_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_344_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 345 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 345 for XDH, tcId is 346 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_345_peerpubkey[] = { 0x90, 0x51, 0xe5, 0x5a, 0x40, 0x50, 0xef, 0x4d, 0xce, 0x0b, 0x0c, 0x40, 0x81, 0x1f, 0x16, 0x37, 0x1e, 0x8b, 0x16, 0x93, 0x25, 0x41, 0xda, 0x37, 0xf0, 0x69, 0x40, 0x6d, 0x84, 0x8e, 0xa4, 0x24, }; static const unsigned char xdh_wei25519_345_privkey[] = { 0x18, 0xef, 0xcd, 0x5f, 0xe3, 0x45, 0xbe, 0x49, 0x85, 0x31, 0x66, 0x95, 0x39, 0x1d, 0x2c, 0x95, 0x2e, 0xee, 0x13, 0xb0, 0xe1, 0xee, 0x75, 0x84, 0x72, 0x1f, 0xbe, 0x8b, 0x19, 0xd4, 0xfc, 0x5f, }; static const unsigned char xdh_wei25519_345_sharedsecret[] = { 0x21, 0x2d, 0xbf, 0x9b, 0xc8, 0x9b, 0x68, 0x73, 0xa6, 0x0d, 0xfc, 0x87, 0x31, 0xa1, 0x0b, 0xe1, 0x1a, 0xb2, 0xdc, 0xa4, 0xb1, 0x72, 0x14, 0x2e, 0x6c, 0x9f, 0x06, 0x61, 0x4c, 0xd7, 0x28, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_345 = { .name = "xdh_wei25519_345", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_345_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_345_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_345_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 346 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 346 for XDH, tcId is 347 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_346_peerpubkey[] = { 0x41, 0x9a, 0xdb, 0x8b, 0x1f, 0x2f, 0x87, 0xde, 0x01, 0x6b, 0x0c, 0x78, 0xd1, 0x02, 0x9a, 0x21, 0x04, 0x92, 0xeb, 0x8c, 0xad, 0xd1, 0x64, 0xb1, 0x2c, 0xd6, 0x5b, 0x1d, 0x57, 0xbf, 0x36, 0x34, }; static const unsigned char xdh_wei25519_346_privkey[] = { 0x28, 0xec, 0x7c, 0x69, 0x3e, 0x22, 0x2c, 0x72, 0xac, 0x08, 0x15, 0xf1, 0xfd, 0x36, 0x66, 0x13, 0x57, 0xe0, 0xa8, 0xda, 0x7b, 0xc9, 0x96, 0xda, 0xee, 0xea, 0xfc, 0xd2, 0x1c, 0x01, 0x34, 0x51, }; static const unsigned char xdh_wei25519_346_sharedsecret[] = { 0x37, 0x9f, 0x92, 0x21, 0xab, 0xeb, 0xf3, 0x58, 0x26, 0x81, 0xa0, 0xe8, 0x57, 0xf3, 0xda, 0x57, 0x8a, 0x1b, 0x01, 0x21, 0x98, 0x2b, 0x96, 0xf1, 0x4b, 0x94, 0xde, 0x5d, 0xc8, 0xb2, 0x45, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_346 = { .name = "xdh_wei25519_346", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_346_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_346_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_346_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 347 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 347 for XDH, tcId is 348 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_347_peerpubkey[] = { 0x13, 0xe0, 0x0d, 0xae, 0x3b, 0x1c, 0xcc, 0x97, 0xcc, 0xd6, 0x49, 0x08, 0x8c, 0x4a, 0x7f, 0x32, 0xca, 0x99, 0x76, 0x21, 0x4d, 0x64, 0x56, 0x67, 0xbd, 0x08, 0x20, 0x39, 0xbb, 0xd9, 0xab, 0x7a, }; static const unsigned char xdh_wei25519_347_privkey[] = { 0x78, 0xb3, 0x5e, 0x7a, 0xe5, 0x49, 0x30, 0x8b, 0x64, 0x14, 0xbb, 0x61, 0x01, 0x96, 0xc0, 0x4f, 0x2a, 0xf7, 0x9d, 0x42, 0x66, 0xc8, 0x6e, 0x8a, 0x9c, 0xe0, 0xc0, 0x2b, 0xbd, 0xb8, 0x8d, 0x59, }; static const unsigned char xdh_wei25519_347_sharedsecret[] = { 0xcf, 0xf2, 0x59, 0x6b, 0x7a, 0xfe, 0x36, 0xf4, 0xca, 0xb9, 0xc7, 0x01, 0x33, 0xd7, 0xaa, 0x0f, 0x99, 0x14, 0xf9, 0xab, 0xc6, 0xc3, 0xb9, 0x89, 0x54, 0x72, 0xe2, 0xa5, 0x89, 0x4a, 0x80, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_347 = { .name = "xdh_wei25519_347", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_347_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_347_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_347_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 348 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 348 for XDH, tcId is 349 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_348_peerpubkey[] = { 0x44, 0x1c, 0x48, 0x7a, 0x48, 0xf0, 0xa4, 0x98, 0x9d, 0x93, 0x1c, 0xd7, 0x7a, 0x61, 0x42, 0xa0, 0xa1, 0x3d, 0x1a, 0xab, 0xad, 0x82, 0x62, 0x3b, 0xa8, 0xd9, 0x4b, 0x5c, 0x37, 0x4f, 0x4f, 0x08, }; static const unsigned char xdh_wei25519_348_privkey[] = { 0xf0, 0xde, 0x9c, 0x5f, 0x8a, 0x93, 0x72, 0xf3, 0x0c, 0x41, 0xca, 0x47, 0xa5, 0x57, 0x43, 0xce, 0x69, 0x7d, 0x46, 0xe3, 0x2e, 0x7a, 0x9a, 0xe2, 0x6d, 0x32, 0x50, 0x3f, 0xd5, 0x22, 0x27, 0x67, }; static const unsigned char xdh_wei25519_348_sharedsecret[] = { 0xd4, 0x7c, 0x46, 0xb4, 0x32, 0x9b, 0xed, 0xcb, 0xc1, 0x98, 0x6b, 0x3c, 0x6d, 0x2a, 0xa9, 0xbc, 0xd0, 0x27, 0xd6, 0xb6, 0x89, 0x25, 0x17, 0x5d, 0x35, 0xbb, 0xb5, 0x36, 0xb3, 0x44, 0x08, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_348 = { .name = "xdh_wei25519_348", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_348_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_348_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_348_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 349 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 349 for XDH, tcId is 350 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_349_peerpubkey[] = { 0x0e, 0x67, 0xee, 0x5c, 0x6b, 0x65, 0xaa, 0x80, 0x22, 0x59, 0x81, 0x0b, 0x26, 0x05, 0xf8, 0xd7, 0xac, 0xcf, 0x9b, 0x49, 0xbf, 0x14, 0xcb, 0x4a, 0x53, 0x69, 0x28, 0xe8, 0x83, 0x17, 0x29, 0x15, }; static const unsigned char xdh_wei25519_349_privkey[] = { 0x68, 0x6b, 0xe5, 0xa1, 0x2b, 0x31, 0x04, 0x20, 0xf9, 0xbf, 0xb2, 0x09, 0x38, 0x1f, 0xd4, 0x59, 0xa5, 0xcc, 0xd5, 0x5c, 0x75, 0x2b, 0x88, 0x33, 0x7e, 0xbe, 0x89, 0xe1, 0x92, 0x1a, 0xe7, 0x65, }; static const unsigned char xdh_wei25519_349_sharedsecret[] = { 0x1d, 0x73, 0x01, 0x58, 0xda, 0x88, 0x05, 0x33, 0xdb, 0xf1, 0xe6, 0xc6, 0x4a, 0x8e, 0x99, 0xf9, 0x16, 0x96, 0x11, 0x66, 0x09, 0x69, 0xb0, 0xa8, 0x4f, 0xb4, 0x2d, 0xd8, 0xdc, 0x2e, 0xfa, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_349 = { .name = "xdh_wei25519_349", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_349_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_349_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_349_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 350 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 350 for XDH, tcId is 351 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_350_peerpubkey[] = { 0xdc, 0x9d, 0x7e, 0xf1, 0xcb, 0x49, 0xc1, 0x91, 0xe2, 0x58, 0x66, 0x3a, 0x94, 0xe7, 0x31, 0xb9, 0xc0, 0x66, 0xc1, 0x1a, 0x17, 0xd8, 0xb5, 0xfd, 0xea, 0x19, 0x87, 0xf5, 0xd9, 0xa0, 0x05, 0x68, }; static const unsigned char xdh_wei25519_350_privkey[] = { 0xa0, 0xc0, 0x33, 0x7c, 0x5b, 0xec, 0x5c, 0xa2, 0x4d, 0xea, 0x2f, 0x1d, 0x70, 0x14, 0x98, 0xae, 0x2b, 0xad, 0x87, 0xb8, 0x26, 0x9a, 0xc2, 0x3b, 0xe1, 0x13, 0x92, 0x9f, 0xe4, 0xeb, 0x19, 0x63, }; static const unsigned char xdh_wei25519_350_sharedsecret[] = { 0x07, 0x73, 0x25, 0x29, 0xa6, 0x28, 0xba, 0xde, 0xb8, 0xd7, 0x49, 0x46, 0x77, 0x5b, 0xa4, 0x57, 0xc7, 0x00, 0xbf, 0x83, 0x90, 0xf4, 0x6b, 0xc5, 0x23, 0xfb, 0x64, 0xe4, 0x71, 0xc8, 0x6a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_350 = { .name = "xdh_wei25519_350", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_350_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_350_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_350_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 351 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 351 for XDH, tcId is 352 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_351_peerpubkey[] = { 0x55, 0x6b, 0x3e, 0xe7, 0xcd, 0x0d, 0x37, 0x97, 0x90, 0x56, 0xec, 0xc1, 0xf5, 0x6a, 0x56, 0x77, 0xa4, 0x93, 0x5b, 0xe6, 0xe4, 0x9c, 0xe2, 0x8e, 0x39, 0x4f, 0x8b, 0xfb, 0x73, 0xd1, 0x3b, 0x6a, }; static const unsigned char xdh_wei25519_351_privkey[] = { 0xb8, 0x82, 0x4c, 0xfc, 0xe5, 0x55, 0x0b, 0x5e, 0x17, 0xb1, 0x2f, 0x74, 0xe2, 0x84, 0x59, 0xca, 0xb3, 0x4e, 0xb4, 0x98, 0x95, 0xcc, 0x36, 0xbf, 0x64, 0x5a, 0x0c, 0xf0, 0x0e, 0x3d, 0x2d, 0x67, }; static const unsigned char xdh_wei25519_351_sharedsecret[] = { 0x9e, 0x3a, 0xae, 0x35, 0xfa, 0x1c, 0xc8, 0x0a, 0x35, 0x98, 0x78, 0xe2, 0x12, 0x18, 0x02, 0x94, 0xff, 0x66, 0x08, 0xdc, 0xb4, 0x92, 0x9e, 0x91, 0x90, 0x1a, 0xbb, 0xf9, 0x76, 0xf3, 0x9c, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_351 = { .name = "xdh_wei25519_351", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_351_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_351_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_351_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 352 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 352 for XDH, tcId is 353 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_352_peerpubkey[] = { 0x12, 0x11, 0xbe, 0x58, 0x09, 0x60, 0x5b, 0x54, 0xf5, 0x72, 0x7d, 0x23, 0x3c, 0x78, 0x3a, 0x2a, 0x19, 0x9a, 0x3d, 0xb2, 0x4e, 0xd4, 0x49, 0x9d, 0x7b, 0x48, 0xc7, 0x60, 0x3e, 0x4a, 0xd3, 0x71, }; static const unsigned char xdh_wei25519_352_privkey[] = { 0xe0, 0x2d, 0xba, 0x73, 0x35, 0xaf, 0x8f, 0xb9, 0x16, 0x8d, 0xe2, 0xfc, 0xd3, 0x10, 0xc2, 0xe2, 0xdf, 0x4a, 0x3e, 0x25, 0x26, 0x3e, 0x0a, 0xb9, 0xad, 0xa8, 0x7b, 0xfb, 0x82, 0x58, 0xa6, 0x6b, }; static const unsigned char xdh_wei25519_352_sharedsecret[] = { 0x88, 0x0f, 0x6d, 0xc7, 0x32, 0x20, 0x30, 0x7a, 0x59, 0x76, 0x70, 0xf3, 0x28, 0x2f, 0xc3, 0x66, 0xaa, 0x66, 0xf0, 0x4a, 0x0a, 0x9c, 0xa3, 0x0d, 0x89, 0x5f, 0xdd, 0xe3, 0x37, 0xaf, 0xe8, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_352 = { .name = "xdh_wei25519_352", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_352_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_352_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_352_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 353 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 353 for XDH, tcId is 354 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_353_peerpubkey[] = { 0x50, 0x5e, 0x78, 0x51, 0xe2, 0x35, 0x2e, 0x31, 0x1c, 0xa9, 0x53, 0x6a, 0x1f, 0xe6, 0xc0, 0xd9, 0x5d, 0x64, 0x81, 0x97, 0x37, 0x4c, 0xe0, 0x8e, 0x4b, 0x8a, 0x0f, 0xbd, 0xdf, 0x62, 0x91, 0x0b, }; static const unsigned char xdh_wei25519_353_privkey[] = { 0x30, 0xce, 0x71, 0xf8, 0x56, 0xce, 0xb8, 0x74, 0xfe, 0x58, 0x00, 0x39, 0xca, 0x67, 0xe8, 0x96, 0xe6, 0xd0, 0x82, 0x07, 0xa7, 0x3c, 0xd5, 0x5d, 0xb7, 0x05, 0x91, 0x27, 0xc1, 0x34, 0x2b, 0x67, }; static const unsigned char xdh_wei25519_353_sharedsecret[] = { 0xea, 0x62, 0xb0, 0xed, 0xa2, 0xd7, 0xb2, 0x49, 0xa4, 0x24, 0x17, 0x67, 0x5a, 0x2b, 0x82, 0xb1, 0xe6, 0xc0, 0xd6, 0x9a, 0x4e, 0x7c, 0xef, 0x33, 0x64, 0x48, 0x84, 0x4d, 0x2f, 0x43, 0x22, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_353 = { .name = "xdh_wei25519_353", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_353_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_353_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_353_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 354 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 354 for XDH, tcId is 355 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_354_peerpubkey[] = { 0xdd, 0xf4, 0xe9, 0x05, 0x03, 0xdd, 0x82, 0x61, 0x0c, 0x3a, 0x03, 0x4b, 0x92, 0x5a, 0x88, 0x0b, 0x72, 0xdb, 0xde, 0x30, 0xc6, 0x26, 0x00, 0x92, 0x02, 0xb3, 0x58, 0xc6, 0xeb, 0x00, 0xf4, 0x18, }; static const unsigned char xdh_wei25519_354_privkey[] = { 0xe8, 0x81, 0xf4, 0x6d, 0x41, 0x41, 0xea, 0x69, 0xa6, 0x71, 0x64, 0x9b, 0x93, 0xb6, 0x3e, 0x97, 0xdc, 0x67, 0xc1, 0x25, 0x21, 0xd4, 0x45, 0x86, 0x2f, 0x08, 0x7b, 0x26, 0x26, 0xfa, 0x2b, 0x6f, }; static const unsigned char xdh_wei25519_354_sharedsecret[] = { 0x30, 0x2c, 0x4f, 0x83, 0xb5, 0xc5, 0xbf, 0x30, 0xc1, 0xe3, 0xaf, 0xd9, 0xf6, 0x43, 0xf6, 0x5b, 0xfe, 0x56, 0xca, 0x16, 0x28, 0xee, 0x04, 0x2b, 0x1a, 0xb7, 0x39, 0x3b, 0xaf, 0xe3, 0x6c, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_354 = { .name = "xdh_wei25519_354", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_354_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_354_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_354_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 355 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 355 for XDH, tcId is 356 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_355_peerpubkey[] = { 0x0e, 0x9c, 0x44, 0x31, 0x99, 0x9e, 0xf1, 0xce, 0x17, 0x7e, 0x90, 0x0d, 0x37, 0xec, 0x6a, 0xe6, 0x65, 0xe3, 0x87, 0xe2, 0xd4, 0xfa, 0x27, 0xcb, 0xa8, 0xe7, 0xba, 0xeb, 0xc6, 0x5c, 0x65, 0x20, }; static const unsigned char xdh_wei25519_355_privkey[] = { 0xe8, 0x79, 0x75, 0x26, 0x83, 0xcd, 0x73, 0xa8, 0x34, 0x25, 0x1c, 0x65, 0x74, 0x91, 0x35, 0xe0, 0x6e, 0xb9, 0x06, 0x4d, 0x3a, 0xe3, 0x50, 0x95, 0xd8, 0x8c, 0xde, 0x14, 0xa0, 0x2b, 0xa3, 0x66, }; static const unsigned char xdh_wei25519_355_sharedsecret[] = { 0x8f, 0xf2, 0xac, 0x65, 0xc8, 0x5e, 0xe2, 0xfe, 0x94, 0x52, 0xfc, 0xe4, 0x60, 0xf8, 0xc8, 0x7f, 0x95, 0x70, 0xd7, 0x69, 0xca, 0xdd, 0xdc, 0x87, 0xfe, 0x93, 0xef, 0x8b, 0x76, 0x57, 0xc7, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_355 = { .name = "xdh_wei25519_355", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_355_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_355_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_355_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 356 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 356 for XDH, tcId is 357 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_356_peerpubkey[] = { 0x57, 0x61, 0xd6, 0xc0, 0x86, 0x24, 0x10, 0x4d, 0x41, 0x17, 0xff, 0x17, 0xc7, 0x5e, 0x92, 0x11, 0xa5, 0x91, 0xc9, 0xca, 0x9a, 0xec, 0xca, 0x3a, 0x66, 0x5a, 0x7e, 0xd8, 0x44, 0x19, 0x52, 0x25, }; static const unsigned char xdh_wei25519_356_privkey[] = { 0x20, 0x57, 0x6a, 0xb4, 0x56, 0xda, 0x26, 0xc1, 0x8d, 0xa5, 0xfb, 0xf0, 0x6e, 0xc4, 0xd1, 0x65, 0x64, 0xe1, 0x11, 0xbf, 0xae, 0x2a, 0x92, 0xb9, 0xf6, 0xe1, 0x92, 0x7c, 0x15, 0x77, 0x0a, 0x62, }; static const unsigned char xdh_wei25519_356_sharedsecret[] = { 0x97, 0xc9, 0x1a, 0x23, 0xc3, 0xe4, 0xf3, 0xff, 0x72, 0x7d, 0x18, 0x8a, 0x35, 0x2b, 0x67, 0xad, 0x49, 0x0b, 0x62, 0x38, 0x15, 0x66, 0xfb, 0x3e, 0x11, 0x1c, 0xb6, 0x7a, 0xa9, 0xe3, 0x43, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_356 = { .name = "xdh_wei25519_356", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_356_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_356_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_356_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 357 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 357 for XDH, tcId is 358 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_357_peerpubkey[] = { 0xe9, 0x2d, 0x45, 0xb3, 0xec, 0x56, 0x53, 0x12, 0x66, 0x30, 0x3c, 0x51, 0x13, 0xc4, 0x63, 0x10, 0xc4, 0x16, 0x50, 0x00, 0x10, 0x65, 0xb4, 0xd8, 0x7b, 0x02, 0xb3, 0x82, 0xfc, 0x82, 0x66, 0x2e, }; static const unsigned char xdh_wei25519_357_privkey[] = { 0xa8, 0x46, 0x74, 0x18, 0xb9, 0x24, 0xc2, 0xc0, 0x03, 0xc5, 0x6e, 0x16, 0x10, 0xa3, 0x54, 0x69, 0x35, 0x63, 0x60, 0xc2, 0x9d, 0x52, 0xaa, 0x55, 0x7a, 0x2b, 0xb3, 0x0f, 0xb8, 0xa9, 0xa4, 0x64, }; static const unsigned char xdh_wei25519_357_sharedsecret[] = { 0x24, 0x34, 0x6b, 0xb1, 0x33, 0xdd, 0x9a, 0xe3, 0xff, 0x02, 0xd2, 0xf5, 0x05, 0x10, 0xb3, 0xa9, 0x2d, 0x90, 0x30, 0x83, 0x4d, 0x60, 0xe5, 0xaf, 0x08, 0xb0, 0xee, 0xbb, 0xf1, 0xd4, 0xdd, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_357 = { .name = "xdh_wei25519_357", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_357_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_357_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_357_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 358 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 358 for XDH, tcId is 359 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_358_peerpubkey[] = { 0xf3, 0x8b, 0x63, 0x45, 0x9d, 0x05, 0xe4, 0x22, 0xad, 0x02, 0x4c, 0x2d, 0xce, 0xa5, 0x02, 0x9a, 0x0a, 0x7a, 0x6b, 0x6c, 0x4c, 0x1d, 0x20, 0x93, 0xce, 0x55, 0x6a, 0xab, 0x33, 0x1e, 0x25, 0x40, }; static const unsigned char xdh_wei25519_358_privkey[] = { 0xf0, 0xf5, 0xe1, 0x62, 0x92, 0x3d, 0x7c, 0x29, 0x93, 0x88, 0xbe, 0xd7, 0x81, 0x19, 0x94, 0x17, 0xad, 0xe0, 0x97, 0x47, 0x55, 0x15, 0x16, 0x2d, 0x95, 0x90, 0x97, 0x6a, 0x19, 0x6f, 0xb1, 0x6f, }; static const unsigned char xdh_wei25519_358_sharedsecret[] = { 0xb3, 0x45, 0x3c, 0x9c, 0x82, 0xa2, 0xd1, 0xd9, 0x56, 0x15, 0x6d, 0xe2, 0x39, 0x9c, 0xb7, 0x0d, 0xd4, 0xe1, 0xec, 0x53, 0xae, 0xa9, 0x67, 0xe0, 0x35, 0x75, 0x3c, 0x1c, 0xda, 0xe1, 0x3c, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_358 = { .name = "xdh_wei25519_358", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_358_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_358_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_358_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 359 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 359 for XDH, tcId is 360 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_359_peerpubkey[] = { 0xa7, 0xde, 0xd0, 0xee, 0xa4, 0x5a, 0x40, 0x0b, 0x8f, 0x56, 0x37, 0x15, 0x4d, 0x42, 0x97, 0x4a, 0xa9, 0x8c, 0x92, 0x96, 0x23, 0x14, 0xd8, 0x22, 0xef, 0x88, 0xb0, 0x13, 0x83, 0xa9, 0xda, 0x4d, }; static const unsigned char xdh_wei25519_359_privkey[] = { 0x60, 0x8f, 0xcf, 0x78, 0x7f, 0xe7, 0x89, 0x64, 0x4a, 0x09, 0xbc, 0xab, 0x95, 0x8f, 0x07, 0x37, 0xaa, 0x81, 0xa9, 0xe2, 0x9d, 0x50, 0x5f, 0x51, 0x03, 0x5c, 0x78, 0xe3, 0x74, 0xb9, 0xe4, 0x6b, }; static const unsigned char xdh_wei25519_359_sharedsecret[] = { 0xeb, 0xeb, 0x0c, 0x7b, 0x7a, 0x41, 0x65, 0xcd, 0x02, 0xa2, 0x78, 0xf3, 0xa2, 0x22, 0xc2, 0x36, 0xee, 0xd8, 0x32, 0x66, 0xb8, 0x06, 0xd1, 0x34, 0x94, 0xc1, 0xc3, 0xf9, 0x8a, 0x2f, 0x34, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_359 = { .name = "xdh_wei25519_359", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_359_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_359_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_359_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 360 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 360 for XDH, tcId is 361 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_360_peerpubkey[] = { 0x7b, 0x0e, 0xcb, 0x4c, 0x72, 0xee, 0x14, 0x77, 0x89, 0xd7, 0x48, 0x13, 0xce, 0xd3, 0xeb, 0xe4, 0x0f, 0x45, 0xc3, 0xda, 0x52, 0x6e, 0xd1, 0x27, 0x29, 0x52, 0xe4, 0x53, 0xe4, 0x3b, 0x79, 0x6d, }; static const unsigned char xdh_wei25519_360_privkey[] = { 0x58, 0xa3, 0x39, 0x6d, 0x29, 0x1e, 0xb2, 0x35, 0x71, 0xb5, 0x2d, 0x98, 0xa3, 0x15, 0x49, 0xe5, 0x14, 0xe5, 0x01, 0xe8, 0xd0, 0x95, 0x8a, 0xd9, 0xf2, 0x5f, 0xe5, 0xa7, 0x6c, 0x50, 0x3e, 0x69, }; static const unsigned char xdh_wei25519_360_sharedsecret[] = { 0x92, 0x13, 0xa5, 0x3f, 0x22, 0xff, 0x0c, 0xb5, 0xec, 0xa8, 0x7b, 0x27, 0xb1, 0x93, 0xc7, 0x73, 0xbf, 0xdf, 0x4c, 0x01, 0xa1, 0x93, 0xa1, 0x1f, 0x37, 0xc1, 0x57, 0x47, 0x4e, 0x15, 0xcb, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_360 = { .name = "xdh_wei25519_360", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_360_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_360_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_360_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 361 for XDH, tcId is 362 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_361_peerpubkey[] = { 0xa2, 0x44, 0x41, 0x3d, 0xdc, 0x3a, 0x20, 0x5d, 0x03, 0x8d, 0x64, 0x26, 0x68, 0x33, 0xee, 0xa1, 0xef, 0xba, 0x51, 0xba, 0x62, 0xc9, 0xc6, 0xcd, 0xcd, 0xbe, 0x94, 0x3b, 0xe5, 0x2b, 0xb0, 0x0c, }; static const unsigned char xdh_wei25519_361_privkey[] = { 0xd8, 0x05, 0xa7, 0x01, 0x47, 0x55, 0xdd, 0x65, 0x6f, 0x98, 0xd2, 0xb3, 0x31, 0xf2, 0xd2, 0xd4, 0x91, 0x27, 0x25, 0xef, 0x3d, 0x03, 0x75, 0x2f, 0x26, 0xf7, 0x4d, 0xc1, 0xad, 0x61, 0x66, 0x6a, }; static const unsigned char xdh_wei25519_361_sharedsecret[] = { 0x66, 0x48, 0x4a, 0x41, 0x20, 0xe0, 0xeb, 0x0c, 0x7e, 0x05, 0x05, 0xe1, 0xd2, 0xc5, 0xd1, 0x5d, 0xe9, 0xb5, 0x2b, 0x72, 0xe0, 0x94, 0xc9, 0xba, 0xc8, 0x86, 0x34, 0x20, 0x0c, 0x55, 0x72, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_361 = { .name = "xdh_wei25519_361", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_361_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_361_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_361_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 362 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 362 for XDH, tcId is 363 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_362_peerpubkey[] = { 0xec, 0x3c, 0x8b, 0x0c, 0x10, 0xb1, 0xfa, 0x65, 0xdb, 0xbd, 0x17, 0xcf, 0x1b, 0xa5, 0xf8, 0x63, 0x81, 0x28, 0x47, 0x65, 0x70, 0x9b, 0x07, 0xc5, 0xf0, 0x42, 0x8e, 0x3d, 0x5b, 0xcd, 0x39, 0x20, }; static const unsigned char xdh_wei25519_362_privkey[] = { 0x40, 0xcb, 0x1f, 0xe0, 0x6b, 0x08, 0xf0, 0x68, 0xf7, 0x08, 0x0b, 0xa0, 0x7c, 0x69, 0x5e, 0xda, 0x91, 0xa2, 0xbe, 0xbe, 0xad, 0xd4, 0xdb, 0x95, 0xc9, 0x7d, 0xd7, 0xc9, 0x1a, 0xf2, 0x56, 0x6d, }; static const unsigned char xdh_wei25519_362_sharedsecret[] = { 0x38, 0x4f, 0x22, 0x21, 0x61, 0x8e, 0x71, 0xd4, 0x56, 0xb1, 0x55, 0x16, 0x51, 0xef, 0xdb, 0x70, 0x8a, 0x16, 0x1d, 0x7f, 0x89, 0xf5, 0x60, 0x4b, 0x27, 0xeb, 0x87, 0x2d, 0x4a, 0xa9, 0x32, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_362 = { .name = "xdh_wei25519_362", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_362_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_362_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_362_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 363 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 363 for XDH, tcId is 364 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_363_peerpubkey[] = { 0x63, 0x30, 0xd3, 0xe2, 0x8a, 0x8b, 0x61, 0x26, 0xac, 0xe1, 0x65, 0xa9, 0xdf, 0xcc, 0xc6, 0xe4, 0xbd, 0x40, 0xdb, 0xc9, 0x76, 0x8c, 0xfb, 0x16, 0x33, 0x0c, 0xb7, 0xf2, 0x7f, 0x90, 0x62, 0x30, }; static const unsigned char xdh_wei25519_363_privkey[] = { 0x80, 0x21, 0x46, 0x4c, 0x64, 0xc9, 0xd6, 0xd3, 0xc0, 0xc8, 0x52, 0xf6, 0x97, 0x2d, 0x11, 0x96, 0x9b, 0x04, 0xc9, 0xe0, 0x66, 0x56, 0x2f, 0xa7, 0xf0, 0xd5, 0xfa, 0x0d, 0x98, 0xeb, 0xad, 0x62, }; static const unsigned char xdh_wei25519_363_sharedsecret[] = { 0x8d, 0xaf, 0x5f, 0x4b, 0x84, 0x73, 0x01, 0x44, 0xea, 0x8a, 0x53, 0xce, 0x39, 0xcc, 0x90, 0x7e, 0x39, 0xa8, 0x9e, 0xd0, 0x9f, 0x02, 0x02, 0xe7, 0xbe, 0x0d, 0x3b, 0xda, 0x38, 0xda, 0x66, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_363 = { .name = "xdh_wei25519_363", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_363_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_363_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_363_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 364 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 364 for XDH, tcId is 365 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_364_peerpubkey[] = { 0x86, 0x78, 0xaa, 0x29, 0xcb, 0xc0, 0x6e, 0x78, 0xb2, 0x18, 0xd2, 0x2a, 0x3e, 0x66, 0xc3, 0x8e, 0xc0, 0xda, 0x8f, 0xdb, 0x0f, 0x25, 0x70, 0xc5, 0x85, 0xc6, 0x25, 0x17, 0xc9, 0x70, 0x4f, 0x37, }; static const unsigned char xdh_wei25519_364_privkey[] = { 0x70, 0x7a, 0x2d, 0x71, 0x0b, 0x32, 0xf5, 0x5c, 0x6e, 0xba, 0x34, 0x89, 0x80, 0x20, 0xa2, 0xfb, 0x98, 0x1d, 0x61, 0xb1, 0xe8, 0x22, 0xfc, 0xa8, 0x4c, 0x47, 0xd9, 0x32, 0x1e, 0x27, 0x92, 0x68, }; static const unsigned char xdh_wei25519_364_sharedsecret[] = { 0xda, 0x8b, 0x7e, 0xba, 0x6f, 0x72, 0xc3, 0xf3, 0xef, 0x33, 0xd8, 0x98, 0x20, 0x93, 0x49, 0x2e, 0x06, 0xbe, 0x39, 0xbb, 0x0d, 0xb2, 0x9c, 0x46, 0x5d, 0x95, 0xa8, 0xe5, 0x2e, 0xf6, 0x43, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_364 = { .name = "xdh_wei25519_364", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_364_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_364_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_364_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 365 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 365 for XDH, tcId is 366 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_365_peerpubkey[] = { 0x30, 0x32, 0x89, 0xc2, 0xb1, 0x07, 0x9e, 0xa5, 0x94, 0x12, 0xfa, 0xcc, 0xfe, 0xba, 0x8c, 0x11, 0x3d, 0x22, 0x99, 0xb9, 0xdc, 0xfe, 0xde, 0xab, 0xc4, 0x26, 0x97, 0xb0, 0x82, 0x9c, 0x46, 0x58, }; static const unsigned char xdh_wei25519_365_privkey[] = { 0x20, 0x4a, 0x43, 0xde, 0xa7, 0x9d, 0x77, 0x95, 0x77, 0x58, 0x1b, 0x8c, 0x2a, 0x51, 0xbe, 0x66, 0xe1, 0xef, 0xfc, 0xe9, 0x64, 0x25, 0xb7, 0x42, 0x2b, 0x9c, 0xa6, 0x5b, 0xdf, 0x1a, 0x48, 0x67, }; static const unsigned char xdh_wei25519_365_sharedsecret[] = { 0x04, 0x19, 0xa7, 0x1a, 0x08, 0xd3, 0xfd, 0xd5, 0x74, 0xcb, 0xc9, 0x32, 0xe8, 0xf1, 0x60, 0x59, 0x33, 0xdd, 0xcd, 0xd9, 0x77, 0x4f, 0x56, 0x14, 0x26, 0x9b, 0x7e, 0xd8, 0x50, 0xc8, 0x65, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_365 = { .name = "xdh_wei25519_365", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_365_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_365_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_365_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 366 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 366 for XDH, tcId is 367 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_366_peerpubkey[] = { 0x3e, 0x6e, 0x16, 0xe0, 0x2d, 0x44, 0xeb, 0xd9, 0x46, 0x80, 0x83, 0x2e, 0x06, 0x5a, 0xed, 0xdc, 0xbb, 0x74, 0xaf, 0x64, 0xfb, 0xb7, 0xc6, 0xd8, 0x36, 0x7e, 0x76, 0x05, 0xbe, 0x13, 0xff, 0x5b, }; static const unsigned char xdh_wei25519_366_privkey[] = { 0x58, 0xe4, 0x74, 0x17, 0x35, 0xd2, 0x58, 0x93, 0x22, 0x15, 0x19, 0x47, 0xa1, 0xce, 0x2f, 0x58, 0x29, 0x90, 0x86, 0x26, 0x88, 0x69, 0x41, 0xcb, 0x16, 0x31, 0xd2, 0x5a, 0x8a, 0x68, 0x41, 0x69, }; static const unsigned char xdh_wei25519_366_sharedsecret[] = { 0x9f, 0x2f, 0xcd, 0x0c, 0x75, 0x62, 0x88, 0xc1, 0x71, 0x6e, 0xcd, 0x1f, 0x2a, 0x74, 0x86, 0x4b, 0x93, 0xa7, 0x71, 0x7b, 0xfa, 0xf5, 0x24, 0x88, 0x58, 0xdc, 0xb6, 0xfd, 0xbe, 0xa1, 0x28, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_366 = { .name = "xdh_wei25519_366", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_366_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_366_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_366_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 367 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 367 for XDH, tcId is 368 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_367_peerpubkey[] = { 0xa7, 0xc1, 0x71, 0x6a, 0x41, 0xed, 0x23, 0xa8, 0x87, 0x04, 0x38, 0x71, 0x4f, 0xf9, 0x74, 0x5f, 0xb0, 0xe4, 0x6f, 0x7a, 0x5b, 0xae, 0xb3, 0x7c, 0x9a, 0x2d, 0x83, 0xfe, 0x47, 0x7d, 0x14, 0x6c, }; static const unsigned char xdh_wei25519_367_privkey[] = { 0xd0, 0xaf, 0x34, 0x28, 0xea, 0x52, 0x05, 0xf6, 0xbf, 0x8d, 0x4f, 0x1b, 0x4e, 0x49, 0x03, 0xcd, 0x76, 0xf0, 0x42, 0x36, 0xa1, 0xc0, 0xb3, 0xec, 0xfd, 0xca, 0xf2, 0x8b, 0x21, 0x34, 0x8e, 0x63, }; static const unsigned char xdh_wei25519_367_sharedsecret[] = { 0x26, 0x1a, 0xb6, 0x26, 0x7c, 0x35, 0xa9, 0x75, 0x53, 0x59, 0xe9, 0x57, 0x47, 0x38, 0x70, 0x52, 0x2b, 0x7f, 0x92, 0x3f, 0xe8, 0x39, 0xf2, 0xb1, 0x55, 0x40, 0x86, 0x49, 0xcc, 0x5e, 0x80, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_367 = { .name = "xdh_wei25519_367", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_367_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_367_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_367_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 368 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 368 for XDH, tcId is 369 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_368_peerpubkey[] = { 0xda, 0xd9, 0x81, 0x55, 0x2c, 0x57, 0x54, 0x1c, 0x57, 0xef, 0x39, 0x5e, 0xd7, 0x70, 0xce, 0x5e, 0xdc, 0x48, 0xf8, 0x01, 0x54, 0x61, 0xb2, 0xba, 0x7a, 0xa8, 0x31, 0xec, 0x59, 0x3c, 0xeb, 0x15, }; static const unsigned char xdh_wei25519_368_privkey[] = { 0xc0, 0xea, 0x97, 0xe4, 0x42, 0xe5, 0xdc, 0x1c, 0x81, 0x42, 0xbf, 0xab, 0x70, 0x89, 0xec, 0xb9, 0xbb, 0x9c, 0x5a, 0xe3, 0x72, 0xf9, 0x90, 0x7c, 0x28, 0x25, 0xe6, 0x78, 0xde, 0xfa, 0xe5, 0x67, }; static const unsigned char xdh_wei25519_368_sharedsecret[] = { 0x90, 0x93, 0xbf, 0xa3, 0xed, 0x34, 0x91, 0xd0, 0x89, 0x1f, 0x02, 0xae, 0x46, 0x6e, 0x5e, 0x13, 0xc9, 0x80, 0xdf, 0x22, 0x9d, 0xb7, 0x40, 0x4c, 0x5b, 0x9d, 0x34, 0xe4, 0xed, 0x21, 0xc6, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_368 = { .name = "xdh_wei25519_368", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_368_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_368_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_368_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 369 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 369 for XDH, tcId is 370 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_369_peerpubkey[] = { 0xc5, 0x88, 0xdf, 0xe6, 0xe7, 0x33, 0xd9, 0x05, 0x81, 0xcb, 0xe1, 0x12, 0x07, 0x97, 0x49, 0xd8, 0xeb, 0x30, 0xab, 0x86, 0x31, 0x13, 0x4e, 0xc2, 0x9a, 0xbf, 0xb9, 0x8b, 0x32, 0xe7, 0x65, 0x22, }; static const unsigned char xdh_wei25519_369_privkey[] = { 0xb0, 0x33, 0x3f, 0x09, 0xac, 0x1e, 0xaa, 0xcd, 0x3c, 0xd6, 0x17, 0xeb, 0x88, 0x32, 0xe9, 0xde, 0x48, 0x8b, 0x45, 0x8b, 0x73, 0x5c, 0xb4, 0xb5, 0x34, 0x5f, 0x51, 0x71, 0x30, 0xc2, 0x5d, 0x6b, }; static const unsigned char xdh_wei25519_369_sharedsecret[] = { 0x6e, 0x88, 0xbb, 0x6b, 0xf7, 0x55, 0x96, 0xbb, 0xe5, 0xf1, 0xfb, 0xe9, 0x1e, 0x36, 0x5a, 0x52, 0x7a, 0x15, 0x6f, 0x4f, 0x1b, 0x57, 0xc1, 0x3a, 0xc1, 0xe3, 0xe6, 0xdb, 0x93, 0x19, 0x12, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_369 = { .name = "xdh_wei25519_369", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_369_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_369_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_369_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 370 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 370 for XDH, tcId is 371 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_370_peerpubkey[] = { 0x06, 0x70, 0x11, 0x6a, 0x43, 0x5e, 0x8d, 0x9b, 0x7a, 0x12, 0xff, 0xc4, 0x32, 0x2f, 0xd6, 0xb1, 0x49, 0xd0, 0xb1, 0xdc, 0x79, 0x9b, 0x5c, 0x09, 0x57, 0xd9, 0xd6, 0xe4, 0x25, 0x46, 0xe8, 0x24, }; static const unsigned char xdh_wei25519_370_privkey[] = { 0x10, 0x71, 0x90, 0x99, 0xdc, 0x63, 0xbc, 0xc2, 0x82, 0xef, 0x52, 0x58, 0x45, 0xc1, 0x08, 0x89, 0x7a, 0xc9, 0xfa, 0xe9, 0x59, 0x0b, 0x59, 0x3e, 0x0d, 0x50, 0x5d, 0x1c, 0xf1, 0x67, 0xc0, 0x61, }; static const unsigned char xdh_wei25519_370_sharedsecret[] = { 0xe6, 0xde, 0x74, 0xd2, 0xc5, 0xce, 0xa5, 0x40, 0x94, 0xd7, 0xa7, 0x0a, 0xf0, 0x3c, 0x76, 0x8a, 0xfe, 0x05, 0xd5, 0x2a, 0x03, 0x8b, 0xb7, 0x2d, 0x56, 0xdc, 0xac, 0xf0, 0xba, 0x50, 0x2d, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_370 = { .name = "xdh_wei25519_370", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_370_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_370_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_370_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 371 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 371 for XDH, tcId is 372 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_371_peerpubkey[] = { 0x8b, 0x20, 0x0d, 0xd2, 0x26, 0xc5, 0xc0, 0xf7, 0xe1, 0x16, 0xe5, 0x38, 0x8b, 0xa1, 0x62, 0x43, 0x8c, 0xaf, 0x1d, 0xdd, 0xf4, 0xed, 0xc3, 0xb6, 0xba, 0x83, 0x8c, 0x21, 0xb5, 0x92, 0x97, 0x37, }; static const unsigned char xdh_wei25519_371_privkey[] = { 0x10, 0xe2, 0x0e, 0x4f, 0xda, 0x57, 0x08, 0x4c, 0xa9, 0x0f, 0x7a, 0xd5, 0x72, 0xa7, 0x8a, 0xa8, 0xe6, 0x57, 0x5c, 0x65, 0x9c, 0xd0, 0x1f, 0x30, 0xc4, 0x3c, 0x58, 0x04, 0x0c, 0x20, 0xe8, 0x60, }; static const unsigned char xdh_wei25519_371_sharedsecret[] = { 0x78, 0xc9, 0xc3, 0xaf, 0xf9, 0x41, 0x6a, 0x53, 0x8c, 0xe3, 0xea, 0x8f, 0xa5, 0x53, 0x24, 0x45, 0x28, 0xd1, 0xfb, 0xec, 0xbc, 0xf9, 0x16, 0x95, 0xa3, 0x3c, 0xa4, 0x64, 0xef, 0x76, 0xb8, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_371 = { .name = "xdh_wei25519_371", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_371_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_371_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_371_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 372 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 372 for XDH, tcId is 373 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_372_peerpubkey[] = { 0x41, 0x9a, 0x07, 0x6b, 0x17, 0x9f, 0x79, 0x72, 0x00, 0x96, 0xea, 0xab, 0xaf, 0x03, 0x47, 0x7e, 0x8f, 0x89, 0xd6, 0x1f, 0x88, 0x5c, 0x8d, 0x7f, 0x58, 0xf6, 0xea, 0xa4, 0xfa, 0x77, 0xdf, 0x5f, }; static const unsigned char xdh_wei25519_372_privkey[] = { 0xa8, 0x31, 0x2d, 0xf4, 0x73, 0xad, 0xfe, 0xc7, 0x17, 0x1e, 0x16, 0x35, 0xf5, 0xba, 0xd4, 0x4f, 0x07, 0x53, 0xa8, 0x8a, 0x6b, 0x31, 0x74, 0xec, 0x5a, 0xe7, 0x62, 0x70, 0x3a, 0xe2, 0x5e, 0x60, }; static const unsigned char xdh_wei25519_372_sharedsecret[] = { 0xc1, 0xa9, 0x6c, 0xcb, 0xa0, 0x8b, 0xdd, 0x82, 0xd0, 0xfc, 0x12, 0xe8, 0xcd, 0xe4, 0xcc, 0x1f, 0x25, 0xcf, 0xd5, 0x27, 0x6d, 0xce, 0x7f, 0x18, 0xe4, 0x07, 0xed, 0x0e, 0x4a, 0x89, 0x84, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_372 = { .name = "xdh_wei25519_372", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_372_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_372_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_372_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 373 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 373 for XDH, tcId is 374 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_373_peerpubkey[] = { 0xaa, 0x34, 0xd7, 0x72, 0xe9, 0xac, 0xe4, 0x3c, 0x4d, 0x92, 0xf4, 0xf8, 0x55, 0x96, 0xab, 0x9c, 0xcd, 0x8c, 0x36, 0xc4, 0xf4, 0xcb, 0xdd, 0xc8, 0x19, 0xaf, 0xe2, 0xa3, 0x3c, 0xb8, 0xb2, 0x16, }; static const unsigned char xdh_wei25519_373_privkey[] = { 0x10, 0x96, 0x97, 0xf4, 0x00, 0x21, 0x0f, 0x9a, 0x92, 0xde, 0x80, 0xa8, 0xbe, 0xd2, 0x64, 0x09, 0x71, 0x99, 0xbc, 0x24, 0x0e, 0x22, 0x76, 0x7b, 0x54, 0xd8, 0xbb, 0x22, 0x05, 0x0b, 0x7a, 0x61, }; static const unsigned char xdh_wei25519_373_sharedsecret[] = { 0x25, 0x33, 0xb8, 0x45, 0xbb, 0x83, 0xe3, 0xd4, 0x8c, 0xff, 0xa8, 0xdb, 0xd1, 0xed, 0xd5, 0xd6, 0x01, 0x77, 0x86, 0x62, 0xd5, 0xda, 0x03, 0x75, 0x91, 0x52, 0xa5, 0xe0, 0xa8, 0x4b, 0x35, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_373 = { .name = "xdh_wei25519_373", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_373_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_373_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_373_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 374 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 374 for XDH, tcId is 375 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_374_peerpubkey[] = { 0x1f, 0x06, 0xcf, 0xe4, 0x64, 0xcc, 0xc0, 0xe2, 0x7a, 0x5e, 0xc5, 0xf9, 0xed, 0xd9, 0xbc, 0x7b, 0xc8, 0x22, 0xad, 0x2f, 0xf5, 0x06, 0x8c, 0xa5, 0xc9, 0x63, 0xd2, 0x0e, 0xdd, 0x1a, 0x2d, 0x22, }; static const unsigned char xdh_wei25519_374_privkey[] = { 0xd0, 0x36, 0x30, 0x8a, 0x53, 0xc1, 0x1b, 0xeb, 0xcb, 0x02, 0xe8, 0x36, 0x88, 0xad, 0x74, 0xfe, 0xc4, 0x3f, 0x84, 0x62, 0xef, 0x4d, 0x80, 0x62, 0x72, 0x67, 0x66, 0x37, 0xd9, 0x9b, 0x37, 0x65, }; static const unsigned char xdh_wei25519_374_sharedsecret[] = { 0xeb, 0x40, 0xa3, 0x97, 0x4b, 0x1b, 0x03, 0x10, 0xb1, 0x59, 0x7d, 0x1f, 0x1f, 0x41, 0x01, 0xc0, 0x8d, 0xca, 0x72, 0x74, 0x55, 0xa9, 0xd8, 0x22, 0x4c, 0xd0, 0x61, 0xa7, 0xaa, 0x3c, 0xb6, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_374 = { .name = "xdh_wei25519_374", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_374_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_374_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_374_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 375 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 375 for XDH, tcId is 376 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_375_peerpubkey[] = { 0x9d, 0x4b, 0x2e, 0xd7, 0x81, 0x71, 0x32, 0xaf, 0x58, 0x30, 0xe8, 0x99, 0x62, 0x7e, 0xa9, 0x7d, 0xc3, 0x9b, 0xd3, 0x77, 0x2e, 0x82, 0xf2, 0xd0, 0x57, 0x69, 0xa9, 0x18, 0x27, 0x3d, 0xc0, 0x2e, }; static const unsigned char xdh_wei25519_375_privkey[] = { 0x78, 0x6e, 0x5a, 0x5f, 0xf3, 0x74, 0x05, 0xc7, 0x69, 0xd0, 0xd3, 0x78, 0x8c, 0x3c, 0x1b, 0x05, 0xa6, 0x2a, 0x84, 0x42, 0xc3, 0x85, 0x57, 0x0e, 0x44, 0x38, 0xbc, 0x5f, 0x2e, 0xaa, 0xcd, 0x67, }; static const unsigned char xdh_wei25519_375_sharedsecret[] = { 0x95, 0x09, 0x75, 0x7e, 0x28, 0x95, 0x53, 0xcf, 0xa2, 0xcc, 0x71, 0x31, 0x34, 0x73, 0xc3, 0xff, 0x1e, 0xeb, 0xce, 0x48, 0x4e, 0xe2, 0x37, 0xea, 0xe5, 0x54, 0xfd, 0xa3, 0xd3, 0xd2, 0x2f, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_375 = { .name = "xdh_wei25519_375", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_375_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_375_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_375_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 376 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 376 for XDH, tcId is 377 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_376_peerpubkey[] = { 0x4e, 0x05, 0x6b, 0x31, 0x7a, 0x31, 0xdd, 0x96, 0xf8, 0xec, 0x14, 0xb4, 0x84, 0x74, 0xaf, 0x58, 0x7d, 0x19, 0x5e, 0xfc, 0xc2, 0xa7, 0x0f, 0x01, 0xf0, 0x52, 0xef, 0x88, 0x2d, 0x7b, 0x3a, 0x45, }; static const unsigned char xdh_wei25519_376_privkey[] = { 0xc0, 0x1f, 0x66, 0xcb, 0x09, 0x42, 0x89, 0xd7, 0x28, 0x42, 0x1d, 0xd4, 0x6c, 0x6f, 0x97, 0x18, 0x41, 0x2e, 0x1c, 0x54, 0x6d, 0xad, 0x70, 0xe5, 0x86, 0x85, 0x1b, 0xe4, 0xda, 0x58, 0xbf, 0x67, }; static const unsigned char xdh_wei25519_376_sharedsecret[] = { 0xba, 0xd9, 0xf7, 0xb2, 0x7d, 0xac, 0x64, 0xb0, 0xfc, 0x98, 0x0a, 0x41, 0xf1, 0xce, 0xfa, 0x50, 0xc5, 0xca, 0x40, 0xc7, 0x14, 0x29, 0x6c, 0x0c, 0x40, 0x42, 0x09, 0x5c, 0x2d, 0xb6, 0x0e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_376 = { .name = "xdh_wei25519_376", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_376_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_376_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_376_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 377 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 377 for XDH, tcId is 378 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_377_peerpubkey[] = { 0x72, 0xc6, 0x05, 0x35, 0xe9, 0xc4, 0x23, 0xf3, 0x02, 0xd6, 0xa1, 0x07, 0x96, 0xd9, 0x54, 0xd7, 0x78, 0x03, 0x2c, 0xd4, 0xdb, 0xd4, 0x0c, 0xa0, 0xf3, 0x59, 0xe2, 0x04, 0xd6, 0x7b, 0x6f, 0x4c, }; static const unsigned char xdh_wei25519_377_privkey[] = { 0x38, 0x77, 0xd9, 0xce, 0x25, 0xce, 0xde, 0xde, 0xb5, 0x72, 0x60, 0x4f, 0x2d, 0x12, 0x3d, 0xf6, 0x85, 0x69, 0x0c, 0x26, 0xe1, 0x81, 0xf7, 0x77, 0xed, 0x33, 0x30, 0x2b, 0x82, 0x08, 0x29, 0x66, }; static const unsigned char xdh_wei25519_377_sharedsecret[] = { 0x51, 0xc3, 0x59, 0x76, 0x8a, 0xb0, 0x21, 0x90, 0x03, 0xaf, 0x19, 0x3e, 0x2b, 0xdb, 0x8e, 0x5c, 0xc9, 0xf8, 0xe1, 0x76, 0xb8, 0xdb, 0x49, 0xe5, 0x97, 0xaf, 0xca, 0x3e, 0x71, 0x25, 0xe3, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_377 = { .name = "xdh_wei25519_377", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_377_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_377_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_377_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 378 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 378 for XDH, tcId is 379 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_378_peerpubkey[] = { 0x58, 0x56, 0x35, 0x8e, 0xd4, 0x20, 0x04, 0x7c, 0xd0, 0x84, 0xf1, 0x7a, 0xe6, 0x96, 0xba, 0xd7, 0x9a, 0x4d, 0x26, 0xc6, 0xd5, 0xbb, 0x79, 0xbf, 0xb8, 0x2b, 0xbc, 0x63, 0x32, 0x44, 0x2d, 0x51, }; static const unsigned char xdh_wei25519_378_privkey[] = { 0x50, 0xb8, 0x46, 0x18, 0xd0, 0x73, 0xc4, 0x61, 0x8f, 0x9a, 0xa6, 0x9a, 0x3b, 0x85, 0x18, 0xda, 0x76, 0xdb, 0xb2, 0x12, 0x72, 0x86, 0x21, 0x4f, 0xb4, 0x3a, 0x2b, 0x44, 0x50, 0x3b, 0x99, 0x69, }; static const unsigned char xdh_wei25519_378_sharedsecret[] = { 0xfa, 0x9f, 0xb0, 0xdf, 0x4c, 0xfb, 0xac, 0xd0, 0xfb, 0xf3, 0x26, 0x2d, 0x3a, 0x1b, 0xf8, 0xd7, 0xaa, 0xcb, 0x45, 0xf7, 0x3b, 0xf9, 0x46, 0x71, 0x77, 0x5e, 0x50, 0x9c, 0x80, 0x43, 0xdf, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_378 = { .name = "xdh_wei25519_378", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_378_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_378_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_378_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 379 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 379 for XDH, tcId is 380 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_379_peerpubkey[] = { 0xc3, 0x1e, 0x37, 0xb0, 0x43, 0x32, 0xab, 0xca, 0x83, 0x15, 0xf3, 0x17, 0x17, 0x15, 0x66, 0xae, 0xf3, 0x81, 0x11, 0xf6, 0x22, 0xd8, 0xbf, 0xfa, 0x29, 0xc2, 0x3c, 0x01, 0x51, 0xcd, 0xad, 0x6e, }; static const unsigned char xdh_wei25519_379_privkey[] = { 0x10, 0x9a, 0xcf, 0xa6, 0x38, 0xe1, 0x12, 0xf6, 0xbb, 0xec, 0x21, 0xe3, 0x52, 0xa7, 0x4e, 0x8f, 0xc9, 0xb7, 0xff, 0xe5, 0xd9, 0xdc, 0x28, 0x63, 0x4e, 0xeb, 0x51, 0x6e, 0x59, 0x83, 0x0a, 0x63, }; static const unsigned char xdh_wei25519_379_sharedsecret[] = { 0x91, 0xac, 0x72, 0xb0, 0xed, 0x8d, 0x7f, 0xc4, 0xc8, 0x84, 0x6b, 0x8a, 0x25, 0x30, 0xd9, 0xfb, 0x8f, 0x05, 0x32, 0x06, 0x48, 0x80, 0xc0, 0x0d, 0xab, 0x10, 0x0c, 0x97, 0x76, 0x97, 0xdb, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_379 = { .name = "xdh_wei25519_379", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_379_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_379_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_379_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 380 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 380 for XDH, tcId is 381 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_380_peerpubkey[] = { 0xb7, 0x75, 0xe0, 0x16, 0xb3, 0x2a, 0x97, 0xf4, 0x99, 0x71, 0x12, 0x19, 0x06, 0x76, 0x3f, 0x3a, 0x0b, 0x41, 0x68, 0x90, 0x92, 0xb9, 0x58, 0x3b, 0x67, 0x10, 0xcf, 0x7d, 0xee, 0x03, 0xa6, 0x1c, }; static const unsigned char xdh_wei25519_380_privkey[] = { 0x68, 0x5c, 0x07, 0x84, 0xaa, 0x6d, 0x19, 0x4c, 0x1b, 0x85, 0x9b, 0xda, 0x44, 0xc4, 0xe2, 0x7c, 0xd1, 0xdf, 0xdf, 0x34, 0x77, 0x6e, 0x49, 0x8d, 0xd0, 0x3d, 0x09, 0xf8, 0x7a, 0xe6, 0x8a, 0x65, }; static const unsigned char xdh_wei25519_380_sharedsecret[] = { 0x11, 0x39, 0x3b, 0xb5, 0x48, 0x81, 0x3e, 0x04, 0xfb, 0x54, 0x13, 0x3e, 0xdb, 0xe0, 0x62, 0x64, 0x58, 0xe8, 0x09, 0x81, 0x88, 0x5e, 0x1f, 0xe5, 0xf3, 0x37, 0x7e, 0x8e, 0xbe, 0x9a, 0xfa, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_380 = { .name = "xdh_wei25519_380", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_380_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_380_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_380_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 381 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 381 for XDH, tcId is 382 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_381_peerpubkey[] = { 0xf8, 0xbd, 0x0e, 0x7c, 0xf6, 0xec, 0x61, 0x86, 0xf2, 0x05, 0xab, 0x03, 0xab, 0x72, 0xc8, 0xf6, 0xb3, 0xcd, 0xe8, 0xf6, 0xad, 0x9b, 0x16, 0x69, 0x16, 0xa0, 0x4d, 0x43, 0xd1, 0xd6, 0xd5, 0x46, }; static const unsigned char xdh_wei25519_381_privkey[] = { 0x18, 0xe9, 0xa0, 0x5a, 0x20, 0x43, 0x6c, 0xf0, 0xdb, 0xc3, 0xd5, 0xb9, 0x2d, 0xac, 0x8d, 0x99, 0x6e, 0x62, 0xea, 0x11, 0xfb, 0xb3, 0x44, 0x5f, 0x29, 0x19, 0x5f, 0xc7, 0x5a, 0x8b, 0xeb, 0x69, }; static const unsigned char xdh_wei25519_381_sharedsecret[] = { 0x0a, 0x83, 0xa2, 0x24, 0xfb, 0xfc, 0xbc, 0x5d, 0x0f, 0x07, 0xf6, 0xdd, 0x8e, 0xbb, 0x2e, 0x9b, 0xbe, 0xe8, 0x13, 0x4f, 0x0f, 0xab, 0x26, 0x80, 0x02, 0xce, 0x83, 0x7f, 0x54, 0x95, 0xd8, 0x33, }; static const wycheproof_xdh_test xdh_wei25519_381 = { .name = "xdh_wei25519_381", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_381_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_381_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_381_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 382 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 382 for XDH, tcId is 383 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_382_peerpubkey[] = { 0x8d, 0xfe, 0xe4, 0x8a, 0xd8, 0xb3, 0x67, 0x48, 0x8e, 0xa4, 0xda, 0xfc, 0xf7, 0x08, 0x6e, 0x30, 0x53, 0x56, 0xa8, 0x09, 0x01, 0xf8, 0x7c, 0x72, 0x01, 0x49, 0xa5, 0xf5, 0x22, 0x33, 0x74, 0x53, }; static const unsigned char xdh_wei25519_382_privkey[] = { 0x00, 0xe0, 0x99, 0xeb, 0x23, 0x12, 0x5d, 0xab, 0x5e, 0xc3, 0x5a, 0x41, 0x9d, 0x45, 0x5d, 0x0b, 0xa8, 0xc0, 0x1d, 0xa1, 0x60, 0xf9, 0x35, 0x4e, 0x9f, 0xb2, 0x1e, 0x6a, 0x55, 0xd5, 0x5c, 0x64, }; static const unsigned char xdh_wei25519_382_sharedsecret[] = { 0x45, 0xdc, 0x39, 0x83, 0x1f, 0x34, 0x71, 0xd7, 0x46, 0x6b, 0xbe, 0x29, 0xc8, 0x14, 0x2b, 0x1a, 0x6d, 0x6b, 0x00, 0xc4, 0x7f, 0xea, 0x02, 0x1b, 0xe2, 0xff, 0xc4, 0x52, 0xd9, 0x04, 0x68, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_382 = { .name = "xdh_wei25519_382", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_382_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_382_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_382_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 383 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 383 for XDH, tcId is 384 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_383_peerpubkey[] = { 0x8f, 0x68, 0xbf, 0xc5, 0x7d, 0x79, 0x2c, 0x32, 0x2e, 0xbb, 0x27, 0xf4, 0x4a, 0x37, 0xc1, 0xc9, 0x3e, 0x7e, 0xb1, 0x5c, 0x5d, 0x5f, 0xce, 0xdf, 0xfc, 0x1d, 0xe8, 0x50, 0x48, 0x7b, 0x33, 0x72, }; static const unsigned char xdh_wei25519_383_privkey[] = { 0xb0, 0xca, 0x25, 0x1e, 0x0d, 0xba, 0xe7, 0x32, 0x4a, 0x6c, 0xa0, 0xc2, 0xc8, 0xd6, 0xa8, 0x88, 0xed, 0xd1, 0x2d, 0x14, 0x47, 0xd4, 0x00, 0xa4, 0x7b, 0xcb, 0xa0, 0x04, 0xb6, 0x48, 0x71, 0x6e, }; static const unsigned char xdh_wei25519_383_sharedsecret[] = { 0xa2, 0x90, 0x05, 0xc6, 0xb9, 0xdb, 0xf1, 0x70, 0x7d, 0xc2, 0xad, 0xce, 0x45, 0x06, 0xb5, 0x58, 0x31, 0xe8, 0x67, 0x5b, 0x7d, 0x2d, 0x54, 0xb0, 0xc1, 0x03, 0x77, 0x41, 0xe3, 0xbc, 0x61, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_383 = { .name = "xdh_wei25519_383", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_383_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_383_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_383_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 384 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 384 for XDH, tcId is 385 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_384_peerpubkey[] = { 0xff, 0x0f, 0x15, 0xad, 0xea, 0xb3, 0x34, 0xaf, 0xed, 0xa3, 0x91, 0x67, 0x85, 0xdd, 0xd3, 0x8d, 0x25, 0x2d, 0xce, 0x98, 0x76, 0xc2, 0x35, 0x7b, 0x64, 0x3b, 0x5d, 0xc2, 0xc0, 0x6a, 0x3b, 0x1d, }; static const unsigned char xdh_wei25519_384_privkey[] = { 0xa8, 0xb6, 0x4b, 0x8e, 0xd3, 0x97, 0x77, 0x3b, 0x82, 0x90, 0x42, 0x5c, 0xa5, 0xc2, 0xf7, 0xc3, 0xe5, 0x0f, 0xac, 0x7a, 0x47, 0x81, 0xbd, 0x4a, 0x54, 0xc1, 0x33, 0x78, 0x1c, 0x9a, 0x13, 0x60, }; static const unsigned char xdh_wei25519_384_sharedsecret[] = { 0x9f, 0x04, 0xe4, 0x2c, 0x1b, 0x2f, 0x31, 0x1d, 0x87, 0xe1, 0x47, 0x0a, 0x47, 0x08, 0xbb, 0xa2, 0x5a, 0xc6, 0xff, 0xd3, 0xf7, 0xb4, 0x86, 0xf9, 0xb6, 0xb5, 0x02, 0xec, 0xbb, 0x2c, 0x00, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_384 = { .name = "xdh_wei25519_384", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_384_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_384_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_384_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 385 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 385 for XDH, tcId is 386 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_385_peerpubkey[] = { 0x10, 0x76, 0xfd, 0xc8, 0x27, 0xf2, 0x55, 0x0e, 0xe9, 0x5f, 0xf9, 0xa1, 0x5d, 0x04, 0x4a, 0xed, 0xfa, 0xc6, 0x5b, 0x5e, 0x9b, 0xa8, 0x09, 0xf6, 0x24, 0x38, 0xcc, 0xea, 0x54, 0x63, 0x7a, 0x29, }; static const unsigned char xdh_wei25519_385_privkey[] = { 0xd0, 0xcd, 0x0d, 0xb5, 0x1f, 0xf2, 0x32, 0xaf, 0xa0, 0x91, 0x9d, 0x31, 0x06, 0xfc, 0xb3, 0xa8, 0xae, 0x58, 0x1e, 0xf1, 0x2d, 0x09, 0xc8, 0x77, 0xaa, 0x6f, 0x31, 0xef, 0x74, 0xee, 0xd0, 0x68, }; static const unsigned char xdh_wei25519_385_sharedsecret[] = { 0x68, 0x80, 0x00, 0xbd, 0x60, 0xaf, 0x37, 0x5b, 0x4e, 0xea, 0xc4, 0xa7, 0xd0, 0xe0, 0x78, 0x2c, 0x0e, 0x61, 0x88, 0xea, 0xbd, 0xc6, 0x08, 0xb7, 0x32, 0xf4, 0x9b, 0x4d, 0x6c, 0xca, 0xb4, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_385 = { .name = "xdh_wei25519_385", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_385_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_385_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_385_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 386 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 386 for XDH, tcId is 387 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_386_peerpubkey[] = { 0xed, 0x1c, 0x82, 0x08, 0x2b, 0x74, 0xcc, 0x2a, 0xae, 0xbf, 0x3d, 0xc7, 0x72, 0xba, 0x09, 0x55, 0x7c, 0x0f, 0xc1, 0x41, 0x39, 0xa8, 0x81, 0x4f, 0xc5, 0xf9, 0x37, 0x0b, 0xb8, 0xe9, 0x88, 0x58, }; static const unsigned char xdh_wei25519_386_privkey[] = { 0x20, 0x4a, 0x3b, 0x56, 0x52, 0x85, 0x4f, 0xf4, 0x8e, 0x25, 0xcd, 0x38, 0x5c, 0xab, 0xe6, 0x36, 0x0f, 0x64, 0xce, 0x44, 0xfe, 0xa5, 0x62, 0x1d, 0xb1, 0xfa, 0x2f, 0x6e, 0x21, 0x9f, 0x30, 0x63, }; static const unsigned char xdh_wei25519_386_sharedsecret[] = { 0xe0, 0xa8, 0x2f, 0x31, 0x30, 0x46, 0x02, 0x4b, 0x3c, 0xea, 0x93, 0xb9, 0x8e, 0x2f, 0x8e, 0xcf, 0x22, 0x8c, 0xbf, 0xab, 0x8a, 0xe1, 0x0b, 0x10, 0x29, 0x2c, 0x32, 0xfe, 0xcc, 0xff, 0x16, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_386 = { .name = "xdh_wei25519_386", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_386_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_386_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_386_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 387 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 387 for XDH, tcId is 388 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_387_peerpubkey[] = { 0x12, 0xe1, 0x58, 0x9a, 0x34, 0x09, 0x4a, 0xf5, 0xf1, 0x21, 0xc9, 0xbd, 0x3c, 0x11, 0x19, 0xf2, 0xb1, 0xf0, 0x52, 0x64, 0xc5, 0x73, 0xf6, 0x67, 0xa7, 0x48, 0x68, 0x3c, 0x56, 0x33, 0xa4, 0x7e, }; static const unsigned char xdh_wei25519_387_privkey[] = { 0x88, 0x10, 0x9b, 0x1d, 0x0e, 0x7b, 0xac, 0xe4, 0x4d, 0x41, 0xa1, 0x5d, 0x5b, 0xcb, 0xcd, 0x36, 0x96, 0x8c, 0x5b, 0x8b, 0x47, 0xc0, 0xa2, 0xc6, 0x06, 0xb5, 0x7c, 0x4a, 0x68, 0xcc, 0x5f, 0x66, }; static const unsigned char xdh_wei25519_387_sharedsecret[] = { 0x1f, 0xcc, 0x50, 0x33, 0x3e, 0xb9, 0x07, 0x06, 0x93, 0x5f, 0x25, 0xb0, 0x2f, 0x43, 0x7b, 0xfd, 0x22, 0xb6, 0xb1, 0x6c, 0xc3, 0x75, 0xaf, 0xff, 0x8a, 0x1a, 0xa7, 0x43, 0x2f, 0xb8, 0x62, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_387 = { .name = "xdh_wei25519_387", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_387_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_387_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_387_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 388 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 388 for XDH, tcId is 389 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_388_peerpubkey[] = { 0x15, 0x1f, 0x54, 0xa8, 0xa8, 0x99, 0x71, 0x17, 0x57, 0xb3, 0xb1, 0x18, 0xfc, 0x55, 0x01, 0x77, 0x9d, 0x62, 0x1d, 0x25, 0x22, 0x7a, 0xf5, 0x3d, 0x0a, 0xf0, 0x0b, 0x75, 0x83, 0xba, 0x88, 0x24, }; static const unsigned char xdh_wei25519_388_privkey[] = { 0x50, 0x82, 0xe4, 0x97, 0xc4, 0x29, 0x79, 0xcd, 0xbf, 0xdd, 0x1b, 0x3b, 0x06, 0x53, 0xcf, 0xea, 0x6f, 0x2c, 0xeb, 0x7d, 0x07, 0x63, 0x9e, 0xbf, 0x35, 0x41, 0x86, 0x6b, 0xb6, 0x0e, 0xdb, 0x62, }; static const unsigned char xdh_wei25519_388_sharedsecret[] = { 0xfa, 0xc3, 0x0a, 0x74, 0xf4, 0xca, 0x99, 0xf6, 0xcf, 0x23, 0x30, 0x65, 0xe9, 0xac, 0xd8, 0x26, 0x69, 0x0c, 0xab, 0x36, 0x4b, 0xf6, 0x93, 0x20, 0xb5, 0x80, 0x95, 0x78, 0x3e, 0xd7, 0x6e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_388 = { .name = "xdh_wei25519_388", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_388_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_388_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_388_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 389 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 389 for XDH, tcId is 390 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_389_peerpubkey[] = { 0xa8, 0x19, 0xc6, 0x67, 0xed, 0x46, 0x6b, 0xd9, 0xa6, 0x9e, 0xa0, 0xb3, 0x86, 0x42, 0xee, 0x8e, 0x53, 0xf4, 0x0a, 0x50, 0x37, 0x7b, 0x05, 0x1e, 0xb5, 0x90, 0x14, 0x2d, 0xd2, 0x7e, 0x34, 0x31, }; static const unsigned char xdh_wei25519_389_privkey[] = { 0xf8, 0x5a, 0x8d, 0xb4, 0x4f, 0x9e, 0x56, 0xb1, 0x17, 0x29, 0xf5, 0x16, 0x82, 0xa9, 0x76, 0x9f, 0xc5, 0x04, 0xf9, 0x35, 0x97, 0xcb, 0xe3, 0x94, 0x44, 0x61, 0x6b, 0x22, 0x45, 0x32, 0x10, 0x6e, }; static const unsigned char xdh_wei25519_389_sharedsecret[] = { 0x17, 0xf6, 0x54, 0x3c, 0x47, 0x27, 0xe7, 0xf1, 0x29, 0xee, 0x82, 0x47, 0x76, 0x55, 0x57, 0x76, 0x35, 0xc1, 0x25, 0xa2, 0x0c, 0x3d, 0xc8, 0xba, 0x20, 0x6c, 0xa3, 0xcc, 0x48, 0x54, 0xca, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_389 = { .name = "xdh_wei25519_389", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_389_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_389_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_389_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 390 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 390 for XDH, tcId is 391 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_390_peerpubkey[] = { 0x40, 0xb0, 0x53, 0xd0, 0x56, 0x66, 0x89, 0x82, 0xa1, 0xf5, 0x50, 0xbe, 0x95, 0xe1, 0x63, 0x48, 0xe3, 0x03, 0x94, 0x5f, 0x53, 0xa3, 0xac, 0x64, 0x49, 0x1a, 0x9a, 0x56, 0xd4, 0x09, 0x5b, 0x71, }; static const unsigned char xdh_wei25519_390_privkey[] = { 0x50, 0x5a, 0x07, 0x66, 0x41, 0xfa, 0xc3, 0x98, 0xfc, 0x7d, 0x8c, 0x62, 0x99, 0x37, 0xf4, 0x2d, 0xb5, 0x59, 0xdb, 0x5e, 0x12, 0x05, 0x2a, 0xd3, 0x66, 0xd4, 0x6d, 0x7b, 0x20, 0xe9, 0x57, 0x69, }; static const unsigned char xdh_wei25519_390_sharedsecret[] = { 0x88, 0x9a, 0x8d, 0x61, 0x1e, 0x0a, 0x7d, 0xa7, 0x14, 0x75, 0xe7, 0xc9, 0x3a, 0x2d, 0x7f, 0x6f, 0x72, 0x28, 0xc7, 0x87, 0xa0, 0x0e, 0xe5, 0xcf, 0x55, 0x47, 0x4a, 0xdc, 0x37, 0x6f, 0xf7, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_390 = { .name = "xdh_wei25519_390", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_390_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_390_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_390_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 391 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 391 for XDH, tcId is 392 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_391_peerpubkey[] = { 0xe7, 0xdd, 0x05, 0x49, 0xa7, 0x65, 0xbb, 0xef, 0x34, 0xbe, 0x2e, 0x8d, 0xa1, 0x8a, 0x1b, 0xc1, 0xb9, 0x89, 0xa8, 0xb0, 0x61, 0x4d, 0x35, 0x8e, 0xbf, 0x38, 0xc1, 0x2a, 0x9c, 0xa6, 0x40, 0x79, }; static const unsigned char xdh_wei25519_391_privkey[] = { 0xe8, 0xdb, 0x2b, 0xf1, 0xaf, 0x5b, 0x89, 0x07, 0x42, 0x07, 0x89, 0xc5, 0x6e, 0x71, 0x41, 0x47, 0x06, 0xae, 0xf0, 0xd9, 0xf6, 0xff, 0xae, 0xd0, 0xc2, 0x49, 0xc3, 0xb7, 0xab, 0x14, 0xbf, 0x65, }; static const unsigned char xdh_wei25519_391_sharedsecret[] = { 0x37, 0x23, 0x2f, 0xb3, 0x97, 0xaf, 0x27, 0xf5, 0xfb, 0x5c, 0xa4, 0x93, 0x28, 0x4f, 0xf1, 0xc5, 0xd2, 0x57, 0x86, 0xb0, 0xd7, 0x16, 0xc7, 0x3b, 0x33, 0xac, 0xa8, 0xd4, 0x22, 0x65, 0xf3, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_391 = { .name = "xdh_wei25519_391", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_391_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_391_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_391_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 392 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 392 for XDH, tcId is 393 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_392_peerpubkey[] = { 0x1e, 0xe1, 0xb9, 0xa7, 0x46, 0x04, 0xac, 0x31, 0xc3, 0xdb, 0x83, 0x28, 0x01, 0x70, 0xe3, 0x81, 0x15, 0x04, 0xfc, 0xc7, 0x8c, 0x76, 0x26, 0xb5, 0xb2, 0xc0, 0x7a, 0x99, 0xd8, 0x0d, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_392_privkey[] = { 0xc0, 0x06, 0xab, 0x17, 0x62, 0x72, 0x08, 0x82, 0x01, 0x7d, 0x10, 0x6b, 0x9a, 0x46, 0x75, 0xfd, 0xd4, 0x70, 0x05, 0x65, 0x71, 0x55, 0xc9, 0x0c, 0xa6, 0x1d, 0x4c, 0xbf, 0x7c, 0xc4, 0xf9, 0x73, }; static const unsigned char xdh_wei25519_392_sharedsecret[] = { 0xa1, 0xb3, 0x04, 0x18, 0x43, 0x6b, 0xa1, 0x90, 0x88, 0x04, 0xff, 0xcc, 0xe1, 0xbe, 0x2c, 0xdc, 0xf5, 0x0c, 0x61, 0xa8, 0xe3, 0x93, 0x8d, 0x95, 0xc7, 0x90, 0xab, 0xdb, 0x78, 0x6b, 0x80, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_392 = { .name = "xdh_wei25519_392", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_392_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_392_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_392_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 393 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 393 for XDH, tcId is 394 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_393_peerpubkey[] = { 0xf2, 0x26, 0xc2, 0xd6, 0xbd, 0x78, 0x31, 0xed, 0xa1, 0xb5, 0x1e, 0xe5, 0xae, 0xc2, 0x94, 0x43, 0xa5, 0x07, 0xef, 0x9f, 0x7a, 0x04, 0xe2, 0x34, 0x0f, 0x34, 0x9d, 0xbf, 0x14, 0x93, 0x38, 0x44, }; static const unsigned char xdh_wei25519_393_privkey[] = { 0xd0, 0x71, 0x80, 0x7d, 0x60, 0x79, 0x53, 0xda, 0x43, 0x2d, 0x85, 0x74, 0xd5, 0xf3, 0xf4, 0x20, 0x67, 0x6d, 0xaf, 0xdb, 0xc6, 0xa2, 0x85, 0xa3, 0x6e, 0x1d, 0x73, 0x76, 0x24, 0xd7, 0x7c, 0x75, }; static const unsigned char xdh_wei25519_393_sharedsecret[] = { 0xa5, 0x97, 0x6f, 0xda, 0x89, 0x95, 0x4a, 0x81, 0xe4, 0x42, 0x10, 0x7f, 0x9e, 0x41, 0x6a, 0x2b, 0x4b, 0x48, 0x1b, 0xbd, 0x46, 0x54, 0xeb, 0xc0, 0xc7, 0xb5, 0x7a, 0x78, 0xb4, 0x5b, 0x49, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_393 = { .name = "xdh_wei25519_393", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_393_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_393_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_393_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 394 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 394 for XDH, tcId is 395 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_394_peerpubkey[] = { 0xc5, 0x19, 0x73, 0x12, 0xde, 0x3a, 0x7a, 0x3e, 0xe1, 0x1b, 0x29, 0x87, 0x3b, 0xae, 0x3f, 0xc8, 0xc8, 0x51, 0x09, 0xc6, 0x67, 0x84, 0x80, 0x4f, 0x89, 0x43, 0x5d, 0xb2, 0x10, 0xfc, 0xc2, 0x4b, }; static const unsigned char xdh_wei25519_394_privkey[] = { 0x30, 0x4b, 0x52, 0x6f, 0x6f, 0xe9, 0x94, 0x73, 0x19, 0x80, 0xc0, 0x97, 0x55, 0x29, 0xbc, 0xa4, 0xd0, 0x61, 0x01, 0x7f, 0xbe, 0xc5, 0x6f, 0x60, 0x70, 0xd4, 0x26, 0x78, 0xd3, 0xe1, 0x11, 0x77, }; static const unsigned char xdh_wei25519_394_sharedsecret[] = { 0x55, 0xb5, 0xb5, 0xeb, 0x38, 0xb1, 0x27, 0x61, 0x7f, 0xfe, 0x00, 0x05, 0x6d, 0x84, 0xd3, 0x5a, 0x50, 0x71, 0xd1, 0x87, 0x83, 0xe3, 0xa8, 0x2b, 0x5f, 0x4e, 0x13, 0x1b, 0x15, 0x38, 0xb1, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_394 = { .name = "xdh_wei25519_394", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_394_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_394_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_394_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 395 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 395 for XDH, tcId is 396 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_395_peerpubkey[] = { 0x59, 0x0e, 0xd0, 0xb8, 0x79, 0x31, 0x9c, 0x38, 0xa1, 0x99, 0x62, 0xa5, 0xd2, 0x16, 0xff, 0x2b, 0xfa, 0xf3, 0x35, 0x55, 0x51, 0x88, 0x77, 0x96, 0x9c, 0x20, 0xc0, 0x54, 0xcb, 0xe4, 0x3e, 0x56, }; static const unsigned char xdh_wei25519_395_privkey[] = { 0x98, 0x2d, 0xdf, 0x2c, 0x03, 0x57, 0x89, 0x37, 0x9b, 0x8a, 0x58, 0x91, 0x7d, 0x5c, 0x3c, 0x6c, 0x06, 0x1b, 0x50, 0x3b, 0x19, 0xa0, 0x02, 0x8e, 0x01, 0x89, 0x4c, 0x2e, 0xb3, 0x71, 0xd0, 0x79, }; static const unsigned char xdh_wei25519_395_sharedsecret[] = { 0x00, 0x80, 0xe5, 0xb9, 0x98, 0x5a, 0x96, 0x0a, 0x83, 0x21, 0x33, 0x81, 0x2a, 0x7a, 0xb9, 0x95, 0x1c, 0x6b, 0x2c, 0x75, 0x89, 0x4d, 0xeb, 0x3e, 0x35, 0x50, 0x91, 0x90, 0xa6, 0xbd, 0xf4, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_395 = { .name = "xdh_wei25519_395", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_395_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_395_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_395_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 396 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 396 for XDH, tcId is 397 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_396_peerpubkey[] = { 0x7c, 0x5f, 0x01, 0x43, 0xa6, 0x68, 0x2f, 0x60, 0xcc, 0xad, 0x16, 0xf2, 0x11, 0x50, 0xc7, 0xbb, 0x5b, 0xc6, 0xf8, 0x07, 0x25, 0x4d, 0x08, 0xb3, 0x53, 0xfc, 0x96, 0xce, 0x07, 0xbc, 0xeb, 0x6f, }; static const unsigned char xdh_wei25519_396_privkey[] = { 0x78, 0xcc, 0x3e, 0xc0, 0x68, 0x7e, 0x3e, 0x53, 0xd9, 0xce, 0xc5, 0x6b, 0x79, 0xd1, 0x1b, 0xf0, 0x49, 0xd1, 0x73, 0xf1, 0x27, 0xf5, 0xb4, 0x0f, 0xae, 0x12, 0x2a, 0x6d, 0x00, 0x16, 0xcd, 0x76, }; static const unsigned char xdh_wei25519_396_sharedsecret[] = { 0x52, 0x41, 0x22, 0x22, 0x26, 0x63, 0x8c, 0x4b, 0xbb, 0xc9, 0x87, 0x92, 0xcd, 0xbd, 0x74, 0x88, 0x2c, 0xa2, 0xe0, 0x8a, 0xa2, 0xed, 0xf3, 0x13, 0x07, 0x04, 0x25, 0x03, 0x10, 0x09, 0xe9, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_396 = { .name = "xdh_wei25519_396", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_396_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_396_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_396_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 397 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 397 for XDH, tcId is 398 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_397_peerpubkey[] = { 0x01, 0x08, 0x50, 0xa0, 0x97, 0x4d, 0x3e, 0x89, 0xc0, 0x29, 0xd2, 0x52, 0xb4, 0x6f, 0x73, 0x95, 0x48, 0x29, 0x4c, 0x0f, 0x9a, 0x23, 0x18, 0x38, 0x63, 0xf9, 0x45, 0x5b, 0x95, 0x59, 0xc2, 0x11, }; static const unsigned char xdh_wei25519_397_privkey[] = { 0xc8, 0x6f, 0xc7, 0x66, 0x50, 0xcf, 0x3b, 0x58, 0x83, 0x7a, 0xa0, 0xf0, 0x63, 0x35, 0x60, 0x41, 0x52, 0x41, 0xc6, 0xc4, 0xf8, 0xf2, 0x93, 0xba, 0x02, 0x22, 0xb7, 0xd6, 0xa3, 0x87, 0x57, 0x73, }; static const unsigned char xdh_wei25519_397_sharedsecret[] = { 0x63, 0x78, 0x81, 0x90, 0xb1, 0x0d, 0x74, 0x51, 0xf5, 0xfc, 0x2b, 0x82, 0xc4, 0x21, 0x15, 0x1d, 0xb4, 0xf3, 0xe2, 0x27, 0x82, 0xe3, 0x92, 0xda, 0x6d, 0x8d, 0x3a, 0xba, 0x2c, 0x34, 0x43, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_397 = { .name = "xdh_wei25519_397", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_397_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_397_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_397_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 398 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 398 for XDH, tcId is 399 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_398_peerpubkey[] = { 0xad, 0x1d, 0xd8, 0x2c, 0x23, 0xd6, 0xa0, 0xd5, 0xfe, 0x0f, 0x2a, 0x45, 0x61, 0xd1, 0xc1, 0x67, 0x33, 0xa3, 0xe1, 0xe6, 0xaf, 0xa6, 0xd9, 0x02, 0xdd, 0x07, 0x7d, 0xc4, 0x3a, 0x96, 0x16, 0x28, }; static const unsigned char xdh_wei25519_398_privkey[] = { 0x88, 0x8d, 0x51, 0xc0, 0xa2, 0x23, 0x03, 0x69, 0xe5, 0xb6, 0x5a, 0x81, 0x4b, 0x32, 0x13, 0xdd, 0xe2, 0xe6, 0x2f, 0x2e, 0xb9, 0x5d, 0x09, 0x71, 0x48, 0x6b, 0x73, 0x3e, 0x4f, 0x90, 0xc1, 0x74, }; static const unsigned char xdh_wei25519_398_sharedsecret[] = { 0xe4, 0xb4, 0x09, 0x74, 0xa1, 0x66, 0xac, 0x49, 0xed, 0x83, 0x17, 0x15, 0xc0, 0x71, 0xc7, 0x51, 0x75, 0x27, 0x44, 0xb8, 0x91, 0x46, 0x5e, 0x6c, 0x45, 0x00, 0x18, 0x55, 0xaa, 0xcd, 0xc3, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_398 = { .name = "xdh_wei25519_398", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_398_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_398_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_398_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 399 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 399 for XDH, tcId is 400 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_399_peerpubkey[] = { 0xd0, 0xc0, 0xd6, 0x39, 0x3c, 0x41, 0xf4, 0xd7, 0xe0, 0xd5, 0xe8, 0x50, 0xb7, 0x71, 0x6f, 0x40, 0x1e, 0xda, 0x1e, 0x02, 0x8a, 0x4e, 0xd4, 0xa0, 0x5b, 0xea, 0x8b, 0xf8, 0x1a, 0xcf, 0xd9, 0x30, }; static const unsigned char xdh_wei25519_399_privkey[] = { 0x68, 0xbe, 0xd4, 0x25, 0xd5, 0x34, 0x31, 0x55, 0x84, 0xd8, 0x0f, 0x79, 0xda, 0x6e, 0xab, 0x9b, 0x7e, 0x60, 0x36, 0xb5, 0x1f, 0xe6, 0x2e, 0x1a, 0xd9, 0x33, 0xe2, 0x66, 0x64, 0x0b, 0x46, 0x73, }; static const unsigned char xdh_wei25519_399_sharedsecret[] = { 0x51, 0x4a, 0x4c, 0xd0, 0x67, 0x6f, 0x1c, 0x31, 0x01, 0xc8, 0xc4, 0x5c, 0x17, 0xad, 0x41, 0x6b, 0xd3, 0x3e, 0x20, 0xa4, 0x05, 0x54, 0x4f, 0xc1, 0xa6, 0x04, 0x49, 0xab, 0xb2, 0x2f, 0xa1, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_399 = { .name = "xdh_wei25519_399", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_399_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_399_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_399_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 400 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 400 for XDH, tcId is 401 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_400_peerpubkey[] = { 0x0f, 0x46, 0x01, 0x00, 0xd8, 0x8a, 0x1d, 0x31, 0x6d, 0xff, 0x02, 0xd1, 0xb2, 0x2f, 0xfb, 0x2e, 0x42, 0xd9, 0x9d, 0x0b, 0x92, 0x47, 0x4f, 0xc3, 0xec, 0x7d, 0x62, 0x56, 0x7d, 0x0c, 0xf1, 0x12, }; static const unsigned char xdh_wei25519_400_privkey[] = { 0x98, 0xff, 0x28, 0x56, 0xef, 0x44, 0xb4, 0xfa, 0x14, 0xd8, 0x67, 0x82, 0xea, 0x79, 0x38, 0x28, 0xbd, 0xf6, 0xf1, 0xef, 0x9b, 0x66, 0x9c, 0xac, 0x1a, 0xae, 0x33, 0x8a, 0x7b, 0xb6, 0x93, 0x76, }; static const unsigned char xdh_wei25519_400_sharedsecret[] = { 0xed, 0x83, 0xe8, 0x10, 0xce, 0x5f, 0xf0, 0x86, 0x8f, 0x85, 0x89, 0x62, 0x3b, 0xb1, 0x34, 0x78, 0xde, 0xc1, 0xc2, 0x23, 0x26, 0xc9, 0x27, 0x65, 0xae, 0x5e, 0x48, 0xc8, 0x4b, 0xba, 0xbb, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_400 = { .name = "xdh_wei25519_400", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_400_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_400_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_400_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 401 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 401 for XDH, tcId is 402 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_401_peerpubkey[] = { 0x13, 0x75, 0x6a, 0x41, 0x1f, 0xf3, 0xae, 0x0c, 0x39, 0x22, 0x2d, 0xde, 0x08, 0x10, 0xf0, 0x8c, 0x43, 0x24, 0x63, 0x16, 0x2d, 0x81, 0xef, 0x06, 0x10, 0x71, 0x24, 0x9a, 0x48, 0x43, 0x9e, 0x15, }; static const unsigned char xdh_wei25519_401_privkey[] = { 0xb0, 0xcd, 0xbf, 0xdd, 0x98, 0xbd, 0x98, 0x8d, 0x7c, 0x6a, 0x53, 0x04, 0x55, 0xc5, 0x1c, 0x57, 0xdd, 0x33, 0xfd, 0x2c, 0x7a, 0xee, 0x39, 0x61, 0x97, 0x1b, 0xd3, 0xa3, 0x13, 0x88, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_401_sharedsecret[] = { 0xff, 0x94, 0x86, 0x21, 0x17, 0xd3, 0xc6, 0xed, 0xc9, 0xdd, 0x5f, 0x48, 0x52, 0xfa, 0x8a, 0x58, 0x94, 0x52, 0xb9, 0x24, 0xca, 0x8a, 0x75, 0xcb, 0x23, 0xb3, 0xd6, 0x8d, 0xfe, 0xd8, 0x8c, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_401 = { .name = "xdh_wei25519_401", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_401_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_401_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_401_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 402 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 402 for XDH, tcId is 403 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_402_peerpubkey[] = { 0x8f, 0xc1, 0xfa, 0xe9, 0x69, 0xa6, 0x18, 0x54, 0x04, 0xdb, 0x22, 0x74, 0x9e, 0xf6, 0xd2, 0x25, 0xde, 0x86, 0x77, 0x3a, 0x4d, 0x1b, 0xf3, 0x85, 0x7e, 0xb8, 0xfb, 0xbd, 0x82, 0x9a, 0x1b, 0x47, }; static const unsigned char xdh_wei25519_402_privkey[] = { 0xe0, 0x67, 0x76, 0x44, 0xed, 0x49, 0x35, 0xf0, 0x1e, 0x05, 0x2e, 0x99, 0x67, 0x30, 0x2d, 0x0f, 0xb7, 0x8f, 0xf2, 0x2b, 0xb9, 0x2f, 0xba, 0xe0, 0x60, 0x5f, 0x3e, 0xe5, 0x4e, 0x2f, 0x68, 0x78, }; static const unsigned char xdh_wei25519_402_sharedsecret[] = { 0x1c, 0x94, 0x86, 0x8b, 0xc8, 0xac, 0xb3, 0x13, 0x74, 0x98, 0x20, 0x9b, 0x28, 0x12, 0xfe, 0xb5, 0x35, 0x01, 0x38, 0x9f, 0x5a, 0xa3, 0x7f, 0xec, 0xbf, 0xd5, 0xcb, 0x54, 0xe1, 0x35, 0x8e, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_402 = { .name = "xdh_wei25519_402", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_402_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_402_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_402_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 403 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 403 for XDH, tcId is 404 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_403_peerpubkey[] = { 0x7b, 0xab, 0x08, 0x91, 0xec, 0xb9, 0xe7, 0x2a, 0x15, 0x77, 0x1f, 0x0a, 0x4f, 0xff, 0x90, 0x54, 0x70, 0x24, 0x20, 0x63, 0x39, 0xc3, 0x40, 0xb1, 0xa2, 0xfd, 0xb5, 0x3b, 0xcf, 0xb8, 0x6b, 0x59, }; static const unsigned char xdh_wei25519_403_privkey[] = { 0x88, 0x7b, 0x61, 0x55, 0x38, 0x43, 0xca, 0x99, 0xad, 0x1c, 0xa9, 0x22, 0x53, 0xa6, 0xfe, 0x08, 0x2b, 0x82, 0x49, 0x47, 0x52, 0x51, 0x3f, 0xd5, 0x3f, 0xf6, 0x53, 0x0f, 0x54, 0xc4, 0x05, 0x72, }; static const unsigned char xdh_wei25519_403_sharedsecret[] = { 0xad, 0xbf, 0x3b, 0x43, 0x9b, 0x16, 0xdb, 0xc6, 0x53, 0x57, 0x8f, 0x53, 0x37, 0x4e, 0xd3, 0xa8, 0x6f, 0x9c, 0x0b, 0xf1, 0xf7, 0x36, 0x57, 0x33, 0x49, 0x77, 0x3b, 0xc3, 0xb8, 0xd6, 0x07, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_403 = { .name = "xdh_wei25519_403", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_403_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_403_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_403_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 404 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 404 for XDH, tcId is 405 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_404_peerpubkey[] = { 0x10, 0x2e, 0x95, 0xea, 0xdc, 0xa7, 0xc3, 0xc2, 0x8e, 0x5d, 0x52, 0x33, 0x6c, 0x85, 0x7b, 0xad, 0x99, 0xea, 0x24, 0x6f, 0x29, 0x9b, 0x06, 0x33, 0x4f, 0x40, 0x12, 0x76, 0xf4, 0x9c, 0xa8, 0x14, }; static const unsigned char xdh_wei25519_404_privkey[] = { 0x00, 0x61, 0x5e, 0x46, 0x97, 0x01, 0x4f, 0xc1, 0x24, 0x84, 0xef, 0x53, 0xa1, 0x44, 0x02, 0x06, 0x41, 0x0a, 0x8d, 0xf7, 0x8c, 0xaa, 0x0b, 0xff, 0xf8, 0x21, 0x61, 0xdb, 0x83, 0xfe, 0xa5, 0x74, }; static const unsigned char xdh_wei25519_404_sharedsecret[] = { 0x39, 0x52, 0xef, 0xb9, 0x35, 0x73, 0xae, 0x9c, 0xe2, 0x16, 0x2d, 0x10, 0xe4, 0xb8, 0xc4, 0x64, 0x35, 0x85, 0x9f, 0x3f, 0x27, 0x78, 0xdb, 0x89, 0xf7, 0x2b, 0xc5, 0x79, 0xe6, 0x95, 0xcb, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_404 = { .name = "xdh_wei25519_404", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_404_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_404_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_404_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 405 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 405 for XDH, tcId is 406 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_405_peerpubkey[] = { 0x35, 0x48, 0xc1, 0x6b, 0xf3, 0x1a, 0xfd, 0xcd, 0x44, 0x5a, 0xd9, 0xbe, 0xf0, 0xe6, 0x0d, 0x7b, 0xd6, 0x19, 0x5a, 0xa5, 0x91, 0xca, 0x8c, 0x82, 0x81, 0x3c, 0xd7, 0xd4, 0x46, 0x22, 0x67, 0x20, }; static const unsigned char xdh_wei25519_405_privkey[] = { 0x58, 0x17, 0x51, 0x13, 0x55, 0x0f, 0xaa, 0xd5, 0x64, 0x58, 0xfb, 0x37, 0x5a, 0x6c, 0xb3, 0xf0, 0x5d, 0xf2, 0xf6, 0xff, 0x3c, 0x4e, 0xe0, 0x9d, 0x4a, 0x6b, 0xa6, 0x43, 0xe0, 0x22, 0xd1, 0x7a, }; static const unsigned char xdh_wei25519_405_sharedsecret[] = { 0x96, 0x12, 0x8f, 0x92, 0x9f, 0xc0, 0x3c, 0x12, 0x69, 0xd4, 0x29, 0xf6, 0x09, 0xa1, 0xa8, 0xac, 0xac, 0x7a, 0x75, 0x8e, 0x34, 0x46, 0xa1, 0x25, 0xec, 0xf4, 0xa3, 0x59, 0xa0, 0xe3, 0x7b, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_405 = { .name = "xdh_wei25519_405", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_405_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_405_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_405_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 406 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 406 for XDH, tcId is 407 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_406_peerpubkey[] = { 0xba, 0x74, 0xe7, 0x66, 0xd4, 0x48, 0x55, 0xec, 0x93, 0xbd, 0x44, 0x1a, 0xa4, 0x10, 0x58, 0xa4, 0xc4, 0xad, 0x2b, 0xe6, 0x3c, 0x63, 0x9a, 0x3f, 0x9a, 0x87, 0xbd, 0xe5, 0x1e, 0xea, 0xba, 0x20, }; static const unsigned char xdh_wei25519_406_privkey[] = { 0x00, 0x97, 0x38, 0xe1, 0xe6, 0xef, 0xef, 0x9e, 0x2c, 0xad, 0x8b, 0x41, 0x6f, 0xe9, 0x0a, 0x09, 0x8e, 0xb5, 0xcb, 0x01, 0x99, 0xf2, 0xdf, 0x52, 0x18, 0x16, 0x6c, 0x7b, 0x18, 0x1e, 0xa0, 0x79, }; static const unsigned char xdh_wei25519_406_sharedsecret[] = { 0xfe, 0xc3, 0xe9, 0x4c, 0xb5, 0xf3, 0x16, 0x62, 0x5b, 0x09, 0x0c, 0x2c, 0x82, 0x08, 0x28, 0xce, 0x0f, 0x3e, 0xe4, 0x31, 0xe8, 0xd6, 0xe1, 0x2a, 0xbc, 0xcc, 0x7e, 0xf2, 0xbd, 0x0b, 0xe8, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_406 = { .name = "xdh_wei25519_406", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_406_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_406_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_406_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 407 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 407 for XDH, tcId is 408 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_407_peerpubkey[] = { 0x9a, 0x5a, 0x1d, 0x37, 0xe5, 0x01, 0x0c, 0x35, 0x6a, 0xa8, 0x0a, 0xfb, 0x34, 0x7c, 0x3d, 0x61, 0x35, 0x42, 0xdd, 0xfa, 0x0b, 0xe7, 0xab, 0xb8, 0xe8, 0xcd, 0xcd, 0x66, 0x74, 0x41, 0x14, 0x49, }; static const unsigned char xdh_wei25519_407_privkey[] = { 0xc8, 0x20, 0x19, 0x15, 0x9b, 0xe7, 0x92, 0x74, 0x7a, 0x39, 0xf3, 0x88, 0xea, 0x48, 0xa8, 0xc5, 0x68, 0x59, 0x4e, 0x33, 0x83, 0x27, 0x3e, 0x51, 0x10, 0x07, 0x21, 0xb3, 0x76, 0xe8, 0xba, 0x73, }; static const unsigned char xdh_wei25519_407_sharedsecret[] = { 0x96, 0x90, 0x3b, 0xac, 0x9d, 0xc6, 0x0b, 0x61, 0x78, 0xd7, 0x34, 0x89, 0x0c, 0x25, 0xdb, 0x4b, 0xed, 0x9e, 0xa4, 0xdb, 0xcf, 0x6f, 0xcb, 0xcd, 0xc9, 0x0e, 0x6f, 0x56, 0x94, 0xc8, 0xb2, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_407 = { .name = "xdh_wei25519_407", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_407_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_407_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_407_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 408 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 408 for XDH, tcId is 409 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_408_peerpubkey[] = { 0x63, 0x08, 0x47, 0xe2, 0x82, 0x74, 0xdb, 0xae, 0x54, 0x91, 0x21, 0x03, 0x03, 0xc8, 0x5a, 0x35, 0x90, 0x74, 0xee, 0x74, 0x29, 0x57, 0xb0, 0xfc, 0x3c, 0x9f, 0xf5, 0x5d, 0x9e, 0x01, 0x9a, 0x50, }; static const unsigned char xdh_wei25519_408_privkey[] = { 0x10, 0xac, 0x9f, 0x83, 0x83, 0x26, 0x2e, 0xf2, 0x80, 0xfa, 0xac, 0x1e, 0x4d, 0xa1, 0x5a, 0x7d, 0xe4, 0xf2, 0xcb, 0x74, 0xaf, 0x33, 0xb5, 0x0e, 0x0d, 0x82, 0xdc, 0xb8, 0x5d, 0x8b, 0xcb, 0x70, }; static const unsigned char xdh_wei25519_408_sharedsecret[] = { 0x50, 0x05, 0x0d, 0x0a, 0xb1, 0xdd, 0xd2, 0xdd, 0x90, 0xc4, 0x60, 0xab, 0x8f, 0x09, 0xe1, 0xf8, 0x0e, 0x37, 0xca, 0xe5, 0x7d, 0x42, 0x31, 0xad, 0xae, 0x10, 0xc1, 0x0a, 0x4a, 0x2b, 0x00, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_408 = { .name = "xdh_wei25519_408", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_408_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_408_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_408_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 409 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 409 for XDH, tcId is 410 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_409_peerpubkey[] = { 0x11, 0x74, 0x9b, 0x00, 0xa4, 0x50, 0x67, 0xaf, 0x2c, 0x7e, 0x7d, 0x50, 0xf8, 0xd1, 0x78, 0xd5, 0xa9, 0xfe, 0xdb, 0x8f, 0x1b, 0x69, 0xb2, 0x39, 0x76, 0x38, 0x85, 0xbc, 0x61, 0x1b, 0x13, 0x6c, }; static const unsigned char xdh_wei25519_409_privkey[] = { 0xb8, 0x4c, 0x09, 0x83, 0x82, 0xf6, 0xe3, 0x7d, 0x51, 0x0c, 0xc3, 0x3e, 0x62, 0xdd, 0xc6, 0x64, 0xe0, 0x2c, 0x8b, 0xb6, 0xed, 0x9e, 0xd0, 0xe5, 0xfa, 0x78, 0xcc, 0x09, 0x9a, 0x26, 0xfe, 0x73, }; static const unsigned char xdh_wei25519_409_sharedsecret[] = { 0x91, 0x70, 0xc4, 0xc6, 0x28, 0xd5, 0xfc, 0xfd, 0x0e, 0xc7, 0x19, 0xcf, 0x6e, 0x17, 0x96, 0xda, 0xb0, 0xa6, 0x9e, 0x46, 0xd6, 0x37, 0x9f, 0xff, 0xa2, 0x47, 0xd4, 0x44, 0xa0, 0x05, 0x60, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_409 = { .name = "xdh_wei25519_409", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_409_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_409_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_409_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 410 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 410 for XDH, tcId is 411 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_410_peerpubkey[] = { 0xdf, 0x10, 0x21, 0xd8, 0xf9, 0x59, 0x50, 0xaf, 0xde, 0x77, 0xc8, 0x6b, 0xa5, 0xee, 0x2f, 0x58, 0x76, 0xef, 0x77, 0x83, 0x76, 0xa7, 0xfd, 0xc7, 0xef, 0xb8, 0xdf, 0xf0, 0xe4, 0x83, 0x6e, 0x7b, }; static const unsigned char xdh_wei25519_410_privkey[] = { 0x78, 0xcd, 0xe8, 0x93, 0x0a, 0x1d, 0x81, 0xae, 0xf6, 0x60, 0x1f, 0x71, 0x40, 0x97, 0x28, 0x85, 0x49, 0x87, 0x57, 0x8b, 0x0f, 0x83, 0x49, 0x58, 0x8c, 0x04, 0xad, 0xbe, 0x2c, 0x1f, 0x6e, 0x74, }; static const unsigned char xdh_wei25519_410_sharedsecret[] = { 0xd7, 0xd2, 0xa8, 0x29, 0x53, 0xf6, 0x80, 0xce, 0xe0, 0xc8, 0x1c, 0x4d, 0x00, 0xfe, 0x62, 0x8a, 0xc5, 0x30, 0xce, 0x68, 0x2e, 0xb7, 0xfb, 0x3b, 0x0a, 0xf2, 0x4f, 0x80, 0x4a, 0x58, 0xef, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_410 = { .name = "xdh_wei25519_410", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_410_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_410_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_410_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 411 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 411 for XDH, tcId is 412 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_411_peerpubkey[] = { 0x27, 0x43, 0xba, 0x40, 0x8d, 0x5f, 0x68, 0xc6, 0x53, 0x24, 0xa4, 0x85, 0x08, 0x6a, 0x00, 0x4b, 0x6b, 0xbf, 0x78, 0x4c, 0xc9, 0xe8, 0xb1, 0xa7, 0xdb, 0xeb, 0x8c, 0x4b, 0x94, 0x14, 0xb0, 0x18, }; static const unsigned char xdh_wei25519_411_privkey[] = { 0xb0, 0xfe, 0x7b, 0x06, 0xb9, 0x95, 0x06, 0x00, 0xb3, 0xa7, 0xce, 0x1d, 0x7b, 0xb2, 0xa1, 0xd9, 0x84, 0x19, 0x4c, 0xc9, 0xd6, 0xc8, 0x96, 0x45, 0x04, 0xc3, 0x64, 0xdd, 0x5c, 0x87, 0x5b, 0x74, }; static const unsigned char xdh_wei25519_411_sharedsecret[] = { 0xa6, 0xb9, 0x7d, 0xa9, 0x89, 0xdc, 0xcf, 0x73, 0x0f, 0x12, 0x2d, 0x45, 0x51, 0x52, 0x32, 0x80, 0x51, 0xc8, 0xed, 0x9a, 0xbc, 0x18, 0x15, 0xc1, 0x9e, 0xec, 0x65, 0x01, 0xd6, 0xcf, 0xc7, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_411 = { .name = "xdh_wei25519_411", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_411_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_411_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_411_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 412 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 412 for XDH, tcId is 413 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_412_peerpubkey[] = { 0xcc, 0x27, 0x5a, 0x2c, 0xdd, 0x91, 0x25, 0xe5, 0x2f, 0x20, 0xce, 0x2a, 0xba, 0xd4, 0x1f, 0x92, 0x0a, 0xfa, 0x5a, 0x64, 0x3f, 0xb7, 0xf2, 0x76, 0xef, 0x41, 0x6f, 0x76, 0x1d, 0x68, 0x9f, 0x1e, }; static const unsigned char xdh_wei25519_412_privkey[] = { 0xf0, 0xc9, 0xc3, 0x98, 0x48, 0x54, 0xd5, 0xbd, 0x59, 0x9d, 0x38, 0x19, 0x73, 0x8a, 0x02, 0x3e, 0xb7, 0x95, 0xe9, 0x35, 0x86, 0xdc, 0x0e, 0x5e, 0x29, 0xb1, 0xc8, 0x70, 0xc6, 0x12, 0xd1, 0x78, }; static const unsigned char xdh_wei25519_412_sharedsecret[] = { 0xb2, 0x10, 0xe3, 0x68, 0x72, 0x95, 0x01, 0xd9, 0xf9, 0xb6, 0xeb, 0xef, 0xbe, 0xba, 0xe3, 0x8f, 0x19, 0x5f, 0x91, 0xea, 0xf2, 0xa5, 0xa3, 0xa4, 0x92, 0x88, 0xbb, 0x61, 0x5f, 0xf2, 0x21, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_412 = { .name = "xdh_wei25519_412", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_412_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_412_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_412_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 413 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 413 for XDH, tcId is 414 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_413_peerpubkey[] = { 0x49, 0x29, 0x54, 0x31, 0x01, 0xee, 0x7a, 0xe2, 0x39, 0x05, 0x9c, 0xd1, 0x34, 0xc3, 0x5d, 0x40, 0x0e, 0x50, 0xd0, 0x82, 0x14, 0x41, 0x35, 0x1d, 0x0f, 0xa6, 0xc3, 0xd5, 0x4e, 0xfb, 0x34, 0x2e, }; static const unsigned char xdh_wei25519_413_privkey[] = { 0x90, 0x6c, 0x2f, 0x12, 0xbe, 0x89, 0x70, 0x2d, 0xb2, 0x6f, 0xa7, 0xee, 0x90, 0x5c, 0xe3, 0x65, 0x25, 0xd2, 0xde, 0xe4, 0xe9, 0x6a, 0x87, 0x9c, 0xa0, 0x7d, 0xa0, 0x97, 0xa6, 0xaa, 0x50, 0x75, }; static const unsigned char xdh_wei25519_413_sharedsecret[] = { 0xb9, 0xe3, 0x79, 0x6c, 0x58, 0x70, 0x1d, 0xed, 0x42, 0x37, 0xc5, 0x29, 0x94, 0x50, 0x1c, 0xee, 0x14, 0xe1, 0x8f, 0x2f, 0xb0, 0x2b, 0x78, 0x1a, 0x84, 0x00, 0x92, 0x34, 0x84, 0xbd, 0x4a, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_413 = { .name = "xdh_wei25519_413", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_413_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_413_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_413_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 414 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 414 for XDH, tcId is 415 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_414_peerpubkey[] = { 0x13, 0x24, 0xe0, 0x36, 0x85, 0x97, 0xb3, 0x18, 0x15, 0x55, 0xbb, 0x5b, 0x2c, 0xc7, 0xb7, 0xeb, 0xba, 0x46, 0x93, 0x1a, 0xea, 0xbb, 0x6f, 0x05, 0xab, 0xab, 0xd4, 0x24, 0x0f, 0x0f, 0xb9, 0x33, }; static const unsigned char xdh_wei25519_414_privkey[] = { 0xf0, 0x26, 0x03, 0x1e, 0xa3, 0x73, 0xe1, 0xd1, 0x6e, 0x6e, 0x7e, 0x03, 0x57, 0xbc, 0x96, 0xbc, 0x09, 0x3f, 0x4b, 0x6b, 0xb7, 0x6a, 0x73, 0x8c, 0xbb, 0x54, 0xfe, 0x6c, 0xfd, 0x2e, 0xa2, 0x71, }; static const unsigned char xdh_wei25519_414_sharedsecret[] = { 0x6d, 0xcd, 0xf8, 0xe8, 0x69, 0x03, 0xb0, 0xca, 0xde, 0xd1, 0x24, 0xd8, 0xa7, 0xda, 0x18, 0xe6, 0x23, 0x43, 0x0c, 0xa8, 0x69, 0xaa, 0xf2, 0x67, 0xd3, 0x10, 0x29, 0xd9, 0x3d, 0xe9, 0x9e, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_414 = { .name = "xdh_wei25519_414", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_414_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_414_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_414_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 415 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 415 for XDH, tcId is 416 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_415_peerpubkey[] = { 0xc7, 0xf3, 0x84, 0x22, 0x97, 0xd6, 0x94, 0x1c, 0xac, 0x63, 0xd6, 0xf1, 0xbd, 0xae, 0xa0, 0x70, 0x94, 0x37, 0xc8, 0x2d, 0xbc, 0x91, 0x61, 0xfc, 0x1b, 0xae, 0x6c, 0x79, 0xd6, 0x68, 0xeb, 0x44, }; static const unsigned char xdh_wei25519_415_privkey[] = { 0x70, 0x3f, 0x4a, 0xc8, 0x66, 0x7d, 0x77, 0xf9, 0x53, 0x60, 0x45, 0xcf, 0x74, 0x8f, 0x18, 0xd4, 0x23, 0x45, 0xe3, 0x9c, 0xca, 0xb1, 0x0c, 0x18, 0xdd, 0xe0, 0xf5, 0x17, 0x0d, 0x30, 0x7f, 0x73, }; static const unsigned char xdh_wei25519_415_sharedsecret[] = { 0x38, 0x5d, 0xdb, 0xf2, 0x50, 0x5e, 0xbf, 0x53, 0x7b, 0xf5, 0xe9, 0x76, 0xb6, 0x1a, 0x4b, 0x69, 0xd1, 0x90, 0xae, 0x96, 0x5b, 0x7e, 0x4a, 0x81, 0xae, 0x4e, 0x1c, 0x16, 0xb7, 0x14, 0x87, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_415 = { .name = "xdh_wei25519_415", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_415_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_415_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_415_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 416 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 416 for XDH, tcId is 417 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_416_peerpubkey[] = { 0x1e, 0x46, 0x60, 0xba, 0x86, 0x5f, 0xb8, 0x08, 0x5a, 0xfd, 0x46, 0x92, 0x88, 0x5d, 0x74, 0x23, 0x7f, 0xa3, 0xbc, 0xa5, 0xaf, 0x4b, 0x84, 0xba, 0x3d, 0xe4, 0x00, 0xf1, 0x6a, 0x5a, 0xc4, 0x5c, }; static const unsigned char xdh_wei25519_416_privkey[] = { 0xc8, 0xa9, 0x6a, 0xe4, 0xe7, 0x72, 0x71, 0xa0, 0x68, 0x0d, 0xd2, 0x4f, 0xcb, 0x09, 0xf9, 0xc5, 0xd3, 0xee, 0x83, 0x16, 0x53, 0x6e, 0xec, 0x7c, 0xc2, 0x27, 0x65, 0x97, 0xe5, 0x0f, 0xe3, 0x7f, }; static const unsigned char xdh_wei25519_416_sharedsecret[] = { 0x0f, 0xba, 0xea, 0x73, 0xf9, 0x51, 0x87, 0x95, 0xe0, 0x26, 0xc1, 0xfc, 0x10, 0x79, 0xc3, 0x73, 0x8a, 0xeb, 0x9e, 0xe9, 0xc8, 0xdc, 0x97, 0x61, 0xd6, 0x5b, 0xbf, 0x8f, 0x94, 0xe3, 0x01, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_416 = { .name = "xdh_wei25519_416", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_416_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_416_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_416_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 417 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 417 for XDH, tcId is 418 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_417_peerpubkey[] = { 0x24, 0x88, 0xbb, 0x6f, 0xad, 0xb7, 0x9d, 0x46, 0x58, 0x5f, 0xf0, 0x1c, 0x16, 0x0c, 0x5b, 0x41, 0x72, 0x79, 0x9d, 0x92, 0xbd, 0x16, 0x8e, 0xdc, 0xeb, 0x65, 0xce, 0xde, 0xdc, 0x49, 0x27, 0x62, }; static const unsigned char xdh_wei25519_417_privkey[] = { 0xd0, 0xdd, 0xe8, 0xed, 0xa3, 0x8c, 0x37, 0x83, 0x44, 0x28, 0x64, 0xc0, 0xcb, 0x46, 0xa0, 0xe9, 0x83, 0x2d, 0xcf, 0x78, 0x4c, 0x21, 0x26, 0x8a, 0x21, 0xbe, 0xd2, 0xca, 0xce, 0x87, 0xcd, 0x70, }; static const unsigned char xdh_wei25519_417_sharedsecret[] = { 0x51, 0x0c, 0x64, 0x15, 0x1e, 0x5d, 0x07, 0x37, 0xfc, 0x32, 0x4b, 0xd1, 0x5f, 0xb5, 0xd3, 0x96, 0x69, 0x08, 0x75, 0x1c, 0xd1, 0xa0, 0x69, 0x54, 0xb5, 0x56, 0x19, 0x66, 0x55, 0xee, 0x55, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_417 = { .name = "xdh_wei25519_417", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_417_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_417_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_417_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 418 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 418 for XDH, tcId is 419 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_418_peerpubkey[] = { 0xa0, 0xc1, 0x08, 0x78, 0x11, 0xaf, 0x14, 0x91, 0x17, 0x1b, 0xc5, 0x16, 0x91, 0xb8, 0xca, 0x84, 0x71, 0x6a, 0xf3, 0x6c, 0x4b, 0xaa, 0x76, 0x4e, 0xc5, 0x36, 0x28, 0x0c, 0xc1, 0x98, 0x3d, 0x6d, }; static const unsigned char xdh_wei25519_418_privkey[] = { 0xc0, 0x9c, 0xd4, 0x7e, 0x1c, 0xe5, 0x36, 0x04, 0xf1, 0x4e, 0x4e, 0x13, 0x42, 0x6c, 0x8f, 0x08, 0x96, 0x2f, 0x55, 0x6b, 0xcd, 0x81, 0xf8, 0xd7, 0x53, 0x75, 0xb1, 0x50, 0x7c, 0x6f, 0xda, 0x78, }; static const unsigned char xdh_wei25519_418_sharedsecret[] = { 0x23, 0xef, 0x82, 0x5e, 0x1c, 0x8e, 0x6e, 0x64, 0x42, 0x80, 0x01, 0xa7, 0x46, 0x3e, 0x32, 0xa9, 0x70, 0x1c, 0x81, 0xcf, 0x78, 0x20, 0x3e, 0x6a, 0xe7, 0x53, 0x74, 0x0c, 0x91, 0x57, 0x0e, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_418 = { .name = "xdh_wei25519_418", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_418_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_418_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_418_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 419 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 419 for XDH, tcId is 420 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_419_peerpubkey[] = { 0xcc, 0x5c, 0x97, 0x93, 0x46, 0x07, 0xd8, 0xb9, 0x81, 0xbc, 0xe1, 0xd6, 0xa2, 0x32, 0xbb, 0x3a, 0xec, 0xc3, 0x00, 0x1f, 0x69, 0x8a, 0xe1, 0xae, 0x84, 0x93, 0x8f, 0xbf, 0x28, 0x61, 0x07, 0x7b, }; static const unsigned char xdh_wei25519_419_privkey[] = { 0xe0, 0x9a, 0x5f, 0x74, 0xf3, 0x18, 0xf0, 0x23, 0x03, 0x85, 0x7a, 0xa0, 0x20, 0x8d, 0x76, 0x91, 0x3d, 0x9e, 0x24, 0x0a, 0x80, 0x54, 0x9d, 0x12, 0x01, 0x31, 0x18, 0xba, 0xd6, 0x20, 0x59, 0x7f, }; static const unsigned char xdh_wei25519_419_sharedsecret[] = { 0x0e, 0x55, 0xa7, 0xec, 0x1a, 0x2d, 0xdb, 0xea, 0x1a, 0xc5, 0x98, 0x12, 0x00, 0x81, 0x22, 0x32, 0xf7, 0xf4, 0xc3, 0xa6, 0x0e, 0xe3, 0xc9, 0xab, 0x09, 0xf2, 0x16, 0x3b, 0xd1, 0x3d, 0xa3, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_419 = { .name = "xdh_wei25519_419", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_419_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_419_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_419_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 420 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 420 for XDH, tcId is 421 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_420_peerpubkey[] = { 0x23, 0x8d, 0xe7, 0xfc, 0xc8, 0xa3, 0xf1, 0x94, 0xc3, 0x55, 0x4c, 0x32, 0x8e, 0xfb, 0x12, 0x15, 0xd0, 0x64, 0x0a, 0xc6, 0x74, 0xb6, 0x1a, 0x98, 0xef, 0x93, 0x4e, 0xc0, 0x04, 0xcf, 0xd7, 0x3b, }; static const unsigned char xdh_wei25519_420_privkey[] = { 0x70, 0x6c, 0xee, 0x5f, 0x9b, 0x35, 0x7c, 0x03, 0xb2, 0xf1, 0x91, 0x32, 0x94, 0xf6, 0xe4, 0xf0, 0xca, 0x5a, 0x19, 0x0a, 0x87, 0xd3, 0x02, 0x68, 0x32, 0x7d, 0x0c, 0xb6, 0xbd, 0xd5, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_420_sharedsecret[] = { 0x06, 0x81, 0x03, 0x6a, 0x0d, 0x27, 0x58, 0x3b, 0xa6, 0xf2, 0xbe, 0x76, 0x30, 0x61, 0x31, 0x71, 0xa3, 0x3f, 0xb8, 0xa6, 0xc8, 0x99, 0x1c, 0x53, 0xb3, 0x79, 0x99, 0x9f, 0x0f, 0x15, 0x92, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_420 = { .name = "xdh_wei25519_420", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_420_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_420_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_420_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 421 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 421 for XDH, tcId is 422 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_421_peerpubkey[] = { 0xac, 0x9f, 0xd8, 0x0a, 0x45, 0xda, 0x10, 0x9f, 0xa2, 0x32, 0x93, 0x90, 0xe5, 0xa9, 0x51, 0xcf, 0xc0, 0x30, 0x65, 0xd7, 0xbb, 0x4a, 0x78, 0x55, 0x82, 0x6c, 0xcb, 0x22, 0xc3, 0xbf, 0xeb, 0x3d, }; static const unsigned char xdh_wei25519_421_privkey[] = { 0x40, 0xe3, 0x00, 0xcb, 0x1f, 0xf2, 0x60, 0x57, 0x4f, 0x85, 0xb3, 0xf0, 0x4a, 0xac, 0x47, 0x84, 0x64, 0xa8, 0x6e, 0x62, 0x03, 0xb3, 0xd4, 0x65, 0x64, 0x18, 0xf4, 0x30, 0x51, 0x57, 0x87, 0x7b, }; static const unsigned char xdh_wei25519_421_sharedsecret[] = { 0x67, 0xb8, 0x87, 0x74, 0xf1, 0x9b, 0xd1, 0x08, 0x1d, 0x6f, 0x23, 0x65, 0x6a, 0x13, 0x58, 0x03, 0xe3, 0x4a, 0xe1, 0xcd, 0xca, 0xe1, 0x08, 0x18, 0x12, 0x4a, 0x78, 0x56, 0x9c, 0x29, 0x9f, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_421 = { .name = "xdh_wei25519_421", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_421_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_421_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_421_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 422 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 422 for XDH, tcId is 423 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_422_peerpubkey[] = { 0xa4, 0x5a, 0xb1, 0xdc, 0x2f, 0xa2, 0xc5, 0x07, 0x18, 0xfb, 0x49, 0x85, 0xd9, 0x79, 0x14, 0x01, 0xe8, 0xd2, 0xd3, 0x4f, 0xfe, 0x3c, 0xd9, 0x3c, 0xff, 0xb4, 0xe8, 0x70, 0xcc, 0xe5, 0xe8, 0x55, }; static const unsigned char xdh_wei25519_422_privkey[] = { 0x88, 0x2f, 0x78, 0xb4, 0x55, 0x8b, 0x7f, 0xaa, 0x83, 0x59, 0x04, 0xc9, 0x23, 0x5e, 0x32, 0xf3, 0x00, 0xfc, 0x8b, 0x5e, 0xf0, 0xa7, 0x18, 0x40, 0x6a, 0x5c, 0x85, 0x20, 0xca, 0x54, 0xd0, 0x71, }; static const unsigned char xdh_wei25519_422_sharedsecret[] = { 0xa5, 0x12, 0xe8, 0x64, 0xbd, 0x89, 0x8a, 0x5b, 0xa6, 0x55, 0x1a, 0xdc, 0xeb, 0xd8, 0x36, 0xc6, 0xa7, 0x8e, 0x78, 0x71, 0x72, 0x8e, 0x1b, 0x8e, 0xe5, 0x28, 0xd4, 0x83, 0xaf, 0x27, 0x61, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_422 = { .name = "xdh_wei25519_422", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_422_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_422_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_422_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 423 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 423 for XDH, tcId is 424 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_423_peerpubkey[] = { 0x17, 0x61, 0xd3, 0xd5, 0x0b, 0xa4, 0x6b, 0x44, 0x66, 0x55, 0xaa, 0x6a, 0x8d, 0x9b, 0x8b, 0x75, 0xaa, 0x5b, 0xb2, 0x4a, 0x79, 0x53, 0x20, 0x8d, 0x5b, 0x69, 0xfc, 0xc3, 0x8f, 0x18, 0xec, 0x7a, }; static const unsigned char xdh_wei25519_423_privkey[] = { 0xd8, 0x64, 0x9b, 0x73, 0x55, 0x90, 0xa1, 0x7d, 0x0f, 0xc4, 0xc3, 0x78, 0xfb, 0xf4, 0xc2, 0xf7, 0xd6, 0x60, 0x05, 0x69, 0xb2, 0xe8, 0x4c, 0xbe, 0x0f, 0xf7, 0xbc, 0xdb, 0xac, 0x0b, 0x5f, 0x71, }; static const unsigned char xdh_wei25519_423_sharedsecret[] = { 0x51, 0x8b, 0x77, 0x8c, 0xf5, 0xe9, 0x76, 0xc6, 0x02, 0x35, 0xab, 0xcf, 0x62, 0x11, 0xa1, 0x8b, 0xad, 0x2a, 0x8e, 0x69, 0x3a, 0xb2, 0x61, 0x07, 0x4c, 0x7f, 0xab, 0x43, 0xdb, 0xb5, 0xda, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_423 = { .name = "xdh_wei25519_423", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_423_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_423_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_423_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 424 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 424 for XDH, tcId is 425 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_424_peerpubkey[] = { 0xdc, 0x99, 0xad, 0x00, 0x31, 0x46, 0x3e, 0x45, 0x37, 0xc0, 0x1e, 0x16, 0x62, 0x99, 0x66, 0xd1, 0xb9, 0x62, 0xc0, 0xb4, 0xe4, 0x87, 0x2f, 0x06, 0x7c, 0xa3, 0xc2, 0x6c, 0xcc, 0x95, 0x70, 0x01, }; static const unsigned char xdh_wei25519_424_privkey[] = { 0xa8, 0xed, 0xec, 0x59, 0xae, 0x6b, 0xa2, 0x38, 0x13, 0xec, 0x54, 0xd6, 0x6d, 0xf1, 0x52, 0xe0, 0x62, 0x67, 0x62, 0xb9, 0x7d, 0x4b, 0x0c, 0x20, 0xe0, 0xdd, 0x8a, 0x56, 0x95, 0xd8, 0x6e, 0x47, }; static const unsigned char xdh_wei25519_424_sharedsecret[] = { 0x6c, 0xfa, 0x93, 0x5f, 0x24, 0xb0, 0x31, 0xff, 0x26, 0x1a, 0x7c, 0xd3, 0x52, 0x66, 0x60, 0xfd, 0x6b, 0x39, 0x6c, 0x5c, 0x30, 0xe2, 0x99, 0x57, 0x5f, 0x6a, 0x32, 0x22, 0x81, 0x19, 0x1e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_424 = { .name = "xdh_wei25519_424", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_424_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_424_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_424_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 425 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 425 for XDH, tcId is 426 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_425_peerpubkey[] = { 0xb3, 0x27, 0x50, 0xfd, 0x80, 0xd2, 0xd7, 0xc6, 0x2c, 0x6b, 0x8e, 0x39, 0x67, 0x06, 0x54, 0xba, 0xea, 0x57, 0x19, 0xa3, 0xe0, 0x72, 0xe9, 0x95, 0x07, 0xfd, 0x5b, 0xcb, 0x23, 0x89, 0x82, 0x64, }; static const unsigned char xdh_wei25519_425_privkey[] = { 0x10, 0x98, 0x72, 0x3f, 0xfe, 0x56, 0x7e, 0xa6, 0xdc, 0xc8, 0xd0, 0x4e, 0xcc, 0x01, 0xef, 0xaf, 0xee, 0xa0, 0xae, 0xe4, 0x4e, 0x1c, 0x73, 0x3b, 0xe8, 0xb1, 0xe5, 0xd9, 0x7c, 0x8b, 0x80, 0x41, }; static const unsigned char xdh_wei25519_425_sharedsecret[] = { 0xc6, 0x23, 0xe2, 0xd2, 0x08, 0x3f, 0x18, 0x11, 0x0a, 0x52, 0x5f, 0x2b, 0x66, 0xd8, 0x9e, 0xd8, 0x2d, 0x31, 0x3b, 0x6a, 0x2d, 0xd0, 0x82, 0xf6, 0xb7, 0xa6, 0xe7, 0x33, 0x13, 0x4f, 0x5a, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_425 = { .name = "xdh_wei25519_425", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_425_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_425_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_425_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 426 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 426 for XDH, tcId is 427 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_426_peerpubkey[] = { 0xe7, 0xb3, 0x20, 0x57, 0x77, 0xb3, 0x75, 0xf1, 0xb1, 0x51, 0x5a, 0x50, 0xa1, 0x6a, 0x60, 0x67, 0x95, 0x3f, 0xf2, 0x21, 0xe1, 0x2b, 0x4f, 0x41, 0x6d, 0x74, 0xfb, 0x28, 0xc1, 0xc8, 0x58, 0x65, }; static const unsigned char xdh_wei25519_426_privkey[] = { 0xa0, 0xf2, 0x0d, 0xf9, 0x8b, 0x49, 0x21, 0x8a, 0xc8, 0x32, 0xf2, 0x6f, 0xa8, 0xc2, 0x18, 0xa0, 0xd6, 0x87, 0x2e, 0xb7, 0xae, 0xa0, 0x7c, 0x1d, 0x43, 0xc9, 0xff, 0x69, 0x9b, 0x46, 0x5b, 0x47, }; static const unsigned char xdh_wei25519_426_sharedsecret[] = { 0x38, 0x8e, 0xa4, 0x21, 0x65, 0x0a, 0x8d, 0x83, 0x7b, 0xad, 0x89, 0x04, 0x01, 0x81, 0x95, 0xe9, 0x9e, 0xf4, 0x94, 0xc2, 0xd1, 0x70, 0xb9, 0x3e, 0xe7, 0x21, 0xa6, 0x7d, 0x2c, 0x10, 0x87, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_426 = { .name = "xdh_wei25519_426", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_426_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_426_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_426_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 427 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 427 for XDH, tcId is 428 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_427_peerpubkey[] = { 0x21, 0xcc, 0x33, 0x8d, 0x78, 0x69, 0xe5, 0x86, 0x33, 0x49, 0xcc, 0x73, 0x9c, 0x8a, 0x69, 0x46, 0xcf, 0xc7, 0x97, 0xcb, 0x82, 0xfb, 0xf6, 0x2d, 0xcd, 0x21, 0x54, 0x84, 0x4b, 0x10, 0x60, 0x03, }; static const unsigned char xdh_wei25519_427_privkey[] = { 0x30, 0x47, 0x3a, 0x77, 0xa9, 0x83, 0x74, 0xf6, 0x7d, 0x5b, 0xd4, 0x3d, 0xf2, 0x31, 0xce, 0x14, 0x29, 0x16, 0xae, 0xa0, 0xd2, 0x71, 0xe7, 0x23, 0x33, 0xfa, 0x47, 0xdc, 0x44, 0x1a, 0x02, 0x47, }; static const unsigned char xdh_wei25519_427_sharedsecret[] = { 0xb9, 0xe5, 0x72, 0x8b, 0x37, 0x43, 0x5b, 0x1d, 0x33, 0x99, 0x88, 0xf9, 0x32, 0x67, 0xd5, 0x9f, 0x3b, 0xd1, 0xc5, 0x17, 0x85, 0x1c, 0x5a, 0x25, 0x8e, 0x74, 0xcb, 0x64, 0xae, 0xa7, 0x3d, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_427 = { .name = "xdh_wei25519_427", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_427_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_427_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_427_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 428 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 428 for XDH, tcId is 429 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_428_peerpubkey[] = { 0xc3, 0x42, 0x17, 0xc0, 0x20, 0x72, 0xd7, 0xe2, 0xbc, 0xa0, 0x45, 0x45, 0x25, 0x03, 0x07, 0x80, 0xcf, 0xb6, 0x02, 0x15, 0xd7, 0xca, 0x82, 0xdb, 0xec, 0x8f, 0x4a, 0x59, 0x03, 0x4c, 0x5f, 0x43, }; static const unsigned char xdh_wei25519_428_privkey[] = { 0xd8, 0x65, 0x7b, 0xe3, 0xa3, 0x0f, 0xc8, 0x5f, 0xb2, 0xf3, 0xa6, 0x8e, 0x92, 0xac, 0xe1, 0xb3, 0x1b, 0x26, 0xe7, 0x6e, 0x6b, 0xdb, 0x67, 0x27, 0xae, 0xa5, 0x07, 0xcb, 0x7c, 0x10, 0xdc, 0x45, }; static const unsigned char xdh_wei25519_428_sharedsecret[] = { 0x20, 0xb6, 0x7b, 0x20, 0x5e, 0x22, 0xce, 0x87, 0xfd, 0x44, 0xa8, 0xe8, 0xfd, 0x10, 0xa6, 0xd8, 0x89, 0x0b, 0x92, 0x70, 0xb6, 0x0e, 0x1c, 0x6a, 0x68, 0xb4, 0xaa, 0x78, 0xe6, 0xe3, 0x79, 0x61, }; static const wycheproof_xdh_test xdh_wei25519_428 = { .name = "xdh_wei25519_428", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_428_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_428_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_428_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 429 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 429 for XDH, tcId is 430 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_429_peerpubkey[] = { 0x8a, 0xbb, 0x8c, 0xfd, 0x60, 0xc6, 0xf8, 0xa4, 0xd8, 0x4d, 0x07, 0x50, 0xd3, 0xb4, 0x0a, 0x4f, 0x84, 0x6b, 0x30, 0xed, 0xf2, 0x05, 0x2f, 0xef, 0x7d, 0xf8, 0x41, 0x42, 0xcd, 0x0d, 0x9e, 0x47, }; static const unsigned char xdh_wei25519_429_privkey[] = { 0x88, 0x2f, 0x55, 0x78, 0xae, 0x4a, 0x13, 0xd8, 0xf5, 0xaf, 0x47, 0x3b, 0xdd, 0xe1, 0x70, 0x9b, 0xf2, 0xe0, 0x59, 0xdf, 0x80, 0x9e, 0xe0, 0x5b, 0x50, 0x5f, 0x34, 0xde, 0x85, 0x7c, 0x34, 0x47, }; static const unsigned char xdh_wei25519_429_sharedsecret[] = { 0x5f, 0xab, 0xa6, 0x45, 0xfc, 0x21, 0xf9, 0x42, 0x1e, 0xbd, 0x35, 0xc6, 0x9b, 0xdb, 0x1d, 0x85, 0xb4, 0x6f, 0x95, 0xe3, 0x74, 0x6f, 0xf7, 0xf4, 0x88, 0x6b, 0xc2, 0x80, 0xa9, 0xab, 0x25, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_429 = { .name = "xdh_wei25519_429", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_429_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_429_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_429_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 430 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 430 for XDH, tcId is 431 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_430_peerpubkey[] = { 0x9f, 0xd7, 0xb4, 0x9a, 0x08, 0xf2, 0x06, 0x68, 0x8d, 0x72, 0xdb, 0x73, 0x7d, 0xf8, 0xe5, 0x17, 0xaa, 0x7b, 0x76, 0x4f, 0x5d, 0xe7, 0xc9, 0xa2, 0xb1, 0xc3, 0xfc, 0xba, 0xa9, 0x85, 0xf6, 0x4c, }; static const unsigned char xdh_wei25519_430_privkey[] = { 0x98, 0x29, 0x4d, 0xb7, 0xcb, 0xf4, 0x95, 0x8b, 0xfb, 0x3e, 0xd2, 0x1d, 0x5d, 0x5c, 0x91, 0xe1, 0x3c, 0xc8, 0xdc, 0x27, 0xb3, 0xc7, 0x16, 0xc8, 0x6f, 0x71, 0x67, 0xa4, 0x81, 0x9f, 0x87, 0x41, }; static const unsigned char xdh_wei25519_430_sharedsecret[] = { 0x9c, 0xb8, 0xa0, 0xf4, 0xad, 0x86, 0xa2, 0x7b, 0x96, 0xca, 0x61, 0x24, 0x2e, 0xab, 0x19, 0x8d, 0xb2, 0x76, 0x7d, 0x38, 0x62, 0xdd, 0x32, 0x3e, 0x41, 0x36, 0x8f, 0xcd, 0xcc, 0x5f, 0xab, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_430 = { .name = "xdh_wei25519_430", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_430_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_430_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_430_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 431 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 431 for XDH, tcId is 432 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_431_peerpubkey[] = { 0xc4, 0xfe, 0xfa, 0xc7, 0xac, 0xd4, 0x48, 0xe8, 0xfd, 0x4d, 0x6a, 0xc4, 0xf5, 0xdd, 0x1b, 0xc2, 0x1f, 0x2c, 0x67, 0xd6, 0x38, 0x44, 0x40, 0x60, 0x91, 0x8f, 0xb3, 0x44, 0xaa, 0x77, 0xe7, 0x57, }; static const unsigned char xdh_wei25519_431_privkey[] = { 0x78, 0x9b, 0xc4, 0x04, 0x7a, 0xd8, 0x1b, 0x9b, 0x66, 0x56, 0xee, 0xf2, 0x98, 0xb7, 0x66, 0xe8, 0x76, 0x3a, 0x2f, 0x8e, 0xa6, 0x4e, 0x37, 0x4a, 0x60, 0x3d, 0xc1, 0xfd, 0xf2, 0xee, 0xe1, 0x46, }; static const unsigned char xdh_wei25519_431_sharedsecret[] = { 0x4b, 0x42, 0xfc, 0xf8, 0x4b, 0x51, 0xb2, 0xb8, 0x2f, 0x1f, 0x70, 0xb3, 0xcf, 0x49, 0xbd, 0x9d, 0xc6, 0xab, 0x26, 0x72, 0x92, 0x0a, 0x8d, 0xe3, 0x7e, 0x81, 0xba, 0x7e, 0x99, 0xac, 0xf7, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_431 = { .name = "xdh_wei25519_431", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_431_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_431_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_431_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 432 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 432 for XDH, tcId is 433 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_432_peerpubkey[] = { 0xa8, 0x34, 0x1d, 0xee, 0xcc, 0x0b, 0xe6, 0xdb, 0x11, 0x40, 0x1e, 0xf7, 0xf8, 0x84, 0xac, 0x3a, 0xde, 0x35, 0x65, 0x0c, 0xc2, 0x1f, 0x14, 0xb5, 0xcd, 0xb0, 0xa5, 0xcf, 0x0e, 0xe6, 0xb1, 0x5a, }; static const unsigned char xdh_wei25519_432_privkey[] = { 0x80, 0x1f, 0xfe, 0x4e, 0x0f, 0x6e, 0xeb, 0x8a, 0x50, 0xc8, 0xfe, 0x79, 0x66, 0x3f, 0xf5, 0x85, 0xf9, 0xd6, 0xae, 0xbc, 0xfb, 0xf4, 0xb7, 0xed, 0xc6, 0x76, 0xc6, 0x93, 0x90, 0x0c, 0xb1, 0x41, }; static const unsigned char xdh_wei25519_432_sharedsecret[] = { 0xe5, 0x5f, 0xc9, 0x31, 0x66, 0x9b, 0xd0, 0x2d, 0x1c, 0x64, 0x68, 0x9e, 0xda, 0x62, 0x64, 0x82, 0x12, 0xb1, 0x07, 0x8c, 0x43, 0xb5, 0xca, 0xf9, 0x7c, 0xf9, 0x76, 0x3f, 0xf8, 0x7a, 0x34, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_432 = { .name = "xdh_wei25519_432", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_432_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_432_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_432_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 433 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 433 for XDH, tcId is 434 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_433_peerpubkey[] = { 0x55, 0xa0, 0xe6, 0x63, 0x1a, 0x52, 0xf2, 0x9f, 0xb9, 0x0a, 0x17, 0x77, 0xcc, 0xbc, 0x69, 0xff, 0x94, 0x54, 0x74, 0x59, 0xd5, 0x41, 0xf7, 0x2e, 0x83, 0x16, 0xe4, 0xd6, 0x16, 0x53, 0x5a, 0x67, }; static const unsigned char xdh_wei25519_433_privkey[] = { 0xe0, 0x4e, 0x41, 0x23, 0x83, 0xa6, 0x3b, 0x33, 0x8b, 0x70, 0xe1, 0xbe, 0x5f, 0xd7, 0x59, 0x95, 0x35, 0x03, 0x21, 0xde, 0xe4, 0x28, 0xaa, 0x4f, 0x3b, 0xa6, 0x2a, 0x50, 0xa3, 0xb0, 0xde, 0x44, }; static const unsigned char xdh_wei25519_433_sharedsecret[] = { 0x87, 0xf7, 0x97, 0x6a, 0x17, 0xf3, 0xe0, 0x3a, 0x7f, 0x1e, 0xb7, 0x4e, 0x6d, 0xb9, 0x50, 0xb8, 0xc0, 0x99, 0x4f, 0x40, 0xb7, 0x90, 0x34, 0x95, 0x59, 0x9d, 0x22, 0x77, 0x25, 0x80, 0x9e, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_433 = { .name = "xdh_wei25519_433", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_433_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_433_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_433_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 434 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 434 for XDH, tcId is 435 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_434_peerpubkey[] = { 0x79, 0x76, 0xd5, 0x20, 0xf1, 0xa2, 0x51, 0x2d, 0x56, 0x4a, 0xf4, 0x1c, 0x68, 0x31, 0x3f, 0x53, 0x51, 0xb0, 0x15, 0x6d, 0x51, 0x18, 0xbe, 0x48, 0x17, 0xf1, 0x92, 0x79, 0x8a, 0xe9, 0x77, 0x7d, }; static const unsigned char xdh_wei25519_434_privkey[] = { 0x38, 0x2d, 0xbe, 0x9f, 0x10, 0x15, 0x8b, 0xfb, 0xb7, 0xd1, 0xd7, 0x9a, 0x35, 0xa7, 0x80, 0x92, 0x14, 0x89, 0x9a, 0x6b, 0x85, 0x72, 0xb3, 0x5b, 0x55, 0x87, 0x5d, 0x79, 0xbd, 0x2f, 0x16, 0x40, }; static const unsigned char xdh_wei25519_434_sharedsecret[] = { 0x3b, 0xb3, 0xe3, 0x01, 0x05, 0xa7, 0x19, 0x01, 0xb1, 0x15, 0x06, 0x5e, 0x39, 0xbd, 0xb3, 0xe0, 0x53, 0xd3, 0x87, 0xb3, 0x90, 0x27, 0xb1, 0x2c, 0x92, 0xcd, 0xf4, 0xc6, 0x38, 0xad, 0xf0, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_434 = { .name = "xdh_wei25519_434", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_434_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_434_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_434_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 435 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 435 for XDH, tcId is 436 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_435_peerpubkey[] = { 0xa2, 0x6a, 0x72, 0x2f, 0x7b, 0xa7, 0x1c, 0xcf, 0xc9, 0x6e, 0xd8, 0xe1, 0x08, 0xd7, 0xc9, 0xf8, 0x42, 0xd1, 0x7f, 0x92, 0x05, 0x1e, 0xe7, 0xd4, 0x29, 0xea, 0x7f, 0xa7, 0x90, 0x8a, 0xb9, 0x07, }; static const unsigned char xdh_wei25519_435_privkey[] = { 0x60, 0xc9, 0xaf, 0x7f, 0x4d, 0x03, 0x13, 0x6a, 0x60, 0x34, 0xae, 0x52, 0xde, 0xad, 0xfd, 0x9d, 0x4f, 0x27, 0x4a, 0xd8, 0x12, 0x28, 0x12, 0xeb, 0x92, 0xa5, 0x31, 0x69, 0xc8, 0x35, 0x41, 0x41, }; static const unsigned char xdh_wei25519_435_sharedsecret[] = { 0xf5, 0xcb, 0x3a, 0x1b, 0x76, 0x18, 0x5a, 0x29, 0xa6, 0x36, 0x0b, 0x21, 0x42, 0xfe, 0xeb, 0xb1, 0x1f, 0x3d, 0x08, 0xf4, 0xfd, 0x8d, 0x73, 0xdf, 0x3a, 0x52, 0x28, 0x62, 0x4a, 0x52, 0x1c, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_435 = { .name = "xdh_wei25519_435", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_435_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_435_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_435_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 436 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 436 for XDH, tcId is 437 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_436_peerpubkey[] = { 0xca, 0x3a, 0x2d, 0x96, 0xf5, 0xdd, 0xa4, 0x82, 0xb0, 0x02, 0x32, 0x4c, 0xbb, 0xdc, 0xf1, 0xda, 0xcc, 0x98, 0x15, 0xea, 0xb7, 0x97, 0xc7, 0x15, 0x1c, 0x3a, 0x88, 0xc7, 0x5c, 0xde, 0xd6, 0x21, }; static const unsigned char xdh_wei25519_436_privkey[] = { 0x28, 0x3f, 0xae, 0x8b, 0xd8, 0xb2, 0x94, 0xde, 0x28, 0x48, 0x05, 0x64, 0x49, 0x75, 0x19, 0x65, 0xab, 0xb5, 0xc7, 0xfa, 0x86, 0xba, 0x4c, 0x2c, 0x5c, 0xdc, 0x3b, 0xb5, 0x24, 0xda, 0xd1, 0x40, }; static const unsigned char xdh_wei25519_436_sharedsecret[] = { 0xb0, 0xb4, 0x78, 0x68, 0xe7, 0x04, 0x65, 0xee, 0x2d, 0xd7, 0x37, 0xf1, 0xba, 0x5a, 0x63, 0x99, 0xe0, 0x9c, 0xd8, 0x13, 0xd7, 0x2d, 0xa7, 0x58, 0x5a, 0xb4, 0x5c, 0x94, 0x6c, 0xc2, 0x8d, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_436 = { .name = "xdh_wei25519_436", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_436_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_436_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_436_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 437 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 437 for XDH, tcId is 438 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_437_peerpubkey[] = { 0xee, 0xbd, 0x85, 0x88, 0x50, 0xb5, 0x6f, 0xeb, 0xb7, 0x07, 0xf2, 0x7a, 0x7a, 0xad, 0x5f, 0xf5, 0xab, 0x4b, 0x0e, 0x0c, 0x73, 0xb9, 0xc8, 0x6e, 0xc4, 0xca, 0x0f, 0x42, 0xe7, 0xf3, 0x8e, 0x75, }; static const unsigned char xdh_wei25519_437_privkey[] = { 0x40, 0x15, 0x39, 0x70, 0x3c, 0xa4, 0x98, 0x0d, 0xb4, 0xba, 0x42, 0xc5, 0x9f, 0xc2, 0x9e, 0x83, 0xb4, 0x18, 0x9f, 0x2d, 0xde, 0xa5, 0x3b, 0xa5, 0x4c, 0xa9, 0x66, 0xc0, 0x68, 0x98, 0xa6, 0x40, }; static const unsigned char xdh_wei25519_437_sharedsecret[] = { 0x58, 0x1e, 0x4b, 0x12, 0xb0, 0xf3, 0x9a, 0x7c, 0xc4, 0x2d, 0xee, 0x45, 0x13, 0xec, 0xfd, 0xd2, 0x0b, 0x59, 0x5f, 0x90, 0x5f, 0x17, 0xad, 0x8c, 0x1f, 0xbf, 0x1b, 0x5c, 0xb2, 0x06, 0x8b, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_437 = { .name = "xdh_wei25519_437", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_437_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_437_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_437_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 438 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 438 for XDH, tcId is 439 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_438_peerpubkey[] = { 0xc8, 0x00, 0xbf, 0x79, 0x97, 0x83, 0x27, 0x5e, 0xb9, 0x33, 0x12, 0xb4, 0x3d, 0xc0, 0x32, 0xcc, 0xdf, 0xb0, 0x0a, 0x4b, 0x77, 0xc8, 0xb3, 0x77, 0x2c, 0xd2, 0xfe, 0xc8, 0xdb, 0x7e, 0x4a, 0x09, }; static const unsigned char xdh_wei25519_438_privkey[] = { 0xc8, 0xeb, 0x05, 0x62, 0x86, 0xe0, 0x98, 0xe6, 0xb2, 0xc7, 0x9e, 0x42, 0xf0, 0x07, 0xeb, 0xc6, 0xab, 0x37, 0x05, 0x34, 0x6c, 0xdb, 0xda, 0xce, 0x94, 0x9b, 0x5d, 0xe1, 0xe8, 0xc3, 0x67, 0x43, }; static const unsigned char xdh_wei25519_438_sharedsecret[] = { 0x6b, 0xf2, 0x64, 0x53, 0x2f, 0xc7, 0x0a, 0x6a, 0x7e, 0x45, 0x9f, 0x45, 0x79, 0xec, 0xa6, 0xb8, 0x4f, 0x8f, 0x76, 0xab, 0x85, 0xc3, 0x26, 0x4b, 0x20, 0xbc, 0xa7, 0x25, 0xa6, 0xeb, 0x6c, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_438 = { .name = "xdh_wei25519_438", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_438_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_438_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_438_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 439 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 439 for XDH, tcId is 440 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_439_peerpubkey[] = { 0x7b, 0xbc, 0x50, 0x4e, 0x04, 0xd1, 0x34, 0xee, 0xdc, 0x13, 0xf0, 0x6d, 0xfd, 0xfc, 0x69, 0xc5, 0x18, 0x25, 0x7a, 0x3f, 0x37, 0x40, 0x40, 0xa4, 0x9a, 0x8d, 0x21, 0xda, 0xc1, 0x09, 0x11, 0x0c, }; static const unsigned char xdh_wei25519_439_privkey[] = { 0x48, 0x78, 0x82, 0x95, 0x6c, 0x49, 0xc6, 0x9f, 0xd0, 0xe2, 0xd7, 0x27, 0x7a, 0x24, 0xfb, 0x1d, 0xbe, 0x4b, 0x03, 0x65, 0xb3, 0x6a, 0x13, 0xf6, 0x34, 0x40, 0x24, 0x8b, 0xca, 0x2f, 0xbb, 0x42, }; static const unsigned char xdh_wei25519_439_sharedsecret[] = { 0x69, 0x03, 0x05, 0xc9, 0xe1, 0x92, 0xcd, 0x8a, 0x51, 0x3f, 0x70, 0x5b, 0x3f, 0x10, 0x1e, 0xcd, 0xf3, 0xdb, 0x1e, 0xa1, 0x5a, 0x09, 0xc4, 0xa1, 0xbc, 0xe3, 0xa8, 0xcd, 0xc3, 0xa1, 0xa9, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_439 = { .name = "xdh_wei25519_439", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_439_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_439_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_439_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 440 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 440 for XDH, tcId is 441 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_440_peerpubkey[] = { 0x13, 0x25, 0x33, 0xdb, 0x62, 0xaf, 0xf4, 0xfa, 0x06, 0xe9, 0x63, 0x14, 0x38, 0x3b, 0xf5, 0x8e, 0xbd, 0xec, 0x51, 0x83, 0xa1, 0x9f, 0x2e, 0x4c, 0xb1, 0x75, 0x52, 0xae, 0x19, 0xa3, 0x36, 0x6e, }; static const unsigned char xdh_wei25519_440_privkey[] = { 0x98, 0x76, 0x01, 0x0f, 0x4d, 0x64, 0xc7, 0x7f, 0xfc, 0x4d, 0x7d, 0xcc, 0xd7, 0x2b, 0x9a, 0xc8, 0x20, 0x78, 0xde, 0xb8, 0x83, 0x60, 0x96, 0x50, 0xb8, 0xcf, 0xf8, 0xa6, 0x86, 0x71, 0x9d, 0x46, }; static const unsigned char xdh_wei25519_440_sharedsecret[] = { 0xc5, 0x85, 0x91, 0xb3, 0x3e, 0x49, 0x0e, 0x47, 0x66, 0xff, 0x7a, 0xdd, 0xff, 0x57, 0x0c, 0xe4, 0xe8, 0x9a, 0x98, 0x33, 0x80, 0x15, 0xa5, 0x5d, 0xf3, 0xd2, 0xf2, 0x32, 0xae, 0xa3, 0xfc, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_440 = { .name = "xdh_wei25519_440", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_440_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_440_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_440_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 441 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 441 for XDH, tcId is 442 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_441_peerpubkey[] = { 0xce, 0xb9, 0x0c, 0x56, 0x50, 0x8c, 0xf3, 0x30, 0xc7, 0xf2, 0x5b, 0xab, 0x42, 0xb0, 0x5b, 0x56, 0x12, 0xa8, 0x31, 0x06, 0x90, 0x10, 0x7a, 0xc6, 0x3a, 0x40, 0x4c, 0x0a, 0xde, 0x78, 0x80, 0x09, }; static const unsigned char xdh_wei25519_441_privkey[] = { 0xa8, 0xa5, 0xd4, 0xf7, 0x89, 0x4a, 0x51, 0x95, 0x37, 0xba, 0xbf, 0xac, 0x73, 0x6d, 0xe3, 0x60, 0x54, 0xf5, 0x08, 0xda, 0xe4, 0x34, 0xb4, 0xfe, 0x63, 0xcd, 0x56, 0x33, 0x84, 0x6a, 0x26, 0x47, }; static const unsigned char xdh_wei25519_441_sharedsecret[] = { 0x3d, 0x14, 0x58, 0x51, 0xb6, 0xff, 0x2b, 0x92, 0xb5, 0x80, 0x7e, 0xd1, 0xdf, 0x21, 0xeb, 0x50, 0xc9, 0xf2, 0x4c, 0x44, 0x74, 0xd4, 0x72, 0x1d, 0xb3, 0xab, 0xb7, 0x35, 0x6d, 0xf7, 0xb7, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_441 = { .name = "xdh_wei25519_441", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_441_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_441_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_441_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 442 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 442 for XDH, tcId is 443 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_442_peerpubkey[] = { 0x66, 0xa0, 0x97, 0x67, 0xa0, 0xd8, 0x3b, 0xb1, 0x8d, 0x40, 0x4e, 0x12, 0x00, 0x37, 0x5a, 0x74, 0x5d, 0x1f, 0x1f, 0x74, 0x9d, 0x5d, 0xc6, 0xf8, 0x4a, 0x20, 0x5e, 0xfa, 0x6a, 0x11, 0xbc, 0x65, }; static const unsigned char xdh_wei25519_442_privkey[] = { 0xf8, 0x3e, 0x46, 0x47, 0xe8, 0x2c, 0x56, 0x0a, 0xa0, 0x82, 0xc5, 0x96, 0x41, 0xe1, 0x3b, 0xf3, 0x66, 0xbe, 0x8f, 0x24, 0xdc, 0x01, 0xd1, 0x48, 0x01, 0xe6, 0x78, 0x41, 0x16, 0x0b, 0xed, 0x47, }; static const unsigned char xdh_wei25519_442_sharedsecret[] = { 0x14, 0x01, 0x82, 0x9a, 0xac, 0x4e, 0x64, 0xbc, 0xfa, 0x29, 0x7a, 0x7e, 0xff, 0xc6, 0x04, 0x77, 0x09, 0x0d, 0x36, 0x27, 0xa6, 0x4a, 0x35, 0xb8, 0x72, 0xae, 0x05, 0x5d, 0x20, 0x91, 0x78, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_442 = { .name = "xdh_wei25519_442", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_442_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_442_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_442_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 443 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 443 for XDH, tcId is 444 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_443_peerpubkey[] = { 0x39, 0xd4, 0x31, 0x31, 0x63, 0x07, 0xc8, 0x57, 0x47, 0xbd, 0x2b, 0xcf, 0x4f, 0x9e, 0x0f, 0x88, 0x92, 0xee, 0x45, 0xdf, 0x15, 0xf7, 0x80, 0x6c, 0xe6, 0x51, 0x47, 0xd9, 0x7f, 0x50, 0x34, 0x78, }; static const unsigned char xdh_wei25519_443_privkey[] = { 0x58, 0xc6, 0xb9, 0x4b, 0xce, 0x9b, 0x15, 0xf6, 0x49, 0x46, 0xc2, 0xaa, 0x6a, 0x4e, 0x38, 0x3b, 0x0b, 0x2d, 0x43, 0x65, 0xb7, 0x99, 0x7e, 0xb2, 0x31, 0x0a, 0xc4, 0xee, 0xf1, 0x80, 0x31, 0x45, }; static const unsigned char xdh_wei25519_443_sharedsecret[] = { 0xa0, 0xeb, 0xe6, 0x90, 0x8c, 0x54, 0x72, 0xf9, 0x37, 0x76, 0x9b, 0x9a, 0xeb, 0x31, 0x32, 0x24, 0x43, 0x7f, 0xc5, 0xd7, 0x3f, 0x4f, 0x86, 0x6f, 0xe7, 0xef, 0x41, 0xf3, 0x0e, 0x35, 0x9e, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_443 = { .name = "xdh_wei25519_443", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_443_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_443_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_443_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 444 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 444 for XDH, tcId is 445 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_444_peerpubkey[] = { 0x84, 0xc9, 0x2d, 0x8e, 0xcf, 0x3d, 0x0c, 0xb2, 0x2d, 0xde, 0x7d, 0x72, 0x1f, 0x04, 0x14, 0x0c, 0x2d, 0x9c, 0x17, 0x9c, 0xc8, 0x13, 0xce, 0x6c, 0xf8, 0xdb, 0x2d, 0xce, 0x61, 0x68, 0x88, 0x0d, }; static const unsigned char xdh_wei25519_444_privkey[] = { 0x78, 0x6a, 0x97, 0x20, 0x7a, 0xdb, 0xd4, 0xb0, 0xd6, 0xbf, 0xc9, 0xf4, 0x9b, 0x18, 0x66, 0x0a, 0xd3, 0x60, 0x6c, 0x12, 0xe3, 0x25, 0x04, 0x4b, 0x86, 0x90, 0xb4, 0xfa, 0x07, 0x87, 0x46, 0x41, }; static const unsigned char xdh_wei25519_444_sharedsecret[] = { 0x07, 0x53, 0x8f, 0x1b, 0x65, 0x83, 0x04, 0x1c, 0x49, 0x49, 0xfa, 0xfa, 0xe3, 0x34, 0x9d, 0x62, 0xf9, 0xdd, 0x30, 0x2d, 0x3d, 0x86, 0x85, 0x7a, 0xf0, 0xde, 0xdc, 0x0d, 0x5a, 0xd6, 0x74, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_444 = { .name = "xdh_wei25519_444", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_444_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_444_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_444_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 445 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 445 for XDH, tcId is 446 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_445_peerpubkey[] = { 0xa9, 0xce, 0xdb, 0x9e, 0x94, 0x2a, 0x47, 0x22, 0x1e, 0x42, 0x96, 0x95, 0x32, 0x20, 0xd1, 0x00, 0x07, 0xdb, 0x32, 0x7d, 0x2a, 0xcb, 0x68, 0xda, 0x6e, 0xf3, 0xa4, 0xf8, 0x77, 0xb8, 0xef, 0x1e, }; static const unsigned char xdh_wei25519_445_privkey[] = { 0x28, 0x23, 0x10, 0x21, 0x0e, 0x57, 0x5a, 0x59, 0x39, 0x3c, 0xf1, 0x9b, 0xbe, 0x6e, 0x24, 0x75, 0x2d, 0xc2, 0x47, 0x70, 0x6f, 0x1e, 0x00, 0x31, 0xe5, 0xd3, 0x9b, 0x2d, 0xe4, 0xff, 0xf7, 0x45, }; static const unsigned char xdh_wei25519_445_sharedsecret[] = { 0x12, 0x23, 0x50, 0x5f, 0xbb, 0x53, 0x4c, 0x1b, 0xc6, 0x10, 0x8e, 0x6b, 0x98, 0xb4, 0xf0, 0xaf, 0x29, 0xe1, 0x11, 0x58, 0xc0, 0x2d, 0x33, 0x3d, 0x65, 0x59, 0xbe, 0xec, 0xd6, 0xd3, 0xe5, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_445 = { .name = "xdh_wei25519_445", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_445_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_445_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_445_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 446 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 446 for XDH, tcId is 447 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_446_peerpubkey[] = { 0x64, 0xe1, 0xc0, 0xc5, 0xf5, 0x94, 0x05, 0xbb, 0xc6, 0xc7, 0xdb, 0x41, 0xa3, 0x48, 0x5c, 0xc9, 0xf9, 0x1c, 0x18, 0x3b, 0x0f, 0x2b, 0x7e, 0x18, 0x94, 0xa7, 0xab, 0xd8, 0xfb, 0xbe, 0xeb, 0x23, }; static const unsigned char xdh_wei25519_446_privkey[] = { 0xc8, 0xbf, 0x2f, 0xd4, 0xc4, 0x0d, 0x00, 0xf1, 0x46, 0x5a, 0xad, 0xa6, 0x82, 0xb1, 0x2f, 0xa9, 0x2d, 0xec, 0x10, 0x34, 0x34, 0x84, 0xab, 0x62, 0xb8, 0x87, 0x13, 0x37, 0xde, 0x1d, 0x33, 0x45, }; static const unsigned char xdh_wei25519_446_sharedsecret[] = { 0xee, 0x03, 0x18, 0x68, 0x16, 0x5f, 0x45, 0x6f, 0x75, 0x90, 0x7b, 0xf3, 0x97, 0x42, 0xb8, 0x20, 0xe0, 0xf8, 0xe6, 0xdf, 0x9f, 0x97, 0x68, 0xd7, 0x57, 0xd4, 0x08, 0xe1, 0xcc, 0x92, 0xff, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_446 = { .name = "xdh_wei25519_446", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_446_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_446_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_446_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 447 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 447 for XDH, tcId is 448 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_447_peerpubkey[] = { 0xa6, 0x8d, 0x2f, 0x55, 0xe6, 0x0e, 0xac, 0x79, 0x83, 0x92, 0x63, 0x10, 0xf4, 0xfa, 0xe1, 0x3f, 0x95, 0xb2, 0xbb, 0xf1, 0x40, 0xbe, 0x5e, 0xa9, 0x17, 0x51, 0x88, 0x4d, 0x90, 0x0a, 0xb4, 0x4d, }; static const unsigned char xdh_wei25519_447_privkey[] = { 0xc0, 0x6a, 0x4a, 0x4b, 0x70, 0xf6, 0x13, 0x13, 0x6f, 0x18, 0xc0, 0xf8, 0x8e, 0x22, 0x45, 0x08, 0x6c, 0x3d, 0x1a, 0x52, 0x71, 0x72, 0x10, 0xa2, 0x1a, 0xc9, 0xd6, 0x36, 0x82, 0xf2, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_447_sharedsecret[] = { 0xc9, 0x54, 0xfa, 0x7b, 0x04, 0x2c, 0x32, 0x94, 0x3e, 0x03, 0x19, 0x1e, 0x36, 0x7d, 0x54, 0xbe, 0x00, 0x85, 0xfa, 0x89, 0x50, 0xef, 0x2b, 0xec, 0x99, 0x62, 0x0d, 0xf7, 0x9e, 0xcb, 0xea, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_447 = { .name = "xdh_wei25519_447", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_447_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_447_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_447_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 448 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 448 for XDH, tcId is 449 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_448_peerpubkey[] = { 0x6d, 0x3c, 0xd6, 0x23, 0xf2, 0x6a, 0x74, 0x53, 0xfa, 0x05, 0xa0, 0x1a, 0xe7, 0x58, 0xba, 0x84, 0xd3, 0xc5, 0x8d, 0x93, 0xd6, 0x0c, 0xe3, 0x27, 0x35, 0xa1, 0x5e, 0x0d, 0x05, 0x3d, 0x5b, 0x12, }; static const unsigned char xdh_wei25519_448_privkey[] = { 0x20, 0x59, 0x6e, 0x1d, 0xc5, 0x65, 0x96, 0x82, 0x3d, 0x37, 0x69, 0x8d, 0xfa, 0x69, 0x9c, 0x79, 0x87, 0x4a, 0xae, 0xfd, 0xe7, 0x97, 0xf8, 0x63, 0xef, 0x92, 0x13, 0x59, 0x80, 0xfb, 0x20, 0x43, }; static const unsigned char xdh_wei25519_448_sharedsecret[] = { 0x7c, 0x32, 0x19, 0xb3, 0xc1, 0xfa, 0xe1, 0xf9, 0x55, 0x90, 0xac, 0x84, 0x3e, 0xfd, 0x20, 0x84, 0xa1, 0xf4, 0xbd, 0x3e, 0xfa, 0x2f, 0x59, 0x2f, 0x02, 0x20, 0x32, 0xdb, 0x64, 0xeb, 0xcd, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_448 = { .name = "xdh_wei25519_448", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_448_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_448_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 449 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 449 for XDH, tcId is 450 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_449_peerpubkey[] = { 0x8f, 0x19, 0x55, 0x47, 0x34, 0x6b, 0x3d, 0x53, 0xb7, 0xea, 0x4f, 0x74, 0x2b, 0x22, 0xf1, 0xef, 0x7b, 0x3c, 0xc0, 0x1a, 0x7d, 0x3d, 0xcd, 0x19, 0xaa, 0x7c, 0x5b, 0x03, 0xf3, 0x1b, 0xd2, 0x14, }; static const unsigned char xdh_wei25519_449_privkey[] = { 0x38, 0x14, 0x15, 0x18, 0xe8, 0xe5, 0xef, 0xa1, 0xd0, 0x31, 0xc6, 0xc4, 0xd9, 0x54, 0x80, 0x23, 0x9f, 0x6c, 0x30, 0xb8, 0xcc, 0xd8, 0xc7, 0x51, 0xa9, 0xe0, 0x4b, 0xd3, 0xae, 0xc1, 0x73, 0x42, }; static const unsigned char xdh_wei25519_449_sharedsecret[] = { 0xa3, 0x1f, 0x6b, 0x24, 0x9d, 0x64, 0xa8, 0x7c, 0x4a, 0xed, 0x32, 0x9c, 0x6c, 0x05, 0xc3, 0xf2, 0x24, 0x0b, 0x3c, 0xa9, 0x38, 0xcc, 0xdc, 0x92, 0x0b, 0xa8, 0x01, 0x6c, 0x1a, 0xea, 0xeb, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_449 = { .name = "xdh_wei25519_449", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_449_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_449_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_449_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 450 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 450 for XDH, tcId is 451 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_450_peerpubkey[] = { 0xff, 0xc4, 0xfe, 0x2c, 0x21, 0x27, 0xa3, 0x09, 0xc7, 0x39, 0x56, 0x56, 0x51, 0xe9, 0x81, 0x2f, 0x83, 0x4a, 0x86, 0xdb, 0xad, 0xbb, 0x78, 0x77, 0x69, 0x77, 0xf7, 0x86, 0xec, 0xdb, 0x02, 0x17, }; static const unsigned char xdh_wei25519_450_privkey[] = { 0x20, 0x71, 0x47, 0xf2, 0xb6, 0x8f, 0xef, 0x1e, 0xfc, 0x10, 0xa0, 0x4f, 0x98, 0x8f, 0x0e, 0xb1, 0x8b, 0x27, 0x3b, 0x0b, 0x5e, 0xd1, 0x7a, 0xa7, 0xaf, 0x32, 0xc9, 0x04, 0x80, 0xe1, 0x9b, 0x43, }; static const unsigned char xdh_wei25519_450_sharedsecret[] = { 0x4c, 0xff, 0x9f, 0x53, 0xce, 0x82, 0x06, 0x48, 0x82, 0x32, 0x9a, 0x18, 0xea, 0x4e, 0x4d, 0x0b, 0xc6, 0xd8, 0x0a, 0x63, 0x1c, 0x87, 0xc9, 0xe6, 0xfd, 0xc9, 0x18, 0xf9, 0xc1, 0xbd, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_450 = { .name = "xdh_wei25519_450", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_450_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_450_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_450_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 451 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 451 for XDH, tcId is 452 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_451_peerpubkey[] = { 0x84, 0x75, 0xba, 0xbe, 0xea, 0xb9, 0x98, 0x0d, 0x42, 0x6a, 0xbd, 0x53, 0x23, 0xdf, 0xb3, 0x35, 0xb2, 0x19, 0xe1, 0x29, 0xbd, 0xda, 0xe4, 0xd6, 0xce, 0xbc, 0xda, 0x50, 0x75, 0x4a, 0x68, 0x25, }; static const unsigned char xdh_wei25519_451_privkey[] = { 0x48, 0x80, 0x84, 0x53, 0x7b, 0x84, 0x0f, 0x9c, 0x93, 0xca, 0x57, 0xb3, 0xee, 0x80, 0x49, 0x14, 0x18, 0xd4, 0x42, 0x21, 0x11, 0x3e, 0x03, 0xf5, 0x63, 0x55, 0x30, 0x26, 0x04, 0xd0, 0x35, 0x47, }; static const unsigned char xdh_wei25519_451_sharedsecret[] = { 0x24, 0x8d, 0x3d, 0x1a, 0x49, 0xb7, 0xd1, 0x73, 0xeb, 0x08, 0x0a, 0xb7, 0x16, 0xac, 0x8f, 0xde, 0x6b, 0xd1, 0xc3, 0xed, 0x8e, 0x7f, 0xd5, 0xb4, 0x48, 0xaf, 0x21, 0xbc, 0xdc, 0x2c, 0x16, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_451 = { .name = "xdh_wei25519_451", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_451_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_451_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_451_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 452 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 452 for XDH, tcId is 453 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_452_peerpubkey[] = { 0x81, 0xf9, 0x0a, 0x2f, 0x66, 0x33, 0xd3, 0x0c, 0x2b, 0x72, 0xa2, 0x57, 0x95, 0xd2, 0xa4, 0x94, 0x63, 0xa8, 0x0b, 0x6b, 0x0e, 0xdc, 0x5a, 0xa6, 0x8b, 0xae, 0x4b, 0xf7, 0x38, 0x18, 0x55, 0x39, }; static const unsigned char xdh_wei25519_452_privkey[] = { 0x28, 0xcf, 0xc1, 0xd0, 0x3f, 0x5c, 0x74, 0x28, 0xff, 0x3e, 0x20, 0xb1, 0x37, 0x26, 0x8b, 0x33, 0xcc, 0xc7, 0x4d, 0xb0, 0x35, 0x82, 0xd2, 0x12, 0x7c, 0x56, 0x6d, 0xf4, 0xac, 0x99, 0xf4, 0x41, }; static const unsigned char xdh_wei25519_452_sharedsecret[] = { 0x66, 0xc6, 0xe7, 0x0c, 0xf6, 0x30, 0xbe, 0x90, 0xa2, 0xc8, 0x8f, 0xcd, 0xe7, 0xf5, 0x8c, 0xff, 0x38, 0x68, 0x66, 0x0f, 0xa9, 0x64, 0x06, 0xe8, 0xdf, 0x4a, 0xc6, 0x77, 0xdb, 0xd8, 0x5f, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_452 = { .name = "xdh_wei25519_452", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_452_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_452_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_452_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 453 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 453 for XDH, tcId is 454 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_453_peerpubkey[] = { 0x41, 0x62, 0x6e, 0x33, 0xb3, 0xc8, 0xf4, 0x8b, 0xd1, 0x9e, 0x49, 0xde, 0xd3, 0x07, 0xf2, 0xb6, 0x3b, 0xde, 0x70, 0x5c, 0x4f, 0x3c, 0xdf, 0x9d, 0x4f, 0x92, 0xbf, 0x37, 0xc4, 0x8c, 0xba, 0x42, }; static const unsigned char xdh_wei25519_453_privkey[] = { 0xc8, 0xe3, 0x7d, 0x10, 0xf3, 0xd0, 0x3d, 0xb3, 0xf4, 0x3e, 0x46, 0x7b, 0xdd, 0xf9, 0x8f, 0x59, 0x5c, 0xb5, 0x29, 0xad, 0x25, 0x3c, 0x20, 0xd4, 0x91, 0x28, 0x2d, 0x14, 0x00, 0xb9, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_453_sharedsecret[] = { 0x06, 0x28, 0x3f, 0xcf, 0x69, 0xdc, 0x83, 0xe9, 0x9d, 0x92, 0xe5, 0x33, 0x6f, 0x49, 0x9a, 0x1d, 0x8f, 0xa7, 0x5e, 0xd2, 0xc8, 0x19, 0xb5, 0xae, 0x6e, 0xa8, 0x09, 0x44, 0x54, 0x32, 0x4b, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_453 = { .name = "xdh_wei25519_453", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_453_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_453_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 454 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 454 for XDH, tcId is 455 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_454_peerpubkey[] = { 0xeb, 0xb3, 0x2f, 0x78, 0x1c, 0x0e, 0x89, 0xb2, 0x52, 0xe6, 0x11, 0xf9, 0xd8, 0xf7, 0x9f, 0x85, 0x67, 0x87, 0x4c, 0x96, 0x65, 0x98, 0x31, 0x4b, 0x2f, 0x16, 0xaa, 0x44, 0xcf, 0xc0, 0x78, 0x43, }; static const unsigned char xdh_wei25519_454_privkey[] = { 0x00, 0x23, 0x7e, 0x91, 0x40, 0x6a, 0x7b, 0x4d, 0xb6, 0x1e, 0x78, 0x0c, 0x59, 0x76, 0xfb, 0xb9, 0x26, 0xcd, 0xac, 0xe2, 0xfb, 0xdf, 0xdb, 0xcf, 0xce, 0x65, 0xe6, 0xdb, 0xe7, 0x78, 0x2a, 0x42, }; static const unsigned char xdh_wei25519_454_sharedsecret[] = { 0x7d, 0x2a, 0xff, 0xb4, 0x33, 0x55, 0xf5, 0xdb, 0x12, 0x94, 0xda, 0xff, 0x55, 0xf5, 0x9b, 0x1f, 0x17, 0xe7, 0xd2, 0x5b, 0xca, 0x20, 0x74, 0x6f, 0x12, 0x48, 0x4d, 0x78, 0xe5, 0x01, 0x55, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_454 = { .name = "xdh_wei25519_454", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_454_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_454_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 455 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 455 for XDH, tcId is 456 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_455_peerpubkey[] = { 0xfa, 0x75, 0xe6, 0xf0, 0x8c, 0xa8, 0x15, 0xb4, 0xe4, 0x2a, 0xf2, 0x4a, 0x8e, 0x05, 0x7c, 0x9e, 0x00, 0xe8, 0x28, 0xe3, 0x3d, 0x12, 0xc0, 0xe9, 0x4d, 0x10, 0x12, 0xa7, 0x58, 0x33, 0x67, 0x44, }; static const unsigned char xdh_wei25519_455_privkey[] = { 0x48, 0x9c, 0x41, 0x84, 0xa2, 0x3a, 0x8f, 0x5e, 0xec, 0x68, 0xa3, 0x1b, 0x41, 0xaa, 0x2c, 0x03, 0x92, 0xcd, 0x6f, 0xb1, 0x23, 0xf1, 0x0a, 0xcd, 0xb4, 0xde, 0x75, 0x29, 0x2b, 0x4b, 0x9a, 0x43, }; static const unsigned char xdh_wei25519_455_sharedsecret[] = { 0xef, 0x8e, 0x78, 0xca, 0xb0, 0x91, 0xd6, 0x67, 0x88, 0x84, 0x89, 0xfd, 0x3a, 0x2e, 0xc9, 0x3f, 0xb6, 0x33, 0x42, 0x7d, 0x02, 0xeb, 0x77, 0xb3, 0x28, 0xd5, 0x56, 0xf2, 0xb2, 0xb0, 0xe2, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_455 = { .name = "xdh_wei25519_455", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_455_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_455_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 456 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 456 for XDH, tcId is 457 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_456_peerpubkey[] = { 0x4d, 0x96, 0x32, 0x0c, 0xdb, 0x0c, 0xa5, 0x26, 0x55, 0xe9, 0x11, 0x18, 0xc3, 0x3f, 0x93, 0xaf, 0xe4, 0xae, 0x69, 0xe9, 0xe5, 0x13, 0xff, 0x45, 0x06, 0x75, 0x0b, 0x8e, 0xa7, 0x84, 0xce, 0x46, }; static const unsigned char xdh_wei25519_456_privkey[] = { 0xc0, 0x59, 0x57, 0xfb, 0xc3, 0xa0, 0xe2, 0xc2, 0x2a, 0x2a, 0xef, 0x62, 0x76, 0x51, 0xca, 0x1e, 0x99, 0x30, 0x7b, 0x82, 0xa0, 0xc6, 0x17, 0x0f, 0x79, 0x50, 0xa3, 0x34, 0xf3, 0x00, 0x49, 0x41, }; static const unsigned char xdh_wei25519_456_sharedsecret[] = { 0xc8, 0xd8, 0x5b, 0xfa, 0x74, 0xb4, 0xb2, 0x64, 0x61, 0x29, 0x7b, 0x35, 0x0c, 0x97, 0x51, 0x83, 0xfe, 0xa9, 0xd3, 0x3b, 0xa2, 0x9c, 0x3a, 0x49, 0x34, 0x50, 0x9c, 0x2e, 0xcd, 0xa5, 0x8a, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_456 = { .name = "xdh_wei25519_456", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_456_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_456_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_456_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 457 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 457 for XDH, tcId is 458 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_457_peerpubkey[] = { 0xc0, 0xef, 0x1b, 0x7c, 0x20, 0x23, 0x7d, 0xb3, 0x70, 0x50, 0x1f, 0x24, 0x27, 0x4e, 0x4e, 0xba, 0x91, 0x99, 0x8a, 0xe4, 0x54, 0x5f, 0x93, 0x70, 0x07, 0xe1, 0xc4, 0xa2, 0xea, 0xb6, 0x33, 0x65, }; static const unsigned char xdh_wei25519_457_privkey[] = { 0x60, 0x11, 0x1c, 0x66, 0x29, 0xf7, 0x36, 0x35, 0x98, 0x5b, 0xe9, 0x64, 0xb8, 0x45, 0xf8, 0x7a, 0x88, 0xae, 0x56, 0x52, 0xd4, 0x5b, 0xb1, 0x45, 0x1c, 0xe8, 0xcf, 0xd2, 0xea, 0x45, 0xfe, 0x41, }; static const unsigned char xdh_wei25519_457_sharedsecret[] = { 0x22, 0x55, 0x7e, 0x0d, 0x87, 0x41, 0xed, 0x2a, 0x63, 0xaf, 0xd5, 0xe3, 0x13, 0xaa, 0x15, 0x79, 0xfc, 0x0c, 0x88, 0xc7, 0x77, 0x2e, 0x23, 0xa6, 0x76, 0xc9, 0x4b, 0x60, 0xc8, 0x9d, 0xf5, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_457 = { .name = "xdh_wei25519_457", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_457_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_457_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_457_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 458 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 458 for XDH, tcId is 459 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_458_peerpubkey[] = { 0xd5, 0x34, 0xd8, 0xff, 0x4d, 0x56, 0xa7, 0x3e, 0xf7, 0x61, 0x5e, 0x94, 0x52, 0x3b, 0x17, 0xe3, 0x5e, 0xdb, 0x3d, 0x0f, 0xb8, 0x7e, 0x98, 0xc6, 0x85, 0x36, 0xf6, 0x3f, 0x11, 0x4a, 0x8d, 0x6c, }; static const unsigned char xdh_wei25519_458_privkey[] = { 0x58, 0x78, 0x58, 0x89, 0xa2, 0x16, 0xd1, 0x54, 0x56, 0x58, 0x2d, 0x4e, 0x1e, 0x3d, 0xe9, 0xe9, 0xca, 0x4a, 0x43, 0x29, 0x54, 0x41, 0x6d, 0x81, 0xca, 0xf5, 0x2b, 0x2b, 0x43, 0x4c, 0x17, 0x46, }; static const unsigned char xdh_wei25519_458_sharedsecret[] = { 0x54, 0xd7, 0xfc, 0x17, 0xba, 0xd0, 0x02, 0x96, 0xba, 0x50, 0xb0, 0xf3, 0xd5, 0xbf, 0x8f, 0xb8, 0x3f, 0x82, 0xd5, 0x71, 0x95, 0x2a, 0x5f, 0xdb, 0x5a, 0x49, 0x41, 0x20, 0xcc, 0x61, 0x44, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_458 = { .name = "xdh_wei25519_458", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_458_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_458_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_458_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 459 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 459 for XDH, tcId is 460 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_459_peerpubkey[] = { 0x73, 0x3a, 0x71, 0x1b, 0xa0, 0x1b, 0x6e, 0x9b, 0x64, 0xa0, 0xbe, 0x4c, 0xdc, 0xa8, 0xc7, 0xcf, 0x3c, 0x66, 0xdf, 0x24, 0x35, 0xd5, 0x24, 0x8f, 0xb4, 0x41, 0x3f, 0xec, 0x6e, 0xe0, 0x3f, 0x70, }; static const unsigned char xdh_wei25519_459_privkey[] = { 0x60, 0xbe, 0xf3, 0x8a, 0x38, 0x90, 0xec, 0x1e, 0xd0, 0x5c, 0x29, 0x9f, 0xce, 0xb7, 0x7d, 0xb5, 0xea, 0xd4, 0xb8, 0x8d, 0x9e, 0x93, 0x1b, 0x0f, 0x21, 0xd6, 0x64, 0xf7, 0x7d, 0xf9, 0xb5, 0x44, }; static const unsigned char xdh_wei25519_459_sharedsecret[] = { 0xdb, 0x68, 0x51, 0xb1, 0x25, 0x85, 0xbc, 0x11, 0xbe, 0x93, 0x62, 0xc9, 0x6a, 0x54, 0x5c, 0x6f, 0x2b, 0xa5, 0x5f, 0x04, 0x00, 0x97, 0x92, 0x46, 0x3b, 0x96, 0xa3, 0x8c, 0xb9, 0xb3, 0xf0, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_459 = { .name = "xdh_wei25519_459", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_459_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_459_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 460 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 460 for XDH, tcId is 461 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_460_peerpubkey[] = { 0x35, 0x73, 0x8d, 0xd5, 0x39, 0xd6, 0x0f, 0x69, 0xcd, 0x1a, 0x1c, 0xff, 0xc8, 0xa4, 0x2b, 0x6a, 0xf6, 0x8f, 0xe7, 0xde, 0x45, 0x39, 0x2d, 0x02, 0x83, 0x1e, 0x2a, 0x77, 0x50, 0x0e, 0xa2, 0x78, }; static const unsigned char xdh_wei25519_460_privkey[] = { 0x58, 0x54, 0xee, 0x56, 0x68, 0x78, 0xef, 0x8b, 0x7e, 0xba, 0xf5, 0xa0, 0x58, 0x30, 0x6f, 0x25, 0x0e, 0xdf, 0x0c, 0x84, 0xfd, 0x52, 0xaf, 0x2d, 0x74, 0xb7, 0xce, 0x3c, 0x1e, 0xdd, 0xa7, 0x46, }; static const unsigned char xdh_wei25519_460_sharedsecret[] = { 0xf6, 0xd1, 0xa6, 0x64, 0x25, 0x7f, 0xa5, 0xde, 0x3d, 0x4d, 0x57, 0xf0, 0x4e, 0xda, 0x29, 0x76, 0xbf, 0x1e, 0x35, 0xcc, 0x3a, 0xc5, 0x13, 0xe1, 0xee, 0x84, 0xd5, 0x7d, 0x21, 0x35, 0xed, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_460 = { .name = "xdh_wei25519_460", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_460_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_460_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_460_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 461 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 461 for XDH, tcId is 462 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_461_peerpubkey[] = { 0xce, 0x93, 0x2b, 0x5a, 0xf4, 0xbe, 0x47, 0x21, 0xf9, 0x6f, 0x7b, 0x79, 0xba, 0x1c, 0x43, 0xb2, 0x06, 0x87, 0xd4, 0xaf, 0x49, 0xc3, 0x7b, 0x58, 0xdc, 0x89, 0x42, 0x79, 0xe0, 0x4b, 0xb5, 0x78, }; static const unsigned char xdh_wei25519_461_privkey[] = { 0x98, 0x5b, 0x55, 0x12, 0x61, 0xfc, 0xe3, 0x8d, 0xdc, 0x8f, 0xf3, 0xad, 0xd3, 0x2f, 0x5c, 0x26, 0x81, 0x1d, 0x27, 0x1b, 0x9a, 0x17, 0x94, 0xe2, 0x49, 0xdd, 0x76, 0xa3, 0x8d, 0xf2, 0x84, 0x46, }; static const unsigned char xdh_wei25519_461_sharedsecret[] = { 0xf8, 0xf7, 0x62, 0x5a, 0xc5, 0xbd, 0xe6, 0x3f, 0x75, 0x3a, 0x9b, 0xb4, 0xae, 0xfb, 0xfb, 0x9c, 0x46, 0x47, 0x20, 0x77, 0x08, 0xaf, 0x9d, 0x77, 0x4e, 0xf0, 0x8f, 0xf1, 0xb1, 0xe5, 0xa3, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_461 = { .name = "xdh_wei25519_461", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_461_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_461_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_461_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 462 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 462 for XDH, tcId is 463 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_462_peerpubkey[] = { 0xe3, 0x65, 0x54, 0x48, 0x33, 0x9e, 0x48, 0x50, 0x80, 0x6e, 0xb5, 0x8a, 0xbb, 0xa0, 0xc8, 0x91, 0x85, 0x51, 0x1e, 0xa7, 0x2c, 0x37, 0xc4, 0x9e, 0x95, 0x83, 0xee, 0x6d, 0xd2, 0x35, 0xd2, 0x13, }; static const unsigned char xdh_wei25519_462_privkey[] = { 0x88, 0x15, 0x05, 0x23, 0x44, 0xdc, 0xad, 0x97, 0xef, 0xd1, 0x34, 0x1e, 0x90, 0x72, 0xa8, 0x08, 0xcf, 0x99, 0x9e, 0x46, 0xe5, 0x2c, 0xf0, 0x4e, 0x0c, 0xfb, 0xcd, 0x99, 0x01, 0xe1, 0x8d, 0x43, }; static const unsigned char xdh_wei25519_462_sharedsecret[] = { 0x5e, 0x10, 0xdf, 0xbf, 0xf4, 0x44, 0x3e, 0xfc, 0xae, 0x2c, 0xcc, 0x78, 0xc2, 0x89, 0xa4, 0x14, 0x60, 0xd5, 0xa8, 0x2f, 0x79, 0xdf, 0x72, 0x6b, 0x88, 0x24, 0xcc, 0xbe, 0xf7, 0x14, 0x6d, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_462 = { .name = "xdh_wei25519_462", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_462_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_462_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_462_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 463 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 463 for XDH, tcId is 464 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_463_peerpubkey[] = { 0x4d, 0x16, 0x96, 0x5b, 0x16, 0x37, 0xe9, 0xd7, 0xae, 0x8f, 0xeb, 0x49, 0x9e, 0xd0, 0x55, 0x39, 0x62, 0xa9, 0xaa, 0x00, 0x22, 0xd1, 0x62, 0x0c, 0x92, 0x80, 0x72, 0xf6, 0x50, 0x1b, 0xc4, 0x1b, }; static const unsigned char xdh_wei25519_463_privkey[] = { 0xb8, 0xe0, 0x32, 0xe9, 0xe5, 0xff, 0xba, 0xa0, 0x04, 0x39, 0x0f, 0x3a, 0x0b, 0x90, 0x0b, 0xc7, 0xcf, 0x5d, 0x11, 0x23, 0x8b, 0x7e, 0xc9, 0x64, 0xaf, 0xc4, 0xbd, 0xa2, 0xaa, 0x6c, 0x34, 0x44, }; static const unsigned char xdh_wei25519_463_sharedsecret[] = { 0x19, 0xd7, 0xb4, 0x4c, 0x18, 0x47, 0xc4, 0x4e, 0x8f, 0x37, 0xa2, 0x2a, 0xb6, 0x9c, 0x18, 0x0f, 0xd9, 0xd7, 0x87, 0xf2, 0x04, 0x12, 0x30, 0x13, 0xe1, 0xb1, 0x68, 0x00, 0xb9, 0xcd, 0x0f, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_463 = { .name = "xdh_wei25519_463", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_463_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_463_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_463_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 464 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 464 for XDH, tcId is 465 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_464_peerpubkey[] = { 0xc6, 0xb9, 0xe6, 0x28, 0x87, 0x37, 0xad, 0x40, 0x45, 0x2c, 0xec, 0x10, 0x22, 0x87, 0x1d, 0x90, 0xaf, 0x16, 0x42, 0xd1, 0x0b, 0xd0, 0xa9, 0x77, 0x92, 0xb1, 0xa9, 0xc8, 0x99, 0x8e, 0x22, 0x20, }; static const unsigned char xdh_wei25519_464_privkey[] = { 0x70, 0x12, 0x85, 0x22, 0x11, 0xf6, 0x53, 0x6f, 0xca, 0x79, 0x93, 0x7e, 0x7e, 0x31, 0x6c, 0x91, 0x49, 0xb0, 0xe2, 0x0e, 0xa0, 0x3f, 0x95, 0x1e, 0x1b, 0xb0, 0x72, 0x89, 0x5c, 0xa0, 0xe0, 0x44, }; static const unsigned char xdh_wei25519_464_sharedsecret[] = { 0xdb, 0x99, 0x0d, 0x97, 0x9f, 0x4f, 0x22, 0xf7, 0x66, 0xe7, 0x82, 0x6d, 0x93, 0x55, 0x4e, 0x77, 0x1b, 0x36, 0x1d, 0xe4, 0x61, 0x27, 0x4d, 0x6c, 0x37, 0xba, 0xad, 0xeb, 0x8e, 0xf7, 0xbe, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_464 = { .name = "xdh_wei25519_464", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_464_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_464_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_464_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 465 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 465 for XDH, tcId is 466 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_465_peerpubkey[] = { 0xd5, 0x66, 0xfa, 0xb5, 0x05, 0xac, 0x4c, 0x7a, 0x3d, 0xc3, 0xb9, 0x40, 0x3e, 0xf1, 0x21, 0x39, 0x2c, 0xbb, 0xe2, 0x12, 0x16, 0xe5, 0xbc, 0xb8, 0xea, 0xb2, 0xdc, 0x94, 0x08, 0x98, 0x6e, 0x34, }; static const unsigned char xdh_wei25519_465_privkey[] = { 0xd0, 0x39, 0xc1, 0xb9, 0xec, 0x47, 0x63, 0xe0, 0xad, 0x8a, 0x0e, 0xf2, 0xb0, 0x87, 0x02, 0x97, 0xd0, 0xf8, 0xb4, 0x87, 0xe6, 0x60, 0x59, 0x5a, 0x48, 0x41, 0x05, 0xd1, 0x80, 0xe1, 0x4a, 0x47, }; static const unsigned char xdh_wei25519_465_sharedsecret[] = { 0x6d, 0x7f, 0xc5, 0xd4, 0xa8, 0xf5, 0x34, 0xb1, 0xbc, 0x0f, 0xa5, 0xe0, 0x78, 0x10, 0x42, 0x34, 0x67, 0x5c, 0x02, 0x66, 0x47, 0x36, 0x95, 0x7a, 0xbd, 0xb2, 0x7d, 0xf6, 0xfa, 0xf0, 0x7c, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_465 = { .name = "xdh_wei25519_465", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_465_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_465_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_465_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 466 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 466 for XDH, tcId is 467 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_466_peerpubkey[] = { 0x46, 0x8d, 0x35, 0xec, 0xfb, 0x6d, 0x9b, 0x72, 0x72, 0x52, 0x32, 0x76, 0xcc, 0x5e, 0x13, 0x76, 0x05, 0x19, 0x66, 0x7f, 0x0e, 0x1e, 0x38, 0x88, 0xda, 0x4c, 0x56, 0x95, 0x5f, 0xe9, 0x11, 0x51, }; static const unsigned char xdh_wei25519_466_privkey[] = { 0x58, 0xef, 0xcb, 0xc8, 0x77, 0x7c, 0x1b, 0x54, 0xf0, 0x9c, 0x61, 0xa2, 0x16, 0xef, 0xd4, 0x27, 0x29, 0x2e, 0xb1, 0x23, 0x12, 0xdb, 0xb3, 0xb3, 0x2b, 0xd4, 0x52, 0x54, 0xa6, 0x68, 0x3e, 0x47, }; static const unsigned char xdh_wei25519_466_sharedsecret[] = { 0x53, 0x9c, 0x8d, 0x62, 0x9a, 0xb5, 0x1c, 0x2f, 0x3e, 0xa7, 0x27, 0x8f, 0xd5, 0xf1, 0xc3, 0x1b, 0x6c, 0x15, 0x0a, 0x82, 0xfe, 0x3f, 0x78, 0x6b, 0x93, 0xff, 0xa1, 0x59, 0xfd, 0x6d, 0x93, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_466 = { .name = "xdh_wei25519_466", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_466_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_466_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_466_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 467 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 467 for XDH, tcId is 468 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_467_peerpubkey[] = { 0x19, 0x29, 0x53, 0x87, 0x43, 0x97, 0x7d, 0xfe, 0xa2, 0x0b, 0xf4, 0x92, 0x7d, 0xda, 0xbb, 0x2f, 0x3b, 0xb1, 0x5c, 0xac, 0x24, 0x61, 0x05, 0x45, 0x08, 0x84, 0x97, 0x18, 0x85, 0x4b, 0x55, 0x68, }; static const unsigned char xdh_wei25519_467_privkey[] = { 0xc8, 0xd7, 0x34, 0x46, 0x02, 0x6c, 0xd0, 0xea, 0x79, 0x57, 0x73, 0xc2, 0xeb, 0x7b, 0x16, 0x34, 0x8c, 0xd5, 0xf2, 0x28, 0xe3, 0x52, 0xdb, 0xc7, 0x73, 0x28, 0xc2, 0xd8, 0xb9, 0xcd, 0xe2, 0x40, }; static const unsigned char xdh_wei25519_467_sharedsecret[] = { 0xde, 0xe3, 0xfd, 0x19, 0xc8, 0xf2, 0x96, 0x41, 0x54, 0x48, 0xb2, 0x1a, 0xf4, 0x43, 0x85, 0xec, 0x46, 0x72, 0x7b, 0xbe, 0x67, 0xd4, 0x83, 0x9b, 0x93, 0xef, 0xe2, 0xf6, 0x80, 0xe7, 0x6d, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_467 = { .name = "xdh_wei25519_467", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_467_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_467_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_467_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 468 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 468 for XDH, tcId is 469 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_468_peerpubkey[] = { 0x2d, 0x7a, 0xb4, 0xc6, 0xf5, 0x98, 0x65, 0x35, 0x5e, 0xe8, 0xe9, 0xde, 0x57, 0xdb, 0x19, 0xaa, 0xdf, 0x77, 0x08, 0xb7, 0xc1, 0xd1, 0xa8, 0x18, 0x48, 0x7c, 0x34, 0x06, 0x23, 0xba, 0xdc, 0x6d, }; static const unsigned char xdh_wei25519_468_privkey[] = { 0x98, 0xb5, 0x59, 0x52, 0x3b, 0xc7, 0x78, 0xb0, 0x41, 0x8a, 0xf5, 0x3c, 0x0c, 0x32, 0xf6, 0xff, 0x5c, 0xf7, 0x71, 0xff, 0x5d, 0xf8, 0xae, 0x7c, 0xbf, 0x7c, 0x3b, 0x72, 0xae, 0xdb, 0x5b, 0x43, }; static const unsigned char xdh_wei25519_468_sharedsecret[] = { 0x2a, 0x03, 0x40, 0xaa, 0xaf, 0xa0, 0x5d, 0x00, 0x52, 0x9c, 0x09, 0x05, 0x7e, 0xd0, 0x14, 0x5f, 0x34, 0xd2, 0xde, 0x66, 0xa3, 0xe1, 0x49, 0xcf, 0x08, 0x4e, 0xa9, 0x71, 0x68, 0x91, 0x4f, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_468 = { .name = "xdh_wei25519_468", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_468_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_468_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_468_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 469 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 469 for XDH, tcId is 470 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_469_peerpubkey[] = { 0x43, 0x83, 0x9f, 0x4a, 0x6a, 0xa2, 0x06, 0xc8, 0x2c, 0x5a, 0x73, 0xf4, 0x9d, 0x8c, 0x9e, 0x57, 0x38, 0x26, 0xb3, 0xba, 0x72, 0x35, 0xd3, 0x12, 0x98, 0x7c, 0x17, 0xae, 0xbe, 0xe6, 0x27, 0x76, }; static const unsigned char xdh_wei25519_469_privkey[] = { 0x58, 0x98, 0x15, 0x02, 0x7c, 0xaf, 0x82, 0x71, 0x4e, 0x96, 0xc9, 0xf9, 0x1b, 0xac, 0xe6, 0x6e, 0xc4, 0xba, 0x3e, 0x92, 0xdf, 0x3f, 0xa1, 0x4b, 0x9b, 0x8f, 0xe5, 0x03, 0x55, 0x6e, 0x45, 0x43, }; static const unsigned char xdh_wei25519_469_sharedsecret[] = { 0x00, 0x31, 0x37, 0x17, 0xd3, 0x3e, 0x3b, 0x41, 0xa0, 0x86, 0x59, 0x86, 0x15, 0x75, 0x82, 0xe0, 0x53, 0x50, 0x2a, 0x17, 0x2b, 0x88, 0xd0, 0x1b, 0xb7, 0xb1, 0x08, 0x31, 0xa9, 0xfc, 0x4e, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_469 = { .name = "xdh_wei25519_469", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_469_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_469_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 470 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 470 for XDH, tcId is 471 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_470_peerpubkey[] = { 0x3c, 0x32, 0x1e, 0x7f, 0x0b, 0x9e, 0x55, 0x5b, 0xc2, 0x64, 0xa2, 0xce, 0xa6, 0x17, 0xe6, 0xb2, 0xb5, 0x62, 0xeb, 0xab, 0x21, 0xfe, 0x0c, 0x22, 0x6c, 0x3e, 0x48, 0x7b, 0x7d, 0xf9, 0xa2, 0x7d, }; static const unsigned char xdh_wei25519_470_privkey[] = { 0x80, 0x71, 0x5f, 0x67, 0x27, 0x0c, 0x99, 0x78, 0x98, 0x55, 0xce, 0xae, 0xa9, 0x9b, 0x99, 0x57, 0xcc, 0xda, 0x33, 0x32, 0x6f, 0x76, 0xbb, 0x44, 0x74, 0xab, 0x52, 0xab, 0x1e, 0xc3, 0x70, 0x41, }; static const unsigned char xdh_wei25519_470_sharedsecret[] = { 0x9b, 0x6b, 0xe9, 0xe6, 0xf2, 0xfd, 0xb5, 0xd3, 0x32, 0x18, 0x42, 0x22, 0x5d, 0x3e, 0x91, 0xd1, 0x48, 0x28, 0xcc, 0x53, 0xba, 0x66, 0x54, 0xda, 0xbe, 0x19, 0x0b, 0x0c, 0x3e, 0xde, 0xb3, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_470 = { .name = "xdh_wei25519_470", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_470_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_470_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 471 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 471 for XDH, tcId is 472 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_471_peerpubkey[] = { 0x42, 0xe5, 0xa6, 0xb8, 0xe9, 0x65, 0x4b, 0xb4, 0xad, 0x62, 0x4a, 0xf3, 0xf4, 0x91, 0x87, 0x79, 0x77, 0x51, 0x3c, 0xc8, 0x77, 0x5c, 0x8f, 0xb3, 0x12, 0xad, 0x19, 0xdb, 0xf3, 0x90, 0x3a, 0x28, }; static const unsigned char xdh_wei25519_471_privkey[] = { 0x10, 0x1b, 0x99, 0x0b, 0xd8, 0x3d, 0x68, 0x41, 0x26, 0xff, 0x04, 0x7d, 0x93, 0x0c, 0x27, 0xd0, 0x86, 0xa5, 0x88, 0xdd, 0x19, 0x68, 0x3d, 0x26, 0x29, 0xf0, 0xe3, 0x4f, 0x43, 0x74, 0xab, 0x41, }; static const unsigned char xdh_wei25519_471_sharedsecret[] = { 0x22, 0x3f, 0x1e, 0xb5, 0x52, 0x30, 0x83, 0x73, 0x02, 0x6d, 0x11, 0xc9, 0x54, 0x68, 0x4c, 0xe6, 0xdb, 0x87, 0x0b, 0x63, 0x8b, 0x19, 0x0b, 0x94, 0x43, 0xe5, 0x0a, 0xae, 0x21, 0x9f, 0x4e, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_471 = { .name = "xdh_wei25519_471", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_471_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_471_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_471_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 472 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 472 for XDH, tcId is 473 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_472_peerpubkey[] = { 0x0a, 0x51, 0xdd, 0x90, 0xab, 0x98, 0x5f, 0x6d, 0xea, 0xf7, 0x2f, 0x16, 0xc4, 0x50, 0x14, 0xda, 0x26, 0xdf, 0x84, 0x86, 0x97, 0xf6, 0x58, 0x2d, 0x75, 0x68, 0x8f, 0x52, 0x23, 0x34, 0x2b, 0x51, }; static const unsigned char xdh_wei25519_472_privkey[] = { 0x20, 0x00, 0x89, 0xb7, 0x12, 0xd9, 0xa2, 0x05, 0x05, 0x97, 0x77, 0x9d, 0x46, 0x37, 0x12, 0xfc, 0xd2, 0x23, 0xe3, 0xd6, 0x78, 0x79, 0xc0, 0xfb, 0x76, 0x06, 0xf8, 0xf5, 0xf0, 0xef, 0xee, 0x40, }; static const unsigned char xdh_wei25519_472_sharedsecret[] = { 0xfb, 0x95, 0xce, 0x4a, 0x3c, 0x1f, 0x32, 0x56, 0x38, 0xb7, 0xd4, 0x7f, 0x42, 0x16, 0xd3, 0x9a, 0x7c, 0x6c, 0x5d, 0xa9, 0xa0, 0x1c, 0xaa, 0x29, 0x7c, 0x37, 0xb6, 0x28, 0x16, 0x55, 0x5b, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_472 = { .name = "xdh_wei25519_472", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_472_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_472_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_472_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 473 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 473 for XDH, tcId is 474 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_473_peerpubkey[] = { 0x88, 0x42, 0x31, 0x73, 0x57, 0xbd, 0xe8, 0x25, 0xef, 0x43, 0x8a, 0x1c, 0x53, 0x90, 0x6f, 0xb8, 0xb0, 0x4e, 0xa3, 0x60, 0xf7, 0xef, 0x33, 0x8c, 0x78, 0xe6, 0x68, 0x58, 0x60, 0x47, 0x93, 0x6a, }; static const unsigned char xdh_wei25519_473_privkey[] = { 0xf0, 0x4f, 0x87, 0xf4, 0xe6, 0x23, 0xaf, 0x4c, 0x31, 0xce, 0xca, 0x0b, 0xb8, 0x7f, 0xac, 0x2d, 0x5b, 0x12, 0x51, 0x7b, 0x5a, 0x72, 0x84, 0x90, 0x2a, 0xd7, 0x58, 0x38, 0xe6, 0x5f, 0x1e, 0x41, }; static const unsigned char xdh_wei25519_473_sharedsecret[] = { 0x48, 0x8b, 0x83, 0x41, 0xc9, 0xcb, 0x1b, 0xbf, 0x12, 0x45, 0x10, 0xb9, 0xf8, 0xda, 0xe4, 0xfa, 0xf2, 0xe0, 0xdc, 0xa9, 0xb8, 0x4e, 0x00, 0xe9, 0x52, 0xa6, 0x3b, 0x5a, 0xa3, 0x28, 0xa8, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_473 = { .name = "xdh_wei25519_473", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_473_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_473_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_473_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 474 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 474 for XDH, tcId is 475 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_474_peerpubkey[] = { 0xc7, 0x1d, 0x92, 0xd3, 0xc9, 0x2d, 0xbf, 0xae, 0xd7, 0x55, 0xfb, 0x32, 0x79, 0x7b, 0x66, 0x7c, 0xc8, 0x6b, 0x0e, 0x79, 0x36, 0x24, 0x98, 0xe2, 0xac, 0xa3, 0x8c, 0x68, 0x97, 0x13, 0xb1, 0x6e, }; static const unsigned char xdh_wei25519_474_privkey[] = { 0x38, 0x3c, 0xbd, 0x5a, 0x3d, 0xd0, 0x90, 0x1d, 0x09, 0xa3, 0xca, 0xc3, 0xd3, 0xa7, 0x7a, 0x97, 0x9c, 0xec, 0xf1, 0x5e, 0x20, 0x6a, 0x55, 0x3e, 0x4c, 0xa3, 0xf2, 0x4b, 0x90, 0x78, 0x39, 0x45, }; static const unsigned char xdh_wei25519_474_sharedsecret[] = { 0x11, 0x29, 0xea, 0xe9, 0x7b, 0xf7, 0x5f, 0x73, 0x14, 0xf2, 0xe1, 0xb4, 0x03, 0xb1, 0x87, 0x37, 0xad, 0x83, 0x0c, 0x80, 0x42, 0x9e, 0x2b, 0xa0, 0xd4, 0x86, 0x6b, 0x36, 0x23, 0x99, 0x85, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_474 = { .name = "xdh_wei25519_474", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_474_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_474_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_474_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 475 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 475 for XDH, tcId is 476 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_475_peerpubkey[] = { 0x3a, 0x21, 0xd1, 0xcf, 0x7b, 0x37, 0x44, 0xd1, 0xad, 0x26, 0x19, 0x73, 0x35, 0x84, 0x49, 0x82, 0xc2, 0xa0, 0xc6, 0xa5, 0xaa, 0x83, 0x54, 0x92, 0xbd, 0x03, 0xc4, 0x01, 0xa4, 0xfe, 0x67, 0x78, }; static const unsigned char xdh_wei25519_475_privkey[] = { 0x70, 0x1d, 0xf0, 0x9e, 0x57, 0xb9, 0x8a, 0xec, 0x37, 0x57, 0x45, 0xdf, 0x14, 0x7b, 0x72, 0x94, 0x9a, 0x6b, 0x2b, 0xb2, 0xca, 0x3a, 0x34, 0x88, 0x15, 0x12, 0xee, 0x31, 0xe7, 0x90, 0xad, 0x42, }; static const unsigned char xdh_wei25519_475_sharedsecret[] = { 0x07, 0x2f, 0x51, 0xd9, 0x47, 0x27, 0xf3, 0x92, 0xd5, 0x9d, 0xc7, 0xca, 0xff, 0x1f, 0x44, 0x60, 0x45, 0x23, 0x52, 0xec, 0x39, 0xc3, 0x2a, 0x1c, 0x9f, 0x07, 0x1e, 0x38, 0x88, 0x33, 0xda, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_475 = { .name = "xdh_wei25519_475", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_475_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_475_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_475_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 476 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 476 for XDH, tcId is 477 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_476_peerpubkey[] = { 0xd1, 0x28, 0xea, 0x3e, 0x13, 0x32, 0x5e, 0xd6, 0xeb, 0xd6, 0x53, 0x3a, 0x9f, 0xd3, 0x04, 0x5a, 0x55, 0xf2, 0x5a, 0xd8, 0xb6, 0x7d, 0xef, 0x30, 0x91, 0x28, 0x43, 0x50, 0x4c, 0x1a, 0xab, 0x29, }; static const unsigned char xdh_wei25519_476_privkey[] = { 0xb0, 0xff, 0xa5, 0xf4, 0x92, 0x2b, 0xb1, 0x17, 0xad, 0x75, 0xff, 0x43, 0xac, 0xac, 0x62, 0x33, 0x1e, 0xfa, 0xa4, 0x55, 0x36, 0xfe, 0x88, 0x30, 0x6e, 0x4a, 0x4c, 0xb5, 0x8d, 0xb7, 0x3a, 0x47, }; static const unsigned char xdh_wei25519_476_sharedsecret[] = { 0x30, 0x51, 0x21, 0x42, 0xd3, 0xe3, 0xa4, 0xca, 0xd6, 0x72, 0x6d, 0x9d, 0x35, 0xf2, 0xe0, 0x43, 0xfc, 0xa9, 0xdf, 0xb7, 0x50, 0x88, 0x4a, 0xe2, 0x2b, 0x25, 0x47, 0xc8, 0x40, 0xf3, 0x58, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_476 = { .name = "xdh_wei25519_476", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_476_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_476_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_476_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 477 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 477 for XDH, tcId is 478 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_477_peerpubkey[] = { 0xe0, 0x79, 0xc8, 0xf8, 0x42, 0x31, 0x65, 0xc7, 0xe0, 0xa2, 0xc4, 0x8b, 0x4a, 0xbe, 0x90, 0xae, 0xce, 0x4e, 0x6d, 0x90, 0x3d, 0x7a, 0x5a, 0x16, 0x25, 0xfa, 0xd0, 0x41, 0x0c, 0xd5, 0x5b, 0x32, }; static const unsigned char xdh_wei25519_477_privkey[] = { 0x68, 0x5e, 0x32, 0x71, 0xd2, 0x01, 0x57, 0x41, 0x75, 0x66, 0x12, 0xa9, 0x30, 0xe8, 0x58, 0xb9, 0x30, 0xac, 0xf2, 0x01, 0x81, 0x45, 0xf3, 0x82, 0xc8, 0x3d, 0x8c, 0xce, 0xd2, 0xe2, 0x20, 0x44, }; static const unsigned char xdh_wei25519_477_sharedsecret[] = { 0x5b, 0x81, 0xb3, 0x76, 0x1a, 0x66, 0xd1, 0x99, 0xe8, 0xef, 0x99, 0xd2, 0x49, 0x4b, 0xd5, 0x7a, 0x02, 0x29, 0xd4, 0x56, 0x4a, 0x7f, 0x6d, 0x60, 0x55, 0xf2, 0x2a, 0xa4, 0x86, 0x81, 0xbd, 0x3a, }; static const wycheproof_xdh_test xdh_wei25519_477 = { .name = "xdh_wei25519_477", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_477_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_477_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_477_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 478 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 478 for XDH, tcId is 479 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_478_peerpubkey[] = { 0x65, 0x92, 0x2a, 0x06, 0xe9, 0xbe, 0x4e, 0x8a, 0x5e, 0x8a, 0xce, 0xb1, 0xa4, 0xe0, 0x8f, 0xe9, 0x0f, 0x01, 0xe1, 0x0e, 0xf2, 0xdd, 0x27, 0x31, 0x54, 0x27, 0xce, 0xdf, 0xcf, 0x95, 0xec, 0x32, }; static const unsigned char xdh_wei25519_478_privkey[] = { 0xf8, 0xe1, 0x61, 0xd6, 0x92, 0x97, 0xe0, 0x17, 0xd7, 0xc5, 0x1b, 0x1b, 0x1f, 0xf3, 0xba, 0x70, 0x3d, 0x4c, 0x4c, 0xf8, 0xfc, 0x2b, 0x8f, 0xf4, 0x7f, 0x74, 0xc3, 0xff, 0x8c, 0x7d, 0x35, 0x41, }; static const unsigned char xdh_wei25519_478_sharedsecret[] = { 0x03, 0x8d, 0xe7, 0xfd, 0xb9, 0xcc, 0x00, 0x30, 0xf5, 0xc1, 0x1d, 0xda, 0x00, 0x58, 0x9f, 0x0a, 0x95, 0xf6, 0x56, 0x58, 0x81, 0x5b, 0x06, 0xed, 0x01, 0x35, 0x53, 0xa0, 0x2b, 0x6c, 0x50, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_478 = { .name = "xdh_wei25519_478", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_478_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_478_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_478_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 479 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 479 for XDH, tcId is 480 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_479_peerpubkey[] = { 0xd3, 0x6a, 0x24, 0x0e, 0x97, 0x2d, 0xc1, 0x6e, 0x9b, 0x97, 0xa9, 0x97, 0xad, 0xa3, 0x37, 0xf0, 0x27, 0x60, 0xd0, 0x5c, 0x46, 0xd7, 0xf8, 0xd7, 0xb4, 0xe9, 0xea, 0x9a, 0x63, 0x5c, 0x7c, 0x64, }; static const unsigned char xdh_wei25519_479_privkey[] = { 0x10, 0x5d, 0x75, 0x89, 0xf8, 0xab, 0xef, 0x0a, 0xcf, 0x09, 0x40, 0xda, 0x84, 0xa6, 0x9e, 0x8f, 0x2f, 0x30, 0x6f, 0xa7, 0x3c, 0x9a, 0xfd, 0x27, 0x34, 0x22, 0x87, 0xc1, 0xdb, 0xa8, 0x00, 0x44, }; static const unsigned char xdh_wei25519_479_sharedsecret[] = { 0x22, 0xb0, 0xde, 0xa3, 0xb3, 0xb7, 0xca, 0x55, 0xec, 0xee, 0xaa, 0xe6, 0x44, 0x34, 0x26, 0x54, 0x8c, 0x7c, 0x15, 0xcc, 0x7d, 0xdf, 0x31, 0x78, 0x03, 0x18, 0xd1, 0xc2, 0x38, 0x79, 0xc1, 0x6a, }; static const wycheproof_xdh_test xdh_wei25519_479 = { .name = "xdh_wei25519_479", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_479_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_479_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_479_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 480 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 480 for XDH, tcId is 481 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_480_peerpubkey[] = { 0x4f, 0x5b, 0x8b, 0x98, 0x92, 0xb8, 0xa4, 0x6d, 0xf0, 0x8d, 0x76, 0xa4, 0x74, 0x5b, 0x1c, 0x58, 0xd4, 0xe7, 0xa3, 0x94, 0x90, 0x54, 0x35, 0x87, 0x56, 0x88, 0xca, 0x11, 0xf1, 0xe9, 0xd8, 0x6a, }; static const unsigned char xdh_wei25519_480_privkey[] = { 0x18, 0x93, 0xd4, 0x38, 0x8b, 0x0e, 0x90, 0xf0, 0xb5, 0x02, 0x08, 0xaa, 0x8f, 0x0c, 0xc2, 0x4f, 0x57, 0x6d, 0x03, 0x64, 0x1b, 0xaf, 0x1c, 0x3e, 0xdd, 0xb2, 0xa3, 0xef, 0xa6, 0x9c, 0x9d, 0x40, }; static const unsigned char xdh_wei25519_480_sharedsecret[] = { 0xa2, 0x5e, 0x13, 0x06, 0x68, 0x4a, 0xd7, 0x87, 0x0a, 0x31, 0xf0, 0x40, 0x45, 0x66, 0xe8, 0xd2, 0x8f, 0x2d, 0x83, 0xd4, 0xb9, 0x49, 0x78, 0x22, 0xc5, 0x7f, 0x87, 0x81, 0xb1, 0x8f, 0xec, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_480 = { .name = "xdh_wei25519_480", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_480_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_480_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_480_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 481 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 481 for XDH, tcId is 482 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_481_peerpubkey[] = { 0xaa, 0x2f, 0x02, 0x62, 0x82, 0x69, 0x13, 0x9a, 0x7a, 0x8a, 0x16, 0xfd, 0xe9, 0x5c, 0x9b, 0xad, 0x7d, 0xa7, 0xff, 0xbd, 0x54, 0x39, 0xc3, 0x96, 0xa7, 0xd7, 0x7b, 0x6c, 0x32, 0x13, 0xe6, 0x7f, }; static const unsigned char xdh_wei25519_481_privkey[] = { 0x00, 0x65, 0x17, 0x13, 0x01, 0xbf, 0x6b, 0x90, 0xfb, 0x16, 0xef, 0xa3, 0x55, 0x09, 0x16, 0x1f, 0x1b, 0xd6, 0xb3, 0xb9, 0x31, 0x30, 0xd4, 0x90, 0xaf, 0x9f, 0xe2, 0x24, 0xdd, 0x15, 0x5f, 0x45, }; static const unsigned char xdh_wei25519_481_sharedsecret[] = { 0xbb, 0x44, 0x31, 0xbe, 0xa7, 0xa5, 0x87, 0x1c, 0x1b, 0xe2, 0x7a, 0x26, 0x74, 0x09, 0x46, 0x27, 0xea, 0xaa, 0x44, 0x25, 0xc9, 0x9c, 0xd3, 0xfa, 0x41, 0xbd, 0x7e, 0x13, 0xcb, 0xd7, 0xbf, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_481 = { .name = "xdh_wei25519_481", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_481_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_481_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_481_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 482 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 482 for XDH, tcId is 483 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_482_peerpubkey[] = { 0xd9, 0x95, 0xcb, 0x28, 0x7e, 0x9a, 0x9c, 0x57, 0x91, 0xf3, 0xca, 0xe3, 0xd4, 0x94, 0xa5, 0xb5, 0x16, 0xa1, 0xe2, 0x6c, 0xbc, 0x93, 0x0f, 0x43, 0xe7, 0x3c, 0x8b, 0x70, 0xb6, 0x9d, 0x78, 0x3b, }; static const unsigned char xdh_wei25519_482_privkey[] = { 0x10, 0xc8, 0x1a, 0x4e, 0x78, 0xd8, 0x21, 0x45, 0xb2, 0x66, 0xe1, 0xd7, 0x4b, 0x38, 0x69, 0xbf, 0x1c, 0x27, 0x42, 0x78, 0x03, 0xeb, 0xb1, 0x1c, 0x92, 0xff, 0x80, 0x73, 0xd1, 0xe4, 0xcc, 0x46, }; static const unsigned char xdh_wei25519_482_sharedsecret[] = { 0x33, 0x0f, 0x5d, 0x0b, 0x5b, 0xcc, 0xc9, 0x0f, 0x76, 0x94, 0xdf, 0xdd, 0x9c, 0x64, 0x49, 0xa6, 0x2d, 0x93, 0xaf, 0x88, 0x40, 0xea, 0xf5, 0x71, 0xe3, 0xe0, 0x61, 0x0e, 0x01, 0x98, 0xb0, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_482 = { .name = "xdh_wei25519_482", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_482_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_482_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_482_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 8, tcId is 483 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 483 for XDH, tcId is 484 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_483_peerpubkey[] = { 0x47, 0x9a, 0xfb, 0x1e, 0x73, 0xdc, 0x77, 0xc3, 0x74, 0x3e, 0x51, 0xe9, 0xec, 0x0b, 0xcc, 0x61, 0xce, 0x66, 0xed, 0x08, 0x4d, 0xc1, 0x0b, 0xfa, 0x27, 0x94, 0xb4, 0xc3, 0xe4, 0x95, 0x37, 0x69, }; static const unsigned char xdh_wei25519_483_privkey[] = { 0x48, 0xb9, 0x8b, 0x4a, 0x99, 0xea, 0xdd, 0x73, 0x01, 0x2c, 0x07, 0xfe, 0x5c, 0x4a, 0x0b, 0x95, 0x90, 0xac, 0x55, 0xe8, 0x21, 0x35, 0x3b, 0x41, 0xd5, 0xf6, 0x65, 0xe1, 0x71, 0x88, 0xbc, 0x41, }; static const unsigned char xdh_wei25519_483_sharedsecret[] = { 0xbd, 0xef, 0x00, 0xca, 0xa5, 0x14, 0xb2, 0xf8, 0xab, 0x1f, 0xb2, 0x24, 0x1e, 0x83, 0x78, 0x7a, 0x02, 0x60, 0x1e, 0xcd, 0xff, 0x6c, 0xf1, 0x66, 0xc4, 0x21, 0x0f, 0x8c, 0x1a, 0xde, 0x42, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_483 = { .name = "xdh_wei25519_483", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_483_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_483_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_483_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 484 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 484 for XDH, tcId is 485 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_484_peerpubkey[] = { 0x37, 0x8e, 0xda, 0x41, 0x47, 0x0b, 0x0f, 0x23, 0x8a, 0x20, 0x0f, 0x80, 0x80, 0x9a, 0xd5, 0x62, 0xca, 0x41, 0xe6, 0x24, 0x11, 0xa6, 0x1f, 0xeb, 0x7f, 0x7e, 0x9b, 0x75, 0x2b, 0x55, 0x46, 0x42, }; static const unsigned char xdh_wei25519_484_privkey[] = { 0x18, 0x97, 0x67, 0x8e, 0x38, 0x22, 0x2a, 0x61, 0xfe, 0x10, 0x5d, 0xc6, 0x64, 0x3c, 0x1e, 0xb5, 0x94, 0x0e, 0x8d, 0xbc, 0x73, 0xed, 0x6c, 0x00, 0xf2, 0x5a, 0x34, 0x32, 0x8f, 0x43, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_484_sharedsecret[] = { 0xbf, 0xd5, 0xb5, 0xac, 0xd2, 0xd8, 0x9f, 0x21, 0x3a, 0x26, 0xca, 0xf5, 0x40, 0x62, 0xf9, 0xa2, 0x4e, 0x6f, 0x6f, 0xd8, 0xdd, 0xd0, 0xcd, 0x2e, 0x5e, 0x47, 0xb7, 0xfe, 0xa4, 0xa9, 0xc5, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_484 = { .name = "xdh_wei25519_484", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_484_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_484_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_484_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 485 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 485 for XDH, tcId is 486 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_485_peerpubkey[] = { 0x0c, 0xad, 0x75, 0x45, 0xad, 0xe2, 0xfd, 0x93, 0xfc, 0xae, 0x00, 0x7c, 0x97, 0x64, 0x83, 0x48, 0xf2, 0x6d, 0x85, 0x82, 0x9b, 0xdb, 0x72, 0x23, 0xa6, 0x3e, 0xcc, 0xb8, 0x4e, 0x56, 0xd4, 0x75, }; static const unsigned char xdh_wei25519_485_privkey[] = { 0xa8, 0x98, 0xaf, 0x81, 0x38, 0xe1, 0x1a, 0xe4, 0x5b, 0xbc, 0xef, 0xa7, 0x37, 0x18, 0x2a, 0x57, 0x18, 0x85, 0xf9, 0x2d, 0x51, 0x5c, 0x32, 0x05, 0x6c, 0x7c, 0xb0, 0xd7, 0xde, 0xac, 0x47, 0x41, }; static const unsigned char xdh_wei25519_485_sharedsecret[] = { 0xc8, 0x08, 0x58, 0x77, 0x80, 0x0c, 0x17, 0x5e, 0x94, 0x9c, 0xdd, 0x88, 0xe1, 0x96, 0xeb, 0x9c, 0x48, 0x41, 0xda, 0x2a, 0xc4, 0x46, 0xdf, 0xed, 0x90, 0x85, 0xbd, 0xa5, 0xbb, 0xec, 0x26, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_485 = { .name = "xdh_wei25519_485", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_485_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_485_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_485_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 486 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 486 for XDH, tcId is 487 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_486_peerpubkey[] = { 0x60, 0xf2, 0x7e, 0xd0, 0xa2, 0x78, 0x04, 0xce, 0xd2, 0x37, 0xcf, 0x3c, 0x1c, 0xc7, 0x76, 0x65, 0x0f, 0xb3, 0x20, 0xba, 0xe6, 0xd5, 0xac, 0xb5, 0x64, 0xe9, 0x7b, 0x56, 0xcb, 0xa2, 0x52, 0x10, }; static const unsigned char xdh_wei25519_486_privkey[] = { 0xb0, 0xbf, 0xef, 0x6e, 0xc0, 0x95, 0xb5, 0xa1, 0xf9, 0x39, 0x17, 0xd3, 0x2f, 0x16, 0xa2, 0x1d, 0x04, 0x62, 0xc1, 0xfd, 0xe1, 0x74, 0x46, 0xf5, 0xa5, 0x90, 0x23, 0x2d, 0x9c, 0x89, 0x5f, 0x4a, }; static const unsigned char xdh_wei25519_486_sharedsecret[] = { 0x4c, 0x30, 0x08, 0x95, 0x82, 0x73, 0x82, 0xa9, 0xd1, 0x07, 0x90, 0x28, 0xbd, 0x6f, 0x69, 0x4a, 0x7a, 0x12, 0xdd, 0xac, 0x9c, 0x76, 0xab, 0xac, 0x6f, 0xdf, 0x5d, 0x29, 0x45, 0x7a, 0x33, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_486 = { .name = "xdh_wei25519_486", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_486_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_486_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_486_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 487 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 487 for XDH, tcId is 488 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_487_peerpubkey[] = { 0xf9, 0x3a, 0x73, 0x27, 0x0a, 0xc1, 0x91, 0x94, 0xb8, 0xe4, 0xff, 0xd0, 0x2b, 0xe4, 0xb1, 0x43, 0x85, 0x25, 0xf8, 0x4a, 0x76, 0x22, 0x46, 0x88, 0xea, 0x89, 0xa9, 0xdd, 0x6a, 0x1b, 0xd6, 0x23, }; static const unsigned char xdh_wei25519_487_privkey[] = { 0x60, 0x49, 0x7d, 0x44, 0x64, 0xed, 0x88, 0x23, 0xc5, 0x0f, 0xbc, 0x6b, 0x68, 0x62, 0x08, 0x26, 0xc4, 0xf6, 0x29, 0xc1, 0xd9, 0x19, 0x30, 0x58, 0xdf, 0x6b, 0xf8, 0x57, 0xc6, 0xae, 0xcc, 0x4b, }; static const unsigned char xdh_wei25519_487_sharedsecret[] = { 0x72, 0x85, 0xfb, 0xb3, 0xf7, 0x63, 0x40, 0xa9, 0x79, 0xab, 0x6e, 0x28, 0x87, 0x27, 0xa2, 0x11, 0x33, 0x32, 0xcf, 0x93, 0x38, 0x09, 0xb0, 0x18, 0xb8, 0x73, 0x9a, 0x79, 0x6a, 0x09, 0xd0, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_487 = { .name = "xdh_wei25519_487", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_487_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_487_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_487_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 488 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 488 for XDH, tcId is 489 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_488_peerpubkey[] = { 0xcf, 0x80, 0xc3, 0x0f, 0xcb, 0xfd, 0x53, 0x56, 0x66, 0xca, 0x1d, 0xa4, 0x99, 0xe2, 0xe9, 0x9c, 0xc5, 0x37, 0x06, 0x3e, 0x2d, 0xe1, 0x94, 0x58, 0xfc, 0xf9, 0x2f, 0x5e, 0xe3, 0x4a, 0xcf, 0x47, }; static const unsigned char xdh_wei25519_488_privkey[] = { 0x08, 0xc6, 0xcb, 0xe0, 0x37, 0x92, 0xa3, 0x82, 0x9f, 0x06, 0xe8, 0xad, 0x54, 0xc5, 0x5d, 0xb1, 0x13, 0x23, 0x6a, 0xc0, 0xdc, 0xc9, 0xab, 0x6a, 0x9a, 0x6b, 0x10, 0xee, 0xd1, 0x04, 0x1b, 0x48, }; static const unsigned char xdh_wei25519_488_sharedsecret[] = { 0xda, 0xbc, 0x3b, 0xd4, 0x9f, 0x19, 0xcf, 0x70, 0x71, 0x80, 0x2e, 0x43, 0xc8, 0x63, 0xed, 0x0b, 0x1d, 0x93, 0xa8, 0x41, 0x58, 0x80, 0x98, 0xb9, 0x8a, 0x0c, 0x58, 0x1b, 0xf4, 0xfe, 0x0a, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_488 = { .name = "xdh_wei25519_488", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_488_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_488_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_488_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 489 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 489 for XDH, tcId is 490 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_489_peerpubkey[] = { 0x69, 0x8e, 0xff, 0xe0, 0xad, 0x42, 0xe1, 0x5e, 0xe1, 0xf4, 0x6f, 0xde, 0x6f, 0xc5, 0x07, 0x4f, 0xfd, 0xa1, 0x83, 0xbc, 0xf1, 0xb2, 0xdb, 0x86, 0x47, 0xf5, 0x61, 0xdd, 0xd1, 0x91, 0xdd, 0x60, }; static const unsigned char xdh_wei25519_489_privkey[] = { 0x50, 0x04, 0x4d, 0xa3, 0x31, 0x5d, 0xd0, 0x82, 0xe9, 0xdf, 0xb6, 0xa1, 0x99, 0x4a, 0xab, 0xb3, 0x31, 0xf5, 0x3e, 0x0d, 0x1c, 0x12, 0x63, 0x33, 0x83, 0xb2, 0xa3, 0xc8, 0x67, 0x8c, 0xfe, 0x4c, }; static const unsigned char xdh_wei25519_489_sharedsecret[] = { 0xa6, 0x1a, 0x3b, 0x15, 0x0b, 0x47, 0x70, 0x53, 0x23, 0x73, 0x67, 0x62, 0x98, 0xc9, 0xa5, 0xda, 0x28, 0xad, 0xcc, 0x43, 0x65, 0xb0, 0x6f, 0xe0, 0x7c, 0x95, 0x9c, 0xa8, 0x0e, 0x47, 0x7a, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_489 = { .name = "xdh_wei25519_489", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_489_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_489_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_489_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 490 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 490 for XDH, tcId is 491 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_490_peerpubkey[] = { 0xbd, 0x15, 0x65, 0xb4, 0xa3, 0xf8, 0x51, 0x5d, 0xff, 0x57, 0x7b, 0xe6, 0xdc, 0xb4, 0x14, 0x51, 0x1d, 0x3d, 0x4e, 0xc2, 0xde, 0x15, 0xe0, 0xbd, 0x45, 0xb2, 0x8e, 0x9c, 0xc4, 0xca, 0xef, 0x60, }; static const unsigned char xdh_wei25519_490_privkey[] = { 0x28, 0x56, 0x40, 0xda, 0x7a, 0x48, 0x25, 0x2e, 0x35, 0xdd, 0xce, 0x60, 0xc1, 0x4a, 0xdd, 0xb7, 0x30, 0x97, 0xfb, 0xc9, 0xac, 0x2f, 0x87, 0xc8, 0xd2, 0x77, 0x2c, 0xe8, 0x9a, 0xa6, 0xbe, 0x4d, }; static const unsigned char xdh_wei25519_490_sharedsecret[] = { 0x91, 0x6a, 0xb4, 0xf3, 0xbf, 0xc8, 0x32, 0x1e, 0x10, 0x87, 0xd9, 0xc5, 0x44, 0x4f, 0x8f, 0x7a, 0x43, 0xe9, 0xca, 0x6d, 0x29, 0xe7, 0xba, 0x98, 0xa1, 0x9d, 0xc0, 0x5f, 0xff, 0x34, 0xed, 0x4c, }; static const wycheproof_xdh_test xdh_wei25519_490 = { .name = "xdh_wei25519_490", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_490_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_490_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_490_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 491 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 491 for XDH, tcId is 492 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_491_peerpubkey[] = { 0xb8, 0x64, 0x9e, 0x13, 0x84, 0x3f, 0x80, 0xcf, 0x57, 0x02, 0x39, 0x8e, 0x4a, 0x9a, 0x8c, 0x37, 0x8f, 0x29, 0xda, 0x96, 0xdf, 0xd6, 0x57, 0x9f, 0x1e, 0xb4, 0xf7, 0xea, 0x34, 0xdf, 0x67, 0x65, }; static const unsigned char xdh_wei25519_491_privkey[] = { 0x78, 0x32, 0x71, 0xc2, 0x11, 0x99, 0xba, 0x2e, 0x94, 0xea, 0xd9, 0x2c, 0xd9, 0xdd, 0x79, 0xf7, 0x0a, 0xab, 0x37, 0x8b, 0x59, 0x49, 0x74, 0x55, 0xd3, 0x27, 0xa5, 0x90, 0x7d, 0xaf, 0xcb, 0x4a, }; static const unsigned char xdh_wei25519_491_sharedsecret[] = { 0x84, 0x4a, 0x5d, 0xd5, 0x13, 0x95, 0x54, 0xca, 0x7b, 0x41, 0xcb, 0xe6, 0xa4, 0x79, 0x61, 0x93, 0x91, 0x2e, 0x7a, 0xa4, 0xe2, 0x01, 0xcc, 0x68, 0x94, 0x4c, 0xe2, 0xa5, 0x57, 0x74, 0xa1, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_491 = { .name = "xdh_wei25519_491", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_491_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_491_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_491_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 492 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 492 for XDH, tcId is 493 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_492_peerpubkey[] = { 0xc3, 0x96, 0x93, 0x87, 0x37, 0xab, 0xdf, 0x79, 0x1e, 0x09, 0xa9, 0x7e, 0xba, 0x57, 0x7c, 0x43, 0x7d, 0x9b, 0x67, 0xc2, 0xda, 0xe9, 0x4e, 0x13, 0xea, 0xb7, 0x29, 0x6e, 0xc0, 0xfc, 0x73, 0x7e, }; static const unsigned char xdh_wei25519_492_privkey[] = { 0xd0, 0x67, 0x6a, 0x0b, 0x9a, 0x04, 0x6c, 0x62, 0xd5, 0xb2, 0xe7, 0x40, 0xd9, 0xcc, 0x43, 0xfa, 0x37, 0x96, 0x5d, 0xea, 0x93, 0xc2, 0x32, 0x54, 0xf7, 0xbf, 0x56, 0x9f, 0x2b, 0xeb, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_492_sharedsecret[] = { 0x10, 0x78, 0x03, 0x33, 0xb2, 0xa6, 0x17, 0x01, 0x36, 0x26, 0x5b, 0xb5, 0xeb, 0xc6, 0xc8, 0x18, 0x81, 0x7f, 0x2e, 0x48, 0xae, 0x37, 0x25, 0x28, 0xc8, 0xf3, 0x44, 0x33, 0xfd, 0xd6, 0x21, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_492 = { .name = "xdh_wei25519_492", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_492_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_492_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_492_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 493 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 493 for XDH, tcId is 494 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_493_peerpubkey[] = { 0x55, 0x7b, 0x82, 0x50, 0x12, 0xd9, 0x8f, 0x06, 0x5b, 0xb9, 0x5a, 0x2a, 0xb9, 0xb2, 0xd2, 0xd8, 0xb8, 0x3f, 0xd2, 0x03, 0x79, 0x12, 0x50, 0x8c, 0x26, 0x3f, 0x86, 0xd7, 0xe3, 0x6c, 0x4f, 0x24, }; static const unsigned char xdh_wei25519_493_privkey[] = { 0x60, 0x8c, 0x84, 0xd2, 0xb7, 0x6f, 0xcc, 0xda, 0x57, 0x9e, 0x97, 0x4d, 0xb3, 0xd3, 0xb2, 0xce, 0x39, 0xa6, 0xbc, 0x0d, 0xad, 0x44, 0x05, 0x99, 0xdb, 0x22, 0x41, 0x1b, 0x60, 0x46, 0x78, 0x49, }; static const unsigned char xdh_wei25519_493_sharedsecret[] = { 0x5c, 0xe8, 0x48, 0x42, 0xdb, 0xae, 0x8b, 0x79, 0x5b, 0x3d, 0x54, 0x53, 0x43, 0x55, 0x80, 0x45, 0x50, 0x8f, 0x27, 0x13, 0x83, 0xbf, 0xb3, 0xdd, 0x39, 0x43, 0xf4, 0x10, 0x13, 0x98, 0xc8, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_493 = { .name = "xdh_wei25519_493", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_493_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_493_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_493_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 494 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 494 for XDH, tcId is 495 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_494_peerpubkey[] = { 0xae, 0x98, 0x29, 0x6d, 0x4a, 0x2f, 0xbc, 0xbb, 0x40, 0xb4, 0x72, 0xf4, 0x06, 0x32, 0x31, 0x60, 0x8b, 0xb1, 0x46, 0x5c, 0x22, 0x6c, 0x8a, 0x4a, 0x2d, 0xff, 0x29, 0xaf, 0xd9, 0x15, 0x88, 0x2a, }; static const unsigned char xdh_wei25519_494_privkey[] = { 0x80, 0xf2, 0x33, 0x93, 0x6a, 0x88, 0x21, 0x93, 0x6d, 0x39, 0x11, 0x4c, 0x84, 0xd9, 0x29, 0xe7, 0x97, 0x60, 0xb2, 0x76, 0x80, 0x77, 0x9e, 0x50, 0x09, 0xe1, 0x70, 0x94, 0x10, 0xdd, 0x8e, 0x4f, }; static const unsigned char xdh_wei25519_494_sharedsecret[] = { 0x4f, 0x11, 0xaa, 0x0c, 0x31, 0x31, 0x95, 0xf9, 0x6f, 0x25, 0xca, 0xdc, 0xbf, 0x49, 0xf0, 0x6a, 0x93, 0x2d, 0x8b, 0x05, 0x18, 0x79, 0xea, 0x53, 0x7d, 0x1c, 0x6d, 0xfe, 0xe7, 0xf3, 0x6d, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_494 = { .name = "xdh_wei25519_494", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_494_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_494_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_494_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 495 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 495 for XDH, tcId is 496 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_495_peerpubkey[] = { 0x8b, 0x9d, 0x24, 0x98, 0x29, 0xfb, 0xe8, 0x13, 0x33, 0xd8, 0x50, 0x50, 0xda, 0x88, 0x99, 0x8f, 0x63, 0xfa, 0xc6, 0x65, 0x67, 0x9e, 0x27, 0xdb, 0xbe, 0x21, 0xb7, 0x45, 0xdd, 0x14, 0xe1, 0x45, }; static const unsigned char xdh_wei25519_495_privkey[] = { 0xc8, 0xd8, 0x0b, 0x1a, 0x34, 0xf2, 0x11, 0x94, 0xf0, 0x47, 0xa6, 0xf0, 0x32, 0x8b, 0xb9, 0x47, 0xe2, 0xe7, 0xaf, 0xf6, 0xa0, 0x43, 0x55, 0x3a, 0xa0, 0x7f, 0x2a, 0xbf, 0x99, 0xaa, 0xf0, 0x48, }; static const unsigned char xdh_wei25519_495_sharedsecret[] = { 0x1d, 0x61, 0x90, 0x70, 0xbf, 0x56, 0x26, 0x06, 0x4b, 0xe1, 0x00, 0x25, 0xe7, 0x4e, 0x33, 0x6c, 0x81, 0xef, 0x31, 0x66, 0xb7, 0x43, 0xf9, 0x9c, 0x75, 0x1f, 0xb9, 0x05, 0x87, 0xc3, 0x1d, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_495 = { .name = "xdh_wei25519_495", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_495_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_495_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_495_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 496 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 496 for XDH, tcId is 497 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_496_peerpubkey[] = { 0x61, 0x89, 0x60, 0x93, 0xe2, 0x69, 0x7c, 0x78, 0x23, 0x0a, 0xfd, 0xda, 0x12, 0x63, 0x9c, 0xbe, 0x43, 0x42, 0x82, 0x7b, 0x8d, 0x2b, 0x09, 0x32, 0x81, 0xf1, 0x48, 0xeb, 0x60, 0xb9, 0x03, 0x4b, }; static const unsigned char xdh_wei25519_496_privkey[] = { 0x90, 0x21, 0x47, 0x7b, 0x45, 0x23, 0x61, 0x58, 0x00, 0x59, 0x36, 0x4c, 0x6f, 0x94, 0xf4, 0x98, 0x1e, 0xe9, 0x4e, 0xa3, 0xf9, 0xb7, 0xd3, 0x74, 0x39, 0xbc, 0x82, 0xae, 0x45, 0x81, 0x6f, 0x4d, }; static const unsigned char xdh_wei25519_496_sharedsecret[] = { 0x53, 0x2e, 0x79, 0x78, 0x61, 0xdb, 0x56, 0xb9, 0xd5, 0xdb, 0x88, 0x25, 0xfb, 0x72, 0xf8, 0x62, 0x9c, 0x24, 0x22, 0xf8, 0xab, 0xea, 0x72, 0x1a, 0xd2, 0xd7, 0xb9, 0xe7, 0x7a, 0x95, 0xb5, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_496 = { .name = "xdh_wei25519_496", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_496_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_496_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_496_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 497 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 497 for XDH, tcId is 498 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_497_peerpubkey[] = { 0xcc, 0xc1, 0xdc, 0x18, 0x62, 0x29, 0xdb, 0xa9, 0xa9, 0x36, 0x0a, 0x0f, 0x7f, 0xf0, 0x02, 0x47, 0xa3, 0x73, 0x26, 0x25, 0xac, 0xaa, 0xcd, 0x18, 0xea, 0x13, 0xa9, 0xa8, 0xb4, 0x0f, 0xac, 0x4f, }; static const unsigned char xdh_wei25519_497_privkey[] = { 0x60, 0x79, 0xda, 0xe0, 0x4c, 0x40, 0xa5, 0x9e, 0xa4, 0xe0, 0xc8, 0xc1, 0x70, 0x92, 0xe4, 0xc8, 0x5e, 0xa9, 0x13, 0x3d, 0x14, 0x33, 0x07, 0x36, 0x34, 0x87, 0x83, 0x6d, 0xf4, 0xe3, 0x03, 0x49, }; static const unsigned char xdh_wei25519_497_sharedsecret[] = { 0x4f, 0x67, 0x8b, 0x64, 0xfd, 0x1f, 0x85, 0xcb, 0xbd, 0x5f, 0x7e, 0x7f, 0x3c, 0x8a, 0xc9, 0x5e, 0xc7, 0x50, 0x0e, 0x10, 0x2e, 0x90, 0x06, 0xd6, 0xd4, 0x2f, 0x48, 0xfb, 0x24, 0x73, 0xab, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_497 = { .name = "xdh_wei25519_497", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_497_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_497_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_497_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 498 for XDH, tcId is 499 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_498_peerpubkey[] = { 0x69, 0xe3, 0x68, 0xc0, 0xb7, 0xe7, 0x8e, 0xb9, 0xf3, 0xa5, 0x3b, 0xf4, 0x58, 0xf6, 0xe7, 0x9d, 0xc4, 0x88, 0x3b, 0xf9, 0x45, 0x8f, 0x04, 0xa8, 0xc1, 0x2c, 0x4d, 0xdd, 0x94, 0xd6, 0x21, 0x51, }; static const unsigned char xdh_wei25519_498_privkey[] = { 0x28, 0x1d, 0xb6, 0xa5, 0xac, 0x9a, 0x47, 0xd4, 0xa7, 0xb2, 0xb9, 0x1a, 0x87, 0xf6, 0x53, 0x6c, 0xe6, 0x2d, 0x4e, 0x51, 0x29, 0xb8, 0xd6, 0x47, 0xb9, 0x7f, 0x9c, 0x50, 0x40, 0x14, 0x89, 0x4c, }; static const unsigned char xdh_wei25519_498_sharedsecret[] = { 0xe0, 0x69, 0xfd, 0x06, 0x70, 0x2f, 0x10, 0xf3, 0x3a, 0xdb, 0x8c, 0xf0, 0x76, 0x68, 0x80, 0x63, 0x48, 0x65, 0xb5, 0x10, 0xe2, 0xda, 0x40, 0x92, 0x41, 0xfb, 0x5f, 0x17, 0x80, 0x50, 0x51, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_498 = { .name = "xdh_wei25519_498", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_498_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_498_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_498_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 499 for XDH, tcId is 500 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_499_peerpubkey[] = { 0xf2, 0x1f, 0x9b, 0xad, 0xd9, 0x8d, 0xd8, 0xa1, 0x03, 0xcc, 0x2a, 0xb5, 0x48, 0x4f, 0xac, 0x6c, 0x2b, 0xfd, 0xd2, 0x67, 0x1e, 0xe6, 0xe6, 0x74, 0x13, 0x4a, 0x86, 0xb8, 0x9c, 0xee, 0x91, 0x60, }; static const unsigned char xdh_wei25519_499_privkey[] = { 0xd8, 0x30, 0xf3, 0xc4, 0x78, 0x58, 0x29, 0xa0, 0xf9, 0x45, 0x85, 0x7e, 0x0e, 0x85, 0xe0, 0xae, 0x72, 0x37, 0x02, 0xb5, 0x77, 0x83, 0xb9, 0x33, 0xcd, 0x2a, 0x2a, 0xd0, 0x54, 0x84, 0xfe, 0x49, }; static const unsigned char xdh_wei25519_499_sharedsecret[] = { 0xfe, 0xe2, 0x18, 0xeb, 0x1f, 0x92, 0x86, 0x44, 0x86, 0xe8, 0x3c, 0x17, 0x31, 0xf0, 0x4b, 0xb8, 0xc7, 0xe6, 0xd7, 0x14, 0x3e, 0x39, 0x15, 0xbc, 0xbf, 0x80, 0xfe, 0x03, 0xff, 0x69, 0xdc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_499 = { .name = "xdh_wei25519_499", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_499_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_499_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_499_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 500 for XDH, tcId is 501 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_500_peerpubkey[] = { 0xe8, 0x53, 0x06, 0x2b, 0x2d, 0x6f, 0x38, 0xd0, 0x21, 0xd6, 0x45, 0x16, 0x3e, 0xa2, 0x08, 0xd0, 0xe1, 0x93, 0xa4, 0x79, 0xf1, 0x1f, 0x99, 0x97, 0x1b, 0x98, 0xe2, 0x11, 0x88, 0xfd, 0x0b, 0x2c, }; static const unsigned char xdh_wei25519_500_privkey[] = { 0x10, 0x23, 0x0b, 0xd0, 0x72, 0x1f, 0x4c, 0x8c, 0x4b, 0x92, 0x18, 0x81, 0xdd, 0x88, 0xc6, 0x03, 0xaf, 0x50, 0x1e, 0xe8, 0x0e, 0x21, 0x02, 0xf8, 0xac, 0xc3, 0x0c, 0xf8, 0xb2, 0xac, 0xd3, 0x49, }; static const unsigned char xdh_wei25519_500_sharedsecret[] = { 0x64, 0xbd, 0xfa, 0x02, 0x07, 0xa1, 0x74, 0xca, 0x17, 0xee, 0xba, 0x8d, 0xf7, 0x4d, 0x79, 0xb2, 0x5f, 0x54, 0x51, 0x0e, 0x61, 0x74, 0x92, 0x30, 0x34, 0xa4, 0xd6, 0xee, 0x0c, 0x16, 0x7e, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_500 = { .name = "xdh_wei25519_500", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_500_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_500_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_500_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 501 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 501 for XDH, tcId is 502 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_501_peerpubkey[] = { 0x36, 0x2e, 0xb9, 0x2d, 0xab, 0x9f, 0xb2, 0x9f, 0x7e, 0xd0, 0xe0, 0x38, 0x43, 0xdc, 0xc1, 0x57, 0x97, 0x92, 0x8c, 0x2b, 0x4e, 0x51, 0xec, 0x26, 0x02, 0x04, 0x17, 0x9c, 0x1c, 0x12, 0x94, 0x5f, }; static const unsigned char xdh_wei25519_501_privkey[] = { 0xf0, 0xa3, 0x4d, 0x6d, 0x76, 0x89, 0x6e, 0x17, 0xcb, 0x8f, 0x66, 0xfe, 0xda, 0x23, 0x11, 0x5f, 0xfb, 0x96, 0xf2, 0x46, 0xb8, 0x23, 0xbb, 0x63, 0xde, 0xc0, 0x83, 0x35, 0x78, 0x7d, 0xe7, 0x4c, }; static const unsigned char xdh_wei25519_501_sharedsecret[] = { 0xd7, 0xf4, 0x58, 0x3e, 0xe4, 0xfe, 0x86, 0xaf, 0x3a, 0x3f, 0x1d, 0xfc, 0xb2, 0x95, 0xba, 0x3a, 0x3e, 0x37, 0xbc, 0xed, 0x7b, 0x9c, 0x6f, 0x00, 0x0a, 0x95, 0x33, 0x65, 0x30, 0x31, 0x89, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_501 = { .name = "xdh_wei25519_501", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_501_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_501_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_501_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 502 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 502 for XDH, tcId is 503 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_502_peerpubkey[] = { 0xff, 0x54, 0x3f, 0x1e, 0x81, 0x99, 0x6e, 0x88, 0x63, 0x1f, 0x03, 0x0c, 0xeb, 0xa7, 0xe6, 0x03, 0xb1, 0x30, 0x33, 0xef, 0xd2, 0x05, 0xe6, 0x8b, 0xd3, 0x6b, 0x28, 0x46, 0x81, 0x34, 0xaa, 0x73, }; static const unsigned char xdh_wei25519_502_privkey[] = { 0x90, 0x73, 0xc1, 0xd0, 0xa1, 0x73, 0xc7, 0xff, 0x02, 0xdc, 0x96, 0x6a, 0x16, 0x59, 0x93, 0xd9, 0xc4, 0xc9, 0x35, 0x75, 0x14, 0xf7, 0xa6, 0xbb, 0x7a, 0xaa, 0x4b, 0x08, 0x27, 0x71, 0x89, 0x48, }; static const unsigned char xdh_wei25519_502_sharedsecret[] = { 0xc1, 0xb5, 0xe5, 0xf4, 0x40, 0x1c, 0x98, 0xfa, 0x14, 0xeb, 0xa8, 0xaa, 0xfa, 0xe3, 0x0a, 0x64, 0x1b, 0xfd, 0x8f, 0xb1, 0x32, 0xbe, 0x03, 0x41, 0x3f, 0x3b, 0xf2, 0x92, 0x90, 0xd4, 0x9e, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_502 = { .name = "xdh_wei25519_502", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_502_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_502_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_502_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 503 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 503 for XDH, tcId is 504 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_503_peerpubkey[] = { 0x90, 0xef, 0x70, 0x84, 0x4e, 0xad, 0x16, 0x13, 0xf6, 0x9d, 0xf7, 0xd7, 0x8c, 0x05, 0x78, 0x13, 0xf8, 0x66, 0xc0, 0xd9, 0x5e, 0x6d, 0x22, 0xca, 0xee, 0x4a, 0x01, 0x2b, 0x9c, 0x1c, 0x4b, 0x33, }; static const unsigned char xdh_wei25519_503_privkey[] = { 0xb0, 0xc1, 0x82, 0x25, 0x66, 0xe0, 0x16, 0xc1, 0x2a, 0xe3, 0x5e, 0xc0, 0x35, 0xed, 0xd0, 0x9a, 0xf3, 0xcb, 0x7a, 0x48, 0xf5, 0x5c, 0x90, 0x28, 0xe0, 0x5e, 0x11, 0x78, 0xa8, 0xc3, 0x82, 0x4e, }; static const unsigned char xdh_wei25519_503_sharedsecret[] = { 0x93, 0x69, 0xeb, 0xb3, 0xd2, 0xb7, 0x44, 0x34, 0x1c, 0xba, 0x77, 0x30, 0x27, 0x19, 0xa4, 0xb2, 0xd6, 0x3a, 0xff, 0x61, 0x28, 0x72, 0xf8, 0x6d, 0x98, 0x77, 0xa7, 0x6b, 0xc9, 0x19, 0xca, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_503 = { .name = "xdh_wei25519_503", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_503_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_503_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_503_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 504 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 504 for XDH, tcId is 505 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_504_peerpubkey[] = { 0x88, 0xc1, 0xae, 0x57, 0x5a, 0xd0, 0x73, 0xdd, 0xa6, 0x6c, 0x6e, 0xac, 0xb7, 0xb7, 0xf4, 0x36, 0xe1, 0xf8, 0xad, 0x72, 0xa0, 0xdb, 0x5c, 0x04, 0xe5, 0x66, 0x0b, 0x7b, 0x71, 0x9e, 0x4c, 0x4b, }; static const unsigned char xdh_wei25519_504_privkey[] = { 0xe0, 0x6f, 0xe6, 0x4e, 0x21, 0x17, 0x79, 0x6f, 0x99, 0x7b, 0xbc, 0xd3, 0xbc, 0xad, 0x30, 0x67, 0xcf, 0x12, 0x91, 0x64, 0x0a, 0x3a, 0x64, 0x3f, 0xb3, 0x59, 0x80, 0x9a, 0x40, 0x16, 0x83, 0x4d, }; static const unsigned char xdh_wei25519_504_sharedsecret[] = { 0x33, 0x53, 0x94, 0xbe, 0x9c, 0x15, 0x49, 0x01, 0xc0, 0xb4, 0x06, 0x33, 0x00, 0x00, 0x18, 0x04, 0xb1, 0xcd, 0x01, 0xb2, 0x7f, 0xa5, 0x62, 0xe4, 0x4f, 0x33, 0x02, 0x16, 0x88, 0x37, 0x16, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_504 = { .name = "xdh_wei25519_504", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_504_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_504_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_504_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 505 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 505 for XDH, tcId is 506 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_505_peerpubkey[] = { 0xdc, 0xff, 0xc4, 0xc1, 0xe1, 0xfb, 0xa5, 0xfd, 0xa9, 0xd5, 0xc9, 0x84, 0x21, 0xd9, 0x9c, 0x25, 0x7a, 0xfa, 0x90, 0x92, 0x1b, 0xc2, 0x12, 0xa0, 0x46, 0xd9, 0x0f, 0x66, 0x83, 0xe8, 0xa4, 0x67, }; static const unsigned char xdh_wei25519_505_privkey[] = { 0x70, 0x7e, 0xe8, 0x1f, 0x11, 0x3a, 0x24, 0x4c, 0x9d, 0x87, 0x60, 0x8b, 0x12, 0x15, 0x8c, 0x50, 0xf9, 0xac, 0x1f, 0x2c, 0x89, 0x48, 0xd1, 0x70, 0xad, 0x16, 0xab, 0x0a, 0xd8, 0x66, 0xd7, 0x4b, }; static const unsigned char xdh_wei25519_505_sharedsecret[] = { 0x7e, 0xcd, 0xd5, 0x4c, 0x5e, 0x15, 0xf7, 0xb4, 0x06, 0x1b, 0xe2, 0xc3, 0x0b, 0x5a, 0x48, 0x84, 0xa0, 0x25, 0x65, 0x81, 0xf8, 0x7d, 0xf6, 0x0d, 0x57, 0x9a, 0x33, 0x45, 0x65, 0x3e, 0xb6, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_505 = { .name = "xdh_wei25519_505", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_505_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_505_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_505_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 506 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 506 for XDH, tcId is 507 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_506_peerpubkey[] = { 0x6c, 0x00, 0x44, 0xcd, 0x10, 0x57, 0x8c, 0x5a, 0xff, 0x1f, 0xf4, 0x91, 0x7b, 0x04, 0x1b, 0x76, 0xc9, 0xa9, 0xae, 0x23, 0x66, 0x4e, 0xb8, 0xcf, 0x97, 0x8b, 0xd7, 0xaa, 0x19, 0x2c, 0xf2, 0x49, }; static const unsigned char xdh_wei25519_506_privkey[] = { 0x70, 0x89, 0x65, 0x4b, 0xaa, 0xcb, 0xb6, 0x5b, 0xd0, 0x0c, 0xd8, 0xcb, 0x9d, 0xe4, 0x68, 0x0e, 0x74, 0x80, 0x75, 0xe8, 0x84, 0x2c, 0xa6, 0x9d, 0x44, 0x8f, 0xb5, 0x0f, 0xea, 0x85, 0xe7, 0x4e, }; static const unsigned char xdh_wei25519_506_sharedsecret[] = { 0x0d, 0x8c, 0x21, 0xfa, 0x80, 0x0e, 0xe6, 0x3c, 0xe5, 0xe4, 0x73, 0xd4, 0xc2, 0x97, 0x54, 0x95, 0x06, 0x2d, 0x8a, 0xfa, 0x65, 0x50, 0x91, 0x12, 0x2c, 0xb4, 0x17, 0x99, 0xd3, 0x74, 0x59, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_506 = { .name = "xdh_wei25519_506", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_506_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_506_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_506_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 507 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 507 for XDH, tcId is 508 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_507_peerpubkey[] = { 0xd9, 0x08, 0x9d, 0xe9, 0x02, 0xe1, 0x43, 0xdc, 0xd9, 0x10, 0x7e, 0x5a, 0x33, 0x93, 0xa3, 0xf7, 0xfe, 0x05, 0xd9, 0x26, 0xc3, 0x57, 0xb4, 0x7e, 0x30, 0x7a, 0x23, 0x6c, 0xb5, 0x90, 0xfd, 0x64, }; static const unsigned char xdh_wei25519_507_privkey[] = { 0x80, 0x89, 0x78, 0x4c, 0x52, 0xcd, 0x67, 0xe4, 0x53, 0x6e, 0x56, 0x82, 0x18, 0xc7, 0xb7, 0x03, 0x3b, 0x28, 0x41, 0x3f, 0x94, 0x2f, 0xca, 0x24, 0xed, 0x69, 0xe4, 0x34, 0x96, 0xef, 0xa1, 0x4b, }; static const unsigned char xdh_wei25519_507_sharedsecret[] = { 0xdb, 0x6f, 0xec, 0x44, 0xbf, 0x11, 0x83, 0x16, 0xa6, 0xbd, 0xfb, 0xae, 0x9a, 0xf4, 0x47, 0xba, 0xed, 0xe4, 0xd8, 0x2d, 0xaa, 0x16, 0xbe, 0xd5, 0x96, 0xea, 0x6f, 0x05, 0xd4, 0xa5, 0x14, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_507 = { .name = "xdh_wei25519_507", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_507_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_507_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_507_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 508 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 508 for XDH, tcId is 509 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_508_peerpubkey[] = { 0x8c, 0x4a, 0x26, 0xaa, 0x31, 0x9c, 0x2c, 0xc4, 0xa4, 0x15, 0x8c, 0x2b, 0xc6, 0x9a, 0x0d, 0x5b, 0x34, 0x0b, 0x60, 0x62, 0x8a, 0x14, 0xcf, 0x31, 0xbb, 0x0a, 0xe5, 0xdd, 0xc3, 0x8a, 0xe8, 0x66, }; static const unsigned char xdh_wei25519_508_privkey[] = { 0x00, 0xe7, 0x3e, 0x4e, 0x01, 0x31, 0x48, 0xb9, 0xf0, 0x52, 0x73, 0xba, 0xd6, 0x26, 0xbb, 0x12, 0x6a, 0x40, 0xec, 0x45, 0x58, 0xf5, 0x42, 0x50, 0x96, 0xb4, 0x89, 0x47, 0xe0, 0xa9, 0xde, 0x4a, }; static const unsigned char xdh_wei25519_508_sharedsecret[] = { 0xec, 0xc1, 0x20, 0x4b, 0xc7, 0x53, 0xc4, 0xce, 0xc4, 0xc9, 0x05, 0x9f, 0xd7, 0xb5, 0x04, 0x94, 0x4e, 0xbf, 0x99, 0x5a, 0xb1, 0xb1, 0xd4, 0x9f, 0x0b, 0x3b, 0x32, 0x53, 0x53, 0xbe, 0x3a, 0x15, }; static const wycheproof_xdh_test xdh_wei25519_508 = { .name = "xdh_wei25519_508", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_508_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_508_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_508_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 509 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 509 for XDH, tcId is 510 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_509_peerpubkey[] = { 0xce, 0x72, 0x95, 0xd1, 0x22, 0x7c, 0x90, 0x62, 0xaa, 0xb9, 0xcf, 0x02, 0xfc, 0x56, 0x71, 0xfb, 0x81, 0x63, 0x2e, 0x72, 0x53, 0x67, 0xf1, 0x31, 0xd4, 0x12, 0x28, 0x24, 0xa6, 0x13, 0x2d, 0x68, }; static const unsigned char xdh_wei25519_509_privkey[] = { 0x78, 0xed, 0x4c, 0x9b, 0xf9, 0xf4, 0x4d, 0xb8, 0xd9, 0x33, 0x88, 0x98, 0x51, 0x91, 0xec, 0xf5, 0x92, 0x26, 0xb9, 0xc1, 0x20, 0x5f, 0xe7, 0xe7, 0x62, 0xc3, 0x27, 0x58, 0x1c, 0x75, 0x88, 0x4e, }; static const unsigned char xdh_wei25519_509_sharedsecret[] = { 0x37, 0x40, 0xde, 0x29, 0x7f, 0xf0, 0x12, 0x20, 0x67, 0x95, 0x1e, 0x89, 0x85, 0x24, 0x71, 0x23, 0x44, 0x0e, 0x0f, 0x27, 0x17, 0x1d, 0xa9, 0x9e, 0x26, 0x3d, 0x5b, 0x44, 0x50, 0xf5, 0x9f, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_509 = { .name = "xdh_wei25519_509", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_509_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_509_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_509_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 510 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 510 for XDH, tcId is 511 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_510_peerpubkey[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const unsigned char xdh_wei25519_510_privkey[] = { 0xa0, 0x23, 0xcd, 0xd0, 0x83, 0xef, 0x5b, 0xb8, 0x2f, 0x10, 0xd6, 0x2e, 0x59, 0xe1, 0x5a, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, }; static const unsigned char xdh_wei25519_510_sharedsecret[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_510 = { .name = "xdh_wei25519_510", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_510_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_510_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_510_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "private key == -1 (mod order), tcId is 511 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 511 for XDH, tcId is 512 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_511_peerpubkey[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const unsigned char xdh_wei25519_511_privkey[] = { 0x58, 0x08, 0x3d, 0xd2, 0x61, 0xad, 0x91, 0xef, 0xf9, 0x52, 0x32, 0x2e, 0xc8, 0x24, 0xc6, 0x82, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_511_sharedsecret[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_511 = { .name = "xdh_wei25519_511", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_511_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_511_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_511_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 512 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 512 for XDH, tcId is 513 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_512_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_512_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_512_sharedsecret[] = { 0x63, 0xef, 0x7d, 0x1c, 0x58, 0x64, 0x76, 0xec, 0x78, 0xbb, 0x7f, 0x74, 0x7e, 0x32, 0x1e, 0x01, 0x10, 0x21, 0x66, 0xbf, 0x96, 0x7a, 0x9e, 0xa9, 0xba, 0x97, 0x41, 0xf4, 0x9d, 0x43, 0x95, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_512 = { .name = "xdh_wei25519_512", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_512_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_512_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_512_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 513 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 513 for XDH, tcId is 514 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_513_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_513_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_513_sharedsecret[] = { 0x8b, 0x98, 0xef, 0x4d, 0x6b, 0xf3, 0x0d, 0xf7, 0xf8, 0x8e, 0x58, 0xd5, 0x15, 0x05, 0xd3, 0x7e, 0xd6, 0x84, 0x5a, 0x96, 0x9f, 0xe5, 0x98, 0x74, 0x7c, 0x03, 0x3d, 0xcd, 0x08, 0x01, 0x40, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_513 = { .name = "xdh_wei25519_513", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_513_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_513_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_513_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 514 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 514 for XDH, tcId is 515 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_514_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_514_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_514_sharedsecret[] = { 0xcf, 0xa8, 0x3e, 0x09, 0x88, 0x29, 0xfe, 0x82, 0xfd, 0x4c, 0x14, 0x35, 0x5f, 0x70, 0x82, 0x90, 0x15, 0x21, 0x99, 0x42, 0xc0, 0x1e, 0x2b, 0x85, 0xbd, 0xd9, 0xac, 0x48, 0x89, 0xec, 0x29, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_514 = { .name = "xdh_wei25519_514", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_514_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_514_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_514_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 515 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 515 for XDH, tcId is 516 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_515_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_515_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_515_sharedsecret[] = { 0x47, 0x82, 0x03, 0x6d, 0x6b, 0x13, 0x6c, 0xa4, 0x4a, 0x2f, 0xd7, 0x67, 0x4d, 0x8a, 0xfb, 0x01, 0x69, 0x94, 0x32, 0x30, 0xac, 0x8e, 0xab, 0x51, 0x60, 0xa2, 0x12, 0x37, 0x6c, 0x06, 0xd7, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_515 = { .name = "xdh_wei25519_515", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_515_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_515_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_515_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 516 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 516 for XDH, tcId is 517 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_516_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_516_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_516_sharedsecret[] = { 0x65, 0xfc, 0x1e, 0x74, 0x53, 0xa3, 0xf8, 0xc7, 0xeb, 0xcd, 0x57, 0x7a, 0xde, 0x4b, 0x8e, 0xfe, 0x10, 0x35, 0xef, 0xc1, 0x81, 0xab, 0x3b, 0xdb, 0x2f, 0xcc, 0x74, 0x84, 0xcb, 0xcf, 0x1e, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_516 = { .name = "xdh_wei25519_516", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_516_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_516_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_516_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 517 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 517 for XDH, tcId is 518 in file x25519_asn_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_517_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_517_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_517_sharedsecret[] = { 0xe3, 0xc6, 0x49, 0xbe, 0xae, 0x7c, 0xc4, 0xa0, 0x69, 0x8d, 0x51, 0x9a, 0x0a, 0x61, 0x93, 0x2e, 0xe5, 0x49, 0x3c, 0xbb, 0x59, 0x0d, 0xbe, 0x14, 0xdb, 0x02, 0x74, 0xcc, 0x86, 0x11, 0xf9, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_517 = { .name = "xdh_wei25519_517", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_517_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_517_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_517_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 518 in file x25519_asn_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 518 for XDH, tcId is 1 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_518_peerpubkey[] = { 0x50, 0x4a, 0x36, 0x99, 0x9f, 0x48, 0x9c, 0xd2, 0xfd, 0xbc, 0x08, 0xba, 0xff, 0x3d, 0x88, 0xfa, 0x00, 0x56, 0x9b, 0xa9, 0x86, 0xcb, 0xa2, 0x25, 0x48, 0xff, 0xde, 0x80, 0xf9, 0x80, 0x68, 0x29, }; static const unsigned char xdh_wei25519_518_ourpubkey[] = { 0x5f, 0x64, 0xb4, 0x1c, 0xce, 0x8a, 0x6b, 0x3d, 0x6a, 0x38, 0x76, 0x30, 0x88, 0xf6, 0x15, 0xa4, 0x97, 0x7d, 0x42, 0x22, 0x88, 0xae, 0x42, 0xb4, 0x9a, 0xb3, 0xa5, 0x7e, 0x2f, 0xcd, 0x6f, 0x6d, }; static const unsigned char xdh_wei25519_518_privkey[] = { 0xc8, 0xa9, 0xd5, 0xa9, 0x10, 0x91, 0xad, 0x85, 0x1c, 0x66, 0x8b, 0x07, 0x36, 0xc1, 0xc9, 0xa0, 0x29, 0x36, 0xc0, 0xd3, 0xad, 0x62, 0x67, 0x08, 0x58, 0x08, 0x80, 0x47, 0xba, 0x05, 0x74, 0x75, }; static const unsigned char xdh_wei25519_518_sharedsecret[] = { 0x43, 0x6a, 0x2c, 0x04, 0x0c, 0xf4, 0x5f, 0xea, 0x9b, 0x29, 0xa0, 0xcb, 0x81, 0xb1, 0xf4, 0x14, 0x58, 0xf8, 0x63, 0xd0, 0xd6, 0x1b, 0x45, 0x3d, 0x0a, 0x98, 0x27, 0x20, 0xd6, 0xd6, 0x13, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_518 = { .name = "xdh_wei25519_518", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_518_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_518_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_518_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_518_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 519 for XDH, tcId is 2 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_519_peerpubkey[] = { 0x63, 0xaa, 0x40, 0xc6, 0xe3, 0x83, 0x46, 0xc5, 0xca, 0xf2, 0x3a, 0x6d, 0xf0, 0xa5, 0xe6, 0xc8, 0x08, 0x89, 0xa0, 0x86, 0x47, 0xe5, 0x51, 0xb3, 0x56, 0x34, 0x49, 0xbe, 0xfc, 0xfc, 0x97, 0x33, }; static const unsigned char xdh_wei25519_519_ourpubkey[] = { 0xa9, 0x03, 0x1f, 0x9b, 0x6d, 0xa2, 0x7e, 0x02, 0x0e, 0x57, 0xe2, 0x04, 0x29, 0xf2, 0xe2, 0xb5, 0xb8, 0x34, 0x8c, 0x49, 0x28, 0x21, 0x06, 0xc2, 0xa5, 0xb2, 0x36, 0x5a, 0x72, 0x3f, 0x0d, 0x20, }; static const unsigned char xdh_wei25519_519_privkey[] = { 0xd8, 0x5d, 0x8c, 0x06, 0x1a, 0x50, 0x80, 0x4a, 0xc4, 0x88, 0xad, 0x77, 0x4a, 0xc7, 0x16, 0xc3, 0xf5, 0xba, 0x71, 0x4b, 0x27, 0x12, 0xe0, 0x48, 0x49, 0x13, 0x79, 0xa5, 0x00, 0x21, 0x19, 0x58, }; static const unsigned char xdh_wei25519_519_sharedsecret[] = { 0x27, 0x9d, 0xf6, 0x7a, 0x7c, 0x46, 0x11, 0xdb, 0x47, 0x08, 0xa0, 0xe8, 0x28, 0x2b, 0x19, 0x5e, 0x5a, 0xc0, 0xed, 0x6f, 0x4b, 0x2f, 0x29, 0x2c, 0x6f, 0xbd, 0x0a, 0xca, 0xc3, 0x0d, 0x13, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_519 = { .name = "xdh_wei25519_519", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_519_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_519_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_519_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_519_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 2 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 520 for XDH, tcId is 3 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_520_peerpubkey[] = { 0x0f, 0x83, 0xc3, 0x6f, 0xde, 0xd9, 0xd3, 0x2f, 0xad, 0xf4, 0xef, 0xa3, 0xae, 0x93, 0xa9, 0x0b, 0xb5, 0xcf, 0xa6, 0x68, 0x93, 0xbc, 0x41, 0x2c, 0x43, 0xfa, 0x72, 0x87, 0xdb, 0xb9, 0x97, 0x79, }; static const unsigned char xdh_wei25519_520_ourpubkey[] = { 0xfe, 0xcf, 0x2a, 0x1c, 0xf1, 0x11, 0xc9, 0x1c, 0xa6, 0x3e, 0xa3, 0x40, 0x4e, 0x44, 0x1b, 0xaa, 0x40, 0x7b, 0xfa, 0x3a, 0x6e, 0x75, 0x2f, 0xb7, 0xd2, 0x0f, 0x95, 0x46, 0x69, 0x0d, 0xd3, 0x43, }; static const unsigned char xdh_wei25519_520_privkey[] = { 0xc8, 0xb4, 0x5b, 0xfd, 0x32, 0xe5, 0x53, 0x25, 0xd9, 0xfd, 0x64, 0x8c, 0xb3, 0x02, 0x84, 0x80, 0x39, 0x00, 0x0b, 0x39, 0x0e, 0x44, 0xd5, 0x21, 0xe5, 0x8a, 0xab, 0x3b, 0x29, 0xa6, 0x96, 0x4b, }; static const unsigned char xdh_wei25519_520_sharedsecret[] = { 0x4b, 0xc7, 0xe0, 0x1e, 0x7d, 0x83, 0xd6, 0xcf, 0x67, 0x63, 0x2b, 0xf9, 0x00, 0x33, 0x48, 0x7a, 0x5f, 0xc2, 0x9e, 0xba, 0x53, 0x28, 0x89, 0x0e, 0xa7, 0xb1, 0x02, 0x6d, 0x23, 0xb9, 0xa4, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_520 = { .name = "xdh_wei25519_520", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_520_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_520_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_520_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_520_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 3 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 521 for XDH, tcId is 4 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_521_peerpubkey[] = { 0x0b, 0x82, 0x11, 0xa2, 0xb6, 0x04, 0x90, 0x97, 0xf6, 0x87, 0x1c, 0x6c, 0x05, 0x2d, 0x3c, 0x5f, 0xc1, 0xba, 0x17, 0xda, 0x9e, 0x32, 0xae, 0x45, 0x84, 0x03, 0xb0, 0x5b, 0xb2, 0x83, 0x09, 0x2a, }; static const unsigned char xdh_wei25519_521_ourpubkey[] = { 0xce, 0x1e, 0xd4, 0xd4, 0x4a, 0x09, 0x15, 0x1c, 0xc7, 0x34, 0x3e, 0xd7, 0xfa, 0x4c, 0xae, 0x6d, 0x12, 0x79, 0x0f, 0x95, 0xcc, 0xd6, 0x00, 0x02, 0x68, 0xa7, 0x20, 0xa0, 0xca, 0x62, 0xad, 0x47, }; static const unsigned char xdh_wei25519_521_privkey[] = { 0xf8, 0x76, 0xe3, 0x4b, 0xcb, 0xe1, 0xf4, 0x7f, 0xbc, 0x0f, 0xdd, 0xfd, 0x7c, 0x1e, 0x1a, 0xa5, 0x3d, 0x57, 0xbf, 0xe0, 0xf6, 0x6d, 0x24, 0x30, 0x67, 0xb4, 0x24, 0xbb, 0x62, 0x10, 0xbe, 0x51, }; static const unsigned char xdh_wei25519_521_sharedsecret[] = { 0x11, 0x9d, 0x37, 0xed, 0x4b, 0x10, 0x9c, 0xbd, 0x64, 0x18, 0xb1, 0xf2, 0x8d, 0xea, 0x83, 0xc8, 0x36, 0xc8, 0x44, 0x71, 0x5c, 0xdf, 0x98, 0xa3, 0xa8, 0xc3, 0x62, 0x19, 0x1d, 0xeb, 0xd5, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_521 = { .name = "xdh_wei25519_521", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_521_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_521_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_521_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_521_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 4 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 522 for XDH, tcId is 5 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_522_peerpubkey[] = { 0x34, 0x3a, 0xc2, 0x0a, 0x3b, 0x9c, 0x6a, 0x27, 0xb1, 0x00, 0x81, 0x76, 0x50, 0x9a, 0xd3, 0x07, 0x35, 0x85, 0x6e, 0xc1, 0xc8, 0xd8, 0xfc, 0xae, 0x13, 0x91, 0x2d, 0x08, 0xd1, 0x52, 0xf4, 0x6c, }; static const unsigned char xdh_wei25519_522_ourpubkey[] = { 0xb1, 0x01, 0x34, 0x4c, 0x1a, 0x5b, 0x07, 0x59, 0x61, 0x12, 0xc2, 0x0d, 0xf0, 0x59, 0x4b, 0x3f, 0xea, 0x43, 0x14, 0x4b, 0x6f, 0xca, 0xa7, 0xce, 0x92, 0xba, 0x0f, 0x9b, 0x40, 0x32, 0xcf, 0x59, }; static const unsigned char xdh_wei25519_522_privkey[] = { 0x00, 0x6a, 0xc1, 0xf3, 0xa6, 0x53, 0xa4, 0xcd, 0xb1, 0xd3, 0x7b, 0xba, 0x94, 0x73, 0x8f, 0x8b, 0x95, 0x7a, 0x57, 0xbe, 0xb2, 0x4d, 0x64, 0x6e, 0x99, 0x4d, 0xc2, 0x9a, 0x27, 0x6a, 0xad, 0x45, }; static const unsigned char xdh_wei25519_522_sharedsecret[] = { 0xcc, 0x48, 0x73, 0xae, 0xd3, 0xfc, 0xee, 0x4b, 0x3a, 0xae, 0xa7, 0xf0, 0xd2, 0x07, 0x16, 0xb4, 0x27, 0x63, 0x59, 0x08, 0x1f, 0x63, 0x4b, 0x7b, 0xea, 0x4b, 0x70, 0x5b, 0xfc, 0x8a, 0x4d, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_522 = { .name = "xdh_wei25519_522", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_522_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_522_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_522_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_522_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 5 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 523 for XDH, tcId is 6 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_523_peerpubkey[] = { 0xfa, 0x69, 0x5f, 0xc7, 0xbe, 0x8d, 0x1b, 0xe5, 0xbf, 0x70, 0x48, 0x98, 0xf3, 0x88, 0xc4, 0x52, 0xba, 0xfd, 0xd3, 0xb8, 0xea, 0xe8, 0x05, 0xf8, 0x68, 0x1a, 0x8d, 0x15, 0xc2, 0xd4, 0xe1, 0x42, }; static const unsigned char xdh_wei25519_523_ourpubkey[] = { 0x7f, 0x3c, 0x14, 0xd5, 0xe4, 0x1f, 0x0a, 0x30, 0xe7, 0x1b, 0xd6, 0xa3, 0xa0, 0x8c, 0x82, 0x6d, 0x41, 0x2a, 0x4e, 0x52, 0x1e, 0x33, 0x6c, 0x4d, 0xe2, 0xae, 0xa7, 0xb9, 0x96, 0x4b, 0x5b, 0x25, }; static const unsigned char xdh_wei25519_523_privkey[] = { 0x08, 0xda, 0x77, 0xb2, 0x6d, 0x06, 0xdf, 0xf9, 0xd9, 0xf7, 0xfd, 0x4c, 0x5b, 0x37, 0x69, 0xf8, 0xcd, 0xd5, 0xb3, 0x05, 0x16, 0xa5, 0xab, 0x80, 0x6b, 0xe3, 0x24, 0xff, 0x3e, 0xb6, 0x9e, 0x60, }; static const unsigned char xdh_wei25519_523_sharedsecret[] = { 0xb6, 0xf8, 0xe2, 0xfc, 0xb1, 0xaf, 0xfc, 0x79, 0xe2, 0xff, 0x79, 0x83, 0x19, 0xb2, 0x70, 0x11, 0x39, 0xb9, 0x5a, 0xd6, 0xdd, 0x07, 0xf0, 0x5c, 0xba, 0xc7, 0x8b, 0xd8, 0x3e, 0xdf, 0xd9, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_523 = { .name = "xdh_wei25519_523", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_523_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_523_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_523_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_523_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 6 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 524 for XDH, tcId is 7 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_524_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_524_ourpubkey[] = { 0xc3, 0x53, 0xf0, 0x8c, 0x79, 0xfd, 0x28, 0x9f, 0xbd, 0x89, 0x2e, 0x99, 0xf0, 0x59, 0xee, 0x36, 0x6d, 0x17, 0x65, 0x35, 0xee, 0xc9, 0xcc, 0x1d, 0x4c, 0x84, 0x6c, 0x04, 0xc4, 0x6d, 0x44, 0x20, }; static const unsigned char xdh_wei25519_524_privkey[] = { 0xd0, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0x5f, }; static const unsigned char xdh_wei25519_524_sharedsecret[] = { 0xb8, 0x7a, 0x17, 0x22, 0xcc, 0x6c, 0x1e, 0x2f, 0xee, 0xcb, 0x54, 0xe9, 0x7a, 0xbd, 0x5a, 0x22, 0xac, 0xc2, 0x76, 0x16, 0xf7, 0x8f, 0x6e, 0x31, 0x5f, 0xd2, 0xb7, 0x3d, 0x9f, 0x22, 0x1e, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_524 = { .name = "xdh_wei25519_524", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_524_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_524_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_524_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_524_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 7 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 525 for XDH, tcId is 8 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_525_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_525_ourpubkey[] = { 0xb3, 0x90, 0x20, 0x34, 0xae, 0x31, 0xd4, 0x55, 0x99, 0x2a, 0x49, 0xd5, 0x7b, 0x98, 0x5c, 0xf1, 0x08, 0x60, 0x47, 0x18, 0x91, 0xb5, 0xc4, 0x07, 0x35, 0x90, 0xd8, 0x0e, 0x77, 0x35, 0x58, 0x00, }; static const unsigned char xdh_wei25519_525_privkey[] = { 0xe0, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0x6a, }; static const unsigned char xdh_wei25519_525_sharedsecret[] = { 0xa2, 0x9d, 0x8d, 0xad, 0x28, 0xd5, 0x90, 0xcd, 0x30, 0x17, 0xaa, 0x97, 0xa4, 0x76, 0x1f, 0x85, 0x1b, 0xf1, 0xd3, 0x67, 0x2b, 0x04, 0x2a, 0x42, 0x56, 0xa4, 0x58, 0x81, 0xe2, 0xad, 0x90, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_525 = { .name = "xdh_wei25519_525", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_525_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_525_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_525_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_525_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 8 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 526 for XDH, tcId is 9 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_526_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_526_ourpubkey[] = { 0x34, 0x99, 0x43, 0x82, 0x30, 0x80, 0xde, 0x1b, 0xc9, 0x95, 0xf7, 0x8f, 0x28, 0x52, 0x31, 0x75, 0xe2, 0xc5, 0x31, 0xbc, 0xec, 0x89, 0xda, 0x52, 0x2c, 0x46, 0x9b, 0xe7, 0x26, 0x31, 0xd0, 0x79, }; static const unsigned char xdh_wei25519_526_privkey[] = { 0xe0, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0x6f, }; static const unsigned char xdh_wei25519_526_sharedsecret[] = { 0xe7, 0x03, 0xbc, 0x8a, 0xa9, 0x4b, 0x7d, 0x87, 0xba, 0x34, 0xe2, 0x67, 0x83, 0x53, 0xd1, 0x2c, 0xda, 0xaa, 0x1a, 0x97, 0xb5, 0xca, 0x3e, 0x1b, 0x8c, 0x06, 0x0c, 0x46, 0x36, 0x08, 0x7f, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_526 = { .name = "xdh_wei25519_526", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_526_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_526_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_526_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_526_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 9 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 527 for XDH, tcId is 10 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_527_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_527_ourpubkey[] = { 0xee, 0xce, 0x54, 0xf0, 0xca, 0x7a, 0x50, 0xe8, 0xc8, 0xce, 0x2c, 0x97, 0xd1, 0x01, 0xd6, 0xb7, 0xaf, 0x1a, 0x92, 0x43, 0x91, 0x9b, 0x0c, 0x67, 0x17, 0x7a, 0x76, 0xae, 0x73, 0x51, 0x5f, 0x54, }; static const unsigned char xdh_wei25519_527_privkey[] = { 0xa8, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0x41, }; static const unsigned char xdh_wei25519_527_sharedsecret[] = { 0xff, 0x5c, 0xf0, 0x41, 0xe9, 0x24, 0xdb, 0xe1, 0xa6, 0x4a, 0xc9, 0xbd, 0xba, 0x96, 0xbd, 0xcd, 0xfa, 0xf7, 0xd5, 0x9d, 0x91, 0xc7, 0xe3, 0x3e, 0x76, 0xed, 0x0e, 0x4c, 0x8c, 0x83, 0x64, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_527 = { .name = "xdh_wei25519_527", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_527_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_527_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_527_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_527_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 10 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 528 for XDH, tcId is 11 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_528_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_528_ourpubkey[] = { 0xfd, 0xe5, 0x73, 0x5e, 0x87, 0x1a, 0x1f, 0xcb, 0x5b, 0x41, 0xa8, 0xe2, 0xd1, 0x27, 0x24, 0x1b, 0xaa, 0x20, 0xab, 0x4e, 0x2a, 0x1a, 0xe6, 0x4a, 0x09, 0x2e, 0x67, 0xab, 0xc7, 0xbf, 0xf5, 0x52, }; static const unsigned char xdh_wei25519_528_privkey[] = { 0xa8, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0x7b, }; static const unsigned char xdh_wei25519_528_sharedsecret[] = { 0xa9, 0x2a, 0x96, 0xfa, 0x02, 0x99, 0x60, 0xf9, 0x53, 0x0e, 0x6f, 0xe3, 0x7e, 0x24, 0x29, 0xcd, 0x11, 0x3b, 0xe4, 0xd8, 0xf3, 0xf4, 0x43, 0x1f, 0x85, 0x46, 0xe6, 0xc7, 0x63, 0x51, 0x47, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_528 = { .name = "xdh_wei25519_528", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_528_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_528_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_528_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_528_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 11 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 529 for XDH, tcId is 12 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_529_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_529_ourpubkey[] = { 0xb8, 0x7a, 0x86, 0x76, 0x6e, 0xaf, 0x30, 0x7c, 0x53, 0x72, 0xbd, 0xd1, 0xe2, 0x90, 0xdb, 0xdd, 0xd8, 0x55, 0xec, 0xb7, 0xe2, 0x17, 0xb1, 0x08, 0x36, 0xf7, 0x72, 0x81, 0x8e, 0x1b, 0xa0, 0x3e, }; static const unsigned char xdh_wei25519_529_privkey[] = { 0xd0, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0x7c, }; static const unsigned char xdh_wei25519_529_sharedsecret[] = { 0x9f, 0x89, 0x54, 0x86, 0x81, 0x58, 0xec, 0x62, 0xb6, 0xb5, 0x86, 0xb8, 0xca, 0xe1, 0xd6, 0x7d, 0x1b, 0x9f, 0x4c, 0x03, 0xd5, 0xb3, 0xca, 0x03, 0x93, 0xce, 0xe7, 0x1a, 0xcc, 0xc9, 0xab, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_529 = { .name = "xdh_wei25519_529", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_529_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_529_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_529_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_529_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 12 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 530 for XDH, tcId is 13 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_530_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_530_ourpubkey[] = { 0xc0, 0x38, 0x5e, 0xc2, 0x92, 0x5f, 0x02, 0xd5, 0x1f, 0x98, 0x7f, 0x42, 0x61, 0x4d, 0xd2, 0x08, 0x61, 0x92, 0x3c, 0x42, 0x00, 0x1e, 0xe7, 0xf6, 0x6a, 0xd8, 0x26, 0xc6, 0xb8, 0xcb, 0x28, 0x3a, }; static const unsigned char xdh_wei25519_530_privkey[] = { 0xd0, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x4e, }; static const unsigned char xdh_wei25519_530_sharedsecret[] = { 0x6c, 0xbf, 0x1d, 0xc9, 0xaf, 0x97, 0xbc, 0x14, 0x85, 0x13, 0xa1, 0x8b, 0xe4, 0xa2, 0x57, 0xde, 0x1a, 0x3b, 0x06, 0x55, 0x84, 0xdf, 0x94, 0xe8, 0xb4, 0x3c, 0x1a, 0xb8, 0x97, 0x20, 0xb1, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_530 = { .name = "xdh_wei25519_530", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_530_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_530_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_530_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_530_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 13 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 531 for XDH, tcId is 14 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_531_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_531_ourpubkey[] = { 0x2a, 0xdb, 0x9d, 0x26, 0xb7, 0xb7, 0x2f, 0xd7, 0xb8, 0xfd, 0xb1, 0x5d, 0x75, 0x40, 0xd4, 0x9f, 0xb8, 0xc0, 0x03, 0x9c, 0xc3, 0xe2, 0x7e, 0xbc, 0xa9, 0xbb, 0xad, 0x2f, 0x79, 0xf9, 0x7e, 0x22, }; static const unsigned char xdh_wei25519_531_privkey[] = { 0xa0, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0x44, }; static const unsigned char xdh_wei25519_531_sharedsecret[] = { 0x38, 0x28, 0x4b, 0x70, 0x86, 0x09, 0x5a, 0x94, 0x06, 0x02, 0x8c, 0x1f, 0x80, 0x0c, 0x07, 0x1e, 0xa1, 0x06, 0x03, 0x9a, 0xd7, 0xa1, 0xd7, 0xf8, 0x2f, 0xe0, 0x09, 0x06, 0xfd, 0x90, 0x59, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_531 = { .name = "xdh_wei25519_531", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_531_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_531_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_531_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_531_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 14 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 532 for XDH, tcId is 15 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_532_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_532_ourpubkey[] = { 0x72, 0xb0, 0xca, 0x4f, 0x50, 0xc6, 0x2b, 0x73, 0xd2, 0xd9, 0x11, 0x3b, 0x50, 0x9f, 0x39, 0x56, 0xf1, 0x3e, 0x6a, 0x4b, 0xb1, 0x17, 0x6a, 0x1b, 0xba, 0xe6, 0x20, 0xad, 0xf0, 0xce, 0xa8, 0x2c, }; static const unsigned char xdh_wei25519_532_privkey[] = { 0xa8, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0x63, }; static const unsigned char xdh_wei25519_532_sharedsecret[] = { 0xc7, 0x21, 0x04, 0x1d, 0xf0, 0x24, 0x40, 0x71, 0x79, 0x4a, 0x8d, 0xb0, 0x6b, 0x9f, 0x7e, 0xae, 0xec, 0x69, 0x0c, 0x25, 0x72, 0x65, 0x34, 0x36, 0x66, 0xf4, 0x41, 0x6f, 0x41, 0x66, 0x84, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_532 = { .name = "xdh_wei25519_532", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_532_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_532_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_532_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_532_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 15 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 533 for XDH, tcId is 16 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_533_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_533_ourpubkey[] = { 0x59, 0x62, 0x7c, 0x72, 0xbc, 0x48, 0xeb, 0x2e, 0x82, 0xd7, 0xea, 0x31, 0xd8, 0x33, 0x53, 0xea, 0x60, 0x28, 0xa1, 0x40, 0x45, 0x6f, 0x7d, 0x88, 0xd4, 0x81, 0x97, 0x93, 0x96, 0x8c, 0x50, 0x3b, }; static const unsigned char xdh_wei25519_533_privkey[] = { 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0x50, }; static const unsigned char xdh_wei25519_533_sharedsecret[] = { 0x25, 0xff, 0x9a, 0x66, 0x31, 0xb1, 0x43, 0xdb, 0xdb, 0xdc, 0x20, 0x7b, 0x38, 0xe3, 0x8f, 0x83, 0x2a, 0xe0, 0x79, 0xa5, 0x2a, 0x61, 0x8c, 0x53, 0x43, 0x22, 0xe7, 0x73, 0x45, 0xfd, 0x90, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_533 = { .name = "xdh_wei25519_533", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_533_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_533_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_533_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_533_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 16 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 534 for XDH, tcId is 17 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_534_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_534_ourpubkey[] = { 0x29, 0x09, 0x26, 0x64, 0x2f, 0xe3, 0x05, 0xee, 0xbc, 0xb9, 0x1d, 0xf2, 0x36, 0x2f, 0x05, 0xc8, 0x09, 0xdd, 0x0d, 0xf9, 0x45, 0x0a, 0xd4, 0xd6, 0x16, 0xb3, 0x87, 0x74, 0x66, 0xf3, 0xa4, 0x2c, }; static const unsigned char xdh_wei25519_534_privkey[] = { 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0x70, }; static const unsigned char xdh_wei25519_534_sharedsecret[] = { 0xf2, 0x94, 0xe7, 0x92, 0x2c, 0x6c, 0xea, 0x58, 0x7a, 0xef, 0xe7, 0x29, 0x11, 0x63, 0x0d, 0x50, 0xf2, 0x45, 0x6a, 0x2b, 0xa7, 0xf2, 0x12, 0x07, 0xd5, 0x7f, 0x1e, 0xcc, 0xe0, 0x4f, 0x62, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_534 = { .name = "xdh_wei25519_534", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_534_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_534_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_534_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_534_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 17 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 535 for XDH, tcId is 18 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_535_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_535_ourpubkey[] = { 0xcc, 0xce, 0x9b, 0x27, 0xd1, 0x24, 0xf2, 0x11, 0x95, 0xa3, 0x86, 0x84, 0xe8, 0x8d, 0xd0, 0x51, 0x7f, 0x8d, 0x9c, 0x5f, 0x73, 0x81, 0x9a, 0x4c, 0xbc, 0x76, 0x03, 0x2f, 0xd7, 0x32, 0x3a, 0x7d, }; static const unsigned char xdh_wei25519_535_privkey[] = { 0xe0, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0x4c, }; static const unsigned char xdh_wei25519_535_sharedsecret[] = { 0xff, 0x47, 0x15, 0xbd, 0x8c, 0xf8, 0x47, 0xb7, 0x7c, 0x24, 0x4c, 0xe2, 0xd9, 0xb0, 0x08, 0xb1, 0x9e, 0xfa, 0xa8, 0xe8, 0x45, 0xfe, 0xb8, 0x5c, 0xe4, 0x88, 0x9b, 0x5b, 0x2c, 0x6a, 0x4b, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_535 = { .name = "xdh_wei25519_535", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_535_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_535_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_535_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_535_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 18 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 536 for XDH, tcId is 19 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_536_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_536_ourpubkey[] = { 0xc8, 0x23, 0x36, 0x9f, 0x0f, 0x38, 0xc4, 0x8f, 0x91, 0x2b, 0x96, 0x81, 0x44, 0xa1, 0x76, 0x61, 0xa0, 0x9f, 0x00, 0x9f, 0x83, 0xc2, 0x40, 0x8b, 0x1a, 0xb1, 0x73, 0x80, 0x4b, 0xab, 0x1d, 0x20, }; static const unsigned char xdh_wei25519_536_privkey[] = { 0x10, 0x5d, 0x62, 0x1e, 0x1e, 0xf3, 0x39, 0xc3, 0xd9, 0x92, 0x45, 0xcf, 0xb7, 0x7c, 0xd3, 0xa5, 0xbd, 0x0c, 0x44, 0x27, 0xa0, 0xe4, 0xd8, 0x75, 0x2c, 0x3b, 0x51, 0xf0, 0x45, 0x88, 0x9b, 0x4f, }; static const unsigned char xdh_wei25519_536_sharedsecret[] = { 0x61, 0xea, 0xce, 0x52, 0xda, 0x5f, 0x5e, 0xce, 0xfa, 0xfa, 0x4f, 0x19, 0x9b, 0x07, 0x7f, 0xf6, 0x4f, 0x2e, 0x3d, 0x2a, 0x6e, 0xce, 0x6f, 0x8e, 0xc0, 0x49, 0x78, 0x26, 0xb2, 0x12, 0xef, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_536 = { .name = "xdh_wei25519_536", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_536_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_536_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_536_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_536_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 19 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 537 for XDH, tcId is 20 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_537_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, }; static const unsigned char xdh_wei25519_537_ourpubkey[] = { 0x3c, 0x5c, 0xfe, 0x82, 0xc7, 0x34, 0x00, 0x89, 0x7b, 0x16, 0x97, 0x5c, 0xfd, 0x89, 0xde, 0x38, 0xa4, 0x6b, 0x5a, 0x0e, 0x74, 0x94, 0x12, 0x75, 0x08, 0x64, 0x54, 0x03, 0x05, 0x5d, 0x1d, 0x35, }; static const unsigned char xdh_wei25519_537_privkey[] = { 0xd8, 0x8a, 0x44, 0x1e, 0x70, 0x6f, 0x60, 0x6a, 0xe7, 0xf6, 0x30, 0xf8, 0xb2, 0x1f, 0x3c, 0x25, 0x54, 0x73, 0x9e, 0x3e, 0x54, 0x9f, 0x80, 0x41, 0x18, 0xc0, 0x37, 0x71, 0xf6, 0x08, 0x01, 0x7b, }; static const unsigned char xdh_wei25519_537_sharedsecret[] = { 0xff, 0x1b, 0x50, 0x9a, 0x0a, 0x1a, 0x54, 0x72, 0x60, 0x86, 0xf1, 0xe1, 0xc0, 0xac, 0xf0, 0x40, 0xab, 0x46, 0x3a, 0x2a, 0x54, 0x2e, 0x5d, 0x54, 0xe9, 0x2c, 0x6d, 0xf8, 0x12, 0x6c, 0xf6, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_537 = { .name = "xdh_wei25519_537", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_537_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_537_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_537_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_537_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 20 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 538 for XDH, tcId is 21 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_538_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, }; static const unsigned char xdh_wei25519_538_ourpubkey[] = { 0x66, 0x16, 0xe9, 0xaf, 0x39, 0x99, 0x49, 0xb3, 0x3f, 0xb0, 0x68, 0x53, 0x79, 0x9c, 0x2b, 0xdb, 0x61, 0x31, 0xa8, 0x74, 0xb0, 0x59, 0x32, 0xf1, 0x7a, 0x23, 0x24, 0x74, 0x82, 0x96, 0x7f, 0x07, }; static const unsigned char xdh_wei25519_538_privkey[] = { 0x80, 0xbb, 0xad, 0x16, 0x82, 0x22, 0x27, 0x62, 0x00, 0xaa, 0xfd, 0x36, 0xf7, 0xf2, 0x5f, 0xdc, 0x02, 0x56, 0x32, 0xd8, 0xbf, 0x9f, 0x63, 0x54, 0xbb, 0x76, 0x2e, 0x06, 0xfb, 0x63, 0xe2, 0x50, }; static const unsigned char xdh_wei25519_538_sharedsecret[] = { 0xf1, 0x34, 0xe6, 0x26, 0x7b, 0xf9, 0x39, 0x03, 0x08, 0x51, 0x17, 0xb9, 0x99, 0x32, 0xcc, 0x0c, 0x7b, 0xa2, 0x6f, 0x25, 0xfc, 0xa1, 0x21, 0x02, 0xa2, 0x6d, 0x75, 0x33, 0xd9, 0xc4, 0x27, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_538 = { .name = "xdh_wei25519_538", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_538_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_538_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_538_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_538_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 21 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 539 for XDH, tcId is 22 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_539_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_539_ourpubkey[] = { 0xdf, 0xa2, 0xb7, 0x99, 0xfe, 0x83, 0xb5, 0x1c, 0x7e, 0x92, 0xa4, 0xea, 0x18, 0x89, 0x52, 0x56, 0xc9, 0xe4, 0x0c, 0x3e, 0x77, 0x50, 0xad, 0x9b, 0xb5, 0xaa, 0x5d, 0xc5, 0x0e, 0xba, 0x86, 0x63, }; static const unsigned char xdh_wei25519_539_privkey[] = { 0x68, 0xe1, 0x34, 0x09, 0x2e, 0x94, 0xe6, 0x22, 0xc8, 0xa0, 0xcd, 0x18, 0xaf, 0xf5, 0x5b, 0xe2, 0x3d, 0xab, 0xd9, 0x94, 0xeb, 0xde, 0xe9, 0x82, 0xd9, 0x06, 0x01, 0xf6, 0xf0, 0xf4, 0xb3, 0x69, }; static const unsigned char xdh_wei25519_539_sharedsecret[] = { 0x74, 0xbf, 0xc1, 0x5e, 0x55, 0x97, 0xe9, 0xf5, 0x19, 0x3f, 0x94, 0x1e, 0x10, 0xa5, 0xc0, 0x08, 0xfc, 0x89, 0xf0, 0x51, 0x39, 0x27, 0x23, 0x88, 0x6a, 0x4a, 0x8f, 0xe5, 0x09, 0x3a, 0x73, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_539 = { .name = "xdh_wei25519_539", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_539_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_539_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_539_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_539_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 22 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 540 for XDH, tcId is 23 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_540_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_540_ourpubkey[] = { 0xbf, 0x7f, 0x59, 0x22, 0x7b, 0xb7, 0x4f, 0x7f, 0x74, 0x1a, 0xa8, 0xd2, 0x76, 0xd2, 0x20, 0xa5, 0xcd, 0xa3, 0x34, 0x29, 0xbe, 0x23, 0x2e, 0xe6, 0xc3, 0xd8, 0xde, 0xcf, 0xa0, 0x00, 0x2e, 0x01, }; static const unsigned char xdh_wei25519_540_privkey[] = { 0xe8, 0xe4, 0x3f, 0xc1, 0xeb, 0xac, 0x0b, 0xbc, 0x9b, 0x99, 0xc8, 0x03, 0x5e, 0xe1, 0xac, 0x59, 0xb9, 0x0f, 0x19, 0xa1, 0x6c, 0x42, 0xc0, 0xb9, 0x0f, 0x96, 0xad, 0xfc, 0xc5, 0xfd, 0xee, 0x78, }; static const unsigned char xdh_wei25519_540_sharedsecret[] = { 0x0d, 0x41, 0xa5, 0xb3, 0xaf, 0x77, 0x0b, 0xf2, 0xfc, 0xd3, 0x4f, 0xf7, 0x97, 0x22, 0x43, 0xa0, 0xe2, 0xcf, 0x4d, 0x34, 0xf2, 0x04, 0x6a, 0x14, 0x45, 0x81, 0xae, 0x1e, 0xc6, 0x8d, 0xf0, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_540 = { .name = "xdh_wei25519_540", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_540_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_540_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_540_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_540_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 23 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 541 for XDH, tcId is 24 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_541_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_541_ourpubkey[] = { 0x3d, 0xb9, 0x69, 0x62, 0xae, 0x69, 0xce, 0xc0, 0xff, 0x50, 0xa1, 0xb3, 0x47, 0xb0, 0x73, 0x84, 0x65, 0x85, 0xdf, 0x3d, 0x9f, 0x20, 0xf6, 0x64, 0xa0, 0x3e, 0x17, 0xb3, 0xc5, 0xbe, 0xf5, 0x0d, }; static const unsigned char xdh_wei25519_541_privkey[] = { 0x18, 0xbf, 0xfb, 0x16, 0xf9, 0x26, 0x80, 0xa9, 0xe2, 0x67, 0x47, 0x3e, 0x43, 0xc4, 0x64, 0x47, 0x6d, 0x53, 0x72, 0xdd, 0xd1, 0xf6, 0x64, 0xf3, 0xd0, 0x67, 0x8e, 0xfe, 0x7c, 0x98, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_541_sharedsecret[] = { 0x58, 0x94, 0xe0, 0x96, 0x35, 0x83, 0xae, 0x14, 0xa0, 0xb8, 0x04, 0x20, 0x89, 0x41, 0x67, 0xf4, 0xb7, 0x59, 0xc8, 0xd2, 0xeb, 0x9b, 0x69, 0xcb, 0x67, 0x55, 0x43, 0xf6, 0x65, 0x10, 0xf6, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_541 = { .name = "xdh_wei25519_541", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_541_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_541_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_541_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_541_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 24 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 542 for XDH, tcId is 25 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_542_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_542_ourpubkey[] = { 0xaa, 0x30, 0x75, 0x86, 0x03, 0x60, 0x5c, 0x21, 0x98, 0xbd, 0x81, 0xa3, 0x90, 0x31, 0x8f, 0xb3, 0xc5, 0xff, 0x54, 0xfd, 0xce, 0x9a, 0xb7, 0xee, 0x99, 0x50, 0x9e, 0xc6, 0x5f, 0xdc, 0x1e, 0x1e, }; static const unsigned char xdh_wei25519_542_privkey[] = { 0x30, 0x03, 0x05, 0xeb, 0x00, 0x2b, 0xf8, 0x6c, 0x71, 0xfe, 0x9c, 0x0b, 0x31, 0x19, 0x93, 0x72, 0x7b, 0x9d, 0xc6, 0x18, 0xd0, 0xce, 0x72, 0x51, 0xd0, 0xdf, 0xd8, 0x55, 0x2d, 0x17, 0x90, 0x5d, }; static const unsigned char xdh_wei25519_542_sharedsecret[] = { 0xf8, 0x62, 0x4d, 0x6e, 0x35, 0xe6, 0xc5, 0x48, 0xac, 0x47, 0x83, 0x2f, 0x2e, 0x5d, 0x15, 0x1a, 0x8e, 0x53, 0xb9, 0x29, 0x03, 0x63, 0xb2, 0x8d, 0x2a, 0xb8, 0xd8, 0x4a, 0xb7, 0xcb, 0x6a, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_542 = { .name = "xdh_wei25519_542", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_542_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_542_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_542_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_542_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 25 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 543 for XDH, tcId is 26 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_543_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_543_ourpubkey[] = { 0x3f, 0x7e, 0x86, 0x80, 0xb3, 0xcd, 0x6b, 0xa0, 0xeb, 0x61, 0xd6, 0x3e, 0x80, 0xbb, 0x43, 0xca, 0x3f, 0x1a, 0xc2, 0xcb, 0xd2, 0xe5, 0x22, 0x33, 0x7a, 0x8a, 0x98, 0x5e, 0x4a, 0x0b, 0x99, 0x60, }; static const unsigned char xdh_wei25519_543_privkey[] = { 0x80, 0xda, 0x9f, 0x02, 0x84, 0x22, 0x47, 0xd4, 0xad, 0xe5, 0xdd, 0xba, 0xc5, 0x1d, 0xbc, 0xe5, 0x5e, 0xa7, 0xdc, 0xa2, 0x84, 0x4e, 0x7f, 0x97, 0xab, 0x89, 0x87, 0xce, 0x7f, 0xd8, 0xbc, 0x71, }; static const unsigned char xdh_wei25519_543_sharedsecret[] = { 0xbf, 0xe1, 0x83, 0xba, 0x3d, 0x41, 0x57, 0xa7, 0xb5, 0x3e, 0xf1, 0x78, 0x61, 0x3d, 0xb6, 0x19, 0xe2, 0x78, 0x00, 0xf8, 0x53, 0x59, 0xc0, 0xb3, 0x9a, 0x9f, 0xd6, 0xe3, 0x21, 0x52, 0xc2, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_543 = { .name = "xdh_wei25519_543", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_543_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_543_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_543_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_543_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 26 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 544 for XDH, tcId is 27 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_544_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_544_ourpubkey[] = { 0x8d, 0xf7, 0xea, 0x4c, 0xd1, 0xa6, 0x19, 0x34, 0x9b, 0x99, 0x67, 0x99, 0x27, 0x30, 0x28, 0x0b, 0xcc, 0x3b, 0xc6, 0xd7, 0x74, 0xd0, 0x0d, 0x80, 0xc9, 0xa3, 0xb3, 0xeb, 0xfb, 0xc0, 0x45, 0x10, }; static const unsigned char xdh_wei25519_544_privkey[] = { 0x80, 0x6e, 0x7f, 0x26, 0xca, 0x32, 0x46, 0xde, 0x81, 0x82, 0x94, 0x6c, 0xbe, 0xd0, 0x9f, 0x52, 0xb9, 0x5d, 0xa6, 0x26, 0xc8, 0x23, 0xc7, 0xb5, 0x04, 0x50, 0x00, 0x1a, 0x47, 0xb7, 0xb2, 0x52, }; static const unsigned char xdh_wei25519_544_sharedsecret[] = { 0xbc, 0xa4, 0xa0, 0x72, 0x4f, 0x5c, 0x1f, 0xeb, 0x18, 0x40, 0x78, 0x44, 0x8c, 0x89, 0x8c, 0x86, 0x20, 0xe7, 0xca, 0xf8, 0x1f, 0x64, 0xcc, 0xa7, 0x46, 0xf5, 0x57, 0xdf, 0xf2, 0x49, 0x88, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_544 = { .name = "xdh_wei25519_544", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_544_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_544_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_544_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_544_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 27 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 545 for XDH, tcId is 28 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_545_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_545_ourpubkey[] = { 0x7a, 0x50, 0xd0, 0x1d, 0x18, 0xd0, 0xef, 0xa4, 0x09, 0x1c, 0xbf, 0x00, 0x1c, 0xf3, 0x8f, 0xb6, 0x03, 0x40, 0xb1, 0x49, 0xfc, 0x71, 0x30, 0x83, 0x7e, 0x3d, 0x36, 0x4c, 0xba, 0x29, 0x84, 0x69, }; static const unsigned char xdh_wei25519_545_privkey[] = { 0x58, 0x35, 0x4f, 0xd6, 0x4b, 0xc0, 0x22, 0xcb, 0xa3, 0xa7, 0x1b, 0x2a, 0xe6, 0x42, 0x81, 0xe4, 0xea, 0x7b, 0xf6, 0xd6, 0x5f, 0xdb, 0xae, 0xad, 0x14, 0x40, 0xee, 0xb1, 0x86, 0x04, 0xfe, 0x62, }; static const unsigned char xdh_wei25519_545_sharedsecret[] = { 0xb3, 0x41, 0x8a, 0x52, 0x46, 0x4c, 0x15, 0xab, 0x0c, 0xac, 0xbb, 0xd4, 0x38, 0x87, 0xa1, 0x19, 0x92, 0x06, 0xd5, 0x92, 0x29, 0xce, 0xd4, 0x92, 0x02, 0x30, 0x06, 0x38, 0xd7, 0xa4, 0x0f, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_545 = { .name = "xdh_wei25519_545", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_545_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_545_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_545_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_545_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 28 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 546 for XDH, tcId is 29 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_546_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_546_ourpubkey[] = { 0x01, 0x99, 0x24, 0x1d, 0xb5, 0xb0, 0x2e, 0x77, 0x0f, 0x28, 0xb8, 0x24, 0x68, 0x3f, 0xca, 0x24, 0xa3, 0x0e, 0xd6, 0x4a, 0x59, 0x50, 0x99, 0x93, 0xfe, 0x1c, 0x63, 0xa7, 0x49, 0xac, 0xf6, 0x56, }; static const unsigned char xdh_wei25519_546_privkey[] = { 0xf0, 0x01, 0x9c, 0xf0, 0x51, 0x59, 0x79, 0x4c, 0xc8, 0x05, 0x2b, 0x00, 0xc2, 0xe7, 0x5b, 0x7f, 0x46, 0xfb, 0x66, 0x93, 0xc4, 0xb3, 0x8c, 0x02, 0xb1, 0x2a, 0x4f, 0xe2, 0x72, 0xe8, 0x55, 0x6a, }; static const unsigned char xdh_wei25519_546_sharedsecret[] = { 0xfc, 0xde, 0x6e, 0x0a, 0x3d, 0x5f, 0xd5, 0xb6, 0x3f, 0x10, 0xc2, 0xd3, 0xaa, 0xd4, 0xef, 0xa0, 0x51, 0x96, 0xf2, 0x6b, 0xc0, 0xcb, 0x26, 0xfd, 0x6d, 0x9d, 0x3b, 0xd0, 0x15, 0xea, 0xa7, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_546 = { .name = "xdh_wei25519_546", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_546_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_546_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_546_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_546_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 29 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 547 for XDH, tcId is 30 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_547_peerpubkey[] = { 0xed, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_547_ourpubkey[] = { 0xd6, 0x82, 0x3d, 0xf0, 0x99, 0xbd, 0xe4, 0x86, 0x37, 0x66, 0xd9, 0xe7, 0x53, 0x06, 0x40, 0xb6, 0x50, 0x86, 0x74, 0xeb, 0xa1, 0xce, 0xd3, 0x9a, 0x32, 0xfc, 0x18, 0x09, 0xcb, 0xf4, 0xf9, 0x63, }; static const unsigned char xdh_wei25519_547_privkey[] = { 0xd0, 0xfc, 0xa6, 0x4c, 0xc5, 0xf3, 0xa0, 0xc8, 0xe7, 0x5c, 0x82, 0x4e, 0x8b, 0x09, 0xd1, 0x61, 0x5a, 0xa7, 0x9a, 0xeb, 0xa1, 0x39, 0xbb, 0x73, 0x02, 0xe2, 0xbb, 0x2f, 0xcb, 0xe5, 0x4b, 0x40, }; static const unsigned char xdh_wei25519_547_sharedsecret[] = { 0x7d, 0x62, 0xf1, 0x89, 0x44, 0x4c, 0x62, 0x31, 0xa4, 0x8a, 0xfa, 0xb1, 0x0a, 0x0a, 0xf2, 0xee, 0xe4, 0xa5, 0x2e, 0x43, 0x1e, 0xa0, 0x5f, 0xf7, 0x81, 0xd6, 0x16, 0xaf, 0x21, 0x14, 0x67, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_547 = { .name = "xdh_wei25519_547", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_547_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_547_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_547_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_547_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 30 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 548 for XDH, tcId is 31 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_548_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_548_ourpubkey[] = { 0xed, 0x01, 0xc0, 0x55, 0x41, 0x9f, 0xef, 0xb9, 0x38, 0xd1, 0x33, 0xf0, 0xca, 0x61, 0x17, 0x66, 0x8a, 0x44, 0x4b, 0x18, 0xaf, 0xd5, 0x06, 0x61, 0x67, 0x8f, 0x7f, 0xc1, 0x6f, 0x67, 0x7a, 0x06, }; static const unsigned char xdh_wei25519_548_privkey[] = { 0xd0, 0x24, 0x56, 0xe4, 0x56, 0x91, 0x1d, 0x3c, 0x6c, 0xd0, 0x54, 0x93, 0x31, 0x99, 0x80, 0x77, 0x32, 0xdf, 0xdc, 0x95, 0x86, 0x42, 0xad, 0x1a, 0xeb, 0xe9, 0x00, 0xc7, 0x93, 0xbe, 0xf2, 0x4a, }; static const unsigned char xdh_wei25519_548_sharedsecret[] = { 0x07, 0xba, 0x5f, 0xcb, 0xda, 0x21, 0xa9, 0xa1, 0x78, 0x45, 0xc4, 0x01, 0x49, 0x2b, 0x10, 0xe6, 0xde, 0x0a, 0x16, 0x8d, 0x5c, 0x94, 0xb6, 0x06, 0x69, 0x4c, 0x11, 0xba, 0xc3, 0x9b, 0xea, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_548 = { .name = "xdh_wei25519_548", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_548_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_548_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_548_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_548_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 31 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 549 for XDH, tcId is 32 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_549_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_549_ourpubkey[] = { 0xf5, 0xc0, 0x5f, 0x16, 0xb7, 0xe8, 0x9d, 0x46, 0x73, 0x79, 0xb0, 0xff, 0x99, 0x92, 0x90, 0xb5, 0x28, 0x31, 0xde, 0x1c, 0xc8, 0xe1, 0x07, 0xc9, 0x37, 0x77, 0x95, 0x2d, 0xeb, 0x4a, 0xfe, 0x7a, }; static const unsigned char xdh_wei25519_549_privkey[] = { 0x88, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0x5e, }; static const unsigned char xdh_wei25519_549_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_549 = { .name = "xdh_wei25519_549", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_549_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_549_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_549_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_549_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 0, tcId is 32 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 550 for XDH, tcId is 33 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_550_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_550_ourpubkey[] = { 0xbe, 0x11, 0xdc, 0x81, 0xaa, 0xea, 0x8b, 0x06, 0xd9, 0xba, 0x40, 0xa3, 0x61, 0xe3, 0xea, 0xa7, 0xac, 0x43, 0x95, 0x8d, 0x33, 0xa6, 0x16, 0x86, 0x28, 0x40, 0xf5, 0xf6, 0x73, 0x00, 0x67, 0x2a, }; static const unsigned char xdh_wei25519_550_privkey[] = { 0x48, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0x4f, }; static const unsigned char xdh_wei25519_550_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_550 = { .name = "xdh_wei25519_550", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_550_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_550_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_550_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_550_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 1, tcId is 33 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 551 for XDH, tcId is 34 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_551_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_551_ourpubkey[] = { 0x5f, 0x9c, 0xb8, 0x32, 0x24, 0x38, 0x5a, 0x99, 0xf8, 0xc1, 0xf0, 0x58, 0x51, 0xdc, 0x38, 0x32, 0x56, 0xd3, 0xef, 0x55, 0x2f, 0x5c, 0x87, 0xc5, 0x99, 0x3e, 0xe8, 0xa4, 0x6c, 0xa8, 0x64, 0x71, }; static const unsigned char xdh_wei25519_551_privkey[] = { 0xa8, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x5a, }; static const unsigned char xdh_wei25519_551_sharedsecret[] = { 0x34, 0xb7, 0xe4, 0xfa, 0x53, 0x26, 0x44, 0x20, 0xd9, 0xf9, 0x43, 0xd1, 0x55, 0x13, 0x90, 0x23, 0x42, 0xb3, 0x86, 0xb1, 0x72, 0xa0, 0xb0, 0xb7, 0xc8, 0xb8, 0xf2, 0xdd, 0x3d, 0x66, 0x9f, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_551 = { .name = "xdh_wei25519_551", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_551_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_551_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_551_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_551_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 34 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 552 for XDH, tcId is 35 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_552_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_552_ourpubkey[] = { 0xc9, 0x86, 0x00, 0xc6, 0x7b, 0x85, 0xd1, 0xc6, 0x9d, 0x34, 0x9c, 0x76, 0xe0, 0x5f, 0xbd, 0x2c, 0x29, 0x34, 0x6f, 0xc2, 0x47, 0xbd, 0x39, 0x9b, 0x08, 0xe2, 0x0a, 0x5b, 0x6a, 0xf5, 0xf0, 0x3a, }; static const unsigned char xdh_wei25519_552_privkey[] = { 0xd0, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0x7d, }; static const unsigned char xdh_wei25519_552_sharedsecret[] = { 0x3a, 0xa2, 0x27, 0xa3, 0x07, 0x81, 0xed, 0x74, 0x6b, 0xd4, 0xb3, 0x36, 0x5e, 0x5f, 0x61, 0x46, 0x1b, 0x84, 0x4d, 0x09, 0x41, 0x0c, 0x70, 0x57, 0x0a, 0xbd, 0x0d, 0x75, 0x57, 0x4d, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_552 = { .name = "xdh_wei25519_552", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_552_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_552_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_552_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_552_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 35 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 553 for XDH, tcId is 36 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_553_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_553_ourpubkey[] = { 0x19, 0xcd, 0xf9, 0xf7, 0x29, 0xb4, 0x58, 0xfb, 0xe5, 0xe3, 0xdd, 0x4d, 0xfc, 0xa5, 0xaa, 0xf0, 0x9f, 0xf0, 0xb9, 0x48, 0x71, 0xb0, 0xa6, 0x8c, 0x8f, 0x0a, 0xab, 0xf8, 0x25, 0x01, 0x01, 0x60, }; static const unsigned char xdh_wei25519_553_privkey[] = { 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0x6b, }; static const unsigned char xdh_wei25519_553_sharedsecret[] = { 0x97, 0x75, 0x5e, 0x7e, 0x77, 0x57, 0x89, 0x18, 0x4e, 0x17, 0x68, 0x47, 0xff, 0xbc, 0x2f, 0x8e, 0xf9, 0x87, 0x99, 0xd4, 0x6a, 0x70, 0x9c, 0x6a, 0x1c, 0x0f, 0xfd, 0x29, 0x08, 0x1d, 0x70, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_553 = { .name = "xdh_wei25519_553", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_553_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_553_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_553_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_553_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 36 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 554 for XDH, tcId is 37 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_554_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_554_ourpubkey[] = { 0xb9, 0x0b, 0x55, 0x8f, 0x39, 0x66, 0x5b, 0x76, 0xd0, 0x8c, 0x2c, 0x61, 0x49, 0x2a, 0x75, 0x18, 0xd8, 0xa6, 0x17, 0x67, 0x5b, 0x66, 0x90, 0x6e, 0x9f, 0xde, 0x4a, 0x16, 0xbb, 0x3b, 0x7f, 0x3a, }; static const unsigned char xdh_wei25519_554_privkey[] = { 0xd0, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0x75, }; static const unsigned char xdh_wei25519_554_sharedsecret[] = { 0xc2, 0x12, 0xbf, 0xce, 0xb9, 0x1f, 0x85, 0x88, 0xd4, 0x6c, 0xd9, 0x46, 0x84, 0xc2, 0xc9, 0xee, 0x07, 0x34, 0x08, 0x77, 0x96, 0xdc, 0x0a, 0x9f, 0x34, 0x04, 0xff, 0x53, 0x40, 0x12, 0x12, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_554 = { .name = "xdh_wei25519_554", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_554_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_554_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_554_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_554_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 37 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 555 for XDH, tcId is 38 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_555_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_555_ourpubkey[] = { 0xda, 0x1b, 0x2f, 0x16, 0x60, 0xb0, 0xac, 0x75, 0x87, 0x3c, 0xf4, 0x4f, 0xcc, 0xa0, 0xa6, 0xe8, 0x5a, 0x03, 0xf0, 0x54, 0x17, 0x71, 0xbf, 0x84, 0x37, 0x14, 0x29, 0xdf, 0xca, 0xd3, 0x35, 0x63, }; static const unsigned char xdh_wei25519_555_privkey[] = { 0x38, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0x4d, }; static const unsigned char xdh_wei25519_555_sharedsecret[] = { 0x38, 0x8f, 0xaf, 0xfb, 0x4a, 0x85, 0xd0, 0x67, 0x02, 0xba, 0x3e, 0x47, 0x9c, 0x6b, 0x21, 0x6a, 0x8f, 0x33, 0xef, 0xce, 0x05, 0x42, 0x97, 0x9b, 0xf1, 0x29, 0xd8, 0x60, 0xf9, 0x3b, 0x9f, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_555 = { .name = "xdh_wei25519_555", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_555_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_555_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_555_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_555_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 38 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 556 for XDH, tcId is 39 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_556_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_556_ourpubkey[] = { 0xe0, 0xbb, 0x13, 0xe6, 0x4a, 0x9f, 0x27, 0x53, 0x7b, 0x82, 0x46, 0x11, 0x28, 0x0f, 0xf6, 0x4b, 0xf1, 0x2f, 0x0b, 0xb4, 0x3a, 0xd5, 0xfc, 0xb4, 0x65, 0x53, 0x7c, 0x10, 0xf9, 0x69, 0x3c, 0x57, }; static const unsigned char xdh_wei25519_556_privkey[] = { 0xe0, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0x7f, }; static const unsigned char xdh_wei25519_556_sharedsecret[] = { 0x87, 0x7f, 0xec, 0x06, 0x69, 0xd8, 0xc1, 0xa5, 0xc8, 0x66, 0x64, 0x14, 0x20, 0xee, 0xa9, 0xf6, 0xbd, 0x1d, 0xfd, 0x38, 0xd3, 0x6a, 0x5d, 0x55, 0xa8, 0xc0, 0xab, 0x2b, 0xf3, 0x10, 0x5c, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_556 = { .name = "xdh_wei25519_556", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_556_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_556_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_556_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_556_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 39 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 557 for XDH, tcId is 40 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_557_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_557_ourpubkey[] = { 0x3f, 0x27, 0x19, 0x09, 0x20, 0x7a, 0xa6, 0xd9, 0xbc, 0x1a, 0x8a, 0x1a, 0x63, 0xf0, 0x02, 0x6f, 0xed, 0x26, 0x91, 0x5b, 0x00, 0x23, 0x1c, 0xea, 0x75, 0x00, 0x2a, 0x5c, 0x54, 0x7f, 0xfa, 0x6a, }; static const unsigned char xdh_wei25519_557_privkey[] = { 0xf0, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0x56, }; static const unsigned char xdh_wei25519_557_sharedsecret[] = { 0x18, 0x03, 0x73, 0xea, 0x0f, 0x23, 0xea, 0x73, 0x44, 0x7e, 0x5a, 0x90, 0x39, 0x8a, 0x97, 0xd4, 0x90, 0xb5, 0x41, 0xc6, 0x93, 0x20, 0x71, 0x9d, 0x7d, 0xd7, 0x33, 0xfb, 0x80, 0xd5, 0x48, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_557 = { .name = "xdh_wei25519_557", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_557_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_557_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_557_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_557_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 40 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 558 for XDH, tcId is 41 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_558_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_558_ourpubkey[] = { 0xce, 0xe9, 0x3f, 0x66, 0x26, 0x36, 0x8d, 0xa8, 0x01, 0x8c, 0x2d, 0x21, 0xa7, 0x53, 0xd9, 0x7e, 0xbb, 0x19, 0x13, 0x26, 0x95, 0xc1, 0xee, 0x3d, 0x4a, 0xb3, 0xa3, 0xbc, 0xfb, 0xbc, 0xc3, 0x63, }; static const unsigned char xdh_wei25519_558_privkey[] = { 0xe8, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0x77, }; static const unsigned char xdh_wei25519_558_sharedsecret[] = { 0x20, 0x81, 0x42, 0x35, 0x0a, 0xf9, 0x38, 0xab, 0xa5, 0x2a, 0x15, 0x6d, 0xce, 0x19, 0xd3, 0xc2, 0x7a, 0xb1, 0x62, 0x87, 0x29, 0x68, 0x3c, 0xf4, 0xef, 0x26, 0x67, 0xc3, 0xdc, 0x60, 0xcf, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_558 = { .name = "xdh_wei25519_558", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_558_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_558_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_558_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_558_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 41 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 559 for XDH, tcId is 42 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_559_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_559_ourpubkey[] = { 0x6f, 0xb5, 0xed, 0x1d, 0x76, 0xd2, 0x8d, 0xa1, 0xf3, 0xae, 0xaa, 0xea, 0xb4, 0xeb, 0x78, 0x48, 0x5b, 0x56, 0x81, 0x26, 0x42, 0xec, 0x87, 0xf0, 0x77, 0xf9, 0x32, 0xc7, 0xaf, 0x86, 0xce, 0x0e, }; static const unsigned char xdh_wei25519_559_privkey[] = { 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x54, }; static const unsigned char xdh_wei25519_559_sharedsecret[] = { 0x1c, 0x32, 0x63, 0x89, 0x0f, 0x7a, 0x08, 0x1c, 0xef, 0xe5, 0x0c, 0xb9, 0x2a, 0xbd, 0x49, 0x65, 0x82, 0xd9, 0x0d, 0xcc, 0x2b, 0x9c, 0xb8, 0x58, 0xbd, 0x28, 0x68, 0x54, 0xaa, 0x6b, 0x0a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_559 = { .name = "xdh_wei25519_559", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_559_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_559_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_559_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_559_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 42 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 560 for XDH, tcId is 43 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_560_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_560_ourpubkey[] = { 0xa1, 0xe1, 0x92, 0xab, 0x08, 0x0a, 0xd0, 0xc1, 0x9f, 0x08, 0xc4, 0x0c, 0xed, 0xdd, 0x83, 0x31, 0x7a, 0x5e, 0x6d, 0x03, 0x3d, 0xf8, 0x9d, 0xab, 0x00, 0x18, 0xae, 0x67, 0xaa, 0x84, 0x2c, 0x2a, }; static const unsigned char xdh_wei25519_560_privkey[] = { 0xa8, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0x63, }; static const unsigned char xdh_wei25519_560_sharedsecret[] = { 0x56, 0x12, 0x8e, 0x78, 0xd7, 0xc6, 0x6f, 0x48, 0xe8, 0x63, 0xe7, 0xe6, 0xf2, 0xca, 0xa9, 0xc0, 0x98, 0x8f, 0xd4, 0x39, 0xde, 0xac, 0x11, 0xd4, 0xaa, 0xc9, 0x66, 0x40, 0x83, 0x08, 0x7f, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_560 = { .name = "xdh_wei25519_560", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_560_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_560_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_560_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_560_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 43 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 561 for XDH, tcId is 44 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_561_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_561_ourpubkey[] = { 0x02, 0x35, 0xe3, 0x20, 0xbb, 0x13, 0x52, 0xf9, 0x2d, 0x5c, 0xae, 0x8a, 0x06, 0xb0, 0x5f, 0x56, 0xeb, 0xf1, 0x4b, 0x0b, 0xb2, 0x44, 0x3e, 0x17, 0xae, 0x20, 0x13, 0x22, 0xb6, 0x09, 0x53, 0x74, }; static const unsigned char xdh_wei25519_561_privkey[] = { 0x98, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x4e, }; static const unsigned char xdh_wei25519_561_sharedsecret[] = { 0x30, 0xec, 0xa5, 0x6f, 0x1f, 0x1c, 0x2e, 0x8f, 0xf7, 0x80, 0x13, 0x4e, 0x0e, 0x93, 0x82, 0xc5, 0x92, 0x7d, 0x30, 0x5d, 0x86, 0xb5, 0x34, 0x77, 0xe9, 0xae, 0xca, 0x79, 0xfc, 0x9c, 0xed, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_561 = { .name = "xdh_wei25519_561", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_561_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_561_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_561_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_561_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 44 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 562 for XDH, tcId is 45 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_562_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_562_ourpubkey[] = { 0x83, 0x82, 0xbd, 0x0f, 0x4f, 0x13, 0x56, 0x3a, 0x0a, 0xaf, 0x70, 0xd3, 0xe4, 0xc5, 0xee, 0x57, 0xa5, 0xbc, 0xbd, 0x47, 0x60, 0x22, 0xf1, 0x36, 0x1c, 0x08, 0x86, 0x9d, 0xd8, 0x5e, 0xf4, 0x06, }; static const unsigned char xdh_wei25519_562_privkey[] = { 0xd8, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x40, }; static const unsigned char xdh_wei25519_562_sharedsecret[] = { 0xcb, 0x21, 0xb7, 0xaa, 0x3f, 0x99, 0x2e, 0xcf, 0xc9, 0x29, 0x54, 0x84, 0x91, 0x54, 0xb3, 0xaf, 0x6b, 0x96, 0xa0, 0x1f, 0x17, 0xbf, 0x21, 0xc6, 0x12, 0xda, 0x74, 0x8d, 0xb3, 0x8e, 0xb3, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_562 = { .name = "xdh_wei25519_562", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_562_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_562_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_562_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_562_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 45 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 563 for XDH, tcId is 46 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_563_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_563_ourpubkey[] = { 0xd3, 0xc1, 0xbc, 0xa9, 0x58, 0xb8, 0x37, 0x4f, 0x9f, 0x9e, 0x91, 0x46, 0x44, 0xb7, 0x21, 0x84, 0x84, 0x1e, 0xf3, 0x24, 0xd3, 0x44, 0x18, 0x54, 0xeb, 0xbf, 0xbe, 0x06, 0xb2, 0x1a, 0xeb, 0x08, }; static const unsigned char xdh_wei25519_563_privkey[] = { 0xa0, 0x93, 0x3e, 0xe3, 0x05, 0x12, 0xb2, 0x5e, 0xe4, 0xe9, 0x00, 0xaa, 0xa0, 0x7f, 0x73, 0xe5, 0x07, 0xa8, 0xec, 0x53, 0xb5, 0x3a, 0x44, 0x62, 0x6e, 0x0f, 0x58, 0x9a, 0xf4, 0xe0, 0x35, 0x6c, }; static const unsigned char xdh_wei25519_563_sharedsecret[] = { 0xc5, 0xca, 0xf8, 0xca, 0xbc, 0x36, 0xf0, 0x86, 0xde, 0xaf, 0x1a, 0xb2, 0x26, 0x43, 0x40, 0x98, 0xc2, 0x22, 0xab, 0xdf, 0x8a, 0xcd, 0x3c, 0xe7, 0x5c, 0x75, 0xe9, 0xde, 0xbb, 0x27, 0x15, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_563 = { .name = "xdh_wei25519_563", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_563_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_563_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_563_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_563_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 46 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 564 for XDH, tcId is 47 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_564_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_564_ourpubkey[] = { 0x5f, 0xff, 0xb1, 0x36, 0xee, 0x44, 0x27, 0x6a, 0x5b, 0x3c, 0x10, 0x70, 0x37, 0x67, 0xbc, 0xaa, 0x9d, 0x07, 0x97, 0x46, 0xa0, 0xcd, 0x05, 0x96, 0xbb, 0xff, 0x09, 0x51, 0xd5, 0x7a, 0x58, 0x24, }; static const unsigned char xdh_wei25519_564_privkey[] = { 0x38, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0x73, }; static const unsigned char xdh_wei25519_564_sharedsecret[] = { 0x4d, 0x46, 0x05, 0x2c, 0x7e, 0xab, 0xba, 0x21, 0x5d, 0xf8, 0xd9, 0x13, 0x27, 0xe0, 0xc4, 0x61, 0x04, 0x21, 0xd2, 0xd9, 0x12, 0x9b, 0x14, 0x86, 0xd9, 0x14, 0xc7, 0x66, 0xcf, 0x10, 0x4c, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_564 = { .name = "xdh_wei25519_564", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_564_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_564_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_564_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_564_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 47 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 565 for XDH, tcId is 48 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_565_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const unsigned char xdh_wei25519_565_ourpubkey[] = { 0x33, 0x0e, 0x91, 0x31, 0xd0, 0xae, 0x17, 0x4c, 0x13, 0x39, 0x6e, 0x0e, 0x6f, 0x6a, 0x1b, 0xd6, 0x3d, 0xe7, 0x0c, 0xef, 0x1f, 0x4b, 0x67, 0x65, 0xac, 0x36, 0xb4, 0x41, 0xce, 0x67, 0xa5, 0x61, }; static const unsigned char xdh_wei25519_565_privkey[] = { 0x18, 0x21, 0x91, 0xb7, 0x05, 0x2e, 0x9c, 0xd6, 0x30, 0xef, 0x08, 0x00, 0x7f, 0xc6, 0xb4, 0x3b, 0xc7, 0x65, 0x29, 0x13, 0xbe, 0x67, 0x74, 0xe2, 0xfd, 0x27, 0x1b, 0x71, 0xb9, 0x62, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_565_sharedsecret[] = { 0xa0, 0xe0, 0x31, 0x51, 0x75, 0x78, 0x83, 0x62, 0xd4, 0xeb, 0xe0, 0x5e, 0x6a, 0xc7, 0x6d, 0x52, 0xd4, 0x01, 0x87, 0xbd, 0x68, 0x74, 0x92, 0xaf, 0x05, 0xab, 0xc7, 0xba, 0x7c, 0x70, 0x19, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_565 = { .name = "xdh_wei25519_565", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_565_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_565_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_565_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_565_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 48 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 566 for XDH, tcId is 49 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_566_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, }; static const unsigned char xdh_wei25519_566_ourpubkey[] = { 0xec, 0xba, 0x34, 0x3f, 0x4a, 0x89, 0x01, 0x3f, 0xea, 0x83, 0xe8, 0x69, 0xea, 0x3f, 0x7a, 0x67, 0x07, 0x15, 0xd8, 0x33, 0xab, 0x0e, 0xc4, 0x3a, 0xdb, 0x3a, 0xcd, 0x4b, 0x48, 0x22, 0x96, 0x07, }; static const unsigned char xdh_wei25519_566_privkey[] = { 0x10, 0x62, 0x21, 0xfe, 0x56, 0x94, 0xa7, 0x10, 0xd6, 0xe1, 0x47, 0x69, 0x6c, 0x5d, 0x5b, 0x93, 0xd6, 0x88, 0x7d, 0x58, 0x4f, 0x24, 0xf2, 0x28, 0x18, 0x2e, 0xbe, 0x1b, 0x1d, 0x2d, 0xb8, 0x5d, }; static const unsigned char xdh_wei25519_566_sharedsecret[] = { 0x5e, 0x64, 0x92, 0x4b, 0x91, 0x87, 0x3b, 0x49, 0x9a, 0x54, 0x02, 0xfa, 0x64, 0x33, 0x7c, 0x65, 0xd4, 0xb2, 0xed, 0x54, 0xbe, 0xeb, 0x3f, 0xa5, 0xd7, 0x34, 0x78, 0x09, 0xe4, 0x3a, 0xef, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_566 = { .name = "xdh_wei25519_566", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_566_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_566_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_566_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_566_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 49 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 567 for XDH, tcId is 50 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_567_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_567_ourpubkey[] = { 0xe2, 0xfa, 0xb3, 0x47, 0x96, 0x77, 0xf8, 0xc1, 0xba, 0x29, 0x2d, 0x9d, 0x26, 0x9f, 0x80, 0x91, 0x0c, 0xb9, 0x7f, 0xdd, 0x37, 0xc6, 0x9e, 0x6d, 0x0c, 0xfe, 0x32, 0xf1, 0x36, 0x83, 0x08, 0x34, }; static const unsigned char xdh_wei25519_567_privkey[] = { 0xd0, 0x35, 0xde, 0x94, 0x56, 0x08, 0x0d, 0x85, 0xa9, 0x12, 0x08, 0x3b, 0x2e, 0x3c, 0x7d, 0xdd, 0x79, 0x71, 0xf7, 0x86, 0xf2, 0x5a, 0x96, 0xc5, 0xe7, 0x82, 0xcf, 0x6f, 0x43, 0x76, 0xe3, 0x62, }; static const unsigned char xdh_wei25519_567_sharedsecret[] = { 0xc0, 0x52, 0x46, 0x6f, 0x97, 0x12, 0xd9, 0xec, 0x4e, 0xf4, 0x0f, 0x27, 0x6b, 0xb7, 0xe6, 0x44, 0x1c, 0x54, 0x34, 0xa8, 0x3e, 0xfd, 0x8e, 0x41, 0xd2, 0x0c, 0xe8, 0x3f, 0x2d, 0xbf, 0x59, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_567 = { .name = "xdh_wei25519_567", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_567_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_567_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_567_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_567_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 50 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 568 for XDH, tcId is 51 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_568_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_568_ourpubkey[] = { 0x8d, 0x29, 0xd3, 0x92, 0x53, 0x9b, 0x29, 0xdb, 0x99, 0x69, 0xa1, 0x64, 0xcc, 0x5e, 0x89, 0xb6, 0x07, 0x3b, 0xd9, 0x35, 0xce, 0xaf, 0x45, 0x84, 0xcb, 0x76, 0x2d, 0x71, 0xe8, 0xbb, 0x8e, 0x7b, }; static const unsigned char xdh_wei25519_568_privkey[] = { 0xa8, 0xf3, 0x73, 0x18, 0xa4, 0xc7, 0x60, 0xf3, 0xcb, 0x2d, 0x89, 0x48, 0x22, 0x91, 0x87, 0x35, 0x68, 0x3c, 0xb1, 0xed, 0xac, 0xf3, 0xe6, 0x66, 0xe1, 0x56, 0x94, 0x15, 0x49, 0x78, 0xfd, 0x6d, }; static const unsigned char xdh_wei25519_568_sharedsecret[] = { 0xd1, 0x51, 0xb9, 0x7c, 0xba, 0x9c, 0x25, 0xd4, 0x8e, 0x6d, 0x57, 0x63, 0x38, 0xb9, 0x7d, 0x53, 0xdd, 0x8b, 0x25, 0xe8, 0x4f, 0x65, 0xf7, 0xa2, 0x09, 0x1a, 0x17, 0x01, 0x63, 0x17, 0xc5, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_568 = { .name = "xdh_wei25519_568", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_568_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_568_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_568_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_568_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 51 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 569 for XDH, tcId is 52 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_569_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_569_ourpubkey[] = { 0xb3, 0x38, 0x93, 0x48, 0xa6, 0x79, 0x5a, 0xfe, 0x51, 0x48, 0x01, 0x8d, 0xe1, 0xc5, 0x69, 0x47, 0x9c, 0xdc, 0x86, 0xc3, 0xea, 0xca, 0x2e, 0x7d, 0xdc, 0x73, 0xc2, 0xaa, 0x2a, 0x3e, 0xea, 0x51, }; static const unsigned char xdh_wei25519_569_privkey[] = { 0x20, 0xd4, 0xd6, 0x24, 0xcf, 0x73, 0x2f, 0x82, 0x6f, 0x09, 0xe8, 0x08, 0x80, 0x17, 0x74, 0x2f, 0x13, 0xf2, 0xda, 0x98, 0xf4, 0xdc, 0xf4, 0xb4, 0x05, 0x19, 0xad, 0xb7, 0x90, 0xce, 0xbf, 0x64, }; static const unsigned char xdh_wei25519_569_sharedsecret[] = { 0x57, 0x16, 0x29, 0x6b, 0xaf, 0x2b, 0x1a, 0x6b, 0x9c, 0xd1, 0x5b, 0x23, 0xba, 0x86, 0x82, 0x97, 0x43, 0xd6, 0x0b, 0x03, 0x96, 0x56, 0x9b, 0xe1, 0xd5, 0xb4, 0x00, 0x14, 0xc0, 0x6b, 0x47, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_569 = { .name = "xdh_wei25519_569", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_569_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_569_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_569_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_569_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 52 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 570 for XDH, tcId is 53 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_570_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_570_ourpubkey[] = { 0xd2, 0xfd, 0x6d, 0x06, 0x22, 0xe0, 0x93, 0x1e, 0xe1, 0xc3, 0x64, 0xc6, 0xd6, 0x39, 0x85, 0x03, 0xe2, 0xd8, 0x66, 0xee, 0xd5, 0xca, 0x17, 0xd8, 0xa8, 0x64, 0xce, 0x31, 0x8f, 0x2c, 0x67, 0x7d, }; static const unsigned char xdh_wei25519_570_privkey[] = { 0xd8, 0x06, 0xa7, 0x35, 0xd1, 0x38, 0xef, 0xb3, 0xb4, 0x04, 0x68, 0x3c, 0x9d, 0x84, 0x48, 0x5a, 0xb4, 0xaf, 0x54, 0x0d, 0x0a, 0xf2, 0x53, 0xb5, 0x74, 0x32, 0x3d, 0x89, 0x13, 0x00, 0x3c, 0x66, }; static const unsigned char xdh_wei25519_570_sharedsecret[] = { 0xdd, 0xbd, 0x56, 0xd0, 0x45, 0x4b, 0x79, 0x4c, 0x1d, 0x1d, 0x49, 0x23, 0xf0, 0x23, 0xa5, 0x1f, 0x6f, 0x34, 0xef, 0x3f, 0x48, 0x68, 0xe3, 0xd6, 0x65, 0x93, 0x07, 0xc6, 0x83, 0xc7, 0x41, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_570 = { .name = "xdh_wei25519_570", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_570_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_570_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_570_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_570_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 53 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 571 for XDH, tcId is 54 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_571_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_571_ourpubkey[] = { 0x4f, 0x27, 0x84, 0x43, 0xa2, 0xa0, 0xcc, 0xd7, 0xf9, 0xb0, 0xae, 0x29, 0x6f, 0x66, 0x7c, 0xdf, 0x9e, 0x51, 0x92, 0x6d, 0xd9, 0xb8, 0x25, 0x3a, 0x47, 0x19, 0x5f, 0xa7, 0x9d, 0x6d, 0x44, 0x0c, }; static const unsigned char xdh_wei25519_571_privkey[] = { 0x18, 0x41, 0x98, 0xc6, 0x22, 0x81, 0x77, 0xf3, 0xef, 0x41, 0xdc, 0x9a, 0x34, 0x12, 0x58, 0xf8, 0x18, 0x1a, 0xe3, 0x65, 0xfe, 0x9e, 0xc9, 0x8d, 0x93, 0x63, 0x9b, 0x0b, 0xbe, 0xe1, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_571_sharedsecret[] = { 0x80, 0x39, 0xee, 0xbe, 0xd1, 0xa4, 0xf3, 0xb8, 0x11, 0xea, 0x92, 0x10, 0x2a, 0x62, 0x67, 0xd4, 0xda, 0x41, 0x23, 0x70, 0xf3, 0xf0, 0xd6, 0xb7, 0x0f, 0x1f, 0xaa, 0xa2, 0xe8, 0xd5, 0x23, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_571 = { .name = "xdh_wei25519_571", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_571_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_571_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_571_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_571_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 54 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 572 for XDH, tcId is 55 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_572_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_572_ourpubkey[] = { 0x76, 0x65, 0x3b, 0x41, 0x4f, 0x91, 0x5a, 0xb3, 0xea, 0xd4, 0xb2, 0x9d, 0x84, 0x5c, 0x33, 0x44, 0x30, 0xb5, 0xa4, 0x51, 0xfa, 0x83, 0xee, 0xfd, 0x6e, 0xda, 0x00, 0xcb, 0x69, 0x23, 0x61, 0x24, }; static const unsigned char xdh_wei25519_572_privkey[] = { 0xf0, 0xa4, 0x6a, 0x7f, 0x4b, 0x98, 0x9f, 0xe5, 0x15, 0xed, 0xc4, 0x41, 0x10, 0x93, 0x46, 0xba, 0x74, 0x6e, 0xc1, 0x51, 0x68, 0x96, 0xec, 0x5b, 0x7e, 0x4f, 0x4d, 0x90, 0x30, 0x64, 0xb4, 0x63, }; static const unsigned char xdh_wei25519_572_sharedsecret[] = { 0xb6, 0x95, 0x24, 0xe3, 0x95, 0x5d, 0xa2, 0x3d, 0xf6, 0xad, 0x1a, 0x7c, 0xd3, 0x85, 0x40, 0x04, 0x7f, 0x50, 0x86, 0x0f, 0x1c, 0x8f, 0xde, 0xd9, 0xb1, 0xfd, 0xfc, 0xc9, 0xe8, 0x12, 0xa0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_572 = { .name = "xdh_wei25519_572", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_572_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_572_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_572_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_572_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 55 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 573 for XDH, tcId is 56 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_573_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_573_ourpubkey[] = { 0xa3, 0xf2, 0x85, 0x88, 0xe0, 0x79, 0xfb, 0x94, 0x19, 0xfa, 0x97, 0x20, 0x54, 0xda, 0x23, 0x67, 0x5d, 0x30, 0xfc, 0xe2, 0x6b, 0xde, 0xf3, 0x9b, 0x10, 0x7a, 0xfd, 0xb9, 0xd6, 0xff, 0x12, 0x24, }; static const unsigned char xdh_wei25519_573_privkey[] = { 0x88, 0x18, 0x74, 0xfd, 0xa3, 0xa9, 0x9c, 0x0f, 0x02, 0x16, 0xe1, 0x17, 0x2f, 0xbd, 0x07, 0xab, 0x1c, 0x7d, 0xf7, 0x86, 0x02, 0xcc, 0x6b, 0x11, 0x26, 0x4e, 0x57, 0xaa, 0xb5, 0xf2, 0x3a, 0x49, }; static const unsigned char xdh_wei25519_573_sharedsecret[] = { 0xe4, 0x17, 0xbb, 0x88, 0x54, 0xf3, 0xb4, 0xf7, 0x0e, 0xce, 0xa5, 0x57, 0x45, 0x4c, 0x5c, 0x4e, 0x5f, 0x38, 0x04, 0xae, 0x53, 0x79, 0x60, 0xa8, 0x09, 0x7b, 0x9f, 0x33, 0x84, 0x10, 0xd7, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_573 = { .name = "xdh_wei25519_573", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_573_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_573_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_573_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_573_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 56 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 574 for XDH, tcId is 57 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_574_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_574_ourpubkey[] = { 0x95, 0x6a, 0xb6, 0x6a, 0x12, 0x09, 0x30, 0x06, 0x8d, 0xd9, 0xf2, 0x4d, 0x53, 0xd2, 0x77, 0xf3, 0x28, 0x98, 0xed, 0xc3, 0x89, 0x7b, 0x73, 0xc6, 0x17, 0x00, 0x4f, 0x08, 0xd5, 0x9d, 0x25, 0x5d, }; static const unsigned char xdh_wei25519_574_privkey[] = { 0xb8, 0xd0, 0xf1, 0xae, 0x05, 0xa5, 0x07, 0x28, 0x31, 0x44, 0x31, 0x50, 0xe2, 0x02, 0xac, 0x6d, 0xb0, 0x03, 0x22, 0xcd, 0xf3, 0x41, 0xf4, 0x67, 0xe9, 0xf2, 0x96, 0x58, 0x8b, 0x04, 0xdb, 0x72, }; static const unsigned char xdh_wei25519_574_sharedsecret[] = { 0xaf, 0xca, 0x72, 0xbb, 0x8e, 0xf7, 0x27, 0xb6, 0x0c, 0x53, 0x0c, 0x93, 0x7a, 0x2f, 0x7d, 0x06, 0xbb, 0x39, 0xc3, 0x9b, 0x90, 0x3a, 0x7f, 0x44, 0x35, 0xb3, 0xf5, 0xd8, 0xfc, 0x1c, 0xa8, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_574 = { .name = "xdh_wei25519_574", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_574_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_574_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_574_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_574_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 57 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 575 for XDH, tcId is 58 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_575_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_575_ourpubkey[] = { 0x06, 0xb5, 0xdb, 0xf4, 0xc9, 0xcf, 0xce, 0xf4, 0xfe, 0xc9, 0x62, 0x22, 0x9d, 0x67, 0x07, 0x37, 0x1a, 0x06, 0x6e, 0x09, 0xd7, 0x7e, 0xe0, 0x35, 0xbc, 0x6b, 0xca, 0xe6, 0x63, 0x2c, 0x5e, 0x06, }; static const unsigned char xdh_wei25519_575_privkey[] = { 0xc8, 0x61, 0x9b, 0xa9, 0x88, 0x85, 0x9d, 0xb7, 0xd6, 0xf2, 0x0f, 0xbf, 0x3f, 0xfb, 0x8b, 0x11, 0x34, 0x18, 0xcc, 0x27, 0x80, 0x65, 0xb4, 0xe8, 0xbb, 0x6d, 0x4e, 0x5b, 0x3e, 0x7c, 0xb5, 0x69, }; static const unsigned char xdh_wei25519_575_sharedsecret[] = { 0x7e, 0x41, 0xc2, 0x88, 0x6f, 0xed, 0x4a, 0xf0, 0x4c, 0x16, 0x41, 0xa5, 0x9a, 0xf9, 0x38, 0x02, 0xf2, 0x5a, 0xf0, 0xf9, 0xcb, 0xa7, 0xa2, 0x9a, 0xe7, 0x2e, 0x2a, 0x92, 0xf3, 0x5a, 0x1e, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_575 = { .name = "xdh_wei25519_575", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_575_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_575_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_575_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_575_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 58 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 576 for XDH, tcId is 59 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_576_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_576_ourpubkey[] = { 0x31, 0x2d, 0x29, 0x48, 0x64, 0x27, 0xe6, 0x72, 0x31, 0xc0, 0xae, 0xfc, 0x25, 0x92, 0x85, 0x2e, 0x5f, 0x95, 0x49, 0x16, 0xac, 0xdb, 0xd0, 0xd4, 0x46, 0x11, 0xad, 0xd6, 0x9a, 0xec, 0xfe, 0x2f, }; static const unsigned char xdh_wei25519_576_privkey[] = { 0xf8, 0xd4, 0xca, 0x1f, 0x37, 0xa3, 0x0e, 0xc9, 0xac, 0xd6, 0xdb, 0xe5, 0xa6, 0xe1, 0x50, 0xe5, 0xbc, 0x44, 0x7d, 0x22, 0xb3, 0x55, 0xd8, 0x0b, 0xa0, 0x02, 0xc5, 0xb0, 0x5c, 0x26, 0x93, 0x5d, }; static const unsigned char xdh_wei25519_576_sharedsecret[] = { 0xdd, 0x3a, 0xbd, 0x47, 0x46, 0xbf, 0x4f, 0x2a, 0x0d, 0x93, 0xc0, 0x2a, 0x7d, 0x19, 0xf7, 0x6d, 0x92, 0x1c, 0x09, 0x0d, 0x07, 0xe6, 0xea, 0x5a, 0xba, 0xe7, 0xf2, 0x88, 0x48, 0x35, 0x59, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_576 = { .name = "xdh_wei25519_576", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_576_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_576_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_576_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_576_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 59 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 577 for XDH, tcId is 60 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_577_peerpubkey[] = { 0xed, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_577_ourpubkey[] = { 0xd4, 0xbe, 0x86, 0x0d, 0xa6, 0xee, 0x44, 0xf0, 0x09, 0x56, 0xde, 0x11, 0x51, 0xc6, 0x79, 0x0f, 0xd4, 0x07, 0x6e, 0x23, 0x52, 0x30, 0xbd, 0xeb, 0x08, 0xc9, 0x55, 0x96, 0xee, 0xa0, 0x09, 0x7a, }; static const unsigned char xdh_wei25519_577_privkey[] = { 0x88, 0x03, 0x7a, 0xc8, 0xe3, 0x3c, 0x72, 0xc2, 0xc5, 0x10, 0x37, 0xc7, 0xc8, 0xc5, 0x28, 0x8b, 0xba, 0x92, 0x65, 0xc8, 0x2f, 0xd8, 0xc3, 0x17, 0x96, 0xdd, 0x7e, 0xa5, 0xdf, 0x9a, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_577_sharedsecret[] = { 0x8c, 0x27, 0xb3, 0xbf, 0xf8, 0xd3, 0xc1, 0xf6, 0xda, 0xf2, 0xd3, 0xb7, 0xb3, 0x47, 0x9c, 0xf9, 0xad, 0x20, 0x56, 0xe2, 0x00, 0x2b, 0xe2, 0x47, 0x99, 0x2a, 0x3b, 0x29, 0xde, 0x13, 0xa6, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_577 = { .name = "xdh_wei25519_577", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_577_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_577_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_577_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_577_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 60 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 578 for XDH, tcId is 61 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_578_peerpubkey[] = { 0xed, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_578_ourpubkey[] = { 0x0f, 0xf7, 0x44, 0x0d, 0x37, 0x62, 0xfd, 0x3f, 0x61, 0x30, 0x81, 0x94, 0x3f, 0x6d, 0xd9, 0xc1, 0xc4, 0xb1, 0xbd, 0xda, 0xfc, 0x98, 0x7c, 0x0e, 0x68, 0x31, 0x86, 0x6a, 0xae, 0x8d, 0xd0, 0x67, }; static const unsigned char xdh_wei25519_578_privkey[] = { 0x50, 0x34, 0xee, 0x7b, 0xf8, 0x3a, 0x13, 0xd9, 0x16, 0x7d, 0xf8, 0x6b, 0x06, 0x40, 0x29, 0x4f, 0x36, 0x20, 0xf4, 0xf4, 0xd9, 0x03, 0x0e, 0x5e, 0x29, 0x3f, 0x91, 0x90, 0x82, 0x4a, 0xe5, 0x62, }; static const unsigned char xdh_wei25519_578_sharedsecret[] = { 0x8e, 0x1d, 0x22, 0x07, 0xb4, 0x74, 0x32, 0xf8, 0x81, 0x67, 0x74, 0x48, 0xb9, 0xd4, 0x26, 0xa3, 0x0d, 0xe1, 0xa1, 0xf3, 0xfd, 0x38, 0xca, 0xd6, 0xf4, 0xb2, 0x3d, 0xbd, 0xfe, 0x8a, 0x29, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_578 = { .name = "xdh_wei25519_578", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_578_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_578_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_578_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_578_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 61 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 579 for XDH, tcId is 62 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_579_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_579_ourpubkey[] = { 0x72, 0xda, 0x95, 0x44, 0x42, 0x33, 0x06, 0x29, 0xaa, 0x5b, 0xec, 0x5b, 0x80, 0xcd, 0xae, 0xed, 0x43, 0xd0, 0xdf, 0x3d, 0x32, 0x26, 0x59, 0xc3, 0x0c, 0xf1, 0x6a, 0xf5, 0x51, 0x44, 0x11, 0x61, }; static const unsigned char xdh_wei25519_579_privkey[] = { 0x40, 0xbd, 0x4e, 0x1c, 0xaf, 0x39, 0xd9, 0xde, 0xf7, 0x66, 0x38, 0x23, 0x50, 0x2d, 0xad, 0x3e, 0x7d, 0x30, 0xeb, 0x6e, 0xb0, 0x1e, 0x9b, 0x89, 0x51, 0x6d, 0x4f, 0x2f, 0x45, 0xb7, 0xcd, 0x7f, }; static const unsigned char xdh_wei25519_579_sharedsecret[] = { 0x2c, 0xf6, 0x97, 0x4b, 0x0c, 0x07, 0x0e, 0x37, 0x07, 0xbf, 0x92, 0xe7, 0x21, 0xd3, 0xea, 0x9d, 0xe3, 0xdb, 0x6f, 0x61, 0xed, 0x81, 0x0e, 0x0a, 0x23, 0xd7, 0x2d, 0x43, 0x33, 0x65, 0xf6, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_579 = { .name = "xdh_wei25519_579", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_579_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_579_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_579_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_579_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 62 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 580 for XDH, tcId is 63 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_580_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_580_ourpubkey[] = { 0x12, 0x4e, 0x0f, 0x14, 0x87, 0xc9, 0xb3, 0x8f, 0x1c, 0x7f, 0xd4, 0xa6, 0x51, 0x8a, 0x47, 0x69, 0x9d, 0x15, 0x8d, 0x44, 0xcc, 0x18, 0x66, 0x5c, 0x7b, 0xcc, 0xa0, 0x3b, 0xdc, 0x72, 0x6e, 0x5d, }; static const unsigned char xdh_wei25519_580_privkey[] = { 0xe0, 0xf9, 0x78, 0xdf, 0xcd, 0x3a, 0x8f, 0x1a, 0x50, 0x93, 0x41, 0x8d, 0xe5, 0x41, 0x36, 0xa5, 0x84, 0xc2, 0x0b, 0x7b, 0x34, 0x9a, 0xfd, 0xf6, 0xc0, 0x52, 0x08, 0x86, 0xf9, 0x5b, 0x12, 0x72, }; static const unsigned char xdh_wei25519_580_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_580 = { .name = "xdh_wei25519_580", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_580_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_580_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_580_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_580_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 63 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 581 for XDH, tcId is 64 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_581_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_581_ourpubkey[] = { 0x96, 0x75, 0x99, 0xd4, 0xa0, 0xfc, 0x47, 0xdf, 0x44, 0x01, 0x22, 0xc0, 0xd2, 0x46, 0x00, 0xe9, 0x02, 0x3b, 0x11, 0x15, 0x22, 0x37, 0x01, 0x75, 0x73, 0x5c, 0xef, 0x87, 0xbd, 0x4f, 0x1b, 0x05, }; static const unsigned char xdh_wei25519_581_privkey[] = { 0x38, 0x73, 0x55, 0xd9, 0x95, 0x61, 0x60, 0x90, 0x50, 0x3a, 0xaf, 0xad, 0x49, 0xda, 0x01, 0xfb, 0x3d, 0xc3, 0xed, 0xa9, 0x62, 0x70, 0x4e, 0xae, 0xe6, 0xb8, 0x6f, 0x9e, 0x20, 0xc9, 0x25, 0x79, }; static const unsigned char xdh_wei25519_581_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_581 = { .name = "xdh_wei25519_581", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_581_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_581_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_581_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_581_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 64 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 582 for XDH, tcId is 65 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_582_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_582_ourpubkey[] = { 0x18, 0x2d, 0x41, 0x83, 0x99, 0x7f, 0x65, 0x18, 0x17, 0xc6, 0x87, 0x00, 0x8f, 0x4d, 0xc3, 0xf7, 0x7e, 0x5d, 0xf7, 0x26, 0xc5, 0x6e, 0x46, 0xf5, 0xc5, 0x36, 0x16, 0xf5, 0x84, 0x7f, 0x9c, 0x0b, }; static const unsigned char xdh_wei25519_582_privkey[] = { 0xc8, 0xfe, 0x0d, 0xf9, 0x2a, 0xe6, 0x8a, 0x03, 0x02, 0x3f, 0xc0, 0xc9, 0xad, 0xb9, 0x55, 0x7d, 0x31, 0xbe, 0x7f, 0xee, 0xd0, 0xd3, 0xab, 0x36, 0xc5, 0x58, 0x14, 0x3d, 0xaf, 0x4d, 0xbb, 0x40, }; static const unsigned char xdh_wei25519_582_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_582 = { .name = "xdh_wei25519_582", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_582_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_582_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_582_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_582_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 65 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 583 for XDH, tcId is 66 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_583_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_583_ourpubkey[] = { 0x42, 0x00, 0xd6, 0x67, 0x92, 0xc6, 0xfa, 0x0c, 0x21, 0x1a, 0x82, 0x17, 0x3d, 0x6f, 0xcd, 0x5d, 0xb3, 0x93, 0x13, 0xe5, 0x8e, 0x73, 0x13, 0x92, 0xcb, 0x50, 0x38, 0x0d, 0xb2, 0x39, 0x9c, 0x0d, }; static const unsigned char xdh_wei25519_583_privkey[] = { 0xc8, 0xd7, 0x4a, 0xcd, 0xe5, 0x93, 0x4e, 0x64, 0xb9, 0x89, 0x5d, 0x5f, 0xf7, 0xaf, 0xbf, 0xfd, 0x7f, 0x70, 0x4f, 0x7d, 0xfc, 0xcf, 0xf7, 0xac, 0x28, 0xfa, 0x62, 0xa1, 0xe6, 0x41, 0x03, 0x47, }; static const unsigned char xdh_wei25519_583_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_583 = { .name = "xdh_wei25519_583", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_583_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_583_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_583_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_583_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 66 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 584 for XDH, tcId is 67 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_584_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_584_ourpubkey[] = { 0x51, 0x3c, 0x54, 0x6d, 0x66, 0x2d, 0xe9, 0x74, 0x48, 0xf5, 0xfd, 0x30, 0x0c, 0x13, 0x1c, 0xb6, 0x7f, 0xde, 0xc1, 0xb6, 0x9d, 0xea, 0xe8, 0xb8, 0xf6, 0x56, 0xe8, 0x19, 0x5d, 0x9c, 0xb2, 0x36, }; static const unsigned char xdh_wei25519_584_privkey[] = { 0xb8, 0x56, 0x49, 0xd5, 0x12, 0x0e, 0x01, 0xe8, 0xcc, 0xaf, 0x7b, 0x2f, 0xb8, 0xd8, 0x1b, 0x62, 0xe8, 0xad, 0x6f, 0x3d, 0x5c, 0x05, 0x53, 0xfd, 0xde, 0x19, 0x06, 0xcb, 0x9d, 0x79, 0xc0, 0x50, }; static const unsigned char xdh_wei25519_584_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_584 = { .name = "xdh_wei25519_584", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_584_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_584_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_584_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_584_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 67 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 585 for XDH, tcId is 68 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_585_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_585_ourpubkey[] = { 0xf4, 0x83, 0xb2, 0x83, 0x0c, 0x54, 0xa1, 0x22, 0x7c, 0x6e, 0xd3, 0x53, 0x93, 0xd5, 0x6d, 0xd2, 0xa5, 0xf7, 0x74, 0x61, 0x9e, 0x35, 0x18, 0x7e, 0x30, 0xa4, 0xef, 0xa0, 0x80, 0xb8, 0x28, 0x69, }; static const unsigned char xdh_wei25519_585_privkey[] = { 0x20, 0x64, 0xb2, 0xf4, 0xc9, 0xdc, 0x97, 0xec, 0x7c, 0xf5, 0x89, 0x32, 0xfd, 0xfa, 0x32, 0x65, 0xba, 0x6e, 0xa4, 0xd1, 0x1f, 0x02, 0x59, 0xb8, 0xef, 0xc8, 0xaf, 0xb3, 0x5d, 0xb8, 0x8c, 0x48, }; static const unsigned char xdh_wei25519_585_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_585 = { .name = "xdh_wei25519_585", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_585_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_585_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_585_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_585_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 68 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 586 for XDH, tcId is 69 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_586_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_586_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_586_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_586_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_586 = { .name = "xdh_wei25519_586", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_586_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_586_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_586_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_586_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 69 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 587 for XDH, tcId is 70 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_587_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_587_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_587_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_587_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_587 = { .name = "xdh_wei25519_587", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_587_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_587_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_587_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_587_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 70 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 588 for XDH, tcId is 71 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_588_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_588_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_588_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_588_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_588 = { .name = "xdh_wei25519_588", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_588_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_588_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_588_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_588_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 71 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 589 for XDH, tcId is 72 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_589_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_589_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_589_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_589_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_589 = { .name = "xdh_wei25519_589", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_589_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_589_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_589_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_589_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 72 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 590 for XDH, tcId is 73 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_590_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_590_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_590_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_590_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_590 = { .name = "xdh_wei25519_590", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_590_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_590_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_590_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_590_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 73 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 591 for XDH, tcId is 74 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_591_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_591_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_591_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_591_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_591 = { .name = "xdh_wei25519_591", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_591_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_591_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_591_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_591_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 74 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 592 for XDH, tcId is 75 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_592_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_592_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_592_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_592_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_592 = { .name = "xdh_wei25519_592", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_592_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_592_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_592_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_592_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 75 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 593 for XDH, tcId is 76 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_593_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_593_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_593_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_593_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_593 = { .name = "xdh_wei25519_593", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_593_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_593_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_593_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_593_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 76 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 594 for XDH, tcId is 77 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_594_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_594_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_594_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_594_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_594 = { .name = "xdh_wei25519_594", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_594_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_594_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_594_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_594_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 77 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 595 for XDH, tcId is 78 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_595_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_595_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_595_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_595_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_595 = { .name = "xdh_wei25519_595", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_595_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_595_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_595_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_595_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 78 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 596 for XDH, tcId is 79 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_596_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_596_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_596_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_596_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_596 = { .name = "xdh_wei25519_596", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_596_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_596_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_596_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_596_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 79 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 597 for XDH, tcId is 80 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_597_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_597_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_597_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_597_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_597 = { .name = "xdh_wei25519_597", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_597_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_597_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_597_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_597_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 80 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 598 for XDH, tcId is 81 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_598_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_598_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_598_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_598_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_598 = { .name = "xdh_wei25519_598", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_598_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_598_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_598_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_598_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 81 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 599 for XDH, tcId is 82 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_599_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_599_ourpubkey[] = { 0x37, 0xe7, 0x53, 0xe4, 0x43, 0x72, 0x02, 0x49, 0xfd, 0x1a, 0x07, 0x07, 0x41, 0xf6, 0xbb, 0x86, 0xae, 0xdd, 0xf4, 0x1f, 0xdd, 0xb8, 0x75, 0x54, 0xf7, 0xe1, 0xe7, 0x92, 0xee, 0x14, 0x58, 0x03, }; static const unsigned char xdh_wei25519_599_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_599_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_599 = { .name = "xdh_wei25519_599", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_599_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_599_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_599_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_599_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 82 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 600 for XDH, tcId is 83 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_600_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_600_ourpubkey[] = { 0x48, 0x35, 0x1f, 0xe7, 0x56, 0x3c, 0xff, 0x0e, 0x14, 0x95, 0x2e, 0xf7, 0x9d, 0x16, 0xae, 0x6b, 0xb7, 0x13, 0xdf, 0xd0, 0xdf, 0xf5, 0xa3, 0xda, 0x50, 0x91, 0x12, 0x94, 0x88, 0x0b, 0x75, 0x54, }; static const unsigned char xdh_wei25519_600_privkey[] = { 0x40, 0xff, 0x58, 0x6e, 0x73, 0xd6, 0x1f, 0x09, 0x60, 0xdc, 0x2d, 0x76, 0x3a, 0xc1, 0x9e, 0x98, 0x22, 0x5f, 0x11, 0x94, 0xf6, 0xfe, 0x43, 0xd5, 0xdd, 0x97, 0xad, 0x55, 0xb3, 0xd3, 0x59, 0x61, }; static const unsigned char xdh_wei25519_600_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_600 = { .name = "xdh_wei25519_600", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_600_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_600_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_600_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_600_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819949, tcId is 83 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 601 for XDH, tcId is 84 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_601_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_601_ourpubkey[] = { 0x3b, 0xc9, 0x82, 0xea, 0x9d, 0x08, 0xeb, 0xc5, 0xb5, 0x5d, 0xc2, 0x10, 0xf9, 0xe0, 0x77, 0x24, 0xe4, 0xcd, 0xa6, 0xc8, 0x7b, 0xa3, 0x2d, 0xd0, 0x94, 0x27, 0x02, 0x9f, 0x0d, 0x4d, 0x4d, 0x3b, }; static const unsigned char xdh_wei25519_601_privkey[] = { 0x58, 0x4f, 0xce, 0xae, 0xba, 0xe9, 0x44, 0xbf, 0xe9, 0x3b, 0x2e, 0x0d, 0x0a, 0x57, 0x5f, 0x70, 0x6c, 0xe5, 0xad, 0xa1, 0xda, 0x2b, 0x13, 0x11, 0xc3, 0xb4, 0x21, 0xf9, 0x18, 0x6c, 0x7a, 0x6f, }; static const unsigned char xdh_wei25519_601_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_601 = { .name = "xdh_wei25519_601", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_601_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_601_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_601_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_601_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819950, tcId is 84 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 602 for XDH, tcId is 85 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_602_peerpubkey[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_602_ourpubkey[] = { 0x7a, 0x4e, 0x14, 0x10, 0x31, 0x7b, 0x3d, 0xb3, 0xeb, 0xaa, 0xa3, 0x23, 0x09, 0x06, 0xc8, 0xa2, 0x6b, 0x3e, 0xa0, 0x5a, 0x5f, 0x39, 0x2c, 0x1c, 0x3b, 0xad, 0xea, 0xc5, 0x60, 0xa4, 0x9c, 0x4e, }; static const unsigned char xdh_wei25519_602_privkey[] = { 0x00, 0x16, 0xb6, 0x2a, 0xf5, 0xca, 0xbd, 0xe8, 0xc4, 0x09, 0x38, 0xeb, 0xf2, 0x10, 0x8e, 0x05, 0xd2, 0x7f, 0xa0, 0x53, 0x3e, 0xd8, 0x5d, 0x70, 0x01, 0x5a, 0xd4, 0xad, 0x39, 0x76, 0x2d, 0x54, }; static const unsigned char xdh_wei25519_602_sharedsecret[] = { 0xb4, 0xd1, 0x0e, 0x83, 0x27, 0x14, 0x97, 0x2f, 0x96, 0xbd, 0x33, 0x82, 0xe4, 0xd0, 0x82, 0xa2, 0x1a, 0x83, 0x33, 0xa1, 0x63, 0x15, 0xb3, 0xff, 0xb5, 0x36, 0x06, 0x1d, 0x24, 0x82, 0x36, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_602 = { .name = "xdh_wei25519_602", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_602_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_602_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_602_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_602_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 85 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 603 for XDH, tcId is 86 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_603_peerpubkey[] = { 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_603_ourpubkey[] = { 0x82, 0x9e, 0x85, 0x09, 0xe3, 0x59, 0x6b, 0x89, 0xa9, 0xea, 0x56, 0x9d, 0x84, 0xe2, 0xfc, 0x0c, 0x94, 0x57, 0x68, 0x59, 0x3c, 0xca, 0x4e, 0xaa, 0x65, 0x3f, 0x04, 0x15, 0x64, 0x88, 0xf2, 0x79, }; static const unsigned char xdh_wei25519_603_privkey[] = { 0xd8, 0x36, 0x50, 0xba, 0x7c, 0xec, 0x11, 0x58, 0x81, 0x91, 0x62, 0x55, 0xe3, 0xfa, 0x5f, 0xa0, 0xd6, 0xb8, 0xdc, 0xf9, 0x68, 0x73, 0x1b, 0xd2, 0xc9, 0xd2, 0xae, 0xc3, 0xf5, 0x61, 0xf6, 0x49, }; static const unsigned char xdh_wei25519_603_sharedsecret[] = { 0x51, 0x5e, 0xac, 0x8f, 0x1e, 0xd0, 0xb0, 0x0c, 0x70, 0x76, 0x23, 0x22, 0xc3, 0xef, 0x86, 0x71, 0x6c, 0xd2, 0xc5, 0x1f, 0xe7, 0x7c, 0xec, 0x3d, 0x31, 0xb6, 0x38, 0x8b, 0xc6, 0xee, 0xa3, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_603 = { .name = "xdh_wei25519_603", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_603_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_603_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_603_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_603_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 86 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 604 for XDH, tcId is 87 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_604_peerpubkey[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_604_ourpubkey[] = { 0x7f, 0x27, 0x35, 0xe7, 0x50, 0x6b, 0xe8, 0xa3, 0xa2, 0x11, 0x5b, 0x9f, 0x23, 0x67, 0x7b, 0xff, 0x64, 0x59, 0xfd, 0x6b, 0xdb, 0x08, 0xfb, 0xfb, 0x6f, 0x00, 0xcd, 0xfa, 0x3e, 0x3a, 0x61, 0x6d, }; static const unsigned char xdh_wei25519_604_privkey[] = { 0x88, 0xdd, 0x14, 0xe2, 0x71, 0x1e, 0xbd, 0x0b, 0x00, 0x26, 0xc6, 0x51, 0x26, 0x4c, 0xa9, 0x65, 0xe7, 0xe3, 0xda, 0x50, 0x82, 0x78, 0x9f, 0xba, 0xb7, 0xe2, 0x44, 0x25, 0xe7, 0xb4, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_604_sharedsecret[] = { 0x69, 0x19, 0x99, 0x2d, 0x6a, 0x59, 0x1e, 0x77, 0xb3, 0xf2, 0xba, 0xcb, 0xd7, 0x4c, 0xaf, 0x3a, 0xea, 0x4b, 0xe4, 0x80, 0x2b, 0x18, 0xb2, 0xbc, 0x07, 0xeb, 0x09, 0xad, 0xe3, 0xad, 0x66, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_604 = { .name = "xdh_wei25519_604", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_604_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_604_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_604_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_604_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 87 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 605 for XDH, tcId is 88 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_605_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_605_ourpubkey[] = { 0x83, 0x19, 0xae, 0x73, 0x75, 0x66, 0x1d, 0x0b, 0x24, 0x26, 0xb4, 0xc5, 0x3b, 0x97, 0x0a, 0xee, 0x04, 0xf0, 0x78, 0x83, 0xfe, 0x35, 0x38, 0xc0, 0xf7, 0x48, 0x78, 0xc3, 0x3e, 0xba, 0xfd, 0x44, }; static const unsigned char xdh_wei25519_605_privkey[] = { 0x98, 0xc2, 0xb0, 0x8c, 0xba, 0xc1, 0x4e, 0x15, 0x95, 0x31, 0x54, 0xe3, 0xb5, 0x58, 0xd4, 0x2b, 0xb1, 0x26, 0x8a, 0x36, 0x5b, 0x0e, 0xf2, 0xf2, 0x27, 0x25, 0x12, 0x9d, 0x8a, 0xc5, 0xcb, 0x7f, }; static const unsigned char xdh_wei25519_605_sharedsecret[] = { 0x9c, 0x03, 0x4f, 0xcd, 0x8d, 0x3b, 0xf6, 0x99, 0x64, 0x95, 0x8c, 0x01, 0x05, 0x16, 0x1f, 0xcb, 0x5d, 0x1e, 0xa5, 0xb8, 0xf8, 0xab, 0xb3, 0x71, 0x49, 0x1e, 0x42, 0xa7, 0x68, 0x4c, 0x23, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_605 = { .name = "xdh_wei25519_605", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_605_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_605_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_605_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_605_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 88 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 606 for XDH, tcId is 89 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_606_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_606_ourpubkey[] = { 0x25, 0xbc, 0x92, 0x53, 0x66, 0x80, 0x12, 0x96, 0xb9, 0x3e, 0x9b, 0xd5, 0xe0, 0x6b, 0x13, 0x66, 0x09, 0x95, 0xcd, 0x84, 0x28, 0xed, 0xd9, 0xcd, 0xce, 0xb6, 0xa0, 0x87, 0xec, 0x79, 0x51, 0x6d, }; static const unsigned char xdh_wei25519_606_privkey[] = { 0xc0, 0x69, 0x7b, 0x6f, 0x05, 0xe0, 0xf3, 0x43, 0x3b, 0x44, 0xea, 0x35, 0x2f, 0x20, 0x50, 0x8e, 0xb0, 0x62, 0x30, 0x98, 0xa7, 0x77, 0x08, 0x53, 0xaf, 0x5c, 0xa0, 0x97, 0x27, 0x34, 0x0c, 0x4e, }; static const unsigned char xdh_wei25519_606_sharedsecret[] = { 0xed, 0x18, 0xb0, 0x6d, 0xa5, 0x12, 0xca, 0xb6, 0x3f, 0x22, 0xd2, 0xd5, 0x1d, 0x77, 0xd9, 0x9f, 0xac, 0xd3, 0xc4, 0x50, 0x2e, 0x4a, 0xbf, 0x4e, 0x97, 0xb0, 0x94, 0xc2, 0x0a, 0x9d, 0xdf, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_606 = { .name = "xdh_wei25519_606", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_606_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_606_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_606_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_606_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 89 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 607 for XDH, tcId is 90 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_607_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_607_ourpubkey[] = { 0xe9, 0x61, 0xb3, 0x23, 0x13, 0x9d, 0xe2, 0x24, 0x3d, 0x5b, 0xff, 0x89, 0x46, 0x58, 0x7b, 0x8e, 0x66, 0xdd, 0x31, 0x02, 0xed, 0xad, 0x11, 0x89, 0x14, 0x6f, 0xcd, 0x18, 0x86, 0x23, 0xa8, 0x0e, }; static const unsigned char xdh_wei25519_607_privkey[] = { 0x18, 0x42, 0x2b, 0x58, 0xa1, 0x8e, 0x0f, 0x45, 0x19, 0xb7, 0xa8, 0x87, 0xb8, 0xcf, 0xb6, 0x49, 0xe0, 0xbf, 0xe4, 0xb3, 0x4d, 0x75, 0x96, 0x33, 0x50, 0xa9, 0x94, 0x4e, 0x5b, 0x7f, 0x5b, 0x7e, }; static const unsigned char xdh_wei25519_607_sharedsecret[] = { 0x44, 0x8c, 0xe4, 0x10, 0xff, 0xfc, 0x7e, 0x61, 0x49, 0xc5, 0xab, 0xec, 0x0a, 0xd5, 0xf3, 0x60, 0x7d, 0xfd, 0xe8, 0xa3, 0x4e, 0x2a, 0xc3, 0x24, 0x3c, 0x30, 0x09, 0x17, 0x61, 0x68, 0xb4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_607 = { .name = "xdh_wei25519_607", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_607_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_607_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_607_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_607_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 90 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 608 for XDH, tcId is 91 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_608_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_608_ourpubkey[] = { 0xcb, 0xf2, 0x1a, 0xff, 0x86, 0x76, 0xc4, 0x16, 0xa7, 0x16, 0x48, 0xde, 0x99, 0x18, 0x07, 0x86, 0x97, 0x74, 0x2a, 0xcf, 0x62, 0x59, 0xad, 0xb6, 0xdf, 0x03, 0x97, 0x71, 0x64, 0x1a, 0xc3, 0x7a, }; static const unsigned char xdh_wei25519_608_privkey[] = { 0x20, 0x62, 0x0d, 0x82, 0x48, 0x77, 0x07, 0xbe, 0xdf, 0x9e, 0xe3, 0x54, 0x9e, 0x95, 0xcb, 0x93, 0x90, 0xd2, 0x61, 0x8f, 0x50, 0xcf, 0x6a, 0xcb, 0xa4, 0x7f, 0xfa, 0xa1, 0x03, 0x22, 0x4a, 0x6f, }; static const unsigned char xdh_wei25519_608_sharedsecret[] = { 0x03, 0xa6, 0x33, 0xdf, 0x01, 0x48, 0x0d, 0x0d, 0x50, 0x48, 0xd9, 0x2f, 0x51, 0xb2, 0x0d, 0xc1, 0xd1, 0x1f, 0x73, 0xe9, 0x51, 0x5c, 0x69, 0x94, 0x29, 0xb9, 0x0a, 0x4f, 0x69, 0x03, 0x12, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_608 = { .name = "xdh_wei25519_608", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_608_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_608_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_608_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_608_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 91 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 609 for XDH, tcId is 92 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_609_peerpubkey[] = { 0xda, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_609_ourpubkey[] = { 0x32, 0x14, 0x80, 0x9e, 0x2e, 0xaa, 0x3f, 0x13, 0xd8, 0xb6, 0xcc, 0x39, 0xe5, 0xb1, 0x40, 0xa1, 0x2a, 0xa1, 0xe6, 0x43, 0x99, 0x54, 0xbe, 0x23, 0x98, 0x0a, 0xeb, 0x6f, 0xc8, 0x7c, 0x06, 0x04, }; static const unsigned char xdh_wei25519_609_privkey[] = { 0x28, 0x5a, 0x6a, 0x7c, 0xee, 0xb7, 0x12, 0x2f, 0x2c, 0x78, 0xd9, 0x9c, 0x53, 0xb2, 0xa9, 0x02, 0xb4, 0x90, 0x89, 0x2f, 0x7d, 0xff, 0x32, 0x6f, 0x89, 0xd1, 0x26, 0x73, 0xc3, 0x10, 0x1b, 0x53, }; static const unsigned char xdh_wei25519_609_sharedsecret[] = { 0x9b, 0x01, 0x28, 0x77, 0x17, 0xd7, 0x2f, 0x4c, 0xfb, 0x58, 0x3e, 0xc8, 0x5f, 0x8f, 0x93, 0x68, 0x49, 0xb1, 0x7d, 0x97, 0x8d, 0xba, 0xe7, 0xb8, 0x37, 0xdb, 0x56, 0xa6, 0x2f, 0x10, 0x0a, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_609 = { .name = "xdh_wei25519_609", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_609_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_609_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_609_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_609_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 92 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 610 for XDH, tcId is 93 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_610_peerpubkey[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_610_ourpubkey[] = { 0x18, 0xf6, 0xb7, 0x9a, 0x64, 0x2c, 0xe0, 0xe1, 0xe6, 0x7d, 0x8c, 0x87, 0xae, 0xc9, 0x18, 0x93, 0x5c, 0x82, 0x71, 0x39, 0xee, 0x25, 0x71, 0x10, 0xca, 0x10, 0xfa, 0xf0, 0x8b, 0x20, 0xd9, 0x1e, }; static const unsigned char xdh_wei25519_610_privkey[] = { 0xc8, 0xe0, 0x33, 0x0a, 0xe9, 0xdc, 0xee, 0xff, 0x88, 0x7f, 0xba, 0x76, 0x12, 0x25, 0x87, 0x9a, 0x4b, 0xd2, 0xe0, 0xdb, 0x08, 0x79, 0x92, 0x44, 0x13, 0x6e, 0x47, 0x21, 0xb2, 0xc8, 0x89, 0x70, }; static const unsigned char xdh_wei25519_610_sharedsecret[] = { 0xdf, 0xe6, 0x08, 0x31, 0xc9, 0xf4, 0xf9, 0x6c, 0x81, 0x6e, 0x51, 0x04, 0x88, 0x04, 0xdb, 0xdc, 0x27, 0x79, 0x5d, 0x76, 0x0e, 0xce, 0xd7, 0x5e, 0xf5, 0x75, 0xcb, 0xe3, 0xb4, 0x64, 0x05, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_610 = { .name = "xdh_wei25519_610", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_610_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_610_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_610_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_610_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 93 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 611 for XDH, tcId is 94 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_611_peerpubkey[] = { 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_611_ourpubkey[] = { 0x0c, 0xa1, 0xd0, 0xf6, 0x63, 0x3b, 0x48, 0x9f, 0xcc, 0xe4, 0xc4, 0x4b, 0xb6, 0xd8, 0x42, 0xda, 0xdc, 0xf0, 0xdb, 0x8e, 0x6f, 0x2e, 0xbb, 0xd8, 0x27, 0xf5, 0x76, 0x3d, 0xc6, 0xf1, 0x10, 0x41, }; static const unsigned char xdh_wei25519_611_privkey[] = { 0x10, 0xdb, 0x62, 0x10, 0xfc, 0x1f, 0xb1, 0x33, 0x82, 0x47, 0x2f, 0xa1, 0x78, 0x7b, 0x00, 0x4b, 0x5d, 0x11, 0x86, 0x8a, 0xb3, 0xa7, 0x95, 0x10, 0xe0, 0xce, 0xe3, 0x0f, 0x4a, 0x6d, 0xf2, 0x6b, }; static const unsigned char xdh_wei25519_611_sharedsecret[] = { 0x50, 0xbf, 0xa8, 0x26, 0xca, 0x77, 0x03, 0x6d, 0xd2, 0xbb, 0xfd, 0x09, 0x2c, 0x3f, 0x78, 0xe2, 0xe4, 0xa1, 0xf9, 0x80, 0xd7, 0xc8, 0xe7, 0x8f, 0x2f, 0x14, 0xdc, 0xa3, 0xcc, 0xe5, 0xcc, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_611 = { .name = "xdh_wei25519_611", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_611_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_611_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_611_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_611_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 94 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 612 for XDH, tcId is 95 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_612_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_612_ourpubkey[] = { 0xa6, 0x9d, 0xd9, 0x6f, 0xcb, 0xac, 0xcb, 0x36, 0xdc, 0xb6, 0x3e, 0x7d, 0x52, 0x0f, 0xa5, 0x1d, 0xa6, 0x22, 0x8d, 0x71, 0x86, 0x02, 0xbd, 0x17, 0xef, 0x51, 0xb5, 0xb3, 0x24, 0x95, 0xb7, 0x54, }; static const unsigned char xdh_wei25519_612_privkey[] = { 0x90, 0x41, 0xc6, 0xe0, 0x44, 0xa2, 0x77, 0xdf, 0x84, 0x66, 0x27, 0x5c, 0xa8, 0xb5, 0xee, 0x0d, 0xa7, 0xbc, 0x02, 0x86, 0x48, 0x05, 0x4a, 0xde, 0x5c, 0x59, 0x2a, 0xdd, 0x30, 0x57, 0x47, 0x4e, }; static const unsigned char xdh_wei25519_612_sharedsecret[] = { 0x13, 0xda, 0x56, 0x95, 0xa4, 0xc2, 0x06, 0x11, 0x54, 0x09, 0xb5, 0x27, 0x7a, 0x93, 0x47, 0x82, 0xfe, 0x98, 0x5f, 0xa0, 0x50, 0xbc, 0x90, 0x2c, 0xba, 0x56, 0x16, 0xf9, 0x15, 0x6f, 0xe2, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_612 = { .name = "xdh_wei25519_612", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_612_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_612_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_612_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_612_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 95 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 613 for XDH, tcId is 96 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_613_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_613_ourpubkey[] = { 0xff, 0x3a, 0xe0, 0x33, 0x4d, 0xfe, 0xe8, 0xb9, 0xfd, 0x15, 0x03, 0x84, 0xcb, 0xbf, 0x6f, 0x1a, 0xe8, 0x20, 0xd1, 0xdf, 0x58, 0x26, 0xf3, 0x75, 0x5f, 0x8e, 0xf8, 0xe0, 0x5e, 0x20, 0xc6, 0x24, }; static const unsigned char xdh_wei25519_613_privkey[] = { 0xb8, 0xd4, 0x99, 0x04, 0x1a, 0x67, 0x13, 0xc0, 0xf6, 0xf8, 0x76, 0xdb, 0x74, 0x06, 0x58, 0x7f, 0xdb, 0x44, 0x58, 0x2f, 0x95, 0x42, 0x35, 0x6a, 0xe8, 0x9c, 0xfa, 0x95, 0x8a, 0x34, 0xd2, 0x66, }; static const unsigned char xdh_wei25519_613_sharedsecret[] = { 0x63, 0x48, 0x3b, 0x5d, 0x69, 0x23, 0x6c, 0x63, 0xcd, 0xdb, 0xed, 0x33, 0xd8, 0xe2, 0x2b, 0xae, 0xcc, 0x2b, 0x0c, 0xcf, 0x88, 0x65, 0x98, 0xe8, 0x63, 0xc8, 0x44, 0xd2, 0xbf, 0x25, 0x67, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_613 = { .name = "xdh_wei25519_613", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_613_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_613_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_613_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_613_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 96 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 614 for XDH, tcId is 97 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_614_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_614_ourpubkey[] = { 0xfb, 0x4e, 0x63, 0xc4, 0xc6, 0x56, 0x77, 0x2c, 0x01, 0x22, 0x0f, 0x2d, 0x8c, 0x42, 0xb3, 0xc3, 0x93, 0x6b, 0x0d, 0xb8, 0x4e, 0xd8, 0x7d, 0xa8, 0x28, 0xe8, 0x42, 0xd1, 0x94, 0x95, 0xb7, 0x64, }; static const unsigned char xdh_wei25519_614_privkey[] = { 0xc8, 0x5f, 0x08, 0xe6, 0x0c, 0x84, 0x5f, 0x82, 0x09, 0x91, 0x41, 0xa6, 0x6d, 0xc4, 0x58, 0x3d, 0x2b, 0x10, 0x40, 0x46, 0x2c, 0x54, 0x4d, 0x33, 0xd0, 0x45, 0x3b, 0x20, 0xb1, 0xa6, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_614_sharedsecret[] = { 0xe9, 0xdb, 0x74, 0xbc, 0x88, 0xd0, 0xd9, 0xbf, 0x04, 0x6d, 0xdd, 0x13, 0xf9, 0x43, 0xbc, 0xcb, 0xe6, 0xdb, 0xb4, 0x7d, 0x49, 0x32, 0x3f, 0x8d, 0xfe, 0xed, 0xc4, 0xa6, 0x94, 0x99, 0x1a, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_614 = { .name = "xdh_wei25519_614", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_614_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_614_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_614_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_614_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 97 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 615 for XDH, tcId is 98 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_615_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_615_ourpubkey[] = { 0x3b, 0xb8, 0x22, 0xd7, 0xd8, 0x88, 0xa2, 0x7c, 0xda, 0xa3, 0xe7, 0x91, 0xf7, 0xaf, 0x82, 0x9b, 0x48, 0x77, 0x53, 0x47, 0x33, 0x75, 0x8a, 0xcf, 0x55, 0x0e, 0xbb, 0x53, 0x0a, 0x5d, 0x9f, 0x66, }; static const unsigned char xdh_wei25519_615_privkey[] = { 0x78, 0x87, 0x88, 0x9b, 0xac, 0x4c, 0x62, 0x9a, 0x10, 0x1d, 0x37, 0x24, 0xf2, 0xed, 0x8b, 0x98, 0xd9, 0x36, 0xfd, 0xe7, 0x9e, 0x1a, 0x1f, 0x77, 0xd8, 0x67, 0x79, 0x62, 0x6b, 0xf8, 0xf2, 0x63, }; static const unsigned char xdh_wei25519_615_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_615 = { .name = "xdh_wei25519_615", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_615_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_615_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_615_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_615_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819968, tcId is 98 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 616 for XDH, tcId is 99 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_616_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_616_ourpubkey[] = { 0x03, 0x50, 0xa6, 0x98, 0x86, 0xd5, 0x33, 0x75, 0xcd, 0xd4, 0x50, 0xc9, 0x6f, 0x6a, 0xa7, 0xdb, 0xf9, 0x1a, 0x9e, 0x17, 0xd7, 0x99, 0x65, 0x09, 0x25, 0xcb, 0x55, 0x5c, 0x9b, 0x78, 0x3b, 0x59, }; static const unsigned char xdh_wei25519_616_privkey[] = { 0xe0, 0x79, 0x71, 0xee, 0x82, 0x0e, 0x48, 0xb0, 0xb2, 0x66, 0xd8, 0xbe, 0x3c, 0xdb, 0xbb, 0x5e, 0x90, 0x0a, 0x43, 0xf5, 0x9e, 0xe8, 0x53, 0x5c, 0x65, 0x72, 0x41, 0x86, 0x15, 0xde, 0x49, 0x62, }; static const unsigned char xdh_wei25519_616_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_616 = { .name = "xdh_wei25519_616", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_616_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_616_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_616_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_616_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819969, tcId is 99 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 617 for XDH, tcId is 100 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_617_peerpubkey[] = { 0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1, 0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3, 0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c, }; static const unsigned char xdh_wei25519_617_ourpubkey[] = { 0x1c, 0x9f, 0xd8, 0x8f, 0x45, 0x60, 0x6d, 0x93, 0x2a, 0x80, 0xc7, 0x18, 0x24, 0xae, 0x15, 0x1d, 0x15, 0xd7, 0x3e, 0x77, 0xde, 0x38, 0xe8, 0xe0, 0x00, 0x85, 0x2e, 0x61, 0x4f, 0xae, 0x70, 0x19, }; static const unsigned char xdh_wei25519_617_privkey[] = { 0xa0, 0x46, 0xe3, 0x6b, 0xf0, 0x52, 0x7c, 0x9d, 0x3b, 0x16, 0x15, 0x4b, 0x82, 0x46, 0x5e, 0xdd, 0x62, 0x14, 0x4c, 0x0a, 0xc1, 0xfc, 0x5a, 0x18, 0x50, 0x6a, 0x22, 0x44, 0xba, 0x44, 0x9a, 0x44, }; static const unsigned char xdh_wei25519_617_sharedsecret[] = { 0xc3, 0xda, 0x55, 0x37, 0x9d, 0xe9, 0xc6, 0x90, 0x8e, 0x94, 0xea, 0x4d, 0xf2, 0x8d, 0x08, 0x4f, 0x32, 0xec, 0xcf, 0x03, 0x49, 0x1c, 0x71, 0xf7, 0x54, 0xb4, 0x07, 0x55, 0x77, 0xa2, 0x85, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_617 = { .name = "xdh_wei25519_617", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_617_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_617_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_617_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_617_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 7748, tcId is 100 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 618 for XDH, tcId is 101 in file x25519_jwk_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')] */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_618_peerpubkey[] = { 0xe5, 0x21, 0x0f, 0x12, 0x78, 0x68, 0x11, 0xd3, 0xf4, 0xb7, 0x95, 0x9d, 0x05, 0x38, 0xae, 0x2c, 0x31, 0xdb, 0xe7, 0x10, 0x6f, 0xc0, 0x3c, 0x3e, 0xfc, 0x4c, 0xd5, 0x49, 0xc7, 0x15, 0xa4, 0x13, }; static const unsigned char xdh_wei25519_618_ourpubkey[] = { 0xff, 0x63, 0xfe, 0x57, 0xbf, 0xbf, 0x43, 0xfa, 0x3f, 0x56, 0x36, 0x28, 0xb1, 0x49, 0xaf, 0x70, 0x4d, 0x3d, 0xb6, 0x25, 0x36, 0x9c, 0x49, 0x98, 0x36, 0x50, 0x34, 0x7a, 0x6a, 0x71, 0xe0, 0x0e, }; static const unsigned char xdh_wei25519_618_privkey[] = { 0x48, 0x66, 0xe9, 0xd4, 0xd1, 0xb4, 0x67, 0x3c, 0x5a, 0xd2, 0x26, 0x91, 0x95, 0x7d, 0x6a, 0xf5, 0xc1, 0x1b, 0x64, 0x21, 0xe0, 0xea, 0x01, 0xd4, 0x2c, 0xa4, 0x16, 0x9e, 0x79, 0x18, 0xba, 0x4d, }; static const unsigned char xdh_wei25519_618_sharedsecret[] = { 0x95, 0xcb, 0xde, 0x94, 0x76, 0xe8, 0x90, 0x7d, 0x7a, 0xad, 0xe4, 0x5c, 0xb4, 0xb8, 0x73, 0xf8, 0x8b, 0x59, 0x5a, 0x68, 0x79, 0x9f, 0xa1, 0x52, 0xe6, 0xf8, 0xf7, 0x64, 0x7a, 0xac, 0x79, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_618 = { .name = "xdh_wei25519_618", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_618_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_618_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_618_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_618_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "RFC 7748, tcId is 101 in file x25519_jwk_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')]", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 619 for XDH, tcId is 102 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_619_peerpubkey[] = { 0xde, 0x9e, 0xdb, 0x7d, 0x7b, 0x7d, 0xc1, 0xb4, 0xd3, 0x5b, 0x61, 0xc2, 0xec, 0xe4, 0x35, 0x37, 0x3f, 0x83, 0x43, 0xc8, 0x5b, 0x78, 0x67, 0x4d, 0xad, 0xfc, 0x7e, 0x14, 0x6f, 0x88, 0x2b, 0x4f, }; static const unsigned char xdh_wei25519_619_ourpubkey[] = { 0x85, 0x20, 0xf0, 0x09, 0x89, 0x30, 0xa7, 0x54, 0x74, 0x8b, 0x7d, 0xdc, 0xb4, 0x3e, 0xf7, 0x5a, 0x0d, 0xbf, 0x3a, 0x0d, 0x26, 0x38, 0x1a, 0xf4, 0xeb, 0xa4, 0xa9, 0x8e, 0xaa, 0x9b, 0x4e, 0x6a, }; static const unsigned char xdh_wei25519_619_privkey[] = { 0x77, 0x07, 0x6d, 0x0a, 0x73, 0x18, 0xa5, 0x7d, 0x3c, 0x16, 0xc1, 0x72, 0x51, 0xb2, 0x66, 0x45, 0xdf, 0x4c, 0x2f, 0x87, 0xeb, 0xc0, 0x99, 0x2a, 0xb1, 0x77, 0xfb, 0xa5, 0x1d, 0xb9, 0x2c, 0x2a, }; static const unsigned char xdh_wei25519_619_sharedsecret[] = { 0x4a, 0x5d, 0x9d, 0x5b, 0xa4, 0xce, 0x2d, 0xe1, 0x72, 0x8e, 0x3b, 0xf4, 0x80, 0x35, 0x0f, 0x25, 0xe0, 0x7e, 0x21, 0xc9, 0x47, 0xd1, 0x9e, 0x33, 0x76, 0xf0, 0x9b, 0x3c, 0x1e, 0x16, 0x17, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_619 = { .name = "xdh_wei25519_619", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_619_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_619_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_619_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_619_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 8037, Section A.6, tcId is 102 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 620 for XDH, tcId is 103 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_620_peerpubkey[] = { 0xb7, 0xb6, 0xd3, 0x9c, 0x76, 0x5c, 0xb6, 0x0c, 0x0c, 0x85, 0x42, 0xf4, 0xf3, 0x95, 0x2f, 0xfb, 0x51, 0xd3, 0x00, 0x2d, 0x4a, 0xeb, 0x9f, 0x8f, 0xf9, 0x88, 0xb1, 0x92, 0x04, 0x3e, 0x6d, 0x0a, }; static const unsigned char xdh_wei25519_620_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_620_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_620_sharedsecret[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_620 = { .name = "xdh_wei25519_620", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_620_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_620_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_620_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_620_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 103 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 621 for XDH, tcId is 104 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_621_peerpubkey[] = { 0x3b, 0x18, 0xdf, 0x1e, 0x50, 0xb8, 0x99, 0xeb, 0xd5, 0x88, 0xc3, 0x16, 0x1c, 0xbd, 0x3b, 0xf9, 0x8e, 0xbc, 0xc2, 0xc1, 0xf7, 0xdf, 0x53, 0xb8, 0x11, 0xbd, 0x0e, 0x91, 0xb4, 0xd5, 0x15, 0x3d, }; static const unsigned char xdh_wei25519_621_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_621_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_621_sharedsecret[] = { 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_621 = { .name = "xdh_wei25519_621", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_621_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_621_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_621_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_621_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 104 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 622 for XDH, tcId is 105 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_622_peerpubkey[] = { 0xca, 0xb6, 0xf9, 0xe7, 0xd8, 0xce, 0x00, 0xdf, 0xce, 0xa9, 0xbb, 0xd8, 0xf0, 0x69, 0xef, 0x7f, 0xb2, 0xac, 0x50, 0x4a, 0xbf, 0x83, 0xb8, 0x7d, 0xb6, 0x01, 0xb5, 0xae, 0x0a, 0x7f, 0x76, 0x15, }; static const unsigned char xdh_wei25519_622_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_622_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_622_sharedsecret[] = { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_622 = { .name = "xdh_wei25519_622", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_622_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_622_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_622_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_622_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 105 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 623 for XDH, tcId is 106 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_623_peerpubkey[] = { 0x49, 0x77, 0xd0, 0xd8, 0x97, 0xe1, 0xba, 0x56, 0x65, 0x90, 0xf6, 0x0f, 0x2e, 0xb0, 0xdb, 0x6f, 0x7b, 0x24, 0xc1, 0x3d, 0x43, 0x69, 0x18, 0xcc, 0xfd, 0x32, 0x70, 0x8d, 0xfa, 0xd7, 0xe2, 0x47, }; static const unsigned char xdh_wei25519_623_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_623_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_623_sharedsecret[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_623 = { .name = "xdh_wei25519_623", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_623_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_623_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_623_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_623_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 106 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 624 for XDH, tcId is 107 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_624_peerpubkey[] = { 0x98, 0x73, 0x0b, 0xc0, 0x3e, 0x29, 0xe8, 0xb0, 0x57, 0xfb, 0x1d, 0x20, 0xef, 0x8c, 0x0b, 0xff, 0xc8, 0x22, 0x48, 0x5d, 0x3d, 0xb7, 0xf4, 0x5f, 0x4e, 0x3c, 0xc2, 0xc3, 0xc6, 0xd1, 0xd1, 0x4c, }; static const unsigned char xdh_wei25519_624_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_624_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_624_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_624 = { .name = "xdh_wei25519_624", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_624_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_624_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_624_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_624_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 107 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 625 for XDH, tcId is 108 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_625_peerpubkey[] = { 0x97, 0xb4, 0xff, 0xf6, 0x82, 0xdf, 0x7f, 0x09, 0x6c, 0xd1, 0x75, 0x65, 0x69, 0xe2, 0x52, 0xdb, 0x48, 0x2d, 0x45, 0x40, 0x6a, 0x31, 0x98, 0xa1, 0xaf, 0xf2, 0x82, 0xa5, 0xda, 0x47, 0x4c, 0x49, }; static const unsigned char xdh_wei25519_625_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_625_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_625_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_625 = { .name = "xdh_wei25519_625", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_625_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_625_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_625_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_625_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 108 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 626 for XDH, tcId is 109 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_626_peerpubkey[] = { 0x31, 0x77, 0x81, 0xb0, 0x16, 0x3b, 0xae, 0x74, 0xac, 0xcc, 0x06, 0xc0, 0xd4, 0x4e, 0xf9, 0xa9, 0x11, 0xa2, 0x2b, 0x0d, 0x37, 0xfa, 0xf7, 0x72, 0x66, 0x21, 0x59, 0x1f, 0x93, 0x43, 0xea, 0x2f, }; static const unsigned char xdh_wei25519_626_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_626_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_626_sharedsecret[] = { 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_626 = { .name = "xdh_wei25519_626", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_626_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_626_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_626_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_626_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 109 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 627 for XDH, tcId is 110 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_627_peerpubkey[] = { 0x7e, 0x26, 0xf8, 0xf2, 0x4c, 0xb5, 0x90, 0x02, 0x7f, 0x9d, 0x1b, 0xc4, 0x9b, 0x0e, 0x1a, 0x24, 0x2c, 0x7d, 0x8f, 0x43, 0x62, 0x4d, 0x3e, 0x8f, 0xab, 0x28, 0xee, 0x08, 0xe0, 0x2c, 0xb4, 0x5e, }; static const unsigned char xdh_wei25519_627_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_627_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_627_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_627 = { .name = "xdh_wei25519_627", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_627_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_627_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_627_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_627_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 110 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 628 for XDH, tcId is 111 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_628_peerpubkey[] = { 0xe9, 0x6d, 0x27, 0x80, 0xe5, 0x46, 0x9a, 0x74, 0x62, 0x0a, 0xb5, 0xaa, 0x2f, 0x62, 0x15, 0x1d, 0x14, 0x0c, 0x47, 0x33, 0x20, 0xdb, 0xe1, 0xb0, 0x28, 0xf1, 0xa4, 0x8f, 0x8e, 0x76, 0xf9, 0x5f, }; static const unsigned char xdh_wei25519_628_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_628_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_628_sharedsecret[] = { 0xe5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_628 = { .name = "xdh_wei25519_628", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_628_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_628_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_628_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_628_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 111 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 629 for XDH, tcId is 112 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_629_peerpubkey[] = { 0x8d, 0x61, 0x2c, 0x58, 0x31, 0xaa, 0x64, 0xb0, 0x57, 0x30, 0x0e, 0x7e, 0x31, 0x0f, 0x3a, 0xa3, 0x32, 0xaf, 0x34, 0x06, 0x6f, 0xef, 0xca, 0xb2, 0xb0, 0x89, 0xc9, 0x59, 0x28, 0x78, 0xf8, 0x32, }; static const unsigned char xdh_wei25519_629_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_629_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_629_sharedsecret[] = { 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_629 = { .name = "xdh_wei25519_629", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_629_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_629_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_629_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_629_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 112 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 630 for XDH, tcId is 113 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_630_peerpubkey[] = { 0x8d, 0x44, 0x10, 0x8d, 0x05, 0xd9, 0x40, 0xd3, 0xdf, 0xe5, 0x64, 0x7e, 0xa7, 0xa8, 0x7b, 0xe2, 0x4d, 0x0d, 0x03, 0x6c, 0x9f, 0x0a, 0x95, 0xa2, 0x38, 0x6b, 0x83, 0x9e, 0x7b, 0x7b, 0xf1, 0x45, }; static const unsigned char xdh_wei25519_630_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_630_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_630_sharedsecret[] = { 0xdd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_630 = { .name = "xdh_wei25519_630", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_630_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_630_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_630_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_630_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 113 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 631 for XDH, tcId is 114 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_631_peerpubkey[] = { 0x21, 0xa3, 0x5d, 0x5d, 0xb1, 0xb6, 0x23, 0x7c, 0x73, 0x9b, 0x56, 0x34, 0x5a, 0x93, 0x0a, 0xee, 0xe3, 0x73, 0xcd, 0xcf, 0xb4, 0x70, 0x12, 0x66, 0x78, 0x2a, 0x8a, 0xc5, 0x94, 0x91, 0x3b, 0x29, }; static const unsigned char xdh_wei25519_631_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_631_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_631_sharedsecret[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_631 = { .name = "xdh_wei25519_631", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_631_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_631_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_631_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_631_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 114 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 632 for XDH, tcId is 115 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_632_peerpubkey[] = { 0x3e, 0x5e, 0xfb, 0x63, 0xc3, 0x52, 0xce, 0x94, 0x27, 0x62, 0x48, 0x2b, 0xc9, 0x33, 0x7a, 0x5d, 0x35, 0xba, 0x55, 0x66, 0x47, 0x43, 0xac, 0x5e, 0x93, 0xd1, 0x1f, 0x95, 0x73, 0x36, 0xcb, 0x10, }; static const unsigned char xdh_wei25519_632_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_632_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_632_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_632 = { .name = "xdh_wei25519_632", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_632_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_632_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_632_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_632_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 115 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 633 for XDH, tcId is 116 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_633_peerpubkey[] = { 0x8e, 0x41, 0xf0, 0x5e, 0xa3, 0xc7, 0x65, 0x72, 0xbe, 0x10, 0x4a, 0xd8, 0x78, 0x8e, 0x97, 0x08, 0x63, 0xc6, 0xe2, 0xca, 0x3d, 0xaa, 0xe6, 0x4d, 0x1c, 0x2f, 0x46, 0xde, 0xcf, 0xff, 0xa5, 0x71, }; static const unsigned char xdh_wei25519_633_ourpubkey[] = { 0x7c, 0x6c, 0xcb, 0xa9, 0x2f, 0xf0, 0x0a, 0x6e, 0x83, 0x38, 0x2c, 0xd0, 0x6b, 0x9e, 0xc9, 0xe6, 0x58, 0x1e, 0xaf, 0xe3, 0xc2, 0x43, 0xf0, 0xc5, 0x2c, 0xf6, 0x8e, 0x06, 0x78, 0x43, 0xe3, 0x7a, }; static const unsigned char xdh_wei25519_633_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_633_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_633 = { .name = "xdh_wei25519_633", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_633_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_633_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_633_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_633_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 116 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 634 for XDH, tcId is 117 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_634_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_634_ourpubkey[] = { 0x0d, 0x80, 0x55, 0x38, 0xee, 0x4b, 0xa0, 0x00, 0x69, 0x7e, 0x92, 0xe3, 0x80, 0x13, 0xe6, 0xe8, 0x0c, 0xae, 0x56, 0x77, 0x05, 0xd3, 0x66, 0x9b, 0x79, 0x7b, 0x8c, 0xad, 0x9d, 0xfc, 0xc8, 0x14, }; static const unsigned char xdh_wei25519_634_privkey[] = { 0xc8, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0x6b, }; static const unsigned char xdh_wei25519_634_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_634 = { .name = "xdh_wei25519_634", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_634_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_634_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_634_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_634_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 117 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 635 for XDH, tcId is 118 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_635_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_635_ourpubkey[] = { 0x32, 0x79, 0x96, 0xcb, 0x51, 0xd5, 0xd6, 0xc3, 0xd2, 0x83, 0x0a, 0x82, 0xa9, 0x87, 0x0a, 0xf4, 0x08, 0x17, 0x6e, 0xfb, 0x86, 0x3c, 0x65, 0x5c, 0x0f, 0xab, 0x0a, 0x37, 0xa5, 0x00, 0x00, 0x22, }; static const unsigned char xdh_wei25519_635_privkey[] = { 0x90, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x43, }; static const unsigned char xdh_wei25519_635_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_635 = { .name = "xdh_wei25519_635", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_635_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_635_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_635_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_635_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 118 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 636 for XDH, tcId is 119 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_636_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_636_ourpubkey[] = { 0x38, 0x30, 0x56, 0x32, 0xc3, 0x2a, 0x41, 0x57, 0xaa, 0x16, 0x07, 0x05, 0x13, 0xc3, 0x60, 0x5b, 0x01, 0x3e, 0x90, 0xe7, 0x2b, 0xe0, 0xcd, 0x78, 0xd1, 0x86, 0x8e, 0xe9, 0x38, 0x46, 0x9a, 0x6f, }; static const unsigned char xdh_wei25519_636_privkey[] = { 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x51, }; static const unsigned char xdh_wei25519_636_sharedsecret[] = { 0x0c, 0x50, 0xac, 0x2b, 0xfb, 0x68, 0x15, 0xb4, 0x7d, 0x07, 0x34, 0xc5, 0x98, 0x13, 0x79, 0x88, 0x2a, 0x24, 0xa2, 0xde, 0x61, 0x66, 0x85, 0x3c, 0x73, 0x53, 0x29, 0xd9, 0x78, 0xba, 0xee, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_636 = { .name = "xdh_wei25519_636", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_636_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_636_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_636_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_636_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 119 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 637 for XDH, tcId is 120 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_637_peerpubkey[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_637_ourpubkey[] = { 0x9c, 0xd3, 0x2c, 0x78, 0xcb, 0x88, 0x47, 0xf3, 0x53, 0x71, 0x8b, 0xdf, 0x94, 0xea, 0x0d, 0x6f, 0x94, 0x16, 0xc4, 0x96, 0xc3, 0x12, 0xe5, 0x28, 0x4a, 0x1c, 0x58, 0xa3, 0xed, 0x39, 0xb8, 0x76, }; static const unsigned char xdh_wei25519_637_privkey[] = { 0x08, 0x40, 0xa8, 0xaf, 0x5b, 0xc4, 0xc4, 0x8d, 0xa8, 0x85, 0x0e, 0x97, 0x3d, 0x7e, 0x14, 0x22, 0x0f, 0x45, 0xc1, 0x92, 0xce, 0xa4, 0x02, 0x0d, 0x37, 0x7e, 0xec, 0xd2, 0x5c, 0x7c, 0x36, 0x43, }; static const unsigned char xdh_wei25519_637_sharedsecret[] = { 0x77, 0x55, 0x71, 0x37, 0xa2, 0xa2, 0xa6, 0x51, 0xc4, 0x96, 0x27, 0xa9, 0xb2, 0x39, 0xac, 0x1f, 0x2b, 0xf7, 0x8b, 0x8a, 0x3e, 0x72, 0x16, 0x8c, 0xce, 0xcc, 0x10, 0xa5, 0x1f, 0xc5, 0xae, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_637 = { .name = "xdh_wei25519_637", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_637_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_637_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_637_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_637_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 120 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 638 for XDH, tcId is 121 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_638_peerpubkey[] = { 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_638_ourpubkey[] = { 0x80, 0x1d, 0x13, 0xa0, 0x99, 0x09, 0xc9, 0x11, 0x43, 0x11, 0xd9, 0x31, 0xc5, 0x45, 0xe2, 0x4b, 0x16, 0xc4, 0x02, 0xd1, 0xce, 0xc1, 0xf1, 0x40, 0x73, 0xac, 0xf6, 0x26, 0x3f, 0x9a, 0xfa, 0x69, }; static const unsigned char xdh_wei25519_638_privkey[] = { 0x00, 0x92, 0x22, 0x9c, 0x75, 0x3a, 0x71, 0x28, 0x4d, 0x08, 0x53, 0x90, 0x94, 0x70, 0xad, 0x84, 0x7a, 0xb6, 0x2f, 0x43, 0x9e, 0xa5, 0x14, 0x82, 0xfb, 0x41, 0xd3, 0x0c, 0xc3, 0xb4, 0x47, 0x43, }; static const unsigned char xdh_wei25519_638_sharedsecret[] = { 0xc8, 0x8e, 0x71, 0x9a, 0xe5, 0xc2, 0x24, 0x8b, 0x5f, 0x90, 0xda, 0x34, 0x6a, 0x92, 0xae, 0x21, 0x4f, 0x44, 0xa5, 0xd1, 0x29, 0xfd, 0x4e, 0x9c, 0x26, 0xcf, 0x6a, 0x0d, 0xa1, 0xef, 0xe0, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_638 = { .name = "xdh_wei25519_638", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_638_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_638_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_638_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_638_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 121 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 639 for XDH, tcId is 122 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_639_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_639_ourpubkey[] = { 0x51, 0x68, 0x29, 0x6b, 0x66, 0x95, 0x64, 0x3c, 0xb0, 0x9b, 0x91, 0x7b, 0xc0, 0x9f, 0x41, 0x76, 0x72, 0xb9, 0x17, 0x9d, 0x98, 0x8d, 0x6d, 0x82, 0x9e, 0x65, 0xb5, 0x14, 0x2d, 0x79, 0x40, 0x4c, }; static const unsigned char xdh_wei25519_639_privkey[] = { 0xb8, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x5b, }; static const unsigned char xdh_wei25519_639_sharedsecret[] = { 0x4b, 0xf6, 0x78, 0x9c, 0x7e, 0xa0, 0x36, 0xf9, 0x73, 0xcd, 0xe0, 0xaf, 0x02, 0xd6, 0xfd, 0xb9, 0xb6, 0x4a, 0x0b, 0x95, 0x70, 0x22, 0x11, 0x14, 0x39, 0x57, 0x0f, 0xad, 0x7d, 0x7a, 0x45, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_639 = { .name = "xdh_wei25519_639", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_639_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_639_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_639_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_639_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 122 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 640 for XDH, tcId is 123 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_640_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_640_ourpubkey[] = { 0xa1, 0x37, 0xc9, 0xbe, 0x28, 0x5c, 0x56, 0x1e, 0xb5, 0x51, 0xad, 0x5e, 0xfb, 0xe6, 0x28, 0x75, 0x44, 0x7a, 0xbf, 0x67, 0xda, 0x81, 0x00, 0x12, 0x8c, 0xb9, 0x05, 0x63, 0xce, 0xf5, 0xdc, 0x7c, }; static const unsigned char xdh_wei25519_640_privkey[] = { 0x68, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0x76, }; static const unsigned char xdh_wei25519_640_sharedsecret[] = { 0xbc, 0xac, 0x23, 0x5a, 0xe1, 0x5c, 0xc7, 0x14, 0x83, 0x72, 0xe1, 0x1f, 0x93, 0x15, 0xe3, 0xbc, 0x76, 0xce, 0xb9, 0x04, 0xb3, 0xd2, 0xa8, 0x24, 0x6b, 0xd9, 0xd9, 0xbe, 0x20, 0x82, 0xbb, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_640 = { .name = "xdh_wei25519_640", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_640_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_640_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_640_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_640_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 123 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 641 for XDH, tcId is 124 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_641_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_641_ourpubkey[] = { 0x45, 0xf0, 0x13, 0xd2, 0x86, 0xe8, 0x76, 0x06, 0x0e, 0x05, 0x56, 0x7d, 0x58, 0x1a, 0xc7, 0xe1, 0x16, 0x99, 0x01, 0xb3, 0xc3, 0xe3, 0xb4, 0x9d, 0x40, 0xe3, 0x1b, 0x81, 0xc3, 0x8c, 0x15, 0x1b, }; static const unsigned char xdh_wei25519_641_privkey[] = { 0x38, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0x74, }; static const unsigned char xdh_wei25519_641_sharedsecret[] = { 0x5d, 0xd7, 0xd1, 0x6f, 0xff, 0x25, 0xcc, 0x5f, 0xdf, 0x9e, 0x03, 0xc3, 0x15, 0x7c, 0xb0, 0xa2, 0x35, 0xce, 0xa1, 0x7d, 0x61, 0x8f, 0x36, 0xe6, 0xf1, 0x34, 0x61, 0x56, 0x7e, 0xde, 0xb9, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_641 = { .name = "xdh_wei25519_641", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_641_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_641_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_641_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_641_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 124 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 642 for XDH, tcId is 125 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_642_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_642_ourpubkey[] = { 0xdf, 0xe1, 0xb8, 0x84, 0xce, 0xac, 0x53, 0xdd, 0x62, 0x43, 0xf3, 0x2b, 0x82, 0x42, 0xfe, 0xbe, 0xb4, 0xd3, 0x27, 0x8f, 0x06, 0x69, 0x7b, 0x1d, 0x14, 0x2a, 0x2f, 0x3f, 0x12, 0xa6, 0x2c, 0x15, }; static const unsigned char xdh_wei25519_642_privkey[] = { 0x30, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x4b, }; static const unsigned char xdh_wei25519_642_sharedsecret[] = { 0x28, 0x16, 0xfd, 0x03, 0x1d, 0x51, 0xd6, 0x75, 0x0f, 0x92, 0x25, 0xed, 0xe9, 0x50, 0x62, 0x5c, 0xca, 0x47, 0x44, 0x1c, 0xa9, 0x7e, 0x43, 0x09, 0x26, 0x50, 0x39, 0x69, 0x91, 0xaf, 0xcb, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_642 = { .name = "xdh_wei25519_642", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_642_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_642_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_642_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_642_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 125 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 643 for XDH, tcId is 126 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_643_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_643_ourpubkey[] = { 0x25, 0xd0, 0xeb, 0xe4, 0x53, 0x8c, 0x31, 0xb0, 0xe9, 0xeb, 0xb1, 0x64, 0xe4, 0xfd, 0xb3, 0x3d, 0xdd, 0x14, 0x20, 0xe5, 0x28, 0x89, 0x63, 0xb8, 0x63, 0x2b, 0xbb, 0x45, 0x8f, 0x47, 0xb2, 0x1a, }; static const unsigned char xdh_wei25519_643_privkey[] = { 0xd8, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0x4f, }; static const unsigned char xdh_wei25519_643_sharedsecret[] = { 0x7e, 0xd8, 0xf2, 0xd5, 0x42, 0x4e, 0x7e, 0xbb, 0x3e, 0xdb, 0xdf, 0x4a, 0xbe, 0x45, 0x54, 0x47, 0xe5, 0xa4, 0x8b, 0x65, 0x8e, 0x64, 0xab, 0xd0, 0x6c, 0x21, 0x8f, 0x33, 0xbd, 0x15, 0x1f, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_643 = { .name = "xdh_wei25519_643", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_643_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_643_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_643_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_643_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 126 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 644 for XDH, tcId is 127 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_644_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_644_ourpubkey[] = { 0x42, 0x18, 0x13, 0x95, 0xcb, 0x0b, 0xc4, 0x27, 0x42, 0x9c, 0x61, 0x4f, 0xa8, 0x86, 0x16, 0xcd, 0xb0, 0xe3, 0xb1, 0x1f, 0x80, 0x9c, 0x00, 0x24, 0x8c, 0x78, 0xba, 0x01, 0x2c, 0x75, 0x38, 0x3b, }; static const unsigned char xdh_wei25519_644_privkey[] = { 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0x7e, }; static const unsigned char xdh_wei25519_644_sharedsecret[] = { 0xe8, 0x62, 0x0e, 0xd5, 0xca, 0x89, 0xc7, 0x2c, 0x5e, 0xa5, 0x50, 0x3e, 0x6d, 0xcd, 0x01, 0x13, 0x1c, 0xd5, 0xe8, 0x75, 0xc3, 0x0e, 0x13, 0xd5, 0xdc, 0x61, 0x9c, 0xe2, 0x8e, 0xc7, 0xd5, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_644 = { .name = "xdh_wei25519_644", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_644_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_644_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_644_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_644_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 127 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 645 for XDH, tcId is 128 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_645_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_645_ourpubkey[] = { 0xea, 0x9c, 0xcf, 0xea, 0x2e, 0xa8, 0x05, 0x8a, 0x5e, 0x64, 0x4b, 0xa0, 0xeb, 0x3f, 0x5d, 0x83, 0x7a, 0xe2, 0xb0, 0xb9, 0x12, 0xf2, 0x7d, 0xfd, 0xd2, 0xd9, 0x4d, 0xb3, 0x80, 0x15, 0xac, 0x36, }; static const unsigned char xdh_wei25519_645_privkey[] = { 0x20, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0x71, }; static const unsigned char xdh_wei25519_645_sharedsecret[] = { 0xce, 0xad, 0xb2, 0x64, 0x37, 0x9d, 0xca, 0xdd, 0x6e, 0x3b, 0xb8, 0xad, 0x24, 0xdd, 0x65, 0x3d, 0x2a, 0x60, 0x9d, 0xd7, 0x03, 0xd4, 0x1d, 0xa6, 0xca, 0xf3, 0xad, 0x00, 0xf0, 0x01, 0x86, 0x2c, }; static const wycheproof_xdh_test xdh_wei25519_645 = { .name = "xdh_wei25519_645", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_645_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_645_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_645_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_645_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 128 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 646 for XDH, tcId is 129 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_646_peerpubkey[] = { 0xa8, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_646_ourpubkey[] = { 0x64, 0x28, 0x72, 0xae, 0xa8, 0x32, 0xeb, 0xba, 0x17, 0xee, 0x79, 0x57, 0x96, 0xbb, 0x41, 0x5d, 0x22, 0xee, 0xd3, 0xf5, 0x85, 0x89, 0x43, 0x6a, 0xca, 0xa8, 0xed, 0x70, 0xa6, 0xb3, 0x84, 0x18, }; static const unsigned char xdh_wei25519_646_privkey[] = { 0x90, 0xb1, 0x50, 0xd4, 0x62, 0xde, 0x51, 0x20, 0x56, 0xd5, 0xbd, 0x55, 0x17, 0x30, 0x74, 0x96, 0x9b, 0x49, 0x6f, 0x26, 0x2f, 0xb6, 0x91, 0x6b, 0x73, 0x3f, 0x62, 0x63, 0xa8, 0x07, 0x89, 0x71, }; static const unsigned char xdh_wei25519_646_sharedsecret[] = { 0xf8, 0x6c, 0xc7, 0xbf, 0x1b, 0xe4, 0x95, 0x74, 0xfc, 0x97, 0xa0, 0x74, 0x28, 0x2e, 0x9b, 0xb5, 0xcd, 0x23, 0x8e, 0x00, 0x2b, 0xc8, 0xe9, 0xa7, 0xb8, 0x55, 0x2b, 0x2d, 0x60, 0xec, 0xcb, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_646 = { .name = "xdh_wei25519_646", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_646_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_646_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_646_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_646_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 129 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 647 for XDH, tcId is 130 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_647_peerpubkey[] = { 0xaa, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_647_ourpubkey[] = { 0x8a, 0x43, 0x81, 0x52, 0x61, 0x64, 0xe5, 0x93, 0x18, 0x6e, 0xff, 0xe3, 0x13, 0xbb, 0xeb, 0x95, 0xfb, 0x22, 0xca, 0x19, 0x25, 0x29, 0xc6, 0x8d, 0x74, 0xe7, 0x60, 0x27, 0xa8, 0x92, 0x73, 0x2f, }; static const unsigned char xdh_wei25519_647_privkey[] = { 0x98, 0x87, 0x28, 0x6b, 0x32, 0x61, 0xc8, 0xd8, 0x57, 0xa1, 0x6f, 0x6d, 0xb2, 0x12, 0x77, 0xf7, 0x5d, 0x88, 0xd4, 0xe8, 0x61, 0xb3, 0xeb, 0xe7, 0x59, 0x66, 0x99, 0x04, 0x7e, 0x81, 0x66, 0x68, }; static const unsigned char xdh_wei25519_647_sharedsecret[] = { 0xcc, 0xbb, 0x8f, 0xd9, 0xde, 0xe1, 0x65, 0xa3, 0x98, 0xb2, 0xdb, 0xd7, 0xc8, 0x39, 0x6f, 0x81, 0x73, 0x6c, 0x1b, 0x3d, 0xa3, 0x6b, 0x35, 0xfb, 0xec, 0x8f, 0x32, 0x6f, 0x38, 0xf9, 0x27, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_647 = { .name = "xdh_wei25519_647", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_647_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_647_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_647_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_647_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 130 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 648 for XDH, tcId is 131 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_648_peerpubkey[] = { 0x58, 0x50, 0x07, 0xa5, 0x93, 0x0d, 0x77, 0x62, 0x3c, 0xf2, 0x97, 0x56, 0x03, 0x8c, 0xa1, 0x97, 0xd3, 0xeb, 0xfd, 0x9e, 0x4c, 0x80, 0xa6, 0x95, 0x85, 0xef, 0xe0, 0x27, 0x40, 0x92, 0xc1, 0x15, }; static const unsigned char xdh_wei25519_648_ourpubkey[] = { 0x72, 0xdf, 0x31, 0x18, 0x4b, 0x47, 0x91, 0x4b, 0x97, 0xa1, 0xde, 0xce, 0x2d, 0xd2, 0x64, 0xbd, 0x73, 0xb5, 0xb4, 0x89, 0x93, 0x48, 0x45, 0xce, 0x92, 0x72, 0x52, 0x93, 0x96, 0x28, 0x45, 0x6e, }; static const unsigned char xdh_wei25519_648_privkey[] = { 0x20, 0xca, 0x2c, 0x85, 0xcc, 0x87, 0x62, 0xe9, 0x6b, 0x70, 0x47, 0xbf, 0x15, 0xc7, 0x1c, 0x05, 0x0f, 0xfe, 0x0e, 0xd1, 0x61, 0x60, 0x40, 0xa9, 0x53, 0xae, 0x32, 0xa1, 0x29, 0x7a, 0xd8, 0x71, }; static const unsigned char xdh_wei25519_648_sharedsecret[] = { 0x46, 0xad, 0xd6, 0xf4, 0x8f, 0xff, 0xf4, 0x61, 0x77, 0x7d, 0x4f, 0x89, 0xb6, 0xfd, 0xf1, 0x15, 0x5a, 0xa0, 0x51, 0xa9, 0x63, 0x87, 0xd4, 0x5f, 0x3e, 0x5e, 0x37, 0x1a, 0x23, 0x6b, 0x6e, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_648 = { .name = "xdh_wei25519_648", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_648_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_648_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_648_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_648_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 131 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 649 for XDH, tcId is 132 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_649_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_649_ourpubkey[] = { 0xc7, 0xbc, 0x7e, 0xd3, 0x30, 0x4f, 0xdd, 0xd9, 0x00, 0x0e, 0xdc, 0xa3, 0xad, 0x6d, 0xd4, 0x0a, 0xfb, 0x72, 0x17, 0x40, 0xe5, 0xc2, 0x1b, 0x55, 0xcc, 0x7a, 0x59, 0xb2, 0x80, 0x23, 0x4d, 0x0c, }; static const unsigned char xdh_wei25519_649_privkey[] = { 0xd0, 0x27, 0x65, 0x66, 0x05, 0xb1, 0x0b, 0xf1, 0x8d, 0xea, 0x28, 0xbc, 0x52, 0x54, 0x6f, 0x9f, 0x1f, 0x08, 0xce, 0xf0, 0x6c, 0xaf, 0xd2, 0x00, 0xfc, 0x84, 0xf8, 0x7d, 0xbb, 0x4e, 0xbe, 0x46, }; static const unsigned char xdh_wei25519_649_sharedsecret[] = { 0x1a, 0xdb, 0xe3, 0x22, 0x07, 0xe2, 0x1f, 0x71, 0xe1, 0xaf, 0x53, 0x88, 0x4d, 0x2a, 0x22, 0x76, 0x48, 0x1e, 0x29, 0x8e, 0x55, 0x7f, 0x4d, 0xac, 0xb3, 0x72, 0x0f, 0x24, 0x58, 0xe3, 0x08, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_649 = { .name = "xdh_wei25519_649", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_649_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_649_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_649_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_649_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 132 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 650 for XDH, tcId is 133 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_650_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_650_ourpubkey[] = { 0x91, 0x9a, 0x7c, 0xcc, 0x45, 0xe6, 0x63, 0xde, 0x8b, 0xc4, 0x3e, 0xd6, 0x7e, 0xa7, 0x20, 0xd7, 0x6d, 0x6f, 0x8c, 0x9e, 0xb6, 0x1a, 0x47, 0x4a, 0x05, 0x8c, 0x5e, 0xfc, 0xe9, 0x74, 0x9b, 0x27, }; static const unsigned char xdh_wei25519_650_privkey[] = { 0x48, 0x67, 0xa8, 0x3e, 0xe9, 0xd0, 0x1b, 0x75, 0x10, 0x84, 0x08, 0x67, 0xdb, 0x1a, 0xf6, 0xa6, 0x04, 0x9b, 0xdb, 0xb0, 0x56, 0xb7, 0x44, 0x43, 0xf7, 0x0c, 0x35, 0x8e, 0x16, 0x2c, 0x88, 0x67, }; static const unsigned char xdh_wei25519_650_sharedsecret[] = { 0xe1, 0x2c, 0xc5, 0x8f, 0xbe, 0xb7, 0x0a, 0x5e, 0x35, 0xc8, 0x61, 0xc3, 0x37, 0x10, 0xbe, 0x65, 0x16, 0xa6, 0xa9, 0x2e, 0x52, 0x37, 0x60, 0x60, 0x21, 0x1b, 0x24, 0x87, 0xdb, 0x54, 0x2b, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_650 = { .name = "xdh_wei25519_650", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_650_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_650_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_650_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_650_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 133 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 651 for XDH, tcId is 134 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_651_peerpubkey[] = { 0xaf, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_651_ourpubkey[] = { 0x6b, 0x51, 0x9c, 0x85, 0x1b, 0x9c, 0x35, 0x58, 0xcb, 0xcb, 0xa1, 0xee, 0x9d, 0xb4, 0x85, 0x91, 0xfa, 0x49, 0x2f, 0xd0, 0x25, 0xca, 0x02, 0x40, 0x3a, 0x5a, 0x6a, 0x5d, 0x68, 0xae, 0x7d, 0x77, }; static const unsigned char xdh_wei25519_651_privkey[] = { 0xa0, 0x15, 0x97, 0x0a, 0x8a, 0xdd, 0x94, 0x0f, 0xca, 0x5b, 0x1b, 0x5d, 0x23, 0x87, 0x53, 0x97, 0xd5, 0x47, 0xd8, 0xd4, 0x94, 0xfc, 0xb3, 0x14, 0xf2, 0x04, 0x5a, 0x67, 0xa2, 0xd1, 0x2c, 0x4b, }; static const unsigned char xdh_wei25519_651_sharedsecret[] = { 0x42, 0x1b, 0xed, 0x1b, 0x26, 0xda, 0x1e, 0x9a, 0xdb, 0xea, 0xda, 0x1f, 0x32, 0xb9, 0x1a, 0x0f, 0xb4, 0xce, 0xd0, 0xf1, 0x11, 0x0e, 0x0a, 0x4a, 0x88, 0xe7, 0x35, 0xa1, 0x9e, 0xe4, 0x57, 0x1e, }; static const wycheproof_xdh_test xdh_wei25519_651 = { .name = "xdh_wei25519_651", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_651_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_651_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_651_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_651_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 134 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 652 for XDH, tcId is 135 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_652_peerpubkey[] = { 0xb1, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_652_ourpubkey[] = { 0xe0, 0x6f, 0xb4, 0x1d, 0x23, 0xe8, 0x03, 0x5b, 0x0d, 0x9c, 0xec, 0x7c, 0x4e, 0x93, 0xdc, 0xf3, 0x20, 0x88, 0xc8, 0x85, 0x48, 0xc4, 0xee, 0xdb, 0x5f, 0x61, 0x2e, 0x84, 0x02, 0xa8, 0x78, 0x6d, }; static const unsigned char xdh_wei25519_652_privkey[] = { 0x40, 0x58, 0xcb, 0x6b, 0x9a, 0xab, 0xa0, 0x2a, 0x33, 0x8a, 0xaa, 0x39, 0x2d, 0xbc, 0x10, 0x03, 0x9e, 0x26, 0xe9, 0xe4, 0x44, 0x11, 0x7e, 0x75, 0x8e, 0x24, 0xc5, 0xd8, 0xb2, 0x32, 0xea, 0x5e, }; static const unsigned char xdh_wei25519_652_sharedsecret[] = { 0xd7, 0xb4, 0x74, 0x63, 0xe2, 0xf4, 0xca, 0x9a, 0x1a, 0x7d, 0xee, 0xa0, 0x98, 0xda, 0x8e, 0x74, 0xac, 0x3b, 0x4a, 0x10, 0x90, 0x83, 0xd9, 0x97, 0x25, 0x9b, 0x12, 0x99, 0x2e, 0x7e, 0x7e, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_652 = { .name = "xdh_wei25519_652", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_652_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_652_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_652_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_652_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 135 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 653 for XDH, tcId is 136 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_653_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, }; static const unsigned char xdh_wei25519_653_ourpubkey[] = { 0x49, 0x85, 0x2e, 0x36, 0x22, 0x17, 0x05, 0x26, 0xf6, 0xac, 0xf9, 0x94, 0xa6, 0x84, 0x41, 0x88, 0x21, 0xa9, 0x59, 0x8d, 0x90, 0xb3, 0xa6, 0x16, 0xb1, 0x0b, 0x58, 0x24, 0x78, 0x94, 0x32, 0x70, }; static const unsigned char xdh_wei25519_653_privkey[] = { 0xb8, 0x76, 0xb0, 0x5d, 0xaf, 0xf0, 0x53, 0x0b, 0x13, 0x9d, 0x9e, 0x11, 0x25, 0x05, 0x63, 0x41, 0x80, 0x77, 0x17, 0x82, 0x46, 0xc5, 0xfa, 0x70, 0x05, 0xba, 0x00, 0xe9, 0xb6, 0x64, 0x77, 0x63, }; static const unsigned char xdh_wei25519_653_sharedsecret[] = { 0x68, 0x6e, 0xb9, 0x10, 0xa9, 0x37, 0x21, 0x1b, 0x91, 0x47, 0xc8, 0xa0, 0x51, 0xa1, 0x19, 0x79, 0x06, 0x81, 0x8f, 0xdc, 0x62, 0x66, 0x68, 0xeb, 0x5f, 0x5d, 0x39, 0x4a, 0xfd, 0x86, 0xd4, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_653 = { .name = "xdh_wei25519_653", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_653_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_653_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_653_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_653_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 136 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 654 for XDH, tcId is 137 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_654_peerpubkey[] = { 0x22, 0x23, 0x1c, 0x64, 0xef, 0x73, 0xad, 0x62, 0x31, 0x8b, 0x8a, 0x87, 0xbc, 0x38, 0xe2, 0x72, 0xe1, 0xbb, 0x8b, 0xf1, 0xa6, 0x0d, 0x7c, 0x00, 0x47, 0x6d, 0x0b, 0x05, 0x9d, 0x7b, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_654_ourpubkey[] = { 0x25, 0xd0, 0x6e, 0xbf, 0x18, 0x3c, 0xf1, 0x4b, 0x0a, 0xe2, 0x45, 0xb3, 0x78, 0x6c, 0x25, 0x95, 0x4f, 0x18, 0x61, 0x4e, 0xfa, 0xc6, 0xb8, 0x99, 0xb0, 0x41, 0x6d, 0x69, 0x2b, 0x98, 0x8f, 0x46, }; static const unsigned char xdh_wei25519_654_privkey[] = { 0xd8, 0x7f, 0xd6, 0xaa, 0x5d, 0x8d, 0xee, 0xf6, 0xde, 0xe9, 0x61, 0x9a, 0x56, 0x84, 0x6a, 0x08, 0x29, 0x62, 0x05, 0x90, 0xf2, 0xda, 0x40, 0x83, 0x5d, 0x8e, 0x25, 0x15, 0x97, 0xe3, 0x90, 0x78, }; static const unsigned char xdh_wei25519_654_sharedsecret[] = { 0x09, 0x55, 0x97, 0x33, 0xb3, 0x5b, 0xcc, 0x6b, 0xb8, 0xac, 0x57, 0x4b, 0x5a, 0xbe, 0x3a, 0x4d, 0x88, 0x41, 0xde, 0xff, 0x05, 0x1c, 0x29, 0x4a, 0x07, 0x48, 0x7e, 0x3e, 0xec, 0x3c, 0x55, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_654 = { .name = "xdh_wei25519_654", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_654_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_654_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_654_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_654_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 137 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 655 for XDH, tcId is 138 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_655_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_655_ourpubkey[] = { 0x42, 0x3e, 0x8f, 0x33, 0x9c, 0x5f, 0x90, 0x42, 0x38, 0xc5, 0x96, 0x09, 0x56, 0x21, 0x28, 0xce, 0x6e, 0x32, 0x89, 0x41, 0xdc, 0x67, 0x47, 0xbd, 0x3f, 0x06, 0x16, 0x19, 0x18, 0x2e, 0x38, 0x7a, }; static const unsigned char xdh_wei25519_655_privkey[] = { 0x90, 0x03, 0x63, 0x21, 0xb6, 0x37, 0x51, 0xf7, 0x62, 0x2a, 0xa9, 0x3d, 0xa3, 0x4d, 0x85, 0xe5, 0x9c, 0xe8, 0x10, 0x09, 0xac, 0x5b, 0x9a, 0x06, 0x89, 0x21, 0xd8, 0x3b, 0xc4, 0x71, 0x5b, 0x57, }; static const unsigned char xdh_wei25519_655_sharedsecret[] = { 0xf7, 0xd5, 0xcb, 0xcf, 0x39, 0xeb, 0x72, 0x2b, 0x01, 0xed, 0x20, 0xc8, 0x55, 0x63, 0xeb, 0xb8, 0x1d, 0x07, 0x65, 0x11, 0xae, 0xad, 0x4c, 0xcc, 0x42, 0x90, 0x27, 0x86, 0x6b, 0x9f, 0xd2, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_655 = { .name = "xdh_wei25519_655", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_655_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_655_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_655_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_655_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 138 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 656 for XDH, tcId is 139 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_656_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_656_ourpubkey[] = { 0x55, 0xd0, 0x08, 0xc6, 0xda, 0x6d, 0xe7, 0x2e, 0xae, 0x5c, 0xfa, 0x2c, 0x67, 0xb0, 0xef, 0xaf, 0x59, 0x1c, 0x64, 0x39, 0xe2, 0x99, 0xa7, 0x9e, 0xc4, 0xab, 0x61, 0xe5, 0x7e, 0x76, 0x2c, 0x65, }; static const unsigned char xdh_wei25519_656_privkey[] = { 0xa0, 0x67, 0x81, 0xfd, 0x4c, 0x4a, 0x08, 0x74, 0xe0, 0x0e, 0x72, 0xba, 0x13, 0x1b, 0x9d, 0xd8, 0x7a, 0x83, 0xb2, 0x90, 0x4e, 0x29, 0x4d, 0xe1, 0x76, 0xe8, 0xa9, 0xaf, 0x1f, 0x69, 0x5d, 0x67, }; static const unsigned char xdh_wei25519_656_sharedsecret[] = { 0xe9, 0x95, 0xad, 0x6a, 0x1e, 0xc6, 0xc5, 0xab, 0x32, 0x92, 0x2c, 0xff, 0x9d, 0x20, 0x47, 0x21, 0x70, 0x46, 0x73, 0x14, 0x3c, 0x4a, 0x11, 0xde, 0xaa, 0x20, 0x3f, 0x3c, 0x81, 0x98, 0x9b, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_656 = { .name = "xdh_wei25519_656", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_656_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_656_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_656_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_656_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 139 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 657 for XDH, tcId is 140 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_657_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_657_ourpubkey[] = { 0xea, 0xe9, 0xe8, 0x0d, 0xb1, 0x2c, 0xc6, 0xe6, 0x20, 0xa2, 0x5e, 0x64, 0x19, 0xc6, 0x3d, 0xc2, 0xcc, 0xa7, 0x95, 0xba, 0x55, 0xda, 0x7a, 0x8c, 0x56, 0x34, 0x68, 0x0d, 0x28, 0xa6, 0xa1, 0x39, }; static const unsigned char xdh_wei25519_657_privkey[] = { 0xb8, 0x22, 0xd7, 0x2d, 0x8b, 0x68, 0xbd, 0xb4, 0xfb, 0xf6, 0x7e, 0x56, 0xa6, 0x1d, 0x67, 0x2b, 0x2c, 0x77, 0x47, 0xe9, 0x44, 0x79, 0xfe, 0x5a, 0xe4, 0x07, 0x2d, 0x0a, 0xcc, 0xdd, 0x65, 0x71, }; static const unsigned char xdh_wei25519_657_sharedsecret[] = { 0x32, 0xb6, 0xda, 0xbe, 0x01, 0xd1, 0x38, 0x67, 0xf3, 0xb5, 0xb0, 0x89, 0x2f, 0xef, 0xd8, 0x0d, 0xca, 0x66, 0x6f, 0x2e, 0xdc, 0x5a, 0xfb, 0x43, 0xcd, 0x0b, 0xaf, 0x70, 0x3c, 0x3e, 0x69, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_657 = { .name = "xdh_wei25519_657", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_657_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_657_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_657_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_657_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 140 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 658 for XDH, tcId is 141 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_658_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_658_ourpubkey[] = { 0x5a, 0x94, 0xf2, 0xf0, 0x3b, 0x53, 0x31, 0x2c, 0x78, 0xa4, 0x27, 0xa5, 0x4c, 0x50, 0xf1, 0x38, 0x09, 0x56, 0x9f, 0xc6, 0x83, 0x15, 0x21, 0xc1, 0xc5, 0xcc, 0x15, 0xb8, 0xa7, 0xf5, 0x52, 0x7b, }; static const unsigned char xdh_wei25519_658_privkey[] = { 0xd0, 0x8c, 0xe1, 0x23, 0x7e, 0x24, 0x8d, 0x02, 0xcd, 0xf6, 0x19, 0xd2, 0x0b, 0xea, 0x58, 0x48, 0xad, 0xe4, 0xf6, 0xff, 0xd1, 0x71, 0xb8, 0xde, 0xe8, 0x79, 0x3f, 0xc6, 0x7c, 0x45, 0x96, 0x40, }; static const unsigned char xdh_wei25519_658_sharedsecret[] = { 0xa9, 0x3d, 0x83, 0xfc, 0x9e, 0xa0, 0xf6, 0xcb, 0x0c, 0xc8, 0xb6, 0x31, 0xda, 0x60, 0x00, 0x19, 0xb7, 0x6c, 0xbb, 0x2e, 0xc5, 0x72, 0x22, 0xf2, 0xe4, 0x2d, 0xd5, 0x40, 0xe3, 0xda, 0x85, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_658 = { .name = "xdh_wei25519_658", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_658_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_658_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_658_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_658_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 141 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 659 for XDH, tcId is 142 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_659_peerpubkey[] = { 0xcb, 0xdc, 0xe3, 0x9b, 0x10, 0x8c, 0x52, 0x9d, 0xce, 0x74, 0x75, 0x78, 0x43, 0xc7, 0x1d, 0x8d, 0x1e, 0x44, 0x74, 0x0e, 0x59, 0xf2, 0x83, 0xff, 0xb8, 0x92, 0xf4, 0xfa, 0x62, 0x84, 0xc3, 0x4a, }; static const unsigned char xdh_wei25519_659_ourpubkey[] = { 0x6b, 0x66, 0x33, 0x25, 0x90, 0x75, 0x13, 0x3c, 0x26, 0xac, 0xe2, 0x22, 0x0e, 0x20, 0x11, 0xed, 0xbd, 0x3c, 0xe8, 0x4e, 0x3a, 0x54, 0x09, 0x5d, 0x70, 0x95, 0x01, 0x17, 0x7e, 0x6c, 0xdb, 0x1f, }; static const unsigned char xdh_wei25519_659_privkey[] = { 0x18, 0x0a, 0xe3, 0xc9, 0x28, 0x51, 0x4c, 0xfb, 0x9e, 0xdd, 0x06, 0xe7, 0xdc, 0x1d, 0x5d, 0x06, 0x61, 0x60, 0xe9, 0x67, 0x44, 0x5a, 0x5c, 0x58, 0xe4, 0x46, 0x3b, 0x69, 0xed, 0x20, 0x5e, 0x6d, }; static const unsigned char xdh_wei25519_659_sharedsecret[] = { 0x01, 0x7c, 0xbf, 0xa2, 0xb3, 0x8e, 0x9e, 0xf3, 0x29, 0x7a, 0x33, 0x9e, 0xcc, 0xe1, 0xa9, 0x17, 0xbd, 0xcf, 0x7e, 0x91, 0x00, 0x36, 0x08, 0x6a, 0x41, 0xd1, 0xe2, 0x2d, 0x04, 0x24, 0x18, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_659 = { .name = "xdh_wei25519_659", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_659_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_659_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_659_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_659_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 142 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 660 for XDH, tcId is 143 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_660_peerpubkey[] = { 0x3c, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_660_ourpubkey[] = { 0x07, 0x37, 0x00, 0x1f, 0xdc, 0xa3, 0x0a, 0x1b, 0x96, 0xf0, 0xb1, 0x33, 0x61, 0x7b, 0x6d, 0x09, 0xc2, 0xc0, 0x56, 0x1a, 0x62, 0x9a, 0xe0, 0xa2, 0x7f, 0x09, 0x4f, 0xb2, 0x33, 0x19, 0xd5, 0x6c, }; static const unsigned char xdh_wei25519_660_privkey[] = { 0xe8, 0x81, 0xd8, 0x06, 0xa1, 0x10, 0x56, 0x0c, 0xd8, 0xfe, 0xe8, 0x99, 0xd5, 0x9c, 0x02, 0x49, 0xf1, 0x23, 0x3a, 0x43, 0x22, 0xc4, 0x1a, 0xa3, 0x69, 0xc7, 0xa2, 0xa9, 0x9f, 0x5b, 0x59, 0x62, }; static const unsigned char xdh_wei25519_660_sharedsecret[] = { 0x71, 0x13, 0x39, 0x05, 0xb8, 0xa5, 0x7e, 0xa8, 0xc3, 0x8d, 0xe0, 0xec, 0xf2, 0x13, 0x69, 0x9a, 0x75, 0xb0, 0x96, 0xc2, 0xdf, 0x21, 0xf0, 0x7f, 0x7e, 0x9e, 0xb0, 0x3e, 0x9f, 0xa5, 0x3f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_660 = { .name = "xdh_wei25519_660", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_660_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_660_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_660_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_660_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 143 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 661 for XDH, tcId is 144 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_661_peerpubkey[] = { 0x3e, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_661_ourpubkey[] = { 0xf0, 0x8f, 0x78, 0x29, 0xf5, 0xba, 0x48, 0x0e, 0x0e, 0x7c, 0x4d, 0x7f, 0x3a, 0xc0, 0x99, 0x3a, 0x23, 0xce, 0x7d, 0x8e, 0x62, 0x6f, 0x93, 0xb0, 0xcd, 0x56, 0xbf, 0x2a, 0x94, 0x53, 0xbc, 0x5f, }; static const unsigned char xdh_wei25519_661_privkey[] = { 0x08, 0xe4, 0x10, 0xe1, 0xd7, 0xe8, 0xb9, 0x41, 0x12, 0x36, 0xaf, 0x4a, 0x35, 0xd6, 0xb6, 0x2a, 0x5d, 0x89, 0x31, 0x47, 0x8e, 0x4c, 0x62, 0x19, 0x7c, 0xfa, 0xfb, 0x49, 0x14, 0x67, 0xb1, 0x62, }; static const unsigned char xdh_wei25519_661_sharedsecret[] = { 0x3d, 0xc7, 0xb7, 0x0e, 0x11, 0x07, 0x66, 0xb2, 0xbf, 0x52, 0x52, 0x52, 0xeb, 0xed, 0x98, 0xa1, 0x00, 0xb2, 0xe5, 0x32, 0xdc, 0x69, 0x54, 0x44, 0x64, 0xda, 0x1b, 0xba, 0xb8, 0x62, 0x5f, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_661 = { .name = "xdh_wei25519_661", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_661_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_661_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_661_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_661_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 144 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 662 for XDH, tcId is 145 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_662_peerpubkey[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_662_ourpubkey[] = { 0x4c, 0x2f, 0x7f, 0xbd, 0x2b, 0x69, 0xdb, 0xc5, 0x82, 0x8b, 0xd0, 0x8e, 0xf0, 0xa9, 0xae, 0x59, 0x48, 0x97, 0xe5, 0xe5, 0x7d, 0xab, 0xb5, 0x05, 0x58, 0x6a, 0x23, 0x15, 0x02, 0xf7, 0xfe, 0x13, }; static const unsigned char xdh_wei25519_662_privkey[] = { 0xe0, 0x2f, 0xdf, 0x7e, 0x0e, 0xe3, 0xd5, 0x5b, 0x44, 0x40, 0xf0, 0x14, 0x32, 0xdd, 0x25, 0x3c, 0x94, 0x97, 0x93, 0xbc, 0x04, 0xda, 0x44, 0xdd, 0xec, 0xe8, 0x3e, 0x54, 0xc8, 0xc3, 0x9b, 0x40, }; static const unsigned char xdh_wei25519_662_sharedsecret[] = { 0xe3, 0x17, 0xe5, 0xcc, 0x43, 0x8b, 0x5f, 0x79, 0xea, 0xd5, 0x53, 0x3a, 0xc7, 0xc4, 0x55, 0x19, 0xa1, 0x17, 0xb3, 0x10, 0x33, 0xcc, 0x21, 0x40, 0xb1, 0x9e, 0xdf, 0x85, 0x72, 0x01, 0x12, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_662 = { .name = "xdh_wei25519_662", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_662_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_662_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_662_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_662_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 145 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 663 for XDH, tcId is 146 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_663_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_663_ourpubkey[] = { 0x4b, 0x1c, 0x86, 0xd0, 0x8e, 0x14, 0x85, 0x6d, 0xd0, 0x6d, 0x67, 0x07, 0xba, 0x61, 0xc0, 0x18, 0x80, 0xb6, 0x60, 0x21, 0x60, 0x36, 0x43, 0x69, 0x5f, 0xa6, 0x67, 0x8b, 0x24, 0x4b, 0xd7, 0x0d, }; static const unsigned char xdh_wei25519_663_privkey[] = { 0xf0, 0x5d, 0x18, 0xf6, 0x8e, 0xf7, 0xa5, 0x86, 0x5c, 0x14, 0xdb, 0x3a, 0x9c, 0x25, 0x5f, 0xdf, 0x2d, 0xab, 0xea, 0x2a, 0xa3, 0x65, 0x81, 0xe9, 0x4f, 0x68, 0xb7, 0x27, 0xb5, 0x82, 0x86, 0x7b, }; static const unsigned char xdh_wei25519_663_sharedsecret[] = { 0xd8, 0x68, 0x10, 0x51, 0x6a, 0xed, 0xdc, 0x18, 0x06, 0x10, 0x36, 0xf5, 0x99, 0xa9, 0xeb, 0x84, 0xd1, 0xc6, 0x14, 0x6b, 0x0f, 0x54, 0x36, 0x52, 0xdd, 0x45, 0x26, 0x74, 0x3b, 0xa4, 0x2c, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_663 = { .name = "xdh_wei25519_663", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_663_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_663_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_663_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_663_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 146 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 664 for XDH, tcId is 147 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_664_peerpubkey[] = { 0x95, 0xaf, 0xf8, 0x5a, 0x6c, 0xf2, 0x88, 0x9d, 0xc3, 0x0d, 0x68, 0xa9, 0xfc, 0x73, 0x5e, 0x68, 0x2c, 0x14, 0x02, 0x61, 0xb3, 0x7f, 0x59, 0x6a, 0x7a, 0x10, 0x1f, 0xd8, 0xbf, 0x6d, 0x3e, 0x6a, }; static const unsigned char xdh_wei25519_664_ourpubkey[] = { 0x27, 0xbd, 0xb3, 0xb0, 0xc1, 0x0d, 0x41, 0xb4, 0x60, 0x8e, 0x29, 0xa3, 0x6a, 0xb3, 0x1d, 0xe4, 0x88, 0x46, 0x6c, 0x04, 0x8b, 0x1f, 0x42, 0xa5, 0xb5, 0x23, 0x39, 0x78, 0x79, 0xe0, 0x9a, 0x16, }; static const unsigned char xdh_wei25519_664_privkey[] = { 0x00, 0xc1, 0x03, 0x57, 0x8d, 0x5c, 0x07, 0x9d, 0x7b, 0xcc, 0x22, 0xc1, 0xc3, 0x1e, 0x78, 0x7c, 0x1b, 0x15, 0xc5, 0x7f, 0xcb, 0x49, 0x3f, 0xda, 0xfe, 0xfa, 0x20, 0x37, 0x1c, 0xfc, 0x74, 0x6b, }; static const unsigned char xdh_wei25519_664_sharedsecret[] = { 0xdf, 0xa9, 0x88, 0xa4, 0x77, 0x00, 0x3b, 0xe1, 0x25, 0xb9, 0x5c, 0xcb, 0xf2, 0x22, 0x3d, 0x97, 0x72, 0x95, 0x77, 0xd2, 0x5e, 0x1d, 0x6e, 0x89, 0xe3, 0xda, 0x0a, 0xfa, 0xbd, 0xd0, 0xae, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_664 = { .name = "xdh_wei25519_664", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_664_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_664_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_664_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_664_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 147 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 665 for XDH, tcId is 148 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_665_peerpubkey[] = { 0x43, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_665_ourpubkey[] = { 0x67, 0xe1, 0x72, 0x52, 0xf4, 0x3c, 0xc3, 0x1d, 0x0a, 0x76, 0x36, 0x5b, 0x62, 0xf7, 0x8c, 0xf3, 0xd0, 0x33, 0x79, 0x9d, 0xab, 0x1d, 0x07, 0xb6, 0x2d, 0xc4, 0x5b, 0xf8, 0xe3, 0x9d, 0xfc, 0x5c, }; static const unsigned char xdh_wei25519_665_privkey[] = { 0x70, 0x05, 0xbb, 0x92, 0x74, 0x85, 0xc4, 0x35, 0x64, 0x2b, 0x42, 0x4a, 0x3d, 0xde, 0x01, 0x4b, 0xcf, 0x76, 0x34, 0x5e, 0x5b, 0xe6, 0x4a, 0xe6, 0xe9, 0xb2, 0x4d, 0xb3, 0x9e, 0x1c, 0xdb, 0x51, }; static const unsigned char xdh_wei25519_665_sharedsecret[] = { 0xd4, 0x50, 0xaf, 0x45, 0xb8, 0xed, 0x5f, 0xe1, 0x40, 0xcc, 0x52, 0x63, 0xff, 0xb7, 0xb5, 0x2e, 0x66, 0x73, 0x68, 0x99, 0xa8, 0xb8, 0x72, 0xb6, 0xe2, 0x85, 0x52, 0x12, 0x98, 0x19, 0xb2, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_665 = { .name = "xdh_wei25519_665", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_665_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_665_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_665_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_665_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 148 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 666 for XDH, tcId is 149 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_666_peerpubkey[] = { 0x45, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_666_ourpubkey[] = { 0x73, 0x38, 0x57, 0xbb, 0x1e, 0xfd, 0xfc, 0x89, 0xd6, 0x43, 0xf1, 0x2d, 0xce, 0x12, 0x33, 0x26, 0xfb, 0xd7, 0xa7, 0xc6, 0xaa, 0x78, 0x34, 0x42, 0x55, 0x33, 0x0b, 0xce, 0x8d, 0x40, 0x52, 0x68, }; static const unsigned char xdh_wei25519_666_privkey[] = { 0x08, 0x22, 0x03, 0x9a, 0x5d, 0xc1, 0x3c, 0x40, 0xfc, 0xcc, 0xf3, 0x46, 0xe2, 0xa7, 0x76, 0x9b, 0x4f, 0xd2, 0x72, 0x05, 0x2d, 0x43, 0x26, 0x0a, 0xd6, 0x26, 0x46, 0x8a, 0x50, 0xd4, 0x41, 0x62, }; static const unsigned char xdh_wei25519_666_sharedsecret[] = { 0x58, 0x00, 0x2c, 0x89, 0xbf, 0x8b, 0xc3, 0x2a, 0xe6, 0xfc, 0x20, 0x5b, 0x79, 0x6a, 0xcd, 0x13, 0xef, 0x7f, 0x84, 0x76, 0xf6, 0x49, 0x2a, 0xe4, 0xb2, 0xbe, 0x47, 0xf1, 0x09, 0x5e, 0x8a, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_666 = { .name = "xdh_wei25519_666", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_666_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_666_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_666_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_666_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 149 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 667 for XDH, tcId is 150 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_667_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_667_ourpubkey[] = { 0x50, 0xff, 0x0a, 0xd2, 0x96, 0x31, 0xf5, 0x33, 0x99, 0x7a, 0x24, 0x00, 0xa5, 0xda, 0x53, 0xf6, 0x6b, 0xbf, 0xf4, 0x51, 0xcf, 0xd9, 0xa6, 0x7d, 0xc1, 0x30, 0xca, 0x05, 0x9d, 0x0e, 0x27, 0x58, }; static const unsigned char xdh_wei25519_667_privkey[] = { 0x40, 0xa6, 0x34, 0x9c, 0x03, 0xf0, 0xdc, 0x0a, 0x42, 0x35, 0x8f, 0x63, 0x53, 0xca, 0x67, 0x63, 0x2a, 0xf6, 0x87, 0xb1, 0x4c, 0x9d, 0xff, 0x62, 0x6c, 0x54, 0xe2, 0x11, 0xe8, 0xfc, 0x35, 0x5a, }; static const unsigned char xdh_wei25519_667_sharedsecret[] = { 0x77, 0x73, 0xaa, 0xd6, 0xe7, 0x2e, 0xb1, 0x73, 0x5b, 0x65, 0xad, 0x51, 0xf7, 0xda, 0xd2, 0x58, 0xc1, 0x1d, 0x7b, 0xff, 0xf5, 0x30, 0x94, 0x42, 0x4c, 0xb1, 0x03, 0xcd, 0x6b, 0xfb, 0x43, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_667 = { .name = "xdh_wei25519_667", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_667_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_667_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_667_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_667_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 150 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 668 for XDH, tcId is 151 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_668_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_668_ourpubkey[] = { 0x2a, 0x15, 0x50, 0x4c, 0x9d, 0xc1, 0xf0, 0x97, 0x40, 0x47, 0x81, 0x48, 0xa4, 0xcb, 0x24, 0x44, 0xea, 0xd8, 0x22, 0x9f, 0xe4, 0x3e, 0x30, 0x5c, 0xf7, 0x97, 0x20, 0x59, 0xff, 0xbd, 0x9e, 0x16, }; static const unsigned char xdh_wei25519_668_privkey[] = { 0x50, 0x69, 0x6d, 0x4d, 0x05, 0x20, 0x99, 0x71, 0xd6, 0xba, 0x06, 0x76, 0xea, 0x27, 0x42, 0x62, 0xba, 0x63, 0x9a, 0xac, 0x74, 0xfa, 0x75, 0xe5, 0xdf, 0x45, 0x70, 0x76, 0x8a, 0xd8, 0xae, 0x74, }; static const unsigned char xdh_wei25519_668_sharedsecret[] = { 0xc1, 0x18, 0xdd, 0xf6, 0x46, 0x2f, 0xbe, 0xa8, 0x0f, 0x14, 0xef, 0x1f, 0x29, 0x72, 0xa1, 0xab, 0x12, 0xca, 0xfa, 0x51, 0x1d, 0x13, 0x23, 0xd4, 0xd2, 0x2d, 0x0d, 0x42, 0x6d, 0x65, 0x1b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_668 = { .name = "xdh_wei25519_668", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_668_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_668_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_668_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_668_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 151 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 669 for XDH, tcId is 152 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_669_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_669_ourpubkey[] = { 0xe8, 0xcb, 0x64, 0x2d, 0x7f, 0x87, 0x37, 0xe1, 0x5f, 0xad, 0x3c, 0xe9, 0x13, 0x84, 0x57, 0x70, 0x27, 0x56, 0x47, 0x9f, 0xce, 0x6b, 0xf1, 0xf6, 0x21, 0x21, 0xb4, 0x07, 0x31, 0x0f, 0x31, 0x54, }; static const unsigned char xdh_wei25519_669_privkey[] = { 0x68, 0xbb, 0x68, 0x0c, 0x85, 0x3f, 0x4e, 0x4d, 0xaa, 0x47, 0xc5, 0x86, 0xdc, 0x88, 0x6c, 0xf4, 0x56, 0x8d, 0x7b, 0x03, 0x83, 0x77, 0x0f, 0x6d, 0xf4, 0x39, 0xa5, 0x3b, 0xe4, 0xa3, 0x23, 0x6d, }; static const unsigned char xdh_wei25519_669_sharedsecret[] = { 0xcc, 0x07, 0x75, 0xbf, 0xd9, 0x70, 0xa2, 0x70, 0x6b, 0x11, 0xc7, 0x22, 0x2a, 0x44, 0x36, 0xa3, 0xd1, 0x71, 0x60, 0x38, 0x2c, 0x83, 0xb7, 0x6f, 0x89, 0xb6, 0x61, 0x92, 0xc8, 0x1b, 0x44, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_669 = { .name = "xdh_wei25519_669", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_669_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_669_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_669_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_669_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 152 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 670 for XDH, tcId is 153 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_670_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_670_ourpubkey[] = { 0x56, 0x01, 0x64, 0x38, 0x36, 0x64, 0xc9, 0x57, 0x08, 0xa5, 0xfd, 0x6e, 0xba, 0x46, 0xe7, 0x1d, 0x09, 0x4c, 0x16, 0xf8, 0xee, 0xdb, 0xf8, 0x86, 0xd4, 0x44, 0x1c, 0x21, 0xdf, 0xc6, 0x87, 0x7a, }; static const unsigned char xdh_wei25519_670_privkey[] = { 0xb0, 0xf6, 0xc2, 0x8d, 0xbd, 0xc6, 0x47, 0x06, 0x8a, 0x76, 0xd7, 0x18, 0x05, 0xef, 0x77, 0x0f, 0x08, 0x7c, 0xf7, 0x6b, 0x82, 0xaf, 0xdc, 0x0d, 0x26, 0xc4, 0x5b, 0x71, 0xac, 0xe4, 0x97, 0x68, }; static const unsigned char xdh_wei25519_670_sharedsecret[] = { 0xf0, 0x09, 0x7f, 0xa0, 0xba, 0x70, 0xd0, 0x19, 0x12, 0x62, 0x77, 0xab, 0x15, 0xc5, 0x6e, 0xcc, 0x17, 0x0c, 0xa8, 0x81, 0x80, 0xb2, 0xbf, 0x9d, 0x80, 0xfc, 0xda, 0x3d, 0x7d, 0x74, 0x55, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_670 = { .name = "xdh_wei25519_670", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_670_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_670_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_670_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_670_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 153 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 671 for XDH, tcId is 154 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_671_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_671_ourpubkey[] = { 0x13, 0x7e, 0x13, 0x9d, 0x3f, 0xb9, 0xbc, 0x7a, 0xd1, 0xac, 0xb3, 0xb8, 0x0b, 0xd8, 0xac, 0xa6, 0x18, 0x49, 0x91, 0xf3, 0x5d, 0x4f, 0x21, 0xe6, 0xc8, 0x38, 0x63, 0xec, 0x08, 0xbb, 0xf5, 0x5f, }; static const unsigned char xdh_wei25519_671_privkey[] = { 0x18, 0x63, 0x0f, 0x93, 0x59, 0x86, 0x37, 0xc3, 0x5d, 0xa6, 0x23, 0xa7, 0x45, 0x59, 0xcf, 0x94, 0x43, 0x74, 0xa5, 0x59, 0x11, 0x4c, 0x79, 0x37, 0x81, 0x10, 0x41, 0xfc, 0x86, 0x05, 0x56, 0x4a, }; static const unsigned char xdh_wei25519_671_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_671 = { .name = "xdh_wei25519_671", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_671_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_671_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_671_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_671_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 154 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 672 for XDH, tcId is 155 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_672_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_672_ourpubkey[] = { 0xd9, 0xf3, 0x8b, 0xf6, 0x8f, 0xc7, 0x54, 0xf2, 0x9b, 0x33, 0x0e, 0x3f, 0x04, 0x6f, 0xa1, 0x69, 0x7c, 0x54, 0x5b, 0x3e, 0x5b, 0x9c, 0x4c, 0x47, 0x5f, 0xf7, 0x0f, 0xf4, 0xb1, 0xdb, 0x70, 0x60, }; static const unsigned char xdh_wei25519_672_privkey[] = { 0x58, 0x1e, 0xcb, 0xda, 0x5a, 0x4a, 0x22, 0x80, 0x44, 0xfe, 0xfd, 0x6e, 0x03, 0xdf, 0x23, 0x45, 0x58, 0xc3, 0xc7, 0x91, 0x52, 0xc6, 0xe2, 0xc5, 0xe6, 0x0b, 0x14, 0x2c, 0x4f, 0x26, 0xa8, 0x51, }; static const unsigned char xdh_wei25519_672_sharedsecret[] = { 0x59, 0xe7, 0xb1, 0xe6, 0xf4, 0x70, 0x65, 0xa4, 0x8b, 0xd3, 0x49, 0x13, 0xd9, 0x10, 0x17, 0x6b, 0x67, 0x92, 0xa1, 0x37, 0x2a, 0xad, 0x22, 0xe7, 0x3c, 0xd7, 0xdf, 0x45, 0xfc, 0xf9, 0x1a, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_672 = { .name = "xdh_wei25519_672", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_672_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_672_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_672_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_672_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 155 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 673 for XDH, tcId is 156 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_673_peerpubkey[] = { 0x77, 0xaf, 0x0d, 0x38, 0x97, 0xa7, 0x15, 0xdf, 0xe2, 0x5d, 0xf5, 0xd5, 0x38, 0xcf, 0x13, 0x3b, 0xc9, 0xab, 0x7a, 0xd5, 0x2d, 0xf6, 0xbd, 0x92, 0x2a, 0x2f, 0xb7, 0x56, 0x21, 0xd5, 0x99, 0x01, }; static const unsigned char xdh_wei25519_673_ourpubkey[] = { 0x7b, 0x03, 0x03, 0x55, 0x2c, 0xe6, 0xe9, 0x3d, 0x51, 0xe1, 0x5f, 0x6d, 0x23, 0xb2, 0x03, 0x3a, 0xb3, 0x98, 0x28, 0x47, 0xc0, 0x1d, 0x6f, 0x90, 0xfa, 0x78, 0xeb, 0xc9, 0x84, 0x4a, 0xab, 0x46, }; static const unsigned char xdh_wei25519_673_privkey[] = { 0xb0, 0x56, 0x1a, 0x38, 0x00, 0x07, 0x95, 0xb7, 0xcb, 0x53, 0x7b, 0x55, 0xe9, 0x75, 0xea, 0x45, 0x2c, 0x21, 0x18, 0x50, 0x62, 0x95, 0xd5, 0xeb, 0x15, 0xfd, 0x9c, 0x83, 0xb6, 0x7f, 0x7a, 0x50, }; static const unsigned char xdh_wei25519_673_sharedsecret[] = { 0x17, 0x9f, 0x6b, 0x02, 0x07, 0x48, 0xac, 0xba, 0x34, 0x91, 0x33, 0xea, 0xa4, 0x51, 0x8f, 0x1b, 0xd8, 0xba, 0xb7, 0xbf, 0xc4, 0xfb, 0x05, 0xfd, 0x4c, 0x24, 0xe7, 0x55, 0x3d, 0xa1, 0xe9, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_673 = { .name = "xdh_wei25519_673", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_673_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_673_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_673_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_673_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 156 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 674 for XDH, tcId is 157 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_674_peerpubkey[] = { 0x4e, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x0e, }; static const unsigned char xdh_wei25519_674_ourpubkey[] = { 0x4b, 0x9e, 0x40, 0x34, 0xfa, 0x16, 0xf5, 0xd2, 0xb9, 0x2f, 0x85, 0x48, 0x15, 0xa5, 0xae, 0xa3, 0x87, 0x42, 0x65, 0xa9, 0x67, 0x3b, 0xf8, 0x2d, 0xa3, 0x4d, 0x9c, 0x81, 0x7e, 0x4d, 0xcc, 0x3b, }; static const unsigned char xdh_wei25519_674_privkey[] = { 0xb0, 0x0f, 0x7d, 0xf2, 0xd4, 0x71, 0x28, 0x44, 0x1c, 0x72, 0x70, 0xb9, 0xa8, 0x7e, 0xee, 0x45, 0xb6, 0x05, 0x6f, 0xc6, 0x42, 0x36, 0xa5, 0x7b, 0xdf, 0x81, 0xdb, 0xcc, 0xcf, 0x5f, 0x5d, 0x42, }; static const unsigned char xdh_wei25519_674_sharedsecret[] = { 0x43, 0xc5, 0xee, 0x14, 0x51, 0xf2, 0x13, 0xef, 0x76, 0x24, 0x72, 0x9e, 0x59, 0x5a, 0x0f, 0xee, 0x7c, 0x9a, 0xf7, 0xee, 0x5d, 0x27, 0xeb, 0x03, 0x27, 0x8e, 0xe9, 0xf9, 0x4c, 0x20, 0x23, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_674 = { .name = "xdh_wei25519_674", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_674_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_674_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_674_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_674_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 157 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 675 for XDH, tcId is 158 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_675_peerpubkey[] = { 0xad, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x11, }; static const unsigned char xdh_wei25519_675_ourpubkey[] = { 0x96, 0xb6, 0x93, 0x0e, 0x8e, 0x85, 0x78, 0x52, 0xbd, 0x30, 0x27, 0x6f, 0x4a, 0x05, 0xe6, 0xca, 0x70, 0x7b, 0xb8, 0x84, 0x71, 0xe9, 0xd1, 0xc5, 0x39, 0x23, 0xda, 0xc0, 0xdc, 0x49, 0xd6, 0x7e, }; static const unsigned char xdh_wei25519_675_privkey[] = { 0xc8, 0xf7, 0xa0, 0xc0, 0xbf, 0xb1, 0xe9, 0xc7, 0x25, 0x76, 0xc5, 0x34, 0xf8, 0x68, 0x54, 0xfb, 0xe4, 0xaf, 0x52, 0x1d, 0x4f, 0xa8, 0x07, 0xf6, 0x7e, 0x24, 0x40, 0xe1, 0x00, 0xec, 0x88, 0x52, }; static const unsigned char xdh_wei25519_675_sharedsecret[] = { 0x2f, 0x35, 0x0b, 0xcf, 0x0b, 0x40, 0x78, 0x4d, 0x1d, 0x75, 0x6c, 0x9c, 0xa3, 0xe3, 0x8e, 0xc9, 0xdd, 0x68, 0xba, 0x80, 0xfa, 0xf1, 0xf9, 0x84, 0x7d, 0xe5, 0x07, 0x79, 0xc0, 0xd4, 0x90, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_675 = { .name = "xdh_wei25519_675", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_675_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_675_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_675_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_675_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 158 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 676 for XDH, tcId is 159 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_676_peerpubkey[] = { 0x77, 0x0f, 0x42, 0x18, 0xef, 0x23, 0x4f, 0x5e, 0x18, 0x54, 0x66, 0xe3, 0x24, 0x42, 0xc3, 0x02, 0xbb, 0xec, 0x21, 0xbb, 0xb6, 0xcd, 0x28, 0xc9, 0x79, 0xe7, 0x83, 0xfe, 0x50, 0x13, 0x33, 0x3f, }; static const unsigned char xdh_wei25519_676_ourpubkey[] = { 0xc6, 0xbd, 0xba, 0x57, 0xee, 0x92, 0x0a, 0xa1, 0xef, 0x5c, 0xfa, 0xb8, 0x29, 0xc8, 0xb6, 0xa7, 0x42, 0x2e, 0xda, 0x0a, 0x4f, 0x92, 0x03, 0xb6, 0xe8, 0xb7, 0x28, 0xcc, 0x32, 0xdc, 0xe9, 0x60, }; static const unsigned char xdh_wei25519_676_privkey[] = { 0x58, 0x18, 0x1f, 0x58, 0x1a, 0xa3, 0x70, 0x22, 0xff, 0x71, 0xc5, 0x6c, 0x6e, 0x68, 0xe6, 0x17, 0x5d, 0x96, 0x7c, 0x5c, 0x99, 0x5a, 0x24, 0x98, 0x85, 0xf6, 0x65, 0x65, 0x07, 0x4d, 0xed, 0x4d, }; static const unsigned char xdh_wei25519_676_sharedsecret[] = { 0xd5, 0xd6, 0x50, 0xdc, 0x62, 0x10, 0x72, 0xec, 0xa9, 0x52, 0xe4, 0x34, 0x4e, 0xfc, 0x73, 0x20, 0xb2, 0xb1, 0x45, 0x9a, 0xba, 0x48, 0xf5, 0xe2, 0x48, 0x0d, 0xb8, 0x81, 0xc5, 0x0c, 0xc6, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_676 = { .name = "xdh_wei25519_676", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_676_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_676_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_676_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_676_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 159 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 677 for XDH, tcId is 160 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_677_peerpubkey[] = { 0x5c, 0x61, 0x18, 0xc4, 0xc7, 0x4c, 0xfb, 0x84, 0x2d, 0x9a, 0x87, 0x44, 0x9f, 0x9d, 0x8d, 0xb8, 0xb9, 0x92, 0xd4, 0x6c, 0x5a, 0x90, 0x93, 0xce, 0x2f, 0xcb, 0x7a, 0x49, 0xb5, 0x35, 0xc4, 0x51, }; static const unsigned char xdh_wei25519_677_ourpubkey[] = { 0x81, 0x82, 0x03, 0x87, 0xc3, 0x71, 0xad, 0x8c, 0x14, 0x3b, 0x2f, 0x9a, 0x45, 0x4b, 0xd4, 0x45, 0xa4, 0xae, 0x60, 0x1c, 0xbe, 0xd9, 0x0c, 0x21, 0x40, 0x02, 0xb1, 0xe0, 0xe0, 0x45, 0x4d, 0x01, }; static const unsigned char xdh_wei25519_677_privkey[] = { 0x30, 0x1c, 0x93, 0x5c, 0xae, 0x43, 0x57, 0x07, 0x0b, 0x0a, 0xda, 0xf9, 0xcd, 0x61, 0x92, 0x83, 0x0b, 0x2c, 0x98, 0x9c, 0x15, 0x37, 0x29, 0xee, 0xd9, 0x9f, 0x58, 0x9e, 0xb4, 0x5f, 0x88, 0x4b, }; static const unsigned char xdh_wei25519_677_sharedsecret[] = { 0x90, 0x9c, 0xc5, 0x72, 0x75, 0xd5, 0x4f, 0x20, 0xc6, 0x7b, 0x45, 0xf9, 0xaf, 0x94, 0x84, 0xfd, 0x67, 0x58, 0x1a, 0xfb, 0x7d, 0x88, 0x7b, 0xee, 0x1d, 0xb5, 0x46, 0x1f, 0x30, 0x3e, 0xf2, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_677 = { .name = "xdh_wei25519_677", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_677_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_677_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_677_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_677_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 160 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 678 for XDH, tcId is 161 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_678_peerpubkey[] = { 0x40, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x6e, }; static const unsigned char xdh_wei25519_678_ourpubkey[] = { 0x00, 0xcc, 0x60, 0x94, 0xf3, 0x72, 0xeb, 0x1c, 0xa1, 0x62, 0x12, 0xa4, 0x00, 0x0d, 0x5f, 0xb1, 0xb3, 0xee, 0xcb, 0x1b, 0x86, 0x2e, 0x88, 0x30, 0x96, 0x09, 0x1a, 0x1a, 0x3e, 0xdf, 0xb3, 0x69, }; static const unsigned char xdh_wei25519_678_privkey[] = { 0xd0, 0x02, 0x29, 0x2d, 0x43, 0x59, 0xa3, 0xd4, 0x2b, 0xc8, 0x76, 0x7f, 0x13, 0x80, 0x00, 0x93, 0x32, 0xe7, 0xa0, 0xdf, 0x2f, 0x33, 0x79, 0x01, 0x1a, 0xb7, 0x8f, 0x78, 0x9f, 0x6b, 0xaa, 0x54, }; static const unsigned char xdh_wei25519_678_sharedsecret[] = { 0x4a, 0x7e, 0x2c, 0x5c, 0xaf, 0x1d, 0x81, 0x80, 0xeb, 0x1c, 0x4f, 0x22, 0x69, 0x2f, 0x29, 0xa1, 0x4b, 0x4c, 0xdc, 0x9b, 0x19, 0x3b, 0xd1, 0xd1, 0x6e, 0x2f, 0x27, 0x43, 0x8e, 0xef, 0x14, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_678 = { .name = "xdh_wei25519_678", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_678_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_678_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_678_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_678_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 161 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 679 for XDH, tcId is 162 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_679_peerpubkey[] = { 0x07, 0x8f, 0xa5, 0x23, 0x49, 0x8f, 0xb5, 0x1c, 0xba, 0x11, 0x12, 0xd8, 0x3b, 0x20, 0xaf, 0x44, 0x8b, 0x80, 0x09, 0xd8, 0xee, 0xa1, 0x43, 0x68, 0x56, 0x4d, 0x01, 0xb8, 0xf9, 0xb6, 0x08, 0x6f, }; static const unsigned char xdh_wei25519_679_ourpubkey[] = { 0x87, 0x25, 0x25, 0x83, 0xd1, 0xf5, 0x95, 0xb9, 0xea, 0xbb, 0xd7, 0xbb, 0x51, 0x78, 0xe9, 0xd2, 0x6d, 0x80, 0xad, 0x13, 0xd4, 0xdf, 0x6b, 0x1b, 0xfd, 0x43, 0xa8, 0x69, 0x85, 0xbd, 0xaf, 0x0e, }; static const unsigned char xdh_wei25519_679_privkey[] = { 0xd0, 0xc2, 0xc4, 0x9e, 0x64, 0x4a, 0xb7, 0x38, 0x27, 0x07, 0x07, 0xff, 0x99, 0x17, 0x06, 0x59, 0x42, 0x68, 0x7e, 0x2f, 0x12, 0x88, 0x6d, 0x96, 0x11, 0x61, 0xdb, 0x46, 0xc0, 0x5b, 0x56, 0x5f, }; static const unsigned char xdh_wei25519_679_sharedsecret[] = { 0xc0, 0xee, 0x59, 0xd3, 0x68, 0x5f, 0xc2, 0xc3, 0xc8, 0x03, 0x60, 0x8b, 0x5e, 0xe3, 0x9a, 0x7f, 0x8d, 0xa3, 0x0b, 0x48, 0xe4, 0x29, 0x3a, 0xe0, 0x11, 0xf0, 0xea, 0x1e, 0x5a, 0xeb, 0x71, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_679 = { .name = "xdh_wei25519_679", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_679_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_679_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_679_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_679_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 162 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 680 for XDH, tcId is 163 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_680_peerpubkey[] = { 0x9f, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x71, }; static const unsigned char xdh_wei25519_680_ourpubkey[] = { 0xff, 0x7a, 0x45, 0x03, 0xf7, 0x32, 0x5d, 0x4a, 0xed, 0xfe, 0xee, 0xfb, 0xf4, 0x63, 0x3f, 0x58, 0x80, 0xa1, 0x9c, 0xb7, 0x37, 0x0e, 0x1a, 0x42, 0xe9, 0xf9, 0x93, 0x54, 0xbe, 0x1c, 0xec, 0x67, }; static const unsigned char xdh_wei25519_680_privkey[] = { 0xf0, 0x87, 0xd3, 0x8b, 0x27, 0x4c, 0x1d, 0xad, 0x1b, 0xce, 0x6e, 0xaa, 0x36, 0xb4, 0x8e, 0x21, 0x90, 0xb9, 0x0b, 0x9b, 0xf8, 0xca, 0x59, 0x66, 0x9c, 0xc5, 0xe0, 0x04, 0x64, 0x53, 0x43, 0x42, }; static const unsigned char xdh_wei25519_680_sharedsecret[] = { 0xb2, 0x52, 0xbc, 0x8e, 0xab, 0xfa, 0xa6, 0x8c, 0x56, 0xe5, 0x4d, 0x61, 0xb9, 0x90, 0x61, 0xa3, 0x5d, 0x11, 0xe3, 0xa7, 0xb9, 0xbd, 0xa4, 0x17, 0xd9, 0x0f, 0x69, 0xb1, 0x11, 0x9b, 0xcf, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_680 = { .name = "xdh_wei25519_680", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_680_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_680_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_680_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_680_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 163 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 681 for XDH, tcId is 164 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_681_peerpubkey[] = { 0x76, 0x50, 0xf2, 0xc7, 0x68, 0x58, 0xea, 0x20, 0x1d, 0xa2, 0x02, 0x2a, 0xc7, 0x30, 0xec, 0xc4, 0x36, 0x54, 0x85, 0x2a, 0xd2, 0x09, 0x42, 0x6d, 0xd5, 0xd0, 0x48, 0xa9, 0xde, 0x2a, 0x66, 0x7e, }; static const unsigned char xdh_wei25519_681_ourpubkey[] = { 0x09, 0x86, 0xb6, 0xc6, 0xf6, 0x85, 0xae, 0x76, 0xe4, 0xd9, 0x7e, 0xf7, 0xee, 0x8b, 0x54, 0x41, 0x57, 0xeb, 0xaa, 0xd9, 0x0b, 0xdd, 0x05, 0x64, 0x1b, 0x03, 0x27, 0x60, 0x23, 0x9e, 0xf2, 0x23, }; static const unsigned char xdh_wei25519_681_privkey[] = { 0x48, 0xdb, 0xcc, 0x5a, 0x69, 0x5f, 0x15, 0x14, 0xbb, 0xba, 0xa6, 0xad, 0x00, 0x84, 0x2b, 0x69, 0xd9, 0xae, 0x52, 0x16, 0xb1, 0x96, 0x3a, 0xdd, 0x07, 0xfb, 0x29, 0x47, 0xc9, 0x7b, 0x84, 0x47, }; static const unsigned char xdh_wei25519_681_sharedsecret[] = { 0xfb, 0xda, 0x33, 0xbc, 0x93, 0x0c, 0x08, 0xdf, 0x83, 0x72, 0x08, 0xe1, 0x9a, 0xfd, 0xc1, 0xcf, 0xe3, 0xfd, 0x0f, 0x8f, 0x0e, 0x39, 0x76, 0xbe, 0x34, 0x77, 0x5e, 0x58, 0xa4, 0xa7, 0x77, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_681 = { .name = "xdh_wei25519_681", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_681_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_681_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_681_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_681_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 164 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 682 for XDH, tcId is 165 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_682_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_682_ourpubkey[] = { 0x56, 0xb1, 0xaa, 0x67, 0x03, 0x30, 0x89, 0x49, 0xb2, 0xf5, 0x8b, 0x3e, 0x18, 0xcc, 0xc0, 0xa8, 0xcd, 0x77, 0x4f, 0x8b, 0x90, 0xc3, 0x57, 0x7f, 0x03, 0x23, 0xb3, 0xd3, 0x49, 0xf7, 0x38, 0x3e, }; static const unsigned char xdh_wei25519_682_privkey[] = { 0x58, 0x91, 0xc9, 0x27, 0x2c, 0xf9, 0xa1, 0x97, 0x73, 0x5b, 0x70, 0x1e, 0x57, 0x15, 0x26, 0x8d, 0x36, 0xd7, 0x43, 0x6b, 0x7e, 0x35, 0x1a, 0x3e, 0x99, 0x7a, 0x08, 0x62, 0xe4, 0x80, 0x7d, 0x4d, }; static const unsigned char xdh_wei25519_682_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_682 = { .name = "xdh_wei25519_682", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_682_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_682_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_682_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_682_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 165 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 683 for XDH, tcId is 166 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_683_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_683_ourpubkey[] = { 0xda, 0x0e, 0x6a, 0xba, 0x80, 0x52, 0x61, 0x21, 0xe9, 0xf4, 0x29, 0x9e, 0x90, 0x59, 0xa9, 0x71, 0xb6, 0x49, 0x3c, 0xcf, 0x58, 0xa8, 0x1a, 0x0b, 0xd0, 0x92, 0x5d, 0x97, 0x21, 0xb1, 0x4f, 0x7a, }; static const unsigned char xdh_wei25519_683_privkey[] = { 0xc0, 0xf9, 0xc6, 0x0a, 0xea, 0x73, 0x73, 0x1d, 0x92, 0xab, 0x5e, 0xd9, 0xf4, 0xce, 0xa1, 0x22, 0xf9, 0xa6, 0xeb, 0x25, 0x77, 0xbd, 0xa7, 0x2f, 0x94, 0x94, 0x8f, 0xea, 0x4d, 0x4c, 0xc6, 0x5d, }; static const unsigned char xdh_wei25519_683_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_683 = { .name = "xdh_wei25519_683", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_683_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_683_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_683_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_683_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 166 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 684 for XDH, tcId is 167 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_684_peerpubkey[] = { 0xb0, 0x22, 0x4e, 0x71, 0x34, 0xcf, 0x92, 0xd4, 0x0a, 0x31, 0x51, 0x5f, 0x2f, 0x0e, 0x89, 0xc2, 0xa2, 0x77, 0x7e, 0x8a, 0xc2, 0xfe, 0x74, 0x1d, 0xb0, 0xdc, 0x39, 0x39, 0x9f, 0xdf, 0x27, 0x02, }; static const unsigned char xdh_wei25519_684_ourpubkey[] = { 0x0f, 0x53, 0x5a, 0xc6, 0x2d, 0x20, 0x88, 0xb5, 0xcd, 0xf6, 0x88, 0xdd, 0xda, 0x6e, 0x09, 0x67, 0x7c, 0x5e, 0x18, 0x3d, 0x29, 0x02, 0xdf, 0x82, 0xb5, 0x4c, 0xe8, 0x04, 0x72, 0xfe, 0x82, 0x25, }; static const unsigned char xdh_wei25519_684_privkey[] = { 0x00, 0x66, 0xdd, 0x76, 0x74, 0xfe, 0x51, 0xf9, 0x32, 0x6c, 0x1e, 0x23, 0x9b, 0x87, 0x5f, 0x8a, 0xc0, 0x70, 0x1a, 0xae, 0x69, 0xa8, 0x04, 0xc2, 0x5f, 0xe4, 0x35, 0x95, 0xe8, 0x66, 0x0b, 0x45, }; static const unsigned char xdh_wei25519_684_sharedsecret[] = { 0x8d, 0xac, 0xfe, 0x7b, 0xea, 0xaa, 0x62, 0xb9, 0x4b, 0xf6, 0xe5, 0x0e, 0xe5, 0x21, 0x4d, 0x99, 0xad, 0x7c, 0xda, 0x5a, 0x43, 0x1e, 0xa0, 0xc6, 0x2f, 0x2b, 0x20, 0xa8, 0x9d, 0x73, 0xc6, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_684 = { .name = "xdh_wei25519_684", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_684_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_684_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_684_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_684_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 167 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 685 for XDH, tcId is 168 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_685_peerpubkey[] = { 0x60, 0x1e, 0x3f, 0xeb, 0xb8, 0x48, 0xec, 0x3e, 0x57, 0xfc, 0xe6, 0x45, 0x88, 0xaa, 0xd8, 0x2a, 0xfc, 0x9c, 0x2a, 0xf9, 0x9b, 0xbc, 0xdf, 0xfc, 0xc4, 0xcd, 0x58, 0xd4, 0xb3, 0xd1, 0x5c, 0x07, }; static const unsigned char xdh_wei25519_685_ourpubkey[] = { 0xca, 0x3c, 0xd7, 0xb1, 0x4b, 0xdf, 0xad, 0x83, 0xa9, 0x21, 0x06, 0x38, 0x4e, 0x83, 0x70, 0xaa, 0x3c, 0xef, 0x8e, 0x3c, 0x29, 0x00, 0x9d, 0xfd, 0x7e, 0xf3, 0x1c, 0xc0, 0xe6, 0x03, 0xb8, 0x71, }; static const unsigned char xdh_wei25519_685_privkey[] = { 0x80, 0x06, 0x7f, 0x30, 0xf4, 0x0d, 0x61, 0x31, 0x8b, 0x42, 0x0c, 0x85, 0x9f, 0xce, 0x12, 0x8c, 0x90, 0x17, 0xab, 0x81, 0xb4, 0x7b, 0x76, 0x02, 0x8a, 0x57, 0xbc, 0x30, 0xd5, 0x85, 0x68, 0x46, }; static const unsigned char xdh_wei25519_685_sharedsecret[] = { 0x20, 0xf1, 0xd3, 0xfe, 0x90, 0xe0, 0x8b, 0xc6, 0xf1, 0x52, 0xbf, 0x5d, 0xac, 0xc3, 0xed, 0x35, 0x89, 0x97, 0x85, 0x33, 0x3f, 0x14, 0x70, 0xe6, 0xa6, 0x2c, 0x3b, 0x8c, 0xbe, 0x28, 0xd2, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_685 = { .name = "xdh_wei25519_685", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_685_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_685_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_685_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_685_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 168 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 686 for XDH, tcId is 169 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_686_peerpubkey[] = { 0x82, 0xa3, 0x80, 0x7b, 0xbd, 0xec, 0x2f, 0xa9, 0x93, 0x8f, 0xb4, 0x14, 0x1e, 0x27, 0xdc, 0x57, 0x45, 0x66, 0x06, 0x30, 0x1f, 0x78, 0xff, 0x71, 0x33, 0xcf, 0x24, 0xf3, 0xd1, 0x3e, 0xe1, 0x17, }; static const unsigned char xdh_wei25519_686_ourpubkey[] = { 0x76, 0x28, 0x40, 0x5b, 0xb5, 0x93, 0x0a, 0xf8, 0x2c, 0x3c, 0xe1, 0xd5, 0x6a, 0x94, 0xd8, 0xd2, 0x85, 0x68, 0x88, 0xd3, 0xdb, 0x20, 0xbc, 0x0c, 0x68, 0xdf, 0x31, 0x68, 0x7e, 0xc2, 0x67, 0x07, }; static const unsigned char xdh_wei25519_686_privkey[] = { 0x58, 0x45, 0x77, 0x66, 0x9d, 0x21, 0xce, 0x0a, 0xe3, 0xe3, 0x0b, 0x02, 0xc9, 0x78, 0x3f, 0xfe, 0x97, 0x70, 0x9c, 0xbf, 0xe3, 0x96, 0x88, 0x9a, 0xa3, 0x1e, 0x8e, 0xe4, 0x33, 0x52, 0xdc, 0x52, }; static const unsigned char xdh_wei25519_686_sharedsecret[] = { 0x2b, 0x28, 0xcc, 0x51, 0x40, 0xb8, 0x16, 0xad, 0xd5, 0xad, 0x3a, 0x77, 0xa8, 0x1b, 0x1c, 0x07, 0x3d, 0x67, 0xbf, 0x51, 0xbf, 0x95, 0xbd, 0xa2, 0x06, 0x4a, 0x14, 0xeb, 0x12, 0xd5, 0xf7, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_686 = { .name = "xdh_wei25519_686", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_686_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_686_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_686_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_686_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 169 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 687 for XDH, tcId is 170 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_687_peerpubkey[] = { 0xf3, 0x29, 0xab, 0x23, 0x76, 0x46, 0x2e, 0x5f, 0x31, 0x28, 0xa2, 0x68, 0x20, 0x86, 0x25, 0x3c, 0x19, 0x22, 0x2a, 0xc1, 0xe2, 0xbc, 0xa4, 0x56, 0x92, 0xf0, 0xc3, 0xb5, 0x28, 0xf4, 0xc4, 0x28, }; static const unsigned char xdh_wei25519_687_ourpubkey[] = { 0x75, 0xe0, 0x48, 0xd9, 0x4f, 0x0c, 0x99, 0xb5, 0x32, 0x00, 0xdd, 0x32, 0x16, 0xb5, 0x87, 0xaa, 0xbb, 0x60, 0x1f, 0x75, 0x8b, 0xdc, 0xcc, 0x1c, 0x55, 0xc0, 0xd1, 0x49, 0xeb, 0x34, 0xe4, 0x63, }; static const unsigned char xdh_wei25519_687_privkey[] = { 0x18, 0xe5, 0x97, 0xa4, 0xe2, 0xcc, 0xdb, 0x5e, 0x80, 0x52, 0xd5, 0x7c, 0x90, 0x09, 0x93, 0x8c, 0x2d, 0x4c, 0x43, 0xd6, 0xd8, 0xc9, 0xf9, 0x3c, 0x98, 0x72, 0x7b, 0x73, 0x11, 0x03, 0x59, 0x53, }; static const unsigned char xdh_wei25519_687_sharedsecret[] = { 0x83, 0x92, 0x16, 0x00, 0x83, 0xb9, 0xaf, 0x9e, 0x0e, 0xf4, 0x4f, 0xcf, 0xce, 0x53, 0xba, 0x8f, 0xf7, 0x28, 0x2e, 0xe7, 0xa6, 0xc7, 0x1a, 0xb6, 0x6f, 0x88, 0x43, 0xa5, 0x5d, 0x09, 0xcd, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_687 = { .name = "xdh_wei25519_687", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_687_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_687_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_687_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_687_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 170 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 688 for XDH, tcId is 171 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_688_peerpubkey[] = { 0x4f, 0xce, 0x3b, 0xb6, 0xc8, 0xaa, 0xf0, 0x22, 0xdb, 0xd1, 0x00, 0xe3, 0xcd, 0xe3, 0x94, 0x1b, 0x37, 0xd5, 0x43, 0xf0, 0x04, 0x01, 0xdb, 0xa7, 0xda, 0x9b, 0xc1, 0x43, 0xdf, 0xc5, 0x57, 0x09, }; static const unsigned char xdh_wei25519_688_ourpubkey[] = { 0x70, 0x7f, 0xe9, 0xf1, 0x96, 0x15, 0x25, 0x74, 0x1f, 0x14, 0x05, 0x12, 0x78, 0xb3, 0x78, 0xab, 0xaa, 0x7b, 0x35, 0x0c, 0x37, 0x90, 0x43, 0x5f, 0x18, 0x14, 0x08, 0xcd, 0x18, 0x82, 0xa6, 0x4f, }; static const unsigned char xdh_wei25519_688_privkey[] = { 0x88, 0x28, 0x1c, 0xc5, 0x1d, 0x55, 0x12, 0xd8, 0x81, 0x4e, 0xa5, 0x24, 0x9b, 0x87, 0x9d, 0xcb, 0xad, 0x03, 0x23, 0xd3, 0x85, 0x12, 0xda, 0xfb, 0xdc, 0x7b, 0xa8, 0x5b, 0xba, 0x8c, 0x8d, 0x5d, }; static const unsigned char xdh_wei25519_688_sharedsecret[] = { 0x42, 0x18, 0x4e, 0x22, 0xc5, 0x35, 0x53, 0x0c, 0x45, 0x7b, 0xd3, 0xb4, 0xf1, 0x08, 0x4c, 0xbf, 0x5e, 0x29, 0x7f, 0x50, 0x2f, 0xe1, 0x36, 0xb8, 0xd1, 0xda, 0xec, 0xf5, 0x33, 0x4c, 0xc9, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_688 = { .name = "xdh_wei25519_688", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_688_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_688_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_688_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_688_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 171 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 689 for XDH, tcId is 172 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_689_peerpubkey[] = { 0x15, 0xc6, 0x88, 0x51, 0xc1, 0xdb, 0x84, 0x4b, 0x5a, 0x1e, 0xf3, 0x45, 0x6a, 0x65, 0x9f, 0x18, 0x88, 0x54, 0xb1, 0xa7, 0x5f, 0xbd, 0xb2, 0xf6, 0x8f, 0x51, 0x4c, 0x92, 0x89, 0xce, 0x71, 0x1f, }; static const unsigned char xdh_wei25519_689_ourpubkey[] = { 0xfe, 0xa5, 0xb5, 0xc6, 0x92, 0x6f, 0x66, 0xa8, 0x91, 0x08, 0x93, 0x26, 0x74, 0x8d, 0x4a, 0xc9, 0x4d, 0xd1, 0x16, 0x07, 0x79, 0x09, 0xf9, 0xad, 0x71, 0xf6, 0xb9, 0x3c, 0x80, 0xfc, 0x24, 0x6b, }; static const unsigned char xdh_wei25519_689_privkey[] = { 0xd0, 0xe7, 0x95, 0x45, 0x0d, 0xf0, 0xa8, 0x13, 0xc6, 0x57, 0x34, 0x96, 0xec, 0x57, 0x93, 0xca, 0x02, 0xe1, 0xbd, 0xba, 0xd1, 0x0e, 0xd0, 0x8d, 0xf8, 0x3f, 0xda, 0xed, 0x68, 0xb3, 0x38, 0x5f, }; static const unsigned char xdh_wei25519_689_sharedsecret[] = { 0xf6, 0x54, 0xd7, 0x8e, 0x59, 0x45, 0xb2, 0x4b, 0xc6, 0x3e, 0x3e, 0x6d, 0x79, 0x0e, 0x0a, 0xe9, 0x86, 0xe5, 0x39, 0x37, 0x76, 0x40, 0x68, 0xb1, 0xbc, 0xe9, 0x20, 0xe1, 0xd7, 0x9b, 0x75, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_689 = { .name = "xdh_wei25519_689", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_689_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_689_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_689_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_689_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 172 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 690 for XDH, tcId is 173 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_690_peerpubkey[] = { 0x42, 0x00, 0xa2, 0x42, 0x43, 0x43, 0x37, 0xb8, 0x91, 0x4f, 0x49, 0x34, 0x53, 0x01, 0xed, 0x78, 0x2b, 0x13, 0x59, 0x4f, 0x9e, 0xde, 0x08, 0x9c, 0x41, 0xfb, 0x1e, 0x7e, 0xa8, 0x2c, 0x90, 0x53, }; static const unsigned char xdh_wei25519_690_ourpubkey[] = { 0x9c, 0x44, 0xfc, 0x5c, 0xa9, 0xef, 0x8a, 0x16, 0x74, 0x9a, 0xd6, 0x45, 0xf3, 0x20, 0x80, 0x61, 0xd4, 0x5e, 0x75, 0xfb, 0x2a, 0xa6, 0x2b, 0x0a, 0x79, 0x18, 0x76, 0x42, 0x90, 0x9f, 0xa7, 0x1a, }; static const unsigned char xdh_wei25519_690_privkey[] = { 0x30, 0xb6, 0x9a, 0x1c, 0xc1, 0xeb, 0x2d, 0x0b, 0x83, 0xea, 0x21, 0x38, 0x46, 0xe9, 0x0a, 0x2c, 0x92, 0x20, 0x88, 0xbd, 0xf2, 0x94, 0xa6, 0x99, 0x5b, 0xf6, 0xe6, 0xe7, 0x7c, 0x64, 0x6c, 0x41, }; static const unsigned char xdh_wei25519_690_sharedsecret[] = { 0xcd, 0x8a, 0x09, 0xb0, 0x47, 0x95, 0xed, 0xcc, 0x70, 0x61, 0x86, 0x73, 0x73, 0x98, 0x1a, 0xa7, 0x48, 0x65, 0x1e, 0xbd, 0xce, 0x5e, 0xc2, 0x18, 0xa3, 0x35, 0xb8, 0x78, 0xce, 0xfe, 0x48, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_690 = { .name = "xdh_wei25519_690", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_690_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_690_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_690_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_690_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 173 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 691 for XDH, tcId is 174 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_691_peerpubkey[] = { 0xba, 0xab, 0xf0, 0x17, 0x4a, 0xaa, 0xea, 0x4d, 0xe4, 0x8c, 0xc8, 0x3a, 0xdf, 0xb0, 0x40, 0x14, 0x61, 0xa7, 0x41, 0x90, 0x3e, 0xa6, 0xfb, 0x13, 0x0d, 0x7d, 0x64, 0xb7, 0xbf, 0x03, 0xa9, 0x66, }; static const unsigned char xdh_wei25519_691_ourpubkey[] = { 0x43, 0x2c, 0x3e, 0x5b, 0x7c, 0xce, 0x3d, 0x0d, 0xac, 0xaa, 0xeb, 0x57, 0x72, 0xeb, 0x0c, 0xb7, 0x0b, 0x58, 0x57, 0x1f, 0xf5, 0xa9, 0xa1, 0xaa, 0x11, 0xc9, 0x1b, 0x05, 0xde, 0xaa, 0xdb, 0x1f, }; static const unsigned char xdh_wei25519_691_privkey[] = { 0x78, 0xb3, 0x0b, 0xb6, 0x3c, 0xd8, 0xad, 0xe7, 0x1b, 0x7a, 0x77, 0xd4, 0x26, 0xf4, 0x41, 0x9d, 0x05, 0xf1, 0x99, 0xff, 0xef, 0x34, 0x9e, 0x89, 0xfa, 0xa9, 0xd9, 0xa5, 0xf2, 0x1f, 0x66, 0x54, }; static const unsigned char xdh_wei25519_691_sharedsecret[] = { 0xc9, 0xf8, 0x25, 0x8f, 0x23, 0x7d, 0xb1, 0xc8, 0x07, 0x02, 0xc5, 0xc4, 0xd9, 0x04, 0x8d, 0xfb, 0xa9, 0xdf, 0xe2, 0x59, 0xda, 0x4a, 0xee, 0xe9, 0x0d, 0xc2, 0x94, 0x55, 0x26, 0x96, 0x12, 0x75, }; static const wycheproof_xdh_test xdh_wei25519_691 = { .name = "xdh_wei25519_691", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_691_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_691_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_691_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_691_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 174 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 692 for XDH, tcId is 175 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_692_peerpubkey[] = { 0xf1, 0x2f, 0x18, 0xbd, 0x59, 0xc1, 0x26, 0x34, 0x8f, 0x6a, 0x7a, 0x9f, 0x4a, 0x5f, 0xdd, 0x9f, 0xca, 0xf5, 0x81, 0x34, 0x50, 0x73, 0xa8, 0x51, 0xfb, 0xa0, 0x98, 0xe5, 0xd6, 0x4b, 0x4a, 0x0c, }; static const unsigned char xdh_wei25519_692_ourpubkey[] = { 0x3b, 0xa9, 0x96, 0xed, 0xa2, 0x55, 0xeb, 0xd6, 0x39, 0x03, 0x86, 0xae, 0x42, 0x9c, 0x61, 0x95, 0xe2, 0xaa, 0x10, 0xdf, 0xb1, 0x47, 0x36, 0xde, 0x16, 0xe5, 0x47, 0x2f, 0xec, 0x29, 0x89, 0x45, }; static const unsigned char xdh_wei25519_692_privkey[] = { 0xc0, 0xb3, 0x86, 0xf4, 0xef, 0x0d, 0x46, 0x98, 0x68, 0x64, 0x04, 0x97, 0x7e, 0x7b, 0x60, 0xcb, 0x6c, 0x1f, 0x8b, 0x60, 0x12, 0xa2, 0x2e, 0x29, 0xd6, 0x22, 0x4c, 0x59, 0x47, 0x43, 0x90, 0x41, }; static const unsigned char xdh_wei25519_692_sharedsecret[] = { 0x66, 0x00, 0xcb, 0xe9, 0x00, 0x61, 0x6a, 0x77, 0x0a, 0x12, 0x6b, 0x8b, 0x19, 0x15, 0x6d, 0x5e, 0x27, 0xe1, 0x17, 0x4b, 0xd5, 0x38, 0xd0, 0x94, 0x4e, 0xb3, 0xc0, 0xbe, 0x48, 0x99, 0xc7, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_692 = { .name = "xdh_wei25519_692", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_692_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_692_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_692_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_692_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 175 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 693 for XDH, tcId is 176 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_693_peerpubkey[] = { 0xbe, 0xe3, 0x86, 0x52, 0x7b, 0x77, 0x24, 0x90, 0xae, 0xb9, 0x6f, 0xc4, 0xd2, 0x3b, 0x93, 0x04, 0x03, 0x7c, 0xb4, 0x43, 0x0f, 0x64, 0xb2, 0x28, 0xf3, 0xd8, 0xb3, 0xb4, 0x98, 0x31, 0x9f, 0x22, }; static const unsigned char xdh_wei25519_693_ourpubkey[] = { 0x02, 0x35, 0x96, 0x22, 0x06, 0xbb, 0xf3, 0x5f, 0xb6, 0xfb, 0x41, 0x58, 0x2b, 0x5d, 0x96, 0xf7, 0x31, 0xac, 0x9b, 0x51, 0xf9, 0x0b, 0xb9, 0x10, 0x82, 0x90, 0xff, 0x69, 0xb9, 0xea, 0x89, 0x2f, }; static const unsigned char xdh_wei25519_693_privkey[] = { 0x98, 0x86, 0x60, 0x2e, 0x71, 0x9b, 0xac, 0xaf, 0xea, 0x09, 0x2b, 0xb7, 0x5b, 0x51, 0xae, 0x72, 0x58, 0xab, 0xe1, 0xa3, 0x64, 0xc1, 0x76, 0x85, 0x7f, 0x3d, 0xc1, 0x88, 0xc0, 0x3e, 0x67, 0x59, }; static const unsigned char xdh_wei25519_693_sharedsecret[] = { 0x3f, 0xe7, 0x10, 0xd6, 0x34, 0x4f, 0xf0, 0xcb, 0x34, 0x2e, 0x52, 0x34, 0x9e, 0x1c, 0x5b, 0x57, 0xb7, 0xa2, 0x71, 0xf2, 0xa1, 0x33, 0xbb, 0x52, 0x49, 0xbb, 0xe4, 0x0d, 0xc8, 0x6e, 0x1b, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_693 = { .name = "xdh_wei25519_693", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_693_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_693_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_693_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_693_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 176 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 694 for XDH, tcId is 177 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_694_peerpubkey[] = { 0xcf, 0x91, 0x1a, 0xc9, 0x1b, 0x0d, 0x94, 0x40, 0x49, 0xce, 0xc6, 0x6a, 0xe5, 0xef, 0x0c, 0x45, 0x49, 0xd1, 0xe6, 0x12, 0xe1, 0x07, 0xc6, 0x8e, 0x87, 0x26, 0x3a, 0x2f, 0xbc, 0xf8, 0x32, 0x3f, }; static const unsigned char xdh_wei25519_694_ourpubkey[] = { 0x19, 0xb8, 0x7d, 0xd5, 0xb9, 0x12, 0x1e, 0xd9, 0x9c, 0x80, 0xb7, 0xe9, 0xee, 0xfd, 0xe2, 0x12, 0x0d, 0x46, 0xc4, 0x41, 0x57, 0xbc, 0x0b, 0x25, 0x8e, 0x28, 0x56, 0x6f, 0x65, 0x87, 0x96, 0x56, }; static const unsigned char xdh_wei25519_694_privkey[] = { 0xb8, 0x39, 0x60, 0xf5, 0xd0, 0x61, 0x3c, 0xda, 0xac, 0x6d, 0xda, 0x69, 0x03, 0x51, 0x66, 0x6e, 0x9f, 0x27, 0x7b, 0xba, 0x6b, 0xd4, 0x06, 0xb0, 0xe2, 0x7a, 0x18, 0x86, 0xbb, 0x2d, 0x3e, 0x46, }; static const unsigned char xdh_wei25519_694_sharedsecret[] = { 0x71, 0x37, 0x3e, 0xbe, 0x67, 0xf3, 0x9a, 0x2c, 0x23, 0x00, 0x27, 0xc7, 0xdb, 0x4b, 0x3b, 0x74, 0xba, 0xb8, 0x0e, 0xd2, 0x12, 0xb2, 0x32, 0x67, 0x97, 0x85, 0xee, 0x10, 0xf4, 0x7c, 0x30, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_694 = { .name = "xdh_wei25519_694", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_694_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_694_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_694_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_694_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 177 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 695 for XDH, tcId is 178 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_695_peerpubkey[] = { 0x1e, 0x6e, 0xe5, 0x36, 0xe4, 0xf2, 0x6b, 0xbf, 0xb6, 0x31, 0x39, 0x95, 0x1a, 0x10, 0xf3, 0xba, 0xb6, 0x2e, 0x19, 0xed, 0x1e, 0xf8, 0x39, 0x71, 0x78, 0xd9, 0xc5, 0xd0, 0x43, 0x07, 0xcd, 0x40, }; static const unsigned char xdh_wei25519_695_ourpubkey[] = { 0x72, 0x56, 0x20, 0x72, 0xfc, 0x11, 0x38, 0x6a, 0x24, 0x1b, 0x6b, 0x00, 0x63, 0xb0, 0x72, 0x9b, 0x4b, 0xd4, 0xde, 0xc6, 0x5f, 0x91, 0x3e, 0xc6, 0x14, 0xc8, 0x78, 0xaf, 0x33, 0x26, 0xc1, 0x7f, }; static const unsigned char xdh_wei25519_695_privkey[] = { 0xd0, 0x3b, 0x75, 0xf0, 0x9a, 0xc8, 0x07, 0xdf, 0xd2, 0xee, 0x35, 0x2c, 0x04, 0xa1, 0xf2, 0x59, 0x84, 0x72, 0x0f, 0x78, 0x5f, 0xfa, 0xa0, 0xaf, 0x88, 0xbc, 0x5d, 0xb6, 0xff, 0x9c, 0x34, 0x53, }; static const unsigned char xdh_wei25519_695_sharedsecret[] = { 0x23, 0x8e, 0xef, 0x43, 0xc5, 0x89, 0x82, 0x2e, 0x1d, 0x3d, 0xe4, 0x1c, 0x1c, 0xc4, 0x6d, 0xcf, 0xec, 0x7a, 0x93, 0xfe, 0xbf, 0x37, 0xc8, 0x54, 0x6b, 0x66, 0x25, 0xe1, 0xa1, 0x23, 0x81, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_695 = { .name = "xdh_wei25519_695", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_695_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_695_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_695_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_695_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 178 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 696 for XDH, tcId is 179 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_696_peerpubkey[] = { 0x2f, 0x1c, 0x79, 0xad, 0x84, 0x88, 0xdb, 0x6f, 0x51, 0x46, 0x90, 0x3b, 0x2d, 0xc4, 0x6c, 0xfb, 0xfc, 0x83, 0x4b, 0xbc, 0xf0, 0x9b, 0x4d, 0xd7, 0x0c, 0x27, 0x4c, 0x4b, 0x67, 0xce, 0x60, 0x5d, }; static const unsigned char xdh_wei25519_696_ourpubkey[] = { 0xf8, 0x1d, 0x60, 0x02, 0xa0, 0x6e, 0x82, 0xec, 0x5c, 0xe0, 0x1a, 0x84, 0xf9, 0x35, 0x5c, 0x33, 0x8f, 0x13, 0x6c, 0xf3, 0xb1, 0x3e, 0x17, 0xe4, 0xb6, 0x6f, 0x24, 0xca, 0x86, 0x1f, 0x94, 0x0e, }; static const unsigned char xdh_wei25519_696_privkey[] = { 0xd0, 0x36, 0x94, 0x8c, 0x0e, 0xc2, 0x23, 0xf0, 0xee, 0x57, 0x7e, 0x39, 0x0d, 0xbf, 0x87, 0x22, 0x23, 0x58, 0xed, 0x19, 0x9f, 0x28, 0x23, 0x34, 0x5a, 0xd1, 0x54, 0xbb, 0xc4, 0xcb, 0xcc, 0x47, }; static const unsigned char xdh_wei25519_696_sharedsecret[] = { 0x87, 0xa7, 0x9c, 0x9c, 0x23, 0x1d, 0x3b, 0x95, 0x26, 0xb4, 0x9b, 0xf3, 0xd6, 0x83, 0xbf, 0x38, 0xc3, 0xc3, 0x19, 0xaf, 0x7c, 0x7c, 0x5d, 0x14, 0x56, 0x48, 0x73, 0x98, 0xda, 0x53, 0x50, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_696 = { .name = "xdh_wei25519_696", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_696_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_696_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_696_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_696_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 179 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 697 for XDH, tcId is 180 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_697_peerpubkey[] = { 0xfc, 0xcf, 0xe7, 0x42, 0xa6, 0x3e, 0xd9, 0xcb, 0x70, 0x95, 0x85, 0x60, 0xb5, 0xa0, 0x22, 0x60, 0x35, 0x0a, 0x7e, 0xcb, 0xaf, 0x8c, 0x57, 0xae, 0x04, 0x5f, 0x67, 0x1a, 0x29, 0xb4, 0xb5, 0x73, }; static const unsigned char xdh_wei25519_697_ourpubkey[] = { 0x79, 0x68, 0x83, 0x0f, 0x4f, 0x71, 0xa9, 0x1f, 0x42, 0x17, 0x00, 0x9c, 0x18, 0x89, 0x54, 0xf1, 0x8c, 0xc7, 0x85, 0xc7, 0xfa, 0xed, 0x06, 0xb3, 0xae, 0xb7, 0xc7, 0x89, 0xfd, 0xbc, 0xa5, 0x52, }; static const unsigned char xdh_wei25519_697_privkey[] = { 0xd0, 0x54, 0xde, 0xd6, 0x13, 0xfe, 0xbf, 0x29, 0x50, 0xac, 0x5c, 0x92, 0x7f, 0xcb, 0x12, 0x0c, 0x38, 0x7d, 0xe0, 0xba, 0x61, 0xb3, 0x31, 0xcd, 0x33, 0x02, 0x4c, 0x8b, 0x6e, 0x73, 0x70, 0x48, }; static const unsigned char xdh_wei25519_697_sharedsecret[] = { 0xd6, 0x83, 0xca, 0x61, 0x94, 0x45, 0x2d, 0x87, 0x8c, 0x12, 0xd7, 0xda, 0x35, 0xf2, 0x28, 0x33, 0xf9, 0x97, 0x28, 0xbb, 0xa8, 0x99, 0x31, 0xa5, 0x12, 0x74, 0xf6, 0x12, 0x10, 0x33, 0x6a, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_697 = { .name = "xdh_wei25519_697", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_697_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_697_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_697_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_697_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 180 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 698 for XDH, tcId is 181 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_698_peerpubkey[] = { 0xcb, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_698_ourpubkey[] = { 0xab, 0x3c, 0x1f, 0xa4, 0x01, 0xf5, 0x97, 0xf6, 0x47, 0x20, 0xf5, 0xfd, 0x88, 0xa6, 0x83, 0xec, 0xee, 0x47, 0x18, 0xf1, 0xd6, 0x9c, 0x78, 0x2e, 0x11, 0x72, 0xc9, 0xb5, 0x06, 0x7b, 0xe4, 0x2a, }; static const unsigned char xdh_wei25519_698_privkey[] = { 0xe8, 0x2c, 0x48, 0x06, 0x31, 0xfb, 0x15, 0x3b, 0xa2, 0x21, 0x1f, 0xe6, 0x03, 0x03, 0x2b, 0x3e, 0x71, 0xb1, 0x62, 0xdb, 0xd3, 0xc1, 0x1b, 0xec, 0x03, 0x20, 0x8f, 0xfc, 0xd5, 0x10, 0x65, 0x5f, }; static const unsigned char xdh_wei25519_698_sharedsecret[] = { 0xdb, 0xf6, 0x20, 0x35, 0x16, 0x63, 0x58, 0x40, 0xcf, 0x69, 0xa0, 0x2d, 0xb8, 0x7c, 0xf0, 0xd9, 0x5d, 0xae, 0x31, 0x5d, 0xa7, 0xfc, 0x1e, 0xc7, 0xce, 0x2b, 0x29, 0xe1, 0xf2, 0xdb, 0x66, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_698 = { .name = "xdh_wei25519_698", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_698_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_698_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_698_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_698_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 181 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 699 for XDH, tcId is 182 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_699_peerpubkey[] = { 0x10, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_699_ourpubkey[] = { 0x0f, 0x68, 0x2b, 0x00, 0x57, 0xf8, 0xc4, 0x08, 0x47, 0xd3, 0x60, 0x4e, 0xb1, 0xca, 0x1c, 0xb3, 0x85, 0xef, 0x4a, 0x01, 0xc5, 0x75, 0x03, 0xfa, 0xd1, 0xd0, 0x27, 0x55, 0xcd, 0xb9, 0x88, 0x7b, }; static const unsigned char xdh_wei25519_699_privkey[] = { 0xc0, 0xc0, 0x1d, 0x28, 0xc1, 0xca, 0xb0, 0x1f, 0x59, 0x70, 0x0a, 0xca, 0x5f, 0x18, 0xd2, 0x69, 0x76, 0x58, 0xb3, 0x7f, 0xdd, 0x54, 0xa3, 0x39, 0xff, 0x39, 0x1c, 0x0a, 0x1a, 0x1b, 0x16, 0x45, }; static const unsigned char xdh_wei25519_699_sharedsecret[] = { 0x1f, 0xe3, 0x14, 0x74, 0x43, 0x90, 0xd5, 0x25, 0x27, 0x8b, 0x1f, 0x5f, 0xbf, 0x10, 0x81, 0x01, 0xb8, 0xde, 0xd5, 0x87, 0x08, 0x13, 0x75, 0xed, 0x4a, 0xc4, 0xac, 0x69, 0x0d, 0x92, 0x41, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_699 = { .name = "xdh_wei25519_699", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_699_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_699_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_699_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_699_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 182 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 700 for XDH, tcId is 183 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_700_peerpubkey[] = { 0xdc, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_700_ourpubkey[] = { 0xe0, 0x90, 0x7b, 0x52, 0xfc, 0xdf, 0x94, 0xea, 0xc4, 0x32, 0x5d, 0xbc, 0xd0, 0x39, 0x07, 0xc3, 0x2e, 0x47, 0x70, 0x0d, 0x94, 0xfb, 0x0f, 0x34, 0x61, 0xd5, 0x71, 0xd3, 0x3c, 0x0c, 0x3a, 0x5d, }; static const unsigned char xdh_wei25519_700_privkey[] = { 0xc8, 0x2b, 0xde, 0x72, 0xdf, 0x36, 0x47, 0x96, 0x88, 0xc4, 0x85, 0xa8, 0xbf, 0x44, 0x2f, 0x4a, 0x34, 0x41, 0x2e, 0x42, 0x9c, 0x02, 0xdb, 0x97, 0x70, 0x4f, 0x03, 0xda, 0xf4, 0xdf, 0xd5, 0x42, }; static const unsigned char xdh_wei25519_700_sharedsecret[] = { 0xad, 0x45, 0x43, 0x95, 0xee, 0x39, 0x2b, 0xe6, 0x77, 0xbe, 0x7b, 0x9c, 0xb9, 0x14, 0x03, 0x8d, 0x57, 0xd2, 0xd8, 0x7e, 0xc5, 0x6c, 0xc9, 0x86, 0x78, 0xdd, 0x84, 0xf1, 0x99, 0x20, 0x91, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_700 = { .name = "xdh_wei25519_700", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_700_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_700_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_700_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_700_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 183 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 701 for XDH, tcId is 184 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_701_peerpubkey[] = { 0x21, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_701_ourpubkey[] = { 0x71, 0xb7, 0x17, 0x90, 0x08, 0x0b, 0xcf, 0x27, 0x02, 0x36, 0x53, 0x2c, 0x17, 0x84, 0xc1, 0x68, 0xcc, 0xeb, 0xac, 0xd1, 0x28, 0xa7, 0x45, 0xfc, 0x36, 0x01, 0x6b, 0xde, 0x7d, 0x40, 0xcb, 0x26, }; static const unsigned char xdh_wei25519_701_privkey[] = { 0x50, 0x3f, 0x69, 0x76, 0x17, 0xfb, 0x02, 0xa7, 0xb8, 0xef, 0x00, 0xba, 0x34, 0xe7, 0xfc, 0x8c, 0xe9, 0x3f, 0x9e, 0xc3, 0xe1, 0xcb, 0xfe, 0x4b, 0xf2, 0xc0, 0x5b, 0xce, 0xe0, 0xcb, 0x97, 0x57, }; static const unsigned char xdh_wei25519_701_sharedsecret[] = { 0xc6, 0xd6, 0x49, 0x92, 0x55, 0x13, 0x33, 0x98, 0xf9, 0xdd, 0x7f, 0x32, 0x52, 0x5d, 0xb9, 0x77, 0xa5, 0x38, 0x11, 0x88, 0x00, 0xbf, 0xaf, 0x3a, 0xad, 0x8b, 0xcd, 0x26, 0xf0, 0x2c, 0x38, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_701 = { .name = "xdh_wei25519_701", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_701_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_701_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_701_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_701_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 2, tcId is 184 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 702 for XDH, tcId is 185 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_702_peerpubkey[] = { 0xcc, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_702_ourpubkey[] = { 0xed, 0x70, 0x4e, 0x2f, 0x9f, 0x7e, 0x70, 0xb3, 0x51, 0x12, 0x44, 0xe8, 0x09, 0x64, 0x52, 0xba, 0x9f, 0x54, 0xab, 0xcb, 0x40, 0xf9, 0x74, 0x25, 0xf2, 0xef, 0xd8, 0x06, 0xa3, 0x23, 0x00, 0x18, }; static const unsigned char xdh_wei25519_702_privkey[] = { 0x58, 0xcd, 0x4c, 0xa1, 0xe4, 0x33, 0x11, 0x88, 0xde, 0x2b, 0x28, 0x89, 0x41, 0x9c, 0xe2, 0x0e, 0xc5, 0xef, 0x88, 0xa0, 0xe9, 0x3a, 0xf0, 0x92, 0x09, 0x90, 0x65, 0x55, 0x1b, 0x90, 0x4e, 0x41, }; static const unsigned char xdh_wei25519_702_sharedsecret[] = { 0x0d, 0x74, 0x21, 0x4d, 0xa1, 0x34, 0x4b, 0x11, 0x1d, 0x59, 0xdf, 0xad, 0x37, 0x13, 0xeb, 0x56, 0xef, 0xfe, 0x7c, 0x56, 0x0c, 0x59, 0xcb, 0xbb, 0x99, 0xec, 0x31, 0x39, 0x62, 0xdb, 0xba, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_702 = { .name = "xdh_wei25519_702", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_702_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_702_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_702_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_702_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 185 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 703 for XDH, tcId is 186 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_703_peerpubkey[] = { 0x11, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_703_ourpubkey[] = { 0xf6, 0x0d, 0x77, 0x5d, 0xd7, 0xdb, 0x18, 0xe4, 0x93, 0xc0, 0x0e, 0x9e, 0x2b, 0xb7, 0x14, 0xb6, 0x52, 0xb1, 0xdc, 0x4d, 0x0c, 0xa7, 0xdd, 0xed, 0xfc, 0x8c, 0x2f, 0xfb, 0xe6, 0x2c, 0x4e, 0x5f, }; static const unsigned char xdh_wei25519_703_privkey[] = { 0x00, 0x4e, 0xa3, 0x44, 0x8b, 0x84, 0xca, 0x50, 0x9e, 0xfe, 0xc5, 0xfc, 0xc2, 0x4c, 0x63, 0xee, 0x98, 0x4d, 0xef, 0x63, 0xb2, 0x9d, 0xeb, 0x90, 0x37, 0x89, 0x47, 0x09, 0x70, 0x9c, 0x09, 0x57, }; static const unsigned char xdh_wei25519_703_sharedsecret[] = { 0x7b, 0x9d, 0xbf, 0x8d, 0x6c, 0x6d, 0x65, 0x89, 0x8b, 0x51, 0x81, 0x67, 0xbf, 0x40, 0x11, 0xd5, 0x4d, 0xdc, 0x26, 0x5d, 0x95, 0x3c, 0x07, 0x43, 0xd7, 0x86, 0x8e, 0x22, 0xd9, 0x90, 0x9e, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_703 = { .name = "xdh_wei25519_703", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_703_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_703_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_703_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_703_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 186 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 704 for XDH, tcId is 187 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_704_peerpubkey[] = { 0xdd, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_704_ourpubkey[] = { 0xd9, 0x42, 0xdd, 0x4f, 0x40, 0xf2, 0x63, 0xfc, 0xa5, 0x93, 0x50, 0x2b, 0x0c, 0x59, 0x64, 0xa3, 0x7d, 0x55, 0xf5, 0x8e, 0x1e, 0x98, 0x13, 0x14, 0x73, 0x75, 0x2d, 0xaa, 0x13, 0xe9, 0x0b, 0x40, }; static const unsigned char xdh_wei25519_704_privkey[] = { 0xc8, 0xa6, 0xeb, 0x00, 0xa4, 0xd7, 0x4b, 0xbd, 0xff, 0x23, 0x95, 0x22, 0xc3, 0xc8, 0x91, 0xed, 0x7c, 0xe1, 0x90, 0x4b, 0xe2, 0xa3, 0x29, 0xcd, 0x0a, 0xe0, 0x06, 0x1a, 0x25, 0x3c, 0x95, 0x42, }; static const unsigned char xdh_wei25519_704_sharedsecret[] = { 0xfb, 0x0e, 0x02, 0x09, 0xc5, 0xb9, 0xd5, 0x1b, 0x40, 0x11, 0x83, 0xd7, 0xe5, 0x6a, 0x59, 0x08, 0x1d, 0x37, 0xa6, 0x2a, 0xb1, 0xe0, 0x57, 0x53, 0xa0, 0x66, 0x7e, 0xeb, 0xd3, 0x77, 0xfd, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_704 = { .name = "xdh_wei25519_704", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_704_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_704_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_704_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_704_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 187 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 705 for XDH, tcId is 188 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_705_peerpubkey[] = { 0x22, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_705_ourpubkey[] = { 0x53, 0x4d, 0xe9, 0x07, 0xe1, 0x10, 0x74, 0x67, 0xaf, 0x00, 0x42, 0x45, 0x00, 0xee, 0x2b, 0x40, 0x2f, 0x2d, 0xec, 0x28, 0x02, 0xb2, 0x41, 0xb2, 0x44, 0xb7, 0x48, 0xd6, 0xf5, 0xb8, 0xbc, 0x5d, }; static const unsigned char xdh_wei25519_705_privkey[] = { 0x50, 0x32, 0x2f, 0xf0, 0xd0, 0xdc, 0xdd, 0x6b, 0x14, 0xf3, 0x07, 0xc0, 0x4d, 0xfe, 0xce, 0xfe, 0x5b, 0x7c, 0xde, 0xaf, 0x92, 0xbf, 0xfb, 0x91, 0x9e, 0x9d, 0x62, 0xed, 0x27, 0x07, 0x90, 0x40, }; static const unsigned char xdh_wei25519_705_sharedsecret[] = { 0xdb, 0xe7, 0xa1, 0xfe, 0x3b, 0x33, 0x7c, 0x97, 0x20, 0x12, 0x3e, 0x6f, 0xcc, 0x02, 0xcf, 0x96, 0x95, 0x3a, 0x17, 0xdc, 0x9b, 0x39, 0x5a, 0x22, 0x06, 0xcb, 0x1b, 0xf9, 0x1d, 0x41, 0x75, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_705 = { .name = "xdh_wei25519_705", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_705_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_705_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_705_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_705_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 188 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 706 for XDH, tcId is 189 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_706_peerpubkey[] = { 0xe5, 0x8b, 0xac, 0xce, 0xde, 0x32, 0xbc, 0xf3, 0x3b, 0x3b, 0x6e, 0x3d, 0x69, 0xc0, 0x2a, 0xf8, 0x28, 0x4a, 0x96, 0x31, 0xde, 0x74, 0xb6, 0xaf, 0x3f, 0x04, 0x6a, 0x93, 0x69, 0xdf, 0x04, 0x0f, }; static const unsigned char xdh_wei25519_706_ourpubkey[] = { 0x1b, 0xc2, 0x5e, 0x86, 0xd6, 0x36, 0x1e, 0xca, 0x86, 0xd8, 0x51, 0xec, 0x7c, 0x3c, 0x85, 0xd3, 0xf7, 0x4d, 0x3c, 0x43, 0x2f, 0x73, 0xbb, 0xb6, 0x70, 0x69, 0x2c, 0xf3, 0x8c, 0x34, 0xe2, 0x0f, }; static const unsigned char xdh_wei25519_706_privkey[] = { 0xe0, 0x32, 0x8c, 0x7d, 0x18, 0x8d, 0x98, 0xfa, 0xf2, 0xac, 0x72, 0xd7, 0x28, 0xb7, 0xd1, 0x4f, 0x2b, 0xbb, 0xd7, 0xa9, 0x4d, 0x0f, 0xbd, 0x8e, 0x8f, 0x79, 0xab, 0xe0, 0xb1, 0xfe, 0x10, 0x55, }; static const unsigned char xdh_wei25519_706_sharedsecret[] = { 0x97, 0xbd, 0x42, 0x09, 0x3e, 0x0d, 0x48, 0xf9, 0x73, 0xf0, 0x59, 0xdd, 0x7a, 0xb9, 0xf9, 0x7d, 0x13, 0xd5, 0xb0, 0xd5, 0xee, 0xdf, 0xfd, 0xf6, 0xda, 0x3c, 0x3c, 0x43, 0x28, 0x72, 0xc5, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_706 = { .name = "xdh_wei25519_706", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_706_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_706_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_706_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_706_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 189 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 707 for XDH, tcId is 190 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_707_peerpubkey[] = { 0xc6, 0xd5, 0xc6, 0x93, 0xfc, 0x0a, 0x4e, 0x2d, 0xf6, 0xb2, 0x90, 0x02, 0x68, 0x60, 0x56, 0x6a, 0x16, 0x6b, 0x6d, 0x7a, 0xeb, 0xe3, 0xc9, 0x88, 0x28, 0xd4, 0x92, 0x74, 0x5c, 0x8d, 0xf9, 0x36, }; static const unsigned char xdh_wei25519_707_ourpubkey[] = { 0xac, 0x36, 0x17, 0x82, 0xfc, 0x13, 0x50, 0xca, 0xc4, 0xc8, 0xd3, 0xd2, 0x4a, 0x6f, 0xc0, 0x69, 0x0d, 0x8f, 0x08, 0xc0, 0x08, 0x72, 0x0d, 0x0c, 0x11, 0xdf, 0xdf, 0x2d, 0xb4, 0x0a, 0xf6, 0x32, }; static const unsigned char xdh_wei25519_707_privkey[] = { 0x50, 0x17, 0x67, 0x9a, 0x17, 0xbd, 0x23, 0xad, 0xf9, 0x5a, 0xd4, 0x7e, 0x31, 0x0f, 0xc6, 0x52, 0x6f, 0x4b, 0xa9, 0xca, 0x3b, 0x08, 0x39, 0xb5, 0x3b, 0xd0, 0xd9, 0x28, 0x39, 0xeb, 0x5b, 0x4f, }; static const unsigned char xdh_wei25519_707_sharedsecret[] = { 0x99, 0xbc, 0xbc, 0x7b, 0x9a, 0xa5, 0xe2, 0x55, 0x80, 0xf9, 0x2b, 0xf5, 0x89, 0xe9, 0x5d, 0xae, 0x87, 0x4b, 0x83, 0xe4, 0x20, 0x22, 0x5d, 0x8a, 0x93, 0xe1, 0x8e, 0x96, 0xda, 0xc0, 0x0b, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_707 = { .name = "xdh_wei25519_707", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_707_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_707_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_707_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_707_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 190 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 708 for XDH, tcId is 191 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_708_peerpubkey[] = { 0xd1, 0x5f, 0x4b, 0xf2, 0xef, 0x5c, 0x7b, 0xda, 0x4e, 0xe9, 0x51, 0x96, 0xf3, 0xc0, 0xdf, 0x71, 0x0d, 0xf5, 0xd3, 0xd2, 0x06, 0x36, 0x0f, 0xc3, 0x17, 0x4e, 0xa7, 0x5c, 0x3a, 0xa3, 0xa7, 0x43, }; static const unsigned char xdh_wei25519_708_ourpubkey[] = { 0x8e, 0xbd, 0x3f, 0x86, 0xbf, 0x4e, 0xdc, 0xc2, 0x55, 0x15, 0xf5, 0x3c, 0x83, 0x3d, 0x5e, 0xa4, 0x39, 0x5c, 0x72, 0x78, 0xc1, 0xe3, 0xa2, 0x9d, 0x5d, 0x53, 0x95, 0x5d, 0x1e, 0x2f, 0xe1, 0x5f, }; static const unsigned char xdh_wei25519_708_privkey[] = { 0x28, 0x64, 0xaa, 0xf6, 0x1c, 0x14, 0x6d, 0xf0, 0x6c, 0xc2, 0x56, 0xb0, 0x65, 0xf6, 0x6b, 0x34, 0x98, 0x5c, 0xc0, 0x15, 0xda, 0x5b, 0x1d, 0x64, 0x7a, 0x6e, 0xd4, 0xe2, 0xc7, 0x6b, 0xfc, 0x43, }; static const unsigned char xdh_wei25519_708_sharedsecret[] = { 0xaf, 0xa2, 0xad, 0xb5, 0x2a, 0x67, 0x0a, 0xa9, 0xc3, 0xec, 0x30, 0x20, 0xd5, 0xfd, 0xa2, 0x85, 0x47, 0x4e, 0xde, 0x5c, 0x4f, 0x4c, 0x30, 0xe9, 0x23, 0x8b, 0x88, 0x4a, 0x77, 0x96, 0x94, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_708 = { .name = "xdh_wei25519_708", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_708_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_708_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_708_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_708_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 191 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 709 for XDH, tcId is 192 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_709_peerpubkey[] = { 0x6d, 0xff, 0xb0, 0xa2, 0x58, 0x88, 0xbf, 0x23, 0xcf, 0x1a, 0xc7, 0x01, 0xbf, 0xbd, 0xed, 0xe8, 0xa1, 0x8e, 0x32, 0x3b, 0x9d, 0x4d, 0x3d, 0x31, 0xe5, 0x16, 0xa0, 0x5f, 0xce, 0x7c, 0xe8, 0x72, }; static const unsigned char xdh_wei25519_709_ourpubkey[] = { 0xd7, 0xa6, 0x95, 0x6c, 0xd8, 0xbf, 0x1c, 0x99, 0xee, 0x1b, 0x76, 0x24, 0xc5, 0x43, 0x0e, 0x84, 0x5a, 0xe0, 0x71, 0x72, 0x6b, 0x4b, 0x1a, 0x9a, 0xf8, 0x84, 0x28, 0xe1, 0xda, 0xf1, 0xde, 0x4b, }; static const unsigned char xdh_wei25519_709_privkey[] = { 0x18, 0x4a, 0x6c, 0xfb, 0xab, 0xcb, 0xd1, 0x50, 0x7a, 0x2e, 0xa4, 0x1f, 0x52, 0x79, 0x65, 0x83, 0xdb, 0xdb, 0x85, 0x1b, 0x88, 0xa8, 0x57, 0x81, 0xee, 0x8e, 0x3c, 0x28, 0x78, 0x2c, 0x33, 0x49, }; static const unsigned char xdh_wei25519_709_sharedsecret[] = { 0xe6, 0xa2, 0xfc, 0x8e, 0xd9, 0x3c, 0xe3, 0x53, 0x01, 0x78, 0xfe, 0xf9, 0x4b, 0xb0, 0x05, 0x6f, 0x43, 0x11, 0x8e, 0x5b, 0xe3, 0xa6, 0xea, 0xbe, 0xe7, 0xd2, 0xed, 0x38, 0x4a, 0x73, 0x80, 0x0c, }; static const wycheproof_xdh_test xdh_wei25519_709 = { .name = "xdh_wei25519_709", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_709_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_709_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_709_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_709_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 192 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 710 for XDH, tcId is 193 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_710_peerpubkey[] = { 0x21, 0xf8, 0x6d, 0x12, 0x3c, 0x92, 0x3a, 0x92, 0xaa, 0xf2, 0x56, 0x3d, 0xf9, 0x4b, 0x5b, 0x5c, 0x93, 0x87, 0x4f, 0x5b, 0x7a, 0xb9, 0x95, 0x4a, 0xaa, 0x53, 0xe3, 0xd7, 0x2f, 0x0f, 0xf6, 0x7e, }; static const unsigned char xdh_wei25519_710_ourpubkey[] = { 0x49, 0xc4, 0xf0, 0x7c, 0x5a, 0x48, 0x91, 0x3b, 0x4a, 0x12, 0xcf, 0xc8, 0xb2, 0xbc, 0x35, 0xf2, 0xfa, 0x01, 0x3e, 0x79, 0x41, 0x53, 0x31, 0x60, 0x47, 0x7c, 0x80, 0x3f, 0x9d, 0xbf, 0x68, 0x17, }; static const unsigned char xdh_wei25519_710_privkey[] = { 0xc8, 0x5f, 0x95, 0x4b, 0x85, 0xbc, 0x10, 0x2a, 0xca, 0x79, 0x96, 0x71, 0x79, 0x34, 0x52, 0x17, 0x65, 0x38, 0xd0, 0x77, 0x86, 0x2e, 0xe4, 0x5e, 0x0b, 0x25, 0x36, 0x19, 0x76, 0x7d, 0xff, 0x42, }; static const unsigned char xdh_wei25519_710_sharedsecret[] = { 0x7f, 0xc2, 0x87, 0x81, 0x63, 0x14, 0x10, 0xc5, 0xa6, 0xf2, 0x5c, 0x9c, 0xfd, 0x91, 0xec, 0x0a, 0x84, 0x8a, 0xdb, 0x7a, 0x9e, 0xb4, 0x0b, 0xc5, 0xb4, 0x95, 0xd0, 0xf4, 0x75, 0x3f, 0x22, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_710 = { .name = "xdh_wei25519_710", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_710_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_710_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_710_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_710_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 193 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 711 for XDH, tcId is 194 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_711_peerpubkey[] = { 0x58, 0x7c, 0x34, 0x7c, 0x8c, 0xb2, 0x49, 0x56, 0x4a, 0xb7, 0x73, 0x83, 0xde, 0x35, 0x8c, 0xc2, 0xa1, 0x9f, 0xe7, 0x37, 0x0a, 0x84, 0x76, 0xd4, 0x30, 0x91, 0x12, 0x35, 0x98, 0x94, 0x1c, 0x7f, }; static const unsigned char xdh_wei25519_711_ourpubkey[] = { 0xa3, 0xf7, 0x7e, 0xd0, 0xd8, 0x92, 0x50, 0xa8, 0x50, 0x4a, 0xdf, 0x88, 0x07, 0x1d, 0x82, 0x79, 0xaf, 0x8d, 0xe2, 0x54, 0xaa, 0x3f, 0x44, 0xe4, 0x58, 0xff, 0x59, 0x90, 0x56, 0x85, 0xf6, 0x77, }; static const unsigned char xdh_wei25519_711_privkey[] = { 0x50, 0xe3, 0xe5, 0xa9, 0xa1, 0x9b, 0xe2, 0xee, 0x35, 0x48, 0xb0, 0x96, 0x46, 0x72, 0xfb, 0x5e, 0x31, 0x34, 0xcb, 0x0d, 0x2f, 0x7a, 0xdf, 0x00, 0x0e, 0x45, 0x56, 0xd0, 0xff, 0xa3, 0x76, 0x43, }; static const unsigned char xdh_wei25519_711_sharedsecret[] = { 0x31, 0x4d, 0x8a, 0x2b, 0x5c, 0x76, 0xcc, 0x7e, 0xe1, 0x21, 0x7d, 0xf2, 0x28, 0x3b, 0x7e, 0x67, 0x24, 0x43, 0x6e, 0x27, 0x3a, 0xeb, 0x80, 0x62, 0x8d, 0xce, 0x06, 0x00, 0xab, 0x47, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_711 = { .name = "xdh_wei25519_711", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_711_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_711_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_711_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_711_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 194 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 712 for XDH, tcId is 195 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_712_peerpubkey[] = { 0xf5, 0xc6, 0x31, 0x1a, 0x1d, 0xd1, 0xb9, 0xe0, 0xf8, 0xcf, 0xd0, 0x34, 0xac, 0x6d, 0x01, 0xbf, 0x28, 0xd9, 0xd0, 0xf9, 0x62, 0xa1, 0x93, 0x4a, 0xe2, 0xcb, 0x97, 0xcb, 0x17, 0x3d, 0xd8, 0x10, }; static const unsigned char xdh_wei25519_712_ourpubkey[] = { 0x4e, 0xf1, 0xb5, 0xed, 0xef, 0x93, 0x3a, 0x04, 0xe8, 0x41, 0x94, 0x25, 0x73, 0x55, 0x33, 0x94, 0xc7, 0xf2, 0xd2, 0x5b, 0x91, 0x2b, 0xbf, 0x23, 0x6a, 0x1d, 0xeb, 0xa6, 0x42, 0xaf, 0xaa, 0x43, }; static const unsigned char xdh_wei25519_712_privkey[] = { 0x08, 0xec, 0xe5, 0x80, 0xbb, 0x6d, 0xdf, 0x96, 0x55, 0x9b, 0x81, 0xd7, 0xa9, 0x7d, 0xd4, 0x53, 0x1d, 0xef, 0x6c, 0xc7, 0x8d, 0x44, 0x8a, 0x70, 0xce, 0xba, 0xbd, 0xd2, 0x6c, 0xaa, 0xb1, 0x46, }; static const unsigned char xdh_wei25519_712_sharedsecret[] = { 0x2b, 0xfd, 0x8e, 0x53, 0x08, 0xc3, 0x44, 0x98, 0xeb, 0x2b, 0x4d, 0xaf, 0x9e, 0xd5, 0x1c, 0xf6, 0x23, 0xda, 0x3b, 0xea, 0xeb, 0x0e, 0xfd, 0x3d, 0x68, 0x7f, 0x2b, 0x8b, 0xec, 0xbf, 0x31, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_712 = { .name = "xdh_wei25519_712", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_712_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_712_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_712_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_712_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 195 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 713 for XDH, tcId is 196 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_713_peerpubkey[] = { 0x93, 0x16, 0xc0, 0x6d, 0x27, 0xb2, 0x4a, 0xbc, 0x67, 0x3f, 0xfb, 0x51, 0x05, 0xc5, 0xb9, 0xa8, 0x9b, 0xdf, 0xaa, 0x79, 0xe8, 0x1c, 0xdb, 0xb8, 0x95, 0x56, 0x07, 0x43, 0x77, 0xc7, 0x03, 0x20, }; static const unsigned char xdh_wei25519_713_ourpubkey[] = { 0x7b, 0xb7, 0x68, 0x8b, 0xf6, 0xc6, 0x24, 0xee, 0x94, 0xc4, 0xce, 0x25, 0xdc, 0x5e, 0xae, 0x5c, 0x60, 0x38, 0x1a, 0xf8, 0xee, 0xe2, 0x30, 0x80, 0x51, 0xe2, 0xa2, 0x71, 0xfe, 0x0e, 0x04, 0x7d, }; static const unsigned char xdh_wei25519_713_privkey[] = { 0xa8, 0x86, 0x03, 0x3e, 0x9d, 0xc2, 0xb6, 0xa9, 0x13, 0xff, 0xfb, 0xc2, 0xbd, 0x40, 0x2e, 0x8c, 0x11, 0xec, 0x34, 0xd4, 0x9c, 0x0d, 0xc0, 0xfa, 0x14, 0x29, 0x32, 0x9b, 0x69, 0x4a, 0x28, 0x5f, }; static const unsigned char xdh_wei25519_713_sharedsecret[] = { 0xd5, 0x3c, 0x3d, 0x6f, 0x53, 0x8c, 0x12, 0x6b, 0x93, 0x36, 0x78, 0x5d, 0x1d, 0x4e, 0x69, 0x35, 0xdc, 0x8b, 0x21, 0xf3, 0xd7, 0xe9, 0xc2, 0x5b, 0xc2, 0x40, 0xa0, 0x3e, 0x39, 0x02, 0x33, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_713 = { .name = "xdh_wei25519_713", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_713_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_713_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_713_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_713_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 196 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 714 for XDH, tcId is 197 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_714_peerpubkey[] = { 0x8a, 0x41, 0x79, 0x80, 0x7b, 0x07, 0x64, 0x9e, 0x04, 0xf7, 0x11, 0xbf, 0x94, 0x73, 0xa7, 0x99, 0x93, 0xf8, 0x42, 0x93, 0xe4, 0xa8, 0xb9, 0xaf, 0xee, 0x44, 0xa2, 0x2e, 0xf1, 0x00, 0x0b, 0x21, }; static const unsigned char xdh_wei25519_714_ourpubkey[] = { 0x11, 0xf5, 0xc9, 0xda, 0xad, 0x49, 0xcc, 0xc6, 0xfa, 0x91, 0x9c, 0x09, 0x40, 0xff, 0xc9, 0x5d, 0xad, 0x43, 0x7a, 0xcc, 0xb4, 0xb5, 0xbd, 0x7d, 0x71, 0xb7, 0xd6, 0x8e, 0x37, 0x9a, 0xe7, 0x7e, }; static const unsigned char xdh_wei25519_714_privkey[] = { 0x98, 0xb1, 0xcc, 0x20, 0x20, 0xa8, 0xec, 0x57, 0x5d, 0x5c, 0x46, 0xc7, 0x60, 0x24, 0xcf, 0x7c, 0x7a, 0xd7, 0x62, 0x8e, 0xb9, 0x09, 0x73, 0x0b, 0xc4, 0xf4, 0x60, 0xaa, 0xf0, 0xe6, 0xda, 0x4b, }; static const unsigned char xdh_wei25519_714_sharedsecret[] = { 0x45, 0x31, 0x88, 0x1a, 0xd9, 0xcf, 0x01, 0x16, 0x93, 0xdd, 0xf0, 0x28, 0x42, 0xfb, 0xda, 0xb8, 0x6d, 0x71, 0xe2, 0x76, 0x80, 0xe9, 0xb4, 0xb3, 0xf9, 0x3b, 0x4c, 0xf1, 0x5e, 0x73, 0x7e, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_714 = { .name = "xdh_wei25519_714", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_714_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_714_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_714_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_714_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 197 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 715 for XDH, tcId is 198 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_715_peerpubkey[] = { 0xa7, 0x73, 0x27, 0x7a, 0xe1, 0x02, 0x9f, 0x85, 0x47, 0x49, 0x13, 0x7b, 0x0f, 0x3a, 0x02, 0xb5, 0xb3, 0x56, 0x0b, 0x9c, 0x4c, 0xa4, 0xdb, 0xde, 0xb3, 0x12, 0x5e, 0xc8, 0x96, 0xb8, 0x18, 0x41, }; static const unsigned char xdh_wei25519_715_ourpubkey[] = { 0x6e, 0xaf, 0x3d, 0x64, 0x73, 0xc3, 0x08, 0xb0, 0xb0, 0xd8, 0x6f, 0xc8, 0xcb, 0x4f, 0x46, 0x02, 0x6d, 0x75, 0x18, 0x6d, 0x06, 0x63, 0xff, 0x8e, 0x62, 0x9c, 0xf7, 0x95, 0x31, 0x50, 0xd8, 0x0f, }; static const unsigned char xdh_wei25519_715_privkey[] = { 0xc8, 0xe1, 0x93, 0xde, 0x16, 0x2a, 0xa3, 0x49, 0xa3, 0x43, 0x2c, 0x7a, 0x0c, 0x05, 0x21, 0xd9, 0x2c, 0xbc, 0x5e, 0x3b, 0xf8, 0x26, 0x15, 0xe4, 0x29, 0x55, 0xdd, 0x67, 0xec, 0x12, 0x34, 0x5f, }; static const unsigned char xdh_wei25519_715_sharedsecret[] = { 0x7b, 0xa4, 0xd3, 0xde, 0x69, 0x7a, 0xa1, 0x1a, 0xdd, 0xf3, 0x91, 0x1e, 0x93, 0xc9, 0x4b, 0x7e, 0x94, 0x3b, 0xef, 0xf3, 0xe3, 0xb1, 0xb5, 0x6b, 0x7d, 0xe4, 0x46, 0x1f, 0x9e, 0x48, 0xbe, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_715 = { .name = "xdh_wei25519_715", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_715_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_715_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_715_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_715_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 198 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 716 for XDH, tcId is 199 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_716_peerpubkey[] = { 0x1e, 0xce, 0xb2, 0xb3, 0x76, 0x32, 0x31, 0xbc, 0x3c, 0x99, 0xdc, 0x62, 0x26, 0x6a, 0x09, 0xab, 0x5d, 0x36, 0x61, 0xc7, 0x56, 0x52, 0x4c, 0xdd, 0xc5, 0xaa, 0xbc, 0xed, 0xee, 0x92, 0xda, 0x61, }; static const unsigned char xdh_wei25519_716_ourpubkey[] = { 0xb9, 0xf9, 0xb2, 0x4b, 0xf4, 0x28, 0x69, 0xeb, 0xe7, 0x40, 0x2f, 0x06, 0xd8, 0x62, 0x4b, 0xad, 0x4c, 0x89, 0x2e, 0xf4, 0x31, 0x01, 0x0c, 0x45, 0x26, 0x76, 0xcf, 0x5d, 0xed, 0x47, 0x04, 0x2b, }; static const unsigned char xdh_wei25519_716_privkey[] = { 0x88, 0xe0, 0x12, 0x37, 0xb3, 0x36, 0x01, 0x40, 0x75, 0x67, 0x60, 0x82, 0xaf, 0xbd, 0xe5, 0x1d, 0x59, 0x5d, 0x47, 0xe1, 0xfa, 0x52, 0x14, 0xb5, 0x1a, 0x35, 0x1a, 0xbb, 0xf6, 0x49, 0x14, 0x42, }; static const unsigned char xdh_wei25519_716_sharedsecret[] = { 0xbc, 0xf0, 0x88, 0x40, 0x52, 0xf9, 0x12, 0xa6, 0x3b, 0xba, 0xb8, 0xc5, 0xc6, 0x74, 0xb9, 0x1c, 0x49, 0x89, 0xae, 0x05, 0x1f, 0xa0, 0x7f, 0xcf, 0x30, 0xcb, 0x53, 0x17, 0xfb, 0x1f, 0x2e, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_716 = { .name = "xdh_wei25519_716", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_716_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_716_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_716_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_716_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 199 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 717 for XDH, tcId is 200 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_717_peerpubkey[] = { 0x9a, 0x2a, 0xcb, 0xb3, 0xb5, 0xa3, 0x86, 0xa6, 0x10, 0x2e, 0x37, 0x28, 0xbe, 0x3a, 0x97, 0xde, 0x03, 0x98, 0x1d, 0x5c, 0x71, 0xfd, 0x2d, 0x95, 0x46, 0x04, 0xbe, 0xe3, 0xd3, 0xd0, 0xce, 0x62, }; static const unsigned char xdh_wei25519_717_ourpubkey[] = { 0xdd, 0x4b, 0xb7, 0x93, 0x00, 0xe0, 0x70, 0xbf, 0x0d, 0xe8, 0xf7, 0xcd, 0x3a, 0x9d, 0xe8, 0xe7, 0x3e, 0x30, 0x43, 0x46, 0x5b, 0x3a, 0x5f, 0x4e, 0x95, 0x88, 0xc1, 0x11, 0x40, 0xb6, 0xfe, 0x4e, }; static const unsigned char xdh_wei25519_717_privkey[] = { 0xe8, 0x23, 0x13, 0xe4, 0x51, 0xa1, 0x98, 0xdc, 0xe4, 0xae, 0x95, 0xc6, 0x83, 0x2a, 0x82, 0x81, 0xd8, 0x47, 0xfc, 0x87, 0xb2, 0x8d, 0xb0, 0x0f, 0xe4, 0x37, 0x57, 0xc1, 0x6c, 0xc4, 0x9c, 0x4a, }; static const unsigned char xdh_wei25519_717_sharedsecret[] = { 0xe5, 0x77, 0x2a, 0x92, 0xb1, 0x03, 0xee, 0x69, 0x6a, 0x99, 0x97, 0x05, 0xcf, 0x07, 0x11, 0x0c, 0x46, 0x0f, 0x05, 0x45, 0x68, 0x2d, 0xb3, 0xfa, 0xc5, 0xd8, 0x75, 0xd6, 0x96, 0x48, 0xbc, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_717 = { .name = "xdh_wei25519_717", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_717_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_717_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_717_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_717_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 200 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 718 for XDH, tcId is 201 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_718_peerpubkey[] = { 0x27, 0x43, 0x0e, 0x1c, 0x2d, 0x30, 0x89, 0x70, 0x8b, 0xca, 0x56, 0xd7, 0xa5, 0xad, 0x03, 0x79, 0x28, 0x28, 0xd4, 0x76, 0x85, 0xb6, 0x13, 0x1e, 0x02, 0x3d, 0xd0, 0x80, 0x87, 0x16, 0xb8, 0x63, }; static const unsigned char xdh_wei25519_718_ourpubkey[] = { 0x7b, 0xbf, 0xe8, 0x67, 0x74, 0x7f, 0x63, 0xe6, 0x10, 0xfa, 0x3a, 0x2f, 0x06, 0xdd, 0xfa, 0xb7, 0x34, 0xf8, 0x4a, 0x2f, 0x3f, 0xc6, 0x08, 0xab, 0xde, 0xeb, 0xdf, 0x1f, 0x6a, 0xb8, 0x30, 0x68, }; static const unsigned char xdh_wei25519_718_privkey[] = { 0x28, 0x28, 0x59, 0x4d, 0x16, 0x76, 0x8e, 0x58, 0x6d, 0xf3, 0x96, 0x01, 0xec, 0xc8, 0x6d, 0x3f, 0xad, 0x63, 0x89, 0xd8, 0x72, 0xb5, 0x3f, 0xca, 0x3e, 0xdc, 0xaf, 0x6f, 0xb9, 0x58, 0xf6, 0x53, }; static const unsigned char xdh_wei25519_718_sharedsecret[] = { 0x37, 0x8c, 0x29, 0xe3, 0xbe, 0x97, 0xa2, 0x1b, 0x9f, 0x81, 0xaf, 0xca, 0x0d, 0x0f, 0x5c, 0x24, 0x2f, 0xd4, 0xf8, 0x96, 0x11, 0x4f, 0x77, 0xa7, 0x71, 0x55, 0xd0, 0x6c, 0xe5, 0xfb, 0xfa, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_718 = { .name = "xdh_wei25519_718", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_718_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_718_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_718_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_718_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 201 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 719 for XDH, tcId is 202 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_719_peerpubkey[] = { 0x4e, 0xf3, 0x67, 0x90, 0x1a, 0xac, 0x8b, 0xa9, 0x0a, 0x50, 0xe0, 0xcf, 0x86, 0xca, 0x4e, 0x4a, 0x3f, 0xf1, 0x64, 0xfb, 0x12, 0x16, 0x05, 0xbe, 0x34, 0x6e, 0x2e, 0x48, 0xd0, 0x4a, 0xc9, 0x12, }; static const unsigned char xdh_wei25519_719_ourpubkey[] = { 0xd1, 0xd0, 0x66, 0x4a, 0xd0, 0xc4, 0x18, 0xe6, 0x16, 0xe3, 0x1a, 0x5e, 0xc1, 0xd0, 0xb7, 0xa5, 0xf7, 0x6e, 0xff, 0xa6, 0x6c, 0xce, 0xe5, 0x80, 0x6b, 0x49, 0xf0, 0xee, 0xa8, 0x0c, 0x02, 0x4a, }; static const unsigned char xdh_wei25519_719_privkey[] = { 0xa8, 0x4f, 0x48, 0x8e, 0x19, 0x31, 0x39, 0xf9, 0x86, 0xb0, 0xe5, 0xb2, 0x49, 0x63, 0x5b, 0x13, 0x7d, 0x38, 0x5e, 0x42, 0x03, 0x42, 0xae, 0xf1, 0xf1, 0x94, 0xfc, 0xde, 0x1f, 0xe5, 0xe8, 0x50, }; static const unsigned char xdh_wei25519_719_sharedsecret[] = { 0x7e, 0xb4, 0x8a, 0x60, 0xb1, 0x4f, 0xb9, 0xea, 0x57, 0x28, 0xf6, 0x41, 0x0a, 0xef, 0x62, 0x7d, 0x15, 0x22, 0xfa, 0xd4, 0x81, 0xb9, 0x34, 0xaf, 0x64, 0xe2, 0xc4, 0x83, 0xb6, 0x4d, 0x58, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_719 = { .name = "xdh_wei25519_719", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_719_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_719_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_719_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_719_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 202 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 720 for XDH, tcId is 203 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_720_peerpubkey[] = { 0xd1, 0xde, 0x30, 0x3c, 0x4d, 0xdd, 0x05, 0xd5, 0x7c, 0x29, 0xdf, 0x92, 0xad, 0x17, 0x2d, 0xd8, 0xc8, 0xf4, 0x24, 0xe6, 0x3e, 0xc9, 0x34, 0x45, 0xbe, 0xae, 0xa4, 0x4f, 0x9d, 0x12, 0x4b, 0x17, }; static const unsigned char xdh_wei25519_720_ourpubkey[] = { 0xdb, 0x2c, 0xff, 0xa4, 0xbd, 0x2a, 0x10, 0x18, 0xe0, 0xaf, 0x05, 0x5f, 0x85, 0x15, 0xa0, 0x08, 0x8b, 0xe8, 0x84, 0xbc, 0xd6, 0x7f, 0x2b, 0x9d, 0x63, 0x27, 0x55, 0x3c, 0x50, 0xab, 0x70, 0x72, }; static const unsigned char xdh_wei25519_720_privkey[] = { 0x30, 0xfd, 0x2a, 0x78, 0x1e, 0x09, 0x5c, 0x34, 0xa4, 0x83, 0x90, 0x7b, 0x3d, 0xd2, 0xd8, 0xbd, 0x27, 0x36, 0xe2, 0x79, 0x61, 0x7b, 0xfa, 0x6b, 0x8b, 0x4e, 0x0e, 0x1c, 0xf9, 0x0f, 0xbd, 0x46, }; static const unsigned char xdh_wei25519_720_sharedsecret[] = { 0xb7, 0x1b, 0xdb, 0xed, 0x78, 0x02, 0x3a, 0x06, 0xde, 0xed, 0x1c, 0x18, 0x2e, 0x14, 0xc9, 0x8f, 0x7c, 0xf4, 0x6b, 0xc6, 0x27, 0xa4, 0xa2, 0xc1, 0x02, 0xad, 0x23, 0xc4, 0x1c, 0xf3, 0x24, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_720 = { .name = "xdh_wei25519_720", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_720_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_720_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_720_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_720_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 203 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 721 for XDH, tcId is 204 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_721_peerpubkey[] = { 0x5b, 0xcc, 0xd7, 0x39, 0xfd, 0x75, 0x17, 0xd9, 0x34, 0x4b, 0xf6, 0xb2, 0xb0, 0xf1, 0x9a, 0x1e, 0x0c, 0x38, 0xd9, 0x34, 0x9a, 0x25, 0xad, 0x1f, 0x94, 0xaf, 0x4a, 0x2c, 0xdc, 0xf5, 0xe8, 0x37, }; static const unsigned char xdh_wei25519_721_ourpubkey[] = { 0xd5, 0x28, 0xdb, 0x06, 0xaf, 0x79, 0x1d, 0x28, 0x75, 0x36, 0x30, 0x4c, 0x07, 0xe7, 0xe1, 0xcb, 0x0e, 0x48, 0x6b, 0x74, 0x43, 0xf9, 0xe8, 0xf4, 0xc9, 0xc3, 0x41, 0x9f, 0xa4, 0xe4, 0x78, 0x6e, }; static const unsigned char xdh_wei25519_721_privkey[] = { 0x28, 0x31, 0x2e, 0x17, 0xb4, 0x7d, 0xd3, 0x2d, 0x90, 0x56, 0x11, 0x68, 0x24, 0x51, 0x87, 0x96, 0x3c, 0x74, 0x69, 0xa3, 0x1c, 0x88, 0x1e, 0x4a, 0x5c, 0x94, 0x38, 0x42, 0x62, 0xb7, 0x19, 0x59, }; static const unsigned char xdh_wei25519_721_sharedsecret[] = { 0x5b, 0xb5, 0x68, 0x77, 0xca, 0xf2, 0xcd, 0xac, 0x98, 0x61, 0x1b, 0x60, 0x36, 0x7f, 0xbb, 0x74, 0x26, 0x59, 0x84, 0x61, 0x4e, 0x5e, 0x73, 0x99, 0x6e, 0x8e, 0xa1, 0xbd, 0x6f, 0x74, 0x9f, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_721 = { .name = "xdh_wei25519_721", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_721_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_721_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_721_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_721_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 204 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 722 for XDH, tcId is 205 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_722_peerpubkey[] = { 0x8a, 0x7a, 0x93, 0x93, 0x10, 0xdf, 0x7e, 0xa7, 0x68, 0x45, 0x4d, 0xf5, 0x1b, 0xcd, 0x0d, 0xfb, 0xd7, 0xbe, 0x4f, 0xcb, 0xb2, 0xff, 0xc9, 0x84, 0x29, 0xd9, 0x13, 0xec, 0x69, 0x11, 0xf3, 0x37, }; static const unsigned char xdh_wei25519_722_ourpubkey[] = { 0xac, 0x90, 0xd9, 0x64, 0x94, 0xe1, 0x92, 0xaf, 0x34, 0x51, 0x33, 0x3d, 0x7c, 0x15, 0xac, 0x57, 0x07, 0x41, 0x88, 0xf2, 0x7d, 0xe9, 0x94, 0x45, 0xb6, 0xc9, 0x92, 0xa7, 0x14, 0x5d, 0x0f, 0x7b, }; static const unsigned char xdh_wei25519_722_privkey[] = { 0xa8, 0x76, 0x40, 0xcf, 0x82, 0x37, 0xb4, 0x73, 0xc6, 0x38, 0xb3, 0xe9, 0xdf, 0x08, 0x64, 0x4e, 0x86, 0x07, 0xe5, 0x63, 0xb5, 0x96, 0x43, 0x63, 0xcc, 0xc4, 0x21, 0x33, 0xb2, 0x99, 0x67, 0x42, }; static const unsigned char xdh_wei25519_722_sharedsecret[] = { 0xb5, 0x68, 0xed, 0x46, 0xd0, 0x4f, 0x62, 0x91, 0xf8, 0xc1, 0x76, 0xdc, 0xa8, 0xaf, 0xf6, 0xd2, 0x21, 0xde, 0x4c, 0x9c, 0xce, 0x4b, 0x40, 0x4d, 0x54, 0x01, 0xfb, 0xe7, 0x0a, 0x32, 0x45, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_722 = { .name = "xdh_wei25519_722", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_722_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_722_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_722_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_722_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 205 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 723 for XDH, tcId is 206 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_723_peerpubkey[] = { 0xfe, 0x35, 0x90, 0xfc, 0x38, 0x2d, 0xa7, 0xa8, 0x2e, 0x28, 0xd0, 0x7f, 0xaf, 0xe4, 0x0d, 0x4a, 0xfc, 0x91, 0x18, 0x3a, 0x45, 0x36, 0xe3, 0xe6, 0xb5, 0x50, 0xfe, 0xe8, 0x4a, 0x4b, 0x7b, 0x4b, }; static const unsigned char xdh_wei25519_723_ourpubkey[] = { 0x0a, 0x15, 0xab, 0x54, 0xa0, 0x21, 0x1d, 0x95, 0x68, 0x6d, 0x37, 0x07, 0xcb, 0xfe, 0xd2, 0x68, 0x92, 0xd2, 0x5d, 0xd8, 0xa6, 0x87, 0x73, 0xdb, 0xd9, 0xb6, 0x21, 0xfd, 0x17, 0xf3, 0x18, 0x35, }; static const unsigned char xdh_wei25519_723_privkey[] = { 0x78, 0x0c, 0x5b, 0x88, 0x27, 0x20, 0xd8, 0x5e, 0x5d, 0xdf, 0xaf, 0x10, 0x33, 0xe9, 0xa1, 0x38, 0x5d, 0xf9, 0xe2, 0x16, 0x89, 0xee, 0xda, 0x4d, 0xcc, 0x74, 0x44, 0xad, 0x28, 0x33, 0x0a, 0x50, }; static const unsigned char xdh_wei25519_723_sharedsecret[] = { 0x11, 0xfb, 0x44, 0xe8, 0x10, 0xbc, 0xe8, 0x53, 0x6a, 0x95, 0x7e, 0xaa, 0x56, 0xe0, 0x2d, 0x04, 0xdd, 0x86, 0x67, 0x00, 0x29, 0x8f, 0x13, 0xb0, 0x4e, 0xbe, 0xb4, 0x8e, 0x20, 0xd9, 0x36, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_723 = { .name = "xdh_wei25519_723", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_723_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_723_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_723_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_723_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 206 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 724 for XDH, tcId is 207 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_724_peerpubkey[] = { 0xfa, 0xd9, 0xab, 0x3e, 0x80, 0x3b, 0x49, 0xfc, 0x81, 0xb2, 0x7e, 0xe6, 0x9d, 0xb6, 0xfc, 0x9f, 0xdb, 0x82, 0xe3, 0x54, 0x53, 0xb5, 0x9e, 0xf8, 0xfa, 0xb2, 0xa3, 0xbe, 0xb5, 0xe1, 0x13, 0x4c, }; static const unsigned char xdh_wei25519_724_ourpubkey[] = { 0x7d, 0xcd, 0x9d, 0x93, 0xe7, 0x6a, 0x2e, 0xfc, 0xc2, 0xed, 0x11, 0x94, 0xec, 0xaa, 0x74, 0xbe, 0x09, 0x2a, 0x52, 0x6d, 0xe6, 0xc5, 0xcc, 0xf9, 0x21, 0xf3, 0xf9, 0x27, 0xa8, 0x95, 0x22, 0x1a, }; static const unsigned char xdh_wei25519_724_privkey[] = { 0x20, 0x9e, 0x5e, 0x0a, 0xe1, 0x99, 0x4b, 0xd8, 0x59, 0xce, 0x89, 0x92, 0xb6, 0x2e, 0xc3, 0xa6, 0x6d, 0xf2, 0xeb, 0x50, 0x23, 0x2b, 0xcc, 0x3a, 0x3d, 0x27, 0xb6, 0x61, 0x4f, 0x6b, 0x01, 0x4d, }; static const unsigned char xdh_wei25519_724_sharedsecret[] = { 0x85, 0xd9, 0xdb, 0x8f, 0x18, 0x2b, 0xc6, 0x8d, 0xb6, 0x7d, 0xe3, 0x47, 0x1f, 0x78, 0x6b, 0x45, 0xb1, 0x61, 0x9a, 0xec, 0x0f, 0x32, 0xb1, 0x08, 0xac, 0xe3, 0x0e, 0xe7, 0xb2, 0x62, 0x43, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_724 = { .name = "xdh_wei25519_724", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_724_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_724_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_724_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_724_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 207 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 725 for XDH, tcId is 208 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_725_peerpubkey[] = { 0x98, 0xbe, 0xd9, 0x55, 0xf1, 0x51, 0x6c, 0x7a, 0x44, 0x27, 0x51, 0xac, 0x59, 0x00, 0x46, 0xd7, 0xd5, 0x2c, 0xa6, 0x4f, 0x76, 0xdf, 0x82, 0xbe, 0x09, 0xd3, 0x2e, 0x5d, 0x33, 0xb4, 0x90, 0x73, }; static const unsigned char xdh_wei25519_725_ourpubkey[] = { 0xb7, 0x16, 0x8a, 0x68, 0x59, 0xbd, 0x3e, 0xcb, 0x02, 0x7c, 0x35, 0xbd, 0x1f, 0x4f, 0x4e, 0x83, 0x75, 0x59, 0x2a, 0xd1, 0xc6, 0x17, 0x61, 0x7b, 0xd0, 0xeb, 0x9f, 0x42, 0x7d, 0x02, 0x7c, 0x4a, }; static const unsigned char xdh_wei25519_725_privkey[] = { 0x80, 0x6d, 0x1d, 0xee, 0x5f, 0xf6, 0xae, 0xa8, 0x4a, 0x84, 0x89, 0x16, 0x99, 0x1a, 0x89, 0xef, 0x36, 0x25, 0x58, 0x3e, 0x1b, 0xd4, 0xae, 0x0b, 0x3d, 0xd2, 0x5c, 0x25, 0x24, 0xa4, 0xff, 0x46, }; static const unsigned char xdh_wei25519_725_sharedsecret[] = { 0x61, 0xd4, 0xef, 0x71, 0xcb, 0xe7, 0xbe, 0x31, 0x28, 0xbe, 0x82, 0x9a, 0xb2, 0x6e, 0xd3, 0x46, 0x3e, 0xb4, 0xab, 0x25, 0x93, 0x7c, 0x30, 0x97, 0x88, 0xe8, 0x76, 0xb2, 0x34, 0x12, 0xaa, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_725 = { .name = "xdh_wei25519_725", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_725_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_725_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_725_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_725_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 208 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 726 for XDH, tcId is 209 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_726_peerpubkey[] = { 0xe5, 0x9b, 0xe4, 0x91, 0x7b, 0x3f, 0x05, 0xb6, 0xfc, 0x87, 0x48, 0xc9, 0xb9, 0x0f, 0x1b, 0x91, 0x02, 0x73, 0xc9, 0xc6, 0xe1, 0x7f, 0xf9, 0x6e, 0xf4, 0x15, 0xff, 0x3d, 0x92, 0x7d, 0x98, 0x7e, }; static const unsigned char xdh_wei25519_726_ourpubkey[] = { 0xf1, 0x40, 0x87, 0xa3, 0xac, 0x07, 0xc9, 0x7c, 0xb1, 0x52, 0x64, 0xec, 0xc3, 0x78, 0x4a, 0x7a, 0x13, 0x67, 0x46, 0x19, 0x73, 0x31, 0x9c, 0x76, 0xf0, 0xc4, 0x92, 0xeb, 0xfb, 0x03, 0xa8, 0x65, }; static const unsigned char xdh_wei25519_726_privkey[] = { 0x00, 0xf9, 0x8b, 0x02, 0xae, 0x0d, 0xf5, 0x27, 0x4c, 0xc8, 0x99, 0xf5, 0x26, 0xeb, 0x1b, 0x87, 0x72, 0x89, 0xe0, 0x96, 0x34, 0x40, 0xa5, 0x7d, 0xd9, 0x7e, 0x41, 0x4c, 0xdd, 0x2f, 0x7c, 0x51, }; static const unsigned char xdh_wei25519_726_sharedsecret[] = { 0x5b, 0xa4, 0x39, 0x4e, 0xd1, 0xa6, 0x64, 0x81, 0x1b, 0x01, 0x55, 0x79, 0x44, 0xbe, 0xcf, 0x75, 0x85, 0x65, 0x2a, 0x8a, 0xcb, 0xdb, 0xf8, 0x06, 0x74, 0x29, 0x11, 0x20, 0x7b, 0xd7, 0x93, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_726 = { .name = "xdh_wei25519_726", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_726_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_726_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_726_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_726_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 209 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 727 for XDH, tcId is 210 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_727_peerpubkey[] = { 0x8c, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_727_ourpubkey[] = { 0xb3, 0x8b, 0x39, 0x35, 0x70, 0x3f, 0x72, 0x8e, 0xd6, 0xf4, 0xfe, 0x9b, 0xa5, 0xeb, 0xa8, 0xf7, 0x23, 0x54, 0x61, 0x1f, 0xc1, 0x7b, 0x7a, 0x18, 0xf3, 0x3b, 0x07, 0xe4, 0x79, 0x85, 0x8d, 0x75, }; static const unsigned char xdh_wei25519_727_privkey[] = { 0xd8, 0x6c, 0x18, 0xf2, 0xbe, 0x39, 0x6b, 0x3b, 0xb7, 0x2f, 0x22, 0xe6, 0xec, 0xe2, 0x2e, 0x27, 0x3a, 0xf6, 0xe1, 0x50, 0x6a, 0x1c, 0x09, 0xad, 0x4d, 0x01, 0xbd, 0xd2, 0xf4, 0x39, 0xf8, 0x43, }; static const unsigned char xdh_wei25519_727_sharedsecret[] = { 0xa5, 0x95, 0x25, 0x88, 0x61, 0x3e, 0xb7, 0xa5, 0xcd, 0x49, 0xdd, 0x52, 0x6f, 0x1f, 0x20, 0xa4, 0xf0, 0xff, 0xe9, 0x42, 0x3e, 0x82, 0xce, 0xa3, 0x02, 0xc2, 0xdd, 0x90, 0xce, 0x55, 0x99, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_727 = { .name = "xdh_wei25519_727", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_727_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_727_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_727_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_727_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 210 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 728 for XDH, tcId is 211 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_728_peerpubkey[] = { 0xf6, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_728_ourpubkey[] = { 0x07, 0x62, 0x14, 0xe2, 0xe3, 0x33, 0x19, 0xd0, 0x0e, 0x8d, 0x58, 0x90, 0x35, 0xee, 0xfa, 0x9b, 0xcb, 0x55, 0xcd, 0xd6, 0x4e, 0x70, 0xfa, 0xb7, 0x81, 0x0e, 0xa7, 0xe2, 0x81, 0x82, 0x73, 0x72, }; static const unsigned char xdh_wei25519_728_privkey[] = { 0xf8, 0x1a, 0xad, 0xb9, 0x05, 0x3e, 0xb6, 0x98, 0x99, 0x6d, 0x0f, 0x78, 0x1d, 0x9c, 0xda, 0x67, 0xf8, 0x2d, 0xde, 0xfa, 0x39, 0x87, 0xd2, 0x76, 0xff, 0x5a, 0x94, 0xff, 0xdf, 0x5d, 0x25, 0x5f, }; static const unsigned char xdh_wei25519_728_sharedsecret[] = { 0xcb, 0x6f, 0xb6, 0x23, 0x08, 0x4b, 0x61, 0x97, 0x44, 0x3e, 0xc9, 0xba, 0x10, 0x50, 0xc0, 0x92, 0x33, 0x32, 0xe5, 0xe8, 0x29, 0xae, 0x01, 0x94, 0x26, 0x9c, 0xfa, 0xf9, 0x20, 0xa4, 0x36, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_728 = { .name = "xdh_wei25519_728", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_728_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_728_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_728_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_728_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 211 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 729 for XDH, tcId is 212 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_729_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_729_ourpubkey[] = { 0x95, 0x14, 0x01, 0xa5, 0x76, 0x98, 0x12, 0x73, 0x70, 0xd6, 0x5d, 0xf2, 0x9e, 0x84, 0x93, 0xb7, 0xee, 0x86, 0x85, 0xe2, 0xac, 0x33, 0x9c, 0x53, 0x7d, 0x4f, 0x1c, 0xe9, 0x0e, 0xfe, 0x1e, 0x06, }; static const unsigned char xdh_wei25519_729_privkey[] = { 0x30, 0x5b, 0x4d, 0xb4, 0x32, 0x1b, 0x49, 0x23, 0xfc, 0x55, 0x9b, 0xf9, 0x1d, 0xf6, 0x77, 0xd0, 0xe1, 0x2c, 0x3a, 0x31, 0xb1, 0x6e, 0xc6, 0x55, 0xcb, 0x70, 0x8b, 0x75, 0x9d, 0x7c, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_729_sharedsecret[] = { 0x9e, 0x52, 0x60, 0x79, 0xc2, 0xfc, 0xf1, 0x24, 0x26, 0xae, 0x6c, 0x2a, 0x54, 0xb5, 0xff, 0xb7, 0x0f, 0x2e, 0xc6, 0x62, 0xe2, 0x9e, 0xa5, 0xce, 0x0c, 0x83, 0x85, 0xc3, 0xb2, 0x1c, 0xd1, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_729 = { .name = "xdh_wei25519_729", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_729_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_729_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_729_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_729_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 212 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 730 for XDH, tcId is 213 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_730_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_730_ourpubkey[] = { 0x35, 0xe9, 0xa0, 0x43, 0x91, 0x7e, 0x73, 0xa9, 0x2e, 0x6a, 0x7e, 0xd5, 0x75, 0xb7, 0x4a, 0xf5, 0x94, 0xb0, 0x6a, 0x6d, 0xfd, 0x0e, 0x5e, 0xa5, 0x84, 0xb0, 0x0b, 0xf4, 0x5d, 0x9d, 0xe5, 0x22, }; static const unsigned char xdh_wei25519_730_privkey[] = { 0x90, 0x06, 0x38, 0xd1, 0x97, 0x98, 0x02, 0xdb, 0x9b, 0x52, 0xe4, 0xdd, 0x84, 0xfa, 0x19, 0x57, 0x9f, 0x61, 0xcd, 0x7b, 0xef, 0x3c, 0x0b, 0x62, 0xfc, 0xcc, 0xae, 0xaa, 0x15, 0xfa, 0x48, 0x4d, }; static const unsigned char xdh_wei25519_730_sharedsecret[] = { 0x63, 0x29, 0xc7, 0xdc, 0x23, 0x18, 0xec, 0x36, 0x15, 0x3e, 0xf4, 0xf6, 0xf9, 0x1b, 0xc6, 0xe7, 0xd1, 0xe0, 0x08, 0xf5, 0x29, 0x30, 0x65, 0xd9, 0x58, 0x6a, 0xb8, 0x8a, 0xbb, 0x58, 0xf2, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_730 = { .name = "xdh_wei25519_730", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_730_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_730_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_730_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_730_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 213 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 731 for XDH, tcId is 214 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_731_peerpubkey[] = { 0xf6, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_731_ourpubkey[] = { 0x1a, 0xdf, 0x0d, 0xa5, 0xfb, 0xbc, 0x06, 0x2b, 0x19, 0x6d, 0x7c, 0x1f, 0xf3, 0x98, 0xa6, 0x02, 0x0d, 0x2c, 0x04, 0xd0, 0x0c, 0x43, 0xec, 0x40, 0x76, 0x66, 0x95, 0xd8, 0xe3, 0x85, 0x50, 0x44, }; static const unsigned char xdh_wei25519_731_privkey[] = { 0x38, 0x57, 0x5c, 0xf7, 0xc8, 0x69, 0x1e, 0xcc, 0x79, 0xcd, 0x5f, 0x8d, 0x7d, 0x47, 0x03, 0xaa, 0x48, 0x59, 0x2f, 0xf6, 0xe7, 0xf6, 0x47, 0x31, 0xc2, 0xd9, 0x8a, 0x19, 0xae, 0xae, 0x51, 0x4f, }; static const unsigned char xdh_wei25519_731_sharedsecret[] = { 0x60, 0x3f, 0x4f, 0xc4, 0x10, 0x08, 0x1f, 0x88, 0x09, 0x44, 0xe0, 0xe1, 0x3d, 0x56, 0xfc, 0x54, 0x2a, 0x43, 0x0e, 0xec, 0x81, 0x3f, 0xad, 0x30, 0x2b, 0x7c, 0x5a, 0xc3, 0x80, 0x57, 0x6f, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_731 = { .name = "xdh_wei25519_731", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_731_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_731_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_731_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_731_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 214 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 732 for XDH, tcId is 215 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_732_peerpubkey[] = { 0x60, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_732_ourpubkey[] = { 0xc7, 0x67, 0xf9, 0xa2, 0xf8, 0x87, 0x91, 0x38, 0x51, 0x8e, 0x2f, 0x77, 0x42, 0xd9, 0xc2, 0xd5, 0x2e, 0xcb, 0x4a, 0x8d, 0xbe, 0xb4, 0x7c, 0x96, 0x39, 0x6c, 0x89, 0xb8, 0x47, 0xc3, 0x3c, 0x50, }; static const unsigned char xdh_wei25519_732_privkey[] = { 0xe8, 0x8b, 0xd0, 0x2c, 0x70, 0x16, 0x54, 0x7a, 0x24, 0xf4, 0x28, 0xbc, 0x2a, 0x9d, 0xcc, 0xca, 0xd6, 0xc6, 0xf8, 0x80, 0xc1, 0x7b, 0xff, 0xcf, 0x66, 0xfc, 0x68, 0x45, 0x96, 0x27, 0xaf, 0x4e, }; static const unsigned char xdh_wei25519_732_sharedsecret[] = { 0x83, 0x4b, 0xba, 0xd5, 0x47, 0x0e, 0x14, 0x98, 0xc4, 0xb0, 0x14, 0x87, 0x82, 0xdf, 0xe6, 0x30, 0xe8, 0xbf, 0xad, 0xff, 0x19, 0x97, 0xde, 0x80, 0x2a, 0xc8, 0xce, 0x30, 0x2a, 0x1b, 0xda, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_732 = { .name = "xdh_wei25519_732", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_732_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_732_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_732_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_732_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 215 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 733 for XDH, tcId is 216 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_733_peerpubkey[] = { 0x8d, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_733_ourpubkey[] = { 0xda, 0xec, 0xf3, 0x0d, 0x7d, 0xdd, 0xc3, 0x7c, 0xa6, 0x0c, 0x74, 0x7b, 0xb1, 0xea, 0xbb, 0xef, 0x96, 0x50, 0xd6, 0x5a, 0x45, 0xcc, 0x04, 0xa5, 0x3b, 0xfb, 0xd4, 0x97, 0x99, 0x75, 0x31, 0x1b, }; static const unsigned char xdh_wei25519_733_privkey[] = { 0x90, 0x36, 0xed, 0x7d, 0x68, 0xf7, 0x44, 0x8a, 0xc4, 0x40, 0xdc, 0x51, 0x21, 0x6b, 0x49, 0x84, 0x0d, 0xca, 0xbd, 0x3d, 0x5e, 0x32, 0xe3, 0xb4, 0xff, 0xc3, 0x2a, 0x5f, 0xe9, 0xe9, 0x67, 0x42, }; static const unsigned char xdh_wei25519_733_sharedsecret[] = { 0xec, 0x90, 0x70, 0xad, 0x34, 0x91, 0xa5, 0xff, 0x50, 0xd7, 0xd0, 0xdb, 0x6c, 0x9c, 0x84, 0x47, 0x83, 0xdd, 0xe1, 0xc6, 0xfb, 0xd4, 0xfe, 0x16, 0x3e, 0x9a, 0xde, 0x1c, 0xe9, 0xcd, 0x04, 0x1d, }; static const wycheproof_xdh_test xdh_wei25519_733 = { .name = "xdh_wei25519_733", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_733_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_733_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_733_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_733_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 216 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 734 for XDH, tcId is 217 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_734_peerpubkey[] = { 0xf7, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_734_ourpubkey[] = { 0xfb, 0x45, 0x83, 0xe3, 0x00, 0xe6, 0x60, 0x7f, 0x52, 0xe8, 0xc3, 0x96, 0x35, 0x0e, 0xf5, 0x46, 0x77, 0x58, 0x4e, 0x9f, 0x3d, 0x92, 0x69, 0x97, 0x7f, 0x87, 0x40, 0x96, 0x9b, 0x68, 0x05, 0x5c, }; static const unsigned char xdh_wei25519_734_privkey[] = { 0x90, 0xc5, 0x5e, 0x77, 0xaa, 0x0f, 0xe4, 0xaf, 0xb1, 0x28, 0x71, 0x09, 0xfd, 0x01, 0x0f, 0x52, 0x63, 0x64, 0xde, 0xa1, 0x8d, 0x88, 0xe2, 0xfd, 0x87, 0x0a, 0xc0, 0x1b, 0x66, 0xe3, 0xfa, 0x4e, }; static const unsigned char xdh_wei25519_734_sharedsecret[] = { 0xdc, 0x6d, 0x05, 0xb9, 0x2e, 0xdc, 0xdb, 0x5d, 0xc3, 0x34, 0xb1, 0xfc, 0x3d, 0xff, 0x58, 0xfe, 0x5b, 0x24, 0xa5, 0xc5, 0xf0, 0xb2, 0xd4, 0x31, 0x15, 0x55, 0xd0, 0xfc, 0x94, 0x5d, 0x77, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_734 = { .name = "xdh_wei25519_734", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_734_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_734_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_734_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_734_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 217 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 735 for XDH, tcId is 218 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_735_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_735_ourpubkey[] = { 0x3d, 0xb4, 0x1f, 0xc1, 0x18, 0x57, 0x57, 0xb5, 0x62, 0xd5, 0xaa, 0x8a, 0xa8, 0x2a, 0x12, 0x25, 0x85, 0x00, 0xd6, 0x8f, 0xec, 0x55, 0xf7, 0xfe, 0x73, 0x49, 0x5b, 0xbd, 0x13, 0xd2, 0x99, 0x5a, }; static const unsigned char xdh_wei25519_735_privkey[] = { 0xa0, 0x21, 0xba, 0x2f, 0xd4, 0xe3, 0xad, 0x57, 0xbc, 0xbf, 0x20, 0x4d, 0x6f, 0x6c, 0x3e, 0x80, 0x18, 0xd8, 0x97, 0x85, 0x52, 0x63, 0x3b, 0x6d, 0xff, 0x1b, 0x74, 0x47, 0xbf, 0x52, 0x94, 0x59, }; static const unsigned char xdh_wei25519_735_sharedsecret[] = { 0x1b, 0x17, 0x4b, 0x18, 0x99, 0x81, 0xd8, 0x1b, 0xc6, 0x88, 0x79, 0x32, 0x08, 0x3e, 0x84, 0x88, 0xdf, 0x8b, 0xbb, 0xed, 0x57, 0xf9, 0x21, 0x4c, 0x9c, 0xfa, 0x59, 0xd5, 0x9b, 0x57, 0x23, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_735 = { .name = "xdh_wei25519_735", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_735_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_735_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_735_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_735_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 218 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 736 for XDH, tcId is 219 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_736_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_736_ourpubkey[] = { 0xc1, 0xe2, 0xbe, 0x4e, 0x7a, 0x4c, 0xfd, 0xc0, 0x13, 0x85, 0x91, 0xbf, 0x4e, 0xf4, 0xc6, 0xcd, 0xbc, 0x94, 0x54, 0x4f, 0x89, 0x3d, 0xd5, 0x83, 0x66, 0x78, 0x7a, 0xe0, 0x73, 0x3f, 0xcd, 0x26, }; static const unsigned char xdh_wei25519_736_privkey[] = { 0x30, 0x35, 0x08, 0x3e, 0x98, 0x48, 0x37, 0x58, 0x7f, 0x6b, 0x73, 0x46, 0xaf, 0x87, 0x1b, 0xf3, 0xfc, 0x95, 0x81, 0xc5, 0x0e, 0xb5, 0x5c, 0x83, 0xae, 0xfa, 0xbe, 0xed, 0x68, 0xce, 0xe3, 0x49, }; static const unsigned char xdh_wei25519_736_sharedsecret[] = { 0x15, 0xa0, 0x52, 0x14, 0x8a, 0xba, 0xad, 0x1b, 0x0f, 0x2e, 0x74, 0x81, 0xa3, 0x4e, 0xdb, 0x61, 0x40, 0x35, 0x89, 0x43, 0x9b, 0x5b, 0xd5, 0xe5, 0x64, 0x6c, 0xec, 0xeb, 0xe2, 0xa1, 0xbe, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_736 = { .name = "xdh_wei25519_736", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_736_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_736_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_736_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_736_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 219 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 737 for XDH, tcId is 220 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_737_peerpubkey[] = { 0xf7, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_737_ourpubkey[] = { 0xc5, 0x17, 0x2e, 0x53, 0x3f, 0x79, 0x38, 0xe5, 0x0c, 0xfc, 0x99, 0x1b, 0x19, 0xc7, 0x29, 0x52, 0xcb, 0x77, 0x27, 0xe1, 0x0f, 0x22, 0xba, 0x23, 0x2d, 0x83, 0x15, 0xa3, 0x00, 0x66, 0x3b, 0x3b, }; static const unsigned char xdh_wei25519_737_privkey[] = { 0x30, 0x43, 0x5c, 0xe1, 0x87, 0xf2, 0x72, 0x3f, 0x9a, 0x3b, 0xde, 0xa0, 0xee, 0xf8, 0x92, 0x20, 0x7e, 0x15, 0x2e, 0x4c, 0xee, 0x89, 0x85, 0xfa, 0x72, 0xd2, 0xdb, 0x41, 0x47, 0xbd, 0x2a, 0x53, }; static const unsigned char xdh_wei25519_737_sharedsecret[] = { 0x1d, 0x04, 0x8c, 0xbe, 0x2f, 0x8d, 0xf0, 0x7c, 0x23, 0x3a, 0x8f, 0x93, 0x70, 0x6f, 0x30, 0x7d, 0x17, 0x13, 0x0c, 0x24, 0x97, 0xfb, 0x75, 0x2e, 0xea, 0xa3, 0x1f, 0xe3, 0xed, 0xfc, 0x72, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_737 = { .name = "xdh_wei25519_737", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_737_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_737_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_737_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_737_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 220 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 738 for XDH, tcId is 221 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_738_peerpubkey[] = { 0x61, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_738_ourpubkey[] = { 0x8a, 0x04, 0x8f, 0x0e, 0xde, 0x61, 0x21, 0x94, 0x95, 0xc5, 0x10, 0xc0, 0xdd, 0xba, 0x14, 0xeb, 0x36, 0xef, 0x28, 0xba, 0xf5, 0x21, 0xa4, 0x53, 0xc0, 0x6d, 0xfd, 0xe3, 0xaa, 0x5a, 0xdc, 0x6a, }; static const unsigned char xdh_wei25519_738_privkey[] = { 0x58, 0x0f, 0x0a, 0x9b, 0xba, 0x72, 0x81, 0xa3, 0x0f, 0xb0, 0x33, 0x49, 0x0e, 0x0f, 0x42, 0x9f, 0x22, 0xe3, 0xf2, 0x67, 0x85, 0x2c, 0xae, 0xac, 0xef, 0xa3, 0xe5, 0x29, 0x1f, 0x0e, 0x61, 0x4e, }; static const unsigned char xdh_wei25519_738_sharedsecret[] = { 0xcb, 0x92, 0xa9, 0x8b, 0x6a, 0xa9, 0x9a, 0xc9, 0xe3, 0xc5, 0x75, 0x0c, 0xea, 0x6f, 0x08, 0x46, 0xb0, 0x18, 0x1f, 0xaa, 0x59, 0x92, 0x84, 0x5b, 0x79, 0x89, 0x23, 0xd4, 0x19, 0xe8, 0x27, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_738 = { .name = "xdh_wei25519_738", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_738_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_738_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_738_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_738_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 221 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 739 for XDH, tcId is 222 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_739_peerpubkey[] = { 0xc8, 0x23, 0x9b, 0x71, 0x01, 0x36, 0xfe, 0x43, 0x1f, 0xb4, 0xd9, 0x84, 0x36, 0x15, 0x7e, 0x47, 0xc9, 0xe7, 0x8a, 0x10, 0xf0, 0x9f, 0xf9, 0x2e, 0x98, 0xba, 0xff, 0x15, 0x99, 0x26, 0x06, 0x1c, }; static const unsigned char xdh_wei25519_739_ourpubkey[] = { 0x49, 0xe9, 0x33, 0x11, 0x85, 0xb4, 0x0e, 0x3b, 0xd9, 0x48, 0x8e, 0x1e, 0xa8, 0xfd, 0xe4, 0x45, 0x5c, 0x99, 0x7e, 0x7b, 0xc0, 0x54, 0xb6, 0x98, 0x0b, 0xfd, 0x60, 0xb9, 0xfb, 0xdd, 0x99, 0x7f, }; static const unsigned char xdh_wei25519_739_privkey[] = { 0x70, 0x90, 0x98, 0xfe, 0xb2, 0xe2, 0x5c, 0x67, 0xb4, 0xbf, 0xd3, 0xbe, 0x0a, 0x01, 0xaf, 0x40, 0x9a, 0xdb, 0x6d, 0xa5, 0x2b, 0x3f, 0xbe, 0x3d, 0x97, 0x06, 0x42, 0xdd, 0x2c, 0x98, 0x38, 0x56, }; static const unsigned char xdh_wei25519_739_sharedsecret[] = { 0xf1, 0xbd, 0x12, 0xd9, 0xd3, 0x2c, 0x6f, 0x4c, 0x5b, 0x2d, 0xcb, 0x3a, 0x5c, 0x52, 0xd9, 0xfd, 0x45, 0x4d, 0x52, 0xca, 0x70, 0x4c, 0x2c, 0x13, 0x79, 0x56, 0xec, 0x8a, 0xd9, 0xae, 0xf1, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_739 = { .name = "xdh_wei25519_739", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_739_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_739_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_739_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_739_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 2, tcId is 222 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 740 for XDH, tcId is 223 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_740_peerpubkey[] = { 0xb7, 0xa2, 0xf7, 0x9e, 0x0d, 0xe9, 0xb5, 0x81, 0x47, 0x69, 0x1b, 0x55, 0x46, 0xd9, 0xec, 0x46, 0x3d, 0xa8, 0x32, 0x5e, 0x14, 0x40, 0xe5, 0x8b, 0xb2, 0x0a, 0xa1, 0x29, 0xd1, 0xb9, 0x73, 0x27, }; static const unsigned char xdh_wei25519_740_ourpubkey[] = { 0x85, 0xd5, 0x99, 0x53, 0x9d, 0xd5, 0xe7, 0xab, 0xbd, 0xe1, 0x83, 0x01, 0x14, 0xf1, 0xdc, 0xb2, 0xd7, 0x09, 0xa5, 0x60, 0xc2, 0xfd, 0x9e, 0xc0, 0x90, 0xd6, 0xe8, 0xce, 0x57, 0x57, 0x3a, 0x65, }; static const unsigned char xdh_wei25519_740_privkey[] = { 0x18, 0x5a, 0xc6, 0x2e, 0x72, 0x9f, 0x88, 0x52, 0x89, 0x50, 0x92, 0x6c, 0x0d, 0xe7, 0xc4, 0x81, 0xc9, 0x24, 0xbf, 0x9c, 0xf2, 0x6a, 0x12, 0x2f, 0x44, 0x3b, 0x86, 0x1e, 0x8b, 0x6a, 0xf6, 0x40, }; static const unsigned char xdh_wei25519_740_sharedsecret[] = { 0xe6, 0xf1, 0xc4, 0x94, 0xc9, 0xe4, 0xbd, 0x23, 0x25, 0xc1, 0x71, 0x83, 0xe8, 0x2d, 0x31, 0xab, 0x0b, 0xbe, 0xe6, 0xc8, 0x47, 0xd4, 0xb0, 0xe4, 0xa9, 0x9c, 0x7c, 0x68, 0x91, 0x11, 0x7c, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_740 = { .name = "xdh_wei25519_740", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_740_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_740_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_740_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_740_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 223 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 741 for XDH, tcId is 224 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_741_peerpubkey[] = { 0x2d, 0xc6, 0x24, 0xe1, 0x66, 0x3f, 0x42, 0xa7, 0xb9, 0x33, 0x63, 0x50, 0xf2, 0x77, 0x54, 0x1b, 0x50, 0xb8, 0xdd, 0xc7, 0xee, 0x0d, 0x86, 0x13, 0x3a, 0xd5, 0x32, 0x73, 0xae, 0xd4, 0xe6, 0x2e, }; static const unsigned char xdh_wei25519_741_ourpubkey[] = { 0x64, 0x62, 0x40, 0xdf, 0x17, 0x24, 0x65, 0xa4, 0x39, 0x3f, 0x5e, 0x3c, 0x70, 0xb9, 0x5f, 0xf2, 0x3d, 0xf1, 0x21, 0xee, 0x20, 0x47, 0x11, 0xe7, 0x7a, 0x52, 0x32, 0x34, 0x88, 0x23, 0x0a, 0x0e, }; static const unsigned char xdh_wei25519_741_privkey[] = { 0xf0, 0x37, 0x43, 0xee, 0xad, 0x7c, 0x2f, 0x77, 0x19, 0x79, 0x43, 0x24, 0xf2, 0x71, 0x07, 0x28, 0x17, 0xd1, 0xa0, 0x4c, 0xbd, 0xa4, 0x2b, 0x23, 0x2f, 0x3b, 0xee, 0x43, 0xf3, 0x97, 0xcc, 0x40, }; static const unsigned char xdh_wei25519_741_sharedsecret[] = { 0xaa, 0x2a, 0x12, 0xed, 0xf7, 0x52, 0xd2, 0x79, 0xbd, 0xb0, 0x00, 0xfb, 0x14, 0x05, 0xa5, 0xdf, 0x8c, 0x5f, 0x1d, 0x41, 0x30, 0x9b, 0x4f, 0x2b, 0xd4, 0x1a, 0xed, 0x7a, 0xc1, 0xed, 0x01, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_741 = { .name = "xdh_wei25519_741", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_741_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_741_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_741_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_741_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 224 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 742 for XDH, tcId is 225 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_742_peerpubkey[] = { 0x0e, 0x5e, 0xce, 0xee, 0x91, 0x04, 0xa6, 0x4f, 0x82, 0xc9, 0x09, 0x3b, 0x9b, 0xf7, 0xb4, 0x07, 0x6e, 0xe5, 0xbc, 0x70, 0x81, 0x5a, 0xf7, 0xee, 0x9f, 0x94, 0x2e, 0xf0, 0x15, 0x75, 0x61, 0x76, }; static const unsigned char xdh_wei25519_742_ourpubkey[] = { 0xde, 0x7d, 0xfa, 0xa4, 0xd4, 0x61, 0xf2, 0x31, 0x02, 0x85, 0x2b, 0xb4, 0xb6, 0x01, 0x94, 0x31, 0x8b, 0xd4, 0xc4, 0x47, 0xf5, 0xbf, 0x41, 0x4e, 0xc5, 0x55, 0x0f, 0xba, 0x83, 0xf2, 0x55, 0x2b, }; static const unsigned char xdh_wei25519_742_privkey[] = { 0xa8, 0xfb, 0xb4, 0xf9, 0x0d, 0xa4, 0x57, 0x94, 0x98, 0x14, 0x05, 0xd5, 0x9e, 0xf3, 0x10, 0x62, 0x1e, 0x3c, 0x3b, 0x6b, 0x77, 0x60, 0xb5, 0xe3, 0x03, 0x08, 0xc7, 0x82, 0x2c, 0x88, 0xae, 0x5f, }; static const unsigned char xdh_wei25519_742_sharedsecret[] = { 0x74, 0xd5, 0x60, 0x6b, 0xa0, 0xb6, 0xad, 0x1d, 0x8b, 0xa3, 0x6a, 0xe6, 0xf2, 0x64, 0xd6, 0x31, 0x5f, 0x47, 0x9b, 0x39, 0x84, 0xde, 0x57, 0x3e, 0x9b, 0x00, 0x1e, 0x05, 0x55, 0x24, 0x7c, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_742 = { .name = "xdh_wei25519_742", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_742_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_742_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_742_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_742_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 225 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 743 for XDH, tcId is 226 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_743_peerpubkey[] = { 0x73, 0x7d, 0x45, 0x47, 0x7e, 0x2b, 0xeb, 0x77, 0xa6, 0xc3, 0x8b, 0x98, 0xe2, 0xa1, 0x9b, 0x05, 0xc3, 0x95, 0xdf, 0x7d, 0xa9, 0x98, 0xcb, 0x91, 0xf6, 0xdf, 0xab, 0x58, 0x19, 0x61, 0x4f, 0x27, }; static const unsigned char xdh_wei25519_743_ourpubkey[] = { 0xec, 0xbf, 0x75, 0x96, 0x42, 0x23, 0xec, 0x1d, 0x2a, 0x83, 0x7c, 0xd7, 0xe5, 0x4c, 0xbb, 0x82, 0x56, 0xbe, 0xaf, 0x85, 0xe6, 0x24, 0x0d, 0xdf, 0x36, 0xe3, 0xb0, 0x1d, 0x00, 0xfb, 0x2d, 0x3e, }; static const unsigned char xdh_wei25519_743_privkey[] = { 0xc8, 0x87, 0x88, 0x6f, 0xd0, 0x71, 0x07, 0xc7, 0x22, 0x1f, 0x6d, 0x9d, 0xd3, 0x6c, 0x30, 0x5e, 0xc7, 0x79, 0xce, 0xca, 0x13, 0x2a, 0xc9, 0x33, 0xff, 0x77, 0xda, 0xb2, 0xbe, 0xac, 0x63, 0x45, }; static const unsigned char xdh_wei25519_743_sharedsecret[] = { 0x8c, 0xf4, 0x53, 0x8a, 0xe5, 0xf4, 0x45, 0xcc, 0x6d, 0x27, 0x3d, 0xf4, 0xad, 0x30, 0x0a, 0x45, 0xd7, 0xbb, 0x2f, 0x6e, 0x37, 0x3a, 0x56, 0x24, 0x40, 0xf1, 0xb3, 0x77, 0x73, 0x90, 0x4e, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_743 = { .name = "xdh_wei25519_743", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_743_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_743_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_743_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_743_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 226 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 744 for XDH, tcId is 227 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_744_peerpubkey[] = { 0x87, 0x3f, 0x8b, 0x26, 0x0e, 0xa9, 0xd9, 0xdd, 0xac, 0x08, 0xb7, 0xb0, 0x30, 0x72, 0x7b, 0xf0, 0x07, 0x23, 0x15, 0xab, 0x54, 0x07, 0x5e, 0xcc, 0x39, 0x3a, 0x37, 0xa9, 0x75, 0x88, 0x2b, 0x7e, }; static const unsigned char xdh_wei25519_744_ourpubkey[] = { 0xf7, 0x97, 0x33, 0xb0, 0x9a, 0x3a, 0xc4, 0x98, 0x53, 0xb6, 0x8c, 0xed, 0x2a, 0xb7, 0x0c, 0x33, 0x41, 0xcc, 0xca, 0x59, 0x03, 0x4e, 0x37, 0xc4, 0x99, 0x28, 0x1e, 0x31, 0xc7, 0x5e, 0xe4, 0x14, }; static const unsigned char xdh_wei25519_744_privkey[] = { 0x58, 0x09, 0x6e, 0xe2, 0x93, 0x61, 0x97, 0x8f, 0x63, 0x0a, 0xd1, 0xfb, 0x00, 0xc1, 0x26, 0x7c, 0x5a, 0x90, 0x1f, 0x99, 0xc5, 0x02, 0xf9, 0x56, 0x9b, 0x93, 0x3a, 0xd0, 0xdc, 0xce, 0x0f, 0x50, }; static const unsigned char xdh_wei25519_744_sharedsecret[] = { 0xd5, 0x76, 0x67, 0x53, 0x21, 0x1d, 0x99, 0x68, 0xde, 0x4a, 0xc2, 0x55, 0x99, 0x98, 0xf2, 0x2e, 0xf4, 0x4e, 0x8a, 0xa8, 0x79, 0xf3, 0x32, 0x8c, 0xbc, 0x46, 0xaa, 0x85, 0x8d, 0xcb, 0x43, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_744 = { .name = "xdh_wei25519_744", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_744_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_744_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_744_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_744_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 227 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 745 for XDH, tcId is 228 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_745_peerpubkey[] = { 0x75, 0xe1, 0x58, 0x7c, 0x5e, 0xef, 0xc8, 0x37, 0x15, 0xd7, 0x10, 0x20, 0xaa, 0x6b, 0xe5, 0x34, 0x7b, 0xb9, 0xec, 0x9d, 0x91, 0xce, 0x5b, 0x28, 0xa9, 0xbb, 0xb7, 0x4c, 0x92, 0xef, 0x40, 0x7e, }; static const unsigned char xdh_wei25519_745_ourpubkey[] = { 0xdd, 0x9c, 0xa7, 0x38, 0x8e, 0x68, 0x1b, 0x1e, 0xdd, 0x40, 0x2d, 0x97, 0x93, 0x8c, 0xb5, 0x28, 0x18, 0x77, 0xb1, 0xe0, 0xcf, 0x06, 0xb9, 0xfc, 0x0f, 0x49, 0x68, 0xd6, 0xbe, 0x18, 0x46, 0x5c, }; static const unsigned char xdh_wei25519_745_privkey[] = { 0x08, 0x29, 0xa4, 0x90, 0x46, 0xdc, 0xe2, 0xc0, 0x7a, 0xb2, 0x84, 0x40, 0xdb, 0xad, 0x14, 0x64, 0x53, 0xe1, 0x28, 0x96, 0x0e, 0x85, 0xdd, 0x2e, 0x6a, 0x69, 0xa1, 0x51, 0x28, 0x73, 0xdd, 0x44, }; static const unsigned char xdh_wei25519_745_sharedsecret[] = { 0x76, 0x1d, 0x8c, 0xec, 0xf1, 0x3f, 0x93, 0xb3, 0x79, 0xa7, 0x72, 0xe5, 0xfa, 0xc5, 0xb9, 0xff, 0xe9, 0x96, 0xca, 0xd9, 0xaf, 0x06, 0x15, 0x25, 0x80, 0xaf, 0xe8, 0x7f, 0xf9, 0x65, 0x1c, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_745 = { .name = "xdh_wei25519_745", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_745_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_745_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_745_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_745_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 228 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 746 for XDH, tcId is 229 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_746_peerpubkey[] = { 0xf8, 0x5a, 0x06, 0x06, 0x5e, 0xa2, 0x52, 0x72, 0x38, 0xfc, 0x5e, 0xc1, 0xb7, 0x5e, 0xad, 0x92, 0x62, 0xe6, 0xb1, 0xae, 0xd6, 0x1f, 0xef, 0xf8, 0x3b, 0x91, 0x23, 0x0a, 0xeb, 0x4b, 0x7d, 0x01, }; static const unsigned char xdh_wei25519_746_ourpubkey[] = { 0x54, 0x75, 0xbf, 0xdb, 0x95, 0x0a, 0xb0, 0x7b, 0x49, 0x72, 0x20, 0x8c, 0x3b, 0x02, 0xba, 0xd6, 0xe1, 0x9d, 0x2c, 0x6d, 0x37, 0x73, 0x75, 0xb5, 0xc1, 0x27, 0x4f, 0x0a, 0x49, 0x11, 0x32, 0x77, }; static const unsigned char xdh_wei25519_746_privkey[] = { 0x58, 0x7a, 0xc3, 0x6b, 0x9a, 0x23, 0x59, 0x46, 0x32, 0x67, 0x9a, 0xde, 0xa1, 0xa8, 0x26, 0xf2, 0xf6, 0x2d, 0x79, 0x73, 0x82, 0x20, 0xfb, 0x48, 0x74, 0x64, 0x03, 0x9f, 0x36, 0xca, 0x23, 0x72, }; static const unsigned char xdh_wei25519_746_sharedsecret[] = { 0xf1, 0x2a, 0xcd, 0x36, 0xf6, 0x29, 0x9a, 0x4d, 0x19, 0x2c, 0x03, 0xaa, 0x4e, 0xfe, 0xea, 0x7d, 0xf5, 0x1e, 0x2d, 0x15, 0xd7, 0x63, 0x17, 0x2e, 0x68, 0xac, 0xcf, 0x7b, 0xc6, 0xf5, 0xc2, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_746 = { .name = "xdh_wei25519_746", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_746_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_746_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_746_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_746_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 229 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 747 for XDH, tcId is 230 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_747_peerpubkey[] = { 0x6e, 0x0f, 0x1d, 0x00, 0xb1, 0x09, 0x9d, 0x2a, 0x71, 0xf7, 0xbe, 0x86, 0x65, 0x5f, 0xeb, 0x89, 0x88, 0xbb, 0xa5, 0x57, 0x7b, 0x02, 0xf9, 0x64, 0x04, 0x3a, 0x49, 0xf0, 0x0c, 0x74, 0x96, 0x13, }; static const unsigned char xdh_wei25519_747_ourpubkey[] = { 0x97, 0x4c, 0x39, 0xc1, 0x07, 0x75, 0x76, 0xba, 0xce, 0xbd, 0x1d, 0xd9, 0xf7, 0x99, 0x95, 0x86, 0xb4, 0x5c, 0xf1, 0xc2, 0x1e, 0xd5, 0x82, 0xa6, 0x8c, 0x31, 0x76, 0x46, 0x66, 0x1b, 0xb9, 0x68, }; static const unsigned char xdh_wei25519_747_privkey[] = { 0xa8, 0xa4, 0x42, 0xb7, 0xc0, 0xa9, 0x92, 0x27, 0xb4, 0xcb, 0x5c, 0x75, 0xfb, 0x9e, 0x5a, 0x72, 0xce, 0xa2, 0x5e, 0xba, 0x8a, 0x0b, 0xdf, 0x07, 0x27, 0x1b, 0xb4, 0xa9, 0x3c, 0x2b, 0x66, 0x65, }; static const unsigned char xdh_wei25519_747_sharedsecret[] = { 0xb2, 0xbb, 0xbd, 0x17, 0x3f, 0x41, 0xd9, 0x52, 0xd3, 0x29, 0x25, 0x1d, 0xa9, 0x73, 0xa9, 0x50, 0x03, 0x00, 0x62, 0x81, 0x77, 0xad, 0x0f, 0xb7, 0x9d, 0x01, 0xe2, 0xe2, 0x63, 0x90, 0x5b, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_747 = { .name = "xdh_wei25519_747", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_747_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_747_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_747_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_747_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 230 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 748 for XDH, tcId is 231 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_748_peerpubkey[] = { 0x69, 0x67, 0x57, 0xce, 0xd3, 0x09, 0x7f, 0xa9, 0x60, 0xc8, 0x39, 0x0a, 0x09, 0xe8, 0xbd, 0x6d, 0x39, 0x0d, 0xbd, 0xe8, 0xd1, 0xfa, 0x17, 0x02, 0x61, 0xf3, 0x42, 0x2e, 0xdc, 0x19, 0x29, 0x29, }; static const unsigned char xdh_wei25519_748_ourpubkey[] = { 0x67, 0x0a, 0xd8, 0xc1, 0x37, 0xc5, 0x46, 0x7a, 0x4c, 0xdc, 0x53, 0xf9, 0x75, 0xcf, 0x3a, 0xf7, 0xa9, 0x64, 0xd9, 0xc5, 0x46, 0xa4, 0x9d, 0xa5, 0xe5, 0x20, 0x08, 0x70, 0x4e, 0xb0, 0xde, 0x3b, }; static const unsigned char xdh_wei25519_748_privkey[] = { 0xd8, 0xf7, 0x23, 0x3e, 0x96, 0x12, 0xc0, 0x0c, 0x9d, 0xca, 0x2c, 0x75, 0x1e, 0xc1, 0xd3, 0xf5, 0xf6, 0x7b, 0xad, 0x77, 0xc2, 0xe7, 0x14, 0xa2, 0x0e, 0x71, 0xeb, 0x3f, 0x22, 0x0a, 0x66, 0x71, }; static const unsigned char xdh_wei25519_748_sharedsecret[] = { 0x45, 0xec, 0xfa, 0x27, 0x5f, 0x1d, 0xaa, 0x25, 0xd3, 0xfa, 0xdf, 0x33, 0xcd, 0xf8, 0x9a, 0x15, 0x2a, 0xfe, 0xa2, 0x5e, 0xae, 0x37, 0xe6, 0x8e, 0x00, 0xb3, 0x0c, 0x36, 0x77, 0x89, 0x88, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_748 = { .name = "xdh_wei25519_748", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_748_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_748_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_748_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_748_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 231 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 749 for XDH, tcId is 232 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_749_peerpubkey[] = { 0xfd, 0x84, 0xb3, 0xf2, 0xfb, 0xfa, 0x16, 0xae, 0xbf, 0x40, 0xc2, 0x7f, 0x46, 0xe1, 0x8d, 0x77, 0xba, 0xfa, 0x0c, 0x79, 0x71, 0xbe, 0xdd, 0xe4, 0x90, 0x92, 0x12, 0xe7, 0x71, 0xbd, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_749_ourpubkey[] = { 0x25, 0x80, 0x1d, 0x13, 0x99, 0x77, 0xe1, 0xde, 0x83, 0x81, 0x17, 0x2a, 0xf6, 0xd6, 0x58, 0xba, 0xfa, 0xd7, 0x50, 0x59, 0xf4, 0xc6, 0x90, 0x05, 0x21, 0x96, 0x75, 0xa4, 0xa5, 0xd5, 0xf0, 0x6f, }; static const unsigned char xdh_wei25519_749_privkey[] = { 0xd8, 0x0c, 0x7c, 0x75, 0x57, 0xc9, 0x90, 0x7e, 0x1b, 0x11, 0xe8, 0x44, 0xbf, 0x13, 0x69, 0xcb, 0xa6, 0x69, 0xbc, 0x38, 0xe9, 0xb7, 0xb2, 0x53, 0xe5, 0x1f, 0x23, 0x9b, 0xda, 0x32, 0x23, 0x74, }; static const unsigned char xdh_wei25519_749_sharedsecret[] = { 0x59, 0x5e, 0x14, 0x4e, 0x07, 0xbb, 0xe6, 0x5b, 0x38, 0xe0, 0xe4, 0x16, 0x3d, 0x02, 0xad, 0x75, 0xa6, 0x5e, 0x42, 0x2e, 0x74, 0x06, 0x7d, 0xb3, 0x5c, 0x90, 0xdf, 0xa6, 0xe0, 0x55, 0xd4, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_749 = { .name = "xdh_wei25519_749", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_749_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_749_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_749_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_749_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 232 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 750 for XDH, tcId is 233 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_750_peerpubkey[] = { 0x80, 0x54, 0x85, 0x70, 0x3c, 0xcf, 0xc4, 0xa2, 0x21, 0xef, 0x28, 0x12, 0x67, 0xf5, 0x2b, 0x61, 0xce, 0xbc, 0x87, 0x9f, 0x0f, 0x13, 0xb1, 0xe5, 0xf5, 0x21, 0xc1, 0x73, 0x52, 0xa0, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_750_ourpubkey[] = { 0x8b, 0x39, 0x4d, 0xc7, 0x91, 0xa1, 0x7c, 0x04, 0xe7, 0x94, 0x76, 0x2d, 0x08, 0x09, 0x99, 0xbd, 0x0b, 0x75, 0x35, 0x3e, 0x96, 0x3a, 0xc5, 0x47, 0x71, 0xd9, 0x51, 0xd3, 0x80, 0x66, 0x73, 0x33, }; static const unsigned char xdh_wei25519_750_privkey[] = { 0x80, 0x02, 0xa8, 0x51, 0x15, 0xad, 0x7b, 0x41, 0xc5, 0x0f, 0x84, 0xf3, 0x5f, 0xac, 0x75, 0x0e, 0xe8, 0xe1, 0x97, 0x34, 0x80, 0x71, 0x02, 0x83, 0x0f, 0xf6, 0xa3, 0x06, 0xbe, 0xed, 0x44, 0x64, }; static const unsigned char xdh_wei25519_750_sharedsecret[] = { 0x22, 0x6e, 0x16, 0xa2, 0x79, 0xac, 0x81, 0xe2, 0x68, 0x43, 0x7e, 0xb3, 0xe0, 0x9e, 0x07, 0x40, 0x63, 0x24, 0xcb, 0x72, 0xa9, 0xd4, 0xee, 0x58, 0xe4, 0xcf, 0x00, 0x91, 0x47, 0x49, 0x72, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_750 = { .name = "xdh_wei25519_750", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_750_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_750_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_750_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_750_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 233 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 751 for XDH, tcId is 234 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_751_peerpubkey[] = { 0x80, 0x64, 0x2a, 0x32, 0x79, 0xda, 0x6b, 0xf5, 0xfc, 0x13, 0xdb, 0x14, 0xa5, 0x69, 0xc7, 0x08, 0x9d, 0xb0, 0x14, 0x22, 0x5c, 0xfc, 0xae, 0x7d, 0xff, 0x5a, 0x0d, 0x25, 0xec, 0xc9, 0x23, 0x5b, }; static const unsigned char xdh_wei25519_751_ourpubkey[] = { 0xbe, 0x56, 0xc5, 0x3f, 0xc2, 0xcb, 0x0a, 0xbf, 0x60, 0x0e, 0x94, 0xde, 0x40, 0xeb, 0xee, 0x6d, 0xa4, 0x18, 0x2d, 0x80, 0x58, 0xdd, 0xaa, 0x34, 0x76, 0xe6, 0x8e, 0x7a, 0x9f, 0x73, 0xc6, 0x69, }; static const unsigned char xdh_wei25519_751_privkey[] = { 0x78, 0x2d, 0xb0, 0xc8, 0xe3, 0xe6, 0x8f, 0x10, 0x6f, 0xe0, 0xc5, 0x64, 0x15, 0xe0, 0xbd, 0x13, 0xd8, 0x12, 0xde, 0xa0, 0xe9, 0x4c, 0xbd, 0x18, 0xbd, 0xf6, 0x76, 0x12, 0x95, 0x61, 0x3a, 0x6d, }; static const unsigned char xdh_wei25519_751_sharedsecret[] = { 0x79, 0x0d, 0x09, 0xb1, 0x72, 0x6d, 0x21, 0x09, 0x57, 0xce, 0x8f, 0x65, 0x86, 0x9c, 0xa1, 0xec, 0x8f, 0xa0, 0xb2, 0xb0, 0x6b, 0x6b, 0xcf, 0x94, 0x83, 0xb3, 0xeb, 0x55, 0xe4, 0x9e, 0x92, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_751 = { .name = "xdh_wei25519_751", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_751_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_751_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_751_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_751_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 234 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 752 for XDH, tcId is 235 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_752_peerpubkey[] = { 0x84, 0xe8, 0x27, 0xf7, 0x8c, 0xae, 0x0c, 0xf0, 0x63, 0xe4, 0x34, 0x01, 0x98, 0xf7, 0x88, 0xc2, 0x84, 0xe0, 0x74, 0x30, 0xb3, 0xa9, 0x4a, 0x38, 0x73, 0xdf, 0x38, 0xb1, 0xf8, 0x72, 0xce, 0x02, }; static const unsigned char xdh_wei25519_752_ourpubkey[] = { 0x3f, 0x5d, 0x69, 0xe1, 0x3c, 0x3f, 0x25, 0xc1, 0xb8, 0x12, 0x3b, 0x9b, 0xf6, 0x4d, 0xf7, 0xb1, 0x62, 0x3d, 0xd8, 0xf2, 0x9f, 0x57, 0x1a, 0xda, 0x03, 0x7f, 0x34, 0x3a, 0x07, 0x86, 0xd1, 0x7c, }; static const unsigned char xdh_wei25519_752_privkey[] = { 0x90, 0x9f, 0xb0, 0xbd, 0xbf, 0x53, 0xa6, 0x9a, 0x2f, 0xe3, 0x9c, 0x8b, 0x24, 0x97, 0xab, 0xd4, 0xfa, 0x57, 0xd2, 0xd5, 0x4e, 0x04, 0x6b, 0x5f, 0x51, 0x45, 0x95, 0xe2, 0xc0, 0xf3, 0x3d, 0x63, }; static const unsigned char xdh_wei25519_752_sharedsecret[] = { 0x68, 0x4c, 0xc8, 0x3a, 0xf8, 0x06, 0xbc, 0xd9, 0xcd, 0x25, 0x1e, 0x18, 0x58, 0xf3, 0xc1, 0x0f, 0x01, 0x66, 0xe0, 0xa0, 0xcd, 0x2b, 0xe1, 0x54, 0x33, 0x9a, 0x88, 0x6b, 0x13, 0xe7, 0xc7, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_752 = { .name = "xdh_wei25519_752", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_752_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_752_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_752_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_752_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 235 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 753 for XDH, tcId is 236 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_753_peerpubkey[] = { 0xd4, 0x45, 0xe1, 0xdf, 0x00, 0x83, 0xbb, 0x6b, 0x8e, 0x88, 0x6e, 0x66, 0x32, 0x25, 0x18, 0x07, 0x17, 0x1d, 0x4e, 0x88, 0xc4, 0x18, 0x16, 0xfc, 0x68, 0x43, 0x73, 0xc0, 0x9d, 0x7e, 0x5d, 0x6e, }; static const unsigned char xdh_wei25519_753_ourpubkey[] = { 0x11, 0xfd, 0x61, 0x66, 0x7f, 0x81, 0xc6, 0xb2, 0xe9, 0xd7, 0x0c, 0xf7, 0xb9, 0xc7, 0x11, 0x52, 0x97, 0xda, 0xac, 0x13, 0xd9, 0xa8, 0xd6, 0x96, 0x25, 0x52, 0xd0, 0x25, 0x61, 0xcf, 0x1e, 0x76, }; static const unsigned char xdh_wei25519_753_privkey[] = { 0x78, 0xa6, 0x79, 0x09, 0x75, 0x72, 0x48, 0x66, 0x5f, 0x79, 0x37, 0x1e, 0xb0, 0x14, 0x82, 0x5a, 0xb6, 0xbd, 0x4a, 0xf3, 0x57, 0x1f, 0x14, 0x03, 0x89, 0xc6, 0x36, 0xe0, 0x04, 0xbc, 0xf4, 0x6b, }; static const unsigned char xdh_wei25519_753_sharedsecret[] = { 0xe4, 0x26, 0xe4, 0xa3, 0xc5, 0x4d, 0x3e, 0x77, 0xf4, 0xf1, 0x57, 0x30, 0x1e, 0x0a, 0xc7, 0xd9, 0xe1, 0x23, 0x37, 0xa2, 0xb5, 0x8d, 0xf1, 0x67, 0x80, 0x04, 0x1c, 0xf6, 0xd6, 0x19, 0x8c, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_753 = { .name = "xdh_wei25519_753", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_753_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_753_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_753_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_753_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 236 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 754 for XDH, tcId is 237 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_754_peerpubkey[] = { 0xf2, 0x6a, 0xa6, 0x15, 0x1a, 0x4b, 0x22, 0x39, 0x01, 0x76, 0xf6, 0x23, 0x3e, 0x74, 0x2f, 0x40, 0xf2, 0xec, 0xd5, 0x13, 0x71, 0x66, 0xfb, 0x2e, 0x1e, 0xc9, 0xb2, 0xf2, 0x45, 0x4a, 0xc2, 0x77, }; static const unsigned char xdh_wei25519_754_ourpubkey[] = { 0xa5, 0xcd, 0xc0, 0xb2, 0xe0, 0xbc, 0x4f, 0x8b, 0x6e, 0x20, 0x08, 0xc1, 0x73, 0x0a, 0xea, 0x60, 0xd1, 0xb8, 0x0a, 0x3f, 0xb5, 0xa0, 0x1b, 0x5f, 0x2c, 0x1d, 0x4f, 0x56, 0x02, 0x45, 0x1c, 0x5d, }; static const unsigned char xdh_wei25519_754_privkey[] = { 0x28, 0x6a, 0x30, 0x2d, 0x5b, 0x07, 0x6d, 0x2a, 0xba, 0x7c, 0x2a, 0x4d, 0xaf, 0x9e, 0x7c, 0xc9, 0xd8, 0x53, 0x9b, 0x7c, 0x03, 0x91, 0x30, 0x7d, 0xb6, 0x5a, 0x2f, 0x42, 0x20, 0xd3, 0x0f, 0x70, }; static const unsigned char xdh_wei25519_754_sharedsecret[] = { 0x86, 0x2d, 0xf9, 0x2e, 0x25, 0x27, 0x7b, 0xd9, 0x4f, 0x9a, 0xf2, 0xe1, 0xdd, 0xa5, 0x1f, 0x90, 0x5a, 0x6e, 0x2a, 0x3f, 0x60, 0x68, 0xa9, 0x2f, 0xab, 0xfc, 0x6c, 0x53, 0xda, 0x21, 0xec, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_754 = { .name = "xdh_wei25519_754", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_754_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_754_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_754_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_754_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 237 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 755 for XDH, tcId is 238 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_755_peerpubkey[] = { 0x2b, 0x02, 0xdb, 0x3c, 0x82, 0x47, 0x7f, 0xe2, 0x1a, 0xa7, 0xa9, 0x4d, 0x85, 0xdf, 0x37, 0x9f, 0x57, 0x1c, 0x84, 0x49, 0xb4, 0x3c, 0xbd, 0x06, 0x05, 0xd0, 0xac, 0xc5, 0x3c, 0x47, 0x2f, 0x05, }; static const unsigned char xdh_wei25519_755_ourpubkey[] = { 0x8f, 0x94, 0xfa, 0xcb, 0x88, 0x63, 0x5a, 0xfc, 0x50, 0x37, 0x68, 0x84, 0xd0, 0xfc, 0xa9, 0xb7, 0x4a, 0x02, 0xc5, 0x7f, 0x58, 0x6a, 0x26, 0x59, 0x27, 0x74, 0xeb, 0x63, 0x4c, 0xb6, 0xe7, 0x3a, }; static const unsigned char xdh_wei25519_755_privkey[] = { 0xa8, 0x38, 0xb7, 0x0d, 0x17, 0x16, 0x1c, 0xb3, 0x82, 0x22, 0xf7, 0xbc, 0x69, 0xa3, 0xc8, 0x57, 0x60, 0x32, 0xd5, 0x80, 0x27, 0x5b, 0x3b, 0x7d, 0x63, 0xfb, 0xa0, 0x89, 0x08, 0xcb, 0x48, 0x79, }; static const unsigned char xdh_wei25519_755_sharedsecret[] = { 0x3f, 0x43, 0x8d, 0xbf, 0x03, 0x94, 0x79, 0x95, 0xc9, 0x9f, 0xd4, 0xcb, 0x36, 0x6c, 0xa7, 0xe0, 0x0e, 0x8c, 0xfb, 0xce, 0x64, 0xc3, 0x03, 0x9c, 0x26, 0xd9, 0xfa, 0xd0, 0x0f, 0xa4, 0x9c, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_755 = { .name = "xdh_wei25519_755", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_755_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_755_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_755_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_755_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 238 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 756 for XDH, tcId is 239 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_756_peerpubkey[] = { 0xd7, 0x1d, 0xd7, 0xdb, 0x12, 0x23, 0x30, 0xc9, 0xbb, 0xaa, 0xb5, 0xda, 0x6c, 0xf1, 0xf6, 0xe1, 0xc2, 0x53, 0x45, 0xee, 0x6a, 0x66, 0xb1, 0x75, 0x12, 0xb1, 0x80, 0x4a, 0xce, 0x28, 0x73, 0x59, }; static const unsigned char xdh_wei25519_756_ourpubkey[] = { 0x1f, 0xaf, 0xa0, 0x80, 0xdb, 0xa4, 0xe4, 0xb5, 0x3d, 0xfa, 0x43, 0x1d, 0x85, 0x84, 0x3f, 0xd7, 0x84, 0x0e, 0x65, 0x5a, 0xe3, 0xbb, 0xbc, 0x32, 0x38, 0xfb, 0x4d, 0xc9, 0x06, 0x06, 0xdd, 0x32, }; static const unsigned char xdh_wei25519_756_privkey[] = { 0xb0, 0x73, 0x3b, 0x42, 0x03, 0x26, 0x7a, 0xb3, 0xc9, 0x4c, 0x50, 0x6a, 0xca, 0xdb, 0x94, 0x9a, 0x76, 0xcc, 0x60, 0x04, 0x86, 0xfc, 0xd6, 0x01, 0x47, 0x8f, 0xcd, 0xef, 0x79, 0xc2, 0x9d, 0x6c, }; static const unsigned char xdh_wei25519_756_sharedsecret[] = { 0x95, 0xf3, 0xf1, 0x84, 0x9b, 0x0a, 0x07, 0x01, 0x84, 0xe6, 0x07, 0x7c, 0x92, 0xae, 0x36, 0xba, 0x33, 0x24, 0xbf, 0x14, 0x41, 0x16, 0x8b, 0x89, 0xbb, 0x4b, 0x91, 0x67, 0xed, 0xd6, 0x73, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_756 = { .name = "xdh_wei25519_756", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_756_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_756_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_756_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_756_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 239 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 757 for XDH, tcId is 240 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_757_peerpubkey[] = { 0x73, 0x7b, 0xc0, 0x7d, 0xe0, 0x72, 0x9b, 0xbc, 0xfb, 0xee, 0x3a, 0x08, 0xe6, 0x96, 0xf9, 0x7f, 0x37, 0x70, 0x57, 0x7e, 0x4b, 0x01, 0xec, 0x10, 0x8f, 0x59, 0xca, 0xf4, 0x64, 0x06, 0xd2, 0x05, }; static const unsigned char xdh_wei25519_757_ourpubkey[] = { 0xa8, 0x84, 0x2f, 0xa9, 0x8f, 0xb3, 0xca, 0xf2, 0x07, 0xef, 0xae, 0x63, 0xeb, 0xe9, 0xb8, 0xad, 0x23, 0xd3, 0xbd, 0x15, 0x24, 0x61, 0xc9, 0x65, 0x2f, 0xdc, 0x39, 0x96, 0x51, 0x7e, 0x8a, 0x0b, }; static const unsigned char xdh_wei25519_757_privkey[] = { 0xd8, 0x44, 0xa3, 0x6b, 0x58, 0xae, 0xfd, 0xb0, 0x8b, 0x98, 0x17, 0x96, 0x02, 0x9a, 0x27, 0x66, 0x10, 0x18, 0x84, 0xb3, 0x48, 0xf7, 0x0e, 0xed, 0x94, 0x7c, 0x25, 0x41, 0x06, 0x4c, 0xaf, 0x6a, }; static const unsigned char xdh_wei25519_757_sharedsecret[] = { 0x6a, 0x96, 0x9a, 0xf6, 0xd2, 0x36, 0xab, 0xa0, 0x8f, 0xa8, 0x31, 0x60, 0xf6, 0x99, 0xe9, 0xed, 0x76, 0xfb, 0x63, 0x55, 0xf0, 0x66, 0x2f, 0x03, 0xdb, 0xc5, 0x91, 0x5a, 0x3c, 0x23, 0x06, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_757 = { .name = "xdh_wei25519_757", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_757_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_757_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_757_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_757_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 240 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 758 for XDH, tcId is 241 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_758_peerpubkey[] = { 0x97, 0x58, 0x06, 0x1a, 0x7b, 0x3e, 0x2c, 0x02, 0xfb, 0x5c, 0x20, 0x87, 0x5a, 0xe6, 0xb5, 0x5b, 0x11, 0xfb, 0x67, 0x95, 0x99, 0x0a, 0x0f, 0x4f, 0xdc, 0xd1, 0x14, 0x7b, 0xe5, 0x52, 0x16, 0x07, }; static const unsigned char xdh_wei25519_758_ourpubkey[] = { 0xef, 0x50, 0xc6, 0xfa, 0xe5, 0x64, 0xa5, 0xfc, 0xdb, 0x41, 0xb8, 0x3c, 0x13, 0xaf, 0x58, 0xcd, 0xec, 0x70, 0x45, 0x00, 0x9d, 0x83, 0x14, 0x27, 0x32, 0xe0, 0xde, 0xec, 0x03, 0x1c, 0x54, 0x65, }; static const unsigned char xdh_wei25519_758_privkey[] = { 0xa0, 0xb7, 0xd3, 0x12, 0xd9, 0xb8, 0x32, 0xe1, 0x24, 0xd1, 0xbc, 0x8c, 0xb2, 0x1d, 0xb5, 0x45, 0x44, 0x0e, 0x3c, 0xf1, 0x4e, 0x74, 0x73, 0xee, 0x9c, 0xcb, 0xe9, 0xb6, 0x82, 0xf2, 0x15, 0x6c, }; static const unsigned char xdh_wei25519_758_sharedsecret[] = { 0xab, 0x39, 0xdb, 0x4a, 0xa2, 0x9a, 0xc4, 0x01, 0x7c, 0x74, 0x46, 0xf1, 0xad, 0x0c, 0x7d, 0xaa, 0x9a, 0x37, 0xf1, 0xb6, 0xb4, 0xf2, 0xe9, 0xd2, 0x90, 0x2c, 0xce, 0xfb, 0x84, 0x83, 0x9d, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_758 = { .name = "xdh_wei25519_758", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_758_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_758_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_758_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_758_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 241 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 759 for XDH, tcId is 242 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_759_peerpubkey[] = { 0x37, 0xcd, 0x65, 0xd3, 0x30, 0x36, 0x20, 0x5f, 0x34, 0x49, 0xe8, 0x65, 0x5a, 0x50, 0xd4, 0xb0, 0xc8, 0x6f, 0xec, 0x02, 0x10, 0x0b, 0x4f, 0x2d, 0xb7, 0xda, 0x92, 0xdc, 0xf5, 0xe3, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_759_ourpubkey[] = { 0x51, 0x31, 0xc5, 0xf4, 0x00, 0x49, 0x22, 0xf0, 0x74, 0xe1, 0x78, 0x4d, 0xa2, 0x69, 0x7b, 0xa4, 0x1d, 0x0f, 0x0b, 0x1f, 0x1e, 0xa8, 0x21, 0x05, 0xa6, 0x73, 0x72, 0x21, 0x29, 0x11, 0x07, 0x4f, }; static const unsigned char xdh_wei25519_759_privkey[] = { 0x78, 0x7f, 0x1d, 0xdd, 0x78, 0xcc, 0x64, 0x73, 0xd3, 0xe6, 0x39, 0x49, 0x40, 0x9a, 0xd3, 0xf3, 0x5b, 0xfe, 0x0c, 0xe0, 0x73, 0x8f, 0x25, 0x5d, 0xee, 0x68, 0x2f, 0x2b, 0xfb, 0xc8, 0x0f, 0x7f, }; static const unsigned char xdh_wei25519_759_sharedsecret[] = { 0x13, 0xde, 0x41, 0x65, 0x9e, 0x3e, 0x30, 0x8d, 0x6e, 0x26, 0xc9, 0x42, 0x82, 0xfc, 0xc3, 0xe0, 0x36, 0x4d, 0xdf, 0x08, 0x09, 0xdd, 0xee, 0x6c, 0x8e, 0x7a, 0xbb, 0x50, 0x91, 0xb0, 0x2b, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_759 = { .name = "xdh_wei25519_759", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_759_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_759_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_759_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_759_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 242 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 760 for XDH, tcId is 243 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_760_peerpubkey[] = { 0xa9, 0xb6, 0xe8, 0x08, 0x14, 0x60, 0x38, 0x3a, 0xdc, 0x58, 0x7c, 0x8f, 0x91, 0xa0, 0x2c, 0x59, 0xa7, 0xa3, 0x55, 0x76, 0xca, 0x62, 0x43, 0x6c, 0xcd, 0x1b, 0x5f, 0xef, 0x1b, 0x92, 0x54, 0x5d, }; static const unsigned char xdh_wei25519_760_ourpubkey[] = { 0x38, 0x87, 0xc1, 0x83, 0xe4, 0xea, 0xf8, 0xda, 0x3b, 0x43, 0xb8, 0x8e, 0xe4, 0x98, 0x67, 0x86, 0x37, 0x4a, 0x42, 0x2d, 0x84, 0x3b, 0xb9, 0x2d, 0x1f, 0x98, 0x51, 0xfa, 0x7c, 0x0b, 0xed, 0x2d, }; static const unsigned char xdh_wei25519_760_privkey[] = { 0x40, 0x80, 0xae, 0x60, 0xa8, 0x5c, 0x1f, 0xa9, 0x5a, 0xad, 0x9b, 0xea, 0xbd, 0x98, 0xb4, 0x05, 0xe7, 0xf2, 0x81, 0x41, 0xbf, 0x08, 0xf2, 0xc9, 0xa4, 0xfd, 0xbd, 0xe1, 0xc5, 0x68, 0x02, 0x65, }; static const unsigned char xdh_wei25519_760_sharedsecret[] = { 0x69, 0xed, 0x8a, 0x0a, 0x27, 0x81, 0x2a, 0xe6, 0x74, 0x14, 0x74, 0xbd, 0x5c, 0x6a, 0x4e, 0x68, 0x3a, 0x12, 0x66, 0x49, 0xf7, 0x24, 0x5a, 0xa0, 0xf9, 0x1a, 0x3a, 0x38, 0x4b, 0xcd, 0xe2, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_760 = { .name = "xdh_wei25519_760", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_760_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_760_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_760_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_760_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 243 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 761 for XDH, tcId is 244 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_761_peerpubkey[] = { 0xfd, 0x1a, 0x2c, 0xd1, 0x7a, 0x93, 0xf8, 0x50, 0xde, 0xb8, 0xc4, 0x5a, 0x2d, 0x34, 0x53, 0x92, 0x32, 0xdf, 0xd8, 0xa5, 0x58, 0x30, 0x42, 0x09, 0x78, 0x1c, 0x6c, 0xb5, 0x82, 0x29, 0x87, 0x0e, }; static const unsigned char xdh_wei25519_761_ourpubkey[] = { 0xe0, 0xb6, 0x80, 0xd3, 0xdc, 0xf7, 0x89, 0xb7, 0x2d, 0x87, 0x86, 0x31, 0x40, 0x59, 0xe6, 0xcc, 0x7d, 0xd8, 0x4f, 0x71, 0x4b, 0x77, 0x10, 0x30, 0x2a, 0xf1, 0x1e, 0x12, 0xfc, 0xbc, 0x8a, 0x24, }; static const unsigned char xdh_wei25519_761_privkey[] = { 0x08, 0xf9, 0xf4, 0xa4, 0xfa, 0xc4, 0xdb, 0x41, 0x33, 0x15, 0xf7, 0x4a, 0x59, 0x81, 0x8b, 0x24, 0x52, 0xfc, 0x7b, 0x76, 0x85, 0x59, 0x2e, 0x26, 0x55, 0x67, 0x75, 0xf9, 0xb8, 0x6d, 0x90, 0x7f, }; static const unsigned char xdh_wei25519_761_sharedsecret[] = { 0x01, 0x02, 0x18, 0xbd, 0x67, 0xb1, 0xb9, 0x2f, 0xee, 0x3e, 0x7f, 0xa4, 0x57, 0x8c, 0x13, 0x61, 0x7d, 0x73, 0x19, 0x5d, 0xe1, 0x02, 0x79, 0x74, 0x7e, 0x53, 0xba, 0x01, 0xa2, 0x54, 0x52, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_761 = { .name = "xdh_wei25519_761", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_761_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_761_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_761_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_761_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 244 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 762 for XDH, tcId is 245 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_762_peerpubkey[] = { 0xb8, 0x81, 0x19, 0xe5, 0xae, 0x6d, 0x9e, 0x6b, 0x91, 0x2d, 0x52, 0x52, 0x47, 0x39, 0xe6, 0x12, 0xef, 0x19, 0xab, 0x7e, 0x5d, 0xd3, 0xd9, 0x46, 0xcb, 0x9b, 0xc0, 0x03, 0xc3, 0x78, 0xf8, 0x1f, }; static const unsigned char xdh_wei25519_762_ourpubkey[] = { 0x77, 0x19, 0x5c, 0x15, 0xba, 0x8a, 0x31, 0xda, 0x41, 0x55, 0x8a, 0x68, 0x29, 0x8f, 0x46, 0xaf, 0x74, 0x6e, 0x9b, 0xe5, 0x2a, 0x2f, 0x19, 0xb1, 0x54, 0xfb, 0x28, 0xc5, 0xec, 0x29, 0x89, 0x23, }; static const unsigned char xdh_wei25519_762_privkey[] = { 0x18, 0x88, 0xcf, 0xae, 0x30, 0x85, 0x86, 0x76, 0x57, 0xb0, 0x94, 0x35, 0xc4, 0x2b, 0x74, 0xcc, 0x76, 0x24, 0x57, 0x83, 0x94, 0x51, 0xa3, 0x65, 0x9d, 0xb2, 0x18, 0xd4, 0x21, 0x4f, 0xdd, 0x63, }; static const unsigned char xdh_wei25519_762_sharedsecret[] = { 0xe6, 0xb2, 0x98, 0xde, 0x9c, 0xb6, 0x35, 0x8f, 0xbb, 0xb0, 0x0f, 0x11, 0x89, 0x0f, 0x57, 0x14, 0xa3, 0x85, 0x8e, 0x8f, 0x05, 0xa2, 0xa8, 0xd1, 0xcf, 0x39, 0xfe, 0x78, 0xcc, 0x55, 0xdd, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_762 = { .name = "xdh_wei25519_762", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_762_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_762_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_762_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_762_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 245 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 763 for XDH, tcId is 246 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_763_peerpubkey[] = { 0x7b, 0x70, 0xe2, 0x9d, 0xce, 0x04, 0x79, 0xcd, 0xe4, 0xa3, 0x6c, 0x7f, 0x97, 0x86, 0x58, 0x2f, 0x10, 0x4b, 0xc0, 0x78, 0x8f, 0x04, 0x6b, 0x48, 0xaf, 0x49, 0x5e, 0x67, 0xbd, 0xb8, 0x8f, 0x36, }; static const unsigned char xdh_wei25519_763_ourpubkey[] = { 0xb6, 0x83, 0x14, 0x82, 0x37, 0xd5, 0x89, 0x83, 0x9c, 0x00, 0x04, 0x23, 0x3e, 0xde, 0x52, 0x84, 0x5f, 0x4c, 0x48, 0x3d, 0xa9, 0x52, 0xca, 0x4d, 0xb3, 0x67, 0xa1, 0xf3, 0xf1, 0xd7, 0xe0, 0x4c, }; static const unsigned char xdh_wei25519_763_privkey[] = { 0x78, 0x9c, 0xe1, 0x3e, 0xd0, 0x07, 0x81, 0x8d, 0x7a, 0x51, 0x81, 0xe6, 0x29, 0xee, 0xd9, 0x44, 0xa2, 0x0a, 0x05, 0x8c, 0xfe, 0x39, 0x66, 0x9c, 0x98, 0x31, 0xbf, 0xa5, 0x21, 0x5a, 0x12, 0x69, }; static const unsigned char xdh_wei25519_763_sharedsecret[] = { 0x96, 0x7b, 0xbe, 0x29, 0x84, 0x94, 0xb4, 0xa5, 0xf9, 0x58, 0x53, 0xcf, 0xde, 0x9d, 0xc8, 0x59, 0x70, 0xb2, 0xa4, 0xb5, 0xdd, 0x2c, 0x92, 0x78, 0x29, 0x01, 0xe8, 0x53, 0x95, 0x7f, 0x58, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_763 = { .name = "xdh_wei25519_763", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_763_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_763_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_763_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_763_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 246 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 764 for XDH, tcId is 247 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_764_peerpubkey[] = { 0x2a, 0x20, 0x9e, 0x2a, 0xce, 0x0e, 0x3d, 0x69, 0x73, 0xff, 0xbf, 0x74, 0x03, 0xf9, 0x85, 0x7f, 0xf9, 0x7a, 0x5f, 0xdc, 0xd2, 0x7f, 0x2c, 0x70, 0x98, 0xb4, 0x44, 0xfc, 0x3c, 0x16, 0x67, 0x38, }; static const unsigned char xdh_wei25519_764_ourpubkey[] = { 0x58, 0x63, 0x2a, 0x69, 0xfb, 0x5f, 0x71, 0xb0, 0x1e, 0x1d, 0x55, 0x33, 0x5b, 0xac, 0x57, 0x68, 0x88, 0xfb, 0x4a, 0xb4, 0xb3, 0x1a, 0xd6, 0xcc, 0x9b, 0x5a, 0xe0, 0x2b, 0xc8, 0xd4, 0xa8, 0x2b, }; static const unsigned char xdh_wei25519_764_privkey[] = { 0x00, 0x02, 0x2b, 0x43, 0x77, 0x5a, 0xb2, 0xf4, 0xb9, 0x1b, 0xc1, 0xcb, 0x54, 0xc9, 0x7f, 0x78, 0x02, 0x62, 0x89, 0xea, 0xaf, 0x02, 0xab, 0xee, 0xd0, 0x4c, 0xa8, 0x4f, 0x73, 0x6c, 0x68, 0x6c, }; static const unsigned char xdh_wei25519_764_sharedsecret[] = { 0x9f, 0x66, 0x84, 0x86, 0x81, 0xd5, 0x34, 0xe5, 0x2b, 0x65, 0x99, 0x46, 0xea, 0x2c, 0x92, 0xd2, 0xfa, 0xbe, 0xd4, 0x3f, 0xe6, 0xe6, 0x90, 0x32, 0xc1, 0x11, 0x53, 0xdb, 0x43, 0xdc, 0xa7, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_764 = { .name = "xdh_wei25519_764", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_764_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_764_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_764_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_764_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 247 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 765 for XDH, tcId is 248 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_765_peerpubkey[] = { 0xf5, 0x07, 0x09, 0xac, 0xa7, 0xf3, 0x14, 0xe8, 0xd0, 0x5b, 0x5f, 0xf9, 0x7a, 0x42, 0x7e, 0x42, 0x7b, 0xd5, 0xe8, 0x5c, 0x4e, 0x86, 0x71, 0x21, 0x25, 0x07, 0x6a, 0x77, 0x1b, 0xe2, 0x14, 0x48, }; static const unsigned char xdh_wei25519_765_ourpubkey[] = { 0x5b, 0xd8, 0x2f, 0xfa, 0x97, 0x25, 0x11, 0x68, 0xf9, 0x54, 0x0d, 0x93, 0x98, 0x2c, 0xda, 0x1e, 0x86, 0xed, 0x3e, 0x13, 0xc7, 0x67, 0xeb, 0x39, 0x28, 0xa1, 0xa1, 0x30, 0xe6, 0xaa, 0x30, 0x3f, }; static const unsigned char xdh_wei25519_765_privkey[] = { 0x80, 0x97, 0xa5, 0x2f, 0xc5, 0x62, 0xe8, 0xa5, 0x16, 0x68, 0x2f, 0x53, 0x63, 0xcc, 0x5e, 0x7c, 0x88, 0xe9, 0xc7, 0x8e, 0x30, 0x8d, 0xf0, 0xde, 0xef, 0x40, 0x49, 0x7b, 0x35, 0xcc, 0x12, 0x7d, }; static const unsigned char xdh_wei25519_765_sharedsecret[] = { 0xea, 0x75, 0x72, 0xe2, 0x7a, 0x91, 0x20, 0xde, 0x1f, 0x13, 0xb8, 0x57, 0x10, 0xba, 0x69, 0xa3, 0x47, 0x1b, 0x7b, 0x3f, 0x5d, 0x12, 0xbc, 0x43, 0x0c, 0x12, 0xc4, 0xbb, 0xf8, 0xaa, 0x39, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_765 = { .name = "xdh_wei25519_765", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_765_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_765_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_765_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_765_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 248 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 766 for XDH, tcId is 249 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_766_peerpubkey[] = { 0x0f, 0x13, 0x95, 0x59, 0x78, 0xb9, 0x3d, 0x7b, 0x9f, 0x9a, 0x2e, 0x70, 0xd9, 0x6d, 0xf9, 0x22, 0x85, 0x0a, 0x8f, 0xfd, 0x84, 0x12, 0xe2, 0x36, 0xfb, 0x07, 0x4a, 0xef, 0x99, 0xd3, 0x7d, 0x54, }; static const unsigned char xdh_wei25519_766_ourpubkey[] = { 0x0a, 0x05, 0x16, 0x28, 0x96, 0x7b, 0x83, 0xf2, 0x7b, 0x02, 0x5b, 0x13, 0x07, 0xc5, 0xff, 0x39, 0xbd, 0x02, 0xf3, 0xe4, 0x79, 0xef, 0xd8, 0x07, 0x4d, 0x44, 0xf6, 0xda, 0x25, 0x2f, 0x35, 0x5b, }; static const unsigned char xdh_wei25519_766_privkey[] = { 0x40, 0x28, 0x80, 0x20, 0x30, 0xd8, 0xa8, 0x22, 0x1a, 0x71, 0x60, 0xee, 0xbb, 0xf1, 0x84, 0x61, 0x16, 0xc1, 0xc2, 0x53, 0xab, 0xc4, 0x67, 0xd6, 0xe4, 0x3c, 0xb8, 0x50, 0xf1, 0x45, 0x98, 0x60, }; static const unsigned char xdh_wei25519_766_sharedsecret[] = { 0xe2, 0x3d, 0x63, 0xa4, 0x6b, 0xe6, 0x7c, 0x74, 0x43, 0xc0, 0x7b, 0x93, 0x71, 0xff, 0x6a, 0x06, 0xaf, 0xcd, 0x7a, 0x57, 0x94, 0xbf, 0x25, 0x37, 0x92, 0x60, 0x74, 0xb8, 0x81, 0x90, 0x30, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_766 = { .name = "xdh_wei25519_766", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_766_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_766_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_766_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_766_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 249 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 767 for XDH, tcId is 250 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_767_peerpubkey[] = { 0x18, 0xff, 0xe9, 0x92, 0xa7, 0x29, 0xce, 0x70, 0xc3, 0xb7, 0xcd, 0xc5, 0x5b, 0xab, 0x55, 0xf2, 0x21, 0x0d, 0x27, 0x91, 0x34, 0xb3, 0x08, 0x2a, 0x9f, 0x68, 0x2d, 0x3a, 0x0b, 0x13, 0x12, 0x73, }; static const unsigned char xdh_wei25519_767_ourpubkey[] = { 0x7f, 0xa7, 0xd0, 0x84, 0x8b, 0xf8, 0x92, 0x81, 0x76, 0xa1, 0x49, 0x7f, 0xf3, 0x22, 0x12, 0xf5, 0xa9, 0xab, 0x44, 0x62, 0x19, 0x8e, 0xc5, 0x50, 0x58, 0x62, 0x1a, 0x1f, 0x8a, 0x66, 0xc3, 0x32, }; static const unsigned char xdh_wei25519_767_privkey[] = { 0xd8, 0x51, 0x5d, 0x45, 0xc7, 0xab, 0x2b, 0x95, 0x29, 0x81, 0x65, 0x43, 0x15, 0x00, 0x68, 0xb8, 0xe4, 0xbb, 0x61, 0x4c, 0xf2, 0xb6, 0x8a, 0x8a, 0x99, 0x36, 0x39, 0x75, 0xaf, 0x50, 0x3d, 0x74, }; static const unsigned char xdh_wei25519_767_sharedsecret[] = { 0x33, 0xcc, 0xaf, 0x24, 0xe1, 0xe2, 0x62, 0x90, 0xed, 0x7e, 0x46, 0x20, 0x93, 0xe9, 0xf7, 0x76, 0x07, 0xef, 0x52, 0xa0, 0x62, 0x6b, 0x2c, 0xd2, 0x51, 0x1c, 0x41, 0xcd, 0x24, 0xc1, 0x38, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_767 = { .name = "xdh_wei25519_767", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_767_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_767_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_767_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_767_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 250 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 768 for XDH, tcId is 251 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_768_peerpubkey[] = { 0xc3, 0xba, 0x28, 0x05, 0x77, 0x28, 0xd0, 0x53, 0x39, 0x65, 0xec, 0x34, 0x97, 0x9f, 0xe7, 0xbd, 0x93, 0xcf, 0x6c, 0xb6, 0x44, 0xe8, 0xda, 0x03, 0x8b, 0xaa, 0x87, 0x99, 0x7b, 0x8d, 0xc2, 0x0e, }; static const unsigned char xdh_wei25519_768_ourpubkey[] = { 0xc2, 0xea, 0x0b, 0xe0, 0x25, 0x56, 0x6c, 0xca, 0xea, 0xfd, 0xae, 0x35, 0x14, 0x5f, 0xde, 0x66, 0x37, 0x06, 0x78, 0xf0, 0x9c, 0x43, 0x52, 0xff, 0xde, 0x83, 0xd4, 0x08, 0x9f, 0xa3, 0x03, 0x5f, }; static const unsigned char xdh_wei25519_768_privkey[] = { 0xd8, 0x81, 0x5b, 0xd1, 0x44, 0x51, 0x8f, 0xa5, 0x26, 0xbe, 0xfd, 0xd3, 0x73, 0xf5, 0xf9, 0xcf, 0xf2, 0x54, 0xd5, 0xd3, 0xc4, 0x66, 0x0e, 0x8a, 0x90, 0xef, 0x2a, 0x22, 0xc6, 0x87, 0x6a, 0x74, }; static const unsigned char xdh_wei25519_768_sharedsecret[] = { 0x74, 0xf9, 0x5b, 0x47, 0x00, 0xf0, 0x18, 0x5f, 0x33, 0xc5, 0xb5, 0x52, 0x8e, 0xd5, 0x01, 0x2a, 0x33, 0x63, 0xf8, 0xbb, 0xd6, 0xf6, 0xa8, 0x40, 0xaa, 0x1f, 0x0f, 0x3b, 0xdb, 0x7c, 0x96, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_768 = { .name = "xdh_wei25519_768", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_768_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_768_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_768_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_768_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 251 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 769 for XDH, tcId is 252 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_769_peerpubkey[] = { 0x4e, 0xb0, 0x95, 0xa8, 0x6d, 0x1e, 0x78, 0x1b, 0xb1, 0x82, 0x23, 0x30, 0x75, 0xeb, 0xf1, 0xdb, 0x10, 0x9d, 0x57, 0x13, 0x5b, 0xf9, 0x1d, 0x54, 0xfd, 0xb1, 0x8e, 0xb3, 0x71, 0x42, 0x76, 0x40, }; static const unsigned char xdh_wei25519_769_ourpubkey[] = { 0x75, 0x3c, 0x26, 0x98, 0x2e, 0xd5, 0xca, 0x51, 0x4d, 0x39, 0xca, 0xf1, 0x3b, 0x24, 0x22, 0xa5, 0x5d, 0x59, 0x3e, 0x40, 0x35, 0x9f, 0x7b, 0xe3, 0xf2, 0x72, 0x58, 0xc8, 0xe3, 0x07, 0x74, 0x5a, }; static const unsigned char xdh_wei25519_769_privkey[] = { 0xa8, 0x2d, 0x99, 0x60, 0x93, 0xee, 0xfd, 0xaf, 0x28, 0x3f, 0x40, 0x49, 0xbb, 0xa4, 0xf5, 0xaf, 0x6e, 0xcc, 0x2e, 0x64, 0x89, 0x4f, 0x32, 0x5e, 0xe1, 0xf9, 0xca, 0x1e, 0x15, 0x6d, 0x05, 0x67, }; static const unsigned char xdh_wei25519_769_sharedsecret[] = { 0xe9, 0x67, 0x7b, 0x85, 0x48, 0x51, 0xc4, 0x1c, 0xc4, 0x89, 0xe0, 0x39, 0x81, 0xae, 0x78, 0x69, 0x0b, 0xe6, 0xcb, 0xf0, 0x05, 0x4e, 0xa9, 0x83, 0x47, 0x59, 0xde, 0x3e, 0x27, 0xbc, 0xf0, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_769 = { .name = "xdh_wei25519_769", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_769_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_769_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_769_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_769_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 252 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 770 for XDH, tcId is 253 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_770_peerpubkey[] = { 0x83, 0xf6, 0x7d, 0x7c, 0x92, 0xb1, 0x1c, 0x8f, 0xb0, 0x72, 0x48, 0x46, 0x42, 0xa0, 0x1f, 0x43, 0xde, 0xb0, 0x22, 0xb5, 0x4d, 0x94, 0xa4, 0x01, 0x5e, 0x39, 0x84, 0x9a, 0x2e, 0x2e, 0x95, 0x55, }; static const unsigned char xdh_wei25519_770_ourpubkey[] = { 0x40, 0xcd, 0x25, 0x3b, 0x89, 0x84, 0x59, 0x64, 0x50, 0xbc, 0x30, 0x5c, 0xaa, 0xa3, 0x7d, 0xfb, 0x4d, 0x42, 0xe1, 0x41, 0x25, 0xdc, 0xce, 0x9b, 0x74, 0xad, 0x69, 0xae, 0xae, 0x0b, 0xdf, 0x68, }; static const unsigned char xdh_wei25519_770_privkey[] = { 0xc0, 0x26, 0x09, 0xdf, 0x3d, 0x54, 0x36, 0xc1, 0x23, 0xdc, 0xd7, 0xee, 0x11, 0xf2, 0x3f, 0x1d, 0xa3, 0x21, 0x66, 0x6c, 0x09, 0xf3, 0x79, 0xd3, 0x79, 0x14, 0x20, 0x33, 0x40, 0x51, 0x08, 0x61, }; static const unsigned char xdh_wei25519_770_sharedsecret[] = { 0xf1, 0x48, 0x71, 0x6e, 0xbe, 0x72, 0x69, 0xa7, 0x07, 0x6f, 0x0c, 0xf1, 0xf2, 0x2b, 0x69, 0x78, 0xd3, 0xc7, 0xe3, 0x60, 0x7b, 0x0b, 0xcc, 0x87, 0xa8, 0xc7, 0xa8, 0x5b, 0x9f, 0xd2, 0x0c, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_770 = { .name = "xdh_wei25519_770", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_770_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_770_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_770_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_770_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 253 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 771 for XDH, tcId is 254 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_771_peerpubkey[] = { 0x20, 0xcc, 0x75, 0xd3, 0x76, 0xd8, 0x45, 0x3b, 0x9d, 0x04, 0x9c, 0x84, 0xf5, 0x8e, 0xaf, 0xcf, 0x61, 0x12, 0x6c, 0x08, 0xa0, 0x36, 0x61, 0xe7, 0x35, 0xf0, 0xa8, 0xbe, 0x22, 0x8f, 0xd4, 0x66, }; static const unsigned char xdh_wei25519_771_ourpubkey[] = { 0x23, 0xa8, 0x85, 0x8f, 0xfd, 0xe9, 0xf4, 0x59, 0xcb, 0x5c, 0x40, 0x0c, 0x9b, 0xe3, 0xdc, 0x32, 0xa3, 0x33, 0x8d, 0x7b, 0xaf, 0xec, 0xaa, 0x8f, 0xfa, 0x8a, 0xc1, 0xd9, 0xb3, 0x3c, 0xd0, 0x54, }; static const unsigned char xdh_wei25519_771_privkey[] = { 0xa0, 0xe3, 0xb7, 0x8c, 0x0f, 0x3b, 0xe2, 0xa7, 0x60, 0xb2, 0xc9, 0x16, 0xf2, 0x44, 0xdf, 0x21, 0x96, 0x24, 0xfd, 0xda, 0x2e, 0x9e, 0x31, 0xb1, 0x53, 0x28, 0xf4, 0xa7, 0x76, 0x90, 0x29, 0x6a, }; static const unsigned char xdh_wei25519_771_sharedsecret[] = { 0x1d, 0x5c, 0x12, 0x3e, 0x88, 0xe9, 0xdc, 0x7a, 0x3b, 0x16, 0xec, 0x90, 0xb6, 0x05, 0x78, 0xdf, 0xca, 0x7e, 0x11, 0xea, 0xb9, 0xb8, 0x8c, 0x6e, 0xca, 0x7b, 0xc3, 0x3d, 0x91, 0xfd, 0xe8, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_771 = { .name = "xdh_wei25519_771", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_771_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_771_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_771_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_771_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 254 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 772 for XDH, tcId is 255 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_772_peerpubkey[] = { 0xef, 0x31, 0xb4, 0x3d, 0x19, 0xc0, 0xa5, 0x43, 0x4d, 0xeb, 0x56, 0x12, 0x9c, 0x16, 0x29, 0x8a, 0x39, 0x4a, 0x70, 0x32, 0xa2, 0xe5, 0x2c, 0xb9, 0x97, 0x47, 0x6b, 0xde, 0xca, 0x32, 0x5b, 0x73, }; static const unsigned char xdh_wei25519_772_ourpubkey[] = { 0x45, 0x15, 0x02, 0x29, 0x06, 0xb4, 0xfd, 0xc4, 0x28, 0x0d, 0xc0, 0xd3, 0x0d, 0xda, 0xe3, 0x46, 0xb2, 0x42, 0x8b, 0x2f, 0xee, 0x7d, 0x7f, 0x0c, 0x83, 0x2e, 0x84, 0xef, 0x66, 0xab, 0xc8, 0x66, }; static const unsigned char xdh_wei25519_772_privkey[] = { 0x70, 0x1f, 0x13, 0x0a, 0x29, 0x05, 0x84, 0xcb, 0x28, 0xc7, 0xd6, 0x53, 0x95, 0x06, 0xa1, 0xa0, 0x54, 0xf9, 0x26, 0xa1, 0x7e, 0xf7, 0xc5, 0x68, 0xae, 0x43, 0x04, 0x7c, 0x05, 0xe1, 0x0f, 0x60, }; static const unsigned char xdh_wei25519_772_sharedsecret[] = { 0x2f, 0xc0, 0x65, 0xba, 0x8f, 0x50, 0x40, 0xa0, 0xa6, 0x59, 0xf6, 0xf7, 0x33, 0x05, 0x54, 0xbd, 0x1b, 0x9d, 0x7c, 0x89, 0x3b, 0x91, 0xe3, 0x16, 0xe0, 0xaf, 0x90, 0xc3, 0x7a, 0xf4, 0xf1, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_772 = { .name = "xdh_wei25519_772", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_772_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_772_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_772_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_772_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 255 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 773 for XDH, tcId is 256 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_773_peerpubkey[] = { 0xd8, 0xc8, 0xe2, 0xc6, 0xf3, 0x3a, 0x98, 0x52, 0x5d, 0xf3, 0x76, 0x7d, 0x1d, 0x04, 0x43, 0x0d, 0xab, 0x0b, 0xda, 0x41, 0xf1, 0xf9, 0x04, 0xc9, 0x5b, 0xc6, 0x1c, 0xc1, 0x22, 0xca, 0xca, 0x74, }; static const unsigned char xdh_wei25519_773_ourpubkey[] = { 0x03, 0x27, 0xe1, 0x8a, 0x11, 0xf7, 0xad, 0x91, 0xc4, 0x92, 0x03, 0x35, 0x75, 0x9f, 0x68, 0x39, 0x53, 0x16, 0xd4, 0x68, 0x22, 0xb7, 0xd6, 0xbc, 0xfd, 0x96, 0x32, 0xbf, 0x79, 0xf3, 0xb1, 0x49, }; static const unsigned char xdh_wei25519_773_privkey[] = { 0xd0, 0xe6, 0x7f, 0x68, 0x18, 0x3a, 0x4c, 0x1a, 0xed, 0x9c, 0x56, 0x86, 0x4b, 0x36, 0x27, 0x8b, 0xb7, 0xbb, 0x75, 0xd5, 0x7a, 0x78, 0x32, 0x1b, 0xc7, 0xc2, 0x4f, 0xf6, 0x16, 0x36, 0x60, 0x7a, }; static const unsigned char xdh_wei25519_773_sharedsecret[] = { 0xef, 0x76, 0x12, 0xc1, 0x56, 0x07, 0x8d, 0xae, 0x3a, 0x81, 0xe5, 0x0e, 0xf3, 0x39, 0x51, 0xca, 0xb6, 0x61, 0xfb, 0x07, 0x73, 0x1d, 0x8f, 0x41, 0x9b, 0xc0, 0x10, 0x5c, 0x4d, 0x6d, 0x60, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_773 = { .name = "xdh_wei25519_773", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_773_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_773_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_773_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_773_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 256 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 774 for XDH, tcId is 257 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_774_peerpubkey[] = { 0x18, 0x33, 0x61, 0x95, 0x16, 0xb8, 0x0d, 0xb0, 0xc0, 0x5b, 0x22, 0x55, 0x09, 0xe6, 0x69, 0x8d, 0xf0, 0x28, 0xd8, 0x3b, 0x66, 0xed, 0x6b, 0xac, 0x6f, 0x0f, 0x63, 0x08, 0x97, 0x0d, 0x2c, 0x7d, }; static const unsigned char xdh_wei25519_774_ourpubkey[] = { 0x05, 0xd0, 0xc3, 0xc4, 0x53, 0x8f, 0x31, 0xd2, 0xeb, 0x1c, 0xa8, 0xa6, 0x57, 0xf6, 0xd7, 0x74, 0xa7, 0x02, 0x83, 0x7d, 0xef, 0x54, 0x7f, 0xe2, 0x68, 0x2f, 0xb5, 0x63, 0xf5, 0xc9, 0xea, 0x58, }; static const unsigned char xdh_wei25519_774_privkey[] = { 0x88, 0xeb, 0x77, 0x75, 0xda, 0xcc, 0x32, 0xb0, 0x45, 0xce, 0xb3, 0x5f, 0x26, 0x1b, 0x36, 0x16, 0x31, 0x5e, 0xfa, 0x98, 0xb7, 0x80, 0xe0, 0x8c, 0x79, 0xd5, 0x44, 0xed, 0xad, 0xb5, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_774_sharedsecret[] = { 0xa3, 0xcf, 0x3d, 0x81, 0xec, 0x56, 0x89, 0x6a, 0x68, 0xfc, 0xa0, 0xda, 0x63, 0x35, 0x17, 0x1d, 0x0c, 0x62, 0x25, 0x68, 0x73, 0x8c, 0x0d, 0xb2, 0x6f, 0xe1, 0x17, 0x03, 0x37, 0x26, 0xa0, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_774 = { .name = "xdh_wei25519_774", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_774_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_774_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_774_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_774_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 257 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 775 for XDH, tcId is 258 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_775_peerpubkey[] = { 0xe2, 0xe9, 0x89, 0xaa, 0xd2, 0x39, 0x7f, 0xc3, 0x4b, 0x6c, 0xbe, 0x2d, 0xb2, 0x7d, 0x5a, 0xb6, 0x9b, 0x28, 0x04, 0x83, 0x83, 0xc9, 0x1d, 0x9e, 0x82, 0x26, 0xd5, 0x48, 0x25, 0x3f, 0xab, 0x7e, }; static const unsigned char xdh_wei25519_775_ourpubkey[] = { 0x48, 0x26, 0xf7, 0xd7, 0x26, 0x55, 0x5d, 0xb8, 0xcb, 0x97, 0x12, 0xe2, 0xed, 0x66, 0x10, 0x69, 0x46, 0xd4, 0x47, 0x72, 0xe4, 0x39, 0x16, 0x56, 0x2c, 0x90, 0x7c, 0xee, 0xee, 0x89, 0xba, 0x4b, }; static const unsigned char xdh_wei25519_775_privkey[] = { 0x70, 0x55, 0xb1, 0xc0, 0x57, 0x6e, 0x7a, 0xb6, 0xc8, 0x9f, 0xcc, 0x1c, 0xe4, 0x9e, 0x79, 0xc8, 0xc3, 0x71, 0xbf, 0x9f, 0xc2, 0xb2, 0x2b, 0x8f, 0x83, 0x96, 0xa9, 0xb6, 0x4c, 0x5a, 0xe2, 0x6d, }; static const unsigned char xdh_wei25519_775_sharedsecret[] = { 0xe7, 0xf4, 0x58, 0x23, 0xa4, 0x5b, 0x6a, 0x46, 0x19, 0x2b, 0x37, 0xd7, 0x3e, 0x86, 0x09, 0xb5, 0xbd, 0xa6, 0x8c, 0xd7, 0xcf, 0xbd, 0xcc, 0xaa, 0x49, 0x08, 0x20, 0x80, 0x99, 0x3e, 0x64, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_775 = { .name = "xdh_wei25519_775", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_775_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_775_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_775_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_775_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 258 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 776 for XDH, tcId is 259 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_776_peerpubkey[] = { 0xb9, 0xbd, 0x79, 0x36, 0x24, 0xd6, 0xa7, 0xe8, 0x08, 0x48, 0x61, 0x10, 0x05, 0x88, 0x53, 0xed, 0xb2, 0x5e, 0x13, 0x6b, 0xd4, 0xd6, 0xa7, 0x95, 0xd6, 0xd2, 0xef, 0x53, 0xb2, 0x5e, 0x38, 0x04, }; static const unsigned char xdh_wei25519_776_ourpubkey[] = { 0xd2, 0x7a, 0x5d, 0x60, 0x8c, 0x33, 0x7c, 0xe5, 0x72, 0xe6, 0x17, 0x24, 0xe9, 0xfd, 0x90, 0x92, 0x61, 0x4a, 0xed, 0x94, 0x59, 0x64, 0xf3, 0xaf, 0x68, 0x3d, 0xc2, 0xaa, 0xeb, 0xdb, 0xd6, 0x16, }; static const unsigned char xdh_wei25519_776_privkey[] = { 0x90, 0x6a, 0x9b, 0xfc, 0xfd, 0x71, 0x01, 0x4d, 0x18, 0x96, 0x76, 0x80, 0xd4, 0x50, 0x9e, 0xaa, 0x41, 0xc6, 0x66, 0x42, 0x4a, 0xf9, 0x8b, 0xf9, 0xff, 0x7f, 0xf4, 0x9e, 0xb1, 0xba, 0xba, 0x41, }; static const unsigned char xdh_wei25519_776_sharedsecret[] = { 0x7c, 0x61, 0x48, 0x13, 0x4c, 0x9e, 0x8b, 0x2b, 0xa5, 0xda, 0xec, 0xa4, 0x1e, 0x6a, 0x1f, 0x3a, 0x82, 0xd8, 0xf7, 0x5d, 0x0b, 0x29, 0x2b, 0x23, 0xc4, 0x0f, 0xe7, 0xf5, 0xce, 0x0a, 0x2b, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_776 = { .name = "xdh_wei25519_776", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_776_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_776_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_776_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_776_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 259 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 777 for XDH, tcId is 260 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_777_peerpubkey[] = { 0xe3, 0xf4, 0x44, 0xe2, 0x08, 0xda, 0x90, 0x43, 0xf3, 0xf7, 0x4c, 0x20, 0xe2, 0x8d, 0x7f, 0x40, 0x4b, 0xb6, 0x87, 0xa3, 0x46, 0x70, 0x9a, 0xbc, 0xd5, 0x55, 0x15, 0x6f, 0x88, 0x60, 0x78, 0x20, }; static const unsigned char xdh_wei25519_777_ourpubkey[] = { 0x71, 0xc4, 0xb9, 0x90, 0xb0, 0x28, 0xf9, 0xbe, 0xee, 0x92, 0xe0, 0x59, 0xe5, 0xbd, 0xa9, 0x5e, 0xb7, 0xba, 0x6c, 0xf8, 0xbf, 0x24, 0x09, 0x71, 0x73, 0x04, 0x50, 0xed, 0x5a, 0xc7, 0xf7, 0x54, }; static const unsigned char xdh_wei25519_777_privkey[] = { 0x28, 0x39, 0x2b, 0x1b, 0x03, 0x5a, 0x84, 0x65, 0xaa, 0x22, 0xaa, 0xbb, 0x57, 0x10, 0x61, 0xc6, 0xef, 0xfe, 0xed, 0x40, 0xcc, 0x25, 0x30, 0xb6, 0x28, 0xe4, 0xfd, 0x40, 0x39, 0x5a, 0xe0, 0x4a, }; static const unsigned char xdh_wei25519_777_sharedsecret[] = { 0xea, 0x5e, 0x77, 0x2b, 0xac, 0x46, 0x93, 0xce, 0x69, 0xea, 0x3a, 0xc7, 0x61, 0x01, 0x1f, 0xa7, 0x67, 0x40, 0x37, 0x65, 0x3a, 0x43, 0x3c, 0x7f, 0x05, 0x45, 0x6e, 0x72, 0x91, 0xcd, 0x3c, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_777 = { .name = "xdh_wei25519_777", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_777_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_777_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_777_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_777_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 260 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 778 for XDH, tcId is 261 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_778_peerpubkey[] = { 0x87, 0xb4, 0x3f, 0x90, 0xf7, 0x6d, 0x12, 0xfb, 0x3a, 0x46, 0x9f, 0xa8, 0x68, 0x7c, 0x27, 0xe3, 0x69, 0xd4, 0xa8, 0x2f, 0x95, 0xcf, 0x95, 0xe8, 0xdc, 0x39, 0x70, 0xde, 0x8f, 0x86, 0xd9, 0x2b, }; static const unsigned char xdh_wei25519_778_ourpubkey[] = { 0x3c, 0x30, 0xc4, 0x19, 0x7c, 0xf7, 0xca, 0xae, 0x4b, 0x2b, 0x50, 0xc7, 0x56, 0x95, 0xcc, 0x0d, 0x66, 0x72, 0x85, 0x62, 0xf8, 0x75, 0x0d, 0x17, 0xe9, 0x13, 0x98, 0x8d, 0x38, 0xfc, 0xa1, 0x1b, }; static const unsigned char xdh_wei25519_778_privkey[] = { 0x78, 0xcb, 0xb3, 0x52, 0x04, 0xcc, 0x88, 0x67, 0x6c, 0x14, 0xe0, 0xff, 0x18, 0x17, 0x13, 0x92, 0xe9, 0x98, 0x41, 0x1b, 0x23, 0xd9, 0x05, 0xd4, 0xc4, 0xdc, 0xea, 0xb7, 0x05, 0x11, 0xf4, 0x42, }; static const unsigned char xdh_wei25519_778_sharedsecret[] = { 0x81, 0xc3, 0x95, 0xae, 0xd5, 0xcc, 0x5f, 0x5e, 0x2a, 0x20, 0x6a, 0x8a, 0x4c, 0xac, 0xec, 0xd5, 0x01, 0xdf, 0x5b, 0x81, 0xe4, 0x94, 0x33, 0x83, 0x5a, 0xd8, 0xa3, 0x77, 0x9e, 0xdf, 0xfb, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_778 = { .name = "xdh_wei25519_778", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_778_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_778_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_778_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_778_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 261 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 779 for XDH, tcId is 262 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_779_peerpubkey[] = { 0x86, 0x44, 0x1e, 0xa0, 0x6c, 0x5c, 0xd2, 0xa3, 0x4c, 0x6b, 0x51, 0x26, 0x1e, 0x93, 0xa2, 0xf3, 0x0e, 0xa7, 0xdb, 0x0f, 0x74, 0xe1, 0x4c, 0x42, 0xf0, 0xfc, 0x44, 0x3c, 0x67, 0x35, 0x97, 0x3c, }; static const unsigned char xdh_wei25519_779_ourpubkey[] = { 0x3b, 0x5e, 0xa0, 0x88, 0x0d, 0x82, 0x76, 0x49, 0x24, 0x94, 0xd4, 0xdd, 0xd4, 0x13, 0x70, 0x09, 0x72, 0x5b, 0x38, 0xe6, 0xb6, 0x7a, 0x1c, 0x28, 0xc3, 0xad, 0x95, 0xdb, 0x0f, 0x00, 0x31, 0x6a, }; static const unsigned char xdh_wei25519_779_privkey[] = { 0xa8, 0x22, 0x5b, 0x49, 0xef, 0x7b, 0x73, 0x30, 0xe3, 0xde, 0x78, 0x7c, 0xbc, 0x40, 0x47, 0x96, 0x44, 0xdb, 0x7a, 0xb1, 0x26, 0x37, 0x02, 0x95, 0xc9, 0x41, 0x89, 0x67, 0x34, 0x30, 0xd7, 0x45, }; static const unsigned char xdh_wei25519_779_sharedsecret[] = { 0x51, 0x3e, 0xba, 0x58, 0x70, 0xdc, 0x51, 0x87, 0xe2, 0x55, 0x2f, 0xe3, 0xba, 0x82, 0x92, 0xb5, 0x16, 0xd2, 0xaf, 0x9e, 0xcb, 0x9a, 0x9b, 0xdc, 0x51, 0xea, 0xc2, 0xce, 0x2d, 0xe4, 0x01, 0x12, }; static const wycheproof_xdh_test xdh_wei25519_779 = { .name = "xdh_wei25519_779", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_779_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_779_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_779_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_779_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 262 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 780 for XDH, tcId is 263 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_780_peerpubkey[] = { 0x46, 0x24, 0xaa, 0x4a, 0xe9, 0xd1, 0x27, 0x25, 0xbf, 0x92, 0xb8, 0x5f, 0x93, 0xe3, 0xe8, 0xce, 0xa1, 0x6b, 0x7b, 0xd8, 0x3f, 0xda, 0x0e, 0xb1, 0x8f, 0xab, 0x2d, 0xbe, 0x0e, 0x8b, 0xf7, 0x42, }; static const unsigned char xdh_wei25519_780_ourpubkey[] = { 0x4d, 0xbd, 0x84, 0x4b, 0x64, 0xff, 0x24, 0x93, 0x6f, 0xbe, 0xdd, 0x5c, 0x4d, 0x38, 0xa4, 0x3f, 0x5d, 0x2b, 0x5c, 0x3d, 0xd9, 0xe4, 0xdf, 0x9c, 0x3b, 0x64, 0x22, 0xd3, 0x5a, 0xbc, 0x4e, 0x24, }; static const unsigned char xdh_wei25519_780_privkey[] = { 0x08, 0x41, 0xe1, 0xa5, 0xc7, 0x42, 0x0b, 0x94, 0xb6, 0xcc, 0x69, 0x91, 0x31, 0x6e, 0xbd, 0xd6, 0x08, 0x62, 0x63, 0x39, 0xc0, 0x9d, 0x0f, 0x67, 0xb2, 0x40, 0x88, 0x58, 0x8b, 0x9d, 0x0d, 0x49, }; static const unsigned char xdh_wei25519_780_sharedsecret[] = { 0x98, 0x3b, 0x7e, 0x23, 0x6f, 0xfa, 0xdd, 0xb4, 0xb7, 0x59, 0xb7, 0x35, 0x3f, 0xe8, 0x78, 0x46, 0xf5, 0x9f, 0xb6, 0xf2, 0x8a, 0x3e, 0xd6, 0x5c, 0x25, 0x61, 0x76, 0xb6, 0x60, 0x9b, 0x7c, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_780 = { .name = "xdh_wei25519_780", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_780_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_780_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_780_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_780_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 263 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 781 for XDH, tcId is 264 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_781_peerpubkey[] = { 0xa6, 0x25, 0xa5, 0xb7, 0xa0, 0x4c, 0xea, 0x46, 0x2d, 0x12, 0x3b, 0x48, 0x5c, 0x39, 0xea, 0x44, 0xa8, 0x07, 0x9a, 0xa2, 0x23, 0xc5, 0x9e, 0x9c, 0xa9, 0x7a, 0xbc, 0xd3, 0x0b, 0x50, 0x0e, 0x4b, }; static const unsigned char xdh_wei25519_781_ourpubkey[] = { 0x3a, 0x6b, 0xa9, 0xb6, 0x32, 0xca, 0xd2, 0x76, 0x4e, 0x1c, 0x59, 0x4c, 0x92, 0x37, 0x22, 0xb5, 0xfb, 0x86, 0xcc, 0x34, 0x46, 0xc8, 0xf1, 0xd7, 0x7f, 0x0e, 0x3f, 0x1a, 0xf3, 0x7f, 0x30, 0x1e, }; static const unsigned char xdh_wei25519_781_privkey[] = { 0x08, 0xec, 0xf7, 0x6e, 0x31, 0xa2, 0x30, 0x39, 0xea, 0x8a, 0x15, 0xee, 0x47, 0x4b, 0x62, 0x51, 0xa9, 0xd7, 0x25, 0xbf, 0xf1, 0xa5, 0x75, 0x1e, 0xb5, 0xec, 0xde, 0x9d, 0x7d, 0x4e, 0x2f, 0x49, }; static const unsigned char xdh_wei25519_781_sharedsecret[] = { 0xc9, 0x41, 0x36, 0x9b, 0x08, 0x5c, 0x74, 0x65, 0xd5, 0x0d, 0x23, 0xce, 0xaf, 0x67, 0x17, 0xab, 0x06, 0xe2, 0x46, 0x38, 0xf2, 0x17, 0xa7, 0xb8, 0x05, 0x5c, 0xe8, 0xeb, 0xd3, 0xca, 0x12, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_781 = { .name = "xdh_wei25519_781", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_781_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_781_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_781_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_781_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 264 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 782 for XDH, tcId is 265 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_782_peerpubkey[] = { 0x8a, 0x5f, 0x20, 0x63, 0xf2, 0x59, 0xf3, 0x31, 0x7a, 0xe3, 0xe0, 0xb4, 0x59, 0xf8, 0x2c, 0x46, 0x77, 0x66, 0x6e, 0x49, 0xa2, 0xeb, 0x9b, 0xf0, 0x36, 0x9a, 0xee, 0x66, 0x36, 0x31, 0x26, 0x5b, }; static const unsigned char xdh_wei25519_782_ourpubkey[] = { 0x71, 0x3a, 0x87, 0x61, 0xca, 0x9c, 0x66, 0xce, 0xb3, 0x38, 0x83, 0xad, 0x09, 0xb4, 0x2a, 0xa6, 0x76, 0xf0, 0xe8, 0xb0, 0x15, 0x4c, 0xa6, 0x57, 0xe1, 0x3d, 0x07, 0x1c, 0x26, 0x9d, 0x3a, 0x14, }; static const unsigned char xdh_wei25519_782_privkey[] = { 0x60, 0x38, 0xfb, 0x0a, 0x83, 0x0d, 0x10, 0x01, 0xca, 0x8e, 0xa7, 0x4a, 0x61, 0x3e, 0xa9, 0x8f, 0x6a, 0xb8, 0x51, 0x26, 0x44, 0xe5, 0x5e, 0x8d, 0x45, 0xa2, 0x90, 0x71, 0xbd, 0x4b, 0xef, 0x45, }; static const unsigned char xdh_wei25519_782_sharedsecret[] = { 0xa3, 0xf7, 0xe1, 0x69, 0xdb, 0x44, 0xd0, 0xd1, 0x79, 0xc2, 0x42, 0xe6, 0x63, 0x47, 0x36, 0x4a, 0xb9, 0x27, 0x44, 0xdc, 0x6a, 0xd8, 0x0e, 0x47, 0x75, 0xae, 0xf7, 0xf4, 0xff, 0x9d, 0x5f, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_782 = { .name = "xdh_wei25519_782", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_782_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_782_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_782_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_782_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 265 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 783 for XDH, tcId is 266 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_783_peerpubkey[] = { 0x54, 0xcf, 0xb6, 0xad, 0x0d, 0x03, 0xe3, 0x11, 0x5a, 0xca, 0xfe, 0xe1, 0x26, 0x06, 0x39, 0x7f, 0x2b, 0xb4, 0x6a, 0x8c, 0x5f, 0x32, 0x6a, 0x25, 0x5c, 0x49, 0x41, 0x18, 0xae, 0xad, 0x3b, 0x62, }; static const unsigned char xdh_wei25519_783_ourpubkey[] = { 0x3c, 0x0a, 0xe0, 0xd4, 0x6f, 0x79, 0x28, 0xed, 0x8b, 0xaf, 0x4a, 0xc9, 0xe8, 0xaf, 0xab, 0x4e, 0x60, 0x4b, 0x9e, 0xc1, 0xd9, 0xa8, 0x4b, 0xfe, 0x0f, 0xa2, 0xf8, 0x68, 0xda, 0x88, 0xc6, 0x67, }; static const unsigned char xdh_wei25519_783_privkey[] = { 0xc0, 0x4c, 0xf1, 0x29, 0xf0, 0xb3, 0x33, 0x32, 0xe2, 0x65, 0x4f, 0x8e, 0x45, 0x22, 0x5c, 0x04, 0x2d, 0x7f, 0xa6, 0xcb, 0xc7, 0x93, 0xc8, 0x8b, 0xd4, 0xc7, 0x31, 0x98, 0x52, 0x89, 0xb0, 0x45, }; static const unsigned char xdh_wei25519_783_sharedsecret[] = { 0x40, 0x1a, 0xab, 0xfb, 0xb7, 0x3f, 0xe6, 0x69, 0x4c, 0x44, 0x6e, 0xcf, 0xff, 0xb4, 0x30, 0x06, 0x42, 0x7a, 0x9d, 0x47, 0x56, 0xe0, 0x49, 0xa1, 0xff, 0xc7, 0x95, 0x78, 0xd6, 0x2f, 0x16, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_783 = { .name = "xdh_wei25519_783", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_783_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_783_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_783_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_783_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 266 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 784 for XDH, tcId is 267 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_784_peerpubkey[] = { 0x0e, 0xe3, 0xbe, 0xe8, 0xcb, 0x3a, 0x0a, 0xfc, 0xec, 0x22, 0xfa, 0x22, 0x33, 0x70, 0x6e, 0x8e, 0xc2, 0x9c, 0xcf, 0x1a, 0xf2, 0x12, 0xc0, 0xa6, 0x74, 0x74, 0x5e, 0xbb, 0xa3, 0x4f, 0x9d, 0x08, }; static const unsigned char xdh_wei25519_784_ourpubkey[] = { 0x12, 0xdb, 0x50, 0xd6, 0x37, 0x4b, 0xa7, 0xcb, 0x7a, 0x1f, 0x7e, 0xee, 0xc3, 0xf9, 0xed, 0xa1, 0x33, 0x51, 0x53, 0x93, 0xb0, 0x43, 0x00, 0x82, 0x61, 0xfa, 0x8e, 0xe1, 0x86, 0xfd, 0xbe, 0x46, }; static const unsigned char xdh_wei25519_784_privkey[] = { 0x38, 0x06, 0xb0, 0x36, 0xc9, 0x2d, 0x7b, 0xc0, 0x77, 0x19, 0x98, 0xd2, 0x4d, 0xbd, 0xa2, 0x94, 0x5b, 0x60, 0x1d, 0x42, 0x44, 0x9b, 0xd3, 0xec, 0x4b, 0xbf, 0x37, 0x57, 0xd0, 0x1b, 0x89, 0x4d, }; static const unsigned char xdh_wei25519_784_sharedsecret[] = { 0x20, 0x32, 0x2d, 0xd0, 0x24, 0xfb, 0x5a, 0x40, 0xf3, 0x27, 0xcf, 0x7c, 0x00, 0xda, 0x20, 0x37, 0x34, 0xc2, 0xa2, 0x79, 0xb9, 0x66, 0x6a, 0x9f, 0xf7, 0xd8, 0x52, 0x7c, 0x92, 0x7b, 0x67, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_784 = { .name = "xdh_wei25519_784", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_784_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_784_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_784_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_784_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 267 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 785 for XDH, tcId is 268 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_785_peerpubkey[] = { 0x79, 0x7e, 0xc7, 0x51, 0x2a, 0xfb, 0xf0, 0xad, 0x91, 0x8d, 0x0e, 0x49, 0x47, 0x90, 0x3b, 0xe9, 0x52, 0x34, 0xf3, 0xab, 0xf3, 0x67, 0x50, 0xa8, 0xf8, 0x54, 0x88, 0x8d, 0x11, 0x7b, 0x77, 0x4e, }; static const unsigned char xdh_wei25519_785_ourpubkey[] = { 0x86, 0xc0, 0xfa, 0x67, 0xfd, 0xec, 0xfd, 0x7c, 0xf2, 0x75, 0x57, 0x44, 0xb8, 0xdb, 0x59, 0x9f, 0xd4, 0xfa, 0x24, 0x9f, 0xc1, 0xa2, 0xdf, 0x21, 0x85, 0xb7, 0xec, 0x8f, 0x08, 0x07, 0x5b, 0x36, }; static const unsigned char xdh_wei25519_785_privkey[] = { 0x38, 0x0d, 0x90, 0x56, 0xb5, 0xa2, 0xf4, 0xb3, 0xdf, 0xfb, 0x30, 0xe6, 0xce, 0xb7, 0x22, 0xac, 0x46, 0x84, 0x24, 0x5f, 0x1b, 0xef, 0xaf, 0xb5, 0x66, 0x1b, 0xc8, 0xc7, 0xa9, 0xad, 0x4c, 0x43, }; static const unsigned char xdh_wei25519_785_sharedsecret[] = { 0x46, 0x15, 0x2d, 0x59, 0xc2, 0xd2, 0xf3, 0xec, 0xf0, 0x3c, 0xe6, 0x52, 0xd2, 0xb6, 0x97, 0x8d, 0x40, 0x1d, 0x5e, 0xde, 0x45, 0x70, 0xa6, 0xc9, 0x11, 0x77, 0x1b, 0xdc, 0xfb, 0x37, 0xcd, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_785 = { .name = "xdh_wei25519_785", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_785_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_785_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_785_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_785_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 268 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 786 for XDH, tcId is 269 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_786_peerpubkey[] = { 0xd5, 0x70, 0xc7, 0x81, 0x0f, 0x69, 0xe5, 0x02, 0xb3, 0x55, 0x25, 0x3a, 0xfa, 0x7c, 0x66, 0x7b, 0xfa, 0x50, 0x60, 0xd9, 0x0d, 0xc8, 0x6e, 0x35, 0x8a, 0xb4, 0x45, 0xf6, 0x38, 0x1e, 0x41, 0x5d, }; static const unsigned char xdh_wei25519_786_ourpubkey[] = { 0xfb, 0x6e, 0x63, 0x11, 0x3a, 0x1e, 0x33, 0x53, 0xef, 0xf9, 0xb4, 0x93, 0x15, 0x0b, 0xcd, 0x7c, 0x73, 0x03, 0x62, 0x52, 0xca, 0x40, 0xb2, 0xf7, 0xfe, 0x9d, 0xd4, 0xb7, 0x63, 0x99, 0x62, 0x11, }; static const unsigned char xdh_wei25519_786_privkey[] = { 0x38, 0x49, 0x29, 0xa4, 0x2c, 0x8d, 0x8d, 0xf1, 0x46, 0xdb, 0x95, 0x08, 0xe2, 0xf2, 0x1a, 0x4e, 0x8c, 0xd4, 0xd9, 0x9c, 0x1b, 0x13, 0x38, 0xdf, 0x17, 0xa4, 0x57, 0xe8, 0x8a, 0xfb, 0x00, 0x43, }; static const unsigned char xdh_wei25519_786_sharedsecret[] = { 0x37, 0x56, 0x7f, 0x7e, 0xc0, 0x44, 0x9c, 0x7b, 0x82, 0x3c, 0xf7, 0xb0, 0xe2, 0x19, 0xe9, 0xdd, 0x88, 0x0e, 0x56, 0xa1, 0x46, 0x4d, 0x04, 0x17, 0xa9, 0xe6, 0x7e, 0xff, 0x42, 0x33, 0x28, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_786 = { .name = "xdh_wei25519_786", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_786_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_786_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_786_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_786_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 269 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 787 for XDH, tcId is 270 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_787_peerpubkey[] = { 0x2c, 0x61, 0x1c, 0xb9, 0x44, 0x48, 0xf1, 0xc7, 0x82, 0x24, 0x25, 0xa4, 0xcf, 0x53, 0x56, 0x23, 0x6b, 0x90, 0xa5, 0x55, 0xb1, 0xed, 0x47, 0x47, 0x82, 0x0b, 0xa7, 0xf7, 0x39, 0xc8, 0xf5, 0x7d, }; static const unsigned char xdh_wei25519_787_ourpubkey[] = { 0x48, 0xc8, 0x3e, 0xab, 0x3b, 0xd6, 0x13, 0xfd, 0x19, 0x5b, 0xfc, 0x03, 0xfa, 0xde, 0xf4, 0xcf, 0x3a, 0x11, 0x63, 0x0c, 0x4f, 0x6a, 0xea, 0x29, 0xdc, 0xad, 0x49, 0xbd, 0x40, 0xb9, 0xd8, 0x1b, }; static const unsigned char xdh_wei25519_787_privkey[] = { 0x48, 0xa9, 0x86, 0x82, 0x5b, 0x26, 0x80, 0xe2, 0xf2, 0x54, 0x7b, 0xa7, 0x5a, 0x95, 0x99, 0xb0, 0x4e, 0xd5, 0x7f, 0x8e, 0xd1, 0x8d, 0x98, 0xe7, 0x09, 0x9c, 0x54, 0x4e, 0xfb, 0xdf, 0x28, 0x4b, }; static const unsigned char xdh_wei25519_787_sharedsecret[] = { 0xfb, 0xf6, 0x58, 0x7e, 0xc1, 0x81, 0x11, 0x6c, 0xf1, 0xac, 0xe7, 0xdc, 0xd5, 0x48, 0x02, 0x9d, 0x69, 0xc1, 0x30, 0xe5, 0x0f, 0xcf, 0x6a, 0xd5, 0xdf, 0xcd, 0x25, 0xc2, 0x3e, 0xe9, 0xf9, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_787 = { .name = "xdh_wei25519_787", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_787_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_787_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_787_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_787_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 270 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 788 for XDH, tcId is 271 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_788_peerpubkey[] = { 0xe5, 0x59, 0xc4, 0x17, 0xda, 0x7f, 0xd5, 0x85, 0x13, 0x52, 0xf5, 0x08, 0xb9, 0x00, 0x31, 0xd4, 0x9b, 0x5d, 0x2d, 0x0a, 0xac, 0x88, 0xa9, 0xc8, 0xb5, 0xfb, 0x6e, 0x80, 0x16, 0x5a, 0xc1, 0x0b, }; static const unsigned char xdh_wei25519_788_ourpubkey[] = { 0x12, 0x9f, 0x5f, 0xdc, 0xb9, 0xc4, 0x9b, 0x32, 0xdf, 0x07, 0x2f, 0xa6, 0x05, 0x75, 0x14, 0x2e, 0x23, 0xef, 0x17, 0x22, 0x61, 0x80, 0x52, 0x8c, 0xf5, 0xd4, 0x78, 0x2c, 0x80, 0xf9, 0x2f, 0x03, }; static const unsigned char xdh_wei25519_788_privkey[] = { 0x98, 0x45, 0x2a, 0xd7, 0xdf, 0x4e, 0x26, 0xbc, 0x4b, 0x3d, 0x40, 0x3f, 0x9e, 0xbf, 0x72, 0xbb, 0x2d, 0x7b, 0x6b, 0x7d, 0x58, 0x60, 0xdb, 0xf6, 0xfb, 0x9a, 0x4f, 0x78, 0xdc, 0x02, 0x70, 0x4a, }; static const unsigned char xdh_wei25519_788_sharedsecret[] = { 0xc7, 0xc6, 0xf6, 0xd7, 0xce, 0x1e, 0x4f, 0x54, 0xc7, 0x27, 0xe5, 0x90, 0x06, 0x86, 0xc3, 0x4e, 0x6a, 0x69, 0x53, 0x25, 0x4b, 0xd4, 0x70, 0xbb, 0xbf, 0x0c, 0x7c, 0x18, 0xbb, 0xdd, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_788 = { .name = "xdh_wei25519_788", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_788_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_788_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_788_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_788_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 271 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 789 for XDH, tcId is 272 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_789_peerpubkey[] = { 0x74, 0x6d, 0x97, 0xe7, 0x77, 0x42, 0x92, 0xa3, 0xd7, 0x03, 0xf6, 0x04, 0xe7, 0x9d, 0x87, 0x64, 0xc9, 0x9a, 0x6a, 0x2f, 0xe2, 0x80, 0xea, 0xa9, 0x81, 0x11, 0x15, 0xf5, 0xe0, 0x38, 0xf2, 0x1a, }; static const unsigned char xdh_wei25519_789_ourpubkey[] = { 0x98, 0xd5, 0xa6, 0xef, 0x15, 0xb3, 0xbe, 0x30, 0x3d, 0x22, 0x9d, 0xe7, 0x14, 0xae, 0xdc, 0xe5, 0x32, 0xc4, 0x50, 0x50, 0xd9, 0xbb, 0xc0, 0x31, 0xed, 0x78, 0x65, 0x79, 0x46, 0x7f, 0x42, 0x1a, }; static const unsigned char xdh_wei25519_789_privkey[] = { 0xa8, 0xdb, 0xc9, 0xbe, 0x50, 0x34, 0xed, 0x7f, 0xe7, 0xf4, 0x69, 0x26, 0x4f, 0x21, 0x35, 0xe9, 0xc6, 0x7c, 0xd3, 0x0f, 0x52, 0x55, 0x70, 0xd2, 0xd8, 0x41, 0xe4, 0xbd, 0xea, 0xc5, 0x23, 0x49, }; static const unsigned char xdh_wei25519_789_sharedsecret[] = { 0xcf, 0x7d, 0x2a, 0x66, 0xea, 0x4d, 0xfe, 0xd9, 0x44, 0x69, 0xb2, 0xd3, 0x43, 0x53, 0x3f, 0xf3, 0x02, 0xa5, 0x76, 0xf8, 0x40, 0x2e, 0xd2, 0x18, 0x79, 0x04, 0x43, 0x70, 0x38, 0xe5, 0x46, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_789 = { .name = "xdh_wei25519_789", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_789_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_789_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_789_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_789_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 272 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 790 for XDH, tcId is 273 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_790_peerpubkey[] = { 0x1f, 0x35, 0x4a, 0xa8, 0xff, 0xc4, 0xea, 0xe2, 0xb4, 0x0d, 0xad, 0x2e, 0xbf, 0x83, 0x0d, 0xb3, 0xfe, 0xb0, 0x7e, 0x2a, 0x1a, 0x2d, 0xa3, 0x9e, 0x55, 0xdf, 0x87, 0xc8, 0xc6, 0x13, 0xde, 0x1d, }; static const unsigned char xdh_wei25519_790_ourpubkey[] = { 0x19, 0xd1, 0x20, 0xa0, 0xf8, 0xf2, 0x81, 0x93, 0x59, 0x8c, 0xc4, 0xcf, 0xea, 0x4c, 0xb3, 0xbd, 0x0d, 0x9a, 0x56, 0x1f, 0xd6, 0x80, 0x83, 0xfd, 0x86, 0x27, 0xb6, 0x51, 0x67, 0x7d, 0xa6, 0x61, }; static const unsigned char xdh_wei25519_790_privkey[] = { 0xf8, 0xd2, 0x68, 0x78, 0xdf, 0xf2, 0x5c, 0xed, 0x02, 0xd3, 0xb2, 0x7c, 0xe7, 0x40, 0x02, 0x69, 0x5b, 0xb8, 0x79, 0xb3, 0xc4, 0x32, 0x89, 0x30, 0x93, 0x43, 0x15, 0xec, 0xae, 0x84, 0x2b, 0x47, }; static const unsigned char xdh_wei25519_790_sharedsecret[] = { 0xb2, 0x04, 0xd3, 0xbb, 0xcb, 0xdc, 0x62, 0x4f, 0x9f, 0x1a, 0x74, 0x3f, 0xa3, 0xda, 0xa8, 0xf4, 0xc8, 0x78, 0x5e, 0xd0, 0x88, 0xd3, 0x7d, 0x08, 0xcd, 0x13, 0xc6, 0x01, 0x17, 0x0a, 0x46, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_790 = { .name = "xdh_wei25519_790", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_790_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_790_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_790_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_790_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 273 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 791 for XDH, tcId is 274 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_791_peerpubkey[] = { 0x9c, 0x3f, 0x00, 0x23, 0xe1, 0xa4, 0x83, 0x25, 0x86, 0xaf, 0x24, 0x83, 0xbb, 0xec, 0x64, 0xce, 0x9f, 0x06, 0xf3, 0xea, 0x80, 0x6d, 0x40, 0x19, 0xa5, 0xe4, 0xab, 0xb1, 0xb5, 0x62, 0x70, 0x29, }; static const unsigned char xdh_wei25519_791_ourpubkey[] = { 0x43, 0xc1, 0x42, 0x53, 0xc5, 0xc3, 0xec, 0xc8, 0xfd, 0xc5, 0x31, 0x17, 0xb4, 0xb8, 0xba, 0x7c, 0xe5, 0xa4, 0xba, 0x43, 0xb4, 0x70, 0x02, 0x2c, 0x2f, 0x8a, 0x9b, 0xe2, 0x66, 0x6a, 0x90, 0x50, }; static const unsigned char xdh_wei25519_791_privkey[] = { 0xd0, 0xf5, 0xe9, 0xc4, 0x3c, 0x95, 0xb1, 0xff, 0xc3, 0x6f, 0x83, 0x2b, 0x94, 0x36, 0x01, 0xd5, 0xe1, 0x76, 0x47, 0xf7, 0xd7, 0x8e, 0x2e, 0x77, 0x10, 0xac, 0xe6, 0x3f, 0xf2, 0x74, 0xd4, 0x47, }; static const unsigned char xdh_wei25519_791_sharedsecret[] = { 0xb9, 0xf2, 0x14, 0x65, 0x61, 0x5f, 0x39, 0xdd, 0xdc, 0xc3, 0x75, 0x20, 0xce, 0x9b, 0x95, 0x6f, 0x7d, 0xe9, 0x88, 0x3a, 0xc9, 0x3a, 0x87, 0x0d, 0x74, 0xe3, 0x88, 0xb8, 0xe1, 0x77, 0x54, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_791 = { .name = "xdh_wei25519_791", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_791_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_791_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_791_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_791_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 274 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 792 for XDH, tcId is 275 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_792_peerpubkey[] = { 0xd0, 0x56, 0x56, 0xaa, 0x01, 0x4d, 0x47, 0x60, 0x22, 0xdf, 0xc5, 0x5e, 0x8d, 0x3b, 0x48, 0x84, 0xed, 0x0b, 0xdf, 0x85, 0x20, 0x9b, 0xe8, 0xb5, 0x53, 0x51, 0x39, 0x4d, 0x52, 0xbe, 0x68, 0x4b, }; static const unsigned char xdh_wei25519_792_ourpubkey[] = { 0x15, 0xb9, 0xa3, 0xed, 0x03, 0x28, 0x3a, 0x88, 0x34, 0x6e, 0x0a, 0xfb, 0x89, 0xbd, 0x05, 0x4c, 0x1b, 0x57, 0xd3, 0x05, 0xde, 0x27, 0x90, 0x3d, 0x22, 0x98, 0x15, 0xeb, 0x18, 0x74, 0x1a, 0x6a, }; static const unsigned char xdh_wei25519_792_privkey[] = { 0x70, 0x06, 0x79, 0xe8, 0xc2, 0x4d, 0xf8, 0x28, 0xf2, 0xe5, 0x21, 0x2a, 0x32, 0x63, 0xd5, 0xe9, 0x3e, 0xa6, 0x16, 0x79, 0x98, 0x82, 0x98, 0xba, 0xb3, 0xb4, 0x80, 0xf4, 0x6f, 0x96, 0x1a, 0x48, }; static const unsigned char xdh_wei25519_792_sharedsecret[] = { 0x20, 0xf1, 0xfc, 0x61, 0x38, 0x74, 0x49, 0x5f, 0x20, 0x56, 0x2c, 0x10, 0xb7, 0xa8, 0xbe, 0x47, 0xbf, 0xc1, 0x2c, 0x16, 0x8d, 0x82, 0x9d, 0x63, 0x21, 0xaa, 0x2d, 0xe1, 0x70, 0x60, 0xe4, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_792 = { .name = "xdh_wei25519_792", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_792_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_792_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_792_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_792_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 275 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 793 for XDH, tcId is 276 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_793_peerpubkey[] = { 0xc4, 0xa1, 0x9b, 0x86, 0x86, 0xe1, 0x8c, 0x29, 0x35, 0x9a, 0xa5, 0x48, 0x42, 0x7f, 0x06, 0xa3, 0x68, 0xd5, 0x5a, 0x87, 0x37, 0x48, 0x3d, 0x48, 0x93, 0x52, 0x3a, 0xda, 0xc6, 0x79, 0x5a, 0x4c, }; static const unsigned char xdh_wei25519_793_ourpubkey[] = { 0xb6, 0x58, 0xe1, 0xc2, 0x2d, 0xee, 0xee, 0x30, 0x8c, 0x42, 0xec, 0x18, 0x1c, 0xc4, 0x8a, 0xd0, 0xd2, 0x8a, 0x4a, 0x00, 0x62, 0x3c, 0x6e, 0xab, 0x71, 0xef, 0x2b, 0x5d, 0xe7, 0xea, 0xfd, 0x41, }; static const unsigned char xdh_wei25519_793_privkey[] = { 0xd0, 0xd0, 0x77, 0xc9, 0x46, 0x1f, 0x74, 0x7e, 0x56, 0x60, 0xbe, 0x85, 0xcc, 0x62, 0x04, 0x28, 0xb4, 0xce, 0xfe, 0x80, 0x5d, 0xe0, 0xfd, 0x25, 0x4a, 0xda, 0xa4, 0x65, 0xea, 0x5e, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_793_sharedsecret[] = { 0x65, 0x2b, 0x18, 0xff, 0xd4, 0x1c, 0xfb, 0x7d, 0x1f, 0x0b, 0x6d, 0xc7, 0x9b, 0xaa, 0x3b, 0x2a, 0x39, 0x2e, 0xf1, 0x61, 0x7f, 0x5c, 0xf6, 0x25, 0x9b, 0x5b, 0x4f, 0xf0, 0x65, 0x91, 0x6a, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_793 = { .name = "xdh_wei25519_793", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_793_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_793_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_793_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_793_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 276 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 794 for XDH, tcId is 277 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_794_peerpubkey[] = { 0x49, 0x89, 0xde, 0x79, 0x85, 0x3f, 0xf3, 0x5b, 0xe8, 0xc9, 0xf9, 0x2f, 0xc9, 0x46, 0x74, 0xfe, 0xef, 0x38, 0xa0, 0xe6, 0x57, 0x88, 0x47, 0x1c, 0x52, 0x1f, 0x8e, 0x25, 0x9a, 0xdf, 0x01, 0x5d, }; static const unsigned char xdh_wei25519_794_ourpubkey[] = { 0x86, 0xce, 0x86, 0x93, 0x28, 0x71, 0xe7, 0x5b, 0x90, 0x0d, 0xb3, 0x8c, 0x02, 0x2b, 0x0f, 0x1b, 0x65, 0x27, 0x98, 0x3a, 0xa0, 0x23, 0xed, 0xce, 0x9c, 0x2c, 0xdb, 0x47, 0x5f, 0x35, 0x81, 0x75, }; static const unsigned char xdh_wei25519_794_privkey[] = { 0x00, 0x71, 0x1a, 0xc0, 0x8e, 0xf8, 0x8c, 0x3d, 0x43, 0xa3, 0xcb, 0xda, 0x67, 0xb6, 0xfe, 0x5f, 0x34, 0xf5, 0x47, 0x23, 0xdb, 0xe6, 0xd7, 0x25, 0xc8, 0xa3, 0x56, 0x90, 0x70, 0xab, 0x9a, 0x4e, }; static const unsigned char xdh_wei25519_794_sharedsecret[] = { 0x67, 0x98, 0x25, 0xc2, 0x59, 0x39, 0x2d, 0x86, 0xf8, 0xed, 0xb1, 0x53, 0x28, 0xd4, 0xfa, 0xf5, 0x23, 0x00, 0x77, 0x9d, 0x97, 0x9a, 0x50, 0x3a, 0x76, 0xe2, 0x7b, 0xe3, 0xd7, 0xa8, 0x5e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_794 = { .name = "xdh_wei25519_794", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_794_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_794_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_794_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_794_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 277 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 795 for XDH, tcId is 278 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_795_peerpubkey[] = { 0xa9, 0x81, 0x48, 0x3c, 0xb0, 0xea, 0x43, 0x85, 0xff, 0xbb, 0x55, 0x28, 0x26, 0xc3, 0xdd, 0x11, 0x0d, 0x4a, 0xe8, 0x9f, 0xf5, 0x2e, 0xd0, 0xcd, 0x60, 0x18, 0xf9, 0x9d, 0x33, 0x87, 0x98, 0x7b, }; static const unsigned char xdh_wei25519_795_ourpubkey[] = { 0xa0, 0xc1, 0x25, 0x2f, 0x38, 0x7e, 0xb9, 0x0b, 0x9a, 0xa0, 0xd3, 0x56, 0xb0, 0x34, 0xed, 0x6c, 0x45, 0x26, 0x79, 0x80, 0x3f, 0xb6, 0xf0, 0xca, 0xc1, 0xee, 0x07, 0xc0, 0x37, 0x53, 0x56, 0x61, }; static const unsigned char xdh_wei25519_795_privkey[] = { 0x98, 0x9a, 0x75, 0xb4, 0x04, 0x51, 0x13, 0x9e, 0xc3, 0x6c, 0xa6, 0xaa, 0x04, 0x37, 0x65, 0xc6, 0x1a, 0x18, 0xbe, 0x32, 0x3a, 0x59, 0x87, 0xfc, 0xb0, 0x25, 0xc2, 0xda, 0xd8, 0xd4, 0xbd, 0x40, }; static const unsigned char xdh_wei25519_795_sharedsecret[] = { 0x9c, 0xad, 0xc1, 0x4a, 0xc1, 0x53, 0xfa, 0x38, 0x3e, 0xf6, 0x6d, 0x18, 0x33, 0xf5, 0x89, 0x10, 0x0d, 0xff, 0x90, 0x52, 0x32, 0x72, 0xe3, 0x2b, 0x06, 0xe2, 0xc6, 0xf1, 0xf4, 0x42, 0x40, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_795 = { .name = "xdh_wei25519_795", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_795_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_795_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_795_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_795_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 278 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 796 for XDH, tcId is 279 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_796_peerpubkey[] = { 0x1d, 0xf3, 0xdf, 0xda, 0xb7, 0x4f, 0xf3, 0x81, 0x77, 0xda, 0xc2, 0x94, 0xb2, 0xda, 0x2f, 0x49, 0xa3, 0x48, 0xbc, 0x3b, 0x3b, 0xc6, 0xce, 0x93, 0x12, 0xbe, 0xa5, 0xef, 0x3e, 0xcd, 0xd3, 0x0b, }; static const unsigned char xdh_wei25519_796_ourpubkey[] = { 0x91, 0xb3, 0x6b, 0xcc, 0x5c, 0xc5, 0xf5, 0x5d, 0xa6, 0x38, 0xe4, 0x3b, 0xa4, 0x25, 0x33, 0xb3, 0xf4, 0x45, 0x58, 0x51, 0x2a, 0xf5, 0x9e, 0x80, 0xfb, 0x00, 0x92, 0xad, 0x4e, 0x38, 0x5f, 0x19, }; static const unsigned char xdh_wei25519_796_privkey[] = { 0x90, 0xc3, 0xcf, 0xed, 0xd9, 0x19, 0xa2, 0xcc, 0xd5, 0x1f, 0xb4, 0x55, 0x64, 0x9e, 0x3a, 0xd2, 0xda, 0x1e, 0xf0, 0xff, 0x61, 0x9b, 0x59, 0xa7, 0xf9, 0xc5, 0x5a, 0x68, 0xa8, 0x21, 0x96, 0x45, }; static const unsigned char xdh_wei25519_796_sharedsecret[] = { 0xbc, 0xc9, 0x5f, 0xb4, 0x89, 0x0e, 0xd3, 0x11, 0xf3, 0xfb, 0x4f, 0x44, 0xc2, 0xb6, 0x08, 0x66, 0xcd, 0xdd, 0xec, 0x97, 0xdb, 0x82, 0x0a, 0x7f, 0x79, 0xf4, 0x75, 0x33, 0x7e, 0x16, 0x28, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_796 = { .name = "xdh_wei25519_796", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_796_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_796_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_796_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_796_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 279 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 797 for XDH, tcId is 280 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_797_peerpubkey[] = { 0xfc, 0x6b, 0x71, 0x8b, 0xa8, 0xb4, 0x7d, 0x24, 0xb1, 0xcf, 0xd6, 0xb5, 0xd0, 0xdd, 0x8b, 0x20, 0xfd, 0x92, 0x09, 0x60, 0xfa, 0xbc, 0x30, 0x2d, 0xbe, 0x4f, 0x93, 0xbd, 0x2a, 0x06, 0xe9, 0x33, }; static const unsigned char xdh_wei25519_797_ourpubkey[] = { 0x24, 0xb3, 0x2c, 0xb7, 0xbe, 0xc1, 0xbb, 0xb3, 0xa4, 0xd1, 0x2f, 0xc7, 0x57, 0x16, 0xb8, 0x5e, 0x1b, 0xed, 0x55, 0xde, 0x36, 0x94, 0x6b, 0xed, 0x24, 0xcb, 0xd0, 0x44, 0x2e, 0x97, 0xa9, 0x11, }; static const unsigned char xdh_wei25519_797_privkey[] = { 0xe8, 0xfe, 0xf5, 0xc9, 0xb6, 0x0f, 0x84, 0x98, 0x4e, 0x88, 0x36, 0xd5, 0x35, 0xac, 0xb3, 0x72, 0x09, 0x6b, 0xa8, 0x15, 0x98, 0x24, 0xa0, 0xb4, 0x9a, 0x17, 0xec, 0xcd, 0xa8, 0x43, 0xbd, 0x41, }; static const unsigned char xdh_wei25519_797_sharedsecret[] = { 0x06, 0xf1, 0xb4, 0x95, 0xb0, 0x4a, 0x00, 0x10, 0x84, 0x5c, 0x9d, 0x39, 0xb1, 0x3b, 0xf2, 0x78, 0x4a, 0xde, 0x86, 0x0d, 0x96, 0x32, 0xc8, 0x84, 0x76, 0x18, 0xc0, 0xb3, 0x42, 0x97, 0xc2, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_797 = { .name = "xdh_wei25519_797", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_797_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_797_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_797_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_797_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 280 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 798 for XDH, tcId is 281 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_798_peerpubkey[] = { 0xb2, 0x79, 0xb6, 0xc0, 0x65, 0xf9, 0x5c, 0x70, 0x40, 0xf1, 0x48, 0xbc, 0xb4, 0xa3, 0xd3, 0x10, 0xe3, 0x4b, 0xdb, 0x00, 0x59, 0x31, 0xa8, 0x79, 0xbe, 0x46, 0x95, 0x73, 0xde, 0xed, 0xd0, 0x41, }; static const unsigned char xdh_wei25519_798_ourpubkey[] = { 0x39, 0xc2, 0x27, 0x67, 0x7b, 0x94, 0x68, 0x75, 0x8f, 0x75, 0x3a, 0xde, 0x48, 0x6e, 0x62, 0x71, 0x6f, 0x4b, 0xc4, 0xd5, 0x43, 0xd6, 0x7b, 0xd7, 0x66, 0xc0, 0x96, 0x31, 0x7c, 0x62, 0xdc, 0x01, }; static const unsigned char xdh_wei25519_798_privkey[] = { 0xc0, 0xe0, 0x5b, 0xde, 0x77, 0x27, 0xdb, 0x4e, 0x35, 0x2b, 0x5e, 0x7f, 0x03, 0x53, 0x27, 0xb4, 0xd8, 0x6a, 0x42, 0xd5, 0x13, 0xca, 0x11, 0x6e, 0x22, 0xd6, 0x4a, 0x4e, 0xde, 0x56, 0x43, 0x4a, }; static const unsigned char xdh_wei25519_798_sharedsecret[] = { 0xcc, 0xe7, 0xbb, 0x64, 0x4d, 0xf9, 0x45, 0x01, 0x42, 0x1d, 0xb4, 0x9d, 0x15, 0xe8, 0x21, 0xc7, 0xb0, 0xaa, 0xab, 0xec, 0xdf, 0x88, 0x37, 0xab, 0x98, 0x9b, 0x1f, 0x23, 0xba, 0xc0, 0x8f, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_798 = { .name = "xdh_wei25519_798", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_798_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_798_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_798_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_798_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 281 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 799 for XDH, tcId is 282 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_799_peerpubkey[] = { 0x98, 0xe2, 0xcd, 0x4c, 0x10, 0x55, 0x4e, 0x41, 0xb0, 0xa3, 0xe4, 0x10, 0x82, 0xc8, 0xb6, 0xb6, 0x1b, 0x55, 0x44, 0x7d, 0x26, 0xc0, 0xaa, 0x97, 0xf9, 0xa0, 0x6b, 0xae, 0xeb, 0x54, 0xb5, 0x5b, }; static const unsigned char xdh_wei25519_799_ourpubkey[] = { 0xa5, 0xe6, 0x23, 0xee, 0xc6, 0xdc, 0xa9, 0x04, 0x2c, 0xc1, 0xfd, 0x85, 0xb4, 0x34, 0x1e, 0x28, 0x00, 0x76, 0xd4, 0x3a, 0x42, 0xea, 0x3c, 0xe5, 0xf9, 0x38, 0x3a, 0xbf, 0x1e, 0x17, 0x74, 0x1d, }; static const unsigned char xdh_wei25519_799_privkey[] = { 0xd8, 0x73, 0x08, 0xbf, 0x75, 0x35, 0x73, 0xf5, 0x96, 0xac, 0x83, 0x30, 0xb2, 0x04, 0x01, 0x4b, 0x21, 0x52, 0xdb, 0xdf, 0xc9, 0x88, 0x1a, 0x0d, 0x99, 0x75, 0x05, 0x85, 0x82, 0xbd, 0xf6, 0x46, }; static const unsigned char xdh_wei25519_799_sharedsecret[] = { 0x71, 0xfd, 0xd3, 0x40, 0x5c, 0x30, 0x80, 0x57, 0x01, 0xae, 0x4d, 0xfa, 0xd9, 0x8c, 0x49, 0x3a, 0xec, 0xfc, 0xf2, 0xe3, 0xb5, 0x63, 0xe7, 0x06, 0x83, 0x73, 0xc1, 0xb1, 0x91, 0x37, 0xc2, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_799 = { .name = "xdh_wei25519_799", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_799_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_799_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_799_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_799_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 282 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 800 for XDH, tcId is 283 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_800_peerpubkey[] = { 0x87, 0x28, 0x97, 0xf1, 0xbd, 0x18, 0x85, 0xda, 0x08, 0xb9, 0xd0, 0x3e, 0x46, 0x81, 0x10, 0x44, 0xfb, 0xb0, 0x41, 0x86, 0xba, 0x30, 0xc8, 0x06, 0xf3, 0x8b, 0x94, 0xeb, 0xdc, 0x27, 0x18, 0x6a, }; static const unsigned char xdh_wei25519_800_ourpubkey[] = { 0xee, 0x7b, 0x0c, 0x7b, 0x0f, 0xf4, 0xb7, 0x1c, 0x7c, 0x9d, 0xec, 0x07, 0xd2, 0xfd, 0xbd, 0x45, 0xfb, 0xd1, 0x71, 0x8b, 0x73, 0x59, 0x32, 0x16, 0xa2, 0x72, 0xef, 0xa5, 0xd9, 0xcb, 0x5e, 0x76, }; static const unsigned char xdh_wei25519_800_privkey[] = { 0xd8, 0x00, 0x59, 0xa8, 0xa3, 0x87, 0xe1, 0x6f, 0x6d, 0xed, 0x6e, 0x7e, 0x98, 0x0e, 0x80, 0x6d, 0x1f, 0x78, 0xb4, 0x70, 0xbb, 0x61, 0x10, 0x3d, 0x0c, 0xa7, 0x06, 0x23, 0xcc, 0xee, 0x8b, 0x4f, }; static const unsigned char xdh_wei25519_800_sharedsecret[] = { 0xbf, 0x28, 0x0a, 0xee, 0xcb, 0x74, 0xab, 0x34, 0xe1, 0x31, 0x0a, 0xa6, 0xfe, 0x8d, 0xc9, 0x72, 0xf9, 0x4d, 0xc4, 0x0c, 0x7f, 0x88, 0xb7, 0x21, 0x37, 0xcc, 0xfe, 0x34, 0xed, 0x34, 0x3c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_800 = { .name = "xdh_wei25519_800", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_800_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_800_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_800_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_800_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 283 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 801 for XDH, tcId is 284 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_801_peerpubkey[] = { 0xc0, 0x8f, 0x72, 0x76, 0x0d, 0x9c, 0xb4, 0xa5, 0x42, 0xaa, 0xd6, 0xe2, 0xaf, 0x77, 0x79, 0x20, 0xc4, 0x45, 0x63, 0xbd, 0x90, 0x35, 0x61, 0x68, 0xc3, 0x60, 0x8c, 0x6b, 0x9a, 0xf2, 0xef, 0x0f, }; static const unsigned char xdh_wei25519_801_ourpubkey[] = { 0x1f, 0x2d, 0x2b, 0x64, 0x42, 0x6c, 0x97, 0xcb, 0xbf, 0x67, 0xd3, 0x50, 0x1f, 0x23, 0x37, 0x8f, 0xcc, 0x4e, 0xdd, 0x9f, 0x1b, 0x0a, 0x70, 0x21, 0x9c, 0x00, 0x62, 0xf1, 0x20, 0x5e, 0xf4, 0x47, }; static const unsigned char xdh_wei25519_801_privkey[] = { 0xb0, 0xa4, 0xfe, 0x63, 0x51, 0x51, 0x69, 0xbd, 0x82, 0x63, 0x9b, 0x51, 0x5f, 0xf7, 0xe5, 0xc4, 0xac, 0x85, 0xbb, 0xa0, 0xa5, 0x3b, 0xba, 0xca, 0x80, 0x47, 0x7e, 0xb3, 0xb4, 0x25, 0x0d, 0x44, }; static const unsigned char xdh_wei25519_801_sharedsecret[] = { 0x72, 0x56, 0x6a, 0x91, 0xcc, 0xd2, 0xbc, 0xf3, 0x8c, 0xf6, 0x39, 0xe4, 0xa5, 0xfc, 0xb2, 0x96, 0xf0, 0xb6, 0x7d, 0xe1, 0x92, 0xc6, 0x09, 0x12, 0x42, 0xa6, 0x2f, 0xae, 0x46, 0x7f, 0xb6, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_801 = { .name = "xdh_wei25519_801", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_801_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_801_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_801_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_801_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 284 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 802 for XDH, tcId is 285 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_802_peerpubkey[] = { 0x4f, 0x03, 0x84, 0x9c, 0x24, 0xd5, 0x84, 0x53, 0x4d, 0x74, 0x30, 0x22, 0x20, 0xcf, 0xdc, 0x90, 0xe1, 0xbc, 0x36, 0x0b, 0xb5, 0xe2, 0x97, 0xc0, 0xfd, 0x0f, 0xd5, 0xf8, 0xd7, 0x99, 0xe4, 0x16, }; static const unsigned char xdh_wei25519_802_ourpubkey[] = { 0xa0, 0x33, 0x6e, 0x78, 0x9a, 0x32, 0x23, 0x35, 0x4f, 0x00, 0x7e, 0x2d, 0xd5, 0xbc, 0x43, 0xb5, 0x4d, 0xeb, 0x58, 0xa3, 0x70, 0x61, 0x39, 0x06, 0xd6, 0xa4, 0xfd, 0x72, 0x81, 0x55, 0xd5, 0x50, }; static const unsigned char xdh_wei25519_802_privkey[] = { 0x98, 0x42, 0x56, 0xb1, 0x2e, 0xf1, 0x54, 0xff, 0x6c, 0x2e, 0x1d, 0x03, 0x08, 0x26, 0x16, 0x4c, 0xba, 0x36, 0x14, 0xe3, 0xdf, 0x76, 0x88, 0xd8, 0x2b, 0x59, 0xe1, 0x62, 0x01, 0xc9, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_802_sharedsecret[] = { 0x24, 0xac, 0xb4, 0xaf, 0xa6, 0x39, 0x19, 0x62, 0x1d, 0xf7, 0x95, 0x20, 0x6c, 0x39, 0x29, 0xb5, 0x99, 0xec, 0x9d, 0x25, 0x36, 0x93, 0x89, 0x5d, 0x51, 0xa0, 0x55, 0x50, 0x72, 0xe8, 0x9a, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_802 = { .name = "xdh_wei25519_802", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_802_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_802_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_802_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_802_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 285 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 803 for XDH, tcId is 286 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_803_peerpubkey[] = { 0x49, 0x59, 0x77, 0x1a, 0x93, 0x1e, 0x24, 0x2d, 0x57, 0x13, 0xd5, 0xcb, 0x76, 0xf3, 0x33, 0x10, 0xc6, 0xa2, 0x83, 0xdf, 0x16, 0x64, 0x56, 0x04, 0x28, 0x95, 0x53, 0x80, 0x9c, 0xda, 0x65, 0x18, }; static const unsigned char xdh_wei25519_803_ourpubkey[] = { 0xeb, 0xec, 0x64, 0x46, 0xeb, 0x56, 0xa1, 0x99, 0x96, 0xfc, 0x79, 0x73, 0x7a, 0x88, 0x6b, 0x71, 0x28, 0xf3, 0xaf, 0x57, 0x61, 0x09, 0xf5, 0xc6, 0x69, 0x56, 0xe8, 0x83, 0xb2, 0x4a, 0x51, 0x37, }; static const unsigned char xdh_wei25519_803_privkey[] = { 0x68, 0x47, 0x14, 0x1d, 0x5d, 0x43, 0x77, 0xaf, 0x96, 0xa2, 0xa6, 0x47, 0xc6, 0x42, 0xee, 0x81, 0x60, 0x0f, 0xe4, 0x8d, 0x34, 0x67, 0xe3, 0xa7, 0x0f, 0x3e, 0xe3, 0x12, 0xbb, 0x62, 0x17, 0x42, }; static const unsigned char xdh_wei25519_803_sharedsecret[] = { 0x5b, 0xa2, 0x11, 0x2a, 0x41, 0xb5, 0xbb, 0x38, 0x1f, 0x20, 0x24, 0x46, 0xfa, 0x9f, 0x23, 0xc5, 0x4d, 0x2d, 0xe1, 0x49, 0xf9, 0xad, 0x23, 0x37, 0x53, 0x41, 0x72, 0x63, 0x84, 0x0e, 0xa4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_803 = { .name = "xdh_wei25519_803", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_803_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_803_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_803_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_803_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 286 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 804 for XDH, tcId is 287 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_804_peerpubkey[] = { 0xf6, 0xfe, 0x69, 0x0c, 0xf5, 0x47, 0x04, 0x96, 0x35, 0xbb, 0x3a, 0x77, 0x85, 0x53, 0x7b, 0x43, 0x79, 0xc9, 0xee, 0x06, 0xb4, 0x61, 0x20, 0x49, 0x3b, 0x8b, 0xdb, 0x15, 0x2e, 0x09, 0xc8, 0x1d, }; static const unsigned char xdh_wei25519_804_ourpubkey[] = { 0xf1, 0xe0, 0xa0, 0x2a, 0x90, 0x5a, 0x7e, 0x50, 0xf4, 0xc2, 0x7a, 0xa8, 0xed, 0x9e, 0x92, 0x4d, 0xdd, 0xf1, 0x05, 0x7a, 0x01, 0x75, 0x87, 0xc6, 0x2f, 0x02, 0x8f, 0xb5, 0xb1, 0x78, 0x65, 0x2c, }; static const unsigned char xdh_wei25519_804_privkey[] = { 0xe8, 0x5f, 0x11, 0x64, 0xe2, 0xab, 0x6f, 0xaf, 0x62, 0x66, 0x7c, 0x74, 0xb0, 0x3c, 0xe5, 0x29, 0xb4, 0x9a, 0x0e, 0x20, 0x41, 0xb1, 0xac, 0x0f, 0xa2, 0x42, 0xe5, 0x22, 0xd2, 0xb7, 0x69, 0x4c, }; static const unsigned char xdh_wei25519_804_sharedsecret[] = { 0xa8, 0x7c, 0x9f, 0xdf, 0x40, 0xc4, 0x09, 0xb9, 0xed, 0xab, 0x48, 0x1b, 0x2c, 0xc6, 0x96, 0x87, 0xee, 0x1a, 0xb9, 0x2e, 0x34, 0x0c, 0x3d, 0xb0, 0x10, 0x7d, 0x40, 0xb5, 0xde, 0x6e, 0x7a, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_804 = { .name = "xdh_wei25519_804", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_804_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_804_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_804_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_804_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 287 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 805 for XDH, tcId is 288 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_805_peerpubkey[] = { 0xb4, 0x68, 0x68, 0x1a, 0x12, 0x75, 0x85, 0x0c, 0x11, 0xd3, 0x7e, 0xc7, 0x36, 0xaf, 0x93, 0x9a, 0x75, 0xa7, 0x09, 0x85, 0x14, 0xe0, 0x4c, 0xfc, 0x1c, 0x6c, 0xa7, 0x82, 0x39, 0xa8, 0x84, 0x26, }; static const unsigned char xdh_wei25519_805_ourpubkey[] = { 0x5e, 0x83, 0x9e, 0x9a, 0x8f, 0x64, 0xc2, 0x8c, 0x97, 0x92, 0xd4, 0xc4, 0x4a, 0xa8, 0x29, 0x39, 0x26, 0x4a, 0x10, 0x98, 0x07, 0xef, 0xb2, 0xfd, 0xfa, 0x03, 0x17, 0x91, 0xa8, 0xeb, 0x7f, 0x1d, }; static const unsigned char xdh_wei25519_805_privkey[] = { 0x28, 0x1e, 0x1b, 0xbf, 0xa7, 0x11, 0xde, 0x69, 0x92, 0x1a, 0x64, 0xc5, 0xd2, 0x18, 0x3c, 0x33, 0x8d, 0xb5, 0x50, 0x46, 0x06, 0xce, 0x2b, 0x6b, 0x4c, 0xe1, 0xcd, 0xd5, 0x4b, 0x41, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_805_sharedsecret[] = { 0x3b, 0xe9, 0x87, 0x98, 0xf0, 0x1e, 0x71, 0x63, 0x9f, 0x3c, 0xb8, 0xfd, 0x4a, 0x17, 0xbf, 0x27, 0x3e, 0x10, 0xc6, 0x7f, 0x89, 0x74, 0xdd, 0x98, 0x02, 0xee, 0xd5, 0x9d, 0x84, 0x7d, 0x40, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_805 = { .name = "xdh_wei25519_805", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_805_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_805_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_805_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_805_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 288 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 806 for XDH, tcId is 289 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_806_peerpubkey[] = { 0x2d, 0x71, 0xe8, 0x45, 0x70, 0x99, 0xe3, 0xf4, 0x45, 0xf9, 0xe2, 0xa1, 0x4f, 0x18, 0xb0, 0xf5, 0x91, 0x4b, 0xb3, 0x5f, 0x48, 0x2f, 0x9c, 0x06, 0x9b, 0x64, 0xbf, 0x63, 0x71, 0x0d, 0x42, 0x28, }; static const unsigned char xdh_wei25519_806_ourpubkey[] = { 0x1d, 0xde, 0x73, 0xa3, 0x3e, 0x3f, 0x07, 0x5a, 0x87, 0xbf, 0x4c, 0x2f, 0x8c, 0xea, 0xea, 0xbd, 0x33, 0xa4, 0x72, 0x80, 0xca, 0x6e, 0x5e, 0xa1, 0xee, 0x48, 0x02, 0xbf, 0x33, 0x5f, 0x6b, 0x6e, }; static const unsigned char xdh_wei25519_806_privkey[] = { 0x20, 0xaa, 0xcf, 0x19, 0x02, 0xb3, 0xcd, 0x60, 0x9d, 0x7e, 0xe1, 0x5c, 0xc9, 0x64, 0x53, 0xcc, 0x22, 0xe2, 0x89, 0x9d, 0x7d, 0x17, 0x85, 0x26, 0x80, 0xf2, 0xa7, 0x28, 0xba, 0xc6, 0xdc, 0x4a, }; static const unsigned char xdh_wei25519_806_sharedsecret[] = { 0x33, 0x8c, 0x99, 0x17, 0xdb, 0xf1, 0x1a, 0x0c, 0xab, 0xe8, 0xad, 0x4a, 0x65, 0x95, 0x92, 0x29, 0xbc, 0x00, 0xf9, 0x9c, 0x21, 0x1e, 0x75, 0x2b, 0x20, 0xb8, 0xb4, 0x9b, 0x87, 0x75, 0x6d, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_806 = { .name = "xdh_wei25519_806", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_806_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_806_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_806_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_806_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 289 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 807 for XDH, tcId is 290 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_807_peerpubkey[] = { 0xfa, 0x8f, 0x24, 0xe9, 0x44, 0xde, 0x5d, 0x00, 0x37, 0x46, 0xd4, 0x63, 0x03, 0x50, 0xc0, 0xf4, 0xf6, 0x17, 0x5a, 0x32, 0x69, 0xc1, 0x91, 0x84, 0x82, 0x41, 0x05, 0x39, 0x8f, 0xbd, 0xd3, 0x29, }; static const unsigned char xdh_wei25519_807_ourpubkey[] = { 0xbb, 0x79, 0x3d, 0xc1, 0x81, 0x52, 0x45, 0x0a, 0x2a, 0xa9, 0x8e, 0x8e, 0xbf, 0x60, 0x82, 0x22, 0x11, 0x11, 0xb3, 0x6e, 0x1c, 0x44, 0xf4, 0xfd, 0xbc, 0xc2, 0x62, 0x66, 0x4e, 0xdf, 0x97, 0x7b, }; static const unsigned char xdh_wei25519_807_privkey[] = { 0x00, 0x9e, 0x8e, 0x9f, 0xa9, 0x93, 0x80, 0x4d, 0xce, 0x94, 0xce, 0xcb, 0x96, 0xb1, 0xde, 0x25, 0x68, 0x24, 0x5a, 0x97, 0x05, 0x9e, 0x4d, 0x7a, 0xe1, 0x16, 0xec, 0xdb, 0x1b, 0xad, 0xd1, 0x41, }; static const unsigned char xdh_wei25519_807_sharedsecret[] = { 0x56, 0xe2, 0xbf, 0xc7, 0xf6, 0xab, 0x7d, 0xa8, 0xfc, 0x73, 0x4a, 0xfc, 0x51, 0x5e, 0x57, 0xd0, 0x79, 0x4d, 0x00, 0x24, 0x34, 0xf9, 0xbc, 0x8e, 0x18, 0xbd, 0x0b, 0x72, 0xc0, 0xdf, 0x3c, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_807 = { .name = "xdh_wei25519_807", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_807_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_807_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_807_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_807_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 290 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 808 for XDH, tcId is 291 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_808_peerpubkey[] = { 0xae, 0x4e, 0x37, 0xef, 0x53, 0xc7, 0x9e, 0x25, 0xe8, 0x27, 0x5a, 0x60, 0xf2, 0xfc, 0x1d, 0xfc, 0x27, 0x7e, 0xbc, 0x5d, 0x3b, 0x88, 0x42, 0x8c, 0x64, 0x32, 0xc3, 0xf9, 0x84, 0x94, 0x21, 0x2c, }; static const unsigned char xdh_wei25519_808_ourpubkey[] = { 0x66, 0x0a, 0x84, 0xde, 0x72, 0xdd, 0xa9, 0xed, 0xb3, 0x53, 0x7b, 0x52, 0x2e, 0x00, 0xd9, 0xbf, 0xf5, 0x6c, 0x26, 0x6c, 0xb3, 0x18, 0x2e, 0x19, 0x74, 0x3b, 0xac, 0x9b, 0x24, 0x51, 0x77, 0x4e, }; static const unsigned char xdh_wei25519_808_privkey[] = { 0xf0, 0x15, 0x74, 0x64, 0x3f, 0x23, 0x1f, 0xfa, 0xc0, 0x55, 0xbd, 0x23, 0x5e, 0xe7, 0x4d, 0xd4, 0x16, 0xb9, 0x4c, 0x8e, 0x55, 0xa2, 0xab, 0x2b, 0x4d, 0x13, 0xa8, 0xb7, 0x88, 0xd9, 0x01, 0x48, }; static const unsigned char xdh_wei25519_808_sharedsecret[] = { 0x17, 0xfa, 0x12, 0x76, 0xd9, 0xfd, 0x50, 0x25, 0x17, 0x27, 0x36, 0x44, 0x9a, 0x1c, 0x0a, 0xe3, 0x35, 0x12, 0xe5, 0x03, 0x70, 0x14, 0xa1, 0x8d, 0xb5, 0x90, 0x3e, 0x47, 0xbb, 0x3b, 0xc9, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_808 = { .name = "xdh_wei25519_808", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_808_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_808_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_808_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_808_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 291 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 809 for XDH, tcId is 292 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_809_peerpubkey[] = { 0x95, 0xe5, 0x6a, 0x83, 0x07, 0x92, 0x47, 0x8f, 0x7c, 0x42, 0x50, 0x40, 0x43, 0xa9, 0xca, 0xb8, 0xe2, 0xee, 0xbf, 0xf5, 0xfd, 0x90, 0x98, 0x37, 0x09, 0xe2, 0x9e, 0x03, 0xc0, 0xa4, 0x1b, 0x64, }; static const unsigned char xdh_wei25519_809_ourpubkey[] = { 0xe6, 0x75, 0xc8, 0xb7, 0xeb, 0xed, 0xd5, 0x8a, 0xad, 0x9a, 0x71, 0x0d, 0xc8, 0x1a, 0x63, 0x81, 0x48, 0x21, 0xaa, 0xd4, 0x75, 0x31, 0x97, 0x79, 0x50, 0x4b, 0x25, 0x9b, 0xc7, 0x66, 0xcc, 0x5e, }; static const unsigned char xdh_wei25519_809_privkey[] = { 0x38, 0x00, 0xa4, 0x26, 0x59, 0x95, 0x42, 0x81, 0xca, 0x26, 0x6d, 0x7c, 0xf1, 0xea, 0x9d, 0xb6, 0xd7, 0x98, 0x91, 0xa4, 0x06, 0xa7, 0x0f, 0x9e, 0x84, 0xc3, 0x57, 0x0a, 0x6a, 0x12, 0xd2, 0x4e, }; static const unsigned char xdh_wei25519_809_sharedsecret[] = { 0x16, 0x7a, 0x3b, 0x2f, 0xdc, 0xe9, 0x41, 0x3c, 0x89, 0xee, 0x89, 0x2d, 0xaf, 0x9f, 0x83, 0x9a, 0x2e, 0xea, 0x80, 0xea, 0x80, 0x44, 0x92, 0x40, 0x35, 0xdb, 0x17, 0x24, 0xa5, 0xb0, 0x21, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_809 = { .name = "xdh_wei25519_809", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_809_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_809_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_809_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_809_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 292 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 810 for XDH, tcId is 293 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_810_peerpubkey[] = { 0x5f, 0x16, 0xaa, 0x7c, 0xca, 0xbf, 0x4d, 0xa6, 0xb6, 0x86, 0xbd, 0x28, 0xc7, 0x46, 0x0e, 0x10, 0x6b, 0xb1, 0xb9, 0x7a, 0x82, 0x37, 0x92, 0x52, 0x77, 0x65, 0xc2, 0x9a, 0x9a, 0xd8, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_810_ourpubkey[] = { 0xcc, 0x52, 0xac, 0x55, 0x78, 0xb5, 0x0c, 0xe3, 0x4d, 0x92, 0x45, 0xdf, 0x5a, 0xab, 0xc1, 0xf3, 0x59, 0xca, 0x1e, 0x4d, 0xa6, 0x53, 0x71, 0x88, 0xf4, 0xed, 0xb3, 0x18, 0x8b, 0xbb, 0x60, 0x78, }; static const unsigned char xdh_wei25519_810_privkey[] = { 0x70, 0xa8, 0x26, 0xb1, 0x86, 0x96, 0x22, 0x18, 0xdb, 0xaf, 0xca, 0x11, 0x33, 0x19, 0xda, 0xef, 0xb5, 0xdd, 0xf3, 0xcf, 0x14, 0xe1, 0x5f, 0xe3, 0xfa, 0xad, 0xc4, 0xc0, 0xa2, 0xe4, 0x66, 0x48, }; static const unsigned char xdh_wei25519_810_sharedsecret[] = { 0x30, 0xa4, 0xba, 0x79, 0x3f, 0x2d, 0xff, 0xe1, 0x70, 0x0c, 0x61, 0x42, 0x8b, 0x4d, 0x84, 0xb5, 0xfc, 0xd0, 0xaa, 0x99, 0xa2, 0x3b, 0x90, 0x3f, 0x84, 0xa4, 0x8e, 0xca, 0x5c, 0xc9, 0xfb, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_810 = { .name = "xdh_wei25519_810", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_810_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_810_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_810_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_810_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 293 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 811 for XDH, tcId is 294 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_811_peerpubkey[] = { 0x47, 0xfb, 0x78, 0x11, 0x18, 0x05, 0xa1, 0x19, 0x82, 0xa3, 0xd6, 0xc5, 0xd8, 0x3e, 0x8e, 0x18, 0x9e, 0x7f, 0xcc, 0x46, 0x2c, 0x9a, 0xbf, 0x80, 0x5d, 0x36, 0x25, 0xbe, 0x7a, 0x6e, 0xac, 0x11, }; static const unsigned char xdh_wei25519_811_ourpubkey[] = { 0xc9, 0x9c, 0x92, 0x5b, 0x94, 0x62, 0x47, 0x25, 0xd5, 0x3a, 0x82, 0x0a, 0xeb, 0x2d, 0xec, 0x64, 0xeb, 0x04, 0x69, 0xf0, 0x9e, 0x29, 0xca, 0xb4, 0xe4, 0x7f, 0x86, 0xeb, 0x63, 0x07, 0xc6, 0x2f, }; static const unsigned char xdh_wei25519_811_privkey[] = { 0xa8, 0x5a, 0x5e, 0xda, 0x0a, 0x26, 0x95, 0x00, 0xb3, 0xab, 0x0b, 0x58, 0x49, 0x5f, 0xc2, 0x54, 0xc2, 0x69, 0x10, 0x28, 0xac, 0x53, 0x34, 0x94, 0xb5, 0xf8, 0x6d, 0x44, 0xe9, 0xdc, 0x65, 0x4c, }; static const unsigned char xdh_wei25519_811_sharedsecret[] = { 0x2b, 0xf9, 0xab, 0x75, 0x0b, 0xd5, 0x8f, 0xf6, 0xf8, 0x77, 0xb7, 0x83, 0xed, 0xa4, 0x5a, 0x71, 0xa6, 0x5c, 0xc9, 0xb7, 0xc0, 0x37, 0xfc, 0xfe, 0xf4, 0xcb, 0x5f, 0x4c, 0x88, 0x42, 0xf5, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_811 = { .name = "xdh_wei25519_811", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_811_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_811_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_811_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_811_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 294 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 812 for XDH, tcId is 295 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_812_peerpubkey[] = { 0x03, 0xb8, 0xca, 0x5e, 0xfd, 0x17, 0x77, 0xd6, 0xd6, 0x25, 0xa9, 0x45, 0xdb, 0x52, 0xb8, 0x1f, 0x11, 0x21, 0x4d, 0xaf, 0x01, 0x5d, 0x09, 0xfd, 0xc9, 0xdf, 0x7d, 0x47, 0xb9, 0x85, 0x0e, 0x31, }; static const unsigned char xdh_wei25519_812_ourpubkey[] = { 0x0c, 0xc9, 0x4c, 0xe1, 0xf9, 0xdc, 0xe6, 0x9d, 0xe5, 0xff, 0x2a, 0xd0, 0x1a, 0x38, 0x5e, 0x61, 0x3c, 0x18, 0xc5, 0x19, 0x48, 0xfc, 0xf8, 0xef, 0xf1, 0x96, 0x7d, 0x25, 0xb8, 0x45, 0x7c, 0x2f, }; static const unsigned char xdh_wei25519_812_privkey[] = { 0x18, 0x3f, 0x28, 0xec, 0x86, 0x76, 0x24, 0xef, 0x5e, 0xca, 0x48, 0x27, 0xed, 0x07, 0x14, 0xa5, 0x52, 0x5e, 0xf2, 0x1d, 0x5e, 0x35, 0x03, 0x8b, 0x24, 0xd3, 0x07, 0xa3, 0x39, 0x1a, 0x28, 0x46, }; static const unsigned char xdh_wei25519_812_sharedsecret[] = { 0x35, 0xe9, 0x28, 0x92, 0x34, 0xbd, 0x5e, 0x53, 0x1d, 0xa6, 0x5d, 0x16, 0x1a, 0x06, 0x5a, 0x14, 0xf7, 0x85, 0x07, 0x60, 0x88, 0xd7, 0x41, 0xc9, 0xa2, 0xd8, 0x86, 0xef, 0xd7, 0xd1, 0x79, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_812 = { .name = "xdh_wei25519_812", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_812_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_812_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_812_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_812_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 295 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 813 for XDH, tcId is 296 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_813_peerpubkey[] = { 0x4e, 0xca, 0x5f, 0x87, 0x31, 0xb0, 0xfa, 0x0c, 0x10, 0x6a, 0xcf, 0x57, 0x8b, 0x83, 0xa3, 0x50, 0xfa, 0x81, 0x73, 0xa2, 0x90, 0xf1, 0xeb, 0xa8, 0x03, 0x95, 0x6d, 0xe3, 0x4e, 0xeb, 0x76, 0x71, }; static const unsigned char xdh_wei25519_813_ourpubkey[] = { 0x83, 0xbd, 0x3c, 0x1e, 0xae, 0x8c, 0x64, 0x99, 0xf8, 0x46, 0x75, 0x3e, 0x98, 0x74, 0x05, 0x9a, 0x17, 0x82, 0xa0, 0xb1, 0xd5, 0x1f, 0xbf, 0x4a, 0x7e, 0xb3, 0xc6, 0x35, 0x5f, 0x7f, 0x27, 0x65, }; static const unsigned char xdh_wei25519_813_privkey[] = { 0x88, 0x8c, 0x64, 0x44, 0xff, 0x5e, 0xb4, 0x82, 0xb2, 0xb1, 0x0b, 0xd4, 0xe8, 0xa0, 0x1b, 0xdc, 0xcb, 0x65, 0xf3, 0x29, 0x34, 0xd8, 0x02, 0x61, 0x06, 0xf1, 0x6a, 0x91, 0x34, 0x9f, 0x48, 0x4c, }; static const unsigned char xdh_wei25519_813_sharedsecret[] = { 0x83, 0x3a, 0xfb, 0x86, 0x70, 0x54, 0xb8, 0xb9, 0xac, 0x70, 0xd6, 0x01, 0x3c, 0x16, 0x3e, 0x8b, 0x76, 0x76, 0xfd, 0x45, 0xae, 0x49, 0xa1, 0x32, 0x5f, 0x3a, 0xcb, 0x75, 0x97, 0x5d, 0x8c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_813 = { .name = "xdh_wei25519_813", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_813_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_813_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_813_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_813_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 296 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 814 for XDH, tcId is 297 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_814_peerpubkey[] = { 0xa5, 0x56, 0x2b, 0x4b, 0xa8, 0x6b, 0x46, 0x4d, 0xff, 0x4c, 0x2c, 0xfa, 0xe8, 0x5b, 0x38, 0x4b, 0xe2, 0x11, 0x77, 0x1e, 0xfe, 0x8a, 0x96, 0x97, 0xe5, 0x1d, 0x84, 0xde, 0x47, 0xf1, 0xeb, 0x14, }; static const unsigned char xdh_wei25519_814_ourpubkey[] = { 0x6e, 0xe5, 0xad, 0xdb, 0x48, 0x41, 0x37, 0xc3, 0x29, 0x71, 0x1a, 0x33, 0x68, 0x1c, 0x8c, 0x82, 0x1d, 0x4b, 0x9f, 0x1f, 0xbb, 0xa0, 0xb9, 0x71, 0x70, 0xcd, 0xdd, 0x3d, 0x5c, 0x2b, 0x64, 0x33, }; static const unsigned char xdh_wei25519_814_privkey[] = { 0xc8, 0xa8, 0x5d, 0x14, 0x0b, 0xa1, 0x50, 0xf5, 0xc6, 0xa8, 0xd3, 0xcb, 0x36, 0x3b, 0xcb, 0xcb, 0x75, 0x36, 0x5e, 0x51, 0xc6, 0x16, 0x40, 0xe9, 0x74, 0xa0, 0x72, 0x5b, 0x5e, 0x9d, 0x59, 0x40, }; static const unsigned char xdh_wei25519_814_sharedsecret[] = { 0x8a, 0x91, 0x47, 0x60, 0x12, 0x95, 0x75, 0xc8, 0xab, 0x32, 0x70, 0xd0, 0x4b, 0x04, 0x65, 0xfc, 0x2f, 0x32, 0x7a, 0xca, 0xf1, 0x67, 0x64, 0x63, 0x11, 0x38, 0x03, 0xbb, 0xb2, 0xec, 0x80, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_814 = { .name = "xdh_wei25519_814", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_814_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_814_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_814_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_814_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 297 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 815 for XDH, tcId is 298 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_815_peerpubkey[] = { 0x88, 0xae, 0x16, 0x31, 0xcd, 0x08, 0xab, 0x54, 0xc2, 0x4a, 0x31, 0xe1, 0xfe, 0xc8, 0x60, 0x39, 0x1f, 0xe2, 0x9b, 0xc5, 0x0d, 0xb2, 0x3e, 0xb6, 0x67, 0x09, 0x36, 0x2e, 0xc4, 0x26, 0x49, 0x29, }; static const unsigned char xdh_wei25519_815_ourpubkey[] = { 0xb8, 0xaf, 0x5a, 0xc9, 0xb5, 0xa7, 0xd4, 0xa6, 0x52, 0xed, 0xc2, 0x2b, 0xa3, 0xf1, 0xe0, 0x36, 0xf7, 0xd7, 0x86, 0x67, 0xa8, 0x85, 0x56, 0x1d, 0x39, 0x29, 0x9c, 0xc8, 0x6e, 0xa0, 0x37, 0x41, }; static const unsigned char xdh_wei25519_815_privkey[] = { 0x90, 0xa3, 0xae, 0xb1, 0x41, 0x7c, 0x3d, 0x61, 0xc1, 0xef, 0xef, 0x1a, 0xc0, 0x52, 0x21, 0x8f, 0xb5, 0x5d, 0x3a, 0x59, 0xc4, 0xfe, 0x93, 0x0b, 0x5a, 0x33, 0xcc, 0x51, 0x83, 0xb4, 0x85, 0x47, }; static const unsigned char xdh_wei25519_815_sharedsecret[] = { 0xc1, 0x98, 0x8b, 0x6e, 0x1f, 0x02, 0x01, 0x51, 0xec, 0x91, 0x3b, 0x4f, 0xb2, 0x69, 0x5b, 0xae, 0x2c, 0x21, 0xcc, 0x55, 0x3d, 0x0f, 0x91, 0xcf, 0x0c, 0x66, 0x86, 0x23, 0xa3, 0xe5, 0xa4, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_815 = { .name = "xdh_wei25519_815", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_815_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_815_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_815_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_815_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 298 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 816 for XDH, tcId is 299 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_816_peerpubkey[] = { 0xcb, 0xc4, 0xd5, 0x5d, 0x5b, 0xfd, 0xdd, 0x0b, 0xc5, 0xc5, 0xed, 0xbe, 0x3a, 0x04, 0x83, 0x6b, 0x2c, 0x70, 0x1d, 0x25, 0x19, 0x5b, 0x26, 0x22, 0x1c, 0xbe, 0xa1, 0x93, 0x11, 0xe5, 0x5a, 0x3d, }; static const unsigned char xdh_wei25519_816_ourpubkey[] = { 0xe4, 0x97, 0x58, 0x38, 0x6d, 0x4b, 0x44, 0xa3, 0x08, 0x59, 0x47, 0xb8, 0x69, 0xf3, 0xd6, 0x15, 0x43, 0x2d, 0xfd, 0x8f, 0x22, 0xed, 0xea, 0x14, 0x4d, 0xe1, 0x8f, 0xb1, 0xfa, 0x99, 0x91, 0x15, }; static const unsigned char xdh_wei25519_816_privkey[] = { 0xb8, 0x58, 0xd7, 0x41, 0x4b, 0xd9, 0xab, 0x9a, 0x3e, 0xbe, 0xa7, 0x90, 0x64, 0xab, 0x87, 0xbc, 0x05, 0x0e, 0x74, 0x40, 0x7f, 0x4d, 0x47, 0x48, 0xf6, 0x2f, 0xa4, 0xd9, 0xd2, 0x03, 0xb6, 0x40, }; static const unsigned char xdh_wei25519_816_sharedsecret[] = { 0xbb, 0x24, 0x81, 0x7b, 0xd9, 0xff, 0xf4, 0x23, 0xdc, 0x09, 0x72, 0x90, 0x8e, 0x2c, 0x03, 0xfd, 0xdf, 0x4d, 0xbe, 0x10, 0x00, 0x16, 0xb4, 0x59, 0xf2, 0x8f, 0xe9, 0x59, 0x4a, 0xdb, 0x37, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_816 = { .name = "xdh_wei25519_816", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_816_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_816_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_816_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_816_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 299 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 817 for XDH, tcId is 300 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_817_peerpubkey[] = { 0xd6, 0x6a, 0x2f, 0x9f, 0x75, 0x77, 0xe2, 0xdf, 0x4a, 0x56, 0xcb, 0x51, 0x96, 0x2b, 0x30, 0x56, 0xff, 0x5c, 0xc0, 0x49, 0x4c, 0x60, 0xf3, 0x95, 0x11, 0x78, 0x2e, 0x79, 0x92, 0x3e, 0xdd, 0x41, }; static const unsigned char xdh_wei25519_817_ourpubkey[] = { 0xdd, 0x99, 0xac, 0x45, 0xc3, 0xb4, 0x28, 0xbe, 0x49, 0x2d, 0x52, 0xb1, 0x11, 0x2b, 0xcc, 0xc3, 0x46, 0x41, 0xe1, 0x50, 0xa6, 0x95, 0x7c, 0x11, 0x23, 0xea, 0xa1, 0xaa, 0x6f, 0xa3, 0xbf, 0x56, }; static const unsigned char xdh_wei25519_817_privkey[] = { 0xf8, 0x25, 0xed, 0xf1, 0xf7, 0x9e, 0xdd, 0xd7, 0x15, 0xa7, 0x2b, 0x3a, 0xc2, 0x67, 0xd6, 0xb2, 0xe9, 0x7e, 0x18, 0xbb, 0x13, 0xbc, 0xaf, 0xda, 0xc5, 0x94, 0x03, 0x70, 0xb8, 0x5b, 0xa6, 0x4b, }; static const unsigned char xdh_wei25519_817_sharedsecret[] = { 0xb3, 0xb4, 0x51, 0x3f, 0x8a, 0x31, 0x02, 0xe1, 0xae, 0x78, 0x2f, 0xbc, 0x69, 0x88, 0x81, 0x77, 0xf2, 0xc2, 0x4c, 0x56, 0x93, 0x03, 0xa5, 0xd0, 0x1a, 0xb1, 0xc3, 0xc5, 0xe2, 0x85, 0x52, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_817 = { .name = "xdh_wei25519_817", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_817_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_817_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_817_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_817_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 300 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 818 for XDH, tcId is 301 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_818_peerpubkey[] = { 0xde, 0x0f, 0xed, 0x2f, 0xab, 0x6e, 0x01, 0x49, 0x26, 0x75, 0xbc, 0x75, 0xcb, 0xe4, 0x5d, 0x7b, 0x45, 0xb0, 0x30, 0x6c, 0xec, 0x8d, 0xc6, 0x76, 0x11, 0x69, 0x98, 0x11, 0xc9, 0xaa, 0xef, 0x16, }; static const unsigned char xdh_wei25519_818_ourpubkey[] = { 0x8f, 0x4e, 0x28, 0x67, 0x0f, 0xe0, 0x7d, 0x92, 0xae, 0x21, 0xc8, 0xff, 0xe7, 0x74, 0x7c, 0xb5, 0x26, 0xf8, 0x15, 0x3a, 0x5d, 0x1e, 0xfd, 0x45, 0x56, 0xee, 0x53, 0x13, 0x21, 0x71, 0xaa, 0x70, }; static const unsigned char xdh_wei25519_818_privkey[] = { 0xb0, 0xa7, 0x10, 0xb4, 0x70, 0xe3, 0x24, 0xbb, 0x56, 0xa7, 0xd8, 0xff, 0x87, 0x88, 0xd0, 0x5e, 0xb3, 0x27, 0x61, 0x61, 0x29, 0xb8, 0x49, 0x72, 0x48, 0x24, 0x25, 0xea, 0x4a, 0xd4, 0xf3, 0x4b, }; static const unsigned char xdh_wei25519_818_sharedsecret[] = { 0x47, 0x1b, 0xa9, 0x1a, 0x99, 0x63, 0x4f, 0x9a, 0xcf, 0x34, 0xfd, 0x7f, 0xd5, 0x8f, 0x72, 0x68, 0x2b, 0xe9, 0x7e, 0xe1, 0xc8, 0x21, 0x48, 0x6d, 0x62, 0xba, 0x4e, 0x44, 0x8c, 0xbc, 0x04, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_818 = { .name = "xdh_wei25519_818", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_818_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_818_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_818_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_818_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 301 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 819 for XDH, tcId is 302 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_819_peerpubkey[] = { 0x64, 0x18, 0xd4, 0x9f, 0xe4, 0x40, 0xa7, 0x55, 0xc9, 0xff, 0x1a, 0x35, 0x82, 0xd3, 0x5d, 0xc9, 0xb4, 0x4c, 0x81, 0x84, 0x98, 0xf1, 0x57, 0x82, 0xc9, 0x52, 0x84, 0xfe, 0x86, 0x8a, 0x91, 0x4c, }; static const unsigned char xdh_wei25519_819_ourpubkey[] = { 0x1a, 0x5f, 0x55, 0x7f, 0x15, 0x5a, 0xdb, 0x93, 0x68, 0xff, 0xe2, 0x83, 0x0b, 0xd9, 0x9a, 0x94, 0x96, 0x92, 0xc8, 0xd1, 0xa6, 0xd8, 0x58, 0x1a, 0xd2, 0x9e, 0x2d, 0x1f, 0xf1, 0x1f, 0xfa, 0x6b, }; static const unsigned char xdh_wei25519_819_privkey[] = { 0xb8, 0x98, 0xf0, 0x32, 0x97, 0x94, 0x74, 0x7d, 0x33, 0x26, 0x9a, 0x39, 0x89, 0xb6, 0x7e, 0x43, 0xa7, 0xab, 0x5a, 0x55, 0xfa, 0x12, 0x10, 0xb0, 0xe5, 0xdb, 0xa1, 0x93, 0xf4, 0xfa, 0x09, 0x4e, }; static const unsigned char xdh_wei25519_819_sharedsecret[] = { 0xcd, 0xb3, 0xca, 0x02, 0xd5, 0xfd, 0xb5, 0x36, 0xdb, 0xc7, 0x39, 0x5b, 0xab, 0x12, 0xbd, 0xcf, 0xd5, 0x5b, 0x1a, 0xe7, 0x71, 0xa4, 0x17, 0x6d, 0xed, 0xb5, 0x5e, 0xb4, 0xd7, 0x55, 0xc7, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_819 = { .name = "xdh_wei25519_819", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_819_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_819_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_819_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_819_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 302 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 820 for XDH, tcId is 303 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_820_peerpubkey[] = { 0xa8, 0x9b, 0xcf, 0xa2, 0x36, 0xbb, 0xcc, 0xf0, 0x7c, 0x43, 0x4b, 0x59, 0xf8, 0x65, 0x5f, 0xb0, 0x85, 0xb6, 0xcb, 0xe5, 0xed, 0x63, 0x76, 0x28, 0x1d, 0xf8, 0x13, 0xaf, 0xba, 0x22, 0xb7, 0x52, }; static const unsigned char xdh_wei25519_820_ourpubkey[] = { 0x8c, 0x81, 0x03, 0x66, 0x70, 0xe9, 0x60, 0x3b, 0xaf, 0xc2, 0x7b, 0x28, 0x86, 0x12, 0x61, 0xb4, 0x0b, 0xa9, 0x9b, 0xe7, 0x2f, 0x27, 0x6e, 0x23, 0x0b, 0x05, 0xfe, 0x1d, 0x86, 0xec, 0x86, 0x0a, }; static const unsigned char xdh_wei25519_820_privkey[] = { 0xa0, 0x52, 0x8e, 0xd9, 0xa8, 0xec, 0x22, 0xeb, 0xe9, 0xcc, 0x2e, 0x32, 0xfa, 0xfc, 0x3f, 0x46, 0x75, 0x00, 0xa9, 0xa2, 0x2f, 0x53, 0x77, 0x38, 0x2d, 0xf6, 0x60, 0x4e, 0xdc, 0xdf, 0x4f, 0x44, }; static const unsigned char xdh_wei25519_820_sharedsecret[] = { 0xcd, 0x32, 0x45, 0x40, 0x3f, 0xd9, 0xed, 0xfc, 0xf9, 0x1c, 0x95, 0x81, 0xeb, 0xb2, 0xeb, 0x7c, 0x77, 0xad, 0x68, 0x37, 0xfc, 0xa3, 0x72, 0x47, 0x9e, 0x78, 0xde, 0x9f, 0xaf, 0x60, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_820 = { .name = "xdh_wei25519_820", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_820_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_820_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_820_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_820_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 303 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 821 for XDH, tcId is 304 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_821_peerpubkey[] = { 0xcd, 0xb1, 0xf9, 0x5f, 0x6e, 0xac, 0xc2, 0x4b, 0x6d, 0x02, 0x9c, 0x6e, 0xd9, 0x76, 0x66, 0x6d, 0xc5, 0x17, 0x94, 0xdb, 0x8e, 0x4a, 0xa9, 0x66, 0xba, 0x85, 0x0f, 0xd7, 0xf5, 0x04, 0x89, 0x65, }; static const unsigned char xdh_wei25519_821_ourpubkey[] = { 0x3c, 0x9f, 0x67, 0x78, 0x94, 0x82, 0xba, 0x1d, 0x7b, 0xb6, 0x1b, 0x00, 0x9a, 0x88, 0xe0, 0xd4, 0x1f, 0x89, 0x92, 0x35, 0xc0, 0x06, 0x8f, 0x9a, 0x78, 0x7b, 0x74, 0xc4, 0x8f, 0xfc, 0xa6, 0x47, }; static const unsigned char xdh_wei25519_821_privkey[] = { 0xf0, 0x68, 0x88, 0xbd, 0xe7, 0x5d, 0x68, 0x9d, 0x05, 0x68, 0x74, 0xf6, 0x43, 0x60, 0x00, 0x49, 0x7d, 0x22, 0xd8, 0xad, 0x9b, 0x95, 0xa1, 0xc6, 0x7d, 0xe1, 0xdd, 0xa4, 0xad, 0xa3, 0x16, 0x4d, }; static const unsigned char xdh_wei25519_821_sharedsecret[] = { 0xab, 0x7c, 0x47, 0xec, 0xb0, 0xc0, 0x16, 0x71, 0x56, 0xf4, 0x4f, 0x66, 0xa5, 0x27, 0x26, 0x4b, 0x95, 0x8f, 0xc9, 0x92, 0xc2, 0x1c, 0xe9, 0x8c, 0xef, 0x3a, 0xe2, 0x14, 0xd6, 0x6b, 0xd8, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_821 = { .name = "xdh_wei25519_821", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_821_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_821_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_821_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_821_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 304 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 822 for XDH, tcId is 305 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_822_peerpubkey[] = { 0x94, 0x91, 0xa8, 0x27, 0x44, 0xf1, 0xcb, 0x61, 0x05, 0xb7, 0x6b, 0x04, 0x42, 0xe5, 0x4e, 0x60, 0x5a, 0xc6, 0x7f, 0x47, 0xa1, 0xb2, 0xb3, 0xb5, 0x52, 0xd4, 0x86, 0xf7, 0x5b, 0xd9, 0x8e, 0x6a, }; static const unsigned char xdh_wei25519_822_ourpubkey[] = { 0x71, 0xc3, 0xf0, 0xa9, 0x35, 0x2a, 0xe0, 0x8d, 0x21, 0x1a, 0x27, 0xcb, 0x97, 0x75, 0xfa, 0x1e, 0xfd, 0x1f, 0x76, 0x22, 0x12, 0x44, 0xac, 0xa4, 0xed, 0xe6, 0x89, 0x48, 0x91, 0xe0, 0x3b, 0x2e, }; static const unsigned char xdh_wei25519_822_privkey[] = { 0xe0, 0x34, 0xfc, 0xaa, 0x3a, 0xe4, 0x06, 0x03, 0xf9, 0xb2, 0x2a, 0xf1, 0x59, 0xfd, 0x67, 0xef, 0x00, 0x93, 0x80, 0x94, 0x6d, 0xe9, 0x2c, 0xb1, 0xd8, 0x3c, 0xc4, 0x89, 0xe8, 0xb3, 0x50, 0x41, }; static const unsigned char xdh_wei25519_822_sharedsecret[] = { 0x1b, 0xfa, 0x26, 0x4a, 0x7c, 0x72, 0x29, 0x14, 0x7a, 0x20, 0xdd, 0x02, 0x12, 0x11, 0x89, 0x1e, 0x61, 0xf5, 0xd8, 0xc7, 0x6c, 0xd8, 0x3f, 0x0b, 0xe2, 0x4b, 0xc7, 0x0e, 0x46, 0x6a, 0x81, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_822 = { .name = "xdh_wei25519_822", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_822_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_822_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_822_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_822_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 305 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 823 for XDH, tcId is 306 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_823_peerpubkey[] = { 0x4d, 0x19, 0xe1, 0x56, 0xe0, 0x84, 0xfe, 0x58, 0x2a, 0x0e, 0xb7, 0x9b, 0x2f, 0x12, 0xb6, 0x1d, 0x0b, 0x03, 0xf3, 0xf2, 0x29, 0x22, 0x7e, 0x79, 0x8a, 0x93, 0x3e, 0xea, 0x5a, 0x1b, 0x61, 0x29, }; static const unsigned char xdh_wei25519_823_ourpubkey[] = { 0x36, 0xce, 0x61, 0x13, 0xc5, 0xd0, 0xac, 0xbb, 0x4c, 0xf3, 0xdc, 0xe9, 0x6d, 0x10, 0x0a, 0xf9, 0x06, 0x9e, 0xd9, 0xf1, 0x52, 0x28, 0xbf, 0xfd, 0x5f, 0x25, 0x60, 0xd9, 0x46, 0x5a, 0xe8, 0x07, }; static const unsigned char xdh_wei25519_823_privkey[] = { 0x70, 0x2a, 0x74, 0x48, 0xc0, 0xed, 0x58, 0xe1, 0xf4, 0xe0, 0xe3, 0x32, 0xd0, 0x96, 0xa3, 0x63, 0x60, 0xbe, 0xca, 0x2f, 0x69, 0x55, 0xc8, 0x15, 0xbc, 0x12, 0x0b, 0x3a, 0x69, 0x1d, 0x77, 0x42, }; static const unsigned char xdh_wei25519_823_sharedsecret[] = { 0xc4, 0x60, 0x57, 0xfc, 0xf6, 0x30, 0x88, 0xb3, 0xa8, 0x0e, 0x0b, 0xe5, 0xce, 0x24, 0xc8, 0x02, 0x6d, 0xfa, 0xdd, 0x34, 0x1b, 0x5d, 0x82, 0x15, 0xb8, 0xaf, 0xcb, 0x2a, 0x5a, 0x02, 0xbb, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_823 = { .name = "xdh_wei25519_823", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_823_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_823_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_823_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_823_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 306 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 824 for XDH, tcId is 307 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_824_peerpubkey[] = { 0xcc, 0x47, 0x29, 0xc4, 0xea, 0xe2, 0x92, 0xe4, 0x31, 0xec, 0x3a, 0x5c, 0xf5, 0x02, 0x0e, 0x19, 0xf9, 0xbe, 0xa5, 0x0e, 0xf3, 0x21, 0x8d, 0x9a, 0x79, 0x00, 0x34, 0x52, 0x6c, 0x3e, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_824_ourpubkey[] = { 0xc6, 0x12, 0x63, 0xca, 0x82, 0xf1, 0x51, 0xb7, 0x92, 0x58, 0x44, 0x7b, 0x43, 0x18, 0x60, 0xe0, 0xcb, 0xbd, 0x98, 0xcd, 0xa6, 0x72, 0xc6, 0x1e, 0x6e, 0xbc, 0x4d, 0xe6, 0xae, 0x6a, 0x44, 0x68, }; static const unsigned char xdh_wei25519_824_privkey[] = { 0x50, 0x02, 0x5c, 0xb5, 0x08, 0xad, 0x4f, 0xaa, 0x06, 0xfa, 0xfd, 0x0f, 0x4a, 0x33, 0xb7, 0x47, 0xcc, 0xf1, 0xb3, 0x57, 0x38, 0x85, 0xd3, 0x42, 0x65, 0x00, 0xd5, 0x1b, 0x56, 0x30, 0x01, 0x44, }; static const unsigned char xdh_wei25519_824_sharedsecret[] = { 0xd4, 0x36, 0x1e, 0x26, 0x12, 0x7a, 0xdf, 0xbe, 0x37, 0xc2, 0xed, 0x8f, 0x42, 0xcc, 0xe4, 0xeb, 0xab, 0x8a, 0xb7, 0x4e, 0xd9, 0xe7, 0x4f, 0x14, 0xc3, 0x43, 0x5d, 0x61, 0x2c, 0x1a, 0x99, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_824 = { .name = "xdh_wei25519_824", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_824_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_824_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_824_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_824_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 307 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 825 for XDH, tcId is 308 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_825_peerpubkey[] = { 0x4a, 0x47, 0x42, 0x49, 0xaf, 0x8f, 0x77, 0x1f, 0x0c, 0xfb, 0x11, 0x16, 0xf2, 0x4f, 0xda, 0x4c, 0x42, 0xf4, 0x13, 0x6d, 0x2a, 0xfb, 0x76, 0x6d, 0x1b, 0x29, 0x1c, 0x73, 0xc6, 0x66, 0x8d, 0x5a, }; static const unsigned char xdh_wei25519_825_ourpubkey[] = { 0xe9, 0x22, 0xe1, 0xba, 0xb6, 0x4a, 0x97, 0xb2, 0x2d, 0x81, 0x20, 0x50, 0xb7, 0x52, 0x9e, 0x9f, 0x21, 0x28, 0x34, 0x39, 0x3e, 0x6d, 0xf3, 0x60, 0x57, 0x73, 0x20, 0xb8, 0x92, 0x4c, 0x96, 0x55, }; static const unsigned char xdh_wei25519_825_privkey[] = { 0x70, 0x82, 0xfc, 0x53, 0x29, 0x9a, 0x4d, 0x30, 0xe5, 0xd0, 0xc3, 0x83, 0xc0, 0x35, 0x93, 0x5b, 0x1e, 0xee, 0xbd, 0x94, 0x08, 0xfe, 0x4d, 0x04, 0xb9, 0x3e, 0xec, 0x24, 0xbe, 0x52, 0xeb, 0x47, }; static const unsigned char xdh_wei25519_825_sharedsecret[] = { 0x80, 0xdf, 0xae, 0x7a, 0x28, 0xbb, 0x13, 0xd9, 0xe5, 0x1f, 0xf1, 0x99, 0x26, 0x7c, 0xec, 0x2a, 0x19, 0xdf, 0xc8, 0xb6, 0xf4, 0x97, 0x4e, 0x34, 0x46, 0xb2, 0xf6, 0x2f, 0xe9, 0xb6, 0x24, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_825 = { .name = "xdh_wei25519_825", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_825_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_825_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_825_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_825_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 308 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 826 for XDH, tcId is 309 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_826_peerpubkey[] = { 0x0f, 0x2a, 0x5c, 0xbb, 0xe5, 0x03, 0x13, 0x95, 0x31, 0xac, 0x05, 0x29, 0x18, 0x3d, 0xa8, 0xe6, 0x24, 0xd2, 0x52, 0x86, 0xf6, 0xe3, 0x5d, 0x14, 0x07, 0xab, 0x1f, 0x4d, 0x76, 0xeb, 0xc2, 0x60, }; static const unsigned char xdh_wei25519_826_ourpubkey[] = { 0xcf, 0x3d, 0x48, 0x7b, 0x9f, 0x43, 0xea, 0x5f, 0x75, 0xf1, 0xd2, 0x91, 0x2b, 0x7a, 0x9c, 0x1e, 0x5d, 0x16, 0x6d, 0xdf, 0x5d, 0x5b, 0x39, 0xb5, 0xd0, 0xd8, 0xda, 0x83, 0xc8, 0xcb, 0x6b, 0x76, }; static const unsigned char xdh_wei25519_826_privkey[] = { 0x98, 0xff, 0x7e, 0x71, 0x1d, 0x65, 0xcc, 0x7f, 0xd9, 0xd0, 0xac, 0x12, 0xdf, 0xe8, 0xb8, 0x94, 0xe0, 0xa9, 0x36, 0x02, 0xca, 0x9e, 0x75, 0xbf, 0x0e, 0xab, 0xbf, 0x0b, 0xfe, 0x67, 0x01, 0x48, }; static const unsigned char xdh_wei25519_826_sharedsecret[] = { 0x7a, 0x5c, 0x37, 0x30, 0x65, 0xe3, 0x39, 0xb2, 0x6e, 0xe5, 0x37, 0xcf, 0xf1, 0xcf, 0x45, 0x97, 0xcf, 0xcb, 0x4b, 0xf2, 0xdc, 0x7c, 0x4b, 0xcf, 0xec, 0x98, 0x84, 0x44, 0x32, 0x81, 0xc2, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_826 = { .name = "xdh_wei25519_826", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_826_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_826_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_826_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_826_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 309 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 827 for XDH, tcId is 310 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_827_peerpubkey[] = { 0x2f, 0xe1, 0x1d, 0x72, 0x3d, 0xba, 0x63, 0x55, 0x9e, 0x1b, 0x96, 0x14, 0x78, 0x93, 0xcb, 0x7e, 0xc8, 0x62, 0x71, 0x18, 0x06, 0x31, 0x6d, 0xaa, 0x86, 0xcd, 0x4d, 0xa7, 0x69, 0xd4, 0xb2, 0x2d, }; static const unsigned char xdh_wei25519_827_ourpubkey[] = { 0xbb, 0xd5, 0xad, 0x96, 0xf1, 0xa8, 0x81, 0x74, 0xe3, 0xe1, 0x19, 0xe6, 0x13, 0x2e, 0x32, 0x77, 0xe3, 0xaa, 0xa3, 0x05, 0x3f, 0x0c, 0x20, 0xee, 0x04, 0x85, 0x78, 0x62, 0x32, 0x4a, 0x3e, 0x5a, }; static const unsigned char xdh_wei25519_827_privkey[] = { 0xb0, 0x80, 0xf4, 0xac, 0x1e, 0x75, 0x8b, 0xbf, 0xbf, 0xa8, 0x88, 0xa7, 0x8c, 0xb8, 0xd6, 0x24, 0xd9, 0x7b, 0x86, 0x88, 0x00, 0x2b, 0x20, 0x17, 0xe3, 0x5f, 0x52, 0xf3, 0xd7, 0xc7, 0x96, 0x49, }; static const unsigned char xdh_wei25519_827_sharedsecret[] = { 0xc5, 0xed, 0xcc, 0x5d, 0x44, 0x70, 0x71, 0xc0, 0x8d, 0xfa, 0x82, 0x81, 0x41, 0x4a, 0xe6, 0xa0, 0x2d, 0xe7, 0x53, 0xe2, 0xf7, 0xbb, 0x80, 0xaf, 0x5f, 0x62, 0x53, 0xe5, 0x6d, 0xb4, 0x34, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_827 = { .name = "xdh_wei25519_827", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_827_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_827_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_827_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_827_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 310 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 828 for XDH, tcId is 311 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_828_peerpubkey[] = { 0x98, 0xe1, 0x21, 0x1d, 0xcf, 0x66, 0x51, 0xfa, 0x9f, 0x2d, 0x00, 0xeb, 0x08, 0x3a, 0xe5, 0x85, 0x58, 0x69, 0xa2, 0xa5, 0x3e, 0x83, 0x5f, 0x2e, 0x03, 0xb3, 0x0c, 0x0a, 0x19, 0xba, 0x80, 0x51, }; static const unsigned char xdh_wei25519_828_ourpubkey[] = { 0x82, 0xbc, 0x5d, 0x7f, 0x34, 0x17, 0xcf, 0xe6, 0xa2, 0x73, 0x3b, 0x55, 0xdf, 0x96, 0xfb, 0x79, 0xcb, 0xf7, 0x51, 0x63, 0x31, 0xf3, 0x10, 0x0f, 0x25, 0xb5, 0x99, 0xdc, 0x64, 0x81, 0x0c, 0x11, }; static const unsigned char xdh_wei25519_828_privkey[] = { 0xe8, 0x15, 0xbf, 0x9a, 0x96, 0x7e, 0x12, 0x08, 0xaf, 0x8e, 0x74, 0xce, 0x9a, 0xf6, 0xd1, 0x13, 0xda, 0xb1, 0x7c, 0x01, 0xc9, 0x0f, 0x1a, 0xe2, 0xbc, 0x25, 0xe3, 0xe2, 0xf9, 0xe3, 0xa4, 0x4a, }; static const unsigned char xdh_wei25519_828_sharedsecret[] = { 0x26, 0x3a, 0x38, 0xfe, 0x53, 0x8b, 0x50, 0xe8, 0xe9, 0x88, 0xbf, 0x07, 0xae, 0x86, 0xf3, 0x3d, 0x49, 0x88, 0x6b, 0x14, 0xc7, 0x14, 0x3e, 0xfd, 0x1d, 0x20, 0x25, 0xc8, 0x40, 0xe3, 0x6a, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_828 = { .name = "xdh_wei25519_828", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_828_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_828_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_828_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_828_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 311 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 829 for XDH, tcId is 312 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_829_peerpubkey[] = { 0x2f, 0x1b, 0x93, 0x8b, 0x81, 0xa4, 0xc9, 0x0e, 0x12, 0x51, 0x13, 0x5a, 0xd7, 0xfa, 0xbe, 0x83, 0x5f, 0x6a, 0x8b, 0xc5, 0xe2, 0x2d, 0x4b, 0x2a, 0xb1, 0x19, 0xf6, 0xf6, 0x77, 0x87, 0x76, 0x77, }; static const unsigned char xdh_wei25519_829_ourpubkey[] = { 0x7a, 0xde, 0x7c, 0xf2, 0x98, 0x72, 0xa4, 0x58, 0x86, 0x52, 0xb6, 0xa3, 0xae, 0xc7, 0x8c, 0x77, 0x4b, 0x7f, 0xe6, 0x95, 0x49, 0x23, 0xd3, 0x4e, 0xb3, 0x8b, 0xf8, 0x1a, 0x0a, 0x94, 0xc4, 0x14, }; static const unsigned char xdh_wei25519_829_privkey[] = { 0x40, 0x51, 0xb0, 0x1c, 0xdf, 0x90, 0xaf, 0x38, 0xf0, 0xa9, 0x6f, 0xfb, 0x83, 0xf8, 0xd4, 0x13, 0x3a, 0xbe, 0x4f, 0xb0, 0x35, 0xb6, 0xfe, 0x6f, 0x65, 0x27, 0x64, 0x47, 0xca, 0xa7, 0x31, 0x4f, }; static const unsigned char xdh_wei25519_829_sharedsecret[] = { 0x34, 0x0a, 0xcf, 0x28, 0x01, 0xde, 0x71, 0xc1, 0x8f, 0x4c, 0x79, 0xcf, 0xea, 0x37, 0x2b, 0xc3, 0x54, 0xe4, 0xc8, 0xa5, 0xeb, 0x5c, 0x2c, 0xce, 0x8b, 0x45, 0xd8, 0x85, 0xdf, 0x16, 0x2f, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_829 = { .name = "xdh_wei25519_829", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_829_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_829_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_829_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_829_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 312 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 830 for XDH, tcId is 313 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_830_peerpubkey[] = { 0x34, 0x0b, 0x9f, 0x61, 0x35, 0x50, 0xd1, 0x4e, 0x3c, 0x62, 0x56, 0xca, 0xf0, 0x29, 0xb3, 0x1c, 0xad, 0x3f, 0xe6, 0xdb, 0x58, 0x82, 0x94, 0xe2, 0xd3, 0xaf, 0x37, 0x60, 0x5a, 0x68, 0xd8, 0x37, }; static const unsigned char xdh_wei25519_830_ourpubkey[] = { 0xe9, 0xc1, 0x67, 0xf6, 0x1c, 0xc1, 0x52, 0x10, 0x01, 0x12, 0x11, 0x49, 0xc1, 0x3c, 0xab, 0x50, 0x32, 0x47, 0x4b, 0xc5, 0x99, 0xac, 0x0e, 0x29, 0x92, 0x14, 0x57, 0x6b, 0x69, 0x5f, 0x43, 0x1f, }; static const unsigned char xdh_wei25519_830_privkey[] = { 0x98, 0xc0, 0x92, 0x36, 0x31, 0x84, 0xe5, 0x8a, 0xd6, 0xce, 0x51, 0x0b, 0xd3, 0x2b, 0x30, 0x9c, 0x9d, 0x5a, 0x46, 0xf8, 0xd9, 0xee, 0x6f, 0x64, 0xa6, 0x9d, 0x81, 0x80, 0xbb, 0xc6, 0xcb, 0x45, }; static const unsigned char xdh_wei25519_830_sharedsecret[] = { 0x9e, 0xfe, 0x5c, 0xd7, 0x11, 0x02, 0xd8, 0x99, 0xa3, 0x33, 0xa4, 0x5e, 0xa6, 0xd2, 0xc0, 0x89, 0x60, 0x4b, 0x92, 0x6d, 0xb8, 0xc2, 0x64, 0x5c, 0xe5, 0xff, 0x21, 0x49, 0x2f, 0x27, 0xa3, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_830 = { .name = "xdh_wei25519_830", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_830_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_830_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_830_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_830_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 313 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 831 for XDH, tcId is 314 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_831_peerpubkey[] = { 0xed, 0xfb, 0xd6, 0xf0, 0x9a, 0xa3, 0x24, 0x35, 0x44, 0x0b, 0x0c, 0xa8, 0xba, 0x43, 0x63, 0x08, 0x31, 0x96, 0x13, 0xf8, 0xf2, 0xd5, 0x01, 0x13, 0x3c, 0x52, 0x6c, 0x3f, 0xf5, 0x5c, 0x7b, 0x3d, }; static const unsigned char xdh_wei25519_831_ourpubkey[] = { 0x58, 0x98, 0xb2, 0x0b, 0x95, 0xa8, 0xcc, 0xff, 0xb1, 0xad, 0xd5, 0xd5, 0x2e, 0x66, 0xd3, 0x98, 0x85, 0x5e, 0x94, 0x87, 0x11, 0xbd, 0xf8, 0xf4, 0x32, 0x86, 0x6b, 0x79, 0x6c, 0x8b, 0x5b, 0x0e, }; static const unsigned char xdh_wei25519_831_privkey[] = { 0x68, 0x6e, 0x51, 0xc0, 0x01, 0x16, 0xd1, 0xc1, 0x91, 0xaa, 0x9d, 0x58, 0x23, 0xb9, 0x6e, 0x59, 0x56, 0x10, 0x2e, 0x8f, 0xe7, 0x5f, 0x5c, 0xf2, 0x37, 0x6d, 0x99, 0x98, 0x9f, 0x6f, 0x43, 0x42, }; static const unsigned char xdh_wei25519_831_sharedsecret[] = { 0x19, 0x61, 0x82, 0x09, 0x5b, 0xcd, 0x2e, 0xf4, 0x6b, 0x18, 0xf6, 0x4c, 0x63, 0x60, 0x7e, 0x0a, 0xb1, 0x62, 0xa0, 0x86, 0x9e, 0x62, 0x65, 0xac, 0x8a, 0xe3, 0x5e, 0x35, 0x8c, 0x3d, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_831 = { .name = "xdh_wei25519_831", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_831_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_831_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_831_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_831_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 314 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 832 for XDH, tcId is 315 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_832_peerpubkey[] = { 0x9b, 0x05, 0x38, 0xcd, 0x61, 0x8b, 0x0a, 0x4d, 0xe0, 0x9e, 0x45, 0x42, 0x0f, 0x84, 0xd5, 0x4d, 0x74, 0x51, 0x4f, 0xbb, 0x1a, 0x31, 0xc1, 0xa4, 0xaa, 0x1e, 0x93, 0x30, 0x6f, 0x20, 0x72, 0x3f, }; static const unsigned char xdh_wei25519_832_ourpubkey[] = { 0x11, 0x77, 0x45, 0xce, 0xe2, 0x88, 0x2f, 0x5d, 0xff, 0xd6, 0x19, 0x9b, 0x39, 0xfe, 0xb3, 0xdc, 0x1f, 0x71, 0x94, 0xf7, 0xcb, 0x19, 0xb7, 0x24, 0x48, 0x9b, 0x44, 0x01, 0xd8, 0xd8, 0x9d, 0x72, }; static const unsigned char xdh_wei25519_832_privkey[] = { 0x20, 0x8a, 0xf2, 0xc9, 0x44, 0x2b, 0x36, 0xb5, 0x21, 0xfc, 0x3a, 0x1e, 0xce, 0xfe, 0x34, 0x2a, 0xac, 0x30, 0x8b, 0xd6, 0xe6, 0x29, 0x6e, 0xe0, 0x91, 0xc1, 0x96, 0xdc, 0x02, 0xe7, 0xae, 0x40, }; static const unsigned char xdh_wei25519_832_sharedsecret[] = { 0xa3, 0xc6, 0xb7, 0x51, 0x68, 0x21, 0x1e, 0x8e, 0x0a, 0x49, 0xca, 0x81, 0x5b, 0xfe, 0x3f, 0x46, 0x9f, 0x29, 0x86, 0x4d, 0xc8, 0x16, 0x61, 0x52, 0xb4, 0x56, 0xe7, 0x07, 0x4a, 0xfa, 0x9b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_832 = { .name = "xdh_wei25519_832", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_832_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_832_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_832_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_832_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 315 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 833 for XDH, tcId is 316 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_833_peerpubkey[] = { 0xae, 0x8c, 0xf2, 0xfc, 0xdd, 0xe7, 0x10, 0xc2, 0xc1, 0x18, 0x45, 0x24, 0xbc, 0x32, 0x43, 0x08, 0x74, 0xdf, 0xa0, 0x8c, 0x12, 0x5f, 0x61, 0xd6, 0x91, 0x9d, 0xaf, 0x8e, 0x66, 0xdb, 0x41, 0x5a, }; static const unsigned char xdh_wei25519_833_ourpubkey[] = { 0x22, 0xe6, 0x35, 0x1a, 0x00, 0x60, 0x5f, 0x60, 0xdf, 0x9e, 0x6d, 0xd0, 0x89, 0x87, 0xf9, 0x94, 0x44, 0x28, 0x9d, 0x82, 0x3b, 0xa6, 0xd1, 0x34, 0x34, 0x79, 0xaf, 0x9a, 0xe9, 0x48, 0x41, 0x0c, }; static const unsigned char xdh_wei25519_833_privkey[] = { 0xc0, 0xd8, 0x61, 0xa6, 0xd5, 0xff, 0x91, 0xf9, 0x1e, 0x3b, 0xd0, 0x59, 0x34, 0x16, 0x1f, 0xf0, 0xab, 0x0f, 0x3c, 0xe7, 0xe4, 0xa2, 0xb5, 0xb4, 0xfc, 0xb3, 0x1a, 0xe3, 0x4b, 0x46, 0x66, 0x4f, }; static const unsigned char xdh_wei25519_833_sharedsecret[] = { 0xde, 0xaa, 0xe6, 0xc9, 0x95, 0x28, 0x44, 0xa3, 0xa1, 0xd0, 0x16, 0x88, 0xe7, 0x10, 0x5b, 0x0b, 0xbe, 0xad, 0xc1, 0x60, 0x76, 0x3c, 0x20, 0x02, 0xb6, 0xd0, 0xbc, 0xf3, 0x5c, 0x22, 0xd1, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_833 = { .name = "xdh_wei25519_833", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_833_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_833_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_833_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_833_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 316 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 834 for XDH, tcId is 317 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_834_peerpubkey[] = { 0x2a, 0x59, 0xf4, 0x78, 0x40, 0x2d, 0x28, 0x29, 0xcd, 0x3b, 0x62, 0xe9, 0xf7, 0xcc, 0x01, 0x44, 0x5e, 0x8e, 0x73, 0xa4, 0x2c, 0xb1, 0x1a, 0xf0, 0x0b, 0x6b, 0x9a, 0x9f, 0x0e, 0x44, 0xcb, 0x3b, }; static const unsigned char xdh_wei25519_834_ourpubkey[] = { 0xb3, 0xdb, 0x35, 0x06, 0x18, 0x31, 0x97, 0x36, 0x04, 0x63, 0x46, 0x1d, 0x6b, 0x7b, 0xae, 0xc7, 0x75, 0xa4, 0x18, 0x21, 0x3e, 0x48, 0x73, 0x97, 0xa4, 0xfb, 0x9e, 0x02, 0xd6, 0x73, 0xd6, 0x14, }; static const unsigned char xdh_wei25519_834_privkey[] = { 0x70, 0x78, 0x5c, 0xad, 0x16, 0x09, 0x72, 0xb7, 0x11, 0x31, 0x86, 0x59, 0xb4, 0x7b, 0x57, 0x4f, 0x69, 0x41, 0xef, 0x6d, 0xa1, 0xea, 0x06, 0x50, 0x8b, 0x26, 0x50, 0xf5, 0x7e, 0xc9, 0xe5, 0x4a, }; static const unsigned char xdh_wei25519_834_sharedsecret[] = { 0xc2, 0x04, 0xbd, 0x15, 0xf0, 0x1a, 0x11, 0xa2, 0xef, 0xda, 0xbe, 0x2e, 0x90, 0x2b, 0x7c, 0xd0, 0xaa, 0x07, 0x93, 0x16, 0xf6, 0x0e, 0x91, 0x1b, 0x3e, 0xe5, 0xd4, 0x62, 0x62, 0xe9, 0x86, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_834 = { .name = "xdh_wei25519_834", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_834_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_834_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_834_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_834_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 317 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 835 for XDH, tcId is 318 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_835_peerpubkey[] = { 0x83, 0x6c, 0x8e, 0x45, 0xdd, 0x89, 0x0e, 0x65, 0x8c, 0x33, 0xe6, 0x9b, 0x6f, 0x57, 0x8a, 0x5a, 0x77, 0x4c, 0x48, 0xb4, 0x35, 0xbc, 0x3b, 0x91, 0xac, 0x69, 0x3d, 0xf9, 0x4a, 0x05, 0x58, 0x57, }; static const unsigned char xdh_wei25519_835_ourpubkey[] = { 0xbd, 0x4b, 0x2d, 0x1b, 0x3a, 0x3b, 0x6a, 0x54, 0x04, 0x4e, 0xe8, 0x97, 0xa7, 0xdc, 0x67, 0xa7, 0x3a, 0xc9, 0x69, 0x20, 0xb8, 0x20, 0xb0, 0x4b, 0xc9, 0xfd, 0xd5, 0x81, 0x82, 0x48, 0x8a, 0x5a, }; static const unsigned char xdh_wei25519_835_privkey[] = { 0x60, 0xaf, 0xc8, 0xeb, 0x1f, 0x87, 0xdf, 0x4b, 0x55, 0x28, 0x7f, 0x3c, 0x46, 0x98, 0xc5, 0xf8, 0xb9, 0x97, 0xb2, 0x8a, 0x73, 0xc5, 0x73, 0xfc, 0x27, 0x3e, 0x9c, 0x46, 0x7f, 0xb7, 0xe4, 0x4c, }; static const unsigned char xdh_wei25519_835_sharedsecret[] = { 0xc5, 0x45, 0x74, 0x87, 0xe9, 0x09, 0x32, 0xf5, 0x7b, 0x94, 0xaf, 0x2e, 0x87, 0x50, 0x40, 0x3e, 0x09, 0xc9, 0xac, 0x72, 0x7e, 0x2b, 0xd2, 0x13, 0x59, 0x04, 0x62, 0xb6, 0x93, 0x7b, 0x07, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_835 = { .name = "xdh_wei25519_835", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_835_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_835_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_835_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_835_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 318 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 836 for XDH, tcId is 319 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_836_peerpubkey[] = { 0x59, 0x51, 0x9e, 0xad, 0x79, 0x95, 0xa6, 0xdf, 0x89, 0xbb, 0x54, 0xc8, 0x40, 0xd6, 0x1a, 0x84, 0x81, 0x88, 0x10, 0x98, 0xb8, 0xa4, 0xf8, 0x3c, 0x6a, 0x2f, 0x6b, 0xa8, 0x00, 0x33, 0x82, 0x57, }; static const unsigned char xdh_wei25519_836_ourpubkey[] = { 0x6a, 0x91, 0xe9, 0x54, 0x11, 0xd6, 0x27, 0x71, 0xea, 0x84, 0xb6, 0xf8, 0x94, 0xe0, 0x76, 0x77, 0x84, 0x09, 0xaa, 0x9f, 0xfe, 0xd2, 0x4f, 0x72, 0x02, 0x2b, 0x62, 0xac, 0xb8, 0x02, 0x2c, 0x50, }; static const unsigned char xdh_wei25519_836_privkey[] = { 0xa8, 0x3c, 0x11, 0xb2, 0x83, 0x41, 0x36, 0xb9, 0xaa, 0xf0, 0x15, 0x2d, 0x90, 0xe7, 0x6e, 0x3c, 0x27, 0x17, 0x76, 0x93, 0xa2, 0x83, 0x4e, 0x8b, 0xed, 0xa0, 0xa3, 0x57, 0x1b, 0xce, 0x69, 0x47, }; static const unsigned char xdh_wei25519_836_sharedsecret[] = { 0x4e, 0xd6, 0xf8, 0xd6, 0x29, 0x32, 0x54, 0x1c, 0x6b, 0xea, 0x16, 0xe0, 0x38, 0x35, 0xf1, 0xf7, 0x58, 0xa5, 0xc4, 0x17, 0x22, 0xb5, 0xc9, 0x98, 0x9c, 0x9c, 0x7c, 0xc0, 0x8e, 0x34, 0xe3, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_836 = { .name = "xdh_wei25519_836", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_836_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_836_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_836_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_836_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 319 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 837 for XDH, tcId is 320 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_837_peerpubkey[] = { 0x32, 0xf3, 0x4d, 0xa8, 0x4a, 0xb4, 0xbf, 0xca, 0x36, 0x9c, 0x4b, 0x88, 0x46, 0x91, 0xbe, 0xcf, 0x54, 0xbe, 0x7f, 0xbe, 0xd1, 0x64, 0x49, 0xdc, 0x86, 0x96, 0x9d, 0xa7, 0xea, 0x9a, 0xbf, 0x62, }; static const unsigned char xdh_wei25519_837_ourpubkey[] = { 0x87, 0x9a, 0x72, 0xe0, 0x67, 0xc6, 0xd7, 0x17, 0x93, 0x52, 0xa8, 0xa2, 0xc4, 0xc1, 0xa0, 0x14, 0xf6, 0xa6, 0xf0, 0x4b, 0x05, 0x52, 0x15, 0xd4, 0x6a, 0xab, 0xfc, 0x91, 0x64, 0x8b, 0x36, 0x43, }; static const unsigned char xdh_wei25519_837_privkey[] = { 0xb8, 0x0d, 0x87, 0x95, 0x73, 0x58, 0x06, 0x57, 0x9e, 0x71, 0x75, 0x98, 0x94, 0x93, 0x9d, 0x75, 0x88, 0x53, 0x59, 0x21, 0x27, 0xef, 0xe8, 0x4f, 0xc8, 0x2e, 0xb7, 0xcd, 0xee, 0x45, 0x01, 0x4f, }; static const unsigned char xdh_wei25519_837_sharedsecret[] = { 0x52, 0x1a, 0x5b, 0x81, 0x49, 0xa1, 0x32, 0xd1, 0x55, 0xe6, 0xb4, 0xed, 0x11, 0x39, 0x00, 0x50, 0x6c, 0xfc, 0x2f, 0x76, 0xd2, 0xa3, 0xe1, 0x41, 0x96, 0xd6, 0x9e, 0xb8, 0x5d, 0xb3, 0xc9, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_837 = { .name = "xdh_wei25519_837", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_837_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_837_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_837_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_837_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 320 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 838 for XDH, tcId is 321 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_838_peerpubkey[] = { 0x82, 0xae, 0x48, 0xdc, 0xf5, 0x9b, 0xc5, 0xe4, 0x69, 0xf9, 0xa1, 0x1b, 0x18, 0xa3, 0x2d, 0x47, 0x53, 0xac, 0x81, 0x86, 0x92, 0xdf, 0xae, 0x27, 0xd6, 0x75, 0x41, 0x1a, 0x22, 0x72, 0xb3, 0x63, }; static const unsigned char xdh_wei25519_838_ourpubkey[] = { 0xfc, 0x9e, 0x6b, 0xd2, 0xf1, 0x63, 0x0e, 0x59, 0x6e, 0xd6, 0x7c, 0x4c, 0x17, 0x59, 0x53, 0x78, 0x6e, 0xd9, 0xd8, 0x34, 0xfb, 0x64, 0xab, 0x16, 0xc8, 0x74, 0xe9, 0x74, 0x7a, 0xb2, 0x43, 0x23, }; static const unsigned char xdh_wei25519_838_privkey[] = { 0xe0, 0x8f, 0xfa, 0x45, 0xef, 0xbe, 0x1f, 0x96, 0x58, 0x4c, 0x76, 0x25, 0x45, 0x54, 0xad, 0xb9, 0x17, 0x7b, 0x58, 0xed, 0x09, 0x60, 0x9a, 0x6c, 0xe4, 0x99, 0xe5, 0xbd, 0x22, 0xd3, 0x5c, 0x45, }; static const unsigned char xdh_wei25519_838_sharedsecret[] = { 0xe8, 0x31, 0xd6, 0xce, 0xe9, 0x5c, 0xa1, 0xb4, 0xc9, 0x6b, 0xb8, 0x94, 0x57, 0x56, 0x2f, 0xff, 0x36, 0xcb, 0x4d, 0x08, 0xb8, 0x1d, 0xa8, 0x9b, 0x81, 0x0b, 0x42, 0x5e, 0xcd, 0xba, 0xfd, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_838 = { .name = "xdh_wei25519_838", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_838_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_838_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_838_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_838_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 321 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 839 for XDH, tcId is 322 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_839_peerpubkey[] = { 0xb3, 0x3b, 0xd3, 0xad, 0x14, 0xb6, 0x68, 0x96, 0xf9, 0x71, 0xcb, 0xdf, 0x27, 0x78, 0x5f, 0xc3, 0xaa, 0x3c, 0xfb, 0x39, 0xad, 0xc6, 0xc2, 0x92, 0x57, 0xd2, 0x2e, 0xa4, 0xdf, 0x8c, 0xbf, 0x63, }; static const unsigned char xdh_wei25519_839_ourpubkey[] = { 0x7e, 0x8b, 0xee, 0xb7, 0x61, 0xb6, 0x6d, 0x50, 0x1a, 0x74, 0x84, 0x67, 0xb5, 0xbd, 0x7e, 0x59, 0x5c, 0x0c, 0x50, 0xbb, 0x52, 0xd3, 0xaf, 0x27, 0x13, 0xfe, 0xae, 0x13, 0xca, 0xfe, 0xa6, 0x1c, }; static const unsigned char xdh_wei25519_839_privkey[] = { 0x68, 0x8e, 0x1b, 0xbb, 0x51, 0x14, 0xf3, 0x4e, 0x85, 0x31, 0xc2, 0x78, 0xb2, 0xd9, 0x71, 0x4b, 0xa0, 0x7c, 0x32, 0xa7, 0xae, 0xa6, 0xe6, 0x27, 0x13, 0x5b, 0xd1, 0xfc, 0x65, 0x23, 0x80, 0x45, }; static const unsigned char xdh_wei25519_839_sharedsecret[] = { 0x35, 0x0e, 0x3a, 0xb9, 0xd0, 0xdb, 0xff, 0x78, 0xf3, 0xf2, 0x15, 0x74, 0x28, 0xbe, 0xba, 0x18, 0x93, 0x33, 0xbe, 0x27, 0x48, 0x27, 0xc1, 0x0d, 0x59, 0x67, 0x3f, 0x21, 0xc0, 0xc4, 0x8a, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_839 = { .name = "xdh_wei25519_839", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_839_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_839_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_839_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_839_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 322 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 840 for XDH, tcId is 323 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_840_peerpubkey[] = { 0x18, 0xe5, 0x8d, 0xf6, 0xbf, 0xbe, 0x18, 0x4b, 0x0e, 0x3c, 0x7c, 0x4b, 0xf2, 0xa0, 0x51, 0xed, 0x05, 0x5b, 0x79, 0x35, 0x01, 0xc0, 0xd4, 0xfc, 0x47, 0xbc, 0x8a, 0x95, 0xc4, 0xde, 0xec, 0x7c, }; static const unsigned char xdh_wei25519_840_ourpubkey[] = { 0x94, 0x84, 0xc2, 0x67, 0xfa, 0x71, 0xaf, 0xac, 0xd5, 0xb0, 0xc3, 0xef, 0x08, 0x3f, 0x61, 0x09, 0xa4, 0xd6, 0xde, 0xfa, 0x35, 0xff, 0xa8, 0x68, 0x78, 0xe7, 0x15, 0xf5, 0x3f, 0x05, 0x1d, 0x2e, }; static const unsigned char xdh_wei25519_840_privkey[] = { 0x80, 0x36, 0xa4, 0xe2, 0xe9, 0x3e, 0x9e, 0xd8, 0x2d, 0x99, 0xd7, 0x1a, 0x52, 0x2a, 0xac, 0x92, 0x89, 0xbd, 0x99, 0x05, 0xfe, 0x41, 0xd0, 0x1d, 0x08, 0xa4, 0x99, 0x37, 0x6a, 0x25, 0x84, 0x42, }; static const unsigned char xdh_wei25519_840_sharedsecret[] = { 0xad, 0xe7, 0x1d, 0x64, 0x60, 0x28, 0x7f, 0xe8, 0x08, 0xe9, 0x47, 0x56, 0x0e, 0x67, 0xa9, 0xd6, 0xff, 0x2f, 0x96, 0xea, 0xa1, 0x35, 0x5d, 0x2e, 0x9f, 0xbb, 0xe5, 0x49, 0xe8, 0x83, 0x38, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_840 = { .name = "xdh_wei25519_840", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_840_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_840_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_840_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_840_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 323 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 841 for XDH, tcId is 324 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_841_peerpubkey[] = { 0x77, 0x2e, 0x31, 0xe7, 0x76, 0xe8, 0xd4, 0xf2, 0x3b, 0x7a, 0xf2, 0x03, 0x7a, 0xf2, 0x8a, 0x37, 0xe6, 0x8f, 0x61, 0xe7, 0x40, 0xb3, 0x90, 0x4f, 0x4e, 0xc4, 0xc9, 0x01, 0x57, 0xbe, 0x14, 0x78, }; static const unsigned char xdh_wei25519_841_ourpubkey[] = { 0x9d, 0x2d, 0x60, 0xaa, 0x00, 0x77, 0xdd, 0x0f, 0xbe, 0x74, 0x84, 0x60, 0x21, 0x09, 0x6c, 0x26, 0xbe, 0x26, 0x27, 0x3e, 0x3d, 0x8c, 0xff, 0x84, 0xed, 0x3b, 0x98, 0x56, 0x3c, 0x88, 0xfd, 0x4c, }; static const unsigned char xdh_wei25519_841_privkey[] = { 0x90, 0x1b, 0x20, 0xf0, 0xcd, 0xa7, 0x40, 0x76, 0xc3, 0xd4, 0xbf, 0x4e, 0x02, 0x65, 0x3c, 0xd4, 0x06, 0xed, 0x48, 0x0c, 0x35, 0x51, 0x59, 0xe2, 0x2c, 0xa4, 0x4b, 0x98, 0x4f, 0x10, 0x76, 0x4f, }; static const unsigned char xdh_wei25519_841_sharedsecret[] = { 0x91, 0xa9, 0xbe, 0xc2, 0x8c, 0xf1, 0x8c, 0x70, 0x94, 0xe2, 0xd8, 0x0d, 0x27, 0x64, 0xdf, 0x59, 0xad, 0xa0, 0xcb, 0x19, 0x46, 0xbe, 0x42, 0x28, 0x64, 0xbd, 0x7a, 0xd0, 0xe5, 0x33, 0xb6, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_841 = { .name = "xdh_wei25519_841", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_841_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_841_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_841_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_841_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 324 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 842 for XDH, tcId is 325 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_842_peerpubkey[] = { 0xa8, 0xd5, 0x5d, 0x5c, 0x11, 0x37, 0xe9, 0xbb, 0x62, 0x65, 0x57, 0xf9, 0xd6, 0xee, 0xa8, 0xd3, 0x12, 0x0e, 0x93, 0x64, 0xf8, 0xbc, 0xd9, 0xb6, 0x79, 0x34, 0x26, 0x0b, 0x1a, 0x09, 0x18, 0x01, }; static const unsigned char xdh_wei25519_842_ourpubkey[] = { 0xe2, 0xf3, 0x48, 0x36, 0x62, 0x10, 0x79, 0x75, 0x7e, 0xc5, 0x9e, 0x86, 0xb5, 0x28, 0x83, 0x66, 0x81, 0xe2, 0xd0, 0xc6, 0x18, 0xb6, 0xfc, 0x99, 0x28, 0x13, 0x16, 0xd5, 0x07, 0xd3, 0x0f, 0x74, }; static const unsigned char xdh_wei25519_842_privkey[] = { 0xd8, 0x3e, 0xb7, 0xaf, 0xfd, 0x1b, 0xcc, 0x1e, 0xc0, 0xb4, 0x82, 0x3c, 0xee, 0x5c, 0xf0, 0xb1, 0x5b, 0x5f, 0x57, 0x08, 0x5a, 0xa2, 0x70, 0x8e, 0xd4, 0x37, 0xa2, 0x92, 0x53, 0x29, 0xb5, 0x50, }; static const unsigned char xdh_wei25519_842_sharedsecret[] = { 0x6c, 0x1b, 0x8e, 0x24, 0x0e, 0xdf, 0xa5, 0xdb, 0x2a, 0xbb, 0x3d, 0xc1, 0x2b, 0xcf, 0x9e, 0x8a, 0xc9, 0xca, 0x10, 0xdd, 0x35, 0x07, 0x08, 0x37, 0x46, 0xf6, 0xf3, 0x6d, 0xc0, 0x35, 0xd7, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_842 = { .name = "xdh_wei25519_842", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_842_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_842_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_842_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_842_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 325 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 843 for XDH, tcId is 326 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_843_peerpubkey[] = { 0x33, 0xc9, 0x4b, 0xe5, 0x8b, 0x0f, 0x0e, 0x6c, 0xf3, 0x63, 0xe1, 0xb1, 0x2a, 0x2e, 0xbf, 0xb9, 0x30, 0x40, 0x71, 0x5b, 0xe9, 0x15, 0x18, 0xf2, 0x1d, 0xf2, 0x95, 0x3e, 0xea, 0xb5, 0xfb, 0x01, }; static const unsigned char xdh_wei25519_843_ourpubkey[] = { 0xf5, 0x21, 0x46, 0x9f, 0x90, 0x93, 0x92, 0x8a, 0x6e, 0xee, 0xa6, 0x43, 0xdd, 0x98, 0x1b, 0x6d, 0xb3, 0xbd, 0x0a, 0x2f, 0x07, 0x88, 0xe1, 0x40, 0xe8, 0xb2, 0xc4, 0xf3, 0xe7, 0xb0, 0xf5, 0x49, }; static const unsigned char xdh_wei25519_843_privkey[] = { 0x98, 0x9e, 0xee, 0x31, 0x7b, 0x9c, 0x25, 0x4d, 0xc0, 0x23, 0xf9, 0xe3, 0x5e, 0xff, 0x02, 0x24, 0xbc, 0x2e, 0x0b, 0xc8, 0x71, 0x99, 0x6b, 0x94, 0x6a, 0x96, 0x97, 0x0e, 0x75, 0x06, 0xa8, 0x5e, }; static const unsigned char xdh_wei25519_843_sharedsecret[] = { 0xd4, 0xc3, 0xb3, 0x46, 0x77, 0x14, 0xf2, 0xd1, 0x05, 0x90, 0x4a, 0x84, 0xcc, 0x7e, 0x81, 0xd7, 0xf2, 0x91, 0x30, 0x4e, 0x90, 0x80, 0x41, 0x68, 0x2d, 0x89, 0x06, 0xa6, 0x83, 0xc1, 0x21, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_843 = { .name = "xdh_wei25519_843", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_843_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_843_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_843_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_843_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 326 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 844 for XDH, tcId is 327 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_844_peerpubkey[] = { 0xa2, 0x18, 0xae, 0x96, 0x24, 0xb0, 0x7c, 0xe0, 0x51, 0x78, 0xb9, 0xd0, 0xcc, 0x1b, 0x71, 0xde, 0xe2, 0x1f, 0x27, 0x85, 0x2a, 0x2c, 0xeb, 0x18, 0x61, 0x0b, 0x40, 0x52, 0xb2, 0x44, 0xf0, 0x0f, }; static const unsigned char xdh_wei25519_844_ourpubkey[] = { 0xeb, 0xc6, 0x72, 0x7d, 0x0f, 0xc9, 0x57, 0xc1, 0xbe, 0x3e, 0x61, 0xde, 0xc4, 0xa8, 0xd6, 0xe8, 0x5c, 0x87, 0x93, 0xc7, 0x9c, 0xe8, 0x03, 0x72, 0x4d, 0x7c, 0x2a, 0xb8, 0x09, 0xe0, 0x67, 0x49, }; static const unsigned char xdh_wei25519_844_privkey[] = { 0xb8, 0x35, 0x54, 0x55, 0xd3, 0x58, 0xf2, 0xdd, 0x7c, 0x57, 0x07, 0xb2, 0xc6, 0x97, 0x3c, 0x9c, 0x27, 0xb9, 0x9e, 0x7d, 0x8a, 0xc1, 0x65, 0x0c, 0x79, 0x1e, 0x5f, 0xdb, 0xcb, 0xea, 0x49, 0x57, }; static const unsigned char xdh_wei25519_844_sharedsecret[] = { 0x1e, 0xbe, 0x6c, 0xa7, 0x11, 0xa6, 0x49, 0xae, 0x48, 0x7b, 0x33, 0x27, 0x47, 0xe3, 0xdc, 0x03, 0x06, 0x34, 0x05, 0x60, 0xca, 0xb6, 0xbc, 0x60, 0x29, 0xe4, 0x4f, 0x6a, 0x7e, 0x0e, 0xe4, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_844 = { .name = "xdh_wei25519_844", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_844_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_844_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_844_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_844_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 327 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 845 for XDH, tcId is 328 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_845_peerpubkey[] = { 0xd7, 0x06, 0x7f, 0xae, 0xaf, 0xd3, 0xe9, 0x66, 0xe5, 0x75, 0x25, 0xf9, 0x30, 0xb3, 0x31, 0x7c, 0x9e, 0x8b, 0x9c, 0x9a, 0x9a, 0xe9, 0x46, 0xe7, 0x6c, 0x1e, 0x46, 0x02, 0xa5, 0x9a, 0x7e, 0x33, }; static const unsigned char xdh_wei25519_845_ourpubkey[] = { 0xad, 0xad, 0xf5, 0xfb, 0x98, 0x14, 0x8e, 0xed, 0xfc, 0x64, 0x44, 0xe8, 0x57, 0x2f, 0x22, 0xf8, 0x05, 0x4e, 0x14, 0xad, 0x13, 0xc5, 0x6e, 0x6a, 0xde, 0x36, 0x10, 0x20, 0xe8, 0x52, 0x78, 0x43, }; static const unsigned char xdh_wei25519_845_privkey[] = { 0x80, 0x65, 0x56, 0x7e, 0xf0, 0x82, 0xb1, 0x6c, 0x20, 0x85, 0x34, 0x87, 0xf5, 0x48, 0x93, 0x01, 0x2b, 0xa4, 0x76, 0x22, 0x24, 0xe5, 0xc5, 0x9f, 0x25, 0x0d, 0xfb, 0xf8, 0x25, 0x81, 0xe8, 0x5a, }; static const unsigned char xdh_wei25519_845_sharedsecret[] = { 0x03, 0xe7, 0xa7, 0x77, 0xe6, 0x48, 0xbd, 0xc6, 0x12, 0x18, 0x9f, 0x3c, 0xd4, 0x2d, 0x34, 0xe3, 0x57, 0x36, 0xd3, 0xe5, 0x2e, 0x6e, 0xdc, 0x8a, 0xc8, 0x73, 0xa5, 0x8e, 0x24, 0x4a, 0x60, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_845 = { .name = "xdh_wei25519_845", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_845_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_845_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_845_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_845_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 328 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 846 for XDH, tcId is 329 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_846_peerpubkey[] = { 0x8d, 0xf9, 0x68, 0x2c, 0xbe, 0x88, 0x02, 0x47, 0x8a, 0x85, 0x31, 0x37, 0x7e, 0x75, 0x2c, 0xdd, 0xe5, 0x47, 0x38, 0xd5, 0x28, 0xd6, 0x39, 0xbe, 0xa9, 0xea, 0xf4, 0x77, 0x02, 0xf8, 0xbf, 0x3b, }; static const unsigned char xdh_wei25519_846_ourpubkey[] = { 0x7f, 0x18, 0x4c, 0x49, 0xdf, 0xab, 0x2e, 0x17, 0x97, 0x12, 0x2f, 0x71, 0xe3, 0x62, 0x92, 0xd6, 0x25, 0x22, 0xab, 0x40, 0xd1, 0x59, 0xa7, 0xf0, 0x15, 0x28, 0x1a, 0x7f, 0xe4, 0xc9, 0x6a, 0x28, }; static const unsigned char xdh_wei25519_846_privkey[] = { 0x00, 0xb5, 0x14, 0x48, 0x13, 0x9a, 0x61, 0xfe, 0x6c, 0x5f, 0xbf, 0x93, 0x95, 0x87, 0x7d, 0x53, 0xd8, 0x20, 0xef, 0x59, 0xda, 0x3b, 0xe8, 0x56, 0x45, 0x8b, 0x5e, 0xb9, 0x09, 0x85, 0xba, 0x53, }; static const unsigned char xdh_wei25519_846_sharedsecret[] = { 0x30, 0x8e, 0xf9, 0x9d, 0xae, 0x10, 0x64, 0xa4, 0x44, 0xfa, 0x90, 0x77, 0x5b, 0x5d, 0xd5, 0xb1, 0x95, 0x2d, 0x72, 0x24, 0xa0, 0xe5, 0xae, 0x03, 0x1d, 0xf4, 0x32, 0x64, 0x0f, 0x41, 0x62, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_846 = { .name = "xdh_wei25519_846", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_846_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_846_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_846_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_846_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 329 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 847 for XDH, tcId is 330 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_847_peerpubkey[] = { 0x7d, 0x92, 0x70, 0x68, 0x68, 0xaa, 0x09, 0x53, 0x86, 0x38, 0xd6, 0x33, 0xc2, 0x55, 0xf3, 0x33, 0xb9, 0xda, 0x03, 0xbc, 0x74, 0xb4, 0x9b, 0x35, 0x94, 0x1c, 0x57, 0x82, 0x0c, 0xd3, 0xfd, 0x47, }; static const unsigned char xdh_wei25519_847_ourpubkey[] = { 0x4c, 0xff, 0xb3, 0x2b, 0x87, 0x29, 0xe2, 0x8b, 0x3b, 0x2a, 0xb7, 0x82, 0x9b, 0xff, 0xb1, 0x4b, 0xec, 0x66, 0x94, 0x44, 0xe5, 0x9c, 0xc7, 0x87, 0xbb, 0xa4, 0xe3, 0x19, 0x7c, 0x98, 0x09, 0x7f, }; static const unsigned char xdh_wei25519_847_privkey[] = { 0xe8, 0xeb, 0x9f, 0x6f, 0x62, 0xf9, 0x3d, 0xbc, 0x32, 0x5b, 0x83, 0x3a, 0xa7, 0x63, 0xa9, 0x0f, 0x13, 0xf0, 0xac, 0xb2, 0xc2, 0xc4, 0xb8, 0xb3, 0x3d, 0xec, 0xd4, 0x71, 0xce, 0x70, 0xc4, 0x5f, }; static const unsigned char xdh_wei25519_847_sharedsecret[] = { 0xf3, 0x3e, 0x2e, 0x86, 0x44, 0x3a, 0x2c, 0x68, 0x82, 0x3b, 0x72, 0xa2, 0xb5, 0x9d, 0x6a, 0x02, 0x8e, 0x0a, 0x8e, 0x28, 0x3c, 0xfe, 0x29, 0xfe, 0xa4, 0xf7, 0xaa, 0x22, 0xbd, 0x1a, 0xfe, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_847 = { .name = "xdh_wei25519_847", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_847_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_847_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_847_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_847_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 330 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 848 for XDH, tcId is 331 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_848_peerpubkey[] = { 0xdf, 0xb1, 0xff, 0xc1, 0x76, 0xaf, 0xf8, 0x4d, 0xb3, 0x01, 0x82, 0xd2, 0x37, 0x8f, 0x83, 0x72, 0x8f, 0x83, 0xdd, 0x1b, 0x33, 0xd7, 0x98, 0x56, 0xf3, 0xda, 0x54, 0x59, 0xcf, 0x9d, 0xf9, 0x07, }; static const unsigned char xdh_wei25519_848_ourpubkey[] = { 0x5d, 0x54, 0x70, 0x6e, 0xd3, 0x3d, 0x06, 0x40, 0x0f, 0xb2, 0x4a, 0x11, 0x52, 0xb4, 0xcc, 0x28, 0x52, 0x08, 0xfc, 0x4c, 0x7f, 0x21, 0x0b, 0x20, 0xba, 0x22, 0xde, 0xe0, 0x8a, 0x08, 0xdc, 0x49, }; static const unsigned char xdh_wei25519_848_privkey[] = { 0x68, 0xa1, 0xa7, 0xcc, 0xc5, 0x0b, 0xab, 0x4b, 0x01, 0xe5, 0x5e, 0x18, 0xcb, 0xd4, 0x64, 0xaf, 0xf4, 0x31, 0x31, 0xfb, 0x07, 0x41, 0xe6, 0x8d, 0x53, 0xcd, 0xeb, 0xfc, 0x54, 0xf3, 0x30, 0x51, }; static const unsigned char xdh_wei25519_848_sharedsecret[] = { 0x7b, 0x53, 0x5f, 0xc3, 0x1c, 0x6c, 0x2a, 0x38, 0x03, 0xd8, 0xbd, 0x45, 0x41, 0x0a, 0x17, 0x81, 0xbd, 0x90, 0xa0, 0x92, 0x05, 0xda, 0x28, 0xc9, 0xdf, 0x12, 0x0d, 0xf2, 0x3a, 0x9f, 0xa3, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_848 = { .name = "xdh_wei25519_848", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_848_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_848_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_848_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_848_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 331 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 849 for XDH, tcId is 332 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_849_peerpubkey[] = { 0x12, 0xe8, 0x1e, 0x83, 0x8b, 0x21, 0xea, 0xc9, 0x6d, 0xc1, 0x30, 0x43, 0x25, 0x71, 0x21, 0x6d, 0x7a, 0x9b, 0x4a, 0x81, 0x7f, 0x19, 0x38, 0x72, 0x1d, 0x22, 0x67, 0xdd, 0x15, 0x0e, 0xbf, 0x20, }; static const unsigned char xdh_wei25519_849_ourpubkey[] = { 0x32, 0x38, 0xae, 0xf5, 0xee, 0x95, 0xfb, 0x3b, 0x66, 0x9f, 0x87, 0x15, 0x0e, 0x8f, 0x60, 0x28, 0x1a, 0x47, 0xda, 0x3e, 0x6d, 0xe0, 0xc1, 0xbe, 0x7b, 0xa1, 0xa5, 0xaf, 0x59, 0x31, 0x4d, 0x3f, }; static const unsigned char xdh_wei25519_849_privkey[] = { 0xe0, 0x75, 0xbc, 0xfc, 0x16, 0x5a, 0x47, 0x1b, 0x2f, 0x76, 0xc3, 0x00, 0x3f, 0xb0, 0x17, 0x2c, 0x82, 0xf7, 0x07, 0x13, 0x7d, 0xe2, 0xfa, 0x70, 0x82, 0xe4, 0x3a, 0x87, 0xa2, 0x55, 0x93, 0x5c, }; static const unsigned char xdh_wei25519_849_sharedsecret[] = { 0xca, 0x23, 0xa7, 0x81, 0xda, 0x09, 0x11, 0xe4, 0x11, 0x5a, 0x29, 0xa9, 0xf5, 0x64, 0x47, 0x15, 0x7c, 0x23, 0xbe, 0xe1, 0x87, 0xb0, 0xc1, 0x73, 0x69, 0xc4, 0xf7, 0x73, 0x0d, 0x78, 0x17, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_849 = { .name = "xdh_wei25519_849", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_849_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_849_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_849_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_849_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 332 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 850 for XDH, tcId is 333 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_850_peerpubkey[] = { 0x83, 0x2a, 0x46, 0xae, 0xc0, 0x22, 0x40, 0xd7, 0x16, 0xfe, 0x22, 0xde, 0xa9, 0x4a, 0xd5, 0x66, 0xa3, 0xfa, 0xfb, 0xee, 0xdc, 0xce, 0x35, 0xc8, 0x3e, 0x41, 0xe5, 0x80, 0x76, 0xc9, 0x97, 0x49, }; static const unsigned char xdh_wei25519_850_ourpubkey[] = { 0x5b, 0xb2, 0x52, 0xea, 0xf2, 0x64, 0x02, 0xf9, 0x0a, 0x09, 0xef, 0x3d, 0xa9, 0xbd, 0xd0, 0x9e, 0xc1, 0x6c, 0x8c, 0xa1, 0x9e, 0xad, 0x9d, 0xb1, 0xd3, 0x9d, 0x6f, 0x41, 0x31, 0x33, 0x30, 0x29, }; static const unsigned char xdh_wei25519_850_privkey[] = { 0xc0, 0xe1, 0x96, 0x34, 0xdb, 0xf6, 0x46, 0x0e, 0x14, 0x86, 0x93, 0x0c, 0x46, 0xe8, 0x55, 0x6b, 0x3c, 0x16, 0xd6, 0xde, 0x95, 0x99, 0x04, 0x60, 0x05, 0x49, 0xbb, 0x3e, 0x08, 0x60, 0x34, 0x55, }; static const unsigned char xdh_wei25519_850_sharedsecret[] = { 0xcd, 0x06, 0x86, 0xb3, 0x2e, 0xa4, 0xcd, 0xdb, 0x8e, 0x13, 0xff, 0x20, 0xa7, 0x8d, 0x38, 0x07, 0x49, 0xa5, 0xd4, 0xf6, 0xa3, 0xdc, 0x55, 0xd7, 0x2f, 0x48, 0x13, 0xd9, 0x49, 0xa0, 0xea, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_850 = { .name = "xdh_wei25519_850", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_850_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_850_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_850_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_850_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 333 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 851 for XDH, tcId is 334 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_851_peerpubkey[] = { 0x8c, 0x80, 0x33, 0x43, 0x2b, 0xcc, 0x12, 0xd4, 0x79, 0xf6, 0x7d, 0x6d, 0x87, 0x6b, 0x1c, 0x8e, 0x89, 0xf1, 0x6a, 0x23, 0x4b, 0x9b, 0x09, 0x33, 0x22, 0xef, 0xfa, 0x9d, 0xee, 0x94, 0x55, 0x4d, }; static const unsigned char xdh_wei25519_851_ourpubkey[] = { 0xbb, 0xd4, 0x45, 0x94, 0xb1, 0x48, 0x90, 0x48, 0x69, 0x5f, 0xed, 0x4b, 0xf3, 0x9f, 0xfd, 0x01, 0xcb, 0xc3, 0xaa, 0xa4, 0xe1, 0xa2, 0x61, 0xf0, 0x64, 0x61, 0x3b, 0xb9, 0x26, 0xed, 0x93, 0x27, }; static const unsigned char xdh_wei25519_851_privkey[] = { 0xb8, 0x4c, 0xaa, 0x18, 0xac, 0xc3, 0xdb, 0x37, 0x22, 0x5d, 0x32, 0xca, 0xb4, 0xf6, 0x0e, 0x6f, 0xba, 0x4a, 0xca, 0xb1, 0x27, 0x7e, 0x20, 0x42, 0x5d, 0x30, 0xf9, 0x4c, 0xab, 0x2e, 0x2c, 0x55, }; static const unsigned char xdh_wei25519_851_sharedsecret[] = { 0xa9, 0x50, 0xaa, 0x57, 0xbb, 0x2b, 0xeb, 0x9e, 0xd5, 0xd3, 0x22, 0x8c, 0x7e, 0xf4, 0x48, 0xda, 0xb6, 0x95, 0x52, 0xf3, 0xd3, 0xb1, 0xe4, 0x66, 0xac, 0xcf, 0x41, 0xbf, 0xb6, 0xd5, 0xb8, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_851 = { .name = "xdh_wei25519_851", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_851_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_851_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_851_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_851_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 334 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 852 for XDH, tcId is 335 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_852_peerpubkey[] = { 0x6d, 0xf7, 0x99, 0xbb, 0xa6, 0xcd, 0xf5, 0xf4, 0x6a, 0x57, 0xab, 0x22, 0x7f, 0x93, 0xfb, 0xa4, 0x91, 0xda, 0xd2, 0x96, 0xa2, 0xfd, 0xb7, 0xe4, 0x91, 0x92, 0x1d, 0x61, 0x0c, 0xce, 0x8f, 0x5e, }; static const unsigned char xdh_wei25519_852_ourpubkey[] = { 0x69, 0xc3, 0xbc, 0x1f, 0xf3, 0x18, 0x29, 0xcb, 0x18, 0x4c, 0x66, 0xe8, 0x1e, 0xf3, 0x7a, 0xa9, 0x09, 0x96, 0x0b, 0xdb, 0x8d, 0xf8, 0xe2, 0x26, 0xdb, 0xe1, 0x7c, 0xda, 0xee, 0x1a, 0xb9, 0x0a, }; static const unsigned char xdh_wei25519_852_privkey[] = { 0x28, 0x96, 0x81, 0x8c, 0xdd, 0xf5, 0x72, 0x52, 0x19, 0x43, 0xe9, 0xf0, 0xc5, 0xe8, 0x45, 0xf5, 0x30, 0xb7, 0x40, 0x42, 0x75, 0x88, 0xa0, 0xf6, 0xde, 0x25, 0x04, 0xbd, 0x5b, 0xf4, 0x0c, 0x53, }; static const unsigned char xdh_wei25519_852_sharedsecret[] = { 0x54, 0xf5, 0xae, 0x57, 0xe6, 0x76, 0xd0, 0x8c, 0x8f, 0x8a, 0x3c, 0xf8, 0x91, 0xe3, 0x6d, 0xda, 0xab, 0x75, 0x10, 0x93, 0xf9, 0x2f, 0x40, 0x90, 0x60, 0xc5, 0x7e, 0x74, 0x59, 0x41, 0x70, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_852 = { .name = "xdh_wei25519_852", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_852_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_852_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_852_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_852_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 335 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 853 for XDH, tcId is 336 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_853_peerpubkey[] = { 0x0c, 0x80, 0x90, 0xe1, 0xcf, 0xe7, 0xf7, 0x61, 0xcf, 0xdf, 0x08, 0xd9, 0x44, 0xd4, 0xae, 0xb7, 0xa5, 0x09, 0xa0, 0x7a, 0x61, 0x01, 0x64, 0x5b, 0x9a, 0x4c, 0x7c, 0x9e, 0x9c, 0x3d, 0x46, 0x09, }; static const unsigned char xdh_wei25519_853_ourpubkey[] = { 0x27, 0xa8, 0xbd, 0x61, 0x74, 0x7f, 0xa9, 0x6d, 0x1e, 0x14, 0xe9, 0xcf, 0xef, 0x36, 0xdc, 0xa5, 0x35, 0x6b, 0x69, 0xdf, 0xb2, 0x4c, 0x0b, 0x3a, 0x15, 0x57, 0x24, 0x52, 0xf1, 0x90, 0xeb, 0x39, }; static const unsigned char xdh_wei25519_853_privkey[] = { 0xa0, 0x1f, 0x0c, 0xad, 0x98, 0xcf, 0x29, 0x05, 0xb8, 0x12, 0xd3, 0x53, 0x05, 0x31, 0xbb, 0x3a, 0xc8, 0x99, 0x39, 0x1a, 0xbd, 0x1e, 0xaf, 0x4a, 0x3e, 0xbe, 0xd9, 0x6a, 0xc6, 0x12, 0x6f, 0x58, }; static const unsigned char xdh_wei25519_853_sharedsecret[] = { 0x2d, 0x49, 0xb0, 0x9f, 0x81, 0xf3, 0xf6, 0xfa, 0xb2, 0xc6, 0x7e, 0x32, 0xf1, 0xbc, 0xea, 0xd2, 0xad, 0x09, 0xac, 0x9e, 0x0d, 0x64, 0x2b, 0x08, 0x73, 0xbe, 0xcf, 0xb6, 0x4d, 0xe2, 0xab, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_853 = { .name = "xdh_wei25519_853", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_853_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_853_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_853_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_853_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 336 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 854 for XDH, tcId is 337 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_854_peerpubkey[] = { 0x08, 0x35, 0x29, 0x36, 0xc8, 0xaf, 0xd8, 0x54, 0x3a, 0xc9, 0x5f, 0x24, 0xbc, 0xe9, 0xa0, 0x7e, 0x3e, 0x32, 0x35, 0x76, 0x3e, 0xa5, 0x12, 0xa5, 0x84, 0x29, 0x89, 0x67, 0xb8, 0x3c, 0x07, 0x0a, }; static const unsigned char xdh_wei25519_854_ourpubkey[] = { 0x3b, 0xf4, 0x2f, 0x3e, 0x35, 0xf4, 0x58, 0x27, 0x8c, 0xa8, 0x25, 0x3e, 0xa7, 0xc3, 0x50, 0xc5, 0x99, 0x7a, 0x56, 0xfe, 0xd0, 0x76, 0x8a, 0x0c, 0x7e, 0x0f, 0x3e, 0x21, 0xc8, 0xcb, 0xfd, 0x47, }; static const unsigned char xdh_wei25519_854_privkey[] = { 0x10, 0x6b, 0x36, 0x34, 0x4c, 0xc4, 0xa5, 0xa3, 0x89, 0xd8, 0x16, 0x81, 0x37, 0x78, 0x68, 0x06, 0xff, 0x03, 0xcd, 0x4a, 0x00, 0xf8, 0x63, 0x6b, 0xb7, 0xe7, 0x58, 0xd4, 0x56, 0x15, 0x1d, 0x59, }; static const unsigned char xdh_wei25519_854_sharedsecret[] = { 0xa1, 0x99, 0x36, 0x8e, 0x68, 0x3c, 0x30, 0x36, 0xa4, 0x8f, 0x4c, 0x5f, 0x32, 0xb3, 0x2a, 0x54, 0x7d, 0xd3, 0x9f, 0x3d, 0x10, 0x07, 0xca, 0x0a, 0x0b, 0xeb, 0xca, 0xd0, 0xa8, 0xac, 0x6f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_854 = { .name = "xdh_wei25519_854", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_854_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_854_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_854_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_854_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 337 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 855 for XDH, tcId is 338 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_855_peerpubkey[] = { 0x73, 0xbd, 0xee, 0xf8, 0xcc, 0x04, 0x4f, 0x5a, 0xd8, 0xd6, 0xa2, 0x41, 0x27, 0x3e, 0x19, 0x95, 0xe0, 0x00, 0x7d, 0xc9, 0xe6, 0x57, 0x90, 0x46, 0xdf, 0x86, 0xaa, 0x6c, 0xd9, 0x7f, 0x5d, 0x2a, }; static const unsigned char xdh_wei25519_855_ourpubkey[] = { 0x00, 0x11, 0xff, 0xe5, 0x7e, 0x77, 0x59, 0x7e, 0x05, 0xe3, 0xc8, 0xe7, 0x5a, 0xe4, 0x30, 0xc3, 0xbf, 0xd0, 0xfb, 0x80, 0x27, 0xd3, 0xf1, 0x06, 0xb3, 0xc6, 0xa8, 0x89, 0x01, 0xf7, 0xe4, 0x7c, }; static const unsigned char xdh_wei25519_855_privkey[] = { 0x88, 0xf9, 0xa0, 0xd2, 0x35, 0x4a, 0xdf, 0xcb, 0xab, 0x2d, 0x12, 0xa0, 0xe0, 0x9b, 0x3c, 0x77, 0x19, 0xc9, 0x44, 0x38, 0x4e, 0xdf, 0xba, 0xa2, 0x7f, 0xe0, 0x73, 0x1c, 0xb9, 0xc6, 0xfc, 0x5a, }; static const unsigned char xdh_wei25519_855_sharedsecret[] = { 0x5a, 0xa7, 0x50, 0xde, 0x42, 0x07, 0x86, 0x9e, 0xc7, 0xfd, 0xda, 0xb3, 0x4c, 0x63, 0x95, 0x59, 0xb1, 0xeb, 0x27, 0xef, 0x24, 0x4a, 0xaf, 0x2a, 0x70, 0x2c, 0x84, 0x96, 0x3b, 0x6d, 0x6e, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_855 = { .name = "xdh_wei25519_855", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_855_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_855_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_855_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_855_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 338 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 856 for XDH, tcId is 339 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_856_peerpubkey[] = { 0x7f, 0xdd, 0x39, 0x9b, 0x6e, 0xf4, 0xa3, 0xf5, 0xca, 0xde, 0x62, 0xe7, 0x41, 0x13, 0xb2, 0x9c, 0x27, 0xdb, 0x15, 0x20, 0x3f, 0x9b, 0x8e, 0x39, 0x8d, 0x2c, 0x6f, 0x23, 0x00, 0x51, 0xcd, 0x2b, }; static const unsigned char xdh_wei25519_856_ourpubkey[] = { 0xe6, 0xc6, 0x0e, 0xe8, 0xf7, 0xe3, 0x9b, 0x6e, 0xc9, 0x45, 0xa6, 0x06, 0x6e, 0xf0, 0xad, 0xe2, 0x60, 0x86, 0xd2, 0x22, 0xa0, 0xa7, 0x09, 0x75, 0x46, 0xf5, 0x98, 0xc6, 0x40, 0x5c, 0xc7, 0x3a, }; static const unsigned char xdh_wei25519_856_privkey[] = { 0x08, 0x11, 0xf2, 0xe5, 0x60, 0xa2, 0x05, 0xe9, 0x6e, 0x28, 0xbc, 0x31, 0x2b, 0xca, 0xd4, 0x5f, 0xe8, 0xbe, 0xfe, 0xfb, 0x7f, 0x6d, 0xa5, 0xfa, 0xa0, 0x35, 0x31, 0x1e, 0xed, 0x80, 0xb2, 0x51, }; static const unsigned char xdh_wei25519_856_sharedsecret[] = { 0xa6, 0x94, 0x7e, 0xe0, 0x89, 0xff, 0x28, 0xce, 0x36, 0x44, 0xea, 0x4c, 0x6e, 0xb3, 0x3d, 0xbb, 0x20, 0xc7, 0x97, 0x4f, 0xb8, 0xd8, 0x53, 0xf4, 0xe1, 0x46, 0xe2, 0x46, 0x61, 0x77, 0x50, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_856 = { .name = "xdh_wei25519_856", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_856_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_856_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_856_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_856_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 339 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 857 for XDH, tcId is 340 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_857_peerpubkey[] = { 0xf0, 0x17, 0x3a, 0x96, 0x27, 0x3c, 0x64, 0x6f, 0xb6, 0x3d, 0x13, 0xb0, 0xc6, 0x86, 0xb8, 0x9e, 0x37, 0x67, 0x6f, 0xcc, 0x71, 0x78, 0xfa, 0xf4, 0xa6, 0xf4, 0x60, 0x1f, 0x30, 0x68, 0x15, 0x0d, }; static const unsigned char xdh_wei25519_857_ourpubkey[] = { 0xf4, 0xe9, 0xd3, 0xc7, 0x7b, 0xc2, 0xa1, 0x5b, 0xb2, 0xd3, 0x91, 0x66, 0x11, 0xf0, 0x73, 0x10, 0x71, 0xb2, 0xcf, 0x0d, 0xbe, 0x3f, 0x48, 0xb2, 0x1c, 0x28, 0x39, 0xfa, 0x83, 0x70, 0x11, 0x57, }; static const unsigned char xdh_wei25519_857_privkey[] = { 0x40, 0xad, 0x98, 0x40, 0x66, 0xa6, 0x90, 0x80, 0xfb, 0x4a, 0x31, 0x58, 0x78, 0xe7, 0x36, 0x09, 0x6c, 0xc5, 0x77, 0xda, 0xe4, 0xc4, 0x2c, 0x40, 0xd8, 0x93, 0xd8, 0xc2, 0x17, 0x3b, 0x78, 0x5a, }; static const unsigned char xdh_wei25519_857_sharedsecret[] = { 0x23, 0x0b, 0x6a, 0xa1, 0xf2, 0x4d, 0xf9, 0x0a, 0x60, 0x83, 0x91, 0x79, 0xba, 0x5e, 0x9d, 0xe6, 0x73, 0xcf, 0xf1, 0x1c, 0xab, 0x59, 0xe8, 0x02, 0x0b, 0x20, 0x62, 0x6c, 0x22, 0x09, 0x0b, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_857 = { .name = "xdh_wei25519_857", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_857_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_857_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_857_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_857_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 340 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 858 for XDH, tcId is 341 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_858_peerpubkey[] = { 0x25, 0x5b, 0xbe, 0x72, 0x30, 0xcd, 0x2b, 0xee, 0x90, 0xd2, 0x83, 0xf4, 0x18, 0xa4, 0x74, 0xab, 0x30, 0x14, 0x6c, 0xe5, 0xe8, 0x01, 0xa0, 0xf5, 0xed, 0x60, 0xee, 0x8d, 0xef, 0x3e, 0x65, 0x58, }; static const unsigned char xdh_wei25519_858_ourpubkey[] = { 0x7b, 0x01, 0x2b, 0x3e, 0x54, 0x17, 0xe5, 0xed, 0xb8, 0x1c, 0x3e, 0x33, 0x20, 0x71, 0x79, 0x13, 0x33, 0xb3, 0x8a, 0x8f, 0x47, 0xdb, 0xd5, 0x5c, 0x77, 0xd4, 0xa7, 0x60, 0x17, 0x67, 0xa4, 0x74, }; static const unsigned char xdh_wei25519_858_privkey[] = { 0x48, 0xb1, 0x0c, 0xd4, 0x56, 0x39, 0xbb, 0xbf, 0x83, 0xa0, 0xb2, 0x8f, 0x0d, 0xd3, 0xad, 0x0b, 0x7b, 0x00, 0xca, 0xf4, 0x8d, 0x05, 0x53, 0x44, 0x80, 0x55, 0x6a, 0x82, 0x78, 0x11, 0x6d, 0x59, }; static const unsigned char xdh_wei25519_858_sharedsecret[] = { 0x22, 0x99, 0xe3, 0x84, 0x95, 0x8b, 0xed, 0xd2, 0xc3, 0xd3, 0x67, 0x75, 0x91, 0x55, 0x13, 0x6d, 0x1f, 0xf7, 0x6e, 0x44, 0x34, 0xdc, 0x1d, 0x9e, 0x82, 0x12, 0xcd, 0xca, 0x52, 0xea, 0x84, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_858 = { .name = "xdh_wei25519_858", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_858_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_858_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_858_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_858_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 341 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 859 for XDH, tcId is 342 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_859_peerpubkey[] = { 0x21, 0xac, 0xcf, 0x97, 0xb7, 0xfe, 0xe1, 0x73, 0x00, 0x1c, 0xcf, 0xca, 0xb2, 0x16, 0x37, 0xc1, 0x75, 0xef, 0x51, 0x86, 0xff, 0x00, 0x02, 0x50, 0x2b, 0x3d, 0x52, 0xfa, 0x8c, 0x51, 0xe7, 0x66, }; static const unsigned char xdh_wei25519_859_ourpubkey[] = { 0xa0, 0xed, 0xe8, 0x97, 0x9f, 0x6c, 0x7c, 0x7d, 0x2b, 0x9e, 0x1a, 0xa6, 0x1e, 0xb1, 0xfe, 0xa2, 0x94, 0xa1, 0x4f, 0xdf, 0xf2, 0xeb, 0xe8, 0xe0, 0xbe, 0xee, 0x51, 0xe1, 0xaf, 0x28, 0x18, 0x2b, }; static const unsigned char xdh_wei25519_859_privkey[] = { 0xe8, 0xfa, 0xd7, 0x79, 0x46, 0xe0, 0xde, 0x4c, 0xf4, 0x23, 0x67, 0x98, 0x49, 0x0b, 0x83, 0x89, 0x48, 0xb8, 0x2c, 0xfb, 0x29, 0xf8, 0xe7, 0x68, 0x60, 0x01, 0xb1, 0x1e, 0x8d, 0x96, 0x16, 0x57, }; static const unsigned char xdh_wei25519_859_sharedsecret[] = { 0x97, 0xfc, 0xa0, 0x65, 0xac, 0xd3, 0xb9, 0x43, 0xc6, 0x54, 0x99, 0x7c, 0x0f, 0x12, 0x57, 0x67, 0xf9, 0xab, 0xc4, 0xb7, 0xc9, 0xd8, 0xb7, 0x24, 0x69, 0x42, 0xf1, 0x2b, 0xe6, 0x5d, 0x92, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_859 = { .name = "xdh_wei25519_859", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_859_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_859_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_859_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_859_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 342 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 860 for XDH, tcId is 343 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_860_peerpubkey[] = { 0x5b, 0x40, 0x77, 0x7e, 0x80, 0xff, 0x6e, 0xfe, 0x37, 0x8b, 0x5e, 0x81, 0x95, 0x9c, 0xcd, 0xcb, 0xb4, 0xca, 0x04, 0xb9, 0xd7, 0x7e, 0xdc, 0x6b, 0x30, 0x06, 0xde, 0xb9, 0x99, 0x26, 0xfa, 0x22, }; static const unsigned char xdh_wei25519_860_ourpubkey[] = { 0xfa, 0xeb, 0x01, 0x09, 0x7f, 0xba, 0x8d, 0x91, 0x7a, 0x30, 0xf7, 0x17, 0xf2, 0x5e, 0xc6, 0x92, 0xd8, 0x4f, 0xf5, 0x4d, 0x2a, 0xcc, 0x6e, 0xf5, 0x29, 0xf3, 0xc9, 0x7d, 0xd2, 0xbc, 0x80, 0x08, }; static const unsigned char xdh_wei25519_860_privkey[] = { 0xd0, 0x7b, 0xab, 0xed, 0x90, 0xb2, 0x7c, 0x4e, 0xac, 0xaf, 0xdc, 0x87, 0x17, 0x03, 0xbd, 0x03, 0x6b, 0x72, 0x0a, 0x82, 0xb5, 0xc0, 0x94, 0xdc, 0xeb, 0x47, 0x49, 0xee, 0xae, 0xb8, 0x10, 0x52, }; static const unsigned char xdh_wei25519_860_sharedsecret[] = { 0xf4, 0x82, 0x53, 0x1e, 0x52, 0x3d, 0x05, 0x8d, 0x6e, 0x3f, 0xe3, 0xa4, 0x27, 0xfc, 0x40, 0xdb, 0xce, 0x6d, 0xd6, 0xf1, 0x8d, 0xef, 0xbc, 0x09, 0x7b, 0xfd, 0x7d, 0x0c, 0xdd, 0x2f, 0x71, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_860 = { .name = "xdh_wei25519_860", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_860_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_860_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_860_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_860_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 343 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 861 for XDH, tcId is 344 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_861_peerpubkey[] = { 0x48, 0xd9, 0x52, 0xa2, 0x92, 0x4f, 0xf1, 0x67, 0xf0, 0x37, 0x70, 0x74, 0x69, 0xec, 0x71, 0x5d, 0xa7, 0x2b, 0xb6, 0x5f, 0x49, 0xaa, 0xf4, 0xdc, 0xe7, 0xec, 0x5a, 0x17, 0x03, 0x9d, 0xdb, 0x42, }; static const unsigned char xdh_wei25519_861_ourpubkey[] = { 0xde, 0xbf, 0x05, 0x32, 0x69, 0xc9, 0x75, 0x92, 0x75, 0x7c, 0xbc, 0x08, 0x32, 0xbb, 0x1f, 0x13, 0x52, 0xe7, 0x1d, 0x54, 0x11, 0x53, 0x2e, 0x17, 0x12, 0x27, 0x39, 0x77, 0x6a, 0x3a, 0xec, 0x3f, }; static const unsigned char xdh_wei25519_861_privkey[] = { 0x68, 0xa3, 0x04, 0x9a, 0xef, 0x8c, 0x06, 0x9b, 0x90, 0x6c, 0xf7, 0x43, 0x28, 0x6d, 0x39, 0x52, 0xa8, 0x88, 0xbf, 0x2b, 0x9b, 0x93, 0xbc, 0x87, 0x75, 0xfb, 0x5a, 0xdd, 0xe0, 0x6e, 0x9f, 0x53, }; static const unsigned char xdh_wei25519_861_sharedsecret[] = { 0xde, 0x88, 0xaf, 0x90, 0x5d, 0x37, 0x41, 0x7d, 0x83, 0x31, 0x10, 0x53, 0x45, 0xda, 0xba, 0xab, 0x9f, 0xd2, 0xd3, 0xcb, 0x1e, 0xe9, 0x02, 0x91, 0x1c, 0x1c, 0x8e, 0xae, 0x29, 0x91, 0xd9, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_861 = { .name = "xdh_wei25519_861", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_861_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_861_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_861_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_861_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 344 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 862 for XDH, tcId is 345 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_862_peerpubkey[] = { 0xa5, 0xef, 0x26, 0x5c, 0xcb, 0xc5, 0xc5, 0x40, 0x21, 0xd3, 0x4f, 0x82, 0x36, 0x4a, 0x46, 0x24, 0x03, 0x0f, 0x5b, 0x9d, 0x5f, 0xf7, 0xe6, 0x3d, 0x7a, 0x37, 0x9e, 0x53, 0x3d, 0xe5, 0xe7, 0x42, }; static const unsigned char xdh_wei25519_862_ourpubkey[] = { 0xa0, 0x97, 0x47, 0x7f, 0x94, 0x71, 0xac, 0xb4, 0x18, 0x11, 0xa6, 0xbe, 0xdb, 0xa4, 0xcd, 0x3b, 0xba, 0xf5, 0x44, 0x53, 0x75, 0xb3, 0x70, 0xe1, 0x8c, 0x80, 0xb3, 0xbb, 0xbf, 0xe3, 0xe3, 0x41, }; static const unsigned char xdh_wei25519_862_privkey[] = { 0x18, 0xd8, 0xc3, 0xd2, 0xa4, 0xe3, 0x66, 0x18, 0x5a, 0x85, 0xc3, 0x86, 0x98, 0xd9, 0x37, 0xe1, 0x3b, 0xbb, 0xaf, 0xdb, 0xda, 0xb1, 0xa0, 0xa8, 0x3d, 0xbb, 0xe8, 0x9b, 0xad, 0xf7, 0x07, 0x56, }; static const unsigned char xdh_wei25519_862_sharedsecret[] = { 0x07, 0x5d, 0x18, 0xcc, 0xc9, 0x84, 0x76, 0x1b, 0x70, 0x75, 0x22, 0x79, 0xe7, 0xf6, 0xa7, 0x57, 0x20, 0x8f, 0x6c, 0x11, 0xe2, 0x94, 0x80, 0xc3, 0x2b, 0x40, 0xab, 0xa1, 0x28, 0xa4, 0xd5, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_862 = { .name = "xdh_wei25519_862", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_862_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_862_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_862_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_862_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 345 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 863 for XDH, tcId is 346 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_863_peerpubkey[] = { 0x90, 0x51, 0xe5, 0x5a, 0x40, 0x50, 0xef, 0x4d, 0xce, 0x0b, 0x0c, 0x40, 0x81, 0x1f, 0x16, 0x37, 0x1e, 0x8b, 0x16, 0x93, 0x25, 0x41, 0xda, 0x37, 0xf0, 0x69, 0x40, 0x6d, 0x84, 0x8e, 0xa4, 0x24, }; static const unsigned char xdh_wei25519_863_ourpubkey[] = { 0x6c, 0x35, 0x14, 0xa6, 0x78, 0x72, 0xae, 0x5e, 0xf8, 0xa5, 0xa8, 0x58, 0x41, 0x3c, 0x82, 0x9f, 0x6b, 0x07, 0x81, 0xfd, 0x38, 0xc9, 0x0b, 0xb8, 0x13, 0xc3, 0x1a, 0x18, 0xdc, 0xf2, 0xf9, 0x1e, }; static const unsigned char xdh_wei25519_863_privkey[] = { 0x18, 0xef, 0xcd, 0x5f, 0xe3, 0x45, 0xbe, 0x49, 0x85, 0x31, 0x66, 0x95, 0x39, 0x1d, 0x2c, 0x95, 0x2e, 0xee, 0x13, 0xb0, 0xe1, 0xee, 0x75, 0x84, 0x72, 0x1f, 0xbe, 0x8b, 0x19, 0xd4, 0xfc, 0x5f, }; static const unsigned char xdh_wei25519_863_sharedsecret[] = { 0x21, 0x2d, 0xbf, 0x9b, 0xc8, 0x9b, 0x68, 0x73, 0xa6, 0x0d, 0xfc, 0x87, 0x31, 0xa1, 0x0b, 0xe1, 0x1a, 0xb2, 0xdc, 0xa4, 0xb1, 0x72, 0x14, 0x2e, 0x6c, 0x9f, 0x06, 0x61, 0x4c, 0xd7, 0x28, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_863 = { .name = "xdh_wei25519_863", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_863_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_863_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_863_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_863_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 346 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 864 for XDH, tcId is 347 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_864_peerpubkey[] = { 0x41, 0x9a, 0xdb, 0x8b, 0x1f, 0x2f, 0x87, 0xde, 0x01, 0x6b, 0x0c, 0x78, 0xd1, 0x02, 0x9a, 0x21, 0x04, 0x92, 0xeb, 0x8c, 0xad, 0xd1, 0x64, 0xb1, 0x2c, 0xd6, 0x5b, 0x1d, 0x57, 0xbf, 0x36, 0x34, }; static const unsigned char xdh_wei25519_864_ourpubkey[] = { 0x11, 0x99, 0x51, 0x87, 0xb1, 0xe3, 0xbd, 0x60, 0x8a, 0x60, 0x43, 0x28, 0x9b, 0x55, 0xf8, 0xf8, 0xbc, 0xb2, 0xa5, 0x68, 0x12, 0x07, 0x6c, 0x1a, 0x8d, 0x17, 0x4d, 0xc4, 0x9f, 0xad, 0xb1, 0x73, }; static const unsigned char xdh_wei25519_864_privkey[] = { 0x28, 0xec, 0x7c, 0x69, 0x3e, 0x22, 0x2c, 0x72, 0xac, 0x08, 0x15, 0xf1, 0xfd, 0x36, 0x66, 0x13, 0x57, 0xe0, 0xa8, 0xda, 0x7b, 0xc9, 0x96, 0xda, 0xee, 0xea, 0xfc, 0xd2, 0x1c, 0x01, 0x34, 0x51, }; static const unsigned char xdh_wei25519_864_sharedsecret[] = { 0x37, 0x9f, 0x92, 0x21, 0xab, 0xeb, 0xf3, 0x58, 0x26, 0x81, 0xa0, 0xe8, 0x57, 0xf3, 0xda, 0x57, 0x8a, 0x1b, 0x01, 0x21, 0x98, 0x2b, 0x96, 0xf1, 0x4b, 0x94, 0xde, 0x5d, 0xc8, 0xb2, 0x45, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_864 = { .name = "xdh_wei25519_864", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_864_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_864_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_864_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_864_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 347 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 865 for XDH, tcId is 348 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_865_peerpubkey[] = { 0x13, 0xe0, 0x0d, 0xae, 0x3b, 0x1c, 0xcc, 0x97, 0xcc, 0xd6, 0x49, 0x08, 0x8c, 0x4a, 0x7f, 0x32, 0xca, 0x99, 0x76, 0x21, 0x4d, 0x64, 0x56, 0x67, 0xbd, 0x08, 0x20, 0x39, 0xbb, 0xd9, 0xab, 0x7a, }; static const unsigned char xdh_wei25519_865_ourpubkey[] = { 0x8b, 0xc2, 0xe7, 0x9f, 0x4f, 0x62, 0x76, 0xed, 0xcf, 0xce, 0x49, 0xb5, 0x9f, 0x22, 0xf0, 0xf8, 0x4f, 0xe6, 0xd9, 0x2f, 0xd1, 0x7e, 0x76, 0x22, 0x07, 0x68, 0x96, 0xcf, 0xe5, 0x6e, 0xef, 0x7c, }; static const unsigned char xdh_wei25519_865_privkey[] = { 0x78, 0xb3, 0x5e, 0x7a, 0xe5, 0x49, 0x30, 0x8b, 0x64, 0x14, 0xbb, 0x61, 0x01, 0x96, 0xc0, 0x4f, 0x2a, 0xf7, 0x9d, 0x42, 0x66, 0xc8, 0x6e, 0x8a, 0x9c, 0xe0, 0xc0, 0x2b, 0xbd, 0xb8, 0x8d, 0x59, }; static const unsigned char xdh_wei25519_865_sharedsecret[] = { 0xcf, 0xf2, 0x59, 0x6b, 0x7a, 0xfe, 0x36, 0xf4, 0xca, 0xb9, 0xc7, 0x01, 0x33, 0xd7, 0xaa, 0x0f, 0x99, 0x14, 0xf9, 0xab, 0xc6, 0xc3, 0xb9, 0x89, 0x54, 0x72, 0xe2, 0xa5, 0x89, 0x4a, 0x80, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_865 = { .name = "xdh_wei25519_865", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_865_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_865_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_865_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_865_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 348 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 866 for XDH, tcId is 349 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_866_peerpubkey[] = { 0x44, 0x1c, 0x48, 0x7a, 0x48, 0xf0, 0xa4, 0x98, 0x9d, 0x93, 0x1c, 0xd7, 0x7a, 0x61, 0x42, 0xa0, 0xa1, 0x3d, 0x1a, 0xab, 0xad, 0x82, 0x62, 0x3b, 0xa8, 0xd9, 0x4b, 0x5c, 0x37, 0x4f, 0x4f, 0x08, }; static const unsigned char xdh_wei25519_866_ourpubkey[] = { 0xeb, 0x41, 0x67, 0xe7, 0x24, 0xe2, 0x1c, 0x4f, 0xd4, 0xaa, 0x07, 0x17, 0x5d, 0x80, 0x28, 0x79, 0x2f, 0xb7, 0x2c, 0x3b, 0xbb, 0xba, 0xa6, 0xdc, 0xf4, 0x72, 0x12, 0xc8, 0x16, 0xb3, 0x95, 0x2f, }; static const unsigned char xdh_wei25519_866_privkey[] = { 0xf0, 0xde, 0x9c, 0x5f, 0x8a, 0x93, 0x72, 0xf3, 0x0c, 0x41, 0xca, 0x47, 0xa5, 0x57, 0x43, 0xce, 0x69, 0x7d, 0x46, 0xe3, 0x2e, 0x7a, 0x9a, 0xe2, 0x6d, 0x32, 0x50, 0x3f, 0xd5, 0x22, 0x27, 0x67, }; static const unsigned char xdh_wei25519_866_sharedsecret[] = { 0xd4, 0x7c, 0x46, 0xb4, 0x32, 0x9b, 0xed, 0xcb, 0xc1, 0x98, 0x6b, 0x3c, 0x6d, 0x2a, 0xa9, 0xbc, 0xd0, 0x27, 0xd6, 0xb6, 0x89, 0x25, 0x17, 0x5d, 0x35, 0xbb, 0xb5, 0x36, 0xb3, 0x44, 0x08, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_866 = { .name = "xdh_wei25519_866", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_866_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_866_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_866_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_866_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 349 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 867 for XDH, tcId is 350 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_867_peerpubkey[] = { 0x0e, 0x67, 0xee, 0x5c, 0x6b, 0x65, 0xaa, 0x80, 0x22, 0x59, 0x81, 0x0b, 0x26, 0x05, 0xf8, 0xd7, 0xac, 0xcf, 0x9b, 0x49, 0xbf, 0x14, 0xcb, 0x4a, 0x53, 0x69, 0x28, 0xe8, 0x83, 0x17, 0x29, 0x15, }; static const unsigned char xdh_wei25519_867_ourpubkey[] = { 0xb3, 0x7b, 0xa1, 0x07, 0xf8, 0x09, 0x1e, 0x7f, 0x70, 0x5a, 0x9d, 0x19, 0x1d, 0x04, 0x1c, 0x4d, 0x40, 0xec, 0x5d, 0x22, 0x79, 0x14, 0xa1, 0x90, 0x06, 0x1e, 0xf3, 0xeb, 0x55, 0x80, 0x41, 0x17, }; static const unsigned char xdh_wei25519_867_privkey[] = { 0x68, 0x6b, 0xe5, 0xa1, 0x2b, 0x31, 0x04, 0x20, 0xf9, 0xbf, 0xb2, 0x09, 0x38, 0x1f, 0xd4, 0x59, 0xa5, 0xcc, 0xd5, 0x5c, 0x75, 0x2b, 0x88, 0x33, 0x7e, 0xbe, 0x89, 0xe1, 0x92, 0x1a, 0xe7, 0x65, }; static const unsigned char xdh_wei25519_867_sharedsecret[] = { 0x1d, 0x73, 0x01, 0x58, 0xda, 0x88, 0x05, 0x33, 0xdb, 0xf1, 0xe6, 0xc6, 0x4a, 0x8e, 0x99, 0xf9, 0x16, 0x96, 0x11, 0x66, 0x09, 0x69, 0xb0, 0xa8, 0x4f, 0xb4, 0x2d, 0xd8, 0xdc, 0x2e, 0xfa, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_867 = { .name = "xdh_wei25519_867", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_867_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_867_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_867_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_867_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 350 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 868 for XDH, tcId is 351 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_868_peerpubkey[] = { 0xdc, 0x9d, 0x7e, 0xf1, 0xcb, 0x49, 0xc1, 0x91, 0xe2, 0x58, 0x66, 0x3a, 0x94, 0xe7, 0x31, 0xb9, 0xc0, 0x66, 0xc1, 0x1a, 0x17, 0xd8, 0xb5, 0xfd, 0xea, 0x19, 0x87, 0xf5, 0xd9, 0xa0, 0x05, 0x68, }; static const unsigned char xdh_wei25519_868_ourpubkey[] = { 0xae, 0xeb, 0xf0, 0x5c, 0xd4, 0x33, 0x58, 0x99, 0xd9, 0x4f, 0x46, 0xde, 0x24, 0xfb, 0xf4, 0xac, 0x78, 0x04, 0xeb, 0xe1, 0x32, 0xb0, 0xcc, 0xe2, 0x06, 0xc0, 0xc0, 0x59, 0x5a, 0x13, 0x01, 0x1d, }; static const unsigned char xdh_wei25519_868_privkey[] = { 0xa0, 0xc0, 0x33, 0x7c, 0x5b, 0xec, 0x5c, 0xa2, 0x4d, 0xea, 0x2f, 0x1d, 0x70, 0x14, 0x98, 0xae, 0x2b, 0xad, 0x87, 0xb8, 0x26, 0x9a, 0xc2, 0x3b, 0xe1, 0x13, 0x92, 0x9f, 0xe4, 0xeb, 0x19, 0x63, }; static const unsigned char xdh_wei25519_868_sharedsecret[] = { 0x07, 0x73, 0x25, 0x29, 0xa6, 0x28, 0xba, 0xde, 0xb8, 0xd7, 0x49, 0x46, 0x77, 0x5b, 0xa4, 0x57, 0xc7, 0x00, 0xbf, 0x83, 0x90, 0xf4, 0x6b, 0xc5, 0x23, 0xfb, 0x64, 0xe4, 0x71, 0xc8, 0x6a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_868 = { .name = "xdh_wei25519_868", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_868_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_868_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_868_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_868_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 351 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 869 for XDH, tcId is 352 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_869_peerpubkey[] = { 0x55, 0x6b, 0x3e, 0xe7, 0xcd, 0x0d, 0x37, 0x97, 0x90, 0x56, 0xec, 0xc1, 0xf5, 0x6a, 0x56, 0x77, 0xa4, 0x93, 0x5b, 0xe6, 0xe4, 0x9c, 0xe2, 0x8e, 0x39, 0x4f, 0x8b, 0xfb, 0x73, 0xd1, 0x3b, 0x6a, }; static const unsigned char xdh_wei25519_869_ourpubkey[] = { 0x44, 0x89, 0xf0, 0x67, 0x69, 0xb6, 0xcf, 0xd6, 0x56, 0xc8, 0x1b, 0x72, 0x40, 0x85, 0xae, 0x05, 0x82, 0x62, 0x22, 0xf3, 0xf3, 0xc3, 0x2e, 0x6c, 0x1e, 0x47, 0xf3, 0x1c, 0x0d, 0x83, 0xfb, 0x7c, }; static const unsigned char xdh_wei25519_869_privkey[] = { 0xb8, 0x82, 0x4c, 0xfc, 0xe5, 0x55, 0x0b, 0x5e, 0x17, 0xb1, 0x2f, 0x74, 0xe2, 0x84, 0x59, 0xca, 0xb3, 0x4e, 0xb4, 0x98, 0x95, 0xcc, 0x36, 0xbf, 0x64, 0x5a, 0x0c, 0xf0, 0x0e, 0x3d, 0x2d, 0x67, }; static const unsigned char xdh_wei25519_869_sharedsecret[] = { 0x9e, 0x3a, 0xae, 0x35, 0xfa, 0x1c, 0xc8, 0x0a, 0x35, 0x98, 0x78, 0xe2, 0x12, 0x18, 0x02, 0x94, 0xff, 0x66, 0x08, 0xdc, 0xb4, 0x92, 0x9e, 0x91, 0x90, 0x1a, 0xbb, 0xf9, 0x76, 0xf3, 0x9c, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_869 = { .name = "xdh_wei25519_869", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_869_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_869_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_869_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_869_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 352 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 870 for XDH, tcId is 353 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_870_peerpubkey[] = { 0x12, 0x11, 0xbe, 0x58, 0x09, 0x60, 0x5b, 0x54, 0xf5, 0x72, 0x7d, 0x23, 0x3c, 0x78, 0x3a, 0x2a, 0x19, 0x9a, 0x3d, 0xb2, 0x4e, 0xd4, 0x49, 0x9d, 0x7b, 0x48, 0xc7, 0x60, 0x3e, 0x4a, 0xd3, 0x71, }; static const unsigned char xdh_wei25519_870_ourpubkey[] = { 0xa4, 0xc0, 0xa1, 0x3a, 0x13, 0xd6, 0xad, 0x7b, 0xa3, 0xd6, 0x79, 0x97, 0xef, 0xf9, 0x6a, 0xd8, 0xbf, 0x12, 0x41, 0x2d, 0x39, 0x76, 0x80, 0x13, 0x6d, 0x64, 0xaa, 0xc3, 0x2e, 0x50, 0xf5, 0x6f, }; static const unsigned char xdh_wei25519_870_privkey[] = { 0xe0, 0x2d, 0xba, 0x73, 0x35, 0xaf, 0x8f, 0xb9, 0x16, 0x8d, 0xe2, 0xfc, 0xd3, 0x10, 0xc2, 0xe2, 0xdf, 0x4a, 0x3e, 0x25, 0x26, 0x3e, 0x0a, 0xb9, 0xad, 0xa8, 0x7b, 0xfb, 0x82, 0x58, 0xa6, 0x6b, }; static const unsigned char xdh_wei25519_870_sharedsecret[] = { 0x88, 0x0f, 0x6d, 0xc7, 0x32, 0x20, 0x30, 0x7a, 0x59, 0x76, 0x70, 0xf3, 0x28, 0x2f, 0xc3, 0x66, 0xaa, 0x66, 0xf0, 0x4a, 0x0a, 0x9c, 0xa3, 0x0d, 0x89, 0x5f, 0xdd, 0xe3, 0x37, 0xaf, 0xe8, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_870 = { .name = "xdh_wei25519_870", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_870_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_870_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_870_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_870_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 353 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 871 for XDH, tcId is 354 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_871_peerpubkey[] = { 0x50, 0x5e, 0x78, 0x51, 0xe2, 0x35, 0x2e, 0x31, 0x1c, 0xa9, 0x53, 0x6a, 0x1f, 0xe6, 0xc0, 0xd9, 0x5d, 0x64, 0x81, 0x97, 0x37, 0x4c, 0xe0, 0x8e, 0x4b, 0x8a, 0x0f, 0xbd, 0xdf, 0x62, 0x91, 0x0b, }; static const unsigned char xdh_wei25519_871_ourpubkey[] = { 0x58, 0x99, 0xe5, 0xe7, 0xe1, 0xf4, 0xf0, 0xb1, 0x21, 0xec, 0x0e, 0x29, 0xb1, 0x6e, 0x2b, 0x57, 0xe5, 0x8b, 0xd4, 0x34, 0xbb, 0xaa, 0x65, 0x60, 0x76, 0xf7, 0xbb, 0x7f, 0x17, 0x79, 0x52, 0x44, }; static const unsigned char xdh_wei25519_871_privkey[] = { 0x30, 0xce, 0x71, 0xf8, 0x56, 0xce, 0xb8, 0x74, 0xfe, 0x58, 0x00, 0x39, 0xca, 0x67, 0xe8, 0x96, 0xe6, 0xd0, 0x82, 0x07, 0xa7, 0x3c, 0xd5, 0x5d, 0xb7, 0x05, 0x91, 0x27, 0xc1, 0x34, 0x2b, 0x67, }; static const unsigned char xdh_wei25519_871_sharedsecret[] = { 0xea, 0x62, 0xb0, 0xed, 0xa2, 0xd7, 0xb2, 0x49, 0xa4, 0x24, 0x17, 0x67, 0x5a, 0x2b, 0x82, 0xb1, 0xe6, 0xc0, 0xd6, 0x9a, 0x4e, 0x7c, 0xef, 0x33, 0x64, 0x48, 0x84, 0x4d, 0x2f, 0x43, 0x22, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_871 = { .name = "xdh_wei25519_871", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_871_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_871_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_871_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_871_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 354 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 872 for XDH, tcId is 355 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_872_peerpubkey[] = { 0xdd, 0xf4, 0xe9, 0x05, 0x03, 0xdd, 0x82, 0x61, 0x0c, 0x3a, 0x03, 0x4b, 0x92, 0x5a, 0x88, 0x0b, 0x72, 0xdb, 0xde, 0x30, 0xc6, 0x26, 0x00, 0x92, 0x02, 0xb3, 0x58, 0xc6, 0xeb, 0x00, 0xf4, 0x18, }; static const unsigned char xdh_wei25519_872_ourpubkey[] = { 0xf6, 0x2a, 0xde, 0x1b, 0xfc, 0x80, 0x86, 0x9d, 0xb7, 0x6e, 0x55, 0xa6, 0x88, 0x8d, 0xda, 0x45, 0x67, 0x89, 0xbf, 0x10, 0x54, 0x2a, 0xae, 0x62, 0x95, 0xcb, 0x38, 0x5b, 0x65, 0x44, 0xac, 0x22, }; static const unsigned char xdh_wei25519_872_privkey[] = { 0xe8, 0x81, 0xf4, 0x6d, 0x41, 0x41, 0xea, 0x69, 0xa6, 0x71, 0x64, 0x9b, 0x93, 0xb6, 0x3e, 0x97, 0xdc, 0x67, 0xc1, 0x25, 0x21, 0xd4, 0x45, 0x86, 0x2f, 0x08, 0x7b, 0x26, 0x26, 0xfa, 0x2b, 0x6f, }; static const unsigned char xdh_wei25519_872_sharedsecret[] = { 0x30, 0x2c, 0x4f, 0x83, 0xb5, 0xc5, 0xbf, 0x30, 0xc1, 0xe3, 0xaf, 0xd9, 0xf6, 0x43, 0xf6, 0x5b, 0xfe, 0x56, 0xca, 0x16, 0x28, 0xee, 0x04, 0x2b, 0x1a, 0xb7, 0x39, 0x3b, 0xaf, 0xe3, 0x6c, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_872 = { .name = "xdh_wei25519_872", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_872_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_872_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_872_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_872_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 355 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 873 for XDH, tcId is 356 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_873_peerpubkey[] = { 0x0e, 0x9c, 0x44, 0x31, 0x99, 0x9e, 0xf1, 0xce, 0x17, 0x7e, 0x90, 0x0d, 0x37, 0xec, 0x6a, 0xe6, 0x65, 0xe3, 0x87, 0xe2, 0xd4, 0xfa, 0x27, 0xcb, 0xa8, 0xe7, 0xba, 0xeb, 0xc6, 0x5c, 0x65, 0x20, }; static const unsigned char xdh_wei25519_873_ourpubkey[] = { 0x9f, 0x42, 0x42, 0xfd, 0xe3, 0xf5, 0x01, 0x87, 0xee, 0xfd, 0x59, 0x5d, 0x2f, 0x1a, 0x47, 0x87, 0x0e, 0x64, 0x8f, 0xa0, 0x67, 0x29, 0x2d, 0xa1, 0x3f, 0x0e, 0xd5, 0xa0, 0x39, 0x54, 0x91, 0x25, }; static const unsigned char xdh_wei25519_873_privkey[] = { 0xe8, 0x79, 0x75, 0x26, 0x83, 0xcd, 0x73, 0xa8, 0x34, 0x25, 0x1c, 0x65, 0x74, 0x91, 0x35, 0xe0, 0x6e, 0xb9, 0x06, 0x4d, 0x3a, 0xe3, 0x50, 0x95, 0xd8, 0x8c, 0xde, 0x14, 0xa0, 0x2b, 0xa3, 0x66, }; static const unsigned char xdh_wei25519_873_sharedsecret[] = { 0x8f, 0xf2, 0xac, 0x65, 0xc8, 0x5e, 0xe2, 0xfe, 0x94, 0x52, 0xfc, 0xe4, 0x60, 0xf8, 0xc8, 0x7f, 0x95, 0x70, 0xd7, 0x69, 0xca, 0xdd, 0xdc, 0x87, 0xfe, 0x93, 0xef, 0x8b, 0x76, 0x57, 0xc7, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_873 = { .name = "xdh_wei25519_873", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_873_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_873_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_873_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_873_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 356 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 874 for XDH, tcId is 357 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_874_peerpubkey[] = { 0x57, 0x61, 0xd6, 0xc0, 0x86, 0x24, 0x10, 0x4d, 0x41, 0x17, 0xff, 0x17, 0xc7, 0x5e, 0x92, 0x11, 0xa5, 0x91, 0xc9, 0xca, 0x9a, 0xec, 0xca, 0x3a, 0x66, 0x5a, 0x7e, 0xd8, 0x44, 0x19, 0x52, 0x25, }; static const unsigned char xdh_wei25519_874_ourpubkey[] = { 0x22, 0xa9, 0x66, 0x78, 0x1b, 0x58, 0x88, 0x1e, 0x99, 0x85, 0x64, 0xbb, 0xb6, 0xb8, 0x9b, 0xf3, 0xd0, 0xc4, 0x81, 0x1f, 0x67, 0x27, 0x7e, 0x44, 0xb6, 0x48, 0x00, 0xb5, 0x6b, 0xe6, 0xcc, 0x38, }; static const unsigned char xdh_wei25519_874_privkey[] = { 0x20, 0x57, 0x6a, 0xb4, 0x56, 0xda, 0x26, 0xc1, 0x8d, 0xa5, 0xfb, 0xf0, 0x6e, 0xc4, 0xd1, 0x65, 0x64, 0xe1, 0x11, 0xbf, 0xae, 0x2a, 0x92, 0xb9, 0xf6, 0xe1, 0x92, 0x7c, 0x15, 0x77, 0x0a, 0x62, }; static const unsigned char xdh_wei25519_874_sharedsecret[] = { 0x97, 0xc9, 0x1a, 0x23, 0xc3, 0xe4, 0xf3, 0xff, 0x72, 0x7d, 0x18, 0x8a, 0x35, 0x2b, 0x67, 0xad, 0x49, 0x0b, 0x62, 0x38, 0x15, 0x66, 0xfb, 0x3e, 0x11, 0x1c, 0xb6, 0x7a, 0xa9, 0xe3, 0x43, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_874 = { .name = "xdh_wei25519_874", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_874_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_874_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_874_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_874_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 357 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 875 for XDH, tcId is 358 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_875_peerpubkey[] = { 0xe9, 0x2d, 0x45, 0xb3, 0xec, 0x56, 0x53, 0x12, 0x66, 0x30, 0x3c, 0x51, 0x13, 0xc4, 0x63, 0x10, 0xc4, 0x16, 0x50, 0x00, 0x10, 0x65, 0xb4, 0xd8, 0x7b, 0x02, 0xb3, 0x82, 0xfc, 0x82, 0x66, 0x2e, }; static const unsigned char xdh_wei25519_875_ourpubkey[] = { 0xc5, 0x92, 0x49, 0xc0, 0x2d, 0x49, 0x29, 0x61, 0xe3, 0x29, 0x7d, 0x55, 0xcb, 0xc7, 0x11, 0x4b, 0xd4, 0x09, 0x4a, 0x08, 0x90, 0x84, 0x4f, 0x77, 0xf5, 0x60, 0x40, 0xbb, 0x34, 0x21, 0x38, 0x24, }; static const unsigned char xdh_wei25519_875_privkey[] = { 0xa8, 0x46, 0x74, 0x18, 0xb9, 0x24, 0xc2, 0xc0, 0x03, 0xc5, 0x6e, 0x16, 0x10, 0xa3, 0x54, 0x69, 0x35, 0x63, 0x60, 0xc2, 0x9d, 0x52, 0xaa, 0x55, 0x7a, 0x2b, 0xb3, 0x0f, 0xb8, 0xa9, 0xa4, 0x64, }; static const unsigned char xdh_wei25519_875_sharedsecret[] = { 0x24, 0x34, 0x6b, 0xb1, 0x33, 0xdd, 0x9a, 0xe3, 0xff, 0x02, 0xd2, 0xf5, 0x05, 0x10, 0xb3, 0xa9, 0x2d, 0x90, 0x30, 0x83, 0x4d, 0x60, 0xe5, 0xaf, 0x08, 0xb0, 0xee, 0xbb, 0xf1, 0xd4, 0xdd, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_875 = { .name = "xdh_wei25519_875", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_875_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_875_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_875_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_875_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 358 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 876 for XDH, tcId is 359 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_876_peerpubkey[] = { 0xf3, 0x8b, 0x63, 0x45, 0x9d, 0x05, 0xe4, 0x22, 0xad, 0x02, 0x4c, 0x2d, 0xce, 0xa5, 0x02, 0x9a, 0x0a, 0x7a, 0x6b, 0x6c, 0x4c, 0x1d, 0x20, 0x93, 0xce, 0x55, 0x6a, 0xab, 0x33, 0x1e, 0x25, 0x40, }; static const unsigned char xdh_wei25519_876_ourpubkey[] = { 0xc5, 0x05, 0x22, 0xa9, 0xd5, 0x24, 0x07, 0x76, 0xd3, 0x76, 0xaf, 0x84, 0x90, 0xcd, 0xdd, 0x9b, 0xbd, 0xb8, 0x93, 0x64, 0x14, 0x48, 0x17, 0x13, 0x3a, 0x7c, 0x9e, 0x0d, 0x1d, 0xb4, 0xa0, 0x1f, }; static const unsigned char xdh_wei25519_876_privkey[] = { 0xf0, 0xf5, 0xe1, 0x62, 0x92, 0x3d, 0x7c, 0x29, 0x93, 0x88, 0xbe, 0xd7, 0x81, 0x19, 0x94, 0x17, 0xad, 0xe0, 0x97, 0x47, 0x55, 0x15, 0x16, 0x2d, 0x95, 0x90, 0x97, 0x6a, 0x19, 0x6f, 0xb1, 0x6f, }; static const unsigned char xdh_wei25519_876_sharedsecret[] = { 0xb3, 0x45, 0x3c, 0x9c, 0x82, 0xa2, 0xd1, 0xd9, 0x56, 0x15, 0x6d, 0xe2, 0x39, 0x9c, 0xb7, 0x0d, 0xd4, 0xe1, 0xec, 0x53, 0xae, 0xa9, 0x67, 0xe0, 0x35, 0x75, 0x3c, 0x1c, 0xda, 0xe1, 0x3c, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_876 = { .name = "xdh_wei25519_876", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_876_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_876_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_876_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_876_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 359 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 877 for XDH, tcId is 360 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_877_peerpubkey[] = { 0xa7, 0xde, 0xd0, 0xee, 0xa4, 0x5a, 0x40, 0x0b, 0x8f, 0x56, 0x37, 0x15, 0x4d, 0x42, 0x97, 0x4a, 0xa9, 0x8c, 0x92, 0x96, 0x23, 0x14, 0xd8, 0x22, 0xef, 0x88, 0xb0, 0x13, 0x83, 0xa9, 0xda, 0x4d, }; static const unsigned char xdh_wei25519_877_ourpubkey[] = { 0xfe, 0xe5, 0xb8, 0x06, 0x83, 0x51, 0x42, 0x27, 0x19, 0xf3, 0x0b, 0x8f, 0x09, 0x7b, 0x31, 0x0b, 0x47, 0x8a, 0xd8, 0xdd, 0x35, 0x94, 0x2c, 0xa3, 0x2a, 0x9a, 0x6f, 0xd2, 0xd7, 0xc4, 0x1e, 0x53, }; static const unsigned char xdh_wei25519_877_privkey[] = { 0x60, 0x8f, 0xcf, 0x78, 0x7f, 0xe7, 0x89, 0x64, 0x4a, 0x09, 0xbc, 0xab, 0x95, 0x8f, 0x07, 0x37, 0xaa, 0x81, 0xa9, 0xe2, 0x9d, 0x50, 0x5f, 0x51, 0x03, 0x5c, 0x78, 0xe3, 0x74, 0xb9, 0xe4, 0x6b, }; static const unsigned char xdh_wei25519_877_sharedsecret[] = { 0xeb, 0xeb, 0x0c, 0x7b, 0x7a, 0x41, 0x65, 0xcd, 0x02, 0xa2, 0x78, 0xf3, 0xa2, 0x22, 0xc2, 0x36, 0xee, 0xd8, 0x32, 0x66, 0xb8, 0x06, 0xd1, 0x34, 0x94, 0xc1, 0xc3, 0xf9, 0x8a, 0x2f, 0x34, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_877 = { .name = "xdh_wei25519_877", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_877_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_877_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_877_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_877_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 360 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 878 for XDH, tcId is 361 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_878_peerpubkey[] = { 0x7b, 0x0e, 0xcb, 0x4c, 0x72, 0xee, 0x14, 0x77, 0x89, 0xd7, 0x48, 0x13, 0xce, 0xd3, 0xeb, 0xe4, 0x0f, 0x45, 0xc3, 0xda, 0x52, 0x6e, 0xd1, 0x27, 0x29, 0x52, 0xe4, 0x53, 0xe4, 0x3b, 0x79, 0x6d, }; static const unsigned char xdh_wei25519_878_ourpubkey[] = { 0xdb, 0xa5, 0x6e, 0xa5, 0x56, 0xb5, 0xa2, 0xdc, 0x40, 0xc7, 0xf6, 0xef, 0x4c, 0x63, 0xb9, 0x6a, 0x24, 0x82, 0x5a, 0x6d, 0xe9, 0x8f, 0x79, 0x2e, 0xed, 0x00, 0x5e, 0xf9, 0x88, 0x49, 0x12, 0x45, }; static const unsigned char xdh_wei25519_878_privkey[] = { 0x58, 0xa3, 0x39, 0x6d, 0x29, 0x1e, 0xb2, 0x35, 0x71, 0xb5, 0x2d, 0x98, 0xa3, 0x15, 0x49, 0xe5, 0x14, 0xe5, 0x01, 0xe8, 0xd0, 0x95, 0x8a, 0xd9, 0xf2, 0x5f, 0xe5, 0xa7, 0x6c, 0x50, 0x3e, 0x69, }; static const unsigned char xdh_wei25519_878_sharedsecret[] = { 0x92, 0x13, 0xa5, 0x3f, 0x22, 0xff, 0x0c, 0xb5, 0xec, 0xa8, 0x7b, 0x27, 0xb1, 0x93, 0xc7, 0x73, 0xbf, 0xdf, 0x4c, 0x01, 0xa1, 0x93, 0xa1, 0x1f, 0x37, 0xc1, 0x57, 0x47, 0x4e, 0x15, 0xcb, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_878 = { .name = "xdh_wei25519_878", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_878_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_878_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_878_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_878_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 879 for XDH, tcId is 362 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_879_peerpubkey[] = { 0xa2, 0x44, 0x41, 0x3d, 0xdc, 0x3a, 0x20, 0x5d, 0x03, 0x8d, 0x64, 0x26, 0x68, 0x33, 0xee, 0xa1, 0xef, 0xba, 0x51, 0xba, 0x62, 0xc9, 0xc6, 0xcd, 0xcd, 0xbe, 0x94, 0x3b, 0xe5, 0x2b, 0xb0, 0x0c, }; static const unsigned char xdh_wei25519_879_ourpubkey[] = { 0x98, 0x17, 0x28, 0x4b, 0xc9, 0x7e, 0x97, 0x44, 0x42, 0x74, 0x79, 0xd8, 0x64, 0xb7, 0x31, 0x05, 0x2e, 0x38, 0xac, 0x57, 0x4d, 0x7c, 0xb6, 0x58, 0x61, 0xf5, 0x18, 0x21, 0x95, 0x91, 0xec, 0x40, }; static const unsigned char xdh_wei25519_879_privkey[] = { 0xd8, 0x05, 0xa7, 0x01, 0x47, 0x55, 0xdd, 0x65, 0x6f, 0x98, 0xd2, 0xb3, 0x31, 0xf2, 0xd2, 0xd4, 0x91, 0x27, 0x25, 0xef, 0x3d, 0x03, 0x75, 0x2f, 0x26, 0xf7, 0x4d, 0xc1, 0xad, 0x61, 0x66, 0x6a, }; static const unsigned char xdh_wei25519_879_sharedsecret[] = { 0x66, 0x48, 0x4a, 0x41, 0x20, 0xe0, 0xeb, 0x0c, 0x7e, 0x05, 0x05, 0xe1, 0xd2, 0xc5, 0xd1, 0x5d, 0xe9, 0xb5, 0x2b, 0x72, 0xe0, 0x94, 0xc9, 0xba, 0xc8, 0x86, 0x34, 0x20, 0x0c, 0x55, 0x72, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_879 = { .name = "xdh_wei25519_879", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_879_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_879_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_879_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_879_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 362 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 880 for XDH, tcId is 363 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_880_peerpubkey[] = { 0xec, 0x3c, 0x8b, 0x0c, 0x10, 0xb1, 0xfa, 0x65, 0xdb, 0xbd, 0x17, 0xcf, 0x1b, 0xa5, 0xf8, 0x63, 0x81, 0x28, 0x47, 0x65, 0x70, 0x9b, 0x07, 0xc5, 0xf0, 0x42, 0x8e, 0x3d, 0x5b, 0xcd, 0x39, 0x20, }; static const unsigned char xdh_wei25519_880_ourpubkey[] = { 0x6f, 0xb1, 0xf5, 0x6d, 0xdd, 0x7d, 0x33, 0x0c, 0xb4, 0xd6, 0x01, 0x58, 0x0f, 0x51, 0x13, 0x61, 0xb2, 0xa1, 0xca, 0xb0, 0xed, 0xf9, 0x3b, 0xdb, 0x42, 0xa2, 0x06, 0x91, 0x23, 0xba, 0xc6, 0x5a, }; static const unsigned char xdh_wei25519_880_privkey[] = { 0x40, 0xcb, 0x1f, 0xe0, 0x6b, 0x08, 0xf0, 0x68, 0xf7, 0x08, 0x0b, 0xa0, 0x7c, 0x69, 0x5e, 0xda, 0x91, 0xa2, 0xbe, 0xbe, 0xad, 0xd4, 0xdb, 0x95, 0xc9, 0x7d, 0xd7, 0xc9, 0x1a, 0xf2, 0x56, 0x6d, }; static const unsigned char xdh_wei25519_880_sharedsecret[] = { 0x38, 0x4f, 0x22, 0x21, 0x61, 0x8e, 0x71, 0xd4, 0x56, 0xb1, 0x55, 0x16, 0x51, 0xef, 0xdb, 0x70, 0x8a, 0x16, 0x1d, 0x7f, 0x89, 0xf5, 0x60, 0x4b, 0x27, 0xeb, 0x87, 0x2d, 0x4a, 0xa9, 0x32, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_880 = { .name = "xdh_wei25519_880", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_880_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_880_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_880_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_880_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 363 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 881 for XDH, tcId is 364 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_881_peerpubkey[] = { 0x63, 0x30, 0xd3, 0xe2, 0x8a, 0x8b, 0x61, 0x26, 0xac, 0xe1, 0x65, 0xa9, 0xdf, 0xcc, 0xc6, 0xe4, 0xbd, 0x40, 0xdb, 0xc9, 0x76, 0x8c, 0xfb, 0x16, 0x33, 0x0c, 0xb7, 0xf2, 0x7f, 0x90, 0x62, 0x30, }; static const unsigned char xdh_wei25519_881_ourpubkey[] = { 0xb5, 0xce, 0x0f, 0x1b, 0x7a, 0x2c, 0xc0, 0xa4, 0x01, 0x38, 0xb7, 0x3d, 0x05, 0x2b, 0xed, 0x7a, 0x24, 0xa3, 0xe4, 0xc5, 0xf2, 0x69, 0xb9, 0x8d, 0xab, 0xc6, 0x07, 0x91, 0x1a, 0xec, 0x3a, 0x32, }; static const unsigned char xdh_wei25519_881_privkey[] = { 0x80, 0x21, 0x46, 0x4c, 0x64, 0xc9, 0xd6, 0xd3, 0xc0, 0xc8, 0x52, 0xf6, 0x97, 0x2d, 0x11, 0x96, 0x9b, 0x04, 0xc9, 0xe0, 0x66, 0x56, 0x2f, 0xa7, 0xf0, 0xd5, 0xfa, 0x0d, 0x98, 0xeb, 0xad, 0x62, }; static const unsigned char xdh_wei25519_881_sharedsecret[] = { 0x8d, 0xaf, 0x5f, 0x4b, 0x84, 0x73, 0x01, 0x44, 0xea, 0x8a, 0x53, 0xce, 0x39, 0xcc, 0x90, 0x7e, 0x39, 0xa8, 0x9e, 0xd0, 0x9f, 0x02, 0x02, 0xe7, 0xbe, 0x0d, 0x3b, 0xda, 0x38, 0xda, 0x66, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_881 = { .name = "xdh_wei25519_881", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_881_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_881_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_881_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_881_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 364 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 882 for XDH, tcId is 365 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_882_peerpubkey[] = { 0x86, 0x78, 0xaa, 0x29, 0xcb, 0xc0, 0x6e, 0x78, 0xb2, 0x18, 0xd2, 0x2a, 0x3e, 0x66, 0xc3, 0x8e, 0xc0, 0xda, 0x8f, 0xdb, 0x0f, 0x25, 0x70, 0xc5, 0x85, 0xc6, 0x25, 0x17, 0xc9, 0x70, 0x4f, 0x37, }; static const unsigned char xdh_wei25519_882_ourpubkey[] = { 0x29, 0x78, 0x8b, 0xe6, 0xcf, 0x2b, 0xd6, 0xd9, 0xc1, 0xbf, 0x86, 0x2a, 0x44, 0x1d, 0x8a, 0x23, 0x5f, 0x02, 0xc6, 0xd6, 0x1c, 0x24, 0xba, 0x5b, 0x9d, 0xb6, 0xc4, 0xc8, 0xb1, 0x5c, 0x07, 0x58, }; static const unsigned char xdh_wei25519_882_privkey[] = { 0x70, 0x7a, 0x2d, 0x71, 0x0b, 0x32, 0xf5, 0x5c, 0x6e, 0xba, 0x34, 0x89, 0x80, 0x20, 0xa2, 0xfb, 0x98, 0x1d, 0x61, 0xb1, 0xe8, 0x22, 0xfc, 0xa8, 0x4c, 0x47, 0xd9, 0x32, 0x1e, 0x27, 0x92, 0x68, }; static const unsigned char xdh_wei25519_882_sharedsecret[] = { 0xda, 0x8b, 0x7e, 0xba, 0x6f, 0x72, 0xc3, 0xf3, 0xef, 0x33, 0xd8, 0x98, 0x20, 0x93, 0x49, 0x2e, 0x06, 0xbe, 0x39, 0xbb, 0x0d, 0xb2, 0x9c, 0x46, 0x5d, 0x95, 0xa8, 0xe5, 0x2e, 0xf6, 0x43, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_882 = { .name = "xdh_wei25519_882", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_882_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_882_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_882_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_882_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 365 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 883 for XDH, tcId is 366 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_883_peerpubkey[] = { 0x30, 0x32, 0x89, 0xc2, 0xb1, 0x07, 0x9e, 0xa5, 0x94, 0x12, 0xfa, 0xcc, 0xfe, 0xba, 0x8c, 0x11, 0x3d, 0x22, 0x99, 0xb9, 0xdc, 0xfe, 0xde, 0xab, 0xc4, 0x26, 0x97, 0xb0, 0x82, 0x9c, 0x46, 0x58, }; static const unsigned char xdh_wei25519_883_ourpubkey[] = { 0x6b, 0x77, 0x12, 0xad, 0x40, 0xb0, 0x96, 0x67, 0x71, 0x63, 0xdd, 0xca, 0x4a, 0x49, 0x94, 0x16, 0x66, 0xf0, 0x72, 0x35, 0x67, 0x77, 0x7a, 0x41, 0x01, 0x69, 0xea, 0x60, 0x01, 0x74, 0x18, 0x0e, }; static const unsigned char xdh_wei25519_883_privkey[] = { 0x20, 0x4a, 0x43, 0xde, 0xa7, 0x9d, 0x77, 0x95, 0x77, 0x58, 0x1b, 0x8c, 0x2a, 0x51, 0xbe, 0x66, 0xe1, 0xef, 0xfc, 0xe9, 0x64, 0x25, 0xb7, 0x42, 0x2b, 0x9c, 0xa6, 0x5b, 0xdf, 0x1a, 0x48, 0x67, }; static const unsigned char xdh_wei25519_883_sharedsecret[] = { 0x04, 0x19, 0xa7, 0x1a, 0x08, 0xd3, 0xfd, 0xd5, 0x74, 0xcb, 0xc9, 0x32, 0xe8, 0xf1, 0x60, 0x59, 0x33, 0xdd, 0xcd, 0xd9, 0x77, 0x4f, 0x56, 0x14, 0x26, 0x9b, 0x7e, 0xd8, 0x50, 0xc8, 0x65, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_883 = { .name = "xdh_wei25519_883", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_883_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_883_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_883_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_883_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 366 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 884 for XDH, tcId is 367 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_884_peerpubkey[] = { 0x3e, 0x6e, 0x16, 0xe0, 0x2d, 0x44, 0xeb, 0xd9, 0x46, 0x80, 0x83, 0x2e, 0x06, 0x5a, 0xed, 0xdc, 0xbb, 0x74, 0xaf, 0x64, 0xfb, 0xb7, 0xc6, 0xd8, 0x36, 0x7e, 0x76, 0x05, 0xbe, 0x13, 0xff, 0x5b, }; static const unsigned char xdh_wei25519_884_ourpubkey[] = { 0x73, 0x46, 0xd4, 0x2c, 0xa9, 0x3a, 0x7e, 0xb7, 0x6e, 0x9d, 0xea, 0xda, 0x54, 0x29, 0xe3, 0x3c, 0x26, 0x1f, 0xbe, 0xe8, 0x9d, 0x3d, 0xfc, 0x0e, 0xb1, 0x81, 0x19, 0xc0, 0x62, 0xc2, 0x7f, 0x68, }; static const unsigned char xdh_wei25519_884_privkey[] = { 0x58, 0xe4, 0x74, 0x17, 0x35, 0xd2, 0x58, 0x93, 0x22, 0x15, 0x19, 0x47, 0xa1, 0xce, 0x2f, 0x58, 0x29, 0x90, 0x86, 0x26, 0x88, 0x69, 0x41, 0xcb, 0x16, 0x31, 0xd2, 0x5a, 0x8a, 0x68, 0x41, 0x69, }; static const unsigned char xdh_wei25519_884_sharedsecret[] = { 0x9f, 0x2f, 0xcd, 0x0c, 0x75, 0x62, 0x88, 0xc1, 0x71, 0x6e, 0xcd, 0x1f, 0x2a, 0x74, 0x86, 0x4b, 0x93, 0xa7, 0x71, 0x7b, 0xfa, 0xf5, 0x24, 0x88, 0x58, 0xdc, 0xb6, 0xfd, 0xbe, 0xa1, 0x28, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_884 = { .name = "xdh_wei25519_884", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_884_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_884_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_884_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_884_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 367 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 885 for XDH, tcId is 368 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_885_peerpubkey[] = { 0xa7, 0xc1, 0x71, 0x6a, 0x41, 0xed, 0x23, 0xa8, 0x87, 0x04, 0x38, 0x71, 0x4f, 0xf9, 0x74, 0x5f, 0xb0, 0xe4, 0x6f, 0x7a, 0x5b, 0xae, 0xb3, 0x7c, 0x9a, 0x2d, 0x83, 0xfe, 0x47, 0x7d, 0x14, 0x6c, }; static const unsigned char xdh_wei25519_885_ourpubkey[] = { 0xc0, 0xfe, 0x73, 0xf9, 0xac, 0x0a, 0xcf, 0x38, 0xad, 0x89, 0x36, 0x53, 0x4a, 0xe2, 0xed, 0xab, 0xca, 0xe8, 0x8c, 0x07, 0x2a, 0x5c, 0x7f, 0xa9, 0x19, 0xb2, 0x32, 0x85, 0x3b, 0x04, 0xda, 0x30, }; static const unsigned char xdh_wei25519_885_privkey[] = { 0xd0, 0xaf, 0x34, 0x28, 0xea, 0x52, 0x05, 0xf6, 0xbf, 0x8d, 0x4f, 0x1b, 0x4e, 0x49, 0x03, 0xcd, 0x76, 0xf0, 0x42, 0x36, 0xa1, 0xc0, 0xb3, 0xec, 0xfd, 0xca, 0xf2, 0x8b, 0x21, 0x34, 0x8e, 0x63, }; static const unsigned char xdh_wei25519_885_sharedsecret[] = { 0x26, 0x1a, 0xb6, 0x26, 0x7c, 0x35, 0xa9, 0x75, 0x53, 0x59, 0xe9, 0x57, 0x47, 0x38, 0x70, 0x52, 0x2b, 0x7f, 0x92, 0x3f, 0xe8, 0x39, 0xf2, 0xb1, 0x55, 0x40, 0x86, 0x49, 0xcc, 0x5e, 0x80, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_885 = { .name = "xdh_wei25519_885", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_885_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_885_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_885_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_885_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 368 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 886 for XDH, tcId is 369 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_886_peerpubkey[] = { 0xda, 0xd9, 0x81, 0x55, 0x2c, 0x57, 0x54, 0x1c, 0x57, 0xef, 0x39, 0x5e, 0xd7, 0x70, 0xce, 0x5e, 0xdc, 0x48, 0xf8, 0x01, 0x54, 0x61, 0xb2, 0xba, 0x7a, 0xa8, 0x31, 0xec, 0x59, 0x3c, 0xeb, 0x15, }; static const unsigned char xdh_wei25519_886_ourpubkey[] = { 0xa5, 0x67, 0x8b, 0xd1, 0xf1, 0xac, 0x9d, 0x62, 0x7c, 0x81, 0x4c, 0xd9, 0x25, 0x53, 0x8f, 0x04, 0xf3, 0x2c, 0xd5, 0x6d, 0x8e, 0x44, 0x69, 0x88, 0x74, 0xe4, 0x18, 0x4a, 0x9c, 0x11, 0xaa, 0x5e, }; static const unsigned char xdh_wei25519_886_privkey[] = { 0xc0, 0xea, 0x97, 0xe4, 0x42, 0xe5, 0xdc, 0x1c, 0x81, 0x42, 0xbf, 0xab, 0x70, 0x89, 0xec, 0xb9, 0xbb, 0x9c, 0x5a, 0xe3, 0x72, 0xf9, 0x90, 0x7c, 0x28, 0x25, 0xe6, 0x78, 0xde, 0xfa, 0xe5, 0x67, }; static const unsigned char xdh_wei25519_886_sharedsecret[] = { 0x90, 0x93, 0xbf, 0xa3, 0xed, 0x34, 0x91, 0xd0, 0x89, 0x1f, 0x02, 0xae, 0x46, 0x6e, 0x5e, 0x13, 0xc9, 0x80, 0xdf, 0x22, 0x9d, 0xb7, 0x40, 0x4c, 0x5b, 0x9d, 0x34, 0xe4, 0xed, 0x21, 0xc6, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_886 = { .name = "xdh_wei25519_886", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_886_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_886_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_886_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_886_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 369 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 887 for XDH, tcId is 370 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_887_peerpubkey[] = { 0xc5, 0x88, 0xdf, 0xe6, 0xe7, 0x33, 0xd9, 0x05, 0x81, 0xcb, 0xe1, 0x12, 0x07, 0x97, 0x49, 0xd8, 0xeb, 0x30, 0xab, 0x86, 0x31, 0x13, 0x4e, 0xc2, 0x9a, 0xbf, 0xb9, 0x8b, 0x32, 0xe7, 0x65, 0x22, }; static const unsigned char xdh_wei25519_887_ourpubkey[] = { 0x08, 0x65, 0x15, 0x7e, 0x0d, 0xc5, 0x2e, 0xe0, 0x00, 0x1c, 0xac, 0x65, 0x3c, 0xef, 0x5f, 0xf8, 0x21, 0x3f, 0x00, 0xb6, 0x90, 0xc8, 0x83, 0xa5, 0xdc, 0xa7, 0x8a, 0xcf, 0x78, 0x75, 0x09, 0x7e, }; static const unsigned char xdh_wei25519_887_privkey[] = { 0xb0, 0x33, 0x3f, 0x09, 0xac, 0x1e, 0xaa, 0xcd, 0x3c, 0xd6, 0x17, 0xeb, 0x88, 0x32, 0xe9, 0xde, 0x48, 0x8b, 0x45, 0x8b, 0x73, 0x5c, 0xb4, 0xb5, 0x34, 0x5f, 0x51, 0x71, 0x30, 0xc2, 0x5d, 0x6b, }; static const unsigned char xdh_wei25519_887_sharedsecret[] = { 0x6e, 0x88, 0xbb, 0x6b, 0xf7, 0x55, 0x96, 0xbb, 0xe5, 0xf1, 0xfb, 0xe9, 0x1e, 0x36, 0x5a, 0x52, 0x7a, 0x15, 0x6f, 0x4f, 0x1b, 0x57, 0xc1, 0x3a, 0xc1, 0xe3, 0xe6, 0xdb, 0x93, 0x19, 0x12, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_887 = { .name = "xdh_wei25519_887", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_887_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_887_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_887_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_887_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 370 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 888 for XDH, tcId is 371 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_888_peerpubkey[] = { 0x06, 0x70, 0x11, 0x6a, 0x43, 0x5e, 0x8d, 0x9b, 0x7a, 0x12, 0xff, 0xc4, 0x32, 0x2f, 0xd6, 0xb1, 0x49, 0xd0, 0xb1, 0xdc, 0x79, 0x9b, 0x5c, 0x09, 0x57, 0xd9, 0xd6, 0xe4, 0x25, 0x46, 0xe8, 0x24, }; static const unsigned char xdh_wei25519_888_ourpubkey[] = { 0xbc, 0x9b, 0xad, 0x10, 0xac, 0x5e, 0x15, 0x44, 0xee, 0x36, 0xdf, 0x32, 0x83, 0x18, 0x1e, 0xf9, 0xf4, 0x2a, 0xac, 0x65, 0x1c, 0x36, 0x7e, 0xcc, 0xc1, 0x94, 0x0f, 0x91, 0x2c, 0x72, 0xb8, 0x6f, }; static const unsigned char xdh_wei25519_888_privkey[] = { 0x10, 0x71, 0x90, 0x99, 0xdc, 0x63, 0xbc, 0xc2, 0x82, 0xef, 0x52, 0x58, 0x45, 0xc1, 0x08, 0x89, 0x7a, 0xc9, 0xfa, 0xe9, 0x59, 0x0b, 0x59, 0x3e, 0x0d, 0x50, 0x5d, 0x1c, 0xf1, 0x67, 0xc0, 0x61, }; static const unsigned char xdh_wei25519_888_sharedsecret[] = { 0xe6, 0xde, 0x74, 0xd2, 0xc5, 0xce, 0xa5, 0x40, 0x94, 0xd7, 0xa7, 0x0a, 0xf0, 0x3c, 0x76, 0x8a, 0xfe, 0x05, 0xd5, 0x2a, 0x03, 0x8b, 0xb7, 0x2d, 0x56, 0xdc, 0xac, 0xf0, 0xba, 0x50, 0x2d, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_888 = { .name = "xdh_wei25519_888", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_888_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_888_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_888_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_888_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 371 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 889 for XDH, tcId is 372 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_889_peerpubkey[] = { 0x8b, 0x20, 0x0d, 0xd2, 0x26, 0xc5, 0xc0, 0xf7, 0xe1, 0x16, 0xe5, 0x38, 0x8b, 0xa1, 0x62, 0x43, 0x8c, 0xaf, 0x1d, 0xdd, 0xf4, 0xed, 0xc3, 0xb6, 0xba, 0x83, 0x8c, 0x21, 0xb5, 0x92, 0x97, 0x37, }; static const unsigned char xdh_wei25519_889_ourpubkey[] = { 0x94, 0x25, 0xfc, 0xab, 0x91, 0xb6, 0x9b, 0x4f, 0xbc, 0xd2, 0x68, 0x84, 0x08, 0xd4, 0x16, 0x6f, 0x0e, 0x02, 0xc9, 0x31, 0xb3, 0x23, 0xf2, 0xfc, 0x9c, 0x00, 0xf9, 0xf6, 0x49, 0x47, 0xfe, 0x42, }; static const unsigned char xdh_wei25519_889_privkey[] = { 0x10, 0xe2, 0x0e, 0x4f, 0xda, 0x57, 0x08, 0x4c, 0xa9, 0x0f, 0x7a, 0xd5, 0x72, 0xa7, 0x8a, 0xa8, 0xe6, 0x57, 0x5c, 0x65, 0x9c, 0xd0, 0x1f, 0x30, 0xc4, 0x3c, 0x58, 0x04, 0x0c, 0x20, 0xe8, 0x60, }; static const unsigned char xdh_wei25519_889_sharedsecret[] = { 0x78, 0xc9, 0xc3, 0xaf, 0xf9, 0x41, 0x6a, 0x53, 0x8c, 0xe3, 0xea, 0x8f, 0xa5, 0x53, 0x24, 0x45, 0x28, 0xd1, 0xfb, 0xec, 0xbc, 0xf9, 0x16, 0x95, 0xa3, 0x3c, 0xa4, 0x64, 0xef, 0x76, 0xb8, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_889 = { .name = "xdh_wei25519_889", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_889_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_889_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_889_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_889_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 372 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 890 for XDH, tcId is 373 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_890_peerpubkey[] = { 0x41, 0x9a, 0x07, 0x6b, 0x17, 0x9f, 0x79, 0x72, 0x00, 0x96, 0xea, 0xab, 0xaf, 0x03, 0x47, 0x7e, 0x8f, 0x89, 0xd6, 0x1f, 0x88, 0x5c, 0x8d, 0x7f, 0x58, 0xf6, 0xea, 0xa4, 0xfa, 0x77, 0xdf, 0x5f, }; static const unsigned char xdh_wei25519_890_ourpubkey[] = { 0x0b, 0x12, 0xc1, 0xb4, 0xaf, 0xed, 0x5a, 0xad, 0x95, 0x7b, 0xb6, 0xc6, 0xbe, 0xb0, 0x4b, 0x9c, 0xaa, 0xb6, 0xc0, 0x08, 0x6c, 0x95, 0x5a, 0x09, 0xd3, 0x40, 0x82, 0xfc, 0x05, 0xb1, 0xa3, 0x3f, }; static const unsigned char xdh_wei25519_890_privkey[] = { 0xa8, 0x31, 0x2d, 0xf4, 0x73, 0xad, 0xfe, 0xc7, 0x17, 0x1e, 0x16, 0x35, 0xf5, 0xba, 0xd4, 0x4f, 0x07, 0x53, 0xa8, 0x8a, 0x6b, 0x31, 0x74, 0xec, 0x5a, 0xe7, 0x62, 0x70, 0x3a, 0xe2, 0x5e, 0x60, }; static const unsigned char xdh_wei25519_890_sharedsecret[] = { 0xc1, 0xa9, 0x6c, 0xcb, 0xa0, 0x8b, 0xdd, 0x82, 0xd0, 0xfc, 0x12, 0xe8, 0xcd, 0xe4, 0xcc, 0x1f, 0x25, 0xcf, 0xd5, 0x27, 0x6d, 0xce, 0x7f, 0x18, 0xe4, 0x07, 0xed, 0x0e, 0x4a, 0x89, 0x84, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_890 = { .name = "xdh_wei25519_890", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_890_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_890_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_890_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_890_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 373 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 891 for XDH, tcId is 374 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_891_peerpubkey[] = { 0xaa, 0x34, 0xd7, 0x72, 0xe9, 0xac, 0xe4, 0x3c, 0x4d, 0x92, 0xf4, 0xf8, 0x55, 0x96, 0xab, 0x9c, 0xcd, 0x8c, 0x36, 0xc4, 0xf4, 0xcb, 0xdd, 0xc8, 0x19, 0xaf, 0xe2, 0xa3, 0x3c, 0xb8, 0xb2, 0x16, }; static const unsigned char xdh_wei25519_891_ourpubkey[] = { 0x10, 0xaa, 0x65, 0xe2, 0x14, 0x3e, 0x80, 0x10, 0x0c, 0xef, 0xb5, 0x90, 0x71, 0xcc, 0x41, 0xc3, 0x58, 0xe1, 0xb7, 0xd1, 0x3c, 0x13, 0x93, 0xa9, 0xe5, 0x0e, 0xa3, 0xde, 0x3d, 0x8c, 0xe7, 0x22, }; static const unsigned char xdh_wei25519_891_privkey[] = { 0x10, 0x96, 0x97, 0xf4, 0x00, 0x21, 0x0f, 0x9a, 0x92, 0xde, 0x80, 0xa8, 0xbe, 0xd2, 0x64, 0x09, 0x71, 0x99, 0xbc, 0x24, 0x0e, 0x22, 0x76, 0x7b, 0x54, 0xd8, 0xbb, 0x22, 0x05, 0x0b, 0x7a, 0x61, }; static const unsigned char xdh_wei25519_891_sharedsecret[] = { 0x25, 0x33, 0xb8, 0x45, 0xbb, 0x83, 0xe3, 0xd4, 0x8c, 0xff, 0xa8, 0xdb, 0xd1, 0xed, 0xd5, 0xd6, 0x01, 0x77, 0x86, 0x62, 0xd5, 0xda, 0x03, 0x75, 0x91, 0x52, 0xa5, 0xe0, 0xa8, 0x4b, 0x35, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_891 = { .name = "xdh_wei25519_891", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_891_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_891_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_891_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_891_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 374 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 892 for XDH, tcId is 375 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_892_peerpubkey[] = { 0x1f, 0x06, 0xcf, 0xe4, 0x64, 0xcc, 0xc0, 0xe2, 0x7a, 0x5e, 0xc5, 0xf9, 0xed, 0xd9, 0xbc, 0x7b, 0xc8, 0x22, 0xad, 0x2f, 0xf5, 0x06, 0x8c, 0xa5, 0xc9, 0x63, 0xd2, 0x0e, 0xdd, 0x1a, 0x2d, 0x22, }; static const unsigned char xdh_wei25519_892_ourpubkey[] = { 0xd9, 0x8d, 0x0d, 0x43, 0xb1, 0x19, 0x84, 0xbb, 0x16, 0xa0, 0x43, 0xd8, 0xfb, 0xc2, 0x6e, 0xf7, 0x31, 0xc4, 0x1e, 0x22, 0xe3, 0xb5, 0xe2, 0x93, 0x79, 0x2b, 0x6c, 0xc3, 0xa7, 0xee, 0x19, 0x2f, }; static const unsigned char xdh_wei25519_892_privkey[] = { 0xd0, 0x36, 0x30, 0x8a, 0x53, 0xc1, 0x1b, 0xeb, 0xcb, 0x02, 0xe8, 0x36, 0x88, 0xad, 0x74, 0xfe, 0xc4, 0x3f, 0x84, 0x62, 0xef, 0x4d, 0x80, 0x62, 0x72, 0x67, 0x66, 0x37, 0xd9, 0x9b, 0x37, 0x65, }; static const unsigned char xdh_wei25519_892_sharedsecret[] = { 0xeb, 0x40, 0xa3, 0x97, 0x4b, 0x1b, 0x03, 0x10, 0xb1, 0x59, 0x7d, 0x1f, 0x1f, 0x41, 0x01, 0xc0, 0x8d, 0xca, 0x72, 0x74, 0x55, 0xa9, 0xd8, 0x22, 0x4c, 0xd0, 0x61, 0xa7, 0xaa, 0x3c, 0xb6, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_892 = { .name = "xdh_wei25519_892", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_892_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_892_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_892_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_892_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 375 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 893 for XDH, tcId is 376 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_893_peerpubkey[] = { 0x9d, 0x4b, 0x2e, 0xd7, 0x81, 0x71, 0x32, 0xaf, 0x58, 0x30, 0xe8, 0x99, 0x62, 0x7e, 0xa9, 0x7d, 0xc3, 0x9b, 0xd3, 0x77, 0x2e, 0x82, 0xf2, 0xd0, 0x57, 0x69, 0xa9, 0x18, 0x27, 0x3d, 0xc0, 0x2e, }; static const unsigned char xdh_wei25519_893_ourpubkey[] = { 0x66, 0x1b, 0x90, 0x37, 0xd7, 0xad, 0xcc, 0xc8, 0x10, 0x22, 0x17, 0x1c, 0x53, 0xb5, 0x7d, 0x56, 0x92, 0x76, 0x06, 0xea, 0x12, 0x7c, 0x68, 0xa2, 0xaf, 0x10, 0x12, 0xca, 0x11, 0x34, 0x0d, 0x37, }; static const unsigned char xdh_wei25519_893_privkey[] = { 0x78, 0x6e, 0x5a, 0x5f, 0xf3, 0x74, 0x05, 0xc7, 0x69, 0xd0, 0xd3, 0x78, 0x8c, 0x3c, 0x1b, 0x05, 0xa6, 0x2a, 0x84, 0x42, 0xc3, 0x85, 0x57, 0x0e, 0x44, 0x38, 0xbc, 0x5f, 0x2e, 0xaa, 0xcd, 0x67, }; static const unsigned char xdh_wei25519_893_sharedsecret[] = { 0x95, 0x09, 0x75, 0x7e, 0x28, 0x95, 0x53, 0xcf, 0xa2, 0xcc, 0x71, 0x31, 0x34, 0x73, 0xc3, 0xff, 0x1e, 0xeb, 0xce, 0x48, 0x4e, 0xe2, 0x37, 0xea, 0xe5, 0x54, 0xfd, 0xa3, 0xd3, 0xd2, 0x2f, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_893 = { .name = "xdh_wei25519_893", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_893_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_893_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_893_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_893_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 376 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 894 for XDH, tcId is 377 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_894_peerpubkey[] = { 0x4e, 0x05, 0x6b, 0x31, 0x7a, 0x31, 0xdd, 0x96, 0xf8, 0xec, 0x14, 0xb4, 0x84, 0x74, 0xaf, 0x58, 0x7d, 0x19, 0x5e, 0xfc, 0xc2, 0xa7, 0x0f, 0x01, 0xf0, 0x52, 0xef, 0x88, 0x2d, 0x7b, 0x3a, 0x45, }; static const unsigned char xdh_wei25519_894_ourpubkey[] = { 0xdc, 0x5c, 0xa3, 0xea, 0xbd, 0xda, 0xb2, 0x4f, 0x77, 0xd8, 0xc6, 0x72, 0xba, 0x9e, 0xed, 0xd7, 0x08, 0x9c, 0x22, 0xff, 0x2f, 0xcf, 0xcb, 0xec, 0xf6, 0xed, 0xb0, 0x34, 0x1b, 0x70, 0xb4, 0x68, }; static const unsigned char xdh_wei25519_894_privkey[] = { 0xc0, 0x1f, 0x66, 0xcb, 0x09, 0x42, 0x89, 0xd7, 0x28, 0x42, 0x1d, 0xd4, 0x6c, 0x6f, 0x97, 0x18, 0x41, 0x2e, 0x1c, 0x54, 0x6d, 0xad, 0x70, 0xe5, 0x86, 0x85, 0x1b, 0xe4, 0xda, 0x58, 0xbf, 0x67, }; static const unsigned char xdh_wei25519_894_sharedsecret[] = { 0xba, 0xd9, 0xf7, 0xb2, 0x7d, 0xac, 0x64, 0xb0, 0xfc, 0x98, 0x0a, 0x41, 0xf1, 0xce, 0xfa, 0x50, 0xc5, 0xca, 0x40, 0xc7, 0x14, 0x29, 0x6c, 0x0c, 0x40, 0x42, 0x09, 0x5c, 0x2d, 0xb6, 0x0e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_894 = { .name = "xdh_wei25519_894", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_894_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_894_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_894_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_894_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 377 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 895 for XDH, tcId is 378 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_895_peerpubkey[] = { 0x72, 0xc6, 0x05, 0x35, 0xe9, 0xc4, 0x23, 0xf3, 0x02, 0xd6, 0xa1, 0x07, 0x96, 0xd9, 0x54, 0xd7, 0x78, 0x03, 0x2c, 0xd4, 0xdb, 0xd4, 0x0c, 0xa0, 0xf3, 0x59, 0xe2, 0x04, 0xd6, 0x7b, 0x6f, 0x4c, }; static const unsigned char xdh_wei25519_895_ourpubkey[] = { 0x3c, 0x99, 0xd8, 0xe4, 0x49, 0x1a, 0xd0, 0xb9, 0x61, 0x64, 0xfe, 0x48, 0x79, 0x4c, 0x02, 0xae, 0x36, 0xc2, 0xbc, 0x84, 0x27, 0x1d, 0x16, 0xf7, 0x0c, 0x0b, 0x38, 0xbf, 0x77, 0x4b, 0x95, 0x1c, }; static const unsigned char xdh_wei25519_895_privkey[] = { 0x38, 0x77, 0xd9, 0xce, 0x25, 0xce, 0xde, 0xde, 0xb5, 0x72, 0x60, 0x4f, 0x2d, 0x12, 0x3d, 0xf6, 0x85, 0x69, 0x0c, 0x26, 0xe1, 0x81, 0xf7, 0x77, 0xed, 0x33, 0x30, 0x2b, 0x82, 0x08, 0x29, 0x66, }; static const unsigned char xdh_wei25519_895_sharedsecret[] = { 0x51, 0xc3, 0x59, 0x76, 0x8a, 0xb0, 0x21, 0x90, 0x03, 0xaf, 0x19, 0x3e, 0x2b, 0xdb, 0x8e, 0x5c, 0xc9, 0xf8, 0xe1, 0x76, 0xb8, 0xdb, 0x49, 0xe5, 0x97, 0xaf, 0xca, 0x3e, 0x71, 0x25, 0xe3, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_895 = { .name = "xdh_wei25519_895", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_895_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_895_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_895_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_895_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 378 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 896 for XDH, tcId is 379 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_896_peerpubkey[] = { 0x58, 0x56, 0x35, 0x8e, 0xd4, 0x20, 0x04, 0x7c, 0xd0, 0x84, 0xf1, 0x7a, 0xe6, 0x96, 0xba, 0xd7, 0x9a, 0x4d, 0x26, 0xc6, 0xd5, 0xbb, 0x79, 0xbf, 0xb8, 0x2b, 0xbc, 0x63, 0x32, 0x44, 0x2d, 0x51, }; static const unsigned char xdh_wei25519_896_ourpubkey[] = { 0x89, 0xdf, 0xd5, 0x9a, 0x1f, 0x5a, 0xe8, 0x7a, 0x24, 0x1e, 0xee, 0x62, 0x50, 0x8a, 0x96, 0xd8, 0x1a, 0x80, 0x5b, 0x07, 0x4a, 0x45, 0x3f, 0x37, 0x23, 0xea, 0x1e, 0x70, 0x89, 0xe5, 0xc9, 0x05, }; static const unsigned char xdh_wei25519_896_privkey[] = { 0x50, 0xb8, 0x46, 0x18, 0xd0, 0x73, 0xc4, 0x61, 0x8f, 0x9a, 0xa6, 0x9a, 0x3b, 0x85, 0x18, 0xda, 0x76, 0xdb, 0xb2, 0x12, 0x72, 0x86, 0x21, 0x4f, 0xb4, 0x3a, 0x2b, 0x44, 0x50, 0x3b, 0x99, 0x69, }; static const unsigned char xdh_wei25519_896_sharedsecret[] = { 0xfa, 0x9f, 0xb0, 0xdf, 0x4c, 0xfb, 0xac, 0xd0, 0xfb, 0xf3, 0x26, 0x2d, 0x3a, 0x1b, 0xf8, 0xd7, 0xaa, 0xcb, 0x45, 0xf7, 0x3b, 0xf9, 0x46, 0x71, 0x77, 0x5e, 0x50, 0x9c, 0x80, 0x43, 0xdf, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_896 = { .name = "xdh_wei25519_896", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_896_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_896_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_896_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_896_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 379 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 897 for XDH, tcId is 380 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_897_peerpubkey[] = { 0xc3, 0x1e, 0x37, 0xb0, 0x43, 0x32, 0xab, 0xca, 0x83, 0x15, 0xf3, 0x17, 0x17, 0x15, 0x66, 0xae, 0xf3, 0x81, 0x11, 0xf6, 0x22, 0xd8, 0xbf, 0xfa, 0x29, 0xc2, 0x3c, 0x01, 0x51, 0xcd, 0xad, 0x6e, }; static const unsigned char xdh_wei25519_897_ourpubkey[] = { 0x2c, 0x9b, 0x0c, 0xfa, 0x9d, 0x09, 0x61, 0x47, 0xb4, 0x43, 0x9c, 0x69, 0xd8, 0x54, 0x92, 0x74, 0xdc, 0xef, 0xca, 0x6f, 0x6b, 0xc9, 0x80, 0x41, 0x01, 0x48, 0xb4, 0x79, 0x3d, 0x37, 0xae, 0x71, }; static const unsigned char xdh_wei25519_897_privkey[] = { 0x10, 0x9a, 0xcf, 0xa6, 0x38, 0xe1, 0x12, 0xf6, 0xbb, 0xec, 0x21, 0xe3, 0x52, 0xa7, 0x4e, 0x8f, 0xc9, 0xb7, 0xff, 0xe5, 0xd9, 0xdc, 0x28, 0x63, 0x4e, 0xeb, 0x51, 0x6e, 0x59, 0x83, 0x0a, 0x63, }; static const unsigned char xdh_wei25519_897_sharedsecret[] = { 0x91, 0xac, 0x72, 0xb0, 0xed, 0x8d, 0x7f, 0xc4, 0xc8, 0x84, 0x6b, 0x8a, 0x25, 0x30, 0xd9, 0xfb, 0x8f, 0x05, 0x32, 0x06, 0x48, 0x80, 0xc0, 0x0d, 0xab, 0x10, 0x0c, 0x97, 0x76, 0x97, 0xdb, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_897 = { .name = "xdh_wei25519_897", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_897_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_897_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_897_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_897_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 380 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 898 for XDH, tcId is 381 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_898_peerpubkey[] = { 0xb7, 0x75, 0xe0, 0x16, 0xb3, 0x2a, 0x97, 0xf4, 0x99, 0x71, 0x12, 0x19, 0x06, 0x76, 0x3f, 0x3a, 0x0b, 0x41, 0x68, 0x90, 0x92, 0xb9, 0x58, 0x3b, 0x67, 0x10, 0xcf, 0x7d, 0xee, 0x03, 0xa6, 0x1c, }; static const unsigned char xdh_wei25519_898_ourpubkey[] = { 0x25, 0x5f, 0xfc, 0x41, 0x99, 0xac, 0x2e, 0x70, 0x0f, 0x58, 0x45, 0x3b, 0x88, 0x44, 0x86, 0x15, 0x6a, 0x5d, 0x5c, 0xe6, 0x3c, 0xce, 0x39, 0x41, 0x06, 0xd8, 0xf2, 0x40, 0x4b, 0x83, 0x41, 0x09, }; static const unsigned char xdh_wei25519_898_privkey[] = { 0x68, 0x5c, 0x07, 0x84, 0xaa, 0x6d, 0x19, 0x4c, 0x1b, 0x85, 0x9b, 0xda, 0x44, 0xc4, 0xe2, 0x7c, 0xd1, 0xdf, 0xdf, 0x34, 0x77, 0x6e, 0x49, 0x8d, 0xd0, 0x3d, 0x09, 0xf8, 0x7a, 0xe6, 0x8a, 0x65, }; static const unsigned char xdh_wei25519_898_sharedsecret[] = { 0x11, 0x39, 0x3b, 0xb5, 0x48, 0x81, 0x3e, 0x04, 0xfb, 0x54, 0x13, 0x3e, 0xdb, 0xe0, 0x62, 0x64, 0x58, 0xe8, 0x09, 0x81, 0x88, 0x5e, 0x1f, 0xe5, 0xf3, 0x37, 0x7e, 0x8e, 0xbe, 0x9a, 0xfa, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_898 = { .name = "xdh_wei25519_898", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_898_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_898_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_898_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_898_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 381 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 899 for XDH, tcId is 382 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_899_peerpubkey[] = { 0xf8, 0xbd, 0x0e, 0x7c, 0xf6, 0xec, 0x61, 0x86, 0xf2, 0x05, 0xab, 0x03, 0xab, 0x72, 0xc8, 0xf6, 0xb3, 0xcd, 0xe8, 0xf6, 0xad, 0x9b, 0x16, 0x69, 0x16, 0xa0, 0x4d, 0x43, 0xd1, 0xd6, 0xd5, 0x46, }; static const unsigned char xdh_wei25519_899_ourpubkey[] = { 0x25, 0xd5, 0x85, 0x1b, 0x1a, 0x8e, 0x0b, 0x46, 0x49, 0xe2, 0xb4, 0xed, 0xf3, 0x00, 0x4d, 0x46, 0x12, 0x76, 0xf3, 0x91, 0xc0, 0xb6, 0xe5, 0x9b, 0x7a, 0x6b, 0xbc, 0xcb, 0xad, 0x08, 0xac, 0x6e, }; static const unsigned char xdh_wei25519_899_privkey[] = { 0x18, 0xe9, 0xa0, 0x5a, 0x20, 0x43, 0x6c, 0xf0, 0xdb, 0xc3, 0xd5, 0xb9, 0x2d, 0xac, 0x8d, 0x99, 0x6e, 0x62, 0xea, 0x11, 0xfb, 0xb3, 0x44, 0x5f, 0x29, 0x19, 0x5f, 0xc7, 0x5a, 0x8b, 0xeb, 0x69, }; static const unsigned char xdh_wei25519_899_sharedsecret[] = { 0x0a, 0x83, 0xa2, 0x24, 0xfb, 0xfc, 0xbc, 0x5d, 0x0f, 0x07, 0xf6, 0xdd, 0x8e, 0xbb, 0x2e, 0x9b, 0xbe, 0xe8, 0x13, 0x4f, 0x0f, 0xab, 0x26, 0x80, 0x02, 0xce, 0x83, 0x7f, 0x54, 0x95, 0xd8, 0x33, }; static const wycheproof_xdh_test xdh_wei25519_899 = { .name = "xdh_wei25519_899", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_899_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_899_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_899_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_899_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 382 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 900 for XDH, tcId is 383 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_900_peerpubkey[] = { 0x8d, 0xfe, 0xe4, 0x8a, 0xd8, 0xb3, 0x67, 0x48, 0x8e, 0xa4, 0xda, 0xfc, 0xf7, 0x08, 0x6e, 0x30, 0x53, 0x56, 0xa8, 0x09, 0x01, 0xf8, 0x7c, 0x72, 0x01, 0x49, 0xa5, 0xf5, 0x22, 0x33, 0x74, 0x53, }; static const unsigned char xdh_wei25519_900_ourpubkey[] = { 0x76, 0x18, 0x99, 0x85, 0x5f, 0x64, 0x90, 0x96, 0xf6, 0x00, 0xc2, 0x38, 0xae, 0xcd, 0x07, 0xd9, 0x77, 0x34, 0x97, 0x6c, 0xd7, 0x50, 0x3f, 0xab, 0x88, 0x8a, 0x9f, 0xb4, 0x86, 0xdf, 0x43, 0x40, }; static const unsigned char xdh_wei25519_900_privkey[] = { 0x00, 0xe0, 0x99, 0xeb, 0x23, 0x12, 0x5d, 0xab, 0x5e, 0xc3, 0x5a, 0x41, 0x9d, 0x45, 0x5d, 0x0b, 0xa8, 0xc0, 0x1d, 0xa1, 0x60, 0xf9, 0x35, 0x4e, 0x9f, 0xb2, 0x1e, 0x6a, 0x55, 0xd5, 0x5c, 0x64, }; static const unsigned char xdh_wei25519_900_sharedsecret[] = { 0x45, 0xdc, 0x39, 0x83, 0x1f, 0x34, 0x71, 0xd7, 0x46, 0x6b, 0xbe, 0x29, 0xc8, 0x14, 0x2b, 0x1a, 0x6d, 0x6b, 0x00, 0xc4, 0x7f, 0xea, 0x02, 0x1b, 0xe2, 0xff, 0xc4, 0x52, 0xd9, 0x04, 0x68, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_900 = { .name = "xdh_wei25519_900", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_900_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_900_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_900_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_900_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 383 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 901 for XDH, tcId is 384 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_901_peerpubkey[] = { 0x8f, 0x68, 0xbf, 0xc5, 0x7d, 0x79, 0x2c, 0x32, 0x2e, 0xbb, 0x27, 0xf4, 0x4a, 0x37, 0xc1, 0xc9, 0x3e, 0x7e, 0xb1, 0x5c, 0x5d, 0x5f, 0xce, 0xdf, 0xfc, 0x1d, 0xe8, 0x50, 0x48, 0x7b, 0x33, 0x72, }; static const unsigned char xdh_wei25519_901_ourpubkey[] = { 0x56, 0xd9, 0xdd, 0x76, 0x12, 0x93, 0x3b, 0x1c, 0xe8, 0x51, 0xcb, 0x0a, 0x85, 0x32, 0x11, 0x02, 0x68, 0x5f, 0xee, 0x59, 0x78, 0x61, 0x2f, 0x2f, 0x47, 0xff, 0x00, 0xd5, 0x04, 0x92, 0x3e, 0x32, }; static const unsigned char xdh_wei25519_901_privkey[] = { 0xb0, 0xca, 0x25, 0x1e, 0x0d, 0xba, 0xe7, 0x32, 0x4a, 0x6c, 0xa0, 0xc2, 0xc8, 0xd6, 0xa8, 0x88, 0xed, 0xd1, 0x2d, 0x14, 0x47, 0xd4, 0x00, 0xa4, 0x7b, 0xcb, 0xa0, 0x04, 0xb6, 0x48, 0x71, 0x6e, }; static const unsigned char xdh_wei25519_901_sharedsecret[] = { 0xa2, 0x90, 0x05, 0xc6, 0xb9, 0xdb, 0xf1, 0x70, 0x7d, 0xc2, 0xad, 0xce, 0x45, 0x06, 0xb5, 0x58, 0x31, 0xe8, 0x67, 0x5b, 0x7d, 0x2d, 0x54, 0xb0, 0xc1, 0x03, 0x77, 0x41, 0xe3, 0xbc, 0x61, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_901 = { .name = "xdh_wei25519_901", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_901_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_901_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_901_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_901_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 384 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 902 for XDH, tcId is 385 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_902_peerpubkey[] = { 0xff, 0x0f, 0x15, 0xad, 0xea, 0xb3, 0x34, 0xaf, 0xed, 0xa3, 0x91, 0x67, 0x85, 0xdd, 0xd3, 0x8d, 0x25, 0x2d, 0xce, 0x98, 0x76, 0xc2, 0x35, 0x7b, 0x64, 0x3b, 0x5d, 0xc2, 0xc0, 0x6a, 0x3b, 0x1d, }; static const unsigned char xdh_wei25519_902_ourpubkey[] = { 0x91, 0xb9, 0xd0, 0x32, 0x52, 0x92, 0xf8, 0xfe, 0xde, 0x03, 0x89, 0x09, 0xb4, 0x49, 0xc9, 0x9c, 0x99, 0xc2, 0xf1, 0x78, 0xba, 0x68, 0x94, 0xf6, 0xa6, 0x59, 0xfa, 0xfc, 0x25, 0x27, 0x7e, 0x29, }; static const unsigned char xdh_wei25519_902_privkey[] = { 0xa8, 0xb6, 0x4b, 0x8e, 0xd3, 0x97, 0x77, 0x3b, 0x82, 0x90, 0x42, 0x5c, 0xa5, 0xc2, 0xf7, 0xc3, 0xe5, 0x0f, 0xac, 0x7a, 0x47, 0x81, 0xbd, 0x4a, 0x54, 0xc1, 0x33, 0x78, 0x1c, 0x9a, 0x13, 0x60, }; static const unsigned char xdh_wei25519_902_sharedsecret[] = { 0x9f, 0x04, 0xe4, 0x2c, 0x1b, 0x2f, 0x31, 0x1d, 0x87, 0xe1, 0x47, 0x0a, 0x47, 0x08, 0xbb, 0xa2, 0x5a, 0xc6, 0xff, 0xd3, 0xf7, 0xb4, 0x86, 0xf9, 0xb6, 0xb5, 0x02, 0xec, 0xbb, 0x2c, 0x00, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_902 = { .name = "xdh_wei25519_902", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_902_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_902_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_902_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_902_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 385 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 903 for XDH, tcId is 386 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_903_peerpubkey[] = { 0x10, 0x76, 0xfd, 0xc8, 0x27, 0xf2, 0x55, 0x0e, 0xe9, 0x5f, 0xf9, 0xa1, 0x5d, 0x04, 0x4a, 0xed, 0xfa, 0xc6, 0x5b, 0x5e, 0x9b, 0xa8, 0x09, 0xf6, 0x24, 0x38, 0xcc, 0xea, 0x54, 0x63, 0x7a, 0x29, }; static const unsigned char xdh_wei25519_903_ourpubkey[] = { 0x66, 0x0f, 0xb3, 0x9b, 0xe9, 0x6e, 0xb1, 0x7b, 0xc7, 0xe2, 0x81, 0xfc, 0x56, 0xb9, 0xfe, 0x08, 0x52, 0x69, 0xb9, 0xdc, 0xd7, 0x0d, 0x6a, 0xf2, 0xde, 0xbc, 0x17, 0x9d, 0x57, 0x24, 0x98, 0x0a, }; static const unsigned char xdh_wei25519_903_privkey[] = { 0xd0, 0xcd, 0x0d, 0xb5, 0x1f, 0xf2, 0x32, 0xaf, 0xa0, 0x91, 0x9d, 0x31, 0x06, 0xfc, 0xb3, 0xa8, 0xae, 0x58, 0x1e, 0xf1, 0x2d, 0x09, 0xc8, 0x77, 0xaa, 0x6f, 0x31, 0xef, 0x74, 0xee, 0xd0, 0x68, }; static const unsigned char xdh_wei25519_903_sharedsecret[] = { 0x68, 0x80, 0x00, 0xbd, 0x60, 0xaf, 0x37, 0x5b, 0x4e, 0xea, 0xc4, 0xa7, 0xd0, 0xe0, 0x78, 0x2c, 0x0e, 0x61, 0x88, 0xea, 0xbd, 0xc6, 0x08, 0xb7, 0x32, 0xf4, 0x9b, 0x4d, 0x6c, 0xca, 0xb4, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_903 = { .name = "xdh_wei25519_903", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_903_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_903_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_903_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_903_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 386 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 904 for XDH, tcId is 387 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_904_peerpubkey[] = { 0xed, 0x1c, 0x82, 0x08, 0x2b, 0x74, 0xcc, 0x2a, 0xae, 0xbf, 0x3d, 0xc7, 0x72, 0xba, 0x09, 0x55, 0x7c, 0x0f, 0xc1, 0x41, 0x39, 0xa8, 0x81, 0x4f, 0xc5, 0xf9, 0x37, 0x0b, 0xb8, 0xe9, 0x88, 0x58, }; static const unsigned char xdh_wei25519_904_ourpubkey[] = { 0x03, 0xdf, 0x06, 0x35, 0x02, 0x8f, 0x5e, 0xbb, 0x94, 0x47, 0x76, 0x4f, 0x4b, 0xbf, 0xff, 0x0a, 0xe3, 0xee, 0xe3, 0x3b, 0xf6, 0xd6, 0x2d, 0x25, 0x9a, 0x19, 0x4d, 0x4c, 0xcc, 0x65, 0xfb, 0x71, }; static const unsigned char xdh_wei25519_904_privkey[] = { 0x20, 0x4a, 0x3b, 0x56, 0x52, 0x85, 0x4f, 0xf4, 0x8e, 0x25, 0xcd, 0x38, 0x5c, 0xab, 0xe6, 0x36, 0x0f, 0x64, 0xce, 0x44, 0xfe, 0xa5, 0x62, 0x1d, 0xb1, 0xfa, 0x2f, 0x6e, 0x21, 0x9f, 0x30, 0x63, }; static const unsigned char xdh_wei25519_904_sharedsecret[] = { 0xe0, 0xa8, 0x2f, 0x31, 0x30, 0x46, 0x02, 0x4b, 0x3c, 0xea, 0x93, 0xb9, 0x8e, 0x2f, 0x8e, 0xcf, 0x22, 0x8c, 0xbf, 0xab, 0x8a, 0xe1, 0x0b, 0x10, 0x29, 0x2c, 0x32, 0xfe, 0xcc, 0xff, 0x16, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_904 = { .name = "xdh_wei25519_904", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_904_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_904_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_904_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_904_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 387 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 905 for XDH, tcId is 388 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_905_peerpubkey[] = { 0x12, 0xe1, 0x58, 0x9a, 0x34, 0x09, 0x4a, 0xf5, 0xf1, 0x21, 0xc9, 0xbd, 0x3c, 0x11, 0x19, 0xf2, 0xb1, 0xf0, 0x52, 0x64, 0xc5, 0x73, 0xf6, 0x67, 0xa7, 0x48, 0x68, 0x3c, 0x56, 0x33, 0xa4, 0x7e, }; static const unsigned char xdh_wei25519_905_ourpubkey[] = { 0xe3, 0xa8, 0xf6, 0xc1, 0x99, 0xe2, 0x7d, 0xf4, 0x2f, 0xd7, 0xc1, 0xed, 0x54, 0xca, 0x2c, 0x2f, 0x9e, 0xdd, 0x4e, 0x27, 0x48, 0x3e, 0x55, 0xa0, 0xe3, 0x4b, 0x94, 0x30, 0x24, 0x9d, 0xfa, 0x47, }; static const unsigned char xdh_wei25519_905_privkey[] = { 0x88, 0x10, 0x9b, 0x1d, 0x0e, 0x7b, 0xac, 0xe4, 0x4d, 0x41, 0xa1, 0x5d, 0x5b, 0xcb, 0xcd, 0x36, 0x96, 0x8c, 0x5b, 0x8b, 0x47, 0xc0, 0xa2, 0xc6, 0x06, 0xb5, 0x7c, 0x4a, 0x68, 0xcc, 0x5f, 0x66, }; static const unsigned char xdh_wei25519_905_sharedsecret[] = { 0x1f, 0xcc, 0x50, 0x33, 0x3e, 0xb9, 0x07, 0x06, 0x93, 0x5f, 0x25, 0xb0, 0x2f, 0x43, 0x7b, 0xfd, 0x22, 0xb6, 0xb1, 0x6c, 0xc3, 0x75, 0xaf, 0xff, 0x8a, 0x1a, 0xa7, 0x43, 0x2f, 0xb8, 0x62, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_905 = { .name = "xdh_wei25519_905", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_905_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_905_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_905_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_905_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 388 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 906 for XDH, tcId is 389 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_906_peerpubkey[] = { 0x15, 0x1f, 0x54, 0xa8, 0xa8, 0x99, 0x71, 0x17, 0x57, 0xb3, 0xb1, 0x18, 0xfc, 0x55, 0x01, 0x77, 0x9d, 0x62, 0x1d, 0x25, 0x22, 0x7a, 0xf5, 0x3d, 0x0a, 0xf0, 0x0b, 0x75, 0x83, 0xba, 0x88, 0x24, }; static const unsigned char xdh_wei25519_906_ourpubkey[] = { 0x36, 0x8f, 0x53, 0x9e, 0x34, 0x1d, 0xf5, 0x2d, 0xfb, 0xcf, 0x21, 0xdf, 0x80, 0x2a, 0xb8, 0xe7, 0x1b, 0x63, 0x6c, 0xa1, 0x62, 0x58, 0x97, 0x92, 0xca, 0xb3, 0x98, 0xb9, 0x7a, 0x64, 0x68, 0x07, }; static const unsigned char xdh_wei25519_906_privkey[] = { 0x50, 0x82, 0xe4, 0x97, 0xc4, 0x29, 0x79, 0xcd, 0xbf, 0xdd, 0x1b, 0x3b, 0x06, 0x53, 0xcf, 0xea, 0x6f, 0x2c, 0xeb, 0x7d, 0x07, 0x63, 0x9e, 0xbf, 0x35, 0x41, 0x86, 0x6b, 0xb6, 0x0e, 0xdb, 0x62, }; static const unsigned char xdh_wei25519_906_sharedsecret[] = { 0xfa, 0xc3, 0x0a, 0x74, 0xf4, 0xca, 0x99, 0xf6, 0xcf, 0x23, 0x30, 0x65, 0xe9, 0xac, 0xd8, 0x26, 0x69, 0x0c, 0xab, 0x36, 0x4b, 0xf6, 0x93, 0x20, 0xb5, 0x80, 0x95, 0x78, 0x3e, 0xd7, 0x6e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_906 = { .name = "xdh_wei25519_906", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_906_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_906_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_906_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_906_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 389 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 907 for XDH, tcId is 390 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_907_peerpubkey[] = { 0xa8, 0x19, 0xc6, 0x67, 0xed, 0x46, 0x6b, 0xd9, 0xa6, 0x9e, 0xa0, 0xb3, 0x86, 0x42, 0xee, 0x8e, 0x53, 0xf4, 0x0a, 0x50, 0x37, 0x7b, 0x05, 0x1e, 0xb5, 0x90, 0x14, 0x2d, 0xd2, 0x7e, 0x34, 0x31, }; static const unsigned char xdh_wei25519_907_ourpubkey[] = { 0x7f, 0x32, 0x99, 0x63, 0x15, 0x87, 0x6a, 0xae, 0xe3, 0x88, 0x19, 0x50, 0x3c, 0x3e, 0x40, 0xbb, 0x19, 0x50, 0x61, 0xbe, 0x40, 0x2f, 0x4e, 0x1a, 0x94, 0xc4, 0x7c, 0x1a, 0x5d, 0xf4, 0x01, 0x2a, }; static const unsigned char xdh_wei25519_907_privkey[] = { 0xf8, 0x5a, 0x8d, 0xb4, 0x4f, 0x9e, 0x56, 0xb1, 0x17, 0x29, 0xf5, 0x16, 0x82, 0xa9, 0x76, 0x9f, 0xc5, 0x04, 0xf9, 0x35, 0x97, 0xcb, 0xe3, 0x94, 0x44, 0x61, 0x6b, 0x22, 0x45, 0x32, 0x10, 0x6e, }; static const unsigned char xdh_wei25519_907_sharedsecret[] = { 0x17, 0xf6, 0x54, 0x3c, 0x47, 0x27, 0xe7, 0xf1, 0x29, 0xee, 0x82, 0x47, 0x76, 0x55, 0x57, 0x76, 0x35, 0xc1, 0x25, 0xa2, 0x0c, 0x3d, 0xc8, 0xba, 0x20, 0x6c, 0xa3, 0xcc, 0x48, 0x54, 0xca, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_907 = { .name = "xdh_wei25519_907", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_907_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_907_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_907_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_907_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 390 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 908 for XDH, tcId is 391 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_908_peerpubkey[] = { 0x40, 0xb0, 0x53, 0xd0, 0x56, 0x66, 0x89, 0x82, 0xa1, 0xf5, 0x50, 0xbe, 0x95, 0xe1, 0x63, 0x48, 0xe3, 0x03, 0x94, 0x5f, 0x53, 0xa3, 0xac, 0x64, 0x49, 0x1a, 0x9a, 0x56, 0xd4, 0x09, 0x5b, 0x71, }; static const unsigned char xdh_wei25519_908_ourpubkey[] = { 0xae, 0xdc, 0x9c, 0x66, 0x11, 0x95, 0x9d, 0xe1, 0x50, 0x7b, 0x54, 0x35, 0x18, 0xc6, 0x0d, 0xc9, 0x04, 0xf6, 0x67, 0xfd, 0x89, 0xfd, 0x89, 0xd6, 0x77, 0x69, 0xec, 0x16, 0x5f, 0x68, 0xbf, 0x4e, }; static const unsigned char xdh_wei25519_908_privkey[] = { 0x50, 0x5a, 0x07, 0x66, 0x41, 0xfa, 0xc3, 0x98, 0xfc, 0x7d, 0x8c, 0x62, 0x99, 0x37, 0xf4, 0x2d, 0xb5, 0x59, 0xdb, 0x5e, 0x12, 0x05, 0x2a, 0xd3, 0x66, 0xd4, 0x6d, 0x7b, 0x20, 0xe9, 0x57, 0x69, }; static const unsigned char xdh_wei25519_908_sharedsecret[] = { 0x88, 0x9a, 0x8d, 0x61, 0x1e, 0x0a, 0x7d, 0xa7, 0x14, 0x75, 0xe7, 0xc9, 0x3a, 0x2d, 0x7f, 0x6f, 0x72, 0x28, 0xc7, 0x87, 0xa0, 0x0e, 0xe5, 0xcf, 0x55, 0x47, 0x4a, 0xdc, 0x37, 0x6f, 0xf7, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_908 = { .name = "xdh_wei25519_908", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_908_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_908_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_908_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_908_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 391 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 909 for XDH, tcId is 392 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_909_peerpubkey[] = { 0xe7, 0xdd, 0x05, 0x49, 0xa7, 0x65, 0xbb, 0xef, 0x34, 0xbe, 0x2e, 0x8d, 0xa1, 0x8a, 0x1b, 0xc1, 0xb9, 0x89, 0xa8, 0xb0, 0x61, 0x4d, 0x35, 0x8e, 0xbf, 0x38, 0xc1, 0x2a, 0x9c, 0xa6, 0x40, 0x79, }; static const unsigned char xdh_wei25519_909_ourpubkey[] = { 0xe6, 0x46, 0xb6, 0xf1, 0x8b, 0x0b, 0x98, 0xba, 0xd4, 0xc2, 0x97, 0x63, 0x6e, 0xa9, 0x9b, 0x9d, 0x05, 0x0b, 0xb8, 0x4c, 0x82, 0xfc, 0xab, 0x71, 0xbc, 0xa3, 0x42, 0xca, 0x0b, 0xad, 0xff, 0x25, }; static const unsigned char xdh_wei25519_909_privkey[] = { 0xe8, 0xdb, 0x2b, 0xf1, 0xaf, 0x5b, 0x89, 0x07, 0x42, 0x07, 0x89, 0xc5, 0x6e, 0x71, 0x41, 0x47, 0x06, 0xae, 0xf0, 0xd9, 0xf6, 0xff, 0xae, 0xd0, 0xc2, 0x49, 0xc3, 0xb7, 0xab, 0x14, 0xbf, 0x65, }; static const unsigned char xdh_wei25519_909_sharedsecret[] = { 0x37, 0x23, 0x2f, 0xb3, 0x97, 0xaf, 0x27, 0xf5, 0xfb, 0x5c, 0xa4, 0x93, 0x28, 0x4f, 0xf1, 0xc5, 0xd2, 0x57, 0x86, 0xb0, 0xd7, 0x16, 0xc7, 0x3b, 0x33, 0xac, 0xa8, 0xd4, 0x22, 0x65, 0xf3, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_909 = { .name = "xdh_wei25519_909", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_909_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_909_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_909_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_909_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 392 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 910 for XDH, tcId is 393 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_910_peerpubkey[] = { 0x1e, 0xe1, 0xb9, 0xa7, 0x46, 0x04, 0xac, 0x31, 0xc3, 0xdb, 0x83, 0x28, 0x01, 0x70, 0xe3, 0x81, 0x15, 0x04, 0xfc, 0xc7, 0x8c, 0x76, 0x26, 0xb5, 0xb2, 0xc0, 0x7a, 0x99, 0xd8, 0x0d, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_910_ourpubkey[] = { 0x2b, 0x54, 0x05, 0xd1, 0xf2, 0xb3, 0x7f, 0x7a, 0x8e, 0x0c, 0xe2, 0x40, 0xfb, 0x7e, 0x47, 0xa3, 0x4c, 0x62, 0xd3, 0xbd, 0x2a, 0x50, 0xa6, 0x81, 0xc7, 0xc6, 0x3b, 0xa3, 0xb7, 0xc6, 0x79, 0x2b, }; static const unsigned char xdh_wei25519_910_privkey[] = { 0xc0, 0x06, 0xab, 0x17, 0x62, 0x72, 0x08, 0x82, 0x01, 0x7d, 0x10, 0x6b, 0x9a, 0x46, 0x75, 0xfd, 0xd4, 0x70, 0x05, 0x65, 0x71, 0x55, 0xc9, 0x0c, 0xa6, 0x1d, 0x4c, 0xbf, 0x7c, 0xc4, 0xf9, 0x73, }; static const unsigned char xdh_wei25519_910_sharedsecret[] = { 0xa1, 0xb3, 0x04, 0x18, 0x43, 0x6b, 0xa1, 0x90, 0x88, 0x04, 0xff, 0xcc, 0xe1, 0xbe, 0x2c, 0xdc, 0xf5, 0x0c, 0x61, 0xa8, 0xe3, 0x93, 0x8d, 0x95, 0xc7, 0x90, 0xab, 0xdb, 0x78, 0x6b, 0x80, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_910 = { .name = "xdh_wei25519_910", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_910_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_910_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_910_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_910_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 393 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 911 for XDH, tcId is 394 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_911_peerpubkey[] = { 0xf2, 0x26, 0xc2, 0xd6, 0xbd, 0x78, 0x31, 0xed, 0xa1, 0xb5, 0x1e, 0xe5, 0xae, 0xc2, 0x94, 0x43, 0xa5, 0x07, 0xef, 0x9f, 0x7a, 0x04, 0xe2, 0x34, 0x0f, 0x34, 0x9d, 0xbf, 0x14, 0x93, 0x38, 0x44, }; static const unsigned char xdh_wei25519_911_ourpubkey[] = { 0x6e, 0x20, 0xdf, 0x8f, 0x04, 0xe7, 0xf3, 0xdf, 0x10, 0x29, 0x38, 0xa1, 0xa6, 0x41, 0x38, 0x90, 0x0c, 0x61, 0x06, 0xe4, 0x45, 0x65, 0xff, 0x96, 0xff, 0x80, 0x35, 0xf6, 0x4d, 0x88, 0xcf, 0x29, }; static const unsigned char xdh_wei25519_911_privkey[] = { 0xd0, 0x71, 0x80, 0x7d, 0x60, 0x79, 0x53, 0xda, 0x43, 0x2d, 0x85, 0x74, 0xd5, 0xf3, 0xf4, 0x20, 0x67, 0x6d, 0xaf, 0xdb, 0xc6, 0xa2, 0x85, 0xa3, 0x6e, 0x1d, 0x73, 0x76, 0x24, 0xd7, 0x7c, 0x75, }; static const unsigned char xdh_wei25519_911_sharedsecret[] = { 0xa5, 0x97, 0x6f, 0xda, 0x89, 0x95, 0x4a, 0x81, 0xe4, 0x42, 0x10, 0x7f, 0x9e, 0x41, 0x6a, 0x2b, 0x4b, 0x48, 0x1b, 0xbd, 0x46, 0x54, 0xeb, 0xc0, 0xc7, 0xb5, 0x7a, 0x78, 0xb4, 0x5b, 0x49, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_911 = { .name = "xdh_wei25519_911", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_911_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_911_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_911_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_911_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 394 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 912 for XDH, tcId is 395 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_912_peerpubkey[] = { 0xc5, 0x19, 0x73, 0x12, 0xde, 0x3a, 0x7a, 0x3e, 0xe1, 0x1b, 0x29, 0x87, 0x3b, 0xae, 0x3f, 0xc8, 0xc8, 0x51, 0x09, 0xc6, 0x67, 0x84, 0x80, 0x4f, 0x89, 0x43, 0x5d, 0xb2, 0x10, 0xfc, 0xc2, 0x4b, }; static const unsigned char xdh_wei25519_912_ourpubkey[] = { 0x4b, 0xba, 0xfd, 0x28, 0xa4, 0xcd, 0x22, 0x84, 0xc3, 0xc0, 0x70, 0x73, 0xfe, 0x17, 0x4f, 0x23, 0xb4, 0xd4, 0x9f, 0xb3, 0x2a, 0xc8, 0xb7, 0x2b, 0x9e, 0xf8, 0x9c, 0xdd, 0x70, 0x6a, 0x8f, 0x11, }; static const unsigned char xdh_wei25519_912_privkey[] = { 0x30, 0x4b, 0x52, 0x6f, 0x6f, 0xe9, 0x94, 0x73, 0x19, 0x80, 0xc0, 0x97, 0x55, 0x29, 0xbc, 0xa4, 0xd0, 0x61, 0x01, 0x7f, 0xbe, 0xc5, 0x6f, 0x60, 0x70, 0xd4, 0x26, 0x78, 0xd3, 0xe1, 0x11, 0x77, }; static const unsigned char xdh_wei25519_912_sharedsecret[] = { 0x55, 0xb5, 0xb5, 0xeb, 0x38, 0xb1, 0x27, 0x61, 0x7f, 0xfe, 0x00, 0x05, 0x6d, 0x84, 0xd3, 0x5a, 0x50, 0x71, 0xd1, 0x87, 0x83, 0xe3, 0xa8, 0x2b, 0x5f, 0x4e, 0x13, 0x1b, 0x15, 0x38, 0xb1, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_912 = { .name = "xdh_wei25519_912", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_912_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_912_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_912_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_912_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 395 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 913 for XDH, tcId is 396 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_913_peerpubkey[] = { 0x59, 0x0e, 0xd0, 0xb8, 0x79, 0x31, 0x9c, 0x38, 0xa1, 0x99, 0x62, 0xa5, 0xd2, 0x16, 0xff, 0x2b, 0xfa, 0xf3, 0x35, 0x55, 0x51, 0x88, 0x77, 0x96, 0x9c, 0x20, 0xc0, 0x54, 0xcb, 0xe4, 0x3e, 0x56, }; static const unsigned char xdh_wei25519_913_ourpubkey[] = { 0x0e, 0x0f, 0xd0, 0x74, 0x19, 0x6b, 0xa1, 0x76, 0xac, 0x7f, 0x01, 0xb2, 0x88, 0xf2, 0xdc, 0x2b, 0xed, 0x07, 0x88, 0x4a, 0xac, 0x2a, 0xec, 0xaa, 0x26, 0xc4, 0x68, 0x21, 0xa3, 0x79, 0x29, 0x26, }; static const unsigned char xdh_wei25519_913_privkey[] = { 0x98, 0x2d, 0xdf, 0x2c, 0x03, 0x57, 0x89, 0x37, 0x9b, 0x8a, 0x58, 0x91, 0x7d, 0x5c, 0x3c, 0x6c, 0x06, 0x1b, 0x50, 0x3b, 0x19, 0xa0, 0x02, 0x8e, 0x01, 0x89, 0x4c, 0x2e, 0xb3, 0x71, 0xd0, 0x79, }; static const unsigned char xdh_wei25519_913_sharedsecret[] = { 0x00, 0x80, 0xe5, 0xb9, 0x98, 0x5a, 0x96, 0x0a, 0x83, 0x21, 0x33, 0x81, 0x2a, 0x7a, 0xb9, 0x95, 0x1c, 0x6b, 0x2c, 0x75, 0x89, 0x4d, 0xeb, 0x3e, 0x35, 0x50, 0x91, 0x90, 0xa6, 0xbd, 0xf4, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_913 = { .name = "xdh_wei25519_913", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_913_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_913_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_913_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_913_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 396 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 914 for XDH, tcId is 397 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_914_peerpubkey[] = { 0x7c, 0x5f, 0x01, 0x43, 0xa6, 0x68, 0x2f, 0x60, 0xcc, 0xad, 0x16, 0xf2, 0x11, 0x50, 0xc7, 0xbb, 0x5b, 0xc6, 0xf8, 0x07, 0x25, 0x4d, 0x08, 0xb3, 0x53, 0xfc, 0x96, 0xce, 0x07, 0xbc, 0xeb, 0x6f, }; static const unsigned char xdh_wei25519_914_ourpubkey[] = { 0x57, 0x5c, 0x0c, 0x3b, 0xfe, 0x00, 0x1d, 0xbf, 0x63, 0xa8, 0xa4, 0xb6, 0xa6, 0xec, 0x43, 0x8f, 0x0a, 0x85, 0x97, 0x8e, 0x4a, 0x17, 0x8b, 0x92, 0xf6, 0x2a, 0xd0, 0x37, 0x65, 0xd5, 0x96, 0x48, }; static const unsigned char xdh_wei25519_914_privkey[] = { 0x78, 0xcc, 0x3e, 0xc0, 0x68, 0x7e, 0x3e, 0x53, 0xd9, 0xce, 0xc5, 0x6b, 0x79, 0xd1, 0x1b, 0xf0, 0x49, 0xd1, 0x73, 0xf1, 0x27, 0xf5, 0xb4, 0x0f, 0xae, 0x12, 0x2a, 0x6d, 0x00, 0x16, 0xcd, 0x76, }; static const unsigned char xdh_wei25519_914_sharedsecret[] = { 0x52, 0x41, 0x22, 0x22, 0x26, 0x63, 0x8c, 0x4b, 0xbb, 0xc9, 0x87, 0x92, 0xcd, 0xbd, 0x74, 0x88, 0x2c, 0xa2, 0xe0, 0x8a, 0xa2, 0xed, 0xf3, 0x13, 0x07, 0x04, 0x25, 0x03, 0x10, 0x09, 0xe9, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_914 = { .name = "xdh_wei25519_914", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_914_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_914_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_914_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_914_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 397 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 915 for XDH, tcId is 398 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_915_peerpubkey[] = { 0x01, 0x08, 0x50, 0xa0, 0x97, 0x4d, 0x3e, 0x89, 0xc0, 0x29, 0xd2, 0x52, 0xb4, 0x6f, 0x73, 0x95, 0x48, 0x29, 0x4c, 0x0f, 0x9a, 0x23, 0x18, 0x38, 0x63, 0xf9, 0x45, 0x5b, 0x95, 0x59, 0xc2, 0x11, }; static const unsigned char xdh_wei25519_915_ourpubkey[] = { 0x0d, 0xb3, 0x7d, 0xbf, 0x11, 0x42, 0x70, 0xc1, 0x6e, 0x3a, 0xb9, 0xf4, 0x5d, 0xf5, 0x04, 0x8f, 0xa5, 0x62, 0xf6, 0x43, 0x71, 0xdd, 0xff, 0x9c, 0xc7, 0x67, 0x35, 0x71, 0xe2, 0xd5, 0x02, 0x73, }; static const unsigned char xdh_wei25519_915_privkey[] = { 0xc8, 0x6f, 0xc7, 0x66, 0x50, 0xcf, 0x3b, 0x58, 0x83, 0x7a, 0xa0, 0xf0, 0x63, 0x35, 0x60, 0x41, 0x52, 0x41, 0xc6, 0xc4, 0xf8, 0xf2, 0x93, 0xba, 0x02, 0x22, 0xb7, 0xd6, 0xa3, 0x87, 0x57, 0x73, }; static const unsigned char xdh_wei25519_915_sharedsecret[] = { 0x63, 0x78, 0x81, 0x90, 0xb1, 0x0d, 0x74, 0x51, 0xf5, 0xfc, 0x2b, 0x82, 0xc4, 0x21, 0x15, 0x1d, 0xb4, 0xf3, 0xe2, 0x27, 0x82, 0xe3, 0x92, 0xda, 0x6d, 0x8d, 0x3a, 0xba, 0x2c, 0x34, 0x43, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_915 = { .name = "xdh_wei25519_915", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_915_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_915_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_915_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_915_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 398 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 916 for XDH, tcId is 399 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_916_peerpubkey[] = { 0xad, 0x1d, 0xd8, 0x2c, 0x23, 0xd6, 0xa0, 0xd5, 0xfe, 0x0f, 0x2a, 0x45, 0x61, 0xd1, 0xc1, 0x67, 0x33, 0xa3, 0xe1, 0xe6, 0xaf, 0xa6, 0xd9, 0x02, 0xdd, 0x07, 0x7d, 0xc4, 0x3a, 0x96, 0x16, 0x28, }; static const unsigned char xdh_wei25519_916_ourpubkey[] = { 0xac, 0xae, 0xc2, 0x29, 0x7b, 0x74, 0x0a, 0xff, 0x80, 0xa9, 0x6a, 0xe0, 0x08, 0xd4, 0xe6, 0x1a, 0xbf, 0x67, 0x46, 0x00, 0x00, 0x90, 0x12, 0x23, 0x1d, 0xb5, 0x45, 0xb3, 0xa4, 0x0f, 0xa5, 0x6a, }; static const unsigned char xdh_wei25519_916_privkey[] = { 0x88, 0x8d, 0x51, 0xc0, 0xa2, 0x23, 0x03, 0x69, 0xe5, 0xb6, 0x5a, 0x81, 0x4b, 0x32, 0x13, 0xdd, 0xe2, 0xe6, 0x2f, 0x2e, 0xb9, 0x5d, 0x09, 0x71, 0x48, 0x6b, 0x73, 0x3e, 0x4f, 0x90, 0xc1, 0x74, }; static const unsigned char xdh_wei25519_916_sharedsecret[] = { 0xe4, 0xb4, 0x09, 0x74, 0xa1, 0x66, 0xac, 0x49, 0xed, 0x83, 0x17, 0x15, 0xc0, 0x71, 0xc7, 0x51, 0x75, 0x27, 0x44, 0xb8, 0x91, 0x46, 0x5e, 0x6c, 0x45, 0x00, 0x18, 0x55, 0xaa, 0xcd, 0xc3, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_916 = { .name = "xdh_wei25519_916", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_916_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_916_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_916_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_916_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 399 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 917 for XDH, tcId is 400 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_917_peerpubkey[] = { 0xd0, 0xc0, 0xd6, 0x39, 0x3c, 0x41, 0xf4, 0xd7, 0xe0, 0xd5, 0xe8, 0x50, 0xb7, 0x71, 0x6f, 0x40, 0x1e, 0xda, 0x1e, 0x02, 0x8a, 0x4e, 0xd4, 0xa0, 0x5b, 0xea, 0x8b, 0xf8, 0x1a, 0xcf, 0xd9, 0x30, }; static const unsigned char xdh_wei25519_917_ourpubkey[] = { 0xb6, 0xf6, 0xb4, 0x1b, 0xc2, 0x13, 0xe0, 0xe7, 0xde, 0xb4, 0xc1, 0xae, 0xd8, 0xa3, 0x9c, 0xc2, 0x33, 0xb0, 0xac, 0xf3, 0xa8, 0xe3, 0x76, 0xdf, 0x71, 0x75, 0x17, 0x9e, 0xe9, 0x2a, 0x5e, 0x64, }; static const unsigned char xdh_wei25519_917_privkey[] = { 0x68, 0xbe, 0xd4, 0x25, 0xd5, 0x34, 0x31, 0x55, 0x84, 0xd8, 0x0f, 0x79, 0xda, 0x6e, 0xab, 0x9b, 0x7e, 0x60, 0x36, 0xb5, 0x1f, 0xe6, 0x2e, 0x1a, 0xd9, 0x33, 0xe2, 0x66, 0x64, 0x0b, 0x46, 0x73, }; static const unsigned char xdh_wei25519_917_sharedsecret[] = { 0x51, 0x4a, 0x4c, 0xd0, 0x67, 0x6f, 0x1c, 0x31, 0x01, 0xc8, 0xc4, 0x5c, 0x17, 0xad, 0x41, 0x6b, 0xd3, 0x3e, 0x20, 0xa4, 0x05, 0x54, 0x4f, 0xc1, 0xa6, 0x04, 0x49, 0xab, 0xb2, 0x2f, 0xa1, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_917 = { .name = "xdh_wei25519_917", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_917_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_917_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_917_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_917_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 400 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 918 for XDH, tcId is 401 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_918_peerpubkey[] = { 0x0f, 0x46, 0x01, 0x00, 0xd8, 0x8a, 0x1d, 0x31, 0x6d, 0xff, 0x02, 0xd1, 0xb2, 0x2f, 0xfb, 0x2e, 0x42, 0xd9, 0x9d, 0x0b, 0x92, 0x47, 0x4f, 0xc3, 0xec, 0x7d, 0x62, 0x56, 0x7d, 0x0c, 0xf1, 0x12, }; static const unsigned char xdh_wei25519_918_ourpubkey[] = { 0x1f, 0x27, 0xc8, 0x3f, 0xed, 0xb4, 0xc6, 0x4d, 0xd0, 0x2f, 0xdb, 0x7f, 0xb5, 0x55, 0xfc, 0xbb, 0x5b, 0x40, 0x28, 0x84, 0x72, 0x07, 0x1a, 0x59, 0xc9, 0xbe, 0xd9, 0x3f, 0x7e, 0xdb, 0xdf, 0x54, }; static const unsigned char xdh_wei25519_918_privkey[] = { 0x98, 0xff, 0x28, 0x56, 0xef, 0x44, 0xb4, 0xfa, 0x14, 0xd8, 0x67, 0x82, 0xea, 0x79, 0x38, 0x28, 0xbd, 0xf6, 0xf1, 0xef, 0x9b, 0x66, 0x9c, 0xac, 0x1a, 0xae, 0x33, 0x8a, 0x7b, 0xb6, 0x93, 0x76, }; static const unsigned char xdh_wei25519_918_sharedsecret[] = { 0xed, 0x83, 0xe8, 0x10, 0xce, 0x5f, 0xf0, 0x86, 0x8f, 0x85, 0x89, 0x62, 0x3b, 0xb1, 0x34, 0x78, 0xde, 0xc1, 0xc2, 0x23, 0x26, 0xc9, 0x27, 0x65, 0xae, 0x5e, 0x48, 0xc8, 0x4b, 0xba, 0xbb, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_918 = { .name = "xdh_wei25519_918", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_918_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_918_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_918_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_918_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 401 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 919 for XDH, tcId is 402 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_919_peerpubkey[] = { 0x13, 0x75, 0x6a, 0x41, 0x1f, 0xf3, 0xae, 0x0c, 0x39, 0x22, 0x2d, 0xde, 0x08, 0x10, 0xf0, 0x8c, 0x43, 0x24, 0x63, 0x16, 0x2d, 0x81, 0xef, 0x06, 0x10, 0x71, 0x24, 0x9a, 0x48, 0x43, 0x9e, 0x15, }; static const unsigned char xdh_wei25519_919_ourpubkey[] = { 0x04, 0x9c, 0x82, 0xf2, 0xb8, 0x40, 0xd8, 0x9a, 0xf4, 0x11, 0x43, 0xe7, 0x2b, 0xbc, 0x4e, 0x66, 0x2f, 0x99, 0x03, 0x57, 0x63, 0xb2, 0x63, 0xd3, 0x6e, 0x9c, 0xe0, 0x59, 0x5d, 0xa6, 0x23, 0x02, }; static const unsigned char xdh_wei25519_919_privkey[] = { 0xb0, 0xcd, 0xbf, 0xdd, 0x98, 0xbd, 0x98, 0x8d, 0x7c, 0x6a, 0x53, 0x04, 0x55, 0xc5, 0x1c, 0x57, 0xdd, 0x33, 0xfd, 0x2c, 0x7a, 0xee, 0x39, 0x61, 0x97, 0x1b, 0xd3, 0xa3, 0x13, 0x88, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_919_sharedsecret[] = { 0xff, 0x94, 0x86, 0x21, 0x17, 0xd3, 0xc6, 0xed, 0xc9, 0xdd, 0x5f, 0x48, 0x52, 0xfa, 0x8a, 0x58, 0x94, 0x52, 0xb9, 0x24, 0xca, 0x8a, 0x75, 0xcb, 0x23, 0xb3, 0xd6, 0x8d, 0xfe, 0xd8, 0x8c, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_919 = { .name = "xdh_wei25519_919", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_919_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_919_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_919_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_919_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 402 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 920 for XDH, tcId is 403 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_920_peerpubkey[] = { 0x8f, 0xc1, 0xfa, 0xe9, 0x69, 0xa6, 0x18, 0x54, 0x04, 0xdb, 0x22, 0x74, 0x9e, 0xf6, 0xd2, 0x25, 0xde, 0x86, 0x77, 0x3a, 0x4d, 0x1b, 0xf3, 0x85, 0x7e, 0xb8, 0xfb, 0xbd, 0x82, 0x9a, 0x1b, 0x47, }; static const unsigned char xdh_wei25519_920_ourpubkey[] = { 0xd6, 0x23, 0x36, 0xde, 0x7f, 0xfa, 0x82, 0xb5, 0xd7, 0x29, 0x01, 0x9b, 0xb1, 0x44, 0x4a, 0x66, 0x1c, 0xa2, 0x51, 0xdb, 0x16, 0x8a, 0x49, 0xe0, 0xc2, 0x5d, 0x4b, 0x7f, 0x75, 0x09, 0xd2, 0x0c, }; static const unsigned char xdh_wei25519_920_privkey[] = { 0xe0, 0x67, 0x76, 0x44, 0xed, 0x49, 0x35, 0xf0, 0x1e, 0x05, 0x2e, 0x99, 0x67, 0x30, 0x2d, 0x0f, 0xb7, 0x8f, 0xf2, 0x2b, 0xb9, 0x2f, 0xba, 0xe0, 0x60, 0x5f, 0x3e, 0xe5, 0x4e, 0x2f, 0x68, 0x78, }; static const unsigned char xdh_wei25519_920_sharedsecret[] = { 0x1c, 0x94, 0x86, 0x8b, 0xc8, 0xac, 0xb3, 0x13, 0x74, 0x98, 0x20, 0x9b, 0x28, 0x12, 0xfe, 0xb5, 0x35, 0x01, 0x38, 0x9f, 0x5a, 0xa3, 0x7f, 0xec, 0xbf, 0xd5, 0xcb, 0x54, 0xe1, 0x35, 0x8e, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_920 = { .name = "xdh_wei25519_920", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_920_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_920_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_920_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_920_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 403 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 921 for XDH, tcId is 404 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_921_peerpubkey[] = { 0x7b, 0xab, 0x08, 0x91, 0xec, 0xb9, 0xe7, 0x2a, 0x15, 0x77, 0x1f, 0x0a, 0x4f, 0xff, 0x90, 0x54, 0x70, 0x24, 0x20, 0x63, 0x39, 0xc3, 0x40, 0xb1, 0xa2, 0xfd, 0xb5, 0x3b, 0xcf, 0xb8, 0x6b, 0x59, }; static const unsigned char xdh_wei25519_921_ourpubkey[] = { 0x4b, 0xb3, 0x70, 0x62, 0x8e, 0xe6, 0x84, 0xc5, 0x68, 0xec, 0x91, 0x8b, 0xda, 0x84, 0xdd, 0xf7, 0xb4, 0x4b, 0xff, 0x37, 0xf5, 0xe4, 0x1d, 0x8d, 0x2d, 0xb1, 0x02, 0x1b, 0xdc, 0xf5, 0x87, 0x1a, }; static const unsigned char xdh_wei25519_921_privkey[] = { 0x88, 0x7b, 0x61, 0x55, 0x38, 0x43, 0xca, 0x99, 0xad, 0x1c, 0xa9, 0x22, 0x53, 0xa6, 0xfe, 0x08, 0x2b, 0x82, 0x49, 0x47, 0x52, 0x51, 0x3f, 0xd5, 0x3f, 0xf6, 0x53, 0x0f, 0x54, 0xc4, 0x05, 0x72, }; static const unsigned char xdh_wei25519_921_sharedsecret[] = { 0xad, 0xbf, 0x3b, 0x43, 0x9b, 0x16, 0xdb, 0xc6, 0x53, 0x57, 0x8f, 0x53, 0x37, 0x4e, 0xd3, 0xa8, 0x6f, 0x9c, 0x0b, 0xf1, 0xf7, 0x36, 0x57, 0x33, 0x49, 0x77, 0x3b, 0xc3, 0xb8, 0xd6, 0x07, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_921 = { .name = "xdh_wei25519_921", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_921_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_921_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_921_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_921_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 404 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 922 for XDH, tcId is 405 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_922_peerpubkey[] = { 0x10, 0x2e, 0x95, 0xea, 0xdc, 0xa7, 0xc3, 0xc2, 0x8e, 0x5d, 0x52, 0x33, 0x6c, 0x85, 0x7b, 0xad, 0x99, 0xea, 0x24, 0x6f, 0x29, 0x9b, 0x06, 0x33, 0x4f, 0x40, 0x12, 0x76, 0xf4, 0x9c, 0xa8, 0x14, }; static const unsigned char xdh_wei25519_922_ourpubkey[] = { 0xf4, 0x3e, 0x12, 0x36, 0x9e, 0x41, 0x41, 0x5b, 0xca, 0x02, 0x9f, 0x85, 0xf6, 0xd7, 0x09, 0x8a, 0xbb, 0x72, 0x82, 0xe5, 0xb3, 0xce, 0x05, 0xfe, 0x75, 0x8d, 0x09, 0x88, 0x9f, 0x55, 0x38, 0x20, }; static const unsigned char xdh_wei25519_922_privkey[] = { 0x00, 0x61, 0x5e, 0x46, 0x97, 0x01, 0x4f, 0xc1, 0x24, 0x84, 0xef, 0x53, 0xa1, 0x44, 0x02, 0x06, 0x41, 0x0a, 0x8d, 0xf7, 0x8c, 0xaa, 0x0b, 0xff, 0xf8, 0x21, 0x61, 0xdb, 0x83, 0xfe, 0xa5, 0x74, }; static const unsigned char xdh_wei25519_922_sharedsecret[] = { 0x39, 0x52, 0xef, 0xb9, 0x35, 0x73, 0xae, 0x9c, 0xe2, 0x16, 0x2d, 0x10, 0xe4, 0xb8, 0xc4, 0x64, 0x35, 0x85, 0x9f, 0x3f, 0x27, 0x78, 0xdb, 0x89, 0xf7, 0x2b, 0xc5, 0x79, 0xe6, 0x95, 0xcb, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_922 = { .name = "xdh_wei25519_922", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_922_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_922_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_922_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_922_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 405 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 923 for XDH, tcId is 406 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_923_peerpubkey[] = { 0x35, 0x48, 0xc1, 0x6b, 0xf3, 0x1a, 0xfd, 0xcd, 0x44, 0x5a, 0xd9, 0xbe, 0xf0, 0xe6, 0x0d, 0x7b, 0xd6, 0x19, 0x5a, 0xa5, 0x91, 0xca, 0x8c, 0x82, 0x81, 0x3c, 0xd7, 0xd4, 0x46, 0x22, 0x67, 0x20, }; static const unsigned char xdh_wei25519_923_ourpubkey[] = { 0x07, 0x20, 0xbf, 0x58, 0x0f, 0x13, 0xbe, 0x02, 0xd7, 0x41, 0xc0, 0xb1, 0x24, 0xaf, 0xe1, 0x58, 0xc0, 0xad, 0x96, 0x1b, 0x52, 0x05, 0x6f, 0x66, 0x6e, 0xce, 0xdd, 0x82, 0x7b, 0x27, 0x25, 0x20, }; static const unsigned char xdh_wei25519_923_privkey[] = { 0x58, 0x17, 0x51, 0x13, 0x55, 0x0f, 0xaa, 0xd5, 0x64, 0x58, 0xfb, 0x37, 0x5a, 0x6c, 0xb3, 0xf0, 0x5d, 0xf2, 0xf6, 0xff, 0x3c, 0x4e, 0xe0, 0x9d, 0x4a, 0x6b, 0xa6, 0x43, 0xe0, 0x22, 0xd1, 0x7a, }; static const unsigned char xdh_wei25519_923_sharedsecret[] = { 0x96, 0x12, 0x8f, 0x92, 0x9f, 0xc0, 0x3c, 0x12, 0x69, 0xd4, 0x29, 0xf6, 0x09, 0xa1, 0xa8, 0xac, 0xac, 0x7a, 0x75, 0x8e, 0x34, 0x46, 0xa1, 0x25, 0xec, 0xf4, 0xa3, 0x59, 0xa0, 0xe3, 0x7b, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_923 = { .name = "xdh_wei25519_923", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_923_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_923_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_923_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_923_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 406 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 924 for XDH, tcId is 407 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_924_peerpubkey[] = { 0xba, 0x74, 0xe7, 0x66, 0xd4, 0x48, 0x55, 0xec, 0x93, 0xbd, 0x44, 0x1a, 0xa4, 0x10, 0x58, 0xa4, 0xc4, 0xad, 0x2b, 0xe6, 0x3c, 0x63, 0x9a, 0x3f, 0x9a, 0x87, 0xbd, 0xe5, 0x1e, 0xea, 0xba, 0x20, }; static const unsigned char xdh_wei25519_924_ourpubkey[] = { 0x57, 0x48, 0xf4, 0xfd, 0x3b, 0x92, 0x54, 0x3a, 0x0b, 0xf5, 0xf3, 0xae, 0x63, 0x85, 0x14, 0xe7, 0x3b, 0xce, 0xeb, 0xf6, 0x13, 0x41, 0xb6, 0xe2, 0x82, 0xec, 0x45, 0x43, 0x12, 0x0d, 0x2e, 0x45, }; static const unsigned char xdh_wei25519_924_privkey[] = { 0x00, 0x97, 0x38, 0xe1, 0xe6, 0xef, 0xef, 0x9e, 0x2c, 0xad, 0x8b, 0x41, 0x6f, 0xe9, 0x0a, 0x09, 0x8e, 0xb5, 0xcb, 0x01, 0x99, 0xf2, 0xdf, 0x52, 0x18, 0x16, 0x6c, 0x7b, 0x18, 0x1e, 0xa0, 0x79, }; static const unsigned char xdh_wei25519_924_sharedsecret[] = { 0xfe, 0xc3, 0xe9, 0x4c, 0xb5, 0xf3, 0x16, 0x62, 0x5b, 0x09, 0x0c, 0x2c, 0x82, 0x08, 0x28, 0xce, 0x0f, 0x3e, 0xe4, 0x31, 0xe8, 0xd6, 0xe1, 0x2a, 0xbc, 0xcc, 0x7e, 0xf2, 0xbd, 0x0b, 0xe8, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_924 = { .name = "xdh_wei25519_924", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_924_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_924_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_924_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_924_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 407 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 925 for XDH, tcId is 408 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_925_peerpubkey[] = { 0x9a, 0x5a, 0x1d, 0x37, 0xe5, 0x01, 0x0c, 0x35, 0x6a, 0xa8, 0x0a, 0xfb, 0x34, 0x7c, 0x3d, 0x61, 0x35, 0x42, 0xdd, 0xfa, 0x0b, 0xe7, 0xab, 0xb8, 0xe8, 0xcd, 0xcd, 0x66, 0x74, 0x41, 0x14, 0x49, }; static const unsigned char xdh_wei25519_925_ourpubkey[] = { 0x7a, 0x98, 0x3a, 0x46, 0x2a, 0x9a, 0x1c, 0xd7, 0x52, 0x50, 0x09, 0xff, 0x12, 0x3e, 0xb6, 0x35, 0xf2, 0xc0, 0x5f, 0xc3, 0x1e, 0xdf, 0xb8, 0x8f, 0x80, 0x64, 0x15, 0x7d, 0x1a, 0x59, 0xba, 0x29, }; static const unsigned char xdh_wei25519_925_privkey[] = { 0xc8, 0x20, 0x19, 0x15, 0x9b, 0xe7, 0x92, 0x74, 0x7a, 0x39, 0xf3, 0x88, 0xea, 0x48, 0xa8, 0xc5, 0x68, 0x59, 0x4e, 0x33, 0x83, 0x27, 0x3e, 0x51, 0x10, 0x07, 0x21, 0xb3, 0x76, 0xe8, 0xba, 0x73, }; static const unsigned char xdh_wei25519_925_sharedsecret[] = { 0x96, 0x90, 0x3b, 0xac, 0x9d, 0xc6, 0x0b, 0x61, 0x78, 0xd7, 0x34, 0x89, 0x0c, 0x25, 0xdb, 0x4b, 0xed, 0x9e, 0xa4, 0xdb, 0xcf, 0x6f, 0xcb, 0xcd, 0xc9, 0x0e, 0x6f, 0x56, 0x94, 0xc8, 0xb2, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_925 = { .name = "xdh_wei25519_925", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_925_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_925_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_925_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_925_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 408 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 926 for XDH, tcId is 409 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_926_peerpubkey[] = { 0x63, 0x08, 0x47, 0xe2, 0x82, 0x74, 0xdb, 0xae, 0x54, 0x91, 0x21, 0x03, 0x03, 0xc8, 0x5a, 0x35, 0x90, 0x74, 0xee, 0x74, 0x29, 0x57, 0xb0, 0xfc, 0x3c, 0x9f, 0xf5, 0x5d, 0x9e, 0x01, 0x9a, 0x50, }; static const unsigned char xdh_wei25519_926_ourpubkey[] = { 0x75, 0xdf, 0x76, 0x7c, 0xfb, 0xbf, 0xa3, 0xaf, 0x20, 0xfe, 0x31, 0x0c, 0x88, 0x0a, 0xa8, 0xaf, 0x06, 0xb1, 0x09, 0x0a, 0xf5, 0x32, 0x8f, 0xd0, 0x9a, 0x5f, 0x1b, 0x42, 0xca, 0x2b, 0x48, 0x27, }; static const unsigned char xdh_wei25519_926_privkey[] = { 0x10, 0xac, 0x9f, 0x83, 0x83, 0x26, 0x2e, 0xf2, 0x80, 0xfa, 0xac, 0x1e, 0x4d, 0xa1, 0x5a, 0x7d, 0xe4, 0xf2, 0xcb, 0x74, 0xaf, 0x33, 0xb5, 0x0e, 0x0d, 0x82, 0xdc, 0xb8, 0x5d, 0x8b, 0xcb, 0x70, }; static const unsigned char xdh_wei25519_926_sharedsecret[] = { 0x50, 0x05, 0x0d, 0x0a, 0xb1, 0xdd, 0xd2, 0xdd, 0x90, 0xc4, 0x60, 0xab, 0x8f, 0x09, 0xe1, 0xf8, 0x0e, 0x37, 0xca, 0xe5, 0x7d, 0x42, 0x31, 0xad, 0xae, 0x10, 0xc1, 0x0a, 0x4a, 0x2b, 0x00, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_926 = { .name = "xdh_wei25519_926", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_926_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_926_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_926_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_926_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 409 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 927 for XDH, tcId is 410 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_927_peerpubkey[] = { 0x11, 0x74, 0x9b, 0x00, 0xa4, 0x50, 0x67, 0xaf, 0x2c, 0x7e, 0x7d, 0x50, 0xf8, 0xd1, 0x78, 0xd5, 0xa9, 0xfe, 0xdb, 0x8f, 0x1b, 0x69, 0xb2, 0x39, 0x76, 0x38, 0x85, 0xbc, 0x61, 0x1b, 0x13, 0x6c, }; static const unsigned char xdh_wei25519_927_ourpubkey[] = { 0x5a, 0x30, 0xfb, 0x16, 0x93, 0x4c, 0x13, 0xe2, 0x6d, 0xe1, 0x9f, 0xc2, 0x84, 0x44, 0xf9, 0x2f, 0x07, 0xe0, 0x78, 0xe0, 0x7d, 0x20, 0x11, 0xe4, 0x2a, 0xc8, 0x47, 0xd3, 0x37, 0x21, 0x34, 0x1c, }; static const unsigned char xdh_wei25519_927_privkey[] = { 0xb8, 0x4c, 0x09, 0x83, 0x82, 0xf6, 0xe3, 0x7d, 0x51, 0x0c, 0xc3, 0x3e, 0x62, 0xdd, 0xc6, 0x64, 0xe0, 0x2c, 0x8b, 0xb6, 0xed, 0x9e, 0xd0, 0xe5, 0xfa, 0x78, 0xcc, 0x09, 0x9a, 0x26, 0xfe, 0x73, }; static const unsigned char xdh_wei25519_927_sharedsecret[] = { 0x91, 0x70, 0xc4, 0xc6, 0x28, 0xd5, 0xfc, 0xfd, 0x0e, 0xc7, 0x19, 0xcf, 0x6e, 0x17, 0x96, 0xda, 0xb0, 0xa6, 0x9e, 0x46, 0xd6, 0x37, 0x9f, 0xff, 0xa2, 0x47, 0xd4, 0x44, 0xa0, 0x05, 0x60, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_927 = { .name = "xdh_wei25519_927", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_927_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_927_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_927_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_927_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 410 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 928 for XDH, tcId is 411 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_928_peerpubkey[] = { 0xdf, 0x10, 0x21, 0xd8, 0xf9, 0x59, 0x50, 0xaf, 0xde, 0x77, 0xc8, 0x6b, 0xa5, 0xee, 0x2f, 0x58, 0x76, 0xef, 0x77, 0x83, 0x76, 0xa7, 0xfd, 0xc7, 0xef, 0xb8, 0xdf, 0xf0, 0xe4, 0x83, 0x6e, 0x7b, }; static const unsigned char xdh_wei25519_928_ourpubkey[] = { 0xfd, 0xd1, 0xce, 0x18, 0x97, 0xcc, 0xec, 0x06, 0x5c, 0x7e, 0x78, 0xcc, 0x9a, 0x3d, 0xe0, 0x2b, 0x9e, 0xdc, 0xe0, 0xbd, 0xcc, 0x08, 0x8a, 0x23, 0xc2, 0xa5, 0x6f, 0xc9, 0x1b, 0x32, 0xc9, 0x4e, }; static const unsigned char xdh_wei25519_928_privkey[] = { 0x78, 0xcd, 0xe8, 0x93, 0x0a, 0x1d, 0x81, 0xae, 0xf6, 0x60, 0x1f, 0x71, 0x40, 0x97, 0x28, 0x85, 0x49, 0x87, 0x57, 0x8b, 0x0f, 0x83, 0x49, 0x58, 0x8c, 0x04, 0xad, 0xbe, 0x2c, 0x1f, 0x6e, 0x74, }; static const unsigned char xdh_wei25519_928_sharedsecret[] = { 0xd7, 0xd2, 0xa8, 0x29, 0x53, 0xf6, 0x80, 0xce, 0xe0, 0xc8, 0x1c, 0x4d, 0x00, 0xfe, 0x62, 0x8a, 0xc5, 0x30, 0xce, 0x68, 0x2e, 0xb7, 0xfb, 0x3b, 0x0a, 0xf2, 0x4f, 0x80, 0x4a, 0x58, 0xef, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_928 = { .name = "xdh_wei25519_928", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_928_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_928_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_928_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_928_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 411 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 929 for XDH, tcId is 412 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_929_peerpubkey[] = { 0x27, 0x43, 0xba, 0x40, 0x8d, 0x5f, 0x68, 0xc6, 0x53, 0x24, 0xa4, 0x85, 0x08, 0x6a, 0x00, 0x4b, 0x6b, 0xbf, 0x78, 0x4c, 0xc9, 0xe8, 0xb1, 0xa7, 0xdb, 0xeb, 0x8c, 0x4b, 0x94, 0x14, 0xb0, 0x18, }; static const unsigned char xdh_wei25519_929_ourpubkey[] = { 0x5e, 0xed, 0x2d, 0xc0, 0x85, 0xb7, 0xdd, 0x21, 0xed, 0x75, 0xbd, 0x8a, 0xc8, 0x79, 0xd3, 0xa0, 0x22, 0x7f, 0x31, 0x59, 0xc1, 0x1e, 0x7a, 0x93, 0xaf, 0x46, 0x5e, 0xca, 0x78, 0xfd, 0x8d, 0x29, }; static const unsigned char xdh_wei25519_929_privkey[] = { 0xb0, 0xfe, 0x7b, 0x06, 0xb9, 0x95, 0x06, 0x00, 0xb3, 0xa7, 0xce, 0x1d, 0x7b, 0xb2, 0xa1, 0xd9, 0x84, 0x19, 0x4c, 0xc9, 0xd6, 0xc8, 0x96, 0x45, 0x04, 0xc3, 0x64, 0xdd, 0x5c, 0x87, 0x5b, 0x74, }; static const unsigned char xdh_wei25519_929_sharedsecret[] = { 0xa6, 0xb9, 0x7d, 0xa9, 0x89, 0xdc, 0xcf, 0x73, 0x0f, 0x12, 0x2d, 0x45, 0x51, 0x52, 0x32, 0x80, 0x51, 0xc8, 0xed, 0x9a, 0xbc, 0x18, 0x15, 0xc1, 0x9e, 0xec, 0x65, 0x01, 0xd6, 0xcf, 0xc7, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_929 = { .name = "xdh_wei25519_929", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_929_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_929_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_929_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_929_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 412 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 930 for XDH, tcId is 413 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_930_peerpubkey[] = { 0xcc, 0x27, 0x5a, 0x2c, 0xdd, 0x91, 0x25, 0xe5, 0x2f, 0x20, 0xce, 0x2a, 0xba, 0xd4, 0x1f, 0x92, 0x0a, 0xfa, 0x5a, 0x64, 0x3f, 0xb7, 0xf2, 0x76, 0xef, 0x41, 0x6f, 0x76, 0x1d, 0x68, 0x9f, 0x1e, }; static const unsigned char xdh_wei25519_930_ourpubkey[] = { 0x30, 0xd3, 0xdc, 0x44, 0x6c, 0xde, 0xff, 0xc8, 0x91, 0xa7, 0xb7, 0x69, 0x9a, 0x8f, 0x03, 0x5d, 0xb4, 0x53, 0xf1, 0xd8, 0x55, 0x55, 0xce, 0x8f, 0xb4, 0x85, 0xea, 0xf7, 0x82, 0xbf, 0xf1, 0x36, }; static const unsigned char xdh_wei25519_930_privkey[] = { 0xf0, 0xc9, 0xc3, 0x98, 0x48, 0x54, 0xd5, 0xbd, 0x59, 0x9d, 0x38, 0x19, 0x73, 0x8a, 0x02, 0x3e, 0xb7, 0x95, 0xe9, 0x35, 0x86, 0xdc, 0x0e, 0x5e, 0x29, 0xb1, 0xc8, 0x70, 0xc6, 0x12, 0xd1, 0x78, }; static const unsigned char xdh_wei25519_930_sharedsecret[] = { 0xb2, 0x10, 0xe3, 0x68, 0x72, 0x95, 0x01, 0xd9, 0xf9, 0xb6, 0xeb, 0xef, 0xbe, 0xba, 0xe3, 0x8f, 0x19, 0x5f, 0x91, 0xea, 0xf2, 0xa5, 0xa3, 0xa4, 0x92, 0x88, 0xbb, 0x61, 0x5f, 0xf2, 0x21, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_930 = { .name = "xdh_wei25519_930", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_930_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_930_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_930_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_930_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 413 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 931 for XDH, tcId is 414 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_931_peerpubkey[] = { 0x49, 0x29, 0x54, 0x31, 0x01, 0xee, 0x7a, 0xe2, 0x39, 0x05, 0x9c, 0xd1, 0x34, 0xc3, 0x5d, 0x40, 0x0e, 0x50, 0xd0, 0x82, 0x14, 0x41, 0x35, 0x1d, 0x0f, 0xa6, 0xc3, 0xd5, 0x4e, 0xfb, 0x34, 0x2e, }; static const unsigned char xdh_wei25519_931_ourpubkey[] = { 0xed, 0xbe, 0xbc, 0x9e, 0x6b, 0xa0, 0x4c, 0xf4, 0xbd, 0x65, 0xf9, 0x53, 0x82, 0xb1, 0x7e, 0x43, 0x92, 0xe5, 0x18, 0xdf, 0x76, 0xcc, 0x33, 0x4a, 0xc6, 0x1f, 0xe0, 0x9c, 0x1f, 0x98, 0x0b, 0x15, }; static const unsigned char xdh_wei25519_931_privkey[] = { 0x90, 0x6c, 0x2f, 0x12, 0xbe, 0x89, 0x70, 0x2d, 0xb2, 0x6f, 0xa7, 0xee, 0x90, 0x5c, 0xe3, 0x65, 0x25, 0xd2, 0xde, 0xe4, 0xe9, 0x6a, 0x87, 0x9c, 0xa0, 0x7d, 0xa0, 0x97, 0xa6, 0xaa, 0x50, 0x75, }; static const unsigned char xdh_wei25519_931_sharedsecret[] = { 0xb9, 0xe3, 0x79, 0x6c, 0x58, 0x70, 0x1d, 0xed, 0x42, 0x37, 0xc5, 0x29, 0x94, 0x50, 0x1c, 0xee, 0x14, 0xe1, 0x8f, 0x2f, 0xb0, 0x2b, 0x78, 0x1a, 0x84, 0x00, 0x92, 0x34, 0x84, 0xbd, 0x4a, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_931 = { .name = "xdh_wei25519_931", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_931_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_931_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_931_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_931_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 414 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 932 for XDH, tcId is 415 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_932_peerpubkey[] = { 0x13, 0x24, 0xe0, 0x36, 0x85, 0x97, 0xb3, 0x18, 0x15, 0x55, 0xbb, 0x5b, 0x2c, 0xc7, 0xb7, 0xeb, 0xba, 0x46, 0x93, 0x1a, 0xea, 0xbb, 0x6f, 0x05, 0xab, 0xab, 0xd4, 0x24, 0x0f, 0x0f, 0xb9, 0x33, }; static const unsigned char xdh_wei25519_932_ourpubkey[] = { 0x8a, 0x44, 0xfa, 0xf8, 0xd3, 0x27, 0x17, 0xd4, 0xe8, 0x3b, 0xa2, 0xe2, 0x91, 0xc0, 0x6f, 0xd2, 0xfa, 0x84, 0x79, 0x3b, 0x45, 0xe1, 0x29, 0x09, 0xa2, 0x51, 0x0e, 0xc9, 0x97, 0xc7, 0x62, 0x0d, }; static const unsigned char xdh_wei25519_932_privkey[] = { 0xf0, 0x26, 0x03, 0x1e, 0xa3, 0x73, 0xe1, 0xd1, 0x6e, 0x6e, 0x7e, 0x03, 0x57, 0xbc, 0x96, 0xbc, 0x09, 0x3f, 0x4b, 0x6b, 0xb7, 0x6a, 0x73, 0x8c, 0xbb, 0x54, 0xfe, 0x6c, 0xfd, 0x2e, 0xa2, 0x71, }; static const unsigned char xdh_wei25519_932_sharedsecret[] = { 0x6d, 0xcd, 0xf8, 0xe8, 0x69, 0x03, 0xb0, 0xca, 0xde, 0xd1, 0x24, 0xd8, 0xa7, 0xda, 0x18, 0xe6, 0x23, 0x43, 0x0c, 0xa8, 0x69, 0xaa, 0xf2, 0x67, 0xd3, 0x10, 0x29, 0xd9, 0x3d, 0xe9, 0x9e, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_932 = { .name = "xdh_wei25519_932", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_932_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_932_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_932_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_932_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 415 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 933 for XDH, tcId is 416 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_933_peerpubkey[] = { 0xc7, 0xf3, 0x84, 0x22, 0x97, 0xd6, 0x94, 0x1c, 0xac, 0x63, 0xd6, 0xf1, 0xbd, 0xae, 0xa0, 0x70, 0x94, 0x37, 0xc8, 0x2d, 0xbc, 0x91, 0x61, 0xfc, 0x1b, 0xae, 0x6c, 0x79, 0xd6, 0x68, 0xeb, 0x44, }; static const unsigned char xdh_wei25519_933_ourpubkey[] = { 0x48, 0x46, 0x7f, 0x9b, 0xb5, 0x30, 0xaa, 0xfb, 0x54, 0x65, 0xe8, 0x18, 0x48, 0x40, 0x92, 0x6e, 0x8a, 0x01, 0x2b, 0xc6, 0x10, 0x34, 0x86, 0x1e, 0x8b, 0x42, 0x99, 0x75, 0x33, 0x0a, 0xec, 0x66, }; static const unsigned char xdh_wei25519_933_privkey[] = { 0x70, 0x3f, 0x4a, 0xc8, 0x66, 0x7d, 0x77, 0xf9, 0x53, 0x60, 0x45, 0xcf, 0x74, 0x8f, 0x18, 0xd4, 0x23, 0x45, 0xe3, 0x9c, 0xca, 0xb1, 0x0c, 0x18, 0xdd, 0xe0, 0xf5, 0x17, 0x0d, 0x30, 0x7f, 0x73, }; static const unsigned char xdh_wei25519_933_sharedsecret[] = { 0x38, 0x5d, 0xdb, 0xf2, 0x50, 0x5e, 0xbf, 0x53, 0x7b, 0xf5, 0xe9, 0x76, 0xb6, 0x1a, 0x4b, 0x69, 0xd1, 0x90, 0xae, 0x96, 0x5b, 0x7e, 0x4a, 0x81, 0xae, 0x4e, 0x1c, 0x16, 0xb7, 0x14, 0x87, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_933 = { .name = "xdh_wei25519_933", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_933_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_933_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_933_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_933_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 416 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 934 for XDH, tcId is 417 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_934_peerpubkey[] = { 0x1e, 0x46, 0x60, 0xba, 0x86, 0x5f, 0xb8, 0x08, 0x5a, 0xfd, 0x46, 0x92, 0x88, 0x5d, 0x74, 0x23, 0x7f, 0xa3, 0xbc, 0xa5, 0xaf, 0x4b, 0x84, 0xba, 0x3d, 0xe4, 0x00, 0xf1, 0x6a, 0x5a, 0xc4, 0x5c, }; static const unsigned char xdh_wei25519_934_ourpubkey[] = { 0xea, 0x2d, 0xab, 0x3d, 0x62, 0x5e, 0xc0, 0x99, 0xc1, 0x86, 0x0e, 0xc1, 0x0d, 0x94, 0xc5, 0xa4, 0x23, 0xac, 0xa5, 0xff, 0xb0, 0xbe, 0x2c, 0x11, 0x64, 0x94, 0x09, 0x4a, 0xe5, 0x85, 0x43, 0x65, }; static const unsigned char xdh_wei25519_934_privkey[] = { 0xc8, 0xa9, 0x6a, 0xe4, 0xe7, 0x72, 0x71, 0xa0, 0x68, 0x0d, 0xd2, 0x4f, 0xcb, 0x09, 0xf9, 0xc5, 0xd3, 0xee, 0x83, 0x16, 0x53, 0x6e, 0xec, 0x7c, 0xc2, 0x27, 0x65, 0x97, 0xe5, 0x0f, 0xe3, 0x7f, }; static const unsigned char xdh_wei25519_934_sharedsecret[] = { 0x0f, 0xba, 0xea, 0x73, 0xf9, 0x51, 0x87, 0x95, 0xe0, 0x26, 0xc1, 0xfc, 0x10, 0x79, 0xc3, 0x73, 0x8a, 0xeb, 0x9e, 0xe9, 0xc8, 0xdc, 0x97, 0x61, 0xd6, 0x5b, 0xbf, 0x8f, 0x94, 0xe3, 0x01, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_934 = { .name = "xdh_wei25519_934", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_934_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_934_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_934_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_934_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 417 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 935 for XDH, tcId is 418 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_935_peerpubkey[] = { 0x24, 0x88, 0xbb, 0x6f, 0xad, 0xb7, 0x9d, 0x46, 0x58, 0x5f, 0xf0, 0x1c, 0x16, 0x0c, 0x5b, 0x41, 0x72, 0x79, 0x9d, 0x92, 0xbd, 0x16, 0x8e, 0xdc, 0xeb, 0x65, 0xce, 0xde, 0xdc, 0x49, 0x27, 0x62, }; static const unsigned char xdh_wei25519_935_ourpubkey[] = { 0x50, 0xa6, 0xdb, 0xca, 0x92, 0xd6, 0x48, 0xf5, 0x61, 0x81, 0x57, 0x8a, 0x5b, 0x48, 0x5b, 0x87, 0x79, 0x11, 0x90, 0x15, 0xfc, 0xe8, 0xd5, 0x2f, 0x5f, 0xb8, 0xee, 0x83, 0x6e, 0x96, 0x38, 0x71, }; static const unsigned char xdh_wei25519_935_privkey[] = { 0xd0, 0xdd, 0xe8, 0xed, 0xa3, 0x8c, 0x37, 0x83, 0x44, 0x28, 0x64, 0xc0, 0xcb, 0x46, 0xa0, 0xe9, 0x83, 0x2d, 0xcf, 0x78, 0x4c, 0x21, 0x26, 0x8a, 0x21, 0xbe, 0xd2, 0xca, 0xce, 0x87, 0xcd, 0x70, }; static const unsigned char xdh_wei25519_935_sharedsecret[] = { 0x51, 0x0c, 0x64, 0x15, 0x1e, 0x5d, 0x07, 0x37, 0xfc, 0x32, 0x4b, 0xd1, 0x5f, 0xb5, 0xd3, 0x96, 0x69, 0x08, 0x75, 0x1c, 0xd1, 0xa0, 0x69, 0x54, 0xb5, 0x56, 0x19, 0x66, 0x55, 0xee, 0x55, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_935 = { .name = "xdh_wei25519_935", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_935_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_935_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_935_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_935_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 418 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 936 for XDH, tcId is 419 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_936_peerpubkey[] = { 0xa0, 0xc1, 0x08, 0x78, 0x11, 0xaf, 0x14, 0x91, 0x17, 0x1b, 0xc5, 0x16, 0x91, 0xb8, 0xca, 0x84, 0x71, 0x6a, 0xf3, 0x6c, 0x4b, 0xaa, 0x76, 0x4e, 0xc5, 0x36, 0x28, 0x0c, 0xc1, 0x98, 0x3d, 0x6d, }; static const unsigned char xdh_wei25519_936_ourpubkey[] = { 0x52, 0x37, 0x06, 0x47, 0x3f, 0x38, 0x59, 0xbc, 0x77, 0xb2, 0xb8, 0xbb, 0x7b, 0x41, 0xf8, 0xb0, 0x43, 0x81, 0x26, 0xd1, 0x20, 0x6e, 0x64, 0x1b, 0x77, 0x6e, 0x91, 0xa1, 0x31, 0x2e, 0xe4, 0x2e, }; static const unsigned char xdh_wei25519_936_privkey[] = { 0xc0, 0x9c, 0xd4, 0x7e, 0x1c, 0xe5, 0x36, 0x04, 0xf1, 0x4e, 0x4e, 0x13, 0x42, 0x6c, 0x8f, 0x08, 0x96, 0x2f, 0x55, 0x6b, 0xcd, 0x81, 0xf8, 0xd7, 0x53, 0x75, 0xb1, 0x50, 0x7c, 0x6f, 0xda, 0x78, }; static const unsigned char xdh_wei25519_936_sharedsecret[] = { 0x23, 0xef, 0x82, 0x5e, 0x1c, 0x8e, 0x6e, 0x64, 0x42, 0x80, 0x01, 0xa7, 0x46, 0x3e, 0x32, 0xa9, 0x70, 0x1c, 0x81, 0xcf, 0x78, 0x20, 0x3e, 0x6a, 0xe7, 0x53, 0x74, 0x0c, 0x91, 0x57, 0x0e, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_936 = { .name = "xdh_wei25519_936", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_936_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_936_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_936_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_936_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 419 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 937 for XDH, tcId is 420 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_937_peerpubkey[] = { 0xcc, 0x5c, 0x97, 0x93, 0x46, 0x07, 0xd8, 0xb9, 0x81, 0xbc, 0xe1, 0xd6, 0xa2, 0x32, 0xbb, 0x3a, 0xec, 0xc3, 0x00, 0x1f, 0x69, 0x8a, 0xe1, 0xae, 0x84, 0x93, 0x8f, 0xbf, 0x28, 0x61, 0x07, 0x7b, }; static const unsigned char xdh_wei25519_937_ourpubkey[] = { 0x8c, 0x53, 0xa9, 0x79, 0xa2, 0xa9, 0xbc, 0xa3, 0x4b, 0x42, 0x40, 0x1d, 0xec, 0x1e, 0xe3, 0xf1, 0xc5, 0x60, 0xad, 0x7a, 0x16, 0x9e, 0x9c, 0x9b, 0xfd, 0x93, 0x98, 0xb5, 0xf7, 0xaf, 0xb0, 0x1d, }; static const unsigned char xdh_wei25519_937_privkey[] = { 0xe0, 0x9a, 0x5f, 0x74, 0xf3, 0x18, 0xf0, 0x23, 0x03, 0x85, 0x7a, 0xa0, 0x20, 0x8d, 0x76, 0x91, 0x3d, 0x9e, 0x24, 0x0a, 0x80, 0x54, 0x9d, 0x12, 0x01, 0x31, 0x18, 0xba, 0xd6, 0x20, 0x59, 0x7f, }; static const unsigned char xdh_wei25519_937_sharedsecret[] = { 0x0e, 0x55, 0xa7, 0xec, 0x1a, 0x2d, 0xdb, 0xea, 0x1a, 0xc5, 0x98, 0x12, 0x00, 0x81, 0x22, 0x32, 0xf7, 0xf4, 0xc3, 0xa6, 0x0e, 0xe3, 0xc9, 0xab, 0x09, 0xf2, 0x16, 0x3b, 0xd1, 0x3d, 0xa3, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_937 = { .name = "xdh_wei25519_937", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_937_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_937_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_937_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_937_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 420 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 938 for XDH, tcId is 421 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_938_peerpubkey[] = { 0x23, 0x8d, 0xe7, 0xfc, 0xc8, 0xa3, 0xf1, 0x94, 0xc3, 0x55, 0x4c, 0x32, 0x8e, 0xfb, 0x12, 0x15, 0xd0, 0x64, 0x0a, 0xc6, 0x74, 0xb6, 0x1a, 0x98, 0xef, 0x93, 0x4e, 0xc0, 0x04, 0xcf, 0xd7, 0x3b, }; static const unsigned char xdh_wei25519_938_ourpubkey[] = { 0xb9, 0xd3, 0x75, 0x96, 0xea, 0x74, 0x9f, 0xa0, 0x26, 0x79, 0x73, 0x66, 0x9c, 0xad, 0xcf, 0x6a, 0x02, 0x56, 0xb7, 0x85, 0x50, 0x6a, 0x2f, 0xdd, 0x72, 0x70, 0x17, 0x5c, 0x00, 0xa3, 0xa1, 0x2b, }; static const unsigned char xdh_wei25519_938_privkey[] = { 0x70, 0x6c, 0xee, 0x5f, 0x9b, 0x35, 0x7c, 0x03, 0xb2, 0xf1, 0x91, 0x32, 0x94, 0xf6, 0xe4, 0xf0, 0xca, 0x5a, 0x19, 0x0a, 0x87, 0xd3, 0x02, 0x68, 0x32, 0x7d, 0x0c, 0xb6, 0xbd, 0xd5, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_938_sharedsecret[] = { 0x06, 0x81, 0x03, 0x6a, 0x0d, 0x27, 0x58, 0x3b, 0xa6, 0xf2, 0xbe, 0x76, 0x30, 0x61, 0x31, 0x71, 0xa3, 0x3f, 0xb8, 0xa6, 0xc8, 0x99, 0x1c, 0x53, 0xb3, 0x79, 0x99, 0x9f, 0x0f, 0x15, 0x92, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_938 = { .name = "xdh_wei25519_938", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_938_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_938_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_938_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_938_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 421 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 939 for XDH, tcId is 422 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_939_peerpubkey[] = { 0xac, 0x9f, 0xd8, 0x0a, 0x45, 0xda, 0x10, 0x9f, 0xa2, 0x32, 0x93, 0x90, 0xe5, 0xa9, 0x51, 0xcf, 0xc0, 0x30, 0x65, 0xd7, 0xbb, 0x4a, 0x78, 0x55, 0x82, 0x6c, 0xcb, 0x22, 0xc3, 0xbf, 0xeb, 0x3d, }; static const unsigned char xdh_wei25519_939_ourpubkey[] = { 0x51, 0xd5, 0x09, 0x4f, 0x41, 0xcd, 0x7f, 0x53, 0x1d, 0xb7, 0x47, 0x57, 0x02, 0xb1, 0x37, 0x9c, 0x93, 0x35, 0xba, 0x96, 0x64, 0x21, 0x74, 0x34, 0x01, 0x31, 0x63, 0x9d, 0x75, 0x63, 0x21, 0x2c, }; static const unsigned char xdh_wei25519_939_privkey[] = { 0x40, 0xe3, 0x00, 0xcb, 0x1f, 0xf2, 0x60, 0x57, 0x4f, 0x85, 0xb3, 0xf0, 0x4a, 0xac, 0x47, 0x84, 0x64, 0xa8, 0x6e, 0x62, 0x03, 0xb3, 0xd4, 0x65, 0x64, 0x18, 0xf4, 0x30, 0x51, 0x57, 0x87, 0x7b, }; static const unsigned char xdh_wei25519_939_sharedsecret[] = { 0x67, 0xb8, 0x87, 0x74, 0xf1, 0x9b, 0xd1, 0x08, 0x1d, 0x6f, 0x23, 0x65, 0x6a, 0x13, 0x58, 0x03, 0xe3, 0x4a, 0xe1, 0xcd, 0xca, 0xe1, 0x08, 0x18, 0x12, 0x4a, 0x78, 0x56, 0x9c, 0x29, 0x9f, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_939 = { .name = "xdh_wei25519_939", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_939_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_939_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_939_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_939_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 422 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 940 for XDH, tcId is 423 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_940_peerpubkey[] = { 0xa4, 0x5a, 0xb1, 0xdc, 0x2f, 0xa2, 0xc5, 0x07, 0x18, 0xfb, 0x49, 0x85, 0xd9, 0x79, 0x14, 0x01, 0xe8, 0xd2, 0xd3, 0x4f, 0xfe, 0x3c, 0xd9, 0x3c, 0xff, 0xb4, 0xe8, 0x70, 0xcc, 0xe5, 0xe8, 0x55, }; static const unsigned char xdh_wei25519_940_ourpubkey[] = { 0x3a, 0x7d, 0xd3, 0x52, 0xa2, 0xdd, 0xd1, 0xd3, 0x27, 0x83, 0x82, 0x00, 0x17, 0x2d, 0x63, 0x86, 0xa9, 0x89, 0x9e, 0xf3, 0xf5, 0x6c, 0x6b, 0x09, 0x27, 0x13, 0xac, 0xec, 0x96, 0x4e, 0xf7, 0x08, }; static const unsigned char xdh_wei25519_940_privkey[] = { 0x88, 0x2f, 0x78, 0xb4, 0x55, 0x8b, 0x7f, 0xaa, 0x83, 0x59, 0x04, 0xc9, 0x23, 0x5e, 0x32, 0xf3, 0x00, 0xfc, 0x8b, 0x5e, 0xf0, 0xa7, 0x18, 0x40, 0x6a, 0x5c, 0x85, 0x20, 0xca, 0x54, 0xd0, 0x71, }; static const unsigned char xdh_wei25519_940_sharedsecret[] = { 0xa5, 0x12, 0xe8, 0x64, 0xbd, 0x89, 0x8a, 0x5b, 0xa6, 0x55, 0x1a, 0xdc, 0xeb, 0xd8, 0x36, 0xc6, 0xa7, 0x8e, 0x78, 0x71, 0x72, 0x8e, 0x1b, 0x8e, 0xe5, 0x28, 0xd4, 0x83, 0xaf, 0x27, 0x61, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_940 = { .name = "xdh_wei25519_940", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_940_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_940_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_940_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_940_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 423 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 941 for XDH, tcId is 424 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_941_peerpubkey[] = { 0x17, 0x61, 0xd3, 0xd5, 0x0b, 0xa4, 0x6b, 0x44, 0x66, 0x55, 0xaa, 0x6a, 0x8d, 0x9b, 0x8b, 0x75, 0xaa, 0x5b, 0xb2, 0x4a, 0x79, 0x53, 0x20, 0x8d, 0x5b, 0x69, 0xfc, 0xc3, 0x8f, 0x18, 0xec, 0x7a, }; static const unsigned char xdh_wei25519_941_ourpubkey[] = { 0x23, 0x1f, 0xb4, 0xbb, 0xe3, 0x5a, 0x5f, 0x4d, 0x49, 0x31, 0x01, 0xc1, 0x20, 0x1d, 0x6e, 0x72, 0x2d, 0x3a, 0xd2, 0x0f, 0xe1, 0x14, 0x16, 0xde, 0xec, 0xa2, 0x2f, 0xa2, 0xf1, 0x80, 0x01, 0x0d, }; static const unsigned char xdh_wei25519_941_privkey[] = { 0xd8, 0x64, 0x9b, 0x73, 0x55, 0x90, 0xa1, 0x7d, 0x0f, 0xc4, 0xc3, 0x78, 0xfb, 0xf4, 0xc2, 0xf7, 0xd6, 0x60, 0x05, 0x69, 0xb2, 0xe8, 0x4c, 0xbe, 0x0f, 0xf7, 0xbc, 0xdb, 0xac, 0x0b, 0x5f, 0x71, }; static const unsigned char xdh_wei25519_941_sharedsecret[] = { 0x51, 0x8b, 0x77, 0x8c, 0xf5, 0xe9, 0x76, 0xc6, 0x02, 0x35, 0xab, 0xcf, 0x62, 0x11, 0xa1, 0x8b, 0xad, 0x2a, 0x8e, 0x69, 0x3a, 0xb2, 0x61, 0x07, 0x4c, 0x7f, 0xab, 0x43, 0xdb, 0xb5, 0xda, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_941 = { .name = "xdh_wei25519_941", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_941_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_941_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_941_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_941_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 424 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 942 for XDH, tcId is 425 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_942_peerpubkey[] = { 0xdc, 0x99, 0xad, 0x00, 0x31, 0x46, 0x3e, 0x45, 0x37, 0xc0, 0x1e, 0x16, 0x62, 0x99, 0x66, 0xd1, 0xb9, 0x62, 0xc0, 0xb4, 0xe4, 0x87, 0x2f, 0x06, 0x7c, 0xa3, 0xc2, 0x6c, 0xcc, 0x95, 0x70, 0x01, }; static const unsigned char xdh_wei25519_942_ourpubkey[] = { 0x7c, 0xe6, 0xa3, 0xb1, 0x02, 0x9c, 0x13, 0xf9, 0x95, 0xc3, 0x3e, 0xa5, 0xce, 0x73, 0xe2, 0x8e, 0x77, 0xb0, 0x4b, 0xb5, 0x76, 0x2f, 0x3d, 0x8d, 0xce, 0x2a, 0x07, 0xf7, 0x28, 0xb7, 0xa7, 0x31, }; static const unsigned char xdh_wei25519_942_privkey[] = { 0xa8, 0xed, 0xec, 0x59, 0xae, 0x6b, 0xa2, 0x38, 0x13, 0xec, 0x54, 0xd6, 0x6d, 0xf1, 0x52, 0xe0, 0x62, 0x67, 0x62, 0xb9, 0x7d, 0x4b, 0x0c, 0x20, 0xe0, 0xdd, 0x8a, 0x56, 0x95, 0xd8, 0x6e, 0x47, }; static const unsigned char xdh_wei25519_942_sharedsecret[] = { 0x6c, 0xfa, 0x93, 0x5f, 0x24, 0xb0, 0x31, 0xff, 0x26, 0x1a, 0x7c, 0xd3, 0x52, 0x66, 0x60, 0xfd, 0x6b, 0x39, 0x6c, 0x5c, 0x30, 0xe2, 0x99, 0x57, 0x5f, 0x6a, 0x32, 0x22, 0x81, 0x19, 0x1e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_942 = { .name = "xdh_wei25519_942", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_942_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_942_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_942_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_942_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 425 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 943 for XDH, tcId is 426 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_943_peerpubkey[] = { 0xb3, 0x27, 0x50, 0xfd, 0x80, 0xd2, 0xd7, 0xc6, 0x2c, 0x6b, 0x8e, 0x39, 0x67, 0x06, 0x54, 0xba, 0xea, 0x57, 0x19, 0xa3, 0xe0, 0x72, 0xe9, 0x95, 0x07, 0xfd, 0x5b, 0xcb, 0x23, 0x89, 0x82, 0x64, }; static const unsigned char xdh_wei25519_943_ourpubkey[] = { 0xbf, 0xf1, 0x21, 0x83, 0x7b, 0x61, 0x4e, 0x02, 0x64, 0x3a, 0xac, 0x29, 0x7e, 0xc4, 0x59, 0x74, 0x07, 0x68, 0x7a, 0x2a, 0xd7, 0xcd, 0x53, 0xf0, 0x15, 0x08, 0x15, 0xcc, 0x75, 0xf8, 0xdd, 0x0a, }; static const unsigned char xdh_wei25519_943_privkey[] = { 0x10, 0x98, 0x72, 0x3f, 0xfe, 0x56, 0x7e, 0xa6, 0xdc, 0xc8, 0xd0, 0x4e, 0xcc, 0x01, 0xef, 0xaf, 0xee, 0xa0, 0xae, 0xe4, 0x4e, 0x1c, 0x73, 0x3b, 0xe8, 0xb1, 0xe5, 0xd9, 0x7c, 0x8b, 0x80, 0x41, }; static const unsigned char xdh_wei25519_943_sharedsecret[] = { 0xc6, 0x23, 0xe2, 0xd2, 0x08, 0x3f, 0x18, 0x11, 0x0a, 0x52, 0x5f, 0x2b, 0x66, 0xd8, 0x9e, 0xd8, 0x2d, 0x31, 0x3b, 0x6a, 0x2d, 0xd0, 0x82, 0xf6, 0xb7, 0xa6, 0xe7, 0x33, 0x13, 0x4f, 0x5a, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_943 = { .name = "xdh_wei25519_943", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_943_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_943_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_943_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_943_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 426 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 944 for XDH, tcId is 427 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_944_peerpubkey[] = { 0xe7, 0xb3, 0x20, 0x57, 0x77, 0xb3, 0x75, 0xf1, 0xb1, 0x51, 0x5a, 0x50, 0xa1, 0x6a, 0x60, 0x67, 0x95, 0x3f, 0xf2, 0x21, 0xe1, 0x2b, 0x4f, 0x41, 0x6d, 0x74, 0xfb, 0x28, 0xc1, 0xc8, 0x58, 0x65, }; static const unsigned char xdh_wei25519_944_ourpubkey[] = { 0xd9, 0xac, 0xb7, 0x95, 0x2b, 0x34, 0x26, 0xc8, 0x29, 0x86, 0x0c, 0x27, 0x3b, 0xcc, 0x18, 0x82, 0x46, 0x77, 0xe2, 0x77, 0x04, 0x0a, 0x36, 0xc5, 0xd8, 0x50, 0x65, 0xa5, 0x06, 0xb2, 0x0a, 0x5e, }; static const unsigned char xdh_wei25519_944_privkey[] = { 0xa0, 0xf2, 0x0d, 0xf9, 0x8b, 0x49, 0x21, 0x8a, 0xc8, 0x32, 0xf2, 0x6f, 0xa8, 0xc2, 0x18, 0xa0, 0xd6, 0x87, 0x2e, 0xb7, 0xae, 0xa0, 0x7c, 0x1d, 0x43, 0xc9, 0xff, 0x69, 0x9b, 0x46, 0x5b, 0x47, }; static const unsigned char xdh_wei25519_944_sharedsecret[] = { 0x38, 0x8e, 0xa4, 0x21, 0x65, 0x0a, 0x8d, 0x83, 0x7b, 0xad, 0x89, 0x04, 0x01, 0x81, 0x95, 0xe9, 0x9e, 0xf4, 0x94, 0xc2, 0xd1, 0x70, 0xb9, 0x3e, 0xe7, 0x21, 0xa6, 0x7d, 0x2c, 0x10, 0x87, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_944 = { .name = "xdh_wei25519_944", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_944_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_944_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_944_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_944_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 427 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 945 for XDH, tcId is 428 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_945_peerpubkey[] = { 0x21, 0xcc, 0x33, 0x8d, 0x78, 0x69, 0xe5, 0x86, 0x33, 0x49, 0xcc, 0x73, 0x9c, 0x8a, 0x69, 0x46, 0xcf, 0xc7, 0x97, 0xcb, 0x82, 0xfb, 0xf6, 0x2d, 0xcd, 0x21, 0x54, 0x84, 0x4b, 0x10, 0x60, 0x03, }; static const unsigned char xdh_wei25519_945_ourpubkey[] = { 0x77, 0x16, 0xcd, 0x56, 0xc5, 0xec, 0x50, 0x69, 0xcb, 0x34, 0xf0, 0x2d, 0x03, 0x1d, 0xdb, 0xd6, 0xae, 0x5b, 0xe8, 0xe6, 0xe8, 0x05, 0x35, 0x9c, 0xd5, 0x99, 0x12, 0xa2, 0x9e, 0x05, 0x75, 0x60, }; static const unsigned char xdh_wei25519_945_privkey[] = { 0x30, 0x47, 0x3a, 0x77, 0xa9, 0x83, 0x74, 0xf6, 0x7d, 0x5b, 0xd4, 0x3d, 0xf2, 0x31, 0xce, 0x14, 0x29, 0x16, 0xae, 0xa0, 0xd2, 0x71, 0xe7, 0x23, 0x33, 0xfa, 0x47, 0xdc, 0x44, 0x1a, 0x02, 0x47, }; static const unsigned char xdh_wei25519_945_sharedsecret[] = { 0xb9, 0xe5, 0x72, 0x8b, 0x37, 0x43, 0x5b, 0x1d, 0x33, 0x99, 0x88, 0xf9, 0x32, 0x67, 0xd5, 0x9f, 0x3b, 0xd1, 0xc5, 0x17, 0x85, 0x1c, 0x5a, 0x25, 0x8e, 0x74, 0xcb, 0x64, 0xae, 0xa7, 0x3d, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_945 = { .name = "xdh_wei25519_945", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_945_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_945_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_945_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_945_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 428 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 946 for XDH, tcId is 429 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_946_peerpubkey[] = { 0xc3, 0x42, 0x17, 0xc0, 0x20, 0x72, 0xd7, 0xe2, 0xbc, 0xa0, 0x45, 0x45, 0x25, 0x03, 0x07, 0x80, 0xcf, 0xb6, 0x02, 0x15, 0xd7, 0xca, 0x82, 0xdb, 0xec, 0x8f, 0x4a, 0x59, 0x03, 0x4c, 0x5f, 0x43, }; static const unsigned char xdh_wei25519_946_ourpubkey[] = { 0x80, 0x4f, 0x9a, 0x00, 0xc3, 0x10, 0xba, 0xf2, 0x5a, 0xd7, 0xad, 0x59, 0xb9, 0x9a, 0x16, 0x40, 0xad, 0x39, 0x7f, 0x0f, 0xd7, 0x7d, 0xe1, 0x92, 0x76, 0x16, 0xc9, 0xd4, 0x4b, 0x24, 0xad, 0x03, }; static const unsigned char xdh_wei25519_946_privkey[] = { 0xd8, 0x65, 0x7b, 0xe3, 0xa3, 0x0f, 0xc8, 0x5f, 0xb2, 0xf3, 0xa6, 0x8e, 0x92, 0xac, 0xe1, 0xb3, 0x1b, 0x26, 0xe7, 0x6e, 0x6b, 0xdb, 0x67, 0x27, 0xae, 0xa5, 0x07, 0xcb, 0x7c, 0x10, 0xdc, 0x45, }; static const unsigned char xdh_wei25519_946_sharedsecret[] = { 0x20, 0xb6, 0x7b, 0x20, 0x5e, 0x22, 0xce, 0x87, 0xfd, 0x44, 0xa8, 0xe8, 0xfd, 0x10, 0xa6, 0xd8, 0x89, 0x0b, 0x92, 0x70, 0xb6, 0x0e, 0x1c, 0x6a, 0x68, 0xb4, 0xaa, 0x78, 0xe6, 0xe3, 0x79, 0x61, }; static const wycheproof_xdh_test xdh_wei25519_946 = { .name = "xdh_wei25519_946", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_946_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_946_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_946_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_946_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 429 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 947 for XDH, tcId is 430 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_947_peerpubkey[] = { 0x8a, 0xbb, 0x8c, 0xfd, 0x60, 0xc6, 0xf8, 0xa4, 0xd8, 0x4d, 0x07, 0x50, 0xd3, 0xb4, 0x0a, 0x4f, 0x84, 0x6b, 0x30, 0xed, 0xf2, 0x05, 0x2f, 0xef, 0x7d, 0xf8, 0x41, 0x42, 0xcd, 0x0d, 0x9e, 0x47, }; static const unsigned char xdh_wei25519_947_ourpubkey[] = { 0x37, 0xed, 0x0a, 0xc5, 0x95, 0x19, 0xdd, 0xf5, 0x5c, 0x0d, 0x21, 0xd2, 0xb8, 0xda, 0xb2, 0x1f, 0x75, 0xc2, 0xed, 0xf6, 0x3c, 0x59, 0xce, 0x56, 0xa7, 0x25, 0x0b, 0x07, 0xf0, 0xf4, 0xcf, 0x49, }; static const unsigned char xdh_wei25519_947_privkey[] = { 0x88, 0x2f, 0x55, 0x78, 0xae, 0x4a, 0x13, 0xd8, 0xf5, 0xaf, 0x47, 0x3b, 0xdd, 0xe1, 0x70, 0x9b, 0xf2, 0xe0, 0x59, 0xdf, 0x80, 0x9e, 0xe0, 0x5b, 0x50, 0x5f, 0x34, 0xde, 0x85, 0x7c, 0x34, 0x47, }; static const unsigned char xdh_wei25519_947_sharedsecret[] = { 0x5f, 0xab, 0xa6, 0x45, 0xfc, 0x21, 0xf9, 0x42, 0x1e, 0xbd, 0x35, 0xc6, 0x9b, 0xdb, 0x1d, 0x85, 0xb4, 0x6f, 0x95, 0xe3, 0x74, 0x6f, 0xf7, 0xf4, 0x88, 0x6b, 0xc2, 0x80, 0xa9, 0xab, 0x25, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_947 = { .name = "xdh_wei25519_947", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_947_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_947_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_947_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_947_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 430 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 948 for XDH, tcId is 431 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_948_peerpubkey[] = { 0x9f, 0xd7, 0xb4, 0x9a, 0x08, 0xf2, 0x06, 0x68, 0x8d, 0x72, 0xdb, 0x73, 0x7d, 0xf8, 0xe5, 0x17, 0xaa, 0x7b, 0x76, 0x4f, 0x5d, 0xe7, 0xc9, 0xa2, 0xb1, 0xc3, 0xfc, 0xba, 0xa9, 0x85, 0xf6, 0x4c, }; static const unsigned char xdh_wei25519_948_ourpubkey[] = { 0x1a, 0x56, 0x89, 0x3b, 0xfe, 0x62, 0x4e, 0xe9, 0xe7, 0x91, 0x5a, 0xab, 0xff, 0x88, 0x5e, 0x0d, 0xd5, 0xcc, 0x8f, 0x4d, 0x24, 0x79, 0x6c, 0xaf, 0x4d, 0x70, 0xc9, 0x52, 0x42, 0xfd, 0x91, 0x6e, }; static const unsigned char xdh_wei25519_948_privkey[] = { 0x98, 0x29, 0x4d, 0xb7, 0xcb, 0xf4, 0x95, 0x8b, 0xfb, 0x3e, 0xd2, 0x1d, 0x5d, 0x5c, 0x91, 0xe1, 0x3c, 0xc8, 0xdc, 0x27, 0xb3, 0xc7, 0x16, 0xc8, 0x6f, 0x71, 0x67, 0xa4, 0x81, 0x9f, 0x87, 0x41, }; static const unsigned char xdh_wei25519_948_sharedsecret[] = { 0x9c, 0xb8, 0xa0, 0xf4, 0xad, 0x86, 0xa2, 0x7b, 0x96, 0xca, 0x61, 0x24, 0x2e, 0xab, 0x19, 0x8d, 0xb2, 0x76, 0x7d, 0x38, 0x62, 0xdd, 0x32, 0x3e, 0x41, 0x36, 0x8f, 0xcd, 0xcc, 0x5f, 0xab, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_948 = { .name = "xdh_wei25519_948", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_948_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_948_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_948_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_948_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 431 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 949 for XDH, tcId is 432 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_949_peerpubkey[] = { 0xc4, 0xfe, 0xfa, 0xc7, 0xac, 0xd4, 0x48, 0xe8, 0xfd, 0x4d, 0x6a, 0xc4, 0xf5, 0xdd, 0x1b, 0xc2, 0x1f, 0x2c, 0x67, 0xd6, 0x38, 0x44, 0x40, 0x60, 0x91, 0x8f, 0xb3, 0x44, 0xaa, 0x77, 0xe7, 0x57, }; static const unsigned char xdh_wei25519_949_ourpubkey[] = { 0xba, 0xd1, 0x5a, 0xf2, 0xf1, 0x9d, 0x59, 0xe8, 0x81, 0xd9, 0x51, 0xcf, 0xbc, 0x3d, 0x3d, 0x1f, 0xba, 0x7e, 0x1f, 0x2c, 0xd5, 0x6d, 0x74, 0x3f, 0x50, 0xfd, 0x59, 0x58, 0xbc, 0x54, 0xab, 0x1c, }; static const unsigned char xdh_wei25519_949_privkey[] = { 0x78, 0x9b, 0xc4, 0x04, 0x7a, 0xd8, 0x1b, 0x9b, 0x66, 0x56, 0xee, 0xf2, 0x98, 0xb7, 0x66, 0xe8, 0x76, 0x3a, 0x2f, 0x8e, 0xa6, 0x4e, 0x37, 0x4a, 0x60, 0x3d, 0xc1, 0xfd, 0xf2, 0xee, 0xe1, 0x46, }; static const unsigned char xdh_wei25519_949_sharedsecret[] = { 0x4b, 0x42, 0xfc, 0xf8, 0x4b, 0x51, 0xb2, 0xb8, 0x2f, 0x1f, 0x70, 0xb3, 0xcf, 0x49, 0xbd, 0x9d, 0xc6, 0xab, 0x26, 0x72, 0x92, 0x0a, 0x8d, 0xe3, 0x7e, 0x81, 0xba, 0x7e, 0x99, 0xac, 0xf7, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_949 = { .name = "xdh_wei25519_949", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_949_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_949_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_949_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_949_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 432 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 950 for XDH, tcId is 433 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_950_peerpubkey[] = { 0xa8, 0x34, 0x1d, 0xee, 0xcc, 0x0b, 0xe6, 0xdb, 0x11, 0x40, 0x1e, 0xf7, 0xf8, 0x84, 0xac, 0x3a, 0xde, 0x35, 0x65, 0x0c, 0xc2, 0x1f, 0x14, 0xb5, 0xcd, 0xb0, 0xa5, 0xcf, 0x0e, 0xe6, 0xb1, 0x5a, }; static const unsigned char xdh_wei25519_950_ourpubkey[] = { 0xaa, 0x27, 0x0a, 0x06, 0xb0, 0x82, 0x95, 0xc3, 0x0c, 0x08, 0x0d, 0x33, 0xb7, 0xe8, 0xe8, 0x50, 0x6f, 0xbd, 0xbb, 0x4b, 0xb8, 0xe5, 0x45, 0xe6, 0x4e, 0xae, 0xe0, 0xe5, 0x7c, 0x38, 0x27, 0x47, }; static const unsigned char xdh_wei25519_950_privkey[] = { 0x80, 0x1f, 0xfe, 0x4e, 0x0f, 0x6e, 0xeb, 0x8a, 0x50, 0xc8, 0xfe, 0x79, 0x66, 0x3f, 0xf5, 0x85, 0xf9, 0xd6, 0xae, 0xbc, 0xfb, 0xf4, 0xb7, 0xed, 0xc6, 0x76, 0xc6, 0x93, 0x90, 0x0c, 0xb1, 0x41, }; static const unsigned char xdh_wei25519_950_sharedsecret[] = { 0xe5, 0x5f, 0xc9, 0x31, 0x66, 0x9b, 0xd0, 0x2d, 0x1c, 0x64, 0x68, 0x9e, 0xda, 0x62, 0x64, 0x82, 0x12, 0xb1, 0x07, 0x8c, 0x43, 0xb5, 0xca, 0xf9, 0x7c, 0xf9, 0x76, 0x3f, 0xf8, 0x7a, 0x34, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_950 = { .name = "xdh_wei25519_950", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_950_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_950_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_950_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_950_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 433 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 951 for XDH, tcId is 434 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_951_peerpubkey[] = { 0x55, 0xa0, 0xe6, 0x63, 0x1a, 0x52, 0xf2, 0x9f, 0xb9, 0x0a, 0x17, 0x77, 0xcc, 0xbc, 0x69, 0xff, 0x94, 0x54, 0x74, 0x59, 0xd5, 0x41, 0xf7, 0x2e, 0x83, 0x16, 0xe4, 0xd6, 0x16, 0x53, 0x5a, 0x67, }; static const unsigned char xdh_wei25519_951_ourpubkey[] = { 0xec, 0x26, 0x22, 0x02, 0xc8, 0x45, 0xd2, 0x90, 0x91, 0xfa, 0x4d, 0x0a, 0xa4, 0x1c, 0xca, 0x4a, 0xfd, 0xc3, 0x64, 0x4d, 0xf0, 0x45, 0x46, 0x3d, 0xc9, 0xd5, 0xe8, 0xc8, 0x5c, 0x01, 0x9d, 0x5c, }; static const unsigned char xdh_wei25519_951_privkey[] = { 0xe0, 0x4e, 0x41, 0x23, 0x83, 0xa6, 0x3b, 0x33, 0x8b, 0x70, 0xe1, 0xbe, 0x5f, 0xd7, 0x59, 0x95, 0x35, 0x03, 0x21, 0xde, 0xe4, 0x28, 0xaa, 0x4f, 0x3b, 0xa6, 0x2a, 0x50, 0xa3, 0xb0, 0xde, 0x44, }; static const unsigned char xdh_wei25519_951_sharedsecret[] = { 0x87, 0xf7, 0x97, 0x6a, 0x17, 0xf3, 0xe0, 0x3a, 0x7f, 0x1e, 0xb7, 0x4e, 0x6d, 0xb9, 0x50, 0xb8, 0xc0, 0x99, 0x4f, 0x40, 0xb7, 0x90, 0x34, 0x95, 0x59, 0x9d, 0x22, 0x77, 0x25, 0x80, 0x9e, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_951 = { .name = "xdh_wei25519_951", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_951_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_951_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_951_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_951_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 434 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 952 for XDH, tcId is 435 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_952_peerpubkey[] = { 0x79, 0x76, 0xd5, 0x20, 0xf1, 0xa2, 0x51, 0x2d, 0x56, 0x4a, 0xf4, 0x1c, 0x68, 0x31, 0x3f, 0x53, 0x51, 0xb0, 0x15, 0x6d, 0x51, 0x18, 0xbe, 0x48, 0x17, 0xf1, 0x92, 0x79, 0x8a, 0xe9, 0x77, 0x7d, }; static const unsigned char xdh_wei25519_952_ourpubkey[] = { 0x4a, 0x82, 0x89, 0xf6, 0x6c, 0xc9, 0xdc, 0x36, 0x9b, 0xb1, 0x19, 0xae, 0xda, 0xbf, 0xb4, 0x9c, 0x7f, 0xad, 0x0a, 0x5c, 0xc8, 0xec, 0x5b, 0x25, 0xb5, 0x8f, 0x2b, 0xc8, 0xd5, 0xae, 0x07, 0x09, }; static const unsigned char xdh_wei25519_952_privkey[] = { 0x38, 0x2d, 0xbe, 0x9f, 0x10, 0x15, 0x8b, 0xfb, 0xb7, 0xd1, 0xd7, 0x9a, 0x35, 0xa7, 0x80, 0x92, 0x14, 0x89, 0x9a, 0x6b, 0x85, 0x72, 0xb3, 0x5b, 0x55, 0x87, 0x5d, 0x79, 0xbd, 0x2f, 0x16, 0x40, }; static const unsigned char xdh_wei25519_952_sharedsecret[] = { 0x3b, 0xb3, 0xe3, 0x01, 0x05, 0xa7, 0x19, 0x01, 0xb1, 0x15, 0x06, 0x5e, 0x39, 0xbd, 0xb3, 0xe0, 0x53, 0xd3, 0x87, 0xb3, 0x90, 0x27, 0xb1, 0x2c, 0x92, 0xcd, 0xf4, 0xc6, 0x38, 0xad, 0xf0, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_952 = { .name = "xdh_wei25519_952", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_952_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_952_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_952_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_952_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 435 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 953 for XDH, tcId is 436 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_953_peerpubkey[] = { 0xa2, 0x6a, 0x72, 0x2f, 0x7b, 0xa7, 0x1c, 0xcf, 0xc9, 0x6e, 0xd8, 0xe1, 0x08, 0xd7, 0xc9, 0xf8, 0x42, 0xd1, 0x7f, 0x92, 0x05, 0x1e, 0xe7, 0xd4, 0x29, 0xea, 0x7f, 0xa7, 0x90, 0x8a, 0xb9, 0x07, }; static const unsigned char xdh_wei25519_953_ourpubkey[] = { 0x5c, 0xaf, 0xc5, 0x10, 0x09, 0x1c, 0xfc, 0x1f, 0x2e, 0xc5, 0xad, 0x9f, 0x38, 0x36, 0xbf, 0xb4, 0x08, 0x09, 0x3e, 0x50, 0xef, 0x3d, 0x2b, 0x6b, 0xf1, 0x77, 0x64, 0x5f, 0x89, 0x48, 0xb9, 0x6f, }; static const unsigned char xdh_wei25519_953_privkey[] = { 0x60, 0xc9, 0xaf, 0x7f, 0x4d, 0x03, 0x13, 0x6a, 0x60, 0x34, 0xae, 0x52, 0xde, 0xad, 0xfd, 0x9d, 0x4f, 0x27, 0x4a, 0xd8, 0x12, 0x28, 0x12, 0xeb, 0x92, 0xa5, 0x31, 0x69, 0xc8, 0x35, 0x41, 0x41, }; static const unsigned char xdh_wei25519_953_sharedsecret[] = { 0xf5, 0xcb, 0x3a, 0x1b, 0x76, 0x18, 0x5a, 0x29, 0xa6, 0x36, 0x0b, 0x21, 0x42, 0xfe, 0xeb, 0xb1, 0x1f, 0x3d, 0x08, 0xf4, 0xfd, 0x8d, 0x73, 0xdf, 0x3a, 0x52, 0x28, 0x62, 0x4a, 0x52, 0x1c, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_953 = { .name = "xdh_wei25519_953", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_953_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_953_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_953_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_953_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 436 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 954 for XDH, tcId is 437 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_954_peerpubkey[] = { 0xca, 0x3a, 0x2d, 0x96, 0xf5, 0xdd, 0xa4, 0x82, 0xb0, 0x02, 0x32, 0x4c, 0xbb, 0xdc, 0xf1, 0xda, 0xcc, 0x98, 0x15, 0xea, 0xb7, 0x97, 0xc7, 0x15, 0x1c, 0x3a, 0x88, 0xc7, 0x5c, 0xde, 0xd6, 0x21, }; static const unsigned char xdh_wei25519_954_ourpubkey[] = { 0xb2, 0x60, 0x43, 0xc5, 0xdc, 0xec, 0xb2, 0x5a, 0x76, 0xb8, 0x8e, 0x1e, 0xbd, 0x7e, 0x6c, 0xe7, 0xc0, 0x3c, 0xa3, 0x0b, 0xa0, 0xa4, 0xae, 0x69, 0x2c, 0xb2, 0xe5, 0xac, 0xcb, 0xe4, 0x7d, 0x0a, }; static const unsigned char xdh_wei25519_954_privkey[] = { 0x28, 0x3f, 0xae, 0x8b, 0xd8, 0xb2, 0x94, 0xde, 0x28, 0x48, 0x05, 0x64, 0x49, 0x75, 0x19, 0x65, 0xab, 0xb5, 0xc7, 0xfa, 0x86, 0xba, 0x4c, 0x2c, 0x5c, 0xdc, 0x3b, 0xb5, 0x24, 0xda, 0xd1, 0x40, }; static const unsigned char xdh_wei25519_954_sharedsecret[] = { 0xb0, 0xb4, 0x78, 0x68, 0xe7, 0x04, 0x65, 0xee, 0x2d, 0xd7, 0x37, 0xf1, 0xba, 0x5a, 0x63, 0x99, 0xe0, 0x9c, 0xd8, 0x13, 0xd7, 0x2d, 0xa7, 0x58, 0x5a, 0xb4, 0x5c, 0x94, 0x6c, 0xc2, 0x8d, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_954 = { .name = "xdh_wei25519_954", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_954_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_954_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_954_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_954_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 437 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 955 for XDH, tcId is 438 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_955_peerpubkey[] = { 0xee, 0xbd, 0x85, 0x88, 0x50, 0xb5, 0x6f, 0xeb, 0xb7, 0x07, 0xf2, 0x7a, 0x7a, 0xad, 0x5f, 0xf5, 0xab, 0x4b, 0x0e, 0x0c, 0x73, 0xb9, 0xc8, 0x6e, 0xc4, 0xca, 0x0f, 0x42, 0xe7, 0xf3, 0x8e, 0x75, }; static const unsigned char xdh_wei25519_955_ourpubkey[] = { 0x02, 0xaa, 0xfc, 0xa9, 0x99, 0x75, 0x68, 0xdb, 0x21, 0x55, 0x45, 0x97, 0xc1, 0xed, 0x7f, 0xbf, 0x87, 0x44, 0x83, 0xbe, 0x99, 0x7d, 0x06, 0x26, 0x60, 0xbb, 0x2b, 0x0b, 0x2f, 0x53, 0xa3, 0x79, }; static const unsigned char xdh_wei25519_955_privkey[] = { 0x40, 0x15, 0x39, 0x70, 0x3c, 0xa4, 0x98, 0x0d, 0xb4, 0xba, 0x42, 0xc5, 0x9f, 0xc2, 0x9e, 0x83, 0xb4, 0x18, 0x9f, 0x2d, 0xde, 0xa5, 0x3b, 0xa5, 0x4c, 0xa9, 0x66, 0xc0, 0x68, 0x98, 0xa6, 0x40, }; static const unsigned char xdh_wei25519_955_sharedsecret[] = { 0x58, 0x1e, 0x4b, 0x12, 0xb0, 0xf3, 0x9a, 0x7c, 0xc4, 0x2d, 0xee, 0x45, 0x13, 0xec, 0xfd, 0xd2, 0x0b, 0x59, 0x5f, 0x90, 0x5f, 0x17, 0xad, 0x8c, 0x1f, 0xbf, 0x1b, 0x5c, 0xb2, 0x06, 0x8b, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_955 = { .name = "xdh_wei25519_955", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_955_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_955_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_955_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_955_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 438 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 956 for XDH, tcId is 439 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_956_peerpubkey[] = { 0xc8, 0x00, 0xbf, 0x79, 0x97, 0x83, 0x27, 0x5e, 0xb9, 0x33, 0x12, 0xb4, 0x3d, 0xc0, 0x32, 0xcc, 0xdf, 0xb0, 0x0a, 0x4b, 0x77, 0xc8, 0xb3, 0x77, 0x2c, 0xd2, 0xfe, 0xc8, 0xdb, 0x7e, 0x4a, 0x09, }; static const unsigned char xdh_wei25519_956_ourpubkey[] = { 0x87, 0xb5, 0xd9, 0x51, 0x89, 0x0a, 0x2e, 0x17, 0xf1, 0xe2, 0x34, 0x19, 0xec, 0xad, 0x06, 0x51, 0x1f, 0x5a, 0x6a, 0x2e, 0xeb, 0xc3, 0x22, 0x4f, 0xc2, 0x91, 0x2c, 0xcf, 0x4d, 0x73, 0x92, 0x27, }; static const unsigned char xdh_wei25519_956_privkey[] = { 0xc8, 0xeb, 0x05, 0x62, 0x86, 0xe0, 0x98, 0xe6, 0xb2, 0xc7, 0x9e, 0x42, 0xf0, 0x07, 0xeb, 0xc6, 0xab, 0x37, 0x05, 0x34, 0x6c, 0xdb, 0xda, 0xce, 0x94, 0x9b, 0x5d, 0xe1, 0xe8, 0xc3, 0x67, 0x43, }; static const unsigned char xdh_wei25519_956_sharedsecret[] = { 0x6b, 0xf2, 0x64, 0x53, 0x2f, 0xc7, 0x0a, 0x6a, 0x7e, 0x45, 0x9f, 0x45, 0x79, 0xec, 0xa6, 0xb8, 0x4f, 0x8f, 0x76, 0xab, 0x85, 0xc3, 0x26, 0x4b, 0x20, 0xbc, 0xa7, 0x25, 0xa6, 0xeb, 0x6c, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_956 = { .name = "xdh_wei25519_956", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_956_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_956_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_956_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_956_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 439 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 957 for XDH, tcId is 440 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_957_peerpubkey[] = { 0x7b, 0xbc, 0x50, 0x4e, 0x04, 0xd1, 0x34, 0xee, 0xdc, 0x13, 0xf0, 0x6d, 0xfd, 0xfc, 0x69, 0xc5, 0x18, 0x25, 0x7a, 0x3f, 0x37, 0x40, 0x40, 0xa4, 0x9a, 0x8d, 0x21, 0xda, 0xc1, 0x09, 0x11, 0x0c, }; static const unsigned char xdh_wei25519_957_ourpubkey[] = { 0x28, 0x08, 0xdd, 0x87, 0xfa, 0x03, 0xeb, 0xa1, 0x5a, 0x6a, 0x7b, 0x9f, 0x1a, 0xc5, 0x8c, 0x58, 0x3d, 0x1d, 0xcc, 0x19, 0x8b, 0x09, 0x6b, 0x4c, 0x93, 0x84, 0x77, 0x16, 0x8d, 0x78, 0x8c, 0x07, }; static const unsigned char xdh_wei25519_957_privkey[] = { 0x48, 0x78, 0x82, 0x95, 0x6c, 0x49, 0xc6, 0x9f, 0xd0, 0xe2, 0xd7, 0x27, 0x7a, 0x24, 0xfb, 0x1d, 0xbe, 0x4b, 0x03, 0x65, 0xb3, 0x6a, 0x13, 0xf6, 0x34, 0x40, 0x24, 0x8b, 0xca, 0x2f, 0xbb, 0x42, }; static const unsigned char xdh_wei25519_957_sharedsecret[] = { 0x69, 0x03, 0x05, 0xc9, 0xe1, 0x92, 0xcd, 0x8a, 0x51, 0x3f, 0x70, 0x5b, 0x3f, 0x10, 0x1e, 0xcd, 0xf3, 0xdb, 0x1e, 0xa1, 0x5a, 0x09, 0xc4, 0xa1, 0xbc, 0xe3, 0xa8, 0xcd, 0xc3, 0xa1, 0xa9, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_957 = { .name = "xdh_wei25519_957", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_957_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_957_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_957_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_957_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 440 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 958 for XDH, tcId is 441 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_958_peerpubkey[] = { 0x13, 0x25, 0x33, 0xdb, 0x62, 0xaf, 0xf4, 0xfa, 0x06, 0xe9, 0x63, 0x14, 0x38, 0x3b, 0xf5, 0x8e, 0xbd, 0xec, 0x51, 0x83, 0xa1, 0x9f, 0x2e, 0x4c, 0xb1, 0x75, 0x52, 0xae, 0x19, 0xa3, 0x36, 0x6e, }; static const unsigned char xdh_wei25519_958_ourpubkey[] = { 0xd8, 0x93, 0x22, 0x1b, 0xbf, 0x96, 0xee, 0x85, 0x4e, 0xb6, 0xd8, 0xaf, 0xb8, 0xac, 0x52, 0x91, 0x16, 0x7a, 0x8a, 0x02, 0x83, 0x9f, 0x97, 0x59, 0x41, 0xa0, 0x90, 0xa3, 0xc6, 0xe4, 0xab, 0x5a, }; static const unsigned char xdh_wei25519_958_privkey[] = { 0x98, 0x76, 0x01, 0x0f, 0x4d, 0x64, 0xc7, 0x7f, 0xfc, 0x4d, 0x7d, 0xcc, 0xd7, 0x2b, 0x9a, 0xc8, 0x20, 0x78, 0xde, 0xb8, 0x83, 0x60, 0x96, 0x50, 0xb8, 0xcf, 0xf8, 0xa6, 0x86, 0x71, 0x9d, 0x46, }; static const unsigned char xdh_wei25519_958_sharedsecret[] = { 0xc5, 0x85, 0x91, 0xb3, 0x3e, 0x49, 0x0e, 0x47, 0x66, 0xff, 0x7a, 0xdd, 0xff, 0x57, 0x0c, 0xe4, 0xe8, 0x9a, 0x98, 0x33, 0x80, 0x15, 0xa5, 0x5d, 0xf3, 0xd2, 0xf2, 0x32, 0xae, 0xa3, 0xfc, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_958 = { .name = "xdh_wei25519_958", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_958_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_958_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_958_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_958_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 441 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 959 for XDH, tcId is 442 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_959_peerpubkey[] = { 0xce, 0xb9, 0x0c, 0x56, 0x50, 0x8c, 0xf3, 0x30, 0xc7, 0xf2, 0x5b, 0xab, 0x42, 0xb0, 0x5b, 0x56, 0x12, 0xa8, 0x31, 0x06, 0x90, 0x10, 0x7a, 0xc6, 0x3a, 0x40, 0x4c, 0x0a, 0xde, 0x78, 0x80, 0x09, }; static const unsigned char xdh_wei25519_959_ourpubkey[] = { 0x42, 0xcd, 0x02, 0x62, 0x8f, 0x15, 0x02, 0x14, 0xe5, 0xc4, 0xbc, 0xfb, 0xd1, 0x5e, 0xde, 0x68, 0x6a, 0x23, 0x5c, 0xef, 0xab, 0xbe, 0x6f, 0x05, 0x9e, 0x9d, 0xcf, 0xeb, 0x4d, 0x88, 0x30, 0x12, }; static const unsigned char xdh_wei25519_959_privkey[] = { 0xa8, 0xa5, 0xd4, 0xf7, 0x89, 0x4a, 0x51, 0x95, 0x37, 0xba, 0xbf, 0xac, 0x73, 0x6d, 0xe3, 0x60, 0x54, 0xf5, 0x08, 0xda, 0xe4, 0x34, 0xb4, 0xfe, 0x63, 0xcd, 0x56, 0x33, 0x84, 0x6a, 0x26, 0x47, }; static const unsigned char xdh_wei25519_959_sharedsecret[] = { 0x3d, 0x14, 0x58, 0x51, 0xb6, 0xff, 0x2b, 0x92, 0xb5, 0x80, 0x7e, 0xd1, 0xdf, 0x21, 0xeb, 0x50, 0xc9, 0xf2, 0x4c, 0x44, 0x74, 0xd4, 0x72, 0x1d, 0xb3, 0xab, 0xb7, 0x35, 0x6d, 0xf7, 0xb7, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_959 = { .name = "xdh_wei25519_959", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_959_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_959_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_959_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_959_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 442 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 960 for XDH, tcId is 443 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_960_peerpubkey[] = { 0x66, 0xa0, 0x97, 0x67, 0xa0, 0xd8, 0x3b, 0xb1, 0x8d, 0x40, 0x4e, 0x12, 0x00, 0x37, 0x5a, 0x74, 0x5d, 0x1f, 0x1f, 0x74, 0x9d, 0x5d, 0xc6, 0xf8, 0x4a, 0x20, 0x5e, 0xfa, 0x6a, 0x11, 0xbc, 0x65, }; static const unsigned char xdh_wei25519_960_ourpubkey[] = { 0xef, 0x4c, 0x01, 0x02, 0xcd, 0x69, 0x30, 0xef, 0xfd, 0x89, 0x58, 0x65, 0xc5, 0xf2, 0xdf, 0x22, 0xb3, 0x0f, 0x60, 0x8c, 0xb1, 0x78, 0x29, 0x6d, 0x08, 0x8c, 0x06, 0x6a, 0xc8, 0xe8, 0x75, 0x5d, }; static const unsigned char xdh_wei25519_960_privkey[] = { 0xf8, 0x3e, 0x46, 0x47, 0xe8, 0x2c, 0x56, 0x0a, 0xa0, 0x82, 0xc5, 0x96, 0x41, 0xe1, 0x3b, 0xf3, 0x66, 0xbe, 0x8f, 0x24, 0xdc, 0x01, 0xd1, 0x48, 0x01, 0xe6, 0x78, 0x41, 0x16, 0x0b, 0xed, 0x47, }; static const unsigned char xdh_wei25519_960_sharedsecret[] = { 0x14, 0x01, 0x82, 0x9a, 0xac, 0x4e, 0x64, 0xbc, 0xfa, 0x29, 0x7a, 0x7e, 0xff, 0xc6, 0x04, 0x77, 0x09, 0x0d, 0x36, 0x27, 0xa6, 0x4a, 0x35, 0xb8, 0x72, 0xae, 0x05, 0x5d, 0x20, 0x91, 0x78, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_960 = { .name = "xdh_wei25519_960", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_960_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_960_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_960_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_960_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 443 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 961 for XDH, tcId is 444 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_961_peerpubkey[] = { 0x39, 0xd4, 0x31, 0x31, 0x63, 0x07, 0xc8, 0x57, 0x47, 0xbd, 0x2b, 0xcf, 0x4f, 0x9e, 0x0f, 0x88, 0x92, 0xee, 0x45, 0xdf, 0x15, 0xf7, 0x80, 0x6c, 0xe6, 0x51, 0x47, 0xd9, 0x7f, 0x50, 0x34, 0x78, }; static const unsigned char xdh_wei25519_961_ourpubkey[] = { 0x71, 0x51, 0x40, 0xb9, 0x4f, 0x64, 0xfe, 0x3c, 0x3c, 0x98, 0xd7, 0x82, 0xdc, 0x50, 0xf9, 0x5b, 0x77, 0x31, 0xff, 0x3b, 0x74, 0xae, 0xc3, 0x96, 0x6e, 0x04, 0x6b, 0xea, 0x60, 0xa9, 0x59, 0x16, }; static const unsigned char xdh_wei25519_961_privkey[] = { 0x58, 0xc6, 0xb9, 0x4b, 0xce, 0x9b, 0x15, 0xf6, 0x49, 0x46, 0xc2, 0xaa, 0x6a, 0x4e, 0x38, 0x3b, 0x0b, 0x2d, 0x43, 0x65, 0xb7, 0x99, 0x7e, 0xb2, 0x31, 0x0a, 0xc4, 0xee, 0xf1, 0x80, 0x31, 0x45, }; static const unsigned char xdh_wei25519_961_sharedsecret[] = { 0xa0, 0xeb, 0xe6, 0x90, 0x8c, 0x54, 0x72, 0xf9, 0x37, 0x76, 0x9b, 0x9a, 0xeb, 0x31, 0x32, 0x24, 0x43, 0x7f, 0xc5, 0xd7, 0x3f, 0x4f, 0x86, 0x6f, 0xe7, 0xef, 0x41, 0xf3, 0x0e, 0x35, 0x9e, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_961 = { .name = "xdh_wei25519_961", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_961_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_961_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_961_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_961_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 444 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 962 for XDH, tcId is 445 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_962_peerpubkey[] = { 0x84, 0xc9, 0x2d, 0x8e, 0xcf, 0x3d, 0x0c, 0xb2, 0x2d, 0xde, 0x7d, 0x72, 0x1f, 0x04, 0x14, 0x0c, 0x2d, 0x9c, 0x17, 0x9c, 0xc8, 0x13, 0xce, 0x6c, 0xf8, 0xdb, 0x2d, 0xce, 0x61, 0x68, 0x88, 0x0d, }; static const unsigned char xdh_wei25519_962_ourpubkey[] = { 0xa4, 0x80, 0x85, 0x06, 0x0a, 0x2b, 0x19, 0x77, 0x6f, 0x6e, 0x09, 0x15, 0x5c, 0x15, 0x57, 0x5c, 0x56, 0x64, 0x0f, 0x25, 0x65, 0x07, 0xcf, 0xb9, 0xea, 0xff, 0xa7, 0xf8, 0xec, 0xc6, 0xc5, 0x70, }; static const unsigned char xdh_wei25519_962_privkey[] = { 0x78, 0x6a, 0x97, 0x20, 0x7a, 0xdb, 0xd4, 0xb0, 0xd6, 0xbf, 0xc9, 0xf4, 0x9b, 0x18, 0x66, 0x0a, 0xd3, 0x60, 0x6c, 0x12, 0xe3, 0x25, 0x04, 0x4b, 0x86, 0x90, 0xb4, 0xfa, 0x07, 0x87, 0x46, 0x41, }; static const unsigned char xdh_wei25519_962_sharedsecret[] = { 0x07, 0x53, 0x8f, 0x1b, 0x65, 0x83, 0x04, 0x1c, 0x49, 0x49, 0xfa, 0xfa, 0xe3, 0x34, 0x9d, 0x62, 0xf9, 0xdd, 0x30, 0x2d, 0x3d, 0x86, 0x85, 0x7a, 0xf0, 0xde, 0xdc, 0x0d, 0x5a, 0xd6, 0x74, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_962 = { .name = "xdh_wei25519_962", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_962_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_962_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_962_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_962_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 445 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 963 for XDH, tcId is 446 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_963_peerpubkey[] = { 0xa9, 0xce, 0xdb, 0x9e, 0x94, 0x2a, 0x47, 0x22, 0x1e, 0x42, 0x96, 0x95, 0x32, 0x20, 0xd1, 0x00, 0x07, 0xdb, 0x32, 0x7d, 0x2a, 0xcb, 0x68, 0xda, 0x6e, 0xf3, 0xa4, 0xf8, 0x77, 0xb8, 0xef, 0x1e, }; static const unsigned char xdh_wei25519_963_ourpubkey[] = { 0xf1, 0x7e, 0x1a, 0x8e, 0xfc, 0x16, 0x77, 0xe1, 0x42, 0x9d, 0x5b, 0x67, 0x18, 0x04, 0xfc, 0x8d, 0xe2, 0x1b, 0xdc, 0xd4, 0xeb, 0x76, 0xd9, 0xfb, 0x4f, 0x7c, 0x55, 0xfe, 0xdb, 0xf2, 0x59, 0x7b, }; static const unsigned char xdh_wei25519_963_privkey[] = { 0x28, 0x23, 0x10, 0x21, 0x0e, 0x57, 0x5a, 0x59, 0x39, 0x3c, 0xf1, 0x9b, 0xbe, 0x6e, 0x24, 0x75, 0x2d, 0xc2, 0x47, 0x70, 0x6f, 0x1e, 0x00, 0x31, 0xe5, 0xd3, 0x9b, 0x2d, 0xe4, 0xff, 0xf7, 0x45, }; static const unsigned char xdh_wei25519_963_sharedsecret[] = { 0x12, 0x23, 0x50, 0x5f, 0xbb, 0x53, 0x4c, 0x1b, 0xc6, 0x10, 0x8e, 0x6b, 0x98, 0xb4, 0xf0, 0xaf, 0x29, 0xe1, 0x11, 0x58, 0xc0, 0x2d, 0x33, 0x3d, 0x65, 0x59, 0xbe, 0xec, 0xd6, 0xd3, 0xe5, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_963 = { .name = "xdh_wei25519_963", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_963_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_963_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_963_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_963_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 446 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 964 for XDH, tcId is 447 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_964_peerpubkey[] = { 0x64, 0xe1, 0xc0, 0xc5, 0xf5, 0x94, 0x05, 0xbb, 0xc6, 0xc7, 0xdb, 0x41, 0xa3, 0x48, 0x5c, 0xc9, 0xf9, 0x1c, 0x18, 0x3b, 0x0f, 0x2b, 0x7e, 0x18, 0x94, 0xa7, 0xab, 0xd8, 0xfb, 0xbe, 0xeb, 0x23, }; static const unsigned char xdh_wei25519_964_ourpubkey[] = { 0x24, 0x54, 0xc4, 0x8b, 0x5c, 0xb3, 0xbd, 0x45, 0x00, 0x8a, 0x61, 0x61, 0xb2, 0xb0, 0x7d, 0xb4, 0x52, 0x8b, 0x7c, 0x78, 0xd6, 0x8b, 0xe4, 0x8c, 0xfd, 0x76, 0x35, 0xfd, 0x6e, 0xc7, 0x6a, 0x27, }; static const unsigned char xdh_wei25519_964_privkey[] = { 0xc8, 0xbf, 0x2f, 0xd4, 0xc4, 0x0d, 0x00, 0xf1, 0x46, 0x5a, 0xad, 0xa6, 0x82, 0xb1, 0x2f, 0xa9, 0x2d, 0xec, 0x10, 0x34, 0x34, 0x84, 0xab, 0x62, 0xb8, 0x87, 0x13, 0x37, 0xde, 0x1d, 0x33, 0x45, }; static const unsigned char xdh_wei25519_964_sharedsecret[] = { 0xee, 0x03, 0x18, 0x68, 0x16, 0x5f, 0x45, 0x6f, 0x75, 0x90, 0x7b, 0xf3, 0x97, 0x42, 0xb8, 0x20, 0xe0, 0xf8, 0xe6, 0xdf, 0x9f, 0x97, 0x68, 0xd7, 0x57, 0xd4, 0x08, 0xe1, 0xcc, 0x92, 0xff, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_964 = { .name = "xdh_wei25519_964", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_964_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_964_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_964_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_964_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 447 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 965 for XDH, tcId is 448 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_965_peerpubkey[] = { 0xa6, 0x8d, 0x2f, 0x55, 0xe6, 0x0e, 0xac, 0x79, 0x83, 0x92, 0x63, 0x10, 0xf4, 0xfa, 0xe1, 0x3f, 0x95, 0xb2, 0xbb, 0xf1, 0x40, 0xbe, 0x5e, 0xa9, 0x17, 0x51, 0x88, 0x4d, 0x90, 0x0a, 0xb4, 0x4d, }; static const unsigned char xdh_wei25519_965_ourpubkey[] = { 0x85, 0xe3, 0x77, 0x3b, 0xf5, 0xbc, 0x57, 0x24, 0xef, 0x20, 0xe2, 0x61, 0xe2, 0x9f, 0xad, 0x6b, 0xce, 0x51, 0x02, 0x43, 0x74, 0xaf, 0xeb, 0xa4, 0xd5, 0xfa, 0x2c, 0xa0, 0x3a, 0x71, 0xa6, 0x27, }; static const unsigned char xdh_wei25519_965_privkey[] = { 0xc0, 0x6a, 0x4a, 0x4b, 0x70, 0xf6, 0x13, 0x13, 0x6f, 0x18, 0xc0, 0xf8, 0x8e, 0x22, 0x45, 0x08, 0x6c, 0x3d, 0x1a, 0x52, 0x71, 0x72, 0x10, 0xa2, 0x1a, 0xc9, 0xd6, 0x36, 0x82, 0xf2, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_965_sharedsecret[] = { 0xc9, 0x54, 0xfa, 0x7b, 0x04, 0x2c, 0x32, 0x94, 0x3e, 0x03, 0x19, 0x1e, 0x36, 0x7d, 0x54, 0xbe, 0x00, 0x85, 0xfa, 0x89, 0x50, 0xef, 0x2b, 0xec, 0x99, 0x62, 0x0d, 0xf7, 0x9e, 0xcb, 0xea, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_965 = { .name = "xdh_wei25519_965", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_965_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_965_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_965_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_965_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 448 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 966 for XDH, tcId is 449 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_966_peerpubkey[] = { 0x6d, 0x3c, 0xd6, 0x23, 0xf2, 0x6a, 0x74, 0x53, 0xfa, 0x05, 0xa0, 0x1a, 0xe7, 0x58, 0xba, 0x84, 0xd3, 0xc5, 0x8d, 0x93, 0xd6, 0x0c, 0xe3, 0x27, 0x35, 0xa1, 0x5e, 0x0d, 0x05, 0x3d, 0x5b, 0x12, }; static const unsigned char xdh_wei25519_966_ourpubkey[] = { 0x97, 0x28, 0xa1, 0x74, 0xda, 0x1b, 0x7f, 0x46, 0xda, 0x81, 0xb7, 0x3f, 0x4c, 0x77, 0x7f, 0x42, 0x51, 0x7b, 0x6a, 0x8b, 0x34, 0x4a, 0xe1, 0x7b, 0x54, 0xf2, 0x92, 0x08, 0x24, 0xaa, 0xae, 0x06, }; static const unsigned char xdh_wei25519_966_privkey[] = { 0x20, 0x59, 0x6e, 0x1d, 0xc5, 0x65, 0x96, 0x82, 0x3d, 0x37, 0x69, 0x8d, 0xfa, 0x69, 0x9c, 0x79, 0x87, 0x4a, 0xae, 0xfd, 0xe7, 0x97, 0xf8, 0x63, 0xef, 0x92, 0x13, 0x59, 0x80, 0xfb, 0x20, 0x43, }; static const unsigned char xdh_wei25519_966_sharedsecret[] = { 0x7c, 0x32, 0x19, 0xb3, 0xc1, 0xfa, 0xe1, 0xf9, 0x55, 0x90, 0xac, 0x84, 0x3e, 0xfd, 0x20, 0x84, 0xa1, 0xf4, 0xbd, 0x3e, 0xfa, 0x2f, 0x59, 0x2f, 0x02, 0x20, 0x32, 0xdb, 0x64, 0xeb, 0xcd, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_966 = { .name = "xdh_wei25519_966", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_966_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_966_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_966_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_966_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 449 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 967 for XDH, tcId is 450 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_967_peerpubkey[] = { 0x8f, 0x19, 0x55, 0x47, 0x34, 0x6b, 0x3d, 0x53, 0xb7, 0xea, 0x4f, 0x74, 0x2b, 0x22, 0xf1, 0xef, 0x7b, 0x3c, 0xc0, 0x1a, 0x7d, 0x3d, 0xcd, 0x19, 0xaa, 0x7c, 0x5b, 0x03, 0xf3, 0x1b, 0xd2, 0x14, }; static const unsigned char xdh_wei25519_967_ourpubkey[] = { 0x67, 0xb6, 0xc7, 0x83, 0x20, 0xd2, 0x68, 0x03, 0x23, 0xcb, 0xee, 0x79, 0xac, 0xf3, 0xb6, 0xb2, 0xda, 0x2f, 0x65, 0x7f, 0xce, 0x69, 0x8e, 0xdd, 0x55, 0x14, 0x69, 0xf3, 0xdf, 0x15, 0x6b, 0x6b, }; static const unsigned char xdh_wei25519_967_privkey[] = { 0x38, 0x14, 0x15, 0x18, 0xe8, 0xe5, 0xef, 0xa1, 0xd0, 0x31, 0xc6, 0xc4, 0xd9, 0x54, 0x80, 0x23, 0x9f, 0x6c, 0x30, 0xb8, 0xcc, 0xd8, 0xc7, 0x51, 0xa9, 0xe0, 0x4b, 0xd3, 0xae, 0xc1, 0x73, 0x42, }; static const unsigned char xdh_wei25519_967_sharedsecret[] = { 0xa3, 0x1f, 0x6b, 0x24, 0x9d, 0x64, 0xa8, 0x7c, 0x4a, 0xed, 0x32, 0x9c, 0x6c, 0x05, 0xc3, 0xf2, 0x24, 0x0b, 0x3c, 0xa9, 0x38, 0xcc, 0xdc, 0x92, 0x0b, 0xa8, 0x01, 0x6c, 0x1a, 0xea, 0xeb, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_967 = { .name = "xdh_wei25519_967", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_967_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_967_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_967_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_967_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 450 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 968 for XDH, tcId is 451 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_968_peerpubkey[] = { 0xff, 0xc4, 0xfe, 0x2c, 0x21, 0x27, 0xa3, 0x09, 0xc7, 0x39, 0x56, 0x56, 0x51, 0xe9, 0x81, 0x2f, 0x83, 0x4a, 0x86, 0xdb, 0xad, 0xbb, 0x78, 0x77, 0x69, 0x77, 0xf7, 0x86, 0xec, 0xdb, 0x02, 0x17, }; static const unsigned char xdh_wei25519_968_ourpubkey[] = { 0xba, 0x8a, 0x9a, 0xa3, 0xf5, 0xdb, 0xea, 0x17, 0xa9, 0xdf, 0x7d, 0x35, 0x4b, 0xaa, 0xbd, 0x42, 0x59, 0xa0, 0x13, 0x37, 0x54, 0xec, 0x3a, 0x15, 0xb9, 0xa2, 0xe4, 0x71, 0xe1, 0x8b, 0x0c, 0x1a, }; static const unsigned char xdh_wei25519_968_privkey[] = { 0x20, 0x71, 0x47, 0xf2, 0xb6, 0x8f, 0xef, 0x1e, 0xfc, 0x10, 0xa0, 0x4f, 0x98, 0x8f, 0x0e, 0xb1, 0x8b, 0x27, 0x3b, 0x0b, 0x5e, 0xd1, 0x7a, 0xa7, 0xaf, 0x32, 0xc9, 0x04, 0x80, 0xe1, 0x9b, 0x43, }; static const unsigned char xdh_wei25519_968_sharedsecret[] = { 0x4c, 0xff, 0x9f, 0x53, 0xce, 0x82, 0x06, 0x48, 0x82, 0x32, 0x9a, 0x18, 0xea, 0x4e, 0x4d, 0x0b, 0xc6, 0xd8, 0x0a, 0x63, 0x1c, 0x87, 0xc9, 0xe6, 0xfd, 0xc9, 0x18, 0xf9, 0xc1, 0xbd, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_968 = { .name = "xdh_wei25519_968", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_968_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_968_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_968_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_968_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 451 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 969 for XDH, tcId is 452 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_969_peerpubkey[] = { 0x84, 0x75, 0xba, 0xbe, 0xea, 0xb9, 0x98, 0x0d, 0x42, 0x6a, 0xbd, 0x53, 0x23, 0xdf, 0xb3, 0x35, 0xb2, 0x19, 0xe1, 0x29, 0xbd, 0xda, 0xe4, 0xd6, 0xce, 0xbc, 0xda, 0x50, 0x75, 0x4a, 0x68, 0x25, }; static const unsigned char xdh_wei25519_969_ourpubkey[] = { 0x6c, 0x76, 0x51, 0x08, 0xb6, 0x9a, 0x31, 0xb6, 0xbb, 0x20, 0x24, 0xd5, 0xe7, 0x4f, 0x43, 0xd3, 0xa3, 0xdb, 0x19, 0x15, 0xdc, 0x2c, 0x47, 0x12, 0xa0, 0x9d, 0xdd, 0xd2, 0x58, 0xfb, 0x16, 0x18, }; static const unsigned char xdh_wei25519_969_privkey[] = { 0x48, 0x80, 0x84, 0x53, 0x7b, 0x84, 0x0f, 0x9c, 0x93, 0xca, 0x57, 0xb3, 0xee, 0x80, 0x49, 0x14, 0x18, 0xd4, 0x42, 0x21, 0x11, 0x3e, 0x03, 0xf5, 0x63, 0x55, 0x30, 0x26, 0x04, 0xd0, 0x35, 0x47, }; static const unsigned char xdh_wei25519_969_sharedsecret[] = { 0x24, 0x8d, 0x3d, 0x1a, 0x49, 0xb7, 0xd1, 0x73, 0xeb, 0x08, 0x0a, 0xb7, 0x16, 0xac, 0x8f, 0xde, 0x6b, 0xd1, 0xc3, 0xed, 0x8e, 0x7f, 0xd5, 0xb4, 0x48, 0xaf, 0x21, 0xbc, 0xdc, 0x2c, 0x16, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_969 = { .name = "xdh_wei25519_969", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_969_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_969_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_969_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_969_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 452 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 970 for XDH, tcId is 453 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_970_peerpubkey[] = { 0x81, 0xf9, 0x0a, 0x2f, 0x66, 0x33, 0xd3, 0x0c, 0x2b, 0x72, 0xa2, 0x57, 0x95, 0xd2, 0xa4, 0x94, 0x63, 0xa8, 0x0b, 0x6b, 0x0e, 0xdc, 0x5a, 0xa6, 0x8b, 0xae, 0x4b, 0xf7, 0x38, 0x18, 0x55, 0x39, }; static const unsigned char xdh_wei25519_970_ourpubkey[] = { 0xdd, 0xd3, 0xaa, 0x2d, 0x43, 0x37, 0xd3, 0x0a, 0xc8, 0x4e, 0x13, 0x7a, 0x54, 0x2b, 0x2c, 0x2f, 0xe9, 0x95, 0xdb, 0xc0, 0xd5, 0x9a, 0x6f, 0xc7, 0xed, 0x1e, 0x4d, 0x92, 0x75, 0x63, 0x16, 0x3d, }; static const unsigned char xdh_wei25519_970_privkey[] = { 0x28, 0xcf, 0xc1, 0xd0, 0x3f, 0x5c, 0x74, 0x28, 0xff, 0x3e, 0x20, 0xb1, 0x37, 0x26, 0x8b, 0x33, 0xcc, 0xc7, 0x4d, 0xb0, 0x35, 0x82, 0xd2, 0x12, 0x7c, 0x56, 0x6d, 0xf4, 0xac, 0x99, 0xf4, 0x41, }; static const unsigned char xdh_wei25519_970_sharedsecret[] = { 0x66, 0xc6, 0xe7, 0x0c, 0xf6, 0x30, 0xbe, 0x90, 0xa2, 0xc8, 0x8f, 0xcd, 0xe7, 0xf5, 0x8c, 0xff, 0x38, 0x68, 0x66, 0x0f, 0xa9, 0x64, 0x06, 0xe8, 0xdf, 0x4a, 0xc6, 0x77, 0xdb, 0xd8, 0x5f, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_970 = { .name = "xdh_wei25519_970", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_970_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_970_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_970_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_970_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 453 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 971 for XDH, tcId is 454 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_971_peerpubkey[] = { 0x41, 0x62, 0x6e, 0x33, 0xb3, 0xc8, 0xf4, 0x8b, 0xd1, 0x9e, 0x49, 0xde, 0xd3, 0x07, 0xf2, 0xb6, 0x3b, 0xde, 0x70, 0x5c, 0x4f, 0x3c, 0xdf, 0x9d, 0x4f, 0x92, 0xbf, 0x37, 0xc4, 0x8c, 0xba, 0x42, }; static const unsigned char xdh_wei25519_971_ourpubkey[] = { 0x0b, 0x1f, 0x15, 0xa9, 0xd3, 0xfc, 0xa6, 0x7a, 0x18, 0x84, 0x48, 0x46, 0x66, 0x74, 0xb8, 0xd6, 0x20, 0xfd, 0xca, 0x9c, 0x9e, 0xee, 0x2c, 0x9e, 0xda, 0x6d, 0xc7, 0x8f, 0x20, 0xdf, 0x2a, 0x6f, }; static const unsigned char xdh_wei25519_971_privkey[] = { 0xc8, 0xe3, 0x7d, 0x10, 0xf3, 0xd0, 0x3d, 0xb3, 0xf4, 0x3e, 0x46, 0x7b, 0xdd, 0xf9, 0x8f, 0x59, 0x5c, 0xb5, 0x29, 0xad, 0x25, 0x3c, 0x20, 0xd4, 0x91, 0x28, 0x2d, 0x14, 0x00, 0xb9, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_971_sharedsecret[] = { 0x06, 0x28, 0x3f, 0xcf, 0x69, 0xdc, 0x83, 0xe9, 0x9d, 0x92, 0xe5, 0x33, 0x6f, 0x49, 0x9a, 0x1d, 0x8f, 0xa7, 0x5e, 0xd2, 0xc8, 0x19, 0xb5, 0xae, 0x6e, 0xa8, 0x09, 0x44, 0x54, 0x32, 0x4b, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_971 = { .name = "xdh_wei25519_971", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_971_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_971_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_971_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_971_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 454 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 972 for XDH, tcId is 455 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_972_peerpubkey[] = { 0xeb, 0xb3, 0x2f, 0x78, 0x1c, 0x0e, 0x89, 0xb2, 0x52, 0xe6, 0x11, 0xf9, 0xd8, 0xf7, 0x9f, 0x85, 0x67, 0x87, 0x4c, 0x96, 0x65, 0x98, 0x31, 0x4b, 0x2f, 0x16, 0xaa, 0x44, 0xcf, 0xc0, 0x78, 0x43, }; static const unsigned char xdh_wei25519_972_ourpubkey[] = { 0x47, 0x15, 0x44, 0x61, 0xa2, 0xa3, 0x05, 0xc0, 0xda, 0xc9, 0x8d, 0x99, 0x8b, 0x3d, 0xa3, 0x60, 0x23, 0x23, 0x44, 0x85, 0x12, 0x87, 0x08, 0xce, 0x6d, 0xdf, 0x45, 0xec, 0x42, 0x90, 0xaf, 0x5d, }; static const unsigned char xdh_wei25519_972_privkey[] = { 0x00, 0x23, 0x7e, 0x91, 0x40, 0x6a, 0x7b, 0x4d, 0xb6, 0x1e, 0x78, 0x0c, 0x59, 0x76, 0xfb, 0xb9, 0x26, 0xcd, 0xac, 0xe2, 0xfb, 0xdf, 0xdb, 0xcf, 0xce, 0x65, 0xe6, 0xdb, 0xe7, 0x78, 0x2a, 0x42, }; static const unsigned char xdh_wei25519_972_sharedsecret[] = { 0x7d, 0x2a, 0xff, 0xb4, 0x33, 0x55, 0xf5, 0xdb, 0x12, 0x94, 0xda, 0xff, 0x55, 0xf5, 0x9b, 0x1f, 0x17, 0xe7, 0xd2, 0x5b, 0xca, 0x20, 0x74, 0x6f, 0x12, 0x48, 0x4d, 0x78, 0xe5, 0x01, 0x55, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_972 = { .name = "xdh_wei25519_972", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_972_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_972_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_972_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_972_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 455 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 973 for XDH, tcId is 456 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_973_peerpubkey[] = { 0xfa, 0x75, 0xe6, 0xf0, 0x8c, 0xa8, 0x15, 0xb4, 0xe4, 0x2a, 0xf2, 0x4a, 0x8e, 0x05, 0x7c, 0x9e, 0x00, 0xe8, 0x28, 0xe3, 0x3d, 0x12, 0xc0, 0xe9, 0x4d, 0x10, 0x12, 0xa7, 0x58, 0x33, 0x67, 0x44, }; static const unsigned char xdh_wei25519_973_ourpubkey[] = { 0x32, 0xe7, 0x39, 0x72, 0x62, 0x71, 0x62, 0xb2, 0x82, 0xf5, 0x8e, 0x5e, 0xaf, 0x61, 0xb5, 0x35, 0x1d, 0x58, 0x50, 0x05, 0x48, 0x8f, 0x49, 0x79, 0x82, 0xaa, 0x3c, 0x00, 0xaa, 0x31, 0x19, 0x43, }; static const unsigned char xdh_wei25519_973_privkey[] = { 0x48, 0x9c, 0x41, 0x84, 0xa2, 0x3a, 0x8f, 0x5e, 0xec, 0x68, 0xa3, 0x1b, 0x41, 0xaa, 0x2c, 0x03, 0x92, 0xcd, 0x6f, 0xb1, 0x23, 0xf1, 0x0a, 0xcd, 0xb4, 0xde, 0x75, 0x29, 0x2b, 0x4b, 0x9a, 0x43, }; static const unsigned char xdh_wei25519_973_sharedsecret[] = { 0xef, 0x8e, 0x78, 0xca, 0xb0, 0x91, 0xd6, 0x67, 0x88, 0x84, 0x89, 0xfd, 0x3a, 0x2e, 0xc9, 0x3f, 0xb6, 0x33, 0x42, 0x7d, 0x02, 0xeb, 0x77, 0xb3, 0x28, 0xd5, 0x56, 0xf2, 0xb2, 0xb0, 0xe2, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_973 = { .name = "xdh_wei25519_973", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_973_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_973_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_973_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_973_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 456 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 974 for XDH, tcId is 457 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_974_peerpubkey[] = { 0x4d, 0x96, 0x32, 0x0c, 0xdb, 0x0c, 0xa5, 0x26, 0x55, 0xe9, 0x11, 0x18, 0xc3, 0x3f, 0x93, 0xaf, 0xe4, 0xae, 0x69, 0xe9, 0xe5, 0x13, 0xff, 0x45, 0x06, 0x75, 0x0b, 0x8e, 0xa7, 0x84, 0xce, 0x46, }; static const unsigned char xdh_wei25519_974_ourpubkey[] = { 0x89, 0x4f, 0x35, 0x24, 0x62, 0xce, 0xf4, 0x48, 0xbe, 0xb5, 0x7d, 0x64, 0x77, 0x69, 0x73, 0xde, 0x39, 0xc5, 0xcb, 0x37, 0x3f, 0xf7, 0x9e, 0xc4, 0xfd, 0x39, 0x86, 0x81, 0x3f, 0x27, 0x48, 0x04, }; static const unsigned char xdh_wei25519_974_privkey[] = { 0xc0, 0x59, 0x57, 0xfb, 0xc3, 0xa0, 0xe2, 0xc2, 0x2a, 0x2a, 0xef, 0x62, 0x76, 0x51, 0xca, 0x1e, 0x99, 0x30, 0x7b, 0x82, 0xa0, 0xc6, 0x17, 0x0f, 0x79, 0x50, 0xa3, 0x34, 0xf3, 0x00, 0x49, 0x41, }; static const unsigned char xdh_wei25519_974_sharedsecret[] = { 0xc8, 0xd8, 0x5b, 0xfa, 0x74, 0xb4, 0xb2, 0x64, 0x61, 0x29, 0x7b, 0x35, 0x0c, 0x97, 0x51, 0x83, 0xfe, 0xa9, 0xd3, 0x3b, 0xa2, 0x9c, 0x3a, 0x49, 0x34, 0x50, 0x9c, 0x2e, 0xcd, 0xa5, 0x8a, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_974 = { .name = "xdh_wei25519_974", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_974_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_974_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_974_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_974_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 457 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 975 for XDH, tcId is 458 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_975_peerpubkey[] = { 0xc0, 0xef, 0x1b, 0x7c, 0x20, 0x23, 0x7d, 0xb3, 0x70, 0x50, 0x1f, 0x24, 0x27, 0x4e, 0x4e, 0xba, 0x91, 0x99, 0x8a, 0xe4, 0x54, 0x5f, 0x93, 0x70, 0x07, 0xe1, 0xc4, 0xa2, 0xea, 0xb6, 0x33, 0x65, }; static const unsigned char xdh_wei25519_975_ourpubkey[] = { 0x14, 0x11, 0x93, 0xec, 0xac, 0xae, 0x03, 0x6e, 0x3d, 0x3d, 0x02, 0xf0, 0xb9, 0x01, 0x0b, 0x06, 0x4b, 0xce, 0x9b, 0xb3, 0x05, 0xd8, 0x41, 0xf1, 0x0a, 0x4b, 0xed, 0xfb, 0x89, 0x50, 0x6c, 0x31, }; static const unsigned char xdh_wei25519_975_privkey[] = { 0x60, 0x11, 0x1c, 0x66, 0x29, 0xf7, 0x36, 0x35, 0x98, 0x5b, 0xe9, 0x64, 0xb8, 0x45, 0xf8, 0x7a, 0x88, 0xae, 0x56, 0x52, 0xd4, 0x5b, 0xb1, 0x45, 0x1c, 0xe8, 0xcf, 0xd2, 0xea, 0x45, 0xfe, 0x41, }; static const unsigned char xdh_wei25519_975_sharedsecret[] = { 0x22, 0x55, 0x7e, 0x0d, 0x87, 0x41, 0xed, 0x2a, 0x63, 0xaf, 0xd5, 0xe3, 0x13, 0xaa, 0x15, 0x79, 0xfc, 0x0c, 0x88, 0xc7, 0x77, 0x2e, 0x23, 0xa6, 0x76, 0xc9, 0x4b, 0x60, 0xc8, 0x9d, 0xf5, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_975 = { .name = "xdh_wei25519_975", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_975_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_975_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_975_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_975_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 458 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 976 for XDH, tcId is 459 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_976_peerpubkey[] = { 0xd5, 0x34, 0xd8, 0xff, 0x4d, 0x56, 0xa7, 0x3e, 0xf7, 0x61, 0x5e, 0x94, 0x52, 0x3b, 0x17, 0xe3, 0x5e, 0xdb, 0x3d, 0x0f, 0xb8, 0x7e, 0x98, 0xc6, 0x85, 0x36, 0xf6, 0x3f, 0x11, 0x4a, 0x8d, 0x6c, }; static const unsigned char xdh_wei25519_976_ourpubkey[] = { 0xac, 0x96, 0x5f, 0xbc, 0x8c, 0xdc, 0xdd, 0x95, 0x33, 0x72, 0x71, 0x69, 0x93, 0xa5, 0x22, 0xa6, 0x3d, 0x0a, 0x8f, 0x0f, 0xae, 0x25, 0xd1, 0x89, 0x78, 0xa5, 0x90, 0xd2, 0xa0, 0xf4, 0x67, 0x3c, }; static const unsigned char xdh_wei25519_976_privkey[] = { 0x58, 0x78, 0x58, 0x89, 0xa2, 0x16, 0xd1, 0x54, 0x56, 0x58, 0x2d, 0x4e, 0x1e, 0x3d, 0xe9, 0xe9, 0xca, 0x4a, 0x43, 0x29, 0x54, 0x41, 0x6d, 0x81, 0xca, 0xf5, 0x2b, 0x2b, 0x43, 0x4c, 0x17, 0x46, }; static const unsigned char xdh_wei25519_976_sharedsecret[] = { 0x54, 0xd7, 0xfc, 0x17, 0xba, 0xd0, 0x02, 0x96, 0xba, 0x50, 0xb0, 0xf3, 0xd5, 0xbf, 0x8f, 0xb8, 0x3f, 0x82, 0xd5, 0x71, 0x95, 0x2a, 0x5f, 0xdb, 0x5a, 0x49, 0x41, 0x20, 0xcc, 0x61, 0x44, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_976 = { .name = "xdh_wei25519_976", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_976_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_976_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_976_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_976_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 459 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 977 for XDH, tcId is 460 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_977_peerpubkey[] = { 0x73, 0x3a, 0x71, 0x1b, 0xa0, 0x1b, 0x6e, 0x9b, 0x64, 0xa0, 0xbe, 0x4c, 0xdc, 0xa8, 0xc7, 0xcf, 0x3c, 0x66, 0xdf, 0x24, 0x35, 0xd5, 0x24, 0x8f, 0xb4, 0x41, 0x3f, 0xec, 0x6e, 0xe0, 0x3f, 0x70, }; static const unsigned char xdh_wei25519_977_ourpubkey[] = { 0x7e, 0x0b, 0xd3, 0x60, 0xc2, 0x95, 0xa0, 0xd1, 0xe1, 0x24, 0x31, 0x76, 0x9c, 0xe9, 0x91, 0x1d, 0x8e, 0xb2, 0xa8, 0xc2, 0x4f, 0xe0, 0x01, 0x8b, 0x08, 0xad, 0x77, 0x66, 0x14, 0x5a, 0x7f, 0x4d, }; static const unsigned char xdh_wei25519_977_privkey[] = { 0x60, 0xbe, 0xf3, 0x8a, 0x38, 0x90, 0xec, 0x1e, 0xd0, 0x5c, 0x29, 0x9f, 0xce, 0xb7, 0x7d, 0xb5, 0xea, 0xd4, 0xb8, 0x8d, 0x9e, 0x93, 0x1b, 0x0f, 0x21, 0xd6, 0x64, 0xf7, 0x7d, 0xf9, 0xb5, 0x44, }; static const unsigned char xdh_wei25519_977_sharedsecret[] = { 0xdb, 0x68, 0x51, 0xb1, 0x25, 0x85, 0xbc, 0x11, 0xbe, 0x93, 0x62, 0xc9, 0x6a, 0x54, 0x5c, 0x6f, 0x2b, 0xa5, 0x5f, 0x04, 0x00, 0x97, 0x92, 0x46, 0x3b, 0x96, 0xa3, 0x8c, 0xb9, 0xb3, 0xf0, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_977 = { .name = "xdh_wei25519_977", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_977_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_977_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_977_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_977_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 460 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 978 for XDH, tcId is 461 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_978_peerpubkey[] = { 0x35, 0x73, 0x8d, 0xd5, 0x39, 0xd6, 0x0f, 0x69, 0xcd, 0x1a, 0x1c, 0xff, 0xc8, 0xa4, 0x2b, 0x6a, 0xf6, 0x8f, 0xe7, 0xde, 0x45, 0x39, 0x2d, 0x02, 0x83, 0x1e, 0x2a, 0x77, 0x50, 0x0e, 0xa2, 0x78, }; static const unsigned char xdh_wei25519_978_ourpubkey[] = { 0x07, 0x20, 0x35, 0x97, 0x28, 0x28, 0x53, 0x47, 0x48, 0xfc, 0xe1, 0xc6, 0xac, 0x4f, 0xc5, 0x33, 0x29, 0x31, 0x53, 0x1c, 0x41, 0x49, 0x25, 0x25, 0xc4, 0xe1, 0x26, 0xf8, 0x0b, 0x8c, 0xcb, 0x11, }; static const unsigned char xdh_wei25519_978_privkey[] = { 0x58, 0x54, 0xee, 0x56, 0x68, 0x78, 0xef, 0x8b, 0x7e, 0xba, 0xf5, 0xa0, 0x58, 0x30, 0x6f, 0x25, 0x0e, 0xdf, 0x0c, 0x84, 0xfd, 0x52, 0xaf, 0x2d, 0x74, 0xb7, 0xce, 0x3c, 0x1e, 0xdd, 0xa7, 0x46, }; static const unsigned char xdh_wei25519_978_sharedsecret[] = { 0xf6, 0xd1, 0xa6, 0x64, 0x25, 0x7f, 0xa5, 0xde, 0x3d, 0x4d, 0x57, 0xf0, 0x4e, 0xda, 0x29, 0x76, 0xbf, 0x1e, 0x35, 0xcc, 0x3a, 0xc5, 0x13, 0xe1, 0xee, 0x84, 0xd5, 0x7d, 0x21, 0x35, 0xed, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_978 = { .name = "xdh_wei25519_978", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_978_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_978_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_978_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_978_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 461 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 979 for XDH, tcId is 462 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_979_peerpubkey[] = { 0xce, 0x93, 0x2b, 0x5a, 0xf4, 0xbe, 0x47, 0x21, 0xf9, 0x6f, 0x7b, 0x79, 0xba, 0x1c, 0x43, 0xb2, 0x06, 0x87, 0xd4, 0xaf, 0x49, 0xc3, 0x7b, 0x58, 0xdc, 0x89, 0x42, 0x79, 0xe0, 0x4b, 0xb5, 0x78, }; static const unsigned char xdh_wei25519_979_ourpubkey[] = { 0x50, 0x0e, 0xbf, 0xf9, 0x46, 0x35, 0xaf, 0x6a, 0xb4, 0xab, 0xc8, 0xa6, 0x28, 0xda, 0xbe, 0xbe, 0x8f, 0x02, 0x94, 0x8a, 0xce, 0xc9, 0x25, 0x16, 0xff, 0x49, 0x05, 0x59, 0x83, 0xfd, 0x8c, 0x22, }; static const unsigned char xdh_wei25519_979_privkey[] = { 0x98, 0x5b, 0x55, 0x12, 0x61, 0xfc, 0xe3, 0x8d, 0xdc, 0x8f, 0xf3, 0xad, 0xd3, 0x2f, 0x5c, 0x26, 0x81, 0x1d, 0x27, 0x1b, 0x9a, 0x17, 0x94, 0xe2, 0x49, 0xdd, 0x76, 0xa3, 0x8d, 0xf2, 0x84, 0x46, }; static const unsigned char xdh_wei25519_979_sharedsecret[] = { 0xf8, 0xf7, 0x62, 0x5a, 0xc5, 0xbd, 0xe6, 0x3f, 0x75, 0x3a, 0x9b, 0xb4, 0xae, 0xfb, 0xfb, 0x9c, 0x46, 0x47, 0x20, 0x77, 0x08, 0xaf, 0x9d, 0x77, 0x4e, 0xf0, 0x8f, 0xf1, 0xb1, 0xe5, 0xa3, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_979 = { .name = "xdh_wei25519_979", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_979_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_979_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_979_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_979_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 462 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 980 for XDH, tcId is 463 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_980_peerpubkey[] = { 0xe3, 0x65, 0x54, 0x48, 0x33, 0x9e, 0x48, 0x50, 0x80, 0x6e, 0xb5, 0x8a, 0xbb, 0xa0, 0xc8, 0x91, 0x85, 0x51, 0x1e, 0xa7, 0x2c, 0x37, 0xc4, 0x9e, 0x95, 0x83, 0xee, 0x6d, 0xd2, 0x35, 0xd2, 0x13, }; static const unsigned char xdh_wei25519_980_ourpubkey[] = { 0x2c, 0xe9, 0x15, 0x00, 0xf8, 0x31, 0xbe, 0x30, 0x42, 0x8a, 0xc6, 0xcd, 0xaf, 0xc0, 0x08, 0x6e, 0x15, 0x6a, 0xde, 0xed, 0x0e, 0x1e, 0xa0, 0x97, 0x02, 0xae, 0xd4, 0x6b, 0x8f, 0x4b, 0xa1, 0x6f, }; static const unsigned char xdh_wei25519_980_privkey[] = { 0x88, 0x15, 0x05, 0x23, 0x44, 0xdc, 0xad, 0x97, 0xef, 0xd1, 0x34, 0x1e, 0x90, 0x72, 0xa8, 0x08, 0xcf, 0x99, 0x9e, 0x46, 0xe5, 0x2c, 0xf0, 0x4e, 0x0c, 0xfb, 0xcd, 0x99, 0x01, 0xe1, 0x8d, 0x43, }; static const unsigned char xdh_wei25519_980_sharedsecret[] = { 0x5e, 0x10, 0xdf, 0xbf, 0xf4, 0x44, 0x3e, 0xfc, 0xae, 0x2c, 0xcc, 0x78, 0xc2, 0x89, 0xa4, 0x14, 0x60, 0xd5, 0xa8, 0x2f, 0x79, 0xdf, 0x72, 0x6b, 0x88, 0x24, 0xcc, 0xbe, 0xf7, 0x14, 0x6d, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_980 = { .name = "xdh_wei25519_980", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_980_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_980_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_980_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_980_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 463 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 981 for XDH, tcId is 464 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_981_peerpubkey[] = { 0x4d, 0x16, 0x96, 0x5b, 0x16, 0x37, 0xe9, 0xd7, 0xae, 0x8f, 0xeb, 0x49, 0x9e, 0xd0, 0x55, 0x39, 0x62, 0xa9, 0xaa, 0x00, 0x22, 0xd1, 0x62, 0x0c, 0x92, 0x80, 0x72, 0xf6, 0x50, 0x1b, 0xc4, 0x1b, }; static const unsigned char xdh_wei25519_981_ourpubkey[] = { 0xf8, 0x03, 0xfe, 0xe3, 0xc5, 0xe7, 0xed, 0x46, 0xb6, 0xfc, 0x15, 0x67, 0xa5, 0x57, 0xed, 0x01, 0x89, 0x74, 0xd9, 0xf1, 0x13, 0x0e, 0x37, 0x4a, 0x1e, 0xcd, 0xde, 0x10, 0x66, 0xbe, 0x84, 0x31, }; static const unsigned char xdh_wei25519_981_privkey[] = { 0xb8, 0xe0, 0x32, 0xe9, 0xe5, 0xff, 0xba, 0xa0, 0x04, 0x39, 0x0f, 0x3a, 0x0b, 0x90, 0x0b, 0xc7, 0xcf, 0x5d, 0x11, 0x23, 0x8b, 0x7e, 0xc9, 0x64, 0xaf, 0xc4, 0xbd, 0xa2, 0xaa, 0x6c, 0x34, 0x44, }; static const unsigned char xdh_wei25519_981_sharedsecret[] = { 0x19, 0xd7, 0xb4, 0x4c, 0x18, 0x47, 0xc4, 0x4e, 0x8f, 0x37, 0xa2, 0x2a, 0xb6, 0x9c, 0x18, 0x0f, 0xd9, 0xd7, 0x87, 0xf2, 0x04, 0x12, 0x30, 0x13, 0xe1, 0xb1, 0x68, 0x00, 0xb9, 0xcd, 0x0f, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_981 = { .name = "xdh_wei25519_981", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_981_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_981_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_981_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_981_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 464 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 982 for XDH, tcId is 465 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_982_peerpubkey[] = { 0xc6, 0xb9, 0xe6, 0x28, 0x87, 0x37, 0xad, 0x40, 0x45, 0x2c, 0xec, 0x10, 0x22, 0x87, 0x1d, 0x90, 0xaf, 0x16, 0x42, 0xd1, 0x0b, 0xd0, 0xa9, 0x77, 0x92, 0xb1, 0xa9, 0xc8, 0x99, 0x8e, 0x22, 0x20, }; static const unsigned char xdh_wei25519_982_ourpubkey[] = { 0xca, 0xa6, 0xe4, 0x2f, 0x01, 0x29, 0x6c, 0x28, 0x38, 0xd6, 0xb5, 0x5e, 0x30, 0x42, 0x78, 0xcd, 0x5f, 0x28, 0xb0, 0xca, 0x29, 0x2b, 0x8d, 0xd1, 0x45, 0x34, 0x5c, 0xe8, 0xe7, 0x23, 0x4d, 0x13, }; static const unsigned char xdh_wei25519_982_privkey[] = { 0x70, 0x12, 0x85, 0x22, 0x11, 0xf6, 0x53, 0x6f, 0xca, 0x79, 0x93, 0x7e, 0x7e, 0x31, 0x6c, 0x91, 0x49, 0xb0, 0xe2, 0x0e, 0xa0, 0x3f, 0x95, 0x1e, 0x1b, 0xb0, 0x72, 0x89, 0x5c, 0xa0, 0xe0, 0x44, }; static const unsigned char xdh_wei25519_982_sharedsecret[] = { 0xdb, 0x99, 0x0d, 0x97, 0x9f, 0x4f, 0x22, 0xf7, 0x66, 0xe7, 0x82, 0x6d, 0x93, 0x55, 0x4e, 0x77, 0x1b, 0x36, 0x1d, 0xe4, 0x61, 0x27, 0x4d, 0x6c, 0x37, 0xba, 0xad, 0xeb, 0x8e, 0xf7, 0xbe, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_982 = { .name = "xdh_wei25519_982", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_982_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_982_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_982_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_982_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 465 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 983 for XDH, tcId is 466 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_983_peerpubkey[] = { 0xd5, 0x66, 0xfa, 0xb5, 0x05, 0xac, 0x4c, 0x7a, 0x3d, 0xc3, 0xb9, 0x40, 0x3e, 0xf1, 0x21, 0x39, 0x2c, 0xbb, 0xe2, 0x12, 0x16, 0xe5, 0xbc, 0xb8, 0xea, 0xb2, 0xdc, 0x94, 0x08, 0x98, 0x6e, 0x34, }; static const unsigned char xdh_wei25519_983_ourpubkey[] = { 0x2a, 0xd9, 0xc5, 0x45, 0xf2, 0x6a, 0x15, 0xbc, 0x56, 0xf9, 0xe2, 0x8f, 0x9b, 0x47, 0xd3, 0xac, 0x56, 0x12, 0x07, 0xd9, 0xf4, 0x02, 0xe8, 0x5d, 0x63, 0x84, 0x56, 0x5e, 0x63, 0x2e, 0xd3, 0x59, }; static const unsigned char xdh_wei25519_983_privkey[] = { 0xd0, 0x39, 0xc1, 0xb9, 0xec, 0x47, 0x63, 0xe0, 0xad, 0x8a, 0x0e, 0xf2, 0xb0, 0x87, 0x02, 0x97, 0xd0, 0xf8, 0xb4, 0x87, 0xe6, 0x60, 0x59, 0x5a, 0x48, 0x41, 0x05, 0xd1, 0x80, 0xe1, 0x4a, 0x47, }; static const unsigned char xdh_wei25519_983_sharedsecret[] = { 0x6d, 0x7f, 0xc5, 0xd4, 0xa8, 0xf5, 0x34, 0xb1, 0xbc, 0x0f, 0xa5, 0xe0, 0x78, 0x10, 0x42, 0x34, 0x67, 0x5c, 0x02, 0x66, 0x47, 0x36, 0x95, 0x7a, 0xbd, 0xb2, 0x7d, 0xf6, 0xfa, 0xf0, 0x7c, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_983 = { .name = "xdh_wei25519_983", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_983_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_983_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_983_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_983_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 466 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 984 for XDH, tcId is 467 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_984_peerpubkey[] = { 0x46, 0x8d, 0x35, 0xec, 0xfb, 0x6d, 0x9b, 0x72, 0x72, 0x52, 0x32, 0x76, 0xcc, 0x5e, 0x13, 0x76, 0x05, 0x19, 0x66, 0x7f, 0x0e, 0x1e, 0x38, 0x88, 0xda, 0x4c, 0x56, 0x95, 0x5f, 0xe9, 0x11, 0x51, }; static const unsigned char xdh_wei25519_984_ourpubkey[] = { 0xd4, 0xd2, 0x66, 0x7b, 0xb2, 0x19, 0x5c, 0x84, 0x42, 0xe3, 0xc7, 0x42, 0x62, 0x83, 0x60, 0x4f, 0x79, 0x46, 0xfd, 0xa1, 0xfd, 0x4a, 0xf7, 0xee, 0xb4, 0xdb, 0x89, 0xae, 0xaf, 0xb6, 0x5d, 0x0c, }; static const unsigned char xdh_wei25519_984_privkey[] = { 0x58, 0xef, 0xcb, 0xc8, 0x77, 0x7c, 0x1b, 0x54, 0xf0, 0x9c, 0x61, 0xa2, 0x16, 0xef, 0xd4, 0x27, 0x29, 0x2e, 0xb1, 0x23, 0x12, 0xdb, 0xb3, 0xb3, 0x2b, 0xd4, 0x52, 0x54, 0xa6, 0x68, 0x3e, 0x47, }; static const unsigned char xdh_wei25519_984_sharedsecret[] = { 0x53, 0x9c, 0x8d, 0x62, 0x9a, 0xb5, 0x1c, 0x2f, 0x3e, 0xa7, 0x27, 0x8f, 0xd5, 0xf1, 0xc3, 0x1b, 0x6c, 0x15, 0x0a, 0x82, 0xfe, 0x3f, 0x78, 0x6b, 0x93, 0xff, 0xa1, 0x59, 0xfd, 0x6d, 0x93, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_984 = { .name = "xdh_wei25519_984", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_984_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_984_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_984_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_984_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 467 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 985 for XDH, tcId is 468 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_985_peerpubkey[] = { 0x19, 0x29, 0x53, 0x87, 0x43, 0x97, 0x7d, 0xfe, 0xa2, 0x0b, 0xf4, 0x92, 0x7d, 0xda, 0xbb, 0x2f, 0x3b, 0xb1, 0x5c, 0xac, 0x24, 0x61, 0x05, 0x45, 0x08, 0x84, 0x97, 0x18, 0x85, 0x4b, 0x55, 0x68, }; static const unsigned char xdh_wei25519_985_ourpubkey[] = { 0x86, 0x63, 0x77, 0x09, 0xe4, 0x83, 0xb7, 0x3a, 0xcb, 0x04, 0xff, 0xec, 0x74, 0xa6, 0x78, 0xcc, 0xe6, 0x3c, 0x27, 0x71, 0x60, 0xdc, 0x2e, 0x0a, 0x83, 0x34, 0xf7, 0x01, 0x7a, 0xf7, 0x33, 0x22, }; static const unsigned char xdh_wei25519_985_privkey[] = { 0xc8, 0xd7, 0x34, 0x46, 0x02, 0x6c, 0xd0, 0xea, 0x79, 0x57, 0x73, 0xc2, 0xeb, 0x7b, 0x16, 0x34, 0x8c, 0xd5, 0xf2, 0x28, 0xe3, 0x52, 0xdb, 0xc7, 0x73, 0x28, 0xc2, 0xd8, 0xb9, 0xcd, 0xe2, 0x40, }; static const unsigned char xdh_wei25519_985_sharedsecret[] = { 0xde, 0xe3, 0xfd, 0x19, 0xc8, 0xf2, 0x96, 0x41, 0x54, 0x48, 0xb2, 0x1a, 0xf4, 0x43, 0x85, 0xec, 0x46, 0x72, 0x7b, 0xbe, 0x67, 0xd4, 0x83, 0x9b, 0x93, 0xef, 0xe2, 0xf6, 0x80, 0xe7, 0x6d, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_985 = { .name = "xdh_wei25519_985", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_985_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_985_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_985_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_985_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 468 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 986 for XDH, tcId is 469 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_986_peerpubkey[] = { 0x2d, 0x7a, 0xb4, 0xc6, 0xf5, 0x98, 0x65, 0x35, 0x5e, 0xe8, 0xe9, 0xde, 0x57, 0xdb, 0x19, 0xaa, 0xdf, 0x77, 0x08, 0xb7, 0xc1, 0xd1, 0xa8, 0x18, 0x48, 0x7c, 0x34, 0x06, 0x23, 0xba, 0xdc, 0x6d, }; static const unsigned char xdh_wei25519_986_ourpubkey[] = { 0x75, 0xb6, 0x19, 0x61, 0xa7, 0x24, 0xbb, 0x21, 0x38, 0xa1, 0x83, 0x79, 0x79, 0x92, 0x90, 0x89, 0x1a, 0x50, 0x6a, 0x15, 0xfb, 0x70, 0x58, 0x7b, 0x71, 0x19, 0x60, 0x6c, 0x8d, 0x6d, 0xdd, 0x38, }; static const unsigned char xdh_wei25519_986_privkey[] = { 0x98, 0xb5, 0x59, 0x52, 0x3b, 0xc7, 0x78, 0xb0, 0x41, 0x8a, 0xf5, 0x3c, 0x0c, 0x32, 0xf6, 0xff, 0x5c, 0xf7, 0x71, 0xff, 0x5d, 0xf8, 0xae, 0x7c, 0xbf, 0x7c, 0x3b, 0x72, 0xae, 0xdb, 0x5b, 0x43, }; static const unsigned char xdh_wei25519_986_sharedsecret[] = { 0x2a, 0x03, 0x40, 0xaa, 0xaf, 0xa0, 0x5d, 0x00, 0x52, 0x9c, 0x09, 0x05, 0x7e, 0xd0, 0x14, 0x5f, 0x34, 0xd2, 0xde, 0x66, 0xa3, 0xe1, 0x49, 0xcf, 0x08, 0x4e, 0xa9, 0x71, 0x68, 0x91, 0x4f, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_986 = { .name = "xdh_wei25519_986", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_986_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_986_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_986_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_986_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 469 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 987 for XDH, tcId is 470 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_987_peerpubkey[] = { 0x43, 0x83, 0x9f, 0x4a, 0x6a, 0xa2, 0x06, 0xc8, 0x2c, 0x5a, 0x73, 0xf4, 0x9d, 0x8c, 0x9e, 0x57, 0x38, 0x26, 0xb3, 0xba, 0x72, 0x35, 0xd3, 0x12, 0x98, 0x7c, 0x17, 0xae, 0xbe, 0xe6, 0x27, 0x76, }; static const unsigned char xdh_wei25519_987_ourpubkey[] = { 0x44, 0x2d, 0xd7, 0x2a, 0xac, 0x5a, 0xa7, 0x6a, 0x22, 0x12, 0xfa, 0x3c, 0xdc, 0x5f, 0xb5, 0x81, 0x52, 0xdc, 0xc7, 0x51, 0x85, 0x62, 0x76, 0xb1, 0x13, 0xbd, 0x8c, 0xb3, 0xd1, 0x42, 0xd8, 0x40, }; static const unsigned char xdh_wei25519_987_privkey[] = { 0x58, 0x98, 0x15, 0x02, 0x7c, 0xaf, 0x82, 0x71, 0x4e, 0x96, 0xc9, 0xf9, 0x1b, 0xac, 0xe6, 0x6e, 0xc4, 0xba, 0x3e, 0x92, 0xdf, 0x3f, 0xa1, 0x4b, 0x9b, 0x8f, 0xe5, 0x03, 0x55, 0x6e, 0x45, 0x43, }; static const unsigned char xdh_wei25519_987_sharedsecret[] = { 0x00, 0x31, 0x37, 0x17, 0xd3, 0x3e, 0x3b, 0x41, 0xa0, 0x86, 0x59, 0x86, 0x15, 0x75, 0x82, 0xe0, 0x53, 0x50, 0x2a, 0x17, 0x2b, 0x88, 0xd0, 0x1b, 0xb7, 0xb1, 0x08, 0x31, 0xa9, 0xfc, 0x4e, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_987 = { .name = "xdh_wei25519_987", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_987_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_987_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_987_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_987_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 470 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 988 for XDH, tcId is 471 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_988_peerpubkey[] = { 0x3c, 0x32, 0x1e, 0x7f, 0x0b, 0x9e, 0x55, 0x5b, 0xc2, 0x64, 0xa2, 0xce, 0xa6, 0x17, 0xe6, 0xb2, 0xb5, 0x62, 0xeb, 0xab, 0x21, 0xfe, 0x0c, 0x22, 0x6c, 0x3e, 0x48, 0x7b, 0x7d, 0xf9, 0xa2, 0x7d, }; static const unsigned char xdh_wei25519_988_ourpubkey[] = { 0x81, 0xb9, 0x9b, 0x5d, 0xc0, 0xf8, 0x22, 0x37, 0x38, 0x7f, 0x99, 0xf6, 0x6e, 0x5a, 0x0a, 0x1d, 0x6e, 0xc5, 0x76, 0x0e, 0x54, 0x27, 0xc0, 0x45, 0xea, 0xf4, 0x2b, 0x03, 0x80, 0x1e, 0xa6, 0x4d, }; static const unsigned char xdh_wei25519_988_privkey[] = { 0x80, 0x71, 0x5f, 0x67, 0x27, 0x0c, 0x99, 0x78, 0x98, 0x55, 0xce, 0xae, 0xa9, 0x9b, 0x99, 0x57, 0xcc, 0xda, 0x33, 0x32, 0x6f, 0x76, 0xbb, 0x44, 0x74, 0xab, 0x52, 0xab, 0x1e, 0xc3, 0x70, 0x41, }; static const unsigned char xdh_wei25519_988_sharedsecret[] = { 0x9b, 0x6b, 0xe9, 0xe6, 0xf2, 0xfd, 0xb5, 0xd3, 0x32, 0x18, 0x42, 0x22, 0x5d, 0x3e, 0x91, 0xd1, 0x48, 0x28, 0xcc, 0x53, 0xba, 0x66, 0x54, 0xda, 0xbe, 0x19, 0x0b, 0x0c, 0x3e, 0xde, 0xb3, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_988 = { .name = "xdh_wei25519_988", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_988_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_988_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_988_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_988_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 471 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 989 for XDH, tcId is 472 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_989_peerpubkey[] = { 0x42, 0xe5, 0xa6, 0xb8, 0xe9, 0x65, 0x4b, 0xb4, 0xad, 0x62, 0x4a, 0xf3, 0xf4, 0x91, 0x87, 0x79, 0x77, 0x51, 0x3c, 0xc8, 0x77, 0x5c, 0x8f, 0xb3, 0x12, 0xad, 0x19, 0xdb, 0xf3, 0x90, 0x3a, 0x28, }; static const unsigned char xdh_wei25519_989_ourpubkey[] = { 0xf6, 0x89, 0xcc, 0xb4, 0x72, 0x51, 0xf0, 0x06, 0xcf, 0x76, 0xe4, 0xf5, 0x55, 0xe8, 0x82, 0xa6, 0x0d, 0xb5, 0x77, 0xb4, 0x6b, 0x0b, 0xd1, 0xa9, 0xcb, 0xdf, 0x42, 0x15, 0x7c, 0x19, 0x13, 0x61, }; static const unsigned char xdh_wei25519_989_privkey[] = { 0x10, 0x1b, 0x99, 0x0b, 0xd8, 0x3d, 0x68, 0x41, 0x26, 0xff, 0x04, 0x7d, 0x93, 0x0c, 0x27, 0xd0, 0x86, 0xa5, 0x88, 0xdd, 0x19, 0x68, 0x3d, 0x26, 0x29, 0xf0, 0xe3, 0x4f, 0x43, 0x74, 0xab, 0x41, }; static const unsigned char xdh_wei25519_989_sharedsecret[] = { 0x22, 0x3f, 0x1e, 0xb5, 0x52, 0x30, 0x83, 0x73, 0x02, 0x6d, 0x11, 0xc9, 0x54, 0x68, 0x4c, 0xe6, 0xdb, 0x87, 0x0b, 0x63, 0x8b, 0x19, 0x0b, 0x94, 0x43, 0xe5, 0x0a, 0xae, 0x21, 0x9f, 0x4e, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_989 = { .name = "xdh_wei25519_989", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_989_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_989_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_989_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_989_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 472 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 990 for XDH, tcId is 473 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_990_peerpubkey[] = { 0x0a, 0x51, 0xdd, 0x90, 0xab, 0x98, 0x5f, 0x6d, 0xea, 0xf7, 0x2f, 0x16, 0xc4, 0x50, 0x14, 0xda, 0x26, 0xdf, 0x84, 0x86, 0x97, 0xf6, 0x58, 0x2d, 0x75, 0x68, 0x8f, 0x52, 0x23, 0x34, 0x2b, 0x51, }; static const unsigned char xdh_wei25519_990_ourpubkey[] = { 0x00, 0x2e, 0x29, 0x00, 0x7a, 0x2b, 0xb5, 0x0a, 0x2a, 0xdb, 0x80, 0xb8, 0x00, 0xb1, 0x7f, 0xfc, 0x88, 0x1f, 0x10, 0x7c, 0x4d, 0x96, 0x95, 0x54, 0x87, 0x7d, 0x45, 0xc6, 0xa5, 0xfc, 0x00, 0x39, }; static const unsigned char xdh_wei25519_990_privkey[] = { 0x20, 0x00, 0x89, 0xb7, 0x12, 0xd9, 0xa2, 0x05, 0x05, 0x97, 0x77, 0x9d, 0x46, 0x37, 0x12, 0xfc, 0xd2, 0x23, 0xe3, 0xd6, 0x78, 0x79, 0xc0, 0xfb, 0x76, 0x06, 0xf8, 0xf5, 0xf0, 0xef, 0xee, 0x40, }; static const unsigned char xdh_wei25519_990_sharedsecret[] = { 0xfb, 0x95, 0xce, 0x4a, 0x3c, 0x1f, 0x32, 0x56, 0x38, 0xb7, 0xd4, 0x7f, 0x42, 0x16, 0xd3, 0x9a, 0x7c, 0x6c, 0x5d, 0xa9, 0xa0, 0x1c, 0xaa, 0x29, 0x7c, 0x37, 0xb6, 0x28, 0x16, 0x55, 0x5b, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_990 = { .name = "xdh_wei25519_990", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_990_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_990_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_990_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_990_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 473 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 991 for XDH, tcId is 474 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_991_peerpubkey[] = { 0x88, 0x42, 0x31, 0x73, 0x57, 0xbd, 0xe8, 0x25, 0xef, 0x43, 0x8a, 0x1c, 0x53, 0x90, 0x6f, 0xb8, 0xb0, 0x4e, 0xa3, 0x60, 0xf7, 0xef, 0x33, 0x8c, 0x78, 0xe6, 0x68, 0x58, 0x60, 0x47, 0x93, 0x6a, }; static const unsigned char xdh_wei25519_991_ourpubkey[] = { 0xcd, 0xf0, 0xda, 0xf0, 0x2c, 0x12, 0x06, 0xbc, 0x8f, 0xf7, 0xba, 0xd4, 0x82, 0x6e, 0x8f, 0xd4, 0xe7, 0x76, 0xda, 0x9d, 0x09, 0x2c, 0x1f, 0xef, 0x34, 0xdd, 0x7c, 0xd2, 0x19, 0xee, 0x2d, 0x42, }; static const unsigned char xdh_wei25519_991_privkey[] = { 0xf0, 0x4f, 0x87, 0xf4, 0xe6, 0x23, 0xaf, 0x4c, 0x31, 0xce, 0xca, 0x0b, 0xb8, 0x7f, 0xac, 0x2d, 0x5b, 0x12, 0x51, 0x7b, 0x5a, 0x72, 0x84, 0x90, 0x2a, 0xd7, 0x58, 0x38, 0xe6, 0x5f, 0x1e, 0x41, }; static const unsigned char xdh_wei25519_991_sharedsecret[] = { 0x48, 0x8b, 0x83, 0x41, 0xc9, 0xcb, 0x1b, 0xbf, 0x12, 0x45, 0x10, 0xb9, 0xf8, 0xda, 0xe4, 0xfa, 0xf2, 0xe0, 0xdc, 0xa9, 0xb8, 0x4e, 0x00, 0xe9, 0x52, 0xa6, 0x3b, 0x5a, 0xa3, 0x28, 0xa8, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_991 = { .name = "xdh_wei25519_991", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_991_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_991_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_991_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_991_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 474 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 992 for XDH, tcId is 475 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_992_peerpubkey[] = { 0xc7, 0x1d, 0x92, 0xd3, 0xc9, 0x2d, 0xbf, 0xae, 0xd7, 0x55, 0xfb, 0x32, 0x79, 0x7b, 0x66, 0x7c, 0xc8, 0x6b, 0x0e, 0x79, 0x36, 0x24, 0x98, 0xe2, 0xac, 0xa3, 0x8c, 0x68, 0x97, 0x13, 0xb1, 0x6e, }; static const unsigned char xdh_wei25519_992_ourpubkey[] = { 0xee, 0x3a, 0x5c, 0x3d, 0x49, 0xcf, 0x08, 0x82, 0xe1, 0x75, 0x8d, 0xe1, 0x6a, 0xd2, 0xa5, 0x81, 0x84, 0x4b, 0x66, 0xfb, 0x25, 0x44, 0x6e, 0x73, 0xd6, 0xd4, 0x9f, 0x6f, 0x7d, 0x7c, 0x0f, 0x71, }; static const unsigned char xdh_wei25519_992_privkey[] = { 0x38, 0x3c, 0xbd, 0x5a, 0x3d, 0xd0, 0x90, 0x1d, 0x09, 0xa3, 0xca, 0xc3, 0xd3, 0xa7, 0x7a, 0x97, 0x9c, 0xec, 0xf1, 0x5e, 0x20, 0x6a, 0x55, 0x3e, 0x4c, 0xa3, 0xf2, 0x4b, 0x90, 0x78, 0x39, 0x45, }; static const unsigned char xdh_wei25519_992_sharedsecret[] = { 0x11, 0x29, 0xea, 0xe9, 0x7b, 0xf7, 0x5f, 0x73, 0x14, 0xf2, 0xe1, 0xb4, 0x03, 0xb1, 0x87, 0x37, 0xad, 0x83, 0x0c, 0x80, 0x42, 0x9e, 0x2b, 0xa0, 0xd4, 0x86, 0x6b, 0x36, 0x23, 0x99, 0x85, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_992 = { .name = "xdh_wei25519_992", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_992_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_992_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_992_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_992_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 475 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 993 for XDH, tcId is 476 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_993_peerpubkey[] = { 0x3a, 0x21, 0xd1, 0xcf, 0x7b, 0x37, 0x44, 0xd1, 0xad, 0x26, 0x19, 0x73, 0x35, 0x84, 0x49, 0x82, 0xc2, 0xa0, 0xc6, 0xa5, 0xaa, 0x83, 0x54, 0x92, 0xbd, 0x03, 0xc4, 0x01, 0xa4, 0xfe, 0x67, 0x78, }; static const unsigned char xdh_wei25519_993_ourpubkey[] = { 0x5e, 0x8a, 0x47, 0xc9, 0x72, 0x41, 0x81, 0xfc, 0x40, 0xdd, 0xfc, 0xb8, 0x79, 0x9d, 0x55, 0xd3, 0x6c, 0x74, 0x8d, 0x9e, 0x3d, 0x22, 0x86, 0xf4, 0xd9, 0x5a, 0xf8, 0xbd, 0xaf, 0xa9, 0xa0, 0x05, }; static const unsigned char xdh_wei25519_993_privkey[] = { 0x70, 0x1d, 0xf0, 0x9e, 0x57, 0xb9, 0x8a, 0xec, 0x37, 0x57, 0x45, 0xdf, 0x14, 0x7b, 0x72, 0x94, 0x9a, 0x6b, 0x2b, 0xb2, 0xca, 0x3a, 0x34, 0x88, 0x15, 0x12, 0xee, 0x31, 0xe7, 0x90, 0xad, 0x42, }; static const unsigned char xdh_wei25519_993_sharedsecret[] = { 0x07, 0x2f, 0x51, 0xd9, 0x47, 0x27, 0xf3, 0x92, 0xd5, 0x9d, 0xc7, 0xca, 0xff, 0x1f, 0x44, 0x60, 0x45, 0x23, 0x52, 0xec, 0x39, 0xc3, 0x2a, 0x1c, 0x9f, 0x07, 0x1e, 0x38, 0x88, 0x33, 0xda, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_993 = { .name = "xdh_wei25519_993", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_993_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_993_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_993_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_993_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 476 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 994 for XDH, tcId is 477 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_994_peerpubkey[] = { 0xd1, 0x28, 0xea, 0x3e, 0x13, 0x32, 0x5e, 0xd6, 0xeb, 0xd6, 0x53, 0x3a, 0x9f, 0xd3, 0x04, 0x5a, 0x55, 0xf2, 0x5a, 0xd8, 0xb6, 0x7d, 0xef, 0x30, 0x91, 0x28, 0x43, 0x50, 0x4c, 0x1a, 0xab, 0x29, }; static const unsigned char xdh_wei25519_994_ourpubkey[] = { 0x7f, 0x2b, 0x17, 0x05, 0x8a, 0xf2, 0x0c, 0x3b, 0x9c, 0x01, 0xd6, 0x4e, 0x11, 0xf3, 0x16, 0x5f, 0x7b, 0x3e, 0x65, 0x48, 0xc0, 0x76, 0xb5, 0x74, 0xbb, 0x80, 0x1b, 0x67, 0x6a, 0xc2, 0xc9, 0x22, }; static const unsigned char xdh_wei25519_994_privkey[] = { 0xb0, 0xff, 0xa5, 0xf4, 0x92, 0x2b, 0xb1, 0x17, 0xad, 0x75, 0xff, 0x43, 0xac, 0xac, 0x62, 0x33, 0x1e, 0xfa, 0xa4, 0x55, 0x36, 0xfe, 0x88, 0x30, 0x6e, 0x4a, 0x4c, 0xb5, 0x8d, 0xb7, 0x3a, 0x47, }; static const unsigned char xdh_wei25519_994_sharedsecret[] = { 0x30, 0x51, 0x21, 0x42, 0xd3, 0xe3, 0xa4, 0xca, 0xd6, 0x72, 0x6d, 0x9d, 0x35, 0xf2, 0xe0, 0x43, 0xfc, 0xa9, 0xdf, 0xb7, 0x50, 0x88, 0x4a, 0xe2, 0x2b, 0x25, 0x47, 0xc8, 0x40, 0xf3, 0x58, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_994 = { .name = "xdh_wei25519_994", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_994_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_994_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_994_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_994_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 477 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 995 for XDH, tcId is 478 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_995_peerpubkey[] = { 0xe0, 0x79, 0xc8, 0xf8, 0x42, 0x31, 0x65, 0xc7, 0xe0, 0xa2, 0xc4, 0x8b, 0x4a, 0xbe, 0x90, 0xae, 0xce, 0x4e, 0x6d, 0x90, 0x3d, 0x7a, 0x5a, 0x16, 0x25, 0xfa, 0xd0, 0x41, 0x0c, 0xd5, 0x5b, 0x32, }; static const unsigned char xdh_wei25519_995_ourpubkey[] = { 0x49, 0xaf, 0xfe, 0x0b, 0x1e, 0x33, 0xf5, 0x93, 0xd4, 0x8f, 0xca, 0xb8, 0xe3, 0x51, 0xac, 0x14, 0x7a, 0x31, 0xe1, 0xaa, 0x5e, 0x03, 0x0a, 0x85, 0xdd, 0x6f, 0x10, 0xca, 0xe5, 0xfe, 0xb4, 0x0e, }; static const unsigned char xdh_wei25519_995_privkey[] = { 0x68, 0x5e, 0x32, 0x71, 0xd2, 0x01, 0x57, 0x41, 0x75, 0x66, 0x12, 0xa9, 0x30, 0xe8, 0x58, 0xb9, 0x30, 0xac, 0xf2, 0x01, 0x81, 0x45, 0xf3, 0x82, 0xc8, 0x3d, 0x8c, 0xce, 0xd2, 0xe2, 0x20, 0x44, }; static const unsigned char xdh_wei25519_995_sharedsecret[] = { 0x5b, 0x81, 0xb3, 0x76, 0x1a, 0x66, 0xd1, 0x99, 0xe8, 0xef, 0x99, 0xd2, 0x49, 0x4b, 0xd5, 0x7a, 0x02, 0x29, 0xd4, 0x56, 0x4a, 0x7f, 0x6d, 0x60, 0x55, 0xf2, 0x2a, 0xa4, 0x86, 0x81, 0xbd, 0x3a, }; static const wycheproof_xdh_test xdh_wei25519_995 = { .name = "xdh_wei25519_995", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_995_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_995_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_995_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_995_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 478 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 996 for XDH, tcId is 479 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_996_peerpubkey[] = { 0x65, 0x92, 0x2a, 0x06, 0xe9, 0xbe, 0x4e, 0x8a, 0x5e, 0x8a, 0xce, 0xb1, 0xa4, 0xe0, 0x8f, 0xe9, 0x0f, 0x01, 0xe1, 0x0e, 0xf2, 0xdd, 0x27, 0x31, 0x54, 0x27, 0xce, 0xdf, 0xcf, 0x95, 0xec, 0x32, }; static const unsigned char xdh_wei25519_996_ourpubkey[] = { 0xf2, 0xfe, 0x37, 0x7d, 0x65, 0x33, 0x0f, 0x12, 0xb9, 0xe6, 0xac, 0x17, 0x27, 0x75, 0x3d, 0xad, 0xa8, 0xbd, 0x61, 0x27, 0x56, 0xe8, 0xf6, 0xd1, 0xf3, 0xd9, 0x16, 0x1d, 0x0b, 0x61, 0x38, 0x33, }; static const unsigned char xdh_wei25519_996_privkey[] = { 0xf8, 0xe1, 0x61, 0xd6, 0x92, 0x97, 0xe0, 0x17, 0xd7, 0xc5, 0x1b, 0x1b, 0x1f, 0xf3, 0xba, 0x70, 0x3d, 0x4c, 0x4c, 0xf8, 0xfc, 0x2b, 0x8f, 0xf4, 0x7f, 0x74, 0xc3, 0xff, 0x8c, 0x7d, 0x35, 0x41, }; static const unsigned char xdh_wei25519_996_sharedsecret[] = { 0x03, 0x8d, 0xe7, 0xfd, 0xb9, 0xcc, 0x00, 0x30, 0xf5, 0xc1, 0x1d, 0xda, 0x00, 0x58, 0x9f, 0x0a, 0x95, 0xf6, 0x56, 0x58, 0x81, 0x5b, 0x06, 0xed, 0x01, 0x35, 0x53, 0xa0, 0x2b, 0x6c, 0x50, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_996 = { .name = "xdh_wei25519_996", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_996_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_996_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_996_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_996_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 479 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 997 for XDH, tcId is 480 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_997_peerpubkey[] = { 0xd3, 0x6a, 0x24, 0x0e, 0x97, 0x2d, 0xc1, 0x6e, 0x9b, 0x97, 0xa9, 0x97, 0xad, 0xa3, 0x37, 0xf0, 0x27, 0x60, 0xd0, 0x5c, 0x46, 0xd7, 0xf8, 0xd7, 0xb4, 0xe9, 0xea, 0x9a, 0x63, 0x5c, 0x7c, 0x64, }; static const unsigned char xdh_wei25519_997_ourpubkey[] = { 0x9d, 0x57, 0x1e, 0xf0, 0x73, 0x25, 0x2d, 0x88, 0x78, 0x5e, 0xa5, 0x64, 0xf6, 0x25, 0x2c, 0x30, 0x59, 0x1a, 0xe4, 0x31, 0x46, 0x3e, 0x1a, 0xad, 0x6e, 0x33, 0x24, 0xb5, 0x94, 0xb2, 0x8b, 0x4a, }; static const unsigned char xdh_wei25519_997_privkey[] = { 0x10, 0x5d, 0x75, 0x89, 0xf8, 0xab, 0xef, 0x0a, 0xcf, 0x09, 0x40, 0xda, 0x84, 0xa6, 0x9e, 0x8f, 0x2f, 0x30, 0x6f, 0xa7, 0x3c, 0x9a, 0xfd, 0x27, 0x34, 0x22, 0x87, 0xc1, 0xdb, 0xa8, 0x00, 0x44, }; static const unsigned char xdh_wei25519_997_sharedsecret[] = { 0x22, 0xb0, 0xde, 0xa3, 0xb3, 0xb7, 0xca, 0x55, 0xec, 0xee, 0xaa, 0xe6, 0x44, 0x34, 0x26, 0x54, 0x8c, 0x7c, 0x15, 0xcc, 0x7d, 0xdf, 0x31, 0x78, 0x03, 0x18, 0xd1, 0xc2, 0x38, 0x79, 0xc1, 0x6a, }; static const wycheproof_xdh_test xdh_wei25519_997 = { .name = "xdh_wei25519_997", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_997_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_997_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_997_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_997_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 480 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 998 for XDH, tcId is 481 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_998_peerpubkey[] = { 0x4f, 0x5b, 0x8b, 0x98, 0x92, 0xb8, 0xa4, 0x6d, 0xf0, 0x8d, 0x76, 0xa4, 0x74, 0x5b, 0x1c, 0x58, 0xd4, 0xe7, 0xa3, 0x94, 0x90, 0x54, 0x35, 0x87, 0x56, 0x88, 0xca, 0x11, 0xf1, 0xe9, 0xd8, 0x6a, }; static const unsigned char xdh_wei25519_998_ourpubkey[] = { 0xa1, 0x0f, 0x94, 0x6f, 0x1f, 0xc1, 0x47, 0xfe, 0x4c, 0x47, 0xd2, 0xef, 0x43, 0x67, 0x0a, 0xb0, 0xab, 0x11, 0x81, 0x77, 0x57, 0x99, 0x32, 0x4a, 0x40, 0xdf, 0x02, 0xc3, 0x88, 0x0e, 0xe3, 0x2f, }; static const unsigned char xdh_wei25519_998_privkey[] = { 0x18, 0x93, 0xd4, 0x38, 0x8b, 0x0e, 0x90, 0xf0, 0xb5, 0x02, 0x08, 0xaa, 0x8f, 0x0c, 0xc2, 0x4f, 0x57, 0x6d, 0x03, 0x64, 0x1b, 0xaf, 0x1c, 0x3e, 0xdd, 0xb2, 0xa3, 0xef, 0xa6, 0x9c, 0x9d, 0x40, }; static const unsigned char xdh_wei25519_998_sharedsecret[] = { 0xa2, 0x5e, 0x13, 0x06, 0x68, 0x4a, 0xd7, 0x87, 0x0a, 0x31, 0xf0, 0x40, 0x45, 0x66, 0xe8, 0xd2, 0x8f, 0x2d, 0x83, 0xd4, 0xb9, 0x49, 0x78, 0x22, 0xc5, 0x7f, 0x87, 0x81, 0xb1, 0x8f, 0xec, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_998 = { .name = "xdh_wei25519_998", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_998_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_998_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_998_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_998_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 481 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 999 for XDH, tcId is 482 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_999_peerpubkey[] = { 0xaa, 0x2f, 0x02, 0x62, 0x82, 0x69, 0x13, 0x9a, 0x7a, 0x8a, 0x16, 0xfd, 0xe9, 0x5c, 0x9b, 0xad, 0x7d, 0xa7, 0xff, 0xbd, 0x54, 0x39, 0xc3, 0x96, 0xa7, 0xd7, 0x7b, 0x6c, 0x32, 0x13, 0xe6, 0x7f, }; static const unsigned char xdh_wei25519_999_ourpubkey[] = { 0x58, 0x76, 0x04, 0xcd, 0x8d, 0x9f, 0x5a, 0x28, 0xa6, 0xaa, 0x20, 0x1d, 0x77, 0x8c, 0x08, 0xa0, 0x0e, 0xd6, 0xd3, 0xb7, 0xa5, 0xca, 0xd2, 0xcf, 0x3e, 0xac, 0x5e, 0xa3, 0x42, 0xa2, 0x21, 0x6a, }; static const unsigned char xdh_wei25519_999_privkey[] = { 0x00, 0x65, 0x17, 0x13, 0x01, 0xbf, 0x6b, 0x90, 0xfb, 0x16, 0xef, 0xa3, 0x55, 0x09, 0x16, 0x1f, 0x1b, 0xd6, 0xb3, 0xb9, 0x31, 0x30, 0xd4, 0x90, 0xaf, 0x9f, 0xe2, 0x24, 0xdd, 0x15, 0x5f, 0x45, }; static const unsigned char xdh_wei25519_999_sharedsecret[] = { 0xbb, 0x44, 0x31, 0xbe, 0xa7, 0xa5, 0x87, 0x1c, 0x1b, 0xe2, 0x7a, 0x26, 0x74, 0x09, 0x46, 0x27, 0xea, 0xaa, 0x44, 0x25, 0xc9, 0x9c, 0xd3, 0xfa, 0x41, 0xbd, 0x7e, 0x13, 0xcb, 0xd7, 0xbf, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_999 = { .name = "xdh_wei25519_999", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_999_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_999_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_999_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_999_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 482 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1000 for XDH, tcId is 483 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1000_peerpubkey[] = { 0xd9, 0x95, 0xcb, 0x28, 0x7e, 0x9a, 0x9c, 0x57, 0x91, 0xf3, 0xca, 0xe3, 0xd4, 0x94, 0xa5, 0xb5, 0x16, 0xa1, 0xe2, 0x6c, 0xbc, 0x93, 0x0f, 0x43, 0xe7, 0x3c, 0x8b, 0x70, 0xb6, 0x9d, 0x78, 0x3b, }; static const unsigned char xdh_wei25519_1000_ourpubkey[] = { 0xa2, 0xdc, 0xc5, 0xf3, 0x98, 0x9e, 0x13, 0x41, 0x9d, 0x2d, 0x1f, 0xbc, 0x81, 0xce, 0x2e, 0x7f, 0x57, 0x3b, 0x41, 0x17, 0x79, 0x46, 0xb8, 0x74, 0x82, 0x93, 0xb6, 0x7f, 0x9a, 0xed, 0x1e, 0x0b, }; static const unsigned char xdh_wei25519_1000_privkey[] = { 0x10, 0xc8, 0x1a, 0x4e, 0x78, 0xd8, 0x21, 0x45, 0xb2, 0x66, 0xe1, 0xd7, 0x4b, 0x38, 0x69, 0xbf, 0x1c, 0x27, 0x42, 0x78, 0x03, 0xeb, 0xb1, 0x1c, 0x92, 0xff, 0x80, 0x73, 0xd1, 0xe4, 0xcc, 0x46, }; static const unsigned char xdh_wei25519_1000_sharedsecret[] = { 0x33, 0x0f, 0x5d, 0x0b, 0x5b, 0xcc, 0xc9, 0x0f, 0x76, 0x94, 0xdf, 0xdd, 0x9c, 0x64, 0x49, 0xa6, 0x2d, 0x93, 0xaf, 0x88, 0x40, 0xea, 0xf5, 0x71, 0xe3, 0xe0, 0x61, 0x0e, 0x01, 0x98, 0xb0, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1000 = { .name = "xdh_wei25519_1000", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1000_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1000_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1000_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1000_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 8, tcId is 483 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1001 for XDH, tcId is 484 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1001_peerpubkey[] = { 0x47, 0x9a, 0xfb, 0x1e, 0x73, 0xdc, 0x77, 0xc3, 0x74, 0x3e, 0x51, 0xe9, 0xec, 0x0b, 0xcc, 0x61, 0xce, 0x66, 0xed, 0x08, 0x4d, 0xc1, 0x0b, 0xfa, 0x27, 0x94, 0xb4, 0xc3, 0xe4, 0x95, 0x37, 0x69, }; static const unsigned char xdh_wei25519_1001_ourpubkey[] = { 0x29, 0x5c, 0x86, 0x89, 0xba, 0x30, 0x5a, 0xad, 0x8a, 0x00, 0x93, 0xed, 0x90, 0x20, 0x0a, 0xc0, 0x52, 0xed, 0x32, 0x6f, 0xe3, 0xbc, 0x9b, 0xa0, 0xca, 0x27, 0x50, 0x9d, 0x81, 0xd9, 0x73, 0x10, }; static const unsigned char xdh_wei25519_1001_privkey[] = { 0x48, 0xb9, 0x8b, 0x4a, 0x99, 0xea, 0xdd, 0x73, 0x01, 0x2c, 0x07, 0xfe, 0x5c, 0x4a, 0x0b, 0x95, 0x90, 0xac, 0x55, 0xe8, 0x21, 0x35, 0x3b, 0x41, 0xd5, 0xf6, 0x65, 0xe1, 0x71, 0x88, 0xbc, 0x41, }; static const unsigned char xdh_wei25519_1001_sharedsecret[] = { 0xbd, 0xef, 0x00, 0xca, 0xa5, 0x14, 0xb2, 0xf8, 0xab, 0x1f, 0xb2, 0x24, 0x1e, 0x83, 0x78, 0x7a, 0x02, 0x60, 0x1e, 0xcd, 0xff, 0x6c, 0xf1, 0x66, 0xc4, 0x21, 0x0f, 0x8c, 0x1a, 0xde, 0x42, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1001 = { .name = "xdh_wei25519_1001", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1001_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1001_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1001_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1001_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 484 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1002 for XDH, tcId is 485 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1002_peerpubkey[] = { 0x37, 0x8e, 0xda, 0x41, 0x47, 0x0b, 0x0f, 0x23, 0x8a, 0x20, 0x0f, 0x80, 0x80, 0x9a, 0xd5, 0x62, 0xca, 0x41, 0xe6, 0x24, 0x11, 0xa6, 0x1f, 0xeb, 0x7f, 0x7e, 0x9b, 0x75, 0x2b, 0x55, 0x46, 0x42, }; static const unsigned char xdh_wei25519_1002_ourpubkey[] = { 0x51, 0x4a, 0xe8, 0x7e, 0x25, 0x57, 0x23, 0x79, 0x10, 0xd3, 0x3e, 0xea, 0xea, 0x3d, 0x8c, 0x94, 0x98, 0x12, 0x8a, 0x53, 0x72, 0xa5, 0x80, 0xf2, 0x4a, 0x2b, 0xea, 0xfb, 0x37, 0x99, 0xab, 0x39, }; static const unsigned char xdh_wei25519_1002_privkey[] = { 0x18, 0x97, 0x67, 0x8e, 0x38, 0x22, 0x2a, 0x61, 0xfe, 0x10, 0x5d, 0xc6, 0x64, 0x3c, 0x1e, 0xb5, 0x94, 0x0e, 0x8d, 0xbc, 0x73, 0xed, 0x6c, 0x00, 0xf2, 0x5a, 0x34, 0x32, 0x8f, 0x43, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_1002_sharedsecret[] = { 0xbf, 0xd5, 0xb5, 0xac, 0xd2, 0xd8, 0x9f, 0x21, 0x3a, 0x26, 0xca, 0xf5, 0x40, 0x62, 0xf9, 0xa2, 0x4e, 0x6f, 0x6f, 0xd8, 0xdd, 0xd0, 0xcd, 0x2e, 0x5e, 0x47, 0xb7, 0xfe, 0xa4, 0xa9, 0xc5, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_1002 = { .name = "xdh_wei25519_1002", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1002_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1002_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1002_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1002_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 485 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1003 for XDH, tcId is 486 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1003_peerpubkey[] = { 0x0c, 0xad, 0x75, 0x45, 0xad, 0xe2, 0xfd, 0x93, 0xfc, 0xae, 0x00, 0x7c, 0x97, 0x64, 0x83, 0x48, 0xf2, 0x6d, 0x85, 0x82, 0x9b, 0xdb, 0x72, 0x23, 0xa6, 0x3e, 0xcc, 0xb8, 0x4e, 0x56, 0xd4, 0x75, }; static const unsigned char xdh_wei25519_1003_ourpubkey[] = { 0x83, 0x39, 0xff, 0x21, 0x83, 0xeb, 0x57, 0xe5, 0x15, 0x33, 0x50, 0x96, 0xe7, 0x68, 0xcd, 0xce, 0xc5, 0x26, 0xd5, 0xb5, 0x42, 0x2f, 0x70, 0x8c, 0xae, 0x22, 0x2e, 0xe6, 0x00, 0xb6, 0x47, 0x13, }; static const unsigned char xdh_wei25519_1003_privkey[] = { 0xa8, 0x98, 0xaf, 0x81, 0x38, 0xe1, 0x1a, 0xe4, 0x5b, 0xbc, 0xef, 0xa7, 0x37, 0x18, 0x2a, 0x57, 0x18, 0x85, 0xf9, 0x2d, 0x51, 0x5c, 0x32, 0x05, 0x6c, 0x7c, 0xb0, 0xd7, 0xde, 0xac, 0x47, 0x41, }; static const unsigned char xdh_wei25519_1003_sharedsecret[] = { 0xc8, 0x08, 0x58, 0x77, 0x80, 0x0c, 0x17, 0x5e, 0x94, 0x9c, 0xdd, 0x88, 0xe1, 0x96, 0xeb, 0x9c, 0x48, 0x41, 0xda, 0x2a, 0xc4, 0x46, 0xdf, 0xed, 0x90, 0x85, 0xbd, 0xa5, 0xbb, 0xec, 0x26, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1003 = { .name = "xdh_wei25519_1003", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1003_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1003_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1003_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1003_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 486 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1004 for XDH, tcId is 487 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1004_peerpubkey[] = { 0x60, 0xf2, 0x7e, 0xd0, 0xa2, 0x78, 0x04, 0xce, 0xd2, 0x37, 0xcf, 0x3c, 0x1c, 0xc7, 0x76, 0x65, 0x0f, 0xb3, 0x20, 0xba, 0xe6, 0xd5, 0xac, 0xb5, 0x64, 0xe9, 0x7b, 0x56, 0xcb, 0xa2, 0x52, 0x10, }; static const unsigned char xdh_wei25519_1004_ourpubkey[] = { 0x1c, 0x3c, 0x44, 0x31, 0xf3, 0xba, 0xef, 0xed, 0xe8, 0x34, 0xb4, 0xbd, 0xa3, 0x3f, 0xb5, 0x6c, 0x12, 0x1f, 0x49, 0x73, 0xd8, 0x8b, 0x68, 0xdc, 0xbe, 0xfe, 0x11, 0x36, 0xbc, 0xca, 0x22, 0x56, }; static const unsigned char xdh_wei25519_1004_privkey[] = { 0xb0, 0xbf, 0xef, 0x6e, 0xc0, 0x95, 0xb5, 0xa1, 0xf9, 0x39, 0x17, 0xd3, 0x2f, 0x16, 0xa2, 0x1d, 0x04, 0x62, 0xc1, 0xfd, 0xe1, 0x74, 0x46, 0xf5, 0xa5, 0x90, 0x23, 0x2d, 0x9c, 0x89, 0x5f, 0x4a, }; static const unsigned char xdh_wei25519_1004_sharedsecret[] = { 0x4c, 0x30, 0x08, 0x95, 0x82, 0x73, 0x82, 0xa9, 0xd1, 0x07, 0x90, 0x28, 0xbd, 0x6f, 0x69, 0x4a, 0x7a, 0x12, 0xdd, 0xac, 0x9c, 0x76, 0xab, 0xac, 0x6f, 0xdf, 0x5d, 0x29, 0x45, 0x7a, 0x33, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1004 = { .name = "xdh_wei25519_1004", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1004_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1004_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1004_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1004_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 487 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1005 for XDH, tcId is 488 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1005_peerpubkey[] = { 0xf9, 0x3a, 0x73, 0x27, 0x0a, 0xc1, 0x91, 0x94, 0xb8, 0xe4, 0xff, 0xd0, 0x2b, 0xe4, 0xb1, 0x43, 0x85, 0x25, 0xf8, 0x4a, 0x76, 0x22, 0x46, 0x88, 0xea, 0x89, 0xa9, 0xdd, 0x6a, 0x1b, 0xd6, 0x23, }; static const unsigned char xdh_wei25519_1005_ourpubkey[] = { 0x92, 0x22, 0xd6, 0x23, 0x45, 0x9f, 0xbd, 0x86, 0xed, 0xf1, 0x3a, 0xc7, 0x70, 0xa6, 0xaf, 0x13, 0xa4, 0x6a, 0x2c, 0x8f, 0xca, 0xea, 0x66, 0x29, 0xc9, 0xbb, 0xd8, 0x57, 0x09, 0xd0, 0xa5, 0x59, }; static const unsigned char xdh_wei25519_1005_privkey[] = { 0x60, 0x49, 0x7d, 0x44, 0x64, 0xed, 0x88, 0x23, 0xc5, 0x0f, 0xbc, 0x6b, 0x68, 0x62, 0x08, 0x26, 0xc4, 0xf6, 0x29, 0xc1, 0xd9, 0x19, 0x30, 0x58, 0xdf, 0x6b, 0xf8, 0x57, 0xc6, 0xae, 0xcc, 0x4b, }; static const unsigned char xdh_wei25519_1005_sharedsecret[] = { 0x72, 0x85, 0xfb, 0xb3, 0xf7, 0x63, 0x40, 0xa9, 0x79, 0xab, 0x6e, 0x28, 0x87, 0x27, 0xa2, 0x11, 0x33, 0x32, 0xcf, 0x93, 0x38, 0x09, 0xb0, 0x18, 0xb8, 0x73, 0x9a, 0x79, 0x6a, 0x09, 0xd0, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1005 = { .name = "xdh_wei25519_1005", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1005_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1005_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1005_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1005_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 488 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1006 for XDH, tcId is 489 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1006_peerpubkey[] = { 0xcf, 0x80, 0xc3, 0x0f, 0xcb, 0xfd, 0x53, 0x56, 0x66, 0xca, 0x1d, 0xa4, 0x99, 0xe2, 0xe9, 0x9c, 0xc5, 0x37, 0x06, 0x3e, 0x2d, 0xe1, 0x94, 0x58, 0xfc, 0xf9, 0x2f, 0x5e, 0xe3, 0x4a, 0xcf, 0x47, }; static const unsigned char xdh_wei25519_1006_ourpubkey[] = { 0x38, 0x91, 0xb8, 0xf1, 0x24, 0x08, 0xac, 0xea, 0xb9, 0xa5, 0x61, 0x93, 0xbb, 0xfb, 0xfe, 0xfc, 0xa5, 0x8c, 0x91, 0x15, 0x3a, 0xb6, 0x64, 0x4d, 0x37, 0x4c, 0xc8, 0x94, 0x7d, 0xe9, 0xe3, 0x17, }; static const unsigned char xdh_wei25519_1006_privkey[] = { 0x08, 0xc6, 0xcb, 0xe0, 0x37, 0x92, 0xa3, 0x82, 0x9f, 0x06, 0xe8, 0xad, 0x54, 0xc5, 0x5d, 0xb1, 0x13, 0x23, 0x6a, 0xc0, 0xdc, 0xc9, 0xab, 0x6a, 0x9a, 0x6b, 0x10, 0xee, 0xd1, 0x04, 0x1b, 0x48, }; static const unsigned char xdh_wei25519_1006_sharedsecret[] = { 0xda, 0xbc, 0x3b, 0xd4, 0x9f, 0x19, 0xcf, 0x70, 0x71, 0x80, 0x2e, 0x43, 0xc8, 0x63, 0xed, 0x0b, 0x1d, 0x93, 0xa8, 0x41, 0x58, 0x80, 0x98, 0xb9, 0x8a, 0x0c, 0x58, 0x1b, 0xf4, 0xfe, 0x0a, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1006 = { .name = "xdh_wei25519_1006", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1006_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1006_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1006_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1006_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 489 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1007 for XDH, tcId is 490 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1007_peerpubkey[] = { 0x69, 0x8e, 0xff, 0xe0, 0xad, 0x42, 0xe1, 0x5e, 0xe1, 0xf4, 0x6f, 0xde, 0x6f, 0xc5, 0x07, 0x4f, 0xfd, 0xa1, 0x83, 0xbc, 0xf1, 0xb2, 0xdb, 0x86, 0x47, 0xf5, 0x61, 0xdd, 0xd1, 0x91, 0xdd, 0x60, }; static const unsigned char xdh_wei25519_1007_ourpubkey[] = { 0x3b, 0x69, 0xee, 0xd7, 0x7f, 0xab, 0x32, 0x2c, 0x4e, 0x9e, 0xe3, 0x66, 0x17, 0xc5, 0x51, 0x08, 0x1f, 0xe2, 0x97, 0xbb, 0x0f, 0x8c, 0xfb, 0x15, 0x5b, 0xc9, 0xa8, 0xeb, 0x45, 0x3a, 0x97, 0x69, }; static const unsigned char xdh_wei25519_1007_privkey[] = { 0x50, 0x04, 0x4d, 0xa3, 0x31, 0x5d, 0xd0, 0x82, 0xe9, 0xdf, 0xb6, 0xa1, 0x99, 0x4a, 0xab, 0xb3, 0x31, 0xf5, 0x3e, 0x0d, 0x1c, 0x12, 0x63, 0x33, 0x83, 0xb2, 0xa3, 0xc8, 0x67, 0x8c, 0xfe, 0x4c, }; static const unsigned char xdh_wei25519_1007_sharedsecret[] = { 0xa6, 0x1a, 0x3b, 0x15, 0x0b, 0x47, 0x70, 0x53, 0x23, 0x73, 0x67, 0x62, 0x98, 0xc9, 0xa5, 0xda, 0x28, 0xad, 0xcc, 0x43, 0x65, 0xb0, 0x6f, 0xe0, 0x7c, 0x95, 0x9c, 0xa8, 0x0e, 0x47, 0x7a, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1007 = { .name = "xdh_wei25519_1007", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1007_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1007_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1007_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1007_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 490 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1008 for XDH, tcId is 491 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1008_peerpubkey[] = { 0xbd, 0x15, 0x65, 0xb4, 0xa3, 0xf8, 0x51, 0x5d, 0xff, 0x57, 0x7b, 0xe6, 0xdc, 0xb4, 0x14, 0x51, 0x1d, 0x3d, 0x4e, 0xc2, 0xde, 0x15, 0xe0, 0xbd, 0x45, 0xb2, 0x8e, 0x9c, 0xc4, 0xca, 0xef, 0x60, }; static const unsigned char xdh_wei25519_1008_ourpubkey[] = { 0xc6, 0x76, 0xc0, 0x1b, 0x95, 0xa9, 0x23, 0x66, 0xf2, 0x2f, 0xe6, 0x2f, 0x1f, 0xfc, 0xb2, 0x3a, 0xa4, 0x63, 0x56, 0x90, 0xb1, 0x17, 0x7c, 0xdb, 0x8f, 0xb2, 0xca, 0xe1, 0xec, 0x27, 0x6f, 0x46, }; static const unsigned char xdh_wei25519_1008_privkey[] = { 0x28, 0x56, 0x40, 0xda, 0x7a, 0x48, 0x25, 0x2e, 0x35, 0xdd, 0xce, 0x60, 0xc1, 0x4a, 0xdd, 0xb7, 0x30, 0x97, 0xfb, 0xc9, 0xac, 0x2f, 0x87, 0xc8, 0xd2, 0x77, 0x2c, 0xe8, 0x9a, 0xa6, 0xbe, 0x4d, }; static const unsigned char xdh_wei25519_1008_sharedsecret[] = { 0x91, 0x6a, 0xb4, 0xf3, 0xbf, 0xc8, 0x32, 0x1e, 0x10, 0x87, 0xd9, 0xc5, 0x44, 0x4f, 0x8f, 0x7a, 0x43, 0xe9, 0xca, 0x6d, 0x29, 0xe7, 0xba, 0x98, 0xa1, 0x9d, 0xc0, 0x5f, 0xff, 0x34, 0xed, 0x4c, }; static const wycheproof_xdh_test xdh_wei25519_1008 = { .name = "xdh_wei25519_1008", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1008_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1008_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1008_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1008_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 491 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1009 for XDH, tcId is 492 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1009_peerpubkey[] = { 0xb8, 0x64, 0x9e, 0x13, 0x84, 0x3f, 0x80, 0xcf, 0x57, 0x02, 0x39, 0x8e, 0x4a, 0x9a, 0x8c, 0x37, 0x8f, 0x29, 0xda, 0x96, 0xdf, 0xd6, 0x57, 0x9f, 0x1e, 0xb4, 0xf7, 0xea, 0x34, 0xdf, 0x67, 0x65, }; static const unsigned char xdh_wei25519_1009_ourpubkey[] = { 0x06, 0xe6, 0x3b, 0x78, 0x1e, 0x5c, 0x43, 0xcf, 0xc9, 0xd0, 0x28, 0xaf, 0x35, 0xbf, 0x30, 0x26, 0x75, 0xc6, 0x0d, 0x59, 0x0f, 0x3f, 0x6a, 0xa6, 0x93, 0x42, 0x03, 0x22, 0x74, 0x1d, 0xe0, 0x75, }; static const unsigned char xdh_wei25519_1009_privkey[] = { 0x78, 0x32, 0x71, 0xc2, 0x11, 0x99, 0xba, 0x2e, 0x94, 0xea, 0xd9, 0x2c, 0xd9, 0xdd, 0x79, 0xf7, 0x0a, 0xab, 0x37, 0x8b, 0x59, 0x49, 0x74, 0x55, 0xd3, 0x27, 0xa5, 0x90, 0x7d, 0xaf, 0xcb, 0x4a, }; static const unsigned char xdh_wei25519_1009_sharedsecret[] = { 0x84, 0x4a, 0x5d, 0xd5, 0x13, 0x95, 0x54, 0xca, 0x7b, 0x41, 0xcb, 0xe6, 0xa4, 0x79, 0x61, 0x93, 0x91, 0x2e, 0x7a, 0xa4, 0xe2, 0x01, 0xcc, 0x68, 0x94, 0x4c, 0xe2, 0xa5, 0x57, 0x74, 0xa1, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1009 = { .name = "xdh_wei25519_1009", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1009_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1009_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1009_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1009_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 492 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1010 for XDH, tcId is 493 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1010_peerpubkey[] = { 0xc3, 0x96, 0x93, 0x87, 0x37, 0xab, 0xdf, 0x79, 0x1e, 0x09, 0xa9, 0x7e, 0xba, 0x57, 0x7c, 0x43, 0x7d, 0x9b, 0x67, 0xc2, 0xda, 0xe9, 0x4e, 0x13, 0xea, 0xb7, 0x29, 0x6e, 0xc0, 0xfc, 0x73, 0x7e, }; static const unsigned char xdh_wei25519_1010_ourpubkey[] = { 0xb0, 0x4f, 0xca, 0x1c, 0x66, 0xc3, 0xee, 0x8c, 0x61, 0xbb, 0x5e, 0x59, 0x40, 0x72, 0x01, 0xf4, 0x4a, 0x88, 0x8c, 0xb7, 0xa0, 0xef, 0x7f, 0xa0, 0xda, 0x4d, 0xe1, 0x03, 0x2a, 0xee, 0x71, 0x66, }; static const unsigned char xdh_wei25519_1010_privkey[] = { 0xd0, 0x67, 0x6a, 0x0b, 0x9a, 0x04, 0x6c, 0x62, 0xd5, 0xb2, 0xe7, 0x40, 0xd9, 0xcc, 0x43, 0xfa, 0x37, 0x96, 0x5d, 0xea, 0x93, 0xc2, 0x32, 0x54, 0xf7, 0xbf, 0x56, 0x9f, 0x2b, 0xeb, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_1010_sharedsecret[] = { 0x10, 0x78, 0x03, 0x33, 0xb2, 0xa6, 0x17, 0x01, 0x36, 0x26, 0x5b, 0xb5, 0xeb, 0xc6, 0xc8, 0x18, 0x81, 0x7f, 0x2e, 0x48, 0xae, 0x37, 0x25, 0x28, 0xc8, 0xf3, 0x44, 0x33, 0xfd, 0xd6, 0x21, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1010 = { .name = "xdh_wei25519_1010", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1010_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1010_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1010_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1010_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 493 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1011 for XDH, tcId is 494 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1011_peerpubkey[] = { 0x55, 0x7b, 0x82, 0x50, 0x12, 0xd9, 0x8f, 0x06, 0x5b, 0xb9, 0x5a, 0x2a, 0xb9, 0xb2, 0xd2, 0xd8, 0xb8, 0x3f, 0xd2, 0x03, 0x79, 0x12, 0x50, 0x8c, 0x26, 0x3f, 0x86, 0xd7, 0xe3, 0x6c, 0x4f, 0x24, }; static const unsigned char xdh_wei25519_1011_ourpubkey[] = { 0x3a, 0xd9, 0x17, 0xe8, 0x9b, 0x1d, 0x13, 0x27, 0x91, 0xbd, 0x70, 0xed, 0x08, 0x92, 0xf3, 0xe6, 0x79, 0xd4, 0xa9, 0x15, 0xc7, 0x43, 0x6d, 0xce, 0xc5, 0x69, 0x93, 0x41, 0x0e, 0xe2, 0x36, 0x36, }; static const unsigned char xdh_wei25519_1011_privkey[] = { 0x60, 0x8c, 0x84, 0xd2, 0xb7, 0x6f, 0xcc, 0xda, 0x57, 0x9e, 0x97, 0x4d, 0xb3, 0xd3, 0xb2, 0xce, 0x39, 0xa6, 0xbc, 0x0d, 0xad, 0x44, 0x05, 0x99, 0xdb, 0x22, 0x41, 0x1b, 0x60, 0x46, 0x78, 0x49, }; static const unsigned char xdh_wei25519_1011_sharedsecret[] = { 0x5c, 0xe8, 0x48, 0x42, 0xdb, 0xae, 0x8b, 0x79, 0x5b, 0x3d, 0x54, 0x53, 0x43, 0x55, 0x80, 0x45, 0x50, 0x8f, 0x27, 0x13, 0x83, 0xbf, 0xb3, 0xdd, 0x39, 0x43, 0xf4, 0x10, 0x13, 0x98, 0xc8, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1011 = { .name = "xdh_wei25519_1011", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1011_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1011_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1011_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1011_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 494 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1012 for XDH, tcId is 495 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1012_peerpubkey[] = { 0xae, 0x98, 0x29, 0x6d, 0x4a, 0x2f, 0xbc, 0xbb, 0x40, 0xb4, 0x72, 0xf4, 0x06, 0x32, 0x31, 0x60, 0x8b, 0xb1, 0x46, 0x5c, 0x22, 0x6c, 0x8a, 0x4a, 0x2d, 0xff, 0x29, 0xaf, 0xd9, 0x15, 0x88, 0x2a, }; static const unsigned char xdh_wei25519_1012_ourpubkey[] = { 0x41, 0x3c, 0xef, 0xe6, 0x1a, 0xf8, 0xd1, 0xf6, 0x82, 0xd4, 0x49, 0x75, 0xf5, 0xd5, 0x83, 0xc5, 0x92, 0xfe, 0x78, 0xe5, 0xd6, 0xae, 0xf4, 0xe8, 0x1d, 0x4f, 0xfc, 0x03, 0xb8, 0xef, 0x2b, 0x40, }; static const unsigned char xdh_wei25519_1012_privkey[] = { 0x80, 0xf2, 0x33, 0x93, 0x6a, 0x88, 0x21, 0x93, 0x6d, 0x39, 0x11, 0x4c, 0x84, 0xd9, 0x29, 0xe7, 0x97, 0x60, 0xb2, 0x76, 0x80, 0x77, 0x9e, 0x50, 0x09, 0xe1, 0x70, 0x94, 0x10, 0xdd, 0x8e, 0x4f, }; static const unsigned char xdh_wei25519_1012_sharedsecret[] = { 0x4f, 0x11, 0xaa, 0x0c, 0x31, 0x31, 0x95, 0xf9, 0x6f, 0x25, 0xca, 0xdc, 0xbf, 0x49, 0xf0, 0x6a, 0x93, 0x2d, 0x8b, 0x05, 0x18, 0x79, 0xea, 0x53, 0x7d, 0x1c, 0x6d, 0xfe, 0xe7, 0xf3, 0x6d, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1012 = { .name = "xdh_wei25519_1012", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1012_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1012_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1012_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1012_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 495 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1013 for XDH, tcId is 496 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1013_peerpubkey[] = { 0x8b, 0x9d, 0x24, 0x98, 0x29, 0xfb, 0xe8, 0x13, 0x33, 0xd8, 0x50, 0x50, 0xda, 0x88, 0x99, 0x8f, 0x63, 0xfa, 0xc6, 0x65, 0x67, 0x9e, 0x27, 0xdb, 0xbe, 0x21, 0xb7, 0x45, 0xdd, 0x14, 0xe1, 0x45, }; static const unsigned char xdh_wei25519_1013_ourpubkey[] = { 0xcb, 0x55, 0xd7, 0xe0, 0x42, 0x67, 0x18, 0xa0, 0x3f, 0x3e, 0xe2, 0xe7, 0x62, 0xd2, 0x34, 0xe2, 0x4c, 0x98, 0x54, 0xcd, 0x57, 0x60, 0x65, 0x40, 0xca, 0x15, 0xe0, 0x61, 0x95, 0xe0, 0x82, 0x24, }; static const unsigned char xdh_wei25519_1013_privkey[] = { 0xc8, 0xd8, 0x0b, 0x1a, 0x34, 0xf2, 0x11, 0x94, 0xf0, 0x47, 0xa6, 0xf0, 0x32, 0x8b, 0xb9, 0x47, 0xe2, 0xe7, 0xaf, 0xf6, 0xa0, 0x43, 0x55, 0x3a, 0xa0, 0x7f, 0x2a, 0xbf, 0x99, 0xaa, 0xf0, 0x48, }; static const unsigned char xdh_wei25519_1013_sharedsecret[] = { 0x1d, 0x61, 0x90, 0x70, 0xbf, 0x56, 0x26, 0x06, 0x4b, 0xe1, 0x00, 0x25, 0xe7, 0x4e, 0x33, 0x6c, 0x81, 0xef, 0x31, 0x66, 0xb7, 0x43, 0xf9, 0x9c, 0x75, 0x1f, 0xb9, 0x05, 0x87, 0xc3, 0x1d, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1013 = { .name = "xdh_wei25519_1013", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1013_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1013_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1013_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1013_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 496 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1014 for XDH, tcId is 497 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1014_peerpubkey[] = { 0x61, 0x89, 0x60, 0x93, 0xe2, 0x69, 0x7c, 0x78, 0x23, 0x0a, 0xfd, 0xda, 0x12, 0x63, 0x9c, 0xbe, 0x43, 0x42, 0x82, 0x7b, 0x8d, 0x2b, 0x09, 0x32, 0x81, 0xf1, 0x48, 0xeb, 0x60, 0xb9, 0x03, 0x4b, }; static const unsigned char xdh_wei25519_1014_ourpubkey[] = { 0x4c, 0xe2, 0xf4, 0xe1, 0x95, 0x4e, 0xcc, 0x31, 0x69, 0x33, 0x46, 0xea, 0xa6, 0x93, 0x3c, 0xca, 0xb1, 0xc2, 0xa2, 0x9b, 0x80, 0x02, 0x9f, 0x1d, 0xb2, 0x43, 0x40, 0xd3, 0x30, 0xd3, 0xfe, 0x22, }; static const unsigned char xdh_wei25519_1014_privkey[] = { 0x90, 0x21, 0x47, 0x7b, 0x45, 0x23, 0x61, 0x58, 0x00, 0x59, 0x36, 0x4c, 0x6f, 0x94, 0xf4, 0x98, 0x1e, 0xe9, 0x4e, 0xa3, 0xf9, 0xb7, 0xd3, 0x74, 0x39, 0xbc, 0x82, 0xae, 0x45, 0x81, 0x6f, 0x4d, }; static const unsigned char xdh_wei25519_1014_sharedsecret[] = { 0x53, 0x2e, 0x79, 0x78, 0x61, 0xdb, 0x56, 0xb9, 0xd5, 0xdb, 0x88, 0x25, 0xfb, 0x72, 0xf8, 0x62, 0x9c, 0x24, 0x22, 0xf8, 0xab, 0xea, 0x72, 0x1a, 0xd2, 0xd7, 0xb9, 0xe7, 0x7a, 0x95, 0xb5, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1014 = { .name = "xdh_wei25519_1014", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1014_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1014_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1014_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1014_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 497 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1015 for XDH, tcId is 498 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1015_peerpubkey[] = { 0xcc, 0xc1, 0xdc, 0x18, 0x62, 0x29, 0xdb, 0xa9, 0xa9, 0x36, 0x0a, 0x0f, 0x7f, 0xf0, 0x02, 0x47, 0xa3, 0x73, 0x26, 0x25, 0xac, 0xaa, 0xcd, 0x18, 0xea, 0x13, 0xa9, 0xa8, 0xb4, 0x0f, 0xac, 0x4f, }; static const unsigned char xdh_wei25519_1015_ourpubkey[] = { 0x88, 0x7b, 0xf4, 0x35, 0xff, 0x26, 0x9f, 0xb0, 0xf5, 0xd8, 0x7b, 0x30, 0x97, 0x7a, 0x57, 0xd4, 0x10, 0xad, 0x0b, 0x24, 0xc7, 0x69, 0x32, 0xa6, 0xfc, 0xff, 0x1c, 0x3f, 0xac, 0x1d, 0x8e, 0x1a, }; static const unsigned char xdh_wei25519_1015_privkey[] = { 0x60, 0x79, 0xda, 0xe0, 0x4c, 0x40, 0xa5, 0x9e, 0xa4, 0xe0, 0xc8, 0xc1, 0x70, 0x92, 0xe4, 0xc8, 0x5e, 0xa9, 0x13, 0x3d, 0x14, 0x33, 0x07, 0x36, 0x34, 0x87, 0x83, 0x6d, 0xf4, 0xe3, 0x03, 0x49, }; static const unsigned char xdh_wei25519_1015_sharedsecret[] = { 0x4f, 0x67, 0x8b, 0x64, 0xfd, 0x1f, 0x85, 0xcb, 0xbd, 0x5f, 0x7e, 0x7f, 0x3c, 0x8a, 0xc9, 0x5e, 0xc7, 0x50, 0x0e, 0x10, 0x2e, 0x90, 0x06, 0xd6, 0xd4, 0x2f, 0x48, 0xfb, 0x24, 0x73, 0xab, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1015 = { .name = "xdh_wei25519_1015", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1015_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1015_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1015_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1015_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1016 for XDH, tcId is 499 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1016_peerpubkey[] = { 0x69, 0xe3, 0x68, 0xc0, 0xb7, 0xe7, 0x8e, 0xb9, 0xf3, 0xa5, 0x3b, 0xf4, 0x58, 0xf6, 0xe7, 0x9d, 0xc4, 0x88, 0x3b, 0xf9, 0x45, 0x8f, 0x04, 0xa8, 0xc1, 0x2c, 0x4d, 0xdd, 0x94, 0xd6, 0x21, 0x51, }; static const unsigned char xdh_wei25519_1016_ourpubkey[] = { 0x6b, 0x48, 0xa0, 0xd9, 0x72, 0x4f, 0xe9, 0xd8, 0x39, 0xef, 0x9b, 0x56, 0x9e, 0xb0, 0x93, 0x7c, 0xf3, 0x88, 0xd7, 0xcb, 0x8f, 0xb9, 0xf8, 0x8c, 0x61, 0xfb, 0xee, 0x6c, 0x33, 0x23, 0xf2, 0x38, }; static const unsigned char xdh_wei25519_1016_privkey[] = { 0x28, 0x1d, 0xb6, 0xa5, 0xac, 0x9a, 0x47, 0xd4, 0xa7, 0xb2, 0xb9, 0x1a, 0x87, 0xf6, 0x53, 0x6c, 0xe6, 0x2d, 0x4e, 0x51, 0x29, 0xb8, 0xd6, 0x47, 0xb9, 0x7f, 0x9c, 0x50, 0x40, 0x14, 0x89, 0x4c, }; static const unsigned char xdh_wei25519_1016_sharedsecret[] = { 0xe0, 0x69, 0xfd, 0x06, 0x70, 0x2f, 0x10, 0xf3, 0x3a, 0xdb, 0x8c, 0xf0, 0x76, 0x68, 0x80, 0x63, 0x48, 0x65, 0xb5, 0x10, 0xe2, 0xda, 0x40, 0x92, 0x41, 0xfb, 0x5f, 0x17, 0x80, 0x50, 0x51, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1016 = { .name = "xdh_wei25519_1016", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1016_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1016_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1016_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1016_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1017 for XDH, tcId is 500 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1017_peerpubkey[] = { 0xf2, 0x1f, 0x9b, 0xad, 0xd9, 0x8d, 0xd8, 0xa1, 0x03, 0xcc, 0x2a, 0xb5, 0x48, 0x4f, 0xac, 0x6c, 0x2b, 0xfd, 0xd2, 0x67, 0x1e, 0xe6, 0xe6, 0x74, 0x13, 0x4a, 0x86, 0xb8, 0x9c, 0xee, 0x91, 0x60, }; static const unsigned char xdh_wei25519_1017_ourpubkey[] = { 0x3d, 0x13, 0xb1, 0xab, 0x19, 0x30, 0x34, 0xc8, 0xa4, 0x10, 0x3e, 0x0b, 0xbc, 0x65, 0x6f, 0x18, 0x4e, 0x94, 0x84, 0xc6, 0x33, 0xf3, 0x8e, 0xa2, 0xdc, 0xd3, 0xa2, 0x48, 0x6a, 0xfa, 0x39, 0x15, }; static const unsigned char xdh_wei25519_1017_privkey[] = { 0xd8, 0x30, 0xf3, 0xc4, 0x78, 0x58, 0x29, 0xa0, 0xf9, 0x45, 0x85, 0x7e, 0x0e, 0x85, 0xe0, 0xae, 0x72, 0x37, 0x02, 0xb5, 0x77, 0x83, 0xb9, 0x33, 0xcd, 0x2a, 0x2a, 0xd0, 0x54, 0x84, 0xfe, 0x49, }; static const unsigned char xdh_wei25519_1017_sharedsecret[] = { 0xfe, 0xe2, 0x18, 0xeb, 0x1f, 0x92, 0x86, 0x44, 0x86, 0xe8, 0x3c, 0x17, 0x31, 0xf0, 0x4b, 0xb8, 0xc7, 0xe6, 0xd7, 0x14, 0x3e, 0x39, 0x15, 0xbc, 0xbf, 0x80, 0xfe, 0x03, 0xff, 0x69, 0xdc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1017 = { .name = "xdh_wei25519_1017", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1017_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1017_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1017_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1017_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1018 for XDH, tcId is 501 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1018_peerpubkey[] = { 0xe8, 0x53, 0x06, 0x2b, 0x2d, 0x6f, 0x38, 0xd0, 0x21, 0xd6, 0x45, 0x16, 0x3e, 0xa2, 0x08, 0xd0, 0xe1, 0x93, 0xa4, 0x79, 0xf1, 0x1f, 0x99, 0x97, 0x1b, 0x98, 0xe2, 0x11, 0x88, 0xfd, 0x0b, 0x2c, }; static const unsigned char xdh_wei25519_1018_ourpubkey[] = { 0x1d, 0x23, 0x1b, 0x9a, 0xa3, 0x28, 0x39, 0x27, 0x67, 0xc2, 0x84, 0xaa, 0x8b, 0x56, 0xf3, 0x1e, 0x42, 0x80, 0xb9, 0x7c, 0xbc, 0x13, 0x3c, 0xb6, 0x9a, 0xd7, 0x42, 0xaa, 0xf0, 0x18, 0xf7, 0x42, }; static const unsigned char xdh_wei25519_1018_privkey[] = { 0x10, 0x23, 0x0b, 0xd0, 0x72, 0x1f, 0x4c, 0x8c, 0x4b, 0x92, 0x18, 0x81, 0xdd, 0x88, 0xc6, 0x03, 0xaf, 0x50, 0x1e, 0xe8, 0x0e, 0x21, 0x02, 0xf8, 0xac, 0xc3, 0x0c, 0xf8, 0xb2, 0xac, 0xd3, 0x49, }; static const unsigned char xdh_wei25519_1018_sharedsecret[] = { 0x64, 0xbd, 0xfa, 0x02, 0x07, 0xa1, 0x74, 0xca, 0x17, 0xee, 0xba, 0x8d, 0xf7, 0x4d, 0x79, 0xb2, 0x5f, 0x54, 0x51, 0x0e, 0x61, 0x74, 0x92, 0x30, 0x34, 0xa4, 0xd6, 0xee, 0x0c, 0x16, 0x7e, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1018 = { .name = "xdh_wei25519_1018", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1018_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1018_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1018_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1018_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 501 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1019 for XDH, tcId is 502 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1019_peerpubkey[] = { 0x36, 0x2e, 0xb9, 0x2d, 0xab, 0x9f, 0xb2, 0x9f, 0x7e, 0xd0, 0xe0, 0x38, 0x43, 0xdc, 0xc1, 0x57, 0x97, 0x92, 0x8c, 0x2b, 0x4e, 0x51, 0xec, 0x26, 0x02, 0x04, 0x17, 0x9c, 0x1c, 0x12, 0x94, 0x5f, }; static const unsigned char xdh_wei25519_1019_ourpubkey[] = { 0x9d, 0x47, 0x9d, 0xc2, 0x33, 0x3f, 0x3a, 0x00, 0x5b, 0x9b, 0x79, 0xaf, 0xd6, 0x4b, 0xb5, 0x1e, 0xfc, 0xad, 0xa5, 0x50, 0x08, 0x29, 0x0e, 0x95, 0x4a, 0x94, 0x36, 0xc2, 0xf3, 0x79, 0xed, 0x5f, }; static const unsigned char xdh_wei25519_1019_privkey[] = { 0xf0, 0xa3, 0x4d, 0x6d, 0x76, 0x89, 0x6e, 0x17, 0xcb, 0x8f, 0x66, 0xfe, 0xda, 0x23, 0x11, 0x5f, 0xfb, 0x96, 0xf2, 0x46, 0xb8, 0x23, 0xbb, 0x63, 0xde, 0xc0, 0x83, 0x35, 0x78, 0x7d, 0xe7, 0x4c, }; static const unsigned char xdh_wei25519_1019_sharedsecret[] = { 0xd7, 0xf4, 0x58, 0x3e, 0xe4, 0xfe, 0x86, 0xaf, 0x3a, 0x3f, 0x1d, 0xfc, 0xb2, 0x95, 0xba, 0x3a, 0x3e, 0x37, 0xbc, 0xed, 0x7b, 0x9c, 0x6f, 0x00, 0x0a, 0x95, 0x33, 0x65, 0x30, 0x31, 0x89, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1019 = { .name = "xdh_wei25519_1019", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1019_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1019_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1019_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1019_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 502 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1020 for XDH, tcId is 503 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1020_peerpubkey[] = { 0xff, 0x54, 0x3f, 0x1e, 0x81, 0x99, 0x6e, 0x88, 0x63, 0x1f, 0x03, 0x0c, 0xeb, 0xa7, 0xe6, 0x03, 0xb1, 0x30, 0x33, 0xef, 0xd2, 0x05, 0xe6, 0x8b, 0xd3, 0x6b, 0x28, 0x46, 0x81, 0x34, 0xaa, 0x73, }; static const unsigned char xdh_wei25519_1020_ourpubkey[] = { 0x36, 0xda, 0x34, 0x1c, 0xfa, 0xeb, 0x08, 0xd5, 0xd9, 0xbf, 0x4a, 0x0b, 0x46, 0xa4, 0x9a, 0x1b, 0x61, 0x01, 0x43, 0x26, 0x10, 0xed, 0x13, 0xc7, 0xa0, 0x52, 0xea, 0xe1, 0x5c, 0x42, 0xa8, 0x1a, }; static const unsigned char xdh_wei25519_1020_privkey[] = { 0x90, 0x73, 0xc1, 0xd0, 0xa1, 0x73, 0xc7, 0xff, 0x02, 0xdc, 0x96, 0x6a, 0x16, 0x59, 0x93, 0xd9, 0xc4, 0xc9, 0x35, 0x75, 0x14, 0xf7, 0xa6, 0xbb, 0x7a, 0xaa, 0x4b, 0x08, 0x27, 0x71, 0x89, 0x48, }; static const unsigned char xdh_wei25519_1020_sharedsecret[] = { 0xc1, 0xb5, 0xe5, 0xf4, 0x40, 0x1c, 0x98, 0xfa, 0x14, 0xeb, 0xa8, 0xaa, 0xfa, 0xe3, 0x0a, 0x64, 0x1b, 0xfd, 0x8f, 0xb1, 0x32, 0xbe, 0x03, 0x41, 0x3f, 0x3b, 0xf2, 0x92, 0x90, 0xd4, 0x9e, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1020 = { .name = "xdh_wei25519_1020", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1020_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1020_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1020_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1020_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 503 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1021 for XDH, tcId is 504 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1021_peerpubkey[] = { 0x90, 0xef, 0x70, 0x84, 0x4e, 0xad, 0x16, 0x13, 0xf6, 0x9d, 0xf7, 0xd7, 0x8c, 0x05, 0x78, 0x13, 0xf8, 0x66, 0xc0, 0xd9, 0x5e, 0x6d, 0x22, 0xca, 0xee, 0x4a, 0x01, 0x2b, 0x9c, 0x1c, 0x4b, 0x33, }; static const unsigned char xdh_wei25519_1021_ourpubkey[] = { 0x44, 0x40, 0x1e, 0x48, 0x6d, 0xf2, 0x5e, 0x98, 0x6b, 0xd2, 0x71, 0xcb, 0x8a, 0x83, 0xf1, 0x3e, 0xc2, 0x2e, 0x7b, 0x39, 0x3b, 0x38, 0x4d, 0xc6, 0xf1, 0x73, 0xe9, 0x40, 0x20, 0xb3, 0x9a, 0x72, }; static const unsigned char xdh_wei25519_1021_privkey[] = { 0xb0, 0xc1, 0x82, 0x25, 0x66, 0xe0, 0x16, 0xc1, 0x2a, 0xe3, 0x5e, 0xc0, 0x35, 0xed, 0xd0, 0x9a, 0xf3, 0xcb, 0x7a, 0x48, 0xf5, 0x5c, 0x90, 0x28, 0xe0, 0x5e, 0x11, 0x78, 0xa8, 0xc3, 0x82, 0x4e, }; static const unsigned char xdh_wei25519_1021_sharedsecret[] = { 0x93, 0x69, 0xeb, 0xb3, 0xd2, 0xb7, 0x44, 0x34, 0x1c, 0xba, 0x77, 0x30, 0x27, 0x19, 0xa4, 0xb2, 0xd6, 0x3a, 0xff, 0x61, 0x28, 0x72, 0xf8, 0x6d, 0x98, 0x77, 0xa7, 0x6b, 0xc9, 0x19, 0xca, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1021 = { .name = "xdh_wei25519_1021", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1021_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1021_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1021_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1021_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 504 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1022 for XDH, tcId is 505 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1022_peerpubkey[] = { 0x88, 0xc1, 0xae, 0x57, 0x5a, 0xd0, 0x73, 0xdd, 0xa6, 0x6c, 0x6e, 0xac, 0xb7, 0xb7, 0xf4, 0x36, 0xe1, 0xf8, 0xad, 0x72, 0xa0, 0xdb, 0x5c, 0x04, 0xe5, 0x66, 0x0b, 0x7b, 0x71, 0x9e, 0x4c, 0x4b, }; static const unsigned char xdh_wei25519_1022_ourpubkey[] = { 0xd5, 0xc5, 0x69, 0x30, 0x0d, 0xed, 0x5c, 0xdd, 0x9d, 0xaa, 0x25, 0xb2, 0xff, 0xcc, 0xa4, 0x4b, 0xda, 0xc7, 0x99, 0x85, 0x8e, 0xd8, 0x8a, 0x31, 0x4e, 0x72, 0x51, 0x9d, 0x01, 0x9f, 0x85, 0x23, }; static const unsigned char xdh_wei25519_1022_privkey[] = { 0xe0, 0x6f, 0xe6, 0x4e, 0x21, 0x17, 0x79, 0x6f, 0x99, 0x7b, 0xbc, 0xd3, 0xbc, 0xad, 0x30, 0x67, 0xcf, 0x12, 0x91, 0x64, 0x0a, 0x3a, 0x64, 0x3f, 0xb3, 0x59, 0x80, 0x9a, 0x40, 0x16, 0x83, 0x4d, }; static const unsigned char xdh_wei25519_1022_sharedsecret[] = { 0x33, 0x53, 0x94, 0xbe, 0x9c, 0x15, 0x49, 0x01, 0xc0, 0xb4, 0x06, 0x33, 0x00, 0x00, 0x18, 0x04, 0xb1, 0xcd, 0x01, 0xb2, 0x7f, 0xa5, 0x62, 0xe4, 0x4f, 0x33, 0x02, 0x16, 0x88, 0x37, 0x16, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1022 = { .name = "xdh_wei25519_1022", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1022_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1022_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1022_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1022_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 505 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1023 for XDH, tcId is 506 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1023_peerpubkey[] = { 0xdc, 0xff, 0xc4, 0xc1, 0xe1, 0xfb, 0xa5, 0xfd, 0xa9, 0xd5, 0xc9, 0x84, 0x21, 0xd9, 0x9c, 0x25, 0x7a, 0xfa, 0x90, 0x92, 0x1b, 0xc2, 0x12, 0xa0, 0x46, 0xd9, 0x0f, 0x66, 0x83, 0xe8, 0xa4, 0x67, }; static const unsigned char xdh_wei25519_1023_ourpubkey[] = { 0xdd, 0x81, 0x94, 0xc9, 0x4b, 0xad, 0xcd, 0x88, 0x81, 0x17, 0xce, 0xc6, 0xb3, 0xa9, 0xbb, 0xd0, 0x1e, 0x37, 0x30, 0x26, 0x73, 0x1e, 0x96, 0x5e, 0x27, 0xb9, 0x54, 0xeb, 0x8c, 0x5f, 0xa1, 0x1c, }; static const unsigned char xdh_wei25519_1023_privkey[] = { 0x70, 0x7e, 0xe8, 0x1f, 0x11, 0x3a, 0x24, 0x4c, 0x9d, 0x87, 0x60, 0x8b, 0x12, 0x15, 0x8c, 0x50, 0xf9, 0xac, 0x1f, 0x2c, 0x89, 0x48, 0xd1, 0x70, 0xad, 0x16, 0xab, 0x0a, 0xd8, 0x66, 0xd7, 0x4b, }; static const unsigned char xdh_wei25519_1023_sharedsecret[] = { 0x7e, 0xcd, 0xd5, 0x4c, 0x5e, 0x15, 0xf7, 0xb4, 0x06, 0x1b, 0xe2, 0xc3, 0x0b, 0x5a, 0x48, 0x84, 0xa0, 0x25, 0x65, 0x81, 0xf8, 0x7d, 0xf6, 0x0d, 0x57, 0x9a, 0x33, 0x45, 0x65, 0x3e, 0xb6, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1023 = { .name = "xdh_wei25519_1023", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1023_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1023_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1023_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1023_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 506 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1024 for XDH, tcId is 507 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1024_peerpubkey[] = { 0x6c, 0x00, 0x44, 0xcd, 0x10, 0x57, 0x8c, 0x5a, 0xff, 0x1f, 0xf4, 0x91, 0x7b, 0x04, 0x1b, 0x76, 0xc9, 0xa9, 0xae, 0x23, 0x66, 0x4e, 0xb8, 0xcf, 0x97, 0x8b, 0xd7, 0xaa, 0x19, 0x2c, 0xf2, 0x49, }; static const unsigned char xdh_wei25519_1024_ourpubkey[] = { 0x05, 0xb2, 0x79, 0xb6, 0xcb, 0x44, 0xf4, 0xa6, 0x66, 0xc0, 0x60, 0x28, 0x9e, 0x09, 0x5e, 0x0c, 0x18, 0xd0, 0x3e, 0x0d, 0x6a, 0xf7, 0xc5, 0x86, 0x15, 0xe0, 0x3b, 0xb2, 0x3e, 0x1e, 0x4c, 0x0b, }; static const unsigned char xdh_wei25519_1024_privkey[] = { 0x70, 0x89, 0x65, 0x4b, 0xaa, 0xcb, 0xb6, 0x5b, 0xd0, 0x0c, 0xd8, 0xcb, 0x9d, 0xe4, 0x68, 0x0e, 0x74, 0x80, 0x75, 0xe8, 0x84, 0x2c, 0xa6, 0x9d, 0x44, 0x8f, 0xb5, 0x0f, 0xea, 0x85, 0xe7, 0x4e, }; static const unsigned char xdh_wei25519_1024_sharedsecret[] = { 0x0d, 0x8c, 0x21, 0xfa, 0x80, 0x0e, 0xe6, 0x3c, 0xe5, 0xe4, 0x73, 0xd4, 0xc2, 0x97, 0x54, 0x95, 0x06, 0x2d, 0x8a, 0xfa, 0x65, 0x50, 0x91, 0x12, 0x2c, 0xb4, 0x17, 0x99, 0xd3, 0x74, 0x59, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1024 = { .name = "xdh_wei25519_1024", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1024_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1024_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1024_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1024_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 507 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1025 for XDH, tcId is 508 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1025_peerpubkey[] = { 0xd9, 0x08, 0x9d, 0xe9, 0x02, 0xe1, 0x43, 0xdc, 0xd9, 0x10, 0x7e, 0x5a, 0x33, 0x93, 0xa3, 0xf7, 0xfe, 0x05, 0xd9, 0x26, 0xc3, 0x57, 0xb4, 0x7e, 0x30, 0x7a, 0x23, 0x6c, 0xb5, 0x90, 0xfd, 0x64, }; static const unsigned char xdh_wei25519_1025_ourpubkey[] = { 0x6d, 0x92, 0xf2, 0x4b, 0x9d, 0x92, 0xf5, 0x05, 0x61, 0xcc, 0xde, 0x99, 0x55, 0x2e, 0xd3, 0x47, 0xf9, 0x13, 0x31, 0x60, 0xe1, 0x2f, 0xc8, 0x26, 0x10, 0x2f, 0xb1, 0xe9, 0xaa, 0xcc, 0x45, 0x53, }; static const unsigned char xdh_wei25519_1025_privkey[] = { 0x80, 0x89, 0x78, 0x4c, 0x52, 0xcd, 0x67, 0xe4, 0x53, 0x6e, 0x56, 0x82, 0x18, 0xc7, 0xb7, 0x03, 0x3b, 0x28, 0x41, 0x3f, 0x94, 0x2f, 0xca, 0x24, 0xed, 0x69, 0xe4, 0x34, 0x96, 0xef, 0xa1, 0x4b, }; static const unsigned char xdh_wei25519_1025_sharedsecret[] = { 0xdb, 0x6f, 0xec, 0x44, 0xbf, 0x11, 0x83, 0x16, 0xa6, 0xbd, 0xfb, 0xae, 0x9a, 0xf4, 0x47, 0xba, 0xed, 0xe4, 0xd8, 0x2d, 0xaa, 0x16, 0xbe, 0xd5, 0x96, 0xea, 0x6f, 0x05, 0xd4, 0xa5, 0x14, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1025 = { .name = "xdh_wei25519_1025", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1025_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1025_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1025_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1025_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 508 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1026 for XDH, tcId is 509 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1026_peerpubkey[] = { 0x8c, 0x4a, 0x26, 0xaa, 0x31, 0x9c, 0x2c, 0xc4, 0xa4, 0x15, 0x8c, 0x2b, 0xc6, 0x9a, 0x0d, 0x5b, 0x34, 0x0b, 0x60, 0x62, 0x8a, 0x14, 0xcf, 0x31, 0xbb, 0x0a, 0xe5, 0xdd, 0xc3, 0x8a, 0xe8, 0x66, }; static const unsigned char xdh_wei25519_1026_ourpubkey[] = { 0xc4, 0x3a, 0x1d, 0xd9, 0x52, 0x82, 0xb2, 0x19, 0xe7, 0x7f, 0xf4, 0x5c, 0x48, 0x21, 0x6e, 0xca, 0xc9, 0x7b, 0xe0, 0xbd, 0x19, 0x33, 0x71, 0x16, 0x11, 0x5e, 0xb4, 0xef, 0x9b, 0x1a, 0x23, 0x2a, }; static const unsigned char xdh_wei25519_1026_privkey[] = { 0x00, 0xe7, 0x3e, 0x4e, 0x01, 0x31, 0x48, 0xb9, 0xf0, 0x52, 0x73, 0xba, 0xd6, 0x26, 0xbb, 0x12, 0x6a, 0x40, 0xec, 0x45, 0x58, 0xf5, 0x42, 0x50, 0x96, 0xb4, 0x89, 0x47, 0xe0, 0xa9, 0xde, 0x4a, }; static const unsigned char xdh_wei25519_1026_sharedsecret[] = { 0xec, 0xc1, 0x20, 0x4b, 0xc7, 0x53, 0xc4, 0xce, 0xc4, 0xc9, 0x05, 0x9f, 0xd7, 0xb5, 0x04, 0x94, 0x4e, 0xbf, 0x99, 0x5a, 0xb1, 0xb1, 0xd4, 0x9f, 0x0b, 0x3b, 0x32, 0x53, 0x53, 0xbe, 0x3a, 0x15, }; static const wycheproof_xdh_test xdh_wei25519_1026 = { .name = "xdh_wei25519_1026", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1026_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1026_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1026_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1026_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 509 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1027 for XDH, tcId is 510 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1027_peerpubkey[] = { 0xce, 0x72, 0x95, 0xd1, 0x22, 0x7c, 0x90, 0x62, 0xaa, 0xb9, 0xcf, 0x02, 0xfc, 0x56, 0x71, 0xfb, 0x81, 0x63, 0x2e, 0x72, 0x53, 0x67, 0xf1, 0x31, 0xd4, 0x12, 0x28, 0x24, 0xa6, 0x13, 0x2d, 0x68, }; static const unsigned char xdh_wei25519_1027_ourpubkey[] = { 0xc7, 0x28, 0xfa, 0xac, 0xf4, 0x13, 0xc2, 0x6f, 0xc9, 0xc3, 0x5f, 0x20, 0x34, 0x6d, 0x4f, 0xae, 0xb0, 0x51, 0x8b, 0xf9, 0xf6, 0x12, 0x7e, 0xed, 0x44, 0xd8, 0xe3, 0x5d, 0xeb, 0xe3, 0x5c, 0x3c, }; static const unsigned char xdh_wei25519_1027_privkey[] = { 0x78, 0xed, 0x4c, 0x9b, 0xf9, 0xf4, 0x4d, 0xb8, 0xd9, 0x33, 0x88, 0x98, 0x51, 0x91, 0xec, 0xf5, 0x92, 0x26, 0xb9, 0xc1, 0x20, 0x5f, 0xe7, 0xe7, 0x62, 0xc3, 0x27, 0x58, 0x1c, 0x75, 0x88, 0x4e, }; static const unsigned char xdh_wei25519_1027_sharedsecret[] = { 0x37, 0x40, 0xde, 0x29, 0x7f, 0xf0, 0x12, 0x20, 0x67, 0x95, 0x1e, 0x89, 0x85, 0x24, 0x71, 0x23, 0x44, 0x0e, 0x0f, 0x27, 0x17, 0x1d, 0xa9, 0x9e, 0x26, 0x3d, 0x5b, 0x44, 0x50, 0xf5, 0x9f, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1027 = { .name = "xdh_wei25519_1027", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1027_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1027_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1027_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1027_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 510 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1028 for XDH, tcId is 511 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1028_peerpubkey[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const unsigned char xdh_wei25519_1028_ourpubkey[] = { 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1028_privkey[] = { 0xa0, 0x23, 0xcd, 0xd0, 0x83, 0xef, 0x5b, 0xb8, 0x2f, 0x10, 0xd6, 0x2e, 0x59, 0xe1, 0x5a, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, }; static const unsigned char xdh_wei25519_1028_sharedsecret[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1028 = { .name = "xdh_wei25519_1028", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1028_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1028_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1028_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1028_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "private key == -1 (mod order), tcId is 511 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1029 for XDH, tcId is 512 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1029_peerpubkey[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const unsigned char xdh_wei25519_1029_ourpubkey[] = { 0x5d, 0x76, 0xba, 0x95, 0x7b, 0x3e, 0x56, 0x6b, 0xf8, 0x1f, 0xdb, 0x6e, 0xce, 0x9f, 0x7d, 0xdf, 0xe6, 0x23, 0xa4, 0x41, 0x18, 0xdb, 0x33, 0xfa, 0xfb, 0x9a, 0xa7, 0x08, 0x5e, 0x9c, 0x06, 0x2a, }; static const unsigned char xdh_wei25519_1029_privkey[] = { 0x58, 0x08, 0x3d, 0xd2, 0x61, 0xad, 0x91, 0xef, 0xf9, 0x52, 0x32, 0x2e, 0xc8, 0x24, 0xc6, 0x82, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1029_sharedsecret[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1029 = { .name = "xdh_wei25519_1029", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1029_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1029_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1029_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1029_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 512 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1030 for XDH, tcId is 513 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1030_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_1030_ourpubkey[] = { 0xba, 0xed, 0x89, 0x88, 0x16, 0xe2, 0x60, 0xd3, 0x2d, 0x04, 0x4b, 0x95, 0x27, 0x09, 0xac, 0xae, 0x17, 0xa1, 0x14, 0x2b, 0xaf, 0xd5, 0x8a, 0x1f, 0x73, 0x4c, 0x62, 0x01, 0x53, 0x73, 0x5a, 0x15, }; static const unsigned char xdh_wei25519_1030_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1030_sharedsecret[] = { 0x63, 0xef, 0x7d, 0x1c, 0x58, 0x64, 0x76, 0xec, 0x78, 0xbb, 0x7f, 0x74, 0x7e, 0x32, 0x1e, 0x01, 0x10, 0x21, 0x66, 0xbf, 0x96, 0x7a, 0x9e, 0xa9, 0xba, 0x97, 0x41, 0xf4, 0x9d, 0x43, 0x95, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1030 = { .name = "xdh_wei25519_1030", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1030_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1030_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1030_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1030_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 513 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1031 for XDH, tcId is 514 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1031_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_1031_ourpubkey[] = { 0xba, 0xed, 0x89, 0x88, 0x16, 0xe2, 0x60, 0xd3, 0x2d, 0x04, 0x4b, 0x95, 0x27, 0x09, 0xac, 0xae, 0x17, 0xa1, 0x14, 0x2b, 0xaf, 0xd5, 0x8a, 0x1f, 0x73, 0x4c, 0x62, 0x01, 0x53, 0x73, 0x5a, 0x15, }; static const unsigned char xdh_wei25519_1031_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1031_sharedsecret[] = { 0x8b, 0x98, 0xef, 0x4d, 0x6b, 0xf3, 0x0d, 0xf7, 0xf8, 0x8e, 0x58, 0xd5, 0x15, 0x05, 0xd3, 0x7e, 0xd6, 0x84, 0x5a, 0x96, 0x9f, 0xe5, 0x98, 0x74, 0x7c, 0x03, 0x3d, 0xcd, 0x08, 0x01, 0x40, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1031 = { .name = "xdh_wei25519_1031", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1031_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1031_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1031_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1031_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 514 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1032 for XDH, tcId is 515 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1032_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_1032_ourpubkey[] = { 0xba, 0xed, 0x89, 0x88, 0x16, 0xe2, 0x60, 0xd3, 0x2d, 0x04, 0x4b, 0x95, 0x27, 0x09, 0xac, 0xae, 0x17, 0xa1, 0x14, 0x2b, 0xaf, 0xd5, 0x8a, 0x1f, 0x73, 0x4c, 0x62, 0x01, 0x53, 0x73, 0x5a, 0x15, }; static const unsigned char xdh_wei25519_1032_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1032_sharedsecret[] = { 0xcf, 0xa8, 0x3e, 0x09, 0x88, 0x29, 0xfe, 0x82, 0xfd, 0x4c, 0x14, 0x35, 0x5f, 0x70, 0x82, 0x90, 0x15, 0x21, 0x99, 0x42, 0xc0, 0x1e, 0x2b, 0x85, 0xbd, 0xd9, 0xac, 0x48, 0x89, 0xec, 0x29, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1032 = { .name = "xdh_wei25519_1032", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1032_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1032_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1032_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1032_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 515 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1033 for XDH, tcId is 516 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1033_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_1033_ourpubkey[] = { 0x97, 0xd6, 0x55, 0x2c, 0x6d, 0x8f, 0x78, 0xf4, 0x1f, 0x1c, 0xbc, 0xe8, 0x80, 0x5d, 0x8f, 0xb6, 0x5c, 0x93, 0x24, 0x52, 0xbf, 0xb6, 0x44, 0x72, 0xfb, 0x5c, 0x8d, 0xf4, 0x73, 0x70, 0x25, 0x73, }; static const unsigned char xdh_wei25519_1033_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1033_sharedsecret[] = { 0x47, 0x82, 0x03, 0x6d, 0x6b, 0x13, 0x6c, 0xa4, 0x4a, 0x2f, 0xd7, 0x67, 0x4d, 0x8a, 0xfb, 0x01, 0x69, 0x94, 0x32, 0x30, 0xac, 0x8e, 0xab, 0x51, 0x60, 0xa2, 0x12, 0x37, 0x6c, 0x06, 0xd7, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_1033 = { .name = "xdh_wei25519_1033", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1033_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1033_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1033_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1033_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 516 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1034 for XDH, tcId is 517 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1034_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_1034_ourpubkey[] = { 0x97, 0xd6, 0x55, 0x2c, 0x6d, 0x8f, 0x78, 0xf4, 0x1f, 0x1c, 0xbc, 0xe8, 0x80, 0x5d, 0x8f, 0xb6, 0x5c, 0x93, 0x24, 0x52, 0xbf, 0xb6, 0x44, 0x72, 0xfb, 0x5c, 0x8d, 0xf4, 0x73, 0x70, 0x25, 0x73, }; static const unsigned char xdh_wei25519_1034_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1034_sharedsecret[] = { 0x65, 0xfc, 0x1e, 0x74, 0x53, 0xa3, 0xf8, 0xc7, 0xeb, 0xcd, 0x57, 0x7a, 0xde, 0x4b, 0x8e, 0xfe, 0x10, 0x35, 0xef, 0xc1, 0x81, 0xab, 0x3b, 0xdb, 0x2f, 0xcc, 0x74, 0x84, 0xcb, 0xcf, 0x1e, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1034 = { .name = "xdh_wei25519_1034", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1034_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1034_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1034_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1034_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 517 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1035 for XDH, tcId is 518 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1035_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_1035_ourpubkey[] = { 0x97, 0xd6, 0x55, 0x2c, 0x6d, 0x8f, 0x78, 0xf4, 0x1f, 0x1c, 0xbc, 0xe8, 0x80, 0x5d, 0x8f, 0xb6, 0x5c, 0x93, 0x24, 0x52, 0xbf, 0xb6, 0x44, 0x72, 0xfb, 0x5c, 0x8d, 0xf4, 0x73, 0x70, 0x25, 0x73, }; static const unsigned char xdh_wei25519_1035_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1035_sharedsecret[] = { 0xe3, 0xc6, 0x49, 0xbe, 0xae, 0x7c, 0xc4, 0xa0, 0x69, 0x8d, 0x51, 0x9a, 0x0a, 0x61, 0x93, 0x2e, 0xe5, 0x49, 0x3c, 0xbb, 0x59, 0x0d, 0xbe, 0x14, 0xdb, 0x02, 0x74, 0xcc, 0x86, 0x11, 0xf9, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1035 = { .name = "xdh_wei25519_1035", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1035_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1035_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1035_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1035_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 518 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1036 for XDH, tcId is 519 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1036_peerpubkey[] = { 0xe7, 0x9d, 0x33, 0xf8, 0x8a, 0x5e, 0xa8, 0x6d, 0xaa, 0x7e, 0xea, 0xb0, 0xeb, 0x03, 0x38, 0x3a, 0xdf, 0x79, 0x37, 0x20, 0x76, 0xb1, 0x55, 0x07, 0x16, 0x2e, 0x50, 0x99, 0x8b, 0x00, 0xa8, 0x56, }; static const unsigned char xdh_wei25519_1036_ourpubkey[] = { 0x91, 0x94, 0xf5, 0x85, 0xd4, 0x53, 0x05, 0x88, 0xaf, 0x44, 0xc6, 0xa8, 0x05, 0xf0, 0x25, 0x46, 0x72, 0x91, 0xdb, 0x13, 0xd4, 0xf1, 0x0e, 0x41, 0xa9, 0xce, 0xdb, 0xd7, 0xf9, 0x7a, 0x9b, 0x5f, }; static const unsigned char xdh_wei25519_1036_privkey[] = { 0xb8, 0x14, 0xbc, 0x99, 0x70, 0xe6, 0x59, 0x0e, 0xc4, 0xe7, 0x60, 0x8d, 0xd1, 0x58, 0x08, 0x3a, 0x91, 0xe6, 0x7a, 0x61, 0xab, 0xc3, 0x43, 0x0f, 0x70, 0x78, 0x2e, 0xd1, 0x73, 0x3d, 0x97, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1036 = { .name = "xdh_wei25519_1036", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1036_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1036_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1036_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-256, tcId is 519 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1037 for XDH, tcId is 520 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1037_peerpubkey[] = { 0xd1, 0x63, 0xa0, 0x91, 0xc4, 0x04, 0x7e, 0xf2, 0x09, 0xc7, 0x5d, 0x05, 0xcb, 0xed, 0x76, 0xff, 0x4f, 0x0c, 0xb5, 0xd6, 0x88, 0xc6, 0x08, 0x1a, 0xd4, 0x3c, 0x80, 0x02, 0x59, 0x1c, 0x30, 0x35, 0x00, 0x4c, 0x85, 0x03, 0xc8, 0x60, 0x36, 0xaa, 0xa5, 0x85, 0xe1, 0x9f, 0x44, 0x5a, 0x27, 0x5f, }; static const unsigned char xdh_wei25519_1037_ourpubkey[] = { 0x54, 0x3d, 0x5c, 0x9f, 0xd0, 0x34, 0xd7, 0x75, 0x55, 0x89, 0xe5, 0x5d, 0xe6, 0xaa, 0xb9, 0xa7, 0xa4, 0xc4, 0x6c, 0x82, 0xa9, 0x61, 0x49, 0x86, 0x82, 0x71, 0x04, 0xed, 0x08, 0x79, 0x6d, 0x3a, }; static const unsigned char xdh_wei25519_1037_privkey[] = { 0x88, 0x1e, 0x8e, 0xeb, 0x1a, 0x19, 0x02, 0x19, 0x62, 0x11, 0x6d, 0xb2, 0x2a, 0xa2, 0xc4, 0x2f, 0x57, 0xf9, 0xf3, 0xd2, 0x94, 0x2d, 0xec, 0xe8, 0x38, 0x96, 0x08, 0x23, 0x6a, 0x6e, 0xd3, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1037 = { .name = "xdh_wei25519_1037", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1037_peerpubkey, .peerpubkeylen = 48, .ourpubkey = xdh_wei25519_1037_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1037_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-384, tcId is 520 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1038 for XDH, tcId is 521 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1038_peerpubkey[] = { 0x00, 0x6d, 0x48, 0x81, 0x9a, 0x8a, 0x97, 0x42, 0x80, 0x7a, 0x0a, 0x4f, 0x2b, 0x30, 0x6f, 0x64, 0x08, 0xbc, 0xcc, 0x55, 0x94, 0x61, 0xd1, 0x83, 0x26, 0x9f, 0xee, 0x98, 0x1e, 0xb5, 0x9a, 0x74, 0x35, 0x40, 0x0e, 0xc4, 0xeb, 0x2f, 0x85, 0x8c, 0xc2, 0xe8, 0x12, 0x77, 0x33, 0x3b, 0x95, 0xdf, 0xbb, 0x55, 0x46, 0xec, 0xc2, 0x1e, 0x1c, 0x0e, 0x33, 0x2d, 0x23, 0x02, 0x7a, 0x8a, 0x84, 0xb3, 0x04, 0x22, }; static const unsigned char xdh_wei25519_1038_ourpubkey[] = { 0xfb, 0xf6, 0xdf, 0xf1, 0x7d, 0x26, 0xe9, 0xae, 0xa7, 0xc5, 0x6e, 0xf7, 0xbd, 0x04, 0x51, 0x5e, 0x85, 0xc7, 0xd2, 0xd2, 0xfa, 0xe6, 0x86, 0x55, 0x70, 0x77, 0xb1, 0xb6, 0x1e, 0x3d, 0xa9, 0x21, }; static const unsigned char xdh_wei25519_1038_privkey[] = { 0x08, 0x21, 0x71, 0x9f, 0x98, 0xcd, 0xa7, 0xd9, 0x0d, 0x00, 0xb6, 0x01, 0xe8, 0x74, 0xb9, 0xf7, 0x80, 0x7f, 0x1c, 0x80, 0xfe, 0xba, 0x00, 0x2d, 0xe1, 0xc1, 0x1a, 0x59, 0x65, 0x32, 0x2a, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1038 = { .name = "xdh_wei25519_1038", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1038_peerpubkey, .peerpubkeylen = 66, .ourpubkey = xdh_wei25519_1038_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1038_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-521, tcId is 521 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1039 for XDH, tcId is 522 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1039_peerpubkey[] = { 0x8e, 0x69, 0x6d, 0x9b, 0xfa, 0x30, 0xfd, 0x3a, 0xd2, 0xda, 0x68, 0xa1, 0x2c, 0x07, 0xe7, 0x86, 0xaf, 0x24, 0x01, 0xd2, 0xfc, 0x75, 0x57, 0xed, 0x2b, 0x0a, 0x2a, 0x50, 0x2f, 0xe3, 0x01, 0x99, }; static const unsigned char xdh_wei25519_1039_ourpubkey[] = { 0xac, 0x72, 0x43, 0x1e, 0x0c, 0x40, 0x8c, 0x33, 0xa2, 0xea, 0x7f, 0xc3, 0x3e, 0xae, 0x43, 0xfd, 0x4b, 0x01, 0x21, 0xd2, 0xe2, 0x19, 0x50, 0x28, 0x25, 0x2a, 0xaf, 0xe4, 0x31, 0x71, 0xde, 0x12, }; static const unsigned char xdh_wei25519_1039_privkey[] = { 0xb0, 0x16, 0x47, 0x9f, 0x4f, 0x74, 0xd6, 0x18, 0xcf, 0x8d, 0x44, 0x48, 0x96, 0x4c, 0xb1, 0xdc, 0x73, 0x87, 0x60, 0xb7, 0x0a, 0xe9, 0x00, 0xf6, 0x5e, 0xa6, 0xed, 0xa4, 0x1d, 0xbb, 0x23, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1039 = { .name = "xdh_wei25519_1039", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1039_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1039_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1039_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-256K, tcId is 522 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1040 for XDH, tcId is 523 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1040_peerpubkey[] = { 0x53, 0xd3, 0x3c, 0xfa, 0xf9, 0xc4, 0xb4, 0xe8, 0x37, 0x6e, 0xd2, 0x40, 0xd2, 0x84, 0xcb, 0xc8, 0x94, 0xae, 0xca, 0xe9, 0x84, 0xad, 0xf7, 0xaf, 0x7d, 0xc2, 0xdc, 0x33, 0x5c, 0x34, 0x96, 0xba, 0xb4, 0x53, 0xd2, 0x2e, 0x77, 0x2d, 0xba, 0x08, 0xd5, 0xd4, 0x4a, 0xee, 0xe7, 0x63, 0xd3, 0x39, 0xf1, 0x15, 0x5b, 0x36, 0xd7, 0x07, 0xcf, 0x29, }; static const unsigned char xdh_wei25519_1040_ourpubkey[] = { 0xc9, 0x50, 0xe6, 0xc3, 0xb9, 0xfd, 0x99, 0x81, 0x00, 0x66, 0x3a, 0x25, 0x94, 0x27, 0x44, 0x7e, 0x9d, 0xfb, 0x9f, 0x82, 0xe5, 0x16, 0x3a, 0x25, 0xbb, 0x10, 0x26, 0x14, 0x8c, 0x1d, 0xbc, 0x36, }; static const unsigned char xdh_wei25519_1040_privkey[] = { 0xc8, 0x6b, 0xb5, 0xd8, 0x1c, 0xdc, 0xac, 0xb6, 0xea, 0x20, 0x39, 0xf3, 0x31, 0xde, 0x9d, 0xec, 0x15, 0x7d, 0x40, 0xbe, 0xe3, 0x47, 0x09, 0x40, 0x4e, 0xe8, 0x1f, 0xcb, 0x7f, 0x26, 0xd7, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1040 = { .name = "xdh_wei25519_1040", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1040_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei25519_1040_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1040_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for secp256k1, tcId is 523 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1041 for XDH, tcId is 524 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1041_peerpubkey[] = { 0xd6, 0x6f, 0x0e, 0x7b, 0x00, 0xe8, 0x49, 0x66, 0x10, 0x3a, 0x23, 0xf8, 0x3d, 0x24, 0x66, 0xdd, 0xf3, 0x79, 0x35, 0x2c, 0x15, 0x0e, 0xab, 0xb5, 0xbb, 0xe5, 0x4d, 0xb7, 0x70, 0x4d, 0x76, 0x20, }; static const unsigned char xdh_wei25519_1041_ourpubkey[] = { 0x2a, 0x79, 0x77, 0x4b, 0xd2, 0xd1, 0x6f, 0xa2, 0x2d, 0x0d, 0x90, 0x03, 0x0e, 0x25, 0x38, 0x95, 0x69, 0x18, 0x4c, 0x02, 0xb2, 0x70, 0x83, 0xda, 0x50, 0xe1, 0xc0, 0x24, 0x5e, 0x7d, 0x19, 0x0d, }; static const unsigned char xdh_wei25519_1041_privkey[] = { 0xf0, 0xfd, 0xc5, 0x00, 0x3d, 0xe0, 0x5b, 0x82, 0x41, 0x6f, 0x21, 0x4f, 0x09, 0xf2, 0x27, 0x44, 0x4b, 0x9b, 0x7a, 0x0d, 0x6f, 0xfe, 0x96, 0x2c, 0xf3, 0xd9, 0x9f, 0x0e, 0x0d, 0x44, 0xf3, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1041 = { .name = "xdh_wei25519_1041", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1041_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1041_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1041_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 524 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1042 for XDH, tcId is 525 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1042_peerpubkey[] = { 0x06, 0xa3, 0x46, 0x9a, 0x5d, 0xe5, 0x1a, 0xf3, 0x9d, 0xfe, 0x16, 0x6d, 0x66, 0xb4, 0xb1, 0xf5, 0x19, 0x25, 0x7f, 0xbe, 0xf9, 0x38, 0xd9, 0xa2, 0xef, 0x6a, 0xfa, 0x17, 0xf1, 0x85, 0xe1, 0x28, }; static const unsigned char xdh_wei25519_1042_ourpubkey[] = { 0xc5, 0xed, 0x24, 0xc9, 0xab, 0xe5, 0x03, 0x30, 0x46, 0x63, 0x74, 0x33, 0xfd, 0xc6, 0x7e, 0x99, 0xd7, 0x2e, 0x9d, 0xee, 0xd2, 0x04, 0xaf, 0x84, 0x0b, 0x14, 0xbb, 0xcc, 0xb4, 0xb8, 0x99, 0x3b, }; static const unsigned char xdh_wei25519_1042_privkey[] = { 0xa8, 0x6e, 0xfd, 0x98, 0xdd, 0x7d, 0x01, 0x32, 0x00, 0x47, 0xb7, 0xc0, 0xb1, 0x4f, 0x8d, 0x0b, 0x65, 0x25, 0xad, 0x35, 0xe9, 0xd4, 0xf6, 0x38, 0xc3, 0x23, 0x74, 0x71, 0x5f, 0xb1, 0x69, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1042 = { .name = "xdh_wei25519_1042", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1042_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1042_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1042_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 525 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1043 for XDH, tcId is 526 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1043_peerpubkey[] = { 0xea, 0x69, 0x0e, 0x43, 0x0f, 0xde, 0x05, 0xff, 0xbf, 0x08, 0xd1, 0xc7, 0x02, 0xc8, 0x79, 0xb7, 0x3e, 0x38, 0x57, 0xdc, 0xbd, 0x4c, 0xd4, 0xe6, 0x50, 0x74, 0xd9, 0xca, 0x8c, 0x0d, 0x02, 0x16, }; static const unsigned char xdh_wei25519_1043_ourpubkey[] = { 0x17, 0x86, 0x63, 0x1c, 0x22, 0x5c, 0x09, 0x00, 0x4f, 0xcf, 0x00, 0x1d, 0x2b, 0x13, 0x48, 0x01, 0x44, 0x1b, 0xb0, 0x19, 0x7c, 0x9e, 0x4e, 0xec, 0x2a, 0xff, 0x31, 0x0b, 0xdb, 0x90, 0x00, 0x32, }; static const unsigned char xdh_wei25519_1043_privkey[] = { 0x40, 0x30, 0xfe, 0x6c, 0x42, 0xea, 0x67, 0x07, 0x8d, 0x3b, 0x83, 0x08, 0x94, 0x00, 0xf3, 0xbc, 0xa9, 0x83, 0x56, 0x30, 0xfb, 0x35, 0x7e, 0x97, 0x88, 0x44, 0xa9, 0x51, 0x84, 0xbb, 0x85, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1043 = { .name = "xdh_wei25519_1043", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1043_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1043_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1043_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 526 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1044 for XDH, tcId is 527 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1044_peerpubkey[] = { 0x1a, 0x75, 0xbe, 0x49, 0xd4, 0x0e, 0xce, 0xcd, 0x9f, 0x2d, 0x5d, 0x9f, 0x86, 0xd6, 0x5a, 0xda, 0x80, 0xe7, 0xb1, 0x18, 0xe3, 0xe8, 0x6e, 0x45, 0x98, 0x3e, 0x4f, 0xf7, 0x74, 0xc7, 0x4e, 0x76, }; static const unsigned char xdh_wei25519_1044_ourpubkey[] = { 0x5a, 0x2c, 0xf0, 0x15, 0x68, 0xa1, 0xb2, 0xa8, 0x98, 0xad, 0xf6, 0x1c, 0x03, 0x5b, 0x26, 0x0a, 0xc1, 0xf8, 0x3a, 0x87, 0x01, 0x6d, 0x2f, 0x3a, 0xf8, 0x3d, 0xf1, 0x26, 0xef, 0x4a, 0xb4, 0x2c, }; static const unsigned char xdh_wei25519_1044_privkey[] = { 0xa0, 0x23, 0xb6, 0x89, 0x89, 0xc6, 0x38, 0x9e, 0xc1, 0xe0, 0xe7, 0x01, 0x1e, 0x50, 0xf8, 0x25, 0x03, 0x1a, 0x76, 0x85, 0x0d, 0x59, 0xeb, 0x06, 0xb1, 0x91, 0x23, 0x3d, 0x02, 0x13, 0x44, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1044 = { .name = "xdh_wei25519_1044", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1044_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1044_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1044_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 527 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1045 for XDH, tcId is 529 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1045_peerpubkey[] = { 0xc2, 0xa0, 0xc9, 0xf4, 0x69, 0x6a, 0x46, 0xc7, 0x99, 0xd9, 0x1d, 0x35, 0xdc, 0xff, 0x80, 0xb9, 0x96, 0x62, 0x79, 0x7d, 0x56, 0x9b, 0xd3, 0x12, 0xd2, 0x43, 0x3c, 0x67, 0x4e, 0x66, 0x2c, 0x27, }; static const unsigned char xdh_wei25519_1045_ourpubkey[] = { 0x21, 0x18, 0xbf, 0x27, 0xc4, 0xc9, 0x96, 0x83, 0x61, 0x4a, 0xe5, 0x7a, 0x21, 0x12, 0xf0, 0x54, 0xc6, 0x96, 0xe6, 0x5f, 0x5b, 0xbd, 0xfe, 0x4c, 0x2d, 0xca, 0xaa, 0x9f, 0x7d, 0xc4, 0xe4, 0x61, }; static const unsigned char xdh_wei25519_1045_privkey[] = { 0x20, 0x77, 0x13, 0xaa, 0x98, 0x54, 0x45, 0xcd, 0x32, 0x95, 0x55, 0x38, 0xb4, 0x6b, 0x46, 0xef, 0xca, 0x13, 0x09, 0xc5, 0x17, 0x72, 0xc8, 0x17, 0x1a, 0x3a, 0x08, 0xcd, 0xfb, 0x8a, 0x52, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1045 = { .name = "xdh_wei25519_1045", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1045_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1045_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1045_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "missing field kty, tcId is 529 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1046 for XDH, tcId is 530 in file x25519_jwk_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1046_peerpubkey[] = { 0xc2, 0xa0, 0xc9, 0xf4, 0x69, 0x6a, 0x46, 0xc7, 0x99, 0xd9, 0x1d, 0x35, 0xdc, 0xff, 0x80, 0xb9, 0x96, 0x62, 0x79, 0x7d, 0x56, 0x9b, 0xd3, 0x12, 0xd2, 0x43, 0x3c, 0x67, 0x4e, 0x66, 0x2c, 0x27, }; static const unsigned char xdh_wei25519_1046_ourpubkey[] = { 0x21, 0x18, 0xbf, 0x27, 0xc4, 0xc9, 0x96, 0x83, 0x61, 0x4a, 0xe5, 0x7a, 0x21, 0x12, 0xf0, 0x54, 0xc6, 0x96, 0xe6, 0x5f, 0x5b, 0xbd, 0xfe, 0x4c, 0x2d, 0xca, 0xaa, 0x9f, 0x7d, 0xc4, 0xe4, 0x61, }; static const unsigned char xdh_wei25519_1046_privkey[] = { 0x20, 0x77, 0x13, 0xaa, 0x98, 0x54, 0x45, 0xcd, 0x32, 0x95, 0x55, 0x38, 0xb4, 0x6b, 0x46, 0xef, 0xca, 0x13, 0x09, 0xc5, 0x17, 0x72, 0xc8, 0x17, 0x1a, 0x3a, 0x08, 0xcd, 0xfb, 0x8a, 0x52, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1046 = { .name = "xdh_wei25519_1046", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1046_peerpubkey, .peerpubkeylen = 32, .ourpubkey = xdh_wei25519_1046_ourpubkey, .ourpubkeylen = 32, .privkey = xdh_wei25519_1046_privkey, .privkeylen = 32, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "missing field crv, tcId is 530 in file x25519_jwk_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1047 for XDH, tcId is 1 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1047_peerpubkey[] = { 0x50, 0x4a, 0x36, 0x99, 0x9f, 0x48, 0x9c, 0xd2, 0xfd, 0xbc, 0x08, 0xba, 0xff, 0x3d, 0x88, 0xfa, 0x00, 0x56, 0x9b, 0xa9, 0x86, 0xcb, 0xa2, 0x25, 0x48, 0xff, 0xde, 0x80, 0xf9, 0x80, 0x68, 0x29, }; static const unsigned char xdh_wei25519_1047_privkey[] = { 0xc8, 0xa9, 0xd5, 0xa9, 0x10, 0x91, 0xad, 0x85, 0x1c, 0x66, 0x8b, 0x07, 0x36, 0xc1, 0xc9, 0xa0, 0x29, 0x36, 0xc0, 0xd3, 0xad, 0x62, 0x67, 0x08, 0x58, 0x08, 0x80, 0x47, 0xba, 0x05, 0x74, 0x75, }; static const unsigned char xdh_wei25519_1047_sharedsecret[] = { 0x43, 0x6a, 0x2c, 0x04, 0x0c, 0xf4, 0x5f, 0xea, 0x9b, 0x29, 0xa0, 0xcb, 0x81, 0xb1, 0xf4, 0x14, 0x58, 0xf8, 0x63, 0xd0, 0xd6, 0x1b, 0x45, 0x3d, 0x0a, 0x98, 0x27, 0x20, 0xd6, 0xd6, 0x13, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1047 = { .name = "xdh_wei25519_1047", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1047_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1047_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1047_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1048 for XDH, tcId is 2 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1048_peerpubkey[] = { 0x63, 0xaa, 0x40, 0xc6, 0xe3, 0x83, 0x46, 0xc5, 0xca, 0xf2, 0x3a, 0x6d, 0xf0, 0xa5, 0xe6, 0xc8, 0x08, 0x89, 0xa0, 0x86, 0x47, 0xe5, 0x51, 0xb3, 0x56, 0x34, 0x49, 0xbe, 0xfc, 0xfc, 0x97, 0x33, }; static const unsigned char xdh_wei25519_1048_privkey[] = { 0xd8, 0x5d, 0x8c, 0x06, 0x1a, 0x50, 0x80, 0x4a, 0xc4, 0x88, 0xad, 0x77, 0x4a, 0xc7, 0x16, 0xc3, 0xf5, 0xba, 0x71, 0x4b, 0x27, 0x12, 0xe0, 0x48, 0x49, 0x13, 0x79, 0xa5, 0x00, 0x21, 0x19, 0x58, }; static const unsigned char xdh_wei25519_1048_sharedsecret[] = { 0x27, 0x9d, 0xf6, 0x7a, 0x7c, 0x46, 0x11, 0xdb, 0x47, 0x08, 0xa0, 0xe8, 0x28, 0x2b, 0x19, 0x5e, 0x5a, 0xc0, 0xed, 0x6f, 0x4b, 0x2f, 0x29, 0x2c, 0x6f, 0xbd, 0x0a, 0xca, 0xc3, 0x0d, 0x13, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1048 = { .name = "xdh_wei25519_1048", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1048_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1048_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1048_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 2 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1049 for XDH, tcId is 3 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1049_peerpubkey[] = { 0x0f, 0x83, 0xc3, 0x6f, 0xde, 0xd9, 0xd3, 0x2f, 0xad, 0xf4, 0xef, 0xa3, 0xae, 0x93, 0xa9, 0x0b, 0xb5, 0xcf, 0xa6, 0x68, 0x93, 0xbc, 0x41, 0x2c, 0x43, 0xfa, 0x72, 0x87, 0xdb, 0xb9, 0x97, 0x79, }; static const unsigned char xdh_wei25519_1049_privkey[] = { 0xc8, 0xb4, 0x5b, 0xfd, 0x32, 0xe5, 0x53, 0x25, 0xd9, 0xfd, 0x64, 0x8c, 0xb3, 0x02, 0x84, 0x80, 0x39, 0x00, 0x0b, 0x39, 0x0e, 0x44, 0xd5, 0x21, 0xe5, 0x8a, 0xab, 0x3b, 0x29, 0xa6, 0x96, 0x4b, }; static const unsigned char xdh_wei25519_1049_sharedsecret[] = { 0x4b, 0xc7, 0xe0, 0x1e, 0x7d, 0x83, 0xd6, 0xcf, 0x67, 0x63, 0x2b, 0xf9, 0x00, 0x33, 0x48, 0x7a, 0x5f, 0xc2, 0x9e, 0xba, 0x53, 0x28, 0x89, 0x0e, 0xa7, 0xb1, 0x02, 0x6d, 0x23, 0xb9, 0xa4, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1049 = { .name = "xdh_wei25519_1049", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1049_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1049_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1049_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 3 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1050 for XDH, tcId is 4 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1050_peerpubkey[] = { 0x0b, 0x82, 0x11, 0xa2, 0xb6, 0x04, 0x90, 0x97, 0xf6, 0x87, 0x1c, 0x6c, 0x05, 0x2d, 0x3c, 0x5f, 0xc1, 0xba, 0x17, 0xda, 0x9e, 0x32, 0xae, 0x45, 0x84, 0x03, 0xb0, 0x5b, 0xb2, 0x83, 0x09, 0x2a, }; static const unsigned char xdh_wei25519_1050_privkey[] = { 0xf8, 0x76, 0xe3, 0x4b, 0xcb, 0xe1, 0xf4, 0x7f, 0xbc, 0x0f, 0xdd, 0xfd, 0x7c, 0x1e, 0x1a, 0xa5, 0x3d, 0x57, 0xbf, 0xe0, 0xf6, 0x6d, 0x24, 0x30, 0x67, 0xb4, 0x24, 0xbb, 0x62, 0x10, 0xbe, 0x51, }; static const unsigned char xdh_wei25519_1050_sharedsecret[] = { 0x11, 0x9d, 0x37, 0xed, 0x4b, 0x10, 0x9c, 0xbd, 0x64, 0x18, 0xb1, 0xf2, 0x8d, 0xea, 0x83, 0xc8, 0x36, 0xc8, 0x44, 0x71, 0x5c, 0xdf, 0x98, 0xa3, 0xa8, 0xc3, 0x62, 0x19, 0x1d, 0xeb, 0xd5, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1050 = { .name = "xdh_wei25519_1050", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1050_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1050_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1050_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 4 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1051 for XDH, tcId is 5 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1051_peerpubkey[] = { 0x34, 0x3a, 0xc2, 0x0a, 0x3b, 0x9c, 0x6a, 0x27, 0xb1, 0x00, 0x81, 0x76, 0x50, 0x9a, 0xd3, 0x07, 0x35, 0x85, 0x6e, 0xc1, 0xc8, 0xd8, 0xfc, 0xae, 0x13, 0x91, 0x2d, 0x08, 0xd1, 0x52, 0xf4, 0x6c, }; static const unsigned char xdh_wei25519_1051_privkey[] = { 0x00, 0x6a, 0xc1, 0xf3, 0xa6, 0x53, 0xa4, 0xcd, 0xb1, 0xd3, 0x7b, 0xba, 0x94, 0x73, 0x8f, 0x8b, 0x95, 0x7a, 0x57, 0xbe, 0xb2, 0x4d, 0x64, 0x6e, 0x99, 0x4d, 0xc2, 0x9a, 0x27, 0x6a, 0xad, 0x45, }; static const unsigned char xdh_wei25519_1051_sharedsecret[] = { 0xcc, 0x48, 0x73, 0xae, 0xd3, 0xfc, 0xee, 0x4b, 0x3a, 0xae, 0xa7, 0xf0, 0xd2, 0x07, 0x16, 0xb4, 0x27, 0x63, 0x59, 0x08, 0x1f, 0x63, 0x4b, 0x7b, 0xea, 0x4b, 0x70, 0x5b, 0xfc, 0x8a, 0x4d, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1051 = { .name = "xdh_wei25519_1051", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1051_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1051_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1051_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 5 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1052 for XDH, tcId is 6 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1052_peerpubkey[] = { 0xfa, 0x69, 0x5f, 0xc7, 0xbe, 0x8d, 0x1b, 0xe5, 0xbf, 0x70, 0x48, 0x98, 0xf3, 0x88, 0xc4, 0x52, 0xba, 0xfd, 0xd3, 0xb8, 0xea, 0xe8, 0x05, 0xf8, 0x68, 0x1a, 0x8d, 0x15, 0xc2, 0xd4, 0xe1, 0x42, }; static const unsigned char xdh_wei25519_1052_privkey[] = { 0x08, 0xda, 0x77, 0xb2, 0x6d, 0x06, 0xdf, 0xf9, 0xd9, 0xf7, 0xfd, 0x4c, 0x5b, 0x37, 0x69, 0xf8, 0xcd, 0xd5, 0xb3, 0x05, 0x16, 0xa5, 0xab, 0x80, 0x6b, 0xe3, 0x24, 0xff, 0x3e, 0xb6, 0x9e, 0x60, }; static const unsigned char xdh_wei25519_1052_sharedsecret[] = { 0xb6, 0xf8, 0xe2, 0xfc, 0xb1, 0xaf, 0xfc, 0x79, 0xe2, 0xff, 0x79, 0x83, 0x19, 0xb2, 0x70, 0x11, 0x39, 0xb9, 0x5a, 0xd6, 0xdd, 0x07, 0xf0, 0x5c, 0xba, 0xc7, 0x8b, 0xd8, 0x3e, 0xdf, 0xd9, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_1052 = { .name = "xdh_wei25519_1052", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1052_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1052_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1052_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 6 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1053 for XDH, tcId is 7 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1053_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1053_privkey[] = { 0xd0, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0x5f, }; static const unsigned char xdh_wei25519_1053_sharedsecret[] = { 0xb8, 0x7a, 0x17, 0x22, 0xcc, 0x6c, 0x1e, 0x2f, 0xee, 0xcb, 0x54, 0xe9, 0x7a, 0xbd, 0x5a, 0x22, 0xac, 0xc2, 0x76, 0x16, 0xf7, 0x8f, 0x6e, 0x31, 0x5f, 0xd2, 0xb7, 0x3d, 0x9f, 0x22, 0x1e, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1053 = { .name = "xdh_wei25519_1053", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1053_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1053_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1053_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 7 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1054 for XDH, tcId is 8 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1054_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1054_privkey[] = { 0xe0, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0x6a, }; static const unsigned char xdh_wei25519_1054_sharedsecret[] = { 0xa2, 0x9d, 0x8d, 0xad, 0x28, 0xd5, 0x90, 0xcd, 0x30, 0x17, 0xaa, 0x97, 0xa4, 0x76, 0x1f, 0x85, 0x1b, 0xf1, 0xd3, 0x67, 0x2b, 0x04, 0x2a, 0x42, 0x56, 0xa4, 0x58, 0x81, 0xe2, 0xad, 0x90, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1054 = { .name = "xdh_wei25519_1054", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1054_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1054_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1054_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 8 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1055 for XDH, tcId is 9 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1055_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1055_privkey[] = { 0xe0, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0x6f, }; static const unsigned char xdh_wei25519_1055_sharedsecret[] = { 0xe7, 0x03, 0xbc, 0x8a, 0xa9, 0x4b, 0x7d, 0x87, 0xba, 0x34, 0xe2, 0x67, 0x83, 0x53, 0xd1, 0x2c, 0xda, 0xaa, 0x1a, 0x97, 0xb5, 0xca, 0x3e, 0x1b, 0x8c, 0x06, 0x0c, 0x46, 0x36, 0x08, 0x7f, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1055 = { .name = "xdh_wei25519_1055", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1055_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1055_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1055_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 9 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1056 for XDH, tcId is 10 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1056_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1056_privkey[] = { 0xa8, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0x41, }; static const unsigned char xdh_wei25519_1056_sharedsecret[] = { 0xff, 0x5c, 0xf0, 0x41, 0xe9, 0x24, 0xdb, 0xe1, 0xa6, 0x4a, 0xc9, 0xbd, 0xba, 0x96, 0xbd, 0xcd, 0xfa, 0xf7, 0xd5, 0x9d, 0x91, 0xc7, 0xe3, 0x3e, 0x76, 0xed, 0x0e, 0x4c, 0x8c, 0x83, 0x64, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1056 = { .name = "xdh_wei25519_1056", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1056_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1056_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1056_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 10 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1057 for XDH, tcId is 11 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1057_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1057_privkey[] = { 0xa8, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0x7b, }; static const unsigned char xdh_wei25519_1057_sharedsecret[] = { 0xa9, 0x2a, 0x96, 0xfa, 0x02, 0x99, 0x60, 0xf9, 0x53, 0x0e, 0x6f, 0xe3, 0x7e, 0x24, 0x29, 0xcd, 0x11, 0x3b, 0xe4, 0xd8, 0xf3, 0xf4, 0x43, 0x1f, 0x85, 0x46, 0xe6, 0xc7, 0x63, 0x51, 0x47, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1057 = { .name = "xdh_wei25519_1057", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1057_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1057_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1057_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 11 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1058 for XDH, tcId is 12 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1058_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1058_privkey[] = { 0xd0, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0x7c, }; static const unsigned char xdh_wei25519_1058_sharedsecret[] = { 0x9f, 0x89, 0x54, 0x86, 0x81, 0x58, 0xec, 0x62, 0xb6, 0xb5, 0x86, 0xb8, 0xca, 0xe1, 0xd6, 0x7d, 0x1b, 0x9f, 0x4c, 0x03, 0xd5, 0xb3, 0xca, 0x03, 0x93, 0xce, 0xe7, 0x1a, 0xcc, 0xc9, 0xab, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1058 = { .name = "xdh_wei25519_1058", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1058_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1058_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1058_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 12 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1059 for XDH, tcId is 13 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1059_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1059_privkey[] = { 0xd0, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x4e, }; static const unsigned char xdh_wei25519_1059_sharedsecret[] = { 0x6c, 0xbf, 0x1d, 0xc9, 0xaf, 0x97, 0xbc, 0x14, 0x85, 0x13, 0xa1, 0x8b, 0xe4, 0xa2, 0x57, 0xde, 0x1a, 0x3b, 0x06, 0x55, 0x84, 0xdf, 0x94, 0xe8, 0xb4, 0x3c, 0x1a, 0xb8, 0x97, 0x20, 0xb1, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1059 = { .name = "xdh_wei25519_1059", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1059_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1059_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1059_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 13 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1060 for XDH, tcId is 14 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1060_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1060_privkey[] = { 0xa0, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0x44, }; static const unsigned char xdh_wei25519_1060_sharedsecret[] = { 0x38, 0x28, 0x4b, 0x70, 0x86, 0x09, 0x5a, 0x94, 0x06, 0x02, 0x8c, 0x1f, 0x80, 0x0c, 0x07, 0x1e, 0xa1, 0x06, 0x03, 0x9a, 0xd7, 0xa1, 0xd7, 0xf8, 0x2f, 0xe0, 0x09, 0x06, 0xfd, 0x90, 0x59, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1060 = { .name = "xdh_wei25519_1060", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1060_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1060_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1060_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 14 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1061 for XDH, tcId is 15 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1061_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1061_privkey[] = { 0xa8, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0x63, }; static const unsigned char xdh_wei25519_1061_sharedsecret[] = { 0xc7, 0x21, 0x04, 0x1d, 0xf0, 0x24, 0x40, 0x71, 0x79, 0x4a, 0x8d, 0xb0, 0x6b, 0x9f, 0x7e, 0xae, 0xec, 0x69, 0x0c, 0x25, 0x72, 0x65, 0x34, 0x36, 0x66, 0xf4, 0x41, 0x6f, 0x41, 0x66, 0x84, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1061 = { .name = "xdh_wei25519_1061", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1061_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1061_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1061_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 15 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1062 for XDH, tcId is 16 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1062_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1062_privkey[] = { 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0x50, }; static const unsigned char xdh_wei25519_1062_sharedsecret[] = { 0x25, 0xff, 0x9a, 0x66, 0x31, 0xb1, 0x43, 0xdb, 0xdb, 0xdc, 0x20, 0x7b, 0x38, 0xe3, 0x8f, 0x83, 0x2a, 0xe0, 0x79, 0xa5, 0x2a, 0x61, 0x8c, 0x53, 0x43, 0x22, 0xe7, 0x73, 0x45, 0xfd, 0x90, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1062 = { .name = "xdh_wei25519_1062", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1062_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1062_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1062_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 16 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1063 for XDH, tcId is 17 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1063_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1063_privkey[] = { 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0x70, }; static const unsigned char xdh_wei25519_1063_sharedsecret[] = { 0xf2, 0x94, 0xe7, 0x92, 0x2c, 0x6c, 0xea, 0x58, 0x7a, 0xef, 0xe7, 0x29, 0x11, 0x63, 0x0d, 0x50, 0xf2, 0x45, 0x6a, 0x2b, 0xa7, 0xf2, 0x12, 0x07, 0xd5, 0x7f, 0x1e, 0xcc, 0xe0, 0x4f, 0x62, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1063 = { .name = "xdh_wei25519_1063", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1063_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1063_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1063_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 17 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1064 for XDH, tcId is 18 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1064_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1064_privkey[] = { 0xe0, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0x4c, }; static const unsigned char xdh_wei25519_1064_sharedsecret[] = { 0xff, 0x47, 0x15, 0xbd, 0x8c, 0xf8, 0x47, 0xb7, 0x7c, 0x24, 0x4c, 0xe2, 0xd9, 0xb0, 0x08, 0xb1, 0x9e, 0xfa, 0xa8, 0xe8, 0x45, 0xfe, 0xb8, 0x5c, 0xe4, 0x88, 0x9b, 0x5b, 0x2c, 0x6a, 0x4b, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_1064 = { .name = "xdh_wei25519_1064", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1064_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1064_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1064_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 18 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1065 for XDH, tcId is 19 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1065_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1065_privkey[] = { 0x10, 0x5d, 0x62, 0x1e, 0x1e, 0xf3, 0x39, 0xc3, 0xd9, 0x92, 0x45, 0xcf, 0xb7, 0x7c, 0xd3, 0xa5, 0xbd, 0x0c, 0x44, 0x27, 0xa0, 0xe4, 0xd8, 0x75, 0x2c, 0x3b, 0x51, 0xf0, 0x45, 0x88, 0x9b, 0x4f, }; static const unsigned char xdh_wei25519_1065_sharedsecret[] = { 0x61, 0xea, 0xce, 0x52, 0xda, 0x5f, 0x5e, 0xce, 0xfa, 0xfa, 0x4f, 0x19, 0x9b, 0x07, 0x7f, 0xf6, 0x4f, 0x2e, 0x3d, 0x2a, 0x6e, 0xce, 0x6f, 0x8e, 0xc0, 0x49, 0x78, 0x26, 0xb2, 0x12, 0xef, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1065 = { .name = "xdh_wei25519_1065", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1065_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1065_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1065_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 19 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1066 for XDH, tcId is 20 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1066_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1066_privkey[] = { 0xd8, 0x8a, 0x44, 0x1e, 0x70, 0x6f, 0x60, 0x6a, 0xe7, 0xf6, 0x30, 0xf8, 0xb2, 0x1f, 0x3c, 0x25, 0x54, 0x73, 0x9e, 0x3e, 0x54, 0x9f, 0x80, 0x41, 0x18, 0xc0, 0x37, 0x71, 0xf6, 0x08, 0x01, 0x7b, }; static const unsigned char xdh_wei25519_1066_sharedsecret[] = { 0xff, 0x1b, 0x50, 0x9a, 0x0a, 0x1a, 0x54, 0x72, 0x60, 0x86, 0xf1, 0xe1, 0xc0, 0xac, 0xf0, 0x40, 0xab, 0x46, 0x3a, 0x2a, 0x54, 0x2e, 0x5d, 0x54, 0xe9, 0x2c, 0x6d, 0xf8, 0x12, 0x6c, 0xf6, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_1066 = { .name = "xdh_wei25519_1066", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1066_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1066_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1066_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 20 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1067 for XDH, tcId is 21 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1067_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1067_privkey[] = { 0x80, 0xbb, 0xad, 0x16, 0x82, 0x22, 0x27, 0x62, 0x00, 0xaa, 0xfd, 0x36, 0xf7, 0xf2, 0x5f, 0xdc, 0x02, 0x56, 0x32, 0xd8, 0xbf, 0x9f, 0x63, 0x54, 0xbb, 0x76, 0x2e, 0x06, 0xfb, 0x63, 0xe2, 0x50, }; static const unsigned char xdh_wei25519_1067_sharedsecret[] = { 0xf1, 0x34, 0xe6, 0x26, 0x7b, 0xf9, 0x39, 0x03, 0x08, 0x51, 0x17, 0xb9, 0x99, 0x32, 0xcc, 0x0c, 0x7b, 0xa2, 0x6f, 0x25, 0xfc, 0xa1, 0x21, 0x02, 0xa2, 0x6d, 0x75, 0x33, 0xd9, 0xc4, 0x27, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1067 = { .name = "xdh_wei25519_1067", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1067_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1067_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1067_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 21 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1068 for XDH, tcId is 22 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1068_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_1068_privkey[] = { 0x68, 0xe1, 0x34, 0x09, 0x2e, 0x94, 0xe6, 0x22, 0xc8, 0xa0, 0xcd, 0x18, 0xaf, 0xf5, 0x5b, 0xe2, 0x3d, 0xab, 0xd9, 0x94, 0xeb, 0xde, 0xe9, 0x82, 0xd9, 0x06, 0x01, 0xf6, 0xf0, 0xf4, 0xb3, 0x69, }; static const unsigned char xdh_wei25519_1068_sharedsecret[] = { 0x74, 0xbf, 0xc1, 0x5e, 0x55, 0x97, 0xe9, 0xf5, 0x19, 0x3f, 0x94, 0x1e, 0x10, 0xa5, 0xc0, 0x08, 0xfc, 0x89, 0xf0, 0x51, 0x39, 0x27, 0x23, 0x88, 0x6a, 0x4a, 0x8f, 0xe5, 0x09, 0x3a, 0x73, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1068 = { .name = "xdh_wei25519_1068", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1068_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1068_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1068_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 22 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1069 for XDH, tcId is 23 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1069_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_1069_privkey[] = { 0xe8, 0xe4, 0x3f, 0xc1, 0xeb, 0xac, 0x0b, 0xbc, 0x9b, 0x99, 0xc8, 0x03, 0x5e, 0xe1, 0xac, 0x59, 0xb9, 0x0f, 0x19, 0xa1, 0x6c, 0x42, 0xc0, 0xb9, 0x0f, 0x96, 0xad, 0xfc, 0xc5, 0xfd, 0xee, 0x78, }; static const unsigned char xdh_wei25519_1069_sharedsecret[] = { 0x0d, 0x41, 0xa5, 0xb3, 0xaf, 0x77, 0x0b, 0xf2, 0xfc, 0xd3, 0x4f, 0xf7, 0x97, 0x22, 0x43, 0xa0, 0xe2, 0xcf, 0x4d, 0x34, 0xf2, 0x04, 0x6a, 0x14, 0x45, 0x81, 0xae, 0x1e, 0xc6, 0x8d, 0xf0, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1069 = { .name = "xdh_wei25519_1069", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1069_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1069_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1069_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 23 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1070 for XDH, tcId is 24 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1070_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1070_privkey[] = { 0x18, 0xbf, 0xfb, 0x16, 0xf9, 0x26, 0x80, 0xa9, 0xe2, 0x67, 0x47, 0x3e, 0x43, 0xc4, 0x64, 0x47, 0x6d, 0x53, 0x72, 0xdd, 0xd1, 0xf6, 0x64, 0xf3, 0xd0, 0x67, 0x8e, 0xfe, 0x7c, 0x98, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_1070_sharedsecret[] = { 0x58, 0x94, 0xe0, 0x96, 0x35, 0x83, 0xae, 0x14, 0xa0, 0xb8, 0x04, 0x20, 0x89, 0x41, 0x67, 0xf4, 0xb7, 0x59, 0xc8, 0xd2, 0xeb, 0x9b, 0x69, 0xcb, 0x67, 0x55, 0x43, 0xf6, 0x65, 0x10, 0xf6, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1070 = { .name = "xdh_wei25519_1070", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1070_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1070_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1070_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 24 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1071 for XDH, tcId is 25 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1071_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1071_privkey[] = { 0x30, 0x03, 0x05, 0xeb, 0x00, 0x2b, 0xf8, 0x6c, 0x71, 0xfe, 0x9c, 0x0b, 0x31, 0x19, 0x93, 0x72, 0x7b, 0x9d, 0xc6, 0x18, 0xd0, 0xce, 0x72, 0x51, 0xd0, 0xdf, 0xd8, 0x55, 0x2d, 0x17, 0x90, 0x5d, }; static const unsigned char xdh_wei25519_1071_sharedsecret[] = { 0xf8, 0x62, 0x4d, 0x6e, 0x35, 0xe6, 0xc5, 0x48, 0xac, 0x47, 0x83, 0x2f, 0x2e, 0x5d, 0x15, 0x1a, 0x8e, 0x53, 0xb9, 0x29, 0x03, 0x63, 0xb2, 0x8d, 0x2a, 0xb8, 0xd8, 0x4a, 0xb7, 0xcb, 0x6a, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1071 = { .name = "xdh_wei25519_1071", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1071_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1071_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1071_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 25 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1072 for XDH, tcId is 26 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1072_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1072_privkey[] = { 0x80, 0xda, 0x9f, 0x02, 0x84, 0x22, 0x47, 0xd4, 0xad, 0xe5, 0xdd, 0xba, 0xc5, 0x1d, 0xbc, 0xe5, 0x5e, 0xa7, 0xdc, 0xa2, 0x84, 0x4e, 0x7f, 0x97, 0xab, 0x89, 0x87, 0xce, 0x7f, 0xd8, 0xbc, 0x71, }; static const unsigned char xdh_wei25519_1072_sharedsecret[] = { 0xbf, 0xe1, 0x83, 0xba, 0x3d, 0x41, 0x57, 0xa7, 0xb5, 0x3e, 0xf1, 0x78, 0x61, 0x3d, 0xb6, 0x19, 0xe2, 0x78, 0x00, 0xf8, 0x53, 0x59, 0xc0, 0xb3, 0x9a, 0x9f, 0xd6, 0xe3, 0x21, 0x52, 0xc2, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1072 = { .name = "xdh_wei25519_1072", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1072_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1072_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1072_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 26 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1073 for XDH, tcId is 27 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1073_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1073_privkey[] = { 0x80, 0x6e, 0x7f, 0x26, 0xca, 0x32, 0x46, 0xde, 0x81, 0x82, 0x94, 0x6c, 0xbe, 0xd0, 0x9f, 0x52, 0xb9, 0x5d, 0xa6, 0x26, 0xc8, 0x23, 0xc7, 0xb5, 0x04, 0x50, 0x00, 0x1a, 0x47, 0xb7, 0xb2, 0x52, }; static const unsigned char xdh_wei25519_1073_sharedsecret[] = { 0xbc, 0xa4, 0xa0, 0x72, 0x4f, 0x5c, 0x1f, 0xeb, 0x18, 0x40, 0x78, 0x44, 0x8c, 0x89, 0x8c, 0x86, 0x20, 0xe7, 0xca, 0xf8, 0x1f, 0x64, 0xcc, 0xa7, 0x46, 0xf5, 0x57, 0xdf, 0xf2, 0x49, 0x88, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1073 = { .name = "xdh_wei25519_1073", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1073_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1073_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1073_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 27 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1074 for XDH, tcId is 28 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1074_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1074_privkey[] = { 0x58, 0x35, 0x4f, 0xd6, 0x4b, 0xc0, 0x22, 0xcb, 0xa3, 0xa7, 0x1b, 0x2a, 0xe6, 0x42, 0x81, 0xe4, 0xea, 0x7b, 0xf6, 0xd6, 0x5f, 0xdb, 0xae, 0xad, 0x14, 0x40, 0xee, 0xb1, 0x86, 0x04, 0xfe, 0x62, }; static const unsigned char xdh_wei25519_1074_sharedsecret[] = { 0xb3, 0x41, 0x8a, 0x52, 0x46, 0x4c, 0x15, 0xab, 0x0c, 0xac, 0xbb, 0xd4, 0x38, 0x87, 0xa1, 0x19, 0x92, 0x06, 0xd5, 0x92, 0x29, 0xce, 0xd4, 0x92, 0x02, 0x30, 0x06, 0x38, 0xd7, 0xa4, 0x0f, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1074 = { .name = "xdh_wei25519_1074", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1074_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1074_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1074_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 28 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1075 for XDH, tcId is 29 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1075_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1075_privkey[] = { 0xf0, 0x01, 0x9c, 0xf0, 0x51, 0x59, 0x79, 0x4c, 0xc8, 0x05, 0x2b, 0x00, 0xc2, 0xe7, 0x5b, 0x7f, 0x46, 0xfb, 0x66, 0x93, 0xc4, 0xb3, 0x8c, 0x02, 0xb1, 0x2a, 0x4f, 0xe2, 0x72, 0xe8, 0x55, 0x6a, }; static const unsigned char xdh_wei25519_1075_sharedsecret[] = { 0xfc, 0xde, 0x6e, 0x0a, 0x3d, 0x5f, 0xd5, 0xb6, 0x3f, 0x10, 0xc2, 0xd3, 0xaa, 0xd4, 0xef, 0xa0, 0x51, 0x96, 0xf2, 0x6b, 0xc0, 0xcb, 0x26, 0xfd, 0x6d, 0x9d, 0x3b, 0xd0, 0x15, 0xea, 0xa7, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1075 = { .name = "xdh_wei25519_1075", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1075_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1075_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1075_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 29 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1076 for XDH, tcId is 30 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1076_peerpubkey[] = { 0xed, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1076_privkey[] = { 0xd0, 0xfc, 0xa6, 0x4c, 0xc5, 0xf3, 0xa0, 0xc8, 0xe7, 0x5c, 0x82, 0x4e, 0x8b, 0x09, 0xd1, 0x61, 0x5a, 0xa7, 0x9a, 0xeb, 0xa1, 0x39, 0xbb, 0x73, 0x02, 0xe2, 0xbb, 0x2f, 0xcb, 0xe5, 0x4b, 0x40, }; static const unsigned char xdh_wei25519_1076_sharedsecret[] = { 0x7d, 0x62, 0xf1, 0x89, 0x44, 0x4c, 0x62, 0x31, 0xa4, 0x8a, 0xfa, 0xb1, 0x0a, 0x0a, 0xf2, 0xee, 0xe4, 0xa5, 0x2e, 0x43, 0x1e, 0xa0, 0x5f, 0xf7, 0x81, 0xd6, 0x16, 0xaf, 0x21, 0x14, 0x67, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_1076 = { .name = "xdh_wei25519_1076", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1076_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1076_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1076_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 30 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1077 for XDH, tcId is 31 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1077_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1077_privkey[] = { 0xd0, 0x24, 0x56, 0xe4, 0x56, 0x91, 0x1d, 0x3c, 0x6c, 0xd0, 0x54, 0x93, 0x31, 0x99, 0x80, 0x77, 0x32, 0xdf, 0xdc, 0x95, 0x86, 0x42, 0xad, 0x1a, 0xeb, 0xe9, 0x00, 0xc7, 0x93, 0xbe, 0xf2, 0x4a, }; static const unsigned char xdh_wei25519_1077_sharedsecret[] = { 0x07, 0xba, 0x5f, 0xcb, 0xda, 0x21, 0xa9, 0xa1, 0x78, 0x45, 0xc4, 0x01, 0x49, 0x2b, 0x10, 0xe6, 0xde, 0x0a, 0x16, 0x8d, 0x5c, 0x94, 0xb6, 0x06, 0x69, 0x4c, 0x11, 0xba, 0xc3, 0x9b, 0xea, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1077 = { .name = "xdh_wei25519_1077", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1077_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1077_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1077_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 31 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1078 for XDH, tcId is 32 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1078_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1078_privkey[] = { 0x88, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0x5e, }; static const unsigned char xdh_wei25519_1078_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1078 = { .name = "xdh_wei25519_1078", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1078_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1078_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1078_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 0, tcId is 32 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1079 for XDH, tcId is 33 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1079_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1079_privkey[] = { 0x48, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0x4f, }; static const unsigned char xdh_wei25519_1079_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1079 = { .name = "xdh_wei25519_1079", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1079_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1079_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1079_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 1, tcId is 33 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1080 for XDH, tcId is 34 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1080_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1080_privkey[] = { 0xa8, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x5a, }; static const unsigned char xdh_wei25519_1080_sharedsecret[] = { 0x34, 0xb7, 0xe4, 0xfa, 0x53, 0x26, 0x44, 0x20, 0xd9, 0xf9, 0x43, 0xd1, 0x55, 0x13, 0x90, 0x23, 0x42, 0xb3, 0x86, 0xb1, 0x72, 0xa0, 0xb0, 0xb7, 0xc8, 0xb8, 0xf2, 0xdd, 0x3d, 0x66, 0x9f, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1080 = { .name = "xdh_wei25519_1080", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1080_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1080_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1080_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 34 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1081 for XDH, tcId is 35 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1081_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1081_privkey[] = { 0xd0, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0x7d, }; static const unsigned char xdh_wei25519_1081_sharedsecret[] = { 0x3a, 0xa2, 0x27, 0xa3, 0x07, 0x81, 0xed, 0x74, 0x6b, 0xd4, 0xb3, 0x36, 0x5e, 0x5f, 0x61, 0x46, 0x1b, 0x84, 0x4d, 0x09, 0x41, 0x0c, 0x70, 0x57, 0x0a, 0xbd, 0x0d, 0x75, 0x57, 0x4d, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1081 = { .name = "xdh_wei25519_1081", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1081_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1081_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1081_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 35 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1082 for XDH, tcId is 36 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1082_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1082_privkey[] = { 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0x6b, }; static const unsigned char xdh_wei25519_1082_sharedsecret[] = { 0x97, 0x75, 0x5e, 0x7e, 0x77, 0x57, 0x89, 0x18, 0x4e, 0x17, 0x68, 0x47, 0xff, 0xbc, 0x2f, 0x8e, 0xf9, 0x87, 0x99, 0xd4, 0x6a, 0x70, 0x9c, 0x6a, 0x1c, 0x0f, 0xfd, 0x29, 0x08, 0x1d, 0x70, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1082 = { .name = "xdh_wei25519_1082", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1082_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1082_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1082_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 36 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1083 for XDH, tcId is 37 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1083_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1083_privkey[] = { 0xd0, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0x75, }; static const unsigned char xdh_wei25519_1083_sharedsecret[] = { 0xc2, 0x12, 0xbf, 0xce, 0xb9, 0x1f, 0x85, 0x88, 0xd4, 0x6c, 0xd9, 0x46, 0x84, 0xc2, 0xc9, 0xee, 0x07, 0x34, 0x08, 0x77, 0x96, 0xdc, 0x0a, 0x9f, 0x34, 0x04, 0xff, 0x53, 0x40, 0x12, 0x12, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1083 = { .name = "xdh_wei25519_1083", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1083_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1083_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1083_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 37 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1084 for XDH, tcId is 38 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1084_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1084_privkey[] = { 0x38, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0x4d, }; static const unsigned char xdh_wei25519_1084_sharedsecret[] = { 0x38, 0x8f, 0xaf, 0xfb, 0x4a, 0x85, 0xd0, 0x67, 0x02, 0xba, 0x3e, 0x47, 0x9c, 0x6b, 0x21, 0x6a, 0x8f, 0x33, 0xef, 0xce, 0x05, 0x42, 0x97, 0x9b, 0xf1, 0x29, 0xd8, 0x60, 0xf9, 0x3b, 0x9f, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1084 = { .name = "xdh_wei25519_1084", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1084_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1084_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1084_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 38 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1085 for XDH, tcId is 39 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1085_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1085_privkey[] = { 0xe0, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0x7f, }; static const unsigned char xdh_wei25519_1085_sharedsecret[] = { 0x87, 0x7f, 0xec, 0x06, 0x69, 0xd8, 0xc1, 0xa5, 0xc8, 0x66, 0x64, 0x14, 0x20, 0xee, 0xa9, 0xf6, 0xbd, 0x1d, 0xfd, 0x38, 0xd3, 0x6a, 0x5d, 0x55, 0xa8, 0xc0, 0xab, 0x2b, 0xf3, 0x10, 0x5c, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1085 = { .name = "xdh_wei25519_1085", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1085_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1085_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1085_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 39 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1086 for XDH, tcId is 40 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1086_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1086_privkey[] = { 0xf0, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0x56, }; static const unsigned char xdh_wei25519_1086_sharedsecret[] = { 0x18, 0x03, 0x73, 0xea, 0x0f, 0x23, 0xea, 0x73, 0x44, 0x7e, 0x5a, 0x90, 0x39, 0x8a, 0x97, 0xd4, 0x90, 0xb5, 0x41, 0xc6, 0x93, 0x20, 0x71, 0x9d, 0x7d, 0xd7, 0x33, 0xfb, 0x80, 0xd5, 0x48, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1086 = { .name = "xdh_wei25519_1086", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1086_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1086_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1086_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 40 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1087 for XDH, tcId is 41 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1087_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1087_privkey[] = { 0xe8, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0x77, }; static const unsigned char xdh_wei25519_1087_sharedsecret[] = { 0x20, 0x81, 0x42, 0x35, 0x0a, 0xf9, 0x38, 0xab, 0xa5, 0x2a, 0x15, 0x6d, 0xce, 0x19, 0xd3, 0xc2, 0x7a, 0xb1, 0x62, 0x87, 0x29, 0x68, 0x3c, 0xf4, 0xef, 0x26, 0x67, 0xc3, 0xdc, 0x60, 0xcf, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_1087 = { .name = "xdh_wei25519_1087", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1087_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1087_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1087_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 41 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1088 for XDH, tcId is 42 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1088_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1088_privkey[] = { 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x54, }; static const unsigned char xdh_wei25519_1088_sharedsecret[] = { 0x1c, 0x32, 0x63, 0x89, 0x0f, 0x7a, 0x08, 0x1c, 0xef, 0xe5, 0x0c, 0xb9, 0x2a, 0xbd, 0x49, 0x65, 0x82, 0xd9, 0x0d, 0xcc, 0x2b, 0x9c, 0xb8, 0x58, 0xbd, 0x28, 0x68, 0x54, 0xaa, 0x6b, 0x0a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1088 = { .name = "xdh_wei25519_1088", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1088_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1088_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1088_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 42 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1089 for XDH, tcId is 43 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1089_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1089_privkey[] = { 0xa8, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0x63, }; static const unsigned char xdh_wei25519_1089_sharedsecret[] = { 0x56, 0x12, 0x8e, 0x78, 0xd7, 0xc6, 0x6f, 0x48, 0xe8, 0x63, 0xe7, 0xe6, 0xf2, 0xca, 0xa9, 0xc0, 0x98, 0x8f, 0xd4, 0x39, 0xde, 0xac, 0x11, 0xd4, 0xaa, 0xc9, 0x66, 0x40, 0x83, 0x08, 0x7f, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1089 = { .name = "xdh_wei25519_1089", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1089_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1089_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1089_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 43 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1090 for XDH, tcId is 44 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1090_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1090_privkey[] = { 0x98, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x4e, }; static const unsigned char xdh_wei25519_1090_sharedsecret[] = { 0x30, 0xec, 0xa5, 0x6f, 0x1f, 0x1c, 0x2e, 0x8f, 0xf7, 0x80, 0x13, 0x4e, 0x0e, 0x93, 0x82, 0xc5, 0x92, 0x7d, 0x30, 0x5d, 0x86, 0xb5, 0x34, 0x77, 0xe9, 0xae, 0xca, 0x79, 0xfc, 0x9c, 0xed, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_1090 = { .name = "xdh_wei25519_1090", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1090_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1090_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1090_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 44 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1091 for XDH, tcId is 45 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1091_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1091_privkey[] = { 0xd8, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x40, }; static const unsigned char xdh_wei25519_1091_sharedsecret[] = { 0xcb, 0x21, 0xb7, 0xaa, 0x3f, 0x99, 0x2e, 0xcf, 0xc9, 0x29, 0x54, 0x84, 0x91, 0x54, 0xb3, 0xaf, 0x6b, 0x96, 0xa0, 0x1f, 0x17, 0xbf, 0x21, 0xc6, 0x12, 0xda, 0x74, 0x8d, 0xb3, 0x8e, 0xb3, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1091 = { .name = "xdh_wei25519_1091", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1091_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1091_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1091_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 45 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1092 for XDH, tcId is 46 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1092_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1092_privkey[] = { 0xa0, 0x93, 0x3e, 0xe3, 0x05, 0x12, 0xb2, 0x5e, 0xe4, 0xe9, 0x00, 0xaa, 0xa0, 0x7f, 0x73, 0xe5, 0x07, 0xa8, 0xec, 0x53, 0xb5, 0x3a, 0x44, 0x62, 0x6e, 0x0f, 0x58, 0x9a, 0xf4, 0xe0, 0x35, 0x6c, }; static const unsigned char xdh_wei25519_1092_sharedsecret[] = { 0xc5, 0xca, 0xf8, 0xca, 0xbc, 0x36, 0xf0, 0x86, 0xde, 0xaf, 0x1a, 0xb2, 0x26, 0x43, 0x40, 0x98, 0xc2, 0x22, 0xab, 0xdf, 0x8a, 0xcd, 0x3c, 0xe7, 0x5c, 0x75, 0xe9, 0xde, 0xbb, 0x27, 0x15, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1092 = { .name = "xdh_wei25519_1092", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1092_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1092_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1092_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 46 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1093 for XDH, tcId is 47 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1093_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1093_privkey[] = { 0x38, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0x73, }; static const unsigned char xdh_wei25519_1093_sharedsecret[] = { 0x4d, 0x46, 0x05, 0x2c, 0x7e, 0xab, 0xba, 0x21, 0x5d, 0xf8, 0xd9, 0x13, 0x27, 0xe0, 0xc4, 0x61, 0x04, 0x21, 0xd2, 0xd9, 0x12, 0x9b, 0x14, 0x86, 0xd9, 0x14, 0xc7, 0x66, 0xcf, 0x10, 0x4c, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_1093 = { .name = "xdh_wei25519_1093", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1093_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1093_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1093_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 47 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1094 for XDH, tcId is 48 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1094_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const unsigned char xdh_wei25519_1094_privkey[] = { 0x18, 0x21, 0x91, 0xb7, 0x05, 0x2e, 0x9c, 0xd6, 0x30, 0xef, 0x08, 0x00, 0x7f, 0xc6, 0xb4, 0x3b, 0xc7, 0x65, 0x29, 0x13, 0xbe, 0x67, 0x74, 0xe2, 0xfd, 0x27, 0x1b, 0x71, 0xb9, 0x62, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_1094_sharedsecret[] = { 0xa0, 0xe0, 0x31, 0x51, 0x75, 0x78, 0x83, 0x62, 0xd4, 0xeb, 0xe0, 0x5e, 0x6a, 0xc7, 0x6d, 0x52, 0xd4, 0x01, 0x87, 0xbd, 0x68, 0x74, 0x92, 0xaf, 0x05, 0xab, 0xc7, 0xba, 0x7c, 0x70, 0x19, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1094 = { .name = "xdh_wei25519_1094", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1094_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1094_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1094_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 48 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1095 for XDH, tcId is 49 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1095_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, }; static const unsigned char xdh_wei25519_1095_privkey[] = { 0x10, 0x62, 0x21, 0xfe, 0x56, 0x94, 0xa7, 0x10, 0xd6, 0xe1, 0x47, 0x69, 0x6c, 0x5d, 0x5b, 0x93, 0xd6, 0x88, 0x7d, 0x58, 0x4f, 0x24, 0xf2, 0x28, 0x18, 0x2e, 0xbe, 0x1b, 0x1d, 0x2d, 0xb8, 0x5d, }; static const unsigned char xdh_wei25519_1095_sharedsecret[] = { 0x5e, 0x64, 0x92, 0x4b, 0x91, 0x87, 0x3b, 0x49, 0x9a, 0x54, 0x02, 0xfa, 0x64, 0x33, 0x7c, 0x65, 0xd4, 0xb2, 0xed, 0x54, 0xbe, 0xeb, 0x3f, 0xa5, 0xd7, 0x34, 0x78, 0x09, 0xe4, 0x3a, 0xef, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1095 = { .name = "xdh_wei25519_1095", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1095_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1095_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1095_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 49 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1096 for XDH, tcId is 50 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1096_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1096_privkey[] = { 0xd0, 0x35, 0xde, 0x94, 0x56, 0x08, 0x0d, 0x85, 0xa9, 0x12, 0x08, 0x3b, 0x2e, 0x3c, 0x7d, 0xdd, 0x79, 0x71, 0xf7, 0x86, 0xf2, 0x5a, 0x96, 0xc5, 0xe7, 0x82, 0xcf, 0x6f, 0x43, 0x76, 0xe3, 0x62, }; static const unsigned char xdh_wei25519_1096_sharedsecret[] = { 0xc0, 0x52, 0x46, 0x6f, 0x97, 0x12, 0xd9, 0xec, 0x4e, 0xf4, 0x0f, 0x27, 0x6b, 0xb7, 0xe6, 0x44, 0x1c, 0x54, 0x34, 0xa8, 0x3e, 0xfd, 0x8e, 0x41, 0xd2, 0x0c, 0xe8, 0x3f, 0x2d, 0xbf, 0x59, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1096 = { .name = "xdh_wei25519_1096", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1096_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1096_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1096_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 50 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1097 for XDH, tcId is 51 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1097_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1097_privkey[] = { 0xa8, 0xf3, 0x73, 0x18, 0xa4, 0xc7, 0x60, 0xf3, 0xcb, 0x2d, 0x89, 0x48, 0x22, 0x91, 0x87, 0x35, 0x68, 0x3c, 0xb1, 0xed, 0xac, 0xf3, 0xe6, 0x66, 0xe1, 0x56, 0x94, 0x15, 0x49, 0x78, 0xfd, 0x6d, }; static const unsigned char xdh_wei25519_1097_sharedsecret[] = { 0xd1, 0x51, 0xb9, 0x7c, 0xba, 0x9c, 0x25, 0xd4, 0x8e, 0x6d, 0x57, 0x63, 0x38, 0xb9, 0x7d, 0x53, 0xdd, 0x8b, 0x25, 0xe8, 0x4f, 0x65, 0xf7, 0xa2, 0x09, 0x1a, 0x17, 0x01, 0x63, 0x17, 0xc5, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1097 = { .name = "xdh_wei25519_1097", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1097_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1097_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1097_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 51 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1098 for XDH, tcId is 52 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1098_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1098_privkey[] = { 0x20, 0xd4, 0xd6, 0x24, 0xcf, 0x73, 0x2f, 0x82, 0x6f, 0x09, 0xe8, 0x08, 0x80, 0x17, 0x74, 0x2f, 0x13, 0xf2, 0xda, 0x98, 0xf4, 0xdc, 0xf4, 0xb4, 0x05, 0x19, 0xad, 0xb7, 0x90, 0xce, 0xbf, 0x64, }; static const unsigned char xdh_wei25519_1098_sharedsecret[] = { 0x57, 0x16, 0x29, 0x6b, 0xaf, 0x2b, 0x1a, 0x6b, 0x9c, 0xd1, 0x5b, 0x23, 0xba, 0x86, 0x82, 0x97, 0x43, 0xd6, 0x0b, 0x03, 0x96, 0x56, 0x9b, 0xe1, 0xd5, 0xb4, 0x00, 0x14, 0xc0, 0x6b, 0x47, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1098 = { .name = "xdh_wei25519_1098", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1098_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1098_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1098_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 52 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1099 for XDH, tcId is 53 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1099_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1099_privkey[] = { 0xd8, 0x06, 0xa7, 0x35, 0xd1, 0x38, 0xef, 0xb3, 0xb4, 0x04, 0x68, 0x3c, 0x9d, 0x84, 0x48, 0x5a, 0xb4, 0xaf, 0x54, 0x0d, 0x0a, 0xf2, 0x53, 0xb5, 0x74, 0x32, 0x3d, 0x89, 0x13, 0x00, 0x3c, 0x66, }; static const unsigned char xdh_wei25519_1099_sharedsecret[] = { 0xdd, 0xbd, 0x56, 0xd0, 0x45, 0x4b, 0x79, 0x4c, 0x1d, 0x1d, 0x49, 0x23, 0xf0, 0x23, 0xa5, 0x1f, 0x6f, 0x34, 0xef, 0x3f, 0x48, 0x68, 0xe3, 0xd6, 0x65, 0x93, 0x07, 0xc6, 0x83, 0xc7, 0x41, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1099 = { .name = "xdh_wei25519_1099", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1099_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1099_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1099_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 53 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1100 for XDH, tcId is 54 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1100_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1100_privkey[] = { 0x18, 0x41, 0x98, 0xc6, 0x22, 0x81, 0x77, 0xf3, 0xef, 0x41, 0xdc, 0x9a, 0x34, 0x12, 0x58, 0xf8, 0x18, 0x1a, 0xe3, 0x65, 0xfe, 0x9e, 0xc9, 0x8d, 0x93, 0x63, 0x9b, 0x0b, 0xbe, 0xe1, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_1100_sharedsecret[] = { 0x80, 0x39, 0xee, 0xbe, 0xd1, 0xa4, 0xf3, 0xb8, 0x11, 0xea, 0x92, 0x10, 0x2a, 0x62, 0x67, 0xd4, 0xda, 0x41, 0x23, 0x70, 0xf3, 0xf0, 0xd6, 0xb7, 0x0f, 0x1f, 0xaa, 0xa2, 0xe8, 0xd5, 0x23, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1100 = { .name = "xdh_wei25519_1100", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1100_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1100_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1100_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 54 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1101 for XDH, tcId is 55 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1101_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1101_privkey[] = { 0xf0, 0xa4, 0x6a, 0x7f, 0x4b, 0x98, 0x9f, 0xe5, 0x15, 0xed, 0xc4, 0x41, 0x10, 0x93, 0x46, 0xba, 0x74, 0x6e, 0xc1, 0x51, 0x68, 0x96, 0xec, 0x5b, 0x7e, 0x4f, 0x4d, 0x90, 0x30, 0x64, 0xb4, 0x63, }; static const unsigned char xdh_wei25519_1101_sharedsecret[] = { 0xb6, 0x95, 0x24, 0xe3, 0x95, 0x5d, 0xa2, 0x3d, 0xf6, 0xad, 0x1a, 0x7c, 0xd3, 0x85, 0x40, 0x04, 0x7f, 0x50, 0x86, 0x0f, 0x1c, 0x8f, 0xde, 0xd9, 0xb1, 0xfd, 0xfc, 0xc9, 0xe8, 0x12, 0xa0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1101 = { .name = "xdh_wei25519_1101", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1101_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1101_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1101_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 55 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1102 for XDH, tcId is 56 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1102_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1102_privkey[] = { 0x88, 0x18, 0x74, 0xfd, 0xa3, 0xa9, 0x9c, 0x0f, 0x02, 0x16, 0xe1, 0x17, 0x2f, 0xbd, 0x07, 0xab, 0x1c, 0x7d, 0xf7, 0x86, 0x02, 0xcc, 0x6b, 0x11, 0x26, 0x4e, 0x57, 0xaa, 0xb5, 0xf2, 0x3a, 0x49, }; static const unsigned char xdh_wei25519_1102_sharedsecret[] = { 0xe4, 0x17, 0xbb, 0x88, 0x54, 0xf3, 0xb4, 0xf7, 0x0e, 0xce, 0xa5, 0x57, 0x45, 0x4c, 0x5c, 0x4e, 0x5f, 0x38, 0x04, 0xae, 0x53, 0x79, 0x60, 0xa8, 0x09, 0x7b, 0x9f, 0x33, 0x84, 0x10, 0xd7, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1102 = { .name = "xdh_wei25519_1102", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1102_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1102_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1102_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 56 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1103 for XDH, tcId is 57 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1103_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1103_privkey[] = { 0xb8, 0xd0, 0xf1, 0xae, 0x05, 0xa5, 0x07, 0x28, 0x31, 0x44, 0x31, 0x50, 0xe2, 0x02, 0xac, 0x6d, 0xb0, 0x03, 0x22, 0xcd, 0xf3, 0x41, 0xf4, 0x67, 0xe9, 0xf2, 0x96, 0x58, 0x8b, 0x04, 0xdb, 0x72, }; static const unsigned char xdh_wei25519_1103_sharedsecret[] = { 0xaf, 0xca, 0x72, 0xbb, 0x8e, 0xf7, 0x27, 0xb6, 0x0c, 0x53, 0x0c, 0x93, 0x7a, 0x2f, 0x7d, 0x06, 0xbb, 0x39, 0xc3, 0x9b, 0x90, 0x3a, 0x7f, 0x44, 0x35, 0xb3, 0xf5, 0xd8, 0xfc, 0x1c, 0xa8, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1103 = { .name = "xdh_wei25519_1103", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1103_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1103_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1103_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 57 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1104 for XDH, tcId is 58 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1104_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1104_privkey[] = { 0xc8, 0x61, 0x9b, 0xa9, 0x88, 0x85, 0x9d, 0xb7, 0xd6, 0xf2, 0x0f, 0xbf, 0x3f, 0xfb, 0x8b, 0x11, 0x34, 0x18, 0xcc, 0x27, 0x80, 0x65, 0xb4, 0xe8, 0xbb, 0x6d, 0x4e, 0x5b, 0x3e, 0x7c, 0xb5, 0x69, }; static const unsigned char xdh_wei25519_1104_sharedsecret[] = { 0x7e, 0x41, 0xc2, 0x88, 0x6f, 0xed, 0x4a, 0xf0, 0x4c, 0x16, 0x41, 0xa5, 0x9a, 0xf9, 0x38, 0x02, 0xf2, 0x5a, 0xf0, 0xf9, 0xcb, 0xa7, 0xa2, 0x9a, 0xe7, 0x2e, 0x2a, 0x92, 0xf3, 0x5a, 0x1e, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1104 = { .name = "xdh_wei25519_1104", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1104_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1104_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1104_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 58 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1105 for XDH, tcId is 59 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1105_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1105_privkey[] = { 0xf8, 0xd4, 0xca, 0x1f, 0x37, 0xa3, 0x0e, 0xc9, 0xac, 0xd6, 0xdb, 0xe5, 0xa6, 0xe1, 0x50, 0xe5, 0xbc, 0x44, 0x7d, 0x22, 0xb3, 0x55, 0xd8, 0x0b, 0xa0, 0x02, 0xc5, 0xb0, 0x5c, 0x26, 0x93, 0x5d, }; static const unsigned char xdh_wei25519_1105_sharedsecret[] = { 0xdd, 0x3a, 0xbd, 0x47, 0x46, 0xbf, 0x4f, 0x2a, 0x0d, 0x93, 0xc0, 0x2a, 0x7d, 0x19, 0xf7, 0x6d, 0x92, 0x1c, 0x09, 0x0d, 0x07, 0xe6, 0xea, 0x5a, 0xba, 0xe7, 0xf2, 0x88, 0x48, 0x35, 0x59, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_1105 = { .name = "xdh_wei25519_1105", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1105_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1105_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1105_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 59 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1106 for XDH, tcId is 60 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1106_peerpubkey[] = { 0xed, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1106_privkey[] = { 0x88, 0x03, 0x7a, 0xc8, 0xe3, 0x3c, 0x72, 0xc2, 0xc5, 0x10, 0x37, 0xc7, 0xc8, 0xc5, 0x28, 0x8b, 0xba, 0x92, 0x65, 0xc8, 0x2f, 0xd8, 0xc3, 0x17, 0x96, 0xdd, 0x7e, 0xa5, 0xdf, 0x9a, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_1106_sharedsecret[] = { 0x8c, 0x27, 0xb3, 0xbf, 0xf8, 0xd3, 0xc1, 0xf6, 0xda, 0xf2, 0xd3, 0xb7, 0xb3, 0x47, 0x9c, 0xf9, 0xad, 0x20, 0x56, 0xe2, 0x00, 0x2b, 0xe2, 0x47, 0x99, 0x2a, 0x3b, 0x29, 0xde, 0x13, 0xa6, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1106 = { .name = "xdh_wei25519_1106", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1106_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1106_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1106_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 60 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1107 for XDH, tcId is 61 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1107_peerpubkey[] = { 0xed, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1107_privkey[] = { 0x50, 0x34, 0xee, 0x7b, 0xf8, 0x3a, 0x13, 0xd9, 0x16, 0x7d, 0xf8, 0x6b, 0x06, 0x40, 0x29, 0x4f, 0x36, 0x20, 0xf4, 0xf4, 0xd9, 0x03, 0x0e, 0x5e, 0x29, 0x3f, 0x91, 0x90, 0x82, 0x4a, 0xe5, 0x62, }; static const unsigned char xdh_wei25519_1107_sharedsecret[] = { 0x8e, 0x1d, 0x22, 0x07, 0xb4, 0x74, 0x32, 0xf8, 0x81, 0x67, 0x74, 0x48, 0xb9, 0xd4, 0x26, 0xa3, 0x0d, 0xe1, 0xa1, 0xf3, 0xfd, 0x38, 0xca, 0xd6, 0xf4, 0xb2, 0x3d, 0xbd, 0xfe, 0x8a, 0x29, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1107 = { .name = "xdh_wei25519_1107", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1107_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1107_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1107_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 61 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1108 for XDH, tcId is 62 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1108_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1108_privkey[] = { 0x40, 0xbd, 0x4e, 0x1c, 0xaf, 0x39, 0xd9, 0xde, 0xf7, 0x66, 0x38, 0x23, 0x50, 0x2d, 0xad, 0x3e, 0x7d, 0x30, 0xeb, 0x6e, 0xb0, 0x1e, 0x9b, 0x89, 0x51, 0x6d, 0x4f, 0x2f, 0x45, 0xb7, 0xcd, 0x7f, }; static const unsigned char xdh_wei25519_1108_sharedsecret[] = { 0x2c, 0xf6, 0x97, 0x4b, 0x0c, 0x07, 0x0e, 0x37, 0x07, 0xbf, 0x92, 0xe7, 0x21, 0xd3, 0xea, 0x9d, 0xe3, 0xdb, 0x6f, 0x61, 0xed, 0x81, 0x0e, 0x0a, 0x23, 0xd7, 0x2d, 0x43, 0x33, 0x65, 0xf6, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1108 = { .name = "xdh_wei25519_1108", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1108_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1108_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1108_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 62 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1109 for XDH, tcId is 63 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1109_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1109_privkey[] = { 0xe0, 0xf9, 0x78, 0xdf, 0xcd, 0x3a, 0x8f, 0x1a, 0x50, 0x93, 0x41, 0x8d, 0xe5, 0x41, 0x36, 0xa5, 0x84, 0xc2, 0x0b, 0x7b, 0x34, 0x9a, 0xfd, 0xf6, 0xc0, 0x52, 0x08, 0x86, 0xf9, 0x5b, 0x12, 0x72, }; static const unsigned char xdh_wei25519_1109_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1109 = { .name = "xdh_wei25519_1109", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1109_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1109_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1109_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 63 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1110 for XDH, tcId is 64 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1110_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1110_privkey[] = { 0x38, 0x73, 0x55, 0xd9, 0x95, 0x61, 0x60, 0x90, 0x50, 0x3a, 0xaf, 0xad, 0x49, 0xda, 0x01, 0xfb, 0x3d, 0xc3, 0xed, 0xa9, 0x62, 0x70, 0x4e, 0xae, 0xe6, 0xb8, 0x6f, 0x9e, 0x20, 0xc9, 0x25, 0x79, }; static const unsigned char xdh_wei25519_1110_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1110 = { .name = "xdh_wei25519_1110", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1110_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1110_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1110_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 64 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1111 for XDH, tcId is 65 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1111_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1111_privkey[] = { 0xc8, 0xfe, 0x0d, 0xf9, 0x2a, 0xe6, 0x8a, 0x03, 0x02, 0x3f, 0xc0, 0xc9, 0xad, 0xb9, 0x55, 0x7d, 0x31, 0xbe, 0x7f, 0xee, 0xd0, 0xd3, 0xab, 0x36, 0xc5, 0x58, 0x14, 0x3d, 0xaf, 0x4d, 0xbb, 0x40, }; static const unsigned char xdh_wei25519_1111_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1111 = { .name = "xdh_wei25519_1111", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1111_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1111_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1111_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 65 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1112 for XDH, tcId is 66 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1112_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_1112_privkey[] = { 0xc8, 0xd7, 0x4a, 0xcd, 0xe5, 0x93, 0x4e, 0x64, 0xb9, 0x89, 0x5d, 0x5f, 0xf7, 0xaf, 0xbf, 0xfd, 0x7f, 0x70, 0x4f, 0x7d, 0xfc, 0xcf, 0xf7, 0xac, 0x28, 0xfa, 0x62, 0xa1, 0xe6, 0x41, 0x03, 0x47, }; static const unsigned char xdh_wei25519_1112_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1112 = { .name = "xdh_wei25519_1112", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1112_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1112_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1112_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 66 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1113 for XDH, tcId is 67 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1113_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_1113_privkey[] = { 0xb8, 0x56, 0x49, 0xd5, 0x12, 0x0e, 0x01, 0xe8, 0xcc, 0xaf, 0x7b, 0x2f, 0xb8, 0xd8, 0x1b, 0x62, 0xe8, 0xad, 0x6f, 0x3d, 0x5c, 0x05, 0x53, 0xfd, 0xde, 0x19, 0x06, 0xcb, 0x9d, 0x79, 0xc0, 0x50, }; static const unsigned char xdh_wei25519_1113_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1113 = { .name = "xdh_wei25519_1113", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1113_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1113_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1113_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 67 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1114 for XDH, tcId is 68 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1114_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1114_privkey[] = { 0x20, 0x64, 0xb2, 0xf4, 0xc9, 0xdc, 0x97, 0xec, 0x7c, 0xf5, 0x89, 0x32, 0xfd, 0xfa, 0x32, 0x65, 0xba, 0x6e, 0xa4, 0xd1, 0x1f, 0x02, 0x59, 0xb8, 0xef, 0xc8, 0xaf, 0xb3, 0x5d, 0xb8, 0x8c, 0x48, }; static const unsigned char xdh_wei25519_1114_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1114 = { .name = "xdh_wei25519_1114", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1114_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1114_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1114_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 68 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1115 for XDH, tcId is 69 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1115_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1115_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1115_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1115 = { .name = "xdh_wei25519_1115", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1115_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1115_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1115_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 69 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1116 for XDH, tcId is 70 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1116_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1116_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1116_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1116 = { .name = "xdh_wei25519_1116", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1116_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1116_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1116_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 70 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1117 for XDH, tcId is 71 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1117_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1117_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1117_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1117 = { .name = "xdh_wei25519_1117", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1117_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1117_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1117_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 71 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1118 for XDH, tcId is 72 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1118_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1118_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1118_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1118 = { .name = "xdh_wei25519_1118", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1118_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1118_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1118_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 72 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1119 for XDH, tcId is 73 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1119_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1119_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1119_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1119 = { .name = "xdh_wei25519_1119", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1119_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1119_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1119_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 73 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1120 for XDH, tcId is 74 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1120_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1120_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1120_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1120 = { .name = "xdh_wei25519_1120", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1120_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1120_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1120_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 74 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1121 for XDH, tcId is 75 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1121_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1121_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1121_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1121 = { .name = "xdh_wei25519_1121", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1121_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1121_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1121_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 75 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1122 for XDH, tcId is 76 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1122_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1122_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1122_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1122 = { .name = "xdh_wei25519_1122", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1122_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1122_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1122_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 76 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1123 for XDH, tcId is 77 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1123_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1123_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1123_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1123 = { .name = "xdh_wei25519_1123", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1123_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1123_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1123_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 77 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1124 for XDH, tcId is 78 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1124_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1124_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1124_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1124 = { .name = "xdh_wei25519_1124", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1124_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1124_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1124_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 78 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1125 for XDH, tcId is 79 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1125_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_1125_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1125_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1125 = { .name = "xdh_wei25519_1125", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1125_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1125_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1125_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 79 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1126 for XDH, tcId is 80 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1126_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_1126_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1126_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1126 = { .name = "xdh_wei25519_1126", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1126_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1126_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1126_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 80 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1127 for XDH, tcId is 81 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1127_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1127_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1127_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1127 = { .name = "xdh_wei25519_1127", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1127_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1127_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1127_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 81 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1128 for XDH, tcId is 82 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1128_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1128_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1128_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1128 = { .name = "xdh_wei25519_1128", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1128_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1128_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1128_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 82 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1129 for XDH, tcId is 83 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1129_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1129_privkey[] = { 0x40, 0xff, 0x58, 0x6e, 0x73, 0xd6, 0x1f, 0x09, 0x60, 0xdc, 0x2d, 0x76, 0x3a, 0xc1, 0x9e, 0x98, 0x22, 0x5f, 0x11, 0x94, 0xf6, 0xfe, 0x43, 0xd5, 0xdd, 0x97, 0xad, 0x55, 0xb3, 0xd3, 0x59, 0x61, }; static const unsigned char xdh_wei25519_1129_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1129 = { .name = "xdh_wei25519_1129", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1129_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1129_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1129_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819949, tcId is 83 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1130 for XDH, tcId is 84 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1130_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1130_privkey[] = { 0x58, 0x4f, 0xce, 0xae, 0xba, 0xe9, 0x44, 0xbf, 0xe9, 0x3b, 0x2e, 0x0d, 0x0a, 0x57, 0x5f, 0x70, 0x6c, 0xe5, 0xad, 0xa1, 0xda, 0x2b, 0x13, 0x11, 0xc3, 0xb4, 0x21, 0xf9, 0x18, 0x6c, 0x7a, 0x6f, }; static const unsigned char xdh_wei25519_1130_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1130 = { .name = "xdh_wei25519_1130", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1130_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1130_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1130_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819950, tcId is 84 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1131 for XDH, tcId is 85 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1131_peerpubkey[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1131_privkey[] = { 0x00, 0x16, 0xb6, 0x2a, 0xf5, 0xca, 0xbd, 0xe8, 0xc4, 0x09, 0x38, 0xeb, 0xf2, 0x10, 0x8e, 0x05, 0xd2, 0x7f, 0xa0, 0x53, 0x3e, 0xd8, 0x5d, 0x70, 0x01, 0x5a, 0xd4, 0xad, 0x39, 0x76, 0x2d, 0x54, }; static const unsigned char xdh_wei25519_1131_sharedsecret[] = { 0xb4, 0xd1, 0x0e, 0x83, 0x27, 0x14, 0x97, 0x2f, 0x96, 0xbd, 0x33, 0x82, 0xe4, 0xd0, 0x82, 0xa2, 0x1a, 0x83, 0x33, 0xa1, 0x63, 0x15, 0xb3, 0xff, 0xb5, 0x36, 0x06, 0x1d, 0x24, 0x82, 0x36, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1131 = { .name = "xdh_wei25519_1131", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1131_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1131_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1131_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 85 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1132 for XDH, tcId is 86 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1132_peerpubkey[] = { 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1132_privkey[] = { 0xd8, 0x36, 0x50, 0xba, 0x7c, 0xec, 0x11, 0x58, 0x81, 0x91, 0x62, 0x55, 0xe3, 0xfa, 0x5f, 0xa0, 0xd6, 0xb8, 0xdc, 0xf9, 0x68, 0x73, 0x1b, 0xd2, 0xc9, 0xd2, 0xae, 0xc3, 0xf5, 0x61, 0xf6, 0x49, }; static const unsigned char xdh_wei25519_1132_sharedsecret[] = { 0x51, 0x5e, 0xac, 0x8f, 0x1e, 0xd0, 0xb0, 0x0c, 0x70, 0x76, 0x23, 0x22, 0xc3, 0xef, 0x86, 0x71, 0x6c, 0xd2, 0xc5, 0x1f, 0xe7, 0x7c, 0xec, 0x3d, 0x31, 0xb6, 0x38, 0x8b, 0xc6, 0xee, 0xa3, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_1132 = { .name = "xdh_wei25519_1132", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1132_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1132_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1132_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 86 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1133 for XDH, tcId is 87 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1133_peerpubkey[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1133_privkey[] = { 0x88, 0xdd, 0x14, 0xe2, 0x71, 0x1e, 0xbd, 0x0b, 0x00, 0x26, 0xc6, 0x51, 0x26, 0x4c, 0xa9, 0x65, 0xe7, 0xe3, 0xda, 0x50, 0x82, 0x78, 0x9f, 0xba, 0xb7, 0xe2, 0x44, 0x25, 0xe7, 0xb4, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_1133_sharedsecret[] = { 0x69, 0x19, 0x99, 0x2d, 0x6a, 0x59, 0x1e, 0x77, 0xb3, 0xf2, 0xba, 0xcb, 0xd7, 0x4c, 0xaf, 0x3a, 0xea, 0x4b, 0xe4, 0x80, 0x2b, 0x18, 0xb2, 0xbc, 0x07, 0xeb, 0x09, 0xad, 0xe3, 0xad, 0x66, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1133 = { .name = "xdh_wei25519_1133", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1133_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1133_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1133_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 87 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1134 for XDH, tcId is 88 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1134_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1134_privkey[] = { 0x98, 0xc2, 0xb0, 0x8c, 0xba, 0xc1, 0x4e, 0x15, 0x95, 0x31, 0x54, 0xe3, 0xb5, 0x58, 0xd4, 0x2b, 0xb1, 0x26, 0x8a, 0x36, 0x5b, 0x0e, 0xf2, 0xf2, 0x27, 0x25, 0x12, 0x9d, 0x8a, 0xc5, 0xcb, 0x7f, }; static const unsigned char xdh_wei25519_1134_sharedsecret[] = { 0x9c, 0x03, 0x4f, 0xcd, 0x8d, 0x3b, 0xf6, 0x99, 0x64, 0x95, 0x8c, 0x01, 0x05, 0x16, 0x1f, 0xcb, 0x5d, 0x1e, 0xa5, 0xb8, 0xf8, 0xab, 0xb3, 0x71, 0x49, 0x1e, 0x42, 0xa7, 0x68, 0x4c, 0x23, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1134 = { .name = "xdh_wei25519_1134", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1134_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1134_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1134_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 88 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1135 for XDH, tcId is 89 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1135_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1135_privkey[] = { 0xc0, 0x69, 0x7b, 0x6f, 0x05, 0xe0, 0xf3, 0x43, 0x3b, 0x44, 0xea, 0x35, 0x2f, 0x20, 0x50, 0x8e, 0xb0, 0x62, 0x30, 0x98, 0xa7, 0x77, 0x08, 0x53, 0xaf, 0x5c, 0xa0, 0x97, 0x27, 0x34, 0x0c, 0x4e, }; static const unsigned char xdh_wei25519_1135_sharedsecret[] = { 0xed, 0x18, 0xb0, 0x6d, 0xa5, 0x12, 0xca, 0xb6, 0x3f, 0x22, 0xd2, 0xd5, 0x1d, 0x77, 0xd9, 0x9f, 0xac, 0xd3, 0xc4, 0x50, 0x2e, 0x4a, 0xbf, 0x4e, 0x97, 0xb0, 0x94, 0xc2, 0x0a, 0x9d, 0xdf, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1135 = { .name = "xdh_wei25519_1135", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1135_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1135_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1135_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 89 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1136 for XDH, tcId is 90 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1136_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1136_privkey[] = { 0x18, 0x42, 0x2b, 0x58, 0xa1, 0x8e, 0x0f, 0x45, 0x19, 0xb7, 0xa8, 0x87, 0xb8, 0xcf, 0xb6, 0x49, 0xe0, 0xbf, 0xe4, 0xb3, 0x4d, 0x75, 0x96, 0x33, 0x50, 0xa9, 0x94, 0x4e, 0x5b, 0x7f, 0x5b, 0x7e, }; static const unsigned char xdh_wei25519_1136_sharedsecret[] = { 0x44, 0x8c, 0xe4, 0x10, 0xff, 0xfc, 0x7e, 0x61, 0x49, 0xc5, 0xab, 0xec, 0x0a, 0xd5, 0xf3, 0x60, 0x7d, 0xfd, 0xe8, 0xa3, 0x4e, 0x2a, 0xc3, 0x24, 0x3c, 0x30, 0x09, 0x17, 0x61, 0x68, 0xb4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1136 = { .name = "xdh_wei25519_1136", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1136_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1136_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1136_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 90 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1137 for XDH, tcId is 91 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1137_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1137_privkey[] = { 0x20, 0x62, 0x0d, 0x82, 0x48, 0x77, 0x07, 0xbe, 0xdf, 0x9e, 0xe3, 0x54, 0x9e, 0x95, 0xcb, 0x93, 0x90, 0xd2, 0x61, 0x8f, 0x50, 0xcf, 0x6a, 0xcb, 0xa4, 0x7f, 0xfa, 0xa1, 0x03, 0x22, 0x4a, 0x6f, }; static const unsigned char xdh_wei25519_1137_sharedsecret[] = { 0x03, 0xa6, 0x33, 0xdf, 0x01, 0x48, 0x0d, 0x0d, 0x50, 0x48, 0xd9, 0x2f, 0x51, 0xb2, 0x0d, 0xc1, 0xd1, 0x1f, 0x73, 0xe9, 0x51, 0x5c, 0x69, 0x94, 0x29, 0xb9, 0x0a, 0x4f, 0x69, 0x03, 0x12, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1137 = { .name = "xdh_wei25519_1137", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1137_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1137_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1137_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 91 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1138 for XDH, tcId is 92 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1138_peerpubkey[] = { 0xda, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1138_privkey[] = { 0x28, 0x5a, 0x6a, 0x7c, 0xee, 0xb7, 0x12, 0x2f, 0x2c, 0x78, 0xd9, 0x9c, 0x53, 0xb2, 0xa9, 0x02, 0xb4, 0x90, 0x89, 0x2f, 0x7d, 0xff, 0x32, 0x6f, 0x89, 0xd1, 0x26, 0x73, 0xc3, 0x10, 0x1b, 0x53, }; static const unsigned char xdh_wei25519_1138_sharedsecret[] = { 0x9b, 0x01, 0x28, 0x77, 0x17, 0xd7, 0x2f, 0x4c, 0xfb, 0x58, 0x3e, 0xc8, 0x5f, 0x8f, 0x93, 0x68, 0x49, 0xb1, 0x7d, 0x97, 0x8d, 0xba, 0xe7, 0xb8, 0x37, 0xdb, 0x56, 0xa6, 0x2f, 0x10, 0x0a, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1138 = { .name = "xdh_wei25519_1138", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1138_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1138_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1138_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 92 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1139 for XDH, tcId is 93 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1139_peerpubkey[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1139_privkey[] = { 0xc8, 0xe0, 0x33, 0x0a, 0xe9, 0xdc, 0xee, 0xff, 0x88, 0x7f, 0xba, 0x76, 0x12, 0x25, 0x87, 0x9a, 0x4b, 0xd2, 0xe0, 0xdb, 0x08, 0x79, 0x92, 0x44, 0x13, 0x6e, 0x47, 0x21, 0xb2, 0xc8, 0x89, 0x70, }; static const unsigned char xdh_wei25519_1139_sharedsecret[] = { 0xdf, 0xe6, 0x08, 0x31, 0xc9, 0xf4, 0xf9, 0x6c, 0x81, 0x6e, 0x51, 0x04, 0x88, 0x04, 0xdb, 0xdc, 0x27, 0x79, 0x5d, 0x76, 0x0e, 0xce, 0xd7, 0x5e, 0xf5, 0x75, 0xcb, 0xe3, 0xb4, 0x64, 0x05, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1139 = { .name = "xdh_wei25519_1139", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1139_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1139_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1139_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 93 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1140 for XDH, tcId is 94 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1140_peerpubkey[] = { 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1140_privkey[] = { 0x10, 0xdb, 0x62, 0x10, 0xfc, 0x1f, 0xb1, 0x33, 0x82, 0x47, 0x2f, 0xa1, 0x78, 0x7b, 0x00, 0x4b, 0x5d, 0x11, 0x86, 0x8a, 0xb3, 0xa7, 0x95, 0x10, 0xe0, 0xce, 0xe3, 0x0f, 0x4a, 0x6d, 0xf2, 0x6b, }; static const unsigned char xdh_wei25519_1140_sharedsecret[] = { 0x50, 0xbf, 0xa8, 0x26, 0xca, 0x77, 0x03, 0x6d, 0xd2, 0xbb, 0xfd, 0x09, 0x2c, 0x3f, 0x78, 0xe2, 0xe4, 0xa1, 0xf9, 0x80, 0xd7, 0xc8, 0xe7, 0x8f, 0x2f, 0x14, 0xdc, 0xa3, 0xcc, 0xe5, 0xcc, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1140 = { .name = "xdh_wei25519_1140", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1140_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1140_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1140_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 94 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1141 for XDH, tcId is 95 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1141_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1141_privkey[] = { 0x90, 0x41, 0xc6, 0xe0, 0x44, 0xa2, 0x77, 0xdf, 0x84, 0x66, 0x27, 0x5c, 0xa8, 0xb5, 0xee, 0x0d, 0xa7, 0xbc, 0x02, 0x86, 0x48, 0x05, 0x4a, 0xde, 0x5c, 0x59, 0x2a, 0xdd, 0x30, 0x57, 0x47, 0x4e, }; static const unsigned char xdh_wei25519_1141_sharedsecret[] = { 0x13, 0xda, 0x56, 0x95, 0xa4, 0xc2, 0x06, 0x11, 0x54, 0x09, 0xb5, 0x27, 0x7a, 0x93, 0x47, 0x82, 0xfe, 0x98, 0x5f, 0xa0, 0x50, 0xbc, 0x90, 0x2c, 0xba, 0x56, 0x16, 0xf9, 0x15, 0x6f, 0xe2, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1141 = { .name = "xdh_wei25519_1141", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1141_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1141_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1141_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 95 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1142 for XDH, tcId is 96 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1142_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1142_privkey[] = { 0xb8, 0xd4, 0x99, 0x04, 0x1a, 0x67, 0x13, 0xc0, 0xf6, 0xf8, 0x76, 0xdb, 0x74, 0x06, 0x58, 0x7f, 0xdb, 0x44, 0x58, 0x2f, 0x95, 0x42, 0x35, 0x6a, 0xe8, 0x9c, 0xfa, 0x95, 0x8a, 0x34, 0xd2, 0x66, }; static const unsigned char xdh_wei25519_1142_sharedsecret[] = { 0x63, 0x48, 0x3b, 0x5d, 0x69, 0x23, 0x6c, 0x63, 0xcd, 0xdb, 0xed, 0x33, 0xd8, 0xe2, 0x2b, 0xae, 0xcc, 0x2b, 0x0c, 0xcf, 0x88, 0x65, 0x98, 0xe8, 0x63, 0xc8, 0x44, 0xd2, 0xbf, 0x25, 0x67, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1142 = { .name = "xdh_wei25519_1142", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1142_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1142_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1142_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 96 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1143 for XDH, tcId is 97 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1143_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1143_privkey[] = { 0xc8, 0x5f, 0x08, 0xe6, 0x0c, 0x84, 0x5f, 0x82, 0x09, 0x91, 0x41, 0xa6, 0x6d, 0xc4, 0x58, 0x3d, 0x2b, 0x10, 0x40, 0x46, 0x2c, 0x54, 0x4d, 0x33, 0xd0, 0x45, 0x3b, 0x20, 0xb1, 0xa6, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_1143_sharedsecret[] = { 0xe9, 0xdb, 0x74, 0xbc, 0x88, 0xd0, 0xd9, 0xbf, 0x04, 0x6d, 0xdd, 0x13, 0xf9, 0x43, 0xbc, 0xcb, 0xe6, 0xdb, 0xb4, 0x7d, 0x49, 0x32, 0x3f, 0x8d, 0xfe, 0xed, 0xc4, 0xa6, 0x94, 0x99, 0x1a, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1143 = { .name = "xdh_wei25519_1143", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1143_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1143_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1143_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 97 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1144 for XDH, tcId is 98 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1144_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1144_privkey[] = { 0x78, 0x87, 0x88, 0x9b, 0xac, 0x4c, 0x62, 0x9a, 0x10, 0x1d, 0x37, 0x24, 0xf2, 0xed, 0x8b, 0x98, 0xd9, 0x36, 0xfd, 0xe7, 0x9e, 0x1a, 0x1f, 0x77, 0xd8, 0x67, 0x79, 0x62, 0x6b, 0xf8, 0xf2, 0x63, }; static const unsigned char xdh_wei25519_1144_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1144 = { .name = "xdh_wei25519_1144", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1144_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1144_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1144_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819968, tcId is 98 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1145 for XDH, tcId is 99 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1145_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1145_privkey[] = { 0xe0, 0x79, 0x71, 0xee, 0x82, 0x0e, 0x48, 0xb0, 0xb2, 0x66, 0xd8, 0xbe, 0x3c, 0xdb, 0xbb, 0x5e, 0x90, 0x0a, 0x43, 0xf5, 0x9e, 0xe8, 0x53, 0x5c, 0x65, 0x72, 0x41, 0x86, 0x15, 0xde, 0x49, 0x62, }; static const unsigned char xdh_wei25519_1145_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1145 = { .name = "xdh_wei25519_1145", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1145_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1145_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1145_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819969, tcId is 99 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1146 for XDH, tcId is 100 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1146_peerpubkey[] = { 0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1, 0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3, 0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c, }; static const unsigned char xdh_wei25519_1146_privkey[] = { 0xa0, 0x46, 0xe3, 0x6b, 0xf0, 0x52, 0x7c, 0x9d, 0x3b, 0x16, 0x15, 0x4b, 0x82, 0x46, 0x5e, 0xdd, 0x62, 0x14, 0x4c, 0x0a, 0xc1, 0xfc, 0x5a, 0x18, 0x50, 0x6a, 0x22, 0x44, 0xba, 0x44, 0x9a, 0x44, }; static const unsigned char xdh_wei25519_1146_sharedsecret[] = { 0xc3, 0xda, 0x55, 0x37, 0x9d, 0xe9, 0xc6, 0x90, 0x8e, 0x94, 0xea, 0x4d, 0xf2, 0x8d, 0x08, 0x4f, 0x32, 0xec, 0xcf, 0x03, 0x49, 0x1c, 0x71, 0xf7, 0x54, 0xb4, 0x07, 0x55, 0x77, 0xa2, 0x85, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1146 = { .name = "xdh_wei25519_1146", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1146_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1146_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1146_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 7748, tcId is 100 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1147 for XDH, tcId is 101 in file x25519_pem_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')] */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1147_peerpubkey[] = { 0xe5, 0x21, 0x0f, 0x12, 0x78, 0x68, 0x11, 0xd3, 0xf4, 0xb7, 0x95, 0x9d, 0x05, 0x38, 0xae, 0x2c, 0x31, 0xdb, 0xe7, 0x10, 0x6f, 0xc0, 0x3c, 0x3e, 0xfc, 0x4c, 0xd5, 0x49, 0xc7, 0x15, 0xa4, 0x13, }; static const unsigned char xdh_wei25519_1147_privkey[] = { 0x48, 0x66, 0xe9, 0xd4, 0xd1, 0xb4, 0x67, 0x3c, 0x5a, 0xd2, 0x26, 0x91, 0x95, 0x7d, 0x6a, 0xf5, 0xc1, 0x1b, 0x64, 0x21, 0xe0, 0xea, 0x01, 0xd4, 0x2c, 0xa4, 0x16, 0x9e, 0x79, 0x18, 0xba, 0x4d, }; static const unsigned char xdh_wei25519_1147_sharedsecret[] = { 0x95, 0xcb, 0xde, 0x94, 0x76, 0xe8, 0x90, 0x7d, 0x7a, 0xad, 0xe4, 0x5c, 0xb4, 0xb8, 0x73, 0xf8, 0x8b, 0x59, 0x5a, 0x68, 0x79, 0x9f, 0xa1, 0x52, 0xe6, 0xf8, 0xf7, 0x64, 0x7a, 0xac, 0x79, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1147 = { .name = "xdh_wei25519_1147", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1147_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1147_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1147_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "RFC 7748, tcId is 101 in file x25519_pem_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')]", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1148 for XDH, tcId is 102 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1148_peerpubkey[] = { 0xde, 0x9e, 0xdb, 0x7d, 0x7b, 0x7d, 0xc1, 0xb4, 0xd3, 0x5b, 0x61, 0xc2, 0xec, 0xe4, 0x35, 0x37, 0x3f, 0x83, 0x43, 0xc8, 0x5b, 0x78, 0x67, 0x4d, 0xad, 0xfc, 0x7e, 0x14, 0x6f, 0x88, 0x2b, 0x4f, }; static const unsigned char xdh_wei25519_1148_privkey[] = { 0x77, 0x07, 0x6d, 0x0a, 0x73, 0x18, 0xa5, 0x7d, 0x3c, 0x16, 0xc1, 0x72, 0x51, 0xb2, 0x66, 0x45, 0xdf, 0x4c, 0x2f, 0x87, 0xeb, 0xc0, 0x99, 0x2a, 0xb1, 0x77, 0xfb, 0xa5, 0x1d, 0xb9, 0x2c, 0x2a, }; static const unsigned char xdh_wei25519_1148_sharedsecret[] = { 0x4a, 0x5d, 0x9d, 0x5b, 0xa4, 0xce, 0x2d, 0xe1, 0x72, 0x8e, 0x3b, 0xf4, 0x80, 0x35, 0x0f, 0x25, 0xe0, 0x7e, 0x21, 0xc9, 0x47, 0xd1, 0x9e, 0x33, 0x76, 0xf0, 0x9b, 0x3c, 0x1e, 0x16, 0x17, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_1148 = { .name = "xdh_wei25519_1148", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1148_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1148_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1148_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 8037, Section A.6, tcId is 102 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1149 for XDH, tcId is 103 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1149_peerpubkey[] = { 0xb7, 0xb6, 0xd3, 0x9c, 0x76, 0x5c, 0xb6, 0x0c, 0x0c, 0x85, 0x42, 0xf4, 0xf3, 0x95, 0x2f, 0xfb, 0x51, 0xd3, 0x00, 0x2d, 0x4a, 0xeb, 0x9f, 0x8f, 0xf9, 0x88, 0xb1, 0x92, 0x04, 0x3e, 0x6d, 0x0a, }; static const unsigned char xdh_wei25519_1149_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1149_sharedsecret[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1149 = { .name = "xdh_wei25519_1149", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1149_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1149_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1149_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 103 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1150 for XDH, tcId is 104 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1150_peerpubkey[] = { 0x3b, 0x18, 0xdf, 0x1e, 0x50, 0xb8, 0x99, 0xeb, 0xd5, 0x88, 0xc3, 0x16, 0x1c, 0xbd, 0x3b, 0xf9, 0x8e, 0xbc, 0xc2, 0xc1, 0xf7, 0xdf, 0x53, 0xb8, 0x11, 0xbd, 0x0e, 0x91, 0xb4, 0xd5, 0x15, 0x3d, }; static const unsigned char xdh_wei25519_1150_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1150_sharedsecret[] = { 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1150 = { .name = "xdh_wei25519_1150", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1150_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1150_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1150_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 104 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1151 for XDH, tcId is 105 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1151_peerpubkey[] = { 0xca, 0xb6, 0xf9, 0xe7, 0xd8, 0xce, 0x00, 0xdf, 0xce, 0xa9, 0xbb, 0xd8, 0xf0, 0x69, 0xef, 0x7f, 0xb2, 0xac, 0x50, 0x4a, 0xbf, 0x83, 0xb8, 0x7d, 0xb6, 0x01, 0xb5, 0xae, 0x0a, 0x7f, 0x76, 0x15, }; static const unsigned char xdh_wei25519_1151_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1151_sharedsecret[] = { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1151 = { .name = "xdh_wei25519_1151", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1151_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1151_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1151_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 105 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1152 for XDH, tcId is 106 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1152_peerpubkey[] = { 0x49, 0x77, 0xd0, 0xd8, 0x97, 0xe1, 0xba, 0x56, 0x65, 0x90, 0xf6, 0x0f, 0x2e, 0xb0, 0xdb, 0x6f, 0x7b, 0x24, 0xc1, 0x3d, 0x43, 0x69, 0x18, 0xcc, 0xfd, 0x32, 0x70, 0x8d, 0xfa, 0xd7, 0xe2, 0x47, }; static const unsigned char xdh_wei25519_1152_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1152_sharedsecret[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1152 = { .name = "xdh_wei25519_1152", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1152_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1152_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1152_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 106 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1153 for XDH, tcId is 107 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1153_peerpubkey[] = { 0x98, 0x73, 0x0b, 0xc0, 0x3e, 0x29, 0xe8, 0xb0, 0x57, 0xfb, 0x1d, 0x20, 0xef, 0x8c, 0x0b, 0xff, 0xc8, 0x22, 0x48, 0x5d, 0x3d, 0xb7, 0xf4, 0x5f, 0x4e, 0x3c, 0xc2, 0xc3, 0xc6, 0xd1, 0xd1, 0x4c, }; static const unsigned char xdh_wei25519_1153_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1153_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1153 = { .name = "xdh_wei25519_1153", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1153_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1153_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1153_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 107 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1154 for XDH, tcId is 108 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1154_peerpubkey[] = { 0x97, 0xb4, 0xff, 0xf6, 0x82, 0xdf, 0x7f, 0x09, 0x6c, 0xd1, 0x75, 0x65, 0x69, 0xe2, 0x52, 0xdb, 0x48, 0x2d, 0x45, 0x40, 0x6a, 0x31, 0x98, 0xa1, 0xaf, 0xf2, 0x82, 0xa5, 0xda, 0x47, 0x4c, 0x49, }; static const unsigned char xdh_wei25519_1154_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1154_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1154 = { .name = "xdh_wei25519_1154", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1154_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1154_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1154_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 108 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1155 for XDH, tcId is 109 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1155_peerpubkey[] = { 0x31, 0x77, 0x81, 0xb0, 0x16, 0x3b, 0xae, 0x74, 0xac, 0xcc, 0x06, 0xc0, 0xd4, 0x4e, 0xf9, 0xa9, 0x11, 0xa2, 0x2b, 0x0d, 0x37, 0xfa, 0xf7, 0x72, 0x66, 0x21, 0x59, 0x1f, 0x93, 0x43, 0xea, 0x2f, }; static const unsigned char xdh_wei25519_1155_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1155_sharedsecret[] = { 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1155 = { .name = "xdh_wei25519_1155", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1155_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1155_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1155_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 109 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1156 for XDH, tcId is 110 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1156_peerpubkey[] = { 0x7e, 0x26, 0xf8, 0xf2, 0x4c, 0xb5, 0x90, 0x02, 0x7f, 0x9d, 0x1b, 0xc4, 0x9b, 0x0e, 0x1a, 0x24, 0x2c, 0x7d, 0x8f, 0x43, 0x62, 0x4d, 0x3e, 0x8f, 0xab, 0x28, 0xee, 0x08, 0xe0, 0x2c, 0xb4, 0x5e, }; static const unsigned char xdh_wei25519_1156_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1156_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1156 = { .name = "xdh_wei25519_1156", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1156_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1156_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1156_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 110 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1157 for XDH, tcId is 111 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1157_peerpubkey[] = { 0xe9, 0x6d, 0x27, 0x80, 0xe5, 0x46, 0x9a, 0x74, 0x62, 0x0a, 0xb5, 0xaa, 0x2f, 0x62, 0x15, 0x1d, 0x14, 0x0c, 0x47, 0x33, 0x20, 0xdb, 0xe1, 0xb0, 0x28, 0xf1, 0xa4, 0x8f, 0x8e, 0x76, 0xf9, 0x5f, }; static const unsigned char xdh_wei25519_1157_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1157_sharedsecret[] = { 0xe5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1157 = { .name = "xdh_wei25519_1157", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1157_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1157_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1157_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 111 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1158 for XDH, tcId is 112 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1158_peerpubkey[] = { 0x8d, 0x61, 0x2c, 0x58, 0x31, 0xaa, 0x64, 0xb0, 0x57, 0x30, 0x0e, 0x7e, 0x31, 0x0f, 0x3a, 0xa3, 0x32, 0xaf, 0x34, 0x06, 0x6f, 0xef, 0xca, 0xb2, 0xb0, 0x89, 0xc9, 0x59, 0x28, 0x78, 0xf8, 0x32, }; static const unsigned char xdh_wei25519_1158_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1158_sharedsecret[] = { 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1158 = { .name = "xdh_wei25519_1158", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1158_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1158_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1158_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 112 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1159 for XDH, tcId is 113 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1159_peerpubkey[] = { 0x8d, 0x44, 0x10, 0x8d, 0x05, 0xd9, 0x40, 0xd3, 0xdf, 0xe5, 0x64, 0x7e, 0xa7, 0xa8, 0x7b, 0xe2, 0x4d, 0x0d, 0x03, 0x6c, 0x9f, 0x0a, 0x95, 0xa2, 0x38, 0x6b, 0x83, 0x9e, 0x7b, 0x7b, 0xf1, 0x45, }; static const unsigned char xdh_wei25519_1159_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1159_sharedsecret[] = { 0xdd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1159 = { .name = "xdh_wei25519_1159", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1159_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1159_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1159_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 113 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1160 for XDH, tcId is 114 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1160_peerpubkey[] = { 0x21, 0xa3, 0x5d, 0x5d, 0xb1, 0xb6, 0x23, 0x7c, 0x73, 0x9b, 0x56, 0x34, 0x5a, 0x93, 0x0a, 0xee, 0xe3, 0x73, 0xcd, 0xcf, 0xb4, 0x70, 0x12, 0x66, 0x78, 0x2a, 0x8a, 0xc5, 0x94, 0x91, 0x3b, 0x29, }; static const unsigned char xdh_wei25519_1160_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1160_sharedsecret[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1160 = { .name = "xdh_wei25519_1160", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1160_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1160_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1160_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 114 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1161 for XDH, tcId is 115 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1161_peerpubkey[] = { 0x3e, 0x5e, 0xfb, 0x63, 0xc3, 0x52, 0xce, 0x94, 0x27, 0x62, 0x48, 0x2b, 0xc9, 0x33, 0x7a, 0x5d, 0x35, 0xba, 0x55, 0x66, 0x47, 0x43, 0xac, 0x5e, 0x93, 0xd1, 0x1f, 0x95, 0x73, 0x36, 0xcb, 0x10, }; static const unsigned char xdh_wei25519_1161_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1161_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1161 = { .name = "xdh_wei25519_1161", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1161_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1161_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1161_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 115 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1162 for XDH, tcId is 116 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1162_peerpubkey[] = { 0x8e, 0x41, 0xf0, 0x5e, 0xa3, 0xc7, 0x65, 0x72, 0xbe, 0x10, 0x4a, 0xd8, 0x78, 0x8e, 0x97, 0x08, 0x63, 0xc6, 0xe2, 0xca, 0x3d, 0xaa, 0xe6, 0x4d, 0x1c, 0x2f, 0x46, 0xde, 0xcf, 0xff, 0xa5, 0x71, }; static const unsigned char xdh_wei25519_1162_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1162_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1162 = { .name = "xdh_wei25519_1162", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1162_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1162_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1162_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 116 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1163 for XDH, tcId is 117 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1163_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1163_privkey[] = { 0xc8, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0x6b, }; static const unsigned char xdh_wei25519_1163_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1163 = { .name = "xdh_wei25519_1163", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1163_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1163_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1163_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 117 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1164 for XDH, tcId is 118 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1164_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1164_privkey[] = { 0x90, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x43, }; static const unsigned char xdh_wei25519_1164_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1164 = { .name = "xdh_wei25519_1164", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1164_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1164_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1164_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 118 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1165 for XDH, tcId is 119 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1165_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1165_privkey[] = { 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x51, }; static const unsigned char xdh_wei25519_1165_sharedsecret[] = { 0x0c, 0x50, 0xac, 0x2b, 0xfb, 0x68, 0x15, 0xb4, 0x7d, 0x07, 0x34, 0xc5, 0x98, 0x13, 0x79, 0x88, 0x2a, 0x24, 0xa2, 0xde, 0x61, 0x66, 0x85, 0x3c, 0x73, 0x53, 0x29, 0xd9, 0x78, 0xba, 0xee, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_1165 = { .name = "xdh_wei25519_1165", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1165_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1165_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1165_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 119 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1166 for XDH, tcId is 120 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1166_peerpubkey[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1166_privkey[] = { 0x08, 0x40, 0xa8, 0xaf, 0x5b, 0xc4, 0xc4, 0x8d, 0xa8, 0x85, 0x0e, 0x97, 0x3d, 0x7e, 0x14, 0x22, 0x0f, 0x45, 0xc1, 0x92, 0xce, 0xa4, 0x02, 0x0d, 0x37, 0x7e, 0xec, 0xd2, 0x5c, 0x7c, 0x36, 0x43, }; static const unsigned char xdh_wei25519_1166_sharedsecret[] = { 0x77, 0x55, 0x71, 0x37, 0xa2, 0xa2, 0xa6, 0x51, 0xc4, 0x96, 0x27, 0xa9, 0xb2, 0x39, 0xac, 0x1f, 0x2b, 0xf7, 0x8b, 0x8a, 0x3e, 0x72, 0x16, 0x8c, 0xce, 0xcc, 0x10, 0xa5, 0x1f, 0xc5, 0xae, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1166 = { .name = "xdh_wei25519_1166", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1166_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1166_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1166_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 120 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1167 for XDH, tcId is 121 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1167_peerpubkey[] = { 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1167_privkey[] = { 0x00, 0x92, 0x22, 0x9c, 0x75, 0x3a, 0x71, 0x28, 0x4d, 0x08, 0x53, 0x90, 0x94, 0x70, 0xad, 0x84, 0x7a, 0xb6, 0x2f, 0x43, 0x9e, 0xa5, 0x14, 0x82, 0xfb, 0x41, 0xd3, 0x0c, 0xc3, 0xb4, 0x47, 0x43, }; static const unsigned char xdh_wei25519_1167_sharedsecret[] = { 0xc8, 0x8e, 0x71, 0x9a, 0xe5, 0xc2, 0x24, 0x8b, 0x5f, 0x90, 0xda, 0x34, 0x6a, 0x92, 0xae, 0x21, 0x4f, 0x44, 0xa5, 0xd1, 0x29, 0xfd, 0x4e, 0x9c, 0x26, 0xcf, 0x6a, 0x0d, 0xa1, 0xef, 0xe0, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1167 = { .name = "xdh_wei25519_1167", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1167_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1167_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1167_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 121 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1168 for XDH, tcId is 122 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1168_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1168_privkey[] = { 0xb8, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x5b, }; static const unsigned char xdh_wei25519_1168_sharedsecret[] = { 0x4b, 0xf6, 0x78, 0x9c, 0x7e, 0xa0, 0x36, 0xf9, 0x73, 0xcd, 0xe0, 0xaf, 0x02, 0xd6, 0xfd, 0xb9, 0xb6, 0x4a, 0x0b, 0x95, 0x70, 0x22, 0x11, 0x14, 0x39, 0x57, 0x0f, 0xad, 0x7d, 0x7a, 0x45, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1168 = { .name = "xdh_wei25519_1168", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1168_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1168_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1168_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 122 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1169 for XDH, tcId is 123 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1169_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1169_privkey[] = { 0x68, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0x76, }; static const unsigned char xdh_wei25519_1169_sharedsecret[] = { 0xbc, 0xac, 0x23, 0x5a, 0xe1, 0x5c, 0xc7, 0x14, 0x83, 0x72, 0xe1, 0x1f, 0x93, 0x15, 0xe3, 0xbc, 0x76, 0xce, 0xb9, 0x04, 0xb3, 0xd2, 0xa8, 0x24, 0x6b, 0xd9, 0xd9, 0xbe, 0x20, 0x82, 0xbb, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1169 = { .name = "xdh_wei25519_1169", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1169_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1169_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1169_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 123 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1170 for XDH, tcId is 124 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1170_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1170_privkey[] = { 0x38, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0x74, }; static const unsigned char xdh_wei25519_1170_sharedsecret[] = { 0x5d, 0xd7, 0xd1, 0x6f, 0xff, 0x25, 0xcc, 0x5f, 0xdf, 0x9e, 0x03, 0xc3, 0x15, 0x7c, 0xb0, 0xa2, 0x35, 0xce, 0xa1, 0x7d, 0x61, 0x8f, 0x36, 0xe6, 0xf1, 0x34, 0x61, 0x56, 0x7e, 0xde, 0xb9, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_1170 = { .name = "xdh_wei25519_1170", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1170_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1170_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1170_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 124 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1171 for XDH, tcId is 125 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1171_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1171_privkey[] = { 0x30, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x4b, }; static const unsigned char xdh_wei25519_1171_sharedsecret[] = { 0x28, 0x16, 0xfd, 0x03, 0x1d, 0x51, 0xd6, 0x75, 0x0f, 0x92, 0x25, 0xed, 0xe9, 0x50, 0x62, 0x5c, 0xca, 0x47, 0x44, 0x1c, 0xa9, 0x7e, 0x43, 0x09, 0x26, 0x50, 0x39, 0x69, 0x91, 0xaf, 0xcb, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1171 = { .name = "xdh_wei25519_1171", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1171_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1171_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1171_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 125 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1172 for XDH, tcId is 126 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1172_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1172_privkey[] = { 0xd8, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0x4f, }; static const unsigned char xdh_wei25519_1172_sharedsecret[] = { 0x7e, 0xd8, 0xf2, 0xd5, 0x42, 0x4e, 0x7e, 0xbb, 0x3e, 0xdb, 0xdf, 0x4a, 0xbe, 0x45, 0x54, 0x47, 0xe5, 0xa4, 0x8b, 0x65, 0x8e, 0x64, 0xab, 0xd0, 0x6c, 0x21, 0x8f, 0x33, 0xbd, 0x15, 0x1f, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1172 = { .name = "xdh_wei25519_1172", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1172_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1172_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1172_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 126 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1173 for XDH, tcId is 127 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1173_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1173_privkey[] = { 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0x7e, }; static const unsigned char xdh_wei25519_1173_sharedsecret[] = { 0xe8, 0x62, 0x0e, 0xd5, 0xca, 0x89, 0xc7, 0x2c, 0x5e, 0xa5, 0x50, 0x3e, 0x6d, 0xcd, 0x01, 0x13, 0x1c, 0xd5, 0xe8, 0x75, 0xc3, 0x0e, 0x13, 0xd5, 0xdc, 0x61, 0x9c, 0xe2, 0x8e, 0xc7, 0xd5, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1173 = { .name = "xdh_wei25519_1173", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1173_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1173_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1173_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 127 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1174 for XDH, tcId is 128 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1174_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1174_privkey[] = { 0x20, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0x71, }; static const unsigned char xdh_wei25519_1174_sharedsecret[] = { 0xce, 0xad, 0xb2, 0x64, 0x37, 0x9d, 0xca, 0xdd, 0x6e, 0x3b, 0xb8, 0xad, 0x24, 0xdd, 0x65, 0x3d, 0x2a, 0x60, 0x9d, 0xd7, 0x03, 0xd4, 0x1d, 0xa6, 0xca, 0xf3, 0xad, 0x00, 0xf0, 0x01, 0x86, 0x2c, }; static const wycheproof_xdh_test xdh_wei25519_1174 = { .name = "xdh_wei25519_1174", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1174_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1174_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1174_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 128 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1175 for XDH, tcId is 129 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1175_peerpubkey[] = { 0xa8, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_1175_privkey[] = { 0x90, 0xb1, 0x50, 0xd4, 0x62, 0xde, 0x51, 0x20, 0x56, 0xd5, 0xbd, 0x55, 0x17, 0x30, 0x74, 0x96, 0x9b, 0x49, 0x6f, 0x26, 0x2f, 0xb6, 0x91, 0x6b, 0x73, 0x3f, 0x62, 0x63, 0xa8, 0x07, 0x89, 0x71, }; static const unsigned char xdh_wei25519_1175_sharedsecret[] = { 0xf8, 0x6c, 0xc7, 0xbf, 0x1b, 0xe4, 0x95, 0x74, 0xfc, 0x97, 0xa0, 0x74, 0x28, 0x2e, 0x9b, 0xb5, 0xcd, 0x23, 0x8e, 0x00, 0x2b, 0xc8, 0xe9, 0xa7, 0xb8, 0x55, 0x2b, 0x2d, 0x60, 0xec, 0xcb, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1175 = { .name = "xdh_wei25519_1175", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1175_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1175_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1175_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 129 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1176 for XDH, tcId is 130 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1176_peerpubkey[] = { 0xaa, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_1176_privkey[] = { 0x98, 0x87, 0x28, 0x6b, 0x32, 0x61, 0xc8, 0xd8, 0x57, 0xa1, 0x6f, 0x6d, 0xb2, 0x12, 0x77, 0xf7, 0x5d, 0x88, 0xd4, 0xe8, 0x61, 0xb3, 0xeb, 0xe7, 0x59, 0x66, 0x99, 0x04, 0x7e, 0x81, 0x66, 0x68, }; static const unsigned char xdh_wei25519_1176_sharedsecret[] = { 0xcc, 0xbb, 0x8f, 0xd9, 0xde, 0xe1, 0x65, 0xa3, 0x98, 0xb2, 0xdb, 0xd7, 0xc8, 0x39, 0x6f, 0x81, 0x73, 0x6c, 0x1b, 0x3d, 0xa3, 0x6b, 0x35, 0xfb, 0xec, 0x8f, 0x32, 0x6f, 0x38, 0xf9, 0x27, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1176 = { .name = "xdh_wei25519_1176", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1176_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1176_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1176_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 130 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1177 for XDH, tcId is 131 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1177_peerpubkey[] = { 0x58, 0x50, 0x07, 0xa5, 0x93, 0x0d, 0x77, 0x62, 0x3c, 0xf2, 0x97, 0x56, 0x03, 0x8c, 0xa1, 0x97, 0xd3, 0xeb, 0xfd, 0x9e, 0x4c, 0x80, 0xa6, 0x95, 0x85, 0xef, 0xe0, 0x27, 0x40, 0x92, 0xc1, 0x15, }; static const unsigned char xdh_wei25519_1177_privkey[] = { 0x20, 0xca, 0x2c, 0x85, 0xcc, 0x87, 0x62, 0xe9, 0x6b, 0x70, 0x47, 0xbf, 0x15, 0xc7, 0x1c, 0x05, 0x0f, 0xfe, 0x0e, 0xd1, 0x61, 0x60, 0x40, 0xa9, 0x53, 0xae, 0x32, 0xa1, 0x29, 0x7a, 0xd8, 0x71, }; static const unsigned char xdh_wei25519_1177_sharedsecret[] = { 0x46, 0xad, 0xd6, 0xf4, 0x8f, 0xff, 0xf4, 0x61, 0x77, 0x7d, 0x4f, 0x89, 0xb6, 0xfd, 0xf1, 0x15, 0x5a, 0xa0, 0x51, 0xa9, 0x63, 0x87, 0xd4, 0x5f, 0x3e, 0x5e, 0x37, 0x1a, 0x23, 0x6b, 0x6e, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1177 = { .name = "xdh_wei25519_1177", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1177_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1177_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1177_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 131 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1178 for XDH, tcId is 132 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1178_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_1178_privkey[] = { 0xd0, 0x27, 0x65, 0x66, 0x05, 0xb1, 0x0b, 0xf1, 0x8d, 0xea, 0x28, 0xbc, 0x52, 0x54, 0x6f, 0x9f, 0x1f, 0x08, 0xce, 0xf0, 0x6c, 0xaf, 0xd2, 0x00, 0xfc, 0x84, 0xf8, 0x7d, 0xbb, 0x4e, 0xbe, 0x46, }; static const unsigned char xdh_wei25519_1178_sharedsecret[] = { 0x1a, 0xdb, 0xe3, 0x22, 0x07, 0xe2, 0x1f, 0x71, 0xe1, 0xaf, 0x53, 0x88, 0x4d, 0x2a, 0x22, 0x76, 0x48, 0x1e, 0x29, 0x8e, 0x55, 0x7f, 0x4d, 0xac, 0xb3, 0x72, 0x0f, 0x24, 0x58, 0xe3, 0x08, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1178 = { .name = "xdh_wei25519_1178", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1178_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1178_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1178_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 132 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1179 for XDH, tcId is 133 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1179_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_1179_privkey[] = { 0x48, 0x67, 0xa8, 0x3e, 0xe9, 0xd0, 0x1b, 0x75, 0x10, 0x84, 0x08, 0x67, 0xdb, 0x1a, 0xf6, 0xa6, 0x04, 0x9b, 0xdb, 0xb0, 0x56, 0xb7, 0x44, 0x43, 0xf7, 0x0c, 0x35, 0x8e, 0x16, 0x2c, 0x88, 0x67, }; static const unsigned char xdh_wei25519_1179_sharedsecret[] = { 0xe1, 0x2c, 0xc5, 0x8f, 0xbe, 0xb7, 0x0a, 0x5e, 0x35, 0xc8, 0x61, 0xc3, 0x37, 0x10, 0xbe, 0x65, 0x16, 0xa6, 0xa9, 0x2e, 0x52, 0x37, 0x60, 0x60, 0x21, 0x1b, 0x24, 0x87, 0xdb, 0x54, 0x2b, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1179 = { .name = "xdh_wei25519_1179", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1179_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1179_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1179_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 133 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1180 for XDH, tcId is 134 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1180_peerpubkey[] = { 0xaf, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_1180_privkey[] = { 0xa0, 0x15, 0x97, 0x0a, 0x8a, 0xdd, 0x94, 0x0f, 0xca, 0x5b, 0x1b, 0x5d, 0x23, 0x87, 0x53, 0x97, 0xd5, 0x47, 0xd8, 0xd4, 0x94, 0xfc, 0xb3, 0x14, 0xf2, 0x04, 0x5a, 0x67, 0xa2, 0xd1, 0x2c, 0x4b, }; static const unsigned char xdh_wei25519_1180_sharedsecret[] = { 0x42, 0x1b, 0xed, 0x1b, 0x26, 0xda, 0x1e, 0x9a, 0xdb, 0xea, 0xda, 0x1f, 0x32, 0xb9, 0x1a, 0x0f, 0xb4, 0xce, 0xd0, 0xf1, 0x11, 0x0e, 0x0a, 0x4a, 0x88, 0xe7, 0x35, 0xa1, 0x9e, 0xe4, 0x57, 0x1e, }; static const wycheproof_xdh_test xdh_wei25519_1180 = { .name = "xdh_wei25519_1180", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1180_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1180_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1180_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 134 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1181 for XDH, tcId is 135 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1181_peerpubkey[] = { 0xb1, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_1181_privkey[] = { 0x40, 0x58, 0xcb, 0x6b, 0x9a, 0xab, 0xa0, 0x2a, 0x33, 0x8a, 0xaa, 0x39, 0x2d, 0xbc, 0x10, 0x03, 0x9e, 0x26, 0xe9, 0xe4, 0x44, 0x11, 0x7e, 0x75, 0x8e, 0x24, 0xc5, 0xd8, 0xb2, 0x32, 0xea, 0x5e, }; static const unsigned char xdh_wei25519_1181_sharedsecret[] = { 0xd7, 0xb4, 0x74, 0x63, 0xe2, 0xf4, 0xca, 0x9a, 0x1a, 0x7d, 0xee, 0xa0, 0x98, 0xda, 0x8e, 0x74, 0xac, 0x3b, 0x4a, 0x10, 0x90, 0x83, 0xd9, 0x97, 0x25, 0x9b, 0x12, 0x99, 0x2e, 0x7e, 0x7e, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1181 = { .name = "xdh_wei25519_1181", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1181_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1181_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1181_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 135 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1182 for XDH, tcId is 136 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1182_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, }; static const unsigned char xdh_wei25519_1182_privkey[] = { 0xb8, 0x76, 0xb0, 0x5d, 0xaf, 0xf0, 0x53, 0x0b, 0x13, 0x9d, 0x9e, 0x11, 0x25, 0x05, 0x63, 0x41, 0x80, 0x77, 0x17, 0x82, 0x46, 0xc5, 0xfa, 0x70, 0x05, 0xba, 0x00, 0xe9, 0xb6, 0x64, 0x77, 0x63, }; static const unsigned char xdh_wei25519_1182_sharedsecret[] = { 0x68, 0x6e, 0xb9, 0x10, 0xa9, 0x37, 0x21, 0x1b, 0x91, 0x47, 0xc8, 0xa0, 0x51, 0xa1, 0x19, 0x79, 0x06, 0x81, 0x8f, 0xdc, 0x62, 0x66, 0x68, 0xeb, 0x5f, 0x5d, 0x39, 0x4a, 0xfd, 0x86, 0xd4, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1182 = { .name = "xdh_wei25519_1182", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1182_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1182_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1182_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 136 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1183 for XDH, tcId is 137 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1183_peerpubkey[] = { 0x22, 0x23, 0x1c, 0x64, 0xef, 0x73, 0xad, 0x62, 0x31, 0x8b, 0x8a, 0x87, 0xbc, 0x38, 0xe2, 0x72, 0xe1, 0xbb, 0x8b, 0xf1, 0xa6, 0x0d, 0x7c, 0x00, 0x47, 0x6d, 0x0b, 0x05, 0x9d, 0x7b, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_1183_privkey[] = { 0xd8, 0x7f, 0xd6, 0xaa, 0x5d, 0x8d, 0xee, 0xf6, 0xde, 0xe9, 0x61, 0x9a, 0x56, 0x84, 0x6a, 0x08, 0x29, 0x62, 0x05, 0x90, 0xf2, 0xda, 0x40, 0x83, 0x5d, 0x8e, 0x25, 0x15, 0x97, 0xe3, 0x90, 0x78, }; static const unsigned char xdh_wei25519_1183_sharedsecret[] = { 0x09, 0x55, 0x97, 0x33, 0xb3, 0x5b, 0xcc, 0x6b, 0xb8, 0xac, 0x57, 0x4b, 0x5a, 0xbe, 0x3a, 0x4d, 0x88, 0x41, 0xde, 0xff, 0x05, 0x1c, 0x29, 0x4a, 0x07, 0x48, 0x7e, 0x3e, 0xec, 0x3c, 0x55, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1183 = { .name = "xdh_wei25519_1183", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1183_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1183_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1183_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 137 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1184 for XDH, tcId is 138 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1184_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1184_privkey[] = { 0x90, 0x03, 0x63, 0x21, 0xb6, 0x37, 0x51, 0xf7, 0x62, 0x2a, 0xa9, 0x3d, 0xa3, 0x4d, 0x85, 0xe5, 0x9c, 0xe8, 0x10, 0x09, 0xac, 0x5b, 0x9a, 0x06, 0x89, 0x21, 0xd8, 0x3b, 0xc4, 0x71, 0x5b, 0x57, }; static const unsigned char xdh_wei25519_1184_sharedsecret[] = { 0xf7, 0xd5, 0xcb, 0xcf, 0x39, 0xeb, 0x72, 0x2b, 0x01, 0xed, 0x20, 0xc8, 0x55, 0x63, 0xeb, 0xb8, 0x1d, 0x07, 0x65, 0x11, 0xae, 0xad, 0x4c, 0xcc, 0x42, 0x90, 0x27, 0x86, 0x6b, 0x9f, 0xd2, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1184 = { .name = "xdh_wei25519_1184", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1184_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1184_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1184_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 138 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1185 for XDH, tcId is 139 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1185_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1185_privkey[] = { 0xa0, 0x67, 0x81, 0xfd, 0x4c, 0x4a, 0x08, 0x74, 0xe0, 0x0e, 0x72, 0xba, 0x13, 0x1b, 0x9d, 0xd8, 0x7a, 0x83, 0xb2, 0x90, 0x4e, 0x29, 0x4d, 0xe1, 0x76, 0xe8, 0xa9, 0xaf, 0x1f, 0x69, 0x5d, 0x67, }; static const unsigned char xdh_wei25519_1185_sharedsecret[] = { 0xe9, 0x95, 0xad, 0x6a, 0x1e, 0xc6, 0xc5, 0xab, 0x32, 0x92, 0x2c, 0xff, 0x9d, 0x20, 0x47, 0x21, 0x70, 0x46, 0x73, 0x14, 0x3c, 0x4a, 0x11, 0xde, 0xaa, 0x20, 0x3f, 0x3c, 0x81, 0x98, 0x9b, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1185 = { .name = "xdh_wei25519_1185", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1185_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1185_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1185_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 139 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1186 for XDH, tcId is 140 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1186_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1186_privkey[] = { 0xb8, 0x22, 0xd7, 0x2d, 0x8b, 0x68, 0xbd, 0xb4, 0xfb, 0xf6, 0x7e, 0x56, 0xa6, 0x1d, 0x67, 0x2b, 0x2c, 0x77, 0x47, 0xe9, 0x44, 0x79, 0xfe, 0x5a, 0xe4, 0x07, 0x2d, 0x0a, 0xcc, 0xdd, 0x65, 0x71, }; static const unsigned char xdh_wei25519_1186_sharedsecret[] = { 0x32, 0xb6, 0xda, 0xbe, 0x01, 0xd1, 0x38, 0x67, 0xf3, 0xb5, 0xb0, 0x89, 0x2f, 0xef, 0xd8, 0x0d, 0xca, 0x66, 0x6f, 0x2e, 0xdc, 0x5a, 0xfb, 0x43, 0xcd, 0x0b, 0xaf, 0x70, 0x3c, 0x3e, 0x69, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1186 = { .name = "xdh_wei25519_1186", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1186_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1186_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1186_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 140 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1187 for XDH, tcId is 141 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1187_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1187_privkey[] = { 0xd0, 0x8c, 0xe1, 0x23, 0x7e, 0x24, 0x8d, 0x02, 0xcd, 0xf6, 0x19, 0xd2, 0x0b, 0xea, 0x58, 0x48, 0xad, 0xe4, 0xf6, 0xff, 0xd1, 0x71, 0xb8, 0xde, 0xe8, 0x79, 0x3f, 0xc6, 0x7c, 0x45, 0x96, 0x40, }; static const unsigned char xdh_wei25519_1187_sharedsecret[] = { 0xa9, 0x3d, 0x83, 0xfc, 0x9e, 0xa0, 0xf6, 0xcb, 0x0c, 0xc8, 0xb6, 0x31, 0xda, 0x60, 0x00, 0x19, 0xb7, 0x6c, 0xbb, 0x2e, 0xc5, 0x72, 0x22, 0xf2, 0xe4, 0x2d, 0xd5, 0x40, 0xe3, 0xda, 0x85, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1187 = { .name = "xdh_wei25519_1187", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1187_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1187_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1187_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 141 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1188 for XDH, tcId is 142 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1188_peerpubkey[] = { 0xcb, 0xdc, 0xe3, 0x9b, 0x10, 0x8c, 0x52, 0x9d, 0xce, 0x74, 0x75, 0x78, 0x43, 0xc7, 0x1d, 0x8d, 0x1e, 0x44, 0x74, 0x0e, 0x59, 0xf2, 0x83, 0xff, 0xb8, 0x92, 0xf4, 0xfa, 0x62, 0x84, 0xc3, 0x4a, }; static const unsigned char xdh_wei25519_1188_privkey[] = { 0x18, 0x0a, 0xe3, 0xc9, 0x28, 0x51, 0x4c, 0xfb, 0x9e, 0xdd, 0x06, 0xe7, 0xdc, 0x1d, 0x5d, 0x06, 0x61, 0x60, 0xe9, 0x67, 0x44, 0x5a, 0x5c, 0x58, 0xe4, 0x46, 0x3b, 0x69, 0xed, 0x20, 0x5e, 0x6d, }; static const unsigned char xdh_wei25519_1188_sharedsecret[] = { 0x01, 0x7c, 0xbf, 0xa2, 0xb3, 0x8e, 0x9e, 0xf3, 0x29, 0x7a, 0x33, 0x9e, 0xcc, 0xe1, 0xa9, 0x17, 0xbd, 0xcf, 0x7e, 0x91, 0x00, 0x36, 0x08, 0x6a, 0x41, 0xd1, 0xe2, 0x2d, 0x04, 0x24, 0x18, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1188 = { .name = "xdh_wei25519_1188", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1188_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1188_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1188_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 142 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1189 for XDH, tcId is 143 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1189_peerpubkey[] = { 0x3c, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_1189_privkey[] = { 0xe8, 0x81, 0xd8, 0x06, 0xa1, 0x10, 0x56, 0x0c, 0xd8, 0xfe, 0xe8, 0x99, 0xd5, 0x9c, 0x02, 0x49, 0xf1, 0x23, 0x3a, 0x43, 0x22, 0xc4, 0x1a, 0xa3, 0x69, 0xc7, 0xa2, 0xa9, 0x9f, 0x5b, 0x59, 0x62, }; static const unsigned char xdh_wei25519_1189_sharedsecret[] = { 0x71, 0x13, 0x39, 0x05, 0xb8, 0xa5, 0x7e, 0xa8, 0xc3, 0x8d, 0xe0, 0xec, 0xf2, 0x13, 0x69, 0x9a, 0x75, 0xb0, 0x96, 0xc2, 0xdf, 0x21, 0xf0, 0x7f, 0x7e, 0x9e, 0xb0, 0x3e, 0x9f, 0xa5, 0x3f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1189 = { .name = "xdh_wei25519_1189", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1189_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1189_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1189_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 143 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1190 for XDH, tcId is 144 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1190_peerpubkey[] = { 0x3e, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_1190_privkey[] = { 0x08, 0xe4, 0x10, 0xe1, 0xd7, 0xe8, 0xb9, 0x41, 0x12, 0x36, 0xaf, 0x4a, 0x35, 0xd6, 0xb6, 0x2a, 0x5d, 0x89, 0x31, 0x47, 0x8e, 0x4c, 0x62, 0x19, 0x7c, 0xfa, 0xfb, 0x49, 0x14, 0x67, 0xb1, 0x62, }; static const unsigned char xdh_wei25519_1190_sharedsecret[] = { 0x3d, 0xc7, 0xb7, 0x0e, 0x11, 0x07, 0x66, 0xb2, 0xbf, 0x52, 0x52, 0x52, 0xeb, 0xed, 0x98, 0xa1, 0x00, 0xb2, 0xe5, 0x32, 0xdc, 0x69, 0x54, 0x44, 0x64, 0xda, 0x1b, 0xba, 0xb8, 0x62, 0x5f, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1190 = { .name = "xdh_wei25519_1190", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1190_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1190_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1190_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 144 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1191 for XDH, tcId is 145 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1191_peerpubkey[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1191_privkey[] = { 0xe0, 0x2f, 0xdf, 0x7e, 0x0e, 0xe3, 0xd5, 0x5b, 0x44, 0x40, 0xf0, 0x14, 0x32, 0xdd, 0x25, 0x3c, 0x94, 0x97, 0x93, 0xbc, 0x04, 0xda, 0x44, 0xdd, 0xec, 0xe8, 0x3e, 0x54, 0xc8, 0xc3, 0x9b, 0x40, }; static const unsigned char xdh_wei25519_1191_sharedsecret[] = { 0xe3, 0x17, 0xe5, 0xcc, 0x43, 0x8b, 0x5f, 0x79, 0xea, 0xd5, 0x53, 0x3a, 0xc7, 0xc4, 0x55, 0x19, 0xa1, 0x17, 0xb3, 0x10, 0x33, 0xcc, 0x21, 0x40, 0xb1, 0x9e, 0xdf, 0x85, 0x72, 0x01, 0x12, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1191 = { .name = "xdh_wei25519_1191", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1191_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1191_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1191_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 145 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1192 for XDH, tcId is 146 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1192_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1192_privkey[] = { 0xf0, 0x5d, 0x18, 0xf6, 0x8e, 0xf7, 0xa5, 0x86, 0x5c, 0x14, 0xdb, 0x3a, 0x9c, 0x25, 0x5f, 0xdf, 0x2d, 0xab, 0xea, 0x2a, 0xa3, 0x65, 0x81, 0xe9, 0x4f, 0x68, 0xb7, 0x27, 0xb5, 0x82, 0x86, 0x7b, }; static const unsigned char xdh_wei25519_1192_sharedsecret[] = { 0xd8, 0x68, 0x10, 0x51, 0x6a, 0xed, 0xdc, 0x18, 0x06, 0x10, 0x36, 0xf5, 0x99, 0xa9, 0xeb, 0x84, 0xd1, 0xc6, 0x14, 0x6b, 0x0f, 0x54, 0x36, 0x52, 0xdd, 0x45, 0x26, 0x74, 0x3b, 0xa4, 0x2c, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1192 = { .name = "xdh_wei25519_1192", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1192_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1192_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1192_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 146 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1193 for XDH, tcId is 147 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1193_peerpubkey[] = { 0x95, 0xaf, 0xf8, 0x5a, 0x6c, 0xf2, 0x88, 0x9d, 0xc3, 0x0d, 0x68, 0xa9, 0xfc, 0x73, 0x5e, 0x68, 0x2c, 0x14, 0x02, 0x61, 0xb3, 0x7f, 0x59, 0x6a, 0x7a, 0x10, 0x1f, 0xd8, 0xbf, 0x6d, 0x3e, 0x6a, }; static const unsigned char xdh_wei25519_1193_privkey[] = { 0x00, 0xc1, 0x03, 0x57, 0x8d, 0x5c, 0x07, 0x9d, 0x7b, 0xcc, 0x22, 0xc1, 0xc3, 0x1e, 0x78, 0x7c, 0x1b, 0x15, 0xc5, 0x7f, 0xcb, 0x49, 0x3f, 0xda, 0xfe, 0xfa, 0x20, 0x37, 0x1c, 0xfc, 0x74, 0x6b, }; static const unsigned char xdh_wei25519_1193_sharedsecret[] = { 0xdf, 0xa9, 0x88, 0xa4, 0x77, 0x00, 0x3b, 0xe1, 0x25, 0xb9, 0x5c, 0xcb, 0xf2, 0x22, 0x3d, 0x97, 0x72, 0x95, 0x77, 0xd2, 0x5e, 0x1d, 0x6e, 0x89, 0xe3, 0xda, 0x0a, 0xfa, 0xbd, 0xd0, 0xae, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_1193 = { .name = "xdh_wei25519_1193", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1193_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1193_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1193_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 147 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1194 for XDH, tcId is 148 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1194_peerpubkey[] = { 0x43, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_1194_privkey[] = { 0x70, 0x05, 0xbb, 0x92, 0x74, 0x85, 0xc4, 0x35, 0x64, 0x2b, 0x42, 0x4a, 0x3d, 0xde, 0x01, 0x4b, 0xcf, 0x76, 0x34, 0x5e, 0x5b, 0xe6, 0x4a, 0xe6, 0xe9, 0xb2, 0x4d, 0xb3, 0x9e, 0x1c, 0xdb, 0x51, }; static const unsigned char xdh_wei25519_1194_sharedsecret[] = { 0xd4, 0x50, 0xaf, 0x45, 0xb8, 0xed, 0x5f, 0xe1, 0x40, 0xcc, 0x52, 0x63, 0xff, 0xb7, 0xb5, 0x2e, 0x66, 0x73, 0x68, 0x99, 0xa8, 0xb8, 0x72, 0xb6, 0xe2, 0x85, 0x52, 0x12, 0x98, 0x19, 0xb2, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1194 = { .name = "xdh_wei25519_1194", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1194_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1194_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1194_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 148 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1195 for XDH, tcId is 149 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1195_peerpubkey[] = { 0x45, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_1195_privkey[] = { 0x08, 0x22, 0x03, 0x9a, 0x5d, 0xc1, 0x3c, 0x40, 0xfc, 0xcc, 0xf3, 0x46, 0xe2, 0xa7, 0x76, 0x9b, 0x4f, 0xd2, 0x72, 0x05, 0x2d, 0x43, 0x26, 0x0a, 0xd6, 0x26, 0x46, 0x8a, 0x50, 0xd4, 0x41, 0x62, }; static const unsigned char xdh_wei25519_1195_sharedsecret[] = { 0x58, 0x00, 0x2c, 0x89, 0xbf, 0x8b, 0xc3, 0x2a, 0xe6, 0xfc, 0x20, 0x5b, 0x79, 0x6a, 0xcd, 0x13, 0xef, 0x7f, 0x84, 0x76, 0xf6, 0x49, 0x2a, 0xe4, 0xb2, 0xbe, 0x47, 0xf1, 0x09, 0x5e, 0x8a, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1195 = { .name = "xdh_wei25519_1195", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1195_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1195_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1195_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 149 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1196 for XDH, tcId is 150 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1196_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1196_privkey[] = { 0x40, 0xa6, 0x34, 0x9c, 0x03, 0xf0, 0xdc, 0x0a, 0x42, 0x35, 0x8f, 0x63, 0x53, 0xca, 0x67, 0x63, 0x2a, 0xf6, 0x87, 0xb1, 0x4c, 0x9d, 0xff, 0x62, 0x6c, 0x54, 0xe2, 0x11, 0xe8, 0xfc, 0x35, 0x5a, }; static const unsigned char xdh_wei25519_1196_sharedsecret[] = { 0x77, 0x73, 0xaa, 0xd6, 0xe7, 0x2e, 0xb1, 0x73, 0x5b, 0x65, 0xad, 0x51, 0xf7, 0xda, 0xd2, 0x58, 0xc1, 0x1d, 0x7b, 0xff, 0xf5, 0x30, 0x94, 0x42, 0x4c, 0xb1, 0x03, 0xcd, 0x6b, 0xfb, 0x43, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1196 = { .name = "xdh_wei25519_1196", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1196_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1196_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1196_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 150 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1197 for XDH, tcId is 151 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1197_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1197_privkey[] = { 0x50, 0x69, 0x6d, 0x4d, 0x05, 0x20, 0x99, 0x71, 0xd6, 0xba, 0x06, 0x76, 0xea, 0x27, 0x42, 0x62, 0xba, 0x63, 0x9a, 0xac, 0x74, 0xfa, 0x75, 0xe5, 0xdf, 0x45, 0x70, 0x76, 0x8a, 0xd8, 0xae, 0x74, }; static const unsigned char xdh_wei25519_1197_sharedsecret[] = { 0xc1, 0x18, 0xdd, 0xf6, 0x46, 0x2f, 0xbe, 0xa8, 0x0f, 0x14, 0xef, 0x1f, 0x29, 0x72, 0xa1, 0xab, 0x12, 0xca, 0xfa, 0x51, 0x1d, 0x13, 0x23, 0xd4, 0xd2, 0x2d, 0x0d, 0x42, 0x6d, 0x65, 0x1b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1197 = { .name = "xdh_wei25519_1197", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1197_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1197_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1197_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 151 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1198 for XDH, tcId is 152 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1198_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1198_privkey[] = { 0x68, 0xbb, 0x68, 0x0c, 0x85, 0x3f, 0x4e, 0x4d, 0xaa, 0x47, 0xc5, 0x86, 0xdc, 0x88, 0x6c, 0xf4, 0x56, 0x8d, 0x7b, 0x03, 0x83, 0x77, 0x0f, 0x6d, 0xf4, 0x39, 0xa5, 0x3b, 0xe4, 0xa3, 0x23, 0x6d, }; static const unsigned char xdh_wei25519_1198_sharedsecret[] = { 0xcc, 0x07, 0x75, 0xbf, 0xd9, 0x70, 0xa2, 0x70, 0x6b, 0x11, 0xc7, 0x22, 0x2a, 0x44, 0x36, 0xa3, 0xd1, 0x71, 0x60, 0x38, 0x2c, 0x83, 0xb7, 0x6f, 0x89, 0xb6, 0x61, 0x92, 0xc8, 0x1b, 0x44, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1198 = { .name = "xdh_wei25519_1198", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1198_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1198_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1198_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 152 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1199 for XDH, tcId is 153 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1199_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1199_privkey[] = { 0xb0, 0xf6, 0xc2, 0x8d, 0xbd, 0xc6, 0x47, 0x06, 0x8a, 0x76, 0xd7, 0x18, 0x05, 0xef, 0x77, 0x0f, 0x08, 0x7c, 0xf7, 0x6b, 0x82, 0xaf, 0xdc, 0x0d, 0x26, 0xc4, 0x5b, 0x71, 0xac, 0xe4, 0x97, 0x68, }; static const unsigned char xdh_wei25519_1199_sharedsecret[] = { 0xf0, 0x09, 0x7f, 0xa0, 0xba, 0x70, 0xd0, 0x19, 0x12, 0x62, 0x77, 0xab, 0x15, 0xc5, 0x6e, 0xcc, 0x17, 0x0c, 0xa8, 0x81, 0x80, 0xb2, 0xbf, 0x9d, 0x80, 0xfc, 0xda, 0x3d, 0x7d, 0x74, 0x55, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1199 = { .name = "xdh_wei25519_1199", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1199_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1199_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1199_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 153 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1200 for XDH, tcId is 154 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1200_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1200_privkey[] = { 0x18, 0x63, 0x0f, 0x93, 0x59, 0x86, 0x37, 0xc3, 0x5d, 0xa6, 0x23, 0xa7, 0x45, 0x59, 0xcf, 0x94, 0x43, 0x74, 0xa5, 0x59, 0x11, 0x4c, 0x79, 0x37, 0x81, 0x10, 0x41, 0xfc, 0x86, 0x05, 0x56, 0x4a, }; static const unsigned char xdh_wei25519_1200_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1200 = { .name = "xdh_wei25519_1200", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1200_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1200_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1200_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 154 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1201 for XDH, tcId is 155 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1201_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1201_privkey[] = { 0x58, 0x1e, 0xcb, 0xda, 0x5a, 0x4a, 0x22, 0x80, 0x44, 0xfe, 0xfd, 0x6e, 0x03, 0xdf, 0x23, 0x45, 0x58, 0xc3, 0xc7, 0x91, 0x52, 0xc6, 0xe2, 0xc5, 0xe6, 0x0b, 0x14, 0x2c, 0x4f, 0x26, 0xa8, 0x51, }; static const unsigned char xdh_wei25519_1201_sharedsecret[] = { 0x59, 0xe7, 0xb1, 0xe6, 0xf4, 0x70, 0x65, 0xa4, 0x8b, 0xd3, 0x49, 0x13, 0xd9, 0x10, 0x17, 0x6b, 0x67, 0x92, 0xa1, 0x37, 0x2a, 0xad, 0x22, 0xe7, 0x3c, 0xd7, 0xdf, 0x45, 0xfc, 0xf9, 0x1a, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1201 = { .name = "xdh_wei25519_1201", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1201_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1201_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1201_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 155 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1202 for XDH, tcId is 156 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1202_peerpubkey[] = { 0x77, 0xaf, 0x0d, 0x38, 0x97, 0xa7, 0x15, 0xdf, 0xe2, 0x5d, 0xf5, 0xd5, 0x38, 0xcf, 0x13, 0x3b, 0xc9, 0xab, 0x7a, 0xd5, 0x2d, 0xf6, 0xbd, 0x92, 0x2a, 0x2f, 0xb7, 0x56, 0x21, 0xd5, 0x99, 0x01, }; static const unsigned char xdh_wei25519_1202_privkey[] = { 0xb0, 0x56, 0x1a, 0x38, 0x00, 0x07, 0x95, 0xb7, 0xcb, 0x53, 0x7b, 0x55, 0xe9, 0x75, 0xea, 0x45, 0x2c, 0x21, 0x18, 0x50, 0x62, 0x95, 0xd5, 0xeb, 0x15, 0xfd, 0x9c, 0x83, 0xb6, 0x7f, 0x7a, 0x50, }; static const unsigned char xdh_wei25519_1202_sharedsecret[] = { 0x17, 0x9f, 0x6b, 0x02, 0x07, 0x48, 0xac, 0xba, 0x34, 0x91, 0x33, 0xea, 0xa4, 0x51, 0x8f, 0x1b, 0xd8, 0xba, 0xb7, 0xbf, 0xc4, 0xfb, 0x05, 0xfd, 0x4c, 0x24, 0xe7, 0x55, 0x3d, 0xa1, 0xe9, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1202 = { .name = "xdh_wei25519_1202", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1202_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1202_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1202_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 156 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1203 for XDH, tcId is 157 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1203_peerpubkey[] = { 0x4e, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x0e, }; static const unsigned char xdh_wei25519_1203_privkey[] = { 0xb0, 0x0f, 0x7d, 0xf2, 0xd4, 0x71, 0x28, 0x44, 0x1c, 0x72, 0x70, 0xb9, 0xa8, 0x7e, 0xee, 0x45, 0xb6, 0x05, 0x6f, 0xc6, 0x42, 0x36, 0xa5, 0x7b, 0xdf, 0x81, 0xdb, 0xcc, 0xcf, 0x5f, 0x5d, 0x42, }; static const unsigned char xdh_wei25519_1203_sharedsecret[] = { 0x43, 0xc5, 0xee, 0x14, 0x51, 0xf2, 0x13, 0xef, 0x76, 0x24, 0x72, 0x9e, 0x59, 0x5a, 0x0f, 0xee, 0x7c, 0x9a, 0xf7, 0xee, 0x5d, 0x27, 0xeb, 0x03, 0x27, 0x8e, 0xe9, 0xf9, 0x4c, 0x20, 0x23, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1203 = { .name = "xdh_wei25519_1203", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1203_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1203_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1203_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 157 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1204 for XDH, tcId is 158 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1204_peerpubkey[] = { 0xad, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x11, }; static const unsigned char xdh_wei25519_1204_privkey[] = { 0xc8, 0xf7, 0xa0, 0xc0, 0xbf, 0xb1, 0xe9, 0xc7, 0x25, 0x76, 0xc5, 0x34, 0xf8, 0x68, 0x54, 0xfb, 0xe4, 0xaf, 0x52, 0x1d, 0x4f, 0xa8, 0x07, 0xf6, 0x7e, 0x24, 0x40, 0xe1, 0x00, 0xec, 0x88, 0x52, }; static const unsigned char xdh_wei25519_1204_sharedsecret[] = { 0x2f, 0x35, 0x0b, 0xcf, 0x0b, 0x40, 0x78, 0x4d, 0x1d, 0x75, 0x6c, 0x9c, 0xa3, 0xe3, 0x8e, 0xc9, 0xdd, 0x68, 0xba, 0x80, 0xfa, 0xf1, 0xf9, 0x84, 0x7d, 0xe5, 0x07, 0x79, 0xc0, 0xd4, 0x90, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1204 = { .name = "xdh_wei25519_1204", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1204_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1204_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1204_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 158 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1205 for XDH, tcId is 159 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1205_peerpubkey[] = { 0x77, 0x0f, 0x42, 0x18, 0xef, 0x23, 0x4f, 0x5e, 0x18, 0x54, 0x66, 0xe3, 0x24, 0x42, 0xc3, 0x02, 0xbb, 0xec, 0x21, 0xbb, 0xb6, 0xcd, 0x28, 0xc9, 0x79, 0xe7, 0x83, 0xfe, 0x50, 0x13, 0x33, 0x3f, }; static const unsigned char xdh_wei25519_1205_privkey[] = { 0x58, 0x18, 0x1f, 0x58, 0x1a, 0xa3, 0x70, 0x22, 0xff, 0x71, 0xc5, 0x6c, 0x6e, 0x68, 0xe6, 0x17, 0x5d, 0x96, 0x7c, 0x5c, 0x99, 0x5a, 0x24, 0x98, 0x85, 0xf6, 0x65, 0x65, 0x07, 0x4d, 0xed, 0x4d, }; static const unsigned char xdh_wei25519_1205_sharedsecret[] = { 0xd5, 0xd6, 0x50, 0xdc, 0x62, 0x10, 0x72, 0xec, 0xa9, 0x52, 0xe4, 0x34, 0x4e, 0xfc, 0x73, 0x20, 0xb2, 0xb1, 0x45, 0x9a, 0xba, 0x48, 0xf5, 0xe2, 0x48, 0x0d, 0xb8, 0x81, 0xc5, 0x0c, 0xc6, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1205 = { .name = "xdh_wei25519_1205", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1205_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1205_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1205_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 159 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1206 for XDH, tcId is 160 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1206_peerpubkey[] = { 0x5c, 0x61, 0x18, 0xc4, 0xc7, 0x4c, 0xfb, 0x84, 0x2d, 0x9a, 0x87, 0x44, 0x9f, 0x9d, 0x8d, 0xb8, 0xb9, 0x92, 0xd4, 0x6c, 0x5a, 0x90, 0x93, 0xce, 0x2f, 0xcb, 0x7a, 0x49, 0xb5, 0x35, 0xc4, 0x51, }; static const unsigned char xdh_wei25519_1206_privkey[] = { 0x30, 0x1c, 0x93, 0x5c, 0xae, 0x43, 0x57, 0x07, 0x0b, 0x0a, 0xda, 0xf9, 0xcd, 0x61, 0x92, 0x83, 0x0b, 0x2c, 0x98, 0x9c, 0x15, 0x37, 0x29, 0xee, 0xd9, 0x9f, 0x58, 0x9e, 0xb4, 0x5f, 0x88, 0x4b, }; static const unsigned char xdh_wei25519_1206_sharedsecret[] = { 0x90, 0x9c, 0xc5, 0x72, 0x75, 0xd5, 0x4f, 0x20, 0xc6, 0x7b, 0x45, 0xf9, 0xaf, 0x94, 0x84, 0xfd, 0x67, 0x58, 0x1a, 0xfb, 0x7d, 0x88, 0x7b, 0xee, 0x1d, 0xb5, 0x46, 0x1f, 0x30, 0x3e, 0xf2, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1206 = { .name = "xdh_wei25519_1206", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1206_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1206_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1206_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 160 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1207 for XDH, tcId is 161 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1207_peerpubkey[] = { 0x40, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x6e, }; static const unsigned char xdh_wei25519_1207_privkey[] = { 0xd0, 0x02, 0x29, 0x2d, 0x43, 0x59, 0xa3, 0xd4, 0x2b, 0xc8, 0x76, 0x7f, 0x13, 0x80, 0x00, 0x93, 0x32, 0xe7, 0xa0, 0xdf, 0x2f, 0x33, 0x79, 0x01, 0x1a, 0xb7, 0x8f, 0x78, 0x9f, 0x6b, 0xaa, 0x54, }; static const unsigned char xdh_wei25519_1207_sharedsecret[] = { 0x4a, 0x7e, 0x2c, 0x5c, 0xaf, 0x1d, 0x81, 0x80, 0xeb, 0x1c, 0x4f, 0x22, 0x69, 0x2f, 0x29, 0xa1, 0x4b, 0x4c, 0xdc, 0x9b, 0x19, 0x3b, 0xd1, 0xd1, 0x6e, 0x2f, 0x27, 0x43, 0x8e, 0xef, 0x14, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_1207 = { .name = "xdh_wei25519_1207", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1207_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1207_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1207_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 161 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1208 for XDH, tcId is 162 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1208_peerpubkey[] = { 0x07, 0x8f, 0xa5, 0x23, 0x49, 0x8f, 0xb5, 0x1c, 0xba, 0x11, 0x12, 0xd8, 0x3b, 0x20, 0xaf, 0x44, 0x8b, 0x80, 0x09, 0xd8, 0xee, 0xa1, 0x43, 0x68, 0x56, 0x4d, 0x01, 0xb8, 0xf9, 0xb6, 0x08, 0x6f, }; static const unsigned char xdh_wei25519_1208_privkey[] = { 0xd0, 0xc2, 0xc4, 0x9e, 0x64, 0x4a, 0xb7, 0x38, 0x27, 0x07, 0x07, 0xff, 0x99, 0x17, 0x06, 0x59, 0x42, 0x68, 0x7e, 0x2f, 0x12, 0x88, 0x6d, 0x96, 0x11, 0x61, 0xdb, 0x46, 0xc0, 0x5b, 0x56, 0x5f, }; static const unsigned char xdh_wei25519_1208_sharedsecret[] = { 0xc0, 0xee, 0x59, 0xd3, 0x68, 0x5f, 0xc2, 0xc3, 0xc8, 0x03, 0x60, 0x8b, 0x5e, 0xe3, 0x9a, 0x7f, 0x8d, 0xa3, 0x0b, 0x48, 0xe4, 0x29, 0x3a, 0xe0, 0x11, 0xf0, 0xea, 0x1e, 0x5a, 0xeb, 0x71, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1208 = { .name = "xdh_wei25519_1208", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1208_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1208_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1208_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 162 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1209 for XDH, tcId is 163 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1209_peerpubkey[] = { 0x9f, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x71, }; static const unsigned char xdh_wei25519_1209_privkey[] = { 0xf0, 0x87, 0xd3, 0x8b, 0x27, 0x4c, 0x1d, 0xad, 0x1b, 0xce, 0x6e, 0xaa, 0x36, 0xb4, 0x8e, 0x21, 0x90, 0xb9, 0x0b, 0x9b, 0xf8, 0xca, 0x59, 0x66, 0x9c, 0xc5, 0xe0, 0x04, 0x64, 0x53, 0x43, 0x42, }; static const unsigned char xdh_wei25519_1209_sharedsecret[] = { 0xb2, 0x52, 0xbc, 0x8e, 0xab, 0xfa, 0xa6, 0x8c, 0x56, 0xe5, 0x4d, 0x61, 0xb9, 0x90, 0x61, 0xa3, 0x5d, 0x11, 0xe3, 0xa7, 0xb9, 0xbd, 0xa4, 0x17, 0xd9, 0x0f, 0x69, 0xb1, 0x11, 0x9b, 0xcf, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_1209 = { .name = "xdh_wei25519_1209", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1209_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1209_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1209_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 163 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1210 for XDH, tcId is 164 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1210_peerpubkey[] = { 0x76, 0x50, 0xf2, 0xc7, 0x68, 0x58, 0xea, 0x20, 0x1d, 0xa2, 0x02, 0x2a, 0xc7, 0x30, 0xec, 0xc4, 0x36, 0x54, 0x85, 0x2a, 0xd2, 0x09, 0x42, 0x6d, 0xd5, 0xd0, 0x48, 0xa9, 0xde, 0x2a, 0x66, 0x7e, }; static const unsigned char xdh_wei25519_1210_privkey[] = { 0x48, 0xdb, 0xcc, 0x5a, 0x69, 0x5f, 0x15, 0x14, 0xbb, 0xba, 0xa6, 0xad, 0x00, 0x84, 0x2b, 0x69, 0xd9, 0xae, 0x52, 0x16, 0xb1, 0x96, 0x3a, 0xdd, 0x07, 0xfb, 0x29, 0x47, 0xc9, 0x7b, 0x84, 0x47, }; static const unsigned char xdh_wei25519_1210_sharedsecret[] = { 0xfb, 0xda, 0x33, 0xbc, 0x93, 0x0c, 0x08, 0xdf, 0x83, 0x72, 0x08, 0xe1, 0x9a, 0xfd, 0xc1, 0xcf, 0xe3, 0xfd, 0x0f, 0x8f, 0x0e, 0x39, 0x76, 0xbe, 0x34, 0x77, 0x5e, 0x58, 0xa4, 0xa7, 0x77, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_1210 = { .name = "xdh_wei25519_1210", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1210_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1210_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1210_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 164 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1211 for XDH, tcId is 165 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1211_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1211_privkey[] = { 0x58, 0x91, 0xc9, 0x27, 0x2c, 0xf9, 0xa1, 0x97, 0x73, 0x5b, 0x70, 0x1e, 0x57, 0x15, 0x26, 0x8d, 0x36, 0xd7, 0x43, 0x6b, 0x7e, 0x35, 0x1a, 0x3e, 0x99, 0x7a, 0x08, 0x62, 0xe4, 0x80, 0x7d, 0x4d, }; static const unsigned char xdh_wei25519_1211_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1211 = { .name = "xdh_wei25519_1211", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1211_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1211_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1211_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 165 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1212 for XDH, tcId is 166 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1212_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1212_privkey[] = { 0xc0, 0xf9, 0xc6, 0x0a, 0xea, 0x73, 0x73, 0x1d, 0x92, 0xab, 0x5e, 0xd9, 0xf4, 0xce, 0xa1, 0x22, 0xf9, 0xa6, 0xeb, 0x25, 0x77, 0xbd, 0xa7, 0x2f, 0x94, 0x94, 0x8f, 0xea, 0x4d, 0x4c, 0xc6, 0x5d, }; static const unsigned char xdh_wei25519_1212_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1212 = { .name = "xdh_wei25519_1212", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1212_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1212_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1212_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 166 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1213 for XDH, tcId is 167 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1213_peerpubkey[] = { 0xb0, 0x22, 0x4e, 0x71, 0x34, 0xcf, 0x92, 0xd4, 0x0a, 0x31, 0x51, 0x5f, 0x2f, 0x0e, 0x89, 0xc2, 0xa2, 0x77, 0x7e, 0x8a, 0xc2, 0xfe, 0x74, 0x1d, 0xb0, 0xdc, 0x39, 0x39, 0x9f, 0xdf, 0x27, 0x02, }; static const unsigned char xdh_wei25519_1213_privkey[] = { 0x00, 0x66, 0xdd, 0x76, 0x74, 0xfe, 0x51, 0xf9, 0x32, 0x6c, 0x1e, 0x23, 0x9b, 0x87, 0x5f, 0x8a, 0xc0, 0x70, 0x1a, 0xae, 0x69, 0xa8, 0x04, 0xc2, 0x5f, 0xe4, 0x35, 0x95, 0xe8, 0x66, 0x0b, 0x45, }; static const unsigned char xdh_wei25519_1213_sharedsecret[] = { 0x8d, 0xac, 0xfe, 0x7b, 0xea, 0xaa, 0x62, 0xb9, 0x4b, 0xf6, 0xe5, 0x0e, 0xe5, 0x21, 0x4d, 0x99, 0xad, 0x7c, 0xda, 0x5a, 0x43, 0x1e, 0xa0, 0xc6, 0x2f, 0x2b, 0x20, 0xa8, 0x9d, 0x73, 0xc6, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_1213 = { .name = "xdh_wei25519_1213", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1213_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1213_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1213_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 167 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1214 for XDH, tcId is 168 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1214_peerpubkey[] = { 0x60, 0x1e, 0x3f, 0xeb, 0xb8, 0x48, 0xec, 0x3e, 0x57, 0xfc, 0xe6, 0x45, 0x88, 0xaa, 0xd8, 0x2a, 0xfc, 0x9c, 0x2a, 0xf9, 0x9b, 0xbc, 0xdf, 0xfc, 0xc4, 0xcd, 0x58, 0xd4, 0xb3, 0xd1, 0x5c, 0x07, }; static const unsigned char xdh_wei25519_1214_privkey[] = { 0x80, 0x06, 0x7f, 0x30, 0xf4, 0x0d, 0x61, 0x31, 0x8b, 0x42, 0x0c, 0x85, 0x9f, 0xce, 0x12, 0x8c, 0x90, 0x17, 0xab, 0x81, 0xb4, 0x7b, 0x76, 0x02, 0x8a, 0x57, 0xbc, 0x30, 0xd5, 0x85, 0x68, 0x46, }; static const unsigned char xdh_wei25519_1214_sharedsecret[] = { 0x20, 0xf1, 0xd3, 0xfe, 0x90, 0xe0, 0x8b, 0xc6, 0xf1, 0x52, 0xbf, 0x5d, 0xac, 0xc3, 0xed, 0x35, 0x89, 0x97, 0x85, 0x33, 0x3f, 0x14, 0x70, 0xe6, 0xa6, 0x2c, 0x3b, 0x8c, 0xbe, 0x28, 0xd2, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1214 = { .name = "xdh_wei25519_1214", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1214_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1214_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1214_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 168 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1215 for XDH, tcId is 169 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1215_peerpubkey[] = { 0x82, 0xa3, 0x80, 0x7b, 0xbd, 0xec, 0x2f, 0xa9, 0x93, 0x8f, 0xb4, 0x14, 0x1e, 0x27, 0xdc, 0x57, 0x45, 0x66, 0x06, 0x30, 0x1f, 0x78, 0xff, 0x71, 0x33, 0xcf, 0x24, 0xf3, 0xd1, 0x3e, 0xe1, 0x17, }; static const unsigned char xdh_wei25519_1215_privkey[] = { 0x58, 0x45, 0x77, 0x66, 0x9d, 0x21, 0xce, 0x0a, 0xe3, 0xe3, 0x0b, 0x02, 0xc9, 0x78, 0x3f, 0xfe, 0x97, 0x70, 0x9c, 0xbf, 0xe3, 0x96, 0x88, 0x9a, 0xa3, 0x1e, 0x8e, 0xe4, 0x33, 0x52, 0xdc, 0x52, }; static const unsigned char xdh_wei25519_1215_sharedsecret[] = { 0x2b, 0x28, 0xcc, 0x51, 0x40, 0xb8, 0x16, 0xad, 0xd5, 0xad, 0x3a, 0x77, 0xa8, 0x1b, 0x1c, 0x07, 0x3d, 0x67, 0xbf, 0x51, 0xbf, 0x95, 0xbd, 0xa2, 0x06, 0x4a, 0x14, 0xeb, 0x12, 0xd5, 0xf7, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1215 = { .name = "xdh_wei25519_1215", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1215_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1215_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1215_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 169 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1216 for XDH, tcId is 170 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1216_peerpubkey[] = { 0xf3, 0x29, 0xab, 0x23, 0x76, 0x46, 0x2e, 0x5f, 0x31, 0x28, 0xa2, 0x68, 0x20, 0x86, 0x25, 0x3c, 0x19, 0x22, 0x2a, 0xc1, 0xe2, 0xbc, 0xa4, 0x56, 0x92, 0xf0, 0xc3, 0xb5, 0x28, 0xf4, 0xc4, 0x28, }; static const unsigned char xdh_wei25519_1216_privkey[] = { 0x18, 0xe5, 0x97, 0xa4, 0xe2, 0xcc, 0xdb, 0x5e, 0x80, 0x52, 0xd5, 0x7c, 0x90, 0x09, 0x93, 0x8c, 0x2d, 0x4c, 0x43, 0xd6, 0xd8, 0xc9, 0xf9, 0x3c, 0x98, 0x72, 0x7b, 0x73, 0x11, 0x03, 0x59, 0x53, }; static const unsigned char xdh_wei25519_1216_sharedsecret[] = { 0x83, 0x92, 0x16, 0x00, 0x83, 0xb9, 0xaf, 0x9e, 0x0e, 0xf4, 0x4f, 0xcf, 0xce, 0x53, 0xba, 0x8f, 0xf7, 0x28, 0x2e, 0xe7, 0xa6, 0xc7, 0x1a, 0xb6, 0x6f, 0x88, 0x43, 0xa5, 0x5d, 0x09, 0xcd, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1216 = { .name = "xdh_wei25519_1216", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1216_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1216_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1216_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 170 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1217 for XDH, tcId is 171 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1217_peerpubkey[] = { 0x4f, 0xce, 0x3b, 0xb6, 0xc8, 0xaa, 0xf0, 0x22, 0xdb, 0xd1, 0x00, 0xe3, 0xcd, 0xe3, 0x94, 0x1b, 0x37, 0xd5, 0x43, 0xf0, 0x04, 0x01, 0xdb, 0xa7, 0xda, 0x9b, 0xc1, 0x43, 0xdf, 0xc5, 0x57, 0x09, }; static const unsigned char xdh_wei25519_1217_privkey[] = { 0x88, 0x28, 0x1c, 0xc5, 0x1d, 0x55, 0x12, 0xd8, 0x81, 0x4e, 0xa5, 0x24, 0x9b, 0x87, 0x9d, 0xcb, 0xad, 0x03, 0x23, 0xd3, 0x85, 0x12, 0xda, 0xfb, 0xdc, 0x7b, 0xa8, 0x5b, 0xba, 0x8c, 0x8d, 0x5d, }; static const unsigned char xdh_wei25519_1217_sharedsecret[] = { 0x42, 0x18, 0x4e, 0x22, 0xc5, 0x35, 0x53, 0x0c, 0x45, 0x7b, 0xd3, 0xb4, 0xf1, 0x08, 0x4c, 0xbf, 0x5e, 0x29, 0x7f, 0x50, 0x2f, 0xe1, 0x36, 0xb8, 0xd1, 0xda, 0xec, 0xf5, 0x33, 0x4c, 0xc9, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1217 = { .name = "xdh_wei25519_1217", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1217_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1217_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1217_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 171 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1218 for XDH, tcId is 172 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1218_peerpubkey[] = { 0x15, 0xc6, 0x88, 0x51, 0xc1, 0xdb, 0x84, 0x4b, 0x5a, 0x1e, 0xf3, 0x45, 0x6a, 0x65, 0x9f, 0x18, 0x88, 0x54, 0xb1, 0xa7, 0x5f, 0xbd, 0xb2, 0xf6, 0x8f, 0x51, 0x4c, 0x92, 0x89, 0xce, 0x71, 0x1f, }; static const unsigned char xdh_wei25519_1218_privkey[] = { 0xd0, 0xe7, 0x95, 0x45, 0x0d, 0xf0, 0xa8, 0x13, 0xc6, 0x57, 0x34, 0x96, 0xec, 0x57, 0x93, 0xca, 0x02, 0xe1, 0xbd, 0xba, 0xd1, 0x0e, 0xd0, 0x8d, 0xf8, 0x3f, 0xda, 0xed, 0x68, 0xb3, 0x38, 0x5f, }; static const unsigned char xdh_wei25519_1218_sharedsecret[] = { 0xf6, 0x54, 0xd7, 0x8e, 0x59, 0x45, 0xb2, 0x4b, 0xc6, 0x3e, 0x3e, 0x6d, 0x79, 0x0e, 0x0a, 0xe9, 0x86, 0xe5, 0x39, 0x37, 0x76, 0x40, 0x68, 0xb1, 0xbc, 0xe9, 0x20, 0xe1, 0xd7, 0x9b, 0x75, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1218 = { .name = "xdh_wei25519_1218", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1218_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1218_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1218_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 172 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1219 for XDH, tcId is 173 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1219_peerpubkey[] = { 0x42, 0x00, 0xa2, 0x42, 0x43, 0x43, 0x37, 0xb8, 0x91, 0x4f, 0x49, 0x34, 0x53, 0x01, 0xed, 0x78, 0x2b, 0x13, 0x59, 0x4f, 0x9e, 0xde, 0x08, 0x9c, 0x41, 0xfb, 0x1e, 0x7e, 0xa8, 0x2c, 0x90, 0x53, }; static const unsigned char xdh_wei25519_1219_privkey[] = { 0x30, 0xb6, 0x9a, 0x1c, 0xc1, 0xeb, 0x2d, 0x0b, 0x83, 0xea, 0x21, 0x38, 0x46, 0xe9, 0x0a, 0x2c, 0x92, 0x20, 0x88, 0xbd, 0xf2, 0x94, 0xa6, 0x99, 0x5b, 0xf6, 0xe6, 0xe7, 0x7c, 0x64, 0x6c, 0x41, }; static const unsigned char xdh_wei25519_1219_sharedsecret[] = { 0xcd, 0x8a, 0x09, 0xb0, 0x47, 0x95, 0xed, 0xcc, 0x70, 0x61, 0x86, 0x73, 0x73, 0x98, 0x1a, 0xa7, 0x48, 0x65, 0x1e, 0xbd, 0xce, 0x5e, 0xc2, 0x18, 0xa3, 0x35, 0xb8, 0x78, 0xce, 0xfe, 0x48, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1219 = { .name = "xdh_wei25519_1219", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1219_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1219_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1219_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 173 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1220 for XDH, tcId is 174 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1220_peerpubkey[] = { 0xba, 0xab, 0xf0, 0x17, 0x4a, 0xaa, 0xea, 0x4d, 0xe4, 0x8c, 0xc8, 0x3a, 0xdf, 0xb0, 0x40, 0x14, 0x61, 0xa7, 0x41, 0x90, 0x3e, 0xa6, 0xfb, 0x13, 0x0d, 0x7d, 0x64, 0xb7, 0xbf, 0x03, 0xa9, 0x66, }; static const unsigned char xdh_wei25519_1220_privkey[] = { 0x78, 0xb3, 0x0b, 0xb6, 0x3c, 0xd8, 0xad, 0xe7, 0x1b, 0x7a, 0x77, 0xd4, 0x26, 0xf4, 0x41, 0x9d, 0x05, 0xf1, 0x99, 0xff, 0xef, 0x34, 0x9e, 0x89, 0xfa, 0xa9, 0xd9, 0xa5, 0xf2, 0x1f, 0x66, 0x54, }; static const unsigned char xdh_wei25519_1220_sharedsecret[] = { 0xc9, 0xf8, 0x25, 0x8f, 0x23, 0x7d, 0xb1, 0xc8, 0x07, 0x02, 0xc5, 0xc4, 0xd9, 0x04, 0x8d, 0xfb, 0xa9, 0xdf, 0xe2, 0x59, 0xda, 0x4a, 0xee, 0xe9, 0x0d, 0xc2, 0x94, 0x55, 0x26, 0x96, 0x12, 0x75, }; static const wycheproof_xdh_test xdh_wei25519_1220 = { .name = "xdh_wei25519_1220", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1220_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1220_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1220_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 174 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1221 for XDH, tcId is 175 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1221_peerpubkey[] = { 0xf1, 0x2f, 0x18, 0xbd, 0x59, 0xc1, 0x26, 0x34, 0x8f, 0x6a, 0x7a, 0x9f, 0x4a, 0x5f, 0xdd, 0x9f, 0xca, 0xf5, 0x81, 0x34, 0x50, 0x73, 0xa8, 0x51, 0xfb, 0xa0, 0x98, 0xe5, 0xd6, 0x4b, 0x4a, 0x0c, }; static const unsigned char xdh_wei25519_1221_privkey[] = { 0xc0, 0xb3, 0x86, 0xf4, 0xef, 0x0d, 0x46, 0x98, 0x68, 0x64, 0x04, 0x97, 0x7e, 0x7b, 0x60, 0xcb, 0x6c, 0x1f, 0x8b, 0x60, 0x12, 0xa2, 0x2e, 0x29, 0xd6, 0x22, 0x4c, 0x59, 0x47, 0x43, 0x90, 0x41, }; static const unsigned char xdh_wei25519_1221_sharedsecret[] = { 0x66, 0x00, 0xcb, 0xe9, 0x00, 0x61, 0x6a, 0x77, 0x0a, 0x12, 0x6b, 0x8b, 0x19, 0x15, 0x6d, 0x5e, 0x27, 0xe1, 0x17, 0x4b, 0xd5, 0x38, 0xd0, 0x94, 0x4e, 0xb3, 0xc0, 0xbe, 0x48, 0x99, 0xc7, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1221 = { .name = "xdh_wei25519_1221", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1221_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1221_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1221_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 175 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1222 for XDH, tcId is 176 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1222_peerpubkey[] = { 0xbe, 0xe3, 0x86, 0x52, 0x7b, 0x77, 0x24, 0x90, 0xae, 0xb9, 0x6f, 0xc4, 0xd2, 0x3b, 0x93, 0x04, 0x03, 0x7c, 0xb4, 0x43, 0x0f, 0x64, 0xb2, 0x28, 0xf3, 0xd8, 0xb3, 0xb4, 0x98, 0x31, 0x9f, 0x22, }; static const unsigned char xdh_wei25519_1222_privkey[] = { 0x98, 0x86, 0x60, 0x2e, 0x71, 0x9b, 0xac, 0xaf, 0xea, 0x09, 0x2b, 0xb7, 0x5b, 0x51, 0xae, 0x72, 0x58, 0xab, 0xe1, 0xa3, 0x64, 0xc1, 0x76, 0x85, 0x7f, 0x3d, 0xc1, 0x88, 0xc0, 0x3e, 0x67, 0x59, }; static const unsigned char xdh_wei25519_1222_sharedsecret[] = { 0x3f, 0xe7, 0x10, 0xd6, 0x34, 0x4f, 0xf0, 0xcb, 0x34, 0x2e, 0x52, 0x34, 0x9e, 0x1c, 0x5b, 0x57, 0xb7, 0xa2, 0x71, 0xf2, 0xa1, 0x33, 0xbb, 0x52, 0x49, 0xbb, 0xe4, 0x0d, 0xc8, 0x6e, 0x1b, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1222 = { .name = "xdh_wei25519_1222", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1222_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1222_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1222_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 176 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1223 for XDH, tcId is 177 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1223_peerpubkey[] = { 0xcf, 0x91, 0x1a, 0xc9, 0x1b, 0x0d, 0x94, 0x40, 0x49, 0xce, 0xc6, 0x6a, 0xe5, 0xef, 0x0c, 0x45, 0x49, 0xd1, 0xe6, 0x12, 0xe1, 0x07, 0xc6, 0x8e, 0x87, 0x26, 0x3a, 0x2f, 0xbc, 0xf8, 0x32, 0x3f, }; static const unsigned char xdh_wei25519_1223_privkey[] = { 0xb8, 0x39, 0x60, 0xf5, 0xd0, 0x61, 0x3c, 0xda, 0xac, 0x6d, 0xda, 0x69, 0x03, 0x51, 0x66, 0x6e, 0x9f, 0x27, 0x7b, 0xba, 0x6b, 0xd4, 0x06, 0xb0, 0xe2, 0x7a, 0x18, 0x86, 0xbb, 0x2d, 0x3e, 0x46, }; static const unsigned char xdh_wei25519_1223_sharedsecret[] = { 0x71, 0x37, 0x3e, 0xbe, 0x67, 0xf3, 0x9a, 0x2c, 0x23, 0x00, 0x27, 0xc7, 0xdb, 0x4b, 0x3b, 0x74, 0xba, 0xb8, 0x0e, 0xd2, 0x12, 0xb2, 0x32, 0x67, 0x97, 0x85, 0xee, 0x10, 0xf4, 0x7c, 0x30, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1223 = { .name = "xdh_wei25519_1223", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1223_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1223_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1223_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 177 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1224 for XDH, tcId is 178 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1224_peerpubkey[] = { 0x1e, 0x6e, 0xe5, 0x36, 0xe4, 0xf2, 0x6b, 0xbf, 0xb6, 0x31, 0x39, 0x95, 0x1a, 0x10, 0xf3, 0xba, 0xb6, 0x2e, 0x19, 0xed, 0x1e, 0xf8, 0x39, 0x71, 0x78, 0xd9, 0xc5, 0xd0, 0x43, 0x07, 0xcd, 0x40, }; static const unsigned char xdh_wei25519_1224_privkey[] = { 0xd0, 0x3b, 0x75, 0xf0, 0x9a, 0xc8, 0x07, 0xdf, 0xd2, 0xee, 0x35, 0x2c, 0x04, 0xa1, 0xf2, 0x59, 0x84, 0x72, 0x0f, 0x78, 0x5f, 0xfa, 0xa0, 0xaf, 0x88, 0xbc, 0x5d, 0xb6, 0xff, 0x9c, 0x34, 0x53, }; static const unsigned char xdh_wei25519_1224_sharedsecret[] = { 0x23, 0x8e, 0xef, 0x43, 0xc5, 0x89, 0x82, 0x2e, 0x1d, 0x3d, 0xe4, 0x1c, 0x1c, 0xc4, 0x6d, 0xcf, 0xec, 0x7a, 0x93, 0xfe, 0xbf, 0x37, 0xc8, 0x54, 0x6b, 0x66, 0x25, 0xe1, 0xa1, 0x23, 0x81, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1224 = { .name = "xdh_wei25519_1224", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1224_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1224_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1224_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 178 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1225 for XDH, tcId is 179 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1225_peerpubkey[] = { 0x2f, 0x1c, 0x79, 0xad, 0x84, 0x88, 0xdb, 0x6f, 0x51, 0x46, 0x90, 0x3b, 0x2d, 0xc4, 0x6c, 0xfb, 0xfc, 0x83, 0x4b, 0xbc, 0xf0, 0x9b, 0x4d, 0xd7, 0x0c, 0x27, 0x4c, 0x4b, 0x67, 0xce, 0x60, 0x5d, }; static const unsigned char xdh_wei25519_1225_privkey[] = { 0xd0, 0x36, 0x94, 0x8c, 0x0e, 0xc2, 0x23, 0xf0, 0xee, 0x57, 0x7e, 0x39, 0x0d, 0xbf, 0x87, 0x22, 0x23, 0x58, 0xed, 0x19, 0x9f, 0x28, 0x23, 0x34, 0x5a, 0xd1, 0x54, 0xbb, 0xc4, 0xcb, 0xcc, 0x47, }; static const unsigned char xdh_wei25519_1225_sharedsecret[] = { 0x87, 0xa7, 0x9c, 0x9c, 0x23, 0x1d, 0x3b, 0x95, 0x26, 0xb4, 0x9b, 0xf3, 0xd6, 0x83, 0xbf, 0x38, 0xc3, 0xc3, 0x19, 0xaf, 0x7c, 0x7c, 0x5d, 0x14, 0x56, 0x48, 0x73, 0x98, 0xda, 0x53, 0x50, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1225 = { .name = "xdh_wei25519_1225", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1225_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1225_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1225_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 179 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1226 for XDH, tcId is 180 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1226_peerpubkey[] = { 0xfc, 0xcf, 0xe7, 0x42, 0xa6, 0x3e, 0xd9, 0xcb, 0x70, 0x95, 0x85, 0x60, 0xb5, 0xa0, 0x22, 0x60, 0x35, 0x0a, 0x7e, 0xcb, 0xaf, 0x8c, 0x57, 0xae, 0x04, 0x5f, 0x67, 0x1a, 0x29, 0xb4, 0xb5, 0x73, }; static const unsigned char xdh_wei25519_1226_privkey[] = { 0xd0, 0x54, 0xde, 0xd6, 0x13, 0xfe, 0xbf, 0x29, 0x50, 0xac, 0x5c, 0x92, 0x7f, 0xcb, 0x12, 0x0c, 0x38, 0x7d, 0xe0, 0xba, 0x61, 0xb3, 0x31, 0xcd, 0x33, 0x02, 0x4c, 0x8b, 0x6e, 0x73, 0x70, 0x48, }; static const unsigned char xdh_wei25519_1226_sharedsecret[] = { 0xd6, 0x83, 0xca, 0x61, 0x94, 0x45, 0x2d, 0x87, 0x8c, 0x12, 0xd7, 0xda, 0x35, 0xf2, 0x28, 0x33, 0xf9, 0x97, 0x28, 0xbb, 0xa8, 0x99, 0x31, 0xa5, 0x12, 0x74, 0xf6, 0x12, 0x10, 0x33, 0x6a, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1226 = { .name = "xdh_wei25519_1226", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1226_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1226_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1226_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 180 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1227 for XDH, tcId is 181 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1227_peerpubkey[] = { 0xcb, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_1227_privkey[] = { 0xe8, 0x2c, 0x48, 0x06, 0x31, 0xfb, 0x15, 0x3b, 0xa2, 0x21, 0x1f, 0xe6, 0x03, 0x03, 0x2b, 0x3e, 0x71, 0xb1, 0x62, 0xdb, 0xd3, 0xc1, 0x1b, 0xec, 0x03, 0x20, 0x8f, 0xfc, 0xd5, 0x10, 0x65, 0x5f, }; static const unsigned char xdh_wei25519_1227_sharedsecret[] = { 0xdb, 0xf6, 0x20, 0x35, 0x16, 0x63, 0x58, 0x40, 0xcf, 0x69, 0xa0, 0x2d, 0xb8, 0x7c, 0xf0, 0xd9, 0x5d, 0xae, 0x31, 0x5d, 0xa7, 0xfc, 0x1e, 0xc7, 0xce, 0x2b, 0x29, 0xe1, 0xf2, 0xdb, 0x66, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1227 = { .name = "xdh_wei25519_1227", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1227_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1227_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1227_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 181 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1228 for XDH, tcId is 182 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1228_peerpubkey[] = { 0x10, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_1228_privkey[] = { 0xc0, 0xc0, 0x1d, 0x28, 0xc1, 0xca, 0xb0, 0x1f, 0x59, 0x70, 0x0a, 0xca, 0x5f, 0x18, 0xd2, 0x69, 0x76, 0x58, 0xb3, 0x7f, 0xdd, 0x54, 0xa3, 0x39, 0xff, 0x39, 0x1c, 0x0a, 0x1a, 0x1b, 0x16, 0x45, }; static const unsigned char xdh_wei25519_1228_sharedsecret[] = { 0x1f, 0xe3, 0x14, 0x74, 0x43, 0x90, 0xd5, 0x25, 0x27, 0x8b, 0x1f, 0x5f, 0xbf, 0x10, 0x81, 0x01, 0xb8, 0xde, 0xd5, 0x87, 0x08, 0x13, 0x75, 0xed, 0x4a, 0xc4, 0xac, 0x69, 0x0d, 0x92, 0x41, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1228 = { .name = "xdh_wei25519_1228", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1228_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1228_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1228_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 182 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1229 for XDH, tcId is 183 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1229_peerpubkey[] = { 0xdc, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_1229_privkey[] = { 0xc8, 0x2b, 0xde, 0x72, 0xdf, 0x36, 0x47, 0x96, 0x88, 0xc4, 0x85, 0xa8, 0xbf, 0x44, 0x2f, 0x4a, 0x34, 0x41, 0x2e, 0x42, 0x9c, 0x02, 0xdb, 0x97, 0x70, 0x4f, 0x03, 0xda, 0xf4, 0xdf, 0xd5, 0x42, }; static const unsigned char xdh_wei25519_1229_sharedsecret[] = { 0xad, 0x45, 0x43, 0x95, 0xee, 0x39, 0x2b, 0xe6, 0x77, 0xbe, 0x7b, 0x9c, 0xb9, 0x14, 0x03, 0x8d, 0x57, 0xd2, 0xd8, 0x7e, 0xc5, 0x6c, 0xc9, 0x86, 0x78, 0xdd, 0x84, 0xf1, 0x99, 0x20, 0x91, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1229 = { .name = "xdh_wei25519_1229", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1229_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1229_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1229_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 183 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1230 for XDH, tcId is 184 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1230_peerpubkey[] = { 0x21, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_1230_privkey[] = { 0x50, 0x3f, 0x69, 0x76, 0x17, 0xfb, 0x02, 0xa7, 0xb8, 0xef, 0x00, 0xba, 0x34, 0xe7, 0xfc, 0x8c, 0xe9, 0x3f, 0x9e, 0xc3, 0xe1, 0xcb, 0xfe, 0x4b, 0xf2, 0xc0, 0x5b, 0xce, 0xe0, 0xcb, 0x97, 0x57, }; static const unsigned char xdh_wei25519_1230_sharedsecret[] = { 0xc6, 0xd6, 0x49, 0x92, 0x55, 0x13, 0x33, 0x98, 0xf9, 0xdd, 0x7f, 0x32, 0x52, 0x5d, 0xb9, 0x77, 0xa5, 0x38, 0x11, 0x88, 0x00, 0xbf, 0xaf, 0x3a, 0xad, 0x8b, 0xcd, 0x26, 0xf0, 0x2c, 0x38, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1230 = { .name = "xdh_wei25519_1230", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1230_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1230_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1230_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 2, tcId is 184 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1231 for XDH, tcId is 185 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1231_peerpubkey[] = { 0xcc, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_1231_privkey[] = { 0x58, 0xcd, 0x4c, 0xa1, 0xe4, 0x33, 0x11, 0x88, 0xde, 0x2b, 0x28, 0x89, 0x41, 0x9c, 0xe2, 0x0e, 0xc5, 0xef, 0x88, 0xa0, 0xe9, 0x3a, 0xf0, 0x92, 0x09, 0x90, 0x65, 0x55, 0x1b, 0x90, 0x4e, 0x41, }; static const unsigned char xdh_wei25519_1231_sharedsecret[] = { 0x0d, 0x74, 0x21, 0x4d, 0xa1, 0x34, 0x4b, 0x11, 0x1d, 0x59, 0xdf, 0xad, 0x37, 0x13, 0xeb, 0x56, 0xef, 0xfe, 0x7c, 0x56, 0x0c, 0x59, 0xcb, 0xbb, 0x99, 0xec, 0x31, 0x39, 0x62, 0xdb, 0xba, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1231 = { .name = "xdh_wei25519_1231", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1231_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1231_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1231_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 185 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1232 for XDH, tcId is 186 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1232_peerpubkey[] = { 0x11, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_1232_privkey[] = { 0x00, 0x4e, 0xa3, 0x44, 0x8b, 0x84, 0xca, 0x50, 0x9e, 0xfe, 0xc5, 0xfc, 0xc2, 0x4c, 0x63, 0xee, 0x98, 0x4d, 0xef, 0x63, 0xb2, 0x9d, 0xeb, 0x90, 0x37, 0x89, 0x47, 0x09, 0x70, 0x9c, 0x09, 0x57, }; static const unsigned char xdh_wei25519_1232_sharedsecret[] = { 0x7b, 0x9d, 0xbf, 0x8d, 0x6c, 0x6d, 0x65, 0x89, 0x8b, 0x51, 0x81, 0x67, 0xbf, 0x40, 0x11, 0xd5, 0x4d, 0xdc, 0x26, 0x5d, 0x95, 0x3c, 0x07, 0x43, 0xd7, 0x86, 0x8e, 0x22, 0xd9, 0x90, 0x9e, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1232 = { .name = "xdh_wei25519_1232", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1232_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1232_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1232_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 186 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1233 for XDH, tcId is 187 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1233_peerpubkey[] = { 0xdd, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_1233_privkey[] = { 0xc8, 0xa6, 0xeb, 0x00, 0xa4, 0xd7, 0x4b, 0xbd, 0xff, 0x23, 0x95, 0x22, 0xc3, 0xc8, 0x91, 0xed, 0x7c, 0xe1, 0x90, 0x4b, 0xe2, 0xa3, 0x29, 0xcd, 0x0a, 0xe0, 0x06, 0x1a, 0x25, 0x3c, 0x95, 0x42, }; static const unsigned char xdh_wei25519_1233_sharedsecret[] = { 0xfb, 0x0e, 0x02, 0x09, 0xc5, 0xb9, 0xd5, 0x1b, 0x40, 0x11, 0x83, 0xd7, 0xe5, 0x6a, 0x59, 0x08, 0x1d, 0x37, 0xa6, 0x2a, 0xb1, 0xe0, 0x57, 0x53, 0xa0, 0x66, 0x7e, 0xeb, 0xd3, 0x77, 0xfd, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1233 = { .name = "xdh_wei25519_1233", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1233_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1233_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1233_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 187 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1234 for XDH, tcId is 188 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1234_peerpubkey[] = { 0x22, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_1234_privkey[] = { 0x50, 0x32, 0x2f, 0xf0, 0xd0, 0xdc, 0xdd, 0x6b, 0x14, 0xf3, 0x07, 0xc0, 0x4d, 0xfe, 0xce, 0xfe, 0x5b, 0x7c, 0xde, 0xaf, 0x92, 0xbf, 0xfb, 0x91, 0x9e, 0x9d, 0x62, 0xed, 0x27, 0x07, 0x90, 0x40, }; static const unsigned char xdh_wei25519_1234_sharedsecret[] = { 0xdb, 0xe7, 0xa1, 0xfe, 0x3b, 0x33, 0x7c, 0x97, 0x20, 0x12, 0x3e, 0x6f, 0xcc, 0x02, 0xcf, 0x96, 0x95, 0x3a, 0x17, 0xdc, 0x9b, 0x39, 0x5a, 0x22, 0x06, 0xcb, 0x1b, 0xf9, 0x1d, 0x41, 0x75, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1234 = { .name = "xdh_wei25519_1234", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1234_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1234_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1234_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 188 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1235 for XDH, tcId is 189 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1235_peerpubkey[] = { 0xe5, 0x8b, 0xac, 0xce, 0xde, 0x32, 0xbc, 0xf3, 0x3b, 0x3b, 0x6e, 0x3d, 0x69, 0xc0, 0x2a, 0xf8, 0x28, 0x4a, 0x96, 0x31, 0xde, 0x74, 0xb6, 0xaf, 0x3f, 0x04, 0x6a, 0x93, 0x69, 0xdf, 0x04, 0x0f, }; static const unsigned char xdh_wei25519_1235_privkey[] = { 0xe0, 0x32, 0x8c, 0x7d, 0x18, 0x8d, 0x98, 0xfa, 0xf2, 0xac, 0x72, 0xd7, 0x28, 0xb7, 0xd1, 0x4f, 0x2b, 0xbb, 0xd7, 0xa9, 0x4d, 0x0f, 0xbd, 0x8e, 0x8f, 0x79, 0xab, 0xe0, 0xb1, 0xfe, 0x10, 0x55, }; static const unsigned char xdh_wei25519_1235_sharedsecret[] = { 0x97, 0xbd, 0x42, 0x09, 0x3e, 0x0d, 0x48, 0xf9, 0x73, 0xf0, 0x59, 0xdd, 0x7a, 0xb9, 0xf9, 0x7d, 0x13, 0xd5, 0xb0, 0xd5, 0xee, 0xdf, 0xfd, 0xf6, 0xda, 0x3c, 0x3c, 0x43, 0x28, 0x72, 0xc5, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1235 = { .name = "xdh_wei25519_1235", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1235_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1235_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1235_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 189 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1236 for XDH, tcId is 190 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1236_peerpubkey[] = { 0xc6, 0xd5, 0xc6, 0x93, 0xfc, 0x0a, 0x4e, 0x2d, 0xf6, 0xb2, 0x90, 0x02, 0x68, 0x60, 0x56, 0x6a, 0x16, 0x6b, 0x6d, 0x7a, 0xeb, 0xe3, 0xc9, 0x88, 0x28, 0xd4, 0x92, 0x74, 0x5c, 0x8d, 0xf9, 0x36, }; static const unsigned char xdh_wei25519_1236_privkey[] = { 0x50, 0x17, 0x67, 0x9a, 0x17, 0xbd, 0x23, 0xad, 0xf9, 0x5a, 0xd4, 0x7e, 0x31, 0x0f, 0xc6, 0x52, 0x6f, 0x4b, 0xa9, 0xca, 0x3b, 0x08, 0x39, 0xb5, 0x3b, 0xd0, 0xd9, 0x28, 0x39, 0xeb, 0x5b, 0x4f, }; static const unsigned char xdh_wei25519_1236_sharedsecret[] = { 0x99, 0xbc, 0xbc, 0x7b, 0x9a, 0xa5, 0xe2, 0x55, 0x80, 0xf9, 0x2b, 0xf5, 0x89, 0xe9, 0x5d, 0xae, 0x87, 0x4b, 0x83, 0xe4, 0x20, 0x22, 0x5d, 0x8a, 0x93, 0xe1, 0x8e, 0x96, 0xda, 0xc0, 0x0b, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1236 = { .name = "xdh_wei25519_1236", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1236_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1236_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1236_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 190 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1237 for XDH, tcId is 191 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1237_peerpubkey[] = { 0xd1, 0x5f, 0x4b, 0xf2, 0xef, 0x5c, 0x7b, 0xda, 0x4e, 0xe9, 0x51, 0x96, 0xf3, 0xc0, 0xdf, 0x71, 0x0d, 0xf5, 0xd3, 0xd2, 0x06, 0x36, 0x0f, 0xc3, 0x17, 0x4e, 0xa7, 0x5c, 0x3a, 0xa3, 0xa7, 0x43, }; static const unsigned char xdh_wei25519_1237_privkey[] = { 0x28, 0x64, 0xaa, 0xf6, 0x1c, 0x14, 0x6d, 0xf0, 0x6c, 0xc2, 0x56, 0xb0, 0x65, 0xf6, 0x6b, 0x34, 0x98, 0x5c, 0xc0, 0x15, 0xda, 0x5b, 0x1d, 0x64, 0x7a, 0x6e, 0xd4, 0xe2, 0xc7, 0x6b, 0xfc, 0x43, }; static const unsigned char xdh_wei25519_1237_sharedsecret[] = { 0xaf, 0xa2, 0xad, 0xb5, 0x2a, 0x67, 0x0a, 0xa9, 0xc3, 0xec, 0x30, 0x20, 0xd5, 0xfd, 0xa2, 0x85, 0x47, 0x4e, 0xde, 0x5c, 0x4f, 0x4c, 0x30, 0xe9, 0x23, 0x8b, 0x88, 0x4a, 0x77, 0x96, 0x94, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_1237 = { .name = "xdh_wei25519_1237", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1237_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1237_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1237_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 191 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1238 for XDH, tcId is 192 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1238_peerpubkey[] = { 0x6d, 0xff, 0xb0, 0xa2, 0x58, 0x88, 0xbf, 0x23, 0xcf, 0x1a, 0xc7, 0x01, 0xbf, 0xbd, 0xed, 0xe8, 0xa1, 0x8e, 0x32, 0x3b, 0x9d, 0x4d, 0x3d, 0x31, 0xe5, 0x16, 0xa0, 0x5f, 0xce, 0x7c, 0xe8, 0x72, }; static const unsigned char xdh_wei25519_1238_privkey[] = { 0x18, 0x4a, 0x6c, 0xfb, 0xab, 0xcb, 0xd1, 0x50, 0x7a, 0x2e, 0xa4, 0x1f, 0x52, 0x79, 0x65, 0x83, 0xdb, 0xdb, 0x85, 0x1b, 0x88, 0xa8, 0x57, 0x81, 0xee, 0x8e, 0x3c, 0x28, 0x78, 0x2c, 0x33, 0x49, }; static const unsigned char xdh_wei25519_1238_sharedsecret[] = { 0xe6, 0xa2, 0xfc, 0x8e, 0xd9, 0x3c, 0xe3, 0x53, 0x01, 0x78, 0xfe, 0xf9, 0x4b, 0xb0, 0x05, 0x6f, 0x43, 0x11, 0x8e, 0x5b, 0xe3, 0xa6, 0xea, 0xbe, 0xe7, 0xd2, 0xed, 0x38, 0x4a, 0x73, 0x80, 0x0c, }; static const wycheproof_xdh_test xdh_wei25519_1238 = { .name = "xdh_wei25519_1238", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1238_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1238_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1238_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 192 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1239 for XDH, tcId is 193 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1239_peerpubkey[] = { 0x21, 0xf8, 0x6d, 0x12, 0x3c, 0x92, 0x3a, 0x92, 0xaa, 0xf2, 0x56, 0x3d, 0xf9, 0x4b, 0x5b, 0x5c, 0x93, 0x87, 0x4f, 0x5b, 0x7a, 0xb9, 0x95, 0x4a, 0xaa, 0x53, 0xe3, 0xd7, 0x2f, 0x0f, 0xf6, 0x7e, }; static const unsigned char xdh_wei25519_1239_privkey[] = { 0xc8, 0x5f, 0x95, 0x4b, 0x85, 0xbc, 0x10, 0x2a, 0xca, 0x79, 0x96, 0x71, 0x79, 0x34, 0x52, 0x17, 0x65, 0x38, 0xd0, 0x77, 0x86, 0x2e, 0xe4, 0x5e, 0x0b, 0x25, 0x36, 0x19, 0x76, 0x7d, 0xff, 0x42, }; static const unsigned char xdh_wei25519_1239_sharedsecret[] = { 0x7f, 0xc2, 0x87, 0x81, 0x63, 0x14, 0x10, 0xc5, 0xa6, 0xf2, 0x5c, 0x9c, 0xfd, 0x91, 0xec, 0x0a, 0x84, 0x8a, 0xdb, 0x7a, 0x9e, 0xb4, 0x0b, 0xc5, 0xb4, 0x95, 0xd0, 0xf4, 0x75, 0x3f, 0x22, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1239 = { .name = "xdh_wei25519_1239", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1239_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1239_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1239_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 193 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1240 for XDH, tcId is 194 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1240_peerpubkey[] = { 0x58, 0x7c, 0x34, 0x7c, 0x8c, 0xb2, 0x49, 0x56, 0x4a, 0xb7, 0x73, 0x83, 0xde, 0x35, 0x8c, 0xc2, 0xa1, 0x9f, 0xe7, 0x37, 0x0a, 0x84, 0x76, 0xd4, 0x30, 0x91, 0x12, 0x35, 0x98, 0x94, 0x1c, 0x7f, }; static const unsigned char xdh_wei25519_1240_privkey[] = { 0x50, 0xe3, 0xe5, 0xa9, 0xa1, 0x9b, 0xe2, 0xee, 0x35, 0x48, 0xb0, 0x96, 0x46, 0x72, 0xfb, 0x5e, 0x31, 0x34, 0xcb, 0x0d, 0x2f, 0x7a, 0xdf, 0x00, 0x0e, 0x45, 0x56, 0xd0, 0xff, 0xa3, 0x76, 0x43, }; static const unsigned char xdh_wei25519_1240_sharedsecret[] = { 0x31, 0x4d, 0x8a, 0x2b, 0x5c, 0x76, 0xcc, 0x7e, 0xe1, 0x21, 0x7d, 0xf2, 0x28, 0x3b, 0x7e, 0x67, 0x24, 0x43, 0x6e, 0x27, 0x3a, 0xeb, 0x80, 0x62, 0x8d, 0xce, 0x06, 0x00, 0xab, 0x47, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1240 = { .name = "xdh_wei25519_1240", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1240_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1240_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1240_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 194 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1241 for XDH, tcId is 195 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1241_peerpubkey[] = { 0xf5, 0xc6, 0x31, 0x1a, 0x1d, 0xd1, 0xb9, 0xe0, 0xf8, 0xcf, 0xd0, 0x34, 0xac, 0x6d, 0x01, 0xbf, 0x28, 0xd9, 0xd0, 0xf9, 0x62, 0xa1, 0x93, 0x4a, 0xe2, 0xcb, 0x97, 0xcb, 0x17, 0x3d, 0xd8, 0x10, }; static const unsigned char xdh_wei25519_1241_privkey[] = { 0x08, 0xec, 0xe5, 0x80, 0xbb, 0x6d, 0xdf, 0x96, 0x55, 0x9b, 0x81, 0xd7, 0xa9, 0x7d, 0xd4, 0x53, 0x1d, 0xef, 0x6c, 0xc7, 0x8d, 0x44, 0x8a, 0x70, 0xce, 0xba, 0xbd, 0xd2, 0x6c, 0xaa, 0xb1, 0x46, }; static const unsigned char xdh_wei25519_1241_sharedsecret[] = { 0x2b, 0xfd, 0x8e, 0x53, 0x08, 0xc3, 0x44, 0x98, 0xeb, 0x2b, 0x4d, 0xaf, 0x9e, 0xd5, 0x1c, 0xf6, 0x23, 0xda, 0x3b, 0xea, 0xeb, 0x0e, 0xfd, 0x3d, 0x68, 0x7f, 0x2b, 0x8b, 0xec, 0xbf, 0x31, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1241 = { .name = "xdh_wei25519_1241", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1241_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1241_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1241_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 195 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1242 for XDH, tcId is 196 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1242_peerpubkey[] = { 0x93, 0x16, 0xc0, 0x6d, 0x27, 0xb2, 0x4a, 0xbc, 0x67, 0x3f, 0xfb, 0x51, 0x05, 0xc5, 0xb9, 0xa8, 0x9b, 0xdf, 0xaa, 0x79, 0xe8, 0x1c, 0xdb, 0xb8, 0x95, 0x56, 0x07, 0x43, 0x77, 0xc7, 0x03, 0x20, }; static const unsigned char xdh_wei25519_1242_privkey[] = { 0xa8, 0x86, 0x03, 0x3e, 0x9d, 0xc2, 0xb6, 0xa9, 0x13, 0xff, 0xfb, 0xc2, 0xbd, 0x40, 0x2e, 0x8c, 0x11, 0xec, 0x34, 0xd4, 0x9c, 0x0d, 0xc0, 0xfa, 0x14, 0x29, 0x32, 0x9b, 0x69, 0x4a, 0x28, 0x5f, }; static const unsigned char xdh_wei25519_1242_sharedsecret[] = { 0xd5, 0x3c, 0x3d, 0x6f, 0x53, 0x8c, 0x12, 0x6b, 0x93, 0x36, 0x78, 0x5d, 0x1d, 0x4e, 0x69, 0x35, 0xdc, 0x8b, 0x21, 0xf3, 0xd7, 0xe9, 0xc2, 0x5b, 0xc2, 0x40, 0xa0, 0x3e, 0x39, 0x02, 0x33, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1242 = { .name = "xdh_wei25519_1242", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1242_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1242_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1242_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 196 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1243 for XDH, tcId is 197 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1243_peerpubkey[] = { 0x8a, 0x41, 0x79, 0x80, 0x7b, 0x07, 0x64, 0x9e, 0x04, 0xf7, 0x11, 0xbf, 0x94, 0x73, 0xa7, 0x99, 0x93, 0xf8, 0x42, 0x93, 0xe4, 0xa8, 0xb9, 0xaf, 0xee, 0x44, 0xa2, 0x2e, 0xf1, 0x00, 0x0b, 0x21, }; static const unsigned char xdh_wei25519_1243_privkey[] = { 0x98, 0xb1, 0xcc, 0x20, 0x20, 0xa8, 0xec, 0x57, 0x5d, 0x5c, 0x46, 0xc7, 0x60, 0x24, 0xcf, 0x7c, 0x7a, 0xd7, 0x62, 0x8e, 0xb9, 0x09, 0x73, 0x0b, 0xc4, 0xf4, 0x60, 0xaa, 0xf0, 0xe6, 0xda, 0x4b, }; static const unsigned char xdh_wei25519_1243_sharedsecret[] = { 0x45, 0x31, 0x88, 0x1a, 0xd9, 0xcf, 0x01, 0x16, 0x93, 0xdd, 0xf0, 0x28, 0x42, 0xfb, 0xda, 0xb8, 0x6d, 0x71, 0xe2, 0x76, 0x80, 0xe9, 0xb4, 0xb3, 0xf9, 0x3b, 0x4c, 0xf1, 0x5e, 0x73, 0x7e, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1243 = { .name = "xdh_wei25519_1243", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1243_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1243_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1243_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 197 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1244 for XDH, tcId is 198 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1244_peerpubkey[] = { 0xa7, 0x73, 0x27, 0x7a, 0xe1, 0x02, 0x9f, 0x85, 0x47, 0x49, 0x13, 0x7b, 0x0f, 0x3a, 0x02, 0xb5, 0xb3, 0x56, 0x0b, 0x9c, 0x4c, 0xa4, 0xdb, 0xde, 0xb3, 0x12, 0x5e, 0xc8, 0x96, 0xb8, 0x18, 0x41, }; static const unsigned char xdh_wei25519_1244_privkey[] = { 0xc8, 0xe1, 0x93, 0xde, 0x16, 0x2a, 0xa3, 0x49, 0xa3, 0x43, 0x2c, 0x7a, 0x0c, 0x05, 0x21, 0xd9, 0x2c, 0xbc, 0x5e, 0x3b, 0xf8, 0x26, 0x15, 0xe4, 0x29, 0x55, 0xdd, 0x67, 0xec, 0x12, 0x34, 0x5f, }; static const unsigned char xdh_wei25519_1244_sharedsecret[] = { 0x7b, 0xa4, 0xd3, 0xde, 0x69, 0x7a, 0xa1, 0x1a, 0xdd, 0xf3, 0x91, 0x1e, 0x93, 0xc9, 0x4b, 0x7e, 0x94, 0x3b, 0xef, 0xf3, 0xe3, 0xb1, 0xb5, 0x6b, 0x7d, 0xe4, 0x46, 0x1f, 0x9e, 0x48, 0xbe, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_1244 = { .name = "xdh_wei25519_1244", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1244_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1244_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1244_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 198 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1245 for XDH, tcId is 199 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1245_peerpubkey[] = { 0x1e, 0xce, 0xb2, 0xb3, 0x76, 0x32, 0x31, 0xbc, 0x3c, 0x99, 0xdc, 0x62, 0x26, 0x6a, 0x09, 0xab, 0x5d, 0x36, 0x61, 0xc7, 0x56, 0x52, 0x4c, 0xdd, 0xc5, 0xaa, 0xbc, 0xed, 0xee, 0x92, 0xda, 0x61, }; static const unsigned char xdh_wei25519_1245_privkey[] = { 0x88, 0xe0, 0x12, 0x37, 0xb3, 0x36, 0x01, 0x40, 0x75, 0x67, 0x60, 0x82, 0xaf, 0xbd, 0xe5, 0x1d, 0x59, 0x5d, 0x47, 0xe1, 0xfa, 0x52, 0x14, 0xb5, 0x1a, 0x35, 0x1a, 0xbb, 0xf6, 0x49, 0x14, 0x42, }; static const unsigned char xdh_wei25519_1245_sharedsecret[] = { 0xbc, 0xf0, 0x88, 0x40, 0x52, 0xf9, 0x12, 0xa6, 0x3b, 0xba, 0xb8, 0xc5, 0xc6, 0x74, 0xb9, 0x1c, 0x49, 0x89, 0xae, 0x05, 0x1f, 0xa0, 0x7f, 0xcf, 0x30, 0xcb, 0x53, 0x17, 0xfb, 0x1f, 0x2e, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1245 = { .name = "xdh_wei25519_1245", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1245_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1245_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1245_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 199 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1246 for XDH, tcId is 200 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1246_peerpubkey[] = { 0x9a, 0x2a, 0xcb, 0xb3, 0xb5, 0xa3, 0x86, 0xa6, 0x10, 0x2e, 0x37, 0x28, 0xbe, 0x3a, 0x97, 0xde, 0x03, 0x98, 0x1d, 0x5c, 0x71, 0xfd, 0x2d, 0x95, 0x46, 0x04, 0xbe, 0xe3, 0xd3, 0xd0, 0xce, 0x62, }; static const unsigned char xdh_wei25519_1246_privkey[] = { 0xe8, 0x23, 0x13, 0xe4, 0x51, 0xa1, 0x98, 0xdc, 0xe4, 0xae, 0x95, 0xc6, 0x83, 0x2a, 0x82, 0x81, 0xd8, 0x47, 0xfc, 0x87, 0xb2, 0x8d, 0xb0, 0x0f, 0xe4, 0x37, 0x57, 0xc1, 0x6c, 0xc4, 0x9c, 0x4a, }; static const unsigned char xdh_wei25519_1246_sharedsecret[] = { 0xe5, 0x77, 0x2a, 0x92, 0xb1, 0x03, 0xee, 0x69, 0x6a, 0x99, 0x97, 0x05, 0xcf, 0x07, 0x11, 0x0c, 0x46, 0x0f, 0x05, 0x45, 0x68, 0x2d, 0xb3, 0xfa, 0xc5, 0xd8, 0x75, 0xd6, 0x96, 0x48, 0xbc, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1246 = { .name = "xdh_wei25519_1246", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1246_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1246_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1246_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 200 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1247 for XDH, tcId is 201 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1247_peerpubkey[] = { 0x27, 0x43, 0x0e, 0x1c, 0x2d, 0x30, 0x89, 0x70, 0x8b, 0xca, 0x56, 0xd7, 0xa5, 0xad, 0x03, 0x79, 0x28, 0x28, 0xd4, 0x76, 0x85, 0xb6, 0x13, 0x1e, 0x02, 0x3d, 0xd0, 0x80, 0x87, 0x16, 0xb8, 0x63, }; static const unsigned char xdh_wei25519_1247_privkey[] = { 0x28, 0x28, 0x59, 0x4d, 0x16, 0x76, 0x8e, 0x58, 0x6d, 0xf3, 0x96, 0x01, 0xec, 0xc8, 0x6d, 0x3f, 0xad, 0x63, 0x89, 0xd8, 0x72, 0xb5, 0x3f, 0xca, 0x3e, 0xdc, 0xaf, 0x6f, 0xb9, 0x58, 0xf6, 0x53, }; static const unsigned char xdh_wei25519_1247_sharedsecret[] = { 0x37, 0x8c, 0x29, 0xe3, 0xbe, 0x97, 0xa2, 0x1b, 0x9f, 0x81, 0xaf, 0xca, 0x0d, 0x0f, 0x5c, 0x24, 0x2f, 0xd4, 0xf8, 0x96, 0x11, 0x4f, 0x77, 0xa7, 0x71, 0x55, 0xd0, 0x6c, 0xe5, 0xfb, 0xfa, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_1247 = { .name = "xdh_wei25519_1247", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1247_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1247_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1247_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 201 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1248 for XDH, tcId is 202 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1248_peerpubkey[] = { 0x4e, 0xf3, 0x67, 0x90, 0x1a, 0xac, 0x8b, 0xa9, 0x0a, 0x50, 0xe0, 0xcf, 0x86, 0xca, 0x4e, 0x4a, 0x3f, 0xf1, 0x64, 0xfb, 0x12, 0x16, 0x05, 0xbe, 0x34, 0x6e, 0x2e, 0x48, 0xd0, 0x4a, 0xc9, 0x12, }; static const unsigned char xdh_wei25519_1248_privkey[] = { 0xa8, 0x4f, 0x48, 0x8e, 0x19, 0x31, 0x39, 0xf9, 0x86, 0xb0, 0xe5, 0xb2, 0x49, 0x63, 0x5b, 0x13, 0x7d, 0x38, 0x5e, 0x42, 0x03, 0x42, 0xae, 0xf1, 0xf1, 0x94, 0xfc, 0xde, 0x1f, 0xe5, 0xe8, 0x50, }; static const unsigned char xdh_wei25519_1248_sharedsecret[] = { 0x7e, 0xb4, 0x8a, 0x60, 0xb1, 0x4f, 0xb9, 0xea, 0x57, 0x28, 0xf6, 0x41, 0x0a, 0xef, 0x62, 0x7d, 0x15, 0x22, 0xfa, 0xd4, 0x81, 0xb9, 0x34, 0xaf, 0x64, 0xe2, 0xc4, 0x83, 0xb6, 0x4d, 0x58, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1248 = { .name = "xdh_wei25519_1248", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1248_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1248_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1248_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 202 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1249 for XDH, tcId is 203 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1249_peerpubkey[] = { 0xd1, 0xde, 0x30, 0x3c, 0x4d, 0xdd, 0x05, 0xd5, 0x7c, 0x29, 0xdf, 0x92, 0xad, 0x17, 0x2d, 0xd8, 0xc8, 0xf4, 0x24, 0xe6, 0x3e, 0xc9, 0x34, 0x45, 0xbe, 0xae, 0xa4, 0x4f, 0x9d, 0x12, 0x4b, 0x17, }; static const unsigned char xdh_wei25519_1249_privkey[] = { 0x30, 0xfd, 0x2a, 0x78, 0x1e, 0x09, 0x5c, 0x34, 0xa4, 0x83, 0x90, 0x7b, 0x3d, 0xd2, 0xd8, 0xbd, 0x27, 0x36, 0xe2, 0x79, 0x61, 0x7b, 0xfa, 0x6b, 0x8b, 0x4e, 0x0e, 0x1c, 0xf9, 0x0f, 0xbd, 0x46, }; static const unsigned char xdh_wei25519_1249_sharedsecret[] = { 0xb7, 0x1b, 0xdb, 0xed, 0x78, 0x02, 0x3a, 0x06, 0xde, 0xed, 0x1c, 0x18, 0x2e, 0x14, 0xc9, 0x8f, 0x7c, 0xf4, 0x6b, 0xc6, 0x27, 0xa4, 0xa2, 0xc1, 0x02, 0xad, 0x23, 0xc4, 0x1c, 0xf3, 0x24, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1249 = { .name = "xdh_wei25519_1249", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1249_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1249_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1249_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 203 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1250 for XDH, tcId is 204 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1250_peerpubkey[] = { 0x5b, 0xcc, 0xd7, 0x39, 0xfd, 0x75, 0x17, 0xd9, 0x34, 0x4b, 0xf6, 0xb2, 0xb0, 0xf1, 0x9a, 0x1e, 0x0c, 0x38, 0xd9, 0x34, 0x9a, 0x25, 0xad, 0x1f, 0x94, 0xaf, 0x4a, 0x2c, 0xdc, 0xf5, 0xe8, 0x37, }; static const unsigned char xdh_wei25519_1250_privkey[] = { 0x28, 0x31, 0x2e, 0x17, 0xb4, 0x7d, 0xd3, 0x2d, 0x90, 0x56, 0x11, 0x68, 0x24, 0x51, 0x87, 0x96, 0x3c, 0x74, 0x69, 0xa3, 0x1c, 0x88, 0x1e, 0x4a, 0x5c, 0x94, 0x38, 0x42, 0x62, 0xb7, 0x19, 0x59, }; static const unsigned char xdh_wei25519_1250_sharedsecret[] = { 0x5b, 0xb5, 0x68, 0x77, 0xca, 0xf2, 0xcd, 0xac, 0x98, 0x61, 0x1b, 0x60, 0x36, 0x7f, 0xbb, 0x74, 0x26, 0x59, 0x84, 0x61, 0x4e, 0x5e, 0x73, 0x99, 0x6e, 0x8e, 0xa1, 0xbd, 0x6f, 0x74, 0x9f, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_1250 = { .name = "xdh_wei25519_1250", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1250_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1250_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1250_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 204 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1251 for XDH, tcId is 205 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1251_peerpubkey[] = { 0x8a, 0x7a, 0x93, 0x93, 0x10, 0xdf, 0x7e, 0xa7, 0x68, 0x45, 0x4d, 0xf5, 0x1b, 0xcd, 0x0d, 0xfb, 0xd7, 0xbe, 0x4f, 0xcb, 0xb2, 0xff, 0xc9, 0x84, 0x29, 0xd9, 0x13, 0xec, 0x69, 0x11, 0xf3, 0x37, }; static const unsigned char xdh_wei25519_1251_privkey[] = { 0xa8, 0x76, 0x40, 0xcf, 0x82, 0x37, 0xb4, 0x73, 0xc6, 0x38, 0xb3, 0xe9, 0xdf, 0x08, 0x64, 0x4e, 0x86, 0x07, 0xe5, 0x63, 0xb5, 0x96, 0x43, 0x63, 0xcc, 0xc4, 0x21, 0x33, 0xb2, 0x99, 0x67, 0x42, }; static const unsigned char xdh_wei25519_1251_sharedsecret[] = { 0xb5, 0x68, 0xed, 0x46, 0xd0, 0x4f, 0x62, 0x91, 0xf8, 0xc1, 0x76, 0xdc, 0xa8, 0xaf, 0xf6, 0xd2, 0x21, 0xde, 0x4c, 0x9c, 0xce, 0x4b, 0x40, 0x4d, 0x54, 0x01, 0xfb, 0xe7, 0x0a, 0x32, 0x45, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1251 = { .name = "xdh_wei25519_1251", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1251_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1251_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1251_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 205 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1252 for XDH, tcId is 206 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1252_peerpubkey[] = { 0xfe, 0x35, 0x90, 0xfc, 0x38, 0x2d, 0xa7, 0xa8, 0x2e, 0x28, 0xd0, 0x7f, 0xaf, 0xe4, 0x0d, 0x4a, 0xfc, 0x91, 0x18, 0x3a, 0x45, 0x36, 0xe3, 0xe6, 0xb5, 0x50, 0xfe, 0xe8, 0x4a, 0x4b, 0x7b, 0x4b, }; static const unsigned char xdh_wei25519_1252_privkey[] = { 0x78, 0x0c, 0x5b, 0x88, 0x27, 0x20, 0xd8, 0x5e, 0x5d, 0xdf, 0xaf, 0x10, 0x33, 0xe9, 0xa1, 0x38, 0x5d, 0xf9, 0xe2, 0x16, 0x89, 0xee, 0xda, 0x4d, 0xcc, 0x74, 0x44, 0xad, 0x28, 0x33, 0x0a, 0x50, }; static const unsigned char xdh_wei25519_1252_sharedsecret[] = { 0x11, 0xfb, 0x44, 0xe8, 0x10, 0xbc, 0xe8, 0x53, 0x6a, 0x95, 0x7e, 0xaa, 0x56, 0xe0, 0x2d, 0x04, 0xdd, 0x86, 0x67, 0x00, 0x29, 0x8f, 0x13, 0xb0, 0x4e, 0xbe, 0xb4, 0x8e, 0x20, 0xd9, 0x36, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_1252 = { .name = "xdh_wei25519_1252", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1252_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1252_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1252_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 206 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1253 for XDH, tcId is 207 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1253_peerpubkey[] = { 0xfa, 0xd9, 0xab, 0x3e, 0x80, 0x3b, 0x49, 0xfc, 0x81, 0xb2, 0x7e, 0xe6, 0x9d, 0xb6, 0xfc, 0x9f, 0xdb, 0x82, 0xe3, 0x54, 0x53, 0xb5, 0x9e, 0xf8, 0xfa, 0xb2, 0xa3, 0xbe, 0xb5, 0xe1, 0x13, 0x4c, }; static const unsigned char xdh_wei25519_1253_privkey[] = { 0x20, 0x9e, 0x5e, 0x0a, 0xe1, 0x99, 0x4b, 0xd8, 0x59, 0xce, 0x89, 0x92, 0xb6, 0x2e, 0xc3, 0xa6, 0x6d, 0xf2, 0xeb, 0x50, 0x23, 0x2b, 0xcc, 0x3a, 0x3d, 0x27, 0xb6, 0x61, 0x4f, 0x6b, 0x01, 0x4d, }; static const unsigned char xdh_wei25519_1253_sharedsecret[] = { 0x85, 0xd9, 0xdb, 0x8f, 0x18, 0x2b, 0xc6, 0x8d, 0xb6, 0x7d, 0xe3, 0x47, 0x1f, 0x78, 0x6b, 0x45, 0xb1, 0x61, 0x9a, 0xec, 0x0f, 0x32, 0xb1, 0x08, 0xac, 0xe3, 0x0e, 0xe7, 0xb2, 0x62, 0x43, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_1253 = { .name = "xdh_wei25519_1253", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1253_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1253_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1253_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 207 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1254 for XDH, tcId is 208 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1254_peerpubkey[] = { 0x98, 0xbe, 0xd9, 0x55, 0xf1, 0x51, 0x6c, 0x7a, 0x44, 0x27, 0x51, 0xac, 0x59, 0x00, 0x46, 0xd7, 0xd5, 0x2c, 0xa6, 0x4f, 0x76, 0xdf, 0x82, 0xbe, 0x09, 0xd3, 0x2e, 0x5d, 0x33, 0xb4, 0x90, 0x73, }; static const unsigned char xdh_wei25519_1254_privkey[] = { 0x80, 0x6d, 0x1d, 0xee, 0x5f, 0xf6, 0xae, 0xa8, 0x4a, 0x84, 0x89, 0x16, 0x99, 0x1a, 0x89, 0xef, 0x36, 0x25, 0x58, 0x3e, 0x1b, 0xd4, 0xae, 0x0b, 0x3d, 0xd2, 0x5c, 0x25, 0x24, 0xa4, 0xff, 0x46, }; static const unsigned char xdh_wei25519_1254_sharedsecret[] = { 0x61, 0xd4, 0xef, 0x71, 0xcb, 0xe7, 0xbe, 0x31, 0x28, 0xbe, 0x82, 0x9a, 0xb2, 0x6e, 0xd3, 0x46, 0x3e, 0xb4, 0xab, 0x25, 0x93, 0x7c, 0x30, 0x97, 0x88, 0xe8, 0x76, 0xb2, 0x34, 0x12, 0xaa, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1254 = { .name = "xdh_wei25519_1254", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1254_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1254_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1254_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 208 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1255 for XDH, tcId is 209 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1255_peerpubkey[] = { 0xe5, 0x9b, 0xe4, 0x91, 0x7b, 0x3f, 0x05, 0xb6, 0xfc, 0x87, 0x48, 0xc9, 0xb9, 0x0f, 0x1b, 0x91, 0x02, 0x73, 0xc9, 0xc6, 0xe1, 0x7f, 0xf9, 0x6e, 0xf4, 0x15, 0xff, 0x3d, 0x92, 0x7d, 0x98, 0x7e, }; static const unsigned char xdh_wei25519_1255_privkey[] = { 0x00, 0xf9, 0x8b, 0x02, 0xae, 0x0d, 0xf5, 0x27, 0x4c, 0xc8, 0x99, 0xf5, 0x26, 0xeb, 0x1b, 0x87, 0x72, 0x89, 0xe0, 0x96, 0x34, 0x40, 0xa5, 0x7d, 0xd9, 0x7e, 0x41, 0x4c, 0xdd, 0x2f, 0x7c, 0x51, }; static const unsigned char xdh_wei25519_1255_sharedsecret[] = { 0x5b, 0xa4, 0x39, 0x4e, 0xd1, 0xa6, 0x64, 0x81, 0x1b, 0x01, 0x55, 0x79, 0x44, 0xbe, 0xcf, 0x75, 0x85, 0x65, 0x2a, 0x8a, 0xcb, 0xdb, 0xf8, 0x06, 0x74, 0x29, 0x11, 0x20, 0x7b, 0xd7, 0x93, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1255 = { .name = "xdh_wei25519_1255", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1255_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1255_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1255_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 209 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1256 for XDH, tcId is 210 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1256_peerpubkey[] = { 0x8c, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_1256_privkey[] = { 0xd8, 0x6c, 0x18, 0xf2, 0xbe, 0x39, 0x6b, 0x3b, 0xb7, 0x2f, 0x22, 0xe6, 0xec, 0xe2, 0x2e, 0x27, 0x3a, 0xf6, 0xe1, 0x50, 0x6a, 0x1c, 0x09, 0xad, 0x4d, 0x01, 0xbd, 0xd2, 0xf4, 0x39, 0xf8, 0x43, }; static const unsigned char xdh_wei25519_1256_sharedsecret[] = { 0xa5, 0x95, 0x25, 0x88, 0x61, 0x3e, 0xb7, 0xa5, 0xcd, 0x49, 0xdd, 0x52, 0x6f, 0x1f, 0x20, 0xa4, 0xf0, 0xff, 0xe9, 0x42, 0x3e, 0x82, 0xce, 0xa3, 0x02, 0xc2, 0xdd, 0x90, 0xce, 0x55, 0x99, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1256 = { .name = "xdh_wei25519_1256", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1256_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1256_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1256_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 210 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1257 for XDH, tcId is 211 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1257_peerpubkey[] = { 0xf6, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_1257_privkey[] = { 0xf8, 0x1a, 0xad, 0xb9, 0x05, 0x3e, 0xb6, 0x98, 0x99, 0x6d, 0x0f, 0x78, 0x1d, 0x9c, 0xda, 0x67, 0xf8, 0x2d, 0xde, 0xfa, 0x39, 0x87, 0xd2, 0x76, 0xff, 0x5a, 0x94, 0xff, 0xdf, 0x5d, 0x25, 0x5f, }; static const unsigned char xdh_wei25519_1257_sharedsecret[] = { 0xcb, 0x6f, 0xb6, 0x23, 0x08, 0x4b, 0x61, 0x97, 0x44, 0x3e, 0xc9, 0xba, 0x10, 0x50, 0xc0, 0x92, 0x33, 0x32, 0xe5, 0xe8, 0x29, 0xae, 0x01, 0x94, 0x26, 0x9c, 0xfa, 0xf9, 0x20, 0xa4, 0x36, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1257 = { .name = "xdh_wei25519_1257", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1257_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1257_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1257_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 211 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1258 for XDH, tcId is 212 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1258_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1258_privkey[] = { 0x30, 0x5b, 0x4d, 0xb4, 0x32, 0x1b, 0x49, 0x23, 0xfc, 0x55, 0x9b, 0xf9, 0x1d, 0xf6, 0x77, 0xd0, 0xe1, 0x2c, 0x3a, 0x31, 0xb1, 0x6e, 0xc6, 0x55, 0xcb, 0x70, 0x8b, 0x75, 0x9d, 0x7c, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_1258_sharedsecret[] = { 0x9e, 0x52, 0x60, 0x79, 0xc2, 0xfc, 0xf1, 0x24, 0x26, 0xae, 0x6c, 0x2a, 0x54, 0xb5, 0xff, 0xb7, 0x0f, 0x2e, 0xc6, 0x62, 0xe2, 0x9e, 0xa5, 0xce, 0x0c, 0x83, 0x85, 0xc3, 0xb2, 0x1c, 0xd1, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1258 = { .name = "xdh_wei25519_1258", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1258_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1258_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1258_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 212 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1259 for XDH, tcId is 213 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1259_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1259_privkey[] = { 0x90, 0x06, 0x38, 0xd1, 0x97, 0x98, 0x02, 0xdb, 0x9b, 0x52, 0xe4, 0xdd, 0x84, 0xfa, 0x19, 0x57, 0x9f, 0x61, 0xcd, 0x7b, 0xef, 0x3c, 0x0b, 0x62, 0xfc, 0xcc, 0xae, 0xaa, 0x15, 0xfa, 0x48, 0x4d, }; static const unsigned char xdh_wei25519_1259_sharedsecret[] = { 0x63, 0x29, 0xc7, 0xdc, 0x23, 0x18, 0xec, 0x36, 0x15, 0x3e, 0xf4, 0xf6, 0xf9, 0x1b, 0xc6, 0xe7, 0xd1, 0xe0, 0x08, 0xf5, 0x29, 0x30, 0x65, 0xd9, 0x58, 0x6a, 0xb8, 0x8a, 0xbb, 0x58, 0xf2, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1259 = { .name = "xdh_wei25519_1259", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1259_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1259_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1259_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 213 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1260 for XDH, tcId is 214 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1260_peerpubkey[] = { 0xf6, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_1260_privkey[] = { 0x38, 0x57, 0x5c, 0xf7, 0xc8, 0x69, 0x1e, 0xcc, 0x79, 0xcd, 0x5f, 0x8d, 0x7d, 0x47, 0x03, 0xaa, 0x48, 0x59, 0x2f, 0xf6, 0xe7, 0xf6, 0x47, 0x31, 0xc2, 0xd9, 0x8a, 0x19, 0xae, 0xae, 0x51, 0x4f, }; static const unsigned char xdh_wei25519_1260_sharedsecret[] = { 0x60, 0x3f, 0x4f, 0xc4, 0x10, 0x08, 0x1f, 0x88, 0x09, 0x44, 0xe0, 0xe1, 0x3d, 0x56, 0xfc, 0x54, 0x2a, 0x43, 0x0e, 0xec, 0x81, 0x3f, 0xad, 0x30, 0x2b, 0x7c, 0x5a, 0xc3, 0x80, 0x57, 0x6f, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1260 = { .name = "xdh_wei25519_1260", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1260_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1260_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1260_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 214 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1261 for XDH, tcId is 215 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1261_peerpubkey[] = { 0x60, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_1261_privkey[] = { 0xe8, 0x8b, 0xd0, 0x2c, 0x70, 0x16, 0x54, 0x7a, 0x24, 0xf4, 0x28, 0xbc, 0x2a, 0x9d, 0xcc, 0xca, 0xd6, 0xc6, 0xf8, 0x80, 0xc1, 0x7b, 0xff, 0xcf, 0x66, 0xfc, 0x68, 0x45, 0x96, 0x27, 0xaf, 0x4e, }; static const unsigned char xdh_wei25519_1261_sharedsecret[] = { 0x83, 0x4b, 0xba, 0xd5, 0x47, 0x0e, 0x14, 0x98, 0xc4, 0xb0, 0x14, 0x87, 0x82, 0xdf, 0xe6, 0x30, 0xe8, 0xbf, 0xad, 0xff, 0x19, 0x97, 0xde, 0x80, 0x2a, 0xc8, 0xce, 0x30, 0x2a, 0x1b, 0xda, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1261 = { .name = "xdh_wei25519_1261", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1261_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1261_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1261_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 215 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1262 for XDH, tcId is 216 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1262_peerpubkey[] = { 0x8d, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_1262_privkey[] = { 0x90, 0x36, 0xed, 0x7d, 0x68, 0xf7, 0x44, 0x8a, 0xc4, 0x40, 0xdc, 0x51, 0x21, 0x6b, 0x49, 0x84, 0x0d, 0xca, 0xbd, 0x3d, 0x5e, 0x32, 0xe3, 0xb4, 0xff, 0xc3, 0x2a, 0x5f, 0xe9, 0xe9, 0x67, 0x42, }; static const unsigned char xdh_wei25519_1262_sharedsecret[] = { 0xec, 0x90, 0x70, 0xad, 0x34, 0x91, 0xa5, 0xff, 0x50, 0xd7, 0xd0, 0xdb, 0x6c, 0x9c, 0x84, 0x47, 0x83, 0xdd, 0xe1, 0xc6, 0xfb, 0xd4, 0xfe, 0x16, 0x3e, 0x9a, 0xde, 0x1c, 0xe9, 0xcd, 0x04, 0x1d, }; static const wycheproof_xdh_test xdh_wei25519_1262 = { .name = "xdh_wei25519_1262", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1262_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1262_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1262_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 216 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1263 for XDH, tcId is 217 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1263_peerpubkey[] = { 0xf7, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_1263_privkey[] = { 0x90, 0xc5, 0x5e, 0x77, 0xaa, 0x0f, 0xe4, 0xaf, 0xb1, 0x28, 0x71, 0x09, 0xfd, 0x01, 0x0f, 0x52, 0x63, 0x64, 0xde, 0xa1, 0x8d, 0x88, 0xe2, 0xfd, 0x87, 0x0a, 0xc0, 0x1b, 0x66, 0xe3, 0xfa, 0x4e, }; static const unsigned char xdh_wei25519_1263_sharedsecret[] = { 0xdc, 0x6d, 0x05, 0xb9, 0x2e, 0xdc, 0xdb, 0x5d, 0xc3, 0x34, 0xb1, 0xfc, 0x3d, 0xff, 0x58, 0xfe, 0x5b, 0x24, 0xa5, 0xc5, 0xf0, 0xb2, 0xd4, 0x31, 0x15, 0x55, 0xd0, 0xfc, 0x94, 0x5d, 0x77, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1263 = { .name = "xdh_wei25519_1263", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1263_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1263_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1263_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 217 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1264 for XDH, tcId is 218 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1264_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1264_privkey[] = { 0xa0, 0x21, 0xba, 0x2f, 0xd4, 0xe3, 0xad, 0x57, 0xbc, 0xbf, 0x20, 0x4d, 0x6f, 0x6c, 0x3e, 0x80, 0x18, 0xd8, 0x97, 0x85, 0x52, 0x63, 0x3b, 0x6d, 0xff, 0x1b, 0x74, 0x47, 0xbf, 0x52, 0x94, 0x59, }; static const unsigned char xdh_wei25519_1264_sharedsecret[] = { 0x1b, 0x17, 0x4b, 0x18, 0x99, 0x81, 0xd8, 0x1b, 0xc6, 0x88, 0x79, 0x32, 0x08, 0x3e, 0x84, 0x88, 0xdf, 0x8b, 0xbb, 0xed, 0x57, 0xf9, 0x21, 0x4c, 0x9c, 0xfa, 0x59, 0xd5, 0x9b, 0x57, 0x23, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1264 = { .name = "xdh_wei25519_1264", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1264_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1264_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1264_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 218 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1265 for XDH, tcId is 219 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1265_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1265_privkey[] = { 0x30, 0x35, 0x08, 0x3e, 0x98, 0x48, 0x37, 0x58, 0x7f, 0x6b, 0x73, 0x46, 0xaf, 0x87, 0x1b, 0xf3, 0xfc, 0x95, 0x81, 0xc5, 0x0e, 0xb5, 0x5c, 0x83, 0xae, 0xfa, 0xbe, 0xed, 0x68, 0xce, 0xe3, 0x49, }; static const unsigned char xdh_wei25519_1265_sharedsecret[] = { 0x15, 0xa0, 0x52, 0x14, 0x8a, 0xba, 0xad, 0x1b, 0x0f, 0x2e, 0x74, 0x81, 0xa3, 0x4e, 0xdb, 0x61, 0x40, 0x35, 0x89, 0x43, 0x9b, 0x5b, 0xd5, 0xe5, 0x64, 0x6c, 0xec, 0xeb, 0xe2, 0xa1, 0xbe, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1265 = { .name = "xdh_wei25519_1265", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1265_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1265_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1265_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 219 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1266 for XDH, tcId is 220 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1266_peerpubkey[] = { 0xf7, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_1266_privkey[] = { 0x30, 0x43, 0x5c, 0xe1, 0x87, 0xf2, 0x72, 0x3f, 0x9a, 0x3b, 0xde, 0xa0, 0xee, 0xf8, 0x92, 0x20, 0x7e, 0x15, 0x2e, 0x4c, 0xee, 0x89, 0x85, 0xfa, 0x72, 0xd2, 0xdb, 0x41, 0x47, 0xbd, 0x2a, 0x53, }; static const unsigned char xdh_wei25519_1266_sharedsecret[] = { 0x1d, 0x04, 0x8c, 0xbe, 0x2f, 0x8d, 0xf0, 0x7c, 0x23, 0x3a, 0x8f, 0x93, 0x70, 0x6f, 0x30, 0x7d, 0x17, 0x13, 0x0c, 0x24, 0x97, 0xfb, 0x75, 0x2e, 0xea, 0xa3, 0x1f, 0xe3, 0xed, 0xfc, 0x72, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1266 = { .name = "xdh_wei25519_1266", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1266_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1266_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1266_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 220 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1267 for XDH, tcId is 221 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1267_peerpubkey[] = { 0x61, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_1267_privkey[] = { 0x58, 0x0f, 0x0a, 0x9b, 0xba, 0x72, 0x81, 0xa3, 0x0f, 0xb0, 0x33, 0x49, 0x0e, 0x0f, 0x42, 0x9f, 0x22, 0xe3, 0xf2, 0x67, 0x85, 0x2c, 0xae, 0xac, 0xef, 0xa3, 0xe5, 0x29, 0x1f, 0x0e, 0x61, 0x4e, }; static const unsigned char xdh_wei25519_1267_sharedsecret[] = { 0xcb, 0x92, 0xa9, 0x8b, 0x6a, 0xa9, 0x9a, 0xc9, 0xe3, 0xc5, 0x75, 0x0c, 0xea, 0x6f, 0x08, 0x46, 0xb0, 0x18, 0x1f, 0xaa, 0x59, 0x92, 0x84, 0x5b, 0x79, 0x89, 0x23, 0xd4, 0x19, 0xe8, 0x27, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_1267 = { .name = "xdh_wei25519_1267", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1267_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1267_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1267_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 221 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1268 for XDH, tcId is 222 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1268_peerpubkey[] = { 0xc8, 0x23, 0x9b, 0x71, 0x01, 0x36, 0xfe, 0x43, 0x1f, 0xb4, 0xd9, 0x84, 0x36, 0x15, 0x7e, 0x47, 0xc9, 0xe7, 0x8a, 0x10, 0xf0, 0x9f, 0xf9, 0x2e, 0x98, 0xba, 0xff, 0x15, 0x99, 0x26, 0x06, 0x1c, }; static const unsigned char xdh_wei25519_1268_privkey[] = { 0x70, 0x90, 0x98, 0xfe, 0xb2, 0xe2, 0x5c, 0x67, 0xb4, 0xbf, 0xd3, 0xbe, 0x0a, 0x01, 0xaf, 0x40, 0x9a, 0xdb, 0x6d, 0xa5, 0x2b, 0x3f, 0xbe, 0x3d, 0x97, 0x06, 0x42, 0xdd, 0x2c, 0x98, 0x38, 0x56, }; static const unsigned char xdh_wei25519_1268_sharedsecret[] = { 0xf1, 0xbd, 0x12, 0xd9, 0xd3, 0x2c, 0x6f, 0x4c, 0x5b, 0x2d, 0xcb, 0x3a, 0x5c, 0x52, 0xd9, 0xfd, 0x45, 0x4d, 0x52, 0xca, 0x70, 0x4c, 0x2c, 0x13, 0x79, 0x56, 0xec, 0x8a, 0xd9, 0xae, 0xf1, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1268 = { .name = "xdh_wei25519_1268", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1268_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1268_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1268_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 2, tcId is 222 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1269 for XDH, tcId is 223 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1269_peerpubkey[] = { 0xb7, 0xa2, 0xf7, 0x9e, 0x0d, 0xe9, 0xb5, 0x81, 0x47, 0x69, 0x1b, 0x55, 0x46, 0xd9, 0xec, 0x46, 0x3d, 0xa8, 0x32, 0x5e, 0x14, 0x40, 0xe5, 0x8b, 0xb2, 0x0a, 0xa1, 0x29, 0xd1, 0xb9, 0x73, 0x27, }; static const unsigned char xdh_wei25519_1269_privkey[] = { 0x18, 0x5a, 0xc6, 0x2e, 0x72, 0x9f, 0x88, 0x52, 0x89, 0x50, 0x92, 0x6c, 0x0d, 0xe7, 0xc4, 0x81, 0xc9, 0x24, 0xbf, 0x9c, 0xf2, 0x6a, 0x12, 0x2f, 0x44, 0x3b, 0x86, 0x1e, 0x8b, 0x6a, 0xf6, 0x40, }; static const unsigned char xdh_wei25519_1269_sharedsecret[] = { 0xe6, 0xf1, 0xc4, 0x94, 0xc9, 0xe4, 0xbd, 0x23, 0x25, 0xc1, 0x71, 0x83, 0xe8, 0x2d, 0x31, 0xab, 0x0b, 0xbe, 0xe6, 0xc8, 0x47, 0xd4, 0xb0, 0xe4, 0xa9, 0x9c, 0x7c, 0x68, 0x91, 0x11, 0x7c, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1269 = { .name = "xdh_wei25519_1269", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1269_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1269_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1269_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 223 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1270 for XDH, tcId is 224 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1270_peerpubkey[] = { 0x2d, 0xc6, 0x24, 0xe1, 0x66, 0x3f, 0x42, 0xa7, 0xb9, 0x33, 0x63, 0x50, 0xf2, 0x77, 0x54, 0x1b, 0x50, 0xb8, 0xdd, 0xc7, 0xee, 0x0d, 0x86, 0x13, 0x3a, 0xd5, 0x32, 0x73, 0xae, 0xd4, 0xe6, 0x2e, }; static const unsigned char xdh_wei25519_1270_privkey[] = { 0xf0, 0x37, 0x43, 0xee, 0xad, 0x7c, 0x2f, 0x77, 0x19, 0x79, 0x43, 0x24, 0xf2, 0x71, 0x07, 0x28, 0x17, 0xd1, 0xa0, 0x4c, 0xbd, 0xa4, 0x2b, 0x23, 0x2f, 0x3b, 0xee, 0x43, 0xf3, 0x97, 0xcc, 0x40, }; static const unsigned char xdh_wei25519_1270_sharedsecret[] = { 0xaa, 0x2a, 0x12, 0xed, 0xf7, 0x52, 0xd2, 0x79, 0xbd, 0xb0, 0x00, 0xfb, 0x14, 0x05, 0xa5, 0xdf, 0x8c, 0x5f, 0x1d, 0x41, 0x30, 0x9b, 0x4f, 0x2b, 0xd4, 0x1a, 0xed, 0x7a, 0xc1, 0xed, 0x01, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1270 = { .name = "xdh_wei25519_1270", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1270_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1270_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1270_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 224 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1271 for XDH, tcId is 225 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1271_peerpubkey[] = { 0x0e, 0x5e, 0xce, 0xee, 0x91, 0x04, 0xa6, 0x4f, 0x82, 0xc9, 0x09, 0x3b, 0x9b, 0xf7, 0xb4, 0x07, 0x6e, 0xe5, 0xbc, 0x70, 0x81, 0x5a, 0xf7, 0xee, 0x9f, 0x94, 0x2e, 0xf0, 0x15, 0x75, 0x61, 0x76, }; static const unsigned char xdh_wei25519_1271_privkey[] = { 0xa8, 0xfb, 0xb4, 0xf9, 0x0d, 0xa4, 0x57, 0x94, 0x98, 0x14, 0x05, 0xd5, 0x9e, 0xf3, 0x10, 0x62, 0x1e, 0x3c, 0x3b, 0x6b, 0x77, 0x60, 0xb5, 0xe3, 0x03, 0x08, 0xc7, 0x82, 0x2c, 0x88, 0xae, 0x5f, }; static const unsigned char xdh_wei25519_1271_sharedsecret[] = { 0x74, 0xd5, 0x60, 0x6b, 0xa0, 0xb6, 0xad, 0x1d, 0x8b, 0xa3, 0x6a, 0xe6, 0xf2, 0x64, 0xd6, 0x31, 0x5f, 0x47, 0x9b, 0x39, 0x84, 0xde, 0x57, 0x3e, 0x9b, 0x00, 0x1e, 0x05, 0x55, 0x24, 0x7c, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1271 = { .name = "xdh_wei25519_1271", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1271_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1271_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1271_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 225 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1272 for XDH, tcId is 226 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1272_peerpubkey[] = { 0x73, 0x7d, 0x45, 0x47, 0x7e, 0x2b, 0xeb, 0x77, 0xa6, 0xc3, 0x8b, 0x98, 0xe2, 0xa1, 0x9b, 0x05, 0xc3, 0x95, 0xdf, 0x7d, 0xa9, 0x98, 0xcb, 0x91, 0xf6, 0xdf, 0xab, 0x58, 0x19, 0x61, 0x4f, 0x27, }; static const unsigned char xdh_wei25519_1272_privkey[] = { 0xc8, 0x87, 0x88, 0x6f, 0xd0, 0x71, 0x07, 0xc7, 0x22, 0x1f, 0x6d, 0x9d, 0xd3, 0x6c, 0x30, 0x5e, 0xc7, 0x79, 0xce, 0xca, 0x13, 0x2a, 0xc9, 0x33, 0xff, 0x77, 0xda, 0xb2, 0xbe, 0xac, 0x63, 0x45, }; static const unsigned char xdh_wei25519_1272_sharedsecret[] = { 0x8c, 0xf4, 0x53, 0x8a, 0xe5, 0xf4, 0x45, 0xcc, 0x6d, 0x27, 0x3d, 0xf4, 0xad, 0x30, 0x0a, 0x45, 0xd7, 0xbb, 0x2f, 0x6e, 0x37, 0x3a, 0x56, 0x24, 0x40, 0xf1, 0xb3, 0x77, 0x73, 0x90, 0x4e, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1272 = { .name = "xdh_wei25519_1272", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1272_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1272_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1272_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 226 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1273 for XDH, tcId is 227 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1273_peerpubkey[] = { 0x87, 0x3f, 0x8b, 0x26, 0x0e, 0xa9, 0xd9, 0xdd, 0xac, 0x08, 0xb7, 0xb0, 0x30, 0x72, 0x7b, 0xf0, 0x07, 0x23, 0x15, 0xab, 0x54, 0x07, 0x5e, 0xcc, 0x39, 0x3a, 0x37, 0xa9, 0x75, 0x88, 0x2b, 0x7e, }; static const unsigned char xdh_wei25519_1273_privkey[] = { 0x58, 0x09, 0x6e, 0xe2, 0x93, 0x61, 0x97, 0x8f, 0x63, 0x0a, 0xd1, 0xfb, 0x00, 0xc1, 0x26, 0x7c, 0x5a, 0x90, 0x1f, 0x99, 0xc5, 0x02, 0xf9, 0x56, 0x9b, 0x93, 0x3a, 0xd0, 0xdc, 0xce, 0x0f, 0x50, }; static const unsigned char xdh_wei25519_1273_sharedsecret[] = { 0xd5, 0x76, 0x67, 0x53, 0x21, 0x1d, 0x99, 0x68, 0xde, 0x4a, 0xc2, 0x55, 0x99, 0x98, 0xf2, 0x2e, 0xf4, 0x4e, 0x8a, 0xa8, 0x79, 0xf3, 0x32, 0x8c, 0xbc, 0x46, 0xaa, 0x85, 0x8d, 0xcb, 0x43, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1273 = { .name = "xdh_wei25519_1273", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1273_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1273_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1273_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 227 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1274 for XDH, tcId is 228 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1274_peerpubkey[] = { 0x75, 0xe1, 0x58, 0x7c, 0x5e, 0xef, 0xc8, 0x37, 0x15, 0xd7, 0x10, 0x20, 0xaa, 0x6b, 0xe5, 0x34, 0x7b, 0xb9, 0xec, 0x9d, 0x91, 0xce, 0x5b, 0x28, 0xa9, 0xbb, 0xb7, 0x4c, 0x92, 0xef, 0x40, 0x7e, }; static const unsigned char xdh_wei25519_1274_privkey[] = { 0x08, 0x29, 0xa4, 0x90, 0x46, 0xdc, 0xe2, 0xc0, 0x7a, 0xb2, 0x84, 0x40, 0xdb, 0xad, 0x14, 0x64, 0x53, 0xe1, 0x28, 0x96, 0x0e, 0x85, 0xdd, 0x2e, 0x6a, 0x69, 0xa1, 0x51, 0x28, 0x73, 0xdd, 0x44, }; static const unsigned char xdh_wei25519_1274_sharedsecret[] = { 0x76, 0x1d, 0x8c, 0xec, 0xf1, 0x3f, 0x93, 0xb3, 0x79, 0xa7, 0x72, 0xe5, 0xfa, 0xc5, 0xb9, 0xff, 0xe9, 0x96, 0xca, 0xd9, 0xaf, 0x06, 0x15, 0x25, 0x80, 0xaf, 0xe8, 0x7f, 0xf9, 0x65, 0x1c, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_1274 = { .name = "xdh_wei25519_1274", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1274_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1274_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1274_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 228 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1275 for XDH, tcId is 229 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1275_peerpubkey[] = { 0xf8, 0x5a, 0x06, 0x06, 0x5e, 0xa2, 0x52, 0x72, 0x38, 0xfc, 0x5e, 0xc1, 0xb7, 0x5e, 0xad, 0x92, 0x62, 0xe6, 0xb1, 0xae, 0xd6, 0x1f, 0xef, 0xf8, 0x3b, 0x91, 0x23, 0x0a, 0xeb, 0x4b, 0x7d, 0x01, }; static const unsigned char xdh_wei25519_1275_privkey[] = { 0x58, 0x7a, 0xc3, 0x6b, 0x9a, 0x23, 0x59, 0x46, 0x32, 0x67, 0x9a, 0xde, 0xa1, 0xa8, 0x26, 0xf2, 0xf6, 0x2d, 0x79, 0x73, 0x82, 0x20, 0xfb, 0x48, 0x74, 0x64, 0x03, 0x9f, 0x36, 0xca, 0x23, 0x72, }; static const unsigned char xdh_wei25519_1275_sharedsecret[] = { 0xf1, 0x2a, 0xcd, 0x36, 0xf6, 0x29, 0x9a, 0x4d, 0x19, 0x2c, 0x03, 0xaa, 0x4e, 0xfe, 0xea, 0x7d, 0xf5, 0x1e, 0x2d, 0x15, 0xd7, 0x63, 0x17, 0x2e, 0x68, 0xac, 0xcf, 0x7b, 0xc6, 0xf5, 0xc2, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_1275 = { .name = "xdh_wei25519_1275", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1275_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1275_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1275_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 229 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1276 for XDH, tcId is 230 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1276_peerpubkey[] = { 0x6e, 0x0f, 0x1d, 0x00, 0xb1, 0x09, 0x9d, 0x2a, 0x71, 0xf7, 0xbe, 0x86, 0x65, 0x5f, 0xeb, 0x89, 0x88, 0xbb, 0xa5, 0x57, 0x7b, 0x02, 0xf9, 0x64, 0x04, 0x3a, 0x49, 0xf0, 0x0c, 0x74, 0x96, 0x13, }; static const unsigned char xdh_wei25519_1276_privkey[] = { 0xa8, 0xa4, 0x42, 0xb7, 0xc0, 0xa9, 0x92, 0x27, 0xb4, 0xcb, 0x5c, 0x75, 0xfb, 0x9e, 0x5a, 0x72, 0xce, 0xa2, 0x5e, 0xba, 0x8a, 0x0b, 0xdf, 0x07, 0x27, 0x1b, 0xb4, 0xa9, 0x3c, 0x2b, 0x66, 0x65, }; static const unsigned char xdh_wei25519_1276_sharedsecret[] = { 0xb2, 0xbb, 0xbd, 0x17, 0x3f, 0x41, 0xd9, 0x52, 0xd3, 0x29, 0x25, 0x1d, 0xa9, 0x73, 0xa9, 0x50, 0x03, 0x00, 0x62, 0x81, 0x77, 0xad, 0x0f, 0xb7, 0x9d, 0x01, 0xe2, 0xe2, 0x63, 0x90, 0x5b, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_1276 = { .name = "xdh_wei25519_1276", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1276_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1276_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1276_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 230 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1277 for XDH, tcId is 231 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1277_peerpubkey[] = { 0x69, 0x67, 0x57, 0xce, 0xd3, 0x09, 0x7f, 0xa9, 0x60, 0xc8, 0x39, 0x0a, 0x09, 0xe8, 0xbd, 0x6d, 0x39, 0x0d, 0xbd, 0xe8, 0xd1, 0xfa, 0x17, 0x02, 0x61, 0xf3, 0x42, 0x2e, 0xdc, 0x19, 0x29, 0x29, }; static const unsigned char xdh_wei25519_1277_privkey[] = { 0xd8, 0xf7, 0x23, 0x3e, 0x96, 0x12, 0xc0, 0x0c, 0x9d, 0xca, 0x2c, 0x75, 0x1e, 0xc1, 0xd3, 0xf5, 0xf6, 0x7b, 0xad, 0x77, 0xc2, 0xe7, 0x14, 0xa2, 0x0e, 0x71, 0xeb, 0x3f, 0x22, 0x0a, 0x66, 0x71, }; static const unsigned char xdh_wei25519_1277_sharedsecret[] = { 0x45, 0xec, 0xfa, 0x27, 0x5f, 0x1d, 0xaa, 0x25, 0xd3, 0xfa, 0xdf, 0x33, 0xcd, 0xf8, 0x9a, 0x15, 0x2a, 0xfe, 0xa2, 0x5e, 0xae, 0x37, 0xe6, 0x8e, 0x00, 0xb3, 0x0c, 0x36, 0x77, 0x89, 0x88, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1277 = { .name = "xdh_wei25519_1277", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1277_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1277_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1277_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 231 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1278 for XDH, tcId is 232 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1278_peerpubkey[] = { 0xfd, 0x84, 0xb3, 0xf2, 0xfb, 0xfa, 0x16, 0xae, 0xbf, 0x40, 0xc2, 0x7f, 0x46, 0xe1, 0x8d, 0x77, 0xba, 0xfa, 0x0c, 0x79, 0x71, 0xbe, 0xdd, 0xe4, 0x90, 0x92, 0x12, 0xe7, 0x71, 0xbd, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_1278_privkey[] = { 0xd8, 0x0c, 0x7c, 0x75, 0x57, 0xc9, 0x90, 0x7e, 0x1b, 0x11, 0xe8, 0x44, 0xbf, 0x13, 0x69, 0xcb, 0xa6, 0x69, 0xbc, 0x38, 0xe9, 0xb7, 0xb2, 0x53, 0xe5, 0x1f, 0x23, 0x9b, 0xda, 0x32, 0x23, 0x74, }; static const unsigned char xdh_wei25519_1278_sharedsecret[] = { 0x59, 0x5e, 0x14, 0x4e, 0x07, 0xbb, 0xe6, 0x5b, 0x38, 0xe0, 0xe4, 0x16, 0x3d, 0x02, 0xad, 0x75, 0xa6, 0x5e, 0x42, 0x2e, 0x74, 0x06, 0x7d, 0xb3, 0x5c, 0x90, 0xdf, 0xa6, 0xe0, 0x55, 0xd4, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_1278 = { .name = "xdh_wei25519_1278", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1278_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1278_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1278_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 232 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1279 for XDH, tcId is 233 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1279_peerpubkey[] = { 0x80, 0x54, 0x85, 0x70, 0x3c, 0xcf, 0xc4, 0xa2, 0x21, 0xef, 0x28, 0x12, 0x67, 0xf5, 0x2b, 0x61, 0xce, 0xbc, 0x87, 0x9f, 0x0f, 0x13, 0xb1, 0xe5, 0xf5, 0x21, 0xc1, 0x73, 0x52, 0xa0, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_1279_privkey[] = { 0x80, 0x02, 0xa8, 0x51, 0x15, 0xad, 0x7b, 0x41, 0xc5, 0x0f, 0x84, 0xf3, 0x5f, 0xac, 0x75, 0x0e, 0xe8, 0xe1, 0x97, 0x34, 0x80, 0x71, 0x02, 0x83, 0x0f, 0xf6, 0xa3, 0x06, 0xbe, 0xed, 0x44, 0x64, }; static const unsigned char xdh_wei25519_1279_sharedsecret[] = { 0x22, 0x6e, 0x16, 0xa2, 0x79, 0xac, 0x81, 0xe2, 0x68, 0x43, 0x7e, 0xb3, 0xe0, 0x9e, 0x07, 0x40, 0x63, 0x24, 0xcb, 0x72, 0xa9, 0xd4, 0xee, 0x58, 0xe4, 0xcf, 0x00, 0x91, 0x47, 0x49, 0x72, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1279 = { .name = "xdh_wei25519_1279", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1279_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1279_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1279_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 233 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1280 for XDH, tcId is 234 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1280_peerpubkey[] = { 0x80, 0x64, 0x2a, 0x32, 0x79, 0xda, 0x6b, 0xf5, 0xfc, 0x13, 0xdb, 0x14, 0xa5, 0x69, 0xc7, 0x08, 0x9d, 0xb0, 0x14, 0x22, 0x5c, 0xfc, 0xae, 0x7d, 0xff, 0x5a, 0x0d, 0x25, 0xec, 0xc9, 0x23, 0x5b, }; static const unsigned char xdh_wei25519_1280_privkey[] = { 0x78, 0x2d, 0xb0, 0xc8, 0xe3, 0xe6, 0x8f, 0x10, 0x6f, 0xe0, 0xc5, 0x64, 0x15, 0xe0, 0xbd, 0x13, 0xd8, 0x12, 0xde, 0xa0, 0xe9, 0x4c, 0xbd, 0x18, 0xbd, 0xf6, 0x76, 0x12, 0x95, 0x61, 0x3a, 0x6d, }; static const unsigned char xdh_wei25519_1280_sharedsecret[] = { 0x79, 0x0d, 0x09, 0xb1, 0x72, 0x6d, 0x21, 0x09, 0x57, 0xce, 0x8f, 0x65, 0x86, 0x9c, 0xa1, 0xec, 0x8f, 0xa0, 0xb2, 0xb0, 0x6b, 0x6b, 0xcf, 0x94, 0x83, 0xb3, 0xeb, 0x55, 0xe4, 0x9e, 0x92, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1280 = { .name = "xdh_wei25519_1280", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1280_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1280_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1280_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 234 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1281 for XDH, tcId is 235 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1281_peerpubkey[] = { 0x84, 0xe8, 0x27, 0xf7, 0x8c, 0xae, 0x0c, 0xf0, 0x63, 0xe4, 0x34, 0x01, 0x98, 0xf7, 0x88, 0xc2, 0x84, 0xe0, 0x74, 0x30, 0xb3, 0xa9, 0x4a, 0x38, 0x73, 0xdf, 0x38, 0xb1, 0xf8, 0x72, 0xce, 0x02, }; static const unsigned char xdh_wei25519_1281_privkey[] = { 0x90, 0x9f, 0xb0, 0xbd, 0xbf, 0x53, 0xa6, 0x9a, 0x2f, 0xe3, 0x9c, 0x8b, 0x24, 0x97, 0xab, 0xd4, 0xfa, 0x57, 0xd2, 0xd5, 0x4e, 0x04, 0x6b, 0x5f, 0x51, 0x45, 0x95, 0xe2, 0xc0, 0xf3, 0x3d, 0x63, }; static const unsigned char xdh_wei25519_1281_sharedsecret[] = { 0x68, 0x4c, 0xc8, 0x3a, 0xf8, 0x06, 0xbc, 0xd9, 0xcd, 0x25, 0x1e, 0x18, 0x58, 0xf3, 0xc1, 0x0f, 0x01, 0x66, 0xe0, 0xa0, 0xcd, 0x2b, 0xe1, 0x54, 0x33, 0x9a, 0x88, 0x6b, 0x13, 0xe7, 0xc7, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1281 = { .name = "xdh_wei25519_1281", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1281_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1281_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1281_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 235 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1282 for XDH, tcId is 236 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1282_peerpubkey[] = { 0xd4, 0x45, 0xe1, 0xdf, 0x00, 0x83, 0xbb, 0x6b, 0x8e, 0x88, 0x6e, 0x66, 0x32, 0x25, 0x18, 0x07, 0x17, 0x1d, 0x4e, 0x88, 0xc4, 0x18, 0x16, 0xfc, 0x68, 0x43, 0x73, 0xc0, 0x9d, 0x7e, 0x5d, 0x6e, }; static const unsigned char xdh_wei25519_1282_privkey[] = { 0x78, 0xa6, 0x79, 0x09, 0x75, 0x72, 0x48, 0x66, 0x5f, 0x79, 0x37, 0x1e, 0xb0, 0x14, 0x82, 0x5a, 0xb6, 0xbd, 0x4a, 0xf3, 0x57, 0x1f, 0x14, 0x03, 0x89, 0xc6, 0x36, 0xe0, 0x04, 0xbc, 0xf4, 0x6b, }; static const unsigned char xdh_wei25519_1282_sharedsecret[] = { 0xe4, 0x26, 0xe4, 0xa3, 0xc5, 0x4d, 0x3e, 0x77, 0xf4, 0xf1, 0x57, 0x30, 0x1e, 0x0a, 0xc7, 0xd9, 0xe1, 0x23, 0x37, 0xa2, 0xb5, 0x8d, 0xf1, 0x67, 0x80, 0x04, 0x1c, 0xf6, 0xd6, 0x19, 0x8c, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1282 = { .name = "xdh_wei25519_1282", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1282_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1282_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1282_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 236 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1283 for XDH, tcId is 237 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1283_peerpubkey[] = { 0xf2, 0x6a, 0xa6, 0x15, 0x1a, 0x4b, 0x22, 0x39, 0x01, 0x76, 0xf6, 0x23, 0x3e, 0x74, 0x2f, 0x40, 0xf2, 0xec, 0xd5, 0x13, 0x71, 0x66, 0xfb, 0x2e, 0x1e, 0xc9, 0xb2, 0xf2, 0x45, 0x4a, 0xc2, 0x77, }; static const unsigned char xdh_wei25519_1283_privkey[] = { 0x28, 0x6a, 0x30, 0x2d, 0x5b, 0x07, 0x6d, 0x2a, 0xba, 0x7c, 0x2a, 0x4d, 0xaf, 0x9e, 0x7c, 0xc9, 0xd8, 0x53, 0x9b, 0x7c, 0x03, 0x91, 0x30, 0x7d, 0xb6, 0x5a, 0x2f, 0x42, 0x20, 0xd3, 0x0f, 0x70, }; static const unsigned char xdh_wei25519_1283_sharedsecret[] = { 0x86, 0x2d, 0xf9, 0x2e, 0x25, 0x27, 0x7b, 0xd9, 0x4f, 0x9a, 0xf2, 0xe1, 0xdd, 0xa5, 0x1f, 0x90, 0x5a, 0x6e, 0x2a, 0x3f, 0x60, 0x68, 0xa9, 0x2f, 0xab, 0xfc, 0x6c, 0x53, 0xda, 0x21, 0xec, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1283 = { .name = "xdh_wei25519_1283", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1283_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1283_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1283_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 237 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1284 for XDH, tcId is 238 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1284_peerpubkey[] = { 0x2b, 0x02, 0xdb, 0x3c, 0x82, 0x47, 0x7f, 0xe2, 0x1a, 0xa7, 0xa9, 0x4d, 0x85, 0xdf, 0x37, 0x9f, 0x57, 0x1c, 0x84, 0x49, 0xb4, 0x3c, 0xbd, 0x06, 0x05, 0xd0, 0xac, 0xc5, 0x3c, 0x47, 0x2f, 0x05, }; static const unsigned char xdh_wei25519_1284_privkey[] = { 0xa8, 0x38, 0xb7, 0x0d, 0x17, 0x16, 0x1c, 0xb3, 0x82, 0x22, 0xf7, 0xbc, 0x69, 0xa3, 0xc8, 0x57, 0x60, 0x32, 0xd5, 0x80, 0x27, 0x5b, 0x3b, 0x7d, 0x63, 0xfb, 0xa0, 0x89, 0x08, 0xcb, 0x48, 0x79, }; static const unsigned char xdh_wei25519_1284_sharedsecret[] = { 0x3f, 0x43, 0x8d, 0xbf, 0x03, 0x94, 0x79, 0x95, 0xc9, 0x9f, 0xd4, 0xcb, 0x36, 0x6c, 0xa7, 0xe0, 0x0e, 0x8c, 0xfb, 0xce, 0x64, 0xc3, 0x03, 0x9c, 0x26, 0xd9, 0xfa, 0xd0, 0x0f, 0xa4, 0x9c, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1284 = { .name = "xdh_wei25519_1284", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1284_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1284_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1284_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 238 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1285 for XDH, tcId is 239 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1285_peerpubkey[] = { 0xd7, 0x1d, 0xd7, 0xdb, 0x12, 0x23, 0x30, 0xc9, 0xbb, 0xaa, 0xb5, 0xda, 0x6c, 0xf1, 0xf6, 0xe1, 0xc2, 0x53, 0x45, 0xee, 0x6a, 0x66, 0xb1, 0x75, 0x12, 0xb1, 0x80, 0x4a, 0xce, 0x28, 0x73, 0x59, }; static const unsigned char xdh_wei25519_1285_privkey[] = { 0xb0, 0x73, 0x3b, 0x42, 0x03, 0x26, 0x7a, 0xb3, 0xc9, 0x4c, 0x50, 0x6a, 0xca, 0xdb, 0x94, 0x9a, 0x76, 0xcc, 0x60, 0x04, 0x86, 0xfc, 0xd6, 0x01, 0x47, 0x8f, 0xcd, 0xef, 0x79, 0xc2, 0x9d, 0x6c, }; static const unsigned char xdh_wei25519_1285_sharedsecret[] = { 0x95, 0xf3, 0xf1, 0x84, 0x9b, 0x0a, 0x07, 0x01, 0x84, 0xe6, 0x07, 0x7c, 0x92, 0xae, 0x36, 0xba, 0x33, 0x24, 0xbf, 0x14, 0x41, 0x16, 0x8b, 0x89, 0xbb, 0x4b, 0x91, 0x67, 0xed, 0xd6, 0x73, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1285 = { .name = "xdh_wei25519_1285", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1285_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1285_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1285_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 239 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1286 for XDH, tcId is 240 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1286_peerpubkey[] = { 0x73, 0x7b, 0xc0, 0x7d, 0xe0, 0x72, 0x9b, 0xbc, 0xfb, 0xee, 0x3a, 0x08, 0xe6, 0x96, 0xf9, 0x7f, 0x37, 0x70, 0x57, 0x7e, 0x4b, 0x01, 0xec, 0x10, 0x8f, 0x59, 0xca, 0xf4, 0x64, 0x06, 0xd2, 0x05, }; static const unsigned char xdh_wei25519_1286_privkey[] = { 0xd8, 0x44, 0xa3, 0x6b, 0x58, 0xae, 0xfd, 0xb0, 0x8b, 0x98, 0x17, 0x96, 0x02, 0x9a, 0x27, 0x66, 0x10, 0x18, 0x84, 0xb3, 0x48, 0xf7, 0x0e, 0xed, 0x94, 0x7c, 0x25, 0x41, 0x06, 0x4c, 0xaf, 0x6a, }; static const unsigned char xdh_wei25519_1286_sharedsecret[] = { 0x6a, 0x96, 0x9a, 0xf6, 0xd2, 0x36, 0xab, 0xa0, 0x8f, 0xa8, 0x31, 0x60, 0xf6, 0x99, 0xe9, 0xed, 0x76, 0xfb, 0x63, 0x55, 0xf0, 0x66, 0x2f, 0x03, 0xdb, 0xc5, 0x91, 0x5a, 0x3c, 0x23, 0x06, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1286 = { .name = "xdh_wei25519_1286", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1286_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1286_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1286_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 240 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1287 for XDH, tcId is 241 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1287_peerpubkey[] = { 0x97, 0x58, 0x06, 0x1a, 0x7b, 0x3e, 0x2c, 0x02, 0xfb, 0x5c, 0x20, 0x87, 0x5a, 0xe6, 0xb5, 0x5b, 0x11, 0xfb, 0x67, 0x95, 0x99, 0x0a, 0x0f, 0x4f, 0xdc, 0xd1, 0x14, 0x7b, 0xe5, 0x52, 0x16, 0x07, }; static const unsigned char xdh_wei25519_1287_privkey[] = { 0xa0, 0xb7, 0xd3, 0x12, 0xd9, 0xb8, 0x32, 0xe1, 0x24, 0xd1, 0xbc, 0x8c, 0xb2, 0x1d, 0xb5, 0x45, 0x44, 0x0e, 0x3c, 0xf1, 0x4e, 0x74, 0x73, 0xee, 0x9c, 0xcb, 0xe9, 0xb6, 0x82, 0xf2, 0x15, 0x6c, }; static const unsigned char xdh_wei25519_1287_sharedsecret[] = { 0xab, 0x39, 0xdb, 0x4a, 0xa2, 0x9a, 0xc4, 0x01, 0x7c, 0x74, 0x46, 0xf1, 0xad, 0x0c, 0x7d, 0xaa, 0x9a, 0x37, 0xf1, 0xb6, 0xb4, 0xf2, 0xe9, 0xd2, 0x90, 0x2c, 0xce, 0xfb, 0x84, 0x83, 0x9d, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1287 = { .name = "xdh_wei25519_1287", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1287_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1287_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1287_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 241 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1288 for XDH, tcId is 242 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1288_peerpubkey[] = { 0x37, 0xcd, 0x65, 0xd3, 0x30, 0x36, 0x20, 0x5f, 0x34, 0x49, 0xe8, 0x65, 0x5a, 0x50, 0xd4, 0xb0, 0xc8, 0x6f, 0xec, 0x02, 0x10, 0x0b, 0x4f, 0x2d, 0xb7, 0xda, 0x92, 0xdc, 0xf5, 0xe3, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_1288_privkey[] = { 0x78, 0x7f, 0x1d, 0xdd, 0x78, 0xcc, 0x64, 0x73, 0xd3, 0xe6, 0x39, 0x49, 0x40, 0x9a, 0xd3, 0xf3, 0x5b, 0xfe, 0x0c, 0xe0, 0x73, 0x8f, 0x25, 0x5d, 0xee, 0x68, 0x2f, 0x2b, 0xfb, 0xc8, 0x0f, 0x7f, }; static const unsigned char xdh_wei25519_1288_sharedsecret[] = { 0x13, 0xde, 0x41, 0x65, 0x9e, 0x3e, 0x30, 0x8d, 0x6e, 0x26, 0xc9, 0x42, 0x82, 0xfc, 0xc3, 0xe0, 0x36, 0x4d, 0xdf, 0x08, 0x09, 0xdd, 0xee, 0x6c, 0x8e, 0x7a, 0xbb, 0x50, 0x91, 0xb0, 0x2b, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1288 = { .name = "xdh_wei25519_1288", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1288_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1288_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1288_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 242 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1289 for XDH, tcId is 243 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1289_peerpubkey[] = { 0xa9, 0xb6, 0xe8, 0x08, 0x14, 0x60, 0x38, 0x3a, 0xdc, 0x58, 0x7c, 0x8f, 0x91, 0xa0, 0x2c, 0x59, 0xa7, 0xa3, 0x55, 0x76, 0xca, 0x62, 0x43, 0x6c, 0xcd, 0x1b, 0x5f, 0xef, 0x1b, 0x92, 0x54, 0x5d, }; static const unsigned char xdh_wei25519_1289_privkey[] = { 0x40, 0x80, 0xae, 0x60, 0xa8, 0x5c, 0x1f, 0xa9, 0x5a, 0xad, 0x9b, 0xea, 0xbd, 0x98, 0xb4, 0x05, 0xe7, 0xf2, 0x81, 0x41, 0xbf, 0x08, 0xf2, 0xc9, 0xa4, 0xfd, 0xbd, 0xe1, 0xc5, 0x68, 0x02, 0x65, }; static const unsigned char xdh_wei25519_1289_sharedsecret[] = { 0x69, 0xed, 0x8a, 0x0a, 0x27, 0x81, 0x2a, 0xe6, 0x74, 0x14, 0x74, 0xbd, 0x5c, 0x6a, 0x4e, 0x68, 0x3a, 0x12, 0x66, 0x49, 0xf7, 0x24, 0x5a, 0xa0, 0xf9, 0x1a, 0x3a, 0x38, 0x4b, 0xcd, 0xe2, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1289 = { .name = "xdh_wei25519_1289", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1289_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1289_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1289_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 243 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1290 for XDH, tcId is 244 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1290_peerpubkey[] = { 0xfd, 0x1a, 0x2c, 0xd1, 0x7a, 0x93, 0xf8, 0x50, 0xde, 0xb8, 0xc4, 0x5a, 0x2d, 0x34, 0x53, 0x92, 0x32, 0xdf, 0xd8, 0xa5, 0x58, 0x30, 0x42, 0x09, 0x78, 0x1c, 0x6c, 0xb5, 0x82, 0x29, 0x87, 0x0e, }; static const unsigned char xdh_wei25519_1290_privkey[] = { 0x08, 0xf9, 0xf4, 0xa4, 0xfa, 0xc4, 0xdb, 0x41, 0x33, 0x15, 0xf7, 0x4a, 0x59, 0x81, 0x8b, 0x24, 0x52, 0xfc, 0x7b, 0x76, 0x85, 0x59, 0x2e, 0x26, 0x55, 0x67, 0x75, 0xf9, 0xb8, 0x6d, 0x90, 0x7f, }; static const unsigned char xdh_wei25519_1290_sharedsecret[] = { 0x01, 0x02, 0x18, 0xbd, 0x67, 0xb1, 0xb9, 0x2f, 0xee, 0x3e, 0x7f, 0xa4, 0x57, 0x8c, 0x13, 0x61, 0x7d, 0x73, 0x19, 0x5d, 0xe1, 0x02, 0x79, 0x74, 0x7e, 0x53, 0xba, 0x01, 0xa2, 0x54, 0x52, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1290 = { .name = "xdh_wei25519_1290", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1290_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1290_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1290_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 244 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1291 for XDH, tcId is 245 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1291_peerpubkey[] = { 0xb8, 0x81, 0x19, 0xe5, 0xae, 0x6d, 0x9e, 0x6b, 0x91, 0x2d, 0x52, 0x52, 0x47, 0x39, 0xe6, 0x12, 0xef, 0x19, 0xab, 0x7e, 0x5d, 0xd3, 0xd9, 0x46, 0xcb, 0x9b, 0xc0, 0x03, 0xc3, 0x78, 0xf8, 0x1f, }; static const unsigned char xdh_wei25519_1291_privkey[] = { 0x18, 0x88, 0xcf, 0xae, 0x30, 0x85, 0x86, 0x76, 0x57, 0xb0, 0x94, 0x35, 0xc4, 0x2b, 0x74, 0xcc, 0x76, 0x24, 0x57, 0x83, 0x94, 0x51, 0xa3, 0x65, 0x9d, 0xb2, 0x18, 0xd4, 0x21, 0x4f, 0xdd, 0x63, }; static const unsigned char xdh_wei25519_1291_sharedsecret[] = { 0xe6, 0xb2, 0x98, 0xde, 0x9c, 0xb6, 0x35, 0x8f, 0xbb, 0xb0, 0x0f, 0x11, 0x89, 0x0f, 0x57, 0x14, 0xa3, 0x85, 0x8e, 0x8f, 0x05, 0xa2, 0xa8, 0xd1, 0xcf, 0x39, 0xfe, 0x78, 0xcc, 0x55, 0xdd, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1291 = { .name = "xdh_wei25519_1291", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1291_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1291_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1291_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 245 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1292 for XDH, tcId is 246 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1292_peerpubkey[] = { 0x7b, 0x70, 0xe2, 0x9d, 0xce, 0x04, 0x79, 0xcd, 0xe4, 0xa3, 0x6c, 0x7f, 0x97, 0x86, 0x58, 0x2f, 0x10, 0x4b, 0xc0, 0x78, 0x8f, 0x04, 0x6b, 0x48, 0xaf, 0x49, 0x5e, 0x67, 0xbd, 0xb8, 0x8f, 0x36, }; static const unsigned char xdh_wei25519_1292_privkey[] = { 0x78, 0x9c, 0xe1, 0x3e, 0xd0, 0x07, 0x81, 0x8d, 0x7a, 0x51, 0x81, 0xe6, 0x29, 0xee, 0xd9, 0x44, 0xa2, 0x0a, 0x05, 0x8c, 0xfe, 0x39, 0x66, 0x9c, 0x98, 0x31, 0xbf, 0xa5, 0x21, 0x5a, 0x12, 0x69, }; static const unsigned char xdh_wei25519_1292_sharedsecret[] = { 0x96, 0x7b, 0xbe, 0x29, 0x84, 0x94, 0xb4, 0xa5, 0xf9, 0x58, 0x53, 0xcf, 0xde, 0x9d, 0xc8, 0x59, 0x70, 0xb2, 0xa4, 0xb5, 0xdd, 0x2c, 0x92, 0x78, 0x29, 0x01, 0xe8, 0x53, 0x95, 0x7f, 0x58, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_1292 = { .name = "xdh_wei25519_1292", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1292_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1292_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1292_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 246 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1293 for XDH, tcId is 247 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1293_peerpubkey[] = { 0x2a, 0x20, 0x9e, 0x2a, 0xce, 0x0e, 0x3d, 0x69, 0x73, 0xff, 0xbf, 0x74, 0x03, 0xf9, 0x85, 0x7f, 0xf9, 0x7a, 0x5f, 0xdc, 0xd2, 0x7f, 0x2c, 0x70, 0x98, 0xb4, 0x44, 0xfc, 0x3c, 0x16, 0x67, 0x38, }; static const unsigned char xdh_wei25519_1293_privkey[] = { 0x00, 0x02, 0x2b, 0x43, 0x77, 0x5a, 0xb2, 0xf4, 0xb9, 0x1b, 0xc1, 0xcb, 0x54, 0xc9, 0x7f, 0x78, 0x02, 0x62, 0x89, 0xea, 0xaf, 0x02, 0xab, 0xee, 0xd0, 0x4c, 0xa8, 0x4f, 0x73, 0x6c, 0x68, 0x6c, }; static const unsigned char xdh_wei25519_1293_sharedsecret[] = { 0x9f, 0x66, 0x84, 0x86, 0x81, 0xd5, 0x34, 0xe5, 0x2b, 0x65, 0x99, 0x46, 0xea, 0x2c, 0x92, 0xd2, 0xfa, 0xbe, 0xd4, 0x3f, 0xe6, 0xe6, 0x90, 0x32, 0xc1, 0x11, 0x53, 0xdb, 0x43, 0xdc, 0xa7, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1293 = { .name = "xdh_wei25519_1293", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1293_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1293_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1293_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 247 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1294 for XDH, tcId is 248 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1294_peerpubkey[] = { 0xf5, 0x07, 0x09, 0xac, 0xa7, 0xf3, 0x14, 0xe8, 0xd0, 0x5b, 0x5f, 0xf9, 0x7a, 0x42, 0x7e, 0x42, 0x7b, 0xd5, 0xe8, 0x5c, 0x4e, 0x86, 0x71, 0x21, 0x25, 0x07, 0x6a, 0x77, 0x1b, 0xe2, 0x14, 0x48, }; static const unsigned char xdh_wei25519_1294_privkey[] = { 0x80, 0x97, 0xa5, 0x2f, 0xc5, 0x62, 0xe8, 0xa5, 0x16, 0x68, 0x2f, 0x53, 0x63, 0xcc, 0x5e, 0x7c, 0x88, 0xe9, 0xc7, 0x8e, 0x30, 0x8d, 0xf0, 0xde, 0xef, 0x40, 0x49, 0x7b, 0x35, 0xcc, 0x12, 0x7d, }; static const unsigned char xdh_wei25519_1294_sharedsecret[] = { 0xea, 0x75, 0x72, 0xe2, 0x7a, 0x91, 0x20, 0xde, 0x1f, 0x13, 0xb8, 0x57, 0x10, 0xba, 0x69, 0xa3, 0x47, 0x1b, 0x7b, 0x3f, 0x5d, 0x12, 0xbc, 0x43, 0x0c, 0x12, 0xc4, 0xbb, 0xf8, 0xaa, 0x39, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1294 = { .name = "xdh_wei25519_1294", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1294_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1294_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1294_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 248 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1295 for XDH, tcId is 249 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1295_peerpubkey[] = { 0x0f, 0x13, 0x95, 0x59, 0x78, 0xb9, 0x3d, 0x7b, 0x9f, 0x9a, 0x2e, 0x70, 0xd9, 0x6d, 0xf9, 0x22, 0x85, 0x0a, 0x8f, 0xfd, 0x84, 0x12, 0xe2, 0x36, 0xfb, 0x07, 0x4a, 0xef, 0x99, 0xd3, 0x7d, 0x54, }; static const unsigned char xdh_wei25519_1295_privkey[] = { 0x40, 0x28, 0x80, 0x20, 0x30, 0xd8, 0xa8, 0x22, 0x1a, 0x71, 0x60, 0xee, 0xbb, 0xf1, 0x84, 0x61, 0x16, 0xc1, 0xc2, 0x53, 0xab, 0xc4, 0x67, 0xd6, 0xe4, 0x3c, 0xb8, 0x50, 0xf1, 0x45, 0x98, 0x60, }; static const unsigned char xdh_wei25519_1295_sharedsecret[] = { 0xe2, 0x3d, 0x63, 0xa4, 0x6b, 0xe6, 0x7c, 0x74, 0x43, 0xc0, 0x7b, 0x93, 0x71, 0xff, 0x6a, 0x06, 0xaf, 0xcd, 0x7a, 0x57, 0x94, 0xbf, 0x25, 0x37, 0x92, 0x60, 0x74, 0xb8, 0x81, 0x90, 0x30, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1295 = { .name = "xdh_wei25519_1295", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1295_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1295_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1295_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 249 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1296 for XDH, tcId is 250 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1296_peerpubkey[] = { 0x18, 0xff, 0xe9, 0x92, 0xa7, 0x29, 0xce, 0x70, 0xc3, 0xb7, 0xcd, 0xc5, 0x5b, 0xab, 0x55, 0xf2, 0x21, 0x0d, 0x27, 0x91, 0x34, 0xb3, 0x08, 0x2a, 0x9f, 0x68, 0x2d, 0x3a, 0x0b, 0x13, 0x12, 0x73, }; static const unsigned char xdh_wei25519_1296_privkey[] = { 0xd8, 0x51, 0x5d, 0x45, 0xc7, 0xab, 0x2b, 0x95, 0x29, 0x81, 0x65, 0x43, 0x15, 0x00, 0x68, 0xb8, 0xe4, 0xbb, 0x61, 0x4c, 0xf2, 0xb6, 0x8a, 0x8a, 0x99, 0x36, 0x39, 0x75, 0xaf, 0x50, 0x3d, 0x74, }; static const unsigned char xdh_wei25519_1296_sharedsecret[] = { 0x33, 0xcc, 0xaf, 0x24, 0xe1, 0xe2, 0x62, 0x90, 0xed, 0x7e, 0x46, 0x20, 0x93, 0xe9, 0xf7, 0x76, 0x07, 0xef, 0x52, 0xa0, 0x62, 0x6b, 0x2c, 0xd2, 0x51, 0x1c, 0x41, 0xcd, 0x24, 0xc1, 0x38, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1296 = { .name = "xdh_wei25519_1296", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1296_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1296_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1296_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 250 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1297 for XDH, tcId is 251 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1297_peerpubkey[] = { 0xc3, 0xba, 0x28, 0x05, 0x77, 0x28, 0xd0, 0x53, 0x39, 0x65, 0xec, 0x34, 0x97, 0x9f, 0xe7, 0xbd, 0x93, 0xcf, 0x6c, 0xb6, 0x44, 0xe8, 0xda, 0x03, 0x8b, 0xaa, 0x87, 0x99, 0x7b, 0x8d, 0xc2, 0x0e, }; static const unsigned char xdh_wei25519_1297_privkey[] = { 0xd8, 0x81, 0x5b, 0xd1, 0x44, 0x51, 0x8f, 0xa5, 0x26, 0xbe, 0xfd, 0xd3, 0x73, 0xf5, 0xf9, 0xcf, 0xf2, 0x54, 0xd5, 0xd3, 0xc4, 0x66, 0x0e, 0x8a, 0x90, 0xef, 0x2a, 0x22, 0xc6, 0x87, 0x6a, 0x74, }; static const unsigned char xdh_wei25519_1297_sharedsecret[] = { 0x74, 0xf9, 0x5b, 0x47, 0x00, 0xf0, 0x18, 0x5f, 0x33, 0xc5, 0xb5, 0x52, 0x8e, 0xd5, 0x01, 0x2a, 0x33, 0x63, 0xf8, 0xbb, 0xd6, 0xf6, 0xa8, 0x40, 0xaa, 0x1f, 0x0f, 0x3b, 0xdb, 0x7c, 0x96, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1297 = { .name = "xdh_wei25519_1297", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1297_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1297_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1297_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 251 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1298 for XDH, tcId is 252 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1298_peerpubkey[] = { 0x4e, 0xb0, 0x95, 0xa8, 0x6d, 0x1e, 0x78, 0x1b, 0xb1, 0x82, 0x23, 0x30, 0x75, 0xeb, 0xf1, 0xdb, 0x10, 0x9d, 0x57, 0x13, 0x5b, 0xf9, 0x1d, 0x54, 0xfd, 0xb1, 0x8e, 0xb3, 0x71, 0x42, 0x76, 0x40, }; static const unsigned char xdh_wei25519_1298_privkey[] = { 0xa8, 0x2d, 0x99, 0x60, 0x93, 0xee, 0xfd, 0xaf, 0x28, 0x3f, 0x40, 0x49, 0xbb, 0xa4, 0xf5, 0xaf, 0x6e, 0xcc, 0x2e, 0x64, 0x89, 0x4f, 0x32, 0x5e, 0xe1, 0xf9, 0xca, 0x1e, 0x15, 0x6d, 0x05, 0x67, }; static const unsigned char xdh_wei25519_1298_sharedsecret[] = { 0xe9, 0x67, 0x7b, 0x85, 0x48, 0x51, 0xc4, 0x1c, 0xc4, 0x89, 0xe0, 0x39, 0x81, 0xae, 0x78, 0x69, 0x0b, 0xe6, 0xcb, 0xf0, 0x05, 0x4e, 0xa9, 0x83, 0x47, 0x59, 0xde, 0x3e, 0x27, 0xbc, 0xf0, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1298 = { .name = "xdh_wei25519_1298", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1298_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1298_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1298_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 252 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1299 for XDH, tcId is 253 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1299_peerpubkey[] = { 0x83, 0xf6, 0x7d, 0x7c, 0x92, 0xb1, 0x1c, 0x8f, 0xb0, 0x72, 0x48, 0x46, 0x42, 0xa0, 0x1f, 0x43, 0xde, 0xb0, 0x22, 0xb5, 0x4d, 0x94, 0xa4, 0x01, 0x5e, 0x39, 0x84, 0x9a, 0x2e, 0x2e, 0x95, 0x55, }; static const unsigned char xdh_wei25519_1299_privkey[] = { 0xc0, 0x26, 0x09, 0xdf, 0x3d, 0x54, 0x36, 0xc1, 0x23, 0xdc, 0xd7, 0xee, 0x11, 0xf2, 0x3f, 0x1d, 0xa3, 0x21, 0x66, 0x6c, 0x09, 0xf3, 0x79, 0xd3, 0x79, 0x14, 0x20, 0x33, 0x40, 0x51, 0x08, 0x61, }; static const unsigned char xdh_wei25519_1299_sharedsecret[] = { 0xf1, 0x48, 0x71, 0x6e, 0xbe, 0x72, 0x69, 0xa7, 0x07, 0x6f, 0x0c, 0xf1, 0xf2, 0x2b, 0x69, 0x78, 0xd3, 0xc7, 0xe3, 0x60, 0x7b, 0x0b, 0xcc, 0x87, 0xa8, 0xc7, 0xa8, 0x5b, 0x9f, 0xd2, 0x0c, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_1299 = { .name = "xdh_wei25519_1299", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1299_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1299_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1299_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 253 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1300 for XDH, tcId is 254 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1300_peerpubkey[] = { 0x20, 0xcc, 0x75, 0xd3, 0x76, 0xd8, 0x45, 0x3b, 0x9d, 0x04, 0x9c, 0x84, 0xf5, 0x8e, 0xaf, 0xcf, 0x61, 0x12, 0x6c, 0x08, 0xa0, 0x36, 0x61, 0xe7, 0x35, 0xf0, 0xa8, 0xbe, 0x22, 0x8f, 0xd4, 0x66, }; static const unsigned char xdh_wei25519_1300_privkey[] = { 0xa0, 0xe3, 0xb7, 0x8c, 0x0f, 0x3b, 0xe2, 0xa7, 0x60, 0xb2, 0xc9, 0x16, 0xf2, 0x44, 0xdf, 0x21, 0x96, 0x24, 0xfd, 0xda, 0x2e, 0x9e, 0x31, 0xb1, 0x53, 0x28, 0xf4, 0xa7, 0x76, 0x90, 0x29, 0x6a, }; static const unsigned char xdh_wei25519_1300_sharedsecret[] = { 0x1d, 0x5c, 0x12, 0x3e, 0x88, 0xe9, 0xdc, 0x7a, 0x3b, 0x16, 0xec, 0x90, 0xb6, 0x05, 0x78, 0xdf, 0xca, 0x7e, 0x11, 0xea, 0xb9, 0xb8, 0x8c, 0x6e, 0xca, 0x7b, 0xc3, 0x3d, 0x91, 0xfd, 0xe8, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1300 = { .name = "xdh_wei25519_1300", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1300_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1300_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1300_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 254 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1301 for XDH, tcId is 255 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1301_peerpubkey[] = { 0xef, 0x31, 0xb4, 0x3d, 0x19, 0xc0, 0xa5, 0x43, 0x4d, 0xeb, 0x56, 0x12, 0x9c, 0x16, 0x29, 0x8a, 0x39, 0x4a, 0x70, 0x32, 0xa2, 0xe5, 0x2c, 0xb9, 0x97, 0x47, 0x6b, 0xde, 0xca, 0x32, 0x5b, 0x73, }; static const unsigned char xdh_wei25519_1301_privkey[] = { 0x70, 0x1f, 0x13, 0x0a, 0x29, 0x05, 0x84, 0xcb, 0x28, 0xc7, 0xd6, 0x53, 0x95, 0x06, 0xa1, 0xa0, 0x54, 0xf9, 0x26, 0xa1, 0x7e, 0xf7, 0xc5, 0x68, 0xae, 0x43, 0x04, 0x7c, 0x05, 0xe1, 0x0f, 0x60, }; static const unsigned char xdh_wei25519_1301_sharedsecret[] = { 0x2f, 0xc0, 0x65, 0xba, 0x8f, 0x50, 0x40, 0xa0, 0xa6, 0x59, 0xf6, 0xf7, 0x33, 0x05, 0x54, 0xbd, 0x1b, 0x9d, 0x7c, 0x89, 0x3b, 0x91, 0xe3, 0x16, 0xe0, 0xaf, 0x90, 0xc3, 0x7a, 0xf4, 0xf1, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1301 = { .name = "xdh_wei25519_1301", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1301_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1301_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1301_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 255 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1302 for XDH, tcId is 256 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1302_peerpubkey[] = { 0xd8, 0xc8, 0xe2, 0xc6, 0xf3, 0x3a, 0x98, 0x52, 0x5d, 0xf3, 0x76, 0x7d, 0x1d, 0x04, 0x43, 0x0d, 0xab, 0x0b, 0xda, 0x41, 0xf1, 0xf9, 0x04, 0xc9, 0x5b, 0xc6, 0x1c, 0xc1, 0x22, 0xca, 0xca, 0x74, }; static const unsigned char xdh_wei25519_1302_privkey[] = { 0xd0, 0xe6, 0x7f, 0x68, 0x18, 0x3a, 0x4c, 0x1a, 0xed, 0x9c, 0x56, 0x86, 0x4b, 0x36, 0x27, 0x8b, 0xb7, 0xbb, 0x75, 0xd5, 0x7a, 0x78, 0x32, 0x1b, 0xc7, 0xc2, 0x4f, 0xf6, 0x16, 0x36, 0x60, 0x7a, }; static const unsigned char xdh_wei25519_1302_sharedsecret[] = { 0xef, 0x76, 0x12, 0xc1, 0x56, 0x07, 0x8d, 0xae, 0x3a, 0x81, 0xe5, 0x0e, 0xf3, 0x39, 0x51, 0xca, 0xb6, 0x61, 0xfb, 0x07, 0x73, 0x1d, 0x8f, 0x41, 0x9b, 0xc0, 0x10, 0x5c, 0x4d, 0x6d, 0x60, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1302 = { .name = "xdh_wei25519_1302", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1302_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1302_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1302_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 256 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1303 for XDH, tcId is 257 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1303_peerpubkey[] = { 0x18, 0x33, 0x61, 0x95, 0x16, 0xb8, 0x0d, 0xb0, 0xc0, 0x5b, 0x22, 0x55, 0x09, 0xe6, 0x69, 0x8d, 0xf0, 0x28, 0xd8, 0x3b, 0x66, 0xed, 0x6b, 0xac, 0x6f, 0x0f, 0x63, 0x08, 0x97, 0x0d, 0x2c, 0x7d, }; static const unsigned char xdh_wei25519_1303_privkey[] = { 0x88, 0xeb, 0x77, 0x75, 0xda, 0xcc, 0x32, 0xb0, 0x45, 0xce, 0xb3, 0x5f, 0x26, 0x1b, 0x36, 0x16, 0x31, 0x5e, 0xfa, 0x98, 0xb7, 0x80, 0xe0, 0x8c, 0x79, 0xd5, 0x44, 0xed, 0xad, 0xb5, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_1303_sharedsecret[] = { 0xa3, 0xcf, 0x3d, 0x81, 0xec, 0x56, 0x89, 0x6a, 0x68, 0xfc, 0xa0, 0xda, 0x63, 0x35, 0x17, 0x1d, 0x0c, 0x62, 0x25, 0x68, 0x73, 0x8c, 0x0d, 0xb2, 0x6f, 0xe1, 0x17, 0x03, 0x37, 0x26, 0xa0, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1303 = { .name = "xdh_wei25519_1303", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1303_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1303_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1303_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 257 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1304 for XDH, tcId is 258 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1304_peerpubkey[] = { 0xe2, 0xe9, 0x89, 0xaa, 0xd2, 0x39, 0x7f, 0xc3, 0x4b, 0x6c, 0xbe, 0x2d, 0xb2, 0x7d, 0x5a, 0xb6, 0x9b, 0x28, 0x04, 0x83, 0x83, 0xc9, 0x1d, 0x9e, 0x82, 0x26, 0xd5, 0x48, 0x25, 0x3f, 0xab, 0x7e, }; static const unsigned char xdh_wei25519_1304_privkey[] = { 0x70, 0x55, 0xb1, 0xc0, 0x57, 0x6e, 0x7a, 0xb6, 0xc8, 0x9f, 0xcc, 0x1c, 0xe4, 0x9e, 0x79, 0xc8, 0xc3, 0x71, 0xbf, 0x9f, 0xc2, 0xb2, 0x2b, 0x8f, 0x83, 0x96, 0xa9, 0xb6, 0x4c, 0x5a, 0xe2, 0x6d, }; static const unsigned char xdh_wei25519_1304_sharedsecret[] = { 0xe7, 0xf4, 0x58, 0x23, 0xa4, 0x5b, 0x6a, 0x46, 0x19, 0x2b, 0x37, 0xd7, 0x3e, 0x86, 0x09, 0xb5, 0xbd, 0xa6, 0x8c, 0xd7, 0xcf, 0xbd, 0xcc, 0xaa, 0x49, 0x08, 0x20, 0x80, 0x99, 0x3e, 0x64, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1304 = { .name = "xdh_wei25519_1304", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1304_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1304_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1304_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 258 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1305 for XDH, tcId is 259 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1305_peerpubkey[] = { 0xb9, 0xbd, 0x79, 0x36, 0x24, 0xd6, 0xa7, 0xe8, 0x08, 0x48, 0x61, 0x10, 0x05, 0x88, 0x53, 0xed, 0xb2, 0x5e, 0x13, 0x6b, 0xd4, 0xd6, 0xa7, 0x95, 0xd6, 0xd2, 0xef, 0x53, 0xb2, 0x5e, 0x38, 0x04, }; static const unsigned char xdh_wei25519_1305_privkey[] = { 0x90, 0x6a, 0x9b, 0xfc, 0xfd, 0x71, 0x01, 0x4d, 0x18, 0x96, 0x76, 0x80, 0xd4, 0x50, 0x9e, 0xaa, 0x41, 0xc6, 0x66, 0x42, 0x4a, 0xf9, 0x8b, 0xf9, 0xff, 0x7f, 0xf4, 0x9e, 0xb1, 0xba, 0xba, 0x41, }; static const unsigned char xdh_wei25519_1305_sharedsecret[] = { 0x7c, 0x61, 0x48, 0x13, 0x4c, 0x9e, 0x8b, 0x2b, 0xa5, 0xda, 0xec, 0xa4, 0x1e, 0x6a, 0x1f, 0x3a, 0x82, 0xd8, 0xf7, 0x5d, 0x0b, 0x29, 0x2b, 0x23, 0xc4, 0x0f, 0xe7, 0xf5, 0xce, 0x0a, 0x2b, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1305 = { .name = "xdh_wei25519_1305", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1305_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1305_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1305_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 259 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1306 for XDH, tcId is 260 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1306_peerpubkey[] = { 0xe3, 0xf4, 0x44, 0xe2, 0x08, 0xda, 0x90, 0x43, 0xf3, 0xf7, 0x4c, 0x20, 0xe2, 0x8d, 0x7f, 0x40, 0x4b, 0xb6, 0x87, 0xa3, 0x46, 0x70, 0x9a, 0xbc, 0xd5, 0x55, 0x15, 0x6f, 0x88, 0x60, 0x78, 0x20, }; static const unsigned char xdh_wei25519_1306_privkey[] = { 0x28, 0x39, 0x2b, 0x1b, 0x03, 0x5a, 0x84, 0x65, 0xaa, 0x22, 0xaa, 0xbb, 0x57, 0x10, 0x61, 0xc6, 0xef, 0xfe, 0xed, 0x40, 0xcc, 0x25, 0x30, 0xb6, 0x28, 0xe4, 0xfd, 0x40, 0x39, 0x5a, 0xe0, 0x4a, }; static const unsigned char xdh_wei25519_1306_sharedsecret[] = { 0xea, 0x5e, 0x77, 0x2b, 0xac, 0x46, 0x93, 0xce, 0x69, 0xea, 0x3a, 0xc7, 0x61, 0x01, 0x1f, 0xa7, 0x67, 0x40, 0x37, 0x65, 0x3a, 0x43, 0x3c, 0x7f, 0x05, 0x45, 0x6e, 0x72, 0x91, 0xcd, 0x3c, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1306 = { .name = "xdh_wei25519_1306", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1306_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1306_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1306_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 260 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1307 for XDH, tcId is 261 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1307_peerpubkey[] = { 0x87, 0xb4, 0x3f, 0x90, 0xf7, 0x6d, 0x12, 0xfb, 0x3a, 0x46, 0x9f, 0xa8, 0x68, 0x7c, 0x27, 0xe3, 0x69, 0xd4, 0xa8, 0x2f, 0x95, 0xcf, 0x95, 0xe8, 0xdc, 0x39, 0x70, 0xde, 0x8f, 0x86, 0xd9, 0x2b, }; static const unsigned char xdh_wei25519_1307_privkey[] = { 0x78, 0xcb, 0xb3, 0x52, 0x04, 0xcc, 0x88, 0x67, 0x6c, 0x14, 0xe0, 0xff, 0x18, 0x17, 0x13, 0x92, 0xe9, 0x98, 0x41, 0x1b, 0x23, 0xd9, 0x05, 0xd4, 0xc4, 0xdc, 0xea, 0xb7, 0x05, 0x11, 0xf4, 0x42, }; static const unsigned char xdh_wei25519_1307_sharedsecret[] = { 0x81, 0xc3, 0x95, 0xae, 0xd5, 0xcc, 0x5f, 0x5e, 0x2a, 0x20, 0x6a, 0x8a, 0x4c, 0xac, 0xec, 0xd5, 0x01, 0xdf, 0x5b, 0x81, 0xe4, 0x94, 0x33, 0x83, 0x5a, 0xd8, 0xa3, 0x77, 0x9e, 0xdf, 0xfb, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_1307 = { .name = "xdh_wei25519_1307", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1307_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1307_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1307_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 261 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1308 for XDH, tcId is 262 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1308_peerpubkey[] = { 0x86, 0x44, 0x1e, 0xa0, 0x6c, 0x5c, 0xd2, 0xa3, 0x4c, 0x6b, 0x51, 0x26, 0x1e, 0x93, 0xa2, 0xf3, 0x0e, 0xa7, 0xdb, 0x0f, 0x74, 0xe1, 0x4c, 0x42, 0xf0, 0xfc, 0x44, 0x3c, 0x67, 0x35, 0x97, 0x3c, }; static const unsigned char xdh_wei25519_1308_privkey[] = { 0xa8, 0x22, 0x5b, 0x49, 0xef, 0x7b, 0x73, 0x30, 0xe3, 0xde, 0x78, 0x7c, 0xbc, 0x40, 0x47, 0x96, 0x44, 0xdb, 0x7a, 0xb1, 0x26, 0x37, 0x02, 0x95, 0xc9, 0x41, 0x89, 0x67, 0x34, 0x30, 0xd7, 0x45, }; static const unsigned char xdh_wei25519_1308_sharedsecret[] = { 0x51, 0x3e, 0xba, 0x58, 0x70, 0xdc, 0x51, 0x87, 0xe2, 0x55, 0x2f, 0xe3, 0xba, 0x82, 0x92, 0xb5, 0x16, 0xd2, 0xaf, 0x9e, 0xcb, 0x9a, 0x9b, 0xdc, 0x51, 0xea, 0xc2, 0xce, 0x2d, 0xe4, 0x01, 0x12, }; static const wycheproof_xdh_test xdh_wei25519_1308 = { .name = "xdh_wei25519_1308", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1308_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1308_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1308_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 262 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1309 for XDH, tcId is 263 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1309_peerpubkey[] = { 0x46, 0x24, 0xaa, 0x4a, 0xe9, 0xd1, 0x27, 0x25, 0xbf, 0x92, 0xb8, 0x5f, 0x93, 0xe3, 0xe8, 0xce, 0xa1, 0x6b, 0x7b, 0xd8, 0x3f, 0xda, 0x0e, 0xb1, 0x8f, 0xab, 0x2d, 0xbe, 0x0e, 0x8b, 0xf7, 0x42, }; static const unsigned char xdh_wei25519_1309_privkey[] = { 0x08, 0x41, 0xe1, 0xa5, 0xc7, 0x42, 0x0b, 0x94, 0xb6, 0xcc, 0x69, 0x91, 0x31, 0x6e, 0xbd, 0xd6, 0x08, 0x62, 0x63, 0x39, 0xc0, 0x9d, 0x0f, 0x67, 0xb2, 0x40, 0x88, 0x58, 0x8b, 0x9d, 0x0d, 0x49, }; static const unsigned char xdh_wei25519_1309_sharedsecret[] = { 0x98, 0x3b, 0x7e, 0x23, 0x6f, 0xfa, 0xdd, 0xb4, 0xb7, 0x59, 0xb7, 0x35, 0x3f, 0xe8, 0x78, 0x46, 0xf5, 0x9f, 0xb6, 0xf2, 0x8a, 0x3e, 0xd6, 0x5c, 0x25, 0x61, 0x76, 0xb6, 0x60, 0x9b, 0x7c, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1309 = { .name = "xdh_wei25519_1309", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1309_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1309_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1309_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 263 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1310 for XDH, tcId is 264 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1310_peerpubkey[] = { 0xa6, 0x25, 0xa5, 0xb7, 0xa0, 0x4c, 0xea, 0x46, 0x2d, 0x12, 0x3b, 0x48, 0x5c, 0x39, 0xea, 0x44, 0xa8, 0x07, 0x9a, 0xa2, 0x23, 0xc5, 0x9e, 0x9c, 0xa9, 0x7a, 0xbc, 0xd3, 0x0b, 0x50, 0x0e, 0x4b, }; static const unsigned char xdh_wei25519_1310_privkey[] = { 0x08, 0xec, 0xf7, 0x6e, 0x31, 0xa2, 0x30, 0x39, 0xea, 0x8a, 0x15, 0xee, 0x47, 0x4b, 0x62, 0x51, 0xa9, 0xd7, 0x25, 0xbf, 0xf1, 0xa5, 0x75, 0x1e, 0xb5, 0xec, 0xde, 0x9d, 0x7d, 0x4e, 0x2f, 0x49, }; static const unsigned char xdh_wei25519_1310_sharedsecret[] = { 0xc9, 0x41, 0x36, 0x9b, 0x08, 0x5c, 0x74, 0x65, 0xd5, 0x0d, 0x23, 0xce, 0xaf, 0x67, 0x17, 0xab, 0x06, 0xe2, 0x46, 0x38, 0xf2, 0x17, 0xa7, 0xb8, 0x05, 0x5c, 0xe8, 0xeb, 0xd3, 0xca, 0x12, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1310 = { .name = "xdh_wei25519_1310", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1310_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1310_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1310_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 264 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1311 for XDH, tcId is 265 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1311_peerpubkey[] = { 0x8a, 0x5f, 0x20, 0x63, 0xf2, 0x59, 0xf3, 0x31, 0x7a, 0xe3, 0xe0, 0xb4, 0x59, 0xf8, 0x2c, 0x46, 0x77, 0x66, 0x6e, 0x49, 0xa2, 0xeb, 0x9b, 0xf0, 0x36, 0x9a, 0xee, 0x66, 0x36, 0x31, 0x26, 0x5b, }; static const unsigned char xdh_wei25519_1311_privkey[] = { 0x60, 0x38, 0xfb, 0x0a, 0x83, 0x0d, 0x10, 0x01, 0xca, 0x8e, 0xa7, 0x4a, 0x61, 0x3e, 0xa9, 0x8f, 0x6a, 0xb8, 0x51, 0x26, 0x44, 0xe5, 0x5e, 0x8d, 0x45, 0xa2, 0x90, 0x71, 0xbd, 0x4b, 0xef, 0x45, }; static const unsigned char xdh_wei25519_1311_sharedsecret[] = { 0xa3, 0xf7, 0xe1, 0x69, 0xdb, 0x44, 0xd0, 0xd1, 0x79, 0xc2, 0x42, 0xe6, 0x63, 0x47, 0x36, 0x4a, 0xb9, 0x27, 0x44, 0xdc, 0x6a, 0xd8, 0x0e, 0x47, 0x75, 0xae, 0xf7, 0xf4, 0xff, 0x9d, 0x5f, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1311 = { .name = "xdh_wei25519_1311", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1311_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1311_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1311_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 265 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1312 for XDH, tcId is 266 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1312_peerpubkey[] = { 0x54, 0xcf, 0xb6, 0xad, 0x0d, 0x03, 0xe3, 0x11, 0x5a, 0xca, 0xfe, 0xe1, 0x26, 0x06, 0x39, 0x7f, 0x2b, 0xb4, 0x6a, 0x8c, 0x5f, 0x32, 0x6a, 0x25, 0x5c, 0x49, 0x41, 0x18, 0xae, 0xad, 0x3b, 0x62, }; static const unsigned char xdh_wei25519_1312_privkey[] = { 0xc0, 0x4c, 0xf1, 0x29, 0xf0, 0xb3, 0x33, 0x32, 0xe2, 0x65, 0x4f, 0x8e, 0x45, 0x22, 0x5c, 0x04, 0x2d, 0x7f, 0xa6, 0xcb, 0xc7, 0x93, 0xc8, 0x8b, 0xd4, 0xc7, 0x31, 0x98, 0x52, 0x89, 0xb0, 0x45, }; static const unsigned char xdh_wei25519_1312_sharedsecret[] = { 0x40, 0x1a, 0xab, 0xfb, 0xb7, 0x3f, 0xe6, 0x69, 0x4c, 0x44, 0x6e, 0xcf, 0xff, 0xb4, 0x30, 0x06, 0x42, 0x7a, 0x9d, 0x47, 0x56, 0xe0, 0x49, 0xa1, 0xff, 0xc7, 0x95, 0x78, 0xd6, 0x2f, 0x16, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1312 = { .name = "xdh_wei25519_1312", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1312_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1312_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1312_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 266 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1313 for XDH, tcId is 267 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1313_peerpubkey[] = { 0x0e, 0xe3, 0xbe, 0xe8, 0xcb, 0x3a, 0x0a, 0xfc, 0xec, 0x22, 0xfa, 0x22, 0x33, 0x70, 0x6e, 0x8e, 0xc2, 0x9c, 0xcf, 0x1a, 0xf2, 0x12, 0xc0, 0xa6, 0x74, 0x74, 0x5e, 0xbb, 0xa3, 0x4f, 0x9d, 0x08, }; static const unsigned char xdh_wei25519_1313_privkey[] = { 0x38, 0x06, 0xb0, 0x36, 0xc9, 0x2d, 0x7b, 0xc0, 0x77, 0x19, 0x98, 0xd2, 0x4d, 0xbd, 0xa2, 0x94, 0x5b, 0x60, 0x1d, 0x42, 0x44, 0x9b, 0xd3, 0xec, 0x4b, 0xbf, 0x37, 0x57, 0xd0, 0x1b, 0x89, 0x4d, }; static const unsigned char xdh_wei25519_1313_sharedsecret[] = { 0x20, 0x32, 0x2d, 0xd0, 0x24, 0xfb, 0x5a, 0x40, 0xf3, 0x27, 0xcf, 0x7c, 0x00, 0xda, 0x20, 0x37, 0x34, 0xc2, 0xa2, 0x79, 0xb9, 0x66, 0x6a, 0x9f, 0xf7, 0xd8, 0x52, 0x7c, 0x92, 0x7b, 0x67, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_1313 = { .name = "xdh_wei25519_1313", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1313_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1313_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1313_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 267 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1314 for XDH, tcId is 268 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1314_peerpubkey[] = { 0x79, 0x7e, 0xc7, 0x51, 0x2a, 0xfb, 0xf0, 0xad, 0x91, 0x8d, 0x0e, 0x49, 0x47, 0x90, 0x3b, 0xe9, 0x52, 0x34, 0xf3, 0xab, 0xf3, 0x67, 0x50, 0xa8, 0xf8, 0x54, 0x88, 0x8d, 0x11, 0x7b, 0x77, 0x4e, }; static const unsigned char xdh_wei25519_1314_privkey[] = { 0x38, 0x0d, 0x90, 0x56, 0xb5, 0xa2, 0xf4, 0xb3, 0xdf, 0xfb, 0x30, 0xe6, 0xce, 0xb7, 0x22, 0xac, 0x46, 0x84, 0x24, 0x5f, 0x1b, 0xef, 0xaf, 0xb5, 0x66, 0x1b, 0xc8, 0xc7, 0xa9, 0xad, 0x4c, 0x43, }; static const unsigned char xdh_wei25519_1314_sharedsecret[] = { 0x46, 0x15, 0x2d, 0x59, 0xc2, 0xd2, 0xf3, 0xec, 0xf0, 0x3c, 0xe6, 0x52, 0xd2, 0xb6, 0x97, 0x8d, 0x40, 0x1d, 0x5e, 0xde, 0x45, 0x70, 0xa6, 0xc9, 0x11, 0x77, 0x1b, 0xdc, 0xfb, 0x37, 0xcd, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1314 = { .name = "xdh_wei25519_1314", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1314_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1314_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1314_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 268 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1315 for XDH, tcId is 269 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1315_peerpubkey[] = { 0xd5, 0x70, 0xc7, 0x81, 0x0f, 0x69, 0xe5, 0x02, 0xb3, 0x55, 0x25, 0x3a, 0xfa, 0x7c, 0x66, 0x7b, 0xfa, 0x50, 0x60, 0xd9, 0x0d, 0xc8, 0x6e, 0x35, 0x8a, 0xb4, 0x45, 0xf6, 0x38, 0x1e, 0x41, 0x5d, }; static const unsigned char xdh_wei25519_1315_privkey[] = { 0x38, 0x49, 0x29, 0xa4, 0x2c, 0x8d, 0x8d, 0xf1, 0x46, 0xdb, 0x95, 0x08, 0xe2, 0xf2, 0x1a, 0x4e, 0x8c, 0xd4, 0xd9, 0x9c, 0x1b, 0x13, 0x38, 0xdf, 0x17, 0xa4, 0x57, 0xe8, 0x8a, 0xfb, 0x00, 0x43, }; static const unsigned char xdh_wei25519_1315_sharedsecret[] = { 0x37, 0x56, 0x7f, 0x7e, 0xc0, 0x44, 0x9c, 0x7b, 0x82, 0x3c, 0xf7, 0xb0, 0xe2, 0x19, 0xe9, 0xdd, 0x88, 0x0e, 0x56, 0xa1, 0x46, 0x4d, 0x04, 0x17, 0xa9, 0xe6, 0x7e, 0xff, 0x42, 0x33, 0x28, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1315 = { .name = "xdh_wei25519_1315", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1315_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1315_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1315_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 269 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1316 for XDH, tcId is 270 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1316_peerpubkey[] = { 0x2c, 0x61, 0x1c, 0xb9, 0x44, 0x48, 0xf1, 0xc7, 0x82, 0x24, 0x25, 0xa4, 0xcf, 0x53, 0x56, 0x23, 0x6b, 0x90, 0xa5, 0x55, 0xb1, 0xed, 0x47, 0x47, 0x82, 0x0b, 0xa7, 0xf7, 0x39, 0xc8, 0xf5, 0x7d, }; static const unsigned char xdh_wei25519_1316_privkey[] = { 0x48, 0xa9, 0x86, 0x82, 0x5b, 0x26, 0x80, 0xe2, 0xf2, 0x54, 0x7b, 0xa7, 0x5a, 0x95, 0x99, 0xb0, 0x4e, 0xd5, 0x7f, 0x8e, 0xd1, 0x8d, 0x98, 0xe7, 0x09, 0x9c, 0x54, 0x4e, 0xfb, 0xdf, 0x28, 0x4b, }; static const unsigned char xdh_wei25519_1316_sharedsecret[] = { 0xfb, 0xf6, 0x58, 0x7e, 0xc1, 0x81, 0x11, 0x6c, 0xf1, 0xac, 0xe7, 0xdc, 0xd5, 0x48, 0x02, 0x9d, 0x69, 0xc1, 0x30, 0xe5, 0x0f, 0xcf, 0x6a, 0xd5, 0xdf, 0xcd, 0x25, 0xc2, 0x3e, 0xe9, 0xf9, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1316 = { .name = "xdh_wei25519_1316", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1316_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1316_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1316_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 270 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1317 for XDH, tcId is 271 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1317_peerpubkey[] = { 0xe5, 0x59, 0xc4, 0x17, 0xda, 0x7f, 0xd5, 0x85, 0x13, 0x52, 0xf5, 0x08, 0xb9, 0x00, 0x31, 0xd4, 0x9b, 0x5d, 0x2d, 0x0a, 0xac, 0x88, 0xa9, 0xc8, 0xb5, 0xfb, 0x6e, 0x80, 0x16, 0x5a, 0xc1, 0x0b, }; static const unsigned char xdh_wei25519_1317_privkey[] = { 0x98, 0x45, 0x2a, 0xd7, 0xdf, 0x4e, 0x26, 0xbc, 0x4b, 0x3d, 0x40, 0x3f, 0x9e, 0xbf, 0x72, 0xbb, 0x2d, 0x7b, 0x6b, 0x7d, 0x58, 0x60, 0xdb, 0xf6, 0xfb, 0x9a, 0x4f, 0x78, 0xdc, 0x02, 0x70, 0x4a, }; static const unsigned char xdh_wei25519_1317_sharedsecret[] = { 0xc7, 0xc6, 0xf6, 0xd7, 0xce, 0x1e, 0x4f, 0x54, 0xc7, 0x27, 0xe5, 0x90, 0x06, 0x86, 0xc3, 0x4e, 0x6a, 0x69, 0x53, 0x25, 0x4b, 0xd4, 0x70, 0xbb, 0xbf, 0x0c, 0x7c, 0x18, 0xbb, 0xdd, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1317 = { .name = "xdh_wei25519_1317", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1317_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1317_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1317_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 271 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1318 for XDH, tcId is 272 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1318_peerpubkey[] = { 0x74, 0x6d, 0x97, 0xe7, 0x77, 0x42, 0x92, 0xa3, 0xd7, 0x03, 0xf6, 0x04, 0xe7, 0x9d, 0x87, 0x64, 0xc9, 0x9a, 0x6a, 0x2f, 0xe2, 0x80, 0xea, 0xa9, 0x81, 0x11, 0x15, 0xf5, 0xe0, 0x38, 0xf2, 0x1a, }; static const unsigned char xdh_wei25519_1318_privkey[] = { 0xa8, 0xdb, 0xc9, 0xbe, 0x50, 0x34, 0xed, 0x7f, 0xe7, 0xf4, 0x69, 0x26, 0x4f, 0x21, 0x35, 0xe9, 0xc6, 0x7c, 0xd3, 0x0f, 0x52, 0x55, 0x70, 0xd2, 0xd8, 0x41, 0xe4, 0xbd, 0xea, 0xc5, 0x23, 0x49, }; static const unsigned char xdh_wei25519_1318_sharedsecret[] = { 0xcf, 0x7d, 0x2a, 0x66, 0xea, 0x4d, 0xfe, 0xd9, 0x44, 0x69, 0xb2, 0xd3, 0x43, 0x53, 0x3f, 0xf3, 0x02, 0xa5, 0x76, 0xf8, 0x40, 0x2e, 0xd2, 0x18, 0x79, 0x04, 0x43, 0x70, 0x38, 0xe5, 0x46, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1318 = { .name = "xdh_wei25519_1318", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1318_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1318_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1318_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 272 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1319 for XDH, tcId is 273 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1319_peerpubkey[] = { 0x1f, 0x35, 0x4a, 0xa8, 0xff, 0xc4, 0xea, 0xe2, 0xb4, 0x0d, 0xad, 0x2e, 0xbf, 0x83, 0x0d, 0xb3, 0xfe, 0xb0, 0x7e, 0x2a, 0x1a, 0x2d, 0xa3, 0x9e, 0x55, 0xdf, 0x87, 0xc8, 0xc6, 0x13, 0xde, 0x1d, }; static const unsigned char xdh_wei25519_1319_privkey[] = { 0xf8, 0xd2, 0x68, 0x78, 0xdf, 0xf2, 0x5c, 0xed, 0x02, 0xd3, 0xb2, 0x7c, 0xe7, 0x40, 0x02, 0x69, 0x5b, 0xb8, 0x79, 0xb3, 0xc4, 0x32, 0x89, 0x30, 0x93, 0x43, 0x15, 0xec, 0xae, 0x84, 0x2b, 0x47, }; static const unsigned char xdh_wei25519_1319_sharedsecret[] = { 0xb2, 0x04, 0xd3, 0xbb, 0xcb, 0xdc, 0x62, 0x4f, 0x9f, 0x1a, 0x74, 0x3f, 0xa3, 0xda, 0xa8, 0xf4, 0xc8, 0x78, 0x5e, 0xd0, 0x88, 0xd3, 0x7d, 0x08, 0xcd, 0x13, 0xc6, 0x01, 0x17, 0x0a, 0x46, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1319 = { .name = "xdh_wei25519_1319", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1319_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1319_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1319_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 273 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1320 for XDH, tcId is 274 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1320_peerpubkey[] = { 0x9c, 0x3f, 0x00, 0x23, 0xe1, 0xa4, 0x83, 0x25, 0x86, 0xaf, 0x24, 0x83, 0xbb, 0xec, 0x64, 0xce, 0x9f, 0x06, 0xf3, 0xea, 0x80, 0x6d, 0x40, 0x19, 0xa5, 0xe4, 0xab, 0xb1, 0xb5, 0x62, 0x70, 0x29, }; static const unsigned char xdh_wei25519_1320_privkey[] = { 0xd0, 0xf5, 0xe9, 0xc4, 0x3c, 0x95, 0xb1, 0xff, 0xc3, 0x6f, 0x83, 0x2b, 0x94, 0x36, 0x01, 0xd5, 0xe1, 0x76, 0x47, 0xf7, 0xd7, 0x8e, 0x2e, 0x77, 0x10, 0xac, 0xe6, 0x3f, 0xf2, 0x74, 0xd4, 0x47, }; static const unsigned char xdh_wei25519_1320_sharedsecret[] = { 0xb9, 0xf2, 0x14, 0x65, 0x61, 0x5f, 0x39, 0xdd, 0xdc, 0xc3, 0x75, 0x20, 0xce, 0x9b, 0x95, 0x6f, 0x7d, 0xe9, 0x88, 0x3a, 0xc9, 0x3a, 0x87, 0x0d, 0x74, 0xe3, 0x88, 0xb8, 0xe1, 0x77, 0x54, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1320 = { .name = "xdh_wei25519_1320", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1320_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1320_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1320_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 274 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1321 for XDH, tcId is 275 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1321_peerpubkey[] = { 0xd0, 0x56, 0x56, 0xaa, 0x01, 0x4d, 0x47, 0x60, 0x22, 0xdf, 0xc5, 0x5e, 0x8d, 0x3b, 0x48, 0x84, 0xed, 0x0b, 0xdf, 0x85, 0x20, 0x9b, 0xe8, 0xb5, 0x53, 0x51, 0x39, 0x4d, 0x52, 0xbe, 0x68, 0x4b, }; static const unsigned char xdh_wei25519_1321_privkey[] = { 0x70, 0x06, 0x79, 0xe8, 0xc2, 0x4d, 0xf8, 0x28, 0xf2, 0xe5, 0x21, 0x2a, 0x32, 0x63, 0xd5, 0xe9, 0x3e, 0xa6, 0x16, 0x79, 0x98, 0x82, 0x98, 0xba, 0xb3, 0xb4, 0x80, 0xf4, 0x6f, 0x96, 0x1a, 0x48, }; static const unsigned char xdh_wei25519_1321_sharedsecret[] = { 0x20, 0xf1, 0xfc, 0x61, 0x38, 0x74, 0x49, 0x5f, 0x20, 0x56, 0x2c, 0x10, 0xb7, 0xa8, 0xbe, 0x47, 0xbf, 0xc1, 0x2c, 0x16, 0x8d, 0x82, 0x9d, 0x63, 0x21, 0xaa, 0x2d, 0xe1, 0x70, 0x60, 0xe4, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1321 = { .name = "xdh_wei25519_1321", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1321_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1321_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1321_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 275 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1322 for XDH, tcId is 276 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1322_peerpubkey[] = { 0xc4, 0xa1, 0x9b, 0x86, 0x86, 0xe1, 0x8c, 0x29, 0x35, 0x9a, 0xa5, 0x48, 0x42, 0x7f, 0x06, 0xa3, 0x68, 0xd5, 0x5a, 0x87, 0x37, 0x48, 0x3d, 0x48, 0x93, 0x52, 0x3a, 0xda, 0xc6, 0x79, 0x5a, 0x4c, }; static const unsigned char xdh_wei25519_1322_privkey[] = { 0xd0, 0xd0, 0x77, 0xc9, 0x46, 0x1f, 0x74, 0x7e, 0x56, 0x60, 0xbe, 0x85, 0xcc, 0x62, 0x04, 0x28, 0xb4, 0xce, 0xfe, 0x80, 0x5d, 0xe0, 0xfd, 0x25, 0x4a, 0xda, 0xa4, 0x65, 0xea, 0x5e, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_1322_sharedsecret[] = { 0x65, 0x2b, 0x18, 0xff, 0xd4, 0x1c, 0xfb, 0x7d, 0x1f, 0x0b, 0x6d, 0xc7, 0x9b, 0xaa, 0x3b, 0x2a, 0x39, 0x2e, 0xf1, 0x61, 0x7f, 0x5c, 0xf6, 0x25, 0x9b, 0x5b, 0x4f, 0xf0, 0x65, 0x91, 0x6a, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1322 = { .name = "xdh_wei25519_1322", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1322_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1322_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1322_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 276 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1323 for XDH, tcId is 277 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1323_peerpubkey[] = { 0x49, 0x89, 0xde, 0x79, 0x85, 0x3f, 0xf3, 0x5b, 0xe8, 0xc9, 0xf9, 0x2f, 0xc9, 0x46, 0x74, 0xfe, 0xef, 0x38, 0xa0, 0xe6, 0x57, 0x88, 0x47, 0x1c, 0x52, 0x1f, 0x8e, 0x25, 0x9a, 0xdf, 0x01, 0x5d, }; static const unsigned char xdh_wei25519_1323_privkey[] = { 0x00, 0x71, 0x1a, 0xc0, 0x8e, 0xf8, 0x8c, 0x3d, 0x43, 0xa3, 0xcb, 0xda, 0x67, 0xb6, 0xfe, 0x5f, 0x34, 0xf5, 0x47, 0x23, 0xdb, 0xe6, 0xd7, 0x25, 0xc8, 0xa3, 0x56, 0x90, 0x70, 0xab, 0x9a, 0x4e, }; static const unsigned char xdh_wei25519_1323_sharedsecret[] = { 0x67, 0x98, 0x25, 0xc2, 0x59, 0x39, 0x2d, 0x86, 0xf8, 0xed, 0xb1, 0x53, 0x28, 0xd4, 0xfa, 0xf5, 0x23, 0x00, 0x77, 0x9d, 0x97, 0x9a, 0x50, 0x3a, 0x76, 0xe2, 0x7b, 0xe3, 0xd7, 0xa8, 0x5e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1323 = { .name = "xdh_wei25519_1323", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1323_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1323_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1323_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 277 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1324 for XDH, tcId is 278 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1324_peerpubkey[] = { 0xa9, 0x81, 0x48, 0x3c, 0xb0, 0xea, 0x43, 0x85, 0xff, 0xbb, 0x55, 0x28, 0x26, 0xc3, 0xdd, 0x11, 0x0d, 0x4a, 0xe8, 0x9f, 0xf5, 0x2e, 0xd0, 0xcd, 0x60, 0x18, 0xf9, 0x9d, 0x33, 0x87, 0x98, 0x7b, }; static const unsigned char xdh_wei25519_1324_privkey[] = { 0x98, 0x9a, 0x75, 0xb4, 0x04, 0x51, 0x13, 0x9e, 0xc3, 0x6c, 0xa6, 0xaa, 0x04, 0x37, 0x65, 0xc6, 0x1a, 0x18, 0xbe, 0x32, 0x3a, 0x59, 0x87, 0xfc, 0xb0, 0x25, 0xc2, 0xda, 0xd8, 0xd4, 0xbd, 0x40, }; static const unsigned char xdh_wei25519_1324_sharedsecret[] = { 0x9c, 0xad, 0xc1, 0x4a, 0xc1, 0x53, 0xfa, 0x38, 0x3e, 0xf6, 0x6d, 0x18, 0x33, 0xf5, 0x89, 0x10, 0x0d, 0xff, 0x90, 0x52, 0x32, 0x72, 0xe3, 0x2b, 0x06, 0xe2, 0xc6, 0xf1, 0xf4, 0x42, 0x40, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1324 = { .name = "xdh_wei25519_1324", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1324_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1324_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1324_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 278 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1325 for XDH, tcId is 279 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1325_peerpubkey[] = { 0x1d, 0xf3, 0xdf, 0xda, 0xb7, 0x4f, 0xf3, 0x81, 0x77, 0xda, 0xc2, 0x94, 0xb2, 0xda, 0x2f, 0x49, 0xa3, 0x48, 0xbc, 0x3b, 0x3b, 0xc6, 0xce, 0x93, 0x12, 0xbe, 0xa5, 0xef, 0x3e, 0xcd, 0xd3, 0x0b, }; static const unsigned char xdh_wei25519_1325_privkey[] = { 0x90, 0xc3, 0xcf, 0xed, 0xd9, 0x19, 0xa2, 0xcc, 0xd5, 0x1f, 0xb4, 0x55, 0x64, 0x9e, 0x3a, 0xd2, 0xda, 0x1e, 0xf0, 0xff, 0x61, 0x9b, 0x59, 0xa7, 0xf9, 0xc5, 0x5a, 0x68, 0xa8, 0x21, 0x96, 0x45, }; static const unsigned char xdh_wei25519_1325_sharedsecret[] = { 0xbc, 0xc9, 0x5f, 0xb4, 0x89, 0x0e, 0xd3, 0x11, 0xf3, 0xfb, 0x4f, 0x44, 0xc2, 0xb6, 0x08, 0x66, 0xcd, 0xdd, 0xec, 0x97, 0xdb, 0x82, 0x0a, 0x7f, 0x79, 0xf4, 0x75, 0x33, 0x7e, 0x16, 0x28, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1325 = { .name = "xdh_wei25519_1325", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1325_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1325_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1325_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 279 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1326 for XDH, tcId is 280 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1326_peerpubkey[] = { 0xfc, 0x6b, 0x71, 0x8b, 0xa8, 0xb4, 0x7d, 0x24, 0xb1, 0xcf, 0xd6, 0xb5, 0xd0, 0xdd, 0x8b, 0x20, 0xfd, 0x92, 0x09, 0x60, 0xfa, 0xbc, 0x30, 0x2d, 0xbe, 0x4f, 0x93, 0xbd, 0x2a, 0x06, 0xe9, 0x33, }; static const unsigned char xdh_wei25519_1326_privkey[] = { 0xe8, 0xfe, 0xf5, 0xc9, 0xb6, 0x0f, 0x84, 0x98, 0x4e, 0x88, 0x36, 0xd5, 0x35, 0xac, 0xb3, 0x72, 0x09, 0x6b, 0xa8, 0x15, 0x98, 0x24, 0xa0, 0xb4, 0x9a, 0x17, 0xec, 0xcd, 0xa8, 0x43, 0xbd, 0x41, }; static const unsigned char xdh_wei25519_1326_sharedsecret[] = { 0x06, 0xf1, 0xb4, 0x95, 0xb0, 0x4a, 0x00, 0x10, 0x84, 0x5c, 0x9d, 0x39, 0xb1, 0x3b, 0xf2, 0x78, 0x4a, 0xde, 0x86, 0x0d, 0x96, 0x32, 0xc8, 0x84, 0x76, 0x18, 0xc0, 0xb3, 0x42, 0x97, 0xc2, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1326 = { .name = "xdh_wei25519_1326", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1326_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1326_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1326_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 280 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1327 for XDH, tcId is 281 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1327_peerpubkey[] = { 0xb2, 0x79, 0xb6, 0xc0, 0x65, 0xf9, 0x5c, 0x70, 0x40, 0xf1, 0x48, 0xbc, 0xb4, 0xa3, 0xd3, 0x10, 0xe3, 0x4b, 0xdb, 0x00, 0x59, 0x31, 0xa8, 0x79, 0xbe, 0x46, 0x95, 0x73, 0xde, 0xed, 0xd0, 0x41, }; static const unsigned char xdh_wei25519_1327_privkey[] = { 0xc0, 0xe0, 0x5b, 0xde, 0x77, 0x27, 0xdb, 0x4e, 0x35, 0x2b, 0x5e, 0x7f, 0x03, 0x53, 0x27, 0xb4, 0xd8, 0x6a, 0x42, 0xd5, 0x13, 0xca, 0x11, 0x6e, 0x22, 0xd6, 0x4a, 0x4e, 0xde, 0x56, 0x43, 0x4a, }; static const unsigned char xdh_wei25519_1327_sharedsecret[] = { 0xcc, 0xe7, 0xbb, 0x64, 0x4d, 0xf9, 0x45, 0x01, 0x42, 0x1d, 0xb4, 0x9d, 0x15, 0xe8, 0x21, 0xc7, 0xb0, 0xaa, 0xab, 0xec, 0xdf, 0x88, 0x37, 0xab, 0x98, 0x9b, 0x1f, 0x23, 0xba, 0xc0, 0x8f, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1327 = { .name = "xdh_wei25519_1327", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1327_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1327_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1327_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 281 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1328 for XDH, tcId is 282 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1328_peerpubkey[] = { 0x98, 0xe2, 0xcd, 0x4c, 0x10, 0x55, 0x4e, 0x41, 0xb0, 0xa3, 0xe4, 0x10, 0x82, 0xc8, 0xb6, 0xb6, 0x1b, 0x55, 0x44, 0x7d, 0x26, 0xc0, 0xaa, 0x97, 0xf9, 0xa0, 0x6b, 0xae, 0xeb, 0x54, 0xb5, 0x5b, }; static const unsigned char xdh_wei25519_1328_privkey[] = { 0xd8, 0x73, 0x08, 0xbf, 0x75, 0x35, 0x73, 0xf5, 0x96, 0xac, 0x83, 0x30, 0xb2, 0x04, 0x01, 0x4b, 0x21, 0x52, 0xdb, 0xdf, 0xc9, 0x88, 0x1a, 0x0d, 0x99, 0x75, 0x05, 0x85, 0x82, 0xbd, 0xf6, 0x46, }; static const unsigned char xdh_wei25519_1328_sharedsecret[] = { 0x71, 0xfd, 0xd3, 0x40, 0x5c, 0x30, 0x80, 0x57, 0x01, 0xae, 0x4d, 0xfa, 0xd9, 0x8c, 0x49, 0x3a, 0xec, 0xfc, 0xf2, 0xe3, 0xb5, 0x63, 0xe7, 0x06, 0x83, 0x73, 0xc1, 0xb1, 0x91, 0x37, 0xc2, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1328 = { .name = "xdh_wei25519_1328", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1328_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1328_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1328_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 282 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1329 for XDH, tcId is 283 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1329_peerpubkey[] = { 0x87, 0x28, 0x97, 0xf1, 0xbd, 0x18, 0x85, 0xda, 0x08, 0xb9, 0xd0, 0x3e, 0x46, 0x81, 0x10, 0x44, 0xfb, 0xb0, 0x41, 0x86, 0xba, 0x30, 0xc8, 0x06, 0xf3, 0x8b, 0x94, 0xeb, 0xdc, 0x27, 0x18, 0x6a, }; static const unsigned char xdh_wei25519_1329_privkey[] = { 0xd8, 0x00, 0x59, 0xa8, 0xa3, 0x87, 0xe1, 0x6f, 0x6d, 0xed, 0x6e, 0x7e, 0x98, 0x0e, 0x80, 0x6d, 0x1f, 0x78, 0xb4, 0x70, 0xbb, 0x61, 0x10, 0x3d, 0x0c, 0xa7, 0x06, 0x23, 0xcc, 0xee, 0x8b, 0x4f, }; static const unsigned char xdh_wei25519_1329_sharedsecret[] = { 0xbf, 0x28, 0x0a, 0xee, 0xcb, 0x74, 0xab, 0x34, 0xe1, 0x31, 0x0a, 0xa6, 0xfe, 0x8d, 0xc9, 0x72, 0xf9, 0x4d, 0xc4, 0x0c, 0x7f, 0x88, 0xb7, 0x21, 0x37, 0xcc, 0xfe, 0x34, 0xed, 0x34, 0x3c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1329 = { .name = "xdh_wei25519_1329", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1329_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1329_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1329_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 283 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1330 for XDH, tcId is 284 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1330_peerpubkey[] = { 0xc0, 0x8f, 0x72, 0x76, 0x0d, 0x9c, 0xb4, 0xa5, 0x42, 0xaa, 0xd6, 0xe2, 0xaf, 0x77, 0x79, 0x20, 0xc4, 0x45, 0x63, 0xbd, 0x90, 0x35, 0x61, 0x68, 0xc3, 0x60, 0x8c, 0x6b, 0x9a, 0xf2, 0xef, 0x0f, }; static const unsigned char xdh_wei25519_1330_privkey[] = { 0xb0, 0xa4, 0xfe, 0x63, 0x51, 0x51, 0x69, 0xbd, 0x82, 0x63, 0x9b, 0x51, 0x5f, 0xf7, 0xe5, 0xc4, 0xac, 0x85, 0xbb, 0xa0, 0xa5, 0x3b, 0xba, 0xca, 0x80, 0x47, 0x7e, 0xb3, 0xb4, 0x25, 0x0d, 0x44, }; static const unsigned char xdh_wei25519_1330_sharedsecret[] = { 0x72, 0x56, 0x6a, 0x91, 0xcc, 0xd2, 0xbc, 0xf3, 0x8c, 0xf6, 0x39, 0xe4, 0xa5, 0xfc, 0xb2, 0x96, 0xf0, 0xb6, 0x7d, 0xe1, 0x92, 0xc6, 0x09, 0x12, 0x42, 0xa6, 0x2f, 0xae, 0x46, 0x7f, 0xb6, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1330 = { .name = "xdh_wei25519_1330", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1330_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1330_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1330_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 284 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1331 for XDH, tcId is 285 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1331_peerpubkey[] = { 0x4f, 0x03, 0x84, 0x9c, 0x24, 0xd5, 0x84, 0x53, 0x4d, 0x74, 0x30, 0x22, 0x20, 0xcf, 0xdc, 0x90, 0xe1, 0xbc, 0x36, 0x0b, 0xb5, 0xe2, 0x97, 0xc0, 0xfd, 0x0f, 0xd5, 0xf8, 0xd7, 0x99, 0xe4, 0x16, }; static const unsigned char xdh_wei25519_1331_privkey[] = { 0x98, 0x42, 0x56, 0xb1, 0x2e, 0xf1, 0x54, 0xff, 0x6c, 0x2e, 0x1d, 0x03, 0x08, 0x26, 0x16, 0x4c, 0xba, 0x36, 0x14, 0xe3, 0xdf, 0x76, 0x88, 0xd8, 0x2b, 0x59, 0xe1, 0x62, 0x01, 0xc9, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_1331_sharedsecret[] = { 0x24, 0xac, 0xb4, 0xaf, 0xa6, 0x39, 0x19, 0x62, 0x1d, 0xf7, 0x95, 0x20, 0x6c, 0x39, 0x29, 0xb5, 0x99, 0xec, 0x9d, 0x25, 0x36, 0x93, 0x89, 0x5d, 0x51, 0xa0, 0x55, 0x50, 0x72, 0xe8, 0x9a, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1331 = { .name = "xdh_wei25519_1331", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1331_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1331_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1331_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 285 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1332 for XDH, tcId is 286 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1332_peerpubkey[] = { 0x49, 0x59, 0x77, 0x1a, 0x93, 0x1e, 0x24, 0x2d, 0x57, 0x13, 0xd5, 0xcb, 0x76, 0xf3, 0x33, 0x10, 0xc6, 0xa2, 0x83, 0xdf, 0x16, 0x64, 0x56, 0x04, 0x28, 0x95, 0x53, 0x80, 0x9c, 0xda, 0x65, 0x18, }; static const unsigned char xdh_wei25519_1332_privkey[] = { 0x68, 0x47, 0x14, 0x1d, 0x5d, 0x43, 0x77, 0xaf, 0x96, 0xa2, 0xa6, 0x47, 0xc6, 0x42, 0xee, 0x81, 0x60, 0x0f, 0xe4, 0x8d, 0x34, 0x67, 0xe3, 0xa7, 0x0f, 0x3e, 0xe3, 0x12, 0xbb, 0x62, 0x17, 0x42, }; static const unsigned char xdh_wei25519_1332_sharedsecret[] = { 0x5b, 0xa2, 0x11, 0x2a, 0x41, 0xb5, 0xbb, 0x38, 0x1f, 0x20, 0x24, 0x46, 0xfa, 0x9f, 0x23, 0xc5, 0x4d, 0x2d, 0xe1, 0x49, 0xf9, 0xad, 0x23, 0x37, 0x53, 0x41, 0x72, 0x63, 0x84, 0x0e, 0xa4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1332 = { .name = "xdh_wei25519_1332", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1332_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1332_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1332_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 286 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1333 for XDH, tcId is 287 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1333_peerpubkey[] = { 0xf6, 0xfe, 0x69, 0x0c, 0xf5, 0x47, 0x04, 0x96, 0x35, 0xbb, 0x3a, 0x77, 0x85, 0x53, 0x7b, 0x43, 0x79, 0xc9, 0xee, 0x06, 0xb4, 0x61, 0x20, 0x49, 0x3b, 0x8b, 0xdb, 0x15, 0x2e, 0x09, 0xc8, 0x1d, }; static const unsigned char xdh_wei25519_1333_privkey[] = { 0xe8, 0x5f, 0x11, 0x64, 0xe2, 0xab, 0x6f, 0xaf, 0x62, 0x66, 0x7c, 0x74, 0xb0, 0x3c, 0xe5, 0x29, 0xb4, 0x9a, 0x0e, 0x20, 0x41, 0xb1, 0xac, 0x0f, 0xa2, 0x42, 0xe5, 0x22, 0xd2, 0xb7, 0x69, 0x4c, }; static const unsigned char xdh_wei25519_1333_sharedsecret[] = { 0xa8, 0x7c, 0x9f, 0xdf, 0x40, 0xc4, 0x09, 0xb9, 0xed, 0xab, 0x48, 0x1b, 0x2c, 0xc6, 0x96, 0x87, 0xee, 0x1a, 0xb9, 0x2e, 0x34, 0x0c, 0x3d, 0xb0, 0x10, 0x7d, 0x40, 0xb5, 0xde, 0x6e, 0x7a, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1333 = { .name = "xdh_wei25519_1333", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1333_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1333_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1333_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 287 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1334 for XDH, tcId is 288 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1334_peerpubkey[] = { 0xb4, 0x68, 0x68, 0x1a, 0x12, 0x75, 0x85, 0x0c, 0x11, 0xd3, 0x7e, 0xc7, 0x36, 0xaf, 0x93, 0x9a, 0x75, 0xa7, 0x09, 0x85, 0x14, 0xe0, 0x4c, 0xfc, 0x1c, 0x6c, 0xa7, 0x82, 0x39, 0xa8, 0x84, 0x26, }; static const unsigned char xdh_wei25519_1334_privkey[] = { 0x28, 0x1e, 0x1b, 0xbf, 0xa7, 0x11, 0xde, 0x69, 0x92, 0x1a, 0x64, 0xc5, 0xd2, 0x18, 0x3c, 0x33, 0x8d, 0xb5, 0x50, 0x46, 0x06, 0xce, 0x2b, 0x6b, 0x4c, 0xe1, 0xcd, 0xd5, 0x4b, 0x41, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_1334_sharedsecret[] = { 0x3b, 0xe9, 0x87, 0x98, 0xf0, 0x1e, 0x71, 0x63, 0x9f, 0x3c, 0xb8, 0xfd, 0x4a, 0x17, 0xbf, 0x27, 0x3e, 0x10, 0xc6, 0x7f, 0x89, 0x74, 0xdd, 0x98, 0x02, 0xee, 0xd5, 0x9d, 0x84, 0x7d, 0x40, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1334 = { .name = "xdh_wei25519_1334", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1334_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1334_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1334_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 288 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1335 for XDH, tcId is 289 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1335_peerpubkey[] = { 0x2d, 0x71, 0xe8, 0x45, 0x70, 0x99, 0xe3, 0xf4, 0x45, 0xf9, 0xe2, 0xa1, 0x4f, 0x18, 0xb0, 0xf5, 0x91, 0x4b, 0xb3, 0x5f, 0x48, 0x2f, 0x9c, 0x06, 0x9b, 0x64, 0xbf, 0x63, 0x71, 0x0d, 0x42, 0x28, }; static const unsigned char xdh_wei25519_1335_privkey[] = { 0x20, 0xaa, 0xcf, 0x19, 0x02, 0xb3, 0xcd, 0x60, 0x9d, 0x7e, 0xe1, 0x5c, 0xc9, 0x64, 0x53, 0xcc, 0x22, 0xe2, 0x89, 0x9d, 0x7d, 0x17, 0x85, 0x26, 0x80, 0xf2, 0xa7, 0x28, 0xba, 0xc6, 0xdc, 0x4a, }; static const unsigned char xdh_wei25519_1335_sharedsecret[] = { 0x33, 0x8c, 0x99, 0x17, 0xdb, 0xf1, 0x1a, 0x0c, 0xab, 0xe8, 0xad, 0x4a, 0x65, 0x95, 0x92, 0x29, 0xbc, 0x00, 0xf9, 0x9c, 0x21, 0x1e, 0x75, 0x2b, 0x20, 0xb8, 0xb4, 0x9b, 0x87, 0x75, 0x6d, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1335 = { .name = "xdh_wei25519_1335", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1335_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1335_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1335_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 289 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1336 for XDH, tcId is 290 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1336_peerpubkey[] = { 0xfa, 0x8f, 0x24, 0xe9, 0x44, 0xde, 0x5d, 0x00, 0x37, 0x46, 0xd4, 0x63, 0x03, 0x50, 0xc0, 0xf4, 0xf6, 0x17, 0x5a, 0x32, 0x69, 0xc1, 0x91, 0x84, 0x82, 0x41, 0x05, 0x39, 0x8f, 0xbd, 0xd3, 0x29, }; static const unsigned char xdh_wei25519_1336_privkey[] = { 0x00, 0x9e, 0x8e, 0x9f, 0xa9, 0x93, 0x80, 0x4d, 0xce, 0x94, 0xce, 0xcb, 0x96, 0xb1, 0xde, 0x25, 0x68, 0x24, 0x5a, 0x97, 0x05, 0x9e, 0x4d, 0x7a, 0xe1, 0x16, 0xec, 0xdb, 0x1b, 0xad, 0xd1, 0x41, }; static const unsigned char xdh_wei25519_1336_sharedsecret[] = { 0x56, 0xe2, 0xbf, 0xc7, 0xf6, 0xab, 0x7d, 0xa8, 0xfc, 0x73, 0x4a, 0xfc, 0x51, 0x5e, 0x57, 0xd0, 0x79, 0x4d, 0x00, 0x24, 0x34, 0xf9, 0xbc, 0x8e, 0x18, 0xbd, 0x0b, 0x72, 0xc0, 0xdf, 0x3c, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1336 = { .name = "xdh_wei25519_1336", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1336_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1336_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1336_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 290 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1337 for XDH, tcId is 291 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1337_peerpubkey[] = { 0xae, 0x4e, 0x37, 0xef, 0x53, 0xc7, 0x9e, 0x25, 0xe8, 0x27, 0x5a, 0x60, 0xf2, 0xfc, 0x1d, 0xfc, 0x27, 0x7e, 0xbc, 0x5d, 0x3b, 0x88, 0x42, 0x8c, 0x64, 0x32, 0xc3, 0xf9, 0x84, 0x94, 0x21, 0x2c, }; static const unsigned char xdh_wei25519_1337_privkey[] = { 0xf0, 0x15, 0x74, 0x64, 0x3f, 0x23, 0x1f, 0xfa, 0xc0, 0x55, 0xbd, 0x23, 0x5e, 0xe7, 0x4d, 0xd4, 0x16, 0xb9, 0x4c, 0x8e, 0x55, 0xa2, 0xab, 0x2b, 0x4d, 0x13, 0xa8, 0xb7, 0x88, 0xd9, 0x01, 0x48, }; static const unsigned char xdh_wei25519_1337_sharedsecret[] = { 0x17, 0xfa, 0x12, 0x76, 0xd9, 0xfd, 0x50, 0x25, 0x17, 0x27, 0x36, 0x44, 0x9a, 0x1c, 0x0a, 0xe3, 0x35, 0x12, 0xe5, 0x03, 0x70, 0x14, 0xa1, 0x8d, 0xb5, 0x90, 0x3e, 0x47, 0xbb, 0x3b, 0xc9, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1337 = { .name = "xdh_wei25519_1337", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1337_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1337_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1337_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 291 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1338 for XDH, tcId is 292 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1338_peerpubkey[] = { 0x95, 0xe5, 0x6a, 0x83, 0x07, 0x92, 0x47, 0x8f, 0x7c, 0x42, 0x50, 0x40, 0x43, 0xa9, 0xca, 0xb8, 0xe2, 0xee, 0xbf, 0xf5, 0xfd, 0x90, 0x98, 0x37, 0x09, 0xe2, 0x9e, 0x03, 0xc0, 0xa4, 0x1b, 0x64, }; static const unsigned char xdh_wei25519_1338_privkey[] = { 0x38, 0x00, 0xa4, 0x26, 0x59, 0x95, 0x42, 0x81, 0xca, 0x26, 0x6d, 0x7c, 0xf1, 0xea, 0x9d, 0xb6, 0xd7, 0x98, 0x91, 0xa4, 0x06, 0xa7, 0x0f, 0x9e, 0x84, 0xc3, 0x57, 0x0a, 0x6a, 0x12, 0xd2, 0x4e, }; static const unsigned char xdh_wei25519_1338_sharedsecret[] = { 0x16, 0x7a, 0x3b, 0x2f, 0xdc, 0xe9, 0x41, 0x3c, 0x89, 0xee, 0x89, 0x2d, 0xaf, 0x9f, 0x83, 0x9a, 0x2e, 0xea, 0x80, 0xea, 0x80, 0x44, 0x92, 0x40, 0x35, 0xdb, 0x17, 0x24, 0xa5, 0xb0, 0x21, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1338 = { .name = "xdh_wei25519_1338", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1338_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1338_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1338_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 292 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1339 for XDH, tcId is 293 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1339_peerpubkey[] = { 0x5f, 0x16, 0xaa, 0x7c, 0xca, 0xbf, 0x4d, 0xa6, 0xb6, 0x86, 0xbd, 0x28, 0xc7, 0x46, 0x0e, 0x10, 0x6b, 0xb1, 0xb9, 0x7a, 0x82, 0x37, 0x92, 0x52, 0x77, 0x65, 0xc2, 0x9a, 0x9a, 0xd8, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_1339_privkey[] = { 0x70, 0xa8, 0x26, 0xb1, 0x86, 0x96, 0x22, 0x18, 0xdb, 0xaf, 0xca, 0x11, 0x33, 0x19, 0xda, 0xef, 0xb5, 0xdd, 0xf3, 0xcf, 0x14, 0xe1, 0x5f, 0xe3, 0xfa, 0xad, 0xc4, 0xc0, 0xa2, 0xe4, 0x66, 0x48, }; static const unsigned char xdh_wei25519_1339_sharedsecret[] = { 0x30, 0xa4, 0xba, 0x79, 0x3f, 0x2d, 0xff, 0xe1, 0x70, 0x0c, 0x61, 0x42, 0x8b, 0x4d, 0x84, 0xb5, 0xfc, 0xd0, 0xaa, 0x99, 0xa2, 0x3b, 0x90, 0x3f, 0x84, 0xa4, 0x8e, 0xca, 0x5c, 0xc9, 0xfb, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_1339 = { .name = "xdh_wei25519_1339", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1339_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1339_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1339_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 293 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1340 for XDH, tcId is 294 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1340_peerpubkey[] = { 0x47, 0xfb, 0x78, 0x11, 0x18, 0x05, 0xa1, 0x19, 0x82, 0xa3, 0xd6, 0xc5, 0xd8, 0x3e, 0x8e, 0x18, 0x9e, 0x7f, 0xcc, 0x46, 0x2c, 0x9a, 0xbf, 0x80, 0x5d, 0x36, 0x25, 0xbe, 0x7a, 0x6e, 0xac, 0x11, }; static const unsigned char xdh_wei25519_1340_privkey[] = { 0xa8, 0x5a, 0x5e, 0xda, 0x0a, 0x26, 0x95, 0x00, 0xb3, 0xab, 0x0b, 0x58, 0x49, 0x5f, 0xc2, 0x54, 0xc2, 0x69, 0x10, 0x28, 0xac, 0x53, 0x34, 0x94, 0xb5, 0xf8, 0x6d, 0x44, 0xe9, 0xdc, 0x65, 0x4c, }; static const unsigned char xdh_wei25519_1340_sharedsecret[] = { 0x2b, 0xf9, 0xab, 0x75, 0x0b, 0xd5, 0x8f, 0xf6, 0xf8, 0x77, 0xb7, 0x83, 0xed, 0xa4, 0x5a, 0x71, 0xa6, 0x5c, 0xc9, 0xb7, 0xc0, 0x37, 0xfc, 0xfe, 0xf4, 0xcb, 0x5f, 0x4c, 0x88, 0x42, 0xf5, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1340 = { .name = "xdh_wei25519_1340", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1340_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1340_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1340_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 294 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1341 for XDH, tcId is 295 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1341_peerpubkey[] = { 0x03, 0xb8, 0xca, 0x5e, 0xfd, 0x17, 0x77, 0xd6, 0xd6, 0x25, 0xa9, 0x45, 0xdb, 0x52, 0xb8, 0x1f, 0x11, 0x21, 0x4d, 0xaf, 0x01, 0x5d, 0x09, 0xfd, 0xc9, 0xdf, 0x7d, 0x47, 0xb9, 0x85, 0x0e, 0x31, }; static const unsigned char xdh_wei25519_1341_privkey[] = { 0x18, 0x3f, 0x28, 0xec, 0x86, 0x76, 0x24, 0xef, 0x5e, 0xca, 0x48, 0x27, 0xed, 0x07, 0x14, 0xa5, 0x52, 0x5e, 0xf2, 0x1d, 0x5e, 0x35, 0x03, 0x8b, 0x24, 0xd3, 0x07, 0xa3, 0x39, 0x1a, 0x28, 0x46, }; static const unsigned char xdh_wei25519_1341_sharedsecret[] = { 0x35, 0xe9, 0x28, 0x92, 0x34, 0xbd, 0x5e, 0x53, 0x1d, 0xa6, 0x5d, 0x16, 0x1a, 0x06, 0x5a, 0x14, 0xf7, 0x85, 0x07, 0x60, 0x88, 0xd7, 0x41, 0xc9, 0xa2, 0xd8, 0x86, 0xef, 0xd7, 0xd1, 0x79, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1341 = { .name = "xdh_wei25519_1341", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1341_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1341_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1341_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 295 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1342 for XDH, tcId is 296 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1342_peerpubkey[] = { 0x4e, 0xca, 0x5f, 0x87, 0x31, 0xb0, 0xfa, 0x0c, 0x10, 0x6a, 0xcf, 0x57, 0x8b, 0x83, 0xa3, 0x50, 0xfa, 0x81, 0x73, 0xa2, 0x90, 0xf1, 0xeb, 0xa8, 0x03, 0x95, 0x6d, 0xe3, 0x4e, 0xeb, 0x76, 0x71, }; static const unsigned char xdh_wei25519_1342_privkey[] = { 0x88, 0x8c, 0x64, 0x44, 0xff, 0x5e, 0xb4, 0x82, 0xb2, 0xb1, 0x0b, 0xd4, 0xe8, 0xa0, 0x1b, 0xdc, 0xcb, 0x65, 0xf3, 0x29, 0x34, 0xd8, 0x02, 0x61, 0x06, 0xf1, 0x6a, 0x91, 0x34, 0x9f, 0x48, 0x4c, }; static const unsigned char xdh_wei25519_1342_sharedsecret[] = { 0x83, 0x3a, 0xfb, 0x86, 0x70, 0x54, 0xb8, 0xb9, 0xac, 0x70, 0xd6, 0x01, 0x3c, 0x16, 0x3e, 0x8b, 0x76, 0x76, 0xfd, 0x45, 0xae, 0x49, 0xa1, 0x32, 0x5f, 0x3a, 0xcb, 0x75, 0x97, 0x5d, 0x8c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1342 = { .name = "xdh_wei25519_1342", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1342_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1342_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1342_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 296 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1343 for XDH, tcId is 297 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1343_peerpubkey[] = { 0xa5, 0x56, 0x2b, 0x4b, 0xa8, 0x6b, 0x46, 0x4d, 0xff, 0x4c, 0x2c, 0xfa, 0xe8, 0x5b, 0x38, 0x4b, 0xe2, 0x11, 0x77, 0x1e, 0xfe, 0x8a, 0x96, 0x97, 0xe5, 0x1d, 0x84, 0xde, 0x47, 0xf1, 0xeb, 0x14, }; static const unsigned char xdh_wei25519_1343_privkey[] = { 0xc8, 0xa8, 0x5d, 0x14, 0x0b, 0xa1, 0x50, 0xf5, 0xc6, 0xa8, 0xd3, 0xcb, 0x36, 0x3b, 0xcb, 0xcb, 0x75, 0x36, 0x5e, 0x51, 0xc6, 0x16, 0x40, 0xe9, 0x74, 0xa0, 0x72, 0x5b, 0x5e, 0x9d, 0x59, 0x40, }; static const unsigned char xdh_wei25519_1343_sharedsecret[] = { 0x8a, 0x91, 0x47, 0x60, 0x12, 0x95, 0x75, 0xc8, 0xab, 0x32, 0x70, 0xd0, 0x4b, 0x04, 0x65, 0xfc, 0x2f, 0x32, 0x7a, 0xca, 0xf1, 0x67, 0x64, 0x63, 0x11, 0x38, 0x03, 0xbb, 0xb2, 0xec, 0x80, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1343 = { .name = "xdh_wei25519_1343", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1343_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1343_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1343_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 297 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1344 for XDH, tcId is 298 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1344_peerpubkey[] = { 0x88, 0xae, 0x16, 0x31, 0xcd, 0x08, 0xab, 0x54, 0xc2, 0x4a, 0x31, 0xe1, 0xfe, 0xc8, 0x60, 0x39, 0x1f, 0xe2, 0x9b, 0xc5, 0x0d, 0xb2, 0x3e, 0xb6, 0x67, 0x09, 0x36, 0x2e, 0xc4, 0x26, 0x49, 0x29, }; static const unsigned char xdh_wei25519_1344_privkey[] = { 0x90, 0xa3, 0xae, 0xb1, 0x41, 0x7c, 0x3d, 0x61, 0xc1, 0xef, 0xef, 0x1a, 0xc0, 0x52, 0x21, 0x8f, 0xb5, 0x5d, 0x3a, 0x59, 0xc4, 0xfe, 0x93, 0x0b, 0x5a, 0x33, 0xcc, 0x51, 0x83, 0xb4, 0x85, 0x47, }; static const unsigned char xdh_wei25519_1344_sharedsecret[] = { 0xc1, 0x98, 0x8b, 0x6e, 0x1f, 0x02, 0x01, 0x51, 0xec, 0x91, 0x3b, 0x4f, 0xb2, 0x69, 0x5b, 0xae, 0x2c, 0x21, 0xcc, 0x55, 0x3d, 0x0f, 0x91, 0xcf, 0x0c, 0x66, 0x86, 0x23, 0xa3, 0xe5, 0xa4, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1344 = { .name = "xdh_wei25519_1344", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1344_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1344_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1344_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 298 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1345 for XDH, tcId is 299 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1345_peerpubkey[] = { 0xcb, 0xc4, 0xd5, 0x5d, 0x5b, 0xfd, 0xdd, 0x0b, 0xc5, 0xc5, 0xed, 0xbe, 0x3a, 0x04, 0x83, 0x6b, 0x2c, 0x70, 0x1d, 0x25, 0x19, 0x5b, 0x26, 0x22, 0x1c, 0xbe, 0xa1, 0x93, 0x11, 0xe5, 0x5a, 0x3d, }; static const unsigned char xdh_wei25519_1345_privkey[] = { 0xb8, 0x58, 0xd7, 0x41, 0x4b, 0xd9, 0xab, 0x9a, 0x3e, 0xbe, 0xa7, 0x90, 0x64, 0xab, 0x87, 0xbc, 0x05, 0x0e, 0x74, 0x40, 0x7f, 0x4d, 0x47, 0x48, 0xf6, 0x2f, 0xa4, 0xd9, 0xd2, 0x03, 0xb6, 0x40, }; static const unsigned char xdh_wei25519_1345_sharedsecret[] = { 0xbb, 0x24, 0x81, 0x7b, 0xd9, 0xff, 0xf4, 0x23, 0xdc, 0x09, 0x72, 0x90, 0x8e, 0x2c, 0x03, 0xfd, 0xdf, 0x4d, 0xbe, 0x10, 0x00, 0x16, 0xb4, 0x59, 0xf2, 0x8f, 0xe9, 0x59, 0x4a, 0xdb, 0x37, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1345 = { .name = "xdh_wei25519_1345", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1345_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1345_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1345_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 299 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1346 for XDH, tcId is 300 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1346_peerpubkey[] = { 0xd6, 0x6a, 0x2f, 0x9f, 0x75, 0x77, 0xe2, 0xdf, 0x4a, 0x56, 0xcb, 0x51, 0x96, 0x2b, 0x30, 0x56, 0xff, 0x5c, 0xc0, 0x49, 0x4c, 0x60, 0xf3, 0x95, 0x11, 0x78, 0x2e, 0x79, 0x92, 0x3e, 0xdd, 0x41, }; static const unsigned char xdh_wei25519_1346_privkey[] = { 0xf8, 0x25, 0xed, 0xf1, 0xf7, 0x9e, 0xdd, 0xd7, 0x15, 0xa7, 0x2b, 0x3a, 0xc2, 0x67, 0xd6, 0xb2, 0xe9, 0x7e, 0x18, 0xbb, 0x13, 0xbc, 0xaf, 0xda, 0xc5, 0x94, 0x03, 0x70, 0xb8, 0x5b, 0xa6, 0x4b, }; static const unsigned char xdh_wei25519_1346_sharedsecret[] = { 0xb3, 0xb4, 0x51, 0x3f, 0x8a, 0x31, 0x02, 0xe1, 0xae, 0x78, 0x2f, 0xbc, 0x69, 0x88, 0x81, 0x77, 0xf2, 0xc2, 0x4c, 0x56, 0x93, 0x03, 0xa5, 0xd0, 0x1a, 0xb1, 0xc3, 0xc5, 0xe2, 0x85, 0x52, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1346 = { .name = "xdh_wei25519_1346", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1346_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1346_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1346_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 300 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1347 for XDH, tcId is 301 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1347_peerpubkey[] = { 0xde, 0x0f, 0xed, 0x2f, 0xab, 0x6e, 0x01, 0x49, 0x26, 0x75, 0xbc, 0x75, 0xcb, 0xe4, 0x5d, 0x7b, 0x45, 0xb0, 0x30, 0x6c, 0xec, 0x8d, 0xc6, 0x76, 0x11, 0x69, 0x98, 0x11, 0xc9, 0xaa, 0xef, 0x16, }; static const unsigned char xdh_wei25519_1347_privkey[] = { 0xb0, 0xa7, 0x10, 0xb4, 0x70, 0xe3, 0x24, 0xbb, 0x56, 0xa7, 0xd8, 0xff, 0x87, 0x88, 0xd0, 0x5e, 0xb3, 0x27, 0x61, 0x61, 0x29, 0xb8, 0x49, 0x72, 0x48, 0x24, 0x25, 0xea, 0x4a, 0xd4, 0xf3, 0x4b, }; static const unsigned char xdh_wei25519_1347_sharedsecret[] = { 0x47, 0x1b, 0xa9, 0x1a, 0x99, 0x63, 0x4f, 0x9a, 0xcf, 0x34, 0xfd, 0x7f, 0xd5, 0x8f, 0x72, 0x68, 0x2b, 0xe9, 0x7e, 0xe1, 0xc8, 0x21, 0x48, 0x6d, 0x62, 0xba, 0x4e, 0x44, 0x8c, 0xbc, 0x04, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_1347 = { .name = "xdh_wei25519_1347", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1347_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1347_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1347_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 301 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1348 for XDH, tcId is 302 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1348_peerpubkey[] = { 0x64, 0x18, 0xd4, 0x9f, 0xe4, 0x40, 0xa7, 0x55, 0xc9, 0xff, 0x1a, 0x35, 0x82, 0xd3, 0x5d, 0xc9, 0xb4, 0x4c, 0x81, 0x84, 0x98, 0xf1, 0x57, 0x82, 0xc9, 0x52, 0x84, 0xfe, 0x86, 0x8a, 0x91, 0x4c, }; static const unsigned char xdh_wei25519_1348_privkey[] = { 0xb8, 0x98, 0xf0, 0x32, 0x97, 0x94, 0x74, 0x7d, 0x33, 0x26, 0x9a, 0x39, 0x89, 0xb6, 0x7e, 0x43, 0xa7, 0xab, 0x5a, 0x55, 0xfa, 0x12, 0x10, 0xb0, 0xe5, 0xdb, 0xa1, 0x93, 0xf4, 0xfa, 0x09, 0x4e, }; static const unsigned char xdh_wei25519_1348_sharedsecret[] = { 0xcd, 0xb3, 0xca, 0x02, 0xd5, 0xfd, 0xb5, 0x36, 0xdb, 0xc7, 0x39, 0x5b, 0xab, 0x12, 0xbd, 0xcf, 0xd5, 0x5b, 0x1a, 0xe7, 0x71, 0xa4, 0x17, 0x6d, 0xed, 0xb5, 0x5e, 0xb4, 0xd7, 0x55, 0xc7, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1348 = { .name = "xdh_wei25519_1348", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1348_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1348_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1348_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 302 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1349 for XDH, tcId is 303 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1349_peerpubkey[] = { 0xa8, 0x9b, 0xcf, 0xa2, 0x36, 0xbb, 0xcc, 0xf0, 0x7c, 0x43, 0x4b, 0x59, 0xf8, 0x65, 0x5f, 0xb0, 0x85, 0xb6, 0xcb, 0xe5, 0xed, 0x63, 0x76, 0x28, 0x1d, 0xf8, 0x13, 0xaf, 0xba, 0x22, 0xb7, 0x52, }; static const unsigned char xdh_wei25519_1349_privkey[] = { 0xa0, 0x52, 0x8e, 0xd9, 0xa8, 0xec, 0x22, 0xeb, 0xe9, 0xcc, 0x2e, 0x32, 0xfa, 0xfc, 0x3f, 0x46, 0x75, 0x00, 0xa9, 0xa2, 0x2f, 0x53, 0x77, 0x38, 0x2d, 0xf6, 0x60, 0x4e, 0xdc, 0xdf, 0x4f, 0x44, }; static const unsigned char xdh_wei25519_1349_sharedsecret[] = { 0xcd, 0x32, 0x45, 0x40, 0x3f, 0xd9, 0xed, 0xfc, 0xf9, 0x1c, 0x95, 0x81, 0xeb, 0xb2, 0xeb, 0x7c, 0x77, 0xad, 0x68, 0x37, 0xfc, 0xa3, 0x72, 0x47, 0x9e, 0x78, 0xde, 0x9f, 0xaf, 0x60, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1349 = { .name = "xdh_wei25519_1349", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1349_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1349_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1349_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 303 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1350 for XDH, tcId is 304 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1350_peerpubkey[] = { 0xcd, 0xb1, 0xf9, 0x5f, 0x6e, 0xac, 0xc2, 0x4b, 0x6d, 0x02, 0x9c, 0x6e, 0xd9, 0x76, 0x66, 0x6d, 0xc5, 0x17, 0x94, 0xdb, 0x8e, 0x4a, 0xa9, 0x66, 0xba, 0x85, 0x0f, 0xd7, 0xf5, 0x04, 0x89, 0x65, }; static const unsigned char xdh_wei25519_1350_privkey[] = { 0xf0, 0x68, 0x88, 0xbd, 0xe7, 0x5d, 0x68, 0x9d, 0x05, 0x68, 0x74, 0xf6, 0x43, 0x60, 0x00, 0x49, 0x7d, 0x22, 0xd8, 0xad, 0x9b, 0x95, 0xa1, 0xc6, 0x7d, 0xe1, 0xdd, 0xa4, 0xad, 0xa3, 0x16, 0x4d, }; static const unsigned char xdh_wei25519_1350_sharedsecret[] = { 0xab, 0x7c, 0x47, 0xec, 0xb0, 0xc0, 0x16, 0x71, 0x56, 0xf4, 0x4f, 0x66, 0xa5, 0x27, 0x26, 0x4b, 0x95, 0x8f, 0xc9, 0x92, 0xc2, 0x1c, 0xe9, 0x8c, 0xef, 0x3a, 0xe2, 0x14, 0xd6, 0x6b, 0xd8, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1350 = { .name = "xdh_wei25519_1350", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1350_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1350_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1350_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 304 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1351 for XDH, tcId is 305 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1351_peerpubkey[] = { 0x94, 0x91, 0xa8, 0x27, 0x44, 0xf1, 0xcb, 0x61, 0x05, 0xb7, 0x6b, 0x04, 0x42, 0xe5, 0x4e, 0x60, 0x5a, 0xc6, 0x7f, 0x47, 0xa1, 0xb2, 0xb3, 0xb5, 0x52, 0xd4, 0x86, 0xf7, 0x5b, 0xd9, 0x8e, 0x6a, }; static const unsigned char xdh_wei25519_1351_privkey[] = { 0xe0, 0x34, 0xfc, 0xaa, 0x3a, 0xe4, 0x06, 0x03, 0xf9, 0xb2, 0x2a, 0xf1, 0x59, 0xfd, 0x67, 0xef, 0x00, 0x93, 0x80, 0x94, 0x6d, 0xe9, 0x2c, 0xb1, 0xd8, 0x3c, 0xc4, 0x89, 0xe8, 0xb3, 0x50, 0x41, }; static const unsigned char xdh_wei25519_1351_sharedsecret[] = { 0x1b, 0xfa, 0x26, 0x4a, 0x7c, 0x72, 0x29, 0x14, 0x7a, 0x20, 0xdd, 0x02, 0x12, 0x11, 0x89, 0x1e, 0x61, 0xf5, 0xd8, 0xc7, 0x6c, 0xd8, 0x3f, 0x0b, 0xe2, 0x4b, 0xc7, 0x0e, 0x46, 0x6a, 0x81, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1351 = { .name = "xdh_wei25519_1351", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1351_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1351_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1351_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 305 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1352 for XDH, tcId is 306 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1352_peerpubkey[] = { 0x4d, 0x19, 0xe1, 0x56, 0xe0, 0x84, 0xfe, 0x58, 0x2a, 0x0e, 0xb7, 0x9b, 0x2f, 0x12, 0xb6, 0x1d, 0x0b, 0x03, 0xf3, 0xf2, 0x29, 0x22, 0x7e, 0x79, 0x8a, 0x93, 0x3e, 0xea, 0x5a, 0x1b, 0x61, 0x29, }; static const unsigned char xdh_wei25519_1352_privkey[] = { 0x70, 0x2a, 0x74, 0x48, 0xc0, 0xed, 0x58, 0xe1, 0xf4, 0xe0, 0xe3, 0x32, 0xd0, 0x96, 0xa3, 0x63, 0x60, 0xbe, 0xca, 0x2f, 0x69, 0x55, 0xc8, 0x15, 0xbc, 0x12, 0x0b, 0x3a, 0x69, 0x1d, 0x77, 0x42, }; static const unsigned char xdh_wei25519_1352_sharedsecret[] = { 0xc4, 0x60, 0x57, 0xfc, 0xf6, 0x30, 0x88, 0xb3, 0xa8, 0x0e, 0x0b, 0xe5, 0xce, 0x24, 0xc8, 0x02, 0x6d, 0xfa, 0xdd, 0x34, 0x1b, 0x5d, 0x82, 0x15, 0xb8, 0xaf, 0xcb, 0x2a, 0x5a, 0x02, 0xbb, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1352 = { .name = "xdh_wei25519_1352", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1352_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1352_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1352_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 306 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1353 for XDH, tcId is 307 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1353_peerpubkey[] = { 0xcc, 0x47, 0x29, 0xc4, 0xea, 0xe2, 0x92, 0xe4, 0x31, 0xec, 0x3a, 0x5c, 0xf5, 0x02, 0x0e, 0x19, 0xf9, 0xbe, 0xa5, 0x0e, 0xf3, 0x21, 0x8d, 0x9a, 0x79, 0x00, 0x34, 0x52, 0x6c, 0x3e, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_1353_privkey[] = { 0x50, 0x02, 0x5c, 0xb5, 0x08, 0xad, 0x4f, 0xaa, 0x06, 0xfa, 0xfd, 0x0f, 0x4a, 0x33, 0xb7, 0x47, 0xcc, 0xf1, 0xb3, 0x57, 0x38, 0x85, 0xd3, 0x42, 0x65, 0x00, 0xd5, 0x1b, 0x56, 0x30, 0x01, 0x44, }; static const unsigned char xdh_wei25519_1353_sharedsecret[] = { 0xd4, 0x36, 0x1e, 0x26, 0x12, 0x7a, 0xdf, 0xbe, 0x37, 0xc2, 0xed, 0x8f, 0x42, 0xcc, 0xe4, 0xeb, 0xab, 0x8a, 0xb7, 0x4e, 0xd9, 0xe7, 0x4f, 0x14, 0xc3, 0x43, 0x5d, 0x61, 0x2c, 0x1a, 0x99, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1353 = { .name = "xdh_wei25519_1353", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1353_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1353_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1353_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 307 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1354 for XDH, tcId is 308 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1354_peerpubkey[] = { 0x4a, 0x47, 0x42, 0x49, 0xaf, 0x8f, 0x77, 0x1f, 0x0c, 0xfb, 0x11, 0x16, 0xf2, 0x4f, 0xda, 0x4c, 0x42, 0xf4, 0x13, 0x6d, 0x2a, 0xfb, 0x76, 0x6d, 0x1b, 0x29, 0x1c, 0x73, 0xc6, 0x66, 0x8d, 0x5a, }; static const unsigned char xdh_wei25519_1354_privkey[] = { 0x70, 0x82, 0xfc, 0x53, 0x29, 0x9a, 0x4d, 0x30, 0xe5, 0xd0, 0xc3, 0x83, 0xc0, 0x35, 0x93, 0x5b, 0x1e, 0xee, 0xbd, 0x94, 0x08, 0xfe, 0x4d, 0x04, 0xb9, 0x3e, 0xec, 0x24, 0xbe, 0x52, 0xeb, 0x47, }; static const unsigned char xdh_wei25519_1354_sharedsecret[] = { 0x80, 0xdf, 0xae, 0x7a, 0x28, 0xbb, 0x13, 0xd9, 0xe5, 0x1f, 0xf1, 0x99, 0x26, 0x7c, 0xec, 0x2a, 0x19, 0xdf, 0xc8, 0xb6, 0xf4, 0x97, 0x4e, 0x34, 0x46, 0xb2, 0xf6, 0x2f, 0xe9, 0xb6, 0x24, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1354 = { .name = "xdh_wei25519_1354", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1354_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1354_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1354_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 308 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1355 for XDH, tcId is 309 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1355_peerpubkey[] = { 0x0f, 0x2a, 0x5c, 0xbb, 0xe5, 0x03, 0x13, 0x95, 0x31, 0xac, 0x05, 0x29, 0x18, 0x3d, 0xa8, 0xe6, 0x24, 0xd2, 0x52, 0x86, 0xf6, 0xe3, 0x5d, 0x14, 0x07, 0xab, 0x1f, 0x4d, 0x76, 0xeb, 0xc2, 0x60, }; static const unsigned char xdh_wei25519_1355_privkey[] = { 0x98, 0xff, 0x7e, 0x71, 0x1d, 0x65, 0xcc, 0x7f, 0xd9, 0xd0, 0xac, 0x12, 0xdf, 0xe8, 0xb8, 0x94, 0xe0, 0xa9, 0x36, 0x02, 0xca, 0x9e, 0x75, 0xbf, 0x0e, 0xab, 0xbf, 0x0b, 0xfe, 0x67, 0x01, 0x48, }; static const unsigned char xdh_wei25519_1355_sharedsecret[] = { 0x7a, 0x5c, 0x37, 0x30, 0x65, 0xe3, 0x39, 0xb2, 0x6e, 0xe5, 0x37, 0xcf, 0xf1, 0xcf, 0x45, 0x97, 0xcf, 0xcb, 0x4b, 0xf2, 0xdc, 0x7c, 0x4b, 0xcf, 0xec, 0x98, 0x84, 0x44, 0x32, 0x81, 0xc2, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1355 = { .name = "xdh_wei25519_1355", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1355_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1355_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1355_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 309 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1356 for XDH, tcId is 310 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1356_peerpubkey[] = { 0x2f, 0xe1, 0x1d, 0x72, 0x3d, 0xba, 0x63, 0x55, 0x9e, 0x1b, 0x96, 0x14, 0x78, 0x93, 0xcb, 0x7e, 0xc8, 0x62, 0x71, 0x18, 0x06, 0x31, 0x6d, 0xaa, 0x86, 0xcd, 0x4d, 0xa7, 0x69, 0xd4, 0xb2, 0x2d, }; static const unsigned char xdh_wei25519_1356_privkey[] = { 0xb0, 0x80, 0xf4, 0xac, 0x1e, 0x75, 0x8b, 0xbf, 0xbf, 0xa8, 0x88, 0xa7, 0x8c, 0xb8, 0xd6, 0x24, 0xd9, 0x7b, 0x86, 0x88, 0x00, 0x2b, 0x20, 0x17, 0xe3, 0x5f, 0x52, 0xf3, 0xd7, 0xc7, 0x96, 0x49, }; static const unsigned char xdh_wei25519_1356_sharedsecret[] = { 0xc5, 0xed, 0xcc, 0x5d, 0x44, 0x70, 0x71, 0xc0, 0x8d, 0xfa, 0x82, 0x81, 0x41, 0x4a, 0xe6, 0xa0, 0x2d, 0xe7, 0x53, 0xe2, 0xf7, 0xbb, 0x80, 0xaf, 0x5f, 0x62, 0x53, 0xe5, 0x6d, 0xb4, 0x34, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1356 = { .name = "xdh_wei25519_1356", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1356_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1356_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1356_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 310 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1357 for XDH, tcId is 311 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1357_peerpubkey[] = { 0x98, 0xe1, 0x21, 0x1d, 0xcf, 0x66, 0x51, 0xfa, 0x9f, 0x2d, 0x00, 0xeb, 0x08, 0x3a, 0xe5, 0x85, 0x58, 0x69, 0xa2, 0xa5, 0x3e, 0x83, 0x5f, 0x2e, 0x03, 0xb3, 0x0c, 0x0a, 0x19, 0xba, 0x80, 0x51, }; static const unsigned char xdh_wei25519_1357_privkey[] = { 0xe8, 0x15, 0xbf, 0x9a, 0x96, 0x7e, 0x12, 0x08, 0xaf, 0x8e, 0x74, 0xce, 0x9a, 0xf6, 0xd1, 0x13, 0xda, 0xb1, 0x7c, 0x01, 0xc9, 0x0f, 0x1a, 0xe2, 0xbc, 0x25, 0xe3, 0xe2, 0xf9, 0xe3, 0xa4, 0x4a, }; static const unsigned char xdh_wei25519_1357_sharedsecret[] = { 0x26, 0x3a, 0x38, 0xfe, 0x53, 0x8b, 0x50, 0xe8, 0xe9, 0x88, 0xbf, 0x07, 0xae, 0x86, 0xf3, 0x3d, 0x49, 0x88, 0x6b, 0x14, 0xc7, 0x14, 0x3e, 0xfd, 0x1d, 0x20, 0x25, 0xc8, 0x40, 0xe3, 0x6a, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1357 = { .name = "xdh_wei25519_1357", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1357_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1357_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1357_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 311 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1358 for XDH, tcId is 312 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1358_peerpubkey[] = { 0x2f, 0x1b, 0x93, 0x8b, 0x81, 0xa4, 0xc9, 0x0e, 0x12, 0x51, 0x13, 0x5a, 0xd7, 0xfa, 0xbe, 0x83, 0x5f, 0x6a, 0x8b, 0xc5, 0xe2, 0x2d, 0x4b, 0x2a, 0xb1, 0x19, 0xf6, 0xf6, 0x77, 0x87, 0x76, 0x77, }; static const unsigned char xdh_wei25519_1358_privkey[] = { 0x40, 0x51, 0xb0, 0x1c, 0xdf, 0x90, 0xaf, 0x38, 0xf0, 0xa9, 0x6f, 0xfb, 0x83, 0xf8, 0xd4, 0x13, 0x3a, 0xbe, 0x4f, 0xb0, 0x35, 0xb6, 0xfe, 0x6f, 0x65, 0x27, 0x64, 0x47, 0xca, 0xa7, 0x31, 0x4f, }; static const unsigned char xdh_wei25519_1358_sharedsecret[] = { 0x34, 0x0a, 0xcf, 0x28, 0x01, 0xde, 0x71, 0xc1, 0x8f, 0x4c, 0x79, 0xcf, 0xea, 0x37, 0x2b, 0xc3, 0x54, 0xe4, 0xc8, 0xa5, 0xeb, 0x5c, 0x2c, 0xce, 0x8b, 0x45, 0xd8, 0x85, 0xdf, 0x16, 0x2f, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_1358 = { .name = "xdh_wei25519_1358", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1358_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1358_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1358_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 312 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1359 for XDH, tcId is 313 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1359_peerpubkey[] = { 0x34, 0x0b, 0x9f, 0x61, 0x35, 0x50, 0xd1, 0x4e, 0x3c, 0x62, 0x56, 0xca, 0xf0, 0x29, 0xb3, 0x1c, 0xad, 0x3f, 0xe6, 0xdb, 0x58, 0x82, 0x94, 0xe2, 0xd3, 0xaf, 0x37, 0x60, 0x5a, 0x68, 0xd8, 0x37, }; static const unsigned char xdh_wei25519_1359_privkey[] = { 0x98, 0xc0, 0x92, 0x36, 0x31, 0x84, 0xe5, 0x8a, 0xd6, 0xce, 0x51, 0x0b, 0xd3, 0x2b, 0x30, 0x9c, 0x9d, 0x5a, 0x46, 0xf8, 0xd9, 0xee, 0x6f, 0x64, 0xa6, 0x9d, 0x81, 0x80, 0xbb, 0xc6, 0xcb, 0x45, }; static const unsigned char xdh_wei25519_1359_sharedsecret[] = { 0x9e, 0xfe, 0x5c, 0xd7, 0x11, 0x02, 0xd8, 0x99, 0xa3, 0x33, 0xa4, 0x5e, 0xa6, 0xd2, 0xc0, 0x89, 0x60, 0x4b, 0x92, 0x6d, 0xb8, 0xc2, 0x64, 0x5c, 0xe5, 0xff, 0x21, 0x49, 0x2f, 0x27, 0xa3, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1359 = { .name = "xdh_wei25519_1359", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1359_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1359_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1359_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 313 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1360 for XDH, tcId is 314 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1360_peerpubkey[] = { 0xed, 0xfb, 0xd6, 0xf0, 0x9a, 0xa3, 0x24, 0x35, 0x44, 0x0b, 0x0c, 0xa8, 0xba, 0x43, 0x63, 0x08, 0x31, 0x96, 0x13, 0xf8, 0xf2, 0xd5, 0x01, 0x13, 0x3c, 0x52, 0x6c, 0x3f, 0xf5, 0x5c, 0x7b, 0x3d, }; static const unsigned char xdh_wei25519_1360_privkey[] = { 0x68, 0x6e, 0x51, 0xc0, 0x01, 0x16, 0xd1, 0xc1, 0x91, 0xaa, 0x9d, 0x58, 0x23, 0xb9, 0x6e, 0x59, 0x56, 0x10, 0x2e, 0x8f, 0xe7, 0x5f, 0x5c, 0xf2, 0x37, 0x6d, 0x99, 0x98, 0x9f, 0x6f, 0x43, 0x42, }; static const unsigned char xdh_wei25519_1360_sharedsecret[] = { 0x19, 0x61, 0x82, 0x09, 0x5b, 0xcd, 0x2e, 0xf4, 0x6b, 0x18, 0xf6, 0x4c, 0x63, 0x60, 0x7e, 0x0a, 0xb1, 0x62, 0xa0, 0x86, 0x9e, 0x62, 0x65, 0xac, 0x8a, 0xe3, 0x5e, 0x35, 0x8c, 0x3d, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1360 = { .name = "xdh_wei25519_1360", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1360_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1360_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1360_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 314 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1361 for XDH, tcId is 315 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1361_peerpubkey[] = { 0x9b, 0x05, 0x38, 0xcd, 0x61, 0x8b, 0x0a, 0x4d, 0xe0, 0x9e, 0x45, 0x42, 0x0f, 0x84, 0xd5, 0x4d, 0x74, 0x51, 0x4f, 0xbb, 0x1a, 0x31, 0xc1, 0xa4, 0xaa, 0x1e, 0x93, 0x30, 0x6f, 0x20, 0x72, 0x3f, }; static const unsigned char xdh_wei25519_1361_privkey[] = { 0x20, 0x8a, 0xf2, 0xc9, 0x44, 0x2b, 0x36, 0xb5, 0x21, 0xfc, 0x3a, 0x1e, 0xce, 0xfe, 0x34, 0x2a, 0xac, 0x30, 0x8b, 0xd6, 0xe6, 0x29, 0x6e, 0xe0, 0x91, 0xc1, 0x96, 0xdc, 0x02, 0xe7, 0xae, 0x40, }; static const unsigned char xdh_wei25519_1361_sharedsecret[] = { 0xa3, 0xc6, 0xb7, 0x51, 0x68, 0x21, 0x1e, 0x8e, 0x0a, 0x49, 0xca, 0x81, 0x5b, 0xfe, 0x3f, 0x46, 0x9f, 0x29, 0x86, 0x4d, 0xc8, 0x16, 0x61, 0x52, 0xb4, 0x56, 0xe7, 0x07, 0x4a, 0xfa, 0x9b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1361 = { .name = "xdh_wei25519_1361", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1361_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1361_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1361_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 315 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1362 for XDH, tcId is 316 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1362_peerpubkey[] = { 0xae, 0x8c, 0xf2, 0xfc, 0xdd, 0xe7, 0x10, 0xc2, 0xc1, 0x18, 0x45, 0x24, 0xbc, 0x32, 0x43, 0x08, 0x74, 0xdf, 0xa0, 0x8c, 0x12, 0x5f, 0x61, 0xd6, 0x91, 0x9d, 0xaf, 0x8e, 0x66, 0xdb, 0x41, 0x5a, }; static const unsigned char xdh_wei25519_1362_privkey[] = { 0xc0, 0xd8, 0x61, 0xa6, 0xd5, 0xff, 0x91, 0xf9, 0x1e, 0x3b, 0xd0, 0x59, 0x34, 0x16, 0x1f, 0xf0, 0xab, 0x0f, 0x3c, 0xe7, 0xe4, 0xa2, 0xb5, 0xb4, 0xfc, 0xb3, 0x1a, 0xe3, 0x4b, 0x46, 0x66, 0x4f, }; static const unsigned char xdh_wei25519_1362_sharedsecret[] = { 0xde, 0xaa, 0xe6, 0xc9, 0x95, 0x28, 0x44, 0xa3, 0xa1, 0xd0, 0x16, 0x88, 0xe7, 0x10, 0x5b, 0x0b, 0xbe, 0xad, 0xc1, 0x60, 0x76, 0x3c, 0x20, 0x02, 0xb6, 0xd0, 0xbc, 0xf3, 0x5c, 0x22, 0xd1, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_1362 = { .name = "xdh_wei25519_1362", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1362_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1362_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1362_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 316 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1363 for XDH, tcId is 317 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1363_peerpubkey[] = { 0x2a, 0x59, 0xf4, 0x78, 0x40, 0x2d, 0x28, 0x29, 0xcd, 0x3b, 0x62, 0xe9, 0xf7, 0xcc, 0x01, 0x44, 0x5e, 0x8e, 0x73, 0xa4, 0x2c, 0xb1, 0x1a, 0xf0, 0x0b, 0x6b, 0x9a, 0x9f, 0x0e, 0x44, 0xcb, 0x3b, }; static const unsigned char xdh_wei25519_1363_privkey[] = { 0x70, 0x78, 0x5c, 0xad, 0x16, 0x09, 0x72, 0xb7, 0x11, 0x31, 0x86, 0x59, 0xb4, 0x7b, 0x57, 0x4f, 0x69, 0x41, 0xef, 0x6d, 0xa1, 0xea, 0x06, 0x50, 0x8b, 0x26, 0x50, 0xf5, 0x7e, 0xc9, 0xe5, 0x4a, }; static const unsigned char xdh_wei25519_1363_sharedsecret[] = { 0xc2, 0x04, 0xbd, 0x15, 0xf0, 0x1a, 0x11, 0xa2, 0xef, 0xda, 0xbe, 0x2e, 0x90, 0x2b, 0x7c, 0xd0, 0xaa, 0x07, 0x93, 0x16, 0xf6, 0x0e, 0x91, 0x1b, 0x3e, 0xe5, 0xd4, 0x62, 0x62, 0xe9, 0x86, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1363 = { .name = "xdh_wei25519_1363", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1363_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1363_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1363_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 317 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1364 for XDH, tcId is 318 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1364_peerpubkey[] = { 0x83, 0x6c, 0x8e, 0x45, 0xdd, 0x89, 0x0e, 0x65, 0x8c, 0x33, 0xe6, 0x9b, 0x6f, 0x57, 0x8a, 0x5a, 0x77, 0x4c, 0x48, 0xb4, 0x35, 0xbc, 0x3b, 0x91, 0xac, 0x69, 0x3d, 0xf9, 0x4a, 0x05, 0x58, 0x57, }; static const unsigned char xdh_wei25519_1364_privkey[] = { 0x60, 0xaf, 0xc8, 0xeb, 0x1f, 0x87, 0xdf, 0x4b, 0x55, 0x28, 0x7f, 0x3c, 0x46, 0x98, 0xc5, 0xf8, 0xb9, 0x97, 0xb2, 0x8a, 0x73, 0xc5, 0x73, 0xfc, 0x27, 0x3e, 0x9c, 0x46, 0x7f, 0xb7, 0xe4, 0x4c, }; static const unsigned char xdh_wei25519_1364_sharedsecret[] = { 0xc5, 0x45, 0x74, 0x87, 0xe9, 0x09, 0x32, 0xf5, 0x7b, 0x94, 0xaf, 0x2e, 0x87, 0x50, 0x40, 0x3e, 0x09, 0xc9, 0xac, 0x72, 0x7e, 0x2b, 0xd2, 0x13, 0x59, 0x04, 0x62, 0xb6, 0x93, 0x7b, 0x07, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1364 = { .name = "xdh_wei25519_1364", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1364_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1364_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1364_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 318 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1365 for XDH, tcId is 319 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1365_peerpubkey[] = { 0x59, 0x51, 0x9e, 0xad, 0x79, 0x95, 0xa6, 0xdf, 0x89, 0xbb, 0x54, 0xc8, 0x40, 0xd6, 0x1a, 0x84, 0x81, 0x88, 0x10, 0x98, 0xb8, 0xa4, 0xf8, 0x3c, 0x6a, 0x2f, 0x6b, 0xa8, 0x00, 0x33, 0x82, 0x57, }; static const unsigned char xdh_wei25519_1365_privkey[] = { 0xa8, 0x3c, 0x11, 0xb2, 0x83, 0x41, 0x36, 0xb9, 0xaa, 0xf0, 0x15, 0x2d, 0x90, 0xe7, 0x6e, 0x3c, 0x27, 0x17, 0x76, 0x93, 0xa2, 0x83, 0x4e, 0x8b, 0xed, 0xa0, 0xa3, 0x57, 0x1b, 0xce, 0x69, 0x47, }; static const unsigned char xdh_wei25519_1365_sharedsecret[] = { 0x4e, 0xd6, 0xf8, 0xd6, 0x29, 0x32, 0x54, 0x1c, 0x6b, 0xea, 0x16, 0xe0, 0x38, 0x35, 0xf1, 0xf7, 0x58, 0xa5, 0xc4, 0x17, 0x22, 0xb5, 0xc9, 0x98, 0x9c, 0x9c, 0x7c, 0xc0, 0x8e, 0x34, 0xe3, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1365 = { .name = "xdh_wei25519_1365", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1365_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1365_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1365_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 319 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1366 for XDH, tcId is 320 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1366_peerpubkey[] = { 0x32, 0xf3, 0x4d, 0xa8, 0x4a, 0xb4, 0xbf, 0xca, 0x36, 0x9c, 0x4b, 0x88, 0x46, 0x91, 0xbe, 0xcf, 0x54, 0xbe, 0x7f, 0xbe, 0xd1, 0x64, 0x49, 0xdc, 0x86, 0x96, 0x9d, 0xa7, 0xea, 0x9a, 0xbf, 0x62, }; static const unsigned char xdh_wei25519_1366_privkey[] = { 0xb8, 0x0d, 0x87, 0x95, 0x73, 0x58, 0x06, 0x57, 0x9e, 0x71, 0x75, 0x98, 0x94, 0x93, 0x9d, 0x75, 0x88, 0x53, 0x59, 0x21, 0x27, 0xef, 0xe8, 0x4f, 0xc8, 0x2e, 0xb7, 0xcd, 0xee, 0x45, 0x01, 0x4f, }; static const unsigned char xdh_wei25519_1366_sharedsecret[] = { 0x52, 0x1a, 0x5b, 0x81, 0x49, 0xa1, 0x32, 0xd1, 0x55, 0xe6, 0xb4, 0xed, 0x11, 0x39, 0x00, 0x50, 0x6c, 0xfc, 0x2f, 0x76, 0xd2, 0xa3, 0xe1, 0x41, 0x96, 0xd6, 0x9e, 0xb8, 0x5d, 0xb3, 0xc9, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1366 = { .name = "xdh_wei25519_1366", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1366_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1366_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1366_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 320 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1367 for XDH, tcId is 321 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1367_peerpubkey[] = { 0x82, 0xae, 0x48, 0xdc, 0xf5, 0x9b, 0xc5, 0xe4, 0x69, 0xf9, 0xa1, 0x1b, 0x18, 0xa3, 0x2d, 0x47, 0x53, 0xac, 0x81, 0x86, 0x92, 0xdf, 0xae, 0x27, 0xd6, 0x75, 0x41, 0x1a, 0x22, 0x72, 0xb3, 0x63, }; static const unsigned char xdh_wei25519_1367_privkey[] = { 0xe0, 0x8f, 0xfa, 0x45, 0xef, 0xbe, 0x1f, 0x96, 0x58, 0x4c, 0x76, 0x25, 0x45, 0x54, 0xad, 0xb9, 0x17, 0x7b, 0x58, 0xed, 0x09, 0x60, 0x9a, 0x6c, 0xe4, 0x99, 0xe5, 0xbd, 0x22, 0xd3, 0x5c, 0x45, }; static const unsigned char xdh_wei25519_1367_sharedsecret[] = { 0xe8, 0x31, 0xd6, 0xce, 0xe9, 0x5c, 0xa1, 0xb4, 0xc9, 0x6b, 0xb8, 0x94, 0x57, 0x56, 0x2f, 0xff, 0x36, 0xcb, 0x4d, 0x08, 0xb8, 0x1d, 0xa8, 0x9b, 0x81, 0x0b, 0x42, 0x5e, 0xcd, 0xba, 0xfd, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_1367 = { .name = "xdh_wei25519_1367", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1367_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1367_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1367_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 321 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1368 for XDH, tcId is 322 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1368_peerpubkey[] = { 0xb3, 0x3b, 0xd3, 0xad, 0x14, 0xb6, 0x68, 0x96, 0xf9, 0x71, 0xcb, 0xdf, 0x27, 0x78, 0x5f, 0xc3, 0xaa, 0x3c, 0xfb, 0x39, 0xad, 0xc6, 0xc2, 0x92, 0x57, 0xd2, 0x2e, 0xa4, 0xdf, 0x8c, 0xbf, 0x63, }; static const unsigned char xdh_wei25519_1368_privkey[] = { 0x68, 0x8e, 0x1b, 0xbb, 0x51, 0x14, 0xf3, 0x4e, 0x85, 0x31, 0xc2, 0x78, 0xb2, 0xd9, 0x71, 0x4b, 0xa0, 0x7c, 0x32, 0xa7, 0xae, 0xa6, 0xe6, 0x27, 0x13, 0x5b, 0xd1, 0xfc, 0x65, 0x23, 0x80, 0x45, }; static const unsigned char xdh_wei25519_1368_sharedsecret[] = { 0x35, 0x0e, 0x3a, 0xb9, 0xd0, 0xdb, 0xff, 0x78, 0xf3, 0xf2, 0x15, 0x74, 0x28, 0xbe, 0xba, 0x18, 0x93, 0x33, 0xbe, 0x27, 0x48, 0x27, 0xc1, 0x0d, 0x59, 0x67, 0x3f, 0x21, 0xc0, 0xc4, 0x8a, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1368 = { .name = "xdh_wei25519_1368", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1368_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1368_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1368_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 322 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1369 for XDH, tcId is 323 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1369_peerpubkey[] = { 0x18, 0xe5, 0x8d, 0xf6, 0xbf, 0xbe, 0x18, 0x4b, 0x0e, 0x3c, 0x7c, 0x4b, 0xf2, 0xa0, 0x51, 0xed, 0x05, 0x5b, 0x79, 0x35, 0x01, 0xc0, 0xd4, 0xfc, 0x47, 0xbc, 0x8a, 0x95, 0xc4, 0xde, 0xec, 0x7c, }; static const unsigned char xdh_wei25519_1369_privkey[] = { 0x80, 0x36, 0xa4, 0xe2, 0xe9, 0x3e, 0x9e, 0xd8, 0x2d, 0x99, 0xd7, 0x1a, 0x52, 0x2a, 0xac, 0x92, 0x89, 0xbd, 0x99, 0x05, 0xfe, 0x41, 0xd0, 0x1d, 0x08, 0xa4, 0x99, 0x37, 0x6a, 0x25, 0x84, 0x42, }; static const unsigned char xdh_wei25519_1369_sharedsecret[] = { 0xad, 0xe7, 0x1d, 0x64, 0x60, 0x28, 0x7f, 0xe8, 0x08, 0xe9, 0x47, 0x56, 0x0e, 0x67, 0xa9, 0xd6, 0xff, 0x2f, 0x96, 0xea, 0xa1, 0x35, 0x5d, 0x2e, 0x9f, 0xbb, 0xe5, 0x49, 0xe8, 0x83, 0x38, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1369 = { .name = "xdh_wei25519_1369", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1369_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1369_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1369_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 323 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1370 for XDH, tcId is 324 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1370_peerpubkey[] = { 0x77, 0x2e, 0x31, 0xe7, 0x76, 0xe8, 0xd4, 0xf2, 0x3b, 0x7a, 0xf2, 0x03, 0x7a, 0xf2, 0x8a, 0x37, 0xe6, 0x8f, 0x61, 0xe7, 0x40, 0xb3, 0x90, 0x4f, 0x4e, 0xc4, 0xc9, 0x01, 0x57, 0xbe, 0x14, 0x78, }; static const unsigned char xdh_wei25519_1370_privkey[] = { 0x90, 0x1b, 0x20, 0xf0, 0xcd, 0xa7, 0x40, 0x76, 0xc3, 0xd4, 0xbf, 0x4e, 0x02, 0x65, 0x3c, 0xd4, 0x06, 0xed, 0x48, 0x0c, 0x35, 0x51, 0x59, 0xe2, 0x2c, 0xa4, 0x4b, 0x98, 0x4f, 0x10, 0x76, 0x4f, }; static const unsigned char xdh_wei25519_1370_sharedsecret[] = { 0x91, 0xa9, 0xbe, 0xc2, 0x8c, 0xf1, 0x8c, 0x70, 0x94, 0xe2, 0xd8, 0x0d, 0x27, 0x64, 0xdf, 0x59, 0xad, 0xa0, 0xcb, 0x19, 0x46, 0xbe, 0x42, 0x28, 0x64, 0xbd, 0x7a, 0xd0, 0xe5, 0x33, 0xb6, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1370 = { .name = "xdh_wei25519_1370", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1370_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1370_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1370_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 324 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1371 for XDH, tcId is 325 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1371_peerpubkey[] = { 0xa8, 0xd5, 0x5d, 0x5c, 0x11, 0x37, 0xe9, 0xbb, 0x62, 0x65, 0x57, 0xf9, 0xd6, 0xee, 0xa8, 0xd3, 0x12, 0x0e, 0x93, 0x64, 0xf8, 0xbc, 0xd9, 0xb6, 0x79, 0x34, 0x26, 0x0b, 0x1a, 0x09, 0x18, 0x01, }; static const unsigned char xdh_wei25519_1371_privkey[] = { 0xd8, 0x3e, 0xb7, 0xaf, 0xfd, 0x1b, 0xcc, 0x1e, 0xc0, 0xb4, 0x82, 0x3c, 0xee, 0x5c, 0xf0, 0xb1, 0x5b, 0x5f, 0x57, 0x08, 0x5a, 0xa2, 0x70, 0x8e, 0xd4, 0x37, 0xa2, 0x92, 0x53, 0x29, 0xb5, 0x50, }; static const unsigned char xdh_wei25519_1371_sharedsecret[] = { 0x6c, 0x1b, 0x8e, 0x24, 0x0e, 0xdf, 0xa5, 0xdb, 0x2a, 0xbb, 0x3d, 0xc1, 0x2b, 0xcf, 0x9e, 0x8a, 0xc9, 0xca, 0x10, 0xdd, 0x35, 0x07, 0x08, 0x37, 0x46, 0xf6, 0xf3, 0x6d, 0xc0, 0x35, 0xd7, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1371 = { .name = "xdh_wei25519_1371", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1371_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1371_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1371_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 325 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1372 for XDH, tcId is 326 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1372_peerpubkey[] = { 0x33, 0xc9, 0x4b, 0xe5, 0x8b, 0x0f, 0x0e, 0x6c, 0xf3, 0x63, 0xe1, 0xb1, 0x2a, 0x2e, 0xbf, 0xb9, 0x30, 0x40, 0x71, 0x5b, 0xe9, 0x15, 0x18, 0xf2, 0x1d, 0xf2, 0x95, 0x3e, 0xea, 0xb5, 0xfb, 0x01, }; static const unsigned char xdh_wei25519_1372_privkey[] = { 0x98, 0x9e, 0xee, 0x31, 0x7b, 0x9c, 0x25, 0x4d, 0xc0, 0x23, 0xf9, 0xe3, 0x5e, 0xff, 0x02, 0x24, 0xbc, 0x2e, 0x0b, 0xc8, 0x71, 0x99, 0x6b, 0x94, 0x6a, 0x96, 0x97, 0x0e, 0x75, 0x06, 0xa8, 0x5e, }; static const unsigned char xdh_wei25519_1372_sharedsecret[] = { 0xd4, 0xc3, 0xb3, 0x46, 0x77, 0x14, 0xf2, 0xd1, 0x05, 0x90, 0x4a, 0x84, 0xcc, 0x7e, 0x81, 0xd7, 0xf2, 0x91, 0x30, 0x4e, 0x90, 0x80, 0x41, 0x68, 0x2d, 0x89, 0x06, 0xa6, 0x83, 0xc1, 0x21, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1372 = { .name = "xdh_wei25519_1372", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1372_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1372_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1372_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 326 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1373 for XDH, tcId is 327 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1373_peerpubkey[] = { 0xa2, 0x18, 0xae, 0x96, 0x24, 0xb0, 0x7c, 0xe0, 0x51, 0x78, 0xb9, 0xd0, 0xcc, 0x1b, 0x71, 0xde, 0xe2, 0x1f, 0x27, 0x85, 0x2a, 0x2c, 0xeb, 0x18, 0x61, 0x0b, 0x40, 0x52, 0xb2, 0x44, 0xf0, 0x0f, }; static const unsigned char xdh_wei25519_1373_privkey[] = { 0xb8, 0x35, 0x54, 0x55, 0xd3, 0x58, 0xf2, 0xdd, 0x7c, 0x57, 0x07, 0xb2, 0xc6, 0x97, 0x3c, 0x9c, 0x27, 0xb9, 0x9e, 0x7d, 0x8a, 0xc1, 0x65, 0x0c, 0x79, 0x1e, 0x5f, 0xdb, 0xcb, 0xea, 0x49, 0x57, }; static const unsigned char xdh_wei25519_1373_sharedsecret[] = { 0x1e, 0xbe, 0x6c, 0xa7, 0x11, 0xa6, 0x49, 0xae, 0x48, 0x7b, 0x33, 0x27, 0x47, 0xe3, 0xdc, 0x03, 0x06, 0x34, 0x05, 0x60, 0xca, 0xb6, 0xbc, 0x60, 0x29, 0xe4, 0x4f, 0x6a, 0x7e, 0x0e, 0xe4, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1373 = { .name = "xdh_wei25519_1373", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1373_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1373_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1373_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 327 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1374 for XDH, tcId is 328 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1374_peerpubkey[] = { 0xd7, 0x06, 0x7f, 0xae, 0xaf, 0xd3, 0xe9, 0x66, 0xe5, 0x75, 0x25, 0xf9, 0x30, 0xb3, 0x31, 0x7c, 0x9e, 0x8b, 0x9c, 0x9a, 0x9a, 0xe9, 0x46, 0xe7, 0x6c, 0x1e, 0x46, 0x02, 0xa5, 0x9a, 0x7e, 0x33, }; static const unsigned char xdh_wei25519_1374_privkey[] = { 0x80, 0x65, 0x56, 0x7e, 0xf0, 0x82, 0xb1, 0x6c, 0x20, 0x85, 0x34, 0x87, 0xf5, 0x48, 0x93, 0x01, 0x2b, 0xa4, 0x76, 0x22, 0x24, 0xe5, 0xc5, 0x9f, 0x25, 0x0d, 0xfb, 0xf8, 0x25, 0x81, 0xe8, 0x5a, }; static const unsigned char xdh_wei25519_1374_sharedsecret[] = { 0x03, 0xe7, 0xa7, 0x77, 0xe6, 0x48, 0xbd, 0xc6, 0x12, 0x18, 0x9f, 0x3c, 0xd4, 0x2d, 0x34, 0xe3, 0x57, 0x36, 0xd3, 0xe5, 0x2e, 0x6e, 0xdc, 0x8a, 0xc8, 0x73, 0xa5, 0x8e, 0x24, 0x4a, 0x60, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1374 = { .name = "xdh_wei25519_1374", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1374_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1374_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1374_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 328 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1375 for XDH, tcId is 329 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1375_peerpubkey[] = { 0x8d, 0xf9, 0x68, 0x2c, 0xbe, 0x88, 0x02, 0x47, 0x8a, 0x85, 0x31, 0x37, 0x7e, 0x75, 0x2c, 0xdd, 0xe5, 0x47, 0x38, 0xd5, 0x28, 0xd6, 0x39, 0xbe, 0xa9, 0xea, 0xf4, 0x77, 0x02, 0xf8, 0xbf, 0x3b, }; static const unsigned char xdh_wei25519_1375_privkey[] = { 0x00, 0xb5, 0x14, 0x48, 0x13, 0x9a, 0x61, 0xfe, 0x6c, 0x5f, 0xbf, 0x93, 0x95, 0x87, 0x7d, 0x53, 0xd8, 0x20, 0xef, 0x59, 0xda, 0x3b, 0xe8, 0x56, 0x45, 0x8b, 0x5e, 0xb9, 0x09, 0x85, 0xba, 0x53, }; static const unsigned char xdh_wei25519_1375_sharedsecret[] = { 0x30, 0x8e, 0xf9, 0x9d, 0xae, 0x10, 0x64, 0xa4, 0x44, 0xfa, 0x90, 0x77, 0x5b, 0x5d, 0xd5, 0xb1, 0x95, 0x2d, 0x72, 0x24, 0xa0, 0xe5, 0xae, 0x03, 0x1d, 0xf4, 0x32, 0x64, 0x0f, 0x41, 0x62, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1375 = { .name = "xdh_wei25519_1375", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1375_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1375_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1375_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 329 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1376 for XDH, tcId is 330 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1376_peerpubkey[] = { 0x7d, 0x92, 0x70, 0x68, 0x68, 0xaa, 0x09, 0x53, 0x86, 0x38, 0xd6, 0x33, 0xc2, 0x55, 0xf3, 0x33, 0xb9, 0xda, 0x03, 0xbc, 0x74, 0xb4, 0x9b, 0x35, 0x94, 0x1c, 0x57, 0x82, 0x0c, 0xd3, 0xfd, 0x47, }; static const unsigned char xdh_wei25519_1376_privkey[] = { 0xe8, 0xeb, 0x9f, 0x6f, 0x62, 0xf9, 0x3d, 0xbc, 0x32, 0x5b, 0x83, 0x3a, 0xa7, 0x63, 0xa9, 0x0f, 0x13, 0xf0, 0xac, 0xb2, 0xc2, 0xc4, 0xb8, 0xb3, 0x3d, 0xec, 0xd4, 0x71, 0xce, 0x70, 0xc4, 0x5f, }; static const unsigned char xdh_wei25519_1376_sharedsecret[] = { 0xf3, 0x3e, 0x2e, 0x86, 0x44, 0x3a, 0x2c, 0x68, 0x82, 0x3b, 0x72, 0xa2, 0xb5, 0x9d, 0x6a, 0x02, 0x8e, 0x0a, 0x8e, 0x28, 0x3c, 0xfe, 0x29, 0xfe, 0xa4, 0xf7, 0xaa, 0x22, 0xbd, 0x1a, 0xfe, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1376 = { .name = "xdh_wei25519_1376", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1376_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1376_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1376_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 330 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1377 for XDH, tcId is 331 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1377_peerpubkey[] = { 0xdf, 0xb1, 0xff, 0xc1, 0x76, 0xaf, 0xf8, 0x4d, 0xb3, 0x01, 0x82, 0xd2, 0x37, 0x8f, 0x83, 0x72, 0x8f, 0x83, 0xdd, 0x1b, 0x33, 0xd7, 0x98, 0x56, 0xf3, 0xda, 0x54, 0x59, 0xcf, 0x9d, 0xf9, 0x07, }; static const unsigned char xdh_wei25519_1377_privkey[] = { 0x68, 0xa1, 0xa7, 0xcc, 0xc5, 0x0b, 0xab, 0x4b, 0x01, 0xe5, 0x5e, 0x18, 0xcb, 0xd4, 0x64, 0xaf, 0xf4, 0x31, 0x31, 0xfb, 0x07, 0x41, 0xe6, 0x8d, 0x53, 0xcd, 0xeb, 0xfc, 0x54, 0xf3, 0x30, 0x51, }; static const unsigned char xdh_wei25519_1377_sharedsecret[] = { 0x7b, 0x53, 0x5f, 0xc3, 0x1c, 0x6c, 0x2a, 0x38, 0x03, 0xd8, 0xbd, 0x45, 0x41, 0x0a, 0x17, 0x81, 0xbd, 0x90, 0xa0, 0x92, 0x05, 0xda, 0x28, 0xc9, 0xdf, 0x12, 0x0d, 0xf2, 0x3a, 0x9f, 0xa3, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1377 = { .name = "xdh_wei25519_1377", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1377_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1377_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1377_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 331 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1378 for XDH, tcId is 332 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1378_peerpubkey[] = { 0x12, 0xe8, 0x1e, 0x83, 0x8b, 0x21, 0xea, 0xc9, 0x6d, 0xc1, 0x30, 0x43, 0x25, 0x71, 0x21, 0x6d, 0x7a, 0x9b, 0x4a, 0x81, 0x7f, 0x19, 0x38, 0x72, 0x1d, 0x22, 0x67, 0xdd, 0x15, 0x0e, 0xbf, 0x20, }; static const unsigned char xdh_wei25519_1378_privkey[] = { 0xe0, 0x75, 0xbc, 0xfc, 0x16, 0x5a, 0x47, 0x1b, 0x2f, 0x76, 0xc3, 0x00, 0x3f, 0xb0, 0x17, 0x2c, 0x82, 0xf7, 0x07, 0x13, 0x7d, 0xe2, 0xfa, 0x70, 0x82, 0xe4, 0x3a, 0x87, 0xa2, 0x55, 0x93, 0x5c, }; static const unsigned char xdh_wei25519_1378_sharedsecret[] = { 0xca, 0x23, 0xa7, 0x81, 0xda, 0x09, 0x11, 0xe4, 0x11, 0x5a, 0x29, 0xa9, 0xf5, 0x64, 0x47, 0x15, 0x7c, 0x23, 0xbe, 0xe1, 0x87, 0xb0, 0xc1, 0x73, 0x69, 0xc4, 0xf7, 0x73, 0x0d, 0x78, 0x17, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_1378 = { .name = "xdh_wei25519_1378", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1378_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1378_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1378_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 332 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1379 for XDH, tcId is 333 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1379_peerpubkey[] = { 0x83, 0x2a, 0x46, 0xae, 0xc0, 0x22, 0x40, 0xd7, 0x16, 0xfe, 0x22, 0xde, 0xa9, 0x4a, 0xd5, 0x66, 0xa3, 0xfa, 0xfb, 0xee, 0xdc, 0xce, 0x35, 0xc8, 0x3e, 0x41, 0xe5, 0x80, 0x76, 0xc9, 0x97, 0x49, }; static const unsigned char xdh_wei25519_1379_privkey[] = { 0xc0, 0xe1, 0x96, 0x34, 0xdb, 0xf6, 0x46, 0x0e, 0x14, 0x86, 0x93, 0x0c, 0x46, 0xe8, 0x55, 0x6b, 0x3c, 0x16, 0xd6, 0xde, 0x95, 0x99, 0x04, 0x60, 0x05, 0x49, 0xbb, 0x3e, 0x08, 0x60, 0x34, 0x55, }; static const unsigned char xdh_wei25519_1379_sharedsecret[] = { 0xcd, 0x06, 0x86, 0xb3, 0x2e, 0xa4, 0xcd, 0xdb, 0x8e, 0x13, 0xff, 0x20, 0xa7, 0x8d, 0x38, 0x07, 0x49, 0xa5, 0xd4, 0xf6, 0xa3, 0xdc, 0x55, 0xd7, 0x2f, 0x48, 0x13, 0xd9, 0x49, 0xa0, 0xea, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1379 = { .name = "xdh_wei25519_1379", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1379_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1379_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1379_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 333 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1380 for XDH, tcId is 334 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1380_peerpubkey[] = { 0x8c, 0x80, 0x33, 0x43, 0x2b, 0xcc, 0x12, 0xd4, 0x79, 0xf6, 0x7d, 0x6d, 0x87, 0x6b, 0x1c, 0x8e, 0x89, 0xf1, 0x6a, 0x23, 0x4b, 0x9b, 0x09, 0x33, 0x22, 0xef, 0xfa, 0x9d, 0xee, 0x94, 0x55, 0x4d, }; static const unsigned char xdh_wei25519_1380_privkey[] = { 0xb8, 0x4c, 0xaa, 0x18, 0xac, 0xc3, 0xdb, 0x37, 0x22, 0x5d, 0x32, 0xca, 0xb4, 0xf6, 0x0e, 0x6f, 0xba, 0x4a, 0xca, 0xb1, 0x27, 0x7e, 0x20, 0x42, 0x5d, 0x30, 0xf9, 0x4c, 0xab, 0x2e, 0x2c, 0x55, }; static const unsigned char xdh_wei25519_1380_sharedsecret[] = { 0xa9, 0x50, 0xaa, 0x57, 0xbb, 0x2b, 0xeb, 0x9e, 0xd5, 0xd3, 0x22, 0x8c, 0x7e, 0xf4, 0x48, 0xda, 0xb6, 0x95, 0x52, 0xf3, 0xd3, 0xb1, 0xe4, 0x66, 0xac, 0xcf, 0x41, 0xbf, 0xb6, 0xd5, 0xb8, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_1380 = { .name = "xdh_wei25519_1380", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1380_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1380_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1380_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 334 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1381 for XDH, tcId is 335 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1381_peerpubkey[] = { 0x6d, 0xf7, 0x99, 0xbb, 0xa6, 0xcd, 0xf5, 0xf4, 0x6a, 0x57, 0xab, 0x22, 0x7f, 0x93, 0xfb, 0xa4, 0x91, 0xda, 0xd2, 0x96, 0xa2, 0xfd, 0xb7, 0xe4, 0x91, 0x92, 0x1d, 0x61, 0x0c, 0xce, 0x8f, 0x5e, }; static const unsigned char xdh_wei25519_1381_privkey[] = { 0x28, 0x96, 0x81, 0x8c, 0xdd, 0xf5, 0x72, 0x52, 0x19, 0x43, 0xe9, 0xf0, 0xc5, 0xe8, 0x45, 0xf5, 0x30, 0xb7, 0x40, 0x42, 0x75, 0x88, 0xa0, 0xf6, 0xde, 0x25, 0x04, 0xbd, 0x5b, 0xf4, 0x0c, 0x53, }; static const unsigned char xdh_wei25519_1381_sharedsecret[] = { 0x54, 0xf5, 0xae, 0x57, 0xe6, 0x76, 0xd0, 0x8c, 0x8f, 0x8a, 0x3c, 0xf8, 0x91, 0xe3, 0x6d, 0xda, 0xab, 0x75, 0x10, 0x93, 0xf9, 0x2f, 0x40, 0x90, 0x60, 0xc5, 0x7e, 0x74, 0x59, 0x41, 0x70, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1381 = { .name = "xdh_wei25519_1381", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1381_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1381_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1381_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 335 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1382 for XDH, tcId is 336 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1382_peerpubkey[] = { 0x0c, 0x80, 0x90, 0xe1, 0xcf, 0xe7, 0xf7, 0x61, 0xcf, 0xdf, 0x08, 0xd9, 0x44, 0xd4, 0xae, 0xb7, 0xa5, 0x09, 0xa0, 0x7a, 0x61, 0x01, 0x64, 0x5b, 0x9a, 0x4c, 0x7c, 0x9e, 0x9c, 0x3d, 0x46, 0x09, }; static const unsigned char xdh_wei25519_1382_privkey[] = { 0xa0, 0x1f, 0x0c, 0xad, 0x98, 0xcf, 0x29, 0x05, 0xb8, 0x12, 0xd3, 0x53, 0x05, 0x31, 0xbb, 0x3a, 0xc8, 0x99, 0x39, 0x1a, 0xbd, 0x1e, 0xaf, 0x4a, 0x3e, 0xbe, 0xd9, 0x6a, 0xc6, 0x12, 0x6f, 0x58, }; static const unsigned char xdh_wei25519_1382_sharedsecret[] = { 0x2d, 0x49, 0xb0, 0x9f, 0x81, 0xf3, 0xf6, 0xfa, 0xb2, 0xc6, 0x7e, 0x32, 0xf1, 0xbc, 0xea, 0xd2, 0xad, 0x09, 0xac, 0x9e, 0x0d, 0x64, 0x2b, 0x08, 0x73, 0xbe, 0xcf, 0xb6, 0x4d, 0xe2, 0xab, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_1382 = { .name = "xdh_wei25519_1382", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1382_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1382_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1382_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 336 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1383 for XDH, tcId is 337 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1383_peerpubkey[] = { 0x08, 0x35, 0x29, 0x36, 0xc8, 0xaf, 0xd8, 0x54, 0x3a, 0xc9, 0x5f, 0x24, 0xbc, 0xe9, 0xa0, 0x7e, 0x3e, 0x32, 0x35, 0x76, 0x3e, 0xa5, 0x12, 0xa5, 0x84, 0x29, 0x89, 0x67, 0xb8, 0x3c, 0x07, 0x0a, }; static const unsigned char xdh_wei25519_1383_privkey[] = { 0x10, 0x6b, 0x36, 0x34, 0x4c, 0xc4, 0xa5, 0xa3, 0x89, 0xd8, 0x16, 0x81, 0x37, 0x78, 0x68, 0x06, 0xff, 0x03, 0xcd, 0x4a, 0x00, 0xf8, 0x63, 0x6b, 0xb7, 0xe7, 0x58, 0xd4, 0x56, 0x15, 0x1d, 0x59, }; static const unsigned char xdh_wei25519_1383_sharedsecret[] = { 0xa1, 0x99, 0x36, 0x8e, 0x68, 0x3c, 0x30, 0x36, 0xa4, 0x8f, 0x4c, 0x5f, 0x32, 0xb3, 0x2a, 0x54, 0x7d, 0xd3, 0x9f, 0x3d, 0x10, 0x07, 0xca, 0x0a, 0x0b, 0xeb, 0xca, 0xd0, 0xa8, 0xac, 0x6f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1383 = { .name = "xdh_wei25519_1383", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1383_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1383_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1383_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 337 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1384 for XDH, tcId is 338 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1384_peerpubkey[] = { 0x73, 0xbd, 0xee, 0xf8, 0xcc, 0x04, 0x4f, 0x5a, 0xd8, 0xd6, 0xa2, 0x41, 0x27, 0x3e, 0x19, 0x95, 0xe0, 0x00, 0x7d, 0xc9, 0xe6, 0x57, 0x90, 0x46, 0xdf, 0x86, 0xaa, 0x6c, 0xd9, 0x7f, 0x5d, 0x2a, }; static const unsigned char xdh_wei25519_1384_privkey[] = { 0x88, 0xf9, 0xa0, 0xd2, 0x35, 0x4a, 0xdf, 0xcb, 0xab, 0x2d, 0x12, 0xa0, 0xe0, 0x9b, 0x3c, 0x77, 0x19, 0xc9, 0x44, 0x38, 0x4e, 0xdf, 0xba, 0xa2, 0x7f, 0xe0, 0x73, 0x1c, 0xb9, 0xc6, 0xfc, 0x5a, }; static const unsigned char xdh_wei25519_1384_sharedsecret[] = { 0x5a, 0xa7, 0x50, 0xde, 0x42, 0x07, 0x86, 0x9e, 0xc7, 0xfd, 0xda, 0xb3, 0x4c, 0x63, 0x95, 0x59, 0xb1, 0xeb, 0x27, 0xef, 0x24, 0x4a, 0xaf, 0x2a, 0x70, 0x2c, 0x84, 0x96, 0x3b, 0x6d, 0x6e, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1384 = { .name = "xdh_wei25519_1384", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1384_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1384_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1384_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 338 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1385 for XDH, tcId is 339 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1385_peerpubkey[] = { 0x7f, 0xdd, 0x39, 0x9b, 0x6e, 0xf4, 0xa3, 0xf5, 0xca, 0xde, 0x62, 0xe7, 0x41, 0x13, 0xb2, 0x9c, 0x27, 0xdb, 0x15, 0x20, 0x3f, 0x9b, 0x8e, 0x39, 0x8d, 0x2c, 0x6f, 0x23, 0x00, 0x51, 0xcd, 0x2b, }; static const unsigned char xdh_wei25519_1385_privkey[] = { 0x08, 0x11, 0xf2, 0xe5, 0x60, 0xa2, 0x05, 0xe9, 0x6e, 0x28, 0xbc, 0x31, 0x2b, 0xca, 0xd4, 0x5f, 0xe8, 0xbe, 0xfe, 0xfb, 0x7f, 0x6d, 0xa5, 0xfa, 0xa0, 0x35, 0x31, 0x1e, 0xed, 0x80, 0xb2, 0x51, }; static const unsigned char xdh_wei25519_1385_sharedsecret[] = { 0xa6, 0x94, 0x7e, 0xe0, 0x89, 0xff, 0x28, 0xce, 0x36, 0x44, 0xea, 0x4c, 0x6e, 0xb3, 0x3d, 0xbb, 0x20, 0xc7, 0x97, 0x4f, 0xb8, 0xd8, 0x53, 0xf4, 0xe1, 0x46, 0xe2, 0x46, 0x61, 0x77, 0x50, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1385 = { .name = "xdh_wei25519_1385", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1385_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1385_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1385_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 339 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1386 for XDH, tcId is 340 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1386_peerpubkey[] = { 0xf0, 0x17, 0x3a, 0x96, 0x27, 0x3c, 0x64, 0x6f, 0xb6, 0x3d, 0x13, 0xb0, 0xc6, 0x86, 0xb8, 0x9e, 0x37, 0x67, 0x6f, 0xcc, 0x71, 0x78, 0xfa, 0xf4, 0xa6, 0xf4, 0x60, 0x1f, 0x30, 0x68, 0x15, 0x0d, }; static const unsigned char xdh_wei25519_1386_privkey[] = { 0x40, 0xad, 0x98, 0x40, 0x66, 0xa6, 0x90, 0x80, 0xfb, 0x4a, 0x31, 0x58, 0x78, 0xe7, 0x36, 0x09, 0x6c, 0xc5, 0x77, 0xda, 0xe4, 0xc4, 0x2c, 0x40, 0xd8, 0x93, 0xd8, 0xc2, 0x17, 0x3b, 0x78, 0x5a, }; static const unsigned char xdh_wei25519_1386_sharedsecret[] = { 0x23, 0x0b, 0x6a, 0xa1, 0xf2, 0x4d, 0xf9, 0x0a, 0x60, 0x83, 0x91, 0x79, 0xba, 0x5e, 0x9d, 0xe6, 0x73, 0xcf, 0xf1, 0x1c, 0xab, 0x59, 0xe8, 0x02, 0x0b, 0x20, 0x62, 0x6c, 0x22, 0x09, 0x0b, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_1386 = { .name = "xdh_wei25519_1386", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1386_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1386_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1386_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 340 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1387 for XDH, tcId is 341 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1387_peerpubkey[] = { 0x25, 0x5b, 0xbe, 0x72, 0x30, 0xcd, 0x2b, 0xee, 0x90, 0xd2, 0x83, 0xf4, 0x18, 0xa4, 0x74, 0xab, 0x30, 0x14, 0x6c, 0xe5, 0xe8, 0x01, 0xa0, 0xf5, 0xed, 0x60, 0xee, 0x8d, 0xef, 0x3e, 0x65, 0x58, }; static const unsigned char xdh_wei25519_1387_privkey[] = { 0x48, 0xb1, 0x0c, 0xd4, 0x56, 0x39, 0xbb, 0xbf, 0x83, 0xa0, 0xb2, 0x8f, 0x0d, 0xd3, 0xad, 0x0b, 0x7b, 0x00, 0xca, 0xf4, 0x8d, 0x05, 0x53, 0x44, 0x80, 0x55, 0x6a, 0x82, 0x78, 0x11, 0x6d, 0x59, }; static const unsigned char xdh_wei25519_1387_sharedsecret[] = { 0x22, 0x99, 0xe3, 0x84, 0x95, 0x8b, 0xed, 0xd2, 0xc3, 0xd3, 0x67, 0x75, 0x91, 0x55, 0x13, 0x6d, 0x1f, 0xf7, 0x6e, 0x44, 0x34, 0xdc, 0x1d, 0x9e, 0x82, 0x12, 0xcd, 0xca, 0x52, 0xea, 0x84, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1387 = { .name = "xdh_wei25519_1387", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1387_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1387_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1387_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 341 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1388 for XDH, tcId is 342 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1388_peerpubkey[] = { 0x21, 0xac, 0xcf, 0x97, 0xb7, 0xfe, 0xe1, 0x73, 0x00, 0x1c, 0xcf, 0xca, 0xb2, 0x16, 0x37, 0xc1, 0x75, 0xef, 0x51, 0x86, 0xff, 0x00, 0x02, 0x50, 0x2b, 0x3d, 0x52, 0xfa, 0x8c, 0x51, 0xe7, 0x66, }; static const unsigned char xdh_wei25519_1388_privkey[] = { 0xe8, 0xfa, 0xd7, 0x79, 0x46, 0xe0, 0xde, 0x4c, 0xf4, 0x23, 0x67, 0x98, 0x49, 0x0b, 0x83, 0x89, 0x48, 0xb8, 0x2c, 0xfb, 0x29, 0xf8, 0xe7, 0x68, 0x60, 0x01, 0xb1, 0x1e, 0x8d, 0x96, 0x16, 0x57, }; static const unsigned char xdh_wei25519_1388_sharedsecret[] = { 0x97, 0xfc, 0xa0, 0x65, 0xac, 0xd3, 0xb9, 0x43, 0xc6, 0x54, 0x99, 0x7c, 0x0f, 0x12, 0x57, 0x67, 0xf9, 0xab, 0xc4, 0xb7, 0xc9, 0xd8, 0xb7, 0x24, 0x69, 0x42, 0xf1, 0x2b, 0xe6, 0x5d, 0x92, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1388 = { .name = "xdh_wei25519_1388", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1388_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1388_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1388_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 342 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1389 for XDH, tcId is 343 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1389_peerpubkey[] = { 0x5b, 0x40, 0x77, 0x7e, 0x80, 0xff, 0x6e, 0xfe, 0x37, 0x8b, 0x5e, 0x81, 0x95, 0x9c, 0xcd, 0xcb, 0xb4, 0xca, 0x04, 0xb9, 0xd7, 0x7e, 0xdc, 0x6b, 0x30, 0x06, 0xde, 0xb9, 0x99, 0x26, 0xfa, 0x22, }; static const unsigned char xdh_wei25519_1389_privkey[] = { 0xd0, 0x7b, 0xab, 0xed, 0x90, 0xb2, 0x7c, 0x4e, 0xac, 0xaf, 0xdc, 0x87, 0x17, 0x03, 0xbd, 0x03, 0x6b, 0x72, 0x0a, 0x82, 0xb5, 0xc0, 0x94, 0xdc, 0xeb, 0x47, 0x49, 0xee, 0xae, 0xb8, 0x10, 0x52, }; static const unsigned char xdh_wei25519_1389_sharedsecret[] = { 0xf4, 0x82, 0x53, 0x1e, 0x52, 0x3d, 0x05, 0x8d, 0x6e, 0x3f, 0xe3, 0xa4, 0x27, 0xfc, 0x40, 0xdb, 0xce, 0x6d, 0xd6, 0xf1, 0x8d, 0xef, 0xbc, 0x09, 0x7b, 0xfd, 0x7d, 0x0c, 0xdd, 0x2f, 0x71, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1389 = { .name = "xdh_wei25519_1389", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1389_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1389_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1389_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 343 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1390 for XDH, tcId is 344 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1390_peerpubkey[] = { 0x48, 0xd9, 0x52, 0xa2, 0x92, 0x4f, 0xf1, 0x67, 0xf0, 0x37, 0x70, 0x74, 0x69, 0xec, 0x71, 0x5d, 0xa7, 0x2b, 0xb6, 0x5f, 0x49, 0xaa, 0xf4, 0xdc, 0xe7, 0xec, 0x5a, 0x17, 0x03, 0x9d, 0xdb, 0x42, }; static const unsigned char xdh_wei25519_1390_privkey[] = { 0x68, 0xa3, 0x04, 0x9a, 0xef, 0x8c, 0x06, 0x9b, 0x90, 0x6c, 0xf7, 0x43, 0x28, 0x6d, 0x39, 0x52, 0xa8, 0x88, 0xbf, 0x2b, 0x9b, 0x93, 0xbc, 0x87, 0x75, 0xfb, 0x5a, 0xdd, 0xe0, 0x6e, 0x9f, 0x53, }; static const unsigned char xdh_wei25519_1390_sharedsecret[] = { 0xde, 0x88, 0xaf, 0x90, 0x5d, 0x37, 0x41, 0x7d, 0x83, 0x31, 0x10, 0x53, 0x45, 0xda, 0xba, 0xab, 0x9f, 0xd2, 0xd3, 0xcb, 0x1e, 0xe9, 0x02, 0x91, 0x1c, 0x1c, 0x8e, 0xae, 0x29, 0x91, 0xd9, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1390 = { .name = "xdh_wei25519_1390", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1390_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1390_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1390_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 344 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1391 for XDH, tcId is 345 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1391_peerpubkey[] = { 0xa5, 0xef, 0x26, 0x5c, 0xcb, 0xc5, 0xc5, 0x40, 0x21, 0xd3, 0x4f, 0x82, 0x36, 0x4a, 0x46, 0x24, 0x03, 0x0f, 0x5b, 0x9d, 0x5f, 0xf7, 0xe6, 0x3d, 0x7a, 0x37, 0x9e, 0x53, 0x3d, 0xe5, 0xe7, 0x42, }; static const unsigned char xdh_wei25519_1391_privkey[] = { 0x18, 0xd8, 0xc3, 0xd2, 0xa4, 0xe3, 0x66, 0x18, 0x5a, 0x85, 0xc3, 0x86, 0x98, 0xd9, 0x37, 0xe1, 0x3b, 0xbb, 0xaf, 0xdb, 0xda, 0xb1, 0xa0, 0xa8, 0x3d, 0xbb, 0xe8, 0x9b, 0xad, 0xf7, 0x07, 0x56, }; static const unsigned char xdh_wei25519_1391_sharedsecret[] = { 0x07, 0x5d, 0x18, 0xcc, 0xc9, 0x84, 0x76, 0x1b, 0x70, 0x75, 0x22, 0x79, 0xe7, 0xf6, 0xa7, 0x57, 0x20, 0x8f, 0x6c, 0x11, 0xe2, 0x94, 0x80, 0xc3, 0x2b, 0x40, 0xab, 0xa1, 0x28, 0xa4, 0xd5, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1391 = { .name = "xdh_wei25519_1391", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1391_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1391_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1391_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 345 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1392 for XDH, tcId is 346 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1392_peerpubkey[] = { 0x90, 0x51, 0xe5, 0x5a, 0x40, 0x50, 0xef, 0x4d, 0xce, 0x0b, 0x0c, 0x40, 0x81, 0x1f, 0x16, 0x37, 0x1e, 0x8b, 0x16, 0x93, 0x25, 0x41, 0xda, 0x37, 0xf0, 0x69, 0x40, 0x6d, 0x84, 0x8e, 0xa4, 0x24, }; static const unsigned char xdh_wei25519_1392_privkey[] = { 0x18, 0xef, 0xcd, 0x5f, 0xe3, 0x45, 0xbe, 0x49, 0x85, 0x31, 0x66, 0x95, 0x39, 0x1d, 0x2c, 0x95, 0x2e, 0xee, 0x13, 0xb0, 0xe1, 0xee, 0x75, 0x84, 0x72, 0x1f, 0xbe, 0x8b, 0x19, 0xd4, 0xfc, 0x5f, }; static const unsigned char xdh_wei25519_1392_sharedsecret[] = { 0x21, 0x2d, 0xbf, 0x9b, 0xc8, 0x9b, 0x68, 0x73, 0xa6, 0x0d, 0xfc, 0x87, 0x31, 0xa1, 0x0b, 0xe1, 0x1a, 0xb2, 0xdc, 0xa4, 0xb1, 0x72, 0x14, 0x2e, 0x6c, 0x9f, 0x06, 0x61, 0x4c, 0xd7, 0x28, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1392 = { .name = "xdh_wei25519_1392", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1392_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1392_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1392_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 346 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1393 for XDH, tcId is 347 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1393_peerpubkey[] = { 0x41, 0x9a, 0xdb, 0x8b, 0x1f, 0x2f, 0x87, 0xde, 0x01, 0x6b, 0x0c, 0x78, 0xd1, 0x02, 0x9a, 0x21, 0x04, 0x92, 0xeb, 0x8c, 0xad, 0xd1, 0x64, 0xb1, 0x2c, 0xd6, 0x5b, 0x1d, 0x57, 0xbf, 0x36, 0x34, }; static const unsigned char xdh_wei25519_1393_privkey[] = { 0x28, 0xec, 0x7c, 0x69, 0x3e, 0x22, 0x2c, 0x72, 0xac, 0x08, 0x15, 0xf1, 0xfd, 0x36, 0x66, 0x13, 0x57, 0xe0, 0xa8, 0xda, 0x7b, 0xc9, 0x96, 0xda, 0xee, 0xea, 0xfc, 0xd2, 0x1c, 0x01, 0x34, 0x51, }; static const unsigned char xdh_wei25519_1393_sharedsecret[] = { 0x37, 0x9f, 0x92, 0x21, 0xab, 0xeb, 0xf3, 0x58, 0x26, 0x81, 0xa0, 0xe8, 0x57, 0xf3, 0xda, 0x57, 0x8a, 0x1b, 0x01, 0x21, 0x98, 0x2b, 0x96, 0xf1, 0x4b, 0x94, 0xde, 0x5d, 0xc8, 0xb2, 0x45, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1393 = { .name = "xdh_wei25519_1393", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1393_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1393_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1393_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 347 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1394 for XDH, tcId is 348 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1394_peerpubkey[] = { 0x13, 0xe0, 0x0d, 0xae, 0x3b, 0x1c, 0xcc, 0x97, 0xcc, 0xd6, 0x49, 0x08, 0x8c, 0x4a, 0x7f, 0x32, 0xca, 0x99, 0x76, 0x21, 0x4d, 0x64, 0x56, 0x67, 0xbd, 0x08, 0x20, 0x39, 0xbb, 0xd9, 0xab, 0x7a, }; static const unsigned char xdh_wei25519_1394_privkey[] = { 0x78, 0xb3, 0x5e, 0x7a, 0xe5, 0x49, 0x30, 0x8b, 0x64, 0x14, 0xbb, 0x61, 0x01, 0x96, 0xc0, 0x4f, 0x2a, 0xf7, 0x9d, 0x42, 0x66, 0xc8, 0x6e, 0x8a, 0x9c, 0xe0, 0xc0, 0x2b, 0xbd, 0xb8, 0x8d, 0x59, }; static const unsigned char xdh_wei25519_1394_sharedsecret[] = { 0xcf, 0xf2, 0x59, 0x6b, 0x7a, 0xfe, 0x36, 0xf4, 0xca, 0xb9, 0xc7, 0x01, 0x33, 0xd7, 0xaa, 0x0f, 0x99, 0x14, 0xf9, 0xab, 0xc6, 0xc3, 0xb9, 0x89, 0x54, 0x72, 0xe2, 0xa5, 0x89, 0x4a, 0x80, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_1394 = { .name = "xdh_wei25519_1394", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1394_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1394_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1394_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 348 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1395 for XDH, tcId is 349 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1395_peerpubkey[] = { 0x44, 0x1c, 0x48, 0x7a, 0x48, 0xf0, 0xa4, 0x98, 0x9d, 0x93, 0x1c, 0xd7, 0x7a, 0x61, 0x42, 0xa0, 0xa1, 0x3d, 0x1a, 0xab, 0xad, 0x82, 0x62, 0x3b, 0xa8, 0xd9, 0x4b, 0x5c, 0x37, 0x4f, 0x4f, 0x08, }; static const unsigned char xdh_wei25519_1395_privkey[] = { 0xf0, 0xde, 0x9c, 0x5f, 0x8a, 0x93, 0x72, 0xf3, 0x0c, 0x41, 0xca, 0x47, 0xa5, 0x57, 0x43, 0xce, 0x69, 0x7d, 0x46, 0xe3, 0x2e, 0x7a, 0x9a, 0xe2, 0x6d, 0x32, 0x50, 0x3f, 0xd5, 0x22, 0x27, 0x67, }; static const unsigned char xdh_wei25519_1395_sharedsecret[] = { 0xd4, 0x7c, 0x46, 0xb4, 0x32, 0x9b, 0xed, 0xcb, 0xc1, 0x98, 0x6b, 0x3c, 0x6d, 0x2a, 0xa9, 0xbc, 0xd0, 0x27, 0xd6, 0xb6, 0x89, 0x25, 0x17, 0x5d, 0x35, 0xbb, 0xb5, 0x36, 0xb3, 0x44, 0x08, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1395 = { .name = "xdh_wei25519_1395", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1395_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1395_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1395_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 349 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1396 for XDH, tcId is 350 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1396_peerpubkey[] = { 0x0e, 0x67, 0xee, 0x5c, 0x6b, 0x65, 0xaa, 0x80, 0x22, 0x59, 0x81, 0x0b, 0x26, 0x05, 0xf8, 0xd7, 0xac, 0xcf, 0x9b, 0x49, 0xbf, 0x14, 0xcb, 0x4a, 0x53, 0x69, 0x28, 0xe8, 0x83, 0x17, 0x29, 0x15, }; static const unsigned char xdh_wei25519_1396_privkey[] = { 0x68, 0x6b, 0xe5, 0xa1, 0x2b, 0x31, 0x04, 0x20, 0xf9, 0xbf, 0xb2, 0x09, 0x38, 0x1f, 0xd4, 0x59, 0xa5, 0xcc, 0xd5, 0x5c, 0x75, 0x2b, 0x88, 0x33, 0x7e, 0xbe, 0x89, 0xe1, 0x92, 0x1a, 0xe7, 0x65, }; static const unsigned char xdh_wei25519_1396_sharedsecret[] = { 0x1d, 0x73, 0x01, 0x58, 0xda, 0x88, 0x05, 0x33, 0xdb, 0xf1, 0xe6, 0xc6, 0x4a, 0x8e, 0x99, 0xf9, 0x16, 0x96, 0x11, 0x66, 0x09, 0x69, 0xb0, 0xa8, 0x4f, 0xb4, 0x2d, 0xd8, 0xdc, 0x2e, 0xfa, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1396 = { .name = "xdh_wei25519_1396", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1396_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1396_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1396_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 350 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1397 for XDH, tcId is 351 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1397_peerpubkey[] = { 0xdc, 0x9d, 0x7e, 0xf1, 0xcb, 0x49, 0xc1, 0x91, 0xe2, 0x58, 0x66, 0x3a, 0x94, 0xe7, 0x31, 0xb9, 0xc0, 0x66, 0xc1, 0x1a, 0x17, 0xd8, 0xb5, 0xfd, 0xea, 0x19, 0x87, 0xf5, 0xd9, 0xa0, 0x05, 0x68, }; static const unsigned char xdh_wei25519_1397_privkey[] = { 0xa0, 0xc0, 0x33, 0x7c, 0x5b, 0xec, 0x5c, 0xa2, 0x4d, 0xea, 0x2f, 0x1d, 0x70, 0x14, 0x98, 0xae, 0x2b, 0xad, 0x87, 0xb8, 0x26, 0x9a, 0xc2, 0x3b, 0xe1, 0x13, 0x92, 0x9f, 0xe4, 0xeb, 0x19, 0x63, }; static const unsigned char xdh_wei25519_1397_sharedsecret[] = { 0x07, 0x73, 0x25, 0x29, 0xa6, 0x28, 0xba, 0xde, 0xb8, 0xd7, 0x49, 0x46, 0x77, 0x5b, 0xa4, 0x57, 0xc7, 0x00, 0xbf, 0x83, 0x90, 0xf4, 0x6b, 0xc5, 0x23, 0xfb, 0x64, 0xe4, 0x71, 0xc8, 0x6a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1397 = { .name = "xdh_wei25519_1397", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1397_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1397_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1397_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 351 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1398 for XDH, tcId is 352 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1398_peerpubkey[] = { 0x55, 0x6b, 0x3e, 0xe7, 0xcd, 0x0d, 0x37, 0x97, 0x90, 0x56, 0xec, 0xc1, 0xf5, 0x6a, 0x56, 0x77, 0xa4, 0x93, 0x5b, 0xe6, 0xe4, 0x9c, 0xe2, 0x8e, 0x39, 0x4f, 0x8b, 0xfb, 0x73, 0xd1, 0x3b, 0x6a, }; static const unsigned char xdh_wei25519_1398_privkey[] = { 0xb8, 0x82, 0x4c, 0xfc, 0xe5, 0x55, 0x0b, 0x5e, 0x17, 0xb1, 0x2f, 0x74, 0xe2, 0x84, 0x59, 0xca, 0xb3, 0x4e, 0xb4, 0x98, 0x95, 0xcc, 0x36, 0xbf, 0x64, 0x5a, 0x0c, 0xf0, 0x0e, 0x3d, 0x2d, 0x67, }; static const unsigned char xdh_wei25519_1398_sharedsecret[] = { 0x9e, 0x3a, 0xae, 0x35, 0xfa, 0x1c, 0xc8, 0x0a, 0x35, 0x98, 0x78, 0xe2, 0x12, 0x18, 0x02, 0x94, 0xff, 0x66, 0x08, 0xdc, 0xb4, 0x92, 0x9e, 0x91, 0x90, 0x1a, 0xbb, 0xf9, 0x76, 0xf3, 0x9c, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1398 = { .name = "xdh_wei25519_1398", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1398_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1398_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1398_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 352 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1399 for XDH, tcId is 353 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1399_peerpubkey[] = { 0x12, 0x11, 0xbe, 0x58, 0x09, 0x60, 0x5b, 0x54, 0xf5, 0x72, 0x7d, 0x23, 0x3c, 0x78, 0x3a, 0x2a, 0x19, 0x9a, 0x3d, 0xb2, 0x4e, 0xd4, 0x49, 0x9d, 0x7b, 0x48, 0xc7, 0x60, 0x3e, 0x4a, 0xd3, 0x71, }; static const unsigned char xdh_wei25519_1399_privkey[] = { 0xe0, 0x2d, 0xba, 0x73, 0x35, 0xaf, 0x8f, 0xb9, 0x16, 0x8d, 0xe2, 0xfc, 0xd3, 0x10, 0xc2, 0xe2, 0xdf, 0x4a, 0x3e, 0x25, 0x26, 0x3e, 0x0a, 0xb9, 0xad, 0xa8, 0x7b, 0xfb, 0x82, 0x58, 0xa6, 0x6b, }; static const unsigned char xdh_wei25519_1399_sharedsecret[] = { 0x88, 0x0f, 0x6d, 0xc7, 0x32, 0x20, 0x30, 0x7a, 0x59, 0x76, 0x70, 0xf3, 0x28, 0x2f, 0xc3, 0x66, 0xaa, 0x66, 0xf0, 0x4a, 0x0a, 0x9c, 0xa3, 0x0d, 0x89, 0x5f, 0xdd, 0xe3, 0x37, 0xaf, 0xe8, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1399 = { .name = "xdh_wei25519_1399", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1399_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1399_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1399_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 353 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1400 for XDH, tcId is 354 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1400_peerpubkey[] = { 0x50, 0x5e, 0x78, 0x51, 0xe2, 0x35, 0x2e, 0x31, 0x1c, 0xa9, 0x53, 0x6a, 0x1f, 0xe6, 0xc0, 0xd9, 0x5d, 0x64, 0x81, 0x97, 0x37, 0x4c, 0xe0, 0x8e, 0x4b, 0x8a, 0x0f, 0xbd, 0xdf, 0x62, 0x91, 0x0b, }; static const unsigned char xdh_wei25519_1400_privkey[] = { 0x30, 0xce, 0x71, 0xf8, 0x56, 0xce, 0xb8, 0x74, 0xfe, 0x58, 0x00, 0x39, 0xca, 0x67, 0xe8, 0x96, 0xe6, 0xd0, 0x82, 0x07, 0xa7, 0x3c, 0xd5, 0x5d, 0xb7, 0x05, 0x91, 0x27, 0xc1, 0x34, 0x2b, 0x67, }; static const unsigned char xdh_wei25519_1400_sharedsecret[] = { 0xea, 0x62, 0xb0, 0xed, 0xa2, 0xd7, 0xb2, 0x49, 0xa4, 0x24, 0x17, 0x67, 0x5a, 0x2b, 0x82, 0xb1, 0xe6, 0xc0, 0xd6, 0x9a, 0x4e, 0x7c, 0xef, 0x33, 0x64, 0x48, 0x84, 0x4d, 0x2f, 0x43, 0x22, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1400 = { .name = "xdh_wei25519_1400", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1400_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1400_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1400_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 354 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1401 for XDH, tcId is 355 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1401_peerpubkey[] = { 0xdd, 0xf4, 0xe9, 0x05, 0x03, 0xdd, 0x82, 0x61, 0x0c, 0x3a, 0x03, 0x4b, 0x92, 0x5a, 0x88, 0x0b, 0x72, 0xdb, 0xde, 0x30, 0xc6, 0x26, 0x00, 0x92, 0x02, 0xb3, 0x58, 0xc6, 0xeb, 0x00, 0xf4, 0x18, }; static const unsigned char xdh_wei25519_1401_privkey[] = { 0xe8, 0x81, 0xf4, 0x6d, 0x41, 0x41, 0xea, 0x69, 0xa6, 0x71, 0x64, 0x9b, 0x93, 0xb6, 0x3e, 0x97, 0xdc, 0x67, 0xc1, 0x25, 0x21, 0xd4, 0x45, 0x86, 0x2f, 0x08, 0x7b, 0x26, 0x26, 0xfa, 0x2b, 0x6f, }; static const unsigned char xdh_wei25519_1401_sharedsecret[] = { 0x30, 0x2c, 0x4f, 0x83, 0xb5, 0xc5, 0xbf, 0x30, 0xc1, 0xe3, 0xaf, 0xd9, 0xf6, 0x43, 0xf6, 0x5b, 0xfe, 0x56, 0xca, 0x16, 0x28, 0xee, 0x04, 0x2b, 0x1a, 0xb7, 0x39, 0x3b, 0xaf, 0xe3, 0x6c, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1401 = { .name = "xdh_wei25519_1401", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1401_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1401_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1401_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 355 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1402 for XDH, tcId is 356 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1402_peerpubkey[] = { 0x0e, 0x9c, 0x44, 0x31, 0x99, 0x9e, 0xf1, 0xce, 0x17, 0x7e, 0x90, 0x0d, 0x37, 0xec, 0x6a, 0xe6, 0x65, 0xe3, 0x87, 0xe2, 0xd4, 0xfa, 0x27, 0xcb, 0xa8, 0xe7, 0xba, 0xeb, 0xc6, 0x5c, 0x65, 0x20, }; static const unsigned char xdh_wei25519_1402_privkey[] = { 0xe8, 0x79, 0x75, 0x26, 0x83, 0xcd, 0x73, 0xa8, 0x34, 0x25, 0x1c, 0x65, 0x74, 0x91, 0x35, 0xe0, 0x6e, 0xb9, 0x06, 0x4d, 0x3a, 0xe3, 0x50, 0x95, 0xd8, 0x8c, 0xde, 0x14, 0xa0, 0x2b, 0xa3, 0x66, }; static const unsigned char xdh_wei25519_1402_sharedsecret[] = { 0x8f, 0xf2, 0xac, 0x65, 0xc8, 0x5e, 0xe2, 0xfe, 0x94, 0x52, 0xfc, 0xe4, 0x60, 0xf8, 0xc8, 0x7f, 0x95, 0x70, 0xd7, 0x69, 0xca, 0xdd, 0xdc, 0x87, 0xfe, 0x93, 0xef, 0x8b, 0x76, 0x57, 0xc7, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1402 = { .name = "xdh_wei25519_1402", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1402_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1402_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1402_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 356 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1403 for XDH, tcId is 357 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1403_peerpubkey[] = { 0x57, 0x61, 0xd6, 0xc0, 0x86, 0x24, 0x10, 0x4d, 0x41, 0x17, 0xff, 0x17, 0xc7, 0x5e, 0x92, 0x11, 0xa5, 0x91, 0xc9, 0xca, 0x9a, 0xec, 0xca, 0x3a, 0x66, 0x5a, 0x7e, 0xd8, 0x44, 0x19, 0x52, 0x25, }; static const unsigned char xdh_wei25519_1403_privkey[] = { 0x20, 0x57, 0x6a, 0xb4, 0x56, 0xda, 0x26, 0xc1, 0x8d, 0xa5, 0xfb, 0xf0, 0x6e, 0xc4, 0xd1, 0x65, 0x64, 0xe1, 0x11, 0xbf, 0xae, 0x2a, 0x92, 0xb9, 0xf6, 0xe1, 0x92, 0x7c, 0x15, 0x77, 0x0a, 0x62, }; static const unsigned char xdh_wei25519_1403_sharedsecret[] = { 0x97, 0xc9, 0x1a, 0x23, 0xc3, 0xe4, 0xf3, 0xff, 0x72, 0x7d, 0x18, 0x8a, 0x35, 0x2b, 0x67, 0xad, 0x49, 0x0b, 0x62, 0x38, 0x15, 0x66, 0xfb, 0x3e, 0x11, 0x1c, 0xb6, 0x7a, 0xa9, 0xe3, 0x43, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1403 = { .name = "xdh_wei25519_1403", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1403_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1403_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1403_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 357 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1404 for XDH, tcId is 358 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1404_peerpubkey[] = { 0xe9, 0x2d, 0x45, 0xb3, 0xec, 0x56, 0x53, 0x12, 0x66, 0x30, 0x3c, 0x51, 0x13, 0xc4, 0x63, 0x10, 0xc4, 0x16, 0x50, 0x00, 0x10, 0x65, 0xb4, 0xd8, 0x7b, 0x02, 0xb3, 0x82, 0xfc, 0x82, 0x66, 0x2e, }; static const unsigned char xdh_wei25519_1404_privkey[] = { 0xa8, 0x46, 0x74, 0x18, 0xb9, 0x24, 0xc2, 0xc0, 0x03, 0xc5, 0x6e, 0x16, 0x10, 0xa3, 0x54, 0x69, 0x35, 0x63, 0x60, 0xc2, 0x9d, 0x52, 0xaa, 0x55, 0x7a, 0x2b, 0xb3, 0x0f, 0xb8, 0xa9, 0xa4, 0x64, }; static const unsigned char xdh_wei25519_1404_sharedsecret[] = { 0x24, 0x34, 0x6b, 0xb1, 0x33, 0xdd, 0x9a, 0xe3, 0xff, 0x02, 0xd2, 0xf5, 0x05, 0x10, 0xb3, 0xa9, 0x2d, 0x90, 0x30, 0x83, 0x4d, 0x60, 0xe5, 0xaf, 0x08, 0xb0, 0xee, 0xbb, 0xf1, 0xd4, 0xdd, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1404 = { .name = "xdh_wei25519_1404", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1404_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1404_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1404_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 358 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1405 for XDH, tcId is 359 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1405_peerpubkey[] = { 0xf3, 0x8b, 0x63, 0x45, 0x9d, 0x05, 0xe4, 0x22, 0xad, 0x02, 0x4c, 0x2d, 0xce, 0xa5, 0x02, 0x9a, 0x0a, 0x7a, 0x6b, 0x6c, 0x4c, 0x1d, 0x20, 0x93, 0xce, 0x55, 0x6a, 0xab, 0x33, 0x1e, 0x25, 0x40, }; static const unsigned char xdh_wei25519_1405_privkey[] = { 0xf0, 0xf5, 0xe1, 0x62, 0x92, 0x3d, 0x7c, 0x29, 0x93, 0x88, 0xbe, 0xd7, 0x81, 0x19, 0x94, 0x17, 0xad, 0xe0, 0x97, 0x47, 0x55, 0x15, 0x16, 0x2d, 0x95, 0x90, 0x97, 0x6a, 0x19, 0x6f, 0xb1, 0x6f, }; static const unsigned char xdh_wei25519_1405_sharedsecret[] = { 0xb3, 0x45, 0x3c, 0x9c, 0x82, 0xa2, 0xd1, 0xd9, 0x56, 0x15, 0x6d, 0xe2, 0x39, 0x9c, 0xb7, 0x0d, 0xd4, 0xe1, 0xec, 0x53, 0xae, 0xa9, 0x67, 0xe0, 0x35, 0x75, 0x3c, 0x1c, 0xda, 0xe1, 0x3c, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1405 = { .name = "xdh_wei25519_1405", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1405_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1405_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1405_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 359 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1406 for XDH, tcId is 360 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1406_peerpubkey[] = { 0xa7, 0xde, 0xd0, 0xee, 0xa4, 0x5a, 0x40, 0x0b, 0x8f, 0x56, 0x37, 0x15, 0x4d, 0x42, 0x97, 0x4a, 0xa9, 0x8c, 0x92, 0x96, 0x23, 0x14, 0xd8, 0x22, 0xef, 0x88, 0xb0, 0x13, 0x83, 0xa9, 0xda, 0x4d, }; static const unsigned char xdh_wei25519_1406_privkey[] = { 0x60, 0x8f, 0xcf, 0x78, 0x7f, 0xe7, 0x89, 0x64, 0x4a, 0x09, 0xbc, 0xab, 0x95, 0x8f, 0x07, 0x37, 0xaa, 0x81, 0xa9, 0xe2, 0x9d, 0x50, 0x5f, 0x51, 0x03, 0x5c, 0x78, 0xe3, 0x74, 0xb9, 0xe4, 0x6b, }; static const unsigned char xdh_wei25519_1406_sharedsecret[] = { 0xeb, 0xeb, 0x0c, 0x7b, 0x7a, 0x41, 0x65, 0xcd, 0x02, 0xa2, 0x78, 0xf3, 0xa2, 0x22, 0xc2, 0x36, 0xee, 0xd8, 0x32, 0x66, 0xb8, 0x06, 0xd1, 0x34, 0x94, 0xc1, 0xc3, 0xf9, 0x8a, 0x2f, 0x34, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1406 = { .name = "xdh_wei25519_1406", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1406_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1406_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1406_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 360 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1407 for XDH, tcId is 361 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1407_peerpubkey[] = { 0x7b, 0x0e, 0xcb, 0x4c, 0x72, 0xee, 0x14, 0x77, 0x89, 0xd7, 0x48, 0x13, 0xce, 0xd3, 0xeb, 0xe4, 0x0f, 0x45, 0xc3, 0xda, 0x52, 0x6e, 0xd1, 0x27, 0x29, 0x52, 0xe4, 0x53, 0xe4, 0x3b, 0x79, 0x6d, }; static const unsigned char xdh_wei25519_1407_privkey[] = { 0x58, 0xa3, 0x39, 0x6d, 0x29, 0x1e, 0xb2, 0x35, 0x71, 0xb5, 0x2d, 0x98, 0xa3, 0x15, 0x49, 0xe5, 0x14, 0xe5, 0x01, 0xe8, 0xd0, 0x95, 0x8a, 0xd9, 0xf2, 0x5f, 0xe5, 0xa7, 0x6c, 0x50, 0x3e, 0x69, }; static const unsigned char xdh_wei25519_1407_sharedsecret[] = { 0x92, 0x13, 0xa5, 0x3f, 0x22, 0xff, 0x0c, 0xb5, 0xec, 0xa8, 0x7b, 0x27, 0xb1, 0x93, 0xc7, 0x73, 0xbf, 0xdf, 0x4c, 0x01, 0xa1, 0x93, 0xa1, 0x1f, 0x37, 0xc1, 0x57, 0x47, 0x4e, 0x15, 0xcb, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1407 = { .name = "xdh_wei25519_1407", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1407_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1407_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1407_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1408 for XDH, tcId is 362 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1408_peerpubkey[] = { 0xa2, 0x44, 0x41, 0x3d, 0xdc, 0x3a, 0x20, 0x5d, 0x03, 0x8d, 0x64, 0x26, 0x68, 0x33, 0xee, 0xa1, 0xef, 0xba, 0x51, 0xba, 0x62, 0xc9, 0xc6, 0xcd, 0xcd, 0xbe, 0x94, 0x3b, 0xe5, 0x2b, 0xb0, 0x0c, }; static const unsigned char xdh_wei25519_1408_privkey[] = { 0xd8, 0x05, 0xa7, 0x01, 0x47, 0x55, 0xdd, 0x65, 0x6f, 0x98, 0xd2, 0xb3, 0x31, 0xf2, 0xd2, 0xd4, 0x91, 0x27, 0x25, 0xef, 0x3d, 0x03, 0x75, 0x2f, 0x26, 0xf7, 0x4d, 0xc1, 0xad, 0x61, 0x66, 0x6a, }; static const unsigned char xdh_wei25519_1408_sharedsecret[] = { 0x66, 0x48, 0x4a, 0x41, 0x20, 0xe0, 0xeb, 0x0c, 0x7e, 0x05, 0x05, 0xe1, 0xd2, 0xc5, 0xd1, 0x5d, 0xe9, 0xb5, 0x2b, 0x72, 0xe0, 0x94, 0xc9, 0xba, 0xc8, 0x86, 0x34, 0x20, 0x0c, 0x55, 0x72, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1408 = { .name = "xdh_wei25519_1408", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1408_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1408_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1408_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 362 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1409 for XDH, tcId is 363 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1409_peerpubkey[] = { 0xec, 0x3c, 0x8b, 0x0c, 0x10, 0xb1, 0xfa, 0x65, 0xdb, 0xbd, 0x17, 0xcf, 0x1b, 0xa5, 0xf8, 0x63, 0x81, 0x28, 0x47, 0x65, 0x70, 0x9b, 0x07, 0xc5, 0xf0, 0x42, 0x8e, 0x3d, 0x5b, 0xcd, 0x39, 0x20, }; static const unsigned char xdh_wei25519_1409_privkey[] = { 0x40, 0xcb, 0x1f, 0xe0, 0x6b, 0x08, 0xf0, 0x68, 0xf7, 0x08, 0x0b, 0xa0, 0x7c, 0x69, 0x5e, 0xda, 0x91, 0xa2, 0xbe, 0xbe, 0xad, 0xd4, 0xdb, 0x95, 0xc9, 0x7d, 0xd7, 0xc9, 0x1a, 0xf2, 0x56, 0x6d, }; static const unsigned char xdh_wei25519_1409_sharedsecret[] = { 0x38, 0x4f, 0x22, 0x21, 0x61, 0x8e, 0x71, 0xd4, 0x56, 0xb1, 0x55, 0x16, 0x51, 0xef, 0xdb, 0x70, 0x8a, 0x16, 0x1d, 0x7f, 0x89, 0xf5, 0x60, 0x4b, 0x27, 0xeb, 0x87, 0x2d, 0x4a, 0xa9, 0x32, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1409 = { .name = "xdh_wei25519_1409", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1409_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1409_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1409_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 363 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1410 for XDH, tcId is 364 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1410_peerpubkey[] = { 0x63, 0x30, 0xd3, 0xe2, 0x8a, 0x8b, 0x61, 0x26, 0xac, 0xe1, 0x65, 0xa9, 0xdf, 0xcc, 0xc6, 0xe4, 0xbd, 0x40, 0xdb, 0xc9, 0x76, 0x8c, 0xfb, 0x16, 0x33, 0x0c, 0xb7, 0xf2, 0x7f, 0x90, 0x62, 0x30, }; static const unsigned char xdh_wei25519_1410_privkey[] = { 0x80, 0x21, 0x46, 0x4c, 0x64, 0xc9, 0xd6, 0xd3, 0xc0, 0xc8, 0x52, 0xf6, 0x97, 0x2d, 0x11, 0x96, 0x9b, 0x04, 0xc9, 0xe0, 0x66, 0x56, 0x2f, 0xa7, 0xf0, 0xd5, 0xfa, 0x0d, 0x98, 0xeb, 0xad, 0x62, }; static const unsigned char xdh_wei25519_1410_sharedsecret[] = { 0x8d, 0xaf, 0x5f, 0x4b, 0x84, 0x73, 0x01, 0x44, 0xea, 0x8a, 0x53, 0xce, 0x39, 0xcc, 0x90, 0x7e, 0x39, 0xa8, 0x9e, 0xd0, 0x9f, 0x02, 0x02, 0xe7, 0xbe, 0x0d, 0x3b, 0xda, 0x38, 0xda, 0x66, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1410 = { .name = "xdh_wei25519_1410", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1410_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1410_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1410_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 364 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1411 for XDH, tcId is 365 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1411_peerpubkey[] = { 0x86, 0x78, 0xaa, 0x29, 0xcb, 0xc0, 0x6e, 0x78, 0xb2, 0x18, 0xd2, 0x2a, 0x3e, 0x66, 0xc3, 0x8e, 0xc0, 0xda, 0x8f, 0xdb, 0x0f, 0x25, 0x70, 0xc5, 0x85, 0xc6, 0x25, 0x17, 0xc9, 0x70, 0x4f, 0x37, }; static const unsigned char xdh_wei25519_1411_privkey[] = { 0x70, 0x7a, 0x2d, 0x71, 0x0b, 0x32, 0xf5, 0x5c, 0x6e, 0xba, 0x34, 0x89, 0x80, 0x20, 0xa2, 0xfb, 0x98, 0x1d, 0x61, 0xb1, 0xe8, 0x22, 0xfc, 0xa8, 0x4c, 0x47, 0xd9, 0x32, 0x1e, 0x27, 0x92, 0x68, }; static const unsigned char xdh_wei25519_1411_sharedsecret[] = { 0xda, 0x8b, 0x7e, 0xba, 0x6f, 0x72, 0xc3, 0xf3, 0xef, 0x33, 0xd8, 0x98, 0x20, 0x93, 0x49, 0x2e, 0x06, 0xbe, 0x39, 0xbb, 0x0d, 0xb2, 0x9c, 0x46, 0x5d, 0x95, 0xa8, 0xe5, 0x2e, 0xf6, 0x43, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1411 = { .name = "xdh_wei25519_1411", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1411_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1411_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1411_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 365 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1412 for XDH, tcId is 366 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1412_peerpubkey[] = { 0x30, 0x32, 0x89, 0xc2, 0xb1, 0x07, 0x9e, 0xa5, 0x94, 0x12, 0xfa, 0xcc, 0xfe, 0xba, 0x8c, 0x11, 0x3d, 0x22, 0x99, 0xb9, 0xdc, 0xfe, 0xde, 0xab, 0xc4, 0x26, 0x97, 0xb0, 0x82, 0x9c, 0x46, 0x58, }; static const unsigned char xdh_wei25519_1412_privkey[] = { 0x20, 0x4a, 0x43, 0xde, 0xa7, 0x9d, 0x77, 0x95, 0x77, 0x58, 0x1b, 0x8c, 0x2a, 0x51, 0xbe, 0x66, 0xe1, 0xef, 0xfc, 0xe9, 0x64, 0x25, 0xb7, 0x42, 0x2b, 0x9c, 0xa6, 0x5b, 0xdf, 0x1a, 0x48, 0x67, }; static const unsigned char xdh_wei25519_1412_sharedsecret[] = { 0x04, 0x19, 0xa7, 0x1a, 0x08, 0xd3, 0xfd, 0xd5, 0x74, 0xcb, 0xc9, 0x32, 0xe8, 0xf1, 0x60, 0x59, 0x33, 0xdd, 0xcd, 0xd9, 0x77, 0x4f, 0x56, 0x14, 0x26, 0x9b, 0x7e, 0xd8, 0x50, 0xc8, 0x65, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1412 = { .name = "xdh_wei25519_1412", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1412_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1412_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1412_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 366 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1413 for XDH, tcId is 367 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1413_peerpubkey[] = { 0x3e, 0x6e, 0x16, 0xe0, 0x2d, 0x44, 0xeb, 0xd9, 0x46, 0x80, 0x83, 0x2e, 0x06, 0x5a, 0xed, 0xdc, 0xbb, 0x74, 0xaf, 0x64, 0xfb, 0xb7, 0xc6, 0xd8, 0x36, 0x7e, 0x76, 0x05, 0xbe, 0x13, 0xff, 0x5b, }; static const unsigned char xdh_wei25519_1413_privkey[] = { 0x58, 0xe4, 0x74, 0x17, 0x35, 0xd2, 0x58, 0x93, 0x22, 0x15, 0x19, 0x47, 0xa1, 0xce, 0x2f, 0x58, 0x29, 0x90, 0x86, 0x26, 0x88, 0x69, 0x41, 0xcb, 0x16, 0x31, 0xd2, 0x5a, 0x8a, 0x68, 0x41, 0x69, }; static const unsigned char xdh_wei25519_1413_sharedsecret[] = { 0x9f, 0x2f, 0xcd, 0x0c, 0x75, 0x62, 0x88, 0xc1, 0x71, 0x6e, 0xcd, 0x1f, 0x2a, 0x74, 0x86, 0x4b, 0x93, 0xa7, 0x71, 0x7b, 0xfa, 0xf5, 0x24, 0x88, 0x58, 0xdc, 0xb6, 0xfd, 0xbe, 0xa1, 0x28, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1413 = { .name = "xdh_wei25519_1413", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1413_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1413_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1413_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 367 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1414 for XDH, tcId is 368 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1414_peerpubkey[] = { 0xa7, 0xc1, 0x71, 0x6a, 0x41, 0xed, 0x23, 0xa8, 0x87, 0x04, 0x38, 0x71, 0x4f, 0xf9, 0x74, 0x5f, 0xb0, 0xe4, 0x6f, 0x7a, 0x5b, 0xae, 0xb3, 0x7c, 0x9a, 0x2d, 0x83, 0xfe, 0x47, 0x7d, 0x14, 0x6c, }; static const unsigned char xdh_wei25519_1414_privkey[] = { 0xd0, 0xaf, 0x34, 0x28, 0xea, 0x52, 0x05, 0xf6, 0xbf, 0x8d, 0x4f, 0x1b, 0x4e, 0x49, 0x03, 0xcd, 0x76, 0xf0, 0x42, 0x36, 0xa1, 0xc0, 0xb3, 0xec, 0xfd, 0xca, 0xf2, 0x8b, 0x21, 0x34, 0x8e, 0x63, }; static const unsigned char xdh_wei25519_1414_sharedsecret[] = { 0x26, 0x1a, 0xb6, 0x26, 0x7c, 0x35, 0xa9, 0x75, 0x53, 0x59, 0xe9, 0x57, 0x47, 0x38, 0x70, 0x52, 0x2b, 0x7f, 0x92, 0x3f, 0xe8, 0x39, 0xf2, 0xb1, 0x55, 0x40, 0x86, 0x49, 0xcc, 0x5e, 0x80, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1414 = { .name = "xdh_wei25519_1414", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1414_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1414_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1414_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 368 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1415 for XDH, tcId is 369 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1415_peerpubkey[] = { 0xda, 0xd9, 0x81, 0x55, 0x2c, 0x57, 0x54, 0x1c, 0x57, 0xef, 0x39, 0x5e, 0xd7, 0x70, 0xce, 0x5e, 0xdc, 0x48, 0xf8, 0x01, 0x54, 0x61, 0xb2, 0xba, 0x7a, 0xa8, 0x31, 0xec, 0x59, 0x3c, 0xeb, 0x15, }; static const unsigned char xdh_wei25519_1415_privkey[] = { 0xc0, 0xea, 0x97, 0xe4, 0x42, 0xe5, 0xdc, 0x1c, 0x81, 0x42, 0xbf, 0xab, 0x70, 0x89, 0xec, 0xb9, 0xbb, 0x9c, 0x5a, 0xe3, 0x72, 0xf9, 0x90, 0x7c, 0x28, 0x25, 0xe6, 0x78, 0xde, 0xfa, 0xe5, 0x67, }; static const unsigned char xdh_wei25519_1415_sharedsecret[] = { 0x90, 0x93, 0xbf, 0xa3, 0xed, 0x34, 0x91, 0xd0, 0x89, 0x1f, 0x02, 0xae, 0x46, 0x6e, 0x5e, 0x13, 0xc9, 0x80, 0xdf, 0x22, 0x9d, 0xb7, 0x40, 0x4c, 0x5b, 0x9d, 0x34, 0xe4, 0xed, 0x21, 0xc6, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1415 = { .name = "xdh_wei25519_1415", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1415_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1415_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1415_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 369 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1416 for XDH, tcId is 370 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1416_peerpubkey[] = { 0xc5, 0x88, 0xdf, 0xe6, 0xe7, 0x33, 0xd9, 0x05, 0x81, 0xcb, 0xe1, 0x12, 0x07, 0x97, 0x49, 0xd8, 0xeb, 0x30, 0xab, 0x86, 0x31, 0x13, 0x4e, 0xc2, 0x9a, 0xbf, 0xb9, 0x8b, 0x32, 0xe7, 0x65, 0x22, }; static const unsigned char xdh_wei25519_1416_privkey[] = { 0xb0, 0x33, 0x3f, 0x09, 0xac, 0x1e, 0xaa, 0xcd, 0x3c, 0xd6, 0x17, 0xeb, 0x88, 0x32, 0xe9, 0xde, 0x48, 0x8b, 0x45, 0x8b, 0x73, 0x5c, 0xb4, 0xb5, 0x34, 0x5f, 0x51, 0x71, 0x30, 0xc2, 0x5d, 0x6b, }; static const unsigned char xdh_wei25519_1416_sharedsecret[] = { 0x6e, 0x88, 0xbb, 0x6b, 0xf7, 0x55, 0x96, 0xbb, 0xe5, 0xf1, 0xfb, 0xe9, 0x1e, 0x36, 0x5a, 0x52, 0x7a, 0x15, 0x6f, 0x4f, 0x1b, 0x57, 0xc1, 0x3a, 0xc1, 0xe3, 0xe6, 0xdb, 0x93, 0x19, 0x12, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1416 = { .name = "xdh_wei25519_1416", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1416_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1416_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1416_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 370 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1417 for XDH, tcId is 371 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1417_peerpubkey[] = { 0x06, 0x70, 0x11, 0x6a, 0x43, 0x5e, 0x8d, 0x9b, 0x7a, 0x12, 0xff, 0xc4, 0x32, 0x2f, 0xd6, 0xb1, 0x49, 0xd0, 0xb1, 0xdc, 0x79, 0x9b, 0x5c, 0x09, 0x57, 0xd9, 0xd6, 0xe4, 0x25, 0x46, 0xe8, 0x24, }; static const unsigned char xdh_wei25519_1417_privkey[] = { 0x10, 0x71, 0x90, 0x99, 0xdc, 0x63, 0xbc, 0xc2, 0x82, 0xef, 0x52, 0x58, 0x45, 0xc1, 0x08, 0x89, 0x7a, 0xc9, 0xfa, 0xe9, 0x59, 0x0b, 0x59, 0x3e, 0x0d, 0x50, 0x5d, 0x1c, 0xf1, 0x67, 0xc0, 0x61, }; static const unsigned char xdh_wei25519_1417_sharedsecret[] = { 0xe6, 0xde, 0x74, 0xd2, 0xc5, 0xce, 0xa5, 0x40, 0x94, 0xd7, 0xa7, 0x0a, 0xf0, 0x3c, 0x76, 0x8a, 0xfe, 0x05, 0xd5, 0x2a, 0x03, 0x8b, 0xb7, 0x2d, 0x56, 0xdc, 0xac, 0xf0, 0xba, 0x50, 0x2d, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_1417 = { .name = "xdh_wei25519_1417", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1417_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1417_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1417_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 371 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1418 for XDH, tcId is 372 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1418_peerpubkey[] = { 0x8b, 0x20, 0x0d, 0xd2, 0x26, 0xc5, 0xc0, 0xf7, 0xe1, 0x16, 0xe5, 0x38, 0x8b, 0xa1, 0x62, 0x43, 0x8c, 0xaf, 0x1d, 0xdd, 0xf4, 0xed, 0xc3, 0xb6, 0xba, 0x83, 0x8c, 0x21, 0xb5, 0x92, 0x97, 0x37, }; static const unsigned char xdh_wei25519_1418_privkey[] = { 0x10, 0xe2, 0x0e, 0x4f, 0xda, 0x57, 0x08, 0x4c, 0xa9, 0x0f, 0x7a, 0xd5, 0x72, 0xa7, 0x8a, 0xa8, 0xe6, 0x57, 0x5c, 0x65, 0x9c, 0xd0, 0x1f, 0x30, 0xc4, 0x3c, 0x58, 0x04, 0x0c, 0x20, 0xe8, 0x60, }; static const unsigned char xdh_wei25519_1418_sharedsecret[] = { 0x78, 0xc9, 0xc3, 0xaf, 0xf9, 0x41, 0x6a, 0x53, 0x8c, 0xe3, 0xea, 0x8f, 0xa5, 0x53, 0x24, 0x45, 0x28, 0xd1, 0xfb, 0xec, 0xbc, 0xf9, 0x16, 0x95, 0xa3, 0x3c, 0xa4, 0x64, 0xef, 0x76, 0xb8, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1418 = { .name = "xdh_wei25519_1418", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1418_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1418_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1418_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 372 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1419 for XDH, tcId is 373 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1419_peerpubkey[] = { 0x41, 0x9a, 0x07, 0x6b, 0x17, 0x9f, 0x79, 0x72, 0x00, 0x96, 0xea, 0xab, 0xaf, 0x03, 0x47, 0x7e, 0x8f, 0x89, 0xd6, 0x1f, 0x88, 0x5c, 0x8d, 0x7f, 0x58, 0xf6, 0xea, 0xa4, 0xfa, 0x77, 0xdf, 0x5f, }; static const unsigned char xdh_wei25519_1419_privkey[] = { 0xa8, 0x31, 0x2d, 0xf4, 0x73, 0xad, 0xfe, 0xc7, 0x17, 0x1e, 0x16, 0x35, 0xf5, 0xba, 0xd4, 0x4f, 0x07, 0x53, 0xa8, 0x8a, 0x6b, 0x31, 0x74, 0xec, 0x5a, 0xe7, 0x62, 0x70, 0x3a, 0xe2, 0x5e, 0x60, }; static const unsigned char xdh_wei25519_1419_sharedsecret[] = { 0xc1, 0xa9, 0x6c, 0xcb, 0xa0, 0x8b, 0xdd, 0x82, 0xd0, 0xfc, 0x12, 0xe8, 0xcd, 0xe4, 0xcc, 0x1f, 0x25, 0xcf, 0xd5, 0x27, 0x6d, 0xce, 0x7f, 0x18, 0xe4, 0x07, 0xed, 0x0e, 0x4a, 0x89, 0x84, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1419 = { .name = "xdh_wei25519_1419", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1419_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1419_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1419_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 373 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1420 for XDH, tcId is 374 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1420_peerpubkey[] = { 0xaa, 0x34, 0xd7, 0x72, 0xe9, 0xac, 0xe4, 0x3c, 0x4d, 0x92, 0xf4, 0xf8, 0x55, 0x96, 0xab, 0x9c, 0xcd, 0x8c, 0x36, 0xc4, 0xf4, 0xcb, 0xdd, 0xc8, 0x19, 0xaf, 0xe2, 0xa3, 0x3c, 0xb8, 0xb2, 0x16, }; static const unsigned char xdh_wei25519_1420_privkey[] = { 0x10, 0x96, 0x97, 0xf4, 0x00, 0x21, 0x0f, 0x9a, 0x92, 0xde, 0x80, 0xa8, 0xbe, 0xd2, 0x64, 0x09, 0x71, 0x99, 0xbc, 0x24, 0x0e, 0x22, 0x76, 0x7b, 0x54, 0xd8, 0xbb, 0x22, 0x05, 0x0b, 0x7a, 0x61, }; static const unsigned char xdh_wei25519_1420_sharedsecret[] = { 0x25, 0x33, 0xb8, 0x45, 0xbb, 0x83, 0xe3, 0xd4, 0x8c, 0xff, 0xa8, 0xdb, 0xd1, 0xed, 0xd5, 0xd6, 0x01, 0x77, 0x86, 0x62, 0xd5, 0xda, 0x03, 0x75, 0x91, 0x52, 0xa5, 0xe0, 0xa8, 0x4b, 0x35, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1420 = { .name = "xdh_wei25519_1420", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1420_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1420_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1420_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 374 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1421 for XDH, tcId is 375 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1421_peerpubkey[] = { 0x1f, 0x06, 0xcf, 0xe4, 0x64, 0xcc, 0xc0, 0xe2, 0x7a, 0x5e, 0xc5, 0xf9, 0xed, 0xd9, 0xbc, 0x7b, 0xc8, 0x22, 0xad, 0x2f, 0xf5, 0x06, 0x8c, 0xa5, 0xc9, 0x63, 0xd2, 0x0e, 0xdd, 0x1a, 0x2d, 0x22, }; static const unsigned char xdh_wei25519_1421_privkey[] = { 0xd0, 0x36, 0x30, 0x8a, 0x53, 0xc1, 0x1b, 0xeb, 0xcb, 0x02, 0xe8, 0x36, 0x88, 0xad, 0x74, 0xfe, 0xc4, 0x3f, 0x84, 0x62, 0xef, 0x4d, 0x80, 0x62, 0x72, 0x67, 0x66, 0x37, 0xd9, 0x9b, 0x37, 0x65, }; static const unsigned char xdh_wei25519_1421_sharedsecret[] = { 0xeb, 0x40, 0xa3, 0x97, 0x4b, 0x1b, 0x03, 0x10, 0xb1, 0x59, 0x7d, 0x1f, 0x1f, 0x41, 0x01, 0xc0, 0x8d, 0xca, 0x72, 0x74, 0x55, 0xa9, 0xd8, 0x22, 0x4c, 0xd0, 0x61, 0xa7, 0xaa, 0x3c, 0xb6, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1421 = { .name = "xdh_wei25519_1421", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1421_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1421_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1421_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 375 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1422 for XDH, tcId is 376 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1422_peerpubkey[] = { 0x9d, 0x4b, 0x2e, 0xd7, 0x81, 0x71, 0x32, 0xaf, 0x58, 0x30, 0xe8, 0x99, 0x62, 0x7e, 0xa9, 0x7d, 0xc3, 0x9b, 0xd3, 0x77, 0x2e, 0x82, 0xf2, 0xd0, 0x57, 0x69, 0xa9, 0x18, 0x27, 0x3d, 0xc0, 0x2e, }; static const unsigned char xdh_wei25519_1422_privkey[] = { 0x78, 0x6e, 0x5a, 0x5f, 0xf3, 0x74, 0x05, 0xc7, 0x69, 0xd0, 0xd3, 0x78, 0x8c, 0x3c, 0x1b, 0x05, 0xa6, 0x2a, 0x84, 0x42, 0xc3, 0x85, 0x57, 0x0e, 0x44, 0x38, 0xbc, 0x5f, 0x2e, 0xaa, 0xcd, 0x67, }; static const unsigned char xdh_wei25519_1422_sharedsecret[] = { 0x95, 0x09, 0x75, 0x7e, 0x28, 0x95, 0x53, 0xcf, 0xa2, 0xcc, 0x71, 0x31, 0x34, 0x73, 0xc3, 0xff, 0x1e, 0xeb, 0xce, 0x48, 0x4e, 0xe2, 0x37, 0xea, 0xe5, 0x54, 0xfd, 0xa3, 0xd3, 0xd2, 0x2f, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1422 = { .name = "xdh_wei25519_1422", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1422_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1422_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1422_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 376 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1423 for XDH, tcId is 377 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1423_peerpubkey[] = { 0x4e, 0x05, 0x6b, 0x31, 0x7a, 0x31, 0xdd, 0x96, 0xf8, 0xec, 0x14, 0xb4, 0x84, 0x74, 0xaf, 0x58, 0x7d, 0x19, 0x5e, 0xfc, 0xc2, 0xa7, 0x0f, 0x01, 0xf0, 0x52, 0xef, 0x88, 0x2d, 0x7b, 0x3a, 0x45, }; static const unsigned char xdh_wei25519_1423_privkey[] = { 0xc0, 0x1f, 0x66, 0xcb, 0x09, 0x42, 0x89, 0xd7, 0x28, 0x42, 0x1d, 0xd4, 0x6c, 0x6f, 0x97, 0x18, 0x41, 0x2e, 0x1c, 0x54, 0x6d, 0xad, 0x70, 0xe5, 0x86, 0x85, 0x1b, 0xe4, 0xda, 0x58, 0xbf, 0x67, }; static const unsigned char xdh_wei25519_1423_sharedsecret[] = { 0xba, 0xd9, 0xf7, 0xb2, 0x7d, 0xac, 0x64, 0xb0, 0xfc, 0x98, 0x0a, 0x41, 0xf1, 0xce, 0xfa, 0x50, 0xc5, 0xca, 0x40, 0xc7, 0x14, 0x29, 0x6c, 0x0c, 0x40, 0x42, 0x09, 0x5c, 0x2d, 0xb6, 0x0e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1423 = { .name = "xdh_wei25519_1423", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1423_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1423_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1423_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 377 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1424 for XDH, tcId is 378 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1424_peerpubkey[] = { 0x72, 0xc6, 0x05, 0x35, 0xe9, 0xc4, 0x23, 0xf3, 0x02, 0xd6, 0xa1, 0x07, 0x96, 0xd9, 0x54, 0xd7, 0x78, 0x03, 0x2c, 0xd4, 0xdb, 0xd4, 0x0c, 0xa0, 0xf3, 0x59, 0xe2, 0x04, 0xd6, 0x7b, 0x6f, 0x4c, }; static const unsigned char xdh_wei25519_1424_privkey[] = { 0x38, 0x77, 0xd9, 0xce, 0x25, 0xce, 0xde, 0xde, 0xb5, 0x72, 0x60, 0x4f, 0x2d, 0x12, 0x3d, 0xf6, 0x85, 0x69, 0x0c, 0x26, 0xe1, 0x81, 0xf7, 0x77, 0xed, 0x33, 0x30, 0x2b, 0x82, 0x08, 0x29, 0x66, }; static const unsigned char xdh_wei25519_1424_sharedsecret[] = { 0x51, 0xc3, 0x59, 0x76, 0x8a, 0xb0, 0x21, 0x90, 0x03, 0xaf, 0x19, 0x3e, 0x2b, 0xdb, 0x8e, 0x5c, 0xc9, 0xf8, 0xe1, 0x76, 0xb8, 0xdb, 0x49, 0xe5, 0x97, 0xaf, 0xca, 0x3e, 0x71, 0x25, 0xe3, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1424 = { .name = "xdh_wei25519_1424", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1424_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1424_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1424_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 378 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1425 for XDH, tcId is 379 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1425_peerpubkey[] = { 0x58, 0x56, 0x35, 0x8e, 0xd4, 0x20, 0x04, 0x7c, 0xd0, 0x84, 0xf1, 0x7a, 0xe6, 0x96, 0xba, 0xd7, 0x9a, 0x4d, 0x26, 0xc6, 0xd5, 0xbb, 0x79, 0xbf, 0xb8, 0x2b, 0xbc, 0x63, 0x32, 0x44, 0x2d, 0x51, }; static const unsigned char xdh_wei25519_1425_privkey[] = { 0x50, 0xb8, 0x46, 0x18, 0xd0, 0x73, 0xc4, 0x61, 0x8f, 0x9a, 0xa6, 0x9a, 0x3b, 0x85, 0x18, 0xda, 0x76, 0xdb, 0xb2, 0x12, 0x72, 0x86, 0x21, 0x4f, 0xb4, 0x3a, 0x2b, 0x44, 0x50, 0x3b, 0x99, 0x69, }; static const unsigned char xdh_wei25519_1425_sharedsecret[] = { 0xfa, 0x9f, 0xb0, 0xdf, 0x4c, 0xfb, 0xac, 0xd0, 0xfb, 0xf3, 0x26, 0x2d, 0x3a, 0x1b, 0xf8, 0xd7, 0xaa, 0xcb, 0x45, 0xf7, 0x3b, 0xf9, 0x46, 0x71, 0x77, 0x5e, 0x50, 0x9c, 0x80, 0x43, 0xdf, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1425 = { .name = "xdh_wei25519_1425", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1425_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1425_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1425_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 379 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1426 for XDH, tcId is 380 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1426_peerpubkey[] = { 0xc3, 0x1e, 0x37, 0xb0, 0x43, 0x32, 0xab, 0xca, 0x83, 0x15, 0xf3, 0x17, 0x17, 0x15, 0x66, 0xae, 0xf3, 0x81, 0x11, 0xf6, 0x22, 0xd8, 0xbf, 0xfa, 0x29, 0xc2, 0x3c, 0x01, 0x51, 0xcd, 0xad, 0x6e, }; static const unsigned char xdh_wei25519_1426_privkey[] = { 0x10, 0x9a, 0xcf, 0xa6, 0x38, 0xe1, 0x12, 0xf6, 0xbb, 0xec, 0x21, 0xe3, 0x52, 0xa7, 0x4e, 0x8f, 0xc9, 0xb7, 0xff, 0xe5, 0xd9, 0xdc, 0x28, 0x63, 0x4e, 0xeb, 0x51, 0x6e, 0x59, 0x83, 0x0a, 0x63, }; static const unsigned char xdh_wei25519_1426_sharedsecret[] = { 0x91, 0xac, 0x72, 0xb0, 0xed, 0x8d, 0x7f, 0xc4, 0xc8, 0x84, 0x6b, 0x8a, 0x25, 0x30, 0xd9, 0xfb, 0x8f, 0x05, 0x32, 0x06, 0x48, 0x80, 0xc0, 0x0d, 0xab, 0x10, 0x0c, 0x97, 0x76, 0x97, 0xdb, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1426 = { .name = "xdh_wei25519_1426", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1426_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1426_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1426_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 380 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1427 for XDH, tcId is 381 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1427_peerpubkey[] = { 0xb7, 0x75, 0xe0, 0x16, 0xb3, 0x2a, 0x97, 0xf4, 0x99, 0x71, 0x12, 0x19, 0x06, 0x76, 0x3f, 0x3a, 0x0b, 0x41, 0x68, 0x90, 0x92, 0xb9, 0x58, 0x3b, 0x67, 0x10, 0xcf, 0x7d, 0xee, 0x03, 0xa6, 0x1c, }; static const unsigned char xdh_wei25519_1427_privkey[] = { 0x68, 0x5c, 0x07, 0x84, 0xaa, 0x6d, 0x19, 0x4c, 0x1b, 0x85, 0x9b, 0xda, 0x44, 0xc4, 0xe2, 0x7c, 0xd1, 0xdf, 0xdf, 0x34, 0x77, 0x6e, 0x49, 0x8d, 0xd0, 0x3d, 0x09, 0xf8, 0x7a, 0xe6, 0x8a, 0x65, }; static const unsigned char xdh_wei25519_1427_sharedsecret[] = { 0x11, 0x39, 0x3b, 0xb5, 0x48, 0x81, 0x3e, 0x04, 0xfb, 0x54, 0x13, 0x3e, 0xdb, 0xe0, 0x62, 0x64, 0x58, 0xe8, 0x09, 0x81, 0x88, 0x5e, 0x1f, 0xe5, 0xf3, 0x37, 0x7e, 0x8e, 0xbe, 0x9a, 0xfa, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1427 = { .name = "xdh_wei25519_1427", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1427_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1427_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1427_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 381 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1428 for XDH, tcId is 382 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1428_peerpubkey[] = { 0xf8, 0xbd, 0x0e, 0x7c, 0xf6, 0xec, 0x61, 0x86, 0xf2, 0x05, 0xab, 0x03, 0xab, 0x72, 0xc8, 0xf6, 0xb3, 0xcd, 0xe8, 0xf6, 0xad, 0x9b, 0x16, 0x69, 0x16, 0xa0, 0x4d, 0x43, 0xd1, 0xd6, 0xd5, 0x46, }; static const unsigned char xdh_wei25519_1428_privkey[] = { 0x18, 0xe9, 0xa0, 0x5a, 0x20, 0x43, 0x6c, 0xf0, 0xdb, 0xc3, 0xd5, 0xb9, 0x2d, 0xac, 0x8d, 0x99, 0x6e, 0x62, 0xea, 0x11, 0xfb, 0xb3, 0x44, 0x5f, 0x29, 0x19, 0x5f, 0xc7, 0x5a, 0x8b, 0xeb, 0x69, }; static const unsigned char xdh_wei25519_1428_sharedsecret[] = { 0x0a, 0x83, 0xa2, 0x24, 0xfb, 0xfc, 0xbc, 0x5d, 0x0f, 0x07, 0xf6, 0xdd, 0x8e, 0xbb, 0x2e, 0x9b, 0xbe, 0xe8, 0x13, 0x4f, 0x0f, 0xab, 0x26, 0x80, 0x02, 0xce, 0x83, 0x7f, 0x54, 0x95, 0xd8, 0x33, }; static const wycheproof_xdh_test xdh_wei25519_1428 = { .name = "xdh_wei25519_1428", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1428_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1428_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1428_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 382 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1429 for XDH, tcId is 383 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1429_peerpubkey[] = { 0x8d, 0xfe, 0xe4, 0x8a, 0xd8, 0xb3, 0x67, 0x48, 0x8e, 0xa4, 0xda, 0xfc, 0xf7, 0x08, 0x6e, 0x30, 0x53, 0x56, 0xa8, 0x09, 0x01, 0xf8, 0x7c, 0x72, 0x01, 0x49, 0xa5, 0xf5, 0x22, 0x33, 0x74, 0x53, }; static const unsigned char xdh_wei25519_1429_privkey[] = { 0x00, 0xe0, 0x99, 0xeb, 0x23, 0x12, 0x5d, 0xab, 0x5e, 0xc3, 0x5a, 0x41, 0x9d, 0x45, 0x5d, 0x0b, 0xa8, 0xc0, 0x1d, 0xa1, 0x60, 0xf9, 0x35, 0x4e, 0x9f, 0xb2, 0x1e, 0x6a, 0x55, 0xd5, 0x5c, 0x64, }; static const unsigned char xdh_wei25519_1429_sharedsecret[] = { 0x45, 0xdc, 0x39, 0x83, 0x1f, 0x34, 0x71, 0xd7, 0x46, 0x6b, 0xbe, 0x29, 0xc8, 0x14, 0x2b, 0x1a, 0x6d, 0x6b, 0x00, 0xc4, 0x7f, 0xea, 0x02, 0x1b, 0xe2, 0xff, 0xc4, 0x52, 0xd9, 0x04, 0x68, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1429 = { .name = "xdh_wei25519_1429", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1429_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1429_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1429_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 383 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1430 for XDH, tcId is 384 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1430_peerpubkey[] = { 0x8f, 0x68, 0xbf, 0xc5, 0x7d, 0x79, 0x2c, 0x32, 0x2e, 0xbb, 0x27, 0xf4, 0x4a, 0x37, 0xc1, 0xc9, 0x3e, 0x7e, 0xb1, 0x5c, 0x5d, 0x5f, 0xce, 0xdf, 0xfc, 0x1d, 0xe8, 0x50, 0x48, 0x7b, 0x33, 0x72, }; static const unsigned char xdh_wei25519_1430_privkey[] = { 0xb0, 0xca, 0x25, 0x1e, 0x0d, 0xba, 0xe7, 0x32, 0x4a, 0x6c, 0xa0, 0xc2, 0xc8, 0xd6, 0xa8, 0x88, 0xed, 0xd1, 0x2d, 0x14, 0x47, 0xd4, 0x00, 0xa4, 0x7b, 0xcb, 0xa0, 0x04, 0xb6, 0x48, 0x71, 0x6e, }; static const unsigned char xdh_wei25519_1430_sharedsecret[] = { 0xa2, 0x90, 0x05, 0xc6, 0xb9, 0xdb, 0xf1, 0x70, 0x7d, 0xc2, 0xad, 0xce, 0x45, 0x06, 0xb5, 0x58, 0x31, 0xe8, 0x67, 0x5b, 0x7d, 0x2d, 0x54, 0xb0, 0xc1, 0x03, 0x77, 0x41, 0xe3, 0xbc, 0x61, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1430 = { .name = "xdh_wei25519_1430", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1430_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1430_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1430_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 384 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1431 for XDH, tcId is 385 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1431_peerpubkey[] = { 0xff, 0x0f, 0x15, 0xad, 0xea, 0xb3, 0x34, 0xaf, 0xed, 0xa3, 0x91, 0x67, 0x85, 0xdd, 0xd3, 0x8d, 0x25, 0x2d, 0xce, 0x98, 0x76, 0xc2, 0x35, 0x7b, 0x64, 0x3b, 0x5d, 0xc2, 0xc0, 0x6a, 0x3b, 0x1d, }; static const unsigned char xdh_wei25519_1431_privkey[] = { 0xa8, 0xb6, 0x4b, 0x8e, 0xd3, 0x97, 0x77, 0x3b, 0x82, 0x90, 0x42, 0x5c, 0xa5, 0xc2, 0xf7, 0xc3, 0xe5, 0x0f, 0xac, 0x7a, 0x47, 0x81, 0xbd, 0x4a, 0x54, 0xc1, 0x33, 0x78, 0x1c, 0x9a, 0x13, 0x60, }; static const unsigned char xdh_wei25519_1431_sharedsecret[] = { 0x9f, 0x04, 0xe4, 0x2c, 0x1b, 0x2f, 0x31, 0x1d, 0x87, 0xe1, 0x47, 0x0a, 0x47, 0x08, 0xbb, 0xa2, 0x5a, 0xc6, 0xff, 0xd3, 0xf7, 0xb4, 0x86, 0xf9, 0xb6, 0xb5, 0x02, 0xec, 0xbb, 0x2c, 0x00, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1431 = { .name = "xdh_wei25519_1431", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1431_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1431_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1431_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 385 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1432 for XDH, tcId is 386 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1432_peerpubkey[] = { 0x10, 0x76, 0xfd, 0xc8, 0x27, 0xf2, 0x55, 0x0e, 0xe9, 0x5f, 0xf9, 0xa1, 0x5d, 0x04, 0x4a, 0xed, 0xfa, 0xc6, 0x5b, 0x5e, 0x9b, 0xa8, 0x09, 0xf6, 0x24, 0x38, 0xcc, 0xea, 0x54, 0x63, 0x7a, 0x29, }; static const unsigned char xdh_wei25519_1432_privkey[] = { 0xd0, 0xcd, 0x0d, 0xb5, 0x1f, 0xf2, 0x32, 0xaf, 0xa0, 0x91, 0x9d, 0x31, 0x06, 0xfc, 0xb3, 0xa8, 0xae, 0x58, 0x1e, 0xf1, 0x2d, 0x09, 0xc8, 0x77, 0xaa, 0x6f, 0x31, 0xef, 0x74, 0xee, 0xd0, 0x68, }; static const unsigned char xdh_wei25519_1432_sharedsecret[] = { 0x68, 0x80, 0x00, 0xbd, 0x60, 0xaf, 0x37, 0x5b, 0x4e, 0xea, 0xc4, 0xa7, 0xd0, 0xe0, 0x78, 0x2c, 0x0e, 0x61, 0x88, 0xea, 0xbd, 0xc6, 0x08, 0xb7, 0x32, 0xf4, 0x9b, 0x4d, 0x6c, 0xca, 0xb4, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1432 = { .name = "xdh_wei25519_1432", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1432_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1432_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1432_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 386 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1433 for XDH, tcId is 387 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1433_peerpubkey[] = { 0xed, 0x1c, 0x82, 0x08, 0x2b, 0x74, 0xcc, 0x2a, 0xae, 0xbf, 0x3d, 0xc7, 0x72, 0xba, 0x09, 0x55, 0x7c, 0x0f, 0xc1, 0x41, 0x39, 0xa8, 0x81, 0x4f, 0xc5, 0xf9, 0x37, 0x0b, 0xb8, 0xe9, 0x88, 0x58, }; static const unsigned char xdh_wei25519_1433_privkey[] = { 0x20, 0x4a, 0x3b, 0x56, 0x52, 0x85, 0x4f, 0xf4, 0x8e, 0x25, 0xcd, 0x38, 0x5c, 0xab, 0xe6, 0x36, 0x0f, 0x64, 0xce, 0x44, 0xfe, 0xa5, 0x62, 0x1d, 0xb1, 0xfa, 0x2f, 0x6e, 0x21, 0x9f, 0x30, 0x63, }; static const unsigned char xdh_wei25519_1433_sharedsecret[] = { 0xe0, 0xa8, 0x2f, 0x31, 0x30, 0x46, 0x02, 0x4b, 0x3c, 0xea, 0x93, 0xb9, 0x8e, 0x2f, 0x8e, 0xcf, 0x22, 0x8c, 0xbf, 0xab, 0x8a, 0xe1, 0x0b, 0x10, 0x29, 0x2c, 0x32, 0xfe, 0xcc, 0xff, 0x16, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1433 = { .name = "xdh_wei25519_1433", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1433_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1433_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1433_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 387 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1434 for XDH, tcId is 388 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1434_peerpubkey[] = { 0x12, 0xe1, 0x58, 0x9a, 0x34, 0x09, 0x4a, 0xf5, 0xf1, 0x21, 0xc9, 0xbd, 0x3c, 0x11, 0x19, 0xf2, 0xb1, 0xf0, 0x52, 0x64, 0xc5, 0x73, 0xf6, 0x67, 0xa7, 0x48, 0x68, 0x3c, 0x56, 0x33, 0xa4, 0x7e, }; static const unsigned char xdh_wei25519_1434_privkey[] = { 0x88, 0x10, 0x9b, 0x1d, 0x0e, 0x7b, 0xac, 0xe4, 0x4d, 0x41, 0xa1, 0x5d, 0x5b, 0xcb, 0xcd, 0x36, 0x96, 0x8c, 0x5b, 0x8b, 0x47, 0xc0, 0xa2, 0xc6, 0x06, 0xb5, 0x7c, 0x4a, 0x68, 0xcc, 0x5f, 0x66, }; static const unsigned char xdh_wei25519_1434_sharedsecret[] = { 0x1f, 0xcc, 0x50, 0x33, 0x3e, 0xb9, 0x07, 0x06, 0x93, 0x5f, 0x25, 0xb0, 0x2f, 0x43, 0x7b, 0xfd, 0x22, 0xb6, 0xb1, 0x6c, 0xc3, 0x75, 0xaf, 0xff, 0x8a, 0x1a, 0xa7, 0x43, 0x2f, 0xb8, 0x62, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1434 = { .name = "xdh_wei25519_1434", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1434_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1434_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1434_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 388 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1435 for XDH, tcId is 389 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1435_peerpubkey[] = { 0x15, 0x1f, 0x54, 0xa8, 0xa8, 0x99, 0x71, 0x17, 0x57, 0xb3, 0xb1, 0x18, 0xfc, 0x55, 0x01, 0x77, 0x9d, 0x62, 0x1d, 0x25, 0x22, 0x7a, 0xf5, 0x3d, 0x0a, 0xf0, 0x0b, 0x75, 0x83, 0xba, 0x88, 0x24, }; static const unsigned char xdh_wei25519_1435_privkey[] = { 0x50, 0x82, 0xe4, 0x97, 0xc4, 0x29, 0x79, 0xcd, 0xbf, 0xdd, 0x1b, 0x3b, 0x06, 0x53, 0xcf, 0xea, 0x6f, 0x2c, 0xeb, 0x7d, 0x07, 0x63, 0x9e, 0xbf, 0x35, 0x41, 0x86, 0x6b, 0xb6, 0x0e, 0xdb, 0x62, }; static const unsigned char xdh_wei25519_1435_sharedsecret[] = { 0xfa, 0xc3, 0x0a, 0x74, 0xf4, 0xca, 0x99, 0xf6, 0xcf, 0x23, 0x30, 0x65, 0xe9, 0xac, 0xd8, 0x26, 0x69, 0x0c, 0xab, 0x36, 0x4b, 0xf6, 0x93, 0x20, 0xb5, 0x80, 0x95, 0x78, 0x3e, 0xd7, 0x6e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1435 = { .name = "xdh_wei25519_1435", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1435_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1435_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1435_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 389 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1436 for XDH, tcId is 390 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1436_peerpubkey[] = { 0xa8, 0x19, 0xc6, 0x67, 0xed, 0x46, 0x6b, 0xd9, 0xa6, 0x9e, 0xa0, 0xb3, 0x86, 0x42, 0xee, 0x8e, 0x53, 0xf4, 0x0a, 0x50, 0x37, 0x7b, 0x05, 0x1e, 0xb5, 0x90, 0x14, 0x2d, 0xd2, 0x7e, 0x34, 0x31, }; static const unsigned char xdh_wei25519_1436_privkey[] = { 0xf8, 0x5a, 0x8d, 0xb4, 0x4f, 0x9e, 0x56, 0xb1, 0x17, 0x29, 0xf5, 0x16, 0x82, 0xa9, 0x76, 0x9f, 0xc5, 0x04, 0xf9, 0x35, 0x97, 0xcb, 0xe3, 0x94, 0x44, 0x61, 0x6b, 0x22, 0x45, 0x32, 0x10, 0x6e, }; static const unsigned char xdh_wei25519_1436_sharedsecret[] = { 0x17, 0xf6, 0x54, 0x3c, 0x47, 0x27, 0xe7, 0xf1, 0x29, 0xee, 0x82, 0x47, 0x76, 0x55, 0x57, 0x76, 0x35, 0xc1, 0x25, 0xa2, 0x0c, 0x3d, 0xc8, 0xba, 0x20, 0x6c, 0xa3, 0xcc, 0x48, 0x54, 0xca, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1436 = { .name = "xdh_wei25519_1436", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1436_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1436_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1436_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 390 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1437 for XDH, tcId is 391 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1437_peerpubkey[] = { 0x40, 0xb0, 0x53, 0xd0, 0x56, 0x66, 0x89, 0x82, 0xa1, 0xf5, 0x50, 0xbe, 0x95, 0xe1, 0x63, 0x48, 0xe3, 0x03, 0x94, 0x5f, 0x53, 0xa3, 0xac, 0x64, 0x49, 0x1a, 0x9a, 0x56, 0xd4, 0x09, 0x5b, 0x71, }; static const unsigned char xdh_wei25519_1437_privkey[] = { 0x50, 0x5a, 0x07, 0x66, 0x41, 0xfa, 0xc3, 0x98, 0xfc, 0x7d, 0x8c, 0x62, 0x99, 0x37, 0xf4, 0x2d, 0xb5, 0x59, 0xdb, 0x5e, 0x12, 0x05, 0x2a, 0xd3, 0x66, 0xd4, 0x6d, 0x7b, 0x20, 0xe9, 0x57, 0x69, }; static const unsigned char xdh_wei25519_1437_sharedsecret[] = { 0x88, 0x9a, 0x8d, 0x61, 0x1e, 0x0a, 0x7d, 0xa7, 0x14, 0x75, 0xe7, 0xc9, 0x3a, 0x2d, 0x7f, 0x6f, 0x72, 0x28, 0xc7, 0x87, 0xa0, 0x0e, 0xe5, 0xcf, 0x55, 0x47, 0x4a, 0xdc, 0x37, 0x6f, 0xf7, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1437 = { .name = "xdh_wei25519_1437", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1437_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1437_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1437_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 391 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1438 for XDH, tcId is 392 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1438_peerpubkey[] = { 0xe7, 0xdd, 0x05, 0x49, 0xa7, 0x65, 0xbb, 0xef, 0x34, 0xbe, 0x2e, 0x8d, 0xa1, 0x8a, 0x1b, 0xc1, 0xb9, 0x89, 0xa8, 0xb0, 0x61, 0x4d, 0x35, 0x8e, 0xbf, 0x38, 0xc1, 0x2a, 0x9c, 0xa6, 0x40, 0x79, }; static const unsigned char xdh_wei25519_1438_privkey[] = { 0xe8, 0xdb, 0x2b, 0xf1, 0xaf, 0x5b, 0x89, 0x07, 0x42, 0x07, 0x89, 0xc5, 0x6e, 0x71, 0x41, 0x47, 0x06, 0xae, 0xf0, 0xd9, 0xf6, 0xff, 0xae, 0xd0, 0xc2, 0x49, 0xc3, 0xb7, 0xab, 0x14, 0xbf, 0x65, }; static const unsigned char xdh_wei25519_1438_sharedsecret[] = { 0x37, 0x23, 0x2f, 0xb3, 0x97, 0xaf, 0x27, 0xf5, 0xfb, 0x5c, 0xa4, 0x93, 0x28, 0x4f, 0xf1, 0xc5, 0xd2, 0x57, 0x86, 0xb0, 0xd7, 0x16, 0xc7, 0x3b, 0x33, 0xac, 0xa8, 0xd4, 0x22, 0x65, 0xf3, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_1438 = { .name = "xdh_wei25519_1438", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1438_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1438_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1438_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 392 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1439 for XDH, tcId is 393 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1439_peerpubkey[] = { 0x1e, 0xe1, 0xb9, 0xa7, 0x46, 0x04, 0xac, 0x31, 0xc3, 0xdb, 0x83, 0x28, 0x01, 0x70, 0xe3, 0x81, 0x15, 0x04, 0xfc, 0xc7, 0x8c, 0x76, 0x26, 0xb5, 0xb2, 0xc0, 0x7a, 0x99, 0xd8, 0x0d, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_1439_privkey[] = { 0xc0, 0x06, 0xab, 0x17, 0x62, 0x72, 0x08, 0x82, 0x01, 0x7d, 0x10, 0x6b, 0x9a, 0x46, 0x75, 0xfd, 0xd4, 0x70, 0x05, 0x65, 0x71, 0x55, 0xc9, 0x0c, 0xa6, 0x1d, 0x4c, 0xbf, 0x7c, 0xc4, 0xf9, 0x73, }; static const unsigned char xdh_wei25519_1439_sharedsecret[] = { 0xa1, 0xb3, 0x04, 0x18, 0x43, 0x6b, 0xa1, 0x90, 0x88, 0x04, 0xff, 0xcc, 0xe1, 0xbe, 0x2c, 0xdc, 0xf5, 0x0c, 0x61, 0xa8, 0xe3, 0x93, 0x8d, 0x95, 0xc7, 0x90, 0xab, 0xdb, 0x78, 0x6b, 0x80, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1439 = { .name = "xdh_wei25519_1439", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1439_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1439_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1439_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 393 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1440 for XDH, tcId is 394 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1440_peerpubkey[] = { 0xf2, 0x26, 0xc2, 0xd6, 0xbd, 0x78, 0x31, 0xed, 0xa1, 0xb5, 0x1e, 0xe5, 0xae, 0xc2, 0x94, 0x43, 0xa5, 0x07, 0xef, 0x9f, 0x7a, 0x04, 0xe2, 0x34, 0x0f, 0x34, 0x9d, 0xbf, 0x14, 0x93, 0x38, 0x44, }; static const unsigned char xdh_wei25519_1440_privkey[] = { 0xd0, 0x71, 0x80, 0x7d, 0x60, 0x79, 0x53, 0xda, 0x43, 0x2d, 0x85, 0x74, 0xd5, 0xf3, 0xf4, 0x20, 0x67, 0x6d, 0xaf, 0xdb, 0xc6, 0xa2, 0x85, 0xa3, 0x6e, 0x1d, 0x73, 0x76, 0x24, 0xd7, 0x7c, 0x75, }; static const unsigned char xdh_wei25519_1440_sharedsecret[] = { 0xa5, 0x97, 0x6f, 0xda, 0x89, 0x95, 0x4a, 0x81, 0xe4, 0x42, 0x10, 0x7f, 0x9e, 0x41, 0x6a, 0x2b, 0x4b, 0x48, 0x1b, 0xbd, 0x46, 0x54, 0xeb, 0xc0, 0xc7, 0xb5, 0x7a, 0x78, 0xb4, 0x5b, 0x49, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_1440 = { .name = "xdh_wei25519_1440", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1440_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1440_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1440_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 394 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1441 for XDH, tcId is 395 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1441_peerpubkey[] = { 0xc5, 0x19, 0x73, 0x12, 0xde, 0x3a, 0x7a, 0x3e, 0xe1, 0x1b, 0x29, 0x87, 0x3b, 0xae, 0x3f, 0xc8, 0xc8, 0x51, 0x09, 0xc6, 0x67, 0x84, 0x80, 0x4f, 0x89, 0x43, 0x5d, 0xb2, 0x10, 0xfc, 0xc2, 0x4b, }; static const unsigned char xdh_wei25519_1441_privkey[] = { 0x30, 0x4b, 0x52, 0x6f, 0x6f, 0xe9, 0x94, 0x73, 0x19, 0x80, 0xc0, 0x97, 0x55, 0x29, 0xbc, 0xa4, 0xd0, 0x61, 0x01, 0x7f, 0xbe, 0xc5, 0x6f, 0x60, 0x70, 0xd4, 0x26, 0x78, 0xd3, 0xe1, 0x11, 0x77, }; static const unsigned char xdh_wei25519_1441_sharedsecret[] = { 0x55, 0xb5, 0xb5, 0xeb, 0x38, 0xb1, 0x27, 0x61, 0x7f, 0xfe, 0x00, 0x05, 0x6d, 0x84, 0xd3, 0x5a, 0x50, 0x71, 0xd1, 0x87, 0x83, 0xe3, 0xa8, 0x2b, 0x5f, 0x4e, 0x13, 0x1b, 0x15, 0x38, 0xb1, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1441 = { .name = "xdh_wei25519_1441", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1441_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1441_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1441_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 395 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1442 for XDH, tcId is 396 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1442_peerpubkey[] = { 0x59, 0x0e, 0xd0, 0xb8, 0x79, 0x31, 0x9c, 0x38, 0xa1, 0x99, 0x62, 0xa5, 0xd2, 0x16, 0xff, 0x2b, 0xfa, 0xf3, 0x35, 0x55, 0x51, 0x88, 0x77, 0x96, 0x9c, 0x20, 0xc0, 0x54, 0xcb, 0xe4, 0x3e, 0x56, }; static const unsigned char xdh_wei25519_1442_privkey[] = { 0x98, 0x2d, 0xdf, 0x2c, 0x03, 0x57, 0x89, 0x37, 0x9b, 0x8a, 0x58, 0x91, 0x7d, 0x5c, 0x3c, 0x6c, 0x06, 0x1b, 0x50, 0x3b, 0x19, 0xa0, 0x02, 0x8e, 0x01, 0x89, 0x4c, 0x2e, 0xb3, 0x71, 0xd0, 0x79, }; static const unsigned char xdh_wei25519_1442_sharedsecret[] = { 0x00, 0x80, 0xe5, 0xb9, 0x98, 0x5a, 0x96, 0x0a, 0x83, 0x21, 0x33, 0x81, 0x2a, 0x7a, 0xb9, 0x95, 0x1c, 0x6b, 0x2c, 0x75, 0x89, 0x4d, 0xeb, 0x3e, 0x35, 0x50, 0x91, 0x90, 0xa6, 0xbd, 0xf4, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1442 = { .name = "xdh_wei25519_1442", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1442_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1442_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1442_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 396 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1443 for XDH, tcId is 397 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1443_peerpubkey[] = { 0x7c, 0x5f, 0x01, 0x43, 0xa6, 0x68, 0x2f, 0x60, 0xcc, 0xad, 0x16, 0xf2, 0x11, 0x50, 0xc7, 0xbb, 0x5b, 0xc6, 0xf8, 0x07, 0x25, 0x4d, 0x08, 0xb3, 0x53, 0xfc, 0x96, 0xce, 0x07, 0xbc, 0xeb, 0x6f, }; static const unsigned char xdh_wei25519_1443_privkey[] = { 0x78, 0xcc, 0x3e, 0xc0, 0x68, 0x7e, 0x3e, 0x53, 0xd9, 0xce, 0xc5, 0x6b, 0x79, 0xd1, 0x1b, 0xf0, 0x49, 0xd1, 0x73, 0xf1, 0x27, 0xf5, 0xb4, 0x0f, 0xae, 0x12, 0x2a, 0x6d, 0x00, 0x16, 0xcd, 0x76, }; static const unsigned char xdh_wei25519_1443_sharedsecret[] = { 0x52, 0x41, 0x22, 0x22, 0x26, 0x63, 0x8c, 0x4b, 0xbb, 0xc9, 0x87, 0x92, 0xcd, 0xbd, 0x74, 0x88, 0x2c, 0xa2, 0xe0, 0x8a, 0xa2, 0xed, 0xf3, 0x13, 0x07, 0x04, 0x25, 0x03, 0x10, 0x09, 0xe9, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1443 = { .name = "xdh_wei25519_1443", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1443_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1443_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1443_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 397 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1444 for XDH, tcId is 398 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1444_peerpubkey[] = { 0x01, 0x08, 0x50, 0xa0, 0x97, 0x4d, 0x3e, 0x89, 0xc0, 0x29, 0xd2, 0x52, 0xb4, 0x6f, 0x73, 0x95, 0x48, 0x29, 0x4c, 0x0f, 0x9a, 0x23, 0x18, 0x38, 0x63, 0xf9, 0x45, 0x5b, 0x95, 0x59, 0xc2, 0x11, }; static const unsigned char xdh_wei25519_1444_privkey[] = { 0xc8, 0x6f, 0xc7, 0x66, 0x50, 0xcf, 0x3b, 0x58, 0x83, 0x7a, 0xa0, 0xf0, 0x63, 0x35, 0x60, 0x41, 0x52, 0x41, 0xc6, 0xc4, 0xf8, 0xf2, 0x93, 0xba, 0x02, 0x22, 0xb7, 0xd6, 0xa3, 0x87, 0x57, 0x73, }; static const unsigned char xdh_wei25519_1444_sharedsecret[] = { 0x63, 0x78, 0x81, 0x90, 0xb1, 0x0d, 0x74, 0x51, 0xf5, 0xfc, 0x2b, 0x82, 0xc4, 0x21, 0x15, 0x1d, 0xb4, 0xf3, 0xe2, 0x27, 0x82, 0xe3, 0x92, 0xda, 0x6d, 0x8d, 0x3a, 0xba, 0x2c, 0x34, 0x43, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1444 = { .name = "xdh_wei25519_1444", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1444_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1444_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1444_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 398 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1445 for XDH, tcId is 399 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1445_peerpubkey[] = { 0xad, 0x1d, 0xd8, 0x2c, 0x23, 0xd6, 0xa0, 0xd5, 0xfe, 0x0f, 0x2a, 0x45, 0x61, 0xd1, 0xc1, 0x67, 0x33, 0xa3, 0xe1, 0xe6, 0xaf, 0xa6, 0xd9, 0x02, 0xdd, 0x07, 0x7d, 0xc4, 0x3a, 0x96, 0x16, 0x28, }; static const unsigned char xdh_wei25519_1445_privkey[] = { 0x88, 0x8d, 0x51, 0xc0, 0xa2, 0x23, 0x03, 0x69, 0xe5, 0xb6, 0x5a, 0x81, 0x4b, 0x32, 0x13, 0xdd, 0xe2, 0xe6, 0x2f, 0x2e, 0xb9, 0x5d, 0x09, 0x71, 0x48, 0x6b, 0x73, 0x3e, 0x4f, 0x90, 0xc1, 0x74, }; static const unsigned char xdh_wei25519_1445_sharedsecret[] = { 0xe4, 0xb4, 0x09, 0x74, 0xa1, 0x66, 0xac, 0x49, 0xed, 0x83, 0x17, 0x15, 0xc0, 0x71, 0xc7, 0x51, 0x75, 0x27, 0x44, 0xb8, 0x91, 0x46, 0x5e, 0x6c, 0x45, 0x00, 0x18, 0x55, 0xaa, 0xcd, 0xc3, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1445 = { .name = "xdh_wei25519_1445", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1445_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1445_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1445_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 399 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1446 for XDH, tcId is 400 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1446_peerpubkey[] = { 0xd0, 0xc0, 0xd6, 0x39, 0x3c, 0x41, 0xf4, 0xd7, 0xe0, 0xd5, 0xe8, 0x50, 0xb7, 0x71, 0x6f, 0x40, 0x1e, 0xda, 0x1e, 0x02, 0x8a, 0x4e, 0xd4, 0xa0, 0x5b, 0xea, 0x8b, 0xf8, 0x1a, 0xcf, 0xd9, 0x30, }; static const unsigned char xdh_wei25519_1446_privkey[] = { 0x68, 0xbe, 0xd4, 0x25, 0xd5, 0x34, 0x31, 0x55, 0x84, 0xd8, 0x0f, 0x79, 0xda, 0x6e, 0xab, 0x9b, 0x7e, 0x60, 0x36, 0xb5, 0x1f, 0xe6, 0x2e, 0x1a, 0xd9, 0x33, 0xe2, 0x66, 0x64, 0x0b, 0x46, 0x73, }; static const unsigned char xdh_wei25519_1446_sharedsecret[] = { 0x51, 0x4a, 0x4c, 0xd0, 0x67, 0x6f, 0x1c, 0x31, 0x01, 0xc8, 0xc4, 0x5c, 0x17, 0xad, 0x41, 0x6b, 0xd3, 0x3e, 0x20, 0xa4, 0x05, 0x54, 0x4f, 0xc1, 0xa6, 0x04, 0x49, 0xab, 0xb2, 0x2f, 0xa1, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1446 = { .name = "xdh_wei25519_1446", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1446_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1446_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1446_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 400 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1447 for XDH, tcId is 401 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1447_peerpubkey[] = { 0x0f, 0x46, 0x01, 0x00, 0xd8, 0x8a, 0x1d, 0x31, 0x6d, 0xff, 0x02, 0xd1, 0xb2, 0x2f, 0xfb, 0x2e, 0x42, 0xd9, 0x9d, 0x0b, 0x92, 0x47, 0x4f, 0xc3, 0xec, 0x7d, 0x62, 0x56, 0x7d, 0x0c, 0xf1, 0x12, }; static const unsigned char xdh_wei25519_1447_privkey[] = { 0x98, 0xff, 0x28, 0x56, 0xef, 0x44, 0xb4, 0xfa, 0x14, 0xd8, 0x67, 0x82, 0xea, 0x79, 0x38, 0x28, 0xbd, 0xf6, 0xf1, 0xef, 0x9b, 0x66, 0x9c, 0xac, 0x1a, 0xae, 0x33, 0x8a, 0x7b, 0xb6, 0x93, 0x76, }; static const unsigned char xdh_wei25519_1447_sharedsecret[] = { 0xed, 0x83, 0xe8, 0x10, 0xce, 0x5f, 0xf0, 0x86, 0x8f, 0x85, 0x89, 0x62, 0x3b, 0xb1, 0x34, 0x78, 0xde, 0xc1, 0xc2, 0x23, 0x26, 0xc9, 0x27, 0x65, 0xae, 0x5e, 0x48, 0xc8, 0x4b, 0xba, 0xbb, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1447 = { .name = "xdh_wei25519_1447", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1447_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1447_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1447_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 401 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1448 for XDH, tcId is 402 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1448_peerpubkey[] = { 0x13, 0x75, 0x6a, 0x41, 0x1f, 0xf3, 0xae, 0x0c, 0x39, 0x22, 0x2d, 0xde, 0x08, 0x10, 0xf0, 0x8c, 0x43, 0x24, 0x63, 0x16, 0x2d, 0x81, 0xef, 0x06, 0x10, 0x71, 0x24, 0x9a, 0x48, 0x43, 0x9e, 0x15, }; static const unsigned char xdh_wei25519_1448_privkey[] = { 0xb0, 0xcd, 0xbf, 0xdd, 0x98, 0xbd, 0x98, 0x8d, 0x7c, 0x6a, 0x53, 0x04, 0x55, 0xc5, 0x1c, 0x57, 0xdd, 0x33, 0xfd, 0x2c, 0x7a, 0xee, 0x39, 0x61, 0x97, 0x1b, 0xd3, 0xa3, 0x13, 0x88, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_1448_sharedsecret[] = { 0xff, 0x94, 0x86, 0x21, 0x17, 0xd3, 0xc6, 0xed, 0xc9, 0xdd, 0x5f, 0x48, 0x52, 0xfa, 0x8a, 0x58, 0x94, 0x52, 0xb9, 0x24, 0xca, 0x8a, 0x75, 0xcb, 0x23, 0xb3, 0xd6, 0x8d, 0xfe, 0xd8, 0x8c, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1448 = { .name = "xdh_wei25519_1448", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1448_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1448_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1448_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 402 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1449 for XDH, tcId is 403 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1449_peerpubkey[] = { 0x8f, 0xc1, 0xfa, 0xe9, 0x69, 0xa6, 0x18, 0x54, 0x04, 0xdb, 0x22, 0x74, 0x9e, 0xf6, 0xd2, 0x25, 0xde, 0x86, 0x77, 0x3a, 0x4d, 0x1b, 0xf3, 0x85, 0x7e, 0xb8, 0xfb, 0xbd, 0x82, 0x9a, 0x1b, 0x47, }; static const unsigned char xdh_wei25519_1449_privkey[] = { 0xe0, 0x67, 0x76, 0x44, 0xed, 0x49, 0x35, 0xf0, 0x1e, 0x05, 0x2e, 0x99, 0x67, 0x30, 0x2d, 0x0f, 0xb7, 0x8f, 0xf2, 0x2b, 0xb9, 0x2f, 0xba, 0xe0, 0x60, 0x5f, 0x3e, 0xe5, 0x4e, 0x2f, 0x68, 0x78, }; static const unsigned char xdh_wei25519_1449_sharedsecret[] = { 0x1c, 0x94, 0x86, 0x8b, 0xc8, 0xac, 0xb3, 0x13, 0x74, 0x98, 0x20, 0x9b, 0x28, 0x12, 0xfe, 0xb5, 0x35, 0x01, 0x38, 0x9f, 0x5a, 0xa3, 0x7f, 0xec, 0xbf, 0xd5, 0xcb, 0x54, 0xe1, 0x35, 0x8e, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1449 = { .name = "xdh_wei25519_1449", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1449_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1449_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1449_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 403 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1450 for XDH, tcId is 404 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1450_peerpubkey[] = { 0x7b, 0xab, 0x08, 0x91, 0xec, 0xb9, 0xe7, 0x2a, 0x15, 0x77, 0x1f, 0x0a, 0x4f, 0xff, 0x90, 0x54, 0x70, 0x24, 0x20, 0x63, 0x39, 0xc3, 0x40, 0xb1, 0xa2, 0xfd, 0xb5, 0x3b, 0xcf, 0xb8, 0x6b, 0x59, }; static const unsigned char xdh_wei25519_1450_privkey[] = { 0x88, 0x7b, 0x61, 0x55, 0x38, 0x43, 0xca, 0x99, 0xad, 0x1c, 0xa9, 0x22, 0x53, 0xa6, 0xfe, 0x08, 0x2b, 0x82, 0x49, 0x47, 0x52, 0x51, 0x3f, 0xd5, 0x3f, 0xf6, 0x53, 0x0f, 0x54, 0xc4, 0x05, 0x72, }; static const unsigned char xdh_wei25519_1450_sharedsecret[] = { 0xad, 0xbf, 0x3b, 0x43, 0x9b, 0x16, 0xdb, 0xc6, 0x53, 0x57, 0x8f, 0x53, 0x37, 0x4e, 0xd3, 0xa8, 0x6f, 0x9c, 0x0b, 0xf1, 0xf7, 0x36, 0x57, 0x33, 0x49, 0x77, 0x3b, 0xc3, 0xb8, 0xd6, 0x07, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1450 = { .name = "xdh_wei25519_1450", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1450_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1450_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1450_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 404 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1451 for XDH, tcId is 405 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1451_peerpubkey[] = { 0x10, 0x2e, 0x95, 0xea, 0xdc, 0xa7, 0xc3, 0xc2, 0x8e, 0x5d, 0x52, 0x33, 0x6c, 0x85, 0x7b, 0xad, 0x99, 0xea, 0x24, 0x6f, 0x29, 0x9b, 0x06, 0x33, 0x4f, 0x40, 0x12, 0x76, 0xf4, 0x9c, 0xa8, 0x14, }; static const unsigned char xdh_wei25519_1451_privkey[] = { 0x00, 0x61, 0x5e, 0x46, 0x97, 0x01, 0x4f, 0xc1, 0x24, 0x84, 0xef, 0x53, 0xa1, 0x44, 0x02, 0x06, 0x41, 0x0a, 0x8d, 0xf7, 0x8c, 0xaa, 0x0b, 0xff, 0xf8, 0x21, 0x61, 0xdb, 0x83, 0xfe, 0xa5, 0x74, }; static const unsigned char xdh_wei25519_1451_sharedsecret[] = { 0x39, 0x52, 0xef, 0xb9, 0x35, 0x73, 0xae, 0x9c, 0xe2, 0x16, 0x2d, 0x10, 0xe4, 0xb8, 0xc4, 0x64, 0x35, 0x85, 0x9f, 0x3f, 0x27, 0x78, 0xdb, 0x89, 0xf7, 0x2b, 0xc5, 0x79, 0xe6, 0x95, 0xcb, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1451 = { .name = "xdh_wei25519_1451", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1451_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1451_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1451_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 405 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1452 for XDH, tcId is 406 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1452_peerpubkey[] = { 0x35, 0x48, 0xc1, 0x6b, 0xf3, 0x1a, 0xfd, 0xcd, 0x44, 0x5a, 0xd9, 0xbe, 0xf0, 0xe6, 0x0d, 0x7b, 0xd6, 0x19, 0x5a, 0xa5, 0x91, 0xca, 0x8c, 0x82, 0x81, 0x3c, 0xd7, 0xd4, 0x46, 0x22, 0x67, 0x20, }; static const unsigned char xdh_wei25519_1452_privkey[] = { 0x58, 0x17, 0x51, 0x13, 0x55, 0x0f, 0xaa, 0xd5, 0x64, 0x58, 0xfb, 0x37, 0x5a, 0x6c, 0xb3, 0xf0, 0x5d, 0xf2, 0xf6, 0xff, 0x3c, 0x4e, 0xe0, 0x9d, 0x4a, 0x6b, 0xa6, 0x43, 0xe0, 0x22, 0xd1, 0x7a, }; static const unsigned char xdh_wei25519_1452_sharedsecret[] = { 0x96, 0x12, 0x8f, 0x92, 0x9f, 0xc0, 0x3c, 0x12, 0x69, 0xd4, 0x29, 0xf6, 0x09, 0xa1, 0xa8, 0xac, 0xac, 0x7a, 0x75, 0x8e, 0x34, 0x46, 0xa1, 0x25, 0xec, 0xf4, 0xa3, 0x59, 0xa0, 0xe3, 0x7b, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1452 = { .name = "xdh_wei25519_1452", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1452_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1452_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1452_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 406 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1453 for XDH, tcId is 407 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1453_peerpubkey[] = { 0xba, 0x74, 0xe7, 0x66, 0xd4, 0x48, 0x55, 0xec, 0x93, 0xbd, 0x44, 0x1a, 0xa4, 0x10, 0x58, 0xa4, 0xc4, 0xad, 0x2b, 0xe6, 0x3c, 0x63, 0x9a, 0x3f, 0x9a, 0x87, 0xbd, 0xe5, 0x1e, 0xea, 0xba, 0x20, }; static const unsigned char xdh_wei25519_1453_privkey[] = { 0x00, 0x97, 0x38, 0xe1, 0xe6, 0xef, 0xef, 0x9e, 0x2c, 0xad, 0x8b, 0x41, 0x6f, 0xe9, 0x0a, 0x09, 0x8e, 0xb5, 0xcb, 0x01, 0x99, 0xf2, 0xdf, 0x52, 0x18, 0x16, 0x6c, 0x7b, 0x18, 0x1e, 0xa0, 0x79, }; static const unsigned char xdh_wei25519_1453_sharedsecret[] = { 0xfe, 0xc3, 0xe9, 0x4c, 0xb5, 0xf3, 0x16, 0x62, 0x5b, 0x09, 0x0c, 0x2c, 0x82, 0x08, 0x28, 0xce, 0x0f, 0x3e, 0xe4, 0x31, 0xe8, 0xd6, 0xe1, 0x2a, 0xbc, 0xcc, 0x7e, 0xf2, 0xbd, 0x0b, 0xe8, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_1453 = { .name = "xdh_wei25519_1453", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1453_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1453_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1453_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 407 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1454 for XDH, tcId is 408 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1454_peerpubkey[] = { 0x9a, 0x5a, 0x1d, 0x37, 0xe5, 0x01, 0x0c, 0x35, 0x6a, 0xa8, 0x0a, 0xfb, 0x34, 0x7c, 0x3d, 0x61, 0x35, 0x42, 0xdd, 0xfa, 0x0b, 0xe7, 0xab, 0xb8, 0xe8, 0xcd, 0xcd, 0x66, 0x74, 0x41, 0x14, 0x49, }; static const unsigned char xdh_wei25519_1454_privkey[] = { 0xc8, 0x20, 0x19, 0x15, 0x9b, 0xe7, 0x92, 0x74, 0x7a, 0x39, 0xf3, 0x88, 0xea, 0x48, 0xa8, 0xc5, 0x68, 0x59, 0x4e, 0x33, 0x83, 0x27, 0x3e, 0x51, 0x10, 0x07, 0x21, 0xb3, 0x76, 0xe8, 0xba, 0x73, }; static const unsigned char xdh_wei25519_1454_sharedsecret[] = { 0x96, 0x90, 0x3b, 0xac, 0x9d, 0xc6, 0x0b, 0x61, 0x78, 0xd7, 0x34, 0x89, 0x0c, 0x25, 0xdb, 0x4b, 0xed, 0x9e, 0xa4, 0xdb, 0xcf, 0x6f, 0xcb, 0xcd, 0xc9, 0x0e, 0x6f, 0x56, 0x94, 0xc8, 0xb2, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1454 = { .name = "xdh_wei25519_1454", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1454_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1454_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1454_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 408 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1455 for XDH, tcId is 409 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1455_peerpubkey[] = { 0x63, 0x08, 0x47, 0xe2, 0x82, 0x74, 0xdb, 0xae, 0x54, 0x91, 0x21, 0x03, 0x03, 0xc8, 0x5a, 0x35, 0x90, 0x74, 0xee, 0x74, 0x29, 0x57, 0xb0, 0xfc, 0x3c, 0x9f, 0xf5, 0x5d, 0x9e, 0x01, 0x9a, 0x50, }; static const unsigned char xdh_wei25519_1455_privkey[] = { 0x10, 0xac, 0x9f, 0x83, 0x83, 0x26, 0x2e, 0xf2, 0x80, 0xfa, 0xac, 0x1e, 0x4d, 0xa1, 0x5a, 0x7d, 0xe4, 0xf2, 0xcb, 0x74, 0xaf, 0x33, 0xb5, 0x0e, 0x0d, 0x82, 0xdc, 0xb8, 0x5d, 0x8b, 0xcb, 0x70, }; static const unsigned char xdh_wei25519_1455_sharedsecret[] = { 0x50, 0x05, 0x0d, 0x0a, 0xb1, 0xdd, 0xd2, 0xdd, 0x90, 0xc4, 0x60, 0xab, 0x8f, 0x09, 0xe1, 0xf8, 0x0e, 0x37, 0xca, 0xe5, 0x7d, 0x42, 0x31, 0xad, 0xae, 0x10, 0xc1, 0x0a, 0x4a, 0x2b, 0x00, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1455 = { .name = "xdh_wei25519_1455", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1455_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1455_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1455_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 409 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1456 for XDH, tcId is 410 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1456_peerpubkey[] = { 0x11, 0x74, 0x9b, 0x00, 0xa4, 0x50, 0x67, 0xaf, 0x2c, 0x7e, 0x7d, 0x50, 0xf8, 0xd1, 0x78, 0xd5, 0xa9, 0xfe, 0xdb, 0x8f, 0x1b, 0x69, 0xb2, 0x39, 0x76, 0x38, 0x85, 0xbc, 0x61, 0x1b, 0x13, 0x6c, }; static const unsigned char xdh_wei25519_1456_privkey[] = { 0xb8, 0x4c, 0x09, 0x83, 0x82, 0xf6, 0xe3, 0x7d, 0x51, 0x0c, 0xc3, 0x3e, 0x62, 0xdd, 0xc6, 0x64, 0xe0, 0x2c, 0x8b, 0xb6, 0xed, 0x9e, 0xd0, 0xe5, 0xfa, 0x78, 0xcc, 0x09, 0x9a, 0x26, 0xfe, 0x73, }; static const unsigned char xdh_wei25519_1456_sharedsecret[] = { 0x91, 0x70, 0xc4, 0xc6, 0x28, 0xd5, 0xfc, 0xfd, 0x0e, 0xc7, 0x19, 0xcf, 0x6e, 0x17, 0x96, 0xda, 0xb0, 0xa6, 0x9e, 0x46, 0xd6, 0x37, 0x9f, 0xff, 0xa2, 0x47, 0xd4, 0x44, 0xa0, 0x05, 0x60, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1456 = { .name = "xdh_wei25519_1456", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1456_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1456_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1456_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 410 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1457 for XDH, tcId is 411 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1457_peerpubkey[] = { 0xdf, 0x10, 0x21, 0xd8, 0xf9, 0x59, 0x50, 0xaf, 0xde, 0x77, 0xc8, 0x6b, 0xa5, 0xee, 0x2f, 0x58, 0x76, 0xef, 0x77, 0x83, 0x76, 0xa7, 0xfd, 0xc7, 0xef, 0xb8, 0xdf, 0xf0, 0xe4, 0x83, 0x6e, 0x7b, }; static const unsigned char xdh_wei25519_1457_privkey[] = { 0x78, 0xcd, 0xe8, 0x93, 0x0a, 0x1d, 0x81, 0xae, 0xf6, 0x60, 0x1f, 0x71, 0x40, 0x97, 0x28, 0x85, 0x49, 0x87, 0x57, 0x8b, 0x0f, 0x83, 0x49, 0x58, 0x8c, 0x04, 0xad, 0xbe, 0x2c, 0x1f, 0x6e, 0x74, }; static const unsigned char xdh_wei25519_1457_sharedsecret[] = { 0xd7, 0xd2, 0xa8, 0x29, 0x53, 0xf6, 0x80, 0xce, 0xe0, 0xc8, 0x1c, 0x4d, 0x00, 0xfe, 0x62, 0x8a, 0xc5, 0x30, 0xce, 0x68, 0x2e, 0xb7, 0xfb, 0x3b, 0x0a, 0xf2, 0x4f, 0x80, 0x4a, 0x58, 0xef, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1457 = { .name = "xdh_wei25519_1457", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1457_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1457_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1457_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 411 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1458 for XDH, tcId is 412 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1458_peerpubkey[] = { 0x27, 0x43, 0xba, 0x40, 0x8d, 0x5f, 0x68, 0xc6, 0x53, 0x24, 0xa4, 0x85, 0x08, 0x6a, 0x00, 0x4b, 0x6b, 0xbf, 0x78, 0x4c, 0xc9, 0xe8, 0xb1, 0xa7, 0xdb, 0xeb, 0x8c, 0x4b, 0x94, 0x14, 0xb0, 0x18, }; static const unsigned char xdh_wei25519_1458_privkey[] = { 0xb0, 0xfe, 0x7b, 0x06, 0xb9, 0x95, 0x06, 0x00, 0xb3, 0xa7, 0xce, 0x1d, 0x7b, 0xb2, 0xa1, 0xd9, 0x84, 0x19, 0x4c, 0xc9, 0xd6, 0xc8, 0x96, 0x45, 0x04, 0xc3, 0x64, 0xdd, 0x5c, 0x87, 0x5b, 0x74, }; static const unsigned char xdh_wei25519_1458_sharedsecret[] = { 0xa6, 0xb9, 0x7d, 0xa9, 0x89, 0xdc, 0xcf, 0x73, 0x0f, 0x12, 0x2d, 0x45, 0x51, 0x52, 0x32, 0x80, 0x51, 0xc8, 0xed, 0x9a, 0xbc, 0x18, 0x15, 0xc1, 0x9e, 0xec, 0x65, 0x01, 0xd6, 0xcf, 0xc7, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1458 = { .name = "xdh_wei25519_1458", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1458_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1458_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1458_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 412 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1459 for XDH, tcId is 413 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1459_peerpubkey[] = { 0xcc, 0x27, 0x5a, 0x2c, 0xdd, 0x91, 0x25, 0xe5, 0x2f, 0x20, 0xce, 0x2a, 0xba, 0xd4, 0x1f, 0x92, 0x0a, 0xfa, 0x5a, 0x64, 0x3f, 0xb7, 0xf2, 0x76, 0xef, 0x41, 0x6f, 0x76, 0x1d, 0x68, 0x9f, 0x1e, }; static const unsigned char xdh_wei25519_1459_privkey[] = { 0xf0, 0xc9, 0xc3, 0x98, 0x48, 0x54, 0xd5, 0xbd, 0x59, 0x9d, 0x38, 0x19, 0x73, 0x8a, 0x02, 0x3e, 0xb7, 0x95, 0xe9, 0x35, 0x86, 0xdc, 0x0e, 0x5e, 0x29, 0xb1, 0xc8, 0x70, 0xc6, 0x12, 0xd1, 0x78, }; static const unsigned char xdh_wei25519_1459_sharedsecret[] = { 0xb2, 0x10, 0xe3, 0x68, 0x72, 0x95, 0x01, 0xd9, 0xf9, 0xb6, 0xeb, 0xef, 0xbe, 0xba, 0xe3, 0x8f, 0x19, 0x5f, 0x91, 0xea, 0xf2, 0xa5, 0xa3, 0xa4, 0x92, 0x88, 0xbb, 0x61, 0x5f, 0xf2, 0x21, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1459 = { .name = "xdh_wei25519_1459", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1459_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1459_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1459_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 413 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1460 for XDH, tcId is 414 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1460_peerpubkey[] = { 0x49, 0x29, 0x54, 0x31, 0x01, 0xee, 0x7a, 0xe2, 0x39, 0x05, 0x9c, 0xd1, 0x34, 0xc3, 0x5d, 0x40, 0x0e, 0x50, 0xd0, 0x82, 0x14, 0x41, 0x35, 0x1d, 0x0f, 0xa6, 0xc3, 0xd5, 0x4e, 0xfb, 0x34, 0x2e, }; static const unsigned char xdh_wei25519_1460_privkey[] = { 0x90, 0x6c, 0x2f, 0x12, 0xbe, 0x89, 0x70, 0x2d, 0xb2, 0x6f, 0xa7, 0xee, 0x90, 0x5c, 0xe3, 0x65, 0x25, 0xd2, 0xde, 0xe4, 0xe9, 0x6a, 0x87, 0x9c, 0xa0, 0x7d, 0xa0, 0x97, 0xa6, 0xaa, 0x50, 0x75, }; static const unsigned char xdh_wei25519_1460_sharedsecret[] = { 0xb9, 0xe3, 0x79, 0x6c, 0x58, 0x70, 0x1d, 0xed, 0x42, 0x37, 0xc5, 0x29, 0x94, 0x50, 0x1c, 0xee, 0x14, 0xe1, 0x8f, 0x2f, 0xb0, 0x2b, 0x78, 0x1a, 0x84, 0x00, 0x92, 0x34, 0x84, 0xbd, 0x4a, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1460 = { .name = "xdh_wei25519_1460", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1460_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1460_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1460_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 414 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1461 for XDH, tcId is 415 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1461_peerpubkey[] = { 0x13, 0x24, 0xe0, 0x36, 0x85, 0x97, 0xb3, 0x18, 0x15, 0x55, 0xbb, 0x5b, 0x2c, 0xc7, 0xb7, 0xeb, 0xba, 0x46, 0x93, 0x1a, 0xea, 0xbb, 0x6f, 0x05, 0xab, 0xab, 0xd4, 0x24, 0x0f, 0x0f, 0xb9, 0x33, }; static const unsigned char xdh_wei25519_1461_privkey[] = { 0xf0, 0x26, 0x03, 0x1e, 0xa3, 0x73, 0xe1, 0xd1, 0x6e, 0x6e, 0x7e, 0x03, 0x57, 0xbc, 0x96, 0xbc, 0x09, 0x3f, 0x4b, 0x6b, 0xb7, 0x6a, 0x73, 0x8c, 0xbb, 0x54, 0xfe, 0x6c, 0xfd, 0x2e, 0xa2, 0x71, }; static const unsigned char xdh_wei25519_1461_sharedsecret[] = { 0x6d, 0xcd, 0xf8, 0xe8, 0x69, 0x03, 0xb0, 0xca, 0xde, 0xd1, 0x24, 0xd8, 0xa7, 0xda, 0x18, 0xe6, 0x23, 0x43, 0x0c, 0xa8, 0x69, 0xaa, 0xf2, 0x67, 0xd3, 0x10, 0x29, 0xd9, 0x3d, 0xe9, 0x9e, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1461 = { .name = "xdh_wei25519_1461", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1461_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1461_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1461_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 415 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1462 for XDH, tcId is 416 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1462_peerpubkey[] = { 0xc7, 0xf3, 0x84, 0x22, 0x97, 0xd6, 0x94, 0x1c, 0xac, 0x63, 0xd6, 0xf1, 0xbd, 0xae, 0xa0, 0x70, 0x94, 0x37, 0xc8, 0x2d, 0xbc, 0x91, 0x61, 0xfc, 0x1b, 0xae, 0x6c, 0x79, 0xd6, 0x68, 0xeb, 0x44, }; static const unsigned char xdh_wei25519_1462_privkey[] = { 0x70, 0x3f, 0x4a, 0xc8, 0x66, 0x7d, 0x77, 0xf9, 0x53, 0x60, 0x45, 0xcf, 0x74, 0x8f, 0x18, 0xd4, 0x23, 0x45, 0xe3, 0x9c, 0xca, 0xb1, 0x0c, 0x18, 0xdd, 0xe0, 0xf5, 0x17, 0x0d, 0x30, 0x7f, 0x73, }; static const unsigned char xdh_wei25519_1462_sharedsecret[] = { 0x38, 0x5d, 0xdb, 0xf2, 0x50, 0x5e, 0xbf, 0x53, 0x7b, 0xf5, 0xe9, 0x76, 0xb6, 0x1a, 0x4b, 0x69, 0xd1, 0x90, 0xae, 0x96, 0x5b, 0x7e, 0x4a, 0x81, 0xae, 0x4e, 0x1c, 0x16, 0xb7, 0x14, 0x87, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_1462 = { .name = "xdh_wei25519_1462", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1462_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1462_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1462_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 416 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1463 for XDH, tcId is 417 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1463_peerpubkey[] = { 0x1e, 0x46, 0x60, 0xba, 0x86, 0x5f, 0xb8, 0x08, 0x5a, 0xfd, 0x46, 0x92, 0x88, 0x5d, 0x74, 0x23, 0x7f, 0xa3, 0xbc, 0xa5, 0xaf, 0x4b, 0x84, 0xba, 0x3d, 0xe4, 0x00, 0xf1, 0x6a, 0x5a, 0xc4, 0x5c, }; static const unsigned char xdh_wei25519_1463_privkey[] = { 0xc8, 0xa9, 0x6a, 0xe4, 0xe7, 0x72, 0x71, 0xa0, 0x68, 0x0d, 0xd2, 0x4f, 0xcb, 0x09, 0xf9, 0xc5, 0xd3, 0xee, 0x83, 0x16, 0x53, 0x6e, 0xec, 0x7c, 0xc2, 0x27, 0x65, 0x97, 0xe5, 0x0f, 0xe3, 0x7f, }; static const unsigned char xdh_wei25519_1463_sharedsecret[] = { 0x0f, 0xba, 0xea, 0x73, 0xf9, 0x51, 0x87, 0x95, 0xe0, 0x26, 0xc1, 0xfc, 0x10, 0x79, 0xc3, 0x73, 0x8a, 0xeb, 0x9e, 0xe9, 0xc8, 0xdc, 0x97, 0x61, 0xd6, 0x5b, 0xbf, 0x8f, 0x94, 0xe3, 0x01, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1463 = { .name = "xdh_wei25519_1463", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1463_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1463_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1463_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 417 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1464 for XDH, tcId is 418 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1464_peerpubkey[] = { 0x24, 0x88, 0xbb, 0x6f, 0xad, 0xb7, 0x9d, 0x46, 0x58, 0x5f, 0xf0, 0x1c, 0x16, 0x0c, 0x5b, 0x41, 0x72, 0x79, 0x9d, 0x92, 0xbd, 0x16, 0x8e, 0xdc, 0xeb, 0x65, 0xce, 0xde, 0xdc, 0x49, 0x27, 0x62, }; static const unsigned char xdh_wei25519_1464_privkey[] = { 0xd0, 0xdd, 0xe8, 0xed, 0xa3, 0x8c, 0x37, 0x83, 0x44, 0x28, 0x64, 0xc0, 0xcb, 0x46, 0xa0, 0xe9, 0x83, 0x2d, 0xcf, 0x78, 0x4c, 0x21, 0x26, 0x8a, 0x21, 0xbe, 0xd2, 0xca, 0xce, 0x87, 0xcd, 0x70, }; static const unsigned char xdh_wei25519_1464_sharedsecret[] = { 0x51, 0x0c, 0x64, 0x15, 0x1e, 0x5d, 0x07, 0x37, 0xfc, 0x32, 0x4b, 0xd1, 0x5f, 0xb5, 0xd3, 0x96, 0x69, 0x08, 0x75, 0x1c, 0xd1, 0xa0, 0x69, 0x54, 0xb5, 0x56, 0x19, 0x66, 0x55, 0xee, 0x55, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1464 = { .name = "xdh_wei25519_1464", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1464_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1464_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1464_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 418 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1465 for XDH, tcId is 419 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1465_peerpubkey[] = { 0xa0, 0xc1, 0x08, 0x78, 0x11, 0xaf, 0x14, 0x91, 0x17, 0x1b, 0xc5, 0x16, 0x91, 0xb8, 0xca, 0x84, 0x71, 0x6a, 0xf3, 0x6c, 0x4b, 0xaa, 0x76, 0x4e, 0xc5, 0x36, 0x28, 0x0c, 0xc1, 0x98, 0x3d, 0x6d, }; static const unsigned char xdh_wei25519_1465_privkey[] = { 0xc0, 0x9c, 0xd4, 0x7e, 0x1c, 0xe5, 0x36, 0x04, 0xf1, 0x4e, 0x4e, 0x13, 0x42, 0x6c, 0x8f, 0x08, 0x96, 0x2f, 0x55, 0x6b, 0xcd, 0x81, 0xf8, 0xd7, 0x53, 0x75, 0xb1, 0x50, 0x7c, 0x6f, 0xda, 0x78, }; static const unsigned char xdh_wei25519_1465_sharedsecret[] = { 0x23, 0xef, 0x82, 0x5e, 0x1c, 0x8e, 0x6e, 0x64, 0x42, 0x80, 0x01, 0xa7, 0x46, 0x3e, 0x32, 0xa9, 0x70, 0x1c, 0x81, 0xcf, 0x78, 0x20, 0x3e, 0x6a, 0xe7, 0x53, 0x74, 0x0c, 0x91, 0x57, 0x0e, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_1465 = { .name = "xdh_wei25519_1465", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1465_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1465_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1465_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 419 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1466 for XDH, tcId is 420 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1466_peerpubkey[] = { 0xcc, 0x5c, 0x97, 0x93, 0x46, 0x07, 0xd8, 0xb9, 0x81, 0xbc, 0xe1, 0xd6, 0xa2, 0x32, 0xbb, 0x3a, 0xec, 0xc3, 0x00, 0x1f, 0x69, 0x8a, 0xe1, 0xae, 0x84, 0x93, 0x8f, 0xbf, 0x28, 0x61, 0x07, 0x7b, }; static const unsigned char xdh_wei25519_1466_privkey[] = { 0xe0, 0x9a, 0x5f, 0x74, 0xf3, 0x18, 0xf0, 0x23, 0x03, 0x85, 0x7a, 0xa0, 0x20, 0x8d, 0x76, 0x91, 0x3d, 0x9e, 0x24, 0x0a, 0x80, 0x54, 0x9d, 0x12, 0x01, 0x31, 0x18, 0xba, 0xd6, 0x20, 0x59, 0x7f, }; static const unsigned char xdh_wei25519_1466_sharedsecret[] = { 0x0e, 0x55, 0xa7, 0xec, 0x1a, 0x2d, 0xdb, 0xea, 0x1a, 0xc5, 0x98, 0x12, 0x00, 0x81, 0x22, 0x32, 0xf7, 0xf4, 0xc3, 0xa6, 0x0e, 0xe3, 0xc9, 0xab, 0x09, 0xf2, 0x16, 0x3b, 0xd1, 0x3d, 0xa3, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1466 = { .name = "xdh_wei25519_1466", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1466_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1466_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1466_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 420 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1467 for XDH, tcId is 421 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1467_peerpubkey[] = { 0x23, 0x8d, 0xe7, 0xfc, 0xc8, 0xa3, 0xf1, 0x94, 0xc3, 0x55, 0x4c, 0x32, 0x8e, 0xfb, 0x12, 0x15, 0xd0, 0x64, 0x0a, 0xc6, 0x74, 0xb6, 0x1a, 0x98, 0xef, 0x93, 0x4e, 0xc0, 0x04, 0xcf, 0xd7, 0x3b, }; static const unsigned char xdh_wei25519_1467_privkey[] = { 0x70, 0x6c, 0xee, 0x5f, 0x9b, 0x35, 0x7c, 0x03, 0xb2, 0xf1, 0x91, 0x32, 0x94, 0xf6, 0xe4, 0xf0, 0xca, 0x5a, 0x19, 0x0a, 0x87, 0xd3, 0x02, 0x68, 0x32, 0x7d, 0x0c, 0xb6, 0xbd, 0xd5, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_1467_sharedsecret[] = { 0x06, 0x81, 0x03, 0x6a, 0x0d, 0x27, 0x58, 0x3b, 0xa6, 0xf2, 0xbe, 0x76, 0x30, 0x61, 0x31, 0x71, 0xa3, 0x3f, 0xb8, 0xa6, 0xc8, 0x99, 0x1c, 0x53, 0xb3, 0x79, 0x99, 0x9f, 0x0f, 0x15, 0x92, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1467 = { .name = "xdh_wei25519_1467", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1467_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1467_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1467_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 421 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1468 for XDH, tcId is 422 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1468_peerpubkey[] = { 0xac, 0x9f, 0xd8, 0x0a, 0x45, 0xda, 0x10, 0x9f, 0xa2, 0x32, 0x93, 0x90, 0xe5, 0xa9, 0x51, 0xcf, 0xc0, 0x30, 0x65, 0xd7, 0xbb, 0x4a, 0x78, 0x55, 0x82, 0x6c, 0xcb, 0x22, 0xc3, 0xbf, 0xeb, 0x3d, }; static const unsigned char xdh_wei25519_1468_privkey[] = { 0x40, 0xe3, 0x00, 0xcb, 0x1f, 0xf2, 0x60, 0x57, 0x4f, 0x85, 0xb3, 0xf0, 0x4a, 0xac, 0x47, 0x84, 0x64, 0xa8, 0x6e, 0x62, 0x03, 0xb3, 0xd4, 0x65, 0x64, 0x18, 0xf4, 0x30, 0x51, 0x57, 0x87, 0x7b, }; static const unsigned char xdh_wei25519_1468_sharedsecret[] = { 0x67, 0xb8, 0x87, 0x74, 0xf1, 0x9b, 0xd1, 0x08, 0x1d, 0x6f, 0x23, 0x65, 0x6a, 0x13, 0x58, 0x03, 0xe3, 0x4a, 0xe1, 0xcd, 0xca, 0xe1, 0x08, 0x18, 0x12, 0x4a, 0x78, 0x56, 0x9c, 0x29, 0x9f, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_1468 = { .name = "xdh_wei25519_1468", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1468_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1468_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1468_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 422 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1469 for XDH, tcId is 423 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1469_peerpubkey[] = { 0xa4, 0x5a, 0xb1, 0xdc, 0x2f, 0xa2, 0xc5, 0x07, 0x18, 0xfb, 0x49, 0x85, 0xd9, 0x79, 0x14, 0x01, 0xe8, 0xd2, 0xd3, 0x4f, 0xfe, 0x3c, 0xd9, 0x3c, 0xff, 0xb4, 0xe8, 0x70, 0xcc, 0xe5, 0xe8, 0x55, }; static const unsigned char xdh_wei25519_1469_privkey[] = { 0x88, 0x2f, 0x78, 0xb4, 0x55, 0x8b, 0x7f, 0xaa, 0x83, 0x59, 0x04, 0xc9, 0x23, 0x5e, 0x32, 0xf3, 0x00, 0xfc, 0x8b, 0x5e, 0xf0, 0xa7, 0x18, 0x40, 0x6a, 0x5c, 0x85, 0x20, 0xca, 0x54, 0xd0, 0x71, }; static const unsigned char xdh_wei25519_1469_sharedsecret[] = { 0xa5, 0x12, 0xe8, 0x64, 0xbd, 0x89, 0x8a, 0x5b, 0xa6, 0x55, 0x1a, 0xdc, 0xeb, 0xd8, 0x36, 0xc6, 0xa7, 0x8e, 0x78, 0x71, 0x72, 0x8e, 0x1b, 0x8e, 0xe5, 0x28, 0xd4, 0x83, 0xaf, 0x27, 0x61, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1469 = { .name = "xdh_wei25519_1469", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1469_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1469_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1469_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 423 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1470 for XDH, tcId is 424 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1470_peerpubkey[] = { 0x17, 0x61, 0xd3, 0xd5, 0x0b, 0xa4, 0x6b, 0x44, 0x66, 0x55, 0xaa, 0x6a, 0x8d, 0x9b, 0x8b, 0x75, 0xaa, 0x5b, 0xb2, 0x4a, 0x79, 0x53, 0x20, 0x8d, 0x5b, 0x69, 0xfc, 0xc3, 0x8f, 0x18, 0xec, 0x7a, }; static const unsigned char xdh_wei25519_1470_privkey[] = { 0xd8, 0x64, 0x9b, 0x73, 0x55, 0x90, 0xa1, 0x7d, 0x0f, 0xc4, 0xc3, 0x78, 0xfb, 0xf4, 0xc2, 0xf7, 0xd6, 0x60, 0x05, 0x69, 0xb2, 0xe8, 0x4c, 0xbe, 0x0f, 0xf7, 0xbc, 0xdb, 0xac, 0x0b, 0x5f, 0x71, }; static const unsigned char xdh_wei25519_1470_sharedsecret[] = { 0x51, 0x8b, 0x77, 0x8c, 0xf5, 0xe9, 0x76, 0xc6, 0x02, 0x35, 0xab, 0xcf, 0x62, 0x11, 0xa1, 0x8b, 0xad, 0x2a, 0x8e, 0x69, 0x3a, 0xb2, 0x61, 0x07, 0x4c, 0x7f, 0xab, 0x43, 0xdb, 0xb5, 0xda, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_1470 = { .name = "xdh_wei25519_1470", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1470_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1470_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1470_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 424 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1471 for XDH, tcId is 425 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1471_peerpubkey[] = { 0xdc, 0x99, 0xad, 0x00, 0x31, 0x46, 0x3e, 0x45, 0x37, 0xc0, 0x1e, 0x16, 0x62, 0x99, 0x66, 0xd1, 0xb9, 0x62, 0xc0, 0xb4, 0xe4, 0x87, 0x2f, 0x06, 0x7c, 0xa3, 0xc2, 0x6c, 0xcc, 0x95, 0x70, 0x01, }; static const unsigned char xdh_wei25519_1471_privkey[] = { 0xa8, 0xed, 0xec, 0x59, 0xae, 0x6b, 0xa2, 0x38, 0x13, 0xec, 0x54, 0xd6, 0x6d, 0xf1, 0x52, 0xe0, 0x62, 0x67, 0x62, 0xb9, 0x7d, 0x4b, 0x0c, 0x20, 0xe0, 0xdd, 0x8a, 0x56, 0x95, 0xd8, 0x6e, 0x47, }; static const unsigned char xdh_wei25519_1471_sharedsecret[] = { 0x6c, 0xfa, 0x93, 0x5f, 0x24, 0xb0, 0x31, 0xff, 0x26, 0x1a, 0x7c, 0xd3, 0x52, 0x66, 0x60, 0xfd, 0x6b, 0x39, 0x6c, 0x5c, 0x30, 0xe2, 0x99, 0x57, 0x5f, 0x6a, 0x32, 0x22, 0x81, 0x19, 0x1e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1471 = { .name = "xdh_wei25519_1471", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1471_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1471_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1471_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 425 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1472 for XDH, tcId is 426 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1472_peerpubkey[] = { 0xb3, 0x27, 0x50, 0xfd, 0x80, 0xd2, 0xd7, 0xc6, 0x2c, 0x6b, 0x8e, 0x39, 0x67, 0x06, 0x54, 0xba, 0xea, 0x57, 0x19, 0xa3, 0xe0, 0x72, 0xe9, 0x95, 0x07, 0xfd, 0x5b, 0xcb, 0x23, 0x89, 0x82, 0x64, }; static const unsigned char xdh_wei25519_1472_privkey[] = { 0x10, 0x98, 0x72, 0x3f, 0xfe, 0x56, 0x7e, 0xa6, 0xdc, 0xc8, 0xd0, 0x4e, 0xcc, 0x01, 0xef, 0xaf, 0xee, 0xa0, 0xae, 0xe4, 0x4e, 0x1c, 0x73, 0x3b, 0xe8, 0xb1, 0xe5, 0xd9, 0x7c, 0x8b, 0x80, 0x41, }; static const unsigned char xdh_wei25519_1472_sharedsecret[] = { 0xc6, 0x23, 0xe2, 0xd2, 0x08, 0x3f, 0x18, 0x11, 0x0a, 0x52, 0x5f, 0x2b, 0x66, 0xd8, 0x9e, 0xd8, 0x2d, 0x31, 0x3b, 0x6a, 0x2d, 0xd0, 0x82, 0xf6, 0xb7, 0xa6, 0xe7, 0x33, 0x13, 0x4f, 0x5a, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1472 = { .name = "xdh_wei25519_1472", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1472_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1472_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1472_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 426 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1473 for XDH, tcId is 427 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1473_peerpubkey[] = { 0xe7, 0xb3, 0x20, 0x57, 0x77, 0xb3, 0x75, 0xf1, 0xb1, 0x51, 0x5a, 0x50, 0xa1, 0x6a, 0x60, 0x67, 0x95, 0x3f, 0xf2, 0x21, 0xe1, 0x2b, 0x4f, 0x41, 0x6d, 0x74, 0xfb, 0x28, 0xc1, 0xc8, 0x58, 0x65, }; static const unsigned char xdh_wei25519_1473_privkey[] = { 0xa0, 0xf2, 0x0d, 0xf9, 0x8b, 0x49, 0x21, 0x8a, 0xc8, 0x32, 0xf2, 0x6f, 0xa8, 0xc2, 0x18, 0xa0, 0xd6, 0x87, 0x2e, 0xb7, 0xae, 0xa0, 0x7c, 0x1d, 0x43, 0xc9, 0xff, 0x69, 0x9b, 0x46, 0x5b, 0x47, }; static const unsigned char xdh_wei25519_1473_sharedsecret[] = { 0x38, 0x8e, 0xa4, 0x21, 0x65, 0x0a, 0x8d, 0x83, 0x7b, 0xad, 0x89, 0x04, 0x01, 0x81, 0x95, 0xe9, 0x9e, 0xf4, 0x94, 0xc2, 0xd1, 0x70, 0xb9, 0x3e, 0xe7, 0x21, 0xa6, 0x7d, 0x2c, 0x10, 0x87, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1473 = { .name = "xdh_wei25519_1473", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1473_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1473_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1473_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 427 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1474 for XDH, tcId is 428 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1474_peerpubkey[] = { 0x21, 0xcc, 0x33, 0x8d, 0x78, 0x69, 0xe5, 0x86, 0x33, 0x49, 0xcc, 0x73, 0x9c, 0x8a, 0x69, 0x46, 0xcf, 0xc7, 0x97, 0xcb, 0x82, 0xfb, 0xf6, 0x2d, 0xcd, 0x21, 0x54, 0x84, 0x4b, 0x10, 0x60, 0x03, }; static const unsigned char xdh_wei25519_1474_privkey[] = { 0x30, 0x47, 0x3a, 0x77, 0xa9, 0x83, 0x74, 0xf6, 0x7d, 0x5b, 0xd4, 0x3d, 0xf2, 0x31, 0xce, 0x14, 0x29, 0x16, 0xae, 0xa0, 0xd2, 0x71, 0xe7, 0x23, 0x33, 0xfa, 0x47, 0xdc, 0x44, 0x1a, 0x02, 0x47, }; static const unsigned char xdh_wei25519_1474_sharedsecret[] = { 0xb9, 0xe5, 0x72, 0x8b, 0x37, 0x43, 0x5b, 0x1d, 0x33, 0x99, 0x88, 0xf9, 0x32, 0x67, 0xd5, 0x9f, 0x3b, 0xd1, 0xc5, 0x17, 0x85, 0x1c, 0x5a, 0x25, 0x8e, 0x74, 0xcb, 0x64, 0xae, 0xa7, 0x3d, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1474 = { .name = "xdh_wei25519_1474", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1474_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1474_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1474_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 428 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1475 for XDH, tcId is 429 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1475_peerpubkey[] = { 0xc3, 0x42, 0x17, 0xc0, 0x20, 0x72, 0xd7, 0xe2, 0xbc, 0xa0, 0x45, 0x45, 0x25, 0x03, 0x07, 0x80, 0xcf, 0xb6, 0x02, 0x15, 0xd7, 0xca, 0x82, 0xdb, 0xec, 0x8f, 0x4a, 0x59, 0x03, 0x4c, 0x5f, 0x43, }; static const unsigned char xdh_wei25519_1475_privkey[] = { 0xd8, 0x65, 0x7b, 0xe3, 0xa3, 0x0f, 0xc8, 0x5f, 0xb2, 0xf3, 0xa6, 0x8e, 0x92, 0xac, 0xe1, 0xb3, 0x1b, 0x26, 0xe7, 0x6e, 0x6b, 0xdb, 0x67, 0x27, 0xae, 0xa5, 0x07, 0xcb, 0x7c, 0x10, 0xdc, 0x45, }; static const unsigned char xdh_wei25519_1475_sharedsecret[] = { 0x20, 0xb6, 0x7b, 0x20, 0x5e, 0x22, 0xce, 0x87, 0xfd, 0x44, 0xa8, 0xe8, 0xfd, 0x10, 0xa6, 0xd8, 0x89, 0x0b, 0x92, 0x70, 0xb6, 0x0e, 0x1c, 0x6a, 0x68, 0xb4, 0xaa, 0x78, 0xe6, 0xe3, 0x79, 0x61, }; static const wycheproof_xdh_test xdh_wei25519_1475 = { .name = "xdh_wei25519_1475", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1475_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1475_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1475_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 429 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1476 for XDH, tcId is 430 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1476_peerpubkey[] = { 0x8a, 0xbb, 0x8c, 0xfd, 0x60, 0xc6, 0xf8, 0xa4, 0xd8, 0x4d, 0x07, 0x50, 0xd3, 0xb4, 0x0a, 0x4f, 0x84, 0x6b, 0x30, 0xed, 0xf2, 0x05, 0x2f, 0xef, 0x7d, 0xf8, 0x41, 0x42, 0xcd, 0x0d, 0x9e, 0x47, }; static const unsigned char xdh_wei25519_1476_privkey[] = { 0x88, 0x2f, 0x55, 0x78, 0xae, 0x4a, 0x13, 0xd8, 0xf5, 0xaf, 0x47, 0x3b, 0xdd, 0xe1, 0x70, 0x9b, 0xf2, 0xe0, 0x59, 0xdf, 0x80, 0x9e, 0xe0, 0x5b, 0x50, 0x5f, 0x34, 0xde, 0x85, 0x7c, 0x34, 0x47, }; static const unsigned char xdh_wei25519_1476_sharedsecret[] = { 0x5f, 0xab, 0xa6, 0x45, 0xfc, 0x21, 0xf9, 0x42, 0x1e, 0xbd, 0x35, 0xc6, 0x9b, 0xdb, 0x1d, 0x85, 0xb4, 0x6f, 0x95, 0xe3, 0x74, 0x6f, 0xf7, 0xf4, 0x88, 0x6b, 0xc2, 0x80, 0xa9, 0xab, 0x25, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1476 = { .name = "xdh_wei25519_1476", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1476_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1476_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1476_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 430 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1477 for XDH, tcId is 431 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1477_peerpubkey[] = { 0x9f, 0xd7, 0xb4, 0x9a, 0x08, 0xf2, 0x06, 0x68, 0x8d, 0x72, 0xdb, 0x73, 0x7d, 0xf8, 0xe5, 0x17, 0xaa, 0x7b, 0x76, 0x4f, 0x5d, 0xe7, 0xc9, 0xa2, 0xb1, 0xc3, 0xfc, 0xba, 0xa9, 0x85, 0xf6, 0x4c, }; static const unsigned char xdh_wei25519_1477_privkey[] = { 0x98, 0x29, 0x4d, 0xb7, 0xcb, 0xf4, 0x95, 0x8b, 0xfb, 0x3e, 0xd2, 0x1d, 0x5d, 0x5c, 0x91, 0xe1, 0x3c, 0xc8, 0xdc, 0x27, 0xb3, 0xc7, 0x16, 0xc8, 0x6f, 0x71, 0x67, 0xa4, 0x81, 0x9f, 0x87, 0x41, }; static const unsigned char xdh_wei25519_1477_sharedsecret[] = { 0x9c, 0xb8, 0xa0, 0xf4, 0xad, 0x86, 0xa2, 0x7b, 0x96, 0xca, 0x61, 0x24, 0x2e, 0xab, 0x19, 0x8d, 0xb2, 0x76, 0x7d, 0x38, 0x62, 0xdd, 0x32, 0x3e, 0x41, 0x36, 0x8f, 0xcd, 0xcc, 0x5f, 0xab, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1477 = { .name = "xdh_wei25519_1477", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1477_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1477_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1477_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 431 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1478 for XDH, tcId is 432 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1478_peerpubkey[] = { 0xc4, 0xfe, 0xfa, 0xc7, 0xac, 0xd4, 0x48, 0xe8, 0xfd, 0x4d, 0x6a, 0xc4, 0xf5, 0xdd, 0x1b, 0xc2, 0x1f, 0x2c, 0x67, 0xd6, 0x38, 0x44, 0x40, 0x60, 0x91, 0x8f, 0xb3, 0x44, 0xaa, 0x77, 0xe7, 0x57, }; static const unsigned char xdh_wei25519_1478_privkey[] = { 0x78, 0x9b, 0xc4, 0x04, 0x7a, 0xd8, 0x1b, 0x9b, 0x66, 0x56, 0xee, 0xf2, 0x98, 0xb7, 0x66, 0xe8, 0x76, 0x3a, 0x2f, 0x8e, 0xa6, 0x4e, 0x37, 0x4a, 0x60, 0x3d, 0xc1, 0xfd, 0xf2, 0xee, 0xe1, 0x46, }; static const unsigned char xdh_wei25519_1478_sharedsecret[] = { 0x4b, 0x42, 0xfc, 0xf8, 0x4b, 0x51, 0xb2, 0xb8, 0x2f, 0x1f, 0x70, 0xb3, 0xcf, 0x49, 0xbd, 0x9d, 0xc6, 0xab, 0x26, 0x72, 0x92, 0x0a, 0x8d, 0xe3, 0x7e, 0x81, 0xba, 0x7e, 0x99, 0xac, 0xf7, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1478 = { .name = "xdh_wei25519_1478", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1478_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1478_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1478_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 432 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1479 for XDH, tcId is 433 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1479_peerpubkey[] = { 0xa8, 0x34, 0x1d, 0xee, 0xcc, 0x0b, 0xe6, 0xdb, 0x11, 0x40, 0x1e, 0xf7, 0xf8, 0x84, 0xac, 0x3a, 0xde, 0x35, 0x65, 0x0c, 0xc2, 0x1f, 0x14, 0xb5, 0xcd, 0xb0, 0xa5, 0xcf, 0x0e, 0xe6, 0xb1, 0x5a, }; static const unsigned char xdh_wei25519_1479_privkey[] = { 0x80, 0x1f, 0xfe, 0x4e, 0x0f, 0x6e, 0xeb, 0x8a, 0x50, 0xc8, 0xfe, 0x79, 0x66, 0x3f, 0xf5, 0x85, 0xf9, 0xd6, 0xae, 0xbc, 0xfb, 0xf4, 0xb7, 0xed, 0xc6, 0x76, 0xc6, 0x93, 0x90, 0x0c, 0xb1, 0x41, }; static const unsigned char xdh_wei25519_1479_sharedsecret[] = { 0xe5, 0x5f, 0xc9, 0x31, 0x66, 0x9b, 0xd0, 0x2d, 0x1c, 0x64, 0x68, 0x9e, 0xda, 0x62, 0x64, 0x82, 0x12, 0xb1, 0x07, 0x8c, 0x43, 0xb5, 0xca, 0xf9, 0x7c, 0xf9, 0x76, 0x3f, 0xf8, 0x7a, 0x34, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1479 = { .name = "xdh_wei25519_1479", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1479_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1479_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1479_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 433 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1480 for XDH, tcId is 434 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1480_peerpubkey[] = { 0x55, 0xa0, 0xe6, 0x63, 0x1a, 0x52, 0xf2, 0x9f, 0xb9, 0x0a, 0x17, 0x77, 0xcc, 0xbc, 0x69, 0xff, 0x94, 0x54, 0x74, 0x59, 0xd5, 0x41, 0xf7, 0x2e, 0x83, 0x16, 0xe4, 0xd6, 0x16, 0x53, 0x5a, 0x67, }; static const unsigned char xdh_wei25519_1480_privkey[] = { 0xe0, 0x4e, 0x41, 0x23, 0x83, 0xa6, 0x3b, 0x33, 0x8b, 0x70, 0xe1, 0xbe, 0x5f, 0xd7, 0x59, 0x95, 0x35, 0x03, 0x21, 0xde, 0xe4, 0x28, 0xaa, 0x4f, 0x3b, 0xa6, 0x2a, 0x50, 0xa3, 0xb0, 0xde, 0x44, }; static const unsigned char xdh_wei25519_1480_sharedsecret[] = { 0x87, 0xf7, 0x97, 0x6a, 0x17, 0xf3, 0xe0, 0x3a, 0x7f, 0x1e, 0xb7, 0x4e, 0x6d, 0xb9, 0x50, 0xb8, 0xc0, 0x99, 0x4f, 0x40, 0xb7, 0x90, 0x34, 0x95, 0x59, 0x9d, 0x22, 0x77, 0x25, 0x80, 0x9e, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1480 = { .name = "xdh_wei25519_1480", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1480_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1480_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1480_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 434 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1481 for XDH, tcId is 435 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1481_peerpubkey[] = { 0x79, 0x76, 0xd5, 0x20, 0xf1, 0xa2, 0x51, 0x2d, 0x56, 0x4a, 0xf4, 0x1c, 0x68, 0x31, 0x3f, 0x53, 0x51, 0xb0, 0x15, 0x6d, 0x51, 0x18, 0xbe, 0x48, 0x17, 0xf1, 0x92, 0x79, 0x8a, 0xe9, 0x77, 0x7d, }; static const unsigned char xdh_wei25519_1481_privkey[] = { 0x38, 0x2d, 0xbe, 0x9f, 0x10, 0x15, 0x8b, 0xfb, 0xb7, 0xd1, 0xd7, 0x9a, 0x35, 0xa7, 0x80, 0x92, 0x14, 0x89, 0x9a, 0x6b, 0x85, 0x72, 0xb3, 0x5b, 0x55, 0x87, 0x5d, 0x79, 0xbd, 0x2f, 0x16, 0x40, }; static const unsigned char xdh_wei25519_1481_sharedsecret[] = { 0x3b, 0xb3, 0xe3, 0x01, 0x05, 0xa7, 0x19, 0x01, 0xb1, 0x15, 0x06, 0x5e, 0x39, 0xbd, 0xb3, 0xe0, 0x53, 0xd3, 0x87, 0xb3, 0x90, 0x27, 0xb1, 0x2c, 0x92, 0xcd, 0xf4, 0xc6, 0x38, 0xad, 0xf0, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1481 = { .name = "xdh_wei25519_1481", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1481_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1481_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1481_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 435 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1482 for XDH, tcId is 436 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1482_peerpubkey[] = { 0xa2, 0x6a, 0x72, 0x2f, 0x7b, 0xa7, 0x1c, 0xcf, 0xc9, 0x6e, 0xd8, 0xe1, 0x08, 0xd7, 0xc9, 0xf8, 0x42, 0xd1, 0x7f, 0x92, 0x05, 0x1e, 0xe7, 0xd4, 0x29, 0xea, 0x7f, 0xa7, 0x90, 0x8a, 0xb9, 0x07, }; static const unsigned char xdh_wei25519_1482_privkey[] = { 0x60, 0xc9, 0xaf, 0x7f, 0x4d, 0x03, 0x13, 0x6a, 0x60, 0x34, 0xae, 0x52, 0xde, 0xad, 0xfd, 0x9d, 0x4f, 0x27, 0x4a, 0xd8, 0x12, 0x28, 0x12, 0xeb, 0x92, 0xa5, 0x31, 0x69, 0xc8, 0x35, 0x41, 0x41, }; static const unsigned char xdh_wei25519_1482_sharedsecret[] = { 0xf5, 0xcb, 0x3a, 0x1b, 0x76, 0x18, 0x5a, 0x29, 0xa6, 0x36, 0x0b, 0x21, 0x42, 0xfe, 0xeb, 0xb1, 0x1f, 0x3d, 0x08, 0xf4, 0xfd, 0x8d, 0x73, 0xdf, 0x3a, 0x52, 0x28, 0x62, 0x4a, 0x52, 0x1c, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1482 = { .name = "xdh_wei25519_1482", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1482_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1482_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1482_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 436 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1483 for XDH, tcId is 437 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1483_peerpubkey[] = { 0xca, 0x3a, 0x2d, 0x96, 0xf5, 0xdd, 0xa4, 0x82, 0xb0, 0x02, 0x32, 0x4c, 0xbb, 0xdc, 0xf1, 0xda, 0xcc, 0x98, 0x15, 0xea, 0xb7, 0x97, 0xc7, 0x15, 0x1c, 0x3a, 0x88, 0xc7, 0x5c, 0xde, 0xd6, 0x21, }; static const unsigned char xdh_wei25519_1483_privkey[] = { 0x28, 0x3f, 0xae, 0x8b, 0xd8, 0xb2, 0x94, 0xde, 0x28, 0x48, 0x05, 0x64, 0x49, 0x75, 0x19, 0x65, 0xab, 0xb5, 0xc7, 0xfa, 0x86, 0xba, 0x4c, 0x2c, 0x5c, 0xdc, 0x3b, 0xb5, 0x24, 0xda, 0xd1, 0x40, }; static const unsigned char xdh_wei25519_1483_sharedsecret[] = { 0xb0, 0xb4, 0x78, 0x68, 0xe7, 0x04, 0x65, 0xee, 0x2d, 0xd7, 0x37, 0xf1, 0xba, 0x5a, 0x63, 0x99, 0xe0, 0x9c, 0xd8, 0x13, 0xd7, 0x2d, 0xa7, 0x58, 0x5a, 0xb4, 0x5c, 0x94, 0x6c, 0xc2, 0x8d, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_1483 = { .name = "xdh_wei25519_1483", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1483_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1483_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1483_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 437 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1484 for XDH, tcId is 438 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1484_peerpubkey[] = { 0xee, 0xbd, 0x85, 0x88, 0x50, 0xb5, 0x6f, 0xeb, 0xb7, 0x07, 0xf2, 0x7a, 0x7a, 0xad, 0x5f, 0xf5, 0xab, 0x4b, 0x0e, 0x0c, 0x73, 0xb9, 0xc8, 0x6e, 0xc4, 0xca, 0x0f, 0x42, 0xe7, 0xf3, 0x8e, 0x75, }; static const unsigned char xdh_wei25519_1484_privkey[] = { 0x40, 0x15, 0x39, 0x70, 0x3c, 0xa4, 0x98, 0x0d, 0xb4, 0xba, 0x42, 0xc5, 0x9f, 0xc2, 0x9e, 0x83, 0xb4, 0x18, 0x9f, 0x2d, 0xde, 0xa5, 0x3b, 0xa5, 0x4c, 0xa9, 0x66, 0xc0, 0x68, 0x98, 0xa6, 0x40, }; static const unsigned char xdh_wei25519_1484_sharedsecret[] = { 0x58, 0x1e, 0x4b, 0x12, 0xb0, 0xf3, 0x9a, 0x7c, 0xc4, 0x2d, 0xee, 0x45, 0x13, 0xec, 0xfd, 0xd2, 0x0b, 0x59, 0x5f, 0x90, 0x5f, 0x17, 0xad, 0x8c, 0x1f, 0xbf, 0x1b, 0x5c, 0xb2, 0x06, 0x8b, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1484 = { .name = "xdh_wei25519_1484", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1484_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1484_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1484_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 438 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1485 for XDH, tcId is 439 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1485_peerpubkey[] = { 0xc8, 0x00, 0xbf, 0x79, 0x97, 0x83, 0x27, 0x5e, 0xb9, 0x33, 0x12, 0xb4, 0x3d, 0xc0, 0x32, 0xcc, 0xdf, 0xb0, 0x0a, 0x4b, 0x77, 0xc8, 0xb3, 0x77, 0x2c, 0xd2, 0xfe, 0xc8, 0xdb, 0x7e, 0x4a, 0x09, }; static const unsigned char xdh_wei25519_1485_privkey[] = { 0xc8, 0xeb, 0x05, 0x62, 0x86, 0xe0, 0x98, 0xe6, 0xb2, 0xc7, 0x9e, 0x42, 0xf0, 0x07, 0xeb, 0xc6, 0xab, 0x37, 0x05, 0x34, 0x6c, 0xdb, 0xda, 0xce, 0x94, 0x9b, 0x5d, 0xe1, 0xe8, 0xc3, 0x67, 0x43, }; static const unsigned char xdh_wei25519_1485_sharedsecret[] = { 0x6b, 0xf2, 0x64, 0x53, 0x2f, 0xc7, 0x0a, 0x6a, 0x7e, 0x45, 0x9f, 0x45, 0x79, 0xec, 0xa6, 0xb8, 0x4f, 0x8f, 0x76, 0xab, 0x85, 0xc3, 0x26, 0x4b, 0x20, 0xbc, 0xa7, 0x25, 0xa6, 0xeb, 0x6c, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1485 = { .name = "xdh_wei25519_1485", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1485_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1485_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1485_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 439 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1486 for XDH, tcId is 440 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1486_peerpubkey[] = { 0x7b, 0xbc, 0x50, 0x4e, 0x04, 0xd1, 0x34, 0xee, 0xdc, 0x13, 0xf0, 0x6d, 0xfd, 0xfc, 0x69, 0xc5, 0x18, 0x25, 0x7a, 0x3f, 0x37, 0x40, 0x40, 0xa4, 0x9a, 0x8d, 0x21, 0xda, 0xc1, 0x09, 0x11, 0x0c, }; static const unsigned char xdh_wei25519_1486_privkey[] = { 0x48, 0x78, 0x82, 0x95, 0x6c, 0x49, 0xc6, 0x9f, 0xd0, 0xe2, 0xd7, 0x27, 0x7a, 0x24, 0xfb, 0x1d, 0xbe, 0x4b, 0x03, 0x65, 0xb3, 0x6a, 0x13, 0xf6, 0x34, 0x40, 0x24, 0x8b, 0xca, 0x2f, 0xbb, 0x42, }; static const unsigned char xdh_wei25519_1486_sharedsecret[] = { 0x69, 0x03, 0x05, 0xc9, 0xe1, 0x92, 0xcd, 0x8a, 0x51, 0x3f, 0x70, 0x5b, 0x3f, 0x10, 0x1e, 0xcd, 0xf3, 0xdb, 0x1e, 0xa1, 0x5a, 0x09, 0xc4, 0xa1, 0xbc, 0xe3, 0xa8, 0xcd, 0xc3, 0xa1, 0xa9, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1486 = { .name = "xdh_wei25519_1486", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1486_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1486_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1486_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 440 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1487 for XDH, tcId is 441 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1487_peerpubkey[] = { 0x13, 0x25, 0x33, 0xdb, 0x62, 0xaf, 0xf4, 0xfa, 0x06, 0xe9, 0x63, 0x14, 0x38, 0x3b, 0xf5, 0x8e, 0xbd, 0xec, 0x51, 0x83, 0xa1, 0x9f, 0x2e, 0x4c, 0xb1, 0x75, 0x52, 0xae, 0x19, 0xa3, 0x36, 0x6e, }; static const unsigned char xdh_wei25519_1487_privkey[] = { 0x98, 0x76, 0x01, 0x0f, 0x4d, 0x64, 0xc7, 0x7f, 0xfc, 0x4d, 0x7d, 0xcc, 0xd7, 0x2b, 0x9a, 0xc8, 0x20, 0x78, 0xde, 0xb8, 0x83, 0x60, 0x96, 0x50, 0xb8, 0xcf, 0xf8, 0xa6, 0x86, 0x71, 0x9d, 0x46, }; static const unsigned char xdh_wei25519_1487_sharedsecret[] = { 0xc5, 0x85, 0x91, 0xb3, 0x3e, 0x49, 0x0e, 0x47, 0x66, 0xff, 0x7a, 0xdd, 0xff, 0x57, 0x0c, 0xe4, 0xe8, 0x9a, 0x98, 0x33, 0x80, 0x15, 0xa5, 0x5d, 0xf3, 0xd2, 0xf2, 0x32, 0xae, 0xa3, 0xfc, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1487 = { .name = "xdh_wei25519_1487", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1487_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1487_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1487_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 441 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1488 for XDH, tcId is 442 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1488_peerpubkey[] = { 0xce, 0xb9, 0x0c, 0x56, 0x50, 0x8c, 0xf3, 0x30, 0xc7, 0xf2, 0x5b, 0xab, 0x42, 0xb0, 0x5b, 0x56, 0x12, 0xa8, 0x31, 0x06, 0x90, 0x10, 0x7a, 0xc6, 0x3a, 0x40, 0x4c, 0x0a, 0xde, 0x78, 0x80, 0x09, }; static const unsigned char xdh_wei25519_1488_privkey[] = { 0xa8, 0xa5, 0xd4, 0xf7, 0x89, 0x4a, 0x51, 0x95, 0x37, 0xba, 0xbf, 0xac, 0x73, 0x6d, 0xe3, 0x60, 0x54, 0xf5, 0x08, 0xda, 0xe4, 0x34, 0xb4, 0xfe, 0x63, 0xcd, 0x56, 0x33, 0x84, 0x6a, 0x26, 0x47, }; static const unsigned char xdh_wei25519_1488_sharedsecret[] = { 0x3d, 0x14, 0x58, 0x51, 0xb6, 0xff, 0x2b, 0x92, 0xb5, 0x80, 0x7e, 0xd1, 0xdf, 0x21, 0xeb, 0x50, 0xc9, 0xf2, 0x4c, 0x44, 0x74, 0xd4, 0x72, 0x1d, 0xb3, 0xab, 0xb7, 0x35, 0x6d, 0xf7, 0xb7, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1488 = { .name = "xdh_wei25519_1488", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1488_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1488_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1488_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 442 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1489 for XDH, tcId is 443 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1489_peerpubkey[] = { 0x66, 0xa0, 0x97, 0x67, 0xa0, 0xd8, 0x3b, 0xb1, 0x8d, 0x40, 0x4e, 0x12, 0x00, 0x37, 0x5a, 0x74, 0x5d, 0x1f, 0x1f, 0x74, 0x9d, 0x5d, 0xc6, 0xf8, 0x4a, 0x20, 0x5e, 0xfa, 0x6a, 0x11, 0xbc, 0x65, }; static const unsigned char xdh_wei25519_1489_privkey[] = { 0xf8, 0x3e, 0x46, 0x47, 0xe8, 0x2c, 0x56, 0x0a, 0xa0, 0x82, 0xc5, 0x96, 0x41, 0xe1, 0x3b, 0xf3, 0x66, 0xbe, 0x8f, 0x24, 0xdc, 0x01, 0xd1, 0x48, 0x01, 0xe6, 0x78, 0x41, 0x16, 0x0b, 0xed, 0x47, }; static const unsigned char xdh_wei25519_1489_sharedsecret[] = { 0x14, 0x01, 0x82, 0x9a, 0xac, 0x4e, 0x64, 0xbc, 0xfa, 0x29, 0x7a, 0x7e, 0xff, 0xc6, 0x04, 0x77, 0x09, 0x0d, 0x36, 0x27, 0xa6, 0x4a, 0x35, 0xb8, 0x72, 0xae, 0x05, 0x5d, 0x20, 0x91, 0x78, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1489 = { .name = "xdh_wei25519_1489", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1489_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1489_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1489_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 443 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1490 for XDH, tcId is 444 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1490_peerpubkey[] = { 0x39, 0xd4, 0x31, 0x31, 0x63, 0x07, 0xc8, 0x57, 0x47, 0xbd, 0x2b, 0xcf, 0x4f, 0x9e, 0x0f, 0x88, 0x92, 0xee, 0x45, 0xdf, 0x15, 0xf7, 0x80, 0x6c, 0xe6, 0x51, 0x47, 0xd9, 0x7f, 0x50, 0x34, 0x78, }; static const unsigned char xdh_wei25519_1490_privkey[] = { 0x58, 0xc6, 0xb9, 0x4b, 0xce, 0x9b, 0x15, 0xf6, 0x49, 0x46, 0xc2, 0xaa, 0x6a, 0x4e, 0x38, 0x3b, 0x0b, 0x2d, 0x43, 0x65, 0xb7, 0x99, 0x7e, 0xb2, 0x31, 0x0a, 0xc4, 0xee, 0xf1, 0x80, 0x31, 0x45, }; static const unsigned char xdh_wei25519_1490_sharedsecret[] = { 0xa0, 0xeb, 0xe6, 0x90, 0x8c, 0x54, 0x72, 0xf9, 0x37, 0x76, 0x9b, 0x9a, 0xeb, 0x31, 0x32, 0x24, 0x43, 0x7f, 0xc5, 0xd7, 0x3f, 0x4f, 0x86, 0x6f, 0xe7, 0xef, 0x41, 0xf3, 0x0e, 0x35, 0x9e, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_1490 = { .name = "xdh_wei25519_1490", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1490_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1490_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1490_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 444 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1491 for XDH, tcId is 445 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1491_peerpubkey[] = { 0x84, 0xc9, 0x2d, 0x8e, 0xcf, 0x3d, 0x0c, 0xb2, 0x2d, 0xde, 0x7d, 0x72, 0x1f, 0x04, 0x14, 0x0c, 0x2d, 0x9c, 0x17, 0x9c, 0xc8, 0x13, 0xce, 0x6c, 0xf8, 0xdb, 0x2d, 0xce, 0x61, 0x68, 0x88, 0x0d, }; static const unsigned char xdh_wei25519_1491_privkey[] = { 0x78, 0x6a, 0x97, 0x20, 0x7a, 0xdb, 0xd4, 0xb0, 0xd6, 0xbf, 0xc9, 0xf4, 0x9b, 0x18, 0x66, 0x0a, 0xd3, 0x60, 0x6c, 0x12, 0xe3, 0x25, 0x04, 0x4b, 0x86, 0x90, 0xb4, 0xfa, 0x07, 0x87, 0x46, 0x41, }; static const unsigned char xdh_wei25519_1491_sharedsecret[] = { 0x07, 0x53, 0x8f, 0x1b, 0x65, 0x83, 0x04, 0x1c, 0x49, 0x49, 0xfa, 0xfa, 0xe3, 0x34, 0x9d, 0x62, 0xf9, 0xdd, 0x30, 0x2d, 0x3d, 0x86, 0x85, 0x7a, 0xf0, 0xde, 0xdc, 0x0d, 0x5a, 0xd6, 0x74, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_1491 = { .name = "xdh_wei25519_1491", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1491_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1491_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1491_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 445 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1492 for XDH, tcId is 446 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1492_peerpubkey[] = { 0xa9, 0xce, 0xdb, 0x9e, 0x94, 0x2a, 0x47, 0x22, 0x1e, 0x42, 0x96, 0x95, 0x32, 0x20, 0xd1, 0x00, 0x07, 0xdb, 0x32, 0x7d, 0x2a, 0xcb, 0x68, 0xda, 0x6e, 0xf3, 0xa4, 0xf8, 0x77, 0xb8, 0xef, 0x1e, }; static const unsigned char xdh_wei25519_1492_privkey[] = { 0x28, 0x23, 0x10, 0x21, 0x0e, 0x57, 0x5a, 0x59, 0x39, 0x3c, 0xf1, 0x9b, 0xbe, 0x6e, 0x24, 0x75, 0x2d, 0xc2, 0x47, 0x70, 0x6f, 0x1e, 0x00, 0x31, 0xe5, 0xd3, 0x9b, 0x2d, 0xe4, 0xff, 0xf7, 0x45, }; static const unsigned char xdh_wei25519_1492_sharedsecret[] = { 0x12, 0x23, 0x50, 0x5f, 0xbb, 0x53, 0x4c, 0x1b, 0xc6, 0x10, 0x8e, 0x6b, 0x98, 0xb4, 0xf0, 0xaf, 0x29, 0xe1, 0x11, 0x58, 0xc0, 0x2d, 0x33, 0x3d, 0x65, 0x59, 0xbe, 0xec, 0xd6, 0xd3, 0xe5, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1492 = { .name = "xdh_wei25519_1492", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1492_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1492_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1492_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 446 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1493 for XDH, tcId is 447 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1493_peerpubkey[] = { 0x64, 0xe1, 0xc0, 0xc5, 0xf5, 0x94, 0x05, 0xbb, 0xc6, 0xc7, 0xdb, 0x41, 0xa3, 0x48, 0x5c, 0xc9, 0xf9, 0x1c, 0x18, 0x3b, 0x0f, 0x2b, 0x7e, 0x18, 0x94, 0xa7, 0xab, 0xd8, 0xfb, 0xbe, 0xeb, 0x23, }; static const unsigned char xdh_wei25519_1493_privkey[] = { 0xc8, 0xbf, 0x2f, 0xd4, 0xc4, 0x0d, 0x00, 0xf1, 0x46, 0x5a, 0xad, 0xa6, 0x82, 0xb1, 0x2f, 0xa9, 0x2d, 0xec, 0x10, 0x34, 0x34, 0x84, 0xab, 0x62, 0xb8, 0x87, 0x13, 0x37, 0xde, 0x1d, 0x33, 0x45, }; static const unsigned char xdh_wei25519_1493_sharedsecret[] = { 0xee, 0x03, 0x18, 0x68, 0x16, 0x5f, 0x45, 0x6f, 0x75, 0x90, 0x7b, 0xf3, 0x97, 0x42, 0xb8, 0x20, 0xe0, 0xf8, 0xe6, 0xdf, 0x9f, 0x97, 0x68, 0xd7, 0x57, 0xd4, 0x08, 0xe1, 0xcc, 0x92, 0xff, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1493 = { .name = "xdh_wei25519_1493", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1493_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1493_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1493_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 447 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1494 for XDH, tcId is 448 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1494_peerpubkey[] = { 0xa6, 0x8d, 0x2f, 0x55, 0xe6, 0x0e, 0xac, 0x79, 0x83, 0x92, 0x63, 0x10, 0xf4, 0xfa, 0xe1, 0x3f, 0x95, 0xb2, 0xbb, 0xf1, 0x40, 0xbe, 0x5e, 0xa9, 0x17, 0x51, 0x88, 0x4d, 0x90, 0x0a, 0xb4, 0x4d, }; static const unsigned char xdh_wei25519_1494_privkey[] = { 0xc0, 0x6a, 0x4a, 0x4b, 0x70, 0xf6, 0x13, 0x13, 0x6f, 0x18, 0xc0, 0xf8, 0x8e, 0x22, 0x45, 0x08, 0x6c, 0x3d, 0x1a, 0x52, 0x71, 0x72, 0x10, 0xa2, 0x1a, 0xc9, 0xd6, 0x36, 0x82, 0xf2, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_1494_sharedsecret[] = { 0xc9, 0x54, 0xfa, 0x7b, 0x04, 0x2c, 0x32, 0x94, 0x3e, 0x03, 0x19, 0x1e, 0x36, 0x7d, 0x54, 0xbe, 0x00, 0x85, 0xfa, 0x89, 0x50, 0xef, 0x2b, 0xec, 0x99, 0x62, 0x0d, 0xf7, 0x9e, 0xcb, 0xea, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1494 = { .name = "xdh_wei25519_1494", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1494_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1494_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1494_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 448 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1495 for XDH, tcId is 449 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1495_peerpubkey[] = { 0x6d, 0x3c, 0xd6, 0x23, 0xf2, 0x6a, 0x74, 0x53, 0xfa, 0x05, 0xa0, 0x1a, 0xe7, 0x58, 0xba, 0x84, 0xd3, 0xc5, 0x8d, 0x93, 0xd6, 0x0c, 0xe3, 0x27, 0x35, 0xa1, 0x5e, 0x0d, 0x05, 0x3d, 0x5b, 0x12, }; static const unsigned char xdh_wei25519_1495_privkey[] = { 0x20, 0x59, 0x6e, 0x1d, 0xc5, 0x65, 0x96, 0x82, 0x3d, 0x37, 0x69, 0x8d, 0xfa, 0x69, 0x9c, 0x79, 0x87, 0x4a, 0xae, 0xfd, 0xe7, 0x97, 0xf8, 0x63, 0xef, 0x92, 0x13, 0x59, 0x80, 0xfb, 0x20, 0x43, }; static const unsigned char xdh_wei25519_1495_sharedsecret[] = { 0x7c, 0x32, 0x19, 0xb3, 0xc1, 0xfa, 0xe1, 0xf9, 0x55, 0x90, 0xac, 0x84, 0x3e, 0xfd, 0x20, 0x84, 0xa1, 0xf4, 0xbd, 0x3e, 0xfa, 0x2f, 0x59, 0x2f, 0x02, 0x20, 0x32, 0xdb, 0x64, 0xeb, 0xcd, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1495 = { .name = "xdh_wei25519_1495", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1495_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1495_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1495_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 449 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1496 for XDH, tcId is 450 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1496_peerpubkey[] = { 0x8f, 0x19, 0x55, 0x47, 0x34, 0x6b, 0x3d, 0x53, 0xb7, 0xea, 0x4f, 0x74, 0x2b, 0x22, 0xf1, 0xef, 0x7b, 0x3c, 0xc0, 0x1a, 0x7d, 0x3d, 0xcd, 0x19, 0xaa, 0x7c, 0x5b, 0x03, 0xf3, 0x1b, 0xd2, 0x14, }; static const unsigned char xdh_wei25519_1496_privkey[] = { 0x38, 0x14, 0x15, 0x18, 0xe8, 0xe5, 0xef, 0xa1, 0xd0, 0x31, 0xc6, 0xc4, 0xd9, 0x54, 0x80, 0x23, 0x9f, 0x6c, 0x30, 0xb8, 0xcc, 0xd8, 0xc7, 0x51, 0xa9, 0xe0, 0x4b, 0xd3, 0xae, 0xc1, 0x73, 0x42, }; static const unsigned char xdh_wei25519_1496_sharedsecret[] = { 0xa3, 0x1f, 0x6b, 0x24, 0x9d, 0x64, 0xa8, 0x7c, 0x4a, 0xed, 0x32, 0x9c, 0x6c, 0x05, 0xc3, 0xf2, 0x24, 0x0b, 0x3c, 0xa9, 0x38, 0xcc, 0xdc, 0x92, 0x0b, 0xa8, 0x01, 0x6c, 0x1a, 0xea, 0xeb, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_1496 = { .name = "xdh_wei25519_1496", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1496_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1496_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1496_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 450 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1497 for XDH, tcId is 451 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1497_peerpubkey[] = { 0xff, 0xc4, 0xfe, 0x2c, 0x21, 0x27, 0xa3, 0x09, 0xc7, 0x39, 0x56, 0x56, 0x51, 0xe9, 0x81, 0x2f, 0x83, 0x4a, 0x86, 0xdb, 0xad, 0xbb, 0x78, 0x77, 0x69, 0x77, 0xf7, 0x86, 0xec, 0xdb, 0x02, 0x17, }; static const unsigned char xdh_wei25519_1497_privkey[] = { 0x20, 0x71, 0x47, 0xf2, 0xb6, 0x8f, 0xef, 0x1e, 0xfc, 0x10, 0xa0, 0x4f, 0x98, 0x8f, 0x0e, 0xb1, 0x8b, 0x27, 0x3b, 0x0b, 0x5e, 0xd1, 0x7a, 0xa7, 0xaf, 0x32, 0xc9, 0x04, 0x80, 0xe1, 0x9b, 0x43, }; static const unsigned char xdh_wei25519_1497_sharedsecret[] = { 0x4c, 0xff, 0x9f, 0x53, 0xce, 0x82, 0x06, 0x48, 0x82, 0x32, 0x9a, 0x18, 0xea, 0x4e, 0x4d, 0x0b, 0xc6, 0xd8, 0x0a, 0x63, 0x1c, 0x87, 0xc9, 0xe6, 0xfd, 0xc9, 0x18, 0xf9, 0xc1, 0xbd, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1497 = { .name = "xdh_wei25519_1497", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1497_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1497_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1497_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 451 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1498 for XDH, tcId is 452 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1498_peerpubkey[] = { 0x84, 0x75, 0xba, 0xbe, 0xea, 0xb9, 0x98, 0x0d, 0x42, 0x6a, 0xbd, 0x53, 0x23, 0xdf, 0xb3, 0x35, 0xb2, 0x19, 0xe1, 0x29, 0xbd, 0xda, 0xe4, 0xd6, 0xce, 0xbc, 0xda, 0x50, 0x75, 0x4a, 0x68, 0x25, }; static const unsigned char xdh_wei25519_1498_privkey[] = { 0x48, 0x80, 0x84, 0x53, 0x7b, 0x84, 0x0f, 0x9c, 0x93, 0xca, 0x57, 0xb3, 0xee, 0x80, 0x49, 0x14, 0x18, 0xd4, 0x42, 0x21, 0x11, 0x3e, 0x03, 0xf5, 0x63, 0x55, 0x30, 0x26, 0x04, 0xd0, 0x35, 0x47, }; static const unsigned char xdh_wei25519_1498_sharedsecret[] = { 0x24, 0x8d, 0x3d, 0x1a, 0x49, 0xb7, 0xd1, 0x73, 0xeb, 0x08, 0x0a, 0xb7, 0x16, 0xac, 0x8f, 0xde, 0x6b, 0xd1, 0xc3, 0xed, 0x8e, 0x7f, 0xd5, 0xb4, 0x48, 0xaf, 0x21, 0xbc, 0xdc, 0x2c, 0x16, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1498 = { .name = "xdh_wei25519_1498", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1498_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1498_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1498_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 452 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1499 for XDH, tcId is 453 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1499_peerpubkey[] = { 0x81, 0xf9, 0x0a, 0x2f, 0x66, 0x33, 0xd3, 0x0c, 0x2b, 0x72, 0xa2, 0x57, 0x95, 0xd2, 0xa4, 0x94, 0x63, 0xa8, 0x0b, 0x6b, 0x0e, 0xdc, 0x5a, 0xa6, 0x8b, 0xae, 0x4b, 0xf7, 0x38, 0x18, 0x55, 0x39, }; static const unsigned char xdh_wei25519_1499_privkey[] = { 0x28, 0xcf, 0xc1, 0xd0, 0x3f, 0x5c, 0x74, 0x28, 0xff, 0x3e, 0x20, 0xb1, 0x37, 0x26, 0x8b, 0x33, 0xcc, 0xc7, 0x4d, 0xb0, 0x35, 0x82, 0xd2, 0x12, 0x7c, 0x56, 0x6d, 0xf4, 0xac, 0x99, 0xf4, 0x41, }; static const unsigned char xdh_wei25519_1499_sharedsecret[] = { 0x66, 0xc6, 0xe7, 0x0c, 0xf6, 0x30, 0xbe, 0x90, 0xa2, 0xc8, 0x8f, 0xcd, 0xe7, 0xf5, 0x8c, 0xff, 0x38, 0x68, 0x66, 0x0f, 0xa9, 0x64, 0x06, 0xe8, 0xdf, 0x4a, 0xc6, 0x77, 0xdb, 0xd8, 0x5f, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1499 = { .name = "xdh_wei25519_1499", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1499_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1499_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1499_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 453 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1500 for XDH, tcId is 454 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1500_peerpubkey[] = { 0x41, 0x62, 0x6e, 0x33, 0xb3, 0xc8, 0xf4, 0x8b, 0xd1, 0x9e, 0x49, 0xde, 0xd3, 0x07, 0xf2, 0xb6, 0x3b, 0xde, 0x70, 0x5c, 0x4f, 0x3c, 0xdf, 0x9d, 0x4f, 0x92, 0xbf, 0x37, 0xc4, 0x8c, 0xba, 0x42, }; static const unsigned char xdh_wei25519_1500_privkey[] = { 0xc8, 0xe3, 0x7d, 0x10, 0xf3, 0xd0, 0x3d, 0xb3, 0xf4, 0x3e, 0x46, 0x7b, 0xdd, 0xf9, 0x8f, 0x59, 0x5c, 0xb5, 0x29, 0xad, 0x25, 0x3c, 0x20, 0xd4, 0x91, 0x28, 0x2d, 0x14, 0x00, 0xb9, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_1500_sharedsecret[] = { 0x06, 0x28, 0x3f, 0xcf, 0x69, 0xdc, 0x83, 0xe9, 0x9d, 0x92, 0xe5, 0x33, 0x6f, 0x49, 0x9a, 0x1d, 0x8f, 0xa7, 0x5e, 0xd2, 0xc8, 0x19, 0xb5, 0xae, 0x6e, 0xa8, 0x09, 0x44, 0x54, 0x32, 0x4b, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_1500 = { .name = "xdh_wei25519_1500", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1500_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1500_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1500_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 454 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1501 for XDH, tcId is 455 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1501_peerpubkey[] = { 0xeb, 0xb3, 0x2f, 0x78, 0x1c, 0x0e, 0x89, 0xb2, 0x52, 0xe6, 0x11, 0xf9, 0xd8, 0xf7, 0x9f, 0x85, 0x67, 0x87, 0x4c, 0x96, 0x65, 0x98, 0x31, 0x4b, 0x2f, 0x16, 0xaa, 0x44, 0xcf, 0xc0, 0x78, 0x43, }; static const unsigned char xdh_wei25519_1501_privkey[] = { 0x00, 0x23, 0x7e, 0x91, 0x40, 0x6a, 0x7b, 0x4d, 0xb6, 0x1e, 0x78, 0x0c, 0x59, 0x76, 0xfb, 0xb9, 0x26, 0xcd, 0xac, 0xe2, 0xfb, 0xdf, 0xdb, 0xcf, 0xce, 0x65, 0xe6, 0xdb, 0xe7, 0x78, 0x2a, 0x42, }; static const unsigned char xdh_wei25519_1501_sharedsecret[] = { 0x7d, 0x2a, 0xff, 0xb4, 0x33, 0x55, 0xf5, 0xdb, 0x12, 0x94, 0xda, 0xff, 0x55, 0xf5, 0x9b, 0x1f, 0x17, 0xe7, 0xd2, 0x5b, 0xca, 0x20, 0x74, 0x6f, 0x12, 0x48, 0x4d, 0x78, 0xe5, 0x01, 0x55, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_1501 = { .name = "xdh_wei25519_1501", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1501_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1501_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1501_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 455 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1502 for XDH, tcId is 456 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1502_peerpubkey[] = { 0xfa, 0x75, 0xe6, 0xf0, 0x8c, 0xa8, 0x15, 0xb4, 0xe4, 0x2a, 0xf2, 0x4a, 0x8e, 0x05, 0x7c, 0x9e, 0x00, 0xe8, 0x28, 0xe3, 0x3d, 0x12, 0xc0, 0xe9, 0x4d, 0x10, 0x12, 0xa7, 0x58, 0x33, 0x67, 0x44, }; static const unsigned char xdh_wei25519_1502_privkey[] = { 0x48, 0x9c, 0x41, 0x84, 0xa2, 0x3a, 0x8f, 0x5e, 0xec, 0x68, 0xa3, 0x1b, 0x41, 0xaa, 0x2c, 0x03, 0x92, 0xcd, 0x6f, 0xb1, 0x23, 0xf1, 0x0a, 0xcd, 0xb4, 0xde, 0x75, 0x29, 0x2b, 0x4b, 0x9a, 0x43, }; static const unsigned char xdh_wei25519_1502_sharedsecret[] = { 0xef, 0x8e, 0x78, 0xca, 0xb0, 0x91, 0xd6, 0x67, 0x88, 0x84, 0x89, 0xfd, 0x3a, 0x2e, 0xc9, 0x3f, 0xb6, 0x33, 0x42, 0x7d, 0x02, 0xeb, 0x77, 0xb3, 0x28, 0xd5, 0x56, 0xf2, 0xb2, 0xb0, 0xe2, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1502 = { .name = "xdh_wei25519_1502", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1502_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1502_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1502_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 456 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1503 for XDH, tcId is 457 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1503_peerpubkey[] = { 0x4d, 0x96, 0x32, 0x0c, 0xdb, 0x0c, 0xa5, 0x26, 0x55, 0xe9, 0x11, 0x18, 0xc3, 0x3f, 0x93, 0xaf, 0xe4, 0xae, 0x69, 0xe9, 0xe5, 0x13, 0xff, 0x45, 0x06, 0x75, 0x0b, 0x8e, 0xa7, 0x84, 0xce, 0x46, }; static const unsigned char xdh_wei25519_1503_privkey[] = { 0xc0, 0x59, 0x57, 0xfb, 0xc3, 0xa0, 0xe2, 0xc2, 0x2a, 0x2a, 0xef, 0x62, 0x76, 0x51, 0xca, 0x1e, 0x99, 0x30, 0x7b, 0x82, 0xa0, 0xc6, 0x17, 0x0f, 0x79, 0x50, 0xa3, 0x34, 0xf3, 0x00, 0x49, 0x41, }; static const unsigned char xdh_wei25519_1503_sharedsecret[] = { 0xc8, 0xd8, 0x5b, 0xfa, 0x74, 0xb4, 0xb2, 0x64, 0x61, 0x29, 0x7b, 0x35, 0x0c, 0x97, 0x51, 0x83, 0xfe, 0xa9, 0xd3, 0x3b, 0xa2, 0x9c, 0x3a, 0x49, 0x34, 0x50, 0x9c, 0x2e, 0xcd, 0xa5, 0x8a, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_1503 = { .name = "xdh_wei25519_1503", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1503_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1503_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1503_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 457 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1504 for XDH, tcId is 458 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1504_peerpubkey[] = { 0xc0, 0xef, 0x1b, 0x7c, 0x20, 0x23, 0x7d, 0xb3, 0x70, 0x50, 0x1f, 0x24, 0x27, 0x4e, 0x4e, 0xba, 0x91, 0x99, 0x8a, 0xe4, 0x54, 0x5f, 0x93, 0x70, 0x07, 0xe1, 0xc4, 0xa2, 0xea, 0xb6, 0x33, 0x65, }; static const unsigned char xdh_wei25519_1504_privkey[] = { 0x60, 0x11, 0x1c, 0x66, 0x29, 0xf7, 0x36, 0x35, 0x98, 0x5b, 0xe9, 0x64, 0xb8, 0x45, 0xf8, 0x7a, 0x88, 0xae, 0x56, 0x52, 0xd4, 0x5b, 0xb1, 0x45, 0x1c, 0xe8, 0xcf, 0xd2, 0xea, 0x45, 0xfe, 0x41, }; static const unsigned char xdh_wei25519_1504_sharedsecret[] = { 0x22, 0x55, 0x7e, 0x0d, 0x87, 0x41, 0xed, 0x2a, 0x63, 0xaf, 0xd5, 0xe3, 0x13, 0xaa, 0x15, 0x79, 0xfc, 0x0c, 0x88, 0xc7, 0x77, 0x2e, 0x23, 0xa6, 0x76, 0xc9, 0x4b, 0x60, 0xc8, 0x9d, 0xf5, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1504 = { .name = "xdh_wei25519_1504", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1504_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1504_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1504_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 458 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1505 for XDH, tcId is 459 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1505_peerpubkey[] = { 0xd5, 0x34, 0xd8, 0xff, 0x4d, 0x56, 0xa7, 0x3e, 0xf7, 0x61, 0x5e, 0x94, 0x52, 0x3b, 0x17, 0xe3, 0x5e, 0xdb, 0x3d, 0x0f, 0xb8, 0x7e, 0x98, 0xc6, 0x85, 0x36, 0xf6, 0x3f, 0x11, 0x4a, 0x8d, 0x6c, }; static const unsigned char xdh_wei25519_1505_privkey[] = { 0x58, 0x78, 0x58, 0x89, 0xa2, 0x16, 0xd1, 0x54, 0x56, 0x58, 0x2d, 0x4e, 0x1e, 0x3d, 0xe9, 0xe9, 0xca, 0x4a, 0x43, 0x29, 0x54, 0x41, 0x6d, 0x81, 0xca, 0xf5, 0x2b, 0x2b, 0x43, 0x4c, 0x17, 0x46, }; static const unsigned char xdh_wei25519_1505_sharedsecret[] = { 0x54, 0xd7, 0xfc, 0x17, 0xba, 0xd0, 0x02, 0x96, 0xba, 0x50, 0xb0, 0xf3, 0xd5, 0xbf, 0x8f, 0xb8, 0x3f, 0x82, 0xd5, 0x71, 0x95, 0x2a, 0x5f, 0xdb, 0x5a, 0x49, 0x41, 0x20, 0xcc, 0x61, 0x44, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_1505 = { .name = "xdh_wei25519_1505", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1505_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1505_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1505_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 459 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1506 for XDH, tcId is 460 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1506_peerpubkey[] = { 0x73, 0x3a, 0x71, 0x1b, 0xa0, 0x1b, 0x6e, 0x9b, 0x64, 0xa0, 0xbe, 0x4c, 0xdc, 0xa8, 0xc7, 0xcf, 0x3c, 0x66, 0xdf, 0x24, 0x35, 0xd5, 0x24, 0x8f, 0xb4, 0x41, 0x3f, 0xec, 0x6e, 0xe0, 0x3f, 0x70, }; static const unsigned char xdh_wei25519_1506_privkey[] = { 0x60, 0xbe, 0xf3, 0x8a, 0x38, 0x90, 0xec, 0x1e, 0xd0, 0x5c, 0x29, 0x9f, 0xce, 0xb7, 0x7d, 0xb5, 0xea, 0xd4, 0xb8, 0x8d, 0x9e, 0x93, 0x1b, 0x0f, 0x21, 0xd6, 0x64, 0xf7, 0x7d, 0xf9, 0xb5, 0x44, }; static const unsigned char xdh_wei25519_1506_sharedsecret[] = { 0xdb, 0x68, 0x51, 0xb1, 0x25, 0x85, 0xbc, 0x11, 0xbe, 0x93, 0x62, 0xc9, 0x6a, 0x54, 0x5c, 0x6f, 0x2b, 0xa5, 0x5f, 0x04, 0x00, 0x97, 0x92, 0x46, 0x3b, 0x96, 0xa3, 0x8c, 0xb9, 0xb3, 0xf0, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1506 = { .name = "xdh_wei25519_1506", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1506_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1506_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1506_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 460 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1507 for XDH, tcId is 461 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1507_peerpubkey[] = { 0x35, 0x73, 0x8d, 0xd5, 0x39, 0xd6, 0x0f, 0x69, 0xcd, 0x1a, 0x1c, 0xff, 0xc8, 0xa4, 0x2b, 0x6a, 0xf6, 0x8f, 0xe7, 0xde, 0x45, 0x39, 0x2d, 0x02, 0x83, 0x1e, 0x2a, 0x77, 0x50, 0x0e, 0xa2, 0x78, }; static const unsigned char xdh_wei25519_1507_privkey[] = { 0x58, 0x54, 0xee, 0x56, 0x68, 0x78, 0xef, 0x8b, 0x7e, 0xba, 0xf5, 0xa0, 0x58, 0x30, 0x6f, 0x25, 0x0e, 0xdf, 0x0c, 0x84, 0xfd, 0x52, 0xaf, 0x2d, 0x74, 0xb7, 0xce, 0x3c, 0x1e, 0xdd, 0xa7, 0x46, }; static const unsigned char xdh_wei25519_1507_sharedsecret[] = { 0xf6, 0xd1, 0xa6, 0x64, 0x25, 0x7f, 0xa5, 0xde, 0x3d, 0x4d, 0x57, 0xf0, 0x4e, 0xda, 0x29, 0x76, 0xbf, 0x1e, 0x35, 0xcc, 0x3a, 0xc5, 0x13, 0xe1, 0xee, 0x84, 0xd5, 0x7d, 0x21, 0x35, 0xed, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1507 = { .name = "xdh_wei25519_1507", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1507_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1507_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1507_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 461 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1508 for XDH, tcId is 462 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1508_peerpubkey[] = { 0xce, 0x93, 0x2b, 0x5a, 0xf4, 0xbe, 0x47, 0x21, 0xf9, 0x6f, 0x7b, 0x79, 0xba, 0x1c, 0x43, 0xb2, 0x06, 0x87, 0xd4, 0xaf, 0x49, 0xc3, 0x7b, 0x58, 0xdc, 0x89, 0x42, 0x79, 0xe0, 0x4b, 0xb5, 0x78, }; static const unsigned char xdh_wei25519_1508_privkey[] = { 0x98, 0x5b, 0x55, 0x12, 0x61, 0xfc, 0xe3, 0x8d, 0xdc, 0x8f, 0xf3, 0xad, 0xd3, 0x2f, 0x5c, 0x26, 0x81, 0x1d, 0x27, 0x1b, 0x9a, 0x17, 0x94, 0xe2, 0x49, 0xdd, 0x76, 0xa3, 0x8d, 0xf2, 0x84, 0x46, }; static const unsigned char xdh_wei25519_1508_sharedsecret[] = { 0xf8, 0xf7, 0x62, 0x5a, 0xc5, 0xbd, 0xe6, 0x3f, 0x75, 0x3a, 0x9b, 0xb4, 0xae, 0xfb, 0xfb, 0x9c, 0x46, 0x47, 0x20, 0x77, 0x08, 0xaf, 0x9d, 0x77, 0x4e, 0xf0, 0x8f, 0xf1, 0xb1, 0xe5, 0xa3, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1508 = { .name = "xdh_wei25519_1508", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1508_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1508_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1508_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 462 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1509 for XDH, tcId is 463 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1509_peerpubkey[] = { 0xe3, 0x65, 0x54, 0x48, 0x33, 0x9e, 0x48, 0x50, 0x80, 0x6e, 0xb5, 0x8a, 0xbb, 0xa0, 0xc8, 0x91, 0x85, 0x51, 0x1e, 0xa7, 0x2c, 0x37, 0xc4, 0x9e, 0x95, 0x83, 0xee, 0x6d, 0xd2, 0x35, 0xd2, 0x13, }; static const unsigned char xdh_wei25519_1509_privkey[] = { 0x88, 0x15, 0x05, 0x23, 0x44, 0xdc, 0xad, 0x97, 0xef, 0xd1, 0x34, 0x1e, 0x90, 0x72, 0xa8, 0x08, 0xcf, 0x99, 0x9e, 0x46, 0xe5, 0x2c, 0xf0, 0x4e, 0x0c, 0xfb, 0xcd, 0x99, 0x01, 0xe1, 0x8d, 0x43, }; static const unsigned char xdh_wei25519_1509_sharedsecret[] = { 0x5e, 0x10, 0xdf, 0xbf, 0xf4, 0x44, 0x3e, 0xfc, 0xae, 0x2c, 0xcc, 0x78, 0xc2, 0x89, 0xa4, 0x14, 0x60, 0xd5, 0xa8, 0x2f, 0x79, 0xdf, 0x72, 0x6b, 0x88, 0x24, 0xcc, 0xbe, 0xf7, 0x14, 0x6d, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1509 = { .name = "xdh_wei25519_1509", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1509_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1509_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1509_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 463 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1510 for XDH, tcId is 464 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1510_peerpubkey[] = { 0x4d, 0x16, 0x96, 0x5b, 0x16, 0x37, 0xe9, 0xd7, 0xae, 0x8f, 0xeb, 0x49, 0x9e, 0xd0, 0x55, 0x39, 0x62, 0xa9, 0xaa, 0x00, 0x22, 0xd1, 0x62, 0x0c, 0x92, 0x80, 0x72, 0xf6, 0x50, 0x1b, 0xc4, 0x1b, }; static const unsigned char xdh_wei25519_1510_privkey[] = { 0xb8, 0xe0, 0x32, 0xe9, 0xe5, 0xff, 0xba, 0xa0, 0x04, 0x39, 0x0f, 0x3a, 0x0b, 0x90, 0x0b, 0xc7, 0xcf, 0x5d, 0x11, 0x23, 0x8b, 0x7e, 0xc9, 0x64, 0xaf, 0xc4, 0xbd, 0xa2, 0xaa, 0x6c, 0x34, 0x44, }; static const unsigned char xdh_wei25519_1510_sharedsecret[] = { 0x19, 0xd7, 0xb4, 0x4c, 0x18, 0x47, 0xc4, 0x4e, 0x8f, 0x37, 0xa2, 0x2a, 0xb6, 0x9c, 0x18, 0x0f, 0xd9, 0xd7, 0x87, 0xf2, 0x04, 0x12, 0x30, 0x13, 0xe1, 0xb1, 0x68, 0x00, 0xb9, 0xcd, 0x0f, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1510 = { .name = "xdh_wei25519_1510", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1510_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1510_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1510_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 464 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1511 for XDH, tcId is 465 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1511_peerpubkey[] = { 0xc6, 0xb9, 0xe6, 0x28, 0x87, 0x37, 0xad, 0x40, 0x45, 0x2c, 0xec, 0x10, 0x22, 0x87, 0x1d, 0x90, 0xaf, 0x16, 0x42, 0xd1, 0x0b, 0xd0, 0xa9, 0x77, 0x92, 0xb1, 0xa9, 0xc8, 0x99, 0x8e, 0x22, 0x20, }; static const unsigned char xdh_wei25519_1511_privkey[] = { 0x70, 0x12, 0x85, 0x22, 0x11, 0xf6, 0x53, 0x6f, 0xca, 0x79, 0x93, 0x7e, 0x7e, 0x31, 0x6c, 0x91, 0x49, 0xb0, 0xe2, 0x0e, 0xa0, 0x3f, 0x95, 0x1e, 0x1b, 0xb0, 0x72, 0x89, 0x5c, 0xa0, 0xe0, 0x44, }; static const unsigned char xdh_wei25519_1511_sharedsecret[] = { 0xdb, 0x99, 0x0d, 0x97, 0x9f, 0x4f, 0x22, 0xf7, 0x66, 0xe7, 0x82, 0x6d, 0x93, 0x55, 0x4e, 0x77, 0x1b, 0x36, 0x1d, 0xe4, 0x61, 0x27, 0x4d, 0x6c, 0x37, 0xba, 0xad, 0xeb, 0x8e, 0xf7, 0xbe, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1511 = { .name = "xdh_wei25519_1511", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1511_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1511_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1511_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 465 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1512 for XDH, tcId is 466 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1512_peerpubkey[] = { 0xd5, 0x66, 0xfa, 0xb5, 0x05, 0xac, 0x4c, 0x7a, 0x3d, 0xc3, 0xb9, 0x40, 0x3e, 0xf1, 0x21, 0x39, 0x2c, 0xbb, 0xe2, 0x12, 0x16, 0xe5, 0xbc, 0xb8, 0xea, 0xb2, 0xdc, 0x94, 0x08, 0x98, 0x6e, 0x34, }; static const unsigned char xdh_wei25519_1512_privkey[] = { 0xd0, 0x39, 0xc1, 0xb9, 0xec, 0x47, 0x63, 0xe0, 0xad, 0x8a, 0x0e, 0xf2, 0xb0, 0x87, 0x02, 0x97, 0xd0, 0xf8, 0xb4, 0x87, 0xe6, 0x60, 0x59, 0x5a, 0x48, 0x41, 0x05, 0xd1, 0x80, 0xe1, 0x4a, 0x47, }; static const unsigned char xdh_wei25519_1512_sharedsecret[] = { 0x6d, 0x7f, 0xc5, 0xd4, 0xa8, 0xf5, 0x34, 0xb1, 0xbc, 0x0f, 0xa5, 0xe0, 0x78, 0x10, 0x42, 0x34, 0x67, 0x5c, 0x02, 0x66, 0x47, 0x36, 0x95, 0x7a, 0xbd, 0xb2, 0x7d, 0xf6, 0xfa, 0xf0, 0x7c, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1512 = { .name = "xdh_wei25519_1512", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1512_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1512_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1512_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 466 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1513 for XDH, tcId is 467 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1513_peerpubkey[] = { 0x46, 0x8d, 0x35, 0xec, 0xfb, 0x6d, 0x9b, 0x72, 0x72, 0x52, 0x32, 0x76, 0xcc, 0x5e, 0x13, 0x76, 0x05, 0x19, 0x66, 0x7f, 0x0e, 0x1e, 0x38, 0x88, 0xda, 0x4c, 0x56, 0x95, 0x5f, 0xe9, 0x11, 0x51, }; static const unsigned char xdh_wei25519_1513_privkey[] = { 0x58, 0xef, 0xcb, 0xc8, 0x77, 0x7c, 0x1b, 0x54, 0xf0, 0x9c, 0x61, 0xa2, 0x16, 0xef, 0xd4, 0x27, 0x29, 0x2e, 0xb1, 0x23, 0x12, 0xdb, 0xb3, 0xb3, 0x2b, 0xd4, 0x52, 0x54, 0xa6, 0x68, 0x3e, 0x47, }; static const unsigned char xdh_wei25519_1513_sharedsecret[] = { 0x53, 0x9c, 0x8d, 0x62, 0x9a, 0xb5, 0x1c, 0x2f, 0x3e, 0xa7, 0x27, 0x8f, 0xd5, 0xf1, 0xc3, 0x1b, 0x6c, 0x15, 0x0a, 0x82, 0xfe, 0x3f, 0x78, 0x6b, 0x93, 0xff, 0xa1, 0x59, 0xfd, 0x6d, 0x93, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1513 = { .name = "xdh_wei25519_1513", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1513_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1513_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1513_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 467 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1514 for XDH, tcId is 468 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1514_peerpubkey[] = { 0x19, 0x29, 0x53, 0x87, 0x43, 0x97, 0x7d, 0xfe, 0xa2, 0x0b, 0xf4, 0x92, 0x7d, 0xda, 0xbb, 0x2f, 0x3b, 0xb1, 0x5c, 0xac, 0x24, 0x61, 0x05, 0x45, 0x08, 0x84, 0x97, 0x18, 0x85, 0x4b, 0x55, 0x68, }; static const unsigned char xdh_wei25519_1514_privkey[] = { 0xc8, 0xd7, 0x34, 0x46, 0x02, 0x6c, 0xd0, 0xea, 0x79, 0x57, 0x73, 0xc2, 0xeb, 0x7b, 0x16, 0x34, 0x8c, 0xd5, 0xf2, 0x28, 0xe3, 0x52, 0xdb, 0xc7, 0x73, 0x28, 0xc2, 0xd8, 0xb9, 0xcd, 0xe2, 0x40, }; static const unsigned char xdh_wei25519_1514_sharedsecret[] = { 0xde, 0xe3, 0xfd, 0x19, 0xc8, 0xf2, 0x96, 0x41, 0x54, 0x48, 0xb2, 0x1a, 0xf4, 0x43, 0x85, 0xec, 0x46, 0x72, 0x7b, 0xbe, 0x67, 0xd4, 0x83, 0x9b, 0x93, 0xef, 0xe2, 0xf6, 0x80, 0xe7, 0x6d, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1514 = { .name = "xdh_wei25519_1514", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1514_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1514_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1514_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 468 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1515 for XDH, tcId is 469 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1515_peerpubkey[] = { 0x2d, 0x7a, 0xb4, 0xc6, 0xf5, 0x98, 0x65, 0x35, 0x5e, 0xe8, 0xe9, 0xde, 0x57, 0xdb, 0x19, 0xaa, 0xdf, 0x77, 0x08, 0xb7, 0xc1, 0xd1, 0xa8, 0x18, 0x48, 0x7c, 0x34, 0x06, 0x23, 0xba, 0xdc, 0x6d, }; static const unsigned char xdh_wei25519_1515_privkey[] = { 0x98, 0xb5, 0x59, 0x52, 0x3b, 0xc7, 0x78, 0xb0, 0x41, 0x8a, 0xf5, 0x3c, 0x0c, 0x32, 0xf6, 0xff, 0x5c, 0xf7, 0x71, 0xff, 0x5d, 0xf8, 0xae, 0x7c, 0xbf, 0x7c, 0x3b, 0x72, 0xae, 0xdb, 0x5b, 0x43, }; static const unsigned char xdh_wei25519_1515_sharedsecret[] = { 0x2a, 0x03, 0x40, 0xaa, 0xaf, 0xa0, 0x5d, 0x00, 0x52, 0x9c, 0x09, 0x05, 0x7e, 0xd0, 0x14, 0x5f, 0x34, 0xd2, 0xde, 0x66, 0xa3, 0xe1, 0x49, 0xcf, 0x08, 0x4e, 0xa9, 0x71, 0x68, 0x91, 0x4f, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1515 = { .name = "xdh_wei25519_1515", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1515_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1515_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1515_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 469 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1516 for XDH, tcId is 470 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1516_peerpubkey[] = { 0x43, 0x83, 0x9f, 0x4a, 0x6a, 0xa2, 0x06, 0xc8, 0x2c, 0x5a, 0x73, 0xf4, 0x9d, 0x8c, 0x9e, 0x57, 0x38, 0x26, 0xb3, 0xba, 0x72, 0x35, 0xd3, 0x12, 0x98, 0x7c, 0x17, 0xae, 0xbe, 0xe6, 0x27, 0x76, }; static const unsigned char xdh_wei25519_1516_privkey[] = { 0x58, 0x98, 0x15, 0x02, 0x7c, 0xaf, 0x82, 0x71, 0x4e, 0x96, 0xc9, 0xf9, 0x1b, 0xac, 0xe6, 0x6e, 0xc4, 0xba, 0x3e, 0x92, 0xdf, 0x3f, 0xa1, 0x4b, 0x9b, 0x8f, 0xe5, 0x03, 0x55, 0x6e, 0x45, 0x43, }; static const unsigned char xdh_wei25519_1516_sharedsecret[] = { 0x00, 0x31, 0x37, 0x17, 0xd3, 0x3e, 0x3b, 0x41, 0xa0, 0x86, 0x59, 0x86, 0x15, 0x75, 0x82, 0xe0, 0x53, 0x50, 0x2a, 0x17, 0x2b, 0x88, 0xd0, 0x1b, 0xb7, 0xb1, 0x08, 0x31, 0xa9, 0xfc, 0x4e, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1516 = { .name = "xdh_wei25519_1516", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1516_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1516_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1516_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 470 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1517 for XDH, tcId is 471 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1517_peerpubkey[] = { 0x3c, 0x32, 0x1e, 0x7f, 0x0b, 0x9e, 0x55, 0x5b, 0xc2, 0x64, 0xa2, 0xce, 0xa6, 0x17, 0xe6, 0xb2, 0xb5, 0x62, 0xeb, 0xab, 0x21, 0xfe, 0x0c, 0x22, 0x6c, 0x3e, 0x48, 0x7b, 0x7d, 0xf9, 0xa2, 0x7d, }; static const unsigned char xdh_wei25519_1517_privkey[] = { 0x80, 0x71, 0x5f, 0x67, 0x27, 0x0c, 0x99, 0x78, 0x98, 0x55, 0xce, 0xae, 0xa9, 0x9b, 0x99, 0x57, 0xcc, 0xda, 0x33, 0x32, 0x6f, 0x76, 0xbb, 0x44, 0x74, 0xab, 0x52, 0xab, 0x1e, 0xc3, 0x70, 0x41, }; static const unsigned char xdh_wei25519_1517_sharedsecret[] = { 0x9b, 0x6b, 0xe9, 0xe6, 0xf2, 0xfd, 0xb5, 0xd3, 0x32, 0x18, 0x42, 0x22, 0x5d, 0x3e, 0x91, 0xd1, 0x48, 0x28, 0xcc, 0x53, 0xba, 0x66, 0x54, 0xda, 0xbe, 0x19, 0x0b, 0x0c, 0x3e, 0xde, 0xb3, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_1517 = { .name = "xdh_wei25519_1517", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1517_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1517_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1517_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 471 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1518 for XDH, tcId is 472 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1518_peerpubkey[] = { 0x42, 0xe5, 0xa6, 0xb8, 0xe9, 0x65, 0x4b, 0xb4, 0xad, 0x62, 0x4a, 0xf3, 0xf4, 0x91, 0x87, 0x79, 0x77, 0x51, 0x3c, 0xc8, 0x77, 0x5c, 0x8f, 0xb3, 0x12, 0xad, 0x19, 0xdb, 0xf3, 0x90, 0x3a, 0x28, }; static const unsigned char xdh_wei25519_1518_privkey[] = { 0x10, 0x1b, 0x99, 0x0b, 0xd8, 0x3d, 0x68, 0x41, 0x26, 0xff, 0x04, 0x7d, 0x93, 0x0c, 0x27, 0xd0, 0x86, 0xa5, 0x88, 0xdd, 0x19, 0x68, 0x3d, 0x26, 0x29, 0xf0, 0xe3, 0x4f, 0x43, 0x74, 0xab, 0x41, }; static const unsigned char xdh_wei25519_1518_sharedsecret[] = { 0x22, 0x3f, 0x1e, 0xb5, 0x52, 0x30, 0x83, 0x73, 0x02, 0x6d, 0x11, 0xc9, 0x54, 0x68, 0x4c, 0xe6, 0xdb, 0x87, 0x0b, 0x63, 0x8b, 0x19, 0x0b, 0x94, 0x43, 0xe5, 0x0a, 0xae, 0x21, 0x9f, 0x4e, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1518 = { .name = "xdh_wei25519_1518", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1518_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1518_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1518_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 472 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1519 for XDH, tcId is 473 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1519_peerpubkey[] = { 0x0a, 0x51, 0xdd, 0x90, 0xab, 0x98, 0x5f, 0x6d, 0xea, 0xf7, 0x2f, 0x16, 0xc4, 0x50, 0x14, 0xda, 0x26, 0xdf, 0x84, 0x86, 0x97, 0xf6, 0x58, 0x2d, 0x75, 0x68, 0x8f, 0x52, 0x23, 0x34, 0x2b, 0x51, }; static const unsigned char xdh_wei25519_1519_privkey[] = { 0x20, 0x00, 0x89, 0xb7, 0x12, 0xd9, 0xa2, 0x05, 0x05, 0x97, 0x77, 0x9d, 0x46, 0x37, 0x12, 0xfc, 0xd2, 0x23, 0xe3, 0xd6, 0x78, 0x79, 0xc0, 0xfb, 0x76, 0x06, 0xf8, 0xf5, 0xf0, 0xef, 0xee, 0x40, }; static const unsigned char xdh_wei25519_1519_sharedsecret[] = { 0xfb, 0x95, 0xce, 0x4a, 0x3c, 0x1f, 0x32, 0x56, 0x38, 0xb7, 0xd4, 0x7f, 0x42, 0x16, 0xd3, 0x9a, 0x7c, 0x6c, 0x5d, 0xa9, 0xa0, 0x1c, 0xaa, 0x29, 0x7c, 0x37, 0xb6, 0x28, 0x16, 0x55, 0x5b, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1519 = { .name = "xdh_wei25519_1519", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1519_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1519_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1519_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 473 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1520 for XDH, tcId is 474 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1520_peerpubkey[] = { 0x88, 0x42, 0x31, 0x73, 0x57, 0xbd, 0xe8, 0x25, 0xef, 0x43, 0x8a, 0x1c, 0x53, 0x90, 0x6f, 0xb8, 0xb0, 0x4e, 0xa3, 0x60, 0xf7, 0xef, 0x33, 0x8c, 0x78, 0xe6, 0x68, 0x58, 0x60, 0x47, 0x93, 0x6a, }; static const unsigned char xdh_wei25519_1520_privkey[] = { 0xf0, 0x4f, 0x87, 0xf4, 0xe6, 0x23, 0xaf, 0x4c, 0x31, 0xce, 0xca, 0x0b, 0xb8, 0x7f, 0xac, 0x2d, 0x5b, 0x12, 0x51, 0x7b, 0x5a, 0x72, 0x84, 0x90, 0x2a, 0xd7, 0x58, 0x38, 0xe6, 0x5f, 0x1e, 0x41, }; static const unsigned char xdh_wei25519_1520_sharedsecret[] = { 0x48, 0x8b, 0x83, 0x41, 0xc9, 0xcb, 0x1b, 0xbf, 0x12, 0x45, 0x10, 0xb9, 0xf8, 0xda, 0xe4, 0xfa, 0xf2, 0xe0, 0xdc, 0xa9, 0xb8, 0x4e, 0x00, 0xe9, 0x52, 0xa6, 0x3b, 0x5a, 0xa3, 0x28, 0xa8, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1520 = { .name = "xdh_wei25519_1520", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1520_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1520_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1520_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 474 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1521 for XDH, tcId is 475 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1521_peerpubkey[] = { 0xc7, 0x1d, 0x92, 0xd3, 0xc9, 0x2d, 0xbf, 0xae, 0xd7, 0x55, 0xfb, 0x32, 0x79, 0x7b, 0x66, 0x7c, 0xc8, 0x6b, 0x0e, 0x79, 0x36, 0x24, 0x98, 0xe2, 0xac, 0xa3, 0x8c, 0x68, 0x97, 0x13, 0xb1, 0x6e, }; static const unsigned char xdh_wei25519_1521_privkey[] = { 0x38, 0x3c, 0xbd, 0x5a, 0x3d, 0xd0, 0x90, 0x1d, 0x09, 0xa3, 0xca, 0xc3, 0xd3, 0xa7, 0x7a, 0x97, 0x9c, 0xec, 0xf1, 0x5e, 0x20, 0x6a, 0x55, 0x3e, 0x4c, 0xa3, 0xf2, 0x4b, 0x90, 0x78, 0x39, 0x45, }; static const unsigned char xdh_wei25519_1521_sharedsecret[] = { 0x11, 0x29, 0xea, 0xe9, 0x7b, 0xf7, 0x5f, 0x73, 0x14, 0xf2, 0xe1, 0xb4, 0x03, 0xb1, 0x87, 0x37, 0xad, 0x83, 0x0c, 0x80, 0x42, 0x9e, 0x2b, 0xa0, 0xd4, 0x86, 0x6b, 0x36, 0x23, 0x99, 0x85, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1521 = { .name = "xdh_wei25519_1521", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1521_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1521_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1521_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 475 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1522 for XDH, tcId is 476 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1522_peerpubkey[] = { 0x3a, 0x21, 0xd1, 0xcf, 0x7b, 0x37, 0x44, 0xd1, 0xad, 0x26, 0x19, 0x73, 0x35, 0x84, 0x49, 0x82, 0xc2, 0xa0, 0xc6, 0xa5, 0xaa, 0x83, 0x54, 0x92, 0xbd, 0x03, 0xc4, 0x01, 0xa4, 0xfe, 0x67, 0x78, }; static const unsigned char xdh_wei25519_1522_privkey[] = { 0x70, 0x1d, 0xf0, 0x9e, 0x57, 0xb9, 0x8a, 0xec, 0x37, 0x57, 0x45, 0xdf, 0x14, 0x7b, 0x72, 0x94, 0x9a, 0x6b, 0x2b, 0xb2, 0xca, 0x3a, 0x34, 0x88, 0x15, 0x12, 0xee, 0x31, 0xe7, 0x90, 0xad, 0x42, }; static const unsigned char xdh_wei25519_1522_sharedsecret[] = { 0x07, 0x2f, 0x51, 0xd9, 0x47, 0x27, 0xf3, 0x92, 0xd5, 0x9d, 0xc7, 0xca, 0xff, 0x1f, 0x44, 0x60, 0x45, 0x23, 0x52, 0xec, 0x39, 0xc3, 0x2a, 0x1c, 0x9f, 0x07, 0x1e, 0x38, 0x88, 0x33, 0xda, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_1522 = { .name = "xdh_wei25519_1522", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1522_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1522_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1522_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 476 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1523 for XDH, tcId is 477 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1523_peerpubkey[] = { 0xd1, 0x28, 0xea, 0x3e, 0x13, 0x32, 0x5e, 0xd6, 0xeb, 0xd6, 0x53, 0x3a, 0x9f, 0xd3, 0x04, 0x5a, 0x55, 0xf2, 0x5a, 0xd8, 0xb6, 0x7d, 0xef, 0x30, 0x91, 0x28, 0x43, 0x50, 0x4c, 0x1a, 0xab, 0x29, }; static const unsigned char xdh_wei25519_1523_privkey[] = { 0xb0, 0xff, 0xa5, 0xf4, 0x92, 0x2b, 0xb1, 0x17, 0xad, 0x75, 0xff, 0x43, 0xac, 0xac, 0x62, 0x33, 0x1e, 0xfa, 0xa4, 0x55, 0x36, 0xfe, 0x88, 0x30, 0x6e, 0x4a, 0x4c, 0xb5, 0x8d, 0xb7, 0x3a, 0x47, }; static const unsigned char xdh_wei25519_1523_sharedsecret[] = { 0x30, 0x51, 0x21, 0x42, 0xd3, 0xe3, 0xa4, 0xca, 0xd6, 0x72, 0x6d, 0x9d, 0x35, 0xf2, 0xe0, 0x43, 0xfc, 0xa9, 0xdf, 0xb7, 0x50, 0x88, 0x4a, 0xe2, 0x2b, 0x25, 0x47, 0xc8, 0x40, 0xf3, 0x58, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1523 = { .name = "xdh_wei25519_1523", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1523_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1523_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1523_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 477 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1524 for XDH, tcId is 478 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1524_peerpubkey[] = { 0xe0, 0x79, 0xc8, 0xf8, 0x42, 0x31, 0x65, 0xc7, 0xe0, 0xa2, 0xc4, 0x8b, 0x4a, 0xbe, 0x90, 0xae, 0xce, 0x4e, 0x6d, 0x90, 0x3d, 0x7a, 0x5a, 0x16, 0x25, 0xfa, 0xd0, 0x41, 0x0c, 0xd5, 0x5b, 0x32, }; static const unsigned char xdh_wei25519_1524_privkey[] = { 0x68, 0x5e, 0x32, 0x71, 0xd2, 0x01, 0x57, 0x41, 0x75, 0x66, 0x12, 0xa9, 0x30, 0xe8, 0x58, 0xb9, 0x30, 0xac, 0xf2, 0x01, 0x81, 0x45, 0xf3, 0x82, 0xc8, 0x3d, 0x8c, 0xce, 0xd2, 0xe2, 0x20, 0x44, }; static const unsigned char xdh_wei25519_1524_sharedsecret[] = { 0x5b, 0x81, 0xb3, 0x76, 0x1a, 0x66, 0xd1, 0x99, 0xe8, 0xef, 0x99, 0xd2, 0x49, 0x4b, 0xd5, 0x7a, 0x02, 0x29, 0xd4, 0x56, 0x4a, 0x7f, 0x6d, 0x60, 0x55, 0xf2, 0x2a, 0xa4, 0x86, 0x81, 0xbd, 0x3a, }; static const wycheproof_xdh_test xdh_wei25519_1524 = { .name = "xdh_wei25519_1524", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1524_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1524_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1524_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 478 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1525 for XDH, tcId is 479 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1525_peerpubkey[] = { 0x65, 0x92, 0x2a, 0x06, 0xe9, 0xbe, 0x4e, 0x8a, 0x5e, 0x8a, 0xce, 0xb1, 0xa4, 0xe0, 0x8f, 0xe9, 0x0f, 0x01, 0xe1, 0x0e, 0xf2, 0xdd, 0x27, 0x31, 0x54, 0x27, 0xce, 0xdf, 0xcf, 0x95, 0xec, 0x32, }; static const unsigned char xdh_wei25519_1525_privkey[] = { 0xf8, 0xe1, 0x61, 0xd6, 0x92, 0x97, 0xe0, 0x17, 0xd7, 0xc5, 0x1b, 0x1b, 0x1f, 0xf3, 0xba, 0x70, 0x3d, 0x4c, 0x4c, 0xf8, 0xfc, 0x2b, 0x8f, 0xf4, 0x7f, 0x74, 0xc3, 0xff, 0x8c, 0x7d, 0x35, 0x41, }; static const unsigned char xdh_wei25519_1525_sharedsecret[] = { 0x03, 0x8d, 0xe7, 0xfd, 0xb9, 0xcc, 0x00, 0x30, 0xf5, 0xc1, 0x1d, 0xda, 0x00, 0x58, 0x9f, 0x0a, 0x95, 0xf6, 0x56, 0x58, 0x81, 0x5b, 0x06, 0xed, 0x01, 0x35, 0x53, 0xa0, 0x2b, 0x6c, 0x50, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_1525 = { .name = "xdh_wei25519_1525", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1525_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1525_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1525_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 479 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1526 for XDH, tcId is 480 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1526_peerpubkey[] = { 0xd3, 0x6a, 0x24, 0x0e, 0x97, 0x2d, 0xc1, 0x6e, 0x9b, 0x97, 0xa9, 0x97, 0xad, 0xa3, 0x37, 0xf0, 0x27, 0x60, 0xd0, 0x5c, 0x46, 0xd7, 0xf8, 0xd7, 0xb4, 0xe9, 0xea, 0x9a, 0x63, 0x5c, 0x7c, 0x64, }; static const unsigned char xdh_wei25519_1526_privkey[] = { 0x10, 0x5d, 0x75, 0x89, 0xf8, 0xab, 0xef, 0x0a, 0xcf, 0x09, 0x40, 0xda, 0x84, 0xa6, 0x9e, 0x8f, 0x2f, 0x30, 0x6f, 0xa7, 0x3c, 0x9a, 0xfd, 0x27, 0x34, 0x22, 0x87, 0xc1, 0xdb, 0xa8, 0x00, 0x44, }; static const unsigned char xdh_wei25519_1526_sharedsecret[] = { 0x22, 0xb0, 0xde, 0xa3, 0xb3, 0xb7, 0xca, 0x55, 0xec, 0xee, 0xaa, 0xe6, 0x44, 0x34, 0x26, 0x54, 0x8c, 0x7c, 0x15, 0xcc, 0x7d, 0xdf, 0x31, 0x78, 0x03, 0x18, 0xd1, 0xc2, 0x38, 0x79, 0xc1, 0x6a, }; static const wycheproof_xdh_test xdh_wei25519_1526 = { .name = "xdh_wei25519_1526", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1526_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1526_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1526_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 480 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1527 for XDH, tcId is 481 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1527_peerpubkey[] = { 0x4f, 0x5b, 0x8b, 0x98, 0x92, 0xb8, 0xa4, 0x6d, 0xf0, 0x8d, 0x76, 0xa4, 0x74, 0x5b, 0x1c, 0x58, 0xd4, 0xe7, 0xa3, 0x94, 0x90, 0x54, 0x35, 0x87, 0x56, 0x88, 0xca, 0x11, 0xf1, 0xe9, 0xd8, 0x6a, }; static const unsigned char xdh_wei25519_1527_privkey[] = { 0x18, 0x93, 0xd4, 0x38, 0x8b, 0x0e, 0x90, 0xf0, 0xb5, 0x02, 0x08, 0xaa, 0x8f, 0x0c, 0xc2, 0x4f, 0x57, 0x6d, 0x03, 0x64, 0x1b, 0xaf, 0x1c, 0x3e, 0xdd, 0xb2, 0xa3, 0xef, 0xa6, 0x9c, 0x9d, 0x40, }; static const unsigned char xdh_wei25519_1527_sharedsecret[] = { 0xa2, 0x5e, 0x13, 0x06, 0x68, 0x4a, 0xd7, 0x87, 0x0a, 0x31, 0xf0, 0x40, 0x45, 0x66, 0xe8, 0xd2, 0x8f, 0x2d, 0x83, 0xd4, 0xb9, 0x49, 0x78, 0x22, 0xc5, 0x7f, 0x87, 0x81, 0xb1, 0x8f, 0xec, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1527 = { .name = "xdh_wei25519_1527", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1527_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1527_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1527_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 481 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1528 for XDH, tcId is 482 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1528_peerpubkey[] = { 0xaa, 0x2f, 0x02, 0x62, 0x82, 0x69, 0x13, 0x9a, 0x7a, 0x8a, 0x16, 0xfd, 0xe9, 0x5c, 0x9b, 0xad, 0x7d, 0xa7, 0xff, 0xbd, 0x54, 0x39, 0xc3, 0x96, 0xa7, 0xd7, 0x7b, 0x6c, 0x32, 0x13, 0xe6, 0x7f, }; static const unsigned char xdh_wei25519_1528_privkey[] = { 0x00, 0x65, 0x17, 0x13, 0x01, 0xbf, 0x6b, 0x90, 0xfb, 0x16, 0xef, 0xa3, 0x55, 0x09, 0x16, 0x1f, 0x1b, 0xd6, 0xb3, 0xb9, 0x31, 0x30, 0xd4, 0x90, 0xaf, 0x9f, 0xe2, 0x24, 0xdd, 0x15, 0x5f, 0x45, }; static const unsigned char xdh_wei25519_1528_sharedsecret[] = { 0xbb, 0x44, 0x31, 0xbe, 0xa7, 0xa5, 0x87, 0x1c, 0x1b, 0xe2, 0x7a, 0x26, 0x74, 0x09, 0x46, 0x27, 0xea, 0xaa, 0x44, 0x25, 0xc9, 0x9c, 0xd3, 0xfa, 0x41, 0xbd, 0x7e, 0x13, 0xcb, 0xd7, 0xbf, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1528 = { .name = "xdh_wei25519_1528", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1528_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1528_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1528_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 482 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1529 for XDH, tcId is 483 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1529_peerpubkey[] = { 0xd9, 0x95, 0xcb, 0x28, 0x7e, 0x9a, 0x9c, 0x57, 0x91, 0xf3, 0xca, 0xe3, 0xd4, 0x94, 0xa5, 0xb5, 0x16, 0xa1, 0xe2, 0x6c, 0xbc, 0x93, 0x0f, 0x43, 0xe7, 0x3c, 0x8b, 0x70, 0xb6, 0x9d, 0x78, 0x3b, }; static const unsigned char xdh_wei25519_1529_privkey[] = { 0x10, 0xc8, 0x1a, 0x4e, 0x78, 0xd8, 0x21, 0x45, 0xb2, 0x66, 0xe1, 0xd7, 0x4b, 0x38, 0x69, 0xbf, 0x1c, 0x27, 0x42, 0x78, 0x03, 0xeb, 0xb1, 0x1c, 0x92, 0xff, 0x80, 0x73, 0xd1, 0xe4, 0xcc, 0x46, }; static const unsigned char xdh_wei25519_1529_sharedsecret[] = { 0x33, 0x0f, 0x5d, 0x0b, 0x5b, 0xcc, 0xc9, 0x0f, 0x76, 0x94, 0xdf, 0xdd, 0x9c, 0x64, 0x49, 0xa6, 0x2d, 0x93, 0xaf, 0x88, 0x40, 0xea, 0xf5, 0x71, 0xe3, 0xe0, 0x61, 0x0e, 0x01, 0x98, 0xb0, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1529 = { .name = "xdh_wei25519_1529", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1529_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1529_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1529_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 8, tcId is 483 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1530 for XDH, tcId is 484 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1530_peerpubkey[] = { 0x47, 0x9a, 0xfb, 0x1e, 0x73, 0xdc, 0x77, 0xc3, 0x74, 0x3e, 0x51, 0xe9, 0xec, 0x0b, 0xcc, 0x61, 0xce, 0x66, 0xed, 0x08, 0x4d, 0xc1, 0x0b, 0xfa, 0x27, 0x94, 0xb4, 0xc3, 0xe4, 0x95, 0x37, 0x69, }; static const unsigned char xdh_wei25519_1530_privkey[] = { 0x48, 0xb9, 0x8b, 0x4a, 0x99, 0xea, 0xdd, 0x73, 0x01, 0x2c, 0x07, 0xfe, 0x5c, 0x4a, 0x0b, 0x95, 0x90, 0xac, 0x55, 0xe8, 0x21, 0x35, 0x3b, 0x41, 0xd5, 0xf6, 0x65, 0xe1, 0x71, 0x88, 0xbc, 0x41, }; static const unsigned char xdh_wei25519_1530_sharedsecret[] = { 0xbd, 0xef, 0x00, 0xca, 0xa5, 0x14, 0xb2, 0xf8, 0xab, 0x1f, 0xb2, 0x24, 0x1e, 0x83, 0x78, 0x7a, 0x02, 0x60, 0x1e, 0xcd, 0xff, 0x6c, 0xf1, 0x66, 0xc4, 0x21, 0x0f, 0x8c, 0x1a, 0xde, 0x42, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1530 = { .name = "xdh_wei25519_1530", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1530_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1530_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1530_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 484 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1531 for XDH, tcId is 485 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1531_peerpubkey[] = { 0x37, 0x8e, 0xda, 0x41, 0x47, 0x0b, 0x0f, 0x23, 0x8a, 0x20, 0x0f, 0x80, 0x80, 0x9a, 0xd5, 0x62, 0xca, 0x41, 0xe6, 0x24, 0x11, 0xa6, 0x1f, 0xeb, 0x7f, 0x7e, 0x9b, 0x75, 0x2b, 0x55, 0x46, 0x42, }; static const unsigned char xdh_wei25519_1531_privkey[] = { 0x18, 0x97, 0x67, 0x8e, 0x38, 0x22, 0x2a, 0x61, 0xfe, 0x10, 0x5d, 0xc6, 0x64, 0x3c, 0x1e, 0xb5, 0x94, 0x0e, 0x8d, 0xbc, 0x73, 0xed, 0x6c, 0x00, 0xf2, 0x5a, 0x34, 0x32, 0x8f, 0x43, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_1531_sharedsecret[] = { 0xbf, 0xd5, 0xb5, 0xac, 0xd2, 0xd8, 0x9f, 0x21, 0x3a, 0x26, 0xca, 0xf5, 0x40, 0x62, 0xf9, 0xa2, 0x4e, 0x6f, 0x6f, 0xd8, 0xdd, 0xd0, 0xcd, 0x2e, 0x5e, 0x47, 0xb7, 0xfe, 0xa4, 0xa9, 0xc5, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_1531 = { .name = "xdh_wei25519_1531", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1531_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1531_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1531_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 485 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1532 for XDH, tcId is 486 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1532_peerpubkey[] = { 0x0c, 0xad, 0x75, 0x45, 0xad, 0xe2, 0xfd, 0x93, 0xfc, 0xae, 0x00, 0x7c, 0x97, 0x64, 0x83, 0x48, 0xf2, 0x6d, 0x85, 0x82, 0x9b, 0xdb, 0x72, 0x23, 0xa6, 0x3e, 0xcc, 0xb8, 0x4e, 0x56, 0xd4, 0x75, }; static const unsigned char xdh_wei25519_1532_privkey[] = { 0xa8, 0x98, 0xaf, 0x81, 0x38, 0xe1, 0x1a, 0xe4, 0x5b, 0xbc, 0xef, 0xa7, 0x37, 0x18, 0x2a, 0x57, 0x18, 0x85, 0xf9, 0x2d, 0x51, 0x5c, 0x32, 0x05, 0x6c, 0x7c, 0xb0, 0xd7, 0xde, 0xac, 0x47, 0x41, }; static const unsigned char xdh_wei25519_1532_sharedsecret[] = { 0xc8, 0x08, 0x58, 0x77, 0x80, 0x0c, 0x17, 0x5e, 0x94, 0x9c, 0xdd, 0x88, 0xe1, 0x96, 0xeb, 0x9c, 0x48, 0x41, 0xda, 0x2a, 0xc4, 0x46, 0xdf, 0xed, 0x90, 0x85, 0xbd, 0xa5, 0xbb, 0xec, 0x26, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1532 = { .name = "xdh_wei25519_1532", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1532_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1532_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1532_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 486 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1533 for XDH, tcId is 487 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1533_peerpubkey[] = { 0x60, 0xf2, 0x7e, 0xd0, 0xa2, 0x78, 0x04, 0xce, 0xd2, 0x37, 0xcf, 0x3c, 0x1c, 0xc7, 0x76, 0x65, 0x0f, 0xb3, 0x20, 0xba, 0xe6, 0xd5, 0xac, 0xb5, 0x64, 0xe9, 0x7b, 0x56, 0xcb, 0xa2, 0x52, 0x10, }; static const unsigned char xdh_wei25519_1533_privkey[] = { 0xb0, 0xbf, 0xef, 0x6e, 0xc0, 0x95, 0xb5, 0xa1, 0xf9, 0x39, 0x17, 0xd3, 0x2f, 0x16, 0xa2, 0x1d, 0x04, 0x62, 0xc1, 0xfd, 0xe1, 0x74, 0x46, 0xf5, 0xa5, 0x90, 0x23, 0x2d, 0x9c, 0x89, 0x5f, 0x4a, }; static const unsigned char xdh_wei25519_1533_sharedsecret[] = { 0x4c, 0x30, 0x08, 0x95, 0x82, 0x73, 0x82, 0xa9, 0xd1, 0x07, 0x90, 0x28, 0xbd, 0x6f, 0x69, 0x4a, 0x7a, 0x12, 0xdd, 0xac, 0x9c, 0x76, 0xab, 0xac, 0x6f, 0xdf, 0x5d, 0x29, 0x45, 0x7a, 0x33, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1533 = { .name = "xdh_wei25519_1533", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1533_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1533_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1533_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 487 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1534 for XDH, tcId is 488 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1534_peerpubkey[] = { 0xf9, 0x3a, 0x73, 0x27, 0x0a, 0xc1, 0x91, 0x94, 0xb8, 0xe4, 0xff, 0xd0, 0x2b, 0xe4, 0xb1, 0x43, 0x85, 0x25, 0xf8, 0x4a, 0x76, 0x22, 0x46, 0x88, 0xea, 0x89, 0xa9, 0xdd, 0x6a, 0x1b, 0xd6, 0x23, }; static const unsigned char xdh_wei25519_1534_privkey[] = { 0x60, 0x49, 0x7d, 0x44, 0x64, 0xed, 0x88, 0x23, 0xc5, 0x0f, 0xbc, 0x6b, 0x68, 0x62, 0x08, 0x26, 0xc4, 0xf6, 0x29, 0xc1, 0xd9, 0x19, 0x30, 0x58, 0xdf, 0x6b, 0xf8, 0x57, 0xc6, 0xae, 0xcc, 0x4b, }; static const unsigned char xdh_wei25519_1534_sharedsecret[] = { 0x72, 0x85, 0xfb, 0xb3, 0xf7, 0x63, 0x40, 0xa9, 0x79, 0xab, 0x6e, 0x28, 0x87, 0x27, 0xa2, 0x11, 0x33, 0x32, 0xcf, 0x93, 0x38, 0x09, 0xb0, 0x18, 0xb8, 0x73, 0x9a, 0x79, 0x6a, 0x09, 0xd0, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1534 = { .name = "xdh_wei25519_1534", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1534_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1534_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1534_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 488 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1535 for XDH, tcId is 489 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1535_peerpubkey[] = { 0xcf, 0x80, 0xc3, 0x0f, 0xcb, 0xfd, 0x53, 0x56, 0x66, 0xca, 0x1d, 0xa4, 0x99, 0xe2, 0xe9, 0x9c, 0xc5, 0x37, 0x06, 0x3e, 0x2d, 0xe1, 0x94, 0x58, 0xfc, 0xf9, 0x2f, 0x5e, 0xe3, 0x4a, 0xcf, 0x47, }; static const unsigned char xdh_wei25519_1535_privkey[] = { 0x08, 0xc6, 0xcb, 0xe0, 0x37, 0x92, 0xa3, 0x82, 0x9f, 0x06, 0xe8, 0xad, 0x54, 0xc5, 0x5d, 0xb1, 0x13, 0x23, 0x6a, 0xc0, 0xdc, 0xc9, 0xab, 0x6a, 0x9a, 0x6b, 0x10, 0xee, 0xd1, 0x04, 0x1b, 0x48, }; static const unsigned char xdh_wei25519_1535_sharedsecret[] = { 0xda, 0xbc, 0x3b, 0xd4, 0x9f, 0x19, 0xcf, 0x70, 0x71, 0x80, 0x2e, 0x43, 0xc8, 0x63, 0xed, 0x0b, 0x1d, 0x93, 0xa8, 0x41, 0x58, 0x80, 0x98, 0xb9, 0x8a, 0x0c, 0x58, 0x1b, 0xf4, 0xfe, 0x0a, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1535 = { .name = "xdh_wei25519_1535", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1535_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1535_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1535_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 489 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1536 for XDH, tcId is 490 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1536_peerpubkey[] = { 0x69, 0x8e, 0xff, 0xe0, 0xad, 0x42, 0xe1, 0x5e, 0xe1, 0xf4, 0x6f, 0xde, 0x6f, 0xc5, 0x07, 0x4f, 0xfd, 0xa1, 0x83, 0xbc, 0xf1, 0xb2, 0xdb, 0x86, 0x47, 0xf5, 0x61, 0xdd, 0xd1, 0x91, 0xdd, 0x60, }; static const unsigned char xdh_wei25519_1536_privkey[] = { 0x50, 0x04, 0x4d, 0xa3, 0x31, 0x5d, 0xd0, 0x82, 0xe9, 0xdf, 0xb6, 0xa1, 0x99, 0x4a, 0xab, 0xb3, 0x31, 0xf5, 0x3e, 0x0d, 0x1c, 0x12, 0x63, 0x33, 0x83, 0xb2, 0xa3, 0xc8, 0x67, 0x8c, 0xfe, 0x4c, }; static const unsigned char xdh_wei25519_1536_sharedsecret[] = { 0xa6, 0x1a, 0x3b, 0x15, 0x0b, 0x47, 0x70, 0x53, 0x23, 0x73, 0x67, 0x62, 0x98, 0xc9, 0xa5, 0xda, 0x28, 0xad, 0xcc, 0x43, 0x65, 0xb0, 0x6f, 0xe0, 0x7c, 0x95, 0x9c, 0xa8, 0x0e, 0x47, 0x7a, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1536 = { .name = "xdh_wei25519_1536", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1536_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1536_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1536_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 490 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1537 for XDH, tcId is 491 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1537_peerpubkey[] = { 0xbd, 0x15, 0x65, 0xb4, 0xa3, 0xf8, 0x51, 0x5d, 0xff, 0x57, 0x7b, 0xe6, 0xdc, 0xb4, 0x14, 0x51, 0x1d, 0x3d, 0x4e, 0xc2, 0xde, 0x15, 0xe0, 0xbd, 0x45, 0xb2, 0x8e, 0x9c, 0xc4, 0xca, 0xef, 0x60, }; static const unsigned char xdh_wei25519_1537_privkey[] = { 0x28, 0x56, 0x40, 0xda, 0x7a, 0x48, 0x25, 0x2e, 0x35, 0xdd, 0xce, 0x60, 0xc1, 0x4a, 0xdd, 0xb7, 0x30, 0x97, 0xfb, 0xc9, 0xac, 0x2f, 0x87, 0xc8, 0xd2, 0x77, 0x2c, 0xe8, 0x9a, 0xa6, 0xbe, 0x4d, }; static const unsigned char xdh_wei25519_1537_sharedsecret[] = { 0x91, 0x6a, 0xb4, 0xf3, 0xbf, 0xc8, 0x32, 0x1e, 0x10, 0x87, 0xd9, 0xc5, 0x44, 0x4f, 0x8f, 0x7a, 0x43, 0xe9, 0xca, 0x6d, 0x29, 0xe7, 0xba, 0x98, 0xa1, 0x9d, 0xc0, 0x5f, 0xff, 0x34, 0xed, 0x4c, }; static const wycheproof_xdh_test xdh_wei25519_1537 = { .name = "xdh_wei25519_1537", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1537_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1537_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1537_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 491 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1538 for XDH, tcId is 492 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1538_peerpubkey[] = { 0xb8, 0x64, 0x9e, 0x13, 0x84, 0x3f, 0x80, 0xcf, 0x57, 0x02, 0x39, 0x8e, 0x4a, 0x9a, 0x8c, 0x37, 0x8f, 0x29, 0xda, 0x96, 0xdf, 0xd6, 0x57, 0x9f, 0x1e, 0xb4, 0xf7, 0xea, 0x34, 0xdf, 0x67, 0x65, }; static const unsigned char xdh_wei25519_1538_privkey[] = { 0x78, 0x32, 0x71, 0xc2, 0x11, 0x99, 0xba, 0x2e, 0x94, 0xea, 0xd9, 0x2c, 0xd9, 0xdd, 0x79, 0xf7, 0x0a, 0xab, 0x37, 0x8b, 0x59, 0x49, 0x74, 0x55, 0xd3, 0x27, 0xa5, 0x90, 0x7d, 0xaf, 0xcb, 0x4a, }; static const unsigned char xdh_wei25519_1538_sharedsecret[] = { 0x84, 0x4a, 0x5d, 0xd5, 0x13, 0x95, 0x54, 0xca, 0x7b, 0x41, 0xcb, 0xe6, 0xa4, 0x79, 0x61, 0x93, 0x91, 0x2e, 0x7a, 0xa4, 0xe2, 0x01, 0xcc, 0x68, 0x94, 0x4c, 0xe2, 0xa5, 0x57, 0x74, 0xa1, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1538 = { .name = "xdh_wei25519_1538", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1538_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1538_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1538_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 492 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1539 for XDH, tcId is 493 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1539_peerpubkey[] = { 0xc3, 0x96, 0x93, 0x87, 0x37, 0xab, 0xdf, 0x79, 0x1e, 0x09, 0xa9, 0x7e, 0xba, 0x57, 0x7c, 0x43, 0x7d, 0x9b, 0x67, 0xc2, 0xda, 0xe9, 0x4e, 0x13, 0xea, 0xb7, 0x29, 0x6e, 0xc0, 0xfc, 0x73, 0x7e, }; static const unsigned char xdh_wei25519_1539_privkey[] = { 0xd0, 0x67, 0x6a, 0x0b, 0x9a, 0x04, 0x6c, 0x62, 0xd5, 0xb2, 0xe7, 0x40, 0xd9, 0xcc, 0x43, 0xfa, 0x37, 0x96, 0x5d, 0xea, 0x93, 0xc2, 0x32, 0x54, 0xf7, 0xbf, 0x56, 0x9f, 0x2b, 0xeb, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_1539_sharedsecret[] = { 0x10, 0x78, 0x03, 0x33, 0xb2, 0xa6, 0x17, 0x01, 0x36, 0x26, 0x5b, 0xb5, 0xeb, 0xc6, 0xc8, 0x18, 0x81, 0x7f, 0x2e, 0x48, 0xae, 0x37, 0x25, 0x28, 0xc8, 0xf3, 0x44, 0x33, 0xfd, 0xd6, 0x21, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1539 = { .name = "xdh_wei25519_1539", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1539_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1539_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1539_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 493 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1540 for XDH, tcId is 494 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1540_peerpubkey[] = { 0x55, 0x7b, 0x82, 0x50, 0x12, 0xd9, 0x8f, 0x06, 0x5b, 0xb9, 0x5a, 0x2a, 0xb9, 0xb2, 0xd2, 0xd8, 0xb8, 0x3f, 0xd2, 0x03, 0x79, 0x12, 0x50, 0x8c, 0x26, 0x3f, 0x86, 0xd7, 0xe3, 0x6c, 0x4f, 0x24, }; static const unsigned char xdh_wei25519_1540_privkey[] = { 0x60, 0x8c, 0x84, 0xd2, 0xb7, 0x6f, 0xcc, 0xda, 0x57, 0x9e, 0x97, 0x4d, 0xb3, 0xd3, 0xb2, 0xce, 0x39, 0xa6, 0xbc, 0x0d, 0xad, 0x44, 0x05, 0x99, 0xdb, 0x22, 0x41, 0x1b, 0x60, 0x46, 0x78, 0x49, }; static const unsigned char xdh_wei25519_1540_sharedsecret[] = { 0x5c, 0xe8, 0x48, 0x42, 0xdb, 0xae, 0x8b, 0x79, 0x5b, 0x3d, 0x54, 0x53, 0x43, 0x55, 0x80, 0x45, 0x50, 0x8f, 0x27, 0x13, 0x83, 0xbf, 0xb3, 0xdd, 0x39, 0x43, 0xf4, 0x10, 0x13, 0x98, 0xc8, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1540 = { .name = "xdh_wei25519_1540", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1540_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1540_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1540_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 494 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1541 for XDH, tcId is 495 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1541_peerpubkey[] = { 0xae, 0x98, 0x29, 0x6d, 0x4a, 0x2f, 0xbc, 0xbb, 0x40, 0xb4, 0x72, 0xf4, 0x06, 0x32, 0x31, 0x60, 0x8b, 0xb1, 0x46, 0x5c, 0x22, 0x6c, 0x8a, 0x4a, 0x2d, 0xff, 0x29, 0xaf, 0xd9, 0x15, 0x88, 0x2a, }; static const unsigned char xdh_wei25519_1541_privkey[] = { 0x80, 0xf2, 0x33, 0x93, 0x6a, 0x88, 0x21, 0x93, 0x6d, 0x39, 0x11, 0x4c, 0x84, 0xd9, 0x29, 0xe7, 0x97, 0x60, 0xb2, 0x76, 0x80, 0x77, 0x9e, 0x50, 0x09, 0xe1, 0x70, 0x94, 0x10, 0xdd, 0x8e, 0x4f, }; static const unsigned char xdh_wei25519_1541_sharedsecret[] = { 0x4f, 0x11, 0xaa, 0x0c, 0x31, 0x31, 0x95, 0xf9, 0x6f, 0x25, 0xca, 0xdc, 0xbf, 0x49, 0xf0, 0x6a, 0x93, 0x2d, 0x8b, 0x05, 0x18, 0x79, 0xea, 0x53, 0x7d, 0x1c, 0x6d, 0xfe, 0xe7, 0xf3, 0x6d, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1541 = { .name = "xdh_wei25519_1541", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1541_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1541_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1541_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 495 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1542 for XDH, tcId is 496 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1542_peerpubkey[] = { 0x8b, 0x9d, 0x24, 0x98, 0x29, 0xfb, 0xe8, 0x13, 0x33, 0xd8, 0x50, 0x50, 0xda, 0x88, 0x99, 0x8f, 0x63, 0xfa, 0xc6, 0x65, 0x67, 0x9e, 0x27, 0xdb, 0xbe, 0x21, 0xb7, 0x45, 0xdd, 0x14, 0xe1, 0x45, }; static const unsigned char xdh_wei25519_1542_privkey[] = { 0xc8, 0xd8, 0x0b, 0x1a, 0x34, 0xf2, 0x11, 0x94, 0xf0, 0x47, 0xa6, 0xf0, 0x32, 0x8b, 0xb9, 0x47, 0xe2, 0xe7, 0xaf, 0xf6, 0xa0, 0x43, 0x55, 0x3a, 0xa0, 0x7f, 0x2a, 0xbf, 0x99, 0xaa, 0xf0, 0x48, }; static const unsigned char xdh_wei25519_1542_sharedsecret[] = { 0x1d, 0x61, 0x90, 0x70, 0xbf, 0x56, 0x26, 0x06, 0x4b, 0xe1, 0x00, 0x25, 0xe7, 0x4e, 0x33, 0x6c, 0x81, 0xef, 0x31, 0x66, 0xb7, 0x43, 0xf9, 0x9c, 0x75, 0x1f, 0xb9, 0x05, 0x87, 0xc3, 0x1d, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1542 = { .name = "xdh_wei25519_1542", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1542_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1542_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1542_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 496 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1543 for XDH, tcId is 497 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1543_peerpubkey[] = { 0x61, 0x89, 0x60, 0x93, 0xe2, 0x69, 0x7c, 0x78, 0x23, 0x0a, 0xfd, 0xda, 0x12, 0x63, 0x9c, 0xbe, 0x43, 0x42, 0x82, 0x7b, 0x8d, 0x2b, 0x09, 0x32, 0x81, 0xf1, 0x48, 0xeb, 0x60, 0xb9, 0x03, 0x4b, }; static const unsigned char xdh_wei25519_1543_privkey[] = { 0x90, 0x21, 0x47, 0x7b, 0x45, 0x23, 0x61, 0x58, 0x00, 0x59, 0x36, 0x4c, 0x6f, 0x94, 0xf4, 0x98, 0x1e, 0xe9, 0x4e, 0xa3, 0xf9, 0xb7, 0xd3, 0x74, 0x39, 0xbc, 0x82, 0xae, 0x45, 0x81, 0x6f, 0x4d, }; static const unsigned char xdh_wei25519_1543_sharedsecret[] = { 0x53, 0x2e, 0x79, 0x78, 0x61, 0xdb, 0x56, 0xb9, 0xd5, 0xdb, 0x88, 0x25, 0xfb, 0x72, 0xf8, 0x62, 0x9c, 0x24, 0x22, 0xf8, 0xab, 0xea, 0x72, 0x1a, 0xd2, 0xd7, 0xb9, 0xe7, 0x7a, 0x95, 0xb5, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1543 = { .name = "xdh_wei25519_1543", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1543_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1543_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1543_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 497 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1544 for XDH, tcId is 498 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1544_peerpubkey[] = { 0xcc, 0xc1, 0xdc, 0x18, 0x62, 0x29, 0xdb, 0xa9, 0xa9, 0x36, 0x0a, 0x0f, 0x7f, 0xf0, 0x02, 0x47, 0xa3, 0x73, 0x26, 0x25, 0xac, 0xaa, 0xcd, 0x18, 0xea, 0x13, 0xa9, 0xa8, 0xb4, 0x0f, 0xac, 0x4f, }; static const unsigned char xdh_wei25519_1544_privkey[] = { 0x60, 0x79, 0xda, 0xe0, 0x4c, 0x40, 0xa5, 0x9e, 0xa4, 0xe0, 0xc8, 0xc1, 0x70, 0x92, 0xe4, 0xc8, 0x5e, 0xa9, 0x13, 0x3d, 0x14, 0x33, 0x07, 0x36, 0x34, 0x87, 0x83, 0x6d, 0xf4, 0xe3, 0x03, 0x49, }; static const unsigned char xdh_wei25519_1544_sharedsecret[] = { 0x4f, 0x67, 0x8b, 0x64, 0xfd, 0x1f, 0x85, 0xcb, 0xbd, 0x5f, 0x7e, 0x7f, 0x3c, 0x8a, 0xc9, 0x5e, 0xc7, 0x50, 0x0e, 0x10, 0x2e, 0x90, 0x06, 0xd6, 0xd4, 0x2f, 0x48, 0xfb, 0x24, 0x73, 0xab, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1544 = { .name = "xdh_wei25519_1544", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1544_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1544_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1544_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1545 for XDH, tcId is 499 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1545_peerpubkey[] = { 0x69, 0xe3, 0x68, 0xc0, 0xb7, 0xe7, 0x8e, 0xb9, 0xf3, 0xa5, 0x3b, 0xf4, 0x58, 0xf6, 0xe7, 0x9d, 0xc4, 0x88, 0x3b, 0xf9, 0x45, 0x8f, 0x04, 0xa8, 0xc1, 0x2c, 0x4d, 0xdd, 0x94, 0xd6, 0x21, 0x51, }; static const unsigned char xdh_wei25519_1545_privkey[] = { 0x28, 0x1d, 0xb6, 0xa5, 0xac, 0x9a, 0x47, 0xd4, 0xa7, 0xb2, 0xb9, 0x1a, 0x87, 0xf6, 0x53, 0x6c, 0xe6, 0x2d, 0x4e, 0x51, 0x29, 0xb8, 0xd6, 0x47, 0xb9, 0x7f, 0x9c, 0x50, 0x40, 0x14, 0x89, 0x4c, }; static const unsigned char xdh_wei25519_1545_sharedsecret[] = { 0xe0, 0x69, 0xfd, 0x06, 0x70, 0x2f, 0x10, 0xf3, 0x3a, 0xdb, 0x8c, 0xf0, 0x76, 0x68, 0x80, 0x63, 0x48, 0x65, 0xb5, 0x10, 0xe2, 0xda, 0x40, 0x92, 0x41, 0xfb, 0x5f, 0x17, 0x80, 0x50, 0x51, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1545 = { .name = "xdh_wei25519_1545", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1545_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1545_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1545_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1546 for XDH, tcId is 500 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1546_peerpubkey[] = { 0xf2, 0x1f, 0x9b, 0xad, 0xd9, 0x8d, 0xd8, 0xa1, 0x03, 0xcc, 0x2a, 0xb5, 0x48, 0x4f, 0xac, 0x6c, 0x2b, 0xfd, 0xd2, 0x67, 0x1e, 0xe6, 0xe6, 0x74, 0x13, 0x4a, 0x86, 0xb8, 0x9c, 0xee, 0x91, 0x60, }; static const unsigned char xdh_wei25519_1546_privkey[] = { 0xd8, 0x30, 0xf3, 0xc4, 0x78, 0x58, 0x29, 0xa0, 0xf9, 0x45, 0x85, 0x7e, 0x0e, 0x85, 0xe0, 0xae, 0x72, 0x37, 0x02, 0xb5, 0x77, 0x83, 0xb9, 0x33, 0xcd, 0x2a, 0x2a, 0xd0, 0x54, 0x84, 0xfe, 0x49, }; static const unsigned char xdh_wei25519_1546_sharedsecret[] = { 0xfe, 0xe2, 0x18, 0xeb, 0x1f, 0x92, 0x86, 0x44, 0x86, 0xe8, 0x3c, 0x17, 0x31, 0xf0, 0x4b, 0xb8, 0xc7, 0xe6, 0xd7, 0x14, 0x3e, 0x39, 0x15, 0xbc, 0xbf, 0x80, 0xfe, 0x03, 0xff, 0x69, 0xdc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1546 = { .name = "xdh_wei25519_1546", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1546_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1546_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1546_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1547 for XDH, tcId is 501 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1547_peerpubkey[] = { 0xe8, 0x53, 0x06, 0x2b, 0x2d, 0x6f, 0x38, 0xd0, 0x21, 0xd6, 0x45, 0x16, 0x3e, 0xa2, 0x08, 0xd0, 0xe1, 0x93, 0xa4, 0x79, 0xf1, 0x1f, 0x99, 0x97, 0x1b, 0x98, 0xe2, 0x11, 0x88, 0xfd, 0x0b, 0x2c, }; static const unsigned char xdh_wei25519_1547_privkey[] = { 0x10, 0x23, 0x0b, 0xd0, 0x72, 0x1f, 0x4c, 0x8c, 0x4b, 0x92, 0x18, 0x81, 0xdd, 0x88, 0xc6, 0x03, 0xaf, 0x50, 0x1e, 0xe8, 0x0e, 0x21, 0x02, 0xf8, 0xac, 0xc3, 0x0c, 0xf8, 0xb2, 0xac, 0xd3, 0x49, }; static const unsigned char xdh_wei25519_1547_sharedsecret[] = { 0x64, 0xbd, 0xfa, 0x02, 0x07, 0xa1, 0x74, 0xca, 0x17, 0xee, 0xba, 0x8d, 0xf7, 0x4d, 0x79, 0xb2, 0x5f, 0x54, 0x51, 0x0e, 0x61, 0x74, 0x92, 0x30, 0x34, 0xa4, 0xd6, 0xee, 0x0c, 0x16, 0x7e, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1547 = { .name = "xdh_wei25519_1547", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1547_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1547_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1547_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 501 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1548 for XDH, tcId is 502 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1548_peerpubkey[] = { 0x36, 0x2e, 0xb9, 0x2d, 0xab, 0x9f, 0xb2, 0x9f, 0x7e, 0xd0, 0xe0, 0x38, 0x43, 0xdc, 0xc1, 0x57, 0x97, 0x92, 0x8c, 0x2b, 0x4e, 0x51, 0xec, 0x26, 0x02, 0x04, 0x17, 0x9c, 0x1c, 0x12, 0x94, 0x5f, }; static const unsigned char xdh_wei25519_1548_privkey[] = { 0xf0, 0xa3, 0x4d, 0x6d, 0x76, 0x89, 0x6e, 0x17, 0xcb, 0x8f, 0x66, 0xfe, 0xda, 0x23, 0x11, 0x5f, 0xfb, 0x96, 0xf2, 0x46, 0xb8, 0x23, 0xbb, 0x63, 0xde, 0xc0, 0x83, 0x35, 0x78, 0x7d, 0xe7, 0x4c, }; static const unsigned char xdh_wei25519_1548_sharedsecret[] = { 0xd7, 0xf4, 0x58, 0x3e, 0xe4, 0xfe, 0x86, 0xaf, 0x3a, 0x3f, 0x1d, 0xfc, 0xb2, 0x95, 0xba, 0x3a, 0x3e, 0x37, 0xbc, 0xed, 0x7b, 0x9c, 0x6f, 0x00, 0x0a, 0x95, 0x33, 0x65, 0x30, 0x31, 0x89, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1548 = { .name = "xdh_wei25519_1548", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1548_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1548_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1548_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 502 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1549 for XDH, tcId is 503 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1549_peerpubkey[] = { 0xff, 0x54, 0x3f, 0x1e, 0x81, 0x99, 0x6e, 0x88, 0x63, 0x1f, 0x03, 0x0c, 0xeb, 0xa7, 0xe6, 0x03, 0xb1, 0x30, 0x33, 0xef, 0xd2, 0x05, 0xe6, 0x8b, 0xd3, 0x6b, 0x28, 0x46, 0x81, 0x34, 0xaa, 0x73, }; static const unsigned char xdh_wei25519_1549_privkey[] = { 0x90, 0x73, 0xc1, 0xd0, 0xa1, 0x73, 0xc7, 0xff, 0x02, 0xdc, 0x96, 0x6a, 0x16, 0x59, 0x93, 0xd9, 0xc4, 0xc9, 0x35, 0x75, 0x14, 0xf7, 0xa6, 0xbb, 0x7a, 0xaa, 0x4b, 0x08, 0x27, 0x71, 0x89, 0x48, }; static const unsigned char xdh_wei25519_1549_sharedsecret[] = { 0xc1, 0xb5, 0xe5, 0xf4, 0x40, 0x1c, 0x98, 0xfa, 0x14, 0xeb, 0xa8, 0xaa, 0xfa, 0xe3, 0x0a, 0x64, 0x1b, 0xfd, 0x8f, 0xb1, 0x32, 0xbe, 0x03, 0x41, 0x3f, 0x3b, 0xf2, 0x92, 0x90, 0xd4, 0x9e, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1549 = { .name = "xdh_wei25519_1549", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1549_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1549_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1549_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 503 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1550 for XDH, tcId is 504 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1550_peerpubkey[] = { 0x90, 0xef, 0x70, 0x84, 0x4e, 0xad, 0x16, 0x13, 0xf6, 0x9d, 0xf7, 0xd7, 0x8c, 0x05, 0x78, 0x13, 0xf8, 0x66, 0xc0, 0xd9, 0x5e, 0x6d, 0x22, 0xca, 0xee, 0x4a, 0x01, 0x2b, 0x9c, 0x1c, 0x4b, 0x33, }; static const unsigned char xdh_wei25519_1550_privkey[] = { 0xb0, 0xc1, 0x82, 0x25, 0x66, 0xe0, 0x16, 0xc1, 0x2a, 0xe3, 0x5e, 0xc0, 0x35, 0xed, 0xd0, 0x9a, 0xf3, 0xcb, 0x7a, 0x48, 0xf5, 0x5c, 0x90, 0x28, 0xe0, 0x5e, 0x11, 0x78, 0xa8, 0xc3, 0x82, 0x4e, }; static const unsigned char xdh_wei25519_1550_sharedsecret[] = { 0x93, 0x69, 0xeb, 0xb3, 0xd2, 0xb7, 0x44, 0x34, 0x1c, 0xba, 0x77, 0x30, 0x27, 0x19, 0xa4, 0xb2, 0xd6, 0x3a, 0xff, 0x61, 0x28, 0x72, 0xf8, 0x6d, 0x98, 0x77, 0xa7, 0x6b, 0xc9, 0x19, 0xca, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1550 = { .name = "xdh_wei25519_1550", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1550_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1550_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1550_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 504 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1551 for XDH, tcId is 505 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1551_peerpubkey[] = { 0x88, 0xc1, 0xae, 0x57, 0x5a, 0xd0, 0x73, 0xdd, 0xa6, 0x6c, 0x6e, 0xac, 0xb7, 0xb7, 0xf4, 0x36, 0xe1, 0xf8, 0xad, 0x72, 0xa0, 0xdb, 0x5c, 0x04, 0xe5, 0x66, 0x0b, 0x7b, 0x71, 0x9e, 0x4c, 0x4b, }; static const unsigned char xdh_wei25519_1551_privkey[] = { 0xe0, 0x6f, 0xe6, 0x4e, 0x21, 0x17, 0x79, 0x6f, 0x99, 0x7b, 0xbc, 0xd3, 0xbc, 0xad, 0x30, 0x67, 0xcf, 0x12, 0x91, 0x64, 0x0a, 0x3a, 0x64, 0x3f, 0xb3, 0x59, 0x80, 0x9a, 0x40, 0x16, 0x83, 0x4d, }; static const unsigned char xdh_wei25519_1551_sharedsecret[] = { 0x33, 0x53, 0x94, 0xbe, 0x9c, 0x15, 0x49, 0x01, 0xc0, 0xb4, 0x06, 0x33, 0x00, 0x00, 0x18, 0x04, 0xb1, 0xcd, 0x01, 0xb2, 0x7f, 0xa5, 0x62, 0xe4, 0x4f, 0x33, 0x02, 0x16, 0x88, 0x37, 0x16, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1551 = { .name = "xdh_wei25519_1551", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1551_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1551_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1551_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 505 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1552 for XDH, tcId is 506 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1552_peerpubkey[] = { 0xdc, 0xff, 0xc4, 0xc1, 0xe1, 0xfb, 0xa5, 0xfd, 0xa9, 0xd5, 0xc9, 0x84, 0x21, 0xd9, 0x9c, 0x25, 0x7a, 0xfa, 0x90, 0x92, 0x1b, 0xc2, 0x12, 0xa0, 0x46, 0xd9, 0x0f, 0x66, 0x83, 0xe8, 0xa4, 0x67, }; static const unsigned char xdh_wei25519_1552_privkey[] = { 0x70, 0x7e, 0xe8, 0x1f, 0x11, 0x3a, 0x24, 0x4c, 0x9d, 0x87, 0x60, 0x8b, 0x12, 0x15, 0x8c, 0x50, 0xf9, 0xac, 0x1f, 0x2c, 0x89, 0x48, 0xd1, 0x70, 0xad, 0x16, 0xab, 0x0a, 0xd8, 0x66, 0xd7, 0x4b, }; static const unsigned char xdh_wei25519_1552_sharedsecret[] = { 0x7e, 0xcd, 0xd5, 0x4c, 0x5e, 0x15, 0xf7, 0xb4, 0x06, 0x1b, 0xe2, 0xc3, 0x0b, 0x5a, 0x48, 0x84, 0xa0, 0x25, 0x65, 0x81, 0xf8, 0x7d, 0xf6, 0x0d, 0x57, 0x9a, 0x33, 0x45, 0x65, 0x3e, 0xb6, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1552 = { .name = "xdh_wei25519_1552", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1552_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1552_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1552_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 506 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1553 for XDH, tcId is 507 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1553_peerpubkey[] = { 0x6c, 0x00, 0x44, 0xcd, 0x10, 0x57, 0x8c, 0x5a, 0xff, 0x1f, 0xf4, 0x91, 0x7b, 0x04, 0x1b, 0x76, 0xc9, 0xa9, 0xae, 0x23, 0x66, 0x4e, 0xb8, 0xcf, 0x97, 0x8b, 0xd7, 0xaa, 0x19, 0x2c, 0xf2, 0x49, }; static const unsigned char xdh_wei25519_1553_privkey[] = { 0x70, 0x89, 0x65, 0x4b, 0xaa, 0xcb, 0xb6, 0x5b, 0xd0, 0x0c, 0xd8, 0xcb, 0x9d, 0xe4, 0x68, 0x0e, 0x74, 0x80, 0x75, 0xe8, 0x84, 0x2c, 0xa6, 0x9d, 0x44, 0x8f, 0xb5, 0x0f, 0xea, 0x85, 0xe7, 0x4e, }; static const unsigned char xdh_wei25519_1553_sharedsecret[] = { 0x0d, 0x8c, 0x21, 0xfa, 0x80, 0x0e, 0xe6, 0x3c, 0xe5, 0xe4, 0x73, 0xd4, 0xc2, 0x97, 0x54, 0x95, 0x06, 0x2d, 0x8a, 0xfa, 0x65, 0x50, 0x91, 0x12, 0x2c, 0xb4, 0x17, 0x99, 0xd3, 0x74, 0x59, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1553 = { .name = "xdh_wei25519_1553", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1553_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1553_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1553_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 507 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1554 for XDH, tcId is 508 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1554_peerpubkey[] = { 0xd9, 0x08, 0x9d, 0xe9, 0x02, 0xe1, 0x43, 0xdc, 0xd9, 0x10, 0x7e, 0x5a, 0x33, 0x93, 0xa3, 0xf7, 0xfe, 0x05, 0xd9, 0x26, 0xc3, 0x57, 0xb4, 0x7e, 0x30, 0x7a, 0x23, 0x6c, 0xb5, 0x90, 0xfd, 0x64, }; static const unsigned char xdh_wei25519_1554_privkey[] = { 0x80, 0x89, 0x78, 0x4c, 0x52, 0xcd, 0x67, 0xe4, 0x53, 0x6e, 0x56, 0x82, 0x18, 0xc7, 0xb7, 0x03, 0x3b, 0x28, 0x41, 0x3f, 0x94, 0x2f, 0xca, 0x24, 0xed, 0x69, 0xe4, 0x34, 0x96, 0xef, 0xa1, 0x4b, }; static const unsigned char xdh_wei25519_1554_sharedsecret[] = { 0xdb, 0x6f, 0xec, 0x44, 0xbf, 0x11, 0x83, 0x16, 0xa6, 0xbd, 0xfb, 0xae, 0x9a, 0xf4, 0x47, 0xba, 0xed, 0xe4, 0xd8, 0x2d, 0xaa, 0x16, 0xbe, 0xd5, 0x96, 0xea, 0x6f, 0x05, 0xd4, 0xa5, 0x14, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1554 = { .name = "xdh_wei25519_1554", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1554_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1554_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1554_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 508 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1555 for XDH, tcId is 509 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1555_peerpubkey[] = { 0x8c, 0x4a, 0x26, 0xaa, 0x31, 0x9c, 0x2c, 0xc4, 0xa4, 0x15, 0x8c, 0x2b, 0xc6, 0x9a, 0x0d, 0x5b, 0x34, 0x0b, 0x60, 0x62, 0x8a, 0x14, 0xcf, 0x31, 0xbb, 0x0a, 0xe5, 0xdd, 0xc3, 0x8a, 0xe8, 0x66, }; static const unsigned char xdh_wei25519_1555_privkey[] = { 0x00, 0xe7, 0x3e, 0x4e, 0x01, 0x31, 0x48, 0xb9, 0xf0, 0x52, 0x73, 0xba, 0xd6, 0x26, 0xbb, 0x12, 0x6a, 0x40, 0xec, 0x45, 0x58, 0xf5, 0x42, 0x50, 0x96, 0xb4, 0x89, 0x47, 0xe0, 0xa9, 0xde, 0x4a, }; static const unsigned char xdh_wei25519_1555_sharedsecret[] = { 0xec, 0xc1, 0x20, 0x4b, 0xc7, 0x53, 0xc4, 0xce, 0xc4, 0xc9, 0x05, 0x9f, 0xd7, 0xb5, 0x04, 0x94, 0x4e, 0xbf, 0x99, 0x5a, 0xb1, 0xb1, 0xd4, 0x9f, 0x0b, 0x3b, 0x32, 0x53, 0x53, 0xbe, 0x3a, 0x15, }; static const wycheproof_xdh_test xdh_wei25519_1555 = { .name = "xdh_wei25519_1555", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1555_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1555_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1555_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 509 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1556 for XDH, tcId is 510 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1556_peerpubkey[] = { 0xce, 0x72, 0x95, 0xd1, 0x22, 0x7c, 0x90, 0x62, 0xaa, 0xb9, 0xcf, 0x02, 0xfc, 0x56, 0x71, 0xfb, 0x81, 0x63, 0x2e, 0x72, 0x53, 0x67, 0xf1, 0x31, 0xd4, 0x12, 0x28, 0x24, 0xa6, 0x13, 0x2d, 0x68, }; static const unsigned char xdh_wei25519_1556_privkey[] = { 0x78, 0xed, 0x4c, 0x9b, 0xf9, 0xf4, 0x4d, 0xb8, 0xd9, 0x33, 0x88, 0x98, 0x51, 0x91, 0xec, 0xf5, 0x92, 0x26, 0xb9, 0xc1, 0x20, 0x5f, 0xe7, 0xe7, 0x62, 0xc3, 0x27, 0x58, 0x1c, 0x75, 0x88, 0x4e, }; static const unsigned char xdh_wei25519_1556_sharedsecret[] = { 0x37, 0x40, 0xde, 0x29, 0x7f, 0xf0, 0x12, 0x20, 0x67, 0x95, 0x1e, 0x89, 0x85, 0x24, 0x71, 0x23, 0x44, 0x0e, 0x0f, 0x27, 0x17, 0x1d, 0xa9, 0x9e, 0x26, 0x3d, 0x5b, 0x44, 0x50, 0xf5, 0x9f, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1556 = { .name = "xdh_wei25519_1556", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1556_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1556_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1556_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 510 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1557 for XDH, tcId is 511 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1557_peerpubkey[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const unsigned char xdh_wei25519_1557_privkey[] = { 0xa0, 0x23, 0xcd, 0xd0, 0x83, 0xef, 0x5b, 0xb8, 0x2f, 0x10, 0xd6, 0x2e, 0x59, 0xe1, 0x5a, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, }; static const unsigned char xdh_wei25519_1557_sharedsecret[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1557 = { .name = "xdh_wei25519_1557", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1557_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1557_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1557_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "private key == -1 (mod order), tcId is 511 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1558 for XDH, tcId is 512 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1558_peerpubkey[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const unsigned char xdh_wei25519_1558_privkey[] = { 0x58, 0x08, 0x3d, 0xd2, 0x61, 0xad, 0x91, 0xef, 0xf9, 0x52, 0x32, 0x2e, 0xc8, 0x24, 0xc6, 0x82, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1558_sharedsecret[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1558 = { .name = "xdh_wei25519_1558", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1558_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1558_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1558_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 512 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1559 for XDH, tcId is 513 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1559_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_1559_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1559_sharedsecret[] = { 0x63, 0xef, 0x7d, 0x1c, 0x58, 0x64, 0x76, 0xec, 0x78, 0xbb, 0x7f, 0x74, 0x7e, 0x32, 0x1e, 0x01, 0x10, 0x21, 0x66, 0xbf, 0x96, 0x7a, 0x9e, 0xa9, 0xba, 0x97, 0x41, 0xf4, 0x9d, 0x43, 0x95, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1559 = { .name = "xdh_wei25519_1559", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1559_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1559_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1559_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 513 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1560 for XDH, tcId is 514 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1560_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_1560_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1560_sharedsecret[] = { 0x8b, 0x98, 0xef, 0x4d, 0x6b, 0xf3, 0x0d, 0xf7, 0xf8, 0x8e, 0x58, 0xd5, 0x15, 0x05, 0xd3, 0x7e, 0xd6, 0x84, 0x5a, 0x96, 0x9f, 0xe5, 0x98, 0x74, 0x7c, 0x03, 0x3d, 0xcd, 0x08, 0x01, 0x40, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1560 = { .name = "xdh_wei25519_1560", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1560_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1560_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1560_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 514 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1561 for XDH, tcId is 515 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1561_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_1561_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_1561_sharedsecret[] = { 0xcf, 0xa8, 0x3e, 0x09, 0x88, 0x29, 0xfe, 0x82, 0xfd, 0x4c, 0x14, 0x35, 0x5f, 0x70, 0x82, 0x90, 0x15, 0x21, 0x99, 0x42, 0xc0, 0x1e, 0x2b, 0x85, 0xbd, 0xd9, 0xac, 0x48, 0x89, 0xec, 0x29, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1561 = { .name = "xdh_wei25519_1561", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1561_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1561_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1561_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 515 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1562 for XDH, tcId is 516 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1562_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_1562_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1562_sharedsecret[] = { 0x47, 0x82, 0x03, 0x6d, 0x6b, 0x13, 0x6c, 0xa4, 0x4a, 0x2f, 0xd7, 0x67, 0x4d, 0x8a, 0xfb, 0x01, 0x69, 0x94, 0x32, 0x30, 0xac, 0x8e, 0xab, 0x51, 0x60, 0xa2, 0x12, 0x37, 0x6c, 0x06, 0xd7, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_1562 = { .name = "xdh_wei25519_1562", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1562_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1562_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1562_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 516 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1563 for XDH, tcId is 517 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1563_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_1563_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1563_sharedsecret[] = { 0x65, 0xfc, 0x1e, 0x74, 0x53, 0xa3, 0xf8, 0xc7, 0xeb, 0xcd, 0x57, 0x7a, 0xde, 0x4b, 0x8e, 0xfe, 0x10, 0x35, 0xef, 0xc1, 0x81, 0xab, 0x3b, 0xdb, 0x2f, 0xcc, 0x74, 0x84, 0xcb, 0xcf, 0x1e, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1563 = { .name = "xdh_wei25519_1563", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1563_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1563_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1563_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 517 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1564 for XDH, tcId is 518 in file x25519_pem_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1564_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_1564_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_1564_sharedsecret[] = { 0xe3, 0xc6, 0x49, 0xbe, 0xae, 0x7c, 0xc4, 0xa0, 0x69, 0x8d, 0x51, 0x9a, 0x0a, 0x61, 0x93, 0x2e, 0xe5, 0x49, 0x3c, 0xbb, 0x59, 0x0d, 0xbe, 0x14, 0xdb, 0x02, 0x74, 0xcc, 0x86, 0x11, 0xf9, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1564 = { .name = "xdh_wei25519_1564", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1564_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1564_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1564_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 518 in file x25519_pem_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1565 for XDH, tcId is 1 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1565_peerpubkey[] = { 0x50, 0x4a, 0x36, 0x99, 0x9f, 0x48, 0x9c, 0xd2, 0xfd, 0xbc, 0x08, 0xba, 0xff, 0x3d, 0x88, 0xfa, 0x00, 0x56, 0x9b, 0xa9, 0x86, 0xcb, 0xa2, 0x25, 0x48, 0xff, 0xde, 0x80, 0xf9, 0x80, 0x68, 0x29, }; static const unsigned char xdh_wei25519_1565_privkey[] = { 0xc8, 0xa9, 0xd5, 0xa9, 0x10, 0x91, 0xad, 0x85, 0x1c, 0x66, 0x8b, 0x07, 0x36, 0xc1, 0xc9, 0xa0, 0x29, 0x36, 0xc0, 0xd3, 0xad, 0x62, 0x67, 0x08, 0x58, 0x08, 0x80, 0x47, 0xba, 0x05, 0x74, 0x75, }; static const unsigned char xdh_wei25519_1565_sharedsecret[] = { 0x43, 0x6a, 0x2c, 0x04, 0x0c, 0xf4, 0x5f, 0xea, 0x9b, 0x29, 0xa0, 0xcb, 0x81, 0xb1, 0xf4, 0x14, 0x58, 0xf8, 0x63, 0xd0, 0xd6, 0x1b, 0x45, 0x3d, 0x0a, 0x98, 0x27, 0x20, 0xd6, 0xd6, 0x13, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1565 = { .name = "xdh_wei25519_1565", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1565_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1565_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1565_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "normal case, tcId is 1 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1566 for XDH, tcId is 2 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1566_peerpubkey[] = { 0x63, 0xaa, 0x40, 0xc6, 0xe3, 0x83, 0x46, 0xc5, 0xca, 0xf2, 0x3a, 0x6d, 0xf0, 0xa5, 0xe6, 0xc8, 0x08, 0x89, 0xa0, 0x86, 0x47, 0xe5, 0x51, 0xb3, 0x56, 0x34, 0x49, 0xbe, 0xfc, 0xfc, 0x97, 0x33, }; static const unsigned char xdh_wei25519_1566_privkey[] = { 0xd8, 0x5d, 0x8c, 0x06, 0x1a, 0x50, 0x80, 0x4a, 0xc4, 0x88, 0xad, 0x77, 0x4a, 0xc7, 0x16, 0xc3, 0xf5, 0xba, 0x71, 0x4b, 0x27, 0x12, 0xe0, 0x48, 0x49, 0x13, 0x79, 0xa5, 0x00, 0x21, 0x19, 0x58, }; static const unsigned char xdh_wei25519_1566_sharedsecret[] = { 0x27, 0x9d, 0xf6, 0x7a, 0x7c, 0x46, 0x11, 0xdb, 0x47, 0x08, 0xa0, 0xe8, 0x28, 0x2b, 0x19, 0x5e, 0x5a, 0xc0, 0xed, 0x6f, 0x4b, 0x2f, 0x29, 0x2c, 0x6f, 0xbd, 0x0a, 0xca, 0xc3, 0x0d, 0x13, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1566 = { .name = "xdh_wei25519_1566", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1566_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1566_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1566_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 2 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1567 for XDH, tcId is 3 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1567_peerpubkey[] = { 0x0f, 0x83, 0xc3, 0x6f, 0xde, 0xd9, 0xd3, 0x2f, 0xad, 0xf4, 0xef, 0xa3, 0xae, 0x93, 0xa9, 0x0b, 0xb5, 0xcf, 0xa6, 0x68, 0x93, 0xbc, 0x41, 0x2c, 0x43, 0xfa, 0x72, 0x87, 0xdb, 0xb9, 0x97, 0x79, }; static const unsigned char xdh_wei25519_1567_privkey[] = { 0xc8, 0xb4, 0x5b, 0xfd, 0x32, 0xe5, 0x53, 0x25, 0xd9, 0xfd, 0x64, 0x8c, 0xb3, 0x02, 0x84, 0x80, 0x39, 0x00, 0x0b, 0x39, 0x0e, 0x44, 0xd5, 0x21, 0xe5, 0x8a, 0xab, 0x3b, 0x29, 0xa6, 0x96, 0x4b, }; static const unsigned char xdh_wei25519_1567_sharedsecret[] = { 0x4b, 0xc7, 0xe0, 0x1e, 0x7d, 0x83, 0xd6, 0xcf, 0x67, 0x63, 0x2b, 0xf9, 0x00, 0x33, 0x48, 0x7a, 0x5f, 0xc2, 0x9e, 0xba, 0x53, 0x28, 0x89, 0x0e, 0xa7, 0xb1, 0x02, 0x6d, 0x23, 0xb9, 0xa4, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1567 = { .name = "xdh_wei25519_1567", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1567_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1567_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1567_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 3 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1568 for XDH, tcId is 4 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1568_peerpubkey[] = { 0x0b, 0x82, 0x11, 0xa2, 0xb6, 0x04, 0x90, 0x97, 0xf6, 0x87, 0x1c, 0x6c, 0x05, 0x2d, 0x3c, 0x5f, 0xc1, 0xba, 0x17, 0xda, 0x9e, 0x32, 0xae, 0x45, 0x84, 0x03, 0xb0, 0x5b, 0xb2, 0x83, 0x09, 0x2a, }; static const unsigned char xdh_wei25519_1568_privkey[] = { 0xf8, 0x76, 0xe3, 0x4b, 0xcb, 0xe1, 0xf4, 0x7f, 0xbc, 0x0f, 0xdd, 0xfd, 0x7c, 0x1e, 0x1a, 0xa5, 0x3d, 0x57, 0xbf, 0xe0, 0xf6, 0x6d, 0x24, 0x30, 0x67, 0xb4, 0x24, 0xbb, 0x62, 0x10, 0xbe, 0x51, }; static const unsigned char xdh_wei25519_1568_sharedsecret[] = { 0x11, 0x9d, 0x37, 0xed, 0x4b, 0x10, 0x9c, 0xbd, 0x64, 0x18, 0xb1, 0xf2, 0x8d, 0xea, 0x83, 0xc8, 0x36, 0xc8, 0x44, 0x71, 0x5c, 0xdf, 0x98, 0xa3, 0xa8, 0xc3, 0x62, 0x19, 0x1d, 0xeb, 0xd5, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1568 = { .name = "xdh_wei25519_1568", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1568_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1568_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1568_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 4 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1569 for XDH, tcId is 5 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1569_peerpubkey[] = { 0x34, 0x3a, 0xc2, 0x0a, 0x3b, 0x9c, 0x6a, 0x27, 0xb1, 0x00, 0x81, 0x76, 0x50, 0x9a, 0xd3, 0x07, 0x35, 0x85, 0x6e, 0xc1, 0xc8, 0xd8, 0xfc, 0xae, 0x13, 0x91, 0x2d, 0x08, 0xd1, 0x52, 0xf4, 0x6c, }; static const unsigned char xdh_wei25519_1569_privkey[] = { 0x00, 0x6a, 0xc1, 0xf3, 0xa6, 0x53, 0xa4, 0xcd, 0xb1, 0xd3, 0x7b, 0xba, 0x94, 0x73, 0x8f, 0x8b, 0x95, 0x7a, 0x57, 0xbe, 0xb2, 0x4d, 0x64, 0x6e, 0x99, 0x4d, 0xc2, 0x9a, 0x27, 0x6a, 0xad, 0x45, }; static const unsigned char xdh_wei25519_1569_sharedsecret[] = { 0xcc, 0x48, 0x73, 0xae, 0xd3, 0xfc, 0xee, 0x4b, 0x3a, 0xae, 0xa7, 0xf0, 0xd2, 0x07, 0x16, 0xb4, 0x27, 0x63, 0x59, 0x08, 0x1f, 0x63, 0x4b, 0x7b, 0xea, 0x4b, 0x70, 0x5b, 0xfc, 0x8a, 0x4d, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1569 = { .name = "xdh_wei25519_1569", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1569_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1569_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1569_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 5 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1570 for XDH, tcId is 6 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1570_peerpubkey[] = { 0xfa, 0x69, 0x5f, 0xc7, 0xbe, 0x8d, 0x1b, 0xe5, 0xbf, 0x70, 0x48, 0x98, 0xf3, 0x88, 0xc4, 0x52, 0xba, 0xfd, 0xd3, 0xb8, 0xea, 0xe8, 0x05, 0xf8, 0x68, 0x1a, 0x8d, 0x15, 0xc2, 0xd4, 0xe1, 0x42, }; static const unsigned char xdh_wei25519_1570_privkey[] = { 0x08, 0xda, 0x77, 0xb2, 0x6d, 0x06, 0xdf, 0xf9, 0xd9, 0xf7, 0xfd, 0x4c, 0x5b, 0x37, 0x69, 0xf8, 0xcd, 0xd5, 0xb3, 0x05, 0x16, 0xa5, 0xab, 0x80, 0x6b, 0xe3, 0x24, 0xff, 0x3e, 0xb6, 0x9e, 0x60, }; static const unsigned char xdh_wei25519_1570_sharedsecret[] = { 0xb6, 0xf8, 0xe2, 0xfc, 0xb1, 0xaf, 0xfc, 0x79, 0xe2, 0xff, 0x79, 0x83, 0x19, 0xb2, 0x70, 0x11, 0x39, 0xb9, 0x5a, 0xd6, 0xdd, 0x07, 0xf0, 0x5c, 0xba, 0xc7, 0x8b, 0xd8, 0x3e, 0xdf, 0xd9, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_1570 = { .name = "xdh_wei25519_1570", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1570_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1570_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1570_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 6 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1571 for XDH, tcId is 7 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1571_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1571_privkey[] = { 0xd0, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0x5f, }; static const unsigned char xdh_wei25519_1571_sharedsecret[] = { 0xb8, 0x7a, 0x17, 0x22, 0xcc, 0x6c, 0x1e, 0x2f, 0xee, 0xcb, 0x54, 0xe9, 0x7a, 0xbd, 0x5a, 0x22, 0xac, 0xc2, 0x76, 0x16, 0xf7, 0x8f, 0x6e, 0x31, 0x5f, 0xd2, 0xb7, 0x3d, 0x9f, 0x22, 0x1e, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1571 = { .name = "xdh_wei25519_1571", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1571_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1571_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1571_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 7 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1572 for XDH, tcId is 8 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1572_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1572_privkey[] = { 0xe0, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0x6a, }; static const unsigned char xdh_wei25519_1572_sharedsecret[] = { 0xa2, 0x9d, 0x8d, 0xad, 0x28, 0xd5, 0x90, 0xcd, 0x30, 0x17, 0xaa, 0x97, 0xa4, 0x76, 0x1f, 0x85, 0x1b, 0xf1, 0xd3, 0x67, 0x2b, 0x04, 0x2a, 0x42, 0x56, 0xa4, 0x58, 0x81, 0xe2, 0xad, 0x90, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1572 = { .name = "xdh_wei25519_1572", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1572_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1572_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1572_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 8 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1573 for XDH, tcId is 9 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1573_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1573_privkey[] = { 0xe0, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0x6f, }; static const unsigned char xdh_wei25519_1573_sharedsecret[] = { 0xe7, 0x03, 0xbc, 0x8a, 0xa9, 0x4b, 0x7d, 0x87, 0xba, 0x34, 0xe2, 0x67, 0x83, 0x53, 0xd1, 0x2c, 0xda, 0xaa, 0x1a, 0x97, 0xb5, 0xca, 0x3e, 0x1b, 0x8c, 0x06, 0x0c, 0x46, 0x36, 0x08, 0x7f, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1573 = { .name = "xdh_wei25519_1573", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1573_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1573_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1573_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 9 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1574 for XDH, tcId is 10 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1574_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1574_privkey[] = { 0xa8, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0x41, }; static const unsigned char xdh_wei25519_1574_sharedsecret[] = { 0xff, 0x5c, 0xf0, 0x41, 0xe9, 0x24, 0xdb, 0xe1, 0xa6, 0x4a, 0xc9, 0xbd, 0xba, 0x96, 0xbd, 0xcd, 0xfa, 0xf7, 0xd5, 0x9d, 0x91, 0xc7, 0xe3, 0x3e, 0x76, 0xed, 0x0e, 0x4c, 0x8c, 0x83, 0x64, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1574 = { .name = "xdh_wei25519_1574", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1574_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1574_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1574_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 10 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1575 for XDH, tcId is 11 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1575_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1575_privkey[] = { 0xa8, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0x7b, }; static const unsigned char xdh_wei25519_1575_sharedsecret[] = { 0xa9, 0x2a, 0x96, 0xfa, 0x02, 0x99, 0x60, 0xf9, 0x53, 0x0e, 0x6f, 0xe3, 0x7e, 0x24, 0x29, 0xcd, 0x11, 0x3b, 0xe4, 0xd8, 0xf3, 0xf4, 0x43, 0x1f, 0x85, 0x46, 0xe6, 0xc7, 0x63, 0x51, 0x47, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1575 = { .name = "xdh_wei25519_1575", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1575_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1575_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1575_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 11 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1576 for XDH, tcId is 12 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1576_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1576_privkey[] = { 0xd0, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0x7c, }; static const unsigned char xdh_wei25519_1576_sharedsecret[] = { 0x9f, 0x89, 0x54, 0x86, 0x81, 0x58, 0xec, 0x62, 0xb6, 0xb5, 0x86, 0xb8, 0xca, 0xe1, 0xd6, 0x7d, 0x1b, 0x9f, 0x4c, 0x03, 0xd5, 0xb3, 0xca, 0x03, 0x93, 0xce, 0xe7, 0x1a, 0xcc, 0xc9, 0xab, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1576 = { .name = "xdh_wei25519_1576", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1576_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1576_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1576_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 12 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1577 for XDH, tcId is 13 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1577_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1577_privkey[] = { 0xd0, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x4e, }; static const unsigned char xdh_wei25519_1577_sharedsecret[] = { 0x6c, 0xbf, 0x1d, 0xc9, 0xaf, 0x97, 0xbc, 0x14, 0x85, 0x13, 0xa1, 0x8b, 0xe4, 0xa2, 0x57, 0xde, 0x1a, 0x3b, 0x06, 0x55, 0x84, 0xdf, 0x94, 0xe8, 0xb4, 0x3c, 0x1a, 0xb8, 0x97, 0x20, 0xb1, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1577 = { .name = "xdh_wei25519_1577", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1577_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1577_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1577_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 13 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1578 for XDH, tcId is 14 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1578_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1578_privkey[] = { 0xa0, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0x44, }; static const unsigned char xdh_wei25519_1578_sharedsecret[] = { 0x38, 0x28, 0x4b, 0x70, 0x86, 0x09, 0x5a, 0x94, 0x06, 0x02, 0x8c, 0x1f, 0x80, 0x0c, 0x07, 0x1e, 0xa1, 0x06, 0x03, 0x9a, 0xd7, 0xa1, 0xd7, 0xf8, 0x2f, 0xe0, 0x09, 0x06, 0xfd, 0x90, 0x59, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1578 = { .name = "xdh_wei25519_1578", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1578_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1578_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1578_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 14 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1579 for XDH, tcId is 15 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1579_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1579_privkey[] = { 0xa8, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0x63, }; static const unsigned char xdh_wei25519_1579_sharedsecret[] = { 0xc7, 0x21, 0x04, 0x1d, 0xf0, 0x24, 0x40, 0x71, 0x79, 0x4a, 0x8d, 0xb0, 0x6b, 0x9f, 0x7e, 0xae, 0xec, 0x69, 0x0c, 0x25, 0x72, 0x65, 0x34, 0x36, 0x66, 0xf4, 0x41, 0x6f, 0x41, 0x66, 0x84, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1579 = { .name = "xdh_wei25519_1579", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1579_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1579_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1579_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 15 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1580 for XDH, tcId is 16 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1580_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1580_privkey[] = { 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0x50, }; static const unsigned char xdh_wei25519_1580_sharedsecret[] = { 0x25, 0xff, 0x9a, 0x66, 0x31, 0xb1, 0x43, 0xdb, 0xdb, 0xdc, 0x20, 0x7b, 0x38, 0xe3, 0x8f, 0x83, 0x2a, 0xe0, 0x79, 0xa5, 0x2a, 0x61, 0x8c, 0x53, 0x43, 0x22, 0xe7, 0x73, 0x45, 0xfd, 0x90, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1580 = { .name = "xdh_wei25519_1580", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1580_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1580_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1580_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 16 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1581 for XDH, tcId is 17 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1581_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1581_privkey[] = { 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0x70, }; static const unsigned char xdh_wei25519_1581_sharedsecret[] = { 0xf2, 0x94, 0xe7, 0x92, 0x2c, 0x6c, 0xea, 0x58, 0x7a, 0xef, 0xe7, 0x29, 0x11, 0x63, 0x0d, 0x50, 0xf2, 0x45, 0x6a, 0x2b, 0xa7, 0xf2, 0x12, 0x07, 0xd5, 0x7f, 0x1e, 0xcc, 0xe0, 0x4f, 0x62, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1581 = { .name = "xdh_wei25519_1581", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1581_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1581_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1581_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 17 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1582 for XDH, tcId is 18 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1582_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1582_privkey[] = { 0xe0, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0x4c, }; static const unsigned char xdh_wei25519_1582_sharedsecret[] = { 0xff, 0x47, 0x15, 0xbd, 0x8c, 0xf8, 0x47, 0xb7, 0x7c, 0x24, 0x4c, 0xe2, 0xd9, 0xb0, 0x08, 0xb1, 0x9e, 0xfa, 0xa8, 0xe8, 0x45, 0xfe, 0xb8, 0x5c, 0xe4, 0x88, 0x9b, 0x5b, 0x2c, 0x6a, 0x4b, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_1582 = { .name = "xdh_wei25519_1582", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1582_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1582_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1582_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 18 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1583 for XDH, tcId is 19 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1583_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1583_privkey[] = { 0x10, 0x5d, 0x62, 0x1e, 0x1e, 0xf3, 0x39, 0xc3, 0xd9, 0x92, 0x45, 0xcf, 0xb7, 0x7c, 0xd3, 0xa5, 0xbd, 0x0c, 0x44, 0x27, 0xa0, 0xe4, 0xd8, 0x75, 0x2c, 0x3b, 0x51, 0xf0, 0x45, 0x88, 0x9b, 0x4f, }; static const unsigned char xdh_wei25519_1583_sharedsecret[] = { 0x61, 0xea, 0xce, 0x52, 0xda, 0x5f, 0x5e, 0xce, 0xfa, 0xfa, 0x4f, 0x19, 0x9b, 0x07, 0x7f, 0xf6, 0x4f, 0x2e, 0x3d, 0x2a, 0x6e, 0xce, 0x6f, 0x8e, 0xc0, 0x49, 0x78, 0x26, 0xb2, 0x12, 0xef, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1583 = { .name = "xdh_wei25519_1583", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1583_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1583_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1583_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 19 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1584 for XDH, tcId is 20 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1584_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1584_privkey[] = { 0xd8, 0x8a, 0x44, 0x1e, 0x70, 0x6f, 0x60, 0x6a, 0xe7, 0xf6, 0x30, 0xf8, 0xb2, 0x1f, 0x3c, 0x25, 0x54, 0x73, 0x9e, 0x3e, 0x54, 0x9f, 0x80, 0x41, 0x18, 0xc0, 0x37, 0x71, 0xf6, 0x08, 0x01, 0x7b, }; static const unsigned char xdh_wei25519_1584_sharedsecret[] = { 0xff, 0x1b, 0x50, 0x9a, 0x0a, 0x1a, 0x54, 0x72, 0x60, 0x86, 0xf1, 0xe1, 0xc0, 0xac, 0xf0, 0x40, 0xab, 0x46, 0x3a, 0x2a, 0x54, 0x2e, 0x5d, 0x54, 0xe9, 0x2c, 0x6d, 0xf8, 0x12, 0x6c, 0xf6, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_1584 = { .name = "xdh_wei25519_1584", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1584_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1584_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1584_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 20 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1585 for XDH, tcId is 21 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1585_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1585_privkey[] = { 0x80, 0xbb, 0xad, 0x16, 0x82, 0x22, 0x27, 0x62, 0x00, 0xaa, 0xfd, 0x36, 0xf7, 0xf2, 0x5f, 0xdc, 0x02, 0x56, 0x32, 0xd8, 0xbf, 0x9f, 0x63, 0x54, 0xbb, 0x76, 0x2e, 0x06, 0xfb, 0x63, 0xe2, 0x50, }; static const unsigned char xdh_wei25519_1585_sharedsecret[] = { 0xf1, 0x34, 0xe6, 0x26, 0x7b, 0xf9, 0x39, 0x03, 0x08, 0x51, 0x17, 0xb9, 0x99, 0x32, 0xcc, 0x0c, 0x7b, 0xa2, 0x6f, 0x25, 0xfc, 0xa1, 0x21, 0x02, 0xa2, 0x6d, 0x75, 0x33, 0xd9, 0xc4, 0x27, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1585 = { .name = "xdh_wei25519_1585", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1585_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1585_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1585_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 21 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1586 for XDH, tcId is 22 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1586_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_1586_privkey[] = { 0x68, 0xe1, 0x34, 0x09, 0x2e, 0x94, 0xe6, 0x22, 0xc8, 0xa0, 0xcd, 0x18, 0xaf, 0xf5, 0x5b, 0xe2, 0x3d, 0xab, 0xd9, 0x94, 0xeb, 0xde, 0xe9, 0x82, 0xd9, 0x06, 0x01, 0xf6, 0xf0, 0xf4, 0xb3, 0x69, }; static const unsigned char xdh_wei25519_1586_sharedsecret[] = { 0x74, 0xbf, 0xc1, 0x5e, 0x55, 0x97, 0xe9, 0xf5, 0x19, 0x3f, 0x94, 0x1e, 0x10, 0xa5, 0xc0, 0x08, 0xfc, 0x89, 0xf0, 0x51, 0x39, 0x27, 0x23, 0x88, 0x6a, 0x4a, 0x8f, 0xe5, 0x09, 0x3a, 0x73, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1586 = { .name = "xdh_wei25519_1586", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1586_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1586_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1586_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 22 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1587 for XDH, tcId is 23 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1587_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_1587_privkey[] = { 0xe8, 0xe4, 0x3f, 0xc1, 0xeb, 0xac, 0x0b, 0xbc, 0x9b, 0x99, 0xc8, 0x03, 0x5e, 0xe1, 0xac, 0x59, 0xb9, 0x0f, 0x19, 0xa1, 0x6c, 0x42, 0xc0, 0xb9, 0x0f, 0x96, 0xad, 0xfc, 0xc5, 0xfd, 0xee, 0x78, }; static const unsigned char xdh_wei25519_1587_sharedsecret[] = { 0x0d, 0x41, 0xa5, 0xb3, 0xaf, 0x77, 0x0b, 0xf2, 0xfc, 0xd3, 0x4f, 0xf7, 0x97, 0x22, 0x43, 0xa0, 0xe2, 0xcf, 0x4d, 0x34, 0xf2, 0x04, 0x6a, 0x14, 0x45, 0x81, 0xae, 0x1e, 0xc6, 0x8d, 0xf0, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1587 = { .name = "xdh_wei25519_1587", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1587_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1587_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1587_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 23 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1588 for XDH, tcId is 24 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1588_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1588_privkey[] = { 0x18, 0xbf, 0xfb, 0x16, 0xf9, 0x26, 0x80, 0xa9, 0xe2, 0x67, 0x47, 0x3e, 0x43, 0xc4, 0x64, 0x47, 0x6d, 0x53, 0x72, 0xdd, 0xd1, 0xf6, 0x64, 0xf3, 0xd0, 0x67, 0x8e, 0xfe, 0x7c, 0x98, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_1588_sharedsecret[] = { 0x58, 0x94, 0xe0, 0x96, 0x35, 0x83, 0xae, 0x14, 0xa0, 0xb8, 0x04, 0x20, 0x89, 0x41, 0x67, 0xf4, 0xb7, 0x59, 0xc8, 0xd2, 0xeb, 0x9b, 0x69, 0xcb, 0x67, 0x55, 0x43, 0xf6, 0x65, 0x10, 0xf6, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1588 = { .name = "xdh_wei25519_1588", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1588_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1588_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1588_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 24 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1589 for XDH, tcId is 25 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1589_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1589_privkey[] = { 0x30, 0x03, 0x05, 0xeb, 0x00, 0x2b, 0xf8, 0x6c, 0x71, 0xfe, 0x9c, 0x0b, 0x31, 0x19, 0x93, 0x72, 0x7b, 0x9d, 0xc6, 0x18, 0xd0, 0xce, 0x72, 0x51, 0xd0, 0xdf, 0xd8, 0x55, 0x2d, 0x17, 0x90, 0x5d, }; static const unsigned char xdh_wei25519_1589_sharedsecret[] = { 0xf8, 0x62, 0x4d, 0x6e, 0x35, 0xe6, 0xc5, 0x48, 0xac, 0x47, 0x83, 0x2f, 0x2e, 0x5d, 0x15, 0x1a, 0x8e, 0x53, 0xb9, 0x29, 0x03, 0x63, 0xb2, 0x8d, 0x2a, 0xb8, 0xd8, 0x4a, 0xb7, 0xcb, 0x6a, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1589 = { .name = "xdh_wei25519_1589", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1589_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1589_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1589_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 25 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1590 for XDH, tcId is 26 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1590_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1590_privkey[] = { 0x80, 0xda, 0x9f, 0x02, 0x84, 0x22, 0x47, 0xd4, 0xad, 0xe5, 0xdd, 0xba, 0xc5, 0x1d, 0xbc, 0xe5, 0x5e, 0xa7, 0xdc, 0xa2, 0x84, 0x4e, 0x7f, 0x97, 0xab, 0x89, 0x87, 0xce, 0x7f, 0xd8, 0xbc, 0x71, }; static const unsigned char xdh_wei25519_1590_sharedsecret[] = { 0xbf, 0xe1, 0x83, 0xba, 0x3d, 0x41, 0x57, 0xa7, 0xb5, 0x3e, 0xf1, 0x78, 0x61, 0x3d, 0xb6, 0x19, 0xe2, 0x78, 0x00, 0xf8, 0x53, 0x59, 0xc0, 0xb3, 0x9a, 0x9f, 0xd6, 0xe3, 0x21, 0x52, 0xc2, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1590 = { .name = "xdh_wei25519_1590", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1590_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1590_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1590_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 26 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1591 for XDH, tcId is 27 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1591_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1591_privkey[] = { 0x80, 0x6e, 0x7f, 0x26, 0xca, 0x32, 0x46, 0xde, 0x81, 0x82, 0x94, 0x6c, 0xbe, 0xd0, 0x9f, 0x52, 0xb9, 0x5d, 0xa6, 0x26, 0xc8, 0x23, 0xc7, 0xb5, 0x04, 0x50, 0x00, 0x1a, 0x47, 0xb7, 0xb2, 0x52, }; static const unsigned char xdh_wei25519_1591_sharedsecret[] = { 0xbc, 0xa4, 0xa0, 0x72, 0x4f, 0x5c, 0x1f, 0xeb, 0x18, 0x40, 0x78, 0x44, 0x8c, 0x89, 0x8c, 0x86, 0x20, 0xe7, 0xca, 0xf8, 0x1f, 0x64, 0xcc, 0xa7, 0x46, 0xf5, 0x57, 0xdf, 0xf2, 0x49, 0x88, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1591 = { .name = "xdh_wei25519_1591", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1591_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1591_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1591_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 27 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1592 for XDH, tcId is 28 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1592_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1592_privkey[] = { 0x58, 0x35, 0x4f, 0xd6, 0x4b, 0xc0, 0x22, 0xcb, 0xa3, 0xa7, 0x1b, 0x2a, 0xe6, 0x42, 0x81, 0xe4, 0xea, 0x7b, 0xf6, 0xd6, 0x5f, 0xdb, 0xae, 0xad, 0x14, 0x40, 0xee, 0xb1, 0x86, 0x04, 0xfe, 0x62, }; static const unsigned char xdh_wei25519_1592_sharedsecret[] = { 0xb3, 0x41, 0x8a, 0x52, 0x46, 0x4c, 0x15, 0xab, 0x0c, 0xac, 0xbb, 0xd4, 0x38, 0x87, 0xa1, 0x19, 0x92, 0x06, 0xd5, 0x92, 0x29, 0xce, 0xd4, 0x92, 0x02, 0x30, 0x06, 0x38, 0xd7, 0xa4, 0x0f, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1592 = { .name = "xdh_wei25519_1592", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1592_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1592_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1592_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 28 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1593 for XDH, tcId is 29 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1593_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1593_privkey[] = { 0xf0, 0x01, 0x9c, 0xf0, 0x51, 0x59, 0x79, 0x4c, 0xc8, 0x05, 0x2b, 0x00, 0xc2, 0xe7, 0x5b, 0x7f, 0x46, 0xfb, 0x66, 0x93, 0xc4, 0xb3, 0x8c, 0x02, 0xb1, 0x2a, 0x4f, 0xe2, 0x72, 0xe8, 0x55, 0x6a, }; static const unsigned char xdh_wei25519_1593_sharedsecret[] = { 0xfc, 0xde, 0x6e, 0x0a, 0x3d, 0x5f, 0xd5, 0xb6, 0x3f, 0x10, 0xc2, 0xd3, 0xaa, 0xd4, 0xef, 0xa0, 0x51, 0x96, 0xf2, 0x6b, 0xc0, 0xcb, 0x26, 0xfd, 0x6d, 0x9d, 0x3b, 0xd0, 0x15, 0xea, 0xa7, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1593 = { .name = "xdh_wei25519_1593", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1593_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1593_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1593_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 29 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1594 for XDH, tcId is 30 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1594_peerpubkey[] = { 0xed, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1594_privkey[] = { 0xd0, 0xfc, 0xa6, 0x4c, 0xc5, 0xf3, 0xa0, 0xc8, 0xe7, 0x5c, 0x82, 0x4e, 0x8b, 0x09, 0xd1, 0x61, 0x5a, 0xa7, 0x9a, 0xeb, 0xa1, 0x39, 0xbb, 0x73, 0x02, 0xe2, 0xbb, 0x2f, 0xcb, 0xe5, 0x4b, 0x40, }; static const unsigned char xdh_wei25519_1594_sharedsecret[] = { 0x7d, 0x62, 0xf1, 0x89, 0x44, 0x4c, 0x62, 0x31, 0xa4, 0x8a, 0xfa, 0xb1, 0x0a, 0x0a, 0xf2, 0xee, 0xe4, 0xa5, 0x2e, 0x43, 0x1e, 0xa0, 0x5f, 0xf7, 0x81, 0xd6, 0x16, 0xaf, 0x21, 0x14, 0x67, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_1594 = { .name = "xdh_wei25519_1594", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1594_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1594_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1594_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 30 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1595 for XDH, tcId is 31 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1595_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1595_privkey[] = { 0xd0, 0x24, 0x56, 0xe4, 0x56, 0x91, 0x1d, 0x3c, 0x6c, 0xd0, 0x54, 0x93, 0x31, 0x99, 0x80, 0x77, 0x32, 0xdf, 0xdc, 0x95, 0x86, 0x42, 0xad, 0x1a, 0xeb, 0xe9, 0x00, 0xc7, 0x93, 0xbe, 0xf2, 0x4a, }; static const unsigned char xdh_wei25519_1595_sharedsecret[] = { 0x07, 0xba, 0x5f, 0xcb, 0xda, 0x21, 0xa9, 0xa1, 0x78, 0x45, 0xc4, 0x01, 0x49, 0x2b, 0x10, 0xe6, 0xde, 0x0a, 0x16, 0x8d, 0x5c, 0x94, 0xb6, 0x06, 0x69, 0x4c, 0x11, 0xba, 0xc3, 0x9b, 0xea, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1595 = { .name = "xdh_wei25519_1595", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1595_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1595_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1595_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key on twist, tcId is 31 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1596 for XDH, tcId is 32 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1596_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1596_privkey[] = { 0x88, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0x5e, }; static const unsigned char xdh_wei25519_1596_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1596 = { .name = "xdh_wei25519_1596", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1596_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1596_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1596_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 0, tcId is 32 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1597 for XDH, tcId is 33 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1597_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1597_privkey[] = { 0x48, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0x4f, }; static const unsigned char xdh_wei25519_1597_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1597 = { .name = "xdh_wei25519_1597", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1597_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1597_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1597_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 1, tcId is 33 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1598 for XDH, tcId is 34 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1598_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1598_privkey[] = { 0xa8, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x5a, }; static const unsigned char xdh_wei25519_1598_sharedsecret[] = { 0x34, 0xb7, 0xe4, 0xfa, 0x53, 0x26, 0x44, 0x20, 0xd9, 0xf9, 0x43, 0xd1, 0x55, 0x13, 0x90, 0x23, 0x42, 0xb3, 0x86, 0xb1, 0x72, 0xa0, 0xb0, 0xb7, 0xc8, 0xb8, 0xf2, 0xdd, 0x3d, 0x66, 0x9f, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1598 = { .name = "xdh_wei25519_1598", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1598_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1598_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1598_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 34 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1599 for XDH, tcId is 35 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1599_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1599_privkey[] = { 0xd0, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0x7d, }; static const unsigned char xdh_wei25519_1599_sharedsecret[] = { 0x3a, 0xa2, 0x27, 0xa3, 0x07, 0x81, 0xed, 0x74, 0x6b, 0xd4, 0xb3, 0x36, 0x5e, 0x5f, 0x61, 0x46, 0x1b, 0x84, 0x4d, 0x09, 0x41, 0x0c, 0x70, 0x57, 0x0a, 0xbd, 0x0d, 0x75, 0x57, 0x4d, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1599 = { .name = "xdh_wei25519_1599", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1599_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1599_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1599_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 35 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1600 for XDH, tcId is 36 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1600_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1600_privkey[] = { 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0x6b, }; static const unsigned char xdh_wei25519_1600_sharedsecret[] = { 0x97, 0x75, 0x5e, 0x7e, 0x77, 0x57, 0x89, 0x18, 0x4e, 0x17, 0x68, 0x47, 0xff, 0xbc, 0x2f, 0x8e, 0xf9, 0x87, 0x99, 0xd4, 0x6a, 0x70, 0x9c, 0x6a, 0x1c, 0x0f, 0xfd, 0x29, 0x08, 0x1d, 0x70, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1600 = { .name = "xdh_wei25519_1600", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1600_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1600_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1600_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 36 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1601 for XDH, tcId is 37 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1601_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1601_privkey[] = { 0xd0, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0x75, }; static const unsigned char xdh_wei25519_1601_sharedsecret[] = { 0xc2, 0x12, 0xbf, 0xce, 0xb9, 0x1f, 0x85, 0x88, 0xd4, 0x6c, 0xd9, 0x46, 0x84, 0xc2, 0xc9, 0xee, 0x07, 0x34, 0x08, 0x77, 0x96, 0xdc, 0x0a, 0x9f, 0x34, 0x04, 0xff, 0x53, 0x40, 0x12, 0x12, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1601 = { .name = "xdh_wei25519_1601", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1601_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1601_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1601_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 37 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1602 for XDH, tcId is 38 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1602_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1602_privkey[] = { 0x38, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0x4d, }; static const unsigned char xdh_wei25519_1602_sharedsecret[] = { 0x38, 0x8f, 0xaf, 0xfb, 0x4a, 0x85, 0xd0, 0x67, 0x02, 0xba, 0x3e, 0x47, 0x9c, 0x6b, 0x21, 0x6a, 0x8f, 0x33, 0xef, 0xce, 0x05, 0x42, 0x97, 0x9b, 0xf1, 0x29, 0xd8, 0x60, 0xf9, 0x3b, 0x9f, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1602 = { .name = "xdh_wei25519_1602", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1602_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1602_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1602_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 38 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1603 for XDH, tcId is 39 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1603_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1603_privkey[] = { 0xe0, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0x7f, }; static const unsigned char xdh_wei25519_1603_sharedsecret[] = { 0x87, 0x7f, 0xec, 0x06, 0x69, 0xd8, 0xc1, 0xa5, 0xc8, 0x66, 0x64, 0x14, 0x20, 0xee, 0xa9, 0xf6, 0xbd, 0x1d, 0xfd, 0x38, 0xd3, 0x6a, 0x5d, 0x55, 0xa8, 0xc0, 0xab, 0x2b, 0xf3, 0x10, 0x5c, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1603 = { .name = "xdh_wei25519_1603", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1603_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1603_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1603_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 39 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1604 for XDH, tcId is 40 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1604_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1604_privkey[] = { 0xf0, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0x56, }; static const unsigned char xdh_wei25519_1604_sharedsecret[] = { 0x18, 0x03, 0x73, 0xea, 0x0f, 0x23, 0xea, 0x73, 0x44, 0x7e, 0x5a, 0x90, 0x39, 0x8a, 0x97, 0xd4, 0x90, 0xb5, 0x41, 0xc6, 0x93, 0x20, 0x71, 0x9d, 0x7d, 0xd7, 0x33, 0xfb, 0x80, 0xd5, 0x48, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1604 = { .name = "xdh_wei25519_1604", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1604_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1604_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1604_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 40 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1605 for XDH, tcId is 41 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1605_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1605_privkey[] = { 0xe8, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0x77, }; static const unsigned char xdh_wei25519_1605_sharedsecret[] = { 0x20, 0x81, 0x42, 0x35, 0x0a, 0xf9, 0x38, 0xab, 0xa5, 0x2a, 0x15, 0x6d, 0xce, 0x19, 0xd3, 0xc2, 0x7a, 0xb1, 0x62, 0x87, 0x29, 0x68, 0x3c, 0xf4, 0xef, 0x26, 0x67, 0xc3, 0xdc, 0x60, 0xcf, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_1605 = { .name = "xdh_wei25519_1605", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1605_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1605_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1605_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 41 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1606 for XDH, tcId is 42 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1606_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1606_privkey[] = { 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x54, }; static const unsigned char xdh_wei25519_1606_sharedsecret[] = { 0x1c, 0x32, 0x63, 0x89, 0x0f, 0x7a, 0x08, 0x1c, 0xef, 0xe5, 0x0c, 0xb9, 0x2a, 0xbd, 0x49, 0x65, 0x82, 0xd9, 0x0d, 0xcc, 0x2b, 0x9c, 0xb8, 0x58, 0xbd, 0x28, 0x68, 0x54, 0xaa, 0x6b, 0x0a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1606 = { .name = "xdh_wei25519_1606", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1606_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1606_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1606_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 42 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1607 for XDH, tcId is 43 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1607_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1607_privkey[] = { 0xa8, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0x63, }; static const unsigned char xdh_wei25519_1607_sharedsecret[] = { 0x56, 0x12, 0x8e, 0x78, 0xd7, 0xc6, 0x6f, 0x48, 0xe8, 0x63, 0xe7, 0xe6, 0xf2, 0xca, 0xa9, 0xc0, 0x98, 0x8f, 0xd4, 0x39, 0xde, 0xac, 0x11, 0xd4, 0xaa, 0xc9, 0x66, 0x40, 0x83, 0x08, 0x7f, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1607 = { .name = "xdh_wei25519_1607", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1607_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1607_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1607_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 43 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1608 for XDH, tcId is 44 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1608_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1608_privkey[] = { 0x98, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x4e, }; static const unsigned char xdh_wei25519_1608_sharedsecret[] = { 0x30, 0xec, 0xa5, 0x6f, 0x1f, 0x1c, 0x2e, 0x8f, 0xf7, 0x80, 0x13, 0x4e, 0x0e, 0x93, 0x82, 0xc5, 0x92, 0x7d, 0x30, 0x5d, 0x86, 0xb5, 0x34, 0x77, 0xe9, 0xae, 0xca, 0x79, 0xfc, 0x9c, 0xed, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_1608 = { .name = "xdh_wei25519_1608", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1608_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1608_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1608_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 44 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1609 for XDH, tcId is 45 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1609_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1609_privkey[] = { 0xd8, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x40, }; static const unsigned char xdh_wei25519_1609_sharedsecret[] = { 0xcb, 0x21, 0xb7, 0xaa, 0x3f, 0x99, 0x2e, 0xcf, 0xc9, 0x29, 0x54, 0x84, 0x91, 0x54, 0xb3, 0xaf, 0x6b, 0x96, 0xa0, 0x1f, 0x17, 0xbf, 0x21, 0xc6, 0x12, 0xda, 0x74, 0x8d, 0xb3, 0x8e, 0xb3, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1609 = { .name = "xdh_wei25519_1609", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1609_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1609_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1609_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 45 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1610 for XDH, tcId is 46 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1610_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1610_privkey[] = { 0xa0, 0x93, 0x3e, 0xe3, 0x05, 0x12, 0xb2, 0x5e, 0xe4, 0xe9, 0x00, 0xaa, 0xa0, 0x7f, 0x73, 0xe5, 0x07, 0xa8, 0xec, 0x53, 0xb5, 0x3a, 0x44, 0x62, 0x6e, 0x0f, 0x58, 0x9a, 0xf4, 0xe0, 0x35, 0x6c, }; static const unsigned char xdh_wei25519_1610_sharedsecret[] = { 0xc5, 0xca, 0xf8, 0xca, 0xbc, 0x36, 0xf0, 0x86, 0xde, 0xaf, 0x1a, 0xb2, 0x26, 0x43, 0x40, 0x98, 0xc2, 0x22, 0xab, 0xdf, 0x8a, 0xcd, 0x3c, 0xe7, 0x5c, 0x75, 0xe9, 0xde, 0xbb, 0x27, 0x15, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1610 = { .name = "xdh_wei25519_1610", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1610_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1610_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1610_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 46 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1611 for XDH, tcId is 47 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1611_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1611_privkey[] = { 0x38, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0x73, }; static const unsigned char xdh_wei25519_1611_sharedsecret[] = { 0x4d, 0x46, 0x05, 0x2c, 0x7e, 0xab, 0xba, 0x21, 0x5d, 0xf8, 0xd9, 0x13, 0x27, 0xe0, 0xc4, 0x61, 0x04, 0x21, 0xd2, 0xd9, 0x12, 0x9b, 0x14, 0x86, 0xd9, 0x14, 0xc7, 0x66, 0xcf, 0x10, 0x4c, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_1611 = { .name = "xdh_wei25519_1611", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1611_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1611_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1611_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 47 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1612 for XDH, tcId is 48 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1612_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const unsigned char xdh_wei25519_1612_privkey[] = { 0x18, 0x21, 0x91, 0xb7, 0x05, 0x2e, 0x9c, 0xd6, 0x30, 0xef, 0x08, 0x00, 0x7f, 0xc6, 0xb4, 0x3b, 0xc7, 0x65, 0x29, 0x13, 0xbe, 0x67, 0x74, 0xe2, 0xfd, 0x27, 0x1b, 0x71, 0xb9, 0x62, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_1612_sharedsecret[] = { 0xa0, 0xe0, 0x31, 0x51, 0x75, 0x78, 0x83, 0x62, 0xd4, 0xeb, 0xe0, 0x5e, 0x6a, 0xc7, 0x6d, 0x52, 0xd4, 0x01, 0x87, 0xbd, 0x68, 0x74, 0x92, 0xaf, 0x05, 0xab, 0xc7, 0xba, 0x7c, 0x70, 0x19, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1612 = { .name = "xdh_wei25519_1612", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1612_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1612_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1612_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 48 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1613 for XDH, tcId is 49 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1613_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, }; static const unsigned char xdh_wei25519_1613_privkey[] = { 0x10, 0x62, 0x21, 0xfe, 0x56, 0x94, 0xa7, 0x10, 0xd6, 0xe1, 0x47, 0x69, 0x6c, 0x5d, 0x5b, 0x93, 0xd6, 0x88, 0x7d, 0x58, 0x4f, 0x24, 0xf2, 0x28, 0x18, 0x2e, 0xbe, 0x1b, 0x1d, 0x2d, 0xb8, 0x5d, }; static const unsigned char xdh_wei25519_1613_sharedsecret[] = { 0x5e, 0x64, 0x92, 0x4b, 0x91, 0x87, 0x3b, 0x49, 0x9a, 0x54, 0x02, 0xfa, 0x64, 0x33, 0x7c, 0x65, 0xd4, 0xb2, 0xed, 0x54, 0xbe, 0xeb, 0x3f, 0xa5, 0xd7, 0x34, 0x78, 0x09, 0xe4, 0x3a, 0xef, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1613 = { .name = "xdh_wei25519_1613", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1613_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1613_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1613_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 49 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1614 for XDH, tcId is 50 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1614_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1614_privkey[] = { 0xd0, 0x35, 0xde, 0x94, 0x56, 0x08, 0x0d, 0x85, 0xa9, 0x12, 0x08, 0x3b, 0x2e, 0x3c, 0x7d, 0xdd, 0x79, 0x71, 0xf7, 0x86, 0xf2, 0x5a, 0x96, 0xc5, 0xe7, 0x82, 0xcf, 0x6f, 0x43, 0x76, 0xe3, 0x62, }; static const unsigned char xdh_wei25519_1614_sharedsecret[] = { 0xc0, 0x52, 0x46, 0x6f, 0x97, 0x12, 0xd9, 0xec, 0x4e, 0xf4, 0x0f, 0x27, 0x6b, 0xb7, 0xe6, 0x44, 0x1c, 0x54, 0x34, 0xa8, 0x3e, 0xfd, 0x8e, 0x41, 0xd2, 0x0c, 0xe8, 0x3f, 0x2d, 0xbf, 0x59, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1614 = { .name = "xdh_wei25519_1614", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1614_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1614_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1614_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 50 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1615 for XDH, tcId is 51 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1615_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1615_privkey[] = { 0xa8, 0xf3, 0x73, 0x18, 0xa4, 0xc7, 0x60, 0xf3, 0xcb, 0x2d, 0x89, 0x48, 0x22, 0x91, 0x87, 0x35, 0x68, 0x3c, 0xb1, 0xed, 0xac, 0xf3, 0xe6, 0x66, 0xe1, 0x56, 0x94, 0x15, 0x49, 0x78, 0xfd, 0x6d, }; static const unsigned char xdh_wei25519_1615_sharedsecret[] = { 0xd1, 0x51, 0xb9, 0x7c, 0xba, 0x9c, 0x25, 0xd4, 0x8e, 0x6d, 0x57, 0x63, 0x38, 0xb9, 0x7d, 0x53, 0xdd, 0x8b, 0x25, 0xe8, 0x4f, 0x65, 0xf7, 0xa2, 0x09, 0x1a, 0x17, 0x01, 0x63, 0x17, 0xc5, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1615 = { .name = "xdh_wei25519_1615", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1615_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1615_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1615_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 51 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1616 for XDH, tcId is 52 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1616_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1616_privkey[] = { 0x20, 0xd4, 0xd6, 0x24, 0xcf, 0x73, 0x2f, 0x82, 0x6f, 0x09, 0xe8, 0x08, 0x80, 0x17, 0x74, 0x2f, 0x13, 0xf2, 0xda, 0x98, 0xf4, 0xdc, 0xf4, 0xb4, 0x05, 0x19, 0xad, 0xb7, 0x90, 0xce, 0xbf, 0x64, }; static const unsigned char xdh_wei25519_1616_sharedsecret[] = { 0x57, 0x16, 0x29, 0x6b, 0xaf, 0x2b, 0x1a, 0x6b, 0x9c, 0xd1, 0x5b, 0x23, 0xba, 0x86, 0x82, 0x97, 0x43, 0xd6, 0x0b, 0x03, 0x96, 0x56, 0x9b, 0xe1, 0xd5, 0xb4, 0x00, 0x14, 0xc0, 0x6b, 0x47, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1616 = { .name = "xdh_wei25519_1616", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1616_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1616_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1616_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 52 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1617 for XDH, tcId is 53 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1617_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1617_privkey[] = { 0xd8, 0x06, 0xa7, 0x35, 0xd1, 0x38, 0xef, 0xb3, 0xb4, 0x04, 0x68, 0x3c, 0x9d, 0x84, 0x48, 0x5a, 0xb4, 0xaf, 0x54, 0x0d, 0x0a, 0xf2, 0x53, 0xb5, 0x74, 0x32, 0x3d, 0x89, 0x13, 0x00, 0x3c, 0x66, }; static const unsigned char xdh_wei25519_1617_sharedsecret[] = { 0xdd, 0xbd, 0x56, 0xd0, 0x45, 0x4b, 0x79, 0x4c, 0x1d, 0x1d, 0x49, 0x23, 0xf0, 0x23, 0xa5, 0x1f, 0x6f, 0x34, 0xef, 0x3f, 0x48, 0x68, 0xe3, 0xd6, 0x65, 0x93, 0x07, 0xc6, 0x83, 0xc7, 0x41, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1617 = { .name = "xdh_wei25519_1617", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1617_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1617_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1617_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 53 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1618 for XDH, tcId is 54 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1618_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1618_privkey[] = { 0x18, 0x41, 0x98, 0xc6, 0x22, 0x81, 0x77, 0xf3, 0xef, 0x41, 0xdc, 0x9a, 0x34, 0x12, 0x58, 0xf8, 0x18, 0x1a, 0xe3, 0x65, 0xfe, 0x9e, 0xc9, 0x8d, 0x93, 0x63, 0x9b, 0x0b, 0xbe, 0xe1, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_1618_sharedsecret[] = { 0x80, 0x39, 0xee, 0xbe, 0xd1, 0xa4, 0xf3, 0xb8, 0x11, 0xea, 0x92, 0x10, 0x2a, 0x62, 0x67, 0xd4, 0xda, 0x41, 0x23, 0x70, 0xf3, 0xf0, 0xd6, 0xb7, 0x0f, 0x1f, 0xaa, 0xa2, 0xe8, 0xd5, 0x23, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1618 = { .name = "xdh_wei25519_1618", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1618_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1618_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1618_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 54 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1619 for XDH, tcId is 55 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1619_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1619_privkey[] = { 0xf0, 0xa4, 0x6a, 0x7f, 0x4b, 0x98, 0x9f, 0xe5, 0x15, 0xed, 0xc4, 0x41, 0x10, 0x93, 0x46, 0xba, 0x74, 0x6e, 0xc1, 0x51, 0x68, 0x96, 0xec, 0x5b, 0x7e, 0x4f, 0x4d, 0x90, 0x30, 0x64, 0xb4, 0x63, }; static const unsigned char xdh_wei25519_1619_sharedsecret[] = { 0xb6, 0x95, 0x24, 0xe3, 0x95, 0x5d, 0xa2, 0x3d, 0xf6, 0xad, 0x1a, 0x7c, 0xd3, 0x85, 0x40, 0x04, 0x7f, 0x50, 0x86, 0x0f, 0x1c, 0x8f, 0xde, 0xd9, 0xb1, 0xfd, 0xfc, 0xc9, 0xe8, 0x12, 0xa0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1619 = { .name = "xdh_wei25519_1619", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1619_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1619_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1619_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 55 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1620 for XDH, tcId is 56 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1620_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1620_privkey[] = { 0x88, 0x18, 0x74, 0xfd, 0xa3, 0xa9, 0x9c, 0x0f, 0x02, 0x16, 0xe1, 0x17, 0x2f, 0xbd, 0x07, 0xab, 0x1c, 0x7d, 0xf7, 0x86, 0x02, 0xcc, 0x6b, 0x11, 0x26, 0x4e, 0x57, 0xaa, 0xb5, 0xf2, 0x3a, 0x49, }; static const unsigned char xdh_wei25519_1620_sharedsecret[] = { 0xe4, 0x17, 0xbb, 0x88, 0x54, 0xf3, 0xb4, 0xf7, 0x0e, 0xce, 0xa5, 0x57, 0x45, 0x4c, 0x5c, 0x4e, 0x5f, 0x38, 0x04, 0xae, 0x53, 0x79, 0x60, 0xa8, 0x09, 0x7b, 0x9f, 0x33, 0x84, 0x10, 0xd7, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1620 = { .name = "xdh_wei25519_1620", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1620_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1620_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1620_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 56 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1621 for XDH, tcId is 57 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1621_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1621_privkey[] = { 0xb8, 0xd0, 0xf1, 0xae, 0x05, 0xa5, 0x07, 0x28, 0x31, 0x44, 0x31, 0x50, 0xe2, 0x02, 0xac, 0x6d, 0xb0, 0x03, 0x22, 0xcd, 0xf3, 0x41, 0xf4, 0x67, 0xe9, 0xf2, 0x96, 0x58, 0x8b, 0x04, 0xdb, 0x72, }; static const unsigned char xdh_wei25519_1621_sharedsecret[] = { 0xaf, 0xca, 0x72, 0xbb, 0x8e, 0xf7, 0x27, 0xb6, 0x0c, 0x53, 0x0c, 0x93, 0x7a, 0x2f, 0x7d, 0x06, 0xbb, 0x39, 0xc3, 0x9b, 0x90, 0x3a, 0x7f, 0x44, 0x35, 0xb3, 0xf5, 0xd8, 0xfc, 0x1c, 0xa8, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1621 = { .name = "xdh_wei25519_1621", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1621_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1621_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1621_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 57 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1622 for XDH, tcId is 58 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1622_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1622_privkey[] = { 0xc8, 0x61, 0x9b, 0xa9, 0x88, 0x85, 0x9d, 0xb7, 0xd6, 0xf2, 0x0f, 0xbf, 0x3f, 0xfb, 0x8b, 0x11, 0x34, 0x18, 0xcc, 0x27, 0x80, 0x65, 0xb4, 0xe8, 0xbb, 0x6d, 0x4e, 0x5b, 0x3e, 0x7c, 0xb5, 0x69, }; static const unsigned char xdh_wei25519_1622_sharedsecret[] = { 0x7e, 0x41, 0xc2, 0x88, 0x6f, 0xed, 0x4a, 0xf0, 0x4c, 0x16, 0x41, 0xa5, 0x9a, 0xf9, 0x38, 0x02, 0xf2, 0x5a, 0xf0, 0xf9, 0xcb, 0xa7, 0xa2, 0x9a, 0xe7, 0x2e, 0x2a, 0x92, 0xf3, 0x5a, 0x1e, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1622 = { .name = "xdh_wei25519_1622", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1622_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1622_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1622_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 58 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1623 for XDH, tcId is 59 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1623_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1623_privkey[] = { 0xf8, 0xd4, 0xca, 0x1f, 0x37, 0xa3, 0x0e, 0xc9, 0xac, 0xd6, 0xdb, 0xe5, 0xa6, 0xe1, 0x50, 0xe5, 0xbc, 0x44, 0x7d, 0x22, 0xb3, 0x55, 0xd8, 0x0b, 0xa0, 0x02, 0xc5, 0xb0, 0x5c, 0x26, 0x93, 0x5d, }; static const unsigned char xdh_wei25519_1623_sharedsecret[] = { 0xdd, 0x3a, 0xbd, 0x47, 0x46, 0xbf, 0x4f, 0x2a, 0x0d, 0x93, 0xc0, 0x2a, 0x7d, 0x19, 0xf7, 0x6d, 0x92, 0x1c, 0x09, 0x0d, 0x07, 0xe6, 0xea, 0x5a, 0xba, 0xe7, 0xf2, 0x88, 0x48, 0x35, 0x59, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_1623 = { .name = "xdh_wei25519_1623", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1623_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1623_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1623_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 59 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1624 for XDH, tcId is 60 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1624_peerpubkey[] = { 0xed, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1624_privkey[] = { 0x88, 0x03, 0x7a, 0xc8, 0xe3, 0x3c, 0x72, 0xc2, 0xc5, 0x10, 0x37, 0xc7, 0xc8, 0xc5, 0x28, 0x8b, 0xba, 0x92, 0x65, 0xc8, 0x2f, 0xd8, 0xc3, 0x17, 0x96, 0xdd, 0x7e, 0xa5, 0xdf, 0x9a, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_1624_sharedsecret[] = { 0x8c, 0x27, 0xb3, 0xbf, 0xf8, 0xd3, 0xc1, 0xf6, 0xda, 0xf2, 0xd3, 0xb7, 0xb3, 0x47, 0x9c, 0xf9, 0xad, 0x20, 0x56, 0xe2, 0x00, 0x2b, 0xe2, 0x47, 0x99, 0x2a, 0x3b, 0x29, 0xde, 0x13, 0xa6, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1624 = { .name = "xdh_wei25519_1624", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1624_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1624_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1624_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 60 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1625 for XDH, tcId is 61 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1625_peerpubkey[] = { 0xed, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1625_privkey[] = { 0x50, 0x34, 0xee, 0x7b, 0xf8, 0x3a, 0x13, 0xd9, 0x16, 0x7d, 0xf8, 0x6b, 0x06, 0x40, 0x29, 0x4f, 0x36, 0x20, 0xf4, 0xf4, 0xd9, 0x03, 0x0e, 0x5e, 0x29, 0x3f, 0x91, 0x90, 0x82, 0x4a, 0xe5, 0x62, }; static const unsigned char xdh_wei25519_1625_sharedsecret[] = { 0x8e, 0x1d, 0x22, 0x07, 0xb4, 0x74, 0x32, 0xf8, 0x81, 0x67, 0x74, 0x48, 0xb9, 0xd4, 0x26, 0xa3, 0x0d, 0xe1, 0xa1, 0xf3, 0xfd, 0x38, 0xca, 0xd6, 0xf4, 0xb2, 0x3d, 0xbd, 0xfe, 0x8a, 0x29, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1625 = { .name = "xdh_wei25519_1625", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1625_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1625_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1625_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 61 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1626 for XDH, tcId is 62 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1626_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1626_privkey[] = { 0x40, 0xbd, 0x4e, 0x1c, 0xaf, 0x39, 0xd9, 0xde, 0xf7, 0x66, 0x38, 0x23, 0x50, 0x2d, 0xad, 0x3e, 0x7d, 0x30, 0xeb, 0x6e, 0xb0, 0x1e, 0x9b, 0x89, 0x51, 0x6d, 0x4f, 0x2f, 0x45, 0xb7, 0xcd, 0x7f, }; static const unsigned char xdh_wei25519_1626_sharedsecret[] = { 0x2c, 0xf6, 0x97, 0x4b, 0x0c, 0x07, 0x0e, 0x37, 0x07, 0xbf, 0x92, 0xe7, 0x21, 0xd3, 0xea, 0x9d, 0xe3, 0xdb, 0x6f, 0x61, 0xed, 0x81, 0x0e, 0x0a, 0x23, 0xd7, 0x2d, 0x43, 0x33, 0x65, 0xf6, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1626 = { .name = "xdh_wei25519_1626", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1626_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1626_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1626_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case public key, tcId is 62 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1627 for XDH, tcId is 63 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1627_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1627_privkey[] = { 0xe0, 0xf9, 0x78, 0xdf, 0xcd, 0x3a, 0x8f, 0x1a, 0x50, 0x93, 0x41, 0x8d, 0xe5, 0x41, 0x36, 0xa5, 0x84, 0xc2, 0x0b, 0x7b, 0x34, 0x9a, 0xfd, 0xf6, 0xc0, 0x52, 0x08, 0x86, 0xf9, 0x5b, 0x12, 0x72, }; static const unsigned char xdh_wei25519_1627_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1627 = { .name = "xdh_wei25519_1627", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1627_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1627_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1627_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 63 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1628 for XDH, tcId is 64 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1628_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1628_privkey[] = { 0x38, 0x73, 0x55, 0xd9, 0x95, 0x61, 0x60, 0x90, 0x50, 0x3a, 0xaf, 0xad, 0x49, 0xda, 0x01, 0xfb, 0x3d, 0xc3, 0xed, 0xa9, 0x62, 0x70, 0x4e, 0xae, 0xe6, 0xb8, 0x6f, 0x9e, 0x20, 0xc9, 0x25, 0x79, }; static const unsigned char xdh_wei25519_1628_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1628 = { .name = "xdh_wei25519_1628", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1628_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1628_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1628_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 64 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1629 for XDH, tcId is 65 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1629_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1629_privkey[] = { 0xc8, 0xfe, 0x0d, 0xf9, 0x2a, 0xe6, 0x8a, 0x03, 0x02, 0x3f, 0xc0, 0xc9, 0xad, 0xb9, 0x55, 0x7d, 0x31, 0xbe, 0x7f, 0xee, 0xd0, 0xd3, 0xab, 0x36, 0xc5, 0x58, 0x14, 0x3d, 0xaf, 0x4d, 0xbb, 0x40, }; static const unsigned char xdh_wei25519_1629_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1629 = { .name = "xdh_wei25519_1629", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1629_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1629_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1629_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 65 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1630 for XDH, tcId is 66 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1630_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_1630_privkey[] = { 0xc8, 0xd7, 0x4a, 0xcd, 0xe5, 0x93, 0x4e, 0x64, 0xb9, 0x89, 0x5d, 0x5f, 0xf7, 0xaf, 0xbf, 0xfd, 0x7f, 0x70, 0x4f, 0x7d, 0xfc, 0xcf, 0xf7, 0xac, 0x28, 0xfa, 0x62, 0xa1, 0xe6, 0x41, 0x03, 0x47, }; static const unsigned char xdh_wei25519_1630_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1630 = { .name = "xdh_wei25519_1630", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1630_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1630_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1630_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 66 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1631 for XDH, tcId is 67 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1631_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_1631_privkey[] = { 0xb8, 0x56, 0x49, 0xd5, 0x12, 0x0e, 0x01, 0xe8, 0xcc, 0xaf, 0x7b, 0x2f, 0xb8, 0xd8, 0x1b, 0x62, 0xe8, 0xad, 0x6f, 0x3d, 0x5c, 0x05, 0x53, 0xfd, 0xde, 0x19, 0x06, 0xcb, 0x9d, 0x79, 0xc0, 0x50, }; static const unsigned char xdh_wei25519_1631_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1631 = { .name = "xdh_wei25519_1631", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1631_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1631_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1631_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 67 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1632 for XDH, tcId is 68 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1632_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1632_privkey[] = { 0x20, 0x64, 0xb2, 0xf4, 0xc9, 0xdc, 0x97, 0xec, 0x7c, 0xf5, 0x89, 0x32, 0xfd, 0xfa, 0x32, 0x65, 0xba, 0x6e, 0xa4, 0xd1, 0x1f, 0x02, 0x59, 0xb8, 0xef, 0xc8, 0xaf, 0xb3, 0x5d, 0xb8, 0x8c, 0x48, }; static const unsigned char xdh_wei25519_1632_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1632 = { .name = "xdh_wei25519_1632", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1632_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1632_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1632_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 68 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1633 for XDH, tcId is 69 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1633_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1633_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1633_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1633 = { .name = "xdh_wei25519_1633", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1633_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1633_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1633_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 69 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1634 for XDH, tcId is 70 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1634_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1634_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1634_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1634 = { .name = "xdh_wei25519_1634", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1634_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1634_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1634_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 70 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1635 for XDH, tcId is 71 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1635_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1635_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1635_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1635 = { .name = "xdh_wei25519_1635", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1635_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1635_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1635_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 71 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1636 for XDH, tcId is 72 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1636_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1636_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1636_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1636 = { .name = "xdh_wei25519_1636", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1636_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1636_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1636_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 72 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1637 for XDH, tcId is 73 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1637_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1637_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1637_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1637 = { .name = "xdh_wei25519_1637", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1637_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1637_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1637_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 73 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1638 for XDH, tcId is 74 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1638_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1638_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1638_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1638 = { .name = "xdh_wei25519_1638", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1638_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1638_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1638_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 74 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1639 for XDH, tcId is 75 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1639_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1639_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1639_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1639 = { .name = "xdh_wei25519_1639", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1639_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1639_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1639_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 75 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1640 for XDH, tcId is 76 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1640_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1640_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1640_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1640 = { .name = "xdh_wei25519_1640", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1640_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1640_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1640_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 76 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1641 for XDH, tcId is 77 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1641_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1641_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1641_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1641 = { .name = "xdh_wei25519_1641", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1641_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1641_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1641_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 77 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1642 for XDH, tcId is 78 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1642_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1642_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1642_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1642 = { .name = "xdh_wei25519_1642", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1642_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1642_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1642_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 78 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1643 for XDH, tcId is 79 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1643_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0xd7, }; static const unsigned char xdh_wei25519_1643_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1643_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1643 = { .name = "xdh_wei25519_1643", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1643_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1643_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1643_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 79 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1644 for XDH, tcId is 80 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1644_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x80, }; static const unsigned char xdh_wei25519_1644_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1644_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1644 = { .name = "xdh_wei25519_1644", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1644_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1644_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1644_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 80 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1645 for XDH, tcId is 81 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1645_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1645_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1645_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1645 = { .name = "xdh_wei25519_1645", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1645_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1645_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1645_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 81 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1646 for XDH, tcId is 82 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1646_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1646_privkey[] = { 0x78, 0x6a, 0x33, 0xa4, 0xf7, 0xaf, 0x29, 0x7a, 0x20, 0xe7, 0x64, 0x29, 0x25, 0x93, 0x2b, 0xf5, 0x09, 0xe7, 0x07, 0x0f, 0xa1, 0xbc, 0x36, 0x98, 0x6a, 0xf1, 0xeb, 0x13, 0xf4, 0xf5, 0x0b, 0x55, }; static const unsigned char xdh_wei25519_1646_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1646 = { .name = "xdh_wei25519_1646", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1646_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1646_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1646_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key with low order, tcId is 82 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1647 for XDH, tcId is 83 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1647_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1647_privkey[] = { 0x40, 0xff, 0x58, 0x6e, 0x73, 0xd6, 0x1f, 0x09, 0x60, 0xdc, 0x2d, 0x76, 0x3a, 0xc1, 0x9e, 0x98, 0x22, 0x5f, 0x11, 0x94, 0xf6, 0xfe, 0x43, 0xd5, 0xdd, 0x97, 0xad, 0x55, 0xb3, 0xd3, 0x59, 0x61, }; static const unsigned char xdh_wei25519_1647_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1647 = { .name = "xdh_wei25519_1647", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1647_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1647_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1647_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819949, tcId is 83 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1648 for XDH, tcId is 84 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1648_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1648_privkey[] = { 0x58, 0x4f, 0xce, 0xae, 0xba, 0xe9, 0x44, 0xbf, 0xe9, 0x3b, 0x2e, 0x0d, 0x0a, 0x57, 0x5f, 0x70, 0x6c, 0xe5, 0xad, 0xa1, 0xda, 0x2b, 0x13, 0x11, 0xc3, 0xb4, 0x21, 0xf9, 0x18, 0x6c, 0x7a, 0x6f, }; static const unsigned char xdh_wei25519_1648_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1648 = { .name = "xdh_wei25519_1648", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1648_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1648_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1648_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819950, tcId is 84 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1649 for XDH, tcId is 85 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1649_peerpubkey[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1649_privkey[] = { 0x00, 0x16, 0xb6, 0x2a, 0xf5, 0xca, 0xbd, 0xe8, 0xc4, 0x09, 0x38, 0xeb, 0xf2, 0x10, 0x8e, 0x05, 0xd2, 0x7f, 0xa0, 0x53, 0x3e, 0xd8, 0x5d, 0x70, 0x01, 0x5a, 0xd4, 0xad, 0x39, 0x76, 0x2d, 0x54, }; static const unsigned char xdh_wei25519_1649_sharedsecret[] = { 0xb4, 0xd1, 0x0e, 0x83, 0x27, 0x14, 0x97, 0x2f, 0x96, 0xbd, 0x33, 0x82, 0xe4, 0xd0, 0x82, 0xa2, 0x1a, 0x83, 0x33, 0xa1, 0x63, 0x15, 0xb3, 0xff, 0xb5, 0x36, 0x06, 0x1d, 0x24, 0x82, 0x36, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1649 = { .name = "xdh_wei25519_1649", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1649_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1649_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1649_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 85 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1650 for XDH, tcId is 86 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1650_peerpubkey[] = { 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1650_privkey[] = { 0xd8, 0x36, 0x50, 0xba, 0x7c, 0xec, 0x11, 0x58, 0x81, 0x91, 0x62, 0x55, 0xe3, 0xfa, 0x5f, 0xa0, 0xd6, 0xb8, 0xdc, 0xf9, 0x68, 0x73, 0x1b, 0xd2, 0xc9, 0xd2, 0xae, 0xc3, 0xf5, 0x61, 0xf6, 0x49, }; static const unsigned char xdh_wei25519_1650_sharedsecret[] = { 0x51, 0x5e, 0xac, 0x8f, 0x1e, 0xd0, 0xb0, 0x0c, 0x70, 0x76, 0x23, 0x22, 0xc3, 0xef, 0x86, 0x71, 0x6c, 0xd2, 0xc5, 0x1f, 0xe7, 0x7c, 0xec, 0x3d, 0x31, 0xb6, 0x38, 0x8b, 0xc6, 0xee, 0xa3, 0x36, }; static const wycheproof_xdh_test xdh_wei25519_1650 = { .name = "xdh_wei25519_1650", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1650_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1650_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1650_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 86 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1651 for XDH, tcId is 87 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1651_peerpubkey[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1651_privkey[] = { 0x88, 0xdd, 0x14, 0xe2, 0x71, 0x1e, 0xbd, 0x0b, 0x00, 0x26, 0xc6, 0x51, 0x26, 0x4c, 0xa9, 0x65, 0xe7, 0xe3, 0xda, 0x50, 0x82, 0x78, 0x9f, 0xba, 0xb7, 0xe2, 0x44, 0x25, 0xe7, 0xb4, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_1651_sharedsecret[] = { 0x69, 0x19, 0x99, 0x2d, 0x6a, 0x59, 0x1e, 0x77, 0xb3, 0xf2, 0xba, 0xcb, 0xd7, 0x4c, 0xaf, 0x3a, 0xea, 0x4b, 0xe4, 0x80, 0x2b, 0x18, 0xb2, 0xbc, 0x07, 0xeb, 0x09, 0xad, 0xe3, 0xad, 0x66, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1651 = { .name = "xdh_wei25519_1651", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1651_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1651_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1651_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 87 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1652 for XDH, tcId is 88 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1652_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1652_privkey[] = { 0x98, 0xc2, 0xb0, 0x8c, 0xba, 0xc1, 0x4e, 0x15, 0x95, 0x31, 0x54, 0xe3, 0xb5, 0x58, 0xd4, 0x2b, 0xb1, 0x26, 0x8a, 0x36, 0x5b, 0x0e, 0xf2, 0xf2, 0x27, 0x25, 0x12, 0x9d, 0x8a, 0xc5, 0xcb, 0x7f, }; static const unsigned char xdh_wei25519_1652_sharedsecret[] = { 0x9c, 0x03, 0x4f, 0xcd, 0x8d, 0x3b, 0xf6, 0x99, 0x64, 0x95, 0x8c, 0x01, 0x05, 0x16, 0x1f, 0xcb, 0x5d, 0x1e, 0xa5, 0xb8, 0xf8, 0xab, 0xb3, 0x71, 0x49, 0x1e, 0x42, 0xa7, 0x68, 0x4c, 0x23, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1652 = { .name = "xdh_wei25519_1652", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1652_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1652_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1652_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 88 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1653 for XDH, tcId is 89 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1653_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1653_privkey[] = { 0xc0, 0x69, 0x7b, 0x6f, 0x05, 0xe0, 0xf3, 0x43, 0x3b, 0x44, 0xea, 0x35, 0x2f, 0x20, 0x50, 0x8e, 0xb0, 0x62, 0x30, 0x98, 0xa7, 0x77, 0x08, 0x53, 0xaf, 0x5c, 0xa0, 0x97, 0x27, 0x34, 0x0c, 0x4e, }; static const unsigned char xdh_wei25519_1653_sharedsecret[] = { 0xed, 0x18, 0xb0, 0x6d, 0xa5, 0x12, 0xca, 0xb6, 0x3f, 0x22, 0xd2, 0xd5, 0x1d, 0x77, 0xd9, 0x9f, 0xac, 0xd3, 0xc4, 0x50, 0x2e, 0x4a, 0xbf, 0x4e, 0x97, 0xb0, 0x94, 0xc2, 0x0a, 0x9d, 0xdf, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1653 = { .name = "xdh_wei25519_1653", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1653_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1653_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1653_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 89 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1654 for XDH, tcId is 90 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1654_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1654_privkey[] = { 0x18, 0x42, 0x2b, 0x58, 0xa1, 0x8e, 0x0f, 0x45, 0x19, 0xb7, 0xa8, 0x87, 0xb8, 0xcf, 0xb6, 0x49, 0xe0, 0xbf, 0xe4, 0xb3, 0x4d, 0x75, 0x96, 0x33, 0x50, 0xa9, 0x94, 0x4e, 0x5b, 0x7f, 0x5b, 0x7e, }; static const unsigned char xdh_wei25519_1654_sharedsecret[] = { 0x44, 0x8c, 0xe4, 0x10, 0xff, 0xfc, 0x7e, 0x61, 0x49, 0xc5, 0xab, 0xec, 0x0a, 0xd5, 0xf3, 0x60, 0x7d, 0xfd, 0xe8, 0xa3, 0x4e, 0x2a, 0xc3, 0x24, 0x3c, 0x30, 0x09, 0x17, 0x61, 0x68, 0xb4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1654 = { .name = "xdh_wei25519_1654", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1654_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1654_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1654_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 90 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1655 for XDH, tcId is 91 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1655_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1655_privkey[] = { 0x20, 0x62, 0x0d, 0x82, 0x48, 0x77, 0x07, 0xbe, 0xdf, 0x9e, 0xe3, 0x54, 0x9e, 0x95, 0xcb, 0x93, 0x90, 0xd2, 0x61, 0x8f, 0x50, 0xcf, 0x6a, 0xcb, 0xa4, 0x7f, 0xfa, 0xa1, 0x03, 0x22, 0x4a, 0x6f, }; static const unsigned char xdh_wei25519_1655_sharedsecret[] = { 0x03, 0xa6, 0x33, 0xdf, 0x01, 0x48, 0x0d, 0x0d, 0x50, 0x48, 0xd9, 0x2f, 0x51, 0xb2, 0x0d, 0xc1, 0xd1, 0x1f, 0x73, 0xe9, 0x51, 0x5c, 0x69, 0x94, 0x29, 0xb9, 0x0a, 0x4f, 0x69, 0x03, 0x12, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1655 = { .name = "xdh_wei25519_1655", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1655_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1655_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1655_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 91 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1656 for XDH, tcId is 92 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1656_peerpubkey[] = { 0xda, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1656_privkey[] = { 0x28, 0x5a, 0x6a, 0x7c, 0xee, 0xb7, 0x12, 0x2f, 0x2c, 0x78, 0xd9, 0x9c, 0x53, 0xb2, 0xa9, 0x02, 0xb4, 0x90, 0x89, 0x2f, 0x7d, 0xff, 0x32, 0x6f, 0x89, 0xd1, 0x26, 0x73, 0xc3, 0x10, 0x1b, 0x53, }; static const unsigned char xdh_wei25519_1656_sharedsecret[] = { 0x9b, 0x01, 0x28, 0x77, 0x17, 0xd7, 0x2f, 0x4c, 0xfb, 0x58, 0x3e, 0xc8, 0x5f, 0x8f, 0x93, 0x68, 0x49, 0xb1, 0x7d, 0x97, 0x8d, 0xba, 0xe7, 0xb8, 0x37, 0xdb, 0x56, 0xa6, 0x2f, 0x10, 0x0a, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1656 = { .name = "xdh_wei25519_1656", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1656_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1656_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1656_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 92 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1657 for XDH, tcId is 93 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1657_peerpubkey[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1657_privkey[] = { 0xc8, 0xe0, 0x33, 0x0a, 0xe9, 0xdc, 0xee, 0xff, 0x88, 0x7f, 0xba, 0x76, 0x12, 0x25, 0x87, 0x9a, 0x4b, 0xd2, 0xe0, 0xdb, 0x08, 0x79, 0x92, 0x44, 0x13, 0x6e, 0x47, 0x21, 0xb2, 0xc8, 0x89, 0x70, }; static const unsigned char xdh_wei25519_1657_sharedsecret[] = { 0xdf, 0xe6, 0x08, 0x31, 0xc9, 0xf4, 0xf9, 0x6c, 0x81, 0x6e, 0x51, 0x04, 0x88, 0x04, 0xdb, 0xdc, 0x27, 0x79, 0x5d, 0x76, 0x0e, 0xce, 0xd7, 0x5e, 0xf5, 0x75, 0xcb, 0xe3, 0xb4, 0x64, 0x05, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1657 = { .name = "xdh_wei25519_1657", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1657_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1657_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1657_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 93 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1658 for XDH, tcId is 94 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1658_peerpubkey[] = { 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1658_privkey[] = { 0x10, 0xdb, 0x62, 0x10, 0xfc, 0x1f, 0xb1, 0x33, 0x82, 0x47, 0x2f, 0xa1, 0x78, 0x7b, 0x00, 0x4b, 0x5d, 0x11, 0x86, 0x8a, 0xb3, 0xa7, 0x95, 0x10, 0xe0, 0xce, 0xe3, 0x0f, 0x4a, 0x6d, 0xf2, 0x6b, }; static const unsigned char xdh_wei25519_1658_sharedsecret[] = { 0x50, 0xbf, 0xa8, 0x26, 0xca, 0x77, 0x03, 0x6d, 0xd2, 0xbb, 0xfd, 0x09, 0x2c, 0x3f, 0x78, 0xe2, 0xe4, 0xa1, 0xf9, 0x80, 0xd7, 0xc8, 0xe7, 0x8f, 0x2f, 0x14, 0xdc, 0xa3, 0xcc, 0xe5, 0xcc, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1658 = { .name = "xdh_wei25519_1658", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1658_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1658_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1658_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 94 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1659 for XDH, tcId is 95 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1659_peerpubkey[] = { 0xea, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1659_privkey[] = { 0x90, 0x41, 0xc6, 0xe0, 0x44, 0xa2, 0x77, 0xdf, 0x84, 0x66, 0x27, 0x5c, 0xa8, 0xb5, 0xee, 0x0d, 0xa7, 0xbc, 0x02, 0x86, 0x48, 0x05, 0x4a, 0xde, 0x5c, 0x59, 0x2a, 0xdd, 0x30, 0x57, 0x47, 0x4e, }; static const unsigned char xdh_wei25519_1659_sharedsecret[] = { 0x13, 0xda, 0x56, 0x95, 0xa4, 0xc2, 0x06, 0x11, 0x54, 0x09, 0xb5, 0x27, 0x7a, 0x93, 0x47, 0x82, 0xfe, 0x98, 0x5f, 0xa0, 0x50, 0xbc, 0x90, 0x2c, 0xba, 0x56, 0x16, 0xf9, 0x15, 0x6f, 0xe2, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1659 = { .name = "xdh_wei25519_1659", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1659_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1659_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1659_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 95 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1660 for XDH, tcId is 96 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1660_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1660_privkey[] = { 0xb8, 0xd4, 0x99, 0x04, 0x1a, 0x67, 0x13, 0xc0, 0xf6, 0xf8, 0x76, 0xdb, 0x74, 0x06, 0x58, 0x7f, 0xdb, 0x44, 0x58, 0x2f, 0x95, 0x42, 0x35, 0x6a, 0xe8, 0x9c, 0xfa, 0x95, 0x8a, 0x34, 0xd2, 0x66, }; static const unsigned char xdh_wei25519_1660_sharedsecret[] = { 0x63, 0x48, 0x3b, 0x5d, 0x69, 0x23, 0x6c, 0x63, 0xcd, 0xdb, 0xed, 0x33, 0xd8, 0xe2, 0x2b, 0xae, 0xcc, 0x2b, 0x0c, 0xcf, 0x88, 0x65, 0x98, 0xe8, 0x63, 0xc8, 0x44, 0xd2, 0xbf, 0x25, 0x67, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1660 = { .name = "xdh_wei25519_1660", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1660_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1660_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1660_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 96 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1661 for XDH, tcId is 97 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1661_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei25519_1661_privkey[] = { 0xc8, 0x5f, 0x08, 0xe6, 0x0c, 0x84, 0x5f, 0x82, 0x09, 0x91, 0x41, 0xa6, 0x6d, 0xc4, 0x58, 0x3d, 0x2b, 0x10, 0x40, 0x46, 0x2c, 0x54, 0x4d, 0x33, 0xd0, 0x45, 0x3b, 0x20, 0xb1, 0xa6, 0x37, 0x7e, }; static const unsigned char xdh_wei25519_1661_sharedsecret[] = { 0xe9, 0xdb, 0x74, 0xbc, 0x88, 0xd0, 0xd9, 0xbf, 0x04, 0x6d, 0xdd, 0x13, 0xf9, 0x43, 0xbc, 0xcb, 0xe6, 0xdb, 0xb4, 0x7d, 0x49, 0x32, 0x3f, 0x8d, 0xfe, 0xed, 0xc4, 0xa6, 0x94, 0x99, 0x1a, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1661 = { .name = "xdh_wei25519_1661", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1661_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1661_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1661_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "non-canonical public key, tcId is 97 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1662 for XDH, tcId is 98 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1662_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1662_privkey[] = { 0x78, 0x87, 0x88, 0x9b, 0xac, 0x4c, 0x62, 0x9a, 0x10, 0x1d, 0x37, 0x24, 0xf2, 0xed, 0x8b, 0x98, 0xd9, 0x36, 0xfd, 0xe7, 0x9e, 0x1a, 0x1f, 0x77, 0xd8, 0x67, 0x79, 0x62, 0x6b, 0xf8, 0xf2, 0x63, }; static const unsigned char xdh_wei25519_1662_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1662 = { .name = "xdh_wei25519_1662", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1662_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1662_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1662_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819968, tcId is 98 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1663 for XDH, tcId is 99 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1663_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei25519_1663_privkey[] = { 0xe0, 0x79, 0x71, 0xee, 0x82, 0x0e, 0x48, 0xb0, 0xb2, 0x66, 0xd8, 0xbe, 0x3c, 0xdb, 0xbb, 0x5e, 0x90, 0x0a, 0x43, 0xf5, 0x9e, 0xe8, 0x53, 0x5c, 0x65, 0x72, 0x41, 0x86, 0x15, 0xde, 0x49, 0x62, }; static const unsigned char xdh_wei25519_1663_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1663 = { .name = "xdh_wei25519_1663", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1663_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1663_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1663_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "public key = 57896044618658097711785492504343953926634992332820282019728792003956564819969, tcId is 99 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1664 for XDH, tcId is 100 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1664_peerpubkey[] = { 0xe6, 0xdb, 0x68, 0x67, 0x58, 0x30, 0x30, 0xdb, 0x35, 0x94, 0xc1, 0xa4, 0x24, 0xb1, 0x5f, 0x7c, 0x72, 0x66, 0x24, 0xec, 0x26, 0xb3, 0x35, 0x3b, 0x10, 0xa9, 0x03, 0xa6, 0xd0, 0xab, 0x1c, 0x4c, }; static const unsigned char xdh_wei25519_1664_privkey[] = { 0xa0, 0x46, 0xe3, 0x6b, 0xf0, 0x52, 0x7c, 0x9d, 0x3b, 0x16, 0x15, 0x4b, 0x82, 0x46, 0x5e, 0xdd, 0x62, 0x14, 0x4c, 0x0a, 0xc1, 0xfc, 0x5a, 0x18, 0x50, 0x6a, 0x22, 0x44, 0xba, 0x44, 0x9a, 0x44, }; static const unsigned char xdh_wei25519_1664_sharedsecret[] = { 0xc3, 0xda, 0x55, 0x37, 0x9d, 0xe9, 0xc6, 0x90, 0x8e, 0x94, 0xea, 0x4d, 0xf2, 0x8d, 0x08, 0x4f, 0x32, 0xec, 0xcf, 0x03, 0x49, 0x1c, 0x71, 0xf7, 0x54, 0xb4, 0x07, 0x55, 0x77, 0xa2, 0x85, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1664 = { .name = "xdh_wei25519_1664", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1664_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1664_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1664_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 7748, tcId is 100 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1665 for XDH, tcId is 101 in file x25519_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')] */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1665_peerpubkey[] = { 0xe5, 0x21, 0x0f, 0x12, 0x78, 0x68, 0x11, 0xd3, 0xf4, 0xb7, 0x95, 0x9d, 0x05, 0x38, 0xae, 0x2c, 0x31, 0xdb, 0xe7, 0x10, 0x6f, 0xc0, 0x3c, 0x3e, 0xfc, 0x4c, 0xd5, 0x49, 0xc7, 0x15, 0xa4, 0x13, }; static const unsigned char xdh_wei25519_1665_privkey[] = { 0x48, 0x66, 0xe9, 0xd4, 0xd1, 0xb4, 0x67, 0x3c, 0x5a, 0xd2, 0x26, 0x91, 0x95, 0x7d, 0x6a, 0xf5, 0xc1, 0x1b, 0x64, 0x21, 0xe0, 0xea, 0x01, 0xd4, 0x2c, 0xa4, 0x16, 0x9e, 0x79, 0x18, 0xba, 0x4d, }; static const unsigned char xdh_wei25519_1665_sharedsecret[] = { 0x95, 0xcb, 0xde, 0x94, 0x76, 0xe8, 0x90, 0x7d, 0x7a, 0xad, 0xe4, 0x5c, 0xb4, 0xb8, 0x73, 0xf8, 0x8b, 0x59, 0x5a, 0x68, 0x79, 0x9f, 0xa1, 0x52, 0xe6, 0xf8, 0xf7, 0x64, 0x7a, 0xac, 0x79, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1665 = { .name = "xdh_wei25519_1665", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1665_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1665_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1665_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "RFC 7748, tcId is 101 in file x25519_test.json [!!!WARNING: this test has been patched from 'valid' to 'acceptable'! (X25519 incorrect, x-coordinate is on the Twist: test must be 'acceptable' and not 'valid')]", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1666 for XDH, tcId is 102 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1666_peerpubkey[] = { 0xde, 0x9e, 0xdb, 0x7d, 0x7b, 0x7d, 0xc1, 0xb4, 0xd3, 0x5b, 0x61, 0xc2, 0xec, 0xe4, 0x35, 0x37, 0x3f, 0x83, 0x43, 0xc8, 0x5b, 0x78, 0x67, 0x4d, 0xad, 0xfc, 0x7e, 0x14, 0x6f, 0x88, 0x2b, 0x4f, }; static const unsigned char xdh_wei25519_1666_privkey[] = { 0x77, 0x07, 0x6d, 0x0a, 0x73, 0x18, 0xa5, 0x7d, 0x3c, 0x16, 0xc1, 0x72, 0x51, 0xb2, 0x66, 0x45, 0xdf, 0x4c, 0x2f, 0x87, 0xeb, 0xc0, 0x99, 0x2a, 0xb1, 0x77, 0xfb, 0xa5, 0x1d, 0xb9, 0x2c, 0x2a, }; static const unsigned char xdh_wei25519_1666_sharedsecret[] = { 0x4a, 0x5d, 0x9d, 0x5b, 0xa4, 0xce, 0x2d, 0xe1, 0x72, 0x8e, 0x3b, 0xf4, 0x80, 0x35, 0x0f, 0x25, 0xe0, 0x7e, 0x21, 0xc9, 0x47, 0xd1, 0x9e, 0x33, 0x76, 0xf0, 0x9b, 0x3c, 0x1e, 0x16, 0x17, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_1666 = { .name = "xdh_wei25519_1666", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1666_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1666_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1666_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "RFC 8037, Section A.6, tcId is 102 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1667 for XDH, tcId is 103 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1667_peerpubkey[] = { 0xb7, 0xb6, 0xd3, 0x9c, 0x76, 0x5c, 0xb6, 0x0c, 0x0c, 0x85, 0x42, 0xf4, 0xf3, 0x95, 0x2f, 0xfb, 0x51, 0xd3, 0x00, 0x2d, 0x4a, 0xeb, 0x9f, 0x8f, 0xf9, 0x88, 0xb1, 0x92, 0x04, 0x3e, 0x6d, 0x0a, }; static const unsigned char xdh_wei25519_1667_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1667_sharedsecret[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1667 = { .name = "xdh_wei25519_1667", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1667_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1667_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1667_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 103 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1668 for XDH, tcId is 104 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1668_peerpubkey[] = { 0x3b, 0x18, 0xdf, 0x1e, 0x50, 0xb8, 0x99, 0xeb, 0xd5, 0x88, 0xc3, 0x16, 0x1c, 0xbd, 0x3b, 0xf9, 0x8e, 0xbc, 0xc2, 0xc1, 0xf7, 0xdf, 0x53, 0xb8, 0x11, 0xbd, 0x0e, 0x91, 0xb4, 0xd5, 0x15, 0x3d, }; static const unsigned char xdh_wei25519_1668_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1668_sharedsecret[] = { 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1668 = { .name = "xdh_wei25519_1668", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1668_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1668_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1668_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 104 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1669 for XDH, tcId is 105 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1669_peerpubkey[] = { 0xca, 0xb6, 0xf9, 0xe7, 0xd8, 0xce, 0x00, 0xdf, 0xce, 0xa9, 0xbb, 0xd8, 0xf0, 0x69, 0xef, 0x7f, 0xb2, 0xac, 0x50, 0x4a, 0xbf, 0x83, 0xb8, 0x7d, 0xb6, 0x01, 0xb5, 0xae, 0x0a, 0x7f, 0x76, 0x15, }; static const unsigned char xdh_wei25519_1669_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1669_sharedsecret[] = { 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1669 = { .name = "xdh_wei25519_1669", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1669_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1669_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1669_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 105 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1670 for XDH, tcId is 106 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1670_peerpubkey[] = { 0x49, 0x77, 0xd0, 0xd8, 0x97, 0xe1, 0xba, 0x56, 0x65, 0x90, 0xf6, 0x0f, 0x2e, 0xb0, 0xdb, 0x6f, 0x7b, 0x24, 0xc1, 0x3d, 0x43, 0x69, 0x18, 0xcc, 0xfd, 0x32, 0x70, 0x8d, 0xfa, 0xd7, 0xe2, 0x47, }; static const unsigned char xdh_wei25519_1670_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1670_sharedsecret[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1670 = { .name = "xdh_wei25519_1670", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1670_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1670_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1670_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 106 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1671 for XDH, tcId is 107 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1671_peerpubkey[] = { 0x98, 0x73, 0x0b, 0xc0, 0x3e, 0x29, 0xe8, 0xb0, 0x57, 0xfb, 0x1d, 0x20, 0xef, 0x8c, 0x0b, 0xff, 0xc8, 0x22, 0x48, 0x5d, 0x3d, 0xb7, 0xf4, 0x5f, 0x4e, 0x3c, 0xc2, 0xc3, 0xc6, 0xd1, 0xd1, 0x4c, }; static const unsigned char xdh_wei25519_1671_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1671_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1671 = { .name = "xdh_wei25519_1671", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1671_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1671_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1671_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 107 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1672 for XDH, tcId is 108 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1672_peerpubkey[] = { 0x97, 0xb4, 0xff, 0xf6, 0x82, 0xdf, 0x7f, 0x09, 0x6c, 0xd1, 0x75, 0x65, 0x69, 0xe2, 0x52, 0xdb, 0x48, 0x2d, 0x45, 0x40, 0x6a, 0x31, 0x98, 0xa1, 0xaf, 0xf2, 0x82, 0xa5, 0xda, 0x47, 0x4c, 0x49, }; static const unsigned char xdh_wei25519_1672_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1672_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1672 = { .name = "xdh_wei25519_1672", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1672_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1672_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1672_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 108 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1673 for XDH, tcId is 109 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1673_peerpubkey[] = { 0x31, 0x77, 0x81, 0xb0, 0x16, 0x3b, 0xae, 0x74, 0xac, 0xcc, 0x06, 0xc0, 0xd4, 0x4e, 0xf9, 0xa9, 0x11, 0xa2, 0x2b, 0x0d, 0x37, 0xfa, 0xf7, 0x72, 0x66, 0x21, 0x59, 0x1f, 0x93, 0x43, 0xea, 0x2f, }; static const unsigned char xdh_wei25519_1673_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1673_sharedsecret[] = { 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1673 = { .name = "xdh_wei25519_1673", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1673_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1673_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1673_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 109 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1674 for XDH, tcId is 110 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1674_peerpubkey[] = { 0x7e, 0x26, 0xf8, 0xf2, 0x4c, 0xb5, 0x90, 0x02, 0x7f, 0x9d, 0x1b, 0xc4, 0x9b, 0x0e, 0x1a, 0x24, 0x2c, 0x7d, 0x8f, 0x43, 0x62, 0x4d, 0x3e, 0x8f, 0xab, 0x28, 0xee, 0x08, 0xe0, 0x2c, 0xb4, 0x5e, }; static const unsigned char xdh_wei25519_1674_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1674_sharedsecret[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1674 = { .name = "xdh_wei25519_1674", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1674_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1674_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1674_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 110 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1675 for XDH, tcId is 111 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1675_peerpubkey[] = { 0xe9, 0x6d, 0x27, 0x80, 0xe5, 0x46, 0x9a, 0x74, 0x62, 0x0a, 0xb5, 0xaa, 0x2f, 0x62, 0x15, 0x1d, 0x14, 0x0c, 0x47, 0x33, 0x20, 0xdb, 0xe1, 0xb0, 0x28, 0xf1, 0xa4, 0x8f, 0x8e, 0x76, 0xf9, 0x5f, }; static const unsigned char xdh_wei25519_1675_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1675_sharedsecret[] = { 0xe5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1675 = { .name = "xdh_wei25519_1675", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1675_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1675_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1675_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 111 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1676 for XDH, tcId is 112 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1676_peerpubkey[] = { 0x8d, 0x61, 0x2c, 0x58, 0x31, 0xaa, 0x64, 0xb0, 0x57, 0x30, 0x0e, 0x7e, 0x31, 0x0f, 0x3a, 0xa3, 0x32, 0xaf, 0x34, 0x06, 0x6f, 0xef, 0xca, 0xb2, 0xb0, 0x89, 0xc9, 0x59, 0x28, 0x78, 0xf8, 0x32, }; static const unsigned char xdh_wei25519_1676_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1676_sharedsecret[] = { 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1676 = { .name = "xdh_wei25519_1676", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1676_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1676_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1676_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 112 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1677 for XDH, tcId is 113 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1677_peerpubkey[] = { 0x8d, 0x44, 0x10, 0x8d, 0x05, 0xd9, 0x40, 0xd3, 0xdf, 0xe5, 0x64, 0x7e, 0xa7, 0xa8, 0x7b, 0xe2, 0x4d, 0x0d, 0x03, 0x6c, 0x9f, 0x0a, 0x95, 0xa2, 0x38, 0x6b, 0x83, 0x9e, 0x7b, 0x7b, 0xf1, 0x45, }; static const unsigned char xdh_wei25519_1677_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1677_sharedsecret[] = { 0xdd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1677 = { .name = "xdh_wei25519_1677", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1677_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1677_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1677_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "edge case for shared secret, tcId is 113 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1678 for XDH, tcId is 114 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1678_peerpubkey[] = { 0x21, 0xa3, 0x5d, 0x5d, 0xb1, 0xb6, 0x23, 0x7c, 0x73, 0x9b, 0x56, 0x34, 0x5a, 0x93, 0x0a, 0xee, 0xe3, 0x73, 0xcd, 0xcf, 0xb4, 0x70, 0x12, 0x66, 0x78, 0x2a, 0x8a, 0xc5, 0x94, 0x91, 0x3b, 0x29, }; static const unsigned char xdh_wei25519_1678_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1678_sharedsecret[] = { 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei25519_1678 = { .name = "xdh_wei25519_1678", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1678_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1678_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1678_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 114 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1679 for XDH, tcId is 115 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1679_peerpubkey[] = { 0x3e, 0x5e, 0xfb, 0x63, 0xc3, 0x52, 0xce, 0x94, 0x27, 0x62, 0x48, 0x2b, 0xc9, 0x33, 0x7a, 0x5d, 0x35, 0xba, 0x55, 0x66, 0x47, 0x43, 0xac, 0x5e, 0x93, 0xd1, 0x1f, 0x95, 0x73, 0x36, 0xcb, 0x10, }; static const unsigned char xdh_wei25519_1679_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1679_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_1679 = { .name = "xdh_wei25519_1679", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1679_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1679_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1679_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 115 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1680 for XDH, tcId is 116 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1680_peerpubkey[] = { 0x8e, 0x41, 0xf0, 0x5e, 0xa3, 0xc7, 0x65, 0x72, 0xbe, 0x10, 0x4a, 0xd8, 0x78, 0x8e, 0x97, 0x08, 0x63, 0xc6, 0xe2, 0xca, 0x3d, 0xaa, 0xe6, 0x4d, 0x1c, 0x2f, 0x46, 0xde, 0xcf, 0xff, 0xa5, 0x71, }; static const unsigned char xdh_wei25519_1680_privkey[] = { 0x60, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0x7f, }; static const unsigned char xdh_wei25519_1680_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1680 = { .name = "xdh_wei25519_1680", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1680_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1680_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1680_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "edge case for shared secret, tcId is 116 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1681 for XDH, tcId is 117 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1681_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1681_privkey[] = { 0xc8, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0x6b, }; static const unsigned char xdh_wei25519_1681_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1681 = { .name = "xdh_wei25519_1681", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1681_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1681_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1681_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 117 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1682 for XDH, tcId is 118 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1682_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1682_privkey[] = { 0x90, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x43, }; static const unsigned char xdh_wei25519_1682_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1682 = { .name = "xdh_wei25519_1682", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1682_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1682_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1682_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 118 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1683 for XDH, tcId is 119 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1683_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1683_privkey[] = { 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x51, }; static const unsigned char xdh_wei25519_1683_sharedsecret[] = { 0x0c, 0x50, 0xac, 0x2b, 0xfb, 0x68, 0x15, 0xb4, 0x7d, 0x07, 0x34, 0xc5, 0x98, 0x13, 0x79, 0x88, 0x2a, 0x24, 0xa2, 0xde, 0x61, 0x66, 0x85, 0x3c, 0x73, 0x53, 0x29, 0xd9, 0x78, 0xba, 0xee, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_1683 = { .name = "xdh_wei25519_1683", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1683_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1683_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1683_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 119 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1684 for XDH, tcId is 120 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1684_peerpubkey[] = { 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1684_privkey[] = { 0x08, 0x40, 0xa8, 0xaf, 0x5b, 0xc4, 0xc4, 0x8d, 0xa8, 0x85, 0x0e, 0x97, 0x3d, 0x7e, 0x14, 0x22, 0x0f, 0x45, 0xc1, 0x92, 0xce, 0xa4, 0x02, 0x0d, 0x37, 0x7e, 0xec, 0xd2, 0x5c, 0x7c, 0x36, 0x43, }; static const unsigned char xdh_wei25519_1684_sharedsecret[] = { 0x77, 0x55, 0x71, 0x37, 0xa2, 0xa2, 0xa6, 0x51, 0xc4, 0x96, 0x27, 0xa9, 0xb2, 0x39, 0xac, 0x1f, 0x2b, 0xf7, 0x8b, 0x8a, 0x3e, 0x72, 0x16, 0x8c, 0xce, 0xcc, 0x10, 0xa5, 0x1f, 0xc5, 0xae, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1684 = { .name = "xdh_wei25519_1684", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1684_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1684_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1684_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 120 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1685 for XDH, tcId is 121 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1685_peerpubkey[] = { 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1685_privkey[] = { 0x00, 0x92, 0x22, 0x9c, 0x75, 0x3a, 0x71, 0x28, 0x4d, 0x08, 0x53, 0x90, 0x94, 0x70, 0xad, 0x84, 0x7a, 0xb6, 0x2f, 0x43, 0x9e, 0xa5, 0x14, 0x82, 0xfb, 0x41, 0xd3, 0x0c, 0xc3, 0xb4, 0x47, 0x43, }; static const unsigned char xdh_wei25519_1685_sharedsecret[] = { 0xc8, 0x8e, 0x71, 0x9a, 0xe5, 0xc2, 0x24, 0x8b, 0x5f, 0x90, 0xda, 0x34, 0x6a, 0x92, 0xae, 0x21, 0x4f, 0x44, 0xa5, 0xd1, 0x29, 0xfd, 0x4e, 0x9c, 0x26, 0xcf, 0x6a, 0x0d, 0xa1, 0xef, 0xe0, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_1685 = { .name = "xdh_wei25519_1685", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1685_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1685_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1685_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 121 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1686 for XDH, tcId is 122 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1686_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1686_privkey[] = { 0xb8, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x5b, }; static const unsigned char xdh_wei25519_1686_sharedsecret[] = { 0x4b, 0xf6, 0x78, 0x9c, 0x7e, 0xa0, 0x36, 0xf9, 0x73, 0xcd, 0xe0, 0xaf, 0x02, 0xd6, 0xfd, 0xb9, 0xb6, 0x4a, 0x0b, 0x95, 0x70, 0x22, 0x11, 0x14, 0x39, 0x57, 0x0f, 0xad, 0x7d, 0x7a, 0x45, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1686 = { .name = "xdh_wei25519_1686", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1686_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1686_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1686_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 122 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1687 for XDH, tcId is 123 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1687_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1687_privkey[] = { 0x68, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0x76, }; static const unsigned char xdh_wei25519_1687_sharedsecret[] = { 0xbc, 0xac, 0x23, 0x5a, 0xe1, 0x5c, 0xc7, 0x14, 0x83, 0x72, 0xe1, 0x1f, 0x93, 0x15, 0xe3, 0xbc, 0x76, 0xce, 0xb9, 0x04, 0xb3, 0xd2, 0xa8, 0x24, 0x6b, 0xd9, 0xd9, 0xbe, 0x20, 0x82, 0xbb, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1687 = { .name = "xdh_wei25519_1687", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1687_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1687_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1687_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 123 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1688 for XDH, tcId is 124 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1688_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1688_privkey[] = { 0x38, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0x74, }; static const unsigned char xdh_wei25519_1688_sharedsecret[] = { 0x5d, 0xd7, 0xd1, 0x6f, 0xff, 0x25, 0xcc, 0x5f, 0xdf, 0x9e, 0x03, 0xc3, 0x15, 0x7c, 0xb0, 0xa2, 0x35, 0xce, 0xa1, 0x7d, 0x61, 0x8f, 0x36, 0xe6, 0xf1, 0x34, 0x61, 0x56, 0x7e, 0xde, 0xb9, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_1688 = { .name = "xdh_wei25519_1688", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1688_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1688_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1688_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 124 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1689 for XDH, tcId is 125 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1689_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1689_privkey[] = { 0x30, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x4b, }; static const unsigned char xdh_wei25519_1689_sharedsecret[] = { 0x28, 0x16, 0xfd, 0x03, 0x1d, 0x51, 0xd6, 0x75, 0x0f, 0x92, 0x25, 0xed, 0xe9, 0x50, 0x62, 0x5c, 0xca, 0x47, 0x44, 0x1c, 0xa9, 0x7e, 0x43, 0x09, 0x26, 0x50, 0x39, 0x69, 0x91, 0xaf, 0xcb, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1689 = { .name = "xdh_wei25519_1689", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1689_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1689_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1689_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 125 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1690 for XDH, tcId is 126 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1690_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1690_privkey[] = { 0xd8, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0x4f, }; static const unsigned char xdh_wei25519_1690_sharedsecret[] = { 0x7e, 0xd8, 0xf2, 0xd5, 0x42, 0x4e, 0x7e, 0xbb, 0x3e, 0xdb, 0xdf, 0x4a, 0xbe, 0x45, 0x54, 0x47, 0xe5, 0xa4, 0x8b, 0x65, 0x8e, 0x64, 0xab, 0xd0, 0x6c, 0x21, 0x8f, 0x33, 0xbd, 0x15, 0x1f, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1690 = { .name = "xdh_wei25519_1690", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1690_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1690_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1690_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 126 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1691 for XDH, tcId is 127 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1691_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1691_privkey[] = { 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0x7e, }; static const unsigned char xdh_wei25519_1691_sharedsecret[] = { 0xe8, 0x62, 0x0e, 0xd5, 0xca, 0x89, 0xc7, 0x2c, 0x5e, 0xa5, 0x50, 0x3e, 0x6d, 0xcd, 0x01, 0x13, 0x1c, 0xd5, 0xe8, 0x75, 0xc3, 0x0e, 0x13, 0xd5, 0xdc, 0x61, 0x9c, 0xe2, 0x8e, 0xc7, 0xd5, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1691 = { .name = "xdh_wei25519_1691", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1691_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1691_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1691_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 127 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1692 for XDH, tcId is 128 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1692_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1692_privkey[] = { 0x20, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0x71, }; static const unsigned char xdh_wei25519_1692_sharedsecret[] = { 0xce, 0xad, 0xb2, 0x64, 0x37, 0x9d, 0xca, 0xdd, 0x6e, 0x3b, 0xb8, 0xad, 0x24, 0xdd, 0x65, 0x3d, 0x2a, 0x60, 0x9d, 0xd7, 0x03, 0xd4, 0x1d, 0xa6, 0xca, 0xf3, 0xad, 0x00, 0xf0, 0x01, 0x86, 0x2c, }; static const wycheproof_xdh_test xdh_wei25519_1692 = { .name = "xdh_wei25519_1692", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1692_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1692_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1692_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 128 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1693 for XDH, tcId is 129 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1693_peerpubkey[] = { 0xa8, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_1693_privkey[] = { 0x90, 0xb1, 0x50, 0xd4, 0x62, 0xde, 0x51, 0x20, 0x56, 0xd5, 0xbd, 0x55, 0x17, 0x30, 0x74, 0x96, 0x9b, 0x49, 0x6f, 0x26, 0x2f, 0xb6, 0x91, 0x6b, 0x73, 0x3f, 0x62, 0x63, 0xa8, 0x07, 0x89, 0x71, }; static const unsigned char xdh_wei25519_1693_sharedsecret[] = { 0xf8, 0x6c, 0xc7, 0xbf, 0x1b, 0xe4, 0x95, 0x74, 0xfc, 0x97, 0xa0, 0x74, 0x28, 0x2e, 0x9b, 0xb5, 0xcd, 0x23, 0x8e, 0x00, 0x2b, 0xc8, 0xe9, 0xa7, 0xb8, 0x55, 0x2b, 0x2d, 0x60, 0xec, 0xcb, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1693 = { .name = "xdh_wei25519_1693", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1693_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1693_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1693_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 129 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1694 for XDH, tcId is 130 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1694_peerpubkey[] = { 0xaa, 0xb9, 0xc7, 0x37, 0x21, 0x18, 0xa5, 0x3a, 0x9d, 0xe9, 0xea, 0xf0, 0x86, 0x8e, 0x3b, 0x1a, 0x3d, 0x88, 0xe8, 0x1c, 0xb2, 0xe4, 0x07, 0xff, 0x71, 0x25, 0xe9, 0xf5, 0xc5, 0x08, 0x87, 0x15, }; static const unsigned char xdh_wei25519_1694_privkey[] = { 0x98, 0x87, 0x28, 0x6b, 0x32, 0x61, 0xc8, 0xd8, 0x57, 0xa1, 0x6f, 0x6d, 0xb2, 0x12, 0x77, 0xf7, 0x5d, 0x88, 0xd4, 0xe8, 0x61, 0xb3, 0xeb, 0xe7, 0x59, 0x66, 0x99, 0x04, 0x7e, 0x81, 0x66, 0x68, }; static const unsigned char xdh_wei25519_1694_sharedsecret[] = { 0xcc, 0xbb, 0x8f, 0xd9, 0xde, 0xe1, 0x65, 0xa3, 0x98, 0xb2, 0xdb, 0xd7, 0xc8, 0x39, 0x6f, 0x81, 0x73, 0x6c, 0x1b, 0x3d, 0xa3, 0x6b, 0x35, 0xfb, 0xec, 0x8f, 0x32, 0x6f, 0x38, 0xf9, 0x27, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1694 = { .name = "xdh_wei25519_1694", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1694_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1694_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1694_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 130 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1695 for XDH, tcId is 131 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1695_peerpubkey[] = { 0x58, 0x50, 0x07, 0xa5, 0x93, 0x0d, 0x77, 0x62, 0x3c, 0xf2, 0x97, 0x56, 0x03, 0x8c, 0xa1, 0x97, 0xd3, 0xeb, 0xfd, 0x9e, 0x4c, 0x80, 0xa6, 0x95, 0x85, 0xef, 0xe0, 0x27, 0x40, 0x92, 0xc1, 0x15, }; static const unsigned char xdh_wei25519_1695_privkey[] = { 0x20, 0xca, 0x2c, 0x85, 0xcc, 0x87, 0x62, 0xe9, 0x6b, 0x70, 0x47, 0xbf, 0x15, 0xc7, 0x1c, 0x05, 0x0f, 0xfe, 0x0e, 0xd1, 0x61, 0x60, 0x40, 0xa9, 0x53, 0xae, 0x32, 0xa1, 0x29, 0x7a, 0xd8, 0x71, }; static const unsigned char xdh_wei25519_1695_sharedsecret[] = { 0x46, 0xad, 0xd6, 0xf4, 0x8f, 0xff, 0xf4, 0x61, 0x77, 0x7d, 0x4f, 0x89, 0xb6, 0xfd, 0xf1, 0x15, 0x5a, 0xa0, 0x51, 0xa9, 0x63, 0x87, 0xd4, 0x5f, 0x3e, 0x5e, 0x37, 0x1a, 0x23, 0x6b, 0x6e, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1695 = { .name = "xdh_wei25519_1695", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1695_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1695_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1695_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 131 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1696 for XDH, tcId is 132 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1696_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, }; static const unsigned char xdh_wei25519_1696_privkey[] = { 0xd0, 0x27, 0x65, 0x66, 0x05, 0xb1, 0x0b, 0xf1, 0x8d, 0xea, 0x28, 0xbc, 0x52, 0x54, 0x6f, 0x9f, 0x1f, 0x08, 0xce, 0xf0, 0x6c, 0xaf, 0xd2, 0x00, 0xfc, 0x84, 0xf8, 0x7d, 0xbb, 0x4e, 0xbe, 0x46, }; static const unsigned char xdh_wei25519_1696_sharedsecret[] = { 0x1a, 0xdb, 0xe3, 0x22, 0x07, 0xe2, 0x1f, 0x71, 0xe1, 0xaf, 0x53, 0x88, 0x4d, 0x2a, 0x22, 0x76, 0x48, 0x1e, 0x29, 0x8e, 0x55, 0x7f, 0x4d, 0xac, 0xb3, 0x72, 0x0f, 0x24, 0x58, 0xe3, 0x08, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1696 = { .name = "xdh_wei25519_1696", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1696_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1696_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1696_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 132 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1697 for XDH, tcId is 133 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1697_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, }; static const unsigned char xdh_wei25519_1697_privkey[] = { 0x48, 0x67, 0xa8, 0x3e, 0xe9, 0xd0, 0x1b, 0x75, 0x10, 0x84, 0x08, 0x67, 0xdb, 0x1a, 0xf6, 0xa6, 0x04, 0x9b, 0xdb, 0xb0, 0x56, 0xb7, 0x44, 0x43, 0xf7, 0x0c, 0x35, 0x8e, 0x16, 0x2c, 0x88, 0x67, }; static const unsigned char xdh_wei25519_1697_sharedsecret[] = { 0xe1, 0x2c, 0xc5, 0x8f, 0xbe, 0xb7, 0x0a, 0x5e, 0x35, 0xc8, 0x61, 0xc3, 0x37, 0x10, 0xbe, 0x65, 0x16, 0xa6, 0xa9, 0x2e, 0x52, 0x37, 0x60, 0x60, 0x21, 0x1b, 0x24, 0x87, 0xdb, 0x54, 0x2b, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1697 = { .name = "xdh_wei25519_1697", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1697_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1697_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1697_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 133 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1698 for XDH, tcId is 134 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1698_peerpubkey[] = { 0xaf, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_1698_privkey[] = { 0xa0, 0x15, 0x97, 0x0a, 0x8a, 0xdd, 0x94, 0x0f, 0xca, 0x5b, 0x1b, 0x5d, 0x23, 0x87, 0x53, 0x97, 0xd5, 0x47, 0xd8, 0xd4, 0x94, 0xfc, 0xb3, 0x14, 0xf2, 0x04, 0x5a, 0x67, 0xa2, 0xd1, 0x2c, 0x4b, }; static const unsigned char xdh_wei25519_1698_sharedsecret[] = { 0x42, 0x1b, 0xed, 0x1b, 0x26, 0xda, 0x1e, 0x9a, 0xdb, 0xea, 0xda, 0x1f, 0x32, 0xb9, 0x1a, 0x0f, 0xb4, 0xce, 0xd0, 0xf1, 0x11, 0x0e, 0x0a, 0x4a, 0x88, 0xe7, 0x35, 0xa1, 0x9e, 0xe4, 0x57, 0x1e, }; static const wycheproof_xdh_test xdh_wei25519_1698 = { .name = "xdh_wei25519_1698", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1698_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1698_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1698_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 134 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1699 for XDH, tcId is 135 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1699_peerpubkey[] = { 0xb1, 0xa0, 0x0e, 0x4a, 0x27, 0x1b, 0xee, 0xc4, 0x78, 0xe4, 0x2f, 0xad, 0x06, 0x18, 0x43, 0x2f, 0xa7, 0xd7, 0xfb, 0x3d, 0x99, 0x00, 0x4d, 0x2b, 0x0b, 0xdf, 0xc1, 0x4f, 0x80, 0x24, 0x83, 0x2b, }; static const unsigned char xdh_wei25519_1699_privkey[] = { 0x40, 0x58, 0xcb, 0x6b, 0x9a, 0xab, 0xa0, 0x2a, 0x33, 0x8a, 0xaa, 0x39, 0x2d, 0xbc, 0x10, 0x03, 0x9e, 0x26, 0xe9, 0xe4, 0x44, 0x11, 0x7e, 0x75, 0x8e, 0x24, 0xc5, 0xd8, 0xb2, 0x32, 0xea, 0x5e, }; static const unsigned char xdh_wei25519_1699_sharedsecret[] = { 0xd7, 0xb4, 0x74, 0x63, 0xe2, 0xf4, 0xca, 0x9a, 0x1a, 0x7d, 0xee, 0xa0, 0x98, 0xda, 0x8e, 0x74, 0xac, 0x3b, 0x4a, 0x10, 0x90, 0x83, 0xd9, 0x97, 0x25, 0x9b, 0x12, 0x99, 0x2e, 0x7e, 0x7e, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1699 = { .name = "xdh_wei25519_1699", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1699_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1699_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1699_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 135 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1700 for XDH, tcId is 136 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1700_peerpubkey[] = { 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, }; static const unsigned char xdh_wei25519_1700_privkey[] = { 0xb8, 0x76, 0xb0, 0x5d, 0xaf, 0xf0, 0x53, 0x0b, 0x13, 0x9d, 0x9e, 0x11, 0x25, 0x05, 0x63, 0x41, 0x80, 0x77, 0x17, 0x82, 0x46, 0xc5, 0xfa, 0x70, 0x05, 0xba, 0x00, 0xe9, 0xb6, 0x64, 0x77, 0x63, }; static const unsigned char xdh_wei25519_1700_sharedsecret[] = { 0x68, 0x6e, 0xb9, 0x10, 0xa9, 0x37, 0x21, 0x1b, 0x91, 0x47, 0xc8, 0xa0, 0x51, 0xa1, 0x19, 0x79, 0x06, 0x81, 0x8f, 0xdc, 0x62, 0x66, 0x68, 0xeb, 0x5f, 0x5d, 0x39, 0x4a, 0xfd, 0x86, 0xd4, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1700 = { .name = "xdh_wei25519_1700", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1700_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1700_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1700_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 136 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1701 for XDH, tcId is 137 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1701_peerpubkey[] = { 0x22, 0x23, 0x1c, 0x64, 0xef, 0x73, 0xad, 0x62, 0x31, 0x8b, 0x8a, 0x87, 0xbc, 0x38, 0xe2, 0x72, 0xe1, 0xbb, 0x8b, 0xf1, 0xa6, 0x0d, 0x7c, 0x00, 0x47, 0x6d, 0x0b, 0x05, 0x9d, 0x7b, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_1701_privkey[] = { 0xd8, 0x7f, 0xd6, 0xaa, 0x5d, 0x8d, 0xee, 0xf6, 0xde, 0xe9, 0x61, 0x9a, 0x56, 0x84, 0x6a, 0x08, 0x29, 0x62, 0x05, 0x90, 0xf2, 0xda, 0x40, 0x83, 0x5d, 0x8e, 0x25, 0x15, 0x97, 0xe3, 0x90, 0x78, }; static const unsigned char xdh_wei25519_1701_sharedsecret[] = { 0x09, 0x55, 0x97, 0x33, 0xb3, 0x5b, 0xcc, 0x6b, 0xb8, 0xac, 0x57, 0x4b, 0x5a, 0xbe, 0x3a, 0x4d, 0x88, 0x41, 0xde, 0xff, 0x05, 0x1c, 0x29, 0x4a, 0x07, 0x48, 0x7e, 0x3e, 0xec, 0x3c, 0x55, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1701 = { .name = "xdh_wei25519_1701", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1701_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1701_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1701_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 137 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1702 for XDH, tcId is 138 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1702_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1702_privkey[] = { 0x90, 0x03, 0x63, 0x21, 0xb6, 0x37, 0x51, 0xf7, 0x62, 0x2a, 0xa9, 0x3d, 0xa3, 0x4d, 0x85, 0xe5, 0x9c, 0xe8, 0x10, 0x09, 0xac, 0x5b, 0x9a, 0x06, 0x89, 0x21, 0xd8, 0x3b, 0xc4, 0x71, 0x5b, 0x57, }; static const unsigned char xdh_wei25519_1702_sharedsecret[] = { 0xf7, 0xd5, 0xcb, 0xcf, 0x39, 0xeb, 0x72, 0x2b, 0x01, 0xed, 0x20, 0xc8, 0x55, 0x63, 0xeb, 0xb8, 0x1d, 0x07, 0x65, 0x11, 0xae, 0xad, 0x4c, 0xcc, 0x42, 0x90, 0x27, 0x86, 0x6b, 0x9f, 0xd2, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1702 = { .name = "xdh_wei25519_1702", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1702_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1702_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1702_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 138 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1703 for XDH, tcId is 139 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1703_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1703_privkey[] = { 0xa0, 0x67, 0x81, 0xfd, 0x4c, 0x4a, 0x08, 0x74, 0xe0, 0x0e, 0x72, 0xba, 0x13, 0x1b, 0x9d, 0xd8, 0x7a, 0x83, 0xb2, 0x90, 0x4e, 0x29, 0x4d, 0xe1, 0x76, 0xe8, 0xa9, 0xaf, 0x1f, 0x69, 0x5d, 0x67, }; static const unsigned char xdh_wei25519_1703_sharedsecret[] = { 0xe9, 0x95, 0xad, 0x6a, 0x1e, 0xc6, 0xc5, 0xab, 0x32, 0x92, 0x2c, 0xff, 0x9d, 0x20, 0x47, 0x21, 0x70, 0x46, 0x73, 0x14, 0x3c, 0x4a, 0x11, 0xde, 0xaa, 0x20, 0x3f, 0x3c, 0x81, 0x98, 0x9b, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1703 = { .name = "xdh_wei25519_1703", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1703_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1703_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1703_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 139 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1704 for XDH, tcId is 140 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1704_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1704_privkey[] = { 0xb8, 0x22, 0xd7, 0x2d, 0x8b, 0x68, 0xbd, 0xb4, 0xfb, 0xf6, 0x7e, 0x56, 0xa6, 0x1d, 0x67, 0x2b, 0x2c, 0x77, 0x47, 0xe9, 0x44, 0x79, 0xfe, 0x5a, 0xe4, 0x07, 0x2d, 0x0a, 0xcc, 0xdd, 0x65, 0x71, }; static const unsigned char xdh_wei25519_1704_sharedsecret[] = { 0x32, 0xb6, 0xda, 0xbe, 0x01, 0xd1, 0x38, 0x67, 0xf3, 0xb5, 0xb0, 0x89, 0x2f, 0xef, 0xd8, 0x0d, 0xca, 0x66, 0x6f, 0x2e, 0xdc, 0x5a, 0xfb, 0x43, 0xcd, 0x0b, 0xaf, 0x70, 0x3c, 0x3e, 0x69, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1704 = { .name = "xdh_wei25519_1704", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1704_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1704_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1704_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 140 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1705 for XDH, tcId is 141 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1705_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1705_privkey[] = { 0xd0, 0x8c, 0xe1, 0x23, 0x7e, 0x24, 0x8d, 0x02, 0xcd, 0xf6, 0x19, 0xd2, 0x0b, 0xea, 0x58, 0x48, 0xad, 0xe4, 0xf6, 0xff, 0xd1, 0x71, 0xb8, 0xde, 0xe8, 0x79, 0x3f, 0xc6, 0x7c, 0x45, 0x96, 0x40, }; static const unsigned char xdh_wei25519_1705_sharedsecret[] = { 0xa9, 0x3d, 0x83, 0xfc, 0x9e, 0xa0, 0xf6, 0xcb, 0x0c, 0xc8, 0xb6, 0x31, 0xda, 0x60, 0x00, 0x19, 0xb7, 0x6c, 0xbb, 0x2e, 0xc5, 0x72, 0x22, 0xf2, 0xe4, 0x2d, 0xd5, 0x40, 0xe3, 0xda, 0x85, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1705 = { .name = "xdh_wei25519_1705", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1705_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1705_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1705_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 141 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1706 for XDH, tcId is 142 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1706_peerpubkey[] = { 0xcb, 0xdc, 0xe3, 0x9b, 0x10, 0x8c, 0x52, 0x9d, 0xce, 0x74, 0x75, 0x78, 0x43, 0xc7, 0x1d, 0x8d, 0x1e, 0x44, 0x74, 0x0e, 0x59, 0xf2, 0x83, 0xff, 0xb8, 0x92, 0xf4, 0xfa, 0x62, 0x84, 0xc3, 0x4a, }; static const unsigned char xdh_wei25519_1706_privkey[] = { 0x18, 0x0a, 0xe3, 0xc9, 0x28, 0x51, 0x4c, 0xfb, 0x9e, 0xdd, 0x06, 0xe7, 0xdc, 0x1d, 0x5d, 0x06, 0x61, 0x60, 0xe9, 0x67, 0x44, 0x5a, 0x5c, 0x58, 0xe4, 0x46, 0x3b, 0x69, 0xed, 0x20, 0x5e, 0x6d, }; static const unsigned char xdh_wei25519_1706_sharedsecret[] = { 0x01, 0x7c, 0xbf, 0xa2, 0xb3, 0x8e, 0x9e, 0xf3, 0x29, 0x7a, 0x33, 0x9e, 0xcc, 0xe1, 0xa9, 0x17, 0xbd, 0xcf, 0x7e, 0x91, 0x00, 0x36, 0x08, 0x6a, 0x41, 0xd1, 0xe2, 0x2d, 0x04, 0x24, 0x18, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1706 = { .name = "xdh_wei25519_1706", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1706_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1706_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1706_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 142 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1707 for XDH, tcId is 143 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1707_peerpubkey[] = { 0x3c, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_1707_privkey[] = { 0xe8, 0x81, 0xd8, 0x06, 0xa1, 0x10, 0x56, 0x0c, 0xd8, 0xfe, 0xe8, 0x99, 0xd5, 0x9c, 0x02, 0x49, 0xf1, 0x23, 0x3a, 0x43, 0x22, 0xc4, 0x1a, 0xa3, 0x69, 0xc7, 0xa2, 0xa9, 0x9f, 0x5b, 0x59, 0x62, }; static const unsigned char xdh_wei25519_1707_sharedsecret[] = { 0x71, 0x13, 0x39, 0x05, 0xb8, 0xa5, 0x7e, 0xa8, 0xc3, 0x8d, 0xe0, 0xec, 0xf2, 0x13, 0x69, 0x9a, 0x75, 0xb0, 0x96, 0xc2, 0xdf, 0x21, 0xf0, 0x7f, 0x7e, 0x9e, 0xb0, 0x3e, 0x9f, 0xa5, 0x3f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1707 = { .name = "xdh_wei25519_1707", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1707_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1707_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1707_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 143 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1708 for XDH, tcId is 144 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1708_peerpubkey[] = { 0x3e, 0x5f, 0xf1, 0xb5, 0xd8, 0xe4, 0x11, 0x3b, 0x87, 0x1b, 0xd0, 0x52, 0xf9, 0xe7, 0xbc, 0xd0, 0x58, 0x28, 0x04, 0xc2, 0x66, 0xff, 0xb2, 0xd4, 0xf4, 0x20, 0x3e, 0xb0, 0x7f, 0xdb, 0x7c, 0x54, }; static const unsigned char xdh_wei25519_1708_privkey[] = { 0x08, 0xe4, 0x10, 0xe1, 0xd7, 0xe8, 0xb9, 0x41, 0x12, 0x36, 0xaf, 0x4a, 0x35, 0xd6, 0xb6, 0x2a, 0x5d, 0x89, 0x31, 0x47, 0x8e, 0x4c, 0x62, 0x19, 0x7c, 0xfa, 0xfb, 0x49, 0x14, 0x67, 0xb1, 0x62, }; static const unsigned char xdh_wei25519_1708_sharedsecret[] = { 0x3d, 0xc7, 0xb7, 0x0e, 0x11, 0x07, 0x66, 0xb2, 0xbf, 0x52, 0x52, 0x52, 0xeb, 0xed, 0x98, 0xa1, 0x00, 0xb2, 0xe5, 0x32, 0xdc, 0x69, 0x54, 0x44, 0x64, 0xda, 0x1b, 0xba, 0xb8, 0x62, 0x5f, 0x6d, }; static const wycheproof_xdh_test xdh_wei25519_1708 = { .name = "xdh_wei25519_1708", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1708_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1708_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1708_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 144 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1709 for XDH, tcId is 145 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1709_peerpubkey[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1709_privkey[] = { 0xe0, 0x2f, 0xdf, 0x7e, 0x0e, 0xe3, 0xd5, 0x5b, 0x44, 0x40, 0xf0, 0x14, 0x32, 0xdd, 0x25, 0x3c, 0x94, 0x97, 0x93, 0xbc, 0x04, 0xda, 0x44, 0xdd, 0xec, 0xe8, 0x3e, 0x54, 0xc8, 0xc3, 0x9b, 0x40, }; static const unsigned char xdh_wei25519_1709_sharedsecret[] = { 0xe3, 0x17, 0xe5, 0xcc, 0x43, 0x8b, 0x5f, 0x79, 0xea, 0xd5, 0x53, 0x3a, 0xc7, 0xc4, 0x55, 0x19, 0xa1, 0x17, 0xb3, 0x10, 0x33, 0xcc, 0x21, 0x40, 0xb1, 0x9e, 0xdf, 0x85, 0x72, 0x01, 0x12, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1709 = { .name = "xdh_wei25519_1709", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1709_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1709_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1709_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 145 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1710 for XDH, tcId is 146 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1710_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_1710_privkey[] = { 0xf0, 0x5d, 0x18, 0xf6, 0x8e, 0xf7, 0xa5, 0x86, 0x5c, 0x14, 0xdb, 0x3a, 0x9c, 0x25, 0x5f, 0xdf, 0x2d, 0xab, 0xea, 0x2a, 0xa3, 0x65, 0x81, 0xe9, 0x4f, 0x68, 0xb7, 0x27, 0xb5, 0x82, 0x86, 0x7b, }; static const unsigned char xdh_wei25519_1710_sharedsecret[] = { 0xd8, 0x68, 0x10, 0x51, 0x6a, 0xed, 0xdc, 0x18, 0x06, 0x10, 0x36, 0xf5, 0x99, 0xa9, 0xeb, 0x84, 0xd1, 0xc6, 0x14, 0x6b, 0x0f, 0x54, 0x36, 0x52, 0xdd, 0x45, 0x26, 0x74, 0x3b, 0xa4, 0x2c, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1710 = { .name = "xdh_wei25519_1710", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1710_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1710_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1710_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 146 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1711 for XDH, tcId is 147 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1711_peerpubkey[] = { 0x95, 0xaf, 0xf8, 0x5a, 0x6c, 0xf2, 0x88, 0x9d, 0xc3, 0x0d, 0x68, 0xa9, 0xfc, 0x73, 0x5e, 0x68, 0x2c, 0x14, 0x02, 0x61, 0xb3, 0x7f, 0x59, 0x6a, 0x7a, 0x10, 0x1f, 0xd8, 0xbf, 0x6d, 0x3e, 0x6a, }; static const unsigned char xdh_wei25519_1711_privkey[] = { 0x00, 0xc1, 0x03, 0x57, 0x8d, 0x5c, 0x07, 0x9d, 0x7b, 0xcc, 0x22, 0xc1, 0xc3, 0x1e, 0x78, 0x7c, 0x1b, 0x15, 0xc5, 0x7f, 0xcb, 0x49, 0x3f, 0xda, 0xfe, 0xfa, 0x20, 0x37, 0x1c, 0xfc, 0x74, 0x6b, }; static const unsigned char xdh_wei25519_1711_sharedsecret[] = { 0xdf, 0xa9, 0x88, 0xa4, 0x77, 0x00, 0x3b, 0xe1, 0x25, 0xb9, 0x5c, 0xcb, 0xf2, 0x22, 0x3d, 0x97, 0x72, 0x95, 0x77, 0xd2, 0x5e, 0x1d, 0x6e, 0x89, 0xe3, 0xda, 0x0a, 0xfa, 0xbd, 0xd0, 0xae, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_1711 = { .name = "xdh_wei25519_1711", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1711_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1711_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1711_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 147 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1712 for XDH, tcId is 148 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1712_peerpubkey[] = { 0x43, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_1712_privkey[] = { 0x70, 0x05, 0xbb, 0x92, 0x74, 0x85, 0xc4, 0x35, 0x64, 0x2b, 0x42, 0x4a, 0x3d, 0xde, 0x01, 0x4b, 0xcf, 0x76, 0x34, 0x5e, 0x5b, 0xe6, 0x4a, 0xe6, 0xe9, 0xb2, 0x4d, 0xb3, 0x9e, 0x1c, 0xdb, 0x51, }; static const unsigned char xdh_wei25519_1712_sharedsecret[] = { 0xd4, 0x50, 0xaf, 0x45, 0xb8, 0xed, 0x5f, 0xe1, 0x40, 0xcc, 0x52, 0x63, 0xff, 0xb7, 0xb5, 0x2e, 0x66, 0x73, 0x68, 0x99, 0xa8, 0xb8, 0x72, 0xb6, 0xe2, 0x85, 0x52, 0x12, 0x98, 0x19, 0xb2, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1712 = { .name = "xdh_wei25519_1712", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1712_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1712_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1712_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 148 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1713 for XDH, tcId is 149 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1713_peerpubkey[] = { 0x45, 0x46, 0x38, 0xc8, 0xde, 0xe7, 0x5a, 0xc5, 0x62, 0x16, 0x15, 0x0f, 0x79, 0x71, 0xc4, 0xe5, 0xc2, 0x77, 0x17, 0xe3, 0x4d, 0x1b, 0xf8, 0x00, 0x8e, 0xda, 0x16, 0x0a, 0x3a, 0xf7, 0x78, 0x6a, }; static const unsigned char xdh_wei25519_1713_privkey[] = { 0x08, 0x22, 0x03, 0x9a, 0x5d, 0xc1, 0x3c, 0x40, 0xfc, 0xcc, 0xf3, 0x46, 0xe2, 0xa7, 0x76, 0x9b, 0x4f, 0xd2, 0x72, 0x05, 0x2d, 0x43, 0x26, 0x0a, 0xd6, 0x26, 0x46, 0x8a, 0x50, 0xd4, 0x41, 0x62, }; static const unsigned char xdh_wei25519_1713_sharedsecret[] = { 0x58, 0x00, 0x2c, 0x89, 0xbf, 0x8b, 0xc3, 0x2a, 0xe6, 0xfc, 0x20, 0x5b, 0x79, 0x6a, 0xcd, 0x13, 0xef, 0x7f, 0x84, 0x76, 0xf6, 0x49, 0x2a, 0xe4, 0xb2, 0xbe, 0x47, 0xf1, 0x09, 0x5e, 0x8a, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1713 = { .name = "xdh_wei25519_1713", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1713_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1713_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1713_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 149 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1714 for XDH, tcId is 150 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1714_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1714_privkey[] = { 0x40, 0xa6, 0x34, 0x9c, 0x03, 0xf0, 0xdc, 0x0a, 0x42, 0x35, 0x8f, 0x63, 0x53, 0xca, 0x67, 0x63, 0x2a, 0xf6, 0x87, 0xb1, 0x4c, 0x9d, 0xff, 0x62, 0x6c, 0x54, 0xe2, 0x11, 0xe8, 0xfc, 0x35, 0x5a, }; static const unsigned char xdh_wei25519_1714_sharedsecret[] = { 0x77, 0x73, 0xaa, 0xd6, 0xe7, 0x2e, 0xb1, 0x73, 0x5b, 0x65, 0xad, 0x51, 0xf7, 0xda, 0xd2, 0x58, 0xc1, 0x1d, 0x7b, 0xff, 0xf5, 0x30, 0x94, 0x42, 0x4c, 0xb1, 0x03, 0xcd, 0x6b, 0xfb, 0x43, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1714 = { .name = "xdh_wei25519_1714", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1714_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1714_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1714_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 150 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1715 for XDH, tcId is 151 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1715_peerpubkey[] = { 0xee, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1715_privkey[] = { 0x50, 0x69, 0x6d, 0x4d, 0x05, 0x20, 0x99, 0x71, 0xd6, 0xba, 0x06, 0x76, 0xea, 0x27, 0x42, 0x62, 0xba, 0x63, 0x9a, 0xac, 0x74, 0xfa, 0x75, 0xe5, 0xdf, 0x45, 0x70, 0x76, 0x8a, 0xd8, 0xae, 0x74, }; static const unsigned char xdh_wei25519_1715_sharedsecret[] = { 0xc1, 0x18, 0xdd, 0xf6, 0x46, 0x2f, 0xbe, 0xa8, 0x0f, 0x14, 0xef, 0x1f, 0x29, 0x72, 0xa1, 0xab, 0x12, 0xca, 0xfa, 0x51, 0x1d, 0x13, 0x23, 0xd4, 0xd2, 0x2d, 0x0d, 0x42, 0x6d, 0x65, 0x1b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1715 = { .name = "xdh_wei25519_1715", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1715_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1715_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1715_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 151 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1716 for XDH, tcId is 152 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1716_peerpubkey[] = { 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1716_privkey[] = { 0x68, 0xbb, 0x68, 0x0c, 0x85, 0x3f, 0x4e, 0x4d, 0xaa, 0x47, 0xc5, 0x86, 0xdc, 0x88, 0x6c, 0xf4, 0x56, 0x8d, 0x7b, 0x03, 0x83, 0x77, 0x0f, 0x6d, 0xf4, 0x39, 0xa5, 0x3b, 0xe4, 0xa3, 0x23, 0x6d, }; static const unsigned char xdh_wei25519_1716_sharedsecret[] = { 0xcc, 0x07, 0x75, 0xbf, 0xd9, 0x70, 0xa2, 0x70, 0x6b, 0x11, 0xc7, 0x22, 0x2a, 0x44, 0x36, 0xa3, 0xd1, 0x71, 0x60, 0x38, 0x2c, 0x83, 0xb7, 0x6f, 0x89, 0xb6, 0x61, 0x92, 0xc8, 0x1b, 0x44, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1716 = { .name = "xdh_wei25519_1716", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1716_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1716_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1716_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 152 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1717 for XDH, tcId is 153 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1717_peerpubkey[] = { 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1717_privkey[] = { 0xb0, 0xf6, 0xc2, 0x8d, 0xbd, 0xc6, 0x47, 0x06, 0x8a, 0x76, 0xd7, 0x18, 0x05, 0xef, 0x77, 0x0f, 0x08, 0x7c, 0xf7, 0x6b, 0x82, 0xaf, 0xdc, 0x0d, 0x26, 0xc4, 0x5b, 0x71, 0xac, 0xe4, 0x97, 0x68, }; static const unsigned char xdh_wei25519_1717_sharedsecret[] = { 0xf0, 0x09, 0x7f, 0xa0, 0xba, 0x70, 0xd0, 0x19, 0x12, 0x62, 0x77, 0xab, 0x15, 0xc5, 0x6e, 0xcc, 0x17, 0x0c, 0xa8, 0x81, 0x80, 0xb2, 0xbf, 0x9d, 0x80, 0xfc, 0xda, 0x3d, 0x7d, 0x74, 0x55, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1717 = { .name = "xdh_wei25519_1717", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1717_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1717_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1717_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case public key, tcId is 153 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1718 for XDH, tcId is 154 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1718_peerpubkey[] = { 0xec, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei25519_1718_privkey[] = { 0x18, 0x63, 0x0f, 0x93, 0x59, 0x86, 0x37, 0xc3, 0x5d, 0xa6, 0x23, 0xa7, 0x45, 0x59, 0xcf, 0x94, 0x43, 0x74, 0xa5, 0x59, 0x11, 0x4c, 0x79, 0x37, 0x81, 0x10, 0x41, 0xfc, 0x86, 0x05, 0x56, 0x4a, }; static const unsigned char xdh_wei25519_1718_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1718 = { .name = "xdh_wei25519_1718", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1718_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1718_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1718_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case public key, tcId is 154 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1719 for XDH, tcId is 155 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1719_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei25519_1719_privkey[] = { 0x58, 0x1e, 0xcb, 0xda, 0x5a, 0x4a, 0x22, 0x80, 0x44, 0xfe, 0xfd, 0x6e, 0x03, 0xdf, 0x23, 0x45, 0x58, 0xc3, 0xc7, 0x91, 0x52, 0xc6, 0xe2, 0xc5, 0xe6, 0x0b, 0x14, 0x2c, 0x4f, 0x26, 0xa8, 0x51, }; static const unsigned char xdh_wei25519_1719_sharedsecret[] = { 0x59, 0xe7, 0xb1, 0xe6, 0xf4, 0x70, 0x65, 0xa4, 0x8b, 0xd3, 0x49, 0x13, 0xd9, 0x10, 0x17, 0x6b, 0x67, 0x92, 0xa1, 0x37, 0x2a, 0xad, 0x22, 0xe7, 0x3c, 0xd7, 0xdf, 0x45, 0xfc, 0xf9, 0x1a, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1719 = { .name = "xdh_wei25519_1719", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1719_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1719_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1719_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 155 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1720 for XDH, tcId is 156 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1720_peerpubkey[] = { 0x77, 0xaf, 0x0d, 0x38, 0x97, 0xa7, 0x15, 0xdf, 0xe2, 0x5d, 0xf5, 0xd5, 0x38, 0xcf, 0x13, 0x3b, 0xc9, 0xab, 0x7a, 0xd5, 0x2d, 0xf6, 0xbd, 0x92, 0x2a, 0x2f, 0xb7, 0x56, 0x21, 0xd5, 0x99, 0x01, }; static const unsigned char xdh_wei25519_1720_privkey[] = { 0xb0, 0x56, 0x1a, 0x38, 0x00, 0x07, 0x95, 0xb7, 0xcb, 0x53, 0x7b, 0x55, 0xe9, 0x75, 0xea, 0x45, 0x2c, 0x21, 0x18, 0x50, 0x62, 0x95, 0xd5, 0xeb, 0x15, 0xfd, 0x9c, 0x83, 0xb6, 0x7f, 0x7a, 0x50, }; static const unsigned char xdh_wei25519_1720_sharedsecret[] = { 0x17, 0x9f, 0x6b, 0x02, 0x07, 0x48, 0xac, 0xba, 0x34, 0x91, 0x33, 0xea, 0xa4, 0x51, 0x8f, 0x1b, 0xd8, 0xba, 0xb7, 0xbf, 0xc4, 0xfb, 0x05, 0xfd, 0x4c, 0x24, 0xe7, 0x55, 0x3d, 0xa1, 0xe9, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1720 = { .name = "xdh_wei25519_1720", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1720_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1720_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1720_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 156 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1721 for XDH, tcId is 157 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1721_peerpubkey[] = { 0x4e, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x0e, }; static const unsigned char xdh_wei25519_1721_privkey[] = { 0xb0, 0x0f, 0x7d, 0xf2, 0xd4, 0x71, 0x28, 0x44, 0x1c, 0x72, 0x70, 0xb9, 0xa8, 0x7e, 0xee, 0x45, 0xb6, 0x05, 0x6f, 0xc6, 0x42, 0x36, 0xa5, 0x7b, 0xdf, 0x81, 0xdb, 0xcc, 0xcf, 0x5f, 0x5d, 0x42, }; static const unsigned char xdh_wei25519_1721_sharedsecret[] = { 0x43, 0xc5, 0xee, 0x14, 0x51, 0xf2, 0x13, 0xef, 0x76, 0x24, 0x72, 0x9e, 0x59, 0x5a, 0x0f, 0xee, 0x7c, 0x9a, 0xf7, 0xee, 0x5d, 0x27, 0xeb, 0x03, 0x27, 0x8e, 0xe9, 0xf9, 0x4c, 0x20, 0x23, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1721 = { .name = "xdh_wei25519_1721", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1721_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1721_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1721_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 157 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1722 for XDH, tcId is 158 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1722_peerpubkey[] = { 0xad, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x11, }; static const unsigned char xdh_wei25519_1722_privkey[] = { 0xc8, 0xf7, 0xa0, 0xc0, 0xbf, 0xb1, 0xe9, 0xc7, 0x25, 0x76, 0xc5, 0x34, 0xf8, 0x68, 0x54, 0xfb, 0xe4, 0xaf, 0x52, 0x1d, 0x4f, 0xa8, 0x07, 0xf6, 0x7e, 0x24, 0x40, 0xe1, 0x00, 0xec, 0x88, 0x52, }; static const unsigned char xdh_wei25519_1722_sharedsecret[] = { 0x2f, 0x35, 0x0b, 0xcf, 0x0b, 0x40, 0x78, 0x4d, 0x1d, 0x75, 0x6c, 0x9c, 0xa3, 0xe3, 0x8e, 0xc9, 0xdd, 0x68, 0xba, 0x80, 0xfa, 0xf1, 0xf9, 0x84, 0x7d, 0xe5, 0x07, 0x79, 0xc0, 0xd4, 0x90, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1722 = { .name = "xdh_wei25519_1722", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1722_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1722_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1722_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 158 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1723 for XDH, tcId is 159 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1723_peerpubkey[] = { 0x77, 0x0f, 0x42, 0x18, 0xef, 0x23, 0x4f, 0x5e, 0x18, 0x54, 0x66, 0xe3, 0x24, 0x42, 0xc3, 0x02, 0xbb, 0xec, 0x21, 0xbb, 0xb6, 0xcd, 0x28, 0xc9, 0x79, 0xe7, 0x83, 0xfe, 0x50, 0x13, 0x33, 0x3f, }; static const unsigned char xdh_wei25519_1723_privkey[] = { 0x58, 0x18, 0x1f, 0x58, 0x1a, 0xa3, 0x70, 0x22, 0xff, 0x71, 0xc5, 0x6c, 0x6e, 0x68, 0xe6, 0x17, 0x5d, 0x96, 0x7c, 0x5c, 0x99, 0x5a, 0x24, 0x98, 0x85, 0xf6, 0x65, 0x65, 0x07, 0x4d, 0xed, 0x4d, }; static const unsigned char xdh_wei25519_1723_sharedsecret[] = { 0xd5, 0xd6, 0x50, 0xdc, 0x62, 0x10, 0x72, 0xec, 0xa9, 0x52, 0xe4, 0x34, 0x4e, 0xfc, 0x73, 0x20, 0xb2, 0xb1, 0x45, 0x9a, 0xba, 0x48, 0xf5, 0xe2, 0x48, 0x0d, 0xb8, 0x81, 0xc5, 0x0c, 0xc6, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1723 = { .name = "xdh_wei25519_1723", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1723_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1723_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1723_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 159 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1724 for XDH, tcId is 160 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1724_peerpubkey[] = { 0x5c, 0x61, 0x18, 0xc4, 0xc7, 0x4c, 0xfb, 0x84, 0x2d, 0x9a, 0x87, 0x44, 0x9f, 0x9d, 0x8d, 0xb8, 0xb9, 0x92, 0xd4, 0x6c, 0x5a, 0x90, 0x93, 0xce, 0x2f, 0xcb, 0x7a, 0x49, 0xb5, 0x35, 0xc4, 0x51, }; static const unsigned char xdh_wei25519_1724_privkey[] = { 0x30, 0x1c, 0x93, 0x5c, 0xae, 0x43, 0x57, 0x07, 0x0b, 0x0a, 0xda, 0xf9, 0xcd, 0x61, 0x92, 0x83, 0x0b, 0x2c, 0x98, 0x9c, 0x15, 0x37, 0x29, 0xee, 0xd9, 0x9f, 0x58, 0x9e, 0xb4, 0x5f, 0x88, 0x4b, }; static const unsigned char xdh_wei25519_1724_sharedsecret[] = { 0x90, 0x9c, 0xc5, 0x72, 0x75, 0xd5, 0x4f, 0x20, 0xc6, 0x7b, 0x45, 0xf9, 0xaf, 0x94, 0x84, 0xfd, 0x67, 0x58, 0x1a, 0xfb, 0x7d, 0x88, 0x7b, 0xee, 0x1d, 0xb5, 0x46, 0x1f, 0x30, 0x3e, 0xf2, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1724 = { .name = "xdh_wei25519_1724", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1724_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1724_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1724_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 160 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1725 for XDH, tcId is 161 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1725_peerpubkey[] = { 0x40, 0x39, 0x86, 0x61, 0x27, 0xb6, 0xa1, 0x2a, 0x54, 0x91, 0x4e, 0x10, 0x6a, 0xab, 0x86, 0x46, 0x4a, 0xf5, 0x56, 0x31, 0xf3, 0xcb, 0x61, 0x76, 0x6d, 0x59, 0x99, 0xaa, 0x8d, 0x2e, 0x07, 0x6e, }; static const unsigned char xdh_wei25519_1725_privkey[] = { 0xd0, 0x02, 0x29, 0x2d, 0x43, 0x59, 0xa3, 0xd4, 0x2b, 0xc8, 0x76, 0x7f, 0x13, 0x80, 0x00, 0x93, 0x32, 0xe7, 0xa0, 0xdf, 0x2f, 0x33, 0x79, 0x01, 0x1a, 0xb7, 0x8f, 0x78, 0x9f, 0x6b, 0xaa, 0x54, }; static const unsigned char xdh_wei25519_1725_sharedsecret[] = { 0x4a, 0x7e, 0x2c, 0x5c, 0xaf, 0x1d, 0x81, 0x80, 0xeb, 0x1c, 0x4f, 0x22, 0x69, 0x2f, 0x29, 0xa1, 0x4b, 0x4c, 0xdc, 0x9b, 0x19, 0x3b, 0xd1, 0xd1, 0x6e, 0x2f, 0x27, 0x43, 0x8e, 0xef, 0x14, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_1725 = { .name = "xdh_wei25519_1725", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1725_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1725_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1725_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 161 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1726 for XDH, tcId is 162 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1726_peerpubkey[] = { 0x07, 0x8f, 0xa5, 0x23, 0x49, 0x8f, 0xb5, 0x1c, 0xba, 0x11, 0x12, 0xd8, 0x3b, 0x20, 0xaf, 0x44, 0x8b, 0x80, 0x09, 0xd8, 0xee, 0xa1, 0x43, 0x68, 0x56, 0x4d, 0x01, 0xb8, 0xf9, 0xb6, 0x08, 0x6f, }; static const unsigned char xdh_wei25519_1726_privkey[] = { 0xd0, 0xc2, 0xc4, 0x9e, 0x64, 0x4a, 0xb7, 0x38, 0x27, 0x07, 0x07, 0xff, 0x99, 0x17, 0x06, 0x59, 0x42, 0x68, 0x7e, 0x2f, 0x12, 0x88, 0x6d, 0x96, 0x11, 0x61, 0xdb, 0x46, 0xc0, 0x5b, 0x56, 0x5f, }; static const unsigned char xdh_wei25519_1726_sharedsecret[] = { 0xc0, 0xee, 0x59, 0xd3, 0x68, 0x5f, 0xc2, 0xc3, 0xc8, 0x03, 0x60, 0x8b, 0x5e, 0xe3, 0x9a, 0x7f, 0x8d, 0xa3, 0x0b, 0x48, 0xe4, 0x29, 0x3a, 0xe0, 0x11, 0xf0, 0xea, 0x1e, 0x5a, 0xeb, 0x71, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1726 = { .name = "xdh_wei25519_1726", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1726_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1726_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1726_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 162 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1727 for XDH, tcId is 163 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1727_peerpubkey[] = { 0x9f, 0xc6, 0x79, 0x9e, 0xd8, 0x49, 0x5e, 0xd5, 0xab, 0x6e, 0xb1, 0xef, 0x95, 0x54, 0x79, 0xb9, 0xb5, 0x0a, 0xa9, 0xce, 0x0c, 0x34, 0x9e, 0x89, 0x92, 0xa6, 0x66, 0x55, 0x72, 0xd1, 0xf8, 0x71, }; static const unsigned char xdh_wei25519_1727_privkey[] = { 0xf0, 0x87, 0xd3, 0x8b, 0x27, 0x4c, 0x1d, 0xad, 0x1b, 0xce, 0x6e, 0xaa, 0x36, 0xb4, 0x8e, 0x21, 0x90, 0xb9, 0x0b, 0x9b, 0xf8, 0xca, 0x59, 0x66, 0x9c, 0xc5, 0xe0, 0x04, 0x64, 0x53, 0x43, 0x42, }; static const unsigned char xdh_wei25519_1727_sharedsecret[] = { 0xb2, 0x52, 0xbc, 0x8e, 0xab, 0xfa, 0xa6, 0x8c, 0x56, 0xe5, 0x4d, 0x61, 0xb9, 0x90, 0x61, 0xa3, 0x5d, 0x11, 0xe3, 0xa7, 0xb9, 0xbd, 0xa4, 0x17, 0xd9, 0x0f, 0x69, 0xb1, 0x11, 0x9b, 0xcf, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_1727 = { .name = "xdh_wei25519_1727", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1727_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1727_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1727_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 163 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1728 for XDH, tcId is 164 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1728_peerpubkey[] = { 0x76, 0x50, 0xf2, 0xc7, 0x68, 0x58, 0xea, 0x20, 0x1d, 0xa2, 0x02, 0x2a, 0xc7, 0x30, 0xec, 0xc4, 0x36, 0x54, 0x85, 0x2a, 0xd2, 0x09, 0x42, 0x6d, 0xd5, 0xd0, 0x48, 0xa9, 0xde, 0x2a, 0x66, 0x7e, }; static const unsigned char xdh_wei25519_1728_privkey[] = { 0x48, 0xdb, 0xcc, 0x5a, 0x69, 0x5f, 0x15, 0x14, 0xbb, 0xba, 0xa6, 0xad, 0x00, 0x84, 0x2b, 0x69, 0xd9, 0xae, 0x52, 0x16, 0xb1, 0x96, 0x3a, 0xdd, 0x07, 0xfb, 0x29, 0x47, 0xc9, 0x7b, 0x84, 0x47, }; static const unsigned char xdh_wei25519_1728_sharedsecret[] = { 0xfb, 0xda, 0x33, 0xbc, 0x93, 0x0c, 0x08, 0xdf, 0x83, 0x72, 0x08, 0xe1, 0x9a, 0xfd, 0xc1, 0xcf, 0xe3, 0xfd, 0x0f, 0x8f, 0x0e, 0x39, 0x76, 0xbe, 0x34, 0x77, 0x5e, 0x58, 0xa4, 0xa7, 0x77, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_1728 = { .name = "xdh_wei25519_1728", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1728_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1728_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1728_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 164 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1729 for XDH, tcId is 165 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1729_peerpubkey[] = { 0xe0, 0xeb, 0x7a, 0x7c, 0x3b, 0x41, 0xb8, 0xae, 0x16, 0x56, 0xe3, 0xfa, 0xf1, 0x9f, 0xc4, 0x6a, 0xda, 0x09, 0x8d, 0xeb, 0x9c, 0x32, 0xb1, 0xfd, 0x86, 0x62, 0x05, 0x16, 0x5f, 0x49, 0xb8, 0x00, }; static const unsigned char xdh_wei25519_1729_privkey[] = { 0x58, 0x91, 0xc9, 0x27, 0x2c, 0xf9, 0xa1, 0x97, 0x73, 0x5b, 0x70, 0x1e, 0x57, 0x15, 0x26, 0x8d, 0x36, 0xd7, 0x43, 0x6b, 0x7e, 0x35, 0x1a, 0x3e, 0x99, 0x7a, 0x08, 0x62, 0xe4, 0x80, 0x7d, 0x4d, }; static const unsigned char xdh_wei25519_1729_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1729 = { .name = "xdh_wei25519_1729", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1729_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1729_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1729_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 165 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1730 for XDH, tcId is 166 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1730_peerpubkey[] = { 0x5f, 0x9c, 0x95, 0xbc, 0xa3, 0x50, 0x8c, 0x24, 0xb1, 0xd0, 0xb1, 0x55, 0x9c, 0x83, 0xef, 0x5b, 0x04, 0x44, 0x5c, 0xc4, 0x58, 0x1c, 0x8e, 0x86, 0xd8, 0x22, 0x4e, 0xdd, 0xd0, 0x9f, 0x11, 0x57, }; static const unsigned char xdh_wei25519_1730_privkey[] = { 0xc0, 0xf9, 0xc6, 0x0a, 0xea, 0x73, 0x73, 0x1d, 0x92, 0xab, 0x5e, 0xd9, 0xf4, 0xce, 0xa1, 0x22, 0xf9, 0xa6, 0xeb, 0x25, 0x77, 0xbd, 0xa7, 0x2f, 0x94, 0x94, 0x8f, 0xea, 0x4d, 0x4c, 0xc6, 0x5d, }; static const unsigned char xdh_wei25519_1730_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1730 = { .name = "xdh_wei25519_1730", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1730_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1730_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1730_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "D = 0 in multiplication by 2, tcId is 166 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1731 for XDH, tcId is 167 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1731_peerpubkey[] = { 0xb0, 0x22, 0x4e, 0x71, 0x34, 0xcf, 0x92, 0xd4, 0x0a, 0x31, 0x51, 0x5f, 0x2f, 0x0e, 0x89, 0xc2, 0xa2, 0x77, 0x7e, 0x8a, 0xc2, 0xfe, 0x74, 0x1d, 0xb0, 0xdc, 0x39, 0x39, 0x9f, 0xdf, 0x27, 0x02, }; static const unsigned char xdh_wei25519_1731_privkey[] = { 0x00, 0x66, 0xdd, 0x76, 0x74, 0xfe, 0x51, 0xf9, 0x32, 0x6c, 0x1e, 0x23, 0x9b, 0x87, 0x5f, 0x8a, 0xc0, 0x70, 0x1a, 0xae, 0x69, 0xa8, 0x04, 0xc2, 0x5f, 0xe4, 0x35, 0x95, 0xe8, 0x66, 0x0b, 0x45, }; static const unsigned char xdh_wei25519_1731_sharedsecret[] = { 0x8d, 0xac, 0xfe, 0x7b, 0xea, 0xaa, 0x62, 0xb9, 0x4b, 0xf6, 0xe5, 0x0e, 0xe5, 0x21, 0x4d, 0x99, 0xad, 0x7c, 0xda, 0x5a, 0x43, 0x1e, 0xa0, 0xc6, 0x2f, 0x2b, 0x20, 0xa8, 0x9d, 0x73, 0xc6, 0x2e, }; static const wycheproof_xdh_test xdh_wei25519_1731 = { .name = "xdh_wei25519_1731", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1731_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1731_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1731_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 167 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1732 for XDH, tcId is 168 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1732_peerpubkey[] = { 0x60, 0x1e, 0x3f, 0xeb, 0xb8, 0x48, 0xec, 0x3e, 0x57, 0xfc, 0xe6, 0x45, 0x88, 0xaa, 0xd8, 0x2a, 0xfc, 0x9c, 0x2a, 0xf9, 0x9b, 0xbc, 0xdf, 0xfc, 0xc4, 0xcd, 0x58, 0xd4, 0xb3, 0xd1, 0x5c, 0x07, }; static const unsigned char xdh_wei25519_1732_privkey[] = { 0x80, 0x06, 0x7f, 0x30, 0xf4, 0x0d, 0x61, 0x31, 0x8b, 0x42, 0x0c, 0x85, 0x9f, 0xce, 0x12, 0x8c, 0x90, 0x17, 0xab, 0x81, 0xb4, 0x7b, 0x76, 0x02, 0x8a, 0x57, 0xbc, 0x30, 0xd5, 0x85, 0x68, 0x46, }; static const unsigned char xdh_wei25519_1732_sharedsecret[] = { 0x20, 0xf1, 0xd3, 0xfe, 0x90, 0xe0, 0x8b, 0xc6, 0xf1, 0x52, 0xbf, 0x5d, 0xac, 0xc3, 0xed, 0x35, 0x89, 0x97, 0x85, 0x33, 0x3f, 0x14, 0x70, 0xe6, 0xa6, 0x2c, 0x3b, 0x8c, 0xbe, 0x28, 0xd2, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1732 = { .name = "xdh_wei25519_1732", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1732_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1732_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1732_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 168 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1733 for XDH, tcId is 169 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1733_peerpubkey[] = { 0x82, 0xa3, 0x80, 0x7b, 0xbd, 0xec, 0x2f, 0xa9, 0x93, 0x8f, 0xb4, 0x14, 0x1e, 0x27, 0xdc, 0x57, 0x45, 0x66, 0x06, 0x30, 0x1f, 0x78, 0xff, 0x71, 0x33, 0xcf, 0x24, 0xf3, 0xd1, 0x3e, 0xe1, 0x17, }; static const unsigned char xdh_wei25519_1733_privkey[] = { 0x58, 0x45, 0x77, 0x66, 0x9d, 0x21, 0xce, 0x0a, 0xe3, 0xe3, 0x0b, 0x02, 0xc9, 0x78, 0x3f, 0xfe, 0x97, 0x70, 0x9c, 0xbf, 0xe3, 0x96, 0x88, 0x9a, 0xa3, 0x1e, 0x8e, 0xe4, 0x33, 0x52, 0xdc, 0x52, }; static const unsigned char xdh_wei25519_1733_sharedsecret[] = { 0x2b, 0x28, 0xcc, 0x51, 0x40, 0xb8, 0x16, 0xad, 0xd5, 0xad, 0x3a, 0x77, 0xa8, 0x1b, 0x1c, 0x07, 0x3d, 0x67, 0xbf, 0x51, 0xbf, 0x95, 0xbd, 0xa2, 0x06, 0x4a, 0x14, 0xeb, 0x12, 0xd5, 0xf7, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1733 = { .name = "xdh_wei25519_1733", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1733_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1733_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1733_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 169 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1734 for XDH, tcId is 170 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1734_peerpubkey[] = { 0xf3, 0x29, 0xab, 0x23, 0x76, 0x46, 0x2e, 0x5f, 0x31, 0x28, 0xa2, 0x68, 0x20, 0x86, 0x25, 0x3c, 0x19, 0x22, 0x2a, 0xc1, 0xe2, 0xbc, 0xa4, 0x56, 0x92, 0xf0, 0xc3, 0xb5, 0x28, 0xf4, 0xc4, 0x28, }; static const unsigned char xdh_wei25519_1734_privkey[] = { 0x18, 0xe5, 0x97, 0xa4, 0xe2, 0xcc, 0xdb, 0x5e, 0x80, 0x52, 0xd5, 0x7c, 0x90, 0x09, 0x93, 0x8c, 0x2d, 0x4c, 0x43, 0xd6, 0xd8, 0xc9, 0xf9, 0x3c, 0x98, 0x72, 0x7b, 0x73, 0x11, 0x03, 0x59, 0x53, }; static const unsigned char xdh_wei25519_1734_sharedsecret[] = { 0x83, 0x92, 0x16, 0x00, 0x83, 0xb9, 0xaf, 0x9e, 0x0e, 0xf4, 0x4f, 0xcf, 0xce, 0x53, 0xba, 0x8f, 0xf7, 0x28, 0x2e, 0xe7, 0xa6, 0xc7, 0x1a, 0xb6, 0x6f, 0x88, 0x43, 0xa5, 0x5d, 0x09, 0xcd, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1734 = { .name = "xdh_wei25519_1734", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1734_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1734_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1734_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 170 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1735 for XDH, tcId is 171 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1735_peerpubkey[] = { 0x4f, 0xce, 0x3b, 0xb6, 0xc8, 0xaa, 0xf0, 0x22, 0xdb, 0xd1, 0x00, 0xe3, 0xcd, 0xe3, 0x94, 0x1b, 0x37, 0xd5, 0x43, 0xf0, 0x04, 0x01, 0xdb, 0xa7, 0xda, 0x9b, 0xc1, 0x43, 0xdf, 0xc5, 0x57, 0x09, }; static const unsigned char xdh_wei25519_1735_privkey[] = { 0x88, 0x28, 0x1c, 0xc5, 0x1d, 0x55, 0x12, 0xd8, 0x81, 0x4e, 0xa5, 0x24, 0x9b, 0x87, 0x9d, 0xcb, 0xad, 0x03, 0x23, 0xd3, 0x85, 0x12, 0xda, 0xfb, 0xdc, 0x7b, 0xa8, 0x5b, 0xba, 0x8c, 0x8d, 0x5d, }; static const unsigned char xdh_wei25519_1735_sharedsecret[] = { 0x42, 0x18, 0x4e, 0x22, 0xc5, 0x35, 0x53, 0x0c, 0x45, 0x7b, 0xd3, 0xb4, 0xf1, 0x08, 0x4c, 0xbf, 0x5e, 0x29, 0x7f, 0x50, 0x2f, 0xe1, 0x36, 0xb8, 0xd1, 0xda, 0xec, 0xf5, 0x33, 0x4c, 0xc9, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1735 = { .name = "xdh_wei25519_1735", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1735_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1735_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1735_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 171 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1736 for XDH, tcId is 172 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1736_peerpubkey[] = { 0x15, 0xc6, 0x88, 0x51, 0xc1, 0xdb, 0x84, 0x4b, 0x5a, 0x1e, 0xf3, 0x45, 0x6a, 0x65, 0x9f, 0x18, 0x88, 0x54, 0xb1, 0xa7, 0x5f, 0xbd, 0xb2, 0xf6, 0x8f, 0x51, 0x4c, 0x92, 0x89, 0xce, 0x71, 0x1f, }; static const unsigned char xdh_wei25519_1736_privkey[] = { 0xd0, 0xe7, 0x95, 0x45, 0x0d, 0xf0, 0xa8, 0x13, 0xc6, 0x57, 0x34, 0x96, 0xec, 0x57, 0x93, 0xca, 0x02, 0xe1, 0xbd, 0xba, 0xd1, 0x0e, 0xd0, 0x8d, 0xf8, 0x3f, 0xda, 0xed, 0x68, 0xb3, 0x38, 0x5f, }; static const unsigned char xdh_wei25519_1736_sharedsecret[] = { 0xf6, 0x54, 0xd7, 0x8e, 0x59, 0x45, 0xb2, 0x4b, 0xc6, 0x3e, 0x3e, 0x6d, 0x79, 0x0e, 0x0a, 0xe9, 0x86, 0xe5, 0x39, 0x37, 0x76, 0x40, 0x68, 0xb1, 0xbc, 0xe9, 0x20, 0xe1, 0xd7, 0x9b, 0x75, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1736 = { .name = "xdh_wei25519_1736", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1736_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1736_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1736_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 172 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1737 for XDH, tcId is 173 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1737_peerpubkey[] = { 0x42, 0x00, 0xa2, 0x42, 0x43, 0x43, 0x37, 0xb8, 0x91, 0x4f, 0x49, 0x34, 0x53, 0x01, 0xed, 0x78, 0x2b, 0x13, 0x59, 0x4f, 0x9e, 0xde, 0x08, 0x9c, 0x41, 0xfb, 0x1e, 0x7e, 0xa8, 0x2c, 0x90, 0x53, }; static const unsigned char xdh_wei25519_1737_privkey[] = { 0x30, 0xb6, 0x9a, 0x1c, 0xc1, 0xeb, 0x2d, 0x0b, 0x83, 0xea, 0x21, 0x38, 0x46, 0xe9, 0x0a, 0x2c, 0x92, 0x20, 0x88, 0xbd, 0xf2, 0x94, 0xa6, 0x99, 0x5b, 0xf6, 0xe6, 0xe7, 0x7c, 0x64, 0x6c, 0x41, }; static const unsigned char xdh_wei25519_1737_sharedsecret[] = { 0xcd, 0x8a, 0x09, 0xb0, 0x47, 0x95, 0xed, 0xcc, 0x70, 0x61, 0x86, 0x73, 0x73, 0x98, 0x1a, 0xa7, 0x48, 0x65, 0x1e, 0xbd, 0xce, 0x5e, 0xc2, 0x18, 0xa3, 0x35, 0xb8, 0x78, 0xce, 0xfe, 0x48, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1737 = { .name = "xdh_wei25519_1737", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1737_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1737_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1737_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 173 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1738 for XDH, tcId is 174 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1738_peerpubkey[] = { 0xba, 0xab, 0xf0, 0x17, 0x4a, 0xaa, 0xea, 0x4d, 0xe4, 0x8c, 0xc8, 0x3a, 0xdf, 0xb0, 0x40, 0x14, 0x61, 0xa7, 0x41, 0x90, 0x3e, 0xa6, 0xfb, 0x13, 0x0d, 0x7d, 0x64, 0xb7, 0xbf, 0x03, 0xa9, 0x66, }; static const unsigned char xdh_wei25519_1738_privkey[] = { 0x78, 0xb3, 0x0b, 0xb6, 0x3c, 0xd8, 0xad, 0xe7, 0x1b, 0x7a, 0x77, 0xd4, 0x26, 0xf4, 0x41, 0x9d, 0x05, 0xf1, 0x99, 0xff, 0xef, 0x34, 0x9e, 0x89, 0xfa, 0xa9, 0xd9, 0xa5, 0xf2, 0x1f, 0x66, 0x54, }; static const unsigned char xdh_wei25519_1738_sharedsecret[] = { 0xc9, 0xf8, 0x25, 0x8f, 0x23, 0x7d, 0xb1, 0xc8, 0x07, 0x02, 0xc5, 0xc4, 0xd9, 0x04, 0x8d, 0xfb, 0xa9, 0xdf, 0xe2, 0x59, 0xda, 0x4a, 0xee, 0xe9, 0x0d, 0xc2, 0x94, 0x55, 0x26, 0x96, 0x12, 0x75, }; static const wycheproof_xdh_test xdh_wei25519_1738 = { .name = "xdh_wei25519_1738", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1738_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1738_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1738_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 174 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1739 for XDH, tcId is 175 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1739_peerpubkey[] = { 0xf1, 0x2f, 0x18, 0xbd, 0x59, 0xc1, 0x26, 0x34, 0x8f, 0x6a, 0x7a, 0x9f, 0x4a, 0x5f, 0xdd, 0x9f, 0xca, 0xf5, 0x81, 0x34, 0x50, 0x73, 0xa8, 0x51, 0xfb, 0xa0, 0x98, 0xe5, 0xd6, 0x4b, 0x4a, 0x0c, }; static const unsigned char xdh_wei25519_1739_privkey[] = { 0xc0, 0xb3, 0x86, 0xf4, 0xef, 0x0d, 0x46, 0x98, 0x68, 0x64, 0x04, 0x97, 0x7e, 0x7b, 0x60, 0xcb, 0x6c, 0x1f, 0x8b, 0x60, 0x12, 0xa2, 0x2e, 0x29, 0xd6, 0x22, 0x4c, 0x59, 0x47, 0x43, 0x90, 0x41, }; static const unsigned char xdh_wei25519_1739_sharedsecret[] = { 0x66, 0x00, 0xcb, 0xe9, 0x00, 0x61, 0x6a, 0x77, 0x0a, 0x12, 0x6b, 0x8b, 0x19, 0x15, 0x6d, 0x5e, 0x27, 0xe1, 0x17, 0x4b, 0xd5, 0x38, 0xd0, 0x94, 0x4e, 0xb3, 0xc0, 0xbe, 0x48, 0x99, 0xc7, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1739 = { .name = "xdh_wei25519_1739", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1739_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1739_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1739_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 175 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1740 for XDH, tcId is 176 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1740_peerpubkey[] = { 0xbe, 0xe3, 0x86, 0x52, 0x7b, 0x77, 0x24, 0x90, 0xae, 0xb9, 0x6f, 0xc4, 0xd2, 0x3b, 0x93, 0x04, 0x03, 0x7c, 0xb4, 0x43, 0x0f, 0x64, 0xb2, 0x28, 0xf3, 0xd8, 0xb3, 0xb4, 0x98, 0x31, 0x9f, 0x22, }; static const unsigned char xdh_wei25519_1740_privkey[] = { 0x98, 0x86, 0x60, 0x2e, 0x71, 0x9b, 0xac, 0xaf, 0xea, 0x09, 0x2b, 0xb7, 0x5b, 0x51, 0xae, 0x72, 0x58, 0xab, 0xe1, 0xa3, 0x64, 0xc1, 0x76, 0x85, 0x7f, 0x3d, 0xc1, 0x88, 0xc0, 0x3e, 0x67, 0x59, }; static const unsigned char xdh_wei25519_1740_sharedsecret[] = { 0x3f, 0xe7, 0x10, 0xd6, 0x34, 0x4f, 0xf0, 0xcb, 0x34, 0x2e, 0x52, 0x34, 0x9e, 0x1c, 0x5b, 0x57, 0xb7, 0xa2, 0x71, 0xf2, 0xa1, 0x33, 0xbb, 0x52, 0x49, 0xbb, 0xe4, 0x0d, 0xc8, 0x6e, 0x1b, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1740 = { .name = "xdh_wei25519_1740", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1740_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1740_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1740_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 176 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1741 for XDH, tcId is 177 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1741_peerpubkey[] = { 0xcf, 0x91, 0x1a, 0xc9, 0x1b, 0x0d, 0x94, 0x40, 0x49, 0xce, 0xc6, 0x6a, 0xe5, 0xef, 0x0c, 0x45, 0x49, 0xd1, 0xe6, 0x12, 0xe1, 0x07, 0xc6, 0x8e, 0x87, 0x26, 0x3a, 0x2f, 0xbc, 0xf8, 0x32, 0x3f, }; static const unsigned char xdh_wei25519_1741_privkey[] = { 0xb8, 0x39, 0x60, 0xf5, 0xd0, 0x61, 0x3c, 0xda, 0xac, 0x6d, 0xda, 0x69, 0x03, 0x51, 0x66, 0x6e, 0x9f, 0x27, 0x7b, 0xba, 0x6b, 0xd4, 0x06, 0xb0, 0xe2, 0x7a, 0x18, 0x86, 0xbb, 0x2d, 0x3e, 0x46, }; static const unsigned char xdh_wei25519_1741_sharedsecret[] = { 0x71, 0x37, 0x3e, 0xbe, 0x67, 0xf3, 0x9a, 0x2c, 0x23, 0x00, 0x27, 0xc7, 0xdb, 0x4b, 0x3b, 0x74, 0xba, 0xb8, 0x0e, 0xd2, 0x12, 0xb2, 0x32, 0x67, 0x97, 0x85, 0xee, 0x10, 0xf4, 0x7c, 0x30, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1741 = { .name = "xdh_wei25519_1741", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1741_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1741_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1741_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 177 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1742 for XDH, tcId is 178 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1742_peerpubkey[] = { 0x1e, 0x6e, 0xe5, 0x36, 0xe4, 0xf2, 0x6b, 0xbf, 0xb6, 0x31, 0x39, 0x95, 0x1a, 0x10, 0xf3, 0xba, 0xb6, 0x2e, 0x19, 0xed, 0x1e, 0xf8, 0x39, 0x71, 0x78, 0xd9, 0xc5, 0xd0, 0x43, 0x07, 0xcd, 0x40, }; static const unsigned char xdh_wei25519_1742_privkey[] = { 0xd0, 0x3b, 0x75, 0xf0, 0x9a, 0xc8, 0x07, 0xdf, 0xd2, 0xee, 0x35, 0x2c, 0x04, 0xa1, 0xf2, 0x59, 0x84, 0x72, 0x0f, 0x78, 0x5f, 0xfa, 0xa0, 0xaf, 0x88, 0xbc, 0x5d, 0xb6, 0xff, 0x9c, 0x34, 0x53, }; static const unsigned char xdh_wei25519_1742_sharedsecret[] = { 0x23, 0x8e, 0xef, 0x43, 0xc5, 0x89, 0x82, 0x2e, 0x1d, 0x3d, 0xe4, 0x1c, 0x1c, 0xc4, 0x6d, 0xcf, 0xec, 0x7a, 0x93, 0xfe, 0xbf, 0x37, 0xc8, 0x54, 0x6b, 0x66, 0x25, 0xe1, 0xa1, 0x23, 0x81, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_1742 = { .name = "xdh_wei25519_1742", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1742_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1742_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1742_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 178 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1743 for XDH, tcId is 179 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1743_peerpubkey[] = { 0x2f, 0x1c, 0x79, 0xad, 0x84, 0x88, 0xdb, 0x6f, 0x51, 0x46, 0x90, 0x3b, 0x2d, 0xc4, 0x6c, 0xfb, 0xfc, 0x83, 0x4b, 0xbc, 0xf0, 0x9b, 0x4d, 0xd7, 0x0c, 0x27, 0x4c, 0x4b, 0x67, 0xce, 0x60, 0x5d, }; static const unsigned char xdh_wei25519_1743_privkey[] = { 0xd0, 0x36, 0x94, 0x8c, 0x0e, 0xc2, 0x23, 0xf0, 0xee, 0x57, 0x7e, 0x39, 0x0d, 0xbf, 0x87, 0x22, 0x23, 0x58, 0xed, 0x19, 0x9f, 0x28, 0x23, 0x34, 0x5a, 0xd1, 0x54, 0xbb, 0xc4, 0xcb, 0xcc, 0x47, }; static const unsigned char xdh_wei25519_1743_sharedsecret[] = { 0x87, 0xa7, 0x9c, 0x9c, 0x23, 0x1d, 0x3b, 0x95, 0x26, 0xb4, 0x9b, 0xf3, 0xd6, 0x83, 0xbf, 0x38, 0xc3, 0xc3, 0x19, 0xaf, 0x7c, 0x7c, 0x5d, 0x14, 0x56, 0x48, 0x73, 0x98, 0xda, 0x53, 0x50, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_1743 = { .name = "xdh_wei25519_1743", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1743_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1743_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1743_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 179 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1744 for XDH, tcId is 180 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1744_peerpubkey[] = { 0xfc, 0xcf, 0xe7, 0x42, 0xa6, 0x3e, 0xd9, 0xcb, 0x70, 0x95, 0x85, 0x60, 0xb5, 0xa0, 0x22, 0x60, 0x35, 0x0a, 0x7e, 0xcb, 0xaf, 0x8c, 0x57, 0xae, 0x04, 0x5f, 0x67, 0x1a, 0x29, 0xb4, 0xb5, 0x73, }; static const unsigned char xdh_wei25519_1744_privkey[] = { 0xd0, 0x54, 0xde, 0xd6, 0x13, 0xfe, 0xbf, 0x29, 0x50, 0xac, 0x5c, 0x92, 0x7f, 0xcb, 0x12, 0x0c, 0x38, 0x7d, 0xe0, 0xba, 0x61, 0xb3, 0x31, 0xcd, 0x33, 0x02, 0x4c, 0x8b, 0x6e, 0x73, 0x70, 0x48, }; static const unsigned char xdh_wei25519_1744_sharedsecret[] = { 0xd6, 0x83, 0xca, 0x61, 0x94, 0x45, 0x2d, 0x87, 0x8c, 0x12, 0xd7, 0xda, 0x35, 0xf2, 0x28, 0x33, 0xf9, 0x97, 0x28, 0xbb, 0xa8, 0x99, 0x31, 0xa5, 0x12, 0x74, 0xf6, 0x12, 0x10, 0x33, 0x6a, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1744 = { .name = "xdh_wei25519_1744", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1744_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1744_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1744_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 180 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1745 for XDH, tcId is 181 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1745_peerpubkey[] = { 0xcb, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_1745_privkey[] = { 0xe8, 0x2c, 0x48, 0x06, 0x31, 0xfb, 0x15, 0x3b, 0xa2, 0x21, 0x1f, 0xe6, 0x03, 0x03, 0x2b, 0x3e, 0x71, 0xb1, 0x62, 0xdb, 0xd3, 0xc1, 0x1b, 0xec, 0x03, 0x20, 0x8f, 0xfc, 0xd5, 0x10, 0x65, 0x5f, }; static const unsigned char xdh_wei25519_1745_sharedsecret[] = { 0xdb, 0xf6, 0x20, 0x35, 0x16, 0x63, 0x58, 0x40, 0xcf, 0x69, 0xa0, 0x2d, 0xb8, 0x7c, 0xf0, 0xd9, 0x5d, 0xae, 0x31, 0x5d, 0xa7, 0xfc, 0x1e, 0xc7, 0xce, 0x2b, 0x29, 0xe1, 0xf2, 0xdb, 0x66, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1745 = { .name = "xdh_wei25519_1745", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1745_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1745_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1745_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 181 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1746 for XDH, tcId is 182 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1746_peerpubkey[] = { 0x10, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_1746_privkey[] = { 0xc0, 0xc0, 0x1d, 0x28, 0xc1, 0xca, 0xb0, 0x1f, 0x59, 0x70, 0x0a, 0xca, 0x5f, 0x18, 0xd2, 0x69, 0x76, 0x58, 0xb3, 0x7f, 0xdd, 0x54, 0xa3, 0x39, 0xff, 0x39, 0x1c, 0x0a, 0x1a, 0x1b, 0x16, 0x45, }; static const unsigned char xdh_wei25519_1746_sharedsecret[] = { 0x1f, 0xe3, 0x14, 0x74, 0x43, 0x90, 0xd5, 0x25, 0x27, 0x8b, 0x1f, 0x5f, 0xbf, 0x10, 0x81, 0x01, 0xb8, 0xde, 0xd5, 0x87, 0x08, 0x13, 0x75, 0xed, 0x4a, 0xc4, 0xac, 0x69, 0x0d, 0x92, 0x41, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1746 = { .name = "xdh_wei25519_1746", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1746_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1746_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1746_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 182 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1747 for XDH, tcId is 183 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1747_peerpubkey[] = { 0xdc, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_1747_privkey[] = { 0xc8, 0x2b, 0xde, 0x72, 0xdf, 0x36, 0x47, 0x96, 0x88, 0xc4, 0x85, 0xa8, 0xbf, 0x44, 0x2f, 0x4a, 0x34, 0x41, 0x2e, 0x42, 0x9c, 0x02, 0xdb, 0x97, 0x70, 0x4f, 0x03, 0xda, 0xf4, 0xdf, 0xd5, 0x42, }; static const unsigned char xdh_wei25519_1747_sharedsecret[] = { 0xad, 0x45, 0x43, 0x95, 0xee, 0x39, 0x2b, 0xe6, 0x77, 0xbe, 0x7b, 0x9c, 0xb9, 0x14, 0x03, 0x8d, 0x57, 0xd2, 0xd8, 0x7e, 0xc5, 0x6c, 0xc9, 0x86, 0x78, 0xdd, 0x84, 0xf1, 0x99, 0x20, 0x91, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1747 = { .name = "xdh_wei25519_1747", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1747_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1747_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1747_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 183 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1748 for XDH, tcId is 184 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1748_peerpubkey[] = { 0x21, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_1748_privkey[] = { 0x50, 0x3f, 0x69, 0x76, 0x17, 0xfb, 0x02, 0xa7, 0xb8, 0xef, 0x00, 0xba, 0x34, 0xe7, 0xfc, 0x8c, 0xe9, 0x3f, 0x9e, 0xc3, 0xe1, 0xcb, 0xfe, 0x4b, 0xf2, 0xc0, 0x5b, 0xce, 0xe0, 0xcb, 0x97, 0x57, }; static const unsigned char xdh_wei25519_1748_sharedsecret[] = { 0xc6, 0xd6, 0x49, 0x92, 0x55, 0x13, 0x33, 0x98, 0xf9, 0xdd, 0x7f, 0x32, 0x52, 0x5d, 0xb9, 0x77, 0xa5, 0x38, 0x11, 0x88, 0x00, 0xbf, 0xaf, 0x3a, 0xad, 0x8b, 0xcd, 0x26, 0xf0, 0x2c, 0x38, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1748 = { .name = "xdh_wei25519_1748", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1748_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1748_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1748_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 2, tcId is 184 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1749 for XDH, tcId is 185 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1749_peerpubkey[] = { 0xcc, 0x3d, 0x4a, 0x90, 0xf8, 0x6b, 0x30, 0x11, 0xda, 0x33, 0x69, 0xd9, 0x98, 0x85, 0x97, 0xc7, 0xff, 0xf1, 0x49, 0x92, 0x73, 0xb4, 0xa0, 0x4f, 0x84, 0xd0, 0xe2, 0x6e, 0xd1, 0x68, 0x3c, 0x0d, }; static const unsigned char xdh_wei25519_1749_privkey[] = { 0x58, 0xcd, 0x4c, 0xa1, 0xe4, 0x33, 0x11, 0x88, 0xde, 0x2b, 0x28, 0x89, 0x41, 0x9c, 0xe2, 0x0e, 0xc5, 0xef, 0x88, 0xa0, 0xe9, 0x3a, 0xf0, 0x92, 0x09, 0x90, 0x65, 0x55, 0x1b, 0x90, 0x4e, 0x41, }; static const unsigned char xdh_wei25519_1749_sharedsecret[] = { 0x0d, 0x74, 0x21, 0x4d, 0xa1, 0x34, 0x4b, 0x11, 0x1d, 0x59, 0xdf, 0xad, 0x37, 0x13, 0xeb, 0x56, 0xef, 0xfe, 0x7c, 0x56, 0x0c, 0x59, 0xcb, 0xbb, 0x99, 0xec, 0x31, 0x39, 0x62, 0xdb, 0xba, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_1749 = { .name = "xdh_wei25519_1749", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1749_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1749_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1749_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 185 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1750 for XDH, tcId is 186 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1750_peerpubkey[] = { 0x11, 0x1e, 0x13, 0xf7, 0xbc, 0x05, 0x70, 0xfa, 0x26, 0x38, 0xca, 0xa2, 0x0a, 0x67, 0xc6, 0xe0, 0xc2, 0x1d, 0xab, 0x13, 0x2f, 0x4b, 0x45, 0x61, 0x91, 0x59, 0x02, 0x64, 0xc4, 0x93, 0xd0, 0x18, }; static const unsigned char xdh_wei25519_1750_privkey[] = { 0x00, 0x4e, 0xa3, 0x44, 0x8b, 0x84, 0xca, 0x50, 0x9e, 0xfe, 0xc5, 0xfc, 0xc2, 0x4c, 0x63, 0xee, 0x98, 0x4d, 0xef, 0x63, 0xb2, 0x9d, 0xeb, 0x90, 0x37, 0x89, 0x47, 0x09, 0x70, 0x9c, 0x09, 0x57, }; static const unsigned char xdh_wei25519_1750_sharedsecret[] = { 0x7b, 0x9d, 0xbf, 0x8d, 0x6c, 0x6d, 0x65, 0x89, 0x8b, 0x51, 0x81, 0x67, 0xbf, 0x40, 0x11, 0xd5, 0x4d, 0xdc, 0x26, 0x5d, 0x95, 0x3c, 0x07, 0x43, 0xd7, 0x86, 0x8e, 0x22, 0xd9, 0x90, 0x9e, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1750 = { .name = "xdh_wei25519_1750", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1750_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1750_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1750_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 186 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1751 for XDH, tcId is 187 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1751_peerpubkey[] = { 0xdd, 0xe1, 0xec, 0x08, 0x43, 0xfa, 0x8f, 0x05, 0xd9, 0xc7, 0x35, 0x5d, 0xf5, 0x98, 0x39, 0x1f, 0x3d, 0xe2, 0x54, 0xec, 0xd0, 0xb4, 0xba, 0x9e, 0x6e, 0xa6, 0xfd, 0x9b, 0x3b, 0x6c, 0x2f, 0x67, }; static const unsigned char xdh_wei25519_1751_privkey[] = { 0xc8, 0xa6, 0xeb, 0x00, 0xa4, 0xd7, 0x4b, 0xbd, 0xff, 0x23, 0x95, 0x22, 0xc3, 0xc8, 0x91, 0xed, 0x7c, 0xe1, 0x90, 0x4b, 0xe2, 0xa3, 0x29, 0xcd, 0x0a, 0xe0, 0x06, 0x1a, 0x25, 0x3c, 0x95, 0x42, }; static const unsigned char xdh_wei25519_1751_sharedsecret[] = { 0xfb, 0x0e, 0x02, 0x09, 0xc5, 0xb9, 0xd5, 0x1b, 0x40, 0x11, 0x83, 0xd7, 0xe5, 0x6a, 0x59, 0x08, 0x1d, 0x37, 0xa6, 0x2a, 0xb1, 0xe0, 0x57, 0x53, 0xa0, 0x66, 0x7e, 0xeb, 0xd3, 0x77, 0xfd, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1751 = { .name = "xdh_wei25519_1751", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1751_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1751_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1751_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 187 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1752 for XDH, tcId is 188 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1752_peerpubkey[] = { 0x22, 0xc2, 0xb5, 0x6f, 0x07, 0x94, 0xcf, 0xee, 0x25, 0xcc, 0x96, 0x26, 0x67, 0x7a, 0x68, 0x38, 0x00, 0x0e, 0xb6, 0x6d, 0x8c, 0x4b, 0x5f, 0xb0, 0x7b, 0x2f, 0x1d, 0x91, 0x2e, 0x97, 0xc3, 0x72, }; static const unsigned char xdh_wei25519_1752_privkey[] = { 0x50, 0x32, 0x2f, 0xf0, 0xd0, 0xdc, 0xdd, 0x6b, 0x14, 0xf3, 0x07, 0xc0, 0x4d, 0xfe, 0xce, 0xfe, 0x5b, 0x7c, 0xde, 0xaf, 0x92, 0xbf, 0xfb, 0x91, 0x9e, 0x9d, 0x62, 0xed, 0x27, 0x07, 0x90, 0x40, }; static const unsigned char xdh_wei25519_1752_sharedsecret[] = { 0xdb, 0xe7, 0xa1, 0xfe, 0x3b, 0x33, 0x7c, 0x97, 0x20, 0x12, 0x3e, 0x6f, 0xcc, 0x02, 0xcf, 0x96, 0x95, 0x3a, 0x17, 0xdc, 0x9b, 0x39, 0x5a, 0x22, 0x06, 0xcb, 0x1b, 0xf9, 0x1d, 0x41, 0x75, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1752 = { .name = "xdh_wei25519_1752", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1752_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1752_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1752_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 2, tcId is 188 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1753 for XDH, tcId is 189 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1753_peerpubkey[] = { 0xe5, 0x8b, 0xac, 0xce, 0xde, 0x32, 0xbc, 0xf3, 0x3b, 0x3b, 0x6e, 0x3d, 0x69, 0xc0, 0x2a, 0xf8, 0x28, 0x4a, 0x96, 0x31, 0xde, 0x74, 0xb6, 0xaf, 0x3f, 0x04, 0x6a, 0x93, 0x69, 0xdf, 0x04, 0x0f, }; static const unsigned char xdh_wei25519_1753_privkey[] = { 0xe0, 0x32, 0x8c, 0x7d, 0x18, 0x8d, 0x98, 0xfa, 0xf2, 0xac, 0x72, 0xd7, 0x28, 0xb7, 0xd1, 0x4f, 0x2b, 0xbb, 0xd7, 0xa9, 0x4d, 0x0f, 0xbd, 0x8e, 0x8f, 0x79, 0xab, 0xe0, 0xb1, 0xfe, 0x10, 0x55, }; static const unsigned char xdh_wei25519_1753_sharedsecret[] = { 0x97, 0xbd, 0x42, 0x09, 0x3e, 0x0d, 0x48, 0xf9, 0x73, 0xf0, 0x59, 0xdd, 0x7a, 0xb9, 0xf9, 0x7d, 0x13, 0xd5, 0xb0, 0xd5, 0xee, 0xdf, 0xfd, 0xf6, 0xda, 0x3c, 0x3c, 0x43, 0x28, 0x72, 0xc5, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1753 = { .name = "xdh_wei25519_1753", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1753_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1753_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1753_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 189 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1754 for XDH, tcId is 190 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1754_peerpubkey[] = { 0xc6, 0xd5, 0xc6, 0x93, 0xfc, 0x0a, 0x4e, 0x2d, 0xf6, 0xb2, 0x90, 0x02, 0x68, 0x60, 0x56, 0x6a, 0x16, 0x6b, 0x6d, 0x7a, 0xeb, 0xe3, 0xc9, 0x88, 0x28, 0xd4, 0x92, 0x74, 0x5c, 0x8d, 0xf9, 0x36, }; static const unsigned char xdh_wei25519_1754_privkey[] = { 0x50, 0x17, 0x67, 0x9a, 0x17, 0xbd, 0x23, 0xad, 0xf9, 0x5a, 0xd4, 0x7e, 0x31, 0x0f, 0xc6, 0x52, 0x6f, 0x4b, 0xa9, 0xca, 0x3b, 0x08, 0x39, 0xb5, 0x3b, 0xd0, 0xd9, 0x28, 0x39, 0xeb, 0x5b, 0x4f, }; static const unsigned char xdh_wei25519_1754_sharedsecret[] = { 0x99, 0xbc, 0xbc, 0x7b, 0x9a, 0xa5, 0xe2, 0x55, 0x80, 0xf9, 0x2b, 0xf5, 0x89, 0xe9, 0x5d, 0xae, 0x87, 0x4b, 0x83, 0xe4, 0x20, 0x22, 0x5d, 0x8a, 0x93, 0xe1, 0x8e, 0x96, 0xda, 0xc0, 0x0b, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1754 = { .name = "xdh_wei25519_1754", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1754_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1754_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1754_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 190 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1755 for XDH, tcId is 191 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1755_peerpubkey[] = { 0xd1, 0x5f, 0x4b, 0xf2, 0xef, 0x5c, 0x7b, 0xda, 0x4e, 0xe9, 0x51, 0x96, 0xf3, 0xc0, 0xdf, 0x71, 0x0d, 0xf5, 0xd3, 0xd2, 0x06, 0x36, 0x0f, 0xc3, 0x17, 0x4e, 0xa7, 0x5c, 0x3a, 0xa3, 0xa7, 0x43, }; static const unsigned char xdh_wei25519_1755_privkey[] = { 0x28, 0x64, 0xaa, 0xf6, 0x1c, 0x14, 0x6d, 0xf0, 0x6c, 0xc2, 0x56, 0xb0, 0x65, 0xf6, 0x6b, 0x34, 0x98, 0x5c, 0xc0, 0x15, 0xda, 0x5b, 0x1d, 0x64, 0x7a, 0x6e, 0xd4, 0xe2, 0xc7, 0x6b, 0xfc, 0x43, }; static const unsigned char xdh_wei25519_1755_sharedsecret[] = { 0xaf, 0xa2, 0xad, 0xb5, 0x2a, 0x67, 0x0a, 0xa9, 0xc3, 0xec, 0x30, 0x20, 0xd5, 0xfd, 0xa2, 0x85, 0x47, 0x4e, 0xde, 0x5c, 0x4f, 0x4c, 0x30, 0xe9, 0x23, 0x8b, 0x88, 0x4a, 0x77, 0x96, 0x94, 0x43, }; static const wycheproof_xdh_test xdh_wei25519_1755 = { .name = "xdh_wei25519_1755", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1755_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1755_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1755_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 191 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1756 for XDH, tcId is 192 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1756_peerpubkey[] = { 0x6d, 0xff, 0xb0, 0xa2, 0x58, 0x88, 0xbf, 0x23, 0xcf, 0x1a, 0xc7, 0x01, 0xbf, 0xbd, 0xed, 0xe8, 0xa1, 0x8e, 0x32, 0x3b, 0x9d, 0x4d, 0x3d, 0x31, 0xe5, 0x16, 0xa0, 0x5f, 0xce, 0x7c, 0xe8, 0x72, }; static const unsigned char xdh_wei25519_1756_privkey[] = { 0x18, 0x4a, 0x6c, 0xfb, 0xab, 0xcb, 0xd1, 0x50, 0x7a, 0x2e, 0xa4, 0x1f, 0x52, 0x79, 0x65, 0x83, 0xdb, 0xdb, 0x85, 0x1b, 0x88, 0xa8, 0x57, 0x81, 0xee, 0x8e, 0x3c, 0x28, 0x78, 0x2c, 0x33, 0x49, }; static const unsigned char xdh_wei25519_1756_sharedsecret[] = { 0xe6, 0xa2, 0xfc, 0x8e, 0xd9, 0x3c, 0xe3, 0x53, 0x01, 0x78, 0xfe, 0xf9, 0x4b, 0xb0, 0x05, 0x6f, 0x43, 0x11, 0x8e, 0x5b, 0xe3, 0xa6, 0xea, 0xbe, 0xe7, 0xd2, 0xed, 0x38, 0x4a, 0x73, 0x80, 0x0c, }; static const wycheproof_xdh_test xdh_wei25519_1756 = { .name = "xdh_wei25519_1756", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1756_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1756_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1756_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 192 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1757 for XDH, tcId is 193 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1757_peerpubkey[] = { 0x21, 0xf8, 0x6d, 0x12, 0x3c, 0x92, 0x3a, 0x92, 0xaa, 0xf2, 0x56, 0x3d, 0xf9, 0x4b, 0x5b, 0x5c, 0x93, 0x87, 0x4f, 0x5b, 0x7a, 0xb9, 0x95, 0x4a, 0xaa, 0x53, 0xe3, 0xd7, 0x2f, 0x0f, 0xf6, 0x7e, }; static const unsigned char xdh_wei25519_1757_privkey[] = { 0xc8, 0x5f, 0x95, 0x4b, 0x85, 0xbc, 0x10, 0x2a, 0xca, 0x79, 0x96, 0x71, 0x79, 0x34, 0x52, 0x17, 0x65, 0x38, 0xd0, 0x77, 0x86, 0x2e, 0xe4, 0x5e, 0x0b, 0x25, 0x36, 0x19, 0x76, 0x7d, 0xff, 0x42, }; static const unsigned char xdh_wei25519_1757_sharedsecret[] = { 0x7f, 0xc2, 0x87, 0x81, 0x63, 0x14, 0x10, 0xc5, 0xa6, 0xf2, 0x5c, 0x9c, 0xfd, 0x91, 0xec, 0x0a, 0x84, 0x8a, 0xdb, 0x7a, 0x9e, 0xb4, 0x0b, 0xc5, 0xb4, 0x95, 0xd0, 0xf4, 0x75, 0x3f, 0x22, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1757 = { .name = "xdh_wei25519_1757", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1757_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1757_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1757_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 193 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1758 for XDH, tcId is 194 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1758_peerpubkey[] = { 0x58, 0x7c, 0x34, 0x7c, 0x8c, 0xb2, 0x49, 0x56, 0x4a, 0xb7, 0x73, 0x83, 0xde, 0x35, 0x8c, 0xc2, 0xa1, 0x9f, 0xe7, 0x37, 0x0a, 0x84, 0x76, 0xd4, 0x30, 0x91, 0x12, 0x35, 0x98, 0x94, 0x1c, 0x7f, }; static const unsigned char xdh_wei25519_1758_privkey[] = { 0x50, 0xe3, 0xe5, 0xa9, 0xa1, 0x9b, 0xe2, 0xee, 0x35, 0x48, 0xb0, 0x96, 0x46, 0x72, 0xfb, 0x5e, 0x31, 0x34, 0xcb, 0x0d, 0x2f, 0x7a, 0xdf, 0x00, 0x0e, 0x45, 0x56, 0xd0, 0xff, 0xa3, 0x76, 0x43, }; static const unsigned char xdh_wei25519_1758_sharedsecret[] = { 0x31, 0x4d, 0x8a, 0x2b, 0x5c, 0x76, 0xcc, 0x7e, 0xe1, 0x21, 0x7d, 0xf2, 0x28, 0x3b, 0x7e, 0x67, 0x24, 0x43, 0x6e, 0x27, 0x3a, 0xeb, 0x80, 0x62, 0x8d, 0xce, 0x06, 0x00, 0xab, 0x47, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1758 = { .name = "xdh_wei25519_1758", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1758_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1758_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1758_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 194 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1759 for XDH, tcId is 195 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1759_peerpubkey[] = { 0xf5, 0xc6, 0x31, 0x1a, 0x1d, 0xd1, 0xb9, 0xe0, 0xf8, 0xcf, 0xd0, 0x34, 0xac, 0x6d, 0x01, 0xbf, 0x28, 0xd9, 0xd0, 0xf9, 0x62, 0xa1, 0x93, 0x4a, 0xe2, 0xcb, 0x97, 0xcb, 0x17, 0x3d, 0xd8, 0x10, }; static const unsigned char xdh_wei25519_1759_privkey[] = { 0x08, 0xec, 0xe5, 0x80, 0xbb, 0x6d, 0xdf, 0x96, 0x55, 0x9b, 0x81, 0xd7, 0xa9, 0x7d, 0xd4, 0x53, 0x1d, 0xef, 0x6c, 0xc7, 0x8d, 0x44, 0x8a, 0x70, 0xce, 0xba, 0xbd, 0xd2, 0x6c, 0xaa, 0xb1, 0x46, }; static const unsigned char xdh_wei25519_1759_sharedsecret[] = { 0x2b, 0xfd, 0x8e, 0x53, 0x08, 0xc3, 0x44, 0x98, 0xeb, 0x2b, 0x4d, 0xaf, 0x9e, 0xd5, 0x1c, 0xf6, 0x23, 0xda, 0x3b, 0xea, 0xeb, 0x0e, 0xfd, 0x3d, 0x68, 0x7f, 0x2b, 0x8b, 0xec, 0xbf, 0x31, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1759 = { .name = "xdh_wei25519_1759", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1759_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1759_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1759_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 195 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1760 for XDH, tcId is 196 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1760_peerpubkey[] = { 0x93, 0x16, 0xc0, 0x6d, 0x27, 0xb2, 0x4a, 0xbc, 0x67, 0x3f, 0xfb, 0x51, 0x05, 0xc5, 0xb9, 0xa8, 0x9b, 0xdf, 0xaa, 0x79, 0xe8, 0x1c, 0xdb, 0xb8, 0x95, 0x56, 0x07, 0x43, 0x77, 0xc7, 0x03, 0x20, }; static const unsigned char xdh_wei25519_1760_privkey[] = { 0xa8, 0x86, 0x03, 0x3e, 0x9d, 0xc2, 0xb6, 0xa9, 0x13, 0xff, 0xfb, 0xc2, 0xbd, 0x40, 0x2e, 0x8c, 0x11, 0xec, 0x34, 0xd4, 0x9c, 0x0d, 0xc0, 0xfa, 0x14, 0x29, 0x32, 0x9b, 0x69, 0x4a, 0x28, 0x5f, }; static const unsigned char xdh_wei25519_1760_sharedsecret[] = { 0xd5, 0x3c, 0x3d, 0x6f, 0x53, 0x8c, 0x12, 0x6b, 0x93, 0x36, 0x78, 0x5d, 0x1d, 0x4e, 0x69, 0x35, 0xdc, 0x8b, 0x21, 0xf3, 0xd7, 0xe9, 0xc2, 0x5b, 0xc2, 0x40, 0xa0, 0x3e, 0x39, 0x02, 0x33, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1760 = { .name = "xdh_wei25519_1760", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1760_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1760_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1760_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 196 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1761 for XDH, tcId is 197 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1761_peerpubkey[] = { 0x8a, 0x41, 0x79, 0x80, 0x7b, 0x07, 0x64, 0x9e, 0x04, 0xf7, 0x11, 0xbf, 0x94, 0x73, 0xa7, 0x99, 0x93, 0xf8, 0x42, 0x93, 0xe4, 0xa8, 0xb9, 0xaf, 0xee, 0x44, 0xa2, 0x2e, 0xf1, 0x00, 0x0b, 0x21, }; static const unsigned char xdh_wei25519_1761_privkey[] = { 0x98, 0xb1, 0xcc, 0x20, 0x20, 0xa8, 0xec, 0x57, 0x5d, 0x5c, 0x46, 0xc7, 0x60, 0x24, 0xcf, 0x7c, 0x7a, 0xd7, 0x62, 0x8e, 0xb9, 0x09, 0x73, 0x0b, 0xc4, 0xf4, 0x60, 0xaa, 0xf0, 0xe6, 0xda, 0x4b, }; static const unsigned char xdh_wei25519_1761_sharedsecret[] = { 0x45, 0x31, 0x88, 0x1a, 0xd9, 0xcf, 0x01, 0x16, 0x93, 0xdd, 0xf0, 0x28, 0x42, 0xfb, 0xda, 0xb8, 0x6d, 0x71, 0xe2, 0x76, 0x80, 0xe9, 0xb4, 0xb3, 0xf9, 0x3b, 0x4c, 0xf1, 0x5e, 0x73, 0x7e, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1761 = { .name = "xdh_wei25519_1761", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1761_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1761_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1761_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 197 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1762 for XDH, tcId is 198 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1762_peerpubkey[] = { 0xa7, 0x73, 0x27, 0x7a, 0xe1, 0x02, 0x9f, 0x85, 0x47, 0x49, 0x13, 0x7b, 0x0f, 0x3a, 0x02, 0xb5, 0xb3, 0x56, 0x0b, 0x9c, 0x4c, 0xa4, 0xdb, 0xde, 0xb3, 0x12, 0x5e, 0xc8, 0x96, 0xb8, 0x18, 0x41, }; static const unsigned char xdh_wei25519_1762_privkey[] = { 0xc8, 0xe1, 0x93, 0xde, 0x16, 0x2a, 0xa3, 0x49, 0xa3, 0x43, 0x2c, 0x7a, 0x0c, 0x05, 0x21, 0xd9, 0x2c, 0xbc, 0x5e, 0x3b, 0xf8, 0x26, 0x15, 0xe4, 0x29, 0x55, 0xdd, 0x67, 0xec, 0x12, 0x34, 0x5f, }; static const unsigned char xdh_wei25519_1762_sharedsecret[] = { 0x7b, 0xa4, 0xd3, 0xde, 0x69, 0x7a, 0xa1, 0x1a, 0xdd, 0xf3, 0x91, 0x1e, 0x93, 0xc9, 0x4b, 0x7e, 0x94, 0x3b, 0xef, 0xf3, 0xe3, 0xb1, 0xb5, 0x6b, 0x7d, 0xe4, 0x46, 0x1f, 0x9e, 0x48, 0xbe, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_1762 = { .name = "xdh_wei25519_1762", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1762_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1762_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1762_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 198 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1763 for XDH, tcId is 199 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1763_peerpubkey[] = { 0x1e, 0xce, 0xb2, 0xb3, 0x76, 0x32, 0x31, 0xbc, 0x3c, 0x99, 0xdc, 0x62, 0x26, 0x6a, 0x09, 0xab, 0x5d, 0x36, 0x61, 0xc7, 0x56, 0x52, 0x4c, 0xdd, 0xc5, 0xaa, 0xbc, 0xed, 0xee, 0x92, 0xda, 0x61, }; static const unsigned char xdh_wei25519_1763_privkey[] = { 0x88, 0xe0, 0x12, 0x37, 0xb3, 0x36, 0x01, 0x40, 0x75, 0x67, 0x60, 0x82, 0xaf, 0xbd, 0xe5, 0x1d, 0x59, 0x5d, 0x47, 0xe1, 0xfa, 0x52, 0x14, 0xb5, 0x1a, 0x35, 0x1a, 0xbb, 0xf6, 0x49, 0x14, 0x42, }; static const unsigned char xdh_wei25519_1763_sharedsecret[] = { 0xbc, 0xf0, 0x88, 0x40, 0x52, 0xf9, 0x12, 0xa6, 0x3b, 0xba, 0xb8, 0xc5, 0xc6, 0x74, 0xb9, 0x1c, 0x49, 0x89, 0xae, 0x05, 0x1f, 0xa0, 0x7f, 0xcf, 0x30, 0xcb, 0x53, 0x17, 0xfb, 0x1f, 0x2e, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1763 = { .name = "xdh_wei25519_1763", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1763_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1763_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1763_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 199 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1764 for XDH, tcId is 200 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1764_peerpubkey[] = { 0x9a, 0x2a, 0xcb, 0xb3, 0xb5, 0xa3, 0x86, 0xa6, 0x10, 0x2e, 0x37, 0x28, 0xbe, 0x3a, 0x97, 0xde, 0x03, 0x98, 0x1d, 0x5c, 0x71, 0xfd, 0x2d, 0x95, 0x46, 0x04, 0xbe, 0xe3, 0xd3, 0xd0, 0xce, 0x62, }; static const unsigned char xdh_wei25519_1764_privkey[] = { 0xe8, 0x23, 0x13, 0xe4, 0x51, 0xa1, 0x98, 0xdc, 0xe4, 0xae, 0x95, 0xc6, 0x83, 0x2a, 0x82, 0x81, 0xd8, 0x47, 0xfc, 0x87, 0xb2, 0x8d, 0xb0, 0x0f, 0xe4, 0x37, 0x57, 0xc1, 0x6c, 0xc4, 0x9c, 0x4a, }; static const unsigned char xdh_wei25519_1764_sharedsecret[] = { 0xe5, 0x77, 0x2a, 0x92, 0xb1, 0x03, 0xee, 0x69, 0x6a, 0x99, 0x97, 0x05, 0xcf, 0x07, 0x11, 0x0c, 0x46, 0x0f, 0x05, 0x45, 0x68, 0x2d, 0xb3, 0xfa, 0xc5, 0xd8, 0x75, 0xd6, 0x96, 0x48, 0xbc, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1764 = { .name = "xdh_wei25519_1764", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1764_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1764_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1764_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 200 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1765 for XDH, tcId is 201 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1765_peerpubkey[] = { 0x27, 0x43, 0x0e, 0x1c, 0x2d, 0x30, 0x89, 0x70, 0x8b, 0xca, 0x56, 0xd7, 0xa5, 0xad, 0x03, 0x79, 0x28, 0x28, 0xd4, 0x76, 0x85, 0xb6, 0x13, 0x1e, 0x02, 0x3d, 0xd0, 0x80, 0x87, 0x16, 0xb8, 0x63, }; static const unsigned char xdh_wei25519_1765_privkey[] = { 0x28, 0x28, 0x59, 0x4d, 0x16, 0x76, 0x8e, 0x58, 0x6d, 0xf3, 0x96, 0x01, 0xec, 0xc8, 0x6d, 0x3f, 0xad, 0x63, 0x89, 0xd8, 0x72, 0xb5, 0x3f, 0xca, 0x3e, 0xdc, 0xaf, 0x6f, 0xb9, 0x58, 0xf6, 0x53, }; static const unsigned char xdh_wei25519_1765_sharedsecret[] = { 0x37, 0x8c, 0x29, 0xe3, 0xbe, 0x97, 0xa2, 0x1b, 0x9f, 0x81, 0xaf, 0xca, 0x0d, 0x0f, 0x5c, 0x24, 0x2f, 0xd4, 0xf8, 0x96, 0x11, 0x4f, 0x77, 0xa7, 0x71, 0x55, 0xd0, 0x6c, 0xe5, 0xfb, 0xfa, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_1765 = { .name = "xdh_wei25519_1765", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1765_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1765_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1765_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 201 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1766 for XDH, tcId is 202 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1766_peerpubkey[] = { 0x4e, 0xf3, 0x67, 0x90, 0x1a, 0xac, 0x8b, 0xa9, 0x0a, 0x50, 0xe0, 0xcf, 0x86, 0xca, 0x4e, 0x4a, 0x3f, 0xf1, 0x64, 0xfb, 0x12, 0x16, 0x05, 0xbe, 0x34, 0x6e, 0x2e, 0x48, 0xd0, 0x4a, 0xc9, 0x12, }; static const unsigned char xdh_wei25519_1766_privkey[] = { 0xa8, 0x4f, 0x48, 0x8e, 0x19, 0x31, 0x39, 0xf9, 0x86, 0xb0, 0xe5, 0xb2, 0x49, 0x63, 0x5b, 0x13, 0x7d, 0x38, 0x5e, 0x42, 0x03, 0x42, 0xae, 0xf1, 0xf1, 0x94, 0xfc, 0xde, 0x1f, 0xe5, 0xe8, 0x50, }; static const unsigned char xdh_wei25519_1766_sharedsecret[] = { 0x7e, 0xb4, 0x8a, 0x60, 0xb1, 0x4f, 0xb9, 0xea, 0x57, 0x28, 0xf6, 0x41, 0x0a, 0xef, 0x62, 0x7d, 0x15, 0x22, 0xfa, 0xd4, 0x81, 0xb9, 0x34, 0xaf, 0x64, 0xe2, 0xc4, 0x83, 0xb6, 0x4d, 0x58, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_1766 = { .name = "xdh_wei25519_1766", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1766_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1766_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1766_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 202 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1767 for XDH, tcId is 203 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1767_peerpubkey[] = { 0xd1, 0xde, 0x30, 0x3c, 0x4d, 0xdd, 0x05, 0xd5, 0x7c, 0x29, 0xdf, 0x92, 0xad, 0x17, 0x2d, 0xd8, 0xc8, 0xf4, 0x24, 0xe6, 0x3e, 0xc9, 0x34, 0x45, 0xbe, 0xae, 0xa4, 0x4f, 0x9d, 0x12, 0x4b, 0x17, }; static const unsigned char xdh_wei25519_1767_privkey[] = { 0x30, 0xfd, 0x2a, 0x78, 0x1e, 0x09, 0x5c, 0x34, 0xa4, 0x83, 0x90, 0x7b, 0x3d, 0xd2, 0xd8, 0xbd, 0x27, 0x36, 0xe2, 0x79, 0x61, 0x7b, 0xfa, 0x6b, 0x8b, 0x4e, 0x0e, 0x1c, 0xf9, 0x0f, 0xbd, 0x46, }; static const unsigned char xdh_wei25519_1767_sharedsecret[] = { 0xb7, 0x1b, 0xdb, 0xed, 0x78, 0x02, 0x3a, 0x06, 0xde, 0xed, 0x1c, 0x18, 0x2e, 0x14, 0xc9, 0x8f, 0x7c, 0xf4, 0x6b, 0xc6, 0x27, 0xa4, 0xa2, 0xc1, 0x02, 0xad, 0x23, 0xc4, 0x1c, 0xf3, 0x24, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1767 = { .name = "xdh_wei25519_1767", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1767_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1767_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1767_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 203 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1768 for XDH, tcId is 204 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1768_peerpubkey[] = { 0x5b, 0xcc, 0xd7, 0x39, 0xfd, 0x75, 0x17, 0xd9, 0x34, 0x4b, 0xf6, 0xb2, 0xb0, 0xf1, 0x9a, 0x1e, 0x0c, 0x38, 0xd9, 0x34, 0x9a, 0x25, 0xad, 0x1f, 0x94, 0xaf, 0x4a, 0x2c, 0xdc, 0xf5, 0xe8, 0x37, }; static const unsigned char xdh_wei25519_1768_privkey[] = { 0x28, 0x31, 0x2e, 0x17, 0xb4, 0x7d, 0xd3, 0x2d, 0x90, 0x56, 0x11, 0x68, 0x24, 0x51, 0x87, 0x96, 0x3c, 0x74, 0x69, 0xa3, 0x1c, 0x88, 0x1e, 0x4a, 0x5c, 0x94, 0x38, 0x42, 0x62, 0xb7, 0x19, 0x59, }; static const unsigned char xdh_wei25519_1768_sharedsecret[] = { 0x5b, 0xb5, 0x68, 0x77, 0xca, 0xf2, 0xcd, 0xac, 0x98, 0x61, 0x1b, 0x60, 0x36, 0x7f, 0xbb, 0x74, 0x26, 0x59, 0x84, 0x61, 0x4e, 0x5e, 0x73, 0x99, 0x6e, 0x8e, 0xa1, 0xbd, 0x6f, 0x74, 0x9f, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_1768 = { .name = "xdh_wei25519_1768", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1768_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1768_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1768_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 204 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1769 for XDH, tcId is 205 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1769_peerpubkey[] = { 0x8a, 0x7a, 0x93, 0x93, 0x10, 0xdf, 0x7e, 0xa7, 0x68, 0x45, 0x4d, 0xf5, 0x1b, 0xcd, 0x0d, 0xfb, 0xd7, 0xbe, 0x4f, 0xcb, 0xb2, 0xff, 0xc9, 0x84, 0x29, 0xd9, 0x13, 0xec, 0x69, 0x11, 0xf3, 0x37, }; static const unsigned char xdh_wei25519_1769_privkey[] = { 0xa8, 0x76, 0x40, 0xcf, 0x82, 0x37, 0xb4, 0x73, 0xc6, 0x38, 0xb3, 0xe9, 0xdf, 0x08, 0x64, 0x4e, 0x86, 0x07, 0xe5, 0x63, 0xb5, 0x96, 0x43, 0x63, 0xcc, 0xc4, 0x21, 0x33, 0xb2, 0x99, 0x67, 0x42, }; static const unsigned char xdh_wei25519_1769_sharedsecret[] = { 0xb5, 0x68, 0xed, 0x46, 0xd0, 0x4f, 0x62, 0x91, 0xf8, 0xc1, 0x76, 0xdc, 0xa8, 0xaf, 0xf6, 0xd2, 0x21, 0xde, 0x4c, 0x9c, 0xce, 0x4b, 0x40, 0x4d, 0x54, 0x01, 0xfb, 0xe7, 0x0a, 0x32, 0x45, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1769 = { .name = "xdh_wei25519_1769", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1769_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1769_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1769_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 205 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1770 for XDH, tcId is 206 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1770_peerpubkey[] = { 0xfe, 0x35, 0x90, 0xfc, 0x38, 0x2d, 0xa7, 0xa8, 0x2e, 0x28, 0xd0, 0x7f, 0xaf, 0xe4, 0x0d, 0x4a, 0xfc, 0x91, 0x18, 0x3a, 0x45, 0x36, 0xe3, 0xe6, 0xb5, 0x50, 0xfe, 0xe8, 0x4a, 0x4b, 0x7b, 0x4b, }; static const unsigned char xdh_wei25519_1770_privkey[] = { 0x78, 0x0c, 0x5b, 0x88, 0x27, 0x20, 0xd8, 0x5e, 0x5d, 0xdf, 0xaf, 0x10, 0x33, 0xe9, 0xa1, 0x38, 0x5d, 0xf9, 0xe2, 0x16, 0x89, 0xee, 0xda, 0x4d, 0xcc, 0x74, 0x44, 0xad, 0x28, 0x33, 0x0a, 0x50, }; static const unsigned char xdh_wei25519_1770_sharedsecret[] = { 0x11, 0xfb, 0x44, 0xe8, 0x10, 0xbc, 0xe8, 0x53, 0x6a, 0x95, 0x7e, 0xaa, 0x56, 0xe0, 0x2d, 0x04, 0xdd, 0x86, 0x67, 0x00, 0x29, 0x8f, 0x13, 0xb0, 0x4e, 0xbe, 0xb4, 0x8e, 0x20, 0xd9, 0x36, 0x47, }; static const wycheproof_xdh_test xdh_wei25519_1770 = { .name = "xdh_wei25519_1770", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1770_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1770_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1770_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 206 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1771 for XDH, tcId is 207 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1771_peerpubkey[] = { 0xfa, 0xd9, 0xab, 0x3e, 0x80, 0x3b, 0x49, 0xfc, 0x81, 0xb2, 0x7e, 0xe6, 0x9d, 0xb6, 0xfc, 0x9f, 0xdb, 0x82, 0xe3, 0x54, 0x53, 0xb5, 0x9e, 0xf8, 0xfa, 0xb2, 0xa3, 0xbe, 0xb5, 0xe1, 0x13, 0x4c, }; static const unsigned char xdh_wei25519_1771_privkey[] = { 0x20, 0x9e, 0x5e, 0x0a, 0xe1, 0x99, 0x4b, 0xd8, 0x59, 0xce, 0x89, 0x92, 0xb6, 0x2e, 0xc3, 0xa6, 0x6d, 0xf2, 0xeb, 0x50, 0x23, 0x2b, 0xcc, 0x3a, 0x3d, 0x27, 0xb6, 0x61, 0x4f, 0x6b, 0x01, 0x4d, }; static const unsigned char xdh_wei25519_1771_sharedsecret[] = { 0x85, 0xd9, 0xdb, 0x8f, 0x18, 0x2b, 0xc6, 0x8d, 0xb6, 0x7d, 0xe3, 0x47, 0x1f, 0x78, 0x6b, 0x45, 0xb1, 0x61, 0x9a, 0xec, 0x0f, 0x32, 0xb1, 0x08, 0xac, 0xe3, 0x0e, 0xe7, 0xb2, 0x62, 0x43, 0x05, }; static const wycheproof_xdh_test xdh_wei25519_1771 = { .name = "xdh_wei25519_1771", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1771_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1771_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1771_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 207 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1772 for XDH, tcId is 208 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1772_peerpubkey[] = { 0x98, 0xbe, 0xd9, 0x55, 0xf1, 0x51, 0x6c, 0x7a, 0x44, 0x27, 0x51, 0xac, 0x59, 0x00, 0x46, 0xd7, 0xd5, 0x2c, 0xa6, 0x4f, 0x76, 0xdf, 0x82, 0xbe, 0x09, 0xd3, 0x2e, 0x5d, 0x33, 0xb4, 0x90, 0x73, }; static const unsigned char xdh_wei25519_1772_privkey[] = { 0x80, 0x6d, 0x1d, 0xee, 0x5f, 0xf6, 0xae, 0xa8, 0x4a, 0x84, 0x89, 0x16, 0x99, 0x1a, 0x89, 0xef, 0x36, 0x25, 0x58, 0x3e, 0x1b, 0xd4, 0xae, 0x0b, 0x3d, 0xd2, 0x5c, 0x25, 0x24, 0xa4, 0xff, 0x46, }; static const unsigned char xdh_wei25519_1772_sharedsecret[] = { 0x61, 0xd4, 0xef, 0x71, 0xcb, 0xe7, 0xbe, 0x31, 0x28, 0xbe, 0x82, 0x9a, 0xb2, 0x6e, 0xd3, 0x46, 0x3e, 0xb4, 0xab, 0x25, 0x93, 0x7c, 0x30, 0x97, 0x88, 0xe8, 0x76, 0xb2, 0x34, 0x12, 0xaa, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1772 = { .name = "xdh_wei25519_1772", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1772_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1772_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1772_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 208 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1773 for XDH, tcId is 209 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1773_peerpubkey[] = { 0xe5, 0x9b, 0xe4, 0x91, 0x7b, 0x3f, 0x05, 0xb6, 0xfc, 0x87, 0x48, 0xc9, 0xb9, 0x0f, 0x1b, 0x91, 0x02, 0x73, 0xc9, 0xc6, 0xe1, 0x7f, 0xf9, 0x6e, 0xf4, 0x15, 0xff, 0x3d, 0x92, 0x7d, 0x98, 0x7e, }; static const unsigned char xdh_wei25519_1773_privkey[] = { 0x00, 0xf9, 0x8b, 0x02, 0xae, 0x0d, 0xf5, 0x27, 0x4c, 0xc8, 0x99, 0xf5, 0x26, 0xeb, 0x1b, 0x87, 0x72, 0x89, 0xe0, 0x96, 0x34, 0x40, 0xa5, 0x7d, 0xd9, 0x7e, 0x41, 0x4c, 0xdd, 0x2f, 0x7c, 0x51, }; static const unsigned char xdh_wei25519_1773_sharedsecret[] = { 0x5b, 0xa4, 0x39, 0x4e, 0xd1, 0xa6, 0x64, 0x81, 0x1b, 0x01, 0x55, 0x79, 0x44, 0xbe, 0xcf, 0x75, 0x85, 0x65, 0x2a, 0x8a, 0xcb, 0xdb, 0xf8, 0x06, 0x74, 0x29, 0x11, 0x20, 0x7b, 0xd7, 0x93, 0x46, }; static const wycheproof_xdh_test xdh_wei25519_1773 = { .name = "xdh_wei25519_1773", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1773_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1773_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1773_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 2, tcId is 209 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1774 for XDH, tcId is 210 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1774_peerpubkey[] = { 0x8c, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_1774_privkey[] = { 0xd8, 0x6c, 0x18, 0xf2, 0xbe, 0x39, 0x6b, 0x3b, 0xb7, 0x2f, 0x22, 0xe6, 0xec, 0xe2, 0x2e, 0x27, 0x3a, 0xf6, 0xe1, 0x50, 0x6a, 0x1c, 0x09, 0xad, 0x4d, 0x01, 0xbd, 0xd2, 0xf4, 0x39, 0xf8, 0x43, }; static const unsigned char xdh_wei25519_1774_sharedsecret[] = { 0xa5, 0x95, 0x25, 0x88, 0x61, 0x3e, 0xb7, 0xa5, 0xcd, 0x49, 0xdd, 0x52, 0x6f, 0x1f, 0x20, 0xa4, 0xf0, 0xff, 0xe9, 0x42, 0x3e, 0x82, 0xce, 0xa3, 0x02, 0xc2, 0xdd, 0x90, 0xce, 0x55, 0x99, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1774 = { .name = "xdh_wei25519_1774", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1774_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1774_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1774_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 210 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1775 for XDH, tcId is 211 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1775_peerpubkey[] = { 0xf6, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_1775_privkey[] = { 0xf8, 0x1a, 0xad, 0xb9, 0x05, 0x3e, 0xb6, 0x98, 0x99, 0x6d, 0x0f, 0x78, 0x1d, 0x9c, 0xda, 0x67, 0xf8, 0x2d, 0xde, 0xfa, 0x39, 0x87, 0xd2, 0x76, 0xff, 0x5a, 0x94, 0xff, 0xdf, 0x5d, 0x25, 0x5f, }; static const unsigned char xdh_wei25519_1775_sharedsecret[] = { 0xcb, 0x6f, 0xb6, 0x23, 0x08, 0x4b, 0x61, 0x97, 0x44, 0x3e, 0xc9, 0xba, 0x10, 0x50, 0xc0, 0x92, 0x33, 0x32, 0xe5, 0xe8, 0x29, 0xae, 0x01, 0x94, 0x26, 0x9c, 0xfa, 0xf9, 0x20, 0xa4, 0x36, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1775 = { .name = "xdh_wei25519_1775", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1775_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1775_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1775_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 211 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1776 for XDH, tcId is 212 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1776_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1776_privkey[] = { 0x30, 0x5b, 0x4d, 0xb4, 0x32, 0x1b, 0x49, 0x23, 0xfc, 0x55, 0x9b, 0xf9, 0x1d, 0xf6, 0x77, 0xd0, 0xe1, 0x2c, 0x3a, 0x31, 0xb1, 0x6e, 0xc6, 0x55, 0xcb, 0x70, 0x8b, 0x75, 0x9d, 0x7c, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_1776_sharedsecret[] = { 0x9e, 0x52, 0x60, 0x79, 0xc2, 0xfc, 0xf1, 0x24, 0x26, 0xae, 0x6c, 0x2a, 0x54, 0xb5, 0xff, 0xb7, 0x0f, 0x2e, 0xc6, 0x62, 0xe2, 0x9e, 0xa5, 0xce, 0x0c, 0x83, 0x85, 0xc3, 0xb2, 0x1c, 0xd1, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1776 = { .name = "xdh_wei25519_1776", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1776_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1776_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1776_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 212 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1777 for XDH, tcId is 213 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1777_peerpubkey[] = { 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1777_privkey[] = { 0x90, 0x06, 0x38, 0xd1, 0x97, 0x98, 0x02, 0xdb, 0x9b, 0x52, 0xe4, 0xdd, 0x84, 0xfa, 0x19, 0x57, 0x9f, 0x61, 0xcd, 0x7b, 0xef, 0x3c, 0x0b, 0x62, 0xfc, 0xcc, 0xae, 0xaa, 0x15, 0xfa, 0x48, 0x4d, }; static const unsigned char xdh_wei25519_1777_sharedsecret[] = { 0x63, 0x29, 0xc7, 0xdc, 0x23, 0x18, 0xec, 0x36, 0x15, 0x3e, 0xf4, 0xf6, 0xf9, 0x1b, 0xc6, 0xe7, 0xd1, 0xe0, 0x08, 0xf5, 0x29, 0x30, 0x65, 0xd9, 0x58, 0x6a, 0xb8, 0x8a, 0xbb, 0x58, 0xf2, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1777 = { .name = "xdh_wei25519_1777", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1777_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1777_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1777_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 213 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1778 for XDH, tcId is 214 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1778_peerpubkey[] = { 0xf6, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_1778_privkey[] = { 0x38, 0x57, 0x5c, 0xf7, 0xc8, 0x69, 0x1e, 0xcc, 0x79, 0xcd, 0x5f, 0x8d, 0x7d, 0x47, 0x03, 0xaa, 0x48, 0x59, 0x2f, 0xf6, 0xe7, 0xf6, 0x47, 0x31, 0xc2, 0xd9, 0x8a, 0x19, 0xae, 0xae, 0x51, 0x4f, }; static const unsigned char xdh_wei25519_1778_sharedsecret[] = { 0x60, 0x3f, 0x4f, 0xc4, 0x10, 0x08, 0x1f, 0x88, 0x09, 0x44, 0xe0, 0xe1, 0x3d, 0x56, 0xfc, 0x54, 0x2a, 0x43, 0x0e, 0xec, 0x81, 0x3f, 0xad, 0x30, 0x2b, 0x7c, 0x5a, 0xc3, 0x80, 0x57, 0x6f, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1778 = { .name = "xdh_wei25519_1778", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1778_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1778_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1778_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 214 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1779 for XDH, tcId is 215 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1779_peerpubkey[] = { 0x60, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_1779_privkey[] = { 0xe8, 0x8b, 0xd0, 0x2c, 0x70, 0x16, 0x54, 0x7a, 0x24, 0xf4, 0x28, 0xbc, 0x2a, 0x9d, 0xcc, 0xca, 0xd6, 0xc6, 0xf8, 0x80, 0xc1, 0x7b, 0xff, 0xcf, 0x66, 0xfc, 0x68, 0x45, 0x96, 0x27, 0xaf, 0x4e, }; static const unsigned char xdh_wei25519_1779_sharedsecret[] = { 0x83, 0x4b, 0xba, 0xd5, 0x47, 0x0e, 0x14, 0x98, 0xc4, 0xb0, 0x14, 0x87, 0x82, 0xdf, 0xe6, 0x30, 0xe8, 0xbf, 0xad, 0xff, 0x19, 0x97, 0xde, 0x80, 0x2a, 0xc8, 0xce, 0x30, 0x2a, 0x1b, 0xda, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1779 = { .name = "xdh_wei25519_1779", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1779_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1779_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1779_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 215 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1780 for XDH, tcId is 216 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1780_peerpubkey[] = { 0x8d, 0x98, 0x85, 0xa2, 0x6c, 0xb3, 0x34, 0x05, 0x47, 0x00, 0xa2, 0x70, 0xf7, 0xa5, 0xf4, 0xaa, 0xc0, 0x6b, 0xad, 0x82, 0x63, 0xb6, 0x51, 0xeb, 0xf0, 0x71, 0x2e, 0xca, 0x1e, 0xbb, 0x64, 0x16, }; static const unsigned char xdh_wei25519_1780_privkey[] = { 0x90, 0x36, 0xed, 0x7d, 0x68, 0xf7, 0x44, 0x8a, 0xc4, 0x40, 0xdc, 0x51, 0x21, 0x6b, 0x49, 0x84, 0x0d, 0xca, 0xbd, 0x3d, 0x5e, 0x32, 0xe3, 0xb4, 0xff, 0xc3, 0x2a, 0x5f, 0xe9, 0xe9, 0x67, 0x42, }; static const unsigned char xdh_wei25519_1780_sharedsecret[] = { 0xec, 0x90, 0x70, 0xad, 0x34, 0x91, 0xa5, 0xff, 0x50, 0xd7, 0xd0, 0xdb, 0x6c, 0x9c, 0x84, 0x47, 0x83, 0xdd, 0xe1, 0xc6, 0xfb, 0xd4, 0xfe, 0x16, 0x3e, 0x9a, 0xde, 0x1c, 0xe9, 0xcd, 0x04, 0x1d, }; static const wycheproof_xdh_test xdh_wei25519_1780 = { .name = "xdh_wei25519_1780", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1780_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1780_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1780_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 216 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1781 for XDH, tcId is 217 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1781_peerpubkey[] = { 0xf7, 0x13, 0x5f, 0xe9, 0x74, 0x1c, 0x2c, 0x9d, 0xe7, 0xdc, 0xf7, 0x62, 0x7e, 0xf0, 0x88, 0x32, 0xf3, 0x51, 0xcb, 0x32, 0x5d, 0xbb, 0x3a, 0x26, 0xf9, 0x3a, 0x2b, 0x48, 0x62, 0x0e, 0x17, 0x27, }; static const unsigned char xdh_wei25519_1781_privkey[] = { 0x90, 0xc5, 0x5e, 0x77, 0xaa, 0x0f, 0xe4, 0xaf, 0xb1, 0x28, 0x71, 0x09, 0xfd, 0x01, 0x0f, 0x52, 0x63, 0x64, 0xde, 0xa1, 0x8d, 0x88, 0xe2, 0xfd, 0x87, 0x0a, 0xc0, 0x1b, 0x66, 0xe3, 0xfa, 0x4e, }; static const unsigned char xdh_wei25519_1781_sharedsecret[] = { 0xdc, 0x6d, 0x05, 0xb9, 0x2e, 0xdc, 0xdb, 0x5d, 0xc3, 0x34, 0xb1, 0xfc, 0x3d, 0xff, 0x58, 0xfe, 0x5b, 0x24, 0xa5, 0xc5, 0xf0, 0xb2, 0xd4, 0x31, 0x15, 0x55, 0xd0, 0xfc, 0x94, 0x5d, 0x77, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1781 = { .name = "xdh_wei25519_1781", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1781_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1781_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1781_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 217 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1782 for XDH, tcId is 218 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1782_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei25519_1782_privkey[] = { 0xa0, 0x21, 0xba, 0x2f, 0xd4, 0xe3, 0xad, 0x57, 0xbc, 0xbf, 0x20, 0x4d, 0x6f, 0x6c, 0x3e, 0x80, 0x18, 0xd8, 0x97, 0x85, 0x52, 0x63, 0x3b, 0x6d, 0xff, 0x1b, 0x74, 0x47, 0xbf, 0x52, 0x94, 0x59, }; static const unsigned char xdh_wei25519_1782_sharedsecret[] = { 0x1b, 0x17, 0x4b, 0x18, 0x99, 0x81, 0xd8, 0x1b, 0xc6, 0x88, 0x79, 0x32, 0x08, 0x3e, 0x84, 0x88, 0xdf, 0x8b, 0xbb, 0xed, 0x57, 0xf9, 0x21, 0x4c, 0x9c, 0xfa, 0x59, 0xd5, 0x9b, 0x57, 0x23, 0x59, }; static const wycheproof_xdh_test xdh_wei25519_1782 = { .name = "xdh_wei25519_1782", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1782_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1782_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1782_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 218 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1783 for XDH, tcId is 219 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1783_peerpubkey[] = { 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei25519_1783_privkey[] = { 0x30, 0x35, 0x08, 0x3e, 0x98, 0x48, 0x37, 0x58, 0x7f, 0x6b, 0x73, 0x46, 0xaf, 0x87, 0x1b, 0xf3, 0xfc, 0x95, 0x81, 0xc5, 0x0e, 0xb5, 0x5c, 0x83, 0xae, 0xfa, 0xbe, 0xed, 0x68, 0xce, 0xe3, 0x49, }; static const unsigned char xdh_wei25519_1783_sharedsecret[] = { 0x15, 0xa0, 0x52, 0x14, 0x8a, 0xba, 0xad, 0x1b, 0x0f, 0x2e, 0x74, 0x81, 0xa3, 0x4e, 0xdb, 0x61, 0x40, 0x35, 0x89, 0x43, 0x9b, 0x5b, 0xd5, 0xe5, 0x64, 0x6c, 0xec, 0xeb, 0xe2, 0xa1, 0xbe, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1783 = { .name = "xdh_wei25519_1783", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1783_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1783_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1783_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 219 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1784 for XDH, tcId is 220 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1784_peerpubkey[] = { 0xf7, 0xeb, 0xa0, 0x16, 0x8b, 0xe3, 0xd3, 0x62, 0x18, 0x23, 0x08, 0x9d, 0x81, 0x0f, 0x77, 0xcd, 0x0c, 0xae, 0x34, 0xcd, 0xa2, 0x44, 0xc5, 0xd9, 0x06, 0xc5, 0xd4, 0xb7, 0x9d, 0xf1, 0xe8, 0x58, }; static const unsigned char xdh_wei25519_1784_privkey[] = { 0x30, 0x43, 0x5c, 0xe1, 0x87, 0xf2, 0x72, 0x3f, 0x9a, 0x3b, 0xde, 0xa0, 0xee, 0xf8, 0x92, 0x20, 0x7e, 0x15, 0x2e, 0x4c, 0xee, 0x89, 0x85, 0xfa, 0x72, 0xd2, 0xdb, 0x41, 0x47, 0xbd, 0x2a, 0x53, }; static const unsigned char xdh_wei25519_1784_sharedsecret[] = { 0x1d, 0x04, 0x8c, 0xbe, 0x2f, 0x8d, 0xf0, 0x7c, 0x23, 0x3a, 0x8f, 0x93, 0x70, 0x6f, 0x30, 0x7d, 0x17, 0x13, 0x0c, 0x24, 0x97, 0xfb, 0x75, 0x2e, 0xea, 0xa3, 0x1f, 0xe3, 0xed, 0xfc, 0x72, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1784 = { .name = "xdh_wei25519_1784", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1784_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1784_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1784_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 220 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1785 for XDH, tcId is 221 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1785_peerpubkey[] = { 0x61, 0x67, 0x7a, 0x5d, 0x93, 0x4c, 0xcb, 0xfa, 0xb8, 0xff, 0x5d, 0x8f, 0x08, 0x5a, 0x0b, 0x55, 0x3f, 0x94, 0x52, 0x7d, 0x9c, 0x49, 0xae, 0x14, 0x0f, 0x8e, 0xd1, 0x35, 0xe1, 0x44, 0x9b, 0x69, }; static const unsigned char xdh_wei25519_1785_privkey[] = { 0x58, 0x0f, 0x0a, 0x9b, 0xba, 0x72, 0x81, 0xa3, 0x0f, 0xb0, 0x33, 0x49, 0x0e, 0x0f, 0x42, 0x9f, 0x22, 0xe3, 0xf2, 0x67, 0x85, 0x2c, 0xae, 0xac, 0xef, 0xa3, 0xe5, 0x29, 0x1f, 0x0e, 0x61, 0x4e, }; static const unsigned char xdh_wei25519_1785_sharedsecret[] = { 0xcb, 0x92, 0xa9, 0x8b, 0x6a, 0xa9, 0x9a, 0xc9, 0xe3, 0xc5, 0x75, 0x0c, 0xea, 0x6f, 0x08, 0x46, 0xb0, 0x18, 0x1f, 0xaa, 0x59, 0x92, 0x84, 0x5b, 0x79, 0x89, 0x23, 0xd4, 0x19, 0xe8, 0x27, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_1785 = { .name = "xdh_wei25519_1785", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1785_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1785_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1785_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 221 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1786 for XDH, tcId is 222 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1786_peerpubkey[] = { 0xc8, 0x23, 0x9b, 0x71, 0x01, 0x36, 0xfe, 0x43, 0x1f, 0xb4, 0xd9, 0x84, 0x36, 0x15, 0x7e, 0x47, 0xc9, 0xe7, 0x8a, 0x10, 0xf0, 0x9f, 0xf9, 0x2e, 0x98, 0xba, 0xff, 0x15, 0x99, 0x26, 0x06, 0x1c, }; static const unsigned char xdh_wei25519_1786_privkey[] = { 0x70, 0x90, 0x98, 0xfe, 0xb2, 0xe2, 0x5c, 0x67, 0xb4, 0xbf, 0xd3, 0xbe, 0x0a, 0x01, 0xaf, 0x40, 0x9a, 0xdb, 0x6d, 0xa5, 0x2b, 0x3f, 0xbe, 0x3d, 0x97, 0x06, 0x42, 0xdd, 0x2c, 0x98, 0x38, 0x56, }; static const unsigned char xdh_wei25519_1786_sharedsecret[] = { 0xf1, 0xbd, 0x12, 0xd9, 0xd3, 0x2c, 0x6f, 0x4c, 0x5b, 0x2d, 0xcb, 0x3a, 0x5c, 0x52, 0xd9, 0xfd, 0x45, 0x4d, 0x52, 0xca, 0x70, 0x4c, 0x2c, 0x13, 0x79, 0x56, 0xec, 0x8a, 0xd9, 0xae, 0xf1, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1786 = { .name = "xdh_wei25519_1786", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1786_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1786_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1786_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 2, tcId is 222 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1787 for XDH, tcId is 223 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1787_peerpubkey[] = { 0xb7, 0xa2, 0xf7, 0x9e, 0x0d, 0xe9, 0xb5, 0x81, 0x47, 0x69, 0x1b, 0x55, 0x46, 0xd9, 0xec, 0x46, 0x3d, 0xa8, 0x32, 0x5e, 0x14, 0x40, 0xe5, 0x8b, 0xb2, 0x0a, 0xa1, 0x29, 0xd1, 0xb9, 0x73, 0x27, }; static const unsigned char xdh_wei25519_1787_privkey[] = { 0x18, 0x5a, 0xc6, 0x2e, 0x72, 0x9f, 0x88, 0x52, 0x89, 0x50, 0x92, 0x6c, 0x0d, 0xe7, 0xc4, 0x81, 0xc9, 0x24, 0xbf, 0x9c, 0xf2, 0x6a, 0x12, 0x2f, 0x44, 0x3b, 0x86, 0x1e, 0x8b, 0x6a, 0xf6, 0x40, }; static const unsigned char xdh_wei25519_1787_sharedsecret[] = { 0xe6, 0xf1, 0xc4, 0x94, 0xc9, 0xe4, 0xbd, 0x23, 0x25, 0xc1, 0x71, 0x83, 0xe8, 0x2d, 0x31, 0xab, 0x0b, 0xbe, 0xe6, 0xc8, 0x47, 0xd4, 0xb0, 0xe4, 0xa9, 0x9c, 0x7c, 0x68, 0x91, 0x11, 0x7c, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_1787 = { .name = "xdh_wei25519_1787", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1787_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1787_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1787_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 223 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1788 for XDH, tcId is 224 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1788_peerpubkey[] = { 0x2d, 0xc6, 0x24, 0xe1, 0x66, 0x3f, 0x42, 0xa7, 0xb9, 0x33, 0x63, 0x50, 0xf2, 0x77, 0x54, 0x1b, 0x50, 0xb8, 0xdd, 0xc7, 0xee, 0x0d, 0x86, 0x13, 0x3a, 0xd5, 0x32, 0x73, 0xae, 0xd4, 0xe6, 0x2e, }; static const unsigned char xdh_wei25519_1788_privkey[] = { 0xf0, 0x37, 0x43, 0xee, 0xad, 0x7c, 0x2f, 0x77, 0x19, 0x79, 0x43, 0x24, 0xf2, 0x71, 0x07, 0x28, 0x17, 0xd1, 0xa0, 0x4c, 0xbd, 0xa4, 0x2b, 0x23, 0x2f, 0x3b, 0xee, 0x43, 0xf3, 0x97, 0xcc, 0x40, }; static const unsigned char xdh_wei25519_1788_sharedsecret[] = { 0xaa, 0x2a, 0x12, 0xed, 0xf7, 0x52, 0xd2, 0x79, 0xbd, 0xb0, 0x00, 0xfb, 0x14, 0x05, 0xa5, 0xdf, 0x8c, 0x5f, 0x1d, 0x41, 0x30, 0x9b, 0x4f, 0x2b, 0xd4, 0x1a, 0xed, 0x7a, 0xc1, 0xed, 0x01, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1788 = { .name = "xdh_wei25519_1788", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1788_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1788_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1788_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 224 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1789 for XDH, tcId is 225 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1789_peerpubkey[] = { 0x0e, 0x5e, 0xce, 0xee, 0x91, 0x04, 0xa6, 0x4f, 0x82, 0xc9, 0x09, 0x3b, 0x9b, 0xf7, 0xb4, 0x07, 0x6e, 0xe5, 0xbc, 0x70, 0x81, 0x5a, 0xf7, 0xee, 0x9f, 0x94, 0x2e, 0xf0, 0x15, 0x75, 0x61, 0x76, }; static const unsigned char xdh_wei25519_1789_privkey[] = { 0xa8, 0xfb, 0xb4, 0xf9, 0x0d, 0xa4, 0x57, 0x94, 0x98, 0x14, 0x05, 0xd5, 0x9e, 0xf3, 0x10, 0x62, 0x1e, 0x3c, 0x3b, 0x6b, 0x77, 0x60, 0xb5, 0xe3, 0x03, 0x08, 0xc7, 0x82, 0x2c, 0x88, 0xae, 0x5f, }; static const unsigned char xdh_wei25519_1789_sharedsecret[] = { 0x74, 0xd5, 0x60, 0x6b, 0xa0, 0xb6, 0xad, 0x1d, 0x8b, 0xa3, 0x6a, 0xe6, 0xf2, 0x64, 0xd6, 0x31, 0x5f, 0x47, 0x9b, 0x39, 0x84, 0xde, 0x57, 0x3e, 0x9b, 0x00, 0x1e, 0x05, 0x55, 0x24, 0x7c, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1789 = { .name = "xdh_wei25519_1789", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1789_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1789_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1789_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 2, tcId is 225 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1790 for XDH, tcId is 226 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1790_peerpubkey[] = { 0x73, 0x7d, 0x45, 0x47, 0x7e, 0x2b, 0xeb, 0x77, 0xa6, 0xc3, 0x8b, 0x98, 0xe2, 0xa1, 0x9b, 0x05, 0xc3, 0x95, 0xdf, 0x7d, 0xa9, 0x98, 0xcb, 0x91, 0xf6, 0xdf, 0xab, 0x58, 0x19, 0x61, 0x4f, 0x27, }; static const unsigned char xdh_wei25519_1790_privkey[] = { 0xc8, 0x87, 0x88, 0x6f, 0xd0, 0x71, 0x07, 0xc7, 0x22, 0x1f, 0x6d, 0x9d, 0xd3, 0x6c, 0x30, 0x5e, 0xc7, 0x79, 0xce, 0xca, 0x13, 0x2a, 0xc9, 0x33, 0xff, 0x77, 0xda, 0xb2, 0xbe, 0xac, 0x63, 0x45, }; static const unsigned char xdh_wei25519_1790_sharedsecret[] = { 0x8c, 0xf4, 0x53, 0x8a, 0xe5, 0xf4, 0x45, 0xcc, 0x6d, 0x27, 0x3d, 0xf4, 0xad, 0x30, 0x0a, 0x45, 0xd7, 0xbb, 0x2f, 0x6e, 0x37, 0x3a, 0x56, 0x24, 0x40, 0xf1, 0xb3, 0x77, 0x73, 0x90, 0x4e, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1790 = { .name = "xdh_wei25519_1790", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1790_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1790_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1790_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 226 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1791 for XDH, tcId is 227 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1791_peerpubkey[] = { 0x87, 0x3f, 0x8b, 0x26, 0x0e, 0xa9, 0xd9, 0xdd, 0xac, 0x08, 0xb7, 0xb0, 0x30, 0x72, 0x7b, 0xf0, 0x07, 0x23, 0x15, 0xab, 0x54, 0x07, 0x5e, 0xcc, 0x39, 0x3a, 0x37, 0xa9, 0x75, 0x88, 0x2b, 0x7e, }; static const unsigned char xdh_wei25519_1791_privkey[] = { 0x58, 0x09, 0x6e, 0xe2, 0x93, 0x61, 0x97, 0x8f, 0x63, 0x0a, 0xd1, 0xfb, 0x00, 0xc1, 0x26, 0x7c, 0x5a, 0x90, 0x1f, 0x99, 0xc5, 0x02, 0xf9, 0x56, 0x9b, 0x93, 0x3a, 0xd0, 0xdc, 0xce, 0x0f, 0x50, }; static const unsigned char xdh_wei25519_1791_sharedsecret[] = { 0xd5, 0x76, 0x67, 0x53, 0x21, 0x1d, 0x99, 0x68, 0xde, 0x4a, 0xc2, 0x55, 0x99, 0x98, 0xf2, 0x2e, 0xf4, 0x4e, 0x8a, 0xa8, 0x79, 0xf3, 0x32, 0x8c, 0xbc, 0x46, 0xaa, 0x85, 0x8d, 0xcb, 0x43, 0x3c, }; static const wycheproof_xdh_test xdh_wei25519_1791 = { .name = "xdh_wei25519_1791", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1791_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1791_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1791_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 227 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1792 for XDH, tcId is 228 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1792_peerpubkey[] = { 0x75, 0xe1, 0x58, 0x7c, 0x5e, 0xef, 0xc8, 0x37, 0x15, 0xd7, 0x10, 0x20, 0xaa, 0x6b, 0xe5, 0x34, 0x7b, 0xb9, 0xec, 0x9d, 0x91, 0xce, 0x5b, 0x28, 0xa9, 0xbb, 0xb7, 0x4c, 0x92, 0xef, 0x40, 0x7e, }; static const unsigned char xdh_wei25519_1792_privkey[] = { 0x08, 0x29, 0xa4, 0x90, 0x46, 0xdc, 0xe2, 0xc0, 0x7a, 0xb2, 0x84, 0x40, 0xdb, 0xad, 0x14, 0x64, 0x53, 0xe1, 0x28, 0x96, 0x0e, 0x85, 0xdd, 0x2e, 0x6a, 0x69, 0xa1, 0x51, 0x28, 0x73, 0xdd, 0x44, }; static const unsigned char xdh_wei25519_1792_sharedsecret[] = { 0x76, 0x1d, 0x8c, 0xec, 0xf1, 0x3f, 0x93, 0xb3, 0x79, 0xa7, 0x72, 0xe5, 0xfa, 0xc5, 0xb9, 0xff, 0xe9, 0x96, 0xca, 0xd9, 0xaf, 0x06, 0x15, 0x25, 0x80, 0xaf, 0xe8, 0x7f, 0xf9, 0x65, 0x1c, 0x71, }; static const wycheproof_xdh_test xdh_wei25519_1792 = { .name = "xdh_wei25519_1792", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1792_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1792_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1792_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 228 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1793 for XDH, tcId is 229 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1793_peerpubkey[] = { 0xf8, 0x5a, 0x06, 0x06, 0x5e, 0xa2, 0x52, 0x72, 0x38, 0xfc, 0x5e, 0xc1, 0xb7, 0x5e, 0xad, 0x92, 0x62, 0xe6, 0xb1, 0xae, 0xd6, 0x1f, 0xef, 0xf8, 0x3b, 0x91, 0x23, 0x0a, 0xeb, 0x4b, 0x7d, 0x01, }; static const unsigned char xdh_wei25519_1793_privkey[] = { 0x58, 0x7a, 0xc3, 0x6b, 0x9a, 0x23, 0x59, 0x46, 0x32, 0x67, 0x9a, 0xde, 0xa1, 0xa8, 0x26, 0xf2, 0xf6, 0x2d, 0x79, 0x73, 0x82, 0x20, 0xfb, 0x48, 0x74, 0x64, 0x03, 0x9f, 0x36, 0xca, 0x23, 0x72, }; static const unsigned char xdh_wei25519_1793_sharedsecret[] = { 0xf1, 0x2a, 0xcd, 0x36, 0xf6, 0x29, 0x9a, 0x4d, 0x19, 0x2c, 0x03, 0xaa, 0x4e, 0xfe, 0xea, 0x7d, 0xf5, 0x1e, 0x2d, 0x15, 0xd7, 0x63, 0x17, 0x2e, 0x68, 0xac, 0xcf, 0x7b, 0xc6, 0xf5, 0xc2, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_1793 = { .name = "xdh_wei25519_1793", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1793_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1793_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1793_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 229 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1794 for XDH, tcId is 230 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1794_peerpubkey[] = { 0x6e, 0x0f, 0x1d, 0x00, 0xb1, 0x09, 0x9d, 0x2a, 0x71, 0xf7, 0xbe, 0x86, 0x65, 0x5f, 0xeb, 0x89, 0x88, 0xbb, 0xa5, 0x57, 0x7b, 0x02, 0xf9, 0x64, 0x04, 0x3a, 0x49, 0xf0, 0x0c, 0x74, 0x96, 0x13, }; static const unsigned char xdh_wei25519_1794_privkey[] = { 0xa8, 0xa4, 0x42, 0xb7, 0xc0, 0xa9, 0x92, 0x27, 0xb4, 0xcb, 0x5c, 0x75, 0xfb, 0x9e, 0x5a, 0x72, 0xce, 0xa2, 0x5e, 0xba, 0x8a, 0x0b, 0xdf, 0x07, 0x27, 0x1b, 0xb4, 0xa9, 0x3c, 0x2b, 0x66, 0x65, }; static const unsigned char xdh_wei25519_1794_sharedsecret[] = { 0xb2, 0xbb, 0xbd, 0x17, 0x3f, 0x41, 0xd9, 0x52, 0xd3, 0x29, 0x25, 0x1d, 0xa9, 0x73, 0xa9, 0x50, 0x03, 0x00, 0x62, 0x81, 0x77, 0xad, 0x0f, 0xb7, 0x9d, 0x01, 0xe2, 0xe2, 0x63, 0x90, 0x5b, 0x38, }; static const wycheproof_xdh_test xdh_wei25519_1794 = { .name = "xdh_wei25519_1794", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1794_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1794_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1794_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 230 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1795 for XDH, tcId is 231 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1795_peerpubkey[] = { 0x69, 0x67, 0x57, 0xce, 0xd3, 0x09, 0x7f, 0xa9, 0x60, 0xc8, 0x39, 0x0a, 0x09, 0xe8, 0xbd, 0x6d, 0x39, 0x0d, 0xbd, 0xe8, 0xd1, 0xfa, 0x17, 0x02, 0x61, 0xf3, 0x42, 0x2e, 0xdc, 0x19, 0x29, 0x29, }; static const unsigned char xdh_wei25519_1795_privkey[] = { 0xd8, 0xf7, 0x23, 0x3e, 0x96, 0x12, 0xc0, 0x0c, 0x9d, 0xca, 0x2c, 0x75, 0x1e, 0xc1, 0xd3, 0xf5, 0xf6, 0x7b, 0xad, 0x77, 0xc2, 0xe7, 0x14, 0xa2, 0x0e, 0x71, 0xeb, 0x3f, 0x22, 0x0a, 0x66, 0x71, }; static const unsigned char xdh_wei25519_1795_sharedsecret[] = { 0x45, 0xec, 0xfa, 0x27, 0x5f, 0x1d, 0xaa, 0x25, 0xd3, 0xfa, 0xdf, 0x33, 0xcd, 0xf8, 0x9a, 0x15, 0x2a, 0xfe, 0xa2, 0x5e, 0xae, 0x37, 0xe6, 0x8e, 0x00, 0xb3, 0x0c, 0x36, 0x77, 0x89, 0x88, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1795 = { .name = "xdh_wei25519_1795", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1795_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1795_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1795_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 231 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1796 for XDH, tcId is 232 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1796_peerpubkey[] = { 0xfd, 0x84, 0xb3, 0xf2, 0xfb, 0xfa, 0x16, 0xae, 0xbf, 0x40, 0xc2, 0x7f, 0x46, 0xe1, 0x8d, 0x77, 0xba, 0xfa, 0x0c, 0x79, 0x71, 0xbe, 0xdd, 0xe4, 0x90, 0x92, 0x12, 0xe7, 0x71, 0xbd, 0x3c, 0x35, }; static const unsigned char xdh_wei25519_1796_privkey[] = { 0xd8, 0x0c, 0x7c, 0x75, 0x57, 0xc9, 0x90, 0x7e, 0x1b, 0x11, 0xe8, 0x44, 0xbf, 0x13, 0x69, 0xcb, 0xa6, 0x69, 0xbc, 0x38, 0xe9, 0xb7, 0xb2, 0x53, 0xe5, 0x1f, 0x23, 0x9b, 0xda, 0x32, 0x23, 0x74, }; static const unsigned char xdh_wei25519_1796_sharedsecret[] = { 0x59, 0x5e, 0x14, 0x4e, 0x07, 0xbb, 0xe6, 0x5b, 0x38, 0xe0, 0xe4, 0x16, 0x3d, 0x02, 0xad, 0x75, 0xa6, 0x5e, 0x42, 0x2e, 0x74, 0x06, 0x7d, 0xb3, 0x5c, 0x90, 0xdf, 0xa6, 0xe0, 0x55, 0xd4, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_1796 = { .name = "xdh_wei25519_1796", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1796_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1796_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1796_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 232 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1797 for XDH, tcId is 233 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1797_peerpubkey[] = { 0x80, 0x54, 0x85, 0x70, 0x3c, 0xcf, 0xc4, 0xa2, 0x21, 0xef, 0x28, 0x12, 0x67, 0xf5, 0x2b, 0x61, 0xce, 0xbc, 0x87, 0x9f, 0x0f, 0x13, 0xb1, 0xe5, 0xf5, 0x21, 0xc1, 0x73, 0x52, 0xa0, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_1797_privkey[] = { 0x80, 0x02, 0xa8, 0x51, 0x15, 0xad, 0x7b, 0x41, 0xc5, 0x0f, 0x84, 0xf3, 0x5f, 0xac, 0x75, 0x0e, 0xe8, 0xe1, 0x97, 0x34, 0x80, 0x71, 0x02, 0x83, 0x0f, 0xf6, 0xa3, 0x06, 0xbe, 0xed, 0x44, 0x64, }; static const unsigned char xdh_wei25519_1797_sharedsecret[] = { 0x22, 0x6e, 0x16, 0xa2, 0x79, 0xac, 0x81, 0xe2, 0x68, 0x43, 0x7e, 0xb3, 0xe0, 0x9e, 0x07, 0x40, 0x63, 0x24, 0xcb, 0x72, 0xa9, 0xd4, 0xee, 0x58, 0xe4, 0xcf, 0x00, 0x91, 0x47, 0x49, 0x72, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1797 = { .name = "xdh_wei25519_1797", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1797_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1797_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1797_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 233 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1798 for XDH, tcId is 234 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1798_peerpubkey[] = { 0x80, 0x64, 0x2a, 0x32, 0x79, 0xda, 0x6b, 0xf5, 0xfc, 0x13, 0xdb, 0x14, 0xa5, 0x69, 0xc7, 0x08, 0x9d, 0xb0, 0x14, 0x22, 0x5c, 0xfc, 0xae, 0x7d, 0xff, 0x5a, 0x0d, 0x25, 0xec, 0xc9, 0x23, 0x5b, }; static const unsigned char xdh_wei25519_1798_privkey[] = { 0x78, 0x2d, 0xb0, 0xc8, 0xe3, 0xe6, 0x8f, 0x10, 0x6f, 0xe0, 0xc5, 0x64, 0x15, 0xe0, 0xbd, 0x13, 0xd8, 0x12, 0xde, 0xa0, 0xe9, 0x4c, 0xbd, 0x18, 0xbd, 0xf6, 0x76, 0x12, 0x95, 0x61, 0x3a, 0x6d, }; static const unsigned char xdh_wei25519_1798_sharedsecret[] = { 0x79, 0x0d, 0x09, 0xb1, 0x72, 0x6d, 0x21, 0x09, 0x57, 0xce, 0x8f, 0x65, 0x86, 0x9c, 0xa1, 0xec, 0x8f, 0xa0, 0xb2, 0xb0, 0x6b, 0x6b, 0xcf, 0x94, 0x83, 0xb3, 0xeb, 0x55, 0xe4, 0x9e, 0x92, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1798 = { .name = "xdh_wei25519_1798", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1798_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1798_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1798_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 234 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1799 for XDH, tcId is 235 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1799_peerpubkey[] = { 0x84, 0xe8, 0x27, 0xf7, 0x8c, 0xae, 0x0c, 0xf0, 0x63, 0xe4, 0x34, 0x01, 0x98, 0xf7, 0x88, 0xc2, 0x84, 0xe0, 0x74, 0x30, 0xb3, 0xa9, 0x4a, 0x38, 0x73, 0xdf, 0x38, 0xb1, 0xf8, 0x72, 0xce, 0x02, }; static const unsigned char xdh_wei25519_1799_privkey[] = { 0x90, 0x9f, 0xb0, 0xbd, 0xbf, 0x53, 0xa6, 0x9a, 0x2f, 0xe3, 0x9c, 0x8b, 0x24, 0x97, 0xab, 0xd4, 0xfa, 0x57, 0xd2, 0xd5, 0x4e, 0x04, 0x6b, 0x5f, 0x51, 0x45, 0x95, 0xe2, 0xc0, 0xf3, 0x3d, 0x63, }; static const unsigned char xdh_wei25519_1799_sharedsecret[] = { 0x68, 0x4c, 0xc8, 0x3a, 0xf8, 0x06, 0xbc, 0xd9, 0xcd, 0x25, 0x1e, 0x18, 0x58, 0xf3, 0xc1, 0x0f, 0x01, 0x66, 0xe0, 0xa0, 0xcd, 0x2b, 0xe1, 0x54, 0x33, 0x9a, 0x88, 0x6b, 0x13, 0xe7, 0xc7, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1799 = { .name = "xdh_wei25519_1799", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1799_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1799_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1799_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 235 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1800 for XDH, tcId is 236 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1800_peerpubkey[] = { 0xd4, 0x45, 0xe1, 0xdf, 0x00, 0x83, 0xbb, 0x6b, 0x8e, 0x88, 0x6e, 0x66, 0x32, 0x25, 0x18, 0x07, 0x17, 0x1d, 0x4e, 0x88, 0xc4, 0x18, 0x16, 0xfc, 0x68, 0x43, 0x73, 0xc0, 0x9d, 0x7e, 0x5d, 0x6e, }; static const unsigned char xdh_wei25519_1800_privkey[] = { 0x78, 0xa6, 0x79, 0x09, 0x75, 0x72, 0x48, 0x66, 0x5f, 0x79, 0x37, 0x1e, 0xb0, 0x14, 0x82, 0x5a, 0xb6, 0xbd, 0x4a, 0xf3, 0x57, 0x1f, 0x14, 0x03, 0x89, 0xc6, 0x36, 0xe0, 0x04, 0xbc, 0xf4, 0x6b, }; static const unsigned char xdh_wei25519_1800_sharedsecret[] = { 0xe4, 0x26, 0xe4, 0xa3, 0xc5, 0x4d, 0x3e, 0x77, 0xf4, 0xf1, 0x57, 0x30, 0x1e, 0x0a, 0xc7, 0xd9, 0xe1, 0x23, 0x37, 0xa2, 0xb5, 0x8d, 0xf1, 0x67, 0x80, 0x04, 0x1c, 0xf6, 0xd6, 0x19, 0x8c, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1800 = { .name = "xdh_wei25519_1800", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1800_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1800_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1800_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 236 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1801 for XDH, tcId is 237 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1801_peerpubkey[] = { 0xf2, 0x6a, 0xa6, 0x15, 0x1a, 0x4b, 0x22, 0x39, 0x01, 0x76, 0xf6, 0x23, 0x3e, 0x74, 0x2f, 0x40, 0xf2, 0xec, 0xd5, 0x13, 0x71, 0x66, 0xfb, 0x2e, 0x1e, 0xc9, 0xb2, 0xf2, 0x45, 0x4a, 0xc2, 0x77, }; static const unsigned char xdh_wei25519_1801_privkey[] = { 0x28, 0x6a, 0x30, 0x2d, 0x5b, 0x07, 0x6d, 0x2a, 0xba, 0x7c, 0x2a, 0x4d, 0xaf, 0x9e, 0x7c, 0xc9, 0xd8, 0x53, 0x9b, 0x7c, 0x03, 0x91, 0x30, 0x7d, 0xb6, 0x5a, 0x2f, 0x42, 0x20, 0xd3, 0x0f, 0x70, }; static const unsigned char xdh_wei25519_1801_sharedsecret[] = { 0x86, 0x2d, 0xf9, 0x2e, 0x25, 0x27, 0x7b, 0xd9, 0x4f, 0x9a, 0xf2, 0xe1, 0xdd, 0xa5, 0x1f, 0x90, 0x5a, 0x6e, 0x2a, 0x3f, 0x60, 0x68, 0xa9, 0x2f, 0xab, 0xfc, 0x6c, 0x53, 0xda, 0x21, 0xec, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1801 = { .name = "xdh_wei25519_1801", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1801_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1801_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1801_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 237 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1802 for XDH, tcId is 238 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1802_peerpubkey[] = { 0x2b, 0x02, 0xdb, 0x3c, 0x82, 0x47, 0x7f, 0xe2, 0x1a, 0xa7, 0xa9, 0x4d, 0x85, 0xdf, 0x37, 0x9f, 0x57, 0x1c, 0x84, 0x49, 0xb4, 0x3c, 0xbd, 0x06, 0x05, 0xd0, 0xac, 0xc5, 0x3c, 0x47, 0x2f, 0x05, }; static const unsigned char xdh_wei25519_1802_privkey[] = { 0xa8, 0x38, 0xb7, 0x0d, 0x17, 0x16, 0x1c, 0xb3, 0x82, 0x22, 0xf7, 0xbc, 0x69, 0xa3, 0xc8, 0x57, 0x60, 0x32, 0xd5, 0x80, 0x27, 0x5b, 0x3b, 0x7d, 0x63, 0xfb, 0xa0, 0x89, 0x08, 0xcb, 0x48, 0x79, }; static const unsigned char xdh_wei25519_1802_sharedsecret[] = { 0x3f, 0x43, 0x8d, 0xbf, 0x03, 0x94, 0x79, 0x95, 0xc9, 0x9f, 0xd4, 0xcb, 0x36, 0x6c, 0xa7, 0xe0, 0x0e, 0x8c, 0xfb, 0xce, 0x64, 0xc3, 0x03, 0x9c, 0x26, 0xd9, 0xfa, 0xd0, 0x0f, 0xa4, 0x9c, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1802 = { .name = "xdh_wei25519_1802", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1802_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1802_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1802_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 238 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1803 for XDH, tcId is 239 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1803_peerpubkey[] = { 0xd7, 0x1d, 0xd7, 0xdb, 0x12, 0x23, 0x30, 0xc9, 0xbb, 0xaa, 0xb5, 0xda, 0x6c, 0xf1, 0xf6, 0xe1, 0xc2, 0x53, 0x45, 0xee, 0x6a, 0x66, 0xb1, 0x75, 0x12, 0xb1, 0x80, 0x4a, 0xce, 0x28, 0x73, 0x59, }; static const unsigned char xdh_wei25519_1803_privkey[] = { 0xb0, 0x73, 0x3b, 0x42, 0x03, 0x26, 0x7a, 0xb3, 0xc9, 0x4c, 0x50, 0x6a, 0xca, 0xdb, 0x94, 0x9a, 0x76, 0xcc, 0x60, 0x04, 0x86, 0xfc, 0xd6, 0x01, 0x47, 0x8f, 0xcd, 0xef, 0x79, 0xc2, 0x9d, 0x6c, }; static const unsigned char xdh_wei25519_1803_sharedsecret[] = { 0x95, 0xf3, 0xf1, 0x84, 0x9b, 0x0a, 0x07, 0x01, 0x84, 0xe6, 0x07, 0x7c, 0x92, 0xae, 0x36, 0xba, 0x33, 0x24, 0xbf, 0x14, 0x41, 0x16, 0x8b, 0x89, 0xbb, 0x4b, 0x91, 0x67, 0xed, 0xd6, 0x73, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1803 = { .name = "xdh_wei25519_1803", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1803_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1803_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1803_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 239 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1804 for XDH, tcId is 240 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1804_peerpubkey[] = { 0x73, 0x7b, 0xc0, 0x7d, 0xe0, 0x72, 0x9b, 0xbc, 0xfb, 0xee, 0x3a, 0x08, 0xe6, 0x96, 0xf9, 0x7f, 0x37, 0x70, 0x57, 0x7e, 0x4b, 0x01, 0xec, 0x10, 0x8f, 0x59, 0xca, 0xf4, 0x64, 0x06, 0xd2, 0x05, }; static const unsigned char xdh_wei25519_1804_privkey[] = { 0xd8, 0x44, 0xa3, 0x6b, 0x58, 0xae, 0xfd, 0xb0, 0x8b, 0x98, 0x17, 0x96, 0x02, 0x9a, 0x27, 0x66, 0x10, 0x18, 0x84, 0xb3, 0x48, 0xf7, 0x0e, 0xed, 0x94, 0x7c, 0x25, 0x41, 0x06, 0x4c, 0xaf, 0x6a, }; static const unsigned char xdh_wei25519_1804_sharedsecret[] = { 0x6a, 0x96, 0x9a, 0xf6, 0xd2, 0x36, 0xab, 0xa0, 0x8f, 0xa8, 0x31, 0x60, 0xf6, 0x99, 0xe9, 0xed, 0x76, 0xfb, 0x63, 0x55, 0xf0, 0x66, 0x2f, 0x03, 0xdb, 0xc5, 0x91, 0x5a, 0x3c, 0x23, 0x06, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1804 = { .name = "xdh_wei25519_1804", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1804_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1804_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1804_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 240 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1805 for XDH, tcId is 241 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1805_peerpubkey[] = { 0x97, 0x58, 0x06, 0x1a, 0x7b, 0x3e, 0x2c, 0x02, 0xfb, 0x5c, 0x20, 0x87, 0x5a, 0xe6, 0xb5, 0x5b, 0x11, 0xfb, 0x67, 0x95, 0x99, 0x0a, 0x0f, 0x4f, 0xdc, 0xd1, 0x14, 0x7b, 0xe5, 0x52, 0x16, 0x07, }; static const unsigned char xdh_wei25519_1805_privkey[] = { 0xa0, 0xb7, 0xd3, 0x12, 0xd9, 0xb8, 0x32, 0xe1, 0x24, 0xd1, 0xbc, 0x8c, 0xb2, 0x1d, 0xb5, 0x45, 0x44, 0x0e, 0x3c, 0xf1, 0x4e, 0x74, 0x73, 0xee, 0x9c, 0xcb, 0xe9, 0xb6, 0x82, 0xf2, 0x15, 0x6c, }; static const unsigned char xdh_wei25519_1805_sharedsecret[] = { 0xab, 0x39, 0xdb, 0x4a, 0xa2, 0x9a, 0xc4, 0x01, 0x7c, 0x74, 0x46, 0xf1, 0xad, 0x0c, 0x7d, 0xaa, 0x9a, 0x37, 0xf1, 0xb6, 0xb4, 0xf2, 0xe9, 0xd2, 0x90, 0x2c, 0xce, 0xfb, 0x84, 0x83, 0x9d, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1805 = { .name = "xdh_wei25519_1805", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1805_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1805_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1805_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 241 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1806 for XDH, tcId is 242 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1806_peerpubkey[] = { 0x37, 0xcd, 0x65, 0xd3, 0x30, 0x36, 0x20, 0x5f, 0x34, 0x49, 0xe8, 0x65, 0x5a, 0x50, 0xd4, 0xb0, 0xc8, 0x6f, 0xec, 0x02, 0x10, 0x0b, 0x4f, 0x2d, 0xb7, 0xda, 0x92, 0xdc, 0xf5, 0xe3, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_1806_privkey[] = { 0x78, 0x7f, 0x1d, 0xdd, 0x78, 0xcc, 0x64, 0x73, 0xd3, 0xe6, 0x39, 0x49, 0x40, 0x9a, 0xd3, 0xf3, 0x5b, 0xfe, 0x0c, 0xe0, 0x73, 0x8f, 0x25, 0x5d, 0xee, 0x68, 0x2f, 0x2b, 0xfb, 0xc8, 0x0f, 0x7f, }; static const unsigned char xdh_wei25519_1806_sharedsecret[] = { 0x13, 0xde, 0x41, 0x65, 0x9e, 0x3e, 0x30, 0x8d, 0x6e, 0x26, 0xc9, 0x42, 0x82, 0xfc, 0xc3, 0xe0, 0x36, 0x4d, 0xdf, 0x08, 0x09, 0xdd, 0xee, 0x6c, 0x8e, 0x7a, 0xbb, 0x50, 0x91, 0xb0, 0x2b, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_1806 = { .name = "xdh_wei25519_1806", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1806_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1806_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1806_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 242 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1807 for XDH, tcId is 243 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1807_peerpubkey[] = { 0xa9, 0xb6, 0xe8, 0x08, 0x14, 0x60, 0x38, 0x3a, 0xdc, 0x58, 0x7c, 0x8f, 0x91, 0xa0, 0x2c, 0x59, 0xa7, 0xa3, 0x55, 0x76, 0xca, 0x62, 0x43, 0x6c, 0xcd, 0x1b, 0x5f, 0xef, 0x1b, 0x92, 0x54, 0x5d, }; static const unsigned char xdh_wei25519_1807_privkey[] = { 0x40, 0x80, 0xae, 0x60, 0xa8, 0x5c, 0x1f, 0xa9, 0x5a, 0xad, 0x9b, 0xea, 0xbd, 0x98, 0xb4, 0x05, 0xe7, 0xf2, 0x81, 0x41, 0xbf, 0x08, 0xf2, 0xc9, 0xa4, 0xfd, 0xbd, 0xe1, 0xc5, 0x68, 0x02, 0x65, }; static const unsigned char xdh_wei25519_1807_sharedsecret[] = { 0x69, 0xed, 0x8a, 0x0a, 0x27, 0x81, 0x2a, 0xe6, 0x74, 0x14, 0x74, 0xbd, 0x5c, 0x6a, 0x4e, 0x68, 0x3a, 0x12, 0x66, 0x49, 0xf7, 0x24, 0x5a, 0xa0, 0xf9, 0x1a, 0x3a, 0x38, 0x4b, 0xcd, 0xe2, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1807 = { .name = "xdh_wei25519_1807", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1807_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1807_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1807_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 243 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1808 for XDH, tcId is 244 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1808_peerpubkey[] = { 0xfd, 0x1a, 0x2c, 0xd1, 0x7a, 0x93, 0xf8, 0x50, 0xde, 0xb8, 0xc4, 0x5a, 0x2d, 0x34, 0x53, 0x92, 0x32, 0xdf, 0xd8, 0xa5, 0x58, 0x30, 0x42, 0x09, 0x78, 0x1c, 0x6c, 0xb5, 0x82, 0x29, 0x87, 0x0e, }; static const unsigned char xdh_wei25519_1808_privkey[] = { 0x08, 0xf9, 0xf4, 0xa4, 0xfa, 0xc4, 0xdb, 0x41, 0x33, 0x15, 0xf7, 0x4a, 0x59, 0x81, 0x8b, 0x24, 0x52, 0xfc, 0x7b, 0x76, 0x85, 0x59, 0x2e, 0x26, 0x55, 0x67, 0x75, 0xf9, 0xb8, 0x6d, 0x90, 0x7f, }; static const unsigned char xdh_wei25519_1808_sharedsecret[] = { 0x01, 0x02, 0x18, 0xbd, 0x67, 0xb1, 0xb9, 0x2f, 0xee, 0x3e, 0x7f, 0xa4, 0x57, 0x8c, 0x13, 0x61, 0x7d, 0x73, 0x19, 0x5d, 0xe1, 0x02, 0x79, 0x74, 0x7e, 0x53, 0xba, 0x01, 0xa2, 0x54, 0x52, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1808 = { .name = "xdh_wei25519_1808", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1808_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1808_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1808_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 244 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1809 for XDH, tcId is 245 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1809_peerpubkey[] = { 0xb8, 0x81, 0x19, 0xe5, 0xae, 0x6d, 0x9e, 0x6b, 0x91, 0x2d, 0x52, 0x52, 0x47, 0x39, 0xe6, 0x12, 0xef, 0x19, 0xab, 0x7e, 0x5d, 0xd3, 0xd9, 0x46, 0xcb, 0x9b, 0xc0, 0x03, 0xc3, 0x78, 0xf8, 0x1f, }; static const unsigned char xdh_wei25519_1809_privkey[] = { 0x18, 0x88, 0xcf, 0xae, 0x30, 0x85, 0x86, 0x76, 0x57, 0xb0, 0x94, 0x35, 0xc4, 0x2b, 0x74, 0xcc, 0x76, 0x24, 0x57, 0x83, 0x94, 0x51, 0xa3, 0x65, 0x9d, 0xb2, 0x18, 0xd4, 0x21, 0x4f, 0xdd, 0x63, }; static const unsigned char xdh_wei25519_1809_sharedsecret[] = { 0xe6, 0xb2, 0x98, 0xde, 0x9c, 0xb6, 0x35, 0x8f, 0xbb, 0xb0, 0x0f, 0x11, 0x89, 0x0f, 0x57, 0x14, 0xa3, 0x85, 0x8e, 0x8f, 0x05, 0xa2, 0xa8, 0xd1, 0xcf, 0x39, 0xfe, 0x78, 0xcc, 0x55, 0xdd, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1809 = { .name = "xdh_wei25519_1809", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1809_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1809_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1809_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 245 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1810 for XDH, tcId is 246 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1810_peerpubkey[] = { 0x7b, 0x70, 0xe2, 0x9d, 0xce, 0x04, 0x79, 0xcd, 0xe4, 0xa3, 0x6c, 0x7f, 0x97, 0x86, 0x58, 0x2f, 0x10, 0x4b, 0xc0, 0x78, 0x8f, 0x04, 0x6b, 0x48, 0xaf, 0x49, 0x5e, 0x67, 0xbd, 0xb8, 0x8f, 0x36, }; static const unsigned char xdh_wei25519_1810_privkey[] = { 0x78, 0x9c, 0xe1, 0x3e, 0xd0, 0x07, 0x81, 0x8d, 0x7a, 0x51, 0x81, 0xe6, 0x29, 0xee, 0xd9, 0x44, 0xa2, 0x0a, 0x05, 0x8c, 0xfe, 0x39, 0x66, 0x9c, 0x98, 0x31, 0xbf, 0xa5, 0x21, 0x5a, 0x12, 0x69, }; static const unsigned char xdh_wei25519_1810_sharedsecret[] = { 0x96, 0x7b, 0xbe, 0x29, 0x84, 0x94, 0xb4, 0xa5, 0xf9, 0x58, 0x53, 0xcf, 0xde, 0x9d, 0xc8, 0x59, 0x70, 0xb2, 0xa4, 0xb5, 0xdd, 0x2c, 0x92, 0x78, 0x29, 0x01, 0xe8, 0x53, 0x95, 0x7f, 0x58, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_1810 = { .name = "xdh_wei25519_1810", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1810_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1810_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1810_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 246 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1811 for XDH, tcId is 247 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1811_peerpubkey[] = { 0x2a, 0x20, 0x9e, 0x2a, 0xce, 0x0e, 0x3d, 0x69, 0x73, 0xff, 0xbf, 0x74, 0x03, 0xf9, 0x85, 0x7f, 0xf9, 0x7a, 0x5f, 0xdc, 0xd2, 0x7f, 0x2c, 0x70, 0x98, 0xb4, 0x44, 0xfc, 0x3c, 0x16, 0x67, 0x38, }; static const unsigned char xdh_wei25519_1811_privkey[] = { 0x00, 0x02, 0x2b, 0x43, 0x77, 0x5a, 0xb2, 0xf4, 0xb9, 0x1b, 0xc1, 0xcb, 0x54, 0xc9, 0x7f, 0x78, 0x02, 0x62, 0x89, 0xea, 0xaf, 0x02, 0xab, 0xee, 0xd0, 0x4c, 0xa8, 0x4f, 0x73, 0x6c, 0x68, 0x6c, }; static const unsigned char xdh_wei25519_1811_sharedsecret[] = { 0x9f, 0x66, 0x84, 0x86, 0x81, 0xd5, 0x34, 0xe5, 0x2b, 0x65, 0x99, 0x46, 0xea, 0x2c, 0x92, 0xd2, 0xfa, 0xbe, 0xd4, 0x3f, 0xe6, 0xe6, 0x90, 0x32, 0xc1, 0x11, 0x53, 0xdb, 0x43, 0xdc, 0xa7, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1811 = { .name = "xdh_wei25519_1811", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1811_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1811_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1811_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 247 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1812 for XDH, tcId is 248 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1812_peerpubkey[] = { 0xf5, 0x07, 0x09, 0xac, 0xa7, 0xf3, 0x14, 0xe8, 0xd0, 0x5b, 0x5f, 0xf9, 0x7a, 0x42, 0x7e, 0x42, 0x7b, 0xd5, 0xe8, 0x5c, 0x4e, 0x86, 0x71, 0x21, 0x25, 0x07, 0x6a, 0x77, 0x1b, 0xe2, 0x14, 0x48, }; static const unsigned char xdh_wei25519_1812_privkey[] = { 0x80, 0x97, 0xa5, 0x2f, 0xc5, 0x62, 0xe8, 0xa5, 0x16, 0x68, 0x2f, 0x53, 0x63, 0xcc, 0x5e, 0x7c, 0x88, 0xe9, 0xc7, 0x8e, 0x30, 0x8d, 0xf0, 0xde, 0xef, 0x40, 0x49, 0x7b, 0x35, 0xcc, 0x12, 0x7d, }; static const unsigned char xdh_wei25519_1812_sharedsecret[] = { 0xea, 0x75, 0x72, 0xe2, 0x7a, 0x91, 0x20, 0xde, 0x1f, 0x13, 0xb8, 0x57, 0x10, 0xba, 0x69, 0xa3, 0x47, 0x1b, 0x7b, 0x3f, 0x5d, 0x12, 0xbc, 0x43, 0x0c, 0x12, 0xc4, 0xbb, 0xf8, 0xaa, 0x39, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1812 = { .name = "xdh_wei25519_1812", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1812_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1812_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1812_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 248 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1813 for XDH, tcId is 249 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1813_peerpubkey[] = { 0x0f, 0x13, 0x95, 0x59, 0x78, 0xb9, 0x3d, 0x7b, 0x9f, 0x9a, 0x2e, 0x70, 0xd9, 0x6d, 0xf9, 0x22, 0x85, 0x0a, 0x8f, 0xfd, 0x84, 0x12, 0xe2, 0x36, 0xfb, 0x07, 0x4a, 0xef, 0x99, 0xd3, 0x7d, 0x54, }; static const unsigned char xdh_wei25519_1813_privkey[] = { 0x40, 0x28, 0x80, 0x20, 0x30, 0xd8, 0xa8, 0x22, 0x1a, 0x71, 0x60, 0xee, 0xbb, 0xf1, 0x84, 0x61, 0x16, 0xc1, 0xc2, 0x53, 0xab, 0xc4, 0x67, 0xd6, 0xe4, 0x3c, 0xb8, 0x50, 0xf1, 0x45, 0x98, 0x60, }; static const unsigned char xdh_wei25519_1813_sharedsecret[] = { 0xe2, 0x3d, 0x63, 0xa4, 0x6b, 0xe6, 0x7c, 0x74, 0x43, 0xc0, 0x7b, 0x93, 0x71, 0xff, 0x6a, 0x06, 0xaf, 0xcd, 0x7a, 0x57, 0x94, 0xbf, 0x25, 0x37, 0x92, 0x60, 0x74, 0xb8, 0x81, 0x90, 0x30, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1813 = { .name = "xdh_wei25519_1813", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1813_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1813_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1813_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 249 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1814 for XDH, tcId is 250 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1814_peerpubkey[] = { 0x18, 0xff, 0xe9, 0x92, 0xa7, 0x29, 0xce, 0x70, 0xc3, 0xb7, 0xcd, 0xc5, 0x5b, 0xab, 0x55, 0xf2, 0x21, 0x0d, 0x27, 0x91, 0x34, 0xb3, 0x08, 0x2a, 0x9f, 0x68, 0x2d, 0x3a, 0x0b, 0x13, 0x12, 0x73, }; static const unsigned char xdh_wei25519_1814_privkey[] = { 0xd8, 0x51, 0x5d, 0x45, 0xc7, 0xab, 0x2b, 0x95, 0x29, 0x81, 0x65, 0x43, 0x15, 0x00, 0x68, 0xb8, 0xe4, 0xbb, 0x61, 0x4c, 0xf2, 0xb6, 0x8a, 0x8a, 0x99, 0x36, 0x39, 0x75, 0xaf, 0x50, 0x3d, 0x74, }; static const unsigned char xdh_wei25519_1814_sharedsecret[] = { 0x33, 0xcc, 0xaf, 0x24, 0xe1, 0xe2, 0x62, 0x90, 0xed, 0x7e, 0x46, 0x20, 0x93, 0xe9, 0xf7, 0x76, 0x07, 0xef, 0x52, 0xa0, 0x62, 0x6b, 0x2c, 0xd2, 0x51, 0x1c, 0x41, 0xcd, 0x24, 0xc1, 0x38, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1814 = { .name = "xdh_wei25519_1814", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1814_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1814_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1814_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 250 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1815 for XDH, tcId is 251 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1815_peerpubkey[] = { 0xc3, 0xba, 0x28, 0x05, 0x77, 0x28, 0xd0, 0x53, 0x39, 0x65, 0xec, 0x34, 0x97, 0x9f, 0xe7, 0xbd, 0x93, 0xcf, 0x6c, 0xb6, 0x44, 0xe8, 0xda, 0x03, 0x8b, 0xaa, 0x87, 0x99, 0x7b, 0x8d, 0xc2, 0x0e, }; static const unsigned char xdh_wei25519_1815_privkey[] = { 0xd8, 0x81, 0x5b, 0xd1, 0x44, 0x51, 0x8f, 0xa5, 0x26, 0xbe, 0xfd, 0xd3, 0x73, 0xf5, 0xf9, 0xcf, 0xf2, 0x54, 0xd5, 0xd3, 0xc4, 0x66, 0x0e, 0x8a, 0x90, 0xef, 0x2a, 0x22, 0xc6, 0x87, 0x6a, 0x74, }; static const unsigned char xdh_wei25519_1815_sharedsecret[] = { 0x74, 0xf9, 0x5b, 0x47, 0x00, 0xf0, 0x18, 0x5f, 0x33, 0xc5, 0xb5, 0x52, 0x8e, 0xd5, 0x01, 0x2a, 0x33, 0x63, 0xf8, 0xbb, 0xd6, 0xf6, 0xa8, 0x40, 0xaa, 0x1f, 0x0f, 0x3b, 0xdb, 0x7c, 0x96, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1815 = { .name = "xdh_wei25519_1815", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1815_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1815_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1815_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 251 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1816 for XDH, tcId is 252 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1816_peerpubkey[] = { 0x4e, 0xb0, 0x95, 0xa8, 0x6d, 0x1e, 0x78, 0x1b, 0xb1, 0x82, 0x23, 0x30, 0x75, 0xeb, 0xf1, 0xdb, 0x10, 0x9d, 0x57, 0x13, 0x5b, 0xf9, 0x1d, 0x54, 0xfd, 0xb1, 0x8e, 0xb3, 0x71, 0x42, 0x76, 0x40, }; static const unsigned char xdh_wei25519_1816_privkey[] = { 0xa8, 0x2d, 0x99, 0x60, 0x93, 0xee, 0xfd, 0xaf, 0x28, 0x3f, 0x40, 0x49, 0xbb, 0xa4, 0xf5, 0xaf, 0x6e, 0xcc, 0x2e, 0x64, 0x89, 0x4f, 0x32, 0x5e, 0xe1, 0xf9, 0xca, 0x1e, 0x15, 0x6d, 0x05, 0x67, }; static const unsigned char xdh_wei25519_1816_sharedsecret[] = { 0xe9, 0x67, 0x7b, 0x85, 0x48, 0x51, 0xc4, 0x1c, 0xc4, 0x89, 0xe0, 0x39, 0x81, 0xae, 0x78, 0x69, 0x0b, 0xe6, 0xcb, 0xf0, 0x05, 0x4e, 0xa9, 0x83, 0x47, 0x59, 0xde, 0x3e, 0x27, 0xbc, 0xf0, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1816 = { .name = "xdh_wei25519_1816", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1816_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1816_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1816_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 252 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1817 for XDH, tcId is 253 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1817_peerpubkey[] = { 0x83, 0xf6, 0x7d, 0x7c, 0x92, 0xb1, 0x1c, 0x8f, 0xb0, 0x72, 0x48, 0x46, 0x42, 0xa0, 0x1f, 0x43, 0xde, 0xb0, 0x22, 0xb5, 0x4d, 0x94, 0xa4, 0x01, 0x5e, 0x39, 0x84, 0x9a, 0x2e, 0x2e, 0x95, 0x55, }; static const unsigned char xdh_wei25519_1817_privkey[] = { 0xc0, 0x26, 0x09, 0xdf, 0x3d, 0x54, 0x36, 0xc1, 0x23, 0xdc, 0xd7, 0xee, 0x11, 0xf2, 0x3f, 0x1d, 0xa3, 0x21, 0x66, 0x6c, 0x09, 0xf3, 0x79, 0xd3, 0x79, 0x14, 0x20, 0x33, 0x40, 0x51, 0x08, 0x61, }; static const unsigned char xdh_wei25519_1817_sharedsecret[] = { 0xf1, 0x48, 0x71, 0x6e, 0xbe, 0x72, 0x69, 0xa7, 0x07, 0x6f, 0x0c, 0xf1, 0xf2, 0x2b, 0x69, 0x78, 0xd3, 0xc7, 0xe3, 0x60, 0x7b, 0x0b, 0xcc, 0x87, 0xa8, 0xc7, 0xa8, 0x5b, 0x9f, 0xd2, 0x0c, 0x2f, }; static const wycheproof_xdh_test xdh_wei25519_1817 = { .name = "xdh_wei25519_1817", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1817_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1817_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1817_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 253 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1818 for XDH, tcId is 254 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1818_peerpubkey[] = { 0x20, 0xcc, 0x75, 0xd3, 0x76, 0xd8, 0x45, 0x3b, 0x9d, 0x04, 0x9c, 0x84, 0xf5, 0x8e, 0xaf, 0xcf, 0x61, 0x12, 0x6c, 0x08, 0xa0, 0x36, 0x61, 0xe7, 0x35, 0xf0, 0xa8, 0xbe, 0x22, 0x8f, 0xd4, 0x66, }; static const unsigned char xdh_wei25519_1818_privkey[] = { 0xa0, 0xe3, 0xb7, 0x8c, 0x0f, 0x3b, 0xe2, 0xa7, 0x60, 0xb2, 0xc9, 0x16, 0xf2, 0x44, 0xdf, 0x21, 0x96, 0x24, 0xfd, 0xda, 0x2e, 0x9e, 0x31, 0xb1, 0x53, 0x28, 0xf4, 0xa7, 0x76, 0x90, 0x29, 0x6a, }; static const unsigned char xdh_wei25519_1818_sharedsecret[] = { 0x1d, 0x5c, 0x12, 0x3e, 0x88, 0xe9, 0xdc, 0x7a, 0x3b, 0x16, 0xec, 0x90, 0xb6, 0x05, 0x78, 0xdf, 0xca, 0x7e, 0x11, 0xea, 0xb9, 0xb8, 0x8c, 0x6e, 0xca, 0x7b, 0xc3, 0x3d, 0x91, 0xfd, 0xe8, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1818 = { .name = "xdh_wei25519_1818", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1818_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1818_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1818_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 254 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1819 for XDH, tcId is 255 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1819_peerpubkey[] = { 0xef, 0x31, 0xb4, 0x3d, 0x19, 0xc0, 0xa5, 0x43, 0x4d, 0xeb, 0x56, 0x12, 0x9c, 0x16, 0x29, 0x8a, 0x39, 0x4a, 0x70, 0x32, 0xa2, 0xe5, 0x2c, 0xb9, 0x97, 0x47, 0x6b, 0xde, 0xca, 0x32, 0x5b, 0x73, }; static const unsigned char xdh_wei25519_1819_privkey[] = { 0x70, 0x1f, 0x13, 0x0a, 0x29, 0x05, 0x84, 0xcb, 0x28, 0xc7, 0xd6, 0x53, 0x95, 0x06, 0xa1, 0xa0, 0x54, 0xf9, 0x26, 0xa1, 0x7e, 0xf7, 0xc5, 0x68, 0xae, 0x43, 0x04, 0x7c, 0x05, 0xe1, 0x0f, 0x60, }; static const unsigned char xdh_wei25519_1819_sharedsecret[] = { 0x2f, 0xc0, 0x65, 0xba, 0x8f, 0x50, 0x40, 0xa0, 0xa6, 0x59, 0xf6, 0xf7, 0x33, 0x05, 0x54, 0xbd, 0x1b, 0x9d, 0x7c, 0x89, 0x3b, 0x91, 0xe3, 0x16, 0xe0, 0xaf, 0x90, 0xc3, 0x7a, 0xf4, 0xf1, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1819 = { .name = "xdh_wei25519_1819", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1819_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1819_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1819_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 255 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1820 for XDH, tcId is 256 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1820_peerpubkey[] = { 0xd8, 0xc8, 0xe2, 0xc6, 0xf3, 0x3a, 0x98, 0x52, 0x5d, 0xf3, 0x76, 0x7d, 0x1d, 0x04, 0x43, 0x0d, 0xab, 0x0b, 0xda, 0x41, 0xf1, 0xf9, 0x04, 0xc9, 0x5b, 0xc6, 0x1c, 0xc1, 0x22, 0xca, 0xca, 0x74, }; static const unsigned char xdh_wei25519_1820_privkey[] = { 0xd0, 0xe6, 0x7f, 0x68, 0x18, 0x3a, 0x4c, 0x1a, 0xed, 0x9c, 0x56, 0x86, 0x4b, 0x36, 0x27, 0x8b, 0xb7, 0xbb, 0x75, 0xd5, 0x7a, 0x78, 0x32, 0x1b, 0xc7, 0xc2, 0x4f, 0xf6, 0x16, 0x36, 0x60, 0x7a, }; static const unsigned char xdh_wei25519_1820_sharedsecret[] = { 0xef, 0x76, 0x12, 0xc1, 0x56, 0x07, 0x8d, 0xae, 0x3a, 0x81, 0xe5, 0x0e, 0xf3, 0x39, 0x51, 0xca, 0xb6, 0x61, 0xfb, 0x07, 0x73, 0x1d, 0x8f, 0x41, 0x9b, 0xc0, 0x10, 0x5c, 0x4d, 0x6d, 0x60, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1820 = { .name = "xdh_wei25519_1820", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1820_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1820_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1820_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 256 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1821 for XDH, tcId is 257 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1821_peerpubkey[] = { 0x18, 0x33, 0x61, 0x95, 0x16, 0xb8, 0x0d, 0xb0, 0xc0, 0x5b, 0x22, 0x55, 0x09, 0xe6, 0x69, 0x8d, 0xf0, 0x28, 0xd8, 0x3b, 0x66, 0xed, 0x6b, 0xac, 0x6f, 0x0f, 0x63, 0x08, 0x97, 0x0d, 0x2c, 0x7d, }; static const unsigned char xdh_wei25519_1821_privkey[] = { 0x88, 0xeb, 0x77, 0x75, 0xda, 0xcc, 0x32, 0xb0, 0x45, 0xce, 0xb3, 0x5f, 0x26, 0x1b, 0x36, 0x16, 0x31, 0x5e, 0xfa, 0x98, 0xb7, 0x80, 0xe0, 0x8c, 0x79, 0xd5, 0x44, 0xed, 0xad, 0xb5, 0x46, 0x7d, }; static const unsigned char xdh_wei25519_1821_sharedsecret[] = { 0xa3, 0xcf, 0x3d, 0x81, 0xec, 0x56, 0x89, 0x6a, 0x68, 0xfc, 0xa0, 0xda, 0x63, 0x35, 0x17, 0x1d, 0x0c, 0x62, 0x25, 0x68, 0x73, 0x8c, 0x0d, 0xb2, 0x6f, 0xe1, 0x17, 0x03, 0x37, 0x26, 0xa0, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1821 = { .name = "xdh_wei25519_1821", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1821_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1821_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1821_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 257 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1822 for XDH, tcId is 258 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1822_peerpubkey[] = { 0xe2, 0xe9, 0x89, 0xaa, 0xd2, 0x39, 0x7f, 0xc3, 0x4b, 0x6c, 0xbe, 0x2d, 0xb2, 0x7d, 0x5a, 0xb6, 0x9b, 0x28, 0x04, 0x83, 0x83, 0xc9, 0x1d, 0x9e, 0x82, 0x26, 0xd5, 0x48, 0x25, 0x3f, 0xab, 0x7e, }; static const unsigned char xdh_wei25519_1822_privkey[] = { 0x70, 0x55, 0xb1, 0xc0, 0x57, 0x6e, 0x7a, 0xb6, 0xc8, 0x9f, 0xcc, 0x1c, 0xe4, 0x9e, 0x79, 0xc8, 0xc3, 0x71, 0xbf, 0x9f, 0xc2, 0xb2, 0x2b, 0x8f, 0x83, 0x96, 0xa9, 0xb6, 0x4c, 0x5a, 0xe2, 0x6d, }; static const unsigned char xdh_wei25519_1822_sharedsecret[] = { 0xe7, 0xf4, 0x58, 0x23, 0xa4, 0x5b, 0x6a, 0x46, 0x19, 0x2b, 0x37, 0xd7, 0x3e, 0x86, 0x09, 0xb5, 0xbd, 0xa6, 0x8c, 0xd7, 0xcf, 0xbd, 0xcc, 0xaa, 0x49, 0x08, 0x20, 0x80, 0x99, 0x3e, 0x64, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_1822 = { .name = "xdh_wei25519_1822", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1822_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1822_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1822_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 258 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1823 for XDH, tcId is 259 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1823_peerpubkey[] = { 0xb9, 0xbd, 0x79, 0x36, 0x24, 0xd6, 0xa7, 0xe8, 0x08, 0x48, 0x61, 0x10, 0x05, 0x88, 0x53, 0xed, 0xb2, 0x5e, 0x13, 0x6b, 0xd4, 0xd6, 0xa7, 0x95, 0xd6, 0xd2, 0xef, 0x53, 0xb2, 0x5e, 0x38, 0x04, }; static const unsigned char xdh_wei25519_1823_privkey[] = { 0x90, 0x6a, 0x9b, 0xfc, 0xfd, 0x71, 0x01, 0x4d, 0x18, 0x96, 0x76, 0x80, 0xd4, 0x50, 0x9e, 0xaa, 0x41, 0xc6, 0x66, 0x42, 0x4a, 0xf9, 0x8b, 0xf9, 0xff, 0x7f, 0xf4, 0x9e, 0xb1, 0xba, 0xba, 0x41, }; static const unsigned char xdh_wei25519_1823_sharedsecret[] = { 0x7c, 0x61, 0x48, 0x13, 0x4c, 0x9e, 0x8b, 0x2b, 0xa5, 0xda, 0xec, 0xa4, 0x1e, 0x6a, 0x1f, 0x3a, 0x82, 0xd8, 0xf7, 0x5d, 0x0b, 0x29, 0x2b, 0x23, 0xc4, 0x0f, 0xe7, 0xf5, 0xce, 0x0a, 0x2b, 0x7a, }; static const wycheproof_xdh_test xdh_wei25519_1823 = { .name = "xdh_wei25519_1823", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1823_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1823_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1823_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 259 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1824 for XDH, tcId is 260 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1824_peerpubkey[] = { 0xe3, 0xf4, 0x44, 0xe2, 0x08, 0xda, 0x90, 0x43, 0xf3, 0xf7, 0x4c, 0x20, 0xe2, 0x8d, 0x7f, 0x40, 0x4b, 0xb6, 0x87, 0xa3, 0x46, 0x70, 0x9a, 0xbc, 0xd5, 0x55, 0x15, 0x6f, 0x88, 0x60, 0x78, 0x20, }; static const unsigned char xdh_wei25519_1824_privkey[] = { 0x28, 0x39, 0x2b, 0x1b, 0x03, 0x5a, 0x84, 0x65, 0xaa, 0x22, 0xaa, 0xbb, 0x57, 0x10, 0x61, 0xc6, 0xef, 0xfe, 0xed, 0x40, 0xcc, 0x25, 0x30, 0xb6, 0x28, 0xe4, 0xfd, 0x40, 0x39, 0x5a, 0xe0, 0x4a, }; static const unsigned char xdh_wei25519_1824_sharedsecret[] = { 0xea, 0x5e, 0x77, 0x2b, 0xac, 0x46, 0x93, 0xce, 0x69, 0xea, 0x3a, 0xc7, 0x61, 0x01, 0x1f, 0xa7, 0x67, 0x40, 0x37, 0x65, 0x3a, 0x43, 0x3c, 0x7f, 0x05, 0x45, 0x6e, 0x72, 0x91, 0xcd, 0x3c, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1824 = { .name = "xdh_wei25519_1824", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1824_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1824_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1824_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 260 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1825 for XDH, tcId is 261 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1825_peerpubkey[] = { 0x87, 0xb4, 0x3f, 0x90, 0xf7, 0x6d, 0x12, 0xfb, 0x3a, 0x46, 0x9f, 0xa8, 0x68, 0x7c, 0x27, 0xe3, 0x69, 0xd4, 0xa8, 0x2f, 0x95, 0xcf, 0x95, 0xe8, 0xdc, 0x39, 0x70, 0xde, 0x8f, 0x86, 0xd9, 0x2b, }; static const unsigned char xdh_wei25519_1825_privkey[] = { 0x78, 0xcb, 0xb3, 0x52, 0x04, 0xcc, 0x88, 0x67, 0x6c, 0x14, 0xe0, 0xff, 0x18, 0x17, 0x13, 0x92, 0xe9, 0x98, 0x41, 0x1b, 0x23, 0xd9, 0x05, 0xd4, 0xc4, 0xdc, 0xea, 0xb7, 0x05, 0x11, 0xf4, 0x42, }; static const unsigned char xdh_wei25519_1825_sharedsecret[] = { 0x81, 0xc3, 0x95, 0xae, 0xd5, 0xcc, 0x5f, 0x5e, 0x2a, 0x20, 0x6a, 0x8a, 0x4c, 0xac, 0xec, 0xd5, 0x01, 0xdf, 0x5b, 0x81, 0xe4, 0x94, 0x33, 0x83, 0x5a, 0xd8, 0xa3, 0x77, 0x9e, 0xdf, 0xfb, 0x30, }; static const wycheproof_xdh_test xdh_wei25519_1825 = { .name = "xdh_wei25519_1825", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1825_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1825_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1825_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 261 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1826 for XDH, tcId is 262 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1826_peerpubkey[] = { 0x86, 0x44, 0x1e, 0xa0, 0x6c, 0x5c, 0xd2, 0xa3, 0x4c, 0x6b, 0x51, 0x26, 0x1e, 0x93, 0xa2, 0xf3, 0x0e, 0xa7, 0xdb, 0x0f, 0x74, 0xe1, 0x4c, 0x42, 0xf0, 0xfc, 0x44, 0x3c, 0x67, 0x35, 0x97, 0x3c, }; static const unsigned char xdh_wei25519_1826_privkey[] = { 0xa8, 0x22, 0x5b, 0x49, 0xef, 0x7b, 0x73, 0x30, 0xe3, 0xde, 0x78, 0x7c, 0xbc, 0x40, 0x47, 0x96, 0x44, 0xdb, 0x7a, 0xb1, 0x26, 0x37, 0x02, 0x95, 0xc9, 0x41, 0x89, 0x67, 0x34, 0x30, 0xd7, 0x45, }; static const unsigned char xdh_wei25519_1826_sharedsecret[] = { 0x51, 0x3e, 0xba, 0x58, 0x70, 0xdc, 0x51, 0x87, 0xe2, 0x55, 0x2f, 0xe3, 0xba, 0x82, 0x92, 0xb5, 0x16, 0xd2, 0xaf, 0x9e, 0xcb, 0x9a, 0x9b, 0xdc, 0x51, 0xea, 0xc2, 0xce, 0x2d, 0xe4, 0x01, 0x12, }; static const wycheproof_xdh_test xdh_wei25519_1826 = { .name = "xdh_wei25519_1826", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1826_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1826_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1826_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 262 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1827 for XDH, tcId is 263 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1827_peerpubkey[] = { 0x46, 0x24, 0xaa, 0x4a, 0xe9, 0xd1, 0x27, 0x25, 0xbf, 0x92, 0xb8, 0x5f, 0x93, 0xe3, 0xe8, 0xce, 0xa1, 0x6b, 0x7b, 0xd8, 0x3f, 0xda, 0x0e, 0xb1, 0x8f, 0xab, 0x2d, 0xbe, 0x0e, 0x8b, 0xf7, 0x42, }; static const unsigned char xdh_wei25519_1827_privkey[] = { 0x08, 0x41, 0xe1, 0xa5, 0xc7, 0x42, 0x0b, 0x94, 0xb6, 0xcc, 0x69, 0x91, 0x31, 0x6e, 0xbd, 0xd6, 0x08, 0x62, 0x63, 0x39, 0xc0, 0x9d, 0x0f, 0x67, 0xb2, 0x40, 0x88, 0x58, 0x8b, 0x9d, 0x0d, 0x49, }; static const unsigned char xdh_wei25519_1827_sharedsecret[] = { 0x98, 0x3b, 0x7e, 0x23, 0x6f, 0xfa, 0xdd, 0xb4, 0xb7, 0x59, 0xb7, 0x35, 0x3f, 0xe8, 0x78, 0x46, 0xf5, 0x9f, 0xb6, 0xf2, 0x8a, 0x3e, 0xd6, 0x5c, 0x25, 0x61, 0x76, 0xb6, 0x60, 0x9b, 0x7c, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_1827 = { .name = "xdh_wei25519_1827", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1827_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1827_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1827_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 263 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1828 for XDH, tcId is 264 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1828_peerpubkey[] = { 0xa6, 0x25, 0xa5, 0xb7, 0xa0, 0x4c, 0xea, 0x46, 0x2d, 0x12, 0x3b, 0x48, 0x5c, 0x39, 0xea, 0x44, 0xa8, 0x07, 0x9a, 0xa2, 0x23, 0xc5, 0x9e, 0x9c, 0xa9, 0x7a, 0xbc, 0xd3, 0x0b, 0x50, 0x0e, 0x4b, }; static const unsigned char xdh_wei25519_1828_privkey[] = { 0x08, 0xec, 0xf7, 0x6e, 0x31, 0xa2, 0x30, 0x39, 0xea, 0x8a, 0x15, 0xee, 0x47, 0x4b, 0x62, 0x51, 0xa9, 0xd7, 0x25, 0xbf, 0xf1, 0xa5, 0x75, 0x1e, 0xb5, 0xec, 0xde, 0x9d, 0x7d, 0x4e, 0x2f, 0x49, }; static const unsigned char xdh_wei25519_1828_sharedsecret[] = { 0xc9, 0x41, 0x36, 0x9b, 0x08, 0x5c, 0x74, 0x65, 0xd5, 0x0d, 0x23, 0xce, 0xaf, 0x67, 0x17, 0xab, 0x06, 0xe2, 0x46, 0x38, 0xf2, 0x17, 0xa7, 0xb8, 0x05, 0x5c, 0xe8, 0xeb, 0xd3, 0xca, 0x12, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1828 = { .name = "xdh_wei25519_1828", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1828_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1828_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1828_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 264 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1829 for XDH, tcId is 265 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1829_peerpubkey[] = { 0x8a, 0x5f, 0x20, 0x63, 0xf2, 0x59, 0xf3, 0x31, 0x7a, 0xe3, 0xe0, 0xb4, 0x59, 0xf8, 0x2c, 0x46, 0x77, 0x66, 0x6e, 0x49, 0xa2, 0xeb, 0x9b, 0xf0, 0x36, 0x9a, 0xee, 0x66, 0x36, 0x31, 0x26, 0x5b, }; static const unsigned char xdh_wei25519_1829_privkey[] = { 0x60, 0x38, 0xfb, 0x0a, 0x83, 0x0d, 0x10, 0x01, 0xca, 0x8e, 0xa7, 0x4a, 0x61, 0x3e, 0xa9, 0x8f, 0x6a, 0xb8, 0x51, 0x26, 0x44, 0xe5, 0x5e, 0x8d, 0x45, 0xa2, 0x90, 0x71, 0xbd, 0x4b, 0xef, 0x45, }; static const unsigned char xdh_wei25519_1829_sharedsecret[] = { 0xa3, 0xf7, 0xe1, 0x69, 0xdb, 0x44, 0xd0, 0xd1, 0x79, 0xc2, 0x42, 0xe6, 0x63, 0x47, 0x36, 0x4a, 0xb9, 0x27, 0x44, 0xdc, 0x6a, 0xd8, 0x0e, 0x47, 0x75, 0xae, 0xf7, 0xf4, 0xff, 0x9d, 0x5f, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1829 = { .name = "xdh_wei25519_1829", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1829_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1829_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1829_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 265 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1830 for XDH, tcId is 266 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1830_peerpubkey[] = { 0x54, 0xcf, 0xb6, 0xad, 0x0d, 0x03, 0xe3, 0x11, 0x5a, 0xca, 0xfe, 0xe1, 0x26, 0x06, 0x39, 0x7f, 0x2b, 0xb4, 0x6a, 0x8c, 0x5f, 0x32, 0x6a, 0x25, 0x5c, 0x49, 0x41, 0x18, 0xae, 0xad, 0x3b, 0x62, }; static const unsigned char xdh_wei25519_1830_privkey[] = { 0xc0, 0x4c, 0xf1, 0x29, 0xf0, 0xb3, 0x33, 0x32, 0xe2, 0x65, 0x4f, 0x8e, 0x45, 0x22, 0x5c, 0x04, 0x2d, 0x7f, 0xa6, 0xcb, 0xc7, 0x93, 0xc8, 0x8b, 0xd4, 0xc7, 0x31, 0x98, 0x52, 0x89, 0xb0, 0x45, }; static const unsigned char xdh_wei25519_1830_sharedsecret[] = { 0x40, 0x1a, 0xab, 0xfb, 0xb7, 0x3f, 0xe6, 0x69, 0x4c, 0x44, 0x6e, 0xcf, 0xff, 0xb4, 0x30, 0x06, 0x42, 0x7a, 0x9d, 0x47, 0x56, 0xe0, 0x49, 0xa1, 0xff, 0xc7, 0x95, 0x78, 0xd6, 0x2f, 0x16, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_1830 = { .name = "xdh_wei25519_1830", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1830_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1830_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1830_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 4, tcId is 266 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1831 for XDH, tcId is 267 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1831_peerpubkey[] = { 0x0e, 0xe3, 0xbe, 0xe8, 0xcb, 0x3a, 0x0a, 0xfc, 0xec, 0x22, 0xfa, 0x22, 0x33, 0x70, 0x6e, 0x8e, 0xc2, 0x9c, 0xcf, 0x1a, 0xf2, 0x12, 0xc0, 0xa6, 0x74, 0x74, 0x5e, 0xbb, 0xa3, 0x4f, 0x9d, 0x08, }; static const unsigned char xdh_wei25519_1831_privkey[] = { 0x38, 0x06, 0xb0, 0x36, 0xc9, 0x2d, 0x7b, 0xc0, 0x77, 0x19, 0x98, 0xd2, 0x4d, 0xbd, 0xa2, 0x94, 0x5b, 0x60, 0x1d, 0x42, 0x44, 0x9b, 0xd3, 0xec, 0x4b, 0xbf, 0x37, 0x57, 0xd0, 0x1b, 0x89, 0x4d, }; static const unsigned char xdh_wei25519_1831_sharedsecret[] = { 0x20, 0x32, 0x2d, 0xd0, 0x24, 0xfb, 0x5a, 0x40, 0xf3, 0x27, 0xcf, 0x7c, 0x00, 0xda, 0x20, 0x37, 0x34, 0xc2, 0xa2, 0x79, 0xb9, 0x66, 0x6a, 0x9f, 0xf7, 0xd8, 0x52, 0x7c, 0x92, 0x7b, 0x67, 0x5e, }; static const wycheproof_xdh_test xdh_wei25519_1831 = { .name = "xdh_wei25519_1831", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1831_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1831_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1831_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 267 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1832 for XDH, tcId is 268 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1832_peerpubkey[] = { 0x79, 0x7e, 0xc7, 0x51, 0x2a, 0xfb, 0xf0, 0xad, 0x91, 0x8d, 0x0e, 0x49, 0x47, 0x90, 0x3b, 0xe9, 0x52, 0x34, 0xf3, 0xab, 0xf3, 0x67, 0x50, 0xa8, 0xf8, 0x54, 0x88, 0x8d, 0x11, 0x7b, 0x77, 0x4e, }; static const unsigned char xdh_wei25519_1832_privkey[] = { 0x38, 0x0d, 0x90, 0x56, 0xb5, 0xa2, 0xf4, 0xb3, 0xdf, 0xfb, 0x30, 0xe6, 0xce, 0xb7, 0x22, 0xac, 0x46, 0x84, 0x24, 0x5f, 0x1b, 0xef, 0xaf, 0xb5, 0x66, 0x1b, 0xc8, 0xc7, 0xa9, 0xad, 0x4c, 0x43, }; static const unsigned char xdh_wei25519_1832_sharedsecret[] = { 0x46, 0x15, 0x2d, 0x59, 0xc2, 0xd2, 0xf3, 0xec, 0xf0, 0x3c, 0xe6, 0x52, 0xd2, 0xb6, 0x97, 0x8d, 0x40, 0x1d, 0x5e, 0xde, 0x45, 0x70, 0xa6, 0xc9, 0x11, 0x77, 0x1b, 0xdc, 0xfb, 0x37, 0xcd, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1832 = { .name = "xdh_wei25519_1832", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1832_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1832_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1832_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 268 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1833 for XDH, tcId is 269 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1833_peerpubkey[] = { 0xd5, 0x70, 0xc7, 0x81, 0x0f, 0x69, 0xe5, 0x02, 0xb3, 0x55, 0x25, 0x3a, 0xfa, 0x7c, 0x66, 0x7b, 0xfa, 0x50, 0x60, 0xd9, 0x0d, 0xc8, 0x6e, 0x35, 0x8a, 0xb4, 0x45, 0xf6, 0x38, 0x1e, 0x41, 0x5d, }; static const unsigned char xdh_wei25519_1833_privkey[] = { 0x38, 0x49, 0x29, 0xa4, 0x2c, 0x8d, 0x8d, 0xf1, 0x46, 0xdb, 0x95, 0x08, 0xe2, 0xf2, 0x1a, 0x4e, 0x8c, 0xd4, 0xd9, 0x9c, 0x1b, 0x13, 0x38, 0xdf, 0x17, 0xa4, 0x57, 0xe8, 0x8a, 0xfb, 0x00, 0x43, }; static const unsigned char xdh_wei25519_1833_sharedsecret[] = { 0x37, 0x56, 0x7f, 0x7e, 0xc0, 0x44, 0x9c, 0x7b, 0x82, 0x3c, 0xf7, 0xb0, 0xe2, 0x19, 0xe9, 0xdd, 0x88, 0x0e, 0x56, 0xa1, 0x46, 0x4d, 0x04, 0x17, 0xa9, 0xe6, 0x7e, 0xff, 0x42, 0x33, 0x28, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1833 = { .name = "xdh_wei25519_1833", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1833_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1833_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1833_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 269 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1834 for XDH, tcId is 270 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1834_peerpubkey[] = { 0x2c, 0x61, 0x1c, 0xb9, 0x44, 0x48, 0xf1, 0xc7, 0x82, 0x24, 0x25, 0xa4, 0xcf, 0x53, 0x56, 0x23, 0x6b, 0x90, 0xa5, 0x55, 0xb1, 0xed, 0x47, 0x47, 0x82, 0x0b, 0xa7, 0xf7, 0x39, 0xc8, 0xf5, 0x7d, }; static const unsigned char xdh_wei25519_1834_privkey[] = { 0x48, 0xa9, 0x86, 0x82, 0x5b, 0x26, 0x80, 0xe2, 0xf2, 0x54, 0x7b, 0xa7, 0x5a, 0x95, 0x99, 0xb0, 0x4e, 0xd5, 0x7f, 0x8e, 0xd1, 0x8d, 0x98, 0xe7, 0x09, 0x9c, 0x54, 0x4e, 0xfb, 0xdf, 0x28, 0x4b, }; static const unsigned char xdh_wei25519_1834_sharedsecret[] = { 0xfb, 0xf6, 0x58, 0x7e, 0xc1, 0x81, 0x11, 0x6c, 0xf1, 0xac, 0xe7, 0xdc, 0xd5, 0x48, 0x02, 0x9d, 0x69, 0xc1, 0x30, 0xe5, 0x0f, 0xcf, 0x6a, 0xd5, 0xdf, 0xcd, 0x25, 0xc2, 0x3e, 0xe9, 0xf9, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1834 = { .name = "xdh_wei25519_1834", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1834_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1834_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1834_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 270 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1835 for XDH, tcId is 271 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1835_peerpubkey[] = { 0xe5, 0x59, 0xc4, 0x17, 0xda, 0x7f, 0xd5, 0x85, 0x13, 0x52, 0xf5, 0x08, 0xb9, 0x00, 0x31, 0xd4, 0x9b, 0x5d, 0x2d, 0x0a, 0xac, 0x88, 0xa9, 0xc8, 0xb5, 0xfb, 0x6e, 0x80, 0x16, 0x5a, 0xc1, 0x0b, }; static const unsigned char xdh_wei25519_1835_privkey[] = { 0x98, 0x45, 0x2a, 0xd7, 0xdf, 0x4e, 0x26, 0xbc, 0x4b, 0x3d, 0x40, 0x3f, 0x9e, 0xbf, 0x72, 0xbb, 0x2d, 0x7b, 0x6b, 0x7d, 0x58, 0x60, 0xdb, 0xf6, 0xfb, 0x9a, 0x4f, 0x78, 0xdc, 0x02, 0x70, 0x4a, }; static const unsigned char xdh_wei25519_1835_sharedsecret[] = { 0xc7, 0xc6, 0xf6, 0xd7, 0xce, 0x1e, 0x4f, 0x54, 0xc7, 0x27, 0xe5, 0x90, 0x06, 0x86, 0xc3, 0x4e, 0x6a, 0x69, 0x53, 0x25, 0x4b, 0xd4, 0x70, 0xbb, 0xbf, 0x0c, 0x7c, 0x18, 0xbb, 0xdd, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1835 = { .name = "xdh_wei25519_1835", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1835_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1835_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1835_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 271 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1836 for XDH, tcId is 272 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1836_peerpubkey[] = { 0x74, 0x6d, 0x97, 0xe7, 0x77, 0x42, 0x92, 0xa3, 0xd7, 0x03, 0xf6, 0x04, 0xe7, 0x9d, 0x87, 0x64, 0xc9, 0x9a, 0x6a, 0x2f, 0xe2, 0x80, 0xea, 0xa9, 0x81, 0x11, 0x15, 0xf5, 0xe0, 0x38, 0xf2, 0x1a, }; static const unsigned char xdh_wei25519_1836_privkey[] = { 0xa8, 0xdb, 0xc9, 0xbe, 0x50, 0x34, 0xed, 0x7f, 0xe7, 0xf4, 0x69, 0x26, 0x4f, 0x21, 0x35, 0xe9, 0xc6, 0x7c, 0xd3, 0x0f, 0x52, 0x55, 0x70, 0xd2, 0xd8, 0x41, 0xe4, 0xbd, 0xea, 0xc5, 0x23, 0x49, }; static const unsigned char xdh_wei25519_1836_sharedsecret[] = { 0xcf, 0x7d, 0x2a, 0x66, 0xea, 0x4d, 0xfe, 0xd9, 0x44, 0x69, 0xb2, 0xd3, 0x43, 0x53, 0x3f, 0xf3, 0x02, 0xa5, 0x76, 0xf8, 0x40, 0x2e, 0xd2, 0x18, 0x79, 0x04, 0x43, 0x70, 0x38, 0xe5, 0x46, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_1836 = { .name = "xdh_wei25519_1836", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1836_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1836_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1836_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 272 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1837 for XDH, tcId is 273 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1837_peerpubkey[] = { 0x1f, 0x35, 0x4a, 0xa8, 0xff, 0xc4, 0xea, 0xe2, 0xb4, 0x0d, 0xad, 0x2e, 0xbf, 0x83, 0x0d, 0xb3, 0xfe, 0xb0, 0x7e, 0x2a, 0x1a, 0x2d, 0xa3, 0x9e, 0x55, 0xdf, 0x87, 0xc8, 0xc6, 0x13, 0xde, 0x1d, }; static const unsigned char xdh_wei25519_1837_privkey[] = { 0xf8, 0xd2, 0x68, 0x78, 0xdf, 0xf2, 0x5c, 0xed, 0x02, 0xd3, 0xb2, 0x7c, 0xe7, 0x40, 0x02, 0x69, 0x5b, 0xb8, 0x79, 0xb3, 0xc4, 0x32, 0x89, 0x30, 0x93, 0x43, 0x15, 0xec, 0xae, 0x84, 0x2b, 0x47, }; static const unsigned char xdh_wei25519_1837_sharedsecret[] = { 0xb2, 0x04, 0xd3, 0xbb, 0xcb, 0xdc, 0x62, 0x4f, 0x9f, 0x1a, 0x74, 0x3f, 0xa3, 0xda, 0xa8, 0xf4, 0xc8, 0x78, 0x5e, 0xd0, 0x88, 0xd3, 0x7d, 0x08, 0xcd, 0x13, 0xc6, 0x01, 0x17, 0x0a, 0x46, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1837 = { .name = "xdh_wei25519_1837", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1837_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1837_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1837_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 273 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1838 for XDH, tcId is 274 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1838_peerpubkey[] = { 0x9c, 0x3f, 0x00, 0x23, 0xe1, 0xa4, 0x83, 0x25, 0x86, 0xaf, 0x24, 0x83, 0xbb, 0xec, 0x64, 0xce, 0x9f, 0x06, 0xf3, 0xea, 0x80, 0x6d, 0x40, 0x19, 0xa5, 0xe4, 0xab, 0xb1, 0xb5, 0x62, 0x70, 0x29, }; static const unsigned char xdh_wei25519_1838_privkey[] = { 0xd0, 0xf5, 0xe9, 0xc4, 0x3c, 0x95, 0xb1, 0xff, 0xc3, 0x6f, 0x83, 0x2b, 0x94, 0x36, 0x01, 0xd5, 0xe1, 0x76, 0x47, 0xf7, 0xd7, 0x8e, 0x2e, 0x77, 0x10, 0xac, 0xe6, 0x3f, 0xf2, 0x74, 0xd4, 0x47, }; static const unsigned char xdh_wei25519_1838_sharedsecret[] = { 0xb9, 0xf2, 0x14, 0x65, 0x61, 0x5f, 0x39, 0xdd, 0xdc, 0xc3, 0x75, 0x20, 0xce, 0x9b, 0x95, 0x6f, 0x7d, 0xe9, 0x88, 0x3a, 0xc9, 0x3a, 0x87, 0x0d, 0x74, 0xe3, 0x88, 0xb8, 0xe1, 0x77, 0x54, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1838 = { .name = "xdh_wei25519_1838", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1838_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1838_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1838_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 274 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1839 for XDH, tcId is 275 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1839_peerpubkey[] = { 0xd0, 0x56, 0x56, 0xaa, 0x01, 0x4d, 0x47, 0x60, 0x22, 0xdf, 0xc5, 0x5e, 0x8d, 0x3b, 0x48, 0x84, 0xed, 0x0b, 0xdf, 0x85, 0x20, 0x9b, 0xe8, 0xb5, 0x53, 0x51, 0x39, 0x4d, 0x52, 0xbe, 0x68, 0x4b, }; static const unsigned char xdh_wei25519_1839_privkey[] = { 0x70, 0x06, 0x79, 0xe8, 0xc2, 0x4d, 0xf8, 0x28, 0xf2, 0xe5, 0x21, 0x2a, 0x32, 0x63, 0xd5, 0xe9, 0x3e, 0xa6, 0x16, 0x79, 0x98, 0x82, 0x98, 0xba, 0xb3, 0xb4, 0x80, 0xf4, 0x6f, 0x96, 0x1a, 0x48, }; static const unsigned char xdh_wei25519_1839_sharedsecret[] = { 0x20, 0xf1, 0xfc, 0x61, 0x38, 0x74, 0x49, 0x5f, 0x20, 0x56, 0x2c, 0x10, 0xb7, 0xa8, 0xbe, 0x47, 0xbf, 0xc1, 0x2c, 0x16, 0x8d, 0x82, 0x9d, 0x63, 0x21, 0xaa, 0x2d, 0xe1, 0x70, 0x60, 0xe4, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1839 = { .name = "xdh_wei25519_1839", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1839_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1839_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1839_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 275 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1840 for XDH, tcId is 276 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1840_peerpubkey[] = { 0xc4, 0xa1, 0x9b, 0x86, 0x86, 0xe1, 0x8c, 0x29, 0x35, 0x9a, 0xa5, 0x48, 0x42, 0x7f, 0x06, 0xa3, 0x68, 0xd5, 0x5a, 0x87, 0x37, 0x48, 0x3d, 0x48, 0x93, 0x52, 0x3a, 0xda, 0xc6, 0x79, 0x5a, 0x4c, }; static const unsigned char xdh_wei25519_1840_privkey[] = { 0xd0, 0xd0, 0x77, 0xc9, 0x46, 0x1f, 0x74, 0x7e, 0x56, 0x60, 0xbe, 0x85, 0xcc, 0x62, 0x04, 0x28, 0xb4, 0xce, 0xfe, 0x80, 0x5d, 0xe0, 0xfd, 0x25, 0x4a, 0xda, 0xa4, 0x65, 0xea, 0x5e, 0x78, 0x4f, }; static const unsigned char xdh_wei25519_1840_sharedsecret[] = { 0x65, 0x2b, 0x18, 0xff, 0xd4, 0x1c, 0xfb, 0x7d, 0x1f, 0x0b, 0x6d, 0xc7, 0x9b, 0xaa, 0x3b, 0x2a, 0x39, 0x2e, 0xf1, 0x61, 0x7f, 0x5c, 0xf6, 0x25, 0x9b, 0x5b, 0x4f, 0xf0, 0x65, 0x91, 0x6a, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1840 = { .name = "xdh_wei25519_1840", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1840_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1840_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1840_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 4, tcId is 276 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1841 for XDH, tcId is 277 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1841_peerpubkey[] = { 0x49, 0x89, 0xde, 0x79, 0x85, 0x3f, 0xf3, 0x5b, 0xe8, 0xc9, 0xf9, 0x2f, 0xc9, 0x46, 0x74, 0xfe, 0xef, 0x38, 0xa0, 0xe6, 0x57, 0x88, 0x47, 0x1c, 0x52, 0x1f, 0x8e, 0x25, 0x9a, 0xdf, 0x01, 0x5d, }; static const unsigned char xdh_wei25519_1841_privkey[] = { 0x00, 0x71, 0x1a, 0xc0, 0x8e, 0xf8, 0x8c, 0x3d, 0x43, 0xa3, 0xcb, 0xda, 0x67, 0xb6, 0xfe, 0x5f, 0x34, 0xf5, 0x47, 0x23, 0xdb, 0xe6, 0xd7, 0x25, 0xc8, 0xa3, 0x56, 0x90, 0x70, 0xab, 0x9a, 0x4e, }; static const unsigned char xdh_wei25519_1841_sharedsecret[] = { 0x67, 0x98, 0x25, 0xc2, 0x59, 0x39, 0x2d, 0x86, 0xf8, 0xed, 0xb1, 0x53, 0x28, 0xd4, 0xfa, 0xf5, 0x23, 0x00, 0x77, 0x9d, 0x97, 0x9a, 0x50, 0x3a, 0x76, 0xe2, 0x7b, 0xe3, 0xd7, 0xa8, 0x5e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1841 = { .name = "xdh_wei25519_1841", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1841_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1841_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1841_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 277 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1842 for XDH, tcId is 278 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1842_peerpubkey[] = { 0xa9, 0x81, 0x48, 0x3c, 0xb0, 0xea, 0x43, 0x85, 0xff, 0xbb, 0x55, 0x28, 0x26, 0xc3, 0xdd, 0x11, 0x0d, 0x4a, 0xe8, 0x9f, 0xf5, 0x2e, 0xd0, 0xcd, 0x60, 0x18, 0xf9, 0x9d, 0x33, 0x87, 0x98, 0x7b, }; static const unsigned char xdh_wei25519_1842_privkey[] = { 0x98, 0x9a, 0x75, 0xb4, 0x04, 0x51, 0x13, 0x9e, 0xc3, 0x6c, 0xa6, 0xaa, 0x04, 0x37, 0x65, 0xc6, 0x1a, 0x18, 0xbe, 0x32, 0x3a, 0x59, 0x87, 0xfc, 0xb0, 0x25, 0xc2, 0xda, 0xd8, 0xd4, 0xbd, 0x40, }; static const unsigned char xdh_wei25519_1842_sharedsecret[] = { 0x9c, 0xad, 0xc1, 0x4a, 0xc1, 0x53, 0xfa, 0x38, 0x3e, 0xf6, 0x6d, 0x18, 0x33, 0xf5, 0x89, 0x10, 0x0d, 0xff, 0x90, 0x52, 0x32, 0x72, 0xe3, 0x2b, 0x06, 0xe2, 0xc6, 0xf1, 0xf4, 0x42, 0x40, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1842 = { .name = "xdh_wei25519_1842", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1842_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1842_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1842_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 278 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1843 for XDH, tcId is 279 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1843_peerpubkey[] = { 0x1d, 0xf3, 0xdf, 0xda, 0xb7, 0x4f, 0xf3, 0x81, 0x77, 0xda, 0xc2, 0x94, 0xb2, 0xda, 0x2f, 0x49, 0xa3, 0x48, 0xbc, 0x3b, 0x3b, 0xc6, 0xce, 0x93, 0x12, 0xbe, 0xa5, 0xef, 0x3e, 0xcd, 0xd3, 0x0b, }; static const unsigned char xdh_wei25519_1843_privkey[] = { 0x90, 0xc3, 0xcf, 0xed, 0xd9, 0x19, 0xa2, 0xcc, 0xd5, 0x1f, 0xb4, 0x55, 0x64, 0x9e, 0x3a, 0xd2, 0xda, 0x1e, 0xf0, 0xff, 0x61, 0x9b, 0x59, 0xa7, 0xf9, 0xc5, 0x5a, 0x68, 0xa8, 0x21, 0x96, 0x45, }; static const unsigned char xdh_wei25519_1843_sharedsecret[] = { 0xbc, 0xc9, 0x5f, 0xb4, 0x89, 0x0e, 0xd3, 0x11, 0xf3, 0xfb, 0x4f, 0x44, 0xc2, 0xb6, 0x08, 0x66, 0xcd, 0xdd, 0xec, 0x97, 0xdb, 0x82, 0x0a, 0x7f, 0x79, 0xf4, 0x75, 0x33, 0x7e, 0x16, 0x28, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1843 = { .name = "xdh_wei25519_1843", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1843_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1843_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1843_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 279 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1844 for XDH, tcId is 280 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1844_peerpubkey[] = { 0xfc, 0x6b, 0x71, 0x8b, 0xa8, 0xb4, 0x7d, 0x24, 0xb1, 0xcf, 0xd6, 0xb5, 0xd0, 0xdd, 0x8b, 0x20, 0xfd, 0x92, 0x09, 0x60, 0xfa, 0xbc, 0x30, 0x2d, 0xbe, 0x4f, 0x93, 0xbd, 0x2a, 0x06, 0xe9, 0x33, }; static const unsigned char xdh_wei25519_1844_privkey[] = { 0xe8, 0xfe, 0xf5, 0xc9, 0xb6, 0x0f, 0x84, 0x98, 0x4e, 0x88, 0x36, 0xd5, 0x35, 0xac, 0xb3, 0x72, 0x09, 0x6b, 0xa8, 0x15, 0x98, 0x24, 0xa0, 0xb4, 0x9a, 0x17, 0xec, 0xcd, 0xa8, 0x43, 0xbd, 0x41, }; static const unsigned char xdh_wei25519_1844_sharedsecret[] = { 0x06, 0xf1, 0xb4, 0x95, 0xb0, 0x4a, 0x00, 0x10, 0x84, 0x5c, 0x9d, 0x39, 0xb1, 0x3b, 0xf2, 0x78, 0x4a, 0xde, 0x86, 0x0d, 0x96, 0x32, 0xc8, 0x84, 0x76, 0x18, 0xc0, 0xb3, 0x42, 0x97, 0xc2, 0x49, }; static const wycheproof_xdh_test xdh_wei25519_1844 = { .name = "xdh_wei25519_1844", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1844_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1844_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1844_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 280 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1845 for XDH, tcId is 281 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1845_peerpubkey[] = { 0xb2, 0x79, 0xb6, 0xc0, 0x65, 0xf9, 0x5c, 0x70, 0x40, 0xf1, 0x48, 0xbc, 0xb4, 0xa3, 0xd3, 0x10, 0xe3, 0x4b, 0xdb, 0x00, 0x59, 0x31, 0xa8, 0x79, 0xbe, 0x46, 0x95, 0x73, 0xde, 0xed, 0xd0, 0x41, }; static const unsigned char xdh_wei25519_1845_privkey[] = { 0xc0, 0xe0, 0x5b, 0xde, 0x77, 0x27, 0xdb, 0x4e, 0x35, 0x2b, 0x5e, 0x7f, 0x03, 0x53, 0x27, 0xb4, 0xd8, 0x6a, 0x42, 0xd5, 0x13, 0xca, 0x11, 0x6e, 0x22, 0xd6, 0x4a, 0x4e, 0xde, 0x56, 0x43, 0x4a, }; static const unsigned char xdh_wei25519_1845_sharedsecret[] = { 0xcc, 0xe7, 0xbb, 0x64, 0x4d, 0xf9, 0x45, 0x01, 0x42, 0x1d, 0xb4, 0x9d, 0x15, 0xe8, 0x21, 0xc7, 0xb0, 0xaa, 0xab, 0xec, 0xdf, 0x88, 0x37, 0xab, 0x98, 0x9b, 0x1f, 0x23, 0xba, 0xc0, 0x8f, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1845 = { .name = "xdh_wei25519_1845", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1845_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1845_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1845_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 281 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1846 for XDH, tcId is 282 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1846_peerpubkey[] = { 0x98, 0xe2, 0xcd, 0x4c, 0x10, 0x55, 0x4e, 0x41, 0xb0, 0xa3, 0xe4, 0x10, 0x82, 0xc8, 0xb6, 0xb6, 0x1b, 0x55, 0x44, 0x7d, 0x26, 0xc0, 0xaa, 0x97, 0xf9, 0xa0, 0x6b, 0xae, 0xeb, 0x54, 0xb5, 0x5b, }; static const unsigned char xdh_wei25519_1846_privkey[] = { 0xd8, 0x73, 0x08, 0xbf, 0x75, 0x35, 0x73, 0xf5, 0x96, 0xac, 0x83, 0x30, 0xb2, 0x04, 0x01, 0x4b, 0x21, 0x52, 0xdb, 0xdf, 0xc9, 0x88, 0x1a, 0x0d, 0x99, 0x75, 0x05, 0x85, 0x82, 0xbd, 0xf6, 0x46, }; static const unsigned char xdh_wei25519_1846_sharedsecret[] = { 0x71, 0xfd, 0xd3, 0x40, 0x5c, 0x30, 0x80, 0x57, 0x01, 0xae, 0x4d, 0xfa, 0xd9, 0x8c, 0x49, 0x3a, 0xec, 0xfc, 0xf2, 0xe3, 0xb5, 0x63, 0xe7, 0x06, 0x83, 0x73, 0xc1, 0xb1, 0x91, 0x37, 0xc2, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1846 = { .name = "xdh_wei25519_1846", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1846_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1846_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1846_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 4, tcId is 282 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1847 for XDH, tcId is 283 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1847_peerpubkey[] = { 0x87, 0x28, 0x97, 0xf1, 0xbd, 0x18, 0x85, 0xda, 0x08, 0xb9, 0xd0, 0x3e, 0x46, 0x81, 0x10, 0x44, 0xfb, 0xb0, 0x41, 0x86, 0xba, 0x30, 0xc8, 0x06, 0xf3, 0x8b, 0x94, 0xeb, 0xdc, 0x27, 0x18, 0x6a, }; static const unsigned char xdh_wei25519_1847_privkey[] = { 0xd8, 0x00, 0x59, 0xa8, 0xa3, 0x87, 0xe1, 0x6f, 0x6d, 0xed, 0x6e, 0x7e, 0x98, 0x0e, 0x80, 0x6d, 0x1f, 0x78, 0xb4, 0x70, 0xbb, 0x61, 0x10, 0x3d, 0x0c, 0xa7, 0x06, 0x23, 0xcc, 0xee, 0x8b, 0x4f, }; static const unsigned char xdh_wei25519_1847_sharedsecret[] = { 0xbf, 0x28, 0x0a, 0xee, 0xcb, 0x74, 0xab, 0x34, 0xe1, 0x31, 0x0a, 0xa6, 0xfe, 0x8d, 0xc9, 0x72, 0xf9, 0x4d, 0xc4, 0x0c, 0x7f, 0x88, 0xb7, 0x21, 0x37, 0xcc, 0xfe, 0x34, 0xed, 0x34, 0x3c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1847 = { .name = "xdh_wei25519_1847", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1847_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1847_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1847_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 4, tcId is 283 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1848 for XDH, tcId is 284 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1848_peerpubkey[] = { 0xc0, 0x8f, 0x72, 0x76, 0x0d, 0x9c, 0xb4, 0xa5, 0x42, 0xaa, 0xd6, 0xe2, 0xaf, 0x77, 0x79, 0x20, 0xc4, 0x45, 0x63, 0xbd, 0x90, 0x35, 0x61, 0x68, 0xc3, 0x60, 0x8c, 0x6b, 0x9a, 0xf2, 0xef, 0x0f, }; static const unsigned char xdh_wei25519_1848_privkey[] = { 0xb0, 0xa4, 0xfe, 0x63, 0x51, 0x51, 0x69, 0xbd, 0x82, 0x63, 0x9b, 0x51, 0x5f, 0xf7, 0xe5, 0xc4, 0xac, 0x85, 0xbb, 0xa0, 0xa5, 0x3b, 0xba, 0xca, 0x80, 0x47, 0x7e, 0xb3, 0xb4, 0x25, 0x0d, 0x44, }; static const unsigned char xdh_wei25519_1848_sharedsecret[] = { 0x72, 0x56, 0x6a, 0x91, 0xcc, 0xd2, 0xbc, 0xf3, 0x8c, 0xf6, 0x39, 0xe4, 0xa5, 0xfc, 0xb2, 0x96, 0xf0, 0xb6, 0x7d, 0xe1, 0x92, 0xc6, 0x09, 0x12, 0x42, 0xa6, 0x2f, 0xae, 0x46, 0x7f, 0xb6, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_1848 = { .name = "xdh_wei25519_1848", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1848_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1848_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1848_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 284 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1849 for XDH, tcId is 285 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1849_peerpubkey[] = { 0x4f, 0x03, 0x84, 0x9c, 0x24, 0xd5, 0x84, 0x53, 0x4d, 0x74, 0x30, 0x22, 0x20, 0xcf, 0xdc, 0x90, 0xe1, 0xbc, 0x36, 0x0b, 0xb5, 0xe2, 0x97, 0xc0, 0xfd, 0x0f, 0xd5, 0xf8, 0xd7, 0x99, 0xe4, 0x16, }; static const unsigned char xdh_wei25519_1849_privkey[] = { 0x98, 0x42, 0x56, 0xb1, 0x2e, 0xf1, 0x54, 0xff, 0x6c, 0x2e, 0x1d, 0x03, 0x08, 0x26, 0x16, 0x4c, 0xba, 0x36, 0x14, 0xe3, 0xdf, 0x76, 0x88, 0xd8, 0x2b, 0x59, 0xe1, 0x62, 0x01, 0xc9, 0x11, 0x4d, }; static const unsigned char xdh_wei25519_1849_sharedsecret[] = { 0x24, 0xac, 0xb4, 0xaf, 0xa6, 0x39, 0x19, 0x62, 0x1d, 0xf7, 0x95, 0x20, 0x6c, 0x39, 0x29, 0xb5, 0x99, 0xec, 0x9d, 0x25, 0x36, 0x93, 0x89, 0x5d, 0x51, 0xa0, 0x55, 0x50, 0x72, 0xe8, 0x9a, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1849 = { .name = "xdh_wei25519_1849", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1849_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1849_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1849_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 285 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1850 for XDH, tcId is 286 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1850_peerpubkey[] = { 0x49, 0x59, 0x77, 0x1a, 0x93, 0x1e, 0x24, 0x2d, 0x57, 0x13, 0xd5, 0xcb, 0x76, 0xf3, 0x33, 0x10, 0xc6, 0xa2, 0x83, 0xdf, 0x16, 0x64, 0x56, 0x04, 0x28, 0x95, 0x53, 0x80, 0x9c, 0xda, 0x65, 0x18, }; static const unsigned char xdh_wei25519_1850_privkey[] = { 0x68, 0x47, 0x14, 0x1d, 0x5d, 0x43, 0x77, 0xaf, 0x96, 0xa2, 0xa6, 0x47, 0xc6, 0x42, 0xee, 0x81, 0x60, 0x0f, 0xe4, 0x8d, 0x34, 0x67, 0xe3, 0xa7, 0x0f, 0x3e, 0xe3, 0x12, 0xbb, 0x62, 0x17, 0x42, }; static const unsigned char xdh_wei25519_1850_sharedsecret[] = { 0x5b, 0xa2, 0x11, 0x2a, 0x41, 0xb5, 0xbb, 0x38, 0x1f, 0x20, 0x24, 0x46, 0xfa, 0x9f, 0x23, 0xc5, 0x4d, 0x2d, 0xe1, 0x49, 0xf9, 0xad, 0x23, 0x37, 0x53, 0x41, 0x72, 0x63, 0x84, 0x0e, 0xa4, 0x32, }; static const wycheproof_xdh_test xdh_wei25519_1850 = { .name = "xdh_wei25519_1850", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1850_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1850_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1850_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 286 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1851 for XDH, tcId is 287 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1851_peerpubkey[] = { 0xf6, 0xfe, 0x69, 0x0c, 0xf5, 0x47, 0x04, 0x96, 0x35, 0xbb, 0x3a, 0x77, 0x85, 0x53, 0x7b, 0x43, 0x79, 0xc9, 0xee, 0x06, 0xb4, 0x61, 0x20, 0x49, 0x3b, 0x8b, 0xdb, 0x15, 0x2e, 0x09, 0xc8, 0x1d, }; static const unsigned char xdh_wei25519_1851_privkey[] = { 0xe8, 0x5f, 0x11, 0x64, 0xe2, 0xab, 0x6f, 0xaf, 0x62, 0x66, 0x7c, 0x74, 0xb0, 0x3c, 0xe5, 0x29, 0xb4, 0x9a, 0x0e, 0x20, 0x41, 0xb1, 0xac, 0x0f, 0xa2, 0x42, 0xe5, 0x22, 0xd2, 0xb7, 0x69, 0x4c, }; static const unsigned char xdh_wei25519_1851_sharedsecret[] = { 0xa8, 0x7c, 0x9f, 0xdf, 0x40, 0xc4, 0x09, 0xb9, 0xed, 0xab, 0x48, 0x1b, 0x2c, 0xc6, 0x96, 0x87, 0xee, 0x1a, 0xb9, 0x2e, 0x34, 0x0c, 0x3d, 0xb0, 0x10, 0x7d, 0x40, 0xb5, 0xde, 0x6e, 0x7a, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1851 = { .name = "xdh_wei25519_1851", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1851_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1851_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1851_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 287 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1852 for XDH, tcId is 288 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1852_peerpubkey[] = { 0xb4, 0x68, 0x68, 0x1a, 0x12, 0x75, 0x85, 0x0c, 0x11, 0xd3, 0x7e, 0xc7, 0x36, 0xaf, 0x93, 0x9a, 0x75, 0xa7, 0x09, 0x85, 0x14, 0xe0, 0x4c, 0xfc, 0x1c, 0x6c, 0xa7, 0x82, 0x39, 0xa8, 0x84, 0x26, }; static const unsigned char xdh_wei25519_1852_privkey[] = { 0x28, 0x1e, 0x1b, 0xbf, 0xa7, 0x11, 0xde, 0x69, 0x92, 0x1a, 0x64, 0xc5, 0xd2, 0x18, 0x3c, 0x33, 0x8d, 0xb5, 0x50, 0x46, 0x06, 0xce, 0x2b, 0x6b, 0x4c, 0xe1, 0xcd, 0xd5, 0x4b, 0x41, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_1852_sharedsecret[] = { 0x3b, 0xe9, 0x87, 0x98, 0xf0, 0x1e, 0x71, 0x63, 0x9f, 0x3c, 0xb8, 0xfd, 0x4a, 0x17, 0xbf, 0x27, 0x3e, 0x10, 0xc6, 0x7f, 0x89, 0x74, 0xdd, 0x98, 0x02, 0xee, 0xd5, 0x9d, 0x84, 0x7d, 0x40, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_1852 = { .name = "xdh_wei25519_1852", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1852_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1852_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1852_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 288 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1853 for XDH, tcId is 289 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1853_peerpubkey[] = { 0x2d, 0x71, 0xe8, 0x45, 0x70, 0x99, 0xe3, 0xf4, 0x45, 0xf9, 0xe2, 0xa1, 0x4f, 0x18, 0xb0, 0xf5, 0x91, 0x4b, 0xb3, 0x5f, 0x48, 0x2f, 0x9c, 0x06, 0x9b, 0x64, 0xbf, 0x63, 0x71, 0x0d, 0x42, 0x28, }; static const unsigned char xdh_wei25519_1853_privkey[] = { 0x20, 0xaa, 0xcf, 0x19, 0x02, 0xb3, 0xcd, 0x60, 0x9d, 0x7e, 0xe1, 0x5c, 0xc9, 0x64, 0x53, 0xcc, 0x22, 0xe2, 0x89, 0x9d, 0x7d, 0x17, 0x85, 0x26, 0x80, 0xf2, 0xa7, 0x28, 0xba, 0xc6, 0xdc, 0x4a, }; static const unsigned char xdh_wei25519_1853_sharedsecret[] = { 0x33, 0x8c, 0x99, 0x17, 0xdb, 0xf1, 0x1a, 0x0c, 0xab, 0xe8, 0xad, 0x4a, 0x65, 0x95, 0x92, 0x29, 0xbc, 0x00, 0xf9, 0x9c, 0x21, 0x1e, 0x75, 0x2b, 0x20, 0xb8, 0xb4, 0x9b, 0x87, 0x75, 0x6d, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_1853 = { .name = "xdh_wei25519_1853", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1853_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1853_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1853_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 289 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1854 for XDH, tcId is 290 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1854_peerpubkey[] = { 0xfa, 0x8f, 0x24, 0xe9, 0x44, 0xde, 0x5d, 0x00, 0x37, 0x46, 0xd4, 0x63, 0x03, 0x50, 0xc0, 0xf4, 0xf6, 0x17, 0x5a, 0x32, 0x69, 0xc1, 0x91, 0x84, 0x82, 0x41, 0x05, 0x39, 0x8f, 0xbd, 0xd3, 0x29, }; static const unsigned char xdh_wei25519_1854_privkey[] = { 0x00, 0x9e, 0x8e, 0x9f, 0xa9, 0x93, 0x80, 0x4d, 0xce, 0x94, 0xce, 0xcb, 0x96, 0xb1, 0xde, 0x25, 0x68, 0x24, 0x5a, 0x97, 0x05, 0x9e, 0x4d, 0x7a, 0xe1, 0x16, 0xec, 0xdb, 0x1b, 0xad, 0xd1, 0x41, }; static const unsigned char xdh_wei25519_1854_sharedsecret[] = { 0x56, 0xe2, 0xbf, 0xc7, 0xf6, 0xab, 0x7d, 0xa8, 0xfc, 0x73, 0x4a, 0xfc, 0x51, 0x5e, 0x57, 0xd0, 0x79, 0x4d, 0x00, 0x24, 0x34, 0xf9, 0xbc, 0x8e, 0x18, 0xbd, 0x0b, 0x72, 0xc0, 0xdf, 0x3c, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1854 = { .name = "xdh_wei25519_1854", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1854_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1854_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1854_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 290 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1855 for XDH, tcId is 291 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1855_peerpubkey[] = { 0xae, 0x4e, 0x37, 0xef, 0x53, 0xc7, 0x9e, 0x25, 0xe8, 0x27, 0x5a, 0x60, 0xf2, 0xfc, 0x1d, 0xfc, 0x27, 0x7e, 0xbc, 0x5d, 0x3b, 0x88, 0x42, 0x8c, 0x64, 0x32, 0xc3, 0xf9, 0x84, 0x94, 0x21, 0x2c, }; static const unsigned char xdh_wei25519_1855_privkey[] = { 0xf0, 0x15, 0x74, 0x64, 0x3f, 0x23, 0x1f, 0xfa, 0xc0, 0x55, 0xbd, 0x23, 0x5e, 0xe7, 0x4d, 0xd4, 0x16, 0xb9, 0x4c, 0x8e, 0x55, 0xa2, 0xab, 0x2b, 0x4d, 0x13, 0xa8, 0xb7, 0x88, 0xd9, 0x01, 0x48, }; static const unsigned char xdh_wei25519_1855_sharedsecret[] = { 0x17, 0xfa, 0x12, 0x76, 0xd9, 0xfd, 0x50, 0x25, 0x17, 0x27, 0x36, 0x44, 0x9a, 0x1c, 0x0a, 0xe3, 0x35, 0x12, 0xe5, 0x03, 0x70, 0x14, 0xa1, 0x8d, 0xb5, 0x90, 0x3e, 0x47, 0xbb, 0x3b, 0xc9, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1855 = { .name = "xdh_wei25519_1855", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1855_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1855_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1855_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 291 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1856 for XDH, tcId is 292 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1856_peerpubkey[] = { 0x95, 0xe5, 0x6a, 0x83, 0x07, 0x92, 0x47, 0x8f, 0x7c, 0x42, 0x50, 0x40, 0x43, 0xa9, 0xca, 0xb8, 0xe2, 0xee, 0xbf, 0xf5, 0xfd, 0x90, 0x98, 0x37, 0x09, 0xe2, 0x9e, 0x03, 0xc0, 0xa4, 0x1b, 0x64, }; static const unsigned char xdh_wei25519_1856_privkey[] = { 0x38, 0x00, 0xa4, 0x26, 0x59, 0x95, 0x42, 0x81, 0xca, 0x26, 0x6d, 0x7c, 0xf1, 0xea, 0x9d, 0xb6, 0xd7, 0x98, 0x91, 0xa4, 0x06, 0xa7, 0x0f, 0x9e, 0x84, 0xc3, 0x57, 0x0a, 0x6a, 0x12, 0xd2, 0x4e, }; static const unsigned char xdh_wei25519_1856_sharedsecret[] = { 0x16, 0x7a, 0x3b, 0x2f, 0xdc, 0xe9, 0x41, 0x3c, 0x89, 0xee, 0x89, 0x2d, 0xaf, 0x9f, 0x83, 0x9a, 0x2e, 0xea, 0x80, 0xea, 0x80, 0x44, 0x92, 0x40, 0x35, 0xdb, 0x17, 0x24, 0xa5, 0xb0, 0x21, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1856 = { .name = "xdh_wei25519_1856", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1856_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1856_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1856_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 292 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1857 for XDH, tcId is 293 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1857_peerpubkey[] = { 0x5f, 0x16, 0xaa, 0x7c, 0xca, 0xbf, 0x4d, 0xa6, 0xb6, 0x86, 0xbd, 0x28, 0xc7, 0x46, 0x0e, 0x10, 0x6b, 0xb1, 0xb9, 0x7a, 0x82, 0x37, 0x92, 0x52, 0x77, 0x65, 0xc2, 0x9a, 0x9a, 0xd8, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_1857_privkey[] = { 0x70, 0xa8, 0x26, 0xb1, 0x86, 0x96, 0x22, 0x18, 0xdb, 0xaf, 0xca, 0x11, 0x33, 0x19, 0xda, 0xef, 0xb5, 0xdd, 0xf3, 0xcf, 0x14, 0xe1, 0x5f, 0xe3, 0xfa, 0xad, 0xc4, 0xc0, 0xa2, 0xe4, 0x66, 0x48, }; static const unsigned char xdh_wei25519_1857_sharedsecret[] = { 0x30, 0xa4, 0xba, 0x79, 0x3f, 0x2d, 0xff, 0xe1, 0x70, 0x0c, 0x61, 0x42, 0x8b, 0x4d, 0x84, 0xb5, 0xfc, 0xd0, 0xaa, 0x99, 0xa2, 0x3b, 0x90, 0x3f, 0x84, 0xa4, 0x8e, 0xca, 0x5c, 0xc9, 0xfb, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_1857 = { .name = "xdh_wei25519_1857", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1857_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1857_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1857_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 293 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1858 for XDH, tcId is 294 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1858_peerpubkey[] = { 0x47, 0xfb, 0x78, 0x11, 0x18, 0x05, 0xa1, 0x19, 0x82, 0xa3, 0xd6, 0xc5, 0xd8, 0x3e, 0x8e, 0x18, 0x9e, 0x7f, 0xcc, 0x46, 0x2c, 0x9a, 0xbf, 0x80, 0x5d, 0x36, 0x25, 0xbe, 0x7a, 0x6e, 0xac, 0x11, }; static const unsigned char xdh_wei25519_1858_privkey[] = { 0xa8, 0x5a, 0x5e, 0xda, 0x0a, 0x26, 0x95, 0x00, 0xb3, 0xab, 0x0b, 0x58, 0x49, 0x5f, 0xc2, 0x54, 0xc2, 0x69, 0x10, 0x28, 0xac, 0x53, 0x34, 0x94, 0xb5, 0xf8, 0x6d, 0x44, 0xe9, 0xdc, 0x65, 0x4c, }; static const unsigned char xdh_wei25519_1858_sharedsecret[] = { 0x2b, 0xf9, 0xab, 0x75, 0x0b, 0xd5, 0x8f, 0xf6, 0xf8, 0x77, 0xb7, 0x83, 0xed, 0xa4, 0x5a, 0x71, 0xa6, 0x5c, 0xc9, 0xb7, 0xc0, 0x37, 0xfc, 0xfe, 0xf4, 0xcb, 0x5f, 0x4c, 0x88, 0x42, 0xf5, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1858 = { .name = "xdh_wei25519_1858", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1858_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1858_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1858_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 294 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1859 for XDH, tcId is 295 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1859_peerpubkey[] = { 0x03, 0xb8, 0xca, 0x5e, 0xfd, 0x17, 0x77, 0xd6, 0xd6, 0x25, 0xa9, 0x45, 0xdb, 0x52, 0xb8, 0x1f, 0x11, 0x21, 0x4d, 0xaf, 0x01, 0x5d, 0x09, 0xfd, 0xc9, 0xdf, 0x7d, 0x47, 0xb9, 0x85, 0x0e, 0x31, }; static const unsigned char xdh_wei25519_1859_privkey[] = { 0x18, 0x3f, 0x28, 0xec, 0x86, 0x76, 0x24, 0xef, 0x5e, 0xca, 0x48, 0x27, 0xed, 0x07, 0x14, 0xa5, 0x52, 0x5e, 0xf2, 0x1d, 0x5e, 0x35, 0x03, 0x8b, 0x24, 0xd3, 0x07, 0xa3, 0x39, 0x1a, 0x28, 0x46, }; static const unsigned char xdh_wei25519_1859_sharedsecret[] = { 0x35, 0xe9, 0x28, 0x92, 0x34, 0xbd, 0x5e, 0x53, 0x1d, 0xa6, 0x5d, 0x16, 0x1a, 0x06, 0x5a, 0x14, 0xf7, 0x85, 0x07, 0x60, 0x88, 0xd7, 0x41, 0xc9, 0xa2, 0xd8, 0x86, 0xef, 0xd7, 0xd1, 0x79, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1859 = { .name = "xdh_wei25519_1859", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1859_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1859_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1859_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 4, tcId is 295 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1860 for XDH, tcId is 296 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1860_peerpubkey[] = { 0x4e, 0xca, 0x5f, 0x87, 0x31, 0xb0, 0xfa, 0x0c, 0x10, 0x6a, 0xcf, 0x57, 0x8b, 0x83, 0xa3, 0x50, 0xfa, 0x81, 0x73, 0xa2, 0x90, 0xf1, 0xeb, 0xa8, 0x03, 0x95, 0x6d, 0xe3, 0x4e, 0xeb, 0x76, 0x71, }; static const unsigned char xdh_wei25519_1860_privkey[] = { 0x88, 0x8c, 0x64, 0x44, 0xff, 0x5e, 0xb4, 0x82, 0xb2, 0xb1, 0x0b, 0xd4, 0xe8, 0xa0, 0x1b, 0xdc, 0xcb, 0x65, 0xf3, 0x29, 0x34, 0xd8, 0x02, 0x61, 0x06, 0xf1, 0x6a, 0x91, 0x34, 0x9f, 0x48, 0x4c, }; static const unsigned char xdh_wei25519_1860_sharedsecret[] = { 0x83, 0x3a, 0xfb, 0x86, 0x70, 0x54, 0xb8, 0xb9, 0xac, 0x70, 0xd6, 0x01, 0x3c, 0x16, 0x3e, 0x8b, 0x76, 0x76, 0xfd, 0x45, 0xae, 0x49, 0xa1, 0x32, 0x5f, 0x3a, 0xcb, 0x75, 0x97, 0x5d, 0x8c, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_1860 = { .name = "xdh_wei25519_1860", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1860_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1860_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1860_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 296 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1861 for XDH, tcId is 297 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1861_peerpubkey[] = { 0xa5, 0x56, 0x2b, 0x4b, 0xa8, 0x6b, 0x46, 0x4d, 0xff, 0x4c, 0x2c, 0xfa, 0xe8, 0x5b, 0x38, 0x4b, 0xe2, 0x11, 0x77, 0x1e, 0xfe, 0x8a, 0x96, 0x97, 0xe5, 0x1d, 0x84, 0xde, 0x47, 0xf1, 0xeb, 0x14, }; static const unsigned char xdh_wei25519_1861_privkey[] = { 0xc8, 0xa8, 0x5d, 0x14, 0x0b, 0xa1, 0x50, 0xf5, 0xc6, 0xa8, 0xd3, 0xcb, 0x36, 0x3b, 0xcb, 0xcb, 0x75, 0x36, 0x5e, 0x51, 0xc6, 0x16, 0x40, 0xe9, 0x74, 0xa0, 0x72, 0x5b, 0x5e, 0x9d, 0x59, 0x40, }; static const unsigned char xdh_wei25519_1861_sharedsecret[] = { 0x8a, 0x91, 0x47, 0x60, 0x12, 0x95, 0x75, 0xc8, 0xab, 0x32, 0x70, 0xd0, 0x4b, 0x04, 0x65, 0xfc, 0x2f, 0x32, 0x7a, 0xca, 0xf1, 0x67, 0x64, 0x63, 0x11, 0x38, 0x03, 0xbb, 0xb2, 0xec, 0x80, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1861 = { .name = "xdh_wei25519_1861", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1861_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1861_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1861_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 297 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1862 for XDH, tcId is 298 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1862_peerpubkey[] = { 0x88, 0xae, 0x16, 0x31, 0xcd, 0x08, 0xab, 0x54, 0xc2, 0x4a, 0x31, 0xe1, 0xfe, 0xc8, 0x60, 0x39, 0x1f, 0xe2, 0x9b, 0xc5, 0x0d, 0xb2, 0x3e, 0xb6, 0x67, 0x09, 0x36, 0x2e, 0xc4, 0x26, 0x49, 0x29, }; static const unsigned char xdh_wei25519_1862_privkey[] = { 0x90, 0xa3, 0xae, 0xb1, 0x41, 0x7c, 0x3d, 0x61, 0xc1, 0xef, 0xef, 0x1a, 0xc0, 0x52, 0x21, 0x8f, 0xb5, 0x5d, 0x3a, 0x59, 0xc4, 0xfe, 0x93, 0x0b, 0x5a, 0x33, 0xcc, 0x51, 0x83, 0xb4, 0x85, 0x47, }; static const unsigned char xdh_wei25519_1862_sharedsecret[] = { 0xc1, 0x98, 0x8b, 0x6e, 0x1f, 0x02, 0x01, 0x51, 0xec, 0x91, 0x3b, 0x4f, 0xb2, 0x69, 0x5b, 0xae, 0x2c, 0x21, 0xcc, 0x55, 0x3d, 0x0f, 0x91, 0xcf, 0x0c, 0x66, 0x86, 0x23, 0xa3, 0xe5, 0xa4, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1862 = { .name = "xdh_wei25519_1862", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1862_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1862_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1862_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 298 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1863 for XDH, tcId is 299 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1863_peerpubkey[] = { 0xcb, 0xc4, 0xd5, 0x5d, 0x5b, 0xfd, 0xdd, 0x0b, 0xc5, 0xc5, 0xed, 0xbe, 0x3a, 0x04, 0x83, 0x6b, 0x2c, 0x70, 0x1d, 0x25, 0x19, 0x5b, 0x26, 0x22, 0x1c, 0xbe, 0xa1, 0x93, 0x11, 0xe5, 0x5a, 0x3d, }; static const unsigned char xdh_wei25519_1863_privkey[] = { 0xb8, 0x58, 0xd7, 0x41, 0x4b, 0xd9, 0xab, 0x9a, 0x3e, 0xbe, 0xa7, 0x90, 0x64, 0xab, 0x87, 0xbc, 0x05, 0x0e, 0x74, 0x40, 0x7f, 0x4d, 0x47, 0x48, 0xf6, 0x2f, 0xa4, 0xd9, 0xd2, 0x03, 0xb6, 0x40, }; static const unsigned char xdh_wei25519_1863_sharedsecret[] = { 0xbb, 0x24, 0x81, 0x7b, 0xd9, 0xff, 0xf4, 0x23, 0xdc, 0x09, 0x72, 0x90, 0x8e, 0x2c, 0x03, 0xfd, 0xdf, 0x4d, 0xbe, 0x10, 0x00, 0x16, 0xb4, 0x59, 0xf2, 0x8f, 0xe9, 0x59, 0x4a, 0xdb, 0x37, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1863 = { .name = "xdh_wei25519_1863", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1863_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1863_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1863_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 299 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1864 for XDH, tcId is 300 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1864_peerpubkey[] = { 0xd6, 0x6a, 0x2f, 0x9f, 0x75, 0x77, 0xe2, 0xdf, 0x4a, 0x56, 0xcb, 0x51, 0x96, 0x2b, 0x30, 0x56, 0xff, 0x5c, 0xc0, 0x49, 0x4c, 0x60, 0xf3, 0x95, 0x11, 0x78, 0x2e, 0x79, 0x92, 0x3e, 0xdd, 0x41, }; static const unsigned char xdh_wei25519_1864_privkey[] = { 0xf8, 0x25, 0xed, 0xf1, 0xf7, 0x9e, 0xdd, 0xd7, 0x15, 0xa7, 0x2b, 0x3a, 0xc2, 0x67, 0xd6, 0xb2, 0xe9, 0x7e, 0x18, 0xbb, 0x13, 0xbc, 0xaf, 0xda, 0xc5, 0x94, 0x03, 0x70, 0xb8, 0x5b, 0xa6, 0x4b, }; static const unsigned char xdh_wei25519_1864_sharedsecret[] = { 0xb3, 0xb4, 0x51, 0x3f, 0x8a, 0x31, 0x02, 0xe1, 0xae, 0x78, 0x2f, 0xbc, 0x69, 0x88, 0x81, 0x77, 0xf2, 0xc2, 0x4c, 0x56, 0x93, 0x03, 0xa5, 0xd0, 0x1a, 0xb1, 0xc3, 0xc5, 0xe2, 0x85, 0x52, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1864 = { .name = "xdh_wei25519_1864", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1864_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1864_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1864_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 300 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1865 for XDH, tcId is 301 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1865_peerpubkey[] = { 0xde, 0x0f, 0xed, 0x2f, 0xab, 0x6e, 0x01, 0x49, 0x26, 0x75, 0xbc, 0x75, 0xcb, 0xe4, 0x5d, 0x7b, 0x45, 0xb0, 0x30, 0x6c, 0xec, 0x8d, 0xc6, 0x76, 0x11, 0x69, 0x98, 0x11, 0xc9, 0xaa, 0xef, 0x16, }; static const unsigned char xdh_wei25519_1865_privkey[] = { 0xb0, 0xa7, 0x10, 0xb4, 0x70, 0xe3, 0x24, 0xbb, 0x56, 0xa7, 0xd8, 0xff, 0x87, 0x88, 0xd0, 0x5e, 0xb3, 0x27, 0x61, 0x61, 0x29, 0xb8, 0x49, 0x72, 0x48, 0x24, 0x25, 0xea, 0x4a, 0xd4, 0xf3, 0x4b, }; static const unsigned char xdh_wei25519_1865_sharedsecret[] = { 0x47, 0x1b, 0xa9, 0x1a, 0x99, 0x63, 0x4f, 0x9a, 0xcf, 0x34, 0xfd, 0x7f, 0xd5, 0x8f, 0x72, 0x68, 0x2b, 0xe9, 0x7e, 0xe1, 0xc8, 0x21, 0x48, 0x6d, 0x62, 0xba, 0x4e, 0x44, 0x8c, 0xbc, 0x04, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_1865 = { .name = "xdh_wei25519_1865", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1865_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1865_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1865_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 301 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1866 for XDH, tcId is 302 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1866_peerpubkey[] = { 0x64, 0x18, 0xd4, 0x9f, 0xe4, 0x40, 0xa7, 0x55, 0xc9, 0xff, 0x1a, 0x35, 0x82, 0xd3, 0x5d, 0xc9, 0xb4, 0x4c, 0x81, 0x84, 0x98, 0xf1, 0x57, 0x82, 0xc9, 0x52, 0x84, 0xfe, 0x86, 0x8a, 0x91, 0x4c, }; static const unsigned char xdh_wei25519_1866_privkey[] = { 0xb8, 0x98, 0xf0, 0x32, 0x97, 0x94, 0x74, 0x7d, 0x33, 0x26, 0x9a, 0x39, 0x89, 0xb6, 0x7e, 0x43, 0xa7, 0xab, 0x5a, 0x55, 0xfa, 0x12, 0x10, 0xb0, 0xe5, 0xdb, 0xa1, 0x93, 0xf4, 0xfa, 0x09, 0x4e, }; static const unsigned char xdh_wei25519_1866_sharedsecret[] = { 0xcd, 0xb3, 0xca, 0x02, 0xd5, 0xfd, 0xb5, 0x36, 0xdb, 0xc7, 0x39, 0x5b, 0xab, 0x12, 0xbd, 0xcf, 0xd5, 0x5b, 0x1a, 0xe7, 0x71, 0xa4, 0x17, 0x6d, 0xed, 0xb5, 0x5e, 0xb4, 0xd7, 0x55, 0xc7, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1866 = { .name = "xdh_wei25519_1866", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1866_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1866_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1866_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 302 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1867 for XDH, tcId is 303 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1867_peerpubkey[] = { 0xa8, 0x9b, 0xcf, 0xa2, 0x36, 0xbb, 0xcc, 0xf0, 0x7c, 0x43, 0x4b, 0x59, 0xf8, 0x65, 0x5f, 0xb0, 0x85, 0xb6, 0xcb, 0xe5, 0xed, 0x63, 0x76, 0x28, 0x1d, 0xf8, 0x13, 0xaf, 0xba, 0x22, 0xb7, 0x52, }; static const unsigned char xdh_wei25519_1867_privkey[] = { 0xa0, 0x52, 0x8e, 0xd9, 0xa8, 0xec, 0x22, 0xeb, 0xe9, 0xcc, 0x2e, 0x32, 0xfa, 0xfc, 0x3f, 0x46, 0x75, 0x00, 0xa9, 0xa2, 0x2f, 0x53, 0x77, 0x38, 0x2d, 0xf6, 0x60, 0x4e, 0xdc, 0xdf, 0x4f, 0x44, }; static const unsigned char xdh_wei25519_1867_sharedsecret[] = { 0xcd, 0x32, 0x45, 0x40, 0x3f, 0xd9, 0xed, 0xfc, 0xf9, 0x1c, 0x95, 0x81, 0xeb, 0xb2, 0xeb, 0x7c, 0x77, 0xad, 0x68, 0x37, 0xfc, 0xa3, 0x72, 0x47, 0x9e, 0x78, 0xde, 0x9f, 0xaf, 0x60, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_1867 = { .name = "xdh_wei25519_1867", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1867_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1867_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1867_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 303 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1868 for XDH, tcId is 304 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1868_peerpubkey[] = { 0xcd, 0xb1, 0xf9, 0x5f, 0x6e, 0xac, 0xc2, 0x4b, 0x6d, 0x02, 0x9c, 0x6e, 0xd9, 0x76, 0x66, 0x6d, 0xc5, 0x17, 0x94, 0xdb, 0x8e, 0x4a, 0xa9, 0x66, 0xba, 0x85, 0x0f, 0xd7, 0xf5, 0x04, 0x89, 0x65, }; static const unsigned char xdh_wei25519_1868_privkey[] = { 0xf0, 0x68, 0x88, 0xbd, 0xe7, 0x5d, 0x68, 0x9d, 0x05, 0x68, 0x74, 0xf6, 0x43, 0x60, 0x00, 0x49, 0x7d, 0x22, 0xd8, 0xad, 0x9b, 0x95, 0xa1, 0xc6, 0x7d, 0xe1, 0xdd, 0xa4, 0xad, 0xa3, 0x16, 0x4d, }; static const unsigned char xdh_wei25519_1868_sharedsecret[] = { 0xab, 0x7c, 0x47, 0xec, 0xb0, 0xc0, 0x16, 0x71, 0x56, 0xf4, 0x4f, 0x66, 0xa5, 0x27, 0x26, 0x4b, 0x95, 0x8f, 0xc9, 0x92, 0xc2, 0x1c, 0xe9, 0x8c, 0xef, 0x3a, 0xe2, 0x14, 0xd6, 0x6b, 0xd8, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1868 = { .name = "xdh_wei25519_1868", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1868_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1868_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1868_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 304 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1869 for XDH, tcId is 305 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1869_peerpubkey[] = { 0x94, 0x91, 0xa8, 0x27, 0x44, 0xf1, 0xcb, 0x61, 0x05, 0xb7, 0x6b, 0x04, 0x42, 0xe5, 0x4e, 0x60, 0x5a, 0xc6, 0x7f, 0x47, 0xa1, 0xb2, 0xb3, 0xb5, 0x52, 0xd4, 0x86, 0xf7, 0x5b, 0xd9, 0x8e, 0x6a, }; static const unsigned char xdh_wei25519_1869_privkey[] = { 0xe0, 0x34, 0xfc, 0xaa, 0x3a, 0xe4, 0x06, 0x03, 0xf9, 0xb2, 0x2a, 0xf1, 0x59, 0xfd, 0x67, 0xef, 0x00, 0x93, 0x80, 0x94, 0x6d, 0xe9, 0x2c, 0xb1, 0xd8, 0x3c, 0xc4, 0x89, 0xe8, 0xb3, 0x50, 0x41, }; static const unsigned char xdh_wei25519_1869_sharedsecret[] = { 0x1b, 0xfa, 0x26, 0x4a, 0x7c, 0x72, 0x29, 0x14, 0x7a, 0x20, 0xdd, 0x02, 0x12, 0x11, 0x89, 0x1e, 0x61, 0xf5, 0xd8, 0xc7, 0x6c, 0xd8, 0x3f, 0x0b, 0xe2, 0x4b, 0xc7, 0x0e, 0x46, 0x6a, 0x81, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1869 = { .name = "xdh_wei25519_1869", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1869_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1869_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1869_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 305 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1870 for XDH, tcId is 306 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1870_peerpubkey[] = { 0x4d, 0x19, 0xe1, 0x56, 0xe0, 0x84, 0xfe, 0x58, 0x2a, 0x0e, 0xb7, 0x9b, 0x2f, 0x12, 0xb6, 0x1d, 0x0b, 0x03, 0xf3, 0xf2, 0x29, 0x22, 0x7e, 0x79, 0x8a, 0x93, 0x3e, 0xea, 0x5a, 0x1b, 0x61, 0x29, }; static const unsigned char xdh_wei25519_1870_privkey[] = { 0x70, 0x2a, 0x74, 0x48, 0xc0, 0xed, 0x58, 0xe1, 0xf4, 0xe0, 0xe3, 0x32, 0xd0, 0x96, 0xa3, 0x63, 0x60, 0xbe, 0xca, 0x2f, 0x69, 0x55, 0xc8, 0x15, 0xbc, 0x12, 0x0b, 0x3a, 0x69, 0x1d, 0x77, 0x42, }; static const unsigned char xdh_wei25519_1870_sharedsecret[] = { 0xc4, 0x60, 0x57, 0xfc, 0xf6, 0x30, 0x88, 0xb3, 0xa8, 0x0e, 0x0b, 0xe5, 0xce, 0x24, 0xc8, 0x02, 0x6d, 0xfa, 0xdd, 0x34, 0x1b, 0x5d, 0x82, 0x15, 0xb8, 0xaf, 0xcb, 0x2a, 0x5a, 0x02, 0xbb, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1870 = { .name = "xdh_wei25519_1870", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1870_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1870_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1870_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 306 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1871 for XDH, tcId is 307 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1871_peerpubkey[] = { 0xcc, 0x47, 0x29, 0xc4, 0xea, 0xe2, 0x92, 0xe4, 0x31, 0xec, 0x3a, 0x5c, 0xf5, 0x02, 0x0e, 0x19, 0xf9, 0xbe, 0xa5, 0x0e, 0xf3, 0x21, 0x8d, 0x9a, 0x79, 0x00, 0x34, 0x52, 0x6c, 0x3e, 0xe1, 0x4a, }; static const unsigned char xdh_wei25519_1871_privkey[] = { 0x50, 0x02, 0x5c, 0xb5, 0x08, 0xad, 0x4f, 0xaa, 0x06, 0xfa, 0xfd, 0x0f, 0x4a, 0x33, 0xb7, 0x47, 0xcc, 0xf1, 0xb3, 0x57, 0x38, 0x85, 0xd3, 0x42, 0x65, 0x00, 0xd5, 0x1b, 0x56, 0x30, 0x01, 0x44, }; static const unsigned char xdh_wei25519_1871_sharedsecret[] = { 0xd4, 0x36, 0x1e, 0x26, 0x12, 0x7a, 0xdf, 0xbe, 0x37, 0xc2, 0xed, 0x8f, 0x42, 0xcc, 0xe4, 0xeb, 0xab, 0x8a, 0xb7, 0x4e, 0xd9, 0xe7, 0x4f, 0x14, 0xc3, 0x43, 0x5d, 0x61, 0x2c, 0x1a, 0x99, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_1871 = { .name = "xdh_wei25519_1871", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1871_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1871_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1871_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 307 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1872 for XDH, tcId is 308 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1872_peerpubkey[] = { 0x4a, 0x47, 0x42, 0x49, 0xaf, 0x8f, 0x77, 0x1f, 0x0c, 0xfb, 0x11, 0x16, 0xf2, 0x4f, 0xda, 0x4c, 0x42, 0xf4, 0x13, 0x6d, 0x2a, 0xfb, 0x76, 0x6d, 0x1b, 0x29, 0x1c, 0x73, 0xc6, 0x66, 0x8d, 0x5a, }; static const unsigned char xdh_wei25519_1872_privkey[] = { 0x70, 0x82, 0xfc, 0x53, 0x29, 0x9a, 0x4d, 0x30, 0xe5, 0xd0, 0xc3, 0x83, 0xc0, 0x35, 0x93, 0x5b, 0x1e, 0xee, 0xbd, 0x94, 0x08, 0xfe, 0x4d, 0x04, 0xb9, 0x3e, 0xec, 0x24, 0xbe, 0x52, 0xeb, 0x47, }; static const unsigned char xdh_wei25519_1872_sharedsecret[] = { 0x80, 0xdf, 0xae, 0x7a, 0x28, 0xbb, 0x13, 0xd9, 0xe5, 0x1f, 0xf1, 0x99, 0x26, 0x7c, 0xec, 0x2a, 0x19, 0xdf, 0xc8, 0xb6, 0xf4, 0x97, 0x4e, 0x34, 0x46, 0xb2, 0xf6, 0x2f, 0xe9, 0xb6, 0x24, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1872 = { .name = "xdh_wei25519_1872", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1872_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1872_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1872_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 308 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1873 for XDH, tcId is 309 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1873_peerpubkey[] = { 0x0f, 0x2a, 0x5c, 0xbb, 0xe5, 0x03, 0x13, 0x95, 0x31, 0xac, 0x05, 0x29, 0x18, 0x3d, 0xa8, 0xe6, 0x24, 0xd2, 0x52, 0x86, 0xf6, 0xe3, 0x5d, 0x14, 0x07, 0xab, 0x1f, 0x4d, 0x76, 0xeb, 0xc2, 0x60, }; static const unsigned char xdh_wei25519_1873_privkey[] = { 0x98, 0xff, 0x7e, 0x71, 0x1d, 0x65, 0xcc, 0x7f, 0xd9, 0xd0, 0xac, 0x12, 0xdf, 0xe8, 0xb8, 0x94, 0xe0, 0xa9, 0x36, 0x02, 0xca, 0x9e, 0x75, 0xbf, 0x0e, 0xab, 0xbf, 0x0b, 0xfe, 0x67, 0x01, 0x48, }; static const unsigned char xdh_wei25519_1873_sharedsecret[] = { 0x7a, 0x5c, 0x37, 0x30, 0x65, 0xe3, 0x39, 0xb2, 0x6e, 0xe5, 0x37, 0xcf, 0xf1, 0xcf, 0x45, 0x97, 0xcf, 0xcb, 0x4b, 0xf2, 0xdc, 0x7c, 0x4b, 0xcf, 0xec, 0x98, 0x84, 0x44, 0x32, 0x81, 0xc2, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1873 = { .name = "xdh_wei25519_1873", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1873_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1873_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1873_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 309 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1874 for XDH, tcId is 310 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1874_peerpubkey[] = { 0x2f, 0xe1, 0x1d, 0x72, 0x3d, 0xba, 0x63, 0x55, 0x9e, 0x1b, 0x96, 0x14, 0x78, 0x93, 0xcb, 0x7e, 0xc8, 0x62, 0x71, 0x18, 0x06, 0x31, 0x6d, 0xaa, 0x86, 0xcd, 0x4d, 0xa7, 0x69, 0xd4, 0xb2, 0x2d, }; static const unsigned char xdh_wei25519_1874_privkey[] = { 0xb0, 0x80, 0xf4, 0xac, 0x1e, 0x75, 0x8b, 0xbf, 0xbf, 0xa8, 0x88, 0xa7, 0x8c, 0xb8, 0xd6, 0x24, 0xd9, 0x7b, 0x86, 0x88, 0x00, 0x2b, 0x20, 0x17, 0xe3, 0x5f, 0x52, 0xf3, 0xd7, 0xc7, 0x96, 0x49, }; static const unsigned char xdh_wei25519_1874_sharedsecret[] = { 0xc5, 0xed, 0xcc, 0x5d, 0x44, 0x70, 0x71, 0xc0, 0x8d, 0xfa, 0x82, 0x81, 0x41, 0x4a, 0xe6, 0xa0, 0x2d, 0xe7, 0x53, 0xe2, 0xf7, 0xbb, 0x80, 0xaf, 0x5f, 0x62, 0x53, 0xe5, 0x6d, 0xb4, 0x34, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1874 = { .name = "xdh_wei25519_1874", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1874_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1874_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1874_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 310 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1875 for XDH, tcId is 311 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1875_peerpubkey[] = { 0x98, 0xe1, 0x21, 0x1d, 0xcf, 0x66, 0x51, 0xfa, 0x9f, 0x2d, 0x00, 0xeb, 0x08, 0x3a, 0xe5, 0x85, 0x58, 0x69, 0xa2, 0xa5, 0x3e, 0x83, 0x5f, 0x2e, 0x03, 0xb3, 0x0c, 0x0a, 0x19, 0xba, 0x80, 0x51, }; static const unsigned char xdh_wei25519_1875_privkey[] = { 0xe8, 0x15, 0xbf, 0x9a, 0x96, 0x7e, 0x12, 0x08, 0xaf, 0x8e, 0x74, 0xce, 0x9a, 0xf6, 0xd1, 0x13, 0xda, 0xb1, 0x7c, 0x01, 0xc9, 0x0f, 0x1a, 0xe2, 0xbc, 0x25, 0xe3, 0xe2, 0xf9, 0xe3, 0xa4, 0x4a, }; static const unsigned char xdh_wei25519_1875_sharedsecret[] = { 0x26, 0x3a, 0x38, 0xfe, 0x53, 0x8b, 0x50, 0xe8, 0xe9, 0x88, 0xbf, 0x07, 0xae, 0x86, 0xf3, 0x3d, 0x49, 0x88, 0x6b, 0x14, 0xc7, 0x14, 0x3e, 0xfd, 0x1d, 0x20, 0x25, 0xc8, 0x40, 0xe3, 0x6a, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1875 = { .name = "xdh_wei25519_1875", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1875_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1875_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1875_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 311 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1876 for XDH, tcId is 312 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1876_peerpubkey[] = { 0x2f, 0x1b, 0x93, 0x8b, 0x81, 0xa4, 0xc9, 0x0e, 0x12, 0x51, 0x13, 0x5a, 0xd7, 0xfa, 0xbe, 0x83, 0x5f, 0x6a, 0x8b, 0xc5, 0xe2, 0x2d, 0x4b, 0x2a, 0xb1, 0x19, 0xf6, 0xf6, 0x77, 0x87, 0x76, 0x77, }; static const unsigned char xdh_wei25519_1876_privkey[] = { 0x40, 0x51, 0xb0, 0x1c, 0xdf, 0x90, 0xaf, 0x38, 0xf0, 0xa9, 0x6f, 0xfb, 0x83, 0xf8, 0xd4, 0x13, 0x3a, 0xbe, 0x4f, 0xb0, 0x35, 0xb6, 0xfe, 0x6f, 0x65, 0x27, 0x64, 0x47, 0xca, 0xa7, 0x31, 0x4f, }; static const unsigned char xdh_wei25519_1876_sharedsecret[] = { 0x34, 0x0a, 0xcf, 0x28, 0x01, 0xde, 0x71, 0xc1, 0x8f, 0x4c, 0x79, 0xcf, 0xea, 0x37, 0x2b, 0xc3, 0x54, 0xe4, 0xc8, 0xa5, 0xeb, 0x5c, 0x2c, 0xce, 0x8b, 0x45, 0xd8, 0x85, 0xdf, 0x16, 0x2f, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_1876 = { .name = "xdh_wei25519_1876", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1876_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1876_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1876_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 312 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1877 for XDH, tcId is 313 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1877_peerpubkey[] = { 0x34, 0x0b, 0x9f, 0x61, 0x35, 0x50, 0xd1, 0x4e, 0x3c, 0x62, 0x56, 0xca, 0xf0, 0x29, 0xb3, 0x1c, 0xad, 0x3f, 0xe6, 0xdb, 0x58, 0x82, 0x94, 0xe2, 0xd3, 0xaf, 0x37, 0x60, 0x5a, 0x68, 0xd8, 0x37, }; static const unsigned char xdh_wei25519_1877_privkey[] = { 0x98, 0xc0, 0x92, 0x36, 0x31, 0x84, 0xe5, 0x8a, 0xd6, 0xce, 0x51, 0x0b, 0xd3, 0x2b, 0x30, 0x9c, 0x9d, 0x5a, 0x46, 0xf8, 0xd9, 0xee, 0x6f, 0x64, 0xa6, 0x9d, 0x81, 0x80, 0xbb, 0xc6, 0xcb, 0x45, }; static const unsigned char xdh_wei25519_1877_sharedsecret[] = { 0x9e, 0xfe, 0x5c, 0xd7, 0x11, 0x02, 0xd8, 0x99, 0xa3, 0x33, 0xa4, 0x5e, 0xa6, 0xd2, 0xc0, 0x89, 0x60, 0x4b, 0x92, 0x6d, 0xb8, 0xc2, 0x64, 0x5c, 0xe5, 0xff, 0x21, 0x49, 0x2f, 0x27, 0xa3, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_1877 = { .name = "xdh_wei25519_1877", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1877_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1877_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1877_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 313 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1878 for XDH, tcId is 314 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1878_peerpubkey[] = { 0xed, 0xfb, 0xd6, 0xf0, 0x9a, 0xa3, 0x24, 0x35, 0x44, 0x0b, 0x0c, 0xa8, 0xba, 0x43, 0x63, 0x08, 0x31, 0x96, 0x13, 0xf8, 0xf2, 0xd5, 0x01, 0x13, 0x3c, 0x52, 0x6c, 0x3f, 0xf5, 0x5c, 0x7b, 0x3d, }; static const unsigned char xdh_wei25519_1878_privkey[] = { 0x68, 0x6e, 0x51, 0xc0, 0x01, 0x16, 0xd1, 0xc1, 0x91, 0xaa, 0x9d, 0x58, 0x23, 0xb9, 0x6e, 0x59, 0x56, 0x10, 0x2e, 0x8f, 0xe7, 0x5f, 0x5c, 0xf2, 0x37, 0x6d, 0x99, 0x98, 0x9f, 0x6f, 0x43, 0x42, }; static const unsigned char xdh_wei25519_1878_sharedsecret[] = { 0x19, 0x61, 0x82, 0x09, 0x5b, 0xcd, 0x2e, 0xf4, 0x6b, 0x18, 0xf6, 0x4c, 0x63, 0x60, 0x7e, 0x0a, 0xb1, 0x62, 0xa0, 0x86, 0x9e, 0x62, 0x65, 0xac, 0x8a, 0xe3, 0x5e, 0x35, 0x8c, 0x3d, 0x8a, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1878 = { .name = "xdh_wei25519_1878", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1878_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1878_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1878_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 314 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1879 for XDH, tcId is 315 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1879_peerpubkey[] = { 0x9b, 0x05, 0x38, 0xcd, 0x61, 0x8b, 0x0a, 0x4d, 0xe0, 0x9e, 0x45, 0x42, 0x0f, 0x84, 0xd5, 0x4d, 0x74, 0x51, 0x4f, 0xbb, 0x1a, 0x31, 0xc1, 0xa4, 0xaa, 0x1e, 0x93, 0x30, 0x6f, 0x20, 0x72, 0x3f, }; static const unsigned char xdh_wei25519_1879_privkey[] = { 0x20, 0x8a, 0xf2, 0xc9, 0x44, 0x2b, 0x36, 0xb5, 0x21, 0xfc, 0x3a, 0x1e, 0xce, 0xfe, 0x34, 0x2a, 0xac, 0x30, 0x8b, 0xd6, 0xe6, 0x29, 0x6e, 0xe0, 0x91, 0xc1, 0x96, 0xdc, 0x02, 0xe7, 0xae, 0x40, }; static const unsigned char xdh_wei25519_1879_sharedsecret[] = { 0xa3, 0xc6, 0xb7, 0x51, 0x68, 0x21, 0x1e, 0x8e, 0x0a, 0x49, 0xca, 0x81, 0x5b, 0xfe, 0x3f, 0x46, 0x9f, 0x29, 0x86, 0x4d, 0xc8, 0x16, 0x61, 0x52, 0xb4, 0x56, 0xe7, 0x07, 0x4a, 0xfa, 0x9b, 0x5b, }; static const wycheproof_xdh_test xdh_wei25519_1879 = { .name = "xdh_wei25519_1879", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1879_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1879_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1879_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 315 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1880 for XDH, tcId is 316 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1880_peerpubkey[] = { 0xae, 0x8c, 0xf2, 0xfc, 0xdd, 0xe7, 0x10, 0xc2, 0xc1, 0x18, 0x45, 0x24, 0xbc, 0x32, 0x43, 0x08, 0x74, 0xdf, 0xa0, 0x8c, 0x12, 0x5f, 0x61, 0xd6, 0x91, 0x9d, 0xaf, 0x8e, 0x66, 0xdb, 0x41, 0x5a, }; static const unsigned char xdh_wei25519_1880_privkey[] = { 0xc0, 0xd8, 0x61, 0xa6, 0xd5, 0xff, 0x91, 0xf9, 0x1e, 0x3b, 0xd0, 0x59, 0x34, 0x16, 0x1f, 0xf0, 0xab, 0x0f, 0x3c, 0xe7, 0xe4, 0xa2, 0xb5, 0xb4, 0xfc, 0xb3, 0x1a, 0xe3, 0x4b, 0x46, 0x66, 0x4f, }; static const unsigned char xdh_wei25519_1880_sharedsecret[] = { 0xde, 0xaa, 0xe6, 0xc9, 0x95, 0x28, 0x44, 0xa3, 0xa1, 0xd0, 0x16, 0x88, 0xe7, 0x10, 0x5b, 0x0b, 0xbe, 0xad, 0xc1, 0x60, 0x76, 0x3c, 0x20, 0x02, 0xb6, 0xd0, 0xbc, 0xf3, 0x5c, 0x22, 0xd1, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_1880 = { .name = "xdh_wei25519_1880", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1880_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1880_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1880_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 316 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1881 for XDH, tcId is 317 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1881_peerpubkey[] = { 0x2a, 0x59, 0xf4, 0x78, 0x40, 0x2d, 0x28, 0x29, 0xcd, 0x3b, 0x62, 0xe9, 0xf7, 0xcc, 0x01, 0x44, 0x5e, 0x8e, 0x73, 0xa4, 0x2c, 0xb1, 0x1a, 0xf0, 0x0b, 0x6b, 0x9a, 0x9f, 0x0e, 0x44, 0xcb, 0x3b, }; static const unsigned char xdh_wei25519_1881_privkey[] = { 0x70, 0x78, 0x5c, 0xad, 0x16, 0x09, 0x72, 0xb7, 0x11, 0x31, 0x86, 0x59, 0xb4, 0x7b, 0x57, 0x4f, 0x69, 0x41, 0xef, 0x6d, 0xa1, 0xea, 0x06, 0x50, 0x8b, 0x26, 0x50, 0xf5, 0x7e, 0xc9, 0xe5, 0x4a, }; static const unsigned char xdh_wei25519_1881_sharedsecret[] = { 0xc2, 0x04, 0xbd, 0x15, 0xf0, 0x1a, 0x11, 0xa2, 0xef, 0xda, 0xbe, 0x2e, 0x90, 0x2b, 0x7c, 0xd0, 0xaa, 0x07, 0x93, 0x16, 0xf6, 0x0e, 0x91, 0x1b, 0x3e, 0xe5, 0xd4, 0x62, 0x62, 0xe9, 0x86, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1881 = { .name = "xdh_wei25519_1881", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1881_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1881_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1881_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 317 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1882 for XDH, tcId is 318 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1882_peerpubkey[] = { 0x83, 0x6c, 0x8e, 0x45, 0xdd, 0x89, 0x0e, 0x65, 0x8c, 0x33, 0xe6, 0x9b, 0x6f, 0x57, 0x8a, 0x5a, 0x77, 0x4c, 0x48, 0xb4, 0x35, 0xbc, 0x3b, 0x91, 0xac, 0x69, 0x3d, 0xf9, 0x4a, 0x05, 0x58, 0x57, }; static const unsigned char xdh_wei25519_1882_privkey[] = { 0x60, 0xaf, 0xc8, 0xeb, 0x1f, 0x87, 0xdf, 0x4b, 0x55, 0x28, 0x7f, 0x3c, 0x46, 0x98, 0xc5, 0xf8, 0xb9, 0x97, 0xb2, 0x8a, 0x73, 0xc5, 0x73, 0xfc, 0x27, 0x3e, 0x9c, 0x46, 0x7f, 0xb7, 0xe4, 0x4c, }; static const unsigned char xdh_wei25519_1882_sharedsecret[] = { 0xc5, 0x45, 0x74, 0x87, 0xe9, 0x09, 0x32, 0xf5, 0x7b, 0x94, 0xaf, 0x2e, 0x87, 0x50, 0x40, 0x3e, 0x09, 0xc9, 0xac, 0x72, 0x7e, 0x2b, 0xd2, 0x13, 0x59, 0x04, 0x62, 0xb6, 0x93, 0x7b, 0x07, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1882 = { .name = "xdh_wei25519_1882", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1882_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1882_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1882_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 318 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1883 for XDH, tcId is 319 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1883_peerpubkey[] = { 0x59, 0x51, 0x9e, 0xad, 0x79, 0x95, 0xa6, 0xdf, 0x89, 0xbb, 0x54, 0xc8, 0x40, 0xd6, 0x1a, 0x84, 0x81, 0x88, 0x10, 0x98, 0xb8, 0xa4, 0xf8, 0x3c, 0x6a, 0x2f, 0x6b, 0xa8, 0x00, 0x33, 0x82, 0x57, }; static const unsigned char xdh_wei25519_1883_privkey[] = { 0xa8, 0x3c, 0x11, 0xb2, 0x83, 0x41, 0x36, 0xb9, 0xaa, 0xf0, 0x15, 0x2d, 0x90, 0xe7, 0x6e, 0x3c, 0x27, 0x17, 0x76, 0x93, 0xa2, 0x83, 0x4e, 0x8b, 0xed, 0xa0, 0xa3, 0x57, 0x1b, 0xce, 0x69, 0x47, }; static const unsigned char xdh_wei25519_1883_sharedsecret[] = { 0x4e, 0xd6, 0xf8, 0xd6, 0x29, 0x32, 0x54, 0x1c, 0x6b, 0xea, 0x16, 0xe0, 0x38, 0x35, 0xf1, 0xf7, 0x58, 0xa5, 0xc4, 0x17, 0x22, 0xb5, 0xc9, 0x98, 0x9c, 0x9c, 0x7c, 0xc0, 0x8e, 0x34, 0xe3, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_1883 = { .name = "xdh_wei25519_1883", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1883_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1883_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1883_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 319 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1884 for XDH, tcId is 320 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1884_peerpubkey[] = { 0x32, 0xf3, 0x4d, 0xa8, 0x4a, 0xb4, 0xbf, 0xca, 0x36, 0x9c, 0x4b, 0x88, 0x46, 0x91, 0xbe, 0xcf, 0x54, 0xbe, 0x7f, 0xbe, 0xd1, 0x64, 0x49, 0xdc, 0x86, 0x96, 0x9d, 0xa7, 0xea, 0x9a, 0xbf, 0x62, }; static const unsigned char xdh_wei25519_1884_privkey[] = { 0xb8, 0x0d, 0x87, 0x95, 0x73, 0x58, 0x06, 0x57, 0x9e, 0x71, 0x75, 0x98, 0x94, 0x93, 0x9d, 0x75, 0x88, 0x53, 0x59, 0x21, 0x27, 0xef, 0xe8, 0x4f, 0xc8, 0x2e, 0xb7, 0xcd, 0xee, 0x45, 0x01, 0x4f, }; static const unsigned char xdh_wei25519_1884_sharedsecret[] = { 0x52, 0x1a, 0x5b, 0x81, 0x49, 0xa1, 0x32, 0xd1, 0x55, 0xe6, 0xb4, 0xed, 0x11, 0x39, 0x00, 0x50, 0x6c, 0xfc, 0x2f, 0x76, 0xd2, 0xa3, 0xe1, 0x41, 0x96, 0xd6, 0x9e, 0xb8, 0x5d, 0xb3, 0xc9, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1884 = { .name = "xdh_wei25519_1884", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1884_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1884_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1884_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 320 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1885 for XDH, tcId is 321 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1885_peerpubkey[] = { 0x82, 0xae, 0x48, 0xdc, 0xf5, 0x9b, 0xc5, 0xe4, 0x69, 0xf9, 0xa1, 0x1b, 0x18, 0xa3, 0x2d, 0x47, 0x53, 0xac, 0x81, 0x86, 0x92, 0xdf, 0xae, 0x27, 0xd6, 0x75, 0x41, 0x1a, 0x22, 0x72, 0xb3, 0x63, }; static const unsigned char xdh_wei25519_1885_privkey[] = { 0xe0, 0x8f, 0xfa, 0x45, 0xef, 0xbe, 0x1f, 0x96, 0x58, 0x4c, 0x76, 0x25, 0x45, 0x54, 0xad, 0xb9, 0x17, 0x7b, 0x58, 0xed, 0x09, 0x60, 0x9a, 0x6c, 0xe4, 0x99, 0xe5, 0xbd, 0x22, 0xd3, 0x5c, 0x45, }; static const unsigned char xdh_wei25519_1885_sharedsecret[] = { 0xe8, 0x31, 0xd6, 0xce, 0xe9, 0x5c, 0xa1, 0xb4, 0xc9, 0x6b, 0xb8, 0x94, 0x57, 0x56, 0x2f, 0xff, 0x36, 0xcb, 0x4d, 0x08, 0xb8, 0x1d, 0xa8, 0x9b, 0x81, 0x0b, 0x42, 0x5e, 0xcd, 0xba, 0xfd, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_1885 = { .name = "xdh_wei25519_1885", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1885_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1885_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1885_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 321 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1886 for XDH, tcId is 322 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1886_peerpubkey[] = { 0xb3, 0x3b, 0xd3, 0xad, 0x14, 0xb6, 0x68, 0x96, 0xf9, 0x71, 0xcb, 0xdf, 0x27, 0x78, 0x5f, 0xc3, 0xaa, 0x3c, 0xfb, 0x39, 0xad, 0xc6, 0xc2, 0x92, 0x57, 0xd2, 0x2e, 0xa4, 0xdf, 0x8c, 0xbf, 0x63, }; static const unsigned char xdh_wei25519_1886_privkey[] = { 0x68, 0x8e, 0x1b, 0xbb, 0x51, 0x14, 0xf3, 0x4e, 0x85, 0x31, 0xc2, 0x78, 0xb2, 0xd9, 0x71, 0x4b, 0xa0, 0x7c, 0x32, 0xa7, 0xae, 0xa6, 0xe6, 0x27, 0x13, 0x5b, 0xd1, 0xfc, 0x65, 0x23, 0x80, 0x45, }; static const unsigned char xdh_wei25519_1886_sharedsecret[] = { 0x35, 0x0e, 0x3a, 0xb9, 0xd0, 0xdb, 0xff, 0x78, 0xf3, 0xf2, 0x15, 0x74, 0x28, 0xbe, 0xba, 0x18, 0x93, 0x33, 0xbe, 0x27, 0x48, 0x27, 0xc1, 0x0d, 0x59, 0x67, 0x3f, 0x21, 0xc0, 0xc4, 0x8a, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1886 = { .name = "xdh_wei25519_1886", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1886_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1886_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1886_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 322 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1887 for XDH, tcId is 323 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1887_peerpubkey[] = { 0x18, 0xe5, 0x8d, 0xf6, 0xbf, 0xbe, 0x18, 0x4b, 0x0e, 0x3c, 0x7c, 0x4b, 0xf2, 0xa0, 0x51, 0xed, 0x05, 0x5b, 0x79, 0x35, 0x01, 0xc0, 0xd4, 0xfc, 0x47, 0xbc, 0x8a, 0x95, 0xc4, 0xde, 0xec, 0x7c, }; static const unsigned char xdh_wei25519_1887_privkey[] = { 0x80, 0x36, 0xa4, 0xe2, 0xe9, 0x3e, 0x9e, 0xd8, 0x2d, 0x99, 0xd7, 0x1a, 0x52, 0x2a, 0xac, 0x92, 0x89, 0xbd, 0x99, 0x05, 0xfe, 0x41, 0xd0, 0x1d, 0x08, 0xa4, 0x99, 0x37, 0x6a, 0x25, 0x84, 0x42, }; static const unsigned char xdh_wei25519_1887_sharedsecret[] = { 0xad, 0xe7, 0x1d, 0x64, 0x60, 0x28, 0x7f, 0xe8, 0x08, 0xe9, 0x47, 0x56, 0x0e, 0x67, 0xa9, 0xd6, 0xff, 0x2f, 0x96, 0xea, 0xa1, 0x35, 0x5d, 0x2e, 0x9f, 0xbb, 0xe5, 0x49, 0xe8, 0x83, 0x38, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1887 = { .name = "xdh_wei25519_1887", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1887_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1887_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1887_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 323 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1888 for XDH, tcId is 324 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1888_peerpubkey[] = { 0x77, 0x2e, 0x31, 0xe7, 0x76, 0xe8, 0xd4, 0xf2, 0x3b, 0x7a, 0xf2, 0x03, 0x7a, 0xf2, 0x8a, 0x37, 0xe6, 0x8f, 0x61, 0xe7, 0x40, 0xb3, 0x90, 0x4f, 0x4e, 0xc4, 0xc9, 0x01, 0x57, 0xbe, 0x14, 0x78, }; static const unsigned char xdh_wei25519_1888_privkey[] = { 0x90, 0x1b, 0x20, 0xf0, 0xcd, 0xa7, 0x40, 0x76, 0xc3, 0xd4, 0xbf, 0x4e, 0x02, 0x65, 0x3c, 0xd4, 0x06, 0xed, 0x48, 0x0c, 0x35, 0x51, 0x59, 0xe2, 0x2c, 0xa4, 0x4b, 0x98, 0x4f, 0x10, 0x76, 0x4f, }; static const unsigned char xdh_wei25519_1888_sharedsecret[] = { 0x91, 0xa9, 0xbe, 0xc2, 0x8c, 0xf1, 0x8c, 0x70, 0x94, 0xe2, 0xd8, 0x0d, 0x27, 0x64, 0xdf, 0x59, 0xad, 0xa0, 0xcb, 0x19, 0x46, 0xbe, 0x42, 0x28, 0x64, 0xbd, 0x7a, 0xd0, 0xe5, 0x33, 0xb6, 0x63, }; static const wycheproof_xdh_test xdh_wei25519_1888 = { .name = "xdh_wei25519_1888", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1888_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1888_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1888_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 324 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1889 for XDH, tcId is 325 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1889_peerpubkey[] = { 0xa8, 0xd5, 0x5d, 0x5c, 0x11, 0x37, 0xe9, 0xbb, 0x62, 0x65, 0x57, 0xf9, 0xd6, 0xee, 0xa8, 0xd3, 0x12, 0x0e, 0x93, 0x64, 0xf8, 0xbc, 0xd9, 0xb6, 0x79, 0x34, 0x26, 0x0b, 0x1a, 0x09, 0x18, 0x01, }; static const unsigned char xdh_wei25519_1889_privkey[] = { 0xd8, 0x3e, 0xb7, 0xaf, 0xfd, 0x1b, 0xcc, 0x1e, 0xc0, 0xb4, 0x82, 0x3c, 0xee, 0x5c, 0xf0, 0xb1, 0x5b, 0x5f, 0x57, 0x08, 0x5a, 0xa2, 0x70, 0x8e, 0xd4, 0x37, 0xa2, 0x92, 0x53, 0x29, 0xb5, 0x50, }; static const unsigned char xdh_wei25519_1889_sharedsecret[] = { 0x6c, 0x1b, 0x8e, 0x24, 0x0e, 0xdf, 0xa5, 0xdb, 0x2a, 0xbb, 0x3d, 0xc1, 0x2b, 0xcf, 0x9e, 0x8a, 0xc9, 0xca, 0x10, 0xdd, 0x35, 0x07, 0x08, 0x37, 0x46, 0xf6, 0xf3, 0x6d, 0xc0, 0x35, 0xd7, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1889 = { .name = "xdh_wei25519_1889", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1889_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1889_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1889_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 325 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1890 for XDH, tcId is 326 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1890_peerpubkey[] = { 0x33, 0xc9, 0x4b, 0xe5, 0x8b, 0x0f, 0x0e, 0x6c, 0xf3, 0x63, 0xe1, 0xb1, 0x2a, 0x2e, 0xbf, 0xb9, 0x30, 0x40, 0x71, 0x5b, 0xe9, 0x15, 0x18, 0xf2, 0x1d, 0xf2, 0x95, 0x3e, 0xea, 0xb5, 0xfb, 0x01, }; static const unsigned char xdh_wei25519_1890_privkey[] = { 0x98, 0x9e, 0xee, 0x31, 0x7b, 0x9c, 0x25, 0x4d, 0xc0, 0x23, 0xf9, 0xe3, 0x5e, 0xff, 0x02, 0x24, 0xbc, 0x2e, 0x0b, 0xc8, 0x71, 0x99, 0x6b, 0x94, 0x6a, 0x96, 0x97, 0x0e, 0x75, 0x06, 0xa8, 0x5e, }; static const unsigned char xdh_wei25519_1890_sharedsecret[] = { 0xd4, 0xc3, 0xb3, 0x46, 0x77, 0x14, 0xf2, 0xd1, 0x05, 0x90, 0x4a, 0x84, 0xcc, 0x7e, 0x81, 0xd7, 0xf2, 0x91, 0x30, 0x4e, 0x90, 0x80, 0x41, 0x68, 0x2d, 0x89, 0x06, 0xa6, 0x83, 0xc1, 0x21, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1890 = { .name = "xdh_wei25519_1890", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1890_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1890_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1890_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 326 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1891 for XDH, tcId is 327 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1891_peerpubkey[] = { 0xa2, 0x18, 0xae, 0x96, 0x24, 0xb0, 0x7c, 0xe0, 0x51, 0x78, 0xb9, 0xd0, 0xcc, 0x1b, 0x71, 0xde, 0xe2, 0x1f, 0x27, 0x85, 0x2a, 0x2c, 0xeb, 0x18, 0x61, 0x0b, 0x40, 0x52, 0xb2, 0x44, 0xf0, 0x0f, }; static const unsigned char xdh_wei25519_1891_privkey[] = { 0xb8, 0x35, 0x54, 0x55, 0xd3, 0x58, 0xf2, 0xdd, 0x7c, 0x57, 0x07, 0xb2, 0xc6, 0x97, 0x3c, 0x9c, 0x27, 0xb9, 0x9e, 0x7d, 0x8a, 0xc1, 0x65, 0x0c, 0x79, 0x1e, 0x5f, 0xdb, 0xcb, 0xea, 0x49, 0x57, }; static const unsigned char xdh_wei25519_1891_sharedsecret[] = { 0x1e, 0xbe, 0x6c, 0xa7, 0x11, 0xa6, 0x49, 0xae, 0x48, 0x7b, 0x33, 0x27, 0x47, 0xe3, 0xdc, 0x03, 0x06, 0x34, 0x05, 0x60, 0xca, 0xb6, 0xbc, 0x60, 0x29, 0xe4, 0x4f, 0x6a, 0x7e, 0x0e, 0xe4, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1891 = { .name = "xdh_wei25519_1891", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1891_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1891_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1891_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 327 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1892 for XDH, tcId is 328 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1892_peerpubkey[] = { 0xd7, 0x06, 0x7f, 0xae, 0xaf, 0xd3, 0xe9, 0x66, 0xe5, 0x75, 0x25, 0xf9, 0x30, 0xb3, 0x31, 0x7c, 0x9e, 0x8b, 0x9c, 0x9a, 0x9a, 0xe9, 0x46, 0xe7, 0x6c, 0x1e, 0x46, 0x02, 0xa5, 0x9a, 0x7e, 0x33, }; static const unsigned char xdh_wei25519_1892_privkey[] = { 0x80, 0x65, 0x56, 0x7e, 0xf0, 0x82, 0xb1, 0x6c, 0x20, 0x85, 0x34, 0x87, 0xf5, 0x48, 0x93, 0x01, 0x2b, 0xa4, 0x76, 0x22, 0x24, 0xe5, 0xc5, 0x9f, 0x25, 0x0d, 0xfb, 0xf8, 0x25, 0x81, 0xe8, 0x5a, }; static const unsigned char xdh_wei25519_1892_sharedsecret[] = { 0x03, 0xe7, 0xa7, 0x77, 0xe6, 0x48, 0xbd, 0xc6, 0x12, 0x18, 0x9f, 0x3c, 0xd4, 0x2d, 0x34, 0xe3, 0x57, 0x36, 0xd3, 0xe5, 0x2e, 0x6e, 0xdc, 0x8a, 0xc8, 0x73, 0xa5, 0x8e, 0x24, 0x4a, 0x60, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1892 = { .name = "xdh_wei25519_1892", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1892_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1892_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1892_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 328 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1893 for XDH, tcId is 329 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1893_peerpubkey[] = { 0x8d, 0xf9, 0x68, 0x2c, 0xbe, 0x88, 0x02, 0x47, 0x8a, 0x85, 0x31, 0x37, 0x7e, 0x75, 0x2c, 0xdd, 0xe5, 0x47, 0x38, 0xd5, 0x28, 0xd6, 0x39, 0xbe, 0xa9, 0xea, 0xf4, 0x77, 0x02, 0xf8, 0xbf, 0x3b, }; static const unsigned char xdh_wei25519_1893_privkey[] = { 0x00, 0xb5, 0x14, 0x48, 0x13, 0x9a, 0x61, 0xfe, 0x6c, 0x5f, 0xbf, 0x93, 0x95, 0x87, 0x7d, 0x53, 0xd8, 0x20, 0xef, 0x59, 0xda, 0x3b, 0xe8, 0x56, 0x45, 0x8b, 0x5e, 0xb9, 0x09, 0x85, 0xba, 0x53, }; static const unsigned char xdh_wei25519_1893_sharedsecret[] = { 0x30, 0x8e, 0xf9, 0x9d, 0xae, 0x10, 0x64, 0xa4, 0x44, 0xfa, 0x90, 0x77, 0x5b, 0x5d, 0xd5, 0xb1, 0x95, 0x2d, 0x72, 0x24, 0xa0, 0xe5, 0xae, 0x03, 0x1d, 0xf4, 0x32, 0x64, 0x0f, 0x41, 0x62, 0x08, }; static const wycheproof_xdh_test xdh_wei25519_1893 = { .name = "xdh_wei25519_1893", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1893_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1893_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1893_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 329 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1894 for XDH, tcId is 330 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1894_peerpubkey[] = { 0x7d, 0x92, 0x70, 0x68, 0x68, 0xaa, 0x09, 0x53, 0x86, 0x38, 0xd6, 0x33, 0xc2, 0x55, 0xf3, 0x33, 0xb9, 0xda, 0x03, 0xbc, 0x74, 0xb4, 0x9b, 0x35, 0x94, 0x1c, 0x57, 0x82, 0x0c, 0xd3, 0xfd, 0x47, }; static const unsigned char xdh_wei25519_1894_privkey[] = { 0xe8, 0xeb, 0x9f, 0x6f, 0x62, 0xf9, 0x3d, 0xbc, 0x32, 0x5b, 0x83, 0x3a, 0xa7, 0x63, 0xa9, 0x0f, 0x13, 0xf0, 0xac, 0xb2, 0xc2, 0xc4, 0xb8, 0xb3, 0x3d, 0xec, 0xd4, 0x71, 0xce, 0x70, 0xc4, 0x5f, }; static const unsigned char xdh_wei25519_1894_sharedsecret[] = { 0xf3, 0x3e, 0x2e, 0x86, 0x44, 0x3a, 0x2c, 0x68, 0x82, 0x3b, 0x72, 0xa2, 0xb5, 0x9d, 0x6a, 0x02, 0x8e, 0x0a, 0x8e, 0x28, 0x3c, 0xfe, 0x29, 0xfe, 0xa4, 0xf7, 0xaa, 0x22, 0xbd, 0x1a, 0xfe, 0x72, }; static const wycheproof_xdh_test xdh_wei25519_1894 = { .name = "xdh_wei25519_1894", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1894_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1894_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1894_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 330 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1895 for XDH, tcId is 331 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1895_peerpubkey[] = { 0xdf, 0xb1, 0xff, 0xc1, 0x76, 0xaf, 0xf8, 0x4d, 0xb3, 0x01, 0x82, 0xd2, 0x37, 0x8f, 0x83, 0x72, 0x8f, 0x83, 0xdd, 0x1b, 0x33, 0xd7, 0x98, 0x56, 0xf3, 0xda, 0x54, 0x59, 0xcf, 0x9d, 0xf9, 0x07, }; static const unsigned char xdh_wei25519_1895_privkey[] = { 0x68, 0xa1, 0xa7, 0xcc, 0xc5, 0x0b, 0xab, 0x4b, 0x01, 0xe5, 0x5e, 0x18, 0xcb, 0xd4, 0x64, 0xaf, 0xf4, 0x31, 0x31, 0xfb, 0x07, 0x41, 0xe6, 0x8d, 0x53, 0xcd, 0xeb, 0xfc, 0x54, 0xf3, 0x30, 0x51, }; static const unsigned char xdh_wei25519_1895_sharedsecret[] = { 0x7b, 0x53, 0x5f, 0xc3, 0x1c, 0x6c, 0x2a, 0x38, 0x03, 0xd8, 0xbd, 0x45, 0x41, 0x0a, 0x17, 0x81, 0xbd, 0x90, 0xa0, 0x92, 0x05, 0xda, 0x28, 0xc9, 0xdf, 0x12, 0x0d, 0xf2, 0x3a, 0x9f, 0xa3, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1895 = { .name = "xdh_wei25519_1895", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1895_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1895_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1895_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 331 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1896 for XDH, tcId is 332 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1896_peerpubkey[] = { 0x12, 0xe8, 0x1e, 0x83, 0x8b, 0x21, 0xea, 0xc9, 0x6d, 0xc1, 0x30, 0x43, 0x25, 0x71, 0x21, 0x6d, 0x7a, 0x9b, 0x4a, 0x81, 0x7f, 0x19, 0x38, 0x72, 0x1d, 0x22, 0x67, 0xdd, 0x15, 0x0e, 0xbf, 0x20, }; static const unsigned char xdh_wei25519_1896_privkey[] = { 0xe0, 0x75, 0xbc, 0xfc, 0x16, 0x5a, 0x47, 0x1b, 0x2f, 0x76, 0xc3, 0x00, 0x3f, 0xb0, 0x17, 0x2c, 0x82, 0xf7, 0x07, 0x13, 0x7d, 0xe2, 0xfa, 0x70, 0x82, 0xe4, 0x3a, 0x87, 0xa2, 0x55, 0x93, 0x5c, }; static const unsigned char xdh_wei25519_1896_sharedsecret[] = { 0xca, 0x23, 0xa7, 0x81, 0xda, 0x09, 0x11, 0xe4, 0x11, 0x5a, 0x29, 0xa9, 0xf5, 0x64, 0x47, 0x15, 0x7c, 0x23, 0xbe, 0xe1, 0x87, 0xb0, 0xc1, 0x73, 0x69, 0xc4, 0xf7, 0x73, 0x0d, 0x78, 0x17, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_1896 = { .name = "xdh_wei25519_1896", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1896_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1896_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1896_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 332 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1897 for XDH, tcId is 333 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1897_peerpubkey[] = { 0x83, 0x2a, 0x46, 0xae, 0xc0, 0x22, 0x40, 0xd7, 0x16, 0xfe, 0x22, 0xde, 0xa9, 0x4a, 0xd5, 0x66, 0xa3, 0xfa, 0xfb, 0xee, 0xdc, 0xce, 0x35, 0xc8, 0x3e, 0x41, 0xe5, 0x80, 0x76, 0xc9, 0x97, 0x49, }; static const unsigned char xdh_wei25519_1897_privkey[] = { 0xc0, 0xe1, 0x96, 0x34, 0xdb, 0xf6, 0x46, 0x0e, 0x14, 0x86, 0x93, 0x0c, 0x46, 0xe8, 0x55, 0x6b, 0x3c, 0x16, 0xd6, 0xde, 0x95, 0x99, 0x04, 0x60, 0x05, 0x49, 0xbb, 0x3e, 0x08, 0x60, 0x34, 0x55, }; static const unsigned char xdh_wei25519_1897_sharedsecret[] = { 0xcd, 0x06, 0x86, 0xb3, 0x2e, 0xa4, 0xcd, 0xdb, 0x8e, 0x13, 0xff, 0x20, 0xa7, 0x8d, 0x38, 0x07, 0x49, 0xa5, 0xd4, 0xf6, 0xa3, 0xdc, 0x55, 0xd7, 0x2f, 0x48, 0x13, 0xd9, 0x49, 0xa0, 0xea, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1897 = { .name = "xdh_wei25519_1897", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1897_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1897_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1897_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 333 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1898 for XDH, tcId is 334 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1898_peerpubkey[] = { 0x8c, 0x80, 0x33, 0x43, 0x2b, 0xcc, 0x12, 0xd4, 0x79, 0xf6, 0x7d, 0x6d, 0x87, 0x6b, 0x1c, 0x8e, 0x89, 0xf1, 0x6a, 0x23, 0x4b, 0x9b, 0x09, 0x33, 0x22, 0xef, 0xfa, 0x9d, 0xee, 0x94, 0x55, 0x4d, }; static const unsigned char xdh_wei25519_1898_privkey[] = { 0xb8, 0x4c, 0xaa, 0x18, 0xac, 0xc3, 0xdb, 0x37, 0x22, 0x5d, 0x32, 0xca, 0xb4, 0xf6, 0x0e, 0x6f, 0xba, 0x4a, 0xca, 0xb1, 0x27, 0x7e, 0x20, 0x42, 0x5d, 0x30, 0xf9, 0x4c, 0xab, 0x2e, 0x2c, 0x55, }; static const unsigned char xdh_wei25519_1898_sharedsecret[] = { 0xa9, 0x50, 0xaa, 0x57, 0xbb, 0x2b, 0xeb, 0x9e, 0xd5, 0xd3, 0x22, 0x8c, 0x7e, 0xf4, 0x48, 0xda, 0xb6, 0x95, 0x52, 0xf3, 0xd3, 0xb1, 0xe4, 0x66, 0xac, 0xcf, 0x41, 0xbf, 0xb6, 0xd5, 0xb8, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_1898 = { .name = "xdh_wei25519_1898", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1898_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1898_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1898_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 334 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1899 for XDH, tcId is 335 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1899_peerpubkey[] = { 0x6d, 0xf7, 0x99, 0xbb, 0xa6, 0xcd, 0xf5, 0xf4, 0x6a, 0x57, 0xab, 0x22, 0x7f, 0x93, 0xfb, 0xa4, 0x91, 0xda, 0xd2, 0x96, 0xa2, 0xfd, 0xb7, 0xe4, 0x91, 0x92, 0x1d, 0x61, 0x0c, 0xce, 0x8f, 0x5e, }; static const unsigned char xdh_wei25519_1899_privkey[] = { 0x28, 0x96, 0x81, 0x8c, 0xdd, 0xf5, 0x72, 0x52, 0x19, 0x43, 0xe9, 0xf0, 0xc5, 0xe8, 0x45, 0xf5, 0x30, 0xb7, 0x40, 0x42, 0x75, 0x88, 0xa0, 0xf6, 0xde, 0x25, 0x04, 0xbd, 0x5b, 0xf4, 0x0c, 0x53, }; static const unsigned char xdh_wei25519_1899_sharedsecret[] = { 0x54, 0xf5, 0xae, 0x57, 0xe6, 0x76, 0xd0, 0x8c, 0x8f, 0x8a, 0x3c, 0xf8, 0x91, 0xe3, 0x6d, 0xda, 0xab, 0x75, 0x10, 0x93, 0xf9, 0x2f, 0x40, 0x90, 0x60, 0xc5, 0x7e, 0x74, 0x59, 0x41, 0x70, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1899 = { .name = "xdh_wei25519_1899", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1899_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1899_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1899_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 335 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1900 for XDH, tcId is 336 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1900_peerpubkey[] = { 0x0c, 0x80, 0x90, 0xe1, 0xcf, 0xe7, 0xf7, 0x61, 0xcf, 0xdf, 0x08, 0xd9, 0x44, 0xd4, 0xae, 0xb7, 0xa5, 0x09, 0xa0, 0x7a, 0x61, 0x01, 0x64, 0x5b, 0x9a, 0x4c, 0x7c, 0x9e, 0x9c, 0x3d, 0x46, 0x09, }; static const unsigned char xdh_wei25519_1900_privkey[] = { 0xa0, 0x1f, 0x0c, 0xad, 0x98, 0xcf, 0x29, 0x05, 0xb8, 0x12, 0xd3, 0x53, 0x05, 0x31, 0xbb, 0x3a, 0xc8, 0x99, 0x39, 0x1a, 0xbd, 0x1e, 0xaf, 0x4a, 0x3e, 0xbe, 0xd9, 0x6a, 0xc6, 0x12, 0x6f, 0x58, }; static const unsigned char xdh_wei25519_1900_sharedsecret[] = { 0x2d, 0x49, 0xb0, 0x9f, 0x81, 0xf3, 0xf6, 0xfa, 0xb2, 0xc6, 0x7e, 0x32, 0xf1, 0xbc, 0xea, 0xd2, 0xad, 0x09, 0xac, 0x9e, 0x0d, 0x64, 0x2b, 0x08, 0x73, 0xbe, 0xcf, 0xb6, 0x4d, 0xe2, 0xab, 0x23, }; static const wycheproof_xdh_test xdh_wei25519_1900 = { .name = "xdh_wei25519_1900", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1900_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1900_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1900_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 336 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1901 for XDH, tcId is 337 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1901_peerpubkey[] = { 0x08, 0x35, 0x29, 0x36, 0xc8, 0xaf, 0xd8, 0x54, 0x3a, 0xc9, 0x5f, 0x24, 0xbc, 0xe9, 0xa0, 0x7e, 0x3e, 0x32, 0x35, 0x76, 0x3e, 0xa5, 0x12, 0xa5, 0x84, 0x29, 0x89, 0x67, 0xb8, 0x3c, 0x07, 0x0a, }; static const unsigned char xdh_wei25519_1901_privkey[] = { 0x10, 0x6b, 0x36, 0x34, 0x4c, 0xc4, 0xa5, 0xa3, 0x89, 0xd8, 0x16, 0x81, 0x37, 0x78, 0x68, 0x06, 0xff, 0x03, 0xcd, 0x4a, 0x00, 0xf8, 0x63, 0x6b, 0xb7, 0xe7, 0x58, 0xd4, 0x56, 0x15, 0x1d, 0x59, }; static const unsigned char xdh_wei25519_1901_sharedsecret[] = { 0xa1, 0x99, 0x36, 0x8e, 0x68, 0x3c, 0x30, 0x36, 0xa4, 0x8f, 0x4c, 0x5f, 0x32, 0xb3, 0x2a, 0x54, 0x7d, 0xd3, 0x9f, 0x3d, 0x10, 0x07, 0xca, 0x0a, 0x0b, 0xeb, 0xca, 0xd0, 0xa8, 0xac, 0x6f, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1901 = { .name = "xdh_wei25519_1901", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1901_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1901_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1901_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 337 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1902 for XDH, tcId is 338 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1902_peerpubkey[] = { 0x73, 0xbd, 0xee, 0xf8, 0xcc, 0x04, 0x4f, 0x5a, 0xd8, 0xd6, 0xa2, 0x41, 0x27, 0x3e, 0x19, 0x95, 0xe0, 0x00, 0x7d, 0xc9, 0xe6, 0x57, 0x90, 0x46, 0xdf, 0x86, 0xaa, 0x6c, 0xd9, 0x7f, 0x5d, 0x2a, }; static const unsigned char xdh_wei25519_1902_privkey[] = { 0x88, 0xf9, 0xa0, 0xd2, 0x35, 0x4a, 0xdf, 0xcb, 0xab, 0x2d, 0x12, 0xa0, 0xe0, 0x9b, 0x3c, 0x77, 0x19, 0xc9, 0x44, 0x38, 0x4e, 0xdf, 0xba, 0xa2, 0x7f, 0xe0, 0x73, 0x1c, 0xb9, 0xc6, 0xfc, 0x5a, }; static const unsigned char xdh_wei25519_1902_sharedsecret[] = { 0x5a, 0xa7, 0x50, 0xde, 0x42, 0x07, 0x86, 0x9e, 0xc7, 0xfd, 0xda, 0xb3, 0x4c, 0x63, 0x95, 0x59, 0xb1, 0xeb, 0x27, 0xef, 0x24, 0x4a, 0xaf, 0x2a, 0x70, 0x2c, 0x84, 0x96, 0x3b, 0x6d, 0x6e, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1902 = { .name = "xdh_wei25519_1902", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1902_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1902_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1902_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 338 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1903 for XDH, tcId is 339 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1903_peerpubkey[] = { 0x7f, 0xdd, 0x39, 0x9b, 0x6e, 0xf4, 0xa3, 0xf5, 0xca, 0xde, 0x62, 0xe7, 0x41, 0x13, 0xb2, 0x9c, 0x27, 0xdb, 0x15, 0x20, 0x3f, 0x9b, 0x8e, 0x39, 0x8d, 0x2c, 0x6f, 0x23, 0x00, 0x51, 0xcd, 0x2b, }; static const unsigned char xdh_wei25519_1903_privkey[] = { 0x08, 0x11, 0xf2, 0xe5, 0x60, 0xa2, 0x05, 0xe9, 0x6e, 0x28, 0xbc, 0x31, 0x2b, 0xca, 0xd4, 0x5f, 0xe8, 0xbe, 0xfe, 0xfb, 0x7f, 0x6d, 0xa5, 0xfa, 0xa0, 0x35, 0x31, 0x1e, 0xed, 0x80, 0xb2, 0x51, }; static const unsigned char xdh_wei25519_1903_sharedsecret[] = { 0xa6, 0x94, 0x7e, 0xe0, 0x89, 0xff, 0x28, 0xce, 0x36, 0x44, 0xea, 0x4c, 0x6e, 0xb3, 0x3d, 0xbb, 0x20, 0xc7, 0x97, 0x4f, 0xb8, 0xd8, 0x53, 0xf4, 0xe1, 0x46, 0xe2, 0x46, 0x61, 0x77, 0x50, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1903 = { .name = "xdh_wei25519_1903", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1903_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1903_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1903_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 339 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1904 for XDH, tcId is 340 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1904_peerpubkey[] = { 0xf0, 0x17, 0x3a, 0x96, 0x27, 0x3c, 0x64, 0x6f, 0xb6, 0x3d, 0x13, 0xb0, 0xc6, 0x86, 0xb8, 0x9e, 0x37, 0x67, 0x6f, 0xcc, 0x71, 0x78, 0xfa, 0xf4, 0xa6, 0xf4, 0x60, 0x1f, 0x30, 0x68, 0x15, 0x0d, }; static const unsigned char xdh_wei25519_1904_privkey[] = { 0x40, 0xad, 0x98, 0x40, 0x66, 0xa6, 0x90, 0x80, 0xfb, 0x4a, 0x31, 0x58, 0x78, 0xe7, 0x36, 0x09, 0x6c, 0xc5, 0x77, 0xda, 0xe4, 0xc4, 0x2c, 0x40, 0xd8, 0x93, 0xd8, 0xc2, 0x17, 0x3b, 0x78, 0x5a, }; static const unsigned char xdh_wei25519_1904_sharedsecret[] = { 0x23, 0x0b, 0x6a, 0xa1, 0xf2, 0x4d, 0xf9, 0x0a, 0x60, 0x83, 0x91, 0x79, 0xba, 0x5e, 0x9d, 0xe6, 0x73, 0xcf, 0xf1, 0x1c, 0xab, 0x59, 0xe8, 0x02, 0x0b, 0x20, 0x62, 0x6c, 0x22, 0x09, 0x0b, 0x0a, }; static const wycheproof_xdh_test xdh_wei25519_1904 = { .name = "xdh_wei25519_1904", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1904_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1904_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1904_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 340 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1905 for XDH, tcId is 341 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1905_peerpubkey[] = { 0x25, 0x5b, 0xbe, 0x72, 0x30, 0xcd, 0x2b, 0xee, 0x90, 0xd2, 0x83, 0xf4, 0x18, 0xa4, 0x74, 0xab, 0x30, 0x14, 0x6c, 0xe5, 0xe8, 0x01, 0xa0, 0xf5, 0xed, 0x60, 0xee, 0x8d, 0xef, 0x3e, 0x65, 0x58, }; static const unsigned char xdh_wei25519_1905_privkey[] = { 0x48, 0xb1, 0x0c, 0xd4, 0x56, 0x39, 0xbb, 0xbf, 0x83, 0xa0, 0xb2, 0x8f, 0x0d, 0xd3, 0xad, 0x0b, 0x7b, 0x00, 0xca, 0xf4, 0x8d, 0x05, 0x53, 0x44, 0x80, 0x55, 0x6a, 0x82, 0x78, 0x11, 0x6d, 0x59, }; static const unsigned char xdh_wei25519_1905_sharedsecret[] = { 0x22, 0x99, 0xe3, 0x84, 0x95, 0x8b, 0xed, 0xd2, 0xc3, 0xd3, 0x67, 0x75, 0x91, 0x55, 0x13, 0x6d, 0x1f, 0xf7, 0x6e, 0x44, 0x34, 0xdc, 0x1d, 0x9e, 0x82, 0x12, 0xcd, 0xca, 0x52, 0xea, 0x84, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_1905 = { .name = "xdh_wei25519_1905", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1905_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1905_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1905_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 341 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1906 for XDH, tcId is 342 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1906_peerpubkey[] = { 0x21, 0xac, 0xcf, 0x97, 0xb7, 0xfe, 0xe1, 0x73, 0x00, 0x1c, 0xcf, 0xca, 0xb2, 0x16, 0x37, 0xc1, 0x75, 0xef, 0x51, 0x86, 0xff, 0x00, 0x02, 0x50, 0x2b, 0x3d, 0x52, 0xfa, 0x8c, 0x51, 0xe7, 0x66, }; static const unsigned char xdh_wei25519_1906_privkey[] = { 0xe8, 0xfa, 0xd7, 0x79, 0x46, 0xe0, 0xde, 0x4c, 0xf4, 0x23, 0x67, 0x98, 0x49, 0x0b, 0x83, 0x89, 0x48, 0xb8, 0x2c, 0xfb, 0x29, 0xf8, 0xe7, 0x68, 0x60, 0x01, 0xb1, 0x1e, 0x8d, 0x96, 0x16, 0x57, }; static const unsigned char xdh_wei25519_1906_sharedsecret[] = { 0x97, 0xfc, 0xa0, 0x65, 0xac, 0xd3, 0xb9, 0x43, 0xc6, 0x54, 0x99, 0x7c, 0x0f, 0x12, 0x57, 0x67, 0xf9, 0xab, 0xc4, 0xb7, 0xc9, 0xd8, 0xb7, 0x24, 0x69, 0x42, 0xf1, 0x2b, 0xe6, 0x5d, 0x92, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_1906 = { .name = "xdh_wei25519_1906", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1906_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1906_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1906_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 5, tcId is 342 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1907 for XDH, tcId is 343 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1907_peerpubkey[] = { 0x5b, 0x40, 0x77, 0x7e, 0x80, 0xff, 0x6e, 0xfe, 0x37, 0x8b, 0x5e, 0x81, 0x95, 0x9c, 0xcd, 0xcb, 0xb4, 0xca, 0x04, 0xb9, 0xd7, 0x7e, 0xdc, 0x6b, 0x30, 0x06, 0xde, 0xb9, 0x99, 0x26, 0xfa, 0x22, }; static const unsigned char xdh_wei25519_1907_privkey[] = { 0xd0, 0x7b, 0xab, 0xed, 0x90, 0xb2, 0x7c, 0x4e, 0xac, 0xaf, 0xdc, 0x87, 0x17, 0x03, 0xbd, 0x03, 0x6b, 0x72, 0x0a, 0x82, 0xb5, 0xc0, 0x94, 0xdc, 0xeb, 0x47, 0x49, 0xee, 0xae, 0xb8, 0x10, 0x52, }; static const unsigned char xdh_wei25519_1907_sharedsecret[] = { 0xf4, 0x82, 0x53, 0x1e, 0x52, 0x3d, 0x05, 0x8d, 0x6e, 0x3f, 0xe3, 0xa4, 0x27, 0xfc, 0x40, 0xdb, 0xce, 0x6d, 0xd6, 0xf1, 0x8d, 0xef, 0xbc, 0x09, 0x7b, 0xfd, 0x7d, 0x0c, 0xdd, 0x2f, 0x71, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1907 = { .name = "xdh_wei25519_1907", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1907_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1907_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1907_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 343 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1908 for XDH, tcId is 344 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1908_peerpubkey[] = { 0x48, 0xd9, 0x52, 0xa2, 0x92, 0x4f, 0xf1, 0x67, 0xf0, 0x37, 0x70, 0x74, 0x69, 0xec, 0x71, 0x5d, 0xa7, 0x2b, 0xb6, 0x5f, 0x49, 0xaa, 0xf4, 0xdc, 0xe7, 0xec, 0x5a, 0x17, 0x03, 0x9d, 0xdb, 0x42, }; static const unsigned char xdh_wei25519_1908_privkey[] = { 0x68, 0xa3, 0x04, 0x9a, 0xef, 0x8c, 0x06, 0x9b, 0x90, 0x6c, 0xf7, 0x43, 0x28, 0x6d, 0x39, 0x52, 0xa8, 0x88, 0xbf, 0x2b, 0x9b, 0x93, 0xbc, 0x87, 0x75, 0xfb, 0x5a, 0xdd, 0xe0, 0x6e, 0x9f, 0x53, }; static const unsigned char xdh_wei25519_1908_sharedsecret[] = { 0xde, 0x88, 0xaf, 0x90, 0x5d, 0x37, 0x41, 0x7d, 0x83, 0x31, 0x10, 0x53, 0x45, 0xda, 0xba, 0xab, 0x9f, 0xd2, 0xd3, 0xcb, 0x1e, 0xe9, 0x02, 0x91, 0x1c, 0x1c, 0x8e, 0xae, 0x29, 0x91, 0xd9, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1908 = { .name = "xdh_wei25519_1908", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1908_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1908_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1908_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 344 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1909 for XDH, tcId is 345 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1909_peerpubkey[] = { 0xa5, 0xef, 0x26, 0x5c, 0xcb, 0xc5, 0xc5, 0x40, 0x21, 0xd3, 0x4f, 0x82, 0x36, 0x4a, 0x46, 0x24, 0x03, 0x0f, 0x5b, 0x9d, 0x5f, 0xf7, 0xe6, 0x3d, 0x7a, 0x37, 0x9e, 0x53, 0x3d, 0xe5, 0xe7, 0x42, }; static const unsigned char xdh_wei25519_1909_privkey[] = { 0x18, 0xd8, 0xc3, 0xd2, 0xa4, 0xe3, 0x66, 0x18, 0x5a, 0x85, 0xc3, 0x86, 0x98, 0xd9, 0x37, 0xe1, 0x3b, 0xbb, 0xaf, 0xdb, 0xda, 0xb1, 0xa0, 0xa8, 0x3d, 0xbb, 0xe8, 0x9b, 0xad, 0xf7, 0x07, 0x56, }; static const unsigned char xdh_wei25519_1909_sharedsecret[] = { 0x07, 0x5d, 0x18, 0xcc, 0xc9, 0x84, 0x76, 0x1b, 0x70, 0x75, 0x22, 0x79, 0xe7, 0xf6, 0xa7, 0x57, 0x20, 0x8f, 0x6c, 0x11, 0xe2, 0x94, 0x80, 0xc3, 0x2b, 0x40, 0xab, 0xa1, 0x28, 0xa4, 0xd5, 0x2b, }; static const wycheproof_xdh_test xdh_wei25519_1909 = { .name = "xdh_wei25519_1909", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1909_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1909_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1909_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 345 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1910 for XDH, tcId is 346 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1910_peerpubkey[] = { 0x90, 0x51, 0xe5, 0x5a, 0x40, 0x50, 0xef, 0x4d, 0xce, 0x0b, 0x0c, 0x40, 0x81, 0x1f, 0x16, 0x37, 0x1e, 0x8b, 0x16, 0x93, 0x25, 0x41, 0xda, 0x37, 0xf0, 0x69, 0x40, 0x6d, 0x84, 0x8e, 0xa4, 0x24, }; static const unsigned char xdh_wei25519_1910_privkey[] = { 0x18, 0xef, 0xcd, 0x5f, 0xe3, 0x45, 0xbe, 0x49, 0x85, 0x31, 0x66, 0x95, 0x39, 0x1d, 0x2c, 0x95, 0x2e, 0xee, 0x13, 0xb0, 0xe1, 0xee, 0x75, 0x84, 0x72, 0x1f, 0xbe, 0x8b, 0x19, 0xd4, 0xfc, 0x5f, }; static const unsigned char xdh_wei25519_1910_sharedsecret[] = { 0x21, 0x2d, 0xbf, 0x9b, 0xc8, 0x9b, 0x68, 0x73, 0xa6, 0x0d, 0xfc, 0x87, 0x31, 0xa1, 0x0b, 0xe1, 0x1a, 0xb2, 0xdc, 0xa4, 0xb1, 0x72, 0x14, 0x2e, 0x6c, 0x9f, 0x06, 0x61, 0x4c, 0xd7, 0x28, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1910 = { .name = "xdh_wei25519_1910", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1910_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1910_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1910_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 346 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1911 for XDH, tcId is 347 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1911_peerpubkey[] = { 0x41, 0x9a, 0xdb, 0x8b, 0x1f, 0x2f, 0x87, 0xde, 0x01, 0x6b, 0x0c, 0x78, 0xd1, 0x02, 0x9a, 0x21, 0x04, 0x92, 0xeb, 0x8c, 0xad, 0xd1, 0x64, 0xb1, 0x2c, 0xd6, 0x5b, 0x1d, 0x57, 0xbf, 0x36, 0x34, }; static const unsigned char xdh_wei25519_1911_privkey[] = { 0x28, 0xec, 0x7c, 0x69, 0x3e, 0x22, 0x2c, 0x72, 0xac, 0x08, 0x15, 0xf1, 0xfd, 0x36, 0x66, 0x13, 0x57, 0xe0, 0xa8, 0xda, 0x7b, 0xc9, 0x96, 0xda, 0xee, 0xea, 0xfc, 0xd2, 0x1c, 0x01, 0x34, 0x51, }; static const unsigned char xdh_wei25519_1911_sharedsecret[] = { 0x37, 0x9f, 0x92, 0x21, 0xab, 0xeb, 0xf3, 0x58, 0x26, 0x81, 0xa0, 0xe8, 0x57, 0xf3, 0xda, 0x57, 0x8a, 0x1b, 0x01, 0x21, 0x98, 0x2b, 0x96, 0xf1, 0x4b, 0x94, 0xde, 0x5d, 0xc8, 0xb2, 0x45, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1911 = { .name = "xdh_wei25519_1911", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1911_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1911_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1911_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 347 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1912 for XDH, tcId is 348 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1912_peerpubkey[] = { 0x13, 0xe0, 0x0d, 0xae, 0x3b, 0x1c, 0xcc, 0x97, 0xcc, 0xd6, 0x49, 0x08, 0x8c, 0x4a, 0x7f, 0x32, 0xca, 0x99, 0x76, 0x21, 0x4d, 0x64, 0x56, 0x67, 0xbd, 0x08, 0x20, 0x39, 0xbb, 0xd9, 0xab, 0x7a, }; static const unsigned char xdh_wei25519_1912_privkey[] = { 0x78, 0xb3, 0x5e, 0x7a, 0xe5, 0x49, 0x30, 0x8b, 0x64, 0x14, 0xbb, 0x61, 0x01, 0x96, 0xc0, 0x4f, 0x2a, 0xf7, 0x9d, 0x42, 0x66, 0xc8, 0x6e, 0x8a, 0x9c, 0xe0, 0xc0, 0x2b, 0xbd, 0xb8, 0x8d, 0x59, }; static const unsigned char xdh_wei25519_1912_sharedsecret[] = { 0xcf, 0xf2, 0x59, 0x6b, 0x7a, 0xfe, 0x36, 0xf4, 0xca, 0xb9, 0xc7, 0x01, 0x33, 0xd7, 0xaa, 0x0f, 0x99, 0x14, 0xf9, 0xab, 0xc6, 0xc3, 0xb9, 0x89, 0x54, 0x72, 0xe2, 0xa5, 0x89, 0x4a, 0x80, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_1912 = { .name = "xdh_wei25519_1912", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1912_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1912_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1912_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 348 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1913 for XDH, tcId is 349 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1913_peerpubkey[] = { 0x44, 0x1c, 0x48, 0x7a, 0x48, 0xf0, 0xa4, 0x98, 0x9d, 0x93, 0x1c, 0xd7, 0x7a, 0x61, 0x42, 0xa0, 0xa1, 0x3d, 0x1a, 0xab, 0xad, 0x82, 0x62, 0x3b, 0xa8, 0xd9, 0x4b, 0x5c, 0x37, 0x4f, 0x4f, 0x08, }; static const unsigned char xdh_wei25519_1913_privkey[] = { 0xf0, 0xde, 0x9c, 0x5f, 0x8a, 0x93, 0x72, 0xf3, 0x0c, 0x41, 0xca, 0x47, 0xa5, 0x57, 0x43, 0xce, 0x69, 0x7d, 0x46, 0xe3, 0x2e, 0x7a, 0x9a, 0xe2, 0x6d, 0x32, 0x50, 0x3f, 0xd5, 0x22, 0x27, 0x67, }; static const unsigned char xdh_wei25519_1913_sharedsecret[] = { 0xd4, 0x7c, 0x46, 0xb4, 0x32, 0x9b, 0xed, 0xcb, 0xc1, 0x98, 0x6b, 0x3c, 0x6d, 0x2a, 0xa9, 0xbc, 0xd0, 0x27, 0xd6, 0xb6, 0x89, 0x25, 0x17, 0x5d, 0x35, 0xbb, 0xb5, 0x36, 0xb3, 0x44, 0x08, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1913 = { .name = "xdh_wei25519_1913", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1913_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1913_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1913_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 349 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1914 for XDH, tcId is 350 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1914_peerpubkey[] = { 0x0e, 0x67, 0xee, 0x5c, 0x6b, 0x65, 0xaa, 0x80, 0x22, 0x59, 0x81, 0x0b, 0x26, 0x05, 0xf8, 0xd7, 0xac, 0xcf, 0x9b, 0x49, 0xbf, 0x14, 0xcb, 0x4a, 0x53, 0x69, 0x28, 0xe8, 0x83, 0x17, 0x29, 0x15, }; static const unsigned char xdh_wei25519_1914_privkey[] = { 0x68, 0x6b, 0xe5, 0xa1, 0x2b, 0x31, 0x04, 0x20, 0xf9, 0xbf, 0xb2, 0x09, 0x38, 0x1f, 0xd4, 0x59, 0xa5, 0xcc, 0xd5, 0x5c, 0x75, 0x2b, 0x88, 0x33, 0x7e, 0xbe, 0x89, 0xe1, 0x92, 0x1a, 0xe7, 0x65, }; static const unsigned char xdh_wei25519_1914_sharedsecret[] = { 0x1d, 0x73, 0x01, 0x58, 0xda, 0x88, 0x05, 0x33, 0xdb, 0xf1, 0xe6, 0xc6, 0x4a, 0x8e, 0x99, 0xf9, 0x16, 0x96, 0x11, 0x66, 0x09, 0x69, 0xb0, 0xa8, 0x4f, 0xb4, 0x2d, 0xd8, 0xdc, 0x2e, 0xfa, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_1914 = { .name = "xdh_wei25519_1914", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1914_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1914_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1914_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 350 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1915 for XDH, tcId is 351 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1915_peerpubkey[] = { 0xdc, 0x9d, 0x7e, 0xf1, 0xcb, 0x49, 0xc1, 0x91, 0xe2, 0x58, 0x66, 0x3a, 0x94, 0xe7, 0x31, 0xb9, 0xc0, 0x66, 0xc1, 0x1a, 0x17, 0xd8, 0xb5, 0xfd, 0xea, 0x19, 0x87, 0xf5, 0xd9, 0xa0, 0x05, 0x68, }; static const unsigned char xdh_wei25519_1915_privkey[] = { 0xa0, 0xc0, 0x33, 0x7c, 0x5b, 0xec, 0x5c, 0xa2, 0x4d, 0xea, 0x2f, 0x1d, 0x70, 0x14, 0x98, 0xae, 0x2b, 0xad, 0x87, 0xb8, 0x26, 0x9a, 0xc2, 0x3b, 0xe1, 0x13, 0x92, 0x9f, 0xe4, 0xeb, 0x19, 0x63, }; static const unsigned char xdh_wei25519_1915_sharedsecret[] = { 0x07, 0x73, 0x25, 0x29, 0xa6, 0x28, 0xba, 0xde, 0xb8, 0xd7, 0x49, 0x46, 0x77, 0x5b, 0xa4, 0x57, 0xc7, 0x00, 0xbf, 0x83, 0x90, 0xf4, 0x6b, 0xc5, 0x23, 0xfb, 0x64, 0xe4, 0x71, 0xc8, 0x6a, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_1915 = { .name = "xdh_wei25519_1915", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1915_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1915_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1915_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 351 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1916 for XDH, tcId is 352 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1916_peerpubkey[] = { 0x55, 0x6b, 0x3e, 0xe7, 0xcd, 0x0d, 0x37, 0x97, 0x90, 0x56, 0xec, 0xc1, 0xf5, 0x6a, 0x56, 0x77, 0xa4, 0x93, 0x5b, 0xe6, 0xe4, 0x9c, 0xe2, 0x8e, 0x39, 0x4f, 0x8b, 0xfb, 0x73, 0xd1, 0x3b, 0x6a, }; static const unsigned char xdh_wei25519_1916_privkey[] = { 0xb8, 0x82, 0x4c, 0xfc, 0xe5, 0x55, 0x0b, 0x5e, 0x17, 0xb1, 0x2f, 0x74, 0xe2, 0x84, 0x59, 0xca, 0xb3, 0x4e, 0xb4, 0x98, 0x95, 0xcc, 0x36, 0xbf, 0x64, 0x5a, 0x0c, 0xf0, 0x0e, 0x3d, 0x2d, 0x67, }; static const unsigned char xdh_wei25519_1916_sharedsecret[] = { 0x9e, 0x3a, 0xae, 0x35, 0xfa, 0x1c, 0xc8, 0x0a, 0x35, 0x98, 0x78, 0xe2, 0x12, 0x18, 0x02, 0x94, 0xff, 0x66, 0x08, 0xdc, 0xb4, 0x92, 0x9e, 0x91, 0x90, 0x1a, 0xbb, 0xf9, 0x76, 0xf3, 0x9c, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_1916 = { .name = "xdh_wei25519_1916", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1916_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1916_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1916_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 352 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1917 for XDH, tcId is 353 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1917_peerpubkey[] = { 0x12, 0x11, 0xbe, 0x58, 0x09, 0x60, 0x5b, 0x54, 0xf5, 0x72, 0x7d, 0x23, 0x3c, 0x78, 0x3a, 0x2a, 0x19, 0x9a, 0x3d, 0xb2, 0x4e, 0xd4, 0x49, 0x9d, 0x7b, 0x48, 0xc7, 0x60, 0x3e, 0x4a, 0xd3, 0x71, }; static const unsigned char xdh_wei25519_1917_privkey[] = { 0xe0, 0x2d, 0xba, 0x73, 0x35, 0xaf, 0x8f, 0xb9, 0x16, 0x8d, 0xe2, 0xfc, 0xd3, 0x10, 0xc2, 0xe2, 0xdf, 0x4a, 0x3e, 0x25, 0x26, 0x3e, 0x0a, 0xb9, 0xad, 0xa8, 0x7b, 0xfb, 0x82, 0x58, 0xa6, 0x6b, }; static const unsigned char xdh_wei25519_1917_sharedsecret[] = { 0x88, 0x0f, 0x6d, 0xc7, 0x32, 0x20, 0x30, 0x7a, 0x59, 0x76, 0x70, 0xf3, 0x28, 0x2f, 0xc3, 0x66, 0xaa, 0x66, 0xf0, 0x4a, 0x0a, 0x9c, 0xa3, 0x0d, 0x89, 0x5f, 0xdd, 0xe3, 0x37, 0xaf, 0xe8, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1917 = { .name = "xdh_wei25519_1917", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1917_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1917_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1917_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 353 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1918 for XDH, tcId is 354 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1918_peerpubkey[] = { 0x50, 0x5e, 0x78, 0x51, 0xe2, 0x35, 0x2e, 0x31, 0x1c, 0xa9, 0x53, 0x6a, 0x1f, 0xe6, 0xc0, 0xd9, 0x5d, 0x64, 0x81, 0x97, 0x37, 0x4c, 0xe0, 0x8e, 0x4b, 0x8a, 0x0f, 0xbd, 0xdf, 0x62, 0x91, 0x0b, }; static const unsigned char xdh_wei25519_1918_privkey[] = { 0x30, 0xce, 0x71, 0xf8, 0x56, 0xce, 0xb8, 0x74, 0xfe, 0x58, 0x00, 0x39, 0xca, 0x67, 0xe8, 0x96, 0xe6, 0xd0, 0x82, 0x07, 0xa7, 0x3c, 0xd5, 0x5d, 0xb7, 0x05, 0x91, 0x27, 0xc1, 0x34, 0x2b, 0x67, }; static const unsigned char xdh_wei25519_1918_sharedsecret[] = { 0xea, 0x62, 0xb0, 0xed, 0xa2, 0xd7, 0xb2, 0x49, 0xa4, 0x24, 0x17, 0x67, 0x5a, 0x2b, 0x82, 0xb1, 0xe6, 0xc0, 0xd6, 0x9a, 0x4e, 0x7c, 0xef, 0x33, 0x64, 0x48, 0x84, 0x4d, 0x2f, 0x43, 0x22, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1918 = { .name = "xdh_wei25519_1918", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1918_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1918_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1918_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 354 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1919 for XDH, tcId is 355 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1919_peerpubkey[] = { 0xdd, 0xf4, 0xe9, 0x05, 0x03, 0xdd, 0x82, 0x61, 0x0c, 0x3a, 0x03, 0x4b, 0x92, 0x5a, 0x88, 0x0b, 0x72, 0xdb, 0xde, 0x30, 0xc6, 0x26, 0x00, 0x92, 0x02, 0xb3, 0x58, 0xc6, 0xeb, 0x00, 0xf4, 0x18, }; static const unsigned char xdh_wei25519_1919_privkey[] = { 0xe8, 0x81, 0xf4, 0x6d, 0x41, 0x41, 0xea, 0x69, 0xa6, 0x71, 0x64, 0x9b, 0x93, 0xb6, 0x3e, 0x97, 0xdc, 0x67, 0xc1, 0x25, 0x21, 0xd4, 0x45, 0x86, 0x2f, 0x08, 0x7b, 0x26, 0x26, 0xfa, 0x2b, 0x6f, }; static const unsigned char xdh_wei25519_1919_sharedsecret[] = { 0x30, 0x2c, 0x4f, 0x83, 0xb5, 0xc5, 0xbf, 0x30, 0xc1, 0xe3, 0xaf, 0xd9, 0xf6, 0x43, 0xf6, 0x5b, 0xfe, 0x56, 0xca, 0x16, 0x28, 0xee, 0x04, 0x2b, 0x1a, 0xb7, 0x39, 0x3b, 0xaf, 0xe3, 0x6c, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1919 = { .name = "xdh_wei25519_1919", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1919_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1919_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1919_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 355 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1920 for XDH, tcId is 356 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1920_peerpubkey[] = { 0x0e, 0x9c, 0x44, 0x31, 0x99, 0x9e, 0xf1, 0xce, 0x17, 0x7e, 0x90, 0x0d, 0x37, 0xec, 0x6a, 0xe6, 0x65, 0xe3, 0x87, 0xe2, 0xd4, 0xfa, 0x27, 0xcb, 0xa8, 0xe7, 0xba, 0xeb, 0xc6, 0x5c, 0x65, 0x20, }; static const unsigned char xdh_wei25519_1920_privkey[] = { 0xe8, 0x79, 0x75, 0x26, 0x83, 0xcd, 0x73, 0xa8, 0x34, 0x25, 0x1c, 0x65, 0x74, 0x91, 0x35, 0xe0, 0x6e, 0xb9, 0x06, 0x4d, 0x3a, 0xe3, 0x50, 0x95, 0xd8, 0x8c, 0xde, 0x14, 0xa0, 0x2b, 0xa3, 0x66, }; static const unsigned char xdh_wei25519_1920_sharedsecret[] = { 0x8f, 0xf2, 0xac, 0x65, 0xc8, 0x5e, 0xe2, 0xfe, 0x94, 0x52, 0xfc, 0xe4, 0x60, 0xf8, 0xc8, 0x7f, 0x95, 0x70, 0xd7, 0x69, 0xca, 0xdd, 0xdc, 0x87, 0xfe, 0x93, 0xef, 0x8b, 0x76, 0x57, 0xc7, 0x26, }; static const wycheproof_xdh_test xdh_wei25519_1920 = { .name = "xdh_wei25519_1920", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1920_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1920_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1920_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 356 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1921 for XDH, tcId is 357 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1921_peerpubkey[] = { 0x57, 0x61, 0xd6, 0xc0, 0x86, 0x24, 0x10, 0x4d, 0x41, 0x17, 0xff, 0x17, 0xc7, 0x5e, 0x92, 0x11, 0xa5, 0x91, 0xc9, 0xca, 0x9a, 0xec, 0xca, 0x3a, 0x66, 0x5a, 0x7e, 0xd8, 0x44, 0x19, 0x52, 0x25, }; static const unsigned char xdh_wei25519_1921_privkey[] = { 0x20, 0x57, 0x6a, 0xb4, 0x56, 0xda, 0x26, 0xc1, 0x8d, 0xa5, 0xfb, 0xf0, 0x6e, 0xc4, 0xd1, 0x65, 0x64, 0xe1, 0x11, 0xbf, 0xae, 0x2a, 0x92, 0xb9, 0xf6, 0xe1, 0x92, 0x7c, 0x15, 0x77, 0x0a, 0x62, }; static const unsigned char xdh_wei25519_1921_sharedsecret[] = { 0x97, 0xc9, 0x1a, 0x23, 0xc3, 0xe4, 0xf3, 0xff, 0x72, 0x7d, 0x18, 0x8a, 0x35, 0x2b, 0x67, 0xad, 0x49, 0x0b, 0x62, 0x38, 0x15, 0x66, 0xfb, 0x3e, 0x11, 0x1c, 0xb6, 0x7a, 0xa9, 0xe3, 0x43, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1921 = { .name = "xdh_wei25519_1921", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1921_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1921_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1921_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 357 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1922 for XDH, tcId is 358 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1922_peerpubkey[] = { 0xe9, 0x2d, 0x45, 0xb3, 0xec, 0x56, 0x53, 0x12, 0x66, 0x30, 0x3c, 0x51, 0x13, 0xc4, 0x63, 0x10, 0xc4, 0x16, 0x50, 0x00, 0x10, 0x65, 0xb4, 0xd8, 0x7b, 0x02, 0xb3, 0x82, 0xfc, 0x82, 0x66, 0x2e, }; static const unsigned char xdh_wei25519_1922_privkey[] = { 0xa8, 0x46, 0x74, 0x18, 0xb9, 0x24, 0xc2, 0xc0, 0x03, 0xc5, 0x6e, 0x16, 0x10, 0xa3, 0x54, 0x69, 0x35, 0x63, 0x60, 0xc2, 0x9d, 0x52, 0xaa, 0x55, 0x7a, 0x2b, 0xb3, 0x0f, 0xb8, 0xa9, 0xa4, 0x64, }; static const unsigned char xdh_wei25519_1922_sharedsecret[] = { 0x24, 0x34, 0x6b, 0xb1, 0x33, 0xdd, 0x9a, 0xe3, 0xff, 0x02, 0xd2, 0xf5, 0x05, 0x10, 0xb3, 0xa9, 0x2d, 0x90, 0x30, 0x83, 0x4d, 0x60, 0xe5, 0xaf, 0x08, 0xb0, 0xee, 0xbb, 0xf1, 0xd4, 0xdd, 0x6f, }; static const wycheproof_xdh_test xdh_wei25519_1922 = { .name = "xdh_wei25519_1922", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1922_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1922_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1922_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 358 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1923 for XDH, tcId is 359 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1923_peerpubkey[] = { 0xf3, 0x8b, 0x63, 0x45, 0x9d, 0x05, 0xe4, 0x22, 0xad, 0x02, 0x4c, 0x2d, 0xce, 0xa5, 0x02, 0x9a, 0x0a, 0x7a, 0x6b, 0x6c, 0x4c, 0x1d, 0x20, 0x93, 0xce, 0x55, 0x6a, 0xab, 0x33, 0x1e, 0x25, 0x40, }; static const unsigned char xdh_wei25519_1923_privkey[] = { 0xf0, 0xf5, 0xe1, 0x62, 0x92, 0x3d, 0x7c, 0x29, 0x93, 0x88, 0xbe, 0xd7, 0x81, 0x19, 0x94, 0x17, 0xad, 0xe0, 0x97, 0x47, 0x55, 0x15, 0x16, 0x2d, 0x95, 0x90, 0x97, 0x6a, 0x19, 0x6f, 0xb1, 0x6f, }; static const unsigned char xdh_wei25519_1923_sharedsecret[] = { 0xb3, 0x45, 0x3c, 0x9c, 0x82, 0xa2, 0xd1, 0xd9, 0x56, 0x15, 0x6d, 0xe2, 0x39, 0x9c, 0xb7, 0x0d, 0xd4, 0xe1, 0xec, 0x53, 0xae, 0xa9, 0x67, 0xe0, 0x35, 0x75, 0x3c, 0x1c, 0xda, 0xe1, 0x3c, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1923 = { .name = "xdh_wei25519_1923", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1923_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1923_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1923_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 359 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1924 for XDH, tcId is 360 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1924_peerpubkey[] = { 0xa7, 0xde, 0xd0, 0xee, 0xa4, 0x5a, 0x40, 0x0b, 0x8f, 0x56, 0x37, 0x15, 0x4d, 0x42, 0x97, 0x4a, 0xa9, 0x8c, 0x92, 0x96, 0x23, 0x14, 0xd8, 0x22, 0xef, 0x88, 0xb0, 0x13, 0x83, 0xa9, 0xda, 0x4d, }; static const unsigned char xdh_wei25519_1924_privkey[] = { 0x60, 0x8f, 0xcf, 0x78, 0x7f, 0xe7, 0x89, 0x64, 0x4a, 0x09, 0xbc, 0xab, 0x95, 0x8f, 0x07, 0x37, 0xaa, 0x81, 0xa9, 0xe2, 0x9d, 0x50, 0x5f, 0x51, 0x03, 0x5c, 0x78, 0xe3, 0x74, 0xb9, 0xe4, 0x6b, }; static const unsigned char xdh_wei25519_1924_sharedsecret[] = { 0xeb, 0xeb, 0x0c, 0x7b, 0x7a, 0x41, 0x65, 0xcd, 0x02, 0xa2, 0x78, 0xf3, 0xa2, 0x22, 0xc2, 0x36, 0xee, 0xd8, 0x32, 0x66, 0xb8, 0x06, 0xd1, 0x34, 0x94, 0xc1, 0xc3, 0xf9, 0x8a, 0x2f, 0x34, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1924 = { .name = "xdh_wei25519_1924", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1924_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1924_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1924_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 360 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1925 for XDH, tcId is 361 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1925_peerpubkey[] = { 0x7b, 0x0e, 0xcb, 0x4c, 0x72, 0xee, 0x14, 0x77, 0x89, 0xd7, 0x48, 0x13, 0xce, 0xd3, 0xeb, 0xe4, 0x0f, 0x45, 0xc3, 0xda, 0x52, 0x6e, 0xd1, 0x27, 0x29, 0x52, 0xe4, 0x53, 0xe4, 0x3b, 0x79, 0x6d, }; static const unsigned char xdh_wei25519_1925_privkey[] = { 0x58, 0xa3, 0x39, 0x6d, 0x29, 0x1e, 0xb2, 0x35, 0x71, 0xb5, 0x2d, 0x98, 0xa3, 0x15, 0x49, 0xe5, 0x14, 0xe5, 0x01, 0xe8, 0xd0, 0x95, 0x8a, 0xd9, 0xf2, 0x5f, 0xe5, 0xa7, 0x6c, 0x50, 0x3e, 0x69, }; static const unsigned char xdh_wei25519_1925_sharedsecret[] = { 0x92, 0x13, 0xa5, 0x3f, 0x22, 0xff, 0x0c, 0xb5, 0xec, 0xa8, 0x7b, 0x27, 0xb1, 0x93, 0xc7, 0x73, 0xbf, 0xdf, 0x4c, 0x01, 0xa1, 0x93, 0xa1, 0x1f, 0x37, 0xc1, 0x57, 0x47, 0x4e, 0x15, 0xcb, 0x07, }; static const wycheproof_xdh_test xdh_wei25519_1925 = { .name = "xdh_wei25519_1925", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1925_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1925_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1925_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1926 for XDH, tcId is 362 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1926_peerpubkey[] = { 0xa2, 0x44, 0x41, 0x3d, 0xdc, 0x3a, 0x20, 0x5d, 0x03, 0x8d, 0x64, 0x26, 0x68, 0x33, 0xee, 0xa1, 0xef, 0xba, 0x51, 0xba, 0x62, 0xc9, 0xc6, 0xcd, 0xcd, 0xbe, 0x94, 0x3b, 0xe5, 0x2b, 0xb0, 0x0c, }; static const unsigned char xdh_wei25519_1926_privkey[] = { 0xd8, 0x05, 0xa7, 0x01, 0x47, 0x55, 0xdd, 0x65, 0x6f, 0x98, 0xd2, 0xb3, 0x31, 0xf2, 0xd2, 0xd4, 0x91, 0x27, 0x25, 0xef, 0x3d, 0x03, 0x75, 0x2f, 0x26, 0xf7, 0x4d, 0xc1, 0xad, 0x61, 0x66, 0x6a, }; static const unsigned char xdh_wei25519_1926_sharedsecret[] = { 0x66, 0x48, 0x4a, 0x41, 0x20, 0xe0, 0xeb, 0x0c, 0x7e, 0x05, 0x05, 0xe1, 0xd2, 0xc5, 0xd1, 0x5d, 0xe9, 0xb5, 0x2b, 0x72, 0xe0, 0x94, 0xc9, 0xba, 0xc8, 0x86, 0x34, 0x20, 0x0c, 0x55, 0x72, 0x67, }; static const wycheproof_xdh_test xdh_wei25519_1926 = { .name = "xdh_wei25519_1926", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1926_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1926_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1926_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 362 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1927 for XDH, tcId is 363 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1927_peerpubkey[] = { 0xec, 0x3c, 0x8b, 0x0c, 0x10, 0xb1, 0xfa, 0x65, 0xdb, 0xbd, 0x17, 0xcf, 0x1b, 0xa5, 0xf8, 0x63, 0x81, 0x28, 0x47, 0x65, 0x70, 0x9b, 0x07, 0xc5, 0xf0, 0x42, 0x8e, 0x3d, 0x5b, 0xcd, 0x39, 0x20, }; static const unsigned char xdh_wei25519_1927_privkey[] = { 0x40, 0xcb, 0x1f, 0xe0, 0x6b, 0x08, 0xf0, 0x68, 0xf7, 0x08, 0x0b, 0xa0, 0x7c, 0x69, 0x5e, 0xda, 0x91, 0xa2, 0xbe, 0xbe, 0xad, 0xd4, 0xdb, 0x95, 0xc9, 0x7d, 0xd7, 0xc9, 0x1a, 0xf2, 0x56, 0x6d, }; static const unsigned char xdh_wei25519_1927_sharedsecret[] = { 0x38, 0x4f, 0x22, 0x21, 0x61, 0x8e, 0x71, 0xd4, 0x56, 0xb1, 0x55, 0x16, 0x51, 0xef, 0xdb, 0x70, 0x8a, 0x16, 0x1d, 0x7f, 0x89, 0xf5, 0x60, 0x4b, 0x27, 0xeb, 0x87, 0x2d, 0x4a, 0xa9, 0x32, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_1927 = { .name = "xdh_wei25519_1927", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1927_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1927_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1927_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 363 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1928 for XDH, tcId is 364 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1928_peerpubkey[] = { 0x63, 0x30, 0xd3, 0xe2, 0x8a, 0x8b, 0x61, 0x26, 0xac, 0xe1, 0x65, 0xa9, 0xdf, 0xcc, 0xc6, 0xe4, 0xbd, 0x40, 0xdb, 0xc9, 0x76, 0x8c, 0xfb, 0x16, 0x33, 0x0c, 0xb7, 0xf2, 0x7f, 0x90, 0x62, 0x30, }; static const unsigned char xdh_wei25519_1928_privkey[] = { 0x80, 0x21, 0x46, 0x4c, 0x64, 0xc9, 0xd6, 0xd3, 0xc0, 0xc8, 0x52, 0xf6, 0x97, 0x2d, 0x11, 0x96, 0x9b, 0x04, 0xc9, 0xe0, 0x66, 0x56, 0x2f, 0xa7, 0xf0, 0xd5, 0xfa, 0x0d, 0x98, 0xeb, 0xad, 0x62, }; static const unsigned char xdh_wei25519_1928_sharedsecret[] = { 0x8d, 0xaf, 0x5f, 0x4b, 0x84, 0x73, 0x01, 0x44, 0xea, 0x8a, 0x53, 0xce, 0x39, 0xcc, 0x90, 0x7e, 0x39, 0xa8, 0x9e, 0xd0, 0x9f, 0x02, 0x02, 0xe7, 0xbe, 0x0d, 0x3b, 0xda, 0x38, 0xda, 0x66, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1928 = { .name = "xdh_wei25519_1928", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1928_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1928_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1928_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 364 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1929 for XDH, tcId is 365 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1929_peerpubkey[] = { 0x86, 0x78, 0xaa, 0x29, 0xcb, 0xc0, 0x6e, 0x78, 0xb2, 0x18, 0xd2, 0x2a, 0x3e, 0x66, 0xc3, 0x8e, 0xc0, 0xda, 0x8f, 0xdb, 0x0f, 0x25, 0x70, 0xc5, 0x85, 0xc6, 0x25, 0x17, 0xc9, 0x70, 0x4f, 0x37, }; static const unsigned char xdh_wei25519_1929_privkey[] = { 0x70, 0x7a, 0x2d, 0x71, 0x0b, 0x32, 0xf5, 0x5c, 0x6e, 0xba, 0x34, 0x89, 0x80, 0x20, 0xa2, 0xfb, 0x98, 0x1d, 0x61, 0xb1, 0xe8, 0x22, 0xfc, 0xa8, 0x4c, 0x47, 0xd9, 0x32, 0x1e, 0x27, 0x92, 0x68, }; static const unsigned char xdh_wei25519_1929_sharedsecret[] = { 0xda, 0x8b, 0x7e, 0xba, 0x6f, 0x72, 0xc3, 0xf3, 0xef, 0x33, 0xd8, 0x98, 0x20, 0x93, 0x49, 0x2e, 0x06, 0xbe, 0x39, 0xbb, 0x0d, 0xb2, 0x9c, 0x46, 0x5d, 0x95, 0xa8, 0xe5, 0x2e, 0xf6, 0x43, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1929 = { .name = "xdh_wei25519_1929", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1929_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1929_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1929_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 365 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1930 for XDH, tcId is 366 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1930_peerpubkey[] = { 0x30, 0x32, 0x89, 0xc2, 0xb1, 0x07, 0x9e, 0xa5, 0x94, 0x12, 0xfa, 0xcc, 0xfe, 0xba, 0x8c, 0x11, 0x3d, 0x22, 0x99, 0xb9, 0xdc, 0xfe, 0xde, 0xab, 0xc4, 0x26, 0x97, 0xb0, 0x82, 0x9c, 0x46, 0x58, }; static const unsigned char xdh_wei25519_1930_privkey[] = { 0x20, 0x4a, 0x43, 0xde, 0xa7, 0x9d, 0x77, 0x95, 0x77, 0x58, 0x1b, 0x8c, 0x2a, 0x51, 0xbe, 0x66, 0xe1, 0xef, 0xfc, 0xe9, 0x64, 0x25, 0xb7, 0x42, 0x2b, 0x9c, 0xa6, 0x5b, 0xdf, 0x1a, 0x48, 0x67, }; static const unsigned char xdh_wei25519_1930_sharedsecret[] = { 0x04, 0x19, 0xa7, 0x1a, 0x08, 0xd3, 0xfd, 0xd5, 0x74, 0xcb, 0xc9, 0x32, 0xe8, 0xf1, 0x60, 0x59, 0x33, 0xdd, 0xcd, 0xd9, 0x77, 0x4f, 0x56, 0x14, 0x26, 0x9b, 0x7e, 0xd8, 0x50, 0xc8, 0x65, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1930 = { .name = "xdh_wei25519_1930", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1930_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1930_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1930_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 366 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1931 for XDH, tcId is 367 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1931_peerpubkey[] = { 0x3e, 0x6e, 0x16, 0xe0, 0x2d, 0x44, 0xeb, 0xd9, 0x46, 0x80, 0x83, 0x2e, 0x06, 0x5a, 0xed, 0xdc, 0xbb, 0x74, 0xaf, 0x64, 0xfb, 0xb7, 0xc6, 0xd8, 0x36, 0x7e, 0x76, 0x05, 0xbe, 0x13, 0xff, 0x5b, }; static const unsigned char xdh_wei25519_1931_privkey[] = { 0x58, 0xe4, 0x74, 0x17, 0x35, 0xd2, 0x58, 0x93, 0x22, 0x15, 0x19, 0x47, 0xa1, 0xce, 0x2f, 0x58, 0x29, 0x90, 0x86, 0x26, 0x88, 0x69, 0x41, 0xcb, 0x16, 0x31, 0xd2, 0x5a, 0x8a, 0x68, 0x41, 0x69, }; static const unsigned char xdh_wei25519_1931_sharedsecret[] = { 0x9f, 0x2f, 0xcd, 0x0c, 0x75, 0x62, 0x88, 0xc1, 0x71, 0x6e, 0xcd, 0x1f, 0x2a, 0x74, 0x86, 0x4b, 0x93, 0xa7, 0x71, 0x7b, 0xfa, 0xf5, 0x24, 0x88, 0x58, 0xdc, 0xb6, 0xfd, 0xbe, 0xa1, 0x28, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_1931 = { .name = "xdh_wei25519_1931", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1931_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1931_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1931_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 367 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1932 for XDH, tcId is 368 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1932_peerpubkey[] = { 0xa7, 0xc1, 0x71, 0x6a, 0x41, 0xed, 0x23, 0xa8, 0x87, 0x04, 0x38, 0x71, 0x4f, 0xf9, 0x74, 0x5f, 0xb0, 0xe4, 0x6f, 0x7a, 0x5b, 0xae, 0xb3, 0x7c, 0x9a, 0x2d, 0x83, 0xfe, 0x47, 0x7d, 0x14, 0x6c, }; static const unsigned char xdh_wei25519_1932_privkey[] = { 0xd0, 0xaf, 0x34, 0x28, 0xea, 0x52, 0x05, 0xf6, 0xbf, 0x8d, 0x4f, 0x1b, 0x4e, 0x49, 0x03, 0xcd, 0x76, 0xf0, 0x42, 0x36, 0xa1, 0xc0, 0xb3, 0xec, 0xfd, 0xca, 0xf2, 0x8b, 0x21, 0x34, 0x8e, 0x63, }; static const unsigned char xdh_wei25519_1932_sharedsecret[] = { 0x26, 0x1a, 0xb6, 0x26, 0x7c, 0x35, 0xa9, 0x75, 0x53, 0x59, 0xe9, 0x57, 0x47, 0x38, 0x70, 0x52, 0x2b, 0x7f, 0x92, 0x3f, 0xe8, 0x39, 0xf2, 0xb1, 0x55, 0x40, 0x86, 0x49, 0xcc, 0x5e, 0x80, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1932 = { .name = "xdh_wei25519_1932", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1932_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1932_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1932_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 368 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1933 for XDH, tcId is 369 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1933_peerpubkey[] = { 0xda, 0xd9, 0x81, 0x55, 0x2c, 0x57, 0x54, 0x1c, 0x57, 0xef, 0x39, 0x5e, 0xd7, 0x70, 0xce, 0x5e, 0xdc, 0x48, 0xf8, 0x01, 0x54, 0x61, 0xb2, 0xba, 0x7a, 0xa8, 0x31, 0xec, 0x59, 0x3c, 0xeb, 0x15, }; static const unsigned char xdh_wei25519_1933_privkey[] = { 0xc0, 0xea, 0x97, 0xe4, 0x42, 0xe5, 0xdc, 0x1c, 0x81, 0x42, 0xbf, 0xab, 0x70, 0x89, 0xec, 0xb9, 0xbb, 0x9c, 0x5a, 0xe3, 0x72, 0xf9, 0x90, 0x7c, 0x28, 0x25, 0xe6, 0x78, 0xde, 0xfa, 0xe5, 0x67, }; static const unsigned char xdh_wei25519_1933_sharedsecret[] = { 0x90, 0x93, 0xbf, 0xa3, 0xed, 0x34, 0x91, 0xd0, 0x89, 0x1f, 0x02, 0xae, 0x46, 0x6e, 0x5e, 0x13, 0xc9, 0x80, 0xdf, 0x22, 0x9d, 0xb7, 0x40, 0x4c, 0x5b, 0x9d, 0x34, 0xe4, 0xed, 0x21, 0xc6, 0x53, }; static const wycheproof_xdh_test xdh_wei25519_1933 = { .name = "xdh_wei25519_1933", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1933_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1933_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1933_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 369 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1934 for XDH, tcId is 370 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1934_peerpubkey[] = { 0xc5, 0x88, 0xdf, 0xe6, 0xe7, 0x33, 0xd9, 0x05, 0x81, 0xcb, 0xe1, 0x12, 0x07, 0x97, 0x49, 0xd8, 0xeb, 0x30, 0xab, 0x86, 0x31, 0x13, 0x4e, 0xc2, 0x9a, 0xbf, 0xb9, 0x8b, 0x32, 0xe7, 0x65, 0x22, }; static const unsigned char xdh_wei25519_1934_privkey[] = { 0xb0, 0x33, 0x3f, 0x09, 0xac, 0x1e, 0xaa, 0xcd, 0x3c, 0xd6, 0x17, 0xeb, 0x88, 0x32, 0xe9, 0xde, 0x48, 0x8b, 0x45, 0x8b, 0x73, 0x5c, 0xb4, 0xb5, 0x34, 0x5f, 0x51, 0x71, 0x30, 0xc2, 0x5d, 0x6b, }; static const unsigned char xdh_wei25519_1934_sharedsecret[] = { 0x6e, 0x88, 0xbb, 0x6b, 0xf7, 0x55, 0x96, 0xbb, 0xe5, 0xf1, 0xfb, 0xe9, 0x1e, 0x36, 0x5a, 0x52, 0x7a, 0x15, 0x6f, 0x4f, 0x1b, 0x57, 0xc1, 0x3a, 0xc1, 0xe3, 0xe6, 0xdb, 0x93, 0x19, 0x12, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_1934 = { .name = "xdh_wei25519_1934", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1934_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1934_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1934_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 370 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1935 for XDH, tcId is 371 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1935_peerpubkey[] = { 0x06, 0x70, 0x11, 0x6a, 0x43, 0x5e, 0x8d, 0x9b, 0x7a, 0x12, 0xff, 0xc4, 0x32, 0x2f, 0xd6, 0xb1, 0x49, 0xd0, 0xb1, 0xdc, 0x79, 0x9b, 0x5c, 0x09, 0x57, 0xd9, 0xd6, 0xe4, 0x25, 0x46, 0xe8, 0x24, }; static const unsigned char xdh_wei25519_1935_privkey[] = { 0x10, 0x71, 0x90, 0x99, 0xdc, 0x63, 0xbc, 0xc2, 0x82, 0xef, 0x52, 0x58, 0x45, 0xc1, 0x08, 0x89, 0x7a, 0xc9, 0xfa, 0xe9, 0x59, 0x0b, 0x59, 0x3e, 0x0d, 0x50, 0x5d, 0x1c, 0xf1, 0x67, 0xc0, 0x61, }; static const unsigned char xdh_wei25519_1935_sharedsecret[] = { 0xe6, 0xde, 0x74, 0xd2, 0xc5, 0xce, 0xa5, 0x40, 0x94, 0xd7, 0xa7, 0x0a, 0xf0, 0x3c, 0x76, 0x8a, 0xfe, 0x05, 0xd5, 0x2a, 0x03, 0x8b, 0xb7, 0x2d, 0x56, 0xdc, 0xac, 0xf0, 0xba, 0x50, 0x2d, 0x74, }; static const wycheproof_xdh_test xdh_wei25519_1935 = { .name = "xdh_wei25519_1935", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1935_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1935_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1935_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 371 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1936 for XDH, tcId is 372 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1936_peerpubkey[] = { 0x8b, 0x20, 0x0d, 0xd2, 0x26, 0xc5, 0xc0, 0xf7, 0xe1, 0x16, 0xe5, 0x38, 0x8b, 0xa1, 0x62, 0x43, 0x8c, 0xaf, 0x1d, 0xdd, 0xf4, 0xed, 0xc3, 0xb6, 0xba, 0x83, 0x8c, 0x21, 0xb5, 0x92, 0x97, 0x37, }; static const unsigned char xdh_wei25519_1936_privkey[] = { 0x10, 0xe2, 0x0e, 0x4f, 0xda, 0x57, 0x08, 0x4c, 0xa9, 0x0f, 0x7a, 0xd5, 0x72, 0xa7, 0x8a, 0xa8, 0xe6, 0x57, 0x5c, 0x65, 0x9c, 0xd0, 0x1f, 0x30, 0xc4, 0x3c, 0x58, 0x04, 0x0c, 0x20, 0xe8, 0x60, }; static const unsigned char xdh_wei25519_1936_sharedsecret[] = { 0x78, 0xc9, 0xc3, 0xaf, 0xf9, 0x41, 0x6a, 0x53, 0x8c, 0xe3, 0xea, 0x8f, 0xa5, 0x53, 0x24, 0x45, 0x28, 0xd1, 0xfb, 0xec, 0xbc, 0xf9, 0x16, 0x95, 0xa3, 0x3c, 0xa4, 0x64, 0xef, 0x76, 0xb8, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_1936 = { .name = "xdh_wei25519_1936", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1936_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1936_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1936_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 6, tcId is 372 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1937 for XDH, tcId is 373 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1937_peerpubkey[] = { 0x41, 0x9a, 0x07, 0x6b, 0x17, 0x9f, 0x79, 0x72, 0x00, 0x96, 0xea, 0xab, 0xaf, 0x03, 0x47, 0x7e, 0x8f, 0x89, 0xd6, 0x1f, 0x88, 0x5c, 0x8d, 0x7f, 0x58, 0xf6, 0xea, 0xa4, 0xfa, 0x77, 0xdf, 0x5f, }; static const unsigned char xdh_wei25519_1937_privkey[] = { 0xa8, 0x31, 0x2d, 0xf4, 0x73, 0xad, 0xfe, 0xc7, 0x17, 0x1e, 0x16, 0x35, 0xf5, 0xba, 0xd4, 0x4f, 0x07, 0x53, 0xa8, 0x8a, 0x6b, 0x31, 0x74, 0xec, 0x5a, 0xe7, 0x62, 0x70, 0x3a, 0xe2, 0x5e, 0x60, }; static const unsigned char xdh_wei25519_1937_sharedsecret[] = { 0xc1, 0xa9, 0x6c, 0xcb, 0xa0, 0x8b, 0xdd, 0x82, 0xd0, 0xfc, 0x12, 0xe8, 0xcd, 0xe4, 0xcc, 0x1f, 0x25, 0xcf, 0xd5, 0x27, 0x6d, 0xce, 0x7f, 0x18, 0xe4, 0x07, 0xed, 0x0e, 0x4a, 0x89, 0x84, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1937 = { .name = "xdh_wei25519_1937", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1937_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1937_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1937_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 373 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1938 for XDH, tcId is 374 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1938_peerpubkey[] = { 0xaa, 0x34, 0xd7, 0x72, 0xe9, 0xac, 0xe4, 0x3c, 0x4d, 0x92, 0xf4, 0xf8, 0x55, 0x96, 0xab, 0x9c, 0xcd, 0x8c, 0x36, 0xc4, 0xf4, 0xcb, 0xdd, 0xc8, 0x19, 0xaf, 0xe2, 0xa3, 0x3c, 0xb8, 0xb2, 0x16, }; static const unsigned char xdh_wei25519_1938_privkey[] = { 0x10, 0x96, 0x97, 0xf4, 0x00, 0x21, 0x0f, 0x9a, 0x92, 0xde, 0x80, 0xa8, 0xbe, 0xd2, 0x64, 0x09, 0x71, 0x99, 0xbc, 0x24, 0x0e, 0x22, 0x76, 0x7b, 0x54, 0xd8, 0xbb, 0x22, 0x05, 0x0b, 0x7a, 0x61, }; static const unsigned char xdh_wei25519_1938_sharedsecret[] = { 0x25, 0x33, 0xb8, 0x45, 0xbb, 0x83, 0xe3, 0xd4, 0x8c, 0xff, 0xa8, 0xdb, 0xd1, 0xed, 0xd5, 0xd6, 0x01, 0x77, 0x86, 0x62, 0xd5, 0xda, 0x03, 0x75, 0x91, 0x52, 0xa5, 0xe0, 0xa8, 0x4b, 0x35, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1938 = { .name = "xdh_wei25519_1938", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1938_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1938_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1938_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 374 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1939 for XDH, tcId is 375 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1939_peerpubkey[] = { 0x1f, 0x06, 0xcf, 0xe4, 0x64, 0xcc, 0xc0, 0xe2, 0x7a, 0x5e, 0xc5, 0xf9, 0xed, 0xd9, 0xbc, 0x7b, 0xc8, 0x22, 0xad, 0x2f, 0xf5, 0x06, 0x8c, 0xa5, 0xc9, 0x63, 0xd2, 0x0e, 0xdd, 0x1a, 0x2d, 0x22, }; static const unsigned char xdh_wei25519_1939_privkey[] = { 0xd0, 0x36, 0x30, 0x8a, 0x53, 0xc1, 0x1b, 0xeb, 0xcb, 0x02, 0xe8, 0x36, 0x88, 0xad, 0x74, 0xfe, 0xc4, 0x3f, 0x84, 0x62, 0xef, 0x4d, 0x80, 0x62, 0x72, 0x67, 0x66, 0x37, 0xd9, 0x9b, 0x37, 0x65, }; static const unsigned char xdh_wei25519_1939_sharedsecret[] = { 0xeb, 0x40, 0xa3, 0x97, 0x4b, 0x1b, 0x03, 0x10, 0xb1, 0x59, 0x7d, 0x1f, 0x1f, 0x41, 0x01, 0xc0, 0x8d, 0xca, 0x72, 0x74, 0x55, 0xa9, 0xd8, 0x22, 0x4c, 0xd0, 0x61, 0xa7, 0xaa, 0x3c, 0xb6, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1939 = { .name = "xdh_wei25519_1939", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1939_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1939_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1939_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 375 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1940 for XDH, tcId is 376 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1940_peerpubkey[] = { 0x9d, 0x4b, 0x2e, 0xd7, 0x81, 0x71, 0x32, 0xaf, 0x58, 0x30, 0xe8, 0x99, 0x62, 0x7e, 0xa9, 0x7d, 0xc3, 0x9b, 0xd3, 0x77, 0x2e, 0x82, 0xf2, 0xd0, 0x57, 0x69, 0xa9, 0x18, 0x27, 0x3d, 0xc0, 0x2e, }; static const unsigned char xdh_wei25519_1940_privkey[] = { 0x78, 0x6e, 0x5a, 0x5f, 0xf3, 0x74, 0x05, 0xc7, 0x69, 0xd0, 0xd3, 0x78, 0x8c, 0x3c, 0x1b, 0x05, 0xa6, 0x2a, 0x84, 0x42, 0xc3, 0x85, 0x57, 0x0e, 0x44, 0x38, 0xbc, 0x5f, 0x2e, 0xaa, 0xcd, 0x67, }; static const unsigned char xdh_wei25519_1940_sharedsecret[] = { 0x95, 0x09, 0x75, 0x7e, 0x28, 0x95, 0x53, 0xcf, 0xa2, 0xcc, 0x71, 0x31, 0x34, 0x73, 0xc3, 0xff, 0x1e, 0xeb, 0xce, 0x48, 0x4e, 0xe2, 0x37, 0xea, 0xe5, 0x54, 0xfd, 0xa3, 0xd3, 0xd2, 0x2f, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1940 = { .name = "xdh_wei25519_1940", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1940_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1940_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1940_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 376 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1941 for XDH, tcId is 377 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1941_peerpubkey[] = { 0x4e, 0x05, 0x6b, 0x31, 0x7a, 0x31, 0xdd, 0x96, 0xf8, 0xec, 0x14, 0xb4, 0x84, 0x74, 0xaf, 0x58, 0x7d, 0x19, 0x5e, 0xfc, 0xc2, 0xa7, 0x0f, 0x01, 0xf0, 0x52, 0xef, 0x88, 0x2d, 0x7b, 0x3a, 0x45, }; static const unsigned char xdh_wei25519_1941_privkey[] = { 0xc0, 0x1f, 0x66, 0xcb, 0x09, 0x42, 0x89, 0xd7, 0x28, 0x42, 0x1d, 0xd4, 0x6c, 0x6f, 0x97, 0x18, 0x41, 0x2e, 0x1c, 0x54, 0x6d, 0xad, 0x70, 0xe5, 0x86, 0x85, 0x1b, 0xe4, 0xda, 0x58, 0xbf, 0x67, }; static const unsigned char xdh_wei25519_1941_sharedsecret[] = { 0xba, 0xd9, 0xf7, 0xb2, 0x7d, 0xac, 0x64, 0xb0, 0xfc, 0x98, 0x0a, 0x41, 0xf1, 0xce, 0xfa, 0x50, 0xc5, 0xca, 0x40, 0xc7, 0x14, 0x29, 0x6c, 0x0c, 0x40, 0x42, 0x09, 0x5c, 0x2d, 0xb6, 0x0e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1941 = { .name = "xdh_wei25519_1941", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1941_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1941_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1941_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 377 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1942 for XDH, tcId is 378 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1942_peerpubkey[] = { 0x72, 0xc6, 0x05, 0x35, 0xe9, 0xc4, 0x23, 0xf3, 0x02, 0xd6, 0xa1, 0x07, 0x96, 0xd9, 0x54, 0xd7, 0x78, 0x03, 0x2c, 0xd4, 0xdb, 0xd4, 0x0c, 0xa0, 0xf3, 0x59, 0xe2, 0x04, 0xd6, 0x7b, 0x6f, 0x4c, }; static const unsigned char xdh_wei25519_1942_privkey[] = { 0x38, 0x77, 0xd9, 0xce, 0x25, 0xce, 0xde, 0xde, 0xb5, 0x72, 0x60, 0x4f, 0x2d, 0x12, 0x3d, 0xf6, 0x85, 0x69, 0x0c, 0x26, 0xe1, 0x81, 0xf7, 0x77, 0xed, 0x33, 0x30, 0x2b, 0x82, 0x08, 0x29, 0x66, }; static const unsigned char xdh_wei25519_1942_sharedsecret[] = { 0x51, 0xc3, 0x59, 0x76, 0x8a, 0xb0, 0x21, 0x90, 0x03, 0xaf, 0x19, 0x3e, 0x2b, 0xdb, 0x8e, 0x5c, 0xc9, 0xf8, 0xe1, 0x76, 0xb8, 0xdb, 0x49, 0xe5, 0x97, 0xaf, 0xca, 0x3e, 0x71, 0x25, 0xe3, 0x70, }; static const wycheproof_xdh_test xdh_wei25519_1942 = { .name = "xdh_wei25519_1942", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1942_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1942_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1942_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 378 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1943 for XDH, tcId is 379 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1943_peerpubkey[] = { 0x58, 0x56, 0x35, 0x8e, 0xd4, 0x20, 0x04, 0x7c, 0xd0, 0x84, 0xf1, 0x7a, 0xe6, 0x96, 0xba, 0xd7, 0x9a, 0x4d, 0x26, 0xc6, 0xd5, 0xbb, 0x79, 0xbf, 0xb8, 0x2b, 0xbc, 0x63, 0x32, 0x44, 0x2d, 0x51, }; static const unsigned char xdh_wei25519_1943_privkey[] = { 0x50, 0xb8, 0x46, 0x18, 0xd0, 0x73, 0xc4, 0x61, 0x8f, 0x9a, 0xa6, 0x9a, 0x3b, 0x85, 0x18, 0xda, 0x76, 0xdb, 0xb2, 0x12, 0x72, 0x86, 0x21, 0x4f, 0xb4, 0x3a, 0x2b, 0x44, 0x50, 0x3b, 0x99, 0x69, }; static const unsigned char xdh_wei25519_1943_sharedsecret[] = { 0xfa, 0x9f, 0xb0, 0xdf, 0x4c, 0xfb, 0xac, 0xd0, 0xfb, 0xf3, 0x26, 0x2d, 0x3a, 0x1b, 0xf8, 0xd7, 0xaa, 0xcb, 0x45, 0xf7, 0x3b, 0xf9, 0x46, 0x71, 0x77, 0x5e, 0x50, 0x9c, 0x80, 0x43, 0xdf, 0x7d, }; static const wycheproof_xdh_test xdh_wei25519_1943 = { .name = "xdh_wei25519_1943", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1943_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1943_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1943_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 379 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1944 for XDH, tcId is 380 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1944_peerpubkey[] = { 0xc3, 0x1e, 0x37, 0xb0, 0x43, 0x32, 0xab, 0xca, 0x83, 0x15, 0xf3, 0x17, 0x17, 0x15, 0x66, 0xae, 0xf3, 0x81, 0x11, 0xf6, 0x22, 0xd8, 0xbf, 0xfa, 0x29, 0xc2, 0x3c, 0x01, 0x51, 0xcd, 0xad, 0x6e, }; static const unsigned char xdh_wei25519_1944_privkey[] = { 0x10, 0x9a, 0xcf, 0xa6, 0x38, 0xe1, 0x12, 0xf6, 0xbb, 0xec, 0x21, 0xe3, 0x52, 0xa7, 0x4e, 0x8f, 0xc9, 0xb7, 0xff, 0xe5, 0xd9, 0xdc, 0x28, 0x63, 0x4e, 0xeb, 0x51, 0x6e, 0x59, 0x83, 0x0a, 0x63, }; static const unsigned char xdh_wei25519_1944_sharedsecret[] = { 0x91, 0xac, 0x72, 0xb0, 0xed, 0x8d, 0x7f, 0xc4, 0xc8, 0x84, 0x6b, 0x8a, 0x25, 0x30, 0xd9, 0xfb, 0x8f, 0x05, 0x32, 0x06, 0x48, 0x80, 0xc0, 0x0d, 0xab, 0x10, 0x0c, 0x97, 0x76, 0x97, 0xdb, 0x28, }; static const wycheproof_xdh_test xdh_wei25519_1944 = { .name = "xdh_wei25519_1944", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1944_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1944_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1944_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 380 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1945 for XDH, tcId is 381 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1945_peerpubkey[] = { 0xb7, 0x75, 0xe0, 0x16, 0xb3, 0x2a, 0x97, 0xf4, 0x99, 0x71, 0x12, 0x19, 0x06, 0x76, 0x3f, 0x3a, 0x0b, 0x41, 0x68, 0x90, 0x92, 0xb9, 0x58, 0x3b, 0x67, 0x10, 0xcf, 0x7d, 0xee, 0x03, 0xa6, 0x1c, }; static const unsigned char xdh_wei25519_1945_privkey[] = { 0x68, 0x5c, 0x07, 0x84, 0xaa, 0x6d, 0x19, 0x4c, 0x1b, 0x85, 0x9b, 0xda, 0x44, 0xc4, 0xe2, 0x7c, 0xd1, 0xdf, 0xdf, 0x34, 0x77, 0x6e, 0x49, 0x8d, 0xd0, 0x3d, 0x09, 0xf8, 0x7a, 0xe6, 0x8a, 0x65, }; static const unsigned char xdh_wei25519_1945_sharedsecret[] = { 0x11, 0x39, 0x3b, 0xb5, 0x48, 0x81, 0x3e, 0x04, 0xfb, 0x54, 0x13, 0x3e, 0xdb, 0xe0, 0x62, 0x64, 0x58, 0xe8, 0x09, 0x81, 0x88, 0x5e, 0x1f, 0xe5, 0xf3, 0x37, 0x7e, 0x8e, 0xbe, 0x9a, 0xfa, 0x52, }; static const wycheproof_xdh_test xdh_wei25519_1945 = { .name = "xdh_wei25519_1945", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1945_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1945_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1945_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 381 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1946 for XDH, tcId is 382 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1946_peerpubkey[] = { 0xf8, 0xbd, 0x0e, 0x7c, 0xf6, 0xec, 0x61, 0x86, 0xf2, 0x05, 0xab, 0x03, 0xab, 0x72, 0xc8, 0xf6, 0xb3, 0xcd, 0xe8, 0xf6, 0xad, 0x9b, 0x16, 0x69, 0x16, 0xa0, 0x4d, 0x43, 0xd1, 0xd6, 0xd5, 0x46, }; static const unsigned char xdh_wei25519_1946_privkey[] = { 0x18, 0xe9, 0xa0, 0x5a, 0x20, 0x43, 0x6c, 0xf0, 0xdb, 0xc3, 0xd5, 0xb9, 0x2d, 0xac, 0x8d, 0x99, 0x6e, 0x62, 0xea, 0x11, 0xfb, 0xb3, 0x44, 0x5f, 0x29, 0x19, 0x5f, 0xc7, 0x5a, 0x8b, 0xeb, 0x69, }; static const unsigned char xdh_wei25519_1946_sharedsecret[] = { 0x0a, 0x83, 0xa2, 0x24, 0xfb, 0xfc, 0xbc, 0x5d, 0x0f, 0x07, 0xf6, 0xdd, 0x8e, 0xbb, 0x2e, 0x9b, 0xbe, 0xe8, 0x13, 0x4f, 0x0f, 0xab, 0x26, 0x80, 0x02, 0xce, 0x83, 0x7f, 0x54, 0x95, 0xd8, 0x33, }; static const wycheproof_xdh_test xdh_wei25519_1946 = { .name = "xdh_wei25519_1946", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1946_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1946_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1946_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 382 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1947 for XDH, tcId is 383 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1947_peerpubkey[] = { 0x8d, 0xfe, 0xe4, 0x8a, 0xd8, 0xb3, 0x67, 0x48, 0x8e, 0xa4, 0xda, 0xfc, 0xf7, 0x08, 0x6e, 0x30, 0x53, 0x56, 0xa8, 0x09, 0x01, 0xf8, 0x7c, 0x72, 0x01, 0x49, 0xa5, 0xf5, 0x22, 0x33, 0x74, 0x53, }; static const unsigned char xdh_wei25519_1947_privkey[] = { 0x00, 0xe0, 0x99, 0xeb, 0x23, 0x12, 0x5d, 0xab, 0x5e, 0xc3, 0x5a, 0x41, 0x9d, 0x45, 0x5d, 0x0b, 0xa8, 0xc0, 0x1d, 0xa1, 0x60, 0xf9, 0x35, 0x4e, 0x9f, 0xb2, 0x1e, 0x6a, 0x55, 0xd5, 0x5c, 0x64, }; static const unsigned char xdh_wei25519_1947_sharedsecret[] = { 0x45, 0xdc, 0x39, 0x83, 0x1f, 0x34, 0x71, 0xd7, 0x46, 0x6b, 0xbe, 0x29, 0xc8, 0x14, 0x2b, 0x1a, 0x6d, 0x6b, 0x00, 0xc4, 0x7f, 0xea, 0x02, 0x1b, 0xe2, 0xff, 0xc4, 0x52, 0xd9, 0x04, 0x68, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1947 = { .name = "xdh_wei25519_1947", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1947_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1947_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1947_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 383 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1948 for XDH, tcId is 384 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1948_peerpubkey[] = { 0x8f, 0x68, 0xbf, 0xc5, 0x7d, 0x79, 0x2c, 0x32, 0x2e, 0xbb, 0x27, 0xf4, 0x4a, 0x37, 0xc1, 0xc9, 0x3e, 0x7e, 0xb1, 0x5c, 0x5d, 0x5f, 0xce, 0xdf, 0xfc, 0x1d, 0xe8, 0x50, 0x48, 0x7b, 0x33, 0x72, }; static const unsigned char xdh_wei25519_1948_privkey[] = { 0xb0, 0xca, 0x25, 0x1e, 0x0d, 0xba, 0xe7, 0x32, 0x4a, 0x6c, 0xa0, 0xc2, 0xc8, 0xd6, 0xa8, 0x88, 0xed, 0xd1, 0x2d, 0x14, 0x47, 0xd4, 0x00, 0xa4, 0x7b, 0xcb, 0xa0, 0x04, 0xb6, 0x48, 0x71, 0x6e, }; static const unsigned char xdh_wei25519_1948_sharedsecret[] = { 0xa2, 0x90, 0x05, 0xc6, 0xb9, 0xdb, 0xf1, 0x70, 0x7d, 0xc2, 0xad, 0xce, 0x45, 0x06, 0xb5, 0x58, 0x31, 0xe8, 0x67, 0x5b, 0x7d, 0x2d, 0x54, 0xb0, 0xc1, 0x03, 0x77, 0x41, 0xe3, 0xbc, 0x61, 0x1b, }; static const wycheproof_xdh_test xdh_wei25519_1948 = { .name = "xdh_wei25519_1948", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1948_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1948_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1948_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 384 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1949 for XDH, tcId is 385 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1949_peerpubkey[] = { 0xff, 0x0f, 0x15, 0xad, 0xea, 0xb3, 0x34, 0xaf, 0xed, 0xa3, 0x91, 0x67, 0x85, 0xdd, 0xd3, 0x8d, 0x25, 0x2d, 0xce, 0x98, 0x76, 0xc2, 0x35, 0x7b, 0x64, 0x3b, 0x5d, 0xc2, 0xc0, 0x6a, 0x3b, 0x1d, }; static const unsigned char xdh_wei25519_1949_privkey[] = { 0xa8, 0xb6, 0x4b, 0x8e, 0xd3, 0x97, 0x77, 0x3b, 0x82, 0x90, 0x42, 0x5c, 0xa5, 0xc2, 0xf7, 0xc3, 0xe5, 0x0f, 0xac, 0x7a, 0x47, 0x81, 0xbd, 0x4a, 0x54, 0xc1, 0x33, 0x78, 0x1c, 0x9a, 0x13, 0x60, }; static const unsigned char xdh_wei25519_1949_sharedsecret[] = { 0x9f, 0x04, 0xe4, 0x2c, 0x1b, 0x2f, 0x31, 0x1d, 0x87, 0xe1, 0x47, 0x0a, 0x47, 0x08, 0xbb, 0xa2, 0x5a, 0xc6, 0xff, 0xd3, 0xf7, 0xb4, 0x86, 0xf9, 0xb6, 0xb5, 0x02, 0xec, 0xbb, 0x2c, 0x00, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_1949 = { .name = "xdh_wei25519_1949", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1949_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1949_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1949_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 385 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1950 for XDH, tcId is 386 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1950_peerpubkey[] = { 0x10, 0x76, 0xfd, 0xc8, 0x27, 0xf2, 0x55, 0x0e, 0xe9, 0x5f, 0xf9, 0xa1, 0x5d, 0x04, 0x4a, 0xed, 0xfa, 0xc6, 0x5b, 0x5e, 0x9b, 0xa8, 0x09, 0xf6, 0x24, 0x38, 0xcc, 0xea, 0x54, 0x63, 0x7a, 0x29, }; static const unsigned char xdh_wei25519_1950_privkey[] = { 0xd0, 0xcd, 0x0d, 0xb5, 0x1f, 0xf2, 0x32, 0xaf, 0xa0, 0x91, 0x9d, 0x31, 0x06, 0xfc, 0xb3, 0xa8, 0xae, 0x58, 0x1e, 0xf1, 0x2d, 0x09, 0xc8, 0x77, 0xaa, 0x6f, 0x31, 0xef, 0x74, 0xee, 0xd0, 0x68, }; static const unsigned char xdh_wei25519_1950_sharedsecret[] = { 0x68, 0x80, 0x00, 0xbd, 0x60, 0xaf, 0x37, 0x5b, 0x4e, 0xea, 0xc4, 0xa7, 0xd0, 0xe0, 0x78, 0x2c, 0x0e, 0x61, 0x88, 0xea, 0xbd, 0xc6, 0x08, 0xb7, 0x32, 0xf4, 0x9b, 0x4d, 0x6c, 0xca, 0xb4, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_1950 = { .name = "xdh_wei25519_1950", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1950_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1950_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1950_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 386 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1951 for XDH, tcId is 387 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1951_peerpubkey[] = { 0xed, 0x1c, 0x82, 0x08, 0x2b, 0x74, 0xcc, 0x2a, 0xae, 0xbf, 0x3d, 0xc7, 0x72, 0xba, 0x09, 0x55, 0x7c, 0x0f, 0xc1, 0x41, 0x39, 0xa8, 0x81, 0x4f, 0xc5, 0xf9, 0x37, 0x0b, 0xb8, 0xe9, 0x88, 0x58, }; static const unsigned char xdh_wei25519_1951_privkey[] = { 0x20, 0x4a, 0x3b, 0x56, 0x52, 0x85, 0x4f, 0xf4, 0x8e, 0x25, 0xcd, 0x38, 0x5c, 0xab, 0xe6, 0x36, 0x0f, 0x64, 0xce, 0x44, 0xfe, 0xa5, 0x62, 0x1d, 0xb1, 0xfa, 0x2f, 0x6e, 0x21, 0x9f, 0x30, 0x63, }; static const unsigned char xdh_wei25519_1951_sharedsecret[] = { 0xe0, 0xa8, 0x2f, 0x31, 0x30, 0x46, 0x02, 0x4b, 0x3c, 0xea, 0x93, 0xb9, 0x8e, 0x2f, 0x8e, 0xcf, 0x22, 0x8c, 0xbf, 0xab, 0x8a, 0xe1, 0x0b, 0x10, 0x29, 0x2c, 0x32, 0xfe, 0xcc, 0xff, 0x16, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1951 = { .name = "xdh_wei25519_1951", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1951_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1951_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1951_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 387 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1952 for XDH, tcId is 388 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1952_peerpubkey[] = { 0x12, 0xe1, 0x58, 0x9a, 0x34, 0x09, 0x4a, 0xf5, 0xf1, 0x21, 0xc9, 0xbd, 0x3c, 0x11, 0x19, 0xf2, 0xb1, 0xf0, 0x52, 0x64, 0xc5, 0x73, 0xf6, 0x67, 0xa7, 0x48, 0x68, 0x3c, 0x56, 0x33, 0xa4, 0x7e, }; static const unsigned char xdh_wei25519_1952_privkey[] = { 0x88, 0x10, 0x9b, 0x1d, 0x0e, 0x7b, 0xac, 0xe4, 0x4d, 0x41, 0xa1, 0x5d, 0x5b, 0xcb, 0xcd, 0x36, 0x96, 0x8c, 0x5b, 0x8b, 0x47, 0xc0, 0xa2, 0xc6, 0x06, 0xb5, 0x7c, 0x4a, 0x68, 0xcc, 0x5f, 0x66, }; static const unsigned char xdh_wei25519_1952_sharedsecret[] = { 0x1f, 0xcc, 0x50, 0x33, 0x3e, 0xb9, 0x07, 0x06, 0x93, 0x5f, 0x25, 0xb0, 0x2f, 0x43, 0x7b, 0xfd, 0x22, 0xb6, 0xb1, 0x6c, 0xc3, 0x75, 0xaf, 0xff, 0x8a, 0x1a, 0xa7, 0x43, 0x2f, 0xb8, 0x62, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1952 = { .name = "xdh_wei25519_1952", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1952_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1952_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1952_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 388 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1953 for XDH, tcId is 389 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1953_peerpubkey[] = { 0x15, 0x1f, 0x54, 0xa8, 0xa8, 0x99, 0x71, 0x17, 0x57, 0xb3, 0xb1, 0x18, 0xfc, 0x55, 0x01, 0x77, 0x9d, 0x62, 0x1d, 0x25, 0x22, 0x7a, 0xf5, 0x3d, 0x0a, 0xf0, 0x0b, 0x75, 0x83, 0xba, 0x88, 0x24, }; static const unsigned char xdh_wei25519_1953_privkey[] = { 0x50, 0x82, 0xe4, 0x97, 0xc4, 0x29, 0x79, 0xcd, 0xbf, 0xdd, 0x1b, 0x3b, 0x06, 0x53, 0xcf, 0xea, 0x6f, 0x2c, 0xeb, 0x7d, 0x07, 0x63, 0x9e, 0xbf, 0x35, 0x41, 0x86, 0x6b, 0xb6, 0x0e, 0xdb, 0x62, }; static const unsigned char xdh_wei25519_1953_sharedsecret[] = { 0xfa, 0xc3, 0x0a, 0x74, 0xf4, 0xca, 0x99, 0xf6, 0xcf, 0x23, 0x30, 0x65, 0xe9, 0xac, 0xd8, 0x26, 0x69, 0x0c, 0xab, 0x36, 0x4b, 0xf6, 0x93, 0x20, 0xb5, 0x80, 0x95, 0x78, 0x3e, 0xd7, 0x6e, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_1953 = { .name = "xdh_wei25519_1953", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1953_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1953_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1953_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 389 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1954 for XDH, tcId is 390 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1954_peerpubkey[] = { 0xa8, 0x19, 0xc6, 0x67, 0xed, 0x46, 0x6b, 0xd9, 0xa6, 0x9e, 0xa0, 0xb3, 0x86, 0x42, 0xee, 0x8e, 0x53, 0xf4, 0x0a, 0x50, 0x37, 0x7b, 0x05, 0x1e, 0xb5, 0x90, 0x14, 0x2d, 0xd2, 0x7e, 0x34, 0x31, }; static const unsigned char xdh_wei25519_1954_privkey[] = { 0xf8, 0x5a, 0x8d, 0xb4, 0x4f, 0x9e, 0x56, 0xb1, 0x17, 0x29, 0xf5, 0x16, 0x82, 0xa9, 0x76, 0x9f, 0xc5, 0x04, 0xf9, 0x35, 0x97, 0xcb, 0xe3, 0x94, 0x44, 0x61, 0x6b, 0x22, 0x45, 0x32, 0x10, 0x6e, }; static const unsigned char xdh_wei25519_1954_sharedsecret[] = { 0x17, 0xf6, 0x54, 0x3c, 0x47, 0x27, 0xe7, 0xf1, 0x29, 0xee, 0x82, 0x47, 0x76, 0x55, 0x57, 0x76, 0x35, 0xc1, 0x25, 0xa2, 0x0c, 0x3d, 0xc8, 0xba, 0x20, 0x6c, 0xa3, 0xcc, 0x48, 0x54, 0xca, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1954 = { .name = "xdh_wei25519_1954", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1954_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1954_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1954_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 390 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1955 for XDH, tcId is 391 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1955_peerpubkey[] = { 0x40, 0xb0, 0x53, 0xd0, 0x56, 0x66, 0x89, 0x82, 0xa1, 0xf5, 0x50, 0xbe, 0x95, 0xe1, 0x63, 0x48, 0xe3, 0x03, 0x94, 0x5f, 0x53, 0xa3, 0xac, 0x64, 0x49, 0x1a, 0x9a, 0x56, 0xd4, 0x09, 0x5b, 0x71, }; static const unsigned char xdh_wei25519_1955_privkey[] = { 0x50, 0x5a, 0x07, 0x66, 0x41, 0xfa, 0xc3, 0x98, 0xfc, 0x7d, 0x8c, 0x62, 0x99, 0x37, 0xf4, 0x2d, 0xb5, 0x59, 0xdb, 0x5e, 0x12, 0x05, 0x2a, 0xd3, 0x66, 0xd4, 0x6d, 0x7b, 0x20, 0xe9, 0x57, 0x69, }; static const unsigned char xdh_wei25519_1955_sharedsecret[] = { 0x88, 0x9a, 0x8d, 0x61, 0x1e, 0x0a, 0x7d, 0xa7, 0x14, 0x75, 0xe7, 0xc9, 0x3a, 0x2d, 0x7f, 0x6f, 0x72, 0x28, 0xc7, 0x87, 0xa0, 0x0e, 0xe5, 0xcf, 0x55, 0x47, 0x4a, 0xdc, 0x37, 0x6f, 0xf7, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1955 = { .name = "xdh_wei25519_1955", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1955_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1955_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1955_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 391 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1956 for XDH, tcId is 392 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1956_peerpubkey[] = { 0xe7, 0xdd, 0x05, 0x49, 0xa7, 0x65, 0xbb, 0xef, 0x34, 0xbe, 0x2e, 0x8d, 0xa1, 0x8a, 0x1b, 0xc1, 0xb9, 0x89, 0xa8, 0xb0, 0x61, 0x4d, 0x35, 0x8e, 0xbf, 0x38, 0xc1, 0x2a, 0x9c, 0xa6, 0x40, 0x79, }; static const unsigned char xdh_wei25519_1956_privkey[] = { 0xe8, 0xdb, 0x2b, 0xf1, 0xaf, 0x5b, 0x89, 0x07, 0x42, 0x07, 0x89, 0xc5, 0x6e, 0x71, 0x41, 0x47, 0x06, 0xae, 0xf0, 0xd9, 0xf6, 0xff, 0xae, 0xd0, 0xc2, 0x49, 0xc3, 0xb7, 0xab, 0x14, 0xbf, 0x65, }; static const unsigned char xdh_wei25519_1956_sharedsecret[] = { 0x37, 0x23, 0x2f, 0xb3, 0x97, 0xaf, 0x27, 0xf5, 0xfb, 0x5c, 0xa4, 0x93, 0x28, 0x4f, 0xf1, 0xc5, 0xd2, 0x57, 0x86, 0xb0, 0xd7, 0x16, 0xc7, 0x3b, 0x33, 0xac, 0xa8, 0xd4, 0x22, 0x65, 0xf3, 0x18, }; static const wycheproof_xdh_test xdh_wei25519_1956 = { .name = "xdh_wei25519_1956", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1956_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1956_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1956_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 392 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1957 for XDH, tcId is 393 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1957_peerpubkey[] = { 0x1e, 0xe1, 0xb9, 0xa7, 0x46, 0x04, 0xac, 0x31, 0xc3, 0xdb, 0x83, 0x28, 0x01, 0x70, 0xe3, 0x81, 0x15, 0x04, 0xfc, 0xc7, 0x8c, 0x76, 0x26, 0xb5, 0xb2, 0xc0, 0x7a, 0x99, 0xd8, 0x0d, 0xaa, 0x0a, }; static const unsigned char xdh_wei25519_1957_privkey[] = { 0xc0, 0x06, 0xab, 0x17, 0x62, 0x72, 0x08, 0x82, 0x01, 0x7d, 0x10, 0x6b, 0x9a, 0x46, 0x75, 0xfd, 0xd4, 0x70, 0x05, 0x65, 0x71, 0x55, 0xc9, 0x0c, 0xa6, 0x1d, 0x4c, 0xbf, 0x7c, 0xc4, 0xf9, 0x73, }; static const unsigned char xdh_wei25519_1957_sharedsecret[] = { 0xa1, 0xb3, 0x04, 0x18, 0x43, 0x6b, 0xa1, 0x90, 0x88, 0x04, 0xff, 0xcc, 0xe1, 0xbe, 0x2c, 0xdc, 0xf5, 0x0c, 0x61, 0xa8, 0xe3, 0x93, 0x8d, 0x95, 0xc7, 0x90, 0xab, 0xdb, 0x78, 0x6b, 0x80, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1957 = { .name = "xdh_wei25519_1957", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1957_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1957_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1957_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 393 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1958 for XDH, tcId is 394 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1958_peerpubkey[] = { 0xf2, 0x26, 0xc2, 0xd6, 0xbd, 0x78, 0x31, 0xed, 0xa1, 0xb5, 0x1e, 0xe5, 0xae, 0xc2, 0x94, 0x43, 0xa5, 0x07, 0xef, 0x9f, 0x7a, 0x04, 0xe2, 0x34, 0x0f, 0x34, 0x9d, 0xbf, 0x14, 0x93, 0x38, 0x44, }; static const unsigned char xdh_wei25519_1958_privkey[] = { 0xd0, 0x71, 0x80, 0x7d, 0x60, 0x79, 0x53, 0xda, 0x43, 0x2d, 0x85, 0x74, 0xd5, 0xf3, 0xf4, 0x20, 0x67, 0x6d, 0xaf, 0xdb, 0xc6, 0xa2, 0x85, 0xa3, 0x6e, 0x1d, 0x73, 0x76, 0x24, 0xd7, 0x7c, 0x75, }; static const unsigned char xdh_wei25519_1958_sharedsecret[] = { 0xa5, 0x97, 0x6f, 0xda, 0x89, 0x95, 0x4a, 0x81, 0xe4, 0x42, 0x10, 0x7f, 0x9e, 0x41, 0x6a, 0x2b, 0x4b, 0x48, 0x1b, 0xbd, 0x46, 0x54, 0xeb, 0xc0, 0xc7, 0xb5, 0x7a, 0x78, 0xb4, 0x5b, 0x49, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_1958 = { .name = "xdh_wei25519_1958", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1958_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1958_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1958_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 394 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1959 for XDH, tcId is 395 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1959_peerpubkey[] = { 0xc5, 0x19, 0x73, 0x12, 0xde, 0x3a, 0x7a, 0x3e, 0xe1, 0x1b, 0x29, 0x87, 0x3b, 0xae, 0x3f, 0xc8, 0xc8, 0x51, 0x09, 0xc6, 0x67, 0x84, 0x80, 0x4f, 0x89, 0x43, 0x5d, 0xb2, 0x10, 0xfc, 0xc2, 0x4b, }; static const unsigned char xdh_wei25519_1959_privkey[] = { 0x30, 0x4b, 0x52, 0x6f, 0x6f, 0xe9, 0x94, 0x73, 0x19, 0x80, 0xc0, 0x97, 0x55, 0x29, 0xbc, 0xa4, 0xd0, 0x61, 0x01, 0x7f, 0xbe, 0xc5, 0x6f, 0x60, 0x70, 0xd4, 0x26, 0x78, 0xd3, 0xe1, 0x11, 0x77, }; static const unsigned char xdh_wei25519_1959_sharedsecret[] = { 0x55, 0xb5, 0xb5, 0xeb, 0x38, 0xb1, 0x27, 0x61, 0x7f, 0xfe, 0x00, 0x05, 0x6d, 0x84, 0xd3, 0x5a, 0x50, 0x71, 0xd1, 0x87, 0x83, 0xe3, 0xa8, 0x2b, 0x5f, 0x4e, 0x13, 0x1b, 0x15, 0x38, 0xb1, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_1959 = { .name = "xdh_wei25519_1959", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1959_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1959_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1959_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 395 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1960 for XDH, tcId is 396 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1960_peerpubkey[] = { 0x59, 0x0e, 0xd0, 0xb8, 0x79, 0x31, 0x9c, 0x38, 0xa1, 0x99, 0x62, 0xa5, 0xd2, 0x16, 0xff, 0x2b, 0xfa, 0xf3, 0x35, 0x55, 0x51, 0x88, 0x77, 0x96, 0x9c, 0x20, 0xc0, 0x54, 0xcb, 0xe4, 0x3e, 0x56, }; static const unsigned char xdh_wei25519_1960_privkey[] = { 0x98, 0x2d, 0xdf, 0x2c, 0x03, 0x57, 0x89, 0x37, 0x9b, 0x8a, 0x58, 0x91, 0x7d, 0x5c, 0x3c, 0x6c, 0x06, 0x1b, 0x50, 0x3b, 0x19, 0xa0, 0x02, 0x8e, 0x01, 0x89, 0x4c, 0x2e, 0xb3, 0x71, 0xd0, 0x79, }; static const unsigned char xdh_wei25519_1960_sharedsecret[] = { 0x00, 0x80, 0xe5, 0xb9, 0x98, 0x5a, 0x96, 0x0a, 0x83, 0x21, 0x33, 0x81, 0x2a, 0x7a, 0xb9, 0x95, 0x1c, 0x6b, 0x2c, 0x75, 0x89, 0x4d, 0xeb, 0x3e, 0x35, 0x50, 0x91, 0x90, 0xa6, 0xbd, 0xf4, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_1960 = { .name = "xdh_wei25519_1960", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1960_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1960_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1960_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 396 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1961 for XDH, tcId is 397 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1961_peerpubkey[] = { 0x7c, 0x5f, 0x01, 0x43, 0xa6, 0x68, 0x2f, 0x60, 0xcc, 0xad, 0x16, 0xf2, 0x11, 0x50, 0xc7, 0xbb, 0x5b, 0xc6, 0xf8, 0x07, 0x25, 0x4d, 0x08, 0xb3, 0x53, 0xfc, 0x96, 0xce, 0x07, 0xbc, 0xeb, 0x6f, }; static const unsigned char xdh_wei25519_1961_privkey[] = { 0x78, 0xcc, 0x3e, 0xc0, 0x68, 0x7e, 0x3e, 0x53, 0xd9, 0xce, 0xc5, 0x6b, 0x79, 0xd1, 0x1b, 0xf0, 0x49, 0xd1, 0x73, 0xf1, 0x27, 0xf5, 0xb4, 0x0f, 0xae, 0x12, 0x2a, 0x6d, 0x00, 0x16, 0xcd, 0x76, }; static const unsigned char xdh_wei25519_1961_sharedsecret[] = { 0x52, 0x41, 0x22, 0x22, 0x26, 0x63, 0x8c, 0x4b, 0xbb, 0xc9, 0x87, 0x92, 0xcd, 0xbd, 0x74, 0x88, 0x2c, 0xa2, 0xe0, 0x8a, 0xa2, 0xed, 0xf3, 0x13, 0x07, 0x04, 0x25, 0x03, 0x10, 0x09, 0xe9, 0x25, }; static const wycheproof_xdh_test xdh_wei25519_1961 = { .name = "xdh_wei25519_1961", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1961_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1961_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1961_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 397 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1962 for XDH, tcId is 398 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1962_peerpubkey[] = { 0x01, 0x08, 0x50, 0xa0, 0x97, 0x4d, 0x3e, 0x89, 0xc0, 0x29, 0xd2, 0x52, 0xb4, 0x6f, 0x73, 0x95, 0x48, 0x29, 0x4c, 0x0f, 0x9a, 0x23, 0x18, 0x38, 0x63, 0xf9, 0x45, 0x5b, 0x95, 0x59, 0xc2, 0x11, }; static const unsigned char xdh_wei25519_1962_privkey[] = { 0xc8, 0x6f, 0xc7, 0x66, 0x50, 0xcf, 0x3b, 0x58, 0x83, 0x7a, 0xa0, 0xf0, 0x63, 0x35, 0x60, 0x41, 0x52, 0x41, 0xc6, 0xc4, 0xf8, 0xf2, 0x93, 0xba, 0x02, 0x22, 0xb7, 0xd6, 0xa3, 0x87, 0x57, 0x73, }; static const unsigned char xdh_wei25519_1962_sharedsecret[] = { 0x63, 0x78, 0x81, 0x90, 0xb1, 0x0d, 0x74, 0x51, 0xf5, 0xfc, 0x2b, 0x82, 0xc4, 0x21, 0x15, 0x1d, 0xb4, 0xf3, 0xe2, 0x27, 0x82, 0xe3, 0x92, 0xda, 0x6d, 0x8d, 0x3a, 0xba, 0x2c, 0x34, 0x43, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1962 = { .name = "xdh_wei25519_1962", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1962_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1962_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1962_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 398 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1963 for XDH, tcId is 399 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1963_peerpubkey[] = { 0xad, 0x1d, 0xd8, 0x2c, 0x23, 0xd6, 0xa0, 0xd5, 0xfe, 0x0f, 0x2a, 0x45, 0x61, 0xd1, 0xc1, 0x67, 0x33, 0xa3, 0xe1, 0xe6, 0xaf, 0xa6, 0xd9, 0x02, 0xdd, 0x07, 0x7d, 0xc4, 0x3a, 0x96, 0x16, 0x28, }; static const unsigned char xdh_wei25519_1963_privkey[] = { 0x88, 0x8d, 0x51, 0xc0, 0xa2, 0x23, 0x03, 0x69, 0xe5, 0xb6, 0x5a, 0x81, 0x4b, 0x32, 0x13, 0xdd, 0xe2, 0xe6, 0x2f, 0x2e, 0xb9, 0x5d, 0x09, 0x71, 0x48, 0x6b, 0x73, 0x3e, 0x4f, 0x90, 0xc1, 0x74, }; static const unsigned char xdh_wei25519_1963_sharedsecret[] = { 0xe4, 0xb4, 0x09, 0x74, 0xa1, 0x66, 0xac, 0x49, 0xed, 0x83, 0x17, 0x15, 0xc0, 0x71, 0xc7, 0x51, 0x75, 0x27, 0x44, 0xb8, 0x91, 0x46, 0x5e, 0x6c, 0x45, 0x00, 0x18, 0x55, 0xaa, 0xcd, 0xc3, 0x62, }; static const wycheproof_xdh_test xdh_wei25519_1963 = { .name = "xdh_wei25519_1963", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1963_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1963_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1963_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 399 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1964 for XDH, tcId is 400 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1964_peerpubkey[] = { 0xd0, 0xc0, 0xd6, 0x39, 0x3c, 0x41, 0xf4, 0xd7, 0xe0, 0xd5, 0xe8, 0x50, 0xb7, 0x71, 0x6f, 0x40, 0x1e, 0xda, 0x1e, 0x02, 0x8a, 0x4e, 0xd4, 0xa0, 0x5b, 0xea, 0x8b, 0xf8, 0x1a, 0xcf, 0xd9, 0x30, }; static const unsigned char xdh_wei25519_1964_privkey[] = { 0x68, 0xbe, 0xd4, 0x25, 0xd5, 0x34, 0x31, 0x55, 0x84, 0xd8, 0x0f, 0x79, 0xda, 0x6e, 0xab, 0x9b, 0x7e, 0x60, 0x36, 0xb5, 0x1f, 0xe6, 0x2e, 0x1a, 0xd9, 0x33, 0xe2, 0x66, 0x64, 0x0b, 0x46, 0x73, }; static const unsigned char xdh_wei25519_1964_sharedsecret[] = { 0x51, 0x4a, 0x4c, 0xd0, 0x67, 0x6f, 0x1c, 0x31, 0x01, 0xc8, 0xc4, 0x5c, 0x17, 0xad, 0x41, 0x6b, 0xd3, 0x3e, 0x20, 0xa4, 0x05, 0x54, 0x4f, 0xc1, 0xa6, 0x04, 0x49, 0xab, 0xb2, 0x2f, 0xa1, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1964 = { .name = "xdh_wei25519_1964", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1964_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1964_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1964_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 400 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1965 for XDH, tcId is 401 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1965_peerpubkey[] = { 0x0f, 0x46, 0x01, 0x00, 0xd8, 0x8a, 0x1d, 0x31, 0x6d, 0xff, 0x02, 0xd1, 0xb2, 0x2f, 0xfb, 0x2e, 0x42, 0xd9, 0x9d, 0x0b, 0x92, 0x47, 0x4f, 0xc3, 0xec, 0x7d, 0x62, 0x56, 0x7d, 0x0c, 0xf1, 0x12, }; static const unsigned char xdh_wei25519_1965_privkey[] = { 0x98, 0xff, 0x28, 0x56, 0xef, 0x44, 0xb4, 0xfa, 0x14, 0xd8, 0x67, 0x82, 0xea, 0x79, 0x38, 0x28, 0xbd, 0xf6, 0xf1, 0xef, 0x9b, 0x66, 0x9c, 0xac, 0x1a, 0xae, 0x33, 0x8a, 0x7b, 0xb6, 0x93, 0x76, }; static const unsigned char xdh_wei25519_1965_sharedsecret[] = { 0xed, 0x83, 0xe8, 0x10, 0xce, 0x5f, 0xf0, 0x86, 0x8f, 0x85, 0x89, 0x62, 0x3b, 0xb1, 0x34, 0x78, 0xde, 0xc1, 0xc2, 0x23, 0x26, 0xc9, 0x27, 0x65, 0xae, 0x5e, 0x48, 0xc8, 0x4b, 0xba, 0xbb, 0x24, }; static const wycheproof_xdh_test xdh_wei25519_1965 = { .name = "xdh_wei25519_1965", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1965_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1965_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1965_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 401 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1966 for XDH, tcId is 402 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1966_peerpubkey[] = { 0x13, 0x75, 0x6a, 0x41, 0x1f, 0xf3, 0xae, 0x0c, 0x39, 0x22, 0x2d, 0xde, 0x08, 0x10, 0xf0, 0x8c, 0x43, 0x24, 0x63, 0x16, 0x2d, 0x81, 0xef, 0x06, 0x10, 0x71, 0x24, 0x9a, 0x48, 0x43, 0x9e, 0x15, }; static const unsigned char xdh_wei25519_1966_privkey[] = { 0xb0, 0xcd, 0xbf, 0xdd, 0x98, 0xbd, 0x98, 0x8d, 0x7c, 0x6a, 0x53, 0x04, 0x55, 0xc5, 0x1c, 0x57, 0xdd, 0x33, 0xfd, 0x2c, 0x7a, 0xee, 0x39, 0x61, 0x97, 0x1b, 0xd3, 0xa3, 0x13, 0x88, 0xfc, 0x71, }; static const unsigned char xdh_wei25519_1966_sharedsecret[] = { 0xff, 0x94, 0x86, 0x21, 0x17, 0xd3, 0xc6, 0xed, 0xc9, 0xdd, 0x5f, 0x48, 0x52, 0xfa, 0x8a, 0x58, 0x94, 0x52, 0xb9, 0x24, 0xca, 0x8a, 0x75, 0xcb, 0x23, 0xb3, 0xd6, 0x8d, 0xfe, 0xd8, 0x8c, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_1966 = { .name = "xdh_wei25519_1966", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1966_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1966_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1966_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 402 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1967 for XDH, tcId is 403 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1967_peerpubkey[] = { 0x8f, 0xc1, 0xfa, 0xe9, 0x69, 0xa6, 0x18, 0x54, 0x04, 0xdb, 0x22, 0x74, 0x9e, 0xf6, 0xd2, 0x25, 0xde, 0x86, 0x77, 0x3a, 0x4d, 0x1b, 0xf3, 0x85, 0x7e, 0xb8, 0xfb, 0xbd, 0x82, 0x9a, 0x1b, 0x47, }; static const unsigned char xdh_wei25519_1967_privkey[] = { 0xe0, 0x67, 0x76, 0x44, 0xed, 0x49, 0x35, 0xf0, 0x1e, 0x05, 0x2e, 0x99, 0x67, 0x30, 0x2d, 0x0f, 0xb7, 0x8f, 0xf2, 0x2b, 0xb9, 0x2f, 0xba, 0xe0, 0x60, 0x5f, 0x3e, 0xe5, 0x4e, 0x2f, 0x68, 0x78, }; static const unsigned char xdh_wei25519_1967_sharedsecret[] = { 0x1c, 0x94, 0x86, 0x8b, 0xc8, 0xac, 0xb3, 0x13, 0x74, 0x98, 0x20, 0x9b, 0x28, 0x12, 0xfe, 0xb5, 0x35, 0x01, 0x38, 0x9f, 0x5a, 0xa3, 0x7f, 0xec, 0xbf, 0xd5, 0xcb, 0x54, 0xe1, 0x35, 0x8e, 0x0e, }; static const wycheproof_xdh_test xdh_wei25519_1967 = { .name = "xdh_wei25519_1967", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1967_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1967_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1967_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 403 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1968 for XDH, tcId is 404 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1968_peerpubkey[] = { 0x7b, 0xab, 0x08, 0x91, 0xec, 0xb9, 0xe7, 0x2a, 0x15, 0x77, 0x1f, 0x0a, 0x4f, 0xff, 0x90, 0x54, 0x70, 0x24, 0x20, 0x63, 0x39, 0xc3, 0x40, 0xb1, 0xa2, 0xfd, 0xb5, 0x3b, 0xcf, 0xb8, 0x6b, 0x59, }; static const unsigned char xdh_wei25519_1968_privkey[] = { 0x88, 0x7b, 0x61, 0x55, 0x38, 0x43, 0xca, 0x99, 0xad, 0x1c, 0xa9, 0x22, 0x53, 0xa6, 0xfe, 0x08, 0x2b, 0x82, 0x49, 0x47, 0x52, 0x51, 0x3f, 0xd5, 0x3f, 0xf6, 0x53, 0x0f, 0x54, 0xc4, 0x05, 0x72, }; static const unsigned char xdh_wei25519_1968_sharedsecret[] = { 0xad, 0xbf, 0x3b, 0x43, 0x9b, 0x16, 0xdb, 0xc6, 0x53, 0x57, 0x8f, 0x53, 0x37, 0x4e, 0xd3, 0xa8, 0x6f, 0x9c, 0x0b, 0xf1, 0xf7, 0x36, 0x57, 0x33, 0x49, 0x77, 0x3b, 0xc3, 0xb8, 0xd6, 0x07, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1968 = { .name = "xdh_wei25519_1968", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1968_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1968_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1968_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 404 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1969 for XDH, tcId is 405 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1969_peerpubkey[] = { 0x10, 0x2e, 0x95, 0xea, 0xdc, 0xa7, 0xc3, 0xc2, 0x8e, 0x5d, 0x52, 0x33, 0x6c, 0x85, 0x7b, 0xad, 0x99, 0xea, 0x24, 0x6f, 0x29, 0x9b, 0x06, 0x33, 0x4f, 0x40, 0x12, 0x76, 0xf4, 0x9c, 0xa8, 0x14, }; static const unsigned char xdh_wei25519_1969_privkey[] = { 0x00, 0x61, 0x5e, 0x46, 0x97, 0x01, 0x4f, 0xc1, 0x24, 0x84, 0xef, 0x53, 0xa1, 0x44, 0x02, 0x06, 0x41, 0x0a, 0x8d, 0xf7, 0x8c, 0xaa, 0x0b, 0xff, 0xf8, 0x21, 0x61, 0xdb, 0x83, 0xfe, 0xa5, 0x74, }; static const unsigned char xdh_wei25519_1969_sharedsecret[] = { 0x39, 0x52, 0xef, 0xb9, 0x35, 0x73, 0xae, 0x9c, 0xe2, 0x16, 0x2d, 0x10, 0xe4, 0xb8, 0xc4, 0x64, 0x35, 0x85, 0x9f, 0x3f, 0x27, 0x78, 0xdb, 0x89, 0xf7, 0x2b, 0xc5, 0x79, 0xe6, 0x95, 0xcb, 0x51, }; static const wycheproof_xdh_test xdh_wei25519_1969 = { .name = "xdh_wei25519_1969", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1969_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1969_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1969_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 405 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1970 for XDH, tcId is 406 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1970_peerpubkey[] = { 0x35, 0x48, 0xc1, 0x6b, 0xf3, 0x1a, 0xfd, 0xcd, 0x44, 0x5a, 0xd9, 0xbe, 0xf0, 0xe6, 0x0d, 0x7b, 0xd6, 0x19, 0x5a, 0xa5, 0x91, 0xca, 0x8c, 0x82, 0x81, 0x3c, 0xd7, 0xd4, 0x46, 0x22, 0x67, 0x20, }; static const unsigned char xdh_wei25519_1970_privkey[] = { 0x58, 0x17, 0x51, 0x13, 0x55, 0x0f, 0xaa, 0xd5, 0x64, 0x58, 0xfb, 0x37, 0x5a, 0x6c, 0xb3, 0xf0, 0x5d, 0xf2, 0xf6, 0xff, 0x3c, 0x4e, 0xe0, 0x9d, 0x4a, 0x6b, 0xa6, 0x43, 0xe0, 0x22, 0xd1, 0x7a, }; static const unsigned char xdh_wei25519_1970_sharedsecret[] = { 0x96, 0x12, 0x8f, 0x92, 0x9f, 0xc0, 0x3c, 0x12, 0x69, 0xd4, 0x29, 0xf6, 0x09, 0xa1, 0xa8, 0xac, 0xac, 0x7a, 0x75, 0x8e, 0x34, 0x46, 0xa1, 0x25, 0xec, 0xf4, 0xa3, 0x59, 0xa0, 0xe3, 0x7b, 0x73, }; static const wycheproof_xdh_test xdh_wei25519_1970 = { .name = "xdh_wei25519_1970", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1970_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1970_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1970_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 406 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1971 for XDH, tcId is 407 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1971_peerpubkey[] = { 0xba, 0x74, 0xe7, 0x66, 0xd4, 0x48, 0x55, 0xec, 0x93, 0xbd, 0x44, 0x1a, 0xa4, 0x10, 0x58, 0xa4, 0xc4, 0xad, 0x2b, 0xe6, 0x3c, 0x63, 0x9a, 0x3f, 0x9a, 0x87, 0xbd, 0xe5, 0x1e, 0xea, 0xba, 0x20, }; static const unsigned char xdh_wei25519_1971_privkey[] = { 0x00, 0x97, 0x38, 0xe1, 0xe6, 0xef, 0xef, 0x9e, 0x2c, 0xad, 0x8b, 0x41, 0x6f, 0xe9, 0x0a, 0x09, 0x8e, 0xb5, 0xcb, 0x01, 0x99, 0xf2, 0xdf, 0x52, 0x18, 0x16, 0x6c, 0x7b, 0x18, 0x1e, 0xa0, 0x79, }; static const unsigned char xdh_wei25519_1971_sharedsecret[] = { 0xfe, 0xc3, 0xe9, 0x4c, 0xb5, 0xf3, 0x16, 0x62, 0x5b, 0x09, 0x0c, 0x2c, 0x82, 0x08, 0x28, 0xce, 0x0f, 0x3e, 0xe4, 0x31, 0xe8, 0xd6, 0xe1, 0x2a, 0xbc, 0xcc, 0x7e, 0xf2, 0xbd, 0x0b, 0xe8, 0x1a, }; static const wycheproof_xdh_test xdh_wei25519_1971 = { .name = "xdh_wei25519_1971", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1971_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1971_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1971_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 407 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1972 for XDH, tcId is 408 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1972_peerpubkey[] = { 0x9a, 0x5a, 0x1d, 0x37, 0xe5, 0x01, 0x0c, 0x35, 0x6a, 0xa8, 0x0a, 0xfb, 0x34, 0x7c, 0x3d, 0x61, 0x35, 0x42, 0xdd, 0xfa, 0x0b, 0xe7, 0xab, 0xb8, 0xe8, 0xcd, 0xcd, 0x66, 0x74, 0x41, 0x14, 0x49, }; static const unsigned char xdh_wei25519_1972_privkey[] = { 0xc8, 0x20, 0x19, 0x15, 0x9b, 0xe7, 0x92, 0x74, 0x7a, 0x39, 0xf3, 0x88, 0xea, 0x48, 0xa8, 0xc5, 0x68, 0x59, 0x4e, 0x33, 0x83, 0x27, 0x3e, 0x51, 0x10, 0x07, 0x21, 0xb3, 0x76, 0xe8, 0xba, 0x73, }; static const unsigned char xdh_wei25519_1972_sharedsecret[] = { 0x96, 0x90, 0x3b, 0xac, 0x9d, 0xc6, 0x0b, 0x61, 0x78, 0xd7, 0x34, 0x89, 0x0c, 0x25, 0xdb, 0x4b, 0xed, 0x9e, 0xa4, 0xdb, 0xcf, 0x6f, 0xcb, 0xcd, 0xc9, 0x0e, 0x6f, 0x56, 0x94, 0xc8, 0xb2, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_1972 = { .name = "xdh_wei25519_1972", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1972_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1972_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1972_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 408 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1973 for XDH, tcId is 409 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1973_peerpubkey[] = { 0x63, 0x08, 0x47, 0xe2, 0x82, 0x74, 0xdb, 0xae, 0x54, 0x91, 0x21, 0x03, 0x03, 0xc8, 0x5a, 0x35, 0x90, 0x74, 0xee, 0x74, 0x29, 0x57, 0xb0, 0xfc, 0x3c, 0x9f, 0xf5, 0x5d, 0x9e, 0x01, 0x9a, 0x50, }; static const unsigned char xdh_wei25519_1973_privkey[] = { 0x10, 0xac, 0x9f, 0x83, 0x83, 0x26, 0x2e, 0xf2, 0x80, 0xfa, 0xac, 0x1e, 0x4d, 0xa1, 0x5a, 0x7d, 0xe4, 0xf2, 0xcb, 0x74, 0xaf, 0x33, 0xb5, 0x0e, 0x0d, 0x82, 0xdc, 0xb8, 0x5d, 0x8b, 0xcb, 0x70, }; static const unsigned char xdh_wei25519_1973_sharedsecret[] = { 0x50, 0x05, 0x0d, 0x0a, 0xb1, 0xdd, 0xd2, 0xdd, 0x90, 0xc4, 0x60, 0xab, 0x8f, 0x09, 0xe1, 0xf8, 0x0e, 0x37, 0xca, 0xe5, 0x7d, 0x42, 0x31, 0xad, 0xae, 0x10, 0xc1, 0x0a, 0x4a, 0x2b, 0x00, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_1973 = { .name = "xdh_wei25519_1973", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1973_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1973_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1973_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 409 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1974 for XDH, tcId is 410 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1974_peerpubkey[] = { 0x11, 0x74, 0x9b, 0x00, 0xa4, 0x50, 0x67, 0xaf, 0x2c, 0x7e, 0x7d, 0x50, 0xf8, 0xd1, 0x78, 0xd5, 0xa9, 0xfe, 0xdb, 0x8f, 0x1b, 0x69, 0xb2, 0x39, 0x76, 0x38, 0x85, 0xbc, 0x61, 0x1b, 0x13, 0x6c, }; static const unsigned char xdh_wei25519_1974_privkey[] = { 0xb8, 0x4c, 0x09, 0x83, 0x82, 0xf6, 0xe3, 0x7d, 0x51, 0x0c, 0xc3, 0x3e, 0x62, 0xdd, 0xc6, 0x64, 0xe0, 0x2c, 0x8b, 0xb6, 0xed, 0x9e, 0xd0, 0xe5, 0xfa, 0x78, 0xcc, 0x09, 0x9a, 0x26, 0xfe, 0x73, }; static const unsigned char xdh_wei25519_1974_sharedsecret[] = { 0x91, 0x70, 0xc4, 0xc6, 0x28, 0xd5, 0xfc, 0xfd, 0x0e, 0xc7, 0x19, 0xcf, 0x6e, 0x17, 0x96, 0xda, 0xb0, 0xa6, 0x9e, 0x46, 0xd6, 0x37, 0x9f, 0xff, 0xa2, 0x47, 0xd4, 0x44, 0xa0, 0x05, 0x60, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_1974 = { .name = "xdh_wei25519_1974", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1974_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1974_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1974_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 410 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1975 for XDH, tcId is 411 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1975_peerpubkey[] = { 0xdf, 0x10, 0x21, 0xd8, 0xf9, 0x59, 0x50, 0xaf, 0xde, 0x77, 0xc8, 0x6b, 0xa5, 0xee, 0x2f, 0x58, 0x76, 0xef, 0x77, 0x83, 0x76, 0xa7, 0xfd, 0xc7, 0xef, 0xb8, 0xdf, 0xf0, 0xe4, 0x83, 0x6e, 0x7b, }; static const unsigned char xdh_wei25519_1975_privkey[] = { 0x78, 0xcd, 0xe8, 0x93, 0x0a, 0x1d, 0x81, 0xae, 0xf6, 0x60, 0x1f, 0x71, 0x40, 0x97, 0x28, 0x85, 0x49, 0x87, 0x57, 0x8b, 0x0f, 0x83, 0x49, 0x58, 0x8c, 0x04, 0xad, 0xbe, 0x2c, 0x1f, 0x6e, 0x74, }; static const unsigned char xdh_wei25519_1975_sharedsecret[] = { 0xd7, 0xd2, 0xa8, 0x29, 0x53, 0xf6, 0x80, 0xce, 0xe0, 0xc8, 0x1c, 0x4d, 0x00, 0xfe, 0x62, 0x8a, 0xc5, 0x30, 0xce, 0x68, 0x2e, 0xb7, 0xfb, 0x3b, 0x0a, 0xf2, 0x4f, 0x80, 0x4a, 0x58, 0xef, 0x5c, }; static const wycheproof_xdh_test xdh_wei25519_1975 = { .name = "xdh_wei25519_1975", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1975_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1975_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1975_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 411 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1976 for XDH, tcId is 412 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1976_peerpubkey[] = { 0x27, 0x43, 0xba, 0x40, 0x8d, 0x5f, 0x68, 0xc6, 0x53, 0x24, 0xa4, 0x85, 0x08, 0x6a, 0x00, 0x4b, 0x6b, 0xbf, 0x78, 0x4c, 0xc9, 0xe8, 0xb1, 0xa7, 0xdb, 0xeb, 0x8c, 0x4b, 0x94, 0x14, 0xb0, 0x18, }; static const unsigned char xdh_wei25519_1976_privkey[] = { 0xb0, 0xfe, 0x7b, 0x06, 0xb9, 0x95, 0x06, 0x00, 0xb3, 0xa7, 0xce, 0x1d, 0x7b, 0xb2, 0xa1, 0xd9, 0x84, 0x19, 0x4c, 0xc9, 0xd6, 0xc8, 0x96, 0x45, 0x04, 0xc3, 0x64, 0xdd, 0x5c, 0x87, 0x5b, 0x74, }; static const unsigned char xdh_wei25519_1976_sharedsecret[] = { 0xa6, 0xb9, 0x7d, 0xa9, 0x89, 0xdc, 0xcf, 0x73, 0x0f, 0x12, 0x2d, 0x45, 0x51, 0x52, 0x32, 0x80, 0x51, 0xc8, 0xed, 0x9a, 0xbc, 0x18, 0x15, 0xc1, 0x9e, 0xec, 0x65, 0x01, 0xd6, 0xcf, 0xc7, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_1976 = { .name = "xdh_wei25519_1976", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1976_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1976_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1976_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 412 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1977 for XDH, tcId is 413 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1977_peerpubkey[] = { 0xcc, 0x27, 0x5a, 0x2c, 0xdd, 0x91, 0x25, 0xe5, 0x2f, 0x20, 0xce, 0x2a, 0xba, 0xd4, 0x1f, 0x92, 0x0a, 0xfa, 0x5a, 0x64, 0x3f, 0xb7, 0xf2, 0x76, 0xef, 0x41, 0x6f, 0x76, 0x1d, 0x68, 0x9f, 0x1e, }; static const unsigned char xdh_wei25519_1977_privkey[] = { 0xf0, 0xc9, 0xc3, 0x98, 0x48, 0x54, 0xd5, 0xbd, 0x59, 0x9d, 0x38, 0x19, 0x73, 0x8a, 0x02, 0x3e, 0xb7, 0x95, 0xe9, 0x35, 0x86, 0xdc, 0x0e, 0x5e, 0x29, 0xb1, 0xc8, 0x70, 0xc6, 0x12, 0xd1, 0x78, }; static const unsigned char xdh_wei25519_1977_sharedsecret[] = { 0xb2, 0x10, 0xe3, 0x68, 0x72, 0x95, 0x01, 0xd9, 0xf9, 0xb6, 0xeb, 0xef, 0xbe, 0xba, 0xe3, 0x8f, 0x19, 0x5f, 0x91, 0xea, 0xf2, 0xa5, 0xa3, 0xa4, 0x92, 0x88, 0xbb, 0x61, 0x5f, 0xf2, 0x21, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1977 = { .name = "xdh_wei25519_1977", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1977_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1977_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1977_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 413 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1978 for XDH, tcId is 414 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1978_peerpubkey[] = { 0x49, 0x29, 0x54, 0x31, 0x01, 0xee, 0x7a, 0xe2, 0x39, 0x05, 0x9c, 0xd1, 0x34, 0xc3, 0x5d, 0x40, 0x0e, 0x50, 0xd0, 0x82, 0x14, 0x41, 0x35, 0x1d, 0x0f, 0xa6, 0xc3, 0xd5, 0x4e, 0xfb, 0x34, 0x2e, }; static const unsigned char xdh_wei25519_1978_privkey[] = { 0x90, 0x6c, 0x2f, 0x12, 0xbe, 0x89, 0x70, 0x2d, 0xb2, 0x6f, 0xa7, 0xee, 0x90, 0x5c, 0xe3, 0x65, 0x25, 0xd2, 0xde, 0xe4, 0xe9, 0x6a, 0x87, 0x9c, 0xa0, 0x7d, 0xa0, 0x97, 0xa6, 0xaa, 0x50, 0x75, }; static const unsigned char xdh_wei25519_1978_sharedsecret[] = { 0xb9, 0xe3, 0x79, 0x6c, 0x58, 0x70, 0x1d, 0xed, 0x42, 0x37, 0xc5, 0x29, 0x94, 0x50, 0x1c, 0xee, 0x14, 0xe1, 0x8f, 0x2f, 0xb0, 0x2b, 0x78, 0x1a, 0x84, 0x00, 0x92, 0x34, 0x84, 0xbd, 0x4a, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_1978 = { .name = "xdh_wei25519_1978", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1978_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1978_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1978_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 414 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1979 for XDH, tcId is 415 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1979_peerpubkey[] = { 0x13, 0x24, 0xe0, 0x36, 0x85, 0x97, 0xb3, 0x18, 0x15, 0x55, 0xbb, 0x5b, 0x2c, 0xc7, 0xb7, 0xeb, 0xba, 0x46, 0x93, 0x1a, 0xea, 0xbb, 0x6f, 0x05, 0xab, 0xab, 0xd4, 0x24, 0x0f, 0x0f, 0xb9, 0x33, }; static const unsigned char xdh_wei25519_1979_privkey[] = { 0xf0, 0x26, 0x03, 0x1e, 0xa3, 0x73, 0xe1, 0xd1, 0x6e, 0x6e, 0x7e, 0x03, 0x57, 0xbc, 0x96, 0xbc, 0x09, 0x3f, 0x4b, 0x6b, 0xb7, 0x6a, 0x73, 0x8c, 0xbb, 0x54, 0xfe, 0x6c, 0xfd, 0x2e, 0xa2, 0x71, }; static const unsigned char xdh_wei25519_1979_sharedsecret[] = { 0x6d, 0xcd, 0xf8, 0xe8, 0x69, 0x03, 0xb0, 0xca, 0xde, 0xd1, 0x24, 0xd8, 0xa7, 0xda, 0x18, 0xe6, 0x23, 0x43, 0x0c, 0xa8, 0x69, 0xaa, 0xf2, 0x67, 0xd3, 0x10, 0x29, 0xd9, 0x3d, 0xe9, 0x9e, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_1979 = { .name = "xdh_wei25519_1979", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1979_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1979_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1979_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 415 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1980 for XDH, tcId is 416 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1980_peerpubkey[] = { 0xc7, 0xf3, 0x84, 0x22, 0x97, 0xd6, 0x94, 0x1c, 0xac, 0x63, 0xd6, 0xf1, 0xbd, 0xae, 0xa0, 0x70, 0x94, 0x37, 0xc8, 0x2d, 0xbc, 0x91, 0x61, 0xfc, 0x1b, 0xae, 0x6c, 0x79, 0xd6, 0x68, 0xeb, 0x44, }; static const unsigned char xdh_wei25519_1980_privkey[] = { 0x70, 0x3f, 0x4a, 0xc8, 0x66, 0x7d, 0x77, 0xf9, 0x53, 0x60, 0x45, 0xcf, 0x74, 0x8f, 0x18, 0xd4, 0x23, 0x45, 0xe3, 0x9c, 0xca, 0xb1, 0x0c, 0x18, 0xdd, 0xe0, 0xf5, 0x17, 0x0d, 0x30, 0x7f, 0x73, }; static const unsigned char xdh_wei25519_1980_sharedsecret[] = { 0x38, 0x5d, 0xdb, 0xf2, 0x50, 0x5e, 0xbf, 0x53, 0x7b, 0xf5, 0xe9, 0x76, 0xb6, 0x1a, 0x4b, 0x69, 0xd1, 0x90, 0xae, 0x96, 0x5b, 0x7e, 0x4a, 0x81, 0xae, 0x4e, 0x1c, 0x16, 0xb7, 0x14, 0x87, 0x48, }; static const wycheproof_xdh_test xdh_wei25519_1980 = { .name = "xdh_wei25519_1980", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1980_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1980_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1980_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 416 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1981 for XDH, tcId is 417 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1981_peerpubkey[] = { 0x1e, 0x46, 0x60, 0xba, 0x86, 0x5f, 0xb8, 0x08, 0x5a, 0xfd, 0x46, 0x92, 0x88, 0x5d, 0x74, 0x23, 0x7f, 0xa3, 0xbc, 0xa5, 0xaf, 0x4b, 0x84, 0xba, 0x3d, 0xe4, 0x00, 0xf1, 0x6a, 0x5a, 0xc4, 0x5c, }; static const unsigned char xdh_wei25519_1981_privkey[] = { 0xc8, 0xa9, 0x6a, 0xe4, 0xe7, 0x72, 0x71, 0xa0, 0x68, 0x0d, 0xd2, 0x4f, 0xcb, 0x09, 0xf9, 0xc5, 0xd3, 0xee, 0x83, 0x16, 0x53, 0x6e, 0xec, 0x7c, 0xc2, 0x27, 0x65, 0x97, 0xe5, 0x0f, 0xe3, 0x7f, }; static const unsigned char xdh_wei25519_1981_sharedsecret[] = { 0x0f, 0xba, 0xea, 0x73, 0xf9, 0x51, 0x87, 0x95, 0xe0, 0x26, 0xc1, 0xfc, 0x10, 0x79, 0xc3, 0x73, 0x8a, 0xeb, 0x9e, 0xe9, 0xc8, 0xdc, 0x97, 0x61, 0xd6, 0x5b, 0xbf, 0x8f, 0x94, 0xe3, 0x01, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_1981 = { .name = "xdh_wei25519_1981", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1981_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1981_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1981_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 417 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1982 for XDH, tcId is 418 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1982_peerpubkey[] = { 0x24, 0x88, 0xbb, 0x6f, 0xad, 0xb7, 0x9d, 0x46, 0x58, 0x5f, 0xf0, 0x1c, 0x16, 0x0c, 0x5b, 0x41, 0x72, 0x79, 0x9d, 0x92, 0xbd, 0x16, 0x8e, 0xdc, 0xeb, 0x65, 0xce, 0xde, 0xdc, 0x49, 0x27, 0x62, }; static const unsigned char xdh_wei25519_1982_privkey[] = { 0xd0, 0xdd, 0xe8, 0xed, 0xa3, 0x8c, 0x37, 0x83, 0x44, 0x28, 0x64, 0xc0, 0xcb, 0x46, 0xa0, 0xe9, 0x83, 0x2d, 0xcf, 0x78, 0x4c, 0x21, 0x26, 0x8a, 0x21, 0xbe, 0xd2, 0xca, 0xce, 0x87, 0xcd, 0x70, }; static const unsigned char xdh_wei25519_1982_sharedsecret[] = { 0x51, 0x0c, 0x64, 0x15, 0x1e, 0x5d, 0x07, 0x37, 0xfc, 0x32, 0x4b, 0xd1, 0x5f, 0xb5, 0xd3, 0x96, 0x69, 0x08, 0x75, 0x1c, 0xd1, 0xa0, 0x69, 0x54, 0xb5, 0x56, 0x19, 0x66, 0x55, 0xee, 0x55, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_1982 = { .name = "xdh_wei25519_1982", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1982_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1982_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1982_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 418 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1983 for XDH, tcId is 419 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1983_peerpubkey[] = { 0xa0, 0xc1, 0x08, 0x78, 0x11, 0xaf, 0x14, 0x91, 0x17, 0x1b, 0xc5, 0x16, 0x91, 0xb8, 0xca, 0x84, 0x71, 0x6a, 0xf3, 0x6c, 0x4b, 0xaa, 0x76, 0x4e, 0xc5, 0x36, 0x28, 0x0c, 0xc1, 0x98, 0x3d, 0x6d, }; static const unsigned char xdh_wei25519_1983_privkey[] = { 0xc0, 0x9c, 0xd4, 0x7e, 0x1c, 0xe5, 0x36, 0x04, 0xf1, 0x4e, 0x4e, 0x13, 0x42, 0x6c, 0x8f, 0x08, 0x96, 0x2f, 0x55, 0x6b, 0xcd, 0x81, 0xf8, 0xd7, 0x53, 0x75, 0xb1, 0x50, 0x7c, 0x6f, 0xda, 0x78, }; static const unsigned char xdh_wei25519_1983_sharedsecret[] = { 0x23, 0xef, 0x82, 0x5e, 0x1c, 0x8e, 0x6e, 0x64, 0x42, 0x80, 0x01, 0xa7, 0x46, 0x3e, 0x32, 0xa9, 0x70, 0x1c, 0x81, 0xcf, 0x78, 0x20, 0x3e, 0x6a, 0xe7, 0x53, 0x74, 0x0c, 0x91, 0x57, 0x0e, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_1983 = { .name = "xdh_wei25519_1983", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1983_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1983_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1983_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 419 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1984 for XDH, tcId is 420 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1984_peerpubkey[] = { 0xcc, 0x5c, 0x97, 0x93, 0x46, 0x07, 0xd8, 0xb9, 0x81, 0xbc, 0xe1, 0xd6, 0xa2, 0x32, 0xbb, 0x3a, 0xec, 0xc3, 0x00, 0x1f, 0x69, 0x8a, 0xe1, 0xae, 0x84, 0x93, 0x8f, 0xbf, 0x28, 0x61, 0x07, 0x7b, }; static const unsigned char xdh_wei25519_1984_privkey[] = { 0xe0, 0x9a, 0x5f, 0x74, 0xf3, 0x18, 0xf0, 0x23, 0x03, 0x85, 0x7a, 0xa0, 0x20, 0x8d, 0x76, 0x91, 0x3d, 0x9e, 0x24, 0x0a, 0x80, 0x54, 0x9d, 0x12, 0x01, 0x31, 0x18, 0xba, 0xd6, 0x20, 0x59, 0x7f, }; static const unsigned char xdh_wei25519_1984_sharedsecret[] = { 0x0e, 0x55, 0xa7, 0xec, 0x1a, 0x2d, 0xdb, 0xea, 0x1a, 0xc5, 0x98, 0x12, 0x00, 0x81, 0x22, 0x32, 0xf7, 0xf4, 0xc3, 0xa6, 0x0e, 0xe3, 0xc9, 0xab, 0x09, 0xf2, 0x16, 0x3b, 0xd1, 0x3d, 0xa3, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1984 = { .name = "xdh_wei25519_1984", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1984_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1984_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1984_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 420 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1985 for XDH, tcId is 421 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1985_peerpubkey[] = { 0x23, 0x8d, 0xe7, 0xfc, 0xc8, 0xa3, 0xf1, 0x94, 0xc3, 0x55, 0x4c, 0x32, 0x8e, 0xfb, 0x12, 0x15, 0xd0, 0x64, 0x0a, 0xc6, 0x74, 0xb6, 0x1a, 0x98, 0xef, 0x93, 0x4e, 0xc0, 0x04, 0xcf, 0xd7, 0x3b, }; static const unsigned char xdh_wei25519_1985_privkey[] = { 0x70, 0x6c, 0xee, 0x5f, 0x9b, 0x35, 0x7c, 0x03, 0xb2, 0xf1, 0x91, 0x32, 0x94, 0xf6, 0xe4, 0xf0, 0xca, 0x5a, 0x19, 0x0a, 0x87, 0xd3, 0x02, 0x68, 0x32, 0x7d, 0x0c, 0xb6, 0xbd, 0xd5, 0xbc, 0x79, }; static const unsigned char xdh_wei25519_1985_sharedsecret[] = { 0x06, 0x81, 0x03, 0x6a, 0x0d, 0x27, 0x58, 0x3b, 0xa6, 0xf2, 0xbe, 0x76, 0x30, 0x61, 0x31, 0x71, 0xa3, 0x3f, 0xb8, 0xa6, 0xc8, 0x99, 0x1c, 0x53, 0xb3, 0x79, 0x99, 0x9f, 0x0f, 0x15, 0x92, 0x3b, }; static const wycheproof_xdh_test xdh_wei25519_1985 = { .name = "xdh_wei25519_1985", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1985_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1985_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1985_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 421 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1986 for XDH, tcId is 422 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1986_peerpubkey[] = { 0xac, 0x9f, 0xd8, 0x0a, 0x45, 0xda, 0x10, 0x9f, 0xa2, 0x32, 0x93, 0x90, 0xe5, 0xa9, 0x51, 0xcf, 0xc0, 0x30, 0x65, 0xd7, 0xbb, 0x4a, 0x78, 0x55, 0x82, 0x6c, 0xcb, 0x22, 0xc3, 0xbf, 0xeb, 0x3d, }; static const unsigned char xdh_wei25519_1986_privkey[] = { 0x40, 0xe3, 0x00, 0xcb, 0x1f, 0xf2, 0x60, 0x57, 0x4f, 0x85, 0xb3, 0xf0, 0x4a, 0xac, 0x47, 0x84, 0x64, 0xa8, 0x6e, 0x62, 0x03, 0xb3, 0xd4, 0x65, 0x64, 0x18, 0xf4, 0x30, 0x51, 0x57, 0x87, 0x7b, }; static const unsigned char xdh_wei25519_1986_sharedsecret[] = { 0x67, 0xb8, 0x87, 0x74, 0xf1, 0x9b, 0xd1, 0x08, 0x1d, 0x6f, 0x23, 0x65, 0x6a, 0x13, 0x58, 0x03, 0xe3, 0x4a, 0xe1, 0xcd, 0xca, 0xe1, 0x08, 0x18, 0x12, 0x4a, 0x78, 0x56, 0x9c, 0x29, 0x9f, 0x42, }; static const wycheproof_xdh_test xdh_wei25519_1986 = { .name = "xdh_wei25519_1986", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1986_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1986_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1986_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 422 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1987 for XDH, tcId is 423 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1987_peerpubkey[] = { 0xa4, 0x5a, 0xb1, 0xdc, 0x2f, 0xa2, 0xc5, 0x07, 0x18, 0xfb, 0x49, 0x85, 0xd9, 0x79, 0x14, 0x01, 0xe8, 0xd2, 0xd3, 0x4f, 0xfe, 0x3c, 0xd9, 0x3c, 0xff, 0xb4, 0xe8, 0x70, 0xcc, 0xe5, 0xe8, 0x55, }; static const unsigned char xdh_wei25519_1987_privkey[] = { 0x88, 0x2f, 0x78, 0xb4, 0x55, 0x8b, 0x7f, 0xaa, 0x83, 0x59, 0x04, 0xc9, 0x23, 0x5e, 0x32, 0xf3, 0x00, 0xfc, 0x8b, 0x5e, 0xf0, 0xa7, 0x18, 0x40, 0x6a, 0x5c, 0x85, 0x20, 0xca, 0x54, 0xd0, 0x71, }; static const unsigned char xdh_wei25519_1987_sharedsecret[] = { 0xa5, 0x12, 0xe8, 0x64, 0xbd, 0x89, 0x8a, 0x5b, 0xa6, 0x55, 0x1a, 0xdc, 0xeb, 0xd8, 0x36, 0xc6, 0xa7, 0x8e, 0x78, 0x71, 0x72, 0x8e, 0x1b, 0x8e, 0xe5, 0x28, 0xd4, 0x83, 0xaf, 0x27, 0x61, 0x04, }; static const wycheproof_xdh_test xdh_wei25519_1987 = { .name = "xdh_wei25519_1987", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1987_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1987_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1987_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 423 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1988 for XDH, tcId is 424 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1988_peerpubkey[] = { 0x17, 0x61, 0xd3, 0xd5, 0x0b, 0xa4, 0x6b, 0x44, 0x66, 0x55, 0xaa, 0x6a, 0x8d, 0x9b, 0x8b, 0x75, 0xaa, 0x5b, 0xb2, 0x4a, 0x79, 0x53, 0x20, 0x8d, 0x5b, 0x69, 0xfc, 0xc3, 0x8f, 0x18, 0xec, 0x7a, }; static const unsigned char xdh_wei25519_1988_privkey[] = { 0xd8, 0x64, 0x9b, 0x73, 0x55, 0x90, 0xa1, 0x7d, 0x0f, 0xc4, 0xc3, 0x78, 0xfb, 0xf4, 0xc2, 0xf7, 0xd6, 0x60, 0x05, 0x69, 0xb2, 0xe8, 0x4c, 0xbe, 0x0f, 0xf7, 0xbc, 0xdb, 0xac, 0x0b, 0x5f, 0x71, }; static const unsigned char xdh_wei25519_1988_sharedsecret[] = { 0x51, 0x8b, 0x77, 0x8c, 0xf5, 0xe9, 0x76, 0xc6, 0x02, 0x35, 0xab, 0xcf, 0x62, 0x11, 0xa1, 0x8b, 0xad, 0x2a, 0x8e, 0x69, 0x3a, 0xb2, 0x61, 0x07, 0x4c, 0x7f, 0xab, 0x43, 0xdb, 0xb5, 0xda, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_1988 = { .name = "xdh_wei25519_1988", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1988_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1988_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1988_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 424 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1989 for XDH, tcId is 425 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1989_peerpubkey[] = { 0xdc, 0x99, 0xad, 0x00, 0x31, 0x46, 0x3e, 0x45, 0x37, 0xc0, 0x1e, 0x16, 0x62, 0x99, 0x66, 0xd1, 0xb9, 0x62, 0xc0, 0xb4, 0xe4, 0x87, 0x2f, 0x06, 0x7c, 0xa3, 0xc2, 0x6c, 0xcc, 0x95, 0x70, 0x01, }; static const unsigned char xdh_wei25519_1989_privkey[] = { 0xa8, 0xed, 0xec, 0x59, 0xae, 0x6b, 0xa2, 0x38, 0x13, 0xec, 0x54, 0xd6, 0x6d, 0xf1, 0x52, 0xe0, 0x62, 0x67, 0x62, 0xb9, 0x7d, 0x4b, 0x0c, 0x20, 0xe0, 0xdd, 0x8a, 0x56, 0x95, 0xd8, 0x6e, 0x47, }; static const unsigned char xdh_wei25519_1989_sharedsecret[] = { 0x6c, 0xfa, 0x93, 0x5f, 0x24, 0xb0, 0x31, 0xff, 0x26, 0x1a, 0x7c, 0xd3, 0x52, 0x66, 0x60, 0xfd, 0x6b, 0x39, 0x6c, 0x5c, 0x30, 0xe2, 0x99, 0x57, 0x5f, 0x6a, 0x32, 0x22, 0x81, 0x19, 0x1e, 0x03, }; static const wycheproof_xdh_test xdh_wei25519_1989 = { .name = "xdh_wei25519_1989", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1989_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1989_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1989_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 425 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1990 for XDH, tcId is 426 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1990_peerpubkey[] = { 0xb3, 0x27, 0x50, 0xfd, 0x80, 0xd2, 0xd7, 0xc6, 0x2c, 0x6b, 0x8e, 0x39, 0x67, 0x06, 0x54, 0xba, 0xea, 0x57, 0x19, 0xa3, 0xe0, 0x72, 0xe9, 0x95, 0x07, 0xfd, 0x5b, 0xcb, 0x23, 0x89, 0x82, 0x64, }; static const unsigned char xdh_wei25519_1990_privkey[] = { 0x10, 0x98, 0x72, 0x3f, 0xfe, 0x56, 0x7e, 0xa6, 0xdc, 0xc8, 0xd0, 0x4e, 0xcc, 0x01, 0xef, 0xaf, 0xee, 0xa0, 0xae, 0xe4, 0x4e, 0x1c, 0x73, 0x3b, 0xe8, 0xb1, 0xe5, 0xd9, 0x7c, 0x8b, 0x80, 0x41, }; static const unsigned char xdh_wei25519_1990_sharedsecret[] = { 0xc6, 0x23, 0xe2, 0xd2, 0x08, 0x3f, 0x18, 0x11, 0x0a, 0x52, 0x5f, 0x2b, 0x66, 0xd8, 0x9e, 0xd8, 0x2d, 0x31, 0x3b, 0x6a, 0x2d, 0xd0, 0x82, 0xf6, 0xb7, 0xa6, 0xe7, 0x33, 0x13, 0x4f, 0x5a, 0x06, }; static const wycheproof_xdh_test xdh_wei25519_1990 = { .name = "xdh_wei25519_1990", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1990_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1990_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1990_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 426 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1991 for XDH, tcId is 427 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1991_peerpubkey[] = { 0xe7, 0xb3, 0x20, 0x57, 0x77, 0xb3, 0x75, 0xf1, 0xb1, 0x51, 0x5a, 0x50, 0xa1, 0x6a, 0x60, 0x67, 0x95, 0x3f, 0xf2, 0x21, 0xe1, 0x2b, 0x4f, 0x41, 0x6d, 0x74, 0xfb, 0x28, 0xc1, 0xc8, 0x58, 0x65, }; static const unsigned char xdh_wei25519_1991_privkey[] = { 0xa0, 0xf2, 0x0d, 0xf9, 0x8b, 0x49, 0x21, 0x8a, 0xc8, 0x32, 0xf2, 0x6f, 0xa8, 0xc2, 0x18, 0xa0, 0xd6, 0x87, 0x2e, 0xb7, 0xae, 0xa0, 0x7c, 0x1d, 0x43, 0xc9, 0xff, 0x69, 0x9b, 0x46, 0x5b, 0x47, }; static const unsigned char xdh_wei25519_1991_sharedsecret[] = { 0x38, 0x8e, 0xa4, 0x21, 0x65, 0x0a, 0x8d, 0x83, 0x7b, 0xad, 0x89, 0x04, 0x01, 0x81, 0x95, 0xe9, 0x9e, 0xf4, 0x94, 0xc2, 0xd1, 0x70, 0xb9, 0x3e, 0xe7, 0x21, 0xa6, 0x7d, 0x2c, 0x10, 0x87, 0x29, }; static const wycheproof_xdh_test xdh_wei25519_1991 = { .name = "xdh_wei25519_1991", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1991_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1991_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1991_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 427 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1992 for XDH, tcId is 428 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1992_peerpubkey[] = { 0x21, 0xcc, 0x33, 0x8d, 0x78, 0x69, 0xe5, 0x86, 0x33, 0x49, 0xcc, 0x73, 0x9c, 0x8a, 0x69, 0x46, 0xcf, 0xc7, 0x97, 0xcb, 0x82, 0xfb, 0xf6, 0x2d, 0xcd, 0x21, 0x54, 0x84, 0x4b, 0x10, 0x60, 0x03, }; static const unsigned char xdh_wei25519_1992_privkey[] = { 0x30, 0x47, 0x3a, 0x77, 0xa9, 0x83, 0x74, 0xf6, 0x7d, 0x5b, 0xd4, 0x3d, 0xf2, 0x31, 0xce, 0x14, 0x29, 0x16, 0xae, 0xa0, 0xd2, 0x71, 0xe7, 0x23, 0x33, 0xfa, 0x47, 0xdc, 0x44, 0x1a, 0x02, 0x47, }; static const unsigned char xdh_wei25519_1992_sharedsecret[] = { 0xb9, 0xe5, 0x72, 0x8b, 0x37, 0x43, 0x5b, 0x1d, 0x33, 0x99, 0x88, 0xf9, 0x32, 0x67, 0xd5, 0x9f, 0x3b, 0xd1, 0xc5, 0x17, 0x85, 0x1c, 0x5a, 0x25, 0x8e, 0x74, 0xcb, 0x64, 0xae, 0xa7, 0x3d, 0x2d, }; static const wycheproof_xdh_test xdh_wei25519_1992 = { .name = "xdh_wei25519_1992", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1992_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1992_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1992_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 428 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1993 for XDH, tcId is 429 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1993_peerpubkey[] = { 0xc3, 0x42, 0x17, 0xc0, 0x20, 0x72, 0xd7, 0xe2, 0xbc, 0xa0, 0x45, 0x45, 0x25, 0x03, 0x07, 0x80, 0xcf, 0xb6, 0x02, 0x15, 0xd7, 0xca, 0x82, 0xdb, 0xec, 0x8f, 0x4a, 0x59, 0x03, 0x4c, 0x5f, 0x43, }; static const unsigned char xdh_wei25519_1993_privkey[] = { 0xd8, 0x65, 0x7b, 0xe3, 0xa3, 0x0f, 0xc8, 0x5f, 0xb2, 0xf3, 0xa6, 0x8e, 0x92, 0xac, 0xe1, 0xb3, 0x1b, 0x26, 0xe7, 0x6e, 0x6b, 0xdb, 0x67, 0x27, 0xae, 0xa5, 0x07, 0xcb, 0x7c, 0x10, 0xdc, 0x45, }; static const unsigned char xdh_wei25519_1993_sharedsecret[] = { 0x20, 0xb6, 0x7b, 0x20, 0x5e, 0x22, 0xce, 0x87, 0xfd, 0x44, 0xa8, 0xe8, 0xfd, 0x10, 0xa6, 0xd8, 0x89, 0x0b, 0x92, 0x70, 0xb6, 0x0e, 0x1c, 0x6a, 0x68, 0xb4, 0xaa, 0x78, 0xe6, 0xe3, 0x79, 0x61, }; static const wycheproof_xdh_test xdh_wei25519_1993 = { .name = "xdh_wei25519_1993", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1993_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1993_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1993_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 429 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1994 for XDH, tcId is 430 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1994_peerpubkey[] = { 0x8a, 0xbb, 0x8c, 0xfd, 0x60, 0xc6, 0xf8, 0xa4, 0xd8, 0x4d, 0x07, 0x50, 0xd3, 0xb4, 0x0a, 0x4f, 0x84, 0x6b, 0x30, 0xed, 0xf2, 0x05, 0x2f, 0xef, 0x7d, 0xf8, 0x41, 0x42, 0xcd, 0x0d, 0x9e, 0x47, }; static const unsigned char xdh_wei25519_1994_privkey[] = { 0x88, 0x2f, 0x55, 0x78, 0xae, 0x4a, 0x13, 0xd8, 0xf5, 0xaf, 0x47, 0x3b, 0xdd, 0xe1, 0x70, 0x9b, 0xf2, 0xe0, 0x59, 0xdf, 0x80, 0x9e, 0xe0, 0x5b, 0x50, 0x5f, 0x34, 0xde, 0x85, 0x7c, 0x34, 0x47, }; static const unsigned char xdh_wei25519_1994_sharedsecret[] = { 0x5f, 0xab, 0xa6, 0x45, 0xfc, 0x21, 0xf9, 0x42, 0x1e, 0xbd, 0x35, 0xc6, 0x9b, 0xdb, 0x1d, 0x85, 0xb4, 0x6f, 0x95, 0xe3, 0x74, 0x6f, 0xf7, 0xf4, 0x88, 0x6b, 0xc2, 0x80, 0xa9, 0xab, 0x25, 0x22, }; static const wycheproof_xdh_test xdh_wei25519_1994 = { .name = "xdh_wei25519_1994", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1994_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1994_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1994_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 430 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1995 for XDH, tcId is 431 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1995_peerpubkey[] = { 0x9f, 0xd7, 0xb4, 0x9a, 0x08, 0xf2, 0x06, 0x68, 0x8d, 0x72, 0xdb, 0x73, 0x7d, 0xf8, 0xe5, 0x17, 0xaa, 0x7b, 0x76, 0x4f, 0x5d, 0xe7, 0xc9, 0xa2, 0xb1, 0xc3, 0xfc, 0xba, 0xa9, 0x85, 0xf6, 0x4c, }; static const unsigned char xdh_wei25519_1995_privkey[] = { 0x98, 0x29, 0x4d, 0xb7, 0xcb, 0xf4, 0x95, 0x8b, 0xfb, 0x3e, 0xd2, 0x1d, 0x5d, 0x5c, 0x91, 0xe1, 0x3c, 0xc8, 0xdc, 0x27, 0xb3, 0xc7, 0x16, 0xc8, 0x6f, 0x71, 0x67, 0xa4, 0x81, 0x9f, 0x87, 0x41, }; static const unsigned char xdh_wei25519_1995_sharedsecret[] = { 0x9c, 0xb8, 0xa0, 0xf4, 0xad, 0x86, 0xa2, 0x7b, 0x96, 0xca, 0x61, 0x24, 0x2e, 0xab, 0x19, 0x8d, 0xb2, 0x76, 0x7d, 0x38, 0x62, 0xdd, 0x32, 0x3e, 0x41, 0x36, 0x8f, 0xcd, 0xcc, 0x5f, 0xab, 0x68, }; static const wycheproof_xdh_test xdh_wei25519_1995 = { .name = "xdh_wei25519_1995", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1995_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1995_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1995_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 431 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1996 for XDH, tcId is 432 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1996_peerpubkey[] = { 0xc4, 0xfe, 0xfa, 0xc7, 0xac, 0xd4, 0x48, 0xe8, 0xfd, 0x4d, 0x6a, 0xc4, 0xf5, 0xdd, 0x1b, 0xc2, 0x1f, 0x2c, 0x67, 0xd6, 0x38, 0x44, 0x40, 0x60, 0x91, 0x8f, 0xb3, 0x44, 0xaa, 0x77, 0xe7, 0x57, }; static const unsigned char xdh_wei25519_1996_privkey[] = { 0x78, 0x9b, 0xc4, 0x04, 0x7a, 0xd8, 0x1b, 0x9b, 0x66, 0x56, 0xee, 0xf2, 0x98, 0xb7, 0x66, 0xe8, 0x76, 0x3a, 0x2f, 0x8e, 0xa6, 0x4e, 0x37, 0x4a, 0x60, 0x3d, 0xc1, 0xfd, 0xf2, 0xee, 0xe1, 0x46, }; static const unsigned char xdh_wei25519_1996_sharedsecret[] = { 0x4b, 0x42, 0xfc, 0xf8, 0x4b, 0x51, 0xb2, 0xb8, 0x2f, 0x1f, 0x70, 0xb3, 0xcf, 0x49, 0xbd, 0x9d, 0xc6, 0xab, 0x26, 0x72, 0x92, 0x0a, 0x8d, 0xe3, 0x7e, 0x81, 0xba, 0x7e, 0x99, 0xac, 0xf7, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_1996 = { .name = "xdh_wei25519_1996", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1996_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1996_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1996_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 432 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1997 for XDH, tcId is 433 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1997_peerpubkey[] = { 0xa8, 0x34, 0x1d, 0xee, 0xcc, 0x0b, 0xe6, 0xdb, 0x11, 0x40, 0x1e, 0xf7, 0xf8, 0x84, 0xac, 0x3a, 0xde, 0x35, 0x65, 0x0c, 0xc2, 0x1f, 0x14, 0xb5, 0xcd, 0xb0, 0xa5, 0xcf, 0x0e, 0xe6, 0xb1, 0x5a, }; static const unsigned char xdh_wei25519_1997_privkey[] = { 0x80, 0x1f, 0xfe, 0x4e, 0x0f, 0x6e, 0xeb, 0x8a, 0x50, 0xc8, 0xfe, 0x79, 0x66, 0x3f, 0xf5, 0x85, 0xf9, 0xd6, 0xae, 0xbc, 0xfb, 0xf4, 0xb7, 0xed, 0xc6, 0x76, 0xc6, 0x93, 0x90, 0x0c, 0xb1, 0x41, }; static const unsigned char xdh_wei25519_1997_sharedsecret[] = { 0xe5, 0x5f, 0xc9, 0x31, 0x66, 0x9b, 0xd0, 0x2d, 0x1c, 0x64, 0x68, 0x9e, 0xda, 0x62, 0x64, 0x82, 0x12, 0xb1, 0x07, 0x8c, 0x43, 0xb5, 0xca, 0xf9, 0x7c, 0xf9, 0x76, 0x3f, 0xf8, 0x7a, 0x34, 0x55, }; static const wycheproof_xdh_test xdh_wei25519_1997 = { .name = "xdh_wei25519_1997", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1997_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1997_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1997_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 433 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1998 for XDH, tcId is 434 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1998_peerpubkey[] = { 0x55, 0xa0, 0xe6, 0x63, 0x1a, 0x52, 0xf2, 0x9f, 0xb9, 0x0a, 0x17, 0x77, 0xcc, 0xbc, 0x69, 0xff, 0x94, 0x54, 0x74, 0x59, 0xd5, 0x41, 0xf7, 0x2e, 0x83, 0x16, 0xe4, 0xd6, 0x16, 0x53, 0x5a, 0x67, }; static const unsigned char xdh_wei25519_1998_privkey[] = { 0xe0, 0x4e, 0x41, 0x23, 0x83, 0xa6, 0x3b, 0x33, 0x8b, 0x70, 0xe1, 0xbe, 0x5f, 0xd7, 0x59, 0x95, 0x35, 0x03, 0x21, 0xde, 0xe4, 0x28, 0xaa, 0x4f, 0x3b, 0xa6, 0x2a, 0x50, 0xa3, 0xb0, 0xde, 0x44, }; static const unsigned char xdh_wei25519_1998_sharedsecret[] = { 0x87, 0xf7, 0x97, 0x6a, 0x17, 0xf3, 0xe0, 0x3a, 0x7f, 0x1e, 0xb7, 0x4e, 0x6d, 0xb9, 0x50, 0xb8, 0xc0, 0x99, 0x4f, 0x40, 0xb7, 0x90, 0x34, 0x95, 0x59, 0x9d, 0x22, 0x77, 0x25, 0x80, 0x9e, 0x01, }; static const wycheproof_xdh_test xdh_wei25519_1998 = { .name = "xdh_wei25519_1998", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1998_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1998_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1998_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 434 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 1999 for XDH, tcId is 435 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_1999_peerpubkey[] = { 0x79, 0x76, 0xd5, 0x20, 0xf1, 0xa2, 0x51, 0x2d, 0x56, 0x4a, 0xf4, 0x1c, 0x68, 0x31, 0x3f, 0x53, 0x51, 0xb0, 0x15, 0x6d, 0x51, 0x18, 0xbe, 0x48, 0x17, 0xf1, 0x92, 0x79, 0x8a, 0xe9, 0x77, 0x7d, }; static const unsigned char xdh_wei25519_1999_privkey[] = { 0x38, 0x2d, 0xbe, 0x9f, 0x10, 0x15, 0x8b, 0xfb, 0xb7, 0xd1, 0xd7, 0x9a, 0x35, 0xa7, 0x80, 0x92, 0x14, 0x89, 0x9a, 0x6b, 0x85, 0x72, 0xb3, 0x5b, 0x55, 0x87, 0x5d, 0x79, 0xbd, 0x2f, 0x16, 0x40, }; static const unsigned char xdh_wei25519_1999_sharedsecret[] = { 0x3b, 0xb3, 0xe3, 0x01, 0x05, 0xa7, 0x19, 0x01, 0xb1, 0x15, 0x06, 0x5e, 0x39, 0xbd, 0xb3, 0xe0, 0x53, 0xd3, 0x87, 0xb3, 0x90, 0x27, 0xb1, 0x2c, 0x92, 0xcd, 0xf4, 0xc6, 0x38, 0xad, 0xf0, 0x0d, }; static const wycheproof_xdh_test xdh_wei25519_1999 = { .name = "xdh_wei25519_1999", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_1999_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_1999_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_1999_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 435 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2000 for XDH, tcId is 436 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2000_peerpubkey[] = { 0xa2, 0x6a, 0x72, 0x2f, 0x7b, 0xa7, 0x1c, 0xcf, 0xc9, 0x6e, 0xd8, 0xe1, 0x08, 0xd7, 0xc9, 0xf8, 0x42, 0xd1, 0x7f, 0x92, 0x05, 0x1e, 0xe7, 0xd4, 0x29, 0xea, 0x7f, 0xa7, 0x90, 0x8a, 0xb9, 0x07, }; static const unsigned char xdh_wei25519_2000_privkey[] = { 0x60, 0xc9, 0xaf, 0x7f, 0x4d, 0x03, 0x13, 0x6a, 0x60, 0x34, 0xae, 0x52, 0xde, 0xad, 0xfd, 0x9d, 0x4f, 0x27, 0x4a, 0xd8, 0x12, 0x28, 0x12, 0xeb, 0x92, 0xa5, 0x31, 0x69, 0xc8, 0x35, 0x41, 0x41, }; static const unsigned char xdh_wei25519_2000_sharedsecret[] = { 0xf5, 0xcb, 0x3a, 0x1b, 0x76, 0x18, 0x5a, 0x29, 0xa6, 0x36, 0x0b, 0x21, 0x42, 0xfe, 0xeb, 0xb1, 0x1f, 0x3d, 0x08, 0xf4, 0xfd, 0x8d, 0x73, 0xdf, 0x3a, 0x52, 0x28, 0x62, 0x4a, 0x52, 0x1c, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_2000 = { .name = "xdh_wei25519_2000", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2000_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2000_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2000_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 436 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2001 for XDH, tcId is 437 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2001_peerpubkey[] = { 0xca, 0x3a, 0x2d, 0x96, 0xf5, 0xdd, 0xa4, 0x82, 0xb0, 0x02, 0x32, 0x4c, 0xbb, 0xdc, 0xf1, 0xda, 0xcc, 0x98, 0x15, 0xea, 0xb7, 0x97, 0xc7, 0x15, 0x1c, 0x3a, 0x88, 0xc7, 0x5c, 0xde, 0xd6, 0x21, }; static const unsigned char xdh_wei25519_2001_privkey[] = { 0x28, 0x3f, 0xae, 0x8b, 0xd8, 0xb2, 0x94, 0xde, 0x28, 0x48, 0x05, 0x64, 0x49, 0x75, 0x19, 0x65, 0xab, 0xb5, 0xc7, 0xfa, 0x86, 0xba, 0x4c, 0x2c, 0x5c, 0xdc, 0x3b, 0xb5, 0x24, 0xda, 0xd1, 0x40, }; static const unsigned char xdh_wei25519_2001_sharedsecret[] = { 0xb0, 0xb4, 0x78, 0x68, 0xe7, 0x04, 0x65, 0xee, 0x2d, 0xd7, 0x37, 0xf1, 0xba, 0x5a, 0x63, 0x99, 0xe0, 0x9c, 0xd8, 0x13, 0xd7, 0x2d, 0xa7, 0x58, 0x5a, 0xb4, 0x5c, 0x94, 0x6c, 0xc2, 0x8d, 0x4d, }; static const wycheproof_xdh_test xdh_wei25519_2001 = { .name = "xdh_wei25519_2001", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2001_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2001_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2001_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 437 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2002 for XDH, tcId is 438 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2002_peerpubkey[] = { 0xee, 0xbd, 0x85, 0x88, 0x50, 0xb5, 0x6f, 0xeb, 0xb7, 0x07, 0xf2, 0x7a, 0x7a, 0xad, 0x5f, 0xf5, 0xab, 0x4b, 0x0e, 0x0c, 0x73, 0xb9, 0xc8, 0x6e, 0xc4, 0xca, 0x0f, 0x42, 0xe7, 0xf3, 0x8e, 0x75, }; static const unsigned char xdh_wei25519_2002_privkey[] = { 0x40, 0x15, 0x39, 0x70, 0x3c, 0xa4, 0x98, 0x0d, 0xb4, 0xba, 0x42, 0xc5, 0x9f, 0xc2, 0x9e, 0x83, 0xb4, 0x18, 0x9f, 0x2d, 0xde, 0xa5, 0x3b, 0xa5, 0x4c, 0xa9, 0x66, 0xc0, 0x68, 0x98, 0xa6, 0x40, }; static const unsigned char xdh_wei25519_2002_sharedsecret[] = { 0x58, 0x1e, 0x4b, 0x12, 0xb0, 0xf3, 0x9a, 0x7c, 0xc4, 0x2d, 0xee, 0x45, 0x13, 0xec, 0xfd, 0xd2, 0x0b, 0x59, 0x5f, 0x90, 0x5f, 0x17, 0xad, 0x8c, 0x1f, 0xbf, 0x1b, 0x5c, 0xb2, 0x06, 0x8b, 0x31, }; static const wycheproof_xdh_test xdh_wei25519_2002 = { .name = "xdh_wei25519_2002", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2002_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2002_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2002_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 438 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2003 for XDH, tcId is 439 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2003_peerpubkey[] = { 0xc8, 0x00, 0xbf, 0x79, 0x97, 0x83, 0x27, 0x5e, 0xb9, 0x33, 0x12, 0xb4, 0x3d, 0xc0, 0x32, 0xcc, 0xdf, 0xb0, 0x0a, 0x4b, 0x77, 0xc8, 0xb3, 0x77, 0x2c, 0xd2, 0xfe, 0xc8, 0xdb, 0x7e, 0x4a, 0x09, }; static const unsigned char xdh_wei25519_2003_privkey[] = { 0xc8, 0xeb, 0x05, 0x62, 0x86, 0xe0, 0x98, 0xe6, 0xb2, 0xc7, 0x9e, 0x42, 0xf0, 0x07, 0xeb, 0xc6, 0xab, 0x37, 0x05, 0x34, 0x6c, 0xdb, 0xda, 0xce, 0x94, 0x9b, 0x5d, 0xe1, 0xe8, 0xc3, 0x67, 0x43, }; static const unsigned char xdh_wei25519_2003_sharedsecret[] = { 0x6b, 0xf2, 0x64, 0x53, 0x2f, 0xc7, 0x0a, 0x6a, 0x7e, 0x45, 0x9f, 0x45, 0x79, 0xec, 0xa6, 0xb8, 0x4f, 0x8f, 0x76, 0xab, 0x85, 0xc3, 0x26, 0x4b, 0x20, 0xbc, 0xa7, 0x25, 0xa6, 0xeb, 0x6c, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_2003 = { .name = "xdh_wei25519_2003", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2003_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2003_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2003_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 439 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2004 for XDH, tcId is 440 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2004_peerpubkey[] = { 0x7b, 0xbc, 0x50, 0x4e, 0x04, 0xd1, 0x34, 0xee, 0xdc, 0x13, 0xf0, 0x6d, 0xfd, 0xfc, 0x69, 0xc5, 0x18, 0x25, 0x7a, 0x3f, 0x37, 0x40, 0x40, 0xa4, 0x9a, 0x8d, 0x21, 0xda, 0xc1, 0x09, 0x11, 0x0c, }; static const unsigned char xdh_wei25519_2004_privkey[] = { 0x48, 0x78, 0x82, 0x95, 0x6c, 0x49, 0xc6, 0x9f, 0xd0, 0xe2, 0xd7, 0x27, 0x7a, 0x24, 0xfb, 0x1d, 0xbe, 0x4b, 0x03, 0x65, 0xb3, 0x6a, 0x13, 0xf6, 0x34, 0x40, 0x24, 0x8b, 0xca, 0x2f, 0xbb, 0x42, }; static const unsigned char xdh_wei25519_2004_sharedsecret[] = { 0x69, 0x03, 0x05, 0xc9, 0xe1, 0x92, 0xcd, 0x8a, 0x51, 0x3f, 0x70, 0x5b, 0x3f, 0x10, 0x1e, 0xcd, 0xf3, 0xdb, 0x1e, 0xa1, 0x5a, 0x09, 0xc4, 0xa1, 0xbc, 0xe3, 0xa8, 0xcd, 0xc3, 0xa1, 0xa9, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_2004 = { .name = "xdh_wei25519_2004", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2004_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2004_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2004_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 440 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2005 for XDH, tcId is 441 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2005_peerpubkey[] = { 0x13, 0x25, 0x33, 0xdb, 0x62, 0xaf, 0xf4, 0xfa, 0x06, 0xe9, 0x63, 0x14, 0x38, 0x3b, 0xf5, 0x8e, 0xbd, 0xec, 0x51, 0x83, 0xa1, 0x9f, 0x2e, 0x4c, 0xb1, 0x75, 0x52, 0xae, 0x19, 0xa3, 0x36, 0x6e, }; static const unsigned char xdh_wei25519_2005_privkey[] = { 0x98, 0x76, 0x01, 0x0f, 0x4d, 0x64, 0xc7, 0x7f, 0xfc, 0x4d, 0x7d, 0xcc, 0xd7, 0x2b, 0x9a, 0xc8, 0x20, 0x78, 0xde, 0xb8, 0x83, 0x60, 0x96, 0x50, 0xb8, 0xcf, 0xf8, 0xa6, 0x86, 0x71, 0x9d, 0x46, }; static const unsigned char xdh_wei25519_2005_sharedsecret[] = { 0xc5, 0x85, 0x91, 0xb3, 0x3e, 0x49, 0x0e, 0x47, 0x66, 0xff, 0x7a, 0xdd, 0xff, 0x57, 0x0c, 0xe4, 0xe8, 0x9a, 0x98, 0x33, 0x80, 0x15, 0xa5, 0x5d, 0xf3, 0xd2, 0xf2, 0x32, 0xae, 0xa3, 0xfc, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_2005 = { .name = "xdh_wei25519_2005", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2005_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2005_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2005_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 441 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2006 for XDH, tcId is 442 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2006_peerpubkey[] = { 0xce, 0xb9, 0x0c, 0x56, 0x50, 0x8c, 0xf3, 0x30, 0xc7, 0xf2, 0x5b, 0xab, 0x42, 0xb0, 0x5b, 0x56, 0x12, 0xa8, 0x31, 0x06, 0x90, 0x10, 0x7a, 0xc6, 0x3a, 0x40, 0x4c, 0x0a, 0xde, 0x78, 0x80, 0x09, }; static const unsigned char xdh_wei25519_2006_privkey[] = { 0xa8, 0xa5, 0xd4, 0xf7, 0x89, 0x4a, 0x51, 0x95, 0x37, 0xba, 0xbf, 0xac, 0x73, 0x6d, 0xe3, 0x60, 0x54, 0xf5, 0x08, 0xda, 0xe4, 0x34, 0xb4, 0xfe, 0x63, 0xcd, 0x56, 0x33, 0x84, 0x6a, 0x26, 0x47, }; static const unsigned char xdh_wei25519_2006_sharedsecret[] = { 0x3d, 0x14, 0x58, 0x51, 0xb6, 0xff, 0x2b, 0x92, 0xb5, 0x80, 0x7e, 0xd1, 0xdf, 0x21, 0xeb, 0x50, 0xc9, 0xf2, 0x4c, 0x44, 0x74, 0xd4, 0x72, 0x1d, 0xb3, 0xab, 0xb7, 0x35, 0x6d, 0xf7, 0xb7, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_2006 = { .name = "xdh_wei25519_2006", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2006_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2006_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2006_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 442 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2007 for XDH, tcId is 443 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2007_peerpubkey[] = { 0x66, 0xa0, 0x97, 0x67, 0xa0, 0xd8, 0x3b, 0xb1, 0x8d, 0x40, 0x4e, 0x12, 0x00, 0x37, 0x5a, 0x74, 0x5d, 0x1f, 0x1f, 0x74, 0x9d, 0x5d, 0xc6, 0xf8, 0x4a, 0x20, 0x5e, 0xfa, 0x6a, 0x11, 0xbc, 0x65, }; static const unsigned char xdh_wei25519_2007_privkey[] = { 0xf8, 0x3e, 0x46, 0x47, 0xe8, 0x2c, 0x56, 0x0a, 0xa0, 0x82, 0xc5, 0x96, 0x41, 0xe1, 0x3b, 0xf3, 0x66, 0xbe, 0x8f, 0x24, 0xdc, 0x01, 0xd1, 0x48, 0x01, 0xe6, 0x78, 0x41, 0x16, 0x0b, 0xed, 0x47, }; static const unsigned char xdh_wei25519_2007_sharedsecret[] = { 0x14, 0x01, 0x82, 0x9a, 0xac, 0x4e, 0x64, 0xbc, 0xfa, 0x29, 0x7a, 0x7e, 0xff, 0xc6, 0x04, 0x77, 0x09, 0x0d, 0x36, 0x27, 0xa6, 0x4a, 0x35, 0xb8, 0x72, 0xae, 0x05, 0x5d, 0x20, 0x91, 0x78, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_2007 = { .name = "xdh_wei25519_2007", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2007_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2007_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2007_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 443 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2008 for XDH, tcId is 444 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2008_peerpubkey[] = { 0x39, 0xd4, 0x31, 0x31, 0x63, 0x07, 0xc8, 0x57, 0x47, 0xbd, 0x2b, 0xcf, 0x4f, 0x9e, 0x0f, 0x88, 0x92, 0xee, 0x45, 0xdf, 0x15, 0xf7, 0x80, 0x6c, 0xe6, 0x51, 0x47, 0xd9, 0x7f, 0x50, 0x34, 0x78, }; static const unsigned char xdh_wei25519_2008_privkey[] = { 0x58, 0xc6, 0xb9, 0x4b, 0xce, 0x9b, 0x15, 0xf6, 0x49, 0x46, 0xc2, 0xaa, 0x6a, 0x4e, 0x38, 0x3b, 0x0b, 0x2d, 0x43, 0x65, 0xb7, 0x99, 0x7e, 0xb2, 0x31, 0x0a, 0xc4, 0xee, 0xf1, 0x80, 0x31, 0x45, }; static const unsigned char xdh_wei25519_2008_sharedsecret[] = { 0xa0, 0xeb, 0xe6, 0x90, 0x8c, 0x54, 0x72, 0xf9, 0x37, 0x76, 0x9b, 0x9a, 0xeb, 0x31, 0x32, 0x24, 0x43, 0x7f, 0xc5, 0xd7, 0x3f, 0x4f, 0x86, 0x6f, 0xe7, 0xef, 0x41, 0xf3, 0x0e, 0x35, 0x9e, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_2008 = { .name = "xdh_wei25519_2008", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2008_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2008_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2008_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 444 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2009 for XDH, tcId is 445 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2009_peerpubkey[] = { 0x84, 0xc9, 0x2d, 0x8e, 0xcf, 0x3d, 0x0c, 0xb2, 0x2d, 0xde, 0x7d, 0x72, 0x1f, 0x04, 0x14, 0x0c, 0x2d, 0x9c, 0x17, 0x9c, 0xc8, 0x13, 0xce, 0x6c, 0xf8, 0xdb, 0x2d, 0xce, 0x61, 0x68, 0x88, 0x0d, }; static const unsigned char xdh_wei25519_2009_privkey[] = { 0x78, 0x6a, 0x97, 0x20, 0x7a, 0xdb, 0xd4, 0xb0, 0xd6, 0xbf, 0xc9, 0xf4, 0x9b, 0x18, 0x66, 0x0a, 0xd3, 0x60, 0x6c, 0x12, 0xe3, 0x25, 0x04, 0x4b, 0x86, 0x90, 0xb4, 0xfa, 0x07, 0x87, 0x46, 0x41, }; static const unsigned char xdh_wei25519_2009_sharedsecret[] = { 0x07, 0x53, 0x8f, 0x1b, 0x65, 0x83, 0x04, 0x1c, 0x49, 0x49, 0xfa, 0xfa, 0xe3, 0x34, 0x9d, 0x62, 0xf9, 0xdd, 0x30, 0x2d, 0x3d, 0x86, 0x85, 0x7a, 0xf0, 0xde, 0xdc, 0x0d, 0x5a, 0xd6, 0x74, 0x1f, }; static const wycheproof_xdh_test xdh_wei25519_2009 = { .name = "xdh_wei25519_2009", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2009_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2009_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2009_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 445 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2010 for XDH, tcId is 446 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2010_peerpubkey[] = { 0xa9, 0xce, 0xdb, 0x9e, 0x94, 0x2a, 0x47, 0x22, 0x1e, 0x42, 0x96, 0x95, 0x32, 0x20, 0xd1, 0x00, 0x07, 0xdb, 0x32, 0x7d, 0x2a, 0xcb, 0x68, 0xda, 0x6e, 0xf3, 0xa4, 0xf8, 0x77, 0xb8, 0xef, 0x1e, }; static const unsigned char xdh_wei25519_2010_privkey[] = { 0x28, 0x23, 0x10, 0x21, 0x0e, 0x57, 0x5a, 0x59, 0x39, 0x3c, 0xf1, 0x9b, 0xbe, 0x6e, 0x24, 0x75, 0x2d, 0xc2, 0x47, 0x70, 0x6f, 0x1e, 0x00, 0x31, 0xe5, 0xd3, 0x9b, 0x2d, 0xe4, 0xff, 0xf7, 0x45, }; static const unsigned char xdh_wei25519_2010_sharedsecret[] = { 0x12, 0x23, 0x50, 0x5f, 0xbb, 0x53, 0x4c, 0x1b, 0xc6, 0x10, 0x8e, 0x6b, 0x98, 0xb4, 0xf0, 0xaf, 0x29, 0xe1, 0x11, 0x58, 0xc0, 0x2d, 0x33, 0x3d, 0x65, 0x59, 0xbe, 0xec, 0xd6, 0xd3, 0xe5, 0x58, }; static const wycheproof_xdh_test xdh_wei25519_2010 = { .name = "xdh_wei25519_2010", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2010_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2010_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2010_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 446 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2011 for XDH, tcId is 447 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2011_peerpubkey[] = { 0x64, 0xe1, 0xc0, 0xc5, 0xf5, 0x94, 0x05, 0xbb, 0xc6, 0xc7, 0xdb, 0x41, 0xa3, 0x48, 0x5c, 0xc9, 0xf9, 0x1c, 0x18, 0x3b, 0x0f, 0x2b, 0x7e, 0x18, 0x94, 0xa7, 0xab, 0xd8, 0xfb, 0xbe, 0xeb, 0x23, }; static const unsigned char xdh_wei25519_2011_privkey[] = { 0xc8, 0xbf, 0x2f, 0xd4, 0xc4, 0x0d, 0x00, 0xf1, 0x46, 0x5a, 0xad, 0xa6, 0x82, 0xb1, 0x2f, 0xa9, 0x2d, 0xec, 0x10, 0x34, 0x34, 0x84, 0xab, 0x62, 0xb8, 0x87, 0x13, 0x37, 0xde, 0x1d, 0x33, 0x45, }; static const unsigned char xdh_wei25519_2011_sharedsecret[] = { 0xee, 0x03, 0x18, 0x68, 0x16, 0x5f, 0x45, 0x6f, 0x75, 0x90, 0x7b, 0xf3, 0x97, 0x42, 0xb8, 0x20, 0xe0, 0xf8, 0xe6, 0xdf, 0x9f, 0x97, 0x68, 0xd7, 0x57, 0xd4, 0x08, 0xe1, 0xcc, 0x92, 0xff, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_2011 = { .name = "xdh_wei25519_2011", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2011_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2011_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2011_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 447 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2012 for XDH, tcId is 448 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2012_peerpubkey[] = { 0xa6, 0x8d, 0x2f, 0x55, 0xe6, 0x0e, 0xac, 0x79, 0x83, 0x92, 0x63, 0x10, 0xf4, 0xfa, 0xe1, 0x3f, 0x95, 0xb2, 0xbb, 0xf1, 0x40, 0xbe, 0x5e, 0xa9, 0x17, 0x51, 0x88, 0x4d, 0x90, 0x0a, 0xb4, 0x4d, }; static const unsigned char xdh_wei25519_2012_privkey[] = { 0xc0, 0x6a, 0x4a, 0x4b, 0x70, 0xf6, 0x13, 0x13, 0x6f, 0x18, 0xc0, 0xf8, 0x8e, 0x22, 0x45, 0x08, 0x6c, 0x3d, 0x1a, 0x52, 0x71, 0x72, 0x10, 0xa2, 0x1a, 0xc9, 0xd6, 0x36, 0x82, 0xf2, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_2012_sharedsecret[] = { 0xc9, 0x54, 0xfa, 0x7b, 0x04, 0x2c, 0x32, 0x94, 0x3e, 0x03, 0x19, 0x1e, 0x36, 0x7d, 0x54, 0xbe, 0x00, 0x85, 0xfa, 0x89, 0x50, 0xef, 0x2b, 0xec, 0x99, 0x62, 0x0d, 0xf7, 0x9e, 0xcb, 0xea, 0x4b, }; static const wycheproof_xdh_test xdh_wei25519_2012 = { .name = "xdh_wei25519_2012", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2012_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2012_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2012_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 448 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2013 for XDH, tcId is 449 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2013_peerpubkey[] = { 0x6d, 0x3c, 0xd6, 0x23, 0xf2, 0x6a, 0x74, 0x53, 0xfa, 0x05, 0xa0, 0x1a, 0xe7, 0x58, 0xba, 0x84, 0xd3, 0xc5, 0x8d, 0x93, 0xd6, 0x0c, 0xe3, 0x27, 0x35, 0xa1, 0x5e, 0x0d, 0x05, 0x3d, 0x5b, 0x12, }; static const unsigned char xdh_wei25519_2013_privkey[] = { 0x20, 0x59, 0x6e, 0x1d, 0xc5, 0x65, 0x96, 0x82, 0x3d, 0x37, 0x69, 0x8d, 0xfa, 0x69, 0x9c, 0x79, 0x87, 0x4a, 0xae, 0xfd, 0xe7, 0x97, 0xf8, 0x63, 0xef, 0x92, 0x13, 0x59, 0x80, 0xfb, 0x20, 0x43, }; static const unsigned char xdh_wei25519_2013_sharedsecret[] = { 0x7c, 0x32, 0x19, 0xb3, 0xc1, 0xfa, 0xe1, 0xf9, 0x55, 0x90, 0xac, 0x84, 0x3e, 0xfd, 0x20, 0x84, 0xa1, 0xf4, 0xbd, 0x3e, 0xfa, 0x2f, 0x59, 0x2f, 0x02, 0x20, 0x32, 0xdb, 0x64, 0xeb, 0xcd, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_2013 = { .name = "xdh_wei25519_2013", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2013_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2013_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2013_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 449 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2014 for XDH, tcId is 450 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2014_peerpubkey[] = { 0x8f, 0x19, 0x55, 0x47, 0x34, 0x6b, 0x3d, 0x53, 0xb7, 0xea, 0x4f, 0x74, 0x2b, 0x22, 0xf1, 0xef, 0x7b, 0x3c, 0xc0, 0x1a, 0x7d, 0x3d, 0xcd, 0x19, 0xaa, 0x7c, 0x5b, 0x03, 0xf3, 0x1b, 0xd2, 0x14, }; static const unsigned char xdh_wei25519_2014_privkey[] = { 0x38, 0x14, 0x15, 0x18, 0xe8, 0xe5, 0xef, 0xa1, 0xd0, 0x31, 0xc6, 0xc4, 0xd9, 0x54, 0x80, 0x23, 0x9f, 0x6c, 0x30, 0xb8, 0xcc, 0xd8, 0xc7, 0x51, 0xa9, 0xe0, 0x4b, 0xd3, 0xae, 0xc1, 0x73, 0x42, }; static const unsigned char xdh_wei25519_2014_sharedsecret[] = { 0xa3, 0x1f, 0x6b, 0x24, 0x9d, 0x64, 0xa8, 0x7c, 0x4a, 0xed, 0x32, 0x9c, 0x6c, 0x05, 0xc3, 0xf2, 0x24, 0x0b, 0x3c, 0xa9, 0x38, 0xcc, 0xdc, 0x92, 0x0b, 0xa8, 0x01, 0x6c, 0x1a, 0xea, 0xeb, 0x45, }; static const wycheproof_xdh_test xdh_wei25519_2014 = { .name = "xdh_wei25519_2014", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2014_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2014_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2014_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 450 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2015 for XDH, tcId is 451 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2015_peerpubkey[] = { 0xff, 0xc4, 0xfe, 0x2c, 0x21, 0x27, 0xa3, 0x09, 0xc7, 0x39, 0x56, 0x56, 0x51, 0xe9, 0x81, 0x2f, 0x83, 0x4a, 0x86, 0xdb, 0xad, 0xbb, 0x78, 0x77, 0x69, 0x77, 0xf7, 0x86, 0xec, 0xdb, 0x02, 0x17, }; static const unsigned char xdh_wei25519_2015_privkey[] = { 0x20, 0x71, 0x47, 0xf2, 0xb6, 0x8f, 0xef, 0x1e, 0xfc, 0x10, 0xa0, 0x4f, 0x98, 0x8f, 0x0e, 0xb1, 0x8b, 0x27, 0x3b, 0x0b, 0x5e, 0xd1, 0x7a, 0xa7, 0xaf, 0x32, 0xc9, 0x04, 0x80, 0xe1, 0x9b, 0x43, }; static const unsigned char xdh_wei25519_2015_sharedsecret[] = { 0x4c, 0xff, 0x9f, 0x53, 0xce, 0x82, 0x06, 0x48, 0x82, 0x32, 0x9a, 0x18, 0xea, 0x4e, 0x4d, 0x0b, 0xc6, 0xd8, 0x0a, 0x63, 0x1c, 0x87, 0xc9, 0xe6, 0xfd, 0xc9, 0x18, 0xf9, 0xc1, 0xbd, 0xa3, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_2015 = { .name = "xdh_wei25519_2015", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2015_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2015_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2015_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 451 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2016 for XDH, tcId is 452 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2016_peerpubkey[] = { 0x84, 0x75, 0xba, 0xbe, 0xea, 0xb9, 0x98, 0x0d, 0x42, 0x6a, 0xbd, 0x53, 0x23, 0xdf, 0xb3, 0x35, 0xb2, 0x19, 0xe1, 0x29, 0xbd, 0xda, 0xe4, 0xd6, 0xce, 0xbc, 0xda, 0x50, 0x75, 0x4a, 0x68, 0x25, }; static const unsigned char xdh_wei25519_2016_privkey[] = { 0x48, 0x80, 0x84, 0x53, 0x7b, 0x84, 0x0f, 0x9c, 0x93, 0xca, 0x57, 0xb3, 0xee, 0x80, 0x49, 0x14, 0x18, 0xd4, 0x42, 0x21, 0x11, 0x3e, 0x03, 0xf5, 0x63, 0x55, 0x30, 0x26, 0x04, 0xd0, 0x35, 0x47, }; static const unsigned char xdh_wei25519_2016_sharedsecret[] = { 0x24, 0x8d, 0x3d, 0x1a, 0x49, 0xb7, 0xd1, 0x73, 0xeb, 0x08, 0x0a, 0xb7, 0x16, 0xac, 0x8f, 0xde, 0x6b, 0xd1, 0xc3, 0xed, 0x8e, 0x7f, 0xd5, 0xb4, 0x48, 0xaf, 0x21, 0xbc, 0xdc, 0x2c, 0x16, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_2016 = { .name = "xdh_wei25519_2016", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2016_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2016_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2016_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 452 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2017 for XDH, tcId is 453 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2017_peerpubkey[] = { 0x81, 0xf9, 0x0a, 0x2f, 0x66, 0x33, 0xd3, 0x0c, 0x2b, 0x72, 0xa2, 0x57, 0x95, 0xd2, 0xa4, 0x94, 0x63, 0xa8, 0x0b, 0x6b, 0x0e, 0xdc, 0x5a, 0xa6, 0x8b, 0xae, 0x4b, 0xf7, 0x38, 0x18, 0x55, 0x39, }; static const unsigned char xdh_wei25519_2017_privkey[] = { 0x28, 0xcf, 0xc1, 0xd0, 0x3f, 0x5c, 0x74, 0x28, 0xff, 0x3e, 0x20, 0xb1, 0x37, 0x26, 0x8b, 0x33, 0xcc, 0xc7, 0x4d, 0xb0, 0x35, 0x82, 0xd2, 0x12, 0x7c, 0x56, 0x6d, 0xf4, 0xac, 0x99, 0xf4, 0x41, }; static const unsigned char xdh_wei25519_2017_sharedsecret[] = { 0x66, 0xc6, 0xe7, 0x0c, 0xf6, 0x30, 0xbe, 0x90, 0xa2, 0xc8, 0x8f, 0xcd, 0xe7, 0xf5, 0x8c, 0xff, 0x38, 0x68, 0x66, 0x0f, 0xa9, 0x64, 0x06, 0xe8, 0xdf, 0x4a, 0xc6, 0x77, 0xdb, 0xd8, 0x5f, 0x50, }; static const wycheproof_xdh_test xdh_wei25519_2017 = { .name = "xdh_wei25519_2017", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2017_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2017_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2017_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 453 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2018 for XDH, tcId is 454 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2018_peerpubkey[] = { 0x41, 0x62, 0x6e, 0x33, 0xb3, 0xc8, 0xf4, 0x8b, 0xd1, 0x9e, 0x49, 0xde, 0xd3, 0x07, 0xf2, 0xb6, 0x3b, 0xde, 0x70, 0x5c, 0x4f, 0x3c, 0xdf, 0x9d, 0x4f, 0x92, 0xbf, 0x37, 0xc4, 0x8c, 0xba, 0x42, }; static const unsigned char xdh_wei25519_2018_privkey[] = { 0xc8, 0xe3, 0x7d, 0x10, 0xf3, 0xd0, 0x3d, 0xb3, 0xf4, 0x3e, 0x46, 0x7b, 0xdd, 0xf9, 0x8f, 0x59, 0x5c, 0xb5, 0x29, 0xad, 0x25, 0x3c, 0x20, 0xd4, 0x91, 0x28, 0x2d, 0x14, 0x00, 0xb9, 0xe7, 0x40, }; static const unsigned char xdh_wei25519_2018_sharedsecret[] = { 0x06, 0x28, 0x3f, 0xcf, 0x69, 0xdc, 0x83, 0xe9, 0x9d, 0x92, 0xe5, 0x33, 0x6f, 0x49, 0x9a, 0x1d, 0x8f, 0xa7, 0x5e, 0xd2, 0xc8, 0x19, 0xb5, 0xae, 0x6e, 0xa8, 0x09, 0x44, 0x54, 0x32, 0x4b, 0x27, }; static const wycheproof_xdh_test xdh_wei25519_2018 = { .name = "xdh_wei25519_2018", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2018_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2018_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2018_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 454 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2019 for XDH, tcId is 455 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2019_peerpubkey[] = { 0xeb, 0xb3, 0x2f, 0x78, 0x1c, 0x0e, 0x89, 0xb2, 0x52, 0xe6, 0x11, 0xf9, 0xd8, 0xf7, 0x9f, 0x85, 0x67, 0x87, 0x4c, 0x96, 0x65, 0x98, 0x31, 0x4b, 0x2f, 0x16, 0xaa, 0x44, 0xcf, 0xc0, 0x78, 0x43, }; static const unsigned char xdh_wei25519_2019_privkey[] = { 0x00, 0x23, 0x7e, 0x91, 0x40, 0x6a, 0x7b, 0x4d, 0xb6, 0x1e, 0x78, 0x0c, 0x59, 0x76, 0xfb, 0xb9, 0x26, 0xcd, 0xac, 0xe2, 0xfb, 0xdf, 0xdb, 0xcf, 0xce, 0x65, 0xe6, 0xdb, 0xe7, 0x78, 0x2a, 0x42, }; static const unsigned char xdh_wei25519_2019_sharedsecret[] = { 0x7d, 0x2a, 0xff, 0xb4, 0x33, 0x55, 0xf5, 0xdb, 0x12, 0x94, 0xda, 0xff, 0x55, 0xf5, 0x9b, 0x1f, 0x17, 0xe7, 0xd2, 0x5b, 0xca, 0x20, 0x74, 0x6f, 0x12, 0x48, 0x4d, 0x78, 0xe5, 0x01, 0x55, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_2019 = { .name = "xdh_wei25519_2019", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2019_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2019_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2019_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 455 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2020 for XDH, tcId is 456 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2020_peerpubkey[] = { 0xfa, 0x75, 0xe6, 0xf0, 0x8c, 0xa8, 0x15, 0xb4, 0xe4, 0x2a, 0xf2, 0x4a, 0x8e, 0x05, 0x7c, 0x9e, 0x00, 0xe8, 0x28, 0xe3, 0x3d, 0x12, 0xc0, 0xe9, 0x4d, 0x10, 0x12, 0xa7, 0x58, 0x33, 0x67, 0x44, }; static const unsigned char xdh_wei25519_2020_privkey[] = { 0x48, 0x9c, 0x41, 0x84, 0xa2, 0x3a, 0x8f, 0x5e, 0xec, 0x68, 0xa3, 0x1b, 0x41, 0xaa, 0x2c, 0x03, 0x92, 0xcd, 0x6f, 0xb1, 0x23, 0xf1, 0x0a, 0xcd, 0xb4, 0xde, 0x75, 0x29, 0x2b, 0x4b, 0x9a, 0x43, }; static const unsigned char xdh_wei25519_2020_sharedsecret[] = { 0xef, 0x8e, 0x78, 0xca, 0xb0, 0x91, 0xd6, 0x67, 0x88, 0x84, 0x89, 0xfd, 0x3a, 0x2e, 0xc9, 0x3f, 0xb6, 0x33, 0x42, 0x7d, 0x02, 0xeb, 0x77, 0xb3, 0x28, 0xd5, 0x56, 0xf2, 0xb2, 0xb0, 0xe2, 0x66, }; static const wycheproof_xdh_test xdh_wei25519_2020 = { .name = "xdh_wei25519_2020", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2020_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2020_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2020_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 456 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2021 for XDH, tcId is 457 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2021_peerpubkey[] = { 0x4d, 0x96, 0x32, 0x0c, 0xdb, 0x0c, 0xa5, 0x26, 0x55, 0xe9, 0x11, 0x18, 0xc3, 0x3f, 0x93, 0xaf, 0xe4, 0xae, 0x69, 0xe9, 0xe5, 0x13, 0xff, 0x45, 0x06, 0x75, 0x0b, 0x8e, 0xa7, 0x84, 0xce, 0x46, }; static const unsigned char xdh_wei25519_2021_privkey[] = { 0xc0, 0x59, 0x57, 0xfb, 0xc3, 0xa0, 0xe2, 0xc2, 0x2a, 0x2a, 0xef, 0x62, 0x76, 0x51, 0xca, 0x1e, 0x99, 0x30, 0x7b, 0x82, 0xa0, 0xc6, 0x17, 0x0f, 0x79, 0x50, 0xa3, 0x34, 0xf3, 0x00, 0x49, 0x41, }; static const unsigned char xdh_wei25519_2021_sharedsecret[] = { 0xc8, 0xd8, 0x5b, 0xfa, 0x74, 0xb4, 0xb2, 0x64, 0x61, 0x29, 0x7b, 0x35, 0x0c, 0x97, 0x51, 0x83, 0xfe, 0xa9, 0xd3, 0x3b, 0xa2, 0x9c, 0x3a, 0x49, 0x34, 0x50, 0x9c, 0x2e, 0xcd, 0xa5, 0x8a, 0x79, }; static const wycheproof_xdh_test xdh_wei25519_2021 = { .name = "xdh_wei25519_2021", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2021_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2021_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2021_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 457 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2022 for XDH, tcId is 458 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2022_peerpubkey[] = { 0xc0, 0xef, 0x1b, 0x7c, 0x20, 0x23, 0x7d, 0xb3, 0x70, 0x50, 0x1f, 0x24, 0x27, 0x4e, 0x4e, 0xba, 0x91, 0x99, 0x8a, 0xe4, 0x54, 0x5f, 0x93, 0x70, 0x07, 0xe1, 0xc4, 0xa2, 0xea, 0xb6, 0x33, 0x65, }; static const unsigned char xdh_wei25519_2022_privkey[] = { 0x60, 0x11, 0x1c, 0x66, 0x29, 0xf7, 0x36, 0x35, 0x98, 0x5b, 0xe9, 0x64, 0xb8, 0x45, 0xf8, 0x7a, 0x88, 0xae, 0x56, 0x52, 0xd4, 0x5b, 0xb1, 0x45, 0x1c, 0xe8, 0xcf, 0xd2, 0xea, 0x45, 0xfe, 0x41, }; static const unsigned char xdh_wei25519_2022_sharedsecret[] = { 0x22, 0x55, 0x7e, 0x0d, 0x87, 0x41, 0xed, 0x2a, 0x63, 0xaf, 0xd5, 0xe3, 0x13, 0xaa, 0x15, 0x79, 0xfc, 0x0c, 0x88, 0xc7, 0x77, 0x2e, 0x23, 0xa6, 0x76, 0xc9, 0x4b, 0x60, 0xc8, 0x9d, 0xf5, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_2022 = { .name = "xdh_wei25519_2022", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2022_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2022_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2022_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 458 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2023 for XDH, tcId is 459 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2023_peerpubkey[] = { 0xd5, 0x34, 0xd8, 0xff, 0x4d, 0x56, 0xa7, 0x3e, 0xf7, 0x61, 0x5e, 0x94, 0x52, 0x3b, 0x17, 0xe3, 0x5e, 0xdb, 0x3d, 0x0f, 0xb8, 0x7e, 0x98, 0xc6, 0x85, 0x36, 0xf6, 0x3f, 0x11, 0x4a, 0x8d, 0x6c, }; static const unsigned char xdh_wei25519_2023_privkey[] = { 0x58, 0x78, 0x58, 0x89, 0xa2, 0x16, 0xd1, 0x54, 0x56, 0x58, 0x2d, 0x4e, 0x1e, 0x3d, 0xe9, 0xe9, 0xca, 0x4a, 0x43, 0x29, 0x54, 0x41, 0x6d, 0x81, 0xca, 0xf5, 0x2b, 0x2b, 0x43, 0x4c, 0x17, 0x46, }; static const unsigned char xdh_wei25519_2023_sharedsecret[] = { 0x54, 0xd7, 0xfc, 0x17, 0xba, 0xd0, 0x02, 0x96, 0xba, 0x50, 0xb0, 0xf3, 0xd5, 0xbf, 0x8f, 0xb8, 0x3f, 0x82, 0xd5, 0x71, 0x95, 0x2a, 0x5f, 0xdb, 0x5a, 0x49, 0x41, 0x20, 0xcc, 0x61, 0x44, 0x6b, }; static const wycheproof_xdh_test xdh_wei25519_2023 = { .name = "xdh_wei25519_2023", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2023_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2023_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2023_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 459 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2024 for XDH, tcId is 460 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2024_peerpubkey[] = { 0x73, 0x3a, 0x71, 0x1b, 0xa0, 0x1b, 0x6e, 0x9b, 0x64, 0xa0, 0xbe, 0x4c, 0xdc, 0xa8, 0xc7, 0xcf, 0x3c, 0x66, 0xdf, 0x24, 0x35, 0xd5, 0x24, 0x8f, 0xb4, 0x41, 0x3f, 0xec, 0x6e, 0xe0, 0x3f, 0x70, }; static const unsigned char xdh_wei25519_2024_privkey[] = { 0x60, 0xbe, 0xf3, 0x8a, 0x38, 0x90, 0xec, 0x1e, 0xd0, 0x5c, 0x29, 0x9f, 0xce, 0xb7, 0x7d, 0xb5, 0xea, 0xd4, 0xb8, 0x8d, 0x9e, 0x93, 0x1b, 0x0f, 0x21, 0xd6, 0x64, 0xf7, 0x7d, 0xf9, 0xb5, 0x44, }; static const unsigned char xdh_wei25519_2024_sharedsecret[] = { 0xdb, 0x68, 0x51, 0xb1, 0x25, 0x85, 0xbc, 0x11, 0xbe, 0x93, 0x62, 0xc9, 0x6a, 0x54, 0x5c, 0x6f, 0x2b, 0xa5, 0x5f, 0x04, 0x00, 0x97, 0x92, 0x46, 0x3b, 0x96, 0xa3, 0x8c, 0xb9, 0xb3, 0xf0, 0x7c, }; static const wycheproof_xdh_test xdh_wei25519_2024 = { .name = "xdh_wei25519_2024", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2024_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2024_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2024_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 460 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2025 for XDH, tcId is 461 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2025_peerpubkey[] = { 0x35, 0x73, 0x8d, 0xd5, 0x39, 0xd6, 0x0f, 0x69, 0xcd, 0x1a, 0x1c, 0xff, 0xc8, 0xa4, 0x2b, 0x6a, 0xf6, 0x8f, 0xe7, 0xde, 0x45, 0x39, 0x2d, 0x02, 0x83, 0x1e, 0x2a, 0x77, 0x50, 0x0e, 0xa2, 0x78, }; static const unsigned char xdh_wei25519_2025_privkey[] = { 0x58, 0x54, 0xee, 0x56, 0x68, 0x78, 0xef, 0x8b, 0x7e, 0xba, 0xf5, 0xa0, 0x58, 0x30, 0x6f, 0x25, 0x0e, 0xdf, 0x0c, 0x84, 0xfd, 0x52, 0xaf, 0x2d, 0x74, 0xb7, 0xce, 0x3c, 0x1e, 0xdd, 0xa7, 0x46, }; static const unsigned char xdh_wei25519_2025_sharedsecret[] = { 0xf6, 0xd1, 0xa6, 0x64, 0x25, 0x7f, 0xa5, 0xde, 0x3d, 0x4d, 0x57, 0xf0, 0x4e, 0xda, 0x29, 0x76, 0xbf, 0x1e, 0x35, 0xcc, 0x3a, 0xc5, 0x13, 0xe1, 0xee, 0x84, 0xd5, 0x7d, 0x21, 0x35, 0xed, 0x13, }; static const wycheproof_xdh_test xdh_wei25519_2025 = { .name = "xdh_wei25519_2025", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2025_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2025_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2025_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 461 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2026 for XDH, tcId is 462 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2026_peerpubkey[] = { 0xce, 0x93, 0x2b, 0x5a, 0xf4, 0xbe, 0x47, 0x21, 0xf9, 0x6f, 0x7b, 0x79, 0xba, 0x1c, 0x43, 0xb2, 0x06, 0x87, 0xd4, 0xaf, 0x49, 0xc3, 0x7b, 0x58, 0xdc, 0x89, 0x42, 0x79, 0xe0, 0x4b, 0xb5, 0x78, }; static const unsigned char xdh_wei25519_2026_privkey[] = { 0x98, 0x5b, 0x55, 0x12, 0x61, 0xfc, 0xe3, 0x8d, 0xdc, 0x8f, 0xf3, 0xad, 0xd3, 0x2f, 0x5c, 0x26, 0x81, 0x1d, 0x27, 0x1b, 0x9a, 0x17, 0x94, 0xe2, 0x49, 0xdd, 0x76, 0xa3, 0x8d, 0xf2, 0x84, 0x46, }; static const unsigned char xdh_wei25519_2026_sharedsecret[] = { 0xf8, 0xf7, 0x62, 0x5a, 0xc5, 0xbd, 0xe6, 0x3f, 0x75, 0x3a, 0x9b, 0xb4, 0xae, 0xfb, 0xfb, 0x9c, 0x46, 0x47, 0x20, 0x77, 0x08, 0xaf, 0x9d, 0x77, 0x4e, 0xf0, 0x8f, 0xf1, 0xb1, 0xe5, 0xa3, 0x54, }; static const wycheproof_xdh_test xdh_wei25519_2026 = { .name = "xdh_wei25519_2026", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2026_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2026_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2026_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 462 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2027 for XDH, tcId is 463 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2027_peerpubkey[] = { 0xe3, 0x65, 0x54, 0x48, 0x33, 0x9e, 0x48, 0x50, 0x80, 0x6e, 0xb5, 0x8a, 0xbb, 0xa0, 0xc8, 0x91, 0x85, 0x51, 0x1e, 0xa7, 0x2c, 0x37, 0xc4, 0x9e, 0x95, 0x83, 0xee, 0x6d, 0xd2, 0x35, 0xd2, 0x13, }; static const unsigned char xdh_wei25519_2027_privkey[] = { 0x88, 0x15, 0x05, 0x23, 0x44, 0xdc, 0xad, 0x97, 0xef, 0xd1, 0x34, 0x1e, 0x90, 0x72, 0xa8, 0x08, 0xcf, 0x99, 0x9e, 0x46, 0xe5, 0x2c, 0xf0, 0x4e, 0x0c, 0xfb, 0xcd, 0x99, 0x01, 0xe1, 0x8d, 0x43, }; static const unsigned char xdh_wei25519_2027_sharedsecret[] = { 0x5e, 0x10, 0xdf, 0xbf, 0xf4, 0x44, 0x3e, 0xfc, 0xae, 0x2c, 0xcc, 0x78, 0xc2, 0x89, 0xa4, 0x14, 0x60, 0xd5, 0xa8, 0x2f, 0x79, 0xdf, 0x72, 0x6b, 0x88, 0x24, 0xcc, 0xbe, 0xf7, 0x14, 0x6d, 0x40, }; static const wycheproof_xdh_test xdh_wei25519_2027 = { .name = "xdh_wei25519_2027", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2027_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2027_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2027_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 463 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2028 for XDH, tcId is 464 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2028_peerpubkey[] = { 0x4d, 0x16, 0x96, 0x5b, 0x16, 0x37, 0xe9, 0xd7, 0xae, 0x8f, 0xeb, 0x49, 0x9e, 0xd0, 0x55, 0x39, 0x62, 0xa9, 0xaa, 0x00, 0x22, 0xd1, 0x62, 0x0c, 0x92, 0x80, 0x72, 0xf6, 0x50, 0x1b, 0xc4, 0x1b, }; static const unsigned char xdh_wei25519_2028_privkey[] = { 0xb8, 0xe0, 0x32, 0xe9, 0xe5, 0xff, 0xba, 0xa0, 0x04, 0x39, 0x0f, 0x3a, 0x0b, 0x90, 0x0b, 0xc7, 0xcf, 0x5d, 0x11, 0x23, 0x8b, 0x7e, 0xc9, 0x64, 0xaf, 0xc4, 0xbd, 0xa2, 0xaa, 0x6c, 0x34, 0x44, }; static const unsigned char xdh_wei25519_2028_sharedsecret[] = { 0x19, 0xd7, 0xb4, 0x4c, 0x18, 0x47, 0xc4, 0x4e, 0x8f, 0x37, 0xa2, 0x2a, 0xb6, 0x9c, 0x18, 0x0f, 0xd9, 0xd7, 0x87, 0xf2, 0x04, 0x12, 0x30, 0x13, 0xe1, 0xb1, 0x68, 0x00, 0xb9, 0xcd, 0x0f, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_2028 = { .name = "xdh_wei25519_2028", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2028_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2028_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2028_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 464 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2029 for XDH, tcId is 465 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2029_peerpubkey[] = { 0xc6, 0xb9, 0xe6, 0x28, 0x87, 0x37, 0xad, 0x40, 0x45, 0x2c, 0xec, 0x10, 0x22, 0x87, 0x1d, 0x90, 0xaf, 0x16, 0x42, 0xd1, 0x0b, 0xd0, 0xa9, 0x77, 0x92, 0xb1, 0xa9, 0xc8, 0x99, 0x8e, 0x22, 0x20, }; static const unsigned char xdh_wei25519_2029_privkey[] = { 0x70, 0x12, 0x85, 0x22, 0x11, 0xf6, 0x53, 0x6f, 0xca, 0x79, 0x93, 0x7e, 0x7e, 0x31, 0x6c, 0x91, 0x49, 0xb0, 0xe2, 0x0e, 0xa0, 0x3f, 0x95, 0x1e, 0x1b, 0xb0, 0x72, 0x89, 0x5c, 0xa0, 0xe0, 0x44, }; static const unsigned char xdh_wei25519_2029_sharedsecret[] = { 0xdb, 0x99, 0x0d, 0x97, 0x9f, 0x4f, 0x22, 0xf7, 0x66, 0xe7, 0x82, 0x6d, 0x93, 0x55, 0x4e, 0x77, 0x1b, 0x36, 0x1d, 0xe4, 0x61, 0x27, 0x4d, 0x6c, 0x37, 0xba, 0xad, 0xeb, 0x8e, 0xf7, 0xbe, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_2029 = { .name = "xdh_wei25519_2029", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2029_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2029_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2029_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 465 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2030 for XDH, tcId is 466 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2030_peerpubkey[] = { 0xd5, 0x66, 0xfa, 0xb5, 0x05, 0xac, 0x4c, 0x7a, 0x3d, 0xc3, 0xb9, 0x40, 0x3e, 0xf1, 0x21, 0x39, 0x2c, 0xbb, 0xe2, 0x12, 0x16, 0xe5, 0xbc, 0xb8, 0xea, 0xb2, 0xdc, 0x94, 0x08, 0x98, 0x6e, 0x34, }; static const unsigned char xdh_wei25519_2030_privkey[] = { 0xd0, 0x39, 0xc1, 0xb9, 0xec, 0x47, 0x63, 0xe0, 0xad, 0x8a, 0x0e, 0xf2, 0xb0, 0x87, 0x02, 0x97, 0xd0, 0xf8, 0xb4, 0x87, 0xe6, 0x60, 0x59, 0x5a, 0x48, 0x41, 0x05, 0xd1, 0x80, 0xe1, 0x4a, 0x47, }; static const unsigned char xdh_wei25519_2030_sharedsecret[] = { 0x6d, 0x7f, 0xc5, 0xd4, 0xa8, 0xf5, 0x34, 0xb1, 0xbc, 0x0f, 0xa5, 0xe0, 0x78, 0x10, 0x42, 0x34, 0x67, 0x5c, 0x02, 0x66, 0x47, 0x36, 0x95, 0x7a, 0xbd, 0xb2, 0x7d, 0xf6, 0xfa, 0xf0, 0x7c, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_2030 = { .name = "xdh_wei25519_2030", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2030_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2030_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2030_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 466 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2031 for XDH, tcId is 467 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2031_peerpubkey[] = { 0x46, 0x8d, 0x35, 0xec, 0xfb, 0x6d, 0x9b, 0x72, 0x72, 0x52, 0x32, 0x76, 0xcc, 0x5e, 0x13, 0x76, 0x05, 0x19, 0x66, 0x7f, 0x0e, 0x1e, 0x38, 0x88, 0xda, 0x4c, 0x56, 0x95, 0x5f, 0xe9, 0x11, 0x51, }; static const unsigned char xdh_wei25519_2031_privkey[] = { 0x58, 0xef, 0xcb, 0xc8, 0x77, 0x7c, 0x1b, 0x54, 0xf0, 0x9c, 0x61, 0xa2, 0x16, 0xef, 0xd4, 0x27, 0x29, 0x2e, 0xb1, 0x23, 0x12, 0xdb, 0xb3, 0xb3, 0x2b, 0xd4, 0x52, 0x54, 0xa6, 0x68, 0x3e, 0x47, }; static const unsigned char xdh_wei25519_2031_sharedsecret[] = { 0x53, 0x9c, 0x8d, 0x62, 0x9a, 0xb5, 0x1c, 0x2f, 0x3e, 0xa7, 0x27, 0x8f, 0xd5, 0xf1, 0xc3, 0x1b, 0x6c, 0x15, 0x0a, 0x82, 0xfe, 0x3f, 0x78, 0x6b, 0x93, 0xff, 0xa1, 0x59, 0xfd, 0x6d, 0x93, 0x16, }; static const wycheproof_xdh_test xdh_wei25519_2031 = { .name = "xdh_wei25519_2031", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2031_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2031_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2031_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 467 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2032 for XDH, tcId is 468 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2032_peerpubkey[] = { 0x19, 0x29, 0x53, 0x87, 0x43, 0x97, 0x7d, 0xfe, 0xa2, 0x0b, 0xf4, 0x92, 0x7d, 0xda, 0xbb, 0x2f, 0x3b, 0xb1, 0x5c, 0xac, 0x24, 0x61, 0x05, 0x45, 0x08, 0x84, 0x97, 0x18, 0x85, 0x4b, 0x55, 0x68, }; static const unsigned char xdh_wei25519_2032_privkey[] = { 0xc8, 0xd7, 0x34, 0x46, 0x02, 0x6c, 0xd0, 0xea, 0x79, 0x57, 0x73, 0xc2, 0xeb, 0x7b, 0x16, 0x34, 0x8c, 0xd5, 0xf2, 0x28, 0xe3, 0x52, 0xdb, 0xc7, 0x73, 0x28, 0xc2, 0xd8, 0xb9, 0xcd, 0xe2, 0x40, }; static const unsigned char xdh_wei25519_2032_sharedsecret[] = { 0xde, 0xe3, 0xfd, 0x19, 0xc8, 0xf2, 0x96, 0x41, 0x54, 0x48, 0xb2, 0x1a, 0xf4, 0x43, 0x85, 0xec, 0x46, 0x72, 0x7b, 0xbe, 0x67, 0xd4, 0x83, 0x9b, 0x93, 0xef, 0xe2, 0xf6, 0x80, 0xe7, 0x6d, 0x34, }; static const wycheproof_xdh_test xdh_wei25519_2032 = { .name = "xdh_wei25519_2032", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2032_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2032_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2032_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 468 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2033 for XDH, tcId is 469 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2033_peerpubkey[] = { 0x2d, 0x7a, 0xb4, 0xc6, 0xf5, 0x98, 0x65, 0x35, 0x5e, 0xe8, 0xe9, 0xde, 0x57, 0xdb, 0x19, 0xaa, 0xdf, 0x77, 0x08, 0xb7, 0xc1, 0xd1, 0xa8, 0x18, 0x48, 0x7c, 0x34, 0x06, 0x23, 0xba, 0xdc, 0x6d, }; static const unsigned char xdh_wei25519_2033_privkey[] = { 0x98, 0xb5, 0x59, 0x52, 0x3b, 0xc7, 0x78, 0xb0, 0x41, 0x8a, 0xf5, 0x3c, 0x0c, 0x32, 0xf6, 0xff, 0x5c, 0xf7, 0x71, 0xff, 0x5d, 0xf8, 0xae, 0x7c, 0xbf, 0x7c, 0x3b, 0x72, 0xae, 0xdb, 0x5b, 0x43, }; static const unsigned char xdh_wei25519_2033_sharedsecret[] = { 0x2a, 0x03, 0x40, 0xaa, 0xaf, 0xa0, 0x5d, 0x00, 0x52, 0x9c, 0x09, 0x05, 0x7e, 0xd0, 0x14, 0x5f, 0x34, 0xd2, 0xde, 0x66, 0xa3, 0xe1, 0x49, 0xcf, 0x08, 0x4e, 0xa9, 0x71, 0x68, 0x91, 0x4f, 0x39, }; static const wycheproof_xdh_test xdh_wei25519_2033 = { .name = "xdh_wei25519_2033", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2033_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2033_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2033_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 469 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2034 for XDH, tcId is 470 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2034_peerpubkey[] = { 0x43, 0x83, 0x9f, 0x4a, 0x6a, 0xa2, 0x06, 0xc8, 0x2c, 0x5a, 0x73, 0xf4, 0x9d, 0x8c, 0x9e, 0x57, 0x38, 0x26, 0xb3, 0xba, 0x72, 0x35, 0xd3, 0x12, 0x98, 0x7c, 0x17, 0xae, 0xbe, 0xe6, 0x27, 0x76, }; static const unsigned char xdh_wei25519_2034_privkey[] = { 0x58, 0x98, 0x15, 0x02, 0x7c, 0xaf, 0x82, 0x71, 0x4e, 0x96, 0xc9, 0xf9, 0x1b, 0xac, 0xe6, 0x6e, 0xc4, 0xba, 0x3e, 0x92, 0xdf, 0x3f, 0xa1, 0x4b, 0x9b, 0x8f, 0xe5, 0x03, 0x55, 0x6e, 0x45, 0x43, }; static const unsigned char xdh_wei25519_2034_sharedsecret[] = { 0x00, 0x31, 0x37, 0x17, 0xd3, 0x3e, 0x3b, 0x41, 0xa0, 0x86, 0x59, 0x86, 0x15, 0x75, 0x82, 0xe0, 0x53, 0x50, 0x2a, 0x17, 0x2b, 0x88, 0xd0, 0x1b, 0xb7, 0xb1, 0x08, 0x31, 0xa9, 0xfc, 0x4e, 0x6c, }; static const wycheproof_xdh_test xdh_wei25519_2034 = { .name = "xdh_wei25519_2034", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2034_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2034_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2034_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 470 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2035 for XDH, tcId is 471 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2035_peerpubkey[] = { 0x3c, 0x32, 0x1e, 0x7f, 0x0b, 0x9e, 0x55, 0x5b, 0xc2, 0x64, 0xa2, 0xce, 0xa6, 0x17, 0xe6, 0xb2, 0xb5, 0x62, 0xeb, 0xab, 0x21, 0xfe, 0x0c, 0x22, 0x6c, 0x3e, 0x48, 0x7b, 0x7d, 0xf9, 0xa2, 0x7d, }; static const unsigned char xdh_wei25519_2035_privkey[] = { 0x80, 0x71, 0x5f, 0x67, 0x27, 0x0c, 0x99, 0x78, 0x98, 0x55, 0xce, 0xae, 0xa9, 0x9b, 0x99, 0x57, 0xcc, 0xda, 0x33, 0x32, 0x6f, 0x76, 0xbb, 0x44, 0x74, 0xab, 0x52, 0xab, 0x1e, 0xc3, 0x70, 0x41, }; static const unsigned char xdh_wei25519_2035_sharedsecret[] = { 0x9b, 0x6b, 0xe9, 0xe6, 0xf2, 0xfd, 0xb5, 0xd3, 0x32, 0x18, 0x42, 0x22, 0x5d, 0x3e, 0x91, 0xd1, 0x48, 0x28, 0xcc, 0x53, 0xba, 0x66, 0x54, 0xda, 0xbe, 0x19, 0x0b, 0x0c, 0x3e, 0xde, 0xb3, 0x09, }; static const wycheproof_xdh_test xdh_wei25519_2035 = { .name = "xdh_wei25519_2035", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2035_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2035_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2035_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 471 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2036 for XDH, tcId is 472 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2036_peerpubkey[] = { 0x42, 0xe5, 0xa6, 0xb8, 0xe9, 0x65, 0x4b, 0xb4, 0xad, 0x62, 0x4a, 0xf3, 0xf4, 0x91, 0x87, 0x79, 0x77, 0x51, 0x3c, 0xc8, 0x77, 0x5c, 0x8f, 0xb3, 0x12, 0xad, 0x19, 0xdb, 0xf3, 0x90, 0x3a, 0x28, }; static const unsigned char xdh_wei25519_2036_privkey[] = { 0x10, 0x1b, 0x99, 0x0b, 0xd8, 0x3d, 0x68, 0x41, 0x26, 0xff, 0x04, 0x7d, 0x93, 0x0c, 0x27, 0xd0, 0x86, 0xa5, 0x88, 0xdd, 0x19, 0x68, 0x3d, 0x26, 0x29, 0xf0, 0xe3, 0x4f, 0x43, 0x74, 0xab, 0x41, }; static const unsigned char xdh_wei25519_2036_sharedsecret[] = { 0x22, 0x3f, 0x1e, 0xb5, 0x52, 0x30, 0x83, 0x73, 0x02, 0x6d, 0x11, 0xc9, 0x54, 0x68, 0x4c, 0xe6, 0xdb, 0x87, 0x0b, 0x63, 0x8b, 0x19, 0x0b, 0x94, 0x43, 0xe5, 0x0a, 0xae, 0x21, 0x9f, 0x4e, 0x3e, }; static const wycheproof_xdh_test xdh_wei25519_2036 = { .name = "xdh_wei25519_2036", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2036_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2036_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2036_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 472 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2037 for XDH, tcId is 473 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2037_peerpubkey[] = { 0x0a, 0x51, 0xdd, 0x90, 0xab, 0x98, 0x5f, 0x6d, 0xea, 0xf7, 0x2f, 0x16, 0xc4, 0x50, 0x14, 0xda, 0x26, 0xdf, 0x84, 0x86, 0x97, 0xf6, 0x58, 0x2d, 0x75, 0x68, 0x8f, 0x52, 0x23, 0x34, 0x2b, 0x51, }; static const unsigned char xdh_wei25519_2037_privkey[] = { 0x20, 0x00, 0x89, 0xb7, 0x12, 0xd9, 0xa2, 0x05, 0x05, 0x97, 0x77, 0x9d, 0x46, 0x37, 0x12, 0xfc, 0xd2, 0x23, 0xe3, 0xd6, 0x78, 0x79, 0xc0, 0xfb, 0x76, 0x06, 0xf8, 0xf5, 0xf0, 0xef, 0xee, 0x40, }; static const unsigned char xdh_wei25519_2037_sharedsecret[] = { 0xfb, 0x95, 0xce, 0x4a, 0x3c, 0x1f, 0x32, 0x56, 0x38, 0xb7, 0xd4, 0x7f, 0x42, 0x16, 0xd3, 0x9a, 0x7c, 0x6c, 0x5d, 0xa9, 0xa0, 0x1c, 0xaa, 0x29, 0x7c, 0x37, 0xb6, 0x28, 0x16, 0x55, 0x5b, 0x2a, }; static const wycheproof_xdh_test xdh_wei25519_2037 = { .name = "xdh_wei25519_2037", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2037_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2037_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2037_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 473 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2038 for XDH, tcId is 474 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2038_peerpubkey[] = { 0x88, 0x42, 0x31, 0x73, 0x57, 0xbd, 0xe8, 0x25, 0xef, 0x43, 0x8a, 0x1c, 0x53, 0x90, 0x6f, 0xb8, 0xb0, 0x4e, 0xa3, 0x60, 0xf7, 0xef, 0x33, 0x8c, 0x78, 0xe6, 0x68, 0x58, 0x60, 0x47, 0x93, 0x6a, }; static const unsigned char xdh_wei25519_2038_privkey[] = { 0xf0, 0x4f, 0x87, 0xf4, 0xe6, 0x23, 0xaf, 0x4c, 0x31, 0xce, 0xca, 0x0b, 0xb8, 0x7f, 0xac, 0x2d, 0x5b, 0x12, 0x51, 0x7b, 0x5a, 0x72, 0x84, 0x90, 0x2a, 0xd7, 0x58, 0x38, 0xe6, 0x5f, 0x1e, 0x41, }; static const unsigned char xdh_wei25519_2038_sharedsecret[] = { 0x48, 0x8b, 0x83, 0x41, 0xc9, 0xcb, 0x1b, 0xbf, 0x12, 0x45, 0x10, 0xb9, 0xf8, 0xda, 0xe4, 0xfa, 0xf2, 0xe0, 0xdc, 0xa9, 0xb8, 0x4e, 0x00, 0xe9, 0x52, 0xa6, 0x3b, 0x5a, 0xa3, 0x28, 0xa8, 0x60, }; static const wycheproof_xdh_test xdh_wei25519_2038 = { .name = "xdh_wei25519_2038", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2038_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2038_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2038_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 474 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2039 for XDH, tcId is 475 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2039_peerpubkey[] = { 0xc7, 0x1d, 0x92, 0xd3, 0xc9, 0x2d, 0xbf, 0xae, 0xd7, 0x55, 0xfb, 0x32, 0x79, 0x7b, 0x66, 0x7c, 0xc8, 0x6b, 0x0e, 0x79, 0x36, 0x24, 0x98, 0xe2, 0xac, 0xa3, 0x8c, 0x68, 0x97, 0x13, 0xb1, 0x6e, }; static const unsigned char xdh_wei25519_2039_privkey[] = { 0x38, 0x3c, 0xbd, 0x5a, 0x3d, 0xd0, 0x90, 0x1d, 0x09, 0xa3, 0xca, 0xc3, 0xd3, 0xa7, 0x7a, 0x97, 0x9c, 0xec, 0xf1, 0x5e, 0x20, 0x6a, 0x55, 0x3e, 0x4c, 0xa3, 0xf2, 0x4b, 0x90, 0x78, 0x39, 0x45, }; static const unsigned char xdh_wei25519_2039_sharedsecret[] = { 0x11, 0x29, 0xea, 0xe9, 0x7b, 0xf7, 0x5f, 0x73, 0x14, 0xf2, 0xe1, 0xb4, 0x03, 0xb1, 0x87, 0x37, 0xad, 0x83, 0x0c, 0x80, 0x42, 0x9e, 0x2b, 0xa0, 0xd4, 0x86, 0x6b, 0x36, 0x23, 0x99, 0x85, 0x5f, }; static const wycheproof_xdh_test xdh_wei25519_2039 = { .name = "xdh_wei25519_2039", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2039_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2039_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2039_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 475 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2040 for XDH, tcId is 476 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2040_peerpubkey[] = { 0x3a, 0x21, 0xd1, 0xcf, 0x7b, 0x37, 0x44, 0xd1, 0xad, 0x26, 0x19, 0x73, 0x35, 0x84, 0x49, 0x82, 0xc2, 0xa0, 0xc6, 0xa5, 0xaa, 0x83, 0x54, 0x92, 0xbd, 0x03, 0xc4, 0x01, 0xa4, 0xfe, 0x67, 0x78, }; static const unsigned char xdh_wei25519_2040_privkey[] = { 0x70, 0x1d, 0xf0, 0x9e, 0x57, 0xb9, 0x8a, 0xec, 0x37, 0x57, 0x45, 0xdf, 0x14, 0x7b, 0x72, 0x94, 0x9a, 0x6b, 0x2b, 0xb2, 0xca, 0x3a, 0x34, 0x88, 0x15, 0x12, 0xee, 0x31, 0xe7, 0x90, 0xad, 0x42, }; static const unsigned char xdh_wei25519_2040_sharedsecret[] = { 0x07, 0x2f, 0x51, 0xd9, 0x47, 0x27, 0xf3, 0x92, 0xd5, 0x9d, 0xc7, 0xca, 0xff, 0x1f, 0x44, 0x60, 0x45, 0x23, 0x52, 0xec, 0x39, 0xc3, 0x2a, 0x1c, 0x9f, 0x07, 0x1e, 0x38, 0x88, 0x33, 0xda, 0x56, }; static const wycheproof_xdh_test xdh_wei25519_2040 = { .name = "xdh_wei25519_2040", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2040_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2040_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2040_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 476 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2041 for XDH, tcId is 477 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2041_peerpubkey[] = { 0xd1, 0x28, 0xea, 0x3e, 0x13, 0x32, 0x5e, 0xd6, 0xeb, 0xd6, 0x53, 0x3a, 0x9f, 0xd3, 0x04, 0x5a, 0x55, 0xf2, 0x5a, 0xd8, 0xb6, 0x7d, 0xef, 0x30, 0x91, 0x28, 0x43, 0x50, 0x4c, 0x1a, 0xab, 0x29, }; static const unsigned char xdh_wei25519_2041_privkey[] = { 0xb0, 0xff, 0xa5, 0xf4, 0x92, 0x2b, 0xb1, 0x17, 0xad, 0x75, 0xff, 0x43, 0xac, 0xac, 0x62, 0x33, 0x1e, 0xfa, 0xa4, 0x55, 0x36, 0xfe, 0x88, 0x30, 0x6e, 0x4a, 0x4c, 0xb5, 0x8d, 0xb7, 0x3a, 0x47, }; static const unsigned char xdh_wei25519_2041_sharedsecret[] = { 0x30, 0x51, 0x21, 0x42, 0xd3, 0xe3, 0xa4, 0xca, 0xd6, 0x72, 0x6d, 0x9d, 0x35, 0xf2, 0xe0, 0x43, 0xfc, 0xa9, 0xdf, 0xb7, 0x50, 0x88, 0x4a, 0xe2, 0x2b, 0x25, 0x47, 0xc8, 0x40, 0xf3, 0x58, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_2041 = { .name = "xdh_wei25519_2041", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2041_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2041_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2041_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 477 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2042 for XDH, tcId is 478 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2042_peerpubkey[] = { 0xe0, 0x79, 0xc8, 0xf8, 0x42, 0x31, 0x65, 0xc7, 0xe0, 0xa2, 0xc4, 0x8b, 0x4a, 0xbe, 0x90, 0xae, 0xce, 0x4e, 0x6d, 0x90, 0x3d, 0x7a, 0x5a, 0x16, 0x25, 0xfa, 0xd0, 0x41, 0x0c, 0xd5, 0x5b, 0x32, }; static const unsigned char xdh_wei25519_2042_privkey[] = { 0x68, 0x5e, 0x32, 0x71, 0xd2, 0x01, 0x57, 0x41, 0x75, 0x66, 0x12, 0xa9, 0x30, 0xe8, 0x58, 0xb9, 0x30, 0xac, 0xf2, 0x01, 0x81, 0x45, 0xf3, 0x82, 0xc8, 0x3d, 0x8c, 0xce, 0xd2, 0xe2, 0x20, 0x44, }; static const unsigned char xdh_wei25519_2042_sharedsecret[] = { 0x5b, 0x81, 0xb3, 0x76, 0x1a, 0x66, 0xd1, 0x99, 0xe8, 0xef, 0x99, 0xd2, 0x49, 0x4b, 0xd5, 0x7a, 0x02, 0x29, 0xd4, 0x56, 0x4a, 0x7f, 0x6d, 0x60, 0x55, 0xf2, 0x2a, 0xa4, 0x86, 0x81, 0xbd, 0x3a, }; static const wycheproof_xdh_test xdh_wei25519_2042 = { .name = "xdh_wei25519_2042", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2042_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2042_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2042_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 478 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2043 for XDH, tcId is 479 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2043_peerpubkey[] = { 0x65, 0x92, 0x2a, 0x06, 0xe9, 0xbe, 0x4e, 0x8a, 0x5e, 0x8a, 0xce, 0xb1, 0xa4, 0xe0, 0x8f, 0xe9, 0x0f, 0x01, 0xe1, 0x0e, 0xf2, 0xdd, 0x27, 0x31, 0x54, 0x27, 0xce, 0xdf, 0xcf, 0x95, 0xec, 0x32, }; static const unsigned char xdh_wei25519_2043_privkey[] = { 0xf8, 0xe1, 0x61, 0xd6, 0x92, 0x97, 0xe0, 0x17, 0xd7, 0xc5, 0x1b, 0x1b, 0x1f, 0xf3, 0xba, 0x70, 0x3d, 0x4c, 0x4c, 0xf8, 0xfc, 0x2b, 0x8f, 0xf4, 0x7f, 0x74, 0xc3, 0xff, 0x8c, 0x7d, 0x35, 0x41, }; static const unsigned char xdh_wei25519_2043_sharedsecret[] = { 0x03, 0x8d, 0xe7, 0xfd, 0xb9, 0xcc, 0x00, 0x30, 0xf5, 0xc1, 0x1d, 0xda, 0x00, 0x58, 0x9f, 0x0a, 0x95, 0xf6, 0x56, 0x58, 0x81, 0x5b, 0x06, 0xed, 0x01, 0x35, 0x53, 0xa0, 0x2b, 0x6c, 0x50, 0x17, }; static const wycheproof_xdh_test xdh_wei25519_2043 = { .name = "xdh_wei25519_2043", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2043_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2043_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2043_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 479 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2044 for XDH, tcId is 480 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2044_peerpubkey[] = { 0xd3, 0x6a, 0x24, 0x0e, 0x97, 0x2d, 0xc1, 0x6e, 0x9b, 0x97, 0xa9, 0x97, 0xad, 0xa3, 0x37, 0xf0, 0x27, 0x60, 0xd0, 0x5c, 0x46, 0xd7, 0xf8, 0xd7, 0xb4, 0xe9, 0xea, 0x9a, 0x63, 0x5c, 0x7c, 0x64, }; static const unsigned char xdh_wei25519_2044_privkey[] = { 0x10, 0x5d, 0x75, 0x89, 0xf8, 0xab, 0xef, 0x0a, 0xcf, 0x09, 0x40, 0xda, 0x84, 0xa6, 0x9e, 0x8f, 0x2f, 0x30, 0x6f, 0xa7, 0x3c, 0x9a, 0xfd, 0x27, 0x34, 0x22, 0x87, 0xc1, 0xdb, 0xa8, 0x00, 0x44, }; static const unsigned char xdh_wei25519_2044_sharedsecret[] = { 0x22, 0xb0, 0xde, 0xa3, 0xb3, 0xb7, 0xca, 0x55, 0xec, 0xee, 0xaa, 0xe6, 0x44, 0x34, 0x26, 0x54, 0x8c, 0x7c, 0x15, 0xcc, 0x7d, 0xdf, 0x31, 0x78, 0x03, 0x18, 0xd1, 0xc2, 0x38, 0x79, 0xc1, 0x6a, }; static const wycheproof_xdh_test xdh_wei25519_2044 = { .name = "xdh_wei25519_2044", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2044_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2044_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2044_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 480 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2045 for XDH, tcId is 481 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2045_peerpubkey[] = { 0x4f, 0x5b, 0x8b, 0x98, 0x92, 0xb8, 0xa4, 0x6d, 0xf0, 0x8d, 0x76, 0xa4, 0x74, 0x5b, 0x1c, 0x58, 0xd4, 0xe7, 0xa3, 0x94, 0x90, 0x54, 0x35, 0x87, 0x56, 0x88, 0xca, 0x11, 0xf1, 0xe9, 0xd8, 0x6a, }; static const unsigned char xdh_wei25519_2045_privkey[] = { 0x18, 0x93, 0xd4, 0x38, 0x8b, 0x0e, 0x90, 0xf0, 0xb5, 0x02, 0x08, 0xaa, 0x8f, 0x0c, 0xc2, 0x4f, 0x57, 0x6d, 0x03, 0x64, 0x1b, 0xaf, 0x1c, 0x3e, 0xdd, 0xb2, 0xa3, 0xef, 0xa6, 0x9c, 0x9d, 0x40, }; static const unsigned char xdh_wei25519_2045_sharedsecret[] = { 0xa2, 0x5e, 0x13, 0x06, 0x68, 0x4a, 0xd7, 0x87, 0x0a, 0x31, 0xf0, 0x40, 0x45, 0x66, 0xe8, 0xd2, 0x8f, 0x2d, 0x83, 0xd4, 0xb9, 0x49, 0x78, 0x22, 0xc5, 0x7f, 0x87, 0x81, 0xb1, 0x8f, 0xec, 0x20, }; static const wycheproof_xdh_test xdh_wei25519_2045 = { .name = "xdh_wei25519_2045", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2045_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2045_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2045_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 481 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2046 for XDH, tcId is 482 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2046_peerpubkey[] = { 0xaa, 0x2f, 0x02, 0x62, 0x82, 0x69, 0x13, 0x9a, 0x7a, 0x8a, 0x16, 0xfd, 0xe9, 0x5c, 0x9b, 0xad, 0x7d, 0xa7, 0xff, 0xbd, 0x54, 0x39, 0xc3, 0x96, 0xa7, 0xd7, 0x7b, 0x6c, 0x32, 0x13, 0xe6, 0x7f, }; static const unsigned char xdh_wei25519_2046_privkey[] = { 0x00, 0x65, 0x17, 0x13, 0x01, 0xbf, 0x6b, 0x90, 0xfb, 0x16, 0xef, 0xa3, 0x55, 0x09, 0x16, 0x1f, 0x1b, 0xd6, 0xb3, 0xb9, 0x31, 0x30, 0xd4, 0x90, 0xaf, 0x9f, 0xe2, 0x24, 0xdd, 0x15, 0x5f, 0x45, }; static const unsigned char xdh_wei25519_2046_sharedsecret[] = { 0xbb, 0x44, 0x31, 0xbe, 0xa7, 0xa5, 0x87, 0x1c, 0x1b, 0xe2, 0x7a, 0x26, 0x74, 0x09, 0x46, 0x27, 0xea, 0xaa, 0x44, 0x25, 0xc9, 0x9c, 0xd3, 0xfa, 0x41, 0xbd, 0x7e, 0x13, 0xcb, 0xd7, 0xbf, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_2046 = { .name = "xdh_wei25519_2046", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2046_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2046_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2046_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 482 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2047 for XDH, tcId is 483 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2047_peerpubkey[] = { 0xd9, 0x95, 0xcb, 0x28, 0x7e, 0x9a, 0x9c, 0x57, 0x91, 0xf3, 0xca, 0xe3, 0xd4, 0x94, 0xa5, 0xb5, 0x16, 0xa1, 0xe2, 0x6c, 0xbc, 0x93, 0x0f, 0x43, 0xe7, 0x3c, 0x8b, 0x70, 0xb6, 0x9d, 0x78, 0x3b, }; static const unsigned char xdh_wei25519_2047_privkey[] = { 0x10, 0xc8, 0x1a, 0x4e, 0x78, 0xd8, 0x21, 0x45, 0xb2, 0x66, 0xe1, 0xd7, 0x4b, 0x38, 0x69, 0xbf, 0x1c, 0x27, 0x42, 0x78, 0x03, 0xeb, 0xb1, 0x1c, 0x92, 0xff, 0x80, 0x73, 0xd1, 0xe4, 0xcc, 0x46, }; static const unsigned char xdh_wei25519_2047_sharedsecret[] = { 0x33, 0x0f, 0x5d, 0x0b, 0x5b, 0xcc, 0xc9, 0x0f, 0x76, 0x94, 0xdf, 0xdd, 0x9c, 0x64, 0x49, 0xa6, 0x2d, 0x93, 0xaf, 0x88, 0x40, 0xea, 0xf5, 0x71, 0xe3, 0xe0, 0x61, 0x0e, 0x01, 0x98, 0xb0, 0x3f, }; static const wycheproof_xdh_test xdh_wei25519_2047 = { .name = "xdh_wei25519_2047", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2047_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2047_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2047_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for A in multiplication by 8, tcId is 483 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2048 for XDH, tcId is 484 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2048_peerpubkey[] = { 0x47, 0x9a, 0xfb, 0x1e, 0x73, 0xdc, 0x77, 0xc3, 0x74, 0x3e, 0x51, 0xe9, 0xec, 0x0b, 0xcc, 0x61, 0xce, 0x66, 0xed, 0x08, 0x4d, 0xc1, 0x0b, 0xfa, 0x27, 0x94, 0xb4, 0xc3, 0xe4, 0x95, 0x37, 0x69, }; static const unsigned char xdh_wei25519_2048_privkey[] = { 0x48, 0xb9, 0x8b, 0x4a, 0x99, 0xea, 0xdd, 0x73, 0x01, 0x2c, 0x07, 0xfe, 0x5c, 0x4a, 0x0b, 0x95, 0x90, 0xac, 0x55, 0xe8, 0x21, 0x35, 0x3b, 0x41, 0xd5, 0xf6, 0x65, 0xe1, 0x71, 0x88, 0xbc, 0x41, }; static const unsigned char xdh_wei25519_2048_sharedsecret[] = { 0xbd, 0xef, 0x00, 0xca, 0xa5, 0x14, 0xb2, 0xf8, 0xab, 0x1f, 0xb2, 0x24, 0x1e, 0x83, 0x78, 0x7a, 0x02, 0x60, 0x1e, 0xcd, 0xff, 0x6c, 0xf1, 0x66, 0xc4, 0x21, 0x0f, 0x8c, 0x1a, 0xde, 0x42, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_2048 = { .name = "xdh_wei25519_2048", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2048_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2048_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2048_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 484 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2049 for XDH, tcId is 485 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2049_peerpubkey[] = { 0x37, 0x8e, 0xda, 0x41, 0x47, 0x0b, 0x0f, 0x23, 0x8a, 0x20, 0x0f, 0x80, 0x80, 0x9a, 0xd5, 0x62, 0xca, 0x41, 0xe6, 0x24, 0x11, 0xa6, 0x1f, 0xeb, 0x7f, 0x7e, 0x9b, 0x75, 0x2b, 0x55, 0x46, 0x42, }; static const unsigned char xdh_wei25519_2049_privkey[] = { 0x18, 0x97, 0x67, 0x8e, 0x38, 0x22, 0x2a, 0x61, 0xfe, 0x10, 0x5d, 0xc6, 0x64, 0x3c, 0x1e, 0xb5, 0x94, 0x0e, 0x8d, 0xbc, 0x73, 0xed, 0x6c, 0x00, 0xf2, 0x5a, 0x34, 0x32, 0x8f, 0x43, 0xa6, 0x41, }; static const unsigned char xdh_wei25519_2049_sharedsecret[] = { 0xbf, 0xd5, 0xb5, 0xac, 0xd2, 0xd8, 0x9f, 0x21, 0x3a, 0x26, 0xca, 0xf5, 0x40, 0x62, 0xf9, 0xa2, 0x4e, 0x6f, 0x6f, 0xd8, 0xdd, 0xd0, 0xcd, 0x2e, 0x5e, 0x47, 0xb7, 0xfe, 0xa4, 0xa9, 0xc5, 0x37, }; static const wycheproof_xdh_test xdh_wei25519_2049 = { .name = "xdh_wei25519_2049", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2049_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2049_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2049_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 485 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2050 for XDH, tcId is 486 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2050_peerpubkey[] = { 0x0c, 0xad, 0x75, 0x45, 0xad, 0xe2, 0xfd, 0x93, 0xfc, 0xae, 0x00, 0x7c, 0x97, 0x64, 0x83, 0x48, 0xf2, 0x6d, 0x85, 0x82, 0x9b, 0xdb, 0x72, 0x23, 0xa6, 0x3e, 0xcc, 0xb8, 0x4e, 0x56, 0xd4, 0x75, }; static const unsigned char xdh_wei25519_2050_privkey[] = { 0xa8, 0x98, 0xaf, 0x81, 0x38, 0xe1, 0x1a, 0xe4, 0x5b, 0xbc, 0xef, 0xa7, 0x37, 0x18, 0x2a, 0x57, 0x18, 0x85, 0xf9, 0x2d, 0x51, 0x5c, 0x32, 0x05, 0x6c, 0x7c, 0xb0, 0xd7, 0xde, 0xac, 0x47, 0x41, }; static const unsigned char xdh_wei25519_2050_sharedsecret[] = { 0xc8, 0x08, 0x58, 0x77, 0x80, 0x0c, 0x17, 0x5e, 0x94, 0x9c, 0xdd, 0x88, 0xe1, 0x96, 0xeb, 0x9c, 0x48, 0x41, 0xda, 0x2a, 0xc4, 0x46, 0xdf, 0xed, 0x90, 0x85, 0xbd, 0xa5, 0xbb, 0xec, 0x26, 0x5d, }; static const wycheproof_xdh_test xdh_wei25519_2050 = { .name = "xdh_wei25519_2050", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2050_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2050_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2050_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 486 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2051 for XDH, tcId is 487 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2051_peerpubkey[] = { 0x60, 0xf2, 0x7e, 0xd0, 0xa2, 0x78, 0x04, 0xce, 0xd2, 0x37, 0xcf, 0x3c, 0x1c, 0xc7, 0x76, 0x65, 0x0f, 0xb3, 0x20, 0xba, 0xe6, 0xd5, 0xac, 0xb5, 0x64, 0xe9, 0x7b, 0x56, 0xcb, 0xa2, 0x52, 0x10, }; static const unsigned char xdh_wei25519_2051_privkey[] = { 0xb0, 0xbf, 0xef, 0x6e, 0xc0, 0x95, 0xb5, 0xa1, 0xf9, 0x39, 0x17, 0xd3, 0x2f, 0x16, 0xa2, 0x1d, 0x04, 0x62, 0xc1, 0xfd, 0xe1, 0x74, 0x46, 0xf5, 0xa5, 0x90, 0x23, 0x2d, 0x9c, 0x89, 0x5f, 0x4a, }; static const unsigned char xdh_wei25519_2051_sharedsecret[] = { 0x4c, 0x30, 0x08, 0x95, 0x82, 0x73, 0x82, 0xa9, 0xd1, 0x07, 0x90, 0x28, 0xbd, 0x6f, 0x69, 0x4a, 0x7a, 0x12, 0xdd, 0xac, 0x9c, 0x76, 0xab, 0xac, 0x6f, 0xdf, 0x5d, 0x29, 0x45, 0x7a, 0x33, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_2051 = { .name = "xdh_wei25519_2051", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2051_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2051_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2051_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 487 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2052 for XDH, tcId is 488 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2052_peerpubkey[] = { 0xf9, 0x3a, 0x73, 0x27, 0x0a, 0xc1, 0x91, 0x94, 0xb8, 0xe4, 0xff, 0xd0, 0x2b, 0xe4, 0xb1, 0x43, 0x85, 0x25, 0xf8, 0x4a, 0x76, 0x22, 0x46, 0x88, 0xea, 0x89, 0xa9, 0xdd, 0x6a, 0x1b, 0xd6, 0x23, }; static const unsigned char xdh_wei25519_2052_privkey[] = { 0x60, 0x49, 0x7d, 0x44, 0x64, 0xed, 0x88, 0x23, 0xc5, 0x0f, 0xbc, 0x6b, 0x68, 0x62, 0x08, 0x26, 0xc4, 0xf6, 0x29, 0xc1, 0xd9, 0x19, 0x30, 0x58, 0xdf, 0x6b, 0xf8, 0x57, 0xc6, 0xae, 0xcc, 0x4b, }; static const unsigned char xdh_wei25519_2052_sharedsecret[] = { 0x72, 0x85, 0xfb, 0xb3, 0xf7, 0x63, 0x40, 0xa9, 0x79, 0xab, 0x6e, 0x28, 0x87, 0x27, 0xa2, 0x11, 0x33, 0x32, 0xcf, 0x93, 0x38, 0x09, 0xb0, 0x18, 0xb8, 0x73, 0x9a, 0x79, 0x6a, 0x09, 0xd0, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_2052 = { .name = "xdh_wei25519_2052", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2052_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2052_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2052_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 488 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2053 for XDH, tcId is 489 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2053_peerpubkey[] = { 0xcf, 0x80, 0xc3, 0x0f, 0xcb, 0xfd, 0x53, 0x56, 0x66, 0xca, 0x1d, 0xa4, 0x99, 0xe2, 0xe9, 0x9c, 0xc5, 0x37, 0x06, 0x3e, 0x2d, 0xe1, 0x94, 0x58, 0xfc, 0xf9, 0x2f, 0x5e, 0xe3, 0x4a, 0xcf, 0x47, }; static const unsigned char xdh_wei25519_2053_privkey[] = { 0x08, 0xc6, 0xcb, 0xe0, 0x37, 0x92, 0xa3, 0x82, 0x9f, 0x06, 0xe8, 0xad, 0x54, 0xc5, 0x5d, 0xb1, 0x13, 0x23, 0x6a, 0xc0, 0xdc, 0xc9, 0xab, 0x6a, 0x9a, 0x6b, 0x10, 0xee, 0xd1, 0x04, 0x1b, 0x48, }; static const unsigned char xdh_wei25519_2053_sharedsecret[] = { 0xda, 0xbc, 0x3b, 0xd4, 0x9f, 0x19, 0xcf, 0x70, 0x71, 0x80, 0x2e, 0x43, 0xc8, 0x63, 0xed, 0x0b, 0x1d, 0x93, 0xa8, 0x41, 0x58, 0x80, 0x98, 0xb9, 0x8a, 0x0c, 0x58, 0x1b, 0xf4, 0xfe, 0x0a, 0x11, }; static const wycheproof_xdh_test xdh_wei25519_2053 = { .name = "xdh_wei25519_2053", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2053_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2053_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2053_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 489 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2054 for XDH, tcId is 490 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2054_peerpubkey[] = { 0x69, 0x8e, 0xff, 0xe0, 0xad, 0x42, 0xe1, 0x5e, 0xe1, 0xf4, 0x6f, 0xde, 0x6f, 0xc5, 0x07, 0x4f, 0xfd, 0xa1, 0x83, 0xbc, 0xf1, 0xb2, 0xdb, 0x86, 0x47, 0xf5, 0x61, 0xdd, 0xd1, 0x91, 0xdd, 0x60, }; static const unsigned char xdh_wei25519_2054_privkey[] = { 0x50, 0x04, 0x4d, 0xa3, 0x31, 0x5d, 0xd0, 0x82, 0xe9, 0xdf, 0xb6, 0xa1, 0x99, 0x4a, 0xab, 0xb3, 0x31, 0xf5, 0x3e, 0x0d, 0x1c, 0x12, 0x63, 0x33, 0x83, 0xb2, 0xa3, 0xc8, 0x67, 0x8c, 0xfe, 0x4c, }; static const unsigned char xdh_wei25519_2054_sharedsecret[] = { 0xa6, 0x1a, 0x3b, 0x15, 0x0b, 0x47, 0x70, 0x53, 0x23, 0x73, 0x67, 0x62, 0x98, 0xc9, 0xa5, 0xda, 0x28, 0xad, 0xcc, 0x43, 0x65, 0xb0, 0x6f, 0xe0, 0x7c, 0x95, 0x9c, 0xa8, 0x0e, 0x47, 0x7a, 0x57, }; static const wycheproof_xdh_test xdh_wei25519_2054 = { .name = "xdh_wei25519_2054", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2054_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2054_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2054_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 490 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2055 for XDH, tcId is 491 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2055_peerpubkey[] = { 0xbd, 0x15, 0x65, 0xb4, 0xa3, 0xf8, 0x51, 0x5d, 0xff, 0x57, 0x7b, 0xe6, 0xdc, 0xb4, 0x14, 0x51, 0x1d, 0x3d, 0x4e, 0xc2, 0xde, 0x15, 0xe0, 0xbd, 0x45, 0xb2, 0x8e, 0x9c, 0xc4, 0xca, 0xef, 0x60, }; static const unsigned char xdh_wei25519_2055_privkey[] = { 0x28, 0x56, 0x40, 0xda, 0x7a, 0x48, 0x25, 0x2e, 0x35, 0xdd, 0xce, 0x60, 0xc1, 0x4a, 0xdd, 0xb7, 0x30, 0x97, 0xfb, 0xc9, 0xac, 0x2f, 0x87, 0xc8, 0xd2, 0x77, 0x2c, 0xe8, 0x9a, 0xa6, 0xbe, 0x4d, }; static const unsigned char xdh_wei25519_2055_sharedsecret[] = { 0x91, 0x6a, 0xb4, 0xf3, 0xbf, 0xc8, 0x32, 0x1e, 0x10, 0x87, 0xd9, 0xc5, 0x44, 0x4f, 0x8f, 0x7a, 0x43, 0xe9, 0xca, 0x6d, 0x29, 0xe7, 0xba, 0x98, 0xa1, 0x9d, 0xc0, 0x5f, 0xff, 0x34, 0xed, 0x4c, }; static const wycheproof_xdh_test xdh_wei25519_2055 = { .name = "xdh_wei25519_2055", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2055_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2055_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2055_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 491 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2056 for XDH, tcId is 492 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2056_peerpubkey[] = { 0xb8, 0x64, 0x9e, 0x13, 0x84, 0x3f, 0x80, 0xcf, 0x57, 0x02, 0x39, 0x8e, 0x4a, 0x9a, 0x8c, 0x37, 0x8f, 0x29, 0xda, 0x96, 0xdf, 0xd6, 0x57, 0x9f, 0x1e, 0xb4, 0xf7, 0xea, 0x34, 0xdf, 0x67, 0x65, }; static const unsigned char xdh_wei25519_2056_privkey[] = { 0x78, 0x32, 0x71, 0xc2, 0x11, 0x99, 0xba, 0x2e, 0x94, 0xea, 0xd9, 0x2c, 0xd9, 0xdd, 0x79, 0xf7, 0x0a, 0xab, 0x37, 0x8b, 0x59, 0x49, 0x74, 0x55, 0xd3, 0x27, 0xa5, 0x90, 0x7d, 0xaf, 0xcb, 0x4a, }; static const unsigned char xdh_wei25519_2056_sharedsecret[] = { 0x84, 0x4a, 0x5d, 0xd5, 0x13, 0x95, 0x54, 0xca, 0x7b, 0x41, 0xcb, 0xe6, 0xa4, 0x79, 0x61, 0x93, 0x91, 0x2e, 0x7a, 0xa4, 0xe2, 0x01, 0xcc, 0x68, 0x94, 0x4c, 0xe2, 0xa5, 0x57, 0x74, 0xa1, 0x0f, }; static const wycheproof_xdh_test xdh_wei25519_2056 = { .name = "xdh_wei25519_2056", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2056_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2056_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2056_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 492 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2057 for XDH, tcId is 493 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2057_peerpubkey[] = { 0xc3, 0x96, 0x93, 0x87, 0x37, 0xab, 0xdf, 0x79, 0x1e, 0x09, 0xa9, 0x7e, 0xba, 0x57, 0x7c, 0x43, 0x7d, 0x9b, 0x67, 0xc2, 0xda, 0xe9, 0x4e, 0x13, 0xea, 0xb7, 0x29, 0x6e, 0xc0, 0xfc, 0x73, 0x7e, }; static const unsigned char xdh_wei25519_2057_privkey[] = { 0xd0, 0x67, 0x6a, 0x0b, 0x9a, 0x04, 0x6c, 0x62, 0xd5, 0xb2, 0xe7, 0x40, 0xd9, 0xcc, 0x43, 0xfa, 0x37, 0x96, 0x5d, 0xea, 0x93, 0xc2, 0x32, 0x54, 0xf7, 0xbf, 0x56, 0x9f, 0x2b, 0xeb, 0xaa, 0x4a, }; static const unsigned char xdh_wei25519_2057_sharedsecret[] = { 0x10, 0x78, 0x03, 0x33, 0xb2, 0xa6, 0x17, 0x01, 0x36, 0x26, 0x5b, 0xb5, 0xeb, 0xc6, 0xc8, 0x18, 0x81, 0x7f, 0x2e, 0x48, 0xae, 0x37, 0x25, 0x28, 0xc8, 0xf3, 0x44, 0x33, 0xfd, 0xd6, 0x21, 0x5a, }; static const wycheproof_xdh_test xdh_wei25519_2057 = { .name = "xdh_wei25519_2057", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2057_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2057_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2057_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 493 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2058 for XDH, tcId is 494 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2058_peerpubkey[] = { 0x55, 0x7b, 0x82, 0x50, 0x12, 0xd9, 0x8f, 0x06, 0x5b, 0xb9, 0x5a, 0x2a, 0xb9, 0xb2, 0xd2, 0xd8, 0xb8, 0x3f, 0xd2, 0x03, 0x79, 0x12, 0x50, 0x8c, 0x26, 0x3f, 0x86, 0xd7, 0xe3, 0x6c, 0x4f, 0x24, }; static const unsigned char xdh_wei25519_2058_privkey[] = { 0x60, 0x8c, 0x84, 0xd2, 0xb7, 0x6f, 0xcc, 0xda, 0x57, 0x9e, 0x97, 0x4d, 0xb3, 0xd3, 0xb2, 0xce, 0x39, 0xa6, 0xbc, 0x0d, 0xad, 0x44, 0x05, 0x99, 0xdb, 0x22, 0x41, 0x1b, 0x60, 0x46, 0x78, 0x49, }; static const unsigned char xdh_wei25519_2058_sharedsecret[] = { 0x5c, 0xe8, 0x48, 0x42, 0xdb, 0xae, 0x8b, 0x79, 0x5b, 0x3d, 0x54, 0x53, 0x43, 0x55, 0x80, 0x45, 0x50, 0x8f, 0x27, 0x13, 0x83, 0xbf, 0xb3, 0xdd, 0x39, 0x43, 0xf4, 0x10, 0x13, 0x98, 0xc8, 0x64, }; static const wycheproof_xdh_test xdh_wei25519_2058 = { .name = "xdh_wei25519_2058", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2058_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2058_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2058_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 494 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2059 for XDH, tcId is 495 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2059_peerpubkey[] = { 0xae, 0x98, 0x29, 0x6d, 0x4a, 0x2f, 0xbc, 0xbb, 0x40, 0xb4, 0x72, 0xf4, 0x06, 0x32, 0x31, 0x60, 0x8b, 0xb1, 0x46, 0x5c, 0x22, 0x6c, 0x8a, 0x4a, 0x2d, 0xff, 0x29, 0xaf, 0xd9, 0x15, 0x88, 0x2a, }; static const unsigned char xdh_wei25519_2059_privkey[] = { 0x80, 0xf2, 0x33, 0x93, 0x6a, 0x88, 0x21, 0x93, 0x6d, 0x39, 0x11, 0x4c, 0x84, 0xd9, 0x29, 0xe7, 0x97, 0x60, 0xb2, 0x76, 0x80, 0x77, 0x9e, 0x50, 0x09, 0xe1, 0x70, 0x94, 0x10, 0xdd, 0x8e, 0x4f, }; static const unsigned char xdh_wei25519_2059_sharedsecret[] = { 0x4f, 0x11, 0xaa, 0x0c, 0x31, 0x31, 0x95, 0xf9, 0x6f, 0x25, 0xca, 0xdc, 0xbf, 0x49, 0xf0, 0x6a, 0x93, 0x2d, 0x8b, 0x05, 0x18, 0x79, 0xea, 0x53, 0x7d, 0x1c, 0x6d, 0xfe, 0xe7, 0xf3, 0x6d, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_2059 = { .name = "xdh_wei25519_2059", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2059_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2059_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2059_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 495 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2060 for XDH, tcId is 496 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2060_peerpubkey[] = { 0x8b, 0x9d, 0x24, 0x98, 0x29, 0xfb, 0xe8, 0x13, 0x33, 0xd8, 0x50, 0x50, 0xda, 0x88, 0x99, 0x8f, 0x63, 0xfa, 0xc6, 0x65, 0x67, 0x9e, 0x27, 0xdb, 0xbe, 0x21, 0xb7, 0x45, 0xdd, 0x14, 0xe1, 0x45, }; static const unsigned char xdh_wei25519_2060_privkey[] = { 0xc8, 0xd8, 0x0b, 0x1a, 0x34, 0xf2, 0x11, 0x94, 0xf0, 0x47, 0xa6, 0xf0, 0x32, 0x8b, 0xb9, 0x47, 0xe2, 0xe7, 0xaf, 0xf6, 0xa0, 0x43, 0x55, 0x3a, 0xa0, 0x7f, 0x2a, 0xbf, 0x99, 0xaa, 0xf0, 0x48, }; static const unsigned char xdh_wei25519_2060_sharedsecret[] = { 0x1d, 0x61, 0x90, 0x70, 0xbf, 0x56, 0x26, 0x06, 0x4b, 0xe1, 0x00, 0x25, 0xe7, 0x4e, 0x33, 0x6c, 0x81, 0xef, 0x31, 0x66, 0xb7, 0x43, 0xf9, 0x9c, 0x75, 0x1f, 0xb9, 0x05, 0x87, 0xc3, 0x1d, 0x7e, }; static const wycheproof_xdh_test xdh_wei25519_2060 = { .name = "xdh_wei25519_2060", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2060_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2060_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2060_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 496 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2061 for XDH, tcId is 497 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2061_peerpubkey[] = { 0x61, 0x89, 0x60, 0x93, 0xe2, 0x69, 0x7c, 0x78, 0x23, 0x0a, 0xfd, 0xda, 0x12, 0x63, 0x9c, 0xbe, 0x43, 0x42, 0x82, 0x7b, 0x8d, 0x2b, 0x09, 0x32, 0x81, 0xf1, 0x48, 0xeb, 0x60, 0xb9, 0x03, 0x4b, }; static const unsigned char xdh_wei25519_2061_privkey[] = { 0x90, 0x21, 0x47, 0x7b, 0x45, 0x23, 0x61, 0x58, 0x00, 0x59, 0x36, 0x4c, 0x6f, 0x94, 0xf4, 0x98, 0x1e, 0xe9, 0x4e, 0xa3, 0xf9, 0xb7, 0xd3, 0x74, 0x39, 0xbc, 0x82, 0xae, 0x45, 0x81, 0x6f, 0x4d, }; static const unsigned char xdh_wei25519_2061_sharedsecret[] = { 0x53, 0x2e, 0x79, 0x78, 0x61, 0xdb, 0x56, 0xb9, 0xd5, 0xdb, 0x88, 0x25, 0xfb, 0x72, 0xf8, 0x62, 0x9c, 0x24, 0x22, 0xf8, 0xab, 0xea, 0x72, 0x1a, 0xd2, 0xd7, 0xb9, 0xe7, 0x7a, 0x95, 0xb5, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_2061 = { .name = "xdh_wei25519_2061", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2061_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2061_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2061_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 497 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2062 for XDH, tcId is 498 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2062_peerpubkey[] = { 0xcc, 0xc1, 0xdc, 0x18, 0x62, 0x29, 0xdb, 0xa9, 0xa9, 0x36, 0x0a, 0x0f, 0x7f, 0xf0, 0x02, 0x47, 0xa3, 0x73, 0x26, 0x25, 0xac, 0xaa, 0xcd, 0x18, 0xea, 0x13, 0xa9, 0xa8, 0xb4, 0x0f, 0xac, 0x4f, }; static const unsigned char xdh_wei25519_2062_privkey[] = { 0x60, 0x79, 0xda, 0xe0, 0x4c, 0x40, 0xa5, 0x9e, 0xa4, 0xe0, 0xc8, 0xc1, 0x70, 0x92, 0xe4, 0xc8, 0x5e, 0xa9, 0x13, 0x3d, 0x14, 0x33, 0x07, 0x36, 0x34, 0x87, 0x83, 0x6d, 0xf4, 0xe3, 0x03, 0x49, }; static const unsigned char xdh_wei25519_2062_sharedsecret[] = { 0x4f, 0x67, 0x8b, 0x64, 0xfd, 0x1f, 0x85, 0xcb, 0xbd, 0x5f, 0x7e, 0x7f, 0x3c, 0x8a, 0xc9, 0x5e, 0xc7, 0x50, 0x0e, 0x10, 0x2e, 0x90, 0x06, 0xd6, 0xd4, 0x2f, 0x48, 0xfb, 0x24, 0x73, 0xab, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_2062 = { .name = "xdh_wei25519_2062", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2062_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2062_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2062_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2063 for XDH, tcId is 499 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2063_peerpubkey[] = { 0x69, 0xe3, 0x68, 0xc0, 0xb7, 0xe7, 0x8e, 0xb9, 0xf3, 0xa5, 0x3b, 0xf4, 0x58, 0xf6, 0xe7, 0x9d, 0xc4, 0x88, 0x3b, 0xf9, 0x45, 0x8f, 0x04, 0xa8, 0xc1, 0x2c, 0x4d, 0xdd, 0x94, 0xd6, 0x21, 0x51, }; static const unsigned char xdh_wei25519_2063_privkey[] = { 0x28, 0x1d, 0xb6, 0xa5, 0xac, 0x9a, 0x47, 0xd4, 0xa7, 0xb2, 0xb9, 0x1a, 0x87, 0xf6, 0x53, 0x6c, 0xe6, 0x2d, 0x4e, 0x51, 0x29, 0xb8, 0xd6, 0x47, 0xb9, 0x7f, 0x9c, 0x50, 0x40, 0x14, 0x89, 0x4c, }; static const unsigned char xdh_wei25519_2063_sharedsecret[] = { 0xe0, 0x69, 0xfd, 0x06, 0x70, 0x2f, 0x10, 0xf3, 0x3a, 0xdb, 0x8c, 0xf0, 0x76, 0x68, 0x80, 0x63, 0x48, 0x65, 0xb5, 0x10, 0xe2, 0xda, 0x40, 0x92, 0x41, 0xfb, 0x5f, 0x17, 0x80, 0x50, 0x51, 0x4a, }; static const wycheproof_xdh_test xdh_wei25519_2063 = { .name = "xdh_wei25519_2063", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2063_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2063_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2063_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2064 for XDH, tcId is 500 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2064_peerpubkey[] = { 0xf2, 0x1f, 0x9b, 0xad, 0xd9, 0x8d, 0xd8, 0xa1, 0x03, 0xcc, 0x2a, 0xb5, 0x48, 0x4f, 0xac, 0x6c, 0x2b, 0xfd, 0xd2, 0x67, 0x1e, 0xe6, 0xe6, 0x74, 0x13, 0x4a, 0x86, 0xb8, 0x9c, 0xee, 0x91, 0x60, }; static const unsigned char xdh_wei25519_2064_privkey[] = { 0xd8, 0x30, 0xf3, 0xc4, 0x78, 0x58, 0x29, 0xa0, 0xf9, 0x45, 0x85, 0x7e, 0x0e, 0x85, 0xe0, 0xae, 0x72, 0x37, 0x02, 0xb5, 0x77, 0x83, 0xb9, 0x33, 0xcd, 0x2a, 0x2a, 0xd0, 0x54, 0x84, 0xfe, 0x49, }; static const unsigned char xdh_wei25519_2064_sharedsecret[] = { 0xfe, 0xe2, 0x18, 0xeb, 0x1f, 0x92, 0x86, 0x44, 0x86, 0xe8, 0x3c, 0x17, 0x31, 0xf0, 0x4b, 0xb8, 0xc7, 0xe6, 0xd7, 0x14, 0x3e, 0x39, 0x15, 0xbc, 0xbf, 0x80, 0xfe, 0x03, 0xff, 0x69, 0xdc, 0x77, }; static const wycheproof_xdh_test xdh_wei25519_2064 = { .name = "xdh_wei25519_2064", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2064_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2064_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2064_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2065 for XDH, tcId is 501 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2065_peerpubkey[] = { 0xe8, 0x53, 0x06, 0x2b, 0x2d, 0x6f, 0x38, 0xd0, 0x21, 0xd6, 0x45, 0x16, 0x3e, 0xa2, 0x08, 0xd0, 0xe1, 0x93, 0xa4, 0x79, 0xf1, 0x1f, 0x99, 0x97, 0x1b, 0x98, 0xe2, 0x11, 0x88, 0xfd, 0x0b, 0x2c, }; static const unsigned char xdh_wei25519_2065_privkey[] = { 0x10, 0x23, 0x0b, 0xd0, 0x72, 0x1f, 0x4c, 0x8c, 0x4b, 0x92, 0x18, 0x81, 0xdd, 0x88, 0xc6, 0x03, 0xaf, 0x50, 0x1e, 0xe8, 0x0e, 0x21, 0x02, 0xf8, 0xac, 0xc3, 0x0c, 0xf8, 0xb2, 0xac, 0xd3, 0x49, }; static const unsigned char xdh_wei25519_2065_sharedsecret[] = { 0x64, 0xbd, 0xfa, 0x02, 0x07, 0xa1, 0x74, 0xca, 0x17, 0xee, 0xba, 0x8d, 0xf7, 0x4d, 0x79, 0xb2, 0x5f, 0x54, 0x51, 0x0e, 0x61, 0x74, 0x92, 0x30, 0x34, 0xa4, 0xd6, 0xee, 0x0c, 0x16, 0x7e, 0x7b, }; static const wycheproof_xdh_test xdh_wei25519_2065 = { .name = "xdh_wei25519_2065", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2065_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2065_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2065_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 501 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2066 for XDH, tcId is 502 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2066_peerpubkey[] = { 0x36, 0x2e, 0xb9, 0x2d, 0xab, 0x9f, 0xb2, 0x9f, 0x7e, 0xd0, 0xe0, 0x38, 0x43, 0xdc, 0xc1, 0x57, 0x97, 0x92, 0x8c, 0x2b, 0x4e, 0x51, 0xec, 0x26, 0x02, 0x04, 0x17, 0x9c, 0x1c, 0x12, 0x94, 0x5f, }; static const unsigned char xdh_wei25519_2066_privkey[] = { 0xf0, 0xa3, 0x4d, 0x6d, 0x76, 0x89, 0x6e, 0x17, 0xcb, 0x8f, 0x66, 0xfe, 0xda, 0x23, 0x11, 0x5f, 0xfb, 0x96, 0xf2, 0x46, 0xb8, 0x23, 0xbb, 0x63, 0xde, 0xc0, 0x83, 0x35, 0x78, 0x7d, 0xe7, 0x4c, }; static const unsigned char xdh_wei25519_2066_sharedsecret[] = { 0xd7, 0xf4, 0x58, 0x3e, 0xe4, 0xfe, 0x86, 0xaf, 0x3a, 0x3f, 0x1d, 0xfc, 0xb2, 0x95, 0xba, 0x3a, 0x3e, 0x37, 0xbc, 0xed, 0x7b, 0x9c, 0x6f, 0x00, 0x0a, 0x95, 0x33, 0x65, 0x30, 0x31, 0x89, 0x02, }; static const wycheproof_xdh_test xdh_wei25519_2066 = { .name = "xdh_wei25519_2066", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2066_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2066_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2066_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 502 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2067 for XDH, tcId is 503 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2067_peerpubkey[] = { 0xff, 0x54, 0x3f, 0x1e, 0x81, 0x99, 0x6e, 0x88, 0x63, 0x1f, 0x03, 0x0c, 0xeb, 0xa7, 0xe6, 0x03, 0xb1, 0x30, 0x33, 0xef, 0xd2, 0x05, 0xe6, 0x8b, 0xd3, 0x6b, 0x28, 0x46, 0x81, 0x34, 0xaa, 0x73, }; static const unsigned char xdh_wei25519_2067_privkey[] = { 0x90, 0x73, 0xc1, 0xd0, 0xa1, 0x73, 0xc7, 0xff, 0x02, 0xdc, 0x96, 0x6a, 0x16, 0x59, 0x93, 0xd9, 0xc4, 0xc9, 0x35, 0x75, 0x14, 0xf7, 0xa6, 0xbb, 0x7a, 0xaa, 0x4b, 0x08, 0x27, 0x71, 0x89, 0x48, }; static const unsigned char xdh_wei25519_2067_sharedsecret[] = { 0xc1, 0xb5, 0xe5, 0xf4, 0x40, 0x1c, 0x98, 0xfa, 0x14, 0xeb, 0xa8, 0xaa, 0xfa, 0xe3, 0x0a, 0x64, 0x1b, 0xfd, 0x8f, 0xb1, 0x32, 0xbe, 0x03, 0x41, 0x3f, 0x3b, 0xf2, 0x92, 0x90, 0xd4, 0x9e, 0x0b, }; static const wycheproof_xdh_test xdh_wei25519_2067 = { .name = "xdh_wei25519_2067", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2067_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2067_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2067_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 503 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2068 for XDH, tcId is 504 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2068_peerpubkey[] = { 0x90, 0xef, 0x70, 0x84, 0x4e, 0xad, 0x16, 0x13, 0xf6, 0x9d, 0xf7, 0xd7, 0x8c, 0x05, 0x78, 0x13, 0xf8, 0x66, 0xc0, 0xd9, 0x5e, 0x6d, 0x22, 0xca, 0xee, 0x4a, 0x01, 0x2b, 0x9c, 0x1c, 0x4b, 0x33, }; static const unsigned char xdh_wei25519_2068_privkey[] = { 0xb0, 0xc1, 0x82, 0x25, 0x66, 0xe0, 0x16, 0xc1, 0x2a, 0xe3, 0x5e, 0xc0, 0x35, 0xed, 0xd0, 0x9a, 0xf3, 0xcb, 0x7a, 0x48, 0xf5, 0x5c, 0x90, 0x28, 0xe0, 0x5e, 0x11, 0x78, 0xa8, 0xc3, 0x82, 0x4e, }; static const unsigned char xdh_wei25519_2068_sharedsecret[] = { 0x93, 0x69, 0xeb, 0xb3, 0xd2, 0xb7, 0x44, 0x34, 0x1c, 0xba, 0x77, 0x30, 0x27, 0x19, 0xa4, 0xb2, 0xd6, 0x3a, 0xff, 0x61, 0x28, 0x72, 0xf8, 0x6d, 0x98, 0x77, 0xa7, 0x6b, 0xc9, 0x19, 0xca, 0x1c, }; static const wycheproof_xdh_test xdh_wei25519_2068 = { .name = "xdh_wei25519_2068", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2068_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2068_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2068_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 504 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2069 for XDH, tcId is 505 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2069_peerpubkey[] = { 0x88, 0xc1, 0xae, 0x57, 0x5a, 0xd0, 0x73, 0xdd, 0xa6, 0x6c, 0x6e, 0xac, 0xb7, 0xb7, 0xf4, 0x36, 0xe1, 0xf8, 0xad, 0x72, 0xa0, 0xdb, 0x5c, 0x04, 0xe5, 0x66, 0x0b, 0x7b, 0x71, 0x9e, 0x4c, 0x4b, }; static const unsigned char xdh_wei25519_2069_privkey[] = { 0xe0, 0x6f, 0xe6, 0x4e, 0x21, 0x17, 0x79, 0x6f, 0x99, 0x7b, 0xbc, 0xd3, 0xbc, 0xad, 0x30, 0x67, 0xcf, 0x12, 0x91, 0x64, 0x0a, 0x3a, 0x64, 0x3f, 0xb3, 0x59, 0x80, 0x9a, 0x40, 0x16, 0x83, 0x4d, }; static const unsigned char xdh_wei25519_2069_sharedsecret[] = { 0x33, 0x53, 0x94, 0xbe, 0x9c, 0x15, 0x49, 0x01, 0xc0, 0xb4, 0x06, 0x33, 0x00, 0x00, 0x18, 0x04, 0xb1, 0xcd, 0x01, 0xb2, 0x7f, 0xa5, 0x62, 0xe4, 0x4f, 0x33, 0x02, 0x16, 0x88, 0x37, 0x16, 0x6e, }; static const wycheproof_xdh_test xdh_wei25519_2069 = { .name = "xdh_wei25519_2069", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2069_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2069_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2069_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 505 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2070 for XDH, tcId is 506 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2070_peerpubkey[] = { 0xdc, 0xff, 0xc4, 0xc1, 0xe1, 0xfb, 0xa5, 0xfd, 0xa9, 0xd5, 0xc9, 0x84, 0x21, 0xd9, 0x9c, 0x25, 0x7a, 0xfa, 0x90, 0x92, 0x1b, 0xc2, 0x12, 0xa0, 0x46, 0xd9, 0x0f, 0x66, 0x83, 0xe8, 0xa4, 0x67, }; static const unsigned char xdh_wei25519_2070_privkey[] = { 0x70, 0x7e, 0xe8, 0x1f, 0x11, 0x3a, 0x24, 0x4c, 0x9d, 0x87, 0x60, 0x8b, 0x12, 0x15, 0x8c, 0x50, 0xf9, 0xac, 0x1f, 0x2c, 0x89, 0x48, 0xd1, 0x70, 0xad, 0x16, 0xab, 0x0a, 0xd8, 0x66, 0xd7, 0x4b, }; static const unsigned char xdh_wei25519_2070_sharedsecret[] = { 0x7e, 0xcd, 0xd5, 0x4c, 0x5e, 0x15, 0xf7, 0xb4, 0x06, 0x1b, 0xe2, 0xc3, 0x0b, 0x5a, 0x48, 0x84, 0xa0, 0x25, 0x65, 0x81, 0xf8, 0x7d, 0xf6, 0x0d, 0x57, 0x9a, 0x33, 0x45, 0x65, 0x3e, 0xb6, 0x41, }; static const wycheproof_xdh_test xdh_wei25519_2070 = { .name = "xdh_wei25519_2070", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2070_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2070_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2070_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 506 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2071 for XDH, tcId is 507 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2071_peerpubkey[] = { 0x6c, 0x00, 0x44, 0xcd, 0x10, 0x57, 0x8c, 0x5a, 0xff, 0x1f, 0xf4, 0x91, 0x7b, 0x04, 0x1b, 0x76, 0xc9, 0xa9, 0xae, 0x23, 0x66, 0x4e, 0xb8, 0xcf, 0x97, 0x8b, 0xd7, 0xaa, 0x19, 0x2c, 0xf2, 0x49, }; static const unsigned char xdh_wei25519_2071_privkey[] = { 0x70, 0x89, 0x65, 0x4b, 0xaa, 0xcb, 0xb6, 0x5b, 0xd0, 0x0c, 0xd8, 0xcb, 0x9d, 0xe4, 0x68, 0x0e, 0x74, 0x80, 0x75, 0xe8, 0x84, 0x2c, 0xa6, 0x9d, 0x44, 0x8f, 0xb5, 0x0f, 0xea, 0x85, 0xe7, 0x4e, }; static const unsigned char xdh_wei25519_2071_sharedsecret[] = { 0x0d, 0x8c, 0x21, 0xfa, 0x80, 0x0e, 0xe6, 0x3c, 0xe5, 0xe4, 0x73, 0xd4, 0xc2, 0x97, 0x54, 0x95, 0x06, 0x2d, 0x8a, 0xfa, 0x65, 0x50, 0x91, 0x12, 0x2c, 0xb4, 0x17, 0x99, 0xd3, 0x74, 0x59, 0x4f, }; static const wycheproof_xdh_test xdh_wei25519_2071 = { .name = "xdh_wei25519_2071", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2071_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2071_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2071_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 507 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2072 for XDH, tcId is 508 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2072_peerpubkey[] = { 0xd9, 0x08, 0x9d, 0xe9, 0x02, 0xe1, 0x43, 0xdc, 0xd9, 0x10, 0x7e, 0x5a, 0x33, 0x93, 0xa3, 0xf7, 0xfe, 0x05, 0xd9, 0x26, 0xc3, 0x57, 0xb4, 0x7e, 0x30, 0x7a, 0x23, 0x6c, 0xb5, 0x90, 0xfd, 0x64, }; static const unsigned char xdh_wei25519_2072_privkey[] = { 0x80, 0x89, 0x78, 0x4c, 0x52, 0xcd, 0x67, 0xe4, 0x53, 0x6e, 0x56, 0x82, 0x18, 0xc7, 0xb7, 0x03, 0x3b, 0x28, 0x41, 0x3f, 0x94, 0x2f, 0xca, 0x24, 0xed, 0x69, 0xe4, 0x34, 0x96, 0xef, 0xa1, 0x4b, }; static const unsigned char xdh_wei25519_2072_sharedsecret[] = { 0xdb, 0x6f, 0xec, 0x44, 0xbf, 0x11, 0x83, 0x16, 0xa6, 0xbd, 0xfb, 0xae, 0x9a, 0xf4, 0x47, 0xba, 0xed, 0xe4, 0xd8, 0x2d, 0xaa, 0x16, 0xbe, 0xd5, 0x96, 0xea, 0x6f, 0x05, 0xd4, 0xa5, 0x14, 0x00, }; static const wycheproof_xdh_test xdh_wei25519_2072 = { .name = "xdh_wei25519_2072", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2072_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2072_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2072_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 508 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2073 for XDH, tcId is 509 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2073_peerpubkey[] = { 0x8c, 0x4a, 0x26, 0xaa, 0x31, 0x9c, 0x2c, 0xc4, 0xa4, 0x15, 0x8c, 0x2b, 0xc6, 0x9a, 0x0d, 0x5b, 0x34, 0x0b, 0x60, 0x62, 0x8a, 0x14, 0xcf, 0x31, 0xbb, 0x0a, 0xe5, 0xdd, 0xc3, 0x8a, 0xe8, 0x66, }; static const unsigned char xdh_wei25519_2073_privkey[] = { 0x00, 0xe7, 0x3e, 0x4e, 0x01, 0x31, 0x48, 0xb9, 0xf0, 0x52, 0x73, 0xba, 0xd6, 0x26, 0xbb, 0x12, 0x6a, 0x40, 0xec, 0x45, 0x58, 0xf5, 0x42, 0x50, 0x96, 0xb4, 0x89, 0x47, 0xe0, 0xa9, 0xde, 0x4a, }; static const unsigned char xdh_wei25519_2073_sharedsecret[] = { 0xec, 0xc1, 0x20, 0x4b, 0xc7, 0x53, 0xc4, 0xce, 0xc4, 0xc9, 0x05, 0x9f, 0xd7, 0xb5, 0x04, 0x94, 0x4e, 0xbf, 0x99, 0x5a, 0xb1, 0xb1, 0xd4, 0x9f, 0x0b, 0x3b, 0x32, 0x53, 0x53, 0xbe, 0x3a, 0x15, }; static const wycheproof_xdh_test xdh_wei25519_2073 = { .name = "xdh_wei25519_2073", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2073_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2073_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2073_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 509 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2074 for XDH, tcId is 510 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2074_peerpubkey[] = { 0xce, 0x72, 0x95, 0xd1, 0x22, 0x7c, 0x90, 0x62, 0xaa, 0xb9, 0xcf, 0x02, 0xfc, 0x56, 0x71, 0xfb, 0x81, 0x63, 0x2e, 0x72, 0x53, 0x67, 0xf1, 0x31, 0xd4, 0x12, 0x28, 0x24, 0xa6, 0x13, 0x2d, 0x68, }; static const unsigned char xdh_wei25519_2074_privkey[] = { 0x78, 0xed, 0x4c, 0x9b, 0xf9, 0xf4, 0x4d, 0xb8, 0xd9, 0x33, 0x88, 0x98, 0x51, 0x91, 0xec, 0xf5, 0x92, 0x26, 0xb9, 0xc1, 0x20, 0x5f, 0xe7, 0xe7, 0x62, 0xc3, 0x27, 0x58, 0x1c, 0x75, 0x88, 0x4e, }; static const unsigned char xdh_wei25519_2074_sharedsecret[] = { 0x37, 0x40, 0xde, 0x29, 0x7f, 0xf0, 0x12, 0x20, 0x67, 0x95, 0x1e, 0x89, 0x85, 0x24, 0x71, 0x23, 0x44, 0x0e, 0x0f, 0x27, 0x17, 0x1d, 0xa9, 0x9e, 0x26, 0x3d, 0x5b, 0x44, 0x50, 0xf5, 0x9f, 0x3d, }; static const wycheproof_xdh_test xdh_wei25519_2074 = { .name = "xdh_wei25519_2074", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2074_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2074_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2074_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 510 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2075 for XDH, tcId is 511 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2075_peerpubkey[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const unsigned char xdh_wei25519_2075_privkey[] = { 0xa0, 0x23, 0xcd, 0xd0, 0x83, 0xef, 0x5b, 0xb8, 0x2f, 0x10, 0xd6, 0x2e, 0x59, 0xe1, 0x5a, 0x68, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, }; static const unsigned char xdh_wei25519_2075_sharedsecret[] = { 0x6c, 0x05, 0x87, 0x13, 0x52, 0xa4, 0x51, 0xdb, 0xe1, 0x82, 0xed, 0x5e, 0x6b, 0xa5, 0x54, 0xf2, 0x03, 0x44, 0x56, 0xff, 0xe0, 0x41, 0xa0, 0x54, 0xff, 0x9c, 0xc5, 0x6b, 0x8e, 0x94, 0x63, 0x76, }; static const wycheproof_xdh_test xdh_wei25519_2075 = { .name = "xdh_wei25519_2075", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2075_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2075_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2075_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "private key == -1 (mod order), tcId is 511 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2076 for XDH, tcId is 512 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2076_peerpubkey[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const unsigned char xdh_wei25519_2076_privkey[] = { 0x58, 0x08, 0x3d, 0xd2, 0x61, 0xad, 0x91, 0xef, 0xf9, 0x52, 0x32, 0x2e, 0xc8, 0x24, 0xc6, 0x82, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, }; static const unsigned char xdh_wei25519_2076_sharedsecret[] = { 0x2e, 0xae, 0x5e, 0xc3, 0xdd, 0x49, 0x4e, 0x9f, 0x2d, 0x37, 0xd2, 0x58, 0xf8, 0x73, 0xa8, 0xe6, 0xe9, 0xd0, 0xdb, 0xd1, 0xe3, 0x83, 0xef, 0x64, 0xd9, 0x8b, 0xb9, 0x1b, 0x3e, 0x0b, 0xe0, 0x35, }; static const wycheproof_xdh_test xdh_wei25519_2076 = { .name = "xdh_wei25519_2076", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2076_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2076_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2076_sharedsecret, .sharedsecretlen = 32, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 512 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2077 for XDH, tcId is 513 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2077_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_2077_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_2077_sharedsecret[] = { 0x63, 0xef, 0x7d, 0x1c, 0x58, 0x64, 0x76, 0xec, 0x78, 0xbb, 0x7f, 0x74, 0x7e, 0x32, 0x1e, 0x01, 0x10, 0x21, 0x66, 0xbf, 0x96, 0x7a, 0x9e, 0xa9, 0xba, 0x97, 0x41, 0xf4, 0x9d, 0x43, 0x95, 0x10, }; static const wycheproof_xdh_test xdh_wei25519_2077 = { .name = "xdh_wei25519_2077", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2077_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2077_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2077_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 513 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2078 for XDH, tcId is 514 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2078_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_2078_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_2078_sharedsecret[] = { 0x8b, 0x98, 0xef, 0x4d, 0x6b, 0xf3, 0x0d, 0xf7, 0xf8, 0x8e, 0x58, 0xd5, 0x15, 0x05, 0xd3, 0x7e, 0xd6, 0x84, 0x5a, 0x96, 0x9f, 0xe5, 0x98, 0x74, 0x7c, 0x03, 0x3d, 0xcd, 0x08, 0x01, 0x40, 0x65, }; static const wycheproof_xdh_test xdh_wei25519_2078 = { .name = "xdh_wei25519_2078", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2078_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2078_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2078_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 514 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2079 for XDH, tcId is 515 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2079_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_2079_privkey[] = { 0x48, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, }; static const unsigned char xdh_wei25519_2079_sharedsecret[] = { 0xcf, 0xa8, 0x3e, 0x09, 0x88, 0x29, 0xfe, 0x82, 0xfd, 0x4c, 0x14, 0x35, 0x5f, 0x70, 0x82, 0x90, 0x15, 0x21, 0x99, 0x42, 0xc0, 0x1e, 0x2b, 0x85, 0xbd, 0xd9, 0xac, 0x48, 0x89, 0xec, 0x29, 0x21, }; static const wycheproof_xdh_test xdh_wei25519_2079 = { .name = "xdh_wei25519_2079", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2079_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2079_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2079_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 515 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2080 for XDH, tcId is 516 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2080_peerpubkey[] = { 0x3e, 0x3e, 0x77, 0x08, 0xef, 0x72, 0xa6, 0xdd, 0x78, 0xd8, 0x58, 0x02, 0x50, 0x89, 0x76, 0x5b, 0x1c, 0x30, 0xa1, 0x97, 0x15, 0xac, 0x19, 0xe8, 0xd9, 0x17, 0x06, 0x7d, 0x20, 0x8e, 0x06, 0x66, }; static const unsigned char xdh_wei25519_2080_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_2080_sharedsecret[] = { 0x47, 0x82, 0x03, 0x6d, 0x6b, 0x13, 0x6c, 0xa4, 0x4a, 0x2f, 0xd7, 0x67, 0x4d, 0x8a, 0xfb, 0x01, 0x69, 0x94, 0x32, 0x30, 0xac, 0x8e, 0xab, 0x51, 0x60, 0xa2, 0x12, 0x37, 0x6c, 0x06, 0xd7, 0x78, }; static const wycheproof_xdh_test xdh_wei25519_2080 = { .name = "xdh_wei25519_2080", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2080_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2080_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2080_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 516 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2081 for XDH, tcId is 517 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2081_peerpubkey[] = { 0x9f, 0x40, 0xbb, 0x30, 0xf6, 0x8a, 0xb6, 0x7b, 0x1c, 0x4b, 0x8b, 0x66, 0x49, 0x82, 0xfd, 0xab, 0x04, 0xff, 0x38, 0x5c, 0xd8, 0x50, 0xde, 0xac, 0x73, 0x2f, 0x7f, 0xb7, 0x05, 0xe6, 0x01, 0x3a, }; static const unsigned char xdh_wei25519_2081_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_2081_sharedsecret[] = { 0x65, 0xfc, 0x1e, 0x74, 0x53, 0xa3, 0xf8, 0xc7, 0xeb, 0xcd, 0x57, 0x7a, 0xde, 0x4b, 0x8e, 0xfe, 0x10, 0x35, 0xef, 0xc1, 0x81, 0xab, 0x3b, 0xdb, 0x2f, 0xcc, 0x74, 0x84, 0xcb, 0xcf, 0x1e, 0x4e, }; static const wycheproof_xdh_test xdh_wei25519_2081 = { .name = "xdh_wei25519_2081", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2081_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2081_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2081_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 517 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2082 for XDH, tcId is 518 in file x25519_test.json */ #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) static const unsigned char xdh_wei25519_2082_peerpubkey[] = { 0xbe, 0x3b, 0x3e, 0xde, 0xff, 0xaf, 0x83, 0xc5, 0x4a, 0xe5, 0x26, 0x37, 0x9b, 0x23, 0xdd, 0x79, 0xf1, 0xcb, 0x41, 0x44, 0x6e, 0x36, 0x87, 0xfe, 0xf3, 0x47, 0xeb, 0x9b, 0x5f, 0x0d, 0xc3, 0x08, }; static const unsigned char xdh_wei25519_2082_privkey[] = { 0xb8, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, }; static const unsigned char xdh_wei25519_2082_sharedsecret[] = { 0xe3, 0xc6, 0x49, 0xbe, 0xae, 0x7c, 0xc4, 0xa0, 0x69, 0x8d, 0x51, 0x9a, 0x0a, 0x61, 0x93, 0x2e, 0xe5, 0x49, 0x3c, 0xbb, 0x59, 0x0d, 0xbe, 0x14, 0xdb, 0x02, 0x74, 0xcc, 0x86, 0x11, 0xf9, 0x14, }; static const wycheproof_xdh_test xdh_wei25519_2082 = { .name = "xdh_wei25519_2082", .xdh_alg = X25519, .curve = &wei25519_str_params, .peerpubkey = xdh_wei25519_2082_peerpubkey, .peerpubkeylen = 32, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei25519_2082_privkey, .privkeylen = 32, .sharedsecret = xdh_wei25519_2082_sharedsecret, .sharedsecretlen = 32, .result = 1, .comment = "special case private key, tcId is 518 in file x25519_test.json", }; #endif /* defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) */ /* Test 2083 for XDH, tcId is 1 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2083_peerpubkey[] = { 0xf8, 0x07, 0x3f, 0xc0, 0x1c, 0x83, 0x58, 0x36, 0x2c, 0x08, 0x74, 0x0c, 0x91, 0x4b, 0x41, 0x98, 0x47, 0xef, 0x1e, 0x40, 0x9f, 0x4e, 0x40, 0xd9, 0x44, 0x0f, 0xeb, 0xc2, 0x6f, 0x00, 0x55, 0x1a, 0xdb, 0x1c, 0x37, 0xc6, 0xc2, 0xa8, 0x7d, 0x82, 0x83, 0xb8, 0xcb, 0x45, 0x3e, 0x92, 0x8a, 0x0d, 0x42, 0x79, 0x3f, 0x72, 0x89, 0x4e, 0x0f, 0x81, }; static const unsigned char xdh_wei448_2083_privkey[] = { 0xe4, 0x1c, 0x63, 0xd5, 0x15, 0x9c, 0x89, 0xde, 0x12, 0x16, 0x3f, 0xde, 0x9d, 0x04, 0xcf, 0x1f, 0x43, 0x0f, 0x34, 0x6b, 0x8b, 0x2c, 0x1f, 0x2a, 0x4b, 0x1f, 0x5a, 0xee, 0x63, 0xd1, 0x7a, 0xec, 0x29, 0xd4, 0xb1, 0xde, 0xbf, 0x8b, 0x64, 0x57, 0xe7, 0x80, 0x9d, 0x2b, 0x15, 0xff, 0x97, 0x79, 0xc9, 0x7b, 0xec, 0xb0, 0x4b, 0x82, 0x4e, 0xfa, }; static const unsigned char xdh_wei448_2083_sharedsecret[] = { 0xac, 0xd4, 0x96, 0xce, 0xb5, 0xf6, 0x8b, 0xf9, 0xc2, 0x67, 0x19, 0x6b, 0x40, 0x5f, 0x59, 0x70, 0x1a, 0x40, 0xec, 0x88, 0x74, 0x4b, 0x7e, 0x5e, 0x60, 0xbf, 0x8f, 0x81, 0xe8, 0xb1, 0x3d, 0xf4, 0x48, 0xef, 0xe4, 0x02, 0x00, 0x17, 0x50, 0xed, 0xb0, 0xb6, 0x95, 0xa0, 0x51, 0x2f, 0x08, 0xc5, 0x72, 0xa2, 0xe3, 0x56, 0x49, 0x3d, 0x17, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2083 = { .name = "xdh_wei448_2083", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2083_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2083_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2083_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "normal case, tcId is 1 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2084 for XDH, tcId is 2 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2084_peerpubkey[] = { 0xf8, 0xd9, 0x14, 0x43, 0x04, 0xbd, 0x8c, 0x4d, 0x1f, 0xa6, 0x89, 0x57, 0x02, 0x6f, 0xc5, 0xc1, 0xb7, 0x50, 0x20, 0x36, 0x5b, 0x09, 0x91, 0xd2, 0xeb, 0x15, 0x41, 0xa4, 0xdf, 0xa3, 0xf1, 0x5e, 0x7a, 0x70, 0x28, 0x5c, 0xd3, 0x82, 0x8b, 0x52, 0x9b, 0xec, 0xe0, 0x21, 0xd3, 0xe0, 0x3a, 0x41, 0x5e, 0x4f, 0x8c, 0x02, 0xeb, 0x89, 0xef, 0x19, }; static const unsigned char xdh_wei448_2084_privkey[] = { 0xfc, 0xb4, 0xed, 0x3a, 0xfa, 0x64, 0xc8, 0x4b, 0x78, 0x44, 0x96, 0x5c, 0x84, 0x8a, 0xd8, 0x88, 0x19, 0x24, 0x19, 0x11, 0xcd, 0x65, 0xd3, 0x5a, 0x2b, 0xc2, 0x6a, 0x07, 0x3c, 0x08, 0xd8, 0xe1, 0x91, 0xbc, 0xfa, 0x04, 0xb2, 0xdb, 0xd9, 0x4e, 0x21, 0x9f, 0x74, 0x6d, 0xf9, 0x29, 0xd3, 0x29, 0x8e, 0x03, 0xaf, 0xeb, 0x73, 0xb4, 0xfb, 0xdb, }; static const unsigned char xdh_wei448_2084_sharedsecret[] = { 0x3f, 0x97, 0xc3, 0xf8, 0x7b, 0x96, 0x7d, 0xaa, 0xc4, 0xe5, 0xd1, 0x2e, 0xae, 0x05, 0xa8, 0x0c, 0x75, 0x1c, 0x3b, 0x3e, 0x10, 0x70, 0x88, 0x6b, 0x08, 0x3e, 0x90, 0xbb, 0x8f, 0x63, 0xcf, 0x76, 0xae, 0xa0, 0xcd, 0x4b, 0xf5, 0x03, 0x21, 0x87, 0xe5, 0x2b, 0x1d, 0x05, 0x13, 0xc9, 0x6f, 0x1a, 0xc8, 0x30, 0xde, 0xbc, 0xd3, 0x78, 0x87, 0xab, }; static const wycheproof_xdh_test xdh_wei448_2084 = { .name = "xdh_wei448_2084", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2084_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2084_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2084_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 2 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2085 for XDH, tcId is 3 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2085_peerpubkey[] = { 0x08, 0xeb, 0xf6, 0xed, 0xaa, 0x4f, 0x1e, 0x97, 0xf7, 0x67, 0x5e, 0x98, 0x39, 0xc6, 0x34, 0x9f, 0x71, 0xd8, 0x42, 0xef, 0x0e, 0xfe, 0x1e, 0x21, 0x17, 0x7b, 0x53, 0xdc, 0x40, 0x92, 0x70, 0x45, 0x7b, 0xb1, 0xea, 0x58, 0xe5, 0x76, 0xf5, 0xcc, 0xc6, 0x82, 0xe9, 0x2c, 0xcc, 0x9f, 0xf3, 0xc6, 0x54, 0x2a, 0x0a, 0x6e, 0xcd, 0x32, 0xe7, 0xe0, }; static const unsigned char xdh_wei448_2085_privkey[] = { 0xfc, 0xc8, 0x90, 0x42, 0xab, 0xb5, 0x58, 0xba, 0xf3, 0x2b, 0xb9, 0xa7, 0xf9, 0xea, 0x4b, 0x27, 0x4e, 0x10, 0xe1, 0x3d, 0xb6, 0x5b, 0xee, 0xdb, 0x2a, 0xca, 0x58, 0xea, 0x95, 0xc0, 0xe0, 0x84, 0x12, 0xab, 0xdd, 0x4c, 0x56, 0x84, 0x3e, 0xe9, 0xe2, 0x15, 0x49, 0xbd, 0xca, 0x11, 0x01, 0xfd, 0x0c, 0xa0, 0xf3, 0x0d, 0xe6, 0xeb, 0xce, 0x8e, }; static const unsigned char xdh_wei448_2085_sharedsecret[] = { 0x03, 0xaa, 0x74, 0xc7, 0x30, 0x02, 0x43, 0x38, 0x58, 0x04, 0x13, 0x3a, 0x75, 0x06, 0x35, 0xa9, 0xe0, 0xd5, 0xab, 0x8d, 0x46, 0x12, 0x6a, 0xba, 0xa9, 0x59, 0x56, 0x60, 0xda, 0x17, 0x2e, 0x9b, 0x1f, 0xe9, 0x29, 0x02, 0xbb, 0x71, 0x69, 0x71, 0x22, 0xf0, 0xd6, 0xc3, 0xff, 0x45, 0xb2, 0xa8, 0x97, 0xb7, 0x77, 0x38, 0x0f, 0xfe, 0x49, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_2085 = { .name = "xdh_wei448_2085", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2085_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2085_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2085_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 3 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2086 for XDH, tcId is 4 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2086_peerpubkey[] = { 0x69, 0xa4, 0x38, 0xc3, 0x0c, 0x11, 0xb4, 0xed, 0x55, 0x9c, 0x03, 0xab, 0x43, 0x0a, 0x64, 0xef, 0xb0, 0x1c, 0x98, 0xfe, 0x62, 0x32, 0x80, 0x3c, 0x07, 0x67, 0xa4, 0x03, 0x28, 0x32, 0x6d, 0xa2, 0x8c, 0x34, 0x91, 0xe1, 0x91, 0x51, 0xb4, 0xa8, 0x13, 0xaa, 0xdf, 0x6c, 0x96, 0x63, 0xd6, 0xdc, 0xd4, 0xcc, 0x9b, 0x07, 0x6c, 0x7e, 0x9f, 0xb5, }; static const unsigned char xdh_wei448_2086_privkey[] = { 0xe0, 0xaa, 0xe9, 0x6d, 0x22, 0xfa, 0x49, 0xd3, 0x24, 0x60, 0x1b, 0xb8, 0xb2, 0xdd, 0x9f, 0x73, 0x67, 0x09, 0xdf, 0x55, 0x7b, 0x8c, 0xb4, 0x69, 0xd6, 0xe2, 0xbe, 0xfa, 0x86, 0x35, 0x99, 0x8f, 0x51, 0x22, 0x2a, 0xde, 0xa9, 0x74, 0x10, 0x58, 0x8c, 0x5f, 0x5f, 0x4e, 0xf6, 0x18, 0x87, 0xc9, 0x4f, 0xea, 0x9a, 0x4e, 0x33, 0x24, 0x45, 0xbc, }; static const unsigned char xdh_wei448_2086_sharedsecret[] = { 0xc0, 0x85, 0x3d, 0xba, 0x67, 0x2e, 0x8c, 0x3e, 0x05, 0xde, 0x82, 0xd3, 0x44, 0xde, 0x1c, 0x72, 0xfc, 0xd9, 0xc8, 0x39, 0x1b, 0x17, 0x7f, 0x36, 0x33, 0x97, 0x81, 0x82, 0x70, 0xe9, 0x28, 0xbb, 0x0d, 0xe2, 0xe5, 0x50, 0x12, 0x8a, 0x6f, 0x4e, 0xa6, 0xde, 0x57, 0x93, 0x08, 0xe7, 0xc3, 0xd8, 0x23, 0xb3, 0xe6, 0x51, 0x16, 0xdf, 0x43, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_2086 = { .name = "xdh_wei448_2086", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2086_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2086_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2086_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 4 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2087 for XDH, tcId is 5 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2087_peerpubkey[] = { 0x2c, 0x19, 0xd1, 0x2c, 0x78, 0x3c, 0xe4, 0xc6, 0x76, 0x03, 0xe0, 0x2a, 0x09, 0x3d, 0xdc, 0x1e, 0x14, 0x8b, 0x9f, 0x5f, 0x84, 0x53, 0xb1, 0x53, 0xe6, 0xd7, 0x26, 0x29, 0xb1, 0xf5, 0x0e, 0x60, 0x9f, 0xec, 0x8d, 0x0e, 0xe2, 0x3e, 0xee, 0xe7, 0x69, 0xff, 0xb9, 0x09, 0xdb, 0x4b, 0xad, 0xac, 0xdb, 0x99, 0xd5, 0xb9, 0x90, 0xd7, 0x58, 0x25, }; static const unsigned char xdh_wei448_2087_privkey[] = { 0x60, 0x1f, 0x19, 0x76, 0x9c, 0xd4, 0x9e, 0x82, 0x8b, 0x60, 0x0e, 0xe3, 0x73, 0xf1, 0xd0, 0x51, 0x4a, 0xbb, 0xd8, 0x95, 0xb5, 0x43, 0x67, 0x87, 0x60, 0xaa, 0xaf, 0x30, 0x0d, 0x4d, 0x1f, 0xaa, 0xf7, 0x3e, 0x80, 0x1e, 0x56, 0x88, 0x15, 0x28, 0x12, 0xae, 0x96, 0x9d, 0xb5, 0x22, 0xba, 0x8f, 0x3e, 0xd8, 0xa0, 0x03, 0x43, 0x71, 0xeb, 0xa3, }; static const unsigned char xdh_wei448_2087_sharedsecret[] = { 0x4a, 0x89, 0x66, 0x49, 0x7c, 0x42, 0xcc, 0x1c, 0x8e, 0xb7, 0x7e, 0x8a, 0xd1, 0x16, 0xed, 0x25, 0x82, 0xd3, 0xc8, 0x1a, 0x60, 0x2a, 0xf3, 0xd8, 0xb0, 0x8a, 0x99, 0x66, 0x97, 0xe2, 0x26, 0xbe, 0xb7, 0x86, 0x1b, 0xa7, 0x2e, 0xc9, 0x9f, 0xea, 0x58, 0x16, 0xb1, 0x18, 0x7c, 0x6c, 0x76, 0x8f, 0xf7, 0x5b, 0x1f, 0x7c, 0x52, 0x67, 0x41, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_2087 = { .name = "xdh_wei448_2087", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2087_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2087_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2087_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 5 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2088 for XDH, tcId is 6 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2088_peerpubkey[] = { 0xbe, 0x11, 0x10, 0x9a, 0x68, 0x72, 0xc3, 0x8a, 0xba, 0xd8, 0x61, 0x01, 0xb0, 0x56, 0x12, 0x08, 0xcc, 0x3a, 0x32, 0xa9, 0xe0, 0x34, 0x58, 0x22, 0xc7, 0x51, 0x4f, 0x64, 0x23, 0xf1, 0x42, 0x53, 0x0d, 0xf9, 0xbb, 0xfd, 0x72, 0xb0, 0xd4, 0xcd, 0x8e, 0x73, 0x4a, 0xe0, 0x92, 0xdd, 0x02, 0x20, 0x2f, 0x42, 0xb7, 0x8e, 0x54, 0x2e, 0x4c, 0xc5, }; static const unsigned char xdh_wei448_2088_privkey[] = { 0x3c, 0xc4, 0xe7, 0xb7, 0x22, 0xec, 0xe8, 0xf7, 0xcc, 0x1f, 0xb1, 0x88, 0xde, 0xd1, 0xc2, 0x75, 0x07, 0x14, 0x1d, 0xbf, 0x79, 0x41, 0xe1, 0xa9, 0xbb, 0x66, 0x2c, 0xf0, 0xff, 0xc4, 0x80, 0xc3, 0xe0, 0x4d, 0x31, 0x77, 0x82, 0x58, 0x38, 0x1e, 0x93, 0x8e, 0x82, 0x8e, 0x24, 0xdc, 0x6e, 0xa1, 0x14, 0xa6, 0xe0, 0xd2, 0x59, 0xae, 0xf9, 0xbf, }; static const unsigned char xdh_wei448_2088_sharedsecret[] = { 0x66, 0xb1, 0x3d, 0x08, 0xe7, 0x4c, 0x37, 0xe2, 0x34, 0x5d, 0x1a, 0x26, 0xef, 0xf2, 0x5b, 0xfc, 0xa0, 0x71, 0x00, 0x42, 0xd2, 0xda, 0xf0, 0xd3, 0xd4, 0xe9, 0x7e, 0x55, 0xdd, 0xec, 0xed, 0x10, 0xbc, 0xa4, 0x33, 0xf2, 0xd3, 0x30, 0x81, 0x03, 0xc8, 0xcc, 0xfa, 0x07, 0x90, 0x90, 0xdc, 0xe6, 0x9e, 0x90, 0xbd, 0x90, 0xab, 0x93, 0xd6, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_2088 = { .name = "xdh_wei448_2088", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2088_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2088_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2088_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 6 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2089 for XDH, tcId is 7 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2089_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2089_privkey[] = { 0x4c, 0x29, 0x11, 0x8c, 0xd3, 0xfc, 0xe5, 0x1c, 0x7f, 0xd0, 0x82, 0xc8, 0x88, 0x0d, 0x59, 0x2a, 0x9c, 0x2a, 0x93, 0x89, 0xaa, 0x37, 0x1c, 0xa6, 0xe6, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0xef, }; static const unsigned char xdh_wei448_2089_sharedsecret[] = { 0xf2, 0xd3, 0xc0, 0x20, 0x56, 0x56, 0x47, 0x95, 0xc5, 0x9a, 0xbb, 0xa5, 0xb6, 0x0b, 0x84, 0xf6, 0x34, 0x9d, 0xdb, 0xe6, 0xff, 0x38, 0x0b, 0x96, 0x73, 0xf4, 0xd0, 0x9e, 0x28, 0xba, 0x23, 0x72, 0xe2, 0xe8, 0xdc, 0xf2, 0x69, 0xce, 0xc4, 0x87, 0x70, 0x61, 0x86, 0x63, 0xc9, 0x32, 0x28, 0x44, 0x83, 0xf4, 0xee, 0x5a, 0x57, 0x18, 0xfd, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2089 = { .name = "xdh_wei448_2089", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2089_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2089_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2089_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 7 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2090 for XDH, tcId is 8 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2090_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2090_privkey[] = { 0xe8, 0x6c, 0xde, 0x64, 0x0f, 0x9f, 0x2a, 0x0e, 0x52, 0x8b, 0xe1, 0xff, 0x2a, 0x57, 0xa1, 0x26, 0x3a, 0x69, 0xe5, 0x60, 0xf9, 0x7c, 0x79, 0xf2, 0xd2, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0xbd, }; static const unsigned char xdh_wei448_2090_sharedsecret[] = { 0x13, 0xf5, 0x4e, 0x94, 0x80, 0xb6, 0x7c, 0xc5, 0xd5, 0x54, 0x5c, 0xbf, 0x6d, 0xfd, 0x10, 0xd1, 0x10, 0xb0, 0xa3, 0xb2, 0xa7, 0x9d, 0x22, 0x60, 0xd7, 0xd8, 0xf8, 0xf4, 0x9d, 0xb5, 0xd7, 0x82, 0x89, 0xd7, 0xcc, 0xc5, 0x69, 0x62, 0xa4, 0x93, 0x06, 0xaa, 0xe7, 0x40, 0x43, 0x91, 0x88, 0x0a, 0xaf, 0x9b, 0xed, 0xe5, 0xda, 0xb0, 0xfa, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2090 = { .name = "xdh_wei448_2090", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2090_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2090_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2090_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 8 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2091 for XDH, tcId is 9 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2091_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2091_privkey[] = { 0x24, 0xba, 0x9d, 0xf5, 0x6e, 0xf0, 0x36, 0xb4, 0xbc, 0xde, 0x7b, 0x01, 0x38, 0xb7, 0x98, 0x3a, 0xe0, 0xfe, 0x3d, 0x2f, 0xd4, 0xb9, 0xd1, 0x3e, 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0xeb, }; static const unsigned char xdh_wei448_2091_sharedsecret[] = { 0xf1, 0xef, 0x91, 0x74, 0x22, 0x2c, 0x42, 0x2c, 0xb3, 0xa6, 0x19, 0x4d, 0xa9, 0x1d, 0xbd, 0xab, 0x62, 0xb0, 0x68, 0x81, 0x79, 0xe7, 0x7f, 0x47, 0x01, 0x9c, 0xc9, 0xeb, 0x7c, 0x38, 0xda, 0x86, 0xf6, 0xf5, 0x1f, 0xc2, 0x50, 0xe8, 0xa4, 0x6d, 0xd4, 0xb3, 0x34, 0x1c, 0xc5, 0xf7, 0x1f, 0x1d, 0x8d, 0xaf, 0x0b, 0x28, 0xe8, 0x73, 0xd8, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2091 = { .name = "xdh_wei448_2091", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2091_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2091_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2091_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 9 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2092 for XDH, tcId is 10 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2092_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2092_privkey[] = { 0xd4, 0xbd, 0xcc, 0x2b, 0xca, 0x46, 0xee, 0x14, 0x49, 0xcc, 0x42, 0xcc, 0x8e, 0x97, 0xbc, 0x40, 0x43, 0xc6, 0xe2, 0xc0, 0xd0, 0x17, 0x77, 0x6d, 0xd6, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x8e, }; static const unsigned char xdh_wei448_2092_sharedsecret[] = { 0xbb, 0x09, 0xd4, 0x9c, 0xac, 0x99, 0xb9, 0x3b, 0x07, 0x1a, 0x19, 0xe6, 0xac, 0xa0, 0x6d, 0x9c, 0x9c, 0xc4, 0xc5, 0x78, 0x30, 0x4b, 0x3b, 0xe6, 0x48, 0x0d, 0xc4, 0x00, 0x3e, 0xa6, 0xe9, 0x1d, 0xe8, 0x7b, 0x09, 0xfd, 0xfc, 0x31, 0x16, 0x15, 0x1a, 0xe6, 0x6e, 0x98, 0x6a, 0x08, 0x61, 0x3e, 0xe9, 0xea, 0xf1, 0x26, 0x74, 0x30, 0x0e, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2092 = { .name = "xdh_wei448_2092", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2092_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2092_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2092_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 10 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2093 for XDH, tcId is 11 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2093_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2093_privkey[] = { 0x90, 0xd2, 0x68, 0x17, 0x75, 0xbe, 0xc7, 0x4d, 0x89, 0x41, 0x3d, 0xca, 0xfd, 0x01, 0xed, 0x3e, 0x4b, 0x6d, 0x1c, 0x8a, 0xdc, 0x3c, 0x28, 0x88, 0xd6, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0xb5, }; static const unsigned char xdh_wei448_2093_sharedsecret[] = { 0xc1, 0xb5, 0x7f, 0x0e, 0xcb, 0xde, 0x85, 0x2e, 0xf4, 0xc1, 0x84, 0xcf, 0x5b, 0xfc, 0xf7, 0x92, 0x44, 0x05, 0x86, 0x80, 0xc5, 0x91, 0x90, 0x79, 0x98, 0x8b, 0x0f, 0xd5, 0x62, 0xb7, 0x47, 0x58, 0x3e, 0x25, 0x82, 0x70, 0xd9, 0x1c, 0x4d, 0xa7, 0xab, 0xfd, 0xc6, 0xc2, 0x77, 0x84, 0xc6, 0x51, 0x74, 0xb7, 0xe6, 0x12, 0x53, 0x40, 0x97, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2093 = { .name = "xdh_wei448_2093", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2093_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2093_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2093_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 11 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2094 for XDH, tcId is 12 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2094_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2094_privkey[] = { 0xfc, 0xad, 0x30, 0x6b, 0xc8, 0xe2, 0x9a, 0x58, 0x62, 0x9f, 0x84, 0xf3, 0x13, 0x23, 0x4d, 0x16, 0x0b, 0x21, 0x59, 0x86, 0x3d, 0xcd, 0x54, 0x01, 0xa2, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0xc4, }; static const unsigned char xdh_wei448_2094_sharedsecret[] = { 0x72, 0xaf, 0x8c, 0x41, 0xcd, 0x06, 0xd6, 0x24, 0x3b, 0x1c, 0xb5, 0x2f, 0xfe, 0x39, 0x96, 0x20, 0x74, 0x40, 0xca, 0xbd, 0x36, 0xd4, 0xb3, 0x4e, 0x64, 0x30, 0x1f, 0x5a, 0xf0, 0x48, 0x90, 0xfb, 0x70, 0xd4, 0x97, 0xf1, 0x91, 0x8e, 0x53, 0x97, 0xd8, 0xee, 0x3f, 0x4b, 0xab, 0x46, 0xcf, 0xdd, 0x5a, 0x07, 0x14, 0x62, 0xb7, 0x14, 0x8a, 0xc8, }; static const wycheproof_xdh_test xdh_wei448_2094 = { .name = "xdh_wei448_2094", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2094_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2094_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2094_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 12 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2095 for XDH, tcId is 13 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2095_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2095_privkey[] = { 0x58, 0xe8, 0x40, 0x8c, 0xbd, 0x2b, 0xed, 0xc1, 0x55, 0x41, 0x5d, 0xb2, 0x82, 0x65, 0x60, 0x82, 0x79, 0x6d, 0xc6, 0xa6, 0xa7, 0x56, 0xe5, 0x91, 0xaa, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0xa3, }; static const unsigned char xdh_wei448_2095_sharedsecret[] = { 0xe3, 0xef, 0x63, 0x36, 0x7c, 0xce, 0xaa, 0x89, 0x2b, 0x9e, 0xbb, 0x00, 0x07, 0x2a, 0x92, 0x29, 0x6d, 0xdd, 0x27, 0xa0, 0xc6, 0x62, 0xe9, 0x11, 0xdf, 0x2b, 0xf0, 0x4f, 0xdf, 0xbd, 0x2a, 0x20, 0xd1, 0x08, 0x55, 0xb9, 0x44, 0x2c, 0x0d, 0xf4, 0xfb, 0xa8, 0x3e, 0x3f, 0x95, 0xe2, 0xdd, 0x04, 0xd9, 0xc6, 0xd6, 0xee, 0x69, 0x4e, 0xad, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_2095 = { .name = "xdh_wei448_2095", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2095_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2095_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2095_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 13 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2096 for XDH, tcId is 14 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2096_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2096_privkey[] = { 0xd0, 0xcb, 0x88, 0x52, 0x80, 0xa8, 0xb0, 0xcf, 0x7c, 0x0d, 0xd9, 0xf2, 0x76, 0x77, 0x85, 0x8d, 0xb3, 0xeb, 0x2d, 0x16, 0xba, 0x92, 0x1d, 0x99, 0xf1, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0xd6, }; static const unsigned char xdh_wei448_2096_sharedsecret[] = { 0xe8, 0x74, 0xdd, 0xd0, 0x3a, 0xda, 0xa8, 0x86, 0x9b, 0xb8, 0x5e, 0x9d, 0x56, 0xee, 0xac, 0xd7, 0xdf, 0x00, 0x87, 0xae, 0x3a, 0xa0, 0x0d, 0x9d, 0xda, 0xea, 0xe4, 0x0c, 0x87, 0xa6, 0x4d, 0x16, 0x26, 0xa3, 0x34, 0x3b, 0x3e, 0x49, 0xfc, 0x87, 0xb2, 0x77, 0x42, 0xf7, 0xd5, 0x48, 0x72, 0x48, 0xf1, 0x71, 0xef, 0xd8, 0x18, 0x23, 0xbb, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2096 = { .name = "xdh_wei448_2096", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2096_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2096_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2096_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 14 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2097 for XDH, tcId is 15 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2097_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2097_privkey[] = { 0x40, 0x67, 0x0a, 0x1e, 0xfa, 0x70, 0x72, 0xa6, 0x5c, 0x27, 0x9f, 0x96, 0x18, 0x26, 0x3a, 0x9e, 0x26, 0x6f, 0xe1, 0x2d, 0x82, 0xff, 0x53, 0xc2, 0x9b, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x8e, }; static const unsigned char xdh_wei448_2097_sharedsecret[] = { 0xf2, 0x7f, 0x02, 0xb4, 0x52, 0xf9, 0xa5, 0xe9, 0x5f, 0x08, 0x09, 0x2e, 0x7e, 0x40, 0x58, 0xae, 0x56, 0x07, 0x32, 0xa4, 0xff, 0xd5, 0xe4, 0xc4, 0xcc, 0x49, 0x7a, 0xf9, 0xd8, 0xe0, 0xd7, 0x7f, 0x3d, 0x94, 0xd0, 0x7d, 0xea, 0x93, 0x2f, 0x0a, 0x79, 0xfa, 0x63, 0xc8, 0x52, 0xa1, 0xcf, 0x03, 0xb6, 0x0a, 0xb5, 0xa5, 0x20, 0x17, 0x48, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2097 = { .name = "xdh_wei448_2097", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2097_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2097_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2097_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 15 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2098 for XDH, tcId is 16 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2098_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2098_privkey[] = { 0xb8, 0xfe, 0xca, 0xaa, 0x71, 0xe4, 0x2c, 0x55, 0xfa, 0x42, 0xcc, 0xc0, 0x9c, 0x9b, 0xb1, 0xa0, 0x98, 0xc4, 0x1e, 0x98, 0x16, 0x82, 0x46, 0x1b, 0xdc, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x80, }; static const unsigned char xdh_wei448_2098_sharedsecret[] = { 0x70, 0xaf, 0x0e, 0xba, 0xe5, 0x66, 0xf3, 0x2b, 0xff, 0x79, 0x7c, 0x1b, 0xab, 0x73, 0xf9, 0x9f, 0x31, 0xbe, 0x5b, 0xf4, 0xbc, 0x76, 0xf0, 0x13, 0xf2, 0x47, 0xc2, 0x5f, 0x3a, 0xea, 0x5a, 0xce, 0x10, 0x22, 0x4f, 0xf0, 0xeb, 0x9d, 0x3c, 0xff, 0xe4, 0xba, 0x1f, 0x98, 0xfd, 0x59, 0xe0, 0x28, 0x63, 0x6b, 0x3c, 0x48, 0x27, 0x75, 0x59, 0xad, }; static const wycheproof_xdh_test xdh_wei448_2098 = { .name = "xdh_wei448_2098", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2098_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2098_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2098_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 16 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2099 for XDH, tcId is 17 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2099_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2099_privkey[] = { 0xc8, 0xaa, 0x85, 0x74, 0x8b, 0x5c, 0xcd, 0x0f, 0x1f, 0x83, 0x4a, 0x37, 0x15, 0x59, 0x2e, 0x52, 0x3c, 0x2e, 0xd6, 0x09, 0xbf, 0xd1, 0x7f, 0x3b, 0x58, 0xed, 0x5a, 0x5f, 0xac, 0xad, 0x74, 0x9a, 0x43, 0x31, 0xdf, 0xb2, 0x4d, 0x8c, 0xf7, 0xd8, 0x20, 0x9b, 0x49, 0x62, 0xc2, 0x70, 0x3c, 0x01, 0xa5, 0xf9, 0x73, 0xb7, 0xc8, 0x2a, 0x3f, 0xec, }; static const unsigned char xdh_wei448_2099_sharedsecret[] = { 0xe4, 0x51, 0x31, 0x64, 0x3f, 0x60, 0x78, 0x81, 0xb9, 0xeb, 0xa1, 0x45, 0xae, 0x79, 0xaa, 0xe1, 0x6e, 0x64, 0xe9, 0x91, 0x29, 0x84, 0x33, 0x84, 0x86, 0x9b, 0xc2, 0xb5, 0xb3, 0xd7, 0xe7, 0x29, 0x3d, 0x89, 0x49, 0xb3, 0xc7, 0x95, 0xfa, 0xf0, 0x9a, 0xe3, 0xf7, 0xdf, 0x9f, 0x8d, 0xeb, 0x31, 0x42, 0x37, 0x3a, 0xd1, 0x70, 0xec, 0x34, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2099 = { .name = "xdh_wei448_2099", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2099_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2099_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2099_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 17 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2100 for XDH, tcId is 18 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2100_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2100_privkey[] = { 0x14, 0x35, 0xf2, 0x60, 0x75, 0x2f, 0xb2, 0x7d, 0xd1, 0xa4, 0x71, 0xac, 0x4a, 0x08, 0xd9, 0x55, 0xc6, 0xe3, 0x93, 0xc8, 0x23, 0xa8, 0x58, 0xdc, 0x1d, 0x62, 0x38, 0x76, 0x68, 0x66, 0xf6, 0x22, 0x2e, 0x75, 0x26, 0xea, 0x4e, 0x51, 0xbf, 0x68, 0x47, 0xc6, 0x27, 0xef, 0x66, 0x28, 0x21, 0x1b, 0xa9, 0xde, 0xa3, 0x92, 0x2d, 0x70, 0x2c, 0xca, }; static const unsigned char xdh_wei448_2100_sharedsecret[] = { 0x0f, 0xcc, 0xdf, 0x4e, 0xd6, 0x30, 0xda, 0x45, 0x4c, 0x2a, 0xb0, 0xd6, 0xb4, 0x01, 0xb5, 0x65, 0xbd, 0xb1, 0x6b, 0x65, 0x5f, 0xb7, 0xc7, 0x60, 0x10, 0xf2, 0x50, 0xeb, 0x22, 0xcb, 0x3c, 0x92, 0xec, 0x9d, 0x96, 0x83, 0x59, 0xf9, 0x7a, 0x18, 0xe8, 0x55, 0xf6, 0x3f, 0x8d, 0x66, 0x2c, 0xcf, 0x66, 0xe3, 0x34, 0x90, 0x8c, 0x12, 0xfc, 0xa2, }; static const wycheproof_xdh_test xdh_wei448_2100 = { .name = "xdh_wei448_2100", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2100_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2100_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2100_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 18 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2101 for XDH, tcId is 19 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2101_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, }; static const unsigned char xdh_wei448_2101_privkey[] = { 0x24, 0x84, 0xb1, 0xcc, 0xc0, 0x83, 0x04, 0x16, 0xc9, 0xc2, 0x32, 0xe1, 0xc9, 0xe3, 0xac, 0x76, 0x9d, 0x15, 0x58, 0x3b, 0x28, 0x2e, 0xca, 0x13, 0x05, 0x66, 0x49, 0x47, 0x6c, 0x69, 0x51, 0x05, 0x68, 0xe5, 0x0b, 0xa1, 0x5b, 0xb0, 0x48, 0xf4, 0xe4, 0x4a, 0x88, 0xae, 0xb7, 0x79, 0x9a, 0xe7, 0xac, 0xdb, 0x6b, 0x0b, 0x7d, 0xf7, 0x7c, 0xec, }; static const unsigned char xdh_wei448_2101_sharedsecret[] = { 0x70, 0xed, 0x1d, 0x31, 0x76, 0xe3, 0x08, 0xe5, 0x22, 0x1f, 0xc3, 0xf4, 0x16, 0xa8, 0x71, 0x27, 0xa3, 0x97, 0xec, 0x8a, 0x75, 0x56, 0x9c, 0xbf, 0x75, 0x59, 0x04, 0x03, 0x0e, 0xd3, 0xce, 0x20, 0x2b, 0x93, 0xbd, 0xd7, 0xa6, 0xdd, 0xab, 0x32, 0x74, 0x6c, 0xd8, 0x0e, 0x30, 0xf5, 0xb3, 0xcd, 0x50, 0x6d, 0x42, 0xaf, 0x42, 0x7f, 0x1f, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2101 = { .name = "xdh_wei448_2101", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2101_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2101_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2101_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 19 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2102 for XDH, tcId is 20 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2102_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x03, 0x00, }; static const unsigned char xdh_wei448_2102_privkey[] = { 0x24, 0xcc, 0x1c, 0x2b, 0xd0, 0x33, 0x21, 0x21, 0x0d, 0x80, 0xe7, 0xba, 0x12, 0xba, 0xc1, 0x85, 0x1c, 0xff, 0xaf, 0xcd, 0x78, 0x73, 0x83, 0xd7, 0x38, 0x3f, 0xaf, 0xf6, 0x69, 0xd5, 0x1e, 0x07, 0x55, 0x4d, 0x00, 0x6a, 0xf1, 0x4b, 0xaa, 0xe0, 0x81, 0x8e, 0x7d, 0x27, 0x04, 0x45, 0x67, 0x0e, 0x53, 0xf2, 0x2b, 0x7e, 0xff, 0xbf, 0xa6, 0x89, }; static const unsigned char xdh_wei448_2102_sharedsecret[] = { 0xef, 0xe4, 0xb3, 0x2d, 0x8c, 0xcf, 0x5f, 0x42, 0xe4, 0x8d, 0x7c, 0xfe, 0x38, 0x17, 0xa7, 0xb8, 0x2a, 0x13, 0xa7, 0xb7, 0x68, 0x05, 0x39, 0x4d, 0x77, 0x75, 0xc6, 0x49, 0xa8, 0x88, 0x0c, 0x23, 0x79, 0xed, 0x54, 0x6f, 0x37, 0xc0, 0xeb, 0xd9, 0xeb, 0xb5, 0xdc, 0xb0, 0xd2, 0x60, 0xb7, 0xc3, 0xd2, 0x41, 0x70, 0x37, 0x97, 0xb1, 0xf5, 0x4a, }; static const wycheproof_xdh_test xdh_wei448_2102 = { .name = "xdh_wei448_2102", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2102_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2102_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2102_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 20 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2103 for XDH, tcId is 21 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2103_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, }; static const unsigned char xdh_wei448_2103_privkey[] = { 0xbc, 0x08, 0xf8, 0x2f, 0xf3, 0xbb, 0xbb, 0x21, 0x6d, 0x5a, 0x4a, 0x25, 0x38, 0x60, 0xb6, 0x11, 0xe5, 0xff, 0x8b, 0xf7, 0x55, 0x99, 0x6b, 0xec, 0x7f, 0x77, 0xa4, 0xed, 0xb3, 0x46, 0x60, 0xb8, 0xd3, 0x50, 0xf2, 0x50, 0x1f, 0xc1, 0xd9, 0x13, 0x70, 0x41, 0x56, 0xaa, 0x26, 0xde, 0xcf, 0xc3, 0x59, 0xd1, 0x05, 0x3b, 0x18, 0xe0, 0x04, 0xec, }; static const unsigned char xdh_wei448_2103_sharedsecret[] = { 0x15, 0x65, 0x07, 0xca, 0x71, 0x79, 0x8a, 0x7f, 0xaf, 0xc5, 0x76, 0xef, 0x43, 0x67, 0x6a, 0xbf, 0x43, 0x81, 0x5b, 0xc7, 0x33, 0x2f, 0x8b, 0xa6, 0xee, 0xfc, 0x07, 0x27, 0xc6, 0x5d, 0x77, 0xd2, 0x4c, 0xcb, 0xa2, 0xfa, 0x81, 0x09, 0x3b, 0x85, 0x27, 0xc8, 0x27, 0x4b, 0x6a, 0xd0, 0xfe, 0x94, 0x62, 0xe9, 0x47, 0x4d, 0xf1, 0xbe, 0x3a, 0x49, }; static const wycheproof_xdh_test xdh_wei448_2103 = { .name = "xdh_wei448_2103", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2103_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2103_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2103_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 21 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2104 for XDH, tcId is 22 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2104_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_2104_privkey[] = { 0x8c, 0x37, 0xfb, 0x35, 0xea, 0xc1, 0xdb, 0xda, 0x6a, 0x3b, 0x5b, 0xf4, 0x92, 0xc1, 0xf6, 0x42, 0xc7, 0x61, 0xbe, 0x3a, 0xdf, 0x0a, 0xb7, 0x61, 0x7a, 0x66, 0x00, 0x25, 0x76, 0xc4, 0x5b, 0xba, 0x82, 0x02, 0x97, 0x0b, 0xae, 0x6c, 0x5e, 0x05, 0xf6, 0x45, 0xf5, 0x43, 0x9c, 0xa2, 0xf4, 0x2b, 0x89, 0xda, 0xca, 0xce, 0x1a, 0x5d, 0x0e, 0x82, }; static const unsigned char xdh_wei448_2104_sharedsecret[] = { 0x60, 0xc4, 0x68, 0xdf, 0x97, 0xe2, 0xe4, 0x42, 0x7f, 0x27, 0x42, 0x0c, 0xc6, 0xbc, 0x9e, 0xeb, 0xaa, 0x2b, 0xce, 0xb8, 0x27, 0xeb, 0x55, 0xa1, 0x87, 0xfc, 0x5c, 0x29, 0x55, 0x5e, 0x72, 0xa6, 0x63, 0x24, 0x3f, 0x6a, 0xf4, 0x09, 0x56, 0x41, 0xd7, 0x2c, 0xae, 0xac, 0xb3, 0x69, 0x72, 0x0e, 0xa1, 0x8c, 0xad, 0xd6, 0xef, 0xdb, 0xec, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_2104 = { .name = "xdh_wei448_2104", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2104_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2104_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2104_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 22 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2105 for XDH, tcId is 23 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2105_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2105_privkey[] = { 0x00, 0x68, 0x4b, 0xfc, 0x8c, 0xb9, 0x03, 0x17, 0x9b, 0x71, 0xc2, 0xc4, 0x52, 0xf2, 0xda, 0x1e, 0x6b, 0x47, 0x6c, 0x04, 0x58, 0xb3, 0x50, 0x35, 0x6d, 0x89, 0xb4, 0x02, 0x40, 0x3d, 0x01, 0x76, 0x02, 0x8b, 0x43, 0xcd, 0xfe, 0xbc, 0x4e, 0xb7, 0x82, 0x3e, 0x8c, 0x65, 0xac, 0x14, 0x45, 0x3f, 0x59, 0x42, 0x67, 0xf7, 0x7c, 0x40, 0xb2, 0x80, }; static const unsigned char xdh_wei448_2105_sharedsecret[] = { 0x7f, 0x6a, 0xbc, 0x32, 0x1d, 0x71, 0x04, 0x95, 0x5b, 0x76, 0x3a, 0xc6, 0x86, 0x81, 0xc2, 0xc4, 0xd1, 0xbb, 0x72, 0x07, 0xce, 0x63, 0x85, 0xf1, 0x8e, 0x60, 0xba, 0x5f, 0x31, 0x00, 0xc1, 0x3c, 0xdc, 0xad, 0xab, 0x23, 0x55, 0x46, 0xa0, 0xc9, 0x2a, 0x47, 0x92, 0x5d, 0xef, 0xb2, 0x69, 0x2e, 0xe2, 0xac, 0xed, 0x42, 0xbb, 0xff, 0x50, 0x8f, }; static const wycheproof_xdh_test xdh_wei448_2105 = { .name = "xdh_wei448_2105", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2105_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2105_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2105_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 23 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2106 for XDH, tcId is 24 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2106_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2106_privkey[] = { 0xe8, 0x76, 0x15, 0x98, 0xba, 0x21, 0x2a, 0x4e, 0x97, 0x24, 0xea, 0xab, 0x2f, 0x3c, 0x22, 0x5b, 0x0c, 0xc0, 0x19, 0x59, 0x5f, 0xa7, 0x02, 0xae, 0x03, 0x61, 0xbf, 0x3d, 0x34, 0x8d, 0x9d, 0x6f, 0x7a, 0x04, 0x35, 0x24, 0x24, 0xa5, 0xfd, 0x30, 0x26, 0x65, 0x0f, 0x2a, 0x04, 0x57, 0x44, 0x99, 0xda, 0xeb, 0xc7, 0x1f, 0x4c, 0x6d, 0x0f, 0xd9, }; static const unsigned char xdh_wei448_2106_sharedsecret[] = { 0x25, 0x21, 0xc2, 0x83, 0x65, 0x13, 0x96, 0xfb, 0x03, 0xbf, 0x07, 0x4e, 0x3c, 0xe6, 0xd0, 0x8d, 0x7b, 0x39, 0x3d, 0xe5, 0xfa, 0x85, 0xe9, 0xac, 0x63, 0x3c, 0xef, 0x32, 0x8a, 0xc5, 0x45, 0x76, 0xf6, 0x00, 0x5f, 0x34, 0xc7, 0x95, 0x42, 0x5c, 0x56, 0xdb, 0x62, 0xe8, 0xce, 0xdd, 0xf8, 0x07, 0xd6, 0x8e, 0x37, 0x64, 0x6a, 0xfb, 0x11, 0x84, }; static const wycheproof_xdh_test xdh_wei448_2106 = { .name = "xdh_wei448_2106", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2106_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2106_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2106_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 24 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2107 for XDH, tcId is 25 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2107_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, }; static const unsigned char xdh_wei448_2107_privkey[] = { 0x78, 0xd4, 0x03, 0x21, 0xd4, 0xb0, 0xdc, 0x6a, 0x7c, 0x86, 0xdf, 0x13, 0xb5, 0x2e, 0x44, 0x4c, 0x87, 0x27, 0xa6, 0xd3, 0xbb, 0x4b, 0xe1, 0x6b, 0xb9, 0x15, 0xca, 0xb5, 0x22, 0xac, 0x8a, 0x94, 0x29, 0x78, 0xf7, 0x6e, 0x7d, 0xd6, 0xf9, 0xf4, 0x43, 0x9f, 0x5e, 0xf5, 0x35, 0xe6, 0xf4, 0x3e, 0x71, 0x1b, 0x69, 0x2a, 0xcc, 0x6e, 0xa4, 0xa3, }; static const unsigned char xdh_wei448_2107_sharedsecret[] = { 0x45, 0xd7, 0xf9, 0x32, 0x20, 0x1b, 0x24, 0xe1, 0x9b, 0x08, 0x60, 0x80, 0xb5, 0x77, 0xdc, 0x42, 0x80, 0x82, 0x59, 0x75, 0xbf, 0x3f, 0x12, 0x25, 0xbd, 0xde, 0x17, 0x61, 0x3b, 0xfb, 0x39, 0x83, 0x21, 0x53, 0x57, 0xdc, 0x1b, 0x9c, 0x77, 0xa7, 0xe8, 0xba, 0x1d, 0x3d, 0xb5, 0x8f, 0x37, 0x6a, 0x1c, 0x8c, 0x63, 0xd1, 0x30, 0x8c, 0xd9, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_2107 = { .name = "xdh_wei448_2107", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2107_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2107_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2107_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 25 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2108 for XDH, tcId is 26 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2108_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2108_privkey[] = { 0x50, 0xad, 0x85, 0x6c, 0xc0, 0x03, 0xe8, 0xeb, 0xee, 0xf9, 0x91, 0x3f, 0x67, 0xdd, 0xc4, 0xa4, 0x6a, 0x93, 0x47, 0xd0, 0x92, 0x85, 0x65, 0xb9, 0xd7, 0xf8, 0xb1, 0xc0, 0xf9, 0xdc, 0x31, 0xbc, 0xb7, 0x67, 0x97, 0x48, 0x6e, 0x05, 0x33, 0x19, 0xd1, 0x49, 0xf4, 0xc7, 0x94, 0x21, 0xef, 0x5e, 0xc7, 0xd1, 0x89, 0x5f, 0xd3, 0x2f, 0x3a, 0xd5, }; static const unsigned char xdh_wei448_2108_sharedsecret[] = { 0x15, 0xac, 0x85, 0xa8, 0x8f, 0x14, 0x08, 0x1d, 0x6a, 0x59, 0x19, 0xbf, 0x8d, 0x06, 0xa8, 0xc6, 0xbd, 0xcf, 0xfb, 0xba, 0x97, 0x0c, 0x54, 0x7b, 0x26, 0x37, 0x7b, 0x23, 0x8d, 0x64, 0x82, 0xef, 0xf5, 0x8d, 0x36, 0xe0, 0xb8, 0x7a, 0x00, 0xce, 0xf9, 0xb8, 0x0b, 0xe0, 0x1e, 0x69, 0xae, 0x0d, 0x6c, 0x12, 0xed, 0xdd, 0xaa, 0xbf, 0x7c, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_2108 = { .name = "xdh_wei448_2108", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2108_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2108_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2108_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 26 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2109 for XDH, tcId is 27 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2109_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2109_privkey[] = { 0xa4, 0xee, 0xec, 0xbd, 0x9d, 0xdc, 0xe4, 0x81, 0x22, 0x2c, 0x22, 0xf0, 0x53, 0xa4, 0xbe, 0x30, 0xcf, 0xa1, 0x06, 0x8b, 0x57, 0x90, 0xd2, 0xbd, 0xb7, 0x88, 0x38, 0x2c, 0xb9, 0x66, 0xce, 0xfb, 0xb6, 0x06, 0xce, 0xe4, 0x7f, 0xc2, 0x36, 0xc3, 0x71, 0x3d, 0x9f, 0x8e, 0x65, 0xad, 0x04, 0x4e, 0x10, 0xf8, 0x9f, 0x64, 0x1c, 0xc3, 0x1c, 0xaa, }; static const unsigned char xdh_wei448_2109_sharedsecret[] = { 0x48, 0xb9, 0xaa, 0x64, 0xce, 0x34, 0x00, 0x6b, 0x2d, 0xb0, 0x92, 0x82, 0x34, 0xe8, 0x86, 0x36, 0x8e, 0xce, 0xb9, 0x2a, 0x3c, 0x46, 0x7f, 0xaa, 0x15, 0x5d, 0x5f, 0x9d, 0xe5, 0x3c, 0xa3, 0x5a, 0xd0, 0xc3, 0x83, 0xb5, 0xdc, 0xd9, 0xa1, 0xf8, 0x05, 0x1d, 0x80, 0x36, 0x5c, 0x6c, 0xf5, 0x2e, 0x54, 0x35, 0x3e, 0x2b, 0xca, 0x70, 0x60, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_2109 = { .name = "xdh_wei448_2109", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2109_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2109_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2109_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 27 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2110 for XDH, tcId is 28 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2110_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2110_privkey[] = { 0x54, 0x10, 0x73, 0x5b, 0xd9, 0x5c, 0xd0, 0x64, 0x0f, 0xc1, 0xe2, 0xe1, 0x1a, 0x02, 0x88, 0x03, 0xf1, 0xcb, 0x43, 0x44, 0xf4, 0xef, 0xee, 0x75, 0xae, 0x0b, 0x9e, 0xb9, 0xdb, 0x56, 0x27, 0xd6, 0xe2, 0xa4, 0xb6, 0xdb, 0xad, 0x4a, 0xf3, 0xfe, 0xe9, 0x86, 0xcc, 0xe9, 0x34, 0xbe, 0xd6, 0x0a, 0x0e, 0x86, 0x98, 0x20, 0x46, 0x38, 0xb5, 0xa9, }; static const unsigned char xdh_wei448_2110_sharedsecret[] = { 0x89, 0x51, 0xb4, 0xfc, 0x36, 0x2c, 0xcd, 0x60, 0xcb, 0x56, 0x0f, 0xde, 0x65, 0xfa, 0x12, 0x61, 0x58, 0xa9, 0x72, 0x7a, 0x3d, 0x57, 0x7c, 0x50, 0x75, 0x66, 0xfa, 0x5b, 0x4a, 0x79, 0xc2, 0xac, 0x6b, 0xfd, 0x6c, 0x69, 0xde, 0xfe, 0xb9, 0xeb, 0x29, 0x83, 0x0c, 0xc4, 0xaa, 0xf6, 0x42, 0x7f, 0x2a, 0xe6, 0x6b, 0x2c, 0xd3, 0x20, 0x15, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2110 = { .name = "xdh_wei448_2110", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2110_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2110_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2110_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 28 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2111 for XDH, tcId is 29 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2111_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2111_privkey[] = { 0x00, 0xfc, 0x88, 0x42, 0xa4, 0x72, 0x19, 0xed, 0x8f, 0x3e, 0xfa, 0xe3, 0x98, 0x21, 0x40, 0xf4, 0x30, 0x33, 0xdf, 0x74, 0x88, 0xf9, 0x48, 0xeb, 0x2e, 0x24, 0x6a, 0x71, 0xa4, 0x55, 0xfd, 0xec, 0x2e, 0xe0, 0x46, 0x14, 0xe9, 0xab, 0x1c, 0xf4, 0xbb, 0xa4, 0x9e, 0x11, 0xc7, 0xc8, 0x59, 0x1b, 0xb6, 0x7f, 0x9a, 0x93, 0x41, 0x8d, 0x77, 0xd1, }; static const unsigned char xdh_wei448_2111_sharedsecret[] = { 0x8c, 0x3b, 0xd6, 0xc5, 0xe7, 0xe2, 0x02, 0x1e, 0x52, 0x90, 0x9a, 0x8c, 0xbe, 0xbc, 0x44, 0xba, 0x52, 0x3b, 0xdf, 0xa3, 0xac, 0x6c, 0xf8, 0xc7, 0xe3, 0x58, 0xc5, 0x8f, 0x55, 0x15, 0x07, 0x78, 0x41, 0x1e, 0xe0, 0x1c, 0x0b, 0x08, 0xbd, 0x52, 0xac, 0x34, 0xf8, 0xa1, 0x2c, 0xf8, 0xb2, 0x7f, 0xbd, 0x2d, 0xab, 0xa7, 0x37, 0x6f, 0x40, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2111 = { .name = "xdh_wei448_2111", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2111_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2111_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2111_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 29 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2112 for XDH, tcId is 30 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2112_peerpubkey[] = { 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2112_privkey[] = { 0xcc, 0x37, 0xe2, 0xf2, 0x8b, 0xca, 0x03, 0x3c, 0x05, 0x54, 0xa2, 0x52, 0xa2, 0x31, 0x27, 0xd8, 0xc4, 0x4b, 0xd5, 0x91, 0x1a, 0x96, 0xfd, 0x99, 0x0e, 0xcf, 0x72, 0xbf, 0xf3, 0x4c, 0x47, 0x34, 0x71, 0xd7, 0x2c, 0x61, 0xa7, 0xa5, 0x0f, 0x8d, 0x7b, 0xdc, 0x34, 0x34, 0x1a, 0x63, 0xb8, 0xe5, 0xfc, 0x8c, 0xb1, 0x41, 0x28, 0xac, 0xf7, 0x87, }; static const unsigned char xdh_wei448_2112_sharedsecret[] = { 0xde, 0x4e, 0xee, 0xaf, 0xf2, 0xda, 0x2b, 0x47, 0x02, 0x33, 0x42, 0x24, 0xc8, 0x9d, 0xca, 0xd7, 0x8c, 0x98, 0xdc, 0x41, 0xb5, 0xf5, 0x13, 0x67, 0x74, 0xfb, 0xd2, 0x07, 0x67, 0xf5, 0x12, 0x91, 0x2e, 0x1f, 0xf9, 0xa7, 0xed, 0x2d, 0x96, 0xbe, 0x6f, 0x45, 0x2e, 0x8b, 0xcc, 0xac, 0x0b, 0x35, 0x73, 0xc3, 0xd8, 0x0b, 0x78, 0xc6, 0x94, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2112 = { .name = "xdh_wei448_2112", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2112_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2112_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2112_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 30 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2113 for XDH, tcId is 31 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2113_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2113_privkey[] = { 0xd4, 0x9e, 0xe2, 0x78, 0xca, 0xc7, 0x06, 0x42, 0x8b, 0x35, 0x1a, 0x4a, 0x23, 0xd9, 0x11, 0x88, 0xea, 0xf5, 0x5b, 0x5f, 0xe2, 0xba, 0x20, 0xa9, 0xfd, 0x55, 0xb0, 0x36, 0x87, 0xf0, 0xe8, 0xb4, 0x77, 0x13, 0x16, 0xb1, 0xd1, 0x41, 0x0c, 0x8b, 0x2b, 0xf3, 0x1b, 0x21, 0x4f, 0x61, 0x5a, 0x77, 0x3e, 0xae, 0xda, 0x9b, 0x4a, 0xea, 0x59, 0xe2, }; static const unsigned char xdh_wei448_2113_sharedsecret[] = { 0x05, 0x2f, 0x87, 0x17, 0x48, 0xa1, 0xad, 0x50, 0x5a, 0x52, 0x17, 0xe0, 0x60, 0x59, 0x95, 0x5d, 0x2d, 0x1e, 0x90, 0x98, 0x9d, 0xbd, 0xdf, 0x07, 0x1d, 0x36, 0xef, 0xbf, 0x94, 0x20, 0xa5, 0x36, 0x3f, 0x87, 0x67, 0x1d, 0xeb, 0x9e, 0x44, 0x1b, 0xb2, 0xb0, 0x5d, 0x2f, 0xdb, 0xd2, 0xc2, 0x81, 0x1f, 0xbc, 0xe5, 0x84, 0x23, 0x73, 0x72, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_2113 = { .name = "xdh_wei448_2113", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2113_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2113_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2113_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 31 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2114 for XDH, tcId is 32 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2114_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2114_privkey[] = { 0x04, 0xf0, 0x46, 0x38, 0xd5, 0x65, 0xbe, 0xa8, 0x3a, 0xc3, 0x77, 0x03, 0x51, 0x0d, 0x64, 0x75, 0x68, 0xdb, 0xac, 0x58, 0x21, 0x88, 0x13, 0x74, 0x8a, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0xde, }; static const unsigned char xdh_wei448_2114_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2114 = { .name = "xdh_wei448_2114", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2114_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2114_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2114_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 0, tcId is 32 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2115 for XDH, tcId is 33 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2115_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2115_privkey[] = { 0x28, 0x1f, 0x41, 0xa8, 0xa8, 0x53, 0x44, 0x1f, 0x1d, 0x50, 0x14, 0xbc, 0x6c, 0x61, 0x6e, 0x56, 0x4f, 0xce, 0x43, 0x72, 0xac, 0x22, 0x16, 0x81, 0x4f, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0xcf, }; static const unsigned char xdh_wei448_2115_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2115 = { .name = "xdh_wei448_2115", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2115_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2115_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2115_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 1, tcId is 33 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2116 for XDH, tcId is 34 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2116_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2116_privkey[] = { 0x28, 0x11, 0x0d, 0xeb, 0xb1, 0x24, 0x2a, 0x86, 0x94, 0x07, 0xf2, 0x1a, 0x1a, 0x07, 0x61, 0x63, 0x26, 0xe2, 0xbb, 0xa0, 0xae, 0x3d, 0xdc, 0xa3, 0xd4, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0xdf, }; static const unsigned char xdh_wei448_2116_sharedsecret[] = { 0x02, 0x1e, 0xa3, 0xe5, 0x8b, 0xb9, 0xff, 0x27, 0xa1, 0x10, 0x90, 0x79, 0xa8, 0xc5, 0xa0, 0x5b, 0xb0, 0x97, 0x60, 0x86, 0x4b, 0xca, 0x16, 0x50, 0xed, 0x3d, 0x82, 0x56, 0x40, 0xc5, 0x13, 0x4d, 0x06, 0x31, 0xf5, 0x29, 0xd7, 0x95, 0x10, 0xf0, 0x62, 0x88, 0x3b, 0x12, 0x17, 0xbe, 0xda, 0x88, 0xf5, 0x28, 0x01, 0xfd, 0x5b, 0xfa, 0xe9, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_2116 = { .name = "xdh_wei448_2116", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2116_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2116_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2116_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 34 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2117 for XDH, tcId is 35 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2117_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2117_privkey[] = { 0xcc, 0xd0, 0xea, 0xbb, 0x08, 0x91, 0x13, 0x6d, 0x7f, 0x96, 0x3f, 0x52, 0x80, 0xab, 0x98, 0xf0, 0xef, 0xc6, 0xb8, 0x29, 0x02, 0xbc, 0x4f, 0x4f, 0xe5, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0xea, }; static const unsigned char xdh_wei448_2117_sharedsecret[] = { 0x0d, 0xfa, 0xe3, 0xc2, 0x23, 0x85, 0xee, 0x38, 0x4f, 0x52, 0x06, 0x0f, 0x0e, 0x90, 0x05, 0xce, 0xfb, 0x95, 0x0f, 0x7a, 0x80, 0x74, 0x02, 0x16, 0xde, 0xb9, 0x2a, 0xc4, 0xc4, 0xf4, 0xb4, 0x9c, 0x32, 0x84, 0xbe, 0x16, 0xe9, 0xdd, 0x89, 0x37, 0x8d, 0xec, 0xba, 0x9a, 0x73, 0x7d, 0xe8, 0x4a, 0x54, 0x26, 0x93, 0x5f, 0x1b, 0x6a, 0xe4, 0x63, }; static const wycheproof_xdh_test xdh_wei448_2117 = { .name = "xdh_wei448_2117", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2117_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2117_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2117_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 35 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2118 for XDH, tcId is 36 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2118_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2118_privkey[] = { 0x70, 0x14, 0x9f, 0xf0, 0x91, 0x59, 0x12, 0x72, 0xda, 0x90, 0xb2, 0xca, 0x92, 0x06, 0xe0, 0x6b, 0x8e, 0x0f, 0x97, 0x0d, 0xf1, 0x91, 0x54, 0xdb, 0xa9, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x9a, }; static const unsigned char xdh_wei448_2118_sharedsecret[] = { 0x29, 0xde, 0x99, 0x9f, 0x61, 0xfc, 0x03, 0x3d, 0x34, 0x56, 0x74, 0xa0, 0x6d, 0x98, 0xae, 0xc5, 0xc1, 0xa2, 0x56, 0x1d, 0xaa, 0xbe, 0x66, 0xb7, 0x94, 0x9a, 0xc6, 0x97, 0x36, 0xfe, 0x77, 0x0e, 0xcc, 0x46, 0xa7, 0x8e, 0x1c, 0x44, 0x7e, 0x54, 0xa8, 0xc2, 0xee, 0x85, 0x29, 0xc6, 0x6e, 0xcd, 0xd5, 0x07, 0x5c, 0xbf, 0x10, 0xb3, 0xe2, 0xbf, }; static const wycheproof_xdh_test xdh_wei448_2118 = { .name = "xdh_wei448_2118", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2118_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2118_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2118_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 36 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2119 for XDH, tcId is 37 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2119_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2119_privkey[] = { 0x84, 0xee, 0x1a, 0x35, 0xe5, 0x3e, 0xdb, 0xd4, 0x25, 0xe5, 0xb7, 0xd1, 0x0b, 0xaa, 0xbd, 0xec, 0xb2, 0x72, 0x03, 0x04, 0x81, 0xfe, 0x15, 0x12, 0xad, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0xc1, }; static const unsigned char xdh_wei448_2119_sharedsecret[] = { 0x30, 0x73, 0xe3, 0x73, 0xf1, 0xbf, 0x65, 0x3b, 0xb9, 0xde, 0x54, 0xa2, 0x0b, 0xa1, 0xc0, 0x4e, 0x95, 0x06, 0x8a, 0x5f, 0x3d, 0x56, 0x3c, 0x71, 0x55, 0x2d, 0xd6, 0xb3, 0xf0, 0x51, 0xae, 0xfe, 0xbf, 0x25, 0x65, 0x3c, 0xf3, 0x07, 0x2d, 0x7f, 0x83, 0x01, 0xb6, 0x81, 0x80, 0xb8, 0x47, 0x33, 0x98, 0xde, 0xb9, 0x35, 0x09, 0xa8, 0xaa, 0x34, }; static const wycheproof_xdh_test xdh_wei448_2119 = { .name = "xdh_wei448_2119", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2119_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2119_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2119_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 37 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2120 for XDH, tcId is 38 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2120_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2120_privkey[] = { 0xb8, 0x44, 0xa9, 0xa1, 0x84, 0x3e, 0x72, 0xb7, 0x66, 0x52, 0xa7, 0x0d, 0x48, 0x00, 0x43, 0xa8, 0xf3, 0x7e, 0x92, 0x80, 0x14, 0xaa, 0x2d, 0xef, 0xa9, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0xfb, }; static const unsigned char xdh_wei448_2120_sharedsecret[] = { 0xe5, 0xb5, 0xad, 0x45, 0xf5, 0xd0, 0x98, 0x07, 0x2b, 0xfd, 0xe0, 0x14, 0x66, 0xe4, 0xec, 0xaa, 0xcc, 0x89, 0xa8, 0x4a, 0xde, 0x7c, 0xb2, 0xc4, 0xc4, 0x0a, 0x9f, 0x62, 0x0b, 0x8b, 0x91, 0x17, 0x5d, 0xeb, 0xc5, 0xdb, 0x8d, 0xf1, 0x8a, 0x38, 0x26, 0x28, 0x2c, 0x46, 0xf9, 0x17, 0x6f, 0x6d, 0xa7, 0xc8, 0x26, 0xcf, 0x9c, 0x8d, 0xc8, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_2120 = { .name = "xdh_wei448_2120", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2120_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2120_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2120_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 38 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2121 for XDH, tcId is 39 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2121_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2121_privkey[] = { 0x44, 0xb1, 0x70, 0xa0, 0x9b, 0xc5, 0xaf, 0x3d, 0x31, 0xc5, 0x86, 0x43, 0x27, 0xe1, 0xf2, 0xa7, 0x4e, 0x26, 0xda, 0x7b, 0x3f, 0x39, 0xfa, 0xa3, 0xd2, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0xbc, }; static const unsigned char xdh_wei448_2121_sharedsecret[] = { 0x26, 0xf3, 0x40, 0xb6, 0xfc, 0xe9, 0xcd, 0xb7, 0x68, 0x07, 0xea, 0xec, 0x48, 0xd3, 0x88, 0x07, 0xd4, 0x0d, 0x13, 0x91, 0x1c, 0x1b, 0xb0, 0x1d, 0x5a, 0x45, 0x2f, 0x8d, 0x35, 0xbe, 0xb8, 0x3e, 0x23, 0x53, 0x1e, 0x83, 0x45, 0xf8, 0xe7, 0xed, 0x5a, 0x19, 0x4c, 0x6b, 0x73, 0x33, 0x60, 0x50, 0x4d, 0x6d, 0xd6, 0xdd, 0x6f, 0x88, 0x09, 0x44, }; static const wycheproof_xdh_test xdh_wei448_2121 = { .name = "xdh_wei448_2121", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2121_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2121_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2121_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 39 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2122 for XDH, tcId is 40 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2122_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2122_privkey[] = { 0xe4, 0x54, 0x5b, 0x1f, 0x96, 0xa5, 0x38, 0xe4, 0x81, 0xc0, 0x2b, 0x5c, 0x70, 0x35, 0x14, 0xaf, 0x5d, 0x02, 0xfa, 0x6d, 0xfc, 0x10, 0x3c, 0x42, 0x3a, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0xcd, }; static const unsigned char xdh_wei448_2122_sharedsecret[] = { 0xc9, 0x38, 0x03, 0xd1, 0xab, 0x21, 0xe2, 0x01, 0x66, 0x50, 0x7a, 0x62, 0xfb, 0xb2, 0x1c, 0x4e, 0xe2, 0x03, 0x69, 0x26, 0xad, 0xad, 0x3a, 0x10, 0x4e, 0xe7, 0xc5, 0x22, 0x79, 0xa0, 0xae, 0xfc, 0x71, 0xf7, 0x56, 0xc9, 0x96, 0x98, 0x88, 0xd7, 0xb2, 0x92, 0xab, 0x21, 0x1e, 0xd1, 0x94, 0x1d, 0x30, 0x02, 0xbb, 0x83, 0x5f, 0xf1, 0x49, 0x03, }; static const wycheproof_xdh_test xdh_wei448_2122 = { .name = "xdh_wei448_2122", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2122_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2122_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2122_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 40 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2123 for XDH, tcId is 41 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2123_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2123_privkey[] = { 0x84, 0x2a, 0x93, 0x06, 0xa5, 0x2a, 0x73, 0xba, 0x94, 0x0e, 0x54, 0x5a, 0xa6, 0xa6, 0xfb, 0x43, 0xda, 0x23, 0x7d, 0xfb, 0xd0, 0xd8, 0x20, 0xb0, 0xe4, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0xbf, }; static const unsigned char xdh_wei448_2123_sharedsecret[] = { 0xb3, 0xda, 0x43, 0xf7, 0x0e, 0x0a, 0x4a, 0x76, 0x50, 0x5b, 0x10, 0x8d, 0x35, 0x31, 0xb1, 0xf0, 0x2e, 0x66, 0xc4, 0xe9, 0x16, 0x34, 0xe6, 0x1b, 0x6e, 0xb1, 0x09, 0x8e, 0x7d, 0x87, 0x88, 0x73, 0xdb, 0xe8, 0x21, 0xef, 0x60, 0xaa, 0xa1, 0xa3, 0xa3, 0x35, 0x00, 0x44, 0x52, 0xb5, 0x7b, 0x19, 0x29, 0xd9, 0x66, 0xaf, 0x3a, 0xda, 0x63, 0xe7, }; static const wycheproof_xdh_test xdh_wei448_2123 = { .name = "xdh_wei448_2123", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2123_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2123_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2123_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 41 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2124 for XDH, tcId is 42 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2124_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2124_privkey[] = { 0x44, 0x7c, 0x4f, 0x94, 0xcb, 0xe7, 0x04, 0xcb, 0xb7, 0xc2, 0x63, 0x22, 0x1e, 0x12, 0x2b, 0x08, 0xc0, 0x60, 0x63, 0xea, 0xa4, 0xca, 0x09, 0x30, 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0xd0, }; static const unsigned char xdh_wei448_2124_sharedsecret[] = { 0x06, 0xed, 0xfd, 0xcb, 0x6b, 0x3e, 0xd3, 0x4f, 0x08, 0x1b, 0xb0, 0x01, 0x1f, 0xfb, 0x6d, 0x95, 0x06, 0xf3, 0xc9, 0x0f, 0x1a, 0x44, 0x07, 0x40, 0x69, 0x2a, 0x2f, 0x58, 0x9e, 0x81, 0xe9, 0x29, 0x11, 0x1a, 0x9a, 0xdb, 0x47, 0xe4, 0xbf, 0x30, 0x21, 0x6e, 0xcb, 0xb2, 0x60, 0x55, 0xc1, 0x68, 0x26, 0x4a, 0xe7, 0x95, 0x37, 0x31, 0xfd, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2124 = { .name = "xdh_wei448_2124", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2124_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2124_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2124_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 42 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2125 for XDH, tcId is 43 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2125_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2125_privkey[] = { 0x18, 0x50, 0x43, 0xad, 0x10, 0x8f, 0x93, 0x67, 0x3b, 0x28, 0x32, 0x86, 0x76, 0xde, 0x2a, 0x78, 0xd3, 0x7d, 0x7a, 0xc8, 0xa3, 0xa8, 0xbc, 0x69, 0xed, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0xb7, }; static const unsigned char xdh_wei448_2125_sharedsecret[] = { 0x2a, 0x3c, 0xec, 0x52, 0x06, 0x1b, 0x1a, 0x84, 0x38, 0x3b, 0x68, 0xb8, 0xa4, 0x1c, 0xe1, 0x5e, 0x4f, 0x7e, 0x7c, 0xb1, 0x81, 0x76, 0x2d, 0xc1, 0x8c, 0xe8, 0x66, 0x64, 0x7f, 0x93, 0xbe, 0xca, 0xae, 0x47, 0x66, 0x35, 0x18, 0x8b, 0x62, 0x64, 0x89, 0x28, 0xce, 0x23, 0x13, 0x01, 0x53, 0x98, 0x54, 0x6b, 0x92, 0xf2, 0x91, 0x9f, 0xd9, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2125 = { .name = "xdh_wei448_2125", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2125_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2125_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2125_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 43 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2126 for XDH, tcId is 44 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2126_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2126_privkey[] = { 0x08, 0x35, 0x37, 0x24, 0xfb, 0xc0, 0x39, 0x27, 0xb1, 0x73, 0x59, 0xa8, 0x8c, 0x12, 0x12, 0x76, 0xad, 0x69, 0x79, 0x91, 0xee, 0x89, 0x86, 0x8e, 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x94, }; static const unsigned char xdh_wei448_2126_sharedsecret[] = { 0x30, 0xb1, 0xd9, 0x81, 0x54, 0x76, 0x8a, 0x2a, 0x2a, 0xf5, 0x68, 0xe2, 0xfa, 0x35, 0x77, 0xa0, 0x42, 0xa5, 0xc7, 0xe5, 0xf9, 0xac, 0x91, 0xb1, 0x00, 0x65, 0x5e, 0xa3, 0x32, 0xb4, 0x2d, 0xb5, 0x68, 0x03, 0x4b, 0x15, 0xfd, 0xf7, 0x5c, 0x69, 0x3d, 0x8c, 0x2d, 0x0c, 0x2d, 0xe5, 0x4f, 0xb9, 0xd6, 0xd1, 0x7e, 0xfa, 0x31, 0x6a, 0xa5, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2126 = { .name = "xdh_wei448_2126", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2126_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2126_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2126_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 44 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2127 for XDH, tcId is 45 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2127_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2127_privkey[] = { 0x98, 0xc6, 0xf3, 0x6e, 0x1c, 0xb7, 0x45, 0x28, 0x76, 0x3f, 0x3a, 0xa1, 0x11, 0x96, 0xef, 0x94, 0x49, 0xc6, 0x7b, 0xe3, 0x60, 0xe2, 0x5e, 0x40, 0xab, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0xa3, }; static const unsigned char xdh_wei448_2127_sharedsecret[] = { 0xc3, 0xc7, 0xae, 0xc9, 0x77, 0x86, 0xa4, 0x3b, 0x79, 0xf8, 0xa0, 0x53, 0xcf, 0x18, 0x53, 0x63, 0x11, 0x2f, 0x04, 0x41, 0x1a, 0x8e, 0xf3, 0xd3, 0x28, 0x3f, 0x61, 0xee, 0xac, 0x59, 0xa1, 0xf2, 0x91, 0x8e, 0x10, 0xf5, 0x49, 0x37, 0x93, 0x2f, 0x5a, 0xc1, 0xe3, 0xb7, 0x2f, 0xdb, 0xea, 0x57, 0xf3, 0x42, 0x74, 0x59, 0x8b, 0x17, 0xd7, 0x68, }; static const wycheproof_xdh_test xdh_wei448_2127 = { .name = "xdh_wei448_2127", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2127_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2127_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2127_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 45 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2128 for XDH, tcId is 46 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2128_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2128_privkey[] = { 0x80, 0x89, 0xee, 0x7f, 0x5c, 0x2b, 0x0c, 0xe9, 0x4d, 0xe3, 0x62, 0x73, 0x2a, 0x68, 0xe5, 0x9e, 0x59, 0x6b, 0xcc, 0xf6, 0xc3, 0x43, 0x18, 0xe3, 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0xf0, }; static const unsigned char xdh_wei448_2128_sharedsecret[] = { 0x9d, 0xd0, 0x23, 0xa0, 0x90, 0x68, 0x99, 0xeb, 0x83, 0xde, 0xb1, 0x74, 0x92, 0xe9, 0x38, 0x1f, 0x9d, 0xca, 0x96, 0x20, 0xa1, 0x52, 0x84, 0x96, 0x26, 0xc6, 0x57, 0x26, 0x08, 0x8b, 0x41, 0xfd, 0x28, 0xeb, 0x81, 0x7d, 0x37, 0x26, 0x7c, 0x62, 0xc3, 0x51, 0xba, 0xe2, 0xa9, 0xeb, 0xc6, 0x37, 0xdf, 0x44, 0x90, 0xa2, 0x19, 0x13, 0x4c, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2128 = { .name = "xdh_wei448_2128", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2128_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2128_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2128_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 46 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2129 for XDH, tcId is 47 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2129_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2129_privkey[] = { 0xc4, 0x14, 0x52, 0x2a, 0xb0, 0x3f, 0xfa, 0xcf, 0xf2, 0xc4, 0x3a, 0x81, 0x7b, 0xff, 0x63, 0x8f, 0xdd, 0x24, 0x2f, 0x7d, 0x4b, 0x54, 0x75, 0x74, 0xe5, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0xcc, }; static const unsigned char xdh_wei448_2129_sharedsecret[] = { 0x55, 0xbb, 0x0c, 0xa5, 0xd7, 0xc5, 0x76, 0xde, 0xc8, 0x3c, 0xf3, 0xdc, 0xfd, 0x98, 0x85, 0xbd, 0xb5, 0x04, 0x10, 0xf9, 0x69, 0x0d, 0xee, 0x34, 0xb0, 0xfc, 0x49, 0x3e, 0xdc, 0x04, 0xb6, 0x2e, 0xd0, 0x31, 0x16, 0x0f, 0x73, 0xc5, 0x51, 0x09, 0x76, 0x0f, 0x65, 0x11, 0x9b, 0xd2, 0xb9, 0x58, 0xa6, 0x56, 0x6b, 0x98, 0xee, 0xc6, 0xf5, 0x41, }; static const wycheproof_xdh_test xdh_wei448_2129 = { .name = "xdh_wei448_2129", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2129_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2129_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2129_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 47 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2130 for XDH, tcId is 48 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2130_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2130_privkey[] = { 0x7c, 0x6e, 0x75, 0xb7, 0xf8, 0x43, 0xfc, 0xba, 0x2c, 0xed, 0x4f, 0xee, 0x6b, 0xb1, 0xf7, 0x4d, 0x44, 0xda, 0x59, 0xfd, 0x79, 0xfa, 0x25, 0x74, 0x3a, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0xb3, }; static const unsigned char xdh_wei448_2130_sharedsecret[] = { 0x58, 0x6d, 0x61, 0x34, 0x6b, 0x75, 0xcc, 0x07, 0x12, 0xb9, 0xc1, 0x02, 0x9e, 0x97, 0x56, 0x66, 0x8e, 0xed, 0x14, 0xe6, 0x7e, 0x54, 0x3d, 0xef, 0x8f, 0xc5, 0x1c, 0x28, 0x82, 0xdf, 0xed, 0x27, 0xec, 0xef, 0x73, 0x70, 0xa7, 0x28, 0x0f, 0x55, 0x42, 0xda, 0x3d, 0xc5, 0x59, 0xd2, 0x7d, 0x62, 0x8f, 0x85, 0xe9, 0x7e, 0x04, 0x81, 0xba, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2130 = { .name = "xdh_wei448_2130", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2130_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2130_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2130_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 48 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2131 for XDH, tcId is 49 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2131_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2131_privkey[] = { 0x84, 0x09, 0xfd, 0x3e, 0xa1, 0xf0, 0x32, 0xfd, 0x72, 0x9d, 0xbe, 0x2b, 0x2b, 0x79, 0x4d, 0xa5, 0xcb, 0x92, 0xc7, 0xf9, 0xf2, 0x85, 0xb1, 0x00, 0xd9, 0x84, 0x3f, 0xfd, 0x5b, 0x02, 0x45, 0xa7, 0x8b, 0xd2, 0x73, 0xea, 0x2a, 0x8f, 0x04, 0x31, 0x95, 0x02, 0x45, 0x41, 0x2b, 0xd7, 0xee, 0xc3, 0x69, 0x5a, 0x24, 0xcc, 0x73, 0x89, 0x21, 0xab, }; static const unsigned char xdh_wei448_2131_sharedsecret[] = { 0xe8, 0x6f, 0x72, 0xf3, 0x84, 0x7d, 0x87, 0xc1, 0xfd, 0x19, 0xc1, 0xdd, 0xbc, 0xa5, 0xe1, 0x72, 0xb0, 0x58, 0x47, 0xdd, 0x97, 0xd5, 0xc3, 0x11, 0x22, 0x69, 0x8f, 0x36, 0x1f, 0x89, 0xba, 0xbf, 0x7d, 0x5d, 0xaf, 0x5f, 0x23, 0xcc, 0x87, 0x28, 0x5f, 0x49, 0x08, 0x85, 0x98, 0xf8, 0xf1, 0xf3, 0xfd, 0x17, 0x7c, 0xfb, 0x35, 0xed, 0x32, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2131 = { .name = "xdh_wei448_2131", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2131_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2131_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2131_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 49 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2132 for XDH, tcId is 50 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2132_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, }; static const unsigned char xdh_wei448_2132_privkey[] = { 0x24, 0x83, 0x50, 0xb1, 0x81, 0x36, 0x37, 0x62, 0x91, 0x19, 0xa4, 0x38, 0xb8, 0x27, 0xf3, 0x69, 0xd7, 0x0b, 0x7e, 0x19, 0x9b, 0xc6, 0xc5, 0x66, 0xfe, 0xfd, 0x68, 0xb5, 0x5e, 0x22, 0x4e, 0x64, 0x7a, 0x59, 0x5c, 0x05, 0x7b, 0xe4, 0x4f, 0xf2, 0xee, 0x32, 0x1b, 0x2a, 0xcd, 0xbe, 0x39, 0xb0, 0x9b, 0x3e, 0x56, 0xf3, 0xa9, 0xa0, 0xe4, 0xbe, }; static const unsigned char xdh_wei448_2132_sharedsecret[] = { 0xfe, 0x2e, 0x38, 0xc9, 0x30, 0xca, 0xba, 0xdf, 0x8a, 0xa9, 0xc6, 0x05, 0xa9, 0x04, 0x85, 0x0f, 0x6c, 0xe7, 0xdc, 0x35, 0xef, 0xb2, 0xaf, 0x72, 0xeb, 0xb2, 0x8e, 0xc4, 0xaf, 0x31, 0x19, 0x9d, 0x9d, 0xba, 0x57, 0xc4, 0x33, 0x7c, 0x84, 0x88, 0xb9, 0xaa, 0x3d, 0xed, 0xd5, 0x13, 0x49, 0xa4, 0x41, 0xbd, 0xbf, 0x59, 0x24, 0x5a, 0xd2, 0x58, }; static const wycheproof_xdh_test xdh_wei448_2132 = { .name = "xdh_wei448_2132", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2132_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2132_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2132_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 50 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2133 for XDH, tcId is 51 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2133_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_2133_privkey[] = { 0xd8, 0x45, 0x48, 0x05, 0xfe, 0x07, 0xcc, 0x84, 0x5d, 0xb6, 0x75, 0xbb, 0x19, 0x34, 0x8f, 0xd1, 0x0f, 0x97, 0xd2, 0x6a, 0x50, 0xd7, 0x29, 0xb5, 0xcd, 0x51, 0x09, 0x77, 0xe9, 0xab, 0xd9, 0xfd, 0x4c, 0x8a, 0x82, 0x41, 0x04, 0x68, 0xb6, 0x07, 0x13, 0x07, 0xb0, 0xbd, 0x57, 0xc4, 0xed, 0x34, 0x64, 0x39, 0x11, 0x05, 0xf6, 0x6e, 0x4b, 0xee, }; static const unsigned char xdh_wei448_2133_sharedsecret[] = { 0xc8, 0xb5, 0xae, 0x9c, 0x08, 0x2b, 0xf1, 0xec, 0xe4, 0x6b, 0x6b, 0x72, 0x4f, 0x96, 0x66, 0xd4, 0x57, 0x1a, 0x47, 0x7a, 0x20, 0xcc, 0xa6, 0x76, 0x42, 0x38, 0x7a, 0x6e, 0x89, 0x1f, 0x11, 0x88, 0x71, 0x8c, 0x46, 0xcd, 0xe8, 0xc2, 0xef, 0x20, 0x4e, 0x7f, 0x77, 0xca, 0xe4, 0xc1, 0x03, 0x20, 0x93, 0x0b, 0x1f, 0x0c, 0x2d, 0xa9, 0x15, 0xd9, }; static const wycheproof_xdh_test xdh_wei448_2133 = { .name = "xdh_wei448_2133", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2133_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2133_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2133_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 51 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2134 for XDH, tcId is 52 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2134_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2134_privkey[] = { 0x50, 0xae, 0x60, 0x84, 0x9c, 0x94, 0x0c, 0x5c, 0xf7, 0x0b, 0x23, 0x72, 0x28, 0xdb, 0xfd, 0x34, 0xc2, 0xe1, 0x66, 0x06, 0xc7, 0xb8, 0xcd, 0x55, 0x08, 0xab, 0x38, 0xbb, 0x45, 0x97, 0xc3, 0x28, 0xc5, 0x8f, 0x0d, 0x3c, 0x8f, 0xdf, 0x9b, 0x9b, 0xbb, 0x21, 0xab, 0x85, 0x8f, 0x02, 0xb7, 0x39, 0xf2, 0xda, 0x73, 0xd8, 0x27, 0xdd, 0xcd, 0xb5, }; static const unsigned char xdh_wei448_2134_sharedsecret[] = { 0xf5, 0xaa, 0xa3, 0x37, 0x4e, 0x01, 0xc7, 0xb6, 0xa3, 0x68, 0x04, 0xd6, 0x28, 0x4d, 0xdf, 0xc6, 0x8e, 0x6f, 0x4f, 0x33, 0x09, 0x0d, 0xd3, 0x07, 0x5b, 0x67, 0xec, 0x9a, 0xf2, 0xfb, 0x4c, 0x99, 0x1d, 0x0d, 0xbd, 0x7f, 0x6e, 0xb3, 0xa1, 0x77, 0xfb, 0x65, 0x0a, 0x5a, 0x05, 0x5b, 0x8d, 0x6b, 0xc9, 0xa2, 0x18, 0xbb, 0xfb, 0xfe, 0x6f, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_2134 = { .name = "xdh_wei448_2134", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2134_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2134_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2134_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 52 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2135 for XDH, tcId is 53 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2135_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x80, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_2135_privkey[] = { 0xc8, 0x9c, 0x49, 0x16, 0xc0, 0xeb, 0x3c, 0x28, 0x7e, 0xb1, 0x02, 0xd4, 0x8f, 0x13, 0x88, 0x20, 0x11, 0x53, 0x28, 0xd8, 0x32, 0xaa, 0x80, 0xb6, 0x86, 0x39, 0x36, 0x94, 0xb8, 0xea, 0x1e, 0x89, 0xa0, 0x15, 0xbe, 0xd4, 0x4c, 0x30, 0x2b, 0x18, 0xc8, 0xa3, 0xc0, 0x94, 0x8a, 0xb4, 0x06, 0xad, 0xa5, 0x67, 0x29, 0xd5, 0x99, 0xc5, 0x5d, 0xb8, }; static const unsigned char xdh_wei448_2135_sharedsecret[] = { 0x81, 0x59, 0xaf, 0x5d, 0xbd, 0x95, 0x05, 0x8e, 0x4d, 0x92, 0x50, 0x4a, 0xac, 0xb1, 0x9c, 0xf0, 0x0f, 0xe2, 0xef, 0xbc, 0xa3, 0x96, 0x31, 0x1f, 0xa9, 0xe2, 0xee, 0x60, 0xca, 0x16, 0xeb, 0xcd, 0xae, 0xad, 0x05, 0xd1, 0xa7, 0x7a, 0x72, 0x92, 0x34, 0x77, 0x3e, 0xe4, 0x43, 0x76, 0x24, 0xe4, 0x25, 0x58, 0x0a, 0x4a, 0x55, 0xd5, 0xa4, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_2135 = { .name = "xdh_wei448_2135", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2135_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2135_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2135_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 53 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2136 for XDH, tcId is 54 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2136_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_2136_privkey[] = { 0xb8, 0x1e, 0x63, 0x30, 0x65, 0x9a, 0x23, 0x39, 0x00, 0xa8, 0xee, 0xc1, 0x46, 0x16, 0xae, 0x0b, 0x77, 0x75, 0xda, 0x7d, 0x22, 0x5a, 0xd2, 0x81, 0xb9, 0x86, 0x29, 0x1f, 0xd4, 0x2c, 0x3b, 0x78, 0x0c, 0x40, 0x6e, 0xc7, 0xe9, 0xb2, 0xb2, 0xc8, 0xaf, 0x9b, 0x1f, 0x81, 0x58, 0x74, 0x7f, 0x7b, 0x6d, 0x82, 0x9f, 0x1c, 0x00, 0x51, 0xe1, 0xac, }; static const unsigned char xdh_wei448_2136_sharedsecret[] = { 0x21, 0x14, 0xb2, 0x60, 0x0a, 0xca, 0x27, 0x6c, 0xc6, 0xc2, 0x8c, 0xf3, 0x94, 0x7d, 0xbf, 0x3b, 0x98, 0xf0, 0x6a, 0xe4, 0xf7, 0xf5, 0x33, 0xa0, 0x9e, 0x22, 0xef, 0xa8, 0xc0, 0x5e, 0x91, 0xdd, 0x49, 0x22, 0xce, 0xba, 0xa6, 0x49, 0x17, 0xab, 0x12, 0xf4, 0x54, 0x22, 0xcc, 0xa8, 0x99, 0xef, 0xc2, 0xf9, 0x58, 0x0b, 0x2e, 0x9a, 0x6a, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2136 = { .name = "xdh_wei448_2136", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2136_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2136_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2136_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 54 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2137 for XDH, tcId is 55 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2137_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2137_privkey[] = { 0x2c, 0x7c, 0xd8, 0xe4, 0x13, 0x30, 0x95, 0x4c, 0xec, 0xdc, 0x9c, 0xaf, 0x7e, 0x07, 0x9a, 0x6f, 0x09, 0xe4, 0xb4, 0x06, 0x37, 0xdd, 0x6e, 0x40, 0x25, 0x2d, 0x77, 0x1f, 0x96, 0x54, 0x84, 0xa7, 0xfc, 0x20, 0x8e, 0x13, 0xfd, 0xc4, 0x92, 0x02, 0x5c, 0xab, 0xe9, 0x8a, 0xa5, 0x53, 0x36, 0xa7, 0xdb, 0xa3, 0x6a, 0xc3, 0xae, 0x4d, 0x83, 0x8f, }; static const unsigned char xdh_wei448_2137_sharedsecret[] = { 0x88, 0x74, 0x92, 0xe4, 0x55, 0x7c, 0x0b, 0x6e, 0xca, 0xb3, 0x4e, 0xcc, 0x6b, 0xdf, 0x06, 0x08, 0xfe, 0xbe, 0x33, 0xfb, 0x05, 0xb2, 0xaa, 0x4a, 0xb8, 0xd8, 0x9e, 0xc6, 0xb4, 0x76, 0x51, 0x5c, 0x90, 0xa6, 0x6e, 0x1c, 0xfd, 0x3c, 0xde, 0x5b, 0x32, 0x40, 0xef, 0x8f, 0xbe, 0x0b, 0xb5, 0x3c, 0xfa, 0x6b, 0x25, 0x32, 0xd0, 0xc9, 0x4c, 0xaf, }; static const wycheproof_xdh_test xdh_wei448_2137 = { .name = "xdh_wei448_2137", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2137_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2137_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2137_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 55 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2138 for XDH, tcId is 56 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2138_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2138_privkey[] = { 0x48, 0x04, 0xaf, 0xd0, 0x55, 0xec, 0x05, 0xf3, 0x35, 0xb7, 0xe3, 0xee, 0xbb, 0xde, 0x2a, 0x6d, 0xe0, 0x10, 0xce, 0x74, 0x95, 0xe6, 0xc0, 0xd0, 0x21, 0x73, 0xfa, 0x8c, 0x48, 0xbb, 0x49, 0x53, 0x75, 0xb7, 0xd1, 0x49, 0xc6, 0x7b, 0x92, 0xd2, 0x88, 0x5a, 0xcb, 0x8d, 0x8b, 0xbb, 0x51, 0xa3, 0x17, 0x45, 0x37, 0x88, 0x67, 0x1e, 0xfa, 0x9f, }; static const unsigned char xdh_wei448_2138_sharedsecret[] = { 0xd6, 0xa2, 0x72, 0x4d, 0xc9, 0xca, 0x15, 0x79, 0xd9, 0x4a, 0x8c, 0xc8, 0x81, 0x5a, 0x3e, 0xd3, 0x92, 0xb9, 0xe1, 0x0b, 0x39, 0xf5, 0x7c, 0x74, 0x7f, 0x7b, 0x2d, 0x84, 0xf5, 0x49, 0x69, 0x06, 0x2c, 0x8b, 0x86, 0x92, 0x9a, 0x1a, 0x12, 0xf4, 0x66, 0xd3, 0xef, 0x95, 0x98, 0xf1, 0x90, 0x47, 0x73, 0xa4, 0xee, 0x93, 0x8f, 0x0f, 0x5d, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_2138 = { .name = "xdh_wei448_2138", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2138_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2138_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2138_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 56 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2139 for XDH, tcId is 57 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2139_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2139_privkey[] = { 0x78, 0xc1, 0xed, 0x99, 0x18, 0xd0, 0xaa, 0x85, 0xf8, 0x8a, 0xf3, 0x95, 0x54, 0x7a, 0x07, 0x10, 0x36, 0x95, 0xed, 0xcf, 0x5a, 0xf8, 0xff, 0xdf, 0x14, 0xae, 0xb9, 0x8d, 0xc0, 0x10, 0xa2, 0x38, 0xca, 0xe2, 0xd3, 0x9d, 0xb6, 0xa9, 0x3e, 0xc0, 0x66, 0x45, 0x53, 0x77, 0x65, 0x4d, 0x69, 0x78, 0x89, 0x0f, 0x55, 0x90, 0x07, 0x7d, 0xd2, 0xa9, }; static const unsigned char xdh_wei448_2139_sharedsecret[] = { 0x6d, 0xe6, 0x08, 0x14, 0x85, 0xf0, 0x8c, 0x30, 0x27, 0x5c, 0x2a, 0xcc, 0x64, 0xd9, 0x25, 0xc4, 0xb1, 0xde, 0xac, 0x3f, 0xe4, 0xaa, 0x36, 0x13, 0xeb, 0x83, 0xa5, 0xff, 0x4c, 0x19, 0x15, 0xd4, 0xed, 0x06, 0xae, 0xde, 0xbe, 0xc3, 0x65, 0x92, 0xfa, 0xd3, 0x72, 0xe4, 0x69, 0x4d, 0x28, 0x05, 0x8b, 0x14, 0x24, 0x5c, 0xd4, 0x9f, 0xf1, 0xb2, }; static const wycheproof_xdh_test xdh_wei448_2139 = { .name = "xdh_wei448_2139", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2139_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2139_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2139_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 57 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2140 for XDH, tcId is 58 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2140_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2140_privkey[] = { 0xec, 0xbb, 0x1b, 0xbb, 0x54, 0x5d, 0xf1, 0xf0, 0x5b, 0xb7, 0x29, 0x79, 0x46, 0x29, 0x13, 0xa3, 0x6b, 0x85, 0x69, 0xd3, 0xe3, 0x94, 0xa9, 0xc6, 0x61, 0xca, 0x3f, 0x6b, 0x16, 0x44, 0xc3, 0x5e, 0xbe, 0x36, 0xdc, 0x58, 0xcc, 0x7d, 0xd0, 0x54, 0xe2, 0xa4, 0x46, 0xb9, 0x96, 0x77, 0xc2, 0x8d, 0xec, 0xc3, 0x50, 0xd3, 0x83, 0xc6, 0x69, 0x94, }; static const unsigned char xdh_wei448_2140_sharedsecret[] = { 0xf7, 0x64, 0xdf, 0xa3, 0xbc, 0x00, 0x15, 0xfc, 0xb9, 0x78, 0x39, 0x0c, 0xc3, 0xd2, 0x9c, 0x8d, 0x47, 0xcc, 0x8d, 0x61, 0xcf, 0x41, 0x22, 0x75, 0x4b, 0xf9, 0x05, 0xd1, 0x10, 0x3e, 0xa5, 0xf6, 0x64, 0xf7, 0x30, 0x01, 0x1e, 0xf9, 0x7c, 0xd3, 0x2c, 0x25, 0x01, 0xd3, 0x13, 0xe4, 0x56, 0xff, 0xef, 0xb9, 0xe4, 0xcb, 0xcc, 0x40, 0x13, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2140 = { .name = "xdh_wei448_2140", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2140_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2140_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2140_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 58 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2141 for XDH, tcId is 59 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2141_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2141_privkey[] = { 0x84, 0xc0, 0xd8, 0x06, 0xee, 0xd4, 0xda, 0x2f, 0xfc, 0xac, 0xa8, 0x8c, 0x7f, 0x03, 0x89, 0x05, 0x9f, 0xff, 0x0e, 0xe8, 0xf5, 0x80, 0xd0, 0x80, 0xe9, 0x67, 0x2a, 0x44, 0x1f, 0x5a, 0xb1, 0x90, 0x69, 0xfe, 0xf6, 0x68, 0xab, 0x20, 0xd2, 0x4f, 0x04, 0x68, 0xa5, 0xc3, 0xe5, 0x49, 0xa1, 0x70, 0x12, 0x12, 0x21, 0x34, 0xe0, 0x27, 0xb4, 0x84, }; static const unsigned char xdh_wei448_2141_sharedsecret[] = { 0xa1, 0x05, 0xe0, 0x28, 0x39, 0x41, 0x54, 0x50, 0x6e, 0xc0, 0x7c, 0x69, 0x6f, 0xe6, 0x35, 0x84, 0x3b, 0x8a, 0x53, 0x5b, 0x03, 0xd3, 0x91, 0x1d, 0xc5, 0x27, 0xc4, 0x33, 0xea, 0x4e, 0x24, 0x4e, 0xbf, 0xc7, 0xba, 0x07, 0x93, 0xac, 0x14, 0x66, 0xf3, 0x21, 0x53, 0xc1, 0x6c, 0xa1, 0xdc, 0xe8, 0xa5, 0xad, 0xec, 0xb5, 0xee, 0xcb, 0x82, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2141 = { .name = "xdh_wei448_2141", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2141_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2141_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2141_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 59 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2142 for XDH, tcId is 60 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2142_peerpubkey[] = { 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2142_privkey[] = { 0xbc, 0x7b, 0xce, 0x37, 0x43, 0x4c, 0x0a, 0x1d, 0x05, 0xef, 0xf4, 0x28, 0x03, 0x4f, 0x75, 0xed, 0x74, 0x54, 0xed, 0xe6, 0xb2, 0xa6, 0xe3, 0x4e, 0xd4, 0xfc, 0xed, 0xc0, 0x50, 0x34, 0x9c, 0x86, 0x6c, 0x40, 0xa2, 0x7c, 0x27, 0x89, 0x8a, 0xfe, 0xc4, 0x1b, 0x3b, 0x47, 0x7f, 0x0d, 0xf5, 0xc5, 0x35, 0x6e, 0x57, 0xd7, 0x56, 0x2c, 0xdd, 0xa5, }; static const unsigned char xdh_wei448_2142_sharedsecret[] = { 0x96, 0x3f, 0xf8, 0xe5, 0xea, 0x53, 0x41, 0x78, 0xe1, 0x92, 0x2c, 0xc0, 0x6c, 0x63, 0x83, 0x67, 0xc2, 0xc4, 0x69, 0x0a, 0xba, 0x7e, 0x4a, 0xaa, 0xb8, 0x34, 0x22, 0x10, 0xb9, 0x03, 0x57, 0x27, 0x06, 0x27, 0x62, 0x63, 0x1f, 0x79, 0xe7, 0x09, 0xd2, 0xba, 0xf0, 0x64, 0x6f, 0x0d, 0x9a, 0x37, 0xdf, 0x02, 0xd5, 0x31, 0x79, 0x1b, 0xc9, 0x40, }; static const wycheproof_xdh_test xdh_wei448_2142 = { .name = "xdh_wei448_2142", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2142_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2142_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2142_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 60 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2143 for XDH, tcId is 61 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2143_peerpubkey[] = { 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2143_privkey[] = { 0xa8, 0x9a, 0x7e, 0x06, 0x07, 0x36, 0xdb, 0x3c, 0xb3, 0xe3, 0x7e, 0xe3, 0xb5, 0xdb, 0x1a, 0x7c, 0xe4, 0x51, 0x66, 0x74, 0xbe, 0xf7, 0x15, 0xe8, 0xf8, 0x36, 0xf0, 0x4f, 0x7e, 0x09, 0x57, 0xb7, 0xe5, 0x0e, 0x9c, 0xec, 0x37, 0x70, 0x07, 0xa0, 0x8c, 0x23, 0x43, 0x8d, 0xce, 0x6c, 0x32, 0xf4, 0x09, 0xd7, 0xbb, 0x89, 0x4b, 0x40, 0x4f, 0xe6, }; static const unsigned char xdh_wei448_2143_sharedsecret[] = { 0x29, 0x72, 0x3d, 0x84, 0xea, 0xef, 0xd5, 0x3b, 0x8e, 0xb6, 0xa5, 0x19, 0x4f, 0xd3, 0xa4, 0x01, 0xc7, 0xb6, 0xac, 0x7c, 0x16, 0x65, 0xa5, 0xe9, 0x7e, 0x28, 0x40, 0x9c, 0x9c, 0x75, 0xc9, 0xba, 0xe8, 0x04, 0x9b, 0xc2, 0x83, 0x8b, 0x2b, 0x9b, 0xd4, 0xdc, 0xda, 0xf6, 0x19, 0x2a, 0x9e, 0x30, 0x80, 0xc0, 0xaa, 0xc2, 0x21, 0x9e, 0xe8, 0x11, }; static const wycheproof_xdh_test xdh_wei448_2143 = { .name = "xdh_wei448_2143", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2143_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2143_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2143_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 61 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2144 for XDH, tcId is 62 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2144_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2144_privkey[] = { 0x68, 0x27, 0x3d, 0x87, 0x9a, 0x2c, 0x85, 0xf9, 0x8e, 0x8c, 0x05, 0x1b, 0xda, 0xfc, 0xda, 0xec, 0x09, 0x7b, 0x07, 0x62, 0x2d, 0xea, 0x9a, 0xc6, 0x78, 0x4e, 0x36, 0x15, 0xf2, 0x74, 0x38, 0xea, 0x75, 0xcd, 0x4e, 0xff, 0xbb, 0xab, 0xe7, 0x05, 0xf6, 0x63, 0xa2, 0x44, 0x6a, 0xb8, 0xa2, 0x31, 0x0f, 0x30, 0xf9, 0x05, 0x28, 0xf5, 0x75, 0xf2, }; static const unsigned char xdh_wei448_2144_sharedsecret[] = { 0x56, 0x50, 0xaf, 0x69, 0xcd, 0x01, 0x61, 0x70, 0xac, 0x1d, 0x5b, 0xbe, 0x84, 0xf0, 0x3d, 0x47, 0xe1, 0xfe, 0x89, 0xc7, 0xe2, 0xda, 0xed, 0xbe, 0xa8, 0xf0, 0x26, 0x54, 0xb7, 0x3e, 0xfe, 0xdb, 0xfe, 0xcd, 0xcd, 0x92, 0x5d, 0x79, 0x81, 0xa9, 0xe9, 0xbd, 0x2f, 0x69, 0x11, 0x7f, 0x64, 0x7f, 0xe9, 0xf5, 0x08, 0x23, 0x3b, 0x68, 0xd3, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_2144 = { .name = "xdh_wei448_2144", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2144_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2144_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2144_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 62 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2145 for XDH, tcId is 63 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2145_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2145_privkey[] = { 0xac, 0x23, 0xf2, 0xc2, 0x9d, 0xd7, 0x91, 0x0e, 0xbd, 0xb4, 0x7e, 0xfc, 0x5c, 0xcb, 0x34, 0x5d, 0xc9, 0x39, 0x2b, 0xb5, 0xde, 0xf5, 0x01, 0x8d, 0xc8, 0xcb, 0x41, 0x06, 0x35, 0xf5, 0x6e, 0x63, 0xab, 0x92, 0xbc, 0xda, 0xc4, 0x17, 0x7c, 0x6b, 0xd3, 0x45, 0x0b, 0x09, 0x84, 0x93, 0xb6, 0x8b, 0xb5, 0x4e, 0xa4, 0x7b, 0x76, 0x93, 0x34, 0xc4, }; static const unsigned char xdh_wei448_2145_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2145 = { .name = "xdh_wei448_2145", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2145_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2145_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2145_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 63 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2146 for XDH, tcId is 65 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2146_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2146_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2146_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2146 = { .name = "xdh_wei448_2146", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2146_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2146_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2146_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 65 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2147 for XDH, tcId is 66 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2147_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2147_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2147_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2147 = { .name = "xdh_wei448_2147", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2147_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2147_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2147_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 66 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2148 for XDH, tcId is 67 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2148_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2148_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2148_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2148 = { .name = "xdh_wei448_2148", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2148_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2148_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2148_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 67 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2149 for XDH, tcId is 68 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2149_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2149_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2149_sharedsecret[] = { 0x7a, 0xd5, 0x21, 0x0b, 0x70, 0xf2, 0xa7, 0xf4, 0xf2, 0xfe, 0x30, 0x6c, 0xe0, 0x98, 0xe3, 0xad, 0x30, 0x65, 0xca, 0xfd, 0x6f, 0x5a, 0x8d, 0x3e, 0x04, 0xdf, 0x33, 0xda, 0x71, 0x89, 0xd4, 0x49, 0xba, 0xcc, 0x85, 0x64, 0xed, 0x5b, 0x9f, 0x15, 0x32, 0xe8, 0x73, 0x74, 0xea, 0xe9, 0xd9, 0x51, 0xf4, 0x5c, 0x38, 0x3b, 0xa9, 0xd8, 0x05, 0x85, }; static const wycheproof_xdh_test xdh_wei448_2149 = { .name = "xdh_wei448_2149", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2149_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2149_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2149_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 68 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2150 for XDH, tcId is 69 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2150_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2150_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2150_sharedsecret[] = { 0x25, 0xa8, 0xe0, 0x34, 0xc3, 0x96, 0x3e, 0x07, 0x65, 0xfb, 0x59, 0xe6, 0xb8, 0x85, 0x58, 0xcd, 0x67, 0x4a, 0xc2, 0xdd, 0x2b, 0x31, 0x02, 0x21, 0xec, 0xf3, 0x3d, 0x16, 0x8b, 0x9f, 0xaf, 0x5f, 0xe9, 0x42, 0x53, 0xaf, 0x64, 0x29, 0x7b, 0x9a, 0x06, 0x1b, 0xfa, 0x93, 0xd6, 0xe3, 0xeb, 0x91, 0x9a, 0x51, 0x58, 0x6f, 0xeb, 0x95, 0x5c, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_2150 = { .name = "xdh_wei448_2150", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2150_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2150_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2150_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 69 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2151 for XDH, tcId is 70 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2151_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2151_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2151_sharedsecret[] = { 0x85, 0x6b, 0x87, 0x07, 0xb1, 0x6e, 0x1b, 0x21, 0xdf, 0xc5, 0x47, 0xfd, 0xb0, 0x4c, 0x61, 0xa4, 0xae, 0xd9, 0xf9, 0x00, 0x1f, 0x3f, 0x26, 0x40, 0x49, 0x01, 0xe9, 0xba, 0x30, 0x93, 0x3c, 0xdd, 0x7c, 0xa9, 0xe2, 0xa0, 0xe5, 0x77, 0x00, 0x58, 0x8e, 0xb8, 0x57, 0x63, 0x12, 0xea, 0xd8, 0xee, 0x57, 0x91, 0xa8, 0xec, 0xff, 0x32, 0xef, 0xaa, }; static const wycheproof_xdh_test xdh_wei448_2151 = { .name = "xdh_wei448_2151", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2151_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2151_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2151_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 70 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2152 for XDH, tcId is 71 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2152_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2152_privkey[] = { 0xb8, 0xa9, 0xb9, 0xf6, 0xf1, 0xaf, 0x4f, 0x15, 0x25, 0xa5, 0x3b, 0x89, 0x5c, 0x3b, 0xf6, 0x4f, 0x23, 0x16, 0x1f, 0x67, 0x0f, 0xcf, 0xf2, 0xfb, 0xa7, 0x9b, 0x8f, 0xda, 0xc0, 0x73, 0x95, 0xee, 0x99, 0xbf, 0x46, 0x27, 0x8f, 0x3e, 0x94, 0x8a, 0x55, 0x67, 0x07, 0xcd, 0x2a, 0x88, 0x9b, 0xae, 0x69, 0x44, 0x94, 0x96, 0x29, 0x5c, 0xc5, 0xa2, }; static const unsigned char xdh_wei448_2152_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2152 = { .name = "xdh_wei448_2152", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2152_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2152_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2152_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439, tcId is 71 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2153 for XDH, tcId is 72 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2153_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2153_privkey[] = { 0xe0, 0xb3, 0x2c, 0xd5, 0xd6, 0x02, 0xcb, 0x78, 0xe5, 0x4c, 0x87, 0xfe, 0x29, 0xeb, 0x60, 0x75, 0x88, 0x44, 0x63, 0x33, 0x4b, 0x25, 0x1d, 0xe2, 0x03, 0xf4, 0xc4, 0x6c, 0xb6, 0x8a, 0xc2, 0x47, 0x83, 0x91, 0xf0, 0xa3, 0xf1, 0x9c, 0xcd, 0xe5, 0xf8, 0xec, 0x64, 0x0c, 0xc7, 0xb5, 0x88, 0x77, 0xb4, 0x3e, 0x5b, 0x8b, 0x57, 0x8b, 0x40, 0xd7, }; static const unsigned char xdh_wei448_2153_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2153 = { .name = "xdh_wei448_2153", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2153_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2153_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2153_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365440, tcId is 72 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2154 for XDH, tcId is 73 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2154_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2154_privkey[] = { 0x64, 0x0b, 0x78, 0x20, 0xd3, 0xc9, 0xbc, 0x49, 0xd6, 0x85, 0xfb, 0x80, 0x74, 0xfe, 0x98, 0x42, 0x52, 0x2f, 0x9c, 0x5a, 0xd3, 0x34, 0xda, 0x17, 0xa6, 0x47, 0xc6, 0xbd, 0xae, 0x72, 0x45, 0x4c, 0xcd, 0x25, 0xca, 0x33, 0x72, 0xb6, 0x10, 0xeb, 0xf8, 0x9c, 0x0a, 0x33, 0x6b, 0x4f, 0xd5, 0x9a, 0x82, 0xf6, 0x87, 0x5f, 0x37, 0xdc, 0x86, 0xe4, }; static const unsigned char xdh_wei448_2154_sharedsecret[] = { 0x48, 0x68, 0x06, 0x12, 0x6f, 0xa8, 0xfd, 0x7b, 0x25, 0x59, 0x15, 0x56, 0x0d, 0x4d, 0x54, 0xad, 0xa9, 0xac, 0xc0, 0x5b, 0x1b, 0x54, 0x64, 0xcf, 0x7b, 0x5f, 0x11, 0x67, 0x1f, 0xf0, 0x07, 0x6b, 0x2a, 0x38, 0x88, 0x65, 0x28, 0x55, 0xc2, 0x81, 0x8b, 0xc2, 0x8b, 0xa3, 0xc7, 0xb3, 0x44, 0xcb, 0x10, 0x06, 0x14, 0x3b, 0xfe, 0x1a, 0x97, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_2154 = { .name = "xdh_wei448_2154", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2154_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2154_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2154_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 73 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2155 for XDH, tcId is 74 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2155_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2155_privkey[] = { 0x04, 0x51, 0x6d, 0xd7, 0x0b, 0xfe, 0x73, 0x92, 0xde, 0x61, 0xcf, 0x35, 0x2e, 0xce, 0x15, 0xc2, 0x3e, 0x2a, 0x64, 0x21, 0x52, 0xfe, 0x40, 0xe9, 0x62, 0xc0, 0x53, 0x83, 0xd4, 0xf8, 0xeb, 0xd4, 0x54, 0x82, 0xe1, 0xb3, 0xc0, 0x4a, 0x36, 0x64, 0x45, 0x7f, 0x98, 0xdf, 0xa8, 0x37, 0x19, 0xa5, 0x28, 0x06, 0x39, 0xc5, 0xa1, 0x2d, 0xcb, 0x94, }; static const unsigned char xdh_wei448_2155_sharedsecret[] = { 0xcc, 0x0e, 0xef, 0x36, 0x96, 0xa6, 0x2c, 0xbf, 0xe4, 0xc5, 0x85, 0x51, 0x4a, 0x90, 0xa7, 0xe1, 0x2e, 0xc2, 0x4e, 0x10, 0x1e, 0x84, 0x58, 0xeb, 0xfb, 0xe7, 0x5d, 0x9d, 0xb7, 0xa8, 0x26, 0x60, 0x74, 0x16, 0xd3, 0xf2, 0xa6, 0x9d, 0x7a, 0xc6, 0xc0, 0x3f, 0x27, 0xe1, 0xe2, 0x25, 0xee, 0x75, 0x67, 0x72, 0x78, 0xfc, 0x2f, 0x26, 0xdd, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2155 = { .name = "xdh_wei448_2155", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2155_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2155_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2155_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 74 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2156 for XDH, tcId is 75 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2156_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2156_privkey[] = { 0xfc, 0xa7, 0x84, 0xf0, 0x39, 0x79, 0x8b, 0xe5, 0x96, 0xaf, 0xee, 0xda, 0xec, 0x5b, 0x38, 0x68, 0xf0, 0xc8, 0x29, 0x89, 0x27, 0x72, 0x1f, 0xb8, 0x2a, 0xd0, 0x45, 0x46, 0xb7, 0xe4, 0xc4, 0xf4, 0x2f, 0xa1, 0xfc, 0x3f, 0xc7, 0xd1, 0x2f, 0x43, 0xf5, 0xa2, 0xe8, 0xa9, 0x63, 0x62, 0xfc, 0xc7, 0x1a, 0x34, 0xb4, 0x4b, 0x55, 0x9e, 0x0b, 0x96, }; static const unsigned char xdh_wei448_2156_sharedsecret[] = { 0xa7, 0x29, 0xe6, 0xec, 0xe3, 0xdb, 0x18, 0xb7, 0xe9, 0x42, 0x3b, 0xe4, 0xe7, 0xfa, 0xe1, 0x8c, 0xaa, 0x29, 0x1e, 0x61, 0xce, 0x84, 0xb6, 0x08, 0x56, 0x9a, 0xb4, 0x61, 0xb2, 0x70, 0x72, 0x4f, 0xd9, 0x2f, 0x3e, 0x2b, 0x80, 0x86, 0xfe, 0x06, 0x76, 0x73, 0xca, 0x7a, 0xc0, 0x53, 0x57, 0xee, 0x70, 0x1d, 0x69, 0xe4, 0x05, 0x6d, 0x5b, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2156 = { .name = "xdh_wei448_2156", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2156_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2156_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2156_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 75 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2157 for XDH, tcId is 76 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2157_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2157_privkey[] = { 0x74, 0x2b, 0x8c, 0x0b, 0x0a, 0xb0, 0x10, 0x4a, 0x9e, 0xf9, 0x63, 0x4c, 0x0a, 0xad, 0x02, 0x3f, 0x35, 0xe4, 0x1f, 0xb9, 0x53, 0x71, 0x71, 0x21, 0xce, 0x4c, 0x2a, 0xeb, 0xc1, 0xa1, 0x28, 0xe7, 0xc0, 0x43, 0x1c, 0xd1, 0x34, 0x7a, 0x62, 0x41, 0x68, 0x5f, 0x71, 0x74, 0xa8, 0x51, 0x2d, 0x41, 0x7e, 0xba, 0xaa, 0x46, 0xee, 0x78, 0x0a, 0x8a, }; static const unsigned char xdh_wei448_2157_sharedsecret[] = { 0xd9, 0x2b, 0x02, 0xd7, 0xbb, 0x99, 0x52, 0xf4, 0xca, 0x82, 0x6b, 0x2b, 0x51, 0xf1, 0xa3, 0xd4, 0xde, 0x1f, 0xd4, 0x45, 0x9f, 0x0d, 0x01, 0x98, 0x53, 0xf3, 0xa9, 0x60, 0xd5, 0x4f, 0x33, 0x54, 0xd8, 0xe4, 0x0f, 0xb2, 0x8d, 0x1b, 0xe6, 0x56, 0x37, 0xbb, 0x7d, 0xba, 0x05, 0x71, 0xff, 0x83, 0x79, 0x7b, 0x71, 0x06, 0xc7, 0x49, 0x74, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2157 = { .name = "xdh_wei448_2157", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2157_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2157_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2157_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 76 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2158 for XDH, tcId is 82 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2158_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2158_privkey[] = { 0x44, 0xe6, 0xd9, 0x86, 0x24, 0xb7, 0xdf, 0xda, 0x55, 0x74, 0x08, 0x21, 0x1b, 0xf9, 0xdd, 0xb1, 0x7c, 0xe0, 0xb8, 0x73, 0x94, 0x28, 0x4a, 0x3d, 0xfb, 0x6c, 0x73, 0x8b, 0x67, 0x4c, 0xd7, 0xc5, 0xb2, 0xa7, 0x5f, 0x95, 0x62, 0x38, 0x7e, 0x67, 0x0b, 0x06, 0x3c, 0x7f, 0x37, 0x4b, 0x7b, 0xea, 0x66, 0x97, 0x38, 0xe4, 0x07, 0xda, 0xc3, 0xf1, }; static const unsigned char xdh_wei448_2158_sharedsecret[] = { 0x00, 0x25, 0x17, 0xcf, 0x33, 0x94, 0x89, 0xd2, 0x52, 0x49, 0xdb, 0x5c, 0x2c, 0xea, 0xd3, 0xe1, 0xa8, 0x33, 0x70, 0x5d, 0x5b, 0x53, 0x35, 0x11, 0x85, 0xf8, 0xf9, 0x44, 0x0c, 0xe4, 0xf2, 0x96, 0x79, 0xbd, 0xec, 0x0b, 0x79, 0xc2, 0x30, 0x1a, 0x30, 0x24, 0x31, 0x83, 0x4a, 0x54, 0xb4, 0x55, 0xe7, 0x3b, 0x9f, 0x1a, 0x95, 0x84, 0x6b, 0x1d, }; static const wycheproof_xdh_test xdh_wei448_2158 = { .name = "xdh_wei448_2158", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2158_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2158_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2158_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 82 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2159 for XDH, tcId is 86 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2159_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2159_privkey[] = { 0x14, 0x21, 0x5f, 0xc7, 0x90, 0xbe, 0x32, 0x39, 0xcf, 0xc8, 0xc3, 0xf4, 0x5f, 0xed, 0x60, 0x2b, 0xca, 0xb4, 0xe1, 0x85, 0x3a, 0x5d, 0x03, 0x97, 0xbd, 0x45, 0xbf, 0xd0, 0xa5, 0x46, 0xde, 0x75, 0x55, 0xa6, 0x0b, 0x4d, 0x68, 0x4d, 0x9c, 0x54, 0xf8, 0x22, 0xbc, 0x16, 0x8f, 0x1c, 0xb8, 0xc4, 0xc0, 0x3d, 0xae, 0x2f, 0x7e, 0x34, 0xb8, 0xe0, }; static const unsigned char xdh_wei448_2159_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2159 = { .name = "xdh_wei448_2159", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2159_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2159_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2159_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656, tcId is 86 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2160 for XDH, tcId is 88 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2160_peerpubkey[] = { 0x3e, 0xb7, 0xa8, 0x29, 0xb0, 0xcd, 0x20, 0xf5, 0xbc, 0xfc, 0x0b, 0x59, 0x9b, 0x6f, 0xec, 0xcf, 0x6d, 0xa4, 0x62, 0x71, 0x07, 0xbd, 0xb0, 0xd4, 0xf3, 0x45, 0xb4, 0x30, 0x27, 0xd8, 0xb9, 0x72, 0xfc, 0x3e, 0x34, 0xfb, 0x42, 0x32, 0xa1, 0x3c, 0xa7, 0x06, 0xdc, 0xb5, 0x7a, 0xec, 0x3d, 0xae, 0x07, 0xbd, 0xc1, 0xc6, 0x7b, 0xf3, 0x36, 0x09, }; static const unsigned char xdh_wei448_2160_privkey[] = { 0x9a, 0x8f, 0x49, 0x25, 0xd1, 0x51, 0x9f, 0x57, 0x75, 0xcf, 0x46, 0xb0, 0x4b, 0x58, 0x00, 0xd4, 0xee, 0x9e, 0xe8, 0xba, 0xe8, 0xbc, 0x55, 0x65, 0xd4, 0x98, 0xc2, 0x8d, 0xd9, 0xc9, 0xba, 0xf5, 0x74, 0xa9, 0x41, 0x97, 0x44, 0x89, 0x73, 0x91, 0x00, 0x63, 0x82, 0xa6, 0xf1, 0x27, 0xab, 0x1d, 0x9a, 0xc2, 0xd8, 0xc0, 0xa5, 0x98, 0x72, 0x6b, }; static const unsigned char xdh_wei448_2160_sharedsecret[] = { 0x07, 0xff, 0xf4, 0x18, 0x1a, 0xc6, 0xcc, 0x95, 0xec, 0x1c, 0x16, 0xa9, 0x4a, 0x0f, 0x74, 0xd1, 0x2d, 0xa2, 0x32, 0xce, 0x40, 0xa7, 0x75, 0x52, 0x28, 0x1d, 0x28, 0x2b, 0xb6, 0x0c, 0x0b, 0x56, 0xfd, 0x24, 0x64, 0xc3, 0x35, 0x54, 0x39, 0x36, 0x52, 0x1c, 0x24, 0x40, 0x30, 0x85, 0xd5, 0x9a, 0x44, 0x9a, 0x50, 0x37, 0x51, 0x4a, 0x87, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2160 = { .name = "xdh_wei448_2160", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2160_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2160_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2160_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "RFC 8037, Section A.7, tcId is 88 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2161 for XDH, tcId is 89 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2161_peerpubkey[] = { 0xb9, 0x1a, 0x0c, 0x5a, 0xd4, 0x97, 0xd9, 0x5f, 0x15, 0xdf, 0x62, 0xe4, 0x23, 0x1e, 0xda, 0xaa, 0xab, 0x21, 0xd8, 0x29, 0x53, 0xfc, 0xde, 0x09, 0xea, 0xb1, 0x64, 0x20, 0x97, 0x45, 0xaa, 0xb6, 0xfe, 0x9d, 0x35, 0x3a, 0x0d, 0xa3, 0x28, 0xfa, 0x81, 0x47, 0x93, 0x9e, 0x63, 0xad, 0x56, 0xd1, 0xc0, 0xd2, 0xc0, 0xbd, 0xdd, 0x95, 0xda, 0x50, }; static const unsigned char xdh_wei448_2161_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2161_sharedsecret[] = { 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2161 = { .name = "xdh_wei448_2161", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2161_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2161_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2161_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 89 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2162 for XDH, tcId is 90 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2162_peerpubkey[] = { 0x7b, 0xae, 0x31, 0x6c, 0x8f, 0xb6, 0xd7, 0x59, 0xa3, 0xbe, 0x62, 0x5b, 0xb7, 0xc5, 0xe7, 0x5e, 0xc6, 0x4e, 0x3c, 0xb7, 0xde, 0xdd, 0x3d, 0xfa, 0x05, 0x77, 0x11, 0x46, 0xaf, 0x2d, 0xc4, 0x5e, 0x64, 0x24, 0x48, 0x9b, 0x3d, 0x96, 0xf6, 0x31, 0x37, 0xab, 0x3c, 0xaa, 0x9d, 0x26, 0x1c, 0x49, 0xa2, 0x14, 0x66, 0x28, 0x04, 0xaf, 0x48, 0x46, }; static const unsigned char xdh_wei448_2162_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2162_sharedsecret[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2162 = { .name = "xdh_wei448_2162", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2162_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2162_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2162_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 90 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2163 for XDH, tcId is 91 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2163_peerpubkey[] = { 0xc5, 0x51, 0x02, 0x72, 0x88, 0xf7, 0x73, 0x64, 0x65, 0x90, 0x79, 0xb5, 0xdb, 0x73, 0x68, 0xb4, 0xcf, 0x8f, 0xd6, 0xf1, 0xd7, 0x0d, 0xc1, 0xf1, 0x45, 0xa3, 0x3e, 0x85, 0xd3, 0x71, 0xe0, 0x7a, 0x3a, 0xfe, 0xad, 0x48, 0x4a, 0x0e, 0xad, 0xf0, 0xba, 0x5d, 0x04, 0x3b, 0xc2, 0x7e, 0xa1, 0x95, 0xf2, 0x00, 0x53, 0x10, 0xbe, 0xea, 0x24, 0xa0, }; static const unsigned char xdh_wei448_2163_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2163_sharedsecret[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2163 = { .name = "xdh_wei448_2163", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2163_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2163_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2163_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 91 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2164 for XDH, tcId is 92 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2164_peerpubkey[] = { 0xd3, 0xc5, 0x30, 0x27, 0x9c, 0x9b, 0x5a, 0xce, 0x05, 0x19, 0xde, 0xe3, 0x2e, 0xe9, 0x32, 0xc3, 0x20, 0x42, 0x5d, 0x71, 0x7f, 0x55, 0x9b, 0x34, 0xca, 0x8e, 0x24, 0x54, 0x0f, 0xb7, 0x6f, 0xd9, 0xac, 0xe7, 0x78, 0x5e, 0x52, 0x91, 0x16, 0xb2, 0x20, 0xb0, 0x6f, 0x5e, 0xc0, 0xba, 0x4a, 0x05, 0x23, 0x7f, 0xcf, 0xd0, 0x0b, 0xa3, 0xc7, 0xde, }; static const unsigned char xdh_wei448_2164_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2164_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2164 = { .name = "xdh_wei448_2164", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2164_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2164_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2164_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 92 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2165 for XDH, tcId is 93 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2165_peerpubkey[] = { 0x43, 0xb6, 0x1e, 0x50, 0x2c, 0x66, 0x2f, 0x9c, 0x9a, 0x06, 0x39, 0xd2, 0xaf, 0x3e, 0x88, 0xde, 0x77, 0xb3, 0xb7, 0x0b, 0xc3, 0xbb, 0x2a, 0xbe, 0xab, 0xa3, 0x9d, 0xd5, 0xe7, 0x13, 0x2d, 0xdd, 0xcf, 0x14, 0xa1, 0x8d, 0x9d, 0x7c, 0xa4, 0x01, 0x3a, 0x33, 0xb5, 0x47, 0x87, 0xaf, 0xde, 0xd9, 0xd8, 0x7d, 0x5d, 0x67, 0xd4, 0x3c, 0x30, 0xd6, }; static const unsigned char xdh_wei448_2165_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2165_sharedsecret[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2165 = { .name = "xdh_wei448_2165", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2165_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2165_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2165_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 93 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2166 for XDH, tcId is 94 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2166_peerpubkey[] = { 0x2e, 0xe0, 0x34, 0x14, 0x7e, 0x21, 0xfd, 0x9f, 0xc9, 0x95, 0x68, 0x34, 0x8e, 0x88, 0x28, 0x9c, 0x9d, 0x8c, 0x83, 0x91, 0xd2, 0x51, 0x50, 0xfa, 0xe8, 0x9f, 0x76, 0x3f, 0xb6, 0x4f, 0x96, 0x2c, 0xb8, 0x4a, 0xd3, 0x14, 0xc2, 0x96, 0x08, 0x71, 0xb9, 0x51, 0x11, 0xbb, 0x0f, 0x18, 0x01, 0x11, 0x4c, 0x3a, 0x12, 0x16, 0xbe, 0xe7, 0xed, 0xd6, }; static const unsigned char xdh_wei448_2166_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2166_sharedsecret[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2166 = { .name = "xdh_wei448_2166", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2166_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2166_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2166_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 94 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2167 for XDH, tcId is 95 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2167_peerpubkey[] = { 0xeb, 0xad, 0x9b, 0x8e, 0x2e, 0x7f, 0xdf, 0xd6, 0xc9, 0x3e, 0x2f, 0x3c, 0xf4, 0xe8, 0x1b, 0xe7, 0xbb, 0xfb, 0x34, 0xe6, 0xde, 0x7b, 0xba, 0xef, 0x9c, 0x95, 0x7d, 0x3a, 0x03, 0x24, 0xf9, 0x78, 0x19, 0x50, 0xc7, 0x03, 0x92, 0xee, 0x53, 0x58, 0x79, 0x31, 0xc3, 0xf1, 0xad, 0x30, 0x50, 0x59, 0x7d, 0x07, 0x64, 0x4f, 0x0e, 0x8a, 0x0a, 0xb3, }; static const unsigned char xdh_wei448_2167_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2167_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2167 = { .name = "xdh_wei448_2167", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2167_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2167_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2167_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 95 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2168 for XDH, tcId is 96 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2168_peerpubkey[] = { 0x6a, 0x2b, 0xc1, 0x33, 0xf7, 0xc8, 0x4d, 0x9c, 0x23, 0x39, 0xa7, 0xe9, 0xea, 0x8d, 0xcd, 0xb7, 0xf6, 0xd0, 0x51, 0xfc, 0x5d, 0xb9, 0x27, 0x9c, 0x9f, 0x6e, 0x0a, 0xff, 0x35, 0x17, 0x6c, 0xfd, 0x3b, 0x11, 0xe7, 0xe6, 0xc2, 0xee, 0xc5, 0x20, 0x5b, 0xfe, 0x82, 0x61, 0x2d, 0x2b, 0x0b, 0x3d, 0xf6, 0x73, 0x45, 0x20, 0x36, 0xc5, 0x3f, 0xb8, }; static const unsigned char xdh_wei448_2168_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2168_sharedsecret[] = { 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2168 = { .name = "xdh_wei448_2168", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2168_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2168_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2168_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 96 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2169 for XDH, tcId is 97 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2169_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2169_privkey[] = { 0xc8, 0x17, 0xe3, 0xc0, 0x8e, 0x00, 0x17, 0xa5, 0xa4, 0x42, 0x2c, 0x70, 0x09, 0x5e, 0xdf, 0x06, 0x2d, 0x71, 0xf4, 0x52, 0x13, 0x97, 0x15, 0xed, 0xcc, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0xeb, }; static const unsigned char xdh_wei448_2169_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2169 = { .name = "xdh_wei448_2169", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2169_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2169_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2169_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 97 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2170 for XDH, tcId is 98 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2170_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2170_privkey[] = { 0xdc, 0x05, 0xe8, 0xc9, 0xde, 0xce, 0xf9, 0xd3, 0xe3, 0x50, 0xee, 0x83, 0xae, 0xe2, 0x50, 0x2c, 0xed, 0xd7, 0x6f, 0x07, 0xd2, 0x36, 0x4d, 0xe9, 0x93, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x83, }; static const unsigned char xdh_wei448_2170_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2170 = { .name = "xdh_wei448_2170", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2170_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2170_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2170_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 98 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2171 for XDH, tcId is 99 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2171_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2171_privkey[] = { 0x80, 0x3f, 0x68, 0xff, 0x98, 0x12, 0x67, 0x6a, 0xb8, 0x09, 0x58, 0x2f, 0x0b, 0x93, 0xe8, 0x04, 0x61, 0x59, 0x8c, 0x98, 0x7b, 0xc7, 0xb2, 0xe4, 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x91, }; static const unsigned char xdh_wei448_2171_sharedsecret[] = { 0x27, 0x54, 0xaa, 0x14, 0x4a, 0xc7, 0x00, 0xad, 0x18, 0x3b, 0x9c, 0x20, 0xcd, 0x26, 0x27, 0xdb, 0x3c, 0x51, 0xe7, 0x64, 0x40, 0x55, 0xf7, 0x1f, 0x46, 0xe2, 0xb9, 0x99, 0xd3, 0xe1, 0x3e, 0x34, 0x64, 0x54, 0x56, 0x0f, 0xa7, 0x2a, 0x16, 0x48, 0x85, 0x61, 0xe6, 0x0d, 0x6b, 0x64, 0x23, 0xed, 0x50, 0xd1, 0xe7, 0x5a, 0x48, 0x99, 0xa8, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_2171 = { .name = "xdh_wei448_2171", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2171_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2171_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2171_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 99 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2172 for XDH, tcId is 100 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2172_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2172_privkey[] = { 0x04, 0xdf, 0xf9, 0x01, 0xe6, 0x90, 0x7e, 0xf6, 0x3c, 0x05, 0x90, 0xc6, 0x09, 0x00, 0x65, 0xef, 0x5c, 0x3c, 0x0e, 0xd0, 0x3d, 0x1a, 0x99, 0x49, 0xbb, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x9b, }; static const unsigned char xdh_wei448_2172_sharedsecret[] = { 0x00, 0x7a, 0x85, 0x0b, 0x8e, 0x86, 0x37, 0x83, 0xcb, 0x6c, 0x17, 0x5c, 0x9b, 0xab, 0xbb, 0xd3, 0x5a, 0xbe, 0x37, 0xd4, 0x13, 0xa8, 0x88, 0xd9, 0x76, 0xac, 0xc6, 0x8b, 0x70, 0xf6, 0xe6, 0x66, 0x9c, 0x7c, 0x50, 0x95, 0xc2, 0xcf, 0xcc, 0xc5, 0x28, 0x28, 0x46, 0x87, 0xf2, 0x53, 0xdd, 0xb1, 0xdd, 0xc3, 0xea, 0x09, 0x10, 0xbd, 0x14, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_2172 = { .name = "xdh_wei448_2172", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2172_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2172_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2172_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 100 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2173 for XDH, tcId is 101 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2173_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2173_privkey[] = { 0x64, 0xd5, 0xe0, 0x00, 0x0a, 0xeb, 0xdf, 0x9b, 0x75, 0x74, 0x02, 0xd0, 0x8a, 0xf6, 0x46, 0xc6, 0xf3, 0x1d, 0x66, 0x28, 0xbe, 0x80, 0x6f, 0x64, 0x6f, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0xf6, }; static const unsigned char xdh_wei448_2173_sharedsecret[] = { 0x06, 0x65, 0xa1, 0xc3, 0xd7, 0xa7, 0x47, 0xe5, 0x9e, 0x8d, 0xbe, 0x84, 0x1d, 0xac, 0x1f, 0x40, 0x1d, 0x07, 0x3c, 0xa4, 0x5e, 0xa2, 0x9b, 0xad, 0x45, 0x75, 0x77, 0xd7, 0x92, 0x2f, 0xb9, 0x82, 0x57, 0x70, 0x5f, 0x84, 0xb1, 0x98, 0xa6, 0x8c, 0x2e, 0x2c, 0x3e, 0xd7, 0xb9, 0xe4, 0x23, 0x3e, 0x43, 0xc4, 0x48, 0x87, 0xd7, 0xa8, 0xe0, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_2173 = { .name = "xdh_wei448_2173", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2173_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2173_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2173_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 101 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2174 for XDH, tcId is 102 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2174_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2174_privkey[] = { 0x78, 0xe6, 0xc1, 0x28, 0xfe, 0x70, 0x60, 0x70, 0x5c, 0xe2, 0x2c, 0x63, 0x63, 0xdf, 0xa7, 0xaa, 0x16, 0x9a, 0x38, 0x99, 0x23, 0xd2, 0x1a, 0x31, 0x3c, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0xf4, }; static const unsigned char xdh_wei448_2174_sharedsecret[] = { 0x07, 0x01, 0xa1, 0xcf, 0x05, 0xb9, 0xed, 0x47, 0x99, 0x15, 0x1d, 0xee, 0xdf, 0xb5, 0xf2, 0xbd, 0x6a, 0xa8, 0x3a, 0x73, 0x90, 0xdd, 0xb2, 0x74, 0x97, 0xe8, 0xa5, 0x9b, 0x9f, 0x8e, 0x18, 0xe2, 0xb2, 0x5a, 0xbb, 0x07, 0x15, 0xe0, 0x84, 0x8b, 0xc3, 0xc2, 0xeb, 0x0b, 0xb2, 0xc9, 0xd6, 0xf0, 0xb3, 0x70, 0xe8, 0x9a, 0x98, 0xef, 0x5b, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_2174 = { .name = "xdh_wei448_2174", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2174_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2174_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2174_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 102 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2175 for XDH, tcId is 103 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2175_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2175_privkey[] = { 0x34, 0x00, 0xca, 0x2d, 0x96, 0xb2, 0x45, 0x7b, 0xd3, 0xcb, 0x6f, 0xef, 0xc3, 0xf5, 0xb5, 0x24, 0xd8, 0x71, 0x33, 0xd6, 0xba, 0x29, 0x56, 0xcc, 0x37, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x8b, }; static const unsigned char xdh_wei448_2175_sharedsecret[] = { 0xd7, 0xc6, 0x2f, 0x95, 0xa5, 0x2e, 0xed, 0xcf, 0xf9, 0x1b, 0x69, 0xa7, 0x34, 0xae, 0xd3, 0x3f, 0x71, 0xbc, 0xad, 0xe0, 0x15, 0xb5, 0xe6, 0x68, 0xf3, 0xfb, 0x79, 0x90, 0x52, 0x2f, 0x97, 0x96, 0x70, 0xb4, 0x3a, 0x4c, 0x8e, 0xe0, 0x55, 0x85, 0x1d, 0xbd, 0x3b, 0x53, 0x47, 0x46, 0x5e, 0x1d, 0x13, 0xb8, 0xdc, 0xee, 0x62, 0x3e, 0x78, 0x79, }; static const wycheproof_xdh_test xdh_wei448_2175 = { .name = "xdh_wei448_2175", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2175_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2175_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2175_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 103 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2176 for XDH, tcId is 104 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2176_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2176_privkey[] = { 0x9c, 0xfd, 0xbc, 0xba, 0x85, 0x85, 0x5a, 0x0c, 0xa9, 0x73, 0x14, 0xa6, 0x53, 0xc9, 0xa0, 0xa1, 0x6e, 0x83, 0xed, 0xb7, 0x4a, 0xaf, 0x79, 0x9d, 0xdc, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0xcf, }; static const unsigned char xdh_wei448_2176_sharedsecret[] = { 0xed, 0x35, 0x4b, 0x70, 0x81, 0xfc, 0x03, 0x66, 0xd5, 0x74, 0xf4, 0x69, 0x6b, 0xef, 0x60, 0xb3, 0x09, 0x9d, 0x55, 0xcb, 0x08, 0x32, 0xe8, 0x22, 0x61, 0x9b, 0x8b, 0x4d, 0x2d, 0x57, 0xff, 0xe3, 0xb3, 0xec, 0x29, 0x87, 0x75, 0x5d, 0xba, 0x08, 0xbd, 0xab, 0x6b, 0xbf, 0x5a, 0x28, 0x42, 0x76, 0x74, 0x5e, 0x0b, 0xd4, 0xfe, 0xf9, 0xba, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2176 = { .name = "xdh_wei448_2176", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2176_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2176_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2176_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 104 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2177 for XDH, tcId is 105 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2177_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2177_privkey[] = { 0xc4, 0x09, 0x1f, 0x83, 0xdd, 0xdf, 0xf4, 0x4f, 0x26, 0xe6, 0x0f, 0xe3, 0xda, 0xf2, 0xea, 0x2a, 0x0d, 0xe8, 0x86, 0x72, 0x7a, 0x43, 0x10, 0x59, 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0xbe, }; static const unsigned char xdh_wei448_2177_sharedsecret[] = { 0x10, 0x0c, 0xdb, 0xa5, 0x2c, 0xd0, 0x5a, 0x3c, 0x18, 0x21, 0x9d, 0xb9, 0x81, 0x54, 0xd9, 0x0c, 0x05, 0xca, 0x6b, 0x4d, 0xce, 0xfa, 0xa0, 0xce, 0xf9, 0x05, 0x38, 0xe7, 0xb8, 0x08, 0x79, 0xf2, 0xd6, 0x7d, 0x5a, 0xb2, 0xc3, 0x1c, 0x28, 0xf7, 0x7b, 0x38, 0x96, 0x9d, 0x81, 0x7a, 0x78, 0xd0, 0x5f, 0x6a, 0x55, 0x99, 0xb8, 0x4b, 0x19, 0x41, }; static const wycheproof_xdh_test xdh_wei448_2177 = { .name = "xdh_wei448_2177", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2177_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2177_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2177_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 105 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2178 for XDH, tcId is 106 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2178_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2178_privkey[] = { 0xdc, 0xc6, 0x1f, 0xe1, 0x8e, 0xab, 0x64, 0xde, 0x8b, 0x96, 0x87, 0xb2, 0x8b, 0xf0, 0x2d, 0x9e, 0x53, 0x32, 0x0c, 0x98, 0xe1, 0xcf, 0x1e, 0x18, 0x45, 0x31, 0x1e, 0x17, 0xea, 0xaf, 0x7e, 0x27, 0x47, 0x67, 0xd9, 0xe6, 0x79, 0x78, 0x05, 0xd5, 0x80, 0xfc, 0x48, 0xc2, 0x49, 0xec, 0x37, 0x6d, 0xb9, 0x22, 0x60, 0xbc, 0x39, 0x0e, 0xc4, 0x89, }; static const unsigned char xdh_wei448_2178_sharedsecret[] = { 0xe8, 0x50, 0x50, 0xba, 0x91, 0xb8, 0xcd, 0xd6, 0xed, 0x86, 0xce, 0xc4, 0x7b, 0xe3, 0x16, 0x2d, 0x70, 0x59, 0x9c, 0xa3, 0x43, 0x3e, 0x7c, 0x6d, 0x3e, 0xc8, 0xff, 0xfe, 0x75, 0x8b, 0x60, 0x79, 0x69, 0xf9, 0x86, 0xe5, 0xc0, 0x10, 0xbc, 0xcf, 0xf0, 0xff, 0xe1, 0x8e, 0x86, 0x1f, 0xf8, 0x7b, 0x46, 0x20, 0x40, 0xb6, 0x11, 0xd4, 0x04, 0x8e, }; static const wycheproof_xdh_test xdh_wei448_2178 = { .name = "xdh_wei448_2178", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2178_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2178_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2178_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 106 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2179 for XDH, tcId is 107 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2179_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2179_privkey[] = { 0x38, 0x0f, 0xaa, 0x61, 0xba, 0x00, 0xb7, 0xf4, 0x5d, 0x70, 0xea, 0xc9, 0x8d, 0x0c, 0x5b, 0x42, 0x00, 0x41, 0x8d, 0xe5, 0xfa, 0xad, 0x0f, 0x1e, 0x21, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0xf1, }; static const unsigned char xdh_wei448_2179_sharedsecret[] = { 0x2a, 0xf9, 0x62, 0x7c, 0xdc, 0x91, 0x9e, 0x6a, 0xff, 0xf5, 0xf9, 0x1c, 0x8d, 0xe2, 0xe2, 0x35, 0xf6, 0xea, 0x2f, 0xc3, 0x7a, 0xf7, 0xbc, 0xe7, 0xbd, 0xdf, 0x80, 0xe0, 0x31, 0x97, 0xd1, 0x3b, 0x8f, 0xa4, 0x24, 0x58, 0x84, 0x4c, 0xc7, 0x91, 0x8d, 0xe6, 0x28, 0xc8, 0x32, 0x81, 0xcc, 0xf4, 0xd3, 0x9c, 0x1e, 0x68, 0x55, 0xc4, 0x26, 0x76, }; static const wycheproof_xdh_test xdh_wei448_2179 = { .name = "xdh_wei448_2179", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2179_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2179_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2179_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 107 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2180 for XDH, tcId is 108 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2180_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2180_privkey[] = { 0xcc, 0x44, 0x2e, 0xe9, 0xdd, 0xeb, 0x3f, 0x1f, 0xf0, 0x4c, 0x32, 0x56, 0xde, 0x35, 0x1a, 0xeb, 0xa2, 0x2d, 0x82, 0x26, 0xa4, 0x9b, 0xf2, 0x1c, 0xa4, 0x13, 0xa0, 0x7f, 0xac, 0x9e, 0x21, 0x33, 0x20, 0x5c, 0x46, 0x8e, 0xf2, 0xa4, 0x7f, 0x10, 0xc7, 0xbe, 0xf3, 0x5f, 0x1c, 0xe7, 0x62, 0x21, 0xbf, 0x8d, 0x61, 0xca, 0x4b, 0x13, 0x36, 0xaf, }; static const unsigned char xdh_wei448_2180_sharedsecret[] = { 0x88, 0xe6, 0x53, 0xd8, 0x87, 0xae, 0xf8, 0xf3, 0xd1, 0xaf, 0xb7, 0x74, 0xd3, 0x7a, 0x85, 0xdd, 0x3f, 0x05, 0xb8, 0xbc, 0xc9, 0x24, 0xce, 0x8c, 0x48, 0x2f, 0x61, 0x27, 0x6b, 0x27, 0x90, 0x6b, 0x94, 0xa5, 0xd6, 0xaf, 0xa2, 0xfe, 0x77, 0xd5, 0x39, 0xaf, 0x69, 0x3d, 0x62, 0x66, 0x47, 0x0c, 0xb4, 0x74, 0x98, 0x2c, 0xbc, 0x95, 0x8d, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2180 = { .name = "xdh_wei448_2180", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2180_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2180_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2180_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 108 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2181 for XDH, tcId is 109 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2181_peerpubkey[] = { 0x75, 0x01, 0x3b, 0x73, 0x52, 0xd4, 0x8e, 0x25, 0x27, 0x81, 0x1e, 0xdd, 0x48, 0xba, 0x39, 0x2c, 0x60, 0xd3, 0xaf, 0x73, 0x4b, 0xb6, 0xe0, 0xf3, 0x5e, 0xc5, 0x7a, 0xf6, 0xcc, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0x35, 0x65, 0xd1, 0xd4, 0xd7, 0x1a, 0x0e, 0x86, 0x71, 0x65, 0xad, 0x7e, 0xdc, 0x62, 0x12, }; static const unsigned char xdh_wei448_2181_privkey[] = { 0xe4, 0xc8, 0xfd, 0x4e, 0x36, 0xe5, 0xc0, 0x67, 0x88, 0x9f, 0xc5, 0xfc, 0xc4, 0x2f, 0xe9, 0xbf, 0x9d, 0xbb, 0xf5, 0xa6, 0x2b, 0x74, 0x58, 0xb9, 0x4e, 0x38, 0x4a, 0x99, 0x18, 0x93, 0x05, 0x01, 0x49, 0xa8, 0x11, 0x5a, 0x3e, 0xc6, 0xaa, 0xb5, 0x3c, 0xf4, 0xe6, 0x94, 0x52, 0x6b, 0x49, 0x09, 0xd8, 0x5c, 0xb3, 0x0e, 0x7d, 0x70, 0x73, 0x88, }; static const unsigned char xdh_wei448_2181_sharedsecret[] = { 0x98, 0x39, 0x2b, 0x35, 0x9f, 0x7f, 0xb1, 0xde, 0x77, 0xa5, 0x21, 0x2e, 0xe9, 0xde, 0x63, 0x65, 0xa6, 0xa4, 0xbf, 0x6e, 0x1d, 0x4a, 0xe6, 0xa3, 0x74, 0xf4, 0xe6, 0x67, 0xa4, 0x98, 0x85, 0xb2, 0xc9, 0x36, 0x7b, 0x1c, 0x95, 0xc8, 0xb8, 0x90, 0xe1, 0x9f, 0x53, 0x0e, 0x30, 0xbe, 0xe7, 0xfb, 0x7a, 0x7e, 0xfb, 0x35, 0x00, 0x8a, 0x4e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_2181 = { .name = "xdh_wei448_2181", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2181_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2181_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2181_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 109 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2182 for XDH, tcId is 110 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2182_peerpubkey[] = { 0xe9, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_2182_privkey[] = { 0xac, 0x81, 0xab, 0x6f, 0x22, 0x44, 0x54, 0xa8, 0xf8, 0x73, 0x11, 0x7d, 0x2e, 0x64, 0x8e, 0xc0, 0x84, 0x69, 0x31, 0xe7, 0xef, 0x64, 0x9e, 0x90, 0xeb, 0x38, 0x2c, 0x71, 0x33, 0x10, 0xba, 0x79, 0x11, 0xd2, 0xcb, 0x3f, 0xf1, 0x79, 0x76, 0x32, 0xf4, 0x39, 0xbf, 0xd6, 0xeb, 0xb3, 0x99, 0x09, 0x89, 0x68, 0xd4, 0x4b, 0x80, 0xfb, 0x63, 0x97, }; static const unsigned char xdh_wei448_2182_sharedsecret[] = { 0x20, 0x6e, 0x12, 0xa6, 0x66, 0xe8, 0xba, 0xdb, 0xdf, 0x25, 0x4d, 0x71, 0x80, 0xd9, 0x79, 0x27, 0x3f, 0x61, 0xd6, 0x6d, 0xa1, 0x4a, 0xb9, 0x4e, 0xa9, 0xce, 0x2d, 0x26, 0x10, 0x99, 0x6d, 0xea, 0xb7, 0x9a, 0x51, 0xc8, 0x78, 0x52, 0x21, 0x68, 0x97, 0xbb, 0xca, 0xb2, 0xcc, 0x4d, 0xa8, 0x9c, 0xc7, 0x7e, 0x56, 0x6a, 0x4b, 0x4e, 0x50, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_2182 = { .name = "xdh_wei448_2182", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2182_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2182_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2182_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 110 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2183 for XDH, tcId is 111 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2183_peerpubkey[] = { 0xeb, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_2183_privkey[] = { 0x78, 0x29, 0x04, 0x1f, 0x1c, 0xd5, 0x9e, 0x15, 0x46, 0x26, 0xe3, 0x28, 0x9d, 0x99, 0x3e, 0x42, 0xc3, 0xee, 0x2d, 0x2a, 0x53, 0x1e, 0xd4, 0xd5, 0x89, 0x90, 0xad, 0xf8, 0x56, 0xdf, 0x28, 0x6f, 0xf9, 0xf4, 0xc5, 0xb5, 0xb1, 0xa3, 0xd1, 0x5e, 0x40, 0xb2, 0x97, 0x75, 0xed, 0xfd, 0x66, 0x57, 0xc9, 0x3d, 0xab, 0xa3, 0x6a, 0x42, 0x02, 0xf5, }; static const unsigned char xdh_wei448_2183_sharedsecret[] = { 0x1e, 0x11, 0x74, 0x71, 0xe0, 0x12, 0x91, 0xfe, 0xe7, 0xcd, 0x90, 0x50, 0xc3, 0x1b, 0xff, 0xa5, 0x9d, 0x96, 0xcd, 0x66, 0xdd, 0x2c, 0x32, 0x84, 0xbe, 0x42, 0x36, 0x68, 0x28, 0x71, 0xd2, 0x69, 0x98, 0xbe, 0xbc, 0x0f, 0x3c, 0x7b, 0x14, 0xcc, 0x3a, 0x82, 0x93, 0x92, 0xbc, 0xb8, 0x30, 0x7e, 0x84, 0x50, 0xfb, 0xfd, 0x59, 0x91, 0xe4, 0xdf, }; static const wycheproof_xdh_test xdh_wei448_2183 = { .name = "xdh_wei448_2183", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2183_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2183_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2183_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 111 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2184 for XDH, tcId is 112 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2184_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_2184_privkey[] = { 0xf4, 0xa3, 0x46, 0x0f, 0xc8, 0xd5, 0xa9, 0x8d, 0x42, 0x67, 0x03, 0xdf, 0x39, 0xcb, 0xc1, 0x5d, 0x7f, 0xf0, 0xd3, 0x1d, 0xb4, 0x1a, 0xd6, 0x19, 0xa2, 0x8d, 0x69, 0x21, 0xde, 0xec, 0x6a, 0x3b, 0xed, 0xd1, 0xd7, 0x1c, 0xdf, 0xdf, 0x89, 0x88, 0xd7, 0xe1, 0xd5, 0xaf, 0x08, 0x50, 0xad, 0x4f, 0x56, 0x44, 0x03, 0x39, 0x35, 0xe7, 0x4d, 0x95, }; static const unsigned char xdh_wei448_2184_sharedsecret[] = { 0xea, 0xc9, 0x93, 0x28, 0x79, 0x47, 0xde, 0xfb, 0x6b, 0xb8, 0x4c, 0x60, 0x87, 0x13, 0x0d, 0x7b, 0x9f, 0xc4, 0x7e, 0x75, 0xb2, 0xc9, 0x45, 0x52, 0xb8, 0xa0, 0xb0, 0x75, 0xe7, 0x1d, 0x27, 0x06, 0x85, 0x50, 0xa2, 0x4d, 0x31, 0x40, 0xc9, 0x40, 0xbc, 0x86, 0x20, 0x1c, 0xc7, 0x6b, 0x83, 0xe2, 0xba, 0xf2, 0x31, 0xc2, 0x6b, 0x14, 0xab, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2184 = { .name = "xdh_wei448_2184", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2184_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2184_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2184_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 112 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2185 for XDH, tcId is 113 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2185_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_2185_privkey[] = { 0xe0, 0x3c, 0x56, 0xa2, 0x8c, 0xd0, 0x10, 0xfc, 0x8a, 0x1d, 0x86, 0x68, 0x74, 0x7d, 0x24, 0xf0, 0x6e, 0xbc, 0xc2, 0x88, 0x5e, 0xe4, 0x60, 0xa7, 0xdb, 0x14, 0xc1, 0x48, 0x41, 0xe5, 0x81, 0x89, 0x96, 0x16, 0xca, 0x71, 0x8d, 0x42, 0xc0, 0x6c, 0x06, 0xf2, 0xee, 0xdb, 0x2d, 0x7a, 0x23, 0x06, 0x90, 0xb0, 0x01, 0x0b, 0xd6, 0x7e, 0x77, 0x9a, }; static const unsigned char xdh_wei448_2185_sharedsecret[] = { 0xe2, 0x5a, 0x60, 0xb8, 0x52, 0x3f, 0x3e, 0x15, 0x80, 0x09, 0x8a, 0x06, 0x11, 0xee, 0x54, 0x9e, 0x20, 0x1e, 0x5a, 0x70, 0x4e, 0x39, 0x26, 0x3d, 0x06, 0x77, 0x12, 0xfc, 0x47, 0x22, 0x94, 0xc3, 0x78, 0xca, 0x45, 0xf9, 0x76, 0x70, 0x51, 0xea, 0x45, 0xa9, 0x45, 0xa4, 0x85, 0xf5, 0x6c, 0x0a, 0xff, 0x06, 0x38, 0x8e, 0x6f, 0xc1, 0x64, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_2185 = { .name = "xdh_wei448_2185", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2185_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2185_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2185_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 113 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2186 for XDH, tcId is 114 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2186_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2186_privkey[] = { 0x70, 0x19, 0xc5, 0xdd, 0x32, 0x8e, 0xf8, 0x2c, 0xf5, 0x98, 0x49, 0x0d, 0x2c, 0xae, 0xb3, 0xb7, 0x2c, 0xf9, 0x39, 0x33, 0xee, 0xc1, 0xfd, 0x3f, 0xe1, 0xf6, 0x12, 0xb4, 0x3b, 0x5d, 0xdb, 0xc0, 0x11, 0x3f, 0x71, 0x1b, 0x84, 0xd5, 0x12, 0x23, 0xde, 0x93, 0x8f, 0x42, 0xa6, 0x4f, 0x5f, 0x00, 0x20, 0x44, 0x5c, 0x95, 0x14, 0xac, 0xbe, 0xd0, }; static const unsigned char xdh_wei448_2186_sharedsecret[] = { 0x11, 0x3f, 0xc2, 0x8f, 0x3b, 0xa7, 0x19, 0xfc, 0xee, 0xd2, 0x4a, 0x4a, 0x07, 0xaf, 0x7f, 0x24, 0xa9, 0x81, 0xb2, 0x67, 0x5f, 0x36, 0x65, 0x7c, 0x23, 0xfe, 0x92, 0xbb, 0xe0, 0x18, 0x22, 0x9c, 0xb9, 0x14, 0x78, 0x76, 0x7e, 0x7d, 0xba, 0x65, 0x9b, 0x08, 0xd6, 0xc5, 0xdc, 0xf3, 0xd5, 0xed, 0x27, 0xf4, 0xe8, 0xa3, 0x17, 0xfc, 0x84, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_2186 = { .name = "xdh_wei448_2186", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2186_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2186_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2186_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 114 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2187 for XDH, tcId is 115 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2187_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2187_privkey[] = { 0x80, 0xa5, 0xce, 0xa0, 0x6d, 0xb4, 0x30, 0xb1, 0xef, 0x04, 0x53, 0x4c, 0xf7, 0x7b, 0x37, 0x59, 0x3b, 0x40, 0x65, 0x34, 0xfc, 0xc6, 0x64, 0xbd, 0x43, 0xd4, 0xc5, 0x0a, 0x26, 0x12, 0xc6, 0x65, 0x07, 0xd5, 0x34, 0xc8, 0x61, 0x68, 0xd6, 0x94, 0xb4, 0x1c, 0x3d, 0xfc, 0xb5, 0x78, 0x3f, 0xbc, 0x4f, 0xc3, 0xbe, 0xa9, 0x0d, 0x0d, 0x15, 0xed, }; static const unsigned char xdh_wei448_2187_sharedsecret[] = { 0x37, 0x4b, 0xb9, 0x9f, 0x33, 0x9f, 0x10, 0xe1, 0xcf, 0x5c, 0xc5, 0x27, 0xd1, 0x32, 0xfc, 0x0b, 0xdb, 0xf6, 0x57, 0xad, 0x0b, 0x90, 0x0b, 0x04, 0x89, 0x73, 0xd5, 0xdc, 0xcc, 0x69, 0x6c, 0x69, 0xae, 0xf6, 0xb2, 0x58, 0xee, 0x68, 0x5d, 0x36, 0x0d, 0x8f, 0xc2, 0xcd, 0xc9, 0xff, 0xea, 0x4b, 0x87, 0x63, 0x4b, 0x10, 0x6e, 0x6a, 0x2d, 0x14, }; static const wycheproof_xdh_test xdh_wei448_2187 = { .name = "xdh_wei448_2187", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2187_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2187_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2187_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 115 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2188 for XDH, tcId is 116 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2188_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2188_privkey[] = { 0x0c, 0xd9, 0x0e, 0x8e, 0x75, 0xe9, 0xff, 0x33, 0x9b, 0x50, 0x3e, 0xc8, 0x2a, 0xda, 0xef, 0xdd, 0x44, 0xae, 0x5c, 0x85, 0xb6, 0x6f, 0xf4, 0xca, 0x93, 0xae, 0xf7, 0xe8, 0xd7, 0x29, 0x20, 0xe4, 0x70, 0x11, 0x6f, 0x25, 0xe2, 0x0a, 0xe5, 0xec, 0xf2, 0x35, 0xcf, 0x6f, 0x64, 0xab, 0x37, 0x8e, 0xbd, 0xd5, 0x71, 0x0b, 0x87, 0x25, 0xcd, 0x8b, }; static const unsigned char xdh_wei448_2188_sharedsecret[] = { 0xee, 0xa5, 0x6b, 0xb5, 0x1e, 0x98, 0xd2, 0x78, 0x4c, 0xb4, 0x3f, 0x43, 0x35, 0x85, 0x2f, 0xa7, 0x80, 0x4d, 0xc9, 0x75, 0x1f, 0x90, 0x51, 0x3b, 0x8f, 0x2d, 0x60, 0xc8, 0xf8, 0x4c, 0x61, 0xcd, 0xed, 0x28, 0x26, 0x08, 0xb7, 0xd6, 0x42, 0x42, 0x4a, 0x13, 0x10, 0x15, 0x59, 0xd2, 0xc0, 0x40, 0x4d, 0xeb, 0xae, 0x96, 0x59, 0x07, 0x73, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2188 = { .name = "xdh_wei448_2188", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2188_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2188_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2188_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 116 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2189 for XDH, tcId is 117 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2189_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2189_privkey[] = { 0x64, 0x82, 0x61, 0x5f, 0xbe, 0x7d, 0xc4, 0x76, 0xb9, 0x56, 0x04, 0x61, 0xc7, 0xd7, 0xb3, 0x77, 0x77, 0x4b, 0x74, 0x20, 0x42, 0x7b, 0xb1, 0xe2, 0x69, 0x7c, 0xd1, 0xd7, 0x04, 0x1b, 0x7c, 0x6c, 0x42, 0xe4, 0xf8, 0x9e, 0x3b, 0xf9, 0xb3, 0xfc, 0x02, 0x49, 0xbc, 0xd4, 0xf1, 0x8c, 0xfb, 0x50, 0xb5, 0x2b, 0x69, 0xb8, 0x5f, 0x32, 0x22, 0x82, }; static const unsigned char xdh_wei448_2189_sharedsecret[] = { 0x26, 0x07, 0xb8, 0x3d, 0xa4, 0xb7, 0x94, 0x5e, 0xdf, 0x68, 0xc9, 0xc1, 0x89, 0xa6, 0x99, 0x5a, 0xb2, 0xb2, 0xff, 0xdb, 0xdf, 0x33, 0xca, 0x78, 0x36, 0x31, 0x99, 0x89, 0xed, 0x53, 0x2d, 0x19, 0x2e, 0x72, 0xa9, 0x1d, 0xe7, 0x7d, 0xda, 0x49, 0xe3, 0xa9, 0xc6, 0x59, 0x8c, 0xdd, 0xe7, 0x2d, 0x09, 0x61, 0x4d, 0x35, 0xd1, 0x87, 0xb1, 0x64, }; static const wycheproof_xdh_test xdh_wei448_2189 = { .name = "xdh_wei448_2189", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2189_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2189_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2189_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 117 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2190 for XDH, tcId is 118 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2190_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2190_privkey[] = { 0xfc, 0x43, 0x6d, 0x2c, 0xf9, 0x20, 0x8f, 0xba, 0x04, 0x0a, 0x46, 0x81, 0x78, 0x6f, 0x6b, 0xc6, 0x71, 0xa8, 0xe8, 0xdf, 0xcf, 0x29, 0x21, 0x5d, 0x65, 0xc6, 0x99, 0xea, 0x79, 0xf4, 0x49, 0xc9, 0x87, 0x54, 0xa4, 0xf0, 0xd0, 0x3f, 0xa0, 0x84, 0x06, 0x67, 0x14, 0x34, 0xe2, 0xbd, 0xf5, 0x8b, 0x29, 0x0f, 0x7b, 0x86, 0xad, 0xf1, 0xfc, 0xda, }; static const unsigned char xdh_wei448_2190_sharedsecret[] = { 0x37, 0xce, 0x13, 0xff, 0xb8, 0xe9, 0x94, 0xa9, 0x3a, 0xba, 0x40, 0xd0, 0x65, 0x1e, 0x1b, 0x36, 0x68, 0xa4, 0x47, 0x91, 0x9d, 0x30, 0x43, 0x4c, 0x83, 0x23, 0xe9, 0x02, 0xfe, 0xe7, 0xc7, 0x9f, 0x3f, 0xc6, 0x4c, 0x9a, 0xb5, 0x1d, 0x4a, 0xb7, 0x75, 0xed, 0x0e, 0x4e, 0xfc, 0x4e, 0xe4, 0x41, 0x37, 0xe7, 0x52, 0x87, 0x53, 0x3d, 0x0c, 0xad, }; static const wycheproof_xdh_test xdh_wei448_2190 = { .name = "xdh_wei448_2190", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2190_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2190_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2190_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 118 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2191 for XDH, tcId is 119 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2191_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2191_privkey[] = { 0xb0, 0x6b, 0x27, 0xfd, 0x63, 0x9f, 0xdb, 0x97, 0xcc, 0x2d, 0xec, 0x42, 0x26, 0x2a, 0x4c, 0x4a, 0x6c, 0xb9, 0x41, 0xf2, 0x6b, 0xd9, 0x8b, 0xea, 0x7a, 0xf1, 0xe3, 0xe9, 0x78, 0xdc, 0x17, 0xdf, 0x86, 0x07, 0x65, 0x37, 0x14, 0x8d, 0xef, 0xbe, 0x42, 0x68, 0x89, 0xaa, 0x89, 0x8b, 0xf6, 0x62, 0xd8, 0xb8, 0xed, 0x82, 0xfc, 0x49, 0xed, 0xdb, }; static const unsigned char xdh_wei448_2191_sharedsecret[] = { 0x0a, 0xee, 0x21, 0xca, 0x01, 0x39, 0xda, 0xfb, 0xd9, 0x57, 0xd0, 0xa8, 0x06, 0x0a, 0x7f, 0xba, 0x87, 0x25, 0xf5, 0x7f, 0x02, 0xa0, 0xdc, 0x5c, 0xbf, 0xb9, 0x52, 0xe2, 0xc1, 0xe5, 0x3f, 0x4e, 0xca, 0xa0, 0x1a, 0x22, 0x7f, 0xd1, 0xe1, 0xbd, 0xa0, 0x2e, 0x2e, 0xaf, 0x77, 0x77, 0x55, 0x4c, 0x3e, 0xea, 0xbe, 0x86, 0x46, 0x70, 0xa4, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2191 = { .name = "xdh_wei448_2191", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2191_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2191_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2191_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 119 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2192 for XDH, tcId is 120 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2192_peerpubkey[] = { 0x14, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_2192_privkey[] = { 0x98, 0x39, 0xbc, 0x94, 0x16, 0x61, 0xbc, 0xe8, 0x57, 0x65, 0x26, 0xdc, 0x1a, 0xa2, 0x47, 0x3e, 0x68, 0x8b, 0x2e, 0x3e, 0xd9, 0x09, 0xcd, 0x2e, 0x4c, 0xf2, 0x1f, 0x60, 0x9c, 0xc9, 0x46, 0x85, 0x16, 0x72, 0x61, 0x91, 0xcc, 0x5b, 0xa8, 0x7f, 0xaa, 0x7c, 0x83, 0x11, 0xa3, 0xcc, 0x3d, 0xe3, 0x3a, 0x35, 0xd5, 0xdd, 0xdd, 0x04, 0x4d, 0xf5, }; static const unsigned char xdh_wei448_2192_sharedsecret[] = { 0x4f, 0x3e, 0x91, 0x76, 0x98, 0xb3, 0x15, 0x95, 0x67, 0xb4, 0xb5, 0x74, 0xeb, 0xbd, 0xc7, 0xc0, 0xaa, 0x0f, 0x84, 0x02, 0x3d, 0x66, 0xb5, 0xf9, 0x0f, 0x48, 0x80, 0x05, 0xaf, 0x6c, 0xb5, 0x2f, 0x51, 0xfb, 0x5a, 0x1d, 0xac, 0xcd, 0xc1, 0x9a, 0x54, 0xf7, 0x8f, 0xc3, 0x04, 0xf6, 0xe8, 0xbd, 0x8b, 0xa7, 0x54, 0x2b, 0xe5, 0xf2, 0x8b, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_2192 = { .name = "xdh_wei448_2192", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2192_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2192_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2192_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 120 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2193 for XDH, tcId is 121 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2193_peerpubkey[] = { 0x16, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_2193_privkey[] = { 0x1c, 0xb5, 0xc1, 0x6c, 0xbf, 0x08, 0xe0, 0xc2, 0x76, 0x95, 0xb5, 0x65, 0x28, 0x30, 0x05, 0xa3, 0x45, 0xa9, 0x00, 0xa5, 0xb6, 0x48, 0xaf, 0x48, 0xf2, 0xeb, 0x4c, 0x01, 0xb1, 0x85, 0x37, 0x2c, 0xd4, 0xc1, 0x76, 0xd9, 0x69, 0x95, 0x6d, 0xac, 0xae, 0x71, 0x32, 0x92, 0xec, 0x12, 0x43, 0x16, 0x06, 0x2e, 0x59, 0x65, 0xca, 0x7d, 0xb7, 0x8e, }; static const unsigned char xdh_wei448_2193_sharedsecret[] = { 0x13, 0xe9, 0x79, 0x96, 0xfe, 0x6a, 0xd0, 0x7e, 0x56, 0x79, 0x59, 0x63, 0x94, 0x85, 0x6a, 0x7e, 0x5a, 0xa9, 0xad, 0xc3, 0xc9, 0x7d, 0x54, 0xbf, 0x26, 0xff, 0x2d, 0x25, 0xb3, 0x42, 0xc3, 0x00, 0xc0, 0xa6, 0xd3, 0xee, 0x9d, 0x2c, 0xd3, 0xf6, 0x65, 0x2d, 0xdb, 0x77, 0x8f, 0xfb, 0x78, 0x4e, 0xce, 0xdb, 0x25, 0x9b, 0x10, 0x63, 0x24, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2193 = { .name = "xdh_wei448_2193", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2193_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2193_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2193_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 121 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2194 for XDH, tcId is 122 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2194_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, }; static const unsigned char xdh_wei448_2194_privkey[] = { 0xec, 0xd7, 0xf5, 0x43, 0xac, 0x24, 0x82, 0xad, 0xbe, 0x97, 0x5e, 0xd9, 0x50, 0xe5, 0x93, 0x3c, 0x04, 0xc0, 0xdd, 0x19, 0x62, 0x34, 0xc7, 0x60, 0x30, 0x32, 0x5a, 0x32, 0x3b, 0x45, 0xbd, 0xce, 0x02, 0x93, 0x76, 0xfd, 0x84, 0x40, 0xf4, 0x00, 0x5b, 0x60, 0xc0, 0x85, 0x46, 0xc2, 0xad, 0x32, 0x0f, 0x87, 0x70, 0x07, 0xc6, 0x41, 0xb9, 0xfb, }; static const unsigned char xdh_wei448_2194_sharedsecret[] = { 0x72, 0xf6, 0x95, 0x46, 0x6f, 0x28, 0x29, 0x2f, 0xf3, 0x56, 0xda, 0x58, 0x52, 0x94, 0xc9, 0xd1, 0xdc, 0x66, 0xd1, 0xe7, 0x98, 0xcf, 0x73, 0x86, 0xef, 0x9a, 0xb3, 0x18, 0x59, 0x05, 0x24, 0x0c, 0x4a, 0xea, 0xa6, 0x0a, 0xe5, 0xc6, 0x2a, 0xab, 0x28, 0xf2, 0x57, 0x02, 0xa9, 0x19, 0xc1, 0x97, 0x54, 0xbf, 0xe3, 0x5d, 0x66, 0x6e, 0xca, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_2194 = { .name = "xdh_wei448_2194", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2194_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2194_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2194_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 122 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2195 for XDH, tcId is 123 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2195_peerpubkey[] = { 0x8a, 0xfe, 0xc4, 0x8c, 0xad, 0x2b, 0x71, 0xda, 0xd8, 0x7e, 0xe1, 0x22, 0xb7, 0x45, 0xc6, 0xd3, 0x9f, 0x2c, 0x50, 0x8c, 0xb4, 0x49, 0x1f, 0x0c, 0xa1, 0x3a, 0x85, 0x09, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0xca, 0x9a, 0x2e, 0x2b, 0x28, 0xe5, 0xf1, 0x79, 0x8e, 0x9a, 0x52, 0x81, 0x23, 0x9d, 0xed, }; static const unsigned char xdh_wei448_2195_privkey[] = { 0x54, 0xc3, 0xa7, 0x6f, 0x21, 0x16, 0x09, 0x99, 0x68, 0xcc, 0x31, 0x29, 0x1b, 0x36, 0xe5, 0x03, 0xca, 0x3e, 0x77, 0xa1, 0x90, 0x29, 0xe6, 0x0f, 0xcd, 0x06, 0xff, 0xdf, 0x5d, 0xbc, 0x7a, 0x54, 0xa5, 0x2f, 0x98, 0x08, 0x70, 0x7a, 0x39, 0x9e, 0x29, 0x47, 0xe7, 0xba, 0xe8, 0xea, 0xe5, 0x2a, 0xb5, 0x60, 0x74, 0xb4, 0x11, 0x96, 0xd4, 0xf9, }; static const unsigned char xdh_wei448_2195_sharedsecret[] = { 0xae, 0x75, 0x7e, 0xb5, 0x3a, 0xdf, 0xd3, 0x1c, 0xc9, 0x4b, 0x15, 0x33, 0xb3, 0x9d, 0x52, 0xf8, 0xd2, 0x20, 0xac, 0xe0, 0x03, 0xbd, 0x37, 0xcd, 0xe1, 0x00, 0x5c, 0xe0, 0x9a, 0x69, 0xd9, 0x16, 0x87, 0xb2, 0x19, 0xc1, 0x4d, 0xab, 0x9f, 0x3e, 0x0f, 0x8b, 0x89, 0xe8, 0x06, 0x44, 0x81, 0xd0, 0x45, 0x47, 0x20, 0xce, 0x17, 0x40, 0x3b, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2195 = { .name = "xdh_wei448_2195", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2195_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2195_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2195_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 123 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2196 for XDH, tcId is 124 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2196_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2196_privkey[] = { 0xa4, 0x2b, 0xd2, 0x9d, 0xdc, 0x90, 0x7a, 0x46, 0x61, 0x68, 0x7c, 0x7f, 0x48, 0xf2, 0x82, 0x64, 0x0f, 0x8b, 0xdc, 0x6d, 0xf2, 0x5c, 0x35, 0xe7, 0xf0, 0x1d, 0xd3, 0x5e, 0xc9, 0x57, 0x45, 0x57, 0x89, 0x7f, 0xf2, 0x01, 0x95, 0x9f, 0x71, 0x73, 0x86, 0x66, 0xd3, 0x3d, 0x93, 0xc0, 0x98, 0x20, 0x0d, 0x85, 0x52, 0xe2, 0x3e, 0xd2, 0x1e, 0xbf, }; static const unsigned char xdh_wei448_2196_sharedsecret[] = { 0xe3, 0x37, 0xde, 0xb5, 0x5f, 0xdd, 0x51, 0xbc, 0xa3, 0x92, 0x00, 0xa9, 0x7a, 0xa2, 0xbc, 0x1d, 0x2c, 0x22, 0x4f, 0xc4, 0x37, 0x05, 0x45, 0x28, 0x3c, 0x82, 0xd5, 0xc2, 0x42, 0x14, 0x42, 0x54, 0xb4, 0x3b, 0xd2, 0xbc, 0x4d, 0x16, 0x4f, 0xe1, 0x42, 0x14, 0x25, 0x8f, 0x7e, 0x3c, 0xda, 0xe3, 0x18, 0xec, 0x37, 0xb4, 0x6f, 0x47, 0x03, 0x87, }; static const wycheproof_xdh_test xdh_wei448_2196 = { .name = "xdh_wei448_2196", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2196_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2196_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2196_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 124 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2197 for XDH, tcId is 125 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2197_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2197_privkey[] = { 0x8c, 0xe8, 0xdd, 0xcb, 0x93, 0xda, 0xa1, 0x23, 0x81, 0x28, 0x14, 0xdb, 0x4c, 0xae, 0xf1, 0xcd, 0xaf, 0xbc, 0x68, 0x62, 0x4b, 0x56, 0xb9, 0xea, 0x22, 0x7a, 0x66, 0x0b, 0x1e, 0xbe, 0x07, 0xda, 0x6f, 0x9d, 0x3e, 0x8f, 0x12, 0x8b, 0x49, 0xf8, 0x6c, 0xa7, 0x57, 0x60, 0x76, 0xd5, 0x9d, 0xd0, 0xdc, 0x2b, 0x67, 0xfc, 0x10, 0x64, 0x17, 0xa8, }; static const unsigned char xdh_wei448_2197_sharedsecret[] = { 0x8b, 0xd1, 0x1f, 0xa3, 0x89, 0x0a, 0xc9, 0x18, 0xc9, 0x5c, 0x1a, 0xab, 0x51, 0xb2, 0xfd, 0x69, 0xa7, 0xdf, 0x3e, 0x90, 0x37, 0x5c, 0x81, 0x4b, 0x51, 0xf9, 0xe2, 0xef, 0x87, 0x9e, 0x1b, 0x83, 0x34, 0xa0, 0x1d, 0xed, 0x44, 0x06, 0xed, 0x13, 0xf3, 0xac, 0xec, 0xd7, 0x52, 0xf6, 0xd5, 0xc2, 0x41, 0x49, 0xa1, 0x38, 0xb3, 0x67, 0x4c, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2197 = { .name = "xdh_wei448_2197", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2197_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2197_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2197_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 125 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2198 for XDH, tcId is 126 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2198_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2198_privkey[] = { 0x54, 0xe7, 0x8d, 0xf4, 0xea, 0x79, 0xcd, 0x46, 0x56, 0xa6, 0x09, 0x07, 0x56, 0x4a, 0xcb, 0x7f, 0x07, 0x3d, 0x84, 0xf3, 0x38, 0xea, 0xa0, 0x70, 0x75, 0xb3, 0x52, 0xdd, 0x38, 0x97, 0xf2, 0x2b, 0xe0, 0xfb, 0xab, 0xe5, 0x1d, 0x28, 0xf4, 0x01, 0x94, 0x96, 0x1a, 0x64, 0x40, 0xb2, 0x21, 0xa7, 0x87, 0xac, 0xdd, 0x2e, 0xea, 0x81, 0x1b, 0xb1, }; static const unsigned char xdh_wei448_2198_sharedsecret[] = { 0x4d, 0x07, 0x65, 0x58, 0xea, 0x3c, 0xcf, 0xe9, 0xef, 0x92, 0x60, 0x82, 0x92, 0xd3, 0xe1, 0x9e, 0xa9, 0x16, 0x8d, 0x70, 0xde, 0xe6, 0x32, 0x33, 0x7c, 0x72, 0x19, 0x88, 0xa8, 0x93, 0xcb, 0x99, 0xdf, 0x49, 0x4d, 0x38, 0xc4, 0xcc, 0x5d, 0xb9, 0x3c, 0x7b, 0x11, 0x3d, 0x62, 0x59, 0x30, 0xdc, 0xbf, 0xb0, 0xfc, 0x5c, 0xbf, 0xb1, 0xc6, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_2198 = { .name = "xdh_wei448_2198", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2198_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2198_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2198_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 126 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2199 for XDH, tcId is 127 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2199_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2199_privkey[] = { 0xe0, 0xe8, 0xff, 0x04, 0x54, 0x66, 0x78, 0x37, 0x6a, 0xf8, 0xa4, 0xcc, 0xb4, 0x96, 0xa9, 0x6c, 0xa0, 0xc7, 0x31, 0x80, 0x3b, 0xc2, 0xa8, 0xaa, 0x36, 0x00, 0x44, 0x57, 0x6c, 0x70, 0x45, 0x06, 0x8c, 0xb5, 0x78, 0xec, 0xdb, 0x2f, 0xda, 0x4d, 0x1c, 0xec, 0xdc, 0x4a, 0xa1, 0xa0, 0xa4, 0x30, 0xcb, 0xe7, 0x1e, 0x25, 0xa1, 0x76, 0x4c, 0xca, }; static const unsigned char xdh_wei448_2199_sharedsecret[] = { 0x10, 0x76, 0x52, 0xe3, 0x9d, 0x0e, 0xe0, 0xc6, 0x42, 0x1e, 0x60, 0x73, 0xeb, 0xe1, 0xae, 0x70, 0xf2, 0xa0, 0x48, 0x02, 0x6a, 0xfa, 0xb3, 0xfc, 0x1d, 0x62, 0x00, 0x27, 0x65, 0x2f, 0x94, 0xa4, 0xc6, 0xa6, 0xc7, 0x07, 0x6a, 0xe8, 0xc1, 0x51, 0x95, 0x37, 0x68, 0x1e, 0xd1, 0x54, 0x37, 0x35, 0x8c, 0x77, 0xec, 0xa2, 0x9d, 0x9d, 0x02, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2199 = { .name = "xdh_wei448_2199", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2199_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2199_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2199_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 127 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2200 for XDH, tcId is 128 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2200_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2200_privkey[] = { 0xb4, 0x20, 0x92, 0xf1, 0xa6, 0x46, 0xea, 0x58, 0x43, 0xc5, 0xd8, 0x33, 0x84, 0xa0, 0x8b, 0x45, 0x46, 0xae, 0x64, 0x9b, 0x12, 0xaf, 0x6b, 0x02, 0x3e, 0x1c, 0x6e, 0xac, 0x28, 0x0d, 0xaf, 0x10, 0x09, 0x0a, 0x07, 0x26, 0xd4, 0xe7, 0x55, 0x33, 0x55, 0x04, 0x2c, 0xbb, 0xab, 0x98, 0xc5, 0x84, 0xfc, 0x9d, 0xc1, 0x45, 0x89, 0xc3, 0xfe, 0xf4, }; static const unsigned char xdh_wei448_2200_sharedsecret[] = { 0x53, 0xcd, 0xe0, 0xc0, 0x1f, 0x25, 0x22, 0xd3, 0xe7, 0xe2, 0x23, 0xb7, 0x4d, 0x04, 0x15, 0x24, 0x28, 0xe9, 0x49, 0x4d, 0x18, 0xe3, 0xc4, 0xf4, 0x4b, 0xe5, 0x2d, 0x8f, 0x97, 0x1d, 0x29, 0xa4, 0x39, 0x4f, 0x9d, 0x03, 0xbd, 0x2e, 0xb8, 0x4a, 0x66, 0x7e, 0x11, 0x7a, 0x2f, 0x3c, 0x4a, 0x5a, 0x7e, 0x88, 0x4d, 0x45, 0x7f, 0xc7, 0x60, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2200 = { .name = "xdh_wei448_2200", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2200_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2200_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2200_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 128 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2201 for XDH, tcId is 129 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2201_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2201_privkey[] = { 0x90, 0x36, 0x99, 0xfc, 0xf2, 0xd0, 0x73, 0x09, 0xb2, 0xe7, 0x60, 0x56, 0xe2, 0x6e, 0x3b, 0xe4, 0x29, 0x8d, 0x58, 0x69, 0xc6, 0x72, 0xbb, 0x9d, 0x1e, 0xea, 0x80, 0xe6, 0x57, 0xdc, 0x99, 0x5a, 0xc1, 0xc8, 0x1a, 0x39, 0x30, 0xb1, 0x0e, 0x12, 0x4c, 0xc7, 0x76, 0x38, 0xc0, 0x0d, 0xe9, 0x47, 0x52, 0xcb, 0x51, 0x1e, 0xe8, 0x97, 0x22, 0x96, }; static const unsigned char xdh_wei448_2201_sharedsecret[] = { 0x41, 0xca, 0xd2, 0x75, 0x84, 0xa9, 0xe0, 0x0d, 0xbd, 0x39, 0x5c, 0x81, 0x0e, 0x60, 0xfc, 0x41, 0x5c, 0x13, 0xf7, 0x09, 0x5f, 0x90, 0x4f, 0x84, 0x48, 0xa3, 0x36, 0x1f, 0x05, 0x58, 0x02, 0x5a, 0xaa, 0xb3, 0x0e, 0x24, 0x86, 0xc8, 0x0e, 0xd3, 0xe9, 0xb4, 0xa0, 0x2b, 0x85, 0xf4, 0x76, 0x86, 0xd7, 0x00, 0x5d, 0xe8, 0x0b, 0x90, 0xda, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2201 = { .name = "xdh_wei448_2201", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2201_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2201_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2201_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 129 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2202 for XDH, tcId is 130 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2202_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2202_privkey[] = { 0x9c, 0x56, 0x92, 0xf9, 0x24, 0x5d, 0x29, 0xaf, 0x67, 0x24, 0x77, 0xe6, 0x0f, 0x95, 0x75, 0x77, 0xcc, 0xa5, 0xc1, 0xcc, 0x24, 0x73, 0xf7, 0xfa, 0x67, 0xcd, 0x5a, 0x6f, 0x8a, 0xa3, 0xcb, 0xe4, 0x44, 0xdc, 0xdf, 0x65, 0xd5, 0x43, 0x6c, 0x02, 0x46, 0xd6, 0x4d, 0x2c, 0xf2, 0x18, 0x48, 0x4e, 0x97, 0x4c, 0x77, 0xaf, 0x96, 0x8b, 0x5c, 0xd1, }; static const unsigned char xdh_wei448_2202_sharedsecret[] = { 0x2f, 0x07, 0x01, 0x96, 0x00, 0x53, 0x9d, 0x6a, 0x7b, 0x71, 0x59, 0x6b, 0xa9, 0xdc, 0xc9, 0x0e, 0x60, 0xab, 0x2e, 0x2e, 0x8e, 0xfa, 0x32, 0x0a, 0xb6, 0xc8, 0x0d, 0xe2, 0x75, 0x76, 0x97, 0x00, 0x2b, 0x29, 0xe0, 0x2a, 0xa7, 0xd9, 0x16, 0x62, 0xe9, 0x8f, 0x9b, 0xe8, 0x95, 0xa7, 0x85, 0x5c, 0x0e, 0x96, 0xc8, 0x10, 0xc2, 0x94, 0xea, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2202 = { .name = "xdh_wei448_2202", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2202_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2202_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2202_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 130 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2203 for XDH, tcId is 131 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2203_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2203_privkey[] = { 0x58, 0x2b, 0xf6, 0x3e, 0xe5, 0x4d, 0x47, 0xae, 0x55, 0x17, 0xcf, 0x74, 0xfd, 0xfe, 0xd1, 0xd4, 0xbc, 0xd5, 0x44, 0xc9, 0x5e, 0x61, 0xc8, 0xc9, 0x56, 0x05, 0xea, 0x32, 0x3a, 0x4d, 0x18, 0x20, 0xfd, 0xc4, 0x0f, 0xaf, 0xb1, 0xa5, 0xcb, 0xe4, 0xf4, 0xce, 0x1f, 0x89, 0xa9, 0x9f, 0x99, 0xa3, 0x36, 0x19, 0x61, 0xe5, 0xb3, 0x0b, 0xd8, 0x96, }; static const unsigned char xdh_wei448_2203_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2203 = { .name = "xdh_wei448_2203", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2203_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2203_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2203_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 131 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2204 for XDH, tcId is 132 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2204_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2204_privkey[] = { 0x18, 0x68, 0xe9, 0x7d, 0x13, 0x9f, 0xff, 0x37, 0x2e, 0xdb, 0x9a, 0xad, 0xe8, 0x28, 0x79, 0xcb, 0xa6, 0xef, 0xe7, 0x93, 0x4a, 0x45, 0x79, 0x1e, 0x41, 0xd6, 0x1e, 0x7b, 0xb5, 0xe6, 0x7a, 0xb2, 0xcd, 0xad, 0x6a, 0xb8, 0x28, 0x82, 0xc5, 0x7d, 0x34, 0xec, 0x71, 0xe6, 0xa8, 0xd5, 0x56, 0xce, 0x28, 0x09, 0xe7, 0x29, 0x32, 0xea, 0x46, 0x9a, }; static const unsigned char xdh_wei448_2204_sharedsecret[] = { 0x89, 0x6e, 0x8b, 0x82, 0xe5, 0xee, 0x08, 0x3b, 0x6f, 0xaa, 0xf6, 0x1c, 0xcc, 0x6a, 0x79, 0x6f, 0x41, 0x9a, 0x97, 0x8e, 0x33, 0xd6, 0x24, 0x25, 0x71, 0x11, 0x0e, 0xea, 0x5b, 0x54, 0x79, 0x8e, 0x50, 0xc9, 0xa7, 0x8d, 0x4d, 0x4e, 0x88, 0xe5, 0xed, 0xad, 0x7d, 0x18, 0xd6, 0x4b, 0xcf, 0xe9, 0xc4, 0xcd, 0xf6, 0x39, 0x75, 0xce, 0xfd, 0x3c, }; static const wycheproof_xdh_test xdh_wei448_2204 = { .name = "xdh_wei448_2204", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2204_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2204_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2204_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 132 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2205 for XDH, tcId is 133 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2205_peerpubkey[] = { 0x9b, 0x7c, 0xf9, 0xd0, 0x96, 0x84, 0x51, 0xdd, 0x91, 0x41, 0xaa, 0x4e, 0x06, 0xdd, 0x76, 0xf5, 0x3e, 0x54, 0x08, 0x16, 0xad, 0x33, 0x17, 0x63, 0x93, 0x2f, 0x2c, 0xb8, 0x2f, 0x09, 0xbe, 0xcc, 0x47, 0x85, 0xcf, 0x69, 0xe7, 0x3e, 0x41, 0xbd, 0x6c, 0xbf, 0x8d, 0x0f, 0x24, 0x7f, 0x75, 0x87, 0x35, 0x7f, 0x00, 0xd7, 0x8e, 0xb9, 0x09, 0x16, }; static const unsigned char xdh_wei448_2205_privkey[] = { 0xa0, 0xe8, 0x17, 0x9e, 0x76, 0x0e, 0x7c, 0x80, 0x20, 0x62, 0x12, 0x65, 0xe1, 0x50, 0x6f, 0x1e, 0xa4, 0x9c, 0xee, 0x89, 0x06, 0x86, 0x98, 0xf1, 0x53, 0x09, 0x15, 0xaf, 0xf5, 0x14, 0x67, 0xb6, 0x5c, 0x71, 0x99, 0xa3, 0x7b, 0x10, 0x22, 0x25, 0x73, 0x1d, 0xbc, 0xd7, 0x77, 0x2f, 0xdd, 0x5d, 0x22, 0x13, 0x4d, 0x9d, 0xff, 0x38, 0x1a, 0x9a, }; static const unsigned char xdh_wei448_2205_sharedsecret[] = { 0xef, 0x11, 0x12, 0x1d, 0x16, 0x03, 0x9f, 0xab, 0xa9, 0x2d, 0x89, 0x4a, 0x6f, 0xfd, 0x6b, 0x3d, 0xc3, 0x0f, 0x98, 0x59, 0x45, 0xde, 0xd2, 0x0b, 0x0f, 0xd9, 0x7c, 0x85, 0x69, 0x56, 0x20, 0xc3, 0x84, 0xf1, 0xb9, 0x5c, 0xae, 0xf4, 0x1e, 0x69, 0x56, 0x12, 0xfe, 0x0f, 0xd6, 0x44, 0x7b, 0xfb, 0x2b, 0x84, 0x53, 0x38, 0x10, 0xdf, 0x0d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_2205 = { .name = "xdh_wei448_2205", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2205_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2205_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2205_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 133 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2206 for XDH, tcId is 134 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2206_peerpubkey[] = { 0xc4, 0xb7, 0x09, 0x0f, 0x3b, 0x94, 0xf5, 0xc8, 0x9e, 0xc7, 0xd2, 0xdc, 0x46, 0xd8, 0x49, 0xca, 0x68, 0x65, 0xb5, 0x32, 0x0e, 0xec, 0xe2, 0x72, 0xf4, 0x26, 0xd6, 0x10, 0xa5, 0x7e, 0xe5, 0xd2, 0x46, 0xd4, 0xff, 0xa1, 0xc5, 0x92, 0xcf, 0x57, 0x96, 0xfe, 0x9f, 0x9b, 0x66, 0x9f, 0xe5, 0x7d, 0x01, 0xba, 0x31, 0x22, 0xcd, 0xa3, 0x0e, 0x1b, }; static const unsigned char xdh_wei448_2206_privkey[] = { 0x80, 0xfa, 0x57, 0x4c, 0x9b, 0x52, 0xc5, 0x86, 0x9b, 0x4c, 0x0e, 0x0a, 0x6e, 0x00, 0xb1, 0x95, 0x76, 0x1e, 0xd0, 0x06, 0x38, 0x54, 0xa3, 0xb4, 0xd6, 0xa5, 0xb7, 0x05, 0x56, 0x55, 0x6a, 0x17, 0xc8, 0x49, 0xd0, 0xd0, 0x1a, 0x14, 0xff, 0xc6, 0x60, 0x31, 0x3b, 0xa1, 0xa8, 0x6f, 0xf2, 0xbc, 0xe9, 0x6f, 0x62, 0xd6, 0x55, 0x84, 0x9e, 0xba, }; static const unsigned char xdh_wei448_2206_sharedsecret[] = { 0x0c, 0xed, 0x4d, 0xd0, 0xe1, 0x24, 0xb2, 0xd6, 0xa8, 0xb2, 0xcc, 0x84, 0xde, 0xaa, 0xce, 0x4d, 0xec, 0x82, 0x83, 0x6b, 0xa3, 0xc1, 0x54, 0xc6, 0x0b, 0x72, 0x7d, 0x7d, 0x55, 0xb6, 0x82, 0xd0, 0xfd, 0x50, 0x37, 0x83, 0xd1, 0x65, 0xab, 0xde, 0xfd, 0x23, 0x24, 0xe8, 0x54, 0x59, 0x31, 0xd9, 0xc7, 0xf3, 0xab, 0xf8, 0xc8, 0xa2, 0x54, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_2206 = { .name = "xdh_wei448_2206", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2206_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2206_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2206_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 134 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2207 for XDH, tcId is 135 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2207_peerpubkey[] = { 0x9a, 0xe0, 0x5c, 0x7f, 0x33, 0x5f, 0xa2, 0x3f, 0xa3, 0x63, 0x58, 0xf8, 0x33, 0xfe, 0x9e, 0x07, 0x4b, 0xc5, 0x52, 0x41, 0x35, 0x81, 0x9a, 0x9a, 0x2f, 0x16, 0x42, 0xd3, 0x91, 0xfb, 0xd7, 0xdc, 0x22, 0x77, 0x8d, 0x46, 0x8c, 0x7e, 0x03, 0xff, 0xd7, 0x2e, 0xd8, 0x78, 0x66, 0x4e, 0x31, 0xe3, 0x29, 0x7a, 0x9a, 0xad, 0x33, 0xfb, 0xc1, 0x7e, }; static const unsigned char xdh_wei448_2207_privkey[] = { 0x34, 0xd6, 0x35, 0xcf, 0xfd, 0x8e, 0x5f, 0x96, 0x8b, 0x91, 0xbb, 0x19, 0x3d, 0x6c, 0x42, 0xa3, 0xae, 0xc6, 0x5b, 0xdf, 0x51, 0x21, 0xf4, 0x2c, 0xa2, 0xec, 0x0d, 0x5a, 0x80, 0xe3, 0xd4, 0xc3, 0x57, 0xda, 0x9f, 0xa4, 0x38, 0x86, 0x7b, 0x55, 0x45, 0x77, 0x69, 0xe1, 0x49, 0x06, 0x70, 0xa1, 0x31, 0x33, 0x84, 0xec, 0xe9, 0xbc, 0x4c, 0xb7, }; static const unsigned char xdh_wei448_2207_sharedsecret[] = { 0x9e, 0xf2, 0x20, 0x30, 0x96, 0xf5, 0x7f, 0xb0, 0x47, 0x25, 0x6c, 0xef, 0x46, 0x30, 0x48, 0x4f, 0x72, 0xba, 0x28, 0x1a, 0xdc, 0xb9, 0x23, 0xca, 0x50, 0xe0, 0x8d, 0x95, 0x6e, 0x80, 0xec, 0xc6, 0xdf, 0xd9, 0x08, 0xee, 0x61, 0x9f, 0xb6, 0x2c, 0x22, 0x48, 0x34, 0xce, 0xb0, 0x1e, 0xe2, 0xb7, 0xc4, 0xd3, 0x56, 0xb8, 0x06, 0xc8, 0xf0, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2207 = { .name = "xdh_wei448_2207", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2207_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2207_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2207_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 135 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2208 for XDH, tcId is 136 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2208_peerpubkey[] = { 0x65, 0x1f, 0xa3, 0x80, 0xcc, 0xa0, 0x5d, 0xc0, 0x5c, 0x9c, 0xa7, 0x07, 0xcc, 0x01, 0x61, 0xf8, 0xb4, 0x3a, 0xad, 0xbe, 0xca, 0x7e, 0x65, 0x65, 0xd0, 0xe9, 0xbd, 0x2c, 0x6d, 0x04, 0x28, 0x23, 0xdd, 0x88, 0x72, 0xb9, 0x73, 0x81, 0xfc, 0x00, 0x28, 0xd1, 0x27, 0x87, 0x99, 0xb1, 0xce, 0x1c, 0xd6, 0x85, 0x65, 0x52, 0xcc, 0x04, 0x3e, 0x81, }; static const unsigned char xdh_wei448_2208_privkey[] = { 0x48, 0xff, 0xe0, 0x4d, 0x62, 0xfc, 0xaf, 0xc6, 0xad, 0xf6, 0x7f, 0x09, 0x8d, 0x9a, 0xe6, 0xa3, 0xd8, 0x08, 0x3e, 0x47, 0x37, 0x6d, 0x6f, 0x7d, 0x92, 0x23, 0xee, 0x35, 0x6b, 0x94, 0x0c, 0x8b, 0x39, 0x38, 0x9b, 0xf4, 0x54, 0x6d, 0x1f, 0x5e, 0x85, 0x14, 0xa7, 0x75, 0xb4, 0x5c, 0x41, 0x21, 0x8b, 0xb8, 0xfa, 0xfa, 0x4c, 0xb3, 0xba, 0xbe, }; static const unsigned char xdh_wei448_2208_sharedsecret[] = { 0x81, 0x2e, 0xca, 0xd3, 0xe5, 0xd7, 0xbc, 0xe3, 0x7d, 0x30, 0xc7, 0xb9, 0x6f, 0xb4, 0xf8, 0xb3, 0x0b, 0x7d, 0x14, 0x16, 0x92, 0x51, 0x6c, 0x2b, 0xb7, 0xb1, 0x8b, 0x78, 0xfc, 0xbe, 0x4f, 0x77, 0x4a, 0x85, 0x00, 0xb2, 0x6d, 0xce, 0x75, 0x36, 0x98, 0x3d, 0xd7, 0x1d, 0x92, 0xa0, 0xe8, 0xbb, 0xd8, 0x5d, 0xd0, 0x30, 0x62, 0x1c, 0x0c, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2208 = { .name = "xdh_wei448_2208", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2208_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2208_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2208_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 136 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2209 for XDH, tcId is 137 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2209_peerpubkey[] = { 0x3b, 0x48, 0xf6, 0xf0, 0xc4, 0x6b, 0x0a, 0x37, 0x61, 0x38, 0x2d, 0x23, 0xb9, 0x27, 0xb6, 0x35, 0x97, 0x9a, 0x4a, 0xcd, 0xf1, 0x13, 0x1d, 0x8d, 0x0b, 0xd9, 0x29, 0xef, 0x59, 0x81, 0x1a, 0x2d, 0xb9, 0x2b, 0x00, 0x5e, 0x3a, 0x6d, 0x30, 0xa8, 0x69, 0x01, 0x60, 0x64, 0x99, 0x60, 0x1a, 0x82, 0xfe, 0x45, 0xce, 0xdd, 0x32, 0x5c, 0xf1, 0xe4, }; static const unsigned char xdh_wei448_2209_privkey[] = { 0x0c, 0xbd, 0xf8, 0x5d, 0x05, 0x38, 0xf6, 0xbe, 0xe7, 0x33, 0x49, 0xe7, 0x78, 0xe1, 0x0f, 0x65, 0x8e, 0xbb, 0x8a, 0x63, 0xa5, 0x94, 0xab, 0x8a, 0x37, 0xae, 0x37, 0xd2, 0x85, 0xb5, 0x96, 0x96, 0xd9, 0x2b, 0x7a, 0x41, 0x28, 0xf7, 0x04, 0x0a, 0x26, 0x64, 0x51, 0xc3, 0x1c, 0x0b, 0xd1, 0x5f, 0x6e, 0xb5, 0x97, 0xaa, 0x33, 0x7b, 0x6b, 0x97, }; static const unsigned char xdh_wei448_2209_sharedsecret[] = { 0xf7, 0xb0, 0xd7, 0x5f, 0x5d, 0xd7, 0x2c, 0xde, 0x92, 0xb7, 0x66, 0x14, 0x77, 0xde, 0xc7, 0x54, 0xed, 0x0c, 0x8d, 0x77, 0x94, 0x75, 0xb6, 0x5e, 0xb0, 0xac, 0x5e, 0x2d, 0x5a, 0x56, 0xd0, 0xfa, 0x06, 0x4a, 0x07, 0x36, 0x19, 0xe9, 0xf2, 0x4c, 0x00, 0x95, 0x3f, 0xfa, 0xc8, 0x7a, 0x3e, 0xd7, 0x3b, 0xbd, 0x45, 0xcb, 0x2d, 0x4c, 0x00, 0xea, }; static const wycheproof_xdh_test xdh_wei448_2209 = { .name = "xdh_wei448_2209", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2209_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2209_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2209_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 137 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2210 for XDH, tcId is 138 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2210_peerpubkey[] = { 0x64, 0x83, 0x06, 0x2f, 0x69, 0x7b, 0xae, 0x22, 0x6e, 0xbe, 0x55, 0xb1, 0xf9, 0x22, 0x89, 0x0a, 0xc1, 0xab, 0xf7, 0xe9, 0x52, 0xcc, 0xe8, 0x9c, 0x6c, 0xd0, 0xd3, 0x47, 0xcf, 0xf6, 0x41, 0x33, 0xb8, 0x7a, 0x30, 0x96, 0x18, 0xc1, 0xbe, 0x42, 0x93, 0x40, 0x72, 0xf0, 0xdb, 0x80, 0x8a, 0x78, 0xca, 0x80, 0xff, 0x28, 0x71, 0x46, 0xf6, 0xe9, }; static const unsigned char xdh_wei448_2210_privkey[] = { 0x34, 0x62, 0x83, 0x92, 0xdd, 0x76, 0x45, 0x81, 0x8b, 0x89, 0x9e, 0x32, 0xe9, 0x8b, 0x13, 0xf7, 0x07, 0x03, 0x8b, 0x94, 0x3f, 0x74, 0x5b, 0xc6, 0x25, 0x2b, 0x8c, 0x4b, 0x2c, 0x9e, 0x62, 0xf8, 0xcb, 0x01, 0x31, 0x02, 0x90, 0xb6, 0x27, 0xf5, 0x52, 0x77, 0x56, 0xc9, 0x43, 0x09, 0x50, 0x37, 0x31, 0xb9, 0x1e, 0xba, 0x64, 0xb7, 0x62, 0xa6, }; static const unsigned char xdh_wei448_2210_sharedsecret[] = { 0xd5, 0x75, 0x5a, 0xf8, 0x02, 0x84, 0xe9, 0x2b, 0x6b, 0x71, 0x8d, 0x02, 0x9e, 0x0e, 0xc9, 0x20, 0x4d, 0x34, 0xa9, 0x17, 0x40, 0x3e, 0xe6, 0x09, 0xc0, 0x06, 0x6f, 0x90, 0x2b, 0x50, 0x97, 0x28, 0xb1, 0x95, 0xfa, 0x4e, 0x84, 0x2f, 0x2b, 0xdc, 0xbd, 0xdc, 0x93, 0x7f, 0xe0, 0xa1, 0x91, 0x4d, 0x58, 0x01, 0x82, 0xae, 0x4c, 0x0a, 0x1c, 0x74, }; static const wycheproof_xdh_test xdh_wei448_2210 = { .name = "xdh_wei448_2210", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2210_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2210_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2210_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 138 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2211 for XDH, tcId is 139 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2211_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2211_privkey[] = { 0xa8, 0x19, 0x12, 0xb4, 0xa4, 0x5a, 0x01, 0x25, 0x5b, 0x3c, 0xa9, 0x10, 0x4c, 0x8e, 0x68, 0x8a, 0x0c, 0x1e, 0x4f, 0x39, 0xf0, 0xc6, 0x3e, 0xd7, 0x7b, 0x84, 0xa6, 0xcc, 0xab, 0xc5, 0x7d, 0x90, 0xc0, 0xb8, 0x59, 0x1a, 0x9c, 0xa2, 0x3b, 0x35, 0x10, 0x41, 0x1e, 0x30, 0xa3, 0x09, 0xb2, 0x81, 0x39, 0x92, 0x99, 0x3f, 0x91, 0x78, 0xe0, 0xa3, }; static const unsigned char xdh_wei448_2211_sharedsecret[] = { 0xa2, 0xda, 0x73, 0x00, 0xf1, 0x95, 0x18, 0x1b, 0x1b, 0x47, 0x6d, 0x12, 0x7b, 0x3b, 0x78, 0xe9, 0xc6, 0xa8, 0xc7, 0x91, 0xd7, 0x6f, 0x40, 0x80, 0x4f, 0x2e, 0x62, 0xb6, 0xbc, 0x8f, 0x9b, 0x68, 0xf2, 0x6a, 0x83, 0xb0, 0x2f, 0x0a, 0xd8, 0xa8, 0x50, 0x59, 0x04, 0x44, 0x1c, 0xe9, 0xd3, 0xfa, 0x4e, 0xc9, 0x92, 0x5f, 0xd1, 0xca, 0x3c, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2211 = { .name = "xdh_wei448_2211", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2211_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2211_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2211_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 139 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2212 for XDH, tcId is 140 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2212_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2212_privkey[] = { 0x04, 0x15, 0x4c, 0xc5, 0x13, 0xb9, 0xb0, 0x44, 0x5a, 0xd4, 0x93, 0x91, 0x0f, 0xb7, 0x5b, 0x26, 0xb2, 0x39, 0x8b, 0xf1, 0xa7, 0xe7, 0x47, 0x1a, 0x30, 0x7f, 0x2b, 0xbd, 0x0f, 0x78, 0xd1, 0x9e, 0xa0, 0x5d, 0x5f, 0xbd, 0x6c, 0xf8, 0x45, 0xf1, 0xc8, 0xa0, 0x3b, 0xb8, 0x30, 0xc1, 0xfc, 0x53, 0x25, 0xe2, 0x48, 0xdd, 0xf5, 0xaa, 0xd4, 0x96, }; static const unsigned char xdh_wei448_2212_sharedsecret[] = { 0xdd, 0x76, 0x45, 0x27, 0xcc, 0x4c, 0x41, 0x3f, 0x3e, 0x03, 0xc4, 0xe8, 0x1c, 0x58, 0x3c, 0xbc, 0xc7, 0x91, 0x92, 0x93, 0xc3, 0xc3, 0x91, 0x01, 0xaa, 0x8c, 0x88, 0x76, 0x77, 0x92, 0x89, 0xb3, 0xc1, 0x42, 0x24, 0xf1, 0x2b, 0xa9, 0x58, 0x69, 0x7d, 0xa6, 0xe2, 0xb3, 0xb0, 0xa1, 0x3f, 0xf0, 0x8e, 0xa3, 0x0b, 0xbc, 0xda, 0xdd, 0x27, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2212 = { .name = "xdh_wei448_2212", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2212_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2212_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2212_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 140 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2213 for XDH, tcId is 141 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2213_peerpubkey[] = { 0xb6, 0x54, 0xb7, 0x67, 0xb0, 0x00, 0xa0, 0x4f, 0x37, 0x8e, 0x46, 0x81, 0x82, 0x4c, 0xd0, 0x1b, 0x1d, 0x60, 0xfb, 0x26, 0x22, 0x57, 0x04, 0x9a, 0xa7, 0x92, 0xd4, 0x52, 0xef, 0x9d, 0x3e, 0x2e, 0x85, 0xca, 0x73, 0x9b, 0x48, 0x93, 0x69, 0x49, 0x12, 0x5c, 0x66, 0x52, 0x31, 0x2e, 0xbb, 0x1c, 0x57, 0x64, 0xe5, 0x9a, 0x34, 0xab, 0x39, 0x5f, }; static const unsigned char xdh_wei448_2213_privkey[] = { 0x64, 0x16, 0x08, 0xb1, 0x8c, 0x38, 0x28, 0x1b, 0x13, 0xbe, 0x02, 0xbd, 0x69, 0x5f, 0xd6, 0x40, 0xfa, 0x68, 0xa0, 0x0b, 0x51, 0xf7, 0x5f, 0x19, 0x5e, 0x98, 0x55, 0xcb, 0xab, 0x92, 0x27, 0x05, 0x73, 0xa5, 0x5e, 0xf9, 0x0f, 0x55, 0xec, 0x7c, 0xb8, 0x65, 0x4f, 0x53, 0xc2, 0x15, 0x90, 0xb6, 0xa7, 0x09, 0x9d, 0xed, 0x7d, 0x1e, 0xae, 0xb7, }; static const unsigned char xdh_wei448_2213_sharedsecret[] = { 0xd5, 0xa1, 0x9d, 0x66, 0x27, 0x94, 0x5a, 0xc4, 0x8d, 0xce, 0x52, 0xa2, 0x7c, 0x9f, 0x8c, 0x75, 0x50, 0xb9, 0x9c, 0xcb, 0x39, 0x59, 0x16, 0xb6, 0xb6, 0x1d, 0x07, 0x6d, 0x53, 0x3e, 0x62, 0xb2, 0x36, 0x06, 0x8e, 0x80, 0x76, 0xa8, 0x15, 0xda, 0x58, 0x47, 0x59, 0x2f, 0x77, 0xc1, 0xfc, 0x13, 0x3a, 0x11, 0xee, 0x90, 0x73, 0x88, 0xbe, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2213 = { .name = "xdh_wei448_2213", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2213_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2213_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2213_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 141 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2214 for XDH, tcId is 142 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2214_peerpubkey[] = { 0xad, 0xbe, 0xcb, 0xd3, 0x8b, 0x69, 0x16, 0x7b, 0x99, 0x5c, 0x0c, 0x7d, 0xa8, 0xf1, 0xfd, 0x1e, 0x9d, 0xca, 0x26, 0x2e, 0xb7, 0x9c, 0x78, 0xc9, 0xab, 0xa1, 0x59, 0xd1, 0xbe, 0x18, 0x6b, 0xba, 0xcd, 0x3b, 0x08, 0xdb, 0x7a, 0xa8, 0xd4, 0x22, 0x70, 0xcd, 0x01, 0x1b, 0x67, 0xc6, 0x66, 0x36, 0x52, 0x8d, 0x6f, 0xf6, 0xf0, 0xf2, 0x97, 0x76, }; static const unsigned char xdh_wei448_2214_privkey[] = { 0xb8, 0xbb, 0xcf, 0x42, 0xea, 0x9c, 0x95, 0xff, 0x90, 0x8d, 0xba, 0x59, 0x8c, 0x96, 0x44, 0x0d, 0xdf, 0x66, 0x49, 0xf8, 0x30, 0xc4, 0xfe, 0x21, 0xf3, 0x1d, 0x0f, 0x45, 0xbc, 0x83, 0x47, 0xe4, 0x81, 0x71, 0xa9, 0x2a, 0x04, 0xd2, 0x19, 0xe4, 0x05, 0x7c, 0x10, 0xdc, 0x74, 0x9d, 0x90, 0x28, 0xfb, 0x5a, 0x55, 0x84, 0xa8, 0x80, 0x3b, 0xbe, }; static const unsigned char xdh_wei448_2214_sharedsecret[] = { 0x2c, 0x9b, 0xb5, 0xa0, 0x3d, 0x9c, 0xc0, 0xec, 0x65, 0xf5, 0x5c, 0x2c, 0x0a, 0x32, 0x79, 0xf4, 0xf7, 0x85, 0xd6, 0xb9, 0x9d, 0x8f, 0xea, 0x6c, 0x80, 0x33, 0xf0, 0xf0, 0xc9, 0xf2, 0xf3, 0xa0, 0xdd, 0xae, 0x1e, 0x09, 0xf5, 0x0a, 0xe7, 0x03, 0x7a, 0x89, 0x31, 0x65, 0x65, 0x0c, 0x5a, 0xb1, 0x5d, 0x20, 0x3f, 0x8d, 0xc2, 0x49, 0x69, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2214 = { .name = "xdh_wei448_2214", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2214_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2214_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2214_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 142 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2215 for XDH, tcId is 143 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2215_peerpubkey[] = { 0xa3, 0xd9, 0xe5, 0x94, 0x6d, 0x7d, 0x7c, 0xd9, 0xda, 0x73, 0x8c, 0xd5, 0x46, 0x53, 0xcd, 0xb3, 0xe7, 0x2f, 0xc6, 0xa3, 0x07, 0x89, 0xe9, 0x0a, 0x3f, 0xc0, 0xff, 0x3d, 0x1f, 0x2b, 0xf9, 0xde, 0x94, 0x1f, 0x17, 0x9a, 0x32, 0x1b, 0x85, 0xe7, 0xc7, 0xf4, 0x3b, 0xaf, 0xd6, 0xeb, 0x26, 0xaa, 0x57, 0x14, 0x33, 0x6f, 0xdc, 0x64, 0x63, 0x12, }; static const unsigned char xdh_wei448_2215_privkey[] = { 0xe4, 0xf0, 0xb2, 0x95, 0xc3, 0xe0, 0xad, 0x3c, 0xd6, 0x43, 0x92, 0x9c, 0x34, 0x0a, 0xd2, 0x9d, 0x36, 0x89, 0x70, 0xe2, 0xdb, 0x1e, 0xa2, 0x51, 0x7b, 0xfe, 0x43, 0xf1, 0x12, 0xd8, 0x2b, 0xce, 0x54, 0xbf, 0xe1, 0x61, 0x38, 0x35, 0x55, 0x45, 0x5b, 0xd2, 0xe2, 0x0d, 0x8b, 0x2c, 0x0b, 0xb1, 0x87, 0xd0, 0xdc, 0x11, 0xa7, 0x0c, 0x7b, 0xab, }; static const unsigned char xdh_wei448_2215_sharedsecret[] = { 0x71, 0xff, 0xb6, 0x11, 0x9f, 0x50, 0xb5, 0x97, 0x97, 0x6c, 0x4e, 0xdd, 0x86, 0xd6, 0xfc, 0xd1, 0x86, 0x8e, 0xfd, 0x0a, 0xf6, 0xda, 0x57, 0xe5, 0xa6, 0x4f, 0x0e, 0xac, 0x2c, 0x5a, 0x01, 0x1b, 0x54, 0x3b, 0x9b, 0x52, 0xc7, 0x84, 0xfa, 0x4e, 0x73, 0x99, 0x43, 0x7c, 0x81, 0x40, 0xa7, 0xfa, 0x68, 0x8e, 0x5a, 0xfe, 0xe5, 0xaa, 0xf7, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2215 = { .name = "xdh_wei448_2215", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2215_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2215_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2215_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 143 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2216 for XDH, tcId is 144 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2216_peerpubkey[] = { 0x54, 0x3f, 0x1c, 0x98, 0x13, 0xfb, 0xb1, 0xd8, 0xc2, 0x82, 0xfd, 0x2d, 0xb8, 0xc1, 0x9d, 0x3f, 0x11, 0x97, 0x3e, 0x6d, 0x28, 0x81, 0x30, 0x7d, 0x4b, 0xf0, 0x0f, 0x9d, 0xe7, 0xdd, 0xab, 0xf5, 0x50, 0xea, 0x00, 0x51, 0xb4, 0xe0, 0x3d, 0x47, 0x20, 0x60, 0x58, 0xa6, 0xdd, 0x24, 0x14, 0x88, 0x4b, 0x19, 0x49, 0x64, 0x13, 0x0c, 0xed, 0x35, }; static const unsigned char xdh_wei448_2216_privkey[] = { 0xb0, 0xa7, 0x8d, 0xbe, 0xd2, 0xbf, 0x1a, 0x9e, 0xf2, 0x3b, 0x5d, 0x69, 0xc0, 0x6a, 0x95, 0xb9, 0x31, 0x92, 0x57, 0x7a, 0x58, 0x1f, 0xa9, 0x59, 0x36, 0xa3, 0x6d, 0x65, 0x86, 0xcf, 0x22, 0x69, 0x95, 0xd8, 0x3e, 0xe7, 0x4c, 0xd2, 0x82, 0x56, 0xb1, 0x6a, 0xc4, 0x43, 0xa5, 0x52, 0x45, 0x9f, 0x64, 0x88, 0x1b, 0xc0, 0x47, 0xbd, 0x89, 0x89, }; static const unsigned char xdh_wei448_2216_sharedsecret[] = { 0xd5, 0x23, 0x44, 0x92, 0xc6, 0x7b, 0xd9, 0xf1, 0xf9, 0x91, 0xbe, 0x23, 0x71, 0x90, 0x7c, 0x09, 0x5a, 0x0d, 0x0b, 0xe8, 0xe7, 0x98, 0x8b, 0x31, 0x36, 0xcb, 0xdb, 0xcc, 0x50, 0x0e, 0x5c, 0xaa, 0x24, 0xfb, 0x0f, 0x26, 0xc7, 0x77, 0xcc, 0xe6, 0x4d, 0xd1, 0x43, 0xf4, 0x62, 0xb8, 0x4b, 0xf4, 0xc7, 0x4c, 0x6b, 0xce, 0x8f, 0xd8, 0x69, 0x47, }; static const wycheproof_xdh_test xdh_wei448_2216 = { .name = "xdh_wei448_2216", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2216_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2216_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2216_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 144 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2217 for XDH, tcId is 145 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2217_peerpubkey[] = { 0x60, 0x5c, 0x4f, 0x65, 0xab, 0x0e, 0xe2, 0xa1, 0x5e, 0x42, 0xa7, 0xf3, 0x02, 0xa7, 0x80, 0x43, 0x41, 0x64, 0xaf, 0x55, 0x89, 0xec, 0xa1, 0xae, 0x0a, 0xd7, 0x82, 0xd9, 0x23, 0x29, 0xc5, 0x9d, 0x0f, 0xfa, 0xd0, 0x43, 0xa2, 0x0d, 0x62, 0x2b, 0x9f, 0x72, 0xe7, 0xb9, 0xa1, 0x81, 0xaf, 0xad, 0xac, 0xb6, 0xf2, 0x19, 0x4d, 0xcb, 0xe2, 0xae, }; static const unsigned char xdh_wei448_2217_privkey[] = { 0x34, 0x9f, 0xa5, 0xb5, 0x42, 0x3f, 0x3e, 0x57, 0xf2, 0x7d, 0x10, 0xd7, 0xea, 0xaa, 0xe5, 0x49, 0x06, 0x30, 0xbe, 0xaf, 0x47, 0x22, 0x66, 0x20, 0xe7, 0x0b, 0x5b, 0xa5, 0x6b, 0xd2, 0x93, 0x07, 0x70, 0xa8, 0x2e, 0x96, 0x20, 0xd2, 0x10, 0x81, 0xd4, 0x7e, 0x58, 0xfb, 0x31, 0xce, 0x5c, 0x67, 0x4f, 0xb9, 0x9f, 0x9d, 0x8f, 0x95, 0xa2, 0x89, }; static const unsigned char xdh_wei448_2217_sharedsecret[] = { 0xaa, 0xb5, 0xa5, 0x19, 0x24, 0x2a, 0x0a, 0x8b, 0x1b, 0x3e, 0x62, 0x28, 0x34, 0x36, 0xd5, 0xae, 0x46, 0x35, 0x1b, 0x4f, 0x29, 0xff, 0x97, 0x55, 0x04, 0x4e, 0xb8, 0xe0, 0xff, 0x1e, 0xa3, 0x33, 0x46, 0x24, 0xab, 0x01, 0xcf, 0x5e, 0x39, 0xa3, 0x78, 0x38, 0x24, 0xf0, 0xb7, 0xd3, 0xcc, 0xc2, 0xe7, 0x10, 0x6d, 0x4c, 0xe6, 0xc6, 0x72, 0x62, }; static const wycheproof_xdh_test xdh_wei448_2217 = { .name = "xdh_wei448_2217", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2217_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2217_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2217_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 145 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2218 for XDH, tcId is 146 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2218_peerpubkey[] = { 0x3c, 0xd6, 0x73, 0x9f, 0x26, 0x06, 0x7e, 0x7e, 0x9f, 0xfc, 0x51, 0xaf, 0xc3, 0xb9, 0x29, 0xf7, 0x02, 0x62, 0x2f, 0x7b, 0xe3, 0xd1, 0x7b, 0x58, 0xee, 0xb1, 0x0c, 0x12, 0xb4, 0x02, 0xd2, 0xdd, 0xe3, 0xe4, 0xfa, 0x56, 0xae, 0xa6, 0x77, 0x98, 0x93, 0x31, 0xdd, 0xde, 0xb1, 0x2c, 0xf2, 0xf0, 0xa1, 0x45, 0x8b, 0x3e, 0x0e, 0xb8, 0x24, 0xb4, }; static const unsigned char xdh_wei448_2218_privkey[] = { 0x84, 0xc7, 0xba, 0xd5, 0x9e, 0x33, 0x2e, 0x1d, 0xab, 0x8e, 0x0d, 0x58, 0xa6, 0x4d, 0xef, 0xf8, 0x94, 0xf2, 0x4c, 0x04, 0x2c, 0x13, 0xb1, 0xee, 0xe6, 0x50, 0x72, 0x11, 0x85, 0xe5, 0x9d, 0xa3, 0x3f, 0x4f, 0x27, 0xa2, 0x9d, 0x70, 0xfa, 0x14, 0x82, 0xdb, 0x32, 0xf6, 0xc9, 0xe9, 0x98, 0xa9, 0xce, 0x4d, 0xad, 0x96, 0x42, 0x03, 0x26, 0x98, }; static const unsigned char xdh_wei448_2218_sharedsecret[] = { 0x6f, 0x53, 0x8d, 0x45, 0xbd, 0xb7, 0xbd, 0x7e, 0x46, 0xae, 0x38, 0x17, 0x3c, 0xf7, 0x6f, 0xbe, 0xee, 0xd7, 0xfd, 0x4a, 0x51, 0x7d, 0x9f, 0x68, 0xd7, 0xe4, 0xb1, 0xa3, 0x8d, 0x9b, 0x7b, 0x7c, 0x14, 0xd9, 0x1f, 0xa7, 0xed, 0xc5, 0x45, 0x2f, 0x01, 0x7a, 0x33, 0x95, 0x9f, 0x66, 0x8b, 0x9e, 0x04, 0x41, 0x32, 0xc3, 0xb0, 0x38, 0x13, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_2218 = { .name = "xdh_wei448_2218", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2218_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2218_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2218_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 146 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2219 for XDH, tcId is 147 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2219_peerpubkey[] = { 0xb3, 0x27, 0x87, 0x93, 0x0b, 0x31, 0x1c, 0xa4, 0xc4, 0xbc, 0x08, 0x3f, 0xc7, 0xda, 0x3f, 0x87, 0x90, 0x21, 0xa6, 0x90, 0xd2, 0x8c, 0x3b, 0xa8, 0x03, 0x43, 0x0f, 0xa9, 0x3b, 0x7a, 0x7a, 0xf6, 0x54, 0x3e, 0xd6, 0xef, 0x03, 0x25, 0x5c, 0x46, 0x6d, 0x20, 0x3c, 0x00, 0x4d, 0x52, 0x49, 0x27, 0x9d, 0x0c, 0xc4, 0x8c, 0x1e, 0xea, 0x25, 0xdc, }; static const unsigned char xdh_wei448_2219_privkey[] = { 0x70, 0x92, 0xf5, 0xef, 0x4e, 0x90, 0xe0, 0x4b, 0x18, 0xdb, 0x8a, 0xbb, 0xc5, 0x7a, 0x96, 0xaa, 0xb4, 0x97, 0x76, 0xfa, 0x89, 0x79, 0x32, 0x1d, 0x4f, 0xc3, 0xce, 0xc5, 0x64, 0x88, 0x2a, 0xc6, 0x4d, 0x2f, 0x8e, 0xcf, 0xa1, 0x81, 0xe7, 0x0b, 0xd1, 0xca, 0xe7, 0x6b, 0xf5, 0xec, 0xc8, 0x9f, 0x61, 0xd4, 0xda, 0x80, 0xa2, 0x58, 0x0e, 0xb6, }; static const unsigned char xdh_wei448_2219_sharedsecret[] = { 0x3c, 0x8d, 0xa7, 0x1a, 0x00, 0x22, 0x1b, 0x9f, 0x77, 0x98, 0xc4, 0xd1, 0xf9, 0xe5, 0xec, 0x36, 0x6a, 0x3d, 0x8c, 0x38, 0x58, 0xec, 0xa0, 0xc4, 0x69, 0x94, 0x55, 0x86, 0xbe, 0x10, 0x11, 0x27, 0x26, 0x57, 0x8d, 0x67, 0xab, 0xbf, 0xf2, 0xb5, 0x97, 0xa1, 0x12, 0x53, 0x1c, 0x36, 0x1d, 0x09, 0x96, 0x51, 0x05, 0xda, 0xb2, 0x46, 0xab, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_2219 = { .name = "xdh_wei448_2219", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2219_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2219_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2219_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 147 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2220 for XDH, tcId is 148 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2220_peerpubkey[] = { 0xc4, 0xcb, 0x77, 0x0d, 0xe1, 0xc5, 0x21, 0xa3, 0x43, 0xdf, 0x91, 0x72, 0xf9, 0xa5, 0xb9, 0x28, 0x1d, 0xf0, 0x6a, 0xf7, 0xf6, 0x1a, 0xf9, 0xea, 0x12, 0x40, 0x8d, 0xfe, 0xad, 0x1d, 0xcc, 0x6c, 0x16, 0x9a, 0x2b, 0xda, 0x16, 0x5d, 0xd0, 0x5a, 0x73, 0x67, 0x9a, 0xa1, 0x4d, 0x05, 0x8f, 0x4f, 0xcb, 0x14, 0xef, 0xac, 0x1e, 0x58, 0x04, 0xff, }; static const unsigned char xdh_wei448_2220_privkey[] = { 0x48, 0xf4, 0x5b, 0xef, 0x6b, 0x16, 0x6f, 0xdd, 0x97, 0x10, 0xe8, 0xe7, 0xde, 0x6c, 0xb9, 0x42, 0x28, 0xfe, 0x09, 0xd9, 0x67, 0xaf, 0x4e, 0xcd, 0xff, 0x92, 0x72, 0x69, 0x5b, 0xb9, 0x90, 0x13, 0xb0, 0x50, 0xbb, 0x35, 0x4f, 0x50, 0xa5, 0xa6, 0x0e, 0xd2, 0x81, 0xc3, 0x04, 0xe6, 0xfb, 0x02, 0xca, 0xde, 0x2f, 0xd4, 0x18, 0xdd, 0xf3, 0x99, }; static const unsigned char xdh_wei448_2220_sharedsecret[] = { 0xd4, 0x3f, 0x64, 0x21, 0xbd, 0x46, 0x20, 0xf4, 0x02, 0xe5, 0x5f, 0x57, 0xa9, 0xdb, 0x4c, 0x5e, 0x9c, 0x47, 0x9c, 0x31, 0x73, 0xa5, 0x75, 0xf9, 0x34, 0x42, 0xe5, 0x85, 0x29, 0xa7, 0x6a, 0xc3, 0xbd, 0x5d, 0xfc, 0xe1, 0x5a, 0x2c, 0xc0, 0xc1, 0x57, 0x66, 0x11, 0x6c, 0x99, 0xe9, 0xe2, 0xbe, 0x8c, 0x5b, 0x8a, 0x12, 0x56, 0x66, 0x27, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_2220 = { .name = "xdh_wei448_2220", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2220_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2220_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2220_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 148 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2221 for XDH, tcId is 149 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2221_peerpubkey[] = { 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_2221_privkey[] = { 0x00, 0xab, 0x5a, 0x77, 0x83, 0x4d, 0x28, 0x0d, 0xaf, 0x5f, 0x95, 0x6a, 0xb2, 0x49, 0xd0, 0xe3, 0x45, 0x4e, 0x6c, 0x26, 0x02, 0x4e, 0x3f, 0x31, 0xeb, 0x0d, 0xd8, 0xdf, 0x01, 0x84, 0x85, 0x40, 0x7b, 0x88, 0xeb, 0xd8, 0x16, 0x38, 0xbd, 0x45, 0x71, 0xbd, 0x24, 0xf2, 0x53, 0x90, 0xeb, 0x35, 0x8e, 0x83, 0x6f, 0xba, 0xa8, 0xb7, 0xba, 0x95, }; static const unsigned char xdh_wei448_2221_sharedsecret[] = { 0x7f, 0x15, 0x13, 0xc0, 0x3a, 0x51, 0xb1, 0x5c, 0x8a, 0xa1, 0x7c, 0x0b, 0xac, 0x4a, 0x46, 0xd5, 0xc2, 0x76, 0xf4, 0xf9, 0x3f, 0x63, 0x3f, 0x75, 0x0d, 0x60, 0x86, 0x61, 0x49, 0x33, 0x15, 0x1e, 0x03, 0xf4, 0xef, 0x2b, 0x77, 0x2f, 0x9a, 0x39, 0x48, 0x0b, 0x2e, 0x83, 0xd6, 0x82, 0xd7, 0x66, 0x8e, 0xfd, 0x20, 0x1e, 0x13, 0x69, 0xd9, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2221 = { .name = "xdh_wei448_2221", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2221_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2221_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2221_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 149 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2222 for XDH, tcId is 150 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2222_peerpubkey[] = { 0x9e, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_2222_privkey[] = { 0x54, 0x11, 0x14, 0xfb, 0xfc, 0x2e, 0xb4, 0x7e, 0x94, 0x2c, 0xbc, 0xb4, 0x89, 0x2f, 0xd8, 0xf9, 0xdd, 0xeb, 0x5c, 0xb6, 0x43, 0xe1, 0x9f, 0x89, 0xd2, 0xfb, 0x77, 0xd4, 0x5f, 0x0c, 0x0d, 0x5a, 0x8a, 0x48, 0xf7, 0xc4, 0x1b, 0xd8, 0xd9, 0xbe, 0xf0, 0xdf, 0x8d, 0xbc, 0xa9, 0x3e, 0x4f, 0xd1, 0xe8, 0x7c, 0x62, 0xa4, 0x93, 0x8f, 0x25, 0x92, }; static const unsigned char xdh_wei448_2222_sharedsecret[] = { 0x36, 0xe7, 0x73, 0xe3, 0xa1, 0x8d, 0xba, 0xd7, 0x66, 0x49, 0xad, 0x5e, 0xa8, 0xa4, 0x12, 0x0d, 0xca, 0xb9, 0xb2, 0x3e, 0xbc, 0xe9, 0x95, 0x14, 0x88, 0x7c, 0xa1, 0x92, 0xe5, 0xf7, 0x40, 0xed, 0x4b, 0xd2, 0x78, 0xf6, 0xcb, 0x89, 0xf8, 0x2c, 0xf0, 0x39, 0xda, 0x69, 0xa3, 0x7f, 0xd1, 0x53, 0x21, 0x25, 0x20, 0x48, 0x85, 0xff, 0x56, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_2222 = { .name = "xdh_wei448_2222", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2222_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2222_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2222_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 150 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2223 for XDH, tcId is 151 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2223_peerpubkey[] = { 0xb5, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_2223_privkey[] = { 0x08, 0xe4, 0x13, 0x9f, 0xbe, 0x13, 0x7f, 0xa0, 0x4c, 0xd8, 0x62, 0x23, 0x33, 0x4a, 0x9e, 0x4b, 0xf1, 0xa3, 0xc9, 0x0c, 0x3c, 0xc7, 0x05, 0x66, 0x81, 0xdb, 0xdb, 0x04, 0xce, 0xc4, 0x28, 0x58, 0x2e, 0x5e, 0x63, 0xc3, 0x70, 0x5f, 0xd5, 0x1d, 0xe4, 0x8b, 0xe2, 0x8b, 0xf9, 0x63, 0x67, 0x73, 0x92, 0x83, 0x39, 0xe8, 0x76, 0xe4, 0xdd, 0xaa, }; static const unsigned char xdh_wei448_2223_sharedsecret[] = { 0x2c, 0x4a, 0xaa, 0xec, 0x96, 0x6c, 0xa0, 0xb0, 0xb4, 0xe0, 0x00, 0xe3, 0xf1, 0xb2, 0x3d, 0xbe, 0xfb, 0xd8, 0x6a, 0xa7, 0x76, 0x3d, 0x66, 0x96, 0x8a, 0x39, 0x36, 0x2a, 0xea, 0x4b, 0x33, 0xe0, 0x41, 0xc5, 0x10, 0xe4, 0xab, 0xcf, 0x21, 0xf1, 0xec, 0x6b, 0x92, 0x7a, 0xed, 0x30, 0x11, 0xa6, 0x0d, 0x54, 0xb6, 0x27, 0xc8, 0x83, 0xfa, 0xb5, }; static const wycheproof_xdh_test xdh_wei448_2223 = { .name = "xdh_wei448_2223", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2223_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2223_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2223_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 151 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2224 for XDH, tcId is 152 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2224_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2224_privkey[] = { 0x70, 0x0a, 0x99, 0x85, 0x56, 0x91, 0x33, 0xa0, 0x02, 0x59, 0x1e, 0x4d, 0x66, 0x3a, 0x2a, 0x9b, 0xd5, 0x15, 0x8c, 0xc1, 0x21, 0xd7, 0xd8, 0x79, 0x3e, 0x6a, 0x2d, 0x63, 0x15, 0xa8, 0xf2, 0xb8, 0x60, 0x8d, 0x23, 0x25, 0x47, 0x81, 0xb7, 0xbd, 0x1c, 0x89, 0x82, 0x31, 0xec, 0xde, 0x23, 0x38, 0x80, 0x85, 0x88, 0xf7, 0xe8, 0x46, 0x7a, 0x92, }; static const unsigned char xdh_wei448_2224_sharedsecret[] = { 0x82, 0x59, 0x7f, 0x64, 0x57, 0x0e, 0x5e, 0xab, 0x95, 0xd2, 0x5a, 0xb8, 0x1a, 0xcd, 0xf0, 0x65, 0x1c, 0x9c, 0x6a, 0x6c, 0x81, 0x5f, 0x09, 0x31, 0xf5, 0x12, 0x31, 0x2a, 0x89, 0x6a, 0xfc, 0x85, 0xf8, 0x08, 0xd8, 0x3c, 0xed, 0x09, 0x9b, 0xfd, 0xb9, 0x68, 0x96, 0x99, 0x9e, 0x5f, 0xbd, 0x13, 0x9d, 0xa0, 0xa0, 0x79, 0x69, 0xf1, 0x90, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2224 = { .name = "xdh_wei448_2224", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2224_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2224_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2224_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 152 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2225 for XDH, tcId is 153 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2225_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2225_privkey[] = { 0x44, 0x28, 0x85, 0x1a, 0xf5, 0x97, 0x31, 0xaa, 0xdd, 0x9c, 0xaf, 0x1b, 0x28, 0xc3, 0x4b, 0x55, 0x76, 0xfa, 0xe1, 0x55, 0x76, 0x2c, 0xdb, 0x15, 0x63, 0x05, 0xa8, 0xfc, 0xd5, 0xc5, 0xb6, 0x4b, 0x08, 0x24, 0x9d, 0x4c, 0x40, 0x0a, 0xd1, 0x00, 0xd6, 0x4a, 0x9f, 0x4c, 0xf9, 0x64, 0x57, 0x17, 0x30, 0x63, 0x55, 0x77, 0x20, 0x95, 0x36, 0x81, }; static const unsigned char xdh_wei448_2225_sharedsecret[] = { 0xbe, 0x34, 0x52, 0x6d, 0xe6, 0xc5, 0xbf, 0x2c, 0xf3, 0x54, 0x22, 0xc9, 0x1b, 0xe6, 0xb9, 0xe6, 0xb4, 0x16, 0x51, 0x08, 0x1c, 0x56, 0x40, 0xb5, 0xf1, 0x82, 0x44, 0x69, 0xb8, 0x2d, 0x0f, 0x29, 0x6a, 0xfa, 0x5d, 0xec, 0x09, 0x76, 0x8c, 0xcf, 0x0d, 0x6a, 0x37, 0xc3, 0xe7, 0x02, 0x52, 0x26, 0xcc, 0x4a, 0x57, 0x21, 0x1b, 0xed, 0x4e, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2225 = { .name = "xdh_wei448_2225", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2225_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2225_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2225_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 153 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2226 for XDH, tcId is 154 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2226_peerpubkey[] = { 0x49, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_2226_privkey[] = { 0x54, 0xec, 0x25, 0x46, 0x9d, 0x62, 0xa1, 0xe4, 0xdd, 0x19, 0x52, 0x16, 0x21, 0x29, 0xf8, 0x67, 0xf9, 0x82, 0x2b, 0x16, 0x1f, 0x40, 0x13, 0xf5, 0x8a, 0xba, 0x62, 0x3f, 0x88, 0x46, 0x4b, 0xf8, 0x92, 0xbd, 0xa2, 0x9a, 0x1f, 0xf9, 0xe5, 0xf6, 0x7b, 0x10, 0xc4, 0x4c, 0xda, 0x0d, 0xab, 0xf0, 0xdc, 0xcb, 0x28, 0x4c, 0x2a, 0x77, 0xf8, 0xad, }; static const unsigned char xdh_wei448_2226_sharedsecret[] = { 0xd7, 0xcb, 0x9f, 0xdb, 0xf3, 0x20, 0x04, 0x45, 0x39, 0xd4, 0x6c, 0x7d, 0xbc, 0xfe, 0xdd, 0x72, 0x37, 0x28, 0xe3, 0xe1, 0xab, 0x38, 0x5d, 0x44, 0x2b, 0x52, 0xaa, 0x7d, 0xfe, 0x4c, 0x13, 0x69, 0x78, 0x27, 0xa2, 0xb8, 0xba, 0x88, 0x06, 0xa9, 0xb1, 0xaf, 0x86, 0xf0, 0x53, 0xe9, 0x0e, 0x46, 0x8e, 0x74, 0x62, 0xf6, 0xc6, 0x69, 0x9e, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_2226 = { .name = "xdh_wei448_2226", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2226_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2226_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2226_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 154 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2227 for XDH, tcId is 155 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2227_peerpubkey[] = { 0x60, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_2227_privkey[] = { 0xc4, 0x8c, 0x97, 0xb1, 0x35, 0xcb, 0x79, 0xa7, 0x30, 0xc7, 0x4d, 0x0e, 0x3a, 0xff, 0xc6, 0x3b, 0x88, 0x47, 0x08, 0x4c, 0x59, 0x18, 0x6d, 0x4a, 0x03, 0x69, 0x02, 0xbe, 0x66, 0xc2, 0x27, 0xe5, 0xb3, 0xec, 0x86, 0xdc, 0x16, 0x85, 0x0b, 0x99, 0xec, 0x33, 0x4e, 0xcf, 0x10, 0x1a, 0x9d, 0xe3, 0x48, 0x55, 0x7f, 0x8d, 0x43, 0xd0, 0xf2, 0x8c, }; static const unsigned char xdh_wei448_2227_sharedsecret[] = { 0x85, 0x55, 0x2f, 0xb2, 0x9c, 0xa8, 0x96, 0xe8, 0xfc, 0xb5, 0x42, 0x18, 0x3c, 0xc5, 0x34, 0x3b, 0xf8, 0x91, 0x84, 0xd9, 0xc2, 0x1d, 0x55, 0xe7, 0xa3, 0xf9, 0xe4, 0x52, 0x03, 0xb2, 0x66, 0xf5, 0xcc, 0xef, 0xc6, 0x1c, 0x4f, 0x82, 0x17, 0x8a, 0xa7, 0x39, 0x88, 0xc1, 0x94, 0x8f, 0x11, 0x2a, 0x3c, 0xfb, 0x0a, 0x21, 0xad, 0xe9, 0x4b, 0xde, }; static const wycheproof_xdh_test xdh_wei448_2227 = { .name = "xdh_wei448_2227", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2227_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2227_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2227_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 155 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2228 for XDH, tcId is 156 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2228_peerpubkey[] = { 0xc9, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_2228_privkey[] = { 0x50, 0x8c, 0x89, 0x13, 0x70, 0xa1, 0x1f, 0x70, 0xce, 0x41, 0xb0, 0x41, 0x3b, 0x2d, 0xfc, 0x58, 0x8b, 0x1a, 0x65, 0x2a, 0x22, 0xc0, 0x99, 0x6e, 0xc3, 0x19, 0xbc, 0x11, 0x16, 0x94, 0xba, 0xf5, 0xd3, 0x40, 0xf8, 0x9e, 0x68, 0x5f, 0x63, 0x5f, 0x4b, 0xdb, 0xd3, 0xb2, 0x93, 0x7e, 0x0d, 0x1a, 0x5a, 0x59, 0x0e, 0x4e, 0xcb, 0x02, 0x7d, 0xab, }; static const unsigned char xdh_wei448_2228_sharedsecret[] = { 0x8a, 0xf2, 0x24, 0x24, 0x98, 0x1f, 0x8f, 0x2a, 0x1b, 0x9c, 0xc2, 0x8d, 0x74, 0x83, 0x30, 0xa7, 0xb6, 0xa7, 0x67, 0x51, 0x66, 0x21, 0x25, 0x23, 0x38, 0x6f, 0x35, 0x9a, 0x50, 0x3b, 0xbd, 0xf3, 0x88, 0x46, 0x57, 0x3a, 0xdd, 0xfe, 0xfb, 0x84, 0x14, 0x89, 0xce, 0x02, 0xb8, 0xb1, 0x69, 0x84, 0x42, 0xd2, 0xfd, 0xc3, 0x87, 0x40, 0xe3, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_2228 = { .name = "xdh_wei448_2228", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2228_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2228_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2228_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 156 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2229 for XDH, tcId is 157 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2229_peerpubkey[] = { 0x36, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_2229_privkey[] = { 0xec, 0x71, 0x40, 0x02, 0x51, 0x2a, 0xa1, 0x6a, 0x46, 0xd0, 0x0d, 0xb0, 0x6d, 0x41, 0xce, 0xd2, 0x30, 0xac, 0xe2, 0xaf, 0xf1, 0x39, 0x23, 0x09, 0x2b, 0xaf, 0x0f, 0x7e, 0xef, 0x5b, 0xff, 0x83, 0x43, 0xc9, 0xa3, 0x22, 0x59, 0x56, 0x4d, 0xd4, 0x51, 0xb8, 0xa0, 0xcb, 0x5c, 0x98, 0x7a, 0x8e, 0x6f, 0xa8, 0xdb, 0x8e, 0x4c, 0x26, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_2229_sharedsecret[] = { 0x99, 0xdd, 0xf3, 0x46, 0xdc, 0x91, 0x8d, 0x77, 0x2e, 0xc1, 0x1e, 0x89, 0x49, 0x9a, 0x82, 0xf3, 0xc5, 0x3e, 0x0c, 0xa2, 0xfa, 0xd0, 0x58, 0x55, 0x65, 0x3f, 0xc0, 0x7e, 0x5a, 0x15, 0x2b, 0xe3, 0xcf, 0x5e, 0xd9, 0x98, 0x11, 0x83, 0x57, 0x5f, 0x61, 0x2e, 0x59, 0x78, 0x9e, 0x0e, 0x79, 0x19, 0x77, 0x78, 0x58, 0x3e, 0x8b, 0x35, 0x66, 0x9f, }; static const wycheproof_xdh_test xdh_wei448_2229 = { .name = "xdh_wei448_2229", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2229_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2229_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2229_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 157 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2230 for XDH, tcId is 158 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2230_peerpubkey[] = { 0x9f, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_2230_privkey[] = { 0xe4, 0xd5, 0x1e, 0x5d, 0x74, 0x11, 0x9c, 0xaf, 0x3e, 0xa7, 0xe9, 0x89, 0x91, 0xb3, 0x3f, 0xc0, 0x5b, 0xd7, 0xfe, 0xdb, 0xf5, 0x19, 0x05, 0xee, 0x81, 0xa5, 0x86, 0xcf, 0x76, 0xd4, 0xa5, 0x48, 0x3a, 0x04, 0xab, 0x35, 0xe8, 0x25, 0x9b, 0x84, 0x94, 0xb9, 0x94, 0xa0, 0xc3, 0xad, 0xf8, 0xc9, 0x4c, 0x6a, 0x0e, 0xc9, 0x0e, 0x99, 0x20, 0x98, }; static const unsigned char xdh_wei448_2230_sharedsecret[] = { 0x3c, 0xae, 0x2e, 0xb2, 0x60, 0x18, 0x43, 0x67, 0x6f, 0xb4, 0xe4, 0x9e, 0xa4, 0xdf, 0x44, 0xe8, 0xd3, 0x1b, 0x14, 0xee, 0x36, 0x52, 0xf0, 0x43, 0x0c, 0x11, 0x4b, 0x92, 0xb0, 0xaf, 0xdd, 0xb3, 0xa5, 0x62, 0xf0, 0x53, 0xef, 0x37, 0xb4, 0x16, 0x48, 0x00, 0xfa, 0xc1, 0x53, 0xfc, 0x04, 0x15, 0xff, 0xb4, 0x80, 0xfa, 0xf5, 0x6e, 0x26, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2230 = { .name = "xdh_wei448_2230", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2230_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2230_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2230_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 158 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2231 for XDH, tcId is 159 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2231_peerpubkey[] = { 0xb6, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_2231_privkey[] = { 0x30, 0x7c, 0xf5, 0x96, 0x9e, 0x6f, 0xef, 0x65, 0x77, 0x65, 0xe0, 0xcf, 0x2f, 0xa9, 0xaf, 0xa4, 0x26, 0x96, 0xdb, 0x29, 0xd2, 0xc3, 0x69, 0x1c, 0x87, 0x4d, 0xb3, 0x68, 0x77, 0x20, 0x11, 0xe5, 0x0b, 0x4f, 0xb2, 0x2b, 0xbc, 0xd1, 0xbe, 0xb2, 0x35, 0x1a, 0xfb, 0x4e, 0x93, 0xe4, 0x3d, 0x28, 0xbd, 0x6e, 0xb7, 0xb1, 0xf4, 0x6d, 0x9b, 0xb2, }; static const unsigned char xdh_wei448_2231_sharedsecret[] = { 0x2e, 0xe9, 0x7f, 0xd2, 0xb8, 0x73, 0xeb, 0x49, 0x06, 0xae, 0x46, 0x8c, 0xcb, 0x72, 0x27, 0xc7, 0xb5, 0xdd, 0x0b, 0x93, 0x9d, 0x0d, 0x1d, 0x11, 0x2d, 0xfa, 0xe3, 0xdd, 0xe8, 0x2a, 0x2c, 0x8f, 0x04, 0xb3, 0xd1, 0x85, 0x5b, 0x74, 0x1e, 0x3a, 0x50, 0x07, 0x4a, 0x02, 0x06, 0x74, 0x3d, 0x24, 0xd0, 0xfe, 0x5b, 0x2e, 0x3c, 0x6c, 0xc1, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2231 = { .name = "xdh_wei448_2231", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2231_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2231_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2231_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 159 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2232 for XDH, tcId is 160 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2232_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2232_privkey[] = { 0x20, 0x73, 0x66, 0xc4, 0x9f, 0xd9, 0x57, 0x4e, 0x45, 0x40, 0x1a, 0x81, 0x77, 0xe1, 0x9e, 0xe9, 0xf0, 0x7a, 0x59, 0xde, 0x79, 0x95, 0xb1, 0x68, 0x4d, 0x42, 0x92, 0x4f, 0x51, 0x36, 0x2f, 0x57, 0x82, 0xc9, 0xcd, 0xf8, 0xdd, 0xe3, 0x7f, 0x61, 0xc0, 0xd4, 0x05, 0x9c, 0x98, 0x4f, 0xca, 0x4a, 0x83, 0x8c, 0x63, 0xd4, 0xa8, 0xcc, 0x76, 0xb0, }; static const unsigned char xdh_wei448_2232_sharedsecret[] = { 0xf3, 0x50, 0x26, 0x6e, 0xf6, 0xf4, 0x60, 0xb0, 0x65, 0xab, 0xdb, 0xd1, 0x19, 0xb6, 0x6d, 0xa5, 0xbe, 0x2d, 0x44, 0xe9, 0x0a, 0xc6, 0xdc, 0xf4, 0x5f, 0xeb, 0x30, 0xed, 0xdf, 0xfb, 0xc3, 0x93, 0xde, 0x01, 0xc5, 0xb1, 0x45, 0x5e, 0x67, 0x19, 0x23, 0x59, 0xeb, 0x0f, 0xc4, 0xdc, 0xff, 0xa1, 0xeb, 0x26, 0xf2, 0x44, 0x2f, 0x49, 0xd5, 0x93, }; static const wycheproof_xdh_test xdh_wei448_2232 = { .name = "xdh_wei448_2232", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2232_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2232_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2232_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 160 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2233 for XDH, tcId is 161 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2233_peerpubkey[] = { 0x4a, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_2233_privkey[] = { 0x20, 0xaf, 0xa0, 0x64, 0xf5, 0x05, 0x5c, 0x40, 0xad, 0x96, 0xd7, 0x20, 0x14, 0xc3, 0xee, 0x38, 0x8d, 0x4c, 0xc6, 0x01, 0xcb, 0xf4, 0x80, 0xed, 0xa8, 0xdc, 0x97, 0x63, 0xe9, 0xfe, 0xc4, 0x4f, 0x39, 0xaa, 0xd1, 0x12, 0x90, 0x24, 0x10, 0xdd, 0xca, 0xd5, 0xe7, 0x0b, 0x51, 0xd9, 0xd0, 0x03, 0x39, 0x05, 0x40, 0x7d, 0x21, 0x5a, 0xa4, 0x89, }; static const unsigned char xdh_wei448_2233_sharedsecret[] = { 0x9e, 0x08, 0x65, 0x58, 0xe9, 0xba, 0x60, 0xc4, 0x53, 0x28, 0xd4, 0x0d, 0x31, 0x75, 0x8c, 0x52, 0x79, 0x5e, 0xd5, 0x62, 0xcc, 0xc3, 0x21, 0x37, 0x8a, 0x11, 0xe0, 0x28, 0xb9, 0xad, 0x1c, 0xb7, 0xe5, 0xad, 0xf9, 0xbf, 0xd8, 0xf3, 0x55, 0xae, 0x5d, 0xf4, 0x3b, 0x86, 0xe3, 0x26, 0x62, 0x8b, 0x8a, 0x2d, 0x7a, 0x39, 0xb7, 0xe6, 0x6c, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_2233 = { .name = "xdh_wei448_2233", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2233_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2233_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2233_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 161 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2234 for XDH, tcId is 162 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2234_peerpubkey[] = { 0x61, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_2234_privkey[] = { 0x64, 0xd5, 0x41, 0xc8, 0x9f, 0x4f, 0xf3, 0xa4, 0xbd, 0x30, 0x60, 0x5c, 0xb5, 0x11, 0x1d, 0x4f, 0x1f, 0x1e, 0x0f, 0x44, 0x6d, 0x5f, 0xbd, 0xe9, 0x6b, 0xa7, 0x02, 0x16, 0xe2, 0x94, 0xd3, 0xae, 0x4c, 0x7b, 0x26, 0x6a, 0x48, 0xef, 0x7b, 0x57, 0xdf, 0x36, 0xba, 0x4d, 0x92, 0xb1, 0x3e, 0x2c, 0xd2, 0x47, 0x3e, 0xe5, 0x32, 0xac, 0x1d, 0xa4, }; static const unsigned char xdh_wei448_2234_sharedsecret[] = { 0xfa, 0xcf, 0x34, 0x76, 0xfa, 0x25, 0xef, 0x4c, 0xf5, 0x1f, 0xe1, 0x82, 0xb9, 0xd8, 0xac, 0xb0, 0x76, 0x96, 0xea, 0x11, 0x68, 0xb2, 0xbf, 0x03, 0xf0, 0x75, 0xbb, 0x8c, 0xb8, 0x17, 0xd7, 0x41, 0x72, 0xd0, 0x3d, 0x65, 0xe8, 0xf0, 0xe4, 0xa8, 0xe4, 0xd2, 0x31, 0x9b, 0x95, 0x58, 0x9b, 0xeb, 0xdc, 0x39, 0xa5, 0xb0, 0x8e, 0x66, 0xba, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_2234 = { .name = "xdh_wei448_2234", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2234_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2234_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2234_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 162 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2235 for XDH, tcId is 163 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2235_peerpubkey[] = { 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_2235_privkey[] = { 0x2c, 0x02, 0x97, 0x47, 0xe1, 0x4c, 0x0e, 0xe0, 0x46, 0x8e, 0xa3, 0x9b, 0xe5, 0x7e, 0xd4, 0xe5, 0xc1, 0x49, 0x35, 0xd2, 0x91, 0xba, 0xcb, 0x81, 0x0f, 0xd0, 0xea, 0x3f, 0x94, 0x2b, 0x72, 0x3b, 0x16, 0x80, 0x6e, 0xc2, 0x5d, 0x2d, 0xa5, 0x82, 0xbd, 0xb8, 0x8b, 0xaa, 0x64, 0x93, 0xb7, 0xe5, 0x77, 0x95, 0xcf, 0xbd, 0xe1, 0x33, 0x7e, 0xb2, }; static const unsigned char xdh_wei448_2235_sharedsecret[] = { 0x95, 0xbd, 0xe3, 0x9b, 0x09, 0x67, 0x02, 0xc0, 0x50, 0x20, 0xfd, 0x7b, 0x02, 0xac, 0x3e, 0x0f, 0xd6, 0xc1, 0xa1, 0x82, 0x98, 0x32, 0x37, 0xc1, 0x5d, 0xc1, 0x65, 0x4b, 0x1a, 0x4f, 0x2f, 0x9b, 0x48, 0x84, 0xdc, 0x7e, 0x78, 0xcc, 0x42, 0x2c, 0x6f, 0x75, 0x9a, 0x43, 0x8f, 0x6d, 0x5c, 0x7e, 0xdd, 0x39, 0x59, 0x18, 0x82, 0x5f, 0xfc, 0x62, }; static const wycheproof_xdh_test xdh_wei448_2235 = { .name = "xdh_wei448_2235", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2235_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2235_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2235_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 163 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2236 for XDH, tcId is 164 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2236_peerpubkey[] = { 0x78, 0xd7, 0xb6, 0x1d, 0x2c, 0x3e, 0xed, 0xb9, 0x51, 0x53, 0x87, 0xa4, 0xb7, 0x73, 0x33, 0xf2, 0x4e, 0x91, 0x47, 0x93, 0x40, 0x18, 0xa1, 0x50, 0x3f, 0x97, 0x2b, 0x8d, 0xe6, 0xaf, 0x64, 0x07, 0xd2, 0x2f, 0x8b, 0x46, 0x39, 0xd5, 0xfb, 0x86, 0x33, 0x6f, 0x71, 0x84, 0x9f, 0x59, 0xa1, 0xa4, 0xc9, 0xee, 0x38, 0xca, 0x73, 0xe0, 0xae, 0x1a, }; static const unsigned char xdh_wei448_2236_privkey[] = { 0x2c, 0x61, 0x29, 0x39, 0x30, 0x07, 0x54, 0x37, 0x0c, 0xfb, 0xc5, 0x59, 0x40, 0x7f, 0x1d, 0x99, 0x80, 0x56, 0x18, 0xd0, 0xc6, 0x93, 0xb5, 0x3f, 0xfc, 0x6c, 0x72, 0xd3, 0x96, 0xd6, 0x04, 0xcd, 0xba, 0xf4, 0x60, 0x0d, 0xd4, 0xc8, 0x86, 0x9d, 0x24, 0xd5, 0xdb, 0xa9, 0x16, 0x2a, 0x9e, 0x8c, 0xbd, 0xad, 0x85, 0xf4, 0x19, 0x87, 0x33, 0xaa, }; static const unsigned char xdh_wei448_2236_sharedsecret[] = { 0x78, 0xcf, 0x5f, 0x5d, 0x2c, 0x09, 0x8b, 0x57, 0xb2, 0x06, 0xf8, 0x9c, 0x2b, 0x1e, 0x84, 0xbc, 0x61, 0x63, 0xda, 0x1f, 0x78, 0x20, 0x6f, 0xbe, 0x50, 0x32, 0xce, 0x64, 0xca, 0xbf, 0x16, 0x82, 0xf9, 0xfd, 0x7b, 0xdc, 0xd0, 0x99, 0xdb, 0xb0, 0xcd, 0x04, 0xed, 0x1d, 0x8a, 0xe3, 0x32, 0xfd, 0x37, 0x88, 0xed, 0x31, 0xfa, 0xb9, 0xec, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2236 = { .name = "xdh_wei448_2236", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2236_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2236_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2236_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 164 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2237 for XDH, tcId is 165 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2237_peerpubkey[] = { 0x3f, 0x29, 0x5d, 0x0d, 0x72, 0xd1, 0x5c, 0xcf, 0xa2, 0x8e, 0x3c, 0xc7, 0xca, 0x96, 0xca, 0xcf, 0xa6, 0x48, 0x49, 0x8f, 0xc1, 0x28, 0x99, 0xed, 0xbb, 0x4d, 0xb1, 0x7f, 0x21, 0x03, 0x2e, 0x24, 0x45, 0x62, 0x5b, 0x15, 0x0c, 0xc6, 0x67, 0x5f, 0x98, 0x25, 0xfa, 0xc1, 0xa9, 0x66, 0x36, 0xfe, 0x1a, 0x92, 0xe8, 0xb2, 0xc2, 0xd4, 0xcf, 0x21, }; static const unsigned char xdh_wei448_2237_privkey[] = { 0x68, 0xfa, 0x79, 0x40, 0x55, 0xc1, 0x7d, 0x38, 0xb1, 0x1a, 0x90, 0x66, 0xa7, 0x5f, 0xdb, 0x3c, 0x2e, 0x3d, 0x01, 0x62, 0x93, 0xea, 0x27, 0x47, 0xe4, 0xe3, 0x56, 0x52, 0xbd, 0xa6, 0x06, 0xcc, 0xac, 0xc2, 0x86, 0x3a, 0xf2, 0x97, 0xcd, 0xc5, 0xc5, 0x87, 0x0c, 0x28, 0x15, 0x64, 0x84, 0xb6, 0xb3, 0xab, 0x2a, 0x72, 0xf8, 0xd9, 0x79, 0x89, }; static const unsigned char xdh_wei448_2237_sharedsecret[] = { 0x89, 0xaf, 0x44, 0xdd, 0xbf, 0x48, 0xea, 0x07, 0xf0, 0x14, 0xff, 0xae, 0x51, 0x7b, 0xcc, 0x3b, 0xab, 0xcc, 0xdb, 0x18, 0x82, 0xd3, 0x43, 0x92, 0x03, 0x4b, 0x3d, 0x57, 0x3d, 0x52, 0x7c, 0x94, 0xdc, 0x57, 0xd6, 0xe0, 0x2d, 0x82, 0x77, 0x43, 0x36, 0x78, 0x91, 0xdc, 0x1a, 0xc7, 0x3a, 0x9a, 0x9e, 0xf5, 0x9d, 0xd0, 0xd0, 0x05, 0xbd, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2237 = { .name = "xdh_wei448_2237", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2237_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2237_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2237_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 165 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2238 for XDH, tcId is 166 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2238_peerpubkey[] = { 0xc1, 0x16, 0xcb, 0x36, 0x8f, 0xe2, 0x8d, 0x08, 0x58, 0x32, 0x15, 0x11, 0xaf, 0x9f, 0x34, 0xe9, 0x0a, 0x00, 0x91, 0xeb, 0x0a, 0xf5, 0x67, 0xd1, 0xb1, 0xc8, 0xaa, 0x28, 0x04, 0x25, 0xc1, 0xd7, 0x30, 0xc2, 0x13, 0xcd, 0x87, 0x32, 0x42, 0xd1, 0x22, 0xf0, 0x2a, 0xf5, 0x04, 0xbb, 0xac, 0x21, 0x82, 0xd2, 0xf0, 0x13, 0xb5, 0xd6, 0xc3, 0x5e, }; static const unsigned char xdh_wei448_2238_privkey[] = { 0x50, 0x43, 0x19, 0x86, 0x65, 0x40, 0x69, 0x49, 0x18, 0xc4, 0xcc, 0x84, 0x26, 0x90, 0xe9, 0xf9, 0xf7, 0x60, 0xb8, 0x99, 0x94, 0x38, 0x29, 0xe8, 0xff, 0x35, 0xdf, 0x38, 0x88, 0x88, 0x9f, 0xa5, 0xd4, 0x2f, 0x02, 0x95, 0xe3, 0x6b, 0x55, 0xed, 0xcf, 0xbe, 0x44, 0x82, 0x17, 0xef, 0x06, 0xcc, 0x53, 0xd9, 0xce, 0x86, 0x90, 0x19, 0x14, 0x95, }; static const unsigned char xdh_wei448_2238_sharedsecret[] = { 0xe0, 0x2e, 0xc6, 0x58, 0x03, 0x16, 0x76, 0x8a, 0x41, 0xe6, 0x0e, 0xe2, 0x7b, 0x81, 0xe4, 0x16, 0x4e, 0x11, 0xa2, 0x82, 0x16, 0x06, 0x1e, 0x7e, 0x58, 0x7a, 0x0f, 0x36, 0x85, 0xbc, 0xdf, 0xc2, 0x14, 0xa4, 0x7a, 0x00, 0x50, 0x0e, 0xcc, 0x77, 0xbc, 0xad, 0x70, 0xcc, 0x7d, 0xef, 0x86, 0xdc, 0xb3, 0xc0, 0x3d, 0x6f, 0xab, 0xf3, 0x69, 0xba, }; static const wycheproof_xdh_test xdh_wei448_2238 = { .name = "xdh_wei448_2238", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2238_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2238_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2238_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 166 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2239 for XDH, tcId is 167 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2239_peerpubkey[] = { 0xa6, 0xfc, 0xf8, 0x1e, 0xe7, 0xb2, 0x33, 0x9e, 0xdb, 0x41, 0x09, 0xb1, 0x08, 0x68, 0x85, 0xdd, 0x7f, 0x3f, 0x6e, 0x3c, 0x34, 0x35, 0xae, 0x1d, 0xb0, 0x8d, 0x5e, 0x1d, 0xdf, 0x6d, 0xc2, 0xc7, 0x81, 0x04, 0xc4, 0x8b, 0x39, 0x41, 0xc9, 0x97, 0xe9, 0x96, 0xa8, 0x86, 0x41, 0x2d, 0xef, 0x9e, 0x4a, 0xd4, 0xb9, 0x00, 0x10, 0xb3, 0x7e, 0x73, }; static const unsigned char xdh_wei448_2239_privkey[] = { 0x48, 0xad, 0x61, 0xa0, 0x59, 0xe9, 0xcd, 0xb4, 0xac, 0x95, 0x84, 0x14, 0xad, 0x14, 0x89, 0x9c, 0x30, 0xe0, 0x5a, 0x00, 0x38, 0xe7, 0xec, 0xf3, 0xda, 0x38, 0xf7, 0x05, 0xe6, 0xf5, 0xd7, 0x73, 0x94, 0x3e, 0xc4, 0xda, 0x47, 0x5d, 0x70, 0x53, 0x23, 0xf7, 0xcc, 0xa4, 0x04, 0x2f, 0x73, 0x1f, 0x0b, 0xc4, 0x03, 0x25, 0x9f, 0x5c, 0x73, 0xa2, }; static const unsigned char xdh_wei448_2239_sharedsecret[] = { 0x9b, 0x47, 0xde, 0xc6, 0x15, 0x7f, 0x57, 0xfc, 0x66, 0x7e, 0x2c, 0x6c, 0xe4, 0x61, 0x7a, 0x28, 0x7f, 0x79, 0xcc, 0x60, 0x41, 0xb2, 0xcb, 0x73, 0xa1, 0x41, 0xf4, 0xd0, 0x4e, 0xe9, 0xc6, 0x3e, 0xd9, 0x41, 0x39, 0x6c, 0x3c, 0xbe, 0xe1, 0x7b, 0x51, 0x99, 0x5b, 0xbf, 0x65, 0xd6, 0xc7, 0x2f, 0x2b, 0xee, 0x8a, 0xbb, 0xc5, 0xec, 0x05, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2239 = { .name = "xdh_wei448_2239", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2239_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2239_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2239_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 167 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2240 for XDH, tcId is 168 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2240_peerpubkey[] = { 0xf2, 0xce, 0xb7, 0x02, 0x21, 0xeb, 0x2a, 0xaa, 0x4f, 0x9e, 0x75, 0xae, 0x63, 0xd7, 0x34, 0xa5, 0x68, 0xdf, 0x42, 0x65, 0xc3, 0x03, 0xfe, 0x1b, 0x71, 0x51, 0xc3, 0xdf, 0x8f, 0x4d, 0x3a, 0xef, 0x83, 0xed, 0x3d, 0x6f, 0xba, 0xe4, 0xb3, 0x89, 0x91, 0x1b, 0xd5, 0xdf, 0xe9, 0xb2, 0x9b, 0x6e, 0x54, 0x5d, 0xa9, 0x14, 0x50, 0x91, 0xdc, 0x75, }; static const unsigned char xdh_wei448_2240_privkey[] = { 0x68, 0x03, 0x17, 0x8d, 0xff, 0x23, 0xf5, 0x67, 0xe2, 0x48, 0xe3, 0xd1, 0x2c, 0xce, 0xa4, 0x6c, 0xe5, 0xe3, 0xcd, 0x5d, 0xe0, 0xb5, 0x0b, 0x0e, 0x4a, 0xac, 0xdf, 0x06, 0xe0, 0xea, 0x61, 0xf0, 0xec, 0x83, 0x6e, 0x91, 0x26, 0xd2, 0xed, 0x47, 0xb7, 0xb1, 0x71, 0x78, 0x40, 0x19, 0x40, 0x1b, 0x7a, 0x9f, 0xf2, 0x2d, 0xba, 0x64, 0x78, 0x98, }; static const unsigned char xdh_wei448_2240_sharedsecret[] = { 0xf3, 0x15, 0x67, 0xaa, 0x76, 0xa1, 0xf6, 0x5b, 0xea, 0x08, 0x56, 0x99, 0xb6, 0x86, 0x88, 0x4c, 0xe4, 0x77, 0x76, 0xca, 0x76, 0x65, 0xd0, 0x68, 0xc3, 0x4d, 0x80, 0x07, 0x44, 0x31, 0x3f, 0xb5, 0x6b, 0x8b, 0xac, 0x0f, 0x53, 0x00, 0x81, 0xb2, 0xef, 0x21, 0xa1, 0xc8, 0x9b, 0x76, 0x60, 0x68, 0x94, 0xf1, 0x22, 0xe1, 0x5a, 0x25, 0x82, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_2240 = { .name = "xdh_wei448_2240", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2240_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2240_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2240_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 168 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2241 for XDH, tcId is 169 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2241_peerpubkey[] = { 0x64, 0x4f, 0xf2, 0xb8, 0x7b, 0x82, 0xd7, 0xc5, 0x98, 0xcc, 0x9f, 0xfe, 0x97, 0xb9, 0x92, 0xff, 0x7c, 0xee, 0x5c, 0x07, 0x51, 0xaa, 0x78, 0x55, 0xa5, 0x84, 0x2a, 0x27, 0x0c, 0x5a, 0x7a, 0x30, 0xf0, 0xde, 0xcd, 0x0e, 0xeb, 0x52, 0x32, 0xc0, 0xd0, 0xca, 0x32, 0xb9, 0xfd, 0x72, 0x64, 0x90, 0xf9, 0x2f, 0x10, 0x6f, 0x3f, 0xb7, 0xcd, 0x7a, }; static const unsigned char xdh_wei448_2241_privkey[] = { 0x84, 0x7c, 0x63, 0x55, 0x88, 0x1d, 0x77, 0xf4, 0x01, 0x4a, 0xda, 0x76, 0x03, 0x5f, 0x50, 0xf1, 0x99, 0xef, 0x85, 0x6e, 0x1e, 0x50, 0x90, 0x1f, 0xdd, 0x89, 0x1c, 0x50, 0xbe, 0xf7, 0xed, 0x50, 0x33, 0xb2, 0x21, 0xec, 0x06, 0x92, 0xfa, 0x93, 0xa7, 0xbc, 0x2f, 0xe1, 0x14, 0xc6, 0x2a, 0x4e, 0x15, 0xc0, 0xaf, 0x94, 0x1f, 0xcf, 0xb2, 0xa0, }; static const unsigned char xdh_wei448_2241_sharedsecret[] = { 0xa9, 0xbe, 0x02, 0xb3, 0x12, 0x76, 0xaa, 0x9b, 0x2e, 0xef, 0x26, 0xb9, 0xf2, 0xfa, 0xed, 0xe9, 0xb5, 0xc2, 0x4f, 0xa2, 0xc8, 0x2e, 0xef, 0xec, 0xb2, 0x44, 0xde, 0x0c, 0x81, 0x3d, 0x53, 0x58, 0xdd, 0x32, 0x20, 0x8e, 0x80, 0xba, 0x67, 0x56, 0x37, 0xf3, 0x51, 0xc2, 0x40, 0x9f, 0xf0, 0x07, 0x43, 0x79, 0xbd, 0x69, 0x84, 0xd1, 0xe1, 0x07, }; static const wycheproof_xdh_test xdh_wei448_2241 = { .name = "xdh_wei448_2241", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2241_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2241_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2241_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 169 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2242 for XDH, tcId is 170 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2242_peerpubkey[] = { 0x40, 0x13, 0xfa, 0x9a, 0x82, 0x76, 0x97, 0x06, 0x90, 0xf3, 0x5f, 0x8f, 0x1d, 0x9d, 0x9d, 0xc8, 0x40, 0x4a, 0x38, 0x3b, 0x00, 0x3e, 0xf8, 0x74, 0x22, 0xb3, 0xab, 0x14, 0x88, 0x08, 0xcd, 0xae, 0xc0, 0xea, 0xb4, 0x70, 0x8b, 0xda, 0x47, 0x1b, 0xdd, 0x92, 0x20, 0xdb, 0x2f, 0x05, 0x8b, 0x07, 0x94, 0xb0, 0x1d, 0x25, 0x32, 0xb1, 0x47, 0xa8, }; static const unsigned char xdh_wei448_2242_privkey[] = { 0x48, 0x76, 0x84, 0x64, 0x18, 0x15, 0xfc, 0x73, 0x92, 0x53, 0x2b, 0x3b, 0xcf, 0x99, 0xc9, 0xc3, 0x1d, 0x69, 0xdd, 0x35, 0x76, 0xe5, 0x28, 0xf1, 0x92, 0xe7, 0x5a, 0x55, 0xe4, 0x6d, 0xe3, 0x9f, 0xaa, 0x87, 0xef, 0xfb, 0x37, 0x6d, 0x80, 0x6e, 0x10, 0x39, 0xe2, 0xfe, 0xe5, 0x3d, 0x12, 0xd4, 0x77, 0xe3, 0x18, 0xb9, 0x68, 0xdd, 0x3d, 0x86, }; static const unsigned char xdh_wei448_2242_sharedsecret[] = { 0x66, 0x3f, 0x60, 0x9b, 0x2c, 0x06, 0x9a, 0x71, 0x3e, 0xcf, 0x99, 0x1d, 0x73, 0x63, 0x1b, 0x14, 0x59, 0xeb, 0x3d, 0x3b, 0x8f, 0xe3, 0x98, 0xd9, 0x11, 0xfd, 0x91, 0xaa, 0xe2, 0x6f, 0x98, 0x62, 0x59, 0x65, 0x9d, 0xdc, 0x9a, 0x2c, 0x4a, 0xc7, 0xce, 0x62, 0x64, 0x55, 0x05, 0x6b, 0xcb, 0xe3, 0xb4, 0x06, 0xf7, 0x5f, 0xee, 0x5f, 0xb1, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2242 = { .name = "xdh_wei448_2242", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2242_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2242_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2242_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 170 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2243 for XDH, tcId is 171 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2243_peerpubkey[] = { 0xe6, 0xc5, 0x5c, 0x8e, 0xd5, 0xc8, 0xa3, 0x79, 0x85, 0xec, 0x78, 0xcd, 0x92, 0x35, 0x9c, 0x45, 0xf3, 0x35, 0x23, 0x2a, 0x6e, 0xff, 0xed, 0xe4, 0xf8, 0x30, 0xfe, 0x36, 0x83, 0xed, 0x53, 0x19, 0x7d, 0x06, 0xf2, 0x39, 0x50, 0xfd, 0x89, 0x9d, 0x1e, 0x33, 0x3b, 0xe7, 0x32, 0x2e, 0x6f, 0xc3, 0xa8, 0x30, 0x99, 0xa1, 0x1a, 0xb7, 0x3b, 0xc2, }; static const unsigned char xdh_wei448_2243_privkey[] = { 0x50, 0x30, 0xe6, 0x31, 0xfd, 0xbc, 0x43, 0xd5, 0xd6, 0xdc, 0x87, 0x9d, 0xb9, 0x43, 0x5f, 0xeb, 0x09, 0x92, 0x38, 0x80, 0x4f, 0x2f, 0xe3, 0x3c, 0x6d, 0x81, 0x35, 0x12, 0x4f, 0xc2, 0xd5, 0x09, 0x50, 0x26, 0x7b, 0xa2, 0x17, 0x95, 0xe1, 0x83, 0xb3, 0xea, 0x83, 0x40, 0xdd, 0x27, 0xf9, 0xbc, 0x3b, 0x14, 0x26, 0x6a, 0xc0, 0x38, 0x57, 0xb5, }; static const unsigned char xdh_wei448_2243_sharedsecret[] = { 0x47, 0x47, 0x7f, 0x47, 0x34, 0x4f, 0xac, 0xd4, 0x57, 0xf5, 0x41, 0xb0, 0x02, 0xcd, 0xaf, 0x3e, 0x09, 0x5c, 0x01, 0x88, 0x15, 0xba, 0x3f, 0x72, 0x54, 0xc3, 0x4f, 0x08, 0x77, 0x02, 0x50, 0xf3, 0x60, 0x26, 0x6d, 0xcb, 0x40, 0x65, 0x76, 0xc9, 0x58, 0x07, 0xdb, 0x79, 0x71, 0x26, 0x58, 0x7e, 0x8a, 0x8a, 0x2a, 0xfd, 0x28, 0x42, 0x89, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2243 = { .name = "xdh_wei448_2243", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2243_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2243_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2243_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 171 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2244 for XDH, tcId is 172 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2244_peerpubkey[] = { 0xb2, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_2244_privkey[] = { 0x50, 0x89, 0x93, 0xff, 0x7d, 0xd3, 0x6a, 0x79, 0x51, 0x1d, 0x93, 0x20, 0x9e, 0x4e, 0xaf, 0x50, 0xe0, 0x8c, 0x46, 0x0a, 0xad, 0x5c, 0xdc, 0xfa, 0xab, 0x85, 0x4d, 0x5e, 0x85, 0x75, 0x39, 0x36, 0x53, 0xa7, 0x4c, 0x94, 0xe7, 0xd0, 0x94, 0xbb, 0x59, 0xa7, 0xb9, 0x85, 0x08, 0x74, 0x7d, 0x90, 0x07, 0x5e, 0x5b, 0xc4, 0xbc, 0x13, 0xe6, 0x91, }; static const unsigned char xdh_wei448_2244_sharedsecret[] = { 0xb6, 0x73, 0xdf, 0x07, 0x42, 0x0a, 0xc1, 0xb5, 0xfa, 0x11, 0x20, 0xa1, 0x7d, 0x89, 0x04, 0x6c, 0xdd, 0xca, 0xa0, 0xb2, 0x34, 0xa1, 0xf8, 0x64, 0xd1, 0xfc, 0x17, 0xa2, 0xd5, 0xe7, 0x71, 0xbb, 0x25, 0x0f, 0x0d, 0xc3, 0x87, 0xf3, 0x35, 0x7c, 0x38, 0x09, 0x8a, 0x42, 0x70, 0xee, 0xd6, 0x4e, 0x7b, 0x10, 0x65, 0x13, 0x6a, 0xb8, 0x58, 0x83, }; static const wycheproof_xdh_test xdh_wei448_2244 = { .name = "xdh_wei448_2244", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2244_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2244_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2244_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 172 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2245 for XDH, tcId is 173 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2245_peerpubkey[] = { 0x4c, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_2245_privkey[] = { 0x54, 0x0d, 0x8d, 0x0d, 0x08, 0x30, 0x02, 0x1e, 0x4e, 0xab, 0x07, 0x8a, 0xe2, 0x1b, 0x6c, 0x9e, 0x67, 0xfa, 0x75, 0xe4, 0xbe, 0x5e, 0x95, 0x29, 0x2b, 0xb0, 0x2d, 0x66, 0xe5, 0x79, 0xfd, 0xb5, 0x88, 0xfc, 0x26, 0x67, 0x41, 0x68, 0x6d, 0x58, 0x71, 0x9d, 0x7b, 0xc8, 0xdf, 0x61, 0x94, 0xaa, 0x6e, 0xa8, 0xf8, 0x1e, 0x5c, 0xaa, 0x67, 0xbc, }; static const unsigned char xdh_wei448_2245_sharedsecret[] = { 0x5a, 0xd0, 0x6c, 0x3b, 0x27, 0x76, 0xba, 0x9c, 0x8f, 0x9f, 0xce, 0xd3, 0xa9, 0xdc, 0xb2, 0x67, 0x11, 0x23, 0x54, 0x74, 0x44, 0x7d, 0x4a, 0x06, 0xab, 0xb4, 0x3a, 0x40, 0xc3, 0xea, 0x7f, 0x94, 0x9a, 0x63, 0xe5, 0x49, 0x16, 0x8a, 0x25, 0x1c, 0x4e, 0xd4, 0x88, 0x3b, 0xa0, 0xd3, 0x6c, 0x7a, 0xaf, 0xd0, 0x93, 0x8d, 0x4a, 0x92, 0xa9, 0x67, }; static const wycheproof_xdh_test xdh_wei448_2245 = { .name = "xdh_wei448_2245", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2245_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2245_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2245_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 173 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2246 for XDH, tcId is 174 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2246_peerpubkey[] = { 0xb3, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_2246_privkey[] = { 0x28, 0x6c, 0xb4, 0xa0, 0x6a, 0x64, 0xe8, 0x50, 0x85, 0x0b, 0x37, 0x1c, 0xeb, 0x5c, 0x54, 0xfe, 0x71, 0xb1, 0x7c, 0xd0, 0x77, 0x2e, 0x40, 0x78, 0xb0, 0x20, 0x30, 0x66, 0x23, 0x1b, 0xad, 0x70, 0x0c, 0x79, 0x8a, 0xb0, 0xd9, 0x23, 0x62, 0x44, 0x91, 0x0c, 0xd2, 0x3d, 0xb5, 0x8c, 0xb6, 0x52, 0xc8, 0xfa, 0x58, 0x00, 0x95, 0x39, 0x78, 0x9d, }; static const unsigned char xdh_wei448_2246_sharedsecret[] = { 0x3c, 0x1e, 0x26, 0x78, 0x59, 0x0f, 0x9c, 0x5b, 0xc1, 0x24, 0xd6, 0xbb, 0xdd, 0x45, 0xca, 0xc5, 0xde, 0xa3, 0xdc, 0xb2, 0xb4, 0x5a, 0x1f, 0x2a, 0x9e, 0xd2, 0xfd, 0x02, 0x39, 0xd4, 0x89, 0x48, 0x48, 0x97, 0x55, 0x71, 0xc5, 0x23, 0x12, 0x1d, 0xb7, 0xc6, 0x75, 0x69, 0x25, 0xdd, 0xb1, 0x1d, 0x47, 0x9c, 0x89, 0xbe, 0x7c, 0x6a, 0x24, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_2246 = { .name = "xdh_wei448_2246", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2246_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2246_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2246_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 174 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2247 for XDH, tcId is 175 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2247_peerpubkey[] = { 0x4d, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_2247_privkey[] = { 0xac, 0x04, 0x50, 0x17, 0xf8, 0x6a, 0xda, 0x85, 0xb3, 0x4f, 0x4f, 0x3e, 0x30, 0x7f, 0xd1, 0xb8, 0x30, 0x49, 0x4c, 0xe7, 0xed, 0xb9, 0x11, 0x56, 0xd2, 0x82, 0xbd, 0xff, 0x17, 0x2a, 0x5a, 0x0a, 0x9b, 0x07, 0x50, 0xf5, 0xbf, 0x35, 0x29, 0x5f, 0x1e, 0x2d, 0xe9, 0x08, 0xa0, 0xf1, 0xdb, 0x31, 0x99, 0x2d, 0xb6, 0xe6, 0xbd, 0xb9, 0xab, 0x93, }; static const unsigned char xdh_wei448_2247_sharedsecret[] = { 0x21, 0x9b, 0xd2, 0x7b, 0x3a, 0x7d, 0xe0, 0x97, 0x9e, 0xca, 0xe9, 0x0c, 0x42, 0xbf, 0x49, 0x3b, 0x76, 0x6e, 0xe1, 0x62, 0xa1, 0x04, 0x56, 0xa1, 0x8d, 0xdc, 0x1a, 0x90, 0x10, 0x65, 0x10, 0x70, 0x52, 0xcc, 0x60, 0xbc, 0xb3, 0xbf, 0x43, 0xa0, 0x31, 0x3d, 0x2a, 0xdb, 0xaa, 0x60, 0x06, 0x32, 0x3a, 0x98, 0x6b, 0x0b, 0xad, 0x79, 0xc7, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_2247 = { .name = "xdh_wei448_2247", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2247_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2247_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2247_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 175 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2248 for XDH, tcId is 176 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2248_peerpubkey[] = { 0x77, 0x8e, 0x69, 0x65, 0x59, 0x41, 0x2a, 0x31, 0x70, 0x6d, 0x3d, 0x66, 0x89, 0xfe, 0x56, 0xc6, 0x59, 0x80, 0x50, 0x6f, 0x61, 0xc3, 0xaf, 0x47, 0xfc, 0x95, 0x34, 0x09, 0xd7, 0xa3, 0xe2, 0x71, 0x40, 0xf1, 0xff, 0x0d, 0x3b, 0x78, 0xfd, 0xd9, 0x68, 0xe2, 0xc7, 0x8d, 0xdb, 0xc9, 0x73, 0x39, 0x23, 0x91, 0xd7, 0xf3, 0xf2, 0x79, 0x4c, 0x2b, }; static const unsigned char xdh_wei448_2248_privkey[] = { 0x58, 0x46, 0xfe, 0x5d, 0x68, 0x10, 0x30, 0x2d, 0x59, 0x26, 0x11, 0x1b, 0xd0, 0x14, 0x64, 0x02, 0xb2, 0xe4, 0x99, 0x00, 0x55, 0x05, 0x48, 0xc7, 0xfc, 0x64, 0xdf, 0x74, 0xf1, 0xa7, 0xed, 0x88, 0x5b, 0x34, 0x35, 0x87, 0xb6, 0x1e, 0x7c, 0x0f, 0x24, 0xbb, 0x0b, 0x7a, 0xcf, 0x3d, 0x50, 0xe8, 0xc4, 0xb6, 0x81, 0x12, 0x48, 0xba, 0x19, 0xa6, }; static const unsigned char xdh_wei448_2248_sharedsecret[] = { 0xce, 0xd0, 0x69, 0x51, 0x59, 0x28, 0x92, 0xa8, 0xfc, 0xb5, 0xae, 0x62, 0xac, 0xef, 0x4e, 0xfa, 0x70, 0xba, 0xa0, 0x04, 0x85, 0xc8, 0x23, 0xf9, 0x69, 0x75, 0x94, 0xfe, 0xee, 0x5a, 0xdf, 0x2e, 0xf9, 0xa7, 0x06, 0x71, 0xac, 0x34, 0x1a, 0x95, 0x8a, 0x06, 0x1e, 0x58, 0xf2, 0xff, 0x8a, 0x1c, 0xe7, 0x4b, 0x29, 0xf4, 0x2c, 0xf2, 0x43, 0x79, }; static const wycheproof_xdh_test xdh_wei448_2248 = { .name = "xdh_wei448_2248", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2248_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2248_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2248_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 176 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2249 for XDH, tcId is 177 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2249_peerpubkey[] = { 0xfa, 0xf7, 0xdd, 0x10, 0xbc, 0xc8, 0xd4, 0xd3, 0x78, 0xa6, 0x23, 0x00, 0x55, 0x50, 0x0b, 0x4f, 0x87, 0xbb, 0x99, 0x94, 0xac, 0xe5, 0x4e, 0x44, 0xaf, 0xcf, 0xfa, 0x83, 0x6c, 0x0d, 0x0c, 0xee, 0x94, 0xc1, 0x63, 0x7c, 0x3e, 0xcb, 0x01, 0x5a, 0xb1, 0x0f, 0x1e, 0x17, 0xcb, 0x11, 0xc1, 0x82, 0x4d, 0x2b, 0x7d, 0x7e, 0x32, 0x99, 0x3b, 0x2c, }; static const unsigned char xdh_wei448_2249_privkey[] = { 0x1c, 0x3c, 0x44, 0xc6, 0x2c, 0x73, 0xb7, 0xa4, 0x5e, 0x3f, 0x03, 0x15, 0xee, 0x27, 0x43, 0x77, 0xf7, 0xb5, 0xde, 0x3e, 0xd5, 0x2e, 0x9b, 0x0f, 0x26, 0xb0, 0x24, 0xff, 0x54, 0x09, 0x41, 0xde, 0x85, 0xca, 0x07, 0xed, 0x48, 0xcc, 0xd4, 0xd1, 0x9c, 0x3f, 0x7c, 0xf9, 0x90, 0x1f, 0x82, 0x80, 0x04, 0x5c, 0x3b, 0x1e, 0x79, 0x6b, 0xd9, 0xaa, }; static const unsigned char xdh_wei448_2249_sharedsecret[] = { 0xcd, 0xff, 0x5f, 0x86, 0x09, 0x7e, 0x9d, 0x8a, 0x96, 0xe8, 0xfe, 0x6e, 0x4a, 0x2e, 0x95, 0xc2, 0xae, 0x2c, 0x70, 0xae, 0x8f, 0x1d, 0xa1, 0x70, 0x33, 0x0f, 0xe7, 0x01, 0x2e, 0xf6, 0x39, 0x54, 0x86, 0x08, 0xd0, 0x1e, 0xb8, 0xf1, 0x28, 0xd8, 0x91, 0xa7, 0x28, 0xd3, 0x9d, 0x22, 0x1a, 0xe8, 0xa3, 0x78, 0xc2, 0xf7, 0x8a, 0xc3, 0x81, 0x4f, }; static const wycheproof_xdh_test xdh_wei448_2249 = { .name = "xdh_wei448_2249", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2249_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2249_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2249_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 177 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2250 for XDH, tcId is 178 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2250_peerpubkey[] = { 0x17, 0x25, 0x92, 0x91, 0x21, 0x66, 0x3a, 0x42, 0x51, 0x36, 0x7b, 0x83, 0x90, 0xae, 0x13, 0x57, 0x8b, 0x8b, 0x51, 0x50, 0x48, 0x8c, 0x1d, 0x6f, 0x04, 0x27, 0x03, 0xea, 0x32, 0xbc, 0xca, 0xa0, 0x95, 0x6b, 0xeb, 0x67, 0x7b, 0x60, 0x12, 0x3c, 0x5e, 0xdc, 0x84, 0x4c, 0x4e, 0xbc, 0x6a, 0x02, 0xa8, 0x48, 0xbf, 0x8e, 0xb4, 0x5e, 0xcc, 0x3b, }; static const unsigned char xdh_wei448_2250_privkey[] = { 0x98, 0xe1, 0x49, 0x0a, 0xbf, 0x47, 0x97, 0x36, 0xea, 0x94, 0x54, 0x8b, 0x3b, 0x67, 0x26, 0x5d, 0x99, 0x24, 0xd4, 0xac, 0x34, 0xb5, 0xec, 0xb3, 0xf5, 0xfc, 0xe5, 0xe8, 0x06, 0xca, 0xe3, 0x6f, 0x2c, 0x37, 0x8a, 0x10, 0x35, 0x65, 0xb0, 0x9e, 0x45, 0x34, 0x1b, 0xec, 0x4c, 0x0b, 0x64, 0xc9, 0x3c, 0x50, 0x7e, 0xf5, 0x4b, 0xf2, 0x86, 0xbf, }; static const unsigned char xdh_wei448_2250_sharedsecret[] = { 0x4f, 0x84, 0x58, 0x17, 0x8f, 0x9a, 0xaa, 0x90, 0xd8, 0xf0, 0xdc, 0xb5, 0x7a, 0xa2, 0x8b, 0x0f, 0xa4, 0xe0, 0x43, 0x50, 0xb3, 0x1e, 0x62, 0x74, 0xcf, 0x94, 0x68, 0x64, 0xb9, 0x78, 0x80, 0x5f, 0xca, 0x4d, 0x4c, 0x81, 0xdd, 0xb6, 0xd3, 0x2f, 0x6a, 0x05, 0xe2, 0x4f, 0xbf, 0xd5, 0x21, 0xfc, 0x43, 0xe8, 0x48, 0x17, 0x9b, 0x18, 0x78, 0xa9, }; static const wycheproof_xdh_test xdh_wei448_2250 = { .name = "xdh_wei448_2250", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2250_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2250_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2250_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 178 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2251 for XDH, tcId is 179 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2251_peerpubkey[] = { 0xcb, 0x0b, 0x2a, 0xbd, 0x19, 0x4e, 0xb1, 0xbe, 0x14, 0xd4, 0x17, 0xd5, 0xc8, 0x23, 0xa1, 0x51, 0x54, 0xcb, 0x61, 0x5a, 0x30, 0x3e, 0x25, 0xe6, 0x47, 0x4b, 0xfd, 0x56, 0x32, 0x3a, 0x38, 0xf7, 0x88, 0x2f, 0xbc, 0xd7, 0xbc, 0x14, 0x8a, 0xdf, 0xd7, 0x0f, 0xc1, 0x8c, 0x96, 0xa2, 0x95, 0x69, 0xa1, 0x0a, 0xd1, 0xae, 0xea, 0x67, 0x74, 0x4c, }; static const unsigned char xdh_wei448_2251_privkey[] = { 0xb4, 0xc2, 0xee, 0xc4, 0x6e, 0xae, 0xaa, 0x28, 0x63, 0x6a, 0x44, 0xb0, 0x54, 0x21, 0xf4, 0xe1, 0x7d, 0x06, 0x4b, 0xe0, 0xb9, 0xbe, 0x23, 0x22, 0x6e, 0x4f, 0x3c, 0x17, 0x33, 0xf1, 0xd5, 0x3b, 0x35, 0x72, 0x15, 0xdd, 0x84, 0xf4, 0x12, 0x16, 0xa0, 0x98, 0x5a, 0x9d, 0x47, 0x88, 0x34, 0xf8, 0x5a, 0x92, 0xf6, 0x80, 0x8b, 0x10, 0x97, 0xa9, }; static const unsigned char xdh_wei448_2251_sharedsecret[] = { 0xa6, 0x28, 0x6b, 0xb1, 0xba, 0xf9, 0xa0, 0x39, 0xc5, 0x51, 0x80, 0x8f, 0x6a, 0xe2, 0x54, 0x06, 0x84, 0xeb, 0x62, 0x5e, 0x5e, 0x22, 0xec, 0x09, 0x6f, 0xd1, 0x12, 0xb5, 0x2a, 0xe5, 0xe1, 0x03, 0x99, 0x61, 0x8d, 0x84, 0x76, 0x35, 0x28, 0x7f, 0xaf, 0xa4, 0xe3, 0x1d, 0xb4, 0xa6, 0x6f, 0x0c, 0x11, 0x61, 0xfe, 0x6f, 0xfe, 0x1f, 0xbd, 0xce, }; static const wycheproof_xdh_test xdh_wei448_2251 = { .name = "xdh_wei448_2251", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2251_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2251_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2251_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 179 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2252 for XDH, tcId is 180 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2252_peerpubkey[] = { 0x6c, 0x13, 0x1e, 0x6c, 0x22, 0x5f, 0x3c, 0x7c, 0xd0, 0xcb, 0x44, 0xce, 0xad, 0x0f, 0x45, 0xb5, 0x69, 0x88, 0xf7, 0x9f, 0xa1, 0xaf, 0x96, 0x6b, 0xbf, 0x56, 0x74, 0x00, 0xd7, 0x70, 0x2d, 0x05, 0xa6, 0xfb, 0x1f, 0xab, 0xde, 0xc1, 0x9f, 0x81, 0xc0, 0x77, 0xbd, 0xf8, 0xd9, 0x4f, 0x4b, 0x10, 0x51, 0x9e, 0xca, 0xa6, 0x3e, 0xc2, 0x62, 0x66, }; static const unsigned char xdh_wei448_2252_privkey[] = { 0xe8, 0x37, 0x52, 0x97, 0x8a, 0xb8, 0x67, 0xb6, 0x9d, 0x9c, 0xc6, 0x85, 0x23, 0x66, 0xa7, 0xbe, 0x18, 0x4d, 0x16, 0x0f, 0x50, 0xee, 0x2e, 0x93, 0x25, 0x02, 0x16, 0xd2, 0x42, 0x33, 0xab, 0x3c, 0x11, 0x2b, 0x20, 0xd3, 0x05, 0xcf, 0x42, 0x2b, 0xf4, 0xab, 0x1b, 0xdc, 0xb5, 0x7b, 0x14, 0xd6, 0xe1, 0x7b, 0xdf, 0x3b, 0xce, 0x4f, 0xf1, 0x93, }; static const unsigned char xdh_wei448_2252_sharedsecret[] = { 0xfc, 0xd6, 0xb6, 0xe4, 0x41, 0x05, 0xb4, 0xa7, 0x7b, 0xa9, 0xeb, 0xc5, 0x59, 0x63, 0xa3, 0x4e, 0x38, 0x4f, 0x8b, 0x8c, 0x65, 0xae, 0xcb, 0x8e, 0x12, 0x9d, 0x0c, 0x5c, 0x0c, 0x4a, 0xc3, 0x59, 0xbe, 0x9e, 0xa4, 0x9e, 0x61, 0x78, 0x14, 0x73, 0x61, 0xe5, 0xd3, 0x37, 0x2c, 0x13, 0xbf, 0x56, 0x6f, 0xc0, 0x1d, 0xfb, 0xcc, 0x09, 0x0e, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2252 = { .name = "xdh_wei448_2252", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2252_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2252_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2252_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 180 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2253 for XDH, tcId is 181 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2253_peerpubkey[] = { 0x39, 0xd9, 0x0d, 0xf6, 0xb5, 0xc6, 0x94, 0x17, 0x16, 0x72, 0x9d, 0xa1, 0x37, 0xf5, 0x8e, 0xd6, 0x86, 0x82, 0xfe, 0xfc, 0xc9, 0x64, 0x14, 0x7b, 0xcb, 0x27, 0x55, 0x1e, 0x1d, 0x1e, 0xd8, 0xb5, 0xe0, 0xbb, 0xba, 0x21, 0x71, 0xa4, 0xa1, 0x20, 0xb0, 0xc8, 0xf5, 0x54, 0xf0, 0x65, 0x9d, 0x4d, 0x81, 0xaa, 0x64, 0xa3, 0xf8, 0x45, 0x86, 0xd5, }; static const unsigned char xdh_wei448_2253_privkey[] = { 0x74, 0xca, 0xbe, 0xa8, 0x82, 0xcd, 0x95, 0x59, 0x4f, 0x57, 0xd5, 0x14, 0x49, 0x02, 0x34, 0x4d, 0xd2, 0xb3, 0xad, 0xb0, 0x45, 0xe5, 0xa6, 0xe2, 0x70, 0xa4, 0x93, 0x72, 0xf0, 0x59, 0x22, 0xc4, 0x5f, 0xa5, 0x00, 0xed, 0x1d, 0x7a, 0x4d, 0x9f, 0xff, 0x58, 0x48, 0x8b, 0x26, 0x55, 0x49, 0x61, 0xef, 0xcb, 0xeb, 0xc6, 0xfa, 0x2b, 0xa8, 0x83, }; static const unsigned char xdh_wei448_2253_sharedsecret[] = { 0xa7, 0xfd, 0xca, 0x0e, 0x15, 0xe5, 0x94, 0x8a, 0xa7, 0x7c, 0xed, 0xd2, 0x7b, 0x76, 0x59, 0x90, 0xd5, 0xe6, 0xab, 0xff, 0x7a, 0x72, 0x6b, 0x9a, 0xc0, 0xea, 0x9b, 0xc4, 0x89, 0x92, 0xd0, 0xee, 0x97, 0x28, 0xa7, 0x23, 0xb7, 0xe1, 0x8c, 0x33, 0x34, 0x1c, 0x30, 0xfb, 0xd5, 0x1f, 0x42, 0xf8, 0xf9, 0xe3, 0x6f, 0x4e, 0x00, 0xc5, 0x4f, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_2253 = { .name = "xdh_wei448_2253", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2253_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2253_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2253_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 181 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2254 for XDH, tcId is 182 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2254_peerpubkey[] = { 0xf9, 0x23, 0x2f, 0xe9, 0x3b, 0x09, 0xea, 0x23, 0x2f, 0x04, 0x01, 0x14, 0x47, 0x39, 0x6b, 0xee, 0x7b, 0xdf, 0x1a, 0x2e, 0x86, 0x88, 0x7e, 0x9e, 0x68, 0xe7, 0x91, 0x7f, 0xaf, 0xdc, 0x4d, 0xd6, 0x83, 0x7c, 0xe8, 0xfb, 0x08, 0x2b, 0x0b, 0xbd, 0x77, 0xdb, 0x75, 0x62, 0xb2, 0x29, 0xa6, 0xde, 0x12, 0x63, 0x2a, 0x41, 0x62, 0xea, 0xef, 0x2c, }; static const unsigned char xdh_wei448_2254_privkey[] = { 0x40, 0x73, 0x42, 0xcd, 0x35, 0x65, 0x8c, 0x89, 0x33, 0xf1, 0xf0, 0x0d, 0xfc, 0x08, 0xfa, 0x6e, 0x10, 0x19, 0x1d, 0x88, 0x24, 0x4a, 0xcb, 0x65, 0xe2, 0x02, 0x38, 0x3a, 0x43, 0x51, 0xa8, 0x05, 0x09, 0x5d, 0x39, 0x25, 0xab, 0xf3, 0x3b, 0xc4, 0xb6, 0xb5, 0xd5, 0x8d, 0x9a, 0x11, 0x35, 0xe3, 0xf2, 0xa2, 0x7f, 0x3d, 0x48, 0x35, 0x0e, 0x85, }; static const unsigned char xdh_wei448_2254_sharedsecret[] = { 0x19, 0x0b, 0x8c, 0x74, 0xa0, 0xfd, 0xa4, 0x39, 0xb7, 0x8f, 0x39, 0x00, 0x19, 0xaa, 0xff, 0xe2, 0xac, 0x55, 0x6d, 0x05, 0xa1, 0x0e, 0xd2, 0xa8, 0x66, 0xbf, 0x31, 0x4b, 0xe6, 0x5b, 0xa4, 0xfa, 0x84, 0xa9, 0x4d, 0x1f, 0x73, 0x09, 0x9a, 0x62, 0x6f, 0x53, 0x57, 0xc7, 0xa1, 0x90, 0xd5, 0x0a, 0x55, 0xc9, 0x63, 0x33, 0xdd, 0xfb, 0x12, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2254 = { .name = "xdh_wei448_2254", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2254_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2254_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2254_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 182 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2255 for XDH, tcId is 183 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2255_peerpubkey[] = { 0xa6, 0xfb, 0xd6, 0x4a, 0x66, 0xa4, 0x64, 0x54, 0xeb, 0x14, 0x5b, 0x3f, 0x37, 0x05, 0xe0, 0x19, 0x72, 0xb1, 0x49, 0x3b, 0x8e, 0x8f, 0xd4, 0x12, 0x37, 0x19, 0x84, 0xe0, 0x6b, 0x92, 0x6e, 0x76, 0xa7, 0xfd, 0x67, 0x9b, 0xde, 0x61, 0x14, 0x9f, 0xef, 0x27, 0x9f, 0x31, 0xa7, 0x53, 0x21, 0xad, 0x7f, 0x69, 0x37, 0x61, 0x96, 0xe0, 0xa1, 0x9b, }; static const unsigned char xdh_wei448_2255_privkey[] = { 0x80, 0x38, 0x7a, 0x6b, 0x93, 0x1d, 0xfb, 0xf0, 0xa3, 0x22, 0x0c, 0xbc, 0x8e, 0x16, 0x19, 0x46, 0xd6, 0x66, 0xf4, 0x10, 0x8f, 0x14, 0x34, 0x97, 0x9d, 0xeb, 0x6c, 0xec, 0xeb, 0x42, 0x2f, 0x03, 0x7a, 0x26, 0xc6, 0x34, 0xe9, 0x8b, 0x7d, 0x67, 0xdc, 0x8f, 0xd4, 0xea, 0x52, 0xae, 0x0d, 0xb7, 0xd8, 0x32, 0xaf, 0x7a, 0x07, 0x5b, 0x88, 0x96, }; static const unsigned char xdh_wei448_2255_sharedsecret[] = { 0xf6, 0x57, 0x13, 0xc9, 0x81, 0x9e, 0x06, 0xc2, 0x4f, 0x78, 0x41, 0x88, 0x70, 0xde, 0x30, 0xe8, 0x94, 0x98, 0x46, 0x78, 0x6b, 0x2e, 0xed, 0x55, 0x7b, 0x16, 0xb3, 0x12, 0x59, 0xf9, 0xd8, 0xa6, 0xc6, 0xe3, 0x40, 0x8d, 0x15, 0x5e, 0x2f, 0x1a, 0xb9, 0x83, 0xac, 0x64, 0x6d, 0x76, 0x04, 0x2d, 0x97, 0x66, 0x2c, 0xd5, 0x32, 0x83, 0x4e, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2255 = { .name = "xdh_wei448_2255", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2255_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2255_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2255_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 183 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2256 for XDH, tcId is 184 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2256_peerpubkey[] = { 0x39, 0xbf, 0x39, 0x20, 0x5a, 0xc3, 0xdd, 0x32, 0xd6, 0x09, 0x2d, 0x1b, 0x74, 0x55, 0x79, 0xff, 0x53, 0xfe, 0xa1, 0x03, 0x76, 0xe4, 0xf0, 0xb1, 0xa2, 0xa4, 0xb8, 0x39, 0x5a, 0x6f, 0xaa, 0x85, 0xc2, 0x19, 0xa9, 0x22, 0x41, 0x23, 0xe9, 0x32, 0xe4, 0x92, 0x9d, 0xf4, 0xfd, 0x6b, 0x2b, 0x90, 0xa3, 0xdf, 0xa3, 0xf8, 0x9b, 0xe7, 0x80, 0xaf, }; static const unsigned char xdh_wei448_2256_privkey[] = { 0xf8, 0x6c, 0xb8, 0xff, 0x21, 0x7d, 0xa7, 0x30, 0xd1, 0x84, 0xc7, 0x32, 0x24, 0x63, 0x6a, 0xf9, 0xf7, 0x79, 0xc8, 0x3c, 0x84, 0x4a, 0x1a, 0x85, 0x9b, 0x86, 0xb7, 0x6b, 0xfc, 0x90, 0x5d, 0xd8, 0x09, 0xc5, 0xd7, 0xfd, 0x99, 0xd9, 0xd6, 0xb8, 0x69, 0x5b, 0x6c, 0x1b, 0x9d, 0xd9, 0x94, 0x20, 0x2e, 0x4e, 0x12, 0x6b, 0xc0, 0x0d, 0xe8, 0x9e, }; static const unsigned char xdh_wei448_2256_sharedsecret[] = { 0x71, 0xd0, 0x73, 0x1f, 0xc8, 0x0c, 0x72, 0x53, 0x49, 0x87, 0x3b, 0x22, 0xaf, 0x21, 0x5c, 0x39, 0xf2, 0xec, 0x59, 0x5c, 0xb3, 0x6b, 0x1c, 0x5a, 0x69, 0xbc, 0x5d, 0xdd, 0x75, 0x4e, 0x82, 0x56, 0x3e, 0x06, 0x0d, 0xcb, 0x1d, 0xc8, 0x6b, 0x43, 0x54, 0xbf, 0x20, 0x17, 0xaa, 0x43, 0xbe, 0x1c, 0xa7, 0x39, 0xb4, 0x0d, 0x75, 0xcc, 0x85, 0xd1, }; static const wycheproof_xdh_test xdh_wei448_2256 = { .name = "xdh_wei448_2256", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2256_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2256_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2256_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 184 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2257 for XDH, tcId is 185 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2257_peerpubkey[] = { 0x96, 0x6b, 0x0c, 0x56, 0x8d, 0xca, 0x32, 0x71, 0x75, 0x9b, 0x1a, 0x6c, 0xbd, 0xd5, 0xef, 0x23, 0x86, 0x26, 0x3e, 0xc3, 0x62, 0xc2, 0xa0, 0x76, 0xb8, 0x5b, 0x92, 0x7a, 0xcc, 0xc7, 0x31, 0x90, 0x15, 0xf3, 0x61, 0x53, 0xda, 0x29, 0x0a, 0x81, 0x96, 0x20, 0x31, 0x4e, 0xa1, 0xa2, 0x8e, 0x58, 0xb3, 0xd1, 0xa0, 0xf5, 0x03, 0xde, 0x14, 0xf9, }; static const unsigned char xdh_wei448_2257_privkey[] = { 0x54, 0x48, 0x63, 0x2b, 0xef, 0xfa, 0xf5, 0x36, 0x67, 0x45, 0xe1, 0xd5, 0x92, 0x54, 0xc9, 0x46, 0x52, 0x96, 0xab, 0x37, 0x01, 0x59, 0xbe, 0x41, 0x87, 0x91, 0x9f, 0xa1, 0xbe, 0x25, 0x79, 0x6d, 0x4c, 0x97, 0xba, 0xc0, 0x85, 0xa2, 0xbf, 0x06, 0x55, 0xf2, 0x9e, 0x12, 0x9f, 0x5a, 0xb7, 0xf2, 0x6f, 0xf9, 0x53, 0x62, 0xf3, 0x36, 0xea, 0xbc, }; static const unsigned char xdh_wei448_2257_sharedsecret[] = { 0x0c, 0x72, 0x95, 0x19, 0x74, 0x4c, 0xf1, 0x4b, 0xe7, 0x96, 0x96, 0x32, 0x5a, 0xe8, 0x93, 0x68, 0x77, 0xb3, 0x21, 0xe4, 0x5b, 0x07, 0x57, 0xe4, 0xe5, 0x51, 0x2a, 0xad, 0x2c, 0x1e, 0x8a, 0xa2, 0x33, 0xba, 0x62, 0x24, 0x42, 0xca, 0x55, 0x04, 0x35, 0x9a, 0xdd, 0x3e, 0xc1, 0x9c, 0xef, 0x78, 0x44, 0x64, 0xba, 0x97, 0xfc, 0x81, 0xc3, 0x99, }; static const wycheproof_xdh_test xdh_wei448_2257 = { .name = "xdh_wei448_2257", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2257_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2257_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2257_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 185 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2258 for XDH, tcId is 186 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2258_peerpubkey[] = { 0x83, 0xbe, 0x7f, 0xd9, 0x06, 0xb8, 0xd3, 0x54, 0x34, 0x57, 0xeb, 0xe5, 0x12, 0x80, 0xcc, 0xd8, 0x0b, 0xb2, 0x7a, 0xe0, 0x52, 0xf3, 0xa0, 0x3a, 0x3f, 0x2d, 0x78, 0x90, 0x28, 0xdb, 0x25, 0xe4, 0x30, 0xa8, 0xbc, 0xcc, 0x90, 0xe8, 0x37, 0x1e, 0x20, 0x76, 0x5f, 0xf4, 0x79, 0x82, 0x83, 0xfb, 0x35, 0x59, 0xde, 0xb3, 0x1c, 0x80, 0x88, 0x3a, }; static const unsigned char xdh_wei448_2258_privkey[] = { 0x30, 0xf2, 0x81, 0xd7, 0xb8, 0x24, 0xb6, 0x5f, 0x37, 0x5e, 0xb0, 0x57, 0x8f, 0xa9, 0x12, 0x30, 0x22, 0xfb, 0x58, 0xc0, 0xb0, 0xb9, 0x39, 0x88, 0x93, 0x20, 0x39, 0x46, 0x7c, 0x0e, 0x0c, 0x23, 0x03, 0x97, 0xd0, 0xa2, 0xdd, 0x67, 0xf3, 0x0a, 0x31, 0x97, 0x76, 0x1c, 0x5f, 0x42, 0x49, 0x89, 0x48, 0xe2, 0x5e, 0x3a, 0x25, 0xc3, 0x06, 0x9e, }; static const unsigned char xdh_wei448_2258_sharedsecret[] = { 0xb8, 0x45, 0xc3, 0xd7, 0xb6, 0x4a, 0x4f, 0xc8, 0xc3, 0x01, 0xef, 0xa0, 0x8b, 0x1d, 0xd6, 0x79, 0xb8, 0x50, 0x69, 0x25, 0x29, 0xe7, 0xb7, 0x2d, 0xfb, 0x6d, 0xae, 0xbe, 0x19, 0xaf, 0x5c, 0x3a, 0x4b, 0xd0, 0xad, 0xb6, 0x10, 0xd9, 0x31, 0x75, 0x47, 0xcb, 0x1e, 0x59, 0x87, 0xbe, 0x7e, 0x56, 0x20, 0xd5, 0xdb, 0xf5, 0xdc, 0x15, 0xfe, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_2258 = { .name = "xdh_wei448_2258", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2258_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2258_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2258_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 186 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2259 for XDH, tcId is 187 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2259_peerpubkey[] = { 0xce, 0xd1, 0x73, 0xd5, 0xe9, 0x1d, 0x27, 0xd1, 0x19, 0x13, 0x4e, 0x3c, 0x49, 0xa6, 0xa3, 0x23, 0x65, 0xb7, 0x8c, 0xce, 0x35, 0x29, 0xe9, 0x17, 0x1c, 0x13, 0xe4, 0x7e, 0x46, 0x1c, 0xfb, 0xfd, 0x8e, 0x77, 0xca, 0x34, 0x9d, 0x75, 0xf1, 0xdb, 0xc1, 0xc0, 0x64, 0xce, 0x72, 0x57, 0xb2, 0x0e, 0x63, 0x89, 0xa2, 0x0b, 0x6a, 0xef, 0x40, 0x3b, }; static const unsigned char xdh_wei448_2259_privkey[] = { 0x10, 0xad, 0x34, 0x79, 0x4a, 0x7d, 0x03, 0x35, 0x1b, 0xdd, 0x7e, 0xf9, 0x11, 0x25, 0x7b, 0x0c, 0x94, 0x32, 0x1f, 0xa2, 0x3c, 0xf8, 0xea, 0x60, 0x57, 0xdc, 0x47, 0xd5, 0x16, 0xe4, 0xe5, 0x5d, 0x32, 0xa3, 0x0f, 0x5a, 0xdb, 0x71, 0xdc, 0x96, 0x84, 0xeb, 0xaf, 0xfc, 0x34, 0xca, 0xfb, 0x1a, 0xc7, 0xea, 0x17, 0xe7, 0xb1, 0xb6, 0xb2, 0x8c, }; static const unsigned char xdh_wei448_2259_sharedsecret[] = { 0x99, 0xf2, 0x61, 0xb7, 0x3f, 0x1c, 0x83, 0x75, 0x13, 0x2b, 0x0b, 0x1e, 0x02, 0x8b, 0x2c, 0xe3, 0x38, 0x25, 0xf3, 0xd7, 0x3f, 0x43, 0xd5, 0xc1, 0x24, 0x4e, 0x7f, 0xbd, 0xfb, 0x03, 0x03, 0x2a, 0xe2, 0x02, 0x70, 0xc1, 0x17, 0x0c, 0x23, 0x76, 0x48, 0x9b, 0x02, 0x06, 0x3a, 0x3a, 0xc2, 0x5c, 0xbf, 0xd0, 0xaf, 0x68, 0xbc, 0xa2, 0xea, 0xda, }; static const wycheproof_xdh_test xdh_wei448_2259 = { .name = "xdh_wei448_2259", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2259_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2259_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2259_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 187 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2260 for XDH, tcId is 188 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2260_peerpubkey[] = { 0x18, 0x3f, 0x07, 0xf6, 0x5f, 0x94, 0x57, 0x8f, 0xe8, 0x30, 0x92, 0xfc, 0x2f, 0x75, 0x58, 0xba, 0x2d, 0xa6, 0x88, 0x2d, 0x29, 0xf0, 0xcc, 0x6f, 0xc9, 0x35, 0xee, 0xca, 0x2f, 0xc9, 0xb9, 0x2b, 0xc5, 0x86, 0x21, 0x6f, 0x2b, 0x07, 0xca, 0xdd, 0xe4, 0x59, 0x7a, 0x71, 0x3a, 0x4d, 0x93, 0xeb, 0x7b, 0xc5, 0x55, 0x4e, 0xd6, 0x02, 0xbf, 0x9f, }; static const unsigned char xdh_wei448_2260_privkey[] = { 0x10, 0x6a, 0x1d, 0x78, 0x39, 0x7d, 0x90, 0xa0, 0x4b, 0x84, 0x4c, 0x57, 0x78, 0x4d, 0x82, 0xac, 0xe4, 0xe9, 0xa6, 0xed, 0x25, 0x15, 0x7f, 0xac, 0x82, 0x13, 0xc3, 0x7b, 0xa9, 0xcb, 0xfc, 0x09, 0xb6, 0x01, 0x51, 0x02, 0xd8, 0x48, 0x40, 0xcf, 0xb0, 0x87, 0x81, 0x64, 0x29, 0x32, 0x71, 0x53, 0x93, 0x91, 0xfa, 0x89, 0xb4, 0xf5, 0x24, 0xb0, }; static const unsigned char xdh_wei448_2260_sharedsecret[] = { 0x85, 0xdd, 0x47, 0x7a, 0xa7, 0x6a, 0x49, 0xa5, 0xb6, 0x96, 0x7c, 0xf3, 0x57, 0x06, 0xe0, 0x2e, 0x77, 0x5a, 0x66, 0x90, 0xd5, 0xe0, 0x38, 0xb4, 0x49, 0x63, 0x48, 0x05, 0x39, 0x8b, 0x88, 0x67, 0x28, 0xbb, 0xb7, 0x37, 0x61, 0x33, 0xa3, 0x3a, 0x2d, 0x72, 0xac, 0x3d, 0x12, 0x66, 0x87, 0x0e, 0x23, 0xcc, 0x06, 0x50, 0x49, 0xcd, 0x0b, 0xab, }; static const wycheproof_xdh_test xdh_wei448_2260 = { .name = "xdh_wei448_2260", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2260_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2260_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2260_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 188 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2261 for XDH, tcId is 189 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2261_peerpubkey[] = { 0xa5, 0xe0, 0xdf, 0x95, 0xbd, 0x49, 0xd5, 0x38, 0xc0, 0x51, 0xaf, 0x55, 0x2c, 0x33, 0x9e, 0x85, 0x1d, 0x8e, 0xb7, 0xd7, 0x67, 0xb2, 0x91, 0x37, 0x9b, 0xcb, 0xab, 0xd3, 0xe3, 0x46, 0x90, 0x01, 0xf5, 0x62, 0xf5, 0xff, 0x9d, 0x36, 0x21, 0x0c, 0x3b, 0x64, 0x85, 0xf4, 0x29, 0xae, 0x6f, 0xc0, 0xcd, 0x60, 0xb2, 0x2a, 0xc1, 0x92, 0xa7, 0x3f, }; static const unsigned char xdh_wei448_2261_privkey[] = { 0xe4, 0x8a, 0x40, 0xaf, 0x2c, 0x95, 0xdc, 0xbd, 0x6b, 0xa8, 0xd4, 0x3a, 0x9c, 0x7a, 0x2a, 0x6f, 0x37, 0x52, 0x68, 0x0c, 0xf4, 0x47, 0x02, 0x9d, 0xd0, 0x25, 0xfa, 0x94, 0x49, 0xc3, 0x21, 0x1f, 0x96, 0x78, 0xea, 0xb7, 0xf8, 0x42, 0x19, 0x0f, 0xfb, 0xf9, 0xaa, 0x3e, 0xbb, 0xd1, 0xb1, 0x99, 0xa7, 0xbf, 0x2e, 0xf3, 0x8b, 0xa9, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_2261_sharedsecret[] = { 0x79, 0x5f, 0x7c, 0x3f, 0x04, 0x21, 0x3c, 0x6f, 0xbf, 0xf0, 0xa0, 0x9d, 0x3d, 0xb3, 0x2b, 0xdd, 0xc0, 0xb4, 0xb8, 0x31, 0xf0, 0x6c, 0xb0, 0xab, 0xf6, 0xdc, 0x4c, 0x40, 0xa4, 0xff, 0x1c, 0x60, 0xa9, 0xde, 0x6e, 0x2b, 0x9b, 0x55, 0x24, 0x99, 0xe0, 0x2b, 0xb8, 0xa7, 0x8c, 0x25, 0x35, 0xfe, 0x7c, 0x32, 0x44, 0xbb, 0x75, 0xe9, 0x0c, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_2261 = { .name = "xdh_wei448_2261", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2261_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2261_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2261_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 189 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2262 for XDH, tcId is 190 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2262_peerpubkey[] = { 0xca, 0xfa, 0x2c, 0xa3, 0x59, 0xec, 0x03, 0xa6, 0xeb, 0x2f, 0x2c, 0x6e, 0x0c, 0xac, 0x04, 0x9d, 0x98, 0x7e, 0x12, 0x20, 0xab, 0xce, 0xf2, 0xb8, 0x47, 0xc4, 0xb8, 0xca, 0x7d, 0xfe, 0xed, 0xe7, 0x1f, 0xb1, 0x3c, 0x0d, 0xb9, 0xbf, 0x83, 0x03, 0x0f, 0xd4, 0x29, 0xc5, 0xdd, 0xfb, 0x84, 0xf4, 0x02, 0xdd, 0xbe, 0x9f, 0x41, 0x29, 0xa1, 0x83, }; static const unsigned char xdh_wei448_2262_privkey[] = { 0x38, 0xc6, 0x29, 0x6b, 0xf0, 0x9f, 0x64, 0xd2, 0xff, 0x74, 0x15, 0x96, 0x33, 0x41, 0x2c, 0x33, 0xa8, 0xf8, 0xe9, 0x74, 0xac, 0x62, 0x54, 0xbc, 0xbe, 0xc7, 0xa4, 0x6b, 0x59, 0xe5, 0x4e, 0x7a, 0x32, 0xc4, 0xee, 0x43, 0x1d, 0x49, 0xed, 0xe5, 0x65, 0x7c, 0xf1, 0x15, 0x5a, 0x6d, 0x81, 0x9f, 0xea, 0xa6, 0xd0, 0x96, 0x32, 0x04, 0x63, 0xb9, }; static const unsigned char xdh_wei448_2262_sharedsecret[] = { 0x11, 0x88, 0x29, 0x30, 0xb0, 0x70, 0x31, 0x4e, 0x8f, 0x38, 0x9e, 0x99, 0xdb, 0x01, 0x91, 0x35, 0x93, 0xc4, 0x3e, 0xef, 0xde, 0x4e, 0x3a, 0xac, 0xbb, 0x81, 0xa2, 0x01, 0xd9, 0xf9, 0xa9, 0x40, 0x3a, 0x11, 0xd1, 0x15, 0xa3, 0x1b, 0x6a, 0xc8, 0x03, 0x15, 0x55, 0xb8, 0xee, 0xaf, 0x96, 0xfc, 0x1f, 0xc6, 0x59, 0xbf, 0x40, 0x78, 0xe2, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2262 = { .name = "xdh_wei448_2262", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2262_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2262_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2262_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 190 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2263 for XDH, tcId is 191 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2263_peerpubkey[] = { 0xcf, 0xa0, 0xd6, 0xe3, 0xc9, 0xb7, 0xa1, 0x64, 0x73, 0xae, 0x83, 0x71, 0xd8, 0xc3, 0xd3, 0xbf, 0xe2, 0x08, 0xbf, 0xd6, 0xb3, 0x53, 0x8b, 0x9d, 0x4c, 0x0c, 0xfe, 0x4f, 0x0d, 0xac, 0x4c, 0x49, 0xaf, 0xac, 0x43, 0xce, 0x33, 0x7c, 0x81, 0x68, 0x5b, 0x54, 0x48, 0xdf, 0x8d, 0x06, 0x01, 0x4e, 0xf4, 0xf0, 0x1d, 0xd3, 0x86, 0xe5, 0x52, 0xd8, }; static const unsigned char xdh_wei448_2263_privkey[] = { 0xa8, 0xec, 0x40, 0xc1, 0x38, 0x22, 0x72, 0xe4, 0x84, 0x2d, 0x82, 0x12, 0x3e, 0xbd, 0x1a, 0x9c, 0x53, 0xc9, 0x6e, 0x0d, 0x53, 0x4e, 0xb0, 0x8a, 0x34, 0x0f, 0xdb, 0x78, 0x7a, 0xfa, 0xd1, 0x18, 0x8b, 0x86, 0xce, 0xfa, 0x92, 0x37, 0xfe, 0xb0, 0x9c, 0x26, 0x53, 0xa0, 0xd3, 0x51, 0x9a, 0x4e, 0x2a, 0x09, 0xaf, 0x8c, 0x25, 0x6a, 0xe8, 0x86, }; static const unsigned char xdh_wei448_2263_sharedsecret[] = { 0x02, 0xf1, 0x8b, 0x6d, 0xcf, 0xf7, 0xd0, 0x9c, 0x0e, 0x87, 0xae, 0x7c, 0xad, 0xb5, 0x9a, 0x51, 0x91, 0x20, 0xd8, 0xc0, 0xde, 0x7a, 0x2a, 0x83, 0xc9, 0x9a, 0xe5, 0x2e, 0xb2, 0x20, 0x8d, 0xc1, 0xf7, 0x02, 0x13, 0x41, 0xf5, 0xe0, 0xb7, 0xc4, 0xd9, 0x18, 0x36, 0x3d, 0x51, 0xaa, 0x4e, 0xd2, 0x55, 0xc7, 0xd6, 0x68, 0x47, 0x70, 0x05, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2263 = { .name = "xdh_wei448_2263", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2263_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2263_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2263_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 191 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2264 for XDH, tcId is 192 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2264_peerpubkey[] = { 0xc0, 0xb0, 0xae, 0x5b, 0xf6, 0x44, 0xc0, 0x9d, 0xbb, 0xd3, 0x2b, 0x1b, 0xa6, 0xd0, 0xa4, 0x05, 0x58, 0xa5, 0xb9, 0xa7, 0xc2, 0xc9, 0x81, 0x3c, 0xf7, 0x7e, 0x3c, 0x22, 0x53, 0x1e, 0x79, 0xf9, 0xee, 0x3e, 0xb8, 0xec, 0x45, 0x70, 0xf1, 0xce, 0xf3, 0x94, 0x72, 0xc9, 0x70, 0x04, 0xf4, 0xda, 0x1a, 0x21, 0x32, 0xf2, 0x1a, 0x62, 0x48, 0xde, }; static const unsigned char xdh_wei448_2264_privkey[] = { 0x1c, 0x09, 0x4a, 0xa4, 0xb8, 0xd2, 0xfa, 0xe8, 0xc3, 0x93, 0xe4, 0x04, 0x49, 0x6d, 0x8f, 0x13, 0x2f, 0x88, 0xea, 0xca, 0x28, 0x27, 0xe0, 0x84, 0xc0, 0x79, 0x80, 0xa1, 0x95, 0x52, 0x32, 0xf2, 0x69, 0x54, 0x0b, 0x1e, 0x9e, 0x0a, 0x94, 0x64, 0x2e, 0x3e, 0x12, 0x67, 0x20, 0xaf, 0x2e, 0xf0, 0x29, 0x11, 0x08, 0x27, 0xc7, 0xe8, 0x27, 0xa0, }; static const unsigned char xdh_wei448_2264_sharedsecret[] = { 0xda, 0xa6, 0x6a, 0x07, 0x53, 0xa3, 0x07, 0xad, 0x3f, 0xa1, 0xd7, 0x40, 0xec, 0xa4, 0xf0, 0x52, 0x2c, 0xb7, 0xf7, 0x1d, 0xb8, 0xa8, 0x06, 0xf3, 0x20, 0x15, 0x43, 0x38, 0xf0, 0x15, 0x64, 0x89, 0x7f, 0xeb, 0xf8, 0x86, 0x0d, 0x29, 0x2e, 0x66, 0x28, 0x94, 0x22, 0x33, 0x14, 0xe2, 0x8b, 0x75, 0x07, 0xe4, 0x17, 0xf5, 0xfa, 0x90, 0xef, 0x42, }; static const wycheproof_xdh_test xdh_wei448_2264 = { .name = "xdh_wei448_2264", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2264_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2264_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2264_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 192 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2265 for XDH, tcId is 193 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2265_peerpubkey[] = { 0x5c, 0xd1, 0x6d, 0xee, 0x47, 0x1b, 0x4e, 0xb9, 0x3f, 0xd6, 0xc8, 0x9c, 0x35, 0xf9, 0x43, 0x00, 0xc0, 0xa8, 0xeb, 0x14, 0x9d, 0xfe, 0x2b, 0x86, 0xed, 0x14, 0xe9, 0xa1, 0x5f, 0x73, 0xa2, 0x14, 0x4a, 0xde, 0xed, 0x62, 0x09, 0x73, 0x93, 0x9e, 0x51, 0x7e, 0xf1, 0xe0, 0xb0, 0x7a, 0xa0, 0xfd, 0xaf, 0xff, 0xfc, 0xea, 0x47, 0xf8, 0x27, 0x0f, }; static const unsigned char xdh_wei448_2265_privkey[] = { 0x7c, 0xde, 0xe6, 0xca, 0xf1, 0xae, 0x14, 0x41, 0x2d, 0x4d, 0x36, 0x5b, 0x9f, 0x9d, 0x09, 0x04, 0x50, 0x9e, 0xb8, 0xd5, 0x89, 0x0f, 0xbc, 0x92, 0x30, 0x3b, 0xc6, 0xde, 0xd5, 0xf4, 0xff, 0x27, 0xf1, 0xc5, 0xf3, 0x1c, 0x79, 0x19, 0xcb, 0xe8, 0x34, 0xbc, 0x3c, 0xa6, 0x60, 0x07, 0x64, 0x8b, 0x80, 0x95, 0x56, 0xe0, 0x80, 0x85, 0xf6, 0xc0, }; static const unsigned char xdh_wei448_2265_sharedsecret[] = { 0x94, 0x07, 0x15, 0x78, 0x5c, 0x46, 0x06, 0x4c, 0xbb, 0xd8, 0x50, 0xca, 0x39, 0x7f, 0x1d, 0x93, 0xad, 0x85, 0x23, 0x62, 0xd5, 0xc8, 0x38, 0x9e, 0x80, 0xf3, 0xda, 0xa6, 0x3e, 0xce, 0xdb, 0x98, 0x9e, 0x44, 0x2e, 0x2e, 0x0b, 0xec, 0x9b, 0xf0, 0xc6, 0x1a, 0xa2, 0xf0, 0xb3, 0x47, 0xc8, 0xe3, 0x4d, 0xcb, 0xd8, 0xbc, 0xe5, 0x7b, 0x09, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2265 = { .name = "xdh_wei448_2265", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2265_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2265_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2265_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 193 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2266 for XDH, tcId is 194 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2266_peerpubkey[] = { 0x9a, 0x5d, 0x95, 0xf7, 0x7b, 0xd7, 0xea, 0x31, 0xae, 0x97, 0xba, 0x2d, 0xcd, 0x9e, 0x38, 0x4c, 0xbb, 0x13, 0xf9, 0x82, 0xf6, 0x4c, 0x34, 0xb4, 0xac, 0x47, 0x07, 0xc5, 0x37, 0xee, 0xc7, 0x38, 0x70, 0x10, 0x59, 0x95, 0x81, 0x14, 0x10, 0x52, 0x1e, 0xa0, 0x94, 0xe1, 0x34, 0x2f, 0xd7, 0x09, 0x2a, 0x6c, 0xb3, 0x0a, 0x3e, 0x3f, 0x85, 0x1d, }; static const unsigned char xdh_wei448_2266_privkey[] = { 0xec, 0x55, 0x44, 0x4d, 0xd9, 0x2d, 0xdb, 0x86, 0xc0, 0x18, 0x37, 0x7f, 0x27, 0x61, 0x80, 0x47, 0xe8, 0x47, 0x69, 0xff, 0xc7, 0xa0, 0xbe, 0x40, 0xa0, 0xce, 0x7a, 0x11, 0x84, 0x9c, 0xfb, 0x7b, 0x2b, 0x95, 0x98, 0x40, 0x9d, 0x2c, 0x90, 0x6d, 0xe3, 0x8a, 0x4b, 0x69, 0x25, 0x0c, 0x56, 0x00, 0x71, 0x45, 0x69, 0x92, 0xb4, 0x2f, 0xeb, 0xf0, }; static const unsigned char xdh_wei448_2266_sharedsecret[] = { 0x0b, 0x0e, 0xae, 0x19, 0xc0, 0xb7, 0x83, 0x2b, 0x9c, 0xa0, 0x1f, 0x42, 0xf2, 0xd2, 0xdf, 0xa8, 0xb7, 0x0a, 0x2d, 0x43, 0x19, 0x36, 0xde, 0x41, 0x5a, 0xfa, 0x87, 0x82, 0x44, 0xf7, 0x8c, 0x45, 0x38, 0x1d, 0x69, 0xf1, 0x14, 0x54, 0xad, 0x52, 0xa8, 0x64, 0x1e, 0x2e, 0xc7, 0xea, 0x8e, 0xd5, 0x9b, 0x7b, 0x25, 0xff, 0x89, 0x5d, 0x2d, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_2266 = { .name = "xdh_wei448_2266", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2266_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2266_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2266_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 194 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2267 for XDH, tcId is 195 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2267_peerpubkey[] = { 0x62, 0xd4, 0x3d, 0x01, 0x52, 0x6d, 0xe4, 0xba, 0x9d, 0x3c, 0x2f, 0x2b, 0xf3, 0x06, 0xb7, 0x26, 0x26, 0xf6, 0xe1, 0xcc, 0xe0, 0x4d, 0xc4, 0x44, 0xd9, 0x80, 0xd1, 0xca, 0x21, 0x46, 0x5e, 0x26, 0x0c, 0x7b, 0xb1, 0x6a, 0x03, 0xe8, 0xa1, 0xa4, 0x41, 0x1c, 0x56, 0x83, 0xb6, 0xc6, 0xbb, 0x70, 0xf4, 0x72, 0x59, 0xdd, 0x0a, 0xcb, 0xab, 0x66, }; static const unsigned char xdh_wei448_2267_privkey[] = { 0xc4, 0xba, 0x8b, 0x0c, 0xce, 0x5e, 0x04, 0xa4, 0xce, 0x3b, 0xd6, 0xe0, 0x0e, 0xee, 0xcf, 0x36, 0x35, 0x91, 0x15, 0x75, 0x83, 0x7c, 0x60, 0xca, 0xad, 0x6a, 0xc0, 0xe9, 0x5a, 0x7e, 0xac, 0xa7, 0xe0, 0x4a, 0x16, 0x2a, 0xdf, 0x08, 0xb0, 0x97, 0x68, 0x17, 0x85, 0x46, 0xcc, 0x17, 0x8a, 0x79, 0xdf, 0xd5, 0x5f, 0xf8, 0x6e, 0x4d, 0x3b, 0xc6, }; static const unsigned char xdh_wei448_2267_sharedsecret[] = { 0xe1, 0x84, 0xf6, 0xc8, 0x85, 0x0e, 0xed, 0x31, 0xeb, 0x28, 0x0f, 0x4c, 0xb9, 0xa5, 0x1b, 0x8b, 0xbe, 0x87, 0xe2, 0x08, 0x53, 0xf1, 0xb6, 0x65, 0x86, 0x78, 0xfc, 0xa0, 0xa9, 0xa3, 0x3f, 0x74, 0xd6, 0x2b, 0x36, 0x2e, 0x64, 0x3c, 0x24, 0x23, 0x3c, 0xfb, 0x44, 0x4a, 0x01, 0x0c, 0x96, 0x04, 0xec, 0x59, 0x97, 0xbd, 0xae, 0x1d, 0xeb, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2267 = { .name = "xdh_wei448_2267", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2267_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2267_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2267_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 195 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2268 for XDH, tcId is 196 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2268_peerpubkey[] = { 0xc7, 0x68, 0x07, 0x37, 0x27, 0xc7, 0x65, 0x5e, 0xdd, 0xa7, 0xfa, 0xfe, 0x7a, 0x0a, 0xd7, 0xcb, 0x06, 0xc5, 0x41, 0xfe, 0x64, 0x94, 0xb8, 0xf3, 0x37, 0x4c, 0x55, 0xa9, 0x17, 0xe5, 0xc3, 0xfc, 0xf7, 0x46, 0x71, 0xf3, 0xda, 0x77, 0x38, 0x16, 0x9e, 0x57, 0xf6, 0x8d, 0xc0, 0x32, 0x13, 0x49, 0x1c, 0x8b, 0x17, 0xc0, 0xce, 0x5a, 0x18, 0x70, }; static const unsigned char xdh_wei448_2268_privkey[] = { 0xcc, 0x0d, 0x0c, 0x74, 0x08, 0x60, 0x16, 0x60, 0x9a, 0x02, 0xb6, 0x8e, 0x7e, 0xe7, 0x31, 0xa2, 0x80, 0xd9, 0xdf, 0x60, 0x94, 0x83, 0x86, 0xdc, 0x7c, 0xd7, 0xac, 0xdd, 0xb6, 0x9e, 0xbf, 0xc9, 0xb3, 0xf9, 0x6f, 0x60, 0x33, 0xd1, 0x03, 0xd4, 0xcc, 0x08, 0x61, 0x30, 0x6b, 0x96, 0xb5, 0xb5, 0xbd, 0xf4, 0xe1, 0x22, 0x13, 0xe4, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_2268_sharedsecret[] = { 0xb7, 0xd8, 0xdb, 0xad, 0xfd, 0xcd, 0xe8, 0xa6, 0x77, 0x18, 0x06, 0xd0, 0x95, 0x87, 0x99, 0xdf, 0x01, 0x6b, 0x4e, 0xb7, 0x30, 0x94, 0x9f, 0xa3, 0x76, 0x15, 0x6c, 0x65, 0xd4, 0xe5, 0x9f, 0x43, 0x96, 0x2f, 0xad, 0x95, 0xc3, 0x4b, 0xe8, 0x62, 0xa3, 0x9d, 0x67, 0xb6, 0xd0, 0x00, 0xee, 0x26, 0xdd, 0x10, 0xd2, 0x45, 0x27, 0x29, 0x53, 0x28, }; static const wycheproof_xdh_test xdh_wei448_2268 = { .name = "xdh_wei448_2268", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2268_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2268_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2268_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 196 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2269 for XDH, tcId is 197 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2269_peerpubkey[] = { 0x43, 0x3a, 0xfd, 0xd0, 0xe0, 0x22, 0x37, 0x56, 0x87, 0x7f, 0x23, 0x81, 0x2b, 0xa1, 0x06, 0x14, 0x52, 0xb2, 0xea, 0x7b, 0xb3, 0x12, 0x87, 0xcb, 0x61, 0xc7, 0x93, 0x35, 0xbc, 0x9b, 0xe1, 0xf0, 0xa3, 0xa3, 0x4b, 0xf4, 0xb5, 0xb3, 0x5e, 0x36, 0x25, 0xe2, 0x28, 0xec, 0xeb, 0x8c, 0x6d, 0x7a, 0xea, 0x57, 0xcb, 0x18, 0xaf, 0x80, 0x8f, 0xdb, }; static const unsigned char xdh_wei448_2269_privkey[] = { 0x5c, 0x1c, 0x65, 0x76, 0x62, 0x17, 0x1f, 0x6e, 0x2f, 0xcb, 0xe1, 0xab, 0x8c, 0x94, 0x02, 0xed, 0x22, 0xf2, 0x16, 0x5d, 0xa3, 0xdd, 0x8b, 0x27, 0x04, 0x92, 0x47, 0x49, 0x07, 0x7e, 0xf8, 0x96, 0x93, 0x04, 0x5b, 0xd6, 0xc5, 0x28, 0x4e, 0x6b, 0xf6, 0x9a, 0xd1, 0x4d, 0x34, 0xe3, 0xa2, 0xb8, 0xb4, 0x31, 0x48, 0x09, 0x59, 0x20, 0x24, 0xc4, }; static const unsigned char xdh_wei448_2269_sharedsecret[] = { 0x5e, 0x11, 0x31, 0x9b, 0xad, 0xa5, 0x84, 0xd0, 0xfc, 0xfc, 0x13, 0x73, 0xb2, 0x84, 0x2b, 0x2c, 0x9a, 0x07, 0xde, 0xb2, 0x02, 0x40, 0x29, 0xab, 0xbb, 0x60, 0xb1, 0x73, 0x67, 0x1a, 0xe4, 0x7e, 0x5d, 0xb5, 0x10, 0x9b, 0x6b, 0x0f, 0x1a, 0x26, 0xbc, 0xb7, 0x2a, 0x99, 0x7e, 0x5e, 0xd4, 0x47, 0xb8, 0xf8, 0x10, 0x58, 0xdd, 0xff, 0x13, 0x66, }; static const wycheproof_xdh_test xdh_wei448_2269 = { .name = "xdh_wei448_2269", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2269_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2269_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2269_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 197 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2270 for XDH, tcId is 198 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2270_peerpubkey[] = { 0x5c, 0x24, 0xfa, 0xde, 0x43, 0x6b, 0x48, 0xe5, 0x8e, 0x11, 0x34, 0x97, 0xd6, 0x5e, 0x50, 0xa6, 0x3c, 0xaa, 0x04, 0x94, 0x06, 0xa4, 0x0f, 0x8e, 0x97, 0x2b, 0x51, 0x6c, 0x43, 0xfd, 0xdb, 0x1f, 0x13, 0xa5, 0x9f, 0x30, 0x11, 0x2c, 0x41, 0x7c, 0xde, 0x5c, 0xd6, 0x49, 0xee, 0x9c, 0xdf, 0xcf, 0x07, 0xe6, 0x67, 0x84, 0x70, 0xb6, 0xfa, 0xdb, }; static const unsigned char xdh_wei448_2270_privkey[] = { 0xb0, 0xb9, 0xe0, 0xa0, 0xe7, 0xfb, 0x7f, 0x8c, 0xee, 0x5e, 0xed, 0x31, 0x0f, 0x8b, 0x1a, 0x56, 0xed, 0x78, 0x35, 0xb7, 0xd3, 0x1e, 0x67, 0x67, 0x16, 0xe5, 0xa9, 0x4c, 0xd9, 0xa6, 0x8d, 0xde, 0x28, 0xc9, 0x46, 0xe7, 0xd2, 0xba, 0x83, 0x34, 0xd3, 0x91, 0x32, 0x80, 0x51, 0xff, 0xfd, 0xbf, 0x57, 0x44, 0x7e, 0x3a, 0xa5, 0x6f, 0xdb, 0xfe, }; static const unsigned char xdh_wei448_2270_sharedsecret[] = { 0x5b, 0x6a, 0xc4, 0xd3, 0x8f, 0x9d, 0x67, 0x22, 0xaf, 0x38, 0x87, 0x99, 0x92, 0xf5, 0x52, 0x06, 0xc2, 0x3b, 0x99, 0xe0, 0xc3, 0x02, 0x87, 0x8a, 0x37, 0x25, 0xd8, 0x95, 0xbf, 0x93, 0x5a, 0x36, 0xf3, 0x40, 0xc9, 0x02, 0x8f, 0x7c, 0x56, 0x23, 0x98, 0xba, 0x97, 0x0c, 0x1c, 0x66, 0x1b, 0x2e, 0x37, 0x93, 0xd3, 0x3a, 0x56, 0xe6, 0xab, 0x04, }; static const wycheproof_xdh_test xdh_wei448_2270 = { .name = "xdh_wei448_2270", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2270_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2270_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2270_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 198 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2271 for XDH, tcId is 199 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2271_peerpubkey[] = { 0xb0, 0xda, 0xb2, 0xd1, 0x3d, 0xbe, 0x2b, 0xdc, 0x02, 0x84, 0x85, 0x55, 0x0c, 0xd6, 0x01, 0x2f, 0x05, 0x3b, 0xd3, 0x34, 0xe5, 0x83, 0x79, 0x66, 0x13, 0x98, 0x57, 0xa7, 0x06, 0xfe, 0xff, 0x56, 0x97, 0x44, 0xfd, 0xaf, 0xea, 0xf4, 0x23, 0x30, 0xcb, 0x68, 0xb0, 0x3f, 0x34, 0xfb, 0xb0, 0xa0, 0x44, 0x34, 0xdf, 0x1a, 0x45, 0x22, 0x1b, 0xf7, }; static const unsigned char xdh_wei448_2271_privkey[] = { 0xb4, 0x44, 0x9e, 0x88, 0x35, 0x52, 0x26, 0x79, 0x06, 0xf1, 0x53, 0xb6, 0x9e, 0x10, 0x8f, 0xe4, 0x4d, 0x03, 0xce, 0xd2, 0x2c, 0x52, 0x94, 0xca, 0xb5, 0x82, 0x0a, 0xce, 0x87, 0xab, 0x2e, 0xcf, 0x7b, 0x1e, 0x15, 0xea, 0x4f, 0x5f, 0x00, 0xef, 0x6f, 0x48, 0xfc, 0x99, 0x2c, 0xcd, 0xc7, 0xfa, 0x5e, 0xf4, 0x63, 0xf3, 0xc1, 0x48, 0x9e, 0xe5, }; static const unsigned char xdh_wei448_2271_sharedsecret[] = { 0xb5, 0x43, 0xcd, 0xdd, 0xe7, 0x44, 0x33, 0xde, 0x82, 0xad, 0xa4, 0xff, 0xa2, 0xaa, 0xe1, 0x5c, 0xf4, 0xfb, 0x34, 0xcc, 0xda, 0xe6, 0x61, 0x3a, 0x7a, 0x96, 0x1e, 0xef, 0xa6, 0xe0, 0x88, 0x7f, 0x59, 0x9e, 0x55, 0xaf, 0x54, 0x48, 0xc7, 0xbd, 0x5b, 0x01, 0xae, 0xfb, 0x47, 0xbb, 0xa8, 0xd6, 0x92, 0x4a, 0xf5, 0x12, 0x36, 0xbf, 0x93, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2271 = { .name = "xdh_wei448_2271", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2271_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2271_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2271_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 199 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2272 for XDH, tcId is 200 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2272_peerpubkey[] = { 0xc2, 0x75, 0x46, 0x67, 0x80, 0xe7, 0x56, 0x0c, 0x46, 0x6a, 0xf8, 0x66, 0xe0, 0x61, 0xf6, 0x76, 0x7d, 0xbf, 0x18, 0xb4, 0x14, 0x96, 0x40, 0x2b, 0xc1, 0x55, 0x02, 0x28, 0xa3, 0xd0, 0x5e, 0x96, 0x92, 0xb2, 0x7c, 0xcc, 0xa2, 0xb7, 0x3b, 0xa4, 0x8c, 0x06, 0x38, 0xd9, 0x5f, 0xdb, 0x54, 0x6f, 0xa8, 0xa6, 0x61, 0xbe, 0xed, 0xcb, 0xc4, 0x13, }; static const unsigned char xdh_wei448_2272_privkey[] = { 0xd4, 0xf3, 0xf2, 0xdd, 0x24, 0x56, 0x23, 0x45, 0x52, 0x99, 0xcc, 0xa0, 0x37, 0x43, 0x41, 0xaf, 0x75, 0x87, 0x70, 0xa4, 0xad, 0x2f, 0xb1, 0x92, 0x7c, 0x15, 0x07, 0x4a, 0x73, 0x46, 0xa0, 0x9f, 0x41, 0xc9, 0xd1, 0xd6, 0x91, 0x40, 0xfc, 0x81, 0xcc, 0x67, 0xc0, 0x66, 0x66, 0xee, 0x37, 0x60, 0x6a, 0xbc, 0x46, 0x9e, 0x04, 0x62, 0x2a, 0xf6, }; static const unsigned char xdh_wei448_2272_sharedsecret[] = { 0xa8, 0x37, 0xed, 0x51, 0xff, 0x99, 0x28, 0x41, 0x7e, 0x1e, 0x6b, 0x2d, 0xc9, 0x27, 0xc4, 0x4b, 0x59, 0xe1, 0xa7, 0x6d, 0xa7, 0x86, 0x4b, 0x65, 0xfd, 0x12, 0x67, 0x09, 0x82, 0x2c, 0x7d, 0x8d, 0x93, 0x9e, 0x77, 0x78, 0xdc, 0x8f, 0xd8, 0x1c, 0xd3, 0x0b, 0x6c, 0x1d, 0x62, 0x1f, 0xbc, 0x2d, 0xa0, 0x07, 0x0e, 0xc2, 0x0e, 0xdf, 0x5e, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2272 = { .name = "xdh_wei448_2272", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2272_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2272_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2272_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 200 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2273 for XDH, tcId is 201 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2273_peerpubkey[] = { 0xe8, 0x8e, 0x97, 0x65, 0xa7, 0x61, 0x4e, 0x1b, 0xb8, 0xf9, 0x7f, 0xef, 0x3b, 0x3b, 0xcb, 0x99, 0xe0, 0x5e, 0x15, 0x96, 0x1b, 0x69, 0x39, 0xf6, 0x02, 0x2e, 0x5a, 0x32, 0xc4, 0x88, 0xa8, 0x71, 0x80, 0x62, 0x93, 0xd7, 0x6e, 0x32, 0xe3, 0x93, 0x15, 0x7a, 0x95, 0xfc, 0xe8, 0xed, 0xa8, 0x34, 0x15, 0x40, 0xc4, 0xd4, 0x9c, 0xdd, 0xc3, 0x3f, }; static const unsigned char xdh_wei448_2273_privkey[] = { 0x88, 0xc6, 0x5b, 0xf5, 0xb0, 0xe2, 0x14, 0x74, 0x0d, 0xe3, 0x40, 0xf9, 0xbb, 0x56, 0x74, 0xaa, 0x9b, 0xc7, 0x1d, 0x3e, 0xdf, 0x3d, 0x6a, 0xe5, 0x1b, 0x53, 0xc3, 0x92, 0xf4, 0xe2, 0x7b, 0x82, 0x38, 0x93, 0x7e, 0x31, 0xbd, 0xa4, 0xb8, 0xaa, 0x8f, 0xf4, 0x1c, 0xe9, 0x8f, 0x45, 0x7e, 0x62, 0xfc, 0x97, 0x61, 0xb7, 0xd3, 0x2d, 0x61, 0xfc, }; static const unsigned char xdh_wei448_2273_sharedsecret[] = { 0x79, 0xc3, 0x10, 0x61, 0x37, 0x1a, 0xe6, 0xa2, 0x37, 0x42, 0x48, 0x29, 0x9c, 0x2f, 0x53, 0x2e, 0x33, 0xf4, 0x0d, 0x4e, 0x3f, 0x34, 0x18, 0xd3, 0xaa, 0x51, 0x53, 0xd9, 0x45, 0x0c, 0x3d, 0x62, 0xa6, 0xf4, 0x88, 0x30, 0x81, 0x4b, 0xb2, 0xf2, 0xe9, 0x63, 0x63, 0xb8, 0x9d, 0xe8, 0x34, 0x00, 0x68, 0x12, 0xd9, 0x41, 0xe4, 0x2d, 0xd6, 0x38, }; static const wycheproof_xdh_test xdh_wei448_2273 = { .name = "xdh_wei448_2273", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2273_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2273_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2273_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 201 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2274 for XDH, tcId is 202 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2274_peerpubkey[] = { 0x8c, 0x42, 0xb7, 0xe3, 0x7b, 0x44, 0xaf, 0xcc, 0x09, 0x01, 0x0d, 0x97, 0xad, 0x6e, 0x1b, 0x78, 0x94, 0x01, 0x3d, 0x37, 0x7c, 0x5c, 0x2f, 0x1a, 0x75, 0xe9, 0x62, 0x8d, 0xd6, 0x23, 0x91, 0x88, 0x90, 0xca, 0x5f, 0x28, 0x48, 0x82, 0xec, 0x10, 0xc9, 0x37, 0x66, 0xf8, 0xe7, 0xd6, 0xc0, 0x60, 0x55, 0x49, 0x76, 0x46, 0x0b, 0x56, 0xe6, 0x72, }; static const unsigned char xdh_wei448_2274_privkey[] = { 0x4c, 0xee, 0x71, 0x80, 0xf9, 0x3c, 0x8e, 0xb7, 0xae, 0x9e, 0x7c, 0x2a, 0xd7, 0x1c, 0x0c, 0x95, 0xb9, 0x34, 0x91, 0xc3, 0x01, 0x06, 0xd3, 0x38, 0x52, 0x0d, 0xe7, 0x4e, 0xdb, 0x9a, 0x9c, 0x62, 0x18, 0x98, 0xca, 0x56, 0xf6, 0x37, 0x61, 0x9b, 0x86, 0xbb, 0xb1, 0xef, 0xfb, 0xcd, 0xad, 0x9a, 0x08, 0x04, 0xeb, 0xca, 0x3b, 0xc7, 0x64, 0xd4, }; static const unsigned char xdh_wei448_2274_sharedsecret[] = { 0x26, 0xba, 0x56, 0x2a, 0x13, 0x81, 0x75, 0x59, 0xa2, 0x1a, 0xba, 0x7a, 0x7f, 0xfd, 0xc9, 0x24, 0xe9, 0x0d, 0xbb, 0x2c, 0xd3, 0x25, 0xb6, 0x1f, 0x8f, 0x71, 0x63, 0xa5, 0x7e, 0xe0, 0x13, 0x69, 0xa3, 0xee, 0x29, 0x7e, 0xb3, 0x98, 0xe8, 0x39, 0x3e, 0xf9, 0x3b, 0x00, 0x27, 0x66, 0x85, 0x2b, 0x18, 0x2b, 0x61, 0x68, 0xfb, 0x59, 0xf5, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_2274 = { .name = "xdh_wei448_2274", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2274_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2274_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2274_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 202 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2275 for XDH, tcId is 203 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2275_peerpubkey[] = { 0xc6, 0xfc, 0x42, 0xbb, 0x4b, 0x0e, 0xb8, 0x08, 0x16, 0xd7, 0xd2, 0xa3, 0x6d, 0x6d, 0xdc, 0xdd, 0xa2, 0x88, 0xdc, 0xb7, 0x4f, 0xf5, 0xa6, 0x08, 0x69, 0x89, 0x22, 0xe8, 0xa4, 0x36, 0x5c, 0xf1, 0x0c, 0x99, 0x63, 0x7d, 0xf5, 0x5e, 0x49, 0x13, 0x83, 0xe3, 0x37, 0x85, 0x39, 0xf9, 0x05, 0x3c, 0xae, 0xc0, 0x82, 0x00, 0xab, 0xa8, 0x85, 0x9d, }; static const unsigned char xdh_wei448_2275_privkey[] = { 0x8c, 0x94, 0x27, 0xed, 0x2a, 0x45, 0x6c, 0xad, 0x50, 0x18, 0xa7, 0xf6, 0xfb, 0xd2, 0xa3, 0x03, 0xd5, 0x8a, 0x6d, 0x90, 0xf1, 0xbc, 0x6c, 0x14, 0x82, 0x01, 0xac, 0xae, 0x16, 0x1c, 0x47, 0xbf, 0x25, 0xa0, 0x99, 0x56, 0x98, 0x8e, 0xb9, 0xdc, 0x4d, 0x25, 0xf9, 0x23, 0xcb, 0x61, 0xe1, 0x7e, 0x07, 0x4c, 0xfd, 0x76, 0x2b, 0x82, 0xdb, 0xc6, }; static const unsigned char xdh_wei448_2275_sharedsecret[] = { 0x0c, 0x38, 0xc7, 0x52, 0xcf, 0x0b, 0x55, 0x73, 0x3b, 0x27, 0xeb, 0xc4, 0xe1, 0x1a, 0x68, 0x7e, 0x61, 0x81, 0x9a, 0xef, 0x50, 0x3e, 0x40, 0xbc, 0xbb, 0xc9, 0x14, 0xd1, 0x68, 0x85, 0x97, 0x02, 0x14, 0x4b, 0x0c, 0xf8, 0xe6, 0x16, 0x7e, 0x74, 0x8b, 0xc3, 0x30, 0xc0, 0x2d, 0x14, 0xa1, 0xcb, 0x53, 0x6e, 0x79, 0xb2, 0x3b, 0x3e, 0x28, 0x46, }; static const wycheproof_xdh_test xdh_wei448_2275 = { .name = "xdh_wei448_2275", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2275_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2275_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2275_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 203 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2276 for XDH, tcId is 204 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2276_peerpubkey[] = { 0x71, 0xf3, 0xb6, 0x2f, 0xbe, 0x3c, 0xf0, 0x5f, 0xde, 0x7a, 0x1e, 0x29, 0xdf, 0x2b, 0x7d, 0x25, 0xb0, 0xbe, 0x60, 0x54, 0x63, 0x94, 0x8e, 0xb6, 0xa7, 0x8f, 0x79, 0x04, 0x1a, 0x58, 0x77, 0x2c, 0xc5, 0x2c, 0xaf, 0xa5, 0x4a, 0x3d, 0x18, 0x7d, 0xbc, 0x9e, 0xa0, 0xb9, 0x88, 0xce, 0x57, 0xa5, 0x6c, 0x50, 0x99, 0x3c, 0x19, 0x0a, 0xce, 0xc2, }; static const unsigned char xdh_wei448_2276_privkey[] = { 0x74, 0xb0, 0x8f, 0x37, 0x3f, 0xe6, 0x63, 0xd3, 0x82, 0x16, 0xbc, 0x3a, 0x29, 0xca, 0x5b, 0x43, 0x3b, 0x6f, 0x63, 0xe4, 0xbd, 0x0a, 0xfa, 0xaf, 0xb1, 0x35, 0xca, 0x13, 0x48, 0x0a, 0x96, 0xb2, 0x11, 0xae, 0xeb, 0xbe, 0x8c, 0x7f, 0x54, 0x3f, 0xf8, 0xaf, 0xe0, 0xc5, 0x7a, 0xc0, 0xcc, 0x66, 0xf0, 0x92, 0xfa, 0x32, 0x78, 0xd4, 0x1f, 0xfc, }; static const unsigned char xdh_wei448_2276_sharedsecret[] = { 0x10, 0x63, 0x07, 0x86, 0x6f, 0x10, 0x44, 0x10, 0x7a, 0xfd, 0xaa, 0xde, 0xb4, 0x4e, 0x7b, 0x33, 0x42, 0x2d, 0x0b, 0x8b, 0xbe, 0x17, 0x0d, 0x0d, 0xc0, 0x6f, 0xc5, 0xd4, 0x03, 0x51, 0x17, 0xbf, 0x24, 0xd3, 0xc6, 0x0c, 0xaa, 0xe8, 0x84, 0x9c, 0x1a, 0x89, 0x26, 0xe4, 0x8e, 0x8e, 0x8c, 0xbc, 0x19, 0xf3, 0x66, 0x2e, 0x0d, 0x02, 0x32, 0x09, }; static const wycheproof_xdh_test xdh_wei448_2276 = { .name = "xdh_wei448_2276", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2276_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2276_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2276_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 204 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2277 for XDH, tcId is 205 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2277_peerpubkey[] = { 0x16, 0x9d, 0x97, 0xbb, 0x31, 0x55, 0xa7, 0x0d, 0x50, 0xce, 0xee, 0x28, 0xb4, 0x23, 0xf2, 0x6e, 0x8e, 0x32, 0x56, 0x64, 0x9b, 0xd9, 0x90, 0x2c, 0x3c, 0xaa, 0x76, 0xd5, 0x3c, 0x40, 0xdb, 0x66, 0x12, 0x12, 0x53, 0x16, 0x1a, 0x53, 0x3e, 0x9f, 0x02, 0x83, 0x01, 0x97, 0xd4, 0x1d, 0xb3, 0xe1, 0x1c, 0x9c, 0xc2, 0xd3, 0xb3, 0x4e, 0xfe, 0x1d, }; static const unsigned char xdh_wei448_2277_privkey[] = { 0x94, 0x0c, 0xa8, 0xb8, 0x03, 0x4f, 0xe7, 0xbe, 0x8f, 0x18, 0xc5, 0x1b, 0x94, 0xbf, 0xb7, 0x69, 0x07, 0x1e, 0xf1, 0x1c, 0x8d, 0xa0, 0xab, 0x22, 0x0f, 0xbf, 0x70, 0xd2, 0x8b, 0x4c, 0xe0, 0x32, 0x67, 0x5d, 0x9b, 0xf8, 0x0b, 0xaa, 0x68, 0x9a, 0xa7, 0x92, 0x8b, 0x7d, 0x11, 0xcc, 0x1a, 0xf4, 0x80, 0x54, 0x24, 0x50, 0x76, 0xf6, 0xc1, 0xc8, }; static const unsigned char xdh_wei448_2277_sharedsecret[] = { 0xbc, 0xb2, 0xc7, 0xf5, 0xb7, 0x9f, 0x87, 0x4f, 0xbb, 0x53, 0xee, 0x23, 0x86, 0x37, 0x29, 0x55, 0x52, 0x80, 0xad, 0x03, 0xab, 0xdf, 0xa3, 0x50, 0xb0, 0x86, 0xc3, 0xf8, 0xd6, 0x58, 0xdd, 0x6e, 0xfe, 0x43, 0x08, 0x7b, 0xdc, 0x51, 0x6a, 0x10, 0xb5, 0x02, 0x26, 0x42, 0xc1, 0x20, 0xb3, 0xb2, 0x83, 0x3c, 0x7b, 0xf1, 0x35, 0xb9, 0x1a, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2277 = { .name = "xdh_wei448_2277", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2277_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2277_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2277_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 205 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2278 for XDH, tcId is 206 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2278_peerpubkey[] = { 0x68, 0x1c, 0xad, 0x6f, 0x89, 0xe7, 0xc7, 0xcc, 0x9a, 0x39, 0x9b, 0x53, 0xe0, 0x95, 0xef, 0xed, 0x7f, 0x28, 0x67, 0x71, 0x35, 0x58, 0x47, 0xfb, 0x9f, 0x2d, 0x47, 0x5a, 0x17, 0xed, 0x2c, 0xb5, 0xd4, 0x2a, 0xc3, 0xb0, 0x6a, 0x9d, 0x54, 0xef, 0xc8, 0xe0, 0x4c, 0x7e, 0xa0, 0x3d, 0xed, 0x4e, 0x0a, 0x13, 0xa8, 0x39, 0xa4, 0x18, 0x55, 0x52, }; static const unsigned char xdh_wei448_2278_privkey[] = { 0xb4, 0xfc, 0x0a, 0xd3, 0x1e, 0xe4, 0x5f, 0xe9, 0x6d, 0x78, 0xa1, 0x42, 0xfd, 0xaa, 0xee, 0xa4, 0x88, 0x74, 0xc1, 0x3e, 0x50, 0xb3, 0xcc, 0x1b, 0x21, 0x25, 0x65, 0x5b, 0x0e, 0x6c, 0xdd, 0x0f, 0x0f, 0xcf, 0x05, 0xdd, 0xe6, 0xaa, 0x24, 0x81, 0x3d, 0x89, 0xe3, 0x27, 0x7b, 0x74, 0x16, 0x98, 0x2c, 0x63, 0x90, 0x96, 0x2c, 0x58, 0x41, 0xd6, }; static const unsigned char xdh_wei448_2278_sharedsecret[] = { 0x34, 0x4f, 0x21, 0xdc, 0x85, 0xe8, 0x52, 0xe6, 0x37, 0xbb, 0x25, 0x39, 0x93, 0x63, 0xa8, 0x5f, 0x93, 0x99, 0xae, 0xdd, 0x58, 0x75, 0x1f, 0x12, 0x29, 0x54, 0x9f, 0xd5, 0x1f, 0x9b, 0xf3, 0xd4, 0xe3, 0xda, 0x85, 0xb6, 0x33, 0xe9, 0x70, 0xeb, 0xbe, 0x2c, 0xb0, 0xc3, 0x05, 0x0a, 0x8e, 0xfa, 0xd2, 0xc0, 0xdc, 0x1f, 0x12, 0xcf, 0x9e, 0x20, }; static const wycheproof_xdh_test xdh_wei448_2278 = { .name = "xdh_wei448_2278", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2278_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2278_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2278_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 206 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2279 for XDH, tcId is 207 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2279_peerpubkey[] = { 0xfc, 0xea, 0xe5, 0x5f, 0xfb, 0x73, 0xef, 0xab, 0x59, 0x91, 0x43, 0xd5, 0xec, 0xb4, 0xeb, 0x27, 0x3e, 0xac, 0x00, 0x23, 0x98, 0x32, 0x67, 0xce, 0x37, 0x31, 0xd2, 0x59, 0xc4, 0x12, 0x89, 0xa0, 0x64, 0xeb, 0x1e, 0x01, 0x96, 0xf4, 0xb4, 0x21, 0x88, 0x39, 0xd3, 0x8c, 0x2b, 0x2d, 0xa4, 0x56, 0x4d, 0x9c, 0x9c, 0x4e, 0xee, 0xb0, 0x7d, 0x73, }; static const unsigned char xdh_wei448_2279_privkey[] = { 0x98, 0x6d, 0x41, 0x1e, 0x70, 0xc6, 0x75, 0x20, 0x06, 0xdc, 0xeb, 0xa8, 0x2a, 0xeb, 0x3c, 0xf0, 0x67, 0x02, 0xc3, 0x7b, 0x47, 0x01, 0x52, 0xf9, 0x84, 0x3a, 0x0f, 0x79, 0xdc, 0xe4, 0x30, 0x83, 0xde, 0x0a, 0x5b, 0x0b, 0x7d, 0xbc, 0x8d, 0x42, 0xf1, 0x17, 0x5d, 0xa7, 0x91, 0xae, 0x4a, 0x3a, 0xb7, 0x99, 0xaa, 0x42, 0x68, 0x78, 0x64, 0xeb, }; static const unsigned char xdh_wei448_2279_sharedsecret[] = { 0x18, 0x88, 0x4d, 0x24, 0x55, 0x04, 0x78, 0xe7, 0xff, 0x6d, 0xc8, 0xa3, 0xab, 0xe2, 0x14, 0x09, 0x50, 0x1d, 0x10, 0xe5, 0xe7, 0xb3, 0xc0, 0x11, 0x4e, 0x86, 0x6f, 0xcc, 0xf3, 0x28, 0xec, 0x06, 0x8d, 0x9a, 0x71, 0xcf, 0x0c, 0x23, 0x2a, 0xb7, 0x52, 0x0b, 0xc5, 0xff, 0xda, 0xc2, 0xfd, 0x17, 0x6b, 0xf9, 0xd4, 0xc2, 0xd6, 0xd3, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2279 = { .name = "xdh_wei448_2279", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2279_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2279_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2279_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 207 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2280 for XDH, tcId is 208 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2280_peerpubkey[] = { 0xbd, 0xb6, 0xdd, 0x23, 0x57, 0x83, 0x22, 0x3c, 0xcb, 0x04, 0x71, 0x44, 0x02, 0x0b, 0xd7, 0x9b, 0xc4, 0x89, 0x94, 0xfa, 0x0a, 0x2b, 0x83, 0x40, 0x6b, 0x31, 0xf8, 0xbd, 0xe5, 0x68, 0x24, 0x19, 0xa8, 0xd4, 0xd6, 0x51, 0x9f, 0xdb, 0xaa, 0x99, 0x5b, 0x65, 0x88, 0xa7, 0x16, 0x35, 0x28, 0x5e, 0x42, 0xd8, 0x7d, 0x81, 0xb3, 0x1d, 0x7f, 0xef, }; static const unsigned char xdh_wei448_2280_privkey[] = { 0xe0, 0xb3, 0x68, 0x6e, 0x8a, 0x99, 0xb8, 0x97, 0xf2, 0xf6, 0x76, 0xbe, 0xf1, 0x2a, 0x64, 0x4e, 0x5d, 0xa5, 0x72, 0x77, 0x7f, 0x69, 0xde, 0xd3, 0x41, 0xc8, 0xf8, 0x6d, 0x1a, 0x7b, 0x46, 0x30, 0x7f, 0xa2, 0xa6, 0x31, 0x64, 0x65, 0x2a, 0x74, 0x3b, 0x32, 0x1b, 0x31, 0x9a, 0xee, 0x53, 0x48, 0xdf, 0x1e, 0xb7, 0x0e, 0xa1, 0x40, 0x30, 0xea, }; static const unsigned char xdh_wei448_2280_sharedsecret[] = { 0x41, 0xd5, 0x40, 0x37, 0xec, 0xe4, 0x86, 0xf2, 0x1d, 0x64, 0x2e, 0x39, 0xc1, 0xa3, 0x75, 0x4c, 0x1b, 0xd3, 0x72, 0x2a, 0x5f, 0x45, 0x1c, 0xf2, 0xe3, 0x06, 0x5e, 0x0b, 0x74, 0xac, 0x87, 0x86, 0x19, 0x6c, 0xe3, 0x31, 0x61, 0xb5, 0x77, 0xb2, 0x8d, 0x7b, 0x21, 0xa8, 0xfe, 0x30, 0x35, 0x50, 0xea, 0xdc, 0x70, 0xb8, 0xa5, 0xb2, 0x7e, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2280 = { .name = "xdh_wei448_2280", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2280_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2280_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2280_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 208 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2281 for XDH, tcId is 209 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2281_peerpubkey[] = { 0xa2, 0x04, 0x8b, 0xf1, 0x1e, 0x9b, 0x23, 0xc4, 0xef, 0x9c, 0xb5, 0x4e, 0x00, 0x04, 0x4a, 0x25, 0xd0, 0xfa, 0x9d, 0x79, 0x38, 0x66, 0x50, 0xb1, 0x47, 0x2b, 0x06, 0x03, 0x97, 0x89, 0xbf, 0xd6, 0x88, 0x0c, 0xb4, 0x6a, 0x16, 0x5e, 0xd4, 0xb6, 0x5f, 0x6e, 0xb7, 0xac, 0x11, 0x86, 0xae, 0x32, 0xfc, 0x49, 0x82, 0x98, 0x70, 0x4c, 0xeb, 0xf4, }; static const unsigned char xdh_wei448_2281_privkey[] = { 0x28, 0x4a, 0x13, 0xb7, 0x14, 0x6b, 0xef, 0xf2, 0x15, 0xb4, 0xb1, 0x76, 0x22, 0xe2, 0x99, 0x6b, 0xe3, 0x02, 0xb3, 0x82, 0x13, 0x7b, 0xef, 0x0f, 0x12, 0x98, 0x1a, 0xfb, 0xec, 0xb8, 0xe6, 0x32, 0x68, 0x3e, 0x14, 0x64, 0x3a, 0x21, 0x5d, 0xcf, 0x84, 0xd9, 0x66, 0x3b, 0x23, 0x1c, 0x22, 0x01, 0x79, 0x1d, 0xc6, 0xd1, 0x5a, 0xec, 0xc8, 0xf0, }; static const unsigned char xdh_wei448_2281_sharedsecret[] = { 0x5f, 0x17, 0x51, 0xad, 0xb0, 0x29, 0x11, 0x9b, 0x34, 0xb3, 0xac, 0x6a, 0x55, 0x5a, 0x87, 0x1e, 0x72, 0x9c, 0x64, 0x46, 0x94, 0x80, 0xb7, 0x28, 0x5f, 0xfe, 0x8c, 0x6d, 0x39, 0x99, 0x37, 0x73, 0xcd, 0xa2, 0x05, 0xc8, 0xe5, 0xa8, 0x5e, 0xc1, 0x62, 0xb6, 0x4e, 0x54, 0x84, 0xac, 0x3b, 0xab, 0xdf, 0xa4, 0x55, 0xb2, 0x22, 0x34, 0x3a, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_2281 = { .name = "xdh_wei448_2281", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2281_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2281_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2281_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 209 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2282 for XDH, tcId is 210 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2282_peerpubkey[] = { 0x47, 0xe2, 0xf9, 0x07, 0xff, 0xc7, 0x71, 0x9f, 0x0e, 0x10, 0xae, 0x6c, 0x93, 0xa2, 0x37, 0xef, 0xd8, 0x5a, 0x73, 0x35, 0x00, 0x3a, 0x5b, 0x15, 0x8a, 0x6c, 0x63, 0xce, 0xc7, 0xcb, 0x62, 0xba, 0x50, 0x05, 0xc3, 0xfd, 0xc5, 0xc3, 0x70, 0x51, 0xac, 0x1f, 0x38, 0x1f, 0xf6, 0xa1, 0x5b, 0x58, 0xb0, 0x0c, 0x0f, 0x5e, 0xdb, 0x47, 0xa1, 0xfd, }; static const unsigned char xdh_wei448_2282_privkey[] = { 0x84, 0x99, 0x39, 0x9b, 0x48, 0x69, 0x12, 0x6f, 0x19, 0x7c, 0xe3, 0xd9, 0x5f, 0xf6, 0x54, 0x65, 0xe4, 0x73, 0x0d, 0xc1, 0x46, 0x22, 0xbb, 0x1f, 0xf8, 0x84, 0x9a, 0xcb, 0xb0, 0x11, 0x85, 0xdd, 0x53, 0x52, 0x1f, 0x99, 0xed, 0x32, 0x11, 0xfd, 0xe6, 0xd2, 0x31, 0xbf, 0xb3, 0x30, 0x13, 0x25, 0xca, 0x4c, 0xc4, 0x61, 0xf8, 0x10, 0xc5, 0xd7, }; static const unsigned char xdh_wei448_2282_sharedsecret[] = { 0x94, 0xe4, 0xc0, 0x9b, 0xde, 0x5a, 0xc9, 0x72, 0x92, 0x8c, 0xea, 0x74, 0xa0, 0x7d, 0xf4, 0x13, 0x52, 0x92, 0xc5, 0x80, 0xa8, 0x4a, 0xe4, 0x44, 0x25, 0x7f, 0xfe, 0x5c, 0xae, 0xb4, 0xd7, 0x69, 0xe3, 0x2e, 0xdb, 0x41, 0x0f, 0xdb, 0x51, 0xf8, 0x00, 0x38, 0x0d, 0xf7, 0x04, 0xbd, 0x2c, 0x4f, 0x6e, 0x32, 0xcd, 0x5d, 0x20, 0x1b, 0x56, 0x08, }; static const wycheproof_xdh_test xdh_wei448_2282 = { .name = "xdh_wei448_2282", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2282_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2282_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2282_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 210 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2283 for XDH, tcId is 211 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2283_peerpubkey[] = { 0x6f, 0x8f, 0xd6, 0x68, 0x40, 0x33, 0x37, 0xc6, 0xa4, 0x91, 0xfb, 0x82, 0x59, 0x38, 0xa8, 0x68, 0x84, 0x36, 0x5e, 0x0c, 0x7c, 0x21, 0x77, 0x4c, 0x02, 0xa9, 0xd4, 0x33, 0x70, 0xc0, 0x10, 0xec, 0xb0, 0x2c, 0x5b, 0xc1, 0xf6, 0x9a, 0xd2, 0x48, 0x3a, 0xc1, 0xf3, 0xa2, 0x22, 0x7e, 0x91, 0x2f, 0x8b, 0x6b, 0x5d, 0x37, 0x01, 0x91, 0x8d, 0x2d, }; static const unsigned char xdh_wei448_2283_privkey[] = { 0xc8, 0x9b, 0x1c, 0x81, 0xdf, 0x51, 0x7d, 0xe2, 0xa9, 0x44, 0x4e, 0x0c, 0x01, 0xdb, 0xec, 0x8f, 0x69, 0xb6, 0x30, 0x02, 0x75, 0x4c, 0xda, 0x17, 0x3a, 0xdf, 0x30, 0x98, 0xff, 0x6b, 0xe5, 0xd9, 0x47, 0x6c, 0x86, 0x30, 0x29, 0xb8, 0x9a, 0x55, 0x11, 0xce, 0xda, 0x19, 0x9a, 0x93, 0x87, 0x52, 0x18, 0xd7, 0x75, 0x7f, 0xfc, 0xe5, 0x0c, 0xfa, }; static const unsigned char xdh_wei448_2283_sharedsecret[] = { 0xf3, 0xc3, 0x2f, 0xd5, 0xdc, 0xbe, 0xd9, 0x8b, 0x8e, 0xbd, 0xae, 0xe7, 0x2e, 0xbd, 0xa9, 0x85, 0x42, 0x12, 0x53, 0x86, 0x29, 0xad, 0x49, 0x43, 0xbb, 0x32, 0xde, 0x03, 0xbb, 0xcf, 0x61, 0xf9, 0xdf, 0x8a, 0xc3, 0x8b, 0x33, 0xa7, 0x95, 0xcd, 0xf0, 0x1e, 0x3f, 0xbe, 0xb4, 0x3f, 0x36, 0xd8, 0x00, 0x85, 0x3f, 0x18, 0xb8, 0x61, 0x96, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2283 = { .name = "xdh_wei448_2283", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2283_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2283_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2283_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 211 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2284 for XDH, tcId is 212 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2284_peerpubkey[] = { 0x42, 0xb0, 0x87, 0xd5, 0xc0, 0xee, 0x80, 0xc6, 0x83, 0x11, 0x59, 0x2c, 0xe6, 0x00, 0xbe, 0x77, 0x37, 0xce, 0x36, 0xca, 0x1b, 0x09, 0xd5, 0xa0, 0x54, 0x98, 0x70, 0x90, 0xec, 0x2e, 0x69, 0xad, 0xdd, 0xbe, 0xff, 0x91, 0x6d, 0x11, 0xc9, 0x10, 0x26, 0x55, 0x56, 0x05, 0xb7, 0x7d, 0x36, 0xfe, 0x73, 0x84, 0xfd, 0x61, 0x88, 0x64, 0xb7, 0x43, }; static const unsigned char xdh_wei448_2284_privkey[] = { 0x6c, 0xaa, 0xae, 0x34, 0x24, 0x4f, 0xf9, 0xf3, 0x94, 0x42, 0x82, 0xe4, 0x95, 0x1d, 0x33, 0x7c, 0xd2, 0xec, 0x56, 0xc1, 0x18, 0x0d, 0x71, 0x6d, 0x15, 0x21, 0xe6, 0x38, 0x06, 0x23, 0xd7, 0xf6, 0xc9, 0x9b, 0x44, 0x55, 0x8a, 0xb8, 0x9a, 0x4f, 0xbd, 0xfc, 0x19, 0x10, 0x16, 0xd1, 0x30, 0x8d, 0x3e, 0xf4, 0xf8, 0x59, 0xcc, 0xde, 0xbc, 0xc1, }; static const unsigned char xdh_wei448_2284_sharedsecret[] = { 0x8b, 0xe1, 0xe0, 0x2f, 0x5c, 0x4b, 0x54, 0xaf, 0x63, 0x60, 0xfb, 0x2f, 0x60, 0xfb, 0xbf, 0x71, 0xb1, 0xbe, 0x92, 0xeb, 0xb3, 0x01, 0x17, 0xc6, 0x3b, 0x18, 0xef, 0x41, 0xfe, 0x6f, 0x1d, 0x95, 0xa2, 0xa5, 0x7f, 0xfe, 0x0a, 0x77, 0xff, 0xff, 0xaa, 0x33, 0x01, 0x99, 0x4c, 0x60, 0x22, 0xfa, 0xf2, 0x7f, 0x2a, 0xf0, 0x6a, 0x54, 0x7b, 0x20, }; static const wycheproof_xdh_test xdh_wei448_2284 = { .name = "xdh_wei448_2284", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2284_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2284_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2284_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 212 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2285 for XDH, tcId is 213 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2285_peerpubkey[] = { 0x7b, 0x01, 0x86, 0xa1, 0x53, 0xdc, 0x52, 0x44, 0x47, 0x46, 0xdd, 0x18, 0x5b, 0x9e, 0xa2, 0x74, 0xc3, 0x97, 0x2a, 0xdb, 0x97, 0x37, 0x9f, 0x85, 0x80, 0x13, 0xda, 0x1e, 0x97, 0xa8, 0x3a, 0xf4, 0xb4, 0xd1, 0xda, 0xd2, 0xfe, 0x6d, 0xbd, 0x82, 0x3a, 0xb8, 0x28, 0x70, 0x29, 0xfc, 0x77, 0x17, 0xc8, 0xdc, 0x75, 0x10, 0xca, 0x4d, 0x45, 0x6c, }; static const unsigned char xdh_wei448_2285_privkey[] = { 0x68, 0x37, 0xe4, 0xbc, 0x8b, 0xdf, 0x43, 0xcd, 0x1a, 0x59, 0xeb, 0x1d, 0x7e, 0xe7, 0x4d, 0xa9, 0x7c, 0x5a, 0xaf, 0x7f, 0xdc, 0x89, 0x9e, 0x86, 0x07, 0x72, 0x0b, 0xd3, 0xff, 0x9f, 0x06, 0x0a, 0xcf, 0xcb, 0x3d, 0xb4, 0xec, 0x7f, 0x1e, 0x7b, 0xda, 0x47, 0x30, 0xc9, 0x72, 0xc7, 0x4c, 0x1e, 0xf3, 0x10, 0x6a, 0xfa, 0xab, 0xf3, 0x05, 0xf9, }; static const unsigned char xdh_wei448_2285_sharedsecret[] = { 0x96, 0xb3, 0x6c, 0x86, 0x51, 0x89, 0x15, 0x79, 0x93, 0x7f, 0x5c, 0x6e, 0x16, 0xd2, 0x71, 0x44, 0xa0, 0x37, 0x09, 0xb3, 0x39, 0xee, 0xda, 0xe5, 0x95, 0xb5, 0xe3, 0xbc, 0x98, 0xf2, 0xf8, 0x9f, 0xdc, 0xd7, 0xb2, 0x2c, 0x88, 0x9c, 0x60, 0xd4, 0xcb, 0xa3, 0x0b, 0x7a, 0x15, 0x07, 0x63, 0xf2, 0x92, 0xae, 0x31, 0x8b, 0xc9, 0xd0, 0x66, 0x92, }; static const wycheproof_xdh_test xdh_wei448_2285 = { .name = "xdh_wei448_2285", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2285_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2285_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2285_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 213 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2286 for XDH, tcId is 214 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2286_peerpubkey[] = { 0x07, 0xac, 0x3e, 0xdd, 0x9d, 0xaf, 0x1f, 0x5f, 0x4c, 0x8d, 0x95, 0x05, 0x66, 0xe5, 0xa0, 0x9a, 0xf8, 0x03, 0x54, 0x20, 0x12, 0x2d, 0x33, 0x55, 0xb1, 0xa7, 0x79, 0x66, 0xe8, 0x94, 0x64, 0xe4, 0xbb, 0x22, 0x19, 0x5d, 0xbd, 0x45, 0x68, 0xc0, 0xc8, 0xdb, 0x33, 0x0d, 0xf3, 0x80, 0xa8, 0xd1, 0x0b, 0xe8, 0xe7, 0x07, 0xd2, 0x41, 0xfb, 0xad, }; static const unsigned char xdh_wei448_2286_privkey[] = { 0x40, 0xee, 0x93, 0xef, 0xc8, 0x0c, 0x29, 0xea, 0xf9, 0xef, 0x1f, 0x84, 0xa9, 0x4b, 0xc2, 0xcd, 0xa8, 0xe1, 0xcb, 0x4c, 0x9d, 0x96, 0xb5, 0x91, 0x8b, 0x67, 0x3b, 0x65, 0x1d, 0xf4, 0xbd, 0x86, 0xce, 0x47, 0x78, 0x46, 0x8d, 0x6f, 0x77, 0x81, 0x93, 0x23, 0x6d, 0x74, 0x93, 0x80, 0x5f, 0xe4, 0x1e, 0x12, 0xd0, 0x87, 0x8a, 0x78, 0x88, 0xe4, }; static const unsigned char xdh_wei448_2286_sharedsecret[] = { 0xa4, 0xcf, 0x91, 0xac, 0xae, 0xac, 0xfd, 0x98, 0xcd, 0xea, 0xec, 0x54, 0xb2, 0xb9, 0x5d, 0x88, 0x51, 0xe0, 0x6b, 0xcd, 0xb0, 0x3b, 0x5b, 0x42, 0xf9, 0xc5, 0xb5, 0x97, 0xee, 0xbc, 0x35, 0x86, 0x8e, 0x48, 0x13, 0x18, 0x66, 0xc7, 0x4e, 0x9f, 0x9a, 0x15, 0xcf, 0x1b, 0x8c, 0xe5, 0x69, 0x2b, 0xc0, 0x93, 0xe7, 0x76, 0xd5, 0x50, 0xa1, 0x38, }; static const wycheproof_xdh_test xdh_wei448_2286 = { .name = "xdh_wei448_2286", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2286_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2286_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2286_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 214 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2287 for XDH, tcId is 215 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2287_peerpubkey[] = { 0x5c, 0xd9, 0x56, 0x61, 0x49, 0x5a, 0xa5, 0x05, 0xae, 0xc5, 0x5b, 0x5f, 0x93, 0xcd, 0xf0, 0x0b, 0x84, 0x56, 0xad, 0x61, 0x6e, 0x71, 0x61, 0xac, 0x2d, 0x98, 0x2e, 0x1b, 0xe8, 0x04, 0x7a, 0xaf, 0x34, 0x19, 0x75, 0xfd, 0x91, 0x57, 0xf0, 0xd0, 0xcb, 0xdd, 0x6b, 0xe5, 0x5e, 0x97, 0x10, 0x79, 0x6e, 0xf7, 0x04, 0xae, 0xf1, 0xf1, 0xfb, 0xbe, }; static const unsigned char xdh_wei448_2287_privkey[] = { 0x4c, 0xda, 0x2c, 0xe7, 0x37, 0x20, 0xce, 0x44, 0x80, 0x70, 0x8d, 0x3a, 0x25, 0xce, 0x83, 0x8b, 0xce, 0x6a, 0x92, 0x2a, 0x32, 0xf1, 0x7b, 0x8a, 0xcc, 0x42, 0xff, 0xe0, 0xe8, 0x24, 0x13, 0x69, 0xa9, 0x4b, 0xaa, 0x34, 0x61, 0x58, 0xbf, 0x2e, 0x64, 0x95, 0x6c, 0x22, 0xee, 0xeb, 0xe0, 0x33, 0x9f, 0x2d, 0x48, 0x73, 0xa1, 0x86, 0x00, 0xc1, }; static const unsigned char xdh_wei448_2287_sharedsecret[] = { 0x47, 0xc4, 0x31, 0x3f, 0xa1, 0x95, 0xc3, 0xbc, 0x87, 0x4c, 0x76, 0xc3, 0x82, 0x71, 0xc7, 0x3b, 0xe7, 0x8a, 0x26, 0x53, 0x57, 0x46, 0x45, 0xea, 0xc0, 0x17, 0x97, 0x79, 0x4e, 0x99, 0x17, 0x95, 0x2a, 0xe6, 0xba, 0x3d, 0x12, 0x28, 0x51, 0xd6, 0xd8, 0x10, 0x3f, 0x16, 0x46, 0x03, 0x25, 0xa0, 0x5a, 0x91, 0x6f, 0x81, 0xe7, 0xa0, 0x8e, 0x66, }; static const wycheproof_xdh_test xdh_wei448_2287 = { .name = "xdh_wei448_2287", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2287_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2287_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2287_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 215 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2288 for XDH, tcId is 216 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2288_peerpubkey[] = { 0xd1, 0xf8, 0x70, 0x58, 0xc7, 0x3d, 0x44, 0x60, 0xd7, 0xb0, 0xdc, 0xbc, 0xaf, 0xb2, 0xe2, 0x69, 0x8f, 0x2c, 0xb5, 0x2f, 0x6a, 0x60, 0xc7, 0xd7, 0x80, 0xaa, 0x10, 0x0b, 0xd7, 0xe2, 0x08, 0x63, 0xb5, 0xe2, 0x62, 0xf7, 0xf3, 0x0f, 0x05, 0xe4, 0x30, 0xe8, 0xaf, 0x04, 0x12, 0xe7, 0x8e, 0x43, 0x33, 0xd6, 0xf0, 0x47, 0x64, 0x9e, 0xc2, 0x43, }; static const unsigned char xdh_wei448_2288_privkey[] = { 0x00, 0x60, 0x98, 0xba, 0x9d, 0x67, 0x64, 0x4b, 0x94, 0x22, 0x10, 0xb1, 0x4d, 0x23, 0xed, 0xd2, 0xc7, 0x78, 0xeb, 0xf8, 0x94, 0x70, 0x67, 0xcd, 0x63, 0x95, 0x1a, 0xbf, 0xab, 0xdd, 0x77, 0x53, 0xff, 0xf7, 0x25, 0xb5, 0xfc, 0x5f, 0xe6, 0xd7, 0xf9, 0xa1, 0x2f, 0x49, 0x2c, 0x54, 0x56, 0x58, 0x73, 0x23, 0xa1, 0xcb, 0x1b, 0x05, 0x05, 0xef, }; static const unsigned char xdh_wei448_2288_sharedsecret[] = { 0xab, 0xfb, 0xa9, 0x4e, 0x98, 0xb0, 0xc5, 0x16, 0x4b, 0x25, 0xa8, 0xa4, 0xb9, 0xc6, 0x3a, 0x45, 0xea, 0xa6, 0xc4, 0xa8, 0x1e, 0x25, 0x4a, 0x2b, 0xb4, 0x28, 0x9f, 0xbd, 0x40, 0x3a, 0x69, 0x89, 0xe4, 0x05, 0xa5, 0xee, 0xce, 0x7c, 0x77, 0xc8, 0x66, 0x75, 0x1c, 0x00, 0xdd, 0x40, 0x13, 0x9c, 0x8c, 0xff, 0x1f, 0x48, 0x15, 0x82, 0xa0, 0xe5, }; static const wycheproof_xdh_test xdh_wei448_2288 = { .name = "xdh_wei448_2288", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2288_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2288_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2288_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 216 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2289 for XDH, tcId is 217 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2289_peerpubkey[] = { 0x73, 0xa6, 0x84, 0x20, 0xea, 0xe8, 0xb0, 0x98, 0x5e, 0xca, 0x5e, 0x2a, 0x13, 0x7d, 0x59, 0x0c, 0xeb, 0x16, 0x42, 0x02, 0xf2, 0x0a, 0x70, 0xd4, 0x2c, 0xc4, 0x9c, 0x33, 0x62, 0x8c, 0x55, 0xf2, 0x54, 0xef, 0x2e, 0xd5, 0xdd, 0x26, 0x21, 0x96, 0x36, 0x33, 0xf0, 0x8d, 0x67, 0xb2, 0xcf, 0xfe, 0x02, 0xf7, 0x39, 0x42, 0xc9, 0x48, 0x31, 0x52, }; static const unsigned char xdh_wei448_2289_privkey[] = { 0xcc, 0xc7, 0x0f, 0x6b, 0xf1, 0x65, 0x2f, 0xec, 0xb5, 0xe9, 0x47, 0x14, 0x55, 0xd9, 0x6b, 0x2f, 0x9f, 0xc4, 0x39, 0xf5, 0x52, 0xe2, 0x17, 0xd8, 0xf3, 0x08, 0x95, 0x5f, 0xab, 0x8b, 0xea, 0x9a, 0xa1, 0xa3, 0x79, 0x65, 0xe2, 0xcc, 0xea, 0x25, 0xe1, 0x98, 0x05, 0x1f, 0x38, 0xe9, 0x2d, 0x69, 0x7a, 0x03, 0x9f, 0x8d, 0xa0, 0x13, 0xf6, 0xc2, }; static const unsigned char xdh_wei448_2289_sharedsecret[] = { 0xed, 0x5a, 0xa6, 0x6c, 0xda, 0x6c, 0x0b, 0x9c, 0x6b, 0x40, 0x5e, 0x2b, 0x85, 0xca, 0x76, 0xf0, 0x4e, 0x3c, 0x82, 0x9a, 0x42, 0x6d, 0xe1, 0xf9, 0x12, 0x21, 0xa5, 0x81, 0x75, 0x68, 0x43, 0x0a, 0x8a, 0xdb, 0xfe, 0xbb, 0x87, 0xd8, 0xea, 0x4b, 0xcf, 0xd2, 0x8a, 0x50, 0xec, 0x97, 0x52, 0xb8, 0x06, 0xb4, 0xbc, 0xfe, 0x37, 0x7a, 0x65, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_2289 = { .name = "xdh_wei448_2289", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2289_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2289_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2289_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 217 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2290 for XDH, tcId is 218 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2290_peerpubkey[] = { 0xcc, 0x7e, 0xda, 0xd8, 0xab, 0x05, 0x35, 0x8a, 0x9a, 0x55, 0xe8, 0xbf, 0x20, 0xd9, 0x1e, 0x21, 0x4a, 0x67, 0x9f, 0x42, 0x78, 0x5f, 0xf0, 0x1d, 0x6d, 0xa6, 0x28, 0xee, 0xd1, 0x03, 0x7f, 0x64, 0xcc, 0xde, 0x9e, 0xa7, 0x50, 0x5d, 0x2d, 0x71, 0x20, 0xd7, 0x5b, 0xa5, 0x5b, 0x72, 0x0f, 0xef, 0xd5, 0x5c, 0xe4, 0x8e, 0xbd, 0xf2, 0xac, 0x5a, }; static const unsigned char xdh_wei448_2290_privkey[] = { 0x00, 0xf1, 0x5d, 0xf3, 0xa5, 0xc1, 0x86, 0xd3, 0x53, 0xb4, 0x80, 0xc7, 0x8a, 0x04, 0x5a, 0x77, 0xc9, 0x42, 0x00, 0x20, 0xdd, 0x43, 0xc0, 0x1f, 0x53, 0x61, 0xed, 0x26, 0xfd, 0x7d, 0x4d, 0xcf, 0x42, 0x94, 0x87, 0x0e, 0x77, 0x80, 0xad, 0xf4, 0x09, 0x9f, 0x93, 0x48, 0x72, 0x62, 0x2d, 0x30, 0x83, 0x60, 0x5c, 0xbc, 0x62, 0xb1, 0x8f, 0xd7, }; static const unsigned char xdh_wei448_2290_sharedsecret[] = { 0x04, 0xd2, 0x7f, 0x92, 0x64, 0xdb, 0x8d, 0xb7, 0x61, 0xd0, 0x5e, 0x30, 0x7f, 0xae, 0x84, 0xf2, 0x04, 0x48, 0x0f, 0x54, 0x59, 0xf9, 0xe4, 0x01, 0x30, 0xed, 0x77, 0x5c, 0x10, 0x12, 0xe6, 0x54, 0x11, 0x38, 0x08, 0x1b, 0xd8, 0xe2, 0xb0, 0x28, 0x3b, 0xfa, 0x50, 0x29, 0x57, 0x09, 0x6b, 0xdf, 0x34, 0x1e, 0x3a, 0x1f, 0x8c, 0x74, 0x82, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_2290 = { .name = "xdh_wei448_2290", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2290_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2290_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2290_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 218 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2291 for XDH, tcId is 219 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2291_peerpubkey[] = { 0xa3, 0xbc, 0x34, 0xe9, 0x6d, 0x26, 0xbc, 0x60, 0x44, 0x94, 0x18, 0x0e, 0x1d, 0x71, 0x6a, 0x02, 0x32, 0x74, 0xb0, 0x2a, 0x4a, 0x0c, 0x14, 0x71, 0xc5, 0x00, 0xf3, 0x91, 0x68, 0x98, 0xd3, 0x8e, 0xaf, 0x2e, 0x40, 0xa8, 0x3e, 0xb1, 0x7e, 0xee, 0xee, 0x3b, 0xca, 0x8a, 0xf0, 0x39, 0xe5, 0x7c, 0x50, 0x02, 0x37, 0xcd, 0x23, 0x6e, 0x90, 0xae, }; static const unsigned char xdh_wei448_2291_privkey[] = { 0xc0, 0x80, 0xc5, 0xd2, 0x32, 0x28, 0xf0, 0x63, 0x50, 0x4b, 0x6d, 0x98, 0x6b, 0xfb, 0x7d, 0xef, 0xb2, 0x71, 0x1a, 0x85, 0x7d, 0xaf, 0xb3, 0x31, 0xfe, 0xfd, 0x58, 0xa6, 0x5d, 0x92, 0x01, 0xea, 0xb2, 0x51, 0xd4, 0x7f, 0x25, 0x91, 0x67, 0x08, 0x6e, 0x22, 0xe9, 0x75, 0x9e, 0xc6, 0x56, 0x13, 0x17, 0x11, 0x28, 0x7f, 0xf1, 0x8d, 0xf6, 0xde, }; static const unsigned char xdh_wei448_2291_sharedsecret[] = { 0xff, 0x93, 0x56, 0x08, 0x71, 0xd2, 0x09, 0x94, 0x0c, 0xaf, 0xca, 0xe8, 0xc3, 0x21, 0x3e, 0xaf, 0x57, 0x76, 0x0c, 0x08, 0xaa, 0x80, 0xca, 0xf1, 0x5d, 0x86, 0x9d, 0x21, 0xb4, 0xb6, 0xa5, 0xe0, 0x0f, 0x6f, 0xce, 0x49, 0xef, 0xa1, 0x0a, 0xa1, 0x27, 0x95, 0x65, 0x6a, 0x9e, 0x8c, 0xe8, 0x92, 0x44, 0x45, 0x4c, 0xd5, 0x99, 0xea, 0x74, 0x10, }; static const wycheproof_xdh_test xdh_wei448_2291 = { .name = "xdh_wei448_2291", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2291_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2291_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2291_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 219 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2292 for XDH, tcId is 220 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2292_peerpubkey[] = { 0xdf, 0x65, 0xf6, 0x22, 0x9c, 0x4e, 0x17, 0x2e, 0x16, 0x7d, 0x7f, 0xdf, 0xa5, 0x75, 0xf6, 0xb3, 0xd2, 0x59, 0x23, 0x25, 0xbc, 0xa4, 0xc1, 0x5c, 0xcb, 0x3d, 0xbf, 0xee, 0x79, 0xc5, 0x96, 0x3d, 0xa2, 0x6d, 0x6e, 0x66, 0x7b, 0x6f, 0x5b, 0x06, 0x80, 0x14, 0x4a, 0x7a, 0x0b, 0x7d, 0x7d, 0xd3, 0x03, 0xac, 0xcb, 0x26, 0x97, 0x94, 0xb5, 0xe6, }; static const unsigned char xdh_wei448_2292_privkey[] = { 0x44, 0x75, 0x26, 0x00, 0xc4, 0x67, 0xf9, 0xd8, 0xb3, 0xdb, 0x8e, 0xbc, 0xeb, 0xd1, 0x0a, 0x4a, 0x0c, 0xbc, 0x83, 0x81, 0x90, 0x33, 0x4a, 0xb5, 0x51, 0x36, 0x1b, 0xcc, 0x6b, 0x8e, 0x4a, 0x77, 0x50, 0x4d, 0xdc, 0xf9, 0xd0, 0xf5, 0x66, 0xda, 0x25, 0xf7, 0x5f, 0x92, 0xe9, 0x74, 0xd1, 0xda, 0xde, 0x4e, 0xf0, 0x44, 0xbe, 0xd8, 0x5d, 0xc6, }; static const unsigned char xdh_wei448_2292_sharedsecret[] = { 0xc2, 0x3b, 0x16, 0x2a, 0x2b, 0x47, 0xca, 0x28, 0xdc, 0x52, 0xb9, 0x05, 0x9c, 0xf7, 0x99, 0x9a, 0x69, 0x6f, 0x02, 0x88, 0x49, 0x31, 0x77, 0xbd, 0xa2, 0xcd, 0x1f, 0x62, 0x04, 0x25, 0xb8, 0x3b, 0x7c, 0x50, 0x59, 0x96, 0xe8, 0x93, 0x18, 0x43, 0xa1, 0xd7, 0x0b, 0x33, 0x4b, 0x64, 0x57, 0x4e, 0xde, 0x95, 0x8f, 0x33, 0x1a, 0x81, 0x45, 0xec, }; static const wycheproof_xdh_test xdh_wei448_2292 = { .name = "xdh_wei448_2292", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2292_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2292_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2292_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 220 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2293 for XDH, tcId is 221 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2293_peerpubkey[] = { 0x72, 0x11, 0x28, 0xb0, 0xf6, 0x5d, 0xbc, 0x88, 0x6f, 0xb8, 0xfd, 0x36, 0x6d, 0x68, 0xf7, 0xf9, 0xb5, 0xad, 0xf5, 0xd8, 0xbd, 0x60, 0x90, 0xff, 0x7d, 0x66, 0xc3, 0x84, 0x3f, 0xc1, 0x35, 0x6e, 0x16, 0x1b, 0x69, 0x9b, 0x97, 0x38, 0x02, 0xad, 0x2d, 0x32, 0x9d, 0x9f, 0x71, 0xeb, 0xec, 0x5e, 0xd1, 0xbd, 0x96, 0xf5, 0x30, 0xe3, 0x71, 0x56, }; static const unsigned char xdh_wei448_2293_privkey[] = { 0xc8, 0xb9, 0xca, 0xaf, 0x44, 0x7f, 0xcc, 0xf2, 0xf5, 0xce, 0x33, 0xea, 0xd9, 0xf6, 0x9d, 0x4a, 0x20, 0xd4, 0xfa, 0x61, 0xce, 0xb5, 0xf6, 0xf4, 0x6b, 0x9b, 0xa1, 0xd4, 0x31, 0x85, 0x90, 0x35, 0xc4, 0xc6, 0x5c, 0x3c, 0xcb, 0x24, 0x85, 0xff, 0xee, 0x4e, 0x2a, 0xe3, 0x2a, 0x65, 0x58, 0xcf, 0x6e, 0xa2, 0xe5, 0x7e, 0xd9, 0x89, 0x72, 0xe2, }; static const unsigned char xdh_wei448_2293_sharedsecret[] = { 0x45, 0xa5, 0x70, 0x77, 0x9f, 0xcd, 0x5f, 0x56, 0xd1, 0xfe, 0x79, 0xee, 0xd3, 0x44, 0x84, 0x1c, 0xf7, 0xdb, 0x47, 0x2e, 0x5f, 0x03, 0x9f, 0x23, 0x31, 0x06, 0x6b, 0x5b, 0x37, 0xfb, 0xe1, 0xdf, 0x1b, 0x46, 0x47, 0x2b, 0xf6, 0xe0, 0x6c, 0xcc, 0xac, 0x5e, 0xad, 0x88, 0xba, 0x60, 0x56, 0xe4, 0x55, 0xa7, 0x48, 0x28, 0x3b, 0x12, 0x65, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2293 = { .name = "xdh_wei448_2293", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2293_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2293_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2293_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 221 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2294 for XDH, tcId is 222 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2294_peerpubkey[] = { 0xbd, 0x70, 0xd8, 0xac, 0x19, 0xa9, 0x7c, 0xe5, 0x00, 0x1d, 0x0f, 0xd8, 0x14, 0xe5, 0x9f, 0xd9, 0xdb, 0xbf, 0x0a, 0xe7, 0x4e, 0x82, 0xd9, 0xb7, 0x01, 0xa3, 0x62, 0xb4, 0x59, 0x86, 0x3c, 0xf0, 0xe6, 0x4a, 0xfc, 0x7b, 0x6d, 0x2d, 0xee, 0x51, 0xff, 0xed, 0x49, 0xee, 0xe8, 0x0a, 0xc9, 0x43, 0xa1, 0x3a, 0x53, 0xcb, 0x97, 0xbe, 0xeb, 0x7c, }; static const unsigned char xdh_wei448_2294_privkey[] = { 0x38, 0xca, 0xb1, 0xc7, 0xec, 0xc2, 0xd5, 0x93, 0xe2, 0xe4, 0x6d, 0x94, 0xe6, 0x9a, 0xbf, 0x90, 0x81, 0xb7, 0x70, 0xeb, 0xfd, 0x68, 0xf7, 0x07, 0xf1, 0xdc, 0x53, 0x7b, 0x90, 0xd0, 0x50, 0x83, 0xa1, 0xbe, 0xae, 0x82, 0xe7, 0xc5, 0xbb, 0xdf, 0x47, 0x3c, 0x70, 0x05, 0x32, 0xe1, 0xda, 0xe8, 0x56, 0xa1, 0xcb, 0xcc, 0x6c, 0xa4, 0xb6, 0xc6, }; static const unsigned char xdh_wei448_2294_sharedsecret[] = { 0x91, 0x31, 0x7b, 0xe9, 0x45, 0x6d, 0xa5, 0x2a, 0x89, 0xb5, 0x91, 0x7c, 0x83, 0xe2, 0xdc, 0x39, 0xcb, 0x2c, 0x33, 0x3a, 0x7a, 0xd1, 0x85, 0xe9, 0x9d, 0xe8, 0x5c, 0xa7, 0x4f, 0x2a, 0xca, 0x3a, 0xa1, 0xd6, 0xa1, 0x03, 0x7d, 0x9b, 0x2b, 0x44, 0xfb, 0x96, 0x63, 0x61, 0x8c, 0x78, 0x8c, 0x92, 0x67, 0x80, 0x9c, 0x0b, 0xdb, 0xcf, 0xb6, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_2294 = { .name = "xdh_wei448_2294", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2294_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2294_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2294_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 222 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2295 for XDH, tcId is 223 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2295_peerpubkey[] = { 0x5e, 0xa1, 0xa7, 0xad, 0xe3, 0x1e, 0x31, 0x4d, 0x37, 0x33, 0x5c, 0x25, 0xae, 0x2b, 0x74, 0x8d, 0x8b, 0x22, 0xbf, 0x47, 0x11, 0xdb, 0xdb, 0x5e, 0xbe, 0x17, 0x3f, 0xad, 0xa1, 0x90, 0x70, 0x03, 0x7c, 0x93, 0x50, 0x15, 0x01, 0x68, 0x8b, 0xaa, 0xbc, 0x75, 0xe2, 0xdd, 0x13, 0x19, 0xf1, 0x7e, 0xaa, 0x67, 0x55, 0xf7, 0x17, 0xb9, 0x7e, 0x86, }; static const unsigned char xdh_wei448_2295_privkey[] = { 0xfc, 0x44, 0x95, 0xf0, 0x85, 0xe8, 0x25, 0xdf, 0xb3, 0x8e, 0xe3, 0x84, 0xc9, 0xff, 0x3d, 0xfd, 0x05, 0x85, 0x3d, 0x29, 0xf7, 0x39, 0xd3, 0x03, 0x3c, 0x8f, 0x53, 0x3e, 0x7f, 0xd3, 0x2c, 0xe8, 0x81, 0x04, 0x62, 0x3e, 0x8b, 0x00, 0x44, 0x83, 0x2c, 0x82, 0x52, 0x57, 0xe4, 0xb3, 0x76, 0x51, 0x59, 0x0a, 0x95, 0x19, 0x41, 0x67, 0xa8, 0xce, }; static const unsigned char xdh_wei448_2295_sharedsecret[] = { 0xe8, 0x19, 0x6e, 0x7b, 0x85, 0xe7, 0x57, 0xe2, 0x6e, 0x7a, 0xa8, 0x2c, 0x18, 0xe9, 0x6e, 0x4a, 0xec, 0x58, 0x89, 0xf0, 0xb0, 0x3a, 0xd8, 0xb6, 0x03, 0x63, 0x51, 0x14, 0x87, 0xb6, 0x79, 0x9c, 0xed, 0xb9, 0xc4, 0xc8, 0x79, 0xa9, 0xd9, 0x94, 0x6f, 0xe4, 0x33, 0x5a, 0x73, 0xf0, 0xe9, 0x6b, 0x39, 0xda, 0x7b, 0x95, 0xa4, 0xc9, 0xa9, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_2295 = { .name = "xdh_wei448_2295", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2295_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2295_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2295_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 223 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2296 for XDH, tcId is 224 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2296_peerpubkey[] = { 0x92, 0x52, 0xa3, 0xa0, 0x8e, 0x02, 0x5d, 0x2d, 0x3a, 0x2a, 0xba, 0xf1, 0xb5, 0x77, 0x70, 0x3b, 0x34, 0xc4, 0x59, 0xbd, 0x34, 0x4d, 0xb4, 0xbd, 0x75, 0x86, 0x61, 0x1f, 0x4d, 0xa1, 0x10, 0x41, 0xbe, 0xe4, 0xc3, 0xae, 0xe3, 0x3e, 0x34, 0x38, 0x10, 0xcb, 0xaf, 0x88, 0x90, 0x2e, 0xd8, 0xd3, 0xad, 0xff, 0x25, 0x9d, 0x7d, 0x3c, 0x87, 0xd9, }; static const unsigned char xdh_wei448_2296_privkey[] = { 0x28, 0x1c, 0xb9, 0xf5, 0x2a, 0xc1, 0x40, 0xc6, 0xc5, 0xa9, 0x5c, 0x01, 0xf1, 0x0d, 0x91, 0xa9, 0x32, 0x8d, 0xb2, 0x6d, 0xed, 0xb8, 0x5d, 0xa3, 0xf0, 0x8c, 0x0e, 0xe6, 0x88, 0xfb, 0xfa, 0x5c, 0x05, 0xdd, 0x2e, 0x57, 0xb3, 0x78, 0xfd, 0xe2, 0x13, 0xd3, 0x80, 0x8d, 0x2c, 0xe4, 0xd7, 0xd3, 0xa8, 0x95, 0x8e, 0x55, 0x29, 0x1c, 0x2e, 0xef, }; static const unsigned char xdh_wei448_2296_sharedsecret[] = { 0x2a, 0x01, 0xd7, 0x62, 0xe7, 0x2a, 0xdb, 0x84, 0x7a, 0x5e, 0x99, 0x4a, 0x6e, 0x1d, 0x1a, 0x21, 0x1d, 0xd9, 0xbc, 0xa1, 0x48, 0x78, 0x04, 0xb8, 0x56, 0x3f, 0xfc, 0x40, 0xa5, 0x93, 0x84, 0xce, 0xbf, 0x76, 0xb6, 0xd3, 0x41, 0x1e, 0x1a, 0x9b, 0x53, 0xd4, 0x62, 0xac, 0xab, 0xe3, 0x59, 0xd2, 0x8d, 0x13, 0x4f, 0xe3, 0xe9, 0xad, 0x41, 0x10, }; static const wycheproof_xdh_test xdh_wei448_2296 = { .name = "xdh_wei448_2296", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2296_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2296_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2296_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 224 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2297 for XDH, tcId is 225 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2297_peerpubkey[] = { 0x44, 0x3a, 0x43, 0x33, 0xd6, 0xb7, 0x30, 0xbb, 0xf1, 0xb8, 0xd8, 0x04, 0x9b, 0x85, 0xcf, 0x64, 0x84, 0xe3, 0x92, 0x94, 0x72, 0xc1, 0x1c, 0x8a, 0x48, 0x8e, 0x91, 0x74, 0x13, 0x98, 0x92, 0x92, 0x8f, 0x58, 0xd1, 0xdd, 0x56, 0x1b, 0x23, 0x9f, 0x06, 0x9b, 0x81, 0x7c, 0x57, 0x6e, 0x8e, 0xf8, 0xa8, 0xe3, 0xd1, 0xcb, 0x30, 0x60, 0xa2, 0xe8, }; static const unsigned char xdh_wei448_2297_privkey[] = { 0xb4, 0xc0, 0xd2, 0x5c, 0xc4, 0xf1, 0x41, 0x18, 0x0f, 0xec, 0xcc, 0xdf, 0x47, 0xc0, 0xab, 0xa2, 0x6c, 0x5d, 0x4d, 0x39, 0x0b, 0x0f, 0x64, 0x51, 0xf8, 0x67, 0x85, 0xf2, 0x50, 0xeb, 0x85, 0xd3, 0x54, 0xcf, 0xd8, 0xb5, 0x26, 0x99, 0x31, 0x5c, 0xf1, 0x15, 0x35, 0x1e, 0xc8, 0x00, 0xc8, 0x41, 0xbe, 0xb5, 0x0d, 0x9a, 0x9a, 0x03, 0x71, 0xcc, }; static const unsigned char xdh_wei448_2297_sharedsecret[] = { 0x23, 0xe7, 0x37, 0x3d, 0xf1, 0x17, 0x85, 0x61, 0x2e, 0xa7, 0x48, 0x25, 0xe9, 0x34, 0xd5, 0x60, 0xbb, 0x70, 0x93, 0x2a, 0x04, 0xeb, 0x81, 0xe3, 0x6b, 0xae, 0xc1, 0x93, 0xa3, 0xb7, 0x92, 0x14, 0x08, 0xb0, 0x45, 0xab, 0xb1, 0x1f, 0x01, 0x19, 0x8c, 0x88, 0xc3, 0x90, 0x28, 0x07, 0xd7, 0x42, 0x06, 0xff, 0xc4, 0x24, 0x36, 0x20, 0x39, 0x90, }; static const wycheproof_xdh_test xdh_wei448_2297 = { .name = "xdh_wei448_2297", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2297_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2297_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2297_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 225 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2298 for XDH, tcId is 226 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2298_peerpubkey[] = { 0x11, 0x41, 0x79, 0xc8, 0x9f, 0xc4, 0x91, 0x53, 0x44, 0xd5, 0xd5, 0x3b, 0x10, 0xec, 0x30, 0x43, 0x4a, 0x54, 0x07, 0x28, 0x95, 0x73, 0xab, 0xde, 0x0e, 0x06, 0xea, 0xe9, 0x3e, 0xec, 0x47, 0x74, 0x9e, 0x98, 0xe6, 0xd2, 0xb4, 0xb5, 0x09, 0x13, 0x0c, 0x2c, 0xf5, 0x08, 0x18, 0xbd, 0xf0, 0xaa, 0x52, 0xd1, 0xaa, 0x15, 0x66, 0xd9, 0x2b, 0xf0, }; static const unsigned char xdh_wei448_2298_privkey[] = { 0xd0, 0xb6, 0xb3, 0x75, 0x58, 0x7f, 0x46, 0xa6, 0x80, 0x0a, 0xe9, 0xbd, 0x54, 0x15, 0xf9, 0x6d, 0x9e, 0x12, 0xf7, 0xdf, 0x8b, 0x6b, 0xca, 0x17, 0x18, 0x8a, 0x1c, 0xd4, 0xe3, 0x96, 0xa4, 0x70, 0xfe, 0x82, 0x96, 0xba, 0xbb, 0x8f, 0xe8, 0x44, 0x2f, 0xab, 0x1a, 0x7f, 0x1b, 0xb2, 0x6c, 0x59, 0x73, 0x94, 0x25, 0x74, 0x2b, 0x59, 0x4c, 0xdc, }; static const unsigned char xdh_wei448_2298_sharedsecret[] = { 0x2a, 0x02, 0x11, 0xb6, 0xff, 0x30, 0xf2, 0xed, 0xba, 0xa4, 0x84, 0xa3, 0x04, 0x9a, 0x18, 0xac, 0xb7, 0xcf, 0x5b, 0xfc, 0x1f, 0x75, 0x1e, 0x66, 0xcd, 0xff, 0x91, 0xa0, 0x31, 0x6a, 0x94, 0xa9, 0xf8, 0x36, 0xd8, 0x02, 0xde, 0xa1, 0x15, 0xd4, 0x8c, 0x42, 0x37, 0x23, 0x28, 0x4b, 0xf3, 0x85, 0x90, 0x94, 0xec, 0x25, 0x65, 0x11, 0xd6, 0xb9, }; static const wycheproof_xdh_test xdh_wei448_2298 = { .name = "xdh_wei448_2298", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2298_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2298_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2298_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 226 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2299 for XDH, tcId is 227 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2299_peerpubkey[] = { 0xaf, 0xfe, 0xcc, 0xdd, 0x97, 0x49, 0x98, 0xae, 0xdf, 0x47, 0xea, 0x37, 0xe5, 0x67, 0x11, 0xce, 0x4d, 0x48, 0x78, 0xa3, 0x3d, 0x42, 0x0a, 0x46, 0xf1, 0x60, 0x87, 0x7b, 0x46, 0x38, 0x28, 0xbe, 0xd2, 0x8c, 0xcb, 0x1c, 0x84, 0xfb, 0x5a, 0x8c, 0x77, 0x5a, 0xe8, 0xb3, 0x1e, 0xa0, 0x66, 0xc3, 0xea, 0xaa, 0x36, 0x2f, 0xcb, 0xd1, 0x64, 0xf2, }; static const unsigned char xdh_wei448_2299_privkey[] = { 0x9c, 0x46, 0x49, 0x53, 0x01, 0xde, 0x30, 0x3e, 0x3e, 0x76, 0xd0, 0x7c, 0xe5, 0xbc, 0x54, 0x59, 0xdc, 0x31, 0xff, 0x16, 0x8e, 0xf8, 0x90, 0x42, 0x58, 0x5b, 0x65, 0x7c, 0x7a, 0xcc, 0x12, 0x02, 0xd2, 0xfb, 0xf5, 0xd6, 0xdc, 0xa3, 0xe0, 0x2c, 0x31, 0xec, 0x0d, 0xd4, 0xd5, 0xae, 0x9b, 0x76, 0x55, 0x9e, 0x58, 0x6a, 0x6e, 0x28, 0x32, 0xf2, }; static const unsigned char xdh_wei448_2299_sharedsecret[] = { 0xd3, 0x54, 0x8f, 0x0c, 0xf8, 0xbd, 0x05, 0x8c, 0x1f, 0x7e, 0x17, 0x26, 0x2f, 0xba, 0xd4, 0x5a, 0xf7, 0xfb, 0x75, 0x04, 0xc5, 0x62, 0x26, 0x2f, 0x02, 0xaa, 0xc5, 0xd2, 0x40, 0x93, 0xf4, 0x1b, 0x61, 0x4b, 0x4e, 0x63, 0xc1, 0xc7, 0xab, 0x0d, 0x73, 0xe9, 0x51, 0xc1, 0xf2, 0x7f, 0x71, 0x4c, 0xe0, 0xce, 0xc0, 0x21, 0xc6, 0x67, 0xe7, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2299 = { .name = "xdh_wei448_2299", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2299_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2299_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2299_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 227 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2300 for XDH, tcId is 228 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2300_peerpubkey[] = { 0x1b, 0xc5, 0x15, 0xb8, 0x8a, 0xff, 0x3e, 0x8a, 0x83, 0xbe, 0x39, 0x44, 0x24, 0xe1, 0xd8, 0x05, 0x4f, 0x7b, 0xdb, 0x40, 0xa0, 0x6e, 0xb5, 0xc3, 0xc9, 0xd0, 0x7f, 0xc0, 0xa7, 0xf5, 0x70, 0x9b, 0xcc, 0xeb, 0x6d, 0xdc, 0x1d, 0x4f, 0x8d, 0x6f, 0x5c, 0xcd, 0xf0, 0x17, 0xe0, 0x77, 0x06, 0xfd, 0xd6, 0x12, 0x71, 0xb3, 0x59, 0x87, 0x22, 0x01, }; static const unsigned char xdh_wei448_2300_privkey[] = { 0xa8, 0x88, 0x61, 0x97, 0x6c, 0x6d, 0x17, 0x79, 0xfd, 0x8e, 0x17, 0x97, 0x6b, 0x4d, 0x69, 0xba, 0x76, 0x2d, 0x90, 0xc4, 0x03, 0xcd, 0xfa, 0x95, 0x8e, 0xf9, 0xa3, 0xd1, 0xb1, 0xf1, 0x9d, 0xc0, 0x17, 0x3e, 0x9d, 0x81, 0xbc, 0x68, 0x0c, 0x27, 0x6a, 0x69, 0x77, 0x11, 0xe5, 0x8b, 0x8f, 0x3b, 0x28, 0xee, 0x0b, 0x5d, 0xf5, 0x62, 0x35, 0x8f, }; static const unsigned char xdh_wei448_2300_sharedsecret[] = { 0xf4, 0xaf, 0x7d, 0x59, 0xa4, 0xeb, 0xaf, 0x9f, 0xe9, 0xc3, 0xbe, 0x54, 0x2f, 0x61, 0xc2, 0x71, 0xa2, 0xf4, 0x0f, 0x5a, 0x9b, 0x1c, 0x6d, 0xa1, 0xde, 0xf3, 0x9d, 0x93, 0x66, 0xc6, 0x95, 0xe0, 0xd9, 0x87, 0xd6, 0x4a, 0x8b, 0xa0, 0x23, 0x4d, 0x5a, 0x92, 0xe3, 0x88, 0xb9, 0xe8, 0xf3, 0xe1, 0x24, 0x94, 0x2a, 0xbd, 0x40, 0xb1, 0xfa, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2300 = { .name = "xdh_wei448_2300", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2300_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2300_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2300_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 228 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2301 for XDH, tcId is 229 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2301_peerpubkey[] = { 0x56, 0xf4, 0xcf, 0x0c, 0x6d, 0xdd, 0xf7, 0x82, 0xb7, 0x9c, 0x49, 0xef, 0x53, 0x72, 0xfc, 0xf5, 0x0d, 0x7c, 0x25, 0xb2, 0x53, 0x0f, 0x48, 0x73, 0xa0, 0xdc, 0x45, 0x0b, 0xfc, 0x82, 0xf6, 0xde, 0x9b, 0x7f, 0xf5, 0x2a, 0x4c, 0xe7, 0x53, 0x48, 0x39, 0x90, 0x21, 0x9d, 0xef, 0xf9, 0x98, 0x5d, 0xff, 0x38, 0x33, 0x23, 0x8f, 0x19, 0xaf, 0x37, }; static const unsigned char xdh_wei448_2301_privkey[] = { 0x10, 0xc8, 0x41, 0x04, 0xbf, 0x5c, 0xce, 0x41, 0xee, 0xc1, 0x43, 0xe4, 0xfe, 0x02, 0xb6, 0xca, 0x5a, 0x87, 0x54, 0x03, 0x4a, 0x46, 0xa3, 0x13, 0xa4, 0x8d, 0xa0, 0x6c, 0xba, 0x9f, 0x04, 0xc8, 0x4e, 0x3d, 0xe6, 0x35, 0x67, 0x3f, 0xbb, 0xb5, 0x0d, 0xe2, 0x78, 0x30, 0x30, 0x72, 0x97, 0x15, 0x9b, 0x91, 0x35, 0xf0, 0x28, 0xc3, 0x4a, 0x85, }; static const unsigned char xdh_wei448_2301_sharedsecret[] = { 0x41, 0x54, 0x8c, 0xe8, 0x0d, 0x1c, 0x09, 0xe6, 0x90, 0x3e, 0xa7, 0xb1, 0x8c, 0xc5, 0xb0, 0xb2, 0x68, 0xcb, 0x24, 0xb1, 0x2a, 0xaf, 0xd2, 0x2f, 0xd9, 0x16, 0xff, 0x40, 0x60, 0xd8, 0x9a, 0x12, 0x30, 0x22, 0xfa, 0x95, 0x08, 0x83, 0x6a, 0x08, 0x26, 0x95, 0xf5, 0x4a, 0xb5, 0x8b, 0xcc, 0x20, 0x24, 0xc9, 0x31, 0x6c, 0xe1, 0xe3, 0x2b, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2301 = { .name = "xdh_wei448_2301", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2301_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2301_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2301_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 229 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2302 for XDH, tcId is 230 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2302_peerpubkey[] = { 0x43, 0x03, 0xa6, 0x39, 0xa2, 0xe1, 0x68, 0x1c, 0xc9, 0x34, 0x5f, 0x86, 0x16, 0xc3, 0xb5, 0x03, 0x9a, 0x18, 0x89, 0x71, 0x35, 0xfc, 0x68, 0x0a, 0xd9, 0x11, 0x31, 0x6f, 0xba, 0x21, 0xba, 0x7d, 0x34, 0x12, 0xf7, 0x18, 0xe3, 0x9f, 0x4e, 0x3b, 0xfe, 0xe2, 0x75, 0x82, 0xff, 0x5f, 0xf1, 0x53, 0xa6, 0xe5, 0xbe, 0x18, 0x6d, 0x92, 0x45, 0xe0, }; static const unsigned char xdh_wei448_2302_privkey[] = { 0x80, 0xc8, 0x56, 0x04, 0x0c, 0xd9, 0x01, 0x13, 0xfa, 0x51, 0xc6, 0x48, 0xfd, 0x39, 0x6e, 0x76, 0x73, 0x29, 0xbc, 0x10, 0xbb, 0x6e, 0xbd, 0x8a, 0xfb, 0x41, 0xf5, 0x05, 0x5e, 0x84, 0x5f, 0x66, 0x8e, 0xd2, 0x92, 0xec, 0xec, 0xa8, 0x4d, 0x5f, 0xfb, 0xb3, 0xf7, 0x70, 0xe0, 0xb7, 0x44, 0xaf, 0xa2, 0x8e, 0x03, 0x9f, 0xf6, 0xee, 0x55, 0x91, }; static const unsigned char xdh_wei448_2302_sharedsecret[] = { 0x30, 0x75, 0x2a, 0x13, 0xe1, 0x7b, 0x32, 0xc9, 0xf9, 0xce, 0xdb, 0x9c, 0x01, 0x2e, 0xea, 0x63, 0x97, 0x00, 0xf2, 0x70, 0xbf, 0x6a, 0x8d, 0xf3, 0x50, 0x52, 0x1c, 0x54, 0xb1, 0x26, 0x40, 0x42, 0x47, 0xdc, 0x68, 0xfc, 0xd0, 0x49, 0x3a, 0xf6, 0x1e, 0x97, 0xb9, 0xf6, 0xdb, 0xff, 0xfa, 0xad, 0x1a, 0x88, 0x35, 0xa5, 0x6f, 0x13, 0x30, 0x22, }; static const wycheproof_xdh_test xdh_wei448_2302 = { .name = "xdh_wei448_2302", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2302_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2302_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2302_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 230 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2303 for XDH, tcId is 231 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2303_peerpubkey[] = { 0xb8, 0xd2, 0x9b, 0xc0, 0x8c, 0x77, 0xbd, 0xcb, 0xb3, 0x2d, 0xd4, 0x60, 0x57, 0x5f, 0x0d, 0xc3, 0xb8, 0xef, 0x5e, 0x08, 0x87, 0x51, 0xd4, 0x50, 0x6a, 0x8f, 0x16, 0x6e, 0x7f, 0x34, 0x02, 0xaa, 0x19, 0x1a, 0x7a, 0xde, 0x82, 0x49, 0xa2, 0x75, 0x9d, 0xfe, 0x70, 0x93, 0xac, 0xef, 0xef, 0xaf, 0x04, 0x72, 0x27, 0x77, 0xff, 0x5f, 0x84, 0xf5, }; static const unsigned char xdh_wei448_2303_privkey[] = { 0xcc, 0xfb, 0x76, 0xa8, 0x2b, 0x43, 0x07, 0xe5, 0x61, 0xe9, 0xf7, 0xf4, 0x2b, 0x61, 0xb1, 0x88, 0x14, 0xe7, 0x8e, 0xa2, 0x00, 0x3f, 0x21, 0xf0, 0xcc, 0x7b, 0x92, 0xb4, 0x46, 0x23, 0xbd, 0x07, 0xe3, 0x1a, 0x77, 0x61, 0x92, 0x06, 0x32, 0x4f, 0xd1, 0x66, 0x28, 0xc5, 0x54, 0x37, 0x65, 0xf6, 0xde, 0x44, 0x29, 0x2a, 0x11, 0xf1, 0x50, 0x84, }; static const unsigned char xdh_wei448_2303_sharedsecret[] = { 0xb9, 0x80, 0x60, 0x2b, 0x7f, 0xce, 0x7c, 0x33, 0xdd, 0x25, 0x4a, 0x32, 0x8a, 0x97, 0xe2, 0x33, 0x30, 0x85, 0x79, 0xb4, 0x3c, 0x40, 0xb4, 0x75, 0x94, 0x2f, 0x75, 0xdb, 0xb1, 0xc7, 0x60, 0x77, 0xe6, 0x1f, 0x4c, 0xff, 0x78, 0xde, 0x26, 0xd4, 0xc1, 0x8e, 0x7f, 0xd5, 0x6c, 0x24, 0x67, 0x6e, 0xc2, 0xa3, 0xe3, 0x0c, 0xbb, 0x0c, 0xf4, 0xec, }; static const wycheproof_xdh_test xdh_wei448_2303 = { .name = "xdh_wei448_2303", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2303_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2303_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2303_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 231 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2304 for XDH, tcId is 232 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2304_peerpubkey[] = { 0x3e, 0x61, 0x64, 0xdb, 0x9f, 0x9e, 0x92, 0x74, 0xc9, 0xb8, 0xef, 0x2c, 0xfd, 0xab, 0x4c, 0xa0, 0xf5, 0x67, 0xd3, 0xf1, 0x5b, 0x33, 0xb3, 0xf5, 0x25, 0x46, 0x62, 0x96, 0x64, 0x89, 0x05, 0xd8, 0x51, 0x46, 0xbd, 0x6f, 0x9b, 0xfc, 0x63, 0x72, 0x5c, 0x22, 0x34, 0xf1, 0x8f, 0x21, 0xfd, 0x3e, 0xb3, 0x6f, 0x54, 0x06, 0xf5, 0xd0, 0xd1, 0x01, }; static const unsigned char xdh_wei448_2304_privkey[] = { 0xd8, 0x3c, 0x17, 0xb9, 0x3d, 0xb4, 0xf2, 0x9f, 0xfc, 0x95, 0x4f, 0x8e, 0x36, 0x37, 0xd3, 0x52, 0x04, 0x19, 0x20, 0xf6, 0x8b, 0xa8, 0x91, 0x4e, 0x40, 0x50, 0x31, 0x8c, 0xcd, 0xd3, 0xc6, 0xc3, 0x40, 0x2c, 0x64, 0x1a, 0x56, 0x67, 0x3d, 0x72, 0x72, 0x77, 0x74, 0x35, 0x7a, 0x82, 0x64, 0x85, 0xa8, 0x00, 0xa0, 0xa0, 0x06, 0xdf, 0x8e, 0x9c, }; static const unsigned char xdh_wei448_2304_sharedsecret[] = { 0x84, 0xef, 0xdc, 0x92, 0x07, 0x1a, 0xb9, 0xa8, 0xc4, 0xbd, 0xa2, 0x09, 0xa7, 0x0b, 0x7d, 0xf1, 0x15, 0x4e, 0xc6, 0x73, 0xae, 0x5d, 0x44, 0xdf, 0x01, 0x46, 0x0d, 0x2b, 0x37, 0x5e, 0x3a, 0x5e, 0xc5, 0x1b, 0x48, 0x5a, 0xb7, 0xb4, 0xd4, 0x49, 0xe9, 0x90, 0xc0, 0xe4, 0xe8, 0x2b, 0xd3, 0x38, 0xa1, 0x08, 0x91, 0x0f, 0x0a, 0x49, 0xed, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_2304 = { .name = "xdh_wei448_2304", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2304_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2304_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2304_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 232 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2305 for XDH, tcId is 233 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2305_peerpubkey[] = { 0x3c, 0x84, 0x5e, 0x04, 0x5d, 0xd2, 0x1f, 0x7f, 0x8e, 0x21, 0x85, 0xb6, 0xb6, 0x88, 0x4f, 0x06, 0x2b, 0x52, 0xda, 0x23, 0x63, 0x78, 0xd9, 0x0a, 0x5a, 0x87, 0x3f, 0xc8, 0x4a, 0x7a, 0x6e, 0x65, 0x26, 0x50, 0x08, 0xf4, 0x5b, 0x43, 0xcf, 0x27, 0x50, 0xa2, 0x47, 0x6b, 0xef, 0x65, 0x7c, 0x34, 0x04, 0x55, 0xdc, 0x9f, 0xae, 0x3d, 0xbb, 0x05, }; static const unsigned char xdh_wei448_2305_privkey[] = { 0x3c, 0x08, 0x7d, 0xf1, 0x21, 0xe1, 0x39, 0x54, 0xe3, 0xbb, 0x66, 0xca, 0xc9, 0x2a, 0x56, 0x18, 0xf0, 0x94, 0x01, 0x68, 0x97, 0x62, 0xdd, 0xc7, 0x10, 0x26, 0x36, 0xcc, 0xb0, 0x89, 0x4f, 0xf2, 0xfe, 0xdd, 0x94, 0x5f, 0x09, 0x64, 0x81, 0x49, 0xd9, 0x9a, 0x3e, 0xd7, 0xc7, 0xba, 0x0f, 0x08, 0xde, 0xaf, 0x52, 0x07, 0x4d, 0xd2, 0xfc, 0x89, }; static const unsigned char xdh_wei448_2305_sharedsecret[] = { 0x41, 0xd6, 0x94, 0x37, 0x44, 0xa7, 0xc0, 0xf8, 0x9e, 0x91, 0xc7, 0x02, 0x01, 0x82, 0x3d, 0x13, 0x3c, 0xa6, 0xa3, 0x2d, 0x08, 0xe8, 0xba, 0x6a, 0xc9, 0x5c, 0x48, 0xea, 0x6b, 0x37, 0x2d, 0xa0, 0x79, 0x6e, 0x63, 0x24, 0xc8, 0xff, 0x68, 0x22, 0xac, 0xbe, 0x3b, 0x1d, 0xe4, 0x60, 0x81, 0x79, 0x9c, 0x04, 0x48, 0xcf, 0xa3, 0x72, 0x6d, 0x7c, }; static const wycheproof_xdh_test xdh_wei448_2305 = { .name = "xdh_wei448_2305", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2305_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2305_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2305_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 233 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2306 for XDH, tcId is 234 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2306_peerpubkey[] = { 0xec, 0x39, 0x42, 0xb9, 0x47, 0x94, 0x7a, 0x05, 0x31, 0x67, 0x24, 0xe6, 0xb2, 0x0e, 0x50, 0xc9, 0xa9, 0x30, 0x5e, 0x9d, 0xc3, 0x5a, 0x4a, 0x06, 0x3f, 0xf6, 0xfe, 0xd3, 0x80, 0x06, 0x49, 0x4d, 0x2b, 0x20, 0xbd, 0xc9, 0x83, 0xb0, 0x35, 0x19, 0xaa, 0xf0, 0x38, 0xed, 0x8d, 0xed, 0x60, 0xb9, 0x30, 0x2b, 0x36, 0x3d, 0x34, 0x4c, 0x2a, 0x37, }; static const unsigned char xdh_wei448_2306_privkey[] = { 0x48, 0x1e, 0x7b, 0x28, 0x5a, 0x51, 0x20, 0x5a, 0xf9, 0xf1, 0xd1, 0x0a, 0xa9, 0x40, 0xe7, 0xe4, 0x7e, 0x32, 0x6e, 0xf7, 0x36, 0x6c, 0x90, 0x7d, 0x74, 0xc6, 0x59, 0x8a, 0x23, 0x5c, 0x0f, 0x27, 0xeb, 0x04, 0xef, 0xcf, 0xde, 0x78, 0x9b, 0x53, 0x04, 0x0c, 0x50, 0x1e, 0xae, 0xc5, 0x0f, 0x01, 0xdc, 0xdb, 0x3c, 0xe6, 0xf9, 0xe2, 0x92, 0x8b, }; static const unsigned char xdh_wei448_2306_sharedsecret[] = { 0x04, 0xd6, 0xb7, 0xfa, 0xb7, 0xde, 0x07, 0x39, 0xe4, 0xeb, 0x4c, 0x5f, 0x37, 0xde, 0xef, 0x59, 0x01, 0x67, 0xc8, 0x04, 0xa9, 0x58, 0xf9, 0x9b, 0xd1, 0x41, 0x02, 0xda, 0x44, 0x49, 0x09, 0x63, 0xe0, 0x11, 0x9a, 0x75, 0xb8, 0x43, 0x62, 0xcc, 0x3a, 0x19, 0x5e, 0x0b, 0x24, 0xa8, 0xfd, 0x71, 0x3a, 0x45, 0x03, 0x80, 0x80, 0x38, 0x3d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2306 = { .name = "xdh_wei448_2306", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2306_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2306_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2306_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 234 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2307 for XDH, tcId is 235 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2307_peerpubkey[] = { 0xfe, 0x29, 0xe8, 0x2e, 0x30, 0x86, 0xce, 0xed, 0x02, 0x29, 0xf6, 0x3e, 0x68, 0x03, 0xd9, 0x86, 0x41, 0x14, 0xd2, 0x66, 0xb0, 0x1d, 0x77, 0x6d, 0x8f, 0xf7, 0xb8, 0x9e, 0x5e, 0x64, 0xac, 0x47, 0x1c, 0x00, 0x4e, 0x3a, 0x99, 0xcb, 0x16, 0xcf, 0x94, 0xe6, 0xf0, 0x49, 0x3e, 0xe3, 0x53, 0x25, 0xe6, 0x9d, 0x9e, 0x1f, 0x8c, 0xbb, 0x12, 0x3d, }; static const unsigned char xdh_wei448_2307_privkey[] = { 0x50, 0x0f, 0xc2, 0x83, 0x89, 0x9a, 0x14, 0xc9, 0x35, 0x42, 0x8b, 0x14, 0x81, 0x71, 0xbb, 0xcd, 0x55, 0x34, 0x1d, 0xad, 0x96, 0xae, 0xea, 0x5e, 0x4a, 0xda, 0x76, 0xe3, 0x78, 0x29, 0x07, 0x08, 0xbf, 0x4f, 0x8f, 0x4e, 0xbb, 0x8c, 0x0b, 0x14, 0x78, 0x95, 0x61, 0xd2, 0x14, 0xb9, 0x9b, 0x99, 0x8b, 0x26, 0xf2, 0x3c, 0xd5, 0x53, 0x82, 0x9c, }; static const unsigned char xdh_wei448_2307_sharedsecret[] = { 0x85, 0x79, 0x2e, 0xec, 0x0e, 0x00, 0xae, 0x19, 0x06, 0x9b, 0x15, 0x47, 0xc8, 0xef, 0x7c, 0x68, 0x18, 0x59, 0x3b, 0x50, 0xf9, 0xb5, 0x3a, 0x18, 0x9d, 0x69, 0xea, 0x46, 0x9a, 0x3b, 0x49, 0x34, 0x2e, 0x5b, 0x4b, 0x37, 0x19, 0x4d, 0x42, 0xd8, 0x9a, 0xf2, 0x1a, 0x36, 0xc7, 0xf3, 0x7f, 0xb1, 0x2b, 0x21, 0x3b, 0x32, 0xff, 0x39, 0x0d, 0x02, }; static const wycheproof_xdh_test xdh_wei448_2307 = { .name = "xdh_wei448_2307", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2307_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2307_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2307_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 235 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2308 for XDH, tcId is 236 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2308_peerpubkey[] = { 0x2c, 0xfa, 0x4d, 0x92, 0xdd, 0x10, 0xf4, 0xf4, 0xf1, 0x9e, 0x42, 0xd9, 0x25, 0x28, 0xb4, 0x4e, 0x86, 0xa9, 0x78, 0x8c, 0xb9, 0x32, 0x6f, 0x9c, 0x43, 0x35, 0x2d, 0x41, 0xe2, 0xa2, 0x0e, 0x95, 0xba, 0x41, 0x6c, 0x76, 0xf3, 0x27, 0x13, 0x76, 0xa5, 0xef, 0xc1, 0xd4, 0x89, 0xa0, 0x21, 0x8b, 0xed, 0xa1, 0x35, 0xd5, 0xb4, 0x9a, 0xd0, 0x5c, }; static const unsigned char xdh_wei448_2308_privkey[] = { 0x94, 0x4d, 0x70, 0x46, 0x05, 0xc0, 0xb9, 0xa3, 0xe5, 0xef, 0xa5, 0xbf, 0x02, 0xda, 0xab, 0x42, 0xf7, 0xe0, 0x00, 0x25, 0x29, 0xc7, 0x30, 0x24, 0x60, 0x83, 0x60, 0xad, 0xf5, 0x88, 0x4a, 0x86, 0x49, 0xa8, 0x08, 0xd7, 0x91, 0x6e, 0x20, 0x5e, 0x1f, 0x4a, 0x1c, 0x36, 0xb3, 0xed, 0xa9, 0xfb, 0x21, 0x5e, 0x22, 0x31, 0xa7, 0x21, 0x4b, 0x8f, }; static const unsigned char xdh_wei448_2308_sharedsecret[] = { 0xbe, 0xc8, 0x91, 0x62, 0x35, 0x34, 0x2d, 0x5a, 0x63, 0x81, 0x84, 0x7f, 0xc1, 0x09, 0x73, 0x2d, 0x68, 0xe2, 0x6d, 0x0f, 0xff, 0x87, 0x8c, 0xd2, 0x68, 0xb9, 0x82, 0x13, 0xac, 0x78, 0x5e, 0x26, 0x8f, 0xb2, 0x31, 0x94, 0xe3, 0xbf, 0xd7, 0x01, 0x0f, 0xff, 0x1b, 0x2b, 0x1a, 0x43, 0x82, 0x9a, 0x16, 0x9c, 0x0e, 0x1a, 0xf0, 0x8c, 0x4f, 0x61, }; static const wycheproof_xdh_test xdh_wei448_2308 = { .name = "xdh_wei448_2308", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2308_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2308_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2308_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 236 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2309 for XDH, tcId is 237 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2309_peerpubkey[] = { 0xe4, 0xf2, 0xc8, 0xbf, 0xf8, 0x7d, 0x70, 0xcf, 0xb1, 0xbe, 0xe7, 0xf4, 0x8c, 0x3f, 0x63, 0xf5, 0x99, 0x56, 0x89, 0xdb, 0x27, 0xb6, 0x83, 0x03, 0x99, 0x43, 0xc7, 0x0d, 0x98, 0x2e, 0x3a, 0x0a, 0x19, 0xd5, 0x54, 0xf0, 0x39, 0x53, 0xb7, 0xd9, 0x70, 0xa2, 0x97, 0xd6, 0xbd, 0x65, 0xc2, 0x89, 0x30, 0x36, 0x6e, 0x67, 0x92, 0x82, 0x2d, 0x62, }; static const unsigned char xdh_wei448_2309_privkey[] = { 0xec, 0x38, 0xa3, 0x72, 0x22, 0xb8, 0x13, 0x84, 0x8f, 0x31, 0x2c, 0xe7, 0x64, 0x4f, 0x69, 0xea, 0xf9, 0x62, 0x4d, 0x2c, 0x13, 0x68, 0x5d, 0x35, 0x0b, 0x46, 0x9c, 0x02, 0xd4, 0x30, 0xa0, 0x2f, 0xa0, 0xbe, 0xa6, 0x54, 0x58, 0xb4, 0x42, 0x7c, 0x74, 0xff, 0x49, 0xc1, 0xeb, 0xcb, 0x1d, 0xfa, 0x07, 0x3b, 0x8e, 0xb3, 0xb8, 0x07, 0xc7, 0x94, }; static const unsigned char xdh_wei448_2309_sharedsecret[] = { 0x61, 0x34, 0x5e, 0x76, 0x39, 0x62, 0x46, 0x13, 0xbd, 0xbd, 0xf0, 0x69, 0x83, 0xf2, 0x55, 0xbc, 0xd6, 0x76, 0xa7, 0x65, 0x38, 0x2a, 0xa4, 0xf3, 0x76, 0xe2, 0x3b, 0xb5, 0x3a, 0x7c, 0x1a, 0x5b, 0xfc, 0xc9, 0x0d, 0x5a, 0x79, 0xa9, 0xef, 0xff, 0x13, 0x40, 0x49, 0x0e, 0x58, 0xda, 0xd3, 0x6b, 0xfd, 0x85, 0xd6, 0x56, 0x2b, 0x03, 0xb8, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2309 = { .name = "xdh_wei448_2309", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2309_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2309_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2309_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 237 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2310 for XDH, tcId is 238 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2310_peerpubkey[] = { 0x91, 0xc7, 0xe2, 0xf3, 0xf1, 0x8b, 0x66, 0x0a, 0x3b, 0xcc, 0x10, 0x7a, 0xc1, 0x0e, 0x6f, 0x4b, 0x58, 0xfd, 0x8e, 0xf9, 0xc5, 0x7e, 0xad, 0x82, 0x39, 0x4c, 0x99, 0xff, 0x89, 0xb0, 0x69, 0x53, 0xf4, 0xfb, 0xd3, 0x99, 0x7b, 0xcb, 0xfd, 0x3f, 0x78, 0xf2, 0x8f, 0x0b, 0x0b, 0x34, 0x8a, 0xf4, 0xa3, 0x5a, 0x7f, 0x35, 0x1a, 0x29, 0xf0, 0x7d, }; static const unsigned char xdh_wei448_2310_privkey[] = { 0xf4, 0x97, 0x0a, 0x04, 0xbf, 0x57, 0xaf, 0xa4, 0x65, 0x70, 0x71, 0x6d, 0x9e, 0xc0, 0x37, 0x98, 0xc3, 0x4a, 0xe3, 0xad, 0xd1, 0x90, 0x33, 0xc7, 0xeb, 0x25, 0x75, 0x68, 0xd1, 0x9f, 0xf1, 0xe3, 0xf9, 0x08, 0xe1, 0xb6, 0xe6, 0x95, 0x07, 0x4f, 0x75, 0x2f, 0x0a, 0xd7, 0x1f, 0x27, 0x04, 0x89, 0x5b, 0xea, 0x0d, 0xa2, 0xf9, 0x07, 0xaf, 0x9b, }; static const unsigned char xdh_wei448_2310_sharedsecret[] = { 0xcd, 0x3f, 0x8e, 0xca, 0xda, 0xb8, 0xe3, 0x2b, 0xac, 0xd7, 0x21, 0x75, 0xdb, 0x84, 0x7f, 0x9f, 0xaf, 0x99, 0x2a, 0x04, 0xfc, 0x07, 0xa1, 0xb4, 0x0a, 0x18, 0x26, 0xd1, 0xa2, 0x22, 0xba, 0x00, 0x10, 0x91, 0xb6, 0xa6, 0xe4, 0x7b, 0xe2, 0x29, 0x94, 0xb6, 0x56, 0xc2, 0xc0, 0x8f, 0x6a, 0xd9, 0x0d, 0x9a, 0x66, 0xb2, 0xe1, 0x39, 0xb9, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_2310 = { .name = "xdh_wei448_2310", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2310_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2310_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2310_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 238 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2311 for XDH, tcId is 239 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2311_peerpubkey[] = { 0xc5, 0x45, 0x38, 0xc9, 0xe6, 0x2c, 0xa0, 0x3b, 0xdd, 0xdf, 0x4d, 0x87, 0x1d, 0x32, 0x48, 0x77, 0xb5, 0xaf, 0x95, 0xcb, 0x52, 0xb5, 0x3d, 0xc4, 0x38, 0x6f, 0x10, 0x5c, 0x68, 0xd8, 0x0e, 0xbd, 0x73, 0xfd, 0xb5, 0x1b, 0xc9, 0xb2, 0x66, 0x62, 0x08, 0x65, 0x8b, 0x86, 0xc3, 0xb5, 0x93, 0x0b, 0x81, 0xab, 0xfa, 0x4a, 0xc2, 0xa2, 0x13, 0x96, }; static const unsigned char xdh_wei448_2311_privkey[] = { 0x90, 0x96, 0xf6, 0x8a, 0xd3, 0x95, 0x0f, 0x01, 0x4b, 0x5e, 0xdb, 0x84, 0xca, 0x36, 0x9d, 0x2c, 0x05, 0x3f, 0xf8, 0xf0, 0xc7, 0x8e, 0x89, 0xbb, 0xb0, 0x88, 0xe7, 0xcf, 0xbe, 0x1a, 0x1b, 0xd1, 0x8a, 0xf8, 0xc5, 0xea, 0x0e, 0x72, 0x85, 0xb1, 0x6e, 0xc2, 0x73, 0x54, 0xab, 0xfd, 0xde, 0x2b, 0xc1, 0x3e, 0x95, 0x86, 0x0d, 0xab, 0xd9, 0x85, }; static const unsigned char xdh_wei448_2311_sharedsecret[] = { 0xdb, 0x72, 0x24, 0x2a, 0x51, 0x39, 0x8f, 0xac, 0xda, 0xd9, 0x9b, 0x3c, 0xe5, 0xad, 0x85, 0x6f, 0x90, 0x24, 0xb6, 0x62, 0xdf, 0x36, 0xf0, 0xaa, 0x03, 0xa9, 0x46, 0x34, 0x35, 0x54, 0xed, 0x62, 0x44, 0xf7, 0x7c, 0x6a, 0xe2, 0x00, 0xcb, 0x2c, 0x7b, 0x7b, 0x5b, 0xcb, 0xda, 0x5b, 0x81, 0x6f, 0x97, 0xf5, 0x3c, 0xa2, 0xc5, 0xa7, 0x47, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2311 = { .name = "xdh_wei448_2311", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2311_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2311_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2311_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 239 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2312 for XDH, tcId is 240 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2312_peerpubkey[] = { 0x2b, 0x4c, 0xb8, 0xa2, 0xdb, 0x20, 0xb1, 0x6c, 0x50, 0x13, 0xd8, 0x3f, 0x3f, 0xe7, 0xf2, 0x34, 0x1e, 0xab, 0xc3, 0x68, 0xd4, 0xb3, 0x11, 0xdb, 0x04, 0xfe, 0xf4, 0xa7, 0x1e, 0x3c, 0x94, 0xc6, 0xb0, 0xe2, 0x64, 0xa4, 0x1f, 0xf9, 0x63, 0x94, 0x15, 0x09, 0x5c, 0x74, 0x55, 0x34, 0x47, 0xc2, 0x6a, 0xcc, 0x75, 0x1f, 0x1f, 0xd2, 0x61, 0xd2, }; static const unsigned char xdh_wei448_2312_privkey[] = { 0xc4, 0xa9, 0xea, 0x45, 0x52, 0xf0, 0xb0, 0x2f, 0xb1, 0x53, 0xa6, 0xcc, 0xdb, 0x7b, 0x10, 0x2d, 0xe9, 0xa5, 0x0e, 0xf5, 0xee, 0x46, 0x2a, 0xf0, 0x34, 0x8a, 0x6c, 0x40, 0x86, 0x86, 0x87, 0xff, 0xb2, 0x7c, 0xb3, 0xb1, 0xff, 0x24, 0x20, 0xf4, 0xc9, 0xe6, 0xb5, 0xb8, 0xc0, 0x6c, 0x5d, 0x7d, 0xa9, 0x99, 0xb9, 0x50, 0xdc, 0xc8, 0x17, 0x80, }; static const unsigned char xdh_wei448_2312_sharedsecret[] = { 0xb6, 0xf4, 0xd2, 0x6b, 0x91, 0x7a, 0x5e, 0x29, 0x9a, 0xe9, 0xdf, 0x9d, 0x96, 0x55, 0xcf, 0x2d, 0xd6, 0x15, 0x5e, 0x1a, 0x78, 0x56, 0x36, 0xc7, 0x50, 0xf2, 0x21, 0x5e, 0xd8, 0xc7, 0xc3, 0x15, 0x2e, 0x7d, 0xd7, 0xc3, 0x16, 0x65, 0x7a, 0x91, 0x0d, 0x02, 0x21, 0x86, 0x43, 0x5b, 0xbc, 0x7e, 0xf4, 0x30, 0x9d, 0xad, 0xdd, 0x73, 0x31, 0x58, }; static const wycheproof_xdh_test xdh_wei448_2312 = { .name = "xdh_wei448_2312", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2312_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2312_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2312_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 240 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2313 for XDH, tcId is 241 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2313_peerpubkey[] = { 0x48, 0xed, 0xc1, 0x3a, 0x4c, 0xb0, 0x97, 0xc3, 0x2e, 0x0a, 0xae, 0xfe, 0x25, 0x1d, 0x35, 0x1f, 0xa0, 0x97, 0x13, 0x4e, 0xbf, 0xc5, 0xaa, 0x84, 0xb6, 0x27, 0x70, 0x2c, 0xb4, 0xd5, 0xad, 0xa5, 0xda, 0x25, 0x83, 0xfc, 0x68, 0xff, 0x78, 0x05, 0x35, 0x42, 0xc7, 0x96, 0xad, 0x62, 0x53, 0x95, 0xb4, 0x31, 0xdb, 0xbe, 0x9b, 0xf1, 0x70, 0xde, }; static const unsigned char xdh_wei448_2313_privkey[] = { 0x70, 0x9d, 0x6e, 0xbd, 0xa1, 0x76, 0x61, 0xa9, 0xa6, 0xcf, 0x02, 0x83, 0xcc, 0x37, 0xcd, 0x25, 0x80, 0x2d, 0xae, 0x0c, 0x33, 0xe6, 0xa2, 0x47, 0x99, 0xb2, 0x28, 0x40, 0x2d, 0x8c, 0x8d, 0x3b, 0xf5, 0xc3, 0x79, 0xbf, 0x2e, 0x31, 0x70, 0x8a, 0x4c, 0xe7, 0xca, 0x14, 0x96, 0x4f, 0x83, 0x68, 0xa8, 0x59, 0xb7, 0x8d, 0x8d, 0x17, 0xb5, 0x9b, }; static const unsigned char xdh_wei448_2313_sharedsecret[] = { 0x4a, 0x71, 0x74, 0xf4, 0xbf, 0x4d, 0xe8, 0xc3, 0xd9, 0xc9, 0x54, 0xdd, 0xf9, 0x86, 0x5b, 0xca, 0x47, 0xb0, 0xb9, 0xd8, 0xde, 0xa5, 0x1c, 0x3a, 0xf2, 0x90, 0xbf, 0x6e, 0x3e, 0xf8, 0xee, 0xa8, 0x26, 0x30, 0x36, 0xed, 0xb7, 0x70, 0xf5, 0x63, 0x3c, 0x05, 0x08, 0xe2, 0x67, 0x0c, 0xb9, 0xef, 0x24, 0x7d, 0x99, 0xc9, 0xf9, 0x4a, 0xab, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2313 = { .name = "xdh_wei448_2313", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2313_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2313_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2313_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 241 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2314 for XDH, tcId is 242 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2314_peerpubkey[] = { 0x45, 0xb4, 0x60, 0x34, 0x8e, 0xc0, 0xaf, 0x65, 0x1d, 0x91, 0xef, 0xe8, 0x8f, 0x94, 0x69, 0x91, 0xd2, 0x73, 0xaf, 0xee, 0x61, 0x16, 0x5b, 0xf7, 0x33, 0x49, 0x1f, 0x02, 0x20, 0xe0, 0x51, 0x06, 0x87, 0xb5, 0x18, 0xf1, 0x34, 0xc4, 0xe7, 0xe8, 0xf0, 0x4f, 0x7d, 0x6b, 0xfc, 0xcc, 0xaf, 0x2d, 0x1c, 0x9e, 0x3b, 0xa5, 0xb5, 0x0f, 0x8f, 0xe1, }; static const unsigned char xdh_wei448_2314_privkey[] = { 0xcc, 0x80, 0x41, 0x7d, 0x3f, 0x9e, 0x3c, 0x94, 0x92, 0xdb, 0xb9, 0xd2, 0x5f, 0x46, 0x0b, 0x8d, 0xf4, 0x48, 0x49, 0x85, 0xb2, 0xad, 0x9f, 0xaa, 0xa6, 0x2d, 0xfd, 0x59, 0xe5, 0x73, 0x08, 0x15, 0x7e, 0x22, 0x6c, 0x47, 0x39, 0xd4, 0x60, 0xb0, 0x8d, 0xe4, 0x6c, 0xe6, 0x38, 0x01, 0xce, 0x7d, 0xa2, 0x55, 0x73, 0xc9, 0x46, 0xd0, 0x18, 0x88, }; static const unsigned char xdh_wei448_2314_sharedsecret[] = { 0xfa, 0x1b, 0x67, 0x5f, 0x6c, 0x89, 0x3e, 0xd6, 0x8f, 0xd5, 0x98, 0xff, 0xed, 0x63, 0xfc, 0x12, 0xde, 0x40, 0x61, 0x02, 0x0b, 0x90, 0xb2, 0x2b, 0x5f, 0x72, 0xe6, 0x36, 0xf0, 0x28, 0xed, 0xfd, 0xd9, 0xda, 0x42, 0x3e, 0x83, 0x40, 0x20, 0x3e, 0x83, 0x56, 0x0d, 0xcc, 0xcd, 0xd7, 0x76, 0xdb, 0x72, 0xc6, 0x1e, 0xa8, 0x8e, 0x5d, 0x1e, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2314 = { .name = "xdh_wei448_2314", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2314_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2314_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2314_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 242 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2315 for XDH, tcId is 243 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2315_peerpubkey[] = { 0xb9, 0x1e, 0x57, 0x17, 0x71, 0xaa, 0xd3, 0xc4, 0x04, 0xae, 0x46, 0x93, 0xbf, 0xf7, 0xf2, 0x14, 0x0a, 0x6c, 0x04, 0x2d, 0xb3, 0x06, 0x98, 0x94, 0xae, 0xf2, 0x0c, 0x1b, 0x34, 0xdd, 0x63, 0x5c, 0x6a, 0x08, 0x12, 0x62, 0x36, 0x45, 0x4b, 0xcb, 0x8c, 0x63, 0xa4, 0x7a, 0xc9, 0x43, 0x52, 0xa0, 0x45, 0x36, 0x76, 0x9b, 0x24, 0x22, 0x60, 0x06, }; static const unsigned char xdh_wei448_2315_privkey[] = { 0x98, 0xb7, 0xa5, 0xcf, 0xe0, 0x99, 0xbd, 0x4c, 0xbb, 0x37, 0xa7, 0x24, 0xdc, 0x0a, 0x8d, 0xe6, 0xae, 0xbf, 0x1d, 0x3f, 0xa4, 0x6d, 0xd6, 0xda, 0x64, 0xff, 0x76, 0x4e, 0x63, 0x3b, 0x4d, 0xcc, 0xd8, 0xc8, 0x07, 0x70, 0x50, 0xa9, 0x23, 0x27, 0xdd, 0x73, 0x6d, 0xca, 0xf9, 0x33, 0x2d, 0xb7, 0x1a, 0x0d, 0xfc, 0x51, 0xa9, 0xca, 0x18, 0x8c, }; static const unsigned char xdh_wei448_2315_sharedsecret[] = { 0x46, 0xeb, 0x6c, 0xd4, 0x9b, 0x02, 0x52, 0x4e, 0xfc, 0x3f, 0xa5, 0xfc, 0x6a, 0xdb, 0xd9, 0xb6, 0x04, 0x7f, 0xae, 0x2f, 0xb1, 0x74, 0x3d, 0xa9, 0x97, 0x68, 0x0e, 0x0e, 0x72, 0xc3, 0xcf, 0x1e, 0x86, 0x1f, 0xde, 0x59, 0xc0, 0x59, 0x4c, 0xf0, 0xc5, 0x80, 0x72, 0x6f, 0x0c, 0xe9, 0x94, 0x9c, 0x65, 0xdd, 0x7e, 0x71, 0x72, 0xfe, 0x51, 0x36, }; static const wycheproof_xdh_test xdh_wei448_2315 = { .name = "xdh_wei448_2315", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2315_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2315_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2315_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 243 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2316 for XDH, tcId is 244 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2316_peerpubkey[] = { 0x54, 0x2b, 0xb7, 0x70, 0x5e, 0x4a, 0x83, 0x1f, 0x0b, 0xb4, 0xcc, 0xfd, 0xcd, 0xfb, 0x74, 0xe7, 0x60, 0xcd, 0x45, 0x18, 0xbe, 0x85, 0x53, 0xe0, 0x5c, 0x14, 0x75, 0x9e, 0xe7, 0xf6, 0x7d, 0x0d, 0x7e, 0xec, 0x06, 0x61, 0xa2, 0xcb, 0x96, 0x57, 0xdc, 0xdd, 0x66, 0xdc, 0xfd, 0xba, 0xe4, 0x5b, 0x3d, 0xcb, 0x1e, 0xee, 0xab, 0x15, 0x20, 0x0d, }; static const unsigned char xdh_wei448_2316_privkey[] = { 0xf8, 0x69, 0x06, 0xe9, 0x18, 0x5e, 0x34, 0x75, 0xc6, 0x17, 0x91, 0x83, 0xac, 0xde, 0x9d, 0xd7, 0x5a, 0x59, 0x8f, 0xe7, 0x9c, 0x67, 0x70, 0xa9, 0xeb, 0x25, 0xee, 0x7c, 0x3e, 0xfa, 0xb8, 0x74, 0x0a, 0xbc, 0xfd, 0x50, 0x86, 0x79, 0xe3, 0x6f, 0x69, 0xb0, 0x61, 0x54, 0x34, 0x24, 0x36, 0xae, 0x52, 0xe5, 0x75, 0x9b, 0xf0, 0x15, 0xca, 0x84, }; static const unsigned char xdh_wei448_2316_sharedsecret[] = { 0x53, 0x36, 0xf3, 0x84, 0xa8, 0x10, 0x0c, 0xd9, 0x19, 0xd2, 0x52, 0x16, 0x46, 0xb6, 0xad, 0x8f, 0x77, 0xf2, 0x55, 0xe1, 0xa7, 0xc5, 0x08, 0x89, 0xb3, 0x3f, 0x1e, 0x24, 0x8f, 0xb5, 0xb0, 0xeb, 0x1c, 0x30, 0x2d, 0x27, 0xf3, 0x23, 0x5f, 0x7f, 0xd3, 0xf5, 0x82, 0x03, 0x75, 0x8f, 0x3f, 0x0d, 0xc7, 0x9d, 0xb6, 0x99, 0x35, 0x96, 0xcc, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2316 = { .name = "xdh_wei448_2316", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2316_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2316_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2316_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 244 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2317 for XDH, tcId is 245 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2317_peerpubkey[] = { 0x8a, 0x7b, 0x26, 0xe1, 0xd0, 0x96, 0xd5, 0xab, 0xdd, 0x69, 0x05, 0xb8, 0xf3, 0x7f, 0x01, 0xe0, 0xad, 0xbc, 0xe9, 0xbd, 0x85, 0x61, 0x7e, 0xf6, 0x5e, 0x78, 0xcd, 0xff, 0x93, 0xaf, 0xab, 0xc3, 0xa1, 0x6f, 0x35, 0x61, 0xbd, 0x60, 0x5e, 0xa0, 0xca, 0xa4, 0xc6, 0x6d, 0xd6, 0x38, 0xf3, 0xca, 0xab, 0x4e, 0x76, 0x85, 0x9c, 0xfd, 0x7f, 0x44, }; static const unsigned char xdh_wei448_2317_privkey[] = { 0x74, 0x23, 0xbe, 0xdd, 0x2e, 0xbb, 0x65, 0x1a, 0xd8, 0x41, 0xb7, 0x8a, 0x89, 0x56, 0x8d, 0x05, 0xac, 0xf3, 0xbb, 0x5c, 0x17, 0x42, 0x2e, 0x16, 0x09, 0xf4, 0x06, 0x7b, 0xde, 0x59, 0x2c, 0x7d, 0xf2, 0xa0, 0x4a, 0xe3, 0xfe, 0xd7, 0xf6, 0xfc, 0xca, 0x82, 0xb7, 0x8d, 0xee, 0xc6, 0xb6, 0x20, 0x44, 0x8c, 0x18, 0x51, 0xde, 0x98, 0x56, 0x84, }; static const unsigned char xdh_wei448_2317_sharedsecret[] = { 0x6e, 0xc4, 0xc8, 0x08, 0xf1, 0xe7, 0x4d, 0x72, 0x93, 0xb4, 0xfd, 0x6a, 0x26, 0x7e, 0xcf, 0x4d, 0x57, 0xef, 0x58, 0xe6, 0x9e, 0x4e, 0xfa, 0x34, 0x27, 0xd4, 0x49, 0x49, 0x03, 0xe1, 0xbf, 0x1c, 0x10, 0x61, 0x06, 0x95, 0x37, 0x2f, 0xbe, 0x29, 0x8b, 0x33, 0x00, 0xda, 0x37, 0xf2, 0x84, 0xb6, 0x64, 0x48, 0x06, 0xcc, 0xe8, 0xb9, 0xd8, 0x52, }; static const wycheproof_xdh_test xdh_wei448_2317 = { .name = "xdh_wei448_2317", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2317_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2317_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2317_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 245 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2318 for XDH, tcId is 246 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2318_peerpubkey[] = { 0xb0, 0x1d, 0x26, 0x56, 0x5d, 0x2f, 0xd0, 0x56, 0x0c, 0xb6, 0x78, 0x6b, 0xb8, 0xcc, 0xcb, 0x6b, 0x06, 0x24, 0xd1, 0x9d, 0x9e, 0x3e, 0x60, 0x84, 0xcd, 0xd8, 0xb0, 0x2c, 0xe6, 0xbf, 0xa0, 0x60, 0x98, 0x5b, 0x1e, 0xed, 0x84, 0xed, 0xcf, 0x15, 0x84, 0x8a, 0xdf, 0xff, 0x62, 0x80, 0xef, 0x25, 0x14, 0x3c, 0xe4, 0x8a, 0x15, 0xd0, 0xd5, 0x70, }; static const unsigned char xdh_wei448_2318_privkey[] = { 0x0c, 0x27, 0x0d, 0xe1, 0x09, 0x01, 0x5b, 0xb6, 0x13, 0x3e, 0xb5, 0x48, 0xe3, 0xf1, 0xdf, 0x78, 0xcd, 0x10, 0x47, 0x4f, 0x5b, 0x35, 0xfb, 0x7b, 0x7b, 0xe5, 0x69, 0xcf, 0x66, 0xe0, 0x91, 0xcf, 0x12, 0xf4, 0x74, 0xe7, 0x57, 0xa7, 0x69, 0xb3, 0x58, 0xff, 0x27, 0x6f, 0x37, 0x69, 0xdf, 0x08, 0x11, 0x97, 0xcd, 0x15, 0xa5, 0x6d, 0x4d, 0x9d, }; static const unsigned char xdh_wei448_2318_sharedsecret[] = { 0x4c, 0xf8, 0x05, 0x8c, 0xd2, 0xa9, 0x0f, 0xa5, 0xcd, 0x19, 0x23, 0x7e, 0x19, 0xcf, 0x62, 0x0d, 0xda, 0x88, 0xf9, 0xeb, 0xac, 0x2b, 0x69, 0x75, 0xda, 0xc1, 0x82, 0x5d, 0x26, 0x68, 0xd4, 0xea, 0x1b, 0x6d, 0xca, 0xd6, 0xbe, 0x81, 0xde, 0xc5, 0x4e, 0x2a, 0xfa, 0x9c, 0x61, 0x3d, 0x7d, 0x22, 0x84, 0xa4, 0xbb, 0x61, 0x1c, 0xa2, 0x71, 0xf5, }; static const wycheproof_xdh_test xdh_wei448_2318 = { .name = "xdh_wei448_2318", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2318_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2318_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2318_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 246 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2319 for XDH, tcId is 247 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2319_peerpubkey[] = { 0x6a, 0x36, 0xb7, 0x29, 0xe0, 0x4f, 0xb9, 0xc1, 0xd3, 0x54, 0x41, 0x62, 0x2b, 0x73, 0x5f, 0xe2, 0x17, 0x87, 0x00, 0xd8, 0x28, 0x9a, 0xbb, 0x4c, 0xee, 0x07, 0xfe, 0xac, 0x47, 0xbf, 0xb8, 0xab, 0x3b, 0x5b, 0x19, 0x37, 0x10, 0x53, 0xfe, 0xa2, 0x0e, 0x4c, 0xef, 0x03, 0x6d, 0xda, 0xc5, 0xbc, 0xb5, 0x1f, 0x74, 0x36, 0xae, 0xe3, 0x4a, 0x9e, }; static const unsigned char xdh_wei448_2319_privkey[] = { 0xbc, 0xcf, 0xa0, 0x99, 0x85, 0x11, 0x63, 0xd5, 0x23, 0xb4, 0x8d, 0x2a, 0x09, 0x8e, 0xb3, 0xec, 0x43, 0x45, 0x26, 0x59, 0x57, 0x5e, 0x1d, 0x63, 0xec, 0xdf, 0x5e, 0x59, 0x94, 0x39, 0x7d, 0xe1, 0x2d, 0x42, 0xae, 0x72, 0xb7, 0x88, 0x49, 0x94, 0xda, 0xa7, 0xe7, 0x5d, 0x8a, 0x25, 0x18, 0x67, 0x3f, 0x7f, 0xa1, 0x9a, 0x7a, 0x6a, 0xf1, 0x90, }; static const unsigned char xdh_wei448_2319_sharedsecret[] = { 0xa7, 0x87, 0xfd, 0x2a, 0xcb, 0x08, 0xe0, 0xcc, 0xf9, 0xe9, 0x63, 0xb7, 0xf1, 0xf2, 0x4a, 0xfb, 0x73, 0x02, 0x49, 0x3c, 0xa8, 0xa6, 0xc5, 0xb8, 0xa4, 0x41, 0xb7, 0xf8, 0x16, 0x30, 0x77, 0x6f, 0x35, 0x90, 0x27, 0x6c, 0x79, 0xa5, 0x7f, 0xea, 0x74, 0xb3, 0x57, 0x52, 0xa5, 0xdf, 0x08, 0x70, 0xa1, 0x23, 0x2b, 0x6c, 0x7f, 0x43, 0x2c, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2319 = { .name = "xdh_wei448_2319", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2319_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2319_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2319_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 247 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2320 for XDH, tcId is 248 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2320_peerpubkey[] = { 0xa8, 0xac, 0xd6, 0xc7, 0x32, 0x7e, 0xe6, 0x62, 0x2d, 0xf0, 0x85, 0xb0, 0xe2, 0xb6, 0x87, 0x76, 0xae, 0xcc, 0x68, 0xfe, 0x57, 0x9a, 0xc9, 0x01, 0x12, 0xe5, 0xd4, 0x01, 0x3e, 0x18, 0x38, 0x6c, 0x32, 0x01, 0xca, 0x53, 0x3b, 0x76, 0x38, 0xe7, 0x6c, 0x76, 0x04, 0xbe, 0x54, 0xfb, 0x93, 0x66, 0x9a, 0xbe, 0x9e, 0x9d, 0x1d, 0x5c, 0xbc, 0xd5, }; static const unsigned char xdh_wei448_2320_privkey[] = { 0x3c, 0xcc, 0xc1, 0x4a, 0xfd, 0x4c, 0x79, 0x6e, 0xcd, 0xf0, 0x41, 0x12, 0x14, 0x88, 0x0d, 0x61, 0x88, 0xc7, 0x4c, 0x99, 0x87, 0x66, 0xd1, 0x62, 0x2f, 0xdb, 0x90, 0x57, 0x3f, 0x07, 0x0e, 0x1f, 0x2b, 0x6b, 0xe5, 0x95, 0x54, 0x32, 0x29, 0xb5, 0xed, 0xf3, 0xf8, 0x8f, 0x26, 0x13, 0x9f, 0x9d, 0x3f, 0x65, 0x00, 0xe5, 0xbb, 0xba, 0x92, 0x99, }; static const unsigned char xdh_wei448_2320_sharedsecret[] = { 0x4d, 0xc8, 0x46, 0xc3, 0x35, 0xa9, 0xe3, 0x7c, 0x4b, 0x1e, 0x02, 0x8c, 0xbb, 0xf1, 0x21, 0x95, 0x7a, 0xa0, 0xb4, 0x82, 0x6c, 0x6c, 0x7e, 0xb5, 0xf1, 0x16, 0xa6, 0xd6, 0xf9, 0x48, 0xe5, 0xbf, 0xa6, 0x25, 0xa4, 0xf1, 0x7c, 0xb5, 0xf3, 0xc1, 0xeb, 0x33, 0x56, 0x1e, 0xa6, 0xb4, 0x77, 0xb7, 0xc6, 0x49, 0xc9, 0xba, 0x89, 0xfa, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2320 = { .name = "xdh_wei448_2320", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2320_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2320_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2320_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 248 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2321 for XDH, tcId is 249 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2321_peerpubkey[] = { 0xe5, 0x45, 0x3d, 0x6c, 0x5b, 0xb8, 0x8d, 0xca, 0x66, 0x79, 0x8b, 0xb0, 0x08, 0xbf, 0xc7, 0x32, 0xa2, 0xf4, 0xd1, 0x50, 0xf1, 0x77, 0x0c, 0x12, 0xf0, 0xd4, 0xc3, 0xcf, 0xee, 0x7b, 0x62, 0xee, 0x4f, 0x64, 0x0f, 0x88, 0x8a, 0x51, 0x6a, 0x4f, 0x9b, 0x85, 0x54, 0x55, 0x9f, 0xe0, 0x4c, 0xf7, 0xcf, 0x6f, 0x5b, 0xdf, 0x95, 0xe6, 0xf5, 0x06, }; static const unsigned char xdh_wei448_2321_privkey[] = { 0x74, 0xe8, 0xd6, 0xfb, 0x8c, 0xac, 0x97, 0x14, 0xe2, 0xe3, 0xb3, 0x3e, 0x0a, 0xe9, 0x83, 0x72, 0x89, 0x07, 0xcc, 0x8e, 0xc5, 0x93, 0x21, 0x3c, 0x34, 0x04, 0x58, 0x8e, 0x9f, 0x05, 0x7b, 0x94, 0xb1, 0xc3, 0xc7, 0x47, 0x4d, 0xa2, 0x43, 0x80, 0xed, 0xc3, 0x63, 0x03, 0xc5, 0x9a, 0xca, 0x5e, 0xf8, 0x67, 0x8d, 0x89, 0x62, 0x3d, 0x8b, 0x8b, }; static const unsigned char xdh_wei448_2321_sharedsecret[] = { 0xd5, 0xce, 0xc8, 0xc6, 0xe7, 0x44, 0x69, 0x73, 0x98, 0x55, 0xb8, 0x74, 0xc6, 0x36, 0x5b, 0x92, 0x0f, 0x6d, 0xd2, 0xdf, 0x38, 0xc0, 0x2e, 0xcb, 0xdf, 0x47, 0xef, 0xe8, 0xb4, 0x3e, 0xbd, 0x7d, 0x20, 0x3c, 0x4f, 0x11, 0x85, 0xbb, 0x10, 0x1d, 0x49, 0x5f, 0xd5, 0xe6, 0x8b, 0xc8, 0x92, 0x80, 0x26, 0x7a, 0xf5, 0x81, 0x89, 0x8b, 0x03, 0x49, }; static const wycheproof_xdh_test xdh_wei448_2321 = { .name = "xdh_wei448_2321", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2321_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2321_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2321_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 249 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2322 for XDH, tcId is 250 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2322_peerpubkey[] = { 0xec, 0x5c, 0xec, 0x8d, 0xe7, 0x18, 0xb0, 0x86, 0x64, 0xf2, 0xa5, 0xf7, 0x95, 0xbe, 0x52, 0x15, 0x37, 0x12, 0xe7, 0x46, 0x76, 0x05, 0xfd, 0xe4, 0x2d, 0xcf, 0x30, 0xc7, 0xce, 0xbe, 0x4c, 0xa8, 0xe8, 0x71, 0x0c, 0xc8, 0x99, 0x75, 0x24, 0x24, 0x01, 0xe5, 0x83, 0x90, 0x59, 0xf0, 0xaa, 0xd6, 0xd6, 0x1a, 0x7a, 0x67, 0x5c, 0x45, 0x48, 0x1c, }; static const unsigned char xdh_wei448_2322_privkey[] = { 0xf0, 0x49, 0x0b, 0xe3, 0xbe, 0xfd, 0x45, 0x60, 0x48, 0x60, 0x23, 0x73, 0x1a, 0x03, 0x97, 0x08, 0x08, 0x16, 0xe5, 0x5d, 0xb0, 0x5e, 0x77, 0x7b, 0xa7, 0x8e, 0x22, 0x51, 0xcd, 0x20, 0xf3, 0x50, 0x4a, 0x16, 0x31, 0x90, 0x78, 0xd2, 0xfe, 0x73, 0x14, 0xb3, 0x0f, 0xdc, 0xef, 0x00, 0xd7, 0x80, 0x94, 0x2d, 0x13, 0xd3, 0xf4, 0xde, 0x76, 0x98, }; static const unsigned char xdh_wei448_2322_sharedsecret[] = { 0x65, 0xa9, 0x20, 0xbb, 0xf2, 0x22, 0x92, 0x0f, 0xc7, 0x54, 0xa1, 0x83, 0x96, 0x8c, 0x6b, 0x98, 0x86, 0x17, 0x45, 0x0a, 0x5b, 0x28, 0xde, 0x1b, 0x5d, 0xe0, 0xee, 0x23, 0xf6, 0x67, 0x40, 0x36, 0xdf, 0xc9, 0x09, 0xd3, 0x78, 0xb1, 0xde, 0x87, 0x20, 0x9a, 0xe3, 0x31, 0xc1, 0x67, 0xc6, 0x1a, 0x0b, 0xfd, 0xab, 0xc3, 0xd2, 0x09, 0x4e, 0x65, }; static const wycheproof_xdh_test xdh_wei448_2322 = { .name = "xdh_wei448_2322", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2322_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2322_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2322_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 250 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2323 for XDH, tcId is 251 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2323_peerpubkey[] = { 0xc8, 0x08, 0x89, 0xfb, 0x36, 0x4d, 0xc6, 0xa2, 0x3b, 0x16, 0xc0, 0x5f, 0x16, 0xbe, 0x51, 0x01, 0x0c, 0xc5, 0xbf, 0x50, 0xc8, 0xd3, 0xab, 0xb6, 0x09, 0x7f, 0xe4, 0x67, 0x92, 0x3d, 0x50, 0x52, 0x2b, 0xfc, 0xb5, 0x7a, 0xe1, 0xa8, 0xe5, 0x36, 0xab, 0x00, 0xe9, 0x7b, 0x6d, 0x69, 0x89, 0xd3, 0x54, 0x65, 0xc0, 0x0a, 0xd1, 0xfc, 0xd7, 0x57, }; static const unsigned char xdh_wei448_2323_privkey[] = { 0x14, 0xdf, 0xec, 0xdc, 0x6a, 0xe2, 0x09, 0x1a, 0x22, 0x3a, 0x3e, 0x6b, 0xea, 0x36, 0xc3, 0xca, 0xf3, 0x56, 0xb6, 0x6e, 0xd8, 0x47, 0x88, 0x21, 0xd2, 0x85, 0xa1, 0x04, 0x08, 0xed, 0xc0, 0x30, 0xc1, 0x18, 0xbc, 0x2f, 0x60, 0x99, 0x97, 0x14, 0x6f, 0xba, 0xbf, 0x34, 0x86, 0x58, 0xfa, 0x8b, 0xf3, 0x13, 0xda, 0x6e, 0xd4, 0x9c, 0xe2, 0x81, }; static const unsigned char xdh_wei448_2323_sharedsecret[] = { 0x74, 0x0a, 0x84, 0xcd, 0x54, 0xaf, 0xe2, 0x3b, 0x00, 0x60, 0x6a, 0x30, 0x09, 0xbb, 0x37, 0xa1, 0x30, 0x11, 0x8e, 0x53, 0x52, 0xc5, 0xe3, 0xc3, 0x8b, 0x51, 0x7f, 0xfa, 0x46, 0x98, 0x78, 0x98, 0x52, 0xdc, 0x15, 0x9e, 0x35, 0xd0, 0x6c, 0xe5, 0xeb, 0x68, 0xba, 0x54, 0x14, 0xb2, 0xe6, 0x51, 0x5d, 0x68, 0x3a, 0x80, 0x02, 0x81, 0x74, 0x72, }; static const wycheproof_xdh_test xdh_wei448_2323 = { .name = "xdh_wei448_2323", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2323_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2323_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2323_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 251 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2324 for XDH, tcId is 252 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2324_peerpubkey[] = { 0x0a, 0xd8, 0xa1, 0x51, 0x1e, 0x59, 0xa2, 0x38, 0xbb, 0x9b, 0xfd, 0x79, 0x04, 0x44, 0xf6, 0xeb, 0x87, 0xed, 0x22, 0xcb, 0x17, 0x0f, 0x9d, 0xcc, 0xbb, 0xcb, 0xc6, 0x4d, 0x0a, 0x66, 0x33, 0x62, 0x32, 0xcd, 0x2d, 0xca, 0x7b, 0x9c, 0xcb, 0x93, 0x44, 0x58, 0x4e, 0xf7, 0x1e, 0x18, 0x1d, 0x5f, 0x47, 0x7b, 0x88, 0x3d, 0xbd, 0x65, 0xdb, 0x7e, }; static const unsigned char xdh_wei448_2324_privkey[] = { 0x0c, 0x3b, 0xdd, 0x0e, 0xae, 0x10, 0x80, 0x13, 0x94, 0xd8, 0x1d, 0x88, 0xc5, 0x0b, 0x0c, 0x79, 0x1e, 0xe8, 0x39, 0x7a, 0x26, 0xe7, 0x0d, 0xfa, 0x02, 0xa0, 0x30, 0xeb, 0x8d, 0xed, 0xa5, 0xa2, 0x0b, 0xf6, 0x9c, 0x42, 0x6f, 0x64, 0xbf, 0xc7, 0x5c, 0x9b, 0xc3, 0x6d, 0x76, 0xa3, 0x54, 0xea, 0xc4, 0xcb, 0xc8, 0x3b, 0xa5, 0x6d, 0x8d, 0x88, }; static const unsigned char xdh_wei448_2324_sharedsecret[] = { 0x30, 0x36, 0x4d, 0xac, 0x7c, 0x97, 0x17, 0xc7, 0x79, 0x27, 0xbd, 0x11, 0x3f, 0x9d, 0x5c, 0xfb, 0x16, 0xf4, 0xe3, 0xfb, 0xeb, 0x5f, 0xe1, 0xd1, 0x73, 0x5f, 0xf7, 0x91, 0xea, 0x2c, 0x12, 0xd5, 0x40, 0x21, 0xbf, 0x52, 0xdb, 0xb2, 0xb2, 0x76, 0xdf, 0xf5, 0x0b, 0x78, 0x9e, 0x96, 0x49, 0x72, 0xb5, 0x0e, 0x4c, 0x07, 0x0e, 0xde, 0xa4, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2324 = { .name = "xdh_wei448_2324", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2324_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2324_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2324_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 252 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2325 for XDH, tcId is 253 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2325_peerpubkey[] = { 0x51, 0x0b, 0xf0, 0x00, 0x66, 0x14, 0x2c, 0xe7, 0xcb, 0x50, 0x6b, 0x22, 0x7f, 0xdf, 0xd1, 0xe1, 0xc5, 0x7e, 0x9c, 0xef, 0x90, 0x18, 0x64, 0x38, 0x4a, 0xe0, 0x76, 0x40, 0x14, 0x1e, 0xd2, 0xbf, 0x70, 0x0c, 0x91, 0xb5, 0x64, 0x1d, 0x6f, 0xbe, 0x40, 0x96, 0xdd, 0x21, 0xad, 0x51, 0x73, 0x47, 0x72, 0x27, 0xe4, 0x73, 0x3b, 0xdc, 0xd3, 0xaa, }; static const unsigned char xdh_wei448_2325_privkey[] = { 0x7c, 0xba, 0xa9, 0xa6, 0x20, 0x37, 0xfb, 0x3b, 0x44, 0xda, 0x1c, 0x07, 0xad, 0xc7, 0x69, 0x85, 0xbb, 0x0c, 0x55, 0xe7, 0xfb, 0x58, 0x54, 0xed, 0xd1, 0x14, 0xa1, 0xae, 0xb3, 0x87, 0x95, 0xc4, 0xce, 0x5f, 0xc9, 0x3f, 0x6c, 0x72, 0x57, 0xf0, 0x45, 0xca, 0x9a, 0xe8, 0x52, 0x6a, 0xdb, 0xda, 0xc5, 0x7f, 0x40, 0x86, 0xb6, 0x98, 0xbb, 0x85, }; static const unsigned char xdh_wei448_2325_sharedsecret[] = { 0x71, 0x11, 0xd8, 0x4a, 0x2d, 0x5e, 0x7b, 0xfb, 0x45, 0xf1, 0xd8, 0x9a, 0x58, 0xab, 0x39, 0x27, 0xfe, 0xb3, 0x9b, 0x31, 0x6c, 0xfa, 0x35, 0x48, 0xc3, 0xf0, 0x56, 0x15, 0x3a, 0xe8, 0x2c, 0xd5, 0x20, 0xa5, 0x82, 0x78, 0xf9, 0x72, 0xc3, 0xd6, 0xdc, 0xaa, 0xdf, 0x6a, 0xe6, 0x83, 0x3f, 0x94, 0x9b, 0x2b, 0x9c, 0xb5, 0xe4, 0x34, 0x14, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2325 = { .name = "xdh_wei448_2325", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2325_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2325_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2325_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 253 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2326 for XDH, tcId is 254 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2326_peerpubkey[] = { 0x29, 0x51, 0xe6, 0xc0, 0x95, 0x0e, 0x6a, 0xd8, 0x80, 0x8a, 0x5f, 0xa3, 0x4a, 0x0a, 0x82, 0x8c, 0x04, 0xaa, 0x51, 0x3c, 0x3c, 0x79, 0x8f, 0x43, 0x15, 0xab, 0x6d, 0x4f, 0x47, 0x6f, 0x7a, 0x82, 0xa9, 0x69, 0x19, 0x7c, 0x24, 0xb8, 0xec, 0x6c, 0xa2, 0x30, 0xe6, 0xbb, 0xc6, 0xe6, 0xb8, 0xf2, 0xaf, 0x47, 0x8f, 0x46, 0x33, 0xa2, 0x7a, 0xf0, }; static const unsigned char xdh_wei448_2326_privkey[] = { 0x98, 0x84, 0x92, 0xb8, 0x2d, 0x09, 0x6f, 0xa8, 0x2e, 0x9b, 0xd1, 0x2b, 0xab, 0xe1, 0xb5, 0x27, 0xd0, 0xeb, 0xb4, 0x2d, 0x13, 0x19, 0x43, 0x87, 0xf8, 0x9e, 0xe1, 0x13, 0x07, 0x01, 0xda, 0x37, 0x04, 0x9a, 0x23, 0xc7, 0x26, 0xe2, 0x86, 0x24, 0x14, 0x4c, 0xb4, 0x9b, 0x1c, 0xcc, 0x09, 0x3a, 0x6e, 0xaf, 0x24, 0x2a, 0x27, 0xa6, 0xf0, 0x86, }; static const unsigned char xdh_wei448_2326_sharedsecret[] = { 0x42, 0x37, 0x05, 0x8a, 0x28, 0x37, 0xa7, 0x5c, 0xbb, 0xdb, 0xc5, 0x60, 0x43, 0xab, 0x3e, 0xd8, 0xcc, 0x02, 0xf5, 0x96, 0xec, 0x5c, 0xee, 0x54, 0x7a, 0x5d, 0x68, 0x2f, 0x00, 0x8d, 0xf4, 0x9e, 0x60, 0x11, 0x90, 0x1c, 0x94, 0x0e, 0x41, 0x6e, 0xef, 0x37, 0x1c, 0x80, 0xe3, 0x1f, 0xea, 0x48, 0x3f, 0x00, 0x92, 0x51, 0xf7, 0x2a, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei448_2326 = { .name = "xdh_wei448_2326", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2326_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2326_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2326_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 254 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2327 for XDH, tcId is 255 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2327_peerpubkey[] = { 0x3d, 0xa1, 0x0f, 0x7b, 0x47, 0xf0, 0x77, 0x4a, 0xeb, 0x7c, 0x2d, 0x3e, 0xc9, 0x52, 0x14, 0xb5, 0x4f, 0xb8, 0x0a, 0xb8, 0xf5, 0x35, 0xec, 0x13, 0x84, 0xac, 0xaa, 0xd0, 0x4b, 0x6d, 0x88, 0x61, 0x87, 0x2d, 0x0b, 0xc9, 0x03, 0xab, 0x9c, 0x9b, 0x61, 0xca, 0xc4, 0x67, 0xa3, 0xf6, 0x32, 0xf0, 0xe5, 0x37, 0xa6, 0x96, 0xea, 0x88, 0x28, 0x0b, }; static const unsigned char xdh_wei448_2327_privkey[] = { 0x38, 0xb1, 0x19, 0x0d, 0xd6, 0x91, 0xea, 0xc7, 0xbd, 0x5f, 0x80, 0x6b, 0x20, 0x1f, 0xdb, 0xf9, 0x0e, 0x0e, 0xf7, 0xc7, 0x2f, 0x79, 0xbf, 0x2e, 0xf3, 0xa0, 0x4e, 0xac, 0xbc, 0xd4, 0x09, 0x98, 0x4b, 0xc7, 0x65, 0xc0, 0x4f, 0x64, 0x1d, 0xa9, 0x80, 0x25, 0xe4, 0x16, 0x41, 0x55, 0x92, 0xc9, 0x1c, 0x18, 0xec, 0x3c, 0x4d, 0x39, 0x85, 0x9b, }; static const unsigned char xdh_wei448_2327_sharedsecret[] = { 0x4e, 0xda, 0x68, 0xdf, 0x39, 0xba, 0x14, 0xb0, 0x9e, 0xed, 0xd4, 0xc5, 0x2d, 0xb5, 0xa4, 0x95, 0x5b, 0x4e, 0x00, 0xb0, 0x56, 0xca, 0x18, 0x23, 0xe9, 0x3f, 0x19, 0x0b, 0x21, 0xff, 0x7f, 0xe7, 0xe0, 0x5f, 0x80, 0x89, 0xfb, 0x0c, 0x0a, 0x1f, 0xaa, 0x84, 0xff, 0xed, 0xe4, 0x2a, 0xb9, 0xac, 0x93, 0x79, 0x9b, 0x99, 0xfe, 0x18, 0x25, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2327 = { .name = "xdh_wei448_2327", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2327_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2327_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2327_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 255 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2328 for XDH, tcId is 256 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2328_peerpubkey[] = { 0x83, 0xfd, 0x7a, 0xac, 0x6b, 0xe7, 0x83, 0x19, 0x80, 0xbc, 0x1f, 0x39, 0x16, 0xc3, 0xcb, 0x6b, 0xf0, 0x85, 0x1a, 0x29, 0x04, 0xab, 0x9a, 0x38, 0xca, 0xa4, 0xe7, 0xa0, 0x14, 0xfb, 0xee, 0xbe, 0x9f, 0xa0, 0x12, 0x5a, 0x39, 0xa3, 0xa2, 0x29, 0xc8, 0xdf, 0xc7, 0x5c, 0x98, 0xc3, 0x03, 0x17, 0x9e, 0x60, 0x95, 0x44, 0x69, 0xeb, 0x83, 0x0f, }; static const unsigned char xdh_wei448_2328_privkey[] = { 0xe4, 0xa4, 0x81, 0x98, 0xa8, 0x66, 0x81, 0x2b, 0x3c, 0x7a, 0xc4, 0xe2, 0x83, 0xcf, 0x2b, 0x34, 0x01, 0x33, 0xed, 0xb4, 0x88, 0x06, 0xc9, 0x5c, 0xae, 0xe3, 0x22, 0xea, 0x58, 0x30, 0x9f, 0x9d, 0x53, 0xe7, 0x5c, 0x65, 0x54, 0x05, 0x17, 0x4c, 0x50, 0xd8, 0x7c, 0x37, 0xaf, 0x69, 0xe6, 0x26, 0xbc, 0x5e, 0xb3, 0xfe, 0x48, 0x29, 0x08, 0x9a, }; static const unsigned char xdh_wei448_2328_sharedsecret[] = { 0x30, 0xd4, 0x13, 0x2a, 0x48, 0xfd, 0xa4, 0x03, 0x0d, 0xd6, 0xee, 0x8f, 0x6b, 0x92, 0x91, 0x8f, 0x95, 0x67, 0xc4, 0x0a, 0xbc, 0xd1, 0x93, 0xd7, 0x60, 0x4e, 0x55, 0x10, 0x79, 0xa7, 0xa3, 0xf8, 0x1f, 0x80, 0x25, 0x7b, 0x43, 0x85, 0x9d, 0xd9, 0x0a, 0xd2, 0x17, 0xbd, 0xb3, 0xb2, 0xe0, 0xef, 0x1b, 0x0b, 0x7e, 0x88, 0x46, 0xb9, 0xb4, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_2328 = { .name = "xdh_wei448_2328", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2328_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2328_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2328_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 256 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2329 for XDH, tcId is 257 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2329_peerpubkey[] = { 0xd3, 0x18, 0x3f, 0x95, 0x04, 0xd7, 0xa2, 0xa7, 0x13, 0x41, 0x37, 0x5a, 0xde, 0x2a, 0x68, 0xa5, 0xb2, 0xb5, 0xf5, 0x97, 0x93, 0x21, 0xee, 0x5b, 0xfa, 0x55, 0x35, 0x5b, 0x8b, 0x60, 0x2b, 0xfe, 0x5e, 0x6e, 0xa6, 0xd9, 0xa8, 0xe9, 0xd8, 0x3e, 0xd1, 0x14, 0x6a, 0x08, 0x16, 0x62, 0xb0, 0xa5, 0x2f, 0x52, 0x37, 0x4e, 0x9d, 0x93, 0xe9, 0x22, }; static const unsigned char xdh_wei448_2329_privkey[] = { 0x3c, 0x96, 0x99, 0xd1, 0x52, 0xec, 0x8f, 0x3d, 0xe3, 0x8e, 0xf3, 0x7a, 0x92, 0xa3, 0x86, 0x59, 0x28, 0x3e, 0xee, 0xfd, 0x19, 0x25, 0xf9, 0x6c, 0xac, 0x53, 0xb4, 0xb7, 0x5b, 0xaf, 0x32, 0x95, 0xdd, 0xd7, 0x08, 0xeb, 0x1b, 0x0f, 0x0a, 0xf0, 0x92, 0x57, 0x92, 0xac, 0x8a, 0xe9, 0xf8, 0x12, 0xde, 0x2b, 0x48, 0xd8, 0x7c, 0x11, 0x4a, 0x9d, }; static const unsigned char xdh_wei448_2329_sharedsecret[] = { 0x7c, 0x27, 0xfa, 0x6b, 0x65, 0x13, 0x3c, 0xd1, 0xa4, 0xa2, 0x90, 0x16, 0x03, 0x0e, 0x11, 0x20, 0x4c, 0x9c, 0xc5, 0x70, 0xcb, 0xda, 0xbe, 0xa0, 0x78, 0xea, 0xbb, 0x5a, 0x2f, 0xb9, 0x2a, 0x3a, 0xc9, 0xf7, 0x5e, 0x4a, 0x19, 0x8d, 0x29, 0x1a, 0xb2, 0xc2, 0x60, 0x4f, 0xad, 0x6b, 0x1a, 0x36, 0xda, 0x89, 0x19, 0xfc, 0xe3, 0x55, 0x60, 0xe8, }; static const wycheproof_xdh_test xdh_wei448_2329 = { .name = "xdh_wei448_2329", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2329_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2329_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2329_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 257 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2330 for XDH, tcId is 258 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2330_peerpubkey[] = { 0x40, 0xa4, 0xe6, 0x6d, 0x42, 0xe4, 0xd9, 0xa1, 0x3e, 0xd3, 0x48, 0xb3, 0x90, 0xb4, 0x06, 0xa1, 0xd7, 0x3a, 0x1a, 0xd7, 0x1a, 0x2d, 0xe9, 0xf0, 0x65, 0x69, 0x29, 0x92, 0xb0, 0x1b, 0xa6, 0x24, 0x3c, 0x01, 0x34, 0xf4, 0x15, 0x0f, 0xb9, 0xa3, 0xaa, 0xaf, 0xb6, 0xb7, 0x4f, 0x27, 0xe7, 0x3a, 0x53, 0xee, 0x96, 0xee, 0xb0, 0x95, 0x03, 0x2e, }; static const unsigned char xdh_wei448_2330_privkey[] = { 0x2c, 0x45, 0x44, 0x67, 0x14, 0xbc, 0xb9, 0x25, 0x2b, 0x29, 0xaa, 0x50, 0x50, 0x27, 0x7b, 0x43, 0xcb, 0x39, 0x77, 0x58, 0x49, 0x0f, 0x49, 0x65, 0xe7, 0x7a, 0x8b, 0x6c, 0xb9, 0x84, 0xb4, 0x51, 0x18, 0xb6, 0x23, 0x48, 0xeb, 0x49, 0x4a, 0xe9, 0x6b, 0x74, 0x43, 0x15, 0x52, 0xa9, 0x45, 0x61, 0x0b, 0x2e, 0x1f, 0x56, 0x59, 0xfb, 0xc7, 0x81, }; static const unsigned char xdh_wei448_2330_sharedsecret[] = { 0x75, 0x0b, 0x89, 0xd5, 0xbe, 0x9d, 0x34, 0xa3, 0x2b, 0x92, 0xab, 0xef, 0x98, 0x44, 0x07, 0x29, 0xa7, 0x3c, 0x73, 0x3b, 0xd6, 0x31, 0x8e, 0x38, 0x59, 0xbf, 0x88, 0x7f, 0x4b, 0x46, 0xa7, 0x04, 0x8a, 0x61, 0xeb, 0xa1, 0xe3, 0xc9, 0x88, 0x89, 0xee, 0x71, 0x2c, 0x4f, 0x24, 0x65, 0x83, 0xcb, 0xea, 0x23, 0x76, 0x82, 0x50, 0x80, 0x2d, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2330 = { .name = "xdh_wei448_2330", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2330_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2330_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2330_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 258 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2331 for XDH, tcId is 259 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2331_peerpubkey[] = { 0x72, 0xf7, 0x48, 0xf5, 0x10, 0x28, 0xb0, 0xb2, 0xb3, 0x89, 0x64, 0x24, 0x71, 0x00, 0xfb, 0x55, 0x21, 0x75, 0xfa, 0xdd, 0x4a, 0xb5, 0xbc, 0xf3, 0x9d, 0xcf, 0xbd, 0xda, 0x32, 0x8b, 0xd6, 0x7f, 0xa1, 0x04, 0xe4, 0x6e, 0x7a, 0x55, 0xfb, 0x03, 0x19, 0xe4, 0xfe, 0x7c, 0x94, 0x07, 0xc8, 0x68, 0x30, 0xcb, 0x41, 0x81, 0x08, 0x62, 0x05, 0x4b, }; static const unsigned char xdh_wei448_2331_privkey[] = { 0xf0, 0xf1, 0x87, 0xeb, 0xde, 0x1b, 0xf9, 0xa1, 0xcf, 0x5f, 0xc3, 0xa9, 0xf9, 0x05, 0x2b, 0x33, 0xa7, 0xf5, 0x07, 0x2e, 0xfe, 0x84, 0xfb, 0x06, 0x02, 0xcd, 0x50, 0x0b, 0x78, 0xc8, 0xaa, 0xce, 0x23, 0x49, 0x90, 0xd3, 0xc2, 0x93, 0xcd, 0xd1, 0x9d, 0x8e, 0xf0, 0x60, 0x12, 0x28, 0x9a, 0x28, 0x0c, 0x53, 0xae, 0x81, 0x4f, 0xc4, 0x29, 0x94, }; static const unsigned char xdh_wei448_2331_sharedsecret[] = { 0x3f, 0x08, 0xf0, 0xfe, 0x4c, 0x3a, 0x6b, 0xad, 0x42, 0x5c, 0x62, 0x68, 0xb4, 0xc3, 0xeb, 0xe5, 0x98, 0x3b, 0xda, 0xfc, 0xd7, 0xb6, 0x0a, 0x02, 0xd1, 0x24, 0x7c, 0x76, 0xb2, 0xcd, 0xe2, 0xe5, 0x6c, 0x2c, 0x15, 0x2e, 0x17, 0x99, 0x59, 0x5c, 0xd1, 0x23, 0x72, 0x96, 0xbc, 0x9c, 0x1a, 0x74, 0xe1, 0x04, 0xcd, 0x9f, 0x5f, 0xb4, 0x1c, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2331 = { .name = "xdh_wei448_2331", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2331_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2331_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2331_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 259 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2332 for XDH, tcId is 260 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2332_peerpubkey[] = { 0x63, 0xb4, 0x75, 0xdd, 0x74, 0x8d, 0x69, 0xa3, 0xd9, 0xbd, 0x58, 0xb4, 0x0a, 0xad, 0x21, 0x4a, 0x49, 0x7f, 0xf6, 0xdd, 0xc1, 0x85, 0x95, 0x2d, 0xa9, 0xdf, 0x7f, 0x10, 0xf1, 0x47, 0x46, 0xd2, 0xfb, 0x3b, 0xa8, 0xa1, 0x63, 0xc6, 0x96, 0x84, 0x66, 0x0a, 0xda, 0x69, 0x5d, 0x97, 0xaa, 0x77, 0x5e, 0xfe, 0x31, 0x97, 0x83, 0x21, 0x0f, 0xb9, }; static const unsigned char xdh_wei448_2332_privkey[] = { 0xd4, 0xbe, 0x35, 0x9d, 0x94, 0x86, 0x27, 0xc6, 0x5c, 0x40, 0x66, 0x6b, 0x6f, 0xc5, 0x8d, 0xa9, 0x8a, 0x6d, 0x17, 0xa4, 0x37, 0xfc, 0x74, 0x5e, 0x1d, 0x08, 0x2c, 0x65, 0x45, 0xf5, 0xd2, 0x37, 0x1b, 0x25, 0xdf, 0x69, 0x09, 0x61, 0x95, 0x92, 0x4f, 0x45, 0x65, 0x72, 0x59, 0x43, 0xfa, 0x10, 0x89, 0xee, 0x19, 0x34, 0xf7, 0x67, 0x16, 0x93, }; static const unsigned char xdh_wei448_2332_sharedsecret[] = { 0xe6, 0x9b, 0x39, 0x17, 0xc3, 0xca, 0xf5, 0x8d, 0xfe, 0x8c, 0x9b, 0x60, 0x15, 0x44, 0xd3, 0x19, 0xa0, 0x05, 0x44, 0xf3, 0xc8, 0xba, 0x7c, 0x8c, 0x4d, 0x55, 0x71, 0x16, 0xd9, 0x41, 0x61, 0x71, 0xbb, 0x84, 0xce, 0x2d, 0xc1, 0xac, 0x72, 0x32, 0x49, 0x60, 0x50, 0x23, 0xd3, 0x9d, 0x28, 0x7f, 0x17, 0xf0, 0x23, 0x1c, 0x61, 0x1e, 0x6c, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2332 = { .name = "xdh_wei448_2332", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2332_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2332_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2332_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 260 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2333 for XDH, tcId is 261 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2333_peerpubkey[] = { 0x07, 0x31, 0xcb, 0x8c, 0x77, 0xf5, 0xb9, 0xe5, 0x1a, 0x90, 0x3b, 0x86, 0x47, 0x5e, 0x41, 0xa3, 0x7a, 0xbc, 0xb0, 0xef, 0xfb, 0x89, 0x8c, 0x6c, 0x8d, 0xe7, 0x1f, 0x28, 0xc8, 0x29, 0x2b, 0xe4, 0xa2, 0xcc, 0xdf, 0xf1, 0x3b, 0x62, 0xed, 0xd2, 0x1a, 0x8f, 0xad, 0x84, 0x6d, 0x0e, 0x1d, 0x9e, 0xac, 0x18, 0xcc, 0x4d, 0xe9, 0x23, 0x2d, 0x0e, }; static const unsigned char xdh_wei448_2333_privkey[] = { 0xc4, 0x21, 0xe2, 0x0c, 0x39, 0x1c, 0x60, 0xcf, 0x4a, 0xbc, 0x0d, 0x57, 0x2f, 0x33, 0x5c, 0x36, 0x7b, 0xf0, 0x2c, 0xd5, 0x98, 0x6f, 0x38, 0xc3, 0x80, 0x5f, 0xf3, 0x9f, 0xa9, 0x66, 0x08, 0x76, 0x80, 0x06, 0x30, 0x3e, 0xf5, 0xfd, 0x11, 0x87, 0xaf, 0x2d, 0x3a, 0x66, 0x72, 0xe5, 0x18, 0x16, 0x6b, 0x44, 0x8d, 0xc7, 0x9f, 0xe7, 0x1d, 0x9f, }; static const unsigned char xdh_wei448_2333_sharedsecret[] = { 0x7a, 0x7f, 0x60, 0xd5, 0x04, 0x45, 0x29, 0x98, 0xa6, 0x15, 0x37, 0x78, 0xe4, 0x9b, 0x66, 0x39, 0x76, 0xd7, 0x5a, 0xa8, 0x63, 0xa5, 0x71, 0xb2, 0xdc, 0x8c, 0x99, 0xbd, 0x4d, 0xd6, 0x12, 0x52, 0x19, 0x3e, 0x55, 0xfa, 0x06, 0x8b, 0x45, 0x19, 0x42, 0x71, 0xb3, 0xa3, 0x96, 0x91, 0x2a, 0x2c, 0xa3, 0x68, 0xb5, 0x60, 0x55, 0xb6, 0xf1, 0xc9, }; static const wycheproof_xdh_test xdh_wei448_2333 = { .name = "xdh_wei448_2333", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2333_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2333_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2333_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 261 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2334 for XDH, tcId is 262 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2334_peerpubkey[] = { 0xe1, 0x20, 0xba, 0xc8, 0xb1, 0x25, 0x14, 0x25, 0xb2, 0x44, 0xdb, 0x72, 0x12, 0x4d, 0xd9, 0x6c, 0x2c, 0x52, 0xcc, 0xa8, 0x2b, 0x42, 0x57, 0x00, 0x07, 0x0b, 0xb8, 0xa7, 0xdf, 0x81, 0x04, 0x35, 0x18, 0x98, 0x07, 0x62, 0x02, 0x2f, 0x0f, 0xc9, 0xe0, 0x9d, 0x15, 0xfc, 0xcb, 0x06, 0xb7, 0x6f, 0x5f, 0x8a, 0x57, 0x2a, 0x4b, 0x79, 0xee, 0x15, }; static const unsigned char xdh_wei448_2334_privkey[] = { 0x30, 0x12, 0xf7, 0x85, 0x1f, 0x3c, 0xe0, 0xaa, 0x48, 0x1d, 0xc6, 0x5c, 0x32, 0x22, 0x39, 0x79, 0x75, 0x11, 0xa6, 0xee, 0x1f, 0x02, 0xb1, 0x02, 0x6d, 0x49, 0x03, 0x2e, 0xfb, 0x99, 0x85, 0x03, 0xd7, 0x25, 0x05, 0xc7, 0x26, 0x1c, 0x61, 0xcd, 0x69, 0x8b, 0xa8, 0xae, 0xc1, 0xd1, 0xb9, 0xa8, 0x60, 0xe9, 0x90, 0x8c, 0x81, 0xe5, 0x63, 0x90, }; static const unsigned char xdh_wei448_2334_sharedsecret[] = { 0xe1, 0x56, 0x0d, 0xab, 0x7b, 0xb1, 0x8f, 0x74, 0xed, 0x8a, 0x98, 0x5f, 0x51, 0x99, 0x3d, 0x65, 0x59, 0xc3, 0x12, 0xfa, 0x45, 0x3d, 0x1e, 0xe8, 0x45, 0x47, 0xf3, 0x5f, 0xa8, 0x69, 0x4e, 0x97, 0x4a, 0xb6, 0x01, 0xdb, 0xad, 0xad, 0x46, 0x58, 0xd6, 0x99, 0x97, 0x77, 0xba, 0x0d, 0xad, 0x19, 0x9a, 0xb0, 0xc2, 0x2d, 0x49, 0x51, 0x1f, 0x16, }; static const wycheproof_xdh_test xdh_wei448_2334 = { .name = "xdh_wei448_2334", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2334_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2334_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2334_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 262 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2335 for XDH, tcId is 263 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2335_peerpubkey[] = { 0xa4, 0xb4, 0x6e, 0xd5, 0xa3, 0x64, 0xeb, 0xe3, 0x50, 0x4c, 0xfe, 0x32, 0xd5, 0x97, 0xfc, 0x7d, 0xfc, 0x8d, 0xc7, 0x26, 0x8b, 0x15, 0xfd, 0x40, 0xd6, 0xa3, 0x1d, 0x75, 0xfa, 0x74, 0x45, 0x6c, 0x6f, 0x7d, 0xe8, 0x92, 0xb4, 0x8d, 0x08, 0x94, 0xaf, 0x6a, 0xf6, 0x99, 0x11, 0x44, 0xff, 0xe6, 0x21, 0x3c, 0xab, 0xf8, 0x63, 0xde, 0xc0, 0x41, }; static const unsigned char xdh_wei448_2335_privkey[] = { 0xbc, 0x87, 0x11, 0x09, 0xd0, 0x26, 0xb1, 0x41, 0x34, 0x9f, 0xd6, 0xcb, 0x97, 0xa3, 0x65, 0xba, 0xf1, 0x8d, 0x7e, 0x40, 0xc3, 0x11, 0xde, 0x98, 0x0f, 0x50, 0x21, 0x7e, 0x7f, 0xf1, 0xeb, 0x86, 0x9a, 0x5f, 0x9f, 0x29, 0xde, 0x1b, 0xd7, 0x60, 0xf4, 0x31, 0x3c, 0x01, 0x0d, 0xab, 0x9c, 0xbe, 0xa3, 0xfd, 0xb1, 0x2b, 0x95, 0xb7, 0xc9, 0x83, }; static const unsigned char xdh_wei448_2335_sharedsecret[] = { 0x28, 0x44, 0x9c, 0x1f, 0x5c, 0x54, 0x3e, 0x09, 0x41, 0x7e, 0x3d, 0xb5, 0x7b, 0xff, 0xa6, 0xc2, 0x9e, 0x0e, 0xe4, 0x39, 0x52, 0xc1, 0x0a, 0xb2, 0xbd, 0xba, 0x80, 0x6b, 0xd0, 0xbe, 0x28, 0xd2, 0xe9, 0xc4, 0x68, 0x4c, 0xe5, 0xc5, 0xcd, 0xdf, 0x2a, 0x67, 0x88, 0x33, 0xfc, 0x2f, 0x05, 0x85, 0x23, 0x02, 0xdd, 0x28, 0x30, 0x98, 0xd1, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2335 = { .name = "xdh_wei448_2335", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2335_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2335_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2335_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 263 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2336 for XDH, tcId is 264 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2336_peerpubkey[] = { 0xdc, 0x9d, 0xf7, 0x90, 0x6a, 0xc7, 0x0e, 0xeb, 0xa1, 0x3a, 0x76, 0x6f, 0xfe, 0x82, 0xdf, 0x94, 0xc8, 0x33, 0xbd, 0x1b, 0xd5, 0x2c, 0x65, 0x44, 0x9b, 0x1a, 0xba, 0x4d, 0x3c, 0x3b, 0x36, 0x06, 0x02, 0xac, 0x30, 0x48, 0x37, 0x78, 0x22, 0x92, 0x3d, 0xb8, 0x06, 0x4c, 0x7d, 0xbd, 0x68, 0xf5, 0x3f, 0xbe, 0xc5, 0xe8, 0x6a, 0xb2, 0x3c, 0x56, }; static const unsigned char xdh_wei448_2336_privkey[] = { 0x9c, 0xfa, 0x3e, 0xb1, 0x9c, 0x53, 0x80, 0x84, 0xdc, 0x9b, 0x90, 0x03, 0xb1, 0xb8, 0x0a, 0xcb, 0x5a, 0x61, 0xf6, 0xbb, 0xf4, 0x93, 0xff, 0x82, 0x85, 0xc8, 0xcb, 0xf6, 0x48, 0xcc, 0x25, 0x87, 0x7c, 0xec, 0x79, 0x2e, 0x57, 0x3e, 0xe3, 0x8f, 0x28, 0xdf, 0x15, 0x45, 0x51, 0x39, 0x2f, 0x59, 0xf3, 0x3f, 0xea, 0xa0, 0x4c, 0x72, 0x02, 0x9b, }; static const unsigned char xdh_wei448_2336_sharedsecret[] = { 0x31, 0x8a, 0x56, 0xad, 0xf9, 0x66, 0x12, 0xdd, 0x1e, 0xcc, 0x49, 0x35, 0xb4, 0xa2, 0x25, 0xae, 0x35, 0x1f, 0xcc, 0xcb, 0xd4, 0xda, 0x3e, 0x6e, 0xd1, 0x3e, 0xf8, 0x0b, 0xe8, 0x64, 0x25, 0x1f, 0x71, 0x42, 0xa8, 0xe1, 0xb0, 0x14, 0x30, 0x50, 0x8c, 0x24, 0xd8, 0xb9, 0xc4, 0x26, 0x78, 0x54, 0x86, 0x95, 0xd1, 0x39, 0x36, 0x31, 0x17, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_2336 = { .name = "xdh_wei448_2336", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2336_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2336_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2336_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 264 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2337 for XDH, tcId is 265 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2337_peerpubkey[] = { 0xb1, 0xe6, 0x5a, 0x10, 0x78, 0x29, 0xd8, 0x4d, 0x3b, 0x3b, 0x7b, 0x66, 0x4b, 0xaf, 0x01, 0xdc, 0xa5, 0x51, 0x6b, 0xaa, 0xf6, 0x2d, 0x3d, 0xc3, 0x3d, 0x91, 0x7c, 0x60, 0x88, 0x33, 0xdd, 0x0d, 0x72, 0x2f, 0x11, 0x59, 0x4c, 0x08, 0xf9, 0x86, 0x99, 0xa6, 0xa2, 0x2e, 0xf7, 0x89, 0x74, 0xc1, 0x5a, 0xdc, 0x90, 0x06, 0x09, 0x52, 0x7a, 0x7a, }; static const unsigned char xdh_wei448_2337_privkey[] = { 0xf4, 0x7a, 0x0e, 0xbb, 0x03, 0xfd, 0x34, 0x50, 0x0f, 0xb0, 0xca, 0xe9, 0x53, 0x7f, 0x84, 0x50, 0x22, 0xd1, 0xfd, 0x0c, 0xa1, 0x95, 0xff, 0x57, 0x05, 0xc9, 0x47, 0x12, 0x5f, 0xcd, 0x75, 0x19, 0xc9, 0x30, 0x1e, 0x53, 0x90, 0x40, 0xd6, 0x70, 0x0f, 0x13, 0xa9, 0x3d, 0xfc, 0xd1, 0xbc, 0x90, 0x81, 0x21, 0xb9, 0x9a, 0x48, 0xfa, 0xc2, 0x9c, }; static const unsigned char xdh_wei448_2337_sharedsecret[] = { 0x82, 0xa9, 0xa3, 0xe6, 0x67, 0xc2, 0xd6, 0x0f, 0xa0, 0xfc, 0x83, 0xb3, 0x38, 0x62, 0x83, 0x7c, 0xf3, 0x68, 0x2f, 0xd9, 0x73, 0x57, 0xb1, 0x38, 0x98, 0x21, 0x15, 0x59, 0x0f, 0x92, 0xb1, 0xcc, 0xdc, 0x41, 0x50, 0x30, 0x3f, 0x4c, 0x67, 0x33, 0x04, 0x76, 0xa8, 0xda, 0xdd, 0x2b, 0x61, 0xca, 0x40, 0xbb, 0xc3, 0x86, 0x24, 0x58, 0x5f, 0x8a, }; static const wycheproof_xdh_test xdh_wei448_2337 = { .name = "xdh_wei448_2337", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2337_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2337_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2337_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 265 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2338 for XDH, tcId is 266 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2338_peerpubkey[] = { 0xa9, 0xfc, 0x50, 0xd4, 0x34, 0x71, 0xbd, 0x14, 0xcf, 0x7e, 0xf4, 0x21, 0x9d, 0xc7, 0xec, 0x09, 0x34, 0x80, 0x71, 0xa8, 0xcf, 0xc0, 0x73, 0xd9, 0x0e, 0xc2, 0x67, 0x27, 0x56, 0x9e, 0xf1, 0x1c, 0x4c, 0xe6, 0x56, 0x5d, 0x90, 0x61, 0x00, 0x0b, 0xc8, 0x3f, 0xd6, 0x4a, 0xe8, 0x22, 0xc3, 0x14, 0x4e, 0xa0, 0x27, 0x7c, 0xf2, 0x71, 0xd3, 0xf6, }; static const unsigned char xdh_wei448_2338_privkey[] = { 0x18, 0x53, 0x2d, 0x04, 0xfe, 0x1e, 0x3a, 0xf6, 0xdb, 0xab, 0xbe, 0x86, 0x52, 0x49, 0x5d, 0xb6, 0x40, 0xe0, 0xb3, 0x95, 0x14, 0xfa, 0x26, 0xc2, 0x0c, 0x86, 0x7f, 0x8e, 0x85, 0x37, 0xfc, 0x93, 0x70, 0xa4, 0x23, 0x05, 0x65, 0x99, 0x44, 0xea, 0xb2, 0x09, 0x3b, 0xbf, 0xc9, 0xc5, 0xe3, 0xeb, 0x75, 0x9f, 0x07, 0x86, 0xfb, 0x05, 0x78, 0x87, }; static const unsigned char xdh_wei448_2338_sharedsecret[] = { 0x65, 0xb4, 0xfa, 0x3d, 0x4d, 0x65, 0xfe, 0xbb, 0x2c, 0x57, 0xc9, 0xf9, 0xcc, 0xbb, 0x57, 0x30, 0xb1, 0xe6, 0xc8, 0xa1, 0x9e, 0xe3, 0x7a, 0xc3, 0xa9, 0x04, 0x61, 0xe1, 0xa9, 0xa4, 0x69, 0x6a, 0x5b, 0x51, 0x29, 0xe1, 0x7b, 0x1a, 0xb4, 0x69, 0x4b, 0x67, 0xfd, 0x88, 0x53, 0xda, 0x3a, 0x75, 0x23, 0x1b, 0x6f, 0x4c, 0x2c, 0x86, 0x65, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2338 = { .name = "xdh_wei448_2338", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2338_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2338_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2338_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 266 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2339 for XDH, tcId is 267 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2339_peerpubkey[] = { 0x7e, 0xcc, 0x90, 0xce, 0xa3, 0x06, 0xfb, 0x13, 0x7f, 0x07, 0x2e, 0x6f, 0x3e, 0x1b, 0x20, 0x8a, 0x11, 0xb4, 0x01, 0xc6, 0xc9, 0x3b, 0xee, 0x08, 0x27, 0x69, 0xbc, 0x1f, 0x77, 0x93, 0xdd, 0xbd, 0xb1, 0x40, 0xdc, 0x97, 0x1b, 0x8f, 0x63, 0x90, 0x46, 0x86, 0xf4, 0xa5, 0xa3, 0x0a, 0xa9, 0xf8, 0x07, 0xce, 0x38, 0xb4, 0xe8, 0xf6, 0xef, 0x10, }; static const unsigned char xdh_wei448_2339_privkey[] = { 0xe0, 0x36, 0xdf, 0x73, 0xea, 0x2b, 0x42, 0xce, 0x38, 0x5d, 0xda, 0xcb, 0x37, 0xa1, 0x31, 0x23, 0x91, 0x76, 0xda, 0x91, 0x64, 0x2f, 0x9d, 0x32, 0x81, 0x90, 0x48, 0xd6, 0x90, 0xc6, 0x77, 0x6f, 0xa3, 0x3a, 0x8d, 0x9a, 0xf6, 0x62, 0x09, 0x03, 0x0e, 0x3f, 0x54, 0x3b, 0x15, 0x84, 0xb6, 0xd4, 0xa8, 0xaf, 0x02, 0xe7, 0x26, 0xf9, 0x0e, 0x92, }; static const unsigned char xdh_wei448_2339_sharedsecret[] = { 0x9d, 0x88, 0x9f, 0xfb, 0xf9, 0x65, 0xdd, 0x3d, 0x91, 0xa3, 0xb8, 0xcd, 0x89, 0xae, 0xc0, 0x0a, 0x49, 0xb0, 0x87, 0xaf, 0x17, 0x1d, 0xcc, 0xdf, 0x16, 0x7b, 0xc5, 0x90, 0x7e, 0xeb, 0x4d, 0x87, 0x10, 0xf9, 0x35, 0xc3, 0x1a, 0xb2, 0xb6, 0xfc, 0x7a, 0xe6, 0x55, 0xf0, 0xab, 0x34, 0x2d, 0x1a, 0x9d, 0x6a, 0x80, 0xcb, 0x75, 0x95, 0xa2, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2339 = { .name = "xdh_wei448_2339", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2339_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2339_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2339_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 267 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2340 for XDH, tcId is 268 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2340_peerpubkey[] = { 0x54, 0x95, 0x00, 0xe6, 0x64, 0xed, 0x20, 0x37, 0xd2, 0x07, 0x10, 0xf4, 0x27, 0xdf, 0xae, 0x6e, 0x20, 0xbe, 0x0e, 0xce, 0xbd, 0x42, 0x04, 0x20, 0x60, 0x79, 0xcb, 0x66, 0x13, 0x01, 0x2e, 0x13, 0x72, 0x5b, 0xd2, 0x36, 0x22, 0x4c, 0x68, 0x98, 0x7d, 0xf0, 0xd0, 0x8a, 0xfe, 0xb8, 0x4f, 0xb8, 0x96, 0x34, 0xf2, 0xd5, 0x11, 0x72, 0xd7, 0x5c, }; static const unsigned char xdh_wei448_2340_privkey[] = { 0x0c, 0x56, 0x46, 0x8b, 0xfd, 0x25, 0xd2, 0x4b, 0x54, 0xe2, 0x7f, 0xf3, 0xc5, 0xe6, 0x69, 0x95, 0x1c, 0x38, 0xa9, 0x87, 0x7d, 0x3e, 0xcf, 0x40, 0x02, 0x1a, 0x5e, 0xe9, 0xdd, 0xb8, 0x6a, 0xaa, 0xe3, 0x7a, 0xdf, 0x14, 0x37, 0x2e, 0x96, 0x2b, 0x4d, 0x28, 0xa5, 0xd8, 0x5b, 0x51, 0xe5, 0xb0, 0x93, 0x9c, 0x8e, 0x9b, 0x5d, 0xc7, 0xd6, 0x85, }; static const unsigned char xdh_wei448_2340_sharedsecret[] = { 0xa7, 0x6e, 0x9e, 0x26, 0x31, 0xa1, 0x01, 0x5d, 0xbd, 0x5d, 0xd8, 0xc7, 0x48, 0xaa, 0x19, 0xc0, 0x7f, 0x8b, 0x35, 0xc0, 0xce, 0xab, 0x91, 0xce, 0x6b, 0xdf, 0x9e, 0x7d, 0x8a, 0x1f, 0x30, 0x0f, 0xa4, 0xa6, 0x12, 0x18, 0xf2, 0x56, 0xe7, 0x25, 0x97, 0x75, 0x77, 0x82, 0xed, 0xd2, 0x20, 0xbb, 0x73, 0x79, 0x48, 0xb1, 0xb8, 0x00, 0x65, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2340 = { .name = "xdh_wei448_2340", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2340_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2340_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2340_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 4, tcId is 268 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2341 for XDH, tcId is 269 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2341_peerpubkey[] = { 0xa5, 0x36, 0x1d, 0x32, 0x99, 0x48, 0x82, 0xf2, 0xac, 0x7f, 0x53, 0x94, 0x44, 0x84, 0x01, 0xac, 0x01, 0xc5, 0x96, 0x28, 0xe5, 0xaa, 0x05, 0x9a, 0xf6, 0x08, 0xf6, 0x8f, 0xc3, 0x00, 0x0a, 0xf0, 0xb0, 0x54, 0x6b, 0xa1, 0xb8, 0x68, 0x24, 0x66, 0x30, 0x35, 0x8c, 0xef, 0x66, 0xe9, 0xfe, 0x7b, 0xd4, 0x3c, 0xd4, 0x18, 0xb0, 0xab, 0x05, 0x8e, }; static const unsigned char xdh_wei448_2341_privkey[] = { 0xd0, 0xe9, 0xa3, 0x8f, 0xc4, 0xca, 0x84, 0x4c, 0x58, 0xa9, 0x55, 0x37, 0x2f, 0x5d, 0xc7, 0xce, 0x69, 0xeb, 0x2d, 0x28, 0xe4, 0x82, 0x49, 0x09, 0x62, 0x3d, 0xe9, 0x71, 0x81, 0xb3, 0x73, 0xc8, 0xad, 0xe6, 0x43, 0x1f, 0x00, 0xef, 0x6f, 0x3b, 0xbd, 0x50, 0x52, 0x3d, 0xd5, 0x7f, 0x4e, 0xc5, 0x49, 0x09, 0x3a, 0xd3, 0x39, 0xdc, 0x0b, 0x92, }; static const unsigned char xdh_wei448_2341_sharedsecret[] = { 0xf2, 0x07, 0xf0, 0x56, 0x98, 0x3a, 0x0f, 0x15, 0x8b, 0x23, 0xf8, 0xa4, 0x10, 0x89, 0x9a, 0x6b, 0x31, 0x2e, 0x92, 0x39, 0x5e, 0x09, 0xec, 0xbf, 0x0b, 0x5f, 0xe3, 0xda, 0x37, 0x1e, 0x22, 0x4a, 0x80, 0x58, 0xe5, 0xa3, 0xa3, 0x1f, 0x1e, 0x2a, 0x4f, 0xff, 0xd2, 0x21, 0x34, 0xfc, 0xf0, 0x6f, 0x41, 0xba, 0x2e, 0xf6, 0xb4, 0x64, 0xb5, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2341 = { .name = "xdh_wei448_2341", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2341_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2341_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2341_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 269 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2342 for XDH, tcId is 270 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2342_peerpubkey[] = { 0xf4, 0x02, 0x2e, 0x9e, 0x4e, 0xd6, 0x49, 0x37, 0x79, 0x15, 0xf2, 0xdc, 0xdb, 0xd2, 0x47, 0x64, 0x43, 0xa4, 0xdf, 0x98, 0xe4, 0xb2, 0x26, 0xf1, 0x4a, 0xf7, 0x80, 0xd5, 0xfd, 0xf7, 0xae, 0x4b, 0x03, 0x01, 0x32, 0x7f, 0x6b, 0x24, 0x47, 0x4e, 0x48, 0xa3, 0xfd, 0xf2, 0x80, 0xcf, 0xd5, 0x7c, 0x48, 0x27, 0xf2, 0x34, 0xe0, 0xad, 0x2e, 0x12, }; static const unsigned char xdh_wei448_2342_privkey[] = { 0xe0, 0xf8, 0x49, 0x33, 0x65, 0x4e, 0xff, 0xcc, 0x42, 0x06, 0xa3, 0xb8, 0x60, 0x37, 0x9e, 0xb0, 0x6e, 0x60, 0xa8, 0x9d, 0xcc, 0x03, 0xab, 0x75, 0x59, 0x60, 0x1e, 0xec, 0xca, 0xb1, 0x41, 0xae, 0x51, 0x43, 0xd9, 0xb0, 0x2f, 0xae, 0xe9, 0xf7, 0x56, 0x7e, 0x2f, 0x4f, 0xe6, 0xb5, 0x99, 0xfe, 0xc5, 0x9c, 0x5d, 0xe3, 0x25, 0x52, 0x39, 0x99, }; static const unsigned char xdh_wei448_2342_sharedsecret[] = { 0xff, 0x11, 0xeb, 0x0a, 0x0e, 0xa0, 0xa0, 0xf7, 0x38, 0x14, 0x2d, 0x8c, 0xdd, 0x06, 0xdf, 0x11, 0x84, 0x00, 0xf2, 0x33, 0x0e, 0xba, 0x7f, 0xd4, 0xde, 0xf9, 0x12, 0xc7, 0x73, 0x11, 0x28, 0xb7, 0x67, 0x9a, 0x74, 0x99, 0x7c, 0xa1, 0x00, 0xde, 0xc1, 0xb5, 0x3a, 0x51, 0x55, 0x62, 0xea, 0x7c, 0x44, 0xb4, 0x45, 0x77, 0x81, 0x36, 0x95, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2342 = { .name = "xdh_wei448_2342", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2342_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2342_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2342_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 270 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2343 for XDH, tcId is 271 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2343_peerpubkey[] = { 0x6e, 0x22, 0xa5, 0xa1, 0x65, 0xe4, 0x5d, 0xd3, 0xf7, 0xf0, 0x6a, 0x27, 0xec, 0x3d, 0xcf, 0x4f, 0x73, 0x36, 0xf3, 0x77, 0xbe, 0x0c, 0xad, 0x1b, 0xc3, 0x2c, 0x69, 0xea, 0x46, 0x71, 0x24, 0x5f, 0xe6, 0x0f, 0xa4, 0x7e, 0x56, 0xc7, 0xab, 0x63, 0x09, 0xda, 0x8c, 0x8e, 0x3c, 0x21, 0xea, 0xc8, 0xa1, 0x9c, 0xcc, 0x59, 0xcb, 0xc4, 0x46, 0x30, }; static const unsigned char xdh_wei448_2343_privkey[] = { 0x78, 0x3c, 0x7a, 0x71, 0x18, 0x14, 0xfb, 0xb0, 0xa2, 0x8a, 0x4a, 0xa1, 0x32, 0xa1, 0x28, 0xa3, 0xc3, 0xc4, 0x02, 0x65, 0xdb, 0xf9, 0x2e, 0x7e, 0x7b, 0x69, 0x62, 0xa0, 0x17, 0xde, 0xc3, 0xd8, 0xea, 0xd2, 0xe5, 0x13, 0x61, 0xb3, 0x19, 0x96, 0xf1, 0xc3, 0xc9, 0x90, 0x0c, 0xab, 0xe2, 0x55, 0x95, 0xde, 0x1a, 0x89, 0xd4, 0x29, 0xb4, 0x91, }; static const unsigned char xdh_wei448_2343_sharedsecret[] = { 0xc2, 0x5e, 0xdf, 0x26, 0xc6, 0x82, 0xec, 0x00, 0x94, 0xf9, 0xde, 0x6a, 0x60, 0xc7, 0x12, 0x10, 0x83, 0x54, 0x56, 0x07, 0xf6, 0xfb, 0x9e, 0x73, 0x9a, 0x6b, 0x08, 0x05, 0xf0, 0x97, 0xf6, 0x9c, 0xbd, 0x9f, 0xb4, 0xc9, 0xb2, 0x93, 0x7d, 0xa0, 0xbd, 0x74, 0x2b, 0x61, 0x43, 0x9a, 0xfc, 0x98, 0xda, 0xde, 0x15, 0x40, 0xee, 0x58, 0x15, 0x04, }; static const wycheproof_xdh_test xdh_wei448_2343 = { .name = "xdh_wei448_2343", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2343_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2343_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2343_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 271 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2344 for XDH, tcId is 272 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2344_peerpubkey[] = { 0x01, 0xde, 0x09, 0x4d, 0xed, 0x29, 0x15, 0x5f, 0x9e, 0xcc, 0xc3, 0x0c, 0x83, 0xc3, 0x29, 0xa5, 0x1d, 0x22, 0x44, 0x62, 0xc2, 0x5c, 0x7f, 0x13, 0x0b, 0xac, 0xb1, 0x9f, 0x94, 0x10, 0xaf, 0xa6, 0xfb, 0x2e, 0x3d, 0x67, 0x41, 0xb0, 0x61, 0x81, 0x1e, 0xbe, 0xb4, 0xc3, 0x44, 0x2f, 0xa5, 0x13, 0xc8, 0x76, 0x1e, 0x87, 0xda, 0x33, 0x11, 0x4f, }; static const unsigned char xdh_wei448_2344_privkey[] = { 0x38, 0xa0, 0x3d, 0x14, 0xa4, 0xae, 0x3d, 0xe5, 0xa5, 0xbf, 0x2f, 0x21, 0x01, 0x81, 0xa2, 0x9d, 0x5a, 0x4d, 0x53, 0x2b, 0x10, 0xc6, 0x0e, 0x6c, 0x87, 0x2b, 0x8d, 0x72, 0x7a, 0x19, 0x68, 0xba, 0x64, 0x79, 0x11, 0x69, 0xb0, 0x26, 0x15, 0xdc, 0x23, 0x36, 0x7b, 0x13, 0xaf, 0xdb, 0xfb, 0x06, 0x4c, 0x61, 0xe2, 0x56, 0xb2, 0xf1, 0x8a, 0x9e, }; static const unsigned char xdh_wei448_2344_sharedsecret[] = { 0xb2, 0xed, 0xb7, 0xde, 0x66, 0xc3, 0x39, 0xd5, 0x48, 0xca, 0x02, 0x1a, 0x44, 0x87, 0x7e, 0x6a, 0x3e, 0xc2, 0x4b, 0xe9, 0x6a, 0x30, 0xb7, 0xe3, 0x92, 0xb2, 0x2a, 0xd5, 0x6e, 0xf7, 0xc7, 0x5f, 0xcb, 0x70, 0xc5, 0xcc, 0x37, 0xb0, 0x17, 0xec, 0x21, 0x58, 0x43, 0x06, 0x33, 0xe3, 0xa6, 0xb0, 0x82, 0x1b, 0x87, 0xdc, 0x0d, 0xae, 0x0a, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_2344 = { .name = "xdh_wei448_2344", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2344_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2344_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2344_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 272 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2345 for XDH, tcId is 273 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2345_peerpubkey[] = { 0xcb, 0xe5, 0x74, 0xa3, 0xfa, 0x63, 0x42, 0x34, 0x73, 0x64, 0xb0, 0x44, 0x9a, 0x2e, 0x33, 0xf9, 0xe8, 0x40, 0xb7, 0x47, 0x53, 0x5e, 0x81, 0x94, 0x96, 0xc5, 0x94, 0x83, 0xa2, 0xe8, 0x47, 0x46, 0xd6, 0x7c, 0x44, 0x4f, 0xca, 0xf7, 0x14, 0xb4, 0x36, 0x7a, 0xc1, 0xef, 0x1c, 0x1d, 0x9d, 0x19, 0x70, 0x4a, 0xd0, 0x36, 0x94, 0x6c, 0x44, 0x7f, }; static const unsigned char xdh_wei448_2345_privkey[] = { 0xc0, 0x3c, 0xbb, 0xd2, 0x0d, 0x8b, 0x0e, 0x9f, 0x3e, 0xf1, 0xb5, 0x1a, 0x8d, 0x02, 0xac, 0x42, 0x89, 0x9d, 0x2e, 0xa2, 0x22, 0xd0, 0x87, 0xcc, 0xc0, 0xa0, 0x25, 0xdb, 0x01, 0xa5, 0xdf, 0x3d, 0xfa, 0x2a, 0xe3, 0xfd, 0x35, 0x7e, 0xab, 0x41, 0xae, 0x98, 0x5a, 0x7b, 0xfb, 0xee, 0x52, 0xa7, 0x98, 0x26, 0xb9, 0x60, 0x68, 0x83, 0x8e, 0x9b, }; static const unsigned char xdh_wei448_2345_sharedsecret[] = { 0x65, 0x28, 0xea, 0x6e, 0xa0, 0x97, 0x1c, 0xeb, 0x0b, 0xd4, 0xad, 0xf4, 0xb5, 0x62, 0x0e, 0x93, 0x6b, 0x90, 0x9c, 0xed, 0x8f, 0x64, 0xc0, 0xe3, 0x9c, 0x6e, 0xdf, 0xa2, 0xe2, 0xee, 0x68, 0x87, 0x1e, 0x17, 0x47, 0x7a, 0x53, 0xd0, 0x2d, 0xbd, 0x3e, 0x90, 0x69, 0x10, 0x2c, 0xa8, 0xa8, 0x1c, 0xdc, 0x16, 0x67, 0x84, 0xc0, 0xc5, 0x52, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_2345 = { .name = "xdh_wei448_2345", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2345_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2345_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2345_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 273 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2346 for XDH, tcId is 274 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2346_peerpubkey[] = { 0x0a, 0x9f, 0x04, 0xb9, 0x00, 0x5d, 0xc8, 0xf6, 0x74, 0xef, 0xe9, 0xb8, 0x49, 0xab, 0x56, 0x82, 0x88, 0x3f, 0x97, 0x31, 0x9b, 0x5f, 0xae, 0x83, 0xb9, 0xf7, 0x2d, 0x73, 0x63, 0x86, 0xc9, 0xed, 0x82, 0x76, 0x30, 0xde, 0xce, 0x8c, 0xf8, 0xb1, 0xb2, 0x50, 0xb2, 0x96, 0x5f, 0x6e, 0x0e, 0x6c, 0xef, 0xe2, 0x9d, 0xd6, 0xba, 0x33, 0x80, 0x8b, }; static const unsigned char xdh_wei448_2346_privkey[] = { 0x6c, 0x80, 0x14, 0x15, 0xb2, 0x77, 0x4b, 0xad, 0x10, 0xa2, 0xb7, 0x2c, 0x22, 0x32, 0x09, 0x42, 0xbf, 0xd0, 0x99, 0x4e, 0x4a, 0x2f, 0x03, 0xfb, 0xf8, 0xf8, 0x46, 0xca, 0x4e, 0x23, 0xa9, 0x3d, 0xe2, 0x41, 0x2e, 0x97, 0x36, 0x9f, 0x23, 0x9e, 0x31, 0xb5, 0x03, 0x5e, 0xd5, 0xde, 0xa3, 0x43, 0xe5, 0x16, 0x8e, 0xbb, 0xb1, 0xf9, 0xee, 0x92, }; static const unsigned char xdh_wei448_2346_sharedsecret[] = { 0xd1, 0x19, 0x42, 0xc9, 0xa7, 0x46, 0xea, 0x84, 0x0f, 0x15, 0x84, 0xf1, 0xf6, 0x54, 0xf7, 0xce, 0xcf, 0x58, 0xef, 0x22, 0xcd, 0x0e, 0xf8, 0xac, 0x46, 0xdc, 0x83, 0xda, 0xbd, 0x1d, 0xfc, 0xa1, 0x30, 0x3d, 0x25, 0xa5, 0x1c, 0x06, 0x48, 0xb3, 0x94, 0xe5, 0x0f, 0x29, 0xeb, 0x85, 0x3c, 0xe1, 0xc9, 0xc6, 0x3f, 0xd0, 0xe3, 0x77, 0xfe, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_2346 = { .name = "xdh_wei448_2346", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2346_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2346_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2346_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 274 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2347 for XDH, tcId is 275 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2347_peerpubkey[] = { 0xac, 0xcc, 0xc2, 0xcc, 0xf2, 0xf7, 0x73, 0xec, 0x14, 0xfd, 0x79, 0xef, 0x35, 0xd6, 0x3d, 0x38, 0xf5, 0xc9, 0xf7, 0xb8, 0x62, 0xfa, 0x7b, 0x21, 0xae, 0x00, 0xb6, 0x8f, 0x55, 0x65, 0xce, 0xa1, 0x6e, 0x28, 0xda, 0xe9, 0xba, 0x2e, 0x30, 0x9e, 0x81, 0xe4, 0x9e, 0x1a, 0xe9, 0xea, 0xcc, 0x33, 0xfd, 0x5b, 0xcc, 0xe2, 0x13, 0xec, 0x74, 0xb8, }; static const unsigned char xdh_wei448_2347_privkey[] = { 0xec, 0x56, 0x75, 0xdd, 0x08, 0x8b, 0x7d, 0xd2, 0x6d, 0x1c, 0xda, 0x22, 0x7f, 0xfe, 0x78, 0xf6, 0x97, 0xd1, 0xc5, 0xd5, 0x21, 0x23, 0x91, 0xf3, 0x3c, 0xf6, 0x3c, 0x23, 0x63, 0x4d, 0xac, 0xad, 0x47, 0x30, 0xbd, 0xb4, 0x35, 0x0c, 0x4b, 0xeb, 0x1d, 0x23, 0xef, 0xfb, 0x9c, 0xd3, 0x6c, 0xf1, 0x48, 0xec, 0x67, 0xe6, 0x95, 0x75, 0xb4, 0x84, }; static const unsigned char xdh_wei448_2347_sharedsecret[] = { 0x68, 0xac, 0xae, 0x35, 0x91, 0x62, 0xc4, 0xd8, 0x3c, 0x29, 0xbe, 0x84, 0xf1, 0xa0, 0xa4, 0x1b, 0x03, 0x2f, 0xc8, 0x8f, 0x64, 0xd1, 0xeb, 0x82, 0xdc, 0x98, 0x00, 0x94, 0x77, 0xac, 0xf5, 0xa6, 0x4c, 0x2a, 0x1a, 0xc8, 0x04, 0x0e, 0xea, 0x5e, 0x13, 0xfb, 0x19, 0x09, 0x5b, 0x66, 0xef, 0xc3, 0x76, 0xc9, 0x70, 0x97, 0xe0, 0x11, 0x4d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2347 = { .name = "xdh_wei448_2347", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2347_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2347_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2347_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 275 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2348 for XDH, tcId is 276 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2348_peerpubkey[] = { 0xda, 0xd4, 0xbd, 0x4f, 0xf2, 0xb1, 0xe9, 0x35, 0x40, 0x92, 0x4e, 0xd4, 0xee, 0x44, 0xe5, 0x46, 0x50, 0xc0, 0x85, 0x34, 0xc6, 0x31, 0x4e, 0x66, 0xbe, 0x91, 0xa1, 0xe8, 0x91, 0xb2, 0x42, 0xeb, 0xd6, 0x24, 0x1f, 0x69, 0x06, 0x22, 0x63, 0x25, 0xfd, 0xff, 0xe7, 0x31, 0x10, 0x13, 0xf5, 0x50, 0x5f, 0x0b, 0x19, 0x0b, 0xdf, 0xbe, 0x57, 0x18, }; static const unsigned char xdh_wei448_2348_privkey[] = { 0x04, 0xa5, 0x09, 0x84, 0x0a, 0x65, 0x8d, 0xaf, 0xf7, 0x03, 0x74, 0xd4, 0x2d, 0xec, 0x10, 0x9c, 0x37, 0x79, 0xef, 0xba, 0x47, 0x76, 0x97, 0xfa, 0x65, 0x2f, 0x81, 0x59, 0x5c, 0x8d, 0x52, 0xa7, 0xcd, 0xd0, 0xc7, 0x1a, 0x76, 0x54, 0xc5, 0x22, 0xec, 0x61, 0x0b, 0x46, 0x9b, 0xcb, 0x3a, 0x8f, 0xfc, 0x64, 0x0b, 0x4c, 0x16, 0xbc, 0x78, 0x8c, }; static const unsigned char xdh_wei448_2348_sharedsecret[] = { 0x4c, 0x81, 0xbb, 0x6f, 0x58, 0xb3, 0x21, 0x9b, 0x99, 0xd4, 0x79, 0xbe, 0x26, 0xd7, 0xf8, 0x27, 0x45, 0x80, 0xfc, 0x86, 0x95, 0x93, 0xf3, 0x2f, 0xd0, 0x5c, 0x55, 0x56, 0x10, 0x32, 0x4d, 0x4a, 0x80, 0x57, 0xa5, 0xdf, 0x88, 0xf4, 0x74, 0x20, 0xb1, 0x33, 0x67, 0xb5, 0x3f, 0xad, 0xa6, 0x6c, 0xa6, 0xf3, 0x23, 0x79, 0x01, 0x11, 0x18, 0x60, }; static const wycheproof_xdh_test xdh_wei448_2348 = { .name = "xdh_wei448_2348", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2348_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2348_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2348_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 276 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2349 for XDH, tcId is 277 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2349_peerpubkey[] = { 0x42, 0x16, 0xbe, 0x75, 0xfd, 0xb4, 0x37, 0xee, 0x29, 0x18, 0x7a, 0x26, 0x9f, 0x63, 0x24, 0x6e, 0x2b, 0xe1, 0xd7, 0x40, 0x12, 0x76, 0x73, 0x57, 0xec, 0x87, 0x28, 0x61, 0x5f, 0xfb, 0xc5, 0xfb, 0xc0, 0x2c, 0xcf, 0xda, 0x1f, 0x3d, 0x03, 0x20, 0x3a, 0xa7, 0xe2, 0x27, 0x04, 0x91, 0x53, 0x2f, 0x0d, 0x52, 0xd8, 0xd0, 0xab, 0xd7, 0xb2, 0x48, }; static const unsigned char xdh_wei448_2349_privkey[] = { 0x54, 0x15, 0x76, 0xd1, 0x4a, 0x69, 0x1d, 0x41, 0xd8, 0x18, 0xad, 0xa6, 0xb5, 0xc9, 0x5a, 0x38, 0x2f, 0x8a, 0xe1, 0x74, 0xce, 0xd7, 0x1c, 0x3e, 0x45, 0xd0, 0x38, 0x9f, 0x1f, 0xdf, 0x00, 0x8a, 0x61, 0x61, 0x23, 0x67, 0x5d, 0x32, 0xe5, 0x2b, 0xbc, 0x78, 0xab, 0xa8, 0x01, 0x6e, 0xb5, 0x25, 0x41, 0x9c, 0xd6, 0x75, 0xd2, 0x2d, 0x70, 0x96, }; static const unsigned char xdh_wei448_2349_sharedsecret[] = { 0x5e, 0x3e, 0x15, 0x68, 0x0a, 0xcf, 0x3a, 0x6b, 0xdb, 0x33, 0x68, 0x8d, 0xed, 0xcd, 0x6b, 0xe5, 0x10, 0x4d, 0x4d, 0xa3, 0x6b, 0xa9, 0xfc, 0x87, 0x3f, 0x28, 0xed, 0xb5, 0x38, 0x3b, 0x15, 0xae, 0x37, 0x8c, 0xbe, 0x26, 0x1b, 0x17, 0xa0, 0xbe, 0xdb, 0x67, 0x2a, 0x85, 0x9b, 0xc1, 0x44, 0x94, 0x7f, 0xee, 0x2a, 0xbe, 0xbb, 0x76, 0x27, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2349 = { .name = "xdh_wei448_2349", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2349_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2349_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2349_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 277 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2350 for XDH, tcId is 278 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2350_peerpubkey[] = { 0x6b, 0x07, 0x4b, 0x4d, 0xc2, 0xdc, 0x31, 0xc4, 0x62, 0x2b, 0x87, 0xd9, 0x07, 0x13, 0x98, 0xef, 0x9a, 0xf5, 0x43, 0x6a, 0xa7, 0x32, 0xee, 0xb4, 0x44, 0xdb, 0xab, 0xd7, 0x9e, 0xd8, 0x8b, 0x00, 0x0c, 0x4a, 0xf1, 0x64, 0x86, 0xd7, 0xfe, 0x70, 0x7f, 0x80, 0x34, 0xb1, 0xbf, 0x59, 0xf6, 0xa6, 0x19, 0x7c, 0x3f, 0x1f, 0x54, 0x9d, 0x3e, 0x61, }; static const unsigned char xdh_wei448_2350_privkey[] = { 0xf8, 0x96, 0xf9, 0xb3, 0xbf, 0x25, 0x52, 0x05, 0x75, 0x18, 0xe4, 0xf3, 0x3c, 0x6e, 0x25, 0xa6, 0xda, 0x71, 0x03, 0x7b, 0x5b, 0xeb, 0x26, 0x63, 0x3c, 0x78, 0xd6, 0x25, 0x13, 0x88, 0x33, 0xd9, 0xc6, 0xc5, 0xcd, 0x74, 0x57, 0x62, 0x23, 0xd8, 0x82, 0x5d, 0x26, 0xdd, 0x53, 0x3b, 0x11, 0x5c, 0xcd, 0x55, 0x86, 0xd5, 0xa4, 0x89, 0xe3, 0x9c, }; static const unsigned char xdh_wei448_2350_sharedsecret[] = { 0x9c, 0x17, 0xe7, 0xcb, 0x18, 0x9c, 0x0c, 0xbc, 0x7c, 0xd2, 0xce, 0x66, 0xad, 0x68, 0xc1, 0x96, 0xed, 0x7e, 0xbe, 0x25, 0x52, 0x59, 0xf1, 0xc7, 0xd5, 0x52, 0x70, 0xd0, 0x7b, 0xee, 0xce, 0xe9, 0x89, 0x61, 0xdd, 0x05, 0x87, 0xdf, 0x8c, 0x42, 0x80, 0x32, 0x01, 0xad, 0x6b, 0x5c, 0xa5, 0x17, 0x71, 0x0a, 0x57, 0x07, 0xaa, 0x13, 0x18, 0x98, }; static const wycheproof_xdh_test xdh_wei448_2350 = { .name = "xdh_wei448_2350", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2350_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2350_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2350_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 278 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2351 for XDH, tcId is 279 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2351_peerpubkey[] = { 0x00, 0xef, 0xe0, 0x8c, 0xd7, 0x69, 0x40, 0xb8, 0x10, 0x9a, 0x2f, 0x29, 0xc7, 0xb4, 0x74, 0xb2, 0x66, 0xb8, 0xa4, 0xf6, 0x39, 0x4f, 0x1d, 0xba, 0x95, 0x8f, 0x5f, 0xe3, 0xb4, 0xfa, 0x07, 0x7d, 0xb1, 0xb1, 0x68, 0x87, 0xbc, 0xc2, 0x92, 0x0d, 0xf7, 0xb0, 0x27, 0xbb, 0x78, 0xf1, 0xce, 0xf5, 0x3d, 0x7a, 0xdf, 0x8f, 0xc2, 0x88, 0x18, 0x83, }; static const unsigned char xdh_wei448_2351_privkey[] = { 0x84, 0x42, 0x6a, 0x32, 0xdf, 0x1d, 0x2e, 0x21, 0x9a, 0x6b, 0x3e, 0x74, 0x49, 0x97, 0xc5, 0x9b, 0x34, 0x4c, 0x99, 0xe5, 0xe1, 0x7d, 0xcf, 0x26, 0x99, 0xc4, 0xea, 0xaf, 0x0d, 0x37, 0x3b, 0xa7, 0x11, 0x83, 0xee, 0xfb, 0x5d, 0x6b, 0x92, 0x65, 0x5e, 0xa4, 0x01, 0x34, 0x9b, 0xd2, 0x28, 0xad, 0x15, 0xbb, 0x97, 0x3a, 0x09, 0xc0, 0xdb, 0x9a, }; static const unsigned char xdh_wei448_2351_sharedsecret[] = { 0xfd, 0xf3, 0x76, 0xe9, 0x71, 0x77, 0x18, 0x62, 0xae, 0x8a, 0xa0, 0x04, 0x57, 0x3d, 0x49, 0xa5, 0xc1, 0x7d, 0x3d, 0x01, 0xd6, 0xa5, 0xba, 0x46, 0xbe, 0xa1, 0x94, 0x3d, 0xf0, 0x85, 0x2f, 0x3f, 0x97, 0x5c, 0x1f, 0xcd, 0xb5, 0x78, 0x02, 0x53, 0xd3, 0x5c, 0x89, 0x16, 0x6f, 0xb8, 0x24, 0x61, 0x12, 0xf3, 0xa1, 0x36, 0x4c, 0xc4, 0xeb, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_2351 = { .name = "xdh_wei448_2351", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2351_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2351_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2351_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 279 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2352 for XDH, tcId is 280 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2352_peerpubkey[] = { 0x1f, 0xe1, 0xd8, 0x91, 0x5a, 0xe8, 0xbd, 0xc6, 0xe5, 0xcb, 0x11, 0xb0, 0x89, 0xa4, 0x63, 0xb7, 0x06, 0x6f, 0x65, 0x6e, 0xc7, 0xd4, 0xe4, 0x21, 0xf1, 0x09, 0xd9, 0x99, 0x29, 0xa9, 0x08, 0x8b, 0xdb, 0x4a, 0xca, 0x2f, 0x6f, 0x0e, 0x5f, 0xb6, 0x61, 0x1d, 0x55, 0x60, 0x8a, 0x06, 0xdc, 0x60, 0xcc, 0x65, 0xad, 0x11, 0xe9, 0xb3, 0x8e, 0x98, }; static const unsigned char xdh_wei448_2352_privkey[] = { 0x70, 0x08, 0x03, 0x89, 0x33, 0x89, 0xf7, 0x13, 0x1f, 0x5b, 0x97, 0x91, 0x9e, 0xea, 0xf0, 0xed, 0xb7, 0x25, 0x1f, 0x69, 0xc0, 0x5d, 0x30, 0xd6, 0x6c, 0x6d, 0xbd, 0x63, 0xcf, 0x07, 0x5a, 0x61, 0xaa, 0xcd, 0x3d, 0x40, 0x41, 0x04, 0x4b, 0x54, 0x70, 0x93, 0xf4, 0xb7, 0xfc, 0xfe, 0x34, 0x3a, 0xcb, 0x87, 0xfb, 0x13, 0xcc, 0x1b, 0xd2, 0x9b, }; static const unsigned char xdh_wei448_2352_sharedsecret[] = { 0x8d, 0x9f, 0x9c, 0x03, 0xa5, 0x8c, 0x00, 0x0c, 0x81, 0xb0, 0xf8, 0xd1, 0x92, 0xb2, 0x7c, 0x99, 0x5e, 0x02, 0xda, 0xcf, 0x6d, 0x18, 0xbd, 0xf0, 0xde, 0x5e, 0xcd, 0x82, 0x91, 0x2f, 0x38, 0xe9, 0x99, 0x18, 0xfd, 0x4b, 0x39, 0xb5, 0x5e, 0xec, 0x83, 0x5f, 0xd4, 0x36, 0x9a, 0xc1, 0x58, 0x75, 0xec, 0x78, 0xb8, 0x48, 0x18, 0x89, 0x02, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2352 = { .name = "xdh_wei448_2352", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2352_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2352_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2352_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 280 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2353 for XDH, tcId is 281 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2353_peerpubkey[] = { 0xf6, 0xa0, 0xe6, 0x56, 0x18, 0x56, 0x09, 0x49, 0x73, 0xaa, 0x4f, 0x8f, 0x5d, 0xf2, 0xff, 0xfe, 0x6a, 0xb6, 0xef, 0x11, 0x4b, 0x92, 0xbb, 0x22, 0xb5, 0x78, 0x60, 0x32, 0xbe, 0x91, 0xf4, 0x90, 0x10, 0x9f, 0x9c, 0xfa, 0x53, 0x04, 0x19, 0x07, 0x94, 0x50, 0xdd, 0x8f, 0x8e, 0x27, 0xea, 0x49, 0xd4, 0x5d, 0x7c, 0x39, 0x6e, 0x60, 0x43, 0xd6, }; static const unsigned char xdh_wei448_2353_privkey[] = { 0x74, 0x8f, 0x0c, 0xe4, 0x83, 0xd2, 0x73, 0x00, 0x5c, 0xff, 0x64, 0x93, 0x31, 0x04, 0x80, 0x44, 0x1e, 0x1a, 0x0b, 0xf9, 0x67, 0x90, 0xc6, 0x22, 0x35, 0x1a, 0x0f, 0x0a, 0x23, 0x5a, 0x67, 0x82, 0xd2, 0xb4, 0x0f, 0x78, 0xd1, 0x41, 0x33, 0xf8, 0x33, 0x58, 0xec, 0xf3, 0xff, 0x17, 0x94, 0xc3, 0xfc, 0xde, 0x36, 0x6d, 0x82, 0x2a, 0xb2, 0x91, }; static const unsigned char xdh_wei448_2353_sharedsecret[] = { 0xa6, 0x70, 0x2c, 0x33, 0x26, 0x6b, 0x58, 0x51, 0x1b, 0x62, 0xc1, 0x1e, 0xbb, 0x0a, 0x4e, 0x36, 0xac, 0xce, 0xe3, 0x40, 0x6d, 0xac, 0x49, 0xce, 0x89, 0x55, 0xff, 0x6c, 0xab, 0x92, 0x3c, 0x18, 0x82, 0x81, 0xe3, 0x8c, 0x95, 0x35, 0x04, 0x6e, 0xb0, 0xed, 0x67, 0xc8, 0x0d, 0xa0, 0xf6, 0xea, 0xe7, 0x26, 0x2b, 0x59, 0x4a, 0xe0, 0x7d, 0x08, }; static const wycheproof_xdh_test xdh_wei448_2353 = { .name = "xdh_wei448_2353", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2353_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2353_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2353_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 281 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2354 for XDH, tcId is 282 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2354_peerpubkey[] = { 0xcf, 0x62, 0x48, 0xd9, 0x03, 0x32, 0x60, 0x24, 0x45, 0x9a, 0x56, 0x15, 0x6e, 0xad, 0x65, 0x9e, 0x8e, 0xc1, 0xb3, 0xbc, 0x04, 0x6b, 0xa1, 0x37, 0xc3, 0xc5, 0x98, 0x6e, 0xec, 0x34, 0x72, 0x4b, 0xef, 0x55, 0x17, 0x49, 0x90, 0x72, 0xba, 0xbf, 0x99, 0x7d, 0x9a, 0xf6, 0xa1, 0x03, 0x2c, 0xa8, 0x50, 0x2a, 0x61, 0x93, 0xea, 0xd1, 0x2c, 0x46, }; static const unsigned char xdh_wei448_2354_privkey[] = { 0x5c, 0x3f, 0x8e, 0xbb, 0x85, 0xcc, 0x58, 0x69, 0xa1, 0x16, 0x17, 0x4d, 0x5e, 0xcb, 0xea, 0x01, 0x66, 0xf7, 0x94, 0x3b, 0xf3, 0x88, 0x1e, 0xad, 0x45, 0x8c, 0x31, 0xfb, 0xb8, 0xe6, 0x74, 0x48, 0x49, 0x16, 0xf7, 0x63, 0xe1, 0x39, 0x80, 0x16, 0x81, 0xeb, 0xce, 0x63, 0x0d, 0xec, 0x2b, 0x67, 0x71, 0x1d, 0x5b, 0xf9, 0x13, 0x43, 0x90, 0x95, }; static const unsigned char xdh_wei448_2354_sharedsecret[] = { 0x97, 0xff, 0xd4, 0x7b, 0xce, 0x90, 0x00, 0xac, 0xc2, 0x24, 0x75, 0xe3, 0x25, 0xf1, 0x98, 0x5a, 0x6c, 0x26, 0x99, 0x61, 0xaa, 0x11, 0xdc, 0xa3, 0x4d, 0x31, 0xa4, 0x56, 0x2e, 0x9a, 0x40, 0x18, 0x8c, 0x6f, 0x09, 0x84, 0xeb, 0x0a, 0x26, 0x2c, 0x6e, 0x11, 0x84, 0x13, 0x10, 0x82, 0x53, 0x78, 0x11, 0x88, 0x9c, 0x59, 0x71, 0xc2, 0x42, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_2354 = { .name = "xdh_wei448_2354", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2354_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2354_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2354_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 4, tcId is 282 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2355 for XDH, tcId is 283 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2355_peerpubkey[] = { 0xa0, 0x78, 0x99, 0x60, 0x3b, 0x31, 0xc8, 0xb3, 0x60, 0xf9, 0x51, 0x3e, 0xe8, 0x1b, 0xed, 0x87, 0x0f, 0xb9, 0xf6, 0xbb, 0xa0, 0x8f, 0x40, 0xac, 0xa3, 0xb7, 0x88, 0x7f, 0xfe, 0x9b, 0xab, 0xd2, 0xbc, 0x4d, 0xa3, 0x72, 0x30, 0x97, 0x13, 0x9c, 0x88, 0x46, 0xbd, 0x77, 0xd1, 0x9b, 0x39, 0xfb, 0x99, 0x22, 0x50, 0x4a, 0xb9, 0x8c, 0x8f, 0x51, }; static const unsigned char xdh_wei448_2355_privkey[] = { 0x3c, 0x32, 0xbd, 0x74, 0x55, 0xed, 0x1f, 0x0e, 0xd7, 0xe6, 0x06, 0x28, 0x8c, 0xc0, 0xa6, 0x7d, 0x30, 0x82, 0x6d, 0xc4, 0xbe, 0xc3, 0xaf, 0xf5, 0xd2, 0x22, 0xc0, 0x3c, 0x22, 0xc5, 0x46, 0x17, 0xd8, 0xef, 0xb1, 0xa5, 0x9f, 0x8d, 0x94, 0x03, 0xb4, 0x4d, 0xb5, 0x3a, 0x8f, 0x95, 0x5d, 0xf7, 0xe6, 0xd5, 0x39, 0xba, 0x37, 0x4e, 0xdd, 0x8a, }; static const unsigned char xdh_wei448_2355_sharedsecret[] = { 0x92, 0xe9, 0xc9, 0x6b, 0x8b, 0x16, 0x8f, 0xe5, 0xa3, 0xa1, 0x16, 0x6f, 0x52, 0xce, 0x2d, 0x80, 0x00, 0x8b, 0x56, 0xf0, 0xac, 0xea, 0x64, 0x2c, 0x45, 0xd6, 0xb2, 0x1e, 0x22, 0x7e, 0x38, 0x33, 0x50, 0x60, 0xc2, 0x7a, 0x06, 0xf1, 0xa2, 0x6c, 0xb9, 0xf8, 0x8a, 0x65, 0x78, 0x74, 0x9c, 0xc2, 0xf4, 0xd5, 0x4f, 0x88, 0x1e, 0x71, 0x60, 0xbe, }; static const wycheproof_xdh_test xdh_wei448_2355 = { .name = "xdh_wei448_2355", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2355_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2355_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2355_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 283 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2356 for XDH, tcId is 284 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2356_peerpubkey[] = { 0x80, 0x35, 0x79, 0x25, 0x31, 0xea, 0x3c, 0x76, 0x38, 0x9f, 0x38, 0xd9, 0x7b, 0x39, 0xcb, 0xa7, 0x88, 0xad, 0x43, 0x83, 0x8a, 0x8f, 0xcb, 0x88, 0x81, 0x7a, 0xb1, 0x13, 0x7c, 0x7a, 0xa6, 0xed, 0x29, 0xf3, 0x0a, 0x2f, 0xc9, 0x15, 0x61, 0x1a, 0xf5, 0xe6, 0xe7, 0x57, 0xfa, 0x5b, 0xc7, 0xf2, 0xe1, 0xa4, 0x35, 0x20, 0xdc, 0x50, 0x83, 0x64, }; static const unsigned char xdh_wei448_2356_privkey[] = { 0x50, 0x31, 0xbc, 0xc3, 0xad, 0x19, 0xec, 0xb8, 0x00, 0x06, 0xc5, 0x4b, 0x94, 0x9b, 0x74, 0xac, 0x37, 0x5f, 0x68, 0xbb, 0xf9, 0x8a, 0xe7, 0xbe, 0x65, 0x33, 0xde, 0xc2, 0xd4, 0x51, 0x47, 0xf3, 0x1d, 0x67, 0x8e, 0xc5, 0x05, 0x0b, 0xf2, 0xf4, 0x5a, 0x92, 0xa8, 0x57, 0xa2, 0x8f, 0xac, 0x9e, 0x20, 0x17, 0x16, 0xce, 0xd4, 0x6c, 0x45, 0x85, }; static const unsigned char xdh_wei448_2356_sharedsecret[] = { 0xc2, 0x74, 0x56, 0x71, 0x70, 0xa5, 0x30, 0xa3, 0x90, 0x82, 0x31, 0x21, 0x9b, 0x1b, 0x1c, 0xbe, 0x88, 0x5c, 0x8e, 0x46, 0x42, 0x18, 0xea, 0x90, 0xc3, 0x8e, 0x89, 0x5e, 0x85, 0x87, 0xfc, 0x43, 0xd0, 0x14, 0xf5, 0xd1, 0xb7, 0xbd, 0x7d, 0x3f, 0xbd, 0xec, 0x0c, 0xa4, 0x0d, 0x62, 0xfd, 0xb8, 0x77, 0x92, 0x9b, 0x97, 0x95, 0x39, 0x29, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_2356 = { .name = "xdh_wei448_2356", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2356_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2356_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2356_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 284 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2357 for XDH, tcId is 285 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2357_peerpubkey[] = { 0xd7, 0x88, 0x06, 0x7d, 0xe2, 0xe5, 0xd9, 0x86, 0x91, 0x6d, 0xcd, 0xb8, 0xbb, 0x80, 0x5d, 0x64, 0x73, 0x01, 0x9b, 0xb4, 0xa1, 0x6e, 0x03, 0xaa, 0x48, 0x0c, 0x4f, 0x7f, 0x8b, 0xd6, 0xeb, 0x6f, 0x2b, 0xf2, 0x50, 0x11, 0x6b, 0x77, 0xcb, 0x9a, 0xed, 0x51, 0x09, 0x6c, 0x1a, 0x06, 0x87, 0x68, 0xe5, 0x74, 0xd9, 0x23, 0x9c, 0x71, 0x7e, 0xc5, }; static const unsigned char xdh_wei448_2357_privkey[] = { 0x0c, 0x69, 0x7d, 0x7d, 0x3f, 0x36, 0x1b, 0x0d, 0x72, 0xab, 0x3d, 0x45, 0x76, 0x2c, 0x7a, 0xff, 0x6c, 0xb6, 0x71, 0x05, 0x07, 0x8c, 0x21, 0x73, 0x68, 0xb0, 0x81, 0xde, 0x4f, 0xd8, 0x6d, 0x78, 0xef, 0xe5, 0xea, 0xf8, 0x35, 0xf5, 0x0c, 0xe7, 0xe3, 0x25, 0x90, 0x54, 0x67, 0x44, 0x8a, 0x7a, 0x2e, 0x7f, 0xe6, 0x84, 0xdb, 0xce, 0x5a, 0x9e, }; static const unsigned char xdh_wei448_2357_sharedsecret[] = { 0x2c, 0xf2, 0xef, 0x94, 0x60, 0xcb, 0xd0, 0x3e, 0xca, 0x6e, 0x29, 0x88, 0x40, 0xa2, 0x62, 0x9d, 0x99, 0x22, 0x51, 0x66, 0xb3, 0xe5, 0xb2, 0xf7, 0x72, 0xfb, 0x70, 0xaa, 0x38, 0xd9, 0x74, 0xa0, 0x6f, 0x57, 0x0b, 0x6d, 0x13, 0x35, 0x26, 0x49, 0x42, 0x2f, 0x65, 0xd3, 0xf0, 0xf4, 0x76, 0x32, 0x0e, 0xca, 0xc9, 0x33, 0x33, 0x99, 0x54, 0xb8, }; static const wycheproof_xdh_test xdh_wei448_2357 = { .name = "xdh_wei448_2357", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2357_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2357_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2357_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 285 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2358 for XDH, tcId is 286 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2358_peerpubkey[] = { 0xf0, 0xdd, 0x20, 0x3c, 0x95, 0x09, 0x9b, 0xaf, 0x75, 0x79, 0xe5, 0x59, 0xf2, 0x40, 0x4d, 0x21, 0xd2, 0x1d, 0xda, 0x49, 0xf6, 0x0f, 0x07, 0x9f, 0x77, 0x15, 0xf2, 0x0c, 0x6a, 0x5e, 0xda, 0x38, 0x1a, 0xb5, 0xf0, 0x89, 0xa7, 0x80, 0xf4, 0x01, 0x97, 0xbb, 0x03, 0xd7, 0x0f, 0x1f, 0x72, 0xef, 0xa0, 0x0e, 0x49, 0xe2, 0x8e, 0xad, 0xf9, 0x46, }; static const unsigned char xdh_wei448_2358_privkey[] = { 0xd8, 0xbf, 0x06, 0xfe, 0xc1, 0x96, 0x24, 0x31, 0x43, 0x77, 0x3d, 0x03, 0xc2, 0x3c, 0x6c, 0x0a, 0x8b, 0xbb, 0x57, 0xc2, 0x0c, 0x3c, 0x0e, 0xd5, 0x4c, 0xc1, 0x5a, 0xd5, 0x73, 0x42, 0x9c, 0xce, 0x18, 0x5a, 0x2c, 0x3c, 0x3e, 0xbf, 0x1a, 0x5a, 0x1c, 0x45, 0xfb, 0x74, 0xbc, 0xb8, 0x1b, 0xb5, 0xd4, 0xfc, 0xcf, 0x5c, 0xd4, 0x14, 0x67, 0x88, }; static const unsigned char xdh_wei448_2358_sharedsecret[] = { 0x61, 0x19, 0x03, 0x3f, 0x41, 0x96, 0x29, 0xbd, 0xd3, 0xd3, 0xd7, 0x65, 0xbf, 0x2d, 0xa2, 0xde, 0xd5, 0xe8, 0xa7, 0xbb, 0x5a, 0x81, 0xb1, 0xc2, 0xee, 0x60, 0xb4, 0x55, 0x16, 0x34, 0xfa, 0x2d, 0x27, 0xd7, 0x31, 0xf9, 0x1a, 0x25, 0xc1, 0x3e, 0x59, 0x94, 0x87, 0x87, 0xc3, 0x29, 0x19, 0x2f, 0x65, 0x86, 0x97, 0x88, 0x28, 0x12, 0x58, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2358 = { .name = "xdh_wei448_2358", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2358_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2358_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2358_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 286 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2359 for XDH, tcId is 287 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2359_peerpubkey[] = { 0x0c, 0x17, 0xe3, 0xbd, 0x7c, 0x05, 0x0c, 0x2a, 0x2c, 0x29, 0x80, 0xfd, 0xb6, 0xb0, 0xde, 0x32, 0xbc, 0x5e, 0x89, 0xd6, 0xd7, 0xe3, 0x47, 0x00, 0x1a, 0xe1, 0xd8, 0x7d, 0x96, 0xc4, 0x36, 0xe4, 0x58, 0x0d, 0x96, 0xe8, 0x44, 0xe5, 0xa1, 0x59, 0xde, 0x88, 0xbb, 0x7d, 0x53, 0xd4, 0xbc, 0x04, 0xfb, 0xd4, 0xa3, 0x06, 0x22, 0xe5, 0x44, 0x57, }; static const unsigned char xdh_wei448_2359_privkey[] = { 0xc4, 0xb8, 0x78, 0x78, 0x1a, 0xe5, 0x85, 0x3e, 0x90, 0x75, 0x83, 0xd2, 0x8e, 0xae, 0x2b, 0xb2, 0xb1, 0x08, 0x47, 0x26, 0x10, 0xac, 0xe2, 0x23, 0x68, 0x14, 0xfb, 0xf1, 0x4e, 0xa9, 0xee, 0xf6, 0x52, 0x50, 0xf7, 0x9a, 0x5f, 0x2e, 0xf5, 0x3c, 0x46, 0xbb, 0x1a, 0xc1, 0x84, 0xa1, 0x68, 0x5c, 0xaf, 0xa3, 0x98, 0xa3, 0x74, 0x6c, 0xc1, 0x9e, }; static const unsigned char xdh_wei448_2359_sharedsecret[] = { 0x65, 0x0d, 0x63, 0x8d, 0x93, 0xc2, 0xea, 0xbf, 0xd5, 0xd4, 0xc2, 0x15, 0x46, 0x03, 0x51, 0xf3, 0x27, 0xe5, 0x85, 0x73, 0x89, 0x88, 0x8e, 0x4e, 0x29, 0x25, 0x76, 0xd9, 0xd9, 0x1e, 0x0f, 0xea, 0x60, 0x28, 0x9e, 0x79, 0x8a, 0xe8, 0x6a, 0x31, 0x57, 0x29, 0x6c, 0xe6, 0x89, 0x15, 0xaf, 0x53, 0xb3, 0x8c, 0xa3, 0xe8, 0x71, 0xa5, 0x0e, 0x6a, }; static const wycheproof_xdh_test xdh_wei448_2359 = { .name = "xdh_wei448_2359", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2359_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2359_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2359_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 287 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2360 for XDH, tcId is 288 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2360_peerpubkey[] = { 0x31, 0x8d, 0x8a, 0x8c, 0xf1, 0x21, 0xe3, 0x65, 0xd1, 0x8d, 0xb1, 0x70, 0xde, 0xbe, 0xa4, 0x5f, 0xfc, 0xd3, 0xb7, 0x75, 0xdd, 0xab, 0xc4, 0xc3, 0x24, 0x69, 0xae, 0xa3, 0x85, 0x7b, 0x70, 0x2f, 0x9a, 0x80, 0x59, 0x48, 0xf2, 0x1b, 0x80, 0x57, 0x3a, 0x17, 0x68, 0xb5, 0x7f, 0xb9, 0x86, 0xdc, 0xb9, 0x27, 0xfe, 0xc5, 0x53, 0x5e, 0x00, 0x62, }; static const unsigned char xdh_wei448_2360_privkey[] = { 0xa4, 0x1e, 0xd8, 0x95, 0x26, 0xf0, 0x4d, 0xa4, 0xa3, 0xf4, 0xf5, 0x7c, 0xf4, 0x47, 0x4e, 0x33, 0x5e, 0xa5, 0x25, 0xc5, 0xea, 0xb3, 0x6f, 0xfb, 0x87, 0xce, 0xe1, 0x0f, 0x85, 0xb6, 0xc4, 0xa0, 0xe5, 0x17, 0x99, 0x6f, 0x2d, 0x55, 0xa9, 0x84, 0x3e, 0x29, 0xa3, 0x2e, 0xbf, 0x34, 0x1e, 0x9f, 0x2c, 0x20, 0x59, 0x0d, 0x77, 0xc4, 0x95, 0x8c, }; static const unsigned char xdh_wei448_2360_sharedsecret[] = { 0x53, 0xe2, 0x93, 0x4c, 0xfb, 0x0d, 0xf8, 0x7d, 0xd1, 0xe0, 0xdc, 0xa0, 0x5f, 0x0b, 0xa3, 0x2c, 0x2b, 0xaf, 0x60, 0xe6, 0x32, 0xd3, 0x3e, 0xbf, 0x45, 0xd2, 0x68, 0x14, 0x47, 0xce, 0xc6, 0xdf, 0xf1, 0x64, 0xe9, 0x19, 0x06, 0x4e, 0xf2, 0xe6, 0xfe, 0x72, 0x75, 0x27, 0x0a, 0xff, 0xcb, 0xb6, 0xb1, 0xdf, 0xea, 0x0d, 0xd7, 0x3d, 0x18, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2360 = { .name = "xdh_wei448_2360", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2360_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2360_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2360_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 288 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2361 for XDH, tcId is 289 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2361_peerpubkey[] = { 0x96, 0x63, 0x52, 0x65, 0x11, 0x51, 0x9a, 0xa6, 0xb2, 0x01, 0x5f, 0x25, 0x8a, 0xb0, 0x16, 0xaa, 0x2a, 0xc7, 0xae, 0x05, 0x12, 0x5e, 0xb1, 0x52, 0x8c, 0xb2, 0xe0, 0x0a, 0x8b, 0x0f, 0x0b, 0xa7, 0xab, 0x43, 0xbe, 0x08, 0xae, 0x67, 0xf0, 0x86, 0x2b, 0xc5, 0x12, 0x72, 0x54, 0xb2, 0xb2, 0x92, 0x3c, 0xc8, 0x2e, 0x32, 0xbc, 0x5d, 0x49, 0x02, }; static const unsigned char xdh_wei448_2361_privkey[] = { 0x84, 0x6d, 0xd0, 0x12, 0x51, 0x0b, 0x69, 0x86, 0x0c, 0xf9, 0x6a, 0xc5, 0x97, 0x87, 0xff, 0x8e, 0x21, 0xb4, 0x86, 0xe1, 0x10, 0xe4, 0x36, 0x52, 0xba, 0x1e, 0xda, 0x5a, 0x4a, 0x81, 0x88, 0xae, 0xf4, 0xe7, 0x66, 0x83, 0x06, 0x5c, 0x61, 0x7a, 0xdb, 0x32, 0xec, 0xf9, 0x73, 0xcf, 0x80, 0x7b, 0x5a, 0xce, 0xf2, 0xd9, 0x82, 0xdd, 0x2a, 0xb7, }; static const unsigned char xdh_wei448_2361_sharedsecret[] = { 0xb9, 0xf5, 0xa8, 0xc4, 0x63, 0xbd, 0xd4, 0x1b, 0x4d, 0xb4, 0xca, 0x69, 0x1c, 0xf5, 0x9d, 0xb2, 0x39, 0x59, 0xff, 0xe8, 0x9a, 0x43, 0x38, 0x71, 0xb5, 0x33, 0x3c, 0xc7, 0x14, 0x94, 0xf5, 0xb4, 0xc0, 0xd6, 0x9a, 0xb4, 0x07, 0x80, 0x56, 0x74, 0x03, 0x23, 0x7b, 0x02, 0x00, 0x0b, 0xb4, 0x4f, 0xa0, 0x74, 0xb8, 0xa0, 0x6a, 0xfc, 0x3e, 0xf4, }; static const wycheproof_xdh_test xdh_wei448_2361 = { .name = "xdh_wei448_2361", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2361_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2361_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2361_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 289 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2362 for XDH, tcId is 290 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2362_peerpubkey[] = { 0x39, 0xf8, 0xb7, 0xb8, 0x00, 0xdc, 0x86, 0x78, 0xc8, 0x62, 0xd0, 0xa9, 0x5c, 0x8c, 0xab, 0x7e, 0x88, 0xa0, 0x0c, 0xc1, 0x6d, 0x2d, 0x8d, 0xc7, 0x56, 0x2b, 0xe8, 0xf2, 0xbd, 0x01, 0x98, 0x10, 0xec, 0xb6, 0x8c, 0x9b, 0x01, 0xfa, 0xf9, 0xa2, 0x48, 0x77, 0xa2, 0x5e, 0xa9, 0x63, 0xe8, 0xeb, 0x23, 0x7b, 0x47, 0xf2, 0xef, 0x29, 0x25, 0x26, }; static const unsigned char xdh_wei448_2362_privkey[] = { 0x90, 0xa7, 0xd0, 0x68, 0x5d, 0xf2, 0xc5, 0xa1, 0x21, 0xe8, 0x86, 0x1a, 0x98, 0x7f, 0xbf, 0x4b, 0x56, 0x6e, 0xbb, 0xdf, 0xaf, 0xb6, 0xd1, 0x40, 0xcb, 0xa2, 0xaf, 0x9f, 0x2a, 0x24, 0x59, 0x80, 0x15, 0x79, 0x5d, 0x39, 0xd5, 0x03, 0x5a, 0x73, 0xcb, 0x28, 0x72, 0x8d, 0xd0, 0xce, 0x23, 0x7f, 0xb0, 0x50, 0x2e, 0xf6, 0xb9, 0x0f, 0xd4, 0xa3, }; static const unsigned char xdh_wei448_2362_sharedsecret[] = { 0xfd, 0x80, 0x64, 0xa2, 0xb1, 0x16, 0x51, 0x06, 0x79, 0x12, 0xee, 0x1b, 0x29, 0x9a, 0x19, 0xba, 0x76, 0x1f, 0x0d, 0x44, 0x6c, 0x26, 0xcb, 0xee, 0x6b, 0xc8, 0x5e, 0x96, 0x14, 0x9a, 0x53, 0xfc, 0x6c, 0x6f, 0xc0, 0xda, 0xbc, 0x2f, 0xaa, 0x64, 0xf0, 0x4b, 0xbe, 0x4d, 0xf0, 0x0f, 0x99, 0x48, 0x7f, 0x44, 0x47, 0x42, 0x95, 0xe1, 0x61, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2362 = { .name = "xdh_wei448_2362", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2362_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2362_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2362_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 290 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2363 for XDH, tcId is 291 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2363_peerpubkey[] = { 0x0b, 0xf3, 0xd5, 0x0d, 0x7a, 0xcb, 0x23, 0x3b, 0xd2, 0x34, 0x13, 0xc2, 0x68, 0xe5, 0xd5, 0x90, 0xb7, 0x2c, 0x6a, 0x78, 0xb7, 0x74, 0x52, 0x13, 0x8a, 0xc0, 0x93, 0x42, 0xd7, 0x28, 0xb9, 0x7b, 0xba, 0x41, 0x61, 0xf9, 0xf3, 0x30, 0x5a, 0x1a, 0x1c, 0x2f, 0x40, 0x74, 0xe0, 0xb3, 0xdd, 0x2b, 0xcf, 0x28, 0x39, 0x70, 0x6b, 0x48, 0x60, 0x82, }; static const unsigned char xdh_wei448_2363_privkey[] = { 0xd8, 0xaa, 0x6e, 0x7c, 0xaf, 0x9e, 0x7f, 0x59, 0xf2, 0xc5, 0xc5, 0x31, 0xdf, 0x61, 0xc8, 0xfb, 0x37, 0x49, 0x42, 0x2b, 0x7a, 0x9a, 0x9e, 0x77, 0x5e, 0x00, 0xd2, 0x1b, 0xbf, 0x3b, 0x29, 0xdc, 0xf4, 0xe9, 0x03, 0x1e, 0x4e, 0x0b, 0x3a, 0x71, 0xe3, 0x9c, 0x53, 0x00, 0xa7, 0x5f, 0xba, 0x99, 0x9e, 0xca, 0x62, 0x11, 0xc8, 0x48, 0x7f, 0xba, }; static const unsigned char xdh_wei448_2363_sharedsecret[] = { 0x3e, 0xb2, 0xd5, 0x05, 0xcb, 0x9b, 0x4c, 0xa3, 0x9f, 0x1e, 0x20, 0xa6, 0xdb, 0xd7, 0xd8, 0x39, 0x35, 0x63, 0x4b, 0x13, 0x14, 0x7e, 0xcf, 0xbd, 0x39, 0xca, 0xe8, 0x2e, 0xb2, 0xe0, 0x11, 0x29, 0xfc, 0xda, 0xe9, 0xbc, 0xb0, 0xb2, 0x04, 0x99, 0x55, 0x96, 0x0b, 0x65, 0x87, 0x32, 0x1e, 0xcc, 0xc5, 0x41, 0x58, 0xdf, 0x2d, 0xc5, 0x85, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2363 = { .name = "xdh_wei448_2363", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2363_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2363_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2363_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 291 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2364 for XDH, tcId is 292 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2364_peerpubkey[] = { 0xb4, 0x80, 0x64, 0xd6, 0xa9, 0x19, 0xa4, 0xf1, 0x6f, 0x38, 0x31, 0x54, 0x39, 0xee, 0x0f, 0xe5, 0x9b, 0xfc, 0xdd, 0x46, 0x13, 0x7a, 0x03, 0x27, 0x59, 0x5c, 0xaf, 0x9e, 0xf8, 0x40, 0x63, 0xb4, 0xdf, 0xc5, 0x0c, 0x4b, 0x9d, 0x13, 0xaf, 0x81, 0xd2, 0x3e, 0xed, 0x03, 0xad, 0x6f, 0x0b, 0x74, 0xd0, 0x16, 0x64, 0x34, 0x6f, 0xa8, 0x70, 0xb2, }; static const unsigned char xdh_wei448_2364_privkey[] = { 0x40, 0x40, 0x36, 0x3c, 0x5a, 0xb5, 0x18, 0x3e, 0xba, 0x95, 0xa6, 0xbd, 0xe2, 0x17, 0xe8, 0x27, 0x5e, 0x0f, 0x4c, 0xc6, 0x70, 0x36, 0xfa, 0x07, 0x6b, 0x19, 0x65, 0xd7, 0x49, 0x9b, 0x1d, 0xeb, 0x13, 0x3c, 0x87, 0xe3, 0x71, 0xea, 0x8c, 0x30, 0x6b, 0xa5, 0x33, 0xf6, 0xf4, 0x3c, 0x3a, 0xa9, 0xb6, 0x45, 0x0a, 0xb4, 0x69, 0x3c, 0xfb, 0xab, }; static const unsigned char xdh_wei448_2364_sharedsecret[] = { 0x5a, 0xb0, 0x1c, 0x0b, 0x22, 0x06, 0x9d, 0xe1, 0x7d, 0xc2, 0x89, 0xc5, 0xc0, 0x25, 0xd1, 0xd2, 0x6c, 0x62, 0xb5, 0xf6, 0x2d, 0x71, 0x41, 0x77, 0x4b, 0xd7, 0x90, 0x7d, 0xf7, 0xff, 0xf6, 0xcd, 0xc8, 0x99, 0xdd, 0x8c, 0x52, 0x2d, 0x3a, 0xb7, 0x4b, 0x63, 0x6c, 0x6e, 0xd6, 0x51, 0xc1, 0xc2, 0x70, 0x49, 0xc3, 0x1e, 0x1e, 0xc1, 0x66, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2364 = { .name = "xdh_wei448_2364", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2364_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2364_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2364_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 292 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2365 for XDH, tcId is 293 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2365_peerpubkey[] = { 0x5c, 0x21, 0x37, 0xbe, 0xa5, 0x0f, 0x8f, 0xf7, 0x95, 0x69, 0xa6, 0xae, 0xc1, 0x9d, 0x23, 0x10, 0x16, 0x4f, 0x56, 0x52, 0xa3, 0x01, 0xbd, 0x6a, 0xb1, 0x86, 0x3d, 0xc9, 0x4e, 0xc3, 0xc3, 0x1c, 0x2c, 0xa3, 0xfa, 0xb6, 0x2f, 0x31, 0xda, 0x5e, 0x33, 0x4c, 0x05, 0x0a, 0xf9, 0x3e, 0xb3, 0xb3, 0x47, 0x64, 0x89, 0x15, 0x04, 0x19, 0xf4, 0xdb, }; static const unsigned char xdh_wei448_2365_privkey[] = { 0x50, 0x13, 0x98, 0xbb, 0x75, 0x71, 0x08, 0x79, 0xb8, 0x5d, 0xfb, 0xf5, 0xec, 0xb8, 0x50, 0xba, 0x7d, 0xd3, 0x01, 0x41, 0x7f, 0x0e, 0xcc, 0x0b, 0x58, 0x94, 0x47, 0xf6, 0xf1, 0x90, 0x55, 0xc7, 0x4e, 0xa5, 0x5b, 0x6a, 0x6b, 0x74, 0xfc, 0x59, 0x74, 0xab, 0x49, 0x88, 0x1d, 0xb2, 0xa3, 0xd6, 0xf0, 0x7f, 0x6a, 0x57, 0x43, 0x8e, 0x77, 0xb2, }; static const unsigned char xdh_wei448_2365_sharedsecret[] = { 0xe6, 0x5b, 0x36, 0xc1, 0x5b, 0x12, 0x1a, 0xe2, 0xeb, 0xfa, 0xe1, 0x2b, 0x2f, 0x37, 0x02, 0xef, 0x26, 0x14, 0xf3, 0xf6, 0x80, 0xe9, 0x70, 0x7b, 0xa2, 0xa9, 0x5b, 0x45, 0x2d, 0xdd, 0xf8, 0xb1, 0x08, 0x9c, 0x7c, 0xca, 0x74, 0xae, 0x64, 0xf0, 0xf6, 0xa0, 0xc1, 0x36, 0xd2, 0x77, 0x40, 0x62, 0xef, 0xf8, 0x80, 0x0c, 0x01, 0x60, 0xc1, 0x39, }; static const wycheproof_xdh_test xdh_wei448_2365 = { .name = "xdh_wei448_2365", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2365_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2365_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2365_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 293 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2366 for XDH, tcId is 294 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2366_peerpubkey[] = { 0x6a, 0xd8, 0x46, 0xd0, 0x92, 0x81, 0x7e, 0x34, 0x1f, 0x5d, 0x13, 0x42, 0xee, 0x60, 0x03, 0xe3, 0x82, 0x2e, 0x5c, 0x30, 0x92, 0xef, 0x05, 0x99, 0xe0, 0x11, 0x49, 0x97, 0x5d, 0x7a, 0x0d, 0xc8, 0x08, 0x5c, 0xd4, 0x49, 0x09, 0x43, 0x34, 0x3f, 0x86, 0x91, 0x38, 0x15, 0x11, 0x1b, 0x96, 0x79, 0x8e, 0x37, 0x3d, 0x56, 0xc5, 0xa7, 0x28, 0x03, }; static const unsigned char xdh_wei448_2366_privkey[] = { 0x48, 0x1c, 0x15, 0x52, 0xcb, 0x3b, 0xc7, 0x9e, 0xf4, 0xef, 0x33, 0xea, 0xd3, 0x16, 0x27, 0x35, 0xe3, 0xdf, 0x3d, 0x47, 0x15, 0x0a, 0x3f, 0xdc, 0x1f, 0x00, 0x90, 0x39, 0x1b, 0x61, 0x8f, 0xa3, 0x20, 0x69, 0x35, 0x5d, 0x18, 0x11, 0x52, 0xb0, 0xbf, 0x64, 0x1c, 0xd7, 0x8b, 0x12, 0xb7, 0xb7, 0xca, 0x85, 0x62, 0x4e, 0xa0, 0x46, 0x67, 0xae, }; static const unsigned char xdh_wei448_2366_sharedsecret[] = { 0x6a, 0x1c, 0x24, 0x8b, 0x32, 0x62, 0x56, 0x04, 0xea, 0x1d, 0x53, 0x6d, 0x83, 0xe9, 0x13, 0xa4, 0xb9, 0x6a, 0x1c, 0x86, 0x9b, 0x7c, 0x09, 0xb9, 0xb7, 0xd1, 0xce, 0x31, 0x5e, 0x24, 0xc1, 0x8b, 0x7c, 0x47, 0x9b, 0xb8, 0xe9, 0x94, 0xcf, 0x1f, 0xfd, 0x54, 0x28, 0xe7, 0x78, 0x84, 0xcb, 0x06, 0x34, 0x6f, 0xb7, 0x76, 0xaf, 0x7d, 0x52, 0x50, }; static const wycheproof_xdh_test xdh_wei448_2366 = { .name = "xdh_wei448_2366", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2366_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2366_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2366_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 294 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2367 for XDH, tcId is 295 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2367_peerpubkey[] = { 0xa0, 0x68, 0xd1, 0xa8, 0xaa, 0x41, 0xb8, 0x4a, 0x48, 0x61, 0x22, 0x0d, 0xf0, 0xd7, 0x04, 0x0e, 0x04, 0x58, 0x37, 0xf1, 0x09, 0xf9, 0xed, 0x15, 0x6d, 0x63, 0x9a, 0x8a, 0xe9, 0xa8, 0x15, 0x35, 0xfe, 0x3b, 0x0a, 0xf9, 0xb8, 0xb8, 0xfa, 0x4b, 0x6c, 0xcf, 0xf3, 0xa2, 0xb1, 0xd0, 0xb4, 0x0e, 0xca, 0x97, 0x96, 0xff, 0xc9, 0xa9, 0xbe, 0x28, }; static const unsigned char xdh_wei448_2367_privkey[] = { 0x3c, 0xd4, 0xf7, 0xc0, 0x6f, 0xab, 0x74, 0x31, 0xcc, 0xaa, 0x07, 0x6f, 0x6e, 0xa2, 0x11, 0x70, 0xeb, 0x6e, 0x93, 0xa3, 0xc9, 0xec, 0xb5, 0x51, 0x66, 0xfd, 0xc4, 0x19, 0xf3, 0x21, 0xfa, 0x3b, 0xe8, 0xa3, 0x0d, 0xfc, 0x4a, 0xd8, 0xd4, 0x11, 0x86, 0xbb, 0x15, 0x5d, 0x9e, 0x73, 0x72, 0x4a, 0xd0, 0xc2, 0x67, 0xa4, 0x9b, 0x9a, 0x0c, 0xac, }; static const unsigned char xdh_wei448_2367_sharedsecret[] = { 0xe1, 0x0b, 0x5f, 0x67, 0x27, 0x53, 0x75, 0x67, 0x83, 0xc9, 0x52, 0x4f, 0x04, 0x0a, 0xc0, 0x27, 0xcc, 0x64, 0x03, 0xca, 0x02, 0x5b, 0x5d, 0x6c, 0xd3, 0x93, 0xd0, 0xe7, 0x4a, 0xa5, 0x01, 0x2b, 0xaa, 0x50, 0xc6, 0xf7, 0x20, 0xd3, 0xf5, 0x21, 0xf8, 0xbf, 0x68, 0x9e, 0x3e, 0x5e, 0x6f, 0x54, 0xd1, 0xdb, 0xf2, 0x28, 0x6d, 0x71, 0xad, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_2367 = { .name = "xdh_wei448_2367", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2367_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2367_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2367_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 295 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2368 for XDH, tcId is 296 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2368_peerpubkey[] = { 0x1d, 0x10, 0x06, 0xcf, 0x7e, 0xd9, 0x4e, 0x0a, 0xeb, 0x5b, 0x73, 0x58, 0x76, 0x99, 0xf0, 0xee, 0x7a, 0xcd, 0xee, 0x1d, 0x46, 0x8f, 0x5e, 0x10, 0xe7, 0xcb, 0xd2, 0xbd, 0xf8, 0x92, 0xe1, 0xa4, 0x38, 0x84, 0xff, 0x34, 0x8e, 0x81, 0x9e, 0x4a, 0x32, 0x64, 0xd5, 0x28, 0x26, 0xda, 0xf8, 0x6b, 0xb4, 0xe9, 0x2c, 0x1a, 0xb7, 0x8d, 0x14, 0x3d, }; static const unsigned char xdh_wei448_2368_privkey[] = { 0xac, 0x5b, 0x24, 0xe0, 0x9b, 0xb8, 0x9f, 0x2b, 0xae, 0x47, 0xfc, 0xc3, 0x85, 0x7d, 0xda, 0x33, 0x6a, 0x9f, 0xfe, 0xf7, 0xfe, 0xd7, 0xf0, 0xd8, 0x0b, 0xe2, 0xbd, 0xb5, 0x65, 0xdf, 0x21, 0xb3, 0xaf, 0x2f, 0x46, 0x9d, 0x23, 0x92, 0xb9, 0xc8, 0x69, 0x19, 0x7b, 0xb3, 0x95, 0xff, 0x0b, 0xe9, 0x42, 0xef, 0xbd, 0x2a, 0xe4, 0x40, 0x97, 0xb3, }; static const unsigned char xdh_wei448_2368_sharedsecret[] = { 0x1f, 0x6a, 0x76, 0xd8, 0x38, 0x73, 0xcf, 0xb8, 0x79, 0xdd, 0x85, 0xc7, 0x05, 0x54, 0x65, 0x8b, 0xbc, 0x6f, 0xe4, 0x23, 0x4e, 0x33, 0x80, 0x75, 0x5c, 0xe2, 0xb2, 0xa4, 0x57, 0x56, 0x83, 0x61, 0x86, 0x86, 0xab, 0x49, 0x4a, 0xc5, 0x58, 0xfa, 0x7a, 0xf9, 0xe2, 0xb7, 0x23, 0xde, 0xe9, 0xcf, 0x78, 0x3f, 0x7a, 0x7f, 0xb1, 0x7c, 0x8a, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_2368 = { .name = "xdh_wei448_2368", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2368_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2368_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2368_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 296 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2369 for XDH, tcId is 297 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2369_peerpubkey[] = { 0x6c, 0x6f, 0x67, 0x67, 0x2c, 0x21, 0xe1, 0xce, 0x57, 0x4c, 0xf5, 0x7e, 0xb7, 0x59, 0x67, 0x0a, 0xc8, 0x9a, 0x70, 0xa8, 0xcf, 0x5b, 0x2f, 0xd6, 0x07, 0x52, 0x12, 0x2e, 0x78, 0x98, 0xd9, 0x14, 0x0f, 0x80, 0xa5, 0x0c, 0x48, 0x8a, 0x4d, 0xe4, 0x75, 0xd5, 0x63, 0xc9, 0x3c, 0x47, 0x93, 0x18, 0x26, 0xde, 0xef, 0x68, 0xcf, 0x68, 0xd5, 0x5d, }; static const unsigned char xdh_wei448_2369_privkey[] = { 0x50, 0x24, 0x6f, 0xb7, 0xc5, 0xc6, 0xd1, 0xfe, 0x57, 0x89, 0xd1, 0x21, 0x20, 0x6c, 0x0e, 0xfe, 0x5e, 0x55, 0xf3, 0x01, 0x3a, 0x3f, 0x58, 0xde, 0xf7, 0x7e, 0x93, 0xc6, 0x5b, 0x53, 0xdf, 0xa3, 0x25, 0x1a, 0x4c, 0x8e, 0xb6, 0x97, 0x6d, 0xc1, 0x82, 0xaf, 0x2a, 0x18, 0x64, 0x11, 0xaa, 0xca, 0x3a, 0x87, 0x09, 0xc3, 0x8e, 0xf9, 0x03, 0xb0, }; static const unsigned char xdh_wei448_2369_sharedsecret[] = { 0xe2, 0xd0, 0x4a, 0xf5, 0x98, 0xc7, 0xa0, 0x89, 0xb8, 0xac, 0x47, 0x55, 0xee, 0x0e, 0x9a, 0x62, 0x4e, 0xdf, 0xe1, 0x86, 0x66, 0xa6, 0x27, 0xde, 0xff, 0xba, 0xcb, 0xab, 0x67, 0x7c, 0xc8, 0xef, 0x4d, 0x84, 0xf2, 0x00, 0xb4, 0x97, 0xc5, 0x28, 0xd4, 0x64, 0xda, 0xa1, 0x1f, 0x61, 0x5b, 0xbd, 0x19, 0x1f, 0x44, 0x38, 0x2b, 0xb3, 0x8d, 0x5e, }; static const wycheproof_xdh_test xdh_wei448_2369 = { .name = "xdh_wei448_2369", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2369_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2369_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2369_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 297 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2370 for XDH, tcId is 298 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2370_peerpubkey[] = { 0x12, 0xe9, 0xbd, 0xc5, 0xee, 0xa1, 0x8e, 0xcd, 0x03, 0xd9, 0x90, 0x45, 0xae, 0xc4, 0x4b, 0xd3, 0x33, 0x29, 0x9e, 0x03, 0x08, 0x2f, 0x9f, 0xc8, 0x6b, 0x99, 0x7e, 0x1d, 0x21, 0x60, 0x13, 0xa3, 0x5f, 0x6a, 0x80, 0xf9, 0x67, 0xfe, 0x7a, 0x41, 0x71, 0xbe, 0x21, 0x56, 0x31, 0xe4, 0x07, 0x6c, 0x2c, 0x36, 0xc5, 0x34, 0x61, 0x8e, 0xce, 0x9a, }; static const unsigned char xdh_wei448_2370_privkey[] = { 0x28, 0x8f, 0x40, 0x6a, 0x70, 0x35, 0x8c, 0x9a, 0xaf, 0xc8, 0x96, 0x1a, 0x16, 0xc4, 0x27, 0x05, 0x83, 0x4e, 0xce, 0x4a, 0xa8, 0x2c, 0xe4, 0xa4, 0x4d, 0xac, 0x53, 0x32, 0x52, 0x69, 0x35, 0x30, 0x8a, 0x5f, 0x79, 0x36, 0x96, 0x9a, 0xc9, 0xb1, 0xb2, 0x9b, 0x4b, 0x53, 0x90, 0x17, 0x67, 0xc8, 0x7f, 0xa8, 0xda, 0x94, 0xc9, 0xce, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_2370_sharedsecret[] = { 0xb3, 0x69, 0x7a, 0x12, 0xa9, 0x9e, 0xb9, 0x10, 0x01, 0x95, 0x08, 0x96, 0xeb, 0xd1, 0x77, 0xc2, 0x87, 0xe6, 0x6c, 0xc1, 0xa4, 0x52, 0x56, 0xe0, 0x0d, 0x0d, 0xec, 0xf2, 0x6b, 0x27, 0x76, 0xd9, 0x40, 0xd6, 0x1e, 0xaf, 0xd5, 0x3b, 0x91, 0x37, 0x82, 0xda, 0xc6, 0x85, 0xf9, 0x06, 0xa5, 0x15, 0xa0, 0x82, 0xa5, 0x95, 0x68, 0x0c, 0xf0, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2370 = { .name = "xdh_wei448_2370", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2370_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2370_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2370_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 298 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2371 for XDH, tcId is 299 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2371_peerpubkey[] = { 0x3b, 0x84, 0x3f, 0x59, 0x14, 0x65, 0x4a, 0xbc, 0x39, 0xdc, 0x97, 0x5f, 0x24, 0x24, 0x53, 0x8d, 0x59, 0xba, 0xa1, 0x3b, 0x7e, 0xc4, 0x56, 0x1e, 0xcf, 0xfa, 0x41, 0x28, 0xe6, 0x3f, 0xb4, 0xc0, 0x59, 0xbc, 0xaf, 0x6d, 0x19, 0x20, 0x3d, 0xa7, 0x05, 0x48, 0x71, 0x87, 0xda, 0xc8, 0x67, 0x88, 0x1b, 0x12, 0x09, 0x6a, 0xd1, 0xaa, 0xbd, 0xbc, }; static const unsigned char xdh_wei448_2371_privkey[] = { 0xd0, 0x4f, 0x7f, 0xcd, 0xba, 0xc2, 0xd5, 0xe0, 0x3b, 0x79, 0x82, 0xef, 0x3e, 0xe9, 0x88, 0x9d, 0x38, 0x20, 0x79, 0xdd, 0x00, 0x62, 0xe2, 0x9d, 0xc2, 0x79, 0xc0, 0x9d, 0xe8, 0xbd, 0x00, 0x67, 0xcb, 0xe6, 0x75, 0x8f, 0x28, 0x21, 0xa6, 0x24, 0x9d, 0x0c, 0xb3, 0xde, 0x45, 0x81, 0x5e, 0x4c, 0x16, 0x17, 0x98, 0x25, 0x86, 0x19, 0xac, 0xa4, }; static const unsigned char xdh_wei448_2371_sharedsecret[] = { 0x6b, 0xc9, 0xc9, 0x75, 0x4f, 0x0b, 0xd8, 0x38, 0x4c, 0xfc, 0x07, 0x2b, 0x3a, 0xb3, 0xd4, 0x88, 0xb7, 0x4e, 0xc1, 0x42, 0xbe, 0x9f, 0x01, 0x5e, 0xe9, 0x26, 0xe7, 0x46, 0xb9, 0x58, 0x61, 0x2f, 0x32, 0xa9, 0x23, 0xf3, 0x5d, 0x9d, 0xfe, 0x6b, 0x9f, 0x4b, 0x75, 0x12, 0xef, 0x44, 0xab, 0x95, 0x36, 0x05, 0xd7, 0xaa, 0x21, 0xf8, 0x2f, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_2371 = { .name = "xdh_wei448_2371", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2371_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2371_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2371_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 299 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2372 for XDH, tcId is 300 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2372_peerpubkey[] = { 0xc9, 0x8e, 0x2f, 0x4d, 0xf8, 0x5f, 0x68, 0x61, 0x4b, 0xbb, 0xc4, 0x76, 0x96, 0xd9, 0x18, 0xd0, 0x46, 0xde, 0x36, 0xb5, 0xee, 0xd7, 0xb8, 0xfe, 0xe1, 0x14, 0x40, 0xad, 0x1c, 0x7d, 0x9f, 0x65, 0x0d, 0x9a, 0x0c, 0x8a, 0xce, 0x00, 0x8a, 0xa5, 0xef, 0xf6, 0x7a, 0xc8, 0xae, 0x77, 0x74, 0x90, 0x0e, 0x6e, 0x2c, 0x18, 0x73, 0xa3, 0x0c, 0xbd, }; static const unsigned char xdh_wei448_2372_privkey[] = { 0x4c, 0x80, 0x8a, 0x20, 0x52, 0xa6, 0x75, 0xfb, 0x0f, 0x76, 0xfb, 0x84, 0x98, 0xa5, 0xf4, 0x79, 0x76, 0x9b, 0xdd, 0x0b, 0xbb, 0x5f, 0xdf, 0x27, 0x0c, 0x03, 0x82, 0xf1, 0xd9, 0x7d, 0x00, 0xe1, 0xcb, 0x12, 0x29, 0x07, 0xd0, 0xc1, 0x30, 0x91, 0xaa, 0xde, 0x88, 0x26, 0x64, 0xb3, 0xc8, 0xc4, 0xb9, 0xba, 0x15, 0x33, 0xfd, 0x6b, 0x6c, 0xb6, }; static const unsigned char xdh_wei448_2372_sharedsecret[] = { 0x97, 0x5c, 0x8d, 0xdc, 0x5e, 0x63, 0x77, 0xf2, 0x84, 0x2c, 0xc4, 0x8b, 0xe6, 0xfc, 0x76, 0x7f, 0x7c, 0x33, 0xbc, 0x21, 0xd0, 0xf1, 0x47, 0x26, 0xd6, 0xc5, 0x00, 0x57, 0xb1, 0xf7, 0x3c, 0xe2, 0x5a, 0x87, 0x08, 0xe9, 0x60, 0xed, 0x45, 0xe1, 0x62, 0x04, 0xa2, 0x81, 0x56, 0x7a, 0xd1, 0xf4, 0xc3, 0xa9, 0x0e, 0x3e, 0x43, 0x4b, 0x5e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_2372 = { .name = "xdh_wei448_2372", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2372_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2372_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2372_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 300 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2373 for XDH, tcId is 301 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2373_peerpubkey[] = { 0x9d, 0xd0, 0xc3, 0x0d, 0xe8, 0x7d, 0x1d, 0x7c, 0x52, 0x35, 0x11, 0x8f, 0x68, 0x67, 0x11, 0x34, 0x28, 0xae, 0x82, 0x82, 0x83, 0x9f, 0x75, 0x96, 0x83, 0xe6, 0x4e, 0xda, 0xba, 0x47, 0x80, 0x8b, 0xc8, 0xce, 0x16, 0x64, 0xff, 0xdf, 0x70, 0xa8, 0x47, 0x1d, 0x7b, 0xbf, 0xd1, 0xe0, 0xda, 0xca, 0x19, 0x72, 0xc3, 0xa9, 0x11, 0x8c, 0x5a, 0x04, }; static const unsigned char xdh_wei448_2373_privkey[] = { 0x30, 0xa4, 0x2f, 0x76, 0x8a, 0x8e, 0x77, 0x95, 0xf0, 0x51, 0x38, 0x2e, 0x22, 0xb0, 0xc3, 0x13, 0x42, 0xf6, 0x3c, 0x3b, 0xf0, 0x20, 0x42, 0x66, 0x13, 0xaf, 0xd2, 0x09, 0xdd, 0xb0, 0x97, 0x45, 0xc6, 0xc1, 0x67, 0x71, 0x26, 0xcc, 0x12, 0x73, 0xd3, 0x4d, 0xc5, 0x71, 0x50, 0xf2, 0xd5, 0xdc, 0x15, 0x5b, 0xbe, 0x62, 0x66, 0x08, 0xc6, 0xa8, }; static const unsigned char xdh_wei448_2373_sharedsecret[] = { 0x1f, 0x14, 0x34, 0x45, 0x74, 0x41, 0xd0, 0xda, 0xbe, 0x47, 0x35, 0xe7, 0xf9, 0x49, 0x93, 0x33, 0x00, 0xc2, 0x20, 0xe9, 0x5d, 0x94, 0xaa, 0xb1, 0xeb, 0xd3, 0xee, 0xf6, 0x0b, 0xcf, 0xdb, 0x3d, 0x5c, 0xc6, 0xd9, 0xaf, 0x29, 0xad, 0xe1, 0x21, 0xf0, 0x0b, 0x03, 0x41, 0x7f, 0xb4, 0xab, 0x31, 0xe0, 0x5e, 0x74, 0xa0, 0x7b, 0xc3, 0x72, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2373 = { .name = "xdh_wei448_2373", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2373_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2373_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2373_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 301 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2374 for XDH, tcId is 302 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2374_peerpubkey[] = { 0xa3, 0x3e, 0x95, 0x47, 0xb1, 0x00, 0xfc, 0x26, 0x3e, 0x53, 0x56, 0x4f, 0x15, 0x6c, 0xc4, 0xed, 0x2f, 0x2d, 0x60, 0xec, 0xdf, 0xc3, 0x65, 0x28, 0x5a, 0xbf, 0x84, 0xf3, 0xc3, 0x67, 0xb6, 0xb4, 0xa3, 0x04, 0x8b, 0x23, 0x26, 0x01, 0x35, 0x93, 0xae, 0x14, 0x67, 0x97, 0x3a, 0x8e, 0x25, 0xad, 0x66, 0xef, 0xef, 0xf4, 0x82, 0x88, 0x0d, 0x0c, }; static const unsigned char xdh_wei448_2374_privkey[] = { 0xa4, 0x14, 0x23, 0x8d, 0xc7, 0xbf, 0x4c, 0xea, 0xf9, 0x36, 0x6d, 0x1c, 0xb2, 0xcf, 0xb8, 0x0b, 0xc2, 0x72, 0xb8, 0x2b, 0x12, 0x2e, 0x36, 0xfd, 0x51, 0x19, 0xfc, 0x53, 0xd9, 0x9b, 0x34, 0x61, 0xfe, 0x35, 0xfa, 0x49, 0xe8, 0xf9, 0x84, 0xa9, 0xb9, 0xb5, 0xf4, 0xd2, 0x13, 0x86, 0x8f, 0xdd, 0x1f, 0xaf, 0x8b, 0xc0, 0x3f, 0x94, 0x2e, 0xb7, }; static const unsigned char xdh_wei448_2374_sharedsecret[] = { 0xb3, 0xd2, 0x72, 0x1f, 0x00, 0xbe, 0x29, 0xc2, 0x08, 0x3a, 0x4d, 0xfe, 0xef, 0x8e, 0x80, 0x60, 0xc2, 0x96, 0x39, 0xac, 0x60, 0xe4, 0x12, 0x2f, 0xb9, 0x54, 0xe1, 0xcc, 0x2e, 0xa2, 0x67, 0x65, 0x45, 0x8e, 0xfa, 0xd4, 0x76, 0x68, 0xc1, 0x9c, 0x70, 0xa5, 0x1c, 0xa0, 0xd7, 0x85, 0x74, 0xb5, 0xb2, 0xfe, 0x46, 0xd8, 0xc5, 0x7f, 0x51, 0x03, }; static const wycheproof_xdh_test xdh_wei448_2374 = { .name = "xdh_wei448_2374", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2374_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2374_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2374_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 302 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2375 for XDH, tcId is 303 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2375_peerpubkey[] = { 0xe9, 0x9e, 0xc1, 0x56, 0x66, 0x55, 0x75, 0xbb, 0x7e, 0x29, 0x9a, 0x44, 0x4b, 0x2b, 0x70, 0x2b, 0x66, 0x01, 0xc8, 0xc4, 0x62, 0xad, 0x93, 0x9e, 0x58, 0xe0, 0xe2, 0x7f, 0x0b, 0xa3, 0x9c, 0x6c, 0x69, 0x5a, 0x14, 0xb7, 0xc5, 0xac, 0x55, 0xb6, 0x46, 0x30, 0x37, 0x34, 0x37, 0xf6, 0xea, 0x9b, 0x86, 0x91, 0x13, 0x2f, 0x10, 0xdc, 0xc4, 0x29, }; static const unsigned char xdh_wei448_2375_privkey[] = { 0x24, 0xbb, 0x5f, 0x75, 0x0e, 0x52, 0x52, 0xa1, 0xd6, 0x64, 0xf9, 0xe1, 0x66, 0xc5, 0x29, 0xf1, 0xe1, 0xc8, 0xcf, 0x2d, 0x29, 0x65, 0x57, 0xf4, 0xf9, 0xe8, 0xca, 0xbb, 0x9e, 0xd4, 0x8a, 0x57, 0xbb, 0xc0, 0x7d, 0xd8, 0x6d, 0x63, 0x94, 0x32, 0xda, 0x1c, 0xab, 0xd0, 0x98, 0xcc, 0x61, 0x08, 0x45, 0x16, 0x22, 0x5f, 0xc5, 0x21, 0x63, 0xb5, }; static const unsigned char xdh_wei448_2375_sharedsecret[] = { 0x32, 0xb1, 0x16, 0xd2, 0xd8, 0x76, 0xca, 0x11, 0xa1, 0x85, 0x8f, 0x87, 0x01, 0xb2, 0xf0, 0xcc, 0xdc, 0xac, 0x45, 0xe1, 0x23, 0xf4, 0x6c, 0xf1, 0xc2, 0x54, 0x4e, 0x0d, 0xe5, 0x74, 0x1c, 0x06, 0x10, 0xfc, 0xce, 0xe9, 0x59, 0x26, 0x1d, 0x6e, 0x85, 0x58, 0xa0, 0xb0, 0xa5, 0xef, 0x0d, 0x0a, 0x42, 0xb0, 0x0b, 0xd9, 0x5e, 0x24, 0x5c, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2375 = { .name = "xdh_wei448_2375", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2375_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2375_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2375_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 303 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2376 for XDH, tcId is 304 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2376_peerpubkey[] = { 0x61, 0x34, 0x2d, 0x90, 0x2b, 0x5a, 0x65, 0x98, 0xfa, 0xba, 0x1f, 0x83, 0xb9, 0x22, 0xca, 0x19, 0x07, 0x1c, 0xfc, 0x82, 0x55, 0x63, 0x52, 0xc8, 0x8d, 0x29, 0xba, 0x35, 0x09, 0x0e, 0x39, 0x5e, 0x9b, 0xeb, 0xbd, 0x8d, 0xab, 0x83, 0xe9, 0x83, 0x54, 0x9f, 0xcf, 0xc3, 0x32, 0x12, 0x49, 0x70, 0x94, 0x48, 0x6a, 0xdd, 0xac, 0xd6, 0x0d, 0x34, }; static const unsigned char xdh_wei448_2376_privkey[] = { 0x78, 0xb9, 0xbb, 0x7c, 0xe3, 0xdf, 0xe8, 0x71, 0xe7, 0x59, 0xfe, 0xbb, 0x07, 0xad, 0xc7, 0x8a, 0x7c, 0x69, 0x17, 0xd9, 0x22, 0x4b, 0x19, 0xb3, 0xda, 0x1f, 0x28, 0xa5, 0x78, 0x38, 0x85, 0x12, 0x38, 0xbc, 0x22, 0xd4, 0x66, 0x3b, 0x3d, 0x7e, 0x7f, 0x4f, 0xcd, 0x0c, 0x62, 0xf9, 0xcb, 0xc3, 0x80, 0x6f, 0x7b, 0x77, 0xaa, 0x20, 0x20, 0xbd, }; static const unsigned char xdh_wei448_2376_sharedsecret[] = { 0xc3, 0x99, 0xb4, 0x51, 0xd4, 0x72, 0x4d, 0xa2, 0x61, 0x83, 0x1c, 0x38, 0x62, 0x5a, 0x74, 0xcd, 0x58, 0x05, 0x8f, 0x20, 0x45, 0x1b, 0x52, 0x7f, 0xcb, 0xc3, 0xe5, 0x57, 0x60, 0x3e, 0x42, 0x9c, 0x47, 0x81, 0xdb, 0x0a, 0x52, 0x39, 0x71, 0xdf, 0x1d, 0x60, 0xe0, 0x4a, 0x0d, 0xed, 0x7e, 0xf9, 0x11, 0xc5, 0xd1, 0x28, 0x9f, 0x89, 0x03, 0x85, }; static const wycheproof_xdh_test xdh_wei448_2376 = { .name = "xdh_wei448_2376", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2376_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2376_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2376_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 304 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2377 for XDH, tcId is 305 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2377_peerpubkey[] = { 0x67, 0x56, 0xc9, 0x7a, 0xa9, 0x9f, 0x8b, 0xdd, 0x00, 0x38, 0x51, 0xf7, 0x78, 0x72, 0xca, 0x51, 0x4e, 0xcf, 0x7c, 0xe6, 0xe4, 0xed, 0xf5, 0x1d, 0x3d, 0x41, 0xb3, 0xc5, 0x06, 0xa3, 0x4d, 0x2d, 0xac, 0x32, 0xbc, 0x8e, 0x5d, 0x12, 0xc5, 0xd2, 0x9e, 0x47, 0xa6, 0x39, 0xf2, 0xa1, 0xe3, 0x23, 0x55, 0xbb, 0x9b, 0x75, 0xb7, 0x1f, 0x3c, 0x85, }; static const unsigned char xdh_wei448_2377_privkey[] = { 0x60, 0x22, 0x22, 0x56, 0xc0, 0x60, 0xb2, 0x2f, 0x43, 0x52, 0xda, 0x8b, 0xa8, 0x5c, 0xcc, 0x99, 0x11, 0x49, 0xa9, 0xdc, 0x8c, 0xf1, 0xb2, 0x5d, 0xc8, 0x0a, 0x8a, 0xb9, 0x81, 0x5c, 0x7e, 0x59, 0x5c, 0xbc, 0x89, 0x33, 0x4a, 0x81, 0x8a, 0x00, 0x98, 0xa7, 0xdb, 0x69, 0x8a, 0xc2, 0x40, 0x08, 0x09, 0x31, 0xaa, 0xea, 0x13, 0x7c, 0xd8, 0xb7, }; static const unsigned char xdh_wei448_2377_sharedsecret[] = { 0x0f, 0x04, 0x25, 0xfa, 0x3f, 0xbf, 0x31, 0xe0, 0xd5, 0xe7, 0xbb, 0x4c, 0x2c, 0xcb, 0xa8, 0xb3, 0x0a, 0x40, 0xde, 0x39, 0xaa, 0x0c, 0x87, 0xdb, 0xed, 0xa8, 0x82, 0x99, 0x48, 0x83, 0x0f, 0x39, 0x92, 0x6e, 0x80, 0x1d, 0xe3, 0xad, 0xe2, 0x05, 0x8d, 0xa9, 0xa0, 0x5d, 0xb8, 0x08, 0xea, 0x99, 0xb7, 0xeb, 0xe3, 0xe3, 0x28, 0x54, 0x47, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2377 = { .name = "xdh_wei448_2377", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2377_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2377_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2377_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 305 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2378 for XDH, tcId is 306 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2378_peerpubkey[] = { 0x37, 0x8c, 0xbd, 0x8e, 0xeb, 0x6c, 0x8e, 0x5a, 0x96, 0x7a, 0x76, 0xfb, 0x31, 0x1f, 0x38, 0xe6, 0x18, 0xec, 0x52, 0x66, 0x0d, 0x06, 0x02, 0x20, 0xba, 0xbc, 0x7e, 0x9a, 0xdf, 0x93, 0xbe, 0x90, 0xe9, 0xd5, 0x4c, 0x3f, 0x77, 0x34, 0x65, 0x04, 0x4b, 0xfc, 0x95, 0xe2, 0xeb, 0x9a, 0xde, 0x69, 0x5b, 0x0d, 0x91, 0x34, 0xef, 0xa3, 0xc2, 0x0f, }; static const unsigned char xdh_wei448_2378_privkey[] = { 0xd4, 0xb9, 0x21, 0x81, 0x9f, 0x2e, 0x67, 0x46, 0x0b, 0x2d, 0x31, 0x2a, 0x8a, 0x96, 0x2a, 0xeb, 0x3d, 0x4c, 0x7e, 0x99, 0x49, 0x04, 0xb1, 0x43, 0x6c, 0xd1, 0xaf, 0x83, 0x3f, 0x5e, 0x99, 0x97, 0xc0, 0xdc, 0xa1, 0xd7, 0x02, 0xd2, 0xa8, 0x59, 0x7a, 0x3a, 0xfb, 0xb2, 0x3d, 0x83, 0x8f, 0x38, 0x6e, 0xcd, 0xbf, 0x97, 0xf3, 0x8e, 0xd0, 0xa5, }; static const unsigned char xdh_wei448_2378_sharedsecret[] = { 0xfe, 0xa7, 0x49, 0xf4, 0xb7, 0xaf, 0x95, 0x46, 0x3b, 0x25, 0x23, 0x82, 0x69, 0xf1, 0x27, 0x9d, 0x19, 0xba, 0x6d, 0x4e, 0x09, 0xf3, 0x64, 0x59, 0xc2, 0x43, 0xf8, 0x68, 0x8d, 0x2a, 0x38, 0xba, 0x4c, 0xd2, 0xba, 0xab, 0x32, 0xb4, 0x37, 0xdd, 0x1f, 0x74, 0x5a, 0xbc, 0xd4, 0x77, 0xe3, 0x47, 0xd3, 0xda, 0xf4, 0x03, 0x12, 0xfd, 0x0c, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2378 = { .name = "xdh_wei448_2378", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2378_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2378_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2378_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 306 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2379 for XDH, tcId is 307 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2379_peerpubkey[] = { 0x72, 0x9a, 0x92, 0x3f, 0xa0, 0x7c, 0x83, 0xb1, 0x8c, 0x62, 0x2b, 0x9f, 0x9f, 0x86, 0x9a, 0x2d, 0xbf, 0xd3, 0x46, 0x0a, 0x1c, 0xa3, 0x4a, 0x07, 0xa9, 0xb2, 0xdd, 0xd2, 0x55, 0xc0, 0x1c, 0xa8, 0x17, 0xa4, 0x75, 0xe4, 0xe4, 0x1b, 0xdd, 0xe0, 0x6e, 0x21, 0xc1, 0x1a, 0x73, 0xb7, 0x74, 0x0d, 0xc3, 0xbe, 0xe0, 0x07, 0x6e, 0x41, 0x58, 0x21, }; static const unsigned char xdh_wei448_2379_privkey[] = { 0xe0, 0xaa, 0xa7, 0xb6, 0x25, 0x9c, 0x53, 0xaa, 0x11, 0xe4, 0xb2, 0xf2, 0xb2, 0xb7, 0x8b, 0x8a, 0xd3, 0x6a, 0xf7, 0x8f, 0xb4, 0xf7, 0xb8, 0xaa, 0x51, 0x58, 0xf7, 0x7d, 0x76, 0x96, 0xf1, 0xf0, 0x1b, 0x51, 0x84, 0x95, 0x18, 0xa5, 0xc7, 0x98, 0xb4, 0x84, 0x79, 0x81, 0x6f, 0x88, 0x44, 0xce, 0xd2, 0xad, 0x57, 0x68, 0xae, 0xce, 0xc6, 0xbb, }; static const unsigned char xdh_wei448_2379_sharedsecret[] = { 0xd4, 0x0b, 0xc5, 0x54, 0xaf, 0x8c, 0x4a, 0x13, 0x9f, 0xf8, 0xc5, 0xd4, 0x35, 0xe8, 0x92, 0x98, 0x3b, 0x5d, 0x79, 0x86, 0xb6, 0x7b, 0x60, 0x4d, 0xbd, 0xc6, 0x5b, 0x60, 0x52, 0x57, 0x00, 0xbe, 0x60, 0x10, 0xc6, 0x59, 0x48, 0x27, 0xd6, 0x47, 0x10, 0x78, 0x98, 0x2f, 0xd3, 0x83, 0x5a, 0x18, 0x43, 0xed, 0x28, 0xcf, 0x66, 0xb3, 0xc5, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_2379 = { .name = "xdh_wei448_2379", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2379_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2379_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2379_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 307 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2380 for XDH, tcId is 308 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2380_peerpubkey[] = { 0x17, 0x95, 0xd9, 0x34, 0x69, 0xd7, 0x04, 0x4a, 0xba, 0xdc, 0xa6, 0x04, 0xbb, 0x8b, 0x97, 0x21, 0x4e, 0x79, 0xa5, 0xbb, 0xb1, 0x4d, 0xc1, 0x2f, 0xa9, 0xc5, 0x6e, 0x30, 0x27, 0xe4, 0xe4, 0x64, 0xac, 0x99, 0x8a, 0xb8, 0xe0, 0xdb, 0xb1, 0x15, 0x19, 0x34, 0xad, 0x3c, 0x70, 0x98, 0x30, 0xae, 0x85, 0x61, 0xcf, 0x25, 0xc2, 0x2c, 0x02, 0xc1, }; static const unsigned char xdh_wei448_2380_privkey[] = { 0x38, 0x6f, 0x45, 0x02, 0xaa, 0x94, 0xc2, 0x96, 0xec, 0xf0, 0xd4, 0xc2, 0x4d, 0x43, 0x33, 0x02, 0x88, 0x13, 0x58, 0x08, 0x31, 0x49, 0x4d, 0x43, 0xcb, 0xe0, 0x0a, 0x0f, 0xb2, 0xd8, 0x3e, 0x29, 0x6c, 0x97, 0x53, 0xa9, 0xb8, 0x80, 0x9b, 0xc8, 0x04, 0x21, 0xb5, 0xd9, 0x3e, 0xc9, 0x3e, 0x79, 0x4e, 0xe4, 0x12, 0xff, 0xac, 0xb8, 0x7c, 0xa5, }; static const unsigned char xdh_wei448_2380_sharedsecret[] = { 0xe5, 0x82, 0x50, 0x0f, 0xa1, 0x94, 0x30, 0xb1, 0x92, 0xcd, 0xa9, 0x9a, 0x08, 0x97, 0x18, 0xc9, 0x23, 0xcb, 0xd7, 0xe5, 0x4d, 0x5c, 0x19, 0x0c, 0x28, 0x54, 0x6f, 0x79, 0xf9, 0x65, 0xe8, 0x9d, 0x73, 0xf7, 0x2a, 0x4c, 0x16, 0x13, 0x62, 0x9e, 0x6c, 0x39, 0x06, 0x22, 0xae, 0x89, 0xf7, 0x07, 0xa6, 0x7b, 0x73, 0xd5, 0xb0, 0x9f, 0x9d, 0x9a, }; static const wycheproof_xdh_test xdh_wei448_2380 = { .name = "xdh_wei448_2380", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2380_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2380_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2380_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 308 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2381 for XDH, tcId is 309 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2381_peerpubkey[] = { 0xd5, 0x15, 0x03, 0x5b, 0x93, 0x52, 0x73, 0x8e, 0x6e, 0xe3, 0x6c, 0x8e, 0x2f, 0xcc, 0x99, 0x6e, 0x1c, 0xb4, 0x8c, 0x83, 0x68, 0xab, 0xe5, 0xb1, 0x29, 0xf4, 0x12, 0x63, 0x97, 0xf7, 0x33, 0x00, 0x3e, 0xb3, 0x69, 0xd7, 0x9f, 0x2e, 0xe1, 0x6c, 0xbd, 0xe9, 0x2a, 0xf4, 0xf8, 0xad, 0xc7, 0x1a, 0xa8, 0x95, 0xd0, 0x15, 0x22, 0xd7, 0xdb, 0xcd, }; static const unsigned char xdh_wei448_2381_privkey[] = { 0x00, 0x61, 0xd8, 0x3e, 0xc2, 0x04, 0x5d, 0xc6, 0x89, 0xcb, 0x25, 0xd0, 0xe3, 0xf4, 0xb0, 0x4b, 0xc7, 0x4b, 0x9f, 0x19, 0x2b, 0x66, 0xaf, 0x3c, 0xb5, 0x0b, 0x02, 0xdc, 0xb0, 0x7a, 0x5e, 0x89, 0x4d, 0x10, 0x49, 0x78, 0x89, 0x73, 0x11, 0xaf, 0xe7, 0x86, 0xd9, 0xf5, 0x72, 0xd1, 0x20, 0x68, 0xee, 0x0c, 0x55, 0xf8, 0xae, 0xa7, 0x96, 0xad, }; static const unsigned char xdh_wei448_2381_sharedsecret[] = { 0xf7, 0x67, 0x3b, 0xa8, 0x35, 0x39, 0x1a, 0x22, 0x41, 0xad, 0x03, 0x3f, 0xb6, 0x43, 0x1e, 0xd3, 0xad, 0x34, 0x6e, 0x10, 0x10, 0x4e, 0x40, 0x45, 0xa7, 0x08, 0x52, 0xcc, 0xe3, 0xcc, 0x83, 0x44, 0x10, 0x45, 0xa8, 0xa7, 0xe0, 0x5b, 0xf0, 0x31, 0x35, 0x1b, 0x50, 0xe0, 0x2d, 0xb6, 0xe0, 0x86, 0xe1, 0xc4, 0x63, 0xcb, 0xf6, 0x16, 0x6d, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_2381 = { .name = "xdh_wei448_2381", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2381_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2381_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2381_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 309 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2382 for XDH, tcId is 310 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2382_peerpubkey[] = { 0xf4, 0xdb, 0xc2, 0x89, 0x83, 0xcf, 0xd8, 0x64, 0xa3, 0xd7, 0x52, 0xda, 0xe7, 0x42, 0x48, 0x4f, 0x7e, 0xcc, 0x55, 0xb5, 0xd3, 0xb4, 0xfc, 0x4b, 0x0f, 0x48, 0x4d, 0x64, 0x00, 0x56, 0x97, 0x7c, 0x87, 0x3c, 0x5c, 0xf0, 0x15, 0x34, 0x7b, 0xc1, 0xb0, 0xbf, 0xc9, 0x4c, 0x58, 0x97, 0xfa, 0x6e, 0xbb, 0xb6, 0xc1, 0x05, 0x50, 0x61, 0x10, 0xd7, }; static const unsigned char xdh_wei448_2382_privkey[] = { 0x30, 0x50, 0xe8, 0x52, 0xb4, 0x4e, 0x68, 0xc9, 0x87, 0xda, 0xd6, 0x8e, 0x51, 0x2d, 0xcb, 0xad, 0x7f, 0xdb, 0x99, 0x9d, 0x99, 0x2c, 0x2c, 0xcc, 0x2e, 0x3c, 0xcc, 0x23, 0x9d, 0xdf, 0x44, 0x17, 0x50, 0xea, 0x0b, 0x20, 0x5d, 0x67, 0x99, 0x42, 0x25, 0x67, 0xcf, 0xa3, 0x41, 0x5c, 0x5d, 0x2c, 0x05, 0x4e, 0x2c, 0x51, 0x32, 0xcd, 0xdc, 0xa8, }; static const unsigned char xdh_wei448_2382_sharedsecret[] = { 0xfc, 0x4d, 0x51, 0x4f, 0xa4, 0x1c, 0xe0, 0x1b, 0x8f, 0x75, 0x6b, 0xc5, 0x55, 0x9e, 0xb8, 0x5d, 0xc4, 0xaf, 0xa4, 0x86, 0xe5, 0xf7, 0x2c, 0x4c, 0x69, 0x5c, 0x6c, 0x87, 0xd8, 0x98, 0x13, 0xd0, 0x8e, 0x9f, 0xbe, 0x3c, 0xcc, 0x71, 0xd0, 0xe2, 0xb3, 0x94, 0xda, 0x3a, 0xf8, 0x6c, 0x6e, 0x3f, 0x5e, 0x2f, 0x03, 0x80, 0x4a, 0xdf, 0x19, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2382 = { .name = "xdh_wei448_2382", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2382_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2382_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2382_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 310 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2383 for XDH, tcId is 311 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2383_peerpubkey[] = { 0xbb, 0x7f, 0xfe, 0x8b, 0xc4, 0x25, 0x6e, 0xa7, 0xbe, 0x81, 0x8f, 0xf5, 0x33, 0x9f, 0xa6, 0x1f, 0xb6, 0xf8, 0x44, 0x09, 0xb6, 0x51, 0x2a, 0x82, 0xa5, 0x06, 0x38, 0x7f, 0x9a, 0x8f, 0xc2, 0x16, 0x52, 0xf4, 0x77, 0x2d, 0x7a, 0x01, 0x8a, 0x81, 0x24, 0x18, 0x39, 0x26, 0x1c, 0xbf, 0xd2, 0xc5, 0xc7, 0x33, 0x70, 0xb8, 0x56, 0x02, 0x60, 0x12, }; static const unsigned char xdh_wei448_2383_privkey[] = { 0x38, 0xc7, 0x43, 0x50, 0x07, 0x0f, 0xbe, 0x66, 0x2e, 0xfb, 0xbe, 0xd8, 0x36, 0x85, 0xb9, 0xe2, 0x39, 0x3e, 0x6d, 0xfd, 0xa3, 0x4f, 0x52, 0x82, 0xcd, 0x9a, 0x90, 0x23, 0xba, 0x76, 0xd1, 0xa5, 0xa2, 0x2d, 0x59, 0xdb, 0x9d, 0x4d, 0x2f, 0xbd, 0xf2, 0x17, 0x03, 0xe6, 0x22, 0x94, 0xb6, 0xa1, 0xf5, 0x81, 0x07, 0x57, 0x8b, 0x63, 0x65, 0xad, }; static const unsigned char xdh_wei448_2383_sharedsecret[] = { 0xcf, 0xcd, 0x10, 0x53, 0x40, 0x65, 0xd1, 0xba, 0xa0, 0x5e, 0xe9, 0x0b, 0xaf, 0xe2, 0x65, 0x90, 0x62, 0x27, 0x8b, 0x8f, 0x6e, 0x1d, 0x12, 0xfd, 0x74, 0xc0, 0x52, 0xb6, 0xa0, 0xb8, 0x3e, 0x7a, 0x68, 0x8c, 0xed, 0xe5, 0xf2, 0xe4, 0x9b, 0x01, 0xc7, 0x8c, 0xb5, 0xc7, 0x3f, 0xe9, 0x06, 0x23, 0x94, 0x18, 0x2f, 0x4f, 0x6f, 0x39, 0x8a, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_2383 = { .name = "xdh_wei448_2383", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2383_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2383_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2383_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 311 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2384 for XDH, tcId is 312 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2384_peerpubkey[] = { 0x04, 0x1e, 0x0a, 0xa7, 0x5e, 0x8f, 0xb7, 0x41, 0xec, 0xba, 0xab, 0x1c, 0x8c, 0x35, 0x10, 0x7e, 0x28, 0xfb, 0x93, 0xbb, 0xb2, 0x80, 0x7a, 0xb6, 0x31, 0x41, 0xb0, 0xcc, 0x62, 0xbc, 0x6d, 0x60, 0x1b, 0x40, 0x91, 0xed, 0x04, 0xb7, 0x8c, 0x46, 0xb5, 0x80, 0xb7, 0x85, 0xbc, 0xd2, 0x15, 0xf6, 0x53, 0x26, 0x42, 0x1f, 0xe5, 0xf8, 0xa5, 0x84, }; static const unsigned char xdh_wei448_2384_privkey[] = { 0xf8, 0x5e, 0xe5, 0x97, 0x7b, 0x6a, 0x05, 0xbd, 0xbc, 0x53, 0x98, 0x2b, 0x1b, 0x81, 0xb9, 0xe2, 0xc2, 0x1b, 0xa6, 0xd4, 0x40, 0x93, 0xee, 0x8c, 0x6e, 0xd3, 0x0a, 0x2b, 0x63, 0xda, 0xf5, 0xab, 0x4d, 0x4b, 0xf7, 0x14, 0xe1, 0x02, 0xb7, 0xe5, 0x9f, 0x9d, 0x09, 0x66, 0x20, 0x38, 0xbe, 0x26, 0x13, 0x83, 0xc5, 0x06, 0xc1, 0x98, 0x3c, 0xa6, }; static const unsigned char xdh_wei448_2384_sharedsecret[] = { 0x20, 0x21, 0xed, 0x9f, 0xa8, 0x01, 0xd8, 0x62, 0x20, 0xa6, 0x1a, 0x33, 0xaf, 0xbb, 0x7a, 0x03, 0x67, 0x5d, 0x23, 0x42, 0x6b, 0x10, 0x75, 0x5c, 0x44, 0xe4, 0x16, 0x71, 0xbc, 0x45, 0x4b, 0x60, 0x5c, 0xab, 0x34, 0x30, 0x68, 0xc4, 0xa9, 0x70, 0xf2, 0x29, 0x71, 0x2d, 0x84, 0x67, 0x0f, 0x06, 0x12, 0xd2, 0x56, 0xec, 0x00, 0xf9, 0xf8, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_2384 = { .name = "xdh_wei448_2384", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2384_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2384_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2384_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 312 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2385 for XDH, tcId is 313 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2385_peerpubkey[] = { 0xff, 0x1e, 0x23, 0xf8, 0xe3, 0x6b, 0x5f, 0x31, 0x7f, 0x7f, 0x38, 0x33, 0x25, 0xce, 0x34, 0x81, 0xb3, 0xeb, 0x07, 0xc4, 0x61, 0x5a, 0x25, 0x31, 0xbd, 0x12, 0xea, 0xb4, 0x54, 0xac, 0xec, 0xab, 0x6a, 0x00, 0x05, 0x2e, 0x68, 0x5c, 0xb5, 0x51, 0x00, 0xd7, 0xc7, 0xf6, 0xd9, 0x18, 0x08, 0x2e, 0xcb, 0x57, 0xc6, 0x83, 0xe5, 0xb8, 0x64, 0x9c, }; static const unsigned char xdh_wei448_2385_privkey[] = { 0xbc, 0x8e, 0x01, 0x09, 0xc6, 0x7a, 0x98, 0x29, 0x0f, 0x93, 0x29, 0x68, 0x65, 0xcb, 0x7d, 0x6c, 0x67, 0x8c, 0x56, 0xd6, 0x35, 0xcf, 0x9e, 0xd1, 0x8d, 0xa3, 0xea, 0x72, 0x26, 0xe6, 0xa0, 0x2a, 0x8a, 0x3f, 0x6b, 0x1b, 0x45, 0x80, 0x7a, 0x08, 0x0d, 0x69, 0x9f, 0x1b, 0xe0, 0x78, 0x64, 0xea, 0x8c, 0x8b, 0x83, 0x94, 0xaa, 0x75, 0x1c, 0xab, }; static const unsigned char xdh_wei448_2385_sharedsecret[] = { 0x23, 0x43, 0x7b, 0x39, 0x30, 0x1e, 0xe8, 0xcf, 0xc7, 0xd3, 0x92, 0xc6, 0x28, 0x72, 0xe3, 0xdc, 0x86, 0x89, 0x6c, 0xc2, 0xcf, 0x6e, 0x4d, 0x9f, 0xe4, 0x77, 0xad, 0xe5, 0xce, 0xfd, 0x6c, 0x34, 0xb8, 0x08, 0x3a, 0x28, 0x68, 0x20, 0x4f, 0x67, 0x2e, 0xb7, 0xf0, 0x33, 0x4a, 0xd7, 0x41, 0xf3, 0xf8, 0xb9, 0xd0, 0x67, 0xa3, 0x3a, 0xbe, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2385 = { .name = "xdh_wei448_2385", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2385_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2385_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2385_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 313 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2386 for XDH, tcId is 314 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2386_peerpubkey[] = { 0x96, 0xbe, 0x7b, 0xa9, 0xc9, 0x6e, 0x0a, 0xb6, 0x09, 0xa5, 0xb3, 0x01, 0xdf, 0xf3, 0xc7, 0x30, 0x2b, 0x94, 0x48, 0x3a, 0xef, 0x83, 0xd3, 0x0b, 0xd0, 0xde, 0x25, 0xd4, 0x49, 0x4d, 0xd3, 0xa6, 0x66, 0xad, 0xa1, 0x67, 0x76, 0xb7, 0xd7, 0xfa, 0x4d, 0x75, 0x49, 0x74, 0xf4, 0x1f, 0x34, 0x84, 0x78, 0x14, 0x3d, 0x1d, 0x6d, 0x54, 0xac, 0xa7, }; static const unsigned char xdh_wei448_2386_privkey[] = { 0x24, 0x59, 0x67, 0x0e, 0x6f, 0xd0, 0xd3, 0x2c, 0x81, 0x75, 0x5a, 0x93, 0x44, 0x5a, 0xd4, 0x54, 0xc9, 0x01, 0x4f, 0xc2, 0x79, 0x77, 0x64, 0xbb, 0x28, 0xd2, 0x25, 0x21, 0x4f, 0x1c, 0xc3, 0x3c, 0x36, 0x24, 0xec, 0x10, 0xd2, 0xc6, 0xb0, 0x30, 0xa7, 0x61, 0x36, 0x43, 0x12, 0xf9, 0xc9, 0xbf, 0x16, 0xf4, 0x2a, 0xcd, 0x50, 0x52, 0x11, 0xb9, }; static const unsigned char xdh_wei448_2386_sharedsecret[] = { 0xa0, 0xa7, 0x67, 0xf9, 0x56, 0x17, 0x85, 0x90, 0x3b, 0x8a, 0x4e, 0x06, 0xd5, 0x1c, 0x95, 0xeb, 0xf3, 0x5d, 0x16, 0xdd, 0xef, 0xf4, 0x90, 0x92, 0xae, 0x1d, 0x9f, 0xc9, 0xb4, 0xa7, 0xdb, 0x32, 0x92, 0xdc, 0x35, 0x48, 0x90, 0xee, 0x4b, 0x04, 0x38, 0x72, 0xac, 0x67, 0xf7, 0x04, 0xd5, 0x80, 0x83, 0x38, 0xd8, 0xd0, 0x04, 0x8b, 0x86, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2386 = { .name = "xdh_wei448_2386", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2386_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2386_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2386_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 314 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2387 for XDH, tcId is 315 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2387_peerpubkey[] = { 0xdd, 0xc4, 0xbc, 0x16, 0xd8, 0x9b, 0x9e, 0x67, 0x19, 0xcc, 0x97, 0x9c, 0xcb, 0x33, 0x93, 0x58, 0x5b, 0x42, 0xdc, 0xb2, 0xd8, 0xed, 0xea, 0x8c, 0x4e, 0x6c, 0x61, 0x50, 0xbb, 0x67, 0x04, 0xfc, 0xa9, 0xbb, 0x48, 0x32, 0x12, 0x28, 0x12, 0x24, 0x9d, 0x67, 0x19, 0xf0, 0x45, 0x37, 0x51, 0xce, 0x24, 0x66, 0xbb, 0x11, 0x58, 0xf6, 0xf0, 0xe4, }; static const unsigned char xdh_wei448_2387_privkey[] = { 0xec, 0x9f, 0xf8, 0xce, 0xa3, 0xaa, 0x8a, 0xd6, 0xa9, 0x57, 0x01, 0x19, 0xda, 0xa1, 0x07, 0x03, 0x5f, 0xae, 0x2a, 0xae, 0x7e, 0x8b, 0x6a, 0xc7, 0xb5, 0x02, 0x39, 0x16, 0x05, 0x52, 0x91, 0x53, 0x25, 0xe0, 0x5f, 0x94, 0x66, 0xcd, 0x44, 0xa4, 0x31, 0x4a, 0xa2, 0xbd, 0x8a, 0x78, 0xb1, 0x6f, 0xc7, 0x4b, 0x18, 0xd6, 0x62, 0xdc, 0xd9, 0xa5, }; static const unsigned char xdh_wei448_2387_sharedsecret[] = { 0x5a, 0x7d, 0xc0, 0x0f, 0xb2, 0x06, 0xfe, 0xbc, 0x3a, 0xbf, 0xf3, 0x6c, 0x57, 0xed, 0x8b, 0x88, 0x8e, 0x8b, 0xe6, 0xd2, 0x79, 0xf0, 0x92, 0x54, 0xb7, 0x9b, 0x1a, 0x02, 0x0c, 0x13, 0xc4, 0x2d, 0x8c, 0x94, 0xd6, 0x4d, 0xcd, 0xa8, 0x92, 0xd3, 0x45, 0x2c, 0x00, 0x22, 0x0b, 0xd5, 0x19, 0x9b, 0x23, 0x9b, 0xbd, 0xb2, 0xad, 0x6c, 0xb0, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_2387 = { .name = "xdh_wei448_2387", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2387_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2387_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2387_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 315 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2388 for XDH, tcId is 316 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2388_peerpubkey[] = { 0x6d, 0x66, 0x81, 0x44, 0xc2, 0xbb, 0x25, 0x96, 0x18, 0xfc, 0xe4, 0x97, 0x94, 0x4e, 0x68, 0xf8, 0x36, 0xf6, 0xb4, 0x34, 0x92, 0x68, 0x3e, 0x25, 0xc0, 0x86, 0x55, 0x1c, 0xd9, 0x74, 0xf1, 0xae, 0x34, 0xbe, 0x58, 0x48, 0x38, 0x23, 0xb2, 0x92, 0x18, 0x57, 0x4c, 0xe7, 0x05, 0xc6, 0x49, 0x4b, 0x5b, 0x92, 0x17, 0xc8, 0xfb, 0xcc, 0xe8, 0xe9, }; static const unsigned char xdh_wei448_2388_privkey[] = { 0xb0, 0x19, 0x30, 0x22, 0x58, 0x0d, 0x05, 0x7d, 0xaa, 0x8b, 0x92, 0x25, 0xd0, 0x85, 0x49, 0x56, 0x2f, 0x1f, 0xe3, 0x3f, 0xe4, 0x74, 0xdb, 0xb1, 0xc1, 0x77, 0xa2, 0x97, 0xc3, 0xb5, 0x4d, 0xbe, 0x3e, 0x3a, 0xcc, 0x23, 0xb9, 0xd7, 0x42, 0xe2, 0x2b, 0x00, 0x69, 0x8e, 0xd0, 0x80, 0x4d, 0x35, 0x01, 0x89, 0xd2, 0x09, 0xa9, 0xf0, 0x48, 0xab, }; static const unsigned char xdh_wei448_2388_sharedsecret[] = { 0x36, 0x45, 0x39, 0x0c, 0xe6, 0x49, 0xcf, 0x24, 0x8d, 0x8d, 0x17, 0x19, 0x34, 0x22, 0x6a, 0xe4, 0x38, 0x09, 0xbc, 0x61, 0x4b, 0x72, 0x3f, 0x61, 0x12, 0x8d, 0xca, 0x56, 0x28, 0x45, 0x28, 0x44, 0xe7, 0xe9, 0xa3, 0x76, 0x15, 0x73, 0xbf, 0x4b, 0x59, 0x2d, 0xdc, 0x0d, 0xf0, 0xa1, 0x2d, 0xff, 0x90, 0x10, 0x3f, 0xa1, 0xfa, 0x61, 0x6c, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2388 = { .name = "xdh_wei448_2388", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2388_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2388_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2388_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 316 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2389 for XDH, tcId is 317 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2389_peerpubkey[] = { 0x9b, 0xdb, 0x0b, 0x57, 0x30, 0x85, 0xb3, 0xdf, 0x64, 0x0b, 0x7e, 0xbd, 0xf3, 0x43, 0xbb, 0xed, 0xe2, 0xca, 0x09, 0xac, 0x4e, 0x75, 0xb5, 0xe9, 0xe4, 0x62, 0x4b, 0xc4, 0xf7, 0x1d, 0x68, 0xea, 0x72, 0x4d, 0xbf, 0xf4, 0x7f, 0x72, 0x42, 0x48, 0xfe, 0x5c, 0xcc, 0x28, 0x5d, 0x96, 0x0b, 0x6f, 0xc9, 0x79, 0x04, 0x30, 0xa3, 0xa5, 0x21, 0xf6, }; static const unsigned char xdh_wei448_2389_privkey[] = { 0x58, 0xed, 0xe3, 0xfd, 0x60, 0xae, 0x61, 0x9c, 0x35, 0x3e, 0x39, 0x4f, 0x2a, 0x78, 0xaf, 0x92, 0x92, 0x30, 0x56, 0x90, 0xc6, 0x92, 0x32, 0x27, 0xc2, 0xf0, 0xce, 0xa0, 0x85, 0xf8, 0xc1, 0x1e, 0x51, 0x33, 0xbb, 0x56, 0x16, 0x4e, 0x5d, 0x41, 0xfe, 0x63, 0xba, 0x22, 0x99, 0x8b, 0x0f, 0x35, 0x1b, 0x7c, 0x81, 0xa3, 0x63, 0x05, 0x95, 0xa9, }; static const unsigned char xdh_wei448_2389_sharedsecret[] = { 0x3e, 0xfc, 0x48, 0xb8, 0x50, 0x74, 0x43, 0xc4, 0x1d, 0xf8, 0xc1, 0x07, 0x7a, 0xa5, 0xc7, 0x9c, 0xa1, 0xe9, 0x88, 0x1d, 0x64, 0xb4, 0x47, 0x75, 0xf8, 0x77, 0xff, 0x7c, 0x70, 0x7f, 0xb1, 0x86, 0x2f, 0xd7, 0xf7, 0x9d, 0x50, 0x36, 0x0e, 0x6a, 0xdc, 0x19, 0xc2, 0x28, 0x26, 0xff, 0x23, 0x14, 0xdb, 0xfd, 0x16, 0x8e, 0x0e, 0xec, 0x25, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_2389 = { .name = "xdh_wei448_2389", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2389_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2389_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2389_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 317 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2390 for XDH, tcId is 318 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2390_peerpubkey[] = { 0xfd, 0x1e, 0xad, 0x12, 0xe7, 0x90, 0x3a, 0x0d, 0x7c, 0xfe, 0x9d, 0xef, 0x3d, 0xa3, 0x95, 0xac, 0xcf, 0x68, 0x84, 0xa5, 0x33, 0xb6, 0xf9, 0xde, 0x30, 0x74, 0x54, 0x8e, 0x04, 0x7e, 0x39, 0x4f, 0xe4, 0x1f, 0x8f, 0xca, 0x96, 0x6d, 0xf7, 0x3e, 0xcc, 0xd8, 0x1d, 0xfc, 0xcd, 0xc7, 0x13, 0x62, 0x8c, 0x9d, 0x78, 0x27, 0x56, 0x28, 0x53, 0xaa, }; static const unsigned char xdh_wei448_2390_privkey[] = { 0xc0, 0x1b, 0xe8, 0xec, 0x9f, 0x3e, 0x48, 0xf8, 0x3b, 0xd7, 0x91, 0xb5, 0x3e, 0x52, 0x11, 0xc2, 0xb4, 0xdb, 0x5f, 0xe3, 0xad, 0x07, 0xd0, 0xd2, 0xc1, 0xa8, 0xcd, 0x55, 0x6a, 0x6f, 0x5e, 0x85, 0xfa, 0xc1, 0xfc, 0x8a, 0xec, 0x68, 0xbe, 0x8d, 0x96, 0xa8, 0xea, 0xfa, 0xab, 0xbd, 0x5b, 0xde, 0x6a, 0x46, 0xda, 0x39, 0x66, 0x50, 0xf8, 0xb3, }; static const unsigned char xdh_wei448_2390_sharedsecret[] = { 0xf9, 0xe4, 0x59, 0x53, 0x3a, 0x86, 0xcc, 0xc6, 0xf9, 0xba, 0xf4, 0xc3, 0xfc, 0xc9, 0x6e, 0x5b, 0x07, 0xbc, 0x5f, 0xbd, 0xe8, 0x46, 0xa3, 0x38, 0xce, 0xc8, 0xbc, 0xa4, 0x69, 0x00, 0x11, 0xe1, 0x99, 0x5f, 0xef, 0x31, 0xfb, 0x7d, 0xd3, 0xce, 0x31, 0xf4, 0x98, 0xa8, 0x66, 0xc6, 0xb1, 0xeb, 0x59, 0x5a, 0x8f, 0x22, 0xa8, 0x45, 0x20, 0x28, }; static const wycheproof_xdh_test xdh_wei448_2390 = { .name = "xdh_wei448_2390", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2390_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2390_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2390_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 318 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2391 for XDH, tcId is 319 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2391_peerpubkey[] = { 0x65, 0x35, 0x00, 0xf4, 0x1c, 0xc9, 0x14, 0xee, 0x7b, 0x24, 0x9d, 0x29, 0x3e, 0x3e, 0x60, 0xf5, 0xb2, 0x3d, 0xd6, 0x27, 0x17, 0xde, 0x18, 0xec, 0xc0, 0x65, 0xce, 0x1c, 0x3f, 0x0e, 0x62, 0xea, 0xa5, 0x3a, 0xeb, 0x40, 0xff, 0x91, 0x4f, 0x6e, 0x28, 0x3a, 0x26, 0x4e, 0x38, 0x4f, 0x86, 0xc8, 0xda, 0x96, 0xa2, 0x87, 0x49, 0x93, 0x61, 0xd8, }; static const unsigned char xdh_wei448_2391_privkey[] = { 0x18, 0x11, 0xae, 0x99, 0xd3, 0xa3, 0x67, 0xfd, 0xe2, 0x6f, 0xef, 0xeb, 0x3a, 0xd6, 0x2c, 0x7a, 0xe2, 0x1f, 0x65, 0x00, 0xa0, 0x09, 0xd4, 0x34, 0x35, 0x7d, 0xa5, 0x9b, 0x42, 0x27, 0xe6, 0xab, 0xe2, 0x80, 0xbe, 0x9f, 0xba, 0xee, 0x96, 0x48, 0x17, 0x2e, 0xc7, 0xd5, 0x4d, 0x81, 0xfc, 0x37, 0x6a, 0x63, 0xbe, 0x59, 0x1a, 0x48, 0x9f, 0xa0, }; static const unsigned char xdh_wei448_2391_sharedsecret[] = { 0xc2, 0xbc, 0x97, 0xf6, 0x8f, 0xf5, 0xc2, 0x37, 0x08, 0xd2, 0x82, 0x88, 0x3c, 0x20, 0xc8, 0xd9, 0x07, 0x9b, 0xaf, 0x06, 0xd7, 0x2e, 0x63, 0x2b, 0x46, 0x49, 0xea, 0x11, 0x3f, 0xb2, 0x87, 0x9f, 0x86, 0x40, 0xa2, 0x1d, 0x44, 0x85, 0x1f, 0x1a, 0xbf, 0x3e, 0x48, 0x7f, 0x2d, 0x65, 0xc8, 0x44, 0x6d, 0x32, 0xf6, 0x6b, 0x5e, 0xa9, 0xff, 0xb7, }; static const wycheproof_xdh_test xdh_wei448_2391 = { .name = "xdh_wei448_2391", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2391_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2391_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2391_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 319 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2392 for XDH, tcId is 320 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2392_peerpubkey[] = { 0xc1, 0x39, 0xba, 0x0b, 0xb5, 0xca, 0x96, 0x36, 0x09, 0x28, 0x6b, 0x50, 0xaf, 0xf9, 0xc3, 0xb2, 0x4c, 0x70, 0x51, 0x2c, 0x04, 0x07, 0xd9, 0x5a, 0x6a, 0xa7, 0x6f, 0x07, 0x4e, 0x4e, 0x34, 0x38, 0xab, 0x03, 0x8a, 0x9d, 0x68, 0x05, 0xe6, 0xb0, 0x1c, 0x4c, 0xa0, 0xc6, 0x23, 0xf8, 0xb5, 0x0e, 0xe5, 0xb7, 0x57, 0xa8, 0x3c, 0xfb, 0xbf, 0x02, }; static const unsigned char xdh_wei448_2392_privkey[] = { 0xdc, 0x40, 0x76, 0x80, 0x5c, 0x6d, 0x33, 0xa4, 0x54, 0xb2, 0x97, 0xd0, 0x8e, 0xbc, 0x44, 0x70, 0x12, 0xe0, 0xf4, 0x45, 0x99, 0x27, 0x31, 0x6c, 0x30, 0xcf, 0x5a, 0xae, 0x25, 0x1a, 0xc1, 0x42, 0x0c, 0xbc, 0x04, 0xf2, 0x3f, 0xd8, 0x64, 0x6f, 0x96, 0xfa, 0xed, 0x9f, 0xd4, 0x61, 0x75, 0x06, 0xf9, 0xbf, 0xe8, 0xf8, 0x80, 0x5a, 0x42, 0xdf, }; static const unsigned char xdh_wei448_2392_sharedsecret[] = { 0xb2, 0x0b, 0x6c, 0x99, 0x75, 0x13, 0x4a, 0xdc, 0x76, 0x8f, 0xcf, 0x27, 0xfd, 0x90, 0x3a, 0x17, 0xa7, 0x52, 0x56, 0x74, 0xc4, 0xf6, 0xad, 0x12, 0x60, 0x0a, 0xe5, 0xaa, 0x30, 0xf7, 0x8f, 0xad, 0x69, 0x10, 0x8c, 0x88, 0xcb, 0x8e, 0x68, 0xec, 0xbd, 0x00, 0x55, 0xbc, 0x6c, 0xa1, 0xce, 0xd4, 0x69, 0x18, 0xe4, 0x7c, 0x8a, 0x90, 0xa9, 0x4c, }; static const wycheproof_xdh_test xdh_wei448_2392 = { .name = "xdh_wei448_2392", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2392_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2392_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2392_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 320 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2393 for XDH, tcId is 321 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2393_peerpubkey[] = { 0x1a, 0x70, 0xd9, 0x23, 0xb5, 0xed, 0x73, 0xbf, 0x71, 0xa6, 0x5b, 0x47, 0xfe, 0xe7, 0xe7, 0x95, 0xb9, 0xc4, 0xcf, 0x4d, 0xb6, 0x18, 0xf6, 0x83, 0xfa, 0xc0, 0x3a, 0x70, 0xba, 0x23, 0x30, 0x02, 0x47, 0xd1, 0x4c, 0xfe, 0xba, 0xea, 0xb6, 0xb3, 0xab, 0xf0, 0xf1, 0x40, 0xe3, 0xd4, 0x8d, 0x54, 0xfd, 0x48, 0xba, 0x21, 0x3c, 0xc1, 0xfd, 0x04, }; static const unsigned char xdh_wei448_2393_privkey[] = { 0xa4, 0x8e, 0xbc, 0x73, 0x82, 0x70, 0x11, 0xfb, 0xe8, 0xd6, 0x32, 0xd8, 0xae, 0xa5, 0x7d, 0xf4, 0x4f, 0xa7, 0x03, 0xce, 0x27, 0x07, 0xb8, 0x09, 0x26, 0xad, 0x22, 0x8b, 0x5c, 0x2f, 0x25, 0x0b, 0xed, 0xbb, 0xc8, 0xf6, 0xd2, 0xd0, 0xb4, 0xe0, 0xa5, 0x6d, 0x65, 0x7e, 0xdd, 0x17, 0xee, 0x07, 0x19, 0xd0, 0xb3, 0xf1, 0x9d, 0x62, 0x16, 0xd4, }; static const unsigned char xdh_wei448_2393_sharedsecret[] = { 0x4e, 0xbf, 0xd3, 0x1f, 0x1c, 0xe1, 0xc8, 0x45, 0xfc, 0x3b, 0x36, 0x56, 0x93, 0x5c, 0x46, 0xc8, 0x8b, 0xbe, 0xf3, 0xbd, 0x23, 0x60, 0xaf, 0x50, 0x96, 0x50, 0xe0, 0x31, 0xb6, 0x5c, 0x72, 0x60, 0xaf, 0xb8, 0x46, 0xd0, 0xd6, 0x75, 0x63, 0x47, 0xc3, 0x89, 0xf7, 0x8d, 0xcf, 0x58, 0xde, 0x28, 0x0d, 0xd1, 0x0e, 0xc1, 0x40, 0xf2, 0x9e, 0x12, }; static const wycheproof_xdh_test xdh_wei448_2393 = { .name = "xdh_wei448_2393", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2393_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2393_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2393_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 321 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2394 for XDH, tcId is 322 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2394_peerpubkey[] = { 0xaa, 0x6f, 0xec, 0xaf, 0xff, 0x49, 0xda, 0xf6, 0x52, 0xe6, 0x35, 0x53, 0xbb, 0x2a, 0x24, 0xdf, 0xf2, 0xe3, 0x36, 0x09, 0x35, 0xf6, 0xe6, 0x63, 0xe5, 0xd0, 0xb9, 0x87, 0x3a, 0xfd, 0xcc, 0xd9, 0xce, 0x2f, 0xee, 0xd9, 0x70, 0x2d, 0x69, 0xec, 0x7f, 0xd2, 0x00, 0xb5, 0xf0, 0x50, 0x36, 0xd4, 0xd8, 0x38, 0xe3, 0x8a, 0xc3, 0xe3, 0x50, 0x19, }; static const unsigned char xdh_wei448_2394_privkey[] = { 0x80, 0xce, 0x00, 0xf3, 0x00, 0x61, 0x6a, 0x90, 0x39, 0xf9, 0xf7, 0xc2, 0x37, 0x92, 0xd3, 0xea, 0xd1, 0xf9, 0xf1, 0xc4, 0xcc, 0xb4, 0x97, 0xd8, 0x56, 0x3e, 0x43, 0xae, 0x26, 0xac, 0xb4, 0xea, 0x42, 0xf2, 0xd8, 0x74, 0x38, 0x92, 0x5c, 0xce, 0x52, 0x4f, 0xb7, 0x2f, 0xff, 0x48, 0x3c, 0xf0, 0x35, 0x45, 0x04, 0x3a, 0xe6, 0x1f, 0xc4, 0xdb, }; static const unsigned char xdh_wei448_2394_sharedsecret[] = { 0xd4, 0xd6, 0xb7, 0x77, 0x2f, 0x2c, 0xe6, 0x63, 0x08, 0x9a, 0x38, 0xd7, 0xa8, 0x13, 0xd9, 0x40, 0x96, 0x28, 0xaf, 0x72, 0x2e, 0x7e, 0x42, 0x65, 0x86, 0x36, 0xd8, 0x1b, 0x0d, 0x83, 0x67, 0x97, 0x5a, 0x77, 0xd0, 0x20, 0xb6, 0xc4, 0xb1, 0xbe, 0xc2, 0xb5, 0x5e, 0xa6, 0x9a, 0x08, 0x7c, 0xd1, 0xdb, 0xbf, 0x2b, 0xca, 0x33, 0xf5, 0xbc, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2394 = { .name = "xdh_wei448_2394", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2394_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2394_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2394_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 322 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2395 for XDH, tcId is 323 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2395_peerpubkey[] = { 0x82, 0x4d, 0x9b, 0xe2, 0x7c, 0xeb, 0xa9, 0x4d, 0x89, 0x86, 0xb6, 0x43, 0xf9, 0x76, 0x12, 0x36, 0xc5, 0x85, 0x5b, 0xb1, 0xb2, 0xe4, 0x52, 0x8a, 0x51, 0x1f, 0x29, 0x98, 0xb4, 0xe1, 0x6c, 0xd9, 0x3a, 0x7b, 0x18, 0x58, 0xcb, 0x55, 0x01, 0x9d, 0x77, 0x42, 0x06, 0x4d, 0x99, 0x3c, 0xa8, 0x02, 0xa3, 0xc8, 0xac, 0x17, 0x29, 0x5e, 0xcd, 0x2c, }; static const unsigned char xdh_wei448_2395_privkey[] = { 0x98, 0xcf, 0x8c, 0x51, 0x7e, 0x34, 0xd7, 0x71, 0xd9, 0xe0, 0x8c, 0xb9, 0x4d, 0xf8, 0x62, 0x80, 0xf6, 0x7e, 0x61, 0xdd, 0x7c, 0xff, 0x24, 0xbb, 0x32, 0x01, 0x37, 0xcf, 0x37, 0x0f, 0xd0, 0xb5, 0x88, 0x65, 0xdc, 0xf9, 0xbd, 0xee, 0x21, 0x8e, 0x51, 0xf5, 0x97, 0xd9, 0x13, 0xa5, 0xce, 0x25, 0xe0, 0xf9, 0x4b, 0x56, 0x61, 0x19, 0x31, 0xc5, }; static const unsigned char xdh_wei448_2395_sharedsecret[] = { 0x51, 0x7a, 0x8e, 0x2b, 0x66, 0xcf, 0xca, 0x84, 0x9c, 0x3c, 0xb8, 0xee, 0xe2, 0x8c, 0x45, 0x50, 0x50, 0xba, 0xa4, 0x79, 0x93, 0x40, 0xb4, 0x77, 0xfd, 0x6d, 0xa9, 0x5a, 0x99, 0x41, 0xdf, 0x92, 0xc7, 0xe4, 0x0b, 0x7d, 0xf7, 0x3f, 0x92, 0x0a, 0xe2, 0x2e, 0x5f, 0xc2, 0xd1, 0x45, 0x50, 0x49, 0x28, 0x42, 0x5e, 0x5e, 0x38, 0xc5, 0xcc, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2395 = { .name = "xdh_wei448_2395", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2395_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2395_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2395_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 323 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2396 for XDH, tcId is 324 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2396_peerpubkey[] = { 0xb6, 0x78, 0x75, 0xad, 0xd6, 0xc1, 0xf7, 0x61, 0x23, 0x4e, 0x35, 0x2b, 0x70, 0xc4, 0x1d, 0x23, 0x9d, 0xd1, 0xe5, 0x2a, 0x9f, 0xa1, 0x1e, 0x9e, 0x84, 0x52, 0x85, 0x26, 0x7f, 0x43, 0x6a, 0xc8, 0x1b, 0x79, 0x72, 0x06, 0x7e, 0x84, 0x3b, 0x03, 0xa4, 0xc5, 0x2c, 0x7a, 0x3b, 0x5a, 0xec, 0xa2, 0xfc, 0x6d, 0x18, 0x4b, 0x84, 0x38, 0xa6, 0x53, }; static const unsigned char xdh_wei448_2396_privkey[] = { 0x50, 0x6e, 0x86, 0xb7, 0xcc, 0xa2, 0x85, 0x83, 0x14, 0x77, 0xd9, 0x22, 0xb7, 0x86, 0x2e, 0x97, 0xda, 0x29, 0x4d, 0xf3, 0x9b, 0xbc, 0x5d, 0x96, 0x78, 0xe4, 0xd8, 0x3b, 0x2f, 0xdc, 0xe5, 0x65, 0x0c, 0x91, 0x67, 0x3c, 0xfb, 0xfa, 0xfb, 0x99, 0xb0, 0x73, 0x88, 0x00, 0x5b, 0xc6, 0xf6, 0xcf, 0x77, 0x7a, 0x24, 0x42, 0xed, 0x43, 0x74, 0xcb, }; static const unsigned char xdh_wei448_2396_sharedsecret[] = { 0xee, 0xb6, 0x2c, 0x57, 0x18, 0x97, 0x17, 0x51, 0x8c, 0x4d, 0xd0, 0x68, 0x73, 0x59, 0x3e, 0x4b, 0x12, 0xa9, 0xc5, 0x08, 0x75, 0x08, 0x0f, 0x56, 0xd7, 0x81, 0xa3, 0xed, 0x3e, 0xf7, 0xd9, 0xda, 0xf3, 0x5d, 0x86, 0xc4, 0x11, 0x1a, 0x2d, 0xbe, 0x06, 0x57, 0x8f, 0xf6, 0xd3, 0xa6, 0x5d, 0xed, 0x0b, 0x18, 0x14, 0x60, 0x06, 0xcf, 0xaa, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_2396 = { .name = "xdh_wei448_2396", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2396_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2396_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2396_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 324 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2397 for XDH, tcId is 325 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2397_peerpubkey[] = { 0xe5, 0xf9, 0x76, 0x38, 0x77, 0x9e, 0x27, 0xa9, 0x73, 0x7e, 0x08, 0x21, 0xd7, 0x71, 0x15, 0x85, 0xa9, 0x3f, 0x26, 0xdd, 0x52, 0x20, 0x8e, 0xd5, 0x36, 0x37, 0xd6, 0x74, 0xec, 0xe9, 0x66, 0x4f, 0xbb, 0xf3, 0x3e, 0x1c, 0xc4, 0xa3, 0x1f, 0x64, 0x30, 0xf1, 0x27, 0xc2, 0xf6, 0x0c, 0xb7, 0x6a, 0x1d, 0xef, 0xa6, 0xb6, 0xf7, 0x52, 0x47, 0x75, }; static const unsigned char xdh_wei448_2397_privkey[] = { 0xa0, 0x45, 0x4f, 0x58, 0x1e, 0x87, 0x8d, 0x6a, 0x3e, 0x04, 0x0f, 0x47, 0x69, 0xf2, 0x6d, 0x42, 0xd4, 0xb5, 0x5c, 0x25, 0x5b, 0xdd, 0x1e, 0xb2, 0x70, 0x76, 0x5d, 0x94, 0x9c, 0x49, 0x2f, 0x1c, 0x82, 0xc4, 0xd2, 0x3f, 0xec, 0x8b, 0x72, 0xd9, 0xcb, 0xbe, 0xd2, 0xdb, 0xc4, 0x0e, 0x23, 0xeb, 0x9f, 0x2b, 0x75, 0xf4, 0x91, 0xf4, 0xe2, 0xd2, }; static const unsigned char xdh_wei448_2397_sharedsecret[] = { 0x99, 0x57, 0x23, 0x6d, 0x86, 0x1e, 0xb7, 0x81, 0xc4, 0xc2, 0xd9, 0x15, 0x71, 0xb2, 0xa7, 0xb6, 0x9a, 0x51, 0xdd, 0x7d, 0x32, 0xcb, 0x53, 0x41, 0x8c, 0x33, 0x93, 0x3b, 0x81, 0x39, 0xbe, 0x72, 0x32, 0x95, 0xd2, 0x74, 0x44, 0xe3, 0x93, 0x69, 0x8c, 0x26, 0xb2, 0xc7, 0x84, 0xeb, 0x51, 0xfb, 0x8c, 0xf5, 0x3c, 0xcd, 0x3b, 0x41, 0x47, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2397 = { .name = "xdh_wei448_2397", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2397_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2397_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2397_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 325 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2398 for XDH, tcId is 326 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2398_peerpubkey[] = { 0x89, 0xc6, 0x37, 0xa3, 0x88, 0x96, 0xa8, 0xb5, 0xa3, 0xc1, 0x6e, 0x71, 0xa3, 0x5c, 0x2c, 0x18, 0xe4, 0x2d, 0x4a, 0x66, 0xd9, 0x71, 0xe3, 0x13, 0xc4, 0x62, 0xe7, 0xcc, 0x0c, 0x63, 0x2f, 0xea, 0x67, 0x0a, 0xb4, 0xc6, 0x0f, 0x49, 0xe8, 0x01, 0xd0, 0x18, 0x09, 0x70, 0x88, 0x8c, 0x33, 0x21, 0xb6, 0x61, 0xf3, 0x53, 0x1b, 0x0f, 0xe6, 0x76, }; static const unsigned char xdh_wei448_2398_privkey[] = { 0x54, 0xda, 0x02, 0x65, 0x68, 0xfc, 0x41, 0xef, 0x64, 0x9a, 0x51, 0xfd, 0x78, 0x40, 0x58, 0xf1, 0x91, 0x8c, 0x1a, 0x1f, 0x06, 0x98, 0xaa, 0xb9, 0xe5, 0x48, 0x6a, 0xec, 0xac, 0x85, 0x9d, 0x9b, 0xa2, 0x24, 0x38, 0x61, 0xdd, 0xfd, 0xfd, 0x63, 0x82, 0xdf, 0x20, 0xa4, 0x3b, 0xb0, 0x21, 0x65, 0xe3, 0x21, 0xc1, 0x98, 0x59, 0xc7, 0xe9, 0xdf, }; static const unsigned char xdh_wei448_2398_sharedsecret[] = { 0x0a, 0xcc, 0x1f, 0xf0, 0xe8, 0xd1, 0xef, 0xf3, 0xc7, 0x42, 0x1a, 0x8c, 0x0c, 0xdf, 0xd5, 0xa7, 0xa1, 0x48, 0xea, 0x53, 0x26, 0xd2, 0xaa, 0x7b, 0xd9, 0x7f, 0x93, 0x1f, 0xa4, 0x79, 0x16, 0xa5, 0xb6, 0x34, 0x61, 0x51, 0x35, 0x3d, 0x4f, 0x9e, 0x8e, 0xdb, 0x9e, 0xf0, 0xe9, 0xc3, 0xe3, 0x28, 0x19, 0x70, 0x77, 0x93, 0x6a, 0xa8, 0x09, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2398 = { .name = "xdh_wei448_2398", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2398_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2398_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2398_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 326 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2399 for XDH, tcId is 327 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2399_peerpubkey[] = { 0xda, 0x58, 0x1f, 0x73, 0x92, 0xf3, 0x4e, 0x3a, 0x7a, 0xe0, 0x90, 0x79, 0x50, 0x77, 0xc7, 0x61, 0x4c, 0xd2, 0x18, 0x5b, 0x8a, 0x61, 0x20, 0x3d, 0x10, 0x6e, 0xbd, 0xdd, 0x51, 0x65, 0x93, 0x61, 0x6e, 0x2c, 0xb3, 0xdd, 0x77, 0xf9, 0x77, 0x15, 0x97, 0xfc, 0xb2, 0x5b, 0xb4, 0xa9, 0xd8, 0x69, 0x88, 0x82, 0xc0, 0x33, 0xbe, 0xb9, 0xa1, 0x89, }; static const unsigned char xdh_wei448_2399_privkey[] = { 0x90, 0xd9, 0xb6, 0x83, 0x57, 0xd4, 0x99, 0x59, 0x74, 0xb0, 0xbb, 0x11, 0xf5, 0x24, 0x77, 0x3c, 0xfb, 0x2e, 0x49, 0x38, 0x5e, 0x31, 0x8c, 0x03, 0x63, 0x0b, 0x73, 0x38, 0x26, 0x11, 0x5e, 0x6a, 0x5b, 0x1d, 0x73, 0xb5, 0x30, 0x69, 0x50, 0xff, 0x90, 0xb9, 0x75, 0x16, 0x11, 0x4b, 0xad, 0x3e, 0xcd, 0x68, 0x59, 0xfb, 0x63, 0x93, 0x60, 0xca, }; static const unsigned char xdh_wei448_2399_sharedsecret[] = { 0x15, 0xab, 0xca, 0xad, 0xdf, 0x6b, 0x8c, 0xcd, 0x7a, 0xab, 0x0a, 0xea, 0xea, 0x64, 0x96, 0x60, 0xff, 0xc8, 0x65, 0xe5, 0x2e, 0x33, 0x91, 0x31, 0xaa, 0x33, 0x3d, 0xdc, 0x9e, 0x34, 0x3f, 0x16, 0x02, 0xb9, 0xee, 0xd6, 0xb9, 0x00, 0x15, 0x97, 0x42, 0x1e, 0xfd, 0x24, 0x57, 0xec, 0x49, 0x5c, 0xce, 0x57, 0xd8, 0x9d, 0xb4, 0xf3, 0x45, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_2399 = { .name = "xdh_wei448_2399", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2399_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2399_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2399_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 327 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2400 for XDH, tcId is 328 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2400_peerpubkey[] = { 0x65, 0xba, 0x0d, 0xd5, 0x81, 0xdb, 0xe1, 0x7a, 0x82, 0x90, 0x6e, 0x4d, 0xc5, 0x6a, 0x09, 0xdb, 0xdd, 0x54, 0xac, 0xcd, 0x86, 0xfd, 0xa4, 0x90, 0xeb, 0x61, 0x8e, 0x77, 0x27, 0x72, 0x93, 0x53, 0x3e, 0xbc, 0x70, 0xda, 0xd7, 0x02, 0x52, 0xd3, 0xbd, 0x6a, 0x12, 0x4b, 0xfd, 0x99, 0xaa, 0x3a, 0xdb, 0x83, 0x1e, 0x83, 0xc9, 0x6e, 0xdc, 0x9f, }; static const unsigned char xdh_wei448_2400_privkey[] = { 0x50, 0x21, 0xdd, 0x11, 0x1e, 0x3c, 0x8b, 0x81, 0x29, 0xf3, 0x54, 0x79, 0x85, 0xc7, 0xf2, 0x6b, 0xf3, 0x78, 0x5c, 0xd3, 0xe0, 0x50, 0xe9, 0x44, 0x82, 0x65, 0x26, 0x1f, 0xb5, 0x8e, 0xd6, 0xc5, 0xc5, 0xaf, 0x9e, 0x68, 0x78, 0xc0, 0x46, 0x18, 0xda, 0xe7, 0xec, 0xf4, 0x55, 0x43, 0xbc, 0x40, 0xcc, 0x38, 0x02, 0x08, 0x48, 0xc2, 0x10, 0xcd, }; static const unsigned char xdh_wei448_2400_sharedsecret[] = { 0x93, 0x3c, 0xca, 0x5e, 0x01, 0xcc, 0xa2, 0x97, 0x11, 0xb3, 0xb4, 0x72, 0x9a, 0xff, 0x32, 0x3a, 0xf5, 0x8f, 0x18, 0x80, 0x17, 0xd9, 0x6c, 0x15, 0xc7, 0xd1, 0x6a, 0x07, 0x83, 0x56, 0x50, 0x7b, 0x6e, 0x9c, 0xd6, 0xe0, 0x65, 0x1d, 0x0b, 0x52, 0x9f, 0x1c, 0x2c, 0xc9, 0xb9, 0x45, 0x10, 0xb8, 0xbe, 0xb3, 0x59, 0x45, 0x45, 0x2b, 0x2b, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2400 = { .name = "xdh_wei448_2400", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2400_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2400_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2400_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 328 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2401 for XDH, tcId is 329 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2401_peerpubkey[] = { 0x1b, 0x68, 0x20, 0xa3, 0xf4, 0x5e, 0xd2, 0x5f, 0xbc, 0x60, 0x05, 0x26, 0x1d, 0xfc, 0xe5, 0x7a, 0xcb, 0x5d, 0x4d, 0x82, 0xcb, 0x73, 0x4b, 0x2c, 0x35, 0xeb, 0x62, 0x6c, 0xad, 0xe1, 0xea, 0x38, 0x28, 0xfd, 0x7f, 0x6f, 0x0a, 0x32, 0xbc, 0xf7, 0x93, 0x3d, 0x93, 0x7e, 0x6d, 0x0f, 0x54, 0x9a, 0x0e, 0xda, 0x36, 0xd2, 0x41, 0x61, 0x7c, 0xaa, }; static const unsigned char xdh_wei448_2401_privkey[] = { 0x78, 0x63, 0xa4, 0x08, 0xac, 0xf7, 0xb6, 0xd5, 0x2e, 0x2c, 0xb0, 0x9e, 0x9d, 0x38, 0x05, 0xbf, 0xf4, 0x81, 0x78, 0x7a, 0x99, 0x22, 0x3a, 0xec, 0x44, 0xec, 0x22, 0x42, 0xf4, 0xd5, 0x5f, 0x2c, 0x77, 0x17, 0xb6, 0x71, 0x2a, 0xad, 0x80, 0xa8, 0x4b, 0xb7, 0xf0, 0x2b, 0xbf, 0xed, 0x3f, 0xb4, 0xde, 0x72, 0x9f, 0xc1, 0x5e, 0xc2, 0xe1, 0xd3, }; static const unsigned char xdh_wei448_2401_sharedsecret[] = { 0x05, 0x7c, 0xc2, 0xab, 0x05, 0x52, 0x3b, 0x73, 0xe7, 0x4a, 0xee, 0x31, 0x51, 0xef, 0x8d, 0xbf, 0x9e, 0x79, 0x6d, 0x68, 0x19, 0x9f, 0x69, 0x92, 0x9f, 0x95, 0x12, 0x1d, 0x29, 0xc3, 0xbf, 0x43, 0xb9, 0x1b, 0xeb, 0x74, 0x94, 0xb1, 0x70, 0x39, 0x5f, 0xdf, 0x0f, 0xa1, 0x1f, 0x44, 0x56, 0x09, 0x4e, 0x27, 0x63, 0x3f, 0x9d, 0x24, 0x0a, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2401 = { .name = "xdh_wei448_2401", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2401_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2401_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2401_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 329 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2402 for XDH, tcId is 330 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2402_peerpubkey[] = { 0xde, 0xfd, 0x0c, 0xb3, 0x99, 0x2f, 0x0a, 0x16, 0xe7, 0x58, 0x79, 0x19, 0x04, 0x44, 0x29, 0xbf, 0x1a, 0x91, 0x33, 0x30, 0xcc, 0x3e, 0x82, 0x54, 0x9a, 0xe4, 0xb8, 0x8c, 0x6b, 0x25, 0x50, 0xc8, 0x3d, 0x36, 0x4c, 0x7e, 0x52, 0x92, 0xb5, 0x91, 0x90, 0xec, 0xb2, 0x4d, 0x12, 0x01, 0x96, 0x32, 0x19, 0x55, 0x52, 0xcb, 0x98, 0x8c, 0x6a, 0xbc, }; static const unsigned char xdh_wei448_2402_privkey[] = { 0x58, 0x31, 0x40, 0x3b, 0xb4, 0xfe, 0x37, 0x74, 0xbc, 0xe2, 0xa7, 0x46, 0x10, 0x5c, 0x67, 0x60, 0x47, 0xee, 0x7c, 0xf6, 0x25, 0xca, 0xdb, 0xea, 0x99, 0x2b, 0x89, 0xcb, 0x5c, 0x6f, 0xd8, 0xbd, 0x43, 0xb6, 0x82, 0xf9, 0x64, 0xe7, 0xc3, 0x74, 0xda, 0xcd, 0x2d, 0xc9, 0xe6, 0x1b, 0x02, 0x0d, 0x4d, 0xa9, 0xe0, 0x35, 0xac, 0x7b, 0xf3, 0xd1, }; static const unsigned char xdh_wei448_2402_sharedsecret[] = { 0x5a, 0xbd, 0x6a, 0xa8, 0x0c, 0xfe, 0xba, 0x87, 0xfa, 0x38, 0x97, 0x14, 0x29, 0x5d, 0x16, 0xb7, 0xc0, 0x64, 0xe1, 0x60, 0x5c, 0x8d, 0xf8, 0xa3, 0xd0, 0x69, 0x46, 0x74, 0x87, 0x97, 0xae, 0x98, 0x54, 0xf7, 0x4f, 0x08, 0x96, 0x47, 0xd4, 0x69, 0x8c, 0x04, 0x8f, 0x29, 0xf9, 0x2d, 0x90, 0xc7, 0xe7, 0xbd, 0xd4, 0xf2, 0x7e, 0xf0, 0xea, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2402 = { .name = "xdh_wei448_2402", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2402_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2402_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2402_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 330 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2403 for XDH, tcId is 331 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2403_peerpubkey[] = { 0x64, 0xfa, 0x39, 0x92, 0xdc, 0x42, 0x9e, 0x51, 0xcf, 0xb4, 0x47, 0xae, 0x60, 0x90, 0xbb, 0xe5, 0x39, 0xbc, 0xdc, 0xcc, 0xcf, 0xfe, 0xa8, 0xbe, 0x0c, 0x8f, 0x3f, 0x8e, 0x5f, 0x8f, 0xf7, 0x5e, 0x50, 0xb2, 0xba, 0x94, 0xf2, 0x7c, 0x30, 0x20, 0x54, 0x27, 0x87, 0x3f, 0xf9, 0x24, 0x3b, 0xaa, 0xf1, 0x62, 0xf1, 0x54, 0xa3, 0xcc, 0x1e, 0xcd, }; static const unsigned char xdh_wei448_2403_privkey[] = { 0xcc, 0x56, 0x3f, 0x16, 0xc8, 0xab, 0x58, 0x4e, 0x30, 0x76, 0x0d, 0xef, 0xc2, 0x8f, 0x5f, 0x19, 0x14, 0xd2, 0x4b, 0xad, 0xf1, 0x0e, 0x5f, 0xee, 0x39, 0xb4, 0xe4, 0xdb, 0xc5, 0x86, 0x09, 0x61, 0xfd, 0x19, 0xa3, 0xf1, 0x1d, 0xd5, 0x6c, 0xf0, 0x3e, 0xd6, 0x98, 0xa8, 0xaa, 0xba, 0x08, 0xee, 0x48, 0x12, 0xb4, 0x5c, 0xba, 0x0f, 0xd6, 0xc5, }; static const unsigned char xdh_wei448_2403_sharedsecret[] = { 0xb8, 0xa3, 0x98, 0xd6, 0x29, 0x76, 0xd6, 0x5b, 0x81, 0x79, 0xd4, 0x0a, 0x5c, 0x14, 0xfd, 0xa0, 0x07, 0x6d, 0x2a, 0x9d, 0x46, 0x26, 0xde, 0xb5, 0xd7, 0x34, 0x92, 0x0c, 0x0a, 0xc4, 0xf2, 0x83, 0xe8, 0x1d, 0x49, 0xf2, 0xdd, 0x8d, 0x6b, 0x50, 0x3f, 0x11, 0xa1, 0x86, 0xe7, 0x38, 0x13, 0x9c, 0x5a, 0x14, 0x33, 0x00, 0x3a, 0x0d, 0xa7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2403 = { .name = "xdh_wei448_2403", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2403_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2403_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2403_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 331 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2404 for XDH, tcId is 332 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2404_peerpubkey[] = { 0xb1, 0x2e, 0x03, 0x9a, 0x6c, 0x92, 0x0f, 0x62, 0x6e, 0x99, 0x77, 0xdd, 0x93, 0xf0, 0x40, 0x5e, 0x30, 0x9f, 0x6d, 0x60, 0x1f, 0x51, 0xe9, 0x63, 0x26, 0x93, 0x5e, 0x6e, 0x5a, 0xc1, 0xa1, 0xda, 0xa4, 0xda, 0xfc, 0x09, 0xf9, 0xe1, 0xaa, 0x36, 0x2c, 0xa1, 0x24, 0x2a, 0xe8, 0x5c, 0xf1, 0x13, 0x39, 0xbf, 0x49, 0xc5, 0xfc, 0xdb, 0xef, 0x04, }; static const unsigned char xdh_wei448_2404_privkey[] = { 0x84, 0x5d, 0xb0, 0x49, 0xa0, 0x26, 0x01, 0xc8, 0xbf, 0xfc, 0xb3, 0x9a, 0x09, 0xf8, 0xa4, 0x1f, 0x59, 0xea, 0x7b, 0x7d, 0x7f, 0x9a, 0xb0, 0xac, 0x32, 0x01, 0xb6, 0xc9, 0xf5, 0x4c, 0x19, 0x00, 0x97, 0xef, 0xcc, 0x87, 0xe6, 0xfb, 0x66, 0x96, 0x9a, 0x86, 0xa4, 0x00, 0x51, 0xaf, 0x63, 0x79, 0xed, 0xa8, 0x46, 0xdb, 0x3a, 0x63, 0xd6, 0xc3, }; static const unsigned char xdh_wei448_2404_sharedsecret[] = { 0x4b, 0x85, 0x89, 0xcd, 0x37, 0x0b, 0x85, 0x1e, 0xec, 0xcd, 0x07, 0xb2, 0x25, 0x96, 0x3e, 0x2d, 0xc3, 0x55, 0x70, 0x47, 0x93, 0xa8, 0xe4, 0x4f, 0xfb, 0x73, 0x94, 0x45, 0xcc, 0x59, 0x07, 0xf4, 0x7b, 0xcd, 0xfb, 0x1e, 0x3a, 0xe4, 0x41, 0x23, 0x8d, 0x72, 0xf6, 0x0d, 0x42, 0x54, 0x4a, 0xee, 0x01, 0x2a, 0xa1, 0xcc, 0x17, 0x19, 0x5a, 0x61, }; static const wycheproof_xdh_test xdh_wei448_2404 = { .name = "xdh_wei448_2404", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2404_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2404_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2404_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 332 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2405 for XDH, tcId is 333 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2405_peerpubkey[] = { 0x11, 0x80, 0xa4, 0x67, 0xe0, 0x5c, 0x86, 0x8c, 0xa3, 0x3b, 0xd1, 0x81, 0x5d, 0x1d, 0xaa, 0x76, 0x5e, 0x98, 0x9d, 0x03, 0x8a, 0x34, 0x9c, 0xb0, 0xbe, 0x63, 0x9c, 0x85, 0x59, 0x17, 0x15, 0x40, 0xe9, 0xb4, 0x1d, 0xfc, 0x2e, 0xc8, 0xf7, 0xac, 0xb9, 0x4b, 0x92, 0x9a, 0x6d, 0x01, 0xbb, 0x9b, 0x67, 0x93, 0xe3, 0x51, 0x66, 0x97, 0x86, 0x5e, }; static const unsigned char xdh_wei448_2405_privkey[] = { 0x50, 0x51, 0x7d, 0x38, 0x72, 0x02, 0x9a, 0x98, 0xe9, 0xdc, 0x37, 0x49, 0x72, 0x08, 0xc0, 0xe8, 0xba, 0x00, 0x51, 0xa8, 0x51, 0x78, 0x41, 0xfb, 0x93, 0xcd, 0xa1, 0x64, 0x5c, 0xbf, 0xc8, 0x35, 0xab, 0x3f, 0x6e, 0x53, 0xd5, 0x70, 0xb5, 0xe2, 0x80, 0xd3, 0xa7, 0xcc, 0x16, 0x64, 0x1e, 0x64, 0xe1, 0x46, 0xcd, 0x7a, 0x4d, 0x70, 0x1b, 0xd3, }; static const unsigned char xdh_wei448_2405_sharedsecret[] = { 0x9f, 0xff, 0x02, 0x11, 0xe4, 0x00, 0x6e, 0xe0, 0x37, 0xf7, 0xbd, 0xa5, 0x10, 0x57, 0xac, 0x9f, 0x97, 0x3c, 0xf2, 0x11, 0x43, 0x59, 0xad, 0xb8, 0xb0, 0x94, 0x6c, 0xee, 0x04, 0x36, 0x2f, 0x22, 0x50, 0xc8, 0x41, 0x73, 0xba, 0xf0, 0xdb, 0xcd, 0xf8, 0xf0, 0xf1, 0x8f, 0xcc, 0x37, 0x09, 0x81, 0xef, 0xcb, 0x68, 0x41, 0x8d, 0xda, 0x37, 0x36, }; static const wycheproof_xdh_test xdh_wei448_2405 = { .name = "xdh_wei448_2405", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2405_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2405_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2405_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 333 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2406 for XDH, tcId is 334 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2406_peerpubkey[] = { 0xbe, 0xbf, 0xf6, 0xf3, 0xa3, 0xa1, 0xf1, 0x68, 0x1a, 0x15, 0x47, 0x91, 0x2e, 0x8b, 0xa8, 0xf1, 0x80, 0x83, 0x56, 0x59, 0xf1, 0x66, 0x7c, 0xc2, 0x4f, 0x3f, 0xb3, 0x56, 0xc9, 0xb2, 0xb4, 0xb8, 0x5d, 0x9e, 0xf9, 0x56, 0x1e, 0x21, 0x0a, 0x8c, 0x74, 0xb6, 0xc0, 0xaa, 0x07, 0xee, 0xa6, 0x44, 0xe3, 0x06, 0x33, 0xdf, 0x02, 0x83, 0x86, 0x90, }; static const unsigned char xdh_wei448_2406_privkey[] = { 0xcc, 0x01, 0x12, 0x81, 0xae, 0x30, 0xb6, 0x17, 0xad, 0x79, 0x23, 0xaa, 0xce, 0xe0, 0x72, 0xfd, 0x5f, 0x9d, 0x1d, 0xa0, 0x55, 0xee, 0x7b, 0x60, 0x52, 0xcc, 0x03, 0xf7, 0x9f, 0x99, 0xc8, 0x8e, 0xec, 0xa7, 0xb5, 0xee, 0x65, 0xd8, 0x56, 0x23, 0x64, 0x2c, 0x4e, 0x92, 0xd4, 0x0b, 0xb8, 0x18, 0x50, 0xfc, 0x27, 0x0c, 0x61, 0x6f, 0x43, 0xda, }; static const unsigned char xdh_wei448_2406_sharedsecret[] = { 0x89, 0x53, 0x8a, 0xc4, 0x75, 0xd4, 0x4c, 0xf7, 0x0e, 0xa5, 0x48, 0x45, 0x16, 0x35, 0x69, 0xb7, 0xa4, 0x6f, 0x28, 0x05, 0x6b, 0xf0, 0xb0, 0x16, 0x4b, 0x76, 0x6f, 0xc9, 0x41, 0xb2, 0x3e, 0x92, 0xb9, 0x9d, 0x6e, 0xc5, 0x39, 0x1e, 0x2e, 0xb9, 0xd7, 0xf1, 0xd0, 0x4c, 0xab, 0xd6, 0x26, 0x86, 0xd2, 0xde, 0x74, 0xa2, 0xd3, 0x57, 0x02, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2406 = { .name = "xdh_wei448_2406", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2406_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2406_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2406_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 334 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2407 for XDH, tcId is 335 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2407_peerpubkey[] = { 0x23, 0x55, 0xaa, 0x15, 0x22, 0x36, 0x45, 0x1f, 0xde, 0xe7, 0xa5, 0xa3, 0xb8, 0xb4, 0x38, 0x65, 0x63, 0x68, 0xe6, 0xc4, 0x92, 0xf7, 0x4f, 0x7d, 0x72, 0xc7, 0x06, 0xa7, 0x8b, 0xc6, 0x6b, 0x4a, 0xdb, 0xaa, 0xc8, 0xfb, 0x73, 0xfc, 0xe3, 0xb5, 0x90, 0x6e, 0xa1, 0x8c, 0xd5, 0xc2, 0x47, 0xc1, 0xc9, 0xce, 0xfb, 0x3f, 0x36, 0xd6, 0x8b, 0x0c, }; static const unsigned char xdh_wei448_2407_privkey[] = { 0x50, 0xd4, 0x8c, 0x9d, 0x35, 0x2d, 0x66, 0xbc, 0x02, 0x8a, 0x4b, 0x62, 0x1b, 0xd4, 0xd5, 0xa5, 0x35, 0xef, 0x0c, 0xdd, 0xac, 0xe9, 0xfd, 0xb4, 0x30, 0xab, 0x93, 0xd3, 0xdf, 0xd5, 0xe8, 0x97, 0x88, 0x28, 0xb1, 0xaf, 0x6f, 0xef, 0xfe, 0x7d, 0xb8, 0xf0, 0x83, 0xf3, 0x01, 0x4d, 0x4d, 0xc9, 0x15, 0xd6, 0x96, 0xa4, 0x9c, 0xa3, 0x5b, 0xcf, }; static const unsigned char xdh_wei448_2407_sharedsecret[] = { 0x7b, 0xa0, 0xd3, 0x22, 0x86, 0xc0, 0x48, 0x7c, 0x25, 0x7c, 0x80, 0x3b, 0xa9, 0xd3, 0x51, 0xcd, 0x29, 0xbe, 0xfa, 0x9f, 0xc7, 0x80, 0x82, 0x28, 0x47, 0xa1, 0x79, 0xd2, 0xd0, 0x93, 0x92, 0xde, 0xe6, 0x53, 0xfc, 0x73, 0x1c, 0x4b, 0xaf, 0x1f, 0xcb, 0x4a, 0xc0, 0xdb, 0x86, 0x73, 0xba, 0x92, 0x75, 0x21, 0x37, 0x50, 0x90, 0x7d, 0x20, 0xc1, }; static const wycheproof_xdh_test xdh_wei448_2407 = { .name = "xdh_wei448_2407", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2407_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2407_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2407_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 335 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2408 for XDH, tcId is 336 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2408_peerpubkey[] = { 0xf9, 0x89, 0xfb, 0x50, 0x94, 0xb0, 0x71, 0xe7, 0x56, 0x0e, 0x7f, 0xf7, 0x19, 0xd5, 0x58, 0xaf, 0x6a, 0x52, 0x56, 0x7d, 0x4c, 0x0d, 0xa9, 0x08, 0xc0, 0x77, 0x77, 0x02, 0x9d, 0x90, 0xf6, 0xc9, 0x76, 0x13, 0x41, 0x8c, 0x89, 0xb3, 0xba, 0x5c, 0x18, 0x83, 0x91, 0x21, 0x59, 0xf5, 0xb3, 0xcc, 0x15, 0xb9, 0xee, 0xe7, 0xee, 0x99, 0xfb, 0x0f, }; static const unsigned char xdh_wei448_2408_privkey[] = { 0xa0, 0xa6, 0x53, 0x86, 0x43, 0x52, 0x9a, 0x71, 0x12, 0x5c, 0xbd, 0xe7, 0x41, 0x1d, 0x4d, 0x0c, 0x6d, 0x93, 0xf0, 0x6c, 0x3f, 0xd9, 0x25, 0x85, 0x7b, 0xe3, 0x97, 0xfb, 0x8a, 0x09, 0x63, 0x08, 0x6e, 0xd1, 0xec, 0x2c, 0xc3, 0xaa, 0xc4, 0x55, 0xd7, 0xe5, 0x31, 0x9c, 0xbc, 0x3b, 0x9d, 0x61, 0xbc, 0xbc, 0x04, 0xec, 0xaa, 0xba, 0x1b, 0xde, }; static const unsigned char xdh_wei448_2408_sharedsecret[] = { 0xf2, 0xb5, 0x2d, 0x42, 0x22, 0x4f, 0x2e, 0xa8, 0x6a, 0xa9, 0x69, 0x79, 0xb8, 0x0e, 0xe6, 0x93, 0x91, 0xab, 0x04, 0x2d, 0x8b, 0xd6, 0xdb, 0xaa, 0x2c, 0xec, 0x68, 0x00, 0x16, 0x60, 0x6e, 0xa3, 0x45, 0x83, 0xe5, 0xb4, 0x61, 0xfe, 0x38, 0xb9, 0xdf, 0x61, 0x61, 0xc8, 0xa1, 0xa4, 0x3f, 0xb4, 0xfb, 0x88, 0x0b, 0xa4, 0x60, 0xaf, 0x71, 0x27, }; static const wycheproof_xdh_test xdh_wei448_2408 = { .name = "xdh_wei448_2408", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2408_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2408_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2408_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 336 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2409 for XDH, tcId is 337 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2409_peerpubkey[] = { 0x69, 0x74, 0x07, 0xb0, 0xaf, 0xaf, 0x40, 0x10, 0x7c, 0x7c, 0x5f, 0x26, 0x4c, 0xd8, 0xa7, 0x03, 0x0c, 0x71, 0x5c, 0x57, 0x6e, 0x7d, 0x83, 0xc4, 0xf5, 0xb6, 0x92, 0xfc, 0x30, 0xf8, 0x47, 0x1e, 0x25, 0xeb, 0xd8, 0x95, 0x5f, 0x3f, 0x5a, 0x74, 0xc4, 0x97, 0x0d, 0x41, 0x19, 0xa3, 0xe9, 0xbd, 0x85, 0x3f, 0xc3, 0xc5, 0x89, 0xbc, 0xe1, 0x19, }; static const unsigned char xdh_wei448_2409_privkey[] = { 0x84, 0x87, 0x3d, 0xf6, 0xb5, 0xe1, 0xbf, 0xe2, 0x6a, 0x39, 0xe2, 0x5c, 0xcc, 0xab, 0x3e, 0xa7, 0xee, 0xbf, 0xbe, 0xad, 0x47, 0x5d, 0x0f, 0xa2, 0x51, 0x4b, 0xe6, 0x8a, 0x11, 0x1e, 0x4c, 0xec, 0x6d, 0xc9, 0xa3, 0x40, 0x40, 0x99, 0xb8, 0x15, 0xde, 0x59, 0x5c, 0x5b, 0xa2, 0x3d, 0x78, 0x90, 0x58, 0x3c, 0xcb, 0x2c, 0x81, 0xd2, 0x72, 0xd4, }; static const unsigned char xdh_wei448_2409_sharedsecret[] = { 0x20, 0xfe, 0x01, 0x00, 0xaf, 0xdd, 0x1f, 0xe9, 0xd3, 0x41, 0x34, 0xfd, 0xcf, 0xd9, 0x59, 0x0a, 0xc1, 0x5e, 0x98, 0x0d, 0xf8, 0x90, 0x05, 0xf4, 0x87, 0xbb, 0xae, 0x45, 0x19, 0x8c, 0x20, 0xc2, 0xea, 0x02, 0x71, 0x01, 0xd5, 0x5d, 0xc3, 0xfe, 0xf7, 0xb6, 0x80, 0x04, 0xb5, 0x12, 0x45, 0xef, 0x62, 0xa3, 0x73, 0xc9, 0xe2, 0x35, 0xc1, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2409 = { .name = "xdh_wei448_2409", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2409_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2409_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2409_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 337 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2410 for XDH, tcId is 338 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2410_peerpubkey[] = { 0xdb, 0xe0, 0xa6, 0xb7, 0xd0, 0x7a, 0x46, 0x1a, 0x90, 0xf3, 0xcb, 0x09, 0xed, 0xa8, 0x44, 0xe2, 0x41, 0xf2, 0x15, 0x3a, 0x9c, 0x34, 0xe3, 0xa9, 0x00, 0xcc, 0xbd, 0xd5, 0xcb, 0x73, 0xd0, 0x88, 0x98, 0xdb, 0x2c, 0x5e, 0xb4, 0x3f, 0x81, 0xd1, 0x54, 0xb9, 0xb2, 0xba, 0x95, 0x40, 0xa5, 0xf6, 0x65, 0xde, 0x20, 0x4f, 0x28, 0xb9, 0xf4, 0x98, }; static const unsigned char xdh_wei448_2410_privkey[] = { 0x64, 0x85, 0x25, 0x2a, 0xeb, 0x24, 0x4c, 0x87, 0x22, 0xae, 0xeb, 0x74, 0x77, 0xe2, 0xc6, 0xa6, 0xab, 0x33, 0x87, 0x63, 0xb7, 0xa3, 0x05, 0x7a, 0xee, 0x86, 0x7b, 0x4b, 0x2d, 0x6d, 0xa2, 0xc3, 0x34, 0xf6, 0x28, 0x93, 0x69, 0x30, 0x48, 0x9c, 0x77, 0xd5, 0xa5, 0xf7, 0xf4, 0x62, 0xf9, 0x36, 0x3b, 0x9c, 0xfc, 0x9e, 0x31, 0x40, 0x9a, 0xdf, }; static const unsigned char xdh_wei448_2410_sharedsecret[] = { 0xb2, 0x50, 0xf4, 0x32, 0xd3, 0xd2, 0xd6, 0x6c, 0xd1, 0x75, 0xaa, 0x7d, 0xbe, 0x0b, 0x3a, 0x97, 0xf7, 0x45, 0x39, 0xb1, 0x82, 0x03, 0x0b, 0xd0, 0xd1, 0x4d, 0xa5, 0x47, 0xc2, 0xb7, 0xd6, 0x30, 0x97, 0xb3, 0x01, 0x2a, 0xfe, 0x41, 0x45, 0x25, 0x81, 0xa9, 0x8e, 0x17, 0x85, 0xe1, 0x1a, 0xc1, 0x07, 0xdc, 0x97, 0x85, 0x4b, 0x16, 0xdd, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_2410 = { .name = "xdh_wei448_2410", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2410_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2410_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2410_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 338 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2411 for XDH, tcId is 339 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2411_peerpubkey[] = { 0xd4, 0x92, 0x85, 0x11, 0x28, 0x15, 0x6c, 0xd6, 0x75, 0xb4, 0xa4, 0x0d, 0x6d, 0x69, 0x2e, 0xd5, 0x9f, 0x81, 0x53, 0xb8, 0x12, 0x70, 0x29, 0xcd, 0xf2, 0x4a, 0x09, 0x0a, 0x3f, 0x19, 0xee, 0x29, 0xcd, 0x8e, 0xf7, 0x2e, 0xbd, 0x50, 0xa2, 0x13, 0x93, 0x4e, 0xba, 0x5e, 0x02, 0x3a, 0x28, 0x93, 0xae, 0x34, 0x23, 0x38, 0x79, 0xb4, 0x69, 0xa2, }; static const unsigned char xdh_wei448_2411_privkey[] = { 0xe4, 0x81, 0x8a, 0x88, 0xbc, 0x9c, 0x3e, 0xd2, 0x5b, 0xa5, 0x2f, 0x10, 0x60, 0x5c, 0x9e, 0x4c, 0x75, 0x44, 0x70, 0x52, 0x8f, 0x56, 0xc9, 0xe0, 0x2b, 0x03, 0xd3, 0x6e, 0x0c, 0xa9, 0x45, 0x74, 0xd3, 0x3d, 0x71, 0x7b, 0x3b, 0x14, 0x15, 0x54, 0x4d, 0xa3, 0x1e, 0xed, 0xe1, 0x25, 0x4e, 0x8e, 0xee, 0xcf, 0x92, 0x9c, 0x4f, 0x1a, 0x96, 0xcf, }; static const unsigned char xdh_wei448_2411_sharedsecret[] = { 0x4f, 0x4b, 0x68, 0x0d, 0x42, 0x5b, 0xf9, 0xca, 0x41, 0xf9, 0xde, 0x0a, 0xcd, 0x0f, 0xac, 0x23, 0x26, 0x57, 0xec, 0xa4, 0xf2, 0x90, 0x55, 0x38, 0x6b, 0xe8, 0xc4, 0x1e, 0x92, 0xe0, 0xb8, 0x95, 0x28, 0xde, 0x17, 0xd3, 0x4a, 0xef, 0x44, 0x28, 0xd3, 0x11, 0x6f, 0xf7, 0x6b, 0xb5, 0xab, 0x0f, 0x4a, 0x28, 0xfc, 0x0e, 0x63, 0xdb, 0xb8, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2411 = { .name = "xdh_wei448_2411", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2411_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2411_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2411_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 339 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2412 for XDH, tcId is 340 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2412_peerpubkey[] = { 0x9d, 0x74, 0xeb, 0x1e, 0x65, 0xb4, 0x98, 0x59, 0xff, 0xaa, 0x71, 0x1c, 0xa3, 0x35, 0x59, 0x4f, 0x5e, 0x86, 0xda, 0x02, 0x3e, 0x2a, 0x3f, 0x8b, 0x7f, 0x92, 0x93, 0x88, 0x37, 0x5f, 0x61, 0xb4, 0x05, 0xa0, 0xa8, 0x79, 0xfc, 0x05, 0xa1, 0x87, 0xf1, 0x3c, 0xb2, 0x99, 0xed, 0xa9, 0xa8, 0x0d, 0x14, 0x4d, 0xd2, 0x88, 0x59, 0xe0, 0x9d, 0x25, }; static const unsigned char xdh_wei448_2412_privkey[] = { 0xbc, 0xd5, 0x1b, 0x5d, 0x0b, 0xda, 0xc7, 0xbe, 0x40, 0x7c, 0xa2, 0x0f, 0x96, 0x34, 0x8e, 0x7e, 0xc7, 0xb5, 0x06, 0xe3, 0x71, 0x99, 0x40, 0xdf, 0x32, 0x10, 0x37, 0x73, 0x0b, 0x32, 0x3b, 0xa2, 0x31, 0x65, 0x35, 0xd4, 0x0a, 0xd2, 0xc2, 0x06, 0x3c, 0xfa, 0x00, 0x91, 0x0d, 0x14, 0x3c, 0x80, 0x5a, 0xd4, 0x0f, 0x9f, 0x6a, 0xcd, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_2412_sharedsecret[] = { 0xd3, 0xd6, 0x94, 0xe1, 0x19, 0xae, 0x51, 0xe4, 0x76, 0xf4, 0x1a, 0x09, 0xf7, 0x17, 0xd3, 0xcd, 0xb1, 0x40, 0x3c, 0xc2, 0x3a, 0x5c, 0x09, 0x0e, 0x20, 0x86, 0x83, 0x9b, 0x47, 0xba, 0x61, 0xe8, 0x35, 0x69, 0x8d, 0xdd, 0xbd, 0xd4, 0xbb, 0x0e, 0x24, 0x58, 0x03, 0x0a, 0x84, 0xd7, 0x00, 0x66, 0xd8, 0x52, 0xa1, 0x04, 0x99, 0x11, 0xf0, 0x44, }; static const wycheproof_xdh_test xdh_wei448_2412 = { .name = "xdh_wei448_2412", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2412_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2412_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2412_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 340 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2413 for XDH, tcId is 341 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2413_peerpubkey[] = { 0x9e, 0x56, 0x61, 0xc3, 0x63, 0xc4, 0x50, 0x84, 0x27, 0x51, 0xf7, 0x48, 0x0c, 0x92, 0x15, 0xeb, 0x4a, 0x17, 0xdc, 0x97, 0xfe, 0xec, 0x90, 0xb8, 0x22, 0x86, 0xcd, 0x30, 0x38, 0x57, 0x72, 0x90, 0x3b, 0x0c, 0x23, 0xa8, 0x70, 0xff, 0xe5, 0xd8, 0x92, 0xa3, 0xef, 0xba, 0x21, 0x4c, 0xc8, 0x38, 0x5f, 0xf5, 0x95, 0x15, 0x88, 0x90, 0xdf, 0x31, }; static const unsigned char xdh_wei448_2413_privkey[] = { 0x14, 0x61, 0x8b, 0x40, 0xe7, 0xf8, 0x5c, 0x20, 0x61, 0xcf, 0xd1, 0xb3, 0x21, 0xb9, 0x63, 0xfe, 0x0e, 0x8a, 0x54, 0x93, 0xc6, 0x72, 0xfd, 0x2f, 0xa6, 0xa6, 0xd1, 0x0c, 0x2c, 0xec, 0x76, 0xac, 0x8c, 0xbb, 0x06, 0x27, 0x4c, 0xf3, 0x05, 0x8b, 0xe3, 0xac, 0x51, 0xc9, 0x63, 0x39, 0xff, 0x97, 0x20, 0x45, 0x74, 0x56, 0x4d, 0x17, 0x1f, 0xc7, }; static const unsigned char xdh_wei448_2413_sharedsecret[] = { 0x67, 0xc5, 0x4f, 0xb6, 0x77, 0xcc, 0x4c, 0x02, 0xc3, 0x24, 0xe1, 0xd7, 0xf0, 0xae, 0x06, 0x8a, 0x25, 0x55, 0xd1, 0x53, 0xd7, 0x05, 0x17, 0xbc, 0x1a, 0xb9, 0x03, 0x1d, 0x45, 0xa4, 0xa4, 0x41, 0x5b, 0xe0, 0xce, 0xbb, 0x35, 0x76, 0x56, 0xb9, 0x7c, 0xf5, 0xb5, 0x17, 0x6b, 0x3a, 0xea, 0x61, 0xac, 0x4d, 0xb8, 0x2d, 0xf3, 0x24, 0x11, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_2413 = { .name = "xdh_wei448_2413", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2413_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2413_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2413_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 341 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2414 for XDH, tcId is 342 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2414_peerpubkey[] = { 0xd0, 0xd2, 0x16, 0xc1, 0x49, 0xe7, 0xe5, 0x36, 0xaa, 0x68, 0x99, 0xb9, 0x8d, 0x5b, 0x04, 0xf3, 0xea, 0xe7, 0x3a, 0x38, 0xff, 0xe0, 0xc6, 0x2d, 0x90, 0x80, 0xfc, 0x6d, 0x63, 0xdd, 0xac, 0xcd, 0x3a, 0x9b, 0xf5, 0xf5, 0x4c, 0x5c, 0xe5, 0x8d, 0x96, 0x11, 0x96, 0xc5, 0xdf, 0x28, 0xbd, 0x3b, 0x7e, 0x39, 0x98, 0xb8, 0x52, 0xe3, 0x5d, 0x89, }; static const unsigned char xdh_wei448_2414_privkey[] = { 0x80, 0x74, 0x7b, 0xd0, 0xed, 0x71, 0xf6, 0x7e, 0xbc, 0xbc, 0x6c, 0x91, 0x53, 0x6c, 0x09, 0xce, 0x12, 0x4b, 0xf5, 0x4c, 0xbd, 0x89, 0x83, 0xab, 0x5f, 0xec, 0xdd, 0xba, 0xc6, 0x58, 0x23, 0x9c, 0xfb, 0x51, 0x5c, 0xd8, 0x17, 0xd3, 0xe8, 0x20, 0x8f, 0x6d, 0x0b, 0x68, 0x76, 0xb2, 0x7c, 0x31, 0x8a, 0xf8, 0xcd, 0x0d, 0xd1, 0xe5, 0x21, 0xc2, }; static const unsigned char xdh_wei448_2414_sharedsecret[] = { 0xc3, 0x9e, 0xcd, 0x28, 0x5b, 0x58, 0x41, 0xef, 0x62, 0x62, 0x0d, 0xb8, 0xfe, 0x8e, 0x76, 0x9b, 0x19, 0x5a, 0x04, 0xe7, 0xd0, 0xe8, 0x28, 0xee, 0x19, 0x09, 0x68, 0xca, 0x96, 0x7d, 0x49, 0x5d, 0x85, 0xfe, 0xf5, 0xd5, 0x20, 0x21, 0xaf, 0x32, 0x15, 0xb3, 0xb9, 0xf4, 0x65, 0x04, 0xc7, 0xeb, 0xdb, 0x14, 0x57, 0xb4, 0xcf, 0xe5, 0xab, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2414 = { .name = "xdh_wei448_2414", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2414_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2414_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2414_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 342 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2415 for XDH, tcId is 343 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2415_peerpubkey[] = { 0xc7, 0xc1, 0x42, 0xb6, 0x8d, 0x6d, 0xfa, 0xde, 0x01, 0x8c, 0xf3, 0xf1, 0xd4, 0x12, 0xb8, 0x29, 0xf2, 0x20, 0x95, 0x11, 0x95, 0x30, 0x02, 0x0c, 0x2f, 0x22, 0x3e, 0x59, 0x9e, 0xc4, 0x2c, 0x42, 0x87, 0x5f, 0xd7, 0xad, 0xd6, 0x65, 0x30, 0xd0, 0xf9, 0x07, 0x2d, 0xb2, 0x66, 0xa3, 0x9f, 0x98, 0x8e, 0x57, 0xd9, 0x9f, 0xf1, 0xc3, 0xc5, 0x90, }; static const unsigned char xdh_wei448_2415_privkey[] = { 0x5c, 0x77, 0x5f, 0xe0, 0x85, 0x8a, 0x81, 0x26, 0xc8, 0xd3, 0xc4, 0x6c, 0x91, 0x75, 0xeb, 0x89, 0x4b, 0x44, 0xb6, 0x09, 0x83, 0xbf, 0x1a, 0xaa, 0xa9, 0x96, 0x41, 0x01, 0x11, 0x7b, 0xd0, 0x16, 0xb2, 0x80, 0x93, 0x9f, 0xe0, 0xc2, 0xfd, 0x12, 0x9b, 0xa3, 0xc1, 0x1f, 0x42, 0xf1, 0xc1, 0x83, 0x00, 0x33, 0xbc, 0x0f, 0xa9, 0x13, 0xd8, 0xd8, }; static const unsigned char xdh_wei448_2415_sharedsecret[] = { 0xd0, 0xd7, 0x97, 0x99, 0x44, 0xc4, 0xde, 0xfa, 0xae, 0x9f, 0x61, 0x72, 0xbb, 0xd1, 0xce, 0x11, 0x5e, 0x71, 0x0f, 0x12, 0x20, 0xb8, 0xc8, 0x86, 0xf6, 0x44, 0x77, 0x18, 0x48, 0x64, 0xd2, 0x04, 0xdf, 0x9d, 0x45, 0x19, 0x2b, 0x23, 0xa9, 0xb3, 0x8d, 0x9f, 0x6f, 0x2e, 0x1b, 0x4f, 0x4c, 0x03, 0xe0, 0xd2, 0xed, 0x0e, 0x44, 0x19, 0x6b, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_2415 = { .name = "xdh_wei448_2415", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2415_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2415_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2415_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 343 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2416 for XDH, tcId is 344 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2416_peerpubkey[] = { 0x25, 0xb1, 0x83, 0x73, 0xed, 0x30, 0xd6, 0x26, 0x30, 0xb9, 0x1a, 0xf8, 0x6a, 0xc2, 0xd4, 0xe7, 0x5a, 0xab, 0x36, 0x6d, 0xa6, 0xd5, 0x72, 0x4d, 0xe3, 0x34, 0xea, 0x40, 0xac, 0x39, 0xe3, 0x25, 0x00, 0xa1, 0xc0, 0x5e, 0x1c, 0x9d, 0x00, 0x48, 0x7d, 0x27, 0x2a, 0x0f, 0x21, 0xaf, 0x81, 0x8b, 0x02, 0xbf, 0x63, 0x48, 0xd7, 0x03, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_2416_privkey[] = { 0xd8, 0x1c, 0xd9, 0x48, 0xda, 0x26, 0x3b, 0xc3, 0xad, 0x80, 0xcd, 0xac, 0x6b, 0x7b, 0x5f, 0xde, 0xd4, 0x13, 0x13, 0xcf, 0x09, 0x21, 0x69, 0x2f, 0x7c, 0xa7, 0xc2, 0xd4, 0x8c, 0x22, 0x5c, 0x60, 0x56, 0x27, 0xbc, 0xc6, 0x1b, 0xc5, 0xa2, 0x80, 0xdb, 0x23, 0x65, 0xef, 0xc1, 0x1c, 0xb2, 0x86, 0xd2, 0x86, 0xbd, 0x8e, 0xbd, 0x36, 0xcf, 0xd4, }; static const unsigned char xdh_wei448_2416_sharedsecret[] = { 0x84, 0xbb, 0xf9, 0x15, 0x3d, 0xb2, 0xb5, 0x2c, 0x78, 0x0a, 0x2f, 0x1b, 0x27, 0x97, 0xb9, 0x89, 0x88, 0xbf, 0x45, 0xe1, 0x17, 0xd7, 0x5e, 0x07, 0x2d, 0x98, 0xd1, 0xb0, 0xa4, 0xf9, 0xc4, 0x68, 0x63, 0xda, 0xca, 0x2f, 0x98, 0x02, 0x43, 0x95, 0x59, 0x5a, 0x99, 0x60, 0x4e, 0xc9, 0x6d, 0xfe, 0x38, 0x45, 0x25, 0x4d, 0xcc, 0x4f, 0x4b, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_2416 = { .name = "xdh_wei448_2416", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2416_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2416_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2416_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 344 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2417 for XDH, tcId is 345 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2417_peerpubkey[] = { 0xc2, 0xbc, 0x7a, 0xa4, 0xb3, 0xb3, 0xce, 0x53, 0x15, 0x35, 0x1a, 0x89, 0xf8, 0xc0, 0x43, 0x26, 0x60, 0x69, 0xeb, 0x19, 0x8e, 0x72, 0x4e, 0xc5, 0xa0, 0x3d, 0xdd, 0x10, 0xaa, 0x5e, 0x20, 0x6f, 0x39, 0xa4, 0x06, 0x0d, 0x5e, 0x1b, 0x7b, 0xdb, 0x1a, 0xe0, 0x42, 0xf7, 0x4d, 0xf4, 0x37, 0x66, 0x45, 0x02, 0xe2, 0x8e, 0x72, 0x48, 0x33, 0xb7, }; static const unsigned char xdh_wei448_2417_privkey[] = { 0x60, 0x5b, 0x9a, 0x97, 0x97, 0xda, 0xd5, 0x39, 0x0f, 0x24, 0x0c, 0xbc, 0x43, 0xdb, 0x3e, 0xb8, 0xe0, 0x3d, 0x93, 0xe0, 0x91, 0x0c, 0xe6, 0x1a, 0x39, 0xd9, 0x84, 0x7e, 0x47, 0xa6, 0x5c, 0x82, 0x0e, 0x04, 0x7b, 0xc0, 0x48, 0x44, 0x8a, 0x7e, 0xbc, 0x70, 0x4b, 0xdd, 0x21, 0x57, 0x55, 0x50, 0xcb, 0x0f, 0xa6, 0x95, 0x80, 0x90, 0x27, 0xdf, }; static const unsigned char xdh_wei448_2417_sharedsecret[] = { 0x09, 0x52, 0xc6, 0x07, 0x03, 0x9f, 0xc7, 0xbc, 0x65, 0x23, 0xf6, 0x68, 0x26, 0x3d, 0xd7, 0xbf, 0xc4, 0xc7, 0x3c, 0x39, 0x31, 0x91, 0x62, 0x2c, 0x6e, 0x07, 0xf6, 0x88, 0x59, 0x4a, 0xd3, 0xd6, 0x22, 0xc9, 0x9f, 0x0f, 0xe8, 0xdb, 0x4f, 0x8c, 0x57, 0xfc, 0x91, 0xac, 0x6f, 0x87, 0xfe, 0x81, 0x00, 0x32, 0xb3, 0x74, 0x4d, 0xaf, 0xf3, 0x54, }; static const wycheproof_xdh_test xdh_wei448_2417 = { .name = "xdh_wei448_2417", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2417_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2417_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2417_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 345 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2418 for XDH, tcId is 346 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2418_peerpubkey[] = { 0xbd, 0x38, 0xf4, 0xa0, 0xa8, 0x28, 0x6a, 0xaa, 0xd5, 0xe7, 0x14, 0x73, 0xde, 0x5e, 0xb8, 0x06, 0x9f, 0x2e, 0xe0, 0x09, 0xc0, 0xc2, 0x42, 0xf1, 0x6f, 0x64, 0xe1, 0x9b, 0x5b, 0x4b, 0x89, 0x3a, 0x2b, 0x65, 0x98, 0x66, 0x1d, 0x05, 0xd8, 0xe0, 0x9e, 0x6c, 0xcb, 0x1c, 0x6a, 0x3a, 0x42, 0xed, 0xd2, 0x21, 0xd6, 0xae, 0x48, 0xaa, 0xc7, 0xbb, }; static const unsigned char xdh_wei448_2418_privkey[] = { 0x54, 0x61, 0x3c, 0x11, 0x58, 0x96, 0x49, 0x9e, 0xdc, 0xa8, 0xf9, 0xe7, 0x8d, 0xd6, 0x41, 0x14, 0x1e, 0x7e, 0xa4, 0x60, 0x96, 0x72, 0xd6, 0x6f, 0x43, 0x63, 0xdd, 0x49, 0x13, 0xbc, 0x6c, 0x84, 0x4f, 0x2d, 0x2c, 0xdf, 0x8b, 0xe8, 0xfd, 0xed, 0xf4, 0x58, 0xef, 0x5c, 0x4d, 0xc2, 0x80, 0x80, 0xee, 0xb3, 0xa5, 0xff, 0x52, 0x71, 0x84, 0xd2, }; static const unsigned char xdh_wei448_2418_sharedsecret[] = { 0x1d, 0xa0, 0x29, 0x3b, 0xdc, 0x16, 0xeb, 0xcc, 0x75, 0x69, 0x0e, 0x07, 0xbc, 0x71, 0x17, 0xa8, 0x00, 0x4e, 0xd4, 0xde, 0x12, 0x24, 0x33, 0x26, 0x81, 0x67, 0x5c, 0x4a, 0x1b, 0x90, 0x1e, 0x55, 0x6e, 0x14, 0xf2, 0xfd, 0xd9, 0xfe, 0x97, 0xe1, 0xfe, 0x66, 0x58, 0x39, 0x1b, 0x8f, 0x76, 0x28, 0xbb, 0x72, 0xce, 0x89, 0x3b, 0xce, 0x74, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2418 = { .name = "xdh_wei448_2418", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2418_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2418_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2418_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 346 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2419 for XDH, tcId is 347 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2419_peerpubkey[] = { 0x91, 0xa2, 0x00, 0x3c, 0x42, 0xb6, 0x96, 0x62, 0x0c, 0xc1, 0x51, 0x49, 0xe4, 0x1c, 0xca, 0x55, 0xc9, 0x38, 0xa0, 0x8f, 0x01, 0xa8, 0x89, 0xec, 0xb5, 0xf7, 0xd8, 0xbf, 0xdb, 0xc2, 0x4e, 0x11, 0x07, 0x7c, 0xa9, 0x13, 0x55, 0x78, 0x4f, 0x61, 0xf6, 0x53, 0x47, 0x1a, 0x29, 0xd0, 0xe4, 0x22, 0x33, 0xd4, 0x23, 0x0c, 0x7a, 0xf7, 0x23, 0xc0, }; static const unsigned char xdh_wei448_2419_privkey[] = { 0x24, 0x76, 0x40, 0x94, 0xde, 0xa4, 0x3e, 0x4c, 0x16, 0x7c, 0xdd, 0x8d, 0x22, 0xa4, 0x63, 0x40, 0x4b, 0xbc, 0xbe, 0x84, 0x94, 0x6c, 0x09, 0x6f, 0xa2, 0x87, 0xa4, 0x5b, 0x72, 0xd0, 0x21, 0x92, 0xe6, 0x4a, 0x48, 0x2c, 0x0c, 0x81, 0xaf, 0x60, 0x6e, 0xbf, 0xab, 0x93, 0x83, 0x7d, 0x79, 0xbd, 0xba, 0xe0, 0x59, 0x2e, 0xff, 0x04, 0xdb, 0xd6, }; static const unsigned char xdh_wei448_2419_sharedsecret[] = { 0x7f, 0x06, 0x14, 0x3a, 0x73, 0x85, 0xae, 0xc3, 0xe3, 0x4c, 0xf6, 0xe9, 0x3c, 0x8e, 0x56, 0x81, 0x2e, 0xb7, 0xb5, 0x33, 0xa1, 0x3f, 0x3f, 0xdf, 0xc6, 0x52, 0x82, 0xab, 0x7e, 0xa3, 0x66, 0x89, 0x27, 0x17, 0x67, 0x74, 0xf7, 0x1c, 0x53, 0x34, 0x7d, 0x83, 0xeb, 0x87, 0x2c, 0xcb, 0xfd, 0xef, 0x3b, 0xbd, 0x53, 0xc0, 0xd0, 0xe7, 0xa2, 0x52, }; static const wycheproof_xdh_test xdh_wei448_2419 = { .name = "xdh_wei448_2419", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2419_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2419_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2419_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 347 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2420 for XDH, tcId is 348 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2420_peerpubkey[] = { 0xcb, 0x65, 0xba, 0xe2, 0x10, 0x1d, 0x1c, 0x64, 0xec, 0xdb, 0x33, 0x8a, 0xa9, 0xa9, 0x56, 0xfe, 0xb8, 0x77, 0x36, 0xb2, 0x82, 0xd0, 0x68, 0x1e, 0x63, 0x4f, 0xab, 0x7b, 0x64, 0x6f, 0x0e, 0x2d, 0xf8, 0x14, 0xec, 0x87, 0xd4, 0x25, 0xd7, 0x75, 0x11, 0xfa, 0x6a, 0xc0, 0x53, 0x23, 0x3a, 0x68, 0xfe, 0x26, 0x0e, 0x3b, 0x32, 0x3c, 0xf5, 0xc1, }; static const unsigned char xdh_wei448_2420_privkey[] = { 0x2c, 0xb5, 0xab, 0xe1, 0x12, 0x50, 0xb3, 0x26, 0x6e, 0xa5, 0x93, 0x9f, 0x24, 0xe1, 0xe6, 0xdc, 0xaa, 0x00, 0x59, 0xed, 0x53, 0xda, 0x62, 0xdb, 0xe0, 0x5e, 0x50, 0x6a, 0x51, 0x32, 0x91, 0xf9, 0x1f, 0xd5, 0xee, 0x83, 0x87, 0x66, 0x01, 0x1c, 0x97, 0xf6, 0x2f, 0x4f, 0xb7, 0xcb, 0x54, 0x75, 0xd5, 0x7b, 0x39, 0xcd, 0x5b, 0xe7, 0xd7, 0xdf, }; static const unsigned char xdh_wei448_2420_sharedsecret[] = { 0x4b, 0x7d, 0xf7, 0x24, 0x24, 0x02, 0x89, 0x0d, 0x13, 0xa2, 0x3a, 0x17, 0x58, 0x39, 0x1b, 0xdf, 0x6c, 0x5c, 0xea, 0xb3, 0xad, 0xc7, 0x69, 0xcb, 0xfc, 0xea, 0x5d, 0xf6, 0x6b, 0xb7, 0x6a, 0x8b, 0xbe, 0xfe, 0x76, 0xb0, 0x6e, 0x51, 0x47, 0x48, 0x70, 0x01, 0xa5, 0x66, 0x54, 0x93, 0x35, 0xb3, 0xea, 0x55, 0x67, 0xad, 0x90, 0x4a, 0x46, 0x3f, }; static const wycheproof_xdh_test xdh_wei448_2420 = { .name = "xdh_wei448_2420", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2420_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2420_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2420_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 348 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2421 for XDH, tcId is 349 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2421_peerpubkey[] = { 0x8f, 0xdf, 0xe2, 0x0f, 0xe3, 0xeb, 0x12, 0x9d, 0xb8, 0x43, 0xa6, 0xf3, 0x1c, 0x22, 0x05, 0x93, 0x48, 0x45, 0xd4, 0xc3, 0xac, 0xcd, 0xfa, 0x9c, 0xbc, 0x0e, 0x25, 0x08, 0xaf, 0x9c, 0x5d, 0x98, 0x9c, 0xd4, 0xba, 0xd5, 0xd3, 0xe1, 0xe0, 0x4b, 0x65, 0xcb, 0xb5, 0x8e, 0x3c, 0xfa, 0x76, 0x6f, 0xb1, 0xa6, 0x1e, 0xc8, 0x1b, 0x53, 0xbc, 0x33, }; static const unsigned char xdh_wei448_2421_privkey[] = { 0x9c, 0x1a, 0xbe, 0xd8, 0xef, 0xb6, 0x02, 0xeb, 0xa9, 0xb7, 0x40, 0xe4, 0xa4, 0xe0, 0x01, 0x7d, 0x15, 0x8f, 0xfe, 0x89, 0x98, 0x7c, 0x64, 0x2d, 0x49, 0x03, 0x70, 0xb5, 0x22, 0x95, 0x9c, 0x1c, 0x96, 0x16, 0x87, 0x97, 0x35, 0x6f, 0xbb, 0x93, 0x50, 0x84, 0x92, 0x8b, 0xe5, 0x3a, 0xd5, 0x35, 0x7f, 0x6e, 0x5b, 0x78, 0x3b, 0xd9, 0xdc, 0xc6, }; static const unsigned char xdh_wei448_2421_sharedsecret[] = { 0x9a, 0x69, 0x04, 0x6c, 0x39, 0xa6, 0x18, 0x92, 0xa6, 0xb2, 0x4f, 0xac, 0xfd, 0xb0, 0x0e, 0x65, 0x9f, 0x6d, 0xb7, 0x9c, 0x06, 0x62, 0xa0, 0xbc, 0xba, 0x9c, 0x73, 0x4e, 0x7f, 0x75, 0x16, 0x0c, 0x54, 0xbc, 0x17, 0xa9, 0xc6, 0x4d, 0xa2, 0xc0, 0x3f, 0x9f, 0xe0, 0xba, 0x33, 0x4e, 0xb7, 0x5e, 0x16, 0x8b, 0xc2, 0x98, 0x06, 0xfc, 0xec, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2421 = { .name = "xdh_wei448_2421", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2421_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2421_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2421_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 349 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2422 for XDH, tcId is 350 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2422_peerpubkey[] = { 0x2f, 0x8e, 0x43, 0x95, 0x99, 0x78, 0x64, 0x54, 0x31, 0xe3, 0xc0, 0x85, 0x5c, 0xeb, 0xba, 0x34, 0xcb, 0x5e, 0xd2, 0x3c, 0x5d, 0xe8, 0x72, 0xb4, 0xb2, 0x45, 0x10, 0xad, 0x3c, 0x65, 0xa3, 0x26, 0xef, 0xfd, 0xdf, 0xbc, 0x68, 0x5c, 0xb6, 0x1e, 0x60, 0xc1, 0xa3, 0xd5, 0x9d, 0x60, 0xa3, 0xb1, 0x17, 0x5e, 0x68, 0x22, 0x80, 0x8e, 0x9f, 0x64, }; static const unsigned char xdh_wei448_2422_privkey[] = { 0x7c, 0x1d, 0x55, 0x71, 0xe6, 0x3c, 0xae, 0xa8, 0x31, 0xeb, 0x48, 0x27, 0xc4, 0xfc, 0x7a, 0x05, 0xa5, 0x76, 0xec, 0xb6, 0x62, 0xb0, 0x90, 0x50, 0xe7, 0x19, 0xe4, 0xfd, 0x7d, 0x1b, 0xd5, 0xaf, 0x78, 0x21, 0xa7, 0x22, 0x4d, 0x39, 0x05, 0x37, 0xa4, 0xf3, 0x23, 0x0c, 0x96, 0xf1, 0x68, 0x1b, 0x3c, 0xd5, 0x01, 0x96, 0xe9, 0xa3, 0x10, 0xdd, }; static const unsigned char xdh_wei448_2422_sharedsecret[] = { 0xfb, 0x28, 0x86, 0x3a, 0x88, 0x1b, 0x90, 0x89, 0x70, 0x32, 0x29, 0xac, 0xc8, 0x0e, 0x3f, 0x1e, 0x65, 0x00, 0xd6, 0x53, 0x10, 0xad, 0x80, 0x17, 0x90, 0xbc, 0x90, 0x7f, 0xf3, 0xa9, 0xbb, 0x33, 0xd0, 0x08, 0x96, 0x81, 0x22, 0xfb, 0x9e, 0x5b, 0xbe, 0x2a, 0x0a, 0xe5, 0x57, 0xee, 0x99, 0x5b, 0xa8, 0x23, 0x2c, 0x36, 0xf7, 0xe0, 0x47, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2422 = { .name = "xdh_wei448_2422", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2422_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2422_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2422_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 350 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2423 for XDH, tcId is 351 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2423_peerpubkey[] = { 0xd9, 0x7d, 0xd1, 0x83, 0xea, 0xe8, 0x1d, 0xd3, 0x4d, 0xa6, 0xd8, 0xb6, 0x6c, 0x91, 0x80, 0xa6, 0x0b, 0x2e, 0x26, 0x11, 0x2d, 0xaf, 0xdf, 0xe5, 0x6a, 0x80, 0x22, 0xc8, 0x72, 0xef, 0xe6, 0xd1, 0xc5, 0xd1, 0xb3, 0x57, 0x2c, 0x82, 0x4c, 0x69, 0xbb, 0x66, 0xd1, 0xd9, 0x1c, 0xca, 0x5e, 0x69, 0xf9, 0xdf, 0x20, 0xb4, 0xaf, 0x32, 0x6c, 0x7c, }; static const unsigned char xdh_wei448_2423_privkey[] = { 0xb0, 0xce, 0x11, 0x67, 0xca, 0x6d, 0x3d, 0xe6, 0xa5, 0x13, 0x8e, 0x60, 0x57, 0xb0, 0x8a, 0xf1, 0x01, 0x35, 0xc7, 0xe4, 0x12, 0xf4, 0x48, 0x8a, 0xb1, 0x02, 0x3b, 0xef, 0xc9, 0xf6, 0x7f, 0x12, 0x36, 0x5c, 0x30, 0x2f, 0xfe, 0x80, 0x4d, 0x5a, 0x25, 0xd0, 0x34, 0x65, 0xe0, 0x27, 0x28, 0xca, 0x06, 0xab, 0xad, 0x3e, 0x78, 0x5f, 0x69, 0xcf, }; static const unsigned char xdh_wei448_2423_sharedsecret[] = { 0xfc, 0x9f, 0xe0, 0x0b, 0x58, 0xda, 0xfa, 0x32, 0x1a, 0xe0, 0x55, 0x82, 0xde, 0x2e, 0xe2, 0x80, 0xd7, 0x11, 0xf2, 0x92, 0x9f, 0x39, 0x31, 0x9f, 0x0f, 0xda, 0x49, 0xd9, 0x97, 0x3d, 0xea, 0x0a, 0x58, 0x03, 0xe5, 0xe0, 0x37, 0x39, 0xb0, 0xd6, 0xe5, 0xe6, 0xcf, 0x4e, 0x46, 0xb1, 0xd9, 0x92, 0x1e, 0x76, 0x37, 0x6d, 0xf0, 0x08, 0x4d, 0xd2, }; static const wycheproof_xdh_test xdh_wei448_2423 = { .name = "xdh_wei448_2423", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2423_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2423_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2423_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 351 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2424 for XDH, tcId is 352 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2424_peerpubkey[] = { 0x7c, 0x35, 0x31, 0x0f, 0xc6, 0x99, 0xa6, 0x56, 0x8a, 0xa5, 0x84, 0xf6, 0xf0, 0xc8, 0x9a, 0xbc, 0x89, 0x43, 0xe6, 0x8e, 0x87, 0x32, 0x3f, 0x62, 0xcd, 0x98, 0xc6, 0xc6, 0xbb, 0x17, 0x33, 0x4b, 0x75, 0xcf, 0x57, 0x81, 0x5f, 0x24, 0xc9, 0x6d, 0x4e, 0xa2, 0x2d, 0x99, 0xdd, 0xbf, 0x61, 0xe0, 0xaa, 0x4b, 0xed, 0x81, 0xc4, 0x13, 0xf6, 0x9e, }; static const unsigned char xdh_wei448_2424_privkey[] = { 0xe4, 0x89, 0x83, 0x95, 0x9f, 0x3b, 0xb8, 0x85, 0xfd, 0x7a, 0x26, 0xe2, 0x10, 0x57, 0x7b, 0xb0, 0x7e, 0xa9, 0xda, 0x7a, 0xf2, 0x95, 0xee, 0x83, 0xaf, 0xfa, 0x64, 0xe0, 0x23, 0x28, 0x47, 0x5b, 0x3f, 0xc9, 0x9d, 0x94, 0xc5, 0x66, 0xb7, 0xcb, 0xc5, 0x82, 0xd8, 0xd9, 0xca, 0x3c, 0xa4, 0x1f, 0xf0, 0xd2, 0xde, 0xc9, 0x14, 0x4e, 0xab, 0xde, }; static const unsigned char xdh_wei448_2424_sharedsecret[] = { 0x21, 0x1a, 0xbd, 0x6c, 0xad, 0x5a, 0x8c, 0x4c, 0xc2, 0x7b, 0xee, 0x02, 0x7c, 0x00, 0x24, 0x74, 0x8f, 0xd1, 0x1d, 0x78, 0x6f, 0x01, 0x67, 0x67, 0xda, 0x72, 0x69, 0x44, 0x95, 0x71, 0xb9, 0x84, 0xd6, 0x1c, 0x50, 0x40, 0x25, 0x1d, 0x1e, 0xd6, 0xe0, 0xed, 0xea, 0x5c, 0x69, 0xaf, 0xf2, 0x35, 0x00, 0x03, 0x7f, 0x65, 0xb2, 0xca, 0x48, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2424 = { .name = "xdh_wei448_2424", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2424_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2424_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2424_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 352 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2425 for XDH, tcId is 353 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2425_peerpubkey[] = { 0xa5, 0xd3, 0xd1, 0x92, 0x60, 0x73, 0x62, 0x9d, 0xab, 0x3a, 0x52, 0xa1, 0x89, 0xc3, 0x56, 0xc1, 0xcb, 0x2f, 0x44, 0x38, 0x92, 0xe0, 0x64, 0xad, 0x42, 0xc9, 0xe6, 0x8a, 0x3b, 0xcf, 0x74, 0x23, 0x3c, 0xb8, 0x93, 0xf3, 0x1d, 0xb0, 0x4b, 0xa7, 0x10, 0x99, 0x83, 0x63, 0x10, 0x71, 0xf4, 0x0b, 0xdc, 0x15, 0xfe, 0x8f, 0x77, 0xf8, 0x96, 0xc7, }; static const unsigned char xdh_wei448_2425_privkey[] = { 0x28, 0xa4, 0xdf, 0x2a, 0x71, 0x9b, 0x8c, 0xe1, 0x67, 0x1a, 0xb0, 0x7e, 0x9f, 0xcf, 0xd6, 0xcf, 0x2c, 0xf5, 0xca, 0x31, 0x44, 0xdb, 0x0b, 0x19, 0xf3, 0xd8, 0xde, 0x9b, 0x0a, 0x04, 0xe4, 0x31, 0x3f, 0x11, 0x5b, 0x08, 0xaf, 0x09, 0x40, 0x1b, 0x65, 0xac, 0x7d, 0x97, 0x29, 0x4e, 0x69, 0xc5, 0xf7, 0x71, 0xe0, 0x02, 0x66, 0x6b, 0xf7, 0xcf, }; static const unsigned char xdh_wei448_2425_sharedsecret[] = { 0x3f, 0x5b, 0x5c, 0x9d, 0x10, 0x78, 0x08, 0x52, 0x47, 0xcf, 0x12, 0x43, 0x1e, 0xbe, 0x54, 0xb8, 0xaa, 0xbc, 0x6d, 0xfe, 0xd5, 0x72, 0xc8, 0xf6, 0x60, 0xf2, 0x45, 0xe4, 0x5d, 0xeb, 0x65, 0x41, 0x12, 0xd7, 0x69, 0xbc, 0x81, 0xf6, 0x9d, 0x6f, 0xf9, 0xa1, 0x9e, 0x87, 0x9b, 0x41, 0xff, 0x09, 0xd6, 0x88, 0x5b, 0x3d, 0x08, 0x15, 0x50, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_2425 = { .name = "xdh_wei448_2425", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2425_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2425_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2425_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 353 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2426 for XDH, tcId is 354 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2426_peerpubkey[] = { 0x86, 0x79, 0x7e, 0x52, 0x05, 0x9c, 0xe5, 0x3d, 0x0e, 0x81, 0x4b, 0xed, 0xdd, 0x2b, 0xa9, 0xcf, 0x87, 0xa4, 0x7e, 0xb7, 0x36, 0x37, 0x0f, 0x0a, 0xc4, 0x82, 0xcc, 0x29, 0x1d, 0x14, 0x26, 0x49, 0x6e, 0x9a, 0xfc, 0x74, 0x66, 0xc6, 0x54, 0x55, 0x8f, 0xe6, 0x8d, 0x6b, 0x9d, 0xe8, 0xb0, 0x4f, 0x87, 0x5d, 0x4c, 0x0d, 0x9d, 0x22, 0x31, 0xf5, }; static const unsigned char xdh_wei448_2426_privkey[] = { 0xe8, 0xba, 0xd8, 0xe1, 0x9e, 0x83, 0x08, 0x4e, 0x35, 0xfc, 0xc6, 0x9f, 0x29, 0xe7, 0xc7, 0xf4, 0x4c, 0x35, 0x4b, 0x1c, 0x29, 0x92, 0x5c, 0xff, 0xf6, 0x32, 0xf9, 0xcc, 0xaf, 0x7f, 0xf4, 0x9c, 0x91, 0x99, 0xf8, 0x60, 0x80, 0xd6, 0xb8, 0xb3, 0xe3, 0xca, 0x24, 0x13, 0x0f, 0x0d, 0x06, 0xeb, 0x54, 0x10, 0x4f, 0x3c, 0x1a, 0x18, 0x3b, 0xd7, }; static const unsigned char xdh_wei448_2426_sharedsecret[] = { 0x00, 0x3b, 0xab, 0x0e, 0x3c, 0x73, 0x9f, 0x94, 0x2e, 0x62, 0x33, 0xa8, 0xb2, 0xa8, 0xb0, 0xf2, 0x28, 0x9f, 0x1b, 0xb3, 0x7a, 0xad, 0x96, 0x61, 0x94, 0x6c, 0x17, 0x6e, 0x8a, 0xe1, 0x24, 0x71, 0xfc, 0xb4, 0x60, 0xe4, 0x92, 0x1b, 0xdc, 0x3e, 0x5d, 0x9f, 0xbc, 0x89, 0xf6, 0x95, 0x96, 0xf0, 0xa4, 0xd4, 0xdb, 0x1d, 0x17, 0xbf, 0xe1, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2426 = { .name = "xdh_wei448_2426", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2426_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2426_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2426_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 354 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2427 for XDH, tcId is 355 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2427_peerpubkey[] = { 0x1f, 0x24, 0xe0, 0xd9, 0xe5, 0xfb, 0x41, 0xbb, 0x67, 0x25, 0xe8, 0xea, 0x03, 0xd2, 0xee, 0x90, 0xc2, 0x46, 0x59, 0x87, 0x1b, 0x79, 0x59, 0xd1, 0xbf, 0x86, 0x54, 0x54, 0xda, 0xd4, 0xad, 0x5d, 0x8a, 0xcc, 0x26, 0x8f, 0xe2, 0xa6, 0x08, 0x92, 0x53, 0xeb, 0xff, 0x4a, 0xe7, 0xed, 0xfd, 0x91, 0x24, 0xfa, 0x7c, 0xb2, 0xb4, 0xf2, 0xe6, 0xff, }; static const unsigned char xdh_wei448_2427_privkey[] = { 0x04, 0x23, 0x02, 0xe5, 0xdd, 0x31, 0xc8, 0x1d, 0xc9, 0x1e, 0x16, 0xfc, 0x56, 0x48, 0x32, 0x48, 0xb6, 0x46, 0x2c, 0x5f, 0x0b, 0x80, 0x8f, 0x17, 0x8e, 0xac, 0xa1, 0xf4, 0x0d, 0x3c, 0x1f, 0xfc, 0x85, 0x8a, 0xef, 0x5c, 0xab, 0x1d, 0x0b, 0xd6, 0xe6, 0xf1, 0xee, 0xe4, 0x39, 0x44, 0x63, 0xc9, 0xaa, 0xff, 0x80, 0x6f, 0x7a, 0xdf, 0xed, 0xc1, }; static const unsigned char xdh_wei448_2427_sharedsecret[] = { 0xc9, 0x7f, 0xea, 0x9a, 0x53, 0x85, 0xb6, 0xfd, 0x1a, 0x3d, 0xa4, 0xf8, 0x97, 0x28, 0xf6, 0x6c, 0x16, 0x4a, 0xfd, 0xff, 0x17, 0x92, 0x55, 0x99, 0x15, 0x9d, 0x6d, 0x88, 0x44, 0x22, 0x22, 0x4f, 0x2f, 0xd8, 0xb7, 0xc5, 0x06, 0x3e, 0x1f, 0x2b, 0x7f, 0x49, 0x9a, 0x8a, 0x29, 0x10, 0xc8, 0x4e, 0x8e, 0xaf, 0x8a, 0xac, 0xaf, 0xe7, 0xea, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2427 = { .name = "xdh_wei448_2427", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2427_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2427_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2427_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 355 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2428 for XDH, tcId is 356 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2428_peerpubkey[] = { 0xcb, 0x2e, 0x8e, 0xab, 0x9c, 0x36, 0x8b, 0xec, 0x18, 0x2f, 0x88, 0x6d, 0x42, 0x7a, 0xd4, 0xff, 0x4f, 0x3d, 0x31, 0xb5, 0x2c, 0x49, 0x40, 0x39, 0x03, 0x6d, 0xf8, 0x25, 0x00, 0xfe, 0x71, 0xfd, 0xc8, 0x93, 0x46, 0x16, 0x79, 0xc0, 0x7b, 0xdd, 0x91, 0x8b, 0x17, 0x59, 0x66, 0xfa, 0x7c, 0xf9, 0x47, 0xc3, 0xfb, 0x54, 0x35, 0xfb, 0xd5, 0x3e, }; static const unsigned char xdh_wei448_2428_privkey[] = { 0xd4, 0x76, 0x2e, 0x92, 0xed, 0xf6, 0xa3, 0x63, 0xea, 0x9a, 0x49, 0x68, 0xbf, 0x0f, 0x11, 0x9d, 0xa8, 0x8f, 0x43, 0x49, 0x91, 0xe1, 0xc9, 0x6b, 0xe4, 0x96, 0x7e, 0xb9, 0xfe, 0x67, 0x6a, 0x3e, 0x98, 0x1d, 0x35, 0x38, 0xb4, 0x29, 0x69, 0x83, 0x9c, 0xde, 0x50, 0x97, 0xd9, 0x96, 0x4d, 0x19, 0x54, 0xde, 0xe4, 0xc9, 0x5c, 0xcd, 0x95, 0xcd, }; static const unsigned char xdh_wei448_2428_sharedsecret[] = { 0xc0, 0x74, 0x45, 0x2f, 0xf1, 0x0e, 0x18, 0x8b, 0xe0, 0x3b, 0xe2, 0xf6, 0x16, 0x4b, 0xc2, 0x97, 0xa8, 0xe3, 0xde, 0x6d, 0x22, 0xff, 0x4b, 0xa7, 0xbd, 0xfc, 0x90, 0xbd, 0xdb, 0x8a, 0x07, 0x4b, 0xa1, 0x3b, 0x20, 0x53, 0x3c, 0x8d, 0x37, 0xfb, 0x0a, 0x3f, 0x9d, 0x24, 0xa0, 0x76, 0x79, 0xf0, 0x1c, 0x10, 0x75, 0x46, 0xea, 0x92, 0xff, 0x87, }; static const wycheproof_xdh_test xdh_wei448_2428 = { .name = "xdh_wei448_2428", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2428_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2428_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2428_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 356 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2429 for XDH, tcId is 357 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2429_peerpubkey[] = { 0xa3, 0x5d, 0x62, 0x3f, 0x4e, 0xb1, 0x90, 0xd2, 0xf5, 0x18, 0x24, 0xdc, 0x97, 0xf3, 0x59, 0xd9, 0x93, 0x43, 0x40, 0x55, 0xfe, 0x18, 0xa0, 0xaa, 0x1a, 0xb0, 0x07, 0xc6, 0x00, 0x73, 0x59, 0xe1, 0x4b, 0xeb, 0xc8, 0xf6, 0xed, 0x82, 0x1f, 0xea, 0x47, 0x03, 0x53, 0x59, 0xc9, 0x7f, 0xda, 0x79, 0x3a, 0x3d, 0xc6, 0xc9, 0x97, 0x6d, 0xbe, 0x44, }; static const unsigned char xdh_wei448_2429_privkey[] = { 0x34, 0x3d, 0x69, 0xf9, 0xb1, 0x3e, 0x35, 0x7d, 0x71, 0x3b, 0x5c, 0xc8, 0x27, 0x17, 0xa5, 0xa5, 0x7a, 0xd2, 0x52, 0x9b, 0xdd, 0x81, 0xf6, 0x1e, 0xe6, 0x61, 0xcf, 0x27, 0x2e, 0xb2, 0x44, 0x89, 0xe6, 0xe6, 0x2e, 0x78, 0x2c, 0x40, 0xa9, 0x89, 0x1d, 0xe4, 0xd2, 0xa3, 0x93, 0x20, 0xc8, 0x1c, 0xfe, 0x07, 0xdf, 0xf6, 0x55, 0x85, 0xcc, 0xcd, }; static const unsigned char xdh_wei448_2429_sharedsecret[] = { 0x20, 0x32, 0x06, 0xa8, 0x7b, 0x93, 0xc0, 0x6d, 0x59, 0x31, 0xbd, 0xe7, 0x95, 0xa8, 0x0c, 0x9c, 0xa8, 0x7d, 0x25, 0xe4, 0x27, 0x44, 0x24, 0x3f, 0x39, 0x6c, 0xa2, 0x7c, 0x9e, 0x9a, 0x42, 0xce, 0xe7, 0xa7, 0xde, 0xda, 0x39, 0xe8, 0xe0, 0x66, 0x6b, 0xad, 0x66, 0xad, 0xca, 0x8f, 0x80, 0x56, 0x95, 0xa0, 0xff, 0x30, 0x38, 0x71, 0x9f, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2429 = { .name = "xdh_wei448_2429", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2429_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2429_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2429_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 357 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2430 for XDH, tcId is 358 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2430_peerpubkey[] = { 0x3a, 0x1d, 0x28, 0x5d, 0x1a, 0x56, 0xa7, 0xce, 0x8f, 0x29, 0x79, 0x01, 0x78, 0xce, 0x16, 0xd4, 0xd0, 0x93, 0x49, 0xcd, 0x28, 0xe1, 0x0b, 0xd3, 0x45, 0x63, 0x4b, 0x9d, 0x07, 0x15, 0xec, 0x49, 0xf5, 0x1b, 0x00, 0x61, 0xfe, 0x51, 0x48, 0x43, 0x9f, 0x7a, 0x7b, 0x6c, 0x5b, 0x6c, 0x1d, 0x95, 0xde, 0x68, 0x38, 0xeb, 0xdf, 0xc0, 0xc3, 0x46, }; static const unsigned char xdh_wei448_2430_privkey[] = { 0x6c, 0x23, 0xd8, 0xf0, 0xe7, 0x47, 0x51, 0x69, 0xe0, 0xc7, 0xe3, 0xdf, 0xce, 0x80, 0xd1, 0xca, 0xe0, 0x48, 0x9c, 0xae, 0xf1, 0xfd, 0x1a, 0x4f, 0xf9, 0x00, 0xa1, 0x08, 0xea, 0x15, 0x41, 0xf9, 0xee, 0x72, 0x32, 0xdb, 0xe3, 0x60, 0x5a, 0x68, 0x3c, 0x78, 0x3a, 0x6a, 0xab, 0xbe, 0x8e, 0xda, 0xf9, 0x33, 0x03, 0x8f, 0xb2, 0xf1, 0x4a, 0xdf, }; static const unsigned char xdh_wei448_2430_sharedsecret[] = { 0x1e, 0xff, 0x19, 0x50, 0xbb, 0xcc, 0x94, 0x32, 0x2f, 0x02, 0xdd, 0x46, 0x39, 0x06, 0xc0, 0x9a, 0xe6, 0xd3, 0xd7, 0x51, 0x7c, 0x82, 0x58, 0xf0, 0xc6, 0x4b, 0x10, 0xc2, 0xa0, 0x25, 0xa1, 0x7d, 0x83, 0x05, 0xe5, 0x1f, 0x8e, 0x38, 0x64, 0x75, 0xd9, 0x4b, 0x17, 0x48, 0x46, 0x51, 0xf3, 0xa5, 0x2c, 0xa7, 0xef, 0x3f, 0x44, 0x0b, 0xbb, 0xfb, }; static const wycheproof_xdh_test xdh_wei448_2430 = { .name = "xdh_wei448_2430", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2430_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2430_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2430_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 358 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2431 for XDH, tcId is 359 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2431_peerpubkey[] = { 0x8e, 0x7d, 0x1a, 0x85, 0xdd, 0x55, 0xe5, 0xc2, 0x1a, 0x18, 0xa6, 0x6d, 0xd1, 0x48, 0xcc, 0xbf, 0xad, 0x15, 0x1a, 0xd0, 0x94, 0xfa, 0x15, 0xa7, 0x6b, 0x00, 0x17, 0x2f, 0x30, 0xc7, 0xe2, 0x13, 0xae, 0x7f, 0xc6, 0xc1, 0x95, 0xde, 0x55, 0x8d, 0x0d, 0x1d, 0x8d, 0x61, 0xd0, 0xe1, 0xe8, 0xb8, 0x37, 0xd1, 0xdb, 0xa5, 0xc4, 0x4d, 0x90, 0x55, }; static const unsigned char xdh_wei448_2431_privkey[] = { 0x38, 0xc6, 0x76, 0xf2, 0xda, 0xd6, 0xc4, 0x3d, 0x19, 0x27, 0xe9, 0x62, 0x9e, 0xb6, 0xef, 0x80, 0x6f, 0x47, 0xf5, 0xbd, 0x8a, 0x4d, 0xdf, 0xd6, 0x16, 0x2e, 0x93, 0xc7, 0xc1, 0x80, 0xf3, 0x85, 0x72, 0x6d, 0xd4, 0xfe, 0x00, 0x9f, 0xd3, 0x80, 0xad, 0x6f, 0xed, 0x29, 0xe2, 0x09, 0x59, 0xba, 0xdf, 0x06, 0x04, 0x59, 0xf2, 0x8a, 0xe8, 0xcd, }; static const unsigned char xdh_wei448_2431_sharedsecret[] = { 0x0d, 0xac, 0xa1, 0xf8, 0x24, 0xd7, 0xb3, 0xd9, 0x60, 0x8d, 0x90, 0x57, 0x94, 0x80, 0xda, 0xf8, 0x09, 0xf9, 0x93, 0xce, 0x56, 0x49, 0x97, 0x73, 0x30, 0xc5, 0x23, 0x98, 0xfb, 0xef, 0x53, 0x16, 0x6d, 0x43, 0x24, 0x26, 0xa7, 0xec, 0x6d, 0xd6, 0xe7, 0x37, 0x95, 0xff, 0xbd, 0x53, 0xf3, 0xce, 0xf8, 0x2d, 0xf7, 0x7a, 0xd2, 0x8e, 0x9f, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2431 = { .name = "xdh_wei448_2431", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2431_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2431_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2431_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 359 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2432 for XDH, tcId is 360 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2432_peerpubkey[] = { 0x8e, 0x50, 0x2e, 0xc4, 0x41, 0x68, 0xea, 0x75, 0x2a, 0x34, 0x55, 0xfe, 0x2a, 0x53, 0x9e, 0x53, 0x0b, 0x74, 0x06, 0xd6, 0xfd, 0xca, 0x11, 0x70, 0x6d, 0x54, 0x13, 0x01, 0xce, 0xd2, 0x8d, 0x6c, 0x42, 0x0e, 0xde, 0x92, 0xf8, 0xed, 0xa1, 0x02, 0xf8, 0x6a, 0xad, 0xbc, 0x0e, 0xdf, 0x27, 0x42, 0x74, 0x82, 0x58, 0xcd, 0xa2, 0x97, 0x59, 0x5c, }; static const unsigned char xdh_wei448_2432_privkey[] = { 0x18, 0x42, 0x86, 0x52, 0x9c, 0xf3, 0xb2, 0x5b, 0x75, 0x6c, 0x5d, 0x62, 0xea, 0x9b, 0x81, 0xab, 0xda, 0x33, 0xdf, 0x98, 0x8b, 0x90, 0x98, 0x3d, 0xdf, 0x1d, 0x6c, 0xa5, 0xf1, 0x9a, 0x7e, 0xe7, 0x83, 0xed, 0x55, 0x52, 0x77, 0x60, 0x75, 0xeb, 0x7b, 0x86, 0xfb, 0xc6, 0x94, 0x7d, 0x34, 0xf5, 0x04, 0x9b, 0x9e, 0xad, 0x84, 0xb5, 0xef, 0xc4, }; static const unsigned char xdh_wei448_2432_sharedsecret[] = { 0x32, 0xce, 0xda, 0xe0, 0x10, 0x35, 0x85, 0x2c, 0x0e, 0x3c, 0xb2, 0x7b, 0x49, 0x1e, 0xae, 0xc0, 0xf5, 0x99, 0xc9, 0x25, 0xf6, 0x07, 0xad, 0xe1, 0x93, 0xda, 0x94, 0x5a, 0xd0, 0xdb, 0x3d, 0xaf, 0xc9, 0xe0, 0xeb, 0xaf, 0xdc, 0xa1, 0xbf, 0xab, 0xc4, 0x74, 0x0e, 0x67, 0x2b, 0x37, 0x2a, 0x38, 0x3d, 0x77, 0x51, 0xef, 0x68, 0x7e, 0xba, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_2432 = { .name = "xdh_wei448_2432", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2432_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2432_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2432_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 360 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2433 for XDH, tcId is 361 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2433_peerpubkey[] = { 0x80, 0xd8, 0xd7, 0xef, 0xb6, 0x1e, 0xe9, 0x96, 0x46, 0x34, 0x89, 0x4f, 0x64, 0xd6, 0xe7, 0x82, 0xf7, 0x78, 0x5b, 0x93, 0x88, 0x2e, 0x61, 0xd3, 0x13, 0x1e, 0x79, 0x27, 0x7b, 0x2d, 0x07, 0x62, 0xc0, 0x27, 0x89, 0x81, 0x22, 0x64, 0x97, 0x61, 0x09, 0x6a, 0x66, 0x02, 0x7b, 0x3f, 0x6b, 0x41, 0xc5, 0xd3, 0x47, 0x65, 0xc5, 0xb8, 0x46, 0xad, }; static const unsigned char xdh_wei448_2433_privkey[] = { 0xf0, 0x3e, 0x5d, 0xbb, 0x15, 0x87, 0x7c, 0xab, 0x76, 0xbb, 0x81, 0x18, 0x79, 0xa5, 0x98, 0x90, 0x83, 0xa2, 0x49, 0x1c, 0x33, 0xd5, 0xde, 0x3c, 0x13, 0xc6, 0x8f, 0xa1, 0x17, 0xd7, 0xda, 0x60, 0x83, 0x93, 0xf5, 0x55, 0xa3, 0x27, 0x86, 0x3b, 0xab, 0xe8, 0xf8, 0xb5, 0xf5, 0x24, 0xf3, 0xe5, 0x19, 0x43, 0x10, 0x54, 0xc2, 0xc8, 0x17, 0xc1, }; static const unsigned char xdh_wei448_2433_sharedsecret[] = { 0x2e, 0xf2, 0x40, 0x48, 0x03, 0x1f, 0xd4, 0xc0, 0x61, 0x5c, 0x0e, 0x27, 0x3a, 0xe3, 0x16, 0xf1, 0xcf, 0x74, 0x07, 0x32, 0xaa, 0xfa, 0xa1, 0x0f, 0x01, 0x07, 0xed, 0xb1, 0x5d, 0xf6, 0x35, 0x5b, 0x3b, 0x07, 0xe1, 0x6d, 0x7b, 0x9d, 0x3f, 0x28, 0x74, 0xf4, 0xd6, 0xe8, 0x7e, 0x56, 0xe5, 0x14, 0xa4, 0xfa, 0x7b, 0x2a, 0xab, 0x2e, 0x11, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_2433 = { .name = "xdh_wei448_2433", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2433_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2433_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2433_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2434 for XDH, tcId is 362 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2434_peerpubkey[] = { 0xd7, 0xd8, 0xb5, 0x3d, 0xbd, 0x66, 0x09, 0x27, 0x9b, 0xdd, 0x62, 0x55, 0xda, 0x90, 0x05, 0xb9, 0xc9, 0xde, 0x75, 0xff, 0xbc, 0x4d, 0xbb, 0x27, 0xa6, 0x0a, 0x51, 0x59, 0xcd, 0xfc, 0xe3, 0xea, 0xb2, 0xf6, 0xe8, 0xdc, 0xb9, 0xba, 0x1a, 0x7f, 0x81, 0xb1, 0xc0, 0x7d, 0x5c, 0x82, 0x19, 0x28, 0xa7, 0x32, 0x79, 0x89, 0x3d, 0x1c, 0x3c, 0xd2, }; static const unsigned char xdh_wei448_2434_privkey[] = { 0xf8, 0x69, 0x4c, 0xd5, 0xfc, 0xa3, 0x29, 0xc6, 0xe4, 0xde, 0xfb, 0x17, 0xd4, 0x46, 0x54, 0x4a, 0x60, 0x01, 0x2d, 0xbc, 0xfa, 0x23, 0xd7, 0xd6, 0x5c, 0xaf, 0xf2, 0x81, 0xee, 0x94, 0x7a, 0x50, 0x8d, 0x34, 0xfa, 0x1f, 0xa2, 0x46, 0x93, 0x9d, 0x7c, 0x7e, 0xab, 0x93, 0xdb, 0x31, 0x50, 0xb8, 0x95, 0x8d, 0xf5, 0x60, 0xb9, 0xe4, 0x9a, 0xd0, }; static const unsigned char xdh_wei448_2434_sharedsecret[] = { 0xbf, 0xc7, 0xe3, 0x09, 0x9b, 0x4f, 0x48, 0xbd, 0x4b, 0x1b, 0x89, 0xde, 0xb5, 0x96, 0x87, 0x84, 0x7b, 0xf6, 0x01, 0x4d, 0x5a, 0xca, 0xfc, 0x24, 0x8b, 0x3b, 0x57, 0x6f, 0xaa, 0x11, 0x11, 0xba, 0xe6, 0xe8, 0x81, 0x02, 0x71, 0x05, 0xd7, 0x24, 0x0d, 0x89, 0xee, 0x6a, 0xc2, 0x00, 0xba, 0x0d, 0xfe, 0x46, 0x48, 0x6a, 0xe0, 0x7b, 0x0d, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2434 = { .name = "xdh_wei448_2434", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2434_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2434_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2434_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 362 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2435 for XDH, tcId is 363 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2435_peerpubkey[] = { 0xef, 0x64, 0x72, 0x31, 0x7c, 0x20, 0x56, 0x6f, 0x5f, 0xec, 0xff, 0x8e, 0x18, 0x07, 0x75, 0x42, 0x43, 0x96, 0x87, 0x35, 0x4b, 0x9f, 0x9e, 0x77, 0x0f, 0x4d, 0xd7, 0x70, 0x69, 0x0b, 0x79, 0xa6, 0xd3, 0x50, 0x10, 0x00, 0xb6, 0xf5, 0x04, 0xad, 0x62, 0x8a, 0xc2, 0x00, 0xed, 0x89, 0xfd, 0x82, 0x2e, 0x13, 0x1c, 0x1c, 0x97, 0x1d, 0x82, 0xf0, }; static const unsigned char xdh_wei448_2435_privkey[] = { 0x98, 0xb2, 0xc9, 0xa0, 0xdf, 0xa3, 0x9a, 0xef, 0x17, 0x56, 0x33, 0x08, 0x9b, 0x35, 0x13, 0x30, 0x5c, 0x0d, 0x6f, 0x90, 0x69, 0x39, 0xff, 0x65, 0x1e, 0x5c, 0x59, 0xf9, 0x76, 0x29, 0x96, 0x32, 0xb1, 0x23, 0xed, 0x88, 0x27, 0x44, 0xda, 0xc5, 0xaf, 0xf2, 0x62, 0x86, 0x9a, 0xce, 0xd8, 0x4b, 0xa0, 0xd7, 0x1e, 0xa3, 0x91, 0xa4, 0xc9, 0xc9, }; static const unsigned char xdh_wei448_2435_sharedsecret[] = { 0x6a, 0x9e, 0x56, 0xff, 0x58, 0xe2, 0x9a, 0x0e, 0xf4, 0x40, 0xe5, 0x81, 0x1d, 0x5a, 0xa5, 0x14, 0x11, 0xd9, 0x31, 0x4b, 0xe2, 0xc6, 0xc0, 0xe8, 0x02, 0xa5, 0x55, 0x7b, 0x9a, 0x1e, 0xf7, 0x21, 0x8b, 0xc1, 0x17, 0x86, 0x5e, 0x85, 0xef, 0xb9, 0xcf, 0x2d, 0x7e, 0xca, 0xf9, 0x88, 0x7a, 0xed, 0xd8, 0x37, 0x93, 0x9f, 0x1a, 0xd0, 0xff, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2435 = { .name = "xdh_wei448_2435", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2435_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2435_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2435_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 363 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2436 for XDH, tcId is 364 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2436_peerpubkey[] = { 0x6b, 0x70, 0x3f, 0x0d, 0x03, 0xcd, 0x81, 0xbc, 0x86, 0x27, 0x48, 0xa0, 0x47, 0xba, 0x6d, 0x7c, 0xc6, 0x61, 0x0d, 0xe2, 0xc4, 0x3b, 0xd8, 0x10, 0x59, 0x70, 0xdf, 0x02, 0xf1, 0x26, 0x25, 0x3f, 0x13, 0x74, 0x07, 0xef, 0xb1, 0x82, 0xa0, 0xed, 0xbc, 0xd3, 0xfa, 0xdd, 0x17, 0x0a, 0x33, 0xac, 0xfa, 0xdf, 0x18, 0x5f, 0xd0, 0xf3, 0x0f, 0xfb, }; static const unsigned char xdh_wei448_2436_privkey[] = { 0xa0, 0x33, 0x7e, 0x1c, 0x6e, 0xf5, 0x6a, 0xe9, 0xf2, 0xc5, 0x1f, 0x23, 0xea, 0xc2, 0x39, 0xc9, 0x50, 0x7c, 0x83, 0x12, 0x8e, 0xc9, 0xd6, 0xc8, 0x96, 0x75, 0x13, 0x28, 0xc3, 0x7d, 0x9e, 0x2c, 0x21, 0x5e, 0xb0, 0xca, 0xcc, 0x1b, 0xfc, 0xb1, 0x1e, 0xb8, 0x52, 0xff, 0xcf, 0xa3, 0x40, 0x24, 0x64, 0xb2, 0x71, 0x50, 0x45, 0xc8, 0x93, 0xd2, }; static const unsigned char xdh_wei448_2436_sharedsecret[] = { 0x46, 0x80, 0xb8, 0x74, 0xd6, 0x71, 0x8f, 0xe3, 0x66, 0x7b, 0x28, 0xd4, 0x6f, 0xda, 0xa8, 0x5b, 0x05, 0x22, 0x52, 0x0a, 0xd9, 0xe2, 0x09, 0x78, 0x8d, 0xff, 0x52, 0x42, 0x0b, 0x2e, 0x04, 0xc2, 0xea, 0xa9, 0xc9, 0x1b, 0x2d, 0xd2, 0x7e, 0xf5, 0xfd, 0x23, 0x07, 0x95, 0xe3, 0x42, 0x8f, 0xc7, 0x2f, 0x05, 0x4c, 0xb1, 0xfa, 0x46, 0x2b, 0xba, }; static const wycheproof_xdh_test xdh_wei448_2436 = { .name = "xdh_wei448_2436", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2436_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2436_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2436_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 364 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2437 for XDH, tcId is 365 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2437_peerpubkey[] = { 0xc7, 0x4c, 0xb2, 0x63, 0x92, 0xf8, 0x4f, 0xab, 0xb9, 0xfe, 0x10, 0x79, 0x81, 0x74, 0xa6, 0x95, 0xca, 0x37, 0x50, 0xae, 0x72, 0x0d, 0x7e, 0xdd, 0xe1, 0xeb, 0x1b, 0xbc, 0x14, 0xde, 0x52, 0x42, 0x11, 0x9e, 0xa9, 0xde, 0x79, 0x6f, 0xa5, 0xa5, 0x38, 0xc0, 0xb6, 0x10, 0xb6, 0x5d, 0xa5, 0xa1, 0x0d, 0x47, 0xbb, 0x92, 0x31, 0x47, 0x7e, 0x0f, }; static const unsigned char xdh_wei448_2437_privkey[] = { 0x9c, 0x16, 0xc7, 0x35, 0x62, 0x84, 0xca, 0x60, 0x8f, 0x41, 0x12, 0x2d, 0xb6, 0xfd, 0x57, 0xf6, 0x7e, 0xd1, 0x4d, 0x9f, 0x82, 0x87, 0x0f, 0xe7, 0x67, 0xe6, 0x47, 0x60, 0xdd, 0x85, 0xe0, 0xc5, 0x50, 0x2d, 0x8c, 0x53, 0x17, 0xa5, 0x70, 0x72, 0x92, 0x82, 0xce, 0x5f, 0x51, 0x86, 0x40, 0xc5, 0x8c, 0xc0, 0x2e, 0xde, 0xf6, 0x38, 0xed, 0xe0, }; static const unsigned char xdh_wei448_2437_sharedsecret[] = { 0x2a, 0x74, 0x77, 0x12, 0x0b, 0xce, 0x86, 0x53, 0x3d, 0x19, 0xcd, 0x3c, 0xab, 0xc8, 0x35, 0x5b, 0xab, 0x91, 0xa1, 0x25, 0x6d, 0x9d, 0x0b, 0x54, 0x54, 0x06, 0xcc, 0x72, 0x39, 0xab, 0x9f, 0x75, 0xb6, 0x2d, 0x38, 0x19, 0x03, 0xa5, 0x1a, 0x4c, 0xa4, 0x14, 0x29, 0x20, 0xc0, 0x00, 0xfc, 0x80, 0xe4, 0x74, 0xe4, 0x1a, 0xce, 0xf9, 0xd7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2437 = { .name = "xdh_wei448_2437", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2437_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2437_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2437_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 365 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2438 for XDH, tcId is 366 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2438_peerpubkey[] = { 0x5a, 0x07, 0xde, 0x5d, 0x53, 0xdc, 0xac, 0x22, 0xa4, 0x93, 0x5a, 0x11, 0x90, 0x9a, 0x8b, 0x5d, 0xc6, 0x62, 0x59, 0x96, 0x71, 0xe3, 0xba, 0xfc, 0x71, 0xf9, 0x8d, 0x8f, 0x64, 0x05, 0x6a, 0xb5, 0x19, 0x34, 0x8e, 0x1c, 0x8d, 0x74, 0x87, 0x00, 0x1d, 0x9b, 0xa5, 0xc0, 0x88, 0x8a, 0xef, 0x3a, 0x09, 0xe3, 0x99, 0x95, 0xc5, 0x15, 0xed, 0x1c, }; static const unsigned char xdh_wei448_2438_privkey[] = { 0x94, 0xd3, 0xf7, 0x22, 0xea, 0x49, 0xaa, 0xd9, 0xd7, 0xe6, 0x3d, 0x78, 0x4d, 0xf5, 0xa4, 0xb8, 0xea, 0xa3, 0x55, 0xbb, 0x13, 0x30, 0x81, 0xfb, 0x46, 0x6e, 0x8e, 0xbe, 0xae, 0xec, 0x80, 0xf6, 0x3a, 0xff, 0xc0, 0x3d, 0xee, 0x73, 0x32, 0xa3, 0xcf, 0x11, 0xb4, 0x44, 0x2c, 0x60, 0x27, 0x72, 0x7a, 0x65, 0x29, 0x66, 0xdf, 0x0f, 0x26, 0xf5, }; static const unsigned char xdh_wei448_2438_sharedsecret[] = { 0xa8, 0xed, 0x03, 0xdc, 0x9a, 0xc2, 0x65, 0x87, 0x90, 0xf0, 0x6a, 0xe5, 0x85, 0x8f, 0xd2, 0xc5, 0x4d, 0x25, 0x76, 0xf7, 0x79, 0x33, 0x86, 0xf8, 0xe9, 0xe6, 0xa9, 0xc2, 0x8a, 0xcd, 0xd0, 0x84, 0x0e, 0xb6, 0xfc, 0x23, 0x6b, 0x6e, 0x72, 0xfd, 0x7d, 0x23, 0x8c, 0x79, 0xd5, 0x0d, 0xc5, 0xec, 0x75, 0x8f, 0x2a, 0x1a, 0xad, 0xb4, 0x08, 0x8c, }; static const wycheproof_xdh_test xdh_wei448_2438 = { .name = "xdh_wei448_2438", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2438_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2438_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2438_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 366 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2439 for XDH, tcId is 367 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2439_peerpubkey[] = { 0xc2, 0x67, 0x4f, 0xc9, 0xde, 0xd2, 0x19, 0xe3, 0x48, 0x9e, 0x23, 0xcf, 0xcc, 0xc5, 0xe4, 0x09, 0x08, 0x5a, 0x62, 0xcc, 0xc9, 0x0e, 0x91, 0x2b, 0x4f, 0x25, 0x66, 0xe2, 0x28, 0xa2, 0x3b, 0x24, 0x36, 0x30, 0xdf, 0x20, 0x11, 0x65, 0x07, 0x13, 0x8d, 0xef, 0x1f, 0x10, 0xd7, 0xe7, 0x88, 0x1f, 0x93, 0xb1, 0x0b, 0x6e, 0x85, 0x59, 0x03, 0x57, }; static const unsigned char xdh_wei448_2439_privkey[] = { 0x84, 0xb7, 0xea, 0x45, 0x39, 0xa2, 0x5d, 0x59, 0x14, 0x12, 0x1d, 0xbb, 0x22, 0xa0, 0xaa, 0x6b, 0x6d, 0x39, 0x48, 0x79, 0x1f, 0x3e, 0xcb, 0xe6, 0xc2, 0x9e, 0x9b, 0xe7, 0x59, 0x85, 0xe1, 0x85, 0x28, 0xaa, 0xd1, 0xe8, 0xf5, 0x78, 0xeb, 0x60, 0x36, 0x7a, 0x21, 0x6c, 0xac, 0x12, 0x96, 0x82, 0x43, 0x18, 0xc6, 0xe0, 0xb0, 0xc3, 0x59, 0xfc, }; static const unsigned char xdh_wei448_2439_sharedsecret[] = { 0x94, 0xa2, 0x15, 0xb7, 0x82, 0x73, 0x1e, 0x91, 0xfb, 0x24, 0x9a, 0xf1, 0xef, 0xf1, 0x3a, 0x8a, 0x31, 0xe2, 0x66, 0x20, 0x83, 0x87, 0x45, 0xc4, 0x5f, 0xaf, 0x1b, 0x93, 0xd5, 0x2a, 0x9a, 0x2b, 0x76, 0x54, 0x96, 0x86, 0xd6, 0xdc, 0x68, 0xde, 0xa3, 0x95, 0x4e, 0x28, 0x2e, 0x25, 0xdb, 0x51, 0xba, 0x9a, 0x00, 0xdc, 0x40, 0x48, 0x61, 0xce, }; static const wycheproof_xdh_test xdh_wei448_2439 = { .name = "xdh_wei448_2439", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2439_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2439_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2439_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 367 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2440 for XDH, tcId is 368 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2440_peerpubkey[] = { 0x6e, 0x2d, 0xea, 0x3b, 0x6f, 0x6f, 0xab, 0x4c, 0x40, 0xb5, 0xdd, 0x70, 0xf2, 0xa2, 0x0b, 0x4e, 0x94, 0xb8, 0x5c, 0xf6, 0x18, 0xde, 0xe1, 0x87, 0x26, 0x34, 0xfc, 0x3c, 0x11, 0xa1, 0xeb, 0xde, 0x1d, 0xec, 0x90, 0x46, 0x07, 0x3d, 0xab, 0x37, 0x99, 0x9c, 0xc4, 0xe2, 0xbb, 0x27, 0x8d, 0x9d, 0xa5, 0x39, 0xfc, 0x0c, 0x55, 0x4d, 0xd9, 0x68, }; static const unsigned char xdh_wei448_2440_privkey[] = { 0x24, 0x38, 0x8c, 0x6f, 0x8d, 0xbf, 0x84, 0x4c, 0xd9, 0xc8, 0x57, 0x5f, 0x9f, 0xc5, 0x81, 0x95, 0xb1, 0xd8, 0x5c, 0x9e, 0x87, 0x1e, 0x11, 0x83, 0x7a, 0x11, 0x98, 0xcf, 0xa6, 0x38, 0x22, 0x63, 0xd2, 0x76, 0xf1, 0xed, 0x8b, 0xe7, 0x18, 0x66, 0x86, 0xf4, 0x78, 0x67, 0x80, 0x90, 0xb4, 0xd8, 0x83, 0x82, 0x8d, 0x67, 0x99, 0x92, 0xb6, 0xf7, }; static const unsigned char xdh_wei448_2440_sharedsecret[] = { 0x90, 0x27, 0x2c, 0x81, 0x6f, 0xaa, 0x4b, 0x33, 0xc9, 0x4c, 0x02, 0x6c, 0x6b, 0xf0, 0xdb, 0x26, 0xc6, 0x85, 0x34, 0x6e, 0xc9, 0xc5, 0x84, 0x33, 0x8d, 0xf0, 0x07, 0xda, 0x8a, 0x22, 0x70, 0xe6, 0xbf, 0xe3, 0x94, 0xcc, 0xc2, 0x74, 0x8a, 0x3c, 0x69, 0xae, 0xe0, 0x3b, 0x97, 0xa4, 0x4f, 0xd6, 0x0f, 0x55, 0xd2, 0x80, 0x7a, 0xc3, 0xd3, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2440 = { .name = "xdh_wei448_2440", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2440_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2440_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2440_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 368 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2441 for XDH, tcId is 369 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2441_peerpubkey[] = { 0x74, 0x65, 0x25, 0xc0, 0xd0, 0xaa, 0x1c, 0x92, 0xbb, 0xed, 0x10, 0xc3, 0xe6, 0x5e, 0x76, 0x36, 0xf1, 0x15, 0x94, 0x4c, 0x1a, 0x1c, 0x22, 0xe0, 0x10, 0x5a, 0x77, 0xfa, 0xa2, 0x15, 0x70, 0x0e, 0x3e, 0xd2, 0x98, 0x86, 0x6a, 0xff, 0xbf, 0x38, 0xbb, 0xbd, 0x50, 0x11, 0x28, 0x5f, 0x10, 0x56, 0xad, 0x4e, 0x27, 0x7b, 0x2e, 0x05, 0x44, 0x93, }; static const unsigned char xdh_wei448_2441_privkey[] = { 0xe8, 0xf7, 0x13, 0x63, 0xb9, 0xc4, 0x20, 0x49, 0xcb, 0x42, 0x1c, 0xb6, 0x16, 0x6c, 0xe8, 0x40, 0xf4, 0x8d, 0x39, 0xcd, 0xc5, 0xa1, 0x1f, 0x8b, 0xe5, 0x27, 0x15, 0x34, 0xa5, 0x8d, 0x56, 0x4c, 0xeb, 0x7c, 0x5d, 0xb3, 0x39, 0x09, 0x81, 0x72, 0x93, 0xee, 0x17, 0xa9, 0x6c, 0x06, 0x21, 0x4e, 0x85, 0xa5, 0x16, 0x29, 0x6f, 0xbf, 0x53, 0xf5, }; static const unsigned char xdh_wei448_2441_sharedsecret[] = { 0x5d, 0x24, 0x56, 0x4b, 0x12, 0x25, 0x7f, 0x6e, 0x52, 0xf8, 0x26, 0x9a, 0x09, 0xe8, 0xb1, 0x13, 0x7e, 0xcb, 0x83, 0x2a, 0xcc, 0x34, 0x3e, 0x0a, 0x19, 0xbe, 0x45, 0x9e, 0xf2, 0xcf, 0xd2, 0x76, 0xd3, 0x9f, 0x95, 0x56, 0x49, 0x4a, 0x3e, 0x2d, 0xd5, 0xfc, 0x55, 0x00, 0xc6, 0x46, 0xef, 0xe0, 0x6f, 0x2d, 0x19, 0x20, 0xa2, 0xf3, 0x25, 0xee, }; static const wycheproof_xdh_test xdh_wei448_2441 = { .name = "xdh_wei448_2441", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2441_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2441_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2441_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 369 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2442 for XDH, tcId is 370 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2442_peerpubkey[] = { 0xcc, 0x14, 0x70, 0x70, 0x95, 0x30, 0x75, 0x5c, 0xb6, 0xfa, 0x6b, 0xd9, 0xda, 0x94, 0x72, 0x52, 0xc6, 0xdf, 0x9c, 0xdb, 0x14, 0x21, 0xa5, 0x70, 0xe0, 0xdb, 0xd2, 0x98, 0xbc, 0x56, 0xf3, 0x5f, 0x84, 0x4c, 0x9b, 0x42, 0xff, 0x60, 0xe9, 0xaf, 0x17, 0xb0, 0x06, 0x63, 0xe8, 0x8e, 0x08, 0x8f, 0x8a, 0x84, 0xc7, 0x30, 0x94, 0xe9, 0x44, 0xe7, }; static const unsigned char xdh_wei448_2442_privkey[] = { 0x2c, 0x8b, 0x77, 0x93, 0x12, 0x30, 0xba, 0xa9, 0x34, 0x0d, 0xec, 0xa7, 0x60, 0x7f, 0x72, 0x18, 0x66, 0x11, 0xe6, 0x40, 0xff, 0x3f, 0x90, 0xcd, 0xee, 0xcb, 0xf2, 0x07, 0xac, 0x31, 0xa2, 0x33, 0xcf, 0x57, 0x5f, 0xe9, 0xb9, 0xfb, 0x5f, 0x43, 0x81, 0xa2, 0xe8, 0x83, 0x60, 0xcd, 0xe2, 0xb0, 0x84, 0x71, 0x46, 0x30, 0x3f, 0xaf, 0xa6, 0xfa, }; static const unsigned char xdh_wei448_2442_sharedsecret[] = { 0xcf, 0xc1, 0xd9, 0xe2, 0x50, 0x44, 0x7d, 0x37, 0xa7, 0x0f, 0xfb, 0x67, 0x64, 0xe4, 0x24, 0x9f, 0x89, 0xa1, 0x4d, 0x16, 0x84, 0x57, 0x64, 0x17, 0x49, 0xd5, 0x1b, 0xda, 0x5f, 0x31, 0x09, 0xb5, 0x5e, 0xb6, 0x4d, 0x7e, 0x1d, 0xf1, 0x1a, 0x47, 0xc7, 0xca, 0xca, 0xc9, 0x91, 0xb8, 0x7b, 0x5b, 0xed, 0x3b, 0xe4, 0x54, 0xda, 0x3f, 0x9e, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2442 = { .name = "xdh_wei448_2442", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2442_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2442_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2442_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 370 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2443 for XDH, tcId is 371 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2443_peerpubkey[] = { 0x28, 0xe2, 0x9f, 0xac, 0x5e, 0xeb, 0x6b, 0x5f, 0x19, 0xd1, 0x4f, 0x73, 0x6f, 0x09, 0x23, 0xd3, 0xca, 0x8a, 0x6f, 0x0c, 0x6d, 0xad, 0xb0, 0x99, 0x4e, 0x74, 0x23, 0xb1, 0x62, 0x13, 0x5b, 0x69, 0x64, 0xaf, 0xeb, 0xa4, 0x73, 0x09, 0xa5, 0xc3, 0x40, 0xe8, 0x64, 0xbe, 0x2d, 0x86, 0xde, 0x3f, 0x4c, 0x39, 0x65, 0xf5, 0x2e, 0xc6, 0xfb, 0x10, }; static const unsigned char xdh_wei448_2443_privkey[] = { 0xbc, 0x1e, 0x2a, 0xdc, 0xe0, 0xc4, 0x01, 0x64, 0xd0, 0x8b, 0x69, 0xc0, 0x85, 0xcb, 0x06, 0x43, 0xf9, 0x4d, 0x0f, 0xbb, 0x63, 0x40, 0xf1, 0x4a, 0x4a, 0xdf, 0xf5, 0x9d, 0x40, 0x2e, 0x96, 0xc7, 0xc6, 0xaf, 0x2d, 0xcc, 0x26, 0xd8, 0xd5, 0xdf, 0x8b, 0x90, 0xc8, 0xb2, 0x9c, 0x29, 0x81, 0xc3, 0x13, 0xc9, 0x6e, 0x89, 0xd8, 0xbb, 0x21, 0xe8, }; static const unsigned char xdh_wei448_2443_sharedsecret[] = { 0xda, 0x0f, 0x3e, 0x1d, 0xd1, 0x93, 0x73, 0x5a, 0xf9, 0x64, 0x89, 0xf5, 0x54, 0xaf, 0xef, 0x42, 0xef, 0x83, 0x7e, 0x7b, 0xcd, 0xb2, 0x07, 0xd9, 0x4e, 0xe5, 0xed, 0x41, 0x1a, 0xea, 0x06, 0x1d, 0x47, 0x86, 0x50, 0xe5, 0x5f, 0x3a, 0xe2, 0x6f, 0xe6, 0x2b, 0xd9, 0xe6, 0xf2, 0x70, 0x95, 0x96, 0xbc, 0x03, 0xf7, 0x82, 0x7a, 0x7b, 0x06, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2443 = { .name = "xdh_wei448_2443", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2443_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2443_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2443_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 371 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2444 for XDH, tcId is 372 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2444_peerpubkey[] = { 0xbd, 0xc9, 0x21, 0x80, 0x54, 0xef, 0x5e, 0x3a, 0xa4, 0x40, 0x5b, 0xc7, 0x1e, 0x75, 0xe9, 0x06, 0x72, 0x60, 0xa7, 0x51, 0x06, 0x64, 0xf9, 0x1d, 0xd2, 0x88, 0x10, 0xbf, 0x2f, 0x6b, 0xec, 0x45, 0xd9, 0xb1, 0x7c, 0x96, 0xb3, 0xb5, 0x0a, 0x5e, 0xcd, 0xf6, 0x4f, 0x1e, 0xa9, 0x68, 0x28, 0xb6, 0x8c, 0x2e, 0x2c, 0x5c, 0xc2, 0x68, 0xb8, 0x45, }; static const unsigned char xdh_wei448_2444_privkey[] = { 0xbc, 0xae, 0x78, 0x6f, 0x69, 0xd6, 0x17, 0x12, 0x96, 0x2a, 0xf8, 0x9f, 0x67, 0x39, 0x72, 0xdc, 0x89, 0xa4, 0xde, 0xc5, 0x1f, 0xa7, 0x96, 0xe8, 0x25, 0xb3, 0x02, 0x05, 0xb1, 0x1c, 0xae, 0x6c, 0xc7, 0x35, 0xff, 0x5e, 0x1e, 0xe4, 0x82, 0x74, 0x01, 0x05, 0x3b, 0xb4, 0x8a, 0x9f, 0xb9, 0xfb, 0x18, 0xd9, 0xd9, 0x31, 0xf9, 0xcb, 0x56, 0xe9, }; static const unsigned char xdh_wei448_2444_sharedsecret[] = { 0x23, 0xa1, 0x0a, 0x2e, 0xf5, 0x07, 0xd3, 0x62, 0x66, 0xf3, 0x69, 0x36, 0x30, 0xfa, 0x7d, 0x0d, 0x59, 0x03, 0x26, 0xd0, 0x99, 0x4c, 0x22, 0xa2, 0xd5, 0xcf, 0x85, 0xd2, 0x24, 0xd0, 0x08, 0x54, 0xb7, 0x2b, 0x32, 0x74, 0xe9, 0xd1, 0x06, 0x10, 0x33, 0xb1, 0x1c, 0x6f, 0xdb, 0xde, 0x27, 0x37, 0x7b, 0xe3, 0x6b, 0xce, 0x38, 0xcc, 0xbf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_2444 = { .name = "xdh_wei448_2444", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2444_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2444_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2444_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 372 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2445 for XDH, tcId is 373 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2445_peerpubkey[] = { 0x7f, 0xda, 0xea, 0x8c, 0xf3, 0x83, 0x20, 0x55, 0xad, 0x8e, 0x05, 0x93, 0xa6, 0xae, 0x7f, 0x31, 0x93, 0x9d, 0xe0, 0x46, 0x3c, 0x56, 0xec, 0x32, 0x8c, 0xa9, 0x25, 0x0c, 0xff, 0x0a, 0x45, 0x63, 0x89, 0x60, 0xce, 0x55, 0x8e, 0x95, 0xd8, 0x06, 0xdd, 0x89, 0x43, 0xfb, 0x2d, 0x8e, 0xc0, 0x06, 0xcf, 0x44, 0x98, 0x75, 0xeb, 0xa0, 0x6b, 0x7e, }; static const unsigned char xdh_wei448_2445_privkey[] = { 0x68, 0xfc, 0xdc, 0xc5, 0xba, 0x2e, 0x44, 0x9b, 0x1b, 0x14, 0xd1, 0x1a, 0x27, 0x28, 0x12, 0xe8, 0xcf, 0xf2, 0xbf, 0x54, 0x8e, 0xa4, 0xf2, 0x28, 0x16, 0xd3, 0xb1, 0xfa, 0x8d, 0xa1, 0x01, 0xeb, 0x8d, 0x72, 0x5b, 0x2c, 0x86, 0x4c, 0x72, 0x84, 0x3e, 0x46, 0x45, 0xf3, 0x59, 0xea, 0x23, 0x6c, 0xc8, 0x3f, 0xf6, 0xa9, 0x3c, 0x7a, 0xbc, 0xf8, }; static const unsigned char xdh_wei448_2445_sharedsecret[] = { 0x98, 0x6e, 0x69, 0x86, 0x0b, 0xcf, 0x20, 0x59, 0xd8, 0x32, 0xb8, 0x6a, 0x15, 0xb6, 0xc5, 0x36, 0xf8, 0xb8, 0x47, 0xb7, 0x14, 0xa1, 0xdc, 0x64, 0x84, 0x87, 0xd6, 0xa4, 0xd9, 0xed, 0xb0, 0xe0, 0x04, 0xdc, 0xd9, 0x82, 0x09, 0x9f, 0x34, 0x4e, 0x23, 0xff, 0x36, 0x83, 0x12, 0xb3, 0xf2, 0xec, 0x85, 0x3f, 0x33, 0x20, 0x67, 0x43, 0x24, 0x60, }; static const wycheproof_xdh_test xdh_wei448_2445 = { .name = "xdh_wei448_2445", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2445_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2445_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2445_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 373 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2446 for XDH, tcId is 374 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2446_peerpubkey[] = { 0x07, 0x03, 0xc1, 0xc0, 0x35, 0x2e, 0x54, 0xc0, 0xcb, 0xc3, 0xc2, 0xec, 0x9f, 0x2d, 0x27, 0x97, 0xfe, 0xb2, 0x2e, 0x1f, 0x01, 0xb4, 0x3f, 0xb0, 0xda, 0x67, 0x5e, 0xba, 0x50, 0xc1, 0xa6, 0x96, 0xc9, 0x23, 0x69, 0x00, 0x61, 0xc8, 0xf3, 0x6f, 0x95, 0xab, 0x01, 0xf0, 0x8d, 0x3f, 0x6b, 0x43, 0xf1, 0xa5, 0x68, 0x8a, 0x7c, 0xe6, 0x9d, 0x7f, }; static const unsigned char xdh_wei448_2446_privkey[] = { 0x8c, 0x92, 0x48, 0x35, 0x57, 0x10, 0xe2, 0xa5, 0xb5, 0xfc, 0x05, 0x82, 0x9b, 0x97, 0xa9, 0x9b, 0xe5, 0x5a, 0x44, 0x1b, 0xc6, 0xc6, 0x17, 0xed, 0xaf, 0x5f, 0xe8, 0xb3, 0x63, 0x27, 0x04, 0x76, 0xb1, 0x51, 0x6e, 0x42, 0x49, 0x79, 0x76, 0x32, 0x67, 0xb8, 0x5c, 0xf9, 0x21, 0x2f, 0x58, 0xb0, 0x2b, 0x5f, 0x5c, 0xf0, 0xae, 0x57, 0x3c, 0xeb, }; static const unsigned char xdh_wei448_2446_sharedsecret[] = { 0x2c, 0xfe, 0x18, 0x4e, 0x46, 0x42, 0xbd, 0x7f, 0xb7, 0x82, 0x6d, 0x74, 0x86, 0x43, 0xdc, 0x1e, 0x4b, 0xad, 0xe0, 0x1e, 0xfd, 0xbb, 0x97, 0xab, 0x43, 0x75, 0xce, 0x70, 0x5d, 0x50, 0xeb, 0x5f, 0xa4, 0xb7, 0x15, 0xf8, 0xf6, 0x8c, 0xb4, 0xc2, 0xd3, 0x1f, 0x40, 0x5b, 0x9f, 0xcc, 0x7f, 0xdf, 0xaf, 0x45, 0xe2, 0x50, 0xee, 0xb4, 0x25, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2446 = { .name = "xdh_wei448_2446", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2446_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2446_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2446_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 374 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2447 for XDH, tcId is 375 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2447_peerpubkey[] = { 0x4d, 0xa7, 0xda, 0xb7, 0xbb, 0xd2, 0xd1, 0xe6, 0x5f, 0xa8, 0x27, 0xad, 0x65, 0x73, 0xb0, 0x58, 0xef, 0x88, 0xa6, 0x6b, 0x65, 0x58, 0xcb, 0xd5, 0x9a, 0x71, 0x05, 0x5f, 0x9f, 0x4e, 0xec, 0xb8, 0x17, 0xb4, 0xae, 0xd5, 0x62, 0xe5, 0xf7, 0x17, 0x8d, 0xa3, 0xb9, 0xe6, 0x38, 0xe6, 0xf8, 0xe0, 0xa4, 0xb2, 0x7c, 0xba, 0xd7, 0x7c, 0x7a, 0x81, }; static const unsigned char xdh_wei448_2447_privkey[] = { 0xc0, 0x53, 0x32, 0x24, 0xb8, 0x9a, 0x99, 0x1a, 0x65, 0xfe, 0x40, 0x36, 0x5e, 0x5f, 0x15, 0xaa, 0xb2, 0xbc, 0x76, 0x75, 0x3f, 0xb4, 0xa2, 0x21, 0xf1, 0x29, 0x14, 0x7a, 0xb9, 0x27, 0x4c, 0x76, 0x22, 0xc2, 0x41, 0xfb, 0x7e, 0x97, 0xdb, 0x21, 0x83, 0x56, 0xf3, 0xd0, 0x59, 0x40, 0x41, 0xba, 0x51, 0x03, 0xaf, 0x29, 0x84, 0xc5, 0xc0, 0xf5, }; static const unsigned char xdh_wei448_2447_sharedsecret[] = { 0xe8, 0xef, 0x23, 0x26, 0x55, 0x5f, 0x0f, 0xf5, 0x06, 0x2a, 0x57, 0xd4, 0x54, 0x82, 0xd5, 0x76, 0x72, 0x80, 0x20, 0x15, 0x0b, 0xd1, 0x0f, 0xa1, 0xf9, 0x5f, 0x09, 0x57, 0x47, 0x1e, 0x7b, 0xc4, 0x38, 0x85, 0x54, 0x2d, 0x04, 0x19, 0x07, 0xf5, 0xdc, 0xfe, 0x43, 0xd2, 0xaa, 0x86, 0x28, 0x61, 0x23, 0xc0, 0x04, 0x32, 0xf9, 0x8f, 0x59, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_2447 = { .name = "xdh_wei448_2447", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2447_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2447_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2447_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 375 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2448 for XDH, tcId is 376 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2448_peerpubkey[] = { 0x5f, 0x95, 0xcf, 0x0a, 0xfe, 0x8f, 0x99, 0x15, 0xd9, 0x83, 0xc7, 0x17, 0x54, 0x32, 0x9e, 0xb0, 0x52, 0x77, 0x68, 0x60, 0x5b, 0xa8, 0xe5, 0x8c, 0xa2, 0xc6, 0x4a, 0x75, 0x0a, 0x52, 0x8c, 0x1a, 0x6c, 0x1a, 0xf8, 0x83, 0x7d, 0x93, 0xfc, 0x88, 0xe7, 0x2d, 0x8d, 0xdb, 0x67, 0x5f, 0xef, 0xda, 0x43, 0x85, 0x1d, 0x19, 0xf7, 0x99, 0x78, 0x85, }; static const unsigned char xdh_wei448_2448_privkey[] = { 0xe4, 0x58, 0x55, 0x7f, 0xbd, 0xec, 0x2e, 0x38, 0xa7, 0x6a, 0x03, 0xb7, 0xd7, 0x96, 0x4e, 0xe7, 0xd0, 0xa9, 0x52, 0xc3, 0xbe, 0x4f, 0x04, 0x45, 0x89, 0xa2, 0xda, 0xe9, 0x1e, 0x18, 0x44, 0xe7, 0x0b, 0x5b, 0xa2, 0x73, 0x67, 0xec, 0x7f, 0xc5, 0x48, 0x5c, 0xca, 0x82, 0xf7, 0xde, 0xdf, 0x47, 0x42, 0xa5, 0x6c, 0x7d, 0xb3, 0xe5, 0x98, 0xf3, }; static const unsigned char xdh_wei448_2448_sharedsecret[] = { 0x75, 0x31, 0xde, 0x90, 0xb1, 0x98, 0xac, 0xdb, 0x91, 0xd8, 0xd5, 0xff, 0xda, 0x2a, 0x9b, 0xd3, 0xaf, 0x0d, 0x2e, 0x04, 0x65, 0x09, 0x4d, 0xda, 0xe2, 0xdb, 0x7f, 0x9e, 0x21, 0xfb, 0x12, 0x57, 0x91, 0x20, 0x34, 0x56, 0xc6, 0x9e, 0x73, 0xa5, 0x46, 0xca, 0x38, 0x20, 0x61, 0x7a, 0x31, 0x2c, 0xd3, 0x17, 0x9c, 0xde, 0x2d, 0x7e, 0xcb, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2448 = { .name = "xdh_wei448_2448", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2448_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2448_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2448_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 376 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2449 for XDH, tcId is 377 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2449_peerpubkey[] = { 0xa9, 0x1e, 0xe7, 0x64, 0xb9, 0x06, 0x93, 0x11, 0x51, 0x1b, 0xb4, 0xbd, 0xeb, 0xef, 0x48, 0x5f, 0xf2, 0xfb, 0x26, 0xe3, 0x4c, 0xa7, 0x44, 0x7b, 0x74, 0x33, 0xce, 0x92, 0xd6, 0x7e, 0xc2, 0x41, 0x95, 0x16, 0xc8, 0x87, 0x27, 0xf0, 0x7e, 0x47, 0x3b, 0xa6, 0x31, 0xa0, 0xf6, 0x68, 0x79, 0x9d, 0x86, 0x1c, 0x72, 0x46, 0xa3, 0x61, 0x73, 0x2e, }; static const unsigned char xdh_wei448_2449_privkey[] = { 0xcc, 0x78, 0x1a, 0x9d, 0xd0, 0xb1, 0x32, 0x1a, 0x4f, 0xf4, 0x4d, 0x3a, 0x97, 0xa8, 0x2f, 0xd4, 0x3b, 0x8b, 0xf4, 0xd4, 0x46, 0xa1, 0xef, 0x32, 0xa2, 0x14, 0x76, 0x48, 0xf3, 0x99, 0xd9, 0xae, 0x66, 0xcd, 0xf9, 0x55, 0x5d, 0xf5, 0xc2, 0xa9, 0xe3, 0xab, 0x33, 0x00, 0x46, 0x2a, 0x52, 0x20, 0x14, 0x11, 0x09, 0x0c, 0x76, 0x4f, 0x4e, 0xf2, }; static const unsigned char xdh_wei448_2449_sharedsecret[] = { 0xb9, 0x0c, 0x03, 0x5c, 0xfe, 0x44, 0xce, 0x40, 0x0c, 0x66, 0xe3, 0xa0, 0x90, 0x32, 0x85, 0x6d, 0x56, 0x74, 0x49, 0xbd, 0x98, 0x8d, 0xbf, 0xa0, 0x52, 0xee, 0x8f, 0xf0, 0x8b, 0xd0, 0x47, 0xc2, 0x94, 0xb7, 0xbe, 0x90, 0xb2, 0x8b, 0xa8, 0x90, 0xaf, 0x46, 0x1b, 0xaa, 0xba, 0xd2, 0xcb, 0x0e, 0x31, 0x1a, 0x12, 0xe6, 0xa2, 0xc5, 0x93, 0x3d, }; static const wycheproof_xdh_test xdh_wei448_2449 = { .name = "xdh_wei448_2449", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2449_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2449_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2449_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 377 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2450 for XDH, tcId is 378 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2450_peerpubkey[] = { 0xf2, 0xf5, 0xf2, 0xc7, 0xc6, 0xe5, 0x79, 0x77, 0x67, 0x11, 0x59, 0x10, 0x82, 0xad, 0xf2, 0x9e, 0xa2, 0xec, 0x35, 0x96, 0xdb, 0x73, 0xa0, 0xda, 0xf8, 0x67, 0x0a, 0x4f, 0xab, 0x96, 0x0f, 0x74, 0xa4, 0x8e, 0xb3, 0xd3, 0xab, 0x6d, 0x6e, 0x1e, 0xa9, 0x49, 0x71, 0x80, 0x9f, 0x42, 0xb8, 0x38, 0x72, 0x8e, 0xc9, 0x9e, 0xd4, 0xe8, 0xa9, 0xaa, }; static const unsigned char xdh_wei448_2450_privkey[] = { 0xfc, 0x9d, 0xee, 0x93, 0x89, 0x06, 0x11, 0xc1, 0x15, 0x21, 0xce, 0x1f, 0x22, 0x7a, 0x66, 0xb4, 0xab, 0xd8, 0x05, 0x7c, 0x76, 0xff, 0x83, 0x82, 0x78, 0xc9, 0xa6, 0x28, 0xe4, 0x46, 0xfc, 0x20, 0xc3, 0xcd, 0xc3, 0x85, 0x61, 0x2e, 0x84, 0xd2, 0xe4, 0x70, 0xbf, 0xf8, 0x0e, 0xef, 0x57, 0x05, 0x14, 0x59, 0x5b, 0x35, 0xbc, 0x1a, 0x13, 0xe6, }; static const unsigned char xdh_wei448_2450_sharedsecret[] = { 0x3b, 0x80, 0x35, 0xf4, 0x81, 0x6c, 0xce, 0x9a, 0xdf, 0xfa, 0x75, 0x50, 0x82, 0x51, 0x96, 0x84, 0x06, 0x25, 0x29, 0xe5, 0x07, 0x46, 0x66, 0xf6, 0xc3, 0x19, 0x5a, 0xf6, 0x26, 0xb7, 0x34, 0xdd, 0x3a, 0x9c, 0xc7, 0xfd, 0xdf, 0xd0, 0x10, 0xbf, 0xb9, 0x00, 0xe9, 0x59, 0x29, 0x29, 0xa6, 0xc8, 0x72, 0x5d, 0x60, 0xdf, 0x6f, 0xcc, 0xbe, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2450 = { .name = "xdh_wei448_2450", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2450_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2450_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2450_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 378 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2451 for XDH, tcId is 379 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2451_peerpubkey[] = { 0x6c, 0xef, 0x89, 0x65, 0x3c, 0xcc, 0x19, 0x99, 0xa5, 0x98, 0x0a, 0x53, 0x7a, 0x2d, 0xa8, 0x26, 0xdd, 0x9d, 0xd0, 0xa3, 0xba, 0x4a, 0xa3, 0xd4, 0x0b, 0x53, 0xd4, 0xe2, 0x1e, 0xa7, 0x44, 0xb1, 0xe9, 0x89, 0x30, 0x79, 0x2b, 0x34, 0xd7, 0x4b, 0x7e, 0x81, 0x7f, 0x15, 0xbb, 0x2c, 0x06, 0x6f, 0x40, 0xbb, 0xab, 0x05, 0x7a, 0xac, 0x9a, 0x40, }; static const unsigned char xdh_wei448_2451_privkey[] = { 0xd8, 0xe1, 0x3c, 0x43, 0xed, 0x11, 0x43, 0x13, 0xd2, 0x3c, 0x04, 0xe5, 0x12, 0xad, 0x78, 0x20, 0x30, 0xcf, 0x65, 0xaa, 0x10, 0xbe, 0x0f, 0x43, 0x05, 0x03, 0x91, 0xe3, 0xfe, 0x2e, 0x3a, 0x55, 0x69, 0x7d, 0x24, 0x58, 0xff, 0xec, 0x4c, 0x8f, 0x66, 0x41, 0x4f, 0x69, 0xd9, 0x6f, 0x72, 0x5e, 0xe2, 0x37, 0xe8, 0xb7, 0x12, 0x54, 0x5c, 0xe4, }; static const unsigned char xdh_wei448_2451_sharedsecret[] = { 0xe6, 0x26, 0x59, 0x62, 0x59, 0x1d, 0x6a, 0xf3, 0x76, 0x1e, 0xc7, 0xea, 0xfb, 0x52, 0x2b, 0x0e, 0x1e, 0x49, 0x3e, 0x6d, 0xb8, 0xae, 0x41, 0xff, 0xeb, 0x89, 0xb9, 0xa0, 0xa4, 0xe8, 0xc7, 0x1a, 0x87, 0x29, 0xa7, 0xe2, 0x4e, 0xfd, 0x41, 0x3a, 0x18, 0x17, 0x8c, 0xf0, 0x6d, 0xd4, 0x0d, 0xf4, 0xde, 0x7e, 0xcd, 0x39, 0x7f, 0x00, 0xb6, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_2451 = { .name = "xdh_wei448_2451", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2451_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2451_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2451_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 379 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2452 for XDH, tcId is 380 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2452_peerpubkey[] = { 0x19, 0xe5, 0x81, 0xec, 0xc7, 0x9d, 0x67, 0xd1, 0x56, 0x90, 0x89, 0x3a, 0xe6, 0x76, 0x39, 0xa6, 0x8e, 0x66, 0xb9, 0x25, 0x26, 0x77, 0xc8, 0x9a, 0xa6, 0x6b, 0x57, 0xd9, 0x69, 0xcd, 0xbf, 0x99, 0xec, 0x66, 0xec, 0x96, 0x4c, 0x02, 0x5a, 0xef, 0xa0, 0x81, 0x7f, 0xcf, 0xb7, 0x68, 0x9f, 0xb4, 0x77, 0x05, 0x51, 0x29, 0xe7, 0x7c, 0xe8, 0x92, }; static const unsigned char xdh_wei448_2452_privkey[] = { 0x94, 0x6e, 0x8d, 0x97, 0x47, 0x43, 0x26, 0xca, 0x14, 0xb1, 0xf8, 0x5b, 0x64, 0xfb, 0x22, 0xf7, 0xf6, 0xae, 0xec, 0xe2, 0x75, 0x9b, 0xfe, 0xc0, 0x33, 0x7d, 0x80, 0xab, 0xb8, 0x98, 0xd8, 0x57, 0xf9, 0xda, 0x52, 0x84, 0xff, 0x68, 0x8c, 0xec, 0x5e, 0x5d, 0xc9, 0x62, 0xeb, 0x01, 0x1f, 0x42, 0xd1, 0x57, 0x71, 0xc1, 0xaa, 0x89, 0xc4, 0xea, }; static const unsigned char xdh_wei448_2452_sharedsecret[] = { 0x33, 0x19, 0x0b, 0x5c, 0xd0, 0x3a, 0x49, 0x6f, 0xa9, 0xfb, 0xe8, 0x3f, 0x0d, 0x6c, 0x4a, 0x06, 0xe1, 0xf7, 0xc0, 0x3a, 0xb6, 0xb3, 0xf4, 0x1e, 0x83, 0x6c, 0x25, 0x20, 0xaf, 0x79, 0xd1, 0x5c, 0x8e, 0xd3, 0x64, 0xe2, 0x7d, 0x85, 0x44, 0x6d, 0x87, 0x4d, 0x08, 0x98, 0xee, 0xc5, 0xb9, 0xa5, 0xb0, 0xd7, 0x81, 0x17, 0x6c, 0xa6, 0xc3, 0x35, }; static const wycheproof_xdh_test xdh_wei448_2452 = { .name = "xdh_wei448_2452", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2452_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2452_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2452_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 380 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2453 for XDH, tcId is 381 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2453_peerpubkey[] = { 0x13, 0x98, 0x9f, 0x93, 0x44, 0xc1, 0x10, 0xfb, 0x0a, 0x21, 0x6a, 0x23, 0x37, 0xc5, 0x3a, 0xde, 0xd3, 0x39, 0xd8, 0x60, 0x01, 0xe5, 0xc0, 0x0f, 0xc8, 0x83, 0x31, 0x34, 0x99, 0xb4, 0xc1, 0x17, 0x48, 0x7f, 0xf4, 0x9f, 0xcd, 0xa1, 0xc3, 0x6a, 0xc0, 0x80, 0xb2, 0xa5, 0xed, 0xf0, 0xe6, 0x28, 0x26, 0xce, 0x01, 0x6b, 0x7b, 0x68, 0xf6, 0xa0, }; static const unsigned char xdh_wei448_2453_privkey[] = { 0xcc, 0xb9, 0xda, 0x3c, 0x63, 0xe1, 0xed, 0xc2, 0x88, 0x4e, 0x19, 0xd8, 0xd1, 0x04, 0x0d, 0x9d, 0xd6, 0x82, 0x90, 0xd2, 0xec, 0xfc, 0xe7, 0xf9, 0xb1, 0xcd, 0x5c, 0xb1, 0x3d, 0xc3, 0xa5, 0xf3, 0x5d, 0x15, 0x0b, 0x39, 0x95, 0xdd, 0x76, 0xa1, 0x36, 0x33, 0xbe, 0xed, 0x2f, 0xed, 0xed, 0x76, 0x4b, 0x78, 0x73, 0xaf, 0xb6, 0x5c, 0xf6, 0xee, }; static const unsigned char xdh_wei448_2453_sharedsecret[] = { 0xdc, 0x25, 0x69, 0x06, 0xd9, 0x5f, 0x81, 0xe3, 0x0d, 0x47, 0x72, 0xc7, 0xaa, 0xd6, 0xb1, 0x4e, 0xc1, 0xe3, 0x1e, 0x62, 0x17, 0x31, 0x9a, 0x91, 0xaa, 0xc3, 0xbe, 0x8a, 0x36, 0x0e, 0x5d, 0x9a, 0x7e, 0x05, 0x15, 0xc6, 0x93, 0xfd, 0x99, 0x9f, 0x28, 0x88, 0x3d, 0x4b, 0xf8, 0xa8, 0xc6, 0x71, 0x66, 0x8a, 0xce, 0x30, 0xb7, 0x20, 0x8c, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_2453 = { .name = "xdh_wei448_2453", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2453_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2453_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2453_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 381 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2454 for XDH, tcId is 382 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2454_peerpubkey[] = { 0x92, 0x91, 0xf9, 0x26, 0x89, 0x0a, 0xa8, 0x69, 0x69, 0x97, 0x8c, 0x09, 0xe9, 0xec, 0xad, 0x96, 0x86, 0x65, 0x7f, 0x45, 0x1c, 0x93, 0x1e, 0xbe, 0x37, 0x49, 0x8d, 0xcb, 0x0e, 0x02, 0x80, 0x41, 0xe8, 0x44, 0x7f, 0x91, 0xfd, 0x87, 0x34, 0x77, 0xb4, 0x57, 0xcb, 0xd9, 0xa3, 0x93, 0x2f, 0xb2, 0x87, 0xf9, 0x45, 0xfe, 0x72, 0x13, 0xfc, 0xa4, }; static const unsigned char xdh_wei448_2454_privkey[] = { 0xf8, 0x7e, 0x2a, 0x3f, 0xea, 0x7e, 0x8a, 0xd5, 0xa3, 0xd2, 0x5b, 0xf6, 0x6d, 0xc3, 0x12, 0x36, 0x27, 0x9b, 0xdb, 0xc5, 0x9b, 0xf6, 0x1c, 0x47, 0x93, 0x0c, 0x49, 0x56, 0xf2, 0x2e, 0x02, 0xc0, 0x76, 0x7e, 0x55, 0xd1, 0xdd, 0xf3, 0x79, 0xce, 0x4e, 0x2d, 0x9c, 0x6b, 0xd3, 0x8a, 0xc6, 0x9e, 0x02, 0x4b, 0x2d, 0x9c, 0xfb, 0x18, 0x16, 0xe9, }; static const unsigned char xdh_wei448_2454_sharedsecret[] = { 0x67, 0x93, 0x1b, 0x5e, 0x94, 0x7f, 0x47, 0x9c, 0x05, 0xb0, 0x6f, 0x5d, 0x25, 0x6e, 0xa9, 0xe3, 0x55, 0x95, 0x06, 0x00, 0xc8, 0x04, 0xd9, 0xac, 0xca, 0x2e, 0x1a, 0x18, 0xc7, 0x1e, 0x54, 0xf4, 0x40, 0xaa, 0x5b, 0x1c, 0xaa, 0xae, 0x40, 0xda, 0x81, 0x52, 0x88, 0x84, 0xed, 0xd7, 0x1c, 0x59, 0x32, 0x98, 0x1b, 0x03, 0x98, 0x62, 0xe6, 0xde, }; static const wycheproof_xdh_test xdh_wei448_2454 = { .name = "xdh_wei448_2454", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2454_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2454_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2454_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 382 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2455 for XDH, tcId is 383 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2455_peerpubkey[] = { 0xe7, 0x89, 0x23, 0x79, 0x43, 0xcb, 0xb6, 0xb6, 0x38, 0xa2, 0xc9, 0x0d, 0x1c, 0x66, 0xb9, 0x28, 0x68, 0x50, 0xa6, 0xb7, 0xb4, 0x1e, 0x43, 0xc8, 0xa6, 0x52, 0x5d, 0x98, 0x04, 0x26, 0x48, 0xfe, 0x16, 0x2b, 0x61, 0xe1, 0x99, 0xba, 0x04, 0x1a, 0x95, 0xe7, 0x1d, 0x79, 0xb1, 0xbf, 0xb8, 0x11, 0x9b, 0x35, 0xa1, 0x44, 0xec, 0xea, 0xc5, 0xf4, }; static const unsigned char xdh_wei448_2455_privkey[] = { 0x78, 0xeb, 0xd7, 0x26, 0x1f, 0x71, 0xc5, 0x3b, 0x04, 0xae, 0x01, 0x87, 0xa6, 0x6c, 0x83, 0x33, 0x67, 0x38, 0x3e, 0x8c, 0x80, 0x2c, 0xf6, 0x55, 0xb2, 0x74, 0xb5, 0xbd, 0x7c, 0x5c, 0x07, 0x28, 0x72, 0xa3, 0xe5, 0xd2, 0xf7, 0xc1, 0x34, 0x47, 0x53, 0xc8, 0xec, 0xc6, 0x8b, 0xc3, 0xfc, 0xea, 0xec, 0xca, 0xca, 0xfd, 0x72, 0x91, 0x39, 0xf0, }; static const unsigned char xdh_wei448_2455_sharedsecret[] = { 0x6f, 0x8f, 0xa9, 0xae, 0xdd, 0x0e, 0x3d, 0xec, 0x31, 0x88, 0x9e, 0x77, 0x51, 0xb9, 0x37, 0x8b, 0xcc, 0x1b, 0xf2, 0xd7, 0xbb, 0x08, 0x22, 0xfe, 0x5d, 0x76, 0x36, 0x10, 0xee, 0x41, 0xd3, 0xd3, 0xe8, 0xb4, 0x04, 0x44, 0x6f, 0x45, 0x6a, 0xf9, 0xe9, 0xed, 0x1c, 0x83, 0x1e, 0x84, 0x62, 0xee, 0x1a, 0xb2, 0x4f, 0x77, 0x18, 0xc6, 0xc9, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2455 = { .name = "xdh_wei448_2455", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2455_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2455_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2455_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 383 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2456 for XDH, tcId is 384 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2456_peerpubkey[] = { 0x13, 0x32, 0xb9, 0xb6, 0x78, 0x2e, 0x4c, 0x90, 0x03, 0xc7, 0xfa, 0x28, 0x3b, 0xda, 0x21, 0x46, 0x83, 0x72, 0xb2, 0x52, 0x1e, 0xe7, 0xfd, 0xe4, 0x78, 0x5d, 0xde, 0x62, 0x54, 0x7a, 0x98, 0x4e, 0x95, 0x64, 0xb8, 0xcb, 0x8a, 0x88, 0x9c, 0x9f, 0x18, 0xaf, 0xd1, 0xa2, 0xaa, 0x41, 0xa8, 0x8a, 0xfc, 0x14, 0x43, 0x6b, 0x1f, 0xe0, 0x2d, 0x69, }; static const unsigned char xdh_wei448_2456_privkey[] = { 0xe0, 0xce, 0x4d, 0xea, 0xa0, 0x83, 0xdc, 0x1c, 0xa7, 0x92, 0x7b, 0xb9, 0x1f, 0x6a, 0x76, 0xe5, 0x6e, 0x3b, 0x17, 0xe9, 0x72, 0x4d, 0xc5, 0x53, 0x4c, 0xd9, 0x5e, 0x53, 0x52, 0x21, 0xcc, 0xf2, 0x30, 0xe6, 0x51, 0x10, 0xda, 0x23, 0x75, 0x77, 0x28, 0xd8, 0x0c, 0x25, 0x84, 0x3b, 0x6d, 0xfe, 0x02, 0x2e, 0xa7, 0xe6, 0x6b, 0xed, 0x39, 0xe8, }; static const unsigned char xdh_wei448_2456_sharedsecret[] = { 0x4e, 0x35, 0xa6, 0x77, 0xd7, 0x5f, 0x81, 0x40, 0x80, 0x42, 0x69, 0x54, 0xa3, 0x1b, 0x7d, 0x91, 0xc3, 0x6c, 0x58, 0x36, 0x52, 0x4e, 0xee, 0xe4, 0x13, 0x8c, 0x7c, 0x42, 0x15, 0xbb, 0x86, 0x65, 0x1a, 0x40, 0x81, 0xf7, 0x57, 0x8b, 0x70, 0x8a, 0xaf, 0x53, 0x85, 0xe8, 0xf1, 0x95, 0x07, 0xa0, 0x3a, 0xf6, 0x49, 0xf9, 0x17, 0x99, 0x08, 0xca, }; static const wycheproof_xdh_test xdh_wei448_2456 = { .name = "xdh_wei448_2456", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2456_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2456_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2456_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 384 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2457 for XDH, tcId is 385 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2457_peerpubkey[] = { 0xbd, 0xd1, 0x80, 0xb5, 0xf6, 0xbb, 0x4f, 0xdc, 0xb2, 0x28, 0x8e, 0x45, 0x93, 0x8f, 0x0b, 0xfc, 0x5f, 0x9d, 0xa2, 0x58, 0x6a, 0xa8, 0xd5, 0x0d, 0x77, 0x1e, 0xbd, 0x50, 0xf5, 0x71, 0xd0, 0xea, 0xbb, 0xfe, 0xae, 0xa7, 0x7a, 0x0b, 0x6c, 0xbc, 0xd7, 0x15, 0xab, 0x56, 0x35, 0xd6, 0xc6, 0x22, 0xab, 0x2f, 0x6a, 0x68, 0x80, 0x96, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_2457_privkey[] = { 0x20, 0x40, 0x9b, 0x40, 0x15, 0xd8, 0x73, 0x1f, 0x86, 0xbe, 0x47, 0xdb, 0xc0, 0x7d, 0x26, 0x87, 0xf0, 0x9a, 0x38, 0x01, 0x39, 0x6a, 0xfd, 0x94, 0xcf, 0x39, 0xe6, 0xf7, 0x46, 0x25, 0x35, 0xd7, 0x94, 0x0e, 0xcb, 0xbc, 0xf8, 0x58, 0xb3, 0xd9, 0x8e, 0xc0, 0x95, 0xb4, 0xfd, 0x52, 0x54, 0x81, 0xb4, 0xd3, 0x2d, 0xc8, 0xb8, 0x3a, 0x76, 0xe4, }; static const unsigned char xdh_wei448_2457_sharedsecret[] = { 0xaa, 0x2a, 0xeb, 0x87, 0x18, 0x6d, 0x27, 0x52, 0x89, 0xb4, 0x73, 0x54, 0x03, 0xc3, 0xb0, 0xf4, 0x13, 0x09, 0xa8, 0x6f, 0xcb, 0x26, 0xf9, 0xb9, 0x12, 0x16, 0x0a, 0xe5, 0x5b, 0xeb, 0xe8, 0x85, 0x4b, 0x63, 0x3f, 0xe3, 0x57, 0x84, 0x63, 0xec, 0x1e, 0x74, 0x80, 0x2d, 0xeb, 0x1d, 0x76, 0x1f, 0x77, 0x23, 0x71, 0xbf, 0x6d, 0xf2, 0x4d, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2457 = { .name = "xdh_wei448_2457", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2457_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2457_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2457_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 385 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2458 for XDH, tcId is 386 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2458_peerpubkey[] = { 0xd9, 0x26, 0x35, 0xc4, 0x3c, 0x6b, 0x8e, 0xe5, 0x2f, 0xc0, 0x30, 0x1c, 0x76, 0x01, 0xee, 0x9d, 0xcb, 0x10, 0x71, 0xf2, 0xf0, 0x51, 0x55, 0xc3, 0x13, 0xcc, 0x3a, 0x5e, 0xa2, 0xa0, 0x81, 0xbd, 0xfc, 0xd6, 0x1c, 0xde, 0x45, 0xb3, 0x94, 0x01, 0x7c, 0xa3, 0x2c, 0xc5, 0x14, 0xc4, 0x66, 0x5a, 0x5a, 0xc9, 0xc6, 0xcf, 0x5c, 0x29, 0xc2, 0xe6, }; static const unsigned char xdh_wei448_2458_privkey[] = { 0x6c, 0x4b, 0xaf, 0xc2, 0x7a, 0x17, 0x46, 0xea, 0xf9, 0x19, 0xe2, 0x57, 0xb6, 0xeb, 0xc6, 0x17, 0x75, 0x37, 0x8f, 0xc4, 0x08, 0x24, 0x52, 0xf4, 0x93, 0x70, 0x09, 0x68, 0x51, 0x3e, 0x17, 0x57, 0x8d, 0x9f, 0x1e, 0xe7, 0x9e, 0x7a, 0x8c, 0x52, 0x9a, 0xb9, 0x70, 0x21, 0x7a, 0xbc, 0x1c, 0x4b, 0xb5, 0xf4, 0xd1, 0x6c, 0x0a, 0x3a, 0x3b, 0xf3, }; static const unsigned char xdh_wei448_2458_sharedsecret[] = { 0x3d, 0x2a, 0x86, 0x0f, 0xb7, 0xef, 0x56, 0xdf, 0xc8, 0x5a, 0x92, 0x24, 0xde, 0x7c, 0xf2, 0x6f, 0x09, 0xe7, 0x04, 0x38, 0x1a, 0x81, 0xe9, 0x9c, 0xc1, 0xb8, 0xb1, 0x71, 0xaa, 0x95, 0x3d, 0x20, 0x1c, 0x8c, 0x6a, 0x2f, 0xd2, 0xd9, 0xba, 0x08, 0xf2, 0x88, 0x31, 0xd4, 0x23, 0xc6, 0xb8, 0xe3, 0x31, 0xa5, 0xad, 0x12, 0xf0, 0x05, 0xfe, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_2458 = { .name = "xdh_wei448_2458", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2458_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2458_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2458_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 386 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2459 for XDH, tcId is 387 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2459_peerpubkey[] = { 0x89, 0x1b, 0x7d, 0x3d, 0x80, 0x11, 0x71, 0xc4, 0xc5, 0x83, 0x95, 0x2a, 0xa9, 0x3e, 0x29, 0x80, 0xed, 0x5e, 0x29, 0xc3, 0xbb, 0xaf, 0x82, 0x26, 0xd6, 0xf7, 0x9c, 0xb6, 0x86, 0x67, 0x90, 0x58, 0x04, 0x5f, 0xd5, 0x07, 0x57, 0xaa, 0x58, 0x82, 0x75, 0x3d, 0xa4, 0x74, 0x8f, 0xf1, 0x19, 0xf6, 0xe7, 0xeb, 0xd8, 0x92, 0xbe, 0x28, 0xd9, 0xf2, }; static const unsigned char xdh_wei448_2459_privkey[] = { 0x64, 0x4f, 0xf7, 0xf2, 0x64, 0xe2, 0x1d, 0x0a, 0x84, 0x65, 0xaf, 0x22, 0x40, 0x2b, 0xa6, 0xb7, 0x35, 0x8c, 0x4c, 0x6c, 0xf2, 0x9d, 0x9a, 0xc8, 0x98, 0xce, 0x40, 0xf6, 0x6c, 0xc8, 0x60, 0xce, 0x48, 0xf1, 0xea, 0xf8, 0x6d, 0xc5, 0x44, 0x61, 0xed, 0x06, 0xf4, 0x8b, 0x3e, 0x5d, 0xae, 0x17, 0x2d, 0x21, 0x20, 0x12, 0x51, 0x47, 0x3c, 0xec, }; static const unsigned char xdh_wei448_2459_sharedsecret[] = { 0xce, 0x34, 0xa2, 0x34, 0x63, 0x77, 0x27, 0x43, 0x04, 0xdf, 0xde, 0xcd, 0x29, 0xe3, 0xd9, 0x85, 0xdb, 0x46, 0x08, 0x85, 0xad, 0x09, 0xf9, 0xaf, 0x4c, 0x22, 0xd9, 0x8f, 0xef, 0x11, 0x71, 0xc4, 0x1b, 0xdb, 0xba, 0xd0, 0xf2, 0x18, 0xb9, 0x8a, 0x9f, 0xc5, 0x73, 0x36, 0x97, 0x79, 0xc0, 0x62, 0xbb, 0x1a, 0xe3, 0x96, 0xd3, 0xe4, 0x1e, 0x81, }; static const wycheproof_xdh_test xdh_wei448_2459 = { .name = "xdh_wei448_2459", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2459_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2459_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2459_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 387 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2460 for XDH, tcId is 388 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2460_peerpubkey[] = { 0x6a, 0x69, 0x95, 0xb0, 0xdd, 0x8f, 0x5e, 0x3f, 0x7f, 0x1a, 0xbe, 0x7e, 0x4f, 0x60, 0xbc, 0xad, 0xe6, 0x89, 0x93, 0x3f, 0x17, 0xc3, 0xd2, 0xf7, 0xf9, 0x39, 0x88, 0x88, 0x4e, 0x1b, 0x73, 0xb7, 0x8f, 0x6f, 0x47, 0x1d, 0x8a, 0x71, 0xe4, 0x2a, 0xce, 0x69, 0x79, 0xa4, 0xe8, 0x48, 0xf6, 0x77, 0x9b, 0xab, 0xa0, 0xff, 0x27, 0x90, 0xc9, 0x7f, }; static const unsigned char xdh_wei448_2460_privkey[] = { 0x98, 0x13, 0x04, 0x32, 0x48, 0xa6, 0x11, 0xef, 0xa9, 0xc0, 0x05, 0xfe, 0x3a, 0xda, 0x01, 0xa4, 0x1f, 0x15, 0x68, 0x49, 0x0f, 0x1f, 0x62, 0x79, 0x1e, 0xf8, 0x41, 0x4c, 0x35, 0x74, 0xd8, 0xf5, 0x26, 0xde, 0x49, 0x1e, 0xc2, 0x5c, 0xd2, 0x62, 0x81, 0xb8, 0x4d, 0xe2, 0x22, 0x2a, 0x4c, 0xc8, 0x79, 0xd1, 0xb4, 0xdf, 0x56, 0x74, 0xe2, 0xf2, }; static const unsigned char xdh_wei448_2460_sharedsecret[] = { 0x4d, 0x43, 0x25, 0xab, 0xa1, 0xd4, 0x5a, 0x6d, 0xa8, 0x5b, 0x2c, 0x27, 0xb4, 0xad, 0x6e, 0x65, 0xde, 0x71, 0x0f, 0x26, 0x4d, 0x5b, 0x5d, 0x0f, 0x24, 0x14, 0x77, 0x49, 0xfe, 0x33, 0x51, 0x00, 0x47, 0x60, 0xb0, 0xe3, 0x8c, 0x82, 0xdc, 0x44, 0x78, 0xc4, 0xdd, 0x74, 0x02, 0xc6, 0xe2, 0xe0, 0x59, 0xd5, 0x0e, 0xf6, 0x54, 0xef, 0x7a, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_2460 = { .name = "xdh_wei448_2460", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2460_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2460_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2460_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 388 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2461 for XDH, tcId is 389 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2461_peerpubkey[] = { 0x00, 0xb9, 0x57, 0x35, 0x08, 0x52, 0xc5, 0xb1, 0xdd, 0x62, 0x92, 0x21, 0xe4, 0x3f, 0x90, 0xce, 0x3c, 0xd1, 0x76, 0x1e, 0x59, 0x1e, 0x4b, 0x75, 0x44, 0xdb, 0x5d, 0x23, 0xca, 0x54, 0xca, 0x49, 0x90, 0xdf, 0xaf, 0x22, 0x70, 0x83, 0xe9, 0xcf, 0x61, 0x3e, 0x3c, 0x6a, 0xb7, 0x0d, 0x31, 0x67, 0x91, 0x12, 0x92, 0x71, 0x6d, 0x10, 0x48, 0xa9, }; static const unsigned char xdh_wei448_2461_privkey[] = { 0x74, 0x11, 0xca, 0x7f, 0x71, 0x79, 0xef, 0x67, 0x3a, 0x6e, 0x2a, 0xcb, 0x8c, 0x61, 0x4f, 0x8d, 0xcf, 0x19, 0xf5, 0x64, 0x63, 0x16, 0x65, 0x14, 0x1f, 0x69, 0xec, 0xa5, 0xe1, 0xe1, 0xe8, 0xc8, 0x28, 0x73, 0xd6, 0x57, 0xa2, 0x63, 0xf0, 0x2c, 0xfb, 0xa3, 0xc5, 0x06, 0xe7, 0x03, 0x8d, 0xb4, 0x65, 0xea, 0x28, 0xbd, 0x6e, 0x1f, 0xb7, 0xff, }; static const unsigned char xdh_wei448_2461_sharedsecret[] = { 0xe1, 0x3f, 0x6c, 0x6b, 0x4b, 0x46, 0x94, 0x46, 0x71, 0x29, 0x7e, 0x50, 0x92, 0x65, 0x21, 0xf2, 0x2a, 0xc1, 0x73, 0xc9, 0x05, 0x6d, 0x94, 0x10, 0x64, 0xcd, 0x2a, 0xa6, 0x05, 0x21, 0x38, 0x7d, 0x06, 0x08, 0xf3, 0xba, 0x2e, 0xbc, 0xe9, 0x5c, 0xf2, 0x6e, 0x9b, 0x06, 0x0e, 0x67, 0x72, 0x58, 0x55, 0xc7, 0xb5, 0xb9, 0xea, 0x35, 0x24, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_2461 = { .name = "xdh_wei448_2461", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2461_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2461_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2461_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 389 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2462 for XDH, tcId is 390 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2462_peerpubkey[] = { 0x9d, 0x65, 0xe5, 0x0f, 0xf2, 0xf1, 0xb0, 0x71, 0x35, 0x75, 0xcc, 0x01, 0xbd, 0x43, 0xfb, 0x35, 0x5e, 0xe9, 0xd3, 0x74, 0x2d, 0x1e, 0xd3, 0x17, 0xdf, 0x8e, 0x4d, 0x32, 0x42, 0x58, 0xdd, 0x0b, 0xeb, 0xf0, 0x78, 0x33, 0xa9, 0xf0, 0x0d, 0x5e, 0x4c, 0xfe, 0xe7, 0x46, 0x9e, 0x44, 0x60, 0x1d, 0x52, 0x70, 0x09, 0x06, 0x39, 0x41, 0x96, 0xb1, }; static const unsigned char xdh_wei448_2462_privkey[] = { 0x60, 0xb8, 0x2b, 0x40, 0x07, 0xd7, 0x0e, 0x09, 0x12, 0x52, 0x73, 0x44, 0xc1, 0x86, 0x33, 0x0f, 0x2a, 0xb0, 0x27, 0x7a, 0xa6, 0x0a, 0x1d, 0xae, 0x65, 0x60, 0xc4, 0x19, 0xb0, 0x46, 0x13, 0xbf, 0xf4, 0x30, 0x2a, 0xe8, 0x2d, 0x01, 0x96, 0xc0, 0xaa, 0x9b, 0xf5, 0x40, 0xfa, 0xe1, 0x66, 0xb8, 0xd6, 0x6f, 0xdd, 0x6a, 0xa2, 0x46, 0x50, 0xf6, }; static const unsigned char xdh_wei448_2462_sharedsecret[] = { 0x04, 0xe5, 0xb0, 0x68, 0x04, 0x8b, 0x70, 0x44, 0x6a, 0x43, 0x5b, 0xbb, 0x45, 0xb0, 0x33, 0x8f, 0x74, 0x8e, 0xfe, 0x5e, 0xf1, 0x0d, 0x43, 0x67, 0x70, 0xeb, 0x27, 0xd2, 0x91, 0xcb, 0xbc, 0x5b, 0x45, 0x25, 0x8d, 0xeb, 0xa0, 0xfe, 0xe1, 0x21, 0x40, 0x1d, 0xd3, 0x6a, 0x13, 0x49, 0xe0, 0x76, 0xb9, 0xc1, 0xb2, 0x7d, 0x3b, 0x8a, 0x46, 0x07, }; static const wycheproof_xdh_test xdh_wei448_2462 = { .name = "xdh_wei448_2462", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2462_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2462_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2462_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 390 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2463 for XDH, tcId is 391 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2463_peerpubkey[] = { 0xbb, 0xf7, 0x50, 0x4e, 0xb0, 0xa3, 0x4c, 0x8e, 0xcc, 0x11, 0x04, 0x30, 0x1c, 0x81, 0xb4, 0x91, 0xb3, 0xf7, 0xb5, 0x64, 0xa5, 0xcb, 0x69, 0x16, 0xbc, 0xdd, 0x9c, 0x8f, 0xb0, 0x88, 0xe7, 0x5e, 0x48, 0xdf, 0x31, 0x98, 0xbd, 0xad, 0x7f, 0x2c, 0xe1, 0xc6, 0x8a, 0xcc, 0x98, 0x97, 0xf0, 0x02, 0x2a, 0x86, 0xb9, 0x6a, 0x67, 0xf4, 0xd6, 0xc8, }; static const unsigned char xdh_wei448_2463_privkey[] = { 0x94, 0xf8, 0x33, 0x1a, 0x59, 0x95, 0x8a, 0xb4, 0xf0, 0xb9, 0x7d, 0xce, 0x96, 0xb0, 0x05, 0x30, 0x1a, 0xa4, 0x81, 0x96, 0xa0, 0xd5, 0x90, 0x87, 0x58, 0xc3, 0xea, 0x6d, 0x62, 0x5c, 0x76, 0xe9, 0x88, 0x47, 0x93, 0x7a, 0x6f, 0x79, 0x55, 0x80, 0x3f, 0x6c, 0xdc, 0xc9, 0xea, 0x3e, 0x62, 0xde, 0x8e, 0xa0, 0xf3, 0x0a, 0x1c, 0xfc, 0xc3, 0xe4, }; static const unsigned char xdh_wei448_2463_sharedsecret[] = { 0x36, 0xe2, 0x06, 0x5d, 0xce, 0x60, 0x37, 0xb3, 0x34, 0x12, 0x60, 0xb4, 0x48, 0x76, 0x36, 0xb9, 0x46, 0x06, 0x88, 0x73, 0x1c, 0xfb, 0x85, 0xa3, 0x95, 0x18, 0x73, 0xb2, 0x7e, 0x2f, 0x0f, 0xea, 0x5e, 0xe4, 0xd1, 0xaa, 0xf7, 0x5c, 0xdf, 0x97, 0x12, 0xef, 0xf7, 0x01, 0x82, 0x34, 0x27, 0x11, 0x11, 0x41, 0x70, 0x2d, 0xd6, 0x04, 0xd6, 0x46, }; static const wycheproof_xdh_test xdh_wei448_2463 = { .name = "xdh_wei448_2463", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2463_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2463_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2463_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 391 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2464 for XDH, tcId is 392 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2464_peerpubkey[] = { 0x84, 0x36, 0xa6, 0xa8, 0xe8, 0xf1, 0xcb, 0x2d, 0x0a, 0xa5, 0x6f, 0x0b, 0x03, 0xde, 0xf5, 0x08, 0xe2, 0x3d, 0x33, 0xc2, 0xd3, 0xa3, 0x44, 0x5c, 0x82, 0xc8, 0x19, 0x77, 0xd0, 0xca, 0xca, 0xeb, 0xae, 0x19, 0x3c, 0x86, 0x73, 0x21, 0xcd, 0xdd, 0x9b, 0xb8, 0x6e, 0x0b, 0x50, 0x4a, 0x1f, 0x59, 0x2a, 0x46, 0xea, 0x8d, 0xc4, 0x20, 0xa1, 0x00, }; static const unsigned char xdh_wei448_2464_privkey[] = { 0x1c, 0x3c, 0x5b, 0xda, 0x03, 0x83, 0xf0, 0xbe, 0x2a, 0x78, 0xd1, 0xac, 0x08, 0x84, 0x33, 0x04, 0x3c, 0x51, 0x2c, 0xd4, 0xe4, 0xa5, 0xa8, 0x0a, 0x18, 0xd3, 0x18, 0x3e, 0x19, 0x88, 0xdf, 0x54, 0x85, 0xc8, 0xbe, 0xca, 0x04, 0xa7, 0xd4, 0x4b, 0xed, 0xec, 0x10, 0x27, 0x40, 0xb5, 0xde, 0x33, 0x3e, 0x1a, 0xd6, 0xe9, 0xbc, 0x63, 0xa1, 0x87, }; static const unsigned char xdh_wei448_2464_sharedsecret[] = { 0xb1, 0x96, 0xbb, 0x34, 0xea, 0x5e, 0x74, 0xb7, 0x4c, 0xaa, 0x26, 0x0e, 0x3b, 0x2c, 0x8a, 0x11, 0x0c, 0x22, 0x79, 0xaa, 0x39, 0x37, 0x82, 0x6b, 0x88, 0xbe, 0x58, 0x26, 0xb7, 0xe0, 0xa6, 0xe8, 0xf5, 0xa1, 0x15, 0x0b, 0x7c, 0x13, 0x53, 0xde, 0x1d, 0xf4, 0x7c, 0xe7, 0x27, 0xa2, 0x2f, 0xc9, 0xf4, 0x9c, 0xaa, 0xce, 0x01, 0x0a, 0x9c, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_2464 = { .name = "xdh_wei448_2464", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2464_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2464_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2464_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 392 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2465 for XDH, tcId is 393 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2465_peerpubkey[] = { 0xe6, 0x7c, 0x5f, 0x08, 0xd1, 0x7d, 0x2b, 0xea, 0x11, 0x7c, 0xc4, 0xde, 0xad, 0xac, 0x22, 0x4a, 0x1a, 0xc1, 0xb1, 0x1e, 0x8f, 0xc7, 0xe6, 0x4f, 0xee, 0xc7, 0xf0, 0x8d, 0x0a, 0x5c, 0x25, 0xe2, 0x79, 0x5f, 0x44, 0xfb, 0x97, 0x56, 0x0b, 0xc1, 0xb7, 0xd9, 0x17, 0xdd, 0x70, 0x36, 0xb7, 0x54, 0x7f, 0x6e, 0xd4, 0xe0, 0x0a, 0xb9, 0x98, 0x27, }; static const unsigned char xdh_wei448_2465_privkey[] = { 0x30, 0x48, 0x7a, 0xb4, 0x34, 0x5c, 0xec, 0xd5, 0x27, 0xa8, 0x4f, 0x47, 0x51, 0xb9, 0x0c, 0xba, 0x79, 0x34, 0x24, 0xac, 0xb2, 0x98, 0xaa, 0xd2, 0xcd, 0x86, 0x2d, 0x46, 0x16, 0x5b, 0x8a, 0xfc, 0xa3, 0x02, 0xd8, 0xef, 0xa4, 0x1e, 0x43, 0x85, 0x0c, 0xf5, 0x06, 0x06, 0x1d, 0x21, 0x13, 0xe6, 0x84, 0xd3, 0x6f, 0xdb, 0x04, 0x32, 0x35, 0x8a, }; static const unsigned char xdh_wei448_2465_sharedsecret[] = { 0x89, 0xbf, 0x0c, 0x9d, 0xee, 0x1b, 0xa6, 0xab, 0xad, 0x76, 0xc9, 0xa2, 0xd5, 0x21, 0x0b, 0x62, 0x01, 0xd4, 0xca, 0x34, 0x2a, 0x56, 0xf4, 0x74, 0x54, 0x5f, 0xab, 0x3e, 0x55, 0x2b, 0x50, 0xef, 0x11, 0xe2, 0x1a, 0xec, 0x0a, 0x53, 0xc0, 0x70, 0x23, 0x85, 0x21, 0x8c, 0x68, 0x11, 0x78, 0x1d, 0x31, 0xea, 0x0b, 0x22, 0x88, 0x7f, 0x04, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2465 = { .name = "xdh_wei448_2465", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2465_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2465_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2465_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 393 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2466 for XDH, tcId is 394 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2466_peerpubkey[] = { 0x3e, 0xa6, 0x19, 0xf8, 0x92, 0x8c, 0xaa, 0x40, 0x38, 0x27, 0x58, 0x77, 0xbf, 0xd9, 0x06, 0xbd, 0x08, 0x3b, 0xd1, 0xdd, 0xbd, 0xdb, 0xed, 0xf6, 0xf3, 0xb1, 0x68, 0x29, 0x12, 0x9c, 0xb3, 0xbd, 0xb1, 0x2e, 0x15, 0x6b, 0x99, 0xb1, 0xfb, 0xe6, 0xb5, 0x99, 0xf3, 0xf3, 0xf0, 0xb3, 0x1a, 0xd5, 0x1b, 0x17, 0xb2, 0xfb, 0xb0, 0x48, 0x29, 0x6a, }; static const unsigned char xdh_wei448_2466_privkey[] = { 0xc4, 0x57, 0x27, 0xd6, 0x19, 0x0f, 0x88, 0xe4, 0x1d, 0x36, 0xbe, 0xc9, 0xf3, 0x2f, 0x41, 0xaa, 0xf2, 0x6a, 0x25, 0xc6, 0xfa, 0xfe, 0x8b, 0xa0, 0xc2, 0xd5, 0x30, 0x82, 0xe5, 0x89, 0xa6, 0xcc, 0x04, 0xa4, 0x6c, 0x2a, 0xfe, 0xcb, 0xa7, 0x22, 0x83, 0xe6, 0x08, 0xa1, 0x40, 0x01, 0xec, 0xa8, 0xaa, 0x16, 0x16, 0xa8, 0x0f, 0x7f, 0x14, 0x85, }; static const unsigned char xdh_wei448_2466_sharedsecret[] = { 0x55, 0x6e, 0xc0, 0x50, 0x8a, 0x58, 0xdc, 0xb9, 0xd1, 0x4f, 0x0b, 0x33, 0x01, 0x3a, 0xa7, 0xfd, 0x18, 0xf0, 0x31, 0x4f, 0x17, 0x67, 0x19, 0x64, 0xce, 0x91, 0x45, 0xf5, 0x5a, 0x61, 0x08, 0x89, 0x5f, 0x3b, 0xaf, 0x7b, 0x6c, 0x0d, 0x31, 0x3e, 0x35, 0xed, 0xfa, 0xa1, 0xfd, 0x4a, 0x61, 0x01, 0x56, 0xf8, 0xaf, 0x71, 0x5a, 0x3c, 0xb1, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2466 = { .name = "xdh_wei448_2466", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2466_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2466_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2466_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 394 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2467 for XDH, tcId is 395 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2467_peerpubkey[] = { 0x26, 0x5a, 0x93, 0x0b, 0x5d, 0x6f, 0xd6, 0x97, 0x7b, 0xc3, 0xec, 0x93, 0xc3, 0x02, 0x7c, 0xa9, 0x7a, 0x34, 0xb1, 0x2d, 0x43, 0xdc, 0xa8, 0x36, 0xc7, 0x97, 0x1a, 0xcc, 0x99, 0x6e, 0x0c, 0x9e, 0x25, 0x0b, 0xf0, 0x87, 0x4d, 0x1d, 0x64, 0x5b, 0x07, 0x23, 0x15, 0xaa, 0xc6, 0x1a, 0x95, 0x04, 0x17, 0x92, 0xcb, 0x55, 0x88, 0xb2, 0x9d, 0xbf, }; static const unsigned char xdh_wei448_2467_privkey[] = { 0x14, 0xf1, 0x41, 0xfb, 0xb1, 0x64, 0xd6, 0x70, 0xb9, 0x0a, 0x19, 0xc9, 0xd9, 0x70, 0xf8, 0x32, 0x7f, 0x21, 0x1e, 0x8e, 0xd8, 0x66, 0x06, 0x21, 0x08, 0x68, 0x37, 0x2c, 0x22, 0x69, 0xc8, 0x1b, 0x2b, 0x61, 0x50, 0x4b, 0x46, 0xf3, 0xf6, 0x55, 0x33, 0xef, 0x7a, 0xdb, 0x31, 0xd9, 0x7c, 0xa0, 0xdd, 0x52, 0x4b, 0x38, 0xb4, 0xdf, 0xf7, 0x8a, }; static const unsigned char xdh_wei448_2467_sharedsecret[] = { 0x4b, 0x0a, 0xf1, 0xcc, 0x0b, 0x4e, 0xe4, 0x32, 0x2c, 0x8a, 0x23, 0x98, 0x9f, 0x74, 0xd6, 0x62, 0x51, 0x94, 0xd1, 0xcc, 0x81, 0xe0, 0xa9, 0x1c, 0x68, 0x22, 0x4f, 0x07, 0x8e, 0xff, 0x2a, 0x7d, 0xef, 0x5f, 0x57, 0xd5, 0x39, 0x86, 0x93, 0x2b, 0xb4, 0x53, 0xc4, 0x5e, 0xad, 0xfd, 0xb3, 0xa5, 0x0e, 0xf3, 0x3d, 0xe3, 0xf9, 0xd7, 0x43, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2467 = { .name = "xdh_wei448_2467", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2467_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2467_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2467_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 395 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2468 for XDH, tcId is 396 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2468_peerpubkey[] = { 0x11, 0xe9, 0xe4, 0xe0, 0x24, 0xc2, 0x77, 0xe1, 0x84, 0x34, 0x48, 0xa1, 0x0f, 0x21, 0x8d, 0x4e, 0x4f, 0x88, 0xb4, 0x02, 0xb2, 0x95, 0x4c, 0xb3, 0x7f, 0x8b, 0x5c, 0x33, 0xa9, 0x02, 0x93, 0x2f, 0x95, 0x41, 0xe6, 0x14, 0x86, 0xf1, 0xf4, 0xa8, 0xfb, 0xd9, 0x73, 0x8b, 0x7f, 0xff, 0xfd, 0xb3, 0x94, 0x46, 0xe7, 0x92, 0xf1, 0x2a, 0x69, 0xf1, }; static const unsigned char xdh_wei448_2468_privkey[] = { 0xa8, 0xed, 0x7c, 0x6c, 0x57, 0xd5, 0xaf, 0x99, 0x85, 0x5b, 0x98, 0x9d, 0x8c, 0x43, 0x79, 0x94, 0xb1, 0xf7, 0x2c, 0x25, 0xd2, 0x2c, 0x2a, 0xce, 0xa5, 0x04, 0x87, 0x8c, 0xc3, 0x3c, 0x57, 0x2b, 0x84, 0xcc, 0x4c, 0xbc, 0xb5, 0xf2, 0x4d, 0xc0, 0xcc, 0x7b, 0xa8, 0xce, 0x36, 0xbf, 0x31, 0x68, 0x7a, 0x27, 0xc4, 0xd0, 0x60, 0x52, 0x0f, 0x8b, }; static const unsigned char xdh_wei448_2468_sharedsecret[] = { 0xb8, 0xed, 0xce, 0xf5, 0x32, 0x24, 0x7b, 0x0d, 0xa1, 0x8f, 0x7d, 0x67, 0xf4, 0x89, 0xa9, 0x81, 0x02, 0x16, 0x84, 0xea, 0x9f, 0xb9, 0xd0, 0xa9, 0x57, 0xbc, 0x36, 0x3c, 0xd3, 0x90, 0xfc, 0x39, 0x54, 0x20, 0xd0, 0xa9, 0xb6, 0xfd, 0xf9, 0xe4, 0x0a, 0xf6, 0x5e, 0xb0, 0xd8, 0x5d, 0x19, 0x5a, 0x25, 0x23, 0x74, 0x13, 0xa7, 0xb1, 0x44, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2468 = { .name = "xdh_wei448_2468", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2468_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2468_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2468_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 396 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2469 for XDH, tcId is 397 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2469_peerpubkey[] = { 0x13, 0x27, 0x29, 0xb7, 0x38, 0xcd, 0x98, 0x7f, 0xfe, 0x19, 0x54, 0x35, 0x84, 0xf8, 0xfe, 0x2b, 0xe1, 0xe8, 0x01, 0xb7, 0x19, 0xd3, 0xab, 0x2c, 0x51, 0x23, 0x4f, 0xbd, 0x08, 0xd4, 0xc9, 0xf7, 0x36, 0xc7, 0xf5, 0x0b, 0x84, 0x49, 0x26, 0x7f, 0x73, 0x72, 0x97, 0xf9, 0x8b, 0x3c, 0xb7, 0x30, 0x52, 0x8a, 0xf6, 0x4f, 0x6a, 0xa0, 0xfb, 0x02, }; static const unsigned char xdh_wei448_2469_privkey[] = { 0x84, 0xe6, 0x9e, 0x44, 0x72, 0xb6, 0x69, 0xeb, 0xc6, 0xa6, 0xad, 0x1b, 0xd2, 0x11, 0x71, 0x26, 0x5d, 0x64, 0x92, 0x0f, 0x3d, 0xc9, 0xc7, 0xaa, 0x26, 0x17, 0x44, 0x62, 0xf3, 0x3d, 0x20, 0xe5, 0x0b, 0x02, 0x30, 0xce, 0xa7, 0x13, 0x57, 0x6a, 0x9b, 0xe5, 0x59, 0xb5, 0x5d, 0x63, 0xef, 0x12, 0x5d, 0xcf, 0x9f, 0x54, 0x34, 0x57, 0xff, 0x89, }; static const unsigned char xdh_wei448_2469_sharedsecret[] = { 0xc7, 0x19, 0xe3, 0x09, 0xf9, 0x40, 0x20, 0x74, 0xeb, 0x74, 0xbf, 0x18, 0x58, 0x6e, 0xa8, 0x60, 0xfd, 0x87, 0xa8, 0xd0, 0x8e, 0xeb, 0xbd, 0xba, 0xf8, 0x42, 0x08, 0x47, 0x41, 0xf3, 0x01, 0xeb, 0x74, 0xc9, 0x4a, 0xa3, 0x3d, 0xb5, 0xba, 0x1c, 0x2d, 0x8a, 0x99, 0x7a, 0xfa, 0x4f, 0xef, 0x78, 0xba, 0x76, 0x9b, 0x46, 0x8a, 0x00, 0x76, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2469 = { .name = "xdh_wei448_2469", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2469_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2469_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2469_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 397 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2470 for XDH, tcId is 398 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2470_peerpubkey[] = { 0xcd, 0x72, 0xb7, 0x26, 0x6f, 0x8f, 0xe8, 0x8f, 0x85, 0xe9, 0xa4, 0x7e, 0xd5, 0xc0, 0xec, 0x74, 0x39, 0x41, 0xfd, 0x1b, 0x4c, 0xbf, 0x2d, 0xda, 0x96, 0xf3, 0xa6, 0x0f, 0x30, 0xf6, 0xb3, 0xc3, 0xa4, 0xe7, 0xe4, 0x2c, 0x80, 0x83, 0x31, 0x07, 0x7d, 0x5b, 0x9b, 0x8c, 0x37, 0xfa, 0x65, 0x07, 0xb1, 0x73, 0x5c, 0xe0, 0x81, 0x16, 0xc3, 0x1b, }; static const unsigned char xdh_wei448_2470_privkey[] = { 0x2c, 0x42, 0xdd, 0x62, 0xd9, 0x66, 0x51, 0x34, 0xf1, 0xdd, 0xa0, 0x82, 0x43, 0x82, 0xc8, 0xd6, 0x77, 0x3f, 0x98, 0x64, 0x95, 0xcf, 0x1b, 0x18, 0xcf, 0x02, 0xf8, 0xf4, 0x53, 0x38, 0xcd, 0xbb, 0xde, 0x6d, 0x26, 0xd5, 0xf9, 0x1f, 0x3d, 0x4e, 0x1a, 0x25, 0x0f, 0xfa, 0xfe, 0x1b, 0x5e, 0x24, 0xb8, 0x20, 0x8b, 0xa1, 0xb9, 0x12, 0x76, 0x86, }; static const unsigned char xdh_wei448_2470_sharedsecret[] = { 0x51, 0xb1, 0xd5, 0xa3, 0x34, 0x95, 0x7b, 0xb9, 0xf5, 0x39, 0x90, 0xd1, 0x88, 0xd9, 0x3e, 0xdb, 0x17, 0x86, 0xda, 0x92, 0x17, 0x83, 0xc0, 0x08, 0x70, 0x42, 0x91, 0x34, 0xd2, 0xf2, 0xef, 0x97, 0x63, 0x24, 0x4a, 0x20, 0x4a, 0x46, 0xfa, 0xc1, 0x67, 0xa0, 0x89, 0x44, 0x74, 0x34, 0x2e, 0xa7, 0x72, 0x27, 0x58, 0x99, 0xd2, 0x17, 0x42, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2470 = { .name = "xdh_wei448_2470", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2470_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2470_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2470_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 398 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2471 for XDH, tcId is 399 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2471_peerpubkey[] = { 0xd5, 0x60, 0x21, 0x11, 0x53, 0xf1, 0x00, 0xaf, 0x3a, 0x4c, 0x0a, 0x22, 0x33, 0xf6, 0xec, 0xd7, 0xe9, 0x5c, 0xc5, 0x08, 0x6d, 0xec, 0xb3, 0xa0, 0xd1, 0x38, 0x67, 0x0e, 0xe4, 0x19, 0x55, 0xaa, 0xb9, 0x5f, 0x4a, 0x71, 0xbb, 0x84, 0x96, 0xb4, 0xdb, 0xf9, 0x8b, 0x45, 0xae, 0x6f, 0xf6, 0x7b, 0x02, 0xfb, 0xc9, 0x48, 0xb1, 0x45, 0x14, 0x2c, }; static const unsigned char xdh_wei448_2471_privkey[] = { 0x5c, 0xd3, 0xa7, 0xa6, 0xc7, 0x3d, 0xe1, 0x1e, 0xbe, 0x7d, 0x4c, 0xd3, 0xbb, 0x14, 0x6e, 0x0f, 0xf1, 0x56, 0x43, 0x76, 0x85, 0xc8, 0x1a, 0xf2, 0xac, 0x3c, 0xf6, 0x05, 0x3e, 0x4b, 0x32, 0x89, 0x01, 0x4d, 0x38, 0xda, 0xdf, 0x73, 0x2e, 0xd2, 0xf3, 0x98, 0xe4, 0x77, 0x2a, 0x34, 0x47, 0xa2, 0x58, 0xda, 0xdf, 0xdb, 0x2d, 0x7d, 0xf5, 0x87, }; static const unsigned char xdh_wei448_2471_sharedsecret[] = { 0x51, 0xdd, 0xe5, 0x72, 0x74, 0xf7, 0xff, 0xb4, 0xc0, 0x1e, 0x97, 0x1f, 0xb9, 0xf2, 0xba, 0x89, 0x11, 0xe1, 0xcf, 0x56, 0xc2, 0x03, 0x55, 0x21, 0x69, 0x01, 0xdc, 0x1d, 0x14, 0x81, 0xbf, 0xa2, 0x8b, 0x87, 0xf4, 0xb7, 0x24, 0x49, 0x53, 0x4a, 0xd6, 0x99, 0x96, 0x90, 0x0c, 0xf5, 0xe7, 0x3b, 0x8e, 0x0f, 0xa1, 0x15, 0xe8, 0x92, 0x4e, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2471 = { .name = "xdh_wei448_2471", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2471_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2471_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2471_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 399 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2472 for XDH, tcId is 400 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2472_peerpubkey[] = { 0xa4, 0xcc, 0xa4, 0x82, 0xc8, 0xe2, 0x1f, 0xf3, 0x00, 0x97, 0xcb, 0xc4, 0xf5, 0xe3, 0xa7, 0x07, 0x62, 0x3c, 0xd6, 0x77, 0x1b, 0x28, 0x8d, 0x8f, 0x3d, 0x11, 0x68, 0x2f, 0xa5, 0x26, 0xb4, 0xed, 0xa2, 0x7c, 0x68, 0x33, 0xd4, 0x19, 0x2b, 0xda, 0x53, 0x05, 0x2a, 0x14, 0x2c, 0x69, 0x87, 0x8f, 0xce, 0xdc, 0xc9, 0x2a, 0x5f, 0x61, 0x1a, 0xa2, }; static const unsigned char xdh_wei448_2472_privkey[] = { 0x80, 0x81, 0xae, 0xfb, 0x19, 0x87, 0x2a, 0xea, 0xad, 0x84, 0xa4, 0x06, 0xeb, 0x3f, 0xd4, 0xc2, 0x7f, 0x23, 0x1f, 0xbc, 0xa3, 0x91, 0x73, 0xba, 0xd4, 0x17, 0xa2, 0xef, 0x12, 0x3c, 0x0a, 0x89, 0x59, 0xae, 0xa6, 0xd6, 0x9f, 0xe6, 0x92, 0xeb, 0xf6, 0x96, 0x31, 0xd5, 0x3b, 0x73, 0xe3, 0xd6, 0x7f, 0x1b, 0xcb, 0xa6, 0x84, 0x9f, 0xb7, 0x83, }; static const unsigned char xdh_wei448_2472_sharedsecret[] = { 0xe1, 0xc4, 0xae, 0x75, 0xcc, 0x6f, 0x65, 0xc6, 0x52, 0xf4, 0x0d, 0xee, 0x0b, 0x7a, 0x02, 0x24, 0x8a, 0xf6, 0x60, 0x93, 0xd4, 0x03, 0xe0, 0xf5, 0xec, 0x34, 0xf3, 0xe4, 0xb6, 0xd3, 0x8d, 0x20, 0x82, 0x60, 0x2d, 0xc5, 0x1a, 0x52, 0x6e, 0xd0, 0xe9, 0xb1, 0x56, 0x9c, 0xb2, 0x0a, 0xa3, 0x44, 0x24, 0xb0, 0x21, 0x9b, 0xdd, 0xb5, 0x37, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2472 = { .name = "xdh_wei448_2472", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2472_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2472_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2472_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 400 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2473 for XDH, tcId is 401 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2473_peerpubkey[] = { 0xd6, 0x88, 0x03, 0xe5, 0x6a, 0x32, 0x9b, 0x20, 0x53, 0xa0, 0x6b, 0x6f, 0x72, 0x16, 0xb3, 0xec, 0xe4, 0xec, 0x45, 0x3d, 0x62, 0x53, 0xc6, 0xdb, 0xb9, 0x01, 0x82, 0xff, 0xce, 0x7f, 0xa5, 0x95, 0x24, 0xff, 0x05, 0x4a, 0x5c, 0x3a, 0xaa, 0xb8, 0xa4, 0x41, 0x74, 0xab, 0x20, 0x38, 0x5f, 0x7a, 0x95, 0xa8, 0x57, 0x9a, 0xbc, 0xb9, 0xae, 0xa7, }; static const unsigned char xdh_wei448_2473_privkey[] = { 0x74, 0xfb, 0x2c, 0xcc, 0x2b, 0x2e, 0xfb, 0x17, 0xdd, 0xab, 0x72, 0x17, 0x50, 0xde, 0x77, 0x51, 0xf0, 0xa6, 0xbe, 0xda, 0x5d, 0xe7, 0x75, 0xb8, 0x2c, 0xbd, 0x21, 0x14, 0x90, 0xa4, 0x02, 0x0e, 0x80, 0x80, 0x8a, 0x62, 0x11, 0x4f, 0x0f, 0x1c, 0x45, 0x53, 0xf2, 0x6f, 0xbc, 0xab, 0x6c, 0xa9, 0x02, 0x64, 0x51, 0x60, 0xa3, 0xcf, 0xaa, 0x87, }; static const unsigned char xdh_wei448_2473_sharedsecret[] = { 0x45, 0x46, 0x32, 0x8d, 0x31, 0xeb, 0xd4, 0x74, 0x39, 0x22, 0x1c, 0xf9, 0x40, 0x33, 0x87, 0xcc, 0x61, 0x07, 0xd5, 0x4f, 0x67, 0xdd, 0xbe, 0xea, 0xfe, 0x3c, 0x57, 0xb7, 0x58, 0xab, 0x83, 0x86, 0xed, 0x76, 0xdc, 0xfc, 0xdd, 0x5b, 0x49, 0x92, 0x32, 0xbf, 0xbf, 0x7f, 0x15, 0xe6, 0x75, 0x0b, 0x71, 0x73, 0xdb, 0x07, 0xef, 0xb7, 0x31, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2473 = { .name = "xdh_wei448_2473", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2473_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2473_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2473_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 401 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2474 for XDH, tcId is 402 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2474_peerpubkey[] = { 0x41, 0xfd, 0xa6, 0xe7, 0x50, 0x6b, 0x50, 0x85, 0x70, 0xae, 0x39, 0xd1, 0x65, 0x1d, 0x72, 0x1b, 0x8f, 0x2a, 0xc1, 0xba, 0xed, 0xa0, 0xa3, 0xba, 0x5c, 0x86, 0xc9, 0xc7, 0x17, 0x97, 0x90, 0xdd, 0xa0, 0x18, 0x5d, 0xa5, 0xde, 0x64, 0x87, 0x9c, 0x15, 0x73, 0x83, 0xf0, 0x4b, 0x9a, 0x32, 0x8a, 0xa5, 0xfb, 0xbf, 0x7e, 0x7d, 0x87, 0x0f, 0xd7, }; static const unsigned char xdh_wei448_2474_privkey[] = { 0x0c, 0x2f, 0x22, 0xe6, 0xa4, 0x7e, 0xa6, 0x08, 0xe8, 0xc0, 0xd1, 0xb0, 0x47, 0x0c, 0x45, 0xcc, 0x02, 0x5d, 0x1c, 0x07, 0x52, 0xbf, 0xe3, 0xaa, 0x36, 0xd1, 0x4f, 0x0e, 0x8f, 0x82, 0xf2, 0xe1, 0x2a, 0x27, 0xb6, 0xbd, 0x32, 0x23, 0x95, 0xa3, 0xde, 0x5b, 0x5d, 0xed, 0x46, 0xc3, 0x7b, 0xe1, 0x12, 0xd3, 0xe8, 0xd1, 0xbb, 0x86, 0xde, 0x86, }; static const unsigned char xdh_wei448_2474_sharedsecret[] = { 0xda, 0x06, 0xfa, 0x2f, 0xf0, 0x01, 0x5c, 0x46, 0x63, 0xa5, 0x9d, 0x2c, 0xde, 0x02, 0xb4, 0xd7, 0x9f, 0xad, 0x37, 0xa0, 0x54, 0x22, 0x0b, 0x15, 0x65, 0x1b, 0xe9, 0x92, 0x26, 0x65, 0x0e, 0x9f, 0x62, 0x46, 0x68, 0x34, 0x78, 0x2b, 0x3d, 0x00, 0x04, 0x31, 0x01, 0xc0, 0xff, 0x1b, 0xe3, 0x7d, 0xcc, 0x0d, 0x6f, 0x6b, 0xef, 0xe9, 0xbb, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_2474 = { .name = "xdh_wei448_2474", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2474_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2474_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2474_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 402 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2475 for XDH, tcId is 403 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2475_peerpubkey[] = { 0x2c, 0x2f, 0xda, 0x82, 0x80, 0xb4, 0x16, 0x0f, 0xbb, 0x8f, 0xcd, 0xd9, 0xa4, 0x6f, 0x78, 0x7f, 0x2e, 0x9b, 0x4e, 0xcf, 0xe1, 0x14, 0x92, 0x29, 0x81, 0x7d, 0x94, 0x06, 0x85, 0xa2, 0x55, 0x94, 0x9f, 0x5d, 0x9e, 0x05, 0x44, 0x6c, 0xba, 0xf8, 0x6b, 0x2a, 0xf6, 0x2d, 0x27, 0xe5, 0xe7, 0x6c, 0x74, 0x5b, 0x39, 0xb2, 0x9b, 0x52, 0x07, 0x06, }; static const unsigned char xdh_wei448_2475_privkey[] = { 0xec, 0xd9, 0x88, 0xd9, 0x37, 0xd7, 0x19, 0x04, 0xf1, 0x58, 0x4a, 0x7c, 0xb4, 0x7d, 0xc6, 0xf9, 0xb5, 0xd1, 0xf1, 0x62, 0xf0, 0xf4, 0x0a, 0x76, 0x39, 0x3b, 0xf4, 0x80, 0x84, 0x34, 0xe2, 0x64, 0x4d, 0xeb, 0xe2, 0x30, 0x35, 0xbf, 0x4f, 0x9b, 0x59, 0x83, 0xfa, 0xf6, 0xe9, 0xf5, 0xfb, 0x9b, 0x1f, 0x4c, 0x4e, 0xc6, 0xc2, 0x5d, 0xfc, 0x88, }; static const unsigned char xdh_wei448_2475_sharedsecret[] = { 0xaa, 0x5a, 0xe8, 0x6b, 0x41, 0xec, 0x49, 0x1e, 0x1d, 0x6e, 0xfa, 0x86, 0x08, 0xf3, 0xf1, 0x07, 0x0a, 0x7f, 0xf0, 0xb6, 0x13, 0x88, 0x6a, 0xcc, 0x45, 0xc9, 0x2f, 0xcd, 0xba, 0x6a, 0x5a, 0x48, 0x09, 0x95, 0x74, 0x0d, 0x02, 0xe6, 0xb9, 0xb9, 0x62, 0xb8, 0x7e, 0x11, 0xc3, 0x3e, 0x25, 0xdf, 0xcc, 0xda, 0x8e, 0x5c, 0xb2, 0xf1, 0x52, 0x99, }; static const wycheproof_xdh_test xdh_wei448_2475 = { .name = "xdh_wei448_2475", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2475_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2475_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2475_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 403 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2476 for XDH, tcId is 404 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2476_peerpubkey[] = { 0x2b, 0xa9, 0x1c, 0xe4, 0xae, 0xfe, 0x09, 0x1a, 0xe4, 0x02, 0x92, 0xd2, 0x8c, 0x20, 0xfb, 0x24, 0x64, 0x94, 0x0c, 0xf6, 0xfb, 0x56, 0x87, 0x75, 0x42, 0xbb, 0x7b, 0xd9, 0x31, 0x49, 0x3b, 0x4e, 0xb7, 0xfd, 0xbc, 0xb6, 0x22, 0x70, 0x69, 0x34, 0x2d, 0x91, 0x3a, 0xeb, 0x29, 0xe4, 0x73, 0x27, 0xe5, 0x3e, 0x35, 0xa2, 0x42, 0x2b, 0x4d, 0x0b, }; static const unsigned char xdh_wei448_2476_privkey[] = { 0x20, 0x43, 0x3d, 0x78, 0xa9, 0x74, 0x48, 0xc2, 0xdc, 0xa9, 0xcd, 0x9c, 0xfb, 0xf1, 0xc6, 0xa5, 0x3c, 0xf6, 0xc1, 0x38, 0xd1, 0x46, 0xc5, 0x73, 0xf9, 0x50, 0xdb, 0x11, 0x72, 0x34, 0x66, 0x06, 0x6f, 0x2b, 0xb5, 0x4a, 0x04, 0x19, 0xf1, 0xb8, 0xc8, 0x42, 0xf4, 0x35, 0x4f, 0x1f, 0x10, 0xe0, 0x7c, 0x75, 0xc3, 0x77, 0xec, 0x8f, 0xc2, 0x87, }; static const unsigned char xdh_wei448_2476_sharedsecret[] = { 0xf0, 0x52, 0x7e, 0xc8, 0x7d, 0x89, 0x6e, 0xcc, 0xed, 0xb3, 0xa6, 0xca, 0xa6, 0x65, 0x72, 0xe6, 0x4a, 0xee, 0xa5, 0x15, 0xf1, 0x89, 0x01, 0x46, 0xc8, 0x3d, 0x72, 0x53, 0x58, 0x31, 0xfe, 0x7e, 0xb1, 0x2d, 0xcc, 0x43, 0x4a, 0x63, 0x83, 0x9a, 0xff, 0x89, 0xd8, 0xc8, 0x78, 0x90, 0x6f, 0xe9, 0xd9, 0x2e, 0x0e, 0xdf, 0x21, 0x8c, 0x64, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_2476 = { .name = "xdh_wei448_2476", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2476_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2476_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2476_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 404 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2477 for XDH, tcId is 405 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2477_peerpubkey[] = { 0x78, 0x0c, 0x77, 0x37, 0x80, 0xe0, 0x04, 0xc3, 0x76, 0x59, 0x7d, 0x1f, 0x7d, 0x98, 0x89, 0x91, 0xc8, 0xb4, 0xc0, 0x31, 0x5d, 0x7b, 0xac, 0x91, 0xe6, 0x8d, 0xdb, 0x40, 0x51, 0xfa, 0xc4, 0x04, 0x40, 0xaf, 0x2f, 0x5b, 0x87, 0xd8, 0x4b, 0x00, 0xce, 0x2d, 0x85, 0xd6, 0x24, 0x97, 0xd0, 0xf6, 0x9d, 0xdb, 0xda, 0xe6, 0x61, 0xdf, 0x17, 0x3e, }; static const unsigned char xdh_wei448_2477_privkey[] = { 0xb8, 0x69, 0xb7, 0xf0, 0x70, 0x72, 0x4d, 0x56, 0x2a, 0xb3, 0x46, 0xb0, 0xce, 0xe9, 0x10, 0xf0, 0x10, 0x61, 0xf7, 0x79, 0x48, 0x8d, 0x6a, 0xf1, 0x89, 0xde, 0xac, 0x04, 0x36, 0xd4, 0x0f, 0x65, 0x7e, 0x20, 0xd5, 0x6b, 0x57, 0xd4, 0xd1, 0xc0, 0x52, 0x87, 0x9b, 0xe7, 0x56, 0x62, 0xe1, 0xe6, 0x4f, 0x6b, 0x1a, 0xa3, 0xc1, 0x13, 0xd3, 0x8a, }; static const unsigned char xdh_wei448_2477_sharedsecret[] = { 0x7c, 0xb3, 0x47, 0xb4, 0x36, 0xf5, 0xa8, 0x3b, 0x14, 0x9d, 0x31, 0xfd, 0x93, 0x66, 0xc5, 0xeb, 0x84, 0xa6, 0x87, 0xbb, 0x78, 0xe5, 0x1e, 0x70, 0x14, 0xbd, 0xb6, 0xc0, 0x10, 0xa1, 0x5a, 0x00, 0x0d, 0x8d, 0x5e, 0x1f, 0xeb, 0x15, 0xa9, 0x0c, 0xa3, 0xe1, 0x7f, 0xb7, 0x45, 0x5d, 0xa7, 0x49, 0x6b, 0xd4, 0x81, 0xa4, 0xe0, 0xa6, 0x64, 0x25, }; static const wycheproof_xdh_test xdh_wei448_2477 = { .name = "xdh_wei448_2477", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2477_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2477_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2477_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 405 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2478 for XDH, tcId is 406 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2478_peerpubkey[] = { 0x4e, 0x6b, 0x2e, 0x16, 0xcf, 0xdc, 0x7f, 0x73, 0x43, 0x64, 0x4d, 0x90, 0x5c, 0x19, 0x5b, 0xec, 0xf6, 0x7a, 0xa8, 0xac, 0xfd, 0xbe, 0xd6, 0x24, 0xb6, 0x9d, 0xb1, 0x9b, 0x8c, 0x1f, 0x60, 0xd1, 0x74, 0x3e, 0xc0, 0x22, 0x3c, 0x0f, 0x75, 0x4e, 0x2f, 0xdd, 0x91, 0x90, 0xa4, 0xcf, 0x4c, 0xaf, 0x8b, 0x92, 0xfd, 0x1c, 0x93, 0xec, 0xdb, 0x65, }; static const unsigned char xdh_wei448_2478_privkey[] = { 0xac, 0xf0, 0x2c, 0x2e, 0x2b, 0x37, 0x52, 0x89, 0xc5, 0x9a, 0x27, 0x0f, 0x2b, 0x59, 0xa3, 0x36, 0x7c, 0x47, 0x79, 0x5e, 0x87, 0xcb, 0xf5, 0x19, 0x93, 0xf0, 0x49, 0x93, 0x0a, 0x0c, 0x1e, 0x1e, 0x79, 0x49, 0xe7, 0x0b, 0xe8, 0x38, 0xaa, 0xa6, 0xc1, 0x80, 0x09, 0x27, 0x35, 0x4b, 0x1e, 0xcc, 0x68, 0x5a, 0xc6, 0x1d, 0x59, 0x56, 0xe9, 0x89, }; static const unsigned char xdh_wei448_2478_sharedsecret[] = { 0x64, 0xd6, 0xb9, 0xd6, 0x30, 0xdc, 0x7e, 0xb0, 0xd8, 0x29, 0xf9, 0x6c, 0x03, 0x4e, 0xca, 0xfe, 0x21, 0xfe, 0xfe, 0x7a, 0x7f, 0xe6, 0x60, 0xe4, 0xc9, 0x1c, 0x6c, 0x54, 0x0c, 0xa3, 0x15, 0x7f, 0x94, 0x4c, 0x5c, 0xce, 0xa9, 0x70, 0x7c, 0x2f, 0x86, 0xfd, 0x38, 0xd0, 0x23, 0x8c, 0x85, 0x99, 0xc8, 0x48, 0xb8, 0x03, 0x60, 0x0d, 0xb9, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2478 = { .name = "xdh_wei448_2478", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2478_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2478_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2478_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 406 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2479 for XDH, tcId is 407 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2479_peerpubkey[] = { 0xe4, 0x67, 0xd4, 0x24, 0x52, 0x8b, 0x22, 0x7b, 0xd1, 0x19, 0x2c, 0x1e, 0xcf, 0x22, 0xbd, 0xfb, 0xd0, 0xf5, 0xe1, 0x6b, 0x50, 0x2d, 0x58, 0x56, 0x84, 0x8c, 0x0e, 0x56, 0x72, 0xa8, 0x56, 0x31, 0x3f, 0x3e, 0x84, 0x43, 0x96, 0x61, 0xd7, 0xd5, 0xfc, 0x95, 0xb5, 0xa5, 0x9b, 0xba, 0x3a, 0xd5, 0x31, 0x21, 0xec, 0x97, 0xad, 0x54, 0x0f, 0x95, }; static const unsigned char xdh_wei448_2479_privkey[] = { 0xdc, 0x0f, 0x97, 0x35, 0x5e, 0xf2, 0xc5, 0xd4, 0x24, 0x15, 0x86, 0x7a, 0x28, 0xe9, 0xf6, 0x96, 0x57, 0xb7, 0x8d, 0xa4, 0x18, 0x5c, 0xe5, 0x1d, 0xae, 0x61, 0xe2, 0x38, 0x71, 0x36, 0xa6, 0x2d, 0x88, 0x5c, 0x18, 0xe7, 0xe1, 0x77, 0x30, 0xa0, 0x1f, 0x4b, 0x47, 0x26, 0x7e, 0xe6, 0x93, 0xa6, 0x07, 0x38, 0xef, 0x1e, 0xa5, 0x18, 0x7b, 0x86, }; static const unsigned char xdh_wei448_2479_sharedsecret[] = { 0xfd, 0x52, 0x30, 0x23, 0x11, 0x12, 0x09, 0x0a, 0x49, 0x2e, 0x4b, 0x6b, 0x4d, 0x9f, 0x29, 0xae, 0x56, 0x5f, 0xb7, 0x52, 0x7e, 0x56, 0xfa, 0x80, 0x43, 0x47, 0xe1, 0x00, 0x47, 0xe9, 0xa5, 0x4c, 0xa4, 0x3c, 0x1e, 0x65, 0x45, 0xab, 0x5c, 0x73, 0x3a, 0x86, 0xf6, 0x68, 0x81, 0x0f, 0x0e, 0x22, 0xef, 0x5c, 0xb8, 0x74, 0x57, 0xa0, 0x1b, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2479 = { .name = "xdh_wei448_2479", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2479_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2479_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2479_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 407 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2480 for XDH, tcId is 408 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2480_peerpubkey[] = { 0xc6, 0x9f, 0x7f, 0x36, 0x49, 0x53, 0xc3, 0xcc, 0xba, 0x79, 0x10, 0x3f, 0x5a, 0x88, 0xd9, 0xe7, 0x45, 0x21, 0x68, 0x4e, 0xb5, 0xe3, 0x6c, 0xcf, 0x8c, 0x25, 0x85, 0xdb, 0x73, 0xb8, 0x05, 0xa7, 0x9f, 0xbb, 0xa3, 0x93, 0xf8, 0x1a, 0x11, 0x56, 0xf6, 0x89, 0xa3, 0x82, 0xcb, 0xde, 0x27, 0x2c, 0x9c, 0x2b, 0x1f, 0xfa, 0x88, 0x79, 0xad, 0xad, }; static const unsigned char xdh_wei448_2480_privkey[] = { 0x9c, 0xf1, 0x09, 0x4d, 0xd4, 0x82, 0xc8, 0xfd, 0xd1, 0x11, 0x95, 0xed, 0xe3, 0x39, 0x5b, 0xb9, 0xb3, 0x3e, 0x87, 0x02, 0xb8, 0xce, 0x77, 0x11, 0x6d, 0x4e, 0xa4, 0x01, 0x89, 0x84, 0x4f, 0x54, 0xec, 0x53, 0x5c, 0x91, 0xfb, 0xfd, 0xb8, 0x2c, 0xcc, 0x7b, 0xb5, 0x44, 0x1f, 0x7f, 0xfc, 0xf5, 0x25, 0x31, 0x91, 0xdb, 0x3a, 0xf0, 0x13, 0x8d, }; static const unsigned char xdh_wei448_2480_sharedsecret[] = { 0xba, 0x66, 0x1d, 0x79, 0x28, 0x69, 0xd0, 0xd0, 0x8f, 0x07, 0xe9, 0x7b, 0x53, 0x05, 0xd5, 0x16, 0x48, 0xe4, 0xaa, 0x71, 0x43, 0xc9, 0x02, 0x8f, 0x3a, 0x2c, 0xa2, 0xf1, 0x2f, 0x60, 0x14, 0x76, 0xd8, 0x8b, 0x5d, 0xad, 0x32, 0x9f, 0xd0, 0xa7, 0x73, 0xff, 0xae, 0x21, 0x65, 0xe0, 0xe3, 0x25, 0x1f, 0x56, 0xe8, 0xe7, 0x3f, 0xbf, 0x6f, 0xfd, }; static const wycheproof_xdh_test xdh_wei448_2480 = { .name = "xdh_wei448_2480", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2480_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2480_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2480_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 408 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2481 for XDH, tcId is 409 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2481_peerpubkey[] = { 0x9c, 0xa0, 0x54, 0xab, 0x30, 0x0f, 0x6b, 0x38, 0x9c, 0xd5, 0x3c, 0xbf, 0x01, 0x1e, 0x86, 0x66, 0xf5, 0x92, 0xf9, 0xc1, 0x4f, 0x1e, 0x13, 0x87, 0xcc, 0xf7, 0x8e, 0xc4, 0x36, 0x46, 0x2e, 0x7a, 0xc1, 0xe8, 0x11, 0x81, 0x96, 0xee, 0x73, 0x1b, 0xc2, 0xa2, 0x0b, 0x24, 0x08, 0xa6, 0xbd, 0x49, 0xd1, 0x5a, 0x8a, 0x10, 0x41, 0x62, 0xf7, 0x06, }; static const unsigned char xdh_wei448_2481_privkey[] = { 0xa8, 0xeb, 0xca, 0x65, 0xaa, 0x84, 0x59, 0xc4, 0x8a, 0xc1, 0xc1, 0x4a, 0x83, 0xb0, 0x51, 0x5e, 0x92, 0xde, 0x6c, 0x35, 0x8b, 0xb6, 0x05, 0xe3, 0x1e, 0x46, 0x66, 0x94, 0xa8, 0x26, 0xa7, 0xef, 0x99, 0x46, 0x4e, 0x42, 0x5b, 0x97, 0x81, 0x42, 0x59, 0xb4, 0x15, 0xd0, 0xa8, 0xdf, 0x83, 0xb5, 0x40, 0xec, 0x89, 0x30, 0xee, 0x41, 0x37, 0x8d, }; static const unsigned char xdh_wei448_2481_sharedsecret[] = { 0x01, 0x57, 0x37, 0x8a, 0x83, 0xd7, 0xd4, 0x4b, 0xec, 0x58, 0x6e, 0x3e, 0xdd, 0xe0, 0x3e, 0x3a, 0xb4, 0x8f, 0x06, 0xe0, 0x0d, 0x21, 0x29, 0xcb, 0x34, 0x8c, 0x18, 0x09, 0x2b, 0x9c, 0x7b, 0xf7, 0xe4, 0xe0, 0x0d, 0xf1, 0x6a, 0x65, 0x0e, 0x46, 0x76, 0xd3, 0x1c, 0x91, 0x19, 0x27, 0x5a, 0x43, 0xdc, 0x60, 0xee, 0x61, 0x20, 0xe9, 0x0d, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2481 = { .name = "xdh_wei448_2481", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2481_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2481_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2481_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 409 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2482 for XDH, tcId is 410 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2482_peerpubkey[] = { 0xae, 0x59, 0xde, 0x0b, 0xb7, 0x5b, 0xf5, 0x87, 0x06, 0xc3, 0x3c, 0x6f, 0xe9, 0x1b, 0x27, 0xba, 0x70, 0xf9, 0xa7, 0xb8, 0x72, 0x7a, 0x90, 0x1d, 0x4e, 0xa5, 0x3d, 0xce, 0xbb, 0xcf, 0x9f, 0x96, 0x26, 0xa9, 0xad, 0x60, 0xd8, 0x18, 0xea, 0x73, 0xdf, 0x1f, 0xaa, 0x4a, 0x2b, 0xf6, 0x33, 0x36, 0x5e, 0xe3, 0x4a, 0x0f, 0xc4, 0xc7, 0xd3, 0x0b, }; static const unsigned char xdh_wei448_2482_privkey[] = { 0x7c, 0xd3, 0x6d, 0x53, 0x9a, 0x2a, 0xbb, 0xef, 0x73, 0xd9, 0x34, 0xca, 0xbb, 0xb5, 0xfb, 0xbe, 0x63, 0x20, 0x0a, 0x3e, 0x77, 0x95, 0xff, 0x30, 0x07, 0x32, 0x24, 0x5b, 0xfb, 0x11, 0xed, 0x60, 0xac, 0xee, 0x4a, 0x71, 0x33, 0x0b, 0xd9, 0x83, 0x1d, 0x91, 0xf3, 0xeb, 0x8a, 0x41, 0x49, 0x76, 0xf6, 0xf7, 0x21, 0x6c, 0x1f, 0x37, 0x63, 0x84, }; static const unsigned char xdh_wei448_2482_sharedsecret[] = { 0x27, 0x07, 0xb9, 0x4b, 0xd0, 0xc4, 0xb7, 0xaa, 0xa7, 0x77, 0x46, 0x7d, 0x15, 0xfa, 0x86, 0x24, 0x9b, 0x46, 0x06, 0xc7, 0xae, 0xb8, 0x25, 0x88, 0x14, 0xd4, 0x60, 0xd9, 0xbf, 0x59, 0x4d, 0x81, 0x2d, 0x38, 0x39, 0x54, 0x76, 0x1c, 0x95, 0xa4, 0xc6, 0x76, 0x74, 0xc4, 0xae, 0x6d, 0x09, 0xf7, 0x4c, 0xba, 0xd3, 0xd7, 0x53, 0x40, 0xc6, 0x09, }; static const wycheproof_xdh_test xdh_wei448_2482 = { .name = "xdh_wei448_2482", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2482_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2482_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2482_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 410 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2483 for XDH, tcId is 411 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2483_peerpubkey[] = { 0xe6, 0x24, 0x22, 0xb2, 0x2e, 0x12, 0x32, 0xdf, 0xb6, 0x03, 0x7d, 0xfa, 0x7c, 0xbb, 0xf5, 0x76, 0x76, 0x04, 0x66, 0x4d, 0x22, 0xad, 0x2a, 0xfa, 0xde, 0x89, 0x2c, 0xe8, 0x74, 0x71, 0xad, 0xfe, 0x32, 0xa2, 0x90, 0x20, 0x3e, 0x22, 0xdd, 0x82, 0x80, 0x93, 0x8d, 0xa1, 0x89, 0x86, 0x6e, 0x60, 0xa4, 0xf2, 0xb0, 0x97, 0x85, 0x01, 0xac, 0x1a, }; static const unsigned char xdh_wei448_2483_privkey[] = { 0xb4, 0x35, 0x5c, 0xe9, 0x25, 0x0c, 0x14, 0xe5, 0x1f, 0xad, 0x03, 0xb7, 0x85, 0xd1, 0x3d, 0xfc, 0xc9, 0xe4, 0x31, 0xdf, 0xc4, 0x0e, 0xa5, 0xde, 0x83, 0x7b, 0x42, 0x6b, 0xc0, 0xdb, 0x90, 0xd8, 0x7d, 0xce, 0xfb, 0xe9, 0x81, 0xd9, 0x39, 0xb9, 0xdc, 0x9e, 0xbe, 0xe0, 0x77, 0x21, 0x27, 0xc7, 0x32, 0x45, 0xb6, 0xda, 0x6d, 0x56, 0xa5, 0x8c, }; static const unsigned char xdh_wei448_2483_sharedsecret[] = { 0x0c, 0x40, 0x76, 0xf5, 0xf7, 0xe7, 0x8c, 0x06, 0x5d, 0x03, 0x56, 0xa5, 0x42, 0x77, 0x42, 0x96, 0xb8, 0x8e, 0x58, 0x4a, 0x3d, 0xb4, 0x99, 0x44, 0xbe, 0x07, 0xe6, 0xac, 0x44, 0x9d, 0x8a, 0x74, 0x1e, 0xfd, 0x32, 0xea, 0x46, 0xb5, 0x3f, 0xec, 0x1e, 0x49, 0x4e, 0x7e, 0x9f, 0xe2, 0xfa, 0x83, 0x1b, 0xcf, 0xfe, 0xdd, 0x27, 0xd6, 0x69, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_2483 = { .name = "xdh_wei448_2483", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2483_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2483_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2483_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 411 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2484 for XDH, tcId is 412 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2484_peerpubkey[] = { 0xd2, 0xa4, 0xc7, 0x15, 0x2d, 0x46, 0x08, 0x82, 0xa8, 0x96, 0xc3, 0x25, 0x59, 0xd0, 0x46, 0xbf, 0x70, 0x1d, 0x51, 0x24, 0xcf, 0x5c, 0xef, 0xe5, 0x30, 0x77, 0x74, 0xd0, 0x4c, 0xb4, 0x49, 0xf7, 0xac, 0x18, 0x1c, 0x10, 0x80, 0x00, 0x7a, 0xbf, 0xec, 0xc1, 0x5c, 0x1b, 0xfe, 0x32, 0xbf, 0xf6, 0xdb, 0xe1, 0x24, 0xfe, 0x52, 0xca, 0x5c, 0x1e, }; static const unsigned char xdh_wei448_2484_privkey[] = { 0x5c, 0x58, 0xdd, 0xfa, 0xcc, 0x07, 0xa8, 0x96, 0x9d, 0x78, 0x30, 0xc1, 0x69, 0x11, 0x39, 0x28, 0x35, 0x1b, 0x7f, 0x9b, 0xe9, 0x4b, 0x2d, 0xe7, 0x28, 0xf6, 0x3f, 0xac, 0xc1, 0x8e, 0x27, 0x95, 0xf6, 0x91, 0xdc, 0x32, 0x96, 0x8e, 0x33, 0x10, 0xa7, 0x8a, 0x38, 0xea, 0x57, 0xd6, 0x76, 0x07, 0x28, 0x11, 0xde, 0x47, 0x7d, 0x28, 0xa0, 0x8e, }; static const unsigned char xdh_wei448_2484_sharedsecret[] = { 0x9a, 0xfd, 0x98, 0x88, 0x44, 0x0c, 0x6e, 0xab, 0x0d, 0x63, 0xb7, 0xce, 0xc4, 0x2b, 0x5f, 0x42, 0x7f, 0xcb, 0x6a, 0x12, 0xa2, 0x65, 0xfe, 0x40, 0x26, 0x36, 0x3a, 0x3d, 0x1d, 0xa1, 0x71, 0xd1, 0xa0, 0xfa, 0x00, 0x09, 0x33, 0x3d, 0x41, 0xb4, 0x73, 0xb4, 0xec, 0x08, 0x66, 0xb6, 0xd6, 0x09, 0x3c, 0xfe, 0x87, 0x94, 0x25, 0xe2, 0x1e, 0x72, }; static const wycheproof_xdh_test xdh_wei448_2484 = { .name = "xdh_wei448_2484", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2484_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2484_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2484_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 412 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2485 for XDH, tcId is 413 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2485_peerpubkey[] = { 0x57, 0x5a, 0xa8, 0x2e, 0x2e, 0xad, 0x45, 0x3e, 0x32, 0x95, 0xd7, 0x81, 0x93, 0xcb, 0xaf, 0xdf, 0xb7, 0x48, 0xbf, 0xde, 0x0a, 0xb1, 0x2b, 0x5c, 0xab, 0x36, 0x11, 0x3a, 0xc2, 0x79, 0x6b, 0xc9, 0x50, 0xa3, 0x18, 0xf5, 0x94, 0x45, 0x38, 0x52, 0xf4, 0xb2, 0xaa, 0x86, 0x17, 0x0b, 0xcc, 0x31, 0x73, 0x93, 0x81, 0xae, 0xb7, 0x8b, 0xa9, 0x2b, }; static const unsigned char xdh_wei448_2485_privkey[] = { 0x18, 0x12, 0x23, 0x06, 0xcd, 0x06, 0x38, 0xb6, 0x4a, 0x86, 0x00, 0xf0, 0x88, 0x30, 0x74, 0xa7, 0xed, 0xfc, 0xe6, 0xd6, 0x4d, 0x1e, 0x29, 0xeb, 0x0e, 0x3e, 0xfb, 0xd9, 0xca, 0x0e, 0x80, 0xb1, 0x33, 0xbc, 0x71, 0xf1, 0x81, 0x48, 0xbc, 0x11, 0xc2, 0xb1, 0xe6, 0xa2, 0x46, 0x80, 0x0d, 0xa2, 0xdc, 0xfa, 0x30, 0x05, 0xa0, 0x94, 0x68, 0x84, }; static const unsigned char xdh_wei448_2485_sharedsecret[] = { 0x29, 0x44, 0x7f, 0xa2, 0x06, 0x1b, 0x4c, 0xde, 0x87, 0x6b, 0xd0, 0x74, 0x9c, 0x6d, 0x5b, 0x5e, 0x4d, 0x94, 0x19, 0xde, 0xfb, 0xa9, 0xac, 0xe2, 0x79, 0x9e, 0x9d, 0x3e, 0xa1, 0x74, 0x03, 0x5d, 0x97, 0x7a, 0xce, 0x07, 0x83, 0x36, 0x8a, 0xc1, 0x26, 0x9f, 0x69, 0x22, 0xa6, 0x9d, 0xc4, 0x7f, 0xfb, 0x65, 0xf2, 0x13, 0x75, 0xf5, 0x69, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2485 = { .name = "xdh_wei448_2485", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2485_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2485_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2485_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 413 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2486 for XDH, tcId is 414 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2486_peerpubkey[] = { 0x56, 0x29, 0xec, 0x6f, 0xcb, 0x52, 0x60, 0x01, 0x9d, 0x95, 0x51, 0xb6, 0x30, 0x85, 0xd2, 0x50, 0x00, 0xa5, 0x9c, 0x12, 0x94, 0x7b, 0xc8, 0xd8, 0x98, 0x5d, 0x68, 0xca, 0xba, 0x08, 0xef, 0xed, 0x9e, 0xde, 0x76, 0xde, 0x2f, 0x6c, 0x5b, 0x76, 0x28, 0x01, 0xc3, 0x65, 0x06, 0x15, 0xed, 0xb9, 0x6f, 0xd4, 0x73, 0xb1, 0x7c, 0xd0, 0x38, 0x2e, }; static const unsigned char xdh_wei448_2486_privkey[] = { 0x40, 0x68, 0x6a, 0xc7, 0xb2, 0x65, 0xa2, 0xdf, 0xfb, 0xb5, 0x28, 0x00, 0x28, 0x64, 0x96, 0x9a, 0x03, 0xb0, 0xc2, 0x94, 0x2c, 0x9e, 0x5f, 0xcd, 0xc5, 0xe0, 0x2e, 0xfe, 0x45, 0x2f, 0x35, 0x11, 0x0c, 0xcd, 0xe0, 0xba, 0x88, 0xc4, 0x0c, 0x6a, 0xd2, 0x34, 0x3c, 0x5a, 0x7c, 0xaf, 0xd6, 0x80, 0x50, 0x54, 0xef, 0xce, 0x3c, 0x17, 0x99, 0x8e, }; static const unsigned char xdh_wei448_2486_sharedsecret[] = { 0x67, 0x7b, 0xfe, 0x25, 0xc0, 0x04, 0x4b, 0x3b, 0x54, 0x05, 0x27, 0xe8, 0xdc, 0x78, 0xd8, 0x78, 0x27, 0xaa, 0xb6, 0x68, 0x62, 0x34, 0x6c, 0x78, 0xf7, 0xad, 0x95, 0x9e, 0x8c, 0xbd, 0x5f, 0x8b, 0xf0, 0xc6, 0x12, 0xca, 0x66, 0xdb, 0x2b, 0xba, 0xd6, 0xa0, 0xd3, 0xc8, 0xdb, 0xd0, 0xf9, 0x92, 0x22, 0x94, 0xfa, 0x28, 0x21, 0x40, 0xab, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2486 = { .name = "xdh_wei448_2486", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2486_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2486_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2486_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 414 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2487 for XDH, tcId is 415 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2487_peerpubkey[] = { 0x23, 0x94, 0xf0, 0xd4, 0x2a, 0x7e, 0x06, 0x0c, 0x83, 0xf2, 0x4f, 0xe7, 0x17, 0x9f, 0x07, 0xed, 0xd1, 0x71, 0xaf, 0x1b, 0x53, 0xe8, 0x6b, 0xe7, 0x00, 0x55, 0x1a, 0x96, 0x95, 0x04, 0x78, 0x2c, 0x45, 0x93, 0x6a, 0x16, 0xc7, 0x7c, 0x0f, 0xa1, 0xe0, 0x54, 0xa6, 0x9a, 0x50, 0x99, 0x63, 0xa2, 0x42, 0xae, 0x25, 0x6f, 0x71, 0x79, 0x04, 0x35, }; static const unsigned char xdh_wei448_2487_privkey[] = { 0xf0, 0x4d, 0xfc, 0x27, 0x1f, 0xbc, 0x4a, 0x4e, 0xc8, 0xda, 0x96, 0x29, 0xde, 0x17, 0xfb, 0x6d, 0x66, 0x7e, 0x0a, 0x5f, 0x04, 0xb6, 0x99, 0x35, 0x82, 0xff, 0x32, 0xb3, 0xa7, 0xe0, 0xd4, 0xb8, 0x40, 0xee, 0x07, 0x2b, 0x5c, 0x08, 0xf9, 0x61, 0x42, 0xcc, 0x3c, 0x0d, 0xe1, 0x4a, 0x61, 0xf2, 0x59, 0x6f, 0x5c, 0x88, 0x43, 0x5e, 0xbb, 0x8b, }; static const unsigned char xdh_wei448_2487_sharedsecret[] = { 0x91, 0xde, 0xcd, 0xb8, 0x94, 0x28, 0x3a, 0xa2, 0x6e, 0x61, 0x4e, 0x31, 0x15, 0x44, 0x70, 0xc3, 0x1f, 0xde, 0x19, 0x13, 0x40, 0x57, 0x70, 0xe6, 0x53, 0x25, 0x31, 0x9f, 0x2c, 0xa2, 0x6a, 0xac, 0x71, 0xad, 0x24, 0x7d, 0xc2, 0x18, 0x5c, 0x2d, 0xaa, 0xb8, 0x21, 0x41, 0x76, 0x15, 0xed, 0x6e, 0x77, 0x28, 0xe8, 0xa9, 0xcc, 0x5f, 0xb6, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_2487 = { .name = "xdh_wei448_2487", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2487_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2487_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2487_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 415 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2488 for XDH, tcId is 416 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2488_peerpubkey[] = { 0xf9, 0xfa, 0xd4, 0x52, 0x57, 0x8f, 0x50, 0x6e, 0x18, 0xd7, 0x0c, 0x27, 0xeb, 0x00, 0x2a, 0xa6, 0x1b, 0x20, 0xb9, 0xe9, 0x05, 0xeb, 0x53, 0x10, 0x47, 0x66, 0xb2, 0x8d, 0xb2, 0x31, 0x4e, 0xe1, 0xdb, 0x36, 0x26, 0x5f, 0x6f, 0x34, 0xb4, 0x1a, 0x00, 0x8c, 0xb5, 0x79, 0x5d, 0x13, 0xbe, 0x40, 0x3a, 0xd9, 0x41, 0x88, 0x62, 0x56, 0x05, 0x3c, }; static const unsigned char xdh_wei448_2488_privkey[] = { 0x54, 0xb3, 0xdc, 0xaf, 0xdd, 0x9e, 0x0d, 0x73, 0x1e, 0xff, 0x76, 0xd2, 0x44, 0x63, 0xaf, 0xc0, 0xbf, 0x94, 0x81, 0x59, 0x7f, 0x35, 0x6d, 0x21, 0x06, 0x21, 0xaf, 0x29, 0x10, 0x48, 0xd9, 0x20, 0x75, 0x38, 0x6e, 0x80, 0xee, 0x8e, 0x78, 0xd7, 0xf5, 0x43, 0xb3, 0x05, 0xe3, 0xd2, 0xd2, 0xa4, 0x18, 0x0d, 0xee, 0x8b, 0x52, 0x8a, 0xb4, 0x87, }; static const unsigned char xdh_wei448_2488_sharedsecret[] = { 0xf5, 0xd9, 0xca, 0xbf, 0x7c, 0x1b, 0x1c, 0x64, 0xc9, 0xe2, 0xc2, 0xda, 0xf9, 0x5c, 0xcb, 0x38, 0xa7, 0x1b, 0x21, 0x28, 0xf1, 0x98, 0x7a, 0x98, 0xed, 0x5c, 0x91, 0x8b, 0xa6, 0x94, 0x86, 0xb1, 0x7e, 0x03, 0x70, 0xa9, 0x49, 0xdc, 0x17, 0x2b, 0xaf, 0x85, 0x93, 0xa1, 0xf8, 0xd3, 0x7d, 0x02, 0x2b, 0x0a, 0x0a, 0x9b, 0xc5, 0x4c, 0xae, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_2488 = { .name = "xdh_wei448_2488", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2488_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2488_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2488_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 416 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2489 for XDH, tcId is 417 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2489_peerpubkey[] = { 0xf2, 0xc4, 0xcb, 0x79, 0xda, 0x0f, 0xd6, 0xae, 0x25, 0x1a, 0x16, 0x44, 0x6e, 0x6b, 0x92, 0x14, 0xcb, 0xbf, 0x76, 0xdd, 0x91, 0x1f, 0xb4, 0x96, 0x6e, 0xa6, 0x5e, 0x1e, 0x5c, 0x72, 0x5d, 0x35, 0x40, 0x48, 0x8f, 0x22, 0xd2, 0x32, 0xdd, 0x4e, 0x55, 0x96, 0xeb, 0x7f, 0x9e, 0x6d, 0x4b, 0xba, 0xe8, 0xf1, 0xa1, 0x7a, 0x6e, 0x3d, 0x94, 0x61, }; static const unsigned char xdh_wei448_2489_privkey[] = { 0x04, 0x1b, 0x7c, 0xca, 0x67, 0x44, 0x98, 0x6f, 0x6b, 0xdf, 0x4e, 0x83, 0xb5, 0xe6, 0xa7, 0xed, 0x8a, 0xa9, 0x73, 0xbf, 0xc0, 0xb5, 0x88, 0x4e, 0x60, 0x70, 0x18, 0x7f, 0xae, 0x24, 0xf3, 0x40, 0x73, 0x63, 0xac, 0xbb, 0x1a, 0xf3, 0x7c, 0x96, 0x28, 0xf1, 0x5d, 0x9f, 0xd4, 0x9b, 0xeb, 0x51, 0x5f, 0x8a, 0x9b, 0x5e, 0x9a, 0x39, 0xf7, 0x86, }; static const unsigned char xdh_wei448_2489_sharedsecret[] = { 0xb8, 0x04, 0x81, 0x33, 0xbb, 0x5b, 0x73, 0x4e, 0xea, 0x7a, 0xa9, 0xe3, 0x5e, 0x69, 0xc5, 0x30, 0x19, 0x5d, 0xaf, 0x68, 0xa3, 0x6e, 0x04, 0x48, 0xc8, 0xc3, 0x88, 0x71, 0x1f, 0xcc, 0xee, 0xa1, 0x19, 0x18, 0x26, 0xbe, 0x00, 0x18, 0x0e, 0x0a, 0xad, 0x6e, 0xa2, 0x2d, 0x29, 0xe3, 0xae, 0x82, 0x37, 0xec, 0x78, 0xdd, 0x2e, 0x3b, 0x9d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_2489 = { .name = "xdh_wei448_2489", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2489_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2489_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2489_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 417 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2490 for XDH, tcId is 418 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2490_peerpubkey[] = { 0x67, 0x48, 0x8d, 0x65, 0xdc, 0xe8, 0x53, 0xb8, 0xa7, 0x3e, 0x4b, 0x1c, 0xc0, 0x69, 0xfa, 0xd7, 0x3d, 0x8b, 0x85, 0x56, 0x80, 0x00, 0x67, 0xae, 0xc1, 0xbf, 0x31, 0xef, 0x6a, 0xc9, 0xbf, 0x0b, 0xe6, 0x3a, 0x35, 0xba, 0x04, 0x8c, 0xca, 0x4f, 0x38, 0x43, 0x5b, 0xa5, 0x10, 0x8d, 0x9a, 0x15, 0x1f, 0xec, 0xbe, 0xdc, 0xd9, 0x48, 0xb5, 0x70, }; static const unsigned char xdh_wei448_2490_privkey[] = { 0x70, 0x60, 0xb7, 0x7e, 0xef, 0x77, 0xf8, 0xc0, 0x7c, 0xe0, 0x94, 0xf5, 0x77, 0x8f, 0x4a, 0x77, 0x46, 0x2c, 0x22, 0xe2, 0x9e, 0x14, 0xe8, 0x86, 0xfe, 0x18, 0x73, 0x98, 0xe6, 0xcd, 0x9e, 0x1c, 0xec, 0xca, 0x70, 0x72, 0x08, 0x3c, 0x90, 0xfa, 0x03, 0xad, 0x05, 0x94, 0x02, 0x19, 0x76, 0x10, 0xcd, 0x94, 0xb9, 0x08, 0xdc, 0x9a, 0xb4, 0x89, }; static const unsigned char xdh_wei448_2490_sharedsecret[] = { 0x15, 0xd3, 0x49, 0xa6, 0xb9, 0x56, 0x3a, 0x54, 0xdd, 0xa4, 0xc4, 0x7d, 0x13, 0x27, 0x68, 0xc2, 0xfc, 0x95, 0x34, 0xec, 0x9f, 0x21, 0x22, 0xb4, 0x03, 0x59, 0xdb, 0x74, 0x50, 0x2c, 0xed, 0x68, 0x0e, 0x1d, 0x22, 0x7c, 0x4f, 0xee, 0xa2, 0xea, 0x60, 0x95, 0x35, 0x56, 0x66, 0xa4, 0xa8, 0x60, 0x0d, 0x32, 0x88, 0x75, 0x2a, 0x29, 0x53, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2490 = { .name = "xdh_wei448_2490", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2490_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2490_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2490_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 418 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2491 for XDH, tcId is 419 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2491_peerpubkey[] = { 0xc8, 0xa8, 0xd5, 0xf8, 0x7d, 0x63, 0x8f, 0xa0, 0xac, 0x76, 0x3e, 0xe1, 0xc8, 0x47, 0x06, 0xcf, 0x3b, 0xb2, 0x99, 0x6e, 0x95, 0xee, 0xd9, 0xf3, 0x78, 0xb2, 0x63, 0xcd, 0x55, 0x90, 0x19, 0x3d, 0x6e, 0x3c, 0x15, 0x92, 0xe0, 0x1d, 0x04, 0x00, 0x88, 0x13, 0xb3, 0x37, 0x70, 0x3a, 0x62, 0xde, 0xfb, 0xc8, 0x0c, 0x26, 0x57, 0x3a, 0xf9, 0xa1, }; static const unsigned char xdh_wei448_2491_privkey[] = { 0xcc, 0x64, 0x28, 0x9a, 0x20, 0x78, 0xd5, 0xed, 0x5e, 0x85, 0x48, 0xd6, 0xc0, 0x03, 0xaf, 0xe2, 0x79, 0x98, 0x10, 0x3e, 0x0b, 0xaf, 0x57, 0x0f, 0x65, 0x66, 0x24, 0xd9, 0x15, 0x6d, 0x6e, 0xee, 0xc6, 0xfd, 0x74, 0xde, 0xa9, 0x61, 0x5c, 0xa2, 0x87, 0xc1, 0xba, 0xf0, 0xf2, 0x7d, 0xdd, 0xda, 0x2c, 0xe5, 0x80, 0x69, 0xeb, 0x2e, 0x88, 0x8e, }; static const unsigned char xdh_wei448_2491_sharedsecret[] = { 0x98, 0x3a, 0x50, 0x28, 0x5e, 0x5e, 0x44, 0xbb, 0xe8, 0xde, 0x55, 0xde, 0x9c, 0x7f, 0xcb, 0xac, 0x1e, 0x2f, 0xb6, 0xaf, 0xd6, 0xfe, 0xc1, 0x89, 0xe6, 0xf3, 0xb9, 0xb8, 0xbd, 0xac, 0xa6, 0xab, 0x4b, 0x1f, 0xa9, 0xb5, 0x38, 0xb2, 0x8a, 0xda, 0xa5, 0xbf, 0x16, 0x73, 0x5a, 0x78, 0x69, 0xd8, 0x60, 0x95, 0xc5, 0x4f, 0x8a, 0xa4, 0x04, 0x60, }; static const wycheproof_xdh_test xdh_wei448_2491 = { .name = "xdh_wei448_2491", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2491_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2491_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2491_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 419 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2492 for XDH, tcId is 420 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2492_peerpubkey[] = { 0x97, 0xe2, 0x9f, 0x21, 0x18, 0x74, 0x22, 0xc9, 0x4c, 0xfd, 0xf7, 0x4a, 0xf7, 0xfb, 0xd3, 0xc3, 0xd1, 0xfc, 0x17, 0x22, 0x5a, 0xc7, 0xd8, 0xe8, 0x7b, 0xb2, 0x56, 0x3b, 0x98, 0x8a, 0xc1, 0x9c, 0xd3, 0xaf, 0xcc, 0xa7, 0x07, 0xfa, 0xb8, 0x5a, 0x65, 0x2a, 0xe1, 0xb6, 0x18, 0x86, 0xfb, 0xba, 0x75, 0xc0, 0xa6, 0xf4, 0x5f, 0x50, 0x1c, 0xdc, }; static const unsigned char xdh_wei448_2492_privkey[] = { 0xa4, 0xdc, 0xcd, 0xb2, 0xca, 0x5b, 0x7a, 0xfc, 0x13, 0x14, 0x31, 0xd5, 0xea, 0xc0, 0xac, 0x6e, 0x6f, 0x9b, 0x33, 0xee, 0x2f, 0x41, 0x34, 0xe7, 0xd7, 0x9e, 0x10, 0xce, 0xb8, 0x4a, 0x36, 0xa0, 0x0b, 0xcc, 0xb2, 0x80, 0xac, 0x18, 0x59, 0xd1, 0x2a, 0x74, 0x08, 0x62, 0xd4, 0x07, 0x4c, 0xed, 0xb6, 0x53, 0x58, 0x7b, 0xcf, 0x71, 0x09, 0x8b, }; static const unsigned char xdh_wei448_2492_sharedsecret[] = { 0xc6, 0x06, 0x1d, 0xad, 0x24, 0xc1, 0xa1, 0xc8, 0x02, 0x91, 0xb3, 0x53, 0x89, 0xe0, 0x8d, 0xe5, 0xf9, 0x57, 0x7b, 0x01, 0x34, 0x15, 0xdd, 0xf4, 0x49, 0xe3, 0x88, 0x1b, 0xcb, 0x4c, 0xc3, 0x5a, 0x11, 0x40, 0x83, 0x59, 0x40, 0x59, 0x31, 0xa1, 0x7f, 0x42, 0x66, 0x2e, 0x26, 0x30, 0x3a, 0xad, 0x0f, 0xde, 0xcc, 0xd3, 0x24, 0xd7, 0x74, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_2492 = { .name = "xdh_wei448_2492", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2492_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2492_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2492_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 420 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2493 for XDH, tcId is 421 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2493_peerpubkey[] = { 0x05, 0x11, 0x83, 0xae, 0xfd, 0x0a, 0xb2, 0x1a, 0x07, 0x91, 0xc8, 0xb2, 0x91, 0x7b, 0xdf, 0x23, 0xbe, 0x5b, 0x25, 0xf1, 0xf4, 0xb3, 0x0c, 0x64, 0xc3, 0x7a, 0x25, 0x6f, 0x8c, 0xde, 0xca, 0x54, 0xcc, 0xee, 0x9d, 0xcd, 0x1e, 0x24, 0xaf, 0x24, 0x20, 0xd3, 0x2b, 0xc5, 0x57, 0x60, 0x91, 0xfd, 0x1f, 0xf3, 0xf8, 0x0d, 0xa3, 0x54, 0x36, 0xde, }; static const unsigned char xdh_wei448_2493_privkey[] = { 0x64, 0x5d, 0xfb, 0x9e, 0x66, 0xcf, 0x2a, 0x6a, 0x4e, 0x19, 0x8f, 0x19, 0xed, 0xc6, 0xfa, 0x43, 0xca, 0xf8, 0x6b, 0x1c, 0x35, 0xdf, 0xac, 0x97, 0xa5, 0x24, 0xb7, 0x0c, 0x0c, 0xd2, 0xba, 0xaf, 0x29, 0x16, 0xca, 0xc7, 0x19, 0x53, 0x61, 0x69, 0xea, 0x1f, 0x43, 0xe0, 0xe2, 0x46, 0x30, 0x65, 0x9f, 0x60, 0xd4, 0xe3, 0x32, 0x01, 0x89, 0x89, }; static const unsigned char xdh_wei448_2493_sharedsecret[] = { 0x3f, 0xea, 0x03, 0x6a, 0x64, 0x3f, 0xa9, 0x94, 0x67, 0x76, 0x3b, 0x06, 0xe0, 0x76, 0xf1, 0xc3, 0x11, 0x65, 0x3b, 0xd0, 0x86, 0x87, 0x7c, 0x87, 0xf8, 0x58, 0xb1, 0xbe, 0x2b, 0xb5, 0xcd, 0x10, 0x7b, 0xc1, 0x8b, 0x42, 0x22, 0xac, 0x1f, 0x48, 0xdc, 0x13, 0x74, 0x19, 0x38, 0x11, 0x99, 0xb4, 0xba, 0x29, 0xa7, 0xa7, 0xe9, 0x6d, 0xa0, 0x76, }; static const wycheproof_xdh_test xdh_wei448_2493 = { .name = "xdh_wei448_2493", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2493_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2493_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2493_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 421 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2494 for XDH, tcId is 422 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2494_peerpubkey[] = { 0x0f, 0x25, 0xb2, 0x4b, 0x22, 0x50, 0x81, 0x23, 0x39, 0xa4, 0x50, 0x75, 0x84, 0xd2, 0xb5, 0x74, 0xbc, 0x2b, 0xfe, 0x07, 0x4c, 0xfb, 0xa1, 0x2f, 0xdc, 0x8e, 0x61, 0x2e, 0xfb, 0xdf, 0x67, 0x48, 0x0d, 0xe3, 0x3d, 0x62, 0xdd, 0xe1, 0x3f, 0xe6, 0x18, 0x67, 0x54, 0x57, 0x1e, 0x6c, 0xf3, 0x0a, 0x8f, 0xe3, 0x2e, 0x97, 0x5d, 0x94, 0x56, 0xeb, }; static const unsigned char xdh_wei448_2494_privkey[] = { 0xcc, 0x18, 0x26, 0xcf, 0x87, 0x5e, 0x63, 0x6c, 0xd1, 0x5d, 0xbc, 0xd9, 0xb2, 0xf7, 0xc4, 0xd3, 0x3c, 0x92, 0x39, 0x65, 0x2f, 0xf4, 0x84, 0xbb, 0xe9, 0xfb, 0xf8, 0x25, 0x47, 0x91, 0xce, 0xe4, 0xdc, 0x95, 0xe7, 0x5b, 0x0d, 0x92, 0x67, 0x9e, 0xdb, 0xdf, 0x6c, 0xba, 0xfe, 0x43, 0xff, 0xb0, 0x9d, 0x0a, 0xb7, 0x35, 0x68, 0xcf, 0x3c, 0x81, }; static const unsigned char xdh_wei448_2494_sharedsecret[] = { 0x7b, 0xd1, 0x4e, 0xbc, 0x4a, 0xae, 0x16, 0x3f, 0x2c, 0x61, 0xd5, 0x16, 0xe5, 0xb6, 0x7a, 0x5d, 0xbe, 0xf4, 0x87, 0xb8, 0x98, 0x0d, 0xef, 0xe3, 0x41, 0xfb, 0x94, 0x2f, 0xa8, 0xf1, 0xeb, 0x1a, 0xa8, 0x29, 0x51, 0x89, 0xf0, 0x6c, 0xd7, 0xcc, 0x7e, 0x35, 0xe5, 0x77, 0xbd, 0x34, 0xc8, 0x07, 0x70, 0xe9, 0x63, 0x3f, 0x85, 0x0f, 0xe8, 0x68, }; static const wycheproof_xdh_test xdh_wei448_2494 = { .name = "xdh_wei448_2494", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2494_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2494_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2494_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 422 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2495 for XDH, tcId is 423 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2495_peerpubkey[] = { 0x17, 0x22, 0x5d, 0xf6, 0xc6, 0x58, 0x1a, 0x4c, 0x50, 0xd3, 0x14, 0x00, 0x39, 0x5f, 0xa2, 0x11, 0xed, 0x3d, 0x14, 0x6d, 0xeb, 0xda, 0xe1, 0xc3, 0xe6, 0xb4, 0x41, 0xbb, 0x13, 0x87, 0x10, 0x42, 0xdd, 0x35, 0x85, 0x47, 0x01, 0x98, 0xdf, 0x89, 0x7b, 0xfe, 0x82, 0xc0, 0xc7, 0xef, 0xe7, 0x39, 0xa7, 0x28, 0x4f, 0x8e, 0xb4, 0x72, 0x42, 0xef, }; static const unsigned char xdh_wei448_2495_privkey[] = { 0x38, 0x11, 0x23, 0x73, 0x97, 0xab, 0x5d, 0x36, 0x4c, 0x88, 0xa6, 0x8a, 0x1e, 0xcc, 0x31, 0x09, 0x60, 0x06, 0x78, 0x9a, 0x8c, 0xee, 0x84, 0xe6, 0x9c, 0x26, 0x7f, 0x1d, 0x93, 0xc1, 0xb8, 0xef, 0xab, 0x9f, 0xab, 0x8e, 0x3d, 0x5a, 0xb5, 0x11, 0x52, 0xa0, 0xb5, 0xdc, 0x11, 0xba, 0x0a, 0x0d, 0x4d, 0xcf, 0x7c, 0x41, 0xe7, 0xd7, 0xb6, 0x89, }; static const unsigned char xdh_wei448_2495_sharedsecret[] = { 0xd9, 0x6d, 0x07, 0x7d, 0x0a, 0xc0, 0x09, 0x6b, 0xbd, 0x79, 0xba, 0x1b, 0x83, 0x76, 0x32, 0x06, 0xb4, 0x01, 0x8d, 0x76, 0x9c, 0x0e, 0xa0, 0x7e, 0xff, 0x92, 0x4c, 0x98, 0x51, 0xc0, 0x7f, 0x66, 0xb3, 0x54, 0x75, 0xf1, 0x8b, 0xfc, 0xc8, 0x82, 0xb5, 0x00, 0x6a, 0x4e, 0xcf, 0x7c, 0xcb, 0xeb, 0x69, 0x4b, 0x57, 0x62, 0xb4, 0xcf, 0x07, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2495 = { .name = "xdh_wei448_2495", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2495_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2495_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2495_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 423 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2496 for XDH, tcId is 424 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2496_peerpubkey[] = { 0x6f, 0x56, 0xf2, 0xb6, 0x5a, 0x56, 0x09, 0x2f, 0xce, 0xce, 0x41, 0x79, 0x7f, 0x1b, 0x53, 0x13, 0xa2, 0xe7, 0xae, 0x5e, 0x60, 0xb9, 0x2a, 0x22, 0x11, 0xe2, 0xd6, 0x34, 0x80, 0x8e, 0x10, 0x9c, 0xd6, 0x84, 0xd4, 0x55, 0x47, 0x63, 0xb4, 0x86, 0x4d, 0x67, 0x68, 0x1d, 0xa4, 0x8d, 0x75, 0xf5, 0xdc, 0xf8, 0x69, 0x34, 0x6a, 0x10, 0x4a, 0x0d, }; static const unsigned char xdh_wei448_2496_privkey[] = { 0x0c, 0x78, 0xfc, 0x8b, 0x60, 0x5d, 0xa2, 0xf2, 0xa8, 0x33, 0x2d, 0x0c, 0x08, 0x48, 0xac, 0xf7, 0x13, 0x3d, 0x33, 0x50, 0xff, 0xdc, 0x4b, 0x66, 0x51, 0x25, 0x70, 0x5d, 0xb9, 0x59, 0xae, 0x17, 0xd2, 0x5d, 0x2e, 0x2d, 0xfc, 0xb8, 0x58, 0xf0, 0xcf, 0x6f, 0x16, 0x16, 0x2a, 0x46, 0x17, 0x22, 0xb4, 0x09, 0x14, 0x95, 0x46, 0xa9, 0x97, 0x83, }; static const unsigned char xdh_wei448_2496_sharedsecret[] = { 0x23, 0x16, 0xe7, 0x1f, 0x15, 0xd9, 0x1b, 0xf0, 0xc3, 0xf8, 0xb3, 0x7b, 0x05, 0x37, 0xd3, 0xa4, 0x08, 0x82, 0x59, 0x99, 0x6e, 0x01, 0x83, 0x83, 0xc8, 0x10, 0xb9, 0xdd, 0xdf, 0x21, 0x1a, 0x44, 0x69, 0xae, 0x08, 0x8a, 0xbd, 0xf9, 0x31, 0x89, 0x4e, 0x22, 0x86, 0x50, 0x3e, 0x78, 0x08, 0x98, 0x48, 0x72, 0x55, 0xa1, 0x3e, 0xb5, 0xab, 0xc3, }; static const wycheproof_xdh_test xdh_wei448_2496 = { .name = "xdh_wei448_2496", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2496_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2496_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2496_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 424 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2497 for XDH, tcId is 425 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2497_peerpubkey[] = { 0x2b, 0x12, 0xcb, 0xc3, 0xbc, 0x20, 0xfc, 0x18, 0x92, 0xf5, 0xb0, 0x23, 0x6b, 0x71, 0xe7, 0x28, 0xe1, 0xe4, 0xad, 0xc7, 0x2d, 0x52, 0x61, 0xe6, 0xdf, 0x21, 0x77, 0xbb, 0x53, 0x10, 0x1d, 0x14, 0x40, 0xdb, 0xd8, 0x69, 0x9d, 0x2e, 0x83, 0xa0, 0x8e, 0x3e, 0x9e, 0x6f, 0xbe, 0xbe, 0xff, 0x59, 0xad, 0x43, 0xa4, 0x27, 0x7f, 0x97, 0x03, 0x10, }; static const unsigned char xdh_wei448_2497_privkey[] = { 0xf4, 0x70, 0x2f, 0x84, 0x13, 0xcb, 0x82, 0x78, 0x58, 0x6a, 0x79, 0xa5, 0xf4, 0xe4, 0xca, 0xae, 0x61, 0x5d, 0x5e, 0xb9, 0x88, 0x51, 0x02, 0xe7, 0x19, 0x1a, 0x61, 0x60, 0xd2, 0x12, 0xc6, 0xe0, 0xfa, 0x50, 0xa2, 0x10, 0x97, 0x83, 0x52, 0x20, 0x42, 0x72, 0xd7, 0x99, 0xe1, 0x89, 0xa2, 0x83, 0x23, 0x3c, 0xd8, 0xfc, 0x3d, 0x96, 0xf4, 0x83, }; static const unsigned char xdh_wei448_2497_sharedsecret[] = { 0x20, 0xf0, 0xa3, 0xeb, 0xaa, 0x09, 0x9b, 0xdc, 0x58, 0xa5, 0xf9, 0x08, 0x8d, 0x5c, 0x44, 0xbb, 0xe6, 0x6c, 0xdd, 0xda, 0xf4, 0xc0, 0x52, 0x1b, 0x66, 0xb3, 0x1a, 0x00, 0xa5, 0x9e, 0x70, 0x09, 0x4c, 0xe6, 0x0e, 0x35, 0x67, 0x53, 0x95, 0x55, 0x2d, 0x48, 0x2c, 0x57, 0xfc, 0x38, 0xd1, 0x1c, 0x8d, 0xe2, 0x67, 0xe5, 0x11, 0xde, 0x45, 0x58, }; static const wycheproof_xdh_test xdh_wei448_2497 = { .name = "xdh_wei448_2497", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2497_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2497_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2497_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 425 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2498 for XDH, tcId is 426 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2498_peerpubkey[] = { 0x5d, 0xeb, 0x8c, 0xb5, 0x71, 0xf9, 0xde, 0xea, 0x6f, 0x4c, 0xa6, 0xdd, 0xef, 0x78, 0x9c, 0xf0, 0x92, 0xbb, 0x7e, 0x33, 0xbb, 0xb8, 0x16, 0x0c, 0x0c, 0xc8, 0x3a, 0xff, 0xc6, 0xc0, 0x37, 0xdb, 0x17, 0xff, 0x3d, 0xbd, 0x12, 0x8e, 0x3e, 0x5d, 0x78, 0x04, 0x7d, 0xa6, 0xb9, 0xa0, 0x58, 0x51, 0xf1, 0x27, 0xdd, 0x0f, 0x27, 0xbe, 0xab, 0xaa, }; static const unsigned char xdh_wei448_2498_privkey[] = { 0xcc, 0x78, 0x89, 0xbb, 0x91, 0x35, 0x7e, 0x0c, 0xbf, 0xd5, 0x3a, 0x99, 0x47, 0x54, 0x4f, 0xab, 0x4e, 0x35, 0xf1, 0x10, 0x2d, 0xa8, 0x7d, 0x34, 0x35, 0x38, 0x70, 0x9f, 0xa4, 0x73, 0xaa, 0x82, 0x13, 0x06, 0xf2, 0x08, 0x1f, 0x56, 0x9a, 0xef, 0x83, 0x7d, 0x76, 0x94, 0x28, 0x13, 0x8d, 0x83, 0x1b, 0x9e, 0x57, 0x67, 0xb4, 0x31, 0xf7, 0x85, }; static const unsigned char xdh_wei448_2498_sharedsecret[] = { 0xa6, 0x9f, 0xd8, 0xc7, 0xa5, 0xed, 0x40, 0x1c, 0x81, 0x45, 0x50, 0xc9, 0xd1, 0x35, 0xff, 0xc4, 0x82, 0xab, 0x40, 0xe0, 0x78, 0x01, 0xab, 0x50, 0xd1, 0x08, 0x2f, 0xfb, 0xb7, 0x8e, 0x07, 0xe5, 0xe1, 0x62, 0x8f, 0xeb, 0x5a, 0x18, 0xcc, 0x25, 0x7f, 0xff, 0x43, 0x1d, 0x5e, 0x36, 0xd9, 0x99, 0xb7, 0x53, 0x70, 0x89, 0xe9, 0x07, 0x3b, 0x40, }; static const wycheproof_xdh_test xdh_wei448_2498 = { .name = "xdh_wei448_2498", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2498_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2498_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2498_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 8, tcId is 426 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2499 for XDH, tcId is 427 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2499_peerpubkey[] = { 0x90, 0x11, 0x7d, 0x3b, 0x29, 0x6d, 0xdd, 0xb7, 0xe1, 0x6f, 0xa6, 0x55, 0x84, 0x02, 0x18, 0x8f, 0xb3, 0xce, 0xd0, 0x95, 0xf6, 0xb5, 0xcf, 0xe5, 0x5a, 0x2e, 0xf7, 0x37, 0x63, 0x4f, 0xfe, 0xf7, 0xd7, 0x2e, 0x29, 0x87, 0x52, 0xfc, 0xd0, 0x5f, 0x46, 0xb0, 0x8b, 0x98, 0x38, 0xa0, 0x58, 0x37, 0x45, 0xcb, 0x4d, 0xed, 0x2a, 0xe9, 0x74, 0xb5, }; static const unsigned char xdh_wei448_2499_privkey[] = { 0x6c, 0xa1, 0x6c, 0x5c, 0x5a, 0x85, 0x3e, 0xa8, 0xec, 0x6b, 0xee, 0x34, 0x69, 0x9c, 0xe3, 0x3d, 0x98, 0x6f, 0xeb, 0xd1, 0x26, 0x1d, 0xd9, 0x01, 0x4d, 0xe1, 0x81, 0x5b, 0xd7, 0x22, 0xe4, 0xb2, 0x55, 0x4f, 0x5e, 0xe1, 0xd4, 0x5d, 0x54, 0x66, 0x3a, 0x91, 0x90, 0xb3, 0x14, 0xbf, 0xd8, 0xd9, 0xc5, 0x49, 0x2e, 0xd4, 0x74, 0xc0, 0x09, 0x88, }; static const unsigned char xdh_wei448_2499_sharedsecret[] = { 0xb4, 0x09, 0x2b, 0x95, 0x50, 0x12, 0x3a, 0x03, 0x08, 0x59, 0xd2, 0xb5, 0xd7, 0x37, 0x0b, 0xbe, 0xf9, 0x3c, 0xa2, 0x90, 0x15, 0x30, 0x25, 0x9d, 0xac, 0xc9, 0x21, 0x17, 0x8d, 0x09, 0x89, 0xd1, 0x15, 0x08, 0xed, 0xa0, 0x7e, 0x82, 0xf2, 0xab, 0x43, 0xff, 0x14, 0xbb, 0x54, 0xa8, 0x47, 0xb9, 0x08, 0xe2, 0x5e, 0xdc, 0x24, 0x52, 0x5a, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_2499 = { .name = "xdh_wei448_2499", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2499_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2499_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2499_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 427 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2500 for XDH, tcId is 428 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2500_peerpubkey[] = { 0x14, 0xe7, 0x73, 0x59, 0x5d, 0x8f, 0x47, 0xd1, 0x39, 0xe8, 0x62, 0x4c, 0x8c, 0xda, 0x31, 0xca, 0x26, 0xdd, 0x88, 0x7a, 0x3b, 0x37, 0x75, 0xef, 0xde, 0xc8, 0x83, 0x18, 0x31, 0xa9, 0x89, 0x72, 0x7f, 0x8d, 0xb0, 0x08, 0x27, 0x79, 0x6a, 0x18, 0x9a, 0x8c, 0x26, 0x16, 0x15, 0x74, 0x98, 0xc6, 0x66, 0x76, 0xed, 0x7b, 0x20, 0x37, 0xf0, 0xd1, }; static const unsigned char xdh_wei448_2500_privkey[] = { 0x5c, 0xf6, 0xe2, 0x12, 0xe2, 0xa0, 0x15, 0x2e, 0x32, 0x04, 0x15, 0x08, 0x34, 0xca, 0x22, 0x07, 0xb7, 0x41, 0xf1, 0xa8, 0x27, 0xd0, 0x36, 0xaf, 0x18, 0x55, 0x27, 0xc8, 0x97, 0x66, 0x1f, 0x11, 0x51, 0x40, 0x9b, 0x64, 0xba, 0xad, 0x8c, 0xc1, 0xda, 0x9d, 0xc7, 0x5a, 0xe5, 0xaa, 0xfb, 0x8c, 0x36, 0x06, 0x2f, 0xc9, 0xb6, 0xdc, 0x9c, 0x8b, }; static const unsigned char xdh_wei448_2500_sharedsecret[] = { 0x22, 0xb9, 0x38, 0xcc, 0xed, 0x84, 0x72, 0xf3, 0x80, 0x01, 0xdb, 0xa6, 0xa2, 0xee, 0xd8, 0x56, 0xc9, 0x3f, 0x70, 0x1c, 0x4e, 0xd8, 0x1f, 0x51, 0x01, 0x89, 0xa1, 0x0b, 0xe2, 0x6d, 0x85, 0xc6, 0x95, 0x40, 0x28, 0x4b, 0xd2, 0x3e, 0xf7, 0x9e, 0x47, 0xc4, 0x47, 0x09, 0xd3, 0x06, 0x7d, 0xf3, 0xe1, 0x5a, 0x36, 0xa8, 0xa4, 0x1b, 0x85, 0x13, }; static const wycheproof_xdh_test xdh_wei448_2500 = { .name = "xdh_wei448_2500", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2500_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2500_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2500_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 428 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2501 for XDH, tcId is 429 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2501_peerpubkey[] = { 0x17, 0x18, 0x76, 0x86, 0xf0, 0x67, 0x45, 0x4a, 0xf7, 0x8c, 0x62, 0x04, 0xec, 0xea, 0x72, 0x87, 0x32, 0xc3, 0x22, 0xc8, 0x03, 0x5e, 0xf3, 0x48, 0xad, 0x1c, 0x35, 0xe7, 0x41, 0x8b, 0x9e, 0x9e, 0xf6, 0xec, 0xcc, 0x12, 0xf8, 0x80, 0x64, 0xd0, 0x62, 0x99, 0xb7, 0x64, 0x3e, 0xbf, 0x41, 0x66, 0x4b, 0xbf, 0x2c, 0x47, 0x79, 0x5f, 0x9e, 0xe4, }; static const unsigned char xdh_wei448_2501_privkey[] = { 0xd0, 0x50, 0xe8, 0x2a, 0x74, 0x80, 0x61, 0xc3, 0x23, 0x44, 0x0b, 0xa4, 0xae, 0x3d, 0x53, 0x37, 0x45, 0xe9, 0x41, 0xa3, 0xf7, 0x5e, 0xd5, 0x56, 0x91, 0x92, 0x17, 0xe0, 0x2f, 0x06, 0x90, 0x31, 0x55, 0x80, 0x7a, 0x4e, 0x60, 0xfe, 0xff, 0x4b, 0x14, 0xfd, 0xc7, 0x8f, 0xc4, 0xa2, 0x70, 0x24, 0xca, 0xaa, 0x02, 0x42, 0x62, 0xad, 0xac, 0x82, }; static const unsigned char xdh_wei448_2501_sharedsecret[] = { 0xed, 0xd3, 0x1e, 0xfe, 0x06, 0x31, 0x5a, 0x1d, 0xf5, 0x63, 0x9a, 0x85, 0xa5, 0x8d, 0xc2, 0x9b, 0xe3, 0xd1, 0x1a, 0x29, 0xab, 0x62, 0x59, 0xfb, 0x61, 0x3c, 0xa8, 0xce, 0xc1, 0xc1, 0xec, 0x96, 0x2c, 0x51, 0x5d, 0xf7, 0xd7, 0xc4, 0xa7, 0x88, 0x15, 0xad, 0x33, 0xfd, 0x04, 0xcc, 0xf9, 0xfc, 0x70, 0xac, 0xcb, 0x29, 0x64, 0x10, 0x3f, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2501 = { .name = "xdh_wei448_2501", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2501_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2501_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2501_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 429 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2502 for XDH, tcId is 430 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2502_peerpubkey[] = { 0x5f, 0xa4, 0x8c, 0x35, 0x57, 0x40, 0xdd, 0xee, 0xe1, 0x54, 0x2f, 0x43, 0xde, 0x26, 0xdf, 0xbf, 0x1d, 0xd8, 0x92, 0xbc, 0x2c, 0xbe, 0x21, 0x12, 0x42, 0xfd, 0x2f, 0x4f, 0xa9, 0x3f, 0xc2, 0xf8, 0x60, 0x5d, 0xd8, 0xfc, 0x88, 0xba, 0xa6, 0xa2, 0x1c, 0xae, 0xae, 0xdb, 0x99, 0xe6, 0x0c, 0x78, 0x74, 0x80, 0xcb, 0xea, 0x8e, 0x7e, 0x6f, 0x0e, }; static const unsigned char xdh_wei448_2502_privkey[] = { 0xa4, 0xa9, 0xb6, 0xc6, 0x71, 0xcc, 0xca, 0xbf, 0x86, 0xd4, 0xd7, 0x50, 0xf6, 0x2a, 0xfc, 0xdd, 0x9e, 0x7c, 0xd5, 0x3d, 0x99, 0xd7, 0x8a, 0x5b, 0x44, 0x81, 0xc3, 0xef, 0xbd, 0xdf, 0xca, 0xac, 0x42, 0x33, 0xfc, 0x49, 0xab, 0x2e, 0x50, 0x3d, 0x58, 0x18, 0x90, 0xe6, 0x3b, 0x60, 0x50, 0x10, 0xd8, 0x7f, 0x41, 0xf9, 0x08, 0x25, 0xed, 0x88, }; static const unsigned char xdh_wei448_2502_sharedsecret[] = { 0xea, 0xcc, 0xe9, 0xab, 0xd1, 0xf1, 0x53, 0x94, 0xf5, 0xcd, 0xa8, 0x84, 0xc4, 0x1e, 0xed, 0xf6, 0x38, 0xfc, 0xe5, 0x54, 0xab, 0xf1, 0x5f, 0x19, 0x41, 0x14, 0x6a, 0x6a, 0xbb, 0x38, 0x1e, 0x18, 0x6f, 0x3d, 0xe8, 0x16, 0xd9, 0xf4, 0x4a, 0x66, 0x88, 0x6e, 0x6c, 0xab, 0xf2, 0xd4, 0xe2, 0x2d, 0xbd, 0xb4, 0xfa, 0xa2, 0x18, 0x4a, 0xa4, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_2502 = { .name = "xdh_wei448_2502", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2502_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2502_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2502_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 430 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2503 for XDH, tcId is 431 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2503_peerpubkey[] = { 0xe7, 0x17, 0x0c, 0x9d, 0xae, 0xd8, 0xb8, 0x4c, 0x22, 0x82, 0xf0, 0x06, 0xb3, 0xd2, 0x8c, 0x10, 0xb4, 0x5b, 0x5c, 0x1b, 0xd2, 0x39, 0x78, 0xb2, 0x34, 0x83, 0x5b, 0x21, 0xe5, 0xe0, 0x1b, 0x52, 0xb8, 0x92, 0xbb, 0x19, 0x97, 0x73, 0xea, 0xff, 0x77, 0x03, 0x66, 0xc3, 0xb2, 0x6a, 0xd1, 0x67, 0x4a, 0xcb, 0x01, 0x1f, 0x52, 0x02, 0x81, 0x11, }; static const unsigned char xdh_wei448_2503_privkey[] = { 0xa4, 0x99, 0x7a, 0x79, 0x78, 0x07, 0x34, 0x9e, 0xe8, 0xae, 0x58, 0x8e, 0x72, 0x28, 0x86, 0x46, 0x88, 0x88, 0xfa, 0x87, 0x23, 0x6d, 0xcb, 0x58, 0x75, 0xcf, 0x92, 0x66, 0xf0, 0x1b, 0x7c, 0x2e, 0x18, 0x60, 0x1a, 0xdb, 0xb8, 0xef, 0x6a, 0x3a, 0x92, 0xa5, 0x2c, 0x78, 0x84, 0x0f, 0xfd, 0x8f, 0xc2, 0x26, 0xe7, 0x2c, 0xf6, 0x52, 0x28, 0x82, }; static const unsigned char xdh_wei448_2503_sharedsecret[] = { 0x93, 0xd3, 0x83, 0x01, 0xd1, 0xa4, 0x39, 0x66, 0x71, 0xdd, 0x66, 0x4e, 0xfa, 0x08, 0x41, 0x6d, 0x8e, 0xf5, 0x09, 0x4b, 0x40, 0x8f, 0x7d, 0xd9, 0x33, 0x70, 0x83, 0x8b, 0x4f, 0xa6, 0x14, 0x6b, 0x3d, 0xd6, 0xfd, 0x19, 0xcb, 0xfe, 0xbf, 0xee, 0x1b, 0xb6, 0xe6, 0xaa, 0x96, 0x43, 0xa6, 0xb6, 0x8f, 0xc5, 0x83, 0x69, 0x02, 0x9b, 0xe9, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2503 = { .name = "xdh_wei448_2503", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2503_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2503_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2503_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 431 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2504 for XDH, tcId is 432 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2504_peerpubkey[] = { 0xd7, 0x41, 0xf0, 0x5b, 0x91, 0xf7, 0xbf, 0xe5, 0x15, 0x4f, 0x58, 0xea, 0x7c, 0x7f, 0x9a, 0xa1, 0xfe, 0x10, 0xec, 0xdb, 0x5f, 0xbd, 0xed, 0xf4, 0x3b, 0x0f, 0x9f, 0x26, 0x0b, 0xef, 0x62, 0x0a, 0x02, 0xc3, 0xc6, 0x5e, 0x51, 0x07, 0x95, 0x47, 0x17, 0xbf, 0x99, 0xb4, 0x9f, 0x4a, 0xaf, 0xe2, 0x2e, 0x5f, 0xee, 0x26, 0xa1, 0xa7, 0xef, 0x23, }; static const unsigned char xdh_wei448_2504_privkey[] = { 0xe0, 0x1f, 0xe2, 0x6e, 0x43, 0x75, 0xd4, 0xf6, 0x9b, 0x32, 0x09, 0xdd, 0x68, 0x81, 0xc0, 0xd4, 0xf0, 0x1f, 0xb7, 0x72, 0x81, 0xb9, 0xb6, 0xec, 0xc3, 0x5e, 0x79, 0x80, 0x54, 0x2a, 0x10, 0xda, 0xf8, 0x38, 0xba, 0x6c, 0xd4, 0xdb, 0xa6, 0x22, 0x54, 0xab, 0xba, 0x0e, 0xd4, 0x48, 0x33, 0x79, 0x83, 0x8a, 0x0a, 0xd7, 0x35, 0x37, 0xeb, 0x86, }; static const unsigned char xdh_wei448_2504_sharedsecret[] = { 0xd0, 0x62, 0x3e, 0x44, 0x77, 0x00, 0x86, 0x6d, 0xe7, 0x68, 0x78, 0x26, 0xa8, 0xa7, 0x0b, 0xc1, 0xf1, 0x5f, 0xb8, 0x42, 0x61, 0xa2, 0x7f, 0x64, 0x0a, 0xd0, 0x3e, 0x77, 0x8c, 0x50, 0x7b, 0xc2, 0x54, 0xe0, 0x50, 0x04, 0xa0, 0x0a, 0xb2, 0xef, 0x49, 0xeb, 0x7d, 0x0c, 0x91, 0x02, 0xc6, 0x40, 0x0f, 0x67, 0x7f, 0x45, 0x25, 0x04, 0xec, 0x12, }; static const wycheproof_xdh_test xdh_wei448_2504 = { .name = "xdh_wei448_2504", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2504_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2504_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2504_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 432 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2505 for XDH, tcId is 433 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2505_peerpubkey[] = { 0x33, 0x7a, 0x44, 0xd3, 0xb0, 0x72, 0xad, 0x2a, 0x41, 0xdd, 0x41, 0x92, 0xca, 0x2f, 0xd8, 0x61, 0xaf, 0x53, 0xef, 0xd0, 0x80, 0xd0, 0xee, 0xbf, 0xca, 0xc3, 0xc6, 0x6c, 0xc9, 0x9b, 0x84, 0xbe, 0xa3, 0x36, 0xec, 0xef, 0xdd, 0xf5, 0x5e, 0x6b, 0xec, 0x33, 0x7d, 0xa3, 0x34, 0xb8, 0xeb, 0xe3, 0x8b, 0x4c, 0x39, 0x46, 0x66, 0xd2, 0xaa, 0x56, }; static const unsigned char xdh_wei448_2505_privkey[] = { 0xa0, 0x4c, 0x53, 0xb1, 0x52, 0xe8, 0xfd, 0xe1, 0x9a, 0x07, 0x96, 0xd0, 0x56, 0x75, 0x9e, 0x13, 0x48, 0xac, 0xd4, 0x3e, 0xfe, 0x3f, 0x55, 0xb1, 0xfb, 0x38, 0xd6, 0xc6, 0xd5, 0x07, 0x21, 0x1e, 0xe6, 0x64, 0x27, 0x14, 0xb3, 0x23, 0x4e, 0x6e, 0x2d, 0xbb, 0x36, 0xff, 0xb5, 0xd0, 0x2d, 0xa8, 0xa7, 0xc8, 0x01, 0x26, 0x58, 0xff, 0xae, 0x89, }; static const unsigned char xdh_wei448_2505_sharedsecret[] = { 0x6c, 0xf3, 0xf4, 0xc8, 0x9b, 0xbc, 0xdd, 0x24, 0x99, 0x41, 0x38, 0x2a, 0x6d, 0x06, 0xaf, 0xc4, 0x47, 0x5c, 0xa7, 0x2c, 0x22, 0x8d, 0x9d, 0x3c, 0xc4, 0x72, 0x1c, 0xc9, 0xe6, 0x3d, 0x94, 0x48, 0xaf, 0x90, 0x01, 0x3b, 0x4d, 0x83, 0x1a, 0x19, 0x27, 0xbe, 0x13, 0xa2, 0x50, 0x20, 0xe7, 0x25, 0xe7, 0xbe, 0xb9, 0x45, 0x50, 0xef, 0xbe, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_2505 = { .name = "xdh_wei448_2505", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2505_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2505_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2505_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 433 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2506 for XDH, tcId is 434 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2506_peerpubkey[] = { 0x13, 0xde, 0x45, 0x94, 0xaf, 0xab, 0xeb, 0xbf, 0xff, 0x7c, 0x6a, 0xd2, 0x4d, 0x9e, 0x36, 0xdb, 0x41, 0x65, 0x0a, 0x66, 0xce, 0xed, 0x76, 0x63, 0xc4, 0x4a, 0x9e, 0xe3, 0x4f, 0x36, 0x04, 0xe8, 0xd6, 0xc4, 0x5b, 0xcc, 0xaa, 0xee, 0xcb, 0xa8, 0x88, 0x42, 0x44, 0xd2, 0xe7, 0x17, 0x60, 0xaf, 0xfc, 0x57, 0xe3, 0xe5, 0x1a, 0xe7, 0x75, 0x71, }; static const unsigned char xdh_wei448_2506_privkey[] = { 0xa4, 0x62, 0xce, 0xc9, 0x36, 0x92, 0x33, 0xf2, 0xaa, 0x18, 0xdb, 0x8e, 0x05, 0x9b, 0x5b, 0xe1, 0x97, 0x19, 0xbd, 0x3f, 0x8e, 0x75, 0x28, 0x81, 0x99, 0x17, 0xa9, 0x6a, 0xbe, 0xc1, 0x30, 0xa4, 0xca, 0xbb, 0xd5, 0x9a, 0xb3, 0x85, 0xbb, 0xd8, 0x8a, 0xb7, 0x25, 0xed, 0x1c, 0x2d, 0x01, 0x1e, 0x9d, 0x33, 0x1d, 0x75, 0x04, 0xd6, 0x0e, 0x8b, }; static const unsigned char xdh_wei448_2506_sharedsecret[] = { 0xec, 0xcf, 0x64, 0x2c, 0x29, 0xf9, 0x48, 0xbb, 0x35, 0x00, 0x9e, 0x6a, 0xc2, 0x60, 0x37, 0x38, 0x81, 0x82, 0xd1, 0xac, 0x54, 0xa1, 0xdc, 0xf9, 0x70, 0xea, 0xd2, 0xbe, 0xae, 0xcc, 0x71, 0x4a, 0xab, 0xf6, 0x4b, 0x6f, 0x0d, 0x4f, 0x34, 0xc7, 0xbc, 0xe6, 0xb1, 0xe0, 0x73, 0x19, 0x98, 0x4f, 0x9f, 0x15, 0x32, 0x6d, 0xf5, 0x76, 0x80, 0x8b, }; static const wycheproof_xdh_test xdh_wei448_2506 = { .name = "xdh_wei448_2506", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2506_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2506_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2506_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 434 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2507 for XDH, tcId is 435 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2507_peerpubkey[] = { 0x78, 0x49, 0x8b, 0xd7, 0x7e, 0x19, 0xd5, 0xc0, 0x3f, 0xe0, 0x9f, 0xc9, 0x92, 0x29, 0xb1, 0xa8, 0x17, 0xf7, 0x32, 0x60, 0x21, 0xe2, 0xe0, 0x7b, 0xc0, 0x91, 0x7d, 0x54, 0x79, 0x84, 0x81, 0x13, 0xe2, 0x30, 0x7e, 0x50, 0xbc, 0xcf, 0x90, 0x4a, 0x50, 0x23, 0xab, 0xb9, 0xbe, 0x03, 0x86, 0xa0, 0x18, 0xeb, 0x50, 0xbc, 0xd9, 0x9b, 0x7d, 0x93, }; static const unsigned char xdh_wei448_2507_privkey[] = { 0x74, 0xde, 0xdb, 0x25, 0xf4, 0x9d, 0xe2, 0x23, 0x65, 0x68, 0x49, 0x20, 0x08, 0xbd, 0x6c, 0xc8, 0x75, 0x5a, 0xeb, 0x73, 0x03, 0xe2, 0x40, 0xf0, 0xac, 0xc8, 0xa5, 0x99, 0x99, 0xdc, 0x94, 0x71, 0x7a, 0xe3, 0xfb, 0x4d, 0x04, 0x52, 0xf0, 0x82, 0x78, 0x4e, 0x89, 0x5b, 0xd3, 0x1b, 0xdf, 0xbd, 0xb6, 0xe7, 0x19, 0x55, 0xaf, 0x31, 0xe4, 0x83, }; static const unsigned char xdh_wei448_2507_sharedsecret[] = { 0x64, 0x16, 0xc4, 0x78, 0xb8, 0x3a, 0xba, 0x72, 0xde, 0xdc, 0xf7, 0xcd, 0xf7, 0x58, 0xf2, 0xa2, 0x19, 0xb0, 0x85, 0x60, 0x10, 0x85, 0x9a, 0xe9, 0x07, 0xfd, 0xbb, 0x06, 0xdf, 0xb2, 0xfe, 0x93, 0x63, 0x7c, 0xe1, 0x4b, 0xa1, 0x2c, 0x40, 0x75, 0x59, 0x1e, 0x3a, 0xa4, 0x39, 0xe9, 0x83, 0x5e, 0xe6, 0x53, 0x02, 0xca, 0x72, 0x26, 0xbc, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_2507 = { .name = "xdh_wei448_2507", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2507_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2507_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2507_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 435 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2508 for XDH, tcId is 436 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2508_peerpubkey[] = { 0xa1, 0x12, 0x9e, 0x2b, 0xa4, 0xe8, 0xe5, 0x77, 0xf2, 0x3f, 0x09, 0x9b, 0x99, 0x02, 0xc8, 0x3e, 0x3a, 0xb9, 0x07, 0xf5, 0x98, 0x51, 0x11, 0xf9, 0x2f, 0x1d, 0x66, 0x8f, 0x1c, 0x0f, 0x53, 0x4e, 0x00, 0x22, 0x8b, 0xbc, 0xd8, 0xf3, 0x12, 0xbf, 0x46, 0xd7, 0xe3, 0x98, 0x9c, 0x9d, 0xe6, 0x07, 0xe4, 0x98, 0x07, 0x94, 0x34, 0xa5, 0x90, 0xc8, }; static const unsigned char xdh_wei448_2508_privkey[] = { 0x1c, 0xd9, 0xf8, 0x5a, 0x2e, 0x93, 0x13, 0xdf, 0xaf, 0xa6, 0xe8, 0xcc, 0xb4, 0x5a, 0xe2, 0x6a, 0x51, 0x28, 0x8c, 0x39, 0xbd, 0xc4, 0xa0, 0xde, 0x50, 0xc7, 0x57, 0x4c, 0x7d, 0xc5, 0x0c, 0xcb, 0xb0, 0x68, 0x3d, 0xc4, 0x0c, 0x03, 0x6e, 0xbb, 0x83, 0x3b, 0x3b, 0x6d, 0x82, 0xdd, 0xfb, 0x18, 0x00, 0x64, 0x78, 0xfe, 0xcf, 0x2d, 0x98, 0x82, }; static const unsigned char xdh_wei448_2508_sharedsecret[] = { 0x99, 0x64, 0xf1, 0xfa, 0x7b, 0x34, 0xeb, 0x88, 0x89, 0xe8, 0xda, 0x93, 0xa1, 0x6a, 0x3d, 0x35, 0x45, 0xfa, 0xca, 0xa0, 0x38, 0xba, 0x15, 0x20, 0x93, 0xe2, 0x22, 0x01, 0x1c, 0x1c, 0xb0, 0xa9, 0x48, 0x7c, 0xca, 0x08, 0xe2, 0xa8, 0xe9, 0x3f, 0x44, 0x0e, 0x4c, 0x38, 0x3e, 0xb8, 0xe2, 0x6c, 0xf2, 0x5a, 0x22, 0xad, 0x35, 0x8b, 0xc6, 0xae, }; static const wycheproof_xdh_test xdh_wei448_2508 = { .name = "xdh_wei448_2508", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2508_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2508_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2508_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 436 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2509 for XDH, tcId is 437 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2509_peerpubkey[] = { 0xc5, 0x0e, 0x7e, 0x03, 0xc7, 0xb6, 0xbd, 0xaf, 0x94, 0x9c, 0xfa, 0x1d, 0x16, 0x76, 0xa6, 0x32, 0x15, 0x08, 0xa4, 0x46, 0xf3, 0xee, 0x24, 0x6d, 0x78, 0x1b, 0xac, 0x57, 0x25, 0xd9, 0x31, 0xe8, 0xf0, 0xb0, 0x0a, 0x78, 0x0a, 0xba, 0xe0, 0x0b, 0x31, 0x3e, 0x66, 0xe6, 0x17, 0x0f, 0x21, 0xf3, 0xbd, 0x01, 0xb0, 0x86, 0x51, 0xd5, 0x8d, 0xe8, }; static const unsigned char xdh_wei448_2509_privkey[] = { 0x3c, 0xbb, 0x83, 0x47, 0x73, 0x92, 0x93, 0xe9, 0x9b, 0x8d, 0xa8, 0x9a, 0xc2, 0xe5, 0xa6, 0x77, 0xc7, 0x2a, 0x02, 0x21, 0x78, 0xef, 0xc9, 0x81, 0x49, 0x41, 0xb8, 0x99, 0xaf, 0x28, 0xe7, 0xa1, 0xdf, 0x9a, 0xed, 0xc7, 0x0b, 0x3e, 0xc8, 0xf5, 0xac, 0x2a, 0xd4, 0xaf, 0x9c, 0x53, 0xd5, 0x2a, 0xa5, 0xaa, 0xd8, 0xf1, 0x23, 0x46, 0xd1, 0x8e, }; static const unsigned char xdh_wei448_2509_sharedsecret[] = { 0x6d, 0x99, 0x2d, 0x27, 0x53, 0xe4, 0xac, 0xcd, 0x47, 0x8b, 0x92, 0x5e, 0xc3, 0x9d, 0x73, 0x49, 0x30, 0x5a, 0x49, 0x88, 0x9b, 0xdc, 0x7f, 0x25, 0xec, 0xf3, 0xb0, 0xa4, 0xb4, 0xc2, 0xa0, 0x3a, 0xc6, 0x2f, 0x60, 0x53, 0x3b, 0xa6, 0xe3, 0x97, 0x21, 0x71, 0x99, 0xba, 0xbf, 0x69, 0x5e, 0xea, 0x42, 0x46, 0x1f, 0x24, 0x6e, 0x9c, 0x75, 0xda, }; static const wycheproof_xdh_test xdh_wei448_2509 = { .name = "xdh_wei448_2509", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2509_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2509_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2509_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 437 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2510 for XDH, tcId is 438 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2510_peerpubkey[] = { 0xe5, 0x11, 0x3d, 0x1e, 0x12, 0x9f, 0x26, 0x1b, 0xc9, 0x1e, 0x7a, 0x40, 0x9b, 0x73, 0xfe, 0x0c, 0x79, 0xf5, 0x61, 0xfd, 0xab, 0xa0, 0x9b, 0xe3, 0xb4, 0x5a, 0xa3, 0x99, 0x9e, 0xa6, 0x17, 0x4c, 0x78, 0x37, 0x60, 0x6e, 0xd9, 0xc2, 0xfb, 0x4c, 0x36, 0xa6, 0x13, 0xf7, 0x97, 0xdc, 0x76, 0x75, 0x22, 0x87, 0xbb, 0x58, 0xa9, 0xf1, 0xcb, 0x15, }; static const unsigned char xdh_wei448_2510_privkey[] = { 0x0c, 0x94, 0x26, 0xcb, 0x52, 0x09, 0xdf, 0xd0, 0x7f, 0xd3, 0x46, 0x56, 0xf1, 0x45, 0x6e, 0x6b, 0xaf, 0xa1, 0x1c, 0xad, 0x58, 0xa7, 0x62, 0xea, 0x22, 0x1a, 0x16, 0xc1, 0xba, 0x8b, 0x9d, 0x24, 0x77, 0x74, 0x27, 0x44, 0xa0, 0x63, 0x62, 0xb4, 0x06, 0x97, 0x85, 0x43, 0x05, 0xd6, 0x72, 0xd7, 0xdb, 0xbb, 0xd4, 0x84, 0x2b, 0xec, 0xa5, 0x82, }; static const unsigned char xdh_wei448_2510_sharedsecret[] = { 0xa7, 0x5d, 0x72, 0x6b, 0x54, 0xce, 0x76, 0xe9, 0xf1, 0x5d, 0x4a, 0x9f, 0x52, 0x11, 0xb6, 0x24, 0x5d, 0x68, 0xc1, 0x4c, 0xf4, 0x84, 0x6f, 0xe4, 0x70, 0xcb, 0x44, 0xb9, 0x5a, 0xf6, 0x80, 0x96, 0x57, 0x3f, 0x0d, 0x96, 0xd4, 0xfc, 0xf3, 0x0b, 0x7e, 0x19, 0x84, 0x18, 0x8f, 0xff, 0x0f, 0x3a, 0xb5, 0xc1, 0x10, 0x50, 0x0e, 0xee, 0xc4, 0xe0, }; static const wycheproof_xdh_test xdh_wei448_2510 = { .name = "xdh_wei448_2510", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2510_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2510_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2510_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 438 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2511 for XDH, tcId is 439 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2511_peerpubkey[] = { 0x56, 0x15, 0x12, 0x2b, 0x2f, 0xbb, 0x50, 0x62, 0x04, 0x09, 0x18, 0x65, 0x84, 0x1b, 0x5d, 0x28, 0xd9, 0x07, 0x55, 0x77, 0xb4, 0xaf, 0xa3, 0x38, 0xb4, 0x3f, 0xc6, 0x57, 0x9e, 0xca, 0x54, 0x76, 0xe3, 0x56, 0x78, 0x99, 0xba, 0x6b, 0x33, 0x29, 0xb4, 0x57, 0xfd, 0x46, 0xa4, 0xf3, 0xca, 0x23, 0x9e, 0x18, 0x5a, 0x73, 0x56, 0xf0, 0x68, 0x37, }; static const unsigned char xdh_wei448_2511_privkey[] = { 0x64, 0x90, 0x6d, 0x71, 0x3a, 0x86, 0x15, 0x12, 0xe1, 0x16, 0x31, 0xe1, 0x73, 0xa0, 0xae, 0xd2, 0xfd, 0x8b, 0x54, 0xb1, 0x39, 0x4e, 0x89, 0xb1, 0xd8, 0xcd, 0x08, 0x4e, 0xe6, 0xba, 0xcf, 0x81, 0xea, 0xfa, 0xed, 0x45, 0x12, 0x5d, 0xa4, 0xd0, 0xc5, 0xe2, 0xfb, 0xd8, 0xe3, 0x51, 0x8e, 0x66, 0x31, 0xae, 0xc9, 0x8d, 0xba, 0x41, 0x87, 0x83, }; static const unsigned char xdh_wei448_2511_sharedsecret[] = { 0xcc, 0x92, 0x97, 0xac, 0x7b, 0x8f, 0x07, 0xcf, 0x15, 0x4e, 0xea, 0xd3, 0xff, 0x95, 0xf0, 0xbe, 0x8e, 0xe2, 0xee, 0xea, 0xae, 0xc1, 0xd2, 0xaf, 0x9b, 0xb7, 0x70, 0xc5, 0x2a, 0x33, 0xad, 0x86, 0x5b, 0x9a, 0x18, 0x92, 0x6f, 0xf2, 0xce, 0x68, 0x9f, 0xf5, 0x8e, 0x2f, 0xb4, 0x0e, 0x0c, 0xfd, 0x1c, 0xd8, 0x68, 0xcd, 0xec, 0x77, 0x6e, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2511 = { .name = "xdh_wei448_2511", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2511_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2511_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2511_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 439 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2512 for XDH, tcId is 440 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2512_peerpubkey[] = { 0x73, 0x02, 0x41, 0x13, 0x7d, 0x5a, 0x3e, 0x0a, 0x14, 0x7a, 0xb9, 0x92, 0xae, 0x96, 0xb0, 0x75, 0x6c, 0x81, 0x0d, 0x30, 0xa1, 0x03, 0xd2, 0x09, 0xda, 0x7a, 0xfe, 0x10, 0xd8, 0x0b, 0xe2, 0x72, 0x93, 0x7b, 0x0b, 0xe3, 0x70, 0xf0, 0xff, 0xd3, 0x8c, 0xca, 0x62, 0x56, 0x90, 0xa1, 0xa8, 0xe7, 0x9b, 0x95, 0xd4, 0x41, 0x7e, 0x8d, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_2512_privkey[] = { 0x84, 0x32, 0xc3, 0xe5, 0x95, 0x02, 0xa3, 0x95, 0xab, 0x45, 0x04, 0x9d, 0x1c, 0x97, 0x89, 0x9b, 0x5d, 0xb6, 0xb1, 0xa3, 0x47, 0x4a, 0x08, 0xc6, 0x78, 0x5a, 0xdb, 0xfe, 0xdd, 0x8c, 0xb1, 0xed, 0xc9, 0x6f, 0x3b, 0xfb, 0xf3, 0xb2, 0xab, 0x9f, 0x38, 0x7f, 0x65, 0x29, 0x6e, 0xf4, 0xab, 0xeb, 0x4a, 0x56, 0x1a, 0x9e, 0xc6, 0x8a, 0xdb, 0x8b, }; static const unsigned char xdh_wei448_2512_sharedsecret[] = { 0x8d, 0x9d, 0x14, 0x03, 0x63, 0xa7, 0x9d, 0xc8, 0x12, 0x6a, 0xd4, 0xd3, 0xe7, 0x52, 0x64, 0xa7, 0x69, 0xfd, 0x0d, 0x08, 0x4b, 0x91, 0x0b, 0x9e, 0x1e, 0x8b, 0x5a, 0xbb, 0x84, 0x9b, 0x69, 0x2b, 0x73, 0xc2, 0xc2, 0xd9, 0x62, 0xc7, 0x55, 0xd0, 0x80, 0x8b, 0x66, 0x8d, 0x24, 0x9a, 0x52, 0xc7, 0xaf, 0x49, 0x5d, 0xd3, 0xe2, 0x9b, 0x2a, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_2512 = { .name = "xdh_wei448_2512", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2512_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2512_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2512_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 440 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2513 for XDH, tcId is 441 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2513_peerpubkey[] = { 0x56, 0xfb, 0xc7, 0xa4, 0xb2, 0x6d, 0x32, 0xb4, 0x75, 0x65, 0x64, 0xb7, 0xf0, 0x74, 0x25, 0x9c, 0x13, 0x91, 0x0e, 0x57, 0x9f, 0xd6, 0x75, 0x4e, 0xb1, 0x96, 0x26, 0x47, 0xf3, 0x32, 0xbb, 0x1d, 0x92, 0x93, 0x85, 0x4f, 0x1c, 0x30, 0x5b, 0x1c, 0x3a, 0x66, 0xbb, 0x6c, 0x9a, 0x99, 0xc8, 0x98, 0x3e, 0x0f, 0xba, 0xaa, 0x1d, 0x9e, 0x2b, 0xf4, }; static const unsigned char xdh_wei448_2513_privkey[] = { 0xd4, 0x07, 0x96, 0x8b, 0x10, 0xd6, 0x95, 0x05, 0x65, 0xe5, 0x6c, 0x71, 0x6d, 0xb5, 0xfb, 0x60, 0xaa, 0xd7, 0x94, 0x27, 0x31, 0x1b, 0xba, 0x84, 0xba, 0x4a, 0xf2, 0x12, 0x8f, 0xff, 0x2f, 0xc8, 0x37, 0x0f, 0x11, 0x44, 0x08, 0x4b, 0xbc, 0x7b, 0x42, 0x0f, 0x84, 0xaf, 0xe8, 0xc3, 0x91, 0x0d, 0xe8, 0x98, 0xb9, 0x76, 0x31, 0x9f, 0x76, 0x89, }; static const unsigned char xdh_wei448_2513_sharedsecret[] = { 0x29, 0x07, 0x44, 0x85, 0xc6, 0x60, 0x20, 0xf8, 0xa2, 0x6e, 0x16, 0xaf, 0xe6, 0x8a, 0xe1, 0x30, 0x65, 0xc1, 0x3e, 0x9d, 0x16, 0x3b, 0x19, 0x79, 0x8e, 0xa9, 0x92, 0xf3, 0x8f, 0x7b, 0xae, 0x87, 0xee, 0xdc, 0xea, 0x21, 0x4b, 0x78, 0x8b, 0x95, 0x12, 0x68, 0x19, 0xa9, 0xf1, 0xe7, 0x11, 0xca, 0x9d, 0x72, 0x58, 0xb5, 0xd5, 0xe6, 0x3e, 0x30, }; static const wycheproof_xdh_test xdh_wei448_2513 = { .name = "xdh_wei448_2513", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2513_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2513_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2513_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 441 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2514 for XDH, tcId is 442 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2514_peerpubkey[] = { 0x00, 0xdf, 0x4e, 0x75, 0x40, 0xc0, 0xb9, 0xfe, 0xad, 0xfc, 0x21, 0xdf, 0xc5, 0xd9, 0xeb, 0x3a, 0x04, 0xb1, 0xe8, 0x78, 0x39, 0x63, 0x8d, 0x35, 0x0d, 0x51, 0xeb, 0x0d, 0xc4, 0x56, 0x04, 0x90, 0x1d, 0xab, 0x57, 0x82, 0x5e, 0x93, 0x7f, 0x15, 0xd7, 0xfb, 0x80, 0x89, 0xa1, 0x27, 0x87, 0x18, 0xac, 0x00, 0xd2, 0x75, 0x8f, 0xd1, 0xf4, 0x21, }; static const unsigned char xdh_wei448_2514_privkey[] = { 0xd8, 0xb1, 0xca, 0x51, 0xa6, 0xe3, 0x61, 0xd2, 0xa7, 0x1f, 0xa8, 0x4d, 0x49, 0x57, 0xf2, 0xcc, 0xfc, 0x8b, 0xb3, 0x72, 0x32, 0x0c, 0xcf, 0x74, 0xe2, 0x79, 0xf6, 0xef, 0xea, 0x2c, 0xa3, 0x61, 0x37, 0xd4, 0xdf, 0x19, 0x2d, 0x93, 0x27, 0x05, 0xb7, 0xb4, 0xed, 0x2d, 0xee, 0x3c, 0x56, 0x86, 0x03, 0xec, 0x62, 0xc7, 0x7e, 0x4a, 0xf4, 0x85, }; static const unsigned char xdh_wei448_2514_sharedsecret[] = { 0xd9, 0x83, 0x35, 0x3a, 0x16, 0x8b, 0xc2, 0x29, 0xf3, 0xb8, 0x05, 0xc0, 0xe0, 0x36, 0x98, 0x33, 0x6f, 0xea, 0x84, 0xb9, 0x22, 0x12, 0x12, 0x9d, 0xf2, 0x34, 0x40, 0x59, 0xd1, 0x38, 0xff, 0x00, 0x1a, 0x5b, 0xb5, 0x36, 0x85, 0x37, 0x3f, 0x8f, 0x93, 0x79, 0x13, 0x72, 0x16, 0x53, 0x4b, 0x05, 0x57, 0xeb, 0x34, 0x83, 0x36, 0x7d, 0x42, 0x68, }; static const wycheproof_xdh_test xdh_wei448_2514 = { .name = "xdh_wei448_2514", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2514_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2514_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2514_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 442 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2515 for XDH, tcId is 443 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2515_peerpubkey[] = { 0x5c, 0xba, 0x61, 0x48, 0x14, 0x5e, 0x5c, 0x21, 0x51, 0x77, 0x2d, 0xb6, 0x9d, 0xce, 0x9f, 0x12, 0x3e, 0xc8, 0xcb, 0x0d, 0x4e, 0x42, 0x60, 0x36, 0x15, 0xd1, 0x60, 0xb3, 0xd4, 0xa4, 0xee, 0xab, 0xe5, 0x4b, 0xf0, 0x0f, 0x55, 0x88, 0x3b, 0xc7, 0xc0, 0x09, 0xb9, 0x4d, 0x5f, 0x35, 0x9c, 0xd1, 0xac, 0xd5, 0xea, 0x14, 0x55, 0x74, 0x2e, 0x36, }; static const unsigned char xdh_wei448_2515_privkey[] = { 0xf8, 0x54, 0xe8, 0x01, 0x4b, 0xfe, 0x18, 0x70, 0xf5, 0x31, 0xf8, 0x32, 0x00, 0x36, 0x40, 0xe4, 0x43, 0x9a, 0xac, 0x4b, 0xc2, 0x3e, 0x03, 0x92, 0x0f, 0xcd, 0x65, 0x1f, 0xae, 0x12, 0x8d, 0x38, 0xe6, 0xf3, 0x6c, 0x53, 0xb9, 0x1b, 0xa8, 0x29, 0x63, 0x62, 0x3f, 0xed, 0x40, 0x16, 0x15, 0x6b, 0xa5, 0x5f, 0x61, 0xfa, 0xb6, 0x6e, 0xe6, 0x82, }; static const unsigned char xdh_wei448_2515_sharedsecret[] = { 0x3e, 0x46, 0xc5, 0xfa, 0x76, 0xd5, 0x9e, 0x0c, 0xc7, 0x98, 0x25, 0xb4, 0xd3, 0xc4, 0x9d, 0xa0, 0x18, 0x2a, 0xc8, 0xd4, 0x92, 0x50, 0xc1, 0xd9, 0x35, 0x28, 0x92, 0x0e, 0x69, 0xc5, 0x7a, 0xfd, 0x24, 0x5b, 0xa5, 0x2c, 0x11, 0x3a, 0x52, 0xdd, 0x17, 0xd8, 0x13, 0xe4, 0x02, 0x9a, 0x8b, 0x15, 0xba, 0xfc, 0xc7, 0x0b, 0x7f, 0x1c, 0x36, 0xec, }; static const wycheproof_xdh_test xdh_wei448_2515 = { .name = "xdh_wei448_2515", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2515_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2515_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2515_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 443 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2516 for XDH, tcId is 444 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2516_peerpubkey[] = { 0xf5, 0xff, 0x91, 0xf7, 0xed, 0x21, 0xf4, 0x12, 0xb7, 0x58, 0x99, 0x2d, 0x15, 0x08, 0xfd, 0xdf, 0x2d, 0xdc, 0x47, 0x00, 0xac, 0x4c, 0x9f, 0xd3, 0x51, 0xe2, 0x6d, 0x52, 0x04, 0xe0, 0x7a, 0x6a, 0x5a, 0xf6, 0x72, 0x5d, 0x66, 0x1b, 0x5c, 0x54, 0xfb, 0x26, 0x4b, 0xf7, 0xc2, 0xfa, 0x8f, 0x8e, 0x98, 0xd6, 0x57, 0x9f, 0x22, 0x57, 0x95, 0xad, }; static const unsigned char xdh_wei448_2516_privkey[] = { 0x20, 0x9c, 0xee, 0x11, 0x1f, 0xcf, 0xde, 0x94, 0xbd, 0x33, 0x02, 0x0a, 0xe5, 0x51, 0x5d, 0x62, 0xe0, 0x9c, 0x69, 0x17, 0xe3, 0xe3, 0x0a, 0xfd, 0xc9, 0xa1, 0xba, 0x34, 0x9e, 0x6c, 0xd9, 0x60, 0x9d, 0xdb, 0xc8, 0xa1, 0x84, 0xef, 0xb9, 0x50, 0xce, 0x66, 0x14, 0xb3, 0x12, 0x05, 0x9e, 0xb1, 0x50, 0x87, 0x33, 0xca, 0x84, 0x63, 0x29, 0x84, }; static const unsigned char xdh_wei448_2516_sharedsecret[] = { 0x7f, 0x24, 0xac, 0xbd, 0x29, 0xc0, 0xa2, 0x3a, 0x43, 0x16, 0xa2, 0x91, 0x98, 0xba, 0xfa, 0x8e, 0x91, 0xfd, 0xcd, 0xbd, 0x06, 0x63, 0x9e, 0x55, 0xc4, 0xf3, 0xe7, 0x60, 0x2a, 0xb2, 0x72, 0x2d, 0x75, 0xeb, 0x00, 0x80, 0xf8, 0xc1, 0x1e, 0xfb, 0x11, 0x0f, 0xb9, 0x4f, 0x67, 0x26, 0x5e, 0xb4, 0xe5, 0x6a, 0xe0, 0xd9, 0x91, 0xb1, 0x71, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_2516 = { .name = "xdh_wei448_2516", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2516_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2516_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2516_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 444 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2517 for XDH, tcId is 445 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2517_peerpubkey[] = { 0xda, 0xc2, 0x84, 0x09, 0x77, 0xf3, 0x98, 0x90, 0xf4, 0xe1, 0x7e, 0xbc, 0x7c, 0x48, 0x36, 0x14, 0x16, 0x7a, 0xc2, 0xc3, 0x7a, 0x55, 0xb0, 0x5b, 0x63, 0x61, 0x81, 0x60, 0x8b, 0xc5, 0x39, 0x36, 0xdf, 0xed, 0x3b, 0x4f, 0x4f, 0x0b, 0x8f, 0xfb, 0x05, 0x0f, 0x2f, 0x18, 0x31, 0x48, 0x51, 0x65, 0x70, 0x9b, 0x80, 0xd8, 0x8a, 0xac, 0x10, 0xc2, }; static const unsigned char xdh_wei448_2517_privkey[] = { 0xcc, 0x29, 0x03, 0x0d, 0x9e, 0xa5, 0x28, 0x34, 0x11, 0xc7, 0xba, 0xd6, 0xba, 0xed, 0xb4, 0x2e, 0xd3, 0x7e, 0x26, 0xfd, 0x17, 0xd9, 0x62, 0x0a, 0x9b, 0xb4, 0xd4, 0x1b, 0x17, 0x47, 0xc3, 0xfa, 0x56, 0xc0, 0xf5, 0x0d, 0xa7, 0xb5, 0x22, 0x7b, 0xa3, 0xbb, 0x30, 0x33, 0x7c, 0x76, 0x95, 0x88, 0xb4, 0xcb, 0xda, 0x9e, 0x2b, 0xa6, 0xc1, 0x83, }; static const unsigned char xdh_wei448_2517_sharedsecret[] = { 0x82, 0x35, 0x58, 0xfa, 0x43, 0xf9, 0x9f, 0xe6, 0xe0, 0xa5, 0x57, 0x1e, 0x5a, 0xa0, 0x1f, 0x8c, 0xa1, 0xaf, 0xa7, 0x3d, 0x6b, 0x6d, 0xf9, 0xd2, 0xff, 0x81, 0x34, 0x6b, 0x0b, 0xa5, 0x1e, 0xdc, 0x3e, 0x3a, 0x29, 0x27, 0x43, 0x38, 0x90, 0x8b, 0x68, 0xa9, 0xa0, 0x3a, 0xda, 0x44, 0x2b, 0x6a, 0x1e, 0x91, 0x71, 0xb2, 0x6a, 0xbf, 0xf8, 0xc6, }; static const wycheproof_xdh_test xdh_wei448_2517 = { .name = "xdh_wei448_2517", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2517_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2517_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2517_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 445 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2518 for XDH, tcId is 446 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2518_peerpubkey[] = { 0x27, 0x9a, 0x2d, 0x0a, 0x94, 0x36, 0x01, 0xa5, 0xd4, 0x0f, 0x6c, 0xb5, 0x44, 0xc3, 0x01, 0x34, 0x5b, 0x43, 0xb5, 0x8b, 0xaf, 0x9e, 0x49, 0xf4, 0xde, 0x3c, 0x1d, 0xe2, 0xbb, 0xc1, 0xec, 0x14, 0x26, 0xda, 0xb4, 0x4a, 0xfe, 0xf9, 0x97, 0x99, 0xe4, 0x28, 0x8c, 0x61, 0x51, 0x1f, 0xc4, 0xea, 0x0c, 0x2f, 0xab, 0x22, 0x8e, 0x8c, 0xce, 0x3e, }; static const unsigned char xdh_wei448_2518_privkey[] = { 0x08, 0x25, 0x01, 0x3a, 0x52, 0x0e, 0x13, 0x50, 0x9d, 0x29, 0x99, 0x7a, 0x5a, 0xa8, 0xfd, 0xe0, 0x0b, 0x77, 0x01, 0x1b, 0x3a, 0x63, 0xa5, 0x0b, 0xbe, 0xfc, 0x5b, 0x54, 0xb1, 0xe3, 0x85, 0x71, 0x98, 0xe8, 0xc9, 0xa8, 0x0f, 0x7b, 0x66, 0x14, 0xcc, 0x11, 0xe0, 0xb8, 0x5b, 0xad, 0x33, 0x7c, 0x1f, 0xe7, 0x4b, 0xf7, 0x31, 0xaf, 0xde, 0x83, }; static const unsigned char xdh_wei448_2518_sharedsecret[] = { 0xec, 0xc8, 0x4b, 0xb8, 0xf2, 0xc0, 0x86, 0x00, 0x02, 0x67, 0xd8, 0x9c, 0x1a, 0x7b, 0x21, 0x1d, 0x54, 0x15, 0x41, 0x47, 0x27, 0x06, 0x95, 0x10, 0x37, 0x50, 0xc9, 0xc1, 0x44, 0x86, 0x1a, 0x1c, 0x24, 0x28, 0xfb, 0x5f, 0x69, 0xcc, 0x2d, 0xd4, 0x9b, 0xe5, 0x7c, 0x41, 0x57, 0xa4, 0x84, 0xa7, 0x7d, 0xac, 0x9b, 0x03, 0x3d, 0xc6, 0x72, 0x81, }; static const wycheproof_xdh_test xdh_wei448_2518 = { .name = "xdh_wei448_2518", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2518_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2518_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2518_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 446 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2519 for XDH, tcId is 447 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2519_peerpubkey[] = { 0xc2, 0xa6, 0xe4, 0xd8, 0xf4, 0x8a, 0xbc, 0xdd, 0xf9, 0x40, 0xcc, 0x97, 0xaf, 0x3c, 0xf9, 0xd6, 0x34, 0xd2, 0x52, 0x81, 0x41, 0xac, 0xe9, 0xbd, 0x4f, 0xcd, 0x3b, 0xe1, 0x8d, 0xa8, 0xa3, 0x95, 0xe4, 0xaf, 0xcf, 0xbe, 0xb5, 0xc9, 0x81, 0x2b, 0x8a, 0xcf, 0x64, 0x72, 0xc3, 0x69, 0xe5, 0x68, 0x48, 0xb8, 0x78, 0xcf, 0xdf, 0x95, 0xb6, 0x48, }; static const unsigned char xdh_wei448_2519_privkey[] = { 0x64, 0x28, 0x5a, 0xb9, 0xf4, 0x6a, 0x40, 0xbf, 0xd4, 0x6b, 0x78, 0xd0, 0xad, 0x7f, 0x0e, 0xf3, 0xff, 0xfe, 0x04, 0xf3, 0xb4, 0x26, 0xbf, 0xd4, 0xe0, 0x24, 0x91, 0xe7, 0xa1, 0x3a, 0x25, 0x02, 0x72, 0x03, 0x99, 0x43, 0xa2, 0xb1, 0x04, 0xfd, 0xb8, 0xbf, 0x7b, 0x66, 0xd1, 0xe8, 0x3f, 0x11, 0x2b, 0x72, 0xf1, 0x85, 0x60, 0xd0, 0x67, 0x8d, }; static const unsigned char xdh_wei448_2519_sharedsecret[] = { 0xb3, 0xba, 0x7a, 0x3a, 0x1a, 0x79, 0x10, 0xe0, 0x94, 0x78, 0x57, 0x10, 0x4f, 0xd9, 0x0a, 0x60, 0x9f, 0x5d, 0x04, 0x80, 0x0f, 0x8c, 0x97, 0x12, 0xe6, 0x7d, 0x62, 0x15, 0xd6, 0x5d, 0x08, 0x15, 0x85, 0x8f, 0x91, 0x7c, 0xb4, 0xc9, 0x10, 0xc7, 0x9b, 0x2c, 0xb5, 0xaa, 0x6d, 0x04, 0xcb, 0x6b, 0xe6, 0xb9, 0xf4, 0x2e, 0x9b, 0x18, 0xe4, 0x39, }; static const wycheproof_xdh_test xdh_wei448_2519 = { .name = "xdh_wei448_2519", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2519_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2519_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2519_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 447 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2520 for XDH, tcId is 448 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2520_peerpubkey[] = { 0xe3, 0x49, 0x56, 0x0c, 0x1a, 0x2c, 0x1f, 0xd2, 0x9e, 0x62, 0x30, 0x91, 0xec, 0x08, 0xc1, 0x49, 0xcf, 0xcc, 0x3c, 0xbd, 0xf8, 0xec, 0x38, 0xab, 0xf3, 0xe2, 0xb4, 0xe3, 0x3a, 0xbe, 0xcf, 0x85, 0x46, 0xfe, 0x04, 0xe3, 0xd2, 0x7a, 0xb9, 0xa3, 0xb4, 0xbf, 0x90, 0xdb, 0x3d, 0xe9, 0x0e, 0xbc, 0xc5, 0x4b, 0x75, 0xd3, 0x1a, 0xc0, 0xe8, 0x51, }; static const unsigned char xdh_wei448_2520_privkey[] = { 0xc8, 0x66, 0x04, 0x42, 0x6c, 0x7a, 0x51, 0xed, 0x5c, 0xbc, 0x2f, 0xb2, 0x6c, 0x99, 0x75, 0x51, 0x88, 0xb9, 0x5c, 0x0f, 0xb2, 0x18, 0xa0, 0xf5, 0x43, 0xef, 0x34, 0x00, 0x82, 0xb4, 0x0b, 0x4a, 0x4b, 0xff, 0x68, 0x89, 0x4f, 0xd9, 0xe3, 0xb9, 0x05, 0x7b, 0x51, 0x3f, 0x00, 0xdb, 0x0f, 0x49, 0x88, 0x22, 0x1e, 0x79, 0x9c, 0x96, 0x41, 0x80, }; static const unsigned char xdh_wei448_2520_sharedsecret[] = { 0xbe, 0x9a, 0xa6, 0x91, 0x17, 0xdf, 0xdc, 0xe5, 0xc5, 0x84, 0x95, 0xb5, 0x0d, 0x9f, 0x52, 0x83, 0x8f, 0xac, 0x6f, 0x6e, 0x9b, 0x4e, 0x99, 0x24, 0x01, 0x7a, 0x40, 0xf9, 0x37, 0x5d, 0x55, 0xf5, 0x6b, 0xed, 0x07, 0x26, 0x96, 0x98, 0xb6, 0xe2, 0xef, 0xbf, 0x9c, 0xea, 0x52, 0xdd, 0x2e, 0x5c, 0xfd, 0x51, 0xee, 0x9c, 0x19, 0xcc, 0xbc, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_2520 = { .name = "xdh_wei448_2520", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2520_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2520_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2520_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 448 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2521 for XDH, tcId is 449 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2521_peerpubkey[] = { 0x84, 0x7c, 0xa2, 0xc6, 0xb0, 0x59, 0x2a, 0xcc, 0xb6, 0xff, 0x64, 0x3d, 0xc2, 0xc9, 0x0e, 0x90, 0x29, 0x99, 0x3d, 0x8f, 0x77, 0x40, 0x3d, 0xec, 0xc0, 0x07, 0xf3, 0xff, 0xfb, 0x77, 0xaa, 0x35, 0xda, 0xd0, 0xd3, 0xe7, 0x5a, 0x2c, 0x58, 0x85, 0x80, 0x11, 0x3d, 0x86, 0x3a, 0xa2, 0x12, 0xec, 0xe7, 0x65, 0x57, 0xc2, 0xc7, 0xc9, 0x0b, 0x61, }; static const unsigned char xdh_wei448_2521_privkey[] = { 0xf4, 0x0b, 0xf1, 0xba, 0x70, 0x53, 0x95, 0xf0, 0x92, 0x0c, 0x0e, 0xff, 0xbd, 0x09, 0x0e, 0x67, 0x06, 0x4d, 0x20, 0xe0, 0xc6, 0x18, 0x0b, 0x37, 0x3d, 0xe9, 0x2a, 0x31, 0x76, 0x2a, 0xcf, 0x2c, 0x74, 0x55, 0xd0, 0xf3, 0x02, 0xda, 0xc9, 0x42, 0x12, 0x67, 0x7b, 0xbd, 0x9a, 0x05, 0x55, 0x18, 0xa0, 0x06, 0x70, 0x56, 0x41, 0x4f, 0x37, 0x8a, }; static const unsigned char xdh_wei448_2521_sharedsecret[] = { 0x7e, 0x34, 0xa5, 0x0e, 0x34, 0x46, 0xe4, 0xdf, 0x31, 0x3d, 0xf5, 0x0a, 0x70, 0x10, 0x61, 0x98, 0xee, 0xb7, 0xfe, 0x14, 0x49, 0x8e, 0xe2, 0x2b, 0xad, 0x93, 0x3c, 0x74, 0x58, 0xc9, 0xd8, 0xaf, 0xb5, 0x02, 0x72, 0x21, 0xac, 0x02, 0x15, 0x94, 0x43, 0x83, 0x9a, 0xae, 0x4f, 0x07, 0xcd, 0x7a, 0xc6, 0x6e, 0xb4, 0x0c, 0x0f, 0x01, 0x85, 0x95, }; static const wycheproof_xdh_test xdh_wei448_2521 = { .name = "xdh_wei448_2521", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2521_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2521_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2521_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 449 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2522 for XDH, tcId is 450 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2522_peerpubkey[] = { 0x29, 0x79, 0x01, 0x58, 0xcc, 0x57, 0x81, 0x71, 0x16, 0xda, 0xfd, 0x0b, 0xfd, 0xab, 0x37, 0x8f, 0x55, 0x2b, 0x81, 0xb5, 0x84, 0x54, 0x95, 0xbc, 0xe7, 0x80, 0x55, 0xbe, 0x1e, 0x4f, 0xd3, 0xcf, 0x18, 0x4b, 0x4c, 0x04, 0x20, 0x2a, 0xac, 0xb4, 0x48, 0x60, 0xb4, 0x79, 0xe4, 0xb2, 0xff, 0x86, 0xf4, 0x8f, 0x2b, 0x75, 0x4f, 0x14, 0xcf, 0x7c, }; static const unsigned char xdh_wei448_2522_privkey[] = { 0x48, 0x21, 0x4f, 0x09, 0xfd, 0xe0, 0x53, 0xec, 0x90, 0xe4, 0x55, 0xbe, 0x28, 0xa5, 0xf5, 0xd6, 0x1e, 0x4a, 0x0e, 0xec, 0xb2, 0xd7, 0x14, 0xf8, 0xd7, 0xca, 0x66, 0x18, 0x85, 0x4c, 0x5d, 0x70, 0x55, 0xac, 0x41, 0xa8, 0xb3, 0x61, 0xf3, 0xe4, 0xb6, 0x76, 0x43, 0x55, 0x8b, 0x22, 0x8a, 0x09, 0x4c, 0x08, 0x24, 0x8f, 0xcf, 0x31, 0xc6, 0x8b, }; static const unsigned char xdh_wei448_2522_sharedsecret[] = { 0x87, 0xde, 0xbb, 0x5b, 0x1b, 0x3a, 0x26, 0xe3, 0x5d, 0xb9, 0xeb, 0xe2, 0x15, 0xaf, 0x98, 0x05, 0xce, 0x1d, 0x04, 0x36, 0x19, 0xbb, 0xb2, 0xf6, 0xc8, 0xcf, 0x38, 0x0c, 0x62, 0x24, 0x72, 0xc3, 0x62, 0xb1, 0x96, 0xb1, 0x87, 0x77, 0x9e, 0x6c, 0xaf, 0x36, 0x46, 0xc5, 0xea, 0xcf, 0x1a, 0xaa, 0x12, 0x49, 0x6e, 0x19, 0xaf, 0x62, 0x7f, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_2522 = { .name = "xdh_wei448_2522", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2522_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2522_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2522_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 450 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2523 for XDH, tcId is 451 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2523_peerpubkey[] = { 0x55, 0x1b, 0x4e, 0xa2, 0x3d, 0x25, 0x73, 0x1e, 0x99, 0xe3, 0xed, 0x5c, 0x36, 0x5b, 0x49, 0xff, 0xd1, 0xe5, 0x9e, 0x8a, 0xb9, 0x9f, 0xbc, 0x3c, 0xb1, 0x18, 0x69, 0xf6, 0xa3, 0x65, 0x73, 0x6d, 0x17, 0x1c, 0x92, 0x99, 0x2d, 0x41, 0xd2, 0x88, 0x79, 0x78, 0x91, 0xfe, 0x32, 0x9b, 0xed, 0x87, 0x85, 0x9f, 0xbf, 0x13, 0x6b, 0x17, 0x9c, 0xb0, }; static const unsigned char xdh_wei448_2523_privkey[] = { 0x94, 0xd5, 0x8d, 0x10, 0xfe, 0x0d, 0x69, 0xb4, 0xc5, 0xaf, 0x5f, 0x59, 0x4e, 0xbd, 0x20, 0x51, 0xd8, 0x24, 0xf0, 0xb8, 0xb9, 0x70, 0xd0, 0x87, 0x7e, 0x8a, 0xba, 0x62, 0x79, 0x7a, 0x8d, 0x0f, 0xb1, 0x05, 0x28, 0x91, 0xf2, 0x65, 0xd8, 0xdb, 0x50, 0xca, 0xb5, 0x17, 0xa8, 0x34, 0xee, 0x21, 0x42, 0x58, 0x3b, 0xbb, 0x83, 0x1a, 0xe8, 0x87, }; static const unsigned char xdh_wei448_2523_sharedsecret[] = { 0x65, 0xf2, 0x6e, 0x62, 0xf5, 0xf6, 0x77, 0xc9, 0xd9, 0xad, 0x8c, 0x9d, 0x04, 0xef, 0x88, 0x2d, 0x3d, 0x06, 0x31, 0x74, 0x60, 0x8c, 0x90, 0x15, 0x99, 0x1b, 0xdf, 0x7b, 0x7a, 0x28, 0xec, 0x4b, 0xa0, 0x7a, 0x3b, 0x4a, 0x84, 0x65, 0x60, 0x2c, 0x71, 0xb7, 0xa4, 0x73, 0x5b, 0x53, 0x4b, 0x8a, 0x7b, 0x48, 0xed, 0xde, 0x20, 0xb1, 0xc7, 0x73, }; static const wycheproof_xdh_test xdh_wei448_2523 = { .name = "xdh_wei448_2523", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2523_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2523_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2523_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 451 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2524 for XDH, tcId is 452 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2524_peerpubkey[] = { 0xab, 0xd2, 0x35, 0x61, 0xec, 0x4c, 0xcd, 0x50, 0x06, 0x48, 0x9e, 0xaa, 0xfe, 0xb5, 0xc9, 0xde, 0x26, 0xdc, 0x0b, 0x1c, 0x9e, 0x37, 0x53, 0x68, 0x60, 0x8c, 0xaf, 0xa5, 0x44, 0x56, 0x97, 0x5a, 0xaf, 0xae, 0x03, 0x1b, 0xc0, 0x69, 0xa4, 0x56, 0xd5, 0x4e, 0xd7, 0x5d, 0x45, 0x08, 0xe4, 0x1d, 0xbe, 0xe3, 0x03, 0x18, 0x0d, 0xac, 0x5e, 0xc2, }; static const unsigned char xdh_wei448_2524_privkey[] = { 0xcc, 0x53, 0x91, 0x25, 0x93, 0x71, 0x56, 0x86, 0xde, 0x21, 0xea, 0x0b, 0x5b, 0x4c, 0x32, 0x80, 0x77, 0xc7, 0xfe, 0xa1, 0x9b, 0x02, 0x50, 0xde, 0xe4, 0x82, 0x2f, 0xad, 0x0d, 0x41, 0xe5, 0xf1, 0xf3, 0x55, 0xeb, 0xe9, 0xf1, 0xa6, 0x2c, 0xeb, 0x1f, 0x90, 0x2f, 0xfe, 0xed, 0x2b, 0xc7, 0xfb, 0x40, 0xb8, 0xc9, 0x7c, 0x36, 0x6f, 0x3a, 0x80, }; static const unsigned char xdh_wei448_2524_sharedsecret[] = { 0x36, 0x03, 0x03, 0x26, 0x03, 0x55, 0xa2, 0x05, 0x88, 0xa9, 0x24, 0xbb, 0xa2, 0x98, 0xbf, 0x7c, 0xdc, 0x34, 0x75, 0x0c, 0xcd, 0x59, 0x40, 0x23, 0x90, 0x9b, 0xb6, 0xc8, 0x10, 0x84, 0xd5, 0x98, 0x4e, 0x98, 0x57, 0x23, 0xe8, 0x55, 0x7a, 0x9c, 0xc5, 0xf1, 0xf0, 0x8c, 0x3b, 0xeb, 0x2d, 0x56, 0x47, 0x8d, 0xf2, 0x68, 0x2e, 0xfc, 0x78, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_2524 = { .name = "xdh_wei448_2524", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2524_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2524_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2524_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 452 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2525 for XDH, tcId is 453 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2525_peerpubkey[] = { 0xb3, 0xd6, 0x8b, 0xee, 0x6c, 0xd3, 0xf2, 0xbb, 0xe4, 0x9b, 0xe1, 0x15, 0x93, 0x60, 0xd2, 0x6a, 0xeb, 0x1a, 0xe3, 0x2b, 0xd8, 0x05, 0x08, 0x1c, 0x24, 0xde, 0x14, 0xb2, 0xc2, 0x3d, 0x13, 0xb0, 0xe4, 0x5c, 0x2b, 0x12, 0x54, 0x36, 0xf4, 0x42, 0xd5, 0x26, 0xa5, 0x4d, 0x85, 0x82, 0xb9, 0x24, 0x33, 0xc8, 0x44, 0x92, 0x58, 0xed, 0xd4, 0xc3, }; static const unsigned char xdh_wei448_2525_privkey[] = { 0x2c, 0xa8, 0x10, 0x4c, 0x30, 0xf6, 0xcf, 0x2d, 0x86, 0x1a, 0x7e, 0xa9, 0xc6, 0x0c, 0x29, 0x91, 0x0c, 0x6c, 0x75, 0xfc, 0x78, 0x63, 0x83, 0xee, 0x2a, 0x9e, 0xf3, 0xe2, 0xe1, 0x28, 0x61, 0x52, 0x92, 0xbe, 0x2e, 0xd1, 0x67, 0x2a, 0x8a, 0x21, 0x62, 0xf1, 0x92, 0xbb, 0x7d, 0x4a, 0x3a, 0x2f, 0xa3, 0x46, 0xa4, 0x8d, 0xff, 0x10, 0xb0, 0x88, }; static const unsigned char xdh_wei448_2525_sharedsecret[] = { 0x8a, 0x14, 0xfe, 0x42, 0x6b, 0x3a, 0xbc, 0x24, 0x8f, 0x4b, 0xfc, 0x27, 0xe2, 0x69, 0x45, 0xb7, 0xe4, 0xa7, 0x84, 0x3a, 0x40, 0x28, 0x84, 0x2f, 0xcf, 0xd8, 0x99, 0xd3, 0x8c, 0xee, 0xf6, 0xab, 0x9d, 0x5c, 0x58, 0xc1, 0x7f, 0xf0, 0x4a, 0x5f, 0xb4, 0x2d, 0x12, 0xe8, 0xec, 0xb9, 0x05, 0x2b, 0xea, 0xae, 0xe8, 0x41, 0x5d, 0x88, 0xe0, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2525 = { .name = "xdh_wei448_2525", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2525_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2525_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2525_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 453 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2526 for XDH, tcId is 454 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2526_peerpubkey[] = { 0x4b, 0x04, 0xef, 0x0c, 0x42, 0xf1, 0x33, 0x83, 0x31, 0x06, 0xbb, 0x87, 0xa9, 0xd8, 0xa9, 0xf8, 0x0b, 0xd0, 0x5a, 0xbe, 0xb9, 0x01, 0x27, 0xfa, 0x74, 0x13, 0xca, 0x4d, 0xe0, 0x46, 0xea, 0x10, 0x1e, 0xc7, 0x96, 0x13, 0xa8, 0x76, 0x3d, 0xb2, 0xd2, 0x40, 0x50, 0xf8, 0x13, 0x7f, 0xff, 0xcd, 0xe7, 0xd3, 0x07, 0x57, 0x45, 0xc5, 0x52, 0x49, }; static const unsigned char xdh_wei448_2526_privkey[] = { 0x70, 0x96, 0x7c, 0xdd, 0xff, 0xdb, 0x1e, 0xf1, 0x5f, 0x3b, 0xf6, 0xf2, 0xae, 0x06, 0x9e, 0xe3, 0xbc, 0x14, 0x39, 0x46, 0x94, 0x5f, 0x0f, 0x81, 0x23, 0x95, 0xd0, 0x75, 0xc8, 0x6d, 0xf8, 0x88, 0x90, 0x49, 0xd5, 0xd0, 0x3b, 0x03, 0x09, 0x71, 0x67, 0xd0, 0x52, 0x39, 0x49, 0x77, 0xda, 0x36, 0x4d, 0x90, 0x18, 0x28, 0x6e, 0x9c, 0x70, 0x89, }; static const unsigned char xdh_wei448_2526_sharedsecret[] = { 0x25, 0xae, 0xd0, 0x08, 0xf8, 0xc0, 0xda, 0x48, 0xe6, 0x87, 0x69, 0xd5, 0x5a, 0x21, 0xc3, 0xd9, 0xab, 0x82, 0x9e, 0xf9, 0x3a, 0xde, 0x8a, 0x8b, 0x3f, 0xc3, 0xe2, 0xc3, 0xb0, 0x18, 0xae, 0xc2, 0x13, 0x71, 0x16, 0xca, 0xfd, 0x0b, 0x6b, 0xdc, 0x27, 0x2d, 0x8f, 0x6b, 0x5c, 0x56, 0x01, 0x5d, 0x94, 0x60, 0xd5, 0x38, 0x66, 0xd6, 0xe8, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2526 = { .name = "xdh_wei448_2526", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2526_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2526_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2526_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 454 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2527 for XDH, tcId is 455 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2527_peerpubkey[] = { 0xad, 0x8b, 0x71, 0xb1, 0x90, 0xd4, 0xe8, 0x74, 0x43, 0x97, 0x48, 0x46, 0x38, 0x3a, 0xe6, 0xb4, 0x59, 0x00, 0x90, 0x42, 0xf8, 0x27, 0x89, 0x61, 0x90, 0x1a, 0x99, 0xad, 0x61, 0x62, 0x97, 0xbc, 0xf9, 0x0e, 0x76, 0x79, 0x7e, 0x42, 0xcf, 0x0c, 0xc2, 0x68, 0x72, 0x27, 0x46, 0x38, 0xf9, 0xfe, 0xd0, 0xe2, 0xbd, 0xe9, 0xa5, 0x2f, 0xdf, 0x58, }; static const unsigned char xdh_wei448_2527_privkey[] = { 0x80, 0x51, 0x74, 0x29, 0xfa, 0x2a, 0x86, 0x8a, 0x00, 0xdb, 0x56, 0x94, 0xd2, 0x44, 0xdf, 0xfe, 0xe5, 0x31, 0x9b, 0x7e, 0x74, 0x4b, 0xb0, 0x51, 0x54, 0x5a, 0xf6, 0xc8, 0x06, 0x73, 0xd5, 0x00, 0x24, 0xe8, 0x30, 0x3d, 0x04, 0x90, 0x5e, 0x35, 0x41, 0x39, 0x8e, 0xb0, 0xbc, 0xf4, 0xf5, 0x10, 0x7b, 0xe4, 0xac, 0x25, 0xec, 0x9e, 0xa9, 0x8a, }; static const unsigned char xdh_wei448_2527_sharedsecret[] = { 0x79, 0x74, 0x3c, 0xd9, 0x18, 0xaa, 0xc1, 0x46, 0x0b, 0x6d, 0x17, 0xb4, 0x2a, 0xae, 0x00, 0x34, 0xff, 0x71, 0xf6, 0x21, 0xa8, 0xf9, 0x37, 0xa0, 0xe5, 0xa7, 0xb9, 0x09, 0x13, 0xdf, 0xfa, 0xaa, 0xd2, 0x6b, 0xbd, 0xbd, 0x58, 0x77, 0x2a, 0xc1, 0x9d, 0x1c, 0x3c, 0x01, 0x3c, 0x89, 0x1f, 0x4b, 0x25, 0x02, 0x9d, 0x2f, 0x32, 0xb8, 0x51, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_2527 = { .name = "xdh_wei448_2527", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2527_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2527_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2527_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 455 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2528 for XDH, tcId is 456 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2528_peerpubkey[] = { 0x3e, 0x81, 0xb3, 0x8f, 0x54, 0x45, 0xff, 0xdc, 0x2d, 0x59, 0xa8, 0x98, 0x80, 0x6d, 0xac, 0x4c, 0x88, 0xab, 0xdb, 0x9f, 0x5a, 0xf8, 0xe2, 0xcb, 0xef, 0x0f, 0x8d, 0xbe, 0x09, 0x68, 0x04, 0x01, 0x88, 0xa2, 0x85, 0x04, 0x03, 0xcc, 0x2a, 0xe7, 0xe9, 0x1d, 0x12, 0xf9, 0x28, 0x17, 0x01, 0x25, 0xdd, 0xab, 0xcd, 0xb2, 0xd5, 0x02, 0x62, 0x6c, }; static const unsigned char xdh_wei448_2528_privkey[] = { 0x10, 0xf2, 0x13, 0x45, 0x07, 0xb5, 0x4f, 0x0a, 0xc9, 0x3d, 0x13, 0x33, 0x58, 0x44, 0xdc, 0x9b, 0xcf, 0x0a, 0xb6, 0x3e, 0x37, 0x38, 0x0d, 0x26, 0x4d, 0x6a, 0x2b, 0x6a, 0xda, 0xbf, 0x28, 0x6f, 0x89, 0x2b, 0xe1, 0xc2, 0x18, 0xff, 0xe3, 0xb7, 0x81, 0xe7, 0x8c, 0x15, 0x16, 0x1a, 0xbb, 0x7c, 0x04, 0x93, 0xf3, 0x30, 0x46, 0xea, 0x86, 0x84, }; static const unsigned char xdh_wei448_2528_sharedsecret[] = { 0xc3, 0x98, 0x29, 0x33, 0xd6, 0xf8, 0x6d, 0x4d, 0xbb, 0x96, 0x38, 0x3c, 0x47, 0x44, 0x18, 0x59, 0x6f, 0xdd, 0xbd, 0x33, 0x12, 0x56, 0x50, 0x91, 0xdb, 0x1f, 0x39, 0x02, 0x4f, 0x24, 0x72, 0x3a, 0x9e, 0x99, 0x66, 0xd1, 0x8a, 0x38, 0x88, 0x70, 0x65, 0xf1, 0xcf, 0x44, 0x8b, 0xf3, 0xc8, 0xdd, 0x7a, 0xea, 0x31, 0xde, 0x06, 0xec, 0x01, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_2528 = { .name = "xdh_wei448_2528", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2528_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2528_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2528_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 456 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2529 for XDH, tcId is 457 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2529_peerpubkey[] = { 0xad, 0x39, 0xdb, 0x7d, 0x0a, 0xb6, 0xf1, 0x62, 0xd5, 0x8d, 0xae, 0x64, 0xee, 0x62, 0x58, 0xbb, 0xf1, 0xf1, 0x5e, 0xc1, 0x15, 0x99, 0x64, 0xc1, 0x96, 0xe8, 0xdf, 0x94, 0x99, 0xe7, 0xba, 0x1c, 0xfd, 0xa4, 0x81, 0xfc, 0x3a, 0xb3, 0x84, 0x24, 0x1d, 0x4b, 0xf2, 0x89, 0xb7, 0xf2, 0x97, 0x82, 0xf6, 0x2e, 0xf1, 0xd4, 0x5f, 0x75, 0xc7, 0xbe, }; static const unsigned char xdh_wei448_2529_privkey[] = { 0xf0, 0x4e, 0x43, 0x32, 0x65, 0x54, 0x81, 0xdb, 0xc2, 0x0d, 0x8a, 0x42, 0x85, 0x04, 0x66, 0xa7, 0x21, 0x06, 0x32, 0x1c, 0xc0, 0xb8, 0x9c, 0x12, 0xbe, 0x6c, 0xbc, 0x15, 0xd4, 0x32, 0xab, 0x63, 0xa1, 0x2c, 0x76, 0xda, 0x18, 0xed, 0xb4, 0xef, 0xd6, 0xf2, 0xc6, 0x83, 0xda, 0xdb, 0x86, 0xe5, 0x93, 0x9c, 0x15, 0xa5, 0xa7, 0x06, 0x44, 0x89, }; static const unsigned char xdh_wei448_2529_sharedsecret[] = { 0x42, 0xbe, 0x6b, 0xff, 0x60, 0xaa, 0x63, 0xf6, 0xe0, 0x96, 0x9b, 0x91, 0x5e, 0xc0, 0xac, 0x98, 0x28, 0x3f, 0xe6, 0x2c, 0x43, 0x04, 0x50, 0x2e, 0x6b, 0xb1, 0xcb, 0x15, 0xa2, 0x59, 0x68, 0xb6, 0x44, 0x5f, 0x19, 0x31, 0x03, 0x56, 0xf2, 0xeb, 0xb5, 0xfd, 0x5e, 0x13, 0x84, 0x47, 0x96, 0x87, 0x2a, 0x6f, 0x74, 0x17, 0xcd, 0x35, 0x05, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_2529 = { .name = "xdh_wei448_2529", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2529_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2529_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2529_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 457 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2530 for XDH, tcId is 458 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2530_peerpubkey[] = { 0xa9, 0x02, 0xf8, 0x73, 0x9f, 0xfa, 0xe2, 0x74, 0x15, 0x77, 0x05, 0x06, 0x60, 0xc9, 0xb7, 0x46, 0x90, 0xc5, 0x33, 0x0f, 0x88, 0xcc, 0xd0, 0x63, 0x97, 0x2a, 0xa0, 0x05, 0x14, 0xea, 0x06, 0x55, 0x07, 0x06, 0xfc, 0x83, 0x75, 0x1f, 0xb2, 0x45, 0xce, 0xdc, 0x78, 0x1d, 0x39, 0x73, 0x10, 0x8a, 0x0a, 0x0e, 0x18, 0x2c, 0x9d, 0xa2, 0x07, 0xc0, }; static const unsigned char xdh_wei448_2530_privkey[] = { 0xf8, 0xdc, 0x17, 0xe1, 0x18, 0xe0, 0x56, 0x9e, 0x5f, 0xec, 0xd8, 0x96, 0x1b, 0xda, 0xde, 0xca, 0xba, 0xe2, 0xf4, 0x2a, 0x0b, 0x40, 0xe3, 0xb2, 0x3c, 0xc5, 0x01, 0xba, 0x4f, 0x9b, 0xd3, 0x29, 0xad, 0x0b, 0xd3, 0x0b, 0xb9, 0x3d, 0xe6, 0x6b, 0x59, 0x97, 0x17, 0xcf, 0x95, 0x8e, 0x76, 0x5b, 0x69, 0x4f, 0x59, 0x74, 0xa9, 0x4e, 0x4d, 0x88, }; static const unsigned char xdh_wei448_2530_sharedsecret[] = { 0xc4, 0xf0, 0xcb, 0x9c, 0x4f, 0x3c, 0x3b, 0xa5, 0xc9, 0xc8, 0x84, 0x69, 0xd7, 0xd9, 0xfe, 0x82, 0xe9, 0x14, 0x11, 0x8e, 0x16, 0x4d, 0x28, 0xbc, 0x45, 0x09, 0xe2, 0x75, 0x32, 0x50, 0x09, 0xa0, 0x7f, 0x4a, 0x6b, 0x65, 0xc5, 0xa9, 0x73, 0x2f, 0x93, 0xeb, 0xe8, 0x02, 0xa3, 0x03, 0x9f, 0x03, 0xdb, 0x7f, 0xdb, 0x25, 0xb9, 0xcc, 0x9b, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2530 = { .name = "xdh_wei448_2530", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2530_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2530_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2530_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 458 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2531 for XDH, tcId is 459 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2531_peerpubkey[] = { 0x72, 0x2a, 0xb1, 0x1d, 0xa3, 0x7a, 0x44, 0x36, 0xee, 0xb8, 0x20, 0x46, 0xbb, 0x2b, 0xa5, 0x24, 0x58, 0x0c, 0xd7, 0x21, 0xc4, 0x9b, 0x79, 0x9b, 0x71, 0x29, 0xc6, 0x60, 0x36, 0xfa, 0xf2, 0xdf, 0x03, 0xc3, 0x96, 0xf9, 0x87, 0x14, 0xc4, 0x6f, 0x3e, 0x67, 0x48, 0xac, 0xef, 0x23, 0xc9, 0x28, 0xe8, 0x23, 0x75, 0x81, 0xc4, 0x35, 0x59, 0xd3, }; static const unsigned char xdh_wei448_2531_privkey[] = { 0xc0, 0x85, 0xe4, 0x06, 0xc8, 0x8d, 0x34, 0x18, 0xa1, 0x9a, 0xca, 0xe3, 0xe6, 0x18, 0xab, 0x18, 0x0d, 0xd9, 0xc6, 0x19, 0xae, 0xad, 0x09, 0x3f, 0xc5, 0x8f, 0x05, 0xaa, 0xe2, 0x1f, 0xa6, 0xb4, 0xed, 0x74, 0x73, 0x2b, 0x64, 0x0b, 0x6d, 0xa5, 0x9e, 0xe7, 0xb4, 0x12, 0x78, 0x30, 0xba, 0x51, 0x58, 0x89, 0x63, 0x73, 0x61, 0x34, 0x7d, 0x81, }; static const unsigned char xdh_wei448_2531_sharedsecret[] = { 0xda, 0xeb, 0xfd, 0xd9, 0xbd, 0x0d, 0xb1, 0x07, 0x48, 0xb0, 0x2f, 0xa7, 0x5b, 0x92, 0xa8, 0x79, 0x75, 0xd7, 0xae, 0x15, 0x80, 0xe3, 0xb3, 0x07, 0x64, 0xca, 0xc9, 0xc6, 0x77, 0x4e, 0xd6, 0xb7, 0x6e, 0xec, 0xaa, 0x73, 0xa7, 0x0f, 0xd3, 0xdd, 0xef, 0xc3, 0x8e, 0xe0, 0x81, 0x21, 0x18, 0x19, 0x88, 0x9c, 0x19, 0xd1, 0x63, 0x17, 0xed, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2531 = { .name = "xdh_wei448_2531", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2531_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2531_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2531_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 459 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2532 for XDH, tcId is 460 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2532_peerpubkey[] = { 0xe8, 0x60, 0x49, 0x68, 0x52, 0x0e, 0x86, 0xce, 0x55, 0x32, 0x34, 0x18, 0xe7, 0x40, 0x52, 0x78, 0x3b, 0xef, 0x2d, 0x38, 0xb9, 0x06, 0x1c, 0x8d, 0x35, 0x27, 0x70, 0x93, 0x82, 0x65, 0x6f, 0x3b, 0xf6, 0x29, 0x97, 0xf5, 0x1a, 0xed, 0xbf, 0x67, 0xa5, 0x6b, 0x8d, 0xe1, 0x89, 0x45, 0xff, 0xa5, 0x58, 0xaf, 0xbc, 0x24, 0x90, 0x3e, 0x1c, 0xe2, }; static const unsigned char xdh_wei448_2532_privkey[] = { 0xe4, 0x34, 0x72, 0xcc, 0xe6, 0x5a, 0x3b, 0x63, 0xe9, 0xcf, 0x5b, 0xc5, 0x83, 0x5c, 0x82, 0xe4, 0x8e, 0xa8, 0xda, 0x69, 0x05, 0xcb, 0x98, 0xff, 0xd7, 0x14, 0x17, 0xe0, 0x23, 0xaf, 0xe6, 0x05, 0xcc, 0x17, 0x50, 0x64, 0x32, 0xb8, 0xd6, 0xba, 0x79, 0x82, 0x9f, 0x69, 0xe8, 0x9d, 0x41, 0xbb, 0x7f, 0x52, 0x60, 0xb0, 0xe6, 0xe8, 0xff, 0x8c, }; static const unsigned char xdh_wei448_2532_sharedsecret[] = { 0x0e, 0x4d, 0x45, 0x7c, 0xd0, 0xe5, 0x70, 0x0d, 0x60, 0x71, 0xea, 0xb5, 0x7e, 0x4d, 0x93, 0xc1, 0x9d, 0xdc, 0x1b, 0x74, 0x10, 0x1b, 0xed, 0xa0, 0xbf, 0x8e, 0x9f, 0x57, 0x1d, 0xe8, 0x9d, 0x3d, 0x0d, 0xaf, 0x14, 0x60, 0xed, 0x4e, 0x57, 0x99, 0x0c, 0x66, 0x71, 0xd6, 0x9f, 0x07, 0x4f, 0x7a, 0xc1, 0xc0, 0xbc, 0x64, 0x99, 0x51, 0x20, 0xeb, }; static const wycheproof_xdh_test xdh_wei448_2532 = { .name = "xdh_wei448_2532", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2532_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2532_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2532_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 460 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2533 for XDH, tcId is 461 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2533_peerpubkey[] = { 0x38, 0xad, 0x42, 0xf2, 0x98, 0x17, 0xa8, 0xb9, 0x02, 0xb1, 0xfe, 0xc9, 0x7f, 0x91, 0x3e, 0x09, 0xa1, 0x0a, 0x45, 0x55, 0xc4, 0x11, 0xed, 0xab, 0x8d, 0x1b, 0x7b, 0x42, 0xaa, 0x06, 0xac, 0xa9, 0xf9, 0xcb, 0xa0, 0x47, 0xfb, 0x7f, 0x5f, 0xec, 0x5d, 0x49, 0x98, 0xbc, 0xf9, 0x21, 0xdf, 0x5c, 0x40, 0xd2, 0x50, 0xf7, 0x9b, 0x2f, 0xaf, 0x50, }; static const unsigned char xdh_wei448_2533_privkey[] = { 0x1c, 0x4d, 0x32, 0x4d, 0x01, 0xa6, 0xbd, 0x33, 0xa4, 0x0a, 0x54, 0x4b, 0xdb, 0x16, 0x0f, 0xbe, 0xc0, 0x4c, 0x52, 0xb6, 0x2a, 0xbd, 0xc0, 0x6b, 0x60, 0x89, 0xa8, 0x8c, 0xed, 0x16, 0xd7, 0x03, 0x0a, 0x85, 0x38, 0x72, 0x1b, 0xa5, 0x9c, 0x0f, 0x8c, 0xad, 0x87, 0x60, 0xbd, 0xad, 0xc8, 0x2c, 0x7f, 0x70, 0xbf, 0x02, 0x74, 0x30, 0x9d, 0x87, }; static const unsigned char xdh_wei448_2533_sharedsecret[] = { 0x4e, 0x61, 0x67, 0xcc, 0x89, 0x7a, 0xa7, 0x0b, 0xb8, 0x95, 0x04, 0x40, 0xa5, 0x43, 0xc5, 0x4d, 0x07, 0x7e, 0xeb, 0xf1, 0x0f, 0xda, 0xdc, 0x24, 0x85, 0xa1, 0x2e, 0x7e, 0xe0, 0x60, 0x17, 0x89, 0x9e, 0x08, 0x9d, 0xb8, 0x09, 0x2a, 0xc4, 0x4c, 0x60, 0x69, 0xe1, 0x6e, 0xd2, 0x5e, 0xb4, 0x15, 0xc3, 0x50, 0xe8, 0x23, 0xcd, 0x6a, 0xd2, 0x85, }; static const wycheproof_xdh_test xdh_wei448_2533 = { .name = "xdh_wei448_2533", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2533_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2533_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2533_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 461 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2534 for XDH, tcId is 462 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2534_peerpubkey[] = { 0x66, 0x26, 0xc9, 0xe7, 0xb4, 0xaa, 0x66, 0x21, 0xb2, 0x98, 0xe6, 0xd5, 0x94, 0x4b, 0xd0, 0xa6, 0x4d, 0x14, 0xf0, 0x2b, 0xd2, 0xdf, 0x47, 0xe2, 0x61, 0x10, 0x0a, 0xae, 0x42, 0x6a, 0xe9, 0xdd, 0xf9, 0x42, 0x3e, 0xa2, 0xe6, 0xd0, 0x98, 0x91, 0xbc, 0x00, 0x54, 0xc5, 0x9c, 0xa6, 0xfc, 0x1c, 0xf4, 0xe9, 0xf1, 0xe3, 0x06, 0x00, 0x93, 0x5d, }; static const unsigned char xdh_wei448_2534_privkey[] = { 0xcc, 0x8f, 0xc0, 0x9c, 0xac, 0x12, 0x77, 0x05, 0xcc, 0x29, 0x38, 0x9e, 0xc4, 0x67, 0x62, 0xfc, 0xbe, 0xf0, 0xb5, 0x46, 0x0a, 0x54, 0x18, 0x59, 0x44, 0x2d, 0xd4, 0xf9, 0x03, 0x17, 0xd0, 0x76, 0xcc, 0xb7, 0x86, 0x85, 0xf2, 0xbf, 0xb8, 0xa4, 0xc2, 0xdd, 0xff, 0x53, 0x12, 0x64, 0x14, 0xed, 0x3c, 0x03, 0xd5, 0x60, 0xc9, 0x81, 0xb6, 0x8f, }; static const unsigned char xdh_wei448_2534_sharedsecret[] = { 0xd1, 0x89, 0xdc, 0xd8, 0xcd, 0x60, 0x16, 0x97, 0x29, 0xdc, 0x51, 0xc1, 0x36, 0xc8, 0x90, 0xef, 0x68, 0x2c, 0xc7, 0xa0, 0xe7, 0xd3, 0x82, 0xa0, 0xea, 0x52, 0xe8, 0x73, 0x38, 0xc1, 0xa7, 0x00, 0x3a, 0x38, 0xde, 0xb0, 0xc5, 0x05, 0xdb, 0x7c, 0x55, 0xd3, 0xdc, 0xe4, 0x77, 0xd6, 0xba, 0x7a, 0xe6, 0x40, 0x55, 0xb2, 0xae, 0x11, 0x9f, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_2534 = { .name = "xdh_wei448_2534", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2534_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2534_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2534_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 462 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2535 for XDH, tcId is 463 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2535_peerpubkey[] = { 0x81, 0x45, 0xf6, 0x98, 0xe5, 0xc3, 0xff, 0xe1, 0x0c, 0xc8, 0x0d, 0xc2, 0x32, 0xd0, 0x6b, 0x27, 0x7f, 0x16, 0xc9, 0x7c, 0xdf, 0x2a, 0x13, 0x59, 0x49, 0xec, 0x06, 0x1d, 0x78, 0x39, 0xc1, 0xbd, 0x79, 0xf9, 0x90, 0xf8, 0xbf, 0xc2, 0xb2, 0x4f, 0x61, 0x5a, 0xe5, 0x80, 0xa5, 0x69, 0x32, 0xe9, 0x45, 0x76, 0x28, 0x34, 0x97, 0xa6, 0xf2, 0x6f, }; static const unsigned char xdh_wei448_2535_privkey[] = { 0x00, 0xdb, 0x5c, 0x17, 0xb7, 0xf2, 0x76, 0x5d, 0x92, 0x16, 0x3a, 0x1a, 0xbf, 0xd7, 0x0b, 0x3b, 0x5a, 0x10, 0x5b, 0x5b, 0x24, 0xf7, 0xc5, 0x37, 0xeb, 0x33, 0xe1, 0xad, 0xa5, 0x06, 0xe9, 0x14, 0x9f, 0x0f, 0xa2, 0x5d, 0xed, 0x4d, 0x25, 0xfc, 0x37, 0x23, 0xa7, 0x7a, 0x96, 0xb4, 0x0e, 0x56, 0x45, 0x1e, 0xf7, 0x86, 0x09, 0xda, 0x98, 0x8d, }; static const unsigned char xdh_wei448_2535_sharedsecret[] = { 0xda, 0xf2, 0x30, 0xfd, 0x96, 0xf5, 0x99, 0xd2, 0xea, 0xd3, 0x14, 0x9b, 0xad, 0x9f, 0x5e, 0xcf, 0xe6, 0x4c, 0xbe, 0x20, 0xf7, 0x90, 0x97, 0xf1, 0xb2, 0x15, 0xda, 0x86, 0x5a, 0x46, 0xb6, 0xd7, 0x4c, 0x45, 0xae, 0x5b, 0xd6, 0x37, 0x4d, 0x4c, 0x2b, 0x72, 0x33, 0x2e, 0xde, 0xa3, 0x0d, 0xf1, 0x63, 0x83, 0xe4, 0x44, 0x7b, 0x1f, 0x35, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_2535 = { .name = "xdh_wei448_2535", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2535_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2535_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2535_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 463 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2536 for XDH, tcId is 464 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2536_peerpubkey[] = { 0xc3, 0x1a, 0xeb, 0x03, 0x0b, 0x50, 0x9c, 0x78, 0x44, 0xc8, 0x18, 0xa4, 0x83, 0x9f, 0x00, 0x0b, 0xde, 0x71, 0x06, 0x11, 0x28, 0x91, 0x79, 0xa4, 0x60, 0x75, 0xa9, 0x99, 0xe8, 0xcc, 0x3d, 0x10, 0xc3, 0x9a, 0xa5, 0x69, 0x7d, 0x62, 0xb4, 0x5a, 0x43, 0x77, 0x11, 0x84, 0x28, 0x8e, 0xee, 0x5a, 0x8d, 0x6a, 0x87, 0x3d, 0x74, 0x21, 0x05, 0x7b, }; static const unsigned char xdh_wei448_2536_privkey[] = { 0xf0, 0x3f, 0x05, 0x18, 0x1a, 0x81, 0x30, 0xe7, 0x21, 0x0c, 0xb5, 0x22, 0x9c, 0x8d, 0xff, 0xa4, 0x57, 0x54, 0x4e, 0xb5, 0xe1, 0xe1, 0xf8, 0x62, 0x97, 0xac, 0x23, 0xfe, 0x0e, 0xf4, 0x95, 0xca, 0xbc, 0x13, 0x67, 0xad, 0x20, 0x54, 0xc5, 0xd8, 0xee, 0xfb, 0x08, 0x34, 0x6e, 0xb5, 0xa1, 0x47, 0xba, 0x44, 0x9e, 0x89, 0x86, 0x02, 0x2b, 0x8c, }; static const unsigned char xdh_wei448_2536_sharedsecret[] = { 0xe7, 0x85, 0x1b, 0xc1, 0x3d, 0x7c, 0xb8, 0x00, 0x9c, 0x54, 0xa7, 0xd6, 0x33, 0xae, 0x82, 0xd2, 0x04, 0x10, 0x16, 0x15, 0xf3, 0x28, 0xba, 0x05, 0x09, 0x28, 0x41, 0x46, 0x9d, 0x41, 0x0a, 0x4d, 0x52, 0x7a, 0x17, 0xde, 0x91, 0x89, 0x51, 0x28, 0x58, 0x85, 0xb9, 0xd7, 0x67, 0xa0, 0xcb, 0xcc, 0x88, 0xf6, 0x9c, 0xe1, 0x50, 0xb3, 0x23, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2536 = { .name = "xdh_wei448_2536", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2536_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2536_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2536_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 464 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2537 for XDH, tcId is 465 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2537_peerpubkey[] = { 0x3a, 0xb5, 0x93, 0x72, 0x4e, 0xae, 0x72, 0xc6, 0xc3, 0xf7, 0x7a, 0x71, 0xf2, 0x3a, 0xc1, 0xac, 0x52, 0xad, 0xba, 0xea, 0xb9, 0x1f, 0x20, 0x82, 0xbb, 0xe8, 0x4a, 0x58, 0xe6, 0x03, 0xd7, 0x8d, 0x84, 0xe6, 0x51, 0xa6, 0xe5, 0x88, 0x57, 0xd6, 0xcc, 0x91, 0x76, 0x7c, 0xfa, 0xa5, 0xad, 0xf0, 0xc6, 0x7e, 0xe2, 0x3f, 0x04, 0x02, 0xaa, 0x7d, }; static const unsigned char xdh_wei448_2537_privkey[] = { 0x34, 0xd7, 0xfe, 0x88, 0x6b, 0x69, 0x6e, 0x16, 0x2f, 0x35, 0xf2, 0x6d, 0x0b, 0xf7, 0x4a, 0xbf, 0x13, 0xd4, 0x0e, 0x19, 0x3c, 0x1b, 0x69, 0xad, 0x1b, 0x6a, 0xa6, 0xd1, 0x3a, 0x34, 0x08, 0x54, 0xa9, 0xa0, 0xa6, 0x2b, 0x05, 0xda, 0x18, 0x32, 0x96, 0xa6, 0x22, 0xbb, 0x48, 0xeb, 0x8e, 0xd3, 0xe6, 0x76, 0x02, 0x75, 0x02, 0x72, 0x6d, 0x8b, }; static const unsigned char xdh_wei448_2537_sharedsecret[] = { 0x36, 0x95, 0x70, 0xa9, 0x4c, 0xbf, 0x29, 0x23, 0x4a, 0x63, 0x10, 0x0e, 0xdc, 0xbf, 0x84, 0x55, 0x71, 0xd8, 0x32, 0x61, 0x16, 0xb8, 0x27, 0x00, 0x2e, 0x5d, 0xe5, 0xdc, 0xe5, 0x42, 0x93, 0xd5, 0xe9, 0x15, 0x4d, 0xb7, 0x1b, 0x04, 0x07, 0x15, 0x6a, 0x75, 0x72, 0x4b, 0xc1, 0x64, 0xd6, 0x8b, 0xf8, 0x00, 0xdb, 0x2f, 0xeb, 0xbe, 0x64, 0xa1, }; static const wycheproof_xdh_test xdh_wei448_2537 = { .name = "xdh_wei448_2537", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2537_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2537_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2537_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 465 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2538 for XDH, tcId is 466 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2538_peerpubkey[] = { 0x2f, 0x40, 0x00, 0xa0, 0x10, 0xfb, 0xa8, 0x70, 0xbc, 0xb1, 0x31, 0xe7, 0x3e, 0xeb, 0x05, 0x22, 0xc2, 0x0f, 0xd5, 0x28, 0x2e, 0x33, 0x96, 0xe0, 0xde, 0x9e, 0xd2, 0x6a, 0x62, 0xb1, 0xd4, 0x37, 0x0b, 0xae, 0x26, 0x54, 0x4c, 0xff, 0x3c, 0xae, 0x78, 0xcd, 0x0b, 0x8e, 0xa2, 0x86, 0xc7, 0x4b, 0x1f, 0x7c, 0x7c, 0x7a, 0x9e, 0x73, 0x88, 0xe9, }; static const unsigned char xdh_wei448_2538_privkey[] = { 0xc8, 0x70, 0x53, 0x39, 0x02, 0xfe, 0x72, 0x8c, 0xf8, 0x8b, 0xb9, 0xb1, 0x78, 0xad, 0x0c, 0xcb, 0xb1, 0x55, 0x2a, 0xca, 0xeb, 0x41, 0xd3, 0x58, 0xd5, 0x17, 0x4a, 0x4c, 0x3e, 0xc9, 0x0a, 0xf0, 0x6b, 0x22, 0x55, 0xe5, 0xe1, 0x5c, 0xaf, 0x95, 0xcd, 0x31, 0x52, 0xb7, 0x4b, 0x59, 0x73, 0xc3, 0x39, 0x74, 0x8a, 0x36, 0x52, 0xcd, 0x98, 0x89, }; static const unsigned char xdh_wei448_2538_sharedsecret[] = { 0x50, 0xf0, 0x1d, 0x59, 0xa5, 0xcb, 0xc4, 0xc9, 0x6c, 0x32, 0xd8, 0x90, 0xe8, 0x99, 0x2a, 0x23, 0x60, 0x2d, 0xb6, 0x96, 0x6c, 0xf0, 0xd4, 0x20, 0xc2, 0x27, 0x3a, 0xbd, 0x8e, 0xeb, 0xaa, 0x2e, 0xbd, 0x54, 0x34, 0x61, 0x4b, 0x1a, 0x79, 0x17, 0x5d, 0x28, 0x4d, 0x12, 0xfd, 0x5d, 0x43, 0x5e, 0x47, 0xaf, 0xb7, 0xd4, 0x73, 0x61, 0x51, 0x39, }; static const wycheproof_xdh_test xdh_wei448_2538 = { .name = "xdh_wei448_2538", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2538_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2538_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2538_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 466 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2539 for XDH, tcId is 467 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2539_peerpubkey[] = { 0x01, 0xb2, 0x37, 0xb2, 0xe5, 0x4b, 0x32, 0xd7, 0xc9, 0xba, 0x63, 0xd9, 0x7a, 0x3a, 0x27, 0x47, 0x1c, 0x24, 0x91, 0x17, 0x67, 0xf6, 0x18, 0x7c, 0x1d, 0x91, 0x4b, 0xec, 0x1f, 0x4f, 0x98, 0x34, 0x8a, 0xdf, 0x51, 0x1a, 0xd0, 0x87, 0xf8, 0xfe, 0x8a, 0xfd, 0x11, 0x07, 0xcb, 0xae, 0x81, 0x9f, 0x60, 0xea, 0x8c, 0x3c, 0xf6, 0xb7, 0xe5, 0xa1, }; static const unsigned char xdh_wei448_2539_privkey[] = { 0xf4, 0x58, 0x96, 0xc6, 0x4d, 0x14, 0xe3, 0x75, 0xb4, 0x0c, 0xa3, 0x13, 0x56, 0xb7, 0x85, 0xeb, 0x94, 0x4f, 0xc6, 0xad, 0x07, 0xc3, 0x43, 0x27, 0x98, 0x80, 0xbe, 0x61, 0x14, 0xf4, 0xbc, 0x56, 0x72, 0x6a, 0x98, 0x9c, 0x7c, 0xc2, 0x62, 0x71, 0x73, 0x35, 0xc3, 0x6a, 0xa7, 0x88, 0x06, 0xeb, 0xd8, 0x53, 0xa2, 0x2e, 0x70, 0x08, 0xba, 0x8d, }; static const unsigned char xdh_wei448_2539_sharedsecret[] = { 0xd6, 0x5b, 0x11, 0x3b, 0x36, 0x4d, 0x20, 0x15, 0x6a, 0x78, 0x43, 0x5a, 0x04, 0x66, 0x3d, 0x07, 0x8f, 0xb2, 0x08, 0x23, 0x4b, 0x74, 0x51, 0x51, 0xc9, 0x06, 0xe1, 0x12, 0xdf, 0xa7, 0xcb, 0xeb, 0x53, 0xde, 0x16, 0x32, 0x61, 0x1a, 0x6d, 0x61, 0x23, 0x40, 0x51, 0xa1, 0xd1, 0x8a, 0x86, 0x57, 0xd3, 0x72, 0x2f, 0xd6, 0xbb, 0x0d, 0xcf, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2539 = { .name = "xdh_wei448_2539", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2539_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2539_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2539_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 467 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2540 for XDH, tcId is 468 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2540_peerpubkey[] = { 0x25, 0x9d, 0x5b, 0x9e, 0x98, 0x3c, 0x18, 0x8c, 0x7f, 0x80, 0x05, 0x52, 0x3f, 0x22, 0x47, 0xbb, 0xed, 0x09, 0xa4, 0xad, 0x8b, 0xa3, 0xac, 0x1c, 0x01, 0x91, 0x7c, 0x2e, 0x27, 0xcf, 0xe1, 0xb4, 0x6d, 0xd7, 0x6c, 0xd3, 0xe0, 0xb7, 0x2b, 0x18, 0x6c, 0x8f, 0xb3, 0x70, 0x19, 0x72, 0xb4, 0x93, 0x8b, 0x1f, 0x7b, 0x52, 0xe6, 0x17, 0x75, 0x06, }; static const unsigned char xdh_wei448_2540_privkey[] = { 0x30, 0xc2, 0x30, 0x49, 0x39, 0x20, 0x45, 0x12, 0x2b, 0x04, 0xad, 0x8d, 0xef, 0xd0, 0xd2, 0xd9, 0xb6, 0xb6, 0x6c, 0x27, 0xe5, 0x0a, 0x50, 0xc2, 0xd2, 0x62, 0xe9, 0xab, 0xd3, 0x57, 0x17, 0x12, 0x69, 0x25, 0xdb, 0x2a, 0xe4, 0x6a, 0x82, 0x85, 0xbd, 0xbf, 0x5a, 0x86, 0x39, 0xbb, 0x9a, 0x7d, 0x38, 0x9d, 0xcd, 0xf3, 0x7d, 0x9f, 0xc6, 0x9b, }; static const unsigned char xdh_wei448_2540_sharedsecret[] = { 0xa8, 0x7e, 0x2b, 0x37, 0x26, 0x71, 0xbc, 0x4f, 0x9f, 0xa4, 0x5e, 0xb4, 0xf4, 0x98, 0x1c, 0x24, 0x7c, 0xde, 0x7e, 0x25, 0xbd, 0xcb, 0x9e, 0xd8, 0x00, 0x74, 0x8a, 0xd6, 0xf1, 0x11, 0xf0, 0xc7, 0xad, 0xa3, 0xc4, 0xc7, 0xb3, 0x2d, 0xae, 0x7f, 0xaf, 0x67, 0x64, 0x38, 0xba, 0xde, 0x9c, 0xa1, 0xbd, 0xa8, 0x22, 0x50, 0xf8, 0xa2, 0xf1, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2540 = { .name = "xdh_wei448_2540", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2540_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2540_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2540_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 468 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2541 for XDH, tcId is 469 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2541_peerpubkey[] = { 0x50, 0xe6, 0x8f, 0x3a, 0x02, 0x97, 0xd2, 0x17, 0xa4, 0xab, 0x14, 0xf6, 0x50, 0x89, 0x9e, 0x78, 0x8e, 0x10, 0x3e, 0x4e, 0xff, 0xe6, 0x98, 0x8b, 0xc8, 0x01, 0x71, 0x9a, 0xc8, 0xa5, 0xbe, 0xbe, 0x55, 0xe3, 0xa8, 0x1e, 0xd4, 0xf1, 0xb5, 0x64, 0x19, 0x81, 0xc9, 0xde, 0xe9, 0xa8, 0xbd, 0x94, 0x6b, 0xbc, 0x43, 0x64, 0x9a, 0x10, 0xc0, 0x25, }; static const unsigned char xdh_wei448_2541_privkey[] = { 0x78, 0xeb, 0xba, 0x71, 0xf4, 0xf9, 0xbc, 0x92, 0x9d, 0xf8, 0x68, 0x56, 0xd6, 0x00, 0xe3, 0x2b, 0x87, 0x8c, 0x99, 0xaa, 0x62, 0xfb, 0x01, 0xbf, 0xeb, 0x8e, 0xae, 0xd9, 0x3e, 0xc3, 0x63, 0xbe, 0xf8, 0x2d, 0xab, 0x72, 0x72, 0x25, 0xd8, 0x2e, 0x2a, 0xd7, 0xcc, 0x11, 0x23, 0x87, 0x90, 0x1b, 0xbe, 0x89, 0xdf, 0xfb, 0xad, 0x77, 0x84, 0x9e, }; static const unsigned char xdh_wei448_2541_sharedsecret[] = { 0x8c, 0x23, 0xb9, 0x27, 0x6c, 0x81, 0x64, 0xa6, 0x44, 0x7b, 0x0b, 0x3e, 0xc3, 0x30, 0x26, 0x8c, 0x38, 0xdd, 0x55, 0x3b, 0xf2, 0x09, 0xb6, 0x3c, 0x1d, 0x73, 0x3e, 0x2b, 0x88, 0x5d, 0x5a, 0x26, 0x66, 0x7b, 0xfb, 0xd6, 0xfc, 0x29, 0x37, 0x81, 0xc9, 0xe7, 0x09, 0x09, 0xe7, 0x42, 0xdd, 0xb1, 0x8a, 0x79, 0x81, 0x40, 0xcb, 0xee, 0xb9, 0x61, }; static const wycheproof_xdh_test xdh_wei448_2541 = { .name = "xdh_wei448_2541", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2541_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2541_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2541_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 469 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2542 for XDH, tcId is 470 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2542_peerpubkey[] = { 0x16, 0x9d, 0x94, 0x58, 0xa9, 0xa9, 0x1b, 0x21, 0x4a, 0xb7, 0xe8, 0x3b, 0x97, 0x68, 0x37, 0x39, 0x99, 0xfe, 0xd6, 0x07, 0xda, 0xa9, 0x43, 0x58, 0x50, 0x37, 0x84, 0x97, 0x64, 0x5b, 0xbe, 0xb6, 0x9a, 0xab, 0x6f, 0x05, 0xfb, 0xf2, 0x4a, 0xfe, 0x51, 0x18, 0x02, 0xbc, 0x45, 0x3a, 0x29, 0x2b, 0xc7, 0x4a, 0x8d, 0xe0, 0x88, 0xef, 0x1e, 0x51, }; static const unsigned char xdh_wei448_2542_privkey[] = { 0x10, 0xc0, 0xb3, 0xb2, 0xe8, 0xb9, 0x8f, 0xce, 0x70, 0x7b, 0x31, 0x49, 0x94, 0x19, 0xe2, 0xac, 0x5f, 0x64, 0xab, 0xda, 0x25, 0x80, 0x75, 0xb6, 0x94, 0x1e, 0xe3, 0xb8, 0x28, 0xa1, 0x91, 0xa7, 0x21, 0xaf, 0x2a, 0x34, 0x4e, 0x89, 0x5c, 0x95, 0xad, 0x79, 0x4f, 0x7c, 0x4e, 0xf0, 0xf4, 0x69, 0x56, 0x05, 0x04, 0x38, 0x67, 0x8a, 0x1e, 0x9c, }; static const unsigned char xdh_wei448_2542_sharedsecret[] = { 0xf5, 0xc7, 0x6c, 0xa6, 0x09, 0x2d, 0xcf, 0x01, 0x61, 0x9b, 0x6e, 0x13, 0x89, 0x0b, 0x02, 0x96, 0xca, 0xac, 0x32, 0x92, 0xc5, 0xc9, 0xe3, 0x7b, 0x79, 0x88, 0x94, 0xf9, 0xf7, 0xbe, 0x57, 0x10, 0x77, 0xc2, 0x5f, 0xb1, 0x2d, 0x61, 0x6b, 0x63, 0xb4, 0xd5, 0xd8, 0xa9, 0x0e, 0x46, 0xf1, 0x09, 0xfc, 0x04, 0x62, 0x8e, 0x0b, 0x2c, 0x0d, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2542 = { .name = "xdh_wei448_2542", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2542_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2542_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2542_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 470 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2543 for XDH, tcId is 471 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2543_peerpubkey[] = { 0x88, 0xfb, 0xf6, 0x5e, 0x02, 0x44, 0xc8, 0xb2, 0x43, 0x1b, 0xd6, 0xe6, 0x31, 0x4d, 0x50, 0x88, 0xeb, 0xcd, 0xec, 0xde, 0x77, 0xfa, 0x27, 0xbd, 0x81, 0x38, 0x36, 0xc5, 0xff, 0x8a, 0xd3, 0xd0, 0xf0, 0x43, 0x98, 0x7b, 0x88, 0x1b, 0xca, 0xd1, 0xbf, 0x1e, 0x1d, 0xa5, 0xc6, 0x32, 0x31, 0xb7, 0x2b, 0x86, 0x21, 0x23, 0xcd, 0x39, 0x1b, 0x71, }; static const unsigned char xdh_wei448_2543_privkey[] = { 0x2c, 0x47, 0xd3, 0x4c, 0xb0, 0x93, 0x51, 0x33, 0x70, 0x8b, 0x21, 0xf4, 0x22, 0x7b, 0x52, 0xb2, 0xe4, 0xad, 0x18, 0x10, 0x81, 0xc5, 0x38, 0xe8, 0x7e, 0x5c, 0x87, 0x66, 0x06, 0xdb, 0x69, 0xe0, 0x7f, 0x35, 0xb3, 0xc9, 0xf8, 0x6b, 0x42, 0xa8, 0x37, 0x2a, 0x93, 0xfb, 0x3c, 0xd6, 0x74, 0xc0, 0xe3, 0x42, 0x24, 0x2a, 0xb9, 0x10, 0xde, 0x94, }; static const unsigned char xdh_wei448_2543_sharedsecret[] = { 0x2d, 0xbe, 0xa0, 0x42, 0x84, 0xc3, 0x14, 0xc9, 0x0d, 0xe0, 0x20, 0x76, 0xf8, 0x37, 0xde, 0xfa, 0xd2, 0x8e, 0x9e, 0x8d, 0x40, 0x09, 0x51, 0x94, 0xc7, 0x05, 0xcc, 0x20, 0x65, 0x56, 0xbc, 0x8b, 0x6a, 0x21, 0x17, 0x29, 0xfe, 0xb5, 0xed, 0xf6, 0xf8, 0x6f, 0xbb, 0x9b, 0x17, 0x20, 0xb4, 0x37, 0x89, 0x78, 0xd9, 0xc9, 0xab, 0x41, 0xb8, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_2543 = { .name = "xdh_wei448_2543", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2543_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2543_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2543_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 471 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2544 for XDH, tcId is 472 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2544_peerpubkey[] = { 0x6c, 0x2f, 0x2e, 0xde, 0xfb, 0xe1, 0x01, 0x8e, 0xfa, 0x83, 0xe2, 0x81, 0xbc, 0xa4, 0xc7, 0x7a, 0x6c, 0xc7, 0x69, 0xb6, 0x2e, 0x8f, 0xf5, 0x12, 0xc6, 0x69, 0xbf, 0xe5, 0x55, 0x4f, 0x70, 0xf0, 0xd8, 0x29, 0xa8, 0xfe, 0x54, 0x81, 0x15, 0xa5, 0x5a, 0x00, 0x34, 0xbb, 0x7b, 0x3e, 0x59, 0x0b, 0x28, 0x65, 0xe1, 0x0c, 0x97, 0x3e, 0x5a, 0xc0, }; static const unsigned char xdh_wei448_2544_privkey[] = { 0x3c, 0x76, 0x9b, 0xde, 0x8a, 0xcb, 0x40, 0x98, 0xaf, 0xa6, 0xdf, 0x0b, 0x7c, 0x17, 0x4f, 0x72, 0xb9, 0x46, 0x8d, 0x21, 0x6e, 0x8d, 0x60, 0xaa, 0xd8, 0x10, 0x98, 0x87, 0x25, 0x22, 0xfb, 0x60, 0xe9, 0x4e, 0xe9, 0x99, 0x2d, 0xe7, 0x0f, 0x63, 0xd5, 0xc0, 0x02, 0x4c, 0xa9, 0xb6, 0x74, 0xc0, 0xaf, 0x26, 0x2b, 0x6f, 0xcd, 0x52, 0xea, 0x9a, }; static const unsigned char xdh_wei448_2544_sharedsecret[] = { 0x8c, 0x56, 0xe7, 0x41, 0x52, 0x6a, 0xe9, 0xac, 0xb0, 0xa8, 0x53, 0x18, 0x4c, 0x6a, 0x05, 0x85, 0x89, 0x54, 0x65, 0x52, 0x36, 0x43, 0x8e, 0xbe, 0x9b, 0x7c, 0xb5, 0x58, 0x1a, 0x29, 0xf7, 0x57, 0x8f, 0x55, 0x1c, 0xa5, 0x8c, 0x23, 0xc3, 0x21, 0x26, 0xfb, 0xc7, 0x89, 0xa1, 0xa7, 0xc1, 0x92, 0x9f, 0x2d, 0xfd, 0xc2, 0x23, 0x60, 0xdc, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_2544 = { .name = "xdh_wei448_2544", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2544_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2544_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2544_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 472 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2545 for XDH, tcId is 473 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2545_peerpubkey[] = { 0xc9, 0x4f, 0xfd, 0x5e, 0xb8, 0x00, 0x8e, 0xc4, 0x94, 0x48, 0xab, 0x24, 0xa9, 0x59, 0xc4, 0x04, 0xb0, 0xd1, 0xd6, 0x62, 0xee, 0xe4, 0x67, 0x64, 0x3c, 0x69, 0x6f, 0x8f, 0x11, 0x79, 0x7f, 0xab, 0x49, 0x36, 0xf3, 0x15, 0xd7, 0xb0, 0x62, 0x4f, 0x61, 0x92, 0x1f, 0x5b, 0x3c, 0xb2, 0xdc, 0x6d, 0x2b, 0x75, 0xe9, 0x9a, 0x0d, 0xc9, 0xfb, 0xdc, }; static const unsigned char xdh_wei448_2545_privkey[] = { 0xc4, 0x71, 0x14, 0x37, 0xfb, 0xe2, 0xb5, 0x1a, 0xb1, 0x3e, 0xdd, 0x52, 0x61, 0xd8, 0x80, 0x52, 0x0b, 0xfb, 0x3c, 0x31, 0x37, 0x3d, 0x80, 0x67, 0xb6, 0x44, 0xe0, 0x8a, 0x5b, 0x35, 0x06, 0x48, 0x55, 0x9e, 0x77, 0x26, 0x69, 0x30, 0x30, 0x1b, 0xbb, 0x9f, 0xe5, 0x63, 0x27, 0x74, 0x63, 0x38, 0xf7, 0x3f, 0x82, 0x43, 0x2d, 0x8d, 0x8b, 0x9d, }; static const unsigned char xdh_wei448_2545_sharedsecret[] = { 0x0d, 0xf3, 0x6e, 0x4e, 0xac, 0x40, 0xf7, 0x44, 0xba, 0xa1, 0x38, 0xe9, 0xb8, 0x92, 0x95, 0xde, 0xcd, 0xe5, 0x3d, 0x35, 0xe4, 0xc1, 0xc2, 0x28, 0x9d, 0xb7, 0x93, 0x0f, 0x3b, 0x39, 0xd1, 0xfc, 0xf8, 0x0f, 0x87, 0x1b, 0x69, 0x1c, 0xcc, 0xf3, 0xce, 0xc6, 0xaa, 0xee, 0xc2, 0x1e, 0x67, 0x8a, 0x3d, 0x29, 0xc5, 0x48, 0x58, 0x72, 0x10, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_2545 = { .name = "xdh_wei448_2545", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2545_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2545_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2545_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 473 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2546 for XDH, tcId is 474 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2546_peerpubkey[] = { 0xa3, 0x58, 0xbd, 0x70, 0xe3, 0x11, 0xa9, 0x52, 0x96, 0x7e, 0x01, 0xd3, 0xf1, 0x93, 0xdb, 0x58, 0xb6, 0x9e, 0x2f, 0x5f, 0x7c, 0x8a, 0xc6, 0x38, 0x1b, 0x15, 0x23, 0x55, 0x67, 0x8e, 0x7b, 0x64, 0x47, 0x48, 0x3b, 0x4e, 0x2b, 0xdb, 0x00, 0x2a, 0x11, 0x3c, 0xc2, 0x34, 0x52, 0xfb, 0xe5, 0x8b, 0xfa, 0x8b, 0xf3, 0x07, 0x33, 0x8d, 0xc2, 0xeb, }; static const unsigned char xdh_wei448_2546_privkey[] = { 0x54, 0x0d, 0xbd, 0x4a, 0x7e, 0x99, 0xfc, 0xc2, 0x98, 0x29, 0x3a, 0x85, 0xc6, 0x36, 0xbd, 0x51, 0x30, 0x2a, 0xa1, 0x30, 0xf3, 0x96, 0x75, 0x60, 0xdc, 0xa8, 0x70, 0x7a, 0x7f, 0xdd, 0xb7, 0xd9, 0x97, 0xc2, 0x05, 0x62, 0xb8, 0x81, 0xe5, 0xb6, 0x80, 0x53, 0xea, 0x9e, 0x04, 0x04, 0x83, 0x21, 0x4c, 0xe8, 0xf1, 0x30, 0xc3, 0x5a, 0x58, 0x9c, }; static const unsigned char xdh_wei448_2546_sharedsecret[] = { 0xcb, 0x6c, 0x61, 0xdd, 0x09, 0xaa, 0x76, 0xec, 0x5a, 0xd6, 0xd2, 0xe3, 0x01, 0x0a, 0x04, 0x6f, 0x99, 0x53, 0x76, 0x1d, 0x23, 0x0c, 0x3d, 0xc5, 0x13, 0xfa, 0x73, 0x2a, 0x4e, 0x5e, 0x98, 0xb0, 0xec, 0xc4, 0xd3, 0xeb, 0xc7, 0xe3, 0xe5, 0x94, 0xba, 0x25, 0xf4, 0x6d, 0x1d, 0x50, 0x8a, 0xf2, 0xd3, 0xa9, 0x8e, 0x1a, 0x3b, 0xa6, 0x84, 0x26, }; static const wycheproof_xdh_test xdh_wei448_2546 = { .name = "xdh_wei448_2546", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2546_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2546_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2546_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 474 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2547 for XDH, tcId is 475 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2547_peerpubkey[] = { 0x46, 0x50, 0x12, 0xb6, 0x85, 0xf2, 0x28, 0x8d, 0xc4, 0xf7, 0x70, 0xf8, 0xbb, 0x51, 0xdc, 0xd2, 0x94, 0xe3, 0x6f, 0x51, 0x8c, 0xdf, 0xad, 0x45, 0xc6, 0x8a, 0x80, 0xb1, 0x11, 0x20, 0xe3, 0x80, 0xaa, 0xaf, 0xa9, 0xf5, 0x9c, 0x57, 0x25, 0xd4, 0x6e, 0xd3, 0xd3, 0x80, 0x58, 0xa2, 0xa4, 0x73, 0xb1, 0x12, 0x4b, 0x75, 0x41, 0x58, 0x87, 0x15, }; static const unsigned char xdh_wei448_2547_privkey[] = { 0x0c, 0x86, 0x4c, 0xbb, 0x26, 0x27, 0x5f, 0xa9, 0x46, 0xae, 0xe2, 0xae, 0x87, 0x2a, 0xa5, 0x4a, 0x82, 0x80, 0x7a, 0x70, 0x40, 0x5f, 0xb7, 0x05, 0xe9, 0x25, 0x16, 0x15, 0x2a, 0xa6, 0x68, 0x3f, 0x4e, 0xd4, 0x22, 0x39, 0xdd, 0x14, 0x73, 0x70, 0xa6, 0xb6, 0x71, 0xed, 0x67, 0x83, 0xce, 0xa5, 0xbe, 0xe2, 0x4c, 0xd4, 0x33, 0xe8, 0x64, 0x91, }; static const unsigned char xdh_wei448_2547_sharedsecret[] = { 0xc2, 0xd3, 0x31, 0x77, 0xe5, 0x2d, 0x27, 0x22, 0xd2, 0xc2, 0xe4, 0x4f, 0x2e, 0x15, 0xdd, 0x0d, 0xb3, 0x32, 0xe7, 0xde, 0x9c, 0x5e, 0x93, 0x07, 0xe7, 0xe0, 0xfb, 0xe7, 0x12, 0x1f, 0x1e, 0xc7, 0xd1, 0x48, 0x87, 0xf1, 0x9b, 0x97, 0x40, 0x96, 0x78, 0x4c, 0x45, 0x8e, 0x32, 0xf2, 0xe8, 0x10, 0x2c, 0x0a, 0x13, 0xb0, 0x0c, 0x8f, 0x61, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_2547 = { .name = "xdh_wei448_2547", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2547_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2547_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2547_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 475 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2548 for XDH, tcId is 476 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2548_peerpubkey[] = { 0x0d, 0x05, 0x33, 0xc5, 0x14, 0xcc, 0x66, 0x1e, 0xd7, 0x4a, 0xff, 0x5c, 0xb9, 0x77, 0x18, 0x76, 0xb2, 0xf1, 0xb0, 0x31, 0x79, 0x45, 0x93, 0xbf, 0xd9, 0xb1, 0xf0, 0x15, 0x5b, 0x59, 0xe5, 0x3c, 0x54, 0xa1, 0x43, 0x58, 0xea, 0x01, 0x03, 0x4b, 0xf0, 0x73, 0x9b, 0x78, 0x05, 0x89, 0xc3, 0xb2, 0x14, 0xa6, 0x54, 0x93, 0xd4, 0xb2, 0x84, 0x64, }; static const unsigned char xdh_wei448_2548_privkey[] = { 0xc4, 0x36, 0x40, 0x08, 0x67, 0x58, 0x93, 0x1b, 0x8f, 0x8b, 0xdb, 0x4f, 0x8a, 0xc1, 0xe9, 0x48, 0x21, 0x6e, 0x36, 0x3b, 0x57, 0x23, 0x6b, 0x9e, 0xbf, 0xf8, 0x20, 0xc8, 0x69, 0x1d, 0xd0, 0x76, 0x50, 0x7e, 0xa6, 0x50, 0xbc, 0x7f, 0x98, 0x43, 0x84, 0x6a, 0x26, 0xd7, 0xd3, 0xa5, 0xd5, 0x57, 0x6c, 0xdd, 0xe4, 0x88, 0x68, 0xd4, 0x32, 0x9b, }; static const unsigned char xdh_wei448_2548_sharedsecret[] = { 0x92, 0x93, 0xaa, 0x34, 0x80, 0x47, 0xd1, 0x14, 0x29, 0xf8, 0xc6, 0x6d, 0x3b, 0x05, 0x07, 0x0b, 0xd5, 0x88, 0x8b, 0x22, 0x18, 0xb2, 0xe6, 0x8c, 0xd1, 0x50, 0x95, 0x2b, 0x5a, 0x71, 0x0f, 0x0f, 0x87, 0x17, 0x6c, 0xd9, 0x3c, 0x18, 0x39, 0xc3, 0xa1, 0x45, 0xd0, 0x3c, 0x49, 0x77, 0x20, 0xe6, 0xf9, 0xcd, 0xe0, 0x10, 0x4c, 0xea, 0x1c, 0x09, }; static const wycheproof_xdh_test xdh_wei448_2548 = { .name = "xdh_wei448_2548", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2548_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2548_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2548_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 476 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2549 for XDH, tcId is 477 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2549_peerpubkey[] = { 0xe2, 0xfe, 0xdb, 0x0f, 0x28, 0xab, 0x05, 0xf2, 0xf6, 0xd9, 0xd8, 0x1c, 0x4b, 0xa9, 0xc6, 0xc8, 0x15, 0xc6, 0x25, 0x42, 0xdc, 0xdb, 0x90, 0x39, 0x83, 0x4d, 0x2a, 0x28, 0x37, 0x34, 0xfb, 0x71, 0x5a, 0x90, 0xf4, 0x03, 0x85, 0x1b, 0x16, 0x25, 0x98, 0x60, 0xb5, 0x72, 0xe4, 0x35, 0x2c, 0x60, 0xbb, 0xa1, 0x87, 0x9c, 0x7e, 0xdf, 0xa4, 0x7d, }; static const unsigned char xdh_wei448_2549_privkey[] = { 0x14, 0xbf, 0x5e, 0x4a, 0xdb, 0x42, 0xa3, 0xf0, 0xf9, 0x4e, 0x75, 0x31, 0xa8, 0x1a, 0xc9, 0x94, 0xd5, 0x72, 0x9c, 0x6f, 0x51, 0xc6, 0xd8, 0xba, 0xe1, 0xc2, 0xa6, 0x9e, 0xcd, 0x76, 0x59, 0xac, 0x31, 0xb4, 0x8d, 0x35, 0xd9, 0x22, 0x85, 0x76, 0xa4, 0x8e, 0x9e, 0x65, 0x8d, 0xe2, 0xc0, 0xaa, 0x9d, 0x59, 0xef, 0x3f, 0x08, 0xd3, 0x8f, 0x97, }; static const unsigned char xdh_wei448_2549_sharedsecret[] = { 0x35, 0x17, 0xa6, 0x63, 0xcf, 0x3a, 0x34, 0xda, 0x5d, 0xa4, 0xa1, 0x0e, 0xc0, 0x55, 0x33, 0xba, 0xb7, 0xea, 0x0b, 0x22, 0x35, 0x29, 0xc4, 0x90, 0x57, 0xb9, 0xfb, 0xb9, 0x60, 0xc4, 0xdd, 0xde, 0xb2, 0x15, 0x0a, 0x52, 0x26, 0x51, 0x96, 0x4b, 0x20, 0xb6, 0x35, 0x8f, 0xea, 0xc9, 0x20, 0x3a, 0xa0, 0x14, 0xab, 0x01, 0x54, 0x8e, 0xde, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_2549 = { .name = "xdh_wei448_2549", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2549_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2549_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2549_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 477 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2550 for XDH, tcId is 478 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2550_peerpubkey[] = { 0x06, 0x0a, 0x05, 0x9e, 0xc2, 0x51, 0x40, 0x62, 0x05, 0xa5, 0x70, 0x19, 0xa8, 0xec, 0xa7, 0xaa, 0xa9, 0xef, 0xdc, 0xc5, 0x32, 0x77, 0xa8, 0x9b, 0x55, 0x2e, 0x64, 0x09, 0x98, 0xad, 0x23, 0x83, 0x43, 0x1b, 0x94, 0xec, 0x58, 0xeb, 0xef, 0x0d, 0xe3, 0xa7, 0x68, 0x0f, 0xdf, 0x5e, 0x56, 0xb9, 0xd8, 0x9b, 0x91, 0x42, 0x1f, 0xf4, 0x33, 0x83, }; static const unsigned char xdh_wei448_2550_privkey[] = { 0xac, 0x93, 0xa2, 0x1d, 0x29, 0xd3, 0x71, 0x8d, 0xd0, 0x33, 0x15, 0xea, 0x0a, 0x47, 0x70, 0xc3, 0x1d, 0xdc, 0x8a, 0xce, 0x30, 0x4e, 0x3e, 0xfd, 0x6e, 0xf9, 0x3e, 0x3d, 0x1b, 0x80, 0x35, 0x29, 0x9f, 0x6b, 0xc6, 0x59, 0xba, 0xcf, 0x14, 0xc1, 0x3e, 0x84, 0x88, 0x10, 0xd7, 0xd8, 0x4d, 0x2b, 0xbb, 0xd4, 0xa1, 0x07, 0x86, 0xc8, 0x6c, 0x98, }; static const unsigned char xdh_wei448_2550_sharedsecret[] = { 0xd3, 0x6c, 0x91, 0x9a, 0xb7, 0xe5, 0x36, 0xe9, 0x58, 0xc9, 0x5e, 0xe9, 0xa7, 0x89, 0xba, 0x37, 0xaa, 0xe9, 0x97, 0x4d, 0xd3, 0xa2, 0x68, 0x07, 0x21, 0xfa, 0x69, 0x52, 0x59, 0x88, 0xa0, 0x25, 0x7c, 0x3f, 0x65, 0x4b, 0x97, 0xd4, 0x50, 0xdc, 0x88, 0xde, 0xda, 0x59, 0xd2, 0x6d, 0x8f, 0x09, 0x58, 0xf8, 0x0c, 0x75, 0x32, 0x8f, 0xba, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2550 = { .name = "xdh_wei448_2550", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2550_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2550_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2550_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 478 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2551 for XDH, tcId is 479 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2551_peerpubkey[] = { 0x91, 0x82, 0x78, 0x4a, 0x25, 0x5f, 0x07, 0x27, 0xb6, 0xbc, 0x85, 0x92, 0xbd, 0xd5, 0x45, 0xdd, 0x49, 0x37, 0x10, 0xa1, 0x51, 0x45, 0xe8, 0x6e, 0x16, 0x08, 0x60, 0xc5, 0x27, 0xd9, 0x88, 0x47, 0x84, 0xd8, 0x47, 0x0a, 0x56, 0x31, 0xac, 0x8d, 0x8f, 0xe9, 0x83, 0xfa, 0x17, 0xec, 0x58, 0x5d, 0x2f, 0x3b, 0x35, 0xe6, 0x39, 0x7b, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_2551_privkey[] = { 0x88, 0xae, 0x17, 0x46, 0x81, 0xb5, 0xaa, 0x06, 0x60, 0x2b, 0xf4, 0x3b, 0x06, 0x0a, 0x91, 0x5f, 0xb3, 0xbc, 0xd7, 0x8f, 0xb2, 0x3f, 0x9d, 0xa1, 0xc0, 0x2e, 0x7f, 0x9a, 0xa8, 0x85, 0x02, 0x74, 0x6e, 0xea, 0x95, 0xb1, 0x1a, 0xef, 0x6f, 0x8a, 0xd1, 0x5e, 0x49, 0x2c, 0x3c, 0xfa, 0xfa, 0xd7, 0xc0, 0x04, 0xd5, 0x92, 0x0f, 0xe1, 0x27, 0x96, }; static const unsigned char xdh_wei448_2551_sharedsecret[] = { 0xfc, 0xed, 0xdd, 0xad, 0x35, 0x58, 0x60, 0x19, 0x33, 0xbe, 0x90, 0x34, 0x41, 0x08, 0xf3, 0xd5, 0x5a, 0x2b, 0x92, 0x4f, 0xc1, 0x6e, 0x7f, 0xdd, 0xb3, 0xe2, 0x6c, 0x6d, 0xd4, 0x1c, 0xd9, 0xf6, 0xc2, 0xf6, 0xed, 0x34, 0x2b, 0x10, 0x95, 0x30, 0x55, 0xf8, 0xe3, 0x8e, 0xd2, 0x6d, 0x3e, 0x95, 0x25, 0x98, 0xeb, 0x80, 0xd1, 0x97, 0xf1, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2551 = { .name = "xdh_wei448_2551", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2551_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2551_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2551_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 479 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2552 for XDH, tcId is 480 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2552_peerpubkey[] = { 0x83, 0x1e, 0x67, 0x3a, 0xaa, 0xc4, 0x62, 0xd0, 0xb8, 0xef, 0x04, 0x72, 0xe5, 0x64, 0xb0, 0xeb, 0x85, 0x81, 0x65, 0x24, 0x2a, 0x7c, 0x30, 0xef, 0x0d, 0x89, 0x7f, 0x39, 0xb1, 0x2e, 0xd0, 0xec, 0x34, 0x6e, 0xf2, 0x02, 0x49, 0x17, 0x2c, 0x7d, 0x60, 0x1b, 0x92, 0x81, 0x81, 0x50, 0x4a, 0x2a, 0xe8, 0xcf, 0x38, 0xc5, 0x72, 0x9a, 0x1e, 0xb4, }; static const unsigned char xdh_wei448_2552_privkey[] = { 0xf8, 0x17, 0xa0, 0x22, 0x86, 0x23, 0xeb, 0xb3, 0x13, 0x1e, 0xc3, 0x3b, 0x41, 0xd9, 0x0c, 0x34, 0x7e, 0x9e, 0xfb, 0xe4, 0x6b, 0xb8, 0x10, 0x51, 0xa2, 0xfd, 0xa3, 0x0b, 0x49, 0x99, 0x3a, 0x8e, 0x88, 0x27, 0x2e, 0xc8, 0x32, 0x05, 0x22, 0x93, 0x0c, 0x20, 0x6a, 0x68, 0x4c, 0x77, 0xfd, 0xbd, 0x42, 0xce, 0xe2, 0xce, 0x47, 0x06, 0x6d, 0x93, }; static const unsigned char xdh_wei448_2552_sharedsecret[] = { 0xb5, 0x71, 0xd1, 0xba, 0x1b, 0x21, 0xa4, 0xf8, 0x22, 0x81, 0x4e, 0x47, 0x8e, 0x3c, 0xcd, 0x1f, 0x5d, 0x9d, 0xb8, 0x56, 0x3a, 0x9c, 0x14, 0x13, 0x81, 0xab, 0xd8, 0xc3, 0x96, 0x22, 0xd8, 0x66, 0xaf, 0x11, 0x1f, 0xdb, 0xd9, 0x4a, 0x97, 0xb1, 0x51, 0x78, 0x1d, 0x96, 0xfa, 0xd0, 0xd2, 0xf9, 0x21, 0x51, 0x9e, 0x77, 0x3e, 0x36, 0x79, 0x76, }; static const wycheproof_xdh_test xdh_wei448_2552 = { .name = "xdh_wei448_2552", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2552_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2552_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2552_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 480 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2553 for XDH, tcId is 481 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2553_peerpubkey[] = { 0x7e, 0x2a, 0xf5, 0xdc, 0xfa, 0xc2, 0xb3, 0xb2, 0xa9, 0x94, 0x0c, 0x41, 0x10, 0x75, 0x9a, 0x35, 0x89, 0xc4, 0x6c, 0xdd, 0x3e, 0xc1, 0x34, 0x88, 0x50, 0x02, 0xe8, 0xef, 0xf0, 0x0a, 0x02, 0x15, 0xb7, 0x44, 0xe9, 0xf6, 0xf3, 0x6d, 0xa6, 0xe0, 0xa1, 0x98, 0xd8, 0x29, 0xae, 0xb0, 0xf7, 0xb0, 0x37, 0x62, 0x79, 0x92, 0x6c, 0x64, 0x6e, 0xbd, }; static const unsigned char xdh_wei448_2553_privkey[] = { 0xf0, 0x3e, 0x20, 0x68, 0x6c, 0xc7, 0xe1, 0xe6, 0x57, 0x6d, 0x6c, 0x69, 0x0a, 0x18, 0x88, 0x15, 0x4d, 0x30, 0x71, 0xef, 0x41, 0x4f, 0xdd, 0x1b, 0x1e, 0x9d, 0xdf, 0x6a, 0xf8, 0x93, 0xd1, 0x95, 0xc6, 0x2e, 0xcf, 0x66, 0xd9, 0xcf, 0xb7, 0x96, 0x00, 0xd5, 0xd6, 0x64, 0x52, 0x7d, 0x69, 0xfb, 0xcf, 0x26, 0x76, 0xb4, 0x87, 0x23, 0x9b, 0x9a, }; static const unsigned char xdh_wei448_2553_sharedsecret[] = { 0x26, 0xf7, 0x64, 0xe8, 0x74, 0x73, 0x3b, 0xf7, 0x54, 0x15, 0x72, 0xe0, 0xc5, 0x44, 0xf6, 0xe2, 0x2a, 0xac, 0x1d, 0x33, 0xd5, 0x46, 0x4f, 0x62, 0x9a, 0xdd, 0xd6, 0xca, 0x86, 0x0b, 0x1d, 0x7c, 0xad, 0x7c, 0x83, 0xd7, 0xac, 0x67, 0x46, 0x50, 0x87, 0x35, 0x95, 0xd5, 0xa2, 0x1f, 0xac, 0xc7, 0xa8, 0xcf, 0x2d, 0xfc, 0x24, 0x9e, 0x6d, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_2553 = { .name = "xdh_wei448_2553", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2553_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2553_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2553_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 481 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2554 for XDH, tcId is 482 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2554_peerpubkey[] = { 0x60, 0xef, 0xab, 0xd2, 0x57, 0x7f, 0xdc, 0xbf, 0x51, 0x90, 0x9e, 0x08, 0x2a, 0x39, 0x53, 0x38, 0x5f, 0xa8, 0x00, 0x1b, 0xca, 0xb7, 0x33, 0x55, 0xca, 0x23, 0xb7, 0x25, 0xad, 0xd5, 0x59, 0x5c, 0x31, 0x81, 0x22, 0x13, 0x30, 0x3d, 0x3b, 0xa4, 0x25, 0x89, 0xa2, 0xad, 0xc2, 0x21, 0x30, 0x80, 0xb7, 0xdf, 0x73, 0x32, 0x29, 0x5a, 0xcd, 0xd1, }; static const unsigned char xdh_wei448_2554_privkey[] = { 0xb0, 0x4c, 0x1f, 0xd2, 0xa1, 0xca, 0x66, 0xd4, 0x96, 0xbd, 0xd6, 0x64, 0x54, 0x38, 0x29, 0x18, 0x01, 0x50, 0x4e, 0xaa, 0x7b, 0xe8, 0x28, 0xe9, 0x25, 0x4c, 0xe7, 0x52, 0x08, 0x26, 0x7b, 0x13, 0xc7, 0x9e, 0xe8, 0xae, 0x8f, 0x38, 0x22, 0xba, 0x07, 0xd3, 0x4d, 0xcf, 0x23, 0xc0, 0x64, 0x2e, 0x7d, 0x66, 0x8b, 0x9e, 0xc1, 0xc0, 0x94, 0x99, }; static const unsigned char xdh_wei448_2554_sharedsecret[] = { 0xbe, 0x71, 0x31, 0x18, 0x7a, 0xeb, 0xfe, 0x8c, 0xa1, 0x03, 0xec, 0x44, 0xed, 0x43, 0xda, 0x73, 0xa8, 0x68, 0x14, 0x00, 0xfb, 0xcd, 0x5f, 0x3b, 0xae, 0x3e, 0xb0, 0x96, 0x24, 0x20, 0xe9, 0xfc, 0x9f, 0x1d, 0x2d, 0x3b, 0x0d, 0x51, 0xae, 0x9c, 0xc0, 0x99, 0x88, 0x3e, 0x44, 0xd8, 0xba, 0xe1, 0x4a, 0x91, 0x3a, 0x7a, 0x47, 0x15, 0x36, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_2554 = { .name = "xdh_wei448_2554", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2554_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2554_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2554_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 482 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2555 for XDH, tcId is 483 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2555_peerpubkey[] = { 0xe7, 0x14, 0xd2, 0xb2, 0x8b, 0x2b, 0x5e, 0xf5, 0x81, 0x5e, 0x8f, 0x3e, 0xd0, 0x55, 0x4a, 0x6e, 0x61, 0xed, 0x26, 0x86, 0x12, 0xa8, 0xf6, 0xa3, 0x76, 0x40, 0x23, 0xd0, 0x0c, 0x76, 0x09, 0x8a, 0x49, 0xea, 0xf8, 0xa5, 0xdd, 0xc4, 0x16, 0x4b, 0x1b, 0xef, 0x39, 0xab, 0x6d, 0xa8, 0x3a, 0x7e, 0xb6, 0x70, 0x3b, 0xaf, 0x3a, 0x57, 0x5d, 0xe9, }; static const unsigned char xdh_wei448_2555_privkey[] = { 0x8c, 0x2a, 0xc1, 0xa1, 0x99, 0x01, 0xb8, 0x47, 0x16, 0x42, 0xf8, 0x59, 0xe0, 0x50, 0xf1, 0x86, 0x16, 0x32, 0x3f, 0x80, 0xc7, 0x57, 0xd0, 0x88, 0x6a, 0xfc, 0x64, 0x06, 0xa4, 0x42, 0x45, 0x44, 0x15, 0xc9, 0x58, 0x17, 0x82, 0x97, 0xca, 0xe5, 0xff, 0x2f, 0xf5, 0xc3, 0x45, 0x30, 0x8b, 0x10, 0xa3, 0x2b, 0xf8, 0x32, 0x69, 0xcd, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_2555_sharedsecret[] = { 0x00, 0x80, 0xc5, 0xad, 0x23, 0xc5, 0x62, 0x12, 0x92, 0x06, 0xab, 0x97, 0x4f, 0x05, 0x4e, 0x24, 0xd2, 0x39, 0xee, 0xa4, 0xdc, 0x4f, 0xcb, 0x54, 0x68, 0x03, 0x8b, 0x62, 0x98, 0xd3, 0xdc, 0x9d, 0x9f, 0xe5, 0x71, 0x73, 0xbd, 0x04, 0x0a, 0x5e, 0xa6, 0xd6, 0x21, 0x50, 0x97, 0xff, 0x88, 0x46, 0x95, 0x8c, 0xc5, 0x6d, 0xae, 0x88, 0x23, 0x39, }; static const wycheproof_xdh_test xdh_wei448_2555 = { .name = "xdh_wei448_2555", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2555_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2555_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2555_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 483 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2556 for XDH, tcId is 484 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2556_peerpubkey[] = { 0x38, 0x94, 0x95, 0xc3, 0x5c, 0x2f, 0xf3, 0xf3, 0x67, 0xa5, 0x92, 0x68, 0xee, 0xc8, 0x13, 0x02, 0x56, 0x54, 0x2f, 0x5f, 0x66, 0xfc, 0x97, 0xbd, 0x49, 0x9e, 0xf7, 0x0b, 0x15, 0x65, 0xb6, 0xe7, 0x52, 0xb6, 0x84, 0xe1, 0x86, 0x49, 0x15, 0x29, 0x1f, 0xd5, 0x2a, 0xef, 0x62, 0x8f, 0x51, 0x15, 0x4d, 0x0c, 0xd8, 0x0b, 0x72, 0x10, 0xe1, 0x26, }; static const unsigned char xdh_wei448_2556_privkey[] = { 0x78, 0xc8, 0xa7, 0xf5, 0xc5, 0x5c, 0x47, 0x55, 0x51, 0x7a, 0x6d, 0x67, 0x9b, 0x5b, 0x9e, 0xab, 0x69, 0x3b, 0xbb, 0x20, 0xb7, 0xc8, 0x7f, 0x0f, 0x14, 0x03, 0x70, 0x27, 0x89, 0xcf, 0xe0, 0x68, 0x42, 0x44, 0xc2, 0xf1, 0x9f, 0xd9, 0xdf, 0xf6, 0x7c, 0x95, 0x22, 0x88, 0x12, 0xa3, 0x08, 0x23, 0x7b, 0x4a, 0xb6, 0xaf, 0x23, 0xf0, 0xa3, 0x9a, }; static const unsigned char xdh_wei448_2556_sharedsecret[] = { 0xd5, 0x8f, 0xce, 0xfc, 0x77, 0x09, 0x28, 0x43, 0x0d, 0x62, 0x8f, 0x7f, 0x20, 0x24, 0x1f, 0x0c, 0x40, 0x18, 0x14, 0xe6, 0xfd, 0x8a, 0x54, 0xec, 0x27, 0x2b, 0x77, 0x9a, 0xc1, 0x5b, 0x08, 0xe6, 0x68, 0x96, 0x94, 0xd2, 0xda, 0xda, 0x97, 0x62, 0x05, 0x31, 0x42, 0x5d, 0x8e, 0x05, 0x29, 0xca, 0xb4, 0x0e, 0x80, 0x86, 0x5c, 0x33, 0x03, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_2556 = { .name = "xdh_wei448_2556", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2556_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2556_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2556_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 484 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2557 for XDH, tcId is 485 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2557_peerpubkey[] = { 0x4a, 0xd6, 0x6b, 0x90, 0xa8, 0xbe, 0xb6, 0x03, 0x4b, 0xe2, 0x83, 0x8f, 0xf7, 0xad, 0x78, 0xad, 0xf8, 0x7c, 0xc8, 0xb8, 0xe5, 0xc6, 0x3a, 0x21, 0x1f, 0x55, 0x83, 0x45, 0x91, 0xff, 0x5f, 0x5e, 0x4f, 0x82, 0xfd, 0x10, 0xda, 0x0a, 0x70, 0x83, 0x6d, 0x3c, 0x7e, 0x3c, 0xee, 0xec, 0xb7, 0xd8, 0xc8, 0xf0, 0x2c, 0x51, 0xbd, 0xfe, 0x50, 0x3e, }; static const unsigned char xdh_wei448_2557_privkey[] = { 0x30, 0xf5, 0xbf, 0xc1, 0x6c, 0xd2, 0x35, 0x01, 0x71, 0x6a, 0x6c, 0x56, 0x6a, 0x13, 0xbe, 0xe3, 0x2b, 0x08, 0x2c, 0xdb, 0xb6, 0x2f, 0x09, 0x15, 0x9e, 0x3b, 0x57, 0x23, 0xcb, 0xf5, 0x72, 0xdb, 0xa4, 0x3f, 0xc4, 0xf4, 0x34, 0x3b, 0x9d, 0x0b, 0xb1, 0x84, 0xf1, 0xf8, 0xda, 0x11, 0x0d, 0x77, 0x94, 0xab, 0x63, 0xdf, 0x23, 0xcb, 0xcf, 0x96, }; static const unsigned char xdh_wei448_2557_sharedsecret[] = { 0xfb, 0xd6, 0xc5, 0x31, 0x3c, 0x11, 0x14, 0xa5, 0x05, 0x38, 0x2b, 0x68, 0xab, 0xe7, 0xd0, 0x79, 0x86, 0x43, 0xa3, 0x07, 0x05, 0x5f, 0x4b, 0x5a, 0xb9, 0x48, 0xf5, 0x0d, 0x7f, 0x36, 0xce, 0x20, 0x1b, 0x3f, 0x52, 0x2c, 0xfa, 0x34, 0xf0, 0xa0, 0x8d, 0x00, 0x88, 0x1b, 0x6d, 0x7a, 0x67, 0x88, 0xc8, 0x83, 0x19, 0x4e, 0xe1, 0x16, 0xe8, 0x72, }; static const wycheproof_xdh_test xdh_wei448_2557 = { .name = "xdh_wei448_2557", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2557_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2557_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2557_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 485 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2558 for XDH, tcId is 486 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2558_peerpubkey[] = { 0xca, 0x86, 0xee, 0x9b, 0x71, 0x86, 0x46, 0xba, 0x0c, 0x3e, 0x0e, 0x89, 0xf0, 0x6b, 0xbe, 0x08, 0xad, 0x34, 0xe3, 0xc2, 0x69, 0x82, 0x82, 0x61, 0x19, 0x0d, 0x05, 0xb2, 0x55, 0x0a, 0x4e, 0xb1, 0x7f, 0x9c, 0xe1, 0x4c, 0xbe, 0x0c, 0x95, 0xec, 0x99, 0xa5, 0xc9, 0x0c, 0x70, 0x71, 0xf2, 0xfd, 0xdc, 0x0b, 0xdb, 0x3b, 0xb2, 0xc0, 0x49, 0x71, }; static const unsigned char xdh_wei448_2558_privkey[] = { 0x9c, 0x36, 0xb9, 0x4f, 0x80, 0xfb, 0x5a, 0x02, 0x5d, 0x61, 0xcc, 0x8f, 0x14, 0x38, 0xd9, 0x1e, 0xbc, 0x22, 0x2c, 0x34, 0x7e, 0xc6, 0xbd, 0xdc, 0x2e, 0x45, 0xbe, 0xda, 0x4a, 0xc1, 0x47, 0xb2, 0xa9, 0x1e, 0x74, 0x48, 0x12, 0x74, 0x89, 0xbc, 0x1b, 0x45, 0x45, 0x1b, 0xec, 0x84, 0x38, 0x89, 0xf3, 0x8f, 0xa4, 0x46, 0x7b, 0xe5, 0x7e, 0x9b, }; static const unsigned char xdh_wei448_2558_sharedsecret[] = { 0xda, 0xb7, 0x42, 0x1d, 0x74, 0x26, 0x92, 0x20, 0x00, 0x19, 0x34, 0x23, 0x5b, 0x2d, 0x3f, 0xe5, 0xdc, 0xf7, 0x57, 0x17, 0xb3, 0x80, 0xbe, 0x3b, 0xbf, 0xa9, 0x6a, 0x76, 0x52, 0x9e, 0xb9, 0x27, 0x09, 0xfd, 0xbc, 0xce, 0x5d, 0x30, 0x58, 0x3f, 0x5d, 0x9e, 0x99, 0x9b, 0xaa, 0x78, 0x81, 0x5b, 0x10, 0x30, 0x0d, 0x60, 0x99, 0x6b, 0x59, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_2558 = { .name = "xdh_wei448_2558", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2558_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2558_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2558_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 486 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2559 for XDH, tcId is 487 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2559_peerpubkey[] = { 0xdf, 0xc3, 0x85, 0x3b, 0xd4, 0x94, 0xac, 0x80, 0xbd, 0x25, 0x07, 0x0a, 0x7e, 0x90, 0xfd, 0x89, 0xa7, 0xbf, 0x29, 0x9b, 0x63, 0x97, 0xeb, 0x2a, 0x73, 0x3c, 0x7c, 0x64, 0x29, 0xba, 0x51, 0x0a, 0xf7, 0x42, 0x26, 0xb5, 0xad, 0x52, 0x08, 0xb7, 0x51, 0x3b, 0xbc, 0x53, 0x97, 0x80, 0x63, 0x73, 0x4e, 0x2e, 0x28, 0xe0, 0x2e, 0xee, 0x14, 0x76, }; static const unsigned char xdh_wei448_2559_privkey[] = { 0xb4, 0xd8, 0xc1, 0xbd, 0x4f, 0xe2, 0x23, 0x2b, 0xfd, 0x8f, 0x3a, 0x42, 0xe4, 0xf2, 0xc6, 0x07, 0x97, 0x64, 0x89, 0xa1, 0x81, 0x14, 0x9f, 0xbd, 0x0b, 0xa8, 0xe8, 0xed, 0x68, 0xc4, 0x4f, 0x78, 0x6d, 0x05, 0xeb, 0xe8, 0x90, 0xad, 0xab, 0x4b, 0x23, 0x32, 0x62, 0xed, 0x9c, 0x48, 0x2d, 0x84, 0xcf, 0xf4, 0x2f, 0xb8, 0xbc, 0x0e, 0x1a, 0x94, }; static const unsigned char xdh_wei448_2559_sharedsecret[] = { 0x46, 0x9d, 0x5e, 0x9e, 0x2b, 0xa6, 0x76, 0xe2, 0x47, 0xaa, 0x86, 0x2e, 0xa2, 0x9b, 0xbf, 0x2b, 0xa4, 0xf8, 0xa8, 0x50, 0x09, 0x8c, 0x10, 0x32, 0x0b, 0xf4, 0xa2, 0x86, 0xbd, 0xc0, 0x9c, 0x53, 0x13, 0x14, 0x85, 0xc2, 0xdc, 0x9c, 0x36, 0x63, 0xe7, 0x66, 0x10, 0x46, 0x8f, 0x13, 0x9b, 0x58, 0x6d, 0x61, 0xdd, 0xc9, 0x24, 0x22, 0x32, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_2559 = { .name = "xdh_wei448_2559", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2559_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2559_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2559_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 487 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2560 for XDH, tcId is 488 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2560_peerpubkey[] = { 0xee, 0xfb, 0xdd, 0xe8, 0x82, 0x1e, 0x5d, 0xb1, 0xb3, 0x0d, 0x73, 0xbc, 0x76, 0xbe, 0x3e, 0x18, 0xfc, 0x91, 0xf3, 0x49, 0x81, 0x16, 0x24, 0x3e, 0x9f, 0x86, 0xcc, 0xcd, 0xc9, 0x8c, 0xc7, 0x8b, 0x18, 0x93, 0x72, 0xab, 0x66, 0x96, 0xee, 0x18, 0xd2, 0xca, 0x74, 0x90, 0x10, 0x5a, 0xd0, 0x3b, 0x5f, 0x50, 0xc2, 0x97, 0x83, 0xab, 0x3a, 0x96, }; static const unsigned char xdh_wei448_2560_privkey[] = { 0x08, 0x44, 0x42, 0xb7, 0x21, 0x82, 0xb7, 0xcc, 0x53, 0x21, 0xf6, 0x1f, 0x3c, 0xef, 0x93, 0x75, 0x14, 0xbd, 0xc1, 0x24, 0x60, 0x28, 0xa0, 0x2e, 0x8f, 0xc7, 0xf3, 0x06, 0x0d, 0x52, 0x8c, 0xc1, 0x34, 0xa5, 0x93, 0x85, 0xdd, 0x53, 0x4c, 0xe1, 0xe8, 0x2c, 0xef, 0x27, 0xcd, 0xb0, 0x0f, 0xae, 0x66, 0x43, 0xe3, 0xb2, 0x16, 0x7f, 0x1c, 0x9d, }; static const unsigned char xdh_wei448_2560_sharedsecret[] = { 0xe3, 0x01, 0x90, 0x8a, 0x8c, 0xb6, 0xd1, 0xd8, 0xef, 0x9c, 0x1c, 0x55, 0xe7, 0x27, 0x83, 0x90, 0x95, 0x07, 0x19, 0xd0, 0x89, 0xd9, 0x46, 0xca, 0x9d, 0x6e, 0x88, 0x2f, 0x8f, 0x91, 0x75, 0xc8, 0x4c, 0xad, 0xd4, 0xff, 0x2a, 0x7a, 0xbf, 0xd8, 0x04, 0xb5, 0xb7, 0x2f, 0x2a, 0x1d, 0xe7, 0x1b, 0x1a, 0x92, 0xaf, 0x20, 0xe1, 0x68, 0x07, 0x68, }; static const wycheproof_xdh_test xdh_wei448_2560 = { .name = "xdh_wei448_2560", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2560_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2560_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2560_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 488 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2561 for XDH, tcId is 489 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2561_peerpubkey[] = { 0x54, 0x2c, 0xe8, 0x33, 0xd8, 0x48, 0x92, 0x09, 0x36, 0x23, 0xf9, 0x17, 0x4a, 0x45, 0x08, 0x80, 0xc1, 0x3a, 0x66, 0x1c, 0xa0, 0x2e, 0x44, 0x00, 0x26, 0x7d, 0xf6, 0x3d, 0x66, 0x1f, 0x6a, 0xc7, 0xa8, 0x5f, 0x0f, 0x7e, 0x06, 0x1e, 0x67, 0xb3, 0x9b, 0x7f, 0x25, 0x9e, 0xff, 0xf8, 0x04, 0xfe, 0xba, 0x6d, 0x05, 0x54, 0xe8, 0xc0, 0xf4, 0xfd, }; static const unsigned char xdh_wei448_2561_privkey[] = { 0xb8, 0x15, 0x64, 0x51, 0xd5, 0x83, 0xb5, 0x08, 0xd5, 0x26, 0x5b, 0x9c, 0x37, 0x3f, 0xbc, 0xa9, 0x6f, 0xb4, 0x77, 0x0d, 0x56, 0xb8, 0x28, 0x53, 0x4a, 0xfd, 0xba, 0x29, 0xd3, 0xcb, 0x9f, 0xf0, 0x20, 0x96, 0x94, 0xfa, 0xb2, 0x1c, 0xf9, 0xcf, 0x0a, 0x61, 0xbd, 0x49, 0x83, 0x60, 0x2c, 0xc3, 0x46, 0x7a, 0x3e, 0xe3, 0xbe, 0xb5, 0x3f, 0x96, }; static const unsigned char xdh_wei448_2561_sharedsecret[] = { 0x03, 0xe7, 0x90, 0x68, 0xc4, 0x0a, 0x41, 0x33, 0xc4, 0x90, 0xed, 0xb7, 0x03, 0xdd, 0x51, 0xf8, 0x96, 0x5a, 0xd5, 0xf5, 0x9a, 0xad, 0x1b, 0x04, 0xb3, 0xe1, 0x32, 0x77, 0x50, 0x74, 0x8e, 0x64, 0x81, 0xb0, 0xb6, 0x3e, 0x54, 0xcf, 0xe1, 0x01, 0xee, 0xb6, 0x48, 0xf9, 0x30, 0x7b, 0x09, 0xb0, 0xde, 0xc1, 0xa7, 0x47, 0x2f, 0xa5, 0x72, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_2561 = { .name = "xdh_wei448_2561", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2561_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2561_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2561_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 489 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2562 for XDH, tcId is 490 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2562_peerpubkey[] = { 0x1e, 0xfd, 0xb8, 0x58, 0xaf, 0x19, 0x67, 0xc0, 0xe7, 0x42, 0xee, 0xbe, 0xe5, 0x63, 0x66, 0x7b, 0xfb, 0xc8, 0x96, 0x66, 0x60, 0x6e, 0x39, 0x5e, 0xcd, 0x39, 0x03, 0xb3, 0x92, 0x3b, 0x2a, 0x8f, 0x99, 0x44, 0xeb, 0x0d, 0x07, 0xfe, 0xbc, 0xe9, 0xdf, 0xe7, 0x04, 0x9a, 0xfc, 0x76, 0xb4, 0xfd, 0x1c, 0x47, 0xe9, 0x72, 0xe0, 0x57, 0x34, 0x2f, }; static const unsigned char xdh_wei448_2562_privkey[] = { 0x40, 0xbd, 0x45, 0x8c, 0xbc, 0x6b, 0xc8, 0x87, 0xd3, 0x48, 0xb4, 0xd5, 0x0a, 0xbf, 0x4c, 0xbf, 0x66, 0x50, 0xba, 0xbd, 0xca, 0x79, 0xd5, 0x46, 0x4b, 0x0b, 0xb3, 0x56, 0x7d, 0x6d, 0xc5, 0x46, 0x07, 0xcf, 0xc0, 0xef, 0xee, 0x28, 0xd0, 0x9e, 0x6f, 0xdc, 0x0c, 0x8e, 0xd4, 0xc6, 0x05, 0x0b, 0x85, 0xc9, 0x91, 0xcd, 0x5e, 0x67, 0x97, 0x9e, }; static const unsigned char xdh_wei448_2562_sharedsecret[] = { 0x6e, 0x24, 0xc3, 0x4c, 0x8a, 0x1b, 0x62, 0x69, 0x76, 0x62, 0x61, 0xfa, 0x57, 0x1f, 0x58, 0x32, 0x9f, 0x49, 0x55, 0xa8, 0x35, 0x5d, 0x8c, 0x64, 0x06, 0xc1, 0xe4, 0xf8, 0xe5, 0xeb, 0xfe, 0x3a, 0x7f, 0x6a, 0xc2, 0x03, 0x77, 0x92, 0x8e, 0x17, 0x01, 0x0c, 0xbc, 0x70, 0x6e, 0x55, 0x1a, 0xab, 0x8e, 0x8c, 0xbf, 0x85, 0xd2, 0xd1, 0xb0, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_2562 = { .name = "xdh_wei448_2562", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2562_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2562_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2562_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 490 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2563 for XDH, tcId is 491 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2563_peerpubkey[] = { 0x8b, 0x87, 0x90, 0x5a, 0xda, 0x5e, 0x80, 0x16, 0x68, 0xca, 0xef, 0x67, 0x2d, 0xfe, 0x9d, 0xbb, 0xf5, 0xc1, 0x2a, 0x47, 0x0f, 0x2c, 0x0a, 0x3d, 0x17, 0x70, 0x13, 0x55, 0x5b, 0x1a, 0x94, 0xa7, 0x17, 0x12, 0xa4, 0xc8, 0x12, 0x09, 0xd1, 0x2f, 0x0b, 0x97, 0x43, 0x53, 0x2b, 0x01, 0x6f, 0x64, 0x1d, 0x7a, 0xd7, 0xc8, 0xd3, 0x6c, 0xd5, 0x42, }; static const unsigned char xdh_wei448_2563_privkey[] = { 0x8c, 0xcf, 0xeb, 0x69, 0x10, 0x24, 0x15, 0x9d, 0x42, 0xdc, 0x22, 0x2b, 0x45, 0x2d, 0x95, 0xac, 0xef, 0xf2, 0x91, 0xbb, 0x96, 0x1c, 0x85, 0x18, 0x6f, 0x65, 0x7f, 0x4f, 0xcc, 0x8a, 0xa0, 0x2e, 0xf8, 0xde, 0xe9, 0xca, 0x30, 0x61, 0xd3, 0xde, 0x6b, 0x90, 0xdf, 0x77, 0x34, 0xbd, 0x57, 0x2c, 0x2f, 0xf9, 0xcd, 0x02, 0x19, 0x02, 0x2e, 0x9e, }; static const unsigned char xdh_wei448_2563_sharedsecret[] = { 0x29, 0x96, 0xe9, 0xae, 0x7d, 0xfe, 0x36, 0x6c, 0x91, 0x9a, 0xc5, 0xf7, 0xff, 0x52, 0x6d, 0xe8, 0xf7, 0xa2, 0x43, 0xce, 0x0c, 0xdb, 0xc0, 0x26, 0x73, 0x3f, 0x9c, 0xb8, 0xe5, 0xfc, 0x48, 0x38, 0x5d, 0x0b, 0x19, 0x40, 0x10, 0x0e, 0xcb, 0x24, 0xa5, 0x37, 0x58, 0x76, 0xc8, 0xc3, 0xf3, 0x02, 0x7e, 0x13, 0x91, 0x05, 0x47, 0xe2, 0xa5, 0x24, }; static const wycheproof_xdh_test xdh_wei448_2563 = { .name = "xdh_wei448_2563", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2563_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2563_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2563_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 491 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2564 for XDH, tcId is 492 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2564_peerpubkey[] = { 0x26, 0x0a, 0x2e, 0xb9, 0x17, 0x3e, 0xf5, 0x9f, 0xab, 0x77, 0x45, 0xfc, 0xbf, 0x4a, 0x63, 0x96, 0xc7, 0x2e, 0xd2, 0x0e, 0x5b, 0x7c, 0x2b, 0x44, 0x4e, 0x1b, 0x47, 0x93, 0x05, 0x41, 0x51, 0xbf, 0xa4, 0x40, 0xbb, 0xf8, 0xf2, 0x52, 0xc1, 0xf4, 0xd3, 0xc8, 0xc7, 0xf5, 0x11, 0x79, 0x9c, 0x1a, 0xc1, 0x16, 0xdb, 0x83, 0xa4, 0xd1, 0x9f, 0x47, }; static const unsigned char xdh_wei448_2564_privkey[] = { 0xac, 0xff, 0x53, 0xe5, 0x40, 0xfd, 0x03, 0x18, 0xc5, 0x25, 0x34, 0x7b, 0xf0, 0xee, 0x29, 0xe0, 0x82, 0x08, 0xb7, 0x81, 0x6a, 0x95, 0xd3, 0x5d, 0x92, 0x37, 0xea, 0x69, 0x1f, 0xe6, 0xb7, 0xce, 0xfe, 0x98, 0xb6, 0xd4, 0x34, 0x89, 0x1c, 0xf1, 0x32, 0x81, 0xb3, 0x1b, 0x59, 0xc9, 0x6b, 0x74, 0xd2, 0x13, 0xbb, 0x67, 0x85, 0xee, 0x8c, 0x95, }; static const unsigned char xdh_wei448_2564_sharedsecret[] = { 0xa9, 0xfe, 0xbf, 0x85, 0x14, 0x28, 0x9c, 0x54, 0xf3, 0x43, 0xe5, 0xe9, 0x61, 0x87, 0x2f, 0x7c, 0x89, 0x1c, 0x12, 0x4c, 0x36, 0x0f, 0xd3, 0xd6, 0x68, 0xec, 0xdf, 0x0c, 0xe0, 0x3b, 0x35, 0xdb, 0x95, 0x1b, 0x58, 0xb3, 0xfd, 0x11, 0x34, 0x93, 0x76, 0xbc, 0xe0, 0x9e, 0xd2, 0x75, 0xcd, 0x44, 0x2b, 0xa1, 0xc8, 0xcf, 0x7a, 0x26, 0xb9, 0x75, }; static const wycheproof_xdh_test xdh_wei448_2564 = { .name = "xdh_wei448_2564", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2564_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2564_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2564_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 492 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2565 for XDH, tcId is 493 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2565_peerpubkey[] = { 0xc3, 0xb3, 0xd7, 0xb4, 0x21, 0xd3, 0xfd, 0x0a, 0x6d, 0x0f, 0x3c, 0xce, 0xbc, 0xcd, 0xc3, 0x45, 0x0f, 0xdf, 0x0b, 0x31, 0xd1, 0x8c, 0x2f, 0x10, 0xf3, 0xba, 0xe7, 0xc8, 0x0f, 0xf5, 0x88, 0x23, 0xd3, 0x15, 0x79, 0xbe, 0x9a, 0x26, 0xda, 0x99, 0x38, 0x1a, 0x3b, 0x61, 0x37, 0x0f, 0xb0, 0x7f, 0x1e, 0xe4, 0xac, 0xf6, 0x8c, 0x76, 0x15, 0x5a, }; static const unsigned char xdh_wei448_2565_privkey[] = { 0x18, 0x5b, 0xd9, 0x68, 0x16, 0x0e, 0x59, 0x4c, 0x70, 0xe8, 0x87, 0xfd, 0xee, 0x1d, 0x11, 0x25, 0x2c, 0x4e, 0x10, 0x94, 0xc3, 0x29, 0x08, 0x0b, 0xf6, 0xd6, 0x2d, 0x41, 0xf6, 0x6b, 0xb2, 0x7f, 0xd1, 0x94, 0xd8, 0xd9, 0x94, 0x17, 0xbc, 0x78, 0xbf, 0xae, 0x79, 0x54, 0xd0, 0x17, 0xee, 0x7c, 0xbf, 0x82, 0xd5, 0x71, 0x13, 0xde, 0xe5, 0x9d, }; static const unsigned char xdh_wei448_2565_sharedsecret[] = { 0x46, 0x5f, 0xaa, 0x07, 0x90, 0xf7, 0x5d, 0xbc, 0x3c, 0x5a, 0x27, 0xf8, 0xca, 0x78, 0x5b, 0x41, 0xa2, 0xf6, 0x79, 0xd6, 0x49, 0x91, 0xfc, 0xd2, 0xb8, 0xd1, 0x71, 0x0a, 0x1f, 0x17, 0x05, 0xfb, 0x1d, 0xa2, 0xfa, 0x1b, 0x6e, 0x6b, 0xe7, 0xa4, 0x0f, 0xa6, 0xc2, 0x93, 0x2c, 0x57, 0x6b, 0x61, 0xc7, 0x29, 0x49, 0x93, 0xc1, 0x77, 0xd4, 0x12, }; static const wycheproof_xdh_test xdh_wei448_2565 = { .name = "xdh_wei448_2565", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2565_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2565_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2565_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 493 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2566 for XDH, tcId is 494 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2566_peerpubkey[] = { 0x43, 0x8c, 0x6c, 0x66, 0x1f, 0xd8, 0xd3, 0x32, 0xe5, 0x63, 0xc6, 0xc0, 0x56, 0x10, 0xe1, 0xe3, 0xae, 0x21, 0xba, 0x59, 0x9b, 0x88, 0xd2, 0xdc, 0x70, 0xe6, 0x5f, 0x3f, 0xb7, 0x66, 0x45, 0x65, 0x5f, 0x01, 0x7e, 0xa4, 0x77, 0x0e, 0x6f, 0xfd, 0xdd, 0xc6, 0x4c, 0x12, 0xe0, 0x68, 0x68, 0x1e, 0xbc, 0xc5, 0x42, 0x5f, 0xde, 0xfa, 0xdd, 0x64, }; static const unsigned char xdh_wei448_2566_privkey[] = { 0x84, 0x10, 0xd8, 0xad, 0xc4, 0x9f, 0xef, 0x7d, 0xa6, 0x96, 0x68, 0xc4, 0x12, 0x34, 0xe1, 0x3e, 0x61, 0xec, 0x56, 0x15, 0x4a, 0x36, 0x76, 0x61, 0x46, 0xc6, 0x4b, 0xf7, 0xac, 0xa0, 0xda, 0x4f, 0xc8, 0x66, 0x7d, 0xf9, 0xe0, 0x38, 0x34, 0x3b, 0x52, 0x6a, 0x15, 0x79, 0x2a, 0x9c, 0x56, 0x2f, 0xe1, 0xb3, 0x4d, 0x20, 0x05, 0x60, 0x71, 0x94, }; static const unsigned char xdh_wei448_2566_sharedsecret[] = { 0x88, 0xd5, 0xa6, 0x89, 0x1b, 0x45, 0xc4, 0x14, 0x63, 0xe5, 0xb8, 0x9d, 0x1a, 0xc0, 0x75, 0xd6, 0x06, 0x83, 0x57, 0x2c, 0x68, 0x07, 0x21, 0x60, 0xc1, 0x46, 0x76, 0x65, 0xdc, 0xb9, 0xa3, 0xac, 0x23, 0x52, 0x9e, 0x19, 0x95, 0xbb, 0xb0, 0x01, 0x21, 0x8e, 0x15, 0x7d, 0x7a, 0x60, 0xab, 0x53, 0x78, 0x65, 0xe5, 0x4b, 0x05, 0xee, 0x50, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_2566 = { .name = "xdh_wei448_2566", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2566_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2566_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2566_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 494 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2567 for XDH, tcId is 495 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2567_peerpubkey[] = { 0x97, 0x9b, 0x14, 0x70, 0x77, 0x68, 0x6b, 0x9a, 0x16, 0xec, 0x07, 0x38, 0x68, 0x41, 0xb9, 0x4e, 0xc1, 0xe8, 0x1d, 0x73, 0x31, 0xd7, 0x7b, 0xd4, 0xd6, 0xc4, 0x74, 0xb9, 0x71, 0x21, 0x96, 0x69, 0xf9, 0xad, 0x58, 0xe3, 0x01, 0x71, 0xb0, 0xce, 0x41, 0xf3, 0x7a, 0x4c, 0x1e, 0xac, 0x09, 0xf2, 0x0e, 0xfe, 0x17, 0x06, 0x9c, 0x7d, 0x9c, 0xca, }; static const unsigned char xdh_wei448_2567_privkey[] = { 0x44, 0x5e, 0xa2, 0xcf, 0x06, 0x62, 0x62, 0xed, 0x86, 0xf8, 0xe7, 0x58, 0x62, 0x3e, 0x12, 0x55, 0x2f, 0x39, 0x28, 0xdf, 0x35, 0xb8, 0x1a, 0xdf, 0xb5, 0x3f, 0x16, 0xfa, 0xaf, 0x4d, 0xf4, 0xc8, 0x99, 0x89, 0xcb, 0xde, 0xc7, 0x5b, 0x0b, 0x73, 0x2f, 0xd0, 0xae, 0x75, 0x62, 0xec, 0x1f, 0xa0, 0x51, 0x71, 0xa3, 0x0d, 0xc6, 0xbd, 0x04, 0x90, }; static const unsigned char xdh_wei448_2567_sharedsecret[] = { 0x2d, 0x6c, 0x09, 0x06, 0xf8, 0x43, 0x34, 0x92, 0x91, 0xe6, 0x84, 0x69, 0x66, 0x04, 0xa4, 0x61, 0xd9, 0x08, 0x60, 0x3f, 0x7f, 0x1c, 0x7e, 0x9c, 0xdb, 0x49, 0x2b, 0xe4, 0xc2, 0x57, 0xe1, 0xd6, 0x55, 0xc5, 0xca, 0x42, 0x0f, 0xbb, 0x6b, 0x25, 0xd1, 0x17, 0xeb, 0xeb, 0xbb, 0x0d, 0xb7, 0x36, 0x7e, 0x13, 0xe0, 0x91, 0x64, 0xe1, 0x5a, 0x08, }; static const wycheproof_xdh_test xdh_wei448_2567 = { .name = "xdh_wei448_2567", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2567_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2567_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2567_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 495 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2568 for XDH, tcId is 496 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2568_peerpubkey[] = { 0x86, 0x18, 0xd3, 0xf8, 0x3e, 0xa3, 0x1d, 0xdf, 0x84, 0xa8, 0x01, 0xa4, 0x3c, 0xe2, 0x2a, 0x64, 0x65, 0x0a, 0xa3, 0x35, 0x1e, 0xc4, 0xce, 0x08, 0xad, 0x0e, 0xf4, 0x53, 0x9a, 0x86, 0x37, 0x24, 0x06, 0x33, 0x24, 0x95, 0x20, 0x98, 0x0c, 0x67, 0x24, 0x47, 0x8c, 0x00, 0xbb, 0xe6, 0x31, 0xff, 0x60, 0x38, 0x48, 0x9e, 0x8d, 0x53, 0xd0, 0xd7, }; static const unsigned char xdh_wei448_2568_privkey[] = { 0x98, 0x11, 0x3c, 0x01, 0x90, 0x8a, 0xf1, 0x7d, 0xbe, 0xf2, 0x33, 0xff, 0x82, 0xe1, 0xcc, 0x9c, 0x11, 0xfa, 0xb0, 0x96, 0x05, 0x63, 0xc1, 0x3a, 0x73, 0x3a, 0x3a, 0x91, 0xbd, 0xde, 0xf1, 0x9d, 0xc7, 0xc7, 0x29, 0x0d, 0x5b, 0x34, 0x1c, 0x66, 0xd9, 0x39, 0x1b, 0xd6, 0xca, 0xac, 0x71, 0xdc, 0xb6, 0x89, 0x23, 0x43, 0x37, 0x8f, 0x47, 0x90, }; static const unsigned char xdh_wei448_2568_sharedsecret[] = { 0x30, 0x42, 0xf8, 0x85, 0x96, 0x6b, 0x30, 0x5b, 0xf6, 0x4f, 0x92, 0x9f, 0xe6, 0x61, 0xc1, 0x4e, 0xfc, 0x7a, 0x2a, 0xdb, 0x48, 0x32, 0x57, 0x59, 0xfc, 0x96, 0xfe, 0xff, 0x95, 0xfd, 0x9c, 0x03, 0x1a, 0xcf, 0xf0, 0x42, 0x00, 0xd6, 0x66, 0x1d, 0x4a, 0xa1, 0x8d, 0x0e, 0x1e, 0xfa, 0x8f, 0x63, 0x72, 0x0d, 0x29, 0xbe, 0x55, 0x91, 0x32, 0x44, }; static const wycheproof_xdh_test xdh_wei448_2568 = { .name = "xdh_wei448_2568", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2568_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2568_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2568_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 496 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2569 for XDH, tcId is 497 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2569_peerpubkey[] = { 0x95, 0xcb, 0x9c, 0x89, 0x22, 0x1c, 0x71, 0xca, 0x4d, 0x0f, 0x45, 0x1b, 0xf9, 0x44, 0x3b, 0xd3, 0xac, 0x79, 0x30, 0xba, 0xe5, 0xa1, 0xc4, 0xf0, 0x5d, 0x7d, 0x4d, 0x7c, 0x4e, 0xaf, 0x23, 0xa1, 0x5e, 0xca, 0x56, 0x30, 0x21, 0xa6, 0xa8, 0x00, 0x1e, 0x78, 0x99, 0x99, 0xfe, 0xeb, 0xa5, 0x5a, 0x4f, 0x2b, 0x65, 0xd3, 0x63, 0x54, 0xf5, 0xf8, }; static const unsigned char xdh_wei448_2569_privkey[] = { 0x88, 0x0e, 0x5c, 0x31, 0xe1, 0x09, 0x20, 0x8c, 0xf6, 0xea, 0xb1, 0x13, 0xe6, 0x21, 0x78, 0x61, 0x1e, 0xd8, 0xa6, 0xca, 0x8e, 0x77, 0x60, 0x23, 0x2d, 0xc8, 0x25, 0x88, 0xc5, 0x8f, 0xe7, 0xc0, 0x9c, 0xcf, 0x9e, 0x83, 0x95, 0x90, 0x6e, 0x3c, 0x49, 0xb0, 0x10, 0x35, 0x8a, 0x34, 0x3a, 0x8f, 0x38, 0xd7, 0x2d, 0x34, 0x90, 0x24, 0xb6, 0x9b, }; static const unsigned char xdh_wei448_2569_sharedsecret[] = { 0xf6, 0x58, 0xf2, 0xde, 0xe9, 0xe1, 0x8a, 0x7a, 0x35, 0x10, 0x67, 0xe1, 0xc1, 0xb9, 0xce, 0xd8, 0xd7, 0x24, 0x4c, 0x73, 0x84, 0x55, 0x30, 0xa2, 0xa8, 0x0d, 0xa8, 0xaa, 0xe7, 0x40, 0x08, 0x20, 0x29, 0xbb, 0x63, 0xda, 0xee, 0xc6, 0xf7, 0x89, 0x50, 0x6b, 0x7a, 0x4e, 0x2f, 0xa3, 0xe2, 0x7b, 0x74, 0x31, 0x3c, 0x41, 0x4b, 0xe9, 0xf5, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_2569 = { .name = "xdh_wei448_2569", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2569_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2569_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2569_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 497 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2570 for XDH, tcId is 498 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2570_peerpubkey[] = { 0x25, 0x2c, 0x8c, 0xb1, 0x28, 0x33, 0xa8, 0xe3, 0x8f, 0xbf, 0xb4, 0x2f, 0xb2, 0x3f, 0xa7, 0x0b, 0x96, 0x3a, 0x70, 0x25, 0xf3, 0x98, 0xe7, 0xc6, 0x3c, 0x02, 0xd9, 0xf0, 0x06, 0x33, 0xd0, 0xe7, 0xbb, 0x4a, 0xb6, 0xdd, 0x63, 0x32, 0x39, 0x7b, 0xa4, 0xfe, 0xf1, 0xde, 0xcd, 0x28, 0x7c, 0x3d, 0xdb, 0x8c, 0xd5, 0xc3, 0x8d, 0xd1, 0x4e, 0x54, }; static const unsigned char xdh_wei448_2570_privkey[] = { 0xe4, 0x89, 0x48, 0xda, 0x83, 0x5c, 0x46, 0x60, 0x02, 0xce, 0x6b, 0xdd, 0x71, 0xb3, 0x8d, 0x78, 0x59, 0xa3, 0x34, 0x1d, 0xd3, 0xc4, 0xf1, 0x8a, 0x9b, 0x9b, 0xf8, 0x6f, 0xb0, 0xc9, 0xb4, 0x9a, 0x6d, 0x61, 0x0f, 0xbb, 0x7a, 0x97, 0x5d, 0x35, 0x35, 0x5c, 0xb2, 0x77, 0x0b, 0x04, 0x9a, 0xc7, 0x1c, 0x79, 0x17, 0x2a, 0x14, 0xe2, 0xe1, 0x9f, }; static const unsigned char xdh_wei448_2570_sharedsecret[] = { 0x2b, 0xf5, 0xa3, 0xd3, 0x55, 0xee, 0x3a, 0x1a, 0x41, 0x91, 0x88, 0xb7, 0x1b, 0x12, 0x3f, 0x5f, 0x55, 0x3b, 0x94, 0x43, 0x9b, 0x76, 0x29, 0x5d, 0xb7, 0xcd, 0x14, 0xe3, 0xa7, 0x8a, 0x96, 0xcc, 0xa1, 0xee, 0xba, 0xaf, 0x7f, 0x5a, 0x67, 0x94, 0xed, 0x44, 0x03, 0xa4, 0x12, 0xe0, 0xe0, 0x83, 0x63, 0x53, 0x4c, 0x27, 0xca, 0xb4, 0xdd, 0x04, }; static const wycheproof_xdh_test xdh_wei448_2570 = { .name = "xdh_wei448_2570", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2570_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2570_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2570_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2571 for XDH, tcId is 499 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2571_peerpubkey[] = { 0x91, 0xdd, 0xa7, 0xe2, 0xb2, 0xc0, 0x28, 0x92, 0x8b, 0x9a, 0x11, 0x15, 0x1c, 0x30, 0x38, 0x2a, 0x2f, 0x38, 0xf1, 0xee, 0xbf, 0x9f, 0x13, 0x3f, 0x32, 0xf1, 0x3f, 0x58, 0xc6, 0x70, 0x31, 0xad, 0x13, 0x44, 0x77, 0x13, 0x19, 0xe0, 0x1f, 0x47, 0xfb, 0x44, 0xfe, 0x0f, 0x33, 0x6f, 0xb1, 0xdb, 0xb9, 0x39, 0xa3, 0x68, 0xa2, 0x23, 0xfd, 0x89, }; static const unsigned char xdh_wei448_2571_privkey[] = { 0x5c, 0x7f, 0x46, 0x8a, 0xdd, 0x25, 0x3a, 0xb3, 0xa1, 0x12, 0x6d, 0xd8, 0xa9, 0x75, 0xcc, 0xb7, 0xf0, 0x97, 0xf7, 0xda, 0x49, 0x66, 0x9b, 0x54, 0x46, 0x7b, 0x01, 0x54, 0x55, 0x12, 0x5c, 0xfb, 0xbf, 0x70, 0x1a, 0x99, 0x21, 0x2b, 0xb3, 0x59, 0x45, 0x4a, 0x0c, 0x99, 0x5f, 0x10, 0x60, 0x07, 0x08, 0x0a, 0x43, 0x36, 0x3b, 0x9d, 0x51, 0x99, }; static const unsigned char xdh_wei448_2571_sharedsecret[] = { 0x9b, 0x74, 0x10, 0x08, 0x71, 0x86, 0x56, 0xf0, 0xcc, 0x1b, 0xd0, 0x34, 0x7b, 0x3d, 0x36, 0x38, 0x40, 0xab, 0xd4, 0x6c, 0x4e, 0x59, 0xe9, 0xf5, 0x45, 0x4d, 0x1b, 0xea, 0x24, 0xe1, 0x7a, 0x84, 0x24, 0x59, 0xfe, 0x45, 0x1c, 0xe7, 0x18, 0xd9, 0x11, 0xe3, 0x79, 0x36, 0x47, 0xa5, 0x44, 0x5b, 0xb4, 0xef, 0x96, 0x7e, 0x03, 0x6b, 0x6c, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_2571 = { .name = "xdh_wei448_2571", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2571_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2571_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2571_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2572 for XDH, tcId is 500 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2572_peerpubkey[] = { 0x89, 0x73, 0x52, 0x9d, 0x6d, 0xd9, 0xc3, 0xd1, 0xe5, 0xf5, 0xfb, 0x94, 0xa0, 0x27, 0xa8, 0x8e, 0x1c, 0xd5, 0xb9, 0xd6, 0x69, 0xa4, 0x98, 0xbb, 0x43, 0xa2, 0xbc, 0x6a, 0xe1, 0x40, 0xe9, 0x98, 0x31, 0x9f, 0xc3, 0xfd, 0x35, 0x4f, 0x77, 0xb9, 0x4e, 0x67, 0x79, 0x2a, 0x25, 0x94, 0x6c, 0x3b, 0x54, 0x46, 0x61, 0x6f, 0xc8, 0x67, 0x1d, 0xfc, }; static const unsigned char xdh_wei448_2572_privkey[] = { 0xac, 0xcb, 0xaa, 0x63, 0x4a, 0x2b, 0xa6, 0x89, 0x89, 0xc5, 0x70, 0xa4, 0x17, 0x29, 0x41, 0x47, 0x16, 0x93, 0xbb, 0xf2, 0xcd, 0x5b, 0xf7, 0x1e, 0x23, 0xc0, 0x1a, 0x47, 0xfa, 0xba, 0xfb, 0x4f, 0xd2, 0xe1, 0x81, 0x4e, 0x9d, 0xd7, 0xbe, 0xbf, 0x45, 0x37, 0x1a, 0xed, 0x46, 0x40, 0xa0, 0x41, 0x5b, 0xc1, 0xec, 0xfc, 0xf9, 0x95, 0x1a, 0x9d, }; static const unsigned char xdh_wei448_2572_sharedsecret[] = { 0xd0, 0xdb, 0x13, 0x6f, 0x5f, 0xf5, 0xd8, 0x23, 0x4b, 0x5d, 0x0e, 0xc2, 0x3c, 0xc4, 0xdb, 0xba, 0x27, 0xd4, 0xa8, 0x81, 0xbc, 0x97, 0x3c, 0x50, 0x22, 0x42, 0x81, 0x8e, 0x9e, 0x6b, 0x31, 0x31, 0x0c, 0xe9, 0x9f, 0xd7, 0x95, 0x0e, 0xa3, 0x84, 0x2d, 0xef, 0x84, 0x2d, 0xbd, 0x63, 0xcd, 0xfa, 0xa1, 0x63, 0x77, 0x86, 0x6f, 0xdf, 0xc8, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_2572 = { .name = "xdh_wei448_2572", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2572_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2572_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2572_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2573 for XDH, tcId is 501 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2573_peerpubkey[] = { 0x93, 0xa8, 0xcf, 0x1a, 0xf7, 0xa6, 0x2d, 0x23, 0x95, 0x57, 0xea, 0x30, 0x22, 0x02, 0xa5, 0x07, 0xf7, 0x6a, 0xfe, 0x05, 0xd4, 0x15, 0x1a, 0x67, 0xaf, 0x47, 0x3e, 0x64, 0x79, 0xe5, 0x55, 0x86, 0x05, 0x71, 0x50, 0xa2, 0x9b, 0xe9, 0x5d, 0x12, 0x08, 0xb9, 0x93, 0xc9, 0x97, 0xc6, 0xa7, 0x75, 0xcc, 0x0b, 0x66, 0x71, 0xe0, 0xc5, 0xf6, 0x5e, }; static const unsigned char xdh_wei448_2573_privkey[] = { 0xc4, 0x16, 0x33, 0x21, 0x3e, 0x2a, 0x96, 0x9c, 0x61, 0x20, 0x39, 0x91, 0xd4, 0xe2, 0x3c, 0xf2, 0x0b, 0x83, 0x8f, 0x04, 0xb3, 0x75, 0x3a, 0xa5, 0xbd, 0xd8, 0x35, 0x52, 0x37, 0xee, 0x38, 0xbc, 0xf7, 0x55, 0x3c, 0x8e, 0xd6, 0xda, 0x13, 0x3f, 0x07, 0x33, 0xec, 0x43, 0x30, 0x0a, 0xca, 0xf4, 0x1f, 0x6c, 0x2b, 0xb7, 0x1d, 0x41, 0xba, 0x93, }; static const unsigned char xdh_wei448_2573_sharedsecret[] = { 0x3c, 0x01, 0x34, 0x09, 0xc1, 0xab, 0x90, 0xb9, 0x39, 0x5a, 0x39, 0x42, 0x5d, 0xb3, 0x14, 0xf4, 0xd0, 0xc0, 0x2e, 0x8f, 0x85, 0x99, 0xd4, 0x34, 0xb6, 0xb5, 0x18, 0x32, 0x27, 0x5d, 0x03, 0xbf, 0xa9, 0x7f, 0xa7, 0x08, 0xcc, 0x64, 0x91, 0x25, 0x5e, 0x87, 0x01, 0xfd, 0x26, 0x49, 0xf5, 0x5a, 0xcd, 0x24, 0xc2, 0x3d, 0x95, 0x65, 0xb4, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2573 = { .name = "xdh_wei448_2573", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2573_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2573_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2573_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 501 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2574 for XDH, tcId is 502 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2574_peerpubkey[] = { 0xda, 0x73, 0x6a, 0x97, 0xd9, 0x03, 0x95, 0x26, 0xa2, 0x8b, 0x53, 0xff, 0xcd, 0x60, 0xc5, 0xa4, 0xa8, 0x0a, 0x72, 0x20, 0xa3, 0x9c, 0x74, 0x2c, 0xbd, 0xf7, 0xd8, 0x9b, 0x5a, 0xc5, 0xc1, 0x02, 0x1b, 0x03, 0xca, 0xd2, 0x4b, 0xd3, 0x4a, 0x73, 0x97, 0xe9, 0xf7, 0xba, 0x7f, 0x32, 0xb0, 0x96, 0x76, 0xb5, 0x26, 0x0d, 0x2f, 0xf1, 0x06, 0xef, }; static const unsigned char xdh_wei448_2574_privkey[] = { 0xa4, 0x10, 0x23, 0xf8, 0x5d, 0x15, 0xe9, 0x3f, 0xc8, 0x0e, 0x97, 0x24, 0xb2, 0x25, 0xb2, 0x6b, 0x3f, 0xbe, 0xc7, 0xae, 0x5b, 0xa8, 0xb0, 0x7f, 0x0c, 0xd6, 0x4d, 0x69, 0x20, 0xd1, 0xb8, 0x31, 0x27, 0x48, 0xfb, 0x4f, 0x52, 0x6c, 0xcb, 0x0e, 0xad, 0xa5, 0xd2, 0x13, 0x1f, 0xa4, 0x44, 0x6f, 0x12, 0x7b, 0xa1, 0x3c, 0x27, 0xe6, 0xac, 0x90, }; static const unsigned char xdh_wei448_2574_sharedsecret[] = { 0xf8, 0x35, 0x35, 0x73, 0x09, 0x1c, 0xf4, 0xcf, 0xde, 0x03, 0xd0, 0x33, 0x35, 0xa2, 0x7d, 0xda, 0x98, 0xf8, 0xc1, 0xee, 0x17, 0x0e, 0x59, 0x81, 0x50, 0x00, 0x7f, 0x16, 0xf7, 0x05, 0x77, 0xb3, 0x8a, 0xa9, 0x67, 0xd9, 0x70, 0xfd, 0xb1, 0x6f, 0x82, 0x01, 0x23, 0xdd, 0x28, 0x06, 0x68, 0x98, 0x6c, 0x57, 0xeb, 0xc6, 0x97, 0x33, 0x37, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2574 = { .name = "xdh_wei448_2574", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2574_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2574_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2574_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 502 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2575 for XDH, tcId is 503 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2575_peerpubkey[] = { 0xa7, 0x17, 0x42, 0xc4, 0x72, 0xd8, 0xee, 0xe6, 0x36, 0xa9, 0x74, 0xdd, 0x98, 0xf5, 0x54, 0xad, 0x2f, 0x89, 0x91, 0x1f, 0x80, 0xab, 0xdb, 0x3d, 0x8f, 0xa0, 0x3b, 0xbb, 0x98, 0x19, 0x17, 0xb1, 0x9d, 0x92, 0x55, 0x81, 0xbc, 0xce, 0x71, 0x93, 0xc8, 0x83, 0x9f, 0x6b, 0x2e, 0x0f, 0xf6, 0xc1, 0xda, 0x7c, 0x20, 0x29, 0x70, 0xb3, 0xda, 0x46, }; static const unsigned char xdh_wei448_2575_privkey[] = { 0xbe, 0x58, 0xb9, 0x58, 0xdd, 0xcc, 0x5b, 0xb1, 0xa9, 0xcc, 0xdb, 0xc4, 0x3c, 0xcc, 0x1f, 0xa7, 0xd0, 0x10, 0x2f, 0x6a, 0x70, 0x48, 0x8a, 0xd5, 0x90, 0xb3, 0xf2, 0x6f, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_2575_sharedsecret[] = { 0xca, 0xba, 0x02, 0x71, 0xea, 0x05, 0xea, 0xbf, 0x9d, 0x92, 0x31, 0x43, 0x11, 0xce, 0xdf, 0x54, 0xdf, 0x44, 0x73, 0x96, 0x23, 0xa6, 0x00, 0x04, 0xdd, 0x62, 0xd5, 0xcc, 0xac, 0x1f, 0x43, 0x02, 0x64, 0x4b, 0x2f, 0x0b, 0x75, 0xe3, 0x5b, 0x11, 0xa1, 0x83, 0x1a, 0x87, 0x54, 0x82, 0x38, 0xb9, 0xc3, 0x6e, 0x71, 0xe5, 0xf7, 0xc5, 0x7d, 0x10, }; static const wycheproof_xdh_test xdh_wei448_2575 = { .name = "xdh_wei448_2575", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2575_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2575_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2575_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "private key == -1 (mod order), tcId is 503 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2576 for XDH, tcId is 504 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2576_peerpubkey[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const unsigned char xdh_wei448_2576_privkey[] = { 0x28, 0x31, 0xf7, 0xfd, 0x47, 0xb8, 0x95, 0x95, 0x00, 0x52, 0xaf, 0x56, 0xa8, 0xb8, 0xb9, 0x9b, 0x4f, 0x5c, 0x7d, 0xf3, 0x22, 0x6e, 0x13, 0xb3, 0x42, 0x94, 0xa1, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, }; static const unsigned char xdh_wei448_2576_sharedsecret[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2576 = { .name = "xdh_wei448_2576", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2576_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2576_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2576_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 504 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2577 for XDH, tcId is 505 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2577_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_2577_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_2577_sharedsecret[] = { 0x52, 0x32, 0xfe, 0x84, 0x57, 0xba, 0x91, 0x0c, 0xb8, 0x86, 0xbd, 0xa0, 0xda, 0x97, 0x75, 0x4b, 0xf7, 0x13, 0x2f, 0x61, 0x48, 0x19, 0x39, 0x80, 0x86, 0x73, 0xdb, 0x29, 0xe3, 0x18, 0xcb, 0xdc, 0xe8, 0x56, 0x1c, 0x78, 0x06, 0x2a, 0xd9, 0x48, 0x64, 0xba, 0x5c, 0x82, 0x04, 0x54, 0x76, 0x6d, 0x02, 0x55, 0xbe, 0xc1, 0xdb, 0x69, 0x51, 0x47, }; static const wycheproof_xdh_test xdh_wei448_2577 = { .name = "xdh_wei448_2577", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2577_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2577_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2577_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 505 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2578 for XDH, tcId is 506 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2578_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_2578_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_2578_sharedsecret[] = { 0x34, 0x1c, 0x3a, 0xeb, 0x05, 0x51, 0x10, 0x8f, 0xc8, 0x0d, 0x22, 0xd9, 0x8c, 0x26, 0x83, 0xa6, 0xeb, 0x68, 0x96, 0x74, 0x20, 0xc1, 0xe0, 0x33, 0xfc, 0x22, 0xc4, 0x1f, 0x4f, 0x3a, 0xb8, 0xd8, 0x2d, 0x64, 0x34, 0x25, 0xd2, 0x67, 0x5f, 0x44, 0xf4, 0x2d, 0x03, 0xb9, 0x98, 0x48, 0x4e, 0x62, 0xf3, 0x5b, 0x91, 0x5c, 0x1d, 0x4b, 0xf4, 0x34, }; static const wycheproof_xdh_test xdh_wei448_2578 = { .name = "xdh_wei448_2578", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2578_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2578_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2578_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 506 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2579 for XDH, tcId is 507 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2579_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_2579_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_2579_sharedsecret[] = { 0xb2, 0xba, 0x50, 0x57, 0xf1, 0xf1, 0x18, 0x3b, 0x19, 0x70, 0xb7, 0x84, 0x45, 0x37, 0x78, 0x46, 0x70, 0xda, 0x55, 0xc5, 0xe3, 0x20, 0x7d, 0xe1, 0xd0, 0xf7, 0x64, 0x27, 0xb2, 0x66, 0x38, 0x11, 0x42, 0x61, 0x07, 0x94, 0x10, 0x22, 0xd9, 0xbf, 0x85, 0xa3, 0x73, 0xa7, 0x84, 0x0e, 0xb0, 0x17, 0xcf, 0x8f, 0xa2, 0x3e, 0x53, 0x06, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2579 = { .name = "xdh_wei448_2579", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2579_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2579_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2579_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 507 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2580 for XDH, tcId is 508 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2580_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_2580_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_2580_sharedsecret[] = { 0x56, 0x66, 0xa7, 0x22, 0x76, 0xa9, 0xc4, 0xf3, 0x84, 0x9f, 0x62, 0x88, 0x8d, 0x85, 0x90, 0xe0, 0xae, 0xe1, 0x15, 0xe9, 0xa2, 0x31, 0xb1, 0xca, 0x74, 0x3e, 0xe7, 0xa0, 0x2a, 0xf7, 0x37, 0x7e, 0x40, 0x30, 0x52, 0x10, 0x91, 0xd1, 0x73, 0x94, 0x1c, 0x9a, 0x70, 0x17, 0x53, 0xec, 0xa4, 0xd5, 0x82, 0x3f, 0xbd, 0x86, 0x74, 0x7d, 0xc0, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_2580 = { .name = "xdh_wei448_2580", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2580_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2580_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2580_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 508 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2581 for XDH, tcId is 509 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2581_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_2581_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_2581_sharedsecret[] = { 0x8b, 0xd6, 0x7f, 0xe2, 0x10, 0x2f, 0x52, 0xd8, 0x61, 0xec, 0x67, 0x98, 0xed, 0x27, 0x9b, 0x0f, 0xf9, 0xa4, 0xf2, 0xa8, 0x9e, 0x83, 0x42, 0x9f, 0x69, 0x75, 0x3d, 0x2a, 0x9b, 0x1a, 0x23, 0xbd, 0x94, 0x0e, 0xa6, 0x64, 0x49, 0x0c, 0xdc, 0x32, 0xc8, 0x6e, 0x3e, 0xcb, 0xd9, 0x93, 0x84, 0x7e, 0xd3, 0xea, 0x78, 0x0c, 0x48, 0x39, 0x7f, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_2581 = { .name = "xdh_wei448_2581", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2581_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2581_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2581_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 509 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2582 for XDH, tcId is 510 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2582_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_2582_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_2582_sharedsecret[] = { 0xb7, 0xda, 0x87, 0xa0, 0x54, 0x66, 0x89, 0xef, 0xf6, 0xfe, 0x5d, 0xbb, 0x1c, 0xad, 0x3d, 0x3f, 0x28, 0x26, 0x53, 0xaf, 0x32, 0xe2, 0xe9, 0x65, 0xb3, 0x00, 0x4b, 0x6d, 0x52, 0x73, 0xe0, 0x4b, 0xe2, 0x42, 0xaf, 0x3c, 0xbc, 0xf9, 0xbb, 0xdc, 0x69, 0xd7, 0x74, 0x00, 0x5b, 0xd8, 0x56, 0xc7, 0xf7, 0x40, 0xeb, 0xf6, 0xce, 0xf0, 0xdf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_2582 = { .name = "xdh_wei448_2582", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2582_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2582_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2582_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 510 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2583 for XDH, tcId is 527 in file x448_asn_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2583_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xab, 0xdf, 0x87, 0x6a, 0xe0, 0x75, 0x1d, 0xa2, 0xf1, 0x84, 0x03, 0x5c, 0x5b, 0x2c, 0x85, 0x92, 0x05, 0x20, 0x94, 0xf7, 0x6c, 0x93, 0xa7, 0x63, 0x48, 0xa0, 0xf4, 0xd0, 0x53, 0x4c, 0x98, 0x0c, }; static const unsigned char xdh_wei448_2583_privkey[] = { 0x40, 0xd4, 0x10, 0x44, 0xbb, 0x54, 0x0b, 0x4c, 0x9d, 0x40, 0x44, 0x63, 0x9b, 0xc7, 0xa3, 0xca, 0xbc, 0x5b, 0x23, 0xd2, 0x6f, 0x6a, 0x0a, 0x5c, 0xbe, 0x3a, 0x6c, 0x77, 0x17, 0x95, 0x0c, 0xd4, 0x64, 0xfd, 0x50, 0xa2, 0xbf, 0xac, 0xae, 0xf9, 0x19, 0x0c, 0x57, 0x99, 0x24, 0x5a, 0xf3, 0x6d, 0x9e, 0x12, 0xc9, 0x74, 0x83, 0xab, 0xb8, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2583 = { .name = "xdh_wei448_2583", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2583_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_2583_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for brainpoolP512t1, tcId is 527 in file x448_asn_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2584 for XDH, tcId is 1 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2584_peerpubkey[] = { 0xf8, 0x07, 0x3f, 0xc0, 0x1c, 0x83, 0x58, 0x36, 0x2c, 0x08, 0x74, 0x0c, 0x91, 0x4b, 0x41, 0x98, 0x47, 0xef, 0x1e, 0x40, 0x9f, 0x4e, 0x40, 0xd9, 0x44, 0x0f, 0xeb, 0xc2, 0x6f, 0x00, 0x55, 0x1a, 0xdb, 0x1c, 0x37, 0xc6, 0xc2, 0xa8, 0x7d, 0x82, 0x83, 0xb8, 0xcb, 0x45, 0x3e, 0x92, 0x8a, 0x0d, 0x42, 0x79, 0x3f, 0x72, 0x89, 0x4e, 0x0f, 0x81, }; static const unsigned char xdh_wei448_2584_ourpubkey[] = { 0x9f, 0xca, 0xde, 0x44, 0xa7, 0x3a, 0xbb, 0xea, 0xbb, 0xe6, 0x9e, 0xc7, 0x39, 0xae, 0xbc, 0xd1, 0xe8, 0x15, 0x35, 0x31, 0xab, 0xa2, 0x34, 0x61, 0xca, 0x5b, 0xea, 0xd6, 0x15, 0x25, 0x6a, 0x76, 0x4f, 0x5f, 0xe0, 0xe7, 0x70, 0x1a, 0x4f, 0x18, 0x6c, 0xf0, 0xb2, 0x84, 0x4c, 0x0b, 0xb2, 0x29, 0x96, 0xae, 0x67, 0x32, 0x5a, 0xe3, 0x5e, 0x28, }; static const unsigned char xdh_wei448_2584_privkey[] = { 0xe4, 0x1c, 0x63, 0xd5, 0x15, 0x9c, 0x89, 0xde, 0x12, 0x16, 0x3f, 0xde, 0x9d, 0x04, 0xcf, 0x1f, 0x43, 0x0f, 0x34, 0x6b, 0x8b, 0x2c, 0x1f, 0x2a, 0x4b, 0x1f, 0x5a, 0xee, 0x63, 0xd1, 0x7a, 0xec, 0x29, 0xd4, 0xb1, 0xde, 0xbf, 0x8b, 0x64, 0x57, 0xe7, 0x80, 0x9d, 0x2b, 0x15, 0xff, 0x97, 0x79, 0xc9, 0x7b, 0xec, 0xb0, 0x4b, 0x82, 0x4e, 0xfa, }; static const unsigned char xdh_wei448_2584_sharedsecret[] = { 0xac, 0xd4, 0x96, 0xce, 0xb5, 0xf6, 0x8b, 0xf9, 0xc2, 0x67, 0x19, 0x6b, 0x40, 0x5f, 0x59, 0x70, 0x1a, 0x40, 0xec, 0x88, 0x74, 0x4b, 0x7e, 0x5e, 0x60, 0xbf, 0x8f, 0x81, 0xe8, 0xb1, 0x3d, 0xf4, 0x48, 0xef, 0xe4, 0x02, 0x00, 0x17, 0x50, 0xed, 0xb0, 0xb6, 0x95, 0xa0, 0x51, 0x2f, 0x08, 0xc5, 0x72, 0xa2, 0xe3, 0x56, 0x49, 0x3d, 0x17, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2584 = { .name = "xdh_wei448_2584", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2584_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2584_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2584_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2584_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "normal case, tcId is 1 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2585 for XDH, tcId is 2 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2585_peerpubkey[] = { 0xf8, 0xd9, 0x14, 0x43, 0x04, 0xbd, 0x8c, 0x4d, 0x1f, 0xa6, 0x89, 0x57, 0x02, 0x6f, 0xc5, 0xc1, 0xb7, 0x50, 0x20, 0x36, 0x5b, 0x09, 0x91, 0xd2, 0xeb, 0x15, 0x41, 0xa4, 0xdf, 0xa3, 0xf1, 0x5e, 0x7a, 0x70, 0x28, 0x5c, 0xd3, 0x82, 0x8b, 0x52, 0x9b, 0xec, 0xe0, 0x21, 0xd3, 0xe0, 0x3a, 0x41, 0x5e, 0x4f, 0x8c, 0x02, 0xeb, 0x89, 0xef, 0x19, }; static const unsigned char xdh_wei448_2585_ourpubkey[] = { 0xd4, 0x4d, 0x84, 0x42, 0x6d, 0x7c, 0xc4, 0x63, 0x2b, 0x71, 0x1b, 0x37, 0x9a, 0x63, 0x7d, 0x74, 0x7d, 0xc1, 0xe2, 0x9d, 0x31, 0x9e, 0x83, 0x3a, 0x2e, 0x34, 0x5a, 0x0f, 0x23, 0xbb, 0xb8, 0xce, 0x76, 0x5d, 0xdb, 0xb1, 0xd9, 0x61, 0xd1, 0x7d, 0xbb, 0x41, 0x9a, 0x1d, 0x57, 0xb5, 0x32, 0x00, 0x96, 0xb9, 0x3d, 0xb1, 0x38, 0x55, 0xb7, 0xb0, }; static const unsigned char xdh_wei448_2585_privkey[] = { 0xfc, 0xb4, 0xed, 0x3a, 0xfa, 0x64, 0xc8, 0x4b, 0x78, 0x44, 0x96, 0x5c, 0x84, 0x8a, 0xd8, 0x88, 0x19, 0x24, 0x19, 0x11, 0xcd, 0x65, 0xd3, 0x5a, 0x2b, 0xc2, 0x6a, 0x07, 0x3c, 0x08, 0xd8, 0xe1, 0x91, 0xbc, 0xfa, 0x04, 0xb2, 0xdb, 0xd9, 0x4e, 0x21, 0x9f, 0x74, 0x6d, 0xf9, 0x29, 0xd3, 0x29, 0x8e, 0x03, 0xaf, 0xeb, 0x73, 0xb4, 0xfb, 0xdb, }; static const unsigned char xdh_wei448_2585_sharedsecret[] = { 0x3f, 0x97, 0xc3, 0xf8, 0x7b, 0x96, 0x7d, 0xaa, 0xc4, 0xe5, 0xd1, 0x2e, 0xae, 0x05, 0xa8, 0x0c, 0x75, 0x1c, 0x3b, 0x3e, 0x10, 0x70, 0x88, 0x6b, 0x08, 0x3e, 0x90, 0xbb, 0x8f, 0x63, 0xcf, 0x76, 0xae, 0xa0, 0xcd, 0x4b, 0xf5, 0x03, 0x21, 0x87, 0xe5, 0x2b, 0x1d, 0x05, 0x13, 0xc9, 0x6f, 0x1a, 0xc8, 0x30, 0xde, 0xbc, 0xd3, 0x78, 0x87, 0xab, }; static const wycheproof_xdh_test xdh_wei448_2585 = { .name = "xdh_wei448_2585", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2585_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2585_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2585_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2585_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 2 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2586 for XDH, tcId is 3 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2586_peerpubkey[] = { 0x08, 0xeb, 0xf6, 0xed, 0xaa, 0x4f, 0x1e, 0x97, 0xf7, 0x67, 0x5e, 0x98, 0x39, 0xc6, 0x34, 0x9f, 0x71, 0xd8, 0x42, 0xef, 0x0e, 0xfe, 0x1e, 0x21, 0x17, 0x7b, 0x53, 0xdc, 0x40, 0x92, 0x70, 0x45, 0x7b, 0xb1, 0xea, 0x58, 0xe5, 0x76, 0xf5, 0xcc, 0xc6, 0x82, 0xe9, 0x2c, 0xcc, 0x9f, 0xf3, 0xc6, 0x54, 0x2a, 0x0a, 0x6e, 0xcd, 0x32, 0xe7, 0xe0, }; static const unsigned char xdh_wei448_2586_ourpubkey[] = { 0xe2, 0x5f, 0x95, 0x3d, 0x02, 0xbb, 0x1b, 0x61, 0x3c, 0xf3, 0x00, 0xa0, 0xe7, 0x82, 0xe1, 0xd7, 0xaf, 0x1d, 0x59, 0x50, 0x5a, 0xc6, 0xdb, 0xd0, 0xad, 0xa4, 0x91, 0xfc, 0x14, 0xd1, 0x1b, 0xd8, 0x3a, 0x06, 0x2e, 0x7a, 0x22, 0xc6, 0x9f, 0x69, 0xfa, 0xcf, 0xfe, 0x8a, 0xab, 0xf9, 0x09, 0x4a, 0x69, 0x79, 0xb0, 0xdc, 0xba, 0xab, 0xfe, 0x3e, }; static const unsigned char xdh_wei448_2586_privkey[] = { 0xfc, 0xc8, 0x90, 0x42, 0xab, 0xb5, 0x58, 0xba, 0xf3, 0x2b, 0xb9, 0xa7, 0xf9, 0xea, 0x4b, 0x27, 0x4e, 0x10, 0xe1, 0x3d, 0xb6, 0x5b, 0xee, 0xdb, 0x2a, 0xca, 0x58, 0xea, 0x95, 0xc0, 0xe0, 0x84, 0x12, 0xab, 0xdd, 0x4c, 0x56, 0x84, 0x3e, 0xe9, 0xe2, 0x15, 0x49, 0xbd, 0xca, 0x11, 0x01, 0xfd, 0x0c, 0xa0, 0xf3, 0x0d, 0xe6, 0xeb, 0xce, 0x8e, }; static const unsigned char xdh_wei448_2586_sharedsecret[] = { 0x03, 0xaa, 0x74, 0xc7, 0x30, 0x02, 0x43, 0x38, 0x58, 0x04, 0x13, 0x3a, 0x75, 0x06, 0x35, 0xa9, 0xe0, 0xd5, 0xab, 0x8d, 0x46, 0x12, 0x6a, 0xba, 0xa9, 0x59, 0x56, 0x60, 0xda, 0x17, 0x2e, 0x9b, 0x1f, 0xe9, 0x29, 0x02, 0xbb, 0x71, 0x69, 0x71, 0x22, 0xf0, 0xd6, 0xc3, 0xff, 0x45, 0xb2, 0xa8, 0x97, 0xb7, 0x77, 0x38, 0x0f, 0xfe, 0x49, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_2586 = { .name = "xdh_wei448_2586", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2586_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2586_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2586_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2586_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 3 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2587 for XDH, tcId is 4 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2587_peerpubkey[] = { 0x69, 0xa4, 0x38, 0xc3, 0x0c, 0x11, 0xb4, 0xed, 0x55, 0x9c, 0x03, 0xab, 0x43, 0x0a, 0x64, 0xef, 0xb0, 0x1c, 0x98, 0xfe, 0x62, 0x32, 0x80, 0x3c, 0x07, 0x67, 0xa4, 0x03, 0x28, 0x32, 0x6d, 0xa2, 0x8c, 0x34, 0x91, 0xe1, 0x91, 0x51, 0xb4, 0xa8, 0x13, 0xaa, 0xdf, 0x6c, 0x96, 0x63, 0xd6, 0xdc, 0xd4, 0xcc, 0x9b, 0x07, 0x6c, 0x7e, 0x9f, 0xb5, }; static const unsigned char xdh_wei448_2587_ourpubkey[] = { 0xb0, 0xe0, 0x8c, 0xc3, 0xcb, 0x04, 0x69, 0x77, 0xdd, 0xb1, 0x57, 0xcb, 0xec, 0x23, 0x44, 0x43, 0x87, 0x6d, 0xb3, 0xe0, 0xac, 0x66, 0x26, 0x22, 0xc7, 0x4e, 0x98, 0xbc, 0xc9, 0x88, 0xb1, 0xee, 0xde, 0x5a, 0x00, 0xa6, 0x4c, 0x01, 0xc2, 0x0d, 0xee, 0x85, 0x1b, 0x6c, 0x11, 0xbe, 0x99, 0x44, 0x0c, 0x46, 0xfd, 0x51, 0xa5, 0x5c, 0x10, 0x91, }; static const unsigned char xdh_wei448_2587_privkey[] = { 0xe0, 0xaa, 0xe9, 0x6d, 0x22, 0xfa, 0x49, 0xd3, 0x24, 0x60, 0x1b, 0xb8, 0xb2, 0xdd, 0x9f, 0x73, 0x67, 0x09, 0xdf, 0x55, 0x7b, 0x8c, 0xb4, 0x69, 0xd6, 0xe2, 0xbe, 0xfa, 0x86, 0x35, 0x99, 0x8f, 0x51, 0x22, 0x2a, 0xde, 0xa9, 0x74, 0x10, 0x58, 0x8c, 0x5f, 0x5f, 0x4e, 0xf6, 0x18, 0x87, 0xc9, 0x4f, 0xea, 0x9a, 0x4e, 0x33, 0x24, 0x45, 0xbc, }; static const unsigned char xdh_wei448_2587_sharedsecret[] = { 0xc0, 0x85, 0x3d, 0xba, 0x67, 0x2e, 0x8c, 0x3e, 0x05, 0xde, 0x82, 0xd3, 0x44, 0xde, 0x1c, 0x72, 0xfc, 0xd9, 0xc8, 0x39, 0x1b, 0x17, 0x7f, 0x36, 0x33, 0x97, 0x81, 0x82, 0x70, 0xe9, 0x28, 0xbb, 0x0d, 0xe2, 0xe5, 0x50, 0x12, 0x8a, 0x6f, 0x4e, 0xa6, 0xde, 0x57, 0x93, 0x08, 0xe7, 0xc3, 0xd8, 0x23, 0xb3, 0xe6, 0x51, 0x16, 0xdf, 0x43, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_2587 = { .name = "xdh_wei448_2587", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2587_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2587_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2587_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2587_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 4 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2588 for XDH, tcId is 5 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2588_peerpubkey[] = { 0x2c, 0x19, 0xd1, 0x2c, 0x78, 0x3c, 0xe4, 0xc6, 0x76, 0x03, 0xe0, 0x2a, 0x09, 0x3d, 0xdc, 0x1e, 0x14, 0x8b, 0x9f, 0x5f, 0x84, 0x53, 0xb1, 0x53, 0xe6, 0xd7, 0x26, 0x29, 0xb1, 0xf5, 0x0e, 0x60, 0x9f, 0xec, 0x8d, 0x0e, 0xe2, 0x3e, 0xee, 0xe7, 0x69, 0xff, 0xb9, 0x09, 0xdb, 0x4b, 0xad, 0xac, 0xdb, 0x99, 0xd5, 0xb9, 0x90, 0xd7, 0x58, 0x25, }; static const unsigned char xdh_wei448_2588_ourpubkey[] = { 0xb1, 0x41, 0x1c, 0xba, 0x04, 0xf0, 0x08, 0x81, 0xc8, 0x5a, 0xb7, 0x09, 0x73, 0x17, 0x41, 0xd6, 0xed, 0xa8, 0x47, 0x29, 0xee, 0xb0, 0x3b, 0x23, 0x32, 0x36, 0x39, 0xd5, 0xf9, 0x2e, 0xe1, 0x3a, 0x1e, 0xa7, 0x32, 0xff, 0xe3, 0xa5, 0x32, 0xa1, 0x09, 0x27, 0x1b, 0x28, 0x1f, 0x22, 0xa7, 0x88, 0xd3, 0x83, 0x79, 0x3a, 0xb9, 0x6f, 0x54, 0x4b, }; static const unsigned char xdh_wei448_2588_privkey[] = { 0x60, 0x1f, 0x19, 0x76, 0x9c, 0xd4, 0x9e, 0x82, 0x8b, 0x60, 0x0e, 0xe3, 0x73, 0xf1, 0xd0, 0x51, 0x4a, 0xbb, 0xd8, 0x95, 0xb5, 0x43, 0x67, 0x87, 0x60, 0xaa, 0xaf, 0x30, 0x0d, 0x4d, 0x1f, 0xaa, 0xf7, 0x3e, 0x80, 0x1e, 0x56, 0x88, 0x15, 0x28, 0x12, 0xae, 0x96, 0x9d, 0xb5, 0x22, 0xba, 0x8f, 0x3e, 0xd8, 0xa0, 0x03, 0x43, 0x71, 0xeb, 0xa3, }; static const unsigned char xdh_wei448_2588_sharedsecret[] = { 0x4a, 0x89, 0x66, 0x49, 0x7c, 0x42, 0xcc, 0x1c, 0x8e, 0xb7, 0x7e, 0x8a, 0xd1, 0x16, 0xed, 0x25, 0x82, 0xd3, 0xc8, 0x1a, 0x60, 0x2a, 0xf3, 0xd8, 0xb0, 0x8a, 0x99, 0x66, 0x97, 0xe2, 0x26, 0xbe, 0xb7, 0x86, 0x1b, 0xa7, 0x2e, 0xc9, 0x9f, 0xea, 0x58, 0x16, 0xb1, 0x18, 0x7c, 0x6c, 0x76, 0x8f, 0xf7, 0x5b, 0x1f, 0x7c, 0x52, 0x67, 0x41, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_2588 = { .name = "xdh_wei448_2588", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2588_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2588_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2588_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2588_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 5 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2589 for XDH, tcId is 6 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2589_peerpubkey[] = { 0xbe, 0x11, 0x10, 0x9a, 0x68, 0x72, 0xc3, 0x8a, 0xba, 0xd8, 0x61, 0x01, 0xb0, 0x56, 0x12, 0x08, 0xcc, 0x3a, 0x32, 0xa9, 0xe0, 0x34, 0x58, 0x22, 0xc7, 0x51, 0x4f, 0x64, 0x23, 0xf1, 0x42, 0x53, 0x0d, 0xf9, 0xbb, 0xfd, 0x72, 0xb0, 0xd4, 0xcd, 0x8e, 0x73, 0x4a, 0xe0, 0x92, 0xdd, 0x02, 0x20, 0x2f, 0x42, 0xb7, 0x8e, 0x54, 0x2e, 0x4c, 0xc5, }; static const unsigned char xdh_wei448_2589_ourpubkey[] = { 0x29, 0x50, 0xd9, 0xa5, 0x29, 0x62, 0xba, 0x5e, 0xcd, 0xa6, 0x8a, 0xf6, 0xfb, 0x86, 0x78, 0x8b, 0xe7, 0x8a, 0x3c, 0xa3, 0x2e, 0xfc, 0xa7, 0x4a, 0x53, 0x89, 0xe2, 0x40, 0xe9, 0x1a, 0x5a, 0xed, 0x5a, 0x63, 0x58, 0xce, 0x09, 0x8e, 0x0b, 0xf7, 0x85, 0x72, 0x36, 0x48, 0xa0, 0xa3, 0x8b, 0xa3, 0x62, 0x8c, 0xd4, 0x03, 0xf9, 0x6c, 0xb9, 0x3c, }; static const unsigned char xdh_wei448_2589_privkey[] = { 0x3c, 0xc4, 0xe7, 0xb7, 0x22, 0xec, 0xe8, 0xf7, 0xcc, 0x1f, 0xb1, 0x88, 0xde, 0xd1, 0xc2, 0x75, 0x07, 0x14, 0x1d, 0xbf, 0x79, 0x41, 0xe1, 0xa9, 0xbb, 0x66, 0x2c, 0xf0, 0xff, 0xc4, 0x80, 0xc3, 0xe0, 0x4d, 0x31, 0x77, 0x82, 0x58, 0x38, 0x1e, 0x93, 0x8e, 0x82, 0x8e, 0x24, 0xdc, 0x6e, 0xa1, 0x14, 0xa6, 0xe0, 0xd2, 0x59, 0xae, 0xf9, 0xbf, }; static const unsigned char xdh_wei448_2589_sharedsecret[] = { 0x66, 0xb1, 0x3d, 0x08, 0xe7, 0x4c, 0x37, 0xe2, 0x34, 0x5d, 0x1a, 0x26, 0xef, 0xf2, 0x5b, 0xfc, 0xa0, 0x71, 0x00, 0x42, 0xd2, 0xda, 0xf0, 0xd3, 0xd4, 0xe9, 0x7e, 0x55, 0xdd, 0xec, 0xed, 0x10, 0xbc, 0xa4, 0x33, 0xf2, 0xd3, 0x30, 0x81, 0x03, 0xc8, 0xcc, 0xfa, 0x07, 0x90, 0x90, 0xdc, 0xe6, 0x9e, 0x90, 0xbd, 0x90, 0xab, 0x93, 0xd6, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_2589 = { .name = "xdh_wei448_2589", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2589_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2589_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2589_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2589_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 6 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2590 for XDH, tcId is 7 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2590_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2590_ourpubkey[] = { 0x54, 0x17, 0x1a, 0xef, 0x98, 0x24, 0xbe, 0x6d, 0xc9, 0x80, 0xd2, 0x5b, 0xb5, 0x2e, 0xb2, 0x87, 0x48, 0x10, 0x13, 0xab, 0xe8, 0x3f, 0x07, 0xd2, 0xb6, 0xa7, 0x6c, 0x73, 0x15, 0xb4, 0xce, 0x61, 0xa4, 0x50, 0x20, 0xba, 0x42, 0x72, 0x6a, 0x04, 0x5f, 0xf4, 0x8b, 0x27, 0x13, 0x00, 0xee, 0x89, 0x3b, 0xb7, 0x17, 0xc6, 0xea, 0xd6, 0x36, 0x6e, }; static const unsigned char xdh_wei448_2590_privkey[] = { 0x4c, 0x29, 0x11, 0x8c, 0xd3, 0xfc, 0xe5, 0x1c, 0x7f, 0xd0, 0x82, 0xc8, 0x88, 0x0d, 0x59, 0x2a, 0x9c, 0x2a, 0x93, 0x89, 0xaa, 0x37, 0x1c, 0xa6, 0xe6, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0xef, }; static const unsigned char xdh_wei448_2590_sharedsecret[] = { 0xf2, 0xd3, 0xc0, 0x20, 0x56, 0x56, 0x47, 0x95, 0xc5, 0x9a, 0xbb, 0xa5, 0xb6, 0x0b, 0x84, 0xf6, 0x34, 0x9d, 0xdb, 0xe6, 0xff, 0x38, 0x0b, 0x96, 0x73, 0xf4, 0xd0, 0x9e, 0x28, 0xba, 0x23, 0x72, 0xe2, 0xe8, 0xdc, 0xf2, 0x69, 0xce, 0xc4, 0x87, 0x70, 0x61, 0x86, 0x63, 0xc9, 0x32, 0x28, 0x44, 0x83, 0xf4, 0xee, 0x5a, 0x57, 0x18, 0xfd, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2590 = { .name = "xdh_wei448_2590", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2590_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2590_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2590_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2590_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 7 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2591 for XDH, tcId is 8 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2591_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2591_ourpubkey[] = { 0x98, 0xc0, 0xe5, 0xec, 0x9b, 0xf7, 0x10, 0x47, 0xda, 0x4c, 0x6f, 0x60, 0xe2, 0x70, 0x3d, 0xe9, 0x09, 0x30, 0x9d, 0xd5, 0x84, 0x83, 0x14, 0xd1, 0x36, 0xec, 0x8b, 0xa8, 0x3f, 0x20, 0xea, 0x8b, 0x20, 0x4e, 0x2c, 0xb3, 0x92, 0xfb, 0x75, 0x16, 0xae, 0xe2, 0x4c, 0xe3, 0xb0, 0x8f, 0x21, 0xe0, 0x0f, 0xd0, 0xed, 0xbf, 0x29, 0x9e, 0x53, 0x8b, }; static const unsigned char xdh_wei448_2591_privkey[] = { 0xe8, 0x6c, 0xde, 0x64, 0x0f, 0x9f, 0x2a, 0x0e, 0x52, 0x8b, 0xe1, 0xff, 0x2a, 0x57, 0xa1, 0x26, 0x3a, 0x69, 0xe5, 0x60, 0xf9, 0x7c, 0x79, 0xf2, 0xd2, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0xbd, }; static const unsigned char xdh_wei448_2591_sharedsecret[] = { 0x13, 0xf5, 0x4e, 0x94, 0x80, 0xb6, 0x7c, 0xc5, 0xd5, 0x54, 0x5c, 0xbf, 0x6d, 0xfd, 0x10, 0xd1, 0x10, 0xb0, 0xa3, 0xb2, 0xa7, 0x9d, 0x22, 0x60, 0xd7, 0xd8, 0xf8, 0xf4, 0x9d, 0xb5, 0xd7, 0x82, 0x89, 0xd7, 0xcc, 0xc5, 0x69, 0x62, 0xa4, 0x93, 0x06, 0xaa, 0xe7, 0x40, 0x43, 0x91, 0x88, 0x0a, 0xaf, 0x9b, 0xed, 0xe5, 0xda, 0xb0, 0xfa, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2591 = { .name = "xdh_wei448_2591", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2591_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2591_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2591_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2591_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 8 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2592 for XDH, tcId is 9 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2592_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2592_ourpubkey[] = { 0x82, 0xf2, 0x1f, 0x09, 0xa1, 0x72, 0xde, 0x6d, 0xe5, 0x9e, 0xc0, 0x96, 0x5a, 0x7a, 0x92, 0xdd, 0xce, 0x7f, 0x85, 0x13, 0xbc, 0x81, 0x24, 0xcb, 0xb8, 0xe6, 0x85, 0x22, 0x7e, 0x6e, 0x2d, 0x76, 0x62, 0x9c, 0x20, 0xc8, 0x6d, 0x23, 0x32, 0xa9, 0x0a, 0x01, 0xf6, 0xa2, 0x86, 0xd2, 0xc2, 0xc4, 0x93, 0x60, 0x65, 0x21, 0x98, 0x0c, 0x13, 0xf7, }; static const unsigned char xdh_wei448_2592_privkey[] = { 0x24, 0xba, 0x9d, 0xf5, 0x6e, 0xf0, 0x36, 0xb4, 0xbc, 0xde, 0x7b, 0x01, 0x38, 0xb7, 0x98, 0x3a, 0xe0, 0xfe, 0x3d, 0x2f, 0xd4, 0xb9, 0xd1, 0x3e, 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0xeb, }; static const unsigned char xdh_wei448_2592_sharedsecret[] = { 0xf1, 0xef, 0x91, 0x74, 0x22, 0x2c, 0x42, 0x2c, 0xb3, 0xa6, 0x19, 0x4d, 0xa9, 0x1d, 0xbd, 0xab, 0x62, 0xb0, 0x68, 0x81, 0x79, 0xe7, 0x7f, 0x47, 0x01, 0x9c, 0xc9, 0xeb, 0x7c, 0x38, 0xda, 0x86, 0xf6, 0xf5, 0x1f, 0xc2, 0x50, 0xe8, 0xa4, 0x6d, 0xd4, 0xb3, 0x34, 0x1c, 0xc5, 0xf7, 0x1f, 0x1d, 0x8d, 0xaf, 0x0b, 0x28, 0xe8, 0x73, 0xd8, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2592 = { .name = "xdh_wei448_2592", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2592_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2592_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2592_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2592_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 9 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2593 for XDH, tcId is 10 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2593_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2593_ourpubkey[] = { 0xc9, 0x55, 0x90, 0x1a, 0x18, 0x4c, 0x7e, 0x67, 0x80, 0x93, 0xb9, 0x01, 0x81, 0xeb, 0x44, 0x61, 0x2e, 0x5c, 0x3e, 0x49, 0x66, 0x32, 0xc1, 0xb6, 0xc9, 0xdb, 0x90, 0x1c, 0x8a, 0xda, 0x57, 0xf7, 0x0b, 0x1a, 0xd8, 0x3b, 0x65, 0xb1, 0x0a, 0x10, 0x9f, 0xe4, 0x1c, 0x65, 0x37, 0x9a, 0x90, 0xd4, 0x00, 0x8d, 0x62, 0x4d, 0xc8, 0xd8, 0xba, 0x6b, }; static const unsigned char xdh_wei448_2593_privkey[] = { 0xd4, 0xbd, 0xcc, 0x2b, 0xca, 0x46, 0xee, 0x14, 0x49, 0xcc, 0x42, 0xcc, 0x8e, 0x97, 0xbc, 0x40, 0x43, 0xc6, 0xe2, 0xc0, 0xd0, 0x17, 0x77, 0x6d, 0xd6, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x8e, }; static const unsigned char xdh_wei448_2593_sharedsecret[] = { 0xbb, 0x09, 0xd4, 0x9c, 0xac, 0x99, 0xb9, 0x3b, 0x07, 0x1a, 0x19, 0xe6, 0xac, 0xa0, 0x6d, 0x9c, 0x9c, 0xc4, 0xc5, 0x78, 0x30, 0x4b, 0x3b, 0xe6, 0x48, 0x0d, 0xc4, 0x00, 0x3e, 0xa6, 0xe9, 0x1d, 0xe8, 0x7b, 0x09, 0xfd, 0xfc, 0x31, 0x16, 0x15, 0x1a, 0xe6, 0x6e, 0x98, 0x6a, 0x08, 0x61, 0x3e, 0xe9, 0xea, 0xf1, 0x26, 0x74, 0x30, 0x0e, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2593 = { .name = "xdh_wei448_2593", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2593_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2593_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2593_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2593_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 10 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2594 for XDH, tcId is 11 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2594_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2594_ourpubkey[] = { 0xcf, 0x6f, 0xed, 0xdb, 0x1a, 0x43, 0x61, 0x4b, 0x55, 0xac, 0x7f, 0x5f, 0x70, 0x70, 0x41, 0xb4, 0x25, 0xb0, 0x07, 0xb2, 0xe9, 0x3c, 0x36, 0x90, 0x8a, 0x13, 0xce, 0xd8, 0x6e, 0xf1, 0x78, 0x02, 0xdf, 0x49, 0xdb, 0x1a, 0x0a, 0x77, 0x64, 0x57, 0xe2, 0x7b, 0x0a, 0x5d, 0x96, 0x3e, 0xa7, 0xc0, 0x5b, 0x42, 0x34, 0x39, 0xe0, 0x9a, 0xb6, 0x9f, }; static const unsigned char xdh_wei448_2594_privkey[] = { 0x90, 0xd2, 0x68, 0x17, 0x75, 0xbe, 0xc7, 0x4d, 0x89, 0x41, 0x3d, 0xca, 0xfd, 0x01, 0xed, 0x3e, 0x4b, 0x6d, 0x1c, 0x8a, 0xdc, 0x3c, 0x28, 0x88, 0xd6, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0xb5, }; static const unsigned char xdh_wei448_2594_sharedsecret[] = { 0xc1, 0xb5, 0x7f, 0x0e, 0xcb, 0xde, 0x85, 0x2e, 0xf4, 0xc1, 0x84, 0xcf, 0x5b, 0xfc, 0xf7, 0x92, 0x44, 0x05, 0x86, 0x80, 0xc5, 0x91, 0x90, 0x79, 0x98, 0x8b, 0x0f, 0xd5, 0x62, 0xb7, 0x47, 0x58, 0x3e, 0x25, 0x82, 0x70, 0xd9, 0x1c, 0x4d, 0xa7, 0xab, 0xfd, 0xc6, 0xc2, 0x77, 0x84, 0xc6, 0x51, 0x74, 0xb7, 0xe6, 0x12, 0x53, 0x40, 0x97, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2594 = { .name = "xdh_wei448_2594", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2594_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2594_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2594_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2594_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 11 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2595 for XDH, tcId is 12 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2595_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2595_ourpubkey[] = { 0xab, 0x78, 0xe3, 0xb7, 0x7f, 0x83, 0x6b, 0x40, 0x8c, 0x0c, 0x72, 0x7c, 0x88, 0x6a, 0x09, 0xb2, 0x64, 0x3b, 0xd0, 0xa3, 0x35, 0x0d, 0xab, 0xfe, 0xbe, 0x13, 0xd6, 0x12, 0x28, 0xd9, 0x76, 0xa1, 0x4e, 0x8d, 0x0a, 0xe2, 0x24, 0xce, 0x98, 0x86, 0x8a, 0x28, 0x3b, 0x45, 0xcc, 0x3d, 0x4b, 0xe5, 0x78, 0xd6, 0xfd, 0x5c, 0x57, 0xff, 0xf4, 0x50, }; static const unsigned char xdh_wei448_2595_privkey[] = { 0xfc, 0xad, 0x30, 0x6b, 0xc8, 0xe2, 0x9a, 0x58, 0x62, 0x9f, 0x84, 0xf3, 0x13, 0x23, 0x4d, 0x16, 0x0b, 0x21, 0x59, 0x86, 0x3d, 0xcd, 0x54, 0x01, 0xa2, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0xc4, }; static const unsigned char xdh_wei448_2595_sharedsecret[] = { 0x72, 0xaf, 0x8c, 0x41, 0xcd, 0x06, 0xd6, 0x24, 0x3b, 0x1c, 0xb5, 0x2f, 0xfe, 0x39, 0x96, 0x20, 0x74, 0x40, 0xca, 0xbd, 0x36, 0xd4, 0xb3, 0x4e, 0x64, 0x30, 0x1f, 0x5a, 0xf0, 0x48, 0x90, 0xfb, 0x70, 0xd4, 0x97, 0xf1, 0x91, 0x8e, 0x53, 0x97, 0xd8, 0xee, 0x3f, 0x4b, 0xab, 0x46, 0xcf, 0xdd, 0x5a, 0x07, 0x14, 0x62, 0xb7, 0x14, 0x8a, 0xc8, }; static const wycheproof_xdh_test xdh_wei448_2595 = { .name = "xdh_wei448_2595", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2595_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2595_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2595_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2595_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 12 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2596 for XDH, tcId is 13 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2596_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2596_ourpubkey[] = { 0x89, 0x5d, 0xd9, 0x01, 0x6d, 0x4b, 0x00, 0x81, 0xf9, 0x9d, 0x7d, 0x35, 0x80, 0x72, 0x84, 0xa1, 0xfd, 0x4c, 0x32, 0xbd, 0xff, 0xc9, 0x30, 0x35, 0x56, 0x2e, 0xc2, 0x9c, 0x6f, 0x24, 0xb9, 0x92, 0x9d, 0xfa, 0x27, 0xa4, 0x7a, 0x89, 0x5e, 0x6e, 0x53, 0xa5, 0x65, 0x17, 0x7e, 0x07, 0xd9, 0xa7, 0x0c, 0x7e, 0x22, 0xd2, 0xae, 0xeb, 0x00, 0x7a, }; static const unsigned char xdh_wei448_2596_privkey[] = { 0x58, 0xe8, 0x40, 0x8c, 0xbd, 0x2b, 0xed, 0xc1, 0x55, 0x41, 0x5d, 0xb2, 0x82, 0x65, 0x60, 0x82, 0x79, 0x6d, 0xc6, 0xa6, 0xa7, 0x56, 0xe5, 0x91, 0xaa, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0xa3, }; static const unsigned char xdh_wei448_2596_sharedsecret[] = { 0xe3, 0xef, 0x63, 0x36, 0x7c, 0xce, 0xaa, 0x89, 0x2b, 0x9e, 0xbb, 0x00, 0x07, 0x2a, 0x92, 0x29, 0x6d, 0xdd, 0x27, 0xa0, 0xc6, 0x62, 0xe9, 0x11, 0xdf, 0x2b, 0xf0, 0x4f, 0xdf, 0xbd, 0x2a, 0x20, 0xd1, 0x08, 0x55, 0xb9, 0x44, 0x2c, 0x0d, 0xf4, 0xfb, 0xa8, 0x3e, 0x3f, 0x95, 0xe2, 0xdd, 0x04, 0xd9, 0xc6, 0xd6, 0xee, 0x69, 0x4e, 0xad, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_2596 = { .name = "xdh_wei448_2596", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2596_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2596_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2596_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2596_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 13 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2597 for XDH, tcId is 14 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2597_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2597_ourpubkey[] = { 0x2b, 0x2a, 0x1a, 0xe2, 0x37, 0xc7, 0xcc, 0x95, 0x8b, 0xed, 0x54, 0x94, 0xa0, 0xf3, 0xbb, 0xef, 0x0b, 0xea, 0x0b, 0x37, 0xe2, 0x39, 0xde, 0x5d, 0x76, 0xbf, 0x1b, 0x55, 0x0f, 0xd6, 0x44, 0xff, 0x28, 0xf0, 0xb6, 0x99, 0xf9, 0x10, 0x7a, 0xdb, 0x53, 0x44, 0xa9, 0xaf, 0x15, 0xe7, 0xc5, 0xbb, 0x52, 0xd1, 0x89, 0xbb, 0x84, 0x29, 0xcf, 0x97, }; static const unsigned char xdh_wei448_2597_privkey[] = { 0xd0, 0xcb, 0x88, 0x52, 0x80, 0xa8, 0xb0, 0xcf, 0x7c, 0x0d, 0xd9, 0xf2, 0x76, 0x77, 0x85, 0x8d, 0xb3, 0xeb, 0x2d, 0x16, 0xba, 0x92, 0x1d, 0x99, 0xf1, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0xd6, }; static const unsigned char xdh_wei448_2597_sharedsecret[] = { 0xe8, 0x74, 0xdd, 0xd0, 0x3a, 0xda, 0xa8, 0x86, 0x9b, 0xb8, 0x5e, 0x9d, 0x56, 0xee, 0xac, 0xd7, 0xdf, 0x00, 0x87, 0xae, 0x3a, 0xa0, 0x0d, 0x9d, 0xda, 0xea, 0xe4, 0x0c, 0x87, 0xa6, 0x4d, 0x16, 0x26, 0xa3, 0x34, 0x3b, 0x3e, 0x49, 0xfc, 0x87, 0xb2, 0x77, 0x42, 0xf7, 0xd5, 0x48, 0x72, 0x48, 0xf1, 0x71, 0xef, 0xd8, 0x18, 0x23, 0xbb, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2597 = { .name = "xdh_wei448_2597", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2597_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2597_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2597_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2597_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 14 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2598 for XDH, tcId is 15 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2598_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2598_ourpubkey[] = { 0x69, 0x7c, 0xb5, 0x69, 0xf0, 0x36, 0xde, 0x35, 0x2a, 0x40, 0x84, 0x09, 0xc2, 0x13, 0x8e, 0x0b, 0x41, 0xac, 0xb9, 0xfb, 0xb9, 0x86, 0x71, 0x5c, 0xe4, 0x87, 0x4c, 0x8e, 0xd8, 0x57, 0xd4, 0x60, 0x85, 0xde, 0xcf, 0xdc, 0x72, 0xbe, 0x52, 0x6e, 0x57, 0x8d, 0x74, 0x88, 0xb2, 0x20, 0x3b, 0x80, 0xaa, 0xaf, 0x20, 0x57, 0x5e, 0x79, 0x32, 0xee, }; static const unsigned char xdh_wei448_2598_privkey[] = { 0x40, 0x67, 0x0a, 0x1e, 0xfa, 0x70, 0x72, 0xa6, 0x5c, 0x27, 0x9f, 0x96, 0x18, 0x26, 0x3a, 0x9e, 0x26, 0x6f, 0xe1, 0x2d, 0x82, 0xff, 0x53, 0xc2, 0x9b, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x8e, }; static const unsigned char xdh_wei448_2598_sharedsecret[] = { 0xf2, 0x7f, 0x02, 0xb4, 0x52, 0xf9, 0xa5, 0xe9, 0x5f, 0x08, 0x09, 0x2e, 0x7e, 0x40, 0x58, 0xae, 0x56, 0x07, 0x32, 0xa4, 0xff, 0xd5, 0xe4, 0xc4, 0xcc, 0x49, 0x7a, 0xf9, 0xd8, 0xe0, 0xd7, 0x7f, 0x3d, 0x94, 0xd0, 0x7d, 0xea, 0x93, 0x2f, 0x0a, 0x79, 0xfa, 0x63, 0xc8, 0x52, 0xa1, 0xcf, 0x03, 0xb6, 0x0a, 0xb5, 0xa5, 0x20, 0x17, 0x48, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2598 = { .name = "xdh_wei448_2598", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2598_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2598_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2598_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2598_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 15 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2599 for XDH, tcId is 16 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2599_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2599_ourpubkey[] = { 0x55, 0xf4, 0x54, 0x22, 0x5d, 0x8e, 0xac, 0x91, 0x31, 0x68, 0x36, 0x01, 0x17, 0x27, 0x19, 0x55, 0xa8, 0x2c, 0x5d, 0xcb, 0xda, 0x08, 0x81, 0x4d, 0xa7, 0x69, 0x62, 0x80, 0x46, 0x63, 0x6d, 0xbb, 0xff, 0xcf, 0x0c, 0x1d, 0x65, 0xfd, 0x84, 0x07, 0x3a, 0xc7, 0x56, 0x1c, 0x2d, 0x7a, 0xa8, 0xf1, 0x38, 0x51, 0x60, 0x98, 0x4d, 0x15, 0x31, 0x61, }; static const unsigned char xdh_wei448_2599_privkey[] = { 0xb8, 0xfe, 0xca, 0xaa, 0x71, 0xe4, 0x2c, 0x55, 0xfa, 0x42, 0xcc, 0xc0, 0x9c, 0x9b, 0xb1, 0xa0, 0x98, 0xc4, 0x1e, 0x98, 0x16, 0x82, 0x46, 0x1b, 0xdc, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x80, }; static const unsigned char xdh_wei448_2599_sharedsecret[] = { 0x70, 0xaf, 0x0e, 0xba, 0xe5, 0x66, 0xf3, 0x2b, 0xff, 0x79, 0x7c, 0x1b, 0xab, 0x73, 0xf9, 0x9f, 0x31, 0xbe, 0x5b, 0xf4, 0xbc, 0x76, 0xf0, 0x13, 0xf2, 0x47, 0xc2, 0x5f, 0x3a, 0xea, 0x5a, 0xce, 0x10, 0x22, 0x4f, 0xf0, 0xeb, 0x9d, 0x3c, 0xff, 0xe4, 0xba, 0x1f, 0x98, 0xfd, 0x59, 0xe0, 0x28, 0x63, 0x6b, 0x3c, 0x48, 0x27, 0x75, 0x59, 0xad, }; static const wycheproof_xdh_test xdh_wei448_2599 = { .name = "xdh_wei448_2599", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2599_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2599_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2599_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2599_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 16 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2600 for XDH, tcId is 17 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2600_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2600_ourpubkey[] = { 0x13, 0x7d, 0x5e, 0x8b, 0xca, 0xd8, 0x03, 0x85, 0xab, 0xdb, 0x46, 0xda, 0xd0, 0x06, 0xab, 0x18, 0x51, 0xed, 0x2b, 0x32, 0x56, 0x7a, 0x7a, 0x66, 0xf1, 0xc5, 0x16, 0xe8, 0x33, 0x88, 0xcd, 0x55, 0x1b, 0x65, 0xac, 0xdb, 0xc0, 0x72, 0x26, 0x21, 0x89, 0xe5, 0x1e, 0x7e, 0x24, 0x5f, 0x98, 0xe7, 0x24, 0xd7, 0x2b, 0x9d, 0x32, 0x3a, 0xbd, 0x14, }; static const unsigned char xdh_wei448_2600_privkey[] = { 0xc8, 0xaa, 0x85, 0x74, 0x8b, 0x5c, 0xcd, 0x0f, 0x1f, 0x83, 0x4a, 0x37, 0x15, 0x59, 0x2e, 0x52, 0x3c, 0x2e, 0xd6, 0x09, 0xbf, 0xd1, 0x7f, 0x3b, 0x58, 0xed, 0x5a, 0x5f, 0xac, 0xad, 0x74, 0x9a, 0x43, 0x31, 0xdf, 0xb2, 0x4d, 0x8c, 0xf7, 0xd8, 0x20, 0x9b, 0x49, 0x62, 0xc2, 0x70, 0x3c, 0x01, 0xa5, 0xf9, 0x73, 0xb7, 0xc8, 0x2a, 0x3f, 0xec, }; static const unsigned char xdh_wei448_2600_sharedsecret[] = { 0xe4, 0x51, 0x31, 0x64, 0x3f, 0x60, 0x78, 0x81, 0xb9, 0xeb, 0xa1, 0x45, 0xae, 0x79, 0xaa, 0xe1, 0x6e, 0x64, 0xe9, 0x91, 0x29, 0x84, 0x33, 0x84, 0x86, 0x9b, 0xc2, 0xb5, 0xb3, 0xd7, 0xe7, 0x29, 0x3d, 0x89, 0x49, 0xb3, 0xc7, 0x95, 0xfa, 0xf0, 0x9a, 0xe3, 0xf7, 0xdf, 0x9f, 0x8d, 0xeb, 0x31, 0x42, 0x37, 0x3a, 0xd1, 0x70, 0xec, 0x34, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2600 = { .name = "xdh_wei448_2600", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2600_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2600_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2600_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2600_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 17 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2601 for XDH, tcId is 18 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2601_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2601_ourpubkey[] = { 0x24, 0xcd, 0x1e, 0x9e, 0xdc, 0xf6, 0x21, 0x89, 0x18, 0x63, 0x73, 0x90, 0x9d, 0x26, 0xb2, 0x3d, 0xa8, 0x64, 0x0b, 0xbb, 0xcb, 0x23, 0xf1, 0x4a, 0xd3, 0x35, 0xa9, 0xfc, 0x37, 0xcf, 0x42, 0xf6, 0x46, 0xd6, 0x4b, 0xdd, 0x5c, 0x43, 0xd1, 0x7f, 0x6b, 0xb2, 0xc9, 0xc6, 0x2e, 0x42, 0x1c, 0x18, 0xc0, 0x43, 0x82, 0xaf, 0xbc, 0x41, 0x07, 0xa9, }; static const unsigned char xdh_wei448_2601_privkey[] = { 0x14, 0x35, 0xf2, 0x60, 0x75, 0x2f, 0xb2, 0x7d, 0xd1, 0xa4, 0x71, 0xac, 0x4a, 0x08, 0xd9, 0x55, 0xc6, 0xe3, 0x93, 0xc8, 0x23, 0xa8, 0x58, 0xdc, 0x1d, 0x62, 0x38, 0x76, 0x68, 0x66, 0xf6, 0x22, 0x2e, 0x75, 0x26, 0xea, 0x4e, 0x51, 0xbf, 0x68, 0x47, 0xc6, 0x27, 0xef, 0x66, 0x28, 0x21, 0x1b, 0xa9, 0xde, 0xa3, 0x92, 0x2d, 0x70, 0x2c, 0xca, }; static const unsigned char xdh_wei448_2601_sharedsecret[] = { 0x0f, 0xcc, 0xdf, 0x4e, 0xd6, 0x30, 0xda, 0x45, 0x4c, 0x2a, 0xb0, 0xd6, 0xb4, 0x01, 0xb5, 0x65, 0xbd, 0xb1, 0x6b, 0x65, 0x5f, 0xb7, 0xc7, 0x60, 0x10, 0xf2, 0x50, 0xeb, 0x22, 0xcb, 0x3c, 0x92, 0xec, 0x9d, 0x96, 0x83, 0x59, 0xf9, 0x7a, 0x18, 0xe8, 0x55, 0xf6, 0x3f, 0x8d, 0x66, 0x2c, 0xcf, 0x66, 0xe3, 0x34, 0x90, 0x8c, 0x12, 0xfc, 0xa2, }; static const wycheproof_xdh_test xdh_wei448_2601 = { .name = "xdh_wei448_2601", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2601_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2601_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2601_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2601_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 18 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2602 for XDH, tcId is 19 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2602_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, }; static const unsigned char xdh_wei448_2602_ourpubkey[] = { 0x13, 0xd5, 0x03, 0xbe, 0x14, 0xb2, 0xce, 0x4c, 0x8c, 0x09, 0x7d, 0xc7, 0xc2, 0x5b, 0xf9, 0x93, 0x22, 0x7f, 0xa3, 0x3b, 0x9a, 0xcb, 0xa1, 0x63, 0x0b, 0x74, 0x5e, 0xbf, 0xdd, 0xf0, 0x76, 0xb6, 0x17, 0xc3, 0x07, 0x7a, 0x8d, 0xc7, 0x4c, 0xf6, 0xeb, 0x03, 0xc8, 0x99, 0x77, 0xae, 0xe9, 0x76, 0x0e, 0xbe, 0x93, 0x8b, 0x19, 0x26, 0xca, 0xb7, }; static const unsigned char xdh_wei448_2602_privkey[] = { 0x24, 0x84, 0xb1, 0xcc, 0xc0, 0x83, 0x04, 0x16, 0xc9, 0xc2, 0x32, 0xe1, 0xc9, 0xe3, 0xac, 0x76, 0x9d, 0x15, 0x58, 0x3b, 0x28, 0x2e, 0xca, 0x13, 0x05, 0x66, 0x49, 0x47, 0x6c, 0x69, 0x51, 0x05, 0x68, 0xe5, 0x0b, 0xa1, 0x5b, 0xb0, 0x48, 0xf4, 0xe4, 0x4a, 0x88, 0xae, 0xb7, 0x79, 0x9a, 0xe7, 0xac, 0xdb, 0x6b, 0x0b, 0x7d, 0xf7, 0x7c, 0xec, }; static const unsigned char xdh_wei448_2602_sharedsecret[] = { 0x70, 0xed, 0x1d, 0x31, 0x76, 0xe3, 0x08, 0xe5, 0x22, 0x1f, 0xc3, 0xf4, 0x16, 0xa8, 0x71, 0x27, 0xa3, 0x97, 0xec, 0x8a, 0x75, 0x56, 0x9c, 0xbf, 0x75, 0x59, 0x04, 0x03, 0x0e, 0xd3, 0xce, 0x20, 0x2b, 0x93, 0xbd, 0xd7, 0xa6, 0xdd, 0xab, 0x32, 0x74, 0x6c, 0xd8, 0x0e, 0x30, 0xf5, 0xb3, 0xcd, 0x50, 0x6d, 0x42, 0xaf, 0x42, 0x7f, 0x1f, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2602 = { .name = "xdh_wei448_2602", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2602_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2602_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2602_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2602_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 19 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2603 for XDH, tcId is 20 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2603_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x03, 0x00, }; static const unsigned char xdh_wei448_2603_ourpubkey[] = { 0xd0, 0x8a, 0x5c, 0xf1, 0x0e, 0xfd, 0x35, 0xb5, 0xca, 0xda, 0x05, 0x36, 0xe9, 0xd3, 0x86, 0x85, 0x72, 0x38, 0xec, 0xc6, 0xd7, 0x7e, 0x0b, 0x41, 0x62, 0x3e, 0x82, 0x80, 0xf6, 0xc9, 0x3d, 0xa7, 0xa4, 0xda, 0x66, 0xff, 0x38, 0xc7, 0x0b, 0xef, 0x31, 0x22, 0xbb, 0x64, 0x82, 0xa2, 0x9f, 0x39, 0x1b, 0xfe, 0x92, 0x35, 0x4a, 0x7a, 0x3a, 0x68, }; static const unsigned char xdh_wei448_2603_privkey[] = { 0x24, 0xcc, 0x1c, 0x2b, 0xd0, 0x33, 0x21, 0x21, 0x0d, 0x80, 0xe7, 0xba, 0x12, 0xba, 0xc1, 0x85, 0x1c, 0xff, 0xaf, 0xcd, 0x78, 0x73, 0x83, 0xd7, 0x38, 0x3f, 0xaf, 0xf6, 0x69, 0xd5, 0x1e, 0x07, 0x55, 0x4d, 0x00, 0x6a, 0xf1, 0x4b, 0xaa, 0xe0, 0x81, 0x8e, 0x7d, 0x27, 0x04, 0x45, 0x67, 0x0e, 0x53, 0xf2, 0x2b, 0x7e, 0xff, 0xbf, 0xa6, 0x89, }; static const unsigned char xdh_wei448_2603_sharedsecret[] = { 0xef, 0xe4, 0xb3, 0x2d, 0x8c, 0xcf, 0x5f, 0x42, 0xe4, 0x8d, 0x7c, 0xfe, 0x38, 0x17, 0xa7, 0xb8, 0x2a, 0x13, 0xa7, 0xb7, 0x68, 0x05, 0x39, 0x4d, 0x77, 0x75, 0xc6, 0x49, 0xa8, 0x88, 0x0c, 0x23, 0x79, 0xed, 0x54, 0x6f, 0x37, 0xc0, 0xeb, 0xd9, 0xeb, 0xb5, 0xdc, 0xb0, 0xd2, 0x60, 0xb7, 0xc3, 0xd2, 0x41, 0x70, 0x37, 0x97, 0xb1, 0xf5, 0x4a, }; static const wycheproof_xdh_test xdh_wei448_2603 = { .name = "xdh_wei448_2603", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2603_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2603_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2603_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2603_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 20 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2604 for XDH, tcId is 21 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2604_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, }; static const unsigned char xdh_wei448_2604_ourpubkey[] = { 0x50, 0xa3, 0x3a, 0x75, 0x1c, 0xf7, 0x87, 0x5a, 0x9e, 0x6d, 0x26, 0xa1, 0x43, 0xe8, 0x49, 0xda, 0x15, 0x65, 0x00, 0x93, 0x6e, 0xef, 0x98, 0xd3, 0xce, 0x07, 0xcc, 0x24, 0xd4, 0xd7, 0xdc, 0x44, 0x65, 0xa4, 0x2d, 0x99, 0xf6, 0xcc, 0x89, 0x56, 0xef, 0xdc, 0x0b, 0xff, 0x5a, 0x2a, 0xd7, 0x60, 0x6d, 0x98, 0x95, 0xe1, 0x36, 0x95, 0x5f, 0x50, }; static const unsigned char xdh_wei448_2604_privkey[] = { 0xbc, 0x08, 0xf8, 0x2f, 0xf3, 0xbb, 0xbb, 0x21, 0x6d, 0x5a, 0x4a, 0x25, 0x38, 0x60, 0xb6, 0x11, 0xe5, 0xff, 0x8b, 0xf7, 0x55, 0x99, 0x6b, 0xec, 0x7f, 0x77, 0xa4, 0xed, 0xb3, 0x46, 0x60, 0xb8, 0xd3, 0x50, 0xf2, 0x50, 0x1f, 0xc1, 0xd9, 0x13, 0x70, 0x41, 0x56, 0xaa, 0x26, 0xde, 0xcf, 0xc3, 0x59, 0xd1, 0x05, 0x3b, 0x18, 0xe0, 0x04, 0xec, }; static const unsigned char xdh_wei448_2604_sharedsecret[] = { 0x15, 0x65, 0x07, 0xca, 0x71, 0x79, 0x8a, 0x7f, 0xaf, 0xc5, 0x76, 0xef, 0x43, 0x67, 0x6a, 0xbf, 0x43, 0x81, 0x5b, 0xc7, 0x33, 0x2f, 0x8b, 0xa6, 0xee, 0xfc, 0x07, 0x27, 0xc6, 0x5d, 0x77, 0xd2, 0x4c, 0xcb, 0xa2, 0xfa, 0x81, 0x09, 0x3b, 0x85, 0x27, 0xc8, 0x27, 0x4b, 0x6a, 0xd0, 0xfe, 0x94, 0x62, 0xe9, 0x47, 0x4d, 0xf1, 0xbe, 0x3a, 0x49, }; static const wycheproof_xdh_test xdh_wei448_2604 = { .name = "xdh_wei448_2604", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2604_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2604_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2604_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2604_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 21 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2605 for XDH, tcId is 22 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2605_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_2605_ourpubkey[] = { 0xfe, 0x40, 0xbe, 0x7d, 0x44, 0x4b, 0xda, 0x97, 0x88, 0xf7, 0x67, 0xf3, 0xd1, 0xc6, 0xbd, 0xea, 0xd7, 0x69, 0xde, 0xa8, 0x37, 0x1f, 0x92, 0xe8, 0xc9, 0xb0, 0x19, 0xf8, 0xf0, 0xf7, 0x15, 0xc3, 0xe6, 0x63, 0xe2, 0xad, 0xb7, 0x05, 0x59, 0xa0, 0x04, 0x6b, 0xbd, 0x1f, 0xf1, 0xbf, 0xc2, 0x4e, 0x6e, 0x62, 0xfa, 0x4c, 0x2c, 0x73, 0x0e, 0xba, }; static const unsigned char xdh_wei448_2605_privkey[] = { 0x8c, 0x37, 0xfb, 0x35, 0xea, 0xc1, 0xdb, 0xda, 0x6a, 0x3b, 0x5b, 0xf4, 0x92, 0xc1, 0xf6, 0x42, 0xc7, 0x61, 0xbe, 0x3a, 0xdf, 0x0a, 0xb7, 0x61, 0x7a, 0x66, 0x00, 0x25, 0x76, 0xc4, 0x5b, 0xba, 0x82, 0x02, 0x97, 0x0b, 0xae, 0x6c, 0x5e, 0x05, 0xf6, 0x45, 0xf5, 0x43, 0x9c, 0xa2, 0xf4, 0x2b, 0x89, 0xda, 0xca, 0xce, 0x1a, 0x5d, 0x0e, 0x82, }; static const unsigned char xdh_wei448_2605_sharedsecret[] = { 0x60, 0xc4, 0x68, 0xdf, 0x97, 0xe2, 0xe4, 0x42, 0x7f, 0x27, 0x42, 0x0c, 0xc6, 0xbc, 0x9e, 0xeb, 0xaa, 0x2b, 0xce, 0xb8, 0x27, 0xeb, 0x55, 0xa1, 0x87, 0xfc, 0x5c, 0x29, 0x55, 0x5e, 0x72, 0xa6, 0x63, 0x24, 0x3f, 0x6a, 0xf4, 0x09, 0x56, 0x41, 0xd7, 0x2c, 0xae, 0xac, 0xb3, 0x69, 0x72, 0x0e, 0xa1, 0x8c, 0xad, 0xd6, 0xef, 0xdb, 0xec, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_2605 = { .name = "xdh_wei448_2605", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2605_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2605_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2605_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2605_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 22 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2606 for XDH, tcId is 23 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2606_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2606_ourpubkey[] = { 0xe4, 0x00, 0x1c, 0x18, 0xc9, 0xf6, 0x9b, 0x09, 0x27, 0x8e, 0x25, 0xcb, 0x5d, 0xde, 0x35, 0xee, 0x2a, 0x77, 0xb0, 0x16, 0x9f, 0x67, 0x6f, 0x1a, 0xd8, 0xc5, 0xdb, 0x22, 0x30, 0x9e, 0x85, 0x2c, 0x75, 0x5b, 0xb7, 0xed, 0x77, 0x5e, 0x01, 0xdd, 0x32, 0xf8, 0x6d, 0xb8, 0x74, 0xf0, 0x6a, 0xaf, 0x74, 0x3a, 0x85, 0x72, 0x69, 0x6f, 0xf2, 0x91, }; static const unsigned char xdh_wei448_2606_privkey[] = { 0x00, 0x68, 0x4b, 0xfc, 0x8c, 0xb9, 0x03, 0x17, 0x9b, 0x71, 0xc2, 0xc4, 0x52, 0xf2, 0xda, 0x1e, 0x6b, 0x47, 0x6c, 0x04, 0x58, 0xb3, 0x50, 0x35, 0x6d, 0x89, 0xb4, 0x02, 0x40, 0x3d, 0x01, 0x76, 0x02, 0x8b, 0x43, 0xcd, 0xfe, 0xbc, 0x4e, 0xb7, 0x82, 0x3e, 0x8c, 0x65, 0xac, 0x14, 0x45, 0x3f, 0x59, 0x42, 0x67, 0xf7, 0x7c, 0x40, 0xb2, 0x80, }; static const unsigned char xdh_wei448_2606_sharedsecret[] = { 0x7f, 0x6a, 0xbc, 0x32, 0x1d, 0x71, 0x04, 0x95, 0x5b, 0x76, 0x3a, 0xc6, 0x86, 0x81, 0xc2, 0xc4, 0xd1, 0xbb, 0x72, 0x07, 0xce, 0x63, 0x85, 0xf1, 0x8e, 0x60, 0xba, 0x5f, 0x31, 0x00, 0xc1, 0x3c, 0xdc, 0xad, 0xab, 0x23, 0x55, 0x46, 0xa0, 0xc9, 0x2a, 0x47, 0x92, 0x5d, 0xef, 0xb2, 0x69, 0x2e, 0xe2, 0xac, 0xed, 0x42, 0xbb, 0xff, 0x50, 0x8f, }; static const wycheproof_xdh_test xdh_wei448_2606 = { .name = "xdh_wei448_2606", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2606_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2606_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2606_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2606_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 23 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2607 for XDH, tcId is 24 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2607_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2607_ourpubkey[] = { 0xc0, 0x61, 0x5a, 0xfe, 0xe6, 0xea, 0xc1, 0x37, 0x1d, 0xd8, 0xed, 0x87, 0x2e, 0x4d, 0xbb, 0x35, 0xa2, 0x9c, 0xbf, 0x10, 0x61, 0x8d, 0x93, 0x05, 0x08, 0x13, 0xc9, 0xfd, 0x23, 0xa7, 0x82, 0xaa, 0x6e, 0x62, 0xff, 0xe2, 0x17, 0x9b, 0x88, 0xcf, 0x05, 0xd5, 0xeb, 0x90, 0x53, 0x92, 0x9c, 0x82, 0x24, 0x05, 0xdf, 0x14, 0x37, 0x02, 0xfd, 0xfe, }; static const unsigned char xdh_wei448_2607_privkey[] = { 0xe8, 0x76, 0x15, 0x98, 0xba, 0x21, 0x2a, 0x4e, 0x97, 0x24, 0xea, 0xab, 0x2f, 0x3c, 0x22, 0x5b, 0x0c, 0xc0, 0x19, 0x59, 0x5f, 0xa7, 0x02, 0xae, 0x03, 0x61, 0xbf, 0x3d, 0x34, 0x8d, 0x9d, 0x6f, 0x7a, 0x04, 0x35, 0x24, 0x24, 0xa5, 0xfd, 0x30, 0x26, 0x65, 0x0f, 0x2a, 0x04, 0x57, 0x44, 0x99, 0xda, 0xeb, 0xc7, 0x1f, 0x4c, 0x6d, 0x0f, 0xd9, }; static const unsigned char xdh_wei448_2607_sharedsecret[] = { 0x25, 0x21, 0xc2, 0x83, 0x65, 0x13, 0x96, 0xfb, 0x03, 0xbf, 0x07, 0x4e, 0x3c, 0xe6, 0xd0, 0x8d, 0x7b, 0x39, 0x3d, 0xe5, 0xfa, 0x85, 0xe9, 0xac, 0x63, 0x3c, 0xef, 0x32, 0x8a, 0xc5, 0x45, 0x76, 0xf6, 0x00, 0x5f, 0x34, 0xc7, 0x95, 0x42, 0x5c, 0x56, 0xdb, 0x62, 0xe8, 0xce, 0xdd, 0xf8, 0x07, 0xd6, 0x8e, 0x37, 0x64, 0x6a, 0xfb, 0x11, 0x84, }; static const wycheproof_xdh_test xdh_wei448_2607 = { .name = "xdh_wei448_2607", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2607_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2607_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2607_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2607_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 24 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2608 for XDH, tcId is 25 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2608_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, }; static const unsigned char xdh_wei448_2608_ourpubkey[] = { 0x47, 0xce, 0xbd, 0x2f, 0xfb, 0xf8, 0xbd, 0x87, 0xe7, 0xa6, 0xa9, 0x6e, 0x00, 0x4f, 0x76, 0x67, 0xb4, 0x10, 0xaf, 0x06, 0x90, 0x85, 0x59, 0x11, 0x97, 0x2b, 0x8e, 0xed, 0xb4, 0xda, 0x11, 0x86, 0xe7, 0xcb, 0x86, 0x55, 0x38, 0xae, 0xdc, 0xf4, 0xfd, 0x5e, 0x61, 0xb4, 0xa0, 0xb0, 0x0a, 0x58, 0xbb, 0xa0, 0xa2, 0x8a, 0x94, 0x52, 0x8d, 0xe0, }; static const unsigned char xdh_wei448_2608_privkey[] = { 0x78, 0xd4, 0x03, 0x21, 0xd4, 0xb0, 0xdc, 0x6a, 0x7c, 0x86, 0xdf, 0x13, 0xb5, 0x2e, 0x44, 0x4c, 0x87, 0x27, 0xa6, 0xd3, 0xbb, 0x4b, 0xe1, 0x6b, 0xb9, 0x15, 0xca, 0xb5, 0x22, 0xac, 0x8a, 0x94, 0x29, 0x78, 0xf7, 0x6e, 0x7d, 0xd6, 0xf9, 0xf4, 0x43, 0x9f, 0x5e, 0xf5, 0x35, 0xe6, 0xf4, 0x3e, 0x71, 0x1b, 0x69, 0x2a, 0xcc, 0x6e, 0xa4, 0xa3, }; static const unsigned char xdh_wei448_2608_sharedsecret[] = { 0x45, 0xd7, 0xf9, 0x32, 0x20, 0x1b, 0x24, 0xe1, 0x9b, 0x08, 0x60, 0x80, 0xb5, 0x77, 0xdc, 0x42, 0x80, 0x82, 0x59, 0x75, 0xbf, 0x3f, 0x12, 0x25, 0xbd, 0xde, 0x17, 0x61, 0x3b, 0xfb, 0x39, 0x83, 0x21, 0x53, 0x57, 0xdc, 0x1b, 0x9c, 0x77, 0xa7, 0xe8, 0xba, 0x1d, 0x3d, 0xb5, 0x8f, 0x37, 0x6a, 0x1c, 0x8c, 0x63, 0xd1, 0x30, 0x8c, 0xd9, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_2608 = { .name = "xdh_wei448_2608", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2608_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2608_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2608_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2608_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 25 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2609 for XDH, tcId is 26 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2609_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2609_ourpubkey[] = { 0xb0, 0xcf, 0xce, 0xef, 0x8d, 0x17, 0xe3, 0xc4, 0x9f, 0x31, 0x05, 0x42, 0x6a, 0x08, 0xfb, 0x37, 0x27, 0xdc, 0xaf, 0xce, 0xab, 0x56, 0x44, 0xf1, 0x9e, 0xb4, 0xdb, 0xc6, 0xf2, 0x12, 0xcd, 0xf2, 0x76, 0x60, 0x9d, 0xd7, 0x7d, 0x00, 0xa3, 0x2c, 0x27, 0xa7, 0x6c, 0xe8, 0x7e, 0x4f, 0x16, 0x22, 0x05, 0xe8, 0x72, 0x3c, 0x19, 0xfd, 0xba, 0x4c, }; static const unsigned char xdh_wei448_2609_privkey[] = { 0x50, 0xad, 0x85, 0x6c, 0xc0, 0x03, 0xe8, 0xeb, 0xee, 0xf9, 0x91, 0x3f, 0x67, 0xdd, 0xc4, 0xa4, 0x6a, 0x93, 0x47, 0xd0, 0x92, 0x85, 0x65, 0xb9, 0xd7, 0xf8, 0xb1, 0xc0, 0xf9, 0xdc, 0x31, 0xbc, 0xb7, 0x67, 0x97, 0x48, 0x6e, 0x05, 0x33, 0x19, 0xd1, 0x49, 0xf4, 0xc7, 0x94, 0x21, 0xef, 0x5e, 0xc7, 0xd1, 0x89, 0x5f, 0xd3, 0x2f, 0x3a, 0xd5, }; static const unsigned char xdh_wei448_2609_sharedsecret[] = { 0x15, 0xac, 0x85, 0xa8, 0x8f, 0x14, 0x08, 0x1d, 0x6a, 0x59, 0x19, 0xbf, 0x8d, 0x06, 0xa8, 0xc6, 0xbd, 0xcf, 0xfb, 0xba, 0x97, 0x0c, 0x54, 0x7b, 0x26, 0x37, 0x7b, 0x23, 0x8d, 0x64, 0x82, 0xef, 0xf5, 0x8d, 0x36, 0xe0, 0xb8, 0x7a, 0x00, 0xce, 0xf9, 0xb8, 0x0b, 0xe0, 0x1e, 0x69, 0xae, 0x0d, 0x6c, 0x12, 0xed, 0xdd, 0xaa, 0xbf, 0x7c, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_2609 = { .name = "xdh_wei448_2609", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2609_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2609_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2609_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2609_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 26 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2610 for XDH, tcId is 27 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2610_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2610_ourpubkey[] = { 0x17, 0xff, 0x1a, 0x4a, 0x33, 0x5c, 0x18, 0xc8, 0xb5, 0xcb, 0x7e, 0xc3, 0xe3, 0x22, 0x10, 0x05, 0x3e, 0x4d, 0x0c, 0x40, 0x7b, 0x34, 0x27, 0x82, 0x4b, 0x0b, 0x47, 0x54, 0x93, 0x2d, 0xbd, 0xea, 0x99, 0x03, 0xd7, 0xd5, 0x5f, 0xa2, 0x4d, 0x02, 0x57, 0x18, 0xe7, 0x6b, 0x5f, 0xd8, 0x6e, 0x20, 0xfc, 0x61, 0x20, 0xff, 0x2a, 0x16, 0x70, 0x12, }; static const unsigned char xdh_wei448_2610_privkey[] = { 0xa4, 0xee, 0xec, 0xbd, 0x9d, 0xdc, 0xe4, 0x81, 0x22, 0x2c, 0x22, 0xf0, 0x53, 0xa4, 0xbe, 0x30, 0xcf, 0xa1, 0x06, 0x8b, 0x57, 0x90, 0xd2, 0xbd, 0xb7, 0x88, 0x38, 0x2c, 0xb9, 0x66, 0xce, 0xfb, 0xb6, 0x06, 0xce, 0xe4, 0x7f, 0xc2, 0x36, 0xc3, 0x71, 0x3d, 0x9f, 0x8e, 0x65, 0xad, 0x04, 0x4e, 0x10, 0xf8, 0x9f, 0x64, 0x1c, 0xc3, 0x1c, 0xaa, }; static const unsigned char xdh_wei448_2610_sharedsecret[] = { 0x48, 0xb9, 0xaa, 0x64, 0xce, 0x34, 0x00, 0x6b, 0x2d, 0xb0, 0x92, 0x82, 0x34, 0xe8, 0x86, 0x36, 0x8e, 0xce, 0xb9, 0x2a, 0x3c, 0x46, 0x7f, 0xaa, 0x15, 0x5d, 0x5f, 0x9d, 0xe5, 0x3c, 0xa3, 0x5a, 0xd0, 0xc3, 0x83, 0xb5, 0xdc, 0xd9, 0xa1, 0xf8, 0x05, 0x1d, 0x80, 0x36, 0x5c, 0x6c, 0xf5, 0x2e, 0x54, 0x35, 0x3e, 0x2b, 0xca, 0x70, 0x60, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_2610 = { .name = "xdh_wei448_2610", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2610_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2610_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2610_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2610_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 27 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2611 for XDH, tcId is 28 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2611_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2611_ourpubkey[] = { 0x8b, 0xbe, 0x55, 0x2f, 0x01, 0xa3, 0x22, 0xfe, 0xc6, 0xdf, 0xec, 0xde, 0xf5, 0x21, 0xcb, 0x5c, 0xb3, 0xfc, 0x70, 0x50, 0xcb, 0xd9, 0x31, 0x47, 0x00, 0x2a, 0x31, 0xcf, 0xaa, 0xeb, 0x83, 0xd7, 0x17, 0xf2, 0x44, 0xf7, 0x1d, 0x26, 0x3b, 0x6d, 0x11, 0xc6, 0x15, 0x62, 0xd7, 0xa8, 0xba, 0xce, 0x91, 0xa4, 0xb2, 0x07, 0x4f, 0xce, 0xf6, 0x72, }; static const unsigned char xdh_wei448_2611_privkey[] = { 0x54, 0x10, 0x73, 0x5b, 0xd9, 0x5c, 0xd0, 0x64, 0x0f, 0xc1, 0xe2, 0xe1, 0x1a, 0x02, 0x88, 0x03, 0xf1, 0xcb, 0x43, 0x44, 0xf4, 0xef, 0xee, 0x75, 0xae, 0x0b, 0x9e, 0xb9, 0xdb, 0x56, 0x27, 0xd6, 0xe2, 0xa4, 0xb6, 0xdb, 0xad, 0x4a, 0xf3, 0xfe, 0xe9, 0x86, 0xcc, 0xe9, 0x34, 0xbe, 0xd6, 0x0a, 0x0e, 0x86, 0x98, 0x20, 0x46, 0x38, 0xb5, 0xa9, }; static const unsigned char xdh_wei448_2611_sharedsecret[] = { 0x89, 0x51, 0xb4, 0xfc, 0x36, 0x2c, 0xcd, 0x60, 0xcb, 0x56, 0x0f, 0xde, 0x65, 0xfa, 0x12, 0x61, 0x58, 0xa9, 0x72, 0x7a, 0x3d, 0x57, 0x7c, 0x50, 0x75, 0x66, 0xfa, 0x5b, 0x4a, 0x79, 0xc2, 0xac, 0x6b, 0xfd, 0x6c, 0x69, 0xde, 0xfe, 0xb9, 0xeb, 0x29, 0x83, 0x0c, 0xc4, 0xaa, 0xf6, 0x42, 0x7f, 0x2a, 0xe6, 0x6b, 0x2c, 0xd3, 0x20, 0x15, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2611 = { .name = "xdh_wei448_2611", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2611_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2611_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2611_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2611_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 28 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2612 for XDH, tcId is 29 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2612_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2612_ourpubkey[] = { 0x2c, 0x05, 0x51, 0xee, 0xf8, 0x14, 0x57, 0x14, 0xc0, 0xeb, 0xbb, 0xdf, 0x1f, 0x10, 0x30, 0x7a, 0x0a, 0xb8, 0x44, 0xac, 0x3f, 0xed, 0x6a, 0xcf, 0x31, 0x77, 0x97, 0x57, 0x28, 0x9a, 0x0d, 0xf9, 0xf8, 0xc0, 0xb0, 0x5a, 0x4f, 0x67, 0x8c, 0xb1, 0x49, 0xcb, 0xfb, 0xa0, 0xae, 0xb3, 0x2a, 0x76, 0xee, 0x58, 0xfd, 0x13, 0xe0, 0x7b, 0x1e, 0x27, }; static const unsigned char xdh_wei448_2612_privkey[] = { 0x00, 0xfc, 0x88, 0x42, 0xa4, 0x72, 0x19, 0xed, 0x8f, 0x3e, 0xfa, 0xe3, 0x98, 0x21, 0x40, 0xf4, 0x30, 0x33, 0xdf, 0x74, 0x88, 0xf9, 0x48, 0xeb, 0x2e, 0x24, 0x6a, 0x71, 0xa4, 0x55, 0xfd, 0xec, 0x2e, 0xe0, 0x46, 0x14, 0xe9, 0xab, 0x1c, 0xf4, 0xbb, 0xa4, 0x9e, 0x11, 0xc7, 0xc8, 0x59, 0x1b, 0xb6, 0x7f, 0x9a, 0x93, 0x41, 0x8d, 0x77, 0xd1, }; static const unsigned char xdh_wei448_2612_sharedsecret[] = { 0x8c, 0x3b, 0xd6, 0xc5, 0xe7, 0xe2, 0x02, 0x1e, 0x52, 0x90, 0x9a, 0x8c, 0xbe, 0xbc, 0x44, 0xba, 0x52, 0x3b, 0xdf, 0xa3, 0xac, 0x6c, 0xf8, 0xc7, 0xe3, 0x58, 0xc5, 0x8f, 0x55, 0x15, 0x07, 0x78, 0x41, 0x1e, 0xe0, 0x1c, 0x0b, 0x08, 0xbd, 0x52, 0xac, 0x34, 0xf8, 0xa1, 0x2c, 0xf8, 0xb2, 0x7f, 0xbd, 0x2d, 0xab, 0xa7, 0x37, 0x6f, 0x40, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2612 = { .name = "xdh_wei448_2612", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2612_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2612_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2612_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2612_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 29 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2613 for XDH, tcId is 30 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2613_peerpubkey[] = { 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2613_ourpubkey[] = { 0x9a, 0x20, 0x71, 0xe5, 0x9d, 0x77, 0x39, 0x22, 0x93, 0x1e, 0x63, 0xa4, 0xc6, 0xe5, 0x29, 0xf8, 0xed, 0xfd, 0xb0, 0x6e, 0x57, 0x12, 0x13, 0xb2, 0xc5, 0x1e, 0xf7, 0xbf, 0xc0, 0x62, 0x89, 0xbb, 0x1a, 0xec, 0x16, 0x60, 0x9d, 0xf3, 0x4a, 0x6d, 0x2b, 0x5d, 0x58, 0x13, 0x7d, 0x56, 0x89, 0x30, 0xbb, 0x21, 0x0f, 0xa5, 0x8c, 0xa7, 0xca, 0x38, }; static const unsigned char xdh_wei448_2613_privkey[] = { 0xcc, 0x37, 0xe2, 0xf2, 0x8b, 0xca, 0x03, 0x3c, 0x05, 0x54, 0xa2, 0x52, 0xa2, 0x31, 0x27, 0xd8, 0xc4, 0x4b, 0xd5, 0x91, 0x1a, 0x96, 0xfd, 0x99, 0x0e, 0xcf, 0x72, 0xbf, 0xf3, 0x4c, 0x47, 0x34, 0x71, 0xd7, 0x2c, 0x61, 0xa7, 0xa5, 0x0f, 0x8d, 0x7b, 0xdc, 0x34, 0x34, 0x1a, 0x63, 0xb8, 0xe5, 0xfc, 0x8c, 0xb1, 0x41, 0x28, 0xac, 0xf7, 0x87, }; static const unsigned char xdh_wei448_2613_sharedsecret[] = { 0xde, 0x4e, 0xee, 0xaf, 0xf2, 0xda, 0x2b, 0x47, 0x02, 0x33, 0x42, 0x24, 0xc8, 0x9d, 0xca, 0xd7, 0x8c, 0x98, 0xdc, 0x41, 0xb5, 0xf5, 0x13, 0x67, 0x74, 0xfb, 0xd2, 0x07, 0x67, 0xf5, 0x12, 0x91, 0x2e, 0x1f, 0xf9, 0xa7, 0xed, 0x2d, 0x96, 0xbe, 0x6f, 0x45, 0x2e, 0x8b, 0xcc, 0xac, 0x0b, 0x35, 0x73, 0xc3, 0xd8, 0x0b, 0x78, 0xc6, 0x94, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2613 = { .name = "xdh_wei448_2613", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2613_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2613_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2613_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2613_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 30 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2614 for XDH, tcId is 31 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2614_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2614_ourpubkey[] = { 0x49, 0x35, 0x81, 0x43, 0x9e, 0x61, 0x96, 0xe4, 0x45, 0x38, 0x58, 0xb7, 0x81, 0x79, 0x2d, 0xf2, 0xe1, 0xfa, 0x62, 0x91, 0x07, 0x5e, 0x93, 0x64, 0x6e, 0x4e, 0x2a, 0x70, 0xfa, 0x6b, 0xd9, 0x9e, 0x4f, 0x9d, 0x38, 0xbf, 0x18, 0xca, 0x9b, 0xcc, 0x27, 0xb2, 0x5b, 0xd3, 0xba, 0x0d, 0x80, 0xd7, 0xf2, 0x7a, 0x89, 0x70, 0xa2, 0xcb, 0x4c, 0x21, }; static const unsigned char xdh_wei448_2614_privkey[] = { 0xd4, 0x9e, 0xe2, 0x78, 0xca, 0xc7, 0x06, 0x42, 0x8b, 0x35, 0x1a, 0x4a, 0x23, 0xd9, 0x11, 0x88, 0xea, 0xf5, 0x5b, 0x5f, 0xe2, 0xba, 0x20, 0xa9, 0xfd, 0x55, 0xb0, 0x36, 0x87, 0xf0, 0xe8, 0xb4, 0x77, 0x13, 0x16, 0xb1, 0xd1, 0x41, 0x0c, 0x8b, 0x2b, 0xf3, 0x1b, 0x21, 0x4f, 0x61, 0x5a, 0x77, 0x3e, 0xae, 0xda, 0x9b, 0x4a, 0xea, 0x59, 0xe2, }; static const unsigned char xdh_wei448_2614_sharedsecret[] = { 0x05, 0x2f, 0x87, 0x17, 0x48, 0xa1, 0xad, 0x50, 0x5a, 0x52, 0x17, 0xe0, 0x60, 0x59, 0x95, 0x5d, 0x2d, 0x1e, 0x90, 0x98, 0x9d, 0xbd, 0xdf, 0x07, 0x1d, 0x36, 0xef, 0xbf, 0x94, 0x20, 0xa5, 0x36, 0x3f, 0x87, 0x67, 0x1d, 0xeb, 0x9e, 0x44, 0x1b, 0xb2, 0xb0, 0x5d, 0x2f, 0xdb, 0xd2, 0xc2, 0x81, 0x1f, 0xbc, 0xe5, 0x84, 0x23, 0x73, 0x72, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_2614 = { .name = "xdh_wei448_2614", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2614_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2614_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2614_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2614_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 31 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2615 for XDH, tcId is 32 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2615_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2615_ourpubkey[] = { 0xee, 0x0f, 0x74, 0x85, 0x11, 0x50, 0xf1, 0xbf, 0x91, 0x0f, 0x6a, 0x16, 0xbc, 0x19, 0x39, 0x6c, 0xda, 0x7e, 0xbc, 0x2b, 0x9b, 0x53, 0xe6, 0xfa, 0xc4, 0x39, 0x2c, 0x57, 0x0e, 0x0a, 0xe6, 0xee, 0x89, 0x5a, 0x3b, 0x61, 0x63, 0xa7, 0xaf, 0xfe, 0x78, 0x9c, 0xcd, 0xa3, 0x5f, 0x6f, 0x52, 0xd8, 0xff, 0xb8, 0xec, 0x99, 0xf0, 0x92, 0xa8, 0x57, }; static const unsigned char xdh_wei448_2615_privkey[] = { 0x04, 0xf0, 0x46, 0x38, 0xd5, 0x65, 0xbe, 0xa8, 0x3a, 0xc3, 0x77, 0x03, 0x51, 0x0d, 0x64, 0x75, 0x68, 0xdb, 0xac, 0x58, 0x21, 0x88, 0x13, 0x74, 0x8a, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0xde, }; static const unsigned char xdh_wei448_2615_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2615 = { .name = "xdh_wei448_2615", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2615_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2615_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2615_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2615_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 0, tcId is 32 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2616 for XDH, tcId is 33 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2616_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2616_ourpubkey[] = { 0x73, 0xac, 0x37, 0xfb, 0x5a, 0x2e, 0x29, 0xc3, 0xc9, 0x14, 0x54, 0xbe, 0xa9, 0xd1, 0xa3, 0x10, 0xf1, 0x4d, 0x4c, 0xfb, 0x19, 0xc1, 0x12, 0x05, 0x91, 0xa1, 0x12, 0x8f, 0x7c, 0x22, 0x8a, 0xfc, 0x5f, 0x68, 0x35, 0xa7, 0xad, 0x16, 0xd3, 0x76, 0x38, 0x2f, 0x79, 0x04, 0x82, 0x74, 0x87, 0xa3, 0xc5, 0xbf, 0xff, 0x21, 0x54, 0x05, 0x70, 0xef, }; static const unsigned char xdh_wei448_2616_privkey[] = { 0x28, 0x1f, 0x41, 0xa8, 0xa8, 0x53, 0x44, 0x1f, 0x1d, 0x50, 0x14, 0xbc, 0x6c, 0x61, 0x6e, 0x56, 0x4f, 0xce, 0x43, 0x72, 0xac, 0x22, 0x16, 0x81, 0x4f, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0xcf, }; static const unsigned char xdh_wei448_2616_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2616 = { .name = "xdh_wei448_2616", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2616_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2616_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2616_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2616_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 1, tcId is 33 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2617 for XDH, tcId is 34 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2617_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2617_ourpubkey[] = { 0x93, 0xb7, 0xa1, 0x6d, 0x18, 0xeb, 0x44, 0x67, 0x3d, 0x40, 0xc6, 0xb5, 0x6d, 0x17, 0x99, 0x50, 0x0f, 0xc8, 0x7e, 0x0a, 0x87, 0x07, 0xd3, 0xf1, 0x23, 0x38, 0x65, 0x13, 0xdd, 0xc3, 0x69, 0x8c, 0xc0, 0x36, 0xa3, 0x4b, 0x8b, 0x11, 0xbe, 0xbe, 0xee, 0x26, 0x19, 0x62, 0xec, 0xde, 0x0e, 0xa2, 0x87, 0x4a, 0x42, 0x7c, 0x15, 0xc4, 0x26, 0xb4, }; static const unsigned char xdh_wei448_2617_privkey[] = { 0x28, 0x11, 0x0d, 0xeb, 0xb1, 0x24, 0x2a, 0x86, 0x94, 0x07, 0xf2, 0x1a, 0x1a, 0x07, 0x61, 0x63, 0x26, 0xe2, 0xbb, 0xa0, 0xae, 0x3d, 0xdc, 0xa3, 0xd4, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0xdf, }; static const unsigned char xdh_wei448_2617_sharedsecret[] = { 0x02, 0x1e, 0xa3, 0xe5, 0x8b, 0xb9, 0xff, 0x27, 0xa1, 0x10, 0x90, 0x79, 0xa8, 0xc5, 0xa0, 0x5b, 0xb0, 0x97, 0x60, 0x86, 0x4b, 0xca, 0x16, 0x50, 0xed, 0x3d, 0x82, 0x56, 0x40, 0xc5, 0x13, 0x4d, 0x06, 0x31, 0xf5, 0x29, 0xd7, 0x95, 0x10, 0xf0, 0x62, 0x88, 0x3b, 0x12, 0x17, 0xbe, 0xda, 0x88, 0xf5, 0x28, 0x01, 0xfd, 0x5b, 0xfa, 0xe9, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_2617 = { .name = "xdh_wei448_2617", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2617_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2617_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2617_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2617_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 34 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2618 for XDH, tcId is 35 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2618_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2618_ourpubkey[] = { 0x66, 0xd4, 0xa0, 0x19, 0x00, 0xa8, 0x0f, 0xd6, 0x01, 0x80, 0xa9, 0x0a, 0xb2, 0x35, 0x68, 0x7a, 0x84, 0xa9, 0xce, 0xce, 0x26, 0x5b, 0x11, 0x9b, 0xb6, 0x3c, 0x6b, 0x51, 0x56, 0x09, 0x50, 0xcd, 0xd8, 0x19, 0xd4, 0x4c, 0x73, 0x9a, 0x98, 0x80, 0x3d, 0x56, 0xcf, 0xdd, 0x9a, 0xdb, 0x5f, 0x11, 0x54, 0x57, 0x12, 0xfc, 0x55, 0xcc, 0x8e, 0xe7, }; static const unsigned char xdh_wei448_2618_privkey[] = { 0xcc, 0xd0, 0xea, 0xbb, 0x08, 0x91, 0x13, 0x6d, 0x7f, 0x96, 0x3f, 0x52, 0x80, 0xab, 0x98, 0xf0, 0xef, 0xc6, 0xb8, 0x29, 0x02, 0xbc, 0x4f, 0x4f, 0xe5, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0xea, }; static const unsigned char xdh_wei448_2618_sharedsecret[] = { 0x0d, 0xfa, 0xe3, 0xc2, 0x23, 0x85, 0xee, 0x38, 0x4f, 0x52, 0x06, 0x0f, 0x0e, 0x90, 0x05, 0xce, 0xfb, 0x95, 0x0f, 0x7a, 0x80, 0x74, 0x02, 0x16, 0xde, 0xb9, 0x2a, 0xc4, 0xc4, 0xf4, 0xb4, 0x9c, 0x32, 0x84, 0xbe, 0x16, 0xe9, 0xdd, 0x89, 0x37, 0x8d, 0xec, 0xba, 0x9a, 0x73, 0x7d, 0xe8, 0x4a, 0x54, 0x26, 0x93, 0x5f, 0x1b, 0x6a, 0xe4, 0x63, }; static const wycheproof_xdh_test xdh_wei448_2618 = { .name = "xdh_wei448_2618", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2618_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2618_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2618_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2618_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 35 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2619 for XDH, tcId is 36 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2619_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2619_ourpubkey[] = { 0xde, 0x39, 0xbb, 0x9f, 0xf0, 0x5c, 0xd2, 0x6e, 0xb9, 0xce, 0xd2, 0x9b, 0x24, 0x04, 0xcd, 0xe7, 0x8d, 0x33, 0x28, 0xcc, 0xae, 0x63, 0x7e, 0x76, 0x57, 0x27, 0x55, 0xc2, 0xf4, 0x02, 0x0d, 0x27, 0xe4, 0xf0, 0xbd, 0x0b, 0x07, 0xc5, 0x1a, 0x31, 0xf9, 0xa7, 0xa8, 0x12, 0xb4, 0xc9, 0x3e, 0xe6, 0xc8, 0x59, 0x19, 0xc1, 0xeb, 0xc7, 0x13, 0x27, }; static const unsigned char xdh_wei448_2619_privkey[] = { 0x70, 0x14, 0x9f, 0xf0, 0x91, 0x59, 0x12, 0x72, 0xda, 0x90, 0xb2, 0xca, 0x92, 0x06, 0xe0, 0x6b, 0x8e, 0x0f, 0x97, 0x0d, 0xf1, 0x91, 0x54, 0xdb, 0xa9, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x9a, }; static const unsigned char xdh_wei448_2619_sharedsecret[] = { 0x29, 0xde, 0x99, 0x9f, 0x61, 0xfc, 0x03, 0x3d, 0x34, 0x56, 0x74, 0xa0, 0x6d, 0x98, 0xae, 0xc5, 0xc1, 0xa2, 0x56, 0x1d, 0xaa, 0xbe, 0x66, 0xb7, 0x94, 0x9a, 0xc6, 0x97, 0x36, 0xfe, 0x77, 0x0e, 0xcc, 0x46, 0xa7, 0x8e, 0x1c, 0x44, 0x7e, 0x54, 0xa8, 0xc2, 0xee, 0x85, 0x29, 0xc6, 0x6e, 0xcd, 0xd5, 0x07, 0x5c, 0xbf, 0x10, 0xb3, 0xe2, 0xbf, }; static const wycheproof_xdh_test xdh_wei448_2619 = { .name = "xdh_wei448_2619", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2619_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2619_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2619_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2619_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 36 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2620 for XDH, tcId is 37 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2620_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2620_ourpubkey[] = { 0x1e, 0xc9, 0xc5, 0x96, 0xbf, 0x49, 0xe5, 0x8b, 0xa3, 0x9c, 0xa6, 0x58, 0x03, 0x96, 0xb1, 0xe1, 0x0d, 0xaa, 0x37, 0x14, 0x12, 0xdc, 0xef, 0x09, 0xe1, 0xa2, 0x5a, 0x1f, 0x42, 0x95, 0x75, 0x06, 0xf7, 0xb3, 0xb2, 0x81, 0x07, 0x72, 0xd0, 0x5d, 0xa9, 0x66, 0x79, 0x35, 0x03, 0x37, 0x9d, 0xdd, 0x32, 0x58, 0xe3, 0x2a, 0x38, 0x6e, 0x18, 0x87, }; static const unsigned char xdh_wei448_2620_privkey[] = { 0x84, 0xee, 0x1a, 0x35, 0xe5, 0x3e, 0xdb, 0xd4, 0x25, 0xe5, 0xb7, 0xd1, 0x0b, 0xaa, 0xbd, 0xec, 0xb2, 0x72, 0x03, 0x04, 0x81, 0xfe, 0x15, 0x12, 0xad, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0xc1, }; static const unsigned char xdh_wei448_2620_sharedsecret[] = { 0x30, 0x73, 0xe3, 0x73, 0xf1, 0xbf, 0x65, 0x3b, 0xb9, 0xde, 0x54, 0xa2, 0x0b, 0xa1, 0xc0, 0x4e, 0x95, 0x06, 0x8a, 0x5f, 0x3d, 0x56, 0x3c, 0x71, 0x55, 0x2d, 0xd6, 0xb3, 0xf0, 0x51, 0xae, 0xfe, 0xbf, 0x25, 0x65, 0x3c, 0xf3, 0x07, 0x2d, 0x7f, 0x83, 0x01, 0xb6, 0x81, 0x80, 0xb8, 0x47, 0x33, 0x98, 0xde, 0xb9, 0x35, 0x09, 0xa8, 0xaa, 0x34, }; static const wycheproof_xdh_test xdh_wei448_2620 = { .name = "xdh_wei448_2620", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2620_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2620_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2620_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2620_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 37 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2621 for XDH, tcId is 38 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2621_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2621_ourpubkey[] = { 0x2c, 0x4e, 0xbf, 0x9d, 0x31, 0xa2, 0x87, 0xcc, 0x1c, 0x99, 0xe4, 0x1c, 0xdf, 0xc5, 0x61, 0x16, 0xad, 0x65, 0xee, 0xe8, 0x59, 0x13, 0x98, 0x4b, 0xc1, 0x09, 0x10, 0xb8, 0x4d, 0x8f, 0xe2, 0xa0, 0xe1, 0xda, 0x89, 0x39, 0x2d, 0x8e, 0x6b, 0x87, 0xce, 0xd5, 0x3a, 0x49, 0x1b, 0xa5, 0x2e, 0x0e, 0x0c, 0x56, 0x09, 0xed, 0xd8, 0x36, 0x9c, 0x2f, }; static const unsigned char xdh_wei448_2621_privkey[] = { 0xb8, 0x44, 0xa9, 0xa1, 0x84, 0x3e, 0x72, 0xb7, 0x66, 0x52, 0xa7, 0x0d, 0x48, 0x00, 0x43, 0xa8, 0xf3, 0x7e, 0x92, 0x80, 0x14, 0xaa, 0x2d, 0xef, 0xa9, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0xfb, }; static const unsigned char xdh_wei448_2621_sharedsecret[] = { 0xe5, 0xb5, 0xad, 0x45, 0xf5, 0xd0, 0x98, 0x07, 0x2b, 0xfd, 0xe0, 0x14, 0x66, 0xe4, 0xec, 0xaa, 0xcc, 0x89, 0xa8, 0x4a, 0xde, 0x7c, 0xb2, 0xc4, 0xc4, 0x0a, 0x9f, 0x62, 0x0b, 0x8b, 0x91, 0x17, 0x5d, 0xeb, 0xc5, 0xdb, 0x8d, 0xf1, 0x8a, 0x38, 0x26, 0x28, 0x2c, 0x46, 0xf9, 0x17, 0x6f, 0x6d, 0xa7, 0xc8, 0x26, 0xcf, 0x9c, 0x8d, 0xc8, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_2621 = { .name = "xdh_wei448_2621", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2621_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2621_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2621_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2621_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 38 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2622 for XDH, tcId is 39 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2622_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2622_ourpubkey[] = { 0x36, 0x4c, 0x6b, 0x2e, 0xc9, 0xa2, 0x5c, 0x66, 0xf0, 0x81, 0xf4, 0xd6, 0x8a, 0xec, 0x94, 0x50, 0x7c, 0x72, 0xa9, 0xfb, 0x34, 0x2a, 0x76, 0xa0, 0x8f, 0xb6, 0xcc, 0x5e, 0x44, 0x9e, 0x34, 0x50, 0xee, 0xa7, 0x29, 0x19, 0xe8, 0x2a, 0x29, 0xb1, 0x51, 0xee, 0xa7, 0x60, 0xc6, 0xb0, 0xd5, 0x6a, 0xc7, 0x51, 0xf6, 0xa6, 0x02, 0x9d, 0xa1, 0x61, }; static const unsigned char xdh_wei448_2622_privkey[] = { 0x44, 0xb1, 0x70, 0xa0, 0x9b, 0xc5, 0xaf, 0x3d, 0x31, 0xc5, 0x86, 0x43, 0x27, 0xe1, 0xf2, 0xa7, 0x4e, 0x26, 0xda, 0x7b, 0x3f, 0x39, 0xfa, 0xa3, 0xd2, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0xbc, }; static const unsigned char xdh_wei448_2622_sharedsecret[] = { 0x26, 0xf3, 0x40, 0xb6, 0xfc, 0xe9, 0xcd, 0xb7, 0x68, 0x07, 0xea, 0xec, 0x48, 0xd3, 0x88, 0x07, 0xd4, 0x0d, 0x13, 0x91, 0x1c, 0x1b, 0xb0, 0x1d, 0x5a, 0x45, 0x2f, 0x8d, 0x35, 0xbe, 0xb8, 0x3e, 0x23, 0x53, 0x1e, 0x83, 0x45, 0xf8, 0xe7, 0xed, 0x5a, 0x19, 0x4c, 0x6b, 0x73, 0x33, 0x60, 0x50, 0x4d, 0x6d, 0xd6, 0xdd, 0x6f, 0x88, 0x09, 0x44, }; static const wycheproof_xdh_test xdh_wei448_2622 = { .name = "xdh_wei448_2622", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2622_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2622_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2622_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2622_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 39 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2623 for XDH, tcId is 40 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2623_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2623_ourpubkey[] = { 0xde, 0xe4, 0x2e, 0xa9, 0xb1, 0x81, 0x7b, 0xe4, 0x92, 0xb4, 0x96, 0x90, 0x98, 0x60, 0xbf, 0x49, 0x61, 0x62, 0x5c, 0x7e, 0xb6, 0xbf, 0x52, 0xef, 0x2a, 0xd3, 0x9e, 0x46, 0x37, 0x03, 0x3b, 0x22, 0x3a, 0xfe, 0x96, 0xd3, 0x77, 0x61, 0x0b, 0x0c, 0x3a, 0x36, 0x15, 0x4d, 0xbc, 0x0d, 0xf9, 0xbf, 0xe8, 0xfe, 0xcf, 0x72, 0x14, 0x38, 0xfc, 0x2f, }; static const unsigned char xdh_wei448_2623_privkey[] = { 0xe4, 0x54, 0x5b, 0x1f, 0x96, 0xa5, 0x38, 0xe4, 0x81, 0xc0, 0x2b, 0x5c, 0x70, 0x35, 0x14, 0xaf, 0x5d, 0x02, 0xfa, 0x6d, 0xfc, 0x10, 0x3c, 0x42, 0x3a, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0xcd, }; static const unsigned char xdh_wei448_2623_sharedsecret[] = { 0xc9, 0x38, 0x03, 0xd1, 0xab, 0x21, 0xe2, 0x01, 0x66, 0x50, 0x7a, 0x62, 0xfb, 0xb2, 0x1c, 0x4e, 0xe2, 0x03, 0x69, 0x26, 0xad, 0xad, 0x3a, 0x10, 0x4e, 0xe7, 0xc5, 0x22, 0x79, 0xa0, 0xae, 0xfc, 0x71, 0xf7, 0x56, 0xc9, 0x96, 0x98, 0x88, 0xd7, 0xb2, 0x92, 0xab, 0x21, 0x1e, 0xd1, 0x94, 0x1d, 0x30, 0x02, 0xbb, 0x83, 0x5f, 0xf1, 0x49, 0x03, }; static const wycheproof_xdh_test xdh_wei448_2623 = { .name = "xdh_wei448_2623", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2623_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2623_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2623_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2623_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 40 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2624 for XDH, tcId is 41 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2624_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2624_ourpubkey[] = { 0xf3, 0xd6, 0x2f, 0x06, 0x18, 0x3c, 0x50, 0x7f, 0xa1, 0x8b, 0x0e, 0xc4, 0x4a, 0xe3, 0x36, 0xcc, 0x12, 0x39, 0x45, 0x87, 0x01, 0x49, 0xbb, 0x82, 0xc4, 0x9f, 0x45, 0x16, 0x29, 0x03, 0x2d, 0x91, 0xe7, 0x5b, 0x5e, 0x63, 0xb9, 0xb0, 0x44, 0xdf, 0xb5, 0x8b, 0x44, 0xb9, 0xb9, 0xba, 0x7e, 0x5c, 0x38, 0x29, 0x07, 0xbf, 0xd5, 0x35, 0x61, 0xac, }; static const unsigned char xdh_wei448_2624_privkey[] = { 0x84, 0x2a, 0x93, 0x06, 0xa5, 0x2a, 0x73, 0xba, 0x94, 0x0e, 0x54, 0x5a, 0xa6, 0xa6, 0xfb, 0x43, 0xda, 0x23, 0x7d, 0xfb, 0xd0, 0xd8, 0x20, 0xb0, 0xe4, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0xbf, }; static const unsigned char xdh_wei448_2624_sharedsecret[] = { 0xb3, 0xda, 0x43, 0xf7, 0x0e, 0x0a, 0x4a, 0x76, 0x50, 0x5b, 0x10, 0x8d, 0x35, 0x31, 0xb1, 0xf0, 0x2e, 0x66, 0xc4, 0xe9, 0x16, 0x34, 0xe6, 0x1b, 0x6e, 0xb1, 0x09, 0x8e, 0x7d, 0x87, 0x88, 0x73, 0xdb, 0xe8, 0x21, 0xef, 0x60, 0xaa, 0xa1, 0xa3, 0xa3, 0x35, 0x00, 0x44, 0x52, 0xb5, 0x7b, 0x19, 0x29, 0xd9, 0x66, 0xaf, 0x3a, 0xda, 0x63, 0xe7, }; static const wycheproof_xdh_test xdh_wei448_2624 = { .name = "xdh_wei448_2624", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2624_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2624_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2624_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2624_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 41 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2625 for XDH, tcId is 42 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2625_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2625_ourpubkey[] = { 0xa2, 0x83, 0x6e, 0xc6, 0xa5, 0xd0, 0xd2, 0xa3, 0x19, 0x5e, 0x6e, 0x37, 0xb2, 0x07, 0x60, 0x7e, 0x4b, 0x8a, 0x4f, 0x26, 0x91, 0xe3, 0xcc, 0x40, 0x59, 0xbc, 0x3b, 0xf9, 0xa4, 0x6d, 0x7d, 0x3b, 0x94, 0xc9, 0xaf, 0xd4, 0x45, 0x15, 0x90, 0x97, 0xc7, 0x6a, 0x2a, 0x42, 0x31, 0xad, 0xd6, 0xbc, 0xc7, 0x20, 0x96, 0xdb, 0x30, 0x5b, 0x2b, 0x7c, }; static const unsigned char xdh_wei448_2625_privkey[] = { 0x44, 0x7c, 0x4f, 0x94, 0xcb, 0xe7, 0x04, 0xcb, 0xb7, 0xc2, 0x63, 0x22, 0x1e, 0x12, 0x2b, 0x08, 0xc0, 0x60, 0x63, 0xea, 0xa4, 0xca, 0x09, 0x30, 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0xd0, }; static const unsigned char xdh_wei448_2625_sharedsecret[] = { 0x06, 0xed, 0xfd, 0xcb, 0x6b, 0x3e, 0xd3, 0x4f, 0x08, 0x1b, 0xb0, 0x01, 0x1f, 0xfb, 0x6d, 0x95, 0x06, 0xf3, 0xc9, 0x0f, 0x1a, 0x44, 0x07, 0x40, 0x69, 0x2a, 0x2f, 0x58, 0x9e, 0x81, 0xe9, 0x29, 0x11, 0x1a, 0x9a, 0xdb, 0x47, 0xe4, 0xbf, 0x30, 0x21, 0x6e, 0xcb, 0xb2, 0x60, 0x55, 0xc1, 0x68, 0x26, 0x4a, 0xe7, 0x95, 0x37, 0x31, 0xfd, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2625 = { .name = "xdh_wei448_2625", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2625_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2625_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2625_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2625_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 42 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2626 for XDH, tcId is 43 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2626_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2626_ourpubkey[] = { 0x9f, 0x8e, 0x2e, 0x9e, 0xdd, 0x8e, 0x97, 0x45, 0xbc, 0x2c, 0xcd, 0x06, 0x92, 0xdf, 0x38, 0x89, 0xe7, 0xc3, 0xe5, 0xbf, 0xde, 0xc3, 0x9f, 0x48, 0x43, 0x2b, 0xda, 0xa1, 0x81, 0x76, 0xae, 0xd0, 0xa5, 0xcf, 0x92, 0x23, 0xc2, 0x72, 0xd7, 0x76, 0x71, 0x9a, 0xd7, 0x38, 0x7e, 0xaf, 0x97, 0x28, 0x43, 0xa3, 0xfb, 0x74, 0x83, 0x2f, 0xd9, 0x0f, }; static const unsigned char xdh_wei448_2626_privkey[] = { 0x18, 0x50, 0x43, 0xad, 0x10, 0x8f, 0x93, 0x67, 0x3b, 0x28, 0x32, 0x86, 0x76, 0xde, 0x2a, 0x78, 0xd3, 0x7d, 0x7a, 0xc8, 0xa3, 0xa8, 0xbc, 0x69, 0xed, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0xb7, }; static const unsigned char xdh_wei448_2626_sharedsecret[] = { 0x2a, 0x3c, 0xec, 0x52, 0x06, 0x1b, 0x1a, 0x84, 0x38, 0x3b, 0x68, 0xb8, 0xa4, 0x1c, 0xe1, 0x5e, 0x4f, 0x7e, 0x7c, 0xb1, 0x81, 0x76, 0x2d, 0xc1, 0x8c, 0xe8, 0x66, 0x64, 0x7f, 0x93, 0xbe, 0xca, 0xae, 0x47, 0x66, 0x35, 0x18, 0x8b, 0x62, 0x64, 0x89, 0x28, 0xce, 0x23, 0x13, 0x01, 0x53, 0x98, 0x54, 0x6b, 0x92, 0xf2, 0x91, 0x9f, 0xd9, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2626 = { .name = "xdh_wei448_2626", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2626_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2626_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2626_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2626_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 43 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2627 for XDH, tcId is 44 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2627_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2627_ourpubkey[] = { 0xd9, 0x5c, 0xff, 0x6a, 0x20, 0xf2, 0x9a, 0xb0, 0x3b, 0x75, 0xd7, 0xef, 0xa9, 0xd3, 0xb2, 0xd7, 0x25, 0x41, 0x49, 0xb8, 0x35, 0xb6, 0x9b, 0x1e, 0x38, 0xcc, 0xb2, 0x53, 0x0f, 0xf4, 0x28, 0x27, 0xc4, 0x7d, 0xda, 0x32, 0x06, 0x14, 0xde, 0xdd, 0xf3, 0x15, 0x03, 0xce, 0x34, 0x68, 0x45, 0x2f, 0x52, 0xae, 0x72, 0x67, 0x11, 0xe0, 0x36, 0x37, }; static const unsigned char xdh_wei448_2627_privkey[] = { 0x08, 0x35, 0x37, 0x24, 0xfb, 0xc0, 0x39, 0x27, 0xb1, 0x73, 0x59, 0xa8, 0x8c, 0x12, 0x12, 0x76, 0xad, 0x69, 0x79, 0x91, 0xee, 0x89, 0x86, 0x8e, 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x94, }; static const unsigned char xdh_wei448_2627_sharedsecret[] = { 0x30, 0xb1, 0xd9, 0x81, 0x54, 0x76, 0x8a, 0x2a, 0x2a, 0xf5, 0x68, 0xe2, 0xfa, 0x35, 0x77, 0xa0, 0x42, 0xa5, 0xc7, 0xe5, 0xf9, 0xac, 0x91, 0xb1, 0x00, 0x65, 0x5e, 0xa3, 0x32, 0xb4, 0x2d, 0xb5, 0x68, 0x03, 0x4b, 0x15, 0xfd, 0xf7, 0x5c, 0x69, 0x3d, 0x8c, 0x2d, 0x0c, 0x2d, 0xe5, 0x4f, 0xb9, 0xd6, 0xd1, 0x7e, 0xfa, 0x31, 0x6a, 0xa5, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2627 = { .name = "xdh_wei448_2627", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2627_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2627_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2627_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2627_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 44 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2628 for XDH, tcId is 45 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2628_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2628_ourpubkey[] = { 0x26, 0x67, 0xcd, 0x7b, 0xdc, 0x28, 0xe4, 0x8c, 0x67, 0x29, 0x94, 0x3f, 0xcc, 0x32, 0x3f, 0x82, 0xb6, 0x7b, 0xb0, 0xc4, 0x1f, 0xff, 0xb4, 0x4c, 0xae, 0x0b, 0x11, 0x9b, 0xcd, 0x13, 0x49, 0xf3, 0xa8, 0x32, 0xdc, 0x4c, 0x55, 0x57, 0x44, 0x01, 0xad, 0x73, 0x80, 0x12, 0x16, 0x2f, 0x20, 0x23, 0xe5, 0x3b, 0x94, 0xf8, 0x42, 0x11, 0x6e, 0x97, }; static const unsigned char xdh_wei448_2628_privkey[] = { 0x98, 0xc6, 0xf3, 0x6e, 0x1c, 0xb7, 0x45, 0x28, 0x76, 0x3f, 0x3a, 0xa1, 0x11, 0x96, 0xef, 0x94, 0x49, 0xc6, 0x7b, 0xe3, 0x60, 0xe2, 0x5e, 0x40, 0xab, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0xa3, }; static const unsigned char xdh_wei448_2628_sharedsecret[] = { 0xc3, 0xc7, 0xae, 0xc9, 0x77, 0x86, 0xa4, 0x3b, 0x79, 0xf8, 0xa0, 0x53, 0xcf, 0x18, 0x53, 0x63, 0x11, 0x2f, 0x04, 0x41, 0x1a, 0x8e, 0xf3, 0xd3, 0x28, 0x3f, 0x61, 0xee, 0xac, 0x59, 0xa1, 0xf2, 0x91, 0x8e, 0x10, 0xf5, 0x49, 0x37, 0x93, 0x2f, 0x5a, 0xc1, 0xe3, 0xb7, 0x2f, 0xdb, 0xea, 0x57, 0xf3, 0x42, 0x74, 0x59, 0x8b, 0x17, 0xd7, 0x68, }; static const wycheproof_xdh_test xdh_wei448_2628 = { .name = "xdh_wei448_2628", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2628_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2628_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2628_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2628_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 45 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2629 for XDH, tcId is 46 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2629_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2629_ourpubkey[] = { 0xaa, 0xa9, 0x33, 0xb8, 0x2d, 0xc7, 0x29, 0x95, 0xbc, 0xc5, 0x9e, 0x68, 0x87, 0xc3, 0x54, 0x51, 0x64, 0xc7, 0xaa, 0x54, 0xf1, 0x40, 0xe5, 0x59, 0xec, 0x52, 0xce, 0x3d, 0x6d, 0x75, 0x36, 0x39, 0xd8, 0x29, 0x48, 0xa9, 0x3b, 0x98, 0x4e, 0x4b, 0xb1, 0x40, 0xce, 0x4a, 0x4c, 0x41, 0x44, 0x74, 0x66, 0x88, 0x1a, 0xe6, 0xae, 0x60, 0x74, 0xc3, }; static const unsigned char xdh_wei448_2629_privkey[] = { 0x80, 0x89, 0xee, 0x7f, 0x5c, 0x2b, 0x0c, 0xe9, 0x4d, 0xe3, 0x62, 0x73, 0x2a, 0x68, 0xe5, 0x9e, 0x59, 0x6b, 0xcc, 0xf6, 0xc3, 0x43, 0x18, 0xe3, 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0xf0, }; static const unsigned char xdh_wei448_2629_sharedsecret[] = { 0x9d, 0xd0, 0x23, 0xa0, 0x90, 0x68, 0x99, 0xeb, 0x83, 0xde, 0xb1, 0x74, 0x92, 0xe9, 0x38, 0x1f, 0x9d, 0xca, 0x96, 0x20, 0xa1, 0x52, 0x84, 0x96, 0x26, 0xc6, 0x57, 0x26, 0x08, 0x8b, 0x41, 0xfd, 0x28, 0xeb, 0x81, 0x7d, 0x37, 0x26, 0x7c, 0x62, 0xc3, 0x51, 0xba, 0xe2, 0xa9, 0xeb, 0xc6, 0x37, 0xdf, 0x44, 0x90, 0xa2, 0x19, 0x13, 0x4c, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2629 = { .name = "xdh_wei448_2629", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2629_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2629_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2629_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2629_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 46 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2630 for XDH, tcId is 47 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2630_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2630_ourpubkey[] = { 0xd4, 0x40, 0x38, 0x74, 0x72, 0xee, 0x11, 0x3e, 0xd3, 0xb5, 0x48, 0x25, 0x41, 0xf0, 0x2d, 0x0a, 0xab, 0x81, 0xd3, 0xa3, 0xbc, 0xdf, 0x2d, 0x31, 0xe6, 0x04, 0xea, 0x8f, 0xe2, 0x9a, 0x7f, 0x4c, 0x06, 0x62, 0xb3, 0x45, 0xd9, 0xc1, 0xac, 0x56, 0x55, 0xfd, 0xaf, 0xec, 0xc3, 0x49, 0x96, 0x8b, 0xc1, 0xb8, 0xd8, 0xcd, 0x6d, 0x2c, 0x27, 0x08, }; static const unsigned char xdh_wei448_2630_privkey[] = { 0xc4, 0x14, 0x52, 0x2a, 0xb0, 0x3f, 0xfa, 0xcf, 0xf2, 0xc4, 0x3a, 0x81, 0x7b, 0xff, 0x63, 0x8f, 0xdd, 0x24, 0x2f, 0x7d, 0x4b, 0x54, 0x75, 0x74, 0xe5, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0xcc, }; static const unsigned char xdh_wei448_2630_sharedsecret[] = { 0x55, 0xbb, 0x0c, 0xa5, 0xd7, 0xc5, 0x76, 0xde, 0xc8, 0x3c, 0xf3, 0xdc, 0xfd, 0x98, 0x85, 0xbd, 0xb5, 0x04, 0x10, 0xf9, 0x69, 0x0d, 0xee, 0x34, 0xb0, 0xfc, 0x49, 0x3e, 0xdc, 0x04, 0xb6, 0x2e, 0xd0, 0x31, 0x16, 0x0f, 0x73, 0xc5, 0x51, 0x09, 0x76, 0x0f, 0x65, 0x11, 0x9b, 0xd2, 0xb9, 0x58, 0xa6, 0x56, 0x6b, 0x98, 0xee, 0xc6, 0xf5, 0x41, }; static const wycheproof_xdh_test xdh_wei448_2630 = { .name = "xdh_wei448_2630", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2630_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2630_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2630_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2630_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 47 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2631 for XDH, tcId is 48 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2631_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2631_ourpubkey[] = { 0x9d, 0x95, 0xbe, 0xfa, 0xc6, 0xf1, 0xfb, 0xfd, 0x2f, 0x93, 0x6c, 0xe9, 0x2c, 0x7e, 0x72, 0xdb, 0x3c, 0x50, 0x7a, 0x75, 0x23, 0xa2, 0x75, 0x34, 0x35, 0xa8, 0xc0, 0xbf, 0xd1, 0x95, 0x20, 0xf3, 0xd5, 0x49, 0x55, 0x80, 0x89, 0x30, 0x4e, 0xf7, 0x38, 0xd2, 0x79, 0xb2, 0x73, 0x98, 0x81, 0xf2, 0x07, 0x05, 0xd4, 0x6d, 0x1c, 0xb4, 0x06, 0xea, }; static const unsigned char xdh_wei448_2631_privkey[] = { 0x7c, 0x6e, 0x75, 0xb7, 0xf8, 0x43, 0xfc, 0xba, 0x2c, 0xed, 0x4f, 0xee, 0x6b, 0xb1, 0xf7, 0x4d, 0x44, 0xda, 0x59, 0xfd, 0x79, 0xfa, 0x25, 0x74, 0x3a, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0xb3, }; static const unsigned char xdh_wei448_2631_sharedsecret[] = { 0x58, 0x6d, 0x61, 0x34, 0x6b, 0x75, 0xcc, 0x07, 0x12, 0xb9, 0xc1, 0x02, 0x9e, 0x97, 0x56, 0x66, 0x8e, 0xed, 0x14, 0xe6, 0x7e, 0x54, 0x3d, 0xef, 0x8f, 0xc5, 0x1c, 0x28, 0x82, 0xdf, 0xed, 0x27, 0xec, 0xef, 0x73, 0x70, 0xa7, 0x28, 0x0f, 0x55, 0x42, 0xda, 0x3d, 0xc5, 0x59, 0xd2, 0x7d, 0x62, 0x8f, 0x85, 0xe9, 0x7e, 0x04, 0x81, 0xba, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2631 = { .name = "xdh_wei448_2631", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2631_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2631_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2631_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2631_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 48 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2632 for XDH, tcId is 49 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2632_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2632_ourpubkey[] = { 0xd7, 0xd8, 0x7e, 0xc8, 0x04, 0x8f, 0xf6, 0x24, 0x14, 0x70, 0x5a, 0xd3, 0x8a, 0x38, 0x2e, 0xb3, 0xdc, 0x19, 0x3a, 0x24, 0x29, 0x80, 0x63, 0x9c, 0x77, 0x9b, 0xb0, 0x14, 0xbb, 0x92, 0xe2, 0x75, 0x30, 0xe2, 0x0b, 0x72, 0xfa, 0x63, 0xae, 0x5e, 0x24, 0x9a, 0x5c, 0x6d, 0x60, 0x7c, 0xfd, 0x32, 0x97, 0xaf, 0xbe, 0x1c, 0x86, 0x85, 0xdb, 0x35, }; static const unsigned char xdh_wei448_2632_privkey[] = { 0x84, 0x09, 0xfd, 0x3e, 0xa1, 0xf0, 0x32, 0xfd, 0x72, 0x9d, 0xbe, 0x2b, 0x2b, 0x79, 0x4d, 0xa5, 0xcb, 0x92, 0xc7, 0xf9, 0xf2, 0x85, 0xb1, 0x00, 0xd9, 0x84, 0x3f, 0xfd, 0x5b, 0x02, 0x45, 0xa7, 0x8b, 0xd2, 0x73, 0xea, 0x2a, 0x8f, 0x04, 0x31, 0x95, 0x02, 0x45, 0x41, 0x2b, 0xd7, 0xee, 0xc3, 0x69, 0x5a, 0x24, 0xcc, 0x73, 0x89, 0x21, 0xab, }; static const unsigned char xdh_wei448_2632_sharedsecret[] = { 0xe8, 0x6f, 0x72, 0xf3, 0x84, 0x7d, 0x87, 0xc1, 0xfd, 0x19, 0xc1, 0xdd, 0xbc, 0xa5, 0xe1, 0x72, 0xb0, 0x58, 0x47, 0xdd, 0x97, 0xd5, 0xc3, 0x11, 0x22, 0x69, 0x8f, 0x36, 0x1f, 0x89, 0xba, 0xbf, 0x7d, 0x5d, 0xaf, 0x5f, 0x23, 0xcc, 0x87, 0x28, 0x5f, 0x49, 0x08, 0x85, 0x98, 0xf8, 0xf1, 0xf3, 0xfd, 0x17, 0x7c, 0xfb, 0x35, 0xed, 0x32, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2632 = { .name = "xdh_wei448_2632", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2632_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2632_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2632_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2632_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 49 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2633 for XDH, tcId is 50 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2633_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, }; static const unsigned char xdh_wei448_2633_ourpubkey[] = { 0xa2, 0x49, 0x0b, 0x60, 0x1a, 0xa1, 0x54, 0xe0, 0x6f, 0x11, 0xc9, 0xa8, 0xd7, 0xb3, 0xb5, 0x38, 0x63, 0xf4, 0x37, 0x39, 0xfc, 0xcc, 0xfb, 0x33, 0xc1, 0xe7, 0x28, 0x84, 0xff, 0xc1, 0xb0, 0x5d, 0x08, 0x5e, 0xd2, 0xd2, 0x7f, 0x12, 0x91, 0xa4, 0x25, 0x7e, 0x18, 0x35, 0x55, 0x99, 0x69, 0x6a, 0x66, 0xba, 0xa5, 0xa3, 0xe6, 0xcc, 0xf8, 0x0c, }; static const unsigned char xdh_wei448_2633_privkey[] = { 0x24, 0x83, 0x50, 0xb1, 0x81, 0x36, 0x37, 0x62, 0x91, 0x19, 0xa4, 0x38, 0xb8, 0x27, 0xf3, 0x69, 0xd7, 0x0b, 0x7e, 0x19, 0x9b, 0xc6, 0xc5, 0x66, 0xfe, 0xfd, 0x68, 0xb5, 0x5e, 0x22, 0x4e, 0x64, 0x7a, 0x59, 0x5c, 0x05, 0x7b, 0xe4, 0x4f, 0xf2, 0xee, 0x32, 0x1b, 0x2a, 0xcd, 0xbe, 0x39, 0xb0, 0x9b, 0x3e, 0x56, 0xf3, 0xa9, 0xa0, 0xe4, 0xbe, }; static const unsigned char xdh_wei448_2633_sharedsecret[] = { 0xfe, 0x2e, 0x38, 0xc9, 0x30, 0xca, 0xba, 0xdf, 0x8a, 0xa9, 0xc6, 0x05, 0xa9, 0x04, 0x85, 0x0f, 0x6c, 0xe7, 0xdc, 0x35, 0xef, 0xb2, 0xaf, 0x72, 0xeb, 0xb2, 0x8e, 0xc4, 0xaf, 0x31, 0x19, 0x9d, 0x9d, 0xba, 0x57, 0xc4, 0x33, 0x7c, 0x84, 0x88, 0xb9, 0xaa, 0x3d, 0xed, 0xd5, 0x13, 0x49, 0xa4, 0x41, 0xbd, 0xbf, 0x59, 0x24, 0x5a, 0xd2, 0x58, }; static const wycheproof_xdh_test xdh_wei448_2633 = { .name = "xdh_wei448_2633", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2633_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2633_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2633_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2633_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 50 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2634 for XDH, tcId is 51 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2634_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_2634_ourpubkey[] = { 0x31, 0xdc, 0x57, 0x37, 0xf4, 0xf0, 0x4b, 0xc1, 0x3c, 0x07, 0xb5, 0x33, 0x63, 0x50, 0x6d, 0xd3, 0x5d, 0xea, 0x25, 0x35, 0x4c, 0x1b, 0x78, 0x83, 0x64, 0xee, 0xd4, 0xe7, 0x7e, 0x4e, 0xcc, 0x54, 0xe9, 0xea, 0xe5, 0x99, 0xb7, 0x5e, 0x2a, 0xe4, 0xfd, 0x18, 0x43, 0xe5, 0xf6, 0xdc, 0x81, 0xc5, 0xd8, 0x8e, 0x4e, 0x73, 0x8e, 0xd4, 0xa7, 0xfd, }; static const unsigned char xdh_wei448_2634_privkey[] = { 0xd8, 0x45, 0x48, 0x05, 0xfe, 0x07, 0xcc, 0x84, 0x5d, 0xb6, 0x75, 0xbb, 0x19, 0x34, 0x8f, 0xd1, 0x0f, 0x97, 0xd2, 0x6a, 0x50, 0xd7, 0x29, 0xb5, 0xcd, 0x51, 0x09, 0x77, 0xe9, 0xab, 0xd9, 0xfd, 0x4c, 0x8a, 0x82, 0x41, 0x04, 0x68, 0xb6, 0x07, 0x13, 0x07, 0xb0, 0xbd, 0x57, 0xc4, 0xed, 0x34, 0x64, 0x39, 0x11, 0x05, 0xf6, 0x6e, 0x4b, 0xee, }; static const unsigned char xdh_wei448_2634_sharedsecret[] = { 0xc8, 0xb5, 0xae, 0x9c, 0x08, 0x2b, 0xf1, 0xec, 0xe4, 0x6b, 0x6b, 0x72, 0x4f, 0x96, 0x66, 0xd4, 0x57, 0x1a, 0x47, 0x7a, 0x20, 0xcc, 0xa6, 0x76, 0x42, 0x38, 0x7a, 0x6e, 0x89, 0x1f, 0x11, 0x88, 0x71, 0x8c, 0x46, 0xcd, 0xe8, 0xc2, 0xef, 0x20, 0x4e, 0x7f, 0x77, 0xca, 0xe4, 0xc1, 0x03, 0x20, 0x93, 0x0b, 0x1f, 0x0c, 0x2d, 0xa9, 0x15, 0xd9, }; static const wycheproof_xdh_test xdh_wei448_2634 = { .name = "xdh_wei448_2634", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2634_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2634_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2634_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2634_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 51 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2635 for XDH, tcId is 52 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2635_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2635_ourpubkey[] = { 0x82, 0xe2, 0x13, 0x23, 0x31, 0x9a, 0xa8, 0x22, 0x9c, 0x9c, 0x49, 0xcb, 0x1f, 0xc9, 0x01, 0xf1, 0xfa, 0xad, 0xb7, 0xa3, 0x26, 0x8b, 0xcd, 0xdd, 0x9c, 0x98, 0xd4, 0xe1, 0x93, 0x7d, 0xf0, 0xcd, 0x08, 0xfd, 0x5e, 0x89, 0xea, 0xa0, 0x96, 0xfe, 0x9e, 0x5d, 0x7f, 0xfa, 0x60, 0x03, 0x91, 0x9c, 0x46, 0xdf, 0xda, 0xe7, 0x0c, 0x1c, 0xb7, 0x5e, }; static const unsigned char xdh_wei448_2635_privkey[] = { 0x50, 0xae, 0x60, 0x84, 0x9c, 0x94, 0x0c, 0x5c, 0xf7, 0x0b, 0x23, 0x72, 0x28, 0xdb, 0xfd, 0x34, 0xc2, 0xe1, 0x66, 0x06, 0xc7, 0xb8, 0xcd, 0x55, 0x08, 0xab, 0x38, 0xbb, 0x45, 0x97, 0xc3, 0x28, 0xc5, 0x8f, 0x0d, 0x3c, 0x8f, 0xdf, 0x9b, 0x9b, 0xbb, 0x21, 0xab, 0x85, 0x8f, 0x02, 0xb7, 0x39, 0xf2, 0xda, 0x73, 0xd8, 0x27, 0xdd, 0xcd, 0xb5, }; static const unsigned char xdh_wei448_2635_sharedsecret[] = { 0xf5, 0xaa, 0xa3, 0x37, 0x4e, 0x01, 0xc7, 0xb6, 0xa3, 0x68, 0x04, 0xd6, 0x28, 0x4d, 0xdf, 0xc6, 0x8e, 0x6f, 0x4f, 0x33, 0x09, 0x0d, 0xd3, 0x07, 0x5b, 0x67, 0xec, 0x9a, 0xf2, 0xfb, 0x4c, 0x99, 0x1d, 0x0d, 0xbd, 0x7f, 0x6e, 0xb3, 0xa1, 0x77, 0xfb, 0x65, 0x0a, 0x5a, 0x05, 0x5b, 0x8d, 0x6b, 0xc9, 0xa2, 0x18, 0xbb, 0xfb, 0xfe, 0x6f, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_2635 = { .name = "xdh_wei448_2635", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2635_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2635_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2635_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2635_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 52 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2636 for XDH, tcId is 53 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2636_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x80, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_2636_ourpubkey[] = { 0x85, 0x42, 0xe4, 0x26, 0xd1, 0x09, 0x2b, 0xfb, 0x6d, 0xaf, 0xb0, 0xad, 0xf7, 0xf6, 0x5c, 0xa4, 0x63, 0x07, 0x76, 0x42, 0x7a, 0x56, 0x47, 0x65, 0x8f, 0xfa, 0x12, 0x1b, 0xe1, 0xcd, 0xc4, 0xa5, 0xd9, 0x9d, 0x5a, 0x85, 0x6e, 0xb8, 0x21, 0x8e, 0x93, 0x26, 0xde, 0x04, 0xf1, 0xc4, 0xff, 0x79, 0x09, 0x33, 0xd1, 0x30, 0x93, 0x7f, 0x76, 0x1a, }; static const unsigned char xdh_wei448_2636_privkey[] = { 0xc8, 0x9c, 0x49, 0x16, 0xc0, 0xeb, 0x3c, 0x28, 0x7e, 0xb1, 0x02, 0xd4, 0x8f, 0x13, 0x88, 0x20, 0x11, 0x53, 0x28, 0xd8, 0x32, 0xaa, 0x80, 0xb6, 0x86, 0x39, 0x36, 0x94, 0xb8, 0xea, 0x1e, 0x89, 0xa0, 0x15, 0xbe, 0xd4, 0x4c, 0x30, 0x2b, 0x18, 0xc8, 0xa3, 0xc0, 0x94, 0x8a, 0xb4, 0x06, 0xad, 0xa5, 0x67, 0x29, 0xd5, 0x99, 0xc5, 0x5d, 0xb8, }; static const unsigned char xdh_wei448_2636_sharedsecret[] = { 0x81, 0x59, 0xaf, 0x5d, 0xbd, 0x95, 0x05, 0x8e, 0x4d, 0x92, 0x50, 0x4a, 0xac, 0xb1, 0x9c, 0xf0, 0x0f, 0xe2, 0xef, 0xbc, 0xa3, 0x96, 0x31, 0x1f, 0xa9, 0xe2, 0xee, 0x60, 0xca, 0x16, 0xeb, 0xcd, 0xae, 0xad, 0x05, 0xd1, 0xa7, 0x7a, 0x72, 0x92, 0x34, 0x77, 0x3e, 0xe4, 0x43, 0x76, 0x24, 0xe4, 0x25, 0x58, 0x0a, 0x4a, 0x55, 0xd5, 0xa4, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_2636 = { .name = "xdh_wei448_2636", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2636_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2636_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2636_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2636_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 53 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2637 for XDH, tcId is 54 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2637_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_2637_ourpubkey[] = { 0x88, 0xf3, 0xc2, 0x9e, 0xb5, 0x98, 0xf3, 0x37, 0xe8, 0xaa, 0xe3, 0xcb, 0x25, 0x03, 0xa3, 0x5d, 0xe2, 0x92, 0xe8, 0xc5, 0x81, 0x6e, 0x12, 0xb4, 0x4e, 0x98, 0x7d, 0xf8, 0xad, 0x65, 0x9f, 0xad, 0x62, 0x18, 0x53, 0x7e, 0xd4, 0x72, 0x2d, 0xcb, 0xd1, 0xe3, 0xf7, 0x94, 0x63, 0xba, 0x56, 0x3d, 0x19, 0x9e, 0xea, 0x7d, 0x08, 0x61, 0xda, 0xa7, }; static const unsigned char xdh_wei448_2637_privkey[] = { 0xb8, 0x1e, 0x63, 0x30, 0x65, 0x9a, 0x23, 0x39, 0x00, 0xa8, 0xee, 0xc1, 0x46, 0x16, 0xae, 0x0b, 0x77, 0x75, 0xda, 0x7d, 0x22, 0x5a, 0xd2, 0x81, 0xb9, 0x86, 0x29, 0x1f, 0xd4, 0x2c, 0x3b, 0x78, 0x0c, 0x40, 0x6e, 0xc7, 0xe9, 0xb2, 0xb2, 0xc8, 0xaf, 0x9b, 0x1f, 0x81, 0x58, 0x74, 0x7f, 0x7b, 0x6d, 0x82, 0x9f, 0x1c, 0x00, 0x51, 0xe1, 0xac, }; static const unsigned char xdh_wei448_2637_sharedsecret[] = { 0x21, 0x14, 0xb2, 0x60, 0x0a, 0xca, 0x27, 0x6c, 0xc6, 0xc2, 0x8c, 0xf3, 0x94, 0x7d, 0xbf, 0x3b, 0x98, 0xf0, 0x6a, 0xe4, 0xf7, 0xf5, 0x33, 0xa0, 0x9e, 0x22, 0xef, 0xa8, 0xc0, 0x5e, 0x91, 0xdd, 0x49, 0x22, 0xce, 0xba, 0xa6, 0x49, 0x17, 0xab, 0x12, 0xf4, 0x54, 0x22, 0xcc, 0xa8, 0x99, 0xef, 0xc2, 0xf9, 0x58, 0x0b, 0x2e, 0x9a, 0x6a, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2637 = { .name = "xdh_wei448_2637", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2637_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2637_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2637_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2637_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 54 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2638 for XDH, tcId is 55 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2638_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2638_ourpubkey[] = { 0x3d, 0xe5, 0xc0, 0xf0, 0x44, 0xaf, 0xbc, 0x66, 0xad, 0xe1, 0xab, 0x1f, 0x7c, 0xb3, 0xe4, 0x5f, 0xd4, 0x0b, 0xd7, 0xd9, 0x8c, 0x3f, 0x5d, 0x84, 0xde, 0xe5, 0xa0, 0xc2, 0xdc, 0x5d, 0xcd, 0xd8, 0xdf, 0x7a, 0x60, 0xa8, 0x99, 0x80, 0x66, 0x17, 0xfc, 0x69, 0x3d, 0x4c, 0x57, 0x36, 0xae, 0x5f, 0xf1, 0xfb, 0x40, 0xa7, 0x96, 0x92, 0x8c, 0xf7, }; static const unsigned char xdh_wei448_2638_privkey[] = { 0x2c, 0x7c, 0xd8, 0xe4, 0x13, 0x30, 0x95, 0x4c, 0xec, 0xdc, 0x9c, 0xaf, 0x7e, 0x07, 0x9a, 0x6f, 0x09, 0xe4, 0xb4, 0x06, 0x37, 0xdd, 0x6e, 0x40, 0x25, 0x2d, 0x77, 0x1f, 0x96, 0x54, 0x84, 0xa7, 0xfc, 0x20, 0x8e, 0x13, 0xfd, 0xc4, 0x92, 0x02, 0x5c, 0xab, 0xe9, 0x8a, 0xa5, 0x53, 0x36, 0xa7, 0xdb, 0xa3, 0x6a, 0xc3, 0xae, 0x4d, 0x83, 0x8f, }; static const unsigned char xdh_wei448_2638_sharedsecret[] = { 0x88, 0x74, 0x92, 0xe4, 0x55, 0x7c, 0x0b, 0x6e, 0xca, 0xb3, 0x4e, 0xcc, 0x6b, 0xdf, 0x06, 0x08, 0xfe, 0xbe, 0x33, 0xfb, 0x05, 0xb2, 0xaa, 0x4a, 0xb8, 0xd8, 0x9e, 0xc6, 0xb4, 0x76, 0x51, 0x5c, 0x90, 0xa6, 0x6e, 0x1c, 0xfd, 0x3c, 0xde, 0x5b, 0x32, 0x40, 0xef, 0x8f, 0xbe, 0x0b, 0xb5, 0x3c, 0xfa, 0x6b, 0x25, 0x32, 0xd0, 0xc9, 0x4c, 0xaf, }; static const wycheproof_xdh_test xdh_wei448_2638 = { .name = "xdh_wei448_2638", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2638_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2638_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2638_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2638_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 55 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2639 for XDH, tcId is 56 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2639_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2639_ourpubkey[] = { 0xb1, 0xa6, 0x57, 0x57, 0x76, 0xd9, 0x3e, 0x57, 0xa2, 0xb0, 0x3a, 0x63, 0xe6, 0x96, 0xb0, 0xd8, 0x38, 0xdc, 0xdd, 0xe0, 0xbb, 0x89, 0x9f, 0xf9, 0x1a, 0xd6, 0x40, 0x08, 0x3a, 0x9c, 0x5c, 0x63, 0x1a, 0x6b, 0xc2, 0xcd, 0x0a, 0x2b, 0x3d, 0xc4, 0x40, 0x34, 0x9c, 0xd5, 0x42, 0x90, 0x18, 0x98, 0xe5, 0x37, 0x7b, 0x50, 0x4d, 0x9d, 0x21, 0xa4, }; static const unsigned char xdh_wei448_2639_privkey[] = { 0x48, 0x04, 0xaf, 0xd0, 0x55, 0xec, 0x05, 0xf3, 0x35, 0xb7, 0xe3, 0xee, 0xbb, 0xde, 0x2a, 0x6d, 0xe0, 0x10, 0xce, 0x74, 0x95, 0xe6, 0xc0, 0xd0, 0x21, 0x73, 0xfa, 0x8c, 0x48, 0xbb, 0x49, 0x53, 0x75, 0xb7, 0xd1, 0x49, 0xc6, 0x7b, 0x92, 0xd2, 0x88, 0x5a, 0xcb, 0x8d, 0x8b, 0xbb, 0x51, 0xa3, 0x17, 0x45, 0x37, 0x88, 0x67, 0x1e, 0xfa, 0x9f, }; static const unsigned char xdh_wei448_2639_sharedsecret[] = { 0xd6, 0xa2, 0x72, 0x4d, 0xc9, 0xca, 0x15, 0x79, 0xd9, 0x4a, 0x8c, 0xc8, 0x81, 0x5a, 0x3e, 0xd3, 0x92, 0xb9, 0xe1, 0x0b, 0x39, 0xf5, 0x7c, 0x74, 0x7f, 0x7b, 0x2d, 0x84, 0xf5, 0x49, 0x69, 0x06, 0x2c, 0x8b, 0x86, 0x92, 0x9a, 0x1a, 0x12, 0xf4, 0x66, 0xd3, 0xef, 0x95, 0x98, 0xf1, 0x90, 0x47, 0x73, 0xa4, 0xee, 0x93, 0x8f, 0x0f, 0x5d, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_2639 = { .name = "xdh_wei448_2639", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2639_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2639_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2639_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2639_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 56 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2640 for XDH, tcId is 57 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2640_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2640_ourpubkey[] = { 0x1c, 0x51, 0x48, 0x8f, 0x73, 0xa0, 0x47, 0x89, 0x0a, 0xf9, 0xf6, 0x32, 0xb3, 0x74, 0x01, 0xf8, 0xe3, 0x9e, 0x43, 0x6b, 0x65, 0x7b, 0xbd, 0x6e, 0x75, 0xb4, 0x24, 0x2d, 0xd0, 0xfc, 0x89, 0x31, 0xea, 0x2e, 0x06, 0x5e, 0x12, 0xab, 0x7c, 0xcb, 0x36, 0xc8, 0x38, 0x12, 0x85, 0x1a, 0x0b, 0xed, 0xe0, 0x03, 0xad, 0xc0, 0x29, 0x25, 0xa6, 0xb6, }; static const unsigned char xdh_wei448_2640_privkey[] = { 0x78, 0xc1, 0xed, 0x99, 0x18, 0xd0, 0xaa, 0x85, 0xf8, 0x8a, 0xf3, 0x95, 0x54, 0x7a, 0x07, 0x10, 0x36, 0x95, 0xed, 0xcf, 0x5a, 0xf8, 0xff, 0xdf, 0x14, 0xae, 0xb9, 0x8d, 0xc0, 0x10, 0xa2, 0x38, 0xca, 0xe2, 0xd3, 0x9d, 0xb6, 0xa9, 0x3e, 0xc0, 0x66, 0x45, 0x53, 0x77, 0x65, 0x4d, 0x69, 0x78, 0x89, 0x0f, 0x55, 0x90, 0x07, 0x7d, 0xd2, 0xa9, }; static const unsigned char xdh_wei448_2640_sharedsecret[] = { 0x6d, 0xe6, 0x08, 0x14, 0x85, 0xf0, 0x8c, 0x30, 0x27, 0x5c, 0x2a, 0xcc, 0x64, 0xd9, 0x25, 0xc4, 0xb1, 0xde, 0xac, 0x3f, 0xe4, 0xaa, 0x36, 0x13, 0xeb, 0x83, 0xa5, 0xff, 0x4c, 0x19, 0x15, 0xd4, 0xed, 0x06, 0xae, 0xde, 0xbe, 0xc3, 0x65, 0x92, 0xfa, 0xd3, 0x72, 0xe4, 0x69, 0x4d, 0x28, 0x05, 0x8b, 0x14, 0x24, 0x5c, 0xd4, 0x9f, 0xf1, 0xb2, }; static const wycheproof_xdh_test xdh_wei448_2640 = { .name = "xdh_wei448_2640", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2640_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2640_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2640_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2640_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 57 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2641 for XDH, tcId is 58 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2641_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2641_ourpubkey[] = { 0x49, 0xf3, 0xd7, 0x5f, 0xfe, 0x40, 0xd1, 0xfd, 0x31, 0x02, 0x0c, 0x4a, 0x75, 0xf8, 0xa2, 0xed, 0xcd, 0xb7, 0xc5, 0x91, 0x16, 0x23, 0x07, 0x62, 0x7c, 0x87, 0xeb, 0xc5, 0x95, 0x43, 0xc6, 0xa8, 0x57, 0x3c, 0x95, 0xfa, 0xb5, 0xed, 0xac, 0xb5, 0x9a, 0x72, 0x34, 0x95, 0x04, 0x73, 0x14, 0x1c, 0x92, 0x81, 0xa7, 0x75, 0x84, 0x5a, 0xcd, 0x59, }; static const unsigned char xdh_wei448_2641_privkey[] = { 0xec, 0xbb, 0x1b, 0xbb, 0x54, 0x5d, 0xf1, 0xf0, 0x5b, 0xb7, 0x29, 0x79, 0x46, 0x29, 0x13, 0xa3, 0x6b, 0x85, 0x69, 0xd3, 0xe3, 0x94, 0xa9, 0xc6, 0x61, 0xca, 0x3f, 0x6b, 0x16, 0x44, 0xc3, 0x5e, 0xbe, 0x36, 0xdc, 0x58, 0xcc, 0x7d, 0xd0, 0x54, 0xe2, 0xa4, 0x46, 0xb9, 0x96, 0x77, 0xc2, 0x8d, 0xec, 0xc3, 0x50, 0xd3, 0x83, 0xc6, 0x69, 0x94, }; static const unsigned char xdh_wei448_2641_sharedsecret[] = { 0xf7, 0x64, 0xdf, 0xa3, 0xbc, 0x00, 0x15, 0xfc, 0xb9, 0x78, 0x39, 0x0c, 0xc3, 0xd2, 0x9c, 0x8d, 0x47, 0xcc, 0x8d, 0x61, 0xcf, 0x41, 0x22, 0x75, 0x4b, 0xf9, 0x05, 0xd1, 0x10, 0x3e, 0xa5, 0xf6, 0x64, 0xf7, 0x30, 0x01, 0x1e, 0xf9, 0x7c, 0xd3, 0x2c, 0x25, 0x01, 0xd3, 0x13, 0xe4, 0x56, 0xff, 0xef, 0xb9, 0xe4, 0xcb, 0xcc, 0x40, 0x13, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2641 = { .name = "xdh_wei448_2641", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2641_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2641_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2641_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2641_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 58 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2642 for XDH, tcId is 59 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2642_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2642_ourpubkey[] = { 0x9f, 0x5e, 0x0d, 0xd4, 0x80, 0x2a, 0xfc, 0xba, 0x95, 0x59, 0xb5, 0x67, 0x0b, 0xf9, 0x8f, 0x32, 0x9a, 0xb4, 0xc7, 0xbf, 0x9c, 0x51, 0x8a, 0x93, 0x20, 0xd2, 0x1d, 0x49, 0x5a, 0x0a, 0xd6, 0x24, 0xda, 0x60, 0x04, 0x49, 0x31, 0xf7, 0x8d, 0x64, 0x0f, 0x85, 0x56, 0xc0, 0xb4, 0x00, 0x6b, 0x94, 0xa4, 0x86, 0x77, 0x48, 0xfa, 0xb1, 0xea, 0x48, }; static const unsigned char xdh_wei448_2642_privkey[] = { 0x84, 0xc0, 0xd8, 0x06, 0xee, 0xd4, 0xda, 0x2f, 0xfc, 0xac, 0xa8, 0x8c, 0x7f, 0x03, 0x89, 0x05, 0x9f, 0xff, 0x0e, 0xe8, 0xf5, 0x80, 0xd0, 0x80, 0xe9, 0x67, 0x2a, 0x44, 0x1f, 0x5a, 0xb1, 0x90, 0x69, 0xfe, 0xf6, 0x68, 0xab, 0x20, 0xd2, 0x4f, 0x04, 0x68, 0xa5, 0xc3, 0xe5, 0x49, 0xa1, 0x70, 0x12, 0x12, 0x21, 0x34, 0xe0, 0x27, 0xb4, 0x84, }; static const unsigned char xdh_wei448_2642_sharedsecret[] = { 0xa1, 0x05, 0xe0, 0x28, 0x39, 0x41, 0x54, 0x50, 0x6e, 0xc0, 0x7c, 0x69, 0x6f, 0xe6, 0x35, 0x84, 0x3b, 0x8a, 0x53, 0x5b, 0x03, 0xd3, 0x91, 0x1d, 0xc5, 0x27, 0xc4, 0x33, 0xea, 0x4e, 0x24, 0x4e, 0xbf, 0xc7, 0xba, 0x07, 0x93, 0xac, 0x14, 0x66, 0xf3, 0x21, 0x53, 0xc1, 0x6c, 0xa1, 0xdc, 0xe8, 0xa5, 0xad, 0xec, 0xb5, 0xee, 0xcb, 0x82, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2642 = { .name = "xdh_wei448_2642", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2642_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2642_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2642_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2642_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 59 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2643 for XDH, tcId is 60 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2643_peerpubkey[] = { 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2643_ourpubkey[] = { 0x24, 0x4f, 0x69, 0xc7, 0xeb, 0x28, 0xd5, 0x2c, 0xc5, 0xbd, 0x54, 0x7b, 0xaa, 0x31, 0x13, 0xeb, 0x2f, 0x98, 0x11, 0xe2, 0x7e, 0x2e, 0x52, 0x16, 0xcd, 0x76, 0x9d, 0xb8, 0x48, 0xea, 0x80, 0xd6, 0x26, 0x15, 0x0f, 0xd7, 0xa8, 0x33, 0x33, 0xdd, 0xc0, 0xb4, 0x8f, 0xb1, 0x0b, 0x0d, 0x23, 0x20, 0xa2, 0xca, 0xe3, 0x77, 0x77, 0x3d, 0xdc, 0x3b, }; static const unsigned char xdh_wei448_2643_privkey[] = { 0xbc, 0x7b, 0xce, 0x37, 0x43, 0x4c, 0x0a, 0x1d, 0x05, 0xef, 0xf4, 0x28, 0x03, 0x4f, 0x75, 0xed, 0x74, 0x54, 0xed, 0xe6, 0xb2, 0xa6, 0xe3, 0x4e, 0xd4, 0xfc, 0xed, 0xc0, 0x50, 0x34, 0x9c, 0x86, 0x6c, 0x40, 0xa2, 0x7c, 0x27, 0x89, 0x8a, 0xfe, 0xc4, 0x1b, 0x3b, 0x47, 0x7f, 0x0d, 0xf5, 0xc5, 0x35, 0x6e, 0x57, 0xd7, 0x56, 0x2c, 0xdd, 0xa5, }; static const unsigned char xdh_wei448_2643_sharedsecret[] = { 0x96, 0x3f, 0xf8, 0xe5, 0xea, 0x53, 0x41, 0x78, 0xe1, 0x92, 0x2c, 0xc0, 0x6c, 0x63, 0x83, 0x67, 0xc2, 0xc4, 0x69, 0x0a, 0xba, 0x7e, 0x4a, 0xaa, 0xb8, 0x34, 0x22, 0x10, 0xb9, 0x03, 0x57, 0x27, 0x06, 0x27, 0x62, 0x63, 0x1f, 0x79, 0xe7, 0x09, 0xd2, 0xba, 0xf0, 0x64, 0x6f, 0x0d, 0x9a, 0x37, 0xdf, 0x02, 0xd5, 0x31, 0x79, 0x1b, 0xc9, 0x40, }; static const wycheproof_xdh_test xdh_wei448_2643 = { .name = "xdh_wei448_2643", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2643_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2643_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2643_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2643_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 60 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2644 for XDH, tcId is 61 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2644_peerpubkey[] = { 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2644_ourpubkey[] = { 0xf1, 0x69, 0xaf, 0x5f, 0x84, 0x61, 0x41, 0x81, 0x5e, 0xe8, 0x7a, 0x9d, 0x6c, 0x64, 0x65, 0xb1, 0x77, 0x31, 0xa4, 0x27, 0x39, 0x30, 0x05, 0x47, 0x17, 0x37, 0xc9, 0xa7, 0x3e, 0xaf, 0xce, 0x27, 0xaa, 0x7b, 0x96, 0x98, 0x12, 0x65, 0xee, 0xf6, 0x02, 0xe1, 0xe9, 0x46, 0xd4, 0xb0, 0xb9, 0x5e, 0x88, 0x0d, 0x2a, 0x8f, 0xbc, 0x97, 0x5b, 0xba, }; static const unsigned char xdh_wei448_2644_privkey[] = { 0xa8, 0x9a, 0x7e, 0x06, 0x07, 0x36, 0xdb, 0x3c, 0xb3, 0xe3, 0x7e, 0xe3, 0xb5, 0xdb, 0x1a, 0x7c, 0xe4, 0x51, 0x66, 0x74, 0xbe, 0xf7, 0x15, 0xe8, 0xf8, 0x36, 0xf0, 0x4f, 0x7e, 0x09, 0x57, 0xb7, 0xe5, 0x0e, 0x9c, 0xec, 0x37, 0x70, 0x07, 0xa0, 0x8c, 0x23, 0x43, 0x8d, 0xce, 0x6c, 0x32, 0xf4, 0x09, 0xd7, 0xbb, 0x89, 0x4b, 0x40, 0x4f, 0xe6, }; static const unsigned char xdh_wei448_2644_sharedsecret[] = { 0x29, 0x72, 0x3d, 0x84, 0xea, 0xef, 0xd5, 0x3b, 0x8e, 0xb6, 0xa5, 0x19, 0x4f, 0xd3, 0xa4, 0x01, 0xc7, 0xb6, 0xac, 0x7c, 0x16, 0x65, 0xa5, 0xe9, 0x7e, 0x28, 0x40, 0x9c, 0x9c, 0x75, 0xc9, 0xba, 0xe8, 0x04, 0x9b, 0xc2, 0x83, 0x8b, 0x2b, 0x9b, 0xd4, 0xdc, 0xda, 0xf6, 0x19, 0x2a, 0x9e, 0x30, 0x80, 0xc0, 0xaa, 0xc2, 0x21, 0x9e, 0xe8, 0x11, }; static const wycheproof_xdh_test xdh_wei448_2644 = { .name = "xdh_wei448_2644", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2644_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2644_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2644_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2644_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 61 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2645 for XDH, tcId is 62 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2645_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2645_ourpubkey[] = { 0xbf, 0xca, 0xc7, 0x0a, 0xc1, 0xa9, 0x36, 0xb4, 0xe9, 0x6e, 0x19, 0xbb, 0xe1, 0xfa, 0x3d, 0xd8, 0xad, 0xd7, 0x23, 0xfd, 0x4b, 0x1e, 0x1c, 0x62, 0x1e, 0xd7, 0xd6, 0x6d, 0xef, 0x90, 0x6a, 0x88, 0x9a, 0x90, 0x83, 0x13, 0xdc, 0x1a, 0xa4, 0xb3, 0xa4, 0x08, 0x38, 0x69, 0xea, 0xed, 0xf7, 0xcc, 0x48, 0x0f, 0x80, 0x40, 0xcf, 0xf0, 0xe8, 0xa5, }; static const unsigned char xdh_wei448_2645_privkey[] = { 0x68, 0x27, 0x3d, 0x87, 0x9a, 0x2c, 0x85, 0xf9, 0x8e, 0x8c, 0x05, 0x1b, 0xda, 0xfc, 0xda, 0xec, 0x09, 0x7b, 0x07, 0x62, 0x2d, 0xea, 0x9a, 0xc6, 0x78, 0x4e, 0x36, 0x15, 0xf2, 0x74, 0x38, 0xea, 0x75, 0xcd, 0x4e, 0xff, 0xbb, 0xab, 0xe7, 0x05, 0xf6, 0x63, 0xa2, 0x44, 0x6a, 0xb8, 0xa2, 0x31, 0x0f, 0x30, 0xf9, 0x05, 0x28, 0xf5, 0x75, 0xf2, }; static const unsigned char xdh_wei448_2645_sharedsecret[] = { 0x56, 0x50, 0xaf, 0x69, 0xcd, 0x01, 0x61, 0x70, 0xac, 0x1d, 0x5b, 0xbe, 0x84, 0xf0, 0x3d, 0x47, 0xe1, 0xfe, 0x89, 0xc7, 0xe2, 0xda, 0xed, 0xbe, 0xa8, 0xf0, 0x26, 0x54, 0xb7, 0x3e, 0xfe, 0xdb, 0xfe, 0xcd, 0xcd, 0x92, 0x5d, 0x79, 0x81, 0xa9, 0xe9, 0xbd, 0x2f, 0x69, 0x11, 0x7f, 0x64, 0x7f, 0xe9, 0xf5, 0x08, 0x23, 0x3b, 0x68, 0xd3, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_2645 = { .name = "xdh_wei448_2645", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2645_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2645_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2645_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2645_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 62 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2646 for XDH, tcId is 63 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2646_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2646_ourpubkey[] = { 0xa1, 0x5b, 0xca, 0x79, 0xc4, 0x5b, 0x92, 0x6c, 0xeb, 0x5f, 0x8d, 0x9e, 0x15, 0x86, 0xf4, 0x11, 0x9d, 0xbf, 0xcc, 0x8b, 0x49, 0xd2, 0x37, 0x50, 0xf9, 0x5b, 0xff, 0xac, 0xc9, 0x2a, 0x2a, 0x35, 0x63, 0x75, 0x83, 0x87, 0xb0, 0x05, 0xeb, 0x66, 0x80, 0xc7, 0x80, 0x60, 0x85, 0x0e, 0xcd, 0x2c, 0x6f, 0x82, 0x2a, 0x2a, 0x96, 0x71, 0x0f, 0xd7, }; static const unsigned char xdh_wei448_2646_privkey[] = { 0xac, 0x23, 0xf2, 0xc2, 0x9d, 0xd7, 0x91, 0x0e, 0xbd, 0xb4, 0x7e, 0xfc, 0x5c, 0xcb, 0x34, 0x5d, 0xc9, 0x39, 0x2b, 0xb5, 0xde, 0xf5, 0x01, 0x8d, 0xc8, 0xcb, 0x41, 0x06, 0x35, 0xf5, 0x6e, 0x63, 0xab, 0x92, 0xbc, 0xda, 0xc4, 0x17, 0x7c, 0x6b, 0xd3, 0x45, 0x0b, 0x09, 0x84, 0x93, 0xb6, 0x8b, 0xb5, 0x4e, 0xa4, 0x7b, 0x76, 0x93, 0x34, 0xc4, }; static const unsigned char xdh_wei448_2646_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2646 = { .name = "xdh_wei448_2646", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2646_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2646_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2646_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2646_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 63 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2647 for XDH, tcId is 64 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2647_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2647_ourpubkey[] = { 0x2d, 0xec, 0xcf, 0xaf, 0x23, 0xca, 0xa7, 0x59, 0x05, 0x3a, 0x1d, 0xcd, 0xe3, 0x3b, 0xbd, 0x0f, 0xc7, 0x98, 0x1e, 0x4f, 0xd1, 0xab, 0x79, 0x02, 0xf8, 0x47, 0x74, 0xa1, 0xe6, 0x37, 0x78, 0xee, 0x2f, 0xef, 0xf1, 0xa6, 0x34, 0xaf, 0x1a, 0x0f, 0x43, 0x9a, 0xdd, 0x2c, 0xa9, 0x99, 0xb6, 0x88, 0x4b, 0xd1, 0x5f, 0x48, 0x80, 0xb9, 0x1a, 0xac, }; static const unsigned char xdh_wei448_2647_privkey[] = { 0x28, 0x5e, 0x19, 0x31, 0x45, 0xa1, 0x7f, 0x00, 0xde, 0xa2, 0x19, 0x49, 0xb0, 0xe6, 0x00, 0xc0, 0x40, 0xe4, 0xb9, 0x2d, 0xcd, 0x85, 0xe1, 0x42, 0x48, 0x31, 0x72, 0x6d, 0x45, 0xe7, 0x65, 0x74, 0xaa, 0xf2, 0xf3, 0xb8, 0x2c, 0xd0, 0xe3, 0xb8, 0x7f, 0xed, 0xd8, 0x3e, 0xaf, 0xb2, 0x42, 0xe0, 0xe7, 0xa8, 0x97, 0x44, 0x2d, 0xd4, 0xda, 0xdb, }; static const unsigned char xdh_wei448_2647_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2647 = { .name = "xdh_wei448_2647", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2647_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2647_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2647_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2647_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key with low order, tcId is 64 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2648 for XDH, tcId is 65 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2648_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2648_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2648_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2648_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2648 = { .name = "xdh_wei448_2648", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2648_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2648_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2648_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2648_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 65 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2649 for XDH, tcId is 66 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2649_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2649_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2649_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2649_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2649 = { .name = "xdh_wei448_2649", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2649_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2649_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2649_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2649_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 66 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2650 for XDH, tcId is 67 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2650_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2650_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2650_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2650_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2650 = { .name = "xdh_wei448_2650", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2650_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2650_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2650_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2650_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 67 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2651 for XDH, tcId is 68 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2651_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2651_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2651_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2651_sharedsecret[] = { 0x7a, 0xd5, 0x21, 0x0b, 0x70, 0xf2, 0xa7, 0xf4, 0xf2, 0xfe, 0x30, 0x6c, 0xe0, 0x98, 0xe3, 0xad, 0x30, 0x65, 0xca, 0xfd, 0x6f, 0x5a, 0x8d, 0x3e, 0x04, 0xdf, 0x33, 0xda, 0x71, 0x89, 0xd4, 0x49, 0xba, 0xcc, 0x85, 0x64, 0xed, 0x5b, 0x9f, 0x15, 0x32, 0xe8, 0x73, 0x74, 0xea, 0xe9, 0xd9, 0x51, 0xf4, 0x5c, 0x38, 0x3b, 0xa9, 0xd8, 0x05, 0x85, }; static const wycheproof_xdh_test xdh_wei448_2651 = { .name = "xdh_wei448_2651", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2651_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2651_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2651_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2651_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 68 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2652 for XDH, tcId is 69 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2652_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2652_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2652_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2652_sharedsecret[] = { 0x25, 0xa8, 0xe0, 0x34, 0xc3, 0x96, 0x3e, 0x07, 0x65, 0xfb, 0x59, 0xe6, 0xb8, 0x85, 0x58, 0xcd, 0x67, 0x4a, 0xc2, 0xdd, 0x2b, 0x31, 0x02, 0x21, 0xec, 0xf3, 0x3d, 0x16, 0x8b, 0x9f, 0xaf, 0x5f, 0xe9, 0x42, 0x53, 0xaf, 0x64, 0x29, 0x7b, 0x9a, 0x06, 0x1b, 0xfa, 0x93, 0xd6, 0xe3, 0xeb, 0x91, 0x9a, 0x51, 0x58, 0x6f, 0xeb, 0x95, 0x5c, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_2652 = { .name = "xdh_wei448_2652", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2652_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2652_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2652_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2652_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 69 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2653 for XDH, tcId is 70 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2653_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2653_ourpubkey[] = { 0x81, 0x36, 0xdf, 0x8f, 0xd4, 0xe9, 0xc5, 0xcb, 0x03, 0x3f, 0x13, 0x5e, 0x46, 0x94, 0x3b, 0xcc, 0x73, 0x34, 0x58, 0x0a, 0xb4, 0xd6, 0xb5, 0xf7, 0x22, 0xd8, 0x2a, 0x2c, 0x35, 0x1d, 0x1e, 0xaa, 0xe8, 0x2d, 0xff, 0xfd, 0x19, 0x3b, 0xe5, 0x93, 0x8f, 0xaa, 0x40, 0x74, 0x7c, 0xb4, 0xab, 0x19, 0x70, 0x43, 0x61, 0x62, 0x32, 0x76, 0xde, 0xf2, }; static const unsigned char xdh_wei448_2653_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_2653_sharedsecret[] = { 0x85, 0x6b, 0x87, 0x07, 0xb1, 0x6e, 0x1b, 0x21, 0xdf, 0xc5, 0x47, 0xfd, 0xb0, 0x4c, 0x61, 0xa4, 0xae, 0xd9, 0xf9, 0x00, 0x1f, 0x3f, 0x26, 0x40, 0x49, 0x01, 0xe9, 0xba, 0x30, 0x93, 0x3c, 0xdd, 0x7c, 0xa9, 0xe2, 0xa0, 0xe5, 0x77, 0x00, 0x58, 0x8e, 0xb8, 0x57, 0x63, 0x12, 0xea, 0xd8, 0xee, 0x57, 0x91, 0xa8, 0xec, 0xff, 0x32, 0xef, 0xaa, }; static const wycheproof_xdh_test xdh_wei448_2653 = { .name = "xdh_wei448_2653", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2653_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2653_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2653_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2653_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 70 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2654 for XDH, tcId is 71 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2654_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2654_ourpubkey[] = { 0xa8, 0xb5, 0x44, 0xf2, 0x11, 0x49, 0x9e, 0x4a, 0x52, 0x30, 0x36, 0x59, 0x57, 0x37, 0xb6, 0x8e, 0x76, 0x42, 0xc3, 0x42, 0xc4, 0x50, 0x72, 0xb2, 0xc3, 0x9a, 0xd6, 0x42, 0x19, 0x32, 0x99, 0x86, 0xa7, 0xe4, 0x4b, 0x40, 0x5e, 0xd8, 0x4f, 0xf9, 0xe3, 0x30, 0x40, 0x79, 0x83, 0x1b, 0xf3, 0x7b, 0x66, 0xa7, 0x67, 0xe2, 0xd3, 0x2b, 0x14, 0x09, }; static const unsigned char xdh_wei448_2654_privkey[] = { 0xb8, 0xa9, 0xb9, 0xf6, 0xf1, 0xaf, 0x4f, 0x15, 0x25, 0xa5, 0x3b, 0x89, 0x5c, 0x3b, 0xf6, 0x4f, 0x23, 0x16, 0x1f, 0x67, 0x0f, 0xcf, 0xf2, 0xfb, 0xa7, 0x9b, 0x8f, 0xda, 0xc0, 0x73, 0x95, 0xee, 0x99, 0xbf, 0x46, 0x27, 0x8f, 0x3e, 0x94, 0x8a, 0x55, 0x67, 0x07, 0xcd, 0x2a, 0x88, 0x9b, 0xae, 0x69, 0x44, 0x94, 0x96, 0x29, 0x5c, 0xc5, 0xa2, }; static const unsigned char xdh_wei448_2654_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2654 = { .name = "xdh_wei448_2654", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2654_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2654_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2654_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2654_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439, tcId is 71 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2655 for XDH, tcId is 72 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2655_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2655_ourpubkey[] = { 0xb7, 0x74, 0x67, 0xd3, 0xa8, 0x98, 0x40, 0xc8, 0xe5, 0xf2, 0xde, 0x5f, 0x89, 0x44, 0x01, 0x41, 0x03, 0x22, 0xce, 0x54, 0x30, 0xfe, 0x19, 0x53, 0x2b, 0x75, 0x0c, 0xc3, 0x88, 0x9f, 0x8d, 0xb2, 0x84, 0x9d, 0xfe, 0x28, 0xbc, 0x5d, 0x92, 0x77, 0xbd, 0x24, 0x72, 0xd5, 0xfa, 0xff, 0x9f, 0xd2, 0x13, 0x53, 0xcc, 0x93, 0xa6, 0x55, 0x5b, 0x7b, }; static const unsigned char xdh_wei448_2655_privkey[] = { 0xe0, 0xb3, 0x2c, 0xd5, 0xd6, 0x02, 0xcb, 0x78, 0xe5, 0x4c, 0x87, 0xfe, 0x29, 0xeb, 0x60, 0x75, 0x88, 0x44, 0x63, 0x33, 0x4b, 0x25, 0x1d, 0xe2, 0x03, 0xf4, 0xc4, 0x6c, 0xb6, 0x8a, 0xc2, 0x47, 0x83, 0x91, 0xf0, 0xa3, 0xf1, 0x9c, 0xcd, 0xe5, 0xf8, 0xec, 0x64, 0x0c, 0xc7, 0xb5, 0x88, 0x77, 0xb4, 0x3e, 0x5b, 0x8b, 0x57, 0x8b, 0x40, 0xd7, }; static const unsigned char xdh_wei448_2655_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2655 = { .name = "xdh_wei448_2655", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2655_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2655_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2655_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2655_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365440, tcId is 72 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2656 for XDH, tcId is 73 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2656_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2656_ourpubkey[] = { 0xa4, 0xfa, 0xbb, 0xfa, 0x23, 0x25, 0xcc, 0x82, 0x83, 0x52, 0x8e, 0x1a, 0xbb, 0x54, 0x90, 0xb8, 0xfb, 0x88, 0x7e, 0x80, 0xc3, 0x28, 0x05, 0x6b, 0x9a, 0x8a, 0x18, 0xab, 0xca, 0x63, 0x2d, 0xa8, 0x75, 0xa4, 0xb7, 0x0e, 0xc4, 0xd6, 0x1c, 0x02, 0x49, 0x9c, 0x60, 0x01, 0xb2, 0xd7, 0xf5, 0x34, 0xb9, 0xb6, 0x40, 0x8a, 0x63, 0x7f, 0x3f, 0x18, }; static const unsigned char xdh_wei448_2656_privkey[] = { 0x64, 0x0b, 0x78, 0x20, 0xd3, 0xc9, 0xbc, 0x49, 0xd6, 0x85, 0xfb, 0x80, 0x74, 0xfe, 0x98, 0x42, 0x52, 0x2f, 0x9c, 0x5a, 0xd3, 0x34, 0xda, 0x17, 0xa6, 0x47, 0xc6, 0xbd, 0xae, 0x72, 0x45, 0x4c, 0xcd, 0x25, 0xca, 0x33, 0x72, 0xb6, 0x10, 0xeb, 0xf8, 0x9c, 0x0a, 0x33, 0x6b, 0x4f, 0xd5, 0x9a, 0x82, 0xf6, 0x87, 0x5f, 0x37, 0xdc, 0x86, 0xe4, }; static const unsigned char xdh_wei448_2656_sharedsecret[] = { 0x48, 0x68, 0x06, 0x12, 0x6f, 0xa8, 0xfd, 0x7b, 0x25, 0x59, 0x15, 0x56, 0x0d, 0x4d, 0x54, 0xad, 0xa9, 0xac, 0xc0, 0x5b, 0x1b, 0x54, 0x64, 0xcf, 0x7b, 0x5f, 0x11, 0x67, 0x1f, 0xf0, 0x07, 0x6b, 0x2a, 0x38, 0x88, 0x65, 0x28, 0x55, 0xc2, 0x81, 0x8b, 0xc2, 0x8b, 0xa3, 0xc7, 0xb3, 0x44, 0xcb, 0x10, 0x06, 0x14, 0x3b, 0xfe, 0x1a, 0x97, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_2656 = { .name = "xdh_wei448_2656", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2656_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2656_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2656_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2656_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 73 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2657 for XDH, tcId is 74 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2657_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2657_ourpubkey[] = { 0xc1, 0x74, 0x62, 0xad, 0x9f, 0xcd, 0xa2, 0x61, 0x1b, 0xf3, 0xdc, 0x08, 0xd1, 0x06, 0x83, 0x19, 0x34, 0xf6, 0xd4, 0xd4, 0xe2, 0x39, 0xc6, 0x91, 0xd4, 0x43, 0x9a, 0x76, 0x8a, 0x12, 0xcc, 0x65, 0x77, 0x5b, 0xdb, 0xf0, 0x80, 0xc0, 0x8a, 0x8d, 0x56, 0x49, 0x08, 0x3a, 0x30, 0x91, 0x77, 0x34, 0xdc, 0x31, 0x94, 0x53, 0x02, 0x87, 0x84, 0xeb, }; static const unsigned char xdh_wei448_2657_privkey[] = { 0x04, 0x51, 0x6d, 0xd7, 0x0b, 0xfe, 0x73, 0x92, 0xde, 0x61, 0xcf, 0x35, 0x2e, 0xce, 0x15, 0xc2, 0x3e, 0x2a, 0x64, 0x21, 0x52, 0xfe, 0x40, 0xe9, 0x62, 0xc0, 0x53, 0x83, 0xd4, 0xf8, 0xeb, 0xd4, 0x54, 0x82, 0xe1, 0xb3, 0xc0, 0x4a, 0x36, 0x64, 0x45, 0x7f, 0x98, 0xdf, 0xa8, 0x37, 0x19, 0xa5, 0x28, 0x06, 0x39, 0xc5, 0xa1, 0x2d, 0xcb, 0x94, }; static const unsigned char xdh_wei448_2657_sharedsecret[] = { 0xcc, 0x0e, 0xef, 0x36, 0x96, 0xa6, 0x2c, 0xbf, 0xe4, 0xc5, 0x85, 0x51, 0x4a, 0x90, 0xa7, 0xe1, 0x2e, 0xc2, 0x4e, 0x10, 0x1e, 0x84, 0x58, 0xeb, 0xfb, 0xe7, 0x5d, 0x9d, 0xb7, 0xa8, 0x26, 0x60, 0x74, 0x16, 0xd3, 0xf2, 0xa6, 0x9d, 0x7a, 0xc6, 0xc0, 0x3f, 0x27, 0xe1, 0xe2, 0x25, 0xee, 0x75, 0x67, 0x72, 0x78, 0xfc, 0x2f, 0x26, 0xdd, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2657 = { .name = "xdh_wei448_2657", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2657_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2657_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2657_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2657_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 74 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2658 for XDH, tcId is 75 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2658_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2658_ourpubkey[] = { 0x7d, 0xc6, 0xb8, 0x6a, 0x17, 0xd6, 0x5c, 0x7b, 0x9c, 0x56, 0xce, 0x89, 0x32, 0x81, 0xe5, 0x5f, 0x25, 0xdb, 0xce, 0x2b, 0x53, 0x16, 0x5b, 0x3f, 0x7c, 0xf4, 0x0b, 0x00, 0xde, 0xb9, 0x8f, 0x97, 0x36, 0xf6, 0x9b, 0xe3, 0x65, 0xde, 0x85, 0x18, 0x49, 0x7c, 0xbd, 0x60, 0x67, 0xc8, 0x43, 0xe4, 0x62, 0xdf, 0xfd, 0x33, 0x39, 0x70, 0xd4, 0x00, }; static const unsigned char xdh_wei448_2658_privkey[] = { 0xfc, 0xa7, 0x84, 0xf0, 0x39, 0x79, 0x8b, 0xe5, 0x96, 0xaf, 0xee, 0xda, 0xec, 0x5b, 0x38, 0x68, 0xf0, 0xc8, 0x29, 0x89, 0x27, 0x72, 0x1f, 0xb8, 0x2a, 0xd0, 0x45, 0x46, 0xb7, 0xe4, 0xc4, 0xf4, 0x2f, 0xa1, 0xfc, 0x3f, 0xc7, 0xd1, 0x2f, 0x43, 0xf5, 0xa2, 0xe8, 0xa9, 0x63, 0x62, 0xfc, 0xc7, 0x1a, 0x34, 0xb4, 0x4b, 0x55, 0x9e, 0x0b, 0x96, }; static const unsigned char xdh_wei448_2658_sharedsecret[] = { 0xa7, 0x29, 0xe6, 0xec, 0xe3, 0xdb, 0x18, 0xb7, 0xe9, 0x42, 0x3b, 0xe4, 0xe7, 0xfa, 0xe1, 0x8c, 0xaa, 0x29, 0x1e, 0x61, 0xce, 0x84, 0xb6, 0x08, 0x56, 0x9a, 0xb4, 0x61, 0xb2, 0x70, 0x72, 0x4f, 0xd9, 0x2f, 0x3e, 0x2b, 0x80, 0x86, 0xfe, 0x06, 0x76, 0x73, 0xca, 0x7a, 0xc0, 0x53, 0x57, 0xee, 0x70, 0x1d, 0x69, 0xe4, 0x05, 0x6d, 0x5b, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_2658 = { .name = "xdh_wei448_2658", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2658_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2658_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2658_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2658_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 75 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2659 for XDH, tcId is 76 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2659_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2659_ourpubkey[] = { 0xcb, 0x3c, 0x3a, 0x8a, 0xb6, 0xab, 0x1a, 0x13, 0xc8, 0xb5, 0xef, 0x5d, 0xaf, 0xb6, 0xef, 0xf2, 0x9a, 0x44, 0xb6, 0xde, 0xa2, 0xa1, 0x66, 0xe3, 0x8f, 0xc8, 0xc9, 0xfd, 0x64, 0x37, 0x44, 0x6a, 0x11, 0xb2, 0x75, 0x11, 0x7c, 0x7f, 0xe7, 0xed, 0x2e, 0x20, 0xec, 0xb9, 0x60, 0x63, 0x65, 0x42, 0x65, 0x6b, 0x06, 0xd2, 0xcf, 0x85, 0xbc, 0x83, }; static const unsigned char xdh_wei448_2659_privkey[] = { 0x74, 0x2b, 0x8c, 0x0b, 0x0a, 0xb0, 0x10, 0x4a, 0x9e, 0xf9, 0x63, 0x4c, 0x0a, 0xad, 0x02, 0x3f, 0x35, 0xe4, 0x1f, 0xb9, 0x53, 0x71, 0x71, 0x21, 0xce, 0x4c, 0x2a, 0xeb, 0xc1, 0xa1, 0x28, 0xe7, 0xc0, 0x43, 0x1c, 0xd1, 0x34, 0x7a, 0x62, 0x41, 0x68, 0x5f, 0x71, 0x74, 0xa8, 0x51, 0x2d, 0x41, 0x7e, 0xba, 0xaa, 0x46, 0xee, 0x78, 0x0a, 0x8a, }; static const unsigned char xdh_wei448_2659_sharedsecret[] = { 0xd9, 0x2b, 0x02, 0xd7, 0xbb, 0x99, 0x52, 0xf4, 0xca, 0x82, 0x6b, 0x2b, 0x51, 0xf1, 0xa3, 0xd4, 0xde, 0x1f, 0xd4, 0x45, 0x9f, 0x0d, 0x01, 0x98, 0x53, 0xf3, 0xa9, 0x60, 0xd5, 0x4f, 0x33, 0x54, 0xd8, 0xe4, 0x0f, 0xb2, 0x8d, 0x1b, 0xe6, 0x56, 0x37, 0xbb, 0x7d, 0xba, 0x05, 0x71, 0xff, 0x83, 0x79, 0x7b, 0x71, 0x06, 0xc7, 0x49, 0x74, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2659 = { .name = "xdh_wei448_2659", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2659_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2659_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2659_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2659_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 76 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2660 for XDH, tcId is 77 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2660_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2660_ourpubkey[] = { 0xe0, 0x6b, 0xa4, 0xcc, 0x8e, 0xd7, 0xdf, 0xbf, 0xc0, 0x70, 0x57, 0x73, 0x76, 0xa0, 0xb4, 0x42, 0x67, 0xe2, 0xdf, 0x05, 0xdd, 0x5c, 0xf8, 0x96, 0x08, 0x72, 0x1c, 0x97, 0x11, 0xae, 0x1b, 0x9f, 0x70, 0x8a, 0x10, 0x1b, 0xd8, 0xab, 0x8b, 0x84, 0x8c, 0x37, 0xb9, 0xf0, 0xc1, 0xe4, 0xc7, 0xc8, 0xc4, 0x8b, 0x75, 0x93, 0xe6, 0xc8, 0xb6, 0xeb, }; static const unsigned char xdh_wei448_2660_privkey[] = { 0xf4, 0x9a, 0x2a, 0xe8, 0x10, 0x11, 0x58, 0x86, 0x82, 0x1e, 0xda, 0x33, 0xe6, 0xe7, 0x27, 0x54, 0x71, 0x25, 0xd2, 0x05, 0xdd, 0x62, 0x08, 0x4d, 0x76, 0x21, 0x98, 0xa6, 0xa6, 0x1a, 0x10, 0xe8, 0x5c, 0x7f, 0xd8, 0x93, 0x16, 0x57, 0x5e, 0x62, 0xa4, 0x8e, 0x0f, 0xf4, 0x19, 0x1e, 0x27, 0x6d, 0xa8, 0x9c, 0x8f, 0x8c, 0x2b, 0xbe, 0x4a, 0xef, }; static const unsigned char xdh_wei448_2660_sharedsecret[] = { 0x42, 0xd8, 0xa2, 0x0f, 0x37, 0x89, 0x1c, 0xf1, 0xdf, 0x59, 0x31, 0xb5, 0x8a, 0x6f, 0x34, 0xbe, 0xd5, 0x8e, 0x28, 0x7b, 0xc2, 0x01, 0x67, 0x37, 0x88, 0xb8, 0x4b, 0xe1, 0x07, 0x5a, 0xa0, 0xca, 0x5d, 0x7e, 0x57, 0x1b, 0x2e, 0x7a, 0x80, 0x16, 0xb3, 0x91, 0xd4, 0x86, 0x5d, 0x9e, 0x50, 0x78, 0x35, 0x14, 0xab, 0x2b, 0x96, 0xf4, 0xe1, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_2660 = { .name = "xdh_wei448_2660", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2660_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2660_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2660_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2660_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 77 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2661 for XDH, tcId is 78 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2661_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2661_ourpubkey[] = { 0x72, 0x97, 0x37, 0x0d, 0xfa, 0xe0, 0x82, 0x68, 0xfd, 0x8b, 0x1a, 0xe7, 0xd2, 0x38, 0xbf, 0x70, 0x3a, 0x97, 0x3f, 0xfb, 0xf5, 0xb9, 0xa6, 0xca, 0xcc, 0xe0, 0x0f, 0xd2, 0x40, 0x6a, 0xa6, 0x78, 0xff, 0x13, 0x9f, 0xd3, 0x04, 0xcd, 0x8a, 0x8b, 0x52, 0x94, 0xab, 0x97, 0x1e, 0x04, 0xae, 0x69, 0xd7, 0x2c, 0x9e, 0xee, 0x04, 0x8b, 0xdc, 0xd2, }; static const unsigned char xdh_wei448_2661_privkey[] = { 0x14, 0xf9, 0xd7, 0x14, 0xd0, 0x7b, 0xf6, 0x97, 0x69, 0xcd, 0x59, 0x7d, 0xa4, 0x14, 0xb4, 0x7a, 0xd6, 0x73, 0x67, 0x43, 0x62, 0x8c, 0x59, 0x65, 0x60, 0x09, 0x4f, 0xbb, 0x42, 0x70, 0xbf, 0x87, 0xeb, 0x42, 0x6f, 0x8e, 0x70, 0xac, 0x2d, 0xf0, 0x80, 0xf5, 0xa4, 0x44, 0xf3, 0xbd, 0x4d, 0xbe, 0xbd, 0x13, 0xb1, 0x92, 0x26, 0x97, 0x80, 0xce, }; static const unsigned char xdh_wei448_2661_sharedsecret[] = { 0x74, 0x81, 0x08, 0x91, 0x5c, 0xac, 0xcb, 0x93, 0x08, 0x46, 0x6e, 0xfe, 0x74, 0x40, 0x72, 0x9b, 0xb4, 0x86, 0x5e, 0x55, 0xf5, 0x43, 0xf3, 0x22, 0xe2, 0xc7, 0x35, 0x6e, 0x5a, 0xa9, 0x1e, 0xaf, 0x4c, 0x55, 0xa9, 0x4b, 0x97, 0xc5, 0x05, 0x13, 0x1d, 0x38, 0xda, 0xd6, 0xdb, 0xbd, 0x74, 0x8b, 0x49, 0x43, 0xae, 0xa7, 0x7e, 0x3b, 0x65, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_2661 = { .name = "xdh_wei448_2661", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2661_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2661_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2661_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2661_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 78 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2662 for XDH, tcId is 79 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2662_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2662_ourpubkey[] = { 0x64, 0xe1, 0xbe, 0x85, 0xce, 0x78, 0xaf, 0x32, 0xf4, 0xd6, 0xf5, 0x46, 0x0e, 0x70, 0x51, 0x1b, 0x9d, 0x11, 0x34, 0xb7, 0x1a, 0x43, 0xff, 0x28, 0x87, 0x2e, 0x15, 0x42, 0xaa, 0xdc, 0xe9, 0xdf, 0x53, 0x4d, 0x86, 0xb8, 0xbd, 0x43, 0x72, 0x05, 0xa3, 0x7e, 0x74, 0x80, 0x46, 0xf3, 0xee, 0x85, 0x30, 0x93, 0x98, 0x32, 0xce, 0x24, 0x05, 0x7b, }; static const unsigned char xdh_wei448_2662_privkey[] = { 0x5c, 0xc3, 0x56, 0x76, 0xa3, 0x41, 0x3d, 0x09, 0x7d, 0xd7, 0xbb, 0x23, 0x00, 0x33, 0xa1, 0xeb, 0xa3, 0x47, 0xb4, 0x72, 0xdc, 0xc4, 0xa8, 0x37, 0xb5, 0xee, 0x6b, 0xf1, 0x5a, 0x58, 0xaf, 0xd9, 0xad, 0x09, 0xcb, 0x27, 0xa7, 0xdf, 0xf9, 0x7b, 0xe2, 0x3b, 0xa6, 0x16, 0xa3, 0x20, 0x30, 0x5e, 0x92, 0x89, 0x86, 0x6c, 0x97, 0x3b, 0xa4, 0xc3, }; static const unsigned char xdh_wei448_2662_sharedsecret[] = { 0x14, 0xa4, 0x84, 0x63, 0x7a, 0xe0, 0xff, 0x2e, 0x46, 0x68, 0x7d, 0x58, 0x91, 0x42, 0x64, 0x86, 0xab, 0xab, 0x18, 0x9d, 0xc4, 0x45, 0x8f, 0x26, 0xe4, 0x46, 0x62, 0x72, 0x3f, 0xf8, 0x0c, 0xc7, 0xae, 0x18, 0x67, 0x66, 0x45, 0x76, 0x35, 0xe9, 0xdf, 0xf0, 0xca, 0x3b, 0x5f, 0xf5, 0x00, 0x3e, 0x21, 0x39, 0x22, 0x77, 0x82, 0x6b, 0x47, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_2662 = { .name = "xdh_wei448_2662", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2662_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2662_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2662_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2662_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 79 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2663 for XDH, tcId is 80 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2663_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2663_ourpubkey[] = { 0xca, 0x87, 0x43, 0xab, 0x7c, 0xd3, 0xca, 0x3b, 0x7a, 0xe9, 0x9c, 0x37, 0x90, 0x85, 0x1e, 0x52, 0x47, 0x69, 0x4e, 0x26, 0x62, 0x09, 0x3e, 0x05, 0xe8, 0x7b, 0xd6, 0xd1, 0x1b, 0x1b, 0x62, 0xd6, 0xc5, 0xcd, 0xfe, 0xda, 0x41, 0x24, 0xfa, 0x98, 0x2c, 0x7f, 0xa1, 0x13, 0x33, 0x24, 0xb1, 0xa8, 0x42, 0xcc, 0x0d, 0x37, 0x41, 0x18, 0x72, 0x91, }; static const unsigned char xdh_wei448_2663_privkey[] = { 0x90, 0x49, 0xd5, 0x98, 0x8c, 0x54, 0x44, 0x86, 0x8a, 0xb7, 0xe1, 0x36, 0x7d, 0xef, 0xb8, 0x56, 0x5e, 0x81, 0xaa, 0x3c, 0xf3, 0xaf, 0x6f, 0xdc, 0xbe, 0xe3, 0x04, 0x49, 0x12, 0xdc, 0xd4, 0x81, 0x09, 0xe8, 0xb5, 0xc6, 0xe8, 0x39, 0x23, 0x5d, 0xca, 0xb8, 0x6f, 0x38, 0xe1, 0x4c, 0x8e, 0xb5, 0xdf, 0xb3, 0x41, 0xd6, 0x00, 0xac, 0x64, 0xbc, }; static const unsigned char xdh_wei448_2663_sharedsecret[] = { 0xc1, 0x54, 0xcc, 0x67, 0x07, 0x34, 0xe4, 0xfb, 0x43, 0x96, 0x93, 0x36, 0xd8, 0x82, 0xbe, 0x6b, 0x28, 0xdd, 0x82, 0xc0, 0xd8, 0xa1, 0x3a, 0x75, 0x9a, 0x0a, 0x7b, 0xb5, 0x61, 0xb7, 0x92, 0x6d, 0x53, 0x5f, 0x85, 0x64, 0x28, 0x0a, 0x57, 0xf8, 0xe6, 0x67, 0xea, 0x24, 0x92, 0x25, 0xc0, 0x20, 0xd9, 0x4e, 0x78, 0x10, 0x7d, 0xe8, 0x47, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_2663 = { .name = "xdh_wei448_2663", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2663_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2663_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2663_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2663_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 80 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2664 for XDH, tcId is 81 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2664_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2664_ourpubkey[] = { 0x0a, 0x0b, 0xf3, 0xf6, 0x44, 0x56, 0x26, 0x21, 0x79, 0x0a, 0x49, 0x69, 0xd3, 0x4b, 0xf4, 0xbd, 0x3c, 0xe1, 0xd7, 0x5f, 0x3f, 0x32, 0x65, 0x8f, 0xbb, 0x2f, 0x8d, 0xd5, 0x4e, 0x99, 0x9b, 0xe0, 0xd2, 0xab, 0xb5, 0x45, 0xb3, 0xcb, 0x9a, 0x3b, 0x75, 0x80, 0x00, 0x9c, 0xb6, 0x1e, 0x9e, 0xe4, 0x3b, 0xa1, 0xd2, 0xad, 0x18, 0xe6, 0xdc, 0x80, }; static const unsigned char xdh_wei448_2664_privkey[] = { 0x58, 0xfc, 0x99, 0x70, 0xe9, 0xc6, 0x28, 0xa8, 0xfe, 0x3a, 0x24, 0xb6, 0xa9, 0x2a, 0x18, 0xa3, 0x3e, 0xee, 0x81, 0x8a, 0x9e, 0x3e, 0x1c, 0xc2, 0x8e, 0xe6, 0x91, 0x0f, 0xa9, 0x3f, 0x60, 0x19, 0x82, 0xcf, 0x74, 0x0f, 0x31, 0x4d, 0xeb, 0x85, 0xf6, 0x12, 0x2e, 0x93, 0xf2, 0x38, 0x65, 0x56, 0x83, 0x0a, 0x23, 0x20, 0x87, 0x31, 0x3d, 0x8d, }; static const unsigned char xdh_wei448_2664_sharedsecret[] = { 0x09, 0xd8, 0x40, 0x53, 0x3e, 0xe1, 0x6d, 0xe3, 0x0d, 0x2b, 0x71, 0x41, 0x24, 0x4e, 0x5c, 0x98, 0x90, 0x23, 0xfe, 0x5f, 0x88, 0x27, 0x73, 0x67, 0xe2, 0x8d, 0xba, 0x85, 0xc9, 0xf3, 0x2d, 0x68, 0xad, 0xa8, 0x4a, 0x9a, 0xa9, 0xd1, 0x80, 0x7e, 0xa4, 0x44, 0xe0, 0x1b, 0x75, 0xda, 0xda, 0x83, 0x1f, 0x8a, 0x9e, 0x8e, 0x14, 0x6f, 0x14, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_2664 = { .name = "xdh_wei448_2664", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2664_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2664_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2664_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2664_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 81 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2665 for XDH, tcId is 82 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2665_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2665_ourpubkey[] = { 0xb2, 0xb2, 0xf2, 0xa6, 0x9e, 0xef, 0x44, 0x33, 0x0e, 0x73, 0xfb, 0x1d, 0x19, 0x93, 0xe6, 0x06, 0x09, 0xe2, 0x55, 0x4b, 0xcf, 0x21, 0xbd, 0x63, 0x82, 0xb1, 0x7d, 0x9d, 0x69, 0xe8, 0x8f, 0xbe, 0x24, 0x74, 0xe1, 0x59, 0xd8, 0xc6, 0x00, 0x93, 0xc4, 0x2b, 0x62, 0x45, 0x38, 0x37, 0x2e, 0xe0, 0x1c, 0xd7, 0x62, 0xe9, 0xd2, 0xa7, 0x0e, 0x98, }; static const unsigned char xdh_wei448_2665_privkey[] = { 0x44, 0xe6, 0xd9, 0x86, 0x24, 0xb7, 0xdf, 0xda, 0x55, 0x74, 0x08, 0x21, 0x1b, 0xf9, 0xdd, 0xb1, 0x7c, 0xe0, 0xb8, 0x73, 0x94, 0x28, 0x4a, 0x3d, 0xfb, 0x6c, 0x73, 0x8b, 0x67, 0x4c, 0xd7, 0xc5, 0xb2, 0xa7, 0x5f, 0x95, 0x62, 0x38, 0x7e, 0x67, 0x0b, 0x06, 0x3c, 0x7f, 0x37, 0x4b, 0x7b, 0xea, 0x66, 0x97, 0x38, 0xe4, 0x07, 0xda, 0xc3, 0xf1, }; static const unsigned char xdh_wei448_2665_sharedsecret[] = { 0x00, 0x25, 0x17, 0xcf, 0x33, 0x94, 0x89, 0xd2, 0x52, 0x49, 0xdb, 0x5c, 0x2c, 0xea, 0xd3, 0xe1, 0xa8, 0x33, 0x70, 0x5d, 0x5b, 0x53, 0x35, 0x11, 0x85, 0xf8, 0xf9, 0x44, 0x0c, 0xe4, 0xf2, 0x96, 0x79, 0xbd, 0xec, 0x0b, 0x79, 0xc2, 0x30, 0x1a, 0x30, 0x24, 0x31, 0x83, 0x4a, 0x54, 0xb4, 0x55, 0xe7, 0x3b, 0x9f, 0x1a, 0x95, 0x84, 0x6b, 0x1d, }; static const wycheproof_xdh_test xdh_wei448_2665 = { .name = "xdh_wei448_2665", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2665_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2665_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2665_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2665_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 82 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2666 for XDH, tcId is 83 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2666_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2666_ourpubkey[] = { 0x89, 0xeb, 0x17, 0xc8, 0x78, 0x06, 0x8c, 0x7a, 0x5e, 0x1d, 0xe4, 0x4b, 0x00, 0x46, 0xf0, 0x28, 0xd8, 0x9b, 0x19, 0xc7, 0xb1, 0x98, 0x31, 0x05, 0x87, 0x07, 0xf8, 0x21, 0xee, 0xcc, 0x8b, 0x6b, 0x0f, 0x9a, 0x98, 0x9c, 0x3d, 0xc5, 0xbd, 0x9b, 0xe7, 0xe4, 0x48, 0xc4, 0xbe, 0xcb, 0xe3, 0xff, 0x44, 0x57, 0x9a, 0xbc, 0xc3, 0xa0, 0x6b, 0xfa, }; static const unsigned char xdh_wei448_2666_privkey[] = { 0x14, 0x22, 0x63, 0xda, 0x1a, 0xd1, 0x6f, 0xea, 0x83, 0xa2, 0xc5, 0xa4, 0xec, 0x0b, 0x57, 0xf5, 0x92, 0x0b, 0x4a, 0x18, 0x1b, 0x70, 0x59, 0x61, 0xaa, 0x95, 0x9b, 0x6f, 0x3a, 0x47, 0x79, 0x61, 0xbd, 0xcd, 0x36, 0x64, 0xf8, 0x8d, 0x3a, 0x81, 0x30, 0x55, 0xd2, 0x4d, 0x22, 0x69, 0x8d, 0xb0, 0xa9, 0x0f, 0x14, 0x8d, 0x44, 0xd3, 0xe3, 0xdb, }; static const unsigned char xdh_wei448_2666_sharedsecret[] = { 0x84, 0xd1, 0xde, 0xbc, 0x9a, 0x4e, 0xd0, 0x3b, 0x2d, 0xf0, 0xfa, 0x8d, 0x9f, 0xb1, 0xf0, 0xfc, 0xa9, 0x07, 0x20, 0xe6, 0xd2, 0x7c, 0x2a, 0x08, 0xa8, 0xb6, 0x1d, 0xb5, 0xa8, 0xd7, 0xd0, 0xdd, 0x12, 0xae, 0x7a, 0xe3, 0x1d, 0x96, 0x7b, 0x54, 0x25, 0x4b, 0x5c, 0xcc, 0x79, 0x0a, 0xfd, 0xf8, 0x44, 0x66, 0xa1, 0xe8, 0xe4, 0xd9, 0x41, 0x75, }; static const wycheproof_xdh_test xdh_wei448_2666 = { .name = "xdh_wei448_2666", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2666_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2666_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2666_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2666_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 83 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2667 for XDH, tcId is 84 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2667_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2667_ourpubkey[] = { 0xd7, 0xb0, 0xd0, 0x41, 0xcc, 0x00, 0xff, 0x0a, 0x2a, 0xdc, 0x3f, 0x25, 0xf3, 0xf4, 0x80, 0xd6, 0x45, 0x80, 0xb0, 0x88, 0x03, 0xca, 0x3b, 0xce, 0x3f, 0x33, 0x68, 0x73, 0x39, 0x4f, 0x7f, 0x1f, 0x24, 0x16, 0x58, 0x0c, 0x2a, 0x8c, 0xa3, 0x1f, 0x67, 0x57, 0xe7, 0x26, 0x93, 0x76, 0x48, 0xa0, 0x61, 0xb7, 0x0a, 0xd8, 0xf6, 0x63, 0x20, 0xd4, }; static const unsigned char xdh_wei448_2667_privkey[] = { 0xd0, 0xab, 0xb3, 0x22, 0x4e, 0xc5, 0x0b, 0x0c, 0x8a, 0x9b, 0x23, 0xba, 0x7b, 0x08, 0xb2, 0x46, 0x5f, 0x0d, 0x18, 0x94, 0x64, 0xed, 0xeb, 0x44, 0x62, 0xf4, 0x13, 0x30, 0x60, 0xe2, 0xab, 0xe3, 0x2b, 0x75, 0x6e, 0x6a, 0xa4, 0x49, 0x2d, 0x44, 0x37, 0x68, 0x40, 0x18, 0xe9, 0x88, 0x5a, 0x3a, 0xe1, 0x47, 0xf6, 0x39, 0x4d, 0xa0, 0x7a, 0x9f, }; static const unsigned char xdh_wei448_2667_sharedsecret[] = { 0x23, 0x43, 0x69, 0x9c, 0x73, 0x1e, 0xf8, 0x75, 0xb7, 0x18, 0x2f, 0x47, 0x95, 0x4c, 0xd4, 0x1f, 0x3c, 0xb0, 0x4c, 0x8d, 0x92, 0x1f, 0xe9, 0x17, 0xff, 0x83, 0x5d, 0xdd, 0xa0, 0x8d, 0x11, 0x39, 0xe6, 0x38, 0x27, 0xb7, 0x51, 0x0c, 0x39, 0xb2, 0xa3, 0x03, 0x1e, 0x1e, 0xc6, 0x93, 0x33, 0x69, 0xd4, 0x9f, 0x98, 0xea, 0x54, 0x8f, 0x6b, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_2667 = { .name = "xdh_wei448_2667", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2667_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2667_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2667_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2667_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 84 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2668 for XDH, tcId is 85 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2668_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_2668_ourpubkey[] = { 0x14, 0xff, 0x08, 0x10, 0x1a, 0x7d, 0x1a, 0x62, 0x35, 0x3a, 0xec, 0xbe, 0xde, 0x27, 0x6b, 0x26, 0x15, 0x0e, 0x96, 0xb5, 0x43, 0x1e, 0xe3, 0x2a, 0x0f, 0x30, 0x5d, 0xb3, 0x0d, 0xc8, 0xc0, 0xc5, 0x6a, 0xc0, 0x43, 0xf4, 0x36, 0xa9, 0x20, 0x60, 0xbc, 0xcd, 0x7b, 0x50, 0x56, 0x43, 0x74, 0xd6, 0xe6, 0x14, 0x44, 0x94, 0xfe, 0x03, 0xb3, 0x90, }; static const unsigned char xdh_wei448_2668_privkey[] = { 0x30, 0x34, 0xf9, 0x58, 0x9b, 0xf9, 0x5d, 0x1d, 0x00, 0xa1, 0x81, 0xb2, 0xa4, 0x24, 0x36, 0xfa, 0x04, 0x99, 0xae, 0x54, 0xec, 0xd9, 0x88, 0xc3, 0x31, 0x99, 0x37, 0x09, 0xaa, 0xdd, 0x25, 0xbf, 0x1a, 0xf3, 0xac, 0xa2, 0x3f, 0x11, 0x0b, 0x3a, 0x21, 0x1a, 0x87, 0xe2, 0xcd, 0x9a, 0x34, 0xff, 0xad, 0xbe, 0x16, 0xa9, 0x33, 0xdd, 0x28, 0xaf, }; static const unsigned char xdh_wei448_2668_sharedsecret[] = { 0x9a, 0xb0, 0x2a, 0xec, 0x3d, 0x2b, 0x9f, 0x72, 0x72, 0xdc, 0xf1, 0xa8, 0xa0, 0xfa, 0x78, 0xe8, 0x93, 0xa9, 0x30, 0xa3, 0x62, 0xcc, 0xba, 0xca, 0x73, 0x77, 0x3a, 0xf3, 0xbf, 0xac, 0xb7, 0x72, 0x61, 0x13, 0xc5, 0x4c, 0x3e, 0x12, 0x6a, 0xd2, 0x93, 0xbb, 0xe7, 0xcc, 0x0d, 0x52, 0x9d, 0xb3, 0xa9, 0x67, 0xcb, 0x6f, 0x18, 0xf0, 0xeb, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_2668 = { .name = "xdh_wei448_2668", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2668_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2668_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2668_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2668_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 85 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2669 for XDH, tcId is 86 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2669_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2669_ourpubkey[] = { 0xd6, 0x81, 0x24, 0x16, 0x98, 0x00, 0xda, 0x15, 0xac, 0xd1, 0x76, 0x1f, 0x58, 0xe9, 0xab, 0x0a, 0xc6, 0x5c, 0x69, 0x31, 0x3a, 0x3b, 0xb0, 0x23, 0x97, 0xe4, 0x84, 0xfd, 0xaa, 0x13, 0xf1, 0x75, 0xcf, 0x83, 0x8e, 0xb9, 0x0b, 0x9a, 0x4e, 0xd3, 0xe9, 0x5c, 0xb5, 0x99, 0xc4, 0xea, 0x5f, 0x36, 0xbf, 0x09, 0xab, 0x58, 0x4d, 0xd4, 0xd0, 0xfc, }; static const unsigned char xdh_wei448_2669_privkey[] = { 0x14, 0x21, 0x5f, 0xc7, 0x90, 0xbe, 0x32, 0x39, 0xcf, 0xc8, 0xc3, 0xf4, 0x5f, 0xed, 0x60, 0x2b, 0xca, 0xb4, 0xe1, 0x85, 0x3a, 0x5d, 0x03, 0x97, 0xbd, 0x45, 0xbf, 0xd0, 0xa5, 0x46, 0xde, 0x75, 0x55, 0xa6, 0x0b, 0x4d, 0x68, 0x4d, 0x9c, 0x54, 0xf8, 0x22, 0xbc, 0x16, 0x8f, 0x1c, 0xb8, 0xc4, 0xc0, 0x3d, 0xae, 0x2f, 0x7e, 0x34, 0xb8, 0xe0, }; static const unsigned char xdh_wei448_2669_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2669 = { .name = "xdh_wei448_2669", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2669_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2669_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2669_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2669_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656, tcId is 86 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2670 for XDH, tcId is 87 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2670_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_2670_ourpubkey[] = { 0xbd, 0xbb, 0xc3, 0x3c, 0x9d, 0x0f, 0xb3, 0xda, 0x79, 0xee, 0xfb, 0x84, 0xb8, 0xf2, 0xf6, 0x1a, 0x0a, 0x9c, 0x4d, 0x04, 0x38, 0x36, 0x5e, 0x07, 0xd7, 0x90, 0x47, 0xfe, 0x73, 0x8c, 0xf4, 0xf9, 0x57, 0xac, 0x57, 0x8e, 0x7a, 0x29, 0x35, 0x72, 0xba, 0xfe, 0x36, 0xde, 0x6b, 0x01, 0x65, 0x4f, 0x7f, 0xbf, 0x83, 0xc8, 0x40, 0x3f, 0x52, 0x25, }; static const unsigned char xdh_wei448_2670_privkey[] = { 0x70, 0x0a, 0x16, 0x42, 0x84, 0x4c, 0x36, 0x8a, 0x8c, 0xda, 0xe4, 0x11, 0x9b, 0xe4, 0xc1, 0x74, 0x6e, 0xf2, 0x14, 0xbe, 0xed, 0x0d, 0x4b, 0x40, 0x55, 0xe2, 0x35, 0xd5, 0x6b, 0x3c, 0xf8, 0x1f, 0x93, 0x62, 0x50, 0xa0, 0x48, 0x43, 0xc3, 0x7a, 0x89, 0x2b, 0xa6, 0xb5, 0x09, 0xb7, 0x5d, 0xb6, 0x51, 0x61, 0x60, 0x4c, 0xf9, 0xa4, 0x51, 0xf3, }; static const unsigned char xdh_wei448_2670_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2670 = { .name = "xdh_wei448_2670", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2670_peerpubkey, .peerpubkeylen = 57, .ourpubkey = xdh_wei448_2670_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2670_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2670_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614657, tcId is 87 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2671 for XDH, tcId is 88 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2671_peerpubkey[] = { 0x3e, 0xb7, 0xa8, 0x29, 0xb0, 0xcd, 0x20, 0xf5, 0xbc, 0xfc, 0x0b, 0x59, 0x9b, 0x6f, 0xec, 0xcf, 0x6d, 0xa4, 0x62, 0x71, 0x07, 0xbd, 0xb0, 0xd4, 0xf3, 0x45, 0xb4, 0x30, 0x27, 0xd8, 0xb9, 0x72, 0xfc, 0x3e, 0x34, 0xfb, 0x42, 0x32, 0xa1, 0x3c, 0xa7, 0x06, 0xdc, 0xb5, 0x7a, 0xec, 0x3d, 0xae, 0x07, 0xbd, 0xc1, 0xc6, 0x7b, 0xf3, 0x36, 0x09, }; static const unsigned char xdh_wei448_2671_ourpubkey[] = { 0x9b, 0x08, 0xf7, 0xcc, 0x31, 0xb7, 0xe3, 0xe6, 0x7d, 0x22, 0xd5, 0xae, 0xa1, 0x21, 0x07, 0x4a, 0x27, 0x3b, 0xd2, 0xb8, 0x3d, 0xe0, 0x9c, 0x63, 0xfa, 0xa7, 0x3d, 0x2c, 0x22, 0xc5, 0xd9, 0xbb, 0xc8, 0x36, 0x64, 0x72, 0x41, 0xd9, 0x53, 0xd4, 0x0c, 0x5b, 0x12, 0xda, 0x88, 0x12, 0x0d, 0x53, 0x17, 0x7f, 0x80, 0xe5, 0x32, 0xc4, 0x1f, 0xa0, }; static const unsigned char xdh_wei448_2671_privkey[] = { 0x9a, 0x8f, 0x49, 0x25, 0xd1, 0x51, 0x9f, 0x57, 0x75, 0xcf, 0x46, 0xb0, 0x4b, 0x58, 0x00, 0xd4, 0xee, 0x9e, 0xe8, 0xba, 0xe8, 0xbc, 0x55, 0x65, 0xd4, 0x98, 0xc2, 0x8d, 0xd9, 0xc9, 0xba, 0xf5, 0x74, 0xa9, 0x41, 0x97, 0x44, 0x89, 0x73, 0x91, 0x00, 0x63, 0x82, 0xa6, 0xf1, 0x27, 0xab, 0x1d, 0x9a, 0xc2, 0xd8, 0xc0, 0xa5, 0x98, 0x72, 0x6b, }; static const unsigned char xdh_wei448_2671_sharedsecret[] = { 0x07, 0xff, 0xf4, 0x18, 0x1a, 0xc6, 0xcc, 0x95, 0xec, 0x1c, 0x16, 0xa9, 0x4a, 0x0f, 0x74, 0xd1, 0x2d, 0xa2, 0x32, 0xce, 0x40, 0xa7, 0x75, 0x52, 0x28, 0x1d, 0x28, 0x2b, 0xb6, 0x0c, 0x0b, 0x56, 0xfd, 0x24, 0x64, 0xc3, 0x35, 0x54, 0x39, 0x36, 0x52, 0x1c, 0x24, 0x40, 0x30, 0x85, 0xd5, 0x9a, 0x44, 0x9a, 0x50, 0x37, 0x51, 0x4a, 0x87, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2671 = { .name = "xdh_wei448_2671", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2671_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2671_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2671_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2671_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "RFC 8037, Section A.7, tcId is 88 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2672 for XDH, tcId is 89 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2672_peerpubkey[] = { 0xb9, 0x1a, 0x0c, 0x5a, 0xd4, 0x97, 0xd9, 0x5f, 0x15, 0xdf, 0x62, 0xe4, 0x23, 0x1e, 0xda, 0xaa, 0xab, 0x21, 0xd8, 0x29, 0x53, 0xfc, 0xde, 0x09, 0xea, 0xb1, 0x64, 0x20, 0x97, 0x45, 0xaa, 0xb6, 0xfe, 0x9d, 0x35, 0x3a, 0x0d, 0xa3, 0x28, 0xfa, 0x81, 0x47, 0x93, 0x9e, 0x63, 0xad, 0x56, 0xd1, 0xc0, 0xd2, 0xc0, 0xbd, 0xdd, 0x95, 0xda, 0x50, }; static const unsigned char xdh_wei448_2672_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2672_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2672_sharedsecret[] = { 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2672 = { .name = "xdh_wei448_2672", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2672_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2672_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2672_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2672_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 89 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2673 for XDH, tcId is 90 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2673_peerpubkey[] = { 0x7b, 0xae, 0x31, 0x6c, 0x8f, 0xb6, 0xd7, 0x59, 0xa3, 0xbe, 0x62, 0x5b, 0xb7, 0xc5, 0xe7, 0x5e, 0xc6, 0x4e, 0x3c, 0xb7, 0xde, 0xdd, 0x3d, 0xfa, 0x05, 0x77, 0x11, 0x46, 0xaf, 0x2d, 0xc4, 0x5e, 0x64, 0x24, 0x48, 0x9b, 0x3d, 0x96, 0xf6, 0x31, 0x37, 0xab, 0x3c, 0xaa, 0x9d, 0x26, 0x1c, 0x49, 0xa2, 0x14, 0x66, 0x28, 0x04, 0xaf, 0x48, 0x46, }; static const unsigned char xdh_wei448_2673_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2673_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2673_sharedsecret[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2673 = { .name = "xdh_wei448_2673", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2673_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2673_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2673_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2673_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 90 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2674 for XDH, tcId is 91 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2674_peerpubkey[] = { 0xc5, 0x51, 0x02, 0x72, 0x88, 0xf7, 0x73, 0x64, 0x65, 0x90, 0x79, 0xb5, 0xdb, 0x73, 0x68, 0xb4, 0xcf, 0x8f, 0xd6, 0xf1, 0xd7, 0x0d, 0xc1, 0xf1, 0x45, 0xa3, 0x3e, 0x85, 0xd3, 0x71, 0xe0, 0x7a, 0x3a, 0xfe, 0xad, 0x48, 0x4a, 0x0e, 0xad, 0xf0, 0xba, 0x5d, 0x04, 0x3b, 0xc2, 0x7e, 0xa1, 0x95, 0xf2, 0x00, 0x53, 0x10, 0xbe, 0xea, 0x24, 0xa0, }; static const unsigned char xdh_wei448_2674_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2674_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2674_sharedsecret[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2674 = { .name = "xdh_wei448_2674", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2674_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2674_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2674_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2674_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 91 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2675 for XDH, tcId is 92 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2675_peerpubkey[] = { 0xd3, 0xc5, 0x30, 0x27, 0x9c, 0x9b, 0x5a, 0xce, 0x05, 0x19, 0xde, 0xe3, 0x2e, 0xe9, 0x32, 0xc3, 0x20, 0x42, 0x5d, 0x71, 0x7f, 0x55, 0x9b, 0x34, 0xca, 0x8e, 0x24, 0x54, 0x0f, 0xb7, 0x6f, 0xd9, 0xac, 0xe7, 0x78, 0x5e, 0x52, 0x91, 0x16, 0xb2, 0x20, 0xb0, 0x6f, 0x5e, 0xc0, 0xba, 0x4a, 0x05, 0x23, 0x7f, 0xcf, 0xd0, 0x0b, 0xa3, 0xc7, 0xde, }; static const unsigned char xdh_wei448_2675_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2675_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2675_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2675 = { .name = "xdh_wei448_2675", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2675_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2675_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2675_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2675_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 92 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2676 for XDH, tcId is 93 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2676_peerpubkey[] = { 0x43, 0xb6, 0x1e, 0x50, 0x2c, 0x66, 0x2f, 0x9c, 0x9a, 0x06, 0x39, 0xd2, 0xaf, 0x3e, 0x88, 0xde, 0x77, 0xb3, 0xb7, 0x0b, 0xc3, 0xbb, 0x2a, 0xbe, 0xab, 0xa3, 0x9d, 0xd5, 0xe7, 0x13, 0x2d, 0xdd, 0xcf, 0x14, 0xa1, 0x8d, 0x9d, 0x7c, 0xa4, 0x01, 0x3a, 0x33, 0xb5, 0x47, 0x87, 0xaf, 0xde, 0xd9, 0xd8, 0x7d, 0x5d, 0x67, 0xd4, 0x3c, 0x30, 0xd6, }; static const unsigned char xdh_wei448_2676_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2676_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2676_sharedsecret[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2676 = { .name = "xdh_wei448_2676", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2676_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2676_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2676_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2676_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 93 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2677 for XDH, tcId is 94 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2677_peerpubkey[] = { 0x2e, 0xe0, 0x34, 0x14, 0x7e, 0x21, 0xfd, 0x9f, 0xc9, 0x95, 0x68, 0x34, 0x8e, 0x88, 0x28, 0x9c, 0x9d, 0x8c, 0x83, 0x91, 0xd2, 0x51, 0x50, 0xfa, 0xe8, 0x9f, 0x76, 0x3f, 0xb6, 0x4f, 0x96, 0x2c, 0xb8, 0x4a, 0xd3, 0x14, 0xc2, 0x96, 0x08, 0x71, 0xb9, 0x51, 0x11, 0xbb, 0x0f, 0x18, 0x01, 0x11, 0x4c, 0x3a, 0x12, 0x16, 0xbe, 0xe7, 0xed, 0xd6, }; static const unsigned char xdh_wei448_2677_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2677_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2677_sharedsecret[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2677 = { .name = "xdh_wei448_2677", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2677_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2677_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2677_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2677_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 94 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2678 for XDH, tcId is 95 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2678_peerpubkey[] = { 0xeb, 0xad, 0x9b, 0x8e, 0x2e, 0x7f, 0xdf, 0xd6, 0xc9, 0x3e, 0x2f, 0x3c, 0xf4, 0xe8, 0x1b, 0xe7, 0xbb, 0xfb, 0x34, 0xe6, 0xde, 0x7b, 0xba, 0xef, 0x9c, 0x95, 0x7d, 0x3a, 0x03, 0x24, 0xf9, 0x78, 0x19, 0x50, 0xc7, 0x03, 0x92, 0xee, 0x53, 0x58, 0x79, 0x31, 0xc3, 0xf1, 0xad, 0x30, 0x50, 0x59, 0x7d, 0x07, 0x64, 0x4f, 0x0e, 0x8a, 0x0a, 0xb3, }; static const unsigned char xdh_wei448_2678_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2678_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2678_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2678 = { .name = "xdh_wei448_2678", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2678_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2678_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2678_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2678_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 95 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2679 for XDH, tcId is 96 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2679_peerpubkey[] = { 0x6a, 0x2b, 0xc1, 0x33, 0xf7, 0xc8, 0x4d, 0x9c, 0x23, 0x39, 0xa7, 0xe9, 0xea, 0x8d, 0xcd, 0xb7, 0xf6, 0xd0, 0x51, 0xfc, 0x5d, 0xb9, 0x27, 0x9c, 0x9f, 0x6e, 0x0a, 0xff, 0x35, 0x17, 0x6c, 0xfd, 0x3b, 0x11, 0xe7, 0xe6, 0xc2, 0xee, 0xc5, 0x20, 0x5b, 0xfe, 0x82, 0x61, 0x2d, 0x2b, 0x0b, 0x3d, 0xf6, 0x73, 0x45, 0x20, 0x36, 0xc5, 0x3f, 0xb8, }; static const unsigned char xdh_wei448_2679_ourpubkey[] = { 0x98, 0x44, 0xa6, 0x39, 0xbc, 0x51, 0x57, 0xee, 0xb7, 0x1a, 0x46, 0x14, 0xc1, 0xfb, 0x5f, 0x67, 0x39, 0x78, 0x95, 0x01, 0xd6, 0xfe, 0xa2, 0x49, 0x3e, 0xa6, 0x50, 0xda, 0x9b, 0x47, 0x04, 0xe0, 0xc1, 0x9e, 0xbe, 0x28, 0xe8, 0xae, 0x04, 0x85, 0x6d, 0xdc, 0xdc, 0x7a, 0xa6, 0x37, 0x62, 0x76, 0x29, 0x3e, 0xdc, 0x40, 0x29, 0xfc, 0xe1, 0xc1, }; static const unsigned char xdh_wei448_2679_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_2679_sharedsecret[] = { 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2679 = { .name = "xdh_wei448_2679", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2679_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2679_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2679_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2679_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 96 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2680 for XDH, tcId is 97 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2680_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2680_ourpubkey[] = { 0xd1, 0x31, 0xa2, 0x9b, 0x86, 0x4c, 0x34, 0x78, 0x2b, 0xb2, 0x43, 0x54, 0x58, 0xda, 0xee, 0xe1, 0x37, 0x8c, 0xfb, 0xe5, 0x27, 0x7a, 0x35, 0x69, 0x5b, 0x06, 0x49, 0x0b, 0xb5, 0x47, 0x99, 0x8a, 0x1f, 0xe9, 0xa8, 0xc2, 0xae, 0x85, 0x9a, 0x34, 0x72, 0x68, 0x89, 0xdc, 0xa3, 0x0b, 0xca, 0xcc, 0x92, 0xcf, 0xe6, 0x53, 0x3e, 0x2e, 0x4b, 0x50, }; static const unsigned char xdh_wei448_2680_privkey[] = { 0xc8, 0x17, 0xe3, 0xc0, 0x8e, 0x00, 0x17, 0xa5, 0xa4, 0x42, 0x2c, 0x70, 0x09, 0x5e, 0xdf, 0x06, 0x2d, 0x71, 0xf4, 0x52, 0x13, 0x97, 0x15, 0xed, 0xcc, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0xeb, }; static const unsigned char xdh_wei448_2680_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2680 = { .name = "xdh_wei448_2680", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2680_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2680_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2680_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2680_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 97 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2681 for XDH, tcId is 98 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2681_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2681_ourpubkey[] = { 0xa4, 0xa9, 0x45, 0x00, 0x35, 0xd5, 0x31, 0x42, 0x87, 0x1a, 0x66, 0x91, 0x68, 0xc1, 0x78, 0xc7, 0x83, 0x87, 0xf2, 0xe5, 0xb4, 0x39, 0xdd, 0x46, 0x92, 0x82, 0x10, 0x09, 0xa7, 0x40, 0x3e, 0x6b, 0x49, 0xae, 0x68, 0x4c, 0x59, 0xe0, 0xbc, 0xa2, 0x11, 0x76, 0x13, 0x77, 0xaa, 0x06, 0xf9, 0x76, 0xcd, 0x0d, 0xf1, 0xa2, 0x23, 0xdb, 0x6b, 0x41, }; static const unsigned char xdh_wei448_2681_privkey[] = { 0xdc, 0x05, 0xe8, 0xc9, 0xde, 0xce, 0xf9, 0xd3, 0xe3, 0x50, 0xee, 0x83, 0xae, 0xe2, 0x50, 0x2c, 0xed, 0xd7, 0x6f, 0x07, 0xd2, 0x36, 0x4d, 0xe9, 0x93, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x83, }; static const unsigned char xdh_wei448_2681_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2681 = { .name = "xdh_wei448_2681", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2681_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2681_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2681_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2681_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 98 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2682 for XDH, tcId is 99 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2682_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2682_ourpubkey[] = { 0x26, 0x93, 0x26, 0x31, 0xaf, 0xd9, 0x18, 0xb1, 0x8b, 0x47, 0xfd, 0xe7, 0x21, 0xf8, 0x1e, 0x20, 0xb5, 0x7f, 0xad, 0xe6, 0x55, 0xab, 0xfd, 0xbc, 0xf3, 0x56, 0xf5, 0x26, 0xe2, 0x85, 0xc2, 0x0b, 0x3e, 0x4e, 0x74, 0x26, 0x20, 0xc9, 0x81, 0xa4, 0x68, 0x76, 0x23, 0x89, 0xa8, 0xa8, 0x47, 0xc0, 0x19, 0xa7, 0x46, 0x9b, 0xf7, 0xba, 0x15, 0x37, }; static const unsigned char xdh_wei448_2682_privkey[] = { 0x80, 0x3f, 0x68, 0xff, 0x98, 0x12, 0x67, 0x6a, 0xb8, 0x09, 0x58, 0x2f, 0x0b, 0x93, 0xe8, 0x04, 0x61, 0x59, 0x8c, 0x98, 0x7b, 0xc7, 0xb2, 0xe4, 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x91, }; static const unsigned char xdh_wei448_2682_sharedsecret[] = { 0x27, 0x54, 0xaa, 0x14, 0x4a, 0xc7, 0x00, 0xad, 0x18, 0x3b, 0x9c, 0x20, 0xcd, 0x26, 0x27, 0xdb, 0x3c, 0x51, 0xe7, 0x64, 0x40, 0x55, 0xf7, 0x1f, 0x46, 0xe2, 0xb9, 0x99, 0xd3, 0xe1, 0x3e, 0x34, 0x64, 0x54, 0x56, 0x0f, 0xa7, 0x2a, 0x16, 0x48, 0x85, 0x61, 0xe6, 0x0d, 0x6b, 0x64, 0x23, 0xed, 0x50, 0xd1, 0xe7, 0x5a, 0x48, 0x99, 0xa8, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_2682 = { .name = "xdh_wei448_2682", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2682_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2682_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2682_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2682_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 99 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2683 for XDH, tcId is 100 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2683_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2683_ourpubkey[] = { 0x5c, 0x3c, 0xbe, 0x6f, 0x61, 0x94, 0xe6, 0x8e, 0xe9, 0x6b, 0x54, 0xcd, 0x05, 0x22, 0x1e, 0x76, 0x2c, 0xe6, 0x5c, 0xae, 0xd0, 0xc7, 0x7d, 0x7c, 0xe0, 0x52, 0xb0, 0x40, 0xae, 0x55, 0xf1, 0xef, 0x08, 0x52, 0xbf, 0xbe, 0xc4, 0xa0, 0xa4, 0xe2, 0x64, 0x70, 0x26, 0x47, 0xa8, 0x72, 0xc5, 0x6f, 0x33, 0xc3, 0x6a, 0x86, 0xd3, 0x78, 0x26, 0x38, }; static const unsigned char xdh_wei448_2683_privkey[] = { 0x04, 0xdf, 0xf9, 0x01, 0xe6, 0x90, 0x7e, 0xf6, 0x3c, 0x05, 0x90, 0xc6, 0x09, 0x00, 0x65, 0xef, 0x5c, 0x3c, 0x0e, 0xd0, 0x3d, 0x1a, 0x99, 0x49, 0xbb, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x9b, }; static const unsigned char xdh_wei448_2683_sharedsecret[] = { 0x00, 0x7a, 0x85, 0x0b, 0x8e, 0x86, 0x37, 0x83, 0xcb, 0x6c, 0x17, 0x5c, 0x9b, 0xab, 0xbb, 0xd3, 0x5a, 0xbe, 0x37, 0xd4, 0x13, 0xa8, 0x88, 0xd9, 0x76, 0xac, 0xc6, 0x8b, 0x70, 0xf6, 0xe6, 0x66, 0x9c, 0x7c, 0x50, 0x95, 0xc2, 0xcf, 0xcc, 0xc5, 0x28, 0x28, 0x46, 0x87, 0xf2, 0x53, 0xdd, 0xb1, 0xdd, 0xc3, 0xea, 0x09, 0x10, 0xbd, 0x14, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_2683 = { .name = "xdh_wei448_2683", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2683_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2683_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2683_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2683_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 100 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2684 for XDH, tcId is 101 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2684_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2684_ourpubkey[] = { 0x58, 0x35, 0x30, 0xaf, 0x57, 0xac, 0x6b, 0xef, 0x72, 0xd8, 0xa6, 0xf9, 0x7f, 0xd9, 0xba, 0xc6, 0xc3, 0x29, 0xa7, 0xe0, 0x84, 0xad, 0xa9, 0x53, 0x37, 0x09, 0x28, 0x69, 0x6c, 0x6d, 0x94, 0xb4, 0x5d, 0x80, 0x71, 0x10, 0xbd, 0xd4, 0xf3, 0x9b, 0x51, 0x68, 0x35, 0x80, 0x67, 0x60, 0xe1, 0xde, 0x15, 0x21, 0xca, 0x95, 0xb5, 0x86, 0x69, 0xc7, }; static const unsigned char xdh_wei448_2684_privkey[] = { 0x64, 0xd5, 0xe0, 0x00, 0x0a, 0xeb, 0xdf, 0x9b, 0x75, 0x74, 0x02, 0xd0, 0x8a, 0xf6, 0x46, 0xc6, 0xf3, 0x1d, 0x66, 0x28, 0xbe, 0x80, 0x6f, 0x64, 0x6f, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0xf6, }; static const unsigned char xdh_wei448_2684_sharedsecret[] = { 0x06, 0x65, 0xa1, 0xc3, 0xd7, 0xa7, 0x47, 0xe5, 0x9e, 0x8d, 0xbe, 0x84, 0x1d, 0xac, 0x1f, 0x40, 0x1d, 0x07, 0x3c, 0xa4, 0x5e, 0xa2, 0x9b, 0xad, 0x45, 0x75, 0x77, 0xd7, 0x92, 0x2f, 0xb9, 0x82, 0x57, 0x70, 0x5f, 0x84, 0xb1, 0x98, 0xa6, 0x8c, 0x2e, 0x2c, 0x3e, 0xd7, 0xb9, 0xe4, 0x23, 0x3e, 0x43, 0xc4, 0x48, 0x87, 0xd7, 0xa8, 0xe0, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_2684 = { .name = "xdh_wei448_2684", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2684_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2684_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2684_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2684_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 101 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2685 for XDH, tcId is 102 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2685_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2685_ourpubkey[] = { 0x28, 0x7f, 0x5a, 0xd2, 0x19, 0xb0, 0x47, 0xf5, 0x82, 0xbb, 0x9d, 0xe9, 0xb4, 0xb5, 0x3b, 0x96, 0xfe, 0xb4, 0x48, 0x7f, 0x73, 0x67, 0x65, 0xaf, 0x60, 0xb1, 0x23, 0x08, 0x3d, 0x4e, 0xba, 0x80, 0x62, 0x0c, 0xe8, 0x51, 0xf1, 0x7e, 0x70, 0x38, 0x85, 0x1a, 0xe0, 0x75, 0xcc, 0x4b, 0xe6, 0x44, 0x98, 0xc8, 0xcd, 0x55, 0x79, 0x09, 0xf9, 0xb2, }; static const unsigned char xdh_wei448_2685_privkey[] = { 0x78, 0xe6, 0xc1, 0x28, 0xfe, 0x70, 0x60, 0x70, 0x5c, 0xe2, 0x2c, 0x63, 0x63, 0xdf, 0xa7, 0xaa, 0x16, 0x9a, 0x38, 0x99, 0x23, 0xd2, 0x1a, 0x31, 0x3c, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0xf4, }; static const unsigned char xdh_wei448_2685_sharedsecret[] = { 0x07, 0x01, 0xa1, 0xcf, 0x05, 0xb9, 0xed, 0x47, 0x99, 0x15, 0x1d, 0xee, 0xdf, 0xb5, 0xf2, 0xbd, 0x6a, 0xa8, 0x3a, 0x73, 0x90, 0xdd, 0xb2, 0x74, 0x97, 0xe8, 0xa5, 0x9b, 0x9f, 0x8e, 0x18, 0xe2, 0xb2, 0x5a, 0xbb, 0x07, 0x15, 0xe0, 0x84, 0x8b, 0xc3, 0xc2, 0xeb, 0x0b, 0xb2, 0xc9, 0xd6, 0xf0, 0xb3, 0x70, 0xe8, 0x9a, 0x98, 0xef, 0x5b, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_2685 = { .name = "xdh_wei448_2685", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2685_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2685_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2685_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2685_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 102 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2686 for XDH, tcId is 103 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2686_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2686_ourpubkey[] = { 0xbe, 0xed, 0xd3, 0x66, 0x48, 0xf4, 0x65, 0x23, 0xbc, 0x38, 0x5f, 0x34, 0x4a, 0x84, 0x0b, 0x82, 0x8d, 0xad, 0x05, 0xe2, 0x34, 0x51, 0x45, 0x43, 0x8b, 0x52, 0xeb, 0xa1, 0xb0, 0x16, 0x18, 0x77, 0xcd, 0xdf, 0x5a, 0x23, 0x60, 0x14, 0x3f, 0x01, 0x7a, 0x26, 0xbb, 0xa7, 0xd8, 0xcf, 0x88, 0x1f, 0xe3, 0x6f, 0x94, 0xc7, 0x09, 0x75, 0xde, 0x5e, }; static const unsigned char xdh_wei448_2686_privkey[] = { 0x34, 0x00, 0xca, 0x2d, 0x96, 0xb2, 0x45, 0x7b, 0xd3, 0xcb, 0x6f, 0xef, 0xc3, 0xf5, 0xb5, 0x24, 0xd8, 0x71, 0x33, 0xd6, 0xba, 0x29, 0x56, 0xcc, 0x37, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x8b, }; static const unsigned char xdh_wei448_2686_sharedsecret[] = { 0xd7, 0xc6, 0x2f, 0x95, 0xa5, 0x2e, 0xed, 0xcf, 0xf9, 0x1b, 0x69, 0xa7, 0x34, 0xae, 0xd3, 0x3f, 0x71, 0xbc, 0xad, 0xe0, 0x15, 0xb5, 0xe6, 0x68, 0xf3, 0xfb, 0x79, 0x90, 0x52, 0x2f, 0x97, 0x96, 0x70, 0xb4, 0x3a, 0x4c, 0x8e, 0xe0, 0x55, 0x85, 0x1d, 0xbd, 0x3b, 0x53, 0x47, 0x46, 0x5e, 0x1d, 0x13, 0xb8, 0xdc, 0xee, 0x62, 0x3e, 0x78, 0x79, }; static const wycheproof_xdh_test xdh_wei448_2686 = { .name = "xdh_wei448_2686", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2686_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2686_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2686_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2686_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 103 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2687 for XDH, tcId is 104 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2687_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2687_ourpubkey[] = { 0x2d, 0xac, 0x23, 0x5e, 0x18, 0x00, 0x60, 0x46, 0xd2, 0x30, 0xfd, 0xe8, 0xbc, 0x17, 0xe3, 0x99, 0x07, 0x19, 0xe9, 0x09, 0x78, 0x60, 0xf0, 0x1d, 0x5b, 0x0c, 0xcc, 0xe4, 0xf1, 0x27, 0x66, 0x7a, 0xd2, 0x9a, 0xc3, 0x47, 0xf6, 0xcb, 0xce, 0xf8, 0x52, 0x67, 0x0f, 0xaf, 0xcd, 0x4e, 0x2e, 0xf4, 0xae, 0x10, 0x23, 0xc3, 0x16, 0x19, 0xbe, 0x98, }; static const unsigned char xdh_wei448_2687_privkey[] = { 0x9c, 0xfd, 0xbc, 0xba, 0x85, 0x85, 0x5a, 0x0c, 0xa9, 0x73, 0x14, 0xa6, 0x53, 0xc9, 0xa0, 0xa1, 0x6e, 0x83, 0xed, 0xb7, 0x4a, 0xaf, 0x79, 0x9d, 0xdc, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0xcf, }; static const unsigned char xdh_wei448_2687_sharedsecret[] = { 0xed, 0x35, 0x4b, 0x70, 0x81, 0xfc, 0x03, 0x66, 0xd5, 0x74, 0xf4, 0x69, 0x6b, 0xef, 0x60, 0xb3, 0x09, 0x9d, 0x55, 0xcb, 0x08, 0x32, 0xe8, 0x22, 0x61, 0x9b, 0x8b, 0x4d, 0x2d, 0x57, 0xff, 0xe3, 0xb3, 0xec, 0x29, 0x87, 0x75, 0x5d, 0xba, 0x08, 0xbd, 0xab, 0x6b, 0xbf, 0x5a, 0x28, 0x42, 0x76, 0x74, 0x5e, 0x0b, 0xd4, 0xfe, 0xf9, 0xba, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2687 = { .name = "xdh_wei448_2687", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2687_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2687_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2687_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2687_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 104 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2688 for XDH, tcId is 105 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2688_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2688_ourpubkey[] = { 0x04, 0x34, 0xe3, 0x19, 0xe4, 0x70, 0xc3, 0xc3, 0xfe, 0xe5, 0x00, 0x51, 0x60, 0x8c, 0x64, 0x3c, 0x8a, 0x09, 0xcb, 0x03, 0x7d, 0x1a, 0x19, 0x4a, 0x54, 0xa6, 0x0b, 0xdc, 0x24, 0x9d, 0xb5, 0xb6, 0x93, 0x9c, 0x9b, 0xf8, 0x00, 0xa8, 0x37, 0xc1, 0x84, 0xc0, 0xbe, 0xaa, 0x7a, 0xdd, 0x5a, 0x12, 0x3e, 0xa4, 0x9d, 0xa9, 0x32, 0x8a, 0x4b, 0x62, }; static const unsigned char xdh_wei448_2688_privkey[] = { 0xc4, 0x09, 0x1f, 0x83, 0xdd, 0xdf, 0xf4, 0x4f, 0x26, 0xe6, 0x0f, 0xe3, 0xda, 0xf2, 0xea, 0x2a, 0x0d, 0xe8, 0x86, 0x72, 0x7a, 0x43, 0x10, 0x59, 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0xbe, }; static const unsigned char xdh_wei448_2688_sharedsecret[] = { 0x10, 0x0c, 0xdb, 0xa5, 0x2c, 0xd0, 0x5a, 0x3c, 0x18, 0x21, 0x9d, 0xb9, 0x81, 0x54, 0xd9, 0x0c, 0x05, 0xca, 0x6b, 0x4d, 0xce, 0xfa, 0xa0, 0xce, 0xf9, 0x05, 0x38, 0xe7, 0xb8, 0x08, 0x79, 0xf2, 0xd6, 0x7d, 0x5a, 0xb2, 0xc3, 0x1c, 0x28, 0xf7, 0x7b, 0x38, 0x96, 0x9d, 0x81, 0x7a, 0x78, 0xd0, 0x5f, 0x6a, 0x55, 0x99, 0xb8, 0x4b, 0x19, 0x41, }; static const wycheproof_xdh_test xdh_wei448_2688 = { .name = "xdh_wei448_2688", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2688_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2688_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2688_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2688_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 105 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2689 for XDH, tcId is 106 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2689_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2689_ourpubkey[] = { 0x31, 0xd6, 0xf7, 0x92, 0xba, 0x74, 0x14, 0xed, 0x99, 0xe6, 0x08, 0x18, 0xf7, 0x31, 0x48, 0x70, 0xf3, 0xc0, 0x1a, 0x6a, 0x6c, 0xcc, 0x57, 0xde, 0xfa, 0xcf, 0xb0, 0x28, 0x13, 0x4b, 0xfb, 0xf5, 0x3c, 0xca, 0xe7, 0xaf, 0xe2, 0xf6, 0xbe, 0x5b, 0x70, 0x8d, 0x16, 0x75, 0xe1, 0x92, 0x45, 0xa2, 0xbc, 0x86, 0xaf, 0x31, 0xe3, 0xcd, 0x5e, 0x32, }; static const unsigned char xdh_wei448_2689_privkey[] = { 0xdc, 0xc6, 0x1f, 0xe1, 0x8e, 0xab, 0x64, 0xde, 0x8b, 0x96, 0x87, 0xb2, 0x8b, 0xf0, 0x2d, 0x9e, 0x53, 0x32, 0x0c, 0x98, 0xe1, 0xcf, 0x1e, 0x18, 0x45, 0x31, 0x1e, 0x17, 0xea, 0xaf, 0x7e, 0x27, 0x47, 0x67, 0xd9, 0xe6, 0x79, 0x78, 0x05, 0xd5, 0x80, 0xfc, 0x48, 0xc2, 0x49, 0xec, 0x37, 0x6d, 0xb9, 0x22, 0x60, 0xbc, 0x39, 0x0e, 0xc4, 0x89, }; static const unsigned char xdh_wei448_2689_sharedsecret[] = { 0xe8, 0x50, 0x50, 0xba, 0x91, 0xb8, 0xcd, 0xd6, 0xed, 0x86, 0xce, 0xc4, 0x7b, 0xe3, 0x16, 0x2d, 0x70, 0x59, 0x9c, 0xa3, 0x43, 0x3e, 0x7c, 0x6d, 0x3e, 0xc8, 0xff, 0xfe, 0x75, 0x8b, 0x60, 0x79, 0x69, 0xf9, 0x86, 0xe5, 0xc0, 0x10, 0xbc, 0xcf, 0xf0, 0xff, 0xe1, 0x8e, 0x86, 0x1f, 0xf8, 0x7b, 0x46, 0x20, 0x40, 0xb6, 0x11, 0xd4, 0x04, 0x8e, }; static const wycheproof_xdh_test xdh_wei448_2689 = { .name = "xdh_wei448_2689", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2689_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2689_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2689_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2689_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 106 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2690 for XDH, tcId is 107 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2690_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2690_ourpubkey[] = { 0xfd, 0x6d, 0x30, 0xa9, 0x98, 0x7c, 0x8e, 0xc5, 0xc9, 0x75, 0xbf, 0xc2, 0x09, 0x98, 0x47, 0x4a, 0x22, 0xf9, 0x36, 0xfd, 0x78, 0xab, 0x3c, 0x6f, 0x62, 0x1e, 0x0f, 0xf8, 0xd5, 0x25, 0x80, 0x79, 0x5e, 0x88, 0x45, 0x86, 0xa5, 0xf3, 0x1b, 0x47, 0x47, 0x0d, 0x08, 0xc0, 0x5c, 0x2b, 0xc7, 0x60, 0xa4, 0x12, 0x4a, 0x03, 0x7a, 0xed, 0x0e, 0x77, }; static const unsigned char xdh_wei448_2690_privkey[] = { 0x38, 0x0f, 0xaa, 0x61, 0xba, 0x00, 0xb7, 0xf4, 0x5d, 0x70, 0xea, 0xc9, 0x8d, 0x0c, 0x5b, 0x42, 0x00, 0x41, 0x8d, 0xe5, 0xfa, 0xad, 0x0f, 0x1e, 0x21, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0xf1, }; static const unsigned char xdh_wei448_2690_sharedsecret[] = { 0x2a, 0xf9, 0x62, 0x7c, 0xdc, 0x91, 0x9e, 0x6a, 0xff, 0xf5, 0xf9, 0x1c, 0x8d, 0xe2, 0xe2, 0x35, 0xf6, 0xea, 0x2f, 0xc3, 0x7a, 0xf7, 0xbc, 0xe7, 0xbd, 0xdf, 0x80, 0xe0, 0x31, 0x97, 0xd1, 0x3b, 0x8f, 0xa4, 0x24, 0x58, 0x84, 0x4c, 0xc7, 0x91, 0x8d, 0xe6, 0x28, 0xc8, 0x32, 0x81, 0xcc, 0xf4, 0xd3, 0x9c, 0x1e, 0x68, 0x55, 0xc4, 0x26, 0x76, }; static const wycheproof_xdh_test xdh_wei448_2690 = { .name = "xdh_wei448_2690", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2690_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2690_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2690_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2690_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 107 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2691 for XDH, tcId is 108 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2691_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2691_ourpubkey[] = { 0x96, 0x8c, 0x9d, 0x83, 0x83, 0x62, 0x61, 0xd9, 0xca, 0x65, 0xed, 0x8a, 0x78, 0xa4, 0x98, 0x6d, 0xbb, 0xf0, 0x78, 0x66, 0x70, 0x13, 0xb7, 0x31, 0xba, 0xbe, 0x7e, 0x99, 0xd1, 0xf7, 0x28, 0x67, 0xf8, 0xb4, 0x57, 0xfa, 0xca, 0xfb, 0xb9, 0x73, 0x5d, 0x9b, 0x8c, 0x24, 0x4a, 0x61, 0xf6, 0x7e, 0x06, 0x7e, 0xb2, 0x6e, 0x7e, 0xf8, 0x96, 0x85, }; static const unsigned char xdh_wei448_2691_privkey[] = { 0xcc, 0x44, 0x2e, 0xe9, 0xdd, 0xeb, 0x3f, 0x1f, 0xf0, 0x4c, 0x32, 0x56, 0xde, 0x35, 0x1a, 0xeb, 0xa2, 0x2d, 0x82, 0x26, 0xa4, 0x9b, 0xf2, 0x1c, 0xa4, 0x13, 0xa0, 0x7f, 0xac, 0x9e, 0x21, 0x33, 0x20, 0x5c, 0x46, 0x8e, 0xf2, 0xa4, 0x7f, 0x10, 0xc7, 0xbe, 0xf3, 0x5f, 0x1c, 0xe7, 0x62, 0x21, 0xbf, 0x8d, 0x61, 0xca, 0x4b, 0x13, 0x36, 0xaf, }; static const unsigned char xdh_wei448_2691_sharedsecret[] = { 0x88, 0xe6, 0x53, 0xd8, 0x87, 0xae, 0xf8, 0xf3, 0xd1, 0xaf, 0xb7, 0x74, 0xd3, 0x7a, 0x85, 0xdd, 0x3f, 0x05, 0xb8, 0xbc, 0xc9, 0x24, 0xce, 0x8c, 0x48, 0x2f, 0x61, 0x27, 0x6b, 0x27, 0x90, 0x6b, 0x94, 0xa5, 0xd6, 0xaf, 0xa2, 0xfe, 0x77, 0xd5, 0x39, 0xaf, 0x69, 0x3d, 0x62, 0x66, 0x47, 0x0c, 0xb4, 0x74, 0x98, 0x2c, 0xbc, 0x95, 0x8d, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2691 = { .name = "xdh_wei448_2691", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2691_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2691_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2691_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2691_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 108 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2692 for XDH, tcId is 109 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2692_peerpubkey[] = { 0x75, 0x01, 0x3b, 0x73, 0x52, 0xd4, 0x8e, 0x25, 0x27, 0x81, 0x1e, 0xdd, 0x48, 0xba, 0x39, 0x2c, 0x60, 0xd3, 0xaf, 0x73, 0x4b, 0xb6, 0xe0, 0xf3, 0x5e, 0xc5, 0x7a, 0xf6, 0xcc, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0x35, 0x65, 0xd1, 0xd4, 0xd7, 0x1a, 0x0e, 0x86, 0x71, 0x65, 0xad, 0x7e, 0xdc, 0x62, 0x12, }; static const unsigned char xdh_wei448_2692_ourpubkey[] = { 0x71, 0x36, 0x72, 0x63, 0xc9, 0xda, 0x7b, 0xe9, 0x39, 0xc7, 0x46, 0xba, 0xa8, 0x4e, 0x3a, 0xd6, 0x7a, 0xb4, 0x74, 0x74, 0x96, 0x2c, 0xff, 0xc4, 0x99, 0x53, 0x18, 0x1e, 0x0a, 0x65, 0x6b, 0xf6, 0x98, 0x27, 0x73, 0xdb, 0xd3, 0x10, 0xd1, 0x21, 0xe8, 0xb9, 0x30, 0xd3, 0xd3, 0x3a, 0xa1, 0x47, 0xdc, 0x4b, 0xff, 0x18, 0xf9, 0x81, 0xac, 0xc9, }; static const unsigned char xdh_wei448_2692_privkey[] = { 0xe4, 0xc8, 0xfd, 0x4e, 0x36, 0xe5, 0xc0, 0x67, 0x88, 0x9f, 0xc5, 0xfc, 0xc4, 0x2f, 0xe9, 0xbf, 0x9d, 0xbb, 0xf5, 0xa6, 0x2b, 0x74, 0x58, 0xb9, 0x4e, 0x38, 0x4a, 0x99, 0x18, 0x93, 0x05, 0x01, 0x49, 0xa8, 0x11, 0x5a, 0x3e, 0xc6, 0xaa, 0xb5, 0x3c, 0xf4, 0xe6, 0x94, 0x52, 0x6b, 0x49, 0x09, 0xd8, 0x5c, 0xb3, 0x0e, 0x7d, 0x70, 0x73, 0x88, }; static const unsigned char xdh_wei448_2692_sharedsecret[] = { 0x98, 0x39, 0x2b, 0x35, 0x9f, 0x7f, 0xb1, 0xde, 0x77, 0xa5, 0x21, 0x2e, 0xe9, 0xde, 0x63, 0x65, 0xa6, 0xa4, 0xbf, 0x6e, 0x1d, 0x4a, 0xe6, 0xa3, 0x74, 0xf4, 0xe6, 0x67, 0xa4, 0x98, 0x85, 0xb2, 0xc9, 0x36, 0x7b, 0x1c, 0x95, 0xc8, 0xb8, 0x90, 0xe1, 0x9f, 0x53, 0x0e, 0x30, 0xbe, 0xe7, 0xfb, 0x7a, 0x7e, 0xfb, 0x35, 0x00, 0x8a, 0x4e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_2692 = { .name = "xdh_wei448_2692", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2692_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2692_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2692_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2692_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 109 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2693 for XDH, tcId is 110 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2693_peerpubkey[] = { 0xe9, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_2693_ourpubkey[] = { 0xce, 0x7a, 0x0d, 0xf2, 0xb4, 0xef, 0x0e, 0x79, 0x11, 0x55, 0xd9, 0x62, 0xe7, 0x6c, 0x1e, 0x7d, 0xd6, 0x48, 0xa0, 0x57, 0x2f, 0x11, 0xb1, 0x6a, 0x0f, 0x30, 0x20, 0x60, 0x32, 0xe2, 0xb8, 0xd6, 0x94, 0xae, 0x2c, 0x02, 0x4a, 0x86, 0x4d, 0xc7, 0x04, 0x4d, 0x31, 0x6b, 0x9f, 0x50, 0x1c, 0x11, 0x57, 0x2c, 0xc0, 0x36, 0xe4, 0x81, 0x1c, 0x42, }; static const unsigned char xdh_wei448_2693_privkey[] = { 0xac, 0x81, 0xab, 0x6f, 0x22, 0x44, 0x54, 0xa8, 0xf8, 0x73, 0x11, 0x7d, 0x2e, 0x64, 0x8e, 0xc0, 0x84, 0x69, 0x31, 0xe7, 0xef, 0x64, 0x9e, 0x90, 0xeb, 0x38, 0x2c, 0x71, 0x33, 0x10, 0xba, 0x79, 0x11, 0xd2, 0xcb, 0x3f, 0xf1, 0x79, 0x76, 0x32, 0xf4, 0x39, 0xbf, 0xd6, 0xeb, 0xb3, 0x99, 0x09, 0x89, 0x68, 0xd4, 0x4b, 0x80, 0xfb, 0x63, 0x97, }; static const unsigned char xdh_wei448_2693_sharedsecret[] = { 0x20, 0x6e, 0x12, 0xa6, 0x66, 0xe8, 0xba, 0xdb, 0xdf, 0x25, 0x4d, 0x71, 0x80, 0xd9, 0x79, 0x27, 0x3f, 0x61, 0xd6, 0x6d, 0xa1, 0x4a, 0xb9, 0x4e, 0xa9, 0xce, 0x2d, 0x26, 0x10, 0x99, 0x6d, 0xea, 0xb7, 0x9a, 0x51, 0xc8, 0x78, 0x52, 0x21, 0x68, 0x97, 0xbb, 0xca, 0xb2, 0xcc, 0x4d, 0xa8, 0x9c, 0xc7, 0x7e, 0x56, 0x6a, 0x4b, 0x4e, 0x50, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_2693 = { .name = "xdh_wei448_2693", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2693_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2693_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2693_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2693_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 110 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2694 for XDH, tcId is 111 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2694_peerpubkey[] = { 0xeb, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_2694_ourpubkey[] = { 0x4a, 0xe5, 0xe6, 0x62, 0x79, 0x81, 0x48, 0x1d, 0x5f, 0xf7, 0x4b, 0xb1, 0x25, 0x04, 0x17, 0xbc, 0x3f, 0x4a, 0x6d, 0x1a, 0x17, 0x16, 0xa1, 0x92, 0x06, 0x77, 0x74, 0xdf, 0xcd, 0x99, 0x0b, 0x31, 0x54, 0x36, 0x88, 0xf2, 0x4d, 0x62, 0x5f, 0x07, 0xc5, 0x85, 0x0b, 0xc0, 0x33, 0xf1, 0x49, 0x89, 0x44, 0x34, 0x72, 0x21, 0x06, 0xba, 0xbc, 0xdd, }; static const unsigned char xdh_wei448_2694_privkey[] = { 0x78, 0x29, 0x04, 0x1f, 0x1c, 0xd5, 0x9e, 0x15, 0x46, 0x26, 0xe3, 0x28, 0x9d, 0x99, 0x3e, 0x42, 0xc3, 0xee, 0x2d, 0x2a, 0x53, 0x1e, 0xd4, 0xd5, 0x89, 0x90, 0xad, 0xf8, 0x56, 0xdf, 0x28, 0x6f, 0xf9, 0xf4, 0xc5, 0xb5, 0xb1, 0xa3, 0xd1, 0x5e, 0x40, 0xb2, 0x97, 0x75, 0xed, 0xfd, 0x66, 0x57, 0xc9, 0x3d, 0xab, 0xa3, 0x6a, 0x42, 0x02, 0xf5, }; static const unsigned char xdh_wei448_2694_sharedsecret[] = { 0x1e, 0x11, 0x74, 0x71, 0xe0, 0x12, 0x91, 0xfe, 0xe7, 0xcd, 0x90, 0x50, 0xc3, 0x1b, 0xff, 0xa5, 0x9d, 0x96, 0xcd, 0x66, 0xdd, 0x2c, 0x32, 0x84, 0xbe, 0x42, 0x36, 0x68, 0x28, 0x71, 0xd2, 0x69, 0x98, 0xbe, 0xbc, 0x0f, 0x3c, 0x7b, 0x14, 0xcc, 0x3a, 0x82, 0x93, 0x92, 0xbc, 0xb8, 0x30, 0x7e, 0x84, 0x50, 0xfb, 0xfd, 0x59, 0x91, 0xe4, 0xdf, }; static const wycheproof_xdh_test xdh_wei448_2694 = { .name = "xdh_wei448_2694", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2694_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2694_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2694_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2694_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 111 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2695 for XDH, tcId is 112 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2695_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_2695_ourpubkey[] = { 0xa9, 0x92, 0x3f, 0x0e, 0x28, 0xf3, 0x0a, 0x65, 0x6c, 0x50, 0xe6, 0xa5, 0xa2, 0x5e, 0xf8, 0x36, 0x9d, 0xd7, 0x89, 0x2c, 0xbc, 0xa8, 0x18, 0x5c, 0x85, 0x7b, 0xd2, 0x63, 0x90, 0xa0, 0xb5, 0x26, 0x9d, 0x62, 0x81, 0x69, 0x7b, 0x32, 0x56, 0x12, 0x51, 0xb9, 0xfe, 0xf0, 0xb0, 0x18, 0x6f, 0x18, 0xd3, 0x79, 0x1c, 0x2f, 0x01, 0xff, 0x85, 0x69, }; static const unsigned char xdh_wei448_2695_privkey[] = { 0xf4, 0xa3, 0x46, 0x0f, 0xc8, 0xd5, 0xa9, 0x8d, 0x42, 0x67, 0x03, 0xdf, 0x39, 0xcb, 0xc1, 0x5d, 0x7f, 0xf0, 0xd3, 0x1d, 0xb4, 0x1a, 0xd6, 0x19, 0xa2, 0x8d, 0x69, 0x21, 0xde, 0xec, 0x6a, 0x3b, 0xed, 0xd1, 0xd7, 0x1c, 0xdf, 0xdf, 0x89, 0x88, 0xd7, 0xe1, 0xd5, 0xaf, 0x08, 0x50, 0xad, 0x4f, 0x56, 0x44, 0x03, 0x39, 0x35, 0xe7, 0x4d, 0x95, }; static const unsigned char xdh_wei448_2695_sharedsecret[] = { 0xea, 0xc9, 0x93, 0x28, 0x79, 0x47, 0xde, 0xfb, 0x6b, 0xb8, 0x4c, 0x60, 0x87, 0x13, 0x0d, 0x7b, 0x9f, 0xc4, 0x7e, 0x75, 0xb2, 0xc9, 0x45, 0x52, 0xb8, 0xa0, 0xb0, 0x75, 0xe7, 0x1d, 0x27, 0x06, 0x85, 0x50, 0xa2, 0x4d, 0x31, 0x40, 0xc9, 0x40, 0xbc, 0x86, 0x20, 0x1c, 0xc7, 0x6b, 0x83, 0xe2, 0xba, 0xf2, 0x31, 0xc2, 0x6b, 0x14, 0xab, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2695 = { .name = "xdh_wei448_2695", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2695_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2695_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2695_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2695_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 112 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2696 for XDH, tcId is 113 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2696_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_2696_ourpubkey[] = { 0xbf, 0xb4, 0x48, 0xd0, 0x3f, 0xa2, 0xb0, 0x60, 0x66, 0xa5, 0x29, 0x55, 0xf6, 0x19, 0x29, 0xcf, 0xaf, 0x3b, 0xab, 0xc2, 0x4d, 0x17, 0xc7, 0xa5, 0x18, 0xe1, 0xd0, 0xbe, 0x3b, 0xd7, 0x8e, 0xe9, 0x4d, 0x23, 0x70, 0x28, 0x88, 0xb5, 0x4b, 0xdd, 0x5c, 0x6c, 0xc2, 0x7c, 0x4f, 0xca, 0xae, 0x34, 0x29, 0xc2, 0x89, 0xa3, 0xb3, 0x62, 0xa1, 0x3d, }; static const unsigned char xdh_wei448_2696_privkey[] = { 0xe0, 0x3c, 0x56, 0xa2, 0x8c, 0xd0, 0x10, 0xfc, 0x8a, 0x1d, 0x86, 0x68, 0x74, 0x7d, 0x24, 0xf0, 0x6e, 0xbc, 0xc2, 0x88, 0x5e, 0xe4, 0x60, 0xa7, 0xdb, 0x14, 0xc1, 0x48, 0x41, 0xe5, 0x81, 0x89, 0x96, 0x16, 0xca, 0x71, 0x8d, 0x42, 0xc0, 0x6c, 0x06, 0xf2, 0xee, 0xdb, 0x2d, 0x7a, 0x23, 0x06, 0x90, 0xb0, 0x01, 0x0b, 0xd6, 0x7e, 0x77, 0x9a, }; static const unsigned char xdh_wei448_2696_sharedsecret[] = { 0xe2, 0x5a, 0x60, 0xb8, 0x52, 0x3f, 0x3e, 0x15, 0x80, 0x09, 0x8a, 0x06, 0x11, 0xee, 0x54, 0x9e, 0x20, 0x1e, 0x5a, 0x70, 0x4e, 0x39, 0x26, 0x3d, 0x06, 0x77, 0x12, 0xfc, 0x47, 0x22, 0x94, 0xc3, 0x78, 0xca, 0x45, 0xf9, 0x76, 0x70, 0x51, 0xea, 0x45, 0xa9, 0x45, 0xa4, 0x85, 0xf5, 0x6c, 0x0a, 0xff, 0x06, 0x38, 0x8e, 0x6f, 0xc1, 0x64, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_2696 = { .name = "xdh_wei448_2696", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2696_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2696_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2696_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2696_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 113 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2697 for XDH, tcId is 114 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2697_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2697_ourpubkey[] = { 0x96, 0x78, 0x62, 0x1d, 0x7b, 0xef, 0x90, 0x10, 0xa2, 0x0c, 0x77, 0x2e, 0x52, 0x29, 0x20, 0xd0, 0x59, 0x63, 0x6a, 0xd5, 0xe8, 0x56, 0x03, 0xd6, 0x36, 0x45, 0x69, 0x93, 0x31, 0xda, 0x46, 0xab, 0xa3, 0xd8, 0xbb, 0xe5, 0x7d, 0x08, 0x40, 0x42, 0x2c, 0x57, 0xe5, 0xf8, 0xa7, 0x6a, 0xc4, 0x53, 0x3a, 0xde, 0x25, 0xcd, 0xcc, 0xfc, 0xb6, 0xfc, }; static const unsigned char xdh_wei448_2697_privkey[] = { 0x70, 0x19, 0xc5, 0xdd, 0x32, 0x8e, 0xf8, 0x2c, 0xf5, 0x98, 0x49, 0x0d, 0x2c, 0xae, 0xb3, 0xb7, 0x2c, 0xf9, 0x39, 0x33, 0xee, 0xc1, 0xfd, 0x3f, 0xe1, 0xf6, 0x12, 0xb4, 0x3b, 0x5d, 0xdb, 0xc0, 0x11, 0x3f, 0x71, 0x1b, 0x84, 0xd5, 0x12, 0x23, 0xde, 0x93, 0x8f, 0x42, 0xa6, 0x4f, 0x5f, 0x00, 0x20, 0x44, 0x5c, 0x95, 0x14, 0xac, 0xbe, 0xd0, }; static const unsigned char xdh_wei448_2697_sharedsecret[] = { 0x11, 0x3f, 0xc2, 0x8f, 0x3b, 0xa7, 0x19, 0xfc, 0xee, 0xd2, 0x4a, 0x4a, 0x07, 0xaf, 0x7f, 0x24, 0xa9, 0x81, 0xb2, 0x67, 0x5f, 0x36, 0x65, 0x7c, 0x23, 0xfe, 0x92, 0xbb, 0xe0, 0x18, 0x22, 0x9c, 0xb9, 0x14, 0x78, 0x76, 0x7e, 0x7d, 0xba, 0x65, 0x9b, 0x08, 0xd6, 0xc5, 0xdc, 0xf3, 0xd5, 0xed, 0x27, 0xf4, 0xe8, 0xa3, 0x17, 0xfc, 0x84, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_2697 = { .name = "xdh_wei448_2697", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2697_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2697_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2697_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2697_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 114 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2698 for XDH, tcId is 115 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2698_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2698_ourpubkey[] = { 0x53, 0xd1, 0xd6, 0x66, 0x44, 0x85, 0xc9, 0xba, 0x46, 0x6c, 0x25, 0x5c, 0x60, 0x86, 0xce, 0x90, 0x1a, 0x0f, 0x74, 0xa2, 0xd4, 0xed, 0xb6, 0x11, 0x58, 0x54, 0x29, 0xe0, 0xb8, 0xa8, 0xea, 0x09, 0x65, 0xba, 0x74, 0x84, 0x0f, 0x1b, 0x30, 0x47, 0x7e, 0x85, 0xe6, 0x07, 0xe3, 0xf7, 0x0b, 0xc6, 0xca, 0x73, 0x35, 0x48, 0x20, 0x3d, 0x86, 0x57, }; static const unsigned char xdh_wei448_2698_privkey[] = { 0x80, 0xa5, 0xce, 0xa0, 0x6d, 0xb4, 0x30, 0xb1, 0xef, 0x04, 0x53, 0x4c, 0xf7, 0x7b, 0x37, 0x59, 0x3b, 0x40, 0x65, 0x34, 0xfc, 0xc6, 0x64, 0xbd, 0x43, 0xd4, 0xc5, 0x0a, 0x26, 0x12, 0xc6, 0x65, 0x07, 0xd5, 0x34, 0xc8, 0x61, 0x68, 0xd6, 0x94, 0xb4, 0x1c, 0x3d, 0xfc, 0xb5, 0x78, 0x3f, 0xbc, 0x4f, 0xc3, 0xbe, 0xa9, 0x0d, 0x0d, 0x15, 0xed, }; static const unsigned char xdh_wei448_2698_sharedsecret[] = { 0x37, 0x4b, 0xb9, 0x9f, 0x33, 0x9f, 0x10, 0xe1, 0xcf, 0x5c, 0xc5, 0x27, 0xd1, 0x32, 0xfc, 0x0b, 0xdb, 0xf6, 0x57, 0xad, 0x0b, 0x90, 0x0b, 0x04, 0x89, 0x73, 0xd5, 0xdc, 0xcc, 0x69, 0x6c, 0x69, 0xae, 0xf6, 0xb2, 0x58, 0xee, 0x68, 0x5d, 0x36, 0x0d, 0x8f, 0xc2, 0xcd, 0xc9, 0xff, 0xea, 0x4b, 0x87, 0x63, 0x4b, 0x10, 0x6e, 0x6a, 0x2d, 0x14, }; static const wycheproof_xdh_test xdh_wei448_2698 = { .name = "xdh_wei448_2698", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2698_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2698_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2698_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2698_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 115 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2699 for XDH, tcId is 116 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2699_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2699_ourpubkey[] = { 0x6b, 0xb7, 0xf2, 0xcd, 0x1e, 0xce, 0xba, 0x07, 0x8c, 0x56, 0x60, 0x7d, 0x95, 0x36, 0xd0, 0x21, 0xf9, 0xc5, 0x8e, 0xfc, 0x6e, 0x9a, 0xfb, 0xff, 0xda, 0x55, 0x65, 0x09, 0x66, 0x70, 0x82, 0x26, 0x32, 0xb3, 0xb4, 0xf2, 0x72, 0xb6, 0x91, 0x21, 0xa9, 0x83, 0x9e, 0x70, 0x30, 0xa6, 0x5e, 0x06, 0x16, 0xb4, 0xd6, 0xaa, 0xae, 0x56, 0xda, 0xeb, }; static const unsigned char xdh_wei448_2699_privkey[] = { 0x0c, 0xd9, 0x0e, 0x8e, 0x75, 0xe9, 0xff, 0x33, 0x9b, 0x50, 0x3e, 0xc8, 0x2a, 0xda, 0xef, 0xdd, 0x44, 0xae, 0x5c, 0x85, 0xb6, 0x6f, 0xf4, 0xca, 0x93, 0xae, 0xf7, 0xe8, 0xd7, 0x29, 0x20, 0xe4, 0x70, 0x11, 0x6f, 0x25, 0xe2, 0x0a, 0xe5, 0xec, 0xf2, 0x35, 0xcf, 0x6f, 0x64, 0xab, 0x37, 0x8e, 0xbd, 0xd5, 0x71, 0x0b, 0x87, 0x25, 0xcd, 0x8b, }; static const unsigned char xdh_wei448_2699_sharedsecret[] = { 0xee, 0xa5, 0x6b, 0xb5, 0x1e, 0x98, 0xd2, 0x78, 0x4c, 0xb4, 0x3f, 0x43, 0x35, 0x85, 0x2f, 0xa7, 0x80, 0x4d, 0xc9, 0x75, 0x1f, 0x90, 0x51, 0x3b, 0x8f, 0x2d, 0x60, 0xc8, 0xf8, 0x4c, 0x61, 0xcd, 0xed, 0x28, 0x26, 0x08, 0xb7, 0xd6, 0x42, 0x42, 0x4a, 0x13, 0x10, 0x15, 0x59, 0xd2, 0xc0, 0x40, 0x4d, 0xeb, 0xae, 0x96, 0x59, 0x07, 0x73, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2699 = { .name = "xdh_wei448_2699", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2699_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2699_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2699_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2699_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 116 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2700 for XDH, tcId is 117 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2700_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_2700_ourpubkey[] = { 0x86, 0xb7, 0x01, 0x96, 0xfe, 0x3b, 0x44, 0x0b, 0xbd, 0x78, 0xbd, 0xc9, 0x7e, 0x70, 0x94, 0xf5, 0x27, 0xbd, 0xa1, 0xac, 0x38, 0x3c, 0xe7, 0x0e, 0x6e, 0x0f, 0xd6, 0x1b, 0x3c, 0x12, 0x19, 0x40, 0x21, 0x6d, 0x67, 0xe1, 0x97, 0xf0, 0xa9, 0xbc, 0xdc, 0xcc, 0x74, 0x66, 0x0b, 0xc4, 0x3c, 0x93, 0xaf, 0x8c, 0x3c, 0x3c, 0xc2, 0xc6, 0x35, 0xf3, }; static const unsigned char xdh_wei448_2700_privkey[] = { 0x64, 0x82, 0x61, 0x5f, 0xbe, 0x7d, 0xc4, 0x76, 0xb9, 0x56, 0x04, 0x61, 0xc7, 0xd7, 0xb3, 0x77, 0x77, 0x4b, 0x74, 0x20, 0x42, 0x7b, 0xb1, 0xe2, 0x69, 0x7c, 0xd1, 0xd7, 0x04, 0x1b, 0x7c, 0x6c, 0x42, 0xe4, 0xf8, 0x9e, 0x3b, 0xf9, 0xb3, 0xfc, 0x02, 0x49, 0xbc, 0xd4, 0xf1, 0x8c, 0xfb, 0x50, 0xb5, 0x2b, 0x69, 0xb8, 0x5f, 0x32, 0x22, 0x82, }; static const unsigned char xdh_wei448_2700_sharedsecret[] = { 0x26, 0x07, 0xb8, 0x3d, 0xa4, 0xb7, 0x94, 0x5e, 0xdf, 0x68, 0xc9, 0xc1, 0x89, 0xa6, 0x99, 0x5a, 0xb2, 0xb2, 0xff, 0xdb, 0xdf, 0x33, 0xca, 0x78, 0x36, 0x31, 0x99, 0x89, 0xed, 0x53, 0x2d, 0x19, 0x2e, 0x72, 0xa9, 0x1d, 0xe7, 0x7d, 0xda, 0x49, 0xe3, 0xa9, 0xc6, 0x59, 0x8c, 0xdd, 0xe7, 0x2d, 0x09, 0x61, 0x4d, 0x35, 0xd1, 0x87, 0xb1, 0x64, }; static const wycheproof_xdh_test xdh_wei448_2700 = { .name = "xdh_wei448_2700", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2700_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2700_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2700_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2700_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 117 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2701 for XDH, tcId is 118 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2701_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2701_ourpubkey[] = { 0x95, 0x13, 0x33, 0x31, 0x36, 0xfe, 0x46, 0x3f, 0xf4, 0xce, 0xff, 0x0c, 0x5a, 0x18, 0xee, 0x6a, 0x1a, 0xc4, 0x67, 0x8d, 0x8c, 0x4a, 0xb7, 0x5c, 0x8f, 0xd1, 0x84, 0x30, 0xfc, 0xe3, 0x87, 0xb0, 0x1c, 0xb3, 0xd8, 0x97, 0x5f, 0xb9, 0xd1, 0xb4, 0x26, 0x32, 0x87, 0xd9, 0x4b, 0xb4, 0xd4, 0xd8, 0x72, 0xd5, 0xb0, 0xd7, 0x42, 0xf0, 0x71, 0x50, }; static const unsigned char xdh_wei448_2701_privkey[] = { 0xfc, 0x43, 0x6d, 0x2c, 0xf9, 0x20, 0x8f, 0xba, 0x04, 0x0a, 0x46, 0x81, 0x78, 0x6f, 0x6b, 0xc6, 0x71, 0xa8, 0xe8, 0xdf, 0xcf, 0x29, 0x21, 0x5d, 0x65, 0xc6, 0x99, 0xea, 0x79, 0xf4, 0x49, 0xc9, 0x87, 0x54, 0xa4, 0xf0, 0xd0, 0x3f, 0xa0, 0x84, 0x06, 0x67, 0x14, 0x34, 0xe2, 0xbd, 0xf5, 0x8b, 0x29, 0x0f, 0x7b, 0x86, 0xad, 0xf1, 0xfc, 0xda, }; static const unsigned char xdh_wei448_2701_sharedsecret[] = { 0x37, 0xce, 0x13, 0xff, 0xb8, 0xe9, 0x94, 0xa9, 0x3a, 0xba, 0x40, 0xd0, 0x65, 0x1e, 0x1b, 0x36, 0x68, 0xa4, 0x47, 0x91, 0x9d, 0x30, 0x43, 0x4c, 0x83, 0x23, 0xe9, 0x02, 0xfe, 0xe7, 0xc7, 0x9f, 0x3f, 0xc6, 0x4c, 0x9a, 0xb5, 0x1d, 0x4a, 0xb7, 0x75, 0xed, 0x0e, 0x4e, 0xfc, 0x4e, 0xe4, 0x41, 0x37, 0xe7, 0x52, 0x87, 0x53, 0x3d, 0x0c, 0xad, }; static const wycheproof_xdh_test xdh_wei448_2701 = { .name = "xdh_wei448_2701", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2701_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2701_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2701_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2701_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 118 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2702 for XDH, tcId is 119 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2702_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_2702_ourpubkey[] = { 0x79, 0x67, 0xfb, 0xf5, 0xdd, 0xc0, 0xfe, 0xa7, 0x29, 0xe0, 0x80, 0xe9, 0x6a, 0x22, 0xcf, 0x64, 0xb4, 0xbf, 0xa9, 0x7c, 0xb6, 0x19, 0xc3, 0x2f, 0x35, 0x7a, 0x29, 0x90, 0x0a, 0xe9, 0x55, 0x56, 0x0e, 0x4b, 0xd8, 0x58, 0xfb, 0xf6, 0x41, 0x21, 0xfb, 0x5d, 0x2b, 0x9a, 0xae, 0x2a, 0xc9, 0x67, 0xc3, 0x52, 0x8f, 0x24, 0xca, 0x13, 0x04, 0x47, }; static const unsigned char xdh_wei448_2702_privkey[] = { 0xb0, 0x6b, 0x27, 0xfd, 0x63, 0x9f, 0xdb, 0x97, 0xcc, 0x2d, 0xec, 0x42, 0x26, 0x2a, 0x4c, 0x4a, 0x6c, 0xb9, 0x41, 0xf2, 0x6b, 0xd9, 0x8b, 0xea, 0x7a, 0xf1, 0xe3, 0xe9, 0x78, 0xdc, 0x17, 0xdf, 0x86, 0x07, 0x65, 0x37, 0x14, 0x8d, 0xef, 0xbe, 0x42, 0x68, 0x89, 0xaa, 0x89, 0x8b, 0xf6, 0x62, 0xd8, 0xb8, 0xed, 0x82, 0xfc, 0x49, 0xed, 0xdb, }; static const unsigned char xdh_wei448_2702_sharedsecret[] = { 0x0a, 0xee, 0x21, 0xca, 0x01, 0x39, 0xda, 0xfb, 0xd9, 0x57, 0xd0, 0xa8, 0x06, 0x0a, 0x7f, 0xba, 0x87, 0x25, 0xf5, 0x7f, 0x02, 0xa0, 0xdc, 0x5c, 0xbf, 0xb9, 0x52, 0xe2, 0xc1, 0xe5, 0x3f, 0x4e, 0xca, 0xa0, 0x1a, 0x22, 0x7f, 0xd1, 0xe1, 0xbd, 0xa0, 0x2e, 0x2e, 0xaf, 0x77, 0x77, 0x55, 0x4c, 0x3e, 0xea, 0xbe, 0x86, 0x46, 0x70, 0xa4, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2702 = { .name = "xdh_wei448_2702", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2702_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2702_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2702_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2702_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 119 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2703 for XDH, tcId is 120 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2703_peerpubkey[] = { 0x14, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_2703_ourpubkey[] = { 0xa7, 0xdd, 0x94, 0x64, 0x09, 0x8d, 0xe5, 0x86, 0x92, 0x03, 0xad, 0xbe, 0x84, 0x7c, 0xf8, 0x3b, 0xe3, 0x4b, 0x7f, 0x6b, 0x1c, 0x29, 0x88, 0xf8, 0x0c, 0x58, 0x86, 0xa3, 0xae, 0x9c, 0x04, 0xfd, 0xe4, 0x64, 0xe4, 0x58, 0xe3, 0x3d, 0xdb, 0xbb, 0xb1, 0x70, 0x24, 0xfb, 0x4e, 0x48, 0xe1, 0x72, 0x46, 0xca, 0x78, 0xde, 0xee, 0xd6, 0x90, 0x0f, }; static const unsigned char xdh_wei448_2703_privkey[] = { 0x98, 0x39, 0xbc, 0x94, 0x16, 0x61, 0xbc, 0xe8, 0x57, 0x65, 0x26, 0xdc, 0x1a, 0xa2, 0x47, 0x3e, 0x68, 0x8b, 0x2e, 0x3e, 0xd9, 0x09, 0xcd, 0x2e, 0x4c, 0xf2, 0x1f, 0x60, 0x9c, 0xc9, 0x46, 0x85, 0x16, 0x72, 0x61, 0x91, 0xcc, 0x5b, 0xa8, 0x7f, 0xaa, 0x7c, 0x83, 0x11, 0xa3, 0xcc, 0x3d, 0xe3, 0x3a, 0x35, 0xd5, 0xdd, 0xdd, 0x04, 0x4d, 0xf5, }; static const unsigned char xdh_wei448_2703_sharedsecret[] = { 0x4f, 0x3e, 0x91, 0x76, 0x98, 0xb3, 0x15, 0x95, 0x67, 0xb4, 0xb5, 0x74, 0xeb, 0xbd, 0xc7, 0xc0, 0xaa, 0x0f, 0x84, 0x02, 0x3d, 0x66, 0xb5, 0xf9, 0x0f, 0x48, 0x80, 0x05, 0xaf, 0x6c, 0xb5, 0x2f, 0x51, 0xfb, 0x5a, 0x1d, 0xac, 0xcd, 0xc1, 0x9a, 0x54, 0xf7, 0x8f, 0xc3, 0x04, 0xf6, 0xe8, 0xbd, 0x8b, 0xa7, 0x54, 0x2b, 0xe5, 0xf2, 0x8b, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_2703 = { .name = "xdh_wei448_2703", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2703_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2703_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2703_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2703_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 120 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2704 for XDH, tcId is 121 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2704_peerpubkey[] = { 0x16, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_2704_ourpubkey[] = { 0x04, 0x72, 0x0c, 0xe0, 0xb0, 0x2e, 0x57, 0x45, 0x81, 0x79, 0x1c, 0x62, 0x08, 0x4e, 0x15, 0x41, 0xac, 0xa9, 0x87, 0x29, 0x36, 0x59, 0x4c, 0x3a, 0x29, 0x41, 0x6b, 0x3c, 0xbb, 0xe0, 0x84, 0xb5, 0xae, 0x7d, 0x7e, 0x35, 0xb2, 0x1f, 0xa3, 0x70, 0x8c, 0xc9, 0x3b, 0xce, 0x5e, 0x6b, 0xaf, 0xc7, 0x05, 0x8e, 0x3f, 0x94, 0x5e, 0x03, 0x38, 0x55, }; static const unsigned char xdh_wei448_2704_privkey[] = { 0x1c, 0xb5, 0xc1, 0x6c, 0xbf, 0x08, 0xe0, 0xc2, 0x76, 0x95, 0xb5, 0x65, 0x28, 0x30, 0x05, 0xa3, 0x45, 0xa9, 0x00, 0xa5, 0xb6, 0x48, 0xaf, 0x48, 0xf2, 0xeb, 0x4c, 0x01, 0xb1, 0x85, 0x37, 0x2c, 0xd4, 0xc1, 0x76, 0xd9, 0x69, 0x95, 0x6d, 0xac, 0xae, 0x71, 0x32, 0x92, 0xec, 0x12, 0x43, 0x16, 0x06, 0x2e, 0x59, 0x65, 0xca, 0x7d, 0xb7, 0x8e, }; static const unsigned char xdh_wei448_2704_sharedsecret[] = { 0x13, 0xe9, 0x79, 0x96, 0xfe, 0x6a, 0xd0, 0x7e, 0x56, 0x79, 0x59, 0x63, 0x94, 0x85, 0x6a, 0x7e, 0x5a, 0xa9, 0xad, 0xc3, 0xc9, 0x7d, 0x54, 0xbf, 0x26, 0xff, 0x2d, 0x25, 0xb3, 0x42, 0xc3, 0x00, 0xc0, 0xa6, 0xd3, 0xee, 0x9d, 0x2c, 0xd3, 0xf6, 0x65, 0x2d, 0xdb, 0x77, 0x8f, 0xfb, 0x78, 0x4e, 0xce, 0xdb, 0x25, 0x9b, 0x10, 0x63, 0x24, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2704 = { .name = "xdh_wei448_2704", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2704_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2704_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2704_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2704_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 121 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2705 for XDH, tcId is 122 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2705_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, }; static const unsigned char xdh_wei448_2705_ourpubkey[] = { 0x07, 0x1b, 0x8d, 0x46, 0xb0, 0xee, 0xed, 0x8d, 0x50, 0x6c, 0x74, 0xc3, 0x91, 0x06, 0x6c, 0x10, 0x78, 0xcd, 0x32, 0xad, 0x51, 0x1e, 0x0e, 0x78, 0x7c, 0x13, 0xaf, 0x7b, 0x1f, 0x28, 0x02, 0x2e, 0x0a, 0x95, 0xee, 0xfe, 0x3a, 0xbb, 0x53, 0xf3, 0xb8, 0x74, 0xb5, 0x27, 0x6d, 0x05, 0x51, 0x7b, 0x06, 0x9f, 0x54, 0x04, 0xaf, 0x8d, 0x04, 0xe4, }; static const unsigned char xdh_wei448_2705_privkey[] = { 0xec, 0xd7, 0xf5, 0x43, 0xac, 0x24, 0x82, 0xad, 0xbe, 0x97, 0x5e, 0xd9, 0x50, 0xe5, 0x93, 0x3c, 0x04, 0xc0, 0xdd, 0x19, 0x62, 0x34, 0xc7, 0x60, 0x30, 0x32, 0x5a, 0x32, 0x3b, 0x45, 0xbd, 0xce, 0x02, 0x93, 0x76, 0xfd, 0x84, 0x40, 0xf4, 0x00, 0x5b, 0x60, 0xc0, 0x85, 0x46, 0xc2, 0xad, 0x32, 0x0f, 0x87, 0x70, 0x07, 0xc6, 0x41, 0xb9, 0xfb, }; static const unsigned char xdh_wei448_2705_sharedsecret[] = { 0x72, 0xf6, 0x95, 0x46, 0x6f, 0x28, 0x29, 0x2f, 0xf3, 0x56, 0xda, 0x58, 0x52, 0x94, 0xc9, 0xd1, 0xdc, 0x66, 0xd1, 0xe7, 0x98, 0xcf, 0x73, 0x86, 0xef, 0x9a, 0xb3, 0x18, 0x59, 0x05, 0x24, 0x0c, 0x4a, 0xea, 0xa6, 0x0a, 0xe5, 0xc6, 0x2a, 0xab, 0x28, 0xf2, 0x57, 0x02, 0xa9, 0x19, 0xc1, 0x97, 0x54, 0xbf, 0xe3, 0x5d, 0x66, 0x6e, 0xca, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_2705 = { .name = "xdh_wei448_2705", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2705_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2705_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2705_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2705_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 122 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2706 for XDH, tcId is 123 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2706_peerpubkey[] = { 0x8a, 0xfe, 0xc4, 0x8c, 0xad, 0x2b, 0x71, 0xda, 0xd8, 0x7e, 0xe1, 0x22, 0xb7, 0x45, 0xc6, 0xd3, 0x9f, 0x2c, 0x50, 0x8c, 0xb4, 0x49, 0x1f, 0x0c, 0xa1, 0x3a, 0x85, 0x09, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0xca, 0x9a, 0x2e, 0x2b, 0x28, 0xe5, 0xf1, 0x79, 0x8e, 0x9a, 0x52, 0x81, 0x23, 0x9d, 0xed, }; static const unsigned char xdh_wei448_2706_ourpubkey[] = { 0x00, 0xe8, 0x8c, 0xff, 0x34, 0x7b, 0x65, 0x3e, 0x58, 0xac, 0xc9, 0xee, 0x6f, 0xee, 0xb5, 0x23, 0xba, 0x4b, 0xdf, 0x61, 0x64, 0xa5, 0x8d, 0x0f, 0x68, 0x4b, 0xf9, 0xa2, 0xfd, 0xae, 0x41, 0x88, 0xb5, 0x47, 0x16, 0x72, 0xa1, 0xc6, 0xe0, 0x85, 0x32, 0x4e, 0x42, 0x20, 0x88, 0xd3, 0x44, 0x9c, 0xe6, 0x77, 0xd5, 0xce, 0x36, 0xd9, 0x86, 0x37, }; static const unsigned char xdh_wei448_2706_privkey[] = { 0x54, 0xc3, 0xa7, 0x6f, 0x21, 0x16, 0x09, 0x99, 0x68, 0xcc, 0x31, 0x29, 0x1b, 0x36, 0xe5, 0x03, 0xca, 0x3e, 0x77, 0xa1, 0x90, 0x29, 0xe6, 0x0f, 0xcd, 0x06, 0xff, 0xdf, 0x5d, 0xbc, 0x7a, 0x54, 0xa5, 0x2f, 0x98, 0x08, 0x70, 0x7a, 0x39, 0x9e, 0x29, 0x47, 0xe7, 0xba, 0xe8, 0xea, 0xe5, 0x2a, 0xb5, 0x60, 0x74, 0xb4, 0x11, 0x96, 0xd4, 0xf9, }; static const unsigned char xdh_wei448_2706_sharedsecret[] = { 0xae, 0x75, 0x7e, 0xb5, 0x3a, 0xdf, 0xd3, 0x1c, 0xc9, 0x4b, 0x15, 0x33, 0xb3, 0x9d, 0x52, 0xf8, 0xd2, 0x20, 0xac, 0xe0, 0x03, 0xbd, 0x37, 0xcd, 0xe1, 0x00, 0x5c, 0xe0, 0x9a, 0x69, 0xd9, 0x16, 0x87, 0xb2, 0x19, 0xc1, 0x4d, 0xab, 0x9f, 0x3e, 0x0f, 0x8b, 0x89, 0xe8, 0x06, 0x44, 0x81, 0xd0, 0x45, 0x47, 0x20, 0xce, 0x17, 0x40, 0x3b, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2706 = { .name = "xdh_wei448_2706", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2706_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2706_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2706_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2706_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 123 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2707 for XDH, tcId is 124 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2707_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2707_ourpubkey[] = { 0x02, 0xbd, 0xb7, 0x02, 0xe3, 0x86, 0xce, 0x33, 0x45, 0xfd, 0xd9, 0xbb, 0x85, 0x2f, 0x47, 0x63, 0x91, 0xac, 0xf8, 0x86, 0x99, 0xde, 0xc9, 0x5e, 0x0f, 0x04, 0x57, 0xe3, 0xf9, 0x63, 0x68, 0xf0, 0x0f, 0xd1, 0xbf, 0xc5, 0xfa, 0x19, 0x06, 0xad, 0xab, 0x1b, 0x88, 0x8c, 0xcb, 0x78, 0xe2, 0x3c, 0x35, 0x63, 0xe9, 0x01, 0x0c, 0x96, 0x25, 0x70, }; static const unsigned char xdh_wei448_2707_privkey[] = { 0xa4, 0x2b, 0xd2, 0x9d, 0xdc, 0x90, 0x7a, 0x46, 0x61, 0x68, 0x7c, 0x7f, 0x48, 0xf2, 0x82, 0x64, 0x0f, 0x8b, 0xdc, 0x6d, 0xf2, 0x5c, 0x35, 0xe7, 0xf0, 0x1d, 0xd3, 0x5e, 0xc9, 0x57, 0x45, 0x57, 0x89, 0x7f, 0xf2, 0x01, 0x95, 0x9f, 0x71, 0x73, 0x86, 0x66, 0xd3, 0x3d, 0x93, 0xc0, 0x98, 0x20, 0x0d, 0x85, 0x52, 0xe2, 0x3e, 0xd2, 0x1e, 0xbf, }; static const unsigned char xdh_wei448_2707_sharedsecret[] = { 0xe3, 0x37, 0xde, 0xb5, 0x5f, 0xdd, 0x51, 0xbc, 0xa3, 0x92, 0x00, 0xa9, 0x7a, 0xa2, 0xbc, 0x1d, 0x2c, 0x22, 0x4f, 0xc4, 0x37, 0x05, 0x45, 0x28, 0x3c, 0x82, 0xd5, 0xc2, 0x42, 0x14, 0x42, 0x54, 0xb4, 0x3b, 0xd2, 0xbc, 0x4d, 0x16, 0x4f, 0xe1, 0x42, 0x14, 0x25, 0x8f, 0x7e, 0x3c, 0xda, 0xe3, 0x18, 0xec, 0x37, 0xb4, 0x6f, 0x47, 0x03, 0x87, }; static const wycheproof_xdh_test xdh_wei448_2707 = { .name = "xdh_wei448_2707", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2707_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2707_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2707_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2707_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 124 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2708 for XDH, tcId is 125 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2708_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2708_ourpubkey[] = { 0x07, 0x5b, 0xa1, 0x47, 0x05, 0xe5, 0x63, 0x9b, 0x2f, 0xab, 0xd2, 0xbe, 0x26, 0xac, 0xd1, 0x4b, 0x01, 0x09, 0x23, 0xad, 0x88, 0x4e, 0x28, 0x23, 0xd9, 0x0d, 0xe1, 0x12, 0xee, 0x46, 0x9e, 0xd6, 0xf9, 0x21, 0x54, 0xce, 0x86, 0x1e, 0x7d, 0x50, 0x88, 0xfb, 0x37, 0x4e, 0xc9, 0xda, 0x6d, 0x2d, 0x0f, 0xd3, 0x4b, 0x68, 0x0c, 0x91, 0xa0, 0xf5, }; static const unsigned char xdh_wei448_2708_privkey[] = { 0x8c, 0xe8, 0xdd, 0xcb, 0x93, 0xda, 0xa1, 0x23, 0x81, 0x28, 0x14, 0xdb, 0x4c, 0xae, 0xf1, 0xcd, 0xaf, 0xbc, 0x68, 0x62, 0x4b, 0x56, 0xb9, 0xea, 0x22, 0x7a, 0x66, 0x0b, 0x1e, 0xbe, 0x07, 0xda, 0x6f, 0x9d, 0x3e, 0x8f, 0x12, 0x8b, 0x49, 0xf8, 0x6c, 0xa7, 0x57, 0x60, 0x76, 0xd5, 0x9d, 0xd0, 0xdc, 0x2b, 0x67, 0xfc, 0x10, 0x64, 0x17, 0xa8, }; static const unsigned char xdh_wei448_2708_sharedsecret[] = { 0x8b, 0xd1, 0x1f, 0xa3, 0x89, 0x0a, 0xc9, 0x18, 0xc9, 0x5c, 0x1a, 0xab, 0x51, 0xb2, 0xfd, 0x69, 0xa7, 0xdf, 0x3e, 0x90, 0x37, 0x5c, 0x81, 0x4b, 0x51, 0xf9, 0xe2, 0xef, 0x87, 0x9e, 0x1b, 0x83, 0x34, 0xa0, 0x1d, 0xed, 0x44, 0x06, 0xed, 0x13, 0xf3, 0xac, 0xec, 0xd7, 0x52, 0xf6, 0xd5, 0xc2, 0x41, 0x49, 0xa1, 0x38, 0xb3, 0x67, 0x4c, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_2708 = { .name = "xdh_wei448_2708", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2708_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2708_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2708_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2708_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 125 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2709 for XDH, tcId is 126 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2709_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2709_ourpubkey[] = { 0x35, 0x74, 0x2b, 0xda, 0xaa, 0x72, 0x67, 0xef, 0x73, 0x31, 0x5b, 0x23, 0xec, 0x43, 0x8b, 0x29, 0x25, 0x5b, 0x87, 0x66, 0xeb, 0x7b, 0x1d, 0xb9, 0x51, 0x2f, 0x6d, 0x21, 0x25, 0x48, 0x01, 0x37, 0x83, 0x89, 0x0a, 0x42, 0x40, 0xf8, 0xcb, 0x87, 0x9f, 0x8a, 0x33, 0x16, 0x14, 0x99, 0x9d, 0x0e, 0xa7, 0xe3, 0x51, 0x1c, 0xcb, 0x1a, 0x9d, 0x55, }; static const unsigned char xdh_wei448_2709_privkey[] = { 0x54, 0xe7, 0x8d, 0xf4, 0xea, 0x79, 0xcd, 0x46, 0x56, 0xa6, 0x09, 0x07, 0x56, 0x4a, 0xcb, 0x7f, 0x07, 0x3d, 0x84, 0xf3, 0x38, 0xea, 0xa0, 0x70, 0x75, 0xb3, 0x52, 0xdd, 0x38, 0x97, 0xf2, 0x2b, 0xe0, 0xfb, 0xab, 0xe5, 0x1d, 0x28, 0xf4, 0x01, 0x94, 0x96, 0x1a, 0x64, 0x40, 0xb2, 0x21, 0xa7, 0x87, 0xac, 0xdd, 0x2e, 0xea, 0x81, 0x1b, 0xb1, }; static const unsigned char xdh_wei448_2709_sharedsecret[] = { 0x4d, 0x07, 0x65, 0x58, 0xea, 0x3c, 0xcf, 0xe9, 0xef, 0x92, 0x60, 0x82, 0x92, 0xd3, 0xe1, 0x9e, 0xa9, 0x16, 0x8d, 0x70, 0xde, 0xe6, 0x32, 0x33, 0x7c, 0x72, 0x19, 0x88, 0xa8, 0x93, 0xcb, 0x99, 0xdf, 0x49, 0x4d, 0x38, 0xc4, 0xcc, 0x5d, 0xb9, 0x3c, 0x7b, 0x11, 0x3d, 0x62, 0x59, 0x30, 0xdc, 0xbf, 0xb0, 0xfc, 0x5c, 0xbf, 0xb1, 0xc6, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_2709 = { .name = "xdh_wei448_2709", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2709_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2709_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2709_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2709_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 126 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2710 for XDH, tcId is 127 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2710_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2710_ourpubkey[] = { 0xe5, 0xe9, 0x1a, 0xac, 0x8a, 0x91, 0x5e, 0x50, 0x80, 0xb0, 0x48, 0x66, 0xa4, 0xe4, 0x35, 0x7b, 0x78, 0x2f, 0x0e, 0xd3, 0x0e, 0x1d, 0x69, 0x5b, 0xba, 0xeb, 0xb2, 0xf9, 0x78, 0xd0, 0x79, 0x0c, 0xba, 0xd6, 0x94, 0x0c, 0x8f, 0x43, 0xf8, 0x6e, 0x2e, 0x98, 0x95, 0x4d, 0xae, 0xc7, 0x09, 0xe0, 0x40, 0xda, 0x3c, 0x8b, 0x65, 0x70, 0x17, 0x01, }; static const unsigned char xdh_wei448_2710_privkey[] = { 0xe0, 0xe8, 0xff, 0x04, 0x54, 0x66, 0x78, 0x37, 0x6a, 0xf8, 0xa4, 0xcc, 0xb4, 0x96, 0xa9, 0x6c, 0xa0, 0xc7, 0x31, 0x80, 0x3b, 0xc2, 0xa8, 0xaa, 0x36, 0x00, 0x44, 0x57, 0x6c, 0x70, 0x45, 0x06, 0x8c, 0xb5, 0x78, 0xec, 0xdb, 0x2f, 0xda, 0x4d, 0x1c, 0xec, 0xdc, 0x4a, 0xa1, 0xa0, 0xa4, 0x30, 0xcb, 0xe7, 0x1e, 0x25, 0xa1, 0x76, 0x4c, 0xca, }; static const unsigned char xdh_wei448_2710_sharedsecret[] = { 0x10, 0x76, 0x52, 0xe3, 0x9d, 0x0e, 0xe0, 0xc6, 0x42, 0x1e, 0x60, 0x73, 0xeb, 0xe1, 0xae, 0x70, 0xf2, 0xa0, 0x48, 0x02, 0x6a, 0xfa, 0xb3, 0xfc, 0x1d, 0x62, 0x00, 0x27, 0x65, 0x2f, 0x94, 0xa4, 0xc6, 0xa6, 0xc7, 0x07, 0x6a, 0xe8, 0xc1, 0x51, 0x95, 0x37, 0x68, 0x1e, 0xd1, 0x54, 0x37, 0x35, 0x8c, 0x77, 0xec, 0xa2, 0x9d, 0x9d, 0x02, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2710 = { .name = "xdh_wei448_2710", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2710_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2710_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2710_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2710_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 127 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2711 for XDH, tcId is 128 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2711_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2711_ourpubkey[] = { 0xb2, 0x03, 0xc8, 0x38, 0x8a, 0xfe, 0xf9, 0x51, 0x30, 0xc6, 0xa0, 0x7b, 0xed, 0xd4, 0xbc, 0xb0, 0x63, 0xfa, 0x0e, 0x42, 0x99, 0x5f, 0xe1, 0x11, 0x65, 0x9e, 0x0f, 0x00, 0x77, 0x2c, 0xb6, 0xb7, 0xb3, 0x9b, 0xfa, 0xf8, 0xba, 0xac, 0x99, 0x2a, 0x26, 0x78, 0xec, 0x6e, 0x10, 0xd7, 0xc5, 0xc5, 0x59, 0x5a, 0xe7, 0x71, 0x05, 0xc9, 0xe7, 0x2f, }; static const unsigned char xdh_wei448_2711_privkey[] = { 0xb4, 0x20, 0x92, 0xf1, 0xa6, 0x46, 0xea, 0x58, 0x43, 0xc5, 0xd8, 0x33, 0x84, 0xa0, 0x8b, 0x45, 0x46, 0xae, 0x64, 0x9b, 0x12, 0xaf, 0x6b, 0x02, 0x3e, 0x1c, 0x6e, 0xac, 0x28, 0x0d, 0xaf, 0x10, 0x09, 0x0a, 0x07, 0x26, 0xd4, 0xe7, 0x55, 0x33, 0x55, 0x04, 0x2c, 0xbb, 0xab, 0x98, 0xc5, 0x84, 0xfc, 0x9d, 0xc1, 0x45, 0x89, 0xc3, 0xfe, 0xf4, }; static const unsigned char xdh_wei448_2711_sharedsecret[] = { 0x53, 0xcd, 0xe0, 0xc0, 0x1f, 0x25, 0x22, 0xd3, 0xe7, 0xe2, 0x23, 0xb7, 0x4d, 0x04, 0x15, 0x24, 0x28, 0xe9, 0x49, 0x4d, 0x18, 0xe3, 0xc4, 0xf4, 0x4b, 0xe5, 0x2d, 0x8f, 0x97, 0x1d, 0x29, 0xa4, 0x39, 0x4f, 0x9d, 0x03, 0xbd, 0x2e, 0xb8, 0x4a, 0x66, 0x7e, 0x11, 0x7a, 0x2f, 0x3c, 0x4a, 0x5a, 0x7e, 0x88, 0x4d, 0x45, 0x7f, 0xc7, 0x60, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2711 = { .name = "xdh_wei448_2711", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2711_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2711_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2711_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2711_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 128 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2712 for XDH, tcId is 129 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2712_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2712_ourpubkey[] = { 0x46, 0x4d, 0x00, 0x92, 0xa2, 0xe8, 0x1a, 0x09, 0x50, 0x80, 0x46, 0x19, 0x13, 0xef, 0x05, 0x91, 0x57, 0xe0, 0x93, 0xe8, 0xae, 0x46, 0x6e, 0x34, 0xe2, 0xd0, 0xaa, 0x04, 0x18, 0x83, 0x63, 0xac, 0xf3, 0x0e, 0x8a, 0x6c, 0xc0, 0x5e, 0xcd, 0xd5, 0x5b, 0x15, 0x5b, 0x38, 0x6d, 0x18, 0x61, 0x36, 0x8c, 0x46, 0xe1, 0xc7, 0x91, 0x7b, 0x50, 0x9b, }; static const unsigned char xdh_wei448_2712_privkey[] = { 0x90, 0x36, 0x99, 0xfc, 0xf2, 0xd0, 0x73, 0x09, 0xb2, 0xe7, 0x60, 0x56, 0xe2, 0x6e, 0x3b, 0xe4, 0x29, 0x8d, 0x58, 0x69, 0xc6, 0x72, 0xbb, 0x9d, 0x1e, 0xea, 0x80, 0xe6, 0x57, 0xdc, 0x99, 0x5a, 0xc1, 0xc8, 0x1a, 0x39, 0x30, 0xb1, 0x0e, 0x12, 0x4c, 0xc7, 0x76, 0x38, 0xc0, 0x0d, 0xe9, 0x47, 0x52, 0xcb, 0x51, 0x1e, 0xe8, 0x97, 0x22, 0x96, }; static const unsigned char xdh_wei448_2712_sharedsecret[] = { 0x41, 0xca, 0xd2, 0x75, 0x84, 0xa9, 0xe0, 0x0d, 0xbd, 0x39, 0x5c, 0x81, 0x0e, 0x60, 0xfc, 0x41, 0x5c, 0x13, 0xf7, 0x09, 0x5f, 0x90, 0x4f, 0x84, 0x48, 0xa3, 0x36, 0x1f, 0x05, 0x58, 0x02, 0x5a, 0xaa, 0xb3, 0x0e, 0x24, 0x86, 0xc8, 0x0e, 0xd3, 0xe9, 0xb4, 0xa0, 0x2b, 0x85, 0xf4, 0x76, 0x86, 0xd7, 0x00, 0x5d, 0xe8, 0x0b, 0x90, 0xda, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2712 = { .name = "xdh_wei448_2712", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2712_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2712_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2712_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2712_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 129 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2713 for XDH, tcId is 130 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2713_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2713_ourpubkey[] = { 0x0f, 0x4f, 0x5a, 0x0d, 0x7a, 0x7f, 0xe6, 0x56, 0x34, 0x34, 0x7e, 0x99, 0xfe, 0x6f, 0xe2, 0xe4, 0x74, 0x4a, 0x06, 0x0a, 0xbb, 0x3f, 0x20, 0x9d, 0x6c, 0x8a, 0x94, 0x68, 0xe1, 0x28, 0x80, 0x07, 0x93, 0x96, 0x9c, 0xfe, 0x7e, 0x3d, 0xa6, 0x7a, 0xc5, 0x02, 0x52, 0x6e, 0x2e, 0xd8, 0xa6, 0x40, 0x01, 0xae, 0xbe, 0xdb, 0xa6, 0x99, 0xec, 0x8d, }; static const unsigned char xdh_wei448_2713_privkey[] = { 0x9c, 0x56, 0x92, 0xf9, 0x24, 0x5d, 0x29, 0xaf, 0x67, 0x24, 0x77, 0xe6, 0x0f, 0x95, 0x75, 0x77, 0xcc, 0xa5, 0xc1, 0xcc, 0x24, 0x73, 0xf7, 0xfa, 0x67, 0xcd, 0x5a, 0x6f, 0x8a, 0xa3, 0xcb, 0xe4, 0x44, 0xdc, 0xdf, 0x65, 0xd5, 0x43, 0x6c, 0x02, 0x46, 0xd6, 0x4d, 0x2c, 0xf2, 0x18, 0x48, 0x4e, 0x97, 0x4c, 0x77, 0xaf, 0x96, 0x8b, 0x5c, 0xd1, }; static const unsigned char xdh_wei448_2713_sharedsecret[] = { 0x2f, 0x07, 0x01, 0x96, 0x00, 0x53, 0x9d, 0x6a, 0x7b, 0x71, 0x59, 0x6b, 0xa9, 0xdc, 0xc9, 0x0e, 0x60, 0xab, 0x2e, 0x2e, 0x8e, 0xfa, 0x32, 0x0a, 0xb6, 0xc8, 0x0d, 0xe2, 0x75, 0x76, 0x97, 0x00, 0x2b, 0x29, 0xe0, 0x2a, 0xa7, 0xd9, 0x16, 0x62, 0xe9, 0x8f, 0x9b, 0xe8, 0x95, 0xa7, 0x85, 0x5c, 0x0e, 0x96, 0xc8, 0x10, 0xc2, 0x94, 0xea, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2713 = { .name = "xdh_wei448_2713", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2713_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2713_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2713_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2713_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 130 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2714 for XDH, tcId is 131 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2714_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2714_ourpubkey[] = { 0xfd, 0x44, 0x68, 0xe4, 0x62, 0x73, 0xb9, 0x83, 0x67, 0x34, 0x70, 0xd7, 0xdd, 0xe6, 0xd1, 0xb2, 0x45, 0xc8, 0x7d, 0xf1, 0xdf, 0xe1, 0x8f, 0x10, 0xe2, 0xe3, 0x51, 0xbb, 0x28, 0xb1, 0x57, 0x7a, 0xa2, 0x65, 0x02, 0xce, 0x0e, 0x24, 0xdd, 0xb1, 0xd3, 0x3a, 0x1a, 0x61, 0x27, 0xc6, 0x80, 0x71, 0xbc, 0x3e, 0xc1, 0x81, 0xba, 0xb1, 0xbe, 0x75, }; static const unsigned char xdh_wei448_2714_privkey[] = { 0x58, 0x2b, 0xf6, 0x3e, 0xe5, 0x4d, 0x47, 0xae, 0x55, 0x17, 0xcf, 0x74, 0xfd, 0xfe, 0xd1, 0xd4, 0xbc, 0xd5, 0x44, 0xc9, 0x5e, 0x61, 0xc8, 0xc9, 0x56, 0x05, 0xea, 0x32, 0x3a, 0x4d, 0x18, 0x20, 0xfd, 0xc4, 0x0f, 0xaf, 0xb1, 0xa5, 0xcb, 0xe4, 0xf4, 0xce, 0x1f, 0x89, 0xa9, 0x9f, 0x99, 0xa3, 0x36, 0x19, 0x61, 0xe5, 0xb3, 0x0b, 0xd8, 0x96, }; static const unsigned char xdh_wei448_2714_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2714 = { .name = "xdh_wei448_2714", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2714_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2714_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2714_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2714_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 131 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2715 for XDH, tcId is 132 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2715_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2715_ourpubkey[] = { 0x17, 0x59, 0xe8, 0xbf, 0x34, 0x7a, 0xa3, 0x2e, 0xc1, 0x9d, 0x9a, 0xad, 0xae, 0x19, 0x19, 0x19, 0x22, 0xc3, 0x1d, 0xbf, 0xf7, 0x9b, 0x0d, 0x3e, 0x5f, 0x95, 0x83, 0x56, 0xa5, 0x64, 0x8a, 0xc4, 0xb5, 0xf4, 0x87, 0x4f, 0x2e, 0xbc, 0xa7, 0xe8, 0x06, 0xb9, 0x3e, 0xa9, 0xf2, 0xa3, 0x72, 0x58, 0x9b, 0xd4, 0x4e, 0xc4, 0x9a, 0xeb, 0x19, 0xbb, }; static const unsigned char xdh_wei448_2715_privkey[] = { 0x18, 0x68, 0xe9, 0x7d, 0x13, 0x9f, 0xff, 0x37, 0x2e, 0xdb, 0x9a, 0xad, 0xe8, 0x28, 0x79, 0xcb, 0xa6, 0xef, 0xe7, 0x93, 0x4a, 0x45, 0x79, 0x1e, 0x41, 0xd6, 0x1e, 0x7b, 0xb5, 0xe6, 0x7a, 0xb2, 0xcd, 0xad, 0x6a, 0xb8, 0x28, 0x82, 0xc5, 0x7d, 0x34, 0xec, 0x71, 0xe6, 0xa8, 0xd5, 0x56, 0xce, 0x28, 0x09, 0xe7, 0x29, 0x32, 0xea, 0x46, 0x9a, }; static const unsigned char xdh_wei448_2715_sharedsecret[] = { 0x89, 0x6e, 0x8b, 0x82, 0xe5, 0xee, 0x08, 0x3b, 0x6f, 0xaa, 0xf6, 0x1c, 0xcc, 0x6a, 0x79, 0x6f, 0x41, 0x9a, 0x97, 0x8e, 0x33, 0xd6, 0x24, 0x25, 0x71, 0x11, 0x0e, 0xea, 0x5b, 0x54, 0x79, 0x8e, 0x50, 0xc9, 0xa7, 0x8d, 0x4d, 0x4e, 0x88, 0xe5, 0xed, 0xad, 0x7d, 0x18, 0xd6, 0x4b, 0xcf, 0xe9, 0xc4, 0xcd, 0xf6, 0x39, 0x75, 0xce, 0xfd, 0x3c, }; static const wycheproof_xdh_test xdh_wei448_2715 = { .name = "xdh_wei448_2715", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2715_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2715_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2715_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2715_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 132 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2716 for XDH, tcId is 133 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2716_peerpubkey[] = { 0x9b, 0x7c, 0xf9, 0xd0, 0x96, 0x84, 0x51, 0xdd, 0x91, 0x41, 0xaa, 0x4e, 0x06, 0xdd, 0x76, 0xf5, 0x3e, 0x54, 0x08, 0x16, 0xad, 0x33, 0x17, 0x63, 0x93, 0x2f, 0x2c, 0xb8, 0x2f, 0x09, 0xbe, 0xcc, 0x47, 0x85, 0xcf, 0x69, 0xe7, 0x3e, 0x41, 0xbd, 0x6c, 0xbf, 0x8d, 0x0f, 0x24, 0x7f, 0x75, 0x87, 0x35, 0x7f, 0x00, 0xd7, 0x8e, 0xb9, 0x09, 0x16, }; static const unsigned char xdh_wei448_2716_ourpubkey[] = { 0xf9, 0xbc, 0x86, 0xae, 0x9e, 0x2d, 0xef, 0x6f, 0x01, 0xc5, 0x7b, 0x69, 0x92, 0x69, 0x26, 0x99, 0xa4, 0x56, 0x7f, 0x48, 0x8a, 0xfc, 0x42, 0xdf, 0x80, 0xc3, 0x92, 0x00, 0xb7, 0xef, 0xcb, 0xea, 0x98, 0x44, 0x06, 0x32, 0x3f, 0xdc, 0x87, 0x20, 0x69, 0xd5, 0xc3, 0x89, 0xdc, 0xf1, 0xf9, 0xc4, 0x71, 0xc7, 0x17, 0x6b, 0x2b, 0x0b, 0xd7, 0x70, }; static const unsigned char xdh_wei448_2716_privkey[] = { 0xa0, 0xe8, 0x17, 0x9e, 0x76, 0x0e, 0x7c, 0x80, 0x20, 0x62, 0x12, 0x65, 0xe1, 0x50, 0x6f, 0x1e, 0xa4, 0x9c, 0xee, 0x89, 0x06, 0x86, 0x98, 0xf1, 0x53, 0x09, 0x15, 0xaf, 0xf5, 0x14, 0x67, 0xb6, 0x5c, 0x71, 0x99, 0xa3, 0x7b, 0x10, 0x22, 0x25, 0x73, 0x1d, 0xbc, 0xd7, 0x77, 0x2f, 0xdd, 0x5d, 0x22, 0x13, 0x4d, 0x9d, 0xff, 0x38, 0x1a, 0x9a, }; static const unsigned char xdh_wei448_2716_sharedsecret[] = { 0xef, 0x11, 0x12, 0x1d, 0x16, 0x03, 0x9f, 0xab, 0xa9, 0x2d, 0x89, 0x4a, 0x6f, 0xfd, 0x6b, 0x3d, 0xc3, 0x0f, 0x98, 0x59, 0x45, 0xde, 0xd2, 0x0b, 0x0f, 0xd9, 0x7c, 0x85, 0x69, 0x56, 0x20, 0xc3, 0x84, 0xf1, 0xb9, 0x5c, 0xae, 0xf4, 0x1e, 0x69, 0x56, 0x12, 0xfe, 0x0f, 0xd6, 0x44, 0x7b, 0xfb, 0x2b, 0x84, 0x53, 0x38, 0x10, 0xdf, 0x0d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_2716 = { .name = "xdh_wei448_2716", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2716_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2716_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2716_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2716_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 133 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2717 for XDH, tcId is 134 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2717_peerpubkey[] = { 0xc4, 0xb7, 0x09, 0x0f, 0x3b, 0x94, 0xf5, 0xc8, 0x9e, 0xc7, 0xd2, 0xdc, 0x46, 0xd8, 0x49, 0xca, 0x68, 0x65, 0xb5, 0x32, 0x0e, 0xec, 0xe2, 0x72, 0xf4, 0x26, 0xd6, 0x10, 0xa5, 0x7e, 0xe5, 0xd2, 0x46, 0xd4, 0xff, 0xa1, 0xc5, 0x92, 0xcf, 0x57, 0x96, 0xfe, 0x9f, 0x9b, 0x66, 0x9f, 0xe5, 0x7d, 0x01, 0xba, 0x31, 0x22, 0xcd, 0xa3, 0x0e, 0x1b, }; static const unsigned char xdh_wei448_2717_ourpubkey[] = { 0xdb, 0x1e, 0x88, 0xa2, 0x3f, 0xb9, 0xfe, 0xb1, 0xed, 0xa9, 0xcd, 0xb8, 0xee, 0x86, 0xf0, 0xb1, 0x4b, 0x99, 0x58, 0x4f, 0x6c, 0x87, 0xb9, 0x68, 0xa2, 0x44, 0x1d, 0xd0, 0xc6, 0x68, 0xad, 0x94, 0xa7, 0x9f, 0x36, 0x7f, 0xb2, 0x8d, 0x27, 0x9b, 0x29, 0xc4, 0x39, 0x5c, 0xe3, 0x66, 0xa5, 0x0b, 0xae, 0x34, 0x75, 0x34, 0x92, 0x13, 0xe7, 0x53, }; static const unsigned char xdh_wei448_2717_privkey[] = { 0x80, 0xfa, 0x57, 0x4c, 0x9b, 0x52, 0xc5, 0x86, 0x9b, 0x4c, 0x0e, 0x0a, 0x6e, 0x00, 0xb1, 0x95, 0x76, 0x1e, 0xd0, 0x06, 0x38, 0x54, 0xa3, 0xb4, 0xd6, 0xa5, 0xb7, 0x05, 0x56, 0x55, 0x6a, 0x17, 0xc8, 0x49, 0xd0, 0xd0, 0x1a, 0x14, 0xff, 0xc6, 0x60, 0x31, 0x3b, 0xa1, 0xa8, 0x6f, 0xf2, 0xbc, 0xe9, 0x6f, 0x62, 0xd6, 0x55, 0x84, 0x9e, 0xba, }; static const unsigned char xdh_wei448_2717_sharedsecret[] = { 0x0c, 0xed, 0x4d, 0xd0, 0xe1, 0x24, 0xb2, 0xd6, 0xa8, 0xb2, 0xcc, 0x84, 0xde, 0xaa, 0xce, 0x4d, 0xec, 0x82, 0x83, 0x6b, 0xa3, 0xc1, 0x54, 0xc6, 0x0b, 0x72, 0x7d, 0x7d, 0x55, 0xb6, 0x82, 0xd0, 0xfd, 0x50, 0x37, 0x83, 0xd1, 0x65, 0xab, 0xde, 0xfd, 0x23, 0x24, 0xe8, 0x54, 0x59, 0x31, 0xd9, 0xc7, 0xf3, 0xab, 0xf8, 0xc8, 0xa2, 0x54, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_2717 = { .name = "xdh_wei448_2717", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2717_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2717_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2717_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2717_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 134 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2718 for XDH, tcId is 135 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2718_peerpubkey[] = { 0x9a, 0xe0, 0x5c, 0x7f, 0x33, 0x5f, 0xa2, 0x3f, 0xa3, 0x63, 0x58, 0xf8, 0x33, 0xfe, 0x9e, 0x07, 0x4b, 0xc5, 0x52, 0x41, 0x35, 0x81, 0x9a, 0x9a, 0x2f, 0x16, 0x42, 0xd3, 0x91, 0xfb, 0xd7, 0xdc, 0x22, 0x77, 0x8d, 0x46, 0x8c, 0x7e, 0x03, 0xff, 0xd7, 0x2e, 0xd8, 0x78, 0x66, 0x4e, 0x31, 0xe3, 0x29, 0x7a, 0x9a, 0xad, 0x33, 0xfb, 0xc1, 0x7e, }; static const unsigned char xdh_wei448_2718_ourpubkey[] = { 0x1a, 0xb5, 0x4f, 0x27, 0x29, 0xb7, 0xd3, 0x4d, 0xee, 0xd4, 0xb1, 0x7d, 0x61, 0xae, 0x24, 0x63, 0xd6, 0x07, 0xf4, 0xea, 0xb7, 0x6b, 0x56, 0x95, 0x2c, 0xfd, 0xce, 0x08, 0xea, 0x6c, 0x23, 0x0c, 0x57, 0x48, 0x8f, 0x47, 0x05, 0x5e, 0xc5, 0x6c, 0xb4, 0x0e, 0x4d, 0x9e, 0x4f, 0x1b, 0xd9, 0x5b, 0xe6, 0x1e, 0x6e, 0x1e, 0x09, 0x1b, 0x46, 0x59, }; static const unsigned char xdh_wei448_2718_privkey[] = { 0x34, 0xd6, 0x35, 0xcf, 0xfd, 0x8e, 0x5f, 0x96, 0x8b, 0x91, 0xbb, 0x19, 0x3d, 0x6c, 0x42, 0xa3, 0xae, 0xc6, 0x5b, 0xdf, 0x51, 0x21, 0xf4, 0x2c, 0xa2, 0xec, 0x0d, 0x5a, 0x80, 0xe3, 0xd4, 0xc3, 0x57, 0xda, 0x9f, 0xa4, 0x38, 0x86, 0x7b, 0x55, 0x45, 0x77, 0x69, 0xe1, 0x49, 0x06, 0x70, 0xa1, 0x31, 0x33, 0x84, 0xec, 0xe9, 0xbc, 0x4c, 0xb7, }; static const unsigned char xdh_wei448_2718_sharedsecret[] = { 0x9e, 0xf2, 0x20, 0x30, 0x96, 0xf5, 0x7f, 0xb0, 0x47, 0x25, 0x6c, 0xef, 0x46, 0x30, 0x48, 0x4f, 0x72, 0xba, 0x28, 0x1a, 0xdc, 0xb9, 0x23, 0xca, 0x50, 0xe0, 0x8d, 0x95, 0x6e, 0x80, 0xec, 0xc6, 0xdf, 0xd9, 0x08, 0xee, 0x61, 0x9f, 0xb6, 0x2c, 0x22, 0x48, 0x34, 0xce, 0xb0, 0x1e, 0xe2, 0xb7, 0xc4, 0xd3, 0x56, 0xb8, 0x06, 0xc8, 0xf0, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2718 = { .name = "xdh_wei448_2718", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2718_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2718_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2718_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2718_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 135 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2719 for XDH, tcId is 136 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2719_peerpubkey[] = { 0x65, 0x1f, 0xa3, 0x80, 0xcc, 0xa0, 0x5d, 0xc0, 0x5c, 0x9c, 0xa7, 0x07, 0xcc, 0x01, 0x61, 0xf8, 0xb4, 0x3a, 0xad, 0xbe, 0xca, 0x7e, 0x65, 0x65, 0xd0, 0xe9, 0xbd, 0x2c, 0x6d, 0x04, 0x28, 0x23, 0xdd, 0x88, 0x72, 0xb9, 0x73, 0x81, 0xfc, 0x00, 0x28, 0xd1, 0x27, 0x87, 0x99, 0xb1, 0xce, 0x1c, 0xd6, 0x85, 0x65, 0x52, 0xcc, 0x04, 0x3e, 0x81, }; static const unsigned char xdh_wei448_2719_ourpubkey[] = { 0x68, 0xfa, 0x4b, 0x25, 0x34, 0x09, 0xbe, 0x1a, 0xd3, 0x21, 0x1b, 0xb9, 0x99, 0x17, 0x61, 0xb1, 0xd9, 0xb8, 0xfd, 0x1e, 0x6e, 0x25, 0x09, 0x93, 0x64, 0x10, 0x3e, 0x5c, 0x84, 0x07, 0x30, 0x94, 0x80, 0xaf, 0x83, 0xbb, 0x46, 0xe1, 0x01, 0x50, 0x3c, 0x4c, 0x6c, 0x45, 0xb1, 0x15, 0xfe, 0xe8, 0xdd, 0xd6, 0x4c, 0x37, 0xe1, 0x60, 0x6f, 0xe6, }; static const unsigned char xdh_wei448_2719_privkey[] = { 0x48, 0xff, 0xe0, 0x4d, 0x62, 0xfc, 0xaf, 0xc6, 0xad, 0xf6, 0x7f, 0x09, 0x8d, 0x9a, 0xe6, 0xa3, 0xd8, 0x08, 0x3e, 0x47, 0x37, 0x6d, 0x6f, 0x7d, 0x92, 0x23, 0xee, 0x35, 0x6b, 0x94, 0x0c, 0x8b, 0x39, 0x38, 0x9b, 0xf4, 0x54, 0x6d, 0x1f, 0x5e, 0x85, 0x14, 0xa7, 0x75, 0xb4, 0x5c, 0x41, 0x21, 0x8b, 0xb8, 0xfa, 0xfa, 0x4c, 0xb3, 0xba, 0xbe, }; static const unsigned char xdh_wei448_2719_sharedsecret[] = { 0x81, 0x2e, 0xca, 0xd3, 0xe5, 0xd7, 0xbc, 0xe3, 0x7d, 0x30, 0xc7, 0xb9, 0x6f, 0xb4, 0xf8, 0xb3, 0x0b, 0x7d, 0x14, 0x16, 0x92, 0x51, 0x6c, 0x2b, 0xb7, 0xb1, 0x8b, 0x78, 0xfc, 0xbe, 0x4f, 0x77, 0x4a, 0x85, 0x00, 0xb2, 0x6d, 0xce, 0x75, 0x36, 0x98, 0x3d, 0xd7, 0x1d, 0x92, 0xa0, 0xe8, 0xbb, 0xd8, 0x5d, 0xd0, 0x30, 0x62, 0x1c, 0x0c, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2719 = { .name = "xdh_wei448_2719", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2719_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2719_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2719_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2719_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 136 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2720 for XDH, tcId is 137 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2720_peerpubkey[] = { 0x3b, 0x48, 0xf6, 0xf0, 0xc4, 0x6b, 0x0a, 0x37, 0x61, 0x38, 0x2d, 0x23, 0xb9, 0x27, 0xb6, 0x35, 0x97, 0x9a, 0x4a, 0xcd, 0xf1, 0x13, 0x1d, 0x8d, 0x0b, 0xd9, 0x29, 0xef, 0x59, 0x81, 0x1a, 0x2d, 0xb9, 0x2b, 0x00, 0x5e, 0x3a, 0x6d, 0x30, 0xa8, 0x69, 0x01, 0x60, 0x64, 0x99, 0x60, 0x1a, 0x82, 0xfe, 0x45, 0xce, 0xdd, 0x32, 0x5c, 0xf1, 0xe4, }; static const unsigned char xdh_wei448_2720_ourpubkey[] = { 0xac, 0xe7, 0x60, 0xe8, 0xee, 0x82, 0x95, 0x35, 0x86, 0x90, 0xf7, 0x55, 0x1d, 0x36, 0x97, 0x67, 0x76, 0xaf, 0x11, 0x78, 0x70, 0xe9, 0x3c, 0x8d, 0x22, 0xba, 0xff, 0x51, 0xe7, 0x56, 0x32, 0x66, 0x6f, 0x9f, 0x5d, 0x0e, 0x1f, 0xac, 0x43, 0x1d, 0x08, 0x9b, 0x44, 0xef, 0x2e, 0xd0, 0x7b, 0xea, 0x16, 0x14, 0xf7, 0x60, 0x0a, 0x64, 0xf0, 0x6a, }; static const unsigned char xdh_wei448_2720_privkey[] = { 0x0c, 0xbd, 0xf8, 0x5d, 0x05, 0x38, 0xf6, 0xbe, 0xe7, 0x33, 0x49, 0xe7, 0x78, 0xe1, 0x0f, 0x65, 0x8e, 0xbb, 0x8a, 0x63, 0xa5, 0x94, 0xab, 0x8a, 0x37, 0xae, 0x37, 0xd2, 0x85, 0xb5, 0x96, 0x96, 0xd9, 0x2b, 0x7a, 0x41, 0x28, 0xf7, 0x04, 0x0a, 0x26, 0x64, 0x51, 0xc3, 0x1c, 0x0b, 0xd1, 0x5f, 0x6e, 0xb5, 0x97, 0xaa, 0x33, 0x7b, 0x6b, 0x97, }; static const unsigned char xdh_wei448_2720_sharedsecret[] = { 0xf7, 0xb0, 0xd7, 0x5f, 0x5d, 0xd7, 0x2c, 0xde, 0x92, 0xb7, 0x66, 0x14, 0x77, 0xde, 0xc7, 0x54, 0xed, 0x0c, 0x8d, 0x77, 0x94, 0x75, 0xb6, 0x5e, 0xb0, 0xac, 0x5e, 0x2d, 0x5a, 0x56, 0xd0, 0xfa, 0x06, 0x4a, 0x07, 0x36, 0x19, 0xe9, 0xf2, 0x4c, 0x00, 0x95, 0x3f, 0xfa, 0xc8, 0x7a, 0x3e, 0xd7, 0x3b, 0xbd, 0x45, 0xcb, 0x2d, 0x4c, 0x00, 0xea, }; static const wycheproof_xdh_test xdh_wei448_2720 = { .name = "xdh_wei448_2720", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2720_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2720_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2720_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2720_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 137 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2721 for XDH, tcId is 138 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2721_peerpubkey[] = { 0x64, 0x83, 0x06, 0x2f, 0x69, 0x7b, 0xae, 0x22, 0x6e, 0xbe, 0x55, 0xb1, 0xf9, 0x22, 0x89, 0x0a, 0xc1, 0xab, 0xf7, 0xe9, 0x52, 0xcc, 0xe8, 0x9c, 0x6c, 0xd0, 0xd3, 0x47, 0xcf, 0xf6, 0x41, 0x33, 0xb8, 0x7a, 0x30, 0x96, 0x18, 0xc1, 0xbe, 0x42, 0x93, 0x40, 0x72, 0xf0, 0xdb, 0x80, 0x8a, 0x78, 0xca, 0x80, 0xff, 0x28, 0x71, 0x46, 0xf6, 0xe9, }; static const unsigned char xdh_wei448_2721_ourpubkey[] = { 0x7e, 0x7a, 0x3f, 0x8d, 0x3f, 0x23, 0x3d, 0xeb, 0x51, 0x87, 0xff, 0x36, 0x22, 0x53, 0x94, 0x2b, 0x80, 0x7b, 0x9b, 0xff, 0xf3, 0x68, 0xe9, 0xa6, 0x8d, 0xc4, 0x28, 0x3f, 0x81, 0x42, 0xff, 0xdd, 0x38, 0x21, 0x99, 0x24, 0xdd, 0xbb, 0x1a, 0xab, 0x4a, 0xe9, 0xd1, 0xc0, 0xcc, 0x2a, 0x96, 0xc3, 0xbc, 0x3f, 0x0f, 0x2b, 0x11, 0x5e, 0x68, 0x4f, }; static const unsigned char xdh_wei448_2721_privkey[] = { 0x34, 0x62, 0x83, 0x92, 0xdd, 0x76, 0x45, 0x81, 0x8b, 0x89, 0x9e, 0x32, 0xe9, 0x8b, 0x13, 0xf7, 0x07, 0x03, 0x8b, 0x94, 0x3f, 0x74, 0x5b, 0xc6, 0x25, 0x2b, 0x8c, 0x4b, 0x2c, 0x9e, 0x62, 0xf8, 0xcb, 0x01, 0x31, 0x02, 0x90, 0xb6, 0x27, 0xf5, 0x52, 0x77, 0x56, 0xc9, 0x43, 0x09, 0x50, 0x37, 0x31, 0xb9, 0x1e, 0xba, 0x64, 0xb7, 0x62, 0xa6, }; static const unsigned char xdh_wei448_2721_sharedsecret[] = { 0xd5, 0x75, 0x5a, 0xf8, 0x02, 0x84, 0xe9, 0x2b, 0x6b, 0x71, 0x8d, 0x02, 0x9e, 0x0e, 0xc9, 0x20, 0x4d, 0x34, 0xa9, 0x17, 0x40, 0x3e, 0xe6, 0x09, 0xc0, 0x06, 0x6f, 0x90, 0x2b, 0x50, 0x97, 0x28, 0xb1, 0x95, 0xfa, 0x4e, 0x84, 0x2f, 0x2b, 0xdc, 0xbd, 0xdc, 0x93, 0x7f, 0xe0, 0xa1, 0x91, 0x4d, 0x58, 0x01, 0x82, 0xae, 0x4c, 0x0a, 0x1c, 0x74, }; static const wycheproof_xdh_test xdh_wei448_2721 = { .name = "xdh_wei448_2721", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2721_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2721_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2721_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2721_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 138 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2722 for XDH, tcId is 139 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2722_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_2722_ourpubkey[] = { 0x98, 0x5d, 0x07, 0xb7, 0x94, 0x68, 0x8b, 0xe4, 0x46, 0xed, 0x7d, 0x55, 0xa9, 0x2c, 0x26, 0xcf, 0x0d, 0x9a, 0xff, 0xe0, 0xe8, 0xf2, 0xa2, 0x2a, 0x28, 0xc5, 0x6f, 0xdb, 0x50, 0x92, 0x47, 0x32, 0xef, 0xd0, 0xf5, 0xdf, 0xe7, 0x0f, 0x67, 0x0e, 0x4d, 0x22, 0x3a, 0xd7, 0xbf, 0x31, 0x75, 0xf1, 0x3c, 0x7b, 0x74, 0x34, 0x2e, 0x36, 0xe9, 0x15, }; static const unsigned char xdh_wei448_2722_privkey[] = { 0xa8, 0x19, 0x12, 0xb4, 0xa4, 0x5a, 0x01, 0x25, 0x5b, 0x3c, 0xa9, 0x10, 0x4c, 0x8e, 0x68, 0x8a, 0x0c, 0x1e, 0x4f, 0x39, 0xf0, 0xc6, 0x3e, 0xd7, 0x7b, 0x84, 0xa6, 0xcc, 0xab, 0xc5, 0x7d, 0x90, 0xc0, 0xb8, 0x59, 0x1a, 0x9c, 0xa2, 0x3b, 0x35, 0x10, 0x41, 0x1e, 0x30, 0xa3, 0x09, 0xb2, 0x81, 0x39, 0x92, 0x99, 0x3f, 0x91, 0x78, 0xe0, 0xa3, }; static const unsigned char xdh_wei448_2722_sharedsecret[] = { 0xa2, 0xda, 0x73, 0x00, 0xf1, 0x95, 0x18, 0x1b, 0x1b, 0x47, 0x6d, 0x12, 0x7b, 0x3b, 0x78, 0xe9, 0xc6, 0xa8, 0xc7, 0x91, 0xd7, 0x6f, 0x40, 0x80, 0x4f, 0x2e, 0x62, 0xb6, 0xbc, 0x8f, 0x9b, 0x68, 0xf2, 0x6a, 0x83, 0xb0, 0x2f, 0x0a, 0xd8, 0xa8, 0x50, 0x59, 0x04, 0x44, 0x1c, 0xe9, 0xd3, 0xfa, 0x4e, 0xc9, 0x92, 0x5f, 0xd1, 0xca, 0x3c, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2722 = { .name = "xdh_wei448_2722", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2722_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2722_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2722_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2722_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 139 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2723 for XDH, tcId is 140 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2723_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_2723_ourpubkey[] = { 0xf8, 0xa9, 0xe1, 0xcb, 0xd1, 0xf8, 0xf7, 0x75, 0x48, 0xf7, 0x0a, 0x0f, 0x1f, 0x27, 0x3c, 0x25, 0xce, 0xb6, 0x53, 0x0d, 0xcf, 0x66, 0x99, 0x6d, 0xfe, 0x70, 0xd5, 0x7e, 0xd2, 0xa9, 0x97, 0x2c, 0x6d, 0x71, 0xb2, 0x43, 0xc9, 0xad, 0x4a, 0xc6, 0x7d, 0xc6, 0x94, 0xe3, 0xb8, 0xbf, 0xde, 0xa7, 0x6e, 0xd0, 0x64, 0x73, 0x65, 0x6f, 0x21, 0x66, }; static const unsigned char xdh_wei448_2723_privkey[] = { 0x04, 0x15, 0x4c, 0xc5, 0x13, 0xb9, 0xb0, 0x44, 0x5a, 0xd4, 0x93, 0x91, 0x0f, 0xb7, 0x5b, 0x26, 0xb2, 0x39, 0x8b, 0xf1, 0xa7, 0xe7, 0x47, 0x1a, 0x30, 0x7f, 0x2b, 0xbd, 0x0f, 0x78, 0xd1, 0x9e, 0xa0, 0x5d, 0x5f, 0xbd, 0x6c, 0xf8, 0x45, 0xf1, 0xc8, 0xa0, 0x3b, 0xb8, 0x30, 0xc1, 0xfc, 0x53, 0x25, 0xe2, 0x48, 0xdd, 0xf5, 0xaa, 0xd4, 0x96, }; static const unsigned char xdh_wei448_2723_sharedsecret[] = { 0xdd, 0x76, 0x45, 0x27, 0xcc, 0x4c, 0x41, 0x3f, 0x3e, 0x03, 0xc4, 0xe8, 0x1c, 0x58, 0x3c, 0xbc, 0xc7, 0x91, 0x92, 0x93, 0xc3, 0xc3, 0x91, 0x01, 0xaa, 0x8c, 0x88, 0x76, 0x77, 0x92, 0x89, 0xb3, 0xc1, 0x42, 0x24, 0xf1, 0x2b, 0xa9, 0x58, 0x69, 0x7d, 0xa6, 0xe2, 0xb3, 0xb0, 0xa1, 0x3f, 0xf0, 0x8e, 0xa3, 0x0b, 0xbc, 0xda, 0xdd, 0x27, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2723 = { .name = "xdh_wei448_2723", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2723_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2723_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2723_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2723_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 140 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2724 for XDH, tcId is 141 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2724_peerpubkey[] = { 0xb6, 0x54, 0xb7, 0x67, 0xb0, 0x00, 0xa0, 0x4f, 0x37, 0x8e, 0x46, 0x81, 0x82, 0x4c, 0xd0, 0x1b, 0x1d, 0x60, 0xfb, 0x26, 0x22, 0x57, 0x04, 0x9a, 0xa7, 0x92, 0xd4, 0x52, 0xef, 0x9d, 0x3e, 0x2e, 0x85, 0xca, 0x73, 0x9b, 0x48, 0x93, 0x69, 0x49, 0x12, 0x5c, 0x66, 0x52, 0x31, 0x2e, 0xbb, 0x1c, 0x57, 0x64, 0xe5, 0x9a, 0x34, 0xab, 0x39, 0x5f, }; static const unsigned char xdh_wei448_2724_ourpubkey[] = { 0x50, 0xa4, 0x76, 0x40, 0xbf, 0x96, 0xff, 0x8c, 0xfb, 0x1f, 0xcc, 0x25, 0x69, 0x30, 0x31, 0xc6, 0x93, 0x12, 0x11, 0xa7, 0x79, 0xab, 0x69, 0xb6, 0xb6, 0x0f, 0xb4, 0xf4, 0x72, 0xb4, 0xcb, 0x85, 0x7a, 0x10, 0xe4, 0x0c, 0x5f, 0x1e, 0x5f, 0xef, 0x6c, 0x8f, 0x99, 0x6b, 0x6c, 0x0d, 0x60, 0x71, 0x46, 0x1a, 0xc2, 0xae, 0xec, 0x4f, 0xbc, 0xec, }; static const unsigned char xdh_wei448_2724_privkey[] = { 0x64, 0x16, 0x08, 0xb1, 0x8c, 0x38, 0x28, 0x1b, 0x13, 0xbe, 0x02, 0xbd, 0x69, 0x5f, 0xd6, 0x40, 0xfa, 0x68, 0xa0, 0x0b, 0x51, 0xf7, 0x5f, 0x19, 0x5e, 0x98, 0x55, 0xcb, 0xab, 0x92, 0x27, 0x05, 0x73, 0xa5, 0x5e, 0xf9, 0x0f, 0x55, 0xec, 0x7c, 0xb8, 0x65, 0x4f, 0x53, 0xc2, 0x15, 0x90, 0xb6, 0xa7, 0x09, 0x9d, 0xed, 0x7d, 0x1e, 0xae, 0xb7, }; static const unsigned char xdh_wei448_2724_sharedsecret[] = { 0xd5, 0xa1, 0x9d, 0x66, 0x27, 0x94, 0x5a, 0xc4, 0x8d, 0xce, 0x52, 0xa2, 0x7c, 0x9f, 0x8c, 0x75, 0x50, 0xb9, 0x9c, 0xcb, 0x39, 0x59, 0x16, 0xb6, 0xb6, 0x1d, 0x07, 0x6d, 0x53, 0x3e, 0x62, 0xb2, 0x36, 0x06, 0x8e, 0x80, 0x76, 0xa8, 0x15, 0xda, 0x58, 0x47, 0x59, 0x2f, 0x77, 0xc1, 0xfc, 0x13, 0x3a, 0x11, 0xee, 0x90, 0x73, 0x88, 0xbe, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2724 = { .name = "xdh_wei448_2724", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2724_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2724_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2724_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2724_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 141 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2725 for XDH, tcId is 142 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2725_peerpubkey[] = { 0xad, 0xbe, 0xcb, 0xd3, 0x8b, 0x69, 0x16, 0x7b, 0x99, 0x5c, 0x0c, 0x7d, 0xa8, 0xf1, 0xfd, 0x1e, 0x9d, 0xca, 0x26, 0x2e, 0xb7, 0x9c, 0x78, 0xc9, 0xab, 0xa1, 0x59, 0xd1, 0xbe, 0x18, 0x6b, 0xba, 0xcd, 0x3b, 0x08, 0xdb, 0x7a, 0xa8, 0xd4, 0x22, 0x70, 0xcd, 0x01, 0x1b, 0x67, 0xc6, 0x66, 0x36, 0x52, 0x8d, 0x6f, 0xf6, 0xf0, 0xf2, 0x97, 0x76, }; static const unsigned char xdh_wei448_2725_ourpubkey[] = { 0x0f, 0xbd, 0x06, 0x57, 0x89, 0x1c, 0xa2, 0x01, 0x90, 0x92, 0xf2, 0xb6, 0x14, 0x0b, 0xfb, 0x53, 0x0f, 0x2e, 0x13, 0x75, 0x8e, 0x48, 0x28, 0xcf, 0x87, 0xdd, 0xe3, 0x90, 0xe3, 0x53, 0xf3, 0x81, 0x06, 0x0f, 0x11, 0x55, 0xec, 0xa8, 0xec, 0xf7, 0x90, 0x26, 0x60, 0x35, 0xa5, 0xbf, 0xfa, 0x09, 0x51, 0xe8, 0x86, 0x40, 0x01, 0xf1, 0xb8, 0xd2, }; static const unsigned char xdh_wei448_2725_privkey[] = { 0xb8, 0xbb, 0xcf, 0x42, 0xea, 0x9c, 0x95, 0xff, 0x90, 0x8d, 0xba, 0x59, 0x8c, 0x96, 0x44, 0x0d, 0xdf, 0x66, 0x49, 0xf8, 0x30, 0xc4, 0xfe, 0x21, 0xf3, 0x1d, 0x0f, 0x45, 0xbc, 0x83, 0x47, 0xe4, 0x81, 0x71, 0xa9, 0x2a, 0x04, 0xd2, 0x19, 0xe4, 0x05, 0x7c, 0x10, 0xdc, 0x74, 0x9d, 0x90, 0x28, 0xfb, 0x5a, 0x55, 0x84, 0xa8, 0x80, 0x3b, 0xbe, }; static const unsigned char xdh_wei448_2725_sharedsecret[] = { 0x2c, 0x9b, 0xb5, 0xa0, 0x3d, 0x9c, 0xc0, 0xec, 0x65, 0xf5, 0x5c, 0x2c, 0x0a, 0x32, 0x79, 0xf4, 0xf7, 0x85, 0xd6, 0xb9, 0x9d, 0x8f, 0xea, 0x6c, 0x80, 0x33, 0xf0, 0xf0, 0xc9, 0xf2, 0xf3, 0xa0, 0xdd, 0xae, 0x1e, 0x09, 0xf5, 0x0a, 0xe7, 0x03, 0x7a, 0x89, 0x31, 0x65, 0x65, 0x0c, 0x5a, 0xb1, 0x5d, 0x20, 0x3f, 0x8d, 0xc2, 0x49, 0x69, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2725 = { .name = "xdh_wei448_2725", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2725_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2725_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2725_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2725_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 142 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2726 for XDH, tcId is 143 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2726_peerpubkey[] = { 0xa3, 0xd9, 0xe5, 0x94, 0x6d, 0x7d, 0x7c, 0xd9, 0xda, 0x73, 0x8c, 0xd5, 0x46, 0x53, 0xcd, 0xb3, 0xe7, 0x2f, 0xc6, 0xa3, 0x07, 0x89, 0xe9, 0x0a, 0x3f, 0xc0, 0xff, 0x3d, 0x1f, 0x2b, 0xf9, 0xde, 0x94, 0x1f, 0x17, 0x9a, 0x32, 0x1b, 0x85, 0xe7, 0xc7, 0xf4, 0x3b, 0xaf, 0xd6, 0xeb, 0x26, 0xaa, 0x57, 0x14, 0x33, 0x6f, 0xdc, 0x64, 0x63, 0x12, }; static const unsigned char xdh_wei448_2726_ourpubkey[] = { 0xcb, 0x6d, 0xe0, 0x5b, 0x0f, 0x84, 0x27, 0xe1, 0xaf, 0x8b, 0x26, 0xfd, 0x9b, 0x8f, 0x5a, 0xa6, 0xbc, 0xa6, 0xd6, 0xb5, 0x63, 0x77, 0xe1, 0xe3, 0x0a, 0x7b, 0x42, 0x02, 0x09, 0x50, 0xb2, 0x84, 0x86, 0xa7, 0xd9, 0x36, 0x69, 0x98, 0xc5, 0xa1, 0x0c, 0x5e, 0x62, 0x02, 0x16, 0x4e, 0x60, 0x4d, 0x5b, 0x95, 0x01, 0x61, 0xa7, 0xea, 0x1b, 0xbd, }; static const unsigned char xdh_wei448_2726_privkey[] = { 0xe4, 0xf0, 0xb2, 0x95, 0xc3, 0xe0, 0xad, 0x3c, 0xd6, 0x43, 0x92, 0x9c, 0x34, 0x0a, 0xd2, 0x9d, 0x36, 0x89, 0x70, 0xe2, 0xdb, 0x1e, 0xa2, 0x51, 0x7b, 0xfe, 0x43, 0xf1, 0x12, 0xd8, 0x2b, 0xce, 0x54, 0xbf, 0xe1, 0x61, 0x38, 0x35, 0x55, 0x45, 0x5b, 0xd2, 0xe2, 0x0d, 0x8b, 0x2c, 0x0b, 0xb1, 0x87, 0xd0, 0xdc, 0x11, 0xa7, 0x0c, 0x7b, 0xab, }; static const unsigned char xdh_wei448_2726_sharedsecret[] = { 0x71, 0xff, 0xb6, 0x11, 0x9f, 0x50, 0xb5, 0x97, 0x97, 0x6c, 0x4e, 0xdd, 0x86, 0xd6, 0xfc, 0xd1, 0x86, 0x8e, 0xfd, 0x0a, 0xf6, 0xda, 0x57, 0xe5, 0xa6, 0x4f, 0x0e, 0xac, 0x2c, 0x5a, 0x01, 0x1b, 0x54, 0x3b, 0x9b, 0x52, 0xc7, 0x84, 0xfa, 0x4e, 0x73, 0x99, 0x43, 0x7c, 0x81, 0x40, 0xa7, 0xfa, 0x68, 0x8e, 0x5a, 0xfe, 0xe5, 0xaa, 0xf7, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2726 = { .name = "xdh_wei448_2726", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2726_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2726_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2726_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2726_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 143 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2727 for XDH, tcId is 144 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2727_peerpubkey[] = { 0x54, 0x3f, 0x1c, 0x98, 0x13, 0xfb, 0xb1, 0xd8, 0xc2, 0x82, 0xfd, 0x2d, 0xb8, 0xc1, 0x9d, 0x3f, 0x11, 0x97, 0x3e, 0x6d, 0x28, 0x81, 0x30, 0x7d, 0x4b, 0xf0, 0x0f, 0x9d, 0xe7, 0xdd, 0xab, 0xf5, 0x50, 0xea, 0x00, 0x51, 0xb4, 0xe0, 0x3d, 0x47, 0x20, 0x60, 0x58, 0xa6, 0xdd, 0x24, 0x14, 0x88, 0x4b, 0x19, 0x49, 0x64, 0x13, 0x0c, 0xed, 0x35, }; static const unsigned char xdh_wei448_2727_ourpubkey[] = { 0x86, 0x5c, 0xce, 0x66, 0xe8, 0xe4, 0xb1, 0xbd, 0xfb, 0x50, 0x06, 0x05, 0x71, 0xc0, 0x19, 0xfb, 0x11, 0xe2, 0x66, 0x17, 0x48, 0x66, 0x6d, 0xb5, 0x19, 0xb5, 0x72, 0xb4, 0x33, 0x47, 0xea, 0xc5, 0x97, 0xc6, 0x38, 0xd3, 0x61, 0x6b, 0x30, 0x38, 0x53, 0x34, 0x18, 0xc2, 0xb7, 0xd6, 0x14, 0xe7, 0xac, 0x6e, 0xb8, 0xba, 0x62, 0xf9, 0xa2, 0x3c, }; static const unsigned char xdh_wei448_2727_privkey[] = { 0xb0, 0xa7, 0x8d, 0xbe, 0xd2, 0xbf, 0x1a, 0x9e, 0xf2, 0x3b, 0x5d, 0x69, 0xc0, 0x6a, 0x95, 0xb9, 0x31, 0x92, 0x57, 0x7a, 0x58, 0x1f, 0xa9, 0x59, 0x36, 0xa3, 0x6d, 0x65, 0x86, 0xcf, 0x22, 0x69, 0x95, 0xd8, 0x3e, 0xe7, 0x4c, 0xd2, 0x82, 0x56, 0xb1, 0x6a, 0xc4, 0x43, 0xa5, 0x52, 0x45, 0x9f, 0x64, 0x88, 0x1b, 0xc0, 0x47, 0xbd, 0x89, 0x89, }; static const unsigned char xdh_wei448_2727_sharedsecret[] = { 0xd5, 0x23, 0x44, 0x92, 0xc6, 0x7b, 0xd9, 0xf1, 0xf9, 0x91, 0xbe, 0x23, 0x71, 0x90, 0x7c, 0x09, 0x5a, 0x0d, 0x0b, 0xe8, 0xe7, 0x98, 0x8b, 0x31, 0x36, 0xcb, 0xdb, 0xcc, 0x50, 0x0e, 0x5c, 0xaa, 0x24, 0xfb, 0x0f, 0x26, 0xc7, 0x77, 0xcc, 0xe6, 0x4d, 0xd1, 0x43, 0xf4, 0x62, 0xb8, 0x4b, 0xf4, 0xc7, 0x4c, 0x6b, 0xce, 0x8f, 0xd8, 0x69, 0x47, }; static const wycheproof_xdh_test xdh_wei448_2727 = { .name = "xdh_wei448_2727", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2727_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2727_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2727_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2727_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 144 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2728 for XDH, tcId is 145 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2728_peerpubkey[] = { 0x60, 0x5c, 0x4f, 0x65, 0xab, 0x0e, 0xe2, 0xa1, 0x5e, 0x42, 0xa7, 0xf3, 0x02, 0xa7, 0x80, 0x43, 0x41, 0x64, 0xaf, 0x55, 0x89, 0xec, 0xa1, 0xae, 0x0a, 0xd7, 0x82, 0xd9, 0x23, 0x29, 0xc5, 0x9d, 0x0f, 0xfa, 0xd0, 0x43, 0xa2, 0x0d, 0x62, 0x2b, 0x9f, 0x72, 0xe7, 0xb9, 0xa1, 0x81, 0xaf, 0xad, 0xac, 0xb6, 0xf2, 0x19, 0x4d, 0xcb, 0xe2, 0xae, }; static const unsigned char xdh_wei448_2728_ourpubkey[] = { 0xc7, 0x94, 0xf6, 0xa9, 0xa2, 0xae, 0x3f, 0x8c, 0x89, 0x94, 0x25, 0x38, 0x3a, 0xf9, 0x65, 0x32, 0xb5, 0xb0, 0x2e, 0x81, 0x4a, 0xee, 0xa8, 0x1a, 0x62, 0x3c, 0x48, 0x69, 0x93, 0xe8, 0xea, 0x13, 0x0f, 0xb7, 0x3d, 0x20, 0x25, 0x97, 0xdd, 0x2f, 0x28, 0x4d, 0x3e, 0xd5, 0x79, 0x15, 0xda, 0xab, 0x8d, 0x5b, 0xfc, 0x08, 0xcd, 0x60, 0xf2, 0xa4, }; static const unsigned char xdh_wei448_2728_privkey[] = { 0x34, 0x9f, 0xa5, 0xb5, 0x42, 0x3f, 0x3e, 0x57, 0xf2, 0x7d, 0x10, 0xd7, 0xea, 0xaa, 0xe5, 0x49, 0x06, 0x30, 0xbe, 0xaf, 0x47, 0x22, 0x66, 0x20, 0xe7, 0x0b, 0x5b, 0xa5, 0x6b, 0xd2, 0x93, 0x07, 0x70, 0xa8, 0x2e, 0x96, 0x20, 0xd2, 0x10, 0x81, 0xd4, 0x7e, 0x58, 0xfb, 0x31, 0xce, 0x5c, 0x67, 0x4f, 0xb9, 0x9f, 0x9d, 0x8f, 0x95, 0xa2, 0x89, }; static const unsigned char xdh_wei448_2728_sharedsecret[] = { 0xaa, 0xb5, 0xa5, 0x19, 0x24, 0x2a, 0x0a, 0x8b, 0x1b, 0x3e, 0x62, 0x28, 0x34, 0x36, 0xd5, 0xae, 0x46, 0x35, 0x1b, 0x4f, 0x29, 0xff, 0x97, 0x55, 0x04, 0x4e, 0xb8, 0xe0, 0xff, 0x1e, 0xa3, 0x33, 0x46, 0x24, 0xab, 0x01, 0xcf, 0x5e, 0x39, 0xa3, 0x78, 0x38, 0x24, 0xf0, 0xb7, 0xd3, 0xcc, 0xc2, 0xe7, 0x10, 0x6d, 0x4c, 0xe6, 0xc6, 0x72, 0x62, }; static const wycheproof_xdh_test xdh_wei448_2728 = { .name = "xdh_wei448_2728", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2728_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2728_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2728_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2728_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 145 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2729 for XDH, tcId is 146 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2729_peerpubkey[] = { 0x3c, 0xd6, 0x73, 0x9f, 0x26, 0x06, 0x7e, 0x7e, 0x9f, 0xfc, 0x51, 0xaf, 0xc3, 0xb9, 0x29, 0xf7, 0x02, 0x62, 0x2f, 0x7b, 0xe3, 0xd1, 0x7b, 0x58, 0xee, 0xb1, 0x0c, 0x12, 0xb4, 0x02, 0xd2, 0xdd, 0xe3, 0xe4, 0xfa, 0x56, 0xae, 0xa6, 0x77, 0x98, 0x93, 0x31, 0xdd, 0xde, 0xb1, 0x2c, 0xf2, 0xf0, 0xa1, 0x45, 0x8b, 0x3e, 0x0e, 0xb8, 0x24, 0xb4, }; static const unsigned char xdh_wei448_2729_ourpubkey[] = { 0x8f, 0x8d, 0xaa, 0x2f, 0x59, 0x89, 0x0a, 0xb7, 0xc5, 0x71, 0x06, 0x55, 0x4b, 0xd3, 0x8e, 0xcb, 0xf1, 0x34, 0xc4, 0x2c, 0x52, 0x07, 0xc9, 0xdd, 0x91, 0xd1, 0x99, 0x03, 0x70, 0x03, 0x67, 0xdb, 0x39, 0xcd, 0xf7, 0x6b, 0x00, 0x03, 0x78, 0x64, 0x2c, 0xfe, 0x06, 0x83, 0xf9, 0x5b, 0x3c, 0xaa, 0xb0, 0xe3, 0xaf, 0x20, 0x87, 0xc1, 0xd5, 0x7e, }; static const unsigned char xdh_wei448_2729_privkey[] = { 0x84, 0xc7, 0xba, 0xd5, 0x9e, 0x33, 0x2e, 0x1d, 0xab, 0x8e, 0x0d, 0x58, 0xa6, 0x4d, 0xef, 0xf8, 0x94, 0xf2, 0x4c, 0x04, 0x2c, 0x13, 0xb1, 0xee, 0xe6, 0x50, 0x72, 0x11, 0x85, 0xe5, 0x9d, 0xa3, 0x3f, 0x4f, 0x27, 0xa2, 0x9d, 0x70, 0xfa, 0x14, 0x82, 0xdb, 0x32, 0xf6, 0xc9, 0xe9, 0x98, 0xa9, 0xce, 0x4d, 0xad, 0x96, 0x42, 0x03, 0x26, 0x98, }; static const unsigned char xdh_wei448_2729_sharedsecret[] = { 0x6f, 0x53, 0x8d, 0x45, 0xbd, 0xb7, 0xbd, 0x7e, 0x46, 0xae, 0x38, 0x17, 0x3c, 0xf7, 0x6f, 0xbe, 0xee, 0xd7, 0xfd, 0x4a, 0x51, 0x7d, 0x9f, 0x68, 0xd7, 0xe4, 0xb1, 0xa3, 0x8d, 0x9b, 0x7b, 0x7c, 0x14, 0xd9, 0x1f, 0xa7, 0xed, 0xc5, 0x45, 0x2f, 0x01, 0x7a, 0x33, 0x95, 0x9f, 0x66, 0x8b, 0x9e, 0x04, 0x41, 0x32, 0xc3, 0xb0, 0x38, 0x13, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_2729 = { .name = "xdh_wei448_2729", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2729_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2729_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2729_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2729_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 146 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2730 for XDH, tcId is 147 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2730_peerpubkey[] = { 0xb3, 0x27, 0x87, 0x93, 0x0b, 0x31, 0x1c, 0xa4, 0xc4, 0xbc, 0x08, 0x3f, 0xc7, 0xda, 0x3f, 0x87, 0x90, 0x21, 0xa6, 0x90, 0xd2, 0x8c, 0x3b, 0xa8, 0x03, 0x43, 0x0f, 0xa9, 0x3b, 0x7a, 0x7a, 0xf6, 0x54, 0x3e, 0xd6, 0xef, 0x03, 0x25, 0x5c, 0x46, 0x6d, 0x20, 0x3c, 0x00, 0x4d, 0x52, 0x49, 0x27, 0x9d, 0x0c, 0xc4, 0x8c, 0x1e, 0xea, 0x25, 0xdc, }; static const unsigned char xdh_wei448_2730_ourpubkey[] = { 0x12, 0x82, 0x63, 0x71, 0xe0, 0x83, 0x47, 0xdf, 0x3c, 0x8d, 0xe8, 0x0e, 0x63, 0x0a, 0x32, 0x27, 0x69, 0xbb, 0x96, 0xfb, 0xd0, 0xb5, 0xc9, 0xb1, 0x64, 0x17, 0xb1, 0x8b, 0x88, 0xc7, 0xe9, 0xec, 0x63, 0xaf, 0x34, 0x51, 0x13, 0x9e, 0x2c, 0xf9, 0x24, 0xa8, 0xbf, 0xfb, 0xe4, 0x77, 0x5d, 0xc3, 0xbf, 0x6d, 0xde, 0xb3, 0x76, 0xce, 0x6c, 0xa5, }; static const unsigned char xdh_wei448_2730_privkey[] = { 0x70, 0x92, 0xf5, 0xef, 0x4e, 0x90, 0xe0, 0x4b, 0x18, 0xdb, 0x8a, 0xbb, 0xc5, 0x7a, 0x96, 0xaa, 0xb4, 0x97, 0x76, 0xfa, 0x89, 0x79, 0x32, 0x1d, 0x4f, 0xc3, 0xce, 0xc5, 0x64, 0x88, 0x2a, 0xc6, 0x4d, 0x2f, 0x8e, 0xcf, 0xa1, 0x81, 0xe7, 0x0b, 0xd1, 0xca, 0xe7, 0x6b, 0xf5, 0xec, 0xc8, 0x9f, 0x61, 0xd4, 0xda, 0x80, 0xa2, 0x58, 0x0e, 0xb6, }; static const unsigned char xdh_wei448_2730_sharedsecret[] = { 0x3c, 0x8d, 0xa7, 0x1a, 0x00, 0x22, 0x1b, 0x9f, 0x77, 0x98, 0xc4, 0xd1, 0xf9, 0xe5, 0xec, 0x36, 0x6a, 0x3d, 0x8c, 0x38, 0x58, 0xec, 0xa0, 0xc4, 0x69, 0x94, 0x55, 0x86, 0xbe, 0x10, 0x11, 0x27, 0x26, 0x57, 0x8d, 0x67, 0xab, 0xbf, 0xf2, 0xb5, 0x97, 0xa1, 0x12, 0x53, 0x1c, 0x36, 0x1d, 0x09, 0x96, 0x51, 0x05, 0xda, 0xb2, 0x46, 0xab, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_2730 = { .name = "xdh_wei448_2730", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2730_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2730_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2730_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2730_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 147 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2731 for XDH, tcId is 148 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2731_peerpubkey[] = { 0xc4, 0xcb, 0x77, 0x0d, 0xe1, 0xc5, 0x21, 0xa3, 0x43, 0xdf, 0x91, 0x72, 0xf9, 0xa5, 0xb9, 0x28, 0x1d, 0xf0, 0x6a, 0xf7, 0xf6, 0x1a, 0xf9, 0xea, 0x12, 0x40, 0x8d, 0xfe, 0xad, 0x1d, 0xcc, 0x6c, 0x16, 0x9a, 0x2b, 0xda, 0x16, 0x5d, 0xd0, 0x5a, 0x73, 0x67, 0x9a, 0xa1, 0x4d, 0x05, 0x8f, 0x4f, 0xcb, 0x14, 0xef, 0xac, 0x1e, 0x58, 0x04, 0xff, }; static const unsigned char xdh_wei448_2731_ourpubkey[] = { 0x59, 0x0b, 0x59, 0xf8, 0xcf, 0xe2, 0x4f, 0x0f, 0xd8, 0xf4, 0xf1, 0x9d, 0x20, 0xc5, 0xf8, 0x0c, 0x78, 0x08, 0xe6, 0x38, 0x89, 0xdb, 0x65, 0x2c, 0x21, 0xc7, 0xf4, 0xf3, 0x95, 0x9f, 0x46, 0xdc, 0x65, 0x02, 0xaa, 0x74, 0x26, 0xcb, 0xfd, 0xc4, 0x26, 0xf3, 0x7b, 0x07, 0x79, 0xea, 0x5a, 0xf2, 0xba, 0xf2, 0x9a, 0x17, 0xb5, 0xa5, 0xf6, 0x7d, }; static const unsigned char xdh_wei448_2731_privkey[] = { 0x48, 0xf4, 0x5b, 0xef, 0x6b, 0x16, 0x6f, 0xdd, 0x97, 0x10, 0xe8, 0xe7, 0xde, 0x6c, 0xb9, 0x42, 0x28, 0xfe, 0x09, 0xd9, 0x67, 0xaf, 0x4e, 0xcd, 0xff, 0x92, 0x72, 0x69, 0x5b, 0xb9, 0x90, 0x13, 0xb0, 0x50, 0xbb, 0x35, 0x4f, 0x50, 0xa5, 0xa6, 0x0e, 0xd2, 0x81, 0xc3, 0x04, 0xe6, 0xfb, 0x02, 0xca, 0xde, 0x2f, 0xd4, 0x18, 0xdd, 0xf3, 0x99, }; static const unsigned char xdh_wei448_2731_sharedsecret[] = { 0xd4, 0x3f, 0x64, 0x21, 0xbd, 0x46, 0x20, 0xf4, 0x02, 0xe5, 0x5f, 0x57, 0xa9, 0xdb, 0x4c, 0x5e, 0x9c, 0x47, 0x9c, 0x31, 0x73, 0xa5, 0x75, 0xf9, 0x34, 0x42, 0xe5, 0x85, 0x29, 0xa7, 0x6a, 0xc3, 0xbd, 0x5d, 0xfc, 0xe1, 0x5a, 0x2c, 0xc0, 0xc1, 0x57, 0x66, 0x11, 0x6c, 0x99, 0xe9, 0xe2, 0xbe, 0x8c, 0x5b, 0x8a, 0x12, 0x56, 0x66, 0x27, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_2731 = { .name = "xdh_wei448_2731", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2731_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2731_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2731_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2731_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 148 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2732 for XDH, tcId is 149 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2732_peerpubkey[] = { 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_2732_ourpubkey[] = { 0xa9, 0xa3, 0x38, 0x1c, 0x0e, 0xbe, 0x64, 0x8a, 0x48, 0x46, 0xcf, 0x3a, 0x9c, 0x96, 0xf1, 0x5b, 0x02, 0x86, 0x82, 0x45, 0xb8, 0xa4, 0xf5, 0xcf, 0xbf, 0xfb, 0xcf, 0xb0, 0x33, 0xdf, 0x7a, 0x48, 0xa0, 0xfd, 0x6a, 0xfc, 0xbd, 0x9e, 0x62, 0x0b, 0xd6, 0x34, 0xa6, 0xbc, 0x84, 0xd2, 0x19, 0x32, 0x46, 0x50, 0x11, 0x7f, 0x87, 0xf5, 0x19, 0x41, }; static const unsigned char xdh_wei448_2732_privkey[] = { 0x00, 0xab, 0x5a, 0x77, 0x83, 0x4d, 0x28, 0x0d, 0xaf, 0x5f, 0x95, 0x6a, 0xb2, 0x49, 0xd0, 0xe3, 0x45, 0x4e, 0x6c, 0x26, 0x02, 0x4e, 0x3f, 0x31, 0xeb, 0x0d, 0xd8, 0xdf, 0x01, 0x84, 0x85, 0x40, 0x7b, 0x88, 0xeb, 0xd8, 0x16, 0x38, 0xbd, 0x45, 0x71, 0xbd, 0x24, 0xf2, 0x53, 0x90, 0xeb, 0x35, 0x8e, 0x83, 0x6f, 0xba, 0xa8, 0xb7, 0xba, 0x95, }; static const unsigned char xdh_wei448_2732_sharedsecret[] = { 0x7f, 0x15, 0x13, 0xc0, 0x3a, 0x51, 0xb1, 0x5c, 0x8a, 0xa1, 0x7c, 0x0b, 0xac, 0x4a, 0x46, 0xd5, 0xc2, 0x76, 0xf4, 0xf9, 0x3f, 0x63, 0x3f, 0x75, 0x0d, 0x60, 0x86, 0x61, 0x49, 0x33, 0x15, 0x1e, 0x03, 0xf4, 0xef, 0x2b, 0x77, 0x2f, 0x9a, 0x39, 0x48, 0x0b, 0x2e, 0x83, 0xd6, 0x82, 0xd7, 0x66, 0x8e, 0xfd, 0x20, 0x1e, 0x13, 0x69, 0xd9, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2732 = { .name = "xdh_wei448_2732", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2732_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2732_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2732_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2732_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 149 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2733 for XDH, tcId is 150 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2733_peerpubkey[] = { 0x9e, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_2733_ourpubkey[] = { 0x27, 0x14, 0x05, 0x4c, 0x00, 0x5e, 0x2a, 0x40, 0x68, 0xac, 0xb0, 0xd6, 0x86, 0x87, 0x57, 0x52, 0xea, 0x69, 0x9d, 0x17, 0x31, 0x2b, 0xbe, 0xc3, 0xe9, 0xd6, 0xe8, 0x6d, 0x2e, 0x55, 0x6a, 0x30, 0x70, 0x2a, 0x38, 0x5a, 0x5f, 0xba, 0x07, 0x0d, 0x98, 0x12, 0xf9, 0xad, 0x7d, 0x44, 0x3b, 0x40, 0x81, 0x47, 0x3d, 0x8a, 0x40, 0xae, 0xb2, 0xad, }; static const unsigned char xdh_wei448_2733_privkey[] = { 0x54, 0x11, 0x14, 0xfb, 0xfc, 0x2e, 0xb4, 0x7e, 0x94, 0x2c, 0xbc, 0xb4, 0x89, 0x2f, 0xd8, 0xf9, 0xdd, 0xeb, 0x5c, 0xb6, 0x43, 0xe1, 0x9f, 0x89, 0xd2, 0xfb, 0x77, 0xd4, 0x5f, 0x0c, 0x0d, 0x5a, 0x8a, 0x48, 0xf7, 0xc4, 0x1b, 0xd8, 0xd9, 0xbe, 0xf0, 0xdf, 0x8d, 0xbc, 0xa9, 0x3e, 0x4f, 0xd1, 0xe8, 0x7c, 0x62, 0xa4, 0x93, 0x8f, 0x25, 0x92, }; static const unsigned char xdh_wei448_2733_sharedsecret[] = { 0x36, 0xe7, 0x73, 0xe3, 0xa1, 0x8d, 0xba, 0xd7, 0x66, 0x49, 0xad, 0x5e, 0xa8, 0xa4, 0x12, 0x0d, 0xca, 0xb9, 0xb2, 0x3e, 0xbc, 0xe9, 0x95, 0x14, 0x88, 0x7c, 0xa1, 0x92, 0xe5, 0xf7, 0x40, 0xed, 0x4b, 0xd2, 0x78, 0xf6, 0xcb, 0x89, 0xf8, 0x2c, 0xf0, 0x39, 0xda, 0x69, 0xa3, 0x7f, 0xd1, 0x53, 0x21, 0x25, 0x20, 0x48, 0x85, 0xff, 0x56, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_2733 = { .name = "xdh_wei448_2733", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2733_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2733_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2733_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2733_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 150 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2734 for XDH, tcId is 151 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2734_peerpubkey[] = { 0xb5, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_2734_ourpubkey[] = { 0x05, 0xb9, 0x5d, 0x43, 0x17, 0x3c, 0x6b, 0x4f, 0x09, 0xf8, 0x46, 0x27, 0x09, 0xc3, 0xdf, 0xc5, 0xfb, 0x11, 0x69, 0xbf, 0x85, 0xc9, 0x9f, 0x64, 0xfb, 0x49, 0x78, 0x3b, 0x28, 0xac, 0x15, 0x45, 0x35, 0xdc, 0xcc, 0x5d, 0x67, 0xd4, 0x04, 0x99, 0xcb, 0x7e, 0x97, 0x6f, 0x22, 0x99, 0x47, 0x26, 0x6c, 0x31, 0x43, 0xfa, 0xc3, 0xc7, 0xd5, 0x37, }; static const unsigned char xdh_wei448_2734_privkey[] = { 0x08, 0xe4, 0x13, 0x9f, 0xbe, 0x13, 0x7f, 0xa0, 0x4c, 0xd8, 0x62, 0x23, 0x33, 0x4a, 0x9e, 0x4b, 0xf1, 0xa3, 0xc9, 0x0c, 0x3c, 0xc7, 0x05, 0x66, 0x81, 0xdb, 0xdb, 0x04, 0xce, 0xc4, 0x28, 0x58, 0x2e, 0x5e, 0x63, 0xc3, 0x70, 0x5f, 0xd5, 0x1d, 0xe4, 0x8b, 0xe2, 0x8b, 0xf9, 0x63, 0x67, 0x73, 0x92, 0x83, 0x39, 0xe8, 0x76, 0xe4, 0xdd, 0xaa, }; static const unsigned char xdh_wei448_2734_sharedsecret[] = { 0x2c, 0x4a, 0xaa, 0xec, 0x96, 0x6c, 0xa0, 0xb0, 0xb4, 0xe0, 0x00, 0xe3, 0xf1, 0xb2, 0x3d, 0xbe, 0xfb, 0xd8, 0x6a, 0xa7, 0x76, 0x3d, 0x66, 0x96, 0x8a, 0x39, 0x36, 0x2a, 0xea, 0x4b, 0x33, 0xe0, 0x41, 0xc5, 0x10, 0xe4, 0xab, 0xcf, 0x21, 0xf1, 0xec, 0x6b, 0x92, 0x7a, 0xed, 0x30, 0x11, 0xa6, 0x0d, 0x54, 0xb6, 0x27, 0xc8, 0x83, 0xfa, 0xb5, }; static const wycheproof_xdh_test xdh_wei448_2734 = { .name = "xdh_wei448_2734", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2734_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2734_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2734_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2734_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 151 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2735 for XDH, tcId is 152 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2735_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2735_ourpubkey[] = { 0x8c, 0xe6, 0x8a, 0x19, 0xdf, 0x32, 0x59, 0x25, 0x52, 0x07, 0xb7, 0xdd, 0x00, 0x88, 0x4d, 0xb7, 0xb6, 0x84, 0x26, 0xac, 0x4c, 0x43, 0x85, 0xf5, 0x80, 0x97, 0xcd, 0x8e, 0xab, 0xec, 0xf0, 0x8f, 0x91, 0xc6, 0xae, 0x03, 0xbe, 0x56, 0x64, 0x7d, 0x05, 0xb1, 0x0c, 0x6e, 0xfb, 0xe9, 0xab, 0x39, 0x28, 0xc6, 0x3c, 0xa7, 0x07, 0x5c, 0xe3, 0x0e, }; static const unsigned char xdh_wei448_2735_privkey[] = { 0x70, 0x0a, 0x99, 0x85, 0x56, 0x91, 0x33, 0xa0, 0x02, 0x59, 0x1e, 0x4d, 0x66, 0x3a, 0x2a, 0x9b, 0xd5, 0x15, 0x8c, 0xc1, 0x21, 0xd7, 0xd8, 0x79, 0x3e, 0x6a, 0x2d, 0x63, 0x15, 0xa8, 0xf2, 0xb8, 0x60, 0x8d, 0x23, 0x25, 0x47, 0x81, 0xb7, 0xbd, 0x1c, 0x89, 0x82, 0x31, 0xec, 0xde, 0x23, 0x38, 0x80, 0x85, 0x88, 0xf7, 0xe8, 0x46, 0x7a, 0x92, }; static const unsigned char xdh_wei448_2735_sharedsecret[] = { 0x82, 0x59, 0x7f, 0x64, 0x57, 0x0e, 0x5e, 0xab, 0x95, 0xd2, 0x5a, 0xb8, 0x1a, 0xcd, 0xf0, 0x65, 0x1c, 0x9c, 0x6a, 0x6c, 0x81, 0x5f, 0x09, 0x31, 0xf5, 0x12, 0x31, 0x2a, 0x89, 0x6a, 0xfc, 0x85, 0xf8, 0x08, 0xd8, 0x3c, 0xed, 0x09, 0x9b, 0xfd, 0xb9, 0x68, 0x96, 0x99, 0x9e, 0x5f, 0xbd, 0x13, 0x9d, 0xa0, 0xa0, 0x79, 0x69, 0xf1, 0x90, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2735 = { .name = "xdh_wei448_2735", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2735_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2735_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2735_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2735_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 152 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2736 for XDH, tcId is 153 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2736_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2736_ourpubkey[] = { 0xf9, 0xd1, 0xb5, 0x55, 0x70, 0xd1, 0x2b, 0xcd, 0x1c, 0x03, 0x7f, 0x74, 0x05, 0xf8, 0x97, 0x8d, 0x8b, 0x94, 0x56, 0xd1, 0x09, 0x6a, 0x2c, 0x49, 0x6e, 0x6d, 0x77, 0x0d, 0xce, 0x3d, 0x54, 0xc9, 0xfe, 0xca, 0xff, 0x11, 0xc9, 0xf7, 0xb3, 0xc0, 0x2d, 0xd6, 0x4b, 0xf4, 0xcd, 0xbd, 0xb7, 0xcd, 0xd7, 0x7e, 0xf7, 0xe0, 0x97, 0xb1, 0xa0, 0xe7, }; static const unsigned char xdh_wei448_2736_privkey[] = { 0x44, 0x28, 0x85, 0x1a, 0xf5, 0x97, 0x31, 0xaa, 0xdd, 0x9c, 0xaf, 0x1b, 0x28, 0xc3, 0x4b, 0x55, 0x76, 0xfa, 0xe1, 0x55, 0x76, 0x2c, 0xdb, 0x15, 0x63, 0x05, 0xa8, 0xfc, 0xd5, 0xc5, 0xb6, 0x4b, 0x08, 0x24, 0x9d, 0x4c, 0x40, 0x0a, 0xd1, 0x00, 0xd6, 0x4a, 0x9f, 0x4c, 0xf9, 0x64, 0x57, 0x17, 0x30, 0x63, 0x55, 0x77, 0x20, 0x95, 0x36, 0x81, }; static const unsigned char xdh_wei448_2736_sharedsecret[] = { 0xbe, 0x34, 0x52, 0x6d, 0xe6, 0xc5, 0xbf, 0x2c, 0xf3, 0x54, 0x22, 0xc9, 0x1b, 0xe6, 0xb9, 0xe6, 0xb4, 0x16, 0x51, 0x08, 0x1c, 0x56, 0x40, 0xb5, 0xf1, 0x82, 0x44, 0x69, 0xb8, 0x2d, 0x0f, 0x29, 0x6a, 0xfa, 0x5d, 0xec, 0x09, 0x76, 0x8c, 0xcf, 0x0d, 0x6a, 0x37, 0xc3, 0xe7, 0x02, 0x52, 0x26, 0xcc, 0x4a, 0x57, 0x21, 0x1b, 0xed, 0x4e, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2736 = { .name = "xdh_wei448_2736", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2736_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2736_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2736_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2736_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 153 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2737 for XDH, tcId is 154 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2737_peerpubkey[] = { 0x49, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_2737_ourpubkey[] = { 0x79, 0xc6, 0xba, 0x10, 0x82, 0x60, 0xae, 0xe2, 0x8f, 0x4c, 0xcf, 0x6b, 0xd1, 0x5a, 0xaf, 0x70, 0xf3, 0x91, 0x20, 0xa0, 0x0a, 0x3d, 0x64, 0x63, 0xdf, 0xb1, 0x1a, 0x47, 0x4c, 0xae, 0x8b, 0xf8, 0xbe, 0x22, 0xac, 0x74, 0x8d, 0xdc, 0xfd, 0x54, 0x35, 0x0e, 0xfa, 0x27, 0x3f, 0x3c, 0x1d, 0x25, 0xe9, 0x31, 0x88, 0x6c, 0x1b, 0x0e, 0xcf, 0x4b, }; static const unsigned char xdh_wei448_2737_privkey[] = { 0x54, 0xec, 0x25, 0x46, 0x9d, 0x62, 0xa1, 0xe4, 0xdd, 0x19, 0x52, 0x16, 0x21, 0x29, 0xf8, 0x67, 0xf9, 0x82, 0x2b, 0x16, 0x1f, 0x40, 0x13, 0xf5, 0x8a, 0xba, 0x62, 0x3f, 0x88, 0x46, 0x4b, 0xf8, 0x92, 0xbd, 0xa2, 0x9a, 0x1f, 0xf9, 0xe5, 0xf6, 0x7b, 0x10, 0xc4, 0x4c, 0xda, 0x0d, 0xab, 0xf0, 0xdc, 0xcb, 0x28, 0x4c, 0x2a, 0x77, 0xf8, 0xad, }; static const unsigned char xdh_wei448_2737_sharedsecret[] = { 0xd7, 0xcb, 0x9f, 0xdb, 0xf3, 0x20, 0x04, 0x45, 0x39, 0xd4, 0x6c, 0x7d, 0xbc, 0xfe, 0xdd, 0x72, 0x37, 0x28, 0xe3, 0xe1, 0xab, 0x38, 0x5d, 0x44, 0x2b, 0x52, 0xaa, 0x7d, 0xfe, 0x4c, 0x13, 0x69, 0x78, 0x27, 0xa2, 0xb8, 0xba, 0x88, 0x06, 0xa9, 0xb1, 0xaf, 0x86, 0xf0, 0x53, 0xe9, 0x0e, 0x46, 0x8e, 0x74, 0x62, 0xf6, 0xc6, 0x69, 0x9e, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_2737 = { .name = "xdh_wei448_2737", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2737_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2737_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2737_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2737_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 154 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2738 for XDH, tcId is 155 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2738_peerpubkey[] = { 0x60, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_2738_ourpubkey[] = { 0x33, 0xb9, 0x86, 0xf9, 0x6b, 0x6f, 0x0c, 0x4a, 0xdc, 0xfd, 0x30, 0xd9, 0xa8, 0xc5, 0x65, 0xc9, 0x80, 0x32, 0x55, 0xa8, 0x87, 0xc4, 0x09, 0xa1, 0x28, 0xa6, 0xda, 0x89, 0xb9, 0x0b, 0x7f, 0x66, 0x73, 0x9a, 0xac, 0xa7, 0x50, 0x71, 0x26, 0x00, 0x9f, 0x45, 0x4e, 0xde, 0x5a, 0x43, 0xa8, 0xfd, 0xb6, 0x29, 0x1b, 0x97, 0x0c, 0x85, 0xee, 0xf2, }; static const unsigned char xdh_wei448_2738_privkey[] = { 0xc4, 0x8c, 0x97, 0xb1, 0x35, 0xcb, 0x79, 0xa7, 0x30, 0xc7, 0x4d, 0x0e, 0x3a, 0xff, 0xc6, 0x3b, 0x88, 0x47, 0x08, 0x4c, 0x59, 0x18, 0x6d, 0x4a, 0x03, 0x69, 0x02, 0xbe, 0x66, 0xc2, 0x27, 0xe5, 0xb3, 0xec, 0x86, 0xdc, 0x16, 0x85, 0x0b, 0x99, 0xec, 0x33, 0x4e, 0xcf, 0x10, 0x1a, 0x9d, 0xe3, 0x48, 0x55, 0x7f, 0x8d, 0x43, 0xd0, 0xf2, 0x8c, }; static const unsigned char xdh_wei448_2738_sharedsecret[] = { 0x85, 0x55, 0x2f, 0xb2, 0x9c, 0xa8, 0x96, 0xe8, 0xfc, 0xb5, 0x42, 0x18, 0x3c, 0xc5, 0x34, 0x3b, 0xf8, 0x91, 0x84, 0xd9, 0xc2, 0x1d, 0x55, 0xe7, 0xa3, 0xf9, 0xe4, 0x52, 0x03, 0xb2, 0x66, 0xf5, 0xcc, 0xef, 0xc6, 0x1c, 0x4f, 0x82, 0x17, 0x8a, 0xa7, 0x39, 0x88, 0xc1, 0x94, 0x8f, 0x11, 0x2a, 0x3c, 0xfb, 0x0a, 0x21, 0xad, 0xe9, 0x4b, 0xde, }; static const wycheproof_xdh_test xdh_wei448_2738 = { .name = "xdh_wei448_2738", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2738_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2738_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2738_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2738_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 155 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2739 for XDH, tcId is 156 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2739_peerpubkey[] = { 0xc9, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_2739_ourpubkey[] = { 0xb2, 0x1b, 0x76, 0xb9, 0x83, 0x01, 0xb7, 0xf3, 0xa0, 0x3d, 0xb9, 0x74, 0xed, 0xf5, 0xcb, 0x7c, 0xfc, 0x1c, 0x49, 0x69, 0xe2, 0x85, 0xa4, 0x8e, 0x82, 0x46, 0x4f, 0xac, 0xae, 0x21, 0x46, 0xce, 0xc9, 0x8c, 0x94, 0xe8, 0x69, 0x3f, 0x16, 0xf7, 0x01, 0xf1, 0x64, 0x1c, 0xbb, 0xd6, 0x7f, 0xce, 0x4f, 0x2e, 0x46, 0x65, 0x2b, 0xf4, 0x3d, 0x66, }; static const unsigned char xdh_wei448_2739_privkey[] = { 0x50, 0x8c, 0x89, 0x13, 0x70, 0xa1, 0x1f, 0x70, 0xce, 0x41, 0xb0, 0x41, 0x3b, 0x2d, 0xfc, 0x58, 0x8b, 0x1a, 0x65, 0x2a, 0x22, 0xc0, 0x99, 0x6e, 0xc3, 0x19, 0xbc, 0x11, 0x16, 0x94, 0xba, 0xf5, 0xd3, 0x40, 0xf8, 0x9e, 0x68, 0x5f, 0x63, 0x5f, 0x4b, 0xdb, 0xd3, 0xb2, 0x93, 0x7e, 0x0d, 0x1a, 0x5a, 0x59, 0x0e, 0x4e, 0xcb, 0x02, 0x7d, 0xab, }; static const unsigned char xdh_wei448_2739_sharedsecret[] = { 0x8a, 0xf2, 0x24, 0x24, 0x98, 0x1f, 0x8f, 0x2a, 0x1b, 0x9c, 0xc2, 0x8d, 0x74, 0x83, 0x30, 0xa7, 0xb6, 0xa7, 0x67, 0x51, 0x66, 0x21, 0x25, 0x23, 0x38, 0x6f, 0x35, 0x9a, 0x50, 0x3b, 0xbd, 0xf3, 0x88, 0x46, 0x57, 0x3a, 0xdd, 0xfe, 0xfb, 0x84, 0x14, 0x89, 0xce, 0x02, 0xb8, 0xb1, 0x69, 0x84, 0x42, 0xd2, 0xfd, 0xc3, 0x87, 0x40, 0xe3, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_2739 = { .name = "xdh_wei448_2739", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2739_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2739_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2739_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2739_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 156 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2740 for XDH, tcId is 157 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2740_peerpubkey[] = { 0x36, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_2740_ourpubkey[] = { 0xa5, 0x0f, 0x8a, 0x5d, 0x1e, 0xfa, 0x37, 0x68, 0x19, 0x37, 0x5f, 0x99, 0x2c, 0x84, 0xd3, 0x95, 0x44, 0xda, 0xbd, 0x7c, 0x30, 0x57, 0x90, 0x04, 0x82, 0x39, 0x34, 0xce, 0x38, 0x4a, 0x17, 0x63, 0x44, 0xc0, 0x56, 0xfc, 0x86, 0xcf, 0xf0, 0x54, 0x50, 0x3b, 0x90, 0x11, 0xa4, 0x78, 0x48, 0xa0, 0x3a, 0x6c, 0x5b, 0xf5, 0x6d, 0x18, 0x18, 0x08, }; static const unsigned char xdh_wei448_2740_privkey[] = { 0xec, 0x71, 0x40, 0x02, 0x51, 0x2a, 0xa1, 0x6a, 0x46, 0xd0, 0x0d, 0xb0, 0x6d, 0x41, 0xce, 0xd2, 0x30, 0xac, 0xe2, 0xaf, 0xf1, 0x39, 0x23, 0x09, 0x2b, 0xaf, 0x0f, 0x7e, 0xef, 0x5b, 0xff, 0x83, 0x43, 0xc9, 0xa3, 0x22, 0x59, 0x56, 0x4d, 0xd4, 0x51, 0xb8, 0xa0, 0xcb, 0x5c, 0x98, 0x7a, 0x8e, 0x6f, 0xa8, 0xdb, 0x8e, 0x4c, 0x26, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_2740_sharedsecret[] = { 0x99, 0xdd, 0xf3, 0x46, 0xdc, 0x91, 0x8d, 0x77, 0x2e, 0xc1, 0x1e, 0x89, 0x49, 0x9a, 0x82, 0xf3, 0xc5, 0x3e, 0x0c, 0xa2, 0xfa, 0xd0, 0x58, 0x55, 0x65, 0x3f, 0xc0, 0x7e, 0x5a, 0x15, 0x2b, 0xe3, 0xcf, 0x5e, 0xd9, 0x98, 0x11, 0x83, 0x57, 0x5f, 0x61, 0x2e, 0x59, 0x78, 0x9e, 0x0e, 0x79, 0x19, 0x77, 0x78, 0x58, 0x3e, 0x8b, 0x35, 0x66, 0x9f, }; static const wycheproof_xdh_test xdh_wei448_2740 = { .name = "xdh_wei448_2740", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2740_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2740_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2740_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2740_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 157 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2741 for XDH, tcId is 158 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2741_peerpubkey[] = { 0x9f, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_2741_ourpubkey[] = { 0x2e, 0x30, 0x63, 0x9d, 0xb0, 0x70, 0x53, 0xfc, 0xc3, 0x72, 0xb4, 0xf4, 0x3e, 0xb8, 0x34, 0xdd, 0x51, 0xc6, 0xcb, 0x59, 0x7d, 0xbd, 0x33, 0xf7, 0xef, 0x93, 0xd6, 0x55, 0x6d, 0xf9, 0xb2, 0xe7, 0xe7, 0xf6, 0xb4, 0xc3, 0xdf, 0x59, 0x8c, 0xf0, 0xfc, 0xc8, 0xfc, 0xf9, 0x54, 0xec, 0x57, 0xb7, 0x81, 0x2b, 0x8a, 0x3b, 0xed, 0xa3, 0x16, 0x84, }; static const unsigned char xdh_wei448_2741_privkey[] = { 0xe4, 0xd5, 0x1e, 0x5d, 0x74, 0x11, 0x9c, 0xaf, 0x3e, 0xa7, 0xe9, 0x89, 0x91, 0xb3, 0x3f, 0xc0, 0x5b, 0xd7, 0xfe, 0xdb, 0xf5, 0x19, 0x05, 0xee, 0x81, 0xa5, 0x86, 0xcf, 0x76, 0xd4, 0xa5, 0x48, 0x3a, 0x04, 0xab, 0x35, 0xe8, 0x25, 0x9b, 0x84, 0x94, 0xb9, 0x94, 0xa0, 0xc3, 0xad, 0xf8, 0xc9, 0x4c, 0x6a, 0x0e, 0xc9, 0x0e, 0x99, 0x20, 0x98, }; static const unsigned char xdh_wei448_2741_sharedsecret[] = { 0x3c, 0xae, 0x2e, 0xb2, 0x60, 0x18, 0x43, 0x67, 0x6f, 0xb4, 0xe4, 0x9e, 0xa4, 0xdf, 0x44, 0xe8, 0xd3, 0x1b, 0x14, 0xee, 0x36, 0x52, 0xf0, 0x43, 0x0c, 0x11, 0x4b, 0x92, 0xb0, 0xaf, 0xdd, 0xb3, 0xa5, 0x62, 0xf0, 0x53, 0xef, 0x37, 0xb4, 0x16, 0x48, 0x00, 0xfa, 0xc1, 0x53, 0xfc, 0x04, 0x15, 0xff, 0xb4, 0x80, 0xfa, 0xf5, 0x6e, 0x26, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2741 = { .name = "xdh_wei448_2741", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2741_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2741_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2741_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2741_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 158 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2742 for XDH, tcId is 159 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2742_peerpubkey[] = { 0xb6, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_2742_ourpubkey[] = { 0xff, 0xc9, 0xe8, 0xed, 0xf7, 0x26, 0x86, 0x8d, 0x80, 0x3b, 0xa6, 0x15, 0x6c, 0xa6, 0xff, 0xfa, 0xa2, 0x79, 0x7b, 0x3d, 0x45, 0x1a, 0x63, 0x17, 0x6f, 0x8c, 0xd3, 0x13, 0xb3, 0x6a, 0x94, 0xb5, 0xda, 0x55, 0x27, 0x2f, 0x6e, 0x14, 0x74, 0x30, 0x4a, 0x42, 0x2d, 0xbe, 0xd0, 0x49, 0x75, 0xf9, 0xd1, 0xe5, 0x5c, 0x8e, 0xef, 0xb3, 0x92, 0xd1, }; static const unsigned char xdh_wei448_2742_privkey[] = { 0x30, 0x7c, 0xf5, 0x96, 0x9e, 0x6f, 0xef, 0x65, 0x77, 0x65, 0xe0, 0xcf, 0x2f, 0xa9, 0xaf, 0xa4, 0x26, 0x96, 0xdb, 0x29, 0xd2, 0xc3, 0x69, 0x1c, 0x87, 0x4d, 0xb3, 0x68, 0x77, 0x20, 0x11, 0xe5, 0x0b, 0x4f, 0xb2, 0x2b, 0xbc, 0xd1, 0xbe, 0xb2, 0x35, 0x1a, 0xfb, 0x4e, 0x93, 0xe4, 0x3d, 0x28, 0xbd, 0x6e, 0xb7, 0xb1, 0xf4, 0x6d, 0x9b, 0xb2, }; static const unsigned char xdh_wei448_2742_sharedsecret[] = { 0x2e, 0xe9, 0x7f, 0xd2, 0xb8, 0x73, 0xeb, 0x49, 0x06, 0xae, 0x46, 0x8c, 0xcb, 0x72, 0x27, 0xc7, 0xb5, 0xdd, 0x0b, 0x93, 0x9d, 0x0d, 0x1d, 0x11, 0x2d, 0xfa, 0xe3, 0xdd, 0xe8, 0x2a, 0x2c, 0x8f, 0x04, 0xb3, 0xd1, 0x85, 0x5b, 0x74, 0x1e, 0x3a, 0x50, 0x07, 0x4a, 0x02, 0x06, 0x74, 0x3d, 0x24, 0xd0, 0xfe, 0x5b, 0x2e, 0x3c, 0x6c, 0xc1, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2742 = { .name = "xdh_wei448_2742", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2742_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2742_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2742_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2742_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 159 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2743 for XDH, tcId is 160 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2743_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_2743_ourpubkey[] = { 0x9e, 0xee, 0xf0, 0x8b, 0xfa, 0x2f, 0x8e, 0x57, 0x3a, 0x0d, 0xb4, 0x3b, 0xe3, 0xae, 0x72, 0x1f, 0xd7, 0x35, 0x9c, 0x80, 0xef, 0x9a, 0xa9, 0xd5, 0xa0, 0x14, 0xba, 0x60, 0x58, 0xeb, 0x8c, 0xe6, 0xda, 0xef, 0x28, 0x75, 0x29, 0x30, 0xef, 0xfa, 0xfa, 0x43, 0xcd, 0x8e, 0xb1, 0x5f, 0x6e, 0xc3, 0xf7, 0xad, 0x1e, 0xad, 0x09, 0xd9, 0x71, 0xfb, }; static const unsigned char xdh_wei448_2743_privkey[] = { 0x20, 0x73, 0x66, 0xc4, 0x9f, 0xd9, 0x57, 0x4e, 0x45, 0x40, 0x1a, 0x81, 0x77, 0xe1, 0x9e, 0xe9, 0xf0, 0x7a, 0x59, 0xde, 0x79, 0x95, 0xb1, 0x68, 0x4d, 0x42, 0x92, 0x4f, 0x51, 0x36, 0x2f, 0x57, 0x82, 0xc9, 0xcd, 0xf8, 0xdd, 0xe3, 0x7f, 0x61, 0xc0, 0xd4, 0x05, 0x9c, 0x98, 0x4f, 0xca, 0x4a, 0x83, 0x8c, 0x63, 0xd4, 0xa8, 0xcc, 0x76, 0xb0, }; static const unsigned char xdh_wei448_2743_sharedsecret[] = { 0xf3, 0x50, 0x26, 0x6e, 0xf6, 0xf4, 0x60, 0xb0, 0x65, 0xab, 0xdb, 0xd1, 0x19, 0xb6, 0x6d, 0xa5, 0xbe, 0x2d, 0x44, 0xe9, 0x0a, 0xc6, 0xdc, 0xf4, 0x5f, 0xeb, 0x30, 0xed, 0xdf, 0xfb, 0xc3, 0x93, 0xde, 0x01, 0xc5, 0xb1, 0x45, 0x5e, 0x67, 0x19, 0x23, 0x59, 0xeb, 0x0f, 0xc4, 0xdc, 0xff, 0xa1, 0xeb, 0x26, 0xf2, 0x44, 0x2f, 0x49, 0xd5, 0x93, }; static const wycheproof_xdh_test xdh_wei448_2743 = { .name = "xdh_wei448_2743", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2743_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2743_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2743_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2743_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 160 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2744 for XDH, tcId is 161 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2744_peerpubkey[] = { 0x4a, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_2744_ourpubkey[] = { 0x35, 0x3d, 0x15, 0xff, 0xea, 0xfe, 0x3e, 0xf4, 0x32, 0xfe, 0x63, 0x58, 0x94, 0x10, 0x33, 0x1b, 0x4d, 0x18, 0xe9, 0x8f, 0xf8, 0x83, 0x9f, 0x51, 0x83, 0x02, 0x5a, 0x6c, 0xce, 0xac, 0x73, 0xf3, 0xd4, 0xb1, 0x03, 0x4c, 0x57, 0x29, 0x89, 0x3c, 0x92, 0x21, 0x55, 0xca, 0x99, 0xf8, 0xa9, 0xb3, 0x59, 0x45, 0x49, 0xe6, 0xac, 0x8c, 0xa8, 0x41, }; static const unsigned char xdh_wei448_2744_privkey[] = { 0x20, 0xaf, 0xa0, 0x64, 0xf5, 0x05, 0x5c, 0x40, 0xad, 0x96, 0xd7, 0x20, 0x14, 0xc3, 0xee, 0x38, 0x8d, 0x4c, 0xc6, 0x01, 0xcb, 0xf4, 0x80, 0xed, 0xa8, 0xdc, 0x97, 0x63, 0xe9, 0xfe, 0xc4, 0x4f, 0x39, 0xaa, 0xd1, 0x12, 0x90, 0x24, 0x10, 0xdd, 0xca, 0xd5, 0xe7, 0x0b, 0x51, 0xd9, 0xd0, 0x03, 0x39, 0x05, 0x40, 0x7d, 0x21, 0x5a, 0xa4, 0x89, }; static const unsigned char xdh_wei448_2744_sharedsecret[] = { 0x9e, 0x08, 0x65, 0x58, 0xe9, 0xba, 0x60, 0xc4, 0x53, 0x28, 0xd4, 0x0d, 0x31, 0x75, 0x8c, 0x52, 0x79, 0x5e, 0xd5, 0x62, 0xcc, 0xc3, 0x21, 0x37, 0x8a, 0x11, 0xe0, 0x28, 0xb9, 0xad, 0x1c, 0xb7, 0xe5, 0xad, 0xf9, 0xbf, 0xd8, 0xf3, 0x55, 0xae, 0x5d, 0xf4, 0x3b, 0x86, 0xe3, 0x26, 0x62, 0x8b, 0x8a, 0x2d, 0x7a, 0x39, 0xb7, 0xe6, 0x6c, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_2744 = { .name = "xdh_wei448_2744", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2744_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2744_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2744_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2744_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 161 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2745 for XDH, tcId is 162 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2745_peerpubkey[] = { 0x61, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_2745_ourpubkey[] = { 0xcd, 0x4d, 0xa1, 0x94, 0x06, 0x1b, 0x24, 0x7d, 0x51, 0x7a, 0xc9, 0x1e, 0xb0, 0x05, 0x18, 0xc4, 0xf3, 0xc1, 0x95, 0xa0, 0x2d, 0x38, 0x0b, 0xb8, 0xd4, 0xe2, 0x5c, 0x69, 0xdb, 0xbf, 0x2e, 0xee, 0xa6, 0x54, 0xf4, 0x57, 0xbb, 0xc8, 0x00, 0x73, 0xbc, 0xce, 0xc9, 0x8b, 0xcc, 0xc0, 0x39, 0xd1, 0xd8, 0x83, 0xd9, 0x8f, 0xd2, 0x7c, 0xf0, 0xd6, }; static const unsigned char xdh_wei448_2745_privkey[] = { 0x64, 0xd5, 0x41, 0xc8, 0x9f, 0x4f, 0xf3, 0xa4, 0xbd, 0x30, 0x60, 0x5c, 0xb5, 0x11, 0x1d, 0x4f, 0x1f, 0x1e, 0x0f, 0x44, 0x6d, 0x5f, 0xbd, 0xe9, 0x6b, 0xa7, 0x02, 0x16, 0xe2, 0x94, 0xd3, 0xae, 0x4c, 0x7b, 0x26, 0x6a, 0x48, 0xef, 0x7b, 0x57, 0xdf, 0x36, 0xba, 0x4d, 0x92, 0xb1, 0x3e, 0x2c, 0xd2, 0x47, 0x3e, 0xe5, 0x32, 0xac, 0x1d, 0xa4, }; static const unsigned char xdh_wei448_2745_sharedsecret[] = { 0xfa, 0xcf, 0x34, 0x76, 0xfa, 0x25, 0xef, 0x4c, 0xf5, 0x1f, 0xe1, 0x82, 0xb9, 0xd8, 0xac, 0xb0, 0x76, 0x96, 0xea, 0x11, 0x68, 0xb2, 0xbf, 0x03, 0xf0, 0x75, 0xbb, 0x8c, 0xb8, 0x17, 0xd7, 0x41, 0x72, 0xd0, 0x3d, 0x65, 0xe8, 0xf0, 0xe4, 0xa8, 0xe4, 0xd2, 0x31, 0x9b, 0x95, 0x58, 0x9b, 0xeb, 0xdc, 0x39, 0xa5, 0xb0, 0x8e, 0x66, 0xba, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_2745 = { .name = "xdh_wei448_2745", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2745_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2745_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2745_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2745_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 162 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2746 for XDH, tcId is 163 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2746_peerpubkey[] = { 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_2746_ourpubkey[] = { 0x15, 0xf8, 0x01, 0xb6, 0x69, 0x58, 0x46, 0xe8, 0x37, 0x72, 0x6e, 0xa1, 0x63, 0x46, 0xfe, 0x1e, 0x30, 0x9c, 0x0f, 0x07, 0xac, 0x49, 0x72, 0x83, 0x25, 0x10, 0x28, 0x36, 0x51, 0x00, 0xdf, 0x6c, 0xdb, 0x2f, 0x62, 0x1f, 0xcb, 0x01, 0xd1, 0x20, 0x25, 0xdb, 0x7b, 0x36, 0x0a, 0x1b, 0x4b, 0x5d, 0x57, 0x7a, 0xfa, 0x84, 0x71, 0x43, 0x0f, 0xe0, }; static const unsigned char xdh_wei448_2746_privkey[] = { 0x2c, 0x02, 0x97, 0x47, 0xe1, 0x4c, 0x0e, 0xe0, 0x46, 0x8e, 0xa3, 0x9b, 0xe5, 0x7e, 0xd4, 0xe5, 0xc1, 0x49, 0x35, 0xd2, 0x91, 0xba, 0xcb, 0x81, 0x0f, 0xd0, 0xea, 0x3f, 0x94, 0x2b, 0x72, 0x3b, 0x16, 0x80, 0x6e, 0xc2, 0x5d, 0x2d, 0xa5, 0x82, 0xbd, 0xb8, 0x8b, 0xaa, 0x64, 0x93, 0xb7, 0xe5, 0x77, 0x95, 0xcf, 0xbd, 0xe1, 0x33, 0x7e, 0xb2, }; static const unsigned char xdh_wei448_2746_sharedsecret[] = { 0x95, 0xbd, 0xe3, 0x9b, 0x09, 0x67, 0x02, 0xc0, 0x50, 0x20, 0xfd, 0x7b, 0x02, 0xac, 0x3e, 0x0f, 0xd6, 0xc1, 0xa1, 0x82, 0x98, 0x32, 0x37, 0xc1, 0x5d, 0xc1, 0x65, 0x4b, 0x1a, 0x4f, 0x2f, 0x9b, 0x48, 0x84, 0xdc, 0x7e, 0x78, 0xcc, 0x42, 0x2c, 0x6f, 0x75, 0x9a, 0x43, 0x8f, 0x6d, 0x5c, 0x7e, 0xdd, 0x39, 0x59, 0x18, 0x82, 0x5f, 0xfc, 0x62, }; static const wycheproof_xdh_test xdh_wei448_2746 = { .name = "xdh_wei448_2746", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2746_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2746_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2746_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2746_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 163 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2747 for XDH, tcId is 164 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2747_peerpubkey[] = { 0x78, 0xd7, 0xb6, 0x1d, 0x2c, 0x3e, 0xed, 0xb9, 0x51, 0x53, 0x87, 0xa4, 0xb7, 0x73, 0x33, 0xf2, 0x4e, 0x91, 0x47, 0x93, 0x40, 0x18, 0xa1, 0x50, 0x3f, 0x97, 0x2b, 0x8d, 0xe6, 0xaf, 0x64, 0x07, 0xd2, 0x2f, 0x8b, 0x46, 0x39, 0xd5, 0xfb, 0x86, 0x33, 0x6f, 0x71, 0x84, 0x9f, 0x59, 0xa1, 0xa4, 0xc9, 0xee, 0x38, 0xca, 0x73, 0xe0, 0xae, 0x1a, }; static const unsigned char xdh_wei448_2747_ourpubkey[] = { 0x80, 0xb8, 0x60, 0x09, 0x4b, 0x49, 0xa0, 0x0a, 0x01, 0xf3, 0x22, 0x76, 0x8d, 0xea, 0xe0, 0xf8, 0xf7, 0xae, 0x27, 0xaa, 0x72, 0x16, 0x23, 0x8e, 0x2c, 0x05, 0xa5, 0xbf, 0x19, 0xee, 0x41, 0xba, 0x28, 0xb8, 0x46, 0x62, 0xf7, 0xb5, 0xd5, 0x85, 0x82, 0x86, 0x82, 0x27, 0x78, 0x35, 0x95, 0x51, 0xaf, 0x1d, 0x13, 0x84, 0xf0, 0xcb, 0x60, 0x0d, }; static const unsigned char xdh_wei448_2747_privkey[] = { 0x2c, 0x61, 0x29, 0x39, 0x30, 0x07, 0x54, 0x37, 0x0c, 0xfb, 0xc5, 0x59, 0x40, 0x7f, 0x1d, 0x99, 0x80, 0x56, 0x18, 0xd0, 0xc6, 0x93, 0xb5, 0x3f, 0xfc, 0x6c, 0x72, 0xd3, 0x96, 0xd6, 0x04, 0xcd, 0xba, 0xf4, 0x60, 0x0d, 0xd4, 0xc8, 0x86, 0x9d, 0x24, 0xd5, 0xdb, 0xa9, 0x16, 0x2a, 0x9e, 0x8c, 0xbd, 0xad, 0x85, 0xf4, 0x19, 0x87, 0x33, 0xaa, }; static const unsigned char xdh_wei448_2747_sharedsecret[] = { 0x78, 0xcf, 0x5f, 0x5d, 0x2c, 0x09, 0x8b, 0x57, 0xb2, 0x06, 0xf8, 0x9c, 0x2b, 0x1e, 0x84, 0xbc, 0x61, 0x63, 0xda, 0x1f, 0x78, 0x20, 0x6f, 0xbe, 0x50, 0x32, 0xce, 0x64, 0xca, 0xbf, 0x16, 0x82, 0xf9, 0xfd, 0x7b, 0xdc, 0xd0, 0x99, 0xdb, 0xb0, 0xcd, 0x04, 0xed, 0x1d, 0x8a, 0xe3, 0x32, 0xfd, 0x37, 0x88, 0xed, 0x31, 0xfa, 0xb9, 0xec, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2747 = { .name = "xdh_wei448_2747", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2747_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2747_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2747_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2747_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 164 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2748 for XDH, tcId is 165 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2748_peerpubkey[] = { 0x3f, 0x29, 0x5d, 0x0d, 0x72, 0xd1, 0x5c, 0xcf, 0xa2, 0x8e, 0x3c, 0xc7, 0xca, 0x96, 0xca, 0xcf, 0xa6, 0x48, 0x49, 0x8f, 0xc1, 0x28, 0x99, 0xed, 0xbb, 0x4d, 0xb1, 0x7f, 0x21, 0x03, 0x2e, 0x24, 0x45, 0x62, 0x5b, 0x15, 0x0c, 0xc6, 0x67, 0x5f, 0x98, 0x25, 0xfa, 0xc1, 0xa9, 0x66, 0x36, 0xfe, 0x1a, 0x92, 0xe8, 0xb2, 0xc2, 0xd4, 0xcf, 0x21, }; static const unsigned char xdh_wei448_2748_ourpubkey[] = { 0x53, 0x49, 0xa7, 0x6d, 0x89, 0x8a, 0x6a, 0x4f, 0x93, 0xd7, 0xc9, 0x81, 0x1c, 0x22, 0x84, 0x1d, 0x85, 0x80, 0x42, 0x0f, 0xce, 0x57, 0xa4, 0x9c, 0x86, 0xc2, 0xf3, 0x61, 0x61, 0xd4, 0xc6, 0xf9, 0x0b, 0x20, 0x79, 0x37, 0x06, 0x77, 0xb1, 0x41, 0x94, 0xe3, 0xb4, 0x43, 0xe5, 0xa4, 0xbd, 0x95, 0x4e, 0xde, 0x14, 0x70, 0xc3, 0x79, 0x46, 0xb9, }; static const unsigned char xdh_wei448_2748_privkey[] = { 0x68, 0xfa, 0x79, 0x40, 0x55, 0xc1, 0x7d, 0x38, 0xb1, 0x1a, 0x90, 0x66, 0xa7, 0x5f, 0xdb, 0x3c, 0x2e, 0x3d, 0x01, 0x62, 0x93, 0xea, 0x27, 0x47, 0xe4, 0xe3, 0x56, 0x52, 0xbd, 0xa6, 0x06, 0xcc, 0xac, 0xc2, 0x86, 0x3a, 0xf2, 0x97, 0xcd, 0xc5, 0xc5, 0x87, 0x0c, 0x28, 0x15, 0x64, 0x84, 0xb6, 0xb3, 0xab, 0x2a, 0x72, 0xf8, 0xd9, 0x79, 0x89, }; static const unsigned char xdh_wei448_2748_sharedsecret[] = { 0x89, 0xaf, 0x44, 0xdd, 0xbf, 0x48, 0xea, 0x07, 0xf0, 0x14, 0xff, 0xae, 0x51, 0x7b, 0xcc, 0x3b, 0xab, 0xcc, 0xdb, 0x18, 0x82, 0xd3, 0x43, 0x92, 0x03, 0x4b, 0x3d, 0x57, 0x3d, 0x52, 0x7c, 0x94, 0xdc, 0x57, 0xd6, 0xe0, 0x2d, 0x82, 0x77, 0x43, 0x36, 0x78, 0x91, 0xdc, 0x1a, 0xc7, 0x3a, 0x9a, 0x9e, 0xf5, 0x9d, 0xd0, 0xd0, 0x05, 0xbd, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2748 = { .name = "xdh_wei448_2748", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2748_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2748_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2748_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2748_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 165 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2749 for XDH, tcId is 166 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2749_peerpubkey[] = { 0xc1, 0x16, 0xcb, 0x36, 0x8f, 0xe2, 0x8d, 0x08, 0x58, 0x32, 0x15, 0x11, 0xaf, 0x9f, 0x34, 0xe9, 0x0a, 0x00, 0x91, 0xeb, 0x0a, 0xf5, 0x67, 0xd1, 0xb1, 0xc8, 0xaa, 0x28, 0x04, 0x25, 0xc1, 0xd7, 0x30, 0xc2, 0x13, 0xcd, 0x87, 0x32, 0x42, 0xd1, 0x22, 0xf0, 0x2a, 0xf5, 0x04, 0xbb, 0xac, 0x21, 0x82, 0xd2, 0xf0, 0x13, 0xb5, 0xd6, 0xc3, 0x5e, }; static const unsigned char xdh_wei448_2749_ourpubkey[] = { 0x3a, 0x4e, 0x3d, 0x5f, 0xb4, 0x51, 0xb9, 0x81, 0x92, 0x83, 0xa6, 0x2c, 0x87, 0x20, 0x5a, 0x83, 0x13, 0x04, 0x0f, 0x34, 0x28, 0xf3, 0x0e, 0x56, 0xf2, 0x60, 0x91, 0xcb, 0x01, 0xf6, 0x34, 0x28, 0xbd, 0xd5, 0x9b, 0x8e, 0x71, 0xa6, 0xa2, 0xac, 0x40, 0xd2, 0xdc, 0xb1, 0xe7, 0x72, 0x78, 0xb8, 0x51, 0x37, 0xe3, 0x4d, 0x36, 0xfb, 0x49, 0xd1, }; static const unsigned char xdh_wei448_2749_privkey[] = { 0x50, 0x43, 0x19, 0x86, 0x65, 0x40, 0x69, 0x49, 0x18, 0xc4, 0xcc, 0x84, 0x26, 0x90, 0xe9, 0xf9, 0xf7, 0x60, 0xb8, 0x99, 0x94, 0x38, 0x29, 0xe8, 0xff, 0x35, 0xdf, 0x38, 0x88, 0x88, 0x9f, 0xa5, 0xd4, 0x2f, 0x02, 0x95, 0xe3, 0x6b, 0x55, 0xed, 0xcf, 0xbe, 0x44, 0x82, 0x17, 0xef, 0x06, 0xcc, 0x53, 0xd9, 0xce, 0x86, 0x90, 0x19, 0x14, 0x95, }; static const unsigned char xdh_wei448_2749_sharedsecret[] = { 0xe0, 0x2e, 0xc6, 0x58, 0x03, 0x16, 0x76, 0x8a, 0x41, 0xe6, 0x0e, 0xe2, 0x7b, 0x81, 0xe4, 0x16, 0x4e, 0x11, 0xa2, 0x82, 0x16, 0x06, 0x1e, 0x7e, 0x58, 0x7a, 0x0f, 0x36, 0x85, 0xbc, 0xdf, 0xc2, 0x14, 0xa4, 0x7a, 0x00, 0x50, 0x0e, 0xcc, 0x77, 0xbc, 0xad, 0x70, 0xcc, 0x7d, 0xef, 0x86, 0xdc, 0xb3, 0xc0, 0x3d, 0x6f, 0xab, 0xf3, 0x69, 0xba, }; static const wycheproof_xdh_test xdh_wei448_2749 = { .name = "xdh_wei448_2749", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2749_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2749_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2749_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2749_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 166 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2750 for XDH, tcId is 167 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2750_peerpubkey[] = { 0xa6, 0xfc, 0xf8, 0x1e, 0xe7, 0xb2, 0x33, 0x9e, 0xdb, 0x41, 0x09, 0xb1, 0x08, 0x68, 0x85, 0xdd, 0x7f, 0x3f, 0x6e, 0x3c, 0x34, 0x35, 0xae, 0x1d, 0xb0, 0x8d, 0x5e, 0x1d, 0xdf, 0x6d, 0xc2, 0xc7, 0x81, 0x04, 0xc4, 0x8b, 0x39, 0x41, 0xc9, 0x97, 0xe9, 0x96, 0xa8, 0x86, 0x41, 0x2d, 0xef, 0x9e, 0x4a, 0xd4, 0xb9, 0x00, 0x10, 0xb3, 0x7e, 0x73, }; static const unsigned char xdh_wei448_2750_ourpubkey[] = { 0x28, 0x04, 0xbc, 0xef, 0x0f, 0xb7, 0x85, 0xbc, 0xd3, 0xca, 0xa4, 0x53, 0x2c, 0x5c, 0xa6, 0x81, 0x98, 0xfc, 0x18, 0x52, 0x65, 0x1f, 0x4e, 0xf7, 0x2a, 0x88, 0x51, 0x7f, 0x5a, 0xbf, 0x95, 0x43, 0xeb, 0xce, 0x98, 0xae, 0x12, 0xe6, 0xa9, 0x1e, 0x96, 0x7b, 0xf4, 0x16, 0x29, 0x02, 0x19, 0x26, 0x7f, 0xbf, 0x38, 0xda, 0x13, 0x66, 0x05, 0x7b, }; static const unsigned char xdh_wei448_2750_privkey[] = { 0x48, 0xad, 0x61, 0xa0, 0x59, 0xe9, 0xcd, 0xb4, 0xac, 0x95, 0x84, 0x14, 0xad, 0x14, 0x89, 0x9c, 0x30, 0xe0, 0x5a, 0x00, 0x38, 0xe7, 0xec, 0xf3, 0xda, 0x38, 0xf7, 0x05, 0xe6, 0xf5, 0xd7, 0x73, 0x94, 0x3e, 0xc4, 0xda, 0x47, 0x5d, 0x70, 0x53, 0x23, 0xf7, 0xcc, 0xa4, 0x04, 0x2f, 0x73, 0x1f, 0x0b, 0xc4, 0x03, 0x25, 0x9f, 0x5c, 0x73, 0xa2, }; static const unsigned char xdh_wei448_2750_sharedsecret[] = { 0x9b, 0x47, 0xde, 0xc6, 0x15, 0x7f, 0x57, 0xfc, 0x66, 0x7e, 0x2c, 0x6c, 0xe4, 0x61, 0x7a, 0x28, 0x7f, 0x79, 0xcc, 0x60, 0x41, 0xb2, 0xcb, 0x73, 0xa1, 0x41, 0xf4, 0xd0, 0x4e, 0xe9, 0xc6, 0x3e, 0xd9, 0x41, 0x39, 0x6c, 0x3c, 0xbe, 0xe1, 0x7b, 0x51, 0x99, 0x5b, 0xbf, 0x65, 0xd6, 0xc7, 0x2f, 0x2b, 0xee, 0x8a, 0xbb, 0xc5, 0xec, 0x05, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2750 = { .name = "xdh_wei448_2750", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2750_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2750_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2750_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2750_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 167 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2751 for XDH, tcId is 168 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2751_peerpubkey[] = { 0xf2, 0xce, 0xb7, 0x02, 0x21, 0xeb, 0x2a, 0xaa, 0x4f, 0x9e, 0x75, 0xae, 0x63, 0xd7, 0x34, 0xa5, 0x68, 0xdf, 0x42, 0x65, 0xc3, 0x03, 0xfe, 0x1b, 0x71, 0x51, 0xc3, 0xdf, 0x8f, 0x4d, 0x3a, 0xef, 0x83, 0xed, 0x3d, 0x6f, 0xba, 0xe4, 0xb3, 0x89, 0x91, 0x1b, 0xd5, 0xdf, 0xe9, 0xb2, 0x9b, 0x6e, 0x54, 0x5d, 0xa9, 0x14, 0x50, 0x91, 0xdc, 0x75, }; static const unsigned char xdh_wei448_2751_ourpubkey[] = { 0x21, 0xbd, 0x25, 0xe1, 0x0a, 0x9d, 0x75, 0xd0, 0x61, 0xf3, 0x38, 0xf2, 0x14, 0x0e, 0xe2, 0xe7, 0xd5, 0x28, 0x79, 0x33, 0x7f, 0x38, 0x41, 0x8b, 0x2f, 0xd2, 0x48, 0x58, 0x4c, 0xb2, 0xbd, 0x50, 0xc5, 0xd6, 0x10, 0xf3, 0x3c, 0x9a, 0x3c, 0x4f, 0x82, 0x1f, 0xf6, 0xd9, 0xb2, 0xc0, 0x36, 0xa0, 0x0d, 0x0c, 0x2d, 0xe1, 0x06, 0xea, 0x73, 0x8e, }; static const unsigned char xdh_wei448_2751_privkey[] = { 0x68, 0x03, 0x17, 0x8d, 0xff, 0x23, 0xf5, 0x67, 0xe2, 0x48, 0xe3, 0xd1, 0x2c, 0xce, 0xa4, 0x6c, 0xe5, 0xe3, 0xcd, 0x5d, 0xe0, 0xb5, 0x0b, 0x0e, 0x4a, 0xac, 0xdf, 0x06, 0xe0, 0xea, 0x61, 0xf0, 0xec, 0x83, 0x6e, 0x91, 0x26, 0xd2, 0xed, 0x47, 0xb7, 0xb1, 0x71, 0x78, 0x40, 0x19, 0x40, 0x1b, 0x7a, 0x9f, 0xf2, 0x2d, 0xba, 0x64, 0x78, 0x98, }; static const unsigned char xdh_wei448_2751_sharedsecret[] = { 0xf3, 0x15, 0x67, 0xaa, 0x76, 0xa1, 0xf6, 0x5b, 0xea, 0x08, 0x56, 0x99, 0xb6, 0x86, 0x88, 0x4c, 0xe4, 0x77, 0x76, 0xca, 0x76, 0x65, 0xd0, 0x68, 0xc3, 0x4d, 0x80, 0x07, 0x44, 0x31, 0x3f, 0xb5, 0x6b, 0x8b, 0xac, 0x0f, 0x53, 0x00, 0x81, 0xb2, 0xef, 0x21, 0xa1, 0xc8, 0x9b, 0x76, 0x60, 0x68, 0x94, 0xf1, 0x22, 0xe1, 0x5a, 0x25, 0x82, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_2751 = { .name = "xdh_wei448_2751", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2751_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2751_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2751_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2751_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 168 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2752 for XDH, tcId is 169 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2752_peerpubkey[] = { 0x64, 0x4f, 0xf2, 0xb8, 0x7b, 0x82, 0xd7, 0xc5, 0x98, 0xcc, 0x9f, 0xfe, 0x97, 0xb9, 0x92, 0xff, 0x7c, 0xee, 0x5c, 0x07, 0x51, 0xaa, 0x78, 0x55, 0xa5, 0x84, 0x2a, 0x27, 0x0c, 0x5a, 0x7a, 0x30, 0xf0, 0xde, 0xcd, 0x0e, 0xeb, 0x52, 0x32, 0xc0, 0xd0, 0xca, 0x32, 0xb9, 0xfd, 0x72, 0x64, 0x90, 0xf9, 0x2f, 0x10, 0x6f, 0x3f, 0xb7, 0xcd, 0x7a, }; static const unsigned char xdh_wei448_2752_ourpubkey[] = { 0xe1, 0xa9, 0xe8, 0x0a, 0xa2, 0xcb, 0x97, 0xdd, 0x91, 0x21, 0xab, 0x92, 0x41, 0x3b, 0x31, 0xa8, 0x61, 0xaa, 0x4d, 0x2c, 0xec, 0xf0, 0x02, 0x19, 0x83, 0xe4, 0xd7, 0xb1, 0xcd, 0x0c, 0xf8, 0x6a, 0x08, 0x21, 0x06, 0x1e, 0x58, 0x38, 0xbe, 0x83, 0x97, 0x5a, 0x00, 0x75, 0x21, 0xa7, 0x3f, 0xa6, 0xaf, 0x79, 0xe8, 0x91, 0xa0, 0xd7, 0xae, 0xb8, }; static const unsigned char xdh_wei448_2752_privkey[] = { 0x84, 0x7c, 0x63, 0x55, 0x88, 0x1d, 0x77, 0xf4, 0x01, 0x4a, 0xda, 0x76, 0x03, 0x5f, 0x50, 0xf1, 0x99, 0xef, 0x85, 0x6e, 0x1e, 0x50, 0x90, 0x1f, 0xdd, 0x89, 0x1c, 0x50, 0xbe, 0xf7, 0xed, 0x50, 0x33, 0xb2, 0x21, 0xec, 0x06, 0x92, 0xfa, 0x93, 0xa7, 0xbc, 0x2f, 0xe1, 0x14, 0xc6, 0x2a, 0x4e, 0x15, 0xc0, 0xaf, 0x94, 0x1f, 0xcf, 0xb2, 0xa0, }; static const unsigned char xdh_wei448_2752_sharedsecret[] = { 0xa9, 0xbe, 0x02, 0xb3, 0x12, 0x76, 0xaa, 0x9b, 0x2e, 0xef, 0x26, 0xb9, 0xf2, 0xfa, 0xed, 0xe9, 0xb5, 0xc2, 0x4f, 0xa2, 0xc8, 0x2e, 0xef, 0xec, 0xb2, 0x44, 0xde, 0x0c, 0x81, 0x3d, 0x53, 0x58, 0xdd, 0x32, 0x20, 0x8e, 0x80, 0xba, 0x67, 0x56, 0x37, 0xf3, 0x51, 0xc2, 0x40, 0x9f, 0xf0, 0x07, 0x43, 0x79, 0xbd, 0x69, 0x84, 0xd1, 0xe1, 0x07, }; static const wycheproof_xdh_test xdh_wei448_2752 = { .name = "xdh_wei448_2752", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2752_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2752_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2752_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2752_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 169 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2753 for XDH, tcId is 170 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2753_peerpubkey[] = { 0x40, 0x13, 0xfa, 0x9a, 0x82, 0x76, 0x97, 0x06, 0x90, 0xf3, 0x5f, 0x8f, 0x1d, 0x9d, 0x9d, 0xc8, 0x40, 0x4a, 0x38, 0x3b, 0x00, 0x3e, 0xf8, 0x74, 0x22, 0xb3, 0xab, 0x14, 0x88, 0x08, 0xcd, 0xae, 0xc0, 0xea, 0xb4, 0x70, 0x8b, 0xda, 0x47, 0x1b, 0xdd, 0x92, 0x20, 0xdb, 0x2f, 0x05, 0x8b, 0x07, 0x94, 0xb0, 0x1d, 0x25, 0x32, 0xb1, 0x47, 0xa8, }; static const unsigned char xdh_wei448_2753_ourpubkey[] = { 0x95, 0x1f, 0x07, 0xed, 0x6e, 0x16, 0xf7, 0xab, 0x63, 0x7e, 0x69, 0x43, 0x5c, 0x42, 0xec, 0xab, 0xa7, 0x0b, 0x19, 0x90, 0x7f, 0xec, 0x61, 0xd1, 0x33, 0x11, 0x4d, 0x17, 0xbf, 0x81, 0x6a, 0xae, 0xbf, 0xd3, 0x5a, 0x67, 0x3e, 0xdf, 0x3e, 0x2d, 0x0b, 0x5c, 0x6e, 0x97, 0x5b, 0x1e, 0x06, 0xdd, 0x4c, 0xfe, 0x3a, 0x3f, 0xbd, 0x9e, 0xee, 0x26, }; static const unsigned char xdh_wei448_2753_privkey[] = { 0x48, 0x76, 0x84, 0x64, 0x18, 0x15, 0xfc, 0x73, 0x92, 0x53, 0x2b, 0x3b, 0xcf, 0x99, 0xc9, 0xc3, 0x1d, 0x69, 0xdd, 0x35, 0x76, 0xe5, 0x28, 0xf1, 0x92, 0xe7, 0x5a, 0x55, 0xe4, 0x6d, 0xe3, 0x9f, 0xaa, 0x87, 0xef, 0xfb, 0x37, 0x6d, 0x80, 0x6e, 0x10, 0x39, 0xe2, 0xfe, 0xe5, 0x3d, 0x12, 0xd4, 0x77, 0xe3, 0x18, 0xb9, 0x68, 0xdd, 0x3d, 0x86, }; static const unsigned char xdh_wei448_2753_sharedsecret[] = { 0x66, 0x3f, 0x60, 0x9b, 0x2c, 0x06, 0x9a, 0x71, 0x3e, 0xcf, 0x99, 0x1d, 0x73, 0x63, 0x1b, 0x14, 0x59, 0xeb, 0x3d, 0x3b, 0x8f, 0xe3, 0x98, 0xd9, 0x11, 0xfd, 0x91, 0xaa, 0xe2, 0x6f, 0x98, 0x62, 0x59, 0x65, 0x9d, 0xdc, 0x9a, 0x2c, 0x4a, 0xc7, 0xce, 0x62, 0x64, 0x55, 0x05, 0x6b, 0xcb, 0xe3, 0xb4, 0x06, 0xf7, 0x5f, 0xee, 0x5f, 0xb1, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2753 = { .name = "xdh_wei448_2753", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2753_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2753_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2753_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2753_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 170 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2754 for XDH, tcId is 171 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2754_peerpubkey[] = { 0xe6, 0xc5, 0x5c, 0x8e, 0xd5, 0xc8, 0xa3, 0x79, 0x85, 0xec, 0x78, 0xcd, 0x92, 0x35, 0x9c, 0x45, 0xf3, 0x35, 0x23, 0x2a, 0x6e, 0xff, 0xed, 0xe4, 0xf8, 0x30, 0xfe, 0x36, 0x83, 0xed, 0x53, 0x19, 0x7d, 0x06, 0xf2, 0x39, 0x50, 0xfd, 0x89, 0x9d, 0x1e, 0x33, 0x3b, 0xe7, 0x32, 0x2e, 0x6f, 0xc3, 0xa8, 0x30, 0x99, 0xa1, 0x1a, 0xb7, 0x3b, 0xc2, }; static const unsigned char xdh_wei448_2754_ourpubkey[] = { 0x09, 0x85, 0x9c, 0xb0, 0x34, 0xdd, 0x94, 0xa5, 0x57, 0xfe, 0x6e, 0x5a, 0xbd, 0xf1, 0x7e, 0x3f, 0x51, 0x1a, 0x48, 0x9a, 0x04, 0xe6, 0x48, 0x25, 0xa3, 0x3d, 0x69, 0xae, 0xb3, 0x80, 0xcc, 0x6b, 0x03, 0x55, 0xe9, 0xd2, 0xba, 0x1a, 0xc0, 0xc5, 0xf4, 0x25, 0x20, 0x00, 0xde, 0x15, 0xe1, 0x3a, 0x6b, 0xa1, 0x22, 0x1e, 0x39, 0x2c, 0xa4, 0x06, }; static const unsigned char xdh_wei448_2754_privkey[] = { 0x50, 0x30, 0xe6, 0x31, 0xfd, 0xbc, 0x43, 0xd5, 0xd6, 0xdc, 0x87, 0x9d, 0xb9, 0x43, 0x5f, 0xeb, 0x09, 0x92, 0x38, 0x80, 0x4f, 0x2f, 0xe3, 0x3c, 0x6d, 0x81, 0x35, 0x12, 0x4f, 0xc2, 0xd5, 0x09, 0x50, 0x26, 0x7b, 0xa2, 0x17, 0x95, 0xe1, 0x83, 0xb3, 0xea, 0x83, 0x40, 0xdd, 0x27, 0xf9, 0xbc, 0x3b, 0x14, 0x26, 0x6a, 0xc0, 0x38, 0x57, 0xb5, }; static const unsigned char xdh_wei448_2754_sharedsecret[] = { 0x47, 0x47, 0x7f, 0x47, 0x34, 0x4f, 0xac, 0xd4, 0x57, 0xf5, 0x41, 0xb0, 0x02, 0xcd, 0xaf, 0x3e, 0x09, 0x5c, 0x01, 0x88, 0x15, 0xba, 0x3f, 0x72, 0x54, 0xc3, 0x4f, 0x08, 0x77, 0x02, 0x50, 0xf3, 0x60, 0x26, 0x6d, 0xcb, 0x40, 0x65, 0x76, 0xc9, 0x58, 0x07, 0xdb, 0x79, 0x71, 0x26, 0x58, 0x7e, 0x8a, 0x8a, 0x2a, 0xfd, 0x28, 0x42, 0x89, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2754 = { .name = "xdh_wei448_2754", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2754_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2754_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2754_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2754_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 171 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2755 for XDH, tcId is 172 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2755_peerpubkey[] = { 0xb2, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_2755_ourpubkey[] = { 0xd2, 0xe0, 0xda, 0x18, 0x1c, 0x5b, 0x45, 0x8b, 0x68, 0x77, 0x75, 0x54, 0x13, 0x8b, 0xab, 0x25, 0x62, 0x09, 0xec, 0x04, 0x20, 0xf6, 0x88, 0x05, 0x08, 0xe1, 0x3e, 0x50, 0xfe, 0x43, 0x01, 0xff, 0x23, 0x09, 0x87, 0xb2, 0xa5, 0xc2, 0x28, 0x46, 0xdf, 0xe3, 0x6f, 0x9c, 0x7f, 0x06, 0xad, 0xcb, 0x40, 0x80, 0x68, 0xeb, 0xa6, 0x56, 0x8f, 0xdc, }; static const unsigned char xdh_wei448_2755_privkey[] = { 0x50, 0x89, 0x93, 0xff, 0x7d, 0xd3, 0x6a, 0x79, 0x51, 0x1d, 0x93, 0x20, 0x9e, 0x4e, 0xaf, 0x50, 0xe0, 0x8c, 0x46, 0x0a, 0xad, 0x5c, 0xdc, 0xfa, 0xab, 0x85, 0x4d, 0x5e, 0x85, 0x75, 0x39, 0x36, 0x53, 0xa7, 0x4c, 0x94, 0xe7, 0xd0, 0x94, 0xbb, 0x59, 0xa7, 0xb9, 0x85, 0x08, 0x74, 0x7d, 0x90, 0x07, 0x5e, 0x5b, 0xc4, 0xbc, 0x13, 0xe6, 0x91, }; static const unsigned char xdh_wei448_2755_sharedsecret[] = { 0xb6, 0x73, 0xdf, 0x07, 0x42, 0x0a, 0xc1, 0xb5, 0xfa, 0x11, 0x20, 0xa1, 0x7d, 0x89, 0x04, 0x6c, 0xdd, 0xca, 0xa0, 0xb2, 0x34, 0xa1, 0xf8, 0x64, 0xd1, 0xfc, 0x17, 0xa2, 0xd5, 0xe7, 0x71, 0xbb, 0x25, 0x0f, 0x0d, 0xc3, 0x87, 0xf3, 0x35, 0x7c, 0x38, 0x09, 0x8a, 0x42, 0x70, 0xee, 0xd6, 0x4e, 0x7b, 0x10, 0x65, 0x13, 0x6a, 0xb8, 0x58, 0x83, }; static const wycheproof_xdh_test xdh_wei448_2755 = { .name = "xdh_wei448_2755", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2755_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2755_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2755_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2755_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 172 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2756 for XDH, tcId is 173 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2756_peerpubkey[] = { 0x4c, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_2756_ourpubkey[] = { 0xbe, 0x87, 0x8d, 0xef, 0xbd, 0xdb, 0xf5, 0x8b, 0x88, 0x18, 0x1e, 0xd7, 0xc6, 0xf2, 0x1f, 0xa2, 0x54, 0x5e, 0x2e, 0x74, 0x9b, 0x89, 0x03, 0x90, 0x3a, 0xd3, 0x35, 0x14, 0xf3, 0xb1, 0xf1, 0x50, 0x42, 0xa3, 0x8c, 0xab, 0xb7, 0xb2, 0x78, 0x96, 0x3b, 0xfe, 0x2a, 0x6b, 0x61, 0x6b, 0xf5, 0x3d, 0x63, 0x86, 0xb2, 0xbd, 0x2b, 0x1e, 0x58, 0x7f, }; static const unsigned char xdh_wei448_2756_privkey[] = { 0x54, 0x0d, 0x8d, 0x0d, 0x08, 0x30, 0x02, 0x1e, 0x4e, 0xab, 0x07, 0x8a, 0xe2, 0x1b, 0x6c, 0x9e, 0x67, 0xfa, 0x75, 0xe4, 0xbe, 0x5e, 0x95, 0x29, 0x2b, 0xb0, 0x2d, 0x66, 0xe5, 0x79, 0xfd, 0xb5, 0x88, 0xfc, 0x26, 0x67, 0x41, 0x68, 0x6d, 0x58, 0x71, 0x9d, 0x7b, 0xc8, 0xdf, 0x61, 0x94, 0xaa, 0x6e, 0xa8, 0xf8, 0x1e, 0x5c, 0xaa, 0x67, 0xbc, }; static const unsigned char xdh_wei448_2756_sharedsecret[] = { 0x5a, 0xd0, 0x6c, 0x3b, 0x27, 0x76, 0xba, 0x9c, 0x8f, 0x9f, 0xce, 0xd3, 0xa9, 0xdc, 0xb2, 0x67, 0x11, 0x23, 0x54, 0x74, 0x44, 0x7d, 0x4a, 0x06, 0xab, 0xb4, 0x3a, 0x40, 0xc3, 0xea, 0x7f, 0x94, 0x9a, 0x63, 0xe5, 0x49, 0x16, 0x8a, 0x25, 0x1c, 0x4e, 0xd4, 0x88, 0x3b, 0xa0, 0xd3, 0x6c, 0x7a, 0xaf, 0xd0, 0x93, 0x8d, 0x4a, 0x92, 0xa9, 0x67, }; static const wycheproof_xdh_test xdh_wei448_2756 = { .name = "xdh_wei448_2756", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2756_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2756_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2756_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2756_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 173 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2757 for XDH, tcId is 174 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2757_peerpubkey[] = { 0xb3, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_2757_ourpubkey[] = { 0xa3, 0x46, 0xf7, 0xdc, 0x8c, 0xcb, 0xd2, 0x1e, 0x29, 0x86, 0xc2, 0xae, 0x90, 0x26, 0xab, 0x8d, 0xf6, 0x93, 0x65, 0x49, 0xb3, 0xf1, 0x7f, 0x39, 0x9d, 0x2b, 0x2c, 0x44, 0x88, 0xad, 0x64, 0xf1, 0xcc, 0xe5, 0xdf, 0x87, 0x73, 0xe0, 0xf8, 0x1b, 0x47, 0x7f, 0x3a, 0xdb, 0x3d, 0x25, 0x64, 0xbe, 0x8d, 0x6e, 0x0e, 0x51, 0x39, 0x50, 0xaf, 0x2a, }; static const unsigned char xdh_wei448_2757_privkey[] = { 0x28, 0x6c, 0xb4, 0xa0, 0x6a, 0x64, 0xe8, 0x50, 0x85, 0x0b, 0x37, 0x1c, 0xeb, 0x5c, 0x54, 0xfe, 0x71, 0xb1, 0x7c, 0xd0, 0x77, 0x2e, 0x40, 0x78, 0xb0, 0x20, 0x30, 0x66, 0x23, 0x1b, 0xad, 0x70, 0x0c, 0x79, 0x8a, 0xb0, 0xd9, 0x23, 0x62, 0x44, 0x91, 0x0c, 0xd2, 0x3d, 0xb5, 0x8c, 0xb6, 0x52, 0xc8, 0xfa, 0x58, 0x00, 0x95, 0x39, 0x78, 0x9d, }; static const unsigned char xdh_wei448_2757_sharedsecret[] = { 0x3c, 0x1e, 0x26, 0x78, 0x59, 0x0f, 0x9c, 0x5b, 0xc1, 0x24, 0xd6, 0xbb, 0xdd, 0x45, 0xca, 0xc5, 0xde, 0xa3, 0xdc, 0xb2, 0xb4, 0x5a, 0x1f, 0x2a, 0x9e, 0xd2, 0xfd, 0x02, 0x39, 0xd4, 0x89, 0x48, 0x48, 0x97, 0x55, 0x71, 0xc5, 0x23, 0x12, 0x1d, 0xb7, 0xc6, 0x75, 0x69, 0x25, 0xdd, 0xb1, 0x1d, 0x47, 0x9c, 0x89, 0xbe, 0x7c, 0x6a, 0x24, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_2757 = { .name = "xdh_wei448_2757", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2757_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2757_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2757_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2757_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 174 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2758 for XDH, tcId is 175 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2758_peerpubkey[] = { 0x4d, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_2758_ourpubkey[] = { 0xee, 0xd0, 0x77, 0x58, 0x6d, 0x2d, 0x61, 0x4f, 0x7a, 0x8a, 0x2f, 0x6b, 0x0c, 0x33, 0xae, 0xff, 0x94, 0x4b, 0x75, 0xf2, 0x97, 0x23, 0x48, 0xc8, 0x0a, 0x24, 0x06, 0x31, 0x8d, 0x50, 0xf6, 0x9a, 0xf6, 0xe5, 0xa5, 0x1c, 0x55, 0xd8, 0x7c, 0x12, 0x38, 0x9f, 0xb4, 0xab, 0x1a, 0xf4, 0xa2, 0x01, 0x14, 0x12, 0x56, 0x08, 0x61, 0xab, 0x65, 0x36, }; static const unsigned char xdh_wei448_2758_privkey[] = { 0xac, 0x04, 0x50, 0x17, 0xf8, 0x6a, 0xda, 0x85, 0xb3, 0x4f, 0x4f, 0x3e, 0x30, 0x7f, 0xd1, 0xb8, 0x30, 0x49, 0x4c, 0xe7, 0xed, 0xb9, 0x11, 0x56, 0xd2, 0x82, 0xbd, 0xff, 0x17, 0x2a, 0x5a, 0x0a, 0x9b, 0x07, 0x50, 0xf5, 0xbf, 0x35, 0x29, 0x5f, 0x1e, 0x2d, 0xe9, 0x08, 0xa0, 0xf1, 0xdb, 0x31, 0x99, 0x2d, 0xb6, 0xe6, 0xbd, 0xb9, 0xab, 0x93, }; static const unsigned char xdh_wei448_2758_sharedsecret[] = { 0x21, 0x9b, 0xd2, 0x7b, 0x3a, 0x7d, 0xe0, 0x97, 0x9e, 0xca, 0xe9, 0x0c, 0x42, 0xbf, 0x49, 0x3b, 0x76, 0x6e, 0xe1, 0x62, 0xa1, 0x04, 0x56, 0xa1, 0x8d, 0xdc, 0x1a, 0x90, 0x10, 0x65, 0x10, 0x70, 0x52, 0xcc, 0x60, 0xbc, 0xb3, 0xbf, 0x43, 0xa0, 0x31, 0x3d, 0x2a, 0xdb, 0xaa, 0x60, 0x06, 0x32, 0x3a, 0x98, 0x6b, 0x0b, 0xad, 0x79, 0xc7, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_2758 = { .name = "xdh_wei448_2758", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2758_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2758_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2758_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2758_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 175 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2759 for XDH, tcId is 176 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2759_peerpubkey[] = { 0x77, 0x8e, 0x69, 0x65, 0x59, 0x41, 0x2a, 0x31, 0x70, 0x6d, 0x3d, 0x66, 0x89, 0xfe, 0x56, 0xc6, 0x59, 0x80, 0x50, 0x6f, 0x61, 0xc3, 0xaf, 0x47, 0xfc, 0x95, 0x34, 0x09, 0xd7, 0xa3, 0xe2, 0x71, 0x40, 0xf1, 0xff, 0x0d, 0x3b, 0x78, 0xfd, 0xd9, 0x68, 0xe2, 0xc7, 0x8d, 0xdb, 0xc9, 0x73, 0x39, 0x23, 0x91, 0xd7, 0xf3, 0xf2, 0x79, 0x4c, 0x2b, }; static const unsigned char xdh_wei448_2759_ourpubkey[] = { 0x7e, 0x2c, 0x1b, 0xaf, 0x6f, 0xfa, 0xb7, 0x4d, 0x5e, 0xde, 0x40, 0x54, 0x7a, 0xfd, 0x35, 0xdc, 0xde, 0x4e, 0x06, 0xd9, 0xe4, 0x70, 0x96, 0x50, 0x3b, 0x9c, 0x41, 0x07, 0xa8, 0xac, 0xf0, 0xfd, 0x7d, 0xe7, 0x28, 0x94, 0xc3, 0xff, 0x76, 0x89, 0xcb, 0xc2, 0x03, 0x5d, 0x97, 0x1b, 0x30, 0x6e, 0x18, 0xe5, 0x73, 0x12, 0xc6, 0x5e, 0x52, 0xdf, }; static const unsigned char xdh_wei448_2759_privkey[] = { 0x58, 0x46, 0xfe, 0x5d, 0x68, 0x10, 0x30, 0x2d, 0x59, 0x26, 0x11, 0x1b, 0xd0, 0x14, 0x64, 0x02, 0xb2, 0xe4, 0x99, 0x00, 0x55, 0x05, 0x48, 0xc7, 0xfc, 0x64, 0xdf, 0x74, 0xf1, 0xa7, 0xed, 0x88, 0x5b, 0x34, 0x35, 0x87, 0xb6, 0x1e, 0x7c, 0x0f, 0x24, 0xbb, 0x0b, 0x7a, 0xcf, 0x3d, 0x50, 0xe8, 0xc4, 0xb6, 0x81, 0x12, 0x48, 0xba, 0x19, 0xa6, }; static const unsigned char xdh_wei448_2759_sharedsecret[] = { 0xce, 0xd0, 0x69, 0x51, 0x59, 0x28, 0x92, 0xa8, 0xfc, 0xb5, 0xae, 0x62, 0xac, 0xef, 0x4e, 0xfa, 0x70, 0xba, 0xa0, 0x04, 0x85, 0xc8, 0x23, 0xf9, 0x69, 0x75, 0x94, 0xfe, 0xee, 0x5a, 0xdf, 0x2e, 0xf9, 0xa7, 0x06, 0x71, 0xac, 0x34, 0x1a, 0x95, 0x8a, 0x06, 0x1e, 0x58, 0xf2, 0xff, 0x8a, 0x1c, 0xe7, 0x4b, 0x29, 0xf4, 0x2c, 0xf2, 0x43, 0x79, }; static const wycheproof_xdh_test xdh_wei448_2759 = { .name = "xdh_wei448_2759", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2759_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2759_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2759_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2759_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 176 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2760 for XDH, tcId is 177 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2760_peerpubkey[] = { 0xfa, 0xf7, 0xdd, 0x10, 0xbc, 0xc8, 0xd4, 0xd3, 0x78, 0xa6, 0x23, 0x00, 0x55, 0x50, 0x0b, 0x4f, 0x87, 0xbb, 0x99, 0x94, 0xac, 0xe5, 0x4e, 0x44, 0xaf, 0xcf, 0xfa, 0x83, 0x6c, 0x0d, 0x0c, 0xee, 0x94, 0xc1, 0x63, 0x7c, 0x3e, 0xcb, 0x01, 0x5a, 0xb1, 0x0f, 0x1e, 0x17, 0xcb, 0x11, 0xc1, 0x82, 0x4d, 0x2b, 0x7d, 0x7e, 0x32, 0x99, 0x3b, 0x2c, }; static const unsigned char xdh_wei448_2760_ourpubkey[] = { 0xb4, 0x71, 0xe0, 0xab, 0xc6, 0x3f, 0x8a, 0x9d, 0x1d, 0x40, 0x76, 0xd8, 0x03, 0xfe, 0x62, 0x52, 0x62, 0xef, 0x1c, 0x9b, 0x66, 0xb6, 0x4f, 0xc3, 0xec, 0x22, 0x1b, 0x1f, 0x13, 0x12, 0xf4, 0xd9, 0x2b, 0x39, 0x43, 0x9e, 0xaa, 0xb0, 0x8d, 0x81, 0xc9, 0x8d, 0x05, 0xbb, 0xb7, 0xc7, 0x2a, 0x8d, 0x88, 0x52, 0xf6, 0xf0, 0x3d, 0xf8, 0x3e, 0x99, }; static const unsigned char xdh_wei448_2760_privkey[] = { 0x1c, 0x3c, 0x44, 0xc6, 0x2c, 0x73, 0xb7, 0xa4, 0x5e, 0x3f, 0x03, 0x15, 0xee, 0x27, 0x43, 0x77, 0xf7, 0xb5, 0xde, 0x3e, 0xd5, 0x2e, 0x9b, 0x0f, 0x26, 0xb0, 0x24, 0xff, 0x54, 0x09, 0x41, 0xde, 0x85, 0xca, 0x07, 0xed, 0x48, 0xcc, 0xd4, 0xd1, 0x9c, 0x3f, 0x7c, 0xf9, 0x90, 0x1f, 0x82, 0x80, 0x04, 0x5c, 0x3b, 0x1e, 0x79, 0x6b, 0xd9, 0xaa, }; static const unsigned char xdh_wei448_2760_sharedsecret[] = { 0xcd, 0xff, 0x5f, 0x86, 0x09, 0x7e, 0x9d, 0x8a, 0x96, 0xe8, 0xfe, 0x6e, 0x4a, 0x2e, 0x95, 0xc2, 0xae, 0x2c, 0x70, 0xae, 0x8f, 0x1d, 0xa1, 0x70, 0x33, 0x0f, 0xe7, 0x01, 0x2e, 0xf6, 0x39, 0x54, 0x86, 0x08, 0xd0, 0x1e, 0xb8, 0xf1, 0x28, 0xd8, 0x91, 0xa7, 0x28, 0xd3, 0x9d, 0x22, 0x1a, 0xe8, 0xa3, 0x78, 0xc2, 0xf7, 0x8a, 0xc3, 0x81, 0x4f, }; static const wycheproof_xdh_test xdh_wei448_2760 = { .name = "xdh_wei448_2760", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2760_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2760_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2760_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2760_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 177 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2761 for XDH, tcId is 178 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2761_peerpubkey[] = { 0x17, 0x25, 0x92, 0x91, 0x21, 0x66, 0x3a, 0x42, 0x51, 0x36, 0x7b, 0x83, 0x90, 0xae, 0x13, 0x57, 0x8b, 0x8b, 0x51, 0x50, 0x48, 0x8c, 0x1d, 0x6f, 0x04, 0x27, 0x03, 0xea, 0x32, 0xbc, 0xca, 0xa0, 0x95, 0x6b, 0xeb, 0x67, 0x7b, 0x60, 0x12, 0x3c, 0x5e, 0xdc, 0x84, 0x4c, 0x4e, 0xbc, 0x6a, 0x02, 0xa8, 0x48, 0xbf, 0x8e, 0xb4, 0x5e, 0xcc, 0x3b, }; static const unsigned char xdh_wei448_2761_ourpubkey[] = { 0xad, 0xc4, 0x09, 0x49, 0xa8, 0xd1, 0xf9, 0x34, 0x49, 0xcd, 0x58, 0x86, 0x50, 0xc1, 0x30, 0xb5, 0x12, 0x60, 0x71, 0x80, 0x5b, 0x11, 0xe4, 0x0a, 0x45, 0xe0, 0xeb, 0x4c, 0x68, 0x84, 0x65, 0x35, 0x03, 0x95, 0x7c, 0x99, 0xf6, 0xa1, 0x01, 0xda, 0xc5, 0x07, 0x77, 0xa8, 0x99, 0xd8, 0xb5, 0xf0, 0xd1, 0xb5, 0x64, 0x6e, 0xbf, 0xb5, 0xa1, 0x74, }; static const unsigned char xdh_wei448_2761_privkey[] = { 0x98, 0xe1, 0x49, 0x0a, 0xbf, 0x47, 0x97, 0x36, 0xea, 0x94, 0x54, 0x8b, 0x3b, 0x67, 0x26, 0x5d, 0x99, 0x24, 0xd4, 0xac, 0x34, 0xb5, 0xec, 0xb3, 0xf5, 0xfc, 0xe5, 0xe8, 0x06, 0xca, 0xe3, 0x6f, 0x2c, 0x37, 0x8a, 0x10, 0x35, 0x65, 0xb0, 0x9e, 0x45, 0x34, 0x1b, 0xec, 0x4c, 0x0b, 0x64, 0xc9, 0x3c, 0x50, 0x7e, 0xf5, 0x4b, 0xf2, 0x86, 0xbf, }; static const unsigned char xdh_wei448_2761_sharedsecret[] = { 0x4f, 0x84, 0x58, 0x17, 0x8f, 0x9a, 0xaa, 0x90, 0xd8, 0xf0, 0xdc, 0xb5, 0x7a, 0xa2, 0x8b, 0x0f, 0xa4, 0xe0, 0x43, 0x50, 0xb3, 0x1e, 0x62, 0x74, 0xcf, 0x94, 0x68, 0x64, 0xb9, 0x78, 0x80, 0x5f, 0xca, 0x4d, 0x4c, 0x81, 0xdd, 0xb6, 0xd3, 0x2f, 0x6a, 0x05, 0xe2, 0x4f, 0xbf, 0xd5, 0x21, 0xfc, 0x43, 0xe8, 0x48, 0x17, 0x9b, 0x18, 0x78, 0xa9, }; static const wycheproof_xdh_test xdh_wei448_2761 = { .name = "xdh_wei448_2761", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2761_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2761_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2761_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2761_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 178 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2762 for XDH, tcId is 179 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2762_peerpubkey[] = { 0xcb, 0x0b, 0x2a, 0xbd, 0x19, 0x4e, 0xb1, 0xbe, 0x14, 0xd4, 0x17, 0xd5, 0xc8, 0x23, 0xa1, 0x51, 0x54, 0xcb, 0x61, 0x5a, 0x30, 0x3e, 0x25, 0xe6, 0x47, 0x4b, 0xfd, 0x56, 0x32, 0x3a, 0x38, 0xf7, 0x88, 0x2f, 0xbc, 0xd7, 0xbc, 0x14, 0x8a, 0xdf, 0xd7, 0x0f, 0xc1, 0x8c, 0x96, 0xa2, 0x95, 0x69, 0xa1, 0x0a, 0xd1, 0xae, 0xea, 0x67, 0x74, 0x4c, }; static const unsigned char xdh_wei448_2762_ourpubkey[] = { 0xce, 0x18, 0x60, 0xb8, 0x4c, 0xba, 0x9a, 0xed, 0x4d, 0x75, 0x63, 0x25, 0x0e, 0x5f, 0x75, 0xf5, 0xee, 0x3a, 0xec, 0xb5, 0x22, 0x97, 0xea, 0x24, 0xa3, 0xcf, 0xd2, 0x8f, 0x0f, 0xcc, 0xd7, 0x9e, 0xbf, 0x0c, 0x07, 0x72, 0x7d, 0x4e, 0x7d, 0x75, 0x0d, 0x6e, 0xc8, 0x33, 0x90, 0x5b, 0xe2, 0xdd, 0xd6, 0x16, 0x37, 0xe9, 0xc5, 0xfd, 0x5f, 0xeb, }; static const unsigned char xdh_wei448_2762_privkey[] = { 0xb4, 0xc2, 0xee, 0xc4, 0x6e, 0xae, 0xaa, 0x28, 0x63, 0x6a, 0x44, 0xb0, 0x54, 0x21, 0xf4, 0xe1, 0x7d, 0x06, 0x4b, 0xe0, 0xb9, 0xbe, 0x23, 0x22, 0x6e, 0x4f, 0x3c, 0x17, 0x33, 0xf1, 0xd5, 0x3b, 0x35, 0x72, 0x15, 0xdd, 0x84, 0xf4, 0x12, 0x16, 0xa0, 0x98, 0x5a, 0x9d, 0x47, 0x88, 0x34, 0xf8, 0x5a, 0x92, 0xf6, 0x80, 0x8b, 0x10, 0x97, 0xa9, }; static const unsigned char xdh_wei448_2762_sharedsecret[] = { 0xa6, 0x28, 0x6b, 0xb1, 0xba, 0xf9, 0xa0, 0x39, 0xc5, 0x51, 0x80, 0x8f, 0x6a, 0xe2, 0x54, 0x06, 0x84, 0xeb, 0x62, 0x5e, 0x5e, 0x22, 0xec, 0x09, 0x6f, 0xd1, 0x12, 0xb5, 0x2a, 0xe5, 0xe1, 0x03, 0x99, 0x61, 0x8d, 0x84, 0x76, 0x35, 0x28, 0x7f, 0xaf, 0xa4, 0xe3, 0x1d, 0xb4, 0xa6, 0x6f, 0x0c, 0x11, 0x61, 0xfe, 0x6f, 0xfe, 0x1f, 0xbd, 0xce, }; static const wycheproof_xdh_test xdh_wei448_2762 = { .name = "xdh_wei448_2762", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2762_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2762_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2762_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2762_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 179 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2763 for XDH, tcId is 180 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2763_peerpubkey[] = { 0x6c, 0x13, 0x1e, 0x6c, 0x22, 0x5f, 0x3c, 0x7c, 0xd0, 0xcb, 0x44, 0xce, 0xad, 0x0f, 0x45, 0xb5, 0x69, 0x88, 0xf7, 0x9f, 0xa1, 0xaf, 0x96, 0x6b, 0xbf, 0x56, 0x74, 0x00, 0xd7, 0x70, 0x2d, 0x05, 0xa6, 0xfb, 0x1f, 0xab, 0xde, 0xc1, 0x9f, 0x81, 0xc0, 0x77, 0xbd, 0xf8, 0xd9, 0x4f, 0x4b, 0x10, 0x51, 0x9e, 0xca, 0xa6, 0x3e, 0xc2, 0x62, 0x66, }; static const unsigned char xdh_wei448_2763_ourpubkey[] = { 0x90, 0x09, 0xd8, 0x48, 0x33, 0x92, 0x85, 0x25, 0x5d, 0xcb, 0x0b, 0xcd, 0x00, 0x9c, 0x36, 0xb5, 0x0c, 0xfa, 0x1a, 0x89, 0xfe, 0x65, 0x9d, 0x98, 0x70, 0x17, 0x2d, 0x83, 0xf1, 0xcf, 0x3a, 0x2a, 0x13, 0xdf, 0x0d, 0xef, 0x2a, 0x64, 0x01, 0xa8, 0x8a, 0xfb, 0xc7, 0x3a, 0xce, 0x0f, 0xa0, 0x88, 0x08, 0x91, 0xcd, 0x84, 0x2f, 0x3e, 0x66, 0x88, }; static const unsigned char xdh_wei448_2763_privkey[] = { 0xe8, 0x37, 0x52, 0x97, 0x8a, 0xb8, 0x67, 0xb6, 0x9d, 0x9c, 0xc6, 0x85, 0x23, 0x66, 0xa7, 0xbe, 0x18, 0x4d, 0x16, 0x0f, 0x50, 0xee, 0x2e, 0x93, 0x25, 0x02, 0x16, 0xd2, 0x42, 0x33, 0xab, 0x3c, 0x11, 0x2b, 0x20, 0xd3, 0x05, 0xcf, 0x42, 0x2b, 0xf4, 0xab, 0x1b, 0xdc, 0xb5, 0x7b, 0x14, 0xd6, 0xe1, 0x7b, 0xdf, 0x3b, 0xce, 0x4f, 0xf1, 0x93, }; static const unsigned char xdh_wei448_2763_sharedsecret[] = { 0xfc, 0xd6, 0xb6, 0xe4, 0x41, 0x05, 0xb4, 0xa7, 0x7b, 0xa9, 0xeb, 0xc5, 0x59, 0x63, 0xa3, 0x4e, 0x38, 0x4f, 0x8b, 0x8c, 0x65, 0xae, 0xcb, 0x8e, 0x12, 0x9d, 0x0c, 0x5c, 0x0c, 0x4a, 0xc3, 0x59, 0xbe, 0x9e, 0xa4, 0x9e, 0x61, 0x78, 0x14, 0x73, 0x61, 0xe5, 0xd3, 0x37, 0x2c, 0x13, 0xbf, 0x56, 0x6f, 0xc0, 0x1d, 0xfb, 0xcc, 0x09, 0x0e, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_2763 = { .name = "xdh_wei448_2763", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2763_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2763_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2763_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2763_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 180 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2764 for XDH, tcId is 181 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2764_peerpubkey[] = { 0x39, 0xd9, 0x0d, 0xf6, 0xb5, 0xc6, 0x94, 0x17, 0x16, 0x72, 0x9d, 0xa1, 0x37, 0xf5, 0x8e, 0xd6, 0x86, 0x82, 0xfe, 0xfc, 0xc9, 0x64, 0x14, 0x7b, 0xcb, 0x27, 0x55, 0x1e, 0x1d, 0x1e, 0xd8, 0xb5, 0xe0, 0xbb, 0xba, 0x21, 0x71, 0xa4, 0xa1, 0x20, 0xb0, 0xc8, 0xf5, 0x54, 0xf0, 0x65, 0x9d, 0x4d, 0x81, 0xaa, 0x64, 0xa3, 0xf8, 0x45, 0x86, 0xd5, }; static const unsigned char xdh_wei448_2764_ourpubkey[] = { 0x53, 0xae, 0x7a, 0x0a, 0x19, 0xbb, 0x1e, 0x1b, 0xa4, 0x74, 0x26, 0xa6, 0xfe, 0x75, 0x0e, 0x35, 0xee, 0x39, 0xda, 0x32, 0x28, 0x12, 0x33, 0x9b, 0x99, 0x47, 0x3f, 0xa8, 0xaf, 0x81, 0xa1, 0x82, 0x14, 0x17, 0xf6, 0x1e, 0x79, 0xb3, 0x45, 0xfa, 0xdd, 0x44, 0xb4, 0x7d, 0x5e, 0x18, 0x50, 0x7a, 0xe7, 0x3b, 0xe2, 0xb2, 0xe7, 0xf7, 0xe3, 0x4d, }; static const unsigned char xdh_wei448_2764_privkey[] = { 0x74, 0xca, 0xbe, 0xa8, 0x82, 0xcd, 0x95, 0x59, 0x4f, 0x57, 0xd5, 0x14, 0x49, 0x02, 0x34, 0x4d, 0xd2, 0xb3, 0xad, 0xb0, 0x45, 0xe5, 0xa6, 0xe2, 0x70, 0xa4, 0x93, 0x72, 0xf0, 0x59, 0x22, 0xc4, 0x5f, 0xa5, 0x00, 0xed, 0x1d, 0x7a, 0x4d, 0x9f, 0xff, 0x58, 0x48, 0x8b, 0x26, 0x55, 0x49, 0x61, 0xef, 0xcb, 0xeb, 0xc6, 0xfa, 0x2b, 0xa8, 0x83, }; static const unsigned char xdh_wei448_2764_sharedsecret[] = { 0xa7, 0xfd, 0xca, 0x0e, 0x15, 0xe5, 0x94, 0x8a, 0xa7, 0x7c, 0xed, 0xd2, 0x7b, 0x76, 0x59, 0x90, 0xd5, 0xe6, 0xab, 0xff, 0x7a, 0x72, 0x6b, 0x9a, 0xc0, 0xea, 0x9b, 0xc4, 0x89, 0x92, 0xd0, 0xee, 0x97, 0x28, 0xa7, 0x23, 0xb7, 0xe1, 0x8c, 0x33, 0x34, 0x1c, 0x30, 0xfb, 0xd5, 0x1f, 0x42, 0xf8, 0xf9, 0xe3, 0x6f, 0x4e, 0x00, 0xc5, 0x4f, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_2764 = { .name = "xdh_wei448_2764", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2764_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2764_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2764_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2764_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 181 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2765 for XDH, tcId is 182 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2765_peerpubkey[] = { 0xf9, 0x23, 0x2f, 0xe9, 0x3b, 0x09, 0xea, 0x23, 0x2f, 0x04, 0x01, 0x14, 0x47, 0x39, 0x6b, 0xee, 0x7b, 0xdf, 0x1a, 0x2e, 0x86, 0x88, 0x7e, 0x9e, 0x68, 0xe7, 0x91, 0x7f, 0xaf, 0xdc, 0x4d, 0xd6, 0x83, 0x7c, 0xe8, 0xfb, 0x08, 0x2b, 0x0b, 0xbd, 0x77, 0xdb, 0x75, 0x62, 0xb2, 0x29, 0xa6, 0xde, 0x12, 0x63, 0x2a, 0x41, 0x62, 0xea, 0xef, 0x2c, }; static const unsigned char xdh_wei448_2765_ourpubkey[] = { 0x3c, 0x96, 0xc8, 0x3b, 0xb5, 0x00, 0x7c, 0x63, 0xfc, 0x90, 0x9b, 0x90, 0xd4, 0xbc, 0xe9, 0xaf, 0xd8, 0x11, 0x22, 0xa9, 0xf2, 0xdb, 0x33, 0xc6, 0x4b, 0xf9, 0x22, 0x4e, 0x67, 0xde, 0x7b, 0xb3, 0xb7, 0x15, 0xdc, 0x09, 0x7d, 0x47, 0xe3, 0xfc, 0xae, 0xbc, 0x11, 0xe8, 0x74, 0x56, 0x6d, 0xbf, 0xd4, 0xde, 0x50, 0xe0, 0x6e, 0xf9, 0xa6, 0xac, }; static const unsigned char xdh_wei448_2765_privkey[] = { 0x40, 0x73, 0x42, 0xcd, 0x35, 0x65, 0x8c, 0x89, 0x33, 0xf1, 0xf0, 0x0d, 0xfc, 0x08, 0xfa, 0x6e, 0x10, 0x19, 0x1d, 0x88, 0x24, 0x4a, 0xcb, 0x65, 0xe2, 0x02, 0x38, 0x3a, 0x43, 0x51, 0xa8, 0x05, 0x09, 0x5d, 0x39, 0x25, 0xab, 0xf3, 0x3b, 0xc4, 0xb6, 0xb5, 0xd5, 0x8d, 0x9a, 0x11, 0x35, 0xe3, 0xf2, 0xa2, 0x7f, 0x3d, 0x48, 0x35, 0x0e, 0x85, }; static const unsigned char xdh_wei448_2765_sharedsecret[] = { 0x19, 0x0b, 0x8c, 0x74, 0xa0, 0xfd, 0xa4, 0x39, 0xb7, 0x8f, 0x39, 0x00, 0x19, 0xaa, 0xff, 0xe2, 0xac, 0x55, 0x6d, 0x05, 0xa1, 0x0e, 0xd2, 0xa8, 0x66, 0xbf, 0x31, 0x4b, 0xe6, 0x5b, 0xa4, 0xfa, 0x84, 0xa9, 0x4d, 0x1f, 0x73, 0x09, 0x9a, 0x62, 0x6f, 0x53, 0x57, 0xc7, 0xa1, 0x90, 0xd5, 0x0a, 0x55, 0xc9, 0x63, 0x33, 0xdd, 0xfb, 0x12, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2765 = { .name = "xdh_wei448_2765", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2765_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2765_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2765_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2765_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 182 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2766 for XDH, tcId is 183 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2766_peerpubkey[] = { 0xa6, 0xfb, 0xd6, 0x4a, 0x66, 0xa4, 0x64, 0x54, 0xeb, 0x14, 0x5b, 0x3f, 0x37, 0x05, 0xe0, 0x19, 0x72, 0xb1, 0x49, 0x3b, 0x8e, 0x8f, 0xd4, 0x12, 0x37, 0x19, 0x84, 0xe0, 0x6b, 0x92, 0x6e, 0x76, 0xa7, 0xfd, 0x67, 0x9b, 0xde, 0x61, 0x14, 0x9f, 0xef, 0x27, 0x9f, 0x31, 0xa7, 0x53, 0x21, 0xad, 0x7f, 0x69, 0x37, 0x61, 0x96, 0xe0, 0xa1, 0x9b, }; static const unsigned char xdh_wei448_2766_ourpubkey[] = { 0x08, 0xc9, 0x62, 0x26, 0x46, 0x32, 0x73, 0x59, 0xcc, 0x6c, 0x07, 0xf0, 0xc6, 0x52, 0xa4, 0x7b, 0xc6, 0xf2, 0x16, 0xfc, 0x73, 0x2e, 0x94, 0x11, 0x40, 0x2f, 0x46, 0x38, 0x8f, 0x43, 0xf2, 0x99, 0x5a, 0x57, 0xb7, 0xe2, 0x20, 0xaf, 0xf4, 0x76, 0x93, 0x6e, 0x7f, 0xb3, 0x72, 0xdc, 0xa8, 0xa8, 0x65, 0xa7, 0xec, 0x20, 0xe7, 0x55, 0xde, 0x8a, }; static const unsigned char xdh_wei448_2766_privkey[] = { 0x80, 0x38, 0x7a, 0x6b, 0x93, 0x1d, 0xfb, 0xf0, 0xa3, 0x22, 0x0c, 0xbc, 0x8e, 0x16, 0x19, 0x46, 0xd6, 0x66, 0xf4, 0x10, 0x8f, 0x14, 0x34, 0x97, 0x9d, 0xeb, 0x6c, 0xec, 0xeb, 0x42, 0x2f, 0x03, 0x7a, 0x26, 0xc6, 0x34, 0xe9, 0x8b, 0x7d, 0x67, 0xdc, 0x8f, 0xd4, 0xea, 0x52, 0xae, 0x0d, 0xb7, 0xd8, 0x32, 0xaf, 0x7a, 0x07, 0x5b, 0x88, 0x96, }; static const unsigned char xdh_wei448_2766_sharedsecret[] = { 0xf6, 0x57, 0x13, 0xc9, 0x81, 0x9e, 0x06, 0xc2, 0x4f, 0x78, 0x41, 0x88, 0x70, 0xde, 0x30, 0xe8, 0x94, 0x98, 0x46, 0x78, 0x6b, 0x2e, 0xed, 0x55, 0x7b, 0x16, 0xb3, 0x12, 0x59, 0xf9, 0xd8, 0xa6, 0xc6, 0xe3, 0x40, 0x8d, 0x15, 0x5e, 0x2f, 0x1a, 0xb9, 0x83, 0xac, 0x64, 0x6d, 0x76, 0x04, 0x2d, 0x97, 0x66, 0x2c, 0xd5, 0x32, 0x83, 0x4e, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2766 = { .name = "xdh_wei448_2766", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2766_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2766_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2766_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2766_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 183 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2767 for XDH, tcId is 184 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2767_peerpubkey[] = { 0x39, 0xbf, 0x39, 0x20, 0x5a, 0xc3, 0xdd, 0x32, 0xd6, 0x09, 0x2d, 0x1b, 0x74, 0x55, 0x79, 0xff, 0x53, 0xfe, 0xa1, 0x03, 0x76, 0xe4, 0xf0, 0xb1, 0xa2, 0xa4, 0xb8, 0x39, 0x5a, 0x6f, 0xaa, 0x85, 0xc2, 0x19, 0xa9, 0x22, 0x41, 0x23, 0xe9, 0x32, 0xe4, 0x92, 0x9d, 0xf4, 0xfd, 0x6b, 0x2b, 0x90, 0xa3, 0xdf, 0xa3, 0xf8, 0x9b, 0xe7, 0x80, 0xaf, }; static const unsigned char xdh_wei448_2767_ourpubkey[] = { 0x9e, 0x82, 0x68, 0xe5, 0x31, 0x7d, 0xbe, 0x90, 0x74, 0x53, 0x64, 0x75, 0x86, 0x0d, 0x81, 0x43, 0x0a, 0xca, 0x05, 0xa2, 0x90, 0xb0, 0x34, 0xd7, 0x9b, 0x3c, 0x1b, 0xe6, 0x32, 0x60, 0x2b, 0x9e, 0x4f, 0x41, 0xe5, 0x3e, 0x54, 0x5a, 0xa0, 0xc7, 0x48, 0x09, 0x39, 0x69, 0x00, 0x0a, 0xd8, 0x98, 0x4c, 0xe9, 0xc0, 0x58, 0xb8, 0xe6, 0xab, 0xe2, }; static const unsigned char xdh_wei448_2767_privkey[] = { 0xf8, 0x6c, 0xb8, 0xff, 0x21, 0x7d, 0xa7, 0x30, 0xd1, 0x84, 0xc7, 0x32, 0x24, 0x63, 0x6a, 0xf9, 0xf7, 0x79, 0xc8, 0x3c, 0x84, 0x4a, 0x1a, 0x85, 0x9b, 0x86, 0xb7, 0x6b, 0xfc, 0x90, 0x5d, 0xd8, 0x09, 0xc5, 0xd7, 0xfd, 0x99, 0xd9, 0xd6, 0xb8, 0x69, 0x5b, 0x6c, 0x1b, 0x9d, 0xd9, 0x94, 0x20, 0x2e, 0x4e, 0x12, 0x6b, 0xc0, 0x0d, 0xe8, 0x9e, }; static const unsigned char xdh_wei448_2767_sharedsecret[] = { 0x71, 0xd0, 0x73, 0x1f, 0xc8, 0x0c, 0x72, 0x53, 0x49, 0x87, 0x3b, 0x22, 0xaf, 0x21, 0x5c, 0x39, 0xf2, 0xec, 0x59, 0x5c, 0xb3, 0x6b, 0x1c, 0x5a, 0x69, 0xbc, 0x5d, 0xdd, 0x75, 0x4e, 0x82, 0x56, 0x3e, 0x06, 0x0d, 0xcb, 0x1d, 0xc8, 0x6b, 0x43, 0x54, 0xbf, 0x20, 0x17, 0xaa, 0x43, 0xbe, 0x1c, 0xa7, 0x39, 0xb4, 0x0d, 0x75, 0xcc, 0x85, 0xd1, }; static const wycheproof_xdh_test xdh_wei448_2767 = { .name = "xdh_wei448_2767", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2767_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2767_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2767_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2767_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 184 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2768 for XDH, tcId is 185 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2768_peerpubkey[] = { 0x96, 0x6b, 0x0c, 0x56, 0x8d, 0xca, 0x32, 0x71, 0x75, 0x9b, 0x1a, 0x6c, 0xbd, 0xd5, 0xef, 0x23, 0x86, 0x26, 0x3e, 0xc3, 0x62, 0xc2, 0xa0, 0x76, 0xb8, 0x5b, 0x92, 0x7a, 0xcc, 0xc7, 0x31, 0x90, 0x15, 0xf3, 0x61, 0x53, 0xda, 0x29, 0x0a, 0x81, 0x96, 0x20, 0x31, 0x4e, 0xa1, 0xa2, 0x8e, 0x58, 0xb3, 0xd1, 0xa0, 0xf5, 0x03, 0xde, 0x14, 0xf9, }; static const unsigned char xdh_wei448_2768_ourpubkey[] = { 0x80, 0xc2, 0x66, 0x54, 0x87, 0x6e, 0x44, 0x69, 0xfb, 0x41, 0x86, 0x47, 0x3f, 0x3d, 0xfa, 0xab, 0xc4, 0x0f, 0x43, 0xd3, 0x99, 0x11, 0xb8, 0x90, 0x31, 0xb3, 0x5d, 0xb6, 0x51, 0x4c, 0x07, 0x77, 0xcb, 0x1c, 0xfc, 0xcf, 0x64, 0x88, 0xa9, 0x55, 0xf4, 0x92, 0x57, 0xaf, 0x93, 0xd2, 0xa2, 0x69, 0x42, 0xc9, 0x3a, 0xb1, 0x8f, 0xea, 0x14, 0x30, }; static const unsigned char xdh_wei448_2768_privkey[] = { 0x54, 0x48, 0x63, 0x2b, 0xef, 0xfa, 0xf5, 0x36, 0x67, 0x45, 0xe1, 0xd5, 0x92, 0x54, 0xc9, 0x46, 0x52, 0x96, 0xab, 0x37, 0x01, 0x59, 0xbe, 0x41, 0x87, 0x91, 0x9f, 0xa1, 0xbe, 0x25, 0x79, 0x6d, 0x4c, 0x97, 0xba, 0xc0, 0x85, 0xa2, 0xbf, 0x06, 0x55, 0xf2, 0x9e, 0x12, 0x9f, 0x5a, 0xb7, 0xf2, 0x6f, 0xf9, 0x53, 0x62, 0xf3, 0x36, 0xea, 0xbc, }; static const unsigned char xdh_wei448_2768_sharedsecret[] = { 0x0c, 0x72, 0x95, 0x19, 0x74, 0x4c, 0xf1, 0x4b, 0xe7, 0x96, 0x96, 0x32, 0x5a, 0xe8, 0x93, 0x68, 0x77, 0xb3, 0x21, 0xe4, 0x5b, 0x07, 0x57, 0xe4, 0xe5, 0x51, 0x2a, 0xad, 0x2c, 0x1e, 0x8a, 0xa2, 0x33, 0xba, 0x62, 0x24, 0x42, 0xca, 0x55, 0x04, 0x35, 0x9a, 0xdd, 0x3e, 0xc1, 0x9c, 0xef, 0x78, 0x44, 0x64, 0xba, 0x97, 0xfc, 0x81, 0xc3, 0x99, }; static const wycheproof_xdh_test xdh_wei448_2768 = { .name = "xdh_wei448_2768", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2768_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2768_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2768_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2768_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 185 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2769 for XDH, tcId is 186 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2769_peerpubkey[] = { 0x83, 0xbe, 0x7f, 0xd9, 0x06, 0xb8, 0xd3, 0x54, 0x34, 0x57, 0xeb, 0xe5, 0x12, 0x80, 0xcc, 0xd8, 0x0b, 0xb2, 0x7a, 0xe0, 0x52, 0xf3, 0xa0, 0x3a, 0x3f, 0x2d, 0x78, 0x90, 0x28, 0xdb, 0x25, 0xe4, 0x30, 0xa8, 0xbc, 0xcc, 0x90, 0xe8, 0x37, 0x1e, 0x20, 0x76, 0x5f, 0xf4, 0x79, 0x82, 0x83, 0xfb, 0x35, 0x59, 0xde, 0xb3, 0x1c, 0x80, 0x88, 0x3a, }; static const unsigned char xdh_wei448_2769_ourpubkey[] = { 0x3a, 0xf9, 0xeb, 0xeb, 0x8f, 0x74, 0x66, 0xbf, 0xaf, 0xaf, 0xfc, 0x3e, 0x28, 0xeb, 0xf6, 0x38, 0x5c, 0xe0, 0x2c, 0x4b, 0x02, 0xc2, 0xb5, 0x85, 0x8b, 0xbc, 0xf9, 0xd0, 0x28, 0x8b, 0x7e, 0xc1, 0x4e, 0x4d, 0x93, 0x04, 0x5e, 0x7b, 0x25, 0x62, 0x4d, 0x5a, 0xd1, 0xcb, 0xd0, 0x54, 0x07, 0x58, 0x12, 0x39, 0x9a, 0x4c, 0x61, 0xe4, 0x41, 0xed, }; static const unsigned char xdh_wei448_2769_privkey[] = { 0x30, 0xf2, 0x81, 0xd7, 0xb8, 0x24, 0xb6, 0x5f, 0x37, 0x5e, 0xb0, 0x57, 0x8f, 0xa9, 0x12, 0x30, 0x22, 0xfb, 0x58, 0xc0, 0xb0, 0xb9, 0x39, 0x88, 0x93, 0x20, 0x39, 0x46, 0x7c, 0x0e, 0x0c, 0x23, 0x03, 0x97, 0xd0, 0xa2, 0xdd, 0x67, 0xf3, 0x0a, 0x31, 0x97, 0x76, 0x1c, 0x5f, 0x42, 0x49, 0x89, 0x48, 0xe2, 0x5e, 0x3a, 0x25, 0xc3, 0x06, 0x9e, }; static const unsigned char xdh_wei448_2769_sharedsecret[] = { 0xb8, 0x45, 0xc3, 0xd7, 0xb6, 0x4a, 0x4f, 0xc8, 0xc3, 0x01, 0xef, 0xa0, 0x8b, 0x1d, 0xd6, 0x79, 0xb8, 0x50, 0x69, 0x25, 0x29, 0xe7, 0xb7, 0x2d, 0xfb, 0x6d, 0xae, 0xbe, 0x19, 0xaf, 0x5c, 0x3a, 0x4b, 0xd0, 0xad, 0xb6, 0x10, 0xd9, 0x31, 0x75, 0x47, 0xcb, 0x1e, 0x59, 0x87, 0xbe, 0x7e, 0x56, 0x20, 0xd5, 0xdb, 0xf5, 0xdc, 0x15, 0xfe, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_2769 = { .name = "xdh_wei448_2769", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2769_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2769_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2769_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2769_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 186 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2770 for XDH, tcId is 187 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2770_peerpubkey[] = { 0xce, 0xd1, 0x73, 0xd5, 0xe9, 0x1d, 0x27, 0xd1, 0x19, 0x13, 0x4e, 0x3c, 0x49, 0xa6, 0xa3, 0x23, 0x65, 0xb7, 0x8c, 0xce, 0x35, 0x29, 0xe9, 0x17, 0x1c, 0x13, 0xe4, 0x7e, 0x46, 0x1c, 0xfb, 0xfd, 0x8e, 0x77, 0xca, 0x34, 0x9d, 0x75, 0xf1, 0xdb, 0xc1, 0xc0, 0x64, 0xce, 0x72, 0x57, 0xb2, 0x0e, 0x63, 0x89, 0xa2, 0x0b, 0x6a, 0xef, 0x40, 0x3b, }; static const unsigned char xdh_wei448_2770_ourpubkey[] = { 0x2f, 0xb8, 0xdc, 0x62, 0xf7, 0x9d, 0xac, 0x47, 0x0a, 0x30, 0xdb, 0x74, 0x86, 0xf7, 0xc5, 0xf5, 0xcf, 0x3d, 0x4d, 0xb7, 0xe3, 0x45, 0xec, 0x37, 0x29, 0xe2, 0x0b, 0xdd, 0xe3, 0xfe, 0xe8, 0x62, 0x9a, 0xee, 0xa8, 0xc1, 0x29, 0xb3, 0x1b, 0x2f, 0x15, 0x08, 0x2f, 0x13, 0xeb, 0xfd, 0x3b, 0x24, 0xe4, 0x24, 0x51, 0x7f, 0x88, 0x9e, 0xc2, 0xa3, }; static const unsigned char xdh_wei448_2770_privkey[] = { 0x10, 0xad, 0x34, 0x79, 0x4a, 0x7d, 0x03, 0x35, 0x1b, 0xdd, 0x7e, 0xf9, 0x11, 0x25, 0x7b, 0x0c, 0x94, 0x32, 0x1f, 0xa2, 0x3c, 0xf8, 0xea, 0x60, 0x57, 0xdc, 0x47, 0xd5, 0x16, 0xe4, 0xe5, 0x5d, 0x32, 0xa3, 0x0f, 0x5a, 0xdb, 0x71, 0xdc, 0x96, 0x84, 0xeb, 0xaf, 0xfc, 0x34, 0xca, 0xfb, 0x1a, 0xc7, 0xea, 0x17, 0xe7, 0xb1, 0xb6, 0xb2, 0x8c, }; static const unsigned char xdh_wei448_2770_sharedsecret[] = { 0x99, 0xf2, 0x61, 0xb7, 0x3f, 0x1c, 0x83, 0x75, 0x13, 0x2b, 0x0b, 0x1e, 0x02, 0x8b, 0x2c, 0xe3, 0x38, 0x25, 0xf3, 0xd7, 0x3f, 0x43, 0xd5, 0xc1, 0x24, 0x4e, 0x7f, 0xbd, 0xfb, 0x03, 0x03, 0x2a, 0xe2, 0x02, 0x70, 0xc1, 0x17, 0x0c, 0x23, 0x76, 0x48, 0x9b, 0x02, 0x06, 0x3a, 0x3a, 0xc2, 0x5c, 0xbf, 0xd0, 0xaf, 0x68, 0xbc, 0xa2, 0xea, 0xda, }; static const wycheproof_xdh_test xdh_wei448_2770 = { .name = "xdh_wei448_2770", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2770_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2770_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2770_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2770_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 187 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2771 for XDH, tcId is 188 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2771_peerpubkey[] = { 0x18, 0x3f, 0x07, 0xf6, 0x5f, 0x94, 0x57, 0x8f, 0xe8, 0x30, 0x92, 0xfc, 0x2f, 0x75, 0x58, 0xba, 0x2d, 0xa6, 0x88, 0x2d, 0x29, 0xf0, 0xcc, 0x6f, 0xc9, 0x35, 0xee, 0xca, 0x2f, 0xc9, 0xb9, 0x2b, 0xc5, 0x86, 0x21, 0x6f, 0x2b, 0x07, 0xca, 0xdd, 0xe4, 0x59, 0x7a, 0x71, 0x3a, 0x4d, 0x93, 0xeb, 0x7b, 0xc5, 0x55, 0x4e, 0xd6, 0x02, 0xbf, 0x9f, }; static const unsigned char xdh_wei448_2771_ourpubkey[] = { 0x55, 0xce, 0xff, 0xbe, 0xa7, 0x2d, 0x93, 0x37, 0x4a, 0x16, 0x78, 0x77, 0xbb, 0x02, 0xcf, 0x6c, 0x69, 0x1d, 0x25, 0xa6, 0x95, 0xd0, 0x55, 0xe3, 0xad, 0x6b, 0xee, 0x58, 0x5f, 0xb0, 0x0f, 0xb0, 0x65, 0x5b, 0x66, 0x57, 0xb8, 0x68, 0x09, 0x9f, 0x97, 0x99, 0xd9, 0xb6, 0x8b, 0xdb, 0xa5, 0x32, 0x0f, 0x07, 0xea, 0xaf, 0x3f, 0x8d, 0x0b, 0xca, }; static const unsigned char xdh_wei448_2771_privkey[] = { 0x10, 0x6a, 0x1d, 0x78, 0x39, 0x7d, 0x90, 0xa0, 0x4b, 0x84, 0x4c, 0x57, 0x78, 0x4d, 0x82, 0xac, 0xe4, 0xe9, 0xa6, 0xed, 0x25, 0x15, 0x7f, 0xac, 0x82, 0x13, 0xc3, 0x7b, 0xa9, 0xcb, 0xfc, 0x09, 0xb6, 0x01, 0x51, 0x02, 0xd8, 0x48, 0x40, 0xcf, 0xb0, 0x87, 0x81, 0x64, 0x29, 0x32, 0x71, 0x53, 0x93, 0x91, 0xfa, 0x89, 0xb4, 0xf5, 0x24, 0xb0, }; static const unsigned char xdh_wei448_2771_sharedsecret[] = { 0x85, 0xdd, 0x47, 0x7a, 0xa7, 0x6a, 0x49, 0xa5, 0xb6, 0x96, 0x7c, 0xf3, 0x57, 0x06, 0xe0, 0x2e, 0x77, 0x5a, 0x66, 0x90, 0xd5, 0xe0, 0x38, 0xb4, 0x49, 0x63, 0x48, 0x05, 0x39, 0x8b, 0x88, 0x67, 0x28, 0xbb, 0xb7, 0x37, 0x61, 0x33, 0xa3, 0x3a, 0x2d, 0x72, 0xac, 0x3d, 0x12, 0x66, 0x87, 0x0e, 0x23, 0xcc, 0x06, 0x50, 0x49, 0xcd, 0x0b, 0xab, }; static const wycheproof_xdh_test xdh_wei448_2771 = { .name = "xdh_wei448_2771", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2771_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2771_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2771_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2771_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 188 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2772 for XDH, tcId is 189 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2772_peerpubkey[] = { 0xa5, 0xe0, 0xdf, 0x95, 0xbd, 0x49, 0xd5, 0x38, 0xc0, 0x51, 0xaf, 0x55, 0x2c, 0x33, 0x9e, 0x85, 0x1d, 0x8e, 0xb7, 0xd7, 0x67, 0xb2, 0x91, 0x37, 0x9b, 0xcb, 0xab, 0xd3, 0xe3, 0x46, 0x90, 0x01, 0xf5, 0x62, 0xf5, 0xff, 0x9d, 0x36, 0x21, 0x0c, 0x3b, 0x64, 0x85, 0xf4, 0x29, 0xae, 0x6f, 0xc0, 0xcd, 0x60, 0xb2, 0x2a, 0xc1, 0x92, 0xa7, 0x3f, }; static const unsigned char xdh_wei448_2772_ourpubkey[] = { 0x5f, 0xb1, 0x89, 0xdc, 0x7e, 0xc6, 0x2b, 0xca, 0x46, 0x33, 0xac, 0x60, 0xc0, 0xf7, 0x52, 0x35, 0x15, 0x94, 0x23, 0xba, 0x5a, 0x72, 0x9f, 0x2a, 0x5d, 0xdb, 0x7b, 0x0d, 0xb4, 0x8d, 0xd6, 0x04, 0xb5, 0x39, 0xb5, 0x6f, 0x9b, 0x37, 0xe7, 0xf5, 0x03, 0x63, 0xd2, 0xff, 0x4d, 0xd8, 0x1d, 0x89, 0xc2, 0x9b, 0x5c, 0x5e, 0x04, 0xfa, 0xab, 0x03, }; static const unsigned char xdh_wei448_2772_privkey[] = { 0xe4, 0x8a, 0x40, 0xaf, 0x2c, 0x95, 0xdc, 0xbd, 0x6b, 0xa8, 0xd4, 0x3a, 0x9c, 0x7a, 0x2a, 0x6f, 0x37, 0x52, 0x68, 0x0c, 0xf4, 0x47, 0x02, 0x9d, 0xd0, 0x25, 0xfa, 0x94, 0x49, 0xc3, 0x21, 0x1f, 0x96, 0x78, 0xea, 0xb7, 0xf8, 0x42, 0x19, 0x0f, 0xfb, 0xf9, 0xaa, 0x3e, 0xbb, 0xd1, 0xb1, 0x99, 0xa7, 0xbf, 0x2e, 0xf3, 0x8b, 0xa9, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_2772_sharedsecret[] = { 0x79, 0x5f, 0x7c, 0x3f, 0x04, 0x21, 0x3c, 0x6f, 0xbf, 0xf0, 0xa0, 0x9d, 0x3d, 0xb3, 0x2b, 0xdd, 0xc0, 0xb4, 0xb8, 0x31, 0xf0, 0x6c, 0xb0, 0xab, 0xf6, 0xdc, 0x4c, 0x40, 0xa4, 0xff, 0x1c, 0x60, 0xa9, 0xde, 0x6e, 0x2b, 0x9b, 0x55, 0x24, 0x99, 0xe0, 0x2b, 0xb8, 0xa7, 0x8c, 0x25, 0x35, 0xfe, 0x7c, 0x32, 0x44, 0xbb, 0x75, 0xe9, 0x0c, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_2772 = { .name = "xdh_wei448_2772", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2772_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2772_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2772_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2772_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 189 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2773 for XDH, tcId is 190 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2773_peerpubkey[] = { 0xca, 0xfa, 0x2c, 0xa3, 0x59, 0xec, 0x03, 0xa6, 0xeb, 0x2f, 0x2c, 0x6e, 0x0c, 0xac, 0x04, 0x9d, 0x98, 0x7e, 0x12, 0x20, 0xab, 0xce, 0xf2, 0xb8, 0x47, 0xc4, 0xb8, 0xca, 0x7d, 0xfe, 0xed, 0xe7, 0x1f, 0xb1, 0x3c, 0x0d, 0xb9, 0xbf, 0x83, 0x03, 0x0f, 0xd4, 0x29, 0xc5, 0xdd, 0xfb, 0x84, 0xf4, 0x02, 0xdd, 0xbe, 0x9f, 0x41, 0x29, 0xa1, 0x83, }; static const unsigned char xdh_wei448_2773_ourpubkey[] = { 0xcc, 0x25, 0x1c, 0x1e, 0xfb, 0xed, 0x46, 0x21, 0x31, 0x15, 0x27, 0x08, 0x7a, 0x0d, 0x84, 0x71, 0x10, 0x59, 0xd0, 0x2c, 0x87, 0x8d, 0x28, 0x55, 0x04, 0xc8, 0xa6, 0xf2, 0xc2, 0x56, 0xdc, 0xb0, 0x4c, 0x00, 0xef, 0x65, 0xb1, 0x7a, 0x76, 0x75, 0xc8, 0x3d, 0xf3, 0xbf, 0x86, 0xef, 0xed, 0x66, 0x2e, 0xa9, 0x36, 0x3d, 0x9e, 0x78, 0xd3, 0xa9, }; static const unsigned char xdh_wei448_2773_privkey[] = { 0x38, 0xc6, 0x29, 0x6b, 0xf0, 0x9f, 0x64, 0xd2, 0xff, 0x74, 0x15, 0x96, 0x33, 0x41, 0x2c, 0x33, 0xa8, 0xf8, 0xe9, 0x74, 0xac, 0x62, 0x54, 0xbc, 0xbe, 0xc7, 0xa4, 0x6b, 0x59, 0xe5, 0x4e, 0x7a, 0x32, 0xc4, 0xee, 0x43, 0x1d, 0x49, 0xed, 0xe5, 0x65, 0x7c, 0xf1, 0x15, 0x5a, 0x6d, 0x81, 0x9f, 0xea, 0xa6, 0xd0, 0x96, 0x32, 0x04, 0x63, 0xb9, }; static const unsigned char xdh_wei448_2773_sharedsecret[] = { 0x11, 0x88, 0x29, 0x30, 0xb0, 0x70, 0x31, 0x4e, 0x8f, 0x38, 0x9e, 0x99, 0xdb, 0x01, 0x91, 0x35, 0x93, 0xc4, 0x3e, 0xef, 0xde, 0x4e, 0x3a, 0xac, 0xbb, 0x81, 0xa2, 0x01, 0xd9, 0xf9, 0xa9, 0x40, 0x3a, 0x11, 0xd1, 0x15, 0xa3, 0x1b, 0x6a, 0xc8, 0x03, 0x15, 0x55, 0xb8, 0xee, 0xaf, 0x96, 0xfc, 0x1f, 0xc6, 0x59, 0xbf, 0x40, 0x78, 0xe2, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2773 = { .name = "xdh_wei448_2773", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2773_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2773_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2773_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2773_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 190 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2774 for XDH, tcId is 191 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2774_peerpubkey[] = { 0xcf, 0xa0, 0xd6, 0xe3, 0xc9, 0xb7, 0xa1, 0x64, 0x73, 0xae, 0x83, 0x71, 0xd8, 0xc3, 0xd3, 0xbf, 0xe2, 0x08, 0xbf, 0xd6, 0xb3, 0x53, 0x8b, 0x9d, 0x4c, 0x0c, 0xfe, 0x4f, 0x0d, 0xac, 0x4c, 0x49, 0xaf, 0xac, 0x43, 0xce, 0x33, 0x7c, 0x81, 0x68, 0x5b, 0x54, 0x48, 0xdf, 0x8d, 0x06, 0x01, 0x4e, 0xf4, 0xf0, 0x1d, 0xd3, 0x86, 0xe5, 0x52, 0xd8, }; static const unsigned char xdh_wei448_2774_ourpubkey[] = { 0xf2, 0x48, 0xfb, 0x2b, 0x32, 0xa5, 0x88, 0x36, 0x60, 0x4b, 0xaf, 0x61, 0x5c, 0x1e, 0xdf, 0x0a, 0x25, 0x86, 0x2a, 0xcf, 0x4f, 0x2c, 0xe5, 0x51, 0x09, 0x09, 0x90, 0x3b, 0xfa, 0x93, 0xf0, 0x4f, 0x21, 0xf9, 0x7a, 0x35, 0x4c, 0x27, 0xe0, 0xc4, 0x3e, 0x4a, 0x3e, 0x8f, 0xd5, 0x43, 0xc6, 0x3a, 0x2d, 0xf9, 0xea, 0x26, 0x7c, 0x09, 0x86, 0xe1, }; static const unsigned char xdh_wei448_2774_privkey[] = { 0xa8, 0xec, 0x40, 0xc1, 0x38, 0x22, 0x72, 0xe4, 0x84, 0x2d, 0x82, 0x12, 0x3e, 0xbd, 0x1a, 0x9c, 0x53, 0xc9, 0x6e, 0x0d, 0x53, 0x4e, 0xb0, 0x8a, 0x34, 0x0f, 0xdb, 0x78, 0x7a, 0xfa, 0xd1, 0x18, 0x8b, 0x86, 0xce, 0xfa, 0x92, 0x37, 0xfe, 0xb0, 0x9c, 0x26, 0x53, 0xa0, 0xd3, 0x51, 0x9a, 0x4e, 0x2a, 0x09, 0xaf, 0x8c, 0x25, 0x6a, 0xe8, 0x86, }; static const unsigned char xdh_wei448_2774_sharedsecret[] = { 0x02, 0xf1, 0x8b, 0x6d, 0xcf, 0xf7, 0xd0, 0x9c, 0x0e, 0x87, 0xae, 0x7c, 0xad, 0xb5, 0x9a, 0x51, 0x91, 0x20, 0xd8, 0xc0, 0xde, 0x7a, 0x2a, 0x83, 0xc9, 0x9a, 0xe5, 0x2e, 0xb2, 0x20, 0x8d, 0xc1, 0xf7, 0x02, 0x13, 0x41, 0xf5, 0xe0, 0xb7, 0xc4, 0xd9, 0x18, 0x36, 0x3d, 0x51, 0xaa, 0x4e, 0xd2, 0x55, 0xc7, 0xd6, 0x68, 0x47, 0x70, 0x05, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2774 = { .name = "xdh_wei448_2774", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2774_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2774_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2774_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2774_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 191 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2775 for XDH, tcId is 192 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2775_peerpubkey[] = { 0xc0, 0xb0, 0xae, 0x5b, 0xf6, 0x44, 0xc0, 0x9d, 0xbb, 0xd3, 0x2b, 0x1b, 0xa6, 0xd0, 0xa4, 0x05, 0x58, 0xa5, 0xb9, 0xa7, 0xc2, 0xc9, 0x81, 0x3c, 0xf7, 0x7e, 0x3c, 0x22, 0x53, 0x1e, 0x79, 0xf9, 0xee, 0x3e, 0xb8, 0xec, 0x45, 0x70, 0xf1, 0xce, 0xf3, 0x94, 0x72, 0xc9, 0x70, 0x04, 0xf4, 0xda, 0x1a, 0x21, 0x32, 0xf2, 0x1a, 0x62, 0x48, 0xde, }; static const unsigned char xdh_wei448_2775_ourpubkey[] = { 0x05, 0x50, 0x34, 0x75, 0x97, 0xa7, 0x59, 0x30, 0x79, 0x17, 0x1b, 0x0a, 0xcb, 0xa2, 0xaf, 0xc9, 0x25, 0x2b, 0xa0, 0x4d, 0xc1, 0x34, 0x7d, 0x78, 0x35, 0x45, 0xa8, 0xc1, 0xd0, 0x06, 0xfc, 0x94, 0x63, 0xaf, 0x85, 0x83, 0x27, 0xb0, 0xdf, 0xae, 0xfa, 0x12, 0x71, 0x52, 0xd0, 0x58, 0x70, 0x93, 0xd4, 0x53, 0x71, 0xa4, 0xb4, 0x43, 0xb3, 0x5c, }; static const unsigned char xdh_wei448_2775_privkey[] = { 0x1c, 0x09, 0x4a, 0xa4, 0xb8, 0xd2, 0xfa, 0xe8, 0xc3, 0x93, 0xe4, 0x04, 0x49, 0x6d, 0x8f, 0x13, 0x2f, 0x88, 0xea, 0xca, 0x28, 0x27, 0xe0, 0x84, 0xc0, 0x79, 0x80, 0xa1, 0x95, 0x52, 0x32, 0xf2, 0x69, 0x54, 0x0b, 0x1e, 0x9e, 0x0a, 0x94, 0x64, 0x2e, 0x3e, 0x12, 0x67, 0x20, 0xaf, 0x2e, 0xf0, 0x29, 0x11, 0x08, 0x27, 0xc7, 0xe8, 0x27, 0xa0, }; static const unsigned char xdh_wei448_2775_sharedsecret[] = { 0xda, 0xa6, 0x6a, 0x07, 0x53, 0xa3, 0x07, 0xad, 0x3f, 0xa1, 0xd7, 0x40, 0xec, 0xa4, 0xf0, 0x52, 0x2c, 0xb7, 0xf7, 0x1d, 0xb8, 0xa8, 0x06, 0xf3, 0x20, 0x15, 0x43, 0x38, 0xf0, 0x15, 0x64, 0x89, 0x7f, 0xeb, 0xf8, 0x86, 0x0d, 0x29, 0x2e, 0x66, 0x28, 0x94, 0x22, 0x33, 0x14, 0xe2, 0x8b, 0x75, 0x07, 0xe4, 0x17, 0xf5, 0xfa, 0x90, 0xef, 0x42, }; static const wycheproof_xdh_test xdh_wei448_2775 = { .name = "xdh_wei448_2775", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2775_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2775_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2775_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2775_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 192 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2776 for XDH, tcId is 193 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2776_peerpubkey[] = { 0x5c, 0xd1, 0x6d, 0xee, 0x47, 0x1b, 0x4e, 0xb9, 0x3f, 0xd6, 0xc8, 0x9c, 0x35, 0xf9, 0x43, 0x00, 0xc0, 0xa8, 0xeb, 0x14, 0x9d, 0xfe, 0x2b, 0x86, 0xed, 0x14, 0xe9, 0xa1, 0x5f, 0x73, 0xa2, 0x14, 0x4a, 0xde, 0xed, 0x62, 0x09, 0x73, 0x93, 0x9e, 0x51, 0x7e, 0xf1, 0xe0, 0xb0, 0x7a, 0xa0, 0xfd, 0xaf, 0xff, 0xfc, 0xea, 0x47, 0xf8, 0x27, 0x0f, }; static const unsigned char xdh_wei448_2776_ourpubkey[] = { 0xea, 0x6a, 0x70, 0x64, 0x23, 0xf5, 0x49, 0x84, 0xf2, 0x59, 0x5d, 0xe0, 0x57, 0x0f, 0x71, 0x5f, 0x40, 0xb8, 0x07, 0x28, 0xac, 0xde, 0xab, 0x92, 0x17, 0x74, 0x85, 0x10, 0x5c, 0xc4, 0x0c, 0x7f, 0xd8, 0xe9, 0x18, 0x3c, 0x9e, 0xae, 0xd7, 0x47, 0x69, 0x30, 0xd9, 0xab, 0x1e, 0xdd, 0xa5, 0xfc, 0xab, 0x2f, 0xca, 0xfd, 0x94, 0x68, 0x47, 0x95, }; static const unsigned char xdh_wei448_2776_privkey[] = { 0x7c, 0xde, 0xe6, 0xca, 0xf1, 0xae, 0x14, 0x41, 0x2d, 0x4d, 0x36, 0x5b, 0x9f, 0x9d, 0x09, 0x04, 0x50, 0x9e, 0xb8, 0xd5, 0x89, 0x0f, 0xbc, 0x92, 0x30, 0x3b, 0xc6, 0xde, 0xd5, 0xf4, 0xff, 0x27, 0xf1, 0xc5, 0xf3, 0x1c, 0x79, 0x19, 0xcb, 0xe8, 0x34, 0xbc, 0x3c, 0xa6, 0x60, 0x07, 0x64, 0x8b, 0x80, 0x95, 0x56, 0xe0, 0x80, 0x85, 0xf6, 0xc0, }; static const unsigned char xdh_wei448_2776_sharedsecret[] = { 0x94, 0x07, 0x15, 0x78, 0x5c, 0x46, 0x06, 0x4c, 0xbb, 0xd8, 0x50, 0xca, 0x39, 0x7f, 0x1d, 0x93, 0xad, 0x85, 0x23, 0x62, 0xd5, 0xc8, 0x38, 0x9e, 0x80, 0xf3, 0xda, 0xa6, 0x3e, 0xce, 0xdb, 0x98, 0x9e, 0x44, 0x2e, 0x2e, 0x0b, 0xec, 0x9b, 0xf0, 0xc6, 0x1a, 0xa2, 0xf0, 0xb3, 0x47, 0xc8, 0xe3, 0x4d, 0xcb, 0xd8, 0xbc, 0xe5, 0x7b, 0x09, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2776 = { .name = "xdh_wei448_2776", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2776_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2776_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2776_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2776_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 193 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2777 for XDH, tcId is 194 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2777_peerpubkey[] = { 0x9a, 0x5d, 0x95, 0xf7, 0x7b, 0xd7, 0xea, 0x31, 0xae, 0x97, 0xba, 0x2d, 0xcd, 0x9e, 0x38, 0x4c, 0xbb, 0x13, 0xf9, 0x82, 0xf6, 0x4c, 0x34, 0xb4, 0xac, 0x47, 0x07, 0xc5, 0x37, 0xee, 0xc7, 0x38, 0x70, 0x10, 0x59, 0x95, 0x81, 0x14, 0x10, 0x52, 0x1e, 0xa0, 0x94, 0xe1, 0x34, 0x2f, 0xd7, 0x09, 0x2a, 0x6c, 0xb3, 0x0a, 0x3e, 0x3f, 0x85, 0x1d, }; static const unsigned char xdh_wei448_2777_ourpubkey[] = { 0xfa, 0x3a, 0xef, 0x91, 0x36, 0x58, 0x0d, 0x26, 0x26, 0x3c, 0xf0, 0xb2, 0x40, 0x0f, 0x72, 0x71, 0x89, 0xa5, 0xd9, 0xda, 0xbb, 0xf4, 0xec, 0x49, 0x63, 0x9e, 0x95, 0x10, 0x48, 0xbd, 0xc6, 0x28, 0x94, 0xf2, 0x01, 0x36, 0xf5, 0x90, 0xfe, 0x56, 0x0c, 0x93, 0x19, 0x49, 0xc9, 0xda, 0xfa, 0x23, 0xca, 0xa8, 0xd9, 0x9b, 0x8a, 0x64, 0xb2, 0x5c, }; static const unsigned char xdh_wei448_2777_privkey[] = { 0xec, 0x55, 0x44, 0x4d, 0xd9, 0x2d, 0xdb, 0x86, 0xc0, 0x18, 0x37, 0x7f, 0x27, 0x61, 0x80, 0x47, 0xe8, 0x47, 0x69, 0xff, 0xc7, 0xa0, 0xbe, 0x40, 0xa0, 0xce, 0x7a, 0x11, 0x84, 0x9c, 0xfb, 0x7b, 0x2b, 0x95, 0x98, 0x40, 0x9d, 0x2c, 0x90, 0x6d, 0xe3, 0x8a, 0x4b, 0x69, 0x25, 0x0c, 0x56, 0x00, 0x71, 0x45, 0x69, 0x92, 0xb4, 0x2f, 0xeb, 0xf0, }; static const unsigned char xdh_wei448_2777_sharedsecret[] = { 0x0b, 0x0e, 0xae, 0x19, 0xc0, 0xb7, 0x83, 0x2b, 0x9c, 0xa0, 0x1f, 0x42, 0xf2, 0xd2, 0xdf, 0xa8, 0xb7, 0x0a, 0x2d, 0x43, 0x19, 0x36, 0xde, 0x41, 0x5a, 0xfa, 0x87, 0x82, 0x44, 0xf7, 0x8c, 0x45, 0x38, 0x1d, 0x69, 0xf1, 0x14, 0x54, 0xad, 0x52, 0xa8, 0x64, 0x1e, 0x2e, 0xc7, 0xea, 0x8e, 0xd5, 0x9b, 0x7b, 0x25, 0xff, 0x89, 0x5d, 0x2d, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_2777 = { .name = "xdh_wei448_2777", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2777_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2777_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2777_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2777_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 194 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2778 for XDH, tcId is 195 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2778_peerpubkey[] = { 0x62, 0xd4, 0x3d, 0x01, 0x52, 0x6d, 0xe4, 0xba, 0x9d, 0x3c, 0x2f, 0x2b, 0xf3, 0x06, 0xb7, 0x26, 0x26, 0xf6, 0xe1, 0xcc, 0xe0, 0x4d, 0xc4, 0x44, 0xd9, 0x80, 0xd1, 0xca, 0x21, 0x46, 0x5e, 0x26, 0x0c, 0x7b, 0xb1, 0x6a, 0x03, 0xe8, 0xa1, 0xa4, 0x41, 0x1c, 0x56, 0x83, 0xb6, 0xc6, 0xbb, 0x70, 0xf4, 0x72, 0x59, 0xdd, 0x0a, 0xcb, 0xab, 0x66, }; static const unsigned char xdh_wei448_2778_ourpubkey[] = { 0x2c, 0x8e, 0x91, 0xaa, 0x6c, 0x4b, 0xad, 0xa0, 0x2f, 0x15, 0x69, 0x05, 0xb8, 0x78, 0xf4, 0x5a, 0x67, 0x1b, 0x64, 0x46, 0x99, 0xb2, 0xca, 0xcc, 0x64, 0x13, 0x9a, 0x5f, 0x2f, 0x97, 0x5e, 0xbc, 0x78, 0x47, 0x34, 0xcb, 0xa7, 0x61, 0xca, 0x6e, 0x01, 0xcf, 0xc1, 0x6d, 0xe4, 0xf0, 0x38, 0xab, 0x9e, 0xa3, 0x3f, 0xec, 0x2b, 0x57, 0x99, 0x38, }; static const unsigned char xdh_wei448_2778_privkey[] = { 0xc4, 0xba, 0x8b, 0x0c, 0xce, 0x5e, 0x04, 0xa4, 0xce, 0x3b, 0xd6, 0xe0, 0x0e, 0xee, 0xcf, 0x36, 0x35, 0x91, 0x15, 0x75, 0x83, 0x7c, 0x60, 0xca, 0xad, 0x6a, 0xc0, 0xe9, 0x5a, 0x7e, 0xac, 0xa7, 0xe0, 0x4a, 0x16, 0x2a, 0xdf, 0x08, 0xb0, 0x97, 0x68, 0x17, 0x85, 0x46, 0xcc, 0x17, 0x8a, 0x79, 0xdf, 0xd5, 0x5f, 0xf8, 0x6e, 0x4d, 0x3b, 0xc6, }; static const unsigned char xdh_wei448_2778_sharedsecret[] = { 0xe1, 0x84, 0xf6, 0xc8, 0x85, 0x0e, 0xed, 0x31, 0xeb, 0x28, 0x0f, 0x4c, 0xb9, 0xa5, 0x1b, 0x8b, 0xbe, 0x87, 0xe2, 0x08, 0x53, 0xf1, 0xb6, 0x65, 0x86, 0x78, 0xfc, 0xa0, 0xa9, 0xa3, 0x3f, 0x74, 0xd6, 0x2b, 0x36, 0x2e, 0x64, 0x3c, 0x24, 0x23, 0x3c, 0xfb, 0x44, 0x4a, 0x01, 0x0c, 0x96, 0x04, 0xec, 0x59, 0x97, 0xbd, 0xae, 0x1d, 0xeb, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2778 = { .name = "xdh_wei448_2778", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2778_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2778_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2778_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2778_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 195 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2779 for XDH, tcId is 196 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2779_peerpubkey[] = { 0xc7, 0x68, 0x07, 0x37, 0x27, 0xc7, 0x65, 0x5e, 0xdd, 0xa7, 0xfa, 0xfe, 0x7a, 0x0a, 0xd7, 0xcb, 0x06, 0xc5, 0x41, 0xfe, 0x64, 0x94, 0xb8, 0xf3, 0x37, 0x4c, 0x55, 0xa9, 0x17, 0xe5, 0xc3, 0xfc, 0xf7, 0x46, 0x71, 0xf3, 0xda, 0x77, 0x38, 0x16, 0x9e, 0x57, 0xf6, 0x8d, 0xc0, 0x32, 0x13, 0x49, 0x1c, 0x8b, 0x17, 0xc0, 0xce, 0x5a, 0x18, 0x70, }; static const unsigned char xdh_wei448_2779_ourpubkey[] = { 0xeb, 0xee, 0x43, 0xd8, 0xfb, 0xaa, 0xed, 0x8d, 0xba, 0xaa, 0x14, 0xc8, 0xab, 0xc0, 0x20, 0x65, 0x0c, 0x70, 0xbf, 0x56, 0xc8, 0x88, 0xb8, 0xfe, 0xa0, 0xdc, 0x20, 0x0f, 0x39, 0x7d, 0xe2, 0xcd, 0xe4, 0xaf, 0x4a, 0x27, 0x50, 0x0d, 0x60, 0x5c, 0x30, 0x0b, 0x67, 0x09, 0x62, 0x4d, 0xb1, 0xa4, 0xde, 0x5d, 0xab, 0x85, 0x33, 0xb3, 0x01, 0x72, }; static const unsigned char xdh_wei448_2779_privkey[] = { 0xcc, 0x0d, 0x0c, 0x74, 0x08, 0x60, 0x16, 0x60, 0x9a, 0x02, 0xb6, 0x8e, 0x7e, 0xe7, 0x31, 0xa2, 0x80, 0xd9, 0xdf, 0x60, 0x94, 0x83, 0x86, 0xdc, 0x7c, 0xd7, 0xac, 0xdd, 0xb6, 0x9e, 0xbf, 0xc9, 0xb3, 0xf9, 0x6f, 0x60, 0x33, 0xd1, 0x03, 0xd4, 0xcc, 0x08, 0x61, 0x30, 0x6b, 0x96, 0xb5, 0xb5, 0xbd, 0xf4, 0xe1, 0x22, 0x13, 0xe4, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_2779_sharedsecret[] = { 0xb7, 0xd8, 0xdb, 0xad, 0xfd, 0xcd, 0xe8, 0xa6, 0x77, 0x18, 0x06, 0xd0, 0x95, 0x87, 0x99, 0xdf, 0x01, 0x6b, 0x4e, 0xb7, 0x30, 0x94, 0x9f, 0xa3, 0x76, 0x15, 0x6c, 0x65, 0xd4, 0xe5, 0x9f, 0x43, 0x96, 0x2f, 0xad, 0x95, 0xc3, 0x4b, 0xe8, 0x62, 0xa3, 0x9d, 0x67, 0xb6, 0xd0, 0x00, 0xee, 0x26, 0xdd, 0x10, 0xd2, 0x45, 0x27, 0x29, 0x53, 0x28, }; static const wycheproof_xdh_test xdh_wei448_2779 = { .name = "xdh_wei448_2779", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2779_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2779_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2779_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2779_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 196 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2780 for XDH, tcId is 197 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2780_peerpubkey[] = { 0x43, 0x3a, 0xfd, 0xd0, 0xe0, 0x22, 0x37, 0x56, 0x87, 0x7f, 0x23, 0x81, 0x2b, 0xa1, 0x06, 0x14, 0x52, 0xb2, 0xea, 0x7b, 0xb3, 0x12, 0x87, 0xcb, 0x61, 0xc7, 0x93, 0x35, 0xbc, 0x9b, 0xe1, 0xf0, 0xa3, 0xa3, 0x4b, 0xf4, 0xb5, 0xb3, 0x5e, 0x36, 0x25, 0xe2, 0x28, 0xec, 0xeb, 0x8c, 0x6d, 0x7a, 0xea, 0x57, 0xcb, 0x18, 0xaf, 0x80, 0x8f, 0xdb, }; static const unsigned char xdh_wei448_2780_ourpubkey[] = { 0xf0, 0x06, 0x0f, 0x23, 0xc1, 0x67, 0xbe, 0xec, 0xb9, 0x5c, 0x90, 0x37, 0x1c, 0x8b, 0x03, 0x3a, 0xaf, 0x65, 0x25, 0xcd, 0x96, 0xf2, 0x15, 0x37, 0x66, 0x9b, 0xee, 0xb4, 0x59, 0xc0, 0x27, 0xd4, 0x24, 0x7a, 0x75, 0x8a, 0x9b, 0x5f, 0x27, 0x1a, 0x42, 0xe6, 0x3f, 0x3b, 0x27, 0xa4, 0xd2, 0xa8, 0x43, 0xa3, 0xa4, 0x68, 0x33, 0x02, 0x43, 0x7d, }; static const unsigned char xdh_wei448_2780_privkey[] = { 0x5c, 0x1c, 0x65, 0x76, 0x62, 0x17, 0x1f, 0x6e, 0x2f, 0xcb, 0xe1, 0xab, 0x8c, 0x94, 0x02, 0xed, 0x22, 0xf2, 0x16, 0x5d, 0xa3, 0xdd, 0x8b, 0x27, 0x04, 0x92, 0x47, 0x49, 0x07, 0x7e, 0xf8, 0x96, 0x93, 0x04, 0x5b, 0xd6, 0xc5, 0x28, 0x4e, 0x6b, 0xf6, 0x9a, 0xd1, 0x4d, 0x34, 0xe3, 0xa2, 0xb8, 0xb4, 0x31, 0x48, 0x09, 0x59, 0x20, 0x24, 0xc4, }; static const unsigned char xdh_wei448_2780_sharedsecret[] = { 0x5e, 0x11, 0x31, 0x9b, 0xad, 0xa5, 0x84, 0xd0, 0xfc, 0xfc, 0x13, 0x73, 0xb2, 0x84, 0x2b, 0x2c, 0x9a, 0x07, 0xde, 0xb2, 0x02, 0x40, 0x29, 0xab, 0xbb, 0x60, 0xb1, 0x73, 0x67, 0x1a, 0xe4, 0x7e, 0x5d, 0xb5, 0x10, 0x9b, 0x6b, 0x0f, 0x1a, 0x26, 0xbc, 0xb7, 0x2a, 0x99, 0x7e, 0x5e, 0xd4, 0x47, 0xb8, 0xf8, 0x10, 0x58, 0xdd, 0xff, 0x13, 0x66, }; static const wycheproof_xdh_test xdh_wei448_2780 = { .name = "xdh_wei448_2780", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2780_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2780_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2780_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2780_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 197 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2781 for XDH, tcId is 198 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2781_peerpubkey[] = { 0x5c, 0x24, 0xfa, 0xde, 0x43, 0x6b, 0x48, 0xe5, 0x8e, 0x11, 0x34, 0x97, 0xd6, 0x5e, 0x50, 0xa6, 0x3c, 0xaa, 0x04, 0x94, 0x06, 0xa4, 0x0f, 0x8e, 0x97, 0x2b, 0x51, 0x6c, 0x43, 0xfd, 0xdb, 0x1f, 0x13, 0xa5, 0x9f, 0x30, 0x11, 0x2c, 0x41, 0x7c, 0xde, 0x5c, 0xd6, 0x49, 0xee, 0x9c, 0xdf, 0xcf, 0x07, 0xe6, 0x67, 0x84, 0x70, 0xb6, 0xfa, 0xdb, }; static const unsigned char xdh_wei448_2781_ourpubkey[] = { 0xf9, 0xfd, 0x73, 0xd3, 0x16, 0x38, 0xc2, 0x5d, 0xf8, 0x6c, 0xaf, 0x19, 0x5f, 0xfe, 0x6b, 0x91, 0x41, 0xb8, 0x10, 0xfe, 0x31, 0x39, 0x0e, 0xef, 0x3e, 0xbf, 0xd6, 0x7b, 0x51, 0x74, 0xd0, 0x83, 0x9b, 0x68, 0xb7, 0x33, 0x04, 0xbf, 0x1e, 0xc9, 0x18, 0xf4, 0x11, 0x0c, 0x54, 0xd4, 0x64, 0xb3, 0x91, 0x01, 0xa8, 0xef, 0x67, 0x32, 0x6a, 0x09, }; static const unsigned char xdh_wei448_2781_privkey[] = { 0xb0, 0xb9, 0xe0, 0xa0, 0xe7, 0xfb, 0x7f, 0x8c, 0xee, 0x5e, 0xed, 0x31, 0x0f, 0x8b, 0x1a, 0x56, 0xed, 0x78, 0x35, 0xb7, 0xd3, 0x1e, 0x67, 0x67, 0x16, 0xe5, 0xa9, 0x4c, 0xd9, 0xa6, 0x8d, 0xde, 0x28, 0xc9, 0x46, 0xe7, 0xd2, 0xba, 0x83, 0x34, 0xd3, 0x91, 0x32, 0x80, 0x51, 0xff, 0xfd, 0xbf, 0x57, 0x44, 0x7e, 0x3a, 0xa5, 0x6f, 0xdb, 0xfe, }; static const unsigned char xdh_wei448_2781_sharedsecret[] = { 0x5b, 0x6a, 0xc4, 0xd3, 0x8f, 0x9d, 0x67, 0x22, 0xaf, 0x38, 0x87, 0x99, 0x92, 0xf5, 0x52, 0x06, 0xc2, 0x3b, 0x99, 0xe0, 0xc3, 0x02, 0x87, 0x8a, 0x37, 0x25, 0xd8, 0x95, 0xbf, 0x93, 0x5a, 0x36, 0xf3, 0x40, 0xc9, 0x02, 0x8f, 0x7c, 0x56, 0x23, 0x98, 0xba, 0x97, 0x0c, 0x1c, 0x66, 0x1b, 0x2e, 0x37, 0x93, 0xd3, 0x3a, 0x56, 0xe6, 0xab, 0x04, }; static const wycheproof_xdh_test xdh_wei448_2781 = { .name = "xdh_wei448_2781", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2781_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2781_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2781_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2781_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 198 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2782 for XDH, tcId is 199 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2782_peerpubkey[] = { 0xb0, 0xda, 0xb2, 0xd1, 0x3d, 0xbe, 0x2b, 0xdc, 0x02, 0x84, 0x85, 0x55, 0x0c, 0xd6, 0x01, 0x2f, 0x05, 0x3b, 0xd3, 0x34, 0xe5, 0x83, 0x79, 0x66, 0x13, 0x98, 0x57, 0xa7, 0x06, 0xfe, 0xff, 0x56, 0x97, 0x44, 0xfd, 0xaf, 0xea, 0xf4, 0x23, 0x30, 0xcb, 0x68, 0xb0, 0x3f, 0x34, 0xfb, 0xb0, 0xa0, 0x44, 0x34, 0xdf, 0x1a, 0x45, 0x22, 0x1b, 0xf7, }; static const unsigned char xdh_wei448_2782_ourpubkey[] = { 0x3c, 0xeb, 0x34, 0x9e, 0xbf, 0xd4, 0x5f, 0xde, 0xa7, 0x6f, 0x48, 0xec, 0x51, 0xef, 0xbb, 0xb1, 0x3e, 0xbd, 0x69, 0xa6, 0x16, 0x70, 0x23, 0x2d, 0x42, 0x34, 0x28, 0x06, 0xa8, 0x17, 0x69, 0x64, 0xa8, 0xa6, 0x15, 0x28, 0xa5, 0x96, 0xd9, 0xcd, 0x8a, 0x09, 0x0d, 0x6b, 0x8c, 0xfd, 0xf4, 0x2d, 0x8f, 0x38, 0xe1, 0xc9, 0x66, 0x97, 0x82, 0x22, }; static const unsigned char xdh_wei448_2782_privkey[] = { 0xb4, 0x44, 0x9e, 0x88, 0x35, 0x52, 0x26, 0x79, 0x06, 0xf1, 0x53, 0xb6, 0x9e, 0x10, 0x8f, 0xe4, 0x4d, 0x03, 0xce, 0xd2, 0x2c, 0x52, 0x94, 0xca, 0xb5, 0x82, 0x0a, 0xce, 0x87, 0xab, 0x2e, 0xcf, 0x7b, 0x1e, 0x15, 0xea, 0x4f, 0x5f, 0x00, 0xef, 0x6f, 0x48, 0xfc, 0x99, 0x2c, 0xcd, 0xc7, 0xfa, 0x5e, 0xf4, 0x63, 0xf3, 0xc1, 0x48, 0x9e, 0xe5, }; static const unsigned char xdh_wei448_2782_sharedsecret[] = { 0xb5, 0x43, 0xcd, 0xdd, 0xe7, 0x44, 0x33, 0xde, 0x82, 0xad, 0xa4, 0xff, 0xa2, 0xaa, 0xe1, 0x5c, 0xf4, 0xfb, 0x34, 0xcc, 0xda, 0xe6, 0x61, 0x3a, 0x7a, 0x96, 0x1e, 0xef, 0xa6, 0xe0, 0x88, 0x7f, 0x59, 0x9e, 0x55, 0xaf, 0x54, 0x48, 0xc7, 0xbd, 0x5b, 0x01, 0xae, 0xfb, 0x47, 0xbb, 0xa8, 0xd6, 0x92, 0x4a, 0xf5, 0x12, 0x36, 0xbf, 0x93, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2782 = { .name = "xdh_wei448_2782", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2782_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2782_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2782_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2782_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 199 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2783 for XDH, tcId is 200 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2783_peerpubkey[] = { 0xc2, 0x75, 0x46, 0x67, 0x80, 0xe7, 0x56, 0x0c, 0x46, 0x6a, 0xf8, 0x66, 0xe0, 0x61, 0xf6, 0x76, 0x7d, 0xbf, 0x18, 0xb4, 0x14, 0x96, 0x40, 0x2b, 0xc1, 0x55, 0x02, 0x28, 0xa3, 0xd0, 0x5e, 0x96, 0x92, 0xb2, 0x7c, 0xcc, 0xa2, 0xb7, 0x3b, 0xa4, 0x8c, 0x06, 0x38, 0xd9, 0x5f, 0xdb, 0x54, 0x6f, 0xa8, 0xa6, 0x61, 0xbe, 0xed, 0xcb, 0xc4, 0x13, }; static const unsigned char xdh_wei448_2783_ourpubkey[] = { 0xf2, 0x58, 0xb3, 0x19, 0x62, 0xcd, 0xb1, 0x2a, 0x7d, 0x03, 0x48, 0x7c, 0xbb, 0x27, 0x2c, 0x0d, 0x59, 0xd0, 0xf1, 0x21, 0xc7, 0x8a, 0x1a, 0x7f, 0xe5, 0xb4, 0x41, 0x96, 0x38, 0xee, 0x93, 0x1d, 0x81, 0x4a, 0x03, 0x89, 0x1b, 0x39, 0x83, 0x86, 0xd3, 0x29, 0x98, 0xbb, 0x7e, 0x5d, 0x9a, 0x40, 0xe0, 0x2a, 0xc9, 0x61, 0x9c, 0x56, 0x68, 0x30, }; static const unsigned char xdh_wei448_2783_privkey[] = { 0xd4, 0xf3, 0xf2, 0xdd, 0x24, 0x56, 0x23, 0x45, 0x52, 0x99, 0xcc, 0xa0, 0x37, 0x43, 0x41, 0xaf, 0x75, 0x87, 0x70, 0xa4, 0xad, 0x2f, 0xb1, 0x92, 0x7c, 0x15, 0x07, 0x4a, 0x73, 0x46, 0xa0, 0x9f, 0x41, 0xc9, 0xd1, 0xd6, 0x91, 0x40, 0xfc, 0x81, 0xcc, 0x67, 0xc0, 0x66, 0x66, 0xee, 0x37, 0x60, 0x6a, 0xbc, 0x46, 0x9e, 0x04, 0x62, 0x2a, 0xf6, }; static const unsigned char xdh_wei448_2783_sharedsecret[] = { 0xa8, 0x37, 0xed, 0x51, 0xff, 0x99, 0x28, 0x41, 0x7e, 0x1e, 0x6b, 0x2d, 0xc9, 0x27, 0xc4, 0x4b, 0x59, 0xe1, 0xa7, 0x6d, 0xa7, 0x86, 0x4b, 0x65, 0xfd, 0x12, 0x67, 0x09, 0x82, 0x2c, 0x7d, 0x8d, 0x93, 0x9e, 0x77, 0x78, 0xdc, 0x8f, 0xd8, 0x1c, 0xd3, 0x0b, 0x6c, 0x1d, 0x62, 0x1f, 0xbc, 0x2d, 0xa0, 0x07, 0x0e, 0xc2, 0x0e, 0xdf, 0x5e, 0x88, }; static const wycheproof_xdh_test xdh_wei448_2783 = { .name = "xdh_wei448_2783", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2783_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2783_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2783_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2783_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 200 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2784 for XDH, tcId is 201 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2784_peerpubkey[] = { 0xe8, 0x8e, 0x97, 0x65, 0xa7, 0x61, 0x4e, 0x1b, 0xb8, 0xf9, 0x7f, 0xef, 0x3b, 0x3b, 0xcb, 0x99, 0xe0, 0x5e, 0x15, 0x96, 0x1b, 0x69, 0x39, 0xf6, 0x02, 0x2e, 0x5a, 0x32, 0xc4, 0x88, 0xa8, 0x71, 0x80, 0x62, 0x93, 0xd7, 0x6e, 0x32, 0xe3, 0x93, 0x15, 0x7a, 0x95, 0xfc, 0xe8, 0xed, 0xa8, 0x34, 0x15, 0x40, 0xc4, 0xd4, 0x9c, 0xdd, 0xc3, 0x3f, }; static const unsigned char xdh_wei448_2784_ourpubkey[] = { 0xff, 0x19, 0x84, 0x36, 0x3c, 0x16, 0xb0, 0xab, 0x59, 0x88, 0xb5, 0xe8, 0x86, 0xe5, 0xd4, 0x6b, 0x61, 0xae, 0xf2, 0x2f, 0x6b, 0x4f, 0x4c, 0xb3, 0x99, 0xa8, 0xf7, 0x0c, 0x8c, 0xe1, 0xec, 0x87, 0x79, 0xa5, 0xe4, 0xe5, 0xb5, 0x15, 0x35, 0xbd, 0x0e, 0xc3, 0x87, 0x41, 0x81, 0x8a, 0x12, 0xb2, 0xfe, 0x0e, 0x84, 0x8d, 0x84, 0x4a, 0x10, 0xfc, }; static const unsigned char xdh_wei448_2784_privkey[] = { 0x88, 0xc6, 0x5b, 0xf5, 0xb0, 0xe2, 0x14, 0x74, 0x0d, 0xe3, 0x40, 0xf9, 0xbb, 0x56, 0x74, 0xaa, 0x9b, 0xc7, 0x1d, 0x3e, 0xdf, 0x3d, 0x6a, 0xe5, 0x1b, 0x53, 0xc3, 0x92, 0xf4, 0xe2, 0x7b, 0x82, 0x38, 0x93, 0x7e, 0x31, 0xbd, 0xa4, 0xb8, 0xaa, 0x8f, 0xf4, 0x1c, 0xe9, 0x8f, 0x45, 0x7e, 0x62, 0xfc, 0x97, 0x61, 0xb7, 0xd3, 0x2d, 0x61, 0xfc, }; static const unsigned char xdh_wei448_2784_sharedsecret[] = { 0x79, 0xc3, 0x10, 0x61, 0x37, 0x1a, 0xe6, 0xa2, 0x37, 0x42, 0x48, 0x29, 0x9c, 0x2f, 0x53, 0x2e, 0x33, 0xf4, 0x0d, 0x4e, 0x3f, 0x34, 0x18, 0xd3, 0xaa, 0x51, 0x53, 0xd9, 0x45, 0x0c, 0x3d, 0x62, 0xa6, 0xf4, 0x88, 0x30, 0x81, 0x4b, 0xb2, 0xf2, 0xe9, 0x63, 0x63, 0xb8, 0x9d, 0xe8, 0x34, 0x00, 0x68, 0x12, 0xd9, 0x41, 0xe4, 0x2d, 0xd6, 0x38, }; static const wycheproof_xdh_test xdh_wei448_2784 = { .name = "xdh_wei448_2784", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2784_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2784_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2784_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2784_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 201 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2785 for XDH, tcId is 202 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2785_peerpubkey[] = { 0x8c, 0x42, 0xb7, 0xe3, 0x7b, 0x44, 0xaf, 0xcc, 0x09, 0x01, 0x0d, 0x97, 0xad, 0x6e, 0x1b, 0x78, 0x94, 0x01, 0x3d, 0x37, 0x7c, 0x5c, 0x2f, 0x1a, 0x75, 0xe9, 0x62, 0x8d, 0xd6, 0x23, 0x91, 0x88, 0x90, 0xca, 0x5f, 0x28, 0x48, 0x82, 0xec, 0x10, 0xc9, 0x37, 0x66, 0xf8, 0xe7, 0xd6, 0xc0, 0x60, 0x55, 0x49, 0x76, 0x46, 0x0b, 0x56, 0xe6, 0x72, }; static const unsigned char xdh_wei448_2785_ourpubkey[] = { 0x31, 0x7c, 0x9a, 0xbb, 0x0e, 0x33, 0x9a, 0x1b, 0x99, 0x40, 0x9b, 0xbf, 0x27, 0x28, 0x09, 0x83, 0x17, 0xd8, 0x17, 0x9e, 0x8a, 0xe5, 0xdc, 0xdc, 0x09, 0x56, 0xa0, 0xee, 0x68, 0xce, 0xf6, 0x18, 0xb2, 0xb7, 0xc6, 0xea, 0x6a, 0xf6, 0x63, 0x10, 0xef, 0xde, 0x72, 0xb0, 0x23, 0x3e, 0x7b, 0x27, 0xae, 0xc4, 0x51, 0x53, 0x2d, 0xaa, 0x47, 0x91, }; static const unsigned char xdh_wei448_2785_privkey[] = { 0x4c, 0xee, 0x71, 0x80, 0xf9, 0x3c, 0x8e, 0xb7, 0xae, 0x9e, 0x7c, 0x2a, 0xd7, 0x1c, 0x0c, 0x95, 0xb9, 0x34, 0x91, 0xc3, 0x01, 0x06, 0xd3, 0x38, 0x52, 0x0d, 0xe7, 0x4e, 0xdb, 0x9a, 0x9c, 0x62, 0x18, 0x98, 0xca, 0x56, 0xf6, 0x37, 0x61, 0x9b, 0x86, 0xbb, 0xb1, 0xef, 0xfb, 0xcd, 0xad, 0x9a, 0x08, 0x04, 0xeb, 0xca, 0x3b, 0xc7, 0x64, 0xd4, }; static const unsigned char xdh_wei448_2785_sharedsecret[] = { 0x26, 0xba, 0x56, 0x2a, 0x13, 0x81, 0x75, 0x59, 0xa2, 0x1a, 0xba, 0x7a, 0x7f, 0xfd, 0xc9, 0x24, 0xe9, 0x0d, 0xbb, 0x2c, 0xd3, 0x25, 0xb6, 0x1f, 0x8f, 0x71, 0x63, 0xa5, 0x7e, 0xe0, 0x13, 0x69, 0xa3, 0xee, 0x29, 0x7e, 0xb3, 0x98, 0xe8, 0x39, 0x3e, 0xf9, 0x3b, 0x00, 0x27, 0x66, 0x85, 0x2b, 0x18, 0x2b, 0x61, 0x68, 0xfb, 0x59, 0xf5, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_2785 = { .name = "xdh_wei448_2785", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2785_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2785_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2785_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2785_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 202 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2786 for XDH, tcId is 203 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2786_peerpubkey[] = { 0xc6, 0xfc, 0x42, 0xbb, 0x4b, 0x0e, 0xb8, 0x08, 0x16, 0xd7, 0xd2, 0xa3, 0x6d, 0x6d, 0xdc, 0xdd, 0xa2, 0x88, 0xdc, 0xb7, 0x4f, 0xf5, 0xa6, 0x08, 0x69, 0x89, 0x22, 0xe8, 0xa4, 0x36, 0x5c, 0xf1, 0x0c, 0x99, 0x63, 0x7d, 0xf5, 0x5e, 0x49, 0x13, 0x83, 0xe3, 0x37, 0x85, 0x39, 0xf9, 0x05, 0x3c, 0xae, 0xc0, 0x82, 0x00, 0xab, 0xa8, 0x85, 0x9d, }; static const unsigned char xdh_wei448_2786_ourpubkey[] = { 0xdf, 0x21, 0x6b, 0xbf, 0x54, 0xe0, 0x4f, 0x01, 0xdb, 0xcc, 0x2e, 0x55, 0xe2, 0x55, 0x93, 0x2c, 0x0d, 0x97, 0xea, 0xc3, 0xf1, 0xd3, 0xe1, 0x16, 0x3e, 0x84, 0x22, 0xaf, 0x64, 0x4c, 0x43, 0x85, 0x1a, 0x04, 0xc5, 0xfe, 0x26, 0x05, 0xb4, 0x1a, 0xaa, 0xfb, 0x1f, 0x67, 0x6c, 0xcb, 0x4c, 0x7d, 0xbe, 0x97, 0xd0, 0x9c, 0xc9, 0x29, 0x94, 0x2a, }; static const unsigned char xdh_wei448_2786_privkey[] = { 0x8c, 0x94, 0x27, 0xed, 0x2a, 0x45, 0x6c, 0xad, 0x50, 0x18, 0xa7, 0xf6, 0xfb, 0xd2, 0xa3, 0x03, 0xd5, 0x8a, 0x6d, 0x90, 0xf1, 0xbc, 0x6c, 0x14, 0x82, 0x01, 0xac, 0xae, 0x16, 0x1c, 0x47, 0xbf, 0x25, 0xa0, 0x99, 0x56, 0x98, 0x8e, 0xb9, 0xdc, 0x4d, 0x25, 0xf9, 0x23, 0xcb, 0x61, 0xe1, 0x7e, 0x07, 0x4c, 0xfd, 0x76, 0x2b, 0x82, 0xdb, 0xc6, }; static const unsigned char xdh_wei448_2786_sharedsecret[] = { 0x0c, 0x38, 0xc7, 0x52, 0xcf, 0x0b, 0x55, 0x73, 0x3b, 0x27, 0xeb, 0xc4, 0xe1, 0x1a, 0x68, 0x7e, 0x61, 0x81, 0x9a, 0xef, 0x50, 0x3e, 0x40, 0xbc, 0xbb, 0xc9, 0x14, 0xd1, 0x68, 0x85, 0x97, 0x02, 0x14, 0x4b, 0x0c, 0xf8, 0xe6, 0x16, 0x7e, 0x74, 0x8b, 0xc3, 0x30, 0xc0, 0x2d, 0x14, 0xa1, 0xcb, 0x53, 0x6e, 0x79, 0xb2, 0x3b, 0x3e, 0x28, 0x46, }; static const wycheproof_xdh_test xdh_wei448_2786 = { .name = "xdh_wei448_2786", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2786_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2786_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2786_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2786_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 203 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2787 for XDH, tcId is 204 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2787_peerpubkey[] = { 0x71, 0xf3, 0xb6, 0x2f, 0xbe, 0x3c, 0xf0, 0x5f, 0xde, 0x7a, 0x1e, 0x29, 0xdf, 0x2b, 0x7d, 0x25, 0xb0, 0xbe, 0x60, 0x54, 0x63, 0x94, 0x8e, 0xb6, 0xa7, 0x8f, 0x79, 0x04, 0x1a, 0x58, 0x77, 0x2c, 0xc5, 0x2c, 0xaf, 0xa5, 0x4a, 0x3d, 0x18, 0x7d, 0xbc, 0x9e, 0xa0, 0xb9, 0x88, 0xce, 0x57, 0xa5, 0x6c, 0x50, 0x99, 0x3c, 0x19, 0x0a, 0xce, 0xc2, }; static const unsigned char xdh_wei448_2787_ourpubkey[] = { 0xce, 0x2c, 0x51, 0x2b, 0x7e, 0x2d, 0x07, 0x28, 0xca, 0xdf, 0x3e, 0x13, 0x1d, 0x1e, 0x2f, 0x34, 0xf2, 0x6f, 0x9f, 0xcc, 0xae, 0x06, 0x4a, 0x53, 0x47, 0x60, 0x06, 0xf9, 0x40, 0xe1, 0x9a, 0x4a, 0x3d, 0x6f, 0x22, 0x8d, 0x6e, 0xc1, 0xe7, 0x35, 0xcc, 0x6e, 0x0d, 0x69, 0x0c, 0x70, 0x0a, 0x48, 0x05, 0xd5, 0xd6, 0x9a, 0x28, 0x6a, 0x55, 0x86, }; static const unsigned char xdh_wei448_2787_privkey[] = { 0x74, 0xb0, 0x8f, 0x37, 0x3f, 0xe6, 0x63, 0xd3, 0x82, 0x16, 0xbc, 0x3a, 0x29, 0xca, 0x5b, 0x43, 0x3b, 0x6f, 0x63, 0xe4, 0xbd, 0x0a, 0xfa, 0xaf, 0xb1, 0x35, 0xca, 0x13, 0x48, 0x0a, 0x96, 0xb2, 0x11, 0xae, 0xeb, 0xbe, 0x8c, 0x7f, 0x54, 0x3f, 0xf8, 0xaf, 0xe0, 0xc5, 0x7a, 0xc0, 0xcc, 0x66, 0xf0, 0x92, 0xfa, 0x32, 0x78, 0xd4, 0x1f, 0xfc, }; static const unsigned char xdh_wei448_2787_sharedsecret[] = { 0x10, 0x63, 0x07, 0x86, 0x6f, 0x10, 0x44, 0x10, 0x7a, 0xfd, 0xaa, 0xde, 0xb4, 0x4e, 0x7b, 0x33, 0x42, 0x2d, 0x0b, 0x8b, 0xbe, 0x17, 0x0d, 0x0d, 0xc0, 0x6f, 0xc5, 0xd4, 0x03, 0x51, 0x17, 0xbf, 0x24, 0xd3, 0xc6, 0x0c, 0xaa, 0xe8, 0x84, 0x9c, 0x1a, 0x89, 0x26, 0xe4, 0x8e, 0x8e, 0x8c, 0xbc, 0x19, 0xf3, 0x66, 0x2e, 0x0d, 0x02, 0x32, 0x09, }; static const wycheproof_xdh_test xdh_wei448_2787 = { .name = "xdh_wei448_2787", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2787_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2787_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2787_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2787_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 204 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2788 for XDH, tcId is 205 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2788_peerpubkey[] = { 0x16, 0x9d, 0x97, 0xbb, 0x31, 0x55, 0xa7, 0x0d, 0x50, 0xce, 0xee, 0x28, 0xb4, 0x23, 0xf2, 0x6e, 0x8e, 0x32, 0x56, 0x64, 0x9b, 0xd9, 0x90, 0x2c, 0x3c, 0xaa, 0x76, 0xd5, 0x3c, 0x40, 0xdb, 0x66, 0x12, 0x12, 0x53, 0x16, 0x1a, 0x53, 0x3e, 0x9f, 0x02, 0x83, 0x01, 0x97, 0xd4, 0x1d, 0xb3, 0xe1, 0x1c, 0x9c, 0xc2, 0xd3, 0xb3, 0x4e, 0xfe, 0x1d, }; static const unsigned char xdh_wei448_2788_ourpubkey[] = { 0x98, 0xff, 0xe3, 0x37, 0x4b, 0xc5, 0x50, 0x73, 0x50, 0x2c, 0x42, 0x90, 0xdc, 0x13, 0x57, 0x9a, 0xcb, 0xa5, 0xe5, 0xd4, 0xd7, 0x06, 0x3c, 0xf1, 0x98, 0x42, 0xc3, 0x74, 0xba, 0xa9, 0x34, 0x6e, 0x69, 0xb9, 0x85, 0x2e, 0x22, 0x67, 0x09, 0x0a, 0x5b, 0xaa, 0x8e, 0x5c, 0xa7, 0xbb, 0x02, 0xfb, 0x73, 0xdd, 0x10, 0xfa, 0xcb, 0x35, 0x41, 0x7b, }; static const unsigned char xdh_wei448_2788_privkey[] = { 0x94, 0x0c, 0xa8, 0xb8, 0x03, 0x4f, 0xe7, 0xbe, 0x8f, 0x18, 0xc5, 0x1b, 0x94, 0xbf, 0xb7, 0x69, 0x07, 0x1e, 0xf1, 0x1c, 0x8d, 0xa0, 0xab, 0x22, 0x0f, 0xbf, 0x70, 0xd2, 0x8b, 0x4c, 0xe0, 0x32, 0x67, 0x5d, 0x9b, 0xf8, 0x0b, 0xaa, 0x68, 0x9a, 0xa7, 0x92, 0x8b, 0x7d, 0x11, 0xcc, 0x1a, 0xf4, 0x80, 0x54, 0x24, 0x50, 0x76, 0xf6, 0xc1, 0xc8, }; static const unsigned char xdh_wei448_2788_sharedsecret[] = { 0xbc, 0xb2, 0xc7, 0xf5, 0xb7, 0x9f, 0x87, 0x4f, 0xbb, 0x53, 0xee, 0x23, 0x86, 0x37, 0x29, 0x55, 0x52, 0x80, 0xad, 0x03, 0xab, 0xdf, 0xa3, 0x50, 0xb0, 0x86, 0xc3, 0xf8, 0xd6, 0x58, 0xdd, 0x6e, 0xfe, 0x43, 0x08, 0x7b, 0xdc, 0x51, 0x6a, 0x10, 0xb5, 0x02, 0x26, 0x42, 0xc1, 0x20, 0xb3, 0xb2, 0x83, 0x3c, 0x7b, 0xf1, 0x35, 0xb9, 0x1a, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2788 = { .name = "xdh_wei448_2788", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2788_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2788_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2788_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2788_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 205 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2789 for XDH, tcId is 206 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2789_peerpubkey[] = { 0x68, 0x1c, 0xad, 0x6f, 0x89, 0xe7, 0xc7, 0xcc, 0x9a, 0x39, 0x9b, 0x53, 0xe0, 0x95, 0xef, 0xed, 0x7f, 0x28, 0x67, 0x71, 0x35, 0x58, 0x47, 0xfb, 0x9f, 0x2d, 0x47, 0x5a, 0x17, 0xed, 0x2c, 0xb5, 0xd4, 0x2a, 0xc3, 0xb0, 0x6a, 0x9d, 0x54, 0xef, 0xc8, 0xe0, 0x4c, 0x7e, 0xa0, 0x3d, 0xed, 0x4e, 0x0a, 0x13, 0xa8, 0x39, 0xa4, 0x18, 0x55, 0x52, }; static const unsigned char xdh_wei448_2789_ourpubkey[] = { 0x58, 0xf1, 0xab, 0x41, 0x0c, 0x42, 0x21, 0x7b, 0x70, 0xf0, 0x33, 0xaa, 0x43, 0x69, 0xcd, 0x84, 0x45, 0xb0, 0x95, 0x0a, 0xcb, 0xa1, 0x70, 0x60, 0x80, 0xbc, 0x9b, 0x85, 0xcb, 0xc6, 0x46, 0x67, 0xb1, 0xc4, 0x2a, 0x57, 0x72, 0xe9, 0x67, 0x38, 0xc3, 0xa0, 0xca, 0xa6, 0x24, 0x1c, 0xf8, 0xa8, 0xc4, 0x80, 0xcb, 0x2f, 0x5b, 0x80, 0xd4, 0xb7, }; static const unsigned char xdh_wei448_2789_privkey[] = { 0xb4, 0xfc, 0x0a, 0xd3, 0x1e, 0xe4, 0x5f, 0xe9, 0x6d, 0x78, 0xa1, 0x42, 0xfd, 0xaa, 0xee, 0xa4, 0x88, 0x74, 0xc1, 0x3e, 0x50, 0xb3, 0xcc, 0x1b, 0x21, 0x25, 0x65, 0x5b, 0x0e, 0x6c, 0xdd, 0x0f, 0x0f, 0xcf, 0x05, 0xdd, 0xe6, 0xaa, 0x24, 0x81, 0x3d, 0x89, 0xe3, 0x27, 0x7b, 0x74, 0x16, 0x98, 0x2c, 0x63, 0x90, 0x96, 0x2c, 0x58, 0x41, 0xd6, }; static const unsigned char xdh_wei448_2789_sharedsecret[] = { 0x34, 0x4f, 0x21, 0xdc, 0x85, 0xe8, 0x52, 0xe6, 0x37, 0xbb, 0x25, 0x39, 0x93, 0x63, 0xa8, 0x5f, 0x93, 0x99, 0xae, 0xdd, 0x58, 0x75, 0x1f, 0x12, 0x29, 0x54, 0x9f, 0xd5, 0x1f, 0x9b, 0xf3, 0xd4, 0xe3, 0xda, 0x85, 0xb6, 0x33, 0xe9, 0x70, 0xeb, 0xbe, 0x2c, 0xb0, 0xc3, 0x05, 0x0a, 0x8e, 0xfa, 0xd2, 0xc0, 0xdc, 0x1f, 0x12, 0xcf, 0x9e, 0x20, }; static const wycheproof_xdh_test xdh_wei448_2789 = { .name = "xdh_wei448_2789", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2789_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2789_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2789_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2789_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 206 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2790 for XDH, tcId is 207 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2790_peerpubkey[] = { 0xfc, 0xea, 0xe5, 0x5f, 0xfb, 0x73, 0xef, 0xab, 0x59, 0x91, 0x43, 0xd5, 0xec, 0xb4, 0xeb, 0x27, 0x3e, 0xac, 0x00, 0x23, 0x98, 0x32, 0x67, 0xce, 0x37, 0x31, 0xd2, 0x59, 0xc4, 0x12, 0x89, 0xa0, 0x64, 0xeb, 0x1e, 0x01, 0x96, 0xf4, 0xb4, 0x21, 0x88, 0x39, 0xd3, 0x8c, 0x2b, 0x2d, 0xa4, 0x56, 0x4d, 0x9c, 0x9c, 0x4e, 0xee, 0xb0, 0x7d, 0x73, }; static const unsigned char xdh_wei448_2790_ourpubkey[] = { 0x90, 0x70, 0x4f, 0x6f, 0x30, 0xa1, 0x2f, 0x45, 0x35, 0x3e, 0xbf, 0x5c, 0xc2, 0xa1, 0x9d, 0x23, 0x2b, 0xda, 0xbc, 0x2a, 0x92, 0xdb, 0x09, 0xaf, 0x44, 0x01, 0x15, 0x4e, 0x2b, 0x4c, 0x3e, 0x12, 0xa7, 0x6a, 0x2a, 0x7b, 0x29, 0x0e, 0x1d, 0xb2, 0x45, 0x1c, 0x52, 0x47, 0x62, 0x2a, 0xdd, 0x42, 0x55, 0x04, 0x05, 0xb1, 0xf4, 0xa5, 0xbb, 0x8d, }; static const unsigned char xdh_wei448_2790_privkey[] = { 0x98, 0x6d, 0x41, 0x1e, 0x70, 0xc6, 0x75, 0x20, 0x06, 0xdc, 0xeb, 0xa8, 0x2a, 0xeb, 0x3c, 0xf0, 0x67, 0x02, 0xc3, 0x7b, 0x47, 0x01, 0x52, 0xf9, 0x84, 0x3a, 0x0f, 0x79, 0xdc, 0xe4, 0x30, 0x83, 0xde, 0x0a, 0x5b, 0x0b, 0x7d, 0xbc, 0x8d, 0x42, 0xf1, 0x17, 0x5d, 0xa7, 0x91, 0xae, 0x4a, 0x3a, 0xb7, 0x99, 0xaa, 0x42, 0x68, 0x78, 0x64, 0xeb, }; static const unsigned char xdh_wei448_2790_sharedsecret[] = { 0x18, 0x88, 0x4d, 0x24, 0x55, 0x04, 0x78, 0xe7, 0xff, 0x6d, 0xc8, 0xa3, 0xab, 0xe2, 0x14, 0x09, 0x50, 0x1d, 0x10, 0xe5, 0xe7, 0xb3, 0xc0, 0x11, 0x4e, 0x86, 0x6f, 0xcc, 0xf3, 0x28, 0xec, 0x06, 0x8d, 0x9a, 0x71, 0xcf, 0x0c, 0x23, 0x2a, 0xb7, 0x52, 0x0b, 0xc5, 0xff, 0xda, 0xc2, 0xfd, 0x17, 0x6b, 0xf9, 0xd4, 0xc2, 0xd6, 0xd3, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2790 = { .name = "xdh_wei448_2790", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2790_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2790_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2790_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2790_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 207 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2791 for XDH, tcId is 208 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2791_peerpubkey[] = { 0xbd, 0xb6, 0xdd, 0x23, 0x57, 0x83, 0x22, 0x3c, 0xcb, 0x04, 0x71, 0x44, 0x02, 0x0b, 0xd7, 0x9b, 0xc4, 0x89, 0x94, 0xfa, 0x0a, 0x2b, 0x83, 0x40, 0x6b, 0x31, 0xf8, 0xbd, 0xe5, 0x68, 0x24, 0x19, 0xa8, 0xd4, 0xd6, 0x51, 0x9f, 0xdb, 0xaa, 0x99, 0x5b, 0x65, 0x88, 0xa7, 0x16, 0x35, 0x28, 0x5e, 0x42, 0xd8, 0x7d, 0x81, 0xb3, 0x1d, 0x7f, 0xef, }; static const unsigned char xdh_wei448_2791_ourpubkey[] = { 0x8a, 0x81, 0xe8, 0xb2, 0xe7, 0x28, 0x39, 0x73, 0x92, 0x3a, 0xfc, 0xf9, 0xf8, 0xfc, 0xfb, 0xc0, 0x66, 0x1b, 0xce, 0x75, 0xa3, 0x25, 0x02, 0xb4, 0x0e, 0x3f, 0xbf, 0xe9, 0x91, 0x62, 0x0a, 0xea, 0x91, 0xb8, 0x45, 0x98, 0x2d, 0x69, 0x30, 0x47, 0xfb, 0x74, 0xeb, 0xf4, 0x5c, 0x90, 0xcb, 0x10, 0x9e, 0xd6, 0x84, 0xb7, 0xb5, 0x18, 0x99, 0x65, }; static const unsigned char xdh_wei448_2791_privkey[] = { 0xe0, 0xb3, 0x68, 0x6e, 0x8a, 0x99, 0xb8, 0x97, 0xf2, 0xf6, 0x76, 0xbe, 0xf1, 0x2a, 0x64, 0x4e, 0x5d, 0xa5, 0x72, 0x77, 0x7f, 0x69, 0xde, 0xd3, 0x41, 0xc8, 0xf8, 0x6d, 0x1a, 0x7b, 0x46, 0x30, 0x7f, 0xa2, 0xa6, 0x31, 0x64, 0x65, 0x2a, 0x74, 0x3b, 0x32, 0x1b, 0x31, 0x9a, 0xee, 0x53, 0x48, 0xdf, 0x1e, 0xb7, 0x0e, 0xa1, 0x40, 0x30, 0xea, }; static const unsigned char xdh_wei448_2791_sharedsecret[] = { 0x41, 0xd5, 0x40, 0x37, 0xec, 0xe4, 0x86, 0xf2, 0x1d, 0x64, 0x2e, 0x39, 0xc1, 0xa3, 0x75, 0x4c, 0x1b, 0xd3, 0x72, 0x2a, 0x5f, 0x45, 0x1c, 0xf2, 0xe3, 0x06, 0x5e, 0x0b, 0x74, 0xac, 0x87, 0x86, 0x19, 0x6c, 0xe3, 0x31, 0x61, 0xb5, 0x77, 0xb2, 0x8d, 0x7b, 0x21, 0xa8, 0xfe, 0x30, 0x35, 0x50, 0xea, 0xdc, 0x70, 0xb8, 0xa5, 0xb2, 0x7e, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2791 = { .name = "xdh_wei448_2791", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2791_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2791_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2791_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2791_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 208 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2792 for XDH, tcId is 209 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2792_peerpubkey[] = { 0xa2, 0x04, 0x8b, 0xf1, 0x1e, 0x9b, 0x23, 0xc4, 0xef, 0x9c, 0xb5, 0x4e, 0x00, 0x04, 0x4a, 0x25, 0xd0, 0xfa, 0x9d, 0x79, 0x38, 0x66, 0x50, 0xb1, 0x47, 0x2b, 0x06, 0x03, 0x97, 0x89, 0xbf, 0xd6, 0x88, 0x0c, 0xb4, 0x6a, 0x16, 0x5e, 0xd4, 0xb6, 0x5f, 0x6e, 0xb7, 0xac, 0x11, 0x86, 0xae, 0x32, 0xfc, 0x49, 0x82, 0x98, 0x70, 0x4c, 0xeb, 0xf4, }; static const unsigned char xdh_wei448_2792_ourpubkey[] = { 0xe8, 0x8c, 0xf0, 0xe8, 0xa6, 0x0e, 0x70, 0x8b, 0xb8, 0xc9, 0x5f, 0x3b, 0x4a, 0xf6, 0x95, 0x35, 0x63, 0x9e, 0xbe, 0x38, 0xee, 0x1e, 0x1f, 0x31, 0xff, 0xd6, 0xbd, 0x8c, 0x88, 0x61, 0xe8, 0xd2, 0xcd, 0x24, 0x13, 0x20, 0x85, 0xf9, 0x42, 0x64, 0x28, 0xc1, 0x2a, 0x05, 0x9f, 0xe1, 0x0e, 0x51, 0xe3, 0x8d, 0x5b, 0x20, 0xd0, 0x87, 0xac, 0x9b, }; static const unsigned char xdh_wei448_2792_privkey[] = { 0x28, 0x4a, 0x13, 0xb7, 0x14, 0x6b, 0xef, 0xf2, 0x15, 0xb4, 0xb1, 0x76, 0x22, 0xe2, 0x99, 0x6b, 0xe3, 0x02, 0xb3, 0x82, 0x13, 0x7b, 0xef, 0x0f, 0x12, 0x98, 0x1a, 0xfb, 0xec, 0xb8, 0xe6, 0x32, 0x68, 0x3e, 0x14, 0x64, 0x3a, 0x21, 0x5d, 0xcf, 0x84, 0xd9, 0x66, 0x3b, 0x23, 0x1c, 0x22, 0x01, 0x79, 0x1d, 0xc6, 0xd1, 0x5a, 0xec, 0xc8, 0xf0, }; static const unsigned char xdh_wei448_2792_sharedsecret[] = { 0x5f, 0x17, 0x51, 0xad, 0xb0, 0x29, 0x11, 0x9b, 0x34, 0xb3, 0xac, 0x6a, 0x55, 0x5a, 0x87, 0x1e, 0x72, 0x9c, 0x64, 0x46, 0x94, 0x80, 0xb7, 0x28, 0x5f, 0xfe, 0x8c, 0x6d, 0x39, 0x99, 0x37, 0x73, 0xcd, 0xa2, 0x05, 0xc8, 0xe5, 0xa8, 0x5e, 0xc1, 0x62, 0xb6, 0x4e, 0x54, 0x84, 0xac, 0x3b, 0xab, 0xdf, 0xa4, 0x55, 0xb2, 0x22, 0x34, 0x3a, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_2792 = { .name = "xdh_wei448_2792", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2792_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2792_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2792_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2792_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 209 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2793 for XDH, tcId is 210 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2793_peerpubkey[] = { 0x47, 0xe2, 0xf9, 0x07, 0xff, 0xc7, 0x71, 0x9f, 0x0e, 0x10, 0xae, 0x6c, 0x93, 0xa2, 0x37, 0xef, 0xd8, 0x5a, 0x73, 0x35, 0x00, 0x3a, 0x5b, 0x15, 0x8a, 0x6c, 0x63, 0xce, 0xc7, 0xcb, 0x62, 0xba, 0x50, 0x05, 0xc3, 0xfd, 0xc5, 0xc3, 0x70, 0x51, 0xac, 0x1f, 0x38, 0x1f, 0xf6, 0xa1, 0x5b, 0x58, 0xb0, 0x0c, 0x0f, 0x5e, 0xdb, 0x47, 0xa1, 0xfd, }; static const unsigned char xdh_wei448_2793_ourpubkey[] = { 0x75, 0x3f, 0x2f, 0xf0, 0x5a, 0x45, 0xcf, 0x5c, 0xf0, 0xd2, 0x9b, 0x08, 0x99, 0xd4, 0xd8, 0x3e, 0xb3, 0xc2, 0xb9, 0x7b, 0xf1, 0x9f, 0x71, 0xc6, 0x1f, 0x74, 0x5d, 0xb1, 0x79, 0x33, 0x5c, 0x6a, 0xa5, 0xc5, 0x3e, 0x93, 0x74, 0x4b, 0x88, 0x28, 0x8e, 0x5b, 0xfa, 0x0d, 0x04, 0x68, 0x18, 0xeb, 0xb9, 0x51, 0x6c, 0x7d, 0xf9, 0xca, 0x8e, 0xec, }; static const unsigned char xdh_wei448_2793_privkey[] = { 0x84, 0x99, 0x39, 0x9b, 0x48, 0x69, 0x12, 0x6f, 0x19, 0x7c, 0xe3, 0xd9, 0x5f, 0xf6, 0x54, 0x65, 0xe4, 0x73, 0x0d, 0xc1, 0x46, 0x22, 0xbb, 0x1f, 0xf8, 0x84, 0x9a, 0xcb, 0xb0, 0x11, 0x85, 0xdd, 0x53, 0x52, 0x1f, 0x99, 0xed, 0x32, 0x11, 0xfd, 0xe6, 0xd2, 0x31, 0xbf, 0xb3, 0x30, 0x13, 0x25, 0xca, 0x4c, 0xc4, 0x61, 0xf8, 0x10, 0xc5, 0xd7, }; static const unsigned char xdh_wei448_2793_sharedsecret[] = { 0x94, 0xe4, 0xc0, 0x9b, 0xde, 0x5a, 0xc9, 0x72, 0x92, 0x8c, 0xea, 0x74, 0xa0, 0x7d, 0xf4, 0x13, 0x52, 0x92, 0xc5, 0x80, 0xa8, 0x4a, 0xe4, 0x44, 0x25, 0x7f, 0xfe, 0x5c, 0xae, 0xb4, 0xd7, 0x69, 0xe3, 0x2e, 0xdb, 0x41, 0x0f, 0xdb, 0x51, 0xf8, 0x00, 0x38, 0x0d, 0xf7, 0x04, 0xbd, 0x2c, 0x4f, 0x6e, 0x32, 0xcd, 0x5d, 0x20, 0x1b, 0x56, 0x08, }; static const wycheproof_xdh_test xdh_wei448_2793 = { .name = "xdh_wei448_2793", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2793_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2793_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2793_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2793_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 210 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2794 for XDH, tcId is 211 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2794_peerpubkey[] = { 0x6f, 0x8f, 0xd6, 0x68, 0x40, 0x33, 0x37, 0xc6, 0xa4, 0x91, 0xfb, 0x82, 0x59, 0x38, 0xa8, 0x68, 0x84, 0x36, 0x5e, 0x0c, 0x7c, 0x21, 0x77, 0x4c, 0x02, 0xa9, 0xd4, 0x33, 0x70, 0xc0, 0x10, 0xec, 0xb0, 0x2c, 0x5b, 0xc1, 0xf6, 0x9a, 0xd2, 0x48, 0x3a, 0xc1, 0xf3, 0xa2, 0x22, 0x7e, 0x91, 0x2f, 0x8b, 0x6b, 0x5d, 0x37, 0x01, 0x91, 0x8d, 0x2d, }; static const unsigned char xdh_wei448_2794_ourpubkey[] = { 0x9d, 0x5e, 0x48, 0xe5, 0x77, 0x2f, 0x6a, 0x68, 0x83, 0xa2, 0x54, 0x0f, 0x6f, 0x6d, 0x0f, 0x45, 0x81, 0x4a, 0x5f, 0x86, 0x96, 0x3b, 0x14, 0x45, 0x49, 0x9b, 0x2e, 0xad, 0x26, 0x39, 0x63, 0xb3, 0x96, 0xcd, 0x88, 0x03, 0xe5, 0x21, 0x8c, 0x3f, 0x66, 0x4a, 0x18, 0xef, 0x7e, 0xc6, 0xf0, 0xb6, 0xd9, 0xdf, 0x96, 0xa2, 0xb7, 0x18, 0x43, 0x57, }; static const unsigned char xdh_wei448_2794_privkey[] = { 0xc8, 0x9b, 0x1c, 0x81, 0xdf, 0x51, 0x7d, 0xe2, 0xa9, 0x44, 0x4e, 0x0c, 0x01, 0xdb, 0xec, 0x8f, 0x69, 0xb6, 0x30, 0x02, 0x75, 0x4c, 0xda, 0x17, 0x3a, 0xdf, 0x30, 0x98, 0xff, 0x6b, 0xe5, 0xd9, 0x47, 0x6c, 0x86, 0x30, 0x29, 0xb8, 0x9a, 0x55, 0x11, 0xce, 0xda, 0x19, 0x9a, 0x93, 0x87, 0x52, 0x18, 0xd7, 0x75, 0x7f, 0xfc, 0xe5, 0x0c, 0xfa, }; static const unsigned char xdh_wei448_2794_sharedsecret[] = { 0xf3, 0xc3, 0x2f, 0xd5, 0xdc, 0xbe, 0xd9, 0x8b, 0x8e, 0xbd, 0xae, 0xe7, 0x2e, 0xbd, 0xa9, 0x85, 0x42, 0x12, 0x53, 0x86, 0x29, 0xad, 0x49, 0x43, 0xbb, 0x32, 0xde, 0x03, 0xbb, 0xcf, 0x61, 0xf9, 0xdf, 0x8a, 0xc3, 0x8b, 0x33, 0xa7, 0x95, 0xcd, 0xf0, 0x1e, 0x3f, 0xbe, 0xb4, 0x3f, 0x36, 0xd8, 0x00, 0x85, 0x3f, 0x18, 0xb8, 0x61, 0x96, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2794 = { .name = "xdh_wei448_2794", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2794_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2794_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2794_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2794_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 211 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2795 for XDH, tcId is 212 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2795_peerpubkey[] = { 0x42, 0xb0, 0x87, 0xd5, 0xc0, 0xee, 0x80, 0xc6, 0x83, 0x11, 0x59, 0x2c, 0xe6, 0x00, 0xbe, 0x77, 0x37, 0xce, 0x36, 0xca, 0x1b, 0x09, 0xd5, 0xa0, 0x54, 0x98, 0x70, 0x90, 0xec, 0x2e, 0x69, 0xad, 0xdd, 0xbe, 0xff, 0x91, 0x6d, 0x11, 0xc9, 0x10, 0x26, 0x55, 0x56, 0x05, 0xb7, 0x7d, 0x36, 0xfe, 0x73, 0x84, 0xfd, 0x61, 0x88, 0x64, 0xb7, 0x43, }; static const unsigned char xdh_wei448_2795_ourpubkey[] = { 0x4b, 0x39, 0x41, 0xae, 0x9f, 0x4e, 0xa8, 0x37, 0x85, 0x7b, 0x89, 0xaa, 0xe6, 0x4d, 0xc9, 0x85, 0x14, 0x43, 0xb4, 0x8e, 0xcd, 0x89, 0x87, 0x7f, 0xf8, 0x5b, 0x36, 0x4b, 0x7e, 0x6b, 0xf4, 0x38, 0x37, 0xbf, 0xf1, 0xc5, 0x7c, 0xaf, 0x4e, 0x30, 0xb1, 0x6d, 0xb5, 0x3b, 0xbc, 0x3f, 0x97, 0x94, 0xa4, 0xb5, 0x1d, 0xe1, 0x73, 0xfc, 0x3c, 0xe1, }; static const unsigned char xdh_wei448_2795_privkey[] = { 0x6c, 0xaa, 0xae, 0x34, 0x24, 0x4f, 0xf9, 0xf3, 0x94, 0x42, 0x82, 0xe4, 0x95, 0x1d, 0x33, 0x7c, 0xd2, 0xec, 0x56, 0xc1, 0x18, 0x0d, 0x71, 0x6d, 0x15, 0x21, 0xe6, 0x38, 0x06, 0x23, 0xd7, 0xf6, 0xc9, 0x9b, 0x44, 0x55, 0x8a, 0xb8, 0x9a, 0x4f, 0xbd, 0xfc, 0x19, 0x10, 0x16, 0xd1, 0x30, 0x8d, 0x3e, 0xf4, 0xf8, 0x59, 0xcc, 0xde, 0xbc, 0xc1, }; static const unsigned char xdh_wei448_2795_sharedsecret[] = { 0x8b, 0xe1, 0xe0, 0x2f, 0x5c, 0x4b, 0x54, 0xaf, 0x63, 0x60, 0xfb, 0x2f, 0x60, 0xfb, 0xbf, 0x71, 0xb1, 0xbe, 0x92, 0xeb, 0xb3, 0x01, 0x17, 0xc6, 0x3b, 0x18, 0xef, 0x41, 0xfe, 0x6f, 0x1d, 0x95, 0xa2, 0xa5, 0x7f, 0xfe, 0x0a, 0x77, 0xff, 0xff, 0xaa, 0x33, 0x01, 0x99, 0x4c, 0x60, 0x22, 0xfa, 0xf2, 0x7f, 0x2a, 0xf0, 0x6a, 0x54, 0x7b, 0x20, }; static const wycheproof_xdh_test xdh_wei448_2795 = { .name = "xdh_wei448_2795", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2795_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2795_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2795_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2795_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 212 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2796 for XDH, tcId is 213 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2796_peerpubkey[] = { 0x7b, 0x01, 0x86, 0xa1, 0x53, 0xdc, 0x52, 0x44, 0x47, 0x46, 0xdd, 0x18, 0x5b, 0x9e, 0xa2, 0x74, 0xc3, 0x97, 0x2a, 0xdb, 0x97, 0x37, 0x9f, 0x85, 0x80, 0x13, 0xda, 0x1e, 0x97, 0xa8, 0x3a, 0xf4, 0xb4, 0xd1, 0xda, 0xd2, 0xfe, 0x6d, 0xbd, 0x82, 0x3a, 0xb8, 0x28, 0x70, 0x29, 0xfc, 0x77, 0x17, 0xc8, 0xdc, 0x75, 0x10, 0xca, 0x4d, 0x45, 0x6c, }; static const unsigned char xdh_wei448_2796_ourpubkey[] = { 0x49, 0x45, 0x3d, 0x0e, 0xa4, 0x49, 0xa1, 0xc8, 0x8a, 0xdd, 0x6d, 0x63, 0xc8, 0x7a, 0x42, 0xfb, 0x89, 0x77, 0x2b, 0x35, 0xe9, 0xdc, 0x8f, 0xf0, 0x93, 0x14, 0xef, 0x2a, 0xa5, 0xe5, 0x56, 0x98, 0x2e, 0x5f, 0xda, 0xc2, 0x0e, 0xa3, 0x3b, 0x6f, 0x62, 0x4d, 0x13, 0xdb, 0x46, 0xa8, 0x07, 0xc6, 0xbf, 0x3c, 0xf3, 0x90, 0x7f, 0x5e, 0x68, 0x04, }; static const unsigned char xdh_wei448_2796_privkey[] = { 0x68, 0x37, 0xe4, 0xbc, 0x8b, 0xdf, 0x43, 0xcd, 0x1a, 0x59, 0xeb, 0x1d, 0x7e, 0xe7, 0x4d, 0xa9, 0x7c, 0x5a, 0xaf, 0x7f, 0xdc, 0x89, 0x9e, 0x86, 0x07, 0x72, 0x0b, 0xd3, 0xff, 0x9f, 0x06, 0x0a, 0xcf, 0xcb, 0x3d, 0xb4, 0xec, 0x7f, 0x1e, 0x7b, 0xda, 0x47, 0x30, 0xc9, 0x72, 0xc7, 0x4c, 0x1e, 0xf3, 0x10, 0x6a, 0xfa, 0xab, 0xf3, 0x05, 0xf9, }; static const unsigned char xdh_wei448_2796_sharedsecret[] = { 0x96, 0xb3, 0x6c, 0x86, 0x51, 0x89, 0x15, 0x79, 0x93, 0x7f, 0x5c, 0x6e, 0x16, 0xd2, 0x71, 0x44, 0xa0, 0x37, 0x09, 0xb3, 0x39, 0xee, 0xda, 0xe5, 0x95, 0xb5, 0xe3, 0xbc, 0x98, 0xf2, 0xf8, 0x9f, 0xdc, 0xd7, 0xb2, 0x2c, 0x88, 0x9c, 0x60, 0xd4, 0xcb, 0xa3, 0x0b, 0x7a, 0x15, 0x07, 0x63, 0xf2, 0x92, 0xae, 0x31, 0x8b, 0xc9, 0xd0, 0x66, 0x92, }; static const wycheproof_xdh_test xdh_wei448_2796 = { .name = "xdh_wei448_2796", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2796_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2796_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2796_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2796_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 213 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2797 for XDH, tcId is 214 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2797_peerpubkey[] = { 0x07, 0xac, 0x3e, 0xdd, 0x9d, 0xaf, 0x1f, 0x5f, 0x4c, 0x8d, 0x95, 0x05, 0x66, 0xe5, 0xa0, 0x9a, 0xf8, 0x03, 0x54, 0x20, 0x12, 0x2d, 0x33, 0x55, 0xb1, 0xa7, 0x79, 0x66, 0xe8, 0x94, 0x64, 0xe4, 0xbb, 0x22, 0x19, 0x5d, 0xbd, 0x45, 0x68, 0xc0, 0xc8, 0xdb, 0x33, 0x0d, 0xf3, 0x80, 0xa8, 0xd1, 0x0b, 0xe8, 0xe7, 0x07, 0xd2, 0x41, 0xfb, 0xad, }; static const unsigned char xdh_wei448_2797_ourpubkey[] = { 0xcf, 0x67, 0x14, 0x0b, 0xe9, 0x04, 0x90, 0x40, 0x6a, 0x6c, 0x8c, 0xf3, 0xcb, 0x09, 0xea, 0x0d, 0xbc, 0xde, 0x84, 0x7f, 0xee, 0x08, 0x12, 0xce, 0x0a, 0x53, 0xb5, 0x6b, 0x0c, 0x0d, 0x7e, 0x62, 0xa0, 0x21, 0xc5, 0xdf, 0x88, 0x91, 0xa5, 0x4a, 0xdc, 0x5a, 0x20, 0x5a, 0x8d, 0x99, 0x21, 0x62, 0xce, 0x9d, 0x95, 0xe7, 0x28, 0xdf, 0x39, 0x8b, }; static const unsigned char xdh_wei448_2797_privkey[] = { 0x40, 0xee, 0x93, 0xef, 0xc8, 0x0c, 0x29, 0xea, 0xf9, 0xef, 0x1f, 0x84, 0xa9, 0x4b, 0xc2, 0xcd, 0xa8, 0xe1, 0xcb, 0x4c, 0x9d, 0x96, 0xb5, 0x91, 0x8b, 0x67, 0x3b, 0x65, 0x1d, 0xf4, 0xbd, 0x86, 0xce, 0x47, 0x78, 0x46, 0x8d, 0x6f, 0x77, 0x81, 0x93, 0x23, 0x6d, 0x74, 0x93, 0x80, 0x5f, 0xe4, 0x1e, 0x12, 0xd0, 0x87, 0x8a, 0x78, 0x88, 0xe4, }; static const unsigned char xdh_wei448_2797_sharedsecret[] = { 0xa4, 0xcf, 0x91, 0xac, 0xae, 0xac, 0xfd, 0x98, 0xcd, 0xea, 0xec, 0x54, 0xb2, 0xb9, 0x5d, 0x88, 0x51, 0xe0, 0x6b, 0xcd, 0xb0, 0x3b, 0x5b, 0x42, 0xf9, 0xc5, 0xb5, 0x97, 0xee, 0xbc, 0x35, 0x86, 0x8e, 0x48, 0x13, 0x18, 0x66, 0xc7, 0x4e, 0x9f, 0x9a, 0x15, 0xcf, 0x1b, 0x8c, 0xe5, 0x69, 0x2b, 0xc0, 0x93, 0xe7, 0x76, 0xd5, 0x50, 0xa1, 0x38, }; static const wycheproof_xdh_test xdh_wei448_2797 = { .name = "xdh_wei448_2797", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2797_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2797_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2797_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2797_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 214 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2798 for XDH, tcId is 215 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2798_peerpubkey[] = { 0x5c, 0xd9, 0x56, 0x61, 0x49, 0x5a, 0xa5, 0x05, 0xae, 0xc5, 0x5b, 0x5f, 0x93, 0xcd, 0xf0, 0x0b, 0x84, 0x56, 0xad, 0x61, 0x6e, 0x71, 0x61, 0xac, 0x2d, 0x98, 0x2e, 0x1b, 0xe8, 0x04, 0x7a, 0xaf, 0x34, 0x19, 0x75, 0xfd, 0x91, 0x57, 0xf0, 0xd0, 0xcb, 0xdd, 0x6b, 0xe5, 0x5e, 0x97, 0x10, 0x79, 0x6e, 0xf7, 0x04, 0xae, 0xf1, 0xf1, 0xfb, 0xbe, }; static const unsigned char xdh_wei448_2798_ourpubkey[] = { 0xb0, 0xba, 0xd8, 0xa5, 0x17, 0x07, 0x98, 0x84, 0xa6, 0xa7, 0x8a, 0x46, 0x49, 0x5a, 0x72, 0xad, 0x8e, 0x2c, 0xc5, 0xa4, 0x89, 0x42, 0x7d, 0x48, 0x33, 0x63, 0x35, 0x70, 0x96, 0x22, 0x21, 0xac, 0x60, 0x84, 0x44, 0x34, 0x5f, 0x5e, 0xd9, 0x0f, 0xb4, 0x57, 0x84, 0x0d, 0x62, 0x4d, 0xc8, 0x03, 0xe4, 0x2e, 0x36, 0x73, 0xd0, 0xec, 0xf2, 0x7d, }; static const unsigned char xdh_wei448_2798_privkey[] = { 0x4c, 0xda, 0x2c, 0xe7, 0x37, 0x20, 0xce, 0x44, 0x80, 0x70, 0x8d, 0x3a, 0x25, 0xce, 0x83, 0x8b, 0xce, 0x6a, 0x92, 0x2a, 0x32, 0xf1, 0x7b, 0x8a, 0xcc, 0x42, 0xff, 0xe0, 0xe8, 0x24, 0x13, 0x69, 0xa9, 0x4b, 0xaa, 0x34, 0x61, 0x58, 0xbf, 0x2e, 0x64, 0x95, 0x6c, 0x22, 0xee, 0xeb, 0xe0, 0x33, 0x9f, 0x2d, 0x48, 0x73, 0xa1, 0x86, 0x00, 0xc1, }; static const unsigned char xdh_wei448_2798_sharedsecret[] = { 0x47, 0xc4, 0x31, 0x3f, 0xa1, 0x95, 0xc3, 0xbc, 0x87, 0x4c, 0x76, 0xc3, 0x82, 0x71, 0xc7, 0x3b, 0xe7, 0x8a, 0x26, 0x53, 0x57, 0x46, 0x45, 0xea, 0xc0, 0x17, 0x97, 0x79, 0x4e, 0x99, 0x17, 0x95, 0x2a, 0xe6, 0xba, 0x3d, 0x12, 0x28, 0x51, 0xd6, 0xd8, 0x10, 0x3f, 0x16, 0x46, 0x03, 0x25, 0xa0, 0x5a, 0x91, 0x6f, 0x81, 0xe7, 0xa0, 0x8e, 0x66, }; static const wycheproof_xdh_test xdh_wei448_2798 = { .name = "xdh_wei448_2798", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2798_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2798_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2798_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2798_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 215 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2799 for XDH, tcId is 216 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2799_peerpubkey[] = { 0xd1, 0xf8, 0x70, 0x58, 0xc7, 0x3d, 0x44, 0x60, 0xd7, 0xb0, 0xdc, 0xbc, 0xaf, 0xb2, 0xe2, 0x69, 0x8f, 0x2c, 0xb5, 0x2f, 0x6a, 0x60, 0xc7, 0xd7, 0x80, 0xaa, 0x10, 0x0b, 0xd7, 0xe2, 0x08, 0x63, 0xb5, 0xe2, 0x62, 0xf7, 0xf3, 0x0f, 0x05, 0xe4, 0x30, 0xe8, 0xaf, 0x04, 0x12, 0xe7, 0x8e, 0x43, 0x33, 0xd6, 0xf0, 0x47, 0x64, 0x9e, 0xc2, 0x43, }; static const unsigned char xdh_wei448_2799_ourpubkey[] = { 0x2c, 0xd0, 0x64, 0x8a, 0xbb, 0xa2, 0x79, 0x0a, 0x2d, 0x6f, 0xd4, 0xec, 0xb4, 0xc2, 0xa3, 0x80, 0xe7, 0xbf, 0xc8, 0x3a, 0x26, 0xb0, 0x6e, 0xf6, 0xe1, 0x93, 0xb8, 0x83, 0x55, 0xad, 0x12, 0x3c, 0x4d, 0x44, 0x1a, 0x1e, 0x9b, 0x07, 0x2e, 0xac, 0x0b, 0xe0, 0xc4, 0xc9, 0xbc, 0xa0, 0xc6, 0x5a, 0x16, 0x8d, 0x2e, 0x0a, 0x54, 0x33, 0x06, 0xd4, }; static const unsigned char xdh_wei448_2799_privkey[] = { 0x00, 0x60, 0x98, 0xba, 0x9d, 0x67, 0x64, 0x4b, 0x94, 0x22, 0x10, 0xb1, 0x4d, 0x23, 0xed, 0xd2, 0xc7, 0x78, 0xeb, 0xf8, 0x94, 0x70, 0x67, 0xcd, 0x63, 0x95, 0x1a, 0xbf, 0xab, 0xdd, 0x77, 0x53, 0xff, 0xf7, 0x25, 0xb5, 0xfc, 0x5f, 0xe6, 0xd7, 0xf9, 0xa1, 0x2f, 0x49, 0x2c, 0x54, 0x56, 0x58, 0x73, 0x23, 0xa1, 0xcb, 0x1b, 0x05, 0x05, 0xef, }; static const unsigned char xdh_wei448_2799_sharedsecret[] = { 0xab, 0xfb, 0xa9, 0x4e, 0x98, 0xb0, 0xc5, 0x16, 0x4b, 0x25, 0xa8, 0xa4, 0xb9, 0xc6, 0x3a, 0x45, 0xea, 0xa6, 0xc4, 0xa8, 0x1e, 0x25, 0x4a, 0x2b, 0xb4, 0x28, 0x9f, 0xbd, 0x40, 0x3a, 0x69, 0x89, 0xe4, 0x05, 0xa5, 0xee, 0xce, 0x7c, 0x77, 0xc8, 0x66, 0x75, 0x1c, 0x00, 0xdd, 0x40, 0x13, 0x9c, 0x8c, 0xff, 0x1f, 0x48, 0x15, 0x82, 0xa0, 0xe5, }; static const wycheproof_xdh_test xdh_wei448_2799 = { .name = "xdh_wei448_2799", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2799_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2799_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2799_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2799_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 216 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2800 for XDH, tcId is 217 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2800_peerpubkey[] = { 0x73, 0xa6, 0x84, 0x20, 0xea, 0xe8, 0xb0, 0x98, 0x5e, 0xca, 0x5e, 0x2a, 0x13, 0x7d, 0x59, 0x0c, 0xeb, 0x16, 0x42, 0x02, 0xf2, 0x0a, 0x70, 0xd4, 0x2c, 0xc4, 0x9c, 0x33, 0x62, 0x8c, 0x55, 0xf2, 0x54, 0xef, 0x2e, 0xd5, 0xdd, 0x26, 0x21, 0x96, 0x36, 0x33, 0xf0, 0x8d, 0x67, 0xb2, 0xcf, 0xfe, 0x02, 0xf7, 0x39, 0x42, 0xc9, 0x48, 0x31, 0x52, }; static const unsigned char xdh_wei448_2800_ourpubkey[] = { 0xf9, 0x54, 0xdb, 0x7d, 0x04, 0x2c, 0x32, 0x4f, 0x84, 0xff, 0x2d, 0x9d, 0x35, 0x68, 0xb8, 0x85, 0x19, 0x55, 0x32, 0x81, 0x39, 0x34, 0xc8, 0x3c, 0x17, 0x18, 0x46, 0xbe, 0xdc, 0x41, 0x07, 0xb1, 0x3e, 0xb8, 0xfe, 0xc7, 0xe7, 0xa9, 0xbc, 0x1c, 0x4e, 0x78, 0x7f, 0xa5, 0x89, 0x5d, 0xcc, 0x19, 0x08, 0xab, 0x3e, 0x8e, 0x2d, 0x32, 0xce, 0xa6, }; static const unsigned char xdh_wei448_2800_privkey[] = { 0xcc, 0xc7, 0x0f, 0x6b, 0xf1, 0x65, 0x2f, 0xec, 0xb5, 0xe9, 0x47, 0x14, 0x55, 0xd9, 0x6b, 0x2f, 0x9f, 0xc4, 0x39, 0xf5, 0x52, 0xe2, 0x17, 0xd8, 0xf3, 0x08, 0x95, 0x5f, 0xab, 0x8b, 0xea, 0x9a, 0xa1, 0xa3, 0x79, 0x65, 0xe2, 0xcc, 0xea, 0x25, 0xe1, 0x98, 0x05, 0x1f, 0x38, 0xe9, 0x2d, 0x69, 0x7a, 0x03, 0x9f, 0x8d, 0xa0, 0x13, 0xf6, 0xc2, }; static const unsigned char xdh_wei448_2800_sharedsecret[] = { 0xed, 0x5a, 0xa6, 0x6c, 0xda, 0x6c, 0x0b, 0x9c, 0x6b, 0x40, 0x5e, 0x2b, 0x85, 0xca, 0x76, 0xf0, 0x4e, 0x3c, 0x82, 0x9a, 0x42, 0x6d, 0xe1, 0xf9, 0x12, 0x21, 0xa5, 0x81, 0x75, 0x68, 0x43, 0x0a, 0x8a, 0xdb, 0xfe, 0xbb, 0x87, 0xd8, 0xea, 0x4b, 0xcf, 0xd2, 0x8a, 0x50, 0xec, 0x97, 0x52, 0xb8, 0x06, 0xb4, 0xbc, 0xfe, 0x37, 0x7a, 0x65, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_2800 = { .name = "xdh_wei448_2800", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2800_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2800_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2800_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2800_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 217 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2801 for XDH, tcId is 218 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2801_peerpubkey[] = { 0xcc, 0x7e, 0xda, 0xd8, 0xab, 0x05, 0x35, 0x8a, 0x9a, 0x55, 0xe8, 0xbf, 0x20, 0xd9, 0x1e, 0x21, 0x4a, 0x67, 0x9f, 0x42, 0x78, 0x5f, 0xf0, 0x1d, 0x6d, 0xa6, 0x28, 0xee, 0xd1, 0x03, 0x7f, 0x64, 0xcc, 0xde, 0x9e, 0xa7, 0x50, 0x5d, 0x2d, 0x71, 0x20, 0xd7, 0x5b, 0xa5, 0x5b, 0x72, 0x0f, 0xef, 0xd5, 0x5c, 0xe4, 0x8e, 0xbd, 0xf2, 0xac, 0x5a, }; static const unsigned char xdh_wei448_2801_ourpubkey[] = { 0xcb, 0x0c, 0xa6, 0xbb, 0x91, 0xb6, 0x2d, 0xad, 0x32, 0xd1, 0x3e, 0x9b, 0xbf, 0x4f, 0x20, 0x32, 0x29, 0x83, 0xf8, 0x7f, 0x4f, 0x84, 0x06, 0x24, 0x6e, 0xb0, 0xa9, 0x09, 0xf9, 0x67, 0x5b, 0xa2, 0xc7, 0xc4, 0xa9, 0xf0, 0x6c, 0xed, 0xa1, 0x97, 0x73, 0xc9, 0xff, 0xf8, 0x4c, 0x0e, 0x2b, 0x5d, 0xa1, 0x60, 0x3a, 0xc1, 0x28, 0x0b, 0xe6, 0xb2, }; static const unsigned char xdh_wei448_2801_privkey[] = { 0x00, 0xf1, 0x5d, 0xf3, 0xa5, 0xc1, 0x86, 0xd3, 0x53, 0xb4, 0x80, 0xc7, 0x8a, 0x04, 0x5a, 0x77, 0xc9, 0x42, 0x00, 0x20, 0xdd, 0x43, 0xc0, 0x1f, 0x53, 0x61, 0xed, 0x26, 0xfd, 0x7d, 0x4d, 0xcf, 0x42, 0x94, 0x87, 0x0e, 0x77, 0x80, 0xad, 0xf4, 0x09, 0x9f, 0x93, 0x48, 0x72, 0x62, 0x2d, 0x30, 0x83, 0x60, 0x5c, 0xbc, 0x62, 0xb1, 0x8f, 0xd7, }; static const unsigned char xdh_wei448_2801_sharedsecret[] = { 0x04, 0xd2, 0x7f, 0x92, 0x64, 0xdb, 0x8d, 0xb7, 0x61, 0xd0, 0x5e, 0x30, 0x7f, 0xae, 0x84, 0xf2, 0x04, 0x48, 0x0f, 0x54, 0x59, 0xf9, 0xe4, 0x01, 0x30, 0xed, 0x77, 0x5c, 0x10, 0x12, 0xe6, 0x54, 0x11, 0x38, 0x08, 0x1b, 0xd8, 0xe2, 0xb0, 0x28, 0x3b, 0xfa, 0x50, 0x29, 0x57, 0x09, 0x6b, 0xdf, 0x34, 0x1e, 0x3a, 0x1f, 0x8c, 0x74, 0x82, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_2801 = { .name = "xdh_wei448_2801", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2801_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2801_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2801_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2801_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 218 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2802 for XDH, tcId is 219 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2802_peerpubkey[] = { 0xa3, 0xbc, 0x34, 0xe9, 0x6d, 0x26, 0xbc, 0x60, 0x44, 0x94, 0x18, 0x0e, 0x1d, 0x71, 0x6a, 0x02, 0x32, 0x74, 0xb0, 0x2a, 0x4a, 0x0c, 0x14, 0x71, 0xc5, 0x00, 0xf3, 0x91, 0x68, 0x98, 0xd3, 0x8e, 0xaf, 0x2e, 0x40, 0xa8, 0x3e, 0xb1, 0x7e, 0xee, 0xee, 0x3b, 0xca, 0x8a, 0xf0, 0x39, 0xe5, 0x7c, 0x50, 0x02, 0x37, 0xcd, 0x23, 0x6e, 0x90, 0xae, }; static const unsigned char xdh_wei448_2802_ourpubkey[] = { 0xdb, 0xee, 0x75, 0x3e, 0xf7, 0x8a, 0x9d, 0x0b, 0x8a, 0xf6, 0x0e, 0xcc, 0x8b, 0x19, 0xf8, 0xc3, 0x18, 0x00, 0xc6, 0x69, 0x6f, 0x08, 0x8e, 0xd3, 0xf6, 0x6c, 0xe2, 0xe8, 0x15, 0x1f, 0x0b, 0x57, 0xbe, 0x9d, 0x57, 0x9f, 0xd1, 0xd3, 0x83, 0x91, 0x7f, 0x5b, 0xe9, 0x62, 0x7e, 0xb0, 0x28, 0x6b, 0xff, 0x50, 0x25, 0x24, 0x5a, 0x12, 0xe9, 0x66, }; static const unsigned char xdh_wei448_2802_privkey[] = { 0xc0, 0x80, 0xc5, 0xd2, 0x32, 0x28, 0xf0, 0x63, 0x50, 0x4b, 0x6d, 0x98, 0x6b, 0xfb, 0x7d, 0xef, 0xb2, 0x71, 0x1a, 0x85, 0x7d, 0xaf, 0xb3, 0x31, 0xfe, 0xfd, 0x58, 0xa6, 0x5d, 0x92, 0x01, 0xea, 0xb2, 0x51, 0xd4, 0x7f, 0x25, 0x91, 0x67, 0x08, 0x6e, 0x22, 0xe9, 0x75, 0x9e, 0xc6, 0x56, 0x13, 0x17, 0x11, 0x28, 0x7f, 0xf1, 0x8d, 0xf6, 0xde, }; static const unsigned char xdh_wei448_2802_sharedsecret[] = { 0xff, 0x93, 0x56, 0x08, 0x71, 0xd2, 0x09, 0x94, 0x0c, 0xaf, 0xca, 0xe8, 0xc3, 0x21, 0x3e, 0xaf, 0x57, 0x76, 0x0c, 0x08, 0xaa, 0x80, 0xca, 0xf1, 0x5d, 0x86, 0x9d, 0x21, 0xb4, 0xb6, 0xa5, 0xe0, 0x0f, 0x6f, 0xce, 0x49, 0xef, 0xa1, 0x0a, 0xa1, 0x27, 0x95, 0x65, 0x6a, 0x9e, 0x8c, 0xe8, 0x92, 0x44, 0x45, 0x4c, 0xd5, 0x99, 0xea, 0x74, 0x10, }; static const wycheproof_xdh_test xdh_wei448_2802 = { .name = "xdh_wei448_2802", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2802_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2802_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2802_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2802_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 219 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2803 for XDH, tcId is 220 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2803_peerpubkey[] = { 0xdf, 0x65, 0xf6, 0x22, 0x9c, 0x4e, 0x17, 0x2e, 0x16, 0x7d, 0x7f, 0xdf, 0xa5, 0x75, 0xf6, 0xb3, 0xd2, 0x59, 0x23, 0x25, 0xbc, 0xa4, 0xc1, 0x5c, 0xcb, 0x3d, 0xbf, 0xee, 0x79, 0xc5, 0x96, 0x3d, 0xa2, 0x6d, 0x6e, 0x66, 0x7b, 0x6f, 0x5b, 0x06, 0x80, 0x14, 0x4a, 0x7a, 0x0b, 0x7d, 0x7d, 0xd3, 0x03, 0xac, 0xcb, 0x26, 0x97, 0x94, 0xb5, 0xe6, }; static const unsigned char xdh_wei448_2803_ourpubkey[] = { 0xb0, 0x97, 0x17, 0xff, 0xa3, 0x15, 0xcc, 0xa8, 0x9a, 0x3e, 0x2f, 0x8d, 0xc2, 0x12, 0x55, 0xd2, 0xd9, 0xb5, 0x8f, 0x04, 0xd5, 0xf3, 0x56, 0xac, 0x29, 0xfd, 0xed, 0x1f, 0x2c, 0xf9, 0x94, 0xf5, 0x86, 0xdb, 0xd5, 0x6e, 0x1a, 0x5d, 0xd4, 0xab, 0xf9, 0x99, 0x89, 0xf0, 0x86, 0x0f, 0xe4, 0x28, 0x8d, 0xf0, 0xe0, 0x87, 0xd0, 0x01, 0x0e, 0xef, }; static const unsigned char xdh_wei448_2803_privkey[] = { 0x44, 0x75, 0x26, 0x00, 0xc4, 0x67, 0xf9, 0xd8, 0xb3, 0xdb, 0x8e, 0xbc, 0xeb, 0xd1, 0x0a, 0x4a, 0x0c, 0xbc, 0x83, 0x81, 0x90, 0x33, 0x4a, 0xb5, 0x51, 0x36, 0x1b, 0xcc, 0x6b, 0x8e, 0x4a, 0x77, 0x50, 0x4d, 0xdc, 0xf9, 0xd0, 0xf5, 0x66, 0xda, 0x25, 0xf7, 0x5f, 0x92, 0xe9, 0x74, 0xd1, 0xda, 0xde, 0x4e, 0xf0, 0x44, 0xbe, 0xd8, 0x5d, 0xc6, }; static const unsigned char xdh_wei448_2803_sharedsecret[] = { 0xc2, 0x3b, 0x16, 0x2a, 0x2b, 0x47, 0xca, 0x28, 0xdc, 0x52, 0xb9, 0x05, 0x9c, 0xf7, 0x99, 0x9a, 0x69, 0x6f, 0x02, 0x88, 0x49, 0x31, 0x77, 0xbd, 0xa2, 0xcd, 0x1f, 0x62, 0x04, 0x25, 0xb8, 0x3b, 0x7c, 0x50, 0x59, 0x96, 0xe8, 0x93, 0x18, 0x43, 0xa1, 0xd7, 0x0b, 0x33, 0x4b, 0x64, 0x57, 0x4e, 0xde, 0x95, 0x8f, 0x33, 0x1a, 0x81, 0x45, 0xec, }; static const wycheproof_xdh_test xdh_wei448_2803 = { .name = "xdh_wei448_2803", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2803_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2803_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2803_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2803_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 220 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2804 for XDH, tcId is 221 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2804_peerpubkey[] = { 0x72, 0x11, 0x28, 0xb0, 0xf6, 0x5d, 0xbc, 0x88, 0x6f, 0xb8, 0xfd, 0x36, 0x6d, 0x68, 0xf7, 0xf9, 0xb5, 0xad, 0xf5, 0xd8, 0xbd, 0x60, 0x90, 0xff, 0x7d, 0x66, 0xc3, 0x84, 0x3f, 0xc1, 0x35, 0x6e, 0x16, 0x1b, 0x69, 0x9b, 0x97, 0x38, 0x02, 0xad, 0x2d, 0x32, 0x9d, 0x9f, 0x71, 0xeb, 0xec, 0x5e, 0xd1, 0xbd, 0x96, 0xf5, 0x30, 0xe3, 0x71, 0x56, }; static const unsigned char xdh_wei448_2804_ourpubkey[] = { 0xfe, 0x3c, 0x1c, 0x78, 0xd5, 0x1a, 0x8d, 0x48, 0xe9, 0x62, 0x40, 0xc4, 0x19, 0x02, 0x1a, 0x85, 0x78, 0x6c, 0x32, 0x8d, 0x9d, 0x80, 0x6e, 0x01, 0x03, 0x2f, 0x6f, 0x5c, 0x1a, 0xaf, 0xc4, 0x07, 0x82, 0x80, 0x41, 0xfc, 0x38, 0x1f, 0x20, 0x85, 0x26, 0x81, 0x64, 0xa2, 0x78, 0xa0, 0x10, 0x01, 0x83, 0x5f, 0x29, 0xe2, 0x4d, 0x25, 0x9e, 0x1a, }; static const unsigned char xdh_wei448_2804_privkey[] = { 0xc8, 0xb9, 0xca, 0xaf, 0x44, 0x7f, 0xcc, 0xf2, 0xf5, 0xce, 0x33, 0xea, 0xd9, 0xf6, 0x9d, 0x4a, 0x20, 0xd4, 0xfa, 0x61, 0xce, 0xb5, 0xf6, 0xf4, 0x6b, 0x9b, 0xa1, 0xd4, 0x31, 0x85, 0x90, 0x35, 0xc4, 0xc6, 0x5c, 0x3c, 0xcb, 0x24, 0x85, 0xff, 0xee, 0x4e, 0x2a, 0xe3, 0x2a, 0x65, 0x58, 0xcf, 0x6e, 0xa2, 0xe5, 0x7e, 0xd9, 0x89, 0x72, 0xe2, }; static const unsigned char xdh_wei448_2804_sharedsecret[] = { 0x45, 0xa5, 0x70, 0x77, 0x9f, 0xcd, 0x5f, 0x56, 0xd1, 0xfe, 0x79, 0xee, 0xd3, 0x44, 0x84, 0x1c, 0xf7, 0xdb, 0x47, 0x2e, 0x5f, 0x03, 0x9f, 0x23, 0x31, 0x06, 0x6b, 0x5b, 0x37, 0xfb, 0xe1, 0xdf, 0x1b, 0x46, 0x47, 0x2b, 0xf6, 0xe0, 0x6c, 0xcc, 0xac, 0x5e, 0xad, 0x88, 0xba, 0x60, 0x56, 0xe4, 0x55, 0xa7, 0x48, 0x28, 0x3b, 0x12, 0x65, 0x43, }; static const wycheproof_xdh_test xdh_wei448_2804 = { .name = "xdh_wei448_2804", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2804_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2804_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2804_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2804_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 221 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2805 for XDH, tcId is 222 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2805_peerpubkey[] = { 0xbd, 0x70, 0xd8, 0xac, 0x19, 0xa9, 0x7c, 0xe5, 0x00, 0x1d, 0x0f, 0xd8, 0x14, 0xe5, 0x9f, 0xd9, 0xdb, 0xbf, 0x0a, 0xe7, 0x4e, 0x82, 0xd9, 0xb7, 0x01, 0xa3, 0x62, 0xb4, 0x59, 0x86, 0x3c, 0xf0, 0xe6, 0x4a, 0xfc, 0x7b, 0x6d, 0x2d, 0xee, 0x51, 0xff, 0xed, 0x49, 0xee, 0xe8, 0x0a, 0xc9, 0x43, 0xa1, 0x3a, 0x53, 0xcb, 0x97, 0xbe, 0xeb, 0x7c, }; static const unsigned char xdh_wei448_2805_ourpubkey[] = { 0x4d, 0x95, 0x57, 0xd2, 0x48, 0xa7, 0xc2, 0x53, 0xb8, 0xaa, 0xb1, 0x5d, 0xdf, 0xe2, 0x62, 0x04, 0x96, 0x3c, 0x99, 0x49, 0x33, 0xfe, 0x15, 0x2c, 0xfc, 0x4d, 0xe4, 0x52, 0x47, 0x5c, 0xe2, 0x77, 0x8c, 0xc1, 0xc3, 0x6f, 0xae, 0xaf, 0xb1, 0x21, 0x00, 0x57, 0x53, 0x2e, 0xc5, 0x3d, 0x3f, 0xab, 0x64, 0x64, 0xc4, 0x65, 0x90, 0xdf, 0xeb, 0x18, }; static const unsigned char xdh_wei448_2805_privkey[] = { 0x38, 0xca, 0xb1, 0xc7, 0xec, 0xc2, 0xd5, 0x93, 0xe2, 0xe4, 0x6d, 0x94, 0xe6, 0x9a, 0xbf, 0x90, 0x81, 0xb7, 0x70, 0xeb, 0xfd, 0x68, 0xf7, 0x07, 0xf1, 0xdc, 0x53, 0x7b, 0x90, 0xd0, 0x50, 0x83, 0xa1, 0xbe, 0xae, 0x82, 0xe7, 0xc5, 0xbb, 0xdf, 0x47, 0x3c, 0x70, 0x05, 0x32, 0xe1, 0xda, 0xe8, 0x56, 0xa1, 0xcb, 0xcc, 0x6c, 0xa4, 0xb6, 0xc6, }; static const unsigned char xdh_wei448_2805_sharedsecret[] = { 0x91, 0x31, 0x7b, 0xe9, 0x45, 0x6d, 0xa5, 0x2a, 0x89, 0xb5, 0x91, 0x7c, 0x83, 0xe2, 0xdc, 0x39, 0xcb, 0x2c, 0x33, 0x3a, 0x7a, 0xd1, 0x85, 0xe9, 0x9d, 0xe8, 0x5c, 0xa7, 0x4f, 0x2a, 0xca, 0x3a, 0xa1, 0xd6, 0xa1, 0x03, 0x7d, 0x9b, 0x2b, 0x44, 0xfb, 0x96, 0x63, 0x61, 0x8c, 0x78, 0x8c, 0x92, 0x67, 0x80, 0x9c, 0x0b, 0xdb, 0xcf, 0xb6, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_2805 = { .name = "xdh_wei448_2805", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2805_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2805_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2805_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2805_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 222 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2806 for XDH, tcId is 223 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2806_peerpubkey[] = { 0x5e, 0xa1, 0xa7, 0xad, 0xe3, 0x1e, 0x31, 0x4d, 0x37, 0x33, 0x5c, 0x25, 0xae, 0x2b, 0x74, 0x8d, 0x8b, 0x22, 0xbf, 0x47, 0x11, 0xdb, 0xdb, 0x5e, 0xbe, 0x17, 0x3f, 0xad, 0xa1, 0x90, 0x70, 0x03, 0x7c, 0x93, 0x50, 0x15, 0x01, 0x68, 0x8b, 0xaa, 0xbc, 0x75, 0xe2, 0xdd, 0x13, 0x19, 0xf1, 0x7e, 0xaa, 0x67, 0x55, 0xf7, 0x17, 0xb9, 0x7e, 0x86, }; static const unsigned char xdh_wei448_2806_ourpubkey[] = { 0x59, 0x2d, 0xe7, 0x89, 0xf4, 0x96, 0x6e, 0x20, 0xb4, 0x66, 0x80, 0xec, 0xfc, 0xcb, 0xd5, 0x38, 0x1e, 0x0b, 0x66, 0x2c, 0x9c, 0xce, 0x9c, 0x51, 0xf3, 0x19, 0xf0, 0x2e, 0xbe, 0x72, 0x33, 0x1c, 0xf5, 0x68, 0xad, 0x4d, 0xca, 0xd1, 0x37, 0x43, 0x7a, 0x9e, 0xaf, 0xde, 0xc2, 0x36, 0x74, 0x29, 0x96, 0x42, 0x48, 0x26, 0x66, 0x1b, 0xd6, 0xfc, }; static const unsigned char xdh_wei448_2806_privkey[] = { 0xfc, 0x44, 0x95, 0xf0, 0x85, 0xe8, 0x25, 0xdf, 0xb3, 0x8e, 0xe3, 0x84, 0xc9, 0xff, 0x3d, 0xfd, 0x05, 0x85, 0x3d, 0x29, 0xf7, 0x39, 0xd3, 0x03, 0x3c, 0x8f, 0x53, 0x3e, 0x7f, 0xd3, 0x2c, 0xe8, 0x81, 0x04, 0x62, 0x3e, 0x8b, 0x00, 0x44, 0x83, 0x2c, 0x82, 0x52, 0x57, 0xe4, 0xb3, 0x76, 0x51, 0x59, 0x0a, 0x95, 0x19, 0x41, 0x67, 0xa8, 0xce, }; static const unsigned char xdh_wei448_2806_sharedsecret[] = { 0xe8, 0x19, 0x6e, 0x7b, 0x85, 0xe7, 0x57, 0xe2, 0x6e, 0x7a, 0xa8, 0x2c, 0x18, 0xe9, 0x6e, 0x4a, 0xec, 0x58, 0x89, 0xf0, 0xb0, 0x3a, 0xd8, 0xb6, 0x03, 0x63, 0x51, 0x14, 0x87, 0xb6, 0x79, 0x9c, 0xed, 0xb9, 0xc4, 0xc8, 0x79, 0xa9, 0xd9, 0x94, 0x6f, 0xe4, 0x33, 0x5a, 0x73, 0xf0, 0xe9, 0x6b, 0x39, 0xda, 0x7b, 0x95, 0xa4, 0xc9, 0xa9, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_2806 = { .name = "xdh_wei448_2806", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2806_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2806_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2806_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2806_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 223 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2807 for XDH, tcId is 224 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2807_peerpubkey[] = { 0x92, 0x52, 0xa3, 0xa0, 0x8e, 0x02, 0x5d, 0x2d, 0x3a, 0x2a, 0xba, 0xf1, 0xb5, 0x77, 0x70, 0x3b, 0x34, 0xc4, 0x59, 0xbd, 0x34, 0x4d, 0xb4, 0xbd, 0x75, 0x86, 0x61, 0x1f, 0x4d, 0xa1, 0x10, 0x41, 0xbe, 0xe4, 0xc3, 0xae, 0xe3, 0x3e, 0x34, 0x38, 0x10, 0xcb, 0xaf, 0x88, 0x90, 0x2e, 0xd8, 0xd3, 0xad, 0xff, 0x25, 0x9d, 0x7d, 0x3c, 0x87, 0xd9, }; static const unsigned char xdh_wei448_2807_ourpubkey[] = { 0x11, 0x49, 0xc0, 0xc1, 0x35, 0x9a, 0x60, 0x02, 0xcc, 0xe0, 0x69, 0x91, 0x6c, 0xbf, 0xb3, 0x4c, 0xb6, 0x70, 0x9c, 0x76, 0xe0, 0x8b, 0xb2, 0xef, 0xcd, 0x76, 0x1d, 0xf7, 0xa3, 0x3b, 0x1e, 0x1e, 0xca, 0x54, 0x1b, 0x61, 0x32, 0xb1, 0xc6, 0xff, 0x15, 0x72, 0xf6, 0x4c, 0xac, 0x3d, 0x96, 0x7d, 0xa3, 0xac, 0xa8, 0x36, 0x39, 0x2e, 0x5d, 0xcc, }; static const unsigned char xdh_wei448_2807_privkey[] = { 0x28, 0x1c, 0xb9, 0xf5, 0x2a, 0xc1, 0x40, 0xc6, 0xc5, 0xa9, 0x5c, 0x01, 0xf1, 0x0d, 0x91, 0xa9, 0x32, 0x8d, 0xb2, 0x6d, 0xed, 0xb8, 0x5d, 0xa3, 0xf0, 0x8c, 0x0e, 0xe6, 0x88, 0xfb, 0xfa, 0x5c, 0x05, 0xdd, 0x2e, 0x57, 0xb3, 0x78, 0xfd, 0xe2, 0x13, 0xd3, 0x80, 0x8d, 0x2c, 0xe4, 0xd7, 0xd3, 0xa8, 0x95, 0x8e, 0x55, 0x29, 0x1c, 0x2e, 0xef, }; static const unsigned char xdh_wei448_2807_sharedsecret[] = { 0x2a, 0x01, 0xd7, 0x62, 0xe7, 0x2a, 0xdb, 0x84, 0x7a, 0x5e, 0x99, 0x4a, 0x6e, 0x1d, 0x1a, 0x21, 0x1d, 0xd9, 0xbc, 0xa1, 0x48, 0x78, 0x04, 0xb8, 0x56, 0x3f, 0xfc, 0x40, 0xa5, 0x93, 0x84, 0xce, 0xbf, 0x76, 0xb6, 0xd3, 0x41, 0x1e, 0x1a, 0x9b, 0x53, 0xd4, 0x62, 0xac, 0xab, 0xe3, 0x59, 0xd2, 0x8d, 0x13, 0x4f, 0xe3, 0xe9, 0xad, 0x41, 0x10, }; static const wycheproof_xdh_test xdh_wei448_2807 = { .name = "xdh_wei448_2807", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2807_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2807_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2807_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2807_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 224 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2808 for XDH, tcId is 225 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2808_peerpubkey[] = { 0x44, 0x3a, 0x43, 0x33, 0xd6, 0xb7, 0x30, 0xbb, 0xf1, 0xb8, 0xd8, 0x04, 0x9b, 0x85, 0xcf, 0x64, 0x84, 0xe3, 0x92, 0x94, 0x72, 0xc1, 0x1c, 0x8a, 0x48, 0x8e, 0x91, 0x74, 0x13, 0x98, 0x92, 0x92, 0x8f, 0x58, 0xd1, 0xdd, 0x56, 0x1b, 0x23, 0x9f, 0x06, 0x9b, 0x81, 0x7c, 0x57, 0x6e, 0x8e, 0xf8, 0xa8, 0xe3, 0xd1, 0xcb, 0x30, 0x60, 0xa2, 0xe8, }; static const unsigned char xdh_wei448_2808_ourpubkey[] = { 0x98, 0xbf, 0xc6, 0x4f, 0x1b, 0x27, 0x78, 0x0c, 0x01, 0x0f, 0xa5, 0xfb, 0xea, 0xaf, 0x6c, 0xda, 0x9e, 0xa5, 0xef, 0x70, 0x2c, 0x34, 0xb0, 0x4b, 0x46, 0x20, 0xbe, 0xf7, 0x02, 0x31, 0x84, 0xf6, 0xd8, 0x31, 0xef, 0xb4, 0xc8, 0xcb, 0x9d, 0xfc, 0xc5, 0xed, 0x7f, 0xce, 0x18, 0x64, 0x47, 0x8f, 0x28, 0xdc, 0xe9, 0xb8, 0x04, 0xfc, 0xbd, 0x89, }; static const unsigned char xdh_wei448_2808_privkey[] = { 0xb4, 0xc0, 0xd2, 0x5c, 0xc4, 0xf1, 0x41, 0x18, 0x0f, 0xec, 0xcc, 0xdf, 0x47, 0xc0, 0xab, 0xa2, 0x6c, 0x5d, 0x4d, 0x39, 0x0b, 0x0f, 0x64, 0x51, 0xf8, 0x67, 0x85, 0xf2, 0x50, 0xeb, 0x85, 0xd3, 0x54, 0xcf, 0xd8, 0xb5, 0x26, 0x99, 0x31, 0x5c, 0xf1, 0x15, 0x35, 0x1e, 0xc8, 0x00, 0xc8, 0x41, 0xbe, 0xb5, 0x0d, 0x9a, 0x9a, 0x03, 0x71, 0xcc, }; static const unsigned char xdh_wei448_2808_sharedsecret[] = { 0x23, 0xe7, 0x37, 0x3d, 0xf1, 0x17, 0x85, 0x61, 0x2e, 0xa7, 0x48, 0x25, 0xe9, 0x34, 0xd5, 0x60, 0xbb, 0x70, 0x93, 0x2a, 0x04, 0xeb, 0x81, 0xe3, 0x6b, 0xae, 0xc1, 0x93, 0xa3, 0xb7, 0x92, 0x14, 0x08, 0xb0, 0x45, 0xab, 0xb1, 0x1f, 0x01, 0x19, 0x8c, 0x88, 0xc3, 0x90, 0x28, 0x07, 0xd7, 0x42, 0x06, 0xff, 0xc4, 0x24, 0x36, 0x20, 0x39, 0x90, }; static const wycheproof_xdh_test xdh_wei448_2808 = { .name = "xdh_wei448_2808", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2808_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2808_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2808_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2808_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 225 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2809 for XDH, tcId is 226 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2809_peerpubkey[] = { 0x11, 0x41, 0x79, 0xc8, 0x9f, 0xc4, 0x91, 0x53, 0x44, 0xd5, 0xd5, 0x3b, 0x10, 0xec, 0x30, 0x43, 0x4a, 0x54, 0x07, 0x28, 0x95, 0x73, 0xab, 0xde, 0x0e, 0x06, 0xea, 0xe9, 0x3e, 0xec, 0x47, 0x74, 0x9e, 0x98, 0xe6, 0xd2, 0xb4, 0xb5, 0x09, 0x13, 0x0c, 0x2c, 0xf5, 0x08, 0x18, 0xbd, 0xf0, 0xaa, 0x52, 0xd1, 0xaa, 0x15, 0x66, 0xd9, 0x2b, 0xf0, }; static const unsigned char xdh_wei448_2809_ourpubkey[] = { 0x56, 0x3d, 0x8f, 0xe0, 0xdf, 0x71, 0x33, 0x99, 0xd5, 0xdf, 0x32, 0x6d, 0xed, 0xfe, 0xda, 0xef, 0x4a, 0x4b, 0x47, 0xb2, 0xac, 0x38, 0xe5, 0x52, 0xec, 0xd7, 0xff, 0x97, 0xff, 0x5f, 0x8c, 0x42, 0x53, 0x1f, 0x6b, 0x32, 0xfc, 0x52, 0x3f, 0x37, 0x87, 0xa2, 0xdd, 0xb6, 0xe2, 0xcc, 0x5f, 0x19, 0x2b, 0xdf, 0x19, 0xe7, 0xe1, 0x2a, 0xf3, 0xa4, }; static const unsigned char xdh_wei448_2809_privkey[] = { 0xd0, 0xb6, 0xb3, 0x75, 0x58, 0x7f, 0x46, 0xa6, 0x80, 0x0a, 0xe9, 0xbd, 0x54, 0x15, 0xf9, 0x6d, 0x9e, 0x12, 0xf7, 0xdf, 0x8b, 0x6b, 0xca, 0x17, 0x18, 0x8a, 0x1c, 0xd4, 0xe3, 0x96, 0xa4, 0x70, 0xfe, 0x82, 0x96, 0xba, 0xbb, 0x8f, 0xe8, 0x44, 0x2f, 0xab, 0x1a, 0x7f, 0x1b, 0xb2, 0x6c, 0x59, 0x73, 0x94, 0x25, 0x74, 0x2b, 0x59, 0x4c, 0xdc, }; static const unsigned char xdh_wei448_2809_sharedsecret[] = { 0x2a, 0x02, 0x11, 0xb6, 0xff, 0x30, 0xf2, 0xed, 0xba, 0xa4, 0x84, 0xa3, 0x04, 0x9a, 0x18, 0xac, 0xb7, 0xcf, 0x5b, 0xfc, 0x1f, 0x75, 0x1e, 0x66, 0xcd, 0xff, 0x91, 0xa0, 0x31, 0x6a, 0x94, 0xa9, 0xf8, 0x36, 0xd8, 0x02, 0xde, 0xa1, 0x15, 0xd4, 0x8c, 0x42, 0x37, 0x23, 0x28, 0x4b, 0xf3, 0x85, 0x90, 0x94, 0xec, 0x25, 0x65, 0x11, 0xd6, 0xb9, }; static const wycheproof_xdh_test xdh_wei448_2809 = { .name = "xdh_wei448_2809", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2809_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2809_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2809_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2809_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 226 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2810 for XDH, tcId is 227 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2810_peerpubkey[] = { 0xaf, 0xfe, 0xcc, 0xdd, 0x97, 0x49, 0x98, 0xae, 0xdf, 0x47, 0xea, 0x37, 0xe5, 0x67, 0x11, 0xce, 0x4d, 0x48, 0x78, 0xa3, 0x3d, 0x42, 0x0a, 0x46, 0xf1, 0x60, 0x87, 0x7b, 0x46, 0x38, 0x28, 0xbe, 0xd2, 0x8c, 0xcb, 0x1c, 0x84, 0xfb, 0x5a, 0x8c, 0x77, 0x5a, 0xe8, 0xb3, 0x1e, 0xa0, 0x66, 0xc3, 0xea, 0xaa, 0x36, 0x2f, 0xcb, 0xd1, 0x64, 0xf2, }; static const unsigned char xdh_wei448_2810_ourpubkey[] = { 0xe3, 0x17, 0x99, 0xc8, 0x29, 0xda, 0xcd, 0x54, 0x57, 0xda, 0xe2, 0xac, 0x57, 0x12, 0xc5, 0xb2, 0x46, 0x3b, 0x06, 0xb9, 0xa3, 0x6d, 0xf5, 0x97, 0xb9, 0x99, 0xf5, 0xdc, 0x2a, 0x11, 0x43, 0x79, 0x46, 0xcc, 0x55, 0x32, 0x40, 0x83, 0x24, 0x83, 0x39, 0x30, 0x65, 0x8e, 0x57, 0xcd, 0xdd, 0xbf, 0x92, 0xa1, 0xc5, 0x6e, 0x06, 0x68, 0xdc, 0x72, }; static const unsigned char xdh_wei448_2810_privkey[] = { 0x9c, 0x46, 0x49, 0x53, 0x01, 0xde, 0x30, 0x3e, 0x3e, 0x76, 0xd0, 0x7c, 0xe5, 0xbc, 0x54, 0x59, 0xdc, 0x31, 0xff, 0x16, 0x8e, 0xf8, 0x90, 0x42, 0x58, 0x5b, 0x65, 0x7c, 0x7a, 0xcc, 0x12, 0x02, 0xd2, 0xfb, 0xf5, 0xd6, 0xdc, 0xa3, 0xe0, 0x2c, 0x31, 0xec, 0x0d, 0xd4, 0xd5, 0xae, 0x9b, 0x76, 0x55, 0x9e, 0x58, 0x6a, 0x6e, 0x28, 0x32, 0xf2, }; static const unsigned char xdh_wei448_2810_sharedsecret[] = { 0xd3, 0x54, 0x8f, 0x0c, 0xf8, 0xbd, 0x05, 0x8c, 0x1f, 0x7e, 0x17, 0x26, 0x2f, 0xba, 0xd4, 0x5a, 0xf7, 0xfb, 0x75, 0x04, 0xc5, 0x62, 0x26, 0x2f, 0x02, 0xaa, 0xc5, 0xd2, 0x40, 0x93, 0xf4, 0x1b, 0x61, 0x4b, 0x4e, 0x63, 0xc1, 0xc7, 0xab, 0x0d, 0x73, 0xe9, 0x51, 0xc1, 0xf2, 0x7f, 0x71, 0x4c, 0xe0, 0xce, 0xc0, 0x21, 0xc6, 0x67, 0xe7, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2810 = { .name = "xdh_wei448_2810", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2810_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2810_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2810_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2810_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 227 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2811 for XDH, tcId is 228 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2811_peerpubkey[] = { 0x1b, 0xc5, 0x15, 0xb8, 0x8a, 0xff, 0x3e, 0x8a, 0x83, 0xbe, 0x39, 0x44, 0x24, 0xe1, 0xd8, 0x05, 0x4f, 0x7b, 0xdb, 0x40, 0xa0, 0x6e, 0xb5, 0xc3, 0xc9, 0xd0, 0x7f, 0xc0, 0xa7, 0xf5, 0x70, 0x9b, 0xcc, 0xeb, 0x6d, 0xdc, 0x1d, 0x4f, 0x8d, 0x6f, 0x5c, 0xcd, 0xf0, 0x17, 0xe0, 0x77, 0x06, 0xfd, 0xd6, 0x12, 0x71, 0xb3, 0x59, 0x87, 0x22, 0x01, }; static const unsigned char xdh_wei448_2811_ourpubkey[] = { 0x4d, 0x01, 0xf2, 0xbe, 0x53, 0x00, 0x26, 0x72, 0x1e, 0x16, 0x81, 0x65, 0xa6, 0x0d, 0xf4, 0x7d, 0xde, 0xa1, 0xb4, 0x4c, 0xf8, 0xcc, 0x1a, 0x75, 0x17, 0x68, 0x4f, 0xc3, 0x09, 0x1c, 0x04, 0x70, 0xae, 0x06, 0xd1, 0x62, 0x20, 0x22, 0xfd, 0x27, 0x71, 0xcb, 0xfe, 0x27, 0x9a, 0x5c, 0x93, 0xb5, 0xa4, 0x6b, 0x13, 0x4b, 0xff, 0xaa, 0x1c, 0x59, }; static const unsigned char xdh_wei448_2811_privkey[] = { 0xa8, 0x88, 0x61, 0x97, 0x6c, 0x6d, 0x17, 0x79, 0xfd, 0x8e, 0x17, 0x97, 0x6b, 0x4d, 0x69, 0xba, 0x76, 0x2d, 0x90, 0xc4, 0x03, 0xcd, 0xfa, 0x95, 0x8e, 0xf9, 0xa3, 0xd1, 0xb1, 0xf1, 0x9d, 0xc0, 0x17, 0x3e, 0x9d, 0x81, 0xbc, 0x68, 0x0c, 0x27, 0x6a, 0x69, 0x77, 0x11, 0xe5, 0x8b, 0x8f, 0x3b, 0x28, 0xee, 0x0b, 0x5d, 0xf5, 0x62, 0x35, 0x8f, }; static const unsigned char xdh_wei448_2811_sharedsecret[] = { 0xf4, 0xaf, 0x7d, 0x59, 0xa4, 0xeb, 0xaf, 0x9f, 0xe9, 0xc3, 0xbe, 0x54, 0x2f, 0x61, 0xc2, 0x71, 0xa2, 0xf4, 0x0f, 0x5a, 0x9b, 0x1c, 0x6d, 0xa1, 0xde, 0xf3, 0x9d, 0x93, 0x66, 0xc6, 0x95, 0xe0, 0xd9, 0x87, 0xd6, 0x4a, 0x8b, 0xa0, 0x23, 0x4d, 0x5a, 0x92, 0xe3, 0x88, 0xb9, 0xe8, 0xf3, 0xe1, 0x24, 0x94, 0x2a, 0xbd, 0x40, 0xb1, 0xfa, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2811 = { .name = "xdh_wei448_2811", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2811_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2811_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2811_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2811_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 228 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2812 for XDH, tcId is 229 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2812_peerpubkey[] = { 0x56, 0xf4, 0xcf, 0x0c, 0x6d, 0xdd, 0xf7, 0x82, 0xb7, 0x9c, 0x49, 0xef, 0x53, 0x72, 0xfc, 0xf5, 0x0d, 0x7c, 0x25, 0xb2, 0x53, 0x0f, 0x48, 0x73, 0xa0, 0xdc, 0x45, 0x0b, 0xfc, 0x82, 0xf6, 0xde, 0x9b, 0x7f, 0xf5, 0x2a, 0x4c, 0xe7, 0x53, 0x48, 0x39, 0x90, 0x21, 0x9d, 0xef, 0xf9, 0x98, 0x5d, 0xff, 0x38, 0x33, 0x23, 0x8f, 0x19, 0xaf, 0x37, }; static const unsigned char xdh_wei448_2812_ourpubkey[] = { 0xb6, 0x48, 0xee, 0xe7, 0xb4, 0xc3, 0x7a, 0x89, 0xe0, 0x7a, 0x7f, 0xf9, 0xc8, 0xf4, 0x08, 0x1e, 0xd1, 0xb7, 0x2c, 0x7e, 0x35, 0x2e, 0xc5, 0xee, 0xe9, 0x60, 0x08, 0xaa, 0x34, 0x1e, 0x1c, 0xf8, 0x88, 0xb2, 0x50, 0x8e, 0xfd, 0xfc, 0x0f, 0xa4, 0x24, 0x3e, 0x41, 0xcf, 0x24, 0x88, 0x99, 0x35, 0x33, 0x64, 0x02, 0x07, 0xca, 0xac, 0x9b, 0x72, }; static const unsigned char xdh_wei448_2812_privkey[] = { 0x10, 0xc8, 0x41, 0x04, 0xbf, 0x5c, 0xce, 0x41, 0xee, 0xc1, 0x43, 0xe4, 0xfe, 0x02, 0xb6, 0xca, 0x5a, 0x87, 0x54, 0x03, 0x4a, 0x46, 0xa3, 0x13, 0xa4, 0x8d, 0xa0, 0x6c, 0xba, 0x9f, 0x04, 0xc8, 0x4e, 0x3d, 0xe6, 0x35, 0x67, 0x3f, 0xbb, 0xb5, 0x0d, 0xe2, 0x78, 0x30, 0x30, 0x72, 0x97, 0x15, 0x9b, 0x91, 0x35, 0xf0, 0x28, 0xc3, 0x4a, 0x85, }; static const unsigned char xdh_wei448_2812_sharedsecret[] = { 0x41, 0x54, 0x8c, 0xe8, 0x0d, 0x1c, 0x09, 0xe6, 0x90, 0x3e, 0xa7, 0xb1, 0x8c, 0xc5, 0xb0, 0xb2, 0x68, 0xcb, 0x24, 0xb1, 0x2a, 0xaf, 0xd2, 0x2f, 0xd9, 0x16, 0xff, 0x40, 0x60, 0xd8, 0x9a, 0x12, 0x30, 0x22, 0xfa, 0x95, 0x08, 0x83, 0x6a, 0x08, 0x26, 0x95, 0xf5, 0x4a, 0xb5, 0x8b, 0xcc, 0x20, 0x24, 0xc9, 0x31, 0x6c, 0xe1, 0xe3, 0x2b, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2812 = { .name = "xdh_wei448_2812", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2812_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2812_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2812_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2812_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 229 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2813 for XDH, tcId is 230 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2813_peerpubkey[] = { 0x43, 0x03, 0xa6, 0x39, 0xa2, 0xe1, 0x68, 0x1c, 0xc9, 0x34, 0x5f, 0x86, 0x16, 0xc3, 0xb5, 0x03, 0x9a, 0x18, 0x89, 0x71, 0x35, 0xfc, 0x68, 0x0a, 0xd9, 0x11, 0x31, 0x6f, 0xba, 0x21, 0xba, 0x7d, 0x34, 0x12, 0xf7, 0x18, 0xe3, 0x9f, 0x4e, 0x3b, 0xfe, 0xe2, 0x75, 0x82, 0xff, 0x5f, 0xf1, 0x53, 0xa6, 0xe5, 0xbe, 0x18, 0x6d, 0x92, 0x45, 0xe0, }; static const unsigned char xdh_wei448_2813_ourpubkey[] = { 0x3d, 0xa1, 0x23, 0xc1, 0x0a, 0xfc, 0xb1, 0xa3, 0x22, 0x93, 0xa9, 0xcb, 0xda, 0xea, 0xb4, 0x3e, 0xab, 0x28, 0x12, 0x58, 0xc0, 0xc7, 0x68, 0xf1, 0x61, 0x5e, 0xa6, 0x00, 0xb6, 0xa8, 0x98, 0xc3, 0x49, 0xff, 0x4f, 0x72, 0x6c, 0x5f, 0xd6, 0x93, 0xde, 0xa7, 0xb5, 0x8b, 0x24, 0x4a, 0xd1, 0xda, 0x97, 0xe4, 0x4d, 0x1b, 0xad, 0xd1, 0xf3, 0xfe, }; static const unsigned char xdh_wei448_2813_privkey[] = { 0x80, 0xc8, 0x56, 0x04, 0x0c, 0xd9, 0x01, 0x13, 0xfa, 0x51, 0xc6, 0x48, 0xfd, 0x39, 0x6e, 0x76, 0x73, 0x29, 0xbc, 0x10, 0xbb, 0x6e, 0xbd, 0x8a, 0xfb, 0x41, 0xf5, 0x05, 0x5e, 0x84, 0x5f, 0x66, 0x8e, 0xd2, 0x92, 0xec, 0xec, 0xa8, 0x4d, 0x5f, 0xfb, 0xb3, 0xf7, 0x70, 0xe0, 0xb7, 0x44, 0xaf, 0xa2, 0x8e, 0x03, 0x9f, 0xf6, 0xee, 0x55, 0x91, }; static const unsigned char xdh_wei448_2813_sharedsecret[] = { 0x30, 0x75, 0x2a, 0x13, 0xe1, 0x7b, 0x32, 0xc9, 0xf9, 0xce, 0xdb, 0x9c, 0x01, 0x2e, 0xea, 0x63, 0x97, 0x00, 0xf2, 0x70, 0xbf, 0x6a, 0x8d, 0xf3, 0x50, 0x52, 0x1c, 0x54, 0xb1, 0x26, 0x40, 0x42, 0x47, 0xdc, 0x68, 0xfc, 0xd0, 0x49, 0x3a, 0xf6, 0x1e, 0x97, 0xb9, 0xf6, 0xdb, 0xff, 0xfa, 0xad, 0x1a, 0x88, 0x35, 0xa5, 0x6f, 0x13, 0x30, 0x22, }; static const wycheproof_xdh_test xdh_wei448_2813 = { .name = "xdh_wei448_2813", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2813_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2813_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2813_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2813_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 230 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2814 for XDH, tcId is 231 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2814_peerpubkey[] = { 0xb8, 0xd2, 0x9b, 0xc0, 0x8c, 0x77, 0xbd, 0xcb, 0xb3, 0x2d, 0xd4, 0x60, 0x57, 0x5f, 0x0d, 0xc3, 0xb8, 0xef, 0x5e, 0x08, 0x87, 0x51, 0xd4, 0x50, 0x6a, 0x8f, 0x16, 0x6e, 0x7f, 0x34, 0x02, 0xaa, 0x19, 0x1a, 0x7a, 0xde, 0x82, 0x49, 0xa2, 0x75, 0x9d, 0xfe, 0x70, 0x93, 0xac, 0xef, 0xef, 0xaf, 0x04, 0x72, 0x27, 0x77, 0xff, 0x5f, 0x84, 0xf5, }; static const unsigned char xdh_wei448_2814_ourpubkey[] = { 0x50, 0x93, 0xd3, 0x46, 0xd8, 0xea, 0xb9, 0x7d, 0x3d, 0xab, 0x91, 0x28, 0x59, 0x20, 0xd7, 0xf4, 0x89, 0x46, 0x86, 0x19, 0x3a, 0x16, 0xd4, 0x75, 0x7a, 0xeb, 0x28, 0xab, 0x2c, 0xc3, 0x46, 0xe6, 0xb0, 0x60, 0x98, 0xd0, 0x8a, 0x50, 0xe1, 0xd5, 0xe3, 0x8e, 0x70, 0xe2, 0x0a, 0x1c, 0x9b, 0xd3, 0x30, 0xd0, 0x38, 0xd6, 0x21, 0x2f, 0x75, 0x81, }; static const unsigned char xdh_wei448_2814_privkey[] = { 0xcc, 0xfb, 0x76, 0xa8, 0x2b, 0x43, 0x07, 0xe5, 0x61, 0xe9, 0xf7, 0xf4, 0x2b, 0x61, 0xb1, 0x88, 0x14, 0xe7, 0x8e, 0xa2, 0x00, 0x3f, 0x21, 0xf0, 0xcc, 0x7b, 0x92, 0xb4, 0x46, 0x23, 0xbd, 0x07, 0xe3, 0x1a, 0x77, 0x61, 0x92, 0x06, 0x32, 0x4f, 0xd1, 0x66, 0x28, 0xc5, 0x54, 0x37, 0x65, 0xf6, 0xde, 0x44, 0x29, 0x2a, 0x11, 0xf1, 0x50, 0x84, }; static const unsigned char xdh_wei448_2814_sharedsecret[] = { 0xb9, 0x80, 0x60, 0x2b, 0x7f, 0xce, 0x7c, 0x33, 0xdd, 0x25, 0x4a, 0x32, 0x8a, 0x97, 0xe2, 0x33, 0x30, 0x85, 0x79, 0xb4, 0x3c, 0x40, 0xb4, 0x75, 0x94, 0x2f, 0x75, 0xdb, 0xb1, 0xc7, 0x60, 0x77, 0xe6, 0x1f, 0x4c, 0xff, 0x78, 0xde, 0x26, 0xd4, 0xc1, 0x8e, 0x7f, 0xd5, 0x6c, 0x24, 0x67, 0x6e, 0xc2, 0xa3, 0xe3, 0x0c, 0xbb, 0x0c, 0xf4, 0xec, }; static const wycheproof_xdh_test xdh_wei448_2814 = { .name = "xdh_wei448_2814", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2814_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2814_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2814_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2814_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 231 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2815 for XDH, tcId is 232 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2815_peerpubkey[] = { 0x3e, 0x61, 0x64, 0xdb, 0x9f, 0x9e, 0x92, 0x74, 0xc9, 0xb8, 0xef, 0x2c, 0xfd, 0xab, 0x4c, 0xa0, 0xf5, 0x67, 0xd3, 0xf1, 0x5b, 0x33, 0xb3, 0xf5, 0x25, 0x46, 0x62, 0x96, 0x64, 0x89, 0x05, 0xd8, 0x51, 0x46, 0xbd, 0x6f, 0x9b, 0xfc, 0x63, 0x72, 0x5c, 0x22, 0x34, 0xf1, 0x8f, 0x21, 0xfd, 0x3e, 0xb3, 0x6f, 0x54, 0x06, 0xf5, 0xd0, 0xd1, 0x01, }; static const unsigned char xdh_wei448_2815_ourpubkey[] = { 0x3a, 0xa4, 0x45, 0x9c, 0xae, 0xd5, 0x6e, 0xe8, 0x07, 0x39, 0x23, 0xb5, 0x1e, 0xb3, 0xc5, 0xb2, 0xf4, 0x0c, 0xb6, 0xda, 0x21, 0xd8, 0x7d, 0x4d, 0xf2, 0x38, 0x2b, 0x98, 0xdb, 0xa5, 0x5d, 0x29, 0x94, 0x57, 0x4f, 0xa0, 0x80, 0x3c, 0xe1, 0x52, 0x5c, 0xe9, 0x25, 0xc2, 0x20, 0x6f, 0xc4, 0x44, 0xff, 0x4b, 0x5b, 0x88, 0x6d, 0xa0, 0x98, 0x1a, }; static const unsigned char xdh_wei448_2815_privkey[] = { 0xd8, 0x3c, 0x17, 0xb9, 0x3d, 0xb4, 0xf2, 0x9f, 0xfc, 0x95, 0x4f, 0x8e, 0x36, 0x37, 0xd3, 0x52, 0x04, 0x19, 0x20, 0xf6, 0x8b, 0xa8, 0x91, 0x4e, 0x40, 0x50, 0x31, 0x8c, 0xcd, 0xd3, 0xc6, 0xc3, 0x40, 0x2c, 0x64, 0x1a, 0x56, 0x67, 0x3d, 0x72, 0x72, 0x77, 0x74, 0x35, 0x7a, 0x82, 0x64, 0x85, 0xa8, 0x00, 0xa0, 0xa0, 0x06, 0xdf, 0x8e, 0x9c, }; static const unsigned char xdh_wei448_2815_sharedsecret[] = { 0x84, 0xef, 0xdc, 0x92, 0x07, 0x1a, 0xb9, 0xa8, 0xc4, 0xbd, 0xa2, 0x09, 0xa7, 0x0b, 0x7d, 0xf1, 0x15, 0x4e, 0xc6, 0x73, 0xae, 0x5d, 0x44, 0xdf, 0x01, 0x46, 0x0d, 0x2b, 0x37, 0x5e, 0x3a, 0x5e, 0xc5, 0x1b, 0x48, 0x5a, 0xb7, 0xb4, 0xd4, 0x49, 0xe9, 0x90, 0xc0, 0xe4, 0xe8, 0x2b, 0xd3, 0x38, 0xa1, 0x08, 0x91, 0x0f, 0x0a, 0x49, 0xed, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_2815 = { .name = "xdh_wei448_2815", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2815_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2815_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2815_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2815_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 232 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2816 for XDH, tcId is 233 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2816_peerpubkey[] = { 0x3c, 0x84, 0x5e, 0x04, 0x5d, 0xd2, 0x1f, 0x7f, 0x8e, 0x21, 0x85, 0xb6, 0xb6, 0x88, 0x4f, 0x06, 0x2b, 0x52, 0xda, 0x23, 0x63, 0x78, 0xd9, 0x0a, 0x5a, 0x87, 0x3f, 0xc8, 0x4a, 0x7a, 0x6e, 0x65, 0x26, 0x50, 0x08, 0xf4, 0x5b, 0x43, 0xcf, 0x27, 0x50, 0xa2, 0x47, 0x6b, 0xef, 0x65, 0x7c, 0x34, 0x04, 0x55, 0xdc, 0x9f, 0xae, 0x3d, 0xbb, 0x05, }; static const unsigned char xdh_wei448_2816_ourpubkey[] = { 0xec, 0xe3, 0xf8, 0xa0, 0x97, 0x80, 0xdd, 0xcb, 0xb8, 0x75, 0xbb, 0x43, 0xb0, 0x92, 0xd2, 0x76, 0xa9, 0x1d, 0x5d, 0xb9, 0x89, 0x08, 0x40, 0x7e, 0x76, 0x24, 0xda, 0x0f, 0x77, 0x12, 0x72, 0x7a, 0x9c, 0x78, 0xce, 0x69, 0xd1, 0xdc, 0xf1, 0xd4, 0x85, 0x5a, 0x71, 0xfe, 0x20, 0x5f, 0xc8, 0xff, 0x7f, 0x27, 0x47, 0x30, 0xcc, 0x79, 0x8a, 0xd4, }; static const unsigned char xdh_wei448_2816_privkey[] = { 0x3c, 0x08, 0x7d, 0xf1, 0x21, 0xe1, 0x39, 0x54, 0xe3, 0xbb, 0x66, 0xca, 0xc9, 0x2a, 0x56, 0x18, 0xf0, 0x94, 0x01, 0x68, 0x97, 0x62, 0xdd, 0xc7, 0x10, 0x26, 0x36, 0xcc, 0xb0, 0x89, 0x4f, 0xf2, 0xfe, 0xdd, 0x94, 0x5f, 0x09, 0x64, 0x81, 0x49, 0xd9, 0x9a, 0x3e, 0xd7, 0xc7, 0xba, 0x0f, 0x08, 0xde, 0xaf, 0x52, 0x07, 0x4d, 0xd2, 0xfc, 0x89, }; static const unsigned char xdh_wei448_2816_sharedsecret[] = { 0x41, 0xd6, 0x94, 0x37, 0x44, 0xa7, 0xc0, 0xf8, 0x9e, 0x91, 0xc7, 0x02, 0x01, 0x82, 0x3d, 0x13, 0x3c, 0xa6, 0xa3, 0x2d, 0x08, 0xe8, 0xba, 0x6a, 0xc9, 0x5c, 0x48, 0xea, 0x6b, 0x37, 0x2d, 0xa0, 0x79, 0x6e, 0x63, 0x24, 0xc8, 0xff, 0x68, 0x22, 0xac, 0xbe, 0x3b, 0x1d, 0xe4, 0x60, 0x81, 0x79, 0x9c, 0x04, 0x48, 0xcf, 0xa3, 0x72, 0x6d, 0x7c, }; static const wycheproof_xdh_test xdh_wei448_2816 = { .name = "xdh_wei448_2816", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2816_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2816_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2816_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2816_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 233 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2817 for XDH, tcId is 234 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2817_peerpubkey[] = { 0xec, 0x39, 0x42, 0xb9, 0x47, 0x94, 0x7a, 0x05, 0x31, 0x67, 0x24, 0xe6, 0xb2, 0x0e, 0x50, 0xc9, 0xa9, 0x30, 0x5e, 0x9d, 0xc3, 0x5a, 0x4a, 0x06, 0x3f, 0xf6, 0xfe, 0xd3, 0x80, 0x06, 0x49, 0x4d, 0x2b, 0x20, 0xbd, 0xc9, 0x83, 0xb0, 0x35, 0x19, 0xaa, 0xf0, 0x38, 0xed, 0x8d, 0xed, 0x60, 0xb9, 0x30, 0x2b, 0x36, 0x3d, 0x34, 0x4c, 0x2a, 0x37, }; static const unsigned char xdh_wei448_2817_ourpubkey[] = { 0x16, 0x84, 0x38, 0x1d, 0xd4, 0x95, 0xf3, 0x2e, 0x0a, 0x16, 0x9b, 0x3d, 0xea, 0xb2, 0x7b, 0xbb, 0xa5, 0x87, 0x13, 0x04, 0x6c, 0xaa, 0x1f, 0x63, 0x74, 0xc6, 0x60, 0x0c, 0x8a, 0x9a, 0x66, 0xaf, 0x16, 0x0c, 0xa6, 0xfa, 0x9a, 0x98, 0x96, 0x51, 0xc5, 0xc0, 0xb2, 0xc7, 0x39, 0xd9, 0x49, 0x0d, 0xf6, 0xcd, 0xe0, 0x45, 0xd3, 0x59, 0x89, 0xed, }; static const unsigned char xdh_wei448_2817_privkey[] = { 0x48, 0x1e, 0x7b, 0x28, 0x5a, 0x51, 0x20, 0x5a, 0xf9, 0xf1, 0xd1, 0x0a, 0xa9, 0x40, 0xe7, 0xe4, 0x7e, 0x32, 0x6e, 0xf7, 0x36, 0x6c, 0x90, 0x7d, 0x74, 0xc6, 0x59, 0x8a, 0x23, 0x5c, 0x0f, 0x27, 0xeb, 0x04, 0xef, 0xcf, 0xde, 0x78, 0x9b, 0x53, 0x04, 0x0c, 0x50, 0x1e, 0xae, 0xc5, 0x0f, 0x01, 0xdc, 0xdb, 0x3c, 0xe6, 0xf9, 0xe2, 0x92, 0x8b, }; static const unsigned char xdh_wei448_2817_sharedsecret[] = { 0x04, 0xd6, 0xb7, 0xfa, 0xb7, 0xde, 0x07, 0x39, 0xe4, 0xeb, 0x4c, 0x5f, 0x37, 0xde, 0xef, 0x59, 0x01, 0x67, 0xc8, 0x04, 0xa9, 0x58, 0xf9, 0x9b, 0xd1, 0x41, 0x02, 0xda, 0x44, 0x49, 0x09, 0x63, 0xe0, 0x11, 0x9a, 0x75, 0xb8, 0x43, 0x62, 0xcc, 0x3a, 0x19, 0x5e, 0x0b, 0x24, 0xa8, 0xfd, 0x71, 0x3a, 0x45, 0x03, 0x80, 0x80, 0x38, 0x3d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2817 = { .name = "xdh_wei448_2817", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2817_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2817_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2817_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2817_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 234 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2818 for XDH, tcId is 235 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2818_peerpubkey[] = { 0xfe, 0x29, 0xe8, 0x2e, 0x30, 0x86, 0xce, 0xed, 0x02, 0x29, 0xf6, 0x3e, 0x68, 0x03, 0xd9, 0x86, 0x41, 0x14, 0xd2, 0x66, 0xb0, 0x1d, 0x77, 0x6d, 0x8f, 0xf7, 0xb8, 0x9e, 0x5e, 0x64, 0xac, 0x47, 0x1c, 0x00, 0x4e, 0x3a, 0x99, 0xcb, 0x16, 0xcf, 0x94, 0xe6, 0xf0, 0x49, 0x3e, 0xe3, 0x53, 0x25, 0xe6, 0x9d, 0x9e, 0x1f, 0x8c, 0xbb, 0x12, 0x3d, }; static const unsigned char xdh_wei448_2818_ourpubkey[] = { 0x99, 0x29, 0x5a, 0xa6, 0x4c, 0x6d, 0xe2, 0x75, 0xa4, 0xe1, 0xdc, 0xca, 0x97, 0x2a, 0x5d, 0x6f, 0x94, 0x11, 0x89, 0x13, 0xfb, 0x08, 0x3c, 0x2b, 0xec, 0x6a, 0x2b, 0x7c, 0x39, 0x36, 0xe2, 0x71, 0xee, 0xc1, 0xe4, 0xb4, 0x2b, 0x47, 0xd2, 0x50, 0xd5, 0x37, 0x19, 0x07, 0x02, 0xde, 0x3a, 0x7a, 0x6f, 0xa7, 0xa6, 0xef, 0x7e, 0x27, 0x8c, 0x5d, }; static const unsigned char xdh_wei448_2818_privkey[] = { 0x50, 0x0f, 0xc2, 0x83, 0x89, 0x9a, 0x14, 0xc9, 0x35, 0x42, 0x8b, 0x14, 0x81, 0x71, 0xbb, 0xcd, 0x55, 0x34, 0x1d, 0xad, 0x96, 0xae, 0xea, 0x5e, 0x4a, 0xda, 0x76, 0xe3, 0x78, 0x29, 0x07, 0x08, 0xbf, 0x4f, 0x8f, 0x4e, 0xbb, 0x8c, 0x0b, 0x14, 0x78, 0x95, 0x61, 0xd2, 0x14, 0xb9, 0x9b, 0x99, 0x8b, 0x26, 0xf2, 0x3c, 0xd5, 0x53, 0x82, 0x9c, }; static const unsigned char xdh_wei448_2818_sharedsecret[] = { 0x85, 0x79, 0x2e, 0xec, 0x0e, 0x00, 0xae, 0x19, 0x06, 0x9b, 0x15, 0x47, 0xc8, 0xef, 0x7c, 0x68, 0x18, 0x59, 0x3b, 0x50, 0xf9, 0xb5, 0x3a, 0x18, 0x9d, 0x69, 0xea, 0x46, 0x9a, 0x3b, 0x49, 0x34, 0x2e, 0x5b, 0x4b, 0x37, 0x19, 0x4d, 0x42, 0xd8, 0x9a, 0xf2, 0x1a, 0x36, 0xc7, 0xf3, 0x7f, 0xb1, 0x2b, 0x21, 0x3b, 0x32, 0xff, 0x39, 0x0d, 0x02, }; static const wycheproof_xdh_test xdh_wei448_2818 = { .name = "xdh_wei448_2818", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2818_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2818_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2818_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2818_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 235 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2819 for XDH, tcId is 236 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2819_peerpubkey[] = { 0x2c, 0xfa, 0x4d, 0x92, 0xdd, 0x10, 0xf4, 0xf4, 0xf1, 0x9e, 0x42, 0xd9, 0x25, 0x28, 0xb4, 0x4e, 0x86, 0xa9, 0x78, 0x8c, 0xb9, 0x32, 0x6f, 0x9c, 0x43, 0x35, 0x2d, 0x41, 0xe2, 0xa2, 0x0e, 0x95, 0xba, 0x41, 0x6c, 0x76, 0xf3, 0x27, 0x13, 0x76, 0xa5, 0xef, 0xc1, 0xd4, 0x89, 0xa0, 0x21, 0x8b, 0xed, 0xa1, 0x35, 0xd5, 0xb4, 0x9a, 0xd0, 0x5c, }; static const unsigned char xdh_wei448_2819_ourpubkey[] = { 0x97, 0x26, 0x36, 0xc6, 0xf0, 0xde, 0x93, 0x5d, 0x78, 0xc3, 0x2e, 0x08, 0xb2, 0x28, 0xcf, 0x27, 0xa8, 0x40, 0xc7, 0x16, 0x06, 0xe9, 0x6c, 0xb8, 0x07, 0x1a, 0x7d, 0x96, 0x1b, 0x41, 0x4b, 0x86, 0x99, 0xf8, 0x5d, 0x40, 0x5a, 0xf7, 0x7c, 0xd7, 0x13, 0x48, 0x0e, 0xe2, 0x87, 0xb0, 0xd4, 0x2f, 0xe5, 0x99, 0x82, 0xbf, 0x59, 0xf4, 0xc5, 0x6c, }; static const unsigned char xdh_wei448_2819_privkey[] = { 0x94, 0x4d, 0x70, 0x46, 0x05, 0xc0, 0xb9, 0xa3, 0xe5, 0xef, 0xa5, 0xbf, 0x02, 0xda, 0xab, 0x42, 0xf7, 0xe0, 0x00, 0x25, 0x29, 0xc7, 0x30, 0x24, 0x60, 0x83, 0x60, 0xad, 0xf5, 0x88, 0x4a, 0x86, 0x49, 0xa8, 0x08, 0xd7, 0x91, 0x6e, 0x20, 0x5e, 0x1f, 0x4a, 0x1c, 0x36, 0xb3, 0xed, 0xa9, 0xfb, 0x21, 0x5e, 0x22, 0x31, 0xa7, 0x21, 0x4b, 0x8f, }; static const unsigned char xdh_wei448_2819_sharedsecret[] = { 0xbe, 0xc8, 0x91, 0x62, 0x35, 0x34, 0x2d, 0x5a, 0x63, 0x81, 0x84, 0x7f, 0xc1, 0x09, 0x73, 0x2d, 0x68, 0xe2, 0x6d, 0x0f, 0xff, 0x87, 0x8c, 0xd2, 0x68, 0xb9, 0x82, 0x13, 0xac, 0x78, 0x5e, 0x26, 0x8f, 0xb2, 0x31, 0x94, 0xe3, 0xbf, 0xd7, 0x01, 0x0f, 0xff, 0x1b, 0x2b, 0x1a, 0x43, 0x82, 0x9a, 0x16, 0x9c, 0x0e, 0x1a, 0xf0, 0x8c, 0x4f, 0x61, }; static const wycheproof_xdh_test xdh_wei448_2819 = { .name = "xdh_wei448_2819", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2819_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2819_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2819_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2819_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 236 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2820 for XDH, tcId is 237 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2820_peerpubkey[] = { 0xe4, 0xf2, 0xc8, 0xbf, 0xf8, 0x7d, 0x70, 0xcf, 0xb1, 0xbe, 0xe7, 0xf4, 0x8c, 0x3f, 0x63, 0xf5, 0x99, 0x56, 0x89, 0xdb, 0x27, 0xb6, 0x83, 0x03, 0x99, 0x43, 0xc7, 0x0d, 0x98, 0x2e, 0x3a, 0x0a, 0x19, 0xd5, 0x54, 0xf0, 0x39, 0x53, 0xb7, 0xd9, 0x70, 0xa2, 0x97, 0xd6, 0xbd, 0x65, 0xc2, 0x89, 0x30, 0x36, 0x6e, 0x67, 0x92, 0x82, 0x2d, 0x62, }; static const unsigned char xdh_wei448_2820_ourpubkey[] = { 0x47, 0x62, 0x5b, 0x10, 0x90, 0x6c, 0x87, 0x05, 0x27, 0x9d, 0x32, 0x5b, 0x07, 0x66, 0x01, 0x93, 0x45, 0x99, 0x64, 0xad, 0xd6, 0x14, 0x11, 0x07, 0x84, 0x4e, 0xb8, 0x7d, 0x28, 0xf2, 0x9d, 0x58, 0x92, 0xc6, 0x7e, 0xef, 0xdb, 0x6c, 0xbe, 0xf6, 0x13, 0x9b, 0x05, 0xa0, 0x0c, 0x7c, 0xaf, 0xcc, 0x2b, 0x6a, 0x83, 0x81, 0x5e, 0x32, 0x00, 0xf6, }; static const unsigned char xdh_wei448_2820_privkey[] = { 0xec, 0x38, 0xa3, 0x72, 0x22, 0xb8, 0x13, 0x84, 0x8f, 0x31, 0x2c, 0xe7, 0x64, 0x4f, 0x69, 0xea, 0xf9, 0x62, 0x4d, 0x2c, 0x13, 0x68, 0x5d, 0x35, 0x0b, 0x46, 0x9c, 0x02, 0xd4, 0x30, 0xa0, 0x2f, 0xa0, 0xbe, 0xa6, 0x54, 0x58, 0xb4, 0x42, 0x7c, 0x74, 0xff, 0x49, 0xc1, 0xeb, 0xcb, 0x1d, 0xfa, 0x07, 0x3b, 0x8e, 0xb3, 0xb8, 0x07, 0xc7, 0x94, }; static const unsigned char xdh_wei448_2820_sharedsecret[] = { 0x61, 0x34, 0x5e, 0x76, 0x39, 0x62, 0x46, 0x13, 0xbd, 0xbd, 0xf0, 0x69, 0x83, 0xf2, 0x55, 0xbc, 0xd6, 0x76, 0xa7, 0x65, 0x38, 0x2a, 0xa4, 0xf3, 0x76, 0xe2, 0x3b, 0xb5, 0x3a, 0x7c, 0x1a, 0x5b, 0xfc, 0xc9, 0x0d, 0x5a, 0x79, 0xa9, 0xef, 0xff, 0x13, 0x40, 0x49, 0x0e, 0x58, 0xda, 0xd3, 0x6b, 0xfd, 0x85, 0xd6, 0x56, 0x2b, 0x03, 0xb8, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2820 = { .name = "xdh_wei448_2820", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2820_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2820_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2820_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2820_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 237 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2821 for XDH, tcId is 238 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2821_peerpubkey[] = { 0x91, 0xc7, 0xe2, 0xf3, 0xf1, 0x8b, 0x66, 0x0a, 0x3b, 0xcc, 0x10, 0x7a, 0xc1, 0x0e, 0x6f, 0x4b, 0x58, 0xfd, 0x8e, 0xf9, 0xc5, 0x7e, 0xad, 0x82, 0x39, 0x4c, 0x99, 0xff, 0x89, 0xb0, 0x69, 0x53, 0xf4, 0xfb, 0xd3, 0x99, 0x7b, 0xcb, 0xfd, 0x3f, 0x78, 0xf2, 0x8f, 0x0b, 0x0b, 0x34, 0x8a, 0xf4, 0xa3, 0x5a, 0x7f, 0x35, 0x1a, 0x29, 0xf0, 0x7d, }; static const unsigned char xdh_wei448_2821_ourpubkey[] = { 0x61, 0x56, 0x99, 0x24, 0xc7, 0xa2, 0xbf, 0xbf, 0x01, 0x59, 0x07, 0x3f, 0x67, 0xfe, 0xff, 0x0d, 0x58, 0xab, 0xcf, 0x74, 0x4f, 0xe5, 0x79, 0xd6, 0xd2, 0x9a, 0xbc, 0x74, 0x0f, 0x48, 0x23, 0x13, 0x96, 0xbc, 0xde, 0x37, 0xb1, 0x81, 0x13, 0x4c, 0x4e, 0xee, 0xbd, 0x4b, 0x25, 0x45, 0x80, 0x6f, 0x60, 0x97, 0x9e, 0x5a, 0x7f, 0x8c, 0x95, 0x71, }; static const unsigned char xdh_wei448_2821_privkey[] = { 0xf4, 0x97, 0x0a, 0x04, 0xbf, 0x57, 0xaf, 0xa4, 0x65, 0x70, 0x71, 0x6d, 0x9e, 0xc0, 0x37, 0x98, 0xc3, 0x4a, 0xe3, 0xad, 0xd1, 0x90, 0x33, 0xc7, 0xeb, 0x25, 0x75, 0x68, 0xd1, 0x9f, 0xf1, 0xe3, 0xf9, 0x08, 0xe1, 0xb6, 0xe6, 0x95, 0x07, 0x4f, 0x75, 0x2f, 0x0a, 0xd7, 0x1f, 0x27, 0x04, 0x89, 0x5b, 0xea, 0x0d, 0xa2, 0xf9, 0x07, 0xaf, 0x9b, }; static const unsigned char xdh_wei448_2821_sharedsecret[] = { 0xcd, 0x3f, 0x8e, 0xca, 0xda, 0xb8, 0xe3, 0x2b, 0xac, 0xd7, 0x21, 0x75, 0xdb, 0x84, 0x7f, 0x9f, 0xaf, 0x99, 0x2a, 0x04, 0xfc, 0x07, 0xa1, 0xb4, 0x0a, 0x18, 0x26, 0xd1, 0xa2, 0x22, 0xba, 0x00, 0x10, 0x91, 0xb6, 0xa6, 0xe4, 0x7b, 0xe2, 0x29, 0x94, 0xb6, 0x56, 0xc2, 0xc0, 0x8f, 0x6a, 0xd9, 0x0d, 0x9a, 0x66, 0xb2, 0xe1, 0x39, 0xb9, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_2821 = { .name = "xdh_wei448_2821", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2821_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2821_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2821_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2821_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 238 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2822 for XDH, tcId is 239 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2822_peerpubkey[] = { 0xc5, 0x45, 0x38, 0xc9, 0xe6, 0x2c, 0xa0, 0x3b, 0xdd, 0xdf, 0x4d, 0x87, 0x1d, 0x32, 0x48, 0x77, 0xb5, 0xaf, 0x95, 0xcb, 0x52, 0xb5, 0x3d, 0xc4, 0x38, 0x6f, 0x10, 0x5c, 0x68, 0xd8, 0x0e, 0xbd, 0x73, 0xfd, 0xb5, 0x1b, 0xc9, 0xb2, 0x66, 0x62, 0x08, 0x65, 0x8b, 0x86, 0xc3, 0xb5, 0x93, 0x0b, 0x81, 0xab, 0xfa, 0x4a, 0xc2, 0xa2, 0x13, 0x96, }; static const unsigned char xdh_wei448_2822_ourpubkey[] = { 0x56, 0xab, 0x9d, 0x01, 0xb7, 0xb1, 0xe2, 0xa3, 0x32, 0x69, 0x44, 0xa9, 0x12, 0xa8, 0xab, 0x91, 0xb1, 0x13, 0xc5, 0xee, 0x2c, 0x50, 0xed, 0xa0, 0xc9, 0x77, 0xbc, 0xd9, 0xef, 0xba, 0x21, 0x7d, 0x85, 0xa3, 0xc8, 0x90, 0xb7, 0x28, 0x03, 0xc0, 0x49, 0x52, 0xca, 0x8f, 0xd5, 0x5d, 0xc2, 0xa1, 0x3a, 0xf7, 0x5b, 0x13, 0x2e, 0xc1, 0xb9, 0xe9, }; static const unsigned char xdh_wei448_2822_privkey[] = { 0x90, 0x96, 0xf6, 0x8a, 0xd3, 0x95, 0x0f, 0x01, 0x4b, 0x5e, 0xdb, 0x84, 0xca, 0x36, 0x9d, 0x2c, 0x05, 0x3f, 0xf8, 0xf0, 0xc7, 0x8e, 0x89, 0xbb, 0xb0, 0x88, 0xe7, 0xcf, 0xbe, 0x1a, 0x1b, 0xd1, 0x8a, 0xf8, 0xc5, 0xea, 0x0e, 0x72, 0x85, 0xb1, 0x6e, 0xc2, 0x73, 0x54, 0xab, 0xfd, 0xde, 0x2b, 0xc1, 0x3e, 0x95, 0x86, 0x0d, 0xab, 0xd9, 0x85, }; static const unsigned char xdh_wei448_2822_sharedsecret[] = { 0xdb, 0x72, 0x24, 0x2a, 0x51, 0x39, 0x8f, 0xac, 0xda, 0xd9, 0x9b, 0x3c, 0xe5, 0xad, 0x85, 0x6f, 0x90, 0x24, 0xb6, 0x62, 0xdf, 0x36, 0xf0, 0xaa, 0x03, 0xa9, 0x46, 0x34, 0x35, 0x54, 0xed, 0x62, 0x44, 0xf7, 0x7c, 0x6a, 0xe2, 0x00, 0xcb, 0x2c, 0x7b, 0x7b, 0x5b, 0xcb, 0xda, 0x5b, 0x81, 0x6f, 0x97, 0xf5, 0x3c, 0xa2, 0xc5, 0xa7, 0x47, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2822 = { .name = "xdh_wei448_2822", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2822_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2822_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2822_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2822_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 239 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2823 for XDH, tcId is 240 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2823_peerpubkey[] = { 0x2b, 0x4c, 0xb8, 0xa2, 0xdb, 0x20, 0xb1, 0x6c, 0x50, 0x13, 0xd8, 0x3f, 0x3f, 0xe7, 0xf2, 0x34, 0x1e, 0xab, 0xc3, 0x68, 0xd4, 0xb3, 0x11, 0xdb, 0x04, 0xfe, 0xf4, 0xa7, 0x1e, 0x3c, 0x94, 0xc6, 0xb0, 0xe2, 0x64, 0xa4, 0x1f, 0xf9, 0x63, 0x94, 0x15, 0x09, 0x5c, 0x74, 0x55, 0x34, 0x47, 0xc2, 0x6a, 0xcc, 0x75, 0x1f, 0x1f, 0xd2, 0x61, 0xd2, }; static const unsigned char xdh_wei448_2823_ourpubkey[] = { 0xe4, 0x27, 0x06, 0xd6, 0xef, 0xf4, 0xe2, 0xda, 0x8c, 0x37, 0xa0, 0x8b, 0x8e, 0xc2, 0xec, 0x77, 0x21, 0x87, 0x40, 0xa5, 0x9a, 0xbe, 0xff, 0x6e, 0x79, 0x04, 0x2d, 0x32, 0x3d, 0x42, 0x65, 0x88, 0x69, 0xbd, 0x4b, 0x10, 0x54, 0xe8, 0xcb, 0x4e, 0xf1, 0xda, 0x34, 0x8d, 0xcd, 0x6c, 0xb7, 0xdc, 0x00, 0xce, 0xfd, 0x34, 0x30, 0xb7, 0x19, 0x54, }; static const unsigned char xdh_wei448_2823_privkey[] = { 0xc4, 0xa9, 0xea, 0x45, 0x52, 0xf0, 0xb0, 0x2f, 0xb1, 0x53, 0xa6, 0xcc, 0xdb, 0x7b, 0x10, 0x2d, 0xe9, 0xa5, 0x0e, 0xf5, 0xee, 0x46, 0x2a, 0xf0, 0x34, 0x8a, 0x6c, 0x40, 0x86, 0x86, 0x87, 0xff, 0xb2, 0x7c, 0xb3, 0xb1, 0xff, 0x24, 0x20, 0xf4, 0xc9, 0xe6, 0xb5, 0xb8, 0xc0, 0x6c, 0x5d, 0x7d, 0xa9, 0x99, 0xb9, 0x50, 0xdc, 0xc8, 0x17, 0x80, }; static const unsigned char xdh_wei448_2823_sharedsecret[] = { 0xb6, 0xf4, 0xd2, 0x6b, 0x91, 0x7a, 0x5e, 0x29, 0x9a, 0xe9, 0xdf, 0x9d, 0x96, 0x55, 0xcf, 0x2d, 0xd6, 0x15, 0x5e, 0x1a, 0x78, 0x56, 0x36, 0xc7, 0x50, 0xf2, 0x21, 0x5e, 0xd8, 0xc7, 0xc3, 0x15, 0x2e, 0x7d, 0xd7, 0xc3, 0x16, 0x65, 0x7a, 0x91, 0x0d, 0x02, 0x21, 0x86, 0x43, 0x5b, 0xbc, 0x7e, 0xf4, 0x30, 0x9d, 0xad, 0xdd, 0x73, 0x31, 0x58, }; static const wycheproof_xdh_test xdh_wei448_2823 = { .name = "xdh_wei448_2823", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2823_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2823_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2823_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2823_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 240 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2824 for XDH, tcId is 241 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2824_peerpubkey[] = { 0x48, 0xed, 0xc1, 0x3a, 0x4c, 0xb0, 0x97, 0xc3, 0x2e, 0x0a, 0xae, 0xfe, 0x25, 0x1d, 0x35, 0x1f, 0xa0, 0x97, 0x13, 0x4e, 0xbf, 0xc5, 0xaa, 0x84, 0xb6, 0x27, 0x70, 0x2c, 0xb4, 0xd5, 0xad, 0xa5, 0xda, 0x25, 0x83, 0xfc, 0x68, 0xff, 0x78, 0x05, 0x35, 0x42, 0xc7, 0x96, 0xad, 0x62, 0x53, 0x95, 0xb4, 0x31, 0xdb, 0xbe, 0x9b, 0xf1, 0x70, 0xde, }; static const unsigned char xdh_wei448_2824_ourpubkey[] = { 0x78, 0x6e, 0xb0, 0x1a, 0xc4, 0x04, 0xca, 0xad, 0xe6, 0xd3, 0x44, 0x23, 0x4b, 0x34, 0x3d, 0x95, 0x40, 0xba, 0x5a, 0xfd, 0xa5, 0xb8, 0x3a, 0x58, 0xbc, 0x09, 0x20, 0x76, 0x30, 0x6c, 0x84, 0x4e, 0xf9, 0xc7, 0x92, 0xad, 0x46, 0x36, 0x21, 0x07, 0x96, 0xa8, 0x5c, 0xcd, 0xc3, 0xa1, 0xc1, 0x5d, 0x15, 0x3e, 0xb6, 0xde, 0x7a, 0x0b, 0xa5, 0x3b, }; static const unsigned char xdh_wei448_2824_privkey[] = { 0x70, 0x9d, 0x6e, 0xbd, 0xa1, 0x76, 0x61, 0xa9, 0xa6, 0xcf, 0x02, 0x83, 0xcc, 0x37, 0xcd, 0x25, 0x80, 0x2d, 0xae, 0x0c, 0x33, 0xe6, 0xa2, 0x47, 0x99, 0xb2, 0x28, 0x40, 0x2d, 0x8c, 0x8d, 0x3b, 0xf5, 0xc3, 0x79, 0xbf, 0x2e, 0x31, 0x70, 0x8a, 0x4c, 0xe7, 0xca, 0x14, 0x96, 0x4f, 0x83, 0x68, 0xa8, 0x59, 0xb7, 0x8d, 0x8d, 0x17, 0xb5, 0x9b, }; static const unsigned char xdh_wei448_2824_sharedsecret[] = { 0x4a, 0x71, 0x74, 0xf4, 0xbf, 0x4d, 0xe8, 0xc3, 0xd9, 0xc9, 0x54, 0xdd, 0xf9, 0x86, 0x5b, 0xca, 0x47, 0xb0, 0xb9, 0xd8, 0xde, 0xa5, 0x1c, 0x3a, 0xf2, 0x90, 0xbf, 0x6e, 0x3e, 0xf8, 0xee, 0xa8, 0x26, 0x30, 0x36, 0xed, 0xb7, 0x70, 0xf5, 0x63, 0x3c, 0x05, 0x08, 0xe2, 0x67, 0x0c, 0xb9, 0xef, 0x24, 0x7d, 0x99, 0xc9, 0xf9, 0x4a, 0xab, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2824 = { .name = "xdh_wei448_2824", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2824_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2824_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2824_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2824_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 241 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2825 for XDH, tcId is 242 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2825_peerpubkey[] = { 0x45, 0xb4, 0x60, 0x34, 0x8e, 0xc0, 0xaf, 0x65, 0x1d, 0x91, 0xef, 0xe8, 0x8f, 0x94, 0x69, 0x91, 0xd2, 0x73, 0xaf, 0xee, 0x61, 0x16, 0x5b, 0xf7, 0x33, 0x49, 0x1f, 0x02, 0x20, 0xe0, 0x51, 0x06, 0x87, 0xb5, 0x18, 0xf1, 0x34, 0xc4, 0xe7, 0xe8, 0xf0, 0x4f, 0x7d, 0x6b, 0xfc, 0xcc, 0xaf, 0x2d, 0x1c, 0x9e, 0x3b, 0xa5, 0xb5, 0x0f, 0x8f, 0xe1, }; static const unsigned char xdh_wei448_2825_ourpubkey[] = { 0x6b, 0x8f, 0xe8, 0x81, 0x68, 0x88, 0xac, 0x60, 0xba, 0xf9, 0x47, 0x38, 0x66, 0x7d, 0x11, 0x77, 0xe3, 0xc8, 0x14, 0xe7, 0x2e, 0x9e, 0x5c, 0x3c, 0x2b, 0x0e, 0x5e, 0xe0, 0x69, 0x76, 0x82, 0x95, 0xc2, 0xf0, 0x82, 0xea, 0xb3, 0xd8, 0xef, 0xb0, 0xea, 0x07, 0x13, 0xe3, 0x6f, 0x43, 0xd5, 0x19, 0x88, 0xc4, 0x95, 0x6e, 0x48, 0x6c, 0x9a, 0x13, }; static const unsigned char xdh_wei448_2825_privkey[] = { 0xcc, 0x80, 0x41, 0x7d, 0x3f, 0x9e, 0x3c, 0x94, 0x92, 0xdb, 0xb9, 0xd2, 0x5f, 0x46, 0x0b, 0x8d, 0xf4, 0x48, 0x49, 0x85, 0xb2, 0xad, 0x9f, 0xaa, 0xa6, 0x2d, 0xfd, 0x59, 0xe5, 0x73, 0x08, 0x15, 0x7e, 0x22, 0x6c, 0x47, 0x39, 0xd4, 0x60, 0xb0, 0x8d, 0xe4, 0x6c, 0xe6, 0x38, 0x01, 0xce, 0x7d, 0xa2, 0x55, 0x73, 0xc9, 0x46, 0xd0, 0x18, 0x88, }; static const unsigned char xdh_wei448_2825_sharedsecret[] = { 0xfa, 0x1b, 0x67, 0x5f, 0x6c, 0x89, 0x3e, 0xd6, 0x8f, 0xd5, 0x98, 0xff, 0xed, 0x63, 0xfc, 0x12, 0xde, 0x40, 0x61, 0x02, 0x0b, 0x90, 0xb2, 0x2b, 0x5f, 0x72, 0xe6, 0x36, 0xf0, 0x28, 0xed, 0xfd, 0xd9, 0xda, 0x42, 0x3e, 0x83, 0x40, 0x20, 0x3e, 0x83, 0x56, 0x0d, 0xcc, 0xcd, 0xd7, 0x76, 0xdb, 0x72, 0xc6, 0x1e, 0xa8, 0x8e, 0x5d, 0x1e, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2825 = { .name = "xdh_wei448_2825", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2825_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2825_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2825_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2825_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 242 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2826 for XDH, tcId is 243 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2826_peerpubkey[] = { 0xb9, 0x1e, 0x57, 0x17, 0x71, 0xaa, 0xd3, 0xc4, 0x04, 0xae, 0x46, 0x93, 0xbf, 0xf7, 0xf2, 0x14, 0x0a, 0x6c, 0x04, 0x2d, 0xb3, 0x06, 0x98, 0x94, 0xae, 0xf2, 0x0c, 0x1b, 0x34, 0xdd, 0x63, 0x5c, 0x6a, 0x08, 0x12, 0x62, 0x36, 0x45, 0x4b, 0xcb, 0x8c, 0x63, 0xa4, 0x7a, 0xc9, 0x43, 0x52, 0xa0, 0x45, 0x36, 0x76, 0x9b, 0x24, 0x22, 0x60, 0x06, }; static const unsigned char xdh_wei448_2826_ourpubkey[] = { 0x16, 0x25, 0x60, 0xc4, 0x43, 0x29, 0x08, 0x9e, 0xa5, 0xd6, 0xf1, 0x59, 0x02, 0xcb, 0xa1, 0xe2, 0x99, 0xc0, 0x48, 0x37, 0x18, 0xd8, 0xe4, 0x13, 0x7b, 0x1b, 0x65, 0xb0, 0x0a, 0x64, 0xf7, 0x73, 0xc6, 0xd7, 0x23, 0x46, 0x3c, 0x8d, 0x91, 0x99, 0x75, 0x40, 0xd2, 0x3c, 0xd9, 0x5c, 0xe3, 0x53, 0x4d, 0x17, 0x2a, 0xc5, 0x3a, 0x7a, 0x93, 0xf4, }; static const unsigned char xdh_wei448_2826_privkey[] = { 0x98, 0xb7, 0xa5, 0xcf, 0xe0, 0x99, 0xbd, 0x4c, 0xbb, 0x37, 0xa7, 0x24, 0xdc, 0x0a, 0x8d, 0xe6, 0xae, 0xbf, 0x1d, 0x3f, 0xa4, 0x6d, 0xd6, 0xda, 0x64, 0xff, 0x76, 0x4e, 0x63, 0x3b, 0x4d, 0xcc, 0xd8, 0xc8, 0x07, 0x70, 0x50, 0xa9, 0x23, 0x27, 0xdd, 0x73, 0x6d, 0xca, 0xf9, 0x33, 0x2d, 0xb7, 0x1a, 0x0d, 0xfc, 0x51, 0xa9, 0xca, 0x18, 0x8c, }; static const unsigned char xdh_wei448_2826_sharedsecret[] = { 0x46, 0xeb, 0x6c, 0xd4, 0x9b, 0x02, 0x52, 0x4e, 0xfc, 0x3f, 0xa5, 0xfc, 0x6a, 0xdb, 0xd9, 0xb6, 0x04, 0x7f, 0xae, 0x2f, 0xb1, 0x74, 0x3d, 0xa9, 0x97, 0x68, 0x0e, 0x0e, 0x72, 0xc3, 0xcf, 0x1e, 0x86, 0x1f, 0xde, 0x59, 0xc0, 0x59, 0x4c, 0xf0, 0xc5, 0x80, 0x72, 0x6f, 0x0c, 0xe9, 0x94, 0x9c, 0x65, 0xdd, 0x7e, 0x71, 0x72, 0xfe, 0x51, 0x36, }; static const wycheproof_xdh_test xdh_wei448_2826 = { .name = "xdh_wei448_2826", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2826_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2826_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2826_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2826_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 243 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2827 for XDH, tcId is 244 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2827_peerpubkey[] = { 0x54, 0x2b, 0xb7, 0x70, 0x5e, 0x4a, 0x83, 0x1f, 0x0b, 0xb4, 0xcc, 0xfd, 0xcd, 0xfb, 0x74, 0xe7, 0x60, 0xcd, 0x45, 0x18, 0xbe, 0x85, 0x53, 0xe0, 0x5c, 0x14, 0x75, 0x9e, 0xe7, 0xf6, 0x7d, 0x0d, 0x7e, 0xec, 0x06, 0x61, 0xa2, 0xcb, 0x96, 0x57, 0xdc, 0xdd, 0x66, 0xdc, 0xfd, 0xba, 0xe4, 0x5b, 0x3d, 0xcb, 0x1e, 0xee, 0xab, 0x15, 0x20, 0x0d, }; static const unsigned char xdh_wei448_2827_ourpubkey[] = { 0xdc, 0x63, 0xff, 0xf7, 0x8b, 0x82, 0x25, 0x84, 0xa2, 0x8d, 0x6b, 0xd0, 0x0d, 0xf5, 0x4e, 0x3d, 0x4f, 0x13, 0x71, 0x41, 0x42, 0x5b, 0xbb, 0xe9, 0xf0, 0x30, 0x7a, 0x02, 0xf4, 0xae, 0x88, 0x86, 0xd4, 0x22, 0x40, 0x08, 0xc3, 0x9c, 0x71, 0x97, 0x65, 0x60, 0x80, 0xe8, 0x02, 0xd8, 0x33, 0x57, 0x6d, 0xb0, 0xd6, 0x15, 0x2d, 0xde, 0xb2, 0x6f, }; static const unsigned char xdh_wei448_2827_privkey[] = { 0xf8, 0x69, 0x06, 0xe9, 0x18, 0x5e, 0x34, 0x75, 0xc6, 0x17, 0x91, 0x83, 0xac, 0xde, 0x9d, 0xd7, 0x5a, 0x59, 0x8f, 0xe7, 0x9c, 0x67, 0x70, 0xa9, 0xeb, 0x25, 0xee, 0x7c, 0x3e, 0xfa, 0xb8, 0x74, 0x0a, 0xbc, 0xfd, 0x50, 0x86, 0x79, 0xe3, 0x6f, 0x69, 0xb0, 0x61, 0x54, 0x34, 0x24, 0x36, 0xae, 0x52, 0xe5, 0x75, 0x9b, 0xf0, 0x15, 0xca, 0x84, }; static const unsigned char xdh_wei448_2827_sharedsecret[] = { 0x53, 0x36, 0xf3, 0x84, 0xa8, 0x10, 0x0c, 0xd9, 0x19, 0xd2, 0x52, 0x16, 0x46, 0xb6, 0xad, 0x8f, 0x77, 0xf2, 0x55, 0xe1, 0xa7, 0xc5, 0x08, 0x89, 0xb3, 0x3f, 0x1e, 0x24, 0x8f, 0xb5, 0xb0, 0xeb, 0x1c, 0x30, 0x2d, 0x27, 0xf3, 0x23, 0x5f, 0x7f, 0xd3, 0xf5, 0x82, 0x03, 0x75, 0x8f, 0x3f, 0x0d, 0xc7, 0x9d, 0xb6, 0x99, 0x35, 0x96, 0xcc, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2827 = { .name = "xdh_wei448_2827", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2827_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2827_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2827_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2827_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 244 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2828 for XDH, tcId is 245 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2828_peerpubkey[] = { 0x8a, 0x7b, 0x26, 0xe1, 0xd0, 0x96, 0xd5, 0xab, 0xdd, 0x69, 0x05, 0xb8, 0xf3, 0x7f, 0x01, 0xe0, 0xad, 0xbc, 0xe9, 0xbd, 0x85, 0x61, 0x7e, 0xf6, 0x5e, 0x78, 0xcd, 0xff, 0x93, 0xaf, 0xab, 0xc3, 0xa1, 0x6f, 0x35, 0x61, 0xbd, 0x60, 0x5e, 0xa0, 0xca, 0xa4, 0xc6, 0x6d, 0xd6, 0x38, 0xf3, 0xca, 0xab, 0x4e, 0x76, 0x85, 0x9c, 0xfd, 0x7f, 0x44, }; static const unsigned char xdh_wei448_2828_ourpubkey[] = { 0x6f, 0x83, 0x32, 0x4d, 0x21, 0xd5, 0x6b, 0x22, 0x89, 0x57, 0x33, 0x5b, 0xe8, 0x6d, 0xf1, 0xf1, 0xd1, 0xd4, 0x17, 0x60, 0x06, 0xe5, 0xd7, 0xff, 0x08, 0xfd, 0xec, 0xa0, 0x56, 0xa7, 0x62, 0x5c, 0x0a, 0x19, 0x22, 0x39, 0xa5, 0xb7, 0x21, 0x7f, 0x60, 0x66, 0xf6, 0x66, 0x40, 0x7b, 0xf9, 0x20, 0xef, 0xb2, 0x21, 0x44, 0x3d, 0x74, 0x24, 0x59, }; static const unsigned char xdh_wei448_2828_privkey[] = { 0x74, 0x23, 0xbe, 0xdd, 0x2e, 0xbb, 0x65, 0x1a, 0xd8, 0x41, 0xb7, 0x8a, 0x89, 0x56, 0x8d, 0x05, 0xac, 0xf3, 0xbb, 0x5c, 0x17, 0x42, 0x2e, 0x16, 0x09, 0xf4, 0x06, 0x7b, 0xde, 0x59, 0x2c, 0x7d, 0xf2, 0xa0, 0x4a, 0xe3, 0xfe, 0xd7, 0xf6, 0xfc, 0xca, 0x82, 0xb7, 0x8d, 0xee, 0xc6, 0xb6, 0x20, 0x44, 0x8c, 0x18, 0x51, 0xde, 0x98, 0x56, 0x84, }; static const unsigned char xdh_wei448_2828_sharedsecret[] = { 0x6e, 0xc4, 0xc8, 0x08, 0xf1, 0xe7, 0x4d, 0x72, 0x93, 0xb4, 0xfd, 0x6a, 0x26, 0x7e, 0xcf, 0x4d, 0x57, 0xef, 0x58, 0xe6, 0x9e, 0x4e, 0xfa, 0x34, 0x27, 0xd4, 0x49, 0x49, 0x03, 0xe1, 0xbf, 0x1c, 0x10, 0x61, 0x06, 0x95, 0x37, 0x2f, 0xbe, 0x29, 0x8b, 0x33, 0x00, 0xda, 0x37, 0xf2, 0x84, 0xb6, 0x64, 0x48, 0x06, 0xcc, 0xe8, 0xb9, 0xd8, 0x52, }; static const wycheproof_xdh_test xdh_wei448_2828 = { .name = "xdh_wei448_2828", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2828_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2828_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2828_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2828_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 245 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2829 for XDH, tcId is 246 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2829_peerpubkey[] = { 0xb0, 0x1d, 0x26, 0x56, 0x5d, 0x2f, 0xd0, 0x56, 0x0c, 0xb6, 0x78, 0x6b, 0xb8, 0xcc, 0xcb, 0x6b, 0x06, 0x24, 0xd1, 0x9d, 0x9e, 0x3e, 0x60, 0x84, 0xcd, 0xd8, 0xb0, 0x2c, 0xe6, 0xbf, 0xa0, 0x60, 0x98, 0x5b, 0x1e, 0xed, 0x84, 0xed, 0xcf, 0x15, 0x84, 0x8a, 0xdf, 0xff, 0x62, 0x80, 0xef, 0x25, 0x14, 0x3c, 0xe4, 0x8a, 0x15, 0xd0, 0xd5, 0x70, }; static const unsigned char xdh_wei448_2829_ourpubkey[] = { 0xa5, 0xfc, 0x48, 0x2f, 0x57, 0xcc, 0xa1, 0xb2, 0x7e, 0xde, 0xfa, 0x32, 0x10, 0x49, 0x5c, 0xb6, 0xa9, 0x0c, 0x89, 0xe2, 0x73, 0xca, 0x78, 0x6e, 0xaf, 0x13, 0x67, 0x3b, 0xa0, 0x34, 0xbc, 0x64, 0x8f, 0xde, 0xee, 0xda, 0x00, 0x9f, 0xbf, 0xa5, 0x78, 0x58, 0x2e, 0x15, 0x84, 0xa9, 0xef, 0x41, 0x01, 0x9c, 0x2d, 0x81, 0x98, 0x22, 0xda, 0x85, }; static const unsigned char xdh_wei448_2829_privkey[] = { 0x0c, 0x27, 0x0d, 0xe1, 0x09, 0x01, 0x5b, 0xb6, 0x13, 0x3e, 0xb5, 0x48, 0xe3, 0xf1, 0xdf, 0x78, 0xcd, 0x10, 0x47, 0x4f, 0x5b, 0x35, 0xfb, 0x7b, 0x7b, 0xe5, 0x69, 0xcf, 0x66, 0xe0, 0x91, 0xcf, 0x12, 0xf4, 0x74, 0xe7, 0x57, 0xa7, 0x69, 0xb3, 0x58, 0xff, 0x27, 0x6f, 0x37, 0x69, 0xdf, 0x08, 0x11, 0x97, 0xcd, 0x15, 0xa5, 0x6d, 0x4d, 0x9d, }; static const unsigned char xdh_wei448_2829_sharedsecret[] = { 0x4c, 0xf8, 0x05, 0x8c, 0xd2, 0xa9, 0x0f, 0xa5, 0xcd, 0x19, 0x23, 0x7e, 0x19, 0xcf, 0x62, 0x0d, 0xda, 0x88, 0xf9, 0xeb, 0xac, 0x2b, 0x69, 0x75, 0xda, 0xc1, 0x82, 0x5d, 0x26, 0x68, 0xd4, 0xea, 0x1b, 0x6d, 0xca, 0xd6, 0xbe, 0x81, 0xde, 0xc5, 0x4e, 0x2a, 0xfa, 0x9c, 0x61, 0x3d, 0x7d, 0x22, 0x84, 0xa4, 0xbb, 0x61, 0x1c, 0xa2, 0x71, 0xf5, }; static const wycheproof_xdh_test xdh_wei448_2829 = { .name = "xdh_wei448_2829", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2829_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2829_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2829_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2829_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 246 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2830 for XDH, tcId is 247 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2830_peerpubkey[] = { 0x6a, 0x36, 0xb7, 0x29, 0xe0, 0x4f, 0xb9, 0xc1, 0xd3, 0x54, 0x41, 0x62, 0x2b, 0x73, 0x5f, 0xe2, 0x17, 0x87, 0x00, 0xd8, 0x28, 0x9a, 0xbb, 0x4c, 0xee, 0x07, 0xfe, 0xac, 0x47, 0xbf, 0xb8, 0xab, 0x3b, 0x5b, 0x19, 0x37, 0x10, 0x53, 0xfe, 0xa2, 0x0e, 0x4c, 0xef, 0x03, 0x6d, 0xda, 0xc5, 0xbc, 0xb5, 0x1f, 0x74, 0x36, 0xae, 0xe3, 0x4a, 0x9e, }; static const unsigned char xdh_wei448_2830_ourpubkey[] = { 0x86, 0x99, 0xe8, 0x63, 0x62, 0x67, 0x02, 0x64, 0x8c, 0x0b, 0x2a, 0xfd, 0x7e, 0xff, 0x5e, 0x20, 0x60, 0x20, 0x17, 0x63, 0x87, 0x7f, 0x9e, 0xbe, 0x29, 0x17, 0x69, 0x85, 0xc0, 0xcc, 0x21, 0x80, 0xb3, 0x67, 0xd6, 0xea, 0xf2, 0x0b, 0x33, 0x97, 0x4a, 0xed, 0xd5, 0x26, 0xe3, 0x1b, 0xfb, 0x26, 0xc3, 0xb9, 0x72, 0xd7, 0x21, 0xae, 0x08, 0x81, }; static const unsigned char xdh_wei448_2830_privkey[] = { 0xbc, 0xcf, 0xa0, 0x99, 0x85, 0x11, 0x63, 0xd5, 0x23, 0xb4, 0x8d, 0x2a, 0x09, 0x8e, 0xb3, 0xec, 0x43, 0x45, 0x26, 0x59, 0x57, 0x5e, 0x1d, 0x63, 0xec, 0xdf, 0x5e, 0x59, 0x94, 0x39, 0x7d, 0xe1, 0x2d, 0x42, 0xae, 0x72, 0xb7, 0x88, 0x49, 0x94, 0xda, 0xa7, 0xe7, 0x5d, 0x8a, 0x25, 0x18, 0x67, 0x3f, 0x7f, 0xa1, 0x9a, 0x7a, 0x6a, 0xf1, 0x90, }; static const unsigned char xdh_wei448_2830_sharedsecret[] = { 0xa7, 0x87, 0xfd, 0x2a, 0xcb, 0x08, 0xe0, 0xcc, 0xf9, 0xe9, 0x63, 0xb7, 0xf1, 0xf2, 0x4a, 0xfb, 0x73, 0x02, 0x49, 0x3c, 0xa8, 0xa6, 0xc5, 0xb8, 0xa4, 0x41, 0xb7, 0xf8, 0x16, 0x30, 0x77, 0x6f, 0x35, 0x90, 0x27, 0x6c, 0x79, 0xa5, 0x7f, 0xea, 0x74, 0xb3, 0x57, 0x52, 0xa5, 0xdf, 0x08, 0x70, 0xa1, 0x23, 0x2b, 0x6c, 0x7f, 0x43, 0x2c, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2830 = { .name = "xdh_wei448_2830", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2830_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2830_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2830_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2830_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 247 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2831 for XDH, tcId is 248 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2831_peerpubkey[] = { 0xa8, 0xac, 0xd6, 0xc7, 0x32, 0x7e, 0xe6, 0x62, 0x2d, 0xf0, 0x85, 0xb0, 0xe2, 0xb6, 0x87, 0x76, 0xae, 0xcc, 0x68, 0xfe, 0x57, 0x9a, 0xc9, 0x01, 0x12, 0xe5, 0xd4, 0x01, 0x3e, 0x18, 0x38, 0x6c, 0x32, 0x01, 0xca, 0x53, 0x3b, 0x76, 0x38, 0xe7, 0x6c, 0x76, 0x04, 0xbe, 0x54, 0xfb, 0x93, 0x66, 0x9a, 0xbe, 0x9e, 0x9d, 0x1d, 0x5c, 0xbc, 0xd5, }; static const unsigned char xdh_wei448_2831_ourpubkey[] = { 0xdd, 0x11, 0xf1, 0x77, 0xe6, 0xbd, 0xfe, 0xd0, 0x9b, 0x86, 0x68, 0x6b, 0x23, 0x85, 0x42, 0xf6, 0xfe, 0x0f, 0x45, 0xe2, 0x78, 0x9b, 0x2e, 0x6c, 0x9e, 0xf2, 0xa9, 0x6b, 0x3b, 0x1b, 0x27, 0x56, 0xaa, 0x07, 0x32, 0x7e, 0x2f, 0xf7, 0xed, 0x88, 0x8d, 0xae, 0x89, 0x6a, 0xa6, 0x0f, 0x46, 0x96, 0xa2, 0x6b, 0xa1, 0x88, 0x8f, 0x91, 0x53, 0xe2, }; static const unsigned char xdh_wei448_2831_privkey[] = { 0x3c, 0xcc, 0xc1, 0x4a, 0xfd, 0x4c, 0x79, 0x6e, 0xcd, 0xf0, 0x41, 0x12, 0x14, 0x88, 0x0d, 0x61, 0x88, 0xc7, 0x4c, 0x99, 0x87, 0x66, 0xd1, 0x62, 0x2f, 0xdb, 0x90, 0x57, 0x3f, 0x07, 0x0e, 0x1f, 0x2b, 0x6b, 0xe5, 0x95, 0x54, 0x32, 0x29, 0xb5, 0xed, 0xf3, 0xf8, 0x8f, 0x26, 0x13, 0x9f, 0x9d, 0x3f, 0x65, 0x00, 0xe5, 0xbb, 0xba, 0x92, 0x99, }; static const unsigned char xdh_wei448_2831_sharedsecret[] = { 0x4d, 0xc8, 0x46, 0xc3, 0x35, 0xa9, 0xe3, 0x7c, 0x4b, 0x1e, 0x02, 0x8c, 0xbb, 0xf1, 0x21, 0x95, 0x7a, 0xa0, 0xb4, 0x82, 0x6c, 0x6c, 0x7e, 0xb5, 0xf1, 0x16, 0xa6, 0xd6, 0xf9, 0x48, 0xe5, 0xbf, 0xa6, 0x25, 0xa4, 0xf1, 0x7c, 0xb5, 0xf3, 0xc1, 0xeb, 0x33, 0x56, 0x1e, 0xa6, 0xb4, 0x77, 0xb7, 0xc6, 0x49, 0xc9, 0xba, 0x89, 0xfa, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2831 = { .name = "xdh_wei448_2831", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2831_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2831_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2831_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2831_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 248 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2832 for XDH, tcId is 249 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2832_peerpubkey[] = { 0xe5, 0x45, 0x3d, 0x6c, 0x5b, 0xb8, 0x8d, 0xca, 0x66, 0x79, 0x8b, 0xb0, 0x08, 0xbf, 0xc7, 0x32, 0xa2, 0xf4, 0xd1, 0x50, 0xf1, 0x77, 0x0c, 0x12, 0xf0, 0xd4, 0xc3, 0xcf, 0xee, 0x7b, 0x62, 0xee, 0x4f, 0x64, 0x0f, 0x88, 0x8a, 0x51, 0x6a, 0x4f, 0x9b, 0x85, 0x54, 0x55, 0x9f, 0xe0, 0x4c, 0xf7, 0xcf, 0x6f, 0x5b, 0xdf, 0x95, 0xe6, 0xf5, 0x06, }; static const unsigned char xdh_wei448_2832_ourpubkey[] = { 0x22, 0xad, 0xbb, 0xc8, 0x6d, 0x96, 0x60, 0x98, 0xb4, 0x44, 0x0e, 0xba, 0x36, 0x25, 0xed, 0x29, 0x81, 0x08, 0x26, 0xc7, 0xa9, 0xab, 0x20, 0x24, 0x76, 0x20, 0x31, 0xd7, 0x6d, 0x0f, 0xac, 0x96, 0xff, 0x9c, 0xfd, 0x40, 0xa3, 0xc0, 0x15, 0x50, 0xa9, 0x87, 0xa9, 0xfb, 0xc7, 0x96, 0xef, 0x04, 0x37, 0x32, 0xec, 0x9d, 0x39, 0x07, 0x16, 0x83, }; static const unsigned char xdh_wei448_2832_privkey[] = { 0x74, 0xe8, 0xd6, 0xfb, 0x8c, 0xac, 0x97, 0x14, 0xe2, 0xe3, 0xb3, 0x3e, 0x0a, 0xe9, 0x83, 0x72, 0x89, 0x07, 0xcc, 0x8e, 0xc5, 0x93, 0x21, 0x3c, 0x34, 0x04, 0x58, 0x8e, 0x9f, 0x05, 0x7b, 0x94, 0xb1, 0xc3, 0xc7, 0x47, 0x4d, 0xa2, 0x43, 0x80, 0xed, 0xc3, 0x63, 0x03, 0xc5, 0x9a, 0xca, 0x5e, 0xf8, 0x67, 0x8d, 0x89, 0x62, 0x3d, 0x8b, 0x8b, }; static const unsigned char xdh_wei448_2832_sharedsecret[] = { 0xd5, 0xce, 0xc8, 0xc6, 0xe7, 0x44, 0x69, 0x73, 0x98, 0x55, 0xb8, 0x74, 0xc6, 0x36, 0x5b, 0x92, 0x0f, 0x6d, 0xd2, 0xdf, 0x38, 0xc0, 0x2e, 0xcb, 0xdf, 0x47, 0xef, 0xe8, 0xb4, 0x3e, 0xbd, 0x7d, 0x20, 0x3c, 0x4f, 0x11, 0x85, 0xbb, 0x10, 0x1d, 0x49, 0x5f, 0xd5, 0xe6, 0x8b, 0xc8, 0x92, 0x80, 0x26, 0x7a, 0xf5, 0x81, 0x89, 0x8b, 0x03, 0x49, }; static const wycheproof_xdh_test xdh_wei448_2832 = { .name = "xdh_wei448_2832", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2832_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2832_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2832_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2832_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 249 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2833 for XDH, tcId is 250 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2833_peerpubkey[] = { 0xec, 0x5c, 0xec, 0x8d, 0xe7, 0x18, 0xb0, 0x86, 0x64, 0xf2, 0xa5, 0xf7, 0x95, 0xbe, 0x52, 0x15, 0x37, 0x12, 0xe7, 0x46, 0x76, 0x05, 0xfd, 0xe4, 0x2d, 0xcf, 0x30, 0xc7, 0xce, 0xbe, 0x4c, 0xa8, 0xe8, 0x71, 0x0c, 0xc8, 0x99, 0x75, 0x24, 0x24, 0x01, 0xe5, 0x83, 0x90, 0x59, 0xf0, 0xaa, 0xd6, 0xd6, 0x1a, 0x7a, 0x67, 0x5c, 0x45, 0x48, 0x1c, }; static const unsigned char xdh_wei448_2833_ourpubkey[] = { 0x4b, 0xee, 0xec, 0x38, 0x50, 0x43, 0x88, 0xc4, 0xd0, 0xd8, 0x6c, 0xdb, 0x66, 0x36, 0x67, 0x3f, 0xaf, 0x86, 0x6d, 0x03, 0x7e, 0x12, 0x0d, 0x0c, 0x49, 0xb5, 0xf0, 0xd3, 0x77, 0x0e, 0xf9, 0xad, 0x91, 0xcf, 0x0b, 0x19, 0x97, 0x10, 0x9e, 0x2a, 0x29, 0xd0, 0x0a, 0x37, 0x02, 0x85, 0x10, 0x20, 0x52, 0x76, 0x16, 0xa8, 0xeb, 0x0f, 0x0a, 0x13, }; static const unsigned char xdh_wei448_2833_privkey[] = { 0xf0, 0x49, 0x0b, 0xe3, 0xbe, 0xfd, 0x45, 0x60, 0x48, 0x60, 0x23, 0x73, 0x1a, 0x03, 0x97, 0x08, 0x08, 0x16, 0xe5, 0x5d, 0xb0, 0x5e, 0x77, 0x7b, 0xa7, 0x8e, 0x22, 0x51, 0xcd, 0x20, 0xf3, 0x50, 0x4a, 0x16, 0x31, 0x90, 0x78, 0xd2, 0xfe, 0x73, 0x14, 0xb3, 0x0f, 0xdc, 0xef, 0x00, 0xd7, 0x80, 0x94, 0x2d, 0x13, 0xd3, 0xf4, 0xde, 0x76, 0x98, }; static const unsigned char xdh_wei448_2833_sharedsecret[] = { 0x65, 0xa9, 0x20, 0xbb, 0xf2, 0x22, 0x92, 0x0f, 0xc7, 0x54, 0xa1, 0x83, 0x96, 0x8c, 0x6b, 0x98, 0x86, 0x17, 0x45, 0x0a, 0x5b, 0x28, 0xde, 0x1b, 0x5d, 0xe0, 0xee, 0x23, 0xf6, 0x67, 0x40, 0x36, 0xdf, 0xc9, 0x09, 0xd3, 0x78, 0xb1, 0xde, 0x87, 0x20, 0x9a, 0xe3, 0x31, 0xc1, 0x67, 0xc6, 0x1a, 0x0b, 0xfd, 0xab, 0xc3, 0xd2, 0x09, 0x4e, 0x65, }; static const wycheproof_xdh_test xdh_wei448_2833 = { .name = "xdh_wei448_2833", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2833_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2833_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2833_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2833_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 250 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2834 for XDH, tcId is 251 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2834_peerpubkey[] = { 0xc8, 0x08, 0x89, 0xfb, 0x36, 0x4d, 0xc6, 0xa2, 0x3b, 0x16, 0xc0, 0x5f, 0x16, 0xbe, 0x51, 0x01, 0x0c, 0xc5, 0xbf, 0x50, 0xc8, 0xd3, 0xab, 0xb6, 0x09, 0x7f, 0xe4, 0x67, 0x92, 0x3d, 0x50, 0x52, 0x2b, 0xfc, 0xb5, 0x7a, 0xe1, 0xa8, 0xe5, 0x36, 0xab, 0x00, 0xe9, 0x7b, 0x6d, 0x69, 0x89, 0xd3, 0x54, 0x65, 0xc0, 0x0a, 0xd1, 0xfc, 0xd7, 0x57, }; static const unsigned char xdh_wei448_2834_ourpubkey[] = { 0x0f, 0x7c, 0x56, 0x0a, 0x3f, 0xc3, 0xa6, 0xcd, 0xbf, 0x70, 0xef, 0x61, 0xa4, 0x5f, 0xf0, 0x0e, 0xfc, 0x9b, 0xe2, 0x50, 0x9a, 0xdd, 0x93, 0x17, 0xe5, 0x1d, 0x41, 0x21, 0xae, 0xf5, 0x27, 0x41, 0xed, 0x3f, 0xcd, 0x24, 0xc9, 0x73, 0xe4, 0xea, 0x2c, 0x22, 0x97, 0x1e, 0x8b, 0xfd, 0x98, 0x8a, 0x2a, 0x8b, 0x66, 0xfe, 0x05, 0xdd, 0x61, 0x01, }; static const unsigned char xdh_wei448_2834_privkey[] = { 0x14, 0xdf, 0xec, 0xdc, 0x6a, 0xe2, 0x09, 0x1a, 0x22, 0x3a, 0x3e, 0x6b, 0xea, 0x36, 0xc3, 0xca, 0xf3, 0x56, 0xb6, 0x6e, 0xd8, 0x47, 0x88, 0x21, 0xd2, 0x85, 0xa1, 0x04, 0x08, 0xed, 0xc0, 0x30, 0xc1, 0x18, 0xbc, 0x2f, 0x60, 0x99, 0x97, 0x14, 0x6f, 0xba, 0xbf, 0x34, 0x86, 0x58, 0xfa, 0x8b, 0xf3, 0x13, 0xda, 0x6e, 0xd4, 0x9c, 0xe2, 0x81, }; static const unsigned char xdh_wei448_2834_sharedsecret[] = { 0x74, 0x0a, 0x84, 0xcd, 0x54, 0xaf, 0xe2, 0x3b, 0x00, 0x60, 0x6a, 0x30, 0x09, 0xbb, 0x37, 0xa1, 0x30, 0x11, 0x8e, 0x53, 0x52, 0xc5, 0xe3, 0xc3, 0x8b, 0x51, 0x7f, 0xfa, 0x46, 0x98, 0x78, 0x98, 0x52, 0xdc, 0x15, 0x9e, 0x35, 0xd0, 0x6c, 0xe5, 0xeb, 0x68, 0xba, 0x54, 0x14, 0xb2, 0xe6, 0x51, 0x5d, 0x68, 0x3a, 0x80, 0x02, 0x81, 0x74, 0x72, }; static const wycheproof_xdh_test xdh_wei448_2834 = { .name = "xdh_wei448_2834", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2834_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2834_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2834_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2834_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 251 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2835 for XDH, tcId is 252 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2835_peerpubkey[] = { 0x0a, 0xd8, 0xa1, 0x51, 0x1e, 0x59, 0xa2, 0x38, 0xbb, 0x9b, 0xfd, 0x79, 0x04, 0x44, 0xf6, 0xeb, 0x87, 0xed, 0x22, 0xcb, 0x17, 0x0f, 0x9d, 0xcc, 0xbb, 0xcb, 0xc6, 0x4d, 0x0a, 0x66, 0x33, 0x62, 0x32, 0xcd, 0x2d, 0xca, 0x7b, 0x9c, 0xcb, 0x93, 0x44, 0x58, 0x4e, 0xf7, 0x1e, 0x18, 0x1d, 0x5f, 0x47, 0x7b, 0x88, 0x3d, 0xbd, 0x65, 0xdb, 0x7e, }; static const unsigned char xdh_wei448_2835_ourpubkey[] = { 0x0a, 0xf3, 0x0a, 0xbc, 0x27, 0x58, 0xf1, 0x6e, 0x42, 0x4b, 0x86, 0xe4, 0x8f, 0xc6, 0xc7, 0xb3, 0xa0, 0x23, 0x0c, 0xe2, 0x65, 0x34, 0x57, 0x94, 0xae, 0x5c, 0xa6, 0x75, 0xd7, 0x8d, 0x4a, 0x20, 0xe7, 0x6e, 0x77, 0x6f, 0x18, 0x89, 0xc7, 0x9a, 0x08, 0x1e, 0x1b, 0x5d, 0x9f, 0x1f, 0xd1, 0xe4, 0x54, 0x16, 0x11, 0xc6, 0xdf, 0x00, 0x1e, 0x86, }; static const unsigned char xdh_wei448_2835_privkey[] = { 0x0c, 0x3b, 0xdd, 0x0e, 0xae, 0x10, 0x80, 0x13, 0x94, 0xd8, 0x1d, 0x88, 0xc5, 0x0b, 0x0c, 0x79, 0x1e, 0xe8, 0x39, 0x7a, 0x26, 0xe7, 0x0d, 0xfa, 0x02, 0xa0, 0x30, 0xeb, 0x8d, 0xed, 0xa5, 0xa2, 0x0b, 0xf6, 0x9c, 0x42, 0x6f, 0x64, 0xbf, 0xc7, 0x5c, 0x9b, 0xc3, 0x6d, 0x76, 0xa3, 0x54, 0xea, 0xc4, 0xcb, 0xc8, 0x3b, 0xa5, 0x6d, 0x8d, 0x88, }; static const unsigned char xdh_wei448_2835_sharedsecret[] = { 0x30, 0x36, 0x4d, 0xac, 0x7c, 0x97, 0x17, 0xc7, 0x79, 0x27, 0xbd, 0x11, 0x3f, 0x9d, 0x5c, 0xfb, 0x16, 0xf4, 0xe3, 0xfb, 0xeb, 0x5f, 0xe1, 0xd1, 0x73, 0x5f, 0xf7, 0x91, 0xea, 0x2c, 0x12, 0xd5, 0x40, 0x21, 0xbf, 0x52, 0xdb, 0xb2, 0xb2, 0x76, 0xdf, 0xf5, 0x0b, 0x78, 0x9e, 0x96, 0x49, 0x72, 0xb5, 0x0e, 0x4c, 0x07, 0x0e, 0xde, 0xa4, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2835 = { .name = "xdh_wei448_2835", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2835_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2835_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2835_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2835_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 252 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2836 for XDH, tcId is 253 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2836_peerpubkey[] = { 0x51, 0x0b, 0xf0, 0x00, 0x66, 0x14, 0x2c, 0xe7, 0xcb, 0x50, 0x6b, 0x22, 0x7f, 0xdf, 0xd1, 0xe1, 0xc5, 0x7e, 0x9c, 0xef, 0x90, 0x18, 0x64, 0x38, 0x4a, 0xe0, 0x76, 0x40, 0x14, 0x1e, 0xd2, 0xbf, 0x70, 0x0c, 0x91, 0xb5, 0x64, 0x1d, 0x6f, 0xbe, 0x40, 0x96, 0xdd, 0x21, 0xad, 0x51, 0x73, 0x47, 0x72, 0x27, 0xe4, 0x73, 0x3b, 0xdc, 0xd3, 0xaa, }; static const unsigned char xdh_wei448_2836_ourpubkey[] = { 0x5a, 0x10, 0xf7, 0x92, 0xc8, 0xfd, 0xf8, 0x45, 0x15, 0xc0, 0xff, 0x85, 0x06, 0xc0, 0x8d, 0x43, 0x00, 0xc1, 0xa9, 0x85, 0x4c, 0xb2, 0x7c, 0x6b, 0x4c, 0x1f, 0xaf, 0x2d, 0x9c, 0xe2, 0x0a, 0x2d, 0x3a, 0x81, 0x23, 0xfa, 0x87, 0x48, 0x5e, 0xe4, 0x7b, 0x87, 0xe2, 0xed, 0xea, 0xb3, 0xde, 0xbb, 0x64, 0x5d, 0xbf, 0xdd, 0x24, 0x82, 0x03, 0x7e, }; static const unsigned char xdh_wei448_2836_privkey[] = { 0x7c, 0xba, 0xa9, 0xa6, 0x20, 0x37, 0xfb, 0x3b, 0x44, 0xda, 0x1c, 0x07, 0xad, 0xc7, 0x69, 0x85, 0xbb, 0x0c, 0x55, 0xe7, 0xfb, 0x58, 0x54, 0xed, 0xd1, 0x14, 0xa1, 0xae, 0xb3, 0x87, 0x95, 0xc4, 0xce, 0x5f, 0xc9, 0x3f, 0x6c, 0x72, 0x57, 0xf0, 0x45, 0xca, 0x9a, 0xe8, 0x52, 0x6a, 0xdb, 0xda, 0xc5, 0x7f, 0x40, 0x86, 0xb6, 0x98, 0xbb, 0x85, }; static const unsigned char xdh_wei448_2836_sharedsecret[] = { 0x71, 0x11, 0xd8, 0x4a, 0x2d, 0x5e, 0x7b, 0xfb, 0x45, 0xf1, 0xd8, 0x9a, 0x58, 0xab, 0x39, 0x27, 0xfe, 0xb3, 0x9b, 0x31, 0x6c, 0xfa, 0x35, 0x48, 0xc3, 0xf0, 0x56, 0x15, 0x3a, 0xe8, 0x2c, 0xd5, 0x20, 0xa5, 0x82, 0x78, 0xf9, 0x72, 0xc3, 0xd6, 0xdc, 0xaa, 0xdf, 0x6a, 0xe6, 0x83, 0x3f, 0x94, 0x9b, 0x2b, 0x9c, 0xb5, 0xe4, 0x34, 0x14, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_2836 = { .name = "xdh_wei448_2836", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2836_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2836_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2836_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2836_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 253 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2837 for XDH, tcId is 254 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2837_peerpubkey[] = { 0x29, 0x51, 0xe6, 0xc0, 0x95, 0x0e, 0x6a, 0xd8, 0x80, 0x8a, 0x5f, 0xa3, 0x4a, 0x0a, 0x82, 0x8c, 0x04, 0xaa, 0x51, 0x3c, 0x3c, 0x79, 0x8f, 0x43, 0x15, 0xab, 0x6d, 0x4f, 0x47, 0x6f, 0x7a, 0x82, 0xa9, 0x69, 0x19, 0x7c, 0x24, 0xb8, 0xec, 0x6c, 0xa2, 0x30, 0xe6, 0xbb, 0xc6, 0xe6, 0xb8, 0xf2, 0xaf, 0x47, 0x8f, 0x46, 0x33, 0xa2, 0x7a, 0xf0, }; static const unsigned char xdh_wei448_2837_ourpubkey[] = { 0xd4, 0x49, 0xa8, 0xe5, 0x68, 0x82, 0xe0, 0x69, 0x09, 0x05, 0x2d, 0x3f, 0xf2, 0xb1, 0x51, 0x79, 0x4b, 0x01, 0xc0, 0x5f, 0x43, 0x5b, 0x24, 0x6d, 0x04, 0x41, 0xad, 0xd3, 0xda, 0x32, 0x40, 0xb4, 0x4e, 0xfc, 0xf6, 0xd1, 0x34, 0x25, 0xb1, 0x0b, 0x59, 0xc3, 0x16, 0x41, 0xcc, 0x4e, 0xe4, 0xef, 0x49, 0x2c, 0x5d, 0x7a, 0x7b, 0xcb, 0x5f, 0x70, }; static const unsigned char xdh_wei448_2837_privkey[] = { 0x98, 0x84, 0x92, 0xb8, 0x2d, 0x09, 0x6f, 0xa8, 0x2e, 0x9b, 0xd1, 0x2b, 0xab, 0xe1, 0xb5, 0x27, 0xd0, 0xeb, 0xb4, 0x2d, 0x13, 0x19, 0x43, 0x87, 0xf8, 0x9e, 0xe1, 0x13, 0x07, 0x01, 0xda, 0x37, 0x04, 0x9a, 0x23, 0xc7, 0x26, 0xe2, 0x86, 0x24, 0x14, 0x4c, 0xb4, 0x9b, 0x1c, 0xcc, 0x09, 0x3a, 0x6e, 0xaf, 0x24, 0x2a, 0x27, 0xa6, 0xf0, 0x86, }; static const unsigned char xdh_wei448_2837_sharedsecret[] = { 0x42, 0x37, 0x05, 0x8a, 0x28, 0x37, 0xa7, 0x5c, 0xbb, 0xdb, 0xc5, 0x60, 0x43, 0xab, 0x3e, 0xd8, 0xcc, 0x02, 0xf5, 0x96, 0xec, 0x5c, 0xee, 0x54, 0x7a, 0x5d, 0x68, 0x2f, 0x00, 0x8d, 0xf4, 0x9e, 0x60, 0x11, 0x90, 0x1c, 0x94, 0x0e, 0x41, 0x6e, 0xef, 0x37, 0x1c, 0x80, 0xe3, 0x1f, 0xea, 0x48, 0x3f, 0x00, 0x92, 0x51, 0xf7, 0x2a, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei448_2837 = { .name = "xdh_wei448_2837", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2837_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2837_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2837_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2837_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 254 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2838 for XDH, tcId is 255 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2838_peerpubkey[] = { 0x3d, 0xa1, 0x0f, 0x7b, 0x47, 0xf0, 0x77, 0x4a, 0xeb, 0x7c, 0x2d, 0x3e, 0xc9, 0x52, 0x14, 0xb5, 0x4f, 0xb8, 0x0a, 0xb8, 0xf5, 0x35, 0xec, 0x13, 0x84, 0xac, 0xaa, 0xd0, 0x4b, 0x6d, 0x88, 0x61, 0x87, 0x2d, 0x0b, 0xc9, 0x03, 0xab, 0x9c, 0x9b, 0x61, 0xca, 0xc4, 0x67, 0xa3, 0xf6, 0x32, 0xf0, 0xe5, 0x37, 0xa6, 0x96, 0xea, 0x88, 0x28, 0x0b, }; static const unsigned char xdh_wei448_2838_ourpubkey[] = { 0x82, 0x9f, 0xc7, 0x4e, 0xae, 0x7b, 0x91, 0x3b, 0xe4, 0x40, 0x3b, 0xc3, 0xdd, 0x80, 0x52, 0x4e, 0xf1, 0x73, 0xf1, 0x52, 0xc4, 0x7d, 0xbf, 0x2b, 0x4d, 0x2b, 0x3e, 0x53, 0x7e, 0x16, 0xea, 0x71, 0x6c, 0x37, 0x87, 0x14, 0x44, 0x7f, 0x2b, 0x07, 0x22, 0xfb, 0x83, 0x06, 0xda, 0x97, 0xb2, 0xcb, 0x24, 0xba, 0xc8, 0x24, 0x12, 0x48, 0x47, 0xf4, }; static const unsigned char xdh_wei448_2838_privkey[] = { 0x38, 0xb1, 0x19, 0x0d, 0xd6, 0x91, 0xea, 0xc7, 0xbd, 0x5f, 0x80, 0x6b, 0x20, 0x1f, 0xdb, 0xf9, 0x0e, 0x0e, 0xf7, 0xc7, 0x2f, 0x79, 0xbf, 0x2e, 0xf3, 0xa0, 0x4e, 0xac, 0xbc, 0xd4, 0x09, 0x98, 0x4b, 0xc7, 0x65, 0xc0, 0x4f, 0x64, 0x1d, 0xa9, 0x80, 0x25, 0xe4, 0x16, 0x41, 0x55, 0x92, 0xc9, 0x1c, 0x18, 0xec, 0x3c, 0x4d, 0x39, 0x85, 0x9b, }; static const unsigned char xdh_wei448_2838_sharedsecret[] = { 0x4e, 0xda, 0x68, 0xdf, 0x39, 0xba, 0x14, 0xb0, 0x9e, 0xed, 0xd4, 0xc5, 0x2d, 0xb5, 0xa4, 0x95, 0x5b, 0x4e, 0x00, 0xb0, 0x56, 0xca, 0x18, 0x23, 0xe9, 0x3f, 0x19, 0x0b, 0x21, 0xff, 0x7f, 0xe7, 0xe0, 0x5f, 0x80, 0x89, 0xfb, 0x0c, 0x0a, 0x1f, 0xaa, 0x84, 0xff, 0xed, 0xe4, 0x2a, 0xb9, 0xac, 0x93, 0x79, 0x9b, 0x99, 0xfe, 0x18, 0x25, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2838 = { .name = "xdh_wei448_2838", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2838_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2838_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2838_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2838_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 255 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2839 for XDH, tcId is 256 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2839_peerpubkey[] = { 0x83, 0xfd, 0x7a, 0xac, 0x6b, 0xe7, 0x83, 0x19, 0x80, 0xbc, 0x1f, 0x39, 0x16, 0xc3, 0xcb, 0x6b, 0xf0, 0x85, 0x1a, 0x29, 0x04, 0xab, 0x9a, 0x38, 0xca, 0xa4, 0xe7, 0xa0, 0x14, 0xfb, 0xee, 0xbe, 0x9f, 0xa0, 0x12, 0x5a, 0x39, 0xa3, 0xa2, 0x29, 0xc8, 0xdf, 0xc7, 0x5c, 0x98, 0xc3, 0x03, 0x17, 0x9e, 0x60, 0x95, 0x44, 0x69, 0xeb, 0x83, 0x0f, }; static const unsigned char xdh_wei448_2839_ourpubkey[] = { 0x0c, 0x75, 0x8c, 0x0d, 0xf0, 0xf4, 0x5d, 0xa3, 0x25, 0x69, 0x58, 0x77, 0x2e, 0xf7, 0xb4, 0xa2, 0x38, 0x02, 0xd6, 0x9f, 0x8e, 0x97, 0x07, 0x69, 0xfd, 0x36, 0xd3, 0xa9, 0x00, 0x01, 0x4a, 0xcb, 0xfc, 0xb6, 0x70, 0xb2, 0xcd, 0xff, 0xea, 0x98, 0x1a, 0x6b, 0xac, 0xb9, 0xac, 0xdf, 0xa0, 0xda, 0xb9, 0x30, 0x00, 0x88, 0x6f, 0xca, 0x1a, 0x9d, }; static const unsigned char xdh_wei448_2839_privkey[] = { 0xe4, 0xa4, 0x81, 0x98, 0xa8, 0x66, 0x81, 0x2b, 0x3c, 0x7a, 0xc4, 0xe2, 0x83, 0xcf, 0x2b, 0x34, 0x01, 0x33, 0xed, 0xb4, 0x88, 0x06, 0xc9, 0x5c, 0xae, 0xe3, 0x22, 0xea, 0x58, 0x30, 0x9f, 0x9d, 0x53, 0xe7, 0x5c, 0x65, 0x54, 0x05, 0x17, 0x4c, 0x50, 0xd8, 0x7c, 0x37, 0xaf, 0x69, 0xe6, 0x26, 0xbc, 0x5e, 0xb3, 0xfe, 0x48, 0x29, 0x08, 0x9a, }; static const unsigned char xdh_wei448_2839_sharedsecret[] = { 0x30, 0xd4, 0x13, 0x2a, 0x48, 0xfd, 0xa4, 0x03, 0x0d, 0xd6, 0xee, 0x8f, 0x6b, 0x92, 0x91, 0x8f, 0x95, 0x67, 0xc4, 0x0a, 0xbc, 0xd1, 0x93, 0xd7, 0x60, 0x4e, 0x55, 0x10, 0x79, 0xa7, 0xa3, 0xf8, 0x1f, 0x80, 0x25, 0x7b, 0x43, 0x85, 0x9d, 0xd9, 0x0a, 0xd2, 0x17, 0xbd, 0xb3, 0xb2, 0xe0, 0xef, 0x1b, 0x0b, 0x7e, 0x88, 0x46, 0xb9, 0xb4, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_2839 = { .name = "xdh_wei448_2839", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2839_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2839_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2839_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2839_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 256 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2840 for XDH, tcId is 257 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2840_peerpubkey[] = { 0xd3, 0x18, 0x3f, 0x95, 0x04, 0xd7, 0xa2, 0xa7, 0x13, 0x41, 0x37, 0x5a, 0xde, 0x2a, 0x68, 0xa5, 0xb2, 0xb5, 0xf5, 0x97, 0x93, 0x21, 0xee, 0x5b, 0xfa, 0x55, 0x35, 0x5b, 0x8b, 0x60, 0x2b, 0xfe, 0x5e, 0x6e, 0xa6, 0xd9, 0xa8, 0xe9, 0xd8, 0x3e, 0xd1, 0x14, 0x6a, 0x08, 0x16, 0x62, 0xb0, 0xa5, 0x2f, 0x52, 0x37, 0x4e, 0x9d, 0x93, 0xe9, 0x22, }; static const unsigned char xdh_wei448_2840_ourpubkey[] = { 0x1a, 0x49, 0x00, 0xb2, 0xcd, 0x1e, 0xe5, 0x19, 0x3a, 0xc4, 0xf3, 0x7e, 0x6c, 0x43, 0x9f, 0x7f, 0xc0, 0x93, 0x92, 0x99, 0x2b, 0x45, 0x4d, 0xf8, 0x64, 0xc3, 0x21, 0xff, 0xe0, 0x2d, 0xab, 0x6c, 0x6a, 0xc0, 0xa3, 0x28, 0x47, 0x76, 0x60, 0x03, 0x6e, 0x8d, 0x66, 0x9e, 0xb7, 0xda, 0xc8, 0xa5, 0xb8, 0x38, 0xd0, 0xe1, 0xfa, 0xcb, 0xb0, 0x57, }; static const unsigned char xdh_wei448_2840_privkey[] = { 0x3c, 0x96, 0x99, 0xd1, 0x52, 0xec, 0x8f, 0x3d, 0xe3, 0x8e, 0xf3, 0x7a, 0x92, 0xa3, 0x86, 0x59, 0x28, 0x3e, 0xee, 0xfd, 0x19, 0x25, 0xf9, 0x6c, 0xac, 0x53, 0xb4, 0xb7, 0x5b, 0xaf, 0x32, 0x95, 0xdd, 0xd7, 0x08, 0xeb, 0x1b, 0x0f, 0x0a, 0xf0, 0x92, 0x57, 0x92, 0xac, 0x8a, 0xe9, 0xf8, 0x12, 0xde, 0x2b, 0x48, 0xd8, 0x7c, 0x11, 0x4a, 0x9d, }; static const unsigned char xdh_wei448_2840_sharedsecret[] = { 0x7c, 0x27, 0xfa, 0x6b, 0x65, 0x13, 0x3c, 0xd1, 0xa4, 0xa2, 0x90, 0x16, 0x03, 0x0e, 0x11, 0x20, 0x4c, 0x9c, 0xc5, 0x70, 0xcb, 0xda, 0xbe, 0xa0, 0x78, 0xea, 0xbb, 0x5a, 0x2f, 0xb9, 0x2a, 0x3a, 0xc9, 0xf7, 0x5e, 0x4a, 0x19, 0x8d, 0x29, 0x1a, 0xb2, 0xc2, 0x60, 0x4f, 0xad, 0x6b, 0x1a, 0x36, 0xda, 0x89, 0x19, 0xfc, 0xe3, 0x55, 0x60, 0xe8, }; static const wycheproof_xdh_test xdh_wei448_2840 = { .name = "xdh_wei448_2840", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2840_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2840_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2840_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2840_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 257 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2841 for XDH, tcId is 258 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2841_peerpubkey[] = { 0x40, 0xa4, 0xe6, 0x6d, 0x42, 0xe4, 0xd9, 0xa1, 0x3e, 0xd3, 0x48, 0xb3, 0x90, 0xb4, 0x06, 0xa1, 0xd7, 0x3a, 0x1a, 0xd7, 0x1a, 0x2d, 0xe9, 0xf0, 0x65, 0x69, 0x29, 0x92, 0xb0, 0x1b, 0xa6, 0x24, 0x3c, 0x01, 0x34, 0xf4, 0x15, 0x0f, 0xb9, 0xa3, 0xaa, 0xaf, 0xb6, 0xb7, 0x4f, 0x27, 0xe7, 0x3a, 0x53, 0xee, 0x96, 0xee, 0xb0, 0x95, 0x03, 0x2e, }; static const unsigned char xdh_wei448_2841_ourpubkey[] = { 0x7b, 0x25, 0x65, 0x93, 0xcc, 0xc0, 0xb4, 0x54, 0x93, 0x25, 0xde, 0x0a, 0xaa, 0xec, 0x35, 0xb2, 0xc9, 0x62, 0xc1, 0xcf, 0x47, 0xb1, 0xeb, 0x8c, 0xf7, 0xe4, 0x08, 0xaa, 0xeb, 0x1e, 0x4e, 0x06, 0x32, 0x65, 0x7b, 0xd6, 0x12, 0xce, 0x58, 0xde, 0xe5, 0x5c, 0xf5, 0xc0, 0x1c, 0xc8, 0x10, 0x62, 0x82, 0xa2, 0x85, 0xc7, 0x63, 0xf6, 0x5e, 0x54, }; static const unsigned char xdh_wei448_2841_privkey[] = { 0x2c, 0x45, 0x44, 0x67, 0x14, 0xbc, 0xb9, 0x25, 0x2b, 0x29, 0xaa, 0x50, 0x50, 0x27, 0x7b, 0x43, 0xcb, 0x39, 0x77, 0x58, 0x49, 0x0f, 0x49, 0x65, 0xe7, 0x7a, 0x8b, 0x6c, 0xb9, 0x84, 0xb4, 0x51, 0x18, 0xb6, 0x23, 0x48, 0xeb, 0x49, 0x4a, 0xe9, 0x6b, 0x74, 0x43, 0x15, 0x52, 0xa9, 0x45, 0x61, 0x0b, 0x2e, 0x1f, 0x56, 0x59, 0xfb, 0xc7, 0x81, }; static const unsigned char xdh_wei448_2841_sharedsecret[] = { 0x75, 0x0b, 0x89, 0xd5, 0xbe, 0x9d, 0x34, 0xa3, 0x2b, 0x92, 0xab, 0xef, 0x98, 0x44, 0x07, 0x29, 0xa7, 0x3c, 0x73, 0x3b, 0xd6, 0x31, 0x8e, 0x38, 0x59, 0xbf, 0x88, 0x7f, 0x4b, 0x46, 0xa7, 0x04, 0x8a, 0x61, 0xeb, 0xa1, 0xe3, 0xc9, 0x88, 0x89, 0xee, 0x71, 0x2c, 0x4f, 0x24, 0x65, 0x83, 0xcb, 0xea, 0x23, 0x76, 0x82, 0x50, 0x80, 0x2d, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2841 = { .name = "xdh_wei448_2841", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2841_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2841_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2841_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2841_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 258 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2842 for XDH, tcId is 259 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2842_peerpubkey[] = { 0x72, 0xf7, 0x48, 0xf5, 0x10, 0x28, 0xb0, 0xb2, 0xb3, 0x89, 0x64, 0x24, 0x71, 0x00, 0xfb, 0x55, 0x21, 0x75, 0xfa, 0xdd, 0x4a, 0xb5, 0xbc, 0xf3, 0x9d, 0xcf, 0xbd, 0xda, 0x32, 0x8b, 0xd6, 0x7f, 0xa1, 0x04, 0xe4, 0x6e, 0x7a, 0x55, 0xfb, 0x03, 0x19, 0xe4, 0xfe, 0x7c, 0x94, 0x07, 0xc8, 0x68, 0x30, 0xcb, 0x41, 0x81, 0x08, 0x62, 0x05, 0x4b, }; static const unsigned char xdh_wei448_2842_ourpubkey[] = { 0x81, 0xbb, 0x57, 0x72, 0x08, 0xd5, 0xb7, 0x19, 0x51, 0xaa, 0xff, 0xae, 0x72, 0x41, 0x29, 0x7d, 0xd2, 0x61, 0xa9, 0x03, 0x74, 0x74, 0x91, 0x6f, 0xae, 0xf4, 0x2e, 0xe6, 0x5e, 0x84, 0x39, 0x6d, 0xcf, 0xe5, 0xd6, 0x6f, 0xa9, 0xb0, 0xbd, 0xca, 0x54, 0x3a, 0xd9, 0xb7, 0xef, 0x54, 0x84, 0x9c, 0xfe, 0x04, 0x9a, 0x31, 0xae, 0x05, 0xba, 0x04, }; static const unsigned char xdh_wei448_2842_privkey[] = { 0xf0, 0xf1, 0x87, 0xeb, 0xde, 0x1b, 0xf9, 0xa1, 0xcf, 0x5f, 0xc3, 0xa9, 0xf9, 0x05, 0x2b, 0x33, 0xa7, 0xf5, 0x07, 0x2e, 0xfe, 0x84, 0xfb, 0x06, 0x02, 0xcd, 0x50, 0x0b, 0x78, 0xc8, 0xaa, 0xce, 0x23, 0x49, 0x90, 0xd3, 0xc2, 0x93, 0xcd, 0xd1, 0x9d, 0x8e, 0xf0, 0x60, 0x12, 0x28, 0x9a, 0x28, 0x0c, 0x53, 0xae, 0x81, 0x4f, 0xc4, 0x29, 0x94, }; static const unsigned char xdh_wei448_2842_sharedsecret[] = { 0x3f, 0x08, 0xf0, 0xfe, 0x4c, 0x3a, 0x6b, 0xad, 0x42, 0x5c, 0x62, 0x68, 0xb4, 0xc3, 0xeb, 0xe5, 0x98, 0x3b, 0xda, 0xfc, 0xd7, 0xb6, 0x0a, 0x02, 0xd1, 0x24, 0x7c, 0x76, 0xb2, 0xcd, 0xe2, 0xe5, 0x6c, 0x2c, 0x15, 0x2e, 0x17, 0x99, 0x59, 0x5c, 0xd1, 0x23, 0x72, 0x96, 0xbc, 0x9c, 0x1a, 0x74, 0xe1, 0x04, 0xcd, 0x9f, 0x5f, 0xb4, 0x1c, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2842 = { .name = "xdh_wei448_2842", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2842_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2842_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2842_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2842_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 259 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2843 for XDH, tcId is 260 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2843_peerpubkey[] = { 0x63, 0xb4, 0x75, 0xdd, 0x74, 0x8d, 0x69, 0xa3, 0xd9, 0xbd, 0x58, 0xb4, 0x0a, 0xad, 0x21, 0x4a, 0x49, 0x7f, 0xf6, 0xdd, 0xc1, 0x85, 0x95, 0x2d, 0xa9, 0xdf, 0x7f, 0x10, 0xf1, 0x47, 0x46, 0xd2, 0xfb, 0x3b, 0xa8, 0xa1, 0x63, 0xc6, 0x96, 0x84, 0x66, 0x0a, 0xda, 0x69, 0x5d, 0x97, 0xaa, 0x77, 0x5e, 0xfe, 0x31, 0x97, 0x83, 0x21, 0x0f, 0xb9, }; static const unsigned char xdh_wei448_2843_ourpubkey[] = { 0xaf, 0xf2, 0x94, 0x75, 0x77, 0x1a, 0xe4, 0xd7, 0xdc, 0x7f, 0x9b, 0x6d, 0x1f, 0xd3, 0xf0, 0x1b, 0x42, 0x4e, 0x4f, 0xc6, 0xaf, 0x8d, 0x20, 0x16, 0x99, 0xe0, 0x90, 0x99, 0xa6, 0xb4, 0xd3, 0xbc, 0xc8, 0x45, 0xc1, 0xe8, 0xae, 0x18, 0x89, 0x04, 0x86, 0xdd, 0xf9, 0x08, 0xd0, 0xab, 0x06, 0x9d, 0xe2, 0x9d, 0x65, 0xe2, 0xa3, 0x48, 0x09, 0x7c, }; static const unsigned char xdh_wei448_2843_privkey[] = { 0xd4, 0xbe, 0x35, 0x9d, 0x94, 0x86, 0x27, 0xc6, 0x5c, 0x40, 0x66, 0x6b, 0x6f, 0xc5, 0x8d, 0xa9, 0x8a, 0x6d, 0x17, 0xa4, 0x37, 0xfc, 0x74, 0x5e, 0x1d, 0x08, 0x2c, 0x65, 0x45, 0xf5, 0xd2, 0x37, 0x1b, 0x25, 0xdf, 0x69, 0x09, 0x61, 0x95, 0x92, 0x4f, 0x45, 0x65, 0x72, 0x59, 0x43, 0xfa, 0x10, 0x89, 0xee, 0x19, 0x34, 0xf7, 0x67, 0x16, 0x93, }; static const unsigned char xdh_wei448_2843_sharedsecret[] = { 0xe6, 0x9b, 0x39, 0x17, 0xc3, 0xca, 0xf5, 0x8d, 0xfe, 0x8c, 0x9b, 0x60, 0x15, 0x44, 0xd3, 0x19, 0xa0, 0x05, 0x44, 0xf3, 0xc8, 0xba, 0x7c, 0x8c, 0x4d, 0x55, 0x71, 0x16, 0xd9, 0x41, 0x61, 0x71, 0xbb, 0x84, 0xce, 0x2d, 0xc1, 0xac, 0x72, 0x32, 0x49, 0x60, 0x50, 0x23, 0xd3, 0x9d, 0x28, 0x7f, 0x17, 0xf0, 0x23, 0x1c, 0x61, 0x1e, 0x6c, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2843 = { .name = "xdh_wei448_2843", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2843_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2843_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2843_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2843_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 260 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2844 for XDH, tcId is 261 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2844_peerpubkey[] = { 0x07, 0x31, 0xcb, 0x8c, 0x77, 0xf5, 0xb9, 0xe5, 0x1a, 0x90, 0x3b, 0x86, 0x47, 0x5e, 0x41, 0xa3, 0x7a, 0xbc, 0xb0, 0xef, 0xfb, 0x89, 0x8c, 0x6c, 0x8d, 0xe7, 0x1f, 0x28, 0xc8, 0x29, 0x2b, 0xe4, 0xa2, 0xcc, 0xdf, 0xf1, 0x3b, 0x62, 0xed, 0xd2, 0x1a, 0x8f, 0xad, 0x84, 0x6d, 0x0e, 0x1d, 0x9e, 0xac, 0x18, 0xcc, 0x4d, 0xe9, 0x23, 0x2d, 0x0e, }; static const unsigned char xdh_wei448_2844_ourpubkey[] = { 0x2b, 0xd2, 0x88, 0xfb, 0xbc, 0xb0, 0x3d, 0x67, 0x4a, 0x18, 0xa7, 0xa9, 0x5a, 0xf9, 0xdc, 0x14, 0x7e, 0xdf, 0xf6, 0x75, 0xf1, 0x28, 0xcf, 0x2a, 0xf1, 0x8d, 0x29, 0x32, 0x83, 0xe3, 0xac, 0x32, 0x07, 0xdf, 0xb7, 0xf4, 0xe0, 0x01, 0x07, 0xf9, 0xa2, 0x75, 0x30, 0xf4, 0x2e, 0x3c, 0x33, 0xf2, 0x84, 0xa6, 0xa3, 0xec, 0xcf, 0xd0, 0x96, 0xd3, }; static const unsigned char xdh_wei448_2844_privkey[] = { 0xc4, 0x21, 0xe2, 0x0c, 0x39, 0x1c, 0x60, 0xcf, 0x4a, 0xbc, 0x0d, 0x57, 0x2f, 0x33, 0x5c, 0x36, 0x7b, 0xf0, 0x2c, 0xd5, 0x98, 0x6f, 0x38, 0xc3, 0x80, 0x5f, 0xf3, 0x9f, 0xa9, 0x66, 0x08, 0x76, 0x80, 0x06, 0x30, 0x3e, 0xf5, 0xfd, 0x11, 0x87, 0xaf, 0x2d, 0x3a, 0x66, 0x72, 0xe5, 0x18, 0x16, 0x6b, 0x44, 0x8d, 0xc7, 0x9f, 0xe7, 0x1d, 0x9f, }; static const unsigned char xdh_wei448_2844_sharedsecret[] = { 0x7a, 0x7f, 0x60, 0xd5, 0x04, 0x45, 0x29, 0x98, 0xa6, 0x15, 0x37, 0x78, 0xe4, 0x9b, 0x66, 0x39, 0x76, 0xd7, 0x5a, 0xa8, 0x63, 0xa5, 0x71, 0xb2, 0xdc, 0x8c, 0x99, 0xbd, 0x4d, 0xd6, 0x12, 0x52, 0x19, 0x3e, 0x55, 0xfa, 0x06, 0x8b, 0x45, 0x19, 0x42, 0x71, 0xb3, 0xa3, 0x96, 0x91, 0x2a, 0x2c, 0xa3, 0x68, 0xb5, 0x60, 0x55, 0xb6, 0xf1, 0xc9, }; static const wycheproof_xdh_test xdh_wei448_2844 = { .name = "xdh_wei448_2844", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2844_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2844_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2844_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2844_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 261 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2845 for XDH, tcId is 262 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2845_peerpubkey[] = { 0xe1, 0x20, 0xba, 0xc8, 0xb1, 0x25, 0x14, 0x25, 0xb2, 0x44, 0xdb, 0x72, 0x12, 0x4d, 0xd9, 0x6c, 0x2c, 0x52, 0xcc, 0xa8, 0x2b, 0x42, 0x57, 0x00, 0x07, 0x0b, 0xb8, 0xa7, 0xdf, 0x81, 0x04, 0x35, 0x18, 0x98, 0x07, 0x62, 0x02, 0x2f, 0x0f, 0xc9, 0xe0, 0x9d, 0x15, 0xfc, 0xcb, 0x06, 0xb7, 0x6f, 0x5f, 0x8a, 0x57, 0x2a, 0x4b, 0x79, 0xee, 0x15, }; static const unsigned char xdh_wei448_2845_ourpubkey[] = { 0xec, 0xfe, 0x3b, 0x86, 0xfb, 0x7b, 0x8b, 0xe6, 0xc2, 0xbf, 0xae, 0x67, 0x67, 0x28, 0xa0, 0x85, 0x79, 0xde, 0x42, 0x3d, 0xac, 0x24, 0xe5, 0xbb, 0xd1, 0x3f, 0x97, 0x1c, 0x4c, 0x58, 0x1d, 0x7a, 0xb8, 0xe7, 0x7d, 0x7e, 0x22, 0xfc, 0x0b, 0x75, 0xe1, 0xaa, 0xe9, 0x87, 0xc9, 0x13, 0xdb, 0xb3, 0x77, 0x28, 0x1c, 0xd4, 0x1f, 0x15, 0x08, 0xf4, }; static const unsigned char xdh_wei448_2845_privkey[] = { 0x30, 0x12, 0xf7, 0x85, 0x1f, 0x3c, 0xe0, 0xaa, 0x48, 0x1d, 0xc6, 0x5c, 0x32, 0x22, 0x39, 0x79, 0x75, 0x11, 0xa6, 0xee, 0x1f, 0x02, 0xb1, 0x02, 0x6d, 0x49, 0x03, 0x2e, 0xfb, 0x99, 0x85, 0x03, 0xd7, 0x25, 0x05, 0xc7, 0x26, 0x1c, 0x61, 0xcd, 0x69, 0x8b, 0xa8, 0xae, 0xc1, 0xd1, 0xb9, 0xa8, 0x60, 0xe9, 0x90, 0x8c, 0x81, 0xe5, 0x63, 0x90, }; static const unsigned char xdh_wei448_2845_sharedsecret[] = { 0xe1, 0x56, 0x0d, 0xab, 0x7b, 0xb1, 0x8f, 0x74, 0xed, 0x8a, 0x98, 0x5f, 0x51, 0x99, 0x3d, 0x65, 0x59, 0xc3, 0x12, 0xfa, 0x45, 0x3d, 0x1e, 0xe8, 0x45, 0x47, 0xf3, 0x5f, 0xa8, 0x69, 0x4e, 0x97, 0x4a, 0xb6, 0x01, 0xdb, 0xad, 0xad, 0x46, 0x58, 0xd6, 0x99, 0x97, 0x77, 0xba, 0x0d, 0xad, 0x19, 0x9a, 0xb0, 0xc2, 0x2d, 0x49, 0x51, 0x1f, 0x16, }; static const wycheproof_xdh_test xdh_wei448_2845 = { .name = "xdh_wei448_2845", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2845_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2845_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2845_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2845_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 262 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2846 for XDH, tcId is 263 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2846_peerpubkey[] = { 0xa4, 0xb4, 0x6e, 0xd5, 0xa3, 0x64, 0xeb, 0xe3, 0x50, 0x4c, 0xfe, 0x32, 0xd5, 0x97, 0xfc, 0x7d, 0xfc, 0x8d, 0xc7, 0x26, 0x8b, 0x15, 0xfd, 0x40, 0xd6, 0xa3, 0x1d, 0x75, 0xfa, 0x74, 0x45, 0x6c, 0x6f, 0x7d, 0xe8, 0x92, 0xb4, 0x8d, 0x08, 0x94, 0xaf, 0x6a, 0xf6, 0x99, 0x11, 0x44, 0xff, 0xe6, 0x21, 0x3c, 0xab, 0xf8, 0x63, 0xde, 0xc0, 0x41, }; static const unsigned char xdh_wei448_2846_ourpubkey[] = { 0x12, 0xcc, 0x79, 0x93, 0x4c, 0x70, 0x67, 0xf9, 0x68, 0x20, 0x25, 0x16, 0x92, 0xa7, 0xda, 0xde, 0x0f, 0x7b, 0xcf, 0x34, 0xa1, 0x68, 0x8c, 0xf3, 0x94, 0x22, 0xb8, 0xe4, 0x2a, 0x1b, 0x69, 0xc8, 0x8f, 0xee, 0x4b, 0xb1, 0xda, 0xbd, 0x79, 0xb5, 0xa4, 0xed, 0x90, 0x51, 0xb8, 0x90, 0x22, 0xef, 0xf2, 0x17, 0xc6, 0x1f, 0xcd, 0x6c, 0xbe, 0x60, }; static const unsigned char xdh_wei448_2846_privkey[] = { 0xbc, 0x87, 0x11, 0x09, 0xd0, 0x26, 0xb1, 0x41, 0x34, 0x9f, 0xd6, 0xcb, 0x97, 0xa3, 0x65, 0xba, 0xf1, 0x8d, 0x7e, 0x40, 0xc3, 0x11, 0xde, 0x98, 0x0f, 0x50, 0x21, 0x7e, 0x7f, 0xf1, 0xeb, 0x86, 0x9a, 0x5f, 0x9f, 0x29, 0xde, 0x1b, 0xd7, 0x60, 0xf4, 0x31, 0x3c, 0x01, 0x0d, 0xab, 0x9c, 0xbe, 0xa3, 0xfd, 0xb1, 0x2b, 0x95, 0xb7, 0xc9, 0x83, }; static const unsigned char xdh_wei448_2846_sharedsecret[] = { 0x28, 0x44, 0x9c, 0x1f, 0x5c, 0x54, 0x3e, 0x09, 0x41, 0x7e, 0x3d, 0xb5, 0x7b, 0xff, 0xa6, 0xc2, 0x9e, 0x0e, 0xe4, 0x39, 0x52, 0xc1, 0x0a, 0xb2, 0xbd, 0xba, 0x80, 0x6b, 0xd0, 0xbe, 0x28, 0xd2, 0xe9, 0xc4, 0x68, 0x4c, 0xe5, 0xc5, 0xcd, 0xdf, 0x2a, 0x67, 0x88, 0x33, 0xfc, 0x2f, 0x05, 0x85, 0x23, 0x02, 0xdd, 0x28, 0x30, 0x98, 0xd1, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_2846 = { .name = "xdh_wei448_2846", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2846_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2846_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2846_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2846_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 263 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2847 for XDH, tcId is 264 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2847_peerpubkey[] = { 0xdc, 0x9d, 0xf7, 0x90, 0x6a, 0xc7, 0x0e, 0xeb, 0xa1, 0x3a, 0x76, 0x6f, 0xfe, 0x82, 0xdf, 0x94, 0xc8, 0x33, 0xbd, 0x1b, 0xd5, 0x2c, 0x65, 0x44, 0x9b, 0x1a, 0xba, 0x4d, 0x3c, 0x3b, 0x36, 0x06, 0x02, 0xac, 0x30, 0x48, 0x37, 0x78, 0x22, 0x92, 0x3d, 0xb8, 0x06, 0x4c, 0x7d, 0xbd, 0x68, 0xf5, 0x3f, 0xbe, 0xc5, 0xe8, 0x6a, 0xb2, 0x3c, 0x56, }; static const unsigned char xdh_wei448_2847_ourpubkey[] = { 0xf3, 0x5a, 0xeb, 0xb9, 0xb8, 0x98, 0x8f, 0x2a, 0x98, 0xa7, 0x36, 0x0f, 0x89, 0x5b, 0x0f, 0xc9, 0x61, 0xba, 0x74, 0xbc, 0xb9, 0xc1, 0x0a, 0xf6, 0x22, 0x94, 0x2c, 0x79, 0xc1, 0x30, 0xd7, 0xca, 0x06, 0x8b, 0xf4, 0xdb, 0x3f, 0x14, 0x49, 0x88, 0x39, 0x64, 0x9f, 0x5f, 0x3b, 0xdb, 0x63, 0x08, 0xc3, 0xe7, 0x30, 0x56, 0x3e, 0x83, 0xb0, 0x39, }; static const unsigned char xdh_wei448_2847_privkey[] = { 0x9c, 0xfa, 0x3e, 0xb1, 0x9c, 0x53, 0x80, 0x84, 0xdc, 0x9b, 0x90, 0x03, 0xb1, 0xb8, 0x0a, 0xcb, 0x5a, 0x61, 0xf6, 0xbb, 0xf4, 0x93, 0xff, 0x82, 0x85, 0xc8, 0xcb, 0xf6, 0x48, 0xcc, 0x25, 0x87, 0x7c, 0xec, 0x79, 0x2e, 0x57, 0x3e, 0xe3, 0x8f, 0x28, 0xdf, 0x15, 0x45, 0x51, 0x39, 0x2f, 0x59, 0xf3, 0x3f, 0xea, 0xa0, 0x4c, 0x72, 0x02, 0x9b, }; static const unsigned char xdh_wei448_2847_sharedsecret[] = { 0x31, 0x8a, 0x56, 0xad, 0xf9, 0x66, 0x12, 0xdd, 0x1e, 0xcc, 0x49, 0x35, 0xb4, 0xa2, 0x25, 0xae, 0x35, 0x1f, 0xcc, 0xcb, 0xd4, 0xda, 0x3e, 0x6e, 0xd1, 0x3e, 0xf8, 0x0b, 0xe8, 0x64, 0x25, 0x1f, 0x71, 0x42, 0xa8, 0xe1, 0xb0, 0x14, 0x30, 0x50, 0x8c, 0x24, 0xd8, 0xb9, 0xc4, 0x26, 0x78, 0x54, 0x86, 0x95, 0xd1, 0x39, 0x36, 0x31, 0x17, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_2847 = { .name = "xdh_wei448_2847", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2847_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2847_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2847_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2847_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 264 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2848 for XDH, tcId is 265 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2848_peerpubkey[] = { 0xb1, 0xe6, 0x5a, 0x10, 0x78, 0x29, 0xd8, 0x4d, 0x3b, 0x3b, 0x7b, 0x66, 0x4b, 0xaf, 0x01, 0xdc, 0xa5, 0x51, 0x6b, 0xaa, 0xf6, 0x2d, 0x3d, 0xc3, 0x3d, 0x91, 0x7c, 0x60, 0x88, 0x33, 0xdd, 0x0d, 0x72, 0x2f, 0x11, 0x59, 0x4c, 0x08, 0xf9, 0x86, 0x99, 0xa6, 0xa2, 0x2e, 0xf7, 0x89, 0x74, 0xc1, 0x5a, 0xdc, 0x90, 0x06, 0x09, 0x52, 0x7a, 0x7a, }; static const unsigned char xdh_wei448_2848_ourpubkey[] = { 0xe2, 0x4e, 0x8c, 0x9b, 0xc7, 0x28, 0x53, 0x58, 0x7f, 0x40, 0x13, 0xcd, 0x01, 0x34, 0x5a, 0xb5, 0xc7, 0x05, 0x42, 0xd8, 0x91, 0x20, 0xc7, 0x1f, 0xb0, 0xf7, 0xc3, 0xa2, 0x2e, 0x13, 0x17, 0xcb, 0x92, 0xe7, 0x9f, 0x73, 0x45, 0x15, 0xf4, 0x74, 0xf8, 0x8e, 0x96, 0x21, 0xb0, 0x0c, 0x57, 0x8c, 0x20, 0xea, 0x5e, 0x75, 0x60, 0x0d, 0xd2, 0xd5, }; static const unsigned char xdh_wei448_2848_privkey[] = { 0xf4, 0x7a, 0x0e, 0xbb, 0x03, 0xfd, 0x34, 0x50, 0x0f, 0xb0, 0xca, 0xe9, 0x53, 0x7f, 0x84, 0x50, 0x22, 0xd1, 0xfd, 0x0c, 0xa1, 0x95, 0xff, 0x57, 0x05, 0xc9, 0x47, 0x12, 0x5f, 0xcd, 0x75, 0x19, 0xc9, 0x30, 0x1e, 0x53, 0x90, 0x40, 0xd6, 0x70, 0x0f, 0x13, 0xa9, 0x3d, 0xfc, 0xd1, 0xbc, 0x90, 0x81, 0x21, 0xb9, 0x9a, 0x48, 0xfa, 0xc2, 0x9c, }; static const unsigned char xdh_wei448_2848_sharedsecret[] = { 0x82, 0xa9, 0xa3, 0xe6, 0x67, 0xc2, 0xd6, 0x0f, 0xa0, 0xfc, 0x83, 0xb3, 0x38, 0x62, 0x83, 0x7c, 0xf3, 0x68, 0x2f, 0xd9, 0x73, 0x57, 0xb1, 0x38, 0x98, 0x21, 0x15, 0x59, 0x0f, 0x92, 0xb1, 0xcc, 0xdc, 0x41, 0x50, 0x30, 0x3f, 0x4c, 0x67, 0x33, 0x04, 0x76, 0xa8, 0xda, 0xdd, 0x2b, 0x61, 0xca, 0x40, 0xbb, 0xc3, 0x86, 0x24, 0x58, 0x5f, 0x8a, }; static const wycheproof_xdh_test xdh_wei448_2848 = { .name = "xdh_wei448_2848", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2848_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2848_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2848_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2848_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 265 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2849 for XDH, tcId is 266 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2849_peerpubkey[] = { 0xa9, 0xfc, 0x50, 0xd4, 0x34, 0x71, 0xbd, 0x14, 0xcf, 0x7e, 0xf4, 0x21, 0x9d, 0xc7, 0xec, 0x09, 0x34, 0x80, 0x71, 0xa8, 0xcf, 0xc0, 0x73, 0xd9, 0x0e, 0xc2, 0x67, 0x27, 0x56, 0x9e, 0xf1, 0x1c, 0x4c, 0xe6, 0x56, 0x5d, 0x90, 0x61, 0x00, 0x0b, 0xc8, 0x3f, 0xd6, 0x4a, 0xe8, 0x22, 0xc3, 0x14, 0x4e, 0xa0, 0x27, 0x7c, 0xf2, 0x71, 0xd3, 0xf6, }; static const unsigned char xdh_wei448_2849_ourpubkey[] = { 0x38, 0x81, 0xa5, 0x35, 0xb6, 0x38, 0x82, 0x37, 0xe3, 0xd0, 0x9a, 0x59, 0x26, 0xba, 0xb8, 0x63, 0xa0, 0x34, 0xe3, 0x07, 0xc5, 0x09, 0x4d, 0x2a, 0x91, 0x53, 0xfc, 0xb7, 0x89, 0x96, 0x4d, 0x22, 0x4e, 0xd4, 0x48, 0xae, 0x5e, 0x06, 0x23, 0x3c, 0xe5, 0xf9, 0xfa, 0x3e, 0xea, 0x45, 0x6d, 0x91, 0x98, 0xa1, 0xac, 0x17, 0xd7, 0x40, 0xb9, 0x69, }; static const unsigned char xdh_wei448_2849_privkey[] = { 0x18, 0x53, 0x2d, 0x04, 0xfe, 0x1e, 0x3a, 0xf6, 0xdb, 0xab, 0xbe, 0x86, 0x52, 0x49, 0x5d, 0xb6, 0x40, 0xe0, 0xb3, 0x95, 0x14, 0xfa, 0x26, 0xc2, 0x0c, 0x86, 0x7f, 0x8e, 0x85, 0x37, 0xfc, 0x93, 0x70, 0xa4, 0x23, 0x05, 0x65, 0x99, 0x44, 0xea, 0xb2, 0x09, 0x3b, 0xbf, 0xc9, 0xc5, 0xe3, 0xeb, 0x75, 0x9f, 0x07, 0x86, 0xfb, 0x05, 0x78, 0x87, }; static const unsigned char xdh_wei448_2849_sharedsecret[] = { 0x65, 0xb4, 0xfa, 0x3d, 0x4d, 0x65, 0xfe, 0xbb, 0x2c, 0x57, 0xc9, 0xf9, 0xcc, 0xbb, 0x57, 0x30, 0xb1, 0xe6, 0xc8, 0xa1, 0x9e, 0xe3, 0x7a, 0xc3, 0xa9, 0x04, 0x61, 0xe1, 0xa9, 0xa4, 0x69, 0x6a, 0x5b, 0x51, 0x29, 0xe1, 0x7b, 0x1a, 0xb4, 0x69, 0x4b, 0x67, 0xfd, 0x88, 0x53, 0xda, 0x3a, 0x75, 0x23, 0x1b, 0x6f, 0x4c, 0x2c, 0x86, 0x65, 0x48, }; static const wycheproof_xdh_test xdh_wei448_2849 = { .name = "xdh_wei448_2849", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2849_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2849_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2849_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2849_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 266 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2850 for XDH, tcId is 267 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2850_peerpubkey[] = { 0x7e, 0xcc, 0x90, 0xce, 0xa3, 0x06, 0xfb, 0x13, 0x7f, 0x07, 0x2e, 0x6f, 0x3e, 0x1b, 0x20, 0x8a, 0x11, 0xb4, 0x01, 0xc6, 0xc9, 0x3b, 0xee, 0x08, 0x27, 0x69, 0xbc, 0x1f, 0x77, 0x93, 0xdd, 0xbd, 0xb1, 0x40, 0xdc, 0x97, 0x1b, 0x8f, 0x63, 0x90, 0x46, 0x86, 0xf4, 0xa5, 0xa3, 0x0a, 0xa9, 0xf8, 0x07, 0xce, 0x38, 0xb4, 0xe8, 0xf6, 0xef, 0x10, }; static const unsigned char xdh_wei448_2850_ourpubkey[] = { 0x42, 0xe2, 0x4e, 0xa2, 0x0f, 0x1a, 0x4a, 0xfc, 0x20, 0x38, 0x0b, 0xba, 0x82, 0xb8, 0x35, 0x09, 0x17, 0xd9, 0x0e, 0x8b, 0xfb, 0x02, 0x34, 0x29, 0x5e, 0x57, 0x3d, 0x7f, 0x5b, 0x24, 0xad, 0x60, 0x38, 0xad, 0x79, 0xba, 0x97, 0x80, 0x7c, 0xe3, 0x4d, 0xf8, 0x6b, 0x26, 0xb9, 0x3a, 0x7c, 0x1a, 0xd9, 0xcb, 0x05, 0x19, 0x40, 0xe5, 0x72, 0x78, }; static const unsigned char xdh_wei448_2850_privkey[] = { 0xe0, 0x36, 0xdf, 0x73, 0xea, 0x2b, 0x42, 0xce, 0x38, 0x5d, 0xda, 0xcb, 0x37, 0xa1, 0x31, 0x23, 0x91, 0x76, 0xda, 0x91, 0x64, 0x2f, 0x9d, 0x32, 0x81, 0x90, 0x48, 0xd6, 0x90, 0xc6, 0x77, 0x6f, 0xa3, 0x3a, 0x8d, 0x9a, 0xf6, 0x62, 0x09, 0x03, 0x0e, 0x3f, 0x54, 0x3b, 0x15, 0x84, 0xb6, 0xd4, 0xa8, 0xaf, 0x02, 0xe7, 0x26, 0xf9, 0x0e, 0x92, }; static const unsigned char xdh_wei448_2850_sharedsecret[] = { 0x9d, 0x88, 0x9f, 0xfb, 0xf9, 0x65, 0xdd, 0x3d, 0x91, 0xa3, 0xb8, 0xcd, 0x89, 0xae, 0xc0, 0x0a, 0x49, 0xb0, 0x87, 0xaf, 0x17, 0x1d, 0xcc, 0xdf, 0x16, 0x7b, 0xc5, 0x90, 0x7e, 0xeb, 0x4d, 0x87, 0x10, 0xf9, 0x35, 0xc3, 0x1a, 0xb2, 0xb6, 0xfc, 0x7a, 0xe6, 0x55, 0xf0, 0xab, 0x34, 0x2d, 0x1a, 0x9d, 0x6a, 0x80, 0xcb, 0x75, 0x95, 0xa2, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2850 = { .name = "xdh_wei448_2850", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2850_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2850_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2850_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2850_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 267 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2851 for XDH, tcId is 268 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2851_peerpubkey[] = { 0x54, 0x95, 0x00, 0xe6, 0x64, 0xed, 0x20, 0x37, 0xd2, 0x07, 0x10, 0xf4, 0x27, 0xdf, 0xae, 0x6e, 0x20, 0xbe, 0x0e, 0xce, 0xbd, 0x42, 0x04, 0x20, 0x60, 0x79, 0xcb, 0x66, 0x13, 0x01, 0x2e, 0x13, 0x72, 0x5b, 0xd2, 0x36, 0x22, 0x4c, 0x68, 0x98, 0x7d, 0xf0, 0xd0, 0x8a, 0xfe, 0xb8, 0x4f, 0xb8, 0x96, 0x34, 0xf2, 0xd5, 0x11, 0x72, 0xd7, 0x5c, }; static const unsigned char xdh_wei448_2851_ourpubkey[] = { 0x14, 0x7d, 0xcb, 0x9b, 0xdc, 0x6d, 0x99, 0x47, 0xec, 0xc0, 0xfe, 0xf3, 0x09, 0xbb, 0x98, 0x78, 0x37, 0x32, 0x31, 0x79, 0xea, 0x3a, 0x49, 0xb1, 0x1c, 0x98, 0x5a, 0xe6, 0xf6, 0xf0, 0x7e, 0x32, 0xfc, 0x4a, 0xa1, 0xbe, 0xc7, 0x2e, 0xab, 0x6e, 0xcb, 0x3d, 0x08, 0xe9, 0x83, 0x8c, 0x1d, 0xb2, 0x3c, 0x03, 0x5c, 0x9f, 0xcc, 0x7e, 0x80, 0x65, }; static const unsigned char xdh_wei448_2851_privkey[] = { 0x0c, 0x56, 0x46, 0x8b, 0xfd, 0x25, 0xd2, 0x4b, 0x54, 0xe2, 0x7f, 0xf3, 0xc5, 0xe6, 0x69, 0x95, 0x1c, 0x38, 0xa9, 0x87, 0x7d, 0x3e, 0xcf, 0x40, 0x02, 0x1a, 0x5e, 0xe9, 0xdd, 0xb8, 0x6a, 0xaa, 0xe3, 0x7a, 0xdf, 0x14, 0x37, 0x2e, 0x96, 0x2b, 0x4d, 0x28, 0xa5, 0xd8, 0x5b, 0x51, 0xe5, 0xb0, 0x93, 0x9c, 0x8e, 0x9b, 0x5d, 0xc7, 0xd6, 0x85, }; static const unsigned char xdh_wei448_2851_sharedsecret[] = { 0xa7, 0x6e, 0x9e, 0x26, 0x31, 0xa1, 0x01, 0x5d, 0xbd, 0x5d, 0xd8, 0xc7, 0x48, 0xaa, 0x19, 0xc0, 0x7f, 0x8b, 0x35, 0xc0, 0xce, 0xab, 0x91, 0xce, 0x6b, 0xdf, 0x9e, 0x7d, 0x8a, 0x1f, 0x30, 0x0f, 0xa4, 0xa6, 0x12, 0x18, 0xf2, 0x56, 0xe7, 0x25, 0x97, 0x75, 0x77, 0x82, 0xed, 0xd2, 0x20, 0xbb, 0x73, 0x79, 0x48, 0xb1, 0xb8, 0x00, 0x65, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2851 = { .name = "xdh_wei448_2851", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2851_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2851_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2851_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2851_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 4, tcId is 268 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2852 for XDH, tcId is 269 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2852_peerpubkey[] = { 0xa5, 0x36, 0x1d, 0x32, 0x99, 0x48, 0x82, 0xf2, 0xac, 0x7f, 0x53, 0x94, 0x44, 0x84, 0x01, 0xac, 0x01, 0xc5, 0x96, 0x28, 0xe5, 0xaa, 0x05, 0x9a, 0xf6, 0x08, 0xf6, 0x8f, 0xc3, 0x00, 0x0a, 0xf0, 0xb0, 0x54, 0x6b, 0xa1, 0xb8, 0x68, 0x24, 0x66, 0x30, 0x35, 0x8c, 0xef, 0x66, 0xe9, 0xfe, 0x7b, 0xd4, 0x3c, 0xd4, 0x18, 0xb0, 0xab, 0x05, 0x8e, }; static const unsigned char xdh_wei448_2852_ourpubkey[] = { 0x1c, 0x2a, 0x17, 0x39, 0x5f, 0x98, 0x35, 0x5f, 0x9b, 0x35, 0x5b, 0x4c, 0x90, 0x4c, 0xee, 0x35, 0xae, 0x85, 0xc9, 0x1b, 0x43, 0x2a, 0x6f, 0x8c, 0x58, 0xfc, 0x72, 0x13, 0xcc, 0x9c, 0x90, 0x60, 0x65, 0x11, 0x69, 0x2d, 0x28, 0xbc, 0xf6, 0x4e, 0x00, 0x30, 0xb3, 0x23, 0xdd, 0x0f, 0x1b, 0x83, 0xf9, 0x00, 0xbb, 0xf5, 0x3b, 0xd8, 0x23, 0x51, }; static const unsigned char xdh_wei448_2852_privkey[] = { 0xd0, 0xe9, 0xa3, 0x8f, 0xc4, 0xca, 0x84, 0x4c, 0x58, 0xa9, 0x55, 0x37, 0x2f, 0x5d, 0xc7, 0xce, 0x69, 0xeb, 0x2d, 0x28, 0xe4, 0x82, 0x49, 0x09, 0x62, 0x3d, 0xe9, 0x71, 0x81, 0xb3, 0x73, 0xc8, 0xad, 0xe6, 0x43, 0x1f, 0x00, 0xef, 0x6f, 0x3b, 0xbd, 0x50, 0x52, 0x3d, 0xd5, 0x7f, 0x4e, 0xc5, 0x49, 0x09, 0x3a, 0xd3, 0x39, 0xdc, 0x0b, 0x92, }; static const unsigned char xdh_wei448_2852_sharedsecret[] = { 0xf2, 0x07, 0xf0, 0x56, 0x98, 0x3a, 0x0f, 0x15, 0x8b, 0x23, 0xf8, 0xa4, 0x10, 0x89, 0x9a, 0x6b, 0x31, 0x2e, 0x92, 0x39, 0x5e, 0x09, 0xec, 0xbf, 0x0b, 0x5f, 0xe3, 0xda, 0x37, 0x1e, 0x22, 0x4a, 0x80, 0x58, 0xe5, 0xa3, 0xa3, 0x1f, 0x1e, 0x2a, 0x4f, 0xff, 0xd2, 0x21, 0x34, 0xfc, 0xf0, 0x6f, 0x41, 0xba, 0x2e, 0xf6, 0xb4, 0x64, 0xb5, 0x45, }; static const wycheproof_xdh_test xdh_wei448_2852 = { .name = "xdh_wei448_2852", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2852_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2852_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2852_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2852_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 269 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2853 for XDH, tcId is 270 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2853_peerpubkey[] = { 0xf4, 0x02, 0x2e, 0x9e, 0x4e, 0xd6, 0x49, 0x37, 0x79, 0x15, 0xf2, 0xdc, 0xdb, 0xd2, 0x47, 0x64, 0x43, 0xa4, 0xdf, 0x98, 0xe4, 0xb2, 0x26, 0xf1, 0x4a, 0xf7, 0x80, 0xd5, 0xfd, 0xf7, 0xae, 0x4b, 0x03, 0x01, 0x32, 0x7f, 0x6b, 0x24, 0x47, 0x4e, 0x48, 0xa3, 0xfd, 0xf2, 0x80, 0xcf, 0xd5, 0x7c, 0x48, 0x27, 0xf2, 0x34, 0xe0, 0xad, 0x2e, 0x12, }; static const unsigned char xdh_wei448_2853_ourpubkey[] = { 0x58, 0x2b, 0x09, 0x0e, 0x4c, 0xa3, 0x42, 0xe9, 0xc7, 0xe0, 0x39, 0xab, 0x1c, 0x14, 0x73, 0x81, 0xe0, 0xe5, 0xfa, 0x1a, 0xa4, 0xeb, 0xa9, 0x2d, 0xa4, 0xc3, 0xdf, 0xae, 0x90, 0x5e, 0xaa, 0xa1, 0x09, 0x95, 0x21, 0xb5, 0xed, 0x0b, 0x93, 0x94, 0x97, 0x71, 0xd2, 0x7b, 0xc5, 0x5f, 0xc5, 0xe6, 0xbf, 0x78, 0x07, 0xa5, 0xa6, 0x53, 0x30, 0x27, }; static const unsigned char xdh_wei448_2853_privkey[] = { 0xe0, 0xf8, 0x49, 0x33, 0x65, 0x4e, 0xff, 0xcc, 0x42, 0x06, 0xa3, 0xb8, 0x60, 0x37, 0x9e, 0xb0, 0x6e, 0x60, 0xa8, 0x9d, 0xcc, 0x03, 0xab, 0x75, 0x59, 0x60, 0x1e, 0xec, 0xca, 0xb1, 0x41, 0xae, 0x51, 0x43, 0xd9, 0xb0, 0x2f, 0xae, 0xe9, 0xf7, 0x56, 0x7e, 0x2f, 0x4f, 0xe6, 0xb5, 0x99, 0xfe, 0xc5, 0x9c, 0x5d, 0xe3, 0x25, 0x52, 0x39, 0x99, }; static const unsigned char xdh_wei448_2853_sharedsecret[] = { 0xff, 0x11, 0xeb, 0x0a, 0x0e, 0xa0, 0xa0, 0xf7, 0x38, 0x14, 0x2d, 0x8c, 0xdd, 0x06, 0xdf, 0x11, 0x84, 0x00, 0xf2, 0x33, 0x0e, 0xba, 0x7f, 0xd4, 0xde, 0xf9, 0x12, 0xc7, 0x73, 0x11, 0x28, 0xb7, 0x67, 0x9a, 0x74, 0x99, 0x7c, 0xa1, 0x00, 0xde, 0xc1, 0xb5, 0x3a, 0x51, 0x55, 0x62, 0xea, 0x7c, 0x44, 0xb4, 0x45, 0x77, 0x81, 0x36, 0x95, 0x55, }; static const wycheproof_xdh_test xdh_wei448_2853 = { .name = "xdh_wei448_2853", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2853_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2853_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2853_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2853_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 270 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2854 for XDH, tcId is 271 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2854_peerpubkey[] = { 0x6e, 0x22, 0xa5, 0xa1, 0x65, 0xe4, 0x5d, 0xd3, 0xf7, 0xf0, 0x6a, 0x27, 0xec, 0x3d, 0xcf, 0x4f, 0x73, 0x36, 0xf3, 0x77, 0xbe, 0x0c, 0xad, 0x1b, 0xc3, 0x2c, 0x69, 0xea, 0x46, 0x71, 0x24, 0x5f, 0xe6, 0x0f, 0xa4, 0x7e, 0x56, 0xc7, 0xab, 0x63, 0x09, 0xda, 0x8c, 0x8e, 0x3c, 0x21, 0xea, 0xc8, 0xa1, 0x9c, 0xcc, 0x59, 0xcb, 0xc4, 0x46, 0x30, }; static const unsigned char xdh_wei448_2854_ourpubkey[] = { 0x9e, 0x57, 0x07, 0xa8, 0x86, 0x08, 0x79, 0x0f, 0xba, 0xf5, 0xec, 0xbe, 0x70, 0xa3, 0x70, 0x1e, 0x5c, 0x65, 0x34, 0x28, 0x06, 0x1f, 0x8a, 0xbe, 0x3b, 0x1c, 0x02, 0xbc, 0x73, 0x01, 0x91, 0x0b, 0xc5, 0x8f, 0x5f, 0x3d, 0xcd, 0x4c, 0x2e, 0x49, 0xe5, 0x3c, 0x48, 0xf7, 0xac, 0xfd, 0x0e, 0x96, 0x30, 0x88, 0x82, 0xcc, 0x3e, 0x6d, 0x6b, 0xff, }; static const unsigned char xdh_wei448_2854_privkey[] = { 0x78, 0x3c, 0x7a, 0x71, 0x18, 0x14, 0xfb, 0xb0, 0xa2, 0x8a, 0x4a, 0xa1, 0x32, 0xa1, 0x28, 0xa3, 0xc3, 0xc4, 0x02, 0x65, 0xdb, 0xf9, 0x2e, 0x7e, 0x7b, 0x69, 0x62, 0xa0, 0x17, 0xde, 0xc3, 0xd8, 0xea, 0xd2, 0xe5, 0x13, 0x61, 0xb3, 0x19, 0x96, 0xf1, 0xc3, 0xc9, 0x90, 0x0c, 0xab, 0xe2, 0x55, 0x95, 0xde, 0x1a, 0x89, 0xd4, 0x29, 0xb4, 0x91, }; static const unsigned char xdh_wei448_2854_sharedsecret[] = { 0xc2, 0x5e, 0xdf, 0x26, 0xc6, 0x82, 0xec, 0x00, 0x94, 0xf9, 0xde, 0x6a, 0x60, 0xc7, 0x12, 0x10, 0x83, 0x54, 0x56, 0x07, 0xf6, 0xfb, 0x9e, 0x73, 0x9a, 0x6b, 0x08, 0x05, 0xf0, 0x97, 0xf6, 0x9c, 0xbd, 0x9f, 0xb4, 0xc9, 0xb2, 0x93, 0x7d, 0xa0, 0xbd, 0x74, 0x2b, 0x61, 0x43, 0x9a, 0xfc, 0x98, 0xda, 0xde, 0x15, 0x40, 0xee, 0x58, 0x15, 0x04, }; static const wycheproof_xdh_test xdh_wei448_2854 = { .name = "xdh_wei448_2854", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2854_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2854_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2854_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2854_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 271 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2855 for XDH, tcId is 272 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2855_peerpubkey[] = { 0x01, 0xde, 0x09, 0x4d, 0xed, 0x29, 0x15, 0x5f, 0x9e, 0xcc, 0xc3, 0x0c, 0x83, 0xc3, 0x29, 0xa5, 0x1d, 0x22, 0x44, 0x62, 0xc2, 0x5c, 0x7f, 0x13, 0x0b, 0xac, 0xb1, 0x9f, 0x94, 0x10, 0xaf, 0xa6, 0xfb, 0x2e, 0x3d, 0x67, 0x41, 0xb0, 0x61, 0x81, 0x1e, 0xbe, 0xb4, 0xc3, 0x44, 0x2f, 0xa5, 0x13, 0xc8, 0x76, 0x1e, 0x87, 0xda, 0x33, 0x11, 0x4f, }; static const unsigned char xdh_wei448_2855_ourpubkey[] = { 0x22, 0x8a, 0xa6, 0x98, 0xe4, 0xc3, 0x69, 0x5a, 0xd0, 0x23, 0x0f, 0xe7, 0x55, 0xac, 0xcf, 0x0f, 0x99, 0xb3, 0x6b, 0xab, 0x3c, 0xb6, 0x4b, 0x72, 0xe1, 0x2c, 0xc5, 0x7b, 0x30, 0x49, 0xae, 0xb6, 0x94, 0xcd, 0x28, 0x8b, 0xda, 0xa7, 0x54, 0x3a, 0xb5, 0xbf, 0xb9, 0xd9, 0xaf, 0xde, 0x2e, 0xea, 0x22, 0x15, 0x39, 0xac, 0xde, 0xd2, 0x4a, 0x7d, }; static const unsigned char xdh_wei448_2855_privkey[] = { 0x38, 0xa0, 0x3d, 0x14, 0xa4, 0xae, 0x3d, 0xe5, 0xa5, 0xbf, 0x2f, 0x21, 0x01, 0x81, 0xa2, 0x9d, 0x5a, 0x4d, 0x53, 0x2b, 0x10, 0xc6, 0x0e, 0x6c, 0x87, 0x2b, 0x8d, 0x72, 0x7a, 0x19, 0x68, 0xba, 0x64, 0x79, 0x11, 0x69, 0xb0, 0x26, 0x15, 0xdc, 0x23, 0x36, 0x7b, 0x13, 0xaf, 0xdb, 0xfb, 0x06, 0x4c, 0x61, 0xe2, 0x56, 0xb2, 0xf1, 0x8a, 0x9e, }; static const unsigned char xdh_wei448_2855_sharedsecret[] = { 0xb2, 0xed, 0xb7, 0xde, 0x66, 0xc3, 0x39, 0xd5, 0x48, 0xca, 0x02, 0x1a, 0x44, 0x87, 0x7e, 0x6a, 0x3e, 0xc2, 0x4b, 0xe9, 0x6a, 0x30, 0xb7, 0xe3, 0x92, 0xb2, 0x2a, 0xd5, 0x6e, 0xf7, 0xc7, 0x5f, 0xcb, 0x70, 0xc5, 0xcc, 0x37, 0xb0, 0x17, 0xec, 0x21, 0x58, 0x43, 0x06, 0x33, 0xe3, 0xa6, 0xb0, 0x82, 0x1b, 0x87, 0xdc, 0x0d, 0xae, 0x0a, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_2855 = { .name = "xdh_wei448_2855", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2855_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2855_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2855_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2855_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 272 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2856 for XDH, tcId is 273 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2856_peerpubkey[] = { 0xcb, 0xe5, 0x74, 0xa3, 0xfa, 0x63, 0x42, 0x34, 0x73, 0x64, 0xb0, 0x44, 0x9a, 0x2e, 0x33, 0xf9, 0xe8, 0x40, 0xb7, 0x47, 0x53, 0x5e, 0x81, 0x94, 0x96, 0xc5, 0x94, 0x83, 0xa2, 0xe8, 0x47, 0x46, 0xd6, 0x7c, 0x44, 0x4f, 0xca, 0xf7, 0x14, 0xb4, 0x36, 0x7a, 0xc1, 0xef, 0x1c, 0x1d, 0x9d, 0x19, 0x70, 0x4a, 0xd0, 0x36, 0x94, 0x6c, 0x44, 0x7f, }; static const unsigned char xdh_wei448_2856_ourpubkey[] = { 0xfa, 0xed, 0x61, 0x9b, 0x85, 0x8a, 0x34, 0x34, 0x04, 0xf5, 0x82, 0x1b, 0x88, 0x14, 0xc4, 0xd5, 0x46, 0x55, 0x41, 0x97, 0x79, 0x26, 0x73, 0xc7, 0x08, 0x18, 0x9d, 0x88, 0x52, 0x7d, 0x68, 0xa7, 0x98, 0x25, 0x11, 0x82, 0x73, 0x42, 0xb2, 0x8c, 0xb8, 0x97, 0x9f, 0x69, 0xc9, 0x81, 0x50, 0xe9, 0x57, 0xd4, 0x0e, 0xa7, 0x51, 0xb7, 0x3f, 0x67, }; static const unsigned char xdh_wei448_2856_privkey[] = { 0xc0, 0x3c, 0xbb, 0xd2, 0x0d, 0x8b, 0x0e, 0x9f, 0x3e, 0xf1, 0xb5, 0x1a, 0x8d, 0x02, 0xac, 0x42, 0x89, 0x9d, 0x2e, 0xa2, 0x22, 0xd0, 0x87, 0xcc, 0xc0, 0xa0, 0x25, 0xdb, 0x01, 0xa5, 0xdf, 0x3d, 0xfa, 0x2a, 0xe3, 0xfd, 0x35, 0x7e, 0xab, 0x41, 0xae, 0x98, 0x5a, 0x7b, 0xfb, 0xee, 0x52, 0xa7, 0x98, 0x26, 0xb9, 0x60, 0x68, 0x83, 0x8e, 0x9b, }; static const unsigned char xdh_wei448_2856_sharedsecret[] = { 0x65, 0x28, 0xea, 0x6e, 0xa0, 0x97, 0x1c, 0xeb, 0x0b, 0xd4, 0xad, 0xf4, 0xb5, 0x62, 0x0e, 0x93, 0x6b, 0x90, 0x9c, 0xed, 0x8f, 0x64, 0xc0, 0xe3, 0x9c, 0x6e, 0xdf, 0xa2, 0xe2, 0xee, 0x68, 0x87, 0x1e, 0x17, 0x47, 0x7a, 0x53, 0xd0, 0x2d, 0xbd, 0x3e, 0x90, 0x69, 0x10, 0x2c, 0xa8, 0xa8, 0x1c, 0xdc, 0x16, 0x67, 0x84, 0xc0, 0xc5, 0x52, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_2856 = { .name = "xdh_wei448_2856", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2856_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2856_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2856_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2856_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 273 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2857 for XDH, tcId is 274 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2857_peerpubkey[] = { 0x0a, 0x9f, 0x04, 0xb9, 0x00, 0x5d, 0xc8, 0xf6, 0x74, 0xef, 0xe9, 0xb8, 0x49, 0xab, 0x56, 0x82, 0x88, 0x3f, 0x97, 0x31, 0x9b, 0x5f, 0xae, 0x83, 0xb9, 0xf7, 0x2d, 0x73, 0x63, 0x86, 0xc9, 0xed, 0x82, 0x76, 0x30, 0xde, 0xce, 0x8c, 0xf8, 0xb1, 0xb2, 0x50, 0xb2, 0x96, 0x5f, 0x6e, 0x0e, 0x6c, 0xef, 0xe2, 0x9d, 0xd6, 0xba, 0x33, 0x80, 0x8b, }; static const unsigned char xdh_wei448_2857_ourpubkey[] = { 0xe6, 0x94, 0x6d, 0x9d, 0xbe, 0x3c, 0xab, 0x2e, 0x91, 0xaa, 0x77, 0x68, 0x1b, 0xd6, 0x5e, 0x3c, 0xa0, 0x03, 0x07, 0xae, 0xfb, 0x56, 0x38, 0x5f, 0x4e, 0x36, 0xbe, 0x03, 0xa0, 0x40, 0xff, 0x30, 0x16, 0x10, 0xf8, 0x3b, 0x8e, 0xfe, 0x72, 0xe9, 0xac, 0x9d, 0xc1, 0x3a, 0x60, 0x28, 0x9b, 0x84, 0x52, 0xa8, 0x17, 0x07, 0x4c, 0x0a, 0xa1, 0x96, }; static const unsigned char xdh_wei448_2857_privkey[] = { 0x6c, 0x80, 0x14, 0x15, 0xb2, 0x77, 0x4b, 0xad, 0x10, 0xa2, 0xb7, 0x2c, 0x22, 0x32, 0x09, 0x42, 0xbf, 0xd0, 0x99, 0x4e, 0x4a, 0x2f, 0x03, 0xfb, 0xf8, 0xf8, 0x46, 0xca, 0x4e, 0x23, 0xa9, 0x3d, 0xe2, 0x41, 0x2e, 0x97, 0x36, 0x9f, 0x23, 0x9e, 0x31, 0xb5, 0x03, 0x5e, 0xd5, 0xde, 0xa3, 0x43, 0xe5, 0x16, 0x8e, 0xbb, 0xb1, 0xf9, 0xee, 0x92, }; static const unsigned char xdh_wei448_2857_sharedsecret[] = { 0xd1, 0x19, 0x42, 0xc9, 0xa7, 0x46, 0xea, 0x84, 0x0f, 0x15, 0x84, 0xf1, 0xf6, 0x54, 0xf7, 0xce, 0xcf, 0x58, 0xef, 0x22, 0xcd, 0x0e, 0xf8, 0xac, 0x46, 0xdc, 0x83, 0xda, 0xbd, 0x1d, 0xfc, 0xa1, 0x30, 0x3d, 0x25, 0xa5, 0x1c, 0x06, 0x48, 0xb3, 0x94, 0xe5, 0x0f, 0x29, 0xeb, 0x85, 0x3c, 0xe1, 0xc9, 0xc6, 0x3f, 0xd0, 0xe3, 0x77, 0xfe, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_2857 = { .name = "xdh_wei448_2857", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2857_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2857_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2857_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2857_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 274 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2858 for XDH, tcId is 275 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2858_peerpubkey[] = { 0xac, 0xcc, 0xc2, 0xcc, 0xf2, 0xf7, 0x73, 0xec, 0x14, 0xfd, 0x79, 0xef, 0x35, 0xd6, 0x3d, 0x38, 0xf5, 0xc9, 0xf7, 0xb8, 0x62, 0xfa, 0x7b, 0x21, 0xae, 0x00, 0xb6, 0x8f, 0x55, 0x65, 0xce, 0xa1, 0x6e, 0x28, 0xda, 0xe9, 0xba, 0x2e, 0x30, 0x9e, 0x81, 0xe4, 0x9e, 0x1a, 0xe9, 0xea, 0xcc, 0x33, 0xfd, 0x5b, 0xcc, 0xe2, 0x13, 0xec, 0x74, 0xb8, }; static const unsigned char xdh_wei448_2858_ourpubkey[] = { 0xae, 0x78, 0xa9, 0x8d, 0xfa, 0x93, 0x8b, 0x5f, 0x30, 0x83, 0xd2, 0x3a, 0x7e, 0x70, 0x06, 0xae, 0xf8, 0x7a, 0x19, 0x11, 0x04, 0x40, 0x4f, 0x2a, 0x7d, 0xe2, 0xdd, 0x37, 0x97, 0x44, 0xea, 0x32, 0x51, 0x10, 0x86, 0xf5, 0x5d, 0x7a, 0xa3, 0x7d, 0x9c, 0x5b, 0xd1, 0x2c, 0x42, 0x15, 0x69, 0x34, 0xfb, 0x15, 0xe3, 0xaf, 0x5e, 0x13, 0xd6, 0xbc, }; static const unsigned char xdh_wei448_2858_privkey[] = { 0xec, 0x56, 0x75, 0xdd, 0x08, 0x8b, 0x7d, 0xd2, 0x6d, 0x1c, 0xda, 0x22, 0x7f, 0xfe, 0x78, 0xf6, 0x97, 0xd1, 0xc5, 0xd5, 0x21, 0x23, 0x91, 0xf3, 0x3c, 0xf6, 0x3c, 0x23, 0x63, 0x4d, 0xac, 0xad, 0x47, 0x30, 0xbd, 0xb4, 0x35, 0x0c, 0x4b, 0xeb, 0x1d, 0x23, 0xef, 0xfb, 0x9c, 0xd3, 0x6c, 0xf1, 0x48, 0xec, 0x67, 0xe6, 0x95, 0x75, 0xb4, 0x84, }; static const unsigned char xdh_wei448_2858_sharedsecret[] = { 0x68, 0xac, 0xae, 0x35, 0x91, 0x62, 0xc4, 0xd8, 0x3c, 0x29, 0xbe, 0x84, 0xf1, 0xa0, 0xa4, 0x1b, 0x03, 0x2f, 0xc8, 0x8f, 0x64, 0xd1, 0xeb, 0x82, 0xdc, 0x98, 0x00, 0x94, 0x77, 0xac, 0xf5, 0xa6, 0x4c, 0x2a, 0x1a, 0xc8, 0x04, 0x0e, 0xea, 0x5e, 0x13, 0xfb, 0x19, 0x09, 0x5b, 0x66, 0xef, 0xc3, 0x76, 0xc9, 0x70, 0x97, 0xe0, 0x11, 0x4d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2858 = { .name = "xdh_wei448_2858", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2858_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2858_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2858_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2858_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 275 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2859 for XDH, tcId is 276 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2859_peerpubkey[] = { 0xda, 0xd4, 0xbd, 0x4f, 0xf2, 0xb1, 0xe9, 0x35, 0x40, 0x92, 0x4e, 0xd4, 0xee, 0x44, 0xe5, 0x46, 0x50, 0xc0, 0x85, 0x34, 0xc6, 0x31, 0x4e, 0x66, 0xbe, 0x91, 0xa1, 0xe8, 0x91, 0xb2, 0x42, 0xeb, 0xd6, 0x24, 0x1f, 0x69, 0x06, 0x22, 0x63, 0x25, 0xfd, 0xff, 0xe7, 0x31, 0x10, 0x13, 0xf5, 0x50, 0x5f, 0x0b, 0x19, 0x0b, 0xdf, 0xbe, 0x57, 0x18, }; static const unsigned char xdh_wei448_2859_ourpubkey[] = { 0xf8, 0x86, 0x2f, 0x91, 0xdc, 0x7b, 0x38, 0x6f, 0xb0, 0xb2, 0x0a, 0x71, 0x13, 0xa5, 0x47, 0x1f, 0x58, 0x64, 0xe6, 0x97, 0x5a, 0x66, 0x20, 0x7e, 0xa1, 0xa6, 0x73, 0x72, 0xc1, 0xa6, 0x04, 0x1f, 0xc3, 0x66, 0xb0, 0x5b, 0xc4, 0x79, 0x4b, 0x1d, 0xf1, 0xb1, 0xd1, 0x80, 0x3d, 0x27, 0xc2, 0x79, 0x0d, 0xb3, 0x1d, 0xe6, 0xb4, 0x82, 0x78, 0x1e, }; static const unsigned char xdh_wei448_2859_privkey[] = { 0x04, 0xa5, 0x09, 0x84, 0x0a, 0x65, 0x8d, 0xaf, 0xf7, 0x03, 0x74, 0xd4, 0x2d, 0xec, 0x10, 0x9c, 0x37, 0x79, 0xef, 0xba, 0x47, 0x76, 0x97, 0xfa, 0x65, 0x2f, 0x81, 0x59, 0x5c, 0x8d, 0x52, 0xa7, 0xcd, 0xd0, 0xc7, 0x1a, 0x76, 0x54, 0xc5, 0x22, 0xec, 0x61, 0x0b, 0x46, 0x9b, 0xcb, 0x3a, 0x8f, 0xfc, 0x64, 0x0b, 0x4c, 0x16, 0xbc, 0x78, 0x8c, }; static const unsigned char xdh_wei448_2859_sharedsecret[] = { 0x4c, 0x81, 0xbb, 0x6f, 0x58, 0xb3, 0x21, 0x9b, 0x99, 0xd4, 0x79, 0xbe, 0x26, 0xd7, 0xf8, 0x27, 0x45, 0x80, 0xfc, 0x86, 0x95, 0x93, 0xf3, 0x2f, 0xd0, 0x5c, 0x55, 0x56, 0x10, 0x32, 0x4d, 0x4a, 0x80, 0x57, 0xa5, 0xdf, 0x88, 0xf4, 0x74, 0x20, 0xb1, 0x33, 0x67, 0xb5, 0x3f, 0xad, 0xa6, 0x6c, 0xa6, 0xf3, 0x23, 0x79, 0x01, 0x11, 0x18, 0x60, }; static const wycheproof_xdh_test xdh_wei448_2859 = { .name = "xdh_wei448_2859", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2859_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2859_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2859_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2859_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 276 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2860 for XDH, tcId is 277 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2860_peerpubkey[] = { 0x42, 0x16, 0xbe, 0x75, 0xfd, 0xb4, 0x37, 0xee, 0x29, 0x18, 0x7a, 0x26, 0x9f, 0x63, 0x24, 0x6e, 0x2b, 0xe1, 0xd7, 0x40, 0x12, 0x76, 0x73, 0x57, 0xec, 0x87, 0x28, 0x61, 0x5f, 0xfb, 0xc5, 0xfb, 0xc0, 0x2c, 0xcf, 0xda, 0x1f, 0x3d, 0x03, 0x20, 0x3a, 0xa7, 0xe2, 0x27, 0x04, 0x91, 0x53, 0x2f, 0x0d, 0x52, 0xd8, 0xd0, 0xab, 0xd7, 0xb2, 0x48, }; static const unsigned char xdh_wei448_2860_ourpubkey[] = { 0x09, 0x8d, 0x11, 0xfd, 0xc5, 0x9d, 0x0c, 0x47, 0x2d, 0x5f, 0xbd, 0xad, 0x6a, 0x85, 0xd1, 0x40, 0x32, 0x9e, 0x14, 0xba, 0xc5, 0x3a, 0xd9, 0xff, 0xa4, 0x9f, 0x8f, 0x98, 0xf4, 0x10, 0x86, 0x6e, 0x53, 0x20, 0xa8, 0x56, 0xdb, 0x66, 0x36, 0xee, 0x8e, 0x40, 0xee, 0x37, 0x27, 0x57, 0x8f, 0xe8, 0xe1, 0x01, 0x3a, 0x95, 0xe4, 0x7e, 0x7a, 0x36, }; static const unsigned char xdh_wei448_2860_privkey[] = { 0x54, 0x15, 0x76, 0xd1, 0x4a, 0x69, 0x1d, 0x41, 0xd8, 0x18, 0xad, 0xa6, 0xb5, 0xc9, 0x5a, 0x38, 0x2f, 0x8a, 0xe1, 0x74, 0xce, 0xd7, 0x1c, 0x3e, 0x45, 0xd0, 0x38, 0x9f, 0x1f, 0xdf, 0x00, 0x8a, 0x61, 0x61, 0x23, 0x67, 0x5d, 0x32, 0xe5, 0x2b, 0xbc, 0x78, 0xab, 0xa8, 0x01, 0x6e, 0xb5, 0x25, 0x41, 0x9c, 0xd6, 0x75, 0xd2, 0x2d, 0x70, 0x96, }; static const unsigned char xdh_wei448_2860_sharedsecret[] = { 0x5e, 0x3e, 0x15, 0x68, 0x0a, 0xcf, 0x3a, 0x6b, 0xdb, 0x33, 0x68, 0x8d, 0xed, 0xcd, 0x6b, 0xe5, 0x10, 0x4d, 0x4d, 0xa3, 0x6b, 0xa9, 0xfc, 0x87, 0x3f, 0x28, 0xed, 0xb5, 0x38, 0x3b, 0x15, 0xae, 0x37, 0x8c, 0xbe, 0x26, 0x1b, 0x17, 0xa0, 0xbe, 0xdb, 0x67, 0x2a, 0x85, 0x9b, 0xc1, 0x44, 0x94, 0x7f, 0xee, 0x2a, 0xbe, 0xbb, 0x76, 0x27, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2860 = { .name = "xdh_wei448_2860", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2860_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2860_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2860_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2860_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 277 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2861 for XDH, tcId is 278 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2861_peerpubkey[] = { 0x6b, 0x07, 0x4b, 0x4d, 0xc2, 0xdc, 0x31, 0xc4, 0x62, 0x2b, 0x87, 0xd9, 0x07, 0x13, 0x98, 0xef, 0x9a, 0xf5, 0x43, 0x6a, 0xa7, 0x32, 0xee, 0xb4, 0x44, 0xdb, 0xab, 0xd7, 0x9e, 0xd8, 0x8b, 0x00, 0x0c, 0x4a, 0xf1, 0x64, 0x86, 0xd7, 0xfe, 0x70, 0x7f, 0x80, 0x34, 0xb1, 0xbf, 0x59, 0xf6, 0xa6, 0x19, 0x7c, 0x3f, 0x1f, 0x54, 0x9d, 0x3e, 0x61, }; static const unsigned char xdh_wei448_2861_ourpubkey[] = { 0xbb, 0xa8, 0x95, 0xfe, 0x55, 0xfb, 0x26, 0x14, 0xd7, 0xb9, 0x2b, 0x28, 0x16, 0x1e, 0x2d, 0x56, 0x15, 0x5e, 0x93, 0xe0, 0x7f, 0x2a, 0x78, 0x89, 0xb9, 0x71, 0xb7, 0x52, 0x73, 0xbf, 0x9c, 0x1f, 0x7c, 0xa5, 0xb3, 0x6e, 0xb6, 0x8b, 0x63, 0x33, 0x96, 0x04, 0x84, 0x52, 0xe8, 0x7d, 0xd6, 0x7e, 0xca, 0xf3, 0xe5, 0x36, 0x67, 0x37, 0x46, 0x49, }; static const unsigned char xdh_wei448_2861_privkey[] = { 0xf8, 0x96, 0xf9, 0xb3, 0xbf, 0x25, 0x52, 0x05, 0x75, 0x18, 0xe4, 0xf3, 0x3c, 0x6e, 0x25, 0xa6, 0xda, 0x71, 0x03, 0x7b, 0x5b, 0xeb, 0x26, 0x63, 0x3c, 0x78, 0xd6, 0x25, 0x13, 0x88, 0x33, 0xd9, 0xc6, 0xc5, 0xcd, 0x74, 0x57, 0x62, 0x23, 0xd8, 0x82, 0x5d, 0x26, 0xdd, 0x53, 0x3b, 0x11, 0x5c, 0xcd, 0x55, 0x86, 0xd5, 0xa4, 0x89, 0xe3, 0x9c, }; static const unsigned char xdh_wei448_2861_sharedsecret[] = { 0x9c, 0x17, 0xe7, 0xcb, 0x18, 0x9c, 0x0c, 0xbc, 0x7c, 0xd2, 0xce, 0x66, 0xad, 0x68, 0xc1, 0x96, 0xed, 0x7e, 0xbe, 0x25, 0x52, 0x59, 0xf1, 0xc7, 0xd5, 0x52, 0x70, 0xd0, 0x7b, 0xee, 0xce, 0xe9, 0x89, 0x61, 0xdd, 0x05, 0x87, 0xdf, 0x8c, 0x42, 0x80, 0x32, 0x01, 0xad, 0x6b, 0x5c, 0xa5, 0x17, 0x71, 0x0a, 0x57, 0x07, 0xaa, 0x13, 0x18, 0x98, }; static const wycheproof_xdh_test xdh_wei448_2861 = { .name = "xdh_wei448_2861", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2861_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2861_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2861_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2861_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 278 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2862 for XDH, tcId is 279 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2862_peerpubkey[] = { 0x00, 0xef, 0xe0, 0x8c, 0xd7, 0x69, 0x40, 0xb8, 0x10, 0x9a, 0x2f, 0x29, 0xc7, 0xb4, 0x74, 0xb2, 0x66, 0xb8, 0xa4, 0xf6, 0x39, 0x4f, 0x1d, 0xba, 0x95, 0x8f, 0x5f, 0xe3, 0xb4, 0xfa, 0x07, 0x7d, 0xb1, 0xb1, 0x68, 0x87, 0xbc, 0xc2, 0x92, 0x0d, 0xf7, 0xb0, 0x27, 0xbb, 0x78, 0xf1, 0xce, 0xf5, 0x3d, 0x7a, 0xdf, 0x8f, 0xc2, 0x88, 0x18, 0x83, }; static const unsigned char xdh_wei448_2862_ourpubkey[] = { 0xdd, 0x42, 0x6b, 0x6c, 0xb4, 0xb4, 0x7c, 0x16, 0xee, 0x82, 0xd0, 0xca, 0x74, 0xf4, 0x21, 0x1c, 0x73, 0xa8, 0x39, 0xcf, 0x56, 0x8b, 0x1a, 0x61, 0x54, 0xc0, 0x7e, 0xdb, 0x1a, 0xa4, 0x7e, 0xa8, 0x8c, 0xff, 0xa1, 0x76, 0x10, 0x38, 0xeb, 0xe7, 0xfb, 0x3a, 0x2d, 0x89, 0xb7, 0x4a, 0x18, 0x0b, 0xf2, 0xe1, 0x04, 0xac, 0x8c, 0xcd, 0xcb, 0x40, }; static const unsigned char xdh_wei448_2862_privkey[] = { 0x84, 0x42, 0x6a, 0x32, 0xdf, 0x1d, 0x2e, 0x21, 0x9a, 0x6b, 0x3e, 0x74, 0x49, 0x97, 0xc5, 0x9b, 0x34, 0x4c, 0x99, 0xe5, 0xe1, 0x7d, 0xcf, 0x26, 0x99, 0xc4, 0xea, 0xaf, 0x0d, 0x37, 0x3b, 0xa7, 0x11, 0x83, 0xee, 0xfb, 0x5d, 0x6b, 0x92, 0x65, 0x5e, 0xa4, 0x01, 0x34, 0x9b, 0xd2, 0x28, 0xad, 0x15, 0xbb, 0x97, 0x3a, 0x09, 0xc0, 0xdb, 0x9a, }; static const unsigned char xdh_wei448_2862_sharedsecret[] = { 0xfd, 0xf3, 0x76, 0xe9, 0x71, 0x77, 0x18, 0x62, 0xae, 0x8a, 0xa0, 0x04, 0x57, 0x3d, 0x49, 0xa5, 0xc1, 0x7d, 0x3d, 0x01, 0xd6, 0xa5, 0xba, 0x46, 0xbe, 0xa1, 0x94, 0x3d, 0xf0, 0x85, 0x2f, 0x3f, 0x97, 0x5c, 0x1f, 0xcd, 0xb5, 0x78, 0x02, 0x53, 0xd3, 0x5c, 0x89, 0x16, 0x6f, 0xb8, 0x24, 0x61, 0x12, 0xf3, 0xa1, 0x36, 0x4c, 0xc4, 0xeb, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_2862 = { .name = "xdh_wei448_2862", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2862_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2862_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2862_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2862_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 279 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2863 for XDH, tcId is 280 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2863_peerpubkey[] = { 0x1f, 0xe1, 0xd8, 0x91, 0x5a, 0xe8, 0xbd, 0xc6, 0xe5, 0xcb, 0x11, 0xb0, 0x89, 0xa4, 0x63, 0xb7, 0x06, 0x6f, 0x65, 0x6e, 0xc7, 0xd4, 0xe4, 0x21, 0xf1, 0x09, 0xd9, 0x99, 0x29, 0xa9, 0x08, 0x8b, 0xdb, 0x4a, 0xca, 0x2f, 0x6f, 0x0e, 0x5f, 0xb6, 0x61, 0x1d, 0x55, 0x60, 0x8a, 0x06, 0xdc, 0x60, 0xcc, 0x65, 0xad, 0x11, 0xe9, 0xb3, 0x8e, 0x98, }; static const unsigned char xdh_wei448_2863_ourpubkey[] = { 0xd5, 0x7f, 0x5e, 0x53, 0xc3, 0xea, 0x4f, 0xa1, 0x93, 0x38, 0x81, 0xb8, 0x6b, 0xbd, 0x8a, 0x42, 0x6d, 0xdd, 0x2c, 0xc7, 0x4c, 0x10, 0x63, 0xe0, 0xec, 0xf8, 0x12, 0x6f, 0x21, 0x4d, 0x47, 0xc7, 0x07, 0x28, 0xbe, 0x2d, 0xda, 0xfc, 0x3c, 0x53, 0xe3, 0x8a, 0x48, 0x26, 0x14, 0x34, 0x43, 0x18, 0xfe, 0xb8, 0x5a, 0x46, 0x00, 0xdd, 0xa4, 0xd5, }; static const unsigned char xdh_wei448_2863_privkey[] = { 0x70, 0x08, 0x03, 0x89, 0x33, 0x89, 0xf7, 0x13, 0x1f, 0x5b, 0x97, 0x91, 0x9e, 0xea, 0xf0, 0xed, 0xb7, 0x25, 0x1f, 0x69, 0xc0, 0x5d, 0x30, 0xd6, 0x6c, 0x6d, 0xbd, 0x63, 0xcf, 0x07, 0x5a, 0x61, 0xaa, 0xcd, 0x3d, 0x40, 0x41, 0x04, 0x4b, 0x54, 0x70, 0x93, 0xf4, 0xb7, 0xfc, 0xfe, 0x34, 0x3a, 0xcb, 0x87, 0xfb, 0x13, 0xcc, 0x1b, 0xd2, 0x9b, }; static const unsigned char xdh_wei448_2863_sharedsecret[] = { 0x8d, 0x9f, 0x9c, 0x03, 0xa5, 0x8c, 0x00, 0x0c, 0x81, 0xb0, 0xf8, 0xd1, 0x92, 0xb2, 0x7c, 0x99, 0x5e, 0x02, 0xda, 0xcf, 0x6d, 0x18, 0xbd, 0xf0, 0xde, 0x5e, 0xcd, 0x82, 0x91, 0x2f, 0x38, 0xe9, 0x99, 0x18, 0xfd, 0x4b, 0x39, 0xb5, 0x5e, 0xec, 0x83, 0x5f, 0xd4, 0x36, 0x9a, 0xc1, 0x58, 0x75, 0xec, 0x78, 0xb8, 0x48, 0x18, 0x89, 0x02, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2863 = { .name = "xdh_wei448_2863", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2863_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2863_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2863_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2863_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 280 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2864 for XDH, tcId is 281 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2864_peerpubkey[] = { 0xf6, 0xa0, 0xe6, 0x56, 0x18, 0x56, 0x09, 0x49, 0x73, 0xaa, 0x4f, 0x8f, 0x5d, 0xf2, 0xff, 0xfe, 0x6a, 0xb6, 0xef, 0x11, 0x4b, 0x92, 0xbb, 0x22, 0xb5, 0x78, 0x60, 0x32, 0xbe, 0x91, 0xf4, 0x90, 0x10, 0x9f, 0x9c, 0xfa, 0x53, 0x04, 0x19, 0x07, 0x94, 0x50, 0xdd, 0x8f, 0x8e, 0x27, 0xea, 0x49, 0xd4, 0x5d, 0x7c, 0x39, 0x6e, 0x60, 0x43, 0xd6, }; static const unsigned char xdh_wei448_2864_ourpubkey[] = { 0xa3, 0x80, 0x2d, 0x4b, 0xec, 0x7b, 0x63, 0x29, 0xd4, 0x7c, 0xef, 0xfe, 0x55, 0xf7, 0x6d, 0xaf, 0xa7, 0x31, 0x12, 0xfc, 0x00, 0xd1, 0x1c, 0x3c, 0x87, 0x61, 0x83, 0x97, 0x09, 0x64, 0x3d, 0x14, 0xb4, 0x15, 0x28, 0x95, 0x02, 0x4a, 0x6b, 0x69, 0x4c, 0xf5, 0x3e, 0x1b, 0xa6, 0xc9, 0xdf, 0xfc, 0x62, 0x17, 0xd1, 0x00, 0x5a, 0xec, 0x0e, 0x28, }; static const unsigned char xdh_wei448_2864_privkey[] = { 0x74, 0x8f, 0x0c, 0xe4, 0x83, 0xd2, 0x73, 0x00, 0x5c, 0xff, 0x64, 0x93, 0x31, 0x04, 0x80, 0x44, 0x1e, 0x1a, 0x0b, 0xf9, 0x67, 0x90, 0xc6, 0x22, 0x35, 0x1a, 0x0f, 0x0a, 0x23, 0x5a, 0x67, 0x82, 0xd2, 0xb4, 0x0f, 0x78, 0xd1, 0x41, 0x33, 0xf8, 0x33, 0x58, 0xec, 0xf3, 0xff, 0x17, 0x94, 0xc3, 0xfc, 0xde, 0x36, 0x6d, 0x82, 0x2a, 0xb2, 0x91, }; static const unsigned char xdh_wei448_2864_sharedsecret[] = { 0xa6, 0x70, 0x2c, 0x33, 0x26, 0x6b, 0x58, 0x51, 0x1b, 0x62, 0xc1, 0x1e, 0xbb, 0x0a, 0x4e, 0x36, 0xac, 0xce, 0xe3, 0x40, 0x6d, 0xac, 0x49, 0xce, 0x89, 0x55, 0xff, 0x6c, 0xab, 0x92, 0x3c, 0x18, 0x82, 0x81, 0xe3, 0x8c, 0x95, 0x35, 0x04, 0x6e, 0xb0, 0xed, 0x67, 0xc8, 0x0d, 0xa0, 0xf6, 0xea, 0xe7, 0x26, 0x2b, 0x59, 0x4a, 0xe0, 0x7d, 0x08, }; static const wycheproof_xdh_test xdh_wei448_2864 = { .name = "xdh_wei448_2864", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2864_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2864_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2864_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2864_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 281 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2865 for XDH, tcId is 282 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2865_peerpubkey[] = { 0xcf, 0x62, 0x48, 0xd9, 0x03, 0x32, 0x60, 0x24, 0x45, 0x9a, 0x56, 0x15, 0x6e, 0xad, 0x65, 0x9e, 0x8e, 0xc1, 0xb3, 0xbc, 0x04, 0x6b, 0xa1, 0x37, 0xc3, 0xc5, 0x98, 0x6e, 0xec, 0x34, 0x72, 0x4b, 0xef, 0x55, 0x17, 0x49, 0x90, 0x72, 0xba, 0xbf, 0x99, 0x7d, 0x9a, 0xf6, 0xa1, 0x03, 0x2c, 0xa8, 0x50, 0x2a, 0x61, 0x93, 0xea, 0xd1, 0x2c, 0x46, }; static const unsigned char xdh_wei448_2865_ourpubkey[] = { 0xae, 0xfa, 0x9e, 0x94, 0x54, 0x49, 0x74, 0x5a, 0x7c, 0xea, 0x5f, 0x19, 0xf6, 0x1a, 0x47, 0x63, 0xb6, 0x47, 0xf6, 0xeb, 0xea, 0x33, 0x9d, 0xd3, 0xd8, 0xf3, 0x63, 0xe0, 0xdf, 0x6c, 0x17, 0x62, 0x05, 0x03, 0x01, 0x6b, 0x5a, 0xfd, 0xa8, 0x8d, 0x9d, 0x55, 0x13, 0xac, 0x3d, 0x9d, 0xae, 0x57, 0xb6, 0xc9, 0xab, 0x0b, 0x65, 0x7d, 0xf5, 0xa6, }; static const unsigned char xdh_wei448_2865_privkey[] = { 0x5c, 0x3f, 0x8e, 0xbb, 0x85, 0xcc, 0x58, 0x69, 0xa1, 0x16, 0x17, 0x4d, 0x5e, 0xcb, 0xea, 0x01, 0x66, 0xf7, 0x94, 0x3b, 0xf3, 0x88, 0x1e, 0xad, 0x45, 0x8c, 0x31, 0xfb, 0xb8, 0xe6, 0x74, 0x48, 0x49, 0x16, 0xf7, 0x63, 0xe1, 0x39, 0x80, 0x16, 0x81, 0xeb, 0xce, 0x63, 0x0d, 0xec, 0x2b, 0x67, 0x71, 0x1d, 0x5b, 0xf9, 0x13, 0x43, 0x90, 0x95, }; static const unsigned char xdh_wei448_2865_sharedsecret[] = { 0x97, 0xff, 0xd4, 0x7b, 0xce, 0x90, 0x00, 0xac, 0xc2, 0x24, 0x75, 0xe3, 0x25, 0xf1, 0x98, 0x5a, 0x6c, 0x26, 0x99, 0x61, 0xaa, 0x11, 0xdc, 0xa3, 0x4d, 0x31, 0xa4, 0x56, 0x2e, 0x9a, 0x40, 0x18, 0x8c, 0x6f, 0x09, 0x84, 0xeb, 0x0a, 0x26, 0x2c, 0x6e, 0x11, 0x84, 0x13, 0x10, 0x82, 0x53, 0x78, 0x11, 0x88, 0x9c, 0x59, 0x71, 0xc2, 0x42, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_2865 = { .name = "xdh_wei448_2865", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2865_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2865_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2865_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2865_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 4, tcId is 282 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2866 for XDH, tcId is 283 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2866_peerpubkey[] = { 0xa0, 0x78, 0x99, 0x60, 0x3b, 0x31, 0xc8, 0xb3, 0x60, 0xf9, 0x51, 0x3e, 0xe8, 0x1b, 0xed, 0x87, 0x0f, 0xb9, 0xf6, 0xbb, 0xa0, 0x8f, 0x40, 0xac, 0xa3, 0xb7, 0x88, 0x7f, 0xfe, 0x9b, 0xab, 0xd2, 0xbc, 0x4d, 0xa3, 0x72, 0x30, 0x97, 0x13, 0x9c, 0x88, 0x46, 0xbd, 0x77, 0xd1, 0x9b, 0x39, 0xfb, 0x99, 0x22, 0x50, 0x4a, 0xb9, 0x8c, 0x8f, 0x51, }; static const unsigned char xdh_wei448_2866_ourpubkey[] = { 0x66, 0x8d, 0x8a, 0xed, 0xed, 0x2d, 0x88, 0x7f, 0x42, 0x17, 0x7f, 0x11, 0x17, 0x0f, 0x6f, 0x08, 0x22, 0x94, 0xd0, 0x9a, 0x64, 0x77, 0xcf, 0x88, 0xfc, 0xb4, 0x01, 0x6f, 0xaa, 0xbd, 0xf0, 0x25, 0xed, 0x64, 0xa6, 0x79, 0x6e, 0x74, 0x7e, 0x8e, 0x34, 0x12, 0x37, 0x08, 0xfa, 0x66, 0x3f, 0xf2, 0x75, 0xa9, 0x91, 0xff, 0x2a, 0x1d, 0x2b, 0x83, }; static const unsigned char xdh_wei448_2866_privkey[] = { 0x3c, 0x32, 0xbd, 0x74, 0x55, 0xed, 0x1f, 0x0e, 0xd7, 0xe6, 0x06, 0x28, 0x8c, 0xc0, 0xa6, 0x7d, 0x30, 0x82, 0x6d, 0xc4, 0xbe, 0xc3, 0xaf, 0xf5, 0xd2, 0x22, 0xc0, 0x3c, 0x22, 0xc5, 0x46, 0x17, 0xd8, 0xef, 0xb1, 0xa5, 0x9f, 0x8d, 0x94, 0x03, 0xb4, 0x4d, 0xb5, 0x3a, 0x8f, 0x95, 0x5d, 0xf7, 0xe6, 0xd5, 0x39, 0xba, 0x37, 0x4e, 0xdd, 0x8a, }; static const unsigned char xdh_wei448_2866_sharedsecret[] = { 0x92, 0xe9, 0xc9, 0x6b, 0x8b, 0x16, 0x8f, 0xe5, 0xa3, 0xa1, 0x16, 0x6f, 0x52, 0xce, 0x2d, 0x80, 0x00, 0x8b, 0x56, 0xf0, 0xac, 0xea, 0x64, 0x2c, 0x45, 0xd6, 0xb2, 0x1e, 0x22, 0x7e, 0x38, 0x33, 0x50, 0x60, 0xc2, 0x7a, 0x06, 0xf1, 0xa2, 0x6c, 0xb9, 0xf8, 0x8a, 0x65, 0x78, 0x74, 0x9c, 0xc2, 0xf4, 0xd5, 0x4f, 0x88, 0x1e, 0x71, 0x60, 0xbe, }; static const wycheproof_xdh_test xdh_wei448_2866 = { .name = "xdh_wei448_2866", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2866_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2866_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2866_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2866_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 283 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2867 for XDH, tcId is 284 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2867_peerpubkey[] = { 0x80, 0x35, 0x79, 0x25, 0x31, 0xea, 0x3c, 0x76, 0x38, 0x9f, 0x38, 0xd9, 0x7b, 0x39, 0xcb, 0xa7, 0x88, 0xad, 0x43, 0x83, 0x8a, 0x8f, 0xcb, 0x88, 0x81, 0x7a, 0xb1, 0x13, 0x7c, 0x7a, 0xa6, 0xed, 0x29, 0xf3, 0x0a, 0x2f, 0xc9, 0x15, 0x61, 0x1a, 0xf5, 0xe6, 0xe7, 0x57, 0xfa, 0x5b, 0xc7, 0xf2, 0xe1, 0xa4, 0x35, 0x20, 0xdc, 0x50, 0x83, 0x64, }; static const unsigned char xdh_wei448_2867_ourpubkey[] = { 0xe4, 0xbb, 0x05, 0x72, 0x74, 0xbb, 0xd0, 0x97, 0xe3, 0x1d, 0x3c, 0x03, 0x4e, 0x1f, 0xca, 0xc8, 0xb5, 0x69, 0x73, 0x6f, 0xa4, 0x67, 0x11, 0xbf, 0x63, 0x4d, 0x48, 0x9f, 0xbc, 0xd5, 0x20, 0x3b, 0xd9, 0x4b, 0xff, 0x60, 0x0c, 0x6b, 0xd7, 0x58, 0xde, 0x60, 0xc2, 0xf0, 0x42, 0xca, 0x44, 0x0a, 0xbe, 0x6a, 0xc3, 0xda, 0x9d, 0x66, 0xd9, 0x47, }; static const unsigned char xdh_wei448_2867_privkey[] = { 0x50, 0x31, 0xbc, 0xc3, 0xad, 0x19, 0xec, 0xb8, 0x00, 0x06, 0xc5, 0x4b, 0x94, 0x9b, 0x74, 0xac, 0x37, 0x5f, 0x68, 0xbb, 0xf9, 0x8a, 0xe7, 0xbe, 0x65, 0x33, 0xde, 0xc2, 0xd4, 0x51, 0x47, 0xf3, 0x1d, 0x67, 0x8e, 0xc5, 0x05, 0x0b, 0xf2, 0xf4, 0x5a, 0x92, 0xa8, 0x57, 0xa2, 0x8f, 0xac, 0x9e, 0x20, 0x17, 0x16, 0xce, 0xd4, 0x6c, 0x45, 0x85, }; static const unsigned char xdh_wei448_2867_sharedsecret[] = { 0xc2, 0x74, 0x56, 0x71, 0x70, 0xa5, 0x30, 0xa3, 0x90, 0x82, 0x31, 0x21, 0x9b, 0x1b, 0x1c, 0xbe, 0x88, 0x5c, 0x8e, 0x46, 0x42, 0x18, 0xea, 0x90, 0xc3, 0x8e, 0x89, 0x5e, 0x85, 0x87, 0xfc, 0x43, 0xd0, 0x14, 0xf5, 0xd1, 0xb7, 0xbd, 0x7d, 0x3f, 0xbd, 0xec, 0x0c, 0xa4, 0x0d, 0x62, 0xfd, 0xb8, 0x77, 0x92, 0x9b, 0x97, 0x95, 0x39, 0x29, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_2867 = { .name = "xdh_wei448_2867", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2867_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2867_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2867_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2867_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 284 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2868 for XDH, tcId is 285 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2868_peerpubkey[] = { 0xd7, 0x88, 0x06, 0x7d, 0xe2, 0xe5, 0xd9, 0x86, 0x91, 0x6d, 0xcd, 0xb8, 0xbb, 0x80, 0x5d, 0x64, 0x73, 0x01, 0x9b, 0xb4, 0xa1, 0x6e, 0x03, 0xaa, 0x48, 0x0c, 0x4f, 0x7f, 0x8b, 0xd6, 0xeb, 0x6f, 0x2b, 0xf2, 0x50, 0x11, 0x6b, 0x77, 0xcb, 0x9a, 0xed, 0x51, 0x09, 0x6c, 0x1a, 0x06, 0x87, 0x68, 0xe5, 0x74, 0xd9, 0x23, 0x9c, 0x71, 0x7e, 0xc5, }; static const unsigned char xdh_wei448_2868_ourpubkey[] = { 0xa4, 0x2c, 0x40, 0x5d, 0x68, 0x52, 0xe0, 0x72, 0x54, 0xf6, 0x97, 0xee, 0x54, 0x83, 0x3d, 0x98, 0x63, 0x33, 0xc4, 0xe6, 0x35, 0xe1, 0x74, 0xc4, 0xbb, 0x04, 0xc1, 0x3c, 0xa6, 0x21, 0xc6, 0x6d, 0x59, 0x92, 0xc9, 0x1f, 0x2f, 0x55, 0x47, 0xc8, 0xc8, 0x1e, 0x8d, 0x3d, 0x88, 0xd8, 0x45, 0xf6, 0x79, 0x03, 0x79, 0xf8, 0xbf, 0xd5, 0x4b, 0x8a, }; static const unsigned char xdh_wei448_2868_privkey[] = { 0x0c, 0x69, 0x7d, 0x7d, 0x3f, 0x36, 0x1b, 0x0d, 0x72, 0xab, 0x3d, 0x45, 0x76, 0x2c, 0x7a, 0xff, 0x6c, 0xb6, 0x71, 0x05, 0x07, 0x8c, 0x21, 0x73, 0x68, 0xb0, 0x81, 0xde, 0x4f, 0xd8, 0x6d, 0x78, 0xef, 0xe5, 0xea, 0xf8, 0x35, 0xf5, 0x0c, 0xe7, 0xe3, 0x25, 0x90, 0x54, 0x67, 0x44, 0x8a, 0x7a, 0x2e, 0x7f, 0xe6, 0x84, 0xdb, 0xce, 0x5a, 0x9e, }; static const unsigned char xdh_wei448_2868_sharedsecret[] = { 0x2c, 0xf2, 0xef, 0x94, 0x60, 0xcb, 0xd0, 0x3e, 0xca, 0x6e, 0x29, 0x88, 0x40, 0xa2, 0x62, 0x9d, 0x99, 0x22, 0x51, 0x66, 0xb3, 0xe5, 0xb2, 0xf7, 0x72, 0xfb, 0x70, 0xaa, 0x38, 0xd9, 0x74, 0xa0, 0x6f, 0x57, 0x0b, 0x6d, 0x13, 0x35, 0x26, 0x49, 0x42, 0x2f, 0x65, 0xd3, 0xf0, 0xf4, 0x76, 0x32, 0x0e, 0xca, 0xc9, 0x33, 0x33, 0x99, 0x54, 0xb8, }; static const wycheproof_xdh_test xdh_wei448_2868 = { .name = "xdh_wei448_2868", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2868_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2868_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2868_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2868_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 285 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2869 for XDH, tcId is 286 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2869_peerpubkey[] = { 0xf0, 0xdd, 0x20, 0x3c, 0x95, 0x09, 0x9b, 0xaf, 0x75, 0x79, 0xe5, 0x59, 0xf2, 0x40, 0x4d, 0x21, 0xd2, 0x1d, 0xda, 0x49, 0xf6, 0x0f, 0x07, 0x9f, 0x77, 0x15, 0xf2, 0x0c, 0x6a, 0x5e, 0xda, 0x38, 0x1a, 0xb5, 0xf0, 0x89, 0xa7, 0x80, 0xf4, 0x01, 0x97, 0xbb, 0x03, 0xd7, 0x0f, 0x1f, 0x72, 0xef, 0xa0, 0x0e, 0x49, 0xe2, 0x8e, 0xad, 0xf9, 0x46, }; static const unsigned char xdh_wei448_2869_ourpubkey[] = { 0xcc, 0x2a, 0xb7, 0x6e, 0x3a, 0xff, 0x25, 0xa2, 0xb2, 0x27, 0x94, 0x79, 0x83, 0xcb, 0xea, 0xbc, 0xe9, 0x2b, 0xf8, 0xaa, 0xbe, 0x97, 0x7a, 0xa5, 0xe2, 0xfc, 0x70, 0x81, 0xe0, 0x89, 0xb1, 0x6d, 0x48, 0x24, 0xea, 0x2c, 0xb6, 0x7b, 0x60, 0x2a, 0xa5, 0x4b, 0xd3, 0xa8, 0x81, 0x52, 0x27, 0x8c, 0x3b, 0x4e, 0x72, 0x42, 0xdf, 0x15, 0x94, 0x3d, }; static const unsigned char xdh_wei448_2869_privkey[] = { 0xd8, 0xbf, 0x06, 0xfe, 0xc1, 0x96, 0x24, 0x31, 0x43, 0x77, 0x3d, 0x03, 0xc2, 0x3c, 0x6c, 0x0a, 0x8b, 0xbb, 0x57, 0xc2, 0x0c, 0x3c, 0x0e, 0xd5, 0x4c, 0xc1, 0x5a, 0xd5, 0x73, 0x42, 0x9c, 0xce, 0x18, 0x5a, 0x2c, 0x3c, 0x3e, 0xbf, 0x1a, 0x5a, 0x1c, 0x45, 0xfb, 0x74, 0xbc, 0xb8, 0x1b, 0xb5, 0xd4, 0xfc, 0xcf, 0x5c, 0xd4, 0x14, 0x67, 0x88, }; static const unsigned char xdh_wei448_2869_sharedsecret[] = { 0x61, 0x19, 0x03, 0x3f, 0x41, 0x96, 0x29, 0xbd, 0xd3, 0xd3, 0xd7, 0x65, 0xbf, 0x2d, 0xa2, 0xde, 0xd5, 0xe8, 0xa7, 0xbb, 0x5a, 0x81, 0xb1, 0xc2, 0xee, 0x60, 0xb4, 0x55, 0x16, 0x34, 0xfa, 0x2d, 0x27, 0xd7, 0x31, 0xf9, 0x1a, 0x25, 0xc1, 0x3e, 0x59, 0x94, 0x87, 0x87, 0xc3, 0x29, 0x19, 0x2f, 0x65, 0x86, 0x97, 0x88, 0x28, 0x12, 0x58, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_2869 = { .name = "xdh_wei448_2869", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2869_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2869_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2869_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2869_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 286 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2870 for XDH, tcId is 287 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2870_peerpubkey[] = { 0x0c, 0x17, 0xe3, 0xbd, 0x7c, 0x05, 0x0c, 0x2a, 0x2c, 0x29, 0x80, 0xfd, 0xb6, 0xb0, 0xde, 0x32, 0xbc, 0x5e, 0x89, 0xd6, 0xd7, 0xe3, 0x47, 0x00, 0x1a, 0xe1, 0xd8, 0x7d, 0x96, 0xc4, 0x36, 0xe4, 0x58, 0x0d, 0x96, 0xe8, 0x44, 0xe5, 0xa1, 0x59, 0xde, 0x88, 0xbb, 0x7d, 0x53, 0xd4, 0xbc, 0x04, 0xfb, 0xd4, 0xa3, 0x06, 0x22, 0xe5, 0x44, 0x57, }; static const unsigned char xdh_wei448_2870_ourpubkey[] = { 0xa3, 0xef, 0xcb, 0x4a, 0x68, 0x23, 0xf3, 0x5a, 0x52, 0x93, 0x60, 0x2a, 0xcd, 0x29, 0xe5, 0x1d, 0x58, 0xff, 0xb3, 0x95, 0xee, 0xa6, 0x84, 0x4d, 0x81, 0xd3, 0xe0, 0x79, 0xb8, 0xb8, 0x0f, 0xca, 0x6d, 0x3d, 0x22, 0xc7, 0x5f, 0xd3, 0x34, 0x70, 0x83, 0x55, 0xc8, 0x9b, 0x96, 0x16, 0xe7, 0x0d, 0x1e, 0x3d, 0xe1, 0x00, 0x36, 0x58, 0xc3, 0x21, }; static const unsigned char xdh_wei448_2870_privkey[] = { 0xc4, 0xb8, 0x78, 0x78, 0x1a, 0xe5, 0x85, 0x3e, 0x90, 0x75, 0x83, 0xd2, 0x8e, 0xae, 0x2b, 0xb2, 0xb1, 0x08, 0x47, 0x26, 0x10, 0xac, 0xe2, 0x23, 0x68, 0x14, 0xfb, 0xf1, 0x4e, 0xa9, 0xee, 0xf6, 0x52, 0x50, 0xf7, 0x9a, 0x5f, 0x2e, 0xf5, 0x3c, 0x46, 0xbb, 0x1a, 0xc1, 0x84, 0xa1, 0x68, 0x5c, 0xaf, 0xa3, 0x98, 0xa3, 0x74, 0x6c, 0xc1, 0x9e, }; static const unsigned char xdh_wei448_2870_sharedsecret[] = { 0x65, 0x0d, 0x63, 0x8d, 0x93, 0xc2, 0xea, 0xbf, 0xd5, 0xd4, 0xc2, 0x15, 0x46, 0x03, 0x51, 0xf3, 0x27, 0xe5, 0x85, 0x73, 0x89, 0x88, 0x8e, 0x4e, 0x29, 0x25, 0x76, 0xd9, 0xd9, 0x1e, 0x0f, 0xea, 0x60, 0x28, 0x9e, 0x79, 0x8a, 0xe8, 0x6a, 0x31, 0x57, 0x29, 0x6c, 0xe6, 0x89, 0x15, 0xaf, 0x53, 0xb3, 0x8c, 0xa3, 0xe8, 0x71, 0xa5, 0x0e, 0x6a, }; static const wycheproof_xdh_test xdh_wei448_2870 = { .name = "xdh_wei448_2870", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2870_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2870_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2870_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2870_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 287 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2871 for XDH, tcId is 288 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2871_peerpubkey[] = { 0x31, 0x8d, 0x8a, 0x8c, 0xf1, 0x21, 0xe3, 0x65, 0xd1, 0x8d, 0xb1, 0x70, 0xde, 0xbe, 0xa4, 0x5f, 0xfc, 0xd3, 0xb7, 0x75, 0xdd, 0xab, 0xc4, 0xc3, 0x24, 0x69, 0xae, 0xa3, 0x85, 0x7b, 0x70, 0x2f, 0x9a, 0x80, 0x59, 0x48, 0xf2, 0x1b, 0x80, 0x57, 0x3a, 0x17, 0x68, 0xb5, 0x7f, 0xb9, 0x86, 0xdc, 0xb9, 0x27, 0xfe, 0xc5, 0x53, 0x5e, 0x00, 0x62, }; static const unsigned char xdh_wei448_2871_ourpubkey[] = { 0xc9, 0xec, 0x5b, 0xc9, 0x68, 0x68, 0x5d, 0xdd, 0xef, 0x03, 0xbb, 0x4a, 0xb4, 0xb0, 0x43, 0x97, 0xb6, 0x10, 0x81, 0x35, 0x1d, 0x70, 0x68, 0x13, 0x73, 0x95, 0x51, 0x9f, 0x93, 0x68, 0x97, 0x75, 0x52, 0x7a, 0xbf, 0xa4, 0xd8, 0x0c, 0xbf, 0xa0, 0x4c, 0x74, 0xce, 0xe9, 0x9e, 0xb5, 0x44, 0x7d, 0xd4, 0x03, 0xe1, 0x20, 0xa2, 0x29, 0x4d, 0x1d, }; static const unsigned char xdh_wei448_2871_privkey[] = { 0xa4, 0x1e, 0xd8, 0x95, 0x26, 0xf0, 0x4d, 0xa4, 0xa3, 0xf4, 0xf5, 0x7c, 0xf4, 0x47, 0x4e, 0x33, 0x5e, 0xa5, 0x25, 0xc5, 0xea, 0xb3, 0x6f, 0xfb, 0x87, 0xce, 0xe1, 0x0f, 0x85, 0xb6, 0xc4, 0xa0, 0xe5, 0x17, 0x99, 0x6f, 0x2d, 0x55, 0xa9, 0x84, 0x3e, 0x29, 0xa3, 0x2e, 0xbf, 0x34, 0x1e, 0x9f, 0x2c, 0x20, 0x59, 0x0d, 0x77, 0xc4, 0x95, 0x8c, }; static const unsigned char xdh_wei448_2871_sharedsecret[] = { 0x53, 0xe2, 0x93, 0x4c, 0xfb, 0x0d, 0xf8, 0x7d, 0xd1, 0xe0, 0xdc, 0xa0, 0x5f, 0x0b, 0xa3, 0x2c, 0x2b, 0xaf, 0x60, 0xe6, 0x32, 0xd3, 0x3e, 0xbf, 0x45, 0xd2, 0x68, 0x14, 0x47, 0xce, 0xc6, 0xdf, 0xf1, 0x64, 0xe9, 0x19, 0x06, 0x4e, 0xf2, 0xe6, 0xfe, 0x72, 0x75, 0x27, 0x0a, 0xff, 0xcb, 0xb6, 0xb1, 0xdf, 0xea, 0x0d, 0xd7, 0x3d, 0x18, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_2871 = { .name = "xdh_wei448_2871", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2871_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2871_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2871_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2871_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 288 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2872 for XDH, tcId is 289 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2872_peerpubkey[] = { 0x96, 0x63, 0x52, 0x65, 0x11, 0x51, 0x9a, 0xa6, 0xb2, 0x01, 0x5f, 0x25, 0x8a, 0xb0, 0x16, 0xaa, 0x2a, 0xc7, 0xae, 0x05, 0x12, 0x5e, 0xb1, 0x52, 0x8c, 0xb2, 0xe0, 0x0a, 0x8b, 0x0f, 0x0b, 0xa7, 0xab, 0x43, 0xbe, 0x08, 0xae, 0x67, 0xf0, 0x86, 0x2b, 0xc5, 0x12, 0x72, 0x54, 0xb2, 0xb2, 0x92, 0x3c, 0xc8, 0x2e, 0x32, 0xbc, 0x5d, 0x49, 0x02, }; static const unsigned char xdh_wei448_2872_ourpubkey[] = { 0xd5, 0x00, 0x22, 0x50, 0x65, 0x71, 0xa6, 0xfc, 0xb4, 0x64, 0xce, 0x19, 0x27, 0xa8, 0x0c, 0x2e, 0xce, 0x7d, 0x10, 0xd4, 0xf2, 0xbb, 0x00, 0x8b, 0x4e, 0x76, 0xd5, 0xb7, 0x60, 0x78, 0x03, 0xc0, 0x3e, 0x75, 0x27, 0x2d, 0x65, 0x0d, 0xbf, 0xc1, 0xe1, 0xc5, 0xf7, 0xec, 0xac, 0x21, 0x63, 0xb5, 0xb1, 0xfb, 0x16, 0xf2, 0x1c, 0x80, 0x7e, 0x8a, }; static const unsigned char xdh_wei448_2872_privkey[] = { 0x84, 0x6d, 0xd0, 0x12, 0x51, 0x0b, 0x69, 0x86, 0x0c, 0xf9, 0x6a, 0xc5, 0x97, 0x87, 0xff, 0x8e, 0x21, 0xb4, 0x86, 0xe1, 0x10, 0xe4, 0x36, 0x52, 0xba, 0x1e, 0xda, 0x5a, 0x4a, 0x81, 0x88, 0xae, 0xf4, 0xe7, 0x66, 0x83, 0x06, 0x5c, 0x61, 0x7a, 0xdb, 0x32, 0xec, 0xf9, 0x73, 0xcf, 0x80, 0x7b, 0x5a, 0xce, 0xf2, 0xd9, 0x82, 0xdd, 0x2a, 0xb7, }; static const unsigned char xdh_wei448_2872_sharedsecret[] = { 0xb9, 0xf5, 0xa8, 0xc4, 0x63, 0xbd, 0xd4, 0x1b, 0x4d, 0xb4, 0xca, 0x69, 0x1c, 0xf5, 0x9d, 0xb2, 0x39, 0x59, 0xff, 0xe8, 0x9a, 0x43, 0x38, 0x71, 0xb5, 0x33, 0x3c, 0xc7, 0x14, 0x94, 0xf5, 0xb4, 0xc0, 0xd6, 0x9a, 0xb4, 0x07, 0x80, 0x56, 0x74, 0x03, 0x23, 0x7b, 0x02, 0x00, 0x0b, 0xb4, 0x4f, 0xa0, 0x74, 0xb8, 0xa0, 0x6a, 0xfc, 0x3e, 0xf4, }; static const wycheproof_xdh_test xdh_wei448_2872 = { .name = "xdh_wei448_2872", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2872_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2872_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2872_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2872_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 289 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2873 for XDH, tcId is 290 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2873_peerpubkey[] = { 0x39, 0xf8, 0xb7, 0xb8, 0x00, 0xdc, 0x86, 0x78, 0xc8, 0x62, 0xd0, 0xa9, 0x5c, 0x8c, 0xab, 0x7e, 0x88, 0xa0, 0x0c, 0xc1, 0x6d, 0x2d, 0x8d, 0xc7, 0x56, 0x2b, 0xe8, 0xf2, 0xbd, 0x01, 0x98, 0x10, 0xec, 0xb6, 0x8c, 0x9b, 0x01, 0xfa, 0xf9, 0xa2, 0x48, 0x77, 0xa2, 0x5e, 0xa9, 0x63, 0xe8, 0xeb, 0x23, 0x7b, 0x47, 0xf2, 0xef, 0x29, 0x25, 0x26, }; static const unsigned char xdh_wei448_2873_ourpubkey[] = { 0xeb, 0x85, 0x4d, 0x99, 0xc0, 0x15, 0x7f, 0x55, 0xc8, 0x87, 0x59, 0x70, 0x68, 0xf0, 0xf4, 0xc8, 0xb2, 0x00, 0x3a, 0x89, 0x2d, 0x95, 0x48, 0xc8, 0x14, 0x9c, 0x3c, 0x0b, 0x7d, 0x6c, 0x9a, 0x73, 0xa8, 0x01, 0x68, 0x22, 0x03, 0x6f, 0xc4, 0xf8, 0xa2, 0xc0, 0xc6, 0x76, 0x20, 0xf0, 0x90, 0xa9, 0xca, 0x00, 0xd5, 0xe8, 0x0b, 0x8c, 0x04, 0xe7, }; static const unsigned char xdh_wei448_2873_privkey[] = { 0x90, 0xa7, 0xd0, 0x68, 0x5d, 0xf2, 0xc5, 0xa1, 0x21, 0xe8, 0x86, 0x1a, 0x98, 0x7f, 0xbf, 0x4b, 0x56, 0x6e, 0xbb, 0xdf, 0xaf, 0xb6, 0xd1, 0x40, 0xcb, 0xa2, 0xaf, 0x9f, 0x2a, 0x24, 0x59, 0x80, 0x15, 0x79, 0x5d, 0x39, 0xd5, 0x03, 0x5a, 0x73, 0xcb, 0x28, 0x72, 0x8d, 0xd0, 0xce, 0x23, 0x7f, 0xb0, 0x50, 0x2e, 0xf6, 0xb9, 0x0f, 0xd4, 0xa3, }; static const unsigned char xdh_wei448_2873_sharedsecret[] = { 0xfd, 0x80, 0x64, 0xa2, 0xb1, 0x16, 0x51, 0x06, 0x79, 0x12, 0xee, 0x1b, 0x29, 0x9a, 0x19, 0xba, 0x76, 0x1f, 0x0d, 0x44, 0x6c, 0x26, 0xcb, 0xee, 0x6b, 0xc8, 0x5e, 0x96, 0x14, 0x9a, 0x53, 0xfc, 0x6c, 0x6f, 0xc0, 0xda, 0xbc, 0x2f, 0xaa, 0x64, 0xf0, 0x4b, 0xbe, 0x4d, 0xf0, 0x0f, 0x99, 0x48, 0x7f, 0x44, 0x47, 0x42, 0x95, 0xe1, 0x61, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_2873 = { .name = "xdh_wei448_2873", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2873_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2873_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2873_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2873_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 290 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2874 for XDH, tcId is 291 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2874_peerpubkey[] = { 0x0b, 0xf3, 0xd5, 0x0d, 0x7a, 0xcb, 0x23, 0x3b, 0xd2, 0x34, 0x13, 0xc2, 0x68, 0xe5, 0xd5, 0x90, 0xb7, 0x2c, 0x6a, 0x78, 0xb7, 0x74, 0x52, 0x13, 0x8a, 0xc0, 0x93, 0x42, 0xd7, 0x28, 0xb9, 0x7b, 0xba, 0x41, 0x61, 0xf9, 0xf3, 0x30, 0x5a, 0x1a, 0x1c, 0x2f, 0x40, 0x74, 0xe0, 0xb3, 0xdd, 0x2b, 0xcf, 0x28, 0x39, 0x70, 0x6b, 0x48, 0x60, 0x82, }; static const unsigned char xdh_wei448_2874_ourpubkey[] = { 0x89, 0x8b, 0xda, 0xac, 0x4a, 0xc4, 0xfd, 0xb7, 0x8d, 0x12, 0x60, 0xc0, 0xf3, 0x71, 0xf3, 0x22, 0x05, 0x95, 0x82, 0xc0, 0x1c, 0x25, 0xf9, 0x8c, 0xe0, 0x6f, 0x52, 0x32, 0x0d, 0xaf, 0x40, 0x9c, 0x47, 0x32, 0x5e, 0x7e, 0x53, 0x49, 0x95, 0x34, 0x5f, 0xd7, 0x6a, 0xa1, 0x79, 0xbd, 0x45, 0x0c, 0xad, 0xef, 0xb4, 0x5c, 0x9f, 0x12, 0x25, 0xe0, }; static const unsigned char xdh_wei448_2874_privkey[] = { 0xd8, 0xaa, 0x6e, 0x7c, 0xaf, 0x9e, 0x7f, 0x59, 0xf2, 0xc5, 0xc5, 0x31, 0xdf, 0x61, 0xc8, 0xfb, 0x37, 0x49, 0x42, 0x2b, 0x7a, 0x9a, 0x9e, 0x77, 0x5e, 0x00, 0xd2, 0x1b, 0xbf, 0x3b, 0x29, 0xdc, 0xf4, 0xe9, 0x03, 0x1e, 0x4e, 0x0b, 0x3a, 0x71, 0xe3, 0x9c, 0x53, 0x00, 0xa7, 0x5f, 0xba, 0x99, 0x9e, 0xca, 0x62, 0x11, 0xc8, 0x48, 0x7f, 0xba, }; static const unsigned char xdh_wei448_2874_sharedsecret[] = { 0x3e, 0xb2, 0xd5, 0x05, 0xcb, 0x9b, 0x4c, 0xa3, 0x9f, 0x1e, 0x20, 0xa6, 0xdb, 0xd7, 0xd8, 0x39, 0x35, 0x63, 0x4b, 0x13, 0x14, 0x7e, 0xcf, 0xbd, 0x39, 0xca, 0xe8, 0x2e, 0xb2, 0xe0, 0x11, 0x29, 0xfc, 0xda, 0xe9, 0xbc, 0xb0, 0xb2, 0x04, 0x99, 0x55, 0x96, 0x0b, 0x65, 0x87, 0x32, 0x1e, 0xcc, 0xc5, 0x41, 0x58, 0xdf, 0x2d, 0xc5, 0x85, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_2874 = { .name = "xdh_wei448_2874", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2874_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2874_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2874_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2874_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 291 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2875 for XDH, tcId is 292 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2875_peerpubkey[] = { 0xb4, 0x80, 0x64, 0xd6, 0xa9, 0x19, 0xa4, 0xf1, 0x6f, 0x38, 0x31, 0x54, 0x39, 0xee, 0x0f, 0xe5, 0x9b, 0xfc, 0xdd, 0x46, 0x13, 0x7a, 0x03, 0x27, 0x59, 0x5c, 0xaf, 0x9e, 0xf8, 0x40, 0x63, 0xb4, 0xdf, 0xc5, 0x0c, 0x4b, 0x9d, 0x13, 0xaf, 0x81, 0xd2, 0x3e, 0xed, 0x03, 0xad, 0x6f, 0x0b, 0x74, 0xd0, 0x16, 0x64, 0x34, 0x6f, 0xa8, 0x70, 0xb2, }; static const unsigned char xdh_wei448_2875_ourpubkey[] = { 0x29, 0x74, 0xa1, 0xd1, 0xfe, 0xbc, 0x9b, 0x67, 0x22, 0x20, 0x81, 0x66, 0xfa, 0xeb, 0xc1, 0x8a, 0x2e, 0xb4, 0x0b, 0x7c, 0xe1, 0x87, 0xce, 0xab, 0xc3, 0xb0, 0xc3, 0x5a, 0x80, 0xcb, 0xa5, 0xbf, 0x32, 0xc2, 0xf5, 0x12, 0x71, 0x27, 0x49, 0x52, 0x79, 0x6f, 0x18, 0x3d, 0x06, 0x21, 0xaf, 0x74, 0x02, 0x73, 0x89, 0xd3, 0x11, 0xc1, 0x35, 0x08, }; static const unsigned char xdh_wei448_2875_privkey[] = { 0x40, 0x40, 0x36, 0x3c, 0x5a, 0xb5, 0x18, 0x3e, 0xba, 0x95, 0xa6, 0xbd, 0xe2, 0x17, 0xe8, 0x27, 0x5e, 0x0f, 0x4c, 0xc6, 0x70, 0x36, 0xfa, 0x07, 0x6b, 0x19, 0x65, 0xd7, 0x49, 0x9b, 0x1d, 0xeb, 0x13, 0x3c, 0x87, 0xe3, 0x71, 0xea, 0x8c, 0x30, 0x6b, 0xa5, 0x33, 0xf6, 0xf4, 0x3c, 0x3a, 0xa9, 0xb6, 0x45, 0x0a, 0xb4, 0x69, 0x3c, 0xfb, 0xab, }; static const unsigned char xdh_wei448_2875_sharedsecret[] = { 0x5a, 0xb0, 0x1c, 0x0b, 0x22, 0x06, 0x9d, 0xe1, 0x7d, 0xc2, 0x89, 0xc5, 0xc0, 0x25, 0xd1, 0xd2, 0x6c, 0x62, 0xb5, 0xf6, 0x2d, 0x71, 0x41, 0x77, 0x4b, 0xd7, 0x90, 0x7d, 0xf7, 0xff, 0xf6, 0xcd, 0xc8, 0x99, 0xdd, 0x8c, 0x52, 0x2d, 0x3a, 0xb7, 0x4b, 0x63, 0x6c, 0x6e, 0xd6, 0x51, 0xc1, 0xc2, 0x70, 0x49, 0xc3, 0x1e, 0x1e, 0xc1, 0x66, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2875 = { .name = "xdh_wei448_2875", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2875_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2875_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2875_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2875_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 292 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2876 for XDH, tcId is 293 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2876_peerpubkey[] = { 0x5c, 0x21, 0x37, 0xbe, 0xa5, 0x0f, 0x8f, 0xf7, 0x95, 0x69, 0xa6, 0xae, 0xc1, 0x9d, 0x23, 0x10, 0x16, 0x4f, 0x56, 0x52, 0xa3, 0x01, 0xbd, 0x6a, 0xb1, 0x86, 0x3d, 0xc9, 0x4e, 0xc3, 0xc3, 0x1c, 0x2c, 0xa3, 0xfa, 0xb6, 0x2f, 0x31, 0xda, 0x5e, 0x33, 0x4c, 0x05, 0x0a, 0xf9, 0x3e, 0xb3, 0xb3, 0x47, 0x64, 0x89, 0x15, 0x04, 0x19, 0xf4, 0xdb, }; static const unsigned char xdh_wei448_2876_ourpubkey[] = { 0x4f, 0x4f, 0x86, 0xea, 0x85, 0x01, 0x26, 0xd6, 0xc1, 0x6e, 0xda, 0x68, 0xb6, 0xd5, 0x49, 0x43, 0x09, 0x5e, 0xbd, 0xf0, 0x62, 0x99, 0xe8, 0xdb, 0x41, 0x01, 0x38, 0x54, 0x74, 0x29, 0x46, 0x44, 0xa5, 0x10, 0x3e, 0x04, 0xdb, 0x51, 0xe1, 0xc7, 0xe4, 0x22, 0x0d, 0xb8, 0xbb, 0x58, 0x11, 0x33, 0x41, 0xc7, 0x15, 0x98, 0xce, 0x41, 0x80, 0x39, }; static const unsigned char xdh_wei448_2876_privkey[] = { 0x50, 0x13, 0x98, 0xbb, 0x75, 0x71, 0x08, 0x79, 0xb8, 0x5d, 0xfb, 0xf5, 0xec, 0xb8, 0x50, 0xba, 0x7d, 0xd3, 0x01, 0x41, 0x7f, 0x0e, 0xcc, 0x0b, 0x58, 0x94, 0x47, 0xf6, 0xf1, 0x90, 0x55, 0xc7, 0x4e, 0xa5, 0x5b, 0x6a, 0x6b, 0x74, 0xfc, 0x59, 0x74, 0xab, 0x49, 0x88, 0x1d, 0xb2, 0xa3, 0xd6, 0xf0, 0x7f, 0x6a, 0x57, 0x43, 0x8e, 0x77, 0xb2, }; static const unsigned char xdh_wei448_2876_sharedsecret[] = { 0xe6, 0x5b, 0x36, 0xc1, 0x5b, 0x12, 0x1a, 0xe2, 0xeb, 0xfa, 0xe1, 0x2b, 0x2f, 0x37, 0x02, 0xef, 0x26, 0x14, 0xf3, 0xf6, 0x80, 0xe9, 0x70, 0x7b, 0xa2, 0xa9, 0x5b, 0x45, 0x2d, 0xdd, 0xf8, 0xb1, 0x08, 0x9c, 0x7c, 0xca, 0x74, 0xae, 0x64, 0xf0, 0xf6, 0xa0, 0xc1, 0x36, 0xd2, 0x77, 0x40, 0x62, 0xef, 0xf8, 0x80, 0x0c, 0x01, 0x60, 0xc1, 0x39, }; static const wycheproof_xdh_test xdh_wei448_2876 = { .name = "xdh_wei448_2876", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2876_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2876_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2876_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2876_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 293 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2877 for XDH, tcId is 294 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2877_peerpubkey[] = { 0x6a, 0xd8, 0x46, 0xd0, 0x92, 0x81, 0x7e, 0x34, 0x1f, 0x5d, 0x13, 0x42, 0xee, 0x60, 0x03, 0xe3, 0x82, 0x2e, 0x5c, 0x30, 0x92, 0xef, 0x05, 0x99, 0xe0, 0x11, 0x49, 0x97, 0x5d, 0x7a, 0x0d, 0xc8, 0x08, 0x5c, 0xd4, 0x49, 0x09, 0x43, 0x34, 0x3f, 0x86, 0x91, 0x38, 0x15, 0x11, 0x1b, 0x96, 0x79, 0x8e, 0x37, 0x3d, 0x56, 0xc5, 0xa7, 0x28, 0x03, }; static const unsigned char xdh_wei448_2877_ourpubkey[] = { 0x1f, 0xff, 0xa0, 0xd8, 0x6a, 0x40, 0x2a, 0x96, 0x86, 0xed, 0x1f, 0x06, 0xd5, 0xe8, 0x67, 0x59, 0x05, 0x43, 0x92, 0x26, 0x72, 0x16, 0x47, 0x16, 0x7c, 0x39, 0x3b, 0xf9, 0x33, 0x07, 0xe3, 0x6e, 0xd8, 0xd8, 0x70, 0x16, 0x48, 0x81, 0x57, 0xe4, 0xee, 0x76, 0x90, 0x12, 0x16, 0x1b, 0xc5, 0xab, 0xaa, 0x99, 0xc7, 0xbb, 0xd1, 0x63, 0x7d, 0x7f, }; static const unsigned char xdh_wei448_2877_privkey[] = { 0x48, 0x1c, 0x15, 0x52, 0xcb, 0x3b, 0xc7, 0x9e, 0xf4, 0xef, 0x33, 0xea, 0xd3, 0x16, 0x27, 0x35, 0xe3, 0xdf, 0x3d, 0x47, 0x15, 0x0a, 0x3f, 0xdc, 0x1f, 0x00, 0x90, 0x39, 0x1b, 0x61, 0x8f, 0xa3, 0x20, 0x69, 0x35, 0x5d, 0x18, 0x11, 0x52, 0xb0, 0xbf, 0x64, 0x1c, 0xd7, 0x8b, 0x12, 0xb7, 0xb7, 0xca, 0x85, 0x62, 0x4e, 0xa0, 0x46, 0x67, 0xae, }; static const unsigned char xdh_wei448_2877_sharedsecret[] = { 0x6a, 0x1c, 0x24, 0x8b, 0x32, 0x62, 0x56, 0x04, 0xea, 0x1d, 0x53, 0x6d, 0x83, 0xe9, 0x13, 0xa4, 0xb9, 0x6a, 0x1c, 0x86, 0x9b, 0x7c, 0x09, 0xb9, 0xb7, 0xd1, 0xce, 0x31, 0x5e, 0x24, 0xc1, 0x8b, 0x7c, 0x47, 0x9b, 0xb8, 0xe9, 0x94, 0xcf, 0x1f, 0xfd, 0x54, 0x28, 0xe7, 0x78, 0x84, 0xcb, 0x06, 0x34, 0x6f, 0xb7, 0x76, 0xaf, 0x7d, 0x52, 0x50, }; static const wycheproof_xdh_test xdh_wei448_2877 = { .name = "xdh_wei448_2877", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2877_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2877_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2877_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2877_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 294 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2878 for XDH, tcId is 295 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2878_peerpubkey[] = { 0xa0, 0x68, 0xd1, 0xa8, 0xaa, 0x41, 0xb8, 0x4a, 0x48, 0x61, 0x22, 0x0d, 0xf0, 0xd7, 0x04, 0x0e, 0x04, 0x58, 0x37, 0xf1, 0x09, 0xf9, 0xed, 0x15, 0x6d, 0x63, 0x9a, 0x8a, 0xe9, 0xa8, 0x15, 0x35, 0xfe, 0x3b, 0x0a, 0xf9, 0xb8, 0xb8, 0xfa, 0x4b, 0x6c, 0xcf, 0xf3, 0xa2, 0xb1, 0xd0, 0xb4, 0x0e, 0xca, 0x97, 0x96, 0xff, 0xc9, 0xa9, 0xbe, 0x28, }; static const unsigned char xdh_wei448_2878_ourpubkey[] = { 0xd0, 0x60, 0xd2, 0x42, 0x2d, 0x85, 0x4d, 0xb8, 0xda, 0xbd, 0x98, 0xff, 0xce, 0x20, 0x07, 0xbc, 0x9c, 0xa5, 0x11, 0x8b, 0x89, 0xc9, 0x92, 0xd1, 0x77, 0x2a, 0xda, 0xd8, 0x33, 0x3e, 0xb6, 0xef, 0xd1, 0x06, 0xf8, 0xa7, 0xa6, 0x1a, 0x8b, 0xc7, 0xa5, 0xc6, 0xe8, 0x8f, 0x81, 0x5e, 0xc9, 0x08, 0x60, 0x19, 0x58, 0xbe, 0x41, 0x4b, 0x92, 0x04, }; static const unsigned char xdh_wei448_2878_privkey[] = { 0x3c, 0xd4, 0xf7, 0xc0, 0x6f, 0xab, 0x74, 0x31, 0xcc, 0xaa, 0x07, 0x6f, 0x6e, 0xa2, 0x11, 0x70, 0xeb, 0x6e, 0x93, 0xa3, 0xc9, 0xec, 0xb5, 0x51, 0x66, 0xfd, 0xc4, 0x19, 0xf3, 0x21, 0xfa, 0x3b, 0xe8, 0xa3, 0x0d, 0xfc, 0x4a, 0xd8, 0xd4, 0x11, 0x86, 0xbb, 0x15, 0x5d, 0x9e, 0x73, 0x72, 0x4a, 0xd0, 0xc2, 0x67, 0xa4, 0x9b, 0x9a, 0x0c, 0xac, }; static const unsigned char xdh_wei448_2878_sharedsecret[] = { 0xe1, 0x0b, 0x5f, 0x67, 0x27, 0x53, 0x75, 0x67, 0x83, 0xc9, 0x52, 0x4f, 0x04, 0x0a, 0xc0, 0x27, 0xcc, 0x64, 0x03, 0xca, 0x02, 0x5b, 0x5d, 0x6c, 0xd3, 0x93, 0xd0, 0xe7, 0x4a, 0xa5, 0x01, 0x2b, 0xaa, 0x50, 0xc6, 0xf7, 0x20, 0xd3, 0xf5, 0x21, 0xf8, 0xbf, 0x68, 0x9e, 0x3e, 0x5e, 0x6f, 0x54, 0xd1, 0xdb, 0xf2, 0x28, 0x6d, 0x71, 0xad, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_2878 = { .name = "xdh_wei448_2878", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2878_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2878_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2878_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2878_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 295 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2879 for XDH, tcId is 296 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2879_peerpubkey[] = { 0x1d, 0x10, 0x06, 0xcf, 0x7e, 0xd9, 0x4e, 0x0a, 0xeb, 0x5b, 0x73, 0x58, 0x76, 0x99, 0xf0, 0xee, 0x7a, 0xcd, 0xee, 0x1d, 0x46, 0x8f, 0x5e, 0x10, 0xe7, 0xcb, 0xd2, 0xbd, 0xf8, 0x92, 0xe1, 0xa4, 0x38, 0x84, 0xff, 0x34, 0x8e, 0x81, 0x9e, 0x4a, 0x32, 0x64, 0xd5, 0x28, 0x26, 0xda, 0xf8, 0x6b, 0xb4, 0xe9, 0x2c, 0x1a, 0xb7, 0x8d, 0x14, 0x3d, }; static const unsigned char xdh_wei448_2879_ourpubkey[] = { 0x52, 0x04, 0x46, 0xbb, 0x06, 0x84, 0x89, 0x23, 0xc1, 0x2a, 0x7f, 0x32, 0x56, 0xf3, 0x25, 0x14, 0x49, 0x02, 0x34, 0xb7, 0x2e, 0x7b, 0x3b, 0xc5, 0xfd, 0x82, 0x5c, 0x79, 0xb4, 0xc8, 0xfc, 0x31, 0xa9, 0xc0, 0x58, 0x38, 0xd4, 0x6f, 0xf2, 0xce, 0xb5, 0x56, 0xf9, 0x1a, 0x75, 0x45, 0x08, 0x2f, 0x9b, 0xc3, 0xb0, 0x87, 0x81, 0xbd, 0xaf, 0xcd, }; static const unsigned char xdh_wei448_2879_privkey[] = { 0xac, 0x5b, 0x24, 0xe0, 0x9b, 0xb8, 0x9f, 0x2b, 0xae, 0x47, 0xfc, 0xc3, 0x85, 0x7d, 0xda, 0x33, 0x6a, 0x9f, 0xfe, 0xf7, 0xfe, 0xd7, 0xf0, 0xd8, 0x0b, 0xe2, 0xbd, 0xb5, 0x65, 0xdf, 0x21, 0xb3, 0xaf, 0x2f, 0x46, 0x9d, 0x23, 0x92, 0xb9, 0xc8, 0x69, 0x19, 0x7b, 0xb3, 0x95, 0xff, 0x0b, 0xe9, 0x42, 0xef, 0xbd, 0x2a, 0xe4, 0x40, 0x97, 0xb3, }; static const unsigned char xdh_wei448_2879_sharedsecret[] = { 0x1f, 0x6a, 0x76, 0xd8, 0x38, 0x73, 0xcf, 0xb8, 0x79, 0xdd, 0x85, 0xc7, 0x05, 0x54, 0x65, 0x8b, 0xbc, 0x6f, 0xe4, 0x23, 0x4e, 0x33, 0x80, 0x75, 0x5c, 0xe2, 0xb2, 0xa4, 0x57, 0x56, 0x83, 0x61, 0x86, 0x86, 0xab, 0x49, 0x4a, 0xc5, 0x58, 0xfa, 0x7a, 0xf9, 0xe2, 0xb7, 0x23, 0xde, 0xe9, 0xcf, 0x78, 0x3f, 0x7a, 0x7f, 0xb1, 0x7c, 0x8a, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_2879 = { .name = "xdh_wei448_2879", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2879_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2879_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2879_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2879_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 296 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2880 for XDH, tcId is 297 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2880_peerpubkey[] = { 0x6c, 0x6f, 0x67, 0x67, 0x2c, 0x21, 0xe1, 0xce, 0x57, 0x4c, 0xf5, 0x7e, 0xb7, 0x59, 0x67, 0x0a, 0xc8, 0x9a, 0x70, 0xa8, 0xcf, 0x5b, 0x2f, 0xd6, 0x07, 0x52, 0x12, 0x2e, 0x78, 0x98, 0xd9, 0x14, 0x0f, 0x80, 0xa5, 0x0c, 0x48, 0x8a, 0x4d, 0xe4, 0x75, 0xd5, 0x63, 0xc9, 0x3c, 0x47, 0x93, 0x18, 0x26, 0xde, 0xef, 0x68, 0xcf, 0x68, 0xd5, 0x5d, }; static const unsigned char xdh_wei448_2880_ourpubkey[] = { 0xab, 0x30, 0x04, 0x88, 0xca, 0x37, 0x93, 0x3e, 0xe0, 0x67, 0x75, 0x41, 0x23, 0x90, 0x81, 0x86, 0x50, 0x7a, 0xeb, 0xb4, 0xac, 0x43, 0x86, 0xeb, 0x2b, 0xab, 0x5a, 0x55, 0x28, 0xa9, 0x54, 0xc3, 0x03, 0x82, 0x52, 0xdd, 0x78, 0x04, 0x3e, 0xad, 0xee, 0x39, 0x5c, 0xcf, 0x9d, 0x6d, 0xb4, 0x27, 0x22, 0xc2, 0xce, 0x05, 0x64, 0x26, 0xa3, 0xa5, }; static const unsigned char xdh_wei448_2880_privkey[] = { 0x50, 0x24, 0x6f, 0xb7, 0xc5, 0xc6, 0xd1, 0xfe, 0x57, 0x89, 0xd1, 0x21, 0x20, 0x6c, 0x0e, 0xfe, 0x5e, 0x55, 0xf3, 0x01, 0x3a, 0x3f, 0x58, 0xde, 0xf7, 0x7e, 0x93, 0xc6, 0x5b, 0x53, 0xdf, 0xa3, 0x25, 0x1a, 0x4c, 0x8e, 0xb6, 0x97, 0x6d, 0xc1, 0x82, 0xaf, 0x2a, 0x18, 0x64, 0x11, 0xaa, 0xca, 0x3a, 0x87, 0x09, 0xc3, 0x8e, 0xf9, 0x03, 0xb0, }; static const unsigned char xdh_wei448_2880_sharedsecret[] = { 0xe2, 0xd0, 0x4a, 0xf5, 0x98, 0xc7, 0xa0, 0x89, 0xb8, 0xac, 0x47, 0x55, 0xee, 0x0e, 0x9a, 0x62, 0x4e, 0xdf, 0xe1, 0x86, 0x66, 0xa6, 0x27, 0xde, 0xff, 0xba, 0xcb, 0xab, 0x67, 0x7c, 0xc8, 0xef, 0x4d, 0x84, 0xf2, 0x00, 0xb4, 0x97, 0xc5, 0x28, 0xd4, 0x64, 0xda, 0xa1, 0x1f, 0x61, 0x5b, 0xbd, 0x19, 0x1f, 0x44, 0x38, 0x2b, 0xb3, 0x8d, 0x5e, }; static const wycheproof_xdh_test xdh_wei448_2880 = { .name = "xdh_wei448_2880", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2880_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2880_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2880_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2880_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 297 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2881 for XDH, tcId is 298 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2881_peerpubkey[] = { 0x12, 0xe9, 0xbd, 0xc5, 0xee, 0xa1, 0x8e, 0xcd, 0x03, 0xd9, 0x90, 0x45, 0xae, 0xc4, 0x4b, 0xd3, 0x33, 0x29, 0x9e, 0x03, 0x08, 0x2f, 0x9f, 0xc8, 0x6b, 0x99, 0x7e, 0x1d, 0x21, 0x60, 0x13, 0xa3, 0x5f, 0x6a, 0x80, 0xf9, 0x67, 0xfe, 0x7a, 0x41, 0x71, 0xbe, 0x21, 0x56, 0x31, 0xe4, 0x07, 0x6c, 0x2c, 0x36, 0xc5, 0x34, 0x61, 0x8e, 0xce, 0x9a, }; static const unsigned char xdh_wei448_2881_ourpubkey[] = { 0xec, 0x0a, 0x7f, 0xa2, 0xff, 0x75, 0x50, 0x27, 0xf6, 0xcb, 0x07, 0x54, 0x7f, 0x22, 0x0c, 0x6e, 0x0f, 0x87, 0x88, 0xc0, 0xa6, 0x4c, 0xe5, 0x36, 0x09, 0x1e, 0xa2, 0xcb, 0x32, 0x3c, 0x39, 0x41, 0x42, 0xb5, 0x74, 0x89, 0xf5, 0x32, 0x8e, 0xe7, 0x9e, 0xe4, 0x59, 0x72, 0xb4, 0x9a, 0xf3, 0x91, 0xe6, 0x54, 0x4d, 0xad, 0x6a, 0xcc, 0x01, 0x45, }; static const unsigned char xdh_wei448_2881_privkey[] = { 0x28, 0x8f, 0x40, 0x6a, 0x70, 0x35, 0x8c, 0x9a, 0xaf, 0xc8, 0x96, 0x1a, 0x16, 0xc4, 0x27, 0x05, 0x83, 0x4e, 0xce, 0x4a, 0xa8, 0x2c, 0xe4, 0xa4, 0x4d, 0xac, 0x53, 0x32, 0x52, 0x69, 0x35, 0x30, 0x8a, 0x5f, 0x79, 0x36, 0x96, 0x9a, 0xc9, 0xb1, 0xb2, 0x9b, 0x4b, 0x53, 0x90, 0x17, 0x67, 0xc8, 0x7f, 0xa8, 0xda, 0x94, 0xc9, 0xce, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_2881_sharedsecret[] = { 0xb3, 0x69, 0x7a, 0x12, 0xa9, 0x9e, 0xb9, 0x10, 0x01, 0x95, 0x08, 0x96, 0xeb, 0xd1, 0x77, 0xc2, 0x87, 0xe6, 0x6c, 0xc1, 0xa4, 0x52, 0x56, 0xe0, 0x0d, 0x0d, 0xec, 0xf2, 0x6b, 0x27, 0x76, 0xd9, 0x40, 0xd6, 0x1e, 0xaf, 0xd5, 0x3b, 0x91, 0x37, 0x82, 0xda, 0xc6, 0x85, 0xf9, 0x06, 0xa5, 0x15, 0xa0, 0x82, 0xa5, 0x95, 0x68, 0x0c, 0xf0, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2881 = { .name = "xdh_wei448_2881", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2881_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2881_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2881_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2881_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 298 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2882 for XDH, tcId is 299 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2882_peerpubkey[] = { 0x3b, 0x84, 0x3f, 0x59, 0x14, 0x65, 0x4a, 0xbc, 0x39, 0xdc, 0x97, 0x5f, 0x24, 0x24, 0x53, 0x8d, 0x59, 0xba, 0xa1, 0x3b, 0x7e, 0xc4, 0x56, 0x1e, 0xcf, 0xfa, 0x41, 0x28, 0xe6, 0x3f, 0xb4, 0xc0, 0x59, 0xbc, 0xaf, 0x6d, 0x19, 0x20, 0x3d, 0xa7, 0x05, 0x48, 0x71, 0x87, 0xda, 0xc8, 0x67, 0x88, 0x1b, 0x12, 0x09, 0x6a, 0xd1, 0xaa, 0xbd, 0xbc, }; static const unsigned char xdh_wei448_2882_ourpubkey[] = { 0xeb, 0x9e, 0x17, 0xe8, 0xdc, 0x2c, 0x79, 0x01, 0x6b, 0xad, 0x0d, 0x60, 0xfb, 0xb1, 0xef, 0xd9, 0x67, 0xc0, 0xab, 0x62, 0xa2, 0x17, 0xea, 0xc0, 0x6e, 0xb6, 0xe2, 0xf9, 0x72, 0x43, 0x46, 0x96, 0x59, 0x0c, 0x5a, 0xce, 0x7c, 0x7d, 0xab, 0x29, 0x57, 0x56, 0x09, 0x2b, 0x8f, 0xee, 0x68, 0x80, 0xab, 0xfa, 0xcc, 0xcd, 0x91, 0xda, 0xa2, 0xe5, }; static const unsigned char xdh_wei448_2882_privkey[] = { 0xd0, 0x4f, 0x7f, 0xcd, 0xba, 0xc2, 0xd5, 0xe0, 0x3b, 0x79, 0x82, 0xef, 0x3e, 0xe9, 0x88, 0x9d, 0x38, 0x20, 0x79, 0xdd, 0x00, 0x62, 0xe2, 0x9d, 0xc2, 0x79, 0xc0, 0x9d, 0xe8, 0xbd, 0x00, 0x67, 0xcb, 0xe6, 0x75, 0x8f, 0x28, 0x21, 0xa6, 0x24, 0x9d, 0x0c, 0xb3, 0xde, 0x45, 0x81, 0x5e, 0x4c, 0x16, 0x17, 0x98, 0x25, 0x86, 0x19, 0xac, 0xa4, }; static const unsigned char xdh_wei448_2882_sharedsecret[] = { 0x6b, 0xc9, 0xc9, 0x75, 0x4f, 0x0b, 0xd8, 0x38, 0x4c, 0xfc, 0x07, 0x2b, 0x3a, 0xb3, 0xd4, 0x88, 0xb7, 0x4e, 0xc1, 0x42, 0xbe, 0x9f, 0x01, 0x5e, 0xe9, 0x26, 0xe7, 0x46, 0xb9, 0x58, 0x61, 0x2f, 0x32, 0xa9, 0x23, 0xf3, 0x5d, 0x9d, 0xfe, 0x6b, 0x9f, 0x4b, 0x75, 0x12, 0xef, 0x44, 0xab, 0x95, 0x36, 0x05, 0xd7, 0xaa, 0x21, 0xf8, 0x2f, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_2882 = { .name = "xdh_wei448_2882", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2882_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2882_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2882_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2882_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 299 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2883 for XDH, tcId is 300 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2883_peerpubkey[] = { 0xc9, 0x8e, 0x2f, 0x4d, 0xf8, 0x5f, 0x68, 0x61, 0x4b, 0xbb, 0xc4, 0x76, 0x96, 0xd9, 0x18, 0xd0, 0x46, 0xde, 0x36, 0xb5, 0xee, 0xd7, 0xb8, 0xfe, 0xe1, 0x14, 0x40, 0xad, 0x1c, 0x7d, 0x9f, 0x65, 0x0d, 0x9a, 0x0c, 0x8a, 0xce, 0x00, 0x8a, 0xa5, 0xef, 0xf6, 0x7a, 0xc8, 0xae, 0x77, 0x74, 0x90, 0x0e, 0x6e, 0x2c, 0x18, 0x73, 0xa3, 0x0c, 0xbd, }; static const unsigned char xdh_wei448_2883_ourpubkey[] = { 0x10, 0xa4, 0xe1, 0x7e, 0x91, 0xb2, 0x7d, 0xae, 0xc2, 0x79, 0x6a, 0x10, 0xbe, 0xf4, 0xd1, 0x3b, 0x3a, 0x5b, 0x70, 0xd3, 0x3a, 0x98, 0xbf, 0x6f, 0x0d, 0xec, 0x94, 0x31, 0x33, 0x9b, 0xab, 0xe1, 0x06, 0x08, 0xc8, 0x0e, 0xf9, 0x5a, 0x89, 0x7a, 0x20, 0x05, 0xef, 0x73, 0x98, 0x0f, 0x55, 0xa2, 0x65, 0x4b, 0x75, 0xde, 0x96, 0xdb, 0xb8, 0xef, }; static const unsigned char xdh_wei448_2883_privkey[] = { 0x4c, 0x80, 0x8a, 0x20, 0x52, 0xa6, 0x75, 0xfb, 0x0f, 0x76, 0xfb, 0x84, 0x98, 0xa5, 0xf4, 0x79, 0x76, 0x9b, 0xdd, 0x0b, 0xbb, 0x5f, 0xdf, 0x27, 0x0c, 0x03, 0x82, 0xf1, 0xd9, 0x7d, 0x00, 0xe1, 0xcb, 0x12, 0x29, 0x07, 0xd0, 0xc1, 0x30, 0x91, 0xaa, 0xde, 0x88, 0x26, 0x64, 0xb3, 0xc8, 0xc4, 0xb9, 0xba, 0x15, 0x33, 0xfd, 0x6b, 0x6c, 0xb6, }; static const unsigned char xdh_wei448_2883_sharedsecret[] = { 0x97, 0x5c, 0x8d, 0xdc, 0x5e, 0x63, 0x77, 0xf2, 0x84, 0x2c, 0xc4, 0x8b, 0xe6, 0xfc, 0x76, 0x7f, 0x7c, 0x33, 0xbc, 0x21, 0xd0, 0xf1, 0x47, 0x26, 0xd6, 0xc5, 0x00, 0x57, 0xb1, 0xf7, 0x3c, 0xe2, 0x5a, 0x87, 0x08, 0xe9, 0x60, 0xed, 0x45, 0xe1, 0x62, 0x04, 0xa2, 0x81, 0x56, 0x7a, 0xd1, 0xf4, 0xc3, 0xa9, 0x0e, 0x3e, 0x43, 0x4b, 0x5e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_2883 = { .name = "xdh_wei448_2883", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2883_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2883_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2883_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2883_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 300 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2884 for XDH, tcId is 301 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2884_peerpubkey[] = { 0x9d, 0xd0, 0xc3, 0x0d, 0xe8, 0x7d, 0x1d, 0x7c, 0x52, 0x35, 0x11, 0x8f, 0x68, 0x67, 0x11, 0x34, 0x28, 0xae, 0x82, 0x82, 0x83, 0x9f, 0x75, 0x96, 0x83, 0xe6, 0x4e, 0xda, 0xba, 0x47, 0x80, 0x8b, 0xc8, 0xce, 0x16, 0x64, 0xff, 0xdf, 0x70, 0xa8, 0x47, 0x1d, 0x7b, 0xbf, 0xd1, 0xe0, 0xda, 0xca, 0x19, 0x72, 0xc3, 0xa9, 0x11, 0x8c, 0x5a, 0x04, }; static const unsigned char xdh_wei448_2884_ourpubkey[] = { 0x42, 0xfc, 0xc4, 0x09, 0x81, 0x0d, 0xec, 0x40, 0xb0, 0xa5, 0x74, 0xfc, 0x59, 0x3c, 0xb1, 0xbb, 0x38, 0xca, 0xc9, 0x67, 0x9c, 0x60, 0xdf, 0xe2, 0xd9, 0x73, 0x8e, 0xdd, 0x3d, 0xea, 0x7e, 0x89, 0x7b, 0xd4, 0xf1, 0x6a, 0x82, 0x26, 0x82, 0x44, 0x70, 0x1e, 0x48, 0xe4, 0x77, 0xc3, 0x83, 0x77, 0x55, 0x0c, 0xcf, 0x95, 0xce, 0xd8, 0x55, 0x86, }; static const unsigned char xdh_wei448_2884_privkey[] = { 0x30, 0xa4, 0x2f, 0x76, 0x8a, 0x8e, 0x77, 0x95, 0xf0, 0x51, 0x38, 0x2e, 0x22, 0xb0, 0xc3, 0x13, 0x42, 0xf6, 0x3c, 0x3b, 0xf0, 0x20, 0x42, 0x66, 0x13, 0xaf, 0xd2, 0x09, 0xdd, 0xb0, 0x97, 0x45, 0xc6, 0xc1, 0x67, 0x71, 0x26, 0xcc, 0x12, 0x73, 0xd3, 0x4d, 0xc5, 0x71, 0x50, 0xf2, 0xd5, 0xdc, 0x15, 0x5b, 0xbe, 0x62, 0x66, 0x08, 0xc6, 0xa8, }; static const unsigned char xdh_wei448_2884_sharedsecret[] = { 0x1f, 0x14, 0x34, 0x45, 0x74, 0x41, 0xd0, 0xda, 0xbe, 0x47, 0x35, 0xe7, 0xf9, 0x49, 0x93, 0x33, 0x00, 0xc2, 0x20, 0xe9, 0x5d, 0x94, 0xaa, 0xb1, 0xeb, 0xd3, 0xee, 0xf6, 0x0b, 0xcf, 0xdb, 0x3d, 0x5c, 0xc6, 0xd9, 0xaf, 0x29, 0xad, 0xe1, 0x21, 0xf0, 0x0b, 0x03, 0x41, 0x7f, 0xb4, 0xab, 0x31, 0xe0, 0x5e, 0x74, 0xa0, 0x7b, 0xc3, 0x72, 0xef, }; static const wycheproof_xdh_test xdh_wei448_2884 = { .name = "xdh_wei448_2884", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2884_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2884_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2884_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2884_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 301 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2885 for XDH, tcId is 302 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2885_peerpubkey[] = { 0xa3, 0x3e, 0x95, 0x47, 0xb1, 0x00, 0xfc, 0x26, 0x3e, 0x53, 0x56, 0x4f, 0x15, 0x6c, 0xc4, 0xed, 0x2f, 0x2d, 0x60, 0xec, 0xdf, 0xc3, 0x65, 0x28, 0x5a, 0xbf, 0x84, 0xf3, 0xc3, 0x67, 0xb6, 0xb4, 0xa3, 0x04, 0x8b, 0x23, 0x26, 0x01, 0x35, 0x93, 0xae, 0x14, 0x67, 0x97, 0x3a, 0x8e, 0x25, 0xad, 0x66, 0xef, 0xef, 0xf4, 0x82, 0x88, 0x0d, 0x0c, }; static const unsigned char xdh_wei448_2885_ourpubkey[] = { 0x32, 0xee, 0x52, 0xe7, 0x55, 0x07, 0x66, 0x46, 0xe2, 0x20, 0xb2, 0x9b, 0x5f, 0x61, 0x7d, 0x59, 0x52, 0x06, 0x31, 0xa8, 0xa9, 0x6b, 0xae, 0x71, 0x72, 0xa0, 0x77, 0xe5, 0x8d, 0x0a, 0xbd, 0x77, 0xd3, 0x83, 0x66, 0x25, 0x02, 0xce, 0x60, 0x3d, 0x5a, 0xc5, 0xe2, 0xa9, 0x19, 0x44, 0x8a, 0x86, 0x35, 0xfe, 0x0e, 0x7a, 0xe6, 0x69, 0x35, 0x5d, }; static const unsigned char xdh_wei448_2885_privkey[] = { 0xa4, 0x14, 0x23, 0x8d, 0xc7, 0xbf, 0x4c, 0xea, 0xf9, 0x36, 0x6d, 0x1c, 0xb2, 0xcf, 0xb8, 0x0b, 0xc2, 0x72, 0xb8, 0x2b, 0x12, 0x2e, 0x36, 0xfd, 0x51, 0x19, 0xfc, 0x53, 0xd9, 0x9b, 0x34, 0x61, 0xfe, 0x35, 0xfa, 0x49, 0xe8, 0xf9, 0x84, 0xa9, 0xb9, 0xb5, 0xf4, 0xd2, 0x13, 0x86, 0x8f, 0xdd, 0x1f, 0xaf, 0x8b, 0xc0, 0x3f, 0x94, 0x2e, 0xb7, }; static const unsigned char xdh_wei448_2885_sharedsecret[] = { 0xb3, 0xd2, 0x72, 0x1f, 0x00, 0xbe, 0x29, 0xc2, 0x08, 0x3a, 0x4d, 0xfe, 0xef, 0x8e, 0x80, 0x60, 0xc2, 0x96, 0x39, 0xac, 0x60, 0xe4, 0x12, 0x2f, 0xb9, 0x54, 0xe1, 0xcc, 0x2e, 0xa2, 0x67, 0x65, 0x45, 0x8e, 0xfa, 0xd4, 0x76, 0x68, 0xc1, 0x9c, 0x70, 0xa5, 0x1c, 0xa0, 0xd7, 0x85, 0x74, 0xb5, 0xb2, 0xfe, 0x46, 0xd8, 0xc5, 0x7f, 0x51, 0x03, }; static const wycheproof_xdh_test xdh_wei448_2885 = { .name = "xdh_wei448_2885", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2885_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2885_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2885_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2885_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 302 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2886 for XDH, tcId is 303 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2886_peerpubkey[] = { 0xe9, 0x9e, 0xc1, 0x56, 0x66, 0x55, 0x75, 0xbb, 0x7e, 0x29, 0x9a, 0x44, 0x4b, 0x2b, 0x70, 0x2b, 0x66, 0x01, 0xc8, 0xc4, 0x62, 0xad, 0x93, 0x9e, 0x58, 0xe0, 0xe2, 0x7f, 0x0b, 0xa3, 0x9c, 0x6c, 0x69, 0x5a, 0x14, 0xb7, 0xc5, 0xac, 0x55, 0xb6, 0x46, 0x30, 0x37, 0x34, 0x37, 0xf6, 0xea, 0x9b, 0x86, 0x91, 0x13, 0x2f, 0x10, 0xdc, 0xc4, 0x29, }; static const unsigned char xdh_wei448_2886_ourpubkey[] = { 0xf4, 0x16, 0xa8, 0x6f, 0xc8, 0xe0, 0x94, 0xd0, 0x05, 0xc8, 0xba, 0xf7, 0x9f, 0xc1, 0xdc, 0x42, 0x63, 0x26, 0xa9, 0x21, 0xb3, 0x86, 0x60, 0x5d, 0x5a, 0x2c, 0xbf, 0xe9, 0x3c, 0x1e, 0xfc, 0xdd, 0xfc, 0x73, 0x25, 0x16, 0x82, 0xe5, 0xd1, 0x61, 0xb8, 0xb8, 0xdd, 0x49, 0xab, 0x29, 0xb2, 0x7f, 0x20, 0xc1, 0x40, 0x78, 0xc9, 0x26, 0x74, 0xd0, }; static const unsigned char xdh_wei448_2886_privkey[] = { 0x24, 0xbb, 0x5f, 0x75, 0x0e, 0x52, 0x52, 0xa1, 0xd6, 0x64, 0xf9, 0xe1, 0x66, 0xc5, 0x29, 0xf1, 0xe1, 0xc8, 0xcf, 0x2d, 0x29, 0x65, 0x57, 0xf4, 0xf9, 0xe8, 0xca, 0xbb, 0x9e, 0xd4, 0x8a, 0x57, 0xbb, 0xc0, 0x7d, 0xd8, 0x6d, 0x63, 0x94, 0x32, 0xda, 0x1c, 0xab, 0xd0, 0x98, 0xcc, 0x61, 0x08, 0x45, 0x16, 0x22, 0x5f, 0xc5, 0x21, 0x63, 0xb5, }; static const unsigned char xdh_wei448_2886_sharedsecret[] = { 0x32, 0xb1, 0x16, 0xd2, 0xd8, 0x76, 0xca, 0x11, 0xa1, 0x85, 0x8f, 0x87, 0x01, 0xb2, 0xf0, 0xcc, 0xdc, 0xac, 0x45, 0xe1, 0x23, 0xf4, 0x6c, 0xf1, 0xc2, 0x54, 0x4e, 0x0d, 0xe5, 0x74, 0x1c, 0x06, 0x10, 0xfc, 0xce, 0xe9, 0x59, 0x26, 0x1d, 0x6e, 0x85, 0x58, 0xa0, 0xb0, 0xa5, 0xef, 0x0d, 0x0a, 0x42, 0xb0, 0x0b, 0xd9, 0x5e, 0x24, 0x5c, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2886 = { .name = "xdh_wei448_2886", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2886_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2886_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2886_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2886_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 303 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2887 for XDH, tcId is 304 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2887_peerpubkey[] = { 0x61, 0x34, 0x2d, 0x90, 0x2b, 0x5a, 0x65, 0x98, 0xfa, 0xba, 0x1f, 0x83, 0xb9, 0x22, 0xca, 0x19, 0x07, 0x1c, 0xfc, 0x82, 0x55, 0x63, 0x52, 0xc8, 0x8d, 0x29, 0xba, 0x35, 0x09, 0x0e, 0x39, 0x5e, 0x9b, 0xeb, 0xbd, 0x8d, 0xab, 0x83, 0xe9, 0x83, 0x54, 0x9f, 0xcf, 0xc3, 0x32, 0x12, 0x49, 0x70, 0x94, 0x48, 0x6a, 0xdd, 0xac, 0xd6, 0x0d, 0x34, }; static const unsigned char xdh_wei448_2887_ourpubkey[] = { 0xef, 0xd6, 0xdf, 0x53, 0x84, 0x20, 0x54, 0x38, 0x05, 0x00, 0x32, 0x8a, 0x90, 0x61, 0x97, 0x75, 0x5f, 0xcd, 0x52, 0x85, 0xdb, 0x06, 0xfc, 0xeb, 0x40, 0x56, 0x3e, 0x63, 0x92, 0x90, 0x45, 0x2f, 0xd8, 0x86, 0xf5, 0xc6, 0x5c, 0x6f, 0xb3, 0x90, 0x93, 0x39, 0x18, 0xcf, 0x7b, 0x2c, 0x3b, 0x3c, 0xe2, 0x70, 0x5d, 0x99, 0x31, 0xda, 0x14, 0x03, }; static const unsigned char xdh_wei448_2887_privkey[] = { 0x78, 0xb9, 0xbb, 0x7c, 0xe3, 0xdf, 0xe8, 0x71, 0xe7, 0x59, 0xfe, 0xbb, 0x07, 0xad, 0xc7, 0x8a, 0x7c, 0x69, 0x17, 0xd9, 0x22, 0x4b, 0x19, 0xb3, 0xda, 0x1f, 0x28, 0xa5, 0x78, 0x38, 0x85, 0x12, 0x38, 0xbc, 0x22, 0xd4, 0x66, 0x3b, 0x3d, 0x7e, 0x7f, 0x4f, 0xcd, 0x0c, 0x62, 0xf9, 0xcb, 0xc3, 0x80, 0x6f, 0x7b, 0x77, 0xaa, 0x20, 0x20, 0xbd, }; static const unsigned char xdh_wei448_2887_sharedsecret[] = { 0xc3, 0x99, 0xb4, 0x51, 0xd4, 0x72, 0x4d, 0xa2, 0x61, 0x83, 0x1c, 0x38, 0x62, 0x5a, 0x74, 0xcd, 0x58, 0x05, 0x8f, 0x20, 0x45, 0x1b, 0x52, 0x7f, 0xcb, 0xc3, 0xe5, 0x57, 0x60, 0x3e, 0x42, 0x9c, 0x47, 0x81, 0xdb, 0x0a, 0x52, 0x39, 0x71, 0xdf, 0x1d, 0x60, 0xe0, 0x4a, 0x0d, 0xed, 0x7e, 0xf9, 0x11, 0xc5, 0xd1, 0x28, 0x9f, 0x89, 0x03, 0x85, }; static const wycheproof_xdh_test xdh_wei448_2887 = { .name = "xdh_wei448_2887", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2887_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2887_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2887_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2887_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 304 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2888 for XDH, tcId is 305 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2888_peerpubkey[] = { 0x67, 0x56, 0xc9, 0x7a, 0xa9, 0x9f, 0x8b, 0xdd, 0x00, 0x38, 0x51, 0xf7, 0x78, 0x72, 0xca, 0x51, 0x4e, 0xcf, 0x7c, 0xe6, 0xe4, 0xed, 0xf5, 0x1d, 0x3d, 0x41, 0xb3, 0xc5, 0x06, 0xa3, 0x4d, 0x2d, 0xac, 0x32, 0xbc, 0x8e, 0x5d, 0x12, 0xc5, 0xd2, 0x9e, 0x47, 0xa6, 0x39, 0xf2, 0xa1, 0xe3, 0x23, 0x55, 0xbb, 0x9b, 0x75, 0xb7, 0x1f, 0x3c, 0x85, }; static const unsigned char xdh_wei448_2888_ourpubkey[] = { 0xab, 0x17, 0x6b, 0x20, 0x30, 0x8c, 0xf2, 0xf0, 0xa3, 0xde, 0xa4, 0x84, 0x7c, 0x65, 0x62, 0x67, 0x8e, 0x19, 0x74, 0xe7, 0xe1, 0x1d, 0xe0, 0x0a, 0x7a, 0x90, 0xed, 0x39, 0xf6, 0x1c, 0x59, 0xa9, 0xc2, 0xa6, 0xf9, 0xe4, 0xd1, 0xd9, 0x56, 0x97, 0x37, 0x33, 0x67, 0x21, 0xc7, 0x7c, 0xe1, 0xdf, 0xf5, 0x1d, 0xe8, 0xf4, 0x29, 0xca, 0x1a, 0x3b, }; static const unsigned char xdh_wei448_2888_privkey[] = { 0x60, 0x22, 0x22, 0x56, 0xc0, 0x60, 0xb2, 0x2f, 0x43, 0x52, 0xda, 0x8b, 0xa8, 0x5c, 0xcc, 0x99, 0x11, 0x49, 0xa9, 0xdc, 0x8c, 0xf1, 0xb2, 0x5d, 0xc8, 0x0a, 0x8a, 0xb9, 0x81, 0x5c, 0x7e, 0x59, 0x5c, 0xbc, 0x89, 0x33, 0x4a, 0x81, 0x8a, 0x00, 0x98, 0xa7, 0xdb, 0x69, 0x8a, 0xc2, 0x40, 0x08, 0x09, 0x31, 0xaa, 0xea, 0x13, 0x7c, 0xd8, 0xb7, }; static const unsigned char xdh_wei448_2888_sharedsecret[] = { 0x0f, 0x04, 0x25, 0xfa, 0x3f, 0xbf, 0x31, 0xe0, 0xd5, 0xe7, 0xbb, 0x4c, 0x2c, 0xcb, 0xa8, 0xb3, 0x0a, 0x40, 0xde, 0x39, 0xaa, 0x0c, 0x87, 0xdb, 0xed, 0xa8, 0x82, 0x99, 0x48, 0x83, 0x0f, 0x39, 0x92, 0x6e, 0x80, 0x1d, 0xe3, 0xad, 0xe2, 0x05, 0x8d, 0xa9, 0xa0, 0x5d, 0xb8, 0x08, 0xea, 0x99, 0xb7, 0xeb, 0xe3, 0xe3, 0x28, 0x54, 0x47, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_2888 = { .name = "xdh_wei448_2888", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2888_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2888_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2888_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2888_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 305 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2889 for XDH, tcId is 306 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2889_peerpubkey[] = { 0x37, 0x8c, 0xbd, 0x8e, 0xeb, 0x6c, 0x8e, 0x5a, 0x96, 0x7a, 0x76, 0xfb, 0x31, 0x1f, 0x38, 0xe6, 0x18, 0xec, 0x52, 0x66, 0x0d, 0x06, 0x02, 0x20, 0xba, 0xbc, 0x7e, 0x9a, 0xdf, 0x93, 0xbe, 0x90, 0xe9, 0xd5, 0x4c, 0x3f, 0x77, 0x34, 0x65, 0x04, 0x4b, 0xfc, 0x95, 0xe2, 0xeb, 0x9a, 0xde, 0x69, 0x5b, 0x0d, 0x91, 0x34, 0xef, 0xa3, 0xc2, 0x0f, }; static const unsigned char xdh_wei448_2889_ourpubkey[] = { 0x58, 0xd7, 0x3a, 0x3c, 0x73, 0x80, 0xea, 0xec, 0xc2, 0xe8, 0x5c, 0xe0, 0x15, 0x5e, 0x3e, 0xad, 0xb1, 0xf3, 0x08, 0xc9, 0x7e, 0x11, 0xf5, 0x62, 0x88, 0x6f, 0x26, 0xb4, 0x2b, 0x3e, 0xa0, 0x09, 0xf6, 0x66, 0x16, 0x99, 0xee, 0x72, 0x39, 0xf3, 0xd3, 0xa1, 0x69, 0xc7, 0xf1, 0x69, 0xe9, 0xd6, 0x69, 0x9e, 0x94, 0x56, 0x4e, 0x51, 0xdb, 0x4a, }; static const unsigned char xdh_wei448_2889_privkey[] = { 0xd4, 0xb9, 0x21, 0x81, 0x9f, 0x2e, 0x67, 0x46, 0x0b, 0x2d, 0x31, 0x2a, 0x8a, 0x96, 0x2a, 0xeb, 0x3d, 0x4c, 0x7e, 0x99, 0x49, 0x04, 0xb1, 0x43, 0x6c, 0xd1, 0xaf, 0x83, 0x3f, 0x5e, 0x99, 0x97, 0xc0, 0xdc, 0xa1, 0xd7, 0x02, 0xd2, 0xa8, 0x59, 0x7a, 0x3a, 0xfb, 0xb2, 0x3d, 0x83, 0x8f, 0x38, 0x6e, 0xcd, 0xbf, 0x97, 0xf3, 0x8e, 0xd0, 0xa5, }; static const unsigned char xdh_wei448_2889_sharedsecret[] = { 0xfe, 0xa7, 0x49, 0xf4, 0xb7, 0xaf, 0x95, 0x46, 0x3b, 0x25, 0x23, 0x82, 0x69, 0xf1, 0x27, 0x9d, 0x19, 0xba, 0x6d, 0x4e, 0x09, 0xf3, 0x64, 0x59, 0xc2, 0x43, 0xf8, 0x68, 0x8d, 0x2a, 0x38, 0xba, 0x4c, 0xd2, 0xba, 0xab, 0x32, 0xb4, 0x37, 0xdd, 0x1f, 0x74, 0x5a, 0xbc, 0xd4, 0x77, 0xe3, 0x47, 0xd3, 0xda, 0xf4, 0x03, 0x12, 0xfd, 0x0c, 0x57, }; static const wycheproof_xdh_test xdh_wei448_2889 = { .name = "xdh_wei448_2889", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2889_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2889_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2889_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2889_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 306 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2890 for XDH, tcId is 307 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2890_peerpubkey[] = { 0x72, 0x9a, 0x92, 0x3f, 0xa0, 0x7c, 0x83, 0xb1, 0x8c, 0x62, 0x2b, 0x9f, 0x9f, 0x86, 0x9a, 0x2d, 0xbf, 0xd3, 0x46, 0x0a, 0x1c, 0xa3, 0x4a, 0x07, 0xa9, 0xb2, 0xdd, 0xd2, 0x55, 0xc0, 0x1c, 0xa8, 0x17, 0xa4, 0x75, 0xe4, 0xe4, 0x1b, 0xdd, 0xe0, 0x6e, 0x21, 0xc1, 0x1a, 0x73, 0xb7, 0x74, 0x0d, 0xc3, 0xbe, 0xe0, 0x07, 0x6e, 0x41, 0x58, 0x21, }; static const unsigned char xdh_wei448_2890_ourpubkey[] = { 0xbf, 0x9f, 0x1f, 0x4d, 0x8e, 0x88, 0x61, 0xbd, 0xfa, 0x76, 0x10, 0xb8, 0xb8, 0xcd, 0xfe, 0x9f, 0x26, 0x84, 0x3b, 0xc1, 0xb0, 0x57, 0x9d, 0x35, 0x8b, 0xb3, 0x59, 0xc9, 0x05, 0x93, 0x20, 0x72, 0xe5, 0xce, 0x55, 0x9d, 0xa2, 0xba, 0x5c, 0xb2, 0xec, 0x79, 0x73, 0x18, 0x0f, 0x0a, 0xeb, 0x38, 0x23, 0x5b, 0xf6, 0x6d, 0xcf, 0x79, 0x4e, 0x47, }; static const unsigned char xdh_wei448_2890_privkey[] = { 0xe0, 0xaa, 0xa7, 0xb6, 0x25, 0x9c, 0x53, 0xaa, 0x11, 0xe4, 0xb2, 0xf2, 0xb2, 0xb7, 0x8b, 0x8a, 0xd3, 0x6a, 0xf7, 0x8f, 0xb4, 0xf7, 0xb8, 0xaa, 0x51, 0x58, 0xf7, 0x7d, 0x76, 0x96, 0xf1, 0xf0, 0x1b, 0x51, 0x84, 0x95, 0x18, 0xa5, 0xc7, 0x98, 0xb4, 0x84, 0x79, 0x81, 0x6f, 0x88, 0x44, 0xce, 0xd2, 0xad, 0x57, 0x68, 0xae, 0xce, 0xc6, 0xbb, }; static const unsigned char xdh_wei448_2890_sharedsecret[] = { 0xd4, 0x0b, 0xc5, 0x54, 0xaf, 0x8c, 0x4a, 0x13, 0x9f, 0xf8, 0xc5, 0xd4, 0x35, 0xe8, 0x92, 0x98, 0x3b, 0x5d, 0x79, 0x86, 0xb6, 0x7b, 0x60, 0x4d, 0xbd, 0xc6, 0x5b, 0x60, 0x52, 0x57, 0x00, 0xbe, 0x60, 0x10, 0xc6, 0x59, 0x48, 0x27, 0xd6, 0x47, 0x10, 0x78, 0x98, 0x2f, 0xd3, 0x83, 0x5a, 0x18, 0x43, 0xed, 0x28, 0xcf, 0x66, 0xb3, 0xc5, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_2890 = { .name = "xdh_wei448_2890", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2890_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2890_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2890_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2890_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 307 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2891 for XDH, tcId is 308 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2891_peerpubkey[] = { 0x17, 0x95, 0xd9, 0x34, 0x69, 0xd7, 0x04, 0x4a, 0xba, 0xdc, 0xa6, 0x04, 0xbb, 0x8b, 0x97, 0x21, 0x4e, 0x79, 0xa5, 0xbb, 0xb1, 0x4d, 0xc1, 0x2f, 0xa9, 0xc5, 0x6e, 0x30, 0x27, 0xe4, 0xe4, 0x64, 0xac, 0x99, 0x8a, 0xb8, 0xe0, 0xdb, 0xb1, 0x15, 0x19, 0x34, 0xad, 0x3c, 0x70, 0x98, 0x30, 0xae, 0x85, 0x61, 0xcf, 0x25, 0xc2, 0x2c, 0x02, 0xc1, }; static const unsigned char xdh_wei448_2891_ourpubkey[] = { 0x4a, 0xea, 0x78, 0xc5, 0x28, 0xa6, 0x67, 0xc5, 0xc2, 0xd9, 0x6f, 0xac, 0xf3, 0xd0, 0x23, 0x2c, 0xc8, 0xd3, 0xb2, 0xdb, 0x52, 0xfd, 0x43, 0x0b, 0xfb, 0x17, 0x55, 0x9c, 0x93, 0xd3, 0x0d, 0x60, 0x60, 0xb3, 0x55, 0x5d, 0xa2, 0xf5, 0x5f, 0x6c, 0xbe, 0x06, 0x36, 0x0a, 0x22, 0xd5, 0x81, 0x01, 0x6f, 0x51, 0x25, 0x35, 0x58, 0x32, 0xa5, 0x54, }; static const unsigned char xdh_wei448_2891_privkey[] = { 0x38, 0x6f, 0x45, 0x02, 0xaa, 0x94, 0xc2, 0x96, 0xec, 0xf0, 0xd4, 0xc2, 0x4d, 0x43, 0x33, 0x02, 0x88, 0x13, 0x58, 0x08, 0x31, 0x49, 0x4d, 0x43, 0xcb, 0xe0, 0x0a, 0x0f, 0xb2, 0xd8, 0x3e, 0x29, 0x6c, 0x97, 0x53, 0xa9, 0xb8, 0x80, 0x9b, 0xc8, 0x04, 0x21, 0xb5, 0xd9, 0x3e, 0xc9, 0x3e, 0x79, 0x4e, 0xe4, 0x12, 0xff, 0xac, 0xb8, 0x7c, 0xa5, }; static const unsigned char xdh_wei448_2891_sharedsecret[] = { 0xe5, 0x82, 0x50, 0x0f, 0xa1, 0x94, 0x30, 0xb1, 0x92, 0xcd, 0xa9, 0x9a, 0x08, 0x97, 0x18, 0xc9, 0x23, 0xcb, 0xd7, 0xe5, 0x4d, 0x5c, 0x19, 0x0c, 0x28, 0x54, 0x6f, 0x79, 0xf9, 0x65, 0xe8, 0x9d, 0x73, 0xf7, 0x2a, 0x4c, 0x16, 0x13, 0x62, 0x9e, 0x6c, 0x39, 0x06, 0x22, 0xae, 0x89, 0xf7, 0x07, 0xa6, 0x7b, 0x73, 0xd5, 0xb0, 0x9f, 0x9d, 0x9a, }; static const wycheproof_xdh_test xdh_wei448_2891 = { .name = "xdh_wei448_2891", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2891_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2891_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2891_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2891_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 308 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2892 for XDH, tcId is 309 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2892_peerpubkey[] = { 0xd5, 0x15, 0x03, 0x5b, 0x93, 0x52, 0x73, 0x8e, 0x6e, 0xe3, 0x6c, 0x8e, 0x2f, 0xcc, 0x99, 0x6e, 0x1c, 0xb4, 0x8c, 0x83, 0x68, 0xab, 0xe5, 0xb1, 0x29, 0xf4, 0x12, 0x63, 0x97, 0xf7, 0x33, 0x00, 0x3e, 0xb3, 0x69, 0xd7, 0x9f, 0x2e, 0xe1, 0x6c, 0xbd, 0xe9, 0x2a, 0xf4, 0xf8, 0xad, 0xc7, 0x1a, 0xa8, 0x95, 0xd0, 0x15, 0x22, 0xd7, 0xdb, 0xcd, }; static const unsigned char xdh_wei448_2892_ourpubkey[] = { 0xf3, 0x55, 0x8f, 0xa5, 0xb8, 0x9d, 0x71, 0x27, 0x23, 0x5b, 0x25, 0xb1, 0x6b, 0x15, 0xd5, 0xc2, 0xe7, 0x48, 0x64, 0xc8, 0x80, 0x54, 0x87, 0x74, 0x38, 0x61, 0x6d, 0xa7, 0xd3, 0x05, 0x68, 0x9d, 0xe8, 0xee, 0xd3, 0xd8, 0xb2, 0xfb, 0xf7, 0x1d, 0xf2, 0x49, 0x8e, 0xbb, 0x95, 0x80, 0x28, 0x87, 0x8c, 0xcf, 0x06, 0x0a, 0xe2, 0xe7, 0xba, 0x64, }; static const unsigned char xdh_wei448_2892_privkey[] = { 0x00, 0x61, 0xd8, 0x3e, 0xc2, 0x04, 0x5d, 0xc6, 0x89, 0xcb, 0x25, 0xd0, 0xe3, 0xf4, 0xb0, 0x4b, 0xc7, 0x4b, 0x9f, 0x19, 0x2b, 0x66, 0xaf, 0x3c, 0xb5, 0x0b, 0x02, 0xdc, 0xb0, 0x7a, 0x5e, 0x89, 0x4d, 0x10, 0x49, 0x78, 0x89, 0x73, 0x11, 0xaf, 0xe7, 0x86, 0xd9, 0xf5, 0x72, 0xd1, 0x20, 0x68, 0xee, 0x0c, 0x55, 0xf8, 0xae, 0xa7, 0x96, 0xad, }; static const unsigned char xdh_wei448_2892_sharedsecret[] = { 0xf7, 0x67, 0x3b, 0xa8, 0x35, 0x39, 0x1a, 0x22, 0x41, 0xad, 0x03, 0x3f, 0xb6, 0x43, 0x1e, 0xd3, 0xad, 0x34, 0x6e, 0x10, 0x10, 0x4e, 0x40, 0x45, 0xa7, 0x08, 0x52, 0xcc, 0xe3, 0xcc, 0x83, 0x44, 0x10, 0x45, 0xa8, 0xa7, 0xe0, 0x5b, 0xf0, 0x31, 0x35, 0x1b, 0x50, 0xe0, 0x2d, 0xb6, 0xe0, 0x86, 0xe1, 0xc4, 0x63, 0xcb, 0xf6, 0x16, 0x6d, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_2892 = { .name = "xdh_wei448_2892", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2892_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2892_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2892_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2892_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 309 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2893 for XDH, tcId is 310 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2893_peerpubkey[] = { 0xf4, 0xdb, 0xc2, 0x89, 0x83, 0xcf, 0xd8, 0x64, 0xa3, 0xd7, 0x52, 0xda, 0xe7, 0x42, 0x48, 0x4f, 0x7e, 0xcc, 0x55, 0xb5, 0xd3, 0xb4, 0xfc, 0x4b, 0x0f, 0x48, 0x4d, 0x64, 0x00, 0x56, 0x97, 0x7c, 0x87, 0x3c, 0x5c, 0xf0, 0x15, 0x34, 0x7b, 0xc1, 0xb0, 0xbf, 0xc9, 0x4c, 0x58, 0x97, 0xfa, 0x6e, 0xbb, 0xb6, 0xc1, 0x05, 0x50, 0x61, 0x10, 0xd7, }; static const unsigned char xdh_wei448_2893_ourpubkey[] = { 0xb5, 0x83, 0xb8, 0x08, 0xc7, 0xaa, 0x56, 0x94, 0xd1, 0x76, 0x38, 0x1c, 0xe0, 0x06, 0xc7, 0x07, 0xae, 0x75, 0x34, 0x07, 0xc0, 0x03, 0x92, 0x71, 0xd2, 0x34, 0x24, 0xda, 0x1f, 0x96, 0x83, 0x52, 0x46, 0x5e, 0x0b, 0x71, 0x69, 0x29, 0xad, 0xa9, 0x04, 0x65, 0xb7, 0x46, 0x1c, 0x48, 0xa4, 0x92, 0x7d, 0xb2, 0x55, 0xe8, 0x29, 0xe3, 0x4d, 0x74, }; static const unsigned char xdh_wei448_2893_privkey[] = { 0x30, 0x50, 0xe8, 0x52, 0xb4, 0x4e, 0x68, 0xc9, 0x87, 0xda, 0xd6, 0x8e, 0x51, 0x2d, 0xcb, 0xad, 0x7f, 0xdb, 0x99, 0x9d, 0x99, 0x2c, 0x2c, 0xcc, 0x2e, 0x3c, 0xcc, 0x23, 0x9d, 0xdf, 0x44, 0x17, 0x50, 0xea, 0x0b, 0x20, 0x5d, 0x67, 0x99, 0x42, 0x25, 0x67, 0xcf, 0xa3, 0x41, 0x5c, 0x5d, 0x2c, 0x05, 0x4e, 0x2c, 0x51, 0x32, 0xcd, 0xdc, 0xa8, }; static const unsigned char xdh_wei448_2893_sharedsecret[] = { 0xfc, 0x4d, 0x51, 0x4f, 0xa4, 0x1c, 0xe0, 0x1b, 0x8f, 0x75, 0x6b, 0xc5, 0x55, 0x9e, 0xb8, 0x5d, 0xc4, 0xaf, 0xa4, 0x86, 0xe5, 0xf7, 0x2c, 0x4c, 0x69, 0x5c, 0x6c, 0x87, 0xd8, 0x98, 0x13, 0xd0, 0x8e, 0x9f, 0xbe, 0x3c, 0xcc, 0x71, 0xd0, 0xe2, 0xb3, 0x94, 0xda, 0x3a, 0xf8, 0x6c, 0x6e, 0x3f, 0x5e, 0x2f, 0x03, 0x80, 0x4a, 0xdf, 0x19, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2893 = { .name = "xdh_wei448_2893", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2893_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2893_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2893_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2893_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 310 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2894 for XDH, tcId is 311 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2894_peerpubkey[] = { 0xbb, 0x7f, 0xfe, 0x8b, 0xc4, 0x25, 0x6e, 0xa7, 0xbe, 0x81, 0x8f, 0xf5, 0x33, 0x9f, 0xa6, 0x1f, 0xb6, 0xf8, 0x44, 0x09, 0xb6, 0x51, 0x2a, 0x82, 0xa5, 0x06, 0x38, 0x7f, 0x9a, 0x8f, 0xc2, 0x16, 0x52, 0xf4, 0x77, 0x2d, 0x7a, 0x01, 0x8a, 0x81, 0x24, 0x18, 0x39, 0x26, 0x1c, 0xbf, 0xd2, 0xc5, 0xc7, 0x33, 0x70, 0xb8, 0x56, 0x02, 0x60, 0x12, }; static const unsigned char xdh_wei448_2894_ourpubkey[] = { 0x92, 0x26, 0x70, 0x0e, 0x33, 0xa0, 0xe5, 0x0f, 0x21, 0x67, 0x9f, 0xca, 0x80, 0xeb, 0x42, 0x68, 0x01, 0x77, 0x40, 0x6a, 0xbc, 0xd6, 0x45, 0x02, 0x23, 0x33, 0x33, 0xab, 0xaf, 0xba, 0x84, 0x4b, 0xa1, 0xb0, 0xf9, 0x80, 0x0c, 0x82, 0xff, 0xcd, 0x0b, 0xe9, 0xda, 0xbc, 0xdb, 0x83, 0x6e, 0xe5, 0xdd, 0x64, 0x50, 0x10, 0xa3, 0xfe, 0xff, 0x1e, }; static const unsigned char xdh_wei448_2894_privkey[] = { 0x38, 0xc7, 0x43, 0x50, 0x07, 0x0f, 0xbe, 0x66, 0x2e, 0xfb, 0xbe, 0xd8, 0x36, 0x85, 0xb9, 0xe2, 0x39, 0x3e, 0x6d, 0xfd, 0xa3, 0x4f, 0x52, 0x82, 0xcd, 0x9a, 0x90, 0x23, 0xba, 0x76, 0xd1, 0xa5, 0xa2, 0x2d, 0x59, 0xdb, 0x9d, 0x4d, 0x2f, 0xbd, 0xf2, 0x17, 0x03, 0xe6, 0x22, 0x94, 0xb6, 0xa1, 0xf5, 0x81, 0x07, 0x57, 0x8b, 0x63, 0x65, 0xad, }; static const unsigned char xdh_wei448_2894_sharedsecret[] = { 0xcf, 0xcd, 0x10, 0x53, 0x40, 0x65, 0xd1, 0xba, 0xa0, 0x5e, 0xe9, 0x0b, 0xaf, 0xe2, 0x65, 0x90, 0x62, 0x27, 0x8b, 0x8f, 0x6e, 0x1d, 0x12, 0xfd, 0x74, 0xc0, 0x52, 0xb6, 0xa0, 0xb8, 0x3e, 0x7a, 0x68, 0x8c, 0xed, 0xe5, 0xf2, 0xe4, 0x9b, 0x01, 0xc7, 0x8c, 0xb5, 0xc7, 0x3f, 0xe9, 0x06, 0x23, 0x94, 0x18, 0x2f, 0x4f, 0x6f, 0x39, 0x8a, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_2894 = { .name = "xdh_wei448_2894", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2894_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2894_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2894_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2894_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 311 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2895 for XDH, tcId is 312 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2895_peerpubkey[] = { 0x04, 0x1e, 0x0a, 0xa7, 0x5e, 0x8f, 0xb7, 0x41, 0xec, 0xba, 0xab, 0x1c, 0x8c, 0x35, 0x10, 0x7e, 0x28, 0xfb, 0x93, 0xbb, 0xb2, 0x80, 0x7a, 0xb6, 0x31, 0x41, 0xb0, 0xcc, 0x62, 0xbc, 0x6d, 0x60, 0x1b, 0x40, 0x91, 0xed, 0x04, 0xb7, 0x8c, 0x46, 0xb5, 0x80, 0xb7, 0x85, 0xbc, 0xd2, 0x15, 0xf6, 0x53, 0x26, 0x42, 0x1f, 0xe5, 0xf8, 0xa5, 0x84, }; static const unsigned char xdh_wei448_2895_ourpubkey[] = { 0x8b, 0xdf, 0xcf, 0x17, 0x4c, 0xf1, 0x0f, 0xd1, 0x72, 0x14, 0x57, 0xc3, 0xd2, 0x60, 0x65, 0x78, 0xa7, 0x3f, 0xb3, 0xcf, 0xf8, 0x57, 0xa3, 0x72, 0xcb, 0xf6, 0xfb, 0x69, 0x5a, 0x61, 0xdc, 0x54, 0x86, 0xfd, 0x8d, 0x22, 0x8f, 0x4c, 0x22, 0x76, 0x76, 0xd9, 0xcd, 0x8e, 0x4a, 0xbe, 0xc3, 0xcf, 0x8a, 0x98, 0x52, 0x30, 0x00, 0x2d, 0xdb, 0x89, }; static const unsigned char xdh_wei448_2895_privkey[] = { 0xf8, 0x5e, 0xe5, 0x97, 0x7b, 0x6a, 0x05, 0xbd, 0xbc, 0x53, 0x98, 0x2b, 0x1b, 0x81, 0xb9, 0xe2, 0xc2, 0x1b, 0xa6, 0xd4, 0x40, 0x93, 0xee, 0x8c, 0x6e, 0xd3, 0x0a, 0x2b, 0x63, 0xda, 0xf5, 0xab, 0x4d, 0x4b, 0xf7, 0x14, 0xe1, 0x02, 0xb7, 0xe5, 0x9f, 0x9d, 0x09, 0x66, 0x20, 0x38, 0xbe, 0x26, 0x13, 0x83, 0xc5, 0x06, 0xc1, 0x98, 0x3c, 0xa6, }; static const unsigned char xdh_wei448_2895_sharedsecret[] = { 0x20, 0x21, 0xed, 0x9f, 0xa8, 0x01, 0xd8, 0x62, 0x20, 0xa6, 0x1a, 0x33, 0xaf, 0xbb, 0x7a, 0x03, 0x67, 0x5d, 0x23, 0x42, 0x6b, 0x10, 0x75, 0x5c, 0x44, 0xe4, 0x16, 0x71, 0xbc, 0x45, 0x4b, 0x60, 0x5c, 0xab, 0x34, 0x30, 0x68, 0xc4, 0xa9, 0x70, 0xf2, 0x29, 0x71, 0x2d, 0x84, 0x67, 0x0f, 0x06, 0x12, 0xd2, 0x56, 0xec, 0x00, 0xf9, 0xf8, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_2895 = { .name = "xdh_wei448_2895", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2895_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2895_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2895_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2895_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 312 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2896 for XDH, tcId is 313 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2896_peerpubkey[] = { 0xff, 0x1e, 0x23, 0xf8, 0xe3, 0x6b, 0x5f, 0x31, 0x7f, 0x7f, 0x38, 0x33, 0x25, 0xce, 0x34, 0x81, 0xb3, 0xeb, 0x07, 0xc4, 0x61, 0x5a, 0x25, 0x31, 0xbd, 0x12, 0xea, 0xb4, 0x54, 0xac, 0xec, 0xab, 0x6a, 0x00, 0x05, 0x2e, 0x68, 0x5c, 0xb5, 0x51, 0x00, 0xd7, 0xc7, 0xf6, 0xd9, 0x18, 0x08, 0x2e, 0xcb, 0x57, 0xc6, 0x83, 0xe5, 0xb8, 0x64, 0x9c, }; static const unsigned char xdh_wei448_2896_ourpubkey[] = { 0x56, 0x17, 0x9e, 0x40, 0xc6, 0x7f, 0xc1, 0xd8, 0x37, 0x69, 0xf8, 0x78, 0x37, 0x73, 0x41, 0x94, 0xf1, 0x2a, 0x96, 0x66, 0x3e, 0xec, 0x8a, 0x01, 0x40, 0xa3, 0x9b, 0x93, 0x17, 0x45, 0x64, 0x09, 0xc8, 0xeb, 0xa4, 0xb7, 0xdd, 0x6c, 0x00, 0x1a, 0x8b, 0xfb, 0x8a, 0xa1, 0xec, 0x1b, 0xa8, 0x2f, 0x40, 0x8d, 0xd4, 0x9d, 0x7a, 0xb3, 0x02, 0xe1, }; static const unsigned char xdh_wei448_2896_privkey[] = { 0xbc, 0x8e, 0x01, 0x09, 0xc6, 0x7a, 0x98, 0x29, 0x0f, 0x93, 0x29, 0x68, 0x65, 0xcb, 0x7d, 0x6c, 0x67, 0x8c, 0x56, 0xd6, 0x35, 0xcf, 0x9e, 0xd1, 0x8d, 0xa3, 0xea, 0x72, 0x26, 0xe6, 0xa0, 0x2a, 0x8a, 0x3f, 0x6b, 0x1b, 0x45, 0x80, 0x7a, 0x08, 0x0d, 0x69, 0x9f, 0x1b, 0xe0, 0x78, 0x64, 0xea, 0x8c, 0x8b, 0x83, 0x94, 0xaa, 0x75, 0x1c, 0xab, }; static const unsigned char xdh_wei448_2896_sharedsecret[] = { 0x23, 0x43, 0x7b, 0x39, 0x30, 0x1e, 0xe8, 0xcf, 0xc7, 0xd3, 0x92, 0xc6, 0x28, 0x72, 0xe3, 0xdc, 0x86, 0x89, 0x6c, 0xc2, 0xcf, 0x6e, 0x4d, 0x9f, 0xe4, 0x77, 0xad, 0xe5, 0xce, 0xfd, 0x6c, 0x34, 0xb8, 0x08, 0x3a, 0x28, 0x68, 0x20, 0x4f, 0x67, 0x2e, 0xb7, 0xf0, 0x33, 0x4a, 0xd7, 0x41, 0xf3, 0xf8, 0xb9, 0xd0, 0x67, 0xa3, 0x3a, 0xbe, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2896 = { .name = "xdh_wei448_2896", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2896_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2896_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2896_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2896_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 313 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2897 for XDH, tcId is 314 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2897_peerpubkey[] = { 0x96, 0xbe, 0x7b, 0xa9, 0xc9, 0x6e, 0x0a, 0xb6, 0x09, 0xa5, 0xb3, 0x01, 0xdf, 0xf3, 0xc7, 0x30, 0x2b, 0x94, 0x48, 0x3a, 0xef, 0x83, 0xd3, 0x0b, 0xd0, 0xde, 0x25, 0xd4, 0x49, 0x4d, 0xd3, 0xa6, 0x66, 0xad, 0xa1, 0x67, 0x76, 0xb7, 0xd7, 0xfa, 0x4d, 0x75, 0x49, 0x74, 0xf4, 0x1f, 0x34, 0x84, 0x78, 0x14, 0x3d, 0x1d, 0x6d, 0x54, 0xac, 0xa7, }; static const unsigned char xdh_wei448_2897_ourpubkey[] = { 0xb2, 0x68, 0xf4, 0x2c, 0xf9, 0xc7, 0x47, 0xe7, 0x85, 0x21, 0x25, 0x8a, 0xd7, 0x18, 0x5b, 0x54, 0x5c, 0x6f, 0x9b, 0x99, 0x71, 0x62, 0x60, 0xb2, 0x82, 0x81, 0x05, 0x05, 0xd0, 0xbd, 0x81, 0x6a, 0x6f, 0x29, 0x12, 0x1b, 0x2b, 0x5c, 0x31, 0x02, 0x3c, 0x93, 0x0e, 0xa7, 0xde, 0xee, 0x66, 0xf1, 0x5e, 0xe4, 0x5c, 0x2a, 0x4c, 0xbb, 0x50, 0x50, }; static const unsigned char xdh_wei448_2897_privkey[] = { 0x24, 0x59, 0x67, 0x0e, 0x6f, 0xd0, 0xd3, 0x2c, 0x81, 0x75, 0x5a, 0x93, 0x44, 0x5a, 0xd4, 0x54, 0xc9, 0x01, 0x4f, 0xc2, 0x79, 0x77, 0x64, 0xbb, 0x28, 0xd2, 0x25, 0x21, 0x4f, 0x1c, 0xc3, 0x3c, 0x36, 0x24, 0xec, 0x10, 0xd2, 0xc6, 0xb0, 0x30, 0xa7, 0x61, 0x36, 0x43, 0x12, 0xf9, 0xc9, 0xbf, 0x16, 0xf4, 0x2a, 0xcd, 0x50, 0x52, 0x11, 0xb9, }; static const unsigned char xdh_wei448_2897_sharedsecret[] = { 0xa0, 0xa7, 0x67, 0xf9, 0x56, 0x17, 0x85, 0x90, 0x3b, 0x8a, 0x4e, 0x06, 0xd5, 0x1c, 0x95, 0xeb, 0xf3, 0x5d, 0x16, 0xdd, 0xef, 0xf4, 0x90, 0x92, 0xae, 0x1d, 0x9f, 0xc9, 0xb4, 0xa7, 0xdb, 0x32, 0x92, 0xdc, 0x35, 0x48, 0x90, 0xee, 0x4b, 0x04, 0x38, 0x72, 0xac, 0x67, 0xf7, 0x04, 0xd5, 0x80, 0x83, 0x38, 0xd8, 0xd0, 0x04, 0x8b, 0x86, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_2897 = { .name = "xdh_wei448_2897", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2897_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2897_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2897_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2897_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 314 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2898 for XDH, tcId is 315 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2898_peerpubkey[] = { 0xdd, 0xc4, 0xbc, 0x16, 0xd8, 0x9b, 0x9e, 0x67, 0x19, 0xcc, 0x97, 0x9c, 0xcb, 0x33, 0x93, 0x58, 0x5b, 0x42, 0xdc, 0xb2, 0xd8, 0xed, 0xea, 0x8c, 0x4e, 0x6c, 0x61, 0x50, 0xbb, 0x67, 0x04, 0xfc, 0xa9, 0xbb, 0x48, 0x32, 0x12, 0x28, 0x12, 0x24, 0x9d, 0x67, 0x19, 0xf0, 0x45, 0x37, 0x51, 0xce, 0x24, 0x66, 0xbb, 0x11, 0x58, 0xf6, 0xf0, 0xe4, }; static const unsigned char xdh_wei448_2898_ourpubkey[] = { 0x78, 0xed, 0x56, 0xa9, 0xcf, 0x55, 0xd9, 0x1f, 0x74, 0xe1, 0x68, 0xa4, 0x03, 0x73, 0x6d, 0xcf, 0xe9, 0xa2, 0x7a, 0x1a, 0x85, 0xe5, 0x03, 0x03, 0x7c, 0x58, 0x02, 0x7e, 0xfc, 0x1d, 0x01, 0x8b, 0x26, 0xbe, 0xae, 0xed, 0x3a, 0xdd, 0xdd, 0xee, 0x4e, 0xd5, 0xe1, 0xc0, 0x2e, 0x7b, 0x63, 0xd1, 0x3f, 0x3c, 0x34, 0xb8, 0xd9, 0xa2, 0x19, 0x28, }; static const unsigned char xdh_wei448_2898_privkey[] = { 0xec, 0x9f, 0xf8, 0xce, 0xa3, 0xaa, 0x8a, 0xd6, 0xa9, 0x57, 0x01, 0x19, 0xda, 0xa1, 0x07, 0x03, 0x5f, 0xae, 0x2a, 0xae, 0x7e, 0x8b, 0x6a, 0xc7, 0xb5, 0x02, 0x39, 0x16, 0x05, 0x52, 0x91, 0x53, 0x25, 0xe0, 0x5f, 0x94, 0x66, 0xcd, 0x44, 0xa4, 0x31, 0x4a, 0xa2, 0xbd, 0x8a, 0x78, 0xb1, 0x6f, 0xc7, 0x4b, 0x18, 0xd6, 0x62, 0xdc, 0xd9, 0xa5, }; static const unsigned char xdh_wei448_2898_sharedsecret[] = { 0x5a, 0x7d, 0xc0, 0x0f, 0xb2, 0x06, 0xfe, 0xbc, 0x3a, 0xbf, 0xf3, 0x6c, 0x57, 0xed, 0x8b, 0x88, 0x8e, 0x8b, 0xe6, 0xd2, 0x79, 0xf0, 0x92, 0x54, 0xb7, 0x9b, 0x1a, 0x02, 0x0c, 0x13, 0xc4, 0x2d, 0x8c, 0x94, 0xd6, 0x4d, 0xcd, 0xa8, 0x92, 0xd3, 0x45, 0x2c, 0x00, 0x22, 0x0b, 0xd5, 0x19, 0x9b, 0x23, 0x9b, 0xbd, 0xb2, 0xad, 0x6c, 0xb0, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_2898 = { .name = "xdh_wei448_2898", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2898_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2898_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2898_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2898_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 315 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2899 for XDH, tcId is 316 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2899_peerpubkey[] = { 0x6d, 0x66, 0x81, 0x44, 0xc2, 0xbb, 0x25, 0x96, 0x18, 0xfc, 0xe4, 0x97, 0x94, 0x4e, 0x68, 0xf8, 0x36, 0xf6, 0xb4, 0x34, 0x92, 0x68, 0x3e, 0x25, 0xc0, 0x86, 0x55, 0x1c, 0xd9, 0x74, 0xf1, 0xae, 0x34, 0xbe, 0x58, 0x48, 0x38, 0x23, 0xb2, 0x92, 0x18, 0x57, 0x4c, 0xe7, 0x05, 0xc6, 0x49, 0x4b, 0x5b, 0x92, 0x17, 0xc8, 0xfb, 0xcc, 0xe8, 0xe9, }; static const unsigned char xdh_wei448_2899_ourpubkey[] = { 0x32, 0xca, 0xcf, 0x4c, 0x83, 0xa6, 0xd3, 0xae, 0x21, 0xfc, 0xe7, 0xcb, 0x37, 0xaa, 0x13, 0xcd, 0xe5, 0x15, 0x4a, 0xce, 0xd5, 0x34, 0x66, 0x3b, 0x5e, 0x13, 0xc1, 0x55, 0xc8, 0x4c, 0x71, 0x25, 0xc3, 0xb7, 0x71, 0x21, 0xae, 0xc2, 0x60, 0x06, 0xb9, 0xaa, 0xa2, 0x2d, 0xb0, 0x4c, 0x2b, 0x8e, 0x57, 0xdd, 0xa5, 0x47, 0x7a, 0xa1, 0x27, 0xd4, }; static const unsigned char xdh_wei448_2899_privkey[] = { 0xb0, 0x19, 0x30, 0x22, 0x58, 0x0d, 0x05, 0x7d, 0xaa, 0x8b, 0x92, 0x25, 0xd0, 0x85, 0x49, 0x56, 0x2f, 0x1f, 0xe3, 0x3f, 0xe4, 0x74, 0xdb, 0xb1, 0xc1, 0x77, 0xa2, 0x97, 0xc3, 0xb5, 0x4d, 0xbe, 0x3e, 0x3a, 0xcc, 0x23, 0xb9, 0xd7, 0x42, 0xe2, 0x2b, 0x00, 0x69, 0x8e, 0xd0, 0x80, 0x4d, 0x35, 0x01, 0x89, 0xd2, 0x09, 0xa9, 0xf0, 0x48, 0xab, }; static const unsigned char xdh_wei448_2899_sharedsecret[] = { 0x36, 0x45, 0x39, 0x0c, 0xe6, 0x49, 0xcf, 0x24, 0x8d, 0x8d, 0x17, 0x19, 0x34, 0x22, 0x6a, 0xe4, 0x38, 0x09, 0xbc, 0x61, 0x4b, 0x72, 0x3f, 0x61, 0x12, 0x8d, 0xca, 0x56, 0x28, 0x45, 0x28, 0x44, 0xe7, 0xe9, 0xa3, 0x76, 0x15, 0x73, 0xbf, 0x4b, 0x59, 0x2d, 0xdc, 0x0d, 0xf0, 0xa1, 0x2d, 0xff, 0x90, 0x10, 0x3f, 0xa1, 0xfa, 0x61, 0x6c, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2899 = { .name = "xdh_wei448_2899", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2899_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2899_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2899_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2899_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 316 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2900 for XDH, tcId is 317 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2900_peerpubkey[] = { 0x9b, 0xdb, 0x0b, 0x57, 0x30, 0x85, 0xb3, 0xdf, 0x64, 0x0b, 0x7e, 0xbd, 0xf3, 0x43, 0xbb, 0xed, 0xe2, 0xca, 0x09, 0xac, 0x4e, 0x75, 0xb5, 0xe9, 0xe4, 0x62, 0x4b, 0xc4, 0xf7, 0x1d, 0x68, 0xea, 0x72, 0x4d, 0xbf, 0xf4, 0x7f, 0x72, 0x42, 0x48, 0xfe, 0x5c, 0xcc, 0x28, 0x5d, 0x96, 0x0b, 0x6f, 0xc9, 0x79, 0x04, 0x30, 0xa3, 0xa5, 0x21, 0xf6, }; static const unsigned char xdh_wei448_2900_ourpubkey[] = { 0xa1, 0x78, 0x8d, 0x2d, 0x7a, 0xda, 0x2b, 0x50, 0x58, 0xe8, 0x8c, 0xf6, 0x45, 0x69, 0xae, 0xbf, 0x68, 0x8d, 0x50, 0xc0, 0x33, 0x3b, 0x05, 0xb9, 0x83, 0xd5, 0x4c, 0xb0, 0x56, 0x41, 0xf4, 0x8b, 0xf5, 0x32, 0x4d, 0x6f, 0xa9, 0x21, 0xa2, 0xd3, 0xab, 0xd1, 0x94, 0x82, 0xb9, 0x96, 0xc4, 0xd6, 0x71, 0x20, 0x7f, 0x84, 0x49, 0x99, 0xca, 0xca, }; static const unsigned char xdh_wei448_2900_privkey[] = { 0x58, 0xed, 0xe3, 0xfd, 0x60, 0xae, 0x61, 0x9c, 0x35, 0x3e, 0x39, 0x4f, 0x2a, 0x78, 0xaf, 0x92, 0x92, 0x30, 0x56, 0x90, 0xc6, 0x92, 0x32, 0x27, 0xc2, 0xf0, 0xce, 0xa0, 0x85, 0xf8, 0xc1, 0x1e, 0x51, 0x33, 0xbb, 0x56, 0x16, 0x4e, 0x5d, 0x41, 0xfe, 0x63, 0xba, 0x22, 0x99, 0x8b, 0x0f, 0x35, 0x1b, 0x7c, 0x81, 0xa3, 0x63, 0x05, 0x95, 0xa9, }; static const unsigned char xdh_wei448_2900_sharedsecret[] = { 0x3e, 0xfc, 0x48, 0xb8, 0x50, 0x74, 0x43, 0xc4, 0x1d, 0xf8, 0xc1, 0x07, 0x7a, 0xa5, 0xc7, 0x9c, 0xa1, 0xe9, 0x88, 0x1d, 0x64, 0xb4, 0x47, 0x75, 0xf8, 0x77, 0xff, 0x7c, 0x70, 0x7f, 0xb1, 0x86, 0x2f, 0xd7, 0xf7, 0x9d, 0x50, 0x36, 0x0e, 0x6a, 0xdc, 0x19, 0xc2, 0x28, 0x26, 0xff, 0x23, 0x14, 0xdb, 0xfd, 0x16, 0x8e, 0x0e, 0xec, 0x25, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_2900 = { .name = "xdh_wei448_2900", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2900_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2900_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2900_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2900_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 317 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2901 for XDH, tcId is 318 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2901_peerpubkey[] = { 0xfd, 0x1e, 0xad, 0x12, 0xe7, 0x90, 0x3a, 0x0d, 0x7c, 0xfe, 0x9d, 0xef, 0x3d, 0xa3, 0x95, 0xac, 0xcf, 0x68, 0x84, 0xa5, 0x33, 0xb6, 0xf9, 0xde, 0x30, 0x74, 0x54, 0x8e, 0x04, 0x7e, 0x39, 0x4f, 0xe4, 0x1f, 0x8f, 0xca, 0x96, 0x6d, 0xf7, 0x3e, 0xcc, 0xd8, 0x1d, 0xfc, 0xcd, 0xc7, 0x13, 0x62, 0x8c, 0x9d, 0x78, 0x27, 0x56, 0x28, 0x53, 0xaa, }; static const unsigned char xdh_wei448_2901_ourpubkey[] = { 0xe1, 0x41, 0xe2, 0x7d, 0xda, 0x5f, 0x1d, 0xa0, 0xa5, 0x2a, 0xb2, 0x54, 0x09, 0xb8, 0xb1, 0xd6, 0x2a, 0x1b, 0x94, 0x61, 0x2d, 0xdd, 0xc8, 0xf8, 0x4b, 0xf0, 0x69, 0x6e, 0xba, 0x1b, 0x21, 0x82, 0x5c, 0x0e, 0xfd, 0x91, 0xc7, 0x58, 0x3d, 0x57, 0x2f, 0x58, 0x0c, 0x33, 0xb1, 0xc5, 0xd5, 0xb5, 0x3c, 0x30, 0xf5, 0x3b, 0x10, 0x8f, 0x05, 0x13, }; static const unsigned char xdh_wei448_2901_privkey[] = { 0xc0, 0x1b, 0xe8, 0xec, 0x9f, 0x3e, 0x48, 0xf8, 0x3b, 0xd7, 0x91, 0xb5, 0x3e, 0x52, 0x11, 0xc2, 0xb4, 0xdb, 0x5f, 0xe3, 0xad, 0x07, 0xd0, 0xd2, 0xc1, 0xa8, 0xcd, 0x55, 0x6a, 0x6f, 0x5e, 0x85, 0xfa, 0xc1, 0xfc, 0x8a, 0xec, 0x68, 0xbe, 0x8d, 0x96, 0xa8, 0xea, 0xfa, 0xab, 0xbd, 0x5b, 0xde, 0x6a, 0x46, 0xda, 0x39, 0x66, 0x50, 0xf8, 0xb3, }; static const unsigned char xdh_wei448_2901_sharedsecret[] = { 0xf9, 0xe4, 0x59, 0x53, 0x3a, 0x86, 0xcc, 0xc6, 0xf9, 0xba, 0xf4, 0xc3, 0xfc, 0xc9, 0x6e, 0x5b, 0x07, 0xbc, 0x5f, 0xbd, 0xe8, 0x46, 0xa3, 0x38, 0xce, 0xc8, 0xbc, 0xa4, 0x69, 0x00, 0x11, 0xe1, 0x99, 0x5f, 0xef, 0x31, 0xfb, 0x7d, 0xd3, 0xce, 0x31, 0xf4, 0x98, 0xa8, 0x66, 0xc6, 0xb1, 0xeb, 0x59, 0x5a, 0x8f, 0x22, 0xa8, 0x45, 0x20, 0x28, }; static const wycheproof_xdh_test xdh_wei448_2901 = { .name = "xdh_wei448_2901", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2901_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2901_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2901_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2901_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 318 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2902 for XDH, tcId is 319 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2902_peerpubkey[] = { 0x65, 0x35, 0x00, 0xf4, 0x1c, 0xc9, 0x14, 0xee, 0x7b, 0x24, 0x9d, 0x29, 0x3e, 0x3e, 0x60, 0xf5, 0xb2, 0x3d, 0xd6, 0x27, 0x17, 0xde, 0x18, 0xec, 0xc0, 0x65, 0xce, 0x1c, 0x3f, 0x0e, 0x62, 0xea, 0xa5, 0x3a, 0xeb, 0x40, 0xff, 0x91, 0x4f, 0x6e, 0x28, 0x3a, 0x26, 0x4e, 0x38, 0x4f, 0x86, 0xc8, 0xda, 0x96, 0xa2, 0x87, 0x49, 0x93, 0x61, 0xd8, }; static const unsigned char xdh_wei448_2902_ourpubkey[] = { 0x9c, 0x5f, 0x57, 0xd1, 0xb8, 0x32, 0xe0, 0xcd, 0xed, 0xb4, 0xee, 0x35, 0x46, 0x06, 0xe2, 0x48, 0x2c, 0x70, 0x1e, 0xd3, 0x56, 0xd2, 0x4d, 0x47, 0xef, 0xf2, 0x1e, 0x63, 0x08, 0xc7, 0x02, 0xd3, 0x58, 0x2f, 0x8f, 0x7f, 0x4d, 0x44, 0x44, 0xd8, 0x6d, 0xd2, 0x77, 0x04, 0x41, 0xf3, 0x25, 0xa9, 0x92, 0x06, 0x3f, 0xdf, 0x49, 0xcb, 0x49, 0xf7, }; static const unsigned char xdh_wei448_2902_privkey[] = { 0x18, 0x11, 0xae, 0x99, 0xd3, 0xa3, 0x67, 0xfd, 0xe2, 0x6f, 0xef, 0xeb, 0x3a, 0xd6, 0x2c, 0x7a, 0xe2, 0x1f, 0x65, 0x00, 0xa0, 0x09, 0xd4, 0x34, 0x35, 0x7d, 0xa5, 0x9b, 0x42, 0x27, 0xe6, 0xab, 0xe2, 0x80, 0xbe, 0x9f, 0xba, 0xee, 0x96, 0x48, 0x17, 0x2e, 0xc7, 0xd5, 0x4d, 0x81, 0xfc, 0x37, 0x6a, 0x63, 0xbe, 0x59, 0x1a, 0x48, 0x9f, 0xa0, }; static const unsigned char xdh_wei448_2902_sharedsecret[] = { 0xc2, 0xbc, 0x97, 0xf6, 0x8f, 0xf5, 0xc2, 0x37, 0x08, 0xd2, 0x82, 0x88, 0x3c, 0x20, 0xc8, 0xd9, 0x07, 0x9b, 0xaf, 0x06, 0xd7, 0x2e, 0x63, 0x2b, 0x46, 0x49, 0xea, 0x11, 0x3f, 0xb2, 0x87, 0x9f, 0x86, 0x40, 0xa2, 0x1d, 0x44, 0x85, 0x1f, 0x1a, 0xbf, 0x3e, 0x48, 0x7f, 0x2d, 0x65, 0xc8, 0x44, 0x6d, 0x32, 0xf6, 0x6b, 0x5e, 0xa9, 0xff, 0xb7, }; static const wycheproof_xdh_test xdh_wei448_2902 = { .name = "xdh_wei448_2902", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2902_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2902_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2902_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2902_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 319 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2903 for XDH, tcId is 320 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2903_peerpubkey[] = { 0xc1, 0x39, 0xba, 0x0b, 0xb5, 0xca, 0x96, 0x36, 0x09, 0x28, 0x6b, 0x50, 0xaf, 0xf9, 0xc3, 0xb2, 0x4c, 0x70, 0x51, 0x2c, 0x04, 0x07, 0xd9, 0x5a, 0x6a, 0xa7, 0x6f, 0x07, 0x4e, 0x4e, 0x34, 0x38, 0xab, 0x03, 0x8a, 0x9d, 0x68, 0x05, 0xe6, 0xb0, 0x1c, 0x4c, 0xa0, 0xc6, 0x23, 0xf8, 0xb5, 0x0e, 0xe5, 0xb7, 0x57, 0xa8, 0x3c, 0xfb, 0xbf, 0x02, }; static const unsigned char xdh_wei448_2903_ourpubkey[] = { 0x69, 0xc4, 0xe6, 0x7e, 0xed, 0xf0, 0x01, 0xfe, 0x7d, 0xcd, 0xb7, 0xc2, 0x42, 0xe1, 0x19, 0x49, 0xd4, 0xa6, 0xd2, 0x95, 0x84, 0x02, 0xe7, 0x66, 0x24, 0xd6, 0xf6, 0x13, 0x32, 0x6d, 0xfe, 0xfc, 0xce, 0x86, 0x0a, 0x32, 0xb0, 0x5b, 0x03, 0xc0, 0x32, 0x21, 0x72, 0xe7, 0xcf, 0x63, 0x22, 0x04, 0x99, 0xcb, 0x1d, 0x94, 0xa6, 0xaf, 0xc3, 0x4c, }; static const unsigned char xdh_wei448_2903_privkey[] = { 0xdc, 0x40, 0x76, 0x80, 0x5c, 0x6d, 0x33, 0xa4, 0x54, 0xb2, 0x97, 0xd0, 0x8e, 0xbc, 0x44, 0x70, 0x12, 0xe0, 0xf4, 0x45, 0x99, 0x27, 0x31, 0x6c, 0x30, 0xcf, 0x5a, 0xae, 0x25, 0x1a, 0xc1, 0x42, 0x0c, 0xbc, 0x04, 0xf2, 0x3f, 0xd8, 0x64, 0x6f, 0x96, 0xfa, 0xed, 0x9f, 0xd4, 0x61, 0x75, 0x06, 0xf9, 0xbf, 0xe8, 0xf8, 0x80, 0x5a, 0x42, 0xdf, }; static const unsigned char xdh_wei448_2903_sharedsecret[] = { 0xb2, 0x0b, 0x6c, 0x99, 0x75, 0x13, 0x4a, 0xdc, 0x76, 0x8f, 0xcf, 0x27, 0xfd, 0x90, 0x3a, 0x17, 0xa7, 0x52, 0x56, 0x74, 0xc4, 0xf6, 0xad, 0x12, 0x60, 0x0a, 0xe5, 0xaa, 0x30, 0xf7, 0x8f, 0xad, 0x69, 0x10, 0x8c, 0x88, 0xcb, 0x8e, 0x68, 0xec, 0xbd, 0x00, 0x55, 0xbc, 0x6c, 0xa1, 0xce, 0xd4, 0x69, 0x18, 0xe4, 0x7c, 0x8a, 0x90, 0xa9, 0x4c, }; static const wycheproof_xdh_test xdh_wei448_2903 = { .name = "xdh_wei448_2903", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2903_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2903_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2903_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2903_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 320 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2904 for XDH, tcId is 321 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2904_peerpubkey[] = { 0x1a, 0x70, 0xd9, 0x23, 0xb5, 0xed, 0x73, 0xbf, 0x71, 0xa6, 0x5b, 0x47, 0xfe, 0xe7, 0xe7, 0x95, 0xb9, 0xc4, 0xcf, 0x4d, 0xb6, 0x18, 0xf6, 0x83, 0xfa, 0xc0, 0x3a, 0x70, 0xba, 0x23, 0x30, 0x02, 0x47, 0xd1, 0x4c, 0xfe, 0xba, 0xea, 0xb6, 0xb3, 0xab, 0xf0, 0xf1, 0x40, 0xe3, 0xd4, 0x8d, 0x54, 0xfd, 0x48, 0xba, 0x21, 0x3c, 0xc1, 0xfd, 0x04, }; static const unsigned char xdh_wei448_2904_ourpubkey[] = { 0x27, 0x74, 0xbb, 0x47, 0x10, 0x60, 0x11, 0x38, 0x3e, 0xe1, 0x7f, 0x55, 0x40, 0x28, 0xaf, 0x96, 0x2f, 0xda, 0x8e, 0x81, 0xeb, 0x74, 0xa3, 0x25, 0x13, 0xd9, 0xa0, 0xf1, 0x06, 0x36, 0xa3, 0x01, 0x24, 0x77, 0xaf, 0x60, 0xdc, 0x86, 0x8f, 0x3e, 0x9a, 0x99, 0x8e, 0x5e, 0x32, 0xc0, 0x2b, 0x90, 0xcc, 0x05, 0x77, 0x5f, 0x77, 0xb2, 0x22, 0xa4, }; static const unsigned char xdh_wei448_2904_privkey[] = { 0xa4, 0x8e, 0xbc, 0x73, 0x82, 0x70, 0x11, 0xfb, 0xe8, 0xd6, 0x32, 0xd8, 0xae, 0xa5, 0x7d, 0xf4, 0x4f, 0xa7, 0x03, 0xce, 0x27, 0x07, 0xb8, 0x09, 0x26, 0xad, 0x22, 0x8b, 0x5c, 0x2f, 0x25, 0x0b, 0xed, 0xbb, 0xc8, 0xf6, 0xd2, 0xd0, 0xb4, 0xe0, 0xa5, 0x6d, 0x65, 0x7e, 0xdd, 0x17, 0xee, 0x07, 0x19, 0xd0, 0xb3, 0xf1, 0x9d, 0x62, 0x16, 0xd4, }; static const unsigned char xdh_wei448_2904_sharedsecret[] = { 0x4e, 0xbf, 0xd3, 0x1f, 0x1c, 0xe1, 0xc8, 0x45, 0xfc, 0x3b, 0x36, 0x56, 0x93, 0x5c, 0x46, 0xc8, 0x8b, 0xbe, 0xf3, 0xbd, 0x23, 0x60, 0xaf, 0x50, 0x96, 0x50, 0xe0, 0x31, 0xb6, 0x5c, 0x72, 0x60, 0xaf, 0xb8, 0x46, 0xd0, 0xd6, 0x75, 0x63, 0x47, 0xc3, 0x89, 0xf7, 0x8d, 0xcf, 0x58, 0xde, 0x28, 0x0d, 0xd1, 0x0e, 0xc1, 0x40, 0xf2, 0x9e, 0x12, }; static const wycheproof_xdh_test xdh_wei448_2904 = { .name = "xdh_wei448_2904", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2904_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2904_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2904_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2904_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 321 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2905 for XDH, tcId is 322 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2905_peerpubkey[] = { 0xaa, 0x6f, 0xec, 0xaf, 0xff, 0x49, 0xda, 0xf6, 0x52, 0xe6, 0x35, 0x53, 0xbb, 0x2a, 0x24, 0xdf, 0xf2, 0xe3, 0x36, 0x09, 0x35, 0xf6, 0xe6, 0x63, 0xe5, 0xd0, 0xb9, 0x87, 0x3a, 0xfd, 0xcc, 0xd9, 0xce, 0x2f, 0xee, 0xd9, 0x70, 0x2d, 0x69, 0xec, 0x7f, 0xd2, 0x00, 0xb5, 0xf0, 0x50, 0x36, 0xd4, 0xd8, 0x38, 0xe3, 0x8a, 0xc3, 0xe3, 0x50, 0x19, }; static const unsigned char xdh_wei448_2905_ourpubkey[] = { 0xdf, 0xc7, 0x60, 0xd9, 0xca, 0x60, 0x3b, 0x25, 0x84, 0xd4, 0xa6, 0x93, 0xe9, 0x7f, 0xc9, 0x4b, 0xd9, 0x51, 0xfb, 0x83, 0xad, 0x68, 0xa8, 0x7e, 0x3c, 0xc3, 0xc7, 0x01, 0x85, 0xc4, 0x8f, 0x30, 0x9e, 0xd3, 0x7e, 0x57, 0xa9, 0xfe, 0xa1, 0xc6, 0xc4, 0x20, 0x71, 0xc2, 0x68, 0xff, 0x69, 0xf5, 0x82, 0x9a, 0x80, 0x36, 0x25, 0x61, 0xab, 0x0b, }; static const unsigned char xdh_wei448_2905_privkey[] = { 0x80, 0xce, 0x00, 0xf3, 0x00, 0x61, 0x6a, 0x90, 0x39, 0xf9, 0xf7, 0xc2, 0x37, 0x92, 0xd3, 0xea, 0xd1, 0xf9, 0xf1, 0xc4, 0xcc, 0xb4, 0x97, 0xd8, 0x56, 0x3e, 0x43, 0xae, 0x26, 0xac, 0xb4, 0xea, 0x42, 0xf2, 0xd8, 0x74, 0x38, 0x92, 0x5c, 0xce, 0x52, 0x4f, 0xb7, 0x2f, 0xff, 0x48, 0x3c, 0xf0, 0x35, 0x45, 0x04, 0x3a, 0xe6, 0x1f, 0xc4, 0xdb, }; static const unsigned char xdh_wei448_2905_sharedsecret[] = { 0xd4, 0xd6, 0xb7, 0x77, 0x2f, 0x2c, 0xe6, 0x63, 0x08, 0x9a, 0x38, 0xd7, 0xa8, 0x13, 0xd9, 0x40, 0x96, 0x28, 0xaf, 0x72, 0x2e, 0x7e, 0x42, 0x65, 0x86, 0x36, 0xd8, 0x1b, 0x0d, 0x83, 0x67, 0x97, 0x5a, 0x77, 0xd0, 0x20, 0xb6, 0xc4, 0xb1, 0xbe, 0xc2, 0xb5, 0x5e, 0xa6, 0x9a, 0x08, 0x7c, 0xd1, 0xdb, 0xbf, 0x2b, 0xca, 0x33, 0xf5, 0xbc, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2905 = { .name = "xdh_wei448_2905", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2905_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2905_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2905_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2905_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 322 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2906 for XDH, tcId is 323 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2906_peerpubkey[] = { 0x82, 0x4d, 0x9b, 0xe2, 0x7c, 0xeb, 0xa9, 0x4d, 0x89, 0x86, 0xb6, 0x43, 0xf9, 0x76, 0x12, 0x36, 0xc5, 0x85, 0x5b, 0xb1, 0xb2, 0xe4, 0x52, 0x8a, 0x51, 0x1f, 0x29, 0x98, 0xb4, 0xe1, 0x6c, 0xd9, 0x3a, 0x7b, 0x18, 0x58, 0xcb, 0x55, 0x01, 0x9d, 0x77, 0x42, 0x06, 0x4d, 0x99, 0x3c, 0xa8, 0x02, 0xa3, 0xc8, 0xac, 0x17, 0x29, 0x5e, 0xcd, 0x2c, }; static const unsigned char xdh_wei448_2906_ourpubkey[] = { 0xc8, 0x3b, 0xe5, 0x41, 0xd9, 0xaf, 0x36, 0xa3, 0x8e, 0x97, 0x53, 0xf7, 0x59, 0x1a, 0x68, 0x08, 0x78, 0x8f, 0x25, 0xb7, 0x34, 0xf3, 0x08, 0x0c, 0xfe, 0xf2, 0x31, 0xd5, 0x6c, 0x4b, 0x00, 0x5c, 0x62, 0xcf, 0x2b, 0x23, 0x23, 0x21, 0xe5, 0x0c, 0xed, 0x4a, 0x1f, 0x68, 0xeb, 0x00, 0x0b, 0xf9, 0x13, 0x9a, 0xa1, 0x8c, 0x2e, 0xec, 0x03, 0x2e, }; static const unsigned char xdh_wei448_2906_privkey[] = { 0x98, 0xcf, 0x8c, 0x51, 0x7e, 0x34, 0xd7, 0x71, 0xd9, 0xe0, 0x8c, 0xb9, 0x4d, 0xf8, 0x62, 0x80, 0xf6, 0x7e, 0x61, 0xdd, 0x7c, 0xff, 0x24, 0xbb, 0x32, 0x01, 0x37, 0xcf, 0x37, 0x0f, 0xd0, 0xb5, 0x88, 0x65, 0xdc, 0xf9, 0xbd, 0xee, 0x21, 0x8e, 0x51, 0xf5, 0x97, 0xd9, 0x13, 0xa5, 0xce, 0x25, 0xe0, 0xf9, 0x4b, 0x56, 0x61, 0x19, 0x31, 0xc5, }; static const unsigned char xdh_wei448_2906_sharedsecret[] = { 0x51, 0x7a, 0x8e, 0x2b, 0x66, 0xcf, 0xca, 0x84, 0x9c, 0x3c, 0xb8, 0xee, 0xe2, 0x8c, 0x45, 0x50, 0x50, 0xba, 0xa4, 0x79, 0x93, 0x40, 0xb4, 0x77, 0xfd, 0x6d, 0xa9, 0x5a, 0x99, 0x41, 0xdf, 0x92, 0xc7, 0xe4, 0x0b, 0x7d, 0xf7, 0x3f, 0x92, 0x0a, 0xe2, 0x2e, 0x5f, 0xc2, 0xd1, 0x45, 0x50, 0x49, 0x28, 0x42, 0x5e, 0x5e, 0x38, 0xc5, 0xcc, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2906 = { .name = "xdh_wei448_2906", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2906_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2906_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2906_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2906_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 323 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2907 for XDH, tcId is 324 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2907_peerpubkey[] = { 0xb6, 0x78, 0x75, 0xad, 0xd6, 0xc1, 0xf7, 0x61, 0x23, 0x4e, 0x35, 0x2b, 0x70, 0xc4, 0x1d, 0x23, 0x9d, 0xd1, 0xe5, 0x2a, 0x9f, 0xa1, 0x1e, 0x9e, 0x84, 0x52, 0x85, 0x26, 0x7f, 0x43, 0x6a, 0xc8, 0x1b, 0x79, 0x72, 0x06, 0x7e, 0x84, 0x3b, 0x03, 0xa4, 0xc5, 0x2c, 0x7a, 0x3b, 0x5a, 0xec, 0xa2, 0xfc, 0x6d, 0x18, 0x4b, 0x84, 0x38, 0xa6, 0x53, }; static const unsigned char xdh_wei448_2907_ourpubkey[] = { 0xd6, 0xa6, 0x54, 0x1b, 0x26, 0x76, 0x9c, 0x59, 0x62, 0x90, 0xc9, 0x04, 0x7d, 0xaf, 0xa9, 0xdf, 0x51, 0x28, 0x12, 0x08, 0xb1, 0x6c, 0x88, 0x0a, 0x56, 0xe0, 0xe0, 0x04, 0x4f, 0x64, 0x79, 0x20, 0xf6, 0xb2, 0xc3, 0xb9, 0x5f, 0xd9, 0x8e, 0xf3, 0x89, 0x9a, 0xd8, 0xaa, 0x47, 0x66, 0x48, 0x09, 0x93, 0x16, 0x0b, 0x9c, 0xa2, 0xf1, 0x9f, 0xff, }; static const unsigned char xdh_wei448_2907_privkey[] = { 0x50, 0x6e, 0x86, 0xb7, 0xcc, 0xa2, 0x85, 0x83, 0x14, 0x77, 0xd9, 0x22, 0xb7, 0x86, 0x2e, 0x97, 0xda, 0x29, 0x4d, 0xf3, 0x9b, 0xbc, 0x5d, 0x96, 0x78, 0xe4, 0xd8, 0x3b, 0x2f, 0xdc, 0xe5, 0x65, 0x0c, 0x91, 0x67, 0x3c, 0xfb, 0xfa, 0xfb, 0x99, 0xb0, 0x73, 0x88, 0x00, 0x5b, 0xc6, 0xf6, 0xcf, 0x77, 0x7a, 0x24, 0x42, 0xed, 0x43, 0x74, 0xcb, }; static const unsigned char xdh_wei448_2907_sharedsecret[] = { 0xee, 0xb6, 0x2c, 0x57, 0x18, 0x97, 0x17, 0x51, 0x8c, 0x4d, 0xd0, 0x68, 0x73, 0x59, 0x3e, 0x4b, 0x12, 0xa9, 0xc5, 0x08, 0x75, 0x08, 0x0f, 0x56, 0xd7, 0x81, 0xa3, 0xed, 0x3e, 0xf7, 0xd9, 0xda, 0xf3, 0x5d, 0x86, 0xc4, 0x11, 0x1a, 0x2d, 0xbe, 0x06, 0x57, 0x8f, 0xf6, 0xd3, 0xa6, 0x5d, 0xed, 0x0b, 0x18, 0x14, 0x60, 0x06, 0xcf, 0xaa, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_2907 = { .name = "xdh_wei448_2907", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2907_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2907_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2907_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2907_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 324 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2908 for XDH, tcId is 325 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2908_peerpubkey[] = { 0xe5, 0xf9, 0x76, 0x38, 0x77, 0x9e, 0x27, 0xa9, 0x73, 0x7e, 0x08, 0x21, 0xd7, 0x71, 0x15, 0x85, 0xa9, 0x3f, 0x26, 0xdd, 0x52, 0x20, 0x8e, 0xd5, 0x36, 0x37, 0xd6, 0x74, 0xec, 0xe9, 0x66, 0x4f, 0xbb, 0xf3, 0x3e, 0x1c, 0xc4, 0xa3, 0x1f, 0x64, 0x30, 0xf1, 0x27, 0xc2, 0xf6, 0x0c, 0xb7, 0x6a, 0x1d, 0xef, 0xa6, 0xb6, 0xf7, 0x52, 0x47, 0x75, }; static const unsigned char xdh_wei448_2908_ourpubkey[] = { 0x91, 0x21, 0x3d, 0x84, 0x84, 0xd8, 0xbe, 0x68, 0x26, 0x75, 0x2d, 0x03, 0x90, 0x9d, 0x6b, 0x00, 0x0b, 0x8d, 0x3b, 0x52, 0x6b, 0x22, 0x88, 0x42, 0x92, 0x9c, 0xb6, 0x88, 0xda, 0x67, 0xf7, 0x59, 0x36, 0xcf, 0x25, 0x22, 0x9d, 0x2a, 0xb7, 0xd7, 0x7a, 0x2b, 0x37, 0x1d, 0xd4, 0xfe, 0xc0, 0x9f, 0xe5, 0xc5, 0x8d, 0x35, 0x08, 0xf0, 0x3c, 0x13, }; static const unsigned char xdh_wei448_2908_privkey[] = { 0xa0, 0x45, 0x4f, 0x58, 0x1e, 0x87, 0x8d, 0x6a, 0x3e, 0x04, 0x0f, 0x47, 0x69, 0xf2, 0x6d, 0x42, 0xd4, 0xb5, 0x5c, 0x25, 0x5b, 0xdd, 0x1e, 0xb2, 0x70, 0x76, 0x5d, 0x94, 0x9c, 0x49, 0x2f, 0x1c, 0x82, 0xc4, 0xd2, 0x3f, 0xec, 0x8b, 0x72, 0xd9, 0xcb, 0xbe, 0xd2, 0xdb, 0xc4, 0x0e, 0x23, 0xeb, 0x9f, 0x2b, 0x75, 0xf4, 0x91, 0xf4, 0xe2, 0xd2, }; static const unsigned char xdh_wei448_2908_sharedsecret[] = { 0x99, 0x57, 0x23, 0x6d, 0x86, 0x1e, 0xb7, 0x81, 0xc4, 0xc2, 0xd9, 0x15, 0x71, 0xb2, 0xa7, 0xb6, 0x9a, 0x51, 0xdd, 0x7d, 0x32, 0xcb, 0x53, 0x41, 0x8c, 0x33, 0x93, 0x3b, 0x81, 0x39, 0xbe, 0x72, 0x32, 0x95, 0xd2, 0x74, 0x44, 0xe3, 0x93, 0x69, 0x8c, 0x26, 0xb2, 0xc7, 0x84, 0xeb, 0x51, 0xfb, 0x8c, 0xf5, 0x3c, 0xcd, 0x3b, 0x41, 0x47, 0xed, }; static const wycheproof_xdh_test xdh_wei448_2908 = { .name = "xdh_wei448_2908", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2908_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2908_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2908_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2908_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 325 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2909 for XDH, tcId is 326 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2909_peerpubkey[] = { 0x89, 0xc6, 0x37, 0xa3, 0x88, 0x96, 0xa8, 0xb5, 0xa3, 0xc1, 0x6e, 0x71, 0xa3, 0x5c, 0x2c, 0x18, 0xe4, 0x2d, 0x4a, 0x66, 0xd9, 0x71, 0xe3, 0x13, 0xc4, 0x62, 0xe7, 0xcc, 0x0c, 0x63, 0x2f, 0xea, 0x67, 0x0a, 0xb4, 0xc6, 0x0f, 0x49, 0xe8, 0x01, 0xd0, 0x18, 0x09, 0x70, 0x88, 0x8c, 0x33, 0x21, 0xb6, 0x61, 0xf3, 0x53, 0x1b, 0x0f, 0xe6, 0x76, }; static const unsigned char xdh_wei448_2909_ourpubkey[] = { 0xe0, 0x76, 0x8e, 0xfd, 0x9f, 0xc8, 0xd6, 0xcc, 0x1c, 0x34, 0xa6, 0x8a, 0xb3, 0xa6, 0x02, 0x3f, 0x88, 0x59, 0x76, 0x5a, 0xb3, 0x07, 0x08, 0x59, 0x92, 0x13, 0x4e, 0x75, 0x88, 0x7d, 0xea, 0x06, 0xcf, 0x03, 0x0d, 0x29, 0x8c, 0x15, 0x54, 0xa4, 0x2e, 0x37, 0x0a, 0xf5, 0x7f, 0x81, 0xf5, 0xe0, 0x35, 0x28, 0x5a, 0x0f, 0x01, 0xcf, 0xe0, 0x5a, }; static const unsigned char xdh_wei448_2909_privkey[] = { 0x54, 0xda, 0x02, 0x65, 0x68, 0xfc, 0x41, 0xef, 0x64, 0x9a, 0x51, 0xfd, 0x78, 0x40, 0x58, 0xf1, 0x91, 0x8c, 0x1a, 0x1f, 0x06, 0x98, 0xaa, 0xb9, 0xe5, 0x48, 0x6a, 0xec, 0xac, 0x85, 0x9d, 0x9b, 0xa2, 0x24, 0x38, 0x61, 0xdd, 0xfd, 0xfd, 0x63, 0x82, 0xdf, 0x20, 0xa4, 0x3b, 0xb0, 0x21, 0x65, 0xe3, 0x21, 0xc1, 0x98, 0x59, 0xc7, 0xe9, 0xdf, }; static const unsigned char xdh_wei448_2909_sharedsecret[] = { 0x0a, 0xcc, 0x1f, 0xf0, 0xe8, 0xd1, 0xef, 0xf3, 0xc7, 0x42, 0x1a, 0x8c, 0x0c, 0xdf, 0xd5, 0xa7, 0xa1, 0x48, 0xea, 0x53, 0x26, 0xd2, 0xaa, 0x7b, 0xd9, 0x7f, 0x93, 0x1f, 0xa4, 0x79, 0x16, 0xa5, 0xb6, 0x34, 0x61, 0x51, 0x35, 0x3d, 0x4f, 0x9e, 0x8e, 0xdb, 0x9e, 0xf0, 0xe9, 0xc3, 0xe3, 0x28, 0x19, 0x70, 0x77, 0x93, 0x6a, 0xa8, 0x09, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2909 = { .name = "xdh_wei448_2909", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2909_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2909_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2909_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2909_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 326 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2910 for XDH, tcId is 327 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2910_peerpubkey[] = { 0xda, 0x58, 0x1f, 0x73, 0x92, 0xf3, 0x4e, 0x3a, 0x7a, 0xe0, 0x90, 0x79, 0x50, 0x77, 0xc7, 0x61, 0x4c, 0xd2, 0x18, 0x5b, 0x8a, 0x61, 0x20, 0x3d, 0x10, 0x6e, 0xbd, 0xdd, 0x51, 0x65, 0x93, 0x61, 0x6e, 0x2c, 0xb3, 0xdd, 0x77, 0xf9, 0x77, 0x15, 0x97, 0xfc, 0xb2, 0x5b, 0xb4, 0xa9, 0xd8, 0x69, 0x88, 0x82, 0xc0, 0x33, 0xbe, 0xb9, 0xa1, 0x89, }; static const unsigned char xdh_wei448_2910_ourpubkey[] = { 0xc0, 0x1b, 0xd3, 0x3d, 0x4a, 0x9a, 0xeb, 0x7c, 0x64, 0xc1, 0x8a, 0x68, 0x02, 0x20, 0x22, 0x8d, 0x84, 0xc0, 0x73, 0x42, 0x8d, 0x53, 0xf3, 0x65, 0x8a, 0x31, 0x02, 0xb6, 0xe1, 0x00, 0xdd, 0x10, 0xdf, 0x48, 0x76, 0x65, 0xa8, 0x2d, 0xe2, 0x0b, 0xcc, 0x4b, 0xb8, 0x29, 0x93, 0x97, 0x89, 0xab, 0x42, 0x19, 0xd0, 0x4d, 0x17, 0x27, 0x7c, 0x30, }; static const unsigned char xdh_wei448_2910_privkey[] = { 0x90, 0xd9, 0xb6, 0x83, 0x57, 0xd4, 0x99, 0x59, 0x74, 0xb0, 0xbb, 0x11, 0xf5, 0x24, 0x77, 0x3c, 0xfb, 0x2e, 0x49, 0x38, 0x5e, 0x31, 0x8c, 0x03, 0x63, 0x0b, 0x73, 0x38, 0x26, 0x11, 0x5e, 0x6a, 0x5b, 0x1d, 0x73, 0xb5, 0x30, 0x69, 0x50, 0xff, 0x90, 0xb9, 0x75, 0x16, 0x11, 0x4b, 0xad, 0x3e, 0xcd, 0x68, 0x59, 0xfb, 0x63, 0x93, 0x60, 0xca, }; static const unsigned char xdh_wei448_2910_sharedsecret[] = { 0x15, 0xab, 0xca, 0xad, 0xdf, 0x6b, 0x8c, 0xcd, 0x7a, 0xab, 0x0a, 0xea, 0xea, 0x64, 0x96, 0x60, 0xff, 0xc8, 0x65, 0xe5, 0x2e, 0x33, 0x91, 0x31, 0xaa, 0x33, 0x3d, 0xdc, 0x9e, 0x34, 0x3f, 0x16, 0x02, 0xb9, 0xee, 0xd6, 0xb9, 0x00, 0x15, 0x97, 0x42, 0x1e, 0xfd, 0x24, 0x57, 0xec, 0x49, 0x5c, 0xce, 0x57, 0xd8, 0x9d, 0xb4, 0xf3, 0x45, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_2910 = { .name = "xdh_wei448_2910", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2910_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2910_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2910_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2910_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 327 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2911 for XDH, tcId is 328 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2911_peerpubkey[] = { 0x65, 0xba, 0x0d, 0xd5, 0x81, 0xdb, 0xe1, 0x7a, 0x82, 0x90, 0x6e, 0x4d, 0xc5, 0x6a, 0x09, 0xdb, 0xdd, 0x54, 0xac, 0xcd, 0x86, 0xfd, 0xa4, 0x90, 0xeb, 0x61, 0x8e, 0x77, 0x27, 0x72, 0x93, 0x53, 0x3e, 0xbc, 0x70, 0xda, 0xd7, 0x02, 0x52, 0xd3, 0xbd, 0x6a, 0x12, 0x4b, 0xfd, 0x99, 0xaa, 0x3a, 0xdb, 0x83, 0x1e, 0x83, 0xc9, 0x6e, 0xdc, 0x9f, }; static const unsigned char xdh_wei448_2911_ourpubkey[] = { 0xbd, 0x3c, 0x56, 0x08, 0xef, 0x1f, 0x39, 0x50, 0x25, 0x80, 0x3c, 0x61, 0x4e, 0xfd, 0x41, 0x20, 0x82, 0xa5, 0xf3, 0x4e, 0x5b, 0x74, 0xb8, 0x6c, 0xbb, 0xe1, 0x53, 0xa0, 0xc8, 0x86, 0xd5, 0x96, 0x16, 0xa6, 0x0c, 0x45, 0xe5, 0xca, 0x71, 0xd8, 0x11, 0x24, 0xc6, 0xe1, 0x00, 0x0e, 0x88, 0xd9, 0x06, 0xe1, 0x0a, 0x03, 0x5f, 0xb0, 0xc4, 0x20, }; static const unsigned char xdh_wei448_2911_privkey[] = { 0x50, 0x21, 0xdd, 0x11, 0x1e, 0x3c, 0x8b, 0x81, 0x29, 0xf3, 0x54, 0x79, 0x85, 0xc7, 0xf2, 0x6b, 0xf3, 0x78, 0x5c, 0xd3, 0xe0, 0x50, 0xe9, 0x44, 0x82, 0x65, 0x26, 0x1f, 0xb5, 0x8e, 0xd6, 0xc5, 0xc5, 0xaf, 0x9e, 0x68, 0x78, 0xc0, 0x46, 0x18, 0xda, 0xe7, 0xec, 0xf4, 0x55, 0x43, 0xbc, 0x40, 0xcc, 0x38, 0x02, 0x08, 0x48, 0xc2, 0x10, 0xcd, }; static const unsigned char xdh_wei448_2911_sharedsecret[] = { 0x93, 0x3c, 0xca, 0x5e, 0x01, 0xcc, 0xa2, 0x97, 0x11, 0xb3, 0xb4, 0x72, 0x9a, 0xff, 0x32, 0x3a, 0xf5, 0x8f, 0x18, 0x80, 0x17, 0xd9, 0x6c, 0x15, 0xc7, 0xd1, 0x6a, 0x07, 0x83, 0x56, 0x50, 0x7b, 0x6e, 0x9c, 0xd6, 0xe0, 0x65, 0x1d, 0x0b, 0x52, 0x9f, 0x1c, 0x2c, 0xc9, 0xb9, 0x45, 0x10, 0xb8, 0xbe, 0xb3, 0x59, 0x45, 0x45, 0x2b, 0x2b, 0x17, }; static const wycheproof_xdh_test xdh_wei448_2911 = { .name = "xdh_wei448_2911", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2911_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2911_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2911_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2911_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 328 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2912 for XDH, tcId is 329 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2912_peerpubkey[] = { 0x1b, 0x68, 0x20, 0xa3, 0xf4, 0x5e, 0xd2, 0x5f, 0xbc, 0x60, 0x05, 0x26, 0x1d, 0xfc, 0xe5, 0x7a, 0xcb, 0x5d, 0x4d, 0x82, 0xcb, 0x73, 0x4b, 0x2c, 0x35, 0xeb, 0x62, 0x6c, 0xad, 0xe1, 0xea, 0x38, 0x28, 0xfd, 0x7f, 0x6f, 0x0a, 0x32, 0xbc, 0xf7, 0x93, 0x3d, 0x93, 0x7e, 0x6d, 0x0f, 0x54, 0x9a, 0x0e, 0xda, 0x36, 0xd2, 0x41, 0x61, 0x7c, 0xaa, }; static const unsigned char xdh_wei448_2912_ourpubkey[] = { 0x7a, 0xb5, 0x63, 0xc5, 0x24, 0x3c, 0x75, 0xac, 0xb8, 0xa5, 0xd8, 0x24, 0xdf, 0x34, 0xe9, 0x01, 0x6e, 0x68, 0xf4, 0x97, 0x47, 0xe5, 0x39, 0x32, 0x4e, 0x53, 0x45, 0x40, 0x94, 0x6d, 0x57, 0xe8, 0xcf, 0x83, 0xcd, 0x99, 0x0d, 0x62, 0xbd, 0x3a, 0xf5, 0xb9, 0xee, 0x14, 0x82, 0xd0, 0xc8, 0x4e, 0xbe, 0xac, 0x3d, 0xa6, 0x71, 0x7e, 0x41, 0xd4, }; static const unsigned char xdh_wei448_2912_privkey[] = { 0x78, 0x63, 0xa4, 0x08, 0xac, 0xf7, 0xb6, 0xd5, 0x2e, 0x2c, 0xb0, 0x9e, 0x9d, 0x38, 0x05, 0xbf, 0xf4, 0x81, 0x78, 0x7a, 0x99, 0x22, 0x3a, 0xec, 0x44, 0xec, 0x22, 0x42, 0xf4, 0xd5, 0x5f, 0x2c, 0x77, 0x17, 0xb6, 0x71, 0x2a, 0xad, 0x80, 0xa8, 0x4b, 0xb7, 0xf0, 0x2b, 0xbf, 0xed, 0x3f, 0xb4, 0xde, 0x72, 0x9f, 0xc1, 0x5e, 0xc2, 0xe1, 0xd3, }; static const unsigned char xdh_wei448_2912_sharedsecret[] = { 0x05, 0x7c, 0xc2, 0xab, 0x05, 0x52, 0x3b, 0x73, 0xe7, 0x4a, 0xee, 0x31, 0x51, 0xef, 0x8d, 0xbf, 0x9e, 0x79, 0x6d, 0x68, 0x19, 0x9f, 0x69, 0x92, 0x9f, 0x95, 0x12, 0x1d, 0x29, 0xc3, 0xbf, 0x43, 0xb9, 0x1b, 0xeb, 0x74, 0x94, 0xb1, 0x70, 0x39, 0x5f, 0xdf, 0x0f, 0xa1, 0x1f, 0x44, 0x56, 0x09, 0x4e, 0x27, 0x63, 0x3f, 0x9d, 0x24, 0x0a, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2912 = { .name = "xdh_wei448_2912", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2912_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2912_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2912_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2912_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 329 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2913 for XDH, tcId is 330 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2913_peerpubkey[] = { 0xde, 0xfd, 0x0c, 0xb3, 0x99, 0x2f, 0x0a, 0x16, 0xe7, 0x58, 0x79, 0x19, 0x04, 0x44, 0x29, 0xbf, 0x1a, 0x91, 0x33, 0x30, 0xcc, 0x3e, 0x82, 0x54, 0x9a, 0xe4, 0xb8, 0x8c, 0x6b, 0x25, 0x50, 0xc8, 0x3d, 0x36, 0x4c, 0x7e, 0x52, 0x92, 0xb5, 0x91, 0x90, 0xec, 0xb2, 0x4d, 0x12, 0x01, 0x96, 0x32, 0x19, 0x55, 0x52, 0xcb, 0x98, 0x8c, 0x6a, 0xbc, }; static const unsigned char xdh_wei448_2913_ourpubkey[] = { 0x19, 0xb0, 0x81, 0xaa, 0x23, 0x34, 0x50, 0xc1, 0x12, 0x89, 0xa6, 0x30, 0xc5, 0x88, 0x76, 0xaf, 0xd5, 0x9a, 0x88, 0xab, 0x35, 0x13, 0x66, 0xfe, 0x8c, 0xce, 0xb4, 0xf7, 0x5d, 0x59, 0xfa, 0x0f, 0x66, 0x6d, 0x0e, 0x49, 0x63, 0xe8, 0x5c, 0x20, 0x96, 0xc8, 0xaf, 0x66, 0x32, 0x76, 0x4d, 0xe7, 0x8d, 0x6e, 0x2b, 0x83, 0x89, 0x6b, 0x13, 0x6b, }; static const unsigned char xdh_wei448_2913_privkey[] = { 0x58, 0x31, 0x40, 0x3b, 0xb4, 0xfe, 0x37, 0x74, 0xbc, 0xe2, 0xa7, 0x46, 0x10, 0x5c, 0x67, 0x60, 0x47, 0xee, 0x7c, 0xf6, 0x25, 0xca, 0xdb, 0xea, 0x99, 0x2b, 0x89, 0xcb, 0x5c, 0x6f, 0xd8, 0xbd, 0x43, 0xb6, 0x82, 0xf9, 0x64, 0xe7, 0xc3, 0x74, 0xda, 0xcd, 0x2d, 0xc9, 0xe6, 0x1b, 0x02, 0x0d, 0x4d, 0xa9, 0xe0, 0x35, 0xac, 0x7b, 0xf3, 0xd1, }; static const unsigned char xdh_wei448_2913_sharedsecret[] = { 0x5a, 0xbd, 0x6a, 0xa8, 0x0c, 0xfe, 0xba, 0x87, 0xfa, 0x38, 0x97, 0x14, 0x29, 0x5d, 0x16, 0xb7, 0xc0, 0x64, 0xe1, 0x60, 0x5c, 0x8d, 0xf8, 0xa3, 0xd0, 0x69, 0x46, 0x74, 0x87, 0x97, 0xae, 0x98, 0x54, 0xf7, 0x4f, 0x08, 0x96, 0x47, 0xd4, 0x69, 0x8c, 0x04, 0x8f, 0x29, 0xf9, 0x2d, 0x90, 0xc7, 0xe7, 0xbd, 0xd4, 0xf2, 0x7e, 0xf0, 0xea, 0x69, }; static const wycheproof_xdh_test xdh_wei448_2913 = { .name = "xdh_wei448_2913", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2913_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2913_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2913_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2913_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 330 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2914 for XDH, tcId is 331 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2914_peerpubkey[] = { 0x64, 0xfa, 0x39, 0x92, 0xdc, 0x42, 0x9e, 0x51, 0xcf, 0xb4, 0x47, 0xae, 0x60, 0x90, 0xbb, 0xe5, 0x39, 0xbc, 0xdc, 0xcc, 0xcf, 0xfe, 0xa8, 0xbe, 0x0c, 0x8f, 0x3f, 0x8e, 0x5f, 0x8f, 0xf7, 0x5e, 0x50, 0xb2, 0xba, 0x94, 0xf2, 0x7c, 0x30, 0x20, 0x54, 0x27, 0x87, 0x3f, 0xf9, 0x24, 0x3b, 0xaa, 0xf1, 0x62, 0xf1, 0x54, 0xa3, 0xcc, 0x1e, 0xcd, }; static const unsigned char xdh_wei448_2914_ourpubkey[] = { 0x06, 0x00, 0xde, 0x63, 0xb8, 0xbe, 0x7a, 0xf7, 0x5c, 0x56, 0xc4, 0xe7, 0x09, 0xc2, 0xe8, 0x6d, 0xf8, 0xd5, 0x3c, 0x1f, 0x76, 0x36, 0x2a, 0xf3, 0xb7, 0x6f, 0x22, 0x28, 0x06, 0xf5, 0x1c, 0xec, 0x49, 0x22, 0x2b, 0x63, 0x91, 0xac, 0xc6, 0x2b, 0xdb, 0x8e, 0xbd, 0xdb, 0x2f, 0x6e, 0x4e, 0x4c, 0x86, 0x05, 0x19, 0x8b, 0x34, 0xe3, 0x45, 0x70, }; static const unsigned char xdh_wei448_2914_privkey[] = { 0xcc, 0x56, 0x3f, 0x16, 0xc8, 0xab, 0x58, 0x4e, 0x30, 0x76, 0x0d, 0xef, 0xc2, 0x8f, 0x5f, 0x19, 0x14, 0xd2, 0x4b, 0xad, 0xf1, 0x0e, 0x5f, 0xee, 0x39, 0xb4, 0xe4, 0xdb, 0xc5, 0x86, 0x09, 0x61, 0xfd, 0x19, 0xa3, 0xf1, 0x1d, 0xd5, 0x6c, 0xf0, 0x3e, 0xd6, 0x98, 0xa8, 0xaa, 0xba, 0x08, 0xee, 0x48, 0x12, 0xb4, 0x5c, 0xba, 0x0f, 0xd6, 0xc5, }; static const unsigned char xdh_wei448_2914_sharedsecret[] = { 0xb8, 0xa3, 0x98, 0xd6, 0x29, 0x76, 0xd6, 0x5b, 0x81, 0x79, 0xd4, 0x0a, 0x5c, 0x14, 0xfd, 0xa0, 0x07, 0x6d, 0x2a, 0x9d, 0x46, 0x26, 0xde, 0xb5, 0xd7, 0x34, 0x92, 0x0c, 0x0a, 0xc4, 0xf2, 0x83, 0xe8, 0x1d, 0x49, 0xf2, 0xdd, 0x8d, 0x6b, 0x50, 0x3f, 0x11, 0xa1, 0x86, 0xe7, 0x38, 0x13, 0x9c, 0x5a, 0x14, 0x33, 0x00, 0x3a, 0x0d, 0xa7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2914 = { .name = "xdh_wei448_2914", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2914_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2914_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2914_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2914_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 331 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2915 for XDH, tcId is 332 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2915_peerpubkey[] = { 0xb1, 0x2e, 0x03, 0x9a, 0x6c, 0x92, 0x0f, 0x62, 0x6e, 0x99, 0x77, 0xdd, 0x93, 0xf0, 0x40, 0x5e, 0x30, 0x9f, 0x6d, 0x60, 0x1f, 0x51, 0xe9, 0x63, 0x26, 0x93, 0x5e, 0x6e, 0x5a, 0xc1, 0xa1, 0xda, 0xa4, 0xda, 0xfc, 0x09, 0xf9, 0xe1, 0xaa, 0x36, 0x2c, 0xa1, 0x24, 0x2a, 0xe8, 0x5c, 0xf1, 0x13, 0x39, 0xbf, 0x49, 0xc5, 0xfc, 0xdb, 0xef, 0x04, }; static const unsigned char xdh_wei448_2915_ourpubkey[] = { 0x13, 0xb7, 0xb9, 0xbd, 0x1c, 0x9b, 0x49, 0x5b, 0xa0, 0xc8, 0x76, 0xc1, 0x6f, 0x1e, 0xb1, 0x58, 0xb8, 0x12, 0x1a, 0x74, 0xa4, 0x1d, 0xe7, 0x14, 0xea, 0xf3, 0xb1, 0x37, 0x84, 0xeb, 0x79, 0x32, 0xb1, 0x12, 0x8f, 0x15, 0x1a, 0x93, 0x34, 0xb9, 0x22, 0x6d, 0x63, 0x3d, 0xca, 0x3a, 0x25, 0x45, 0xb3, 0x29, 0x27, 0xc0, 0xd6, 0x25, 0xe3, 0x1c, }; static const unsigned char xdh_wei448_2915_privkey[] = { 0x84, 0x5d, 0xb0, 0x49, 0xa0, 0x26, 0x01, 0xc8, 0xbf, 0xfc, 0xb3, 0x9a, 0x09, 0xf8, 0xa4, 0x1f, 0x59, 0xea, 0x7b, 0x7d, 0x7f, 0x9a, 0xb0, 0xac, 0x32, 0x01, 0xb6, 0xc9, 0xf5, 0x4c, 0x19, 0x00, 0x97, 0xef, 0xcc, 0x87, 0xe6, 0xfb, 0x66, 0x96, 0x9a, 0x86, 0xa4, 0x00, 0x51, 0xaf, 0x63, 0x79, 0xed, 0xa8, 0x46, 0xdb, 0x3a, 0x63, 0xd6, 0xc3, }; static const unsigned char xdh_wei448_2915_sharedsecret[] = { 0x4b, 0x85, 0x89, 0xcd, 0x37, 0x0b, 0x85, 0x1e, 0xec, 0xcd, 0x07, 0xb2, 0x25, 0x96, 0x3e, 0x2d, 0xc3, 0x55, 0x70, 0x47, 0x93, 0xa8, 0xe4, 0x4f, 0xfb, 0x73, 0x94, 0x45, 0xcc, 0x59, 0x07, 0xf4, 0x7b, 0xcd, 0xfb, 0x1e, 0x3a, 0xe4, 0x41, 0x23, 0x8d, 0x72, 0xf6, 0x0d, 0x42, 0x54, 0x4a, 0xee, 0x01, 0x2a, 0xa1, 0xcc, 0x17, 0x19, 0x5a, 0x61, }; static const wycheproof_xdh_test xdh_wei448_2915 = { .name = "xdh_wei448_2915", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2915_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2915_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2915_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2915_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 332 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2916 for XDH, tcId is 333 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2916_peerpubkey[] = { 0x11, 0x80, 0xa4, 0x67, 0xe0, 0x5c, 0x86, 0x8c, 0xa3, 0x3b, 0xd1, 0x81, 0x5d, 0x1d, 0xaa, 0x76, 0x5e, 0x98, 0x9d, 0x03, 0x8a, 0x34, 0x9c, 0xb0, 0xbe, 0x63, 0x9c, 0x85, 0x59, 0x17, 0x15, 0x40, 0xe9, 0xb4, 0x1d, 0xfc, 0x2e, 0xc8, 0xf7, 0xac, 0xb9, 0x4b, 0x92, 0x9a, 0x6d, 0x01, 0xbb, 0x9b, 0x67, 0x93, 0xe3, 0x51, 0x66, 0x97, 0x86, 0x5e, }; static const unsigned char xdh_wei448_2916_ourpubkey[] = { 0x6c, 0x85, 0x4c, 0x27, 0xc1, 0x6f, 0x03, 0x51, 0x1e, 0xa4, 0x60, 0x58, 0xc2, 0xa9, 0xc2, 0x6d, 0x0c, 0xf1, 0x24, 0x03, 0x3a, 0x55, 0x73, 0x73, 0x32, 0xdc, 0xf0, 0x3e, 0x4a, 0xa0, 0x30, 0xa4, 0xa7, 0x8c, 0x95, 0x7b, 0xb5, 0xf7, 0x0f, 0x0a, 0xac, 0x90, 0x3f, 0x08, 0x31, 0x52, 0x14, 0x6d, 0xa2, 0x51, 0x4e, 0x09, 0xfd, 0x08, 0x54, 0x2d, }; static const unsigned char xdh_wei448_2916_privkey[] = { 0x50, 0x51, 0x7d, 0x38, 0x72, 0x02, 0x9a, 0x98, 0xe9, 0xdc, 0x37, 0x49, 0x72, 0x08, 0xc0, 0xe8, 0xba, 0x00, 0x51, 0xa8, 0x51, 0x78, 0x41, 0xfb, 0x93, 0xcd, 0xa1, 0x64, 0x5c, 0xbf, 0xc8, 0x35, 0xab, 0x3f, 0x6e, 0x53, 0xd5, 0x70, 0xb5, 0xe2, 0x80, 0xd3, 0xa7, 0xcc, 0x16, 0x64, 0x1e, 0x64, 0xe1, 0x46, 0xcd, 0x7a, 0x4d, 0x70, 0x1b, 0xd3, }; static const unsigned char xdh_wei448_2916_sharedsecret[] = { 0x9f, 0xff, 0x02, 0x11, 0xe4, 0x00, 0x6e, 0xe0, 0x37, 0xf7, 0xbd, 0xa5, 0x10, 0x57, 0xac, 0x9f, 0x97, 0x3c, 0xf2, 0x11, 0x43, 0x59, 0xad, 0xb8, 0xb0, 0x94, 0x6c, 0xee, 0x04, 0x36, 0x2f, 0x22, 0x50, 0xc8, 0x41, 0x73, 0xba, 0xf0, 0xdb, 0xcd, 0xf8, 0xf0, 0xf1, 0x8f, 0xcc, 0x37, 0x09, 0x81, 0xef, 0xcb, 0x68, 0x41, 0x8d, 0xda, 0x37, 0x36, }; static const wycheproof_xdh_test xdh_wei448_2916 = { .name = "xdh_wei448_2916", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2916_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2916_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2916_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2916_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 333 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2917 for XDH, tcId is 334 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2917_peerpubkey[] = { 0xbe, 0xbf, 0xf6, 0xf3, 0xa3, 0xa1, 0xf1, 0x68, 0x1a, 0x15, 0x47, 0x91, 0x2e, 0x8b, 0xa8, 0xf1, 0x80, 0x83, 0x56, 0x59, 0xf1, 0x66, 0x7c, 0xc2, 0x4f, 0x3f, 0xb3, 0x56, 0xc9, 0xb2, 0xb4, 0xb8, 0x5d, 0x9e, 0xf9, 0x56, 0x1e, 0x21, 0x0a, 0x8c, 0x74, 0xb6, 0xc0, 0xaa, 0x07, 0xee, 0xa6, 0x44, 0xe3, 0x06, 0x33, 0xdf, 0x02, 0x83, 0x86, 0x90, }; static const unsigned char xdh_wei448_2917_ourpubkey[] = { 0x20, 0xdf, 0x9b, 0xab, 0x2d, 0xb1, 0x6d, 0x91, 0x04, 0x46, 0xcb, 0x30, 0x92, 0x19, 0xec, 0xef, 0x1e, 0x18, 0x97, 0xdc, 0x36, 0xfc, 0xf0, 0x77, 0xa1, 0xbe, 0x85, 0x97, 0x29, 0xa4, 0xce, 0x3b, 0xc1, 0x99, 0xd9, 0xbc, 0x1d, 0x04, 0x8f, 0xcb, 0xdf, 0x06, 0xfa, 0xd0, 0x8b, 0x5b, 0xee, 0x63, 0x1d, 0x6c, 0x17, 0xd2, 0x2f, 0xfe, 0x79, 0x6c, }; static const unsigned char xdh_wei448_2917_privkey[] = { 0xcc, 0x01, 0x12, 0x81, 0xae, 0x30, 0xb6, 0x17, 0xad, 0x79, 0x23, 0xaa, 0xce, 0xe0, 0x72, 0xfd, 0x5f, 0x9d, 0x1d, 0xa0, 0x55, 0xee, 0x7b, 0x60, 0x52, 0xcc, 0x03, 0xf7, 0x9f, 0x99, 0xc8, 0x8e, 0xec, 0xa7, 0xb5, 0xee, 0x65, 0xd8, 0x56, 0x23, 0x64, 0x2c, 0x4e, 0x92, 0xd4, 0x0b, 0xb8, 0x18, 0x50, 0xfc, 0x27, 0x0c, 0x61, 0x6f, 0x43, 0xda, }; static const unsigned char xdh_wei448_2917_sharedsecret[] = { 0x89, 0x53, 0x8a, 0xc4, 0x75, 0xd4, 0x4c, 0xf7, 0x0e, 0xa5, 0x48, 0x45, 0x16, 0x35, 0x69, 0xb7, 0xa4, 0x6f, 0x28, 0x05, 0x6b, 0xf0, 0xb0, 0x16, 0x4b, 0x76, 0x6f, 0xc9, 0x41, 0xb2, 0x3e, 0x92, 0xb9, 0x9d, 0x6e, 0xc5, 0x39, 0x1e, 0x2e, 0xb9, 0xd7, 0xf1, 0xd0, 0x4c, 0xab, 0xd6, 0x26, 0x86, 0xd2, 0xde, 0x74, 0xa2, 0xd3, 0x57, 0x02, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_2917 = { .name = "xdh_wei448_2917", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2917_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2917_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2917_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2917_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 334 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2918 for XDH, tcId is 335 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2918_peerpubkey[] = { 0x23, 0x55, 0xaa, 0x15, 0x22, 0x36, 0x45, 0x1f, 0xde, 0xe7, 0xa5, 0xa3, 0xb8, 0xb4, 0x38, 0x65, 0x63, 0x68, 0xe6, 0xc4, 0x92, 0xf7, 0x4f, 0x7d, 0x72, 0xc7, 0x06, 0xa7, 0x8b, 0xc6, 0x6b, 0x4a, 0xdb, 0xaa, 0xc8, 0xfb, 0x73, 0xfc, 0xe3, 0xb5, 0x90, 0x6e, 0xa1, 0x8c, 0xd5, 0xc2, 0x47, 0xc1, 0xc9, 0xce, 0xfb, 0x3f, 0x36, 0xd6, 0x8b, 0x0c, }; static const unsigned char xdh_wei448_2918_ourpubkey[] = { 0xcf, 0x20, 0xbe, 0xb0, 0x6d, 0x6b, 0xfd, 0x56, 0x2c, 0xeb, 0x27, 0x0b, 0x6a, 0x50, 0xb7, 0x0d, 0xc0, 0xa4, 0xa7, 0x29, 0x9d, 0x75, 0xd8, 0xcf, 0x64, 0x87, 0xc8, 0x91, 0x3a, 0x31, 0x84, 0x6d, 0x50, 0xca, 0x63, 0xe5, 0x96, 0x13, 0xbc, 0x80, 0x01, 0x3c, 0xcc, 0x73, 0x2d, 0x9a, 0xbc, 0x2c, 0xdf, 0xee, 0x0d, 0xef, 0x7f, 0xe4, 0x01, 0x99, }; static const unsigned char xdh_wei448_2918_privkey[] = { 0x50, 0xd4, 0x8c, 0x9d, 0x35, 0x2d, 0x66, 0xbc, 0x02, 0x8a, 0x4b, 0x62, 0x1b, 0xd4, 0xd5, 0xa5, 0x35, 0xef, 0x0c, 0xdd, 0xac, 0xe9, 0xfd, 0xb4, 0x30, 0xab, 0x93, 0xd3, 0xdf, 0xd5, 0xe8, 0x97, 0x88, 0x28, 0xb1, 0xaf, 0x6f, 0xef, 0xfe, 0x7d, 0xb8, 0xf0, 0x83, 0xf3, 0x01, 0x4d, 0x4d, 0xc9, 0x15, 0xd6, 0x96, 0xa4, 0x9c, 0xa3, 0x5b, 0xcf, }; static const unsigned char xdh_wei448_2918_sharedsecret[] = { 0x7b, 0xa0, 0xd3, 0x22, 0x86, 0xc0, 0x48, 0x7c, 0x25, 0x7c, 0x80, 0x3b, 0xa9, 0xd3, 0x51, 0xcd, 0x29, 0xbe, 0xfa, 0x9f, 0xc7, 0x80, 0x82, 0x28, 0x47, 0xa1, 0x79, 0xd2, 0xd0, 0x93, 0x92, 0xde, 0xe6, 0x53, 0xfc, 0x73, 0x1c, 0x4b, 0xaf, 0x1f, 0xcb, 0x4a, 0xc0, 0xdb, 0x86, 0x73, 0xba, 0x92, 0x75, 0x21, 0x37, 0x50, 0x90, 0x7d, 0x20, 0xc1, }; static const wycheproof_xdh_test xdh_wei448_2918 = { .name = "xdh_wei448_2918", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2918_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2918_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2918_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2918_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 335 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2919 for XDH, tcId is 336 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2919_peerpubkey[] = { 0xf9, 0x89, 0xfb, 0x50, 0x94, 0xb0, 0x71, 0xe7, 0x56, 0x0e, 0x7f, 0xf7, 0x19, 0xd5, 0x58, 0xaf, 0x6a, 0x52, 0x56, 0x7d, 0x4c, 0x0d, 0xa9, 0x08, 0xc0, 0x77, 0x77, 0x02, 0x9d, 0x90, 0xf6, 0xc9, 0x76, 0x13, 0x41, 0x8c, 0x89, 0xb3, 0xba, 0x5c, 0x18, 0x83, 0x91, 0x21, 0x59, 0xf5, 0xb3, 0xcc, 0x15, 0xb9, 0xee, 0xe7, 0xee, 0x99, 0xfb, 0x0f, }; static const unsigned char xdh_wei448_2919_ourpubkey[] = { 0x25, 0x31, 0x61, 0xc9, 0xfc, 0xc0, 0xba, 0x64, 0x9b, 0xe6, 0xad, 0xdb, 0x08, 0xe8, 0xac, 0xdd, 0x3b, 0x96, 0xff, 0xdb, 0xe8, 0x07, 0x84, 0x01, 0xd3, 0xe2, 0x65, 0xa3, 0x83, 0xf0, 0xa5, 0xfc, 0x10, 0xdb, 0x59, 0xc1, 0x84, 0xec, 0x58, 0x50, 0xc0, 0xcd, 0x71, 0xa6, 0x4b, 0x96, 0x69, 0xae, 0x21, 0x1d, 0xb8, 0xd1, 0x91, 0xf0, 0xda, 0x25, }; static const unsigned char xdh_wei448_2919_privkey[] = { 0xa0, 0xa6, 0x53, 0x86, 0x43, 0x52, 0x9a, 0x71, 0x12, 0x5c, 0xbd, 0xe7, 0x41, 0x1d, 0x4d, 0x0c, 0x6d, 0x93, 0xf0, 0x6c, 0x3f, 0xd9, 0x25, 0x85, 0x7b, 0xe3, 0x97, 0xfb, 0x8a, 0x09, 0x63, 0x08, 0x6e, 0xd1, 0xec, 0x2c, 0xc3, 0xaa, 0xc4, 0x55, 0xd7, 0xe5, 0x31, 0x9c, 0xbc, 0x3b, 0x9d, 0x61, 0xbc, 0xbc, 0x04, 0xec, 0xaa, 0xba, 0x1b, 0xde, }; static const unsigned char xdh_wei448_2919_sharedsecret[] = { 0xf2, 0xb5, 0x2d, 0x42, 0x22, 0x4f, 0x2e, 0xa8, 0x6a, 0xa9, 0x69, 0x79, 0xb8, 0x0e, 0xe6, 0x93, 0x91, 0xab, 0x04, 0x2d, 0x8b, 0xd6, 0xdb, 0xaa, 0x2c, 0xec, 0x68, 0x00, 0x16, 0x60, 0x6e, 0xa3, 0x45, 0x83, 0xe5, 0xb4, 0x61, 0xfe, 0x38, 0xb9, 0xdf, 0x61, 0x61, 0xc8, 0xa1, 0xa4, 0x3f, 0xb4, 0xfb, 0x88, 0x0b, 0xa4, 0x60, 0xaf, 0x71, 0x27, }; static const wycheproof_xdh_test xdh_wei448_2919 = { .name = "xdh_wei448_2919", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2919_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2919_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2919_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2919_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 336 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2920 for XDH, tcId is 337 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2920_peerpubkey[] = { 0x69, 0x74, 0x07, 0xb0, 0xaf, 0xaf, 0x40, 0x10, 0x7c, 0x7c, 0x5f, 0x26, 0x4c, 0xd8, 0xa7, 0x03, 0x0c, 0x71, 0x5c, 0x57, 0x6e, 0x7d, 0x83, 0xc4, 0xf5, 0xb6, 0x92, 0xfc, 0x30, 0xf8, 0x47, 0x1e, 0x25, 0xeb, 0xd8, 0x95, 0x5f, 0x3f, 0x5a, 0x74, 0xc4, 0x97, 0x0d, 0x41, 0x19, 0xa3, 0xe9, 0xbd, 0x85, 0x3f, 0xc3, 0xc5, 0x89, 0xbc, 0xe1, 0x19, }; static const unsigned char xdh_wei448_2920_ourpubkey[] = { 0x00, 0xed, 0xd6, 0x16, 0xe0, 0x2d, 0xfa, 0xac, 0x3b, 0x80, 0xd0, 0xc3, 0x1d, 0xa5, 0x73, 0x1c, 0xd5, 0x5f, 0x3d, 0x1e, 0x5d, 0x28, 0xb3, 0x07, 0xe7, 0xb6, 0x95, 0xa7, 0xab, 0x8e, 0xea, 0xe5, 0x27, 0x20, 0xe4, 0x1c, 0x3d, 0x11, 0xba, 0x53, 0x18, 0x2a, 0x49, 0x4d, 0xed, 0x08, 0x36, 0x1f, 0x07, 0xb9, 0x0a, 0x5d, 0x56, 0xc1, 0x89, 0x56, }; static const unsigned char xdh_wei448_2920_privkey[] = { 0x84, 0x87, 0x3d, 0xf6, 0xb5, 0xe1, 0xbf, 0xe2, 0x6a, 0x39, 0xe2, 0x5c, 0xcc, 0xab, 0x3e, 0xa7, 0xee, 0xbf, 0xbe, 0xad, 0x47, 0x5d, 0x0f, 0xa2, 0x51, 0x4b, 0xe6, 0x8a, 0x11, 0x1e, 0x4c, 0xec, 0x6d, 0xc9, 0xa3, 0x40, 0x40, 0x99, 0xb8, 0x15, 0xde, 0x59, 0x5c, 0x5b, 0xa2, 0x3d, 0x78, 0x90, 0x58, 0x3c, 0xcb, 0x2c, 0x81, 0xd2, 0x72, 0xd4, }; static const unsigned char xdh_wei448_2920_sharedsecret[] = { 0x20, 0xfe, 0x01, 0x00, 0xaf, 0xdd, 0x1f, 0xe9, 0xd3, 0x41, 0x34, 0xfd, 0xcf, 0xd9, 0x59, 0x0a, 0xc1, 0x5e, 0x98, 0x0d, 0xf8, 0x90, 0x05, 0xf4, 0x87, 0xbb, 0xae, 0x45, 0x19, 0x8c, 0x20, 0xc2, 0xea, 0x02, 0x71, 0x01, 0xd5, 0x5d, 0xc3, 0xfe, 0xf7, 0xb6, 0x80, 0x04, 0xb5, 0x12, 0x45, 0xef, 0x62, 0xa3, 0x73, 0xc9, 0xe2, 0x35, 0xc1, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2920 = { .name = "xdh_wei448_2920", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2920_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2920_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2920_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2920_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 337 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2921 for XDH, tcId is 338 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2921_peerpubkey[] = { 0xdb, 0xe0, 0xa6, 0xb7, 0xd0, 0x7a, 0x46, 0x1a, 0x90, 0xf3, 0xcb, 0x09, 0xed, 0xa8, 0x44, 0xe2, 0x41, 0xf2, 0x15, 0x3a, 0x9c, 0x34, 0xe3, 0xa9, 0x00, 0xcc, 0xbd, 0xd5, 0xcb, 0x73, 0xd0, 0x88, 0x98, 0xdb, 0x2c, 0x5e, 0xb4, 0x3f, 0x81, 0xd1, 0x54, 0xb9, 0xb2, 0xba, 0x95, 0x40, 0xa5, 0xf6, 0x65, 0xde, 0x20, 0x4f, 0x28, 0xb9, 0xf4, 0x98, }; static const unsigned char xdh_wei448_2921_ourpubkey[] = { 0xfa, 0x73, 0x7f, 0x61, 0x10, 0x59, 0x97, 0xf9, 0x63, 0x7e, 0xf8, 0x5f, 0x3b, 0xa9, 0x5e, 0xf7, 0xb3, 0xad, 0xe5, 0x59, 0xdb, 0x7b, 0x09, 0xf8, 0xf7, 0xa0, 0xc8, 0x27, 0x8c, 0xdd, 0xf7, 0x72, 0x8e, 0xc8, 0x5a, 0xff, 0xf2, 0x00, 0x8d, 0x07, 0x7e, 0x88, 0x24, 0xe9, 0x7d, 0x85, 0x78, 0x32, 0x56, 0xb7, 0xb4, 0x35, 0xb8, 0xde, 0x94, 0x82, }; static const unsigned char xdh_wei448_2921_privkey[] = { 0x64, 0x85, 0x25, 0x2a, 0xeb, 0x24, 0x4c, 0x87, 0x22, 0xae, 0xeb, 0x74, 0x77, 0xe2, 0xc6, 0xa6, 0xab, 0x33, 0x87, 0x63, 0xb7, 0xa3, 0x05, 0x7a, 0xee, 0x86, 0x7b, 0x4b, 0x2d, 0x6d, 0xa2, 0xc3, 0x34, 0xf6, 0x28, 0x93, 0x69, 0x30, 0x48, 0x9c, 0x77, 0xd5, 0xa5, 0xf7, 0xf4, 0x62, 0xf9, 0x36, 0x3b, 0x9c, 0xfc, 0x9e, 0x31, 0x40, 0x9a, 0xdf, }; static const unsigned char xdh_wei448_2921_sharedsecret[] = { 0xb2, 0x50, 0xf4, 0x32, 0xd3, 0xd2, 0xd6, 0x6c, 0xd1, 0x75, 0xaa, 0x7d, 0xbe, 0x0b, 0x3a, 0x97, 0xf7, 0x45, 0x39, 0xb1, 0x82, 0x03, 0x0b, 0xd0, 0xd1, 0x4d, 0xa5, 0x47, 0xc2, 0xb7, 0xd6, 0x30, 0x97, 0xb3, 0x01, 0x2a, 0xfe, 0x41, 0x45, 0x25, 0x81, 0xa9, 0x8e, 0x17, 0x85, 0xe1, 0x1a, 0xc1, 0x07, 0xdc, 0x97, 0x85, 0x4b, 0x16, 0xdd, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_2921 = { .name = "xdh_wei448_2921", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2921_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2921_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2921_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2921_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 338 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2922 for XDH, tcId is 339 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2922_peerpubkey[] = { 0xd4, 0x92, 0x85, 0x11, 0x28, 0x15, 0x6c, 0xd6, 0x75, 0xb4, 0xa4, 0x0d, 0x6d, 0x69, 0x2e, 0xd5, 0x9f, 0x81, 0x53, 0xb8, 0x12, 0x70, 0x29, 0xcd, 0xf2, 0x4a, 0x09, 0x0a, 0x3f, 0x19, 0xee, 0x29, 0xcd, 0x8e, 0xf7, 0x2e, 0xbd, 0x50, 0xa2, 0x13, 0x93, 0x4e, 0xba, 0x5e, 0x02, 0x3a, 0x28, 0x93, 0xae, 0x34, 0x23, 0x38, 0x79, 0xb4, 0x69, 0xa2, }; static const unsigned char xdh_wei448_2922_ourpubkey[] = { 0x8a, 0xeb, 0x43, 0x1b, 0x76, 0x92, 0xe4, 0x3a, 0x33, 0x0d, 0x0a, 0xd4, 0xba, 0xe3, 0x32, 0x10, 0xac, 0x73, 0xb0, 0x68, 0xf5, 0x8e, 0xeb, 0x2c, 0xc7, 0x6c, 0x8c, 0x0a, 0x8e, 0x9e, 0x76, 0xcc, 0x80, 0xcd, 0x34, 0xfc, 0x8d, 0x18, 0x3a, 0xbf, 0x7b, 0x5c, 0xbc, 0xbb, 0x2a, 0x42, 0xcb, 0xbe, 0x02, 0x41, 0x04, 0x2d, 0x21, 0x4f, 0x53, 0x5c, }; static const unsigned char xdh_wei448_2922_privkey[] = { 0xe4, 0x81, 0x8a, 0x88, 0xbc, 0x9c, 0x3e, 0xd2, 0x5b, 0xa5, 0x2f, 0x10, 0x60, 0x5c, 0x9e, 0x4c, 0x75, 0x44, 0x70, 0x52, 0x8f, 0x56, 0xc9, 0xe0, 0x2b, 0x03, 0xd3, 0x6e, 0x0c, 0xa9, 0x45, 0x74, 0xd3, 0x3d, 0x71, 0x7b, 0x3b, 0x14, 0x15, 0x54, 0x4d, 0xa3, 0x1e, 0xed, 0xe1, 0x25, 0x4e, 0x8e, 0xee, 0xcf, 0x92, 0x9c, 0x4f, 0x1a, 0x96, 0xcf, }; static const unsigned char xdh_wei448_2922_sharedsecret[] = { 0x4f, 0x4b, 0x68, 0x0d, 0x42, 0x5b, 0xf9, 0xca, 0x41, 0xf9, 0xde, 0x0a, 0xcd, 0x0f, 0xac, 0x23, 0x26, 0x57, 0xec, 0xa4, 0xf2, 0x90, 0x55, 0x38, 0x6b, 0xe8, 0xc4, 0x1e, 0x92, 0xe0, 0xb8, 0x95, 0x28, 0xde, 0x17, 0xd3, 0x4a, 0xef, 0x44, 0x28, 0xd3, 0x11, 0x6f, 0xf7, 0x6b, 0xb5, 0xab, 0x0f, 0x4a, 0x28, 0xfc, 0x0e, 0x63, 0xdb, 0xb8, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2922 = { .name = "xdh_wei448_2922", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2922_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2922_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2922_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2922_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 339 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2923 for XDH, tcId is 340 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2923_peerpubkey[] = { 0x9d, 0x74, 0xeb, 0x1e, 0x65, 0xb4, 0x98, 0x59, 0xff, 0xaa, 0x71, 0x1c, 0xa3, 0x35, 0x59, 0x4f, 0x5e, 0x86, 0xda, 0x02, 0x3e, 0x2a, 0x3f, 0x8b, 0x7f, 0x92, 0x93, 0x88, 0x37, 0x5f, 0x61, 0xb4, 0x05, 0xa0, 0xa8, 0x79, 0xfc, 0x05, 0xa1, 0x87, 0xf1, 0x3c, 0xb2, 0x99, 0xed, 0xa9, 0xa8, 0x0d, 0x14, 0x4d, 0xd2, 0x88, 0x59, 0xe0, 0x9d, 0x25, }; static const unsigned char xdh_wei448_2923_ourpubkey[] = { 0xba, 0xc0, 0x52, 0x79, 0xb2, 0x86, 0xe2, 0xf6, 0x25, 0x78, 0x53, 0x74, 0xed, 0xe9, 0xb8, 0xf0, 0xfd, 0xa3, 0x5e, 0x24, 0xdc, 0x54, 0x25, 0x75, 0xd0, 0xd2, 0x7e, 0xea, 0x76, 0xb1, 0x99, 0x15, 0xca, 0xc5, 0xa5, 0x0b, 0x78, 0x3a, 0x00, 0xfc, 0x2a, 0xbd, 0x44, 0x13, 0xd8, 0x96, 0x65, 0xa8, 0x77, 0x95, 0xc2, 0xc9, 0xcb, 0xa2, 0xab, 0xb7, }; static const unsigned char xdh_wei448_2923_privkey[] = { 0xbc, 0xd5, 0x1b, 0x5d, 0x0b, 0xda, 0xc7, 0xbe, 0x40, 0x7c, 0xa2, 0x0f, 0x96, 0x34, 0x8e, 0x7e, 0xc7, 0xb5, 0x06, 0xe3, 0x71, 0x99, 0x40, 0xdf, 0x32, 0x10, 0x37, 0x73, 0x0b, 0x32, 0x3b, 0xa2, 0x31, 0x65, 0x35, 0xd4, 0x0a, 0xd2, 0xc2, 0x06, 0x3c, 0xfa, 0x00, 0x91, 0x0d, 0x14, 0x3c, 0x80, 0x5a, 0xd4, 0x0f, 0x9f, 0x6a, 0xcd, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_2923_sharedsecret[] = { 0xd3, 0xd6, 0x94, 0xe1, 0x19, 0xae, 0x51, 0xe4, 0x76, 0xf4, 0x1a, 0x09, 0xf7, 0x17, 0xd3, 0xcd, 0xb1, 0x40, 0x3c, 0xc2, 0x3a, 0x5c, 0x09, 0x0e, 0x20, 0x86, 0x83, 0x9b, 0x47, 0xba, 0x61, 0xe8, 0x35, 0x69, 0x8d, 0xdd, 0xbd, 0xd4, 0xbb, 0x0e, 0x24, 0x58, 0x03, 0x0a, 0x84, 0xd7, 0x00, 0x66, 0xd8, 0x52, 0xa1, 0x04, 0x99, 0x11, 0xf0, 0x44, }; static const wycheproof_xdh_test xdh_wei448_2923 = { .name = "xdh_wei448_2923", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2923_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2923_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2923_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2923_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 340 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2924 for XDH, tcId is 341 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2924_peerpubkey[] = { 0x9e, 0x56, 0x61, 0xc3, 0x63, 0xc4, 0x50, 0x84, 0x27, 0x51, 0xf7, 0x48, 0x0c, 0x92, 0x15, 0xeb, 0x4a, 0x17, 0xdc, 0x97, 0xfe, 0xec, 0x90, 0xb8, 0x22, 0x86, 0xcd, 0x30, 0x38, 0x57, 0x72, 0x90, 0x3b, 0x0c, 0x23, 0xa8, 0x70, 0xff, 0xe5, 0xd8, 0x92, 0xa3, 0xef, 0xba, 0x21, 0x4c, 0xc8, 0x38, 0x5f, 0xf5, 0x95, 0x15, 0x88, 0x90, 0xdf, 0x31, }; static const unsigned char xdh_wei448_2924_ourpubkey[] = { 0xbd, 0x42, 0x0d, 0x99, 0x92, 0x83, 0x15, 0xb5, 0x88, 0xbe, 0xf2, 0x2a, 0x45, 0x2a, 0x62, 0xd6, 0xfc, 0x27, 0xc2, 0x2d, 0x5a, 0x3c, 0xa4, 0x11, 0x03, 0x3c, 0x40, 0xf4, 0xf7, 0xc9, 0xcc, 0xd0, 0xe3, 0x1d, 0xb5, 0xf2, 0xf2, 0x80, 0x7e, 0xb9, 0x89, 0x17, 0xe3, 0xb2, 0xd0, 0x40, 0xb7, 0x29, 0x75, 0x0d, 0x36, 0x08, 0xf5, 0xde, 0x08, 0xa9, }; static const unsigned char xdh_wei448_2924_privkey[] = { 0x14, 0x61, 0x8b, 0x40, 0xe7, 0xf8, 0x5c, 0x20, 0x61, 0xcf, 0xd1, 0xb3, 0x21, 0xb9, 0x63, 0xfe, 0x0e, 0x8a, 0x54, 0x93, 0xc6, 0x72, 0xfd, 0x2f, 0xa6, 0xa6, 0xd1, 0x0c, 0x2c, 0xec, 0x76, 0xac, 0x8c, 0xbb, 0x06, 0x27, 0x4c, 0xf3, 0x05, 0x8b, 0xe3, 0xac, 0x51, 0xc9, 0x63, 0x39, 0xff, 0x97, 0x20, 0x45, 0x74, 0x56, 0x4d, 0x17, 0x1f, 0xc7, }; static const unsigned char xdh_wei448_2924_sharedsecret[] = { 0x67, 0xc5, 0x4f, 0xb6, 0x77, 0xcc, 0x4c, 0x02, 0xc3, 0x24, 0xe1, 0xd7, 0xf0, 0xae, 0x06, 0x8a, 0x25, 0x55, 0xd1, 0x53, 0xd7, 0x05, 0x17, 0xbc, 0x1a, 0xb9, 0x03, 0x1d, 0x45, 0xa4, 0xa4, 0x41, 0x5b, 0xe0, 0xce, 0xbb, 0x35, 0x76, 0x56, 0xb9, 0x7c, 0xf5, 0xb5, 0x17, 0x6b, 0x3a, 0xea, 0x61, 0xac, 0x4d, 0xb8, 0x2d, 0xf3, 0x24, 0x11, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_2924 = { .name = "xdh_wei448_2924", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2924_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2924_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2924_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2924_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 341 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2925 for XDH, tcId is 342 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2925_peerpubkey[] = { 0xd0, 0xd2, 0x16, 0xc1, 0x49, 0xe7, 0xe5, 0x36, 0xaa, 0x68, 0x99, 0xb9, 0x8d, 0x5b, 0x04, 0xf3, 0xea, 0xe7, 0x3a, 0x38, 0xff, 0xe0, 0xc6, 0x2d, 0x90, 0x80, 0xfc, 0x6d, 0x63, 0xdd, 0xac, 0xcd, 0x3a, 0x9b, 0xf5, 0xf5, 0x4c, 0x5c, 0xe5, 0x8d, 0x96, 0x11, 0x96, 0xc5, 0xdf, 0x28, 0xbd, 0x3b, 0x7e, 0x39, 0x98, 0xb8, 0x52, 0xe3, 0x5d, 0x89, }; static const unsigned char xdh_wei448_2925_ourpubkey[] = { 0x07, 0x05, 0xe2, 0x88, 0x20, 0xbf, 0x48, 0xb1, 0x02, 0x4c, 0x58, 0x4b, 0xb8, 0x1b, 0x85, 0x40, 0xf8, 0x12, 0xb2, 0xed, 0x8b, 0xbc, 0x57, 0xf5, 0xfa, 0xdd, 0x1b, 0xf0, 0x2c, 0xc5, 0xd3, 0x80, 0x3f, 0x34, 0x06, 0x6c, 0x49, 0xa2, 0xe2, 0x6d, 0x77, 0x88, 0x3f, 0x8f, 0x79, 0xb8, 0x87, 0x24, 0x21, 0xd1, 0x06, 0xbe, 0x8e, 0xc0, 0x91, 0x89, }; static const unsigned char xdh_wei448_2925_privkey[] = { 0x80, 0x74, 0x7b, 0xd0, 0xed, 0x71, 0xf6, 0x7e, 0xbc, 0xbc, 0x6c, 0x91, 0x53, 0x6c, 0x09, 0xce, 0x12, 0x4b, 0xf5, 0x4c, 0xbd, 0x89, 0x83, 0xab, 0x5f, 0xec, 0xdd, 0xba, 0xc6, 0x58, 0x23, 0x9c, 0xfb, 0x51, 0x5c, 0xd8, 0x17, 0xd3, 0xe8, 0x20, 0x8f, 0x6d, 0x0b, 0x68, 0x76, 0xb2, 0x7c, 0x31, 0x8a, 0xf8, 0xcd, 0x0d, 0xd1, 0xe5, 0x21, 0xc2, }; static const unsigned char xdh_wei448_2925_sharedsecret[] = { 0xc3, 0x9e, 0xcd, 0x28, 0x5b, 0x58, 0x41, 0xef, 0x62, 0x62, 0x0d, 0xb8, 0xfe, 0x8e, 0x76, 0x9b, 0x19, 0x5a, 0x04, 0xe7, 0xd0, 0xe8, 0x28, 0xee, 0x19, 0x09, 0x68, 0xca, 0x96, 0x7d, 0x49, 0x5d, 0x85, 0xfe, 0xf5, 0xd5, 0x20, 0x21, 0xaf, 0x32, 0x15, 0xb3, 0xb9, 0xf4, 0x65, 0x04, 0xc7, 0xeb, 0xdb, 0x14, 0x57, 0xb4, 0xcf, 0xe5, 0xab, 0x89, }; static const wycheproof_xdh_test xdh_wei448_2925 = { .name = "xdh_wei448_2925", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2925_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2925_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2925_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2925_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 342 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2926 for XDH, tcId is 343 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2926_peerpubkey[] = { 0xc7, 0xc1, 0x42, 0xb6, 0x8d, 0x6d, 0xfa, 0xde, 0x01, 0x8c, 0xf3, 0xf1, 0xd4, 0x12, 0xb8, 0x29, 0xf2, 0x20, 0x95, 0x11, 0x95, 0x30, 0x02, 0x0c, 0x2f, 0x22, 0x3e, 0x59, 0x9e, 0xc4, 0x2c, 0x42, 0x87, 0x5f, 0xd7, 0xad, 0xd6, 0x65, 0x30, 0xd0, 0xf9, 0x07, 0x2d, 0xb2, 0x66, 0xa3, 0x9f, 0x98, 0x8e, 0x57, 0xd9, 0x9f, 0xf1, 0xc3, 0xc5, 0x90, }; static const unsigned char xdh_wei448_2926_ourpubkey[] = { 0xea, 0x2e, 0xa5, 0xc0, 0x7b, 0xaa, 0x73, 0xf4, 0x0f, 0x74, 0x2b, 0xbf, 0xe1, 0x2b, 0x89, 0x68, 0xe2, 0xdc, 0x5a, 0x52, 0x98, 0x88, 0x60, 0xc1, 0x42, 0x1c, 0xf2, 0x3b, 0x2f, 0x03, 0x5d, 0x11, 0xa5, 0x4d, 0xdf, 0x02, 0x6b, 0x48, 0x97, 0x44, 0xe9, 0x16, 0xd2, 0xec, 0x2d, 0xfb, 0xab, 0x54, 0x59, 0x8c, 0xdb, 0x6d, 0xff, 0xef, 0xce, 0x69, }; static const unsigned char xdh_wei448_2926_privkey[] = { 0x5c, 0x77, 0x5f, 0xe0, 0x85, 0x8a, 0x81, 0x26, 0xc8, 0xd3, 0xc4, 0x6c, 0x91, 0x75, 0xeb, 0x89, 0x4b, 0x44, 0xb6, 0x09, 0x83, 0xbf, 0x1a, 0xaa, 0xa9, 0x96, 0x41, 0x01, 0x11, 0x7b, 0xd0, 0x16, 0xb2, 0x80, 0x93, 0x9f, 0xe0, 0xc2, 0xfd, 0x12, 0x9b, 0xa3, 0xc1, 0x1f, 0x42, 0xf1, 0xc1, 0x83, 0x00, 0x33, 0xbc, 0x0f, 0xa9, 0x13, 0xd8, 0xd8, }; static const unsigned char xdh_wei448_2926_sharedsecret[] = { 0xd0, 0xd7, 0x97, 0x99, 0x44, 0xc4, 0xde, 0xfa, 0xae, 0x9f, 0x61, 0x72, 0xbb, 0xd1, 0xce, 0x11, 0x5e, 0x71, 0x0f, 0x12, 0x20, 0xb8, 0xc8, 0x86, 0xf6, 0x44, 0x77, 0x18, 0x48, 0x64, 0xd2, 0x04, 0xdf, 0x9d, 0x45, 0x19, 0x2b, 0x23, 0xa9, 0xb3, 0x8d, 0x9f, 0x6f, 0x2e, 0x1b, 0x4f, 0x4c, 0x03, 0xe0, 0xd2, 0xed, 0x0e, 0x44, 0x19, 0x6b, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_2926 = { .name = "xdh_wei448_2926", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2926_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2926_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2926_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2926_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 343 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2927 for XDH, tcId is 344 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2927_peerpubkey[] = { 0x25, 0xb1, 0x83, 0x73, 0xed, 0x30, 0xd6, 0x26, 0x30, 0xb9, 0x1a, 0xf8, 0x6a, 0xc2, 0xd4, 0xe7, 0x5a, 0xab, 0x36, 0x6d, 0xa6, 0xd5, 0x72, 0x4d, 0xe3, 0x34, 0xea, 0x40, 0xac, 0x39, 0xe3, 0x25, 0x00, 0xa1, 0xc0, 0x5e, 0x1c, 0x9d, 0x00, 0x48, 0x7d, 0x27, 0x2a, 0x0f, 0x21, 0xaf, 0x81, 0x8b, 0x02, 0xbf, 0x63, 0x48, 0xd7, 0x03, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_2927_ourpubkey[] = { 0x3d, 0x0b, 0xd5, 0x05, 0xb7, 0xb9, 0x82, 0xae, 0xe0, 0x6d, 0x8a, 0xff, 0x57, 0xe5, 0x9e, 0x1f, 0xde, 0xcd, 0x1c, 0xf9, 0x2c, 0x9c, 0xe2, 0x27, 0xcf, 0x0c, 0x60, 0x67, 0x18, 0x88, 0x55, 0x3a, 0x97, 0x4e, 0x7e, 0xcf, 0x2c, 0x18, 0x50, 0xac, 0x72, 0x70, 0x00, 0xbb, 0x33, 0xce, 0x6a, 0x55, 0xcf, 0xba, 0x49, 0xc1, 0xf4, 0x10, 0xd1, 0x82, }; static const unsigned char xdh_wei448_2927_privkey[] = { 0xd8, 0x1c, 0xd9, 0x48, 0xda, 0x26, 0x3b, 0xc3, 0xad, 0x80, 0xcd, 0xac, 0x6b, 0x7b, 0x5f, 0xde, 0xd4, 0x13, 0x13, 0xcf, 0x09, 0x21, 0x69, 0x2f, 0x7c, 0xa7, 0xc2, 0xd4, 0x8c, 0x22, 0x5c, 0x60, 0x56, 0x27, 0xbc, 0xc6, 0x1b, 0xc5, 0xa2, 0x80, 0xdb, 0x23, 0x65, 0xef, 0xc1, 0x1c, 0xb2, 0x86, 0xd2, 0x86, 0xbd, 0x8e, 0xbd, 0x36, 0xcf, 0xd4, }; static const unsigned char xdh_wei448_2927_sharedsecret[] = { 0x84, 0xbb, 0xf9, 0x15, 0x3d, 0xb2, 0xb5, 0x2c, 0x78, 0x0a, 0x2f, 0x1b, 0x27, 0x97, 0xb9, 0x89, 0x88, 0xbf, 0x45, 0xe1, 0x17, 0xd7, 0x5e, 0x07, 0x2d, 0x98, 0xd1, 0xb0, 0xa4, 0xf9, 0xc4, 0x68, 0x63, 0xda, 0xca, 0x2f, 0x98, 0x02, 0x43, 0x95, 0x59, 0x5a, 0x99, 0x60, 0x4e, 0xc9, 0x6d, 0xfe, 0x38, 0x45, 0x25, 0x4d, 0xcc, 0x4f, 0x4b, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_2927 = { .name = "xdh_wei448_2927", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2927_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2927_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2927_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2927_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 344 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2928 for XDH, tcId is 345 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2928_peerpubkey[] = { 0xc2, 0xbc, 0x7a, 0xa4, 0xb3, 0xb3, 0xce, 0x53, 0x15, 0x35, 0x1a, 0x89, 0xf8, 0xc0, 0x43, 0x26, 0x60, 0x69, 0xeb, 0x19, 0x8e, 0x72, 0x4e, 0xc5, 0xa0, 0x3d, 0xdd, 0x10, 0xaa, 0x5e, 0x20, 0x6f, 0x39, 0xa4, 0x06, 0x0d, 0x5e, 0x1b, 0x7b, 0xdb, 0x1a, 0xe0, 0x42, 0xf7, 0x4d, 0xf4, 0x37, 0x66, 0x45, 0x02, 0xe2, 0x8e, 0x72, 0x48, 0x33, 0xb7, }; static const unsigned char xdh_wei448_2928_ourpubkey[] = { 0xbe, 0x43, 0x0e, 0x34, 0xed, 0x8d, 0x47, 0x4d, 0x6c, 0x3e, 0xfa, 0x48, 0xc3, 0x73, 0xe9, 0x97, 0xa7, 0x8a, 0x70, 0xb1, 0x58, 0x26, 0x0d, 0xcc, 0xa8, 0xa5, 0xd5, 0x17, 0x9e, 0xca, 0xb0, 0x26, 0x50, 0xcd, 0xc0, 0x85, 0xe9, 0xde, 0x06, 0x68, 0x0f, 0xa6, 0x6d, 0xdf, 0x91, 0x22, 0xb4, 0x4b, 0x4e, 0x4c, 0x1b, 0x79, 0xe0, 0x98, 0xab, 0x01, }; static const unsigned char xdh_wei448_2928_privkey[] = { 0x60, 0x5b, 0x9a, 0x97, 0x97, 0xda, 0xd5, 0x39, 0x0f, 0x24, 0x0c, 0xbc, 0x43, 0xdb, 0x3e, 0xb8, 0xe0, 0x3d, 0x93, 0xe0, 0x91, 0x0c, 0xe6, 0x1a, 0x39, 0xd9, 0x84, 0x7e, 0x47, 0xa6, 0x5c, 0x82, 0x0e, 0x04, 0x7b, 0xc0, 0x48, 0x44, 0x8a, 0x7e, 0xbc, 0x70, 0x4b, 0xdd, 0x21, 0x57, 0x55, 0x50, 0xcb, 0x0f, 0xa6, 0x95, 0x80, 0x90, 0x27, 0xdf, }; static const unsigned char xdh_wei448_2928_sharedsecret[] = { 0x09, 0x52, 0xc6, 0x07, 0x03, 0x9f, 0xc7, 0xbc, 0x65, 0x23, 0xf6, 0x68, 0x26, 0x3d, 0xd7, 0xbf, 0xc4, 0xc7, 0x3c, 0x39, 0x31, 0x91, 0x62, 0x2c, 0x6e, 0x07, 0xf6, 0x88, 0x59, 0x4a, 0xd3, 0xd6, 0x22, 0xc9, 0x9f, 0x0f, 0xe8, 0xdb, 0x4f, 0x8c, 0x57, 0xfc, 0x91, 0xac, 0x6f, 0x87, 0xfe, 0x81, 0x00, 0x32, 0xb3, 0x74, 0x4d, 0xaf, 0xf3, 0x54, }; static const wycheproof_xdh_test xdh_wei448_2928 = { .name = "xdh_wei448_2928", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2928_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2928_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2928_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2928_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 345 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2929 for XDH, tcId is 346 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2929_peerpubkey[] = { 0xbd, 0x38, 0xf4, 0xa0, 0xa8, 0x28, 0x6a, 0xaa, 0xd5, 0xe7, 0x14, 0x73, 0xde, 0x5e, 0xb8, 0x06, 0x9f, 0x2e, 0xe0, 0x09, 0xc0, 0xc2, 0x42, 0xf1, 0x6f, 0x64, 0xe1, 0x9b, 0x5b, 0x4b, 0x89, 0x3a, 0x2b, 0x65, 0x98, 0x66, 0x1d, 0x05, 0xd8, 0xe0, 0x9e, 0x6c, 0xcb, 0x1c, 0x6a, 0x3a, 0x42, 0xed, 0xd2, 0x21, 0xd6, 0xae, 0x48, 0xaa, 0xc7, 0xbb, }; static const unsigned char xdh_wei448_2929_ourpubkey[] = { 0x74, 0xe8, 0xb6, 0xeb, 0xbf, 0x7b, 0xef, 0xad, 0xe0, 0xa6, 0xa6, 0x28, 0x91, 0xe4, 0xd4, 0xc2, 0x47, 0x89, 0x11, 0x22, 0x68, 0xde, 0x41, 0x25, 0xe3, 0x8e, 0xb8, 0x38, 0xa4, 0x64, 0x16, 0x47, 0xc4, 0x4c, 0xf2, 0x99, 0x4a, 0xb2, 0x7f, 0xcc, 0x3a, 0x04, 0x95, 0x60, 0x24, 0xc8, 0xd8, 0x8e, 0x1d, 0xc0, 0x1b, 0x30, 0x73, 0x7c, 0xc8, 0x77, }; static const unsigned char xdh_wei448_2929_privkey[] = { 0x54, 0x61, 0x3c, 0x11, 0x58, 0x96, 0x49, 0x9e, 0xdc, 0xa8, 0xf9, 0xe7, 0x8d, 0xd6, 0x41, 0x14, 0x1e, 0x7e, 0xa4, 0x60, 0x96, 0x72, 0xd6, 0x6f, 0x43, 0x63, 0xdd, 0x49, 0x13, 0xbc, 0x6c, 0x84, 0x4f, 0x2d, 0x2c, 0xdf, 0x8b, 0xe8, 0xfd, 0xed, 0xf4, 0x58, 0xef, 0x5c, 0x4d, 0xc2, 0x80, 0x80, 0xee, 0xb3, 0xa5, 0xff, 0x52, 0x71, 0x84, 0xd2, }; static const unsigned char xdh_wei448_2929_sharedsecret[] = { 0x1d, 0xa0, 0x29, 0x3b, 0xdc, 0x16, 0xeb, 0xcc, 0x75, 0x69, 0x0e, 0x07, 0xbc, 0x71, 0x17, 0xa8, 0x00, 0x4e, 0xd4, 0xde, 0x12, 0x24, 0x33, 0x26, 0x81, 0x67, 0x5c, 0x4a, 0x1b, 0x90, 0x1e, 0x55, 0x6e, 0x14, 0xf2, 0xfd, 0xd9, 0xfe, 0x97, 0xe1, 0xfe, 0x66, 0x58, 0x39, 0x1b, 0x8f, 0x76, 0x28, 0xbb, 0x72, 0xce, 0x89, 0x3b, 0xce, 0x74, 0x15, }; static const wycheproof_xdh_test xdh_wei448_2929 = { .name = "xdh_wei448_2929", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2929_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2929_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2929_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2929_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 346 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2930 for XDH, tcId is 347 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2930_peerpubkey[] = { 0x91, 0xa2, 0x00, 0x3c, 0x42, 0xb6, 0x96, 0x62, 0x0c, 0xc1, 0x51, 0x49, 0xe4, 0x1c, 0xca, 0x55, 0xc9, 0x38, 0xa0, 0x8f, 0x01, 0xa8, 0x89, 0xec, 0xb5, 0xf7, 0xd8, 0xbf, 0xdb, 0xc2, 0x4e, 0x11, 0x07, 0x7c, 0xa9, 0x13, 0x55, 0x78, 0x4f, 0x61, 0xf6, 0x53, 0x47, 0x1a, 0x29, 0xd0, 0xe4, 0x22, 0x33, 0xd4, 0x23, 0x0c, 0x7a, 0xf7, 0x23, 0xc0, }; static const unsigned char xdh_wei448_2930_ourpubkey[] = { 0x27, 0x76, 0xb4, 0xc7, 0x4e, 0x27, 0xd7, 0x57, 0x9d, 0xd2, 0x81, 0x5f, 0x82, 0xd8, 0x92, 0x52, 0xdb, 0x83, 0x33, 0x47, 0x3d, 0xfc, 0x54, 0x26, 0x0e, 0x33, 0x3c, 0xcb, 0x81, 0x16, 0x24, 0xfe, 0x47, 0x3a, 0xf6, 0xb0, 0x6f, 0xbd, 0xf8, 0x2b, 0x13, 0x9a, 0xf3, 0x19, 0xf5, 0x5d, 0x22, 0xec, 0x43, 0x06, 0x62, 0xb0, 0x9e, 0x45, 0xe3, 0x6b, }; static const unsigned char xdh_wei448_2930_privkey[] = { 0x24, 0x76, 0x40, 0x94, 0xde, 0xa4, 0x3e, 0x4c, 0x16, 0x7c, 0xdd, 0x8d, 0x22, 0xa4, 0x63, 0x40, 0x4b, 0xbc, 0xbe, 0x84, 0x94, 0x6c, 0x09, 0x6f, 0xa2, 0x87, 0xa4, 0x5b, 0x72, 0xd0, 0x21, 0x92, 0xe6, 0x4a, 0x48, 0x2c, 0x0c, 0x81, 0xaf, 0x60, 0x6e, 0xbf, 0xab, 0x93, 0x83, 0x7d, 0x79, 0xbd, 0xba, 0xe0, 0x59, 0x2e, 0xff, 0x04, 0xdb, 0xd6, }; static const unsigned char xdh_wei448_2930_sharedsecret[] = { 0x7f, 0x06, 0x14, 0x3a, 0x73, 0x85, 0xae, 0xc3, 0xe3, 0x4c, 0xf6, 0xe9, 0x3c, 0x8e, 0x56, 0x81, 0x2e, 0xb7, 0xb5, 0x33, 0xa1, 0x3f, 0x3f, 0xdf, 0xc6, 0x52, 0x82, 0xab, 0x7e, 0xa3, 0x66, 0x89, 0x27, 0x17, 0x67, 0x74, 0xf7, 0x1c, 0x53, 0x34, 0x7d, 0x83, 0xeb, 0x87, 0x2c, 0xcb, 0xfd, 0xef, 0x3b, 0xbd, 0x53, 0xc0, 0xd0, 0xe7, 0xa2, 0x52, }; static const wycheproof_xdh_test xdh_wei448_2930 = { .name = "xdh_wei448_2930", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2930_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2930_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2930_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2930_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 347 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2931 for XDH, tcId is 348 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2931_peerpubkey[] = { 0xcb, 0x65, 0xba, 0xe2, 0x10, 0x1d, 0x1c, 0x64, 0xec, 0xdb, 0x33, 0x8a, 0xa9, 0xa9, 0x56, 0xfe, 0xb8, 0x77, 0x36, 0xb2, 0x82, 0xd0, 0x68, 0x1e, 0x63, 0x4f, 0xab, 0x7b, 0x64, 0x6f, 0x0e, 0x2d, 0xf8, 0x14, 0xec, 0x87, 0xd4, 0x25, 0xd7, 0x75, 0x11, 0xfa, 0x6a, 0xc0, 0x53, 0x23, 0x3a, 0x68, 0xfe, 0x26, 0x0e, 0x3b, 0x32, 0x3c, 0xf5, 0xc1, }; static const unsigned char xdh_wei448_2931_ourpubkey[] = { 0x73, 0xc7, 0x8b, 0xb6, 0xa0, 0x88, 0x78, 0x07, 0x0a, 0x1e, 0xbb, 0xa9, 0xff, 0x9b, 0x29, 0xa0, 0x7f, 0x4e, 0x52, 0xca, 0x20, 0xef, 0x84, 0xb0, 0x14, 0xc6, 0x6a, 0x5a, 0xff, 0x22, 0x31, 0x4a, 0x75, 0xb1, 0x77, 0xcc, 0xe4, 0x9e, 0x7b, 0xb3, 0xac, 0xd3, 0x2d, 0xd0, 0x79, 0x96, 0x89, 0xc9, 0x49, 0x8a, 0x6b, 0x90, 0x65, 0x1e, 0x35, 0xa4, }; static const unsigned char xdh_wei448_2931_privkey[] = { 0x2c, 0xb5, 0xab, 0xe1, 0x12, 0x50, 0xb3, 0x26, 0x6e, 0xa5, 0x93, 0x9f, 0x24, 0xe1, 0xe6, 0xdc, 0xaa, 0x00, 0x59, 0xed, 0x53, 0xda, 0x62, 0xdb, 0xe0, 0x5e, 0x50, 0x6a, 0x51, 0x32, 0x91, 0xf9, 0x1f, 0xd5, 0xee, 0x83, 0x87, 0x66, 0x01, 0x1c, 0x97, 0xf6, 0x2f, 0x4f, 0xb7, 0xcb, 0x54, 0x75, 0xd5, 0x7b, 0x39, 0xcd, 0x5b, 0xe7, 0xd7, 0xdf, }; static const unsigned char xdh_wei448_2931_sharedsecret[] = { 0x4b, 0x7d, 0xf7, 0x24, 0x24, 0x02, 0x89, 0x0d, 0x13, 0xa2, 0x3a, 0x17, 0x58, 0x39, 0x1b, 0xdf, 0x6c, 0x5c, 0xea, 0xb3, 0xad, 0xc7, 0x69, 0xcb, 0xfc, 0xea, 0x5d, 0xf6, 0x6b, 0xb7, 0x6a, 0x8b, 0xbe, 0xfe, 0x76, 0xb0, 0x6e, 0x51, 0x47, 0x48, 0x70, 0x01, 0xa5, 0x66, 0x54, 0x93, 0x35, 0xb3, 0xea, 0x55, 0x67, 0xad, 0x90, 0x4a, 0x46, 0x3f, }; static const wycheproof_xdh_test xdh_wei448_2931 = { .name = "xdh_wei448_2931", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2931_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2931_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2931_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2931_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 348 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2932 for XDH, tcId is 349 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2932_peerpubkey[] = { 0x8f, 0xdf, 0xe2, 0x0f, 0xe3, 0xeb, 0x12, 0x9d, 0xb8, 0x43, 0xa6, 0xf3, 0x1c, 0x22, 0x05, 0x93, 0x48, 0x45, 0xd4, 0xc3, 0xac, 0xcd, 0xfa, 0x9c, 0xbc, 0x0e, 0x25, 0x08, 0xaf, 0x9c, 0x5d, 0x98, 0x9c, 0xd4, 0xba, 0xd5, 0xd3, 0xe1, 0xe0, 0x4b, 0x65, 0xcb, 0xb5, 0x8e, 0x3c, 0xfa, 0x76, 0x6f, 0xb1, 0xa6, 0x1e, 0xc8, 0x1b, 0x53, 0xbc, 0x33, }; static const unsigned char xdh_wei448_2932_ourpubkey[] = { 0xd8, 0x56, 0x8d, 0x1f, 0xbc, 0xbd, 0xb7, 0x7d, 0xec, 0x2b, 0x51, 0xae, 0x83, 0xa0, 0xde, 0xb0, 0xb7, 0x4c, 0x8b, 0x2e, 0x68, 0xf1, 0x6f, 0x43, 0x86, 0x83, 0xd8, 0x19, 0x6d, 0x2d, 0x75, 0x83, 0x12, 0x1f, 0xfe, 0xa6, 0x00, 0x1b, 0x03, 0x8e, 0x84, 0xec, 0x1c, 0xa2, 0x38, 0xde, 0xde, 0xcc, 0x37, 0xf5, 0xff, 0x2a, 0xde, 0x26, 0x92, 0x20, }; static const unsigned char xdh_wei448_2932_privkey[] = { 0x9c, 0x1a, 0xbe, 0xd8, 0xef, 0xb6, 0x02, 0xeb, 0xa9, 0xb7, 0x40, 0xe4, 0xa4, 0xe0, 0x01, 0x7d, 0x15, 0x8f, 0xfe, 0x89, 0x98, 0x7c, 0x64, 0x2d, 0x49, 0x03, 0x70, 0xb5, 0x22, 0x95, 0x9c, 0x1c, 0x96, 0x16, 0x87, 0x97, 0x35, 0x6f, 0xbb, 0x93, 0x50, 0x84, 0x92, 0x8b, 0xe5, 0x3a, 0xd5, 0x35, 0x7f, 0x6e, 0x5b, 0x78, 0x3b, 0xd9, 0xdc, 0xc6, }; static const unsigned char xdh_wei448_2932_sharedsecret[] = { 0x9a, 0x69, 0x04, 0x6c, 0x39, 0xa6, 0x18, 0x92, 0xa6, 0xb2, 0x4f, 0xac, 0xfd, 0xb0, 0x0e, 0x65, 0x9f, 0x6d, 0xb7, 0x9c, 0x06, 0x62, 0xa0, 0xbc, 0xba, 0x9c, 0x73, 0x4e, 0x7f, 0x75, 0x16, 0x0c, 0x54, 0xbc, 0x17, 0xa9, 0xc6, 0x4d, 0xa2, 0xc0, 0x3f, 0x9f, 0xe0, 0xba, 0x33, 0x4e, 0xb7, 0x5e, 0x16, 0x8b, 0xc2, 0x98, 0x06, 0xfc, 0xec, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2932 = { .name = "xdh_wei448_2932", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2932_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2932_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2932_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2932_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 349 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2933 for XDH, tcId is 350 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2933_peerpubkey[] = { 0x2f, 0x8e, 0x43, 0x95, 0x99, 0x78, 0x64, 0x54, 0x31, 0xe3, 0xc0, 0x85, 0x5c, 0xeb, 0xba, 0x34, 0xcb, 0x5e, 0xd2, 0x3c, 0x5d, 0xe8, 0x72, 0xb4, 0xb2, 0x45, 0x10, 0xad, 0x3c, 0x65, 0xa3, 0x26, 0xef, 0xfd, 0xdf, 0xbc, 0x68, 0x5c, 0xb6, 0x1e, 0x60, 0xc1, 0xa3, 0xd5, 0x9d, 0x60, 0xa3, 0xb1, 0x17, 0x5e, 0x68, 0x22, 0x80, 0x8e, 0x9f, 0x64, }; static const unsigned char xdh_wei448_2933_ourpubkey[] = { 0xce, 0x51, 0x94, 0x3c, 0x45, 0x33, 0x3c, 0x7a, 0x0a, 0xa3, 0xa4, 0xbc, 0x86, 0x9d, 0xe9, 0x61, 0xf2, 0x17, 0xaf, 0x3c, 0x84, 0xf5, 0xcc, 0x2a, 0x06, 0x6b, 0x67, 0x0e, 0xd9, 0xb6, 0x85, 0x3c, 0x9d, 0x35, 0xc3, 0x3e, 0x3b, 0xf9, 0xa7, 0x7f, 0xde, 0xf1, 0xdc, 0x7c, 0x67, 0x17, 0x2c, 0xe8, 0x47, 0x94, 0x8d, 0x5c, 0x40, 0x39, 0x37, 0x4a, }; static const unsigned char xdh_wei448_2933_privkey[] = { 0x7c, 0x1d, 0x55, 0x71, 0xe6, 0x3c, 0xae, 0xa8, 0x31, 0xeb, 0x48, 0x27, 0xc4, 0xfc, 0x7a, 0x05, 0xa5, 0x76, 0xec, 0xb6, 0x62, 0xb0, 0x90, 0x50, 0xe7, 0x19, 0xe4, 0xfd, 0x7d, 0x1b, 0xd5, 0xaf, 0x78, 0x21, 0xa7, 0x22, 0x4d, 0x39, 0x05, 0x37, 0xa4, 0xf3, 0x23, 0x0c, 0x96, 0xf1, 0x68, 0x1b, 0x3c, 0xd5, 0x01, 0x96, 0xe9, 0xa3, 0x10, 0xdd, }; static const unsigned char xdh_wei448_2933_sharedsecret[] = { 0xfb, 0x28, 0x86, 0x3a, 0x88, 0x1b, 0x90, 0x89, 0x70, 0x32, 0x29, 0xac, 0xc8, 0x0e, 0x3f, 0x1e, 0x65, 0x00, 0xd6, 0x53, 0x10, 0xad, 0x80, 0x17, 0x90, 0xbc, 0x90, 0x7f, 0xf3, 0xa9, 0xbb, 0x33, 0xd0, 0x08, 0x96, 0x81, 0x22, 0xfb, 0x9e, 0x5b, 0xbe, 0x2a, 0x0a, 0xe5, 0x57, 0xee, 0x99, 0x5b, 0xa8, 0x23, 0x2c, 0x36, 0xf7, 0xe0, 0x47, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_2933 = { .name = "xdh_wei448_2933", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2933_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2933_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2933_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2933_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 350 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2934 for XDH, tcId is 351 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2934_peerpubkey[] = { 0xd9, 0x7d, 0xd1, 0x83, 0xea, 0xe8, 0x1d, 0xd3, 0x4d, 0xa6, 0xd8, 0xb6, 0x6c, 0x91, 0x80, 0xa6, 0x0b, 0x2e, 0x26, 0x11, 0x2d, 0xaf, 0xdf, 0xe5, 0x6a, 0x80, 0x22, 0xc8, 0x72, 0xef, 0xe6, 0xd1, 0xc5, 0xd1, 0xb3, 0x57, 0x2c, 0x82, 0x4c, 0x69, 0xbb, 0x66, 0xd1, 0xd9, 0x1c, 0xca, 0x5e, 0x69, 0xf9, 0xdf, 0x20, 0xb4, 0xaf, 0x32, 0x6c, 0x7c, }; static const unsigned char xdh_wei448_2934_ourpubkey[] = { 0xe7, 0xff, 0x9f, 0x58, 0xbf, 0x11, 0xf5, 0x87, 0xde, 0xa9, 0x6f, 0x15, 0x88, 0x6e, 0x4d, 0x96, 0xa6, 0xd0, 0xfe, 0x86, 0x2b, 0x8b, 0xd1, 0x9e, 0x29, 0xa0, 0x9d, 0xb4, 0x34, 0x80, 0x60, 0xe8, 0x73, 0x55, 0x28, 0x5e, 0xd2, 0x44, 0x24, 0x1d, 0xd2, 0x22, 0xa6, 0xc8, 0x61, 0x30, 0x07, 0xbb, 0xb1, 0xce, 0x5f, 0x86, 0x26, 0x98, 0xeb, 0x8d, }; static const unsigned char xdh_wei448_2934_privkey[] = { 0xb0, 0xce, 0x11, 0x67, 0xca, 0x6d, 0x3d, 0xe6, 0xa5, 0x13, 0x8e, 0x60, 0x57, 0xb0, 0x8a, 0xf1, 0x01, 0x35, 0xc7, 0xe4, 0x12, 0xf4, 0x48, 0x8a, 0xb1, 0x02, 0x3b, 0xef, 0xc9, 0xf6, 0x7f, 0x12, 0x36, 0x5c, 0x30, 0x2f, 0xfe, 0x80, 0x4d, 0x5a, 0x25, 0xd0, 0x34, 0x65, 0xe0, 0x27, 0x28, 0xca, 0x06, 0xab, 0xad, 0x3e, 0x78, 0x5f, 0x69, 0xcf, }; static const unsigned char xdh_wei448_2934_sharedsecret[] = { 0xfc, 0x9f, 0xe0, 0x0b, 0x58, 0xda, 0xfa, 0x32, 0x1a, 0xe0, 0x55, 0x82, 0xde, 0x2e, 0xe2, 0x80, 0xd7, 0x11, 0xf2, 0x92, 0x9f, 0x39, 0x31, 0x9f, 0x0f, 0xda, 0x49, 0xd9, 0x97, 0x3d, 0xea, 0x0a, 0x58, 0x03, 0xe5, 0xe0, 0x37, 0x39, 0xb0, 0xd6, 0xe5, 0xe6, 0xcf, 0x4e, 0x46, 0xb1, 0xd9, 0x92, 0x1e, 0x76, 0x37, 0x6d, 0xf0, 0x08, 0x4d, 0xd2, }; static const wycheproof_xdh_test xdh_wei448_2934 = { .name = "xdh_wei448_2934", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2934_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2934_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2934_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2934_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 351 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2935 for XDH, tcId is 352 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2935_peerpubkey[] = { 0x7c, 0x35, 0x31, 0x0f, 0xc6, 0x99, 0xa6, 0x56, 0x8a, 0xa5, 0x84, 0xf6, 0xf0, 0xc8, 0x9a, 0xbc, 0x89, 0x43, 0xe6, 0x8e, 0x87, 0x32, 0x3f, 0x62, 0xcd, 0x98, 0xc6, 0xc6, 0xbb, 0x17, 0x33, 0x4b, 0x75, 0xcf, 0x57, 0x81, 0x5f, 0x24, 0xc9, 0x6d, 0x4e, 0xa2, 0x2d, 0x99, 0xdd, 0xbf, 0x61, 0xe0, 0xaa, 0x4b, 0xed, 0x81, 0xc4, 0x13, 0xf6, 0x9e, }; static const unsigned char xdh_wei448_2935_ourpubkey[] = { 0xf0, 0x6e, 0x39, 0x6e, 0x7b, 0x58, 0x47, 0x2e, 0x6e, 0x2f, 0xaa, 0x5a, 0x58, 0x43, 0xe3, 0x41, 0x6b, 0x76, 0x49, 0x81, 0x0a, 0x59, 0x98, 0xc0, 0x37, 0x5f, 0xf1, 0x41, 0x9c, 0x39, 0x7f, 0xd7, 0x51, 0x1c, 0xb1, 0xd6, 0x7f, 0x54, 0x30, 0x21, 0x0e, 0x5d, 0x76, 0x68, 0x15, 0x05, 0x8e, 0xe9, 0x74, 0x66, 0x4a, 0xed, 0x60, 0xc7, 0x82, 0xe9, }; static const unsigned char xdh_wei448_2935_privkey[] = { 0xe4, 0x89, 0x83, 0x95, 0x9f, 0x3b, 0xb8, 0x85, 0xfd, 0x7a, 0x26, 0xe2, 0x10, 0x57, 0x7b, 0xb0, 0x7e, 0xa9, 0xda, 0x7a, 0xf2, 0x95, 0xee, 0x83, 0xaf, 0xfa, 0x64, 0xe0, 0x23, 0x28, 0x47, 0x5b, 0x3f, 0xc9, 0x9d, 0x94, 0xc5, 0x66, 0xb7, 0xcb, 0xc5, 0x82, 0xd8, 0xd9, 0xca, 0x3c, 0xa4, 0x1f, 0xf0, 0xd2, 0xde, 0xc9, 0x14, 0x4e, 0xab, 0xde, }; static const unsigned char xdh_wei448_2935_sharedsecret[] = { 0x21, 0x1a, 0xbd, 0x6c, 0xad, 0x5a, 0x8c, 0x4c, 0xc2, 0x7b, 0xee, 0x02, 0x7c, 0x00, 0x24, 0x74, 0x8f, 0xd1, 0x1d, 0x78, 0x6f, 0x01, 0x67, 0x67, 0xda, 0x72, 0x69, 0x44, 0x95, 0x71, 0xb9, 0x84, 0xd6, 0x1c, 0x50, 0x40, 0x25, 0x1d, 0x1e, 0xd6, 0xe0, 0xed, 0xea, 0x5c, 0x69, 0xaf, 0xf2, 0x35, 0x00, 0x03, 0x7f, 0x65, 0xb2, 0xca, 0x48, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_2935 = { .name = "xdh_wei448_2935", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2935_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2935_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2935_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2935_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 352 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2936 for XDH, tcId is 353 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2936_peerpubkey[] = { 0xa5, 0xd3, 0xd1, 0x92, 0x60, 0x73, 0x62, 0x9d, 0xab, 0x3a, 0x52, 0xa1, 0x89, 0xc3, 0x56, 0xc1, 0xcb, 0x2f, 0x44, 0x38, 0x92, 0xe0, 0x64, 0xad, 0x42, 0xc9, 0xe6, 0x8a, 0x3b, 0xcf, 0x74, 0x23, 0x3c, 0xb8, 0x93, 0xf3, 0x1d, 0xb0, 0x4b, 0xa7, 0x10, 0x99, 0x83, 0x63, 0x10, 0x71, 0xf4, 0x0b, 0xdc, 0x15, 0xfe, 0x8f, 0x77, 0xf8, 0x96, 0xc7, }; static const unsigned char xdh_wei448_2936_ourpubkey[] = { 0xa6, 0x86, 0x69, 0x26, 0x6b, 0xd0, 0x60, 0x40, 0x58, 0x73, 0xfa, 0xe2, 0x69, 0xaf, 0x54, 0xb2, 0x7a, 0x03, 0x40, 0x6b, 0xc3, 0x9f, 0x8e, 0xc9, 0xa4, 0x15, 0x2e, 0x66, 0x1f, 0xfd, 0xf5, 0xa6, 0x50, 0x4e, 0x42, 0x88, 0xb9, 0x2b, 0x00, 0x52, 0x03, 0xbb, 0x0a, 0x0e, 0x62, 0x10, 0x24, 0x00, 0xf8, 0xf2, 0x2a, 0x97, 0x1d, 0x76, 0xe9, 0x80, }; static const unsigned char xdh_wei448_2936_privkey[] = { 0x28, 0xa4, 0xdf, 0x2a, 0x71, 0x9b, 0x8c, 0xe1, 0x67, 0x1a, 0xb0, 0x7e, 0x9f, 0xcf, 0xd6, 0xcf, 0x2c, 0xf5, 0xca, 0x31, 0x44, 0xdb, 0x0b, 0x19, 0xf3, 0xd8, 0xde, 0x9b, 0x0a, 0x04, 0xe4, 0x31, 0x3f, 0x11, 0x5b, 0x08, 0xaf, 0x09, 0x40, 0x1b, 0x65, 0xac, 0x7d, 0x97, 0x29, 0x4e, 0x69, 0xc5, 0xf7, 0x71, 0xe0, 0x02, 0x66, 0x6b, 0xf7, 0xcf, }; static const unsigned char xdh_wei448_2936_sharedsecret[] = { 0x3f, 0x5b, 0x5c, 0x9d, 0x10, 0x78, 0x08, 0x52, 0x47, 0xcf, 0x12, 0x43, 0x1e, 0xbe, 0x54, 0xb8, 0xaa, 0xbc, 0x6d, 0xfe, 0xd5, 0x72, 0xc8, 0xf6, 0x60, 0xf2, 0x45, 0xe4, 0x5d, 0xeb, 0x65, 0x41, 0x12, 0xd7, 0x69, 0xbc, 0x81, 0xf6, 0x9d, 0x6f, 0xf9, 0xa1, 0x9e, 0x87, 0x9b, 0x41, 0xff, 0x09, 0xd6, 0x88, 0x5b, 0x3d, 0x08, 0x15, 0x50, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_2936 = { .name = "xdh_wei448_2936", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2936_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2936_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2936_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2936_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 353 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2937 for XDH, tcId is 354 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2937_peerpubkey[] = { 0x86, 0x79, 0x7e, 0x52, 0x05, 0x9c, 0xe5, 0x3d, 0x0e, 0x81, 0x4b, 0xed, 0xdd, 0x2b, 0xa9, 0xcf, 0x87, 0xa4, 0x7e, 0xb7, 0x36, 0x37, 0x0f, 0x0a, 0xc4, 0x82, 0xcc, 0x29, 0x1d, 0x14, 0x26, 0x49, 0x6e, 0x9a, 0xfc, 0x74, 0x66, 0xc6, 0x54, 0x55, 0x8f, 0xe6, 0x8d, 0x6b, 0x9d, 0xe8, 0xb0, 0x4f, 0x87, 0x5d, 0x4c, 0x0d, 0x9d, 0x22, 0x31, 0xf5, }; static const unsigned char xdh_wei448_2937_ourpubkey[] = { 0x04, 0xcb, 0xa2, 0xe2, 0x5b, 0xaa, 0x4d, 0x1e, 0x5a, 0xc6, 0xe2, 0xe5, 0x10, 0x75, 0x46, 0xca, 0xdf, 0xbc, 0x77, 0x77, 0x80, 0x2d, 0x52, 0xe3, 0xd1, 0xae, 0xd4, 0xf7, 0x0c, 0xc5, 0xa7, 0xaf, 0x34, 0x28, 0x12, 0x2e, 0x27, 0x90, 0xe5, 0x6b, 0xa0, 0x6d, 0xc0, 0x05, 0xdd, 0xfd, 0x2f, 0xc9, 0xce, 0x6c, 0x17, 0x1f, 0xfa, 0x1f, 0x70, 0x3c, }; static const unsigned char xdh_wei448_2937_privkey[] = { 0xe8, 0xba, 0xd8, 0xe1, 0x9e, 0x83, 0x08, 0x4e, 0x35, 0xfc, 0xc6, 0x9f, 0x29, 0xe7, 0xc7, 0xf4, 0x4c, 0x35, 0x4b, 0x1c, 0x29, 0x92, 0x5c, 0xff, 0xf6, 0x32, 0xf9, 0xcc, 0xaf, 0x7f, 0xf4, 0x9c, 0x91, 0x99, 0xf8, 0x60, 0x80, 0xd6, 0xb8, 0xb3, 0xe3, 0xca, 0x24, 0x13, 0x0f, 0x0d, 0x06, 0xeb, 0x54, 0x10, 0x4f, 0x3c, 0x1a, 0x18, 0x3b, 0xd7, }; static const unsigned char xdh_wei448_2937_sharedsecret[] = { 0x00, 0x3b, 0xab, 0x0e, 0x3c, 0x73, 0x9f, 0x94, 0x2e, 0x62, 0x33, 0xa8, 0xb2, 0xa8, 0xb0, 0xf2, 0x28, 0x9f, 0x1b, 0xb3, 0x7a, 0xad, 0x96, 0x61, 0x94, 0x6c, 0x17, 0x6e, 0x8a, 0xe1, 0x24, 0x71, 0xfc, 0xb4, 0x60, 0xe4, 0x92, 0x1b, 0xdc, 0x3e, 0x5d, 0x9f, 0xbc, 0x89, 0xf6, 0x95, 0x96, 0xf0, 0xa4, 0xd4, 0xdb, 0x1d, 0x17, 0xbf, 0xe1, 0x32, }; static const wycheproof_xdh_test xdh_wei448_2937 = { .name = "xdh_wei448_2937", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2937_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2937_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2937_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2937_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 354 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2938 for XDH, tcId is 355 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2938_peerpubkey[] = { 0x1f, 0x24, 0xe0, 0xd9, 0xe5, 0xfb, 0x41, 0xbb, 0x67, 0x25, 0xe8, 0xea, 0x03, 0xd2, 0xee, 0x90, 0xc2, 0x46, 0x59, 0x87, 0x1b, 0x79, 0x59, 0xd1, 0xbf, 0x86, 0x54, 0x54, 0xda, 0xd4, 0xad, 0x5d, 0x8a, 0xcc, 0x26, 0x8f, 0xe2, 0xa6, 0x08, 0x92, 0x53, 0xeb, 0xff, 0x4a, 0xe7, 0xed, 0xfd, 0x91, 0x24, 0xfa, 0x7c, 0xb2, 0xb4, 0xf2, 0xe6, 0xff, }; static const unsigned char xdh_wei448_2938_ourpubkey[] = { 0x3c, 0xec, 0x49, 0x7e, 0x83, 0x60, 0x60, 0xc2, 0x8c, 0x6d, 0x03, 0xff, 0x1c, 0x19, 0x48, 0xf2, 0x57, 0xf1, 0xfa, 0xab, 0x67, 0xaf, 0x99, 0x08, 0xc5, 0x70, 0xb9, 0x1f, 0xe9, 0x6d, 0x22, 0xa1, 0x22, 0x0d, 0xb7, 0x43, 0x48, 0xc1, 0x3d, 0xd2, 0xff, 0x39, 0x5f, 0xdb, 0x36, 0x0e, 0xda, 0x4d, 0x21, 0xa3, 0x66, 0x55, 0x1a, 0xef, 0xc8, 0x0d, }; static const unsigned char xdh_wei448_2938_privkey[] = { 0x04, 0x23, 0x02, 0xe5, 0xdd, 0x31, 0xc8, 0x1d, 0xc9, 0x1e, 0x16, 0xfc, 0x56, 0x48, 0x32, 0x48, 0xb6, 0x46, 0x2c, 0x5f, 0x0b, 0x80, 0x8f, 0x17, 0x8e, 0xac, 0xa1, 0xf4, 0x0d, 0x3c, 0x1f, 0xfc, 0x85, 0x8a, 0xef, 0x5c, 0xab, 0x1d, 0x0b, 0xd6, 0xe6, 0xf1, 0xee, 0xe4, 0x39, 0x44, 0x63, 0xc9, 0xaa, 0xff, 0x80, 0x6f, 0x7a, 0xdf, 0xed, 0xc1, }; static const unsigned char xdh_wei448_2938_sharedsecret[] = { 0xc9, 0x7f, 0xea, 0x9a, 0x53, 0x85, 0xb6, 0xfd, 0x1a, 0x3d, 0xa4, 0xf8, 0x97, 0x28, 0xf6, 0x6c, 0x16, 0x4a, 0xfd, 0xff, 0x17, 0x92, 0x55, 0x99, 0x15, 0x9d, 0x6d, 0x88, 0x44, 0x22, 0x22, 0x4f, 0x2f, 0xd8, 0xb7, 0xc5, 0x06, 0x3e, 0x1f, 0x2b, 0x7f, 0x49, 0x9a, 0x8a, 0x29, 0x10, 0xc8, 0x4e, 0x8e, 0xaf, 0x8a, 0xac, 0xaf, 0xe7, 0xea, 0x71, }; static const wycheproof_xdh_test xdh_wei448_2938 = { .name = "xdh_wei448_2938", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2938_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2938_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2938_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2938_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 355 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2939 for XDH, tcId is 356 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2939_peerpubkey[] = { 0xcb, 0x2e, 0x8e, 0xab, 0x9c, 0x36, 0x8b, 0xec, 0x18, 0x2f, 0x88, 0x6d, 0x42, 0x7a, 0xd4, 0xff, 0x4f, 0x3d, 0x31, 0xb5, 0x2c, 0x49, 0x40, 0x39, 0x03, 0x6d, 0xf8, 0x25, 0x00, 0xfe, 0x71, 0xfd, 0xc8, 0x93, 0x46, 0x16, 0x79, 0xc0, 0x7b, 0xdd, 0x91, 0x8b, 0x17, 0x59, 0x66, 0xfa, 0x7c, 0xf9, 0x47, 0xc3, 0xfb, 0x54, 0x35, 0xfb, 0xd5, 0x3e, }; static const unsigned char xdh_wei448_2939_ourpubkey[] = { 0x25, 0xa7, 0xfd, 0x62, 0x30, 0x6b, 0xc4, 0x68, 0x99, 0xff, 0x7e, 0x77, 0xb6, 0x7d, 0xfa, 0x91, 0x98, 0xba, 0x3b, 0xb6, 0x4a, 0xd6, 0xb5, 0x95, 0xe7, 0x2b, 0xe0, 0xdf, 0x53, 0x6e, 0xcb, 0x13, 0x03, 0x36, 0x91, 0x45, 0x7d, 0x23, 0x8d, 0x2f, 0xba, 0x6d, 0xc0, 0x4d, 0x8f, 0x5e, 0x13, 0x6c, 0xce, 0x0b, 0x99, 0xdb, 0x30, 0xf9, 0x7b, 0x10, }; static const unsigned char xdh_wei448_2939_privkey[] = { 0xd4, 0x76, 0x2e, 0x92, 0xed, 0xf6, 0xa3, 0x63, 0xea, 0x9a, 0x49, 0x68, 0xbf, 0x0f, 0x11, 0x9d, 0xa8, 0x8f, 0x43, 0x49, 0x91, 0xe1, 0xc9, 0x6b, 0xe4, 0x96, 0x7e, 0xb9, 0xfe, 0x67, 0x6a, 0x3e, 0x98, 0x1d, 0x35, 0x38, 0xb4, 0x29, 0x69, 0x83, 0x9c, 0xde, 0x50, 0x97, 0xd9, 0x96, 0x4d, 0x19, 0x54, 0xde, 0xe4, 0xc9, 0x5c, 0xcd, 0x95, 0xcd, }; static const unsigned char xdh_wei448_2939_sharedsecret[] = { 0xc0, 0x74, 0x45, 0x2f, 0xf1, 0x0e, 0x18, 0x8b, 0xe0, 0x3b, 0xe2, 0xf6, 0x16, 0x4b, 0xc2, 0x97, 0xa8, 0xe3, 0xde, 0x6d, 0x22, 0xff, 0x4b, 0xa7, 0xbd, 0xfc, 0x90, 0xbd, 0xdb, 0x8a, 0x07, 0x4b, 0xa1, 0x3b, 0x20, 0x53, 0x3c, 0x8d, 0x37, 0xfb, 0x0a, 0x3f, 0x9d, 0x24, 0xa0, 0x76, 0x79, 0xf0, 0x1c, 0x10, 0x75, 0x46, 0xea, 0x92, 0xff, 0x87, }; static const wycheproof_xdh_test xdh_wei448_2939 = { .name = "xdh_wei448_2939", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2939_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2939_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2939_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2939_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 356 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2940 for XDH, tcId is 357 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2940_peerpubkey[] = { 0xa3, 0x5d, 0x62, 0x3f, 0x4e, 0xb1, 0x90, 0xd2, 0xf5, 0x18, 0x24, 0xdc, 0x97, 0xf3, 0x59, 0xd9, 0x93, 0x43, 0x40, 0x55, 0xfe, 0x18, 0xa0, 0xaa, 0x1a, 0xb0, 0x07, 0xc6, 0x00, 0x73, 0x59, 0xe1, 0x4b, 0xeb, 0xc8, 0xf6, 0xed, 0x82, 0x1f, 0xea, 0x47, 0x03, 0x53, 0x59, 0xc9, 0x7f, 0xda, 0x79, 0x3a, 0x3d, 0xc6, 0xc9, 0x97, 0x6d, 0xbe, 0x44, }; static const unsigned char xdh_wei448_2940_ourpubkey[] = { 0xfb, 0x20, 0xb2, 0x7b, 0xe3, 0x6f, 0xa9, 0x06, 0x04, 0xe5, 0x83, 0xab, 0x3f, 0x60, 0x63, 0x55, 0x42, 0x2a, 0xd1, 0xaf, 0xac, 0x02, 0xec, 0x16, 0x96, 0x3a, 0x5f, 0xdc, 0xd5, 0x22, 0xe0, 0xdc, 0x14, 0xad, 0x19, 0x7a, 0xc2, 0x34, 0x36, 0x5c, 0x01, 0xdf, 0x07, 0x3a, 0xf3, 0xab, 0xd7, 0x8c, 0xbf, 0x0b, 0xa7, 0x82, 0x88, 0xe8, 0xd8, 0x8f, }; static const unsigned char xdh_wei448_2940_privkey[] = { 0x34, 0x3d, 0x69, 0xf9, 0xb1, 0x3e, 0x35, 0x7d, 0x71, 0x3b, 0x5c, 0xc8, 0x27, 0x17, 0xa5, 0xa5, 0x7a, 0xd2, 0x52, 0x9b, 0xdd, 0x81, 0xf6, 0x1e, 0xe6, 0x61, 0xcf, 0x27, 0x2e, 0xb2, 0x44, 0x89, 0xe6, 0xe6, 0x2e, 0x78, 0x2c, 0x40, 0xa9, 0x89, 0x1d, 0xe4, 0xd2, 0xa3, 0x93, 0x20, 0xc8, 0x1c, 0xfe, 0x07, 0xdf, 0xf6, 0x55, 0x85, 0xcc, 0xcd, }; static const unsigned char xdh_wei448_2940_sharedsecret[] = { 0x20, 0x32, 0x06, 0xa8, 0x7b, 0x93, 0xc0, 0x6d, 0x59, 0x31, 0xbd, 0xe7, 0x95, 0xa8, 0x0c, 0x9c, 0xa8, 0x7d, 0x25, 0xe4, 0x27, 0x44, 0x24, 0x3f, 0x39, 0x6c, 0xa2, 0x7c, 0x9e, 0x9a, 0x42, 0xce, 0xe7, 0xa7, 0xde, 0xda, 0x39, 0xe8, 0xe0, 0x66, 0x6b, 0xad, 0x66, 0xad, 0xca, 0x8f, 0x80, 0x56, 0x95, 0xa0, 0xff, 0x30, 0x38, 0x71, 0x9f, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2940 = { .name = "xdh_wei448_2940", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2940_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2940_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2940_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2940_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 357 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2941 for XDH, tcId is 358 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2941_peerpubkey[] = { 0x3a, 0x1d, 0x28, 0x5d, 0x1a, 0x56, 0xa7, 0xce, 0x8f, 0x29, 0x79, 0x01, 0x78, 0xce, 0x16, 0xd4, 0xd0, 0x93, 0x49, 0xcd, 0x28, 0xe1, 0x0b, 0xd3, 0x45, 0x63, 0x4b, 0x9d, 0x07, 0x15, 0xec, 0x49, 0xf5, 0x1b, 0x00, 0x61, 0xfe, 0x51, 0x48, 0x43, 0x9f, 0x7a, 0x7b, 0x6c, 0x5b, 0x6c, 0x1d, 0x95, 0xde, 0x68, 0x38, 0xeb, 0xdf, 0xc0, 0xc3, 0x46, }; static const unsigned char xdh_wei448_2941_ourpubkey[] = { 0x4c, 0x6a, 0xab, 0x64, 0xcd, 0x8f, 0x4f, 0xe0, 0x42, 0xbf, 0x35, 0xb6, 0xbd, 0x62, 0xfb, 0x54, 0x94, 0xf1, 0xf9, 0x20, 0x84, 0xcb, 0x28, 0xeb, 0x84, 0x55, 0x55, 0xe1, 0x8d, 0x53, 0xed, 0x3f, 0x31, 0x84, 0xf4, 0x8c, 0x01, 0xf0, 0x50, 0x27, 0x78, 0xbd, 0xb8, 0x5f, 0x71, 0xcc, 0x09, 0xf9, 0x33, 0xa8, 0x12, 0x11, 0x9c, 0x42, 0x18, 0x7e, }; static const unsigned char xdh_wei448_2941_privkey[] = { 0x6c, 0x23, 0xd8, 0xf0, 0xe7, 0x47, 0x51, 0x69, 0xe0, 0xc7, 0xe3, 0xdf, 0xce, 0x80, 0xd1, 0xca, 0xe0, 0x48, 0x9c, 0xae, 0xf1, 0xfd, 0x1a, 0x4f, 0xf9, 0x00, 0xa1, 0x08, 0xea, 0x15, 0x41, 0xf9, 0xee, 0x72, 0x32, 0xdb, 0xe3, 0x60, 0x5a, 0x68, 0x3c, 0x78, 0x3a, 0x6a, 0xab, 0xbe, 0x8e, 0xda, 0xf9, 0x33, 0x03, 0x8f, 0xb2, 0xf1, 0x4a, 0xdf, }; static const unsigned char xdh_wei448_2941_sharedsecret[] = { 0x1e, 0xff, 0x19, 0x50, 0xbb, 0xcc, 0x94, 0x32, 0x2f, 0x02, 0xdd, 0x46, 0x39, 0x06, 0xc0, 0x9a, 0xe6, 0xd3, 0xd7, 0x51, 0x7c, 0x82, 0x58, 0xf0, 0xc6, 0x4b, 0x10, 0xc2, 0xa0, 0x25, 0xa1, 0x7d, 0x83, 0x05, 0xe5, 0x1f, 0x8e, 0x38, 0x64, 0x75, 0xd9, 0x4b, 0x17, 0x48, 0x46, 0x51, 0xf3, 0xa5, 0x2c, 0xa7, 0xef, 0x3f, 0x44, 0x0b, 0xbb, 0xfb, }; static const wycheproof_xdh_test xdh_wei448_2941 = { .name = "xdh_wei448_2941", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2941_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2941_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2941_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2941_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 358 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2942 for XDH, tcId is 359 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2942_peerpubkey[] = { 0x8e, 0x7d, 0x1a, 0x85, 0xdd, 0x55, 0xe5, 0xc2, 0x1a, 0x18, 0xa6, 0x6d, 0xd1, 0x48, 0xcc, 0xbf, 0xad, 0x15, 0x1a, 0xd0, 0x94, 0xfa, 0x15, 0xa7, 0x6b, 0x00, 0x17, 0x2f, 0x30, 0xc7, 0xe2, 0x13, 0xae, 0x7f, 0xc6, 0xc1, 0x95, 0xde, 0x55, 0x8d, 0x0d, 0x1d, 0x8d, 0x61, 0xd0, 0xe1, 0xe8, 0xb8, 0x37, 0xd1, 0xdb, 0xa5, 0xc4, 0x4d, 0x90, 0x55, }; static const unsigned char xdh_wei448_2942_ourpubkey[] = { 0xff, 0xd6, 0xb3, 0xb9, 0xf8, 0x19, 0x73, 0xc0, 0x84, 0x0d, 0x8d, 0xfd, 0xf3, 0xb9, 0xe8, 0xca, 0xf1, 0x51, 0xf8, 0x6a, 0xfa, 0x95, 0xe1, 0x9c, 0xeb, 0x08, 0xa5, 0x25, 0xac, 0xd2, 0xce, 0xe4, 0x35, 0xe3, 0x03, 0x5b, 0x0d, 0x32, 0xb4, 0x90, 0x42, 0xe9, 0xa3, 0xdb, 0x58, 0xce, 0xad, 0x19, 0x2a, 0x29, 0x31, 0xe7, 0xed, 0x04, 0xcb, 0x08, }; static const unsigned char xdh_wei448_2942_privkey[] = { 0x38, 0xc6, 0x76, 0xf2, 0xda, 0xd6, 0xc4, 0x3d, 0x19, 0x27, 0xe9, 0x62, 0x9e, 0xb6, 0xef, 0x80, 0x6f, 0x47, 0xf5, 0xbd, 0x8a, 0x4d, 0xdf, 0xd6, 0x16, 0x2e, 0x93, 0xc7, 0xc1, 0x80, 0xf3, 0x85, 0x72, 0x6d, 0xd4, 0xfe, 0x00, 0x9f, 0xd3, 0x80, 0xad, 0x6f, 0xed, 0x29, 0xe2, 0x09, 0x59, 0xba, 0xdf, 0x06, 0x04, 0x59, 0xf2, 0x8a, 0xe8, 0xcd, }; static const unsigned char xdh_wei448_2942_sharedsecret[] = { 0x0d, 0xac, 0xa1, 0xf8, 0x24, 0xd7, 0xb3, 0xd9, 0x60, 0x8d, 0x90, 0x57, 0x94, 0x80, 0xda, 0xf8, 0x09, 0xf9, 0x93, 0xce, 0x56, 0x49, 0x97, 0x73, 0x30, 0xc5, 0x23, 0x98, 0xfb, 0xef, 0x53, 0x16, 0x6d, 0x43, 0x24, 0x26, 0xa7, 0xec, 0x6d, 0xd6, 0xe7, 0x37, 0x95, 0xff, 0xbd, 0x53, 0xf3, 0xce, 0xf8, 0x2d, 0xf7, 0x7a, 0xd2, 0x8e, 0x9f, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2942 = { .name = "xdh_wei448_2942", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2942_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2942_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2942_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2942_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 359 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2943 for XDH, tcId is 360 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2943_peerpubkey[] = { 0x8e, 0x50, 0x2e, 0xc4, 0x41, 0x68, 0xea, 0x75, 0x2a, 0x34, 0x55, 0xfe, 0x2a, 0x53, 0x9e, 0x53, 0x0b, 0x74, 0x06, 0xd6, 0xfd, 0xca, 0x11, 0x70, 0x6d, 0x54, 0x13, 0x01, 0xce, 0xd2, 0x8d, 0x6c, 0x42, 0x0e, 0xde, 0x92, 0xf8, 0xed, 0xa1, 0x02, 0xf8, 0x6a, 0xad, 0xbc, 0x0e, 0xdf, 0x27, 0x42, 0x74, 0x82, 0x58, 0xcd, 0xa2, 0x97, 0x59, 0x5c, }; static const unsigned char xdh_wei448_2943_ourpubkey[] = { 0x5d, 0x31, 0x5c, 0x7f, 0x97, 0x6f, 0xc0, 0x73, 0x1c, 0x0d, 0xb3, 0xed, 0xb9, 0x69, 0xf6, 0x4b, 0x48, 0xba, 0x45, 0x4b, 0x53, 0x49, 0x7d, 0xb1, 0x93, 0xa7, 0x0f, 0xe0, 0x38, 0xd0, 0xbe, 0x7c, 0x87, 0x4e, 0x8a, 0x3c, 0x23, 0x34, 0xd2, 0x01, 0x56, 0x1b, 0x7b, 0xe0, 0xa0, 0x73, 0xce, 0x88, 0xfb, 0x5a, 0xc2, 0xc1, 0x90, 0xda, 0xaa, 0xcb, }; static const unsigned char xdh_wei448_2943_privkey[] = { 0x18, 0x42, 0x86, 0x52, 0x9c, 0xf3, 0xb2, 0x5b, 0x75, 0x6c, 0x5d, 0x62, 0xea, 0x9b, 0x81, 0xab, 0xda, 0x33, 0xdf, 0x98, 0x8b, 0x90, 0x98, 0x3d, 0xdf, 0x1d, 0x6c, 0xa5, 0xf1, 0x9a, 0x7e, 0xe7, 0x83, 0xed, 0x55, 0x52, 0x77, 0x60, 0x75, 0xeb, 0x7b, 0x86, 0xfb, 0xc6, 0x94, 0x7d, 0x34, 0xf5, 0x04, 0x9b, 0x9e, 0xad, 0x84, 0xb5, 0xef, 0xc4, }; static const unsigned char xdh_wei448_2943_sharedsecret[] = { 0x32, 0xce, 0xda, 0xe0, 0x10, 0x35, 0x85, 0x2c, 0x0e, 0x3c, 0xb2, 0x7b, 0x49, 0x1e, 0xae, 0xc0, 0xf5, 0x99, 0xc9, 0x25, 0xf6, 0x07, 0xad, 0xe1, 0x93, 0xda, 0x94, 0x5a, 0xd0, 0xdb, 0x3d, 0xaf, 0xc9, 0xe0, 0xeb, 0xaf, 0xdc, 0xa1, 0xbf, 0xab, 0xc4, 0x74, 0x0e, 0x67, 0x2b, 0x37, 0x2a, 0x38, 0x3d, 0x77, 0x51, 0xef, 0x68, 0x7e, 0xba, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_2943 = { .name = "xdh_wei448_2943", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2943_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2943_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2943_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2943_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 360 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2944 for XDH, tcId is 361 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2944_peerpubkey[] = { 0x80, 0xd8, 0xd7, 0xef, 0xb6, 0x1e, 0xe9, 0x96, 0x46, 0x34, 0x89, 0x4f, 0x64, 0xd6, 0xe7, 0x82, 0xf7, 0x78, 0x5b, 0x93, 0x88, 0x2e, 0x61, 0xd3, 0x13, 0x1e, 0x79, 0x27, 0x7b, 0x2d, 0x07, 0x62, 0xc0, 0x27, 0x89, 0x81, 0x22, 0x64, 0x97, 0x61, 0x09, 0x6a, 0x66, 0x02, 0x7b, 0x3f, 0x6b, 0x41, 0xc5, 0xd3, 0x47, 0x65, 0xc5, 0xb8, 0x46, 0xad, }; static const unsigned char xdh_wei448_2944_ourpubkey[] = { 0x3a, 0x52, 0x7c, 0x43, 0x33, 0xd8, 0x4d, 0x55, 0x14, 0x9d, 0x67, 0x20, 0x9b, 0x2c, 0x83, 0x40, 0x87, 0xf1, 0x8a, 0xa6, 0xfa, 0x33, 0x45, 0xe2, 0x26, 0x7b, 0xac, 0xe0, 0xfa, 0x59, 0xfd, 0x59, 0xcf, 0x82, 0xb1, 0xba, 0x86, 0x57, 0xd0, 0xef, 0xa8, 0x83, 0xa0, 0x35, 0xa6, 0xb4, 0x8d, 0x2a, 0xf4, 0x28, 0x2e, 0x1f, 0xad, 0xf2, 0xb3, 0xaa, }; static const unsigned char xdh_wei448_2944_privkey[] = { 0xf0, 0x3e, 0x5d, 0xbb, 0x15, 0x87, 0x7c, 0xab, 0x76, 0xbb, 0x81, 0x18, 0x79, 0xa5, 0x98, 0x90, 0x83, 0xa2, 0x49, 0x1c, 0x33, 0xd5, 0xde, 0x3c, 0x13, 0xc6, 0x8f, 0xa1, 0x17, 0xd7, 0xda, 0x60, 0x83, 0x93, 0xf5, 0x55, 0xa3, 0x27, 0x86, 0x3b, 0xab, 0xe8, 0xf8, 0xb5, 0xf5, 0x24, 0xf3, 0xe5, 0x19, 0x43, 0x10, 0x54, 0xc2, 0xc8, 0x17, 0xc1, }; static const unsigned char xdh_wei448_2944_sharedsecret[] = { 0x2e, 0xf2, 0x40, 0x48, 0x03, 0x1f, 0xd4, 0xc0, 0x61, 0x5c, 0x0e, 0x27, 0x3a, 0xe3, 0x16, 0xf1, 0xcf, 0x74, 0x07, 0x32, 0xaa, 0xfa, 0xa1, 0x0f, 0x01, 0x07, 0xed, 0xb1, 0x5d, 0xf6, 0x35, 0x5b, 0x3b, 0x07, 0xe1, 0x6d, 0x7b, 0x9d, 0x3f, 0x28, 0x74, 0xf4, 0xd6, 0xe8, 0x7e, 0x56, 0xe5, 0x14, 0xa4, 0xfa, 0x7b, 0x2a, 0xab, 0x2e, 0x11, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_2944 = { .name = "xdh_wei448_2944", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2944_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2944_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2944_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2944_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2945 for XDH, tcId is 362 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2945_peerpubkey[] = { 0xd7, 0xd8, 0xb5, 0x3d, 0xbd, 0x66, 0x09, 0x27, 0x9b, 0xdd, 0x62, 0x55, 0xda, 0x90, 0x05, 0xb9, 0xc9, 0xde, 0x75, 0xff, 0xbc, 0x4d, 0xbb, 0x27, 0xa6, 0x0a, 0x51, 0x59, 0xcd, 0xfc, 0xe3, 0xea, 0xb2, 0xf6, 0xe8, 0xdc, 0xb9, 0xba, 0x1a, 0x7f, 0x81, 0xb1, 0xc0, 0x7d, 0x5c, 0x82, 0x19, 0x28, 0xa7, 0x32, 0x79, 0x89, 0x3d, 0x1c, 0x3c, 0xd2, }; static const unsigned char xdh_wei448_2945_ourpubkey[] = { 0xeb, 0xa5, 0x4f, 0x29, 0xf5, 0x3d, 0x15, 0xfe, 0x3b, 0x8e, 0x12, 0x60, 0x9b, 0xad, 0x2a, 0xee, 0x4c, 0x07, 0xbd, 0x1e, 0x77, 0x2e, 0x76, 0xcb, 0xd8, 0x33, 0xec, 0x61, 0xf1, 0x8e, 0x60, 0x98, 0x1d, 0x6c, 0xe7, 0xe4, 0xb4, 0xf8, 0x25, 0xeb, 0x4d, 0x11, 0x2c, 0xa4, 0xc1, 0x43, 0x5e, 0x80, 0x8b, 0x19, 0x74, 0x19, 0x20, 0x0c, 0xbf, 0xae, }; static const unsigned char xdh_wei448_2945_privkey[] = { 0xf8, 0x69, 0x4c, 0xd5, 0xfc, 0xa3, 0x29, 0xc6, 0xe4, 0xde, 0xfb, 0x17, 0xd4, 0x46, 0x54, 0x4a, 0x60, 0x01, 0x2d, 0xbc, 0xfa, 0x23, 0xd7, 0xd6, 0x5c, 0xaf, 0xf2, 0x81, 0xee, 0x94, 0x7a, 0x50, 0x8d, 0x34, 0xfa, 0x1f, 0xa2, 0x46, 0x93, 0x9d, 0x7c, 0x7e, 0xab, 0x93, 0xdb, 0x31, 0x50, 0xb8, 0x95, 0x8d, 0xf5, 0x60, 0xb9, 0xe4, 0x9a, 0xd0, }; static const unsigned char xdh_wei448_2945_sharedsecret[] = { 0xbf, 0xc7, 0xe3, 0x09, 0x9b, 0x4f, 0x48, 0xbd, 0x4b, 0x1b, 0x89, 0xde, 0xb5, 0x96, 0x87, 0x84, 0x7b, 0xf6, 0x01, 0x4d, 0x5a, 0xca, 0xfc, 0x24, 0x8b, 0x3b, 0x57, 0x6f, 0xaa, 0x11, 0x11, 0xba, 0xe6, 0xe8, 0x81, 0x02, 0x71, 0x05, 0xd7, 0x24, 0x0d, 0x89, 0xee, 0x6a, 0xc2, 0x00, 0xba, 0x0d, 0xfe, 0x46, 0x48, 0x6a, 0xe0, 0x7b, 0x0d, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2945 = { .name = "xdh_wei448_2945", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2945_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2945_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2945_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2945_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 362 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2946 for XDH, tcId is 363 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2946_peerpubkey[] = { 0xef, 0x64, 0x72, 0x31, 0x7c, 0x20, 0x56, 0x6f, 0x5f, 0xec, 0xff, 0x8e, 0x18, 0x07, 0x75, 0x42, 0x43, 0x96, 0x87, 0x35, 0x4b, 0x9f, 0x9e, 0x77, 0x0f, 0x4d, 0xd7, 0x70, 0x69, 0x0b, 0x79, 0xa6, 0xd3, 0x50, 0x10, 0x00, 0xb6, 0xf5, 0x04, 0xad, 0x62, 0x8a, 0xc2, 0x00, 0xed, 0x89, 0xfd, 0x82, 0x2e, 0x13, 0x1c, 0x1c, 0x97, 0x1d, 0x82, 0xf0, }; static const unsigned char xdh_wei448_2946_ourpubkey[] = { 0xec, 0xe9, 0x4e, 0xc2, 0x7b, 0x24, 0xf3, 0x4c, 0xdf, 0x95, 0x55, 0xda, 0xdf, 0x2d, 0x7d, 0x36, 0xdd, 0x71, 0x86, 0x7d, 0xd4, 0xf0, 0xda, 0x1a, 0xd7, 0x38, 0xdb, 0xee, 0xe0, 0xcd, 0xd8, 0x21, 0x56, 0x7a, 0x8a, 0xde, 0x97, 0x71, 0xe0, 0x13, 0x1c, 0x8d, 0x96, 0x25, 0x96, 0xbf, 0x6d, 0xc2, 0x00, 0x52, 0xdd, 0xa9, 0x3c, 0x5d, 0x01, 0xd3, }; static const unsigned char xdh_wei448_2946_privkey[] = { 0x98, 0xb2, 0xc9, 0xa0, 0xdf, 0xa3, 0x9a, 0xef, 0x17, 0x56, 0x33, 0x08, 0x9b, 0x35, 0x13, 0x30, 0x5c, 0x0d, 0x6f, 0x90, 0x69, 0x39, 0xff, 0x65, 0x1e, 0x5c, 0x59, 0xf9, 0x76, 0x29, 0x96, 0x32, 0xb1, 0x23, 0xed, 0x88, 0x27, 0x44, 0xda, 0xc5, 0xaf, 0xf2, 0x62, 0x86, 0x9a, 0xce, 0xd8, 0x4b, 0xa0, 0xd7, 0x1e, 0xa3, 0x91, 0xa4, 0xc9, 0xc9, }; static const unsigned char xdh_wei448_2946_sharedsecret[] = { 0x6a, 0x9e, 0x56, 0xff, 0x58, 0xe2, 0x9a, 0x0e, 0xf4, 0x40, 0xe5, 0x81, 0x1d, 0x5a, 0xa5, 0x14, 0x11, 0xd9, 0x31, 0x4b, 0xe2, 0xc6, 0xc0, 0xe8, 0x02, 0xa5, 0x55, 0x7b, 0x9a, 0x1e, 0xf7, 0x21, 0x8b, 0xc1, 0x17, 0x86, 0x5e, 0x85, 0xef, 0xb9, 0xcf, 0x2d, 0x7e, 0xca, 0xf9, 0x88, 0x7a, 0xed, 0xd8, 0x37, 0x93, 0x9f, 0x1a, 0xd0, 0xff, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_2946 = { .name = "xdh_wei448_2946", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2946_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2946_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2946_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2946_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 363 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2947 for XDH, tcId is 364 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2947_peerpubkey[] = { 0x6b, 0x70, 0x3f, 0x0d, 0x03, 0xcd, 0x81, 0xbc, 0x86, 0x27, 0x48, 0xa0, 0x47, 0xba, 0x6d, 0x7c, 0xc6, 0x61, 0x0d, 0xe2, 0xc4, 0x3b, 0xd8, 0x10, 0x59, 0x70, 0xdf, 0x02, 0xf1, 0x26, 0x25, 0x3f, 0x13, 0x74, 0x07, 0xef, 0xb1, 0x82, 0xa0, 0xed, 0xbc, 0xd3, 0xfa, 0xdd, 0x17, 0x0a, 0x33, 0xac, 0xfa, 0xdf, 0x18, 0x5f, 0xd0, 0xf3, 0x0f, 0xfb, }; static const unsigned char xdh_wei448_2947_ourpubkey[] = { 0x07, 0xb6, 0x97, 0x10, 0x4e, 0xd0, 0x57, 0x27, 0xae, 0xc1, 0xb6, 0x8a, 0x5d, 0x68, 0x43, 0xb5, 0x4c, 0xae, 0x08, 0xd7, 0x7e, 0xc9, 0x92, 0x1e, 0x2f, 0xb0, 0xf7, 0x1b, 0x38, 0xc6, 0x1f, 0x48, 0xc2, 0x6c, 0x5e, 0xbc, 0x7c, 0x79, 0x8a, 0x61, 0x7c, 0x7c, 0x7b, 0xed, 0x78, 0x59, 0x74, 0x5e, 0x24, 0xa4, 0xe0, 0xed, 0x5c, 0x82, 0x7b, 0x2d, }; static const unsigned char xdh_wei448_2947_privkey[] = { 0xa0, 0x33, 0x7e, 0x1c, 0x6e, 0xf5, 0x6a, 0xe9, 0xf2, 0xc5, 0x1f, 0x23, 0xea, 0xc2, 0x39, 0xc9, 0x50, 0x7c, 0x83, 0x12, 0x8e, 0xc9, 0xd6, 0xc8, 0x96, 0x75, 0x13, 0x28, 0xc3, 0x7d, 0x9e, 0x2c, 0x21, 0x5e, 0xb0, 0xca, 0xcc, 0x1b, 0xfc, 0xb1, 0x1e, 0xb8, 0x52, 0xff, 0xcf, 0xa3, 0x40, 0x24, 0x64, 0xb2, 0x71, 0x50, 0x45, 0xc8, 0x93, 0xd2, }; static const unsigned char xdh_wei448_2947_sharedsecret[] = { 0x46, 0x80, 0xb8, 0x74, 0xd6, 0x71, 0x8f, 0xe3, 0x66, 0x7b, 0x28, 0xd4, 0x6f, 0xda, 0xa8, 0x5b, 0x05, 0x22, 0x52, 0x0a, 0xd9, 0xe2, 0x09, 0x78, 0x8d, 0xff, 0x52, 0x42, 0x0b, 0x2e, 0x04, 0xc2, 0xea, 0xa9, 0xc9, 0x1b, 0x2d, 0xd2, 0x7e, 0xf5, 0xfd, 0x23, 0x07, 0x95, 0xe3, 0x42, 0x8f, 0xc7, 0x2f, 0x05, 0x4c, 0xb1, 0xfa, 0x46, 0x2b, 0xba, }; static const wycheproof_xdh_test xdh_wei448_2947 = { .name = "xdh_wei448_2947", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2947_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2947_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2947_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2947_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 364 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2948 for XDH, tcId is 365 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2948_peerpubkey[] = { 0xc7, 0x4c, 0xb2, 0x63, 0x92, 0xf8, 0x4f, 0xab, 0xb9, 0xfe, 0x10, 0x79, 0x81, 0x74, 0xa6, 0x95, 0xca, 0x37, 0x50, 0xae, 0x72, 0x0d, 0x7e, 0xdd, 0xe1, 0xeb, 0x1b, 0xbc, 0x14, 0xde, 0x52, 0x42, 0x11, 0x9e, 0xa9, 0xde, 0x79, 0x6f, 0xa5, 0xa5, 0x38, 0xc0, 0xb6, 0x10, 0xb6, 0x5d, 0xa5, 0xa1, 0x0d, 0x47, 0xbb, 0x92, 0x31, 0x47, 0x7e, 0x0f, }; static const unsigned char xdh_wei448_2948_ourpubkey[] = { 0x84, 0xfe, 0xdd, 0x73, 0xc6, 0x5b, 0x02, 0x70, 0xf8, 0xac, 0x2c, 0xf6, 0xf1, 0xb9, 0x35, 0xf0, 0x33, 0x13, 0xf4, 0xe9, 0xdd, 0xa3, 0x96, 0xdb, 0x94, 0xa2, 0x31, 0xec, 0xd0, 0xd0, 0x2f, 0x06, 0x5f, 0xcd, 0x79, 0xab, 0x50, 0xf9, 0xf7, 0xe5, 0x03, 0x72, 0xf8, 0xc5, 0x73, 0xe3, 0xd6, 0x56, 0x12, 0x17, 0xc0, 0xc8, 0xcb, 0x75, 0x68, 0x94, }; static const unsigned char xdh_wei448_2948_privkey[] = { 0x9c, 0x16, 0xc7, 0x35, 0x62, 0x84, 0xca, 0x60, 0x8f, 0x41, 0x12, 0x2d, 0xb6, 0xfd, 0x57, 0xf6, 0x7e, 0xd1, 0x4d, 0x9f, 0x82, 0x87, 0x0f, 0xe7, 0x67, 0xe6, 0x47, 0x60, 0xdd, 0x85, 0xe0, 0xc5, 0x50, 0x2d, 0x8c, 0x53, 0x17, 0xa5, 0x70, 0x72, 0x92, 0x82, 0xce, 0x5f, 0x51, 0x86, 0x40, 0xc5, 0x8c, 0xc0, 0x2e, 0xde, 0xf6, 0x38, 0xed, 0xe0, }; static const unsigned char xdh_wei448_2948_sharedsecret[] = { 0x2a, 0x74, 0x77, 0x12, 0x0b, 0xce, 0x86, 0x53, 0x3d, 0x19, 0xcd, 0x3c, 0xab, 0xc8, 0x35, 0x5b, 0xab, 0x91, 0xa1, 0x25, 0x6d, 0x9d, 0x0b, 0x54, 0x54, 0x06, 0xcc, 0x72, 0x39, 0xab, 0x9f, 0x75, 0xb6, 0x2d, 0x38, 0x19, 0x03, 0xa5, 0x1a, 0x4c, 0xa4, 0x14, 0x29, 0x20, 0xc0, 0x00, 0xfc, 0x80, 0xe4, 0x74, 0xe4, 0x1a, 0xce, 0xf9, 0xd7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_2948 = { .name = "xdh_wei448_2948", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2948_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2948_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2948_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2948_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 365 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2949 for XDH, tcId is 366 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2949_peerpubkey[] = { 0x5a, 0x07, 0xde, 0x5d, 0x53, 0xdc, 0xac, 0x22, 0xa4, 0x93, 0x5a, 0x11, 0x90, 0x9a, 0x8b, 0x5d, 0xc6, 0x62, 0x59, 0x96, 0x71, 0xe3, 0xba, 0xfc, 0x71, 0xf9, 0x8d, 0x8f, 0x64, 0x05, 0x6a, 0xb5, 0x19, 0x34, 0x8e, 0x1c, 0x8d, 0x74, 0x87, 0x00, 0x1d, 0x9b, 0xa5, 0xc0, 0x88, 0x8a, 0xef, 0x3a, 0x09, 0xe3, 0x99, 0x95, 0xc5, 0x15, 0xed, 0x1c, }; static const unsigned char xdh_wei448_2949_ourpubkey[] = { 0xb8, 0xfb, 0xb4, 0x2f, 0x33, 0x71, 0x48, 0xb4, 0xd9, 0x48, 0x2b, 0xa4, 0xb2, 0x18, 0x53, 0xff, 0x4f, 0x74, 0x48, 0x5c, 0xe0, 0xfd, 0xd2, 0x67, 0xd4, 0xd3, 0x2f, 0xe0, 0x5c, 0xd6, 0x9a, 0x83, 0x83, 0x07, 0x3b, 0xb9, 0x21, 0x7c, 0xbf, 0xee, 0x8d, 0x3d, 0x42, 0xb5, 0x55, 0x2f, 0xb8, 0x55, 0x53, 0xee, 0x0e, 0x4c, 0xf0, 0x72, 0xef, 0xad, }; static const unsigned char xdh_wei448_2949_privkey[] = { 0x94, 0xd3, 0xf7, 0x22, 0xea, 0x49, 0xaa, 0xd9, 0xd7, 0xe6, 0x3d, 0x78, 0x4d, 0xf5, 0xa4, 0xb8, 0xea, 0xa3, 0x55, 0xbb, 0x13, 0x30, 0x81, 0xfb, 0x46, 0x6e, 0x8e, 0xbe, 0xae, 0xec, 0x80, 0xf6, 0x3a, 0xff, 0xc0, 0x3d, 0xee, 0x73, 0x32, 0xa3, 0xcf, 0x11, 0xb4, 0x44, 0x2c, 0x60, 0x27, 0x72, 0x7a, 0x65, 0x29, 0x66, 0xdf, 0x0f, 0x26, 0xf5, }; static const unsigned char xdh_wei448_2949_sharedsecret[] = { 0xa8, 0xed, 0x03, 0xdc, 0x9a, 0xc2, 0x65, 0x87, 0x90, 0xf0, 0x6a, 0xe5, 0x85, 0x8f, 0xd2, 0xc5, 0x4d, 0x25, 0x76, 0xf7, 0x79, 0x33, 0x86, 0xf8, 0xe9, 0xe6, 0xa9, 0xc2, 0x8a, 0xcd, 0xd0, 0x84, 0x0e, 0xb6, 0xfc, 0x23, 0x6b, 0x6e, 0x72, 0xfd, 0x7d, 0x23, 0x8c, 0x79, 0xd5, 0x0d, 0xc5, 0xec, 0x75, 0x8f, 0x2a, 0x1a, 0xad, 0xb4, 0x08, 0x8c, }; static const wycheproof_xdh_test xdh_wei448_2949 = { .name = "xdh_wei448_2949", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2949_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2949_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2949_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2949_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 366 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2950 for XDH, tcId is 367 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2950_peerpubkey[] = { 0xc2, 0x67, 0x4f, 0xc9, 0xde, 0xd2, 0x19, 0xe3, 0x48, 0x9e, 0x23, 0xcf, 0xcc, 0xc5, 0xe4, 0x09, 0x08, 0x5a, 0x62, 0xcc, 0xc9, 0x0e, 0x91, 0x2b, 0x4f, 0x25, 0x66, 0xe2, 0x28, 0xa2, 0x3b, 0x24, 0x36, 0x30, 0xdf, 0x20, 0x11, 0x65, 0x07, 0x13, 0x8d, 0xef, 0x1f, 0x10, 0xd7, 0xe7, 0x88, 0x1f, 0x93, 0xb1, 0x0b, 0x6e, 0x85, 0x59, 0x03, 0x57, }; static const unsigned char xdh_wei448_2950_ourpubkey[] = { 0x97, 0x22, 0x97, 0x5e, 0x26, 0x38, 0x3b, 0x7f, 0x10, 0xb9, 0xce, 0x1a, 0x2d, 0x9a, 0x2b, 0x5c, 0x1c, 0x15, 0x23, 0xd4, 0xcf, 0x99, 0x81, 0x4d, 0x11, 0x8c, 0x84, 0x88, 0x2c, 0x05, 0x8d, 0x78, 0x2f, 0xa5, 0x25, 0x98, 0x3c, 0xd1, 0x87, 0x2e, 0x6f, 0x2f, 0xaa, 0x3f, 0x53, 0xb8, 0xdd, 0xed, 0xcf, 0x23, 0x4b, 0x6c, 0x7c, 0xea, 0xe0, 0x8b, }; static const unsigned char xdh_wei448_2950_privkey[] = { 0x84, 0xb7, 0xea, 0x45, 0x39, 0xa2, 0x5d, 0x59, 0x14, 0x12, 0x1d, 0xbb, 0x22, 0xa0, 0xaa, 0x6b, 0x6d, 0x39, 0x48, 0x79, 0x1f, 0x3e, 0xcb, 0xe6, 0xc2, 0x9e, 0x9b, 0xe7, 0x59, 0x85, 0xe1, 0x85, 0x28, 0xaa, 0xd1, 0xe8, 0xf5, 0x78, 0xeb, 0x60, 0x36, 0x7a, 0x21, 0x6c, 0xac, 0x12, 0x96, 0x82, 0x43, 0x18, 0xc6, 0xe0, 0xb0, 0xc3, 0x59, 0xfc, }; static const unsigned char xdh_wei448_2950_sharedsecret[] = { 0x94, 0xa2, 0x15, 0xb7, 0x82, 0x73, 0x1e, 0x91, 0xfb, 0x24, 0x9a, 0xf1, 0xef, 0xf1, 0x3a, 0x8a, 0x31, 0xe2, 0x66, 0x20, 0x83, 0x87, 0x45, 0xc4, 0x5f, 0xaf, 0x1b, 0x93, 0xd5, 0x2a, 0x9a, 0x2b, 0x76, 0x54, 0x96, 0x86, 0xd6, 0xdc, 0x68, 0xde, 0xa3, 0x95, 0x4e, 0x28, 0x2e, 0x25, 0xdb, 0x51, 0xba, 0x9a, 0x00, 0xdc, 0x40, 0x48, 0x61, 0xce, }; static const wycheproof_xdh_test xdh_wei448_2950 = { .name = "xdh_wei448_2950", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2950_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2950_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2950_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2950_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 367 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2951 for XDH, tcId is 368 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2951_peerpubkey[] = { 0x6e, 0x2d, 0xea, 0x3b, 0x6f, 0x6f, 0xab, 0x4c, 0x40, 0xb5, 0xdd, 0x70, 0xf2, 0xa2, 0x0b, 0x4e, 0x94, 0xb8, 0x5c, 0xf6, 0x18, 0xde, 0xe1, 0x87, 0x26, 0x34, 0xfc, 0x3c, 0x11, 0xa1, 0xeb, 0xde, 0x1d, 0xec, 0x90, 0x46, 0x07, 0x3d, 0xab, 0x37, 0x99, 0x9c, 0xc4, 0xe2, 0xbb, 0x27, 0x8d, 0x9d, 0xa5, 0x39, 0xfc, 0x0c, 0x55, 0x4d, 0xd9, 0x68, }; static const unsigned char xdh_wei448_2951_ourpubkey[] = { 0x3f, 0x42, 0x78, 0x9b, 0x93, 0x2b, 0x2b, 0xda, 0x55, 0x19, 0xc6, 0x8f, 0x6e, 0x47, 0x5b, 0x51, 0x9f, 0x4e, 0x25, 0xbf, 0xab, 0xc5, 0x1c, 0x57, 0x83, 0xe3, 0x09, 0x9f, 0x55, 0xf6, 0x64, 0x2e, 0x80, 0xee, 0xa8, 0xa6, 0x10, 0x00, 0xd9, 0xae, 0x68, 0xc5, 0x6a, 0x13, 0x4d, 0x08, 0x4f, 0x99, 0x67, 0xfb, 0x99, 0x4d, 0x3e, 0xb1, 0x72, 0x56, }; static const unsigned char xdh_wei448_2951_privkey[] = { 0x24, 0x38, 0x8c, 0x6f, 0x8d, 0xbf, 0x84, 0x4c, 0xd9, 0xc8, 0x57, 0x5f, 0x9f, 0xc5, 0x81, 0x95, 0xb1, 0xd8, 0x5c, 0x9e, 0x87, 0x1e, 0x11, 0x83, 0x7a, 0x11, 0x98, 0xcf, 0xa6, 0x38, 0x22, 0x63, 0xd2, 0x76, 0xf1, 0xed, 0x8b, 0xe7, 0x18, 0x66, 0x86, 0xf4, 0x78, 0x67, 0x80, 0x90, 0xb4, 0xd8, 0x83, 0x82, 0x8d, 0x67, 0x99, 0x92, 0xb6, 0xf7, }; static const unsigned char xdh_wei448_2951_sharedsecret[] = { 0x90, 0x27, 0x2c, 0x81, 0x6f, 0xaa, 0x4b, 0x33, 0xc9, 0x4c, 0x02, 0x6c, 0x6b, 0xf0, 0xdb, 0x26, 0xc6, 0x85, 0x34, 0x6e, 0xc9, 0xc5, 0x84, 0x33, 0x8d, 0xf0, 0x07, 0xda, 0x8a, 0x22, 0x70, 0xe6, 0xbf, 0xe3, 0x94, 0xcc, 0xc2, 0x74, 0x8a, 0x3c, 0x69, 0xae, 0xe0, 0x3b, 0x97, 0xa4, 0x4f, 0xd6, 0x0f, 0x55, 0xd2, 0x80, 0x7a, 0xc3, 0xd3, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_2951 = { .name = "xdh_wei448_2951", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2951_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2951_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2951_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2951_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 368 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2952 for XDH, tcId is 369 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2952_peerpubkey[] = { 0x74, 0x65, 0x25, 0xc0, 0xd0, 0xaa, 0x1c, 0x92, 0xbb, 0xed, 0x10, 0xc3, 0xe6, 0x5e, 0x76, 0x36, 0xf1, 0x15, 0x94, 0x4c, 0x1a, 0x1c, 0x22, 0xe0, 0x10, 0x5a, 0x77, 0xfa, 0xa2, 0x15, 0x70, 0x0e, 0x3e, 0xd2, 0x98, 0x86, 0x6a, 0xff, 0xbf, 0x38, 0xbb, 0xbd, 0x50, 0x11, 0x28, 0x5f, 0x10, 0x56, 0xad, 0x4e, 0x27, 0x7b, 0x2e, 0x05, 0x44, 0x93, }; static const unsigned char xdh_wei448_2952_ourpubkey[] = { 0xa3, 0x93, 0x00, 0x7f, 0x29, 0x14, 0x0f, 0x64, 0x44, 0xe4, 0xb4, 0xba, 0x48, 0x85, 0x6c, 0x4e, 0xdf, 0xf8, 0x95, 0xee, 0x56, 0x75, 0x0b, 0x43, 0x57, 0x6d, 0x43, 0xcd, 0xe8, 0xc8, 0x7a, 0xaf, 0x4d, 0x44, 0x04, 0x99, 0xe1, 0xc8, 0xe0, 0x7b, 0xa9, 0x28, 0xc4, 0x95, 0x9b, 0xd8, 0x79, 0xd7, 0xf9, 0xcb, 0x78, 0x81, 0xb7, 0x4b, 0xbc, 0x90, }; static const unsigned char xdh_wei448_2952_privkey[] = { 0xe8, 0xf7, 0x13, 0x63, 0xb9, 0xc4, 0x20, 0x49, 0xcb, 0x42, 0x1c, 0xb6, 0x16, 0x6c, 0xe8, 0x40, 0xf4, 0x8d, 0x39, 0xcd, 0xc5, 0xa1, 0x1f, 0x8b, 0xe5, 0x27, 0x15, 0x34, 0xa5, 0x8d, 0x56, 0x4c, 0xeb, 0x7c, 0x5d, 0xb3, 0x39, 0x09, 0x81, 0x72, 0x93, 0xee, 0x17, 0xa9, 0x6c, 0x06, 0x21, 0x4e, 0x85, 0xa5, 0x16, 0x29, 0x6f, 0xbf, 0x53, 0xf5, }; static const unsigned char xdh_wei448_2952_sharedsecret[] = { 0x5d, 0x24, 0x56, 0x4b, 0x12, 0x25, 0x7f, 0x6e, 0x52, 0xf8, 0x26, 0x9a, 0x09, 0xe8, 0xb1, 0x13, 0x7e, 0xcb, 0x83, 0x2a, 0xcc, 0x34, 0x3e, 0x0a, 0x19, 0xbe, 0x45, 0x9e, 0xf2, 0xcf, 0xd2, 0x76, 0xd3, 0x9f, 0x95, 0x56, 0x49, 0x4a, 0x3e, 0x2d, 0xd5, 0xfc, 0x55, 0x00, 0xc6, 0x46, 0xef, 0xe0, 0x6f, 0x2d, 0x19, 0x20, 0xa2, 0xf3, 0x25, 0xee, }; static const wycheproof_xdh_test xdh_wei448_2952 = { .name = "xdh_wei448_2952", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2952_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2952_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2952_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2952_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 369 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2953 for XDH, tcId is 370 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2953_peerpubkey[] = { 0xcc, 0x14, 0x70, 0x70, 0x95, 0x30, 0x75, 0x5c, 0xb6, 0xfa, 0x6b, 0xd9, 0xda, 0x94, 0x72, 0x52, 0xc6, 0xdf, 0x9c, 0xdb, 0x14, 0x21, 0xa5, 0x70, 0xe0, 0xdb, 0xd2, 0x98, 0xbc, 0x56, 0xf3, 0x5f, 0x84, 0x4c, 0x9b, 0x42, 0xff, 0x60, 0xe9, 0xaf, 0x17, 0xb0, 0x06, 0x63, 0xe8, 0x8e, 0x08, 0x8f, 0x8a, 0x84, 0xc7, 0x30, 0x94, 0xe9, 0x44, 0xe7, }; static const unsigned char xdh_wei448_2953_ourpubkey[] = { 0x9d, 0xe0, 0xb0, 0xbe, 0xfa, 0x0a, 0xf1, 0x91, 0xa4, 0xce, 0xc2, 0xb6, 0x7b, 0x77, 0xf6, 0xa3, 0x81, 0x04, 0x99, 0xc3, 0x01, 0x0b, 0xe6, 0x02, 0xa0, 0x25, 0x8c, 0xb0, 0x66, 0x7a, 0xdf, 0xa0, 0xdd, 0x7c, 0x81, 0x56, 0xee, 0xb5, 0xb1, 0x26, 0xd5, 0x57, 0x96, 0x4d, 0xd0, 0x1a, 0xfb, 0xfe, 0x06, 0xf4, 0xf9, 0x62, 0x04, 0xb2, 0x8c, 0x23, }; static const unsigned char xdh_wei448_2953_privkey[] = { 0x2c, 0x8b, 0x77, 0x93, 0x12, 0x30, 0xba, 0xa9, 0x34, 0x0d, 0xec, 0xa7, 0x60, 0x7f, 0x72, 0x18, 0x66, 0x11, 0xe6, 0x40, 0xff, 0x3f, 0x90, 0xcd, 0xee, 0xcb, 0xf2, 0x07, 0xac, 0x31, 0xa2, 0x33, 0xcf, 0x57, 0x5f, 0xe9, 0xb9, 0xfb, 0x5f, 0x43, 0x81, 0xa2, 0xe8, 0x83, 0x60, 0xcd, 0xe2, 0xb0, 0x84, 0x71, 0x46, 0x30, 0x3f, 0xaf, 0xa6, 0xfa, }; static const unsigned char xdh_wei448_2953_sharedsecret[] = { 0xcf, 0xc1, 0xd9, 0xe2, 0x50, 0x44, 0x7d, 0x37, 0xa7, 0x0f, 0xfb, 0x67, 0x64, 0xe4, 0x24, 0x9f, 0x89, 0xa1, 0x4d, 0x16, 0x84, 0x57, 0x64, 0x17, 0x49, 0xd5, 0x1b, 0xda, 0x5f, 0x31, 0x09, 0xb5, 0x5e, 0xb6, 0x4d, 0x7e, 0x1d, 0xf1, 0x1a, 0x47, 0xc7, 0xca, 0xca, 0xc9, 0x91, 0xb8, 0x7b, 0x5b, 0xed, 0x3b, 0xe4, 0x54, 0xda, 0x3f, 0x9e, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_2953 = { .name = "xdh_wei448_2953", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2953_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2953_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2953_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2953_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 370 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2954 for XDH, tcId is 371 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2954_peerpubkey[] = { 0x28, 0xe2, 0x9f, 0xac, 0x5e, 0xeb, 0x6b, 0x5f, 0x19, 0xd1, 0x4f, 0x73, 0x6f, 0x09, 0x23, 0xd3, 0xca, 0x8a, 0x6f, 0x0c, 0x6d, 0xad, 0xb0, 0x99, 0x4e, 0x74, 0x23, 0xb1, 0x62, 0x13, 0x5b, 0x69, 0x64, 0xaf, 0xeb, 0xa4, 0x73, 0x09, 0xa5, 0xc3, 0x40, 0xe8, 0x64, 0xbe, 0x2d, 0x86, 0xde, 0x3f, 0x4c, 0x39, 0x65, 0xf5, 0x2e, 0xc6, 0xfb, 0x10, }; static const unsigned char xdh_wei448_2954_ourpubkey[] = { 0xaa, 0x85, 0x5d, 0x4d, 0xe7, 0x4d, 0xf8, 0x99, 0xf7, 0xae, 0x4b, 0xfa, 0x84, 0xc2, 0x97, 0x8d, 0xc4, 0xc7, 0xb7, 0x6b, 0x3c, 0xbf, 0xa2, 0x7f, 0x4f, 0x7c, 0x5e, 0x9f, 0x8e, 0x7e, 0xe9, 0xca, 0x89, 0x5e, 0x4d, 0xd6, 0x70, 0xbd, 0x2d, 0x9b, 0x90, 0x44, 0xc8, 0x31, 0x02, 0xd7, 0x76, 0x47, 0x2d, 0x25, 0x05, 0x36, 0x33, 0x03, 0xe7, 0x09, }; static const unsigned char xdh_wei448_2954_privkey[] = { 0xbc, 0x1e, 0x2a, 0xdc, 0xe0, 0xc4, 0x01, 0x64, 0xd0, 0x8b, 0x69, 0xc0, 0x85, 0xcb, 0x06, 0x43, 0xf9, 0x4d, 0x0f, 0xbb, 0x63, 0x40, 0xf1, 0x4a, 0x4a, 0xdf, 0xf5, 0x9d, 0x40, 0x2e, 0x96, 0xc7, 0xc6, 0xaf, 0x2d, 0xcc, 0x26, 0xd8, 0xd5, 0xdf, 0x8b, 0x90, 0xc8, 0xb2, 0x9c, 0x29, 0x81, 0xc3, 0x13, 0xc9, 0x6e, 0x89, 0xd8, 0xbb, 0x21, 0xe8, }; static const unsigned char xdh_wei448_2954_sharedsecret[] = { 0xda, 0x0f, 0x3e, 0x1d, 0xd1, 0x93, 0x73, 0x5a, 0xf9, 0x64, 0x89, 0xf5, 0x54, 0xaf, 0xef, 0x42, 0xef, 0x83, 0x7e, 0x7b, 0xcd, 0xb2, 0x07, 0xd9, 0x4e, 0xe5, 0xed, 0x41, 0x1a, 0xea, 0x06, 0x1d, 0x47, 0x86, 0x50, 0xe5, 0x5f, 0x3a, 0xe2, 0x6f, 0xe6, 0x2b, 0xd9, 0xe6, 0xf2, 0x70, 0x95, 0x96, 0xbc, 0x03, 0xf7, 0x82, 0x7a, 0x7b, 0x06, 0x18, }; static const wycheproof_xdh_test xdh_wei448_2954 = { .name = "xdh_wei448_2954", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2954_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2954_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2954_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2954_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 371 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2955 for XDH, tcId is 372 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2955_peerpubkey[] = { 0xbd, 0xc9, 0x21, 0x80, 0x54, 0xef, 0x5e, 0x3a, 0xa4, 0x40, 0x5b, 0xc7, 0x1e, 0x75, 0xe9, 0x06, 0x72, 0x60, 0xa7, 0x51, 0x06, 0x64, 0xf9, 0x1d, 0xd2, 0x88, 0x10, 0xbf, 0x2f, 0x6b, 0xec, 0x45, 0xd9, 0xb1, 0x7c, 0x96, 0xb3, 0xb5, 0x0a, 0x5e, 0xcd, 0xf6, 0x4f, 0x1e, 0xa9, 0x68, 0x28, 0xb6, 0x8c, 0x2e, 0x2c, 0x5c, 0xc2, 0x68, 0xb8, 0x45, }; static const unsigned char xdh_wei448_2955_ourpubkey[] = { 0x10, 0xa7, 0x81, 0xa0, 0x97, 0x0f, 0x30, 0xad, 0x54, 0xc6, 0xe3, 0xf1, 0xff, 0x94, 0x56, 0x37, 0xe6, 0x87, 0x38, 0xb7, 0x22, 0x82, 0xac, 0x6f, 0x85, 0x53, 0x3b, 0xf0, 0xdb, 0x32, 0x4b, 0x17, 0x63, 0x0b, 0x19, 0xcd, 0xb5, 0xcc, 0x7a, 0x96, 0x8d, 0x60, 0xf2, 0x97, 0x3e, 0x42, 0x2c, 0xeb, 0x81, 0xc3, 0xad, 0x04, 0xee, 0x93, 0x7e, 0xad, }; static const unsigned char xdh_wei448_2955_privkey[] = { 0xbc, 0xae, 0x78, 0x6f, 0x69, 0xd6, 0x17, 0x12, 0x96, 0x2a, 0xf8, 0x9f, 0x67, 0x39, 0x72, 0xdc, 0x89, 0xa4, 0xde, 0xc5, 0x1f, 0xa7, 0x96, 0xe8, 0x25, 0xb3, 0x02, 0x05, 0xb1, 0x1c, 0xae, 0x6c, 0xc7, 0x35, 0xff, 0x5e, 0x1e, 0xe4, 0x82, 0x74, 0x01, 0x05, 0x3b, 0xb4, 0x8a, 0x9f, 0xb9, 0xfb, 0x18, 0xd9, 0xd9, 0x31, 0xf9, 0xcb, 0x56, 0xe9, }; static const unsigned char xdh_wei448_2955_sharedsecret[] = { 0x23, 0xa1, 0x0a, 0x2e, 0xf5, 0x07, 0xd3, 0x62, 0x66, 0xf3, 0x69, 0x36, 0x30, 0xfa, 0x7d, 0x0d, 0x59, 0x03, 0x26, 0xd0, 0x99, 0x4c, 0x22, 0xa2, 0xd5, 0xcf, 0x85, 0xd2, 0x24, 0xd0, 0x08, 0x54, 0xb7, 0x2b, 0x32, 0x74, 0xe9, 0xd1, 0x06, 0x10, 0x33, 0xb1, 0x1c, 0x6f, 0xdb, 0xde, 0x27, 0x37, 0x7b, 0xe3, 0x6b, 0xce, 0x38, 0xcc, 0xbf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_2955 = { .name = "xdh_wei448_2955", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2955_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2955_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2955_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2955_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 372 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2956 for XDH, tcId is 373 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2956_peerpubkey[] = { 0x7f, 0xda, 0xea, 0x8c, 0xf3, 0x83, 0x20, 0x55, 0xad, 0x8e, 0x05, 0x93, 0xa6, 0xae, 0x7f, 0x31, 0x93, 0x9d, 0xe0, 0x46, 0x3c, 0x56, 0xec, 0x32, 0x8c, 0xa9, 0x25, 0x0c, 0xff, 0x0a, 0x45, 0x63, 0x89, 0x60, 0xce, 0x55, 0x8e, 0x95, 0xd8, 0x06, 0xdd, 0x89, 0x43, 0xfb, 0x2d, 0x8e, 0xc0, 0x06, 0xcf, 0x44, 0x98, 0x75, 0xeb, 0xa0, 0x6b, 0x7e, }; static const unsigned char xdh_wei448_2956_ourpubkey[] = { 0xee, 0x0d, 0x38, 0xbf, 0x83, 0xbd, 0x86, 0x9b, 0x20, 0xa9, 0x5c, 0x3c, 0x4b, 0x53, 0xeb, 0xbf, 0x41, 0xf6, 0x26, 0x91, 0x2a, 0x3e, 0xe2, 0xb2, 0x15, 0x8f, 0x6d, 0x47, 0xf5, 0xe9, 0x45, 0xd6, 0xd4, 0x38, 0x5f, 0x60, 0x20, 0x3c, 0xcc, 0x10, 0x74, 0x72, 0xea, 0x0f, 0x21, 0xe1, 0x7f, 0xb5, 0x7d, 0x0c, 0xb1, 0x5c, 0x93, 0x14, 0x40, 0x76, }; static const unsigned char xdh_wei448_2956_privkey[] = { 0x68, 0xfc, 0xdc, 0xc5, 0xba, 0x2e, 0x44, 0x9b, 0x1b, 0x14, 0xd1, 0x1a, 0x27, 0x28, 0x12, 0xe8, 0xcf, 0xf2, 0xbf, 0x54, 0x8e, 0xa4, 0xf2, 0x28, 0x16, 0xd3, 0xb1, 0xfa, 0x8d, 0xa1, 0x01, 0xeb, 0x8d, 0x72, 0x5b, 0x2c, 0x86, 0x4c, 0x72, 0x84, 0x3e, 0x46, 0x45, 0xf3, 0x59, 0xea, 0x23, 0x6c, 0xc8, 0x3f, 0xf6, 0xa9, 0x3c, 0x7a, 0xbc, 0xf8, }; static const unsigned char xdh_wei448_2956_sharedsecret[] = { 0x98, 0x6e, 0x69, 0x86, 0x0b, 0xcf, 0x20, 0x59, 0xd8, 0x32, 0xb8, 0x6a, 0x15, 0xb6, 0xc5, 0x36, 0xf8, 0xb8, 0x47, 0xb7, 0x14, 0xa1, 0xdc, 0x64, 0x84, 0x87, 0xd6, 0xa4, 0xd9, 0xed, 0xb0, 0xe0, 0x04, 0xdc, 0xd9, 0x82, 0x09, 0x9f, 0x34, 0x4e, 0x23, 0xff, 0x36, 0x83, 0x12, 0xb3, 0xf2, 0xec, 0x85, 0x3f, 0x33, 0x20, 0x67, 0x43, 0x24, 0x60, }; static const wycheproof_xdh_test xdh_wei448_2956 = { .name = "xdh_wei448_2956", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2956_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2956_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2956_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2956_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 373 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2957 for XDH, tcId is 374 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2957_peerpubkey[] = { 0x07, 0x03, 0xc1, 0xc0, 0x35, 0x2e, 0x54, 0xc0, 0xcb, 0xc3, 0xc2, 0xec, 0x9f, 0x2d, 0x27, 0x97, 0xfe, 0xb2, 0x2e, 0x1f, 0x01, 0xb4, 0x3f, 0xb0, 0xda, 0x67, 0x5e, 0xba, 0x50, 0xc1, 0xa6, 0x96, 0xc9, 0x23, 0x69, 0x00, 0x61, 0xc8, 0xf3, 0x6f, 0x95, 0xab, 0x01, 0xf0, 0x8d, 0x3f, 0x6b, 0x43, 0xf1, 0xa5, 0x68, 0x8a, 0x7c, 0xe6, 0x9d, 0x7f, }; static const unsigned char xdh_wei448_2957_ourpubkey[] = { 0x1f, 0x7a, 0x92, 0x5f, 0x1f, 0xd8, 0xd5, 0x4b, 0xec, 0x8c, 0xbd, 0x82, 0xa1, 0x63, 0xa5, 0x63, 0x3d, 0x7f, 0x99, 0xbd, 0x8e, 0x98, 0xd1, 0xd9, 0x33, 0x13, 0x49, 0xcc, 0x94, 0x06, 0xee, 0xe4, 0x98, 0xd1, 0xc7, 0x10, 0x5e, 0xf4, 0xa9, 0xf5, 0x92, 0xfb, 0x3b, 0x7e, 0xba, 0x6f, 0x9f, 0x3e, 0x8f, 0xec, 0x5f, 0xc6, 0xd6, 0xa8, 0x2e, 0x3b, }; static const unsigned char xdh_wei448_2957_privkey[] = { 0x8c, 0x92, 0x48, 0x35, 0x57, 0x10, 0xe2, 0xa5, 0xb5, 0xfc, 0x05, 0x82, 0x9b, 0x97, 0xa9, 0x9b, 0xe5, 0x5a, 0x44, 0x1b, 0xc6, 0xc6, 0x17, 0xed, 0xaf, 0x5f, 0xe8, 0xb3, 0x63, 0x27, 0x04, 0x76, 0xb1, 0x51, 0x6e, 0x42, 0x49, 0x79, 0x76, 0x32, 0x67, 0xb8, 0x5c, 0xf9, 0x21, 0x2f, 0x58, 0xb0, 0x2b, 0x5f, 0x5c, 0xf0, 0xae, 0x57, 0x3c, 0xeb, }; static const unsigned char xdh_wei448_2957_sharedsecret[] = { 0x2c, 0xfe, 0x18, 0x4e, 0x46, 0x42, 0xbd, 0x7f, 0xb7, 0x82, 0x6d, 0x74, 0x86, 0x43, 0xdc, 0x1e, 0x4b, 0xad, 0xe0, 0x1e, 0xfd, 0xbb, 0x97, 0xab, 0x43, 0x75, 0xce, 0x70, 0x5d, 0x50, 0xeb, 0x5f, 0xa4, 0xb7, 0x15, 0xf8, 0xf6, 0x8c, 0xb4, 0xc2, 0xd3, 0x1f, 0x40, 0x5b, 0x9f, 0xcc, 0x7f, 0xdf, 0xaf, 0x45, 0xe2, 0x50, 0xee, 0xb4, 0x25, 0x96, }; static const wycheproof_xdh_test xdh_wei448_2957 = { .name = "xdh_wei448_2957", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2957_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2957_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2957_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2957_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 374 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2958 for XDH, tcId is 375 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2958_peerpubkey[] = { 0x4d, 0xa7, 0xda, 0xb7, 0xbb, 0xd2, 0xd1, 0xe6, 0x5f, 0xa8, 0x27, 0xad, 0x65, 0x73, 0xb0, 0x58, 0xef, 0x88, 0xa6, 0x6b, 0x65, 0x58, 0xcb, 0xd5, 0x9a, 0x71, 0x05, 0x5f, 0x9f, 0x4e, 0xec, 0xb8, 0x17, 0xb4, 0xae, 0xd5, 0x62, 0xe5, 0xf7, 0x17, 0x8d, 0xa3, 0xb9, 0xe6, 0x38, 0xe6, 0xf8, 0xe0, 0xa4, 0xb2, 0x7c, 0xba, 0xd7, 0x7c, 0x7a, 0x81, }; static const unsigned char xdh_wei448_2958_ourpubkey[] = { 0xfc, 0xb0, 0x22, 0x94, 0x87, 0x0f, 0xb5, 0xcf, 0xa8, 0x5f, 0x3c, 0xd4, 0xd7, 0xb6, 0x5f, 0x80, 0xe7, 0xf8, 0x42, 0xd3, 0xdb, 0x9d, 0xf6, 0x9d, 0xea, 0x74, 0xf7, 0x90, 0x05, 0x71, 0x65, 0x5c, 0x93, 0x7d, 0xa9, 0xdc, 0x7f, 0xcb, 0xcb, 0x39, 0xc5, 0x12, 0x94, 0xf8, 0x31, 0x1e, 0xb5, 0xc7, 0x2f, 0xeb, 0x1d, 0x92, 0x28, 0xcf, 0xb0, 0xa1, }; static const unsigned char xdh_wei448_2958_privkey[] = { 0xc0, 0x53, 0x32, 0x24, 0xb8, 0x9a, 0x99, 0x1a, 0x65, 0xfe, 0x40, 0x36, 0x5e, 0x5f, 0x15, 0xaa, 0xb2, 0xbc, 0x76, 0x75, 0x3f, 0xb4, 0xa2, 0x21, 0xf1, 0x29, 0x14, 0x7a, 0xb9, 0x27, 0x4c, 0x76, 0x22, 0xc2, 0x41, 0xfb, 0x7e, 0x97, 0xdb, 0x21, 0x83, 0x56, 0xf3, 0xd0, 0x59, 0x40, 0x41, 0xba, 0x51, 0x03, 0xaf, 0x29, 0x84, 0xc5, 0xc0, 0xf5, }; static const unsigned char xdh_wei448_2958_sharedsecret[] = { 0xe8, 0xef, 0x23, 0x26, 0x55, 0x5f, 0x0f, 0xf5, 0x06, 0x2a, 0x57, 0xd4, 0x54, 0x82, 0xd5, 0x76, 0x72, 0x80, 0x20, 0x15, 0x0b, 0xd1, 0x0f, 0xa1, 0xf9, 0x5f, 0x09, 0x57, 0x47, 0x1e, 0x7b, 0xc4, 0x38, 0x85, 0x54, 0x2d, 0x04, 0x19, 0x07, 0xf5, 0xdc, 0xfe, 0x43, 0xd2, 0xaa, 0x86, 0x28, 0x61, 0x23, 0xc0, 0x04, 0x32, 0xf9, 0x8f, 0x59, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_2958 = { .name = "xdh_wei448_2958", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2958_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2958_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2958_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2958_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 375 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2959 for XDH, tcId is 376 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2959_peerpubkey[] = { 0x5f, 0x95, 0xcf, 0x0a, 0xfe, 0x8f, 0x99, 0x15, 0xd9, 0x83, 0xc7, 0x17, 0x54, 0x32, 0x9e, 0xb0, 0x52, 0x77, 0x68, 0x60, 0x5b, 0xa8, 0xe5, 0x8c, 0xa2, 0xc6, 0x4a, 0x75, 0x0a, 0x52, 0x8c, 0x1a, 0x6c, 0x1a, 0xf8, 0x83, 0x7d, 0x93, 0xfc, 0x88, 0xe7, 0x2d, 0x8d, 0xdb, 0x67, 0x5f, 0xef, 0xda, 0x43, 0x85, 0x1d, 0x19, 0xf7, 0x99, 0x78, 0x85, }; static const unsigned char xdh_wei448_2959_ourpubkey[] = { 0x53, 0xc2, 0xf1, 0xdf, 0x08, 0x64, 0xb2, 0xc9, 0x54, 0x95, 0x7f, 0x3f, 0xd2, 0x9f, 0x92, 0xb9, 0x0b, 0xba, 0x8b, 0x39, 0x4a, 0x39, 0x0b, 0x45, 0xc4, 0xbc, 0x9e, 0xbf, 0x69, 0x4e, 0xb5, 0xd2, 0x39, 0x1d, 0x59, 0x0b, 0x8c, 0xd5, 0x23, 0xc9, 0xcd, 0x53, 0x3d, 0xd4, 0x9c, 0x2c, 0x08, 0xf9, 0x5b, 0xa6, 0x17, 0x07, 0x41, 0x70, 0x8c, 0xb6, }; static const unsigned char xdh_wei448_2959_privkey[] = { 0xe4, 0x58, 0x55, 0x7f, 0xbd, 0xec, 0x2e, 0x38, 0xa7, 0x6a, 0x03, 0xb7, 0xd7, 0x96, 0x4e, 0xe7, 0xd0, 0xa9, 0x52, 0xc3, 0xbe, 0x4f, 0x04, 0x45, 0x89, 0xa2, 0xda, 0xe9, 0x1e, 0x18, 0x44, 0xe7, 0x0b, 0x5b, 0xa2, 0x73, 0x67, 0xec, 0x7f, 0xc5, 0x48, 0x5c, 0xca, 0x82, 0xf7, 0xde, 0xdf, 0x47, 0x42, 0xa5, 0x6c, 0x7d, 0xb3, 0xe5, 0x98, 0xf3, }; static const unsigned char xdh_wei448_2959_sharedsecret[] = { 0x75, 0x31, 0xde, 0x90, 0xb1, 0x98, 0xac, 0xdb, 0x91, 0xd8, 0xd5, 0xff, 0xda, 0x2a, 0x9b, 0xd3, 0xaf, 0x0d, 0x2e, 0x04, 0x65, 0x09, 0x4d, 0xda, 0xe2, 0xdb, 0x7f, 0x9e, 0x21, 0xfb, 0x12, 0x57, 0x91, 0x20, 0x34, 0x56, 0xc6, 0x9e, 0x73, 0xa5, 0x46, 0xca, 0x38, 0x20, 0x61, 0x7a, 0x31, 0x2c, 0xd3, 0x17, 0x9c, 0xde, 0x2d, 0x7e, 0xcb, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2959 = { .name = "xdh_wei448_2959", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2959_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2959_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2959_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2959_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 376 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2960 for XDH, tcId is 377 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2960_peerpubkey[] = { 0xa9, 0x1e, 0xe7, 0x64, 0xb9, 0x06, 0x93, 0x11, 0x51, 0x1b, 0xb4, 0xbd, 0xeb, 0xef, 0x48, 0x5f, 0xf2, 0xfb, 0x26, 0xe3, 0x4c, 0xa7, 0x44, 0x7b, 0x74, 0x33, 0xce, 0x92, 0xd6, 0x7e, 0xc2, 0x41, 0x95, 0x16, 0xc8, 0x87, 0x27, 0xf0, 0x7e, 0x47, 0x3b, 0xa6, 0x31, 0xa0, 0xf6, 0x68, 0x79, 0x9d, 0x86, 0x1c, 0x72, 0x46, 0xa3, 0x61, 0x73, 0x2e, }; static const unsigned char xdh_wei448_2960_ourpubkey[] = { 0x1b, 0x61, 0x76, 0xfa, 0x7e, 0x4d, 0x58, 0x4d, 0x77, 0x4e, 0xf8, 0xe8, 0x8b, 0xd5, 0x7b, 0xe7, 0xb0, 0xed, 0x7d, 0xe2, 0x54, 0x05, 0xcb, 0x2c, 0x8e, 0xda, 0xc6, 0x44, 0x03, 0xda, 0x14, 0xe1, 0x59, 0x9f, 0x59, 0x9d, 0x9d, 0xa5, 0x25, 0x53, 0x1d, 0xc3, 0x31, 0x43, 0x6b, 0x0e, 0xb3, 0xdb, 0x9a, 0x3d, 0x36, 0xfe, 0xa7, 0xd0, 0xcc, 0xec, }; static const unsigned char xdh_wei448_2960_privkey[] = { 0xcc, 0x78, 0x1a, 0x9d, 0xd0, 0xb1, 0x32, 0x1a, 0x4f, 0xf4, 0x4d, 0x3a, 0x97, 0xa8, 0x2f, 0xd4, 0x3b, 0x8b, 0xf4, 0xd4, 0x46, 0xa1, 0xef, 0x32, 0xa2, 0x14, 0x76, 0x48, 0xf3, 0x99, 0xd9, 0xae, 0x66, 0xcd, 0xf9, 0x55, 0x5d, 0xf5, 0xc2, 0xa9, 0xe3, 0xab, 0x33, 0x00, 0x46, 0x2a, 0x52, 0x20, 0x14, 0x11, 0x09, 0x0c, 0x76, 0x4f, 0x4e, 0xf2, }; static const unsigned char xdh_wei448_2960_sharedsecret[] = { 0xb9, 0x0c, 0x03, 0x5c, 0xfe, 0x44, 0xce, 0x40, 0x0c, 0x66, 0xe3, 0xa0, 0x90, 0x32, 0x85, 0x6d, 0x56, 0x74, 0x49, 0xbd, 0x98, 0x8d, 0xbf, 0xa0, 0x52, 0xee, 0x8f, 0xf0, 0x8b, 0xd0, 0x47, 0xc2, 0x94, 0xb7, 0xbe, 0x90, 0xb2, 0x8b, 0xa8, 0x90, 0xaf, 0x46, 0x1b, 0xaa, 0xba, 0xd2, 0xcb, 0x0e, 0x31, 0x1a, 0x12, 0xe6, 0xa2, 0xc5, 0x93, 0x3d, }; static const wycheproof_xdh_test xdh_wei448_2960 = { .name = "xdh_wei448_2960", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2960_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2960_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2960_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2960_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 377 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2961 for XDH, tcId is 378 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2961_peerpubkey[] = { 0xf2, 0xf5, 0xf2, 0xc7, 0xc6, 0xe5, 0x79, 0x77, 0x67, 0x11, 0x59, 0x10, 0x82, 0xad, 0xf2, 0x9e, 0xa2, 0xec, 0x35, 0x96, 0xdb, 0x73, 0xa0, 0xda, 0xf8, 0x67, 0x0a, 0x4f, 0xab, 0x96, 0x0f, 0x74, 0xa4, 0x8e, 0xb3, 0xd3, 0xab, 0x6d, 0x6e, 0x1e, 0xa9, 0x49, 0x71, 0x80, 0x9f, 0x42, 0xb8, 0x38, 0x72, 0x8e, 0xc9, 0x9e, 0xd4, 0xe8, 0xa9, 0xaa, }; static const unsigned char xdh_wei448_2961_ourpubkey[] = { 0xc2, 0x51, 0x37, 0x5f, 0xe9, 0x1f, 0x14, 0x75, 0x0a, 0xb3, 0x47, 0xb9, 0xe4, 0x7b, 0xb3, 0xdf, 0xbb, 0x82, 0x87, 0x0e, 0x5d, 0xe0, 0x8e, 0x08, 0x42, 0x27, 0xa5, 0x67, 0x44, 0x2c, 0x5a, 0x83, 0x35, 0x69, 0x21, 0xd3, 0x01, 0xca, 0x20, 0x05, 0xf3, 0x52, 0xb3, 0x56, 0xfa, 0x86, 0xa9, 0x97, 0xf5, 0x91, 0x6b, 0xd2, 0x5d, 0xd3, 0xcd, 0x3b, }; static const unsigned char xdh_wei448_2961_privkey[] = { 0xfc, 0x9d, 0xee, 0x93, 0x89, 0x06, 0x11, 0xc1, 0x15, 0x21, 0xce, 0x1f, 0x22, 0x7a, 0x66, 0xb4, 0xab, 0xd8, 0x05, 0x7c, 0x76, 0xff, 0x83, 0x82, 0x78, 0xc9, 0xa6, 0x28, 0xe4, 0x46, 0xfc, 0x20, 0xc3, 0xcd, 0xc3, 0x85, 0x61, 0x2e, 0x84, 0xd2, 0xe4, 0x70, 0xbf, 0xf8, 0x0e, 0xef, 0x57, 0x05, 0x14, 0x59, 0x5b, 0x35, 0xbc, 0x1a, 0x13, 0xe6, }; static const unsigned char xdh_wei448_2961_sharedsecret[] = { 0x3b, 0x80, 0x35, 0xf4, 0x81, 0x6c, 0xce, 0x9a, 0xdf, 0xfa, 0x75, 0x50, 0x82, 0x51, 0x96, 0x84, 0x06, 0x25, 0x29, 0xe5, 0x07, 0x46, 0x66, 0xf6, 0xc3, 0x19, 0x5a, 0xf6, 0x26, 0xb7, 0x34, 0xdd, 0x3a, 0x9c, 0xc7, 0xfd, 0xdf, 0xd0, 0x10, 0xbf, 0xb9, 0x00, 0xe9, 0x59, 0x29, 0x29, 0xa6, 0xc8, 0x72, 0x5d, 0x60, 0xdf, 0x6f, 0xcc, 0xbe, 0x05, }; static const wycheproof_xdh_test xdh_wei448_2961 = { .name = "xdh_wei448_2961", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2961_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2961_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2961_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2961_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 378 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2962 for XDH, tcId is 379 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2962_peerpubkey[] = { 0x6c, 0xef, 0x89, 0x65, 0x3c, 0xcc, 0x19, 0x99, 0xa5, 0x98, 0x0a, 0x53, 0x7a, 0x2d, 0xa8, 0x26, 0xdd, 0x9d, 0xd0, 0xa3, 0xba, 0x4a, 0xa3, 0xd4, 0x0b, 0x53, 0xd4, 0xe2, 0x1e, 0xa7, 0x44, 0xb1, 0xe9, 0x89, 0x30, 0x79, 0x2b, 0x34, 0xd7, 0x4b, 0x7e, 0x81, 0x7f, 0x15, 0xbb, 0x2c, 0x06, 0x6f, 0x40, 0xbb, 0xab, 0x05, 0x7a, 0xac, 0x9a, 0x40, }; static const unsigned char xdh_wei448_2962_ourpubkey[] = { 0xd9, 0x4b, 0xfa, 0x2c, 0x86, 0x2b, 0x65, 0x0b, 0x64, 0x83, 0x7d, 0xf1, 0xa9, 0xc9, 0x08, 0xce, 0x5f, 0xa7, 0x44, 0xc2, 0xc0, 0x2c, 0x71, 0x65, 0x6e, 0x0d, 0x92, 0x6e, 0x98, 0xf3, 0x1a, 0xc3, 0xf7, 0xb7, 0x37, 0x4b, 0xab, 0x6b, 0x01, 0xaa, 0x97, 0x67, 0x85, 0xdf, 0x46, 0x22, 0x47, 0x6f, 0x37, 0x9a, 0x27, 0xe7, 0xfd, 0x3c, 0x0b, 0x56, }; static const unsigned char xdh_wei448_2962_privkey[] = { 0xd8, 0xe1, 0x3c, 0x43, 0xed, 0x11, 0x43, 0x13, 0xd2, 0x3c, 0x04, 0xe5, 0x12, 0xad, 0x78, 0x20, 0x30, 0xcf, 0x65, 0xaa, 0x10, 0xbe, 0x0f, 0x43, 0x05, 0x03, 0x91, 0xe3, 0xfe, 0x2e, 0x3a, 0x55, 0x69, 0x7d, 0x24, 0x58, 0xff, 0xec, 0x4c, 0x8f, 0x66, 0x41, 0x4f, 0x69, 0xd9, 0x6f, 0x72, 0x5e, 0xe2, 0x37, 0xe8, 0xb7, 0x12, 0x54, 0x5c, 0xe4, }; static const unsigned char xdh_wei448_2962_sharedsecret[] = { 0xe6, 0x26, 0x59, 0x62, 0x59, 0x1d, 0x6a, 0xf3, 0x76, 0x1e, 0xc7, 0xea, 0xfb, 0x52, 0x2b, 0x0e, 0x1e, 0x49, 0x3e, 0x6d, 0xb8, 0xae, 0x41, 0xff, 0xeb, 0x89, 0xb9, 0xa0, 0xa4, 0xe8, 0xc7, 0x1a, 0x87, 0x29, 0xa7, 0xe2, 0x4e, 0xfd, 0x41, 0x3a, 0x18, 0x17, 0x8c, 0xf0, 0x6d, 0xd4, 0x0d, 0xf4, 0xde, 0x7e, 0xcd, 0x39, 0x7f, 0x00, 0xb6, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_2962 = { .name = "xdh_wei448_2962", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2962_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2962_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2962_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2962_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 379 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2963 for XDH, tcId is 380 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2963_peerpubkey[] = { 0x19, 0xe5, 0x81, 0xec, 0xc7, 0x9d, 0x67, 0xd1, 0x56, 0x90, 0x89, 0x3a, 0xe6, 0x76, 0x39, 0xa6, 0x8e, 0x66, 0xb9, 0x25, 0x26, 0x77, 0xc8, 0x9a, 0xa6, 0x6b, 0x57, 0xd9, 0x69, 0xcd, 0xbf, 0x99, 0xec, 0x66, 0xec, 0x96, 0x4c, 0x02, 0x5a, 0xef, 0xa0, 0x81, 0x7f, 0xcf, 0xb7, 0x68, 0x9f, 0xb4, 0x77, 0x05, 0x51, 0x29, 0xe7, 0x7c, 0xe8, 0x92, }; static const unsigned char xdh_wei448_2963_ourpubkey[] = { 0xcc, 0xec, 0xd0, 0xb1, 0x24, 0x3e, 0xc4, 0xff, 0xf0, 0x1e, 0x0c, 0xd8, 0x88, 0xbe, 0x8f, 0x79, 0xfe, 0x80, 0xd5, 0xb5, 0xcb, 0x28, 0x3d, 0x66, 0x91, 0xb5, 0xec, 0xcc, 0x84, 0x05, 0x81, 0xf4, 0x4e, 0x99, 0x37, 0x67, 0x4b, 0x87, 0xc8, 0xda, 0xc2, 0xd0, 0x24, 0x82, 0xfe, 0x59, 0x3d, 0x70, 0x45, 0xe1, 0x60, 0xf3, 0xb6, 0xf9, 0x7a, 0x2c, }; static const unsigned char xdh_wei448_2963_privkey[] = { 0x94, 0x6e, 0x8d, 0x97, 0x47, 0x43, 0x26, 0xca, 0x14, 0xb1, 0xf8, 0x5b, 0x64, 0xfb, 0x22, 0xf7, 0xf6, 0xae, 0xec, 0xe2, 0x75, 0x9b, 0xfe, 0xc0, 0x33, 0x7d, 0x80, 0xab, 0xb8, 0x98, 0xd8, 0x57, 0xf9, 0xda, 0x52, 0x84, 0xff, 0x68, 0x8c, 0xec, 0x5e, 0x5d, 0xc9, 0x62, 0xeb, 0x01, 0x1f, 0x42, 0xd1, 0x57, 0x71, 0xc1, 0xaa, 0x89, 0xc4, 0xea, }; static const unsigned char xdh_wei448_2963_sharedsecret[] = { 0x33, 0x19, 0x0b, 0x5c, 0xd0, 0x3a, 0x49, 0x6f, 0xa9, 0xfb, 0xe8, 0x3f, 0x0d, 0x6c, 0x4a, 0x06, 0xe1, 0xf7, 0xc0, 0x3a, 0xb6, 0xb3, 0xf4, 0x1e, 0x83, 0x6c, 0x25, 0x20, 0xaf, 0x79, 0xd1, 0x5c, 0x8e, 0xd3, 0x64, 0xe2, 0x7d, 0x85, 0x44, 0x6d, 0x87, 0x4d, 0x08, 0x98, 0xee, 0xc5, 0xb9, 0xa5, 0xb0, 0xd7, 0x81, 0x17, 0x6c, 0xa6, 0xc3, 0x35, }; static const wycheproof_xdh_test xdh_wei448_2963 = { .name = "xdh_wei448_2963", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2963_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2963_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2963_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2963_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 380 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2964 for XDH, tcId is 381 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2964_peerpubkey[] = { 0x13, 0x98, 0x9f, 0x93, 0x44, 0xc1, 0x10, 0xfb, 0x0a, 0x21, 0x6a, 0x23, 0x37, 0xc5, 0x3a, 0xde, 0xd3, 0x39, 0xd8, 0x60, 0x01, 0xe5, 0xc0, 0x0f, 0xc8, 0x83, 0x31, 0x34, 0x99, 0xb4, 0xc1, 0x17, 0x48, 0x7f, 0xf4, 0x9f, 0xcd, 0xa1, 0xc3, 0x6a, 0xc0, 0x80, 0xb2, 0xa5, 0xed, 0xf0, 0xe6, 0x28, 0x26, 0xce, 0x01, 0x6b, 0x7b, 0x68, 0xf6, 0xa0, }; static const unsigned char xdh_wei448_2964_ourpubkey[] = { 0xa4, 0x31, 0x6a, 0x4b, 0xb8, 0x9a, 0x6d, 0x18, 0x11, 0x64, 0x58, 0x8d, 0x98, 0xca, 0x6f, 0xe6, 0xcf, 0x9d, 0xd9, 0x4a, 0x6a, 0x7c, 0x97, 0xc1, 0xd6, 0x0a, 0x60, 0x10, 0x82, 0x46, 0x21, 0x6b, 0x10, 0x5a, 0x11, 0xfa, 0x51, 0xde, 0xd1, 0x07, 0xb3, 0xd1, 0x4f, 0x1d, 0x30, 0xfd, 0x3f, 0x60, 0xd0, 0x2f, 0xea, 0x99, 0x31, 0x33, 0xd8, 0x40, }; static const unsigned char xdh_wei448_2964_privkey[] = { 0xcc, 0xb9, 0xda, 0x3c, 0x63, 0xe1, 0xed, 0xc2, 0x88, 0x4e, 0x19, 0xd8, 0xd1, 0x04, 0x0d, 0x9d, 0xd6, 0x82, 0x90, 0xd2, 0xec, 0xfc, 0xe7, 0xf9, 0xb1, 0xcd, 0x5c, 0xb1, 0x3d, 0xc3, 0xa5, 0xf3, 0x5d, 0x15, 0x0b, 0x39, 0x95, 0xdd, 0x76, 0xa1, 0x36, 0x33, 0xbe, 0xed, 0x2f, 0xed, 0xed, 0x76, 0x4b, 0x78, 0x73, 0xaf, 0xb6, 0x5c, 0xf6, 0xee, }; static const unsigned char xdh_wei448_2964_sharedsecret[] = { 0xdc, 0x25, 0x69, 0x06, 0xd9, 0x5f, 0x81, 0xe3, 0x0d, 0x47, 0x72, 0xc7, 0xaa, 0xd6, 0xb1, 0x4e, 0xc1, 0xe3, 0x1e, 0x62, 0x17, 0x31, 0x9a, 0x91, 0xaa, 0xc3, 0xbe, 0x8a, 0x36, 0x0e, 0x5d, 0x9a, 0x7e, 0x05, 0x15, 0xc6, 0x93, 0xfd, 0x99, 0x9f, 0x28, 0x88, 0x3d, 0x4b, 0xf8, 0xa8, 0xc6, 0x71, 0x66, 0x8a, 0xce, 0x30, 0xb7, 0x20, 0x8c, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_2964 = { .name = "xdh_wei448_2964", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2964_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2964_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2964_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2964_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 381 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2965 for XDH, tcId is 382 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2965_peerpubkey[] = { 0x92, 0x91, 0xf9, 0x26, 0x89, 0x0a, 0xa8, 0x69, 0x69, 0x97, 0x8c, 0x09, 0xe9, 0xec, 0xad, 0x96, 0x86, 0x65, 0x7f, 0x45, 0x1c, 0x93, 0x1e, 0xbe, 0x37, 0x49, 0x8d, 0xcb, 0x0e, 0x02, 0x80, 0x41, 0xe8, 0x44, 0x7f, 0x91, 0xfd, 0x87, 0x34, 0x77, 0xb4, 0x57, 0xcb, 0xd9, 0xa3, 0x93, 0x2f, 0xb2, 0x87, 0xf9, 0x45, 0xfe, 0x72, 0x13, 0xfc, 0xa4, }; static const unsigned char xdh_wei448_2965_ourpubkey[] = { 0x8a, 0x43, 0x6c, 0xb6, 0xd9, 0x5c, 0xba, 0x7a, 0x01, 0x6e, 0x93, 0x8d, 0xee, 0x35, 0x19, 0xfc, 0x3e, 0xd6, 0x90, 0x10, 0x28, 0x65, 0xe7, 0x29, 0x21, 0x54, 0x5a, 0xf7, 0x2c, 0x00, 0xf9, 0xe4, 0x10, 0x47, 0x6b, 0x3b, 0x24, 0x64, 0xf7, 0xda, 0xa8, 0xaf, 0x5f, 0x7e, 0x38, 0x83, 0x49, 0x52, 0x7e, 0xfe, 0x79, 0xc3, 0x9a, 0x1a, 0xe7, 0x03, }; static const unsigned char xdh_wei448_2965_privkey[] = { 0xf8, 0x7e, 0x2a, 0x3f, 0xea, 0x7e, 0x8a, 0xd5, 0xa3, 0xd2, 0x5b, 0xf6, 0x6d, 0xc3, 0x12, 0x36, 0x27, 0x9b, 0xdb, 0xc5, 0x9b, 0xf6, 0x1c, 0x47, 0x93, 0x0c, 0x49, 0x56, 0xf2, 0x2e, 0x02, 0xc0, 0x76, 0x7e, 0x55, 0xd1, 0xdd, 0xf3, 0x79, 0xce, 0x4e, 0x2d, 0x9c, 0x6b, 0xd3, 0x8a, 0xc6, 0x9e, 0x02, 0x4b, 0x2d, 0x9c, 0xfb, 0x18, 0x16, 0xe9, }; static const unsigned char xdh_wei448_2965_sharedsecret[] = { 0x67, 0x93, 0x1b, 0x5e, 0x94, 0x7f, 0x47, 0x9c, 0x05, 0xb0, 0x6f, 0x5d, 0x25, 0x6e, 0xa9, 0xe3, 0x55, 0x95, 0x06, 0x00, 0xc8, 0x04, 0xd9, 0xac, 0xca, 0x2e, 0x1a, 0x18, 0xc7, 0x1e, 0x54, 0xf4, 0x40, 0xaa, 0x5b, 0x1c, 0xaa, 0xae, 0x40, 0xda, 0x81, 0x52, 0x88, 0x84, 0xed, 0xd7, 0x1c, 0x59, 0x32, 0x98, 0x1b, 0x03, 0x98, 0x62, 0xe6, 0xde, }; static const wycheproof_xdh_test xdh_wei448_2965 = { .name = "xdh_wei448_2965", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2965_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2965_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2965_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2965_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 382 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2966 for XDH, tcId is 383 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2966_peerpubkey[] = { 0xe7, 0x89, 0x23, 0x79, 0x43, 0xcb, 0xb6, 0xb6, 0x38, 0xa2, 0xc9, 0x0d, 0x1c, 0x66, 0xb9, 0x28, 0x68, 0x50, 0xa6, 0xb7, 0xb4, 0x1e, 0x43, 0xc8, 0xa6, 0x52, 0x5d, 0x98, 0x04, 0x26, 0x48, 0xfe, 0x16, 0x2b, 0x61, 0xe1, 0x99, 0xba, 0x04, 0x1a, 0x95, 0xe7, 0x1d, 0x79, 0xb1, 0xbf, 0xb8, 0x11, 0x9b, 0x35, 0xa1, 0x44, 0xec, 0xea, 0xc5, 0xf4, }; static const unsigned char xdh_wei448_2966_ourpubkey[] = { 0xc0, 0x39, 0x73, 0xd7, 0x6b, 0xf3, 0x56, 0x09, 0x6b, 0x44, 0x7c, 0x96, 0xa0, 0x75, 0xc2, 0xf1, 0x7c, 0x6f, 0x63, 0xf6, 0x09, 0x4b, 0xe2, 0x79, 0xb1, 0xa9, 0x11, 0xe7, 0xb0, 0x8b, 0xcc, 0xe1, 0x76, 0xf2, 0xfe, 0x07, 0xd7, 0x1d, 0xd1, 0xce, 0x33, 0xe3, 0x6f, 0xb5, 0x00, 0x12, 0xe5, 0x7c, 0x61, 0xbc, 0x9a, 0xa0, 0x37, 0xac, 0x9e, 0x67, }; static const unsigned char xdh_wei448_2966_privkey[] = { 0x78, 0xeb, 0xd7, 0x26, 0x1f, 0x71, 0xc5, 0x3b, 0x04, 0xae, 0x01, 0x87, 0xa6, 0x6c, 0x83, 0x33, 0x67, 0x38, 0x3e, 0x8c, 0x80, 0x2c, 0xf6, 0x55, 0xb2, 0x74, 0xb5, 0xbd, 0x7c, 0x5c, 0x07, 0x28, 0x72, 0xa3, 0xe5, 0xd2, 0xf7, 0xc1, 0x34, 0x47, 0x53, 0xc8, 0xec, 0xc6, 0x8b, 0xc3, 0xfc, 0xea, 0xec, 0xca, 0xca, 0xfd, 0x72, 0x91, 0x39, 0xf0, }; static const unsigned char xdh_wei448_2966_sharedsecret[] = { 0x6f, 0x8f, 0xa9, 0xae, 0xdd, 0x0e, 0x3d, 0xec, 0x31, 0x88, 0x9e, 0x77, 0x51, 0xb9, 0x37, 0x8b, 0xcc, 0x1b, 0xf2, 0xd7, 0xbb, 0x08, 0x22, 0xfe, 0x5d, 0x76, 0x36, 0x10, 0xee, 0x41, 0xd3, 0xd3, 0xe8, 0xb4, 0x04, 0x44, 0x6f, 0x45, 0x6a, 0xf9, 0xe9, 0xed, 0x1c, 0x83, 0x1e, 0x84, 0x62, 0xee, 0x1a, 0xb2, 0x4f, 0x77, 0x18, 0xc6, 0xc9, 0xff, }; static const wycheproof_xdh_test xdh_wei448_2966 = { .name = "xdh_wei448_2966", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2966_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2966_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2966_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2966_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 383 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2967 for XDH, tcId is 384 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2967_peerpubkey[] = { 0x13, 0x32, 0xb9, 0xb6, 0x78, 0x2e, 0x4c, 0x90, 0x03, 0xc7, 0xfa, 0x28, 0x3b, 0xda, 0x21, 0x46, 0x83, 0x72, 0xb2, 0x52, 0x1e, 0xe7, 0xfd, 0xe4, 0x78, 0x5d, 0xde, 0x62, 0x54, 0x7a, 0x98, 0x4e, 0x95, 0x64, 0xb8, 0xcb, 0x8a, 0x88, 0x9c, 0x9f, 0x18, 0xaf, 0xd1, 0xa2, 0xaa, 0x41, 0xa8, 0x8a, 0xfc, 0x14, 0x43, 0x6b, 0x1f, 0xe0, 0x2d, 0x69, }; static const unsigned char xdh_wei448_2967_ourpubkey[] = { 0xbc, 0xef, 0xf8, 0x32, 0xd5, 0xb2, 0xa8, 0x46, 0x82, 0xae, 0xb2, 0xfe, 0x4e, 0x8d, 0xdd, 0xe6, 0xc6, 0x1f, 0x19, 0xb7, 0xbe, 0xaa, 0x10, 0x4c, 0xb3, 0x89, 0x93, 0x30, 0x12, 0x9e, 0x41, 0xa4, 0xc2, 0xe2, 0xfb, 0x1d, 0x4a, 0xb4, 0x08, 0x70, 0xba, 0x54, 0xf9, 0xb2, 0xaa, 0xba, 0xa6, 0xb5, 0xe5, 0x45, 0x08, 0x57, 0xe3, 0x2f, 0x60, 0x1c, }; static const unsigned char xdh_wei448_2967_privkey[] = { 0xe0, 0xce, 0x4d, 0xea, 0xa0, 0x83, 0xdc, 0x1c, 0xa7, 0x92, 0x7b, 0xb9, 0x1f, 0x6a, 0x76, 0xe5, 0x6e, 0x3b, 0x17, 0xe9, 0x72, 0x4d, 0xc5, 0x53, 0x4c, 0xd9, 0x5e, 0x53, 0x52, 0x21, 0xcc, 0xf2, 0x30, 0xe6, 0x51, 0x10, 0xda, 0x23, 0x75, 0x77, 0x28, 0xd8, 0x0c, 0x25, 0x84, 0x3b, 0x6d, 0xfe, 0x02, 0x2e, 0xa7, 0xe6, 0x6b, 0xed, 0x39, 0xe8, }; static const unsigned char xdh_wei448_2967_sharedsecret[] = { 0x4e, 0x35, 0xa6, 0x77, 0xd7, 0x5f, 0x81, 0x40, 0x80, 0x42, 0x69, 0x54, 0xa3, 0x1b, 0x7d, 0x91, 0xc3, 0x6c, 0x58, 0x36, 0x52, 0x4e, 0xee, 0xe4, 0x13, 0x8c, 0x7c, 0x42, 0x15, 0xbb, 0x86, 0x65, 0x1a, 0x40, 0x81, 0xf7, 0x57, 0x8b, 0x70, 0x8a, 0xaf, 0x53, 0x85, 0xe8, 0xf1, 0x95, 0x07, 0xa0, 0x3a, 0xf6, 0x49, 0xf9, 0x17, 0x99, 0x08, 0xca, }; static const wycheproof_xdh_test xdh_wei448_2967 = { .name = "xdh_wei448_2967", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2967_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2967_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2967_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2967_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 384 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2968 for XDH, tcId is 385 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2968_peerpubkey[] = { 0xbd, 0xd1, 0x80, 0xb5, 0xf6, 0xbb, 0x4f, 0xdc, 0xb2, 0x28, 0x8e, 0x45, 0x93, 0x8f, 0x0b, 0xfc, 0x5f, 0x9d, 0xa2, 0x58, 0x6a, 0xa8, 0xd5, 0x0d, 0x77, 0x1e, 0xbd, 0x50, 0xf5, 0x71, 0xd0, 0xea, 0xbb, 0xfe, 0xae, 0xa7, 0x7a, 0x0b, 0x6c, 0xbc, 0xd7, 0x15, 0xab, 0x56, 0x35, 0xd6, 0xc6, 0x22, 0xab, 0x2f, 0x6a, 0x68, 0x80, 0x96, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_2968_ourpubkey[] = { 0x2a, 0xf4, 0x66, 0xfb, 0x63, 0x46, 0xd7, 0x97, 0x19, 0xe1, 0x63, 0x39, 0x3d, 0xc8, 0xd6, 0x82, 0x43, 0xf8, 0x10, 0x52, 0xaf, 0x37, 0xf8, 0x1e, 0x9e, 0x19, 0xcc, 0x82, 0x11, 0x9a, 0x52, 0xdb, 0x88, 0x44, 0x6f, 0x41, 0x85, 0x06, 0x77, 0x9a, 0x93, 0x5f, 0x27, 0x7b, 0x73, 0xa5, 0x45, 0x2f, 0x17, 0x41, 0x5a, 0x20, 0x6c, 0xd0, 0xb3, 0xc4, }; static const unsigned char xdh_wei448_2968_privkey[] = { 0x20, 0x40, 0x9b, 0x40, 0x15, 0xd8, 0x73, 0x1f, 0x86, 0xbe, 0x47, 0xdb, 0xc0, 0x7d, 0x26, 0x87, 0xf0, 0x9a, 0x38, 0x01, 0x39, 0x6a, 0xfd, 0x94, 0xcf, 0x39, 0xe6, 0xf7, 0x46, 0x25, 0x35, 0xd7, 0x94, 0x0e, 0xcb, 0xbc, 0xf8, 0x58, 0xb3, 0xd9, 0x8e, 0xc0, 0x95, 0xb4, 0xfd, 0x52, 0x54, 0x81, 0xb4, 0xd3, 0x2d, 0xc8, 0xb8, 0x3a, 0x76, 0xe4, }; static const unsigned char xdh_wei448_2968_sharedsecret[] = { 0xaa, 0x2a, 0xeb, 0x87, 0x18, 0x6d, 0x27, 0x52, 0x89, 0xb4, 0x73, 0x54, 0x03, 0xc3, 0xb0, 0xf4, 0x13, 0x09, 0xa8, 0x6f, 0xcb, 0x26, 0xf9, 0xb9, 0x12, 0x16, 0x0a, 0xe5, 0x5b, 0xeb, 0xe8, 0x85, 0x4b, 0x63, 0x3f, 0xe3, 0x57, 0x84, 0x63, 0xec, 0x1e, 0x74, 0x80, 0x2d, 0xeb, 0x1d, 0x76, 0x1f, 0x77, 0x23, 0x71, 0xbf, 0x6d, 0xf2, 0x4d, 0x77, }; static const wycheproof_xdh_test xdh_wei448_2968 = { .name = "xdh_wei448_2968", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2968_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2968_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2968_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2968_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 385 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2969 for XDH, tcId is 386 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2969_peerpubkey[] = { 0xd9, 0x26, 0x35, 0xc4, 0x3c, 0x6b, 0x8e, 0xe5, 0x2f, 0xc0, 0x30, 0x1c, 0x76, 0x01, 0xee, 0x9d, 0xcb, 0x10, 0x71, 0xf2, 0xf0, 0x51, 0x55, 0xc3, 0x13, 0xcc, 0x3a, 0x5e, 0xa2, 0xa0, 0x81, 0xbd, 0xfc, 0xd6, 0x1c, 0xde, 0x45, 0xb3, 0x94, 0x01, 0x7c, 0xa3, 0x2c, 0xc5, 0x14, 0xc4, 0x66, 0x5a, 0x5a, 0xc9, 0xc6, 0xcf, 0x5c, 0x29, 0xc2, 0xe6, }; static const unsigned char xdh_wei448_2969_ourpubkey[] = { 0xe3, 0x88, 0x51, 0x96, 0x99, 0xdd, 0x58, 0x2d, 0xa9, 0xab, 0x18, 0xef, 0xca, 0x0c, 0x2b, 0x8b, 0xc7, 0x47, 0xb9, 0x45, 0x11, 0x7f, 0xdd, 0x0d, 0x6e, 0xe0, 0xc6, 0x52, 0x80, 0x52, 0x24, 0xb0, 0xda, 0x84, 0x68, 0x2d, 0x7d, 0xae, 0xcf, 0x20, 0x7d, 0xee, 0xaf, 0x3c, 0x6b, 0x15, 0x14, 0xf2, 0x6e, 0x53, 0x66, 0x2c, 0x48, 0x09, 0x64, 0x27, }; static const unsigned char xdh_wei448_2969_privkey[] = { 0x6c, 0x4b, 0xaf, 0xc2, 0x7a, 0x17, 0x46, 0xea, 0xf9, 0x19, 0xe2, 0x57, 0xb6, 0xeb, 0xc6, 0x17, 0x75, 0x37, 0x8f, 0xc4, 0x08, 0x24, 0x52, 0xf4, 0x93, 0x70, 0x09, 0x68, 0x51, 0x3e, 0x17, 0x57, 0x8d, 0x9f, 0x1e, 0xe7, 0x9e, 0x7a, 0x8c, 0x52, 0x9a, 0xb9, 0x70, 0x21, 0x7a, 0xbc, 0x1c, 0x4b, 0xb5, 0xf4, 0xd1, 0x6c, 0x0a, 0x3a, 0x3b, 0xf3, }; static const unsigned char xdh_wei448_2969_sharedsecret[] = { 0x3d, 0x2a, 0x86, 0x0f, 0xb7, 0xef, 0x56, 0xdf, 0xc8, 0x5a, 0x92, 0x24, 0xde, 0x7c, 0xf2, 0x6f, 0x09, 0xe7, 0x04, 0x38, 0x1a, 0x81, 0xe9, 0x9c, 0xc1, 0xb8, 0xb1, 0x71, 0xaa, 0x95, 0x3d, 0x20, 0x1c, 0x8c, 0x6a, 0x2f, 0xd2, 0xd9, 0xba, 0x08, 0xf2, 0x88, 0x31, 0xd4, 0x23, 0xc6, 0xb8, 0xe3, 0x31, 0xa5, 0xad, 0x12, 0xf0, 0x05, 0xfe, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_2969 = { .name = "xdh_wei448_2969", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2969_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2969_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2969_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2969_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 386 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2970 for XDH, tcId is 387 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2970_peerpubkey[] = { 0x89, 0x1b, 0x7d, 0x3d, 0x80, 0x11, 0x71, 0xc4, 0xc5, 0x83, 0x95, 0x2a, 0xa9, 0x3e, 0x29, 0x80, 0xed, 0x5e, 0x29, 0xc3, 0xbb, 0xaf, 0x82, 0x26, 0xd6, 0xf7, 0x9c, 0xb6, 0x86, 0x67, 0x90, 0x58, 0x04, 0x5f, 0xd5, 0x07, 0x57, 0xaa, 0x58, 0x82, 0x75, 0x3d, 0xa4, 0x74, 0x8f, 0xf1, 0x19, 0xf6, 0xe7, 0xeb, 0xd8, 0x92, 0xbe, 0x28, 0xd9, 0xf2, }; static const unsigned char xdh_wei448_2970_ourpubkey[] = { 0xf8, 0x5b, 0x51, 0x05, 0xbf, 0x95, 0xd8, 0xff, 0x67, 0x57, 0x1f, 0x2d, 0x35, 0x26, 0xf9, 0xca, 0x8b, 0x71, 0x12, 0xef, 0xc8, 0xf7, 0xa4, 0xa1, 0x16, 0x91, 0x67, 0xe6, 0x75, 0xec, 0x46, 0xae, 0x83, 0xa0, 0x0e, 0xab, 0x4e, 0x24, 0xeb, 0x7b, 0xf1, 0x28, 0x70, 0xbf, 0x55, 0x4e, 0x21, 0x83, 0x0b, 0x9f, 0x02, 0xb7, 0xf4, 0xe9, 0x13, 0x6e, }; static const unsigned char xdh_wei448_2970_privkey[] = { 0x64, 0x4f, 0xf7, 0xf2, 0x64, 0xe2, 0x1d, 0x0a, 0x84, 0x65, 0xaf, 0x22, 0x40, 0x2b, 0xa6, 0xb7, 0x35, 0x8c, 0x4c, 0x6c, 0xf2, 0x9d, 0x9a, 0xc8, 0x98, 0xce, 0x40, 0xf6, 0x6c, 0xc8, 0x60, 0xce, 0x48, 0xf1, 0xea, 0xf8, 0x6d, 0xc5, 0x44, 0x61, 0xed, 0x06, 0xf4, 0x8b, 0x3e, 0x5d, 0xae, 0x17, 0x2d, 0x21, 0x20, 0x12, 0x51, 0x47, 0x3c, 0xec, }; static const unsigned char xdh_wei448_2970_sharedsecret[] = { 0xce, 0x34, 0xa2, 0x34, 0x63, 0x77, 0x27, 0x43, 0x04, 0xdf, 0xde, 0xcd, 0x29, 0xe3, 0xd9, 0x85, 0xdb, 0x46, 0x08, 0x85, 0xad, 0x09, 0xf9, 0xaf, 0x4c, 0x22, 0xd9, 0x8f, 0xef, 0x11, 0x71, 0xc4, 0x1b, 0xdb, 0xba, 0xd0, 0xf2, 0x18, 0xb9, 0x8a, 0x9f, 0xc5, 0x73, 0x36, 0x97, 0x79, 0xc0, 0x62, 0xbb, 0x1a, 0xe3, 0x96, 0xd3, 0xe4, 0x1e, 0x81, }; static const wycheproof_xdh_test xdh_wei448_2970 = { .name = "xdh_wei448_2970", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2970_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2970_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2970_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2970_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 387 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2971 for XDH, tcId is 388 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2971_peerpubkey[] = { 0x6a, 0x69, 0x95, 0xb0, 0xdd, 0x8f, 0x5e, 0x3f, 0x7f, 0x1a, 0xbe, 0x7e, 0x4f, 0x60, 0xbc, 0xad, 0xe6, 0x89, 0x93, 0x3f, 0x17, 0xc3, 0xd2, 0xf7, 0xf9, 0x39, 0x88, 0x88, 0x4e, 0x1b, 0x73, 0xb7, 0x8f, 0x6f, 0x47, 0x1d, 0x8a, 0x71, 0xe4, 0x2a, 0xce, 0x69, 0x79, 0xa4, 0xe8, 0x48, 0xf6, 0x77, 0x9b, 0xab, 0xa0, 0xff, 0x27, 0x90, 0xc9, 0x7f, }; static const unsigned char xdh_wei448_2971_ourpubkey[] = { 0x22, 0x66, 0x7d, 0xee, 0x25, 0x05, 0xb6, 0xf7, 0xd9, 0x14, 0xd5, 0x36, 0x2a, 0x8e, 0xef, 0x40, 0xfa, 0xbd, 0x79, 0xf5, 0x1b, 0x4a, 0xc7, 0x5d, 0xe1, 0xdc, 0xd0, 0xf9, 0x03, 0xfd, 0x88, 0x74, 0xd8, 0x16, 0xdb, 0x2e, 0x0a, 0xef, 0x19, 0xb6, 0x76, 0x87, 0xb9, 0x55, 0x3a, 0x14, 0x3f, 0x80, 0x20, 0x0e, 0xb1, 0x38, 0xf0, 0x41, 0xb7, 0x7a, }; static const unsigned char xdh_wei448_2971_privkey[] = { 0x98, 0x13, 0x04, 0x32, 0x48, 0xa6, 0x11, 0xef, 0xa9, 0xc0, 0x05, 0xfe, 0x3a, 0xda, 0x01, 0xa4, 0x1f, 0x15, 0x68, 0x49, 0x0f, 0x1f, 0x62, 0x79, 0x1e, 0xf8, 0x41, 0x4c, 0x35, 0x74, 0xd8, 0xf5, 0x26, 0xde, 0x49, 0x1e, 0xc2, 0x5c, 0xd2, 0x62, 0x81, 0xb8, 0x4d, 0xe2, 0x22, 0x2a, 0x4c, 0xc8, 0x79, 0xd1, 0xb4, 0xdf, 0x56, 0x74, 0xe2, 0xf2, }; static const unsigned char xdh_wei448_2971_sharedsecret[] = { 0x4d, 0x43, 0x25, 0xab, 0xa1, 0xd4, 0x5a, 0x6d, 0xa8, 0x5b, 0x2c, 0x27, 0xb4, 0xad, 0x6e, 0x65, 0xde, 0x71, 0x0f, 0x26, 0x4d, 0x5b, 0x5d, 0x0f, 0x24, 0x14, 0x77, 0x49, 0xfe, 0x33, 0x51, 0x00, 0x47, 0x60, 0xb0, 0xe3, 0x8c, 0x82, 0xdc, 0x44, 0x78, 0xc4, 0xdd, 0x74, 0x02, 0xc6, 0xe2, 0xe0, 0x59, 0xd5, 0x0e, 0xf6, 0x54, 0xef, 0x7a, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_2971 = { .name = "xdh_wei448_2971", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2971_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2971_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2971_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2971_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 388 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2972 for XDH, tcId is 389 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2972_peerpubkey[] = { 0x00, 0xb9, 0x57, 0x35, 0x08, 0x52, 0xc5, 0xb1, 0xdd, 0x62, 0x92, 0x21, 0xe4, 0x3f, 0x90, 0xce, 0x3c, 0xd1, 0x76, 0x1e, 0x59, 0x1e, 0x4b, 0x75, 0x44, 0xdb, 0x5d, 0x23, 0xca, 0x54, 0xca, 0x49, 0x90, 0xdf, 0xaf, 0x22, 0x70, 0x83, 0xe9, 0xcf, 0x61, 0x3e, 0x3c, 0x6a, 0xb7, 0x0d, 0x31, 0x67, 0x91, 0x12, 0x92, 0x71, 0x6d, 0x10, 0x48, 0xa9, }; static const unsigned char xdh_wei448_2972_ourpubkey[] = { 0xc3, 0x6a, 0xfb, 0x15, 0xcd, 0x8f, 0x06, 0xd0, 0x30, 0x82, 0xd4, 0xec, 0x0a, 0x6b, 0xe0, 0xfd, 0xdb, 0x75, 0x4a, 0xb9, 0xaa, 0x15, 0x9c, 0x18, 0x81, 0x95, 0xaa, 0x90, 0x89, 0xe5, 0xe0, 0x3f, 0xcd, 0x5a, 0xf9, 0x0d, 0xfe, 0x9f, 0xab, 0xd2, 0x5f, 0xd9, 0xe2, 0xfc, 0xc8, 0x01, 0x86, 0x87, 0xf4, 0xf7, 0xcb, 0xbf, 0x63, 0x9a, 0x53, 0xe3, }; static const unsigned char xdh_wei448_2972_privkey[] = { 0x74, 0x11, 0xca, 0x7f, 0x71, 0x79, 0xef, 0x67, 0x3a, 0x6e, 0x2a, 0xcb, 0x8c, 0x61, 0x4f, 0x8d, 0xcf, 0x19, 0xf5, 0x64, 0x63, 0x16, 0x65, 0x14, 0x1f, 0x69, 0xec, 0xa5, 0xe1, 0xe1, 0xe8, 0xc8, 0x28, 0x73, 0xd6, 0x57, 0xa2, 0x63, 0xf0, 0x2c, 0xfb, 0xa3, 0xc5, 0x06, 0xe7, 0x03, 0x8d, 0xb4, 0x65, 0xea, 0x28, 0xbd, 0x6e, 0x1f, 0xb7, 0xff, }; static const unsigned char xdh_wei448_2972_sharedsecret[] = { 0xe1, 0x3f, 0x6c, 0x6b, 0x4b, 0x46, 0x94, 0x46, 0x71, 0x29, 0x7e, 0x50, 0x92, 0x65, 0x21, 0xf2, 0x2a, 0xc1, 0x73, 0xc9, 0x05, 0x6d, 0x94, 0x10, 0x64, 0xcd, 0x2a, 0xa6, 0x05, 0x21, 0x38, 0x7d, 0x06, 0x08, 0xf3, 0xba, 0x2e, 0xbc, 0xe9, 0x5c, 0xf2, 0x6e, 0x9b, 0x06, 0x0e, 0x67, 0x72, 0x58, 0x55, 0xc7, 0xb5, 0xb9, 0xea, 0x35, 0x24, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_2972 = { .name = "xdh_wei448_2972", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2972_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2972_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2972_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2972_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 389 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2973 for XDH, tcId is 390 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2973_peerpubkey[] = { 0x9d, 0x65, 0xe5, 0x0f, 0xf2, 0xf1, 0xb0, 0x71, 0x35, 0x75, 0xcc, 0x01, 0xbd, 0x43, 0xfb, 0x35, 0x5e, 0xe9, 0xd3, 0x74, 0x2d, 0x1e, 0xd3, 0x17, 0xdf, 0x8e, 0x4d, 0x32, 0x42, 0x58, 0xdd, 0x0b, 0xeb, 0xf0, 0x78, 0x33, 0xa9, 0xf0, 0x0d, 0x5e, 0x4c, 0xfe, 0xe7, 0x46, 0x9e, 0x44, 0x60, 0x1d, 0x52, 0x70, 0x09, 0x06, 0x39, 0x41, 0x96, 0xb1, }; static const unsigned char xdh_wei448_2973_ourpubkey[] = { 0x08, 0x59, 0xbd, 0xbd, 0xc6, 0x8b, 0x33, 0x23, 0x36, 0x1d, 0x2c, 0x55, 0x4d, 0x30, 0x01, 0x4c, 0xc9, 0x78, 0x8a, 0x3e, 0x94, 0x63, 0x90, 0x38, 0x38, 0x56, 0x08, 0x65, 0x77, 0x86, 0xda, 0xd5, 0xc9, 0x34, 0x75, 0x6c, 0x47, 0xf3, 0x01, 0x52, 0x38, 0x2c, 0xca, 0x2f, 0xfa, 0x7a, 0xd2, 0x33, 0x8b, 0x74, 0x67, 0xd3, 0xf4, 0x68, 0x33, 0x6a, }; static const unsigned char xdh_wei448_2973_privkey[] = { 0x60, 0xb8, 0x2b, 0x40, 0x07, 0xd7, 0x0e, 0x09, 0x12, 0x52, 0x73, 0x44, 0xc1, 0x86, 0x33, 0x0f, 0x2a, 0xb0, 0x27, 0x7a, 0xa6, 0x0a, 0x1d, 0xae, 0x65, 0x60, 0xc4, 0x19, 0xb0, 0x46, 0x13, 0xbf, 0xf4, 0x30, 0x2a, 0xe8, 0x2d, 0x01, 0x96, 0xc0, 0xaa, 0x9b, 0xf5, 0x40, 0xfa, 0xe1, 0x66, 0xb8, 0xd6, 0x6f, 0xdd, 0x6a, 0xa2, 0x46, 0x50, 0xf6, }; static const unsigned char xdh_wei448_2973_sharedsecret[] = { 0x04, 0xe5, 0xb0, 0x68, 0x04, 0x8b, 0x70, 0x44, 0x6a, 0x43, 0x5b, 0xbb, 0x45, 0xb0, 0x33, 0x8f, 0x74, 0x8e, 0xfe, 0x5e, 0xf1, 0x0d, 0x43, 0x67, 0x70, 0xeb, 0x27, 0xd2, 0x91, 0xcb, 0xbc, 0x5b, 0x45, 0x25, 0x8d, 0xeb, 0xa0, 0xfe, 0xe1, 0x21, 0x40, 0x1d, 0xd3, 0x6a, 0x13, 0x49, 0xe0, 0x76, 0xb9, 0xc1, 0xb2, 0x7d, 0x3b, 0x8a, 0x46, 0x07, }; static const wycheproof_xdh_test xdh_wei448_2973 = { .name = "xdh_wei448_2973", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2973_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2973_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2973_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2973_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 390 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2974 for XDH, tcId is 391 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2974_peerpubkey[] = { 0xbb, 0xf7, 0x50, 0x4e, 0xb0, 0xa3, 0x4c, 0x8e, 0xcc, 0x11, 0x04, 0x30, 0x1c, 0x81, 0xb4, 0x91, 0xb3, 0xf7, 0xb5, 0x64, 0xa5, 0xcb, 0x69, 0x16, 0xbc, 0xdd, 0x9c, 0x8f, 0xb0, 0x88, 0xe7, 0x5e, 0x48, 0xdf, 0x31, 0x98, 0xbd, 0xad, 0x7f, 0x2c, 0xe1, 0xc6, 0x8a, 0xcc, 0x98, 0x97, 0xf0, 0x02, 0x2a, 0x86, 0xb9, 0x6a, 0x67, 0xf4, 0xd6, 0xc8, }; static const unsigned char xdh_wei448_2974_ourpubkey[] = { 0x39, 0xd2, 0xf2, 0x77, 0xb6, 0x44, 0x76, 0x5d, 0xdb, 0x8a, 0x6e, 0x0e, 0x79, 0x49, 0x89, 0x67, 0x1f, 0xcd, 0x06, 0x26, 0xeb, 0x7a, 0xce, 0xcb, 0x1e, 0x43, 0x24, 0x68, 0x5e, 0x25, 0x90, 0x19, 0x8d, 0xa5, 0x11, 0x0f, 0x01, 0x5a, 0x88, 0x0c, 0x0a, 0xd5, 0x21, 0x69, 0x96, 0x82, 0x73, 0x31, 0x85, 0x91, 0x74, 0x94, 0x04, 0x12, 0xa6, 0x83, }; static const unsigned char xdh_wei448_2974_privkey[] = { 0x94, 0xf8, 0x33, 0x1a, 0x59, 0x95, 0x8a, 0xb4, 0xf0, 0xb9, 0x7d, 0xce, 0x96, 0xb0, 0x05, 0x30, 0x1a, 0xa4, 0x81, 0x96, 0xa0, 0xd5, 0x90, 0x87, 0x58, 0xc3, 0xea, 0x6d, 0x62, 0x5c, 0x76, 0xe9, 0x88, 0x47, 0x93, 0x7a, 0x6f, 0x79, 0x55, 0x80, 0x3f, 0x6c, 0xdc, 0xc9, 0xea, 0x3e, 0x62, 0xde, 0x8e, 0xa0, 0xf3, 0x0a, 0x1c, 0xfc, 0xc3, 0xe4, }; static const unsigned char xdh_wei448_2974_sharedsecret[] = { 0x36, 0xe2, 0x06, 0x5d, 0xce, 0x60, 0x37, 0xb3, 0x34, 0x12, 0x60, 0xb4, 0x48, 0x76, 0x36, 0xb9, 0x46, 0x06, 0x88, 0x73, 0x1c, 0xfb, 0x85, 0xa3, 0x95, 0x18, 0x73, 0xb2, 0x7e, 0x2f, 0x0f, 0xea, 0x5e, 0xe4, 0xd1, 0xaa, 0xf7, 0x5c, 0xdf, 0x97, 0x12, 0xef, 0xf7, 0x01, 0x82, 0x34, 0x27, 0x11, 0x11, 0x41, 0x70, 0x2d, 0xd6, 0x04, 0xd6, 0x46, }; static const wycheproof_xdh_test xdh_wei448_2974 = { .name = "xdh_wei448_2974", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2974_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2974_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2974_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2974_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 391 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2975 for XDH, tcId is 392 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2975_peerpubkey[] = { 0x84, 0x36, 0xa6, 0xa8, 0xe8, 0xf1, 0xcb, 0x2d, 0x0a, 0xa5, 0x6f, 0x0b, 0x03, 0xde, 0xf5, 0x08, 0xe2, 0x3d, 0x33, 0xc2, 0xd3, 0xa3, 0x44, 0x5c, 0x82, 0xc8, 0x19, 0x77, 0xd0, 0xca, 0xca, 0xeb, 0xae, 0x19, 0x3c, 0x86, 0x73, 0x21, 0xcd, 0xdd, 0x9b, 0xb8, 0x6e, 0x0b, 0x50, 0x4a, 0x1f, 0x59, 0x2a, 0x46, 0xea, 0x8d, 0xc4, 0x20, 0xa1, 0x00, }; static const unsigned char xdh_wei448_2975_ourpubkey[] = { 0x21, 0xe7, 0xcf, 0xbd, 0x88, 0x99, 0x94, 0x04, 0x65, 0x31, 0xc6, 0x84, 0xb5, 0xf3, 0xd8, 0x86, 0x10, 0x8e, 0x2f, 0x22, 0x29, 0x3d, 0x48, 0xbf, 0x42, 0x5c, 0x7b, 0xa8, 0x25, 0xff, 0xfd, 0xc4, 0x75, 0x2d, 0xc9, 0xf1, 0x74, 0x0a, 0xca, 0x72, 0xa6, 0x39, 0xbb, 0xdd, 0xe9, 0x7b, 0xf8, 0xbb, 0x54, 0x23, 0x10, 0x82, 0x7d, 0x1b, 0x3e, 0x03, }; static const unsigned char xdh_wei448_2975_privkey[] = { 0x1c, 0x3c, 0x5b, 0xda, 0x03, 0x83, 0xf0, 0xbe, 0x2a, 0x78, 0xd1, 0xac, 0x08, 0x84, 0x33, 0x04, 0x3c, 0x51, 0x2c, 0xd4, 0xe4, 0xa5, 0xa8, 0x0a, 0x18, 0xd3, 0x18, 0x3e, 0x19, 0x88, 0xdf, 0x54, 0x85, 0xc8, 0xbe, 0xca, 0x04, 0xa7, 0xd4, 0x4b, 0xed, 0xec, 0x10, 0x27, 0x40, 0xb5, 0xde, 0x33, 0x3e, 0x1a, 0xd6, 0xe9, 0xbc, 0x63, 0xa1, 0x87, }; static const unsigned char xdh_wei448_2975_sharedsecret[] = { 0xb1, 0x96, 0xbb, 0x34, 0xea, 0x5e, 0x74, 0xb7, 0x4c, 0xaa, 0x26, 0x0e, 0x3b, 0x2c, 0x8a, 0x11, 0x0c, 0x22, 0x79, 0xaa, 0x39, 0x37, 0x82, 0x6b, 0x88, 0xbe, 0x58, 0x26, 0xb7, 0xe0, 0xa6, 0xe8, 0xf5, 0xa1, 0x15, 0x0b, 0x7c, 0x13, 0x53, 0xde, 0x1d, 0xf4, 0x7c, 0xe7, 0x27, 0xa2, 0x2f, 0xc9, 0xf4, 0x9c, 0xaa, 0xce, 0x01, 0x0a, 0x9c, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_2975 = { .name = "xdh_wei448_2975", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2975_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2975_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2975_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2975_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 392 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2976 for XDH, tcId is 393 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2976_peerpubkey[] = { 0xe6, 0x7c, 0x5f, 0x08, 0xd1, 0x7d, 0x2b, 0xea, 0x11, 0x7c, 0xc4, 0xde, 0xad, 0xac, 0x22, 0x4a, 0x1a, 0xc1, 0xb1, 0x1e, 0x8f, 0xc7, 0xe6, 0x4f, 0xee, 0xc7, 0xf0, 0x8d, 0x0a, 0x5c, 0x25, 0xe2, 0x79, 0x5f, 0x44, 0xfb, 0x97, 0x56, 0x0b, 0xc1, 0xb7, 0xd9, 0x17, 0xdd, 0x70, 0x36, 0xb7, 0x54, 0x7f, 0x6e, 0xd4, 0xe0, 0x0a, 0xb9, 0x98, 0x27, }; static const unsigned char xdh_wei448_2976_ourpubkey[] = { 0xf7, 0x98, 0x59, 0xdb, 0x2c, 0x67, 0xd7, 0xd1, 0x46, 0xe9, 0x66, 0x9a, 0x7c, 0x53, 0x6d, 0x78, 0xa5, 0xab, 0x2c, 0x31, 0x41, 0x13, 0x80, 0xff, 0x2a, 0x92, 0x86, 0xe8, 0x92, 0xe5, 0xa8, 0x84, 0x10, 0x65, 0xe2, 0xd7, 0x77, 0xbf, 0x09, 0x25, 0x67, 0xfe, 0x9c, 0xc6, 0x11, 0x05, 0x75, 0xb7, 0x7a, 0x29, 0x93, 0x42, 0xb3, 0x9c, 0x63, 0x82, }; static const unsigned char xdh_wei448_2976_privkey[] = { 0x30, 0x48, 0x7a, 0xb4, 0x34, 0x5c, 0xec, 0xd5, 0x27, 0xa8, 0x4f, 0x47, 0x51, 0xb9, 0x0c, 0xba, 0x79, 0x34, 0x24, 0xac, 0xb2, 0x98, 0xaa, 0xd2, 0xcd, 0x86, 0x2d, 0x46, 0x16, 0x5b, 0x8a, 0xfc, 0xa3, 0x02, 0xd8, 0xef, 0xa4, 0x1e, 0x43, 0x85, 0x0c, 0xf5, 0x06, 0x06, 0x1d, 0x21, 0x13, 0xe6, 0x84, 0xd3, 0x6f, 0xdb, 0x04, 0x32, 0x35, 0x8a, }; static const unsigned char xdh_wei448_2976_sharedsecret[] = { 0x89, 0xbf, 0x0c, 0x9d, 0xee, 0x1b, 0xa6, 0xab, 0xad, 0x76, 0xc9, 0xa2, 0xd5, 0x21, 0x0b, 0x62, 0x01, 0xd4, 0xca, 0x34, 0x2a, 0x56, 0xf4, 0x74, 0x54, 0x5f, 0xab, 0x3e, 0x55, 0x2b, 0x50, 0xef, 0x11, 0xe2, 0x1a, 0xec, 0x0a, 0x53, 0xc0, 0x70, 0x23, 0x85, 0x21, 0x8c, 0x68, 0x11, 0x78, 0x1d, 0x31, 0xea, 0x0b, 0x22, 0x88, 0x7f, 0x04, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2976 = { .name = "xdh_wei448_2976", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2976_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2976_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2976_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2976_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 393 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2977 for XDH, tcId is 394 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2977_peerpubkey[] = { 0x3e, 0xa6, 0x19, 0xf8, 0x92, 0x8c, 0xaa, 0x40, 0x38, 0x27, 0x58, 0x77, 0xbf, 0xd9, 0x06, 0xbd, 0x08, 0x3b, 0xd1, 0xdd, 0xbd, 0xdb, 0xed, 0xf6, 0xf3, 0xb1, 0x68, 0x29, 0x12, 0x9c, 0xb3, 0xbd, 0xb1, 0x2e, 0x15, 0x6b, 0x99, 0xb1, 0xfb, 0xe6, 0xb5, 0x99, 0xf3, 0xf3, 0xf0, 0xb3, 0x1a, 0xd5, 0x1b, 0x17, 0xb2, 0xfb, 0xb0, 0x48, 0x29, 0x6a, }; static const unsigned char xdh_wei448_2977_ourpubkey[] = { 0x5a, 0x32, 0x9b, 0x39, 0x55, 0x14, 0x64, 0xdb, 0x9e, 0xef, 0x02, 0x89, 0x90, 0x86, 0x25, 0xcc, 0xa7, 0x2a, 0xe9, 0xd3, 0x8d, 0x84, 0xd2, 0x35, 0xa5, 0xc1, 0x84, 0xda, 0x42, 0x14, 0x89, 0x60, 0xb9, 0x61, 0x3b, 0x73, 0x37, 0xd9, 0xae, 0xd9, 0xf8, 0x5e, 0x9b, 0x2c, 0xc2, 0x32, 0x15, 0x9c, 0x19, 0x79, 0x32, 0xb2, 0xca, 0xf2, 0x3e, 0x61, }; static const unsigned char xdh_wei448_2977_privkey[] = { 0xc4, 0x57, 0x27, 0xd6, 0x19, 0x0f, 0x88, 0xe4, 0x1d, 0x36, 0xbe, 0xc9, 0xf3, 0x2f, 0x41, 0xaa, 0xf2, 0x6a, 0x25, 0xc6, 0xfa, 0xfe, 0x8b, 0xa0, 0xc2, 0xd5, 0x30, 0x82, 0xe5, 0x89, 0xa6, 0xcc, 0x04, 0xa4, 0x6c, 0x2a, 0xfe, 0xcb, 0xa7, 0x22, 0x83, 0xe6, 0x08, 0xa1, 0x40, 0x01, 0xec, 0xa8, 0xaa, 0x16, 0x16, 0xa8, 0x0f, 0x7f, 0x14, 0x85, }; static const unsigned char xdh_wei448_2977_sharedsecret[] = { 0x55, 0x6e, 0xc0, 0x50, 0x8a, 0x58, 0xdc, 0xb9, 0xd1, 0x4f, 0x0b, 0x33, 0x01, 0x3a, 0xa7, 0xfd, 0x18, 0xf0, 0x31, 0x4f, 0x17, 0x67, 0x19, 0x64, 0xce, 0x91, 0x45, 0xf5, 0x5a, 0x61, 0x08, 0x89, 0x5f, 0x3b, 0xaf, 0x7b, 0x6c, 0x0d, 0x31, 0x3e, 0x35, 0xed, 0xfa, 0xa1, 0xfd, 0x4a, 0x61, 0x01, 0x56, 0xf8, 0xaf, 0x71, 0x5a, 0x3c, 0xb1, 0x00, }; static const wycheproof_xdh_test xdh_wei448_2977 = { .name = "xdh_wei448_2977", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2977_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2977_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2977_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2977_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 394 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2978 for XDH, tcId is 395 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2978_peerpubkey[] = { 0x26, 0x5a, 0x93, 0x0b, 0x5d, 0x6f, 0xd6, 0x97, 0x7b, 0xc3, 0xec, 0x93, 0xc3, 0x02, 0x7c, 0xa9, 0x7a, 0x34, 0xb1, 0x2d, 0x43, 0xdc, 0xa8, 0x36, 0xc7, 0x97, 0x1a, 0xcc, 0x99, 0x6e, 0x0c, 0x9e, 0x25, 0x0b, 0xf0, 0x87, 0x4d, 0x1d, 0x64, 0x5b, 0x07, 0x23, 0x15, 0xaa, 0xc6, 0x1a, 0x95, 0x04, 0x17, 0x92, 0xcb, 0x55, 0x88, 0xb2, 0x9d, 0xbf, }; static const unsigned char xdh_wei448_2978_ourpubkey[] = { 0x82, 0x9a, 0xf2, 0x45, 0x13, 0x72, 0x91, 0x03, 0xbe, 0xf5, 0x5c, 0xfe, 0xf2, 0x6c, 0x75, 0x1a, 0xba, 0xbf, 0x76, 0x49, 0x56, 0x7c, 0x2f, 0x14, 0x6f, 0x9e, 0xe0, 0xa3, 0x66, 0x17, 0x2d, 0x7b, 0x1c, 0x73, 0x61, 0x2c, 0x96, 0xf8, 0x8b, 0x77, 0xb2, 0x60, 0xc9, 0xa5, 0x61, 0x1e, 0x2a, 0x03, 0xc4, 0xe8, 0xc3, 0x71, 0x7e, 0x4f, 0x40, 0x3c, }; static const unsigned char xdh_wei448_2978_privkey[] = { 0x14, 0xf1, 0x41, 0xfb, 0xb1, 0x64, 0xd6, 0x70, 0xb9, 0x0a, 0x19, 0xc9, 0xd9, 0x70, 0xf8, 0x32, 0x7f, 0x21, 0x1e, 0x8e, 0xd8, 0x66, 0x06, 0x21, 0x08, 0x68, 0x37, 0x2c, 0x22, 0x69, 0xc8, 0x1b, 0x2b, 0x61, 0x50, 0x4b, 0x46, 0xf3, 0xf6, 0x55, 0x33, 0xef, 0x7a, 0xdb, 0x31, 0xd9, 0x7c, 0xa0, 0xdd, 0x52, 0x4b, 0x38, 0xb4, 0xdf, 0xf7, 0x8a, }; static const unsigned char xdh_wei448_2978_sharedsecret[] = { 0x4b, 0x0a, 0xf1, 0xcc, 0x0b, 0x4e, 0xe4, 0x32, 0x2c, 0x8a, 0x23, 0x98, 0x9f, 0x74, 0xd6, 0x62, 0x51, 0x94, 0xd1, 0xcc, 0x81, 0xe0, 0xa9, 0x1c, 0x68, 0x22, 0x4f, 0x07, 0x8e, 0xff, 0x2a, 0x7d, 0xef, 0x5f, 0x57, 0xd5, 0x39, 0x86, 0x93, 0x2b, 0xb4, 0x53, 0xc4, 0x5e, 0xad, 0xfd, 0xb3, 0xa5, 0x0e, 0xf3, 0x3d, 0xe3, 0xf9, 0xd7, 0x43, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2978 = { .name = "xdh_wei448_2978", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2978_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2978_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2978_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2978_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 395 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2979 for XDH, tcId is 396 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2979_peerpubkey[] = { 0x11, 0xe9, 0xe4, 0xe0, 0x24, 0xc2, 0x77, 0xe1, 0x84, 0x34, 0x48, 0xa1, 0x0f, 0x21, 0x8d, 0x4e, 0x4f, 0x88, 0xb4, 0x02, 0xb2, 0x95, 0x4c, 0xb3, 0x7f, 0x8b, 0x5c, 0x33, 0xa9, 0x02, 0x93, 0x2f, 0x95, 0x41, 0xe6, 0x14, 0x86, 0xf1, 0xf4, 0xa8, 0xfb, 0xd9, 0x73, 0x8b, 0x7f, 0xff, 0xfd, 0xb3, 0x94, 0x46, 0xe7, 0x92, 0xf1, 0x2a, 0x69, 0xf1, }; static const unsigned char xdh_wei448_2979_ourpubkey[] = { 0x44, 0xd9, 0xd4, 0x5b, 0x90, 0xe8, 0x0a, 0xff, 0x7c, 0x6a, 0xa1, 0x56, 0x53, 0xa8, 0x7c, 0x5c, 0x03, 0x36, 0x6d, 0xb8, 0x1c, 0xc2, 0x01, 0xc2, 0x13, 0xc4, 0x7d, 0xb8, 0xf3, 0x1d, 0x80, 0x84, 0x5c, 0xdc, 0x62, 0x78, 0xda, 0x8b, 0xd4, 0x21, 0xfb, 0xde, 0x20, 0xc5, 0x20, 0x4d, 0xc8, 0x9a, 0xaf, 0xa4, 0x75, 0x03, 0xde, 0xa6, 0x50, 0xc4, }; static const unsigned char xdh_wei448_2979_privkey[] = { 0xa8, 0xed, 0x7c, 0x6c, 0x57, 0xd5, 0xaf, 0x99, 0x85, 0x5b, 0x98, 0x9d, 0x8c, 0x43, 0x79, 0x94, 0xb1, 0xf7, 0x2c, 0x25, 0xd2, 0x2c, 0x2a, 0xce, 0xa5, 0x04, 0x87, 0x8c, 0xc3, 0x3c, 0x57, 0x2b, 0x84, 0xcc, 0x4c, 0xbc, 0xb5, 0xf2, 0x4d, 0xc0, 0xcc, 0x7b, 0xa8, 0xce, 0x36, 0xbf, 0x31, 0x68, 0x7a, 0x27, 0xc4, 0xd0, 0x60, 0x52, 0x0f, 0x8b, }; static const unsigned char xdh_wei448_2979_sharedsecret[] = { 0xb8, 0xed, 0xce, 0xf5, 0x32, 0x24, 0x7b, 0x0d, 0xa1, 0x8f, 0x7d, 0x67, 0xf4, 0x89, 0xa9, 0x81, 0x02, 0x16, 0x84, 0xea, 0x9f, 0xb9, 0xd0, 0xa9, 0x57, 0xbc, 0x36, 0x3c, 0xd3, 0x90, 0xfc, 0x39, 0x54, 0x20, 0xd0, 0xa9, 0xb6, 0xfd, 0xf9, 0xe4, 0x0a, 0xf6, 0x5e, 0xb0, 0xd8, 0x5d, 0x19, 0x5a, 0x25, 0x23, 0x74, 0x13, 0xa7, 0xb1, 0x44, 0x59, }; static const wycheproof_xdh_test xdh_wei448_2979 = { .name = "xdh_wei448_2979", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2979_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2979_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2979_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2979_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 396 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2980 for XDH, tcId is 397 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2980_peerpubkey[] = { 0x13, 0x27, 0x29, 0xb7, 0x38, 0xcd, 0x98, 0x7f, 0xfe, 0x19, 0x54, 0x35, 0x84, 0xf8, 0xfe, 0x2b, 0xe1, 0xe8, 0x01, 0xb7, 0x19, 0xd3, 0xab, 0x2c, 0x51, 0x23, 0x4f, 0xbd, 0x08, 0xd4, 0xc9, 0xf7, 0x36, 0xc7, 0xf5, 0x0b, 0x84, 0x49, 0x26, 0x7f, 0x73, 0x72, 0x97, 0xf9, 0x8b, 0x3c, 0xb7, 0x30, 0x52, 0x8a, 0xf6, 0x4f, 0x6a, 0xa0, 0xfb, 0x02, }; static const unsigned char xdh_wei448_2980_ourpubkey[] = { 0xa4, 0xdf, 0xbe, 0x80, 0x91, 0xb7, 0xea, 0x45, 0x9f, 0x2c, 0xfe, 0x83, 0xcc, 0xf9, 0xec, 0x25, 0xa3, 0x43, 0x47, 0x02, 0xbe, 0xe5, 0x2d, 0x6e, 0xeb, 0x05, 0xd4, 0x14, 0x53, 0xd0, 0xc9, 0xc8, 0xf2, 0xeb, 0x09, 0xfe, 0x76, 0x74, 0xbc, 0xd6, 0x0d, 0x31, 0x9d, 0xe8, 0xf4, 0xf1, 0x26, 0x66, 0x40, 0x50, 0x5f, 0x09, 0x20, 0x43, 0x4e, 0xa6, }; static const unsigned char xdh_wei448_2980_privkey[] = { 0x84, 0xe6, 0x9e, 0x44, 0x72, 0xb6, 0x69, 0xeb, 0xc6, 0xa6, 0xad, 0x1b, 0xd2, 0x11, 0x71, 0x26, 0x5d, 0x64, 0x92, 0x0f, 0x3d, 0xc9, 0xc7, 0xaa, 0x26, 0x17, 0x44, 0x62, 0xf3, 0x3d, 0x20, 0xe5, 0x0b, 0x02, 0x30, 0xce, 0xa7, 0x13, 0x57, 0x6a, 0x9b, 0xe5, 0x59, 0xb5, 0x5d, 0x63, 0xef, 0x12, 0x5d, 0xcf, 0x9f, 0x54, 0x34, 0x57, 0xff, 0x89, }; static const unsigned char xdh_wei448_2980_sharedsecret[] = { 0xc7, 0x19, 0xe3, 0x09, 0xf9, 0x40, 0x20, 0x74, 0xeb, 0x74, 0xbf, 0x18, 0x58, 0x6e, 0xa8, 0x60, 0xfd, 0x87, 0xa8, 0xd0, 0x8e, 0xeb, 0xbd, 0xba, 0xf8, 0x42, 0x08, 0x47, 0x41, 0xf3, 0x01, 0xeb, 0x74, 0xc9, 0x4a, 0xa3, 0x3d, 0xb5, 0xba, 0x1c, 0x2d, 0x8a, 0x99, 0x7a, 0xfa, 0x4f, 0xef, 0x78, 0xba, 0x76, 0x9b, 0x46, 0x8a, 0x00, 0x76, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2980 = { .name = "xdh_wei448_2980", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2980_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2980_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2980_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2980_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 397 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2981 for XDH, tcId is 398 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2981_peerpubkey[] = { 0xcd, 0x72, 0xb7, 0x26, 0x6f, 0x8f, 0xe8, 0x8f, 0x85, 0xe9, 0xa4, 0x7e, 0xd5, 0xc0, 0xec, 0x74, 0x39, 0x41, 0xfd, 0x1b, 0x4c, 0xbf, 0x2d, 0xda, 0x96, 0xf3, 0xa6, 0x0f, 0x30, 0xf6, 0xb3, 0xc3, 0xa4, 0xe7, 0xe4, 0x2c, 0x80, 0x83, 0x31, 0x07, 0x7d, 0x5b, 0x9b, 0x8c, 0x37, 0xfa, 0x65, 0x07, 0xb1, 0x73, 0x5c, 0xe0, 0x81, 0x16, 0xc3, 0x1b, }; static const unsigned char xdh_wei448_2981_ourpubkey[] = { 0xd0, 0xb8, 0xde, 0x7d, 0x92, 0xfe, 0xc8, 0x4e, 0x2e, 0x33, 0x08, 0x7a, 0x68, 0x41, 0x05, 0x08, 0xb4, 0xdb, 0x61, 0xb0, 0x2e, 0x7f, 0xc0, 0x30, 0x4f, 0x14, 0xee, 0xc7, 0x59, 0x8a, 0x09, 0xd6, 0x4e, 0x4e, 0xda, 0x54, 0xaa, 0xd7, 0x51, 0xe9, 0x01, 0xcc, 0xf1, 0x5a, 0x63, 0xfd, 0xef, 0xca, 0x2a, 0x8c, 0x7d, 0x2c, 0xd3, 0xdd, 0xd9, 0x93, }; static const unsigned char xdh_wei448_2981_privkey[] = { 0x2c, 0x42, 0xdd, 0x62, 0xd9, 0x66, 0x51, 0x34, 0xf1, 0xdd, 0xa0, 0x82, 0x43, 0x82, 0xc8, 0xd6, 0x77, 0x3f, 0x98, 0x64, 0x95, 0xcf, 0x1b, 0x18, 0xcf, 0x02, 0xf8, 0xf4, 0x53, 0x38, 0xcd, 0xbb, 0xde, 0x6d, 0x26, 0xd5, 0xf9, 0x1f, 0x3d, 0x4e, 0x1a, 0x25, 0x0f, 0xfa, 0xfe, 0x1b, 0x5e, 0x24, 0xb8, 0x20, 0x8b, 0xa1, 0xb9, 0x12, 0x76, 0x86, }; static const unsigned char xdh_wei448_2981_sharedsecret[] = { 0x51, 0xb1, 0xd5, 0xa3, 0x34, 0x95, 0x7b, 0xb9, 0xf5, 0x39, 0x90, 0xd1, 0x88, 0xd9, 0x3e, 0xdb, 0x17, 0x86, 0xda, 0x92, 0x17, 0x83, 0xc0, 0x08, 0x70, 0x42, 0x91, 0x34, 0xd2, 0xf2, 0xef, 0x97, 0x63, 0x24, 0x4a, 0x20, 0x4a, 0x46, 0xfa, 0xc1, 0x67, 0xa0, 0x89, 0x44, 0x74, 0x34, 0x2e, 0xa7, 0x72, 0x27, 0x58, 0x99, 0xd2, 0x17, 0x42, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_2981 = { .name = "xdh_wei448_2981", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2981_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2981_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2981_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2981_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 398 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2982 for XDH, tcId is 399 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2982_peerpubkey[] = { 0xd5, 0x60, 0x21, 0x11, 0x53, 0xf1, 0x00, 0xaf, 0x3a, 0x4c, 0x0a, 0x22, 0x33, 0xf6, 0xec, 0xd7, 0xe9, 0x5c, 0xc5, 0x08, 0x6d, 0xec, 0xb3, 0xa0, 0xd1, 0x38, 0x67, 0x0e, 0xe4, 0x19, 0x55, 0xaa, 0xb9, 0x5f, 0x4a, 0x71, 0xbb, 0x84, 0x96, 0xb4, 0xdb, 0xf9, 0x8b, 0x45, 0xae, 0x6f, 0xf6, 0x7b, 0x02, 0xfb, 0xc9, 0x48, 0xb1, 0x45, 0x14, 0x2c, }; static const unsigned char xdh_wei448_2982_ourpubkey[] = { 0x00, 0x45, 0xc6, 0x7b, 0xed, 0xc2, 0x05, 0x50, 0x42, 0x65, 0xe0, 0xff, 0xca, 0x82, 0x70, 0xc9, 0xf0, 0x67, 0x93, 0xe5, 0x36, 0x18, 0x2f, 0x75, 0x6c, 0xa6, 0x19, 0xb0, 0x3a, 0xbc, 0x36, 0x22, 0x7f, 0x3f, 0x11, 0x9d, 0x2a, 0x5b, 0x28, 0x30, 0x90, 0xa3, 0x57, 0x5e, 0x41, 0x88, 0x7a, 0x21, 0x50, 0x15, 0x7f, 0x02, 0xa3, 0x9d, 0x7d, 0xaf, }; static const unsigned char xdh_wei448_2982_privkey[] = { 0x5c, 0xd3, 0xa7, 0xa6, 0xc7, 0x3d, 0xe1, 0x1e, 0xbe, 0x7d, 0x4c, 0xd3, 0xbb, 0x14, 0x6e, 0x0f, 0xf1, 0x56, 0x43, 0x76, 0x85, 0xc8, 0x1a, 0xf2, 0xac, 0x3c, 0xf6, 0x05, 0x3e, 0x4b, 0x32, 0x89, 0x01, 0x4d, 0x38, 0xda, 0xdf, 0x73, 0x2e, 0xd2, 0xf3, 0x98, 0xe4, 0x77, 0x2a, 0x34, 0x47, 0xa2, 0x58, 0xda, 0xdf, 0xdb, 0x2d, 0x7d, 0xf5, 0x87, }; static const unsigned char xdh_wei448_2982_sharedsecret[] = { 0x51, 0xdd, 0xe5, 0x72, 0x74, 0xf7, 0xff, 0xb4, 0xc0, 0x1e, 0x97, 0x1f, 0xb9, 0xf2, 0xba, 0x89, 0x11, 0xe1, 0xcf, 0x56, 0xc2, 0x03, 0x55, 0x21, 0x69, 0x01, 0xdc, 0x1d, 0x14, 0x81, 0xbf, 0xa2, 0x8b, 0x87, 0xf4, 0xb7, 0x24, 0x49, 0x53, 0x4a, 0xd6, 0x99, 0x96, 0x90, 0x0c, 0xf5, 0xe7, 0x3b, 0x8e, 0x0f, 0xa1, 0x15, 0xe8, 0x92, 0x4e, 0x19, }; static const wycheproof_xdh_test xdh_wei448_2982 = { .name = "xdh_wei448_2982", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2982_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2982_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2982_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2982_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 399 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2983 for XDH, tcId is 400 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2983_peerpubkey[] = { 0xa4, 0xcc, 0xa4, 0x82, 0xc8, 0xe2, 0x1f, 0xf3, 0x00, 0x97, 0xcb, 0xc4, 0xf5, 0xe3, 0xa7, 0x07, 0x62, 0x3c, 0xd6, 0x77, 0x1b, 0x28, 0x8d, 0x8f, 0x3d, 0x11, 0x68, 0x2f, 0xa5, 0x26, 0xb4, 0xed, 0xa2, 0x7c, 0x68, 0x33, 0xd4, 0x19, 0x2b, 0xda, 0x53, 0x05, 0x2a, 0x14, 0x2c, 0x69, 0x87, 0x8f, 0xce, 0xdc, 0xc9, 0x2a, 0x5f, 0x61, 0x1a, 0xa2, }; static const unsigned char xdh_wei448_2983_ourpubkey[] = { 0xa1, 0x05, 0x09, 0x67, 0xcb, 0x6d, 0x71, 0x39, 0x2b, 0x50, 0xd5, 0xd2, 0x4b, 0xc6, 0x4a, 0xbd, 0xa8, 0x06, 0x1b, 0x54, 0x06, 0x9b, 0xea, 0x61, 0x25, 0xf4, 0xa6, 0xf3, 0x8c, 0xdf, 0xef, 0x61, 0x1f, 0x88, 0x22, 0xc0, 0xf8, 0x9e, 0xd2, 0x4f, 0x31, 0x3c, 0x88, 0xe4, 0x10, 0x2a, 0xf6, 0x4d, 0xff, 0xf6, 0xa1, 0x5f, 0xa0, 0x57, 0xdf, 0xbc, }; static const unsigned char xdh_wei448_2983_privkey[] = { 0x80, 0x81, 0xae, 0xfb, 0x19, 0x87, 0x2a, 0xea, 0xad, 0x84, 0xa4, 0x06, 0xeb, 0x3f, 0xd4, 0xc2, 0x7f, 0x23, 0x1f, 0xbc, 0xa3, 0x91, 0x73, 0xba, 0xd4, 0x17, 0xa2, 0xef, 0x12, 0x3c, 0x0a, 0x89, 0x59, 0xae, 0xa6, 0xd6, 0x9f, 0xe6, 0x92, 0xeb, 0xf6, 0x96, 0x31, 0xd5, 0x3b, 0x73, 0xe3, 0xd6, 0x7f, 0x1b, 0xcb, 0xa6, 0x84, 0x9f, 0xb7, 0x83, }; static const unsigned char xdh_wei448_2983_sharedsecret[] = { 0xe1, 0xc4, 0xae, 0x75, 0xcc, 0x6f, 0x65, 0xc6, 0x52, 0xf4, 0x0d, 0xee, 0x0b, 0x7a, 0x02, 0x24, 0x8a, 0xf6, 0x60, 0x93, 0xd4, 0x03, 0xe0, 0xf5, 0xec, 0x34, 0xf3, 0xe4, 0xb6, 0xd3, 0x8d, 0x20, 0x82, 0x60, 0x2d, 0xc5, 0x1a, 0x52, 0x6e, 0xd0, 0xe9, 0xb1, 0x56, 0x9c, 0xb2, 0x0a, 0xa3, 0x44, 0x24, 0xb0, 0x21, 0x9b, 0xdd, 0xb5, 0x37, 0x56, }; static const wycheproof_xdh_test xdh_wei448_2983 = { .name = "xdh_wei448_2983", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2983_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2983_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2983_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2983_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 400 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2984 for XDH, tcId is 401 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2984_peerpubkey[] = { 0xd6, 0x88, 0x03, 0xe5, 0x6a, 0x32, 0x9b, 0x20, 0x53, 0xa0, 0x6b, 0x6f, 0x72, 0x16, 0xb3, 0xec, 0xe4, 0xec, 0x45, 0x3d, 0x62, 0x53, 0xc6, 0xdb, 0xb9, 0x01, 0x82, 0xff, 0xce, 0x7f, 0xa5, 0x95, 0x24, 0xff, 0x05, 0x4a, 0x5c, 0x3a, 0xaa, 0xb8, 0xa4, 0x41, 0x74, 0xab, 0x20, 0x38, 0x5f, 0x7a, 0x95, 0xa8, 0x57, 0x9a, 0xbc, 0xb9, 0xae, 0xa7, }; static const unsigned char xdh_wei448_2984_ourpubkey[] = { 0x6e, 0x94, 0xd2, 0xa8, 0x47, 0xac, 0x64, 0x61, 0x28, 0xcf, 0xc0, 0x18, 0xe4, 0xee, 0x1f, 0xbe, 0x3f, 0xc1, 0xea, 0x02, 0xa3, 0xb4, 0x1c, 0x98, 0x59, 0x33, 0xba, 0x5e, 0xd6, 0xe4, 0x2a, 0xb1, 0xe5, 0x6f, 0x1e, 0xa6, 0xc4, 0xd4, 0xfb, 0x23, 0x48, 0x49, 0xa7, 0x6a, 0xc5, 0x3f, 0x6f, 0x76, 0xde, 0x07, 0x07, 0xbd, 0x63, 0xdc, 0x5e, 0x91, }; static const unsigned char xdh_wei448_2984_privkey[] = { 0x74, 0xfb, 0x2c, 0xcc, 0x2b, 0x2e, 0xfb, 0x17, 0xdd, 0xab, 0x72, 0x17, 0x50, 0xde, 0x77, 0x51, 0xf0, 0xa6, 0xbe, 0xda, 0x5d, 0xe7, 0x75, 0xb8, 0x2c, 0xbd, 0x21, 0x14, 0x90, 0xa4, 0x02, 0x0e, 0x80, 0x80, 0x8a, 0x62, 0x11, 0x4f, 0x0f, 0x1c, 0x45, 0x53, 0xf2, 0x6f, 0xbc, 0xab, 0x6c, 0xa9, 0x02, 0x64, 0x51, 0x60, 0xa3, 0xcf, 0xaa, 0x87, }; static const unsigned char xdh_wei448_2984_sharedsecret[] = { 0x45, 0x46, 0x32, 0x8d, 0x31, 0xeb, 0xd4, 0x74, 0x39, 0x22, 0x1c, 0xf9, 0x40, 0x33, 0x87, 0xcc, 0x61, 0x07, 0xd5, 0x4f, 0x67, 0xdd, 0xbe, 0xea, 0xfe, 0x3c, 0x57, 0xb7, 0x58, 0xab, 0x83, 0x86, 0xed, 0x76, 0xdc, 0xfc, 0xdd, 0x5b, 0x49, 0x92, 0x32, 0xbf, 0xbf, 0x7f, 0x15, 0xe6, 0x75, 0x0b, 0x71, 0x73, 0xdb, 0x07, 0xef, 0xb7, 0x31, 0x37, }; static const wycheproof_xdh_test xdh_wei448_2984 = { .name = "xdh_wei448_2984", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2984_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2984_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2984_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2984_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 401 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2985 for XDH, tcId is 402 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2985_peerpubkey[] = { 0x41, 0xfd, 0xa6, 0xe7, 0x50, 0x6b, 0x50, 0x85, 0x70, 0xae, 0x39, 0xd1, 0x65, 0x1d, 0x72, 0x1b, 0x8f, 0x2a, 0xc1, 0xba, 0xed, 0xa0, 0xa3, 0xba, 0x5c, 0x86, 0xc9, 0xc7, 0x17, 0x97, 0x90, 0xdd, 0xa0, 0x18, 0x5d, 0xa5, 0xde, 0x64, 0x87, 0x9c, 0x15, 0x73, 0x83, 0xf0, 0x4b, 0x9a, 0x32, 0x8a, 0xa5, 0xfb, 0xbf, 0x7e, 0x7d, 0x87, 0x0f, 0xd7, }; static const unsigned char xdh_wei448_2985_ourpubkey[] = { 0xcb, 0x8c, 0x66, 0x31, 0x1a, 0xa2, 0xb2, 0x7d, 0x7b, 0x7c, 0xaf, 0x32, 0xed, 0x7e, 0xa4, 0x0d, 0x9b, 0x7e, 0xc6, 0x0e, 0xf9, 0x28, 0x8f, 0x3d, 0xeb, 0x45, 0x49, 0x16, 0x5d, 0x16, 0xdc, 0x2c, 0x92, 0x4a, 0x00, 0x4a, 0x90, 0xe5, 0x64, 0xe2, 0x6a, 0xb9, 0x48, 0x44, 0xa8, 0x5d, 0xb4, 0x0e, 0xdf, 0x80, 0xf9, 0x3a, 0x4f, 0x17, 0x72, 0xb5, }; static const unsigned char xdh_wei448_2985_privkey[] = { 0x0c, 0x2f, 0x22, 0xe6, 0xa4, 0x7e, 0xa6, 0x08, 0xe8, 0xc0, 0xd1, 0xb0, 0x47, 0x0c, 0x45, 0xcc, 0x02, 0x5d, 0x1c, 0x07, 0x52, 0xbf, 0xe3, 0xaa, 0x36, 0xd1, 0x4f, 0x0e, 0x8f, 0x82, 0xf2, 0xe1, 0x2a, 0x27, 0xb6, 0xbd, 0x32, 0x23, 0x95, 0xa3, 0xde, 0x5b, 0x5d, 0xed, 0x46, 0xc3, 0x7b, 0xe1, 0x12, 0xd3, 0xe8, 0xd1, 0xbb, 0x86, 0xde, 0x86, }; static const unsigned char xdh_wei448_2985_sharedsecret[] = { 0xda, 0x06, 0xfa, 0x2f, 0xf0, 0x01, 0x5c, 0x46, 0x63, 0xa5, 0x9d, 0x2c, 0xde, 0x02, 0xb4, 0xd7, 0x9f, 0xad, 0x37, 0xa0, 0x54, 0x22, 0x0b, 0x15, 0x65, 0x1b, 0xe9, 0x92, 0x26, 0x65, 0x0e, 0x9f, 0x62, 0x46, 0x68, 0x34, 0x78, 0x2b, 0x3d, 0x00, 0x04, 0x31, 0x01, 0xc0, 0xff, 0x1b, 0xe3, 0x7d, 0xcc, 0x0d, 0x6f, 0x6b, 0xef, 0xe9, 0xbb, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_2985 = { .name = "xdh_wei448_2985", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2985_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2985_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2985_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2985_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 402 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2986 for XDH, tcId is 403 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2986_peerpubkey[] = { 0x2c, 0x2f, 0xda, 0x82, 0x80, 0xb4, 0x16, 0x0f, 0xbb, 0x8f, 0xcd, 0xd9, 0xa4, 0x6f, 0x78, 0x7f, 0x2e, 0x9b, 0x4e, 0xcf, 0xe1, 0x14, 0x92, 0x29, 0x81, 0x7d, 0x94, 0x06, 0x85, 0xa2, 0x55, 0x94, 0x9f, 0x5d, 0x9e, 0x05, 0x44, 0x6c, 0xba, 0xf8, 0x6b, 0x2a, 0xf6, 0x2d, 0x27, 0xe5, 0xe7, 0x6c, 0x74, 0x5b, 0x39, 0xb2, 0x9b, 0x52, 0x07, 0x06, }; static const unsigned char xdh_wei448_2986_ourpubkey[] = { 0x09, 0x66, 0x82, 0x4c, 0xd4, 0x64, 0xff, 0x79, 0x53, 0x0a, 0xe5, 0xec, 0x4c, 0xa4, 0xf1, 0x71, 0x0e, 0xb9, 0x9a, 0xe0, 0x0d, 0x92, 0x81, 0x42, 0xfa, 0x22, 0x6f, 0x4f, 0xb1, 0x5c, 0x71, 0x6c, 0x95, 0xdd, 0xc4, 0xe1, 0x46, 0xe7, 0xe8, 0x96, 0xa6, 0xc2, 0x4f, 0x54, 0x1a, 0x96, 0x56, 0xbb, 0x63, 0x90, 0x93, 0x62, 0xc9, 0x0f, 0x82, 0x3d, }; static const unsigned char xdh_wei448_2986_privkey[] = { 0xec, 0xd9, 0x88, 0xd9, 0x37, 0xd7, 0x19, 0x04, 0xf1, 0x58, 0x4a, 0x7c, 0xb4, 0x7d, 0xc6, 0xf9, 0xb5, 0xd1, 0xf1, 0x62, 0xf0, 0xf4, 0x0a, 0x76, 0x39, 0x3b, 0xf4, 0x80, 0x84, 0x34, 0xe2, 0x64, 0x4d, 0xeb, 0xe2, 0x30, 0x35, 0xbf, 0x4f, 0x9b, 0x59, 0x83, 0xfa, 0xf6, 0xe9, 0xf5, 0xfb, 0x9b, 0x1f, 0x4c, 0x4e, 0xc6, 0xc2, 0x5d, 0xfc, 0x88, }; static const unsigned char xdh_wei448_2986_sharedsecret[] = { 0xaa, 0x5a, 0xe8, 0x6b, 0x41, 0xec, 0x49, 0x1e, 0x1d, 0x6e, 0xfa, 0x86, 0x08, 0xf3, 0xf1, 0x07, 0x0a, 0x7f, 0xf0, 0xb6, 0x13, 0x88, 0x6a, 0xcc, 0x45, 0xc9, 0x2f, 0xcd, 0xba, 0x6a, 0x5a, 0x48, 0x09, 0x95, 0x74, 0x0d, 0x02, 0xe6, 0xb9, 0xb9, 0x62, 0xb8, 0x7e, 0x11, 0xc3, 0x3e, 0x25, 0xdf, 0xcc, 0xda, 0x8e, 0x5c, 0xb2, 0xf1, 0x52, 0x99, }; static const wycheproof_xdh_test xdh_wei448_2986 = { .name = "xdh_wei448_2986", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2986_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2986_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2986_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2986_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 403 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2987 for XDH, tcId is 404 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2987_peerpubkey[] = { 0x2b, 0xa9, 0x1c, 0xe4, 0xae, 0xfe, 0x09, 0x1a, 0xe4, 0x02, 0x92, 0xd2, 0x8c, 0x20, 0xfb, 0x24, 0x64, 0x94, 0x0c, 0xf6, 0xfb, 0x56, 0x87, 0x75, 0x42, 0xbb, 0x7b, 0xd9, 0x31, 0x49, 0x3b, 0x4e, 0xb7, 0xfd, 0xbc, 0xb6, 0x22, 0x70, 0x69, 0x34, 0x2d, 0x91, 0x3a, 0xeb, 0x29, 0xe4, 0x73, 0x27, 0xe5, 0x3e, 0x35, 0xa2, 0x42, 0x2b, 0x4d, 0x0b, }; static const unsigned char xdh_wei448_2987_ourpubkey[] = { 0x9d, 0x12, 0x2f, 0x99, 0xfb, 0x15, 0xd1, 0xfc, 0x5b, 0xdf, 0xd4, 0xb3, 0xe4, 0x1f, 0x2e, 0xea, 0x6a, 0x82, 0x86, 0x30, 0x14, 0x81, 0x4d, 0x46, 0x4c, 0x81, 0xb4, 0xe5, 0xc3, 0xfe, 0xf3, 0xd2, 0x3e, 0x28, 0x49, 0x8e, 0x35, 0x93, 0x0d, 0x3b, 0x72, 0xf7, 0x04, 0xca, 0xfa, 0xe1, 0x43, 0xd1, 0x5c, 0x5a, 0xcb, 0xea, 0x8c, 0x13, 0xa1, 0x2a, }; static const unsigned char xdh_wei448_2987_privkey[] = { 0x20, 0x43, 0x3d, 0x78, 0xa9, 0x74, 0x48, 0xc2, 0xdc, 0xa9, 0xcd, 0x9c, 0xfb, 0xf1, 0xc6, 0xa5, 0x3c, 0xf6, 0xc1, 0x38, 0xd1, 0x46, 0xc5, 0x73, 0xf9, 0x50, 0xdb, 0x11, 0x72, 0x34, 0x66, 0x06, 0x6f, 0x2b, 0xb5, 0x4a, 0x04, 0x19, 0xf1, 0xb8, 0xc8, 0x42, 0xf4, 0x35, 0x4f, 0x1f, 0x10, 0xe0, 0x7c, 0x75, 0xc3, 0x77, 0xec, 0x8f, 0xc2, 0x87, }; static const unsigned char xdh_wei448_2987_sharedsecret[] = { 0xf0, 0x52, 0x7e, 0xc8, 0x7d, 0x89, 0x6e, 0xcc, 0xed, 0xb3, 0xa6, 0xca, 0xa6, 0x65, 0x72, 0xe6, 0x4a, 0xee, 0xa5, 0x15, 0xf1, 0x89, 0x01, 0x46, 0xc8, 0x3d, 0x72, 0x53, 0x58, 0x31, 0xfe, 0x7e, 0xb1, 0x2d, 0xcc, 0x43, 0x4a, 0x63, 0x83, 0x9a, 0xff, 0x89, 0xd8, 0xc8, 0x78, 0x90, 0x6f, 0xe9, 0xd9, 0x2e, 0x0e, 0xdf, 0x21, 0x8c, 0x64, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_2987 = { .name = "xdh_wei448_2987", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2987_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2987_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2987_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2987_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 404 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2988 for XDH, tcId is 405 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2988_peerpubkey[] = { 0x78, 0x0c, 0x77, 0x37, 0x80, 0xe0, 0x04, 0xc3, 0x76, 0x59, 0x7d, 0x1f, 0x7d, 0x98, 0x89, 0x91, 0xc8, 0xb4, 0xc0, 0x31, 0x5d, 0x7b, 0xac, 0x91, 0xe6, 0x8d, 0xdb, 0x40, 0x51, 0xfa, 0xc4, 0x04, 0x40, 0xaf, 0x2f, 0x5b, 0x87, 0xd8, 0x4b, 0x00, 0xce, 0x2d, 0x85, 0xd6, 0x24, 0x97, 0xd0, 0xf6, 0x9d, 0xdb, 0xda, 0xe6, 0x61, 0xdf, 0x17, 0x3e, }; static const unsigned char xdh_wei448_2988_ourpubkey[] = { 0x45, 0x75, 0xbf, 0x1a, 0x3a, 0x70, 0x8f, 0x44, 0x83, 0x69, 0xaa, 0x26, 0x2c, 0x62, 0xb0, 0xe1, 0x83, 0xb6, 0x06, 0xb1, 0x79, 0x73, 0xb8, 0x4d, 0x2e, 0x70, 0x64, 0x17, 0x0e, 0x0e, 0xef, 0xb8, 0x72, 0x40, 0xdc, 0xc1, 0xc2, 0xf9, 0xef, 0x71, 0xc1, 0x38, 0x3b, 0x78, 0x2e, 0x73, 0x0b, 0x8c, 0xdf, 0xfe, 0xb8, 0x3c, 0x58, 0x48, 0x03, 0x96, }; static const unsigned char xdh_wei448_2988_privkey[] = { 0xb8, 0x69, 0xb7, 0xf0, 0x70, 0x72, 0x4d, 0x56, 0x2a, 0xb3, 0x46, 0xb0, 0xce, 0xe9, 0x10, 0xf0, 0x10, 0x61, 0xf7, 0x79, 0x48, 0x8d, 0x6a, 0xf1, 0x89, 0xde, 0xac, 0x04, 0x36, 0xd4, 0x0f, 0x65, 0x7e, 0x20, 0xd5, 0x6b, 0x57, 0xd4, 0xd1, 0xc0, 0x52, 0x87, 0x9b, 0xe7, 0x56, 0x62, 0xe1, 0xe6, 0x4f, 0x6b, 0x1a, 0xa3, 0xc1, 0x13, 0xd3, 0x8a, }; static const unsigned char xdh_wei448_2988_sharedsecret[] = { 0x7c, 0xb3, 0x47, 0xb4, 0x36, 0xf5, 0xa8, 0x3b, 0x14, 0x9d, 0x31, 0xfd, 0x93, 0x66, 0xc5, 0xeb, 0x84, 0xa6, 0x87, 0xbb, 0x78, 0xe5, 0x1e, 0x70, 0x14, 0xbd, 0xb6, 0xc0, 0x10, 0xa1, 0x5a, 0x00, 0x0d, 0x8d, 0x5e, 0x1f, 0xeb, 0x15, 0xa9, 0x0c, 0xa3, 0xe1, 0x7f, 0xb7, 0x45, 0x5d, 0xa7, 0x49, 0x6b, 0xd4, 0x81, 0xa4, 0xe0, 0xa6, 0x64, 0x25, }; static const wycheproof_xdh_test xdh_wei448_2988 = { .name = "xdh_wei448_2988", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2988_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2988_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2988_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2988_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 405 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2989 for XDH, tcId is 406 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2989_peerpubkey[] = { 0x4e, 0x6b, 0x2e, 0x16, 0xcf, 0xdc, 0x7f, 0x73, 0x43, 0x64, 0x4d, 0x90, 0x5c, 0x19, 0x5b, 0xec, 0xf6, 0x7a, 0xa8, 0xac, 0xfd, 0xbe, 0xd6, 0x24, 0xb6, 0x9d, 0xb1, 0x9b, 0x8c, 0x1f, 0x60, 0xd1, 0x74, 0x3e, 0xc0, 0x22, 0x3c, 0x0f, 0x75, 0x4e, 0x2f, 0xdd, 0x91, 0x90, 0xa4, 0xcf, 0x4c, 0xaf, 0x8b, 0x92, 0xfd, 0x1c, 0x93, 0xec, 0xdb, 0x65, }; static const unsigned char xdh_wei448_2989_ourpubkey[] = { 0xe6, 0xa4, 0x8b, 0x45, 0x83, 0xe7, 0x47, 0x62, 0x00, 0x87, 0xca, 0x0c, 0x35, 0xaf, 0xf6, 0x2f, 0xc7, 0x67, 0x3c, 0x72, 0xd9, 0x7e, 0x26, 0x8b, 0x9b, 0x35, 0x05, 0x31, 0x19, 0xc1, 0xad, 0x84, 0x3c, 0x12, 0xaa, 0x66, 0x02, 0xb7, 0xe7, 0x35, 0xe3, 0xf0, 0x39, 0x18, 0xb6, 0x7a, 0x08, 0xa7, 0x91, 0x09, 0x97, 0x85, 0xe2, 0xb4, 0xf7, 0x9f, }; static const unsigned char xdh_wei448_2989_privkey[] = { 0xac, 0xf0, 0x2c, 0x2e, 0x2b, 0x37, 0x52, 0x89, 0xc5, 0x9a, 0x27, 0x0f, 0x2b, 0x59, 0xa3, 0x36, 0x7c, 0x47, 0x79, 0x5e, 0x87, 0xcb, 0xf5, 0x19, 0x93, 0xf0, 0x49, 0x93, 0x0a, 0x0c, 0x1e, 0x1e, 0x79, 0x49, 0xe7, 0x0b, 0xe8, 0x38, 0xaa, 0xa6, 0xc1, 0x80, 0x09, 0x27, 0x35, 0x4b, 0x1e, 0xcc, 0x68, 0x5a, 0xc6, 0x1d, 0x59, 0x56, 0xe9, 0x89, }; static const unsigned char xdh_wei448_2989_sharedsecret[] = { 0x64, 0xd6, 0xb9, 0xd6, 0x30, 0xdc, 0x7e, 0xb0, 0xd8, 0x29, 0xf9, 0x6c, 0x03, 0x4e, 0xca, 0xfe, 0x21, 0xfe, 0xfe, 0x7a, 0x7f, 0xe6, 0x60, 0xe4, 0xc9, 0x1c, 0x6c, 0x54, 0x0c, 0xa3, 0x15, 0x7f, 0x94, 0x4c, 0x5c, 0xce, 0xa9, 0x70, 0x7c, 0x2f, 0x86, 0xfd, 0x38, 0xd0, 0x23, 0x8c, 0x85, 0x99, 0xc8, 0x48, 0xb8, 0x03, 0x60, 0x0d, 0xb9, 0x31, }; static const wycheproof_xdh_test xdh_wei448_2989 = { .name = "xdh_wei448_2989", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2989_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2989_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2989_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2989_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 406 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2990 for XDH, tcId is 407 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2990_peerpubkey[] = { 0xe4, 0x67, 0xd4, 0x24, 0x52, 0x8b, 0x22, 0x7b, 0xd1, 0x19, 0x2c, 0x1e, 0xcf, 0x22, 0xbd, 0xfb, 0xd0, 0xf5, 0xe1, 0x6b, 0x50, 0x2d, 0x58, 0x56, 0x84, 0x8c, 0x0e, 0x56, 0x72, 0xa8, 0x56, 0x31, 0x3f, 0x3e, 0x84, 0x43, 0x96, 0x61, 0xd7, 0xd5, 0xfc, 0x95, 0xb5, 0xa5, 0x9b, 0xba, 0x3a, 0xd5, 0x31, 0x21, 0xec, 0x97, 0xad, 0x54, 0x0f, 0x95, }; static const unsigned char xdh_wei448_2990_ourpubkey[] = { 0xb5, 0xc2, 0x87, 0xb0, 0x60, 0x39, 0x5b, 0x77, 0x50, 0x3d, 0xcb, 0xed, 0xf5, 0xc1, 0xbf, 0xc9, 0xc8, 0xab, 0x59, 0x9e, 0xf7, 0xf5, 0x33, 0x4b, 0x06, 0x98, 0x31, 0x4a, 0x8e, 0x92, 0x0c, 0xc2, 0x9d, 0xe4, 0xbb, 0x0b, 0xbf, 0xd7, 0x91, 0x73, 0xa3, 0x14, 0x33, 0x62, 0x2f, 0x1f, 0x21, 0x19, 0x0e, 0x11, 0x01, 0x8a, 0x7d, 0xcb, 0xb6, 0xb5, }; static const unsigned char xdh_wei448_2990_privkey[] = { 0xdc, 0x0f, 0x97, 0x35, 0x5e, 0xf2, 0xc5, 0xd4, 0x24, 0x15, 0x86, 0x7a, 0x28, 0xe9, 0xf6, 0x96, 0x57, 0xb7, 0x8d, 0xa4, 0x18, 0x5c, 0xe5, 0x1d, 0xae, 0x61, 0xe2, 0x38, 0x71, 0x36, 0xa6, 0x2d, 0x88, 0x5c, 0x18, 0xe7, 0xe1, 0x77, 0x30, 0xa0, 0x1f, 0x4b, 0x47, 0x26, 0x7e, 0xe6, 0x93, 0xa6, 0x07, 0x38, 0xef, 0x1e, 0xa5, 0x18, 0x7b, 0x86, }; static const unsigned char xdh_wei448_2990_sharedsecret[] = { 0xfd, 0x52, 0x30, 0x23, 0x11, 0x12, 0x09, 0x0a, 0x49, 0x2e, 0x4b, 0x6b, 0x4d, 0x9f, 0x29, 0xae, 0x56, 0x5f, 0xb7, 0x52, 0x7e, 0x56, 0xfa, 0x80, 0x43, 0x47, 0xe1, 0x00, 0x47, 0xe9, 0xa5, 0x4c, 0xa4, 0x3c, 0x1e, 0x65, 0x45, 0xab, 0x5c, 0x73, 0x3a, 0x86, 0xf6, 0x68, 0x81, 0x0f, 0x0e, 0x22, 0xef, 0x5c, 0xb8, 0x74, 0x57, 0xa0, 0x1b, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_2990 = { .name = "xdh_wei448_2990", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2990_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2990_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2990_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2990_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 407 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2991 for XDH, tcId is 408 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2991_peerpubkey[] = { 0xc6, 0x9f, 0x7f, 0x36, 0x49, 0x53, 0xc3, 0xcc, 0xba, 0x79, 0x10, 0x3f, 0x5a, 0x88, 0xd9, 0xe7, 0x45, 0x21, 0x68, 0x4e, 0xb5, 0xe3, 0x6c, 0xcf, 0x8c, 0x25, 0x85, 0xdb, 0x73, 0xb8, 0x05, 0xa7, 0x9f, 0xbb, 0xa3, 0x93, 0xf8, 0x1a, 0x11, 0x56, 0xf6, 0x89, 0xa3, 0x82, 0xcb, 0xde, 0x27, 0x2c, 0x9c, 0x2b, 0x1f, 0xfa, 0x88, 0x79, 0xad, 0xad, }; static const unsigned char xdh_wei448_2991_ourpubkey[] = { 0x20, 0x50, 0xd4, 0x33, 0x67, 0x50, 0x56, 0xba, 0x21, 0x75, 0xfe, 0xa5, 0xda, 0xd2, 0x72, 0xa3, 0x31, 0x0e, 0x7f, 0x6b, 0x55, 0xf1, 0x3e, 0x1a, 0xf7, 0x9d, 0xeb, 0x5c, 0xfa, 0xaf, 0x9f, 0x14, 0xde, 0xe9, 0x21, 0x1c, 0x3b, 0xbd, 0xb4, 0x61, 0x11, 0xc2, 0xa2, 0x80, 0x05, 0x15, 0xff, 0xb0, 0x93, 0x56, 0x9f, 0xdf, 0xf0, 0x91, 0x46, 0x40, }; static const unsigned char xdh_wei448_2991_privkey[] = { 0x9c, 0xf1, 0x09, 0x4d, 0xd4, 0x82, 0xc8, 0xfd, 0xd1, 0x11, 0x95, 0xed, 0xe3, 0x39, 0x5b, 0xb9, 0xb3, 0x3e, 0x87, 0x02, 0xb8, 0xce, 0x77, 0x11, 0x6d, 0x4e, 0xa4, 0x01, 0x89, 0x84, 0x4f, 0x54, 0xec, 0x53, 0x5c, 0x91, 0xfb, 0xfd, 0xb8, 0x2c, 0xcc, 0x7b, 0xb5, 0x44, 0x1f, 0x7f, 0xfc, 0xf5, 0x25, 0x31, 0x91, 0xdb, 0x3a, 0xf0, 0x13, 0x8d, }; static const unsigned char xdh_wei448_2991_sharedsecret[] = { 0xba, 0x66, 0x1d, 0x79, 0x28, 0x69, 0xd0, 0xd0, 0x8f, 0x07, 0xe9, 0x7b, 0x53, 0x05, 0xd5, 0x16, 0x48, 0xe4, 0xaa, 0x71, 0x43, 0xc9, 0x02, 0x8f, 0x3a, 0x2c, 0xa2, 0xf1, 0x2f, 0x60, 0x14, 0x76, 0xd8, 0x8b, 0x5d, 0xad, 0x32, 0x9f, 0xd0, 0xa7, 0x73, 0xff, 0xae, 0x21, 0x65, 0xe0, 0xe3, 0x25, 0x1f, 0x56, 0xe8, 0xe7, 0x3f, 0xbf, 0x6f, 0xfd, }; static const wycheproof_xdh_test xdh_wei448_2991 = { .name = "xdh_wei448_2991", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2991_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2991_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2991_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2991_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 408 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2992 for XDH, tcId is 409 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2992_peerpubkey[] = { 0x9c, 0xa0, 0x54, 0xab, 0x30, 0x0f, 0x6b, 0x38, 0x9c, 0xd5, 0x3c, 0xbf, 0x01, 0x1e, 0x86, 0x66, 0xf5, 0x92, 0xf9, 0xc1, 0x4f, 0x1e, 0x13, 0x87, 0xcc, 0xf7, 0x8e, 0xc4, 0x36, 0x46, 0x2e, 0x7a, 0xc1, 0xe8, 0x11, 0x81, 0x96, 0xee, 0x73, 0x1b, 0xc2, 0xa2, 0x0b, 0x24, 0x08, 0xa6, 0xbd, 0x49, 0xd1, 0x5a, 0x8a, 0x10, 0x41, 0x62, 0xf7, 0x06, }; static const unsigned char xdh_wei448_2992_ourpubkey[] = { 0x4c, 0xe5, 0x19, 0x4a, 0x40, 0x92, 0x79, 0x51, 0x3f, 0x3a, 0xee, 0x7d, 0x5c, 0xe2, 0xa7, 0xce, 0x40, 0x2d, 0x66, 0x49, 0xfe, 0x42, 0x8f, 0xd6, 0x03, 0xe5, 0x2e, 0x3a, 0x3f, 0xf1, 0xb8, 0x94, 0xd7, 0x58, 0x4b, 0x6b, 0xf0, 0xbd, 0xf0, 0x09, 0x50, 0x09, 0x05, 0x47, 0x9b, 0x91, 0x57, 0x1f, 0x73, 0x60, 0xe6, 0x5c, 0xd2, 0xa5, 0xc4, 0x06, }; static const unsigned char xdh_wei448_2992_privkey[] = { 0xa8, 0xeb, 0xca, 0x65, 0xaa, 0x84, 0x59, 0xc4, 0x8a, 0xc1, 0xc1, 0x4a, 0x83, 0xb0, 0x51, 0x5e, 0x92, 0xde, 0x6c, 0x35, 0x8b, 0xb6, 0x05, 0xe3, 0x1e, 0x46, 0x66, 0x94, 0xa8, 0x26, 0xa7, 0xef, 0x99, 0x46, 0x4e, 0x42, 0x5b, 0x97, 0x81, 0x42, 0x59, 0xb4, 0x15, 0xd0, 0xa8, 0xdf, 0x83, 0xb5, 0x40, 0xec, 0x89, 0x30, 0xee, 0x41, 0x37, 0x8d, }; static const unsigned char xdh_wei448_2992_sharedsecret[] = { 0x01, 0x57, 0x37, 0x8a, 0x83, 0xd7, 0xd4, 0x4b, 0xec, 0x58, 0x6e, 0x3e, 0xdd, 0xe0, 0x3e, 0x3a, 0xb4, 0x8f, 0x06, 0xe0, 0x0d, 0x21, 0x29, 0xcb, 0x34, 0x8c, 0x18, 0x09, 0x2b, 0x9c, 0x7b, 0xf7, 0xe4, 0xe0, 0x0d, 0xf1, 0x6a, 0x65, 0x0e, 0x46, 0x76, 0xd3, 0x1c, 0x91, 0x19, 0x27, 0x5a, 0x43, 0xdc, 0x60, 0xee, 0x61, 0x20, 0xe9, 0x0d, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_2992 = { .name = "xdh_wei448_2992", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2992_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2992_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2992_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2992_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 409 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2993 for XDH, tcId is 410 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2993_peerpubkey[] = { 0xae, 0x59, 0xde, 0x0b, 0xb7, 0x5b, 0xf5, 0x87, 0x06, 0xc3, 0x3c, 0x6f, 0xe9, 0x1b, 0x27, 0xba, 0x70, 0xf9, 0xa7, 0xb8, 0x72, 0x7a, 0x90, 0x1d, 0x4e, 0xa5, 0x3d, 0xce, 0xbb, 0xcf, 0x9f, 0x96, 0x26, 0xa9, 0xad, 0x60, 0xd8, 0x18, 0xea, 0x73, 0xdf, 0x1f, 0xaa, 0x4a, 0x2b, 0xf6, 0x33, 0x36, 0x5e, 0xe3, 0x4a, 0x0f, 0xc4, 0xc7, 0xd3, 0x0b, }; static const unsigned char xdh_wei448_2993_ourpubkey[] = { 0x9c, 0x52, 0x55, 0x07, 0x28, 0x40, 0x02, 0x86, 0x78, 0xec, 0xf5, 0x0e, 0x9e, 0x1e, 0x21, 0x99, 0xc6, 0xd3, 0x7c, 0x9f, 0x5f, 0x32, 0xb9, 0x8b, 0x55, 0xc9, 0x0d, 0x2b, 0x7a, 0x1e, 0xdb, 0xa6, 0x7e, 0x4a, 0xe7, 0x10, 0x8e, 0x05, 0xba, 0x32, 0x12, 0x26, 0xf6, 0x18, 0x13, 0x29, 0x96, 0x60, 0xf1, 0xfa, 0x37, 0x32, 0x9c, 0x82, 0x56, 0xba, }; static const unsigned char xdh_wei448_2993_privkey[] = { 0x7c, 0xd3, 0x6d, 0x53, 0x9a, 0x2a, 0xbb, 0xef, 0x73, 0xd9, 0x34, 0xca, 0xbb, 0xb5, 0xfb, 0xbe, 0x63, 0x20, 0x0a, 0x3e, 0x77, 0x95, 0xff, 0x30, 0x07, 0x32, 0x24, 0x5b, 0xfb, 0x11, 0xed, 0x60, 0xac, 0xee, 0x4a, 0x71, 0x33, 0x0b, 0xd9, 0x83, 0x1d, 0x91, 0xf3, 0xeb, 0x8a, 0x41, 0x49, 0x76, 0xf6, 0xf7, 0x21, 0x6c, 0x1f, 0x37, 0x63, 0x84, }; static const unsigned char xdh_wei448_2993_sharedsecret[] = { 0x27, 0x07, 0xb9, 0x4b, 0xd0, 0xc4, 0xb7, 0xaa, 0xa7, 0x77, 0x46, 0x7d, 0x15, 0xfa, 0x86, 0x24, 0x9b, 0x46, 0x06, 0xc7, 0xae, 0xb8, 0x25, 0x88, 0x14, 0xd4, 0x60, 0xd9, 0xbf, 0x59, 0x4d, 0x81, 0x2d, 0x38, 0x39, 0x54, 0x76, 0x1c, 0x95, 0xa4, 0xc6, 0x76, 0x74, 0xc4, 0xae, 0x6d, 0x09, 0xf7, 0x4c, 0xba, 0xd3, 0xd7, 0x53, 0x40, 0xc6, 0x09, }; static const wycheproof_xdh_test xdh_wei448_2993 = { .name = "xdh_wei448_2993", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2993_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2993_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2993_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2993_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 410 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2994 for XDH, tcId is 411 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2994_peerpubkey[] = { 0xe6, 0x24, 0x22, 0xb2, 0x2e, 0x12, 0x32, 0xdf, 0xb6, 0x03, 0x7d, 0xfa, 0x7c, 0xbb, 0xf5, 0x76, 0x76, 0x04, 0x66, 0x4d, 0x22, 0xad, 0x2a, 0xfa, 0xde, 0x89, 0x2c, 0xe8, 0x74, 0x71, 0xad, 0xfe, 0x32, 0xa2, 0x90, 0x20, 0x3e, 0x22, 0xdd, 0x82, 0x80, 0x93, 0x8d, 0xa1, 0x89, 0x86, 0x6e, 0x60, 0xa4, 0xf2, 0xb0, 0x97, 0x85, 0x01, 0xac, 0x1a, }; static const unsigned char xdh_wei448_2994_ourpubkey[] = { 0xa6, 0x0c, 0xa5, 0xc9, 0xac, 0xad, 0xb2, 0x26, 0x5f, 0x49, 0xa8, 0xf8, 0x09, 0xcc, 0xf7, 0x27, 0xe1, 0xa9, 0x20, 0x16, 0x29, 0x59, 0xe1, 0x3e, 0x48, 0x5a, 0xe4, 0x2b, 0x05, 0x9f, 0x91, 0xc7, 0x3d, 0x62, 0x64, 0x5e, 0xd3, 0x07, 0x4c, 0xe3, 0x63, 0xc4, 0xd9, 0xd2, 0x87, 0x27, 0x6e, 0x79, 0xc2, 0x60, 0x9d, 0x77, 0x83, 0xa7, 0x2f, 0x3e, }; static const unsigned char xdh_wei448_2994_privkey[] = { 0xb4, 0x35, 0x5c, 0xe9, 0x25, 0x0c, 0x14, 0xe5, 0x1f, 0xad, 0x03, 0xb7, 0x85, 0xd1, 0x3d, 0xfc, 0xc9, 0xe4, 0x31, 0xdf, 0xc4, 0x0e, 0xa5, 0xde, 0x83, 0x7b, 0x42, 0x6b, 0xc0, 0xdb, 0x90, 0xd8, 0x7d, 0xce, 0xfb, 0xe9, 0x81, 0xd9, 0x39, 0xb9, 0xdc, 0x9e, 0xbe, 0xe0, 0x77, 0x21, 0x27, 0xc7, 0x32, 0x45, 0xb6, 0xda, 0x6d, 0x56, 0xa5, 0x8c, }; static const unsigned char xdh_wei448_2994_sharedsecret[] = { 0x0c, 0x40, 0x76, 0xf5, 0xf7, 0xe7, 0x8c, 0x06, 0x5d, 0x03, 0x56, 0xa5, 0x42, 0x77, 0x42, 0x96, 0xb8, 0x8e, 0x58, 0x4a, 0x3d, 0xb4, 0x99, 0x44, 0xbe, 0x07, 0xe6, 0xac, 0x44, 0x9d, 0x8a, 0x74, 0x1e, 0xfd, 0x32, 0xea, 0x46, 0xb5, 0x3f, 0xec, 0x1e, 0x49, 0x4e, 0x7e, 0x9f, 0xe2, 0xfa, 0x83, 0x1b, 0xcf, 0xfe, 0xdd, 0x27, 0xd6, 0x69, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_2994 = { .name = "xdh_wei448_2994", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2994_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2994_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2994_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2994_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 411 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2995 for XDH, tcId is 412 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2995_peerpubkey[] = { 0xd2, 0xa4, 0xc7, 0x15, 0x2d, 0x46, 0x08, 0x82, 0xa8, 0x96, 0xc3, 0x25, 0x59, 0xd0, 0x46, 0xbf, 0x70, 0x1d, 0x51, 0x24, 0xcf, 0x5c, 0xef, 0xe5, 0x30, 0x77, 0x74, 0xd0, 0x4c, 0xb4, 0x49, 0xf7, 0xac, 0x18, 0x1c, 0x10, 0x80, 0x00, 0x7a, 0xbf, 0xec, 0xc1, 0x5c, 0x1b, 0xfe, 0x32, 0xbf, 0xf6, 0xdb, 0xe1, 0x24, 0xfe, 0x52, 0xca, 0x5c, 0x1e, }; static const unsigned char xdh_wei448_2995_ourpubkey[] = { 0xe3, 0x3c, 0x6a, 0xd6, 0x77, 0x92, 0x01, 0xc4, 0xcd, 0x9d, 0x9b, 0x2c, 0x77, 0x7a, 0x8e, 0x76, 0xed, 0xde, 0x65, 0xf4, 0x4b, 0xd0, 0xc6, 0xda, 0xd6, 0xc5, 0x1b, 0x95, 0xd2, 0x14, 0xc4, 0xe0, 0x17, 0x3d, 0xf4, 0x78, 0x5a, 0x97, 0xfa, 0x9c, 0xea, 0xe8, 0xe8, 0x6a, 0x3b, 0x0c, 0x62, 0x9d, 0xf6, 0xe1, 0xb8, 0x95, 0x4d, 0x52, 0xf5, 0xdd, }; static const unsigned char xdh_wei448_2995_privkey[] = { 0x5c, 0x58, 0xdd, 0xfa, 0xcc, 0x07, 0xa8, 0x96, 0x9d, 0x78, 0x30, 0xc1, 0x69, 0x11, 0x39, 0x28, 0x35, 0x1b, 0x7f, 0x9b, 0xe9, 0x4b, 0x2d, 0xe7, 0x28, 0xf6, 0x3f, 0xac, 0xc1, 0x8e, 0x27, 0x95, 0xf6, 0x91, 0xdc, 0x32, 0x96, 0x8e, 0x33, 0x10, 0xa7, 0x8a, 0x38, 0xea, 0x57, 0xd6, 0x76, 0x07, 0x28, 0x11, 0xde, 0x47, 0x7d, 0x28, 0xa0, 0x8e, }; static const unsigned char xdh_wei448_2995_sharedsecret[] = { 0x9a, 0xfd, 0x98, 0x88, 0x44, 0x0c, 0x6e, 0xab, 0x0d, 0x63, 0xb7, 0xce, 0xc4, 0x2b, 0x5f, 0x42, 0x7f, 0xcb, 0x6a, 0x12, 0xa2, 0x65, 0xfe, 0x40, 0x26, 0x36, 0x3a, 0x3d, 0x1d, 0xa1, 0x71, 0xd1, 0xa0, 0xfa, 0x00, 0x09, 0x33, 0x3d, 0x41, 0xb4, 0x73, 0xb4, 0xec, 0x08, 0x66, 0xb6, 0xd6, 0x09, 0x3c, 0xfe, 0x87, 0x94, 0x25, 0xe2, 0x1e, 0x72, }; static const wycheproof_xdh_test xdh_wei448_2995 = { .name = "xdh_wei448_2995", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2995_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2995_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2995_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2995_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 412 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2996 for XDH, tcId is 413 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2996_peerpubkey[] = { 0x57, 0x5a, 0xa8, 0x2e, 0x2e, 0xad, 0x45, 0x3e, 0x32, 0x95, 0xd7, 0x81, 0x93, 0xcb, 0xaf, 0xdf, 0xb7, 0x48, 0xbf, 0xde, 0x0a, 0xb1, 0x2b, 0x5c, 0xab, 0x36, 0x11, 0x3a, 0xc2, 0x79, 0x6b, 0xc9, 0x50, 0xa3, 0x18, 0xf5, 0x94, 0x45, 0x38, 0x52, 0xf4, 0xb2, 0xaa, 0x86, 0x17, 0x0b, 0xcc, 0x31, 0x73, 0x93, 0x81, 0xae, 0xb7, 0x8b, 0xa9, 0x2b, }; static const unsigned char xdh_wei448_2996_ourpubkey[] = { 0xe8, 0x14, 0x5b, 0x0f, 0x46, 0x3c, 0x5a, 0x4c, 0xa2, 0x8b, 0xe6, 0xfc, 0xbb, 0xf4, 0x30, 0x3d, 0xc9, 0x6f, 0x9c, 0x38, 0x57, 0x82, 0x10, 0x4c, 0xd4, 0x3d, 0xcd, 0x3c, 0x3e, 0x18, 0xd3, 0x89, 0x8b, 0x41, 0x52, 0x7b, 0x7c, 0x99, 0x00, 0x40, 0xc0, 0x78, 0xc3, 0x8f, 0x10, 0x8a, 0xb8, 0x93, 0x2d, 0x05, 0x15, 0xb3, 0x4d, 0x76, 0x0f, 0x43, }; static const unsigned char xdh_wei448_2996_privkey[] = { 0x18, 0x12, 0x23, 0x06, 0xcd, 0x06, 0x38, 0xb6, 0x4a, 0x86, 0x00, 0xf0, 0x88, 0x30, 0x74, 0xa7, 0xed, 0xfc, 0xe6, 0xd6, 0x4d, 0x1e, 0x29, 0xeb, 0x0e, 0x3e, 0xfb, 0xd9, 0xca, 0x0e, 0x80, 0xb1, 0x33, 0xbc, 0x71, 0xf1, 0x81, 0x48, 0xbc, 0x11, 0xc2, 0xb1, 0xe6, 0xa2, 0x46, 0x80, 0x0d, 0xa2, 0xdc, 0xfa, 0x30, 0x05, 0xa0, 0x94, 0x68, 0x84, }; static const unsigned char xdh_wei448_2996_sharedsecret[] = { 0x29, 0x44, 0x7f, 0xa2, 0x06, 0x1b, 0x4c, 0xde, 0x87, 0x6b, 0xd0, 0x74, 0x9c, 0x6d, 0x5b, 0x5e, 0x4d, 0x94, 0x19, 0xde, 0xfb, 0xa9, 0xac, 0xe2, 0x79, 0x9e, 0x9d, 0x3e, 0xa1, 0x74, 0x03, 0x5d, 0x97, 0x7a, 0xce, 0x07, 0x83, 0x36, 0x8a, 0xc1, 0x26, 0x9f, 0x69, 0x22, 0xa6, 0x9d, 0xc4, 0x7f, 0xfb, 0x65, 0xf2, 0x13, 0x75, 0xf5, 0x69, 0x29, }; static const wycheproof_xdh_test xdh_wei448_2996 = { .name = "xdh_wei448_2996", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2996_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2996_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2996_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2996_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 413 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2997 for XDH, tcId is 414 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2997_peerpubkey[] = { 0x56, 0x29, 0xec, 0x6f, 0xcb, 0x52, 0x60, 0x01, 0x9d, 0x95, 0x51, 0xb6, 0x30, 0x85, 0xd2, 0x50, 0x00, 0xa5, 0x9c, 0x12, 0x94, 0x7b, 0xc8, 0xd8, 0x98, 0x5d, 0x68, 0xca, 0xba, 0x08, 0xef, 0xed, 0x9e, 0xde, 0x76, 0xde, 0x2f, 0x6c, 0x5b, 0x76, 0x28, 0x01, 0xc3, 0x65, 0x06, 0x15, 0xed, 0xb9, 0x6f, 0xd4, 0x73, 0xb1, 0x7c, 0xd0, 0x38, 0x2e, }; static const unsigned char xdh_wei448_2997_ourpubkey[] = { 0x51, 0xa7, 0x54, 0x8b, 0xee, 0xeb, 0x29, 0xb8, 0x3d, 0x2f, 0xd0, 0x2f, 0x74, 0x1f, 0x9e, 0x43, 0x5a, 0xcc, 0x23, 0x59, 0xe2, 0x32, 0xea, 0x65, 0xe1, 0x9c, 0x3c, 0x9a, 0x2d, 0xc1, 0xaa, 0xbc, 0x7e, 0x2f, 0x50, 0x41, 0x58, 0x32, 0xe0, 0x24, 0x22, 0x0d, 0x75, 0x72, 0x36, 0xfe, 0x79, 0x2e, 0xdd, 0x4a, 0xf2, 0x43, 0x56, 0xc8, 0xce, 0xea, }; static const unsigned char xdh_wei448_2997_privkey[] = { 0x40, 0x68, 0x6a, 0xc7, 0xb2, 0x65, 0xa2, 0xdf, 0xfb, 0xb5, 0x28, 0x00, 0x28, 0x64, 0x96, 0x9a, 0x03, 0xb0, 0xc2, 0x94, 0x2c, 0x9e, 0x5f, 0xcd, 0xc5, 0xe0, 0x2e, 0xfe, 0x45, 0x2f, 0x35, 0x11, 0x0c, 0xcd, 0xe0, 0xba, 0x88, 0xc4, 0x0c, 0x6a, 0xd2, 0x34, 0x3c, 0x5a, 0x7c, 0xaf, 0xd6, 0x80, 0x50, 0x54, 0xef, 0xce, 0x3c, 0x17, 0x99, 0x8e, }; static const unsigned char xdh_wei448_2997_sharedsecret[] = { 0x67, 0x7b, 0xfe, 0x25, 0xc0, 0x04, 0x4b, 0x3b, 0x54, 0x05, 0x27, 0xe8, 0xdc, 0x78, 0xd8, 0x78, 0x27, 0xaa, 0xb6, 0x68, 0x62, 0x34, 0x6c, 0x78, 0xf7, 0xad, 0x95, 0x9e, 0x8c, 0xbd, 0x5f, 0x8b, 0xf0, 0xc6, 0x12, 0xca, 0x66, 0xdb, 0x2b, 0xba, 0xd6, 0xa0, 0xd3, 0xc8, 0xdb, 0xd0, 0xf9, 0x92, 0x22, 0x94, 0xfa, 0x28, 0x21, 0x40, 0xab, 0x06, }; static const wycheproof_xdh_test xdh_wei448_2997 = { .name = "xdh_wei448_2997", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2997_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2997_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2997_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2997_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 414 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2998 for XDH, tcId is 415 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2998_peerpubkey[] = { 0x23, 0x94, 0xf0, 0xd4, 0x2a, 0x7e, 0x06, 0x0c, 0x83, 0xf2, 0x4f, 0xe7, 0x17, 0x9f, 0x07, 0xed, 0xd1, 0x71, 0xaf, 0x1b, 0x53, 0xe8, 0x6b, 0xe7, 0x00, 0x55, 0x1a, 0x96, 0x95, 0x04, 0x78, 0x2c, 0x45, 0x93, 0x6a, 0x16, 0xc7, 0x7c, 0x0f, 0xa1, 0xe0, 0x54, 0xa6, 0x9a, 0x50, 0x99, 0x63, 0xa2, 0x42, 0xae, 0x25, 0x6f, 0x71, 0x79, 0x04, 0x35, }; static const unsigned char xdh_wei448_2998_ourpubkey[] = { 0xfd, 0xde, 0x38, 0x09, 0xfa, 0xc1, 0xb8, 0x15, 0x72, 0xfe, 0x3b, 0x0d, 0xb3, 0xc0, 0xc3, 0x47, 0xb9, 0xc1, 0x4d, 0x09, 0x58, 0x8d, 0x3b, 0x9e, 0x86, 0x4a, 0x13, 0x91, 0xe7, 0x70, 0x6a, 0x50, 0x09, 0x00, 0x7a, 0x07, 0x08, 0x0b, 0xc9, 0x7d, 0xaf, 0xf0, 0x5b, 0x37, 0x01, 0x12, 0x0d, 0xb8, 0xab, 0x67, 0x3e, 0x20, 0xe2, 0xaf, 0x53, 0xdc, }; static const unsigned char xdh_wei448_2998_privkey[] = { 0xf0, 0x4d, 0xfc, 0x27, 0x1f, 0xbc, 0x4a, 0x4e, 0xc8, 0xda, 0x96, 0x29, 0xde, 0x17, 0xfb, 0x6d, 0x66, 0x7e, 0x0a, 0x5f, 0x04, 0xb6, 0x99, 0x35, 0x82, 0xff, 0x32, 0xb3, 0xa7, 0xe0, 0xd4, 0xb8, 0x40, 0xee, 0x07, 0x2b, 0x5c, 0x08, 0xf9, 0x61, 0x42, 0xcc, 0x3c, 0x0d, 0xe1, 0x4a, 0x61, 0xf2, 0x59, 0x6f, 0x5c, 0x88, 0x43, 0x5e, 0xbb, 0x8b, }; static const unsigned char xdh_wei448_2998_sharedsecret[] = { 0x91, 0xde, 0xcd, 0xb8, 0x94, 0x28, 0x3a, 0xa2, 0x6e, 0x61, 0x4e, 0x31, 0x15, 0x44, 0x70, 0xc3, 0x1f, 0xde, 0x19, 0x13, 0x40, 0x57, 0x70, 0xe6, 0x53, 0x25, 0x31, 0x9f, 0x2c, 0xa2, 0x6a, 0xac, 0x71, 0xad, 0x24, 0x7d, 0xc2, 0x18, 0x5c, 0x2d, 0xaa, 0xb8, 0x21, 0x41, 0x76, 0x15, 0xed, 0x6e, 0x77, 0x28, 0xe8, 0xa9, 0xcc, 0x5f, 0xb6, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_2998 = { .name = "xdh_wei448_2998", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2998_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2998_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2998_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2998_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 415 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 2999 for XDH, tcId is 416 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_2999_peerpubkey[] = { 0xf9, 0xfa, 0xd4, 0x52, 0x57, 0x8f, 0x50, 0x6e, 0x18, 0xd7, 0x0c, 0x27, 0xeb, 0x00, 0x2a, 0xa6, 0x1b, 0x20, 0xb9, 0xe9, 0x05, 0xeb, 0x53, 0x10, 0x47, 0x66, 0xb2, 0x8d, 0xb2, 0x31, 0x4e, 0xe1, 0xdb, 0x36, 0x26, 0x5f, 0x6f, 0x34, 0xb4, 0x1a, 0x00, 0x8c, 0xb5, 0x79, 0x5d, 0x13, 0xbe, 0x40, 0x3a, 0xd9, 0x41, 0x88, 0x62, 0x56, 0x05, 0x3c, }; static const unsigned char xdh_wei448_2999_ourpubkey[] = { 0x86, 0x04, 0xb5, 0x6c, 0x8f, 0xbf, 0xf0, 0x62, 0x83, 0xbe, 0x9a, 0xd6, 0xf5, 0x3f, 0x6b, 0x9c, 0x47, 0x20, 0x30, 0x1b, 0x6b, 0x35, 0x38, 0x76, 0x45, 0xb2, 0xc0, 0x7a, 0x03, 0x68, 0x58, 0xb9, 0x31, 0x33, 0x47, 0xb6, 0xcb, 0x97, 0xd5, 0x9a, 0x4b, 0x3a, 0xb1, 0x47, 0xf6, 0x59, 0x6a, 0x92, 0x0c, 0x15, 0xef, 0xb0, 0x58, 0x47, 0xa6, 0x08, }; static const unsigned char xdh_wei448_2999_privkey[] = { 0x54, 0xb3, 0xdc, 0xaf, 0xdd, 0x9e, 0x0d, 0x73, 0x1e, 0xff, 0x76, 0xd2, 0x44, 0x63, 0xaf, 0xc0, 0xbf, 0x94, 0x81, 0x59, 0x7f, 0x35, 0x6d, 0x21, 0x06, 0x21, 0xaf, 0x29, 0x10, 0x48, 0xd9, 0x20, 0x75, 0x38, 0x6e, 0x80, 0xee, 0x8e, 0x78, 0xd7, 0xf5, 0x43, 0xb3, 0x05, 0xe3, 0xd2, 0xd2, 0xa4, 0x18, 0x0d, 0xee, 0x8b, 0x52, 0x8a, 0xb4, 0x87, }; static const unsigned char xdh_wei448_2999_sharedsecret[] = { 0xf5, 0xd9, 0xca, 0xbf, 0x7c, 0x1b, 0x1c, 0x64, 0xc9, 0xe2, 0xc2, 0xda, 0xf9, 0x5c, 0xcb, 0x38, 0xa7, 0x1b, 0x21, 0x28, 0xf1, 0x98, 0x7a, 0x98, 0xed, 0x5c, 0x91, 0x8b, 0xa6, 0x94, 0x86, 0xb1, 0x7e, 0x03, 0x70, 0xa9, 0x49, 0xdc, 0x17, 0x2b, 0xaf, 0x85, 0x93, 0xa1, 0xf8, 0xd3, 0x7d, 0x02, 0x2b, 0x0a, 0x0a, 0x9b, 0xc5, 0x4c, 0xae, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_2999 = { .name = "xdh_wei448_2999", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_2999_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_2999_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_2999_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_2999_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 416 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3000 for XDH, tcId is 417 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3000_peerpubkey[] = { 0xf2, 0xc4, 0xcb, 0x79, 0xda, 0x0f, 0xd6, 0xae, 0x25, 0x1a, 0x16, 0x44, 0x6e, 0x6b, 0x92, 0x14, 0xcb, 0xbf, 0x76, 0xdd, 0x91, 0x1f, 0xb4, 0x96, 0x6e, 0xa6, 0x5e, 0x1e, 0x5c, 0x72, 0x5d, 0x35, 0x40, 0x48, 0x8f, 0x22, 0xd2, 0x32, 0xdd, 0x4e, 0x55, 0x96, 0xeb, 0x7f, 0x9e, 0x6d, 0x4b, 0xba, 0xe8, 0xf1, 0xa1, 0x7a, 0x6e, 0x3d, 0x94, 0x61, }; static const unsigned char xdh_wei448_3000_ourpubkey[] = { 0xc0, 0xa8, 0xbb, 0xb7, 0xa3, 0x6f, 0xa4, 0xa1, 0xad, 0x39, 0x6a, 0xf0, 0x22, 0xf9, 0x98, 0xe4, 0xda, 0x2f, 0x78, 0xd5, 0x83, 0xef, 0x54, 0x87, 0xe3, 0xfb, 0xb9, 0x92, 0x82, 0x18, 0xb2, 0x6a, 0xab, 0xa3, 0xc3, 0xe8, 0xfb, 0xdb, 0xdb, 0xea, 0xcb, 0x22, 0x3d, 0x8a, 0xe9, 0x64, 0x1b, 0xa7, 0xec, 0xac, 0x8e, 0x31, 0xb2, 0xaf, 0x0c, 0x7c, }; static const unsigned char xdh_wei448_3000_privkey[] = { 0x04, 0x1b, 0x7c, 0xca, 0x67, 0x44, 0x98, 0x6f, 0x6b, 0xdf, 0x4e, 0x83, 0xb5, 0xe6, 0xa7, 0xed, 0x8a, 0xa9, 0x73, 0xbf, 0xc0, 0xb5, 0x88, 0x4e, 0x60, 0x70, 0x18, 0x7f, 0xae, 0x24, 0xf3, 0x40, 0x73, 0x63, 0xac, 0xbb, 0x1a, 0xf3, 0x7c, 0x96, 0x28, 0xf1, 0x5d, 0x9f, 0xd4, 0x9b, 0xeb, 0x51, 0x5f, 0x8a, 0x9b, 0x5e, 0x9a, 0x39, 0xf7, 0x86, }; static const unsigned char xdh_wei448_3000_sharedsecret[] = { 0xb8, 0x04, 0x81, 0x33, 0xbb, 0x5b, 0x73, 0x4e, 0xea, 0x7a, 0xa9, 0xe3, 0x5e, 0x69, 0xc5, 0x30, 0x19, 0x5d, 0xaf, 0x68, 0xa3, 0x6e, 0x04, 0x48, 0xc8, 0xc3, 0x88, 0x71, 0x1f, 0xcc, 0xee, 0xa1, 0x19, 0x18, 0x26, 0xbe, 0x00, 0x18, 0x0e, 0x0a, 0xad, 0x6e, 0xa2, 0x2d, 0x29, 0xe3, 0xae, 0x82, 0x37, 0xec, 0x78, 0xdd, 0x2e, 0x3b, 0x9d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_3000 = { .name = "xdh_wei448_3000", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3000_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3000_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3000_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3000_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 417 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3001 for XDH, tcId is 418 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3001_peerpubkey[] = { 0x67, 0x48, 0x8d, 0x65, 0xdc, 0xe8, 0x53, 0xb8, 0xa7, 0x3e, 0x4b, 0x1c, 0xc0, 0x69, 0xfa, 0xd7, 0x3d, 0x8b, 0x85, 0x56, 0x80, 0x00, 0x67, 0xae, 0xc1, 0xbf, 0x31, 0xef, 0x6a, 0xc9, 0xbf, 0x0b, 0xe6, 0x3a, 0x35, 0xba, 0x04, 0x8c, 0xca, 0x4f, 0x38, 0x43, 0x5b, 0xa5, 0x10, 0x8d, 0x9a, 0x15, 0x1f, 0xec, 0xbe, 0xdc, 0xd9, 0x48, 0xb5, 0x70, }; static const unsigned char xdh_wei448_3001_ourpubkey[] = { 0x53, 0xc9, 0xf5, 0x3b, 0x46, 0xc9, 0x05, 0xa1, 0x79, 0x5a, 0xa0, 0x32, 0xec, 0xfb, 0x58, 0xb0, 0xb5, 0x74, 0x0e, 0x5b, 0xe8, 0x6b, 0xcf, 0x63, 0xfb, 0x1a, 0x40, 0xf1, 0x3f, 0xc2, 0x73, 0x68, 0x87, 0xf3, 0x64, 0x96, 0x33, 0x23, 0x47, 0x76, 0xb8, 0xa1, 0x95, 0x0c, 0x34, 0xea, 0x79, 0x0c, 0xa9, 0x59, 0x86, 0x4a, 0xa0, 0x99, 0x3b, 0x37, }; static const unsigned char xdh_wei448_3001_privkey[] = { 0x70, 0x60, 0xb7, 0x7e, 0xef, 0x77, 0xf8, 0xc0, 0x7c, 0xe0, 0x94, 0xf5, 0x77, 0x8f, 0x4a, 0x77, 0x46, 0x2c, 0x22, 0xe2, 0x9e, 0x14, 0xe8, 0x86, 0xfe, 0x18, 0x73, 0x98, 0xe6, 0xcd, 0x9e, 0x1c, 0xec, 0xca, 0x70, 0x72, 0x08, 0x3c, 0x90, 0xfa, 0x03, 0xad, 0x05, 0x94, 0x02, 0x19, 0x76, 0x10, 0xcd, 0x94, 0xb9, 0x08, 0xdc, 0x9a, 0xb4, 0x89, }; static const unsigned char xdh_wei448_3001_sharedsecret[] = { 0x15, 0xd3, 0x49, 0xa6, 0xb9, 0x56, 0x3a, 0x54, 0xdd, 0xa4, 0xc4, 0x7d, 0x13, 0x27, 0x68, 0xc2, 0xfc, 0x95, 0x34, 0xec, 0x9f, 0x21, 0x22, 0xb4, 0x03, 0x59, 0xdb, 0x74, 0x50, 0x2c, 0xed, 0x68, 0x0e, 0x1d, 0x22, 0x7c, 0x4f, 0xee, 0xa2, 0xea, 0x60, 0x95, 0x35, 0x56, 0x66, 0xa4, 0xa8, 0x60, 0x0d, 0x32, 0x88, 0x75, 0x2a, 0x29, 0x53, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3001 = { .name = "xdh_wei448_3001", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3001_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3001_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3001_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3001_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 418 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3002 for XDH, tcId is 419 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3002_peerpubkey[] = { 0xc8, 0xa8, 0xd5, 0xf8, 0x7d, 0x63, 0x8f, 0xa0, 0xac, 0x76, 0x3e, 0xe1, 0xc8, 0x47, 0x06, 0xcf, 0x3b, 0xb2, 0x99, 0x6e, 0x95, 0xee, 0xd9, 0xf3, 0x78, 0xb2, 0x63, 0xcd, 0x55, 0x90, 0x19, 0x3d, 0x6e, 0x3c, 0x15, 0x92, 0xe0, 0x1d, 0x04, 0x00, 0x88, 0x13, 0xb3, 0x37, 0x70, 0x3a, 0x62, 0xde, 0xfb, 0xc8, 0x0c, 0x26, 0x57, 0x3a, 0xf9, 0xa1, }; static const unsigned char xdh_wei448_3002_ourpubkey[] = { 0x77, 0x24, 0x34, 0x58, 0x7a, 0xde, 0x6f, 0x4d, 0xaf, 0x2d, 0xbc, 0xa5, 0x8d, 0xa6, 0x11, 0x9f, 0x21, 0xf9, 0xf4, 0x48, 0xbb, 0x71, 0x6e, 0x31, 0x4e, 0xe2, 0xb3, 0x35, 0x35, 0x90, 0xff, 0xb7, 0x93, 0xe6, 0xf0, 0xa2, 0xed, 0x92, 0x1d, 0x45, 0x8e, 0x76, 0xcd, 0xb6, 0x69, 0xd8, 0x9a, 0x41, 0xb9, 0x36, 0x4f, 0xdd, 0x48, 0x21, 0xaa, 0xe5, }; static const unsigned char xdh_wei448_3002_privkey[] = { 0xcc, 0x64, 0x28, 0x9a, 0x20, 0x78, 0xd5, 0xed, 0x5e, 0x85, 0x48, 0xd6, 0xc0, 0x03, 0xaf, 0xe2, 0x79, 0x98, 0x10, 0x3e, 0x0b, 0xaf, 0x57, 0x0f, 0x65, 0x66, 0x24, 0xd9, 0x15, 0x6d, 0x6e, 0xee, 0xc6, 0xfd, 0x74, 0xde, 0xa9, 0x61, 0x5c, 0xa2, 0x87, 0xc1, 0xba, 0xf0, 0xf2, 0x7d, 0xdd, 0xda, 0x2c, 0xe5, 0x80, 0x69, 0xeb, 0x2e, 0x88, 0x8e, }; static const unsigned char xdh_wei448_3002_sharedsecret[] = { 0x98, 0x3a, 0x50, 0x28, 0x5e, 0x5e, 0x44, 0xbb, 0xe8, 0xde, 0x55, 0xde, 0x9c, 0x7f, 0xcb, 0xac, 0x1e, 0x2f, 0xb6, 0xaf, 0xd6, 0xfe, 0xc1, 0x89, 0xe6, 0xf3, 0xb9, 0xb8, 0xbd, 0xac, 0xa6, 0xab, 0x4b, 0x1f, 0xa9, 0xb5, 0x38, 0xb2, 0x8a, 0xda, 0xa5, 0xbf, 0x16, 0x73, 0x5a, 0x78, 0x69, 0xd8, 0x60, 0x95, 0xc5, 0x4f, 0x8a, 0xa4, 0x04, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3002 = { .name = "xdh_wei448_3002", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3002_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3002_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3002_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3002_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 419 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3003 for XDH, tcId is 420 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3003_peerpubkey[] = { 0x97, 0xe2, 0x9f, 0x21, 0x18, 0x74, 0x22, 0xc9, 0x4c, 0xfd, 0xf7, 0x4a, 0xf7, 0xfb, 0xd3, 0xc3, 0xd1, 0xfc, 0x17, 0x22, 0x5a, 0xc7, 0xd8, 0xe8, 0x7b, 0xb2, 0x56, 0x3b, 0x98, 0x8a, 0xc1, 0x9c, 0xd3, 0xaf, 0xcc, 0xa7, 0x07, 0xfa, 0xb8, 0x5a, 0x65, 0x2a, 0xe1, 0xb6, 0x18, 0x86, 0xfb, 0xba, 0x75, 0xc0, 0xa6, 0xf4, 0x5f, 0x50, 0x1c, 0xdc, }; static const unsigned char xdh_wei448_3003_ourpubkey[] = { 0x83, 0x74, 0x56, 0xc4, 0x1e, 0x10, 0x62, 0x6c, 0xd4, 0x9f, 0x4e, 0xd9, 0x33, 0xf0, 0xca, 0xb5, 0xb9, 0xcb, 0xff, 0x57, 0x28, 0xee, 0x13, 0x22, 0x9b, 0xae, 0xa8, 0xbd, 0xdb, 0x79, 0xca, 0xbd, 0x01, 0x0b, 0x87, 0x67, 0x77, 0x5a, 0xb8, 0xe7, 0xee, 0xec, 0x83, 0x17, 0xf7, 0x88, 0x00, 0xfa, 0x73, 0xc9, 0x16, 0x95, 0xd6, 0xed, 0xb7, 0xd9, }; static const unsigned char xdh_wei448_3003_privkey[] = { 0xa4, 0xdc, 0xcd, 0xb2, 0xca, 0x5b, 0x7a, 0xfc, 0x13, 0x14, 0x31, 0xd5, 0xea, 0xc0, 0xac, 0x6e, 0x6f, 0x9b, 0x33, 0xee, 0x2f, 0x41, 0x34, 0xe7, 0xd7, 0x9e, 0x10, 0xce, 0xb8, 0x4a, 0x36, 0xa0, 0x0b, 0xcc, 0xb2, 0x80, 0xac, 0x18, 0x59, 0xd1, 0x2a, 0x74, 0x08, 0x62, 0xd4, 0x07, 0x4c, 0xed, 0xb6, 0x53, 0x58, 0x7b, 0xcf, 0x71, 0x09, 0x8b, }; static const unsigned char xdh_wei448_3003_sharedsecret[] = { 0xc6, 0x06, 0x1d, 0xad, 0x24, 0xc1, 0xa1, 0xc8, 0x02, 0x91, 0xb3, 0x53, 0x89, 0xe0, 0x8d, 0xe5, 0xf9, 0x57, 0x7b, 0x01, 0x34, 0x15, 0xdd, 0xf4, 0x49, 0xe3, 0x88, 0x1b, 0xcb, 0x4c, 0xc3, 0x5a, 0x11, 0x40, 0x83, 0x59, 0x40, 0x59, 0x31, 0xa1, 0x7f, 0x42, 0x66, 0x2e, 0x26, 0x30, 0x3a, 0xad, 0x0f, 0xde, 0xcc, 0xd3, 0x24, 0xd7, 0x74, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_3003 = { .name = "xdh_wei448_3003", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3003_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3003_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3003_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3003_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 420 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3004 for XDH, tcId is 421 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3004_peerpubkey[] = { 0x05, 0x11, 0x83, 0xae, 0xfd, 0x0a, 0xb2, 0x1a, 0x07, 0x91, 0xc8, 0xb2, 0x91, 0x7b, 0xdf, 0x23, 0xbe, 0x5b, 0x25, 0xf1, 0xf4, 0xb3, 0x0c, 0x64, 0xc3, 0x7a, 0x25, 0x6f, 0x8c, 0xde, 0xca, 0x54, 0xcc, 0xee, 0x9d, 0xcd, 0x1e, 0x24, 0xaf, 0x24, 0x20, 0xd3, 0x2b, 0xc5, 0x57, 0x60, 0x91, 0xfd, 0x1f, 0xf3, 0xf8, 0x0d, 0xa3, 0x54, 0x36, 0xde, }; static const unsigned char xdh_wei448_3004_ourpubkey[] = { 0x43, 0xeb, 0xd6, 0x1c, 0x9e, 0x3c, 0x93, 0xc9, 0x1d, 0x29, 0x8d, 0xd0, 0x62, 0x36, 0x7f, 0xb7, 0x3a, 0x5b, 0x9c, 0x2e, 0xc8, 0x7d, 0x7f, 0xb1, 0xd0, 0x81, 0x9a, 0xda, 0x34, 0xa9, 0x10, 0xf0, 0x19, 0x5c, 0x2a, 0x69, 0x4f, 0x03, 0x35, 0xbc, 0x3b, 0x3a, 0x46, 0x35, 0xc3, 0xc8, 0x36, 0x8e, 0x9a, 0xc9, 0xf0, 0x49, 0x21, 0xb2, 0x2c, 0xe1, }; static const unsigned char xdh_wei448_3004_privkey[] = { 0x64, 0x5d, 0xfb, 0x9e, 0x66, 0xcf, 0x2a, 0x6a, 0x4e, 0x19, 0x8f, 0x19, 0xed, 0xc6, 0xfa, 0x43, 0xca, 0xf8, 0x6b, 0x1c, 0x35, 0xdf, 0xac, 0x97, 0xa5, 0x24, 0xb7, 0x0c, 0x0c, 0xd2, 0xba, 0xaf, 0x29, 0x16, 0xca, 0xc7, 0x19, 0x53, 0x61, 0x69, 0xea, 0x1f, 0x43, 0xe0, 0xe2, 0x46, 0x30, 0x65, 0x9f, 0x60, 0xd4, 0xe3, 0x32, 0x01, 0x89, 0x89, }; static const unsigned char xdh_wei448_3004_sharedsecret[] = { 0x3f, 0xea, 0x03, 0x6a, 0x64, 0x3f, 0xa9, 0x94, 0x67, 0x76, 0x3b, 0x06, 0xe0, 0x76, 0xf1, 0xc3, 0x11, 0x65, 0x3b, 0xd0, 0x86, 0x87, 0x7c, 0x87, 0xf8, 0x58, 0xb1, 0xbe, 0x2b, 0xb5, 0xcd, 0x10, 0x7b, 0xc1, 0x8b, 0x42, 0x22, 0xac, 0x1f, 0x48, 0xdc, 0x13, 0x74, 0x19, 0x38, 0x11, 0x99, 0xb4, 0xba, 0x29, 0xa7, 0xa7, 0xe9, 0x6d, 0xa0, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3004 = { .name = "xdh_wei448_3004", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3004_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3004_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3004_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3004_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 421 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3005 for XDH, tcId is 422 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3005_peerpubkey[] = { 0x0f, 0x25, 0xb2, 0x4b, 0x22, 0x50, 0x81, 0x23, 0x39, 0xa4, 0x50, 0x75, 0x84, 0xd2, 0xb5, 0x74, 0xbc, 0x2b, 0xfe, 0x07, 0x4c, 0xfb, 0xa1, 0x2f, 0xdc, 0x8e, 0x61, 0x2e, 0xfb, 0xdf, 0x67, 0x48, 0x0d, 0xe3, 0x3d, 0x62, 0xdd, 0xe1, 0x3f, 0xe6, 0x18, 0x67, 0x54, 0x57, 0x1e, 0x6c, 0xf3, 0x0a, 0x8f, 0xe3, 0x2e, 0x97, 0x5d, 0x94, 0x56, 0xeb, }; static const unsigned char xdh_wei448_3005_ourpubkey[] = { 0x96, 0xfc, 0x67, 0xf8, 0xcd, 0x87, 0x44, 0x31, 0x63, 0x77, 0x93, 0x5a, 0x81, 0x7f, 0x26, 0x3d, 0x16, 0xf3, 0xf3, 0x35, 0x25, 0xdd, 0xc0, 0x56, 0x95, 0x47, 0x63, 0x25, 0x15, 0x0b, 0x7c, 0x0f, 0x66, 0xc5, 0x23, 0x93, 0x49, 0xf9, 0x72, 0x9d, 0x8c, 0x53, 0x51, 0xef, 0x26, 0x3d, 0xce, 0xcd, 0x2a, 0xb6, 0x97, 0x64, 0x6e, 0x7a, 0x2a, 0x73, }; static const unsigned char xdh_wei448_3005_privkey[] = { 0xcc, 0x18, 0x26, 0xcf, 0x87, 0x5e, 0x63, 0x6c, 0xd1, 0x5d, 0xbc, 0xd9, 0xb2, 0xf7, 0xc4, 0xd3, 0x3c, 0x92, 0x39, 0x65, 0x2f, 0xf4, 0x84, 0xbb, 0xe9, 0xfb, 0xf8, 0x25, 0x47, 0x91, 0xce, 0xe4, 0xdc, 0x95, 0xe7, 0x5b, 0x0d, 0x92, 0x67, 0x9e, 0xdb, 0xdf, 0x6c, 0xba, 0xfe, 0x43, 0xff, 0xb0, 0x9d, 0x0a, 0xb7, 0x35, 0x68, 0xcf, 0x3c, 0x81, }; static const unsigned char xdh_wei448_3005_sharedsecret[] = { 0x7b, 0xd1, 0x4e, 0xbc, 0x4a, 0xae, 0x16, 0x3f, 0x2c, 0x61, 0xd5, 0x16, 0xe5, 0xb6, 0x7a, 0x5d, 0xbe, 0xf4, 0x87, 0xb8, 0x98, 0x0d, 0xef, 0xe3, 0x41, 0xfb, 0x94, 0x2f, 0xa8, 0xf1, 0xeb, 0x1a, 0xa8, 0x29, 0x51, 0x89, 0xf0, 0x6c, 0xd7, 0xcc, 0x7e, 0x35, 0xe5, 0x77, 0xbd, 0x34, 0xc8, 0x07, 0x70, 0xe9, 0x63, 0x3f, 0x85, 0x0f, 0xe8, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3005 = { .name = "xdh_wei448_3005", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3005_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3005_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3005_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3005_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 422 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3006 for XDH, tcId is 423 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3006_peerpubkey[] = { 0x17, 0x22, 0x5d, 0xf6, 0xc6, 0x58, 0x1a, 0x4c, 0x50, 0xd3, 0x14, 0x00, 0x39, 0x5f, 0xa2, 0x11, 0xed, 0x3d, 0x14, 0x6d, 0xeb, 0xda, 0xe1, 0xc3, 0xe6, 0xb4, 0x41, 0xbb, 0x13, 0x87, 0x10, 0x42, 0xdd, 0x35, 0x85, 0x47, 0x01, 0x98, 0xdf, 0x89, 0x7b, 0xfe, 0x82, 0xc0, 0xc7, 0xef, 0xe7, 0x39, 0xa7, 0x28, 0x4f, 0x8e, 0xb4, 0x72, 0x42, 0xef, }; static const unsigned char xdh_wei448_3006_ourpubkey[] = { 0xac, 0x6a, 0x51, 0x09, 0x05, 0xc6, 0x8a, 0xb2, 0xf9, 0x28, 0x34, 0xcb, 0x7d, 0xc7, 0x20, 0xcb, 0x3f, 0xc0, 0x51, 0x87, 0x7e, 0x92, 0x91, 0xd1, 0x59, 0x6f, 0xde, 0xe4, 0x9f, 0xf8, 0xf7, 0x8c, 0x99, 0xbb, 0xe4, 0xea, 0x6d, 0x0c, 0x8a, 0x23, 0x17, 0x70, 0x62, 0x03, 0x71, 0x9e, 0x12, 0x93, 0xf0, 0xc6, 0x61, 0x4a, 0x85, 0xdd, 0x38, 0xa7, }; static const unsigned char xdh_wei448_3006_privkey[] = { 0x38, 0x11, 0x23, 0x73, 0x97, 0xab, 0x5d, 0x36, 0x4c, 0x88, 0xa6, 0x8a, 0x1e, 0xcc, 0x31, 0x09, 0x60, 0x06, 0x78, 0x9a, 0x8c, 0xee, 0x84, 0xe6, 0x9c, 0x26, 0x7f, 0x1d, 0x93, 0xc1, 0xb8, 0xef, 0xab, 0x9f, 0xab, 0x8e, 0x3d, 0x5a, 0xb5, 0x11, 0x52, 0xa0, 0xb5, 0xdc, 0x11, 0xba, 0x0a, 0x0d, 0x4d, 0xcf, 0x7c, 0x41, 0xe7, 0xd7, 0xb6, 0x89, }; static const unsigned char xdh_wei448_3006_sharedsecret[] = { 0xd9, 0x6d, 0x07, 0x7d, 0x0a, 0xc0, 0x09, 0x6b, 0xbd, 0x79, 0xba, 0x1b, 0x83, 0x76, 0x32, 0x06, 0xb4, 0x01, 0x8d, 0x76, 0x9c, 0x0e, 0xa0, 0x7e, 0xff, 0x92, 0x4c, 0x98, 0x51, 0xc0, 0x7f, 0x66, 0xb3, 0x54, 0x75, 0xf1, 0x8b, 0xfc, 0xc8, 0x82, 0xb5, 0x00, 0x6a, 0x4e, 0xcf, 0x7c, 0xcb, 0xeb, 0x69, 0x4b, 0x57, 0x62, 0xb4, 0xcf, 0x07, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3006 = { .name = "xdh_wei448_3006", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3006_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3006_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3006_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3006_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 423 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3007 for XDH, tcId is 424 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3007_peerpubkey[] = { 0x6f, 0x56, 0xf2, 0xb6, 0x5a, 0x56, 0x09, 0x2f, 0xce, 0xce, 0x41, 0x79, 0x7f, 0x1b, 0x53, 0x13, 0xa2, 0xe7, 0xae, 0x5e, 0x60, 0xb9, 0x2a, 0x22, 0x11, 0xe2, 0xd6, 0x34, 0x80, 0x8e, 0x10, 0x9c, 0xd6, 0x84, 0xd4, 0x55, 0x47, 0x63, 0xb4, 0x86, 0x4d, 0x67, 0x68, 0x1d, 0xa4, 0x8d, 0x75, 0xf5, 0xdc, 0xf8, 0x69, 0x34, 0x6a, 0x10, 0x4a, 0x0d, }; static const unsigned char xdh_wei448_3007_ourpubkey[] = { 0x4f, 0x34, 0xbf, 0xab, 0x77, 0x3f, 0x04, 0x9d, 0x11, 0x61, 0x6f, 0x8c, 0x06, 0xdf, 0x50, 0x7b, 0xbf, 0x5e, 0x08, 0xa2, 0xef, 0x6d, 0xbf, 0x2f, 0xe6, 0xc1, 0xd8, 0x14, 0x3a, 0x0c, 0x34, 0x49, 0x1f, 0xe4, 0x6b, 0xcb, 0x79, 0xb3, 0xf5, 0xef, 0x07, 0xea, 0x55, 0x49, 0x3f, 0x82, 0xfa, 0x5c, 0x68, 0x7b, 0x88, 0x1b, 0x6f, 0xc1, 0x52, 0x0e, }; static const unsigned char xdh_wei448_3007_privkey[] = { 0x0c, 0x78, 0xfc, 0x8b, 0x60, 0x5d, 0xa2, 0xf2, 0xa8, 0x33, 0x2d, 0x0c, 0x08, 0x48, 0xac, 0xf7, 0x13, 0x3d, 0x33, 0x50, 0xff, 0xdc, 0x4b, 0x66, 0x51, 0x25, 0x70, 0x5d, 0xb9, 0x59, 0xae, 0x17, 0xd2, 0x5d, 0x2e, 0x2d, 0xfc, 0xb8, 0x58, 0xf0, 0xcf, 0x6f, 0x16, 0x16, 0x2a, 0x46, 0x17, 0x22, 0xb4, 0x09, 0x14, 0x95, 0x46, 0xa9, 0x97, 0x83, }; static const unsigned char xdh_wei448_3007_sharedsecret[] = { 0x23, 0x16, 0xe7, 0x1f, 0x15, 0xd9, 0x1b, 0xf0, 0xc3, 0xf8, 0xb3, 0x7b, 0x05, 0x37, 0xd3, 0xa4, 0x08, 0x82, 0x59, 0x99, 0x6e, 0x01, 0x83, 0x83, 0xc8, 0x10, 0xb9, 0xdd, 0xdf, 0x21, 0x1a, 0x44, 0x69, 0xae, 0x08, 0x8a, 0xbd, 0xf9, 0x31, 0x89, 0x4e, 0x22, 0x86, 0x50, 0x3e, 0x78, 0x08, 0x98, 0x48, 0x72, 0x55, 0xa1, 0x3e, 0xb5, 0xab, 0xc3, }; static const wycheproof_xdh_test xdh_wei448_3007 = { .name = "xdh_wei448_3007", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3007_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3007_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3007_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3007_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 424 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3008 for XDH, tcId is 425 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3008_peerpubkey[] = { 0x2b, 0x12, 0xcb, 0xc3, 0xbc, 0x20, 0xfc, 0x18, 0x92, 0xf5, 0xb0, 0x23, 0x6b, 0x71, 0xe7, 0x28, 0xe1, 0xe4, 0xad, 0xc7, 0x2d, 0x52, 0x61, 0xe6, 0xdf, 0x21, 0x77, 0xbb, 0x53, 0x10, 0x1d, 0x14, 0x40, 0xdb, 0xd8, 0x69, 0x9d, 0x2e, 0x83, 0xa0, 0x8e, 0x3e, 0x9e, 0x6f, 0xbe, 0xbe, 0xff, 0x59, 0xad, 0x43, 0xa4, 0x27, 0x7f, 0x97, 0x03, 0x10, }; static const unsigned char xdh_wei448_3008_ourpubkey[] = { 0xc0, 0xe3, 0x28, 0x2f, 0x8e, 0xd4, 0x5b, 0x74, 0x02, 0xa6, 0xa9, 0x99, 0x9b, 0xb9, 0xcb, 0xeb, 0x2b, 0x23, 0x89, 0x24, 0xe2, 0xae, 0x43, 0x45, 0x93, 0xee, 0x9a, 0xff, 0xea, 0xc4, 0xed, 0xb1, 0xb2, 0xbc, 0xb1, 0x15, 0x34, 0x59, 0xf2, 0x9e, 0xda, 0x18, 0x5e, 0x18, 0xe7, 0xa2, 0xd9, 0x1a, 0x90, 0xaf, 0x83, 0x3f, 0xda, 0xac, 0x26, 0x74, }; static const unsigned char xdh_wei448_3008_privkey[] = { 0xf4, 0x70, 0x2f, 0x84, 0x13, 0xcb, 0x82, 0x78, 0x58, 0x6a, 0x79, 0xa5, 0xf4, 0xe4, 0xca, 0xae, 0x61, 0x5d, 0x5e, 0xb9, 0x88, 0x51, 0x02, 0xe7, 0x19, 0x1a, 0x61, 0x60, 0xd2, 0x12, 0xc6, 0xe0, 0xfa, 0x50, 0xa2, 0x10, 0x97, 0x83, 0x52, 0x20, 0x42, 0x72, 0xd7, 0x99, 0xe1, 0x89, 0xa2, 0x83, 0x23, 0x3c, 0xd8, 0xfc, 0x3d, 0x96, 0xf4, 0x83, }; static const unsigned char xdh_wei448_3008_sharedsecret[] = { 0x20, 0xf0, 0xa3, 0xeb, 0xaa, 0x09, 0x9b, 0xdc, 0x58, 0xa5, 0xf9, 0x08, 0x8d, 0x5c, 0x44, 0xbb, 0xe6, 0x6c, 0xdd, 0xda, 0xf4, 0xc0, 0x52, 0x1b, 0x66, 0xb3, 0x1a, 0x00, 0xa5, 0x9e, 0x70, 0x09, 0x4c, 0xe6, 0x0e, 0x35, 0x67, 0x53, 0x95, 0x55, 0x2d, 0x48, 0x2c, 0x57, 0xfc, 0x38, 0xd1, 0x1c, 0x8d, 0xe2, 0x67, 0xe5, 0x11, 0xde, 0x45, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3008 = { .name = "xdh_wei448_3008", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3008_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3008_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3008_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3008_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 425 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3009 for XDH, tcId is 426 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3009_peerpubkey[] = { 0x5d, 0xeb, 0x8c, 0xb5, 0x71, 0xf9, 0xde, 0xea, 0x6f, 0x4c, 0xa6, 0xdd, 0xef, 0x78, 0x9c, 0xf0, 0x92, 0xbb, 0x7e, 0x33, 0xbb, 0xb8, 0x16, 0x0c, 0x0c, 0xc8, 0x3a, 0xff, 0xc6, 0xc0, 0x37, 0xdb, 0x17, 0xff, 0x3d, 0xbd, 0x12, 0x8e, 0x3e, 0x5d, 0x78, 0x04, 0x7d, 0xa6, 0xb9, 0xa0, 0x58, 0x51, 0xf1, 0x27, 0xdd, 0x0f, 0x27, 0xbe, 0xab, 0xaa, }; static const unsigned char xdh_wei448_3009_ourpubkey[] = { 0xa5, 0x01, 0xc0, 0x40, 0x39, 0xdc, 0x1b, 0x2f, 0x8d, 0x1a, 0xc2, 0x5f, 0xf4, 0xf9, 0x8a, 0x4f, 0x58, 0x4c, 0xca, 0x77, 0x46, 0xc1, 0xe5, 0x8a, 0x55, 0xf5, 0x86, 0xa4, 0xf5, 0x64, 0x8f, 0x49, 0x73, 0xff, 0xa1, 0xe8, 0xe3, 0xfb, 0xe3, 0x39, 0xe8, 0xde, 0xb8, 0x8a, 0x32, 0x86, 0xa6, 0xd4, 0xea, 0xbc, 0xc1, 0x67, 0x00, 0x43, 0xa2, 0xb6, }; static const unsigned char xdh_wei448_3009_privkey[] = { 0xcc, 0x78, 0x89, 0xbb, 0x91, 0x35, 0x7e, 0x0c, 0xbf, 0xd5, 0x3a, 0x99, 0x47, 0x54, 0x4f, 0xab, 0x4e, 0x35, 0xf1, 0x10, 0x2d, 0xa8, 0x7d, 0x34, 0x35, 0x38, 0x70, 0x9f, 0xa4, 0x73, 0xaa, 0x82, 0x13, 0x06, 0xf2, 0x08, 0x1f, 0x56, 0x9a, 0xef, 0x83, 0x7d, 0x76, 0x94, 0x28, 0x13, 0x8d, 0x83, 0x1b, 0x9e, 0x57, 0x67, 0xb4, 0x31, 0xf7, 0x85, }; static const unsigned char xdh_wei448_3009_sharedsecret[] = { 0xa6, 0x9f, 0xd8, 0xc7, 0xa5, 0xed, 0x40, 0x1c, 0x81, 0x45, 0x50, 0xc9, 0xd1, 0x35, 0xff, 0xc4, 0x82, 0xab, 0x40, 0xe0, 0x78, 0x01, 0xab, 0x50, 0xd1, 0x08, 0x2f, 0xfb, 0xb7, 0x8e, 0x07, 0xe5, 0xe1, 0x62, 0x8f, 0xeb, 0x5a, 0x18, 0xcc, 0x25, 0x7f, 0xff, 0x43, 0x1d, 0x5e, 0x36, 0xd9, 0x99, 0xb7, 0x53, 0x70, 0x89, 0xe9, 0x07, 0x3b, 0x40, }; static const wycheproof_xdh_test xdh_wei448_3009 = { .name = "xdh_wei448_3009", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3009_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3009_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3009_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3009_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 8, tcId is 426 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3010 for XDH, tcId is 427 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3010_peerpubkey[] = { 0x90, 0x11, 0x7d, 0x3b, 0x29, 0x6d, 0xdd, 0xb7, 0xe1, 0x6f, 0xa6, 0x55, 0x84, 0x02, 0x18, 0x8f, 0xb3, 0xce, 0xd0, 0x95, 0xf6, 0xb5, 0xcf, 0xe5, 0x5a, 0x2e, 0xf7, 0x37, 0x63, 0x4f, 0xfe, 0xf7, 0xd7, 0x2e, 0x29, 0x87, 0x52, 0xfc, 0xd0, 0x5f, 0x46, 0xb0, 0x8b, 0x98, 0x38, 0xa0, 0x58, 0x37, 0x45, 0xcb, 0x4d, 0xed, 0x2a, 0xe9, 0x74, 0xb5, }; static const unsigned char xdh_wei448_3010_ourpubkey[] = { 0xe8, 0xa6, 0xe9, 0x49, 0x58, 0xa6, 0x55, 0x6c, 0xa7, 0x91, 0x54, 0x03, 0x54, 0x4b, 0xba, 0x6e, 0xea, 0x1e, 0x91, 0xbb, 0xe3, 0xf5, 0x96, 0xc8, 0x01, 0xd8, 0x84, 0xf6, 0xe2, 0x73, 0x75, 0xbe, 0x4c, 0x8f, 0x26, 0x0e, 0x8d, 0x5e, 0xe5, 0xf8, 0x40, 0x2a, 0xe2, 0xa1, 0x29, 0x8d, 0xad, 0x42, 0x05, 0xe8, 0x6a, 0xdf, 0x96, 0xb0, 0x33, 0x04, }; static const unsigned char xdh_wei448_3010_privkey[] = { 0x6c, 0xa1, 0x6c, 0x5c, 0x5a, 0x85, 0x3e, 0xa8, 0xec, 0x6b, 0xee, 0x34, 0x69, 0x9c, 0xe3, 0x3d, 0x98, 0x6f, 0xeb, 0xd1, 0x26, 0x1d, 0xd9, 0x01, 0x4d, 0xe1, 0x81, 0x5b, 0xd7, 0x22, 0xe4, 0xb2, 0x55, 0x4f, 0x5e, 0xe1, 0xd4, 0x5d, 0x54, 0x66, 0x3a, 0x91, 0x90, 0xb3, 0x14, 0xbf, 0xd8, 0xd9, 0xc5, 0x49, 0x2e, 0xd4, 0x74, 0xc0, 0x09, 0x88, }; static const unsigned char xdh_wei448_3010_sharedsecret[] = { 0xb4, 0x09, 0x2b, 0x95, 0x50, 0x12, 0x3a, 0x03, 0x08, 0x59, 0xd2, 0xb5, 0xd7, 0x37, 0x0b, 0xbe, 0xf9, 0x3c, 0xa2, 0x90, 0x15, 0x30, 0x25, 0x9d, 0xac, 0xc9, 0x21, 0x17, 0x8d, 0x09, 0x89, 0xd1, 0x15, 0x08, 0xed, 0xa0, 0x7e, 0x82, 0xf2, 0xab, 0x43, 0xff, 0x14, 0xbb, 0x54, 0xa8, 0x47, 0xb9, 0x08, 0xe2, 0x5e, 0xdc, 0x24, 0x52, 0x5a, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3010 = { .name = "xdh_wei448_3010", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3010_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3010_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3010_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3010_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 427 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3011 for XDH, tcId is 428 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3011_peerpubkey[] = { 0x14, 0xe7, 0x73, 0x59, 0x5d, 0x8f, 0x47, 0xd1, 0x39, 0xe8, 0x62, 0x4c, 0x8c, 0xda, 0x31, 0xca, 0x26, 0xdd, 0x88, 0x7a, 0x3b, 0x37, 0x75, 0xef, 0xde, 0xc8, 0x83, 0x18, 0x31, 0xa9, 0x89, 0x72, 0x7f, 0x8d, 0xb0, 0x08, 0x27, 0x79, 0x6a, 0x18, 0x9a, 0x8c, 0x26, 0x16, 0x15, 0x74, 0x98, 0xc6, 0x66, 0x76, 0xed, 0x7b, 0x20, 0x37, 0xf0, 0xd1, }; static const unsigned char xdh_wei448_3011_ourpubkey[] = { 0x7a, 0x66, 0x9f, 0x1b, 0x2f, 0xd9, 0xde, 0x77, 0x25, 0x45, 0x2e, 0x49, 0xb1, 0x8e, 0x8d, 0xec, 0x20, 0xab, 0x2a, 0x90, 0x8d, 0x01, 0x4d, 0xb1, 0xaa, 0x7f, 0x02, 0xa4, 0xfd, 0xb5, 0xf5, 0xec, 0x48, 0xf7, 0x07, 0x50, 0xe9, 0xf6, 0x5d, 0x56, 0x77, 0x87, 0xe2, 0x1b, 0xb4, 0x09, 0x75, 0xec, 0x5d, 0x0f, 0x9c, 0xf4, 0x25, 0x13, 0x23, 0xa7, }; static const unsigned char xdh_wei448_3011_privkey[] = { 0x5c, 0xf6, 0xe2, 0x12, 0xe2, 0xa0, 0x15, 0x2e, 0x32, 0x04, 0x15, 0x08, 0x34, 0xca, 0x22, 0x07, 0xb7, 0x41, 0xf1, 0xa8, 0x27, 0xd0, 0x36, 0xaf, 0x18, 0x55, 0x27, 0xc8, 0x97, 0x66, 0x1f, 0x11, 0x51, 0x40, 0x9b, 0x64, 0xba, 0xad, 0x8c, 0xc1, 0xda, 0x9d, 0xc7, 0x5a, 0xe5, 0xaa, 0xfb, 0x8c, 0x36, 0x06, 0x2f, 0xc9, 0xb6, 0xdc, 0x9c, 0x8b, }; static const unsigned char xdh_wei448_3011_sharedsecret[] = { 0x22, 0xb9, 0x38, 0xcc, 0xed, 0x84, 0x72, 0xf3, 0x80, 0x01, 0xdb, 0xa6, 0xa2, 0xee, 0xd8, 0x56, 0xc9, 0x3f, 0x70, 0x1c, 0x4e, 0xd8, 0x1f, 0x51, 0x01, 0x89, 0xa1, 0x0b, 0xe2, 0x6d, 0x85, 0xc6, 0x95, 0x40, 0x28, 0x4b, 0xd2, 0x3e, 0xf7, 0x9e, 0x47, 0xc4, 0x47, 0x09, 0xd3, 0x06, 0x7d, 0xf3, 0xe1, 0x5a, 0x36, 0xa8, 0xa4, 0x1b, 0x85, 0x13, }; static const wycheproof_xdh_test xdh_wei448_3011 = { .name = "xdh_wei448_3011", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3011_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3011_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3011_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3011_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 428 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3012 for XDH, tcId is 429 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3012_peerpubkey[] = { 0x17, 0x18, 0x76, 0x86, 0xf0, 0x67, 0x45, 0x4a, 0xf7, 0x8c, 0x62, 0x04, 0xec, 0xea, 0x72, 0x87, 0x32, 0xc3, 0x22, 0xc8, 0x03, 0x5e, 0xf3, 0x48, 0xad, 0x1c, 0x35, 0xe7, 0x41, 0x8b, 0x9e, 0x9e, 0xf6, 0xec, 0xcc, 0x12, 0xf8, 0x80, 0x64, 0xd0, 0x62, 0x99, 0xb7, 0x64, 0x3e, 0xbf, 0x41, 0x66, 0x4b, 0xbf, 0x2c, 0x47, 0x79, 0x5f, 0x9e, 0xe4, }; static const unsigned char xdh_wei448_3012_ourpubkey[] = { 0x7f, 0x73, 0xe0, 0x7b, 0xd9, 0xbf, 0x02, 0xe6, 0x50, 0xff, 0x90, 0xa6, 0x01, 0x60, 0x06, 0x00, 0xa6, 0x82, 0x23, 0xae, 0xfa, 0xb4, 0x09, 0xbf, 0xf4, 0xf6, 0x8c, 0x90, 0xef, 0x5b, 0xc3, 0x32, 0x57, 0xce, 0x0b, 0x93, 0x17, 0xb2, 0x3d, 0xba, 0xc8, 0x3d, 0x4e, 0x67, 0xd8, 0x93, 0xf3, 0xbd, 0xb7, 0x01, 0x4a, 0xe7, 0x34, 0xf1, 0x0f, 0x23, }; static const unsigned char xdh_wei448_3012_privkey[] = { 0xd0, 0x50, 0xe8, 0x2a, 0x74, 0x80, 0x61, 0xc3, 0x23, 0x44, 0x0b, 0xa4, 0xae, 0x3d, 0x53, 0x37, 0x45, 0xe9, 0x41, 0xa3, 0xf7, 0x5e, 0xd5, 0x56, 0x91, 0x92, 0x17, 0xe0, 0x2f, 0x06, 0x90, 0x31, 0x55, 0x80, 0x7a, 0x4e, 0x60, 0xfe, 0xff, 0x4b, 0x14, 0xfd, 0xc7, 0x8f, 0xc4, 0xa2, 0x70, 0x24, 0xca, 0xaa, 0x02, 0x42, 0x62, 0xad, 0xac, 0x82, }; static const unsigned char xdh_wei448_3012_sharedsecret[] = { 0xed, 0xd3, 0x1e, 0xfe, 0x06, 0x31, 0x5a, 0x1d, 0xf5, 0x63, 0x9a, 0x85, 0xa5, 0x8d, 0xc2, 0x9b, 0xe3, 0xd1, 0x1a, 0x29, 0xab, 0x62, 0x59, 0xfb, 0x61, 0x3c, 0xa8, 0xce, 0xc1, 0xc1, 0xec, 0x96, 0x2c, 0x51, 0x5d, 0xf7, 0xd7, 0xc4, 0xa7, 0x88, 0x15, 0xad, 0x33, 0xfd, 0x04, 0xcc, 0xf9, 0xfc, 0x70, 0xac, 0xcb, 0x29, 0x64, 0x10, 0x3f, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3012 = { .name = "xdh_wei448_3012", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3012_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3012_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3012_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3012_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 429 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3013 for XDH, tcId is 430 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3013_peerpubkey[] = { 0x5f, 0xa4, 0x8c, 0x35, 0x57, 0x40, 0xdd, 0xee, 0xe1, 0x54, 0x2f, 0x43, 0xde, 0x26, 0xdf, 0xbf, 0x1d, 0xd8, 0x92, 0xbc, 0x2c, 0xbe, 0x21, 0x12, 0x42, 0xfd, 0x2f, 0x4f, 0xa9, 0x3f, 0xc2, 0xf8, 0x60, 0x5d, 0xd8, 0xfc, 0x88, 0xba, 0xa6, 0xa2, 0x1c, 0xae, 0xae, 0xdb, 0x99, 0xe6, 0x0c, 0x78, 0x74, 0x80, 0xcb, 0xea, 0x8e, 0x7e, 0x6f, 0x0e, }; static const unsigned char xdh_wei448_3013_ourpubkey[] = { 0x36, 0x2f, 0xd2, 0x3c, 0xf5, 0xc5, 0xb2, 0xff, 0xf3, 0x1f, 0xe2, 0xdc, 0x4e, 0x87, 0xc1, 0xb3, 0x1e, 0x68, 0x72, 0x96, 0x33, 0xf7, 0x91, 0x50, 0x37, 0xd2, 0x10, 0xa1, 0xb2, 0xaa, 0x04, 0x57, 0x9e, 0xaa, 0x4b, 0x80, 0xe4, 0x49, 0x0c, 0x3d, 0x7a, 0x73, 0x35, 0xbe, 0xfa, 0xca, 0x3d, 0x94, 0x98, 0x11, 0x0c, 0x21, 0x4b, 0x9a, 0x13, 0xb0, }; static const unsigned char xdh_wei448_3013_privkey[] = { 0xa4, 0xa9, 0xb6, 0xc6, 0x71, 0xcc, 0xca, 0xbf, 0x86, 0xd4, 0xd7, 0x50, 0xf6, 0x2a, 0xfc, 0xdd, 0x9e, 0x7c, 0xd5, 0x3d, 0x99, 0xd7, 0x8a, 0x5b, 0x44, 0x81, 0xc3, 0xef, 0xbd, 0xdf, 0xca, 0xac, 0x42, 0x33, 0xfc, 0x49, 0xab, 0x2e, 0x50, 0x3d, 0x58, 0x18, 0x90, 0xe6, 0x3b, 0x60, 0x50, 0x10, 0xd8, 0x7f, 0x41, 0xf9, 0x08, 0x25, 0xed, 0x88, }; static const unsigned char xdh_wei448_3013_sharedsecret[] = { 0xea, 0xcc, 0xe9, 0xab, 0xd1, 0xf1, 0x53, 0x94, 0xf5, 0xcd, 0xa8, 0x84, 0xc4, 0x1e, 0xed, 0xf6, 0x38, 0xfc, 0xe5, 0x54, 0xab, 0xf1, 0x5f, 0x19, 0x41, 0x14, 0x6a, 0x6a, 0xbb, 0x38, 0x1e, 0x18, 0x6f, 0x3d, 0xe8, 0x16, 0xd9, 0xf4, 0x4a, 0x66, 0x88, 0x6e, 0x6c, 0xab, 0xf2, 0xd4, 0xe2, 0x2d, 0xbd, 0xb4, 0xfa, 0xa2, 0x18, 0x4a, 0xa4, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_3013 = { .name = "xdh_wei448_3013", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3013_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3013_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3013_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3013_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 430 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3014 for XDH, tcId is 431 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3014_peerpubkey[] = { 0xe7, 0x17, 0x0c, 0x9d, 0xae, 0xd8, 0xb8, 0x4c, 0x22, 0x82, 0xf0, 0x06, 0xb3, 0xd2, 0x8c, 0x10, 0xb4, 0x5b, 0x5c, 0x1b, 0xd2, 0x39, 0x78, 0xb2, 0x34, 0x83, 0x5b, 0x21, 0xe5, 0xe0, 0x1b, 0x52, 0xb8, 0x92, 0xbb, 0x19, 0x97, 0x73, 0xea, 0xff, 0x77, 0x03, 0x66, 0xc3, 0xb2, 0x6a, 0xd1, 0x67, 0x4a, 0xcb, 0x01, 0x1f, 0x52, 0x02, 0x81, 0x11, }; static const unsigned char xdh_wei448_3014_ourpubkey[] = { 0x0f, 0x5b, 0x03, 0x06, 0x28, 0x38, 0x78, 0x6f, 0xdb, 0x22, 0x4d, 0x81, 0x0e, 0x3c, 0xca, 0xdc, 0xa5, 0x8a, 0x93, 0x06, 0x21, 0xa2, 0xff, 0x9a, 0x46, 0xad, 0x3f, 0xc1, 0x89, 0x44, 0x87, 0xb5, 0xd7, 0x81, 0xa6, 0xa8, 0xda, 0x70, 0xf8, 0xa9, 0xf7, 0xa5, 0xd7, 0x38, 0xdf, 0xbc, 0xda, 0xb7, 0x57, 0x81, 0xb3, 0x4b, 0xbf, 0x9c, 0x21, 0x56, }; static const unsigned char xdh_wei448_3014_privkey[] = { 0xa4, 0x99, 0x7a, 0x79, 0x78, 0x07, 0x34, 0x9e, 0xe8, 0xae, 0x58, 0x8e, 0x72, 0x28, 0x86, 0x46, 0x88, 0x88, 0xfa, 0x87, 0x23, 0x6d, 0xcb, 0x58, 0x75, 0xcf, 0x92, 0x66, 0xf0, 0x1b, 0x7c, 0x2e, 0x18, 0x60, 0x1a, 0xdb, 0xb8, 0xef, 0x6a, 0x3a, 0x92, 0xa5, 0x2c, 0x78, 0x84, 0x0f, 0xfd, 0x8f, 0xc2, 0x26, 0xe7, 0x2c, 0xf6, 0x52, 0x28, 0x82, }; static const unsigned char xdh_wei448_3014_sharedsecret[] = { 0x93, 0xd3, 0x83, 0x01, 0xd1, 0xa4, 0x39, 0x66, 0x71, 0xdd, 0x66, 0x4e, 0xfa, 0x08, 0x41, 0x6d, 0x8e, 0xf5, 0x09, 0x4b, 0x40, 0x8f, 0x7d, 0xd9, 0x33, 0x70, 0x83, 0x8b, 0x4f, 0xa6, 0x14, 0x6b, 0x3d, 0xd6, 0xfd, 0x19, 0xcb, 0xfe, 0xbf, 0xee, 0x1b, 0xb6, 0xe6, 0xaa, 0x96, 0x43, 0xa6, 0xb6, 0x8f, 0xc5, 0x83, 0x69, 0x02, 0x9b, 0xe9, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3014 = { .name = "xdh_wei448_3014", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3014_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3014_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3014_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3014_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 431 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3015 for XDH, tcId is 432 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3015_peerpubkey[] = { 0xd7, 0x41, 0xf0, 0x5b, 0x91, 0xf7, 0xbf, 0xe5, 0x15, 0x4f, 0x58, 0xea, 0x7c, 0x7f, 0x9a, 0xa1, 0xfe, 0x10, 0xec, 0xdb, 0x5f, 0xbd, 0xed, 0xf4, 0x3b, 0x0f, 0x9f, 0x26, 0x0b, 0xef, 0x62, 0x0a, 0x02, 0xc3, 0xc6, 0x5e, 0x51, 0x07, 0x95, 0x47, 0x17, 0xbf, 0x99, 0xb4, 0x9f, 0x4a, 0xaf, 0xe2, 0x2e, 0x5f, 0xee, 0x26, 0xa1, 0xa7, 0xef, 0x23, }; static const unsigned char xdh_wei448_3015_ourpubkey[] = { 0xb0, 0x93, 0x8e, 0x76, 0x54, 0xea, 0xf5, 0xbc, 0x64, 0x8c, 0xdd, 0x8a, 0x46, 0xc0, 0xd2, 0x12, 0xa0, 0x80, 0x6e, 0x13, 0x09, 0x16, 0xac, 0x54, 0x2e, 0xc4, 0x37, 0x14, 0x0d, 0xe3, 0xb4, 0x28, 0xc8, 0x6c, 0x44, 0x7a, 0xca, 0xa0, 0x3e, 0xd4, 0x81, 0xc6, 0xd2, 0xb5, 0xf4, 0xbe, 0x96, 0x38, 0x87, 0x22, 0xf0, 0xe3, 0x2f, 0x43, 0xf8, 0x00, }; static const unsigned char xdh_wei448_3015_privkey[] = { 0xe0, 0x1f, 0xe2, 0x6e, 0x43, 0x75, 0xd4, 0xf6, 0x9b, 0x32, 0x09, 0xdd, 0x68, 0x81, 0xc0, 0xd4, 0xf0, 0x1f, 0xb7, 0x72, 0x81, 0xb9, 0xb6, 0xec, 0xc3, 0x5e, 0x79, 0x80, 0x54, 0x2a, 0x10, 0xda, 0xf8, 0x38, 0xba, 0x6c, 0xd4, 0xdb, 0xa6, 0x22, 0x54, 0xab, 0xba, 0x0e, 0xd4, 0x48, 0x33, 0x79, 0x83, 0x8a, 0x0a, 0xd7, 0x35, 0x37, 0xeb, 0x86, }; static const unsigned char xdh_wei448_3015_sharedsecret[] = { 0xd0, 0x62, 0x3e, 0x44, 0x77, 0x00, 0x86, 0x6d, 0xe7, 0x68, 0x78, 0x26, 0xa8, 0xa7, 0x0b, 0xc1, 0xf1, 0x5f, 0xb8, 0x42, 0x61, 0xa2, 0x7f, 0x64, 0x0a, 0xd0, 0x3e, 0x77, 0x8c, 0x50, 0x7b, 0xc2, 0x54, 0xe0, 0x50, 0x04, 0xa0, 0x0a, 0xb2, 0xef, 0x49, 0xeb, 0x7d, 0x0c, 0x91, 0x02, 0xc6, 0x40, 0x0f, 0x67, 0x7f, 0x45, 0x25, 0x04, 0xec, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3015 = { .name = "xdh_wei448_3015", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3015_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3015_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3015_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3015_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 432 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3016 for XDH, tcId is 433 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3016_peerpubkey[] = { 0x33, 0x7a, 0x44, 0xd3, 0xb0, 0x72, 0xad, 0x2a, 0x41, 0xdd, 0x41, 0x92, 0xca, 0x2f, 0xd8, 0x61, 0xaf, 0x53, 0xef, 0xd0, 0x80, 0xd0, 0xee, 0xbf, 0xca, 0xc3, 0xc6, 0x6c, 0xc9, 0x9b, 0x84, 0xbe, 0xa3, 0x36, 0xec, 0xef, 0xdd, 0xf5, 0x5e, 0x6b, 0xec, 0x33, 0x7d, 0xa3, 0x34, 0xb8, 0xeb, 0xe3, 0x8b, 0x4c, 0x39, 0x46, 0x66, 0xd2, 0xaa, 0x56, }; static const unsigned char xdh_wei448_3016_ourpubkey[] = { 0x2d, 0xbf, 0x97, 0xa8, 0x10, 0xd1, 0x15, 0x1a, 0xff, 0x80, 0x8e, 0xd0, 0x1b, 0x9d, 0x5b, 0xec, 0x58, 0x33, 0x27, 0x57, 0x54, 0x14, 0x49, 0x44, 0xca, 0x08, 0x1b, 0xcc, 0x4f, 0x35, 0x71, 0xa7, 0xac, 0xcf, 0x1a, 0x2b, 0x50, 0x08, 0x5e, 0x26, 0x52, 0x47, 0xe6, 0xb0, 0xc8, 0x33, 0x93, 0xd3, 0xb8, 0xcc, 0xed, 0x93, 0xa6, 0x8b, 0x0c, 0x95, }; static const unsigned char xdh_wei448_3016_privkey[] = { 0xa0, 0x4c, 0x53, 0xb1, 0x52, 0xe8, 0xfd, 0xe1, 0x9a, 0x07, 0x96, 0xd0, 0x56, 0x75, 0x9e, 0x13, 0x48, 0xac, 0xd4, 0x3e, 0xfe, 0x3f, 0x55, 0xb1, 0xfb, 0x38, 0xd6, 0xc6, 0xd5, 0x07, 0x21, 0x1e, 0xe6, 0x64, 0x27, 0x14, 0xb3, 0x23, 0x4e, 0x6e, 0x2d, 0xbb, 0x36, 0xff, 0xb5, 0xd0, 0x2d, 0xa8, 0xa7, 0xc8, 0x01, 0x26, 0x58, 0xff, 0xae, 0x89, }; static const unsigned char xdh_wei448_3016_sharedsecret[] = { 0x6c, 0xf3, 0xf4, 0xc8, 0x9b, 0xbc, 0xdd, 0x24, 0x99, 0x41, 0x38, 0x2a, 0x6d, 0x06, 0xaf, 0xc4, 0x47, 0x5c, 0xa7, 0x2c, 0x22, 0x8d, 0x9d, 0x3c, 0xc4, 0x72, 0x1c, 0xc9, 0xe6, 0x3d, 0x94, 0x48, 0xaf, 0x90, 0x01, 0x3b, 0x4d, 0x83, 0x1a, 0x19, 0x27, 0xbe, 0x13, 0xa2, 0x50, 0x20, 0xe7, 0x25, 0xe7, 0xbe, 0xb9, 0x45, 0x50, 0xef, 0xbe, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_3016 = { .name = "xdh_wei448_3016", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3016_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3016_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3016_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3016_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 433 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3017 for XDH, tcId is 434 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3017_peerpubkey[] = { 0x13, 0xde, 0x45, 0x94, 0xaf, 0xab, 0xeb, 0xbf, 0xff, 0x7c, 0x6a, 0xd2, 0x4d, 0x9e, 0x36, 0xdb, 0x41, 0x65, 0x0a, 0x66, 0xce, 0xed, 0x76, 0x63, 0xc4, 0x4a, 0x9e, 0xe3, 0x4f, 0x36, 0x04, 0xe8, 0xd6, 0xc4, 0x5b, 0xcc, 0xaa, 0xee, 0xcb, 0xa8, 0x88, 0x42, 0x44, 0xd2, 0xe7, 0x17, 0x60, 0xaf, 0xfc, 0x57, 0xe3, 0xe5, 0x1a, 0xe7, 0x75, 0x71, }; static const unsigned char xdh_wei448_3017_ourpubkey[] = { 0xf7, 0x5f, 0xe5, 0xbb, 0x10, 0x00, 0xaf, 0xfd, 0x03, 0x5a, 0x8f, 0x50, 0xdf, 0x5d, 0xa9, 0xf7, 0x51, 0x57, 0x46, 0x1d, 0x1a, 0x6f, 0x39, 0xdd, 0xab, 0x0a, 0x47, 0xa9, 0x79, 0x2c, 0x69, 0xdc, 0x8c, 0x7a, 0x92, 0xba, 0x68, 0x2a, 0x41, 0x9c, 0x5c, 0x77, 0xb1, 0xa6, 0xe5, 0x1c, 0x93, 0xb4, 0x5c, 0x67, 0x88, 0x2f, 0xdb, 0x3a, 0x74, 0x18, }; static const unsigned char xdh_wei448_3017_privkey[] = { 0xa4, 0x62, 0xce, 0xc9, 0x36, 0x92, 0x33, 0xf2, 0xaa, 0x18, 0xdb, 0x8e, 0x05, 0x9b, 0x5b, 0xe1, 0x97, 0x19, 0xbd, 0x3f, 0x8e, 0x75, 0x28, 0x81, 0x99, 0x17, 0xa9, 0x6a, 0xbe, 0xc1, 0x30, 0xa4, 0xca, 0xbb, 0xd5, 0x9a, 0xb3, 0x85, 0xbb, 0xd8, 0x8a, 0xb7, 0x25, 0xed, 0x1c, 0x2d, 0x01, 0x1e, 0x9d, 0x33, 0x1d, 0x75, 0x04, 0xd6, 0x0e, 0x8b, }; static const unsigned char xdh_wei448_3017_sharedsecret[] = { 0xec, 0xcf, 0x64, 0x2c, 0x29, 0xf9, 0x48, 0xbb, 0x35, 0x00, 0x9e, 0x6a, 0xc2, 0x60, 0x37, 0x38, 0x81, 0x82, 0xd1, 0xac, 0x54, 0xa1, 0xdc, 0xf9, 0x70, 0xea, 0xd2, 0xbe, 0xae, 0xcc, 0x71, 0x4a, 0xab, 0xf6, 0x4b, 0x6f, 0x0d, 0x4f, 0x34, 0xc7, 0xbc, 0xe6, 0xb1, 0xe0, 0x73, 0x19, 0x98, 0x4f, 0x9f, 0x15, 0x32, 0x6d, 0xf5, 0x76, 0x80, 0x8b, }; static const wycheproof_xdh_test xdh_wei448_3017 = { .name = "xdh_wei448_3017", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3017_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3017_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3017_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3017_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 434 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3018 for XDH, tcId is 435 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3018_peerpubkey[] = { 0x78, 0x49, 0x8b, 0xd7, 0x7e, 0x19, 0xd5, 0xc0, 0x3f, 0xe0, 0x9f, 0xc9, 0x92, 0x29, 0xb1, 0xa8, 0x17, 0xf7, 0x32, 0x60, 0x21, 0xe2, 0xe0, 0x7b, 0xc0, 0x91, 0x7d, 0x54, 0x79, 0x84, 0x81, 0x13, 0xe2, 0x30, 0x7e, 0x50, 0xbc, 0xcf, 0x90, 0x4a, 0x50, 0x23, 0xab, 0xb9, 0xbe, 0x03, 0x86, 0xa0, 0x18, 0xeb, 0x50, 0xbc, 0xd9, 0x9b, 0x7d, 0x93, }; static const unsigned char xdh_wei448_3018_ourpubkey[] = { 0xc1, 0x96, 0x10, 0x88, 0xce, 0x86, 0x74, 0x08, 0xd8, 0xb8, 0xd4, 0x58, 0x97, 0x69, 0x01, 0x95, 0xd0, 0xea, 0x8d, 0xdd, 0x7f, 0xe0, 0xfa, 0xe6, 0x73, 0x09, 0xee, 0xf7, 0xa9, 0xdf, 0x6f, 0xa5, 0x23, 0xbf, 0xf0, 0x79, 0x1c, 0x58, 0x48, 0xe0, 0xe6, 0x18, 0xe4, 0x81, 0xac, 0xa4, 0xf6, 0x0a, 0x07, 0xaf, 0xbe, 0xbe, 0xae, 0x4e, 0xca, 0xe6, }; static const unsigned char xdh_wei448_3018_privkey[] = { 0x74, 0xde, 0xdb, 0x25, 0xf4, 0x9d, 0xe2, 0x23, 0x65, 0x68, 0x49, 0x20, 0x08, 0xbd, 0x6c, 0xc8, 0x75, 0x5a, 0xeb, 0x73, 0x03, 0xe2, 0x40, 0xf0, 0xac, 0xc8, 0xa5, 0x99, 0x99, 0xdc, 0x94, 0x71, 0x7a, 0xe3, 0xfb, 0x4d, 0x04, 0x52, 0xf0, 0x82, 0x78, 0x4e, 0x89, 0x5b, 0xd3, 0x1b, 0xdf, 0xbd, 0xb6, 0xe7, 0x19, 0x55, 0xaf, 0x31, 0xe4, 0x83, }; static const unsigned char xdh_wei448_3018_sharedsecret[] = { 0x64, 0x16, 0xc4, 0x78, 0xb8, 0x3a, 0xba, 0x72, 0xde, 0xdc, 0xf7, 0xcd, 0xf7, 0x58, 0xf2, 0xa2, 0x19, 0xb0, 0x85, 0x60, 0x10, 0x85, 0x9a, 0xe9, 0x07, 0xfd, 0xbb, 0x06, 0xdf, 0xb2, 0xfe, 0x93, 0x63, 0x7c, 0xe1, 0x4b, 0xa1, 0x2c, 0x40, 0x75, 0x59, 0x1e, 0x3a, 0xa4, 0x39, 0xe9, 0x83, 0x5e, 0xe6, 0x53, 0x02, 0xca, 0x72, 0x26, 0xbc, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3018 = { .name = "xdh_wei448_3018", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3018_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3018_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3018_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3018_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 435 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3019 for XDH, tcId is 436 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3019_peerpubkey[] = { 0xa1, 0x12, 0x9e, 0x2b, 0xa4, 0xe8, 0xe5, 0x77, 0xf2, 0x3f, 0x09, 0x9b, 0x99, 0x02, 0xc8, 0x3e, 0x3a, 0xb9, 0x07, 0xf5, 0x98, 0x51, 0x11, 0xf9, 0x2f, 0x1d, 0x66, 0x8f, 0x1c, 0x0f, 0x53, 0x4e, 0x00, 0x22, 0x8b, 0xbc, 0xd8, 0xf3, 0x12, 0xbf, 0x46, 0xd7, 0xe3, 0x98, 0x9c, 0x9d, 0xe6, 0x07, 0xe4, 0x98, 0x07, 0x94, 0x34, 0xa5, 0x90, 0xc8, }; static const unsigned char xdh_wei448_3019_ourpubkey[] = { 0x01, 0x4f, 0xf0, 0x5e, 0x85, 0xe6, 0x50, 0x47, 0xd6, 0x40, 0x7e, 0x28, 0xdf, 0x41, 0x0a, 0x1a, 0x79, 0x1b, 0x86, 0xc5, 0x69, 0x32, 0xe9, 0x59, 0x1b, 0xa3, 0x9f, 0xdb, 0x45, 0x9c, 0xf8, 0x98, 0x5b, 0xe8, 0x30, 0x83, 0x7d, 0xa0, 0x5a, 0xa3, 0xfd, 0x26, 0xf0, 0x80, 0xdf, 0x12, 0xc9, 0xa7, 0xa1, 0xfd, 0x64, 0x55, 0x1e, 0xa4, 0xfb, 0x3a, }; static const unsigned char xdh_wei448_3019_privkey[] = { 0x1c, 0xd9, 0xf8, 0x5a, 0x2e, 0x93, 0x13, 0xdf, 0xaf, 0xa6, 0xe8, 0xcc, 0xb4, 0x5a, 0xe2, 0x6a, 0x51, 0x28, 0x8c, 0x39, 0xbd, 0xc4, 0xa0, 0xde, 0x50, 0xc7, 0x57, 0x4c, 0x7d, 0xc5, 0x0c, 0xcb, 0xb0, 0x68, 0x3d, 0xc4, 0x0c, 0x03, 0x6e, 0xbb, 0x83, 0x3b, 0x3b, 0x6d, 0x82, 0xdd, 0xfb, 0x18, 0x00, 0x64, 0x78, 0xfe, 0xcf, 0x2d, 0x98, 0x82, }; static const unsigned char xdh_wei448_3019_sharedsecret[] = { 0x99, 0x64, 0xf1, 0xfa, 0x7b, 0x34, 0xeb, 0x88, 0x89, 0xe8, 0xda, 0x93, 0xa1, 0x6a, 0x3d, 0x35, 0x45, 0xfa, 0xca, 0xa0, 0x38, 0xba, 0x15, 0x20, 0x93, 0xe2, 0x22, 0x01, 0x1c, 0x1c, 0xb0, 0xa9, 0x48, 0x7c, 0xca, 0x08, 0xe2, 0xa8, 0xe9, 0x3f, 0x44, 0x0e, 0x4c, 0x38, 0x3e, 0xb8, 0xe2, 0x6c, 0xf2, 0x5a, 0x22, 0xad, 0x35, 0x8b, 0xc6, 0xae, }; static const wycheproof_xdh_test xdh_wei448_3019 = { .name = "xdh_wei448_3019", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3019_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3019_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3019_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3019_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 436 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3020 for XDH, tcId is 437 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3020_peerpubkey[] = { 0xc5, 0x0e, 0x7e, 0x03, 0xc7, 0xb6, 0xbd, 0xaf, 0x94, 0x9c, 0xfa, 0x1d, 0x16, 0x76, 0xa6, 0x32, 0x15, 0x08, 0xa4, 0x46, 0xf3, 0xee, 0x24, 0x6d, 0x78, 0x1b, 0xac, 0x57, 0x25, 0xd9, 0x31, 0xe8, 0xf0, 0xb0, 0x0a, 0x78, 0x0a, 0xba, 0xe0, 0x0b, 0x31, 0x3e, 0x66, 0xe6, 0x17, 0x0f, 0x21, 0xf3, 0xbd, 0x01, 0xb0, 0x86, 0x51, 0xd5, 0x8d, 0xe8, }; static const unsigned char xdh_wei448_3020_ourpubkey[] = { 0xb2, 0xaf, 0x88, 0x3d, 0x9b, 0x7f, 0x70, 0x43, 0x87, 0xdc, 0x06, 0x29, 0xcd, 0xda, 0xee, 0x93, 0x28, 0x32, 0x6b, 0xcc, 0x7c, 0xe8, 0xde, 0x1c, 0x23, 0x49, 0x3e, 0xed, 0x0d, 0x88, 0x03, 0x34, 0x92, 0x85, 0xc8, 0xa3, 0x6f, 0x7a, 0x21, 0xae, 0x72, 0xe9, 0xfa, 0x03, 0x87, 0xb8, 0x7a, 0x8c, 0x4a, 0xb1, 0xc6, 0x0f, 0x4d, 0x00, 0x7d, 0x5e, }; static const unsigned char xdh_wei448_3020_privkey[] = { 0x3c, 0xbb, 0x83, 0x47, 0x73, 0x92, 0x93, 0xe9, 0x9b, 0x8d, 0xa8, 0x9a, 0xc2, 0xe5, 0xa6, 0x77, 0xc7, 0x2a, 0x02, 0x21, 0x78, 0xef, 0xc9, 0x81, 0x49, 0x41, 0xb8, 0x99, 0xaf, 0x28, 0xe7, 0xa1, 0xdf, 0x9a, 0xed, 0xc7, 0x0b, 0x3e, 0xc8, 0xf5, 0xac, 0x2a, 0xd4, 0xaf, 0x9c, 0x53, 0xd5, 0x2a, 0xa5, 0xaa, 0xd8, 0xf1, 0x23, 0x46, 0xd1, 0x8e, }; static const unsigned char xdh_wei448_3020_sharedsecret[] = { 0x6d, 0x99, 0x2d, 0x27, 0x53, 0xe4, 0xac, 0xcd, 0x47, 0x8b, 0x92, 0x5e, 0xc3, 0x9d, 0x73, 0x49, 0x30, 0x5a, 0x49, 0x88, 0x9b, 0xdc, 0x7f, 0x25, 0xec, 0xf3, 0xb0, 0xa4, 0xb4, 0xc2, 0xa0, 0x3a, 0xc6, 0x2f, 0x60, 0x53, 0x3b, 0xa6, 0xe3, 0x97, 0x21, 0x71, 0x99, 0xba, 0xbf, 0x69, 0x5e, 0xea, 0x42, 0x46, 0x1f, 0x24, 0x6e, 0x9c, 0x75, 0xda, }; static const wycheproof_xdh_test xdh_wei448_3020 = { .name = "xdh_wei448_3020", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3020_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3020_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3020_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3020_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 437 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3021 for XDH, tcId is 438 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3021_peerpubkey[] = { 0xe5, 0x11, 0x3d, 0x1e, 0x12, 0x9f, 0x26, 0x1b, 0xc9, 0x1e, 0x7a, 0x40, 0x9b, 0x73, 0xfe, 0x0c, 0x79, 0xf5, 0x61, 0xfd, 0xab, 0xa0, 0x9b, 0xe3, 0xb4, 0x5a, 0xa3, 0x99, 0x9e, 0xa6, 0x17, 0x4c, 0x78, 0x37, 0x60, 0x6e, 0xd9, 0xc2, 0xfb, 0x4c, 0x36, 0xa6, 0x13, 0xf7, 0x97, 0xdc, 0x76, 0x75, 0x22, 0x87, 0xbb, 0x58, 0xa9, 0xf1, 0xcb, 0x15, }; static const unsigned char xdh_wei448_3021_ourpubkey[] = { 0x5e, 0x1f, 0x57, 0xf7, 0xde, 0x75, 0x13, 0x3f, 0xd1, 0xee, 0x93, 0x95, 0x91, 0x3e, 0x38, 0x26, 0x74, 0xce, 0x70, 0xc8, 0x27, 0x95, 0x9e, 0xa9, 0x45, 0x33, 0x76, 0x1d, 0xa5, 0x70, 0xaa, 0x4c, 0xa0, 0x14, 0x8b, 0x1a, 0xb0, 0x93, 0x97, 0x51, 0xa6, 0x0c, 0x92, 0xe8, 0x79, 0xc8, 0x9e, 0x46, 0x2f, 0xd0, 0x81, 0x33, 0x55, 0x7a, 0xe2, 0x1e, }; static const unsigned char xdh_wei448_3021_privkey[] = { 0x0c, 0x94, 0x26, 0xcb, 0x52, 0x09, 0xdf, 0xd0, 0x7f, 0xd3, 0x46, 0x56, 0xf1, 0x45, 0x6e, 0x6b, 0xaf, 0xa1, 0x1c, 0xad, 0x58, 0xa7, 0x62, 0xea, 0x22, 0x1a, 0x16, 0xc1, 0xba, 0x8b, 0x9d, 0x24, 0x77, 0x74, 0x27, 0x44, 0xa0, 0x63, 0x62, 0xb4, 0x06, 0x97, 0x85, 0x43, 0x05, 0xd6, 0x72, 0xd7, 0xdb, 0xbb, 0xd4, 0x84, 0x2b, 0xec, 0xa5, 0x82, }; static const unsigned char xdh_wei448_3021_sharedsecret[] = { 0xa7, 0x5d, 0x72, 0x6b, 0x54, 0xce, 0x76, 0xe9, 0xf1, 0x5d, 0x4a, 0x9f, 0x52, 0x11, 0xb6, 0x24, 0x5d, 0x68, 0xc1, 0x4c, 0xf4, 0x84, 0x6f, 0xe4, 0x70, 0xcb, 0x44, 0xb9, 0x5a, 0xf6, 0x80, 0x96, 0x57, 0x3f, 0x0d, 0x96, 0xd4, 0xfc, 0xf3, 0x0b, 0x7e, 0x19, 0x84, 0x18, 0x8f, 0xff, 0x0f, 0x3a, 0xb5, 0xc1, 0x10, 0x50, 0x0e, 0xee, 0xc4, 0xe0, }; static const wycheproof_xdh_test xdh_wei448_3021 = { .name = "xdh_wei448_3021", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3021_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3021_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3021_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3021_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 438 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3022 for XDH, tcId is 439 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3022_peerpubkey[] = { 0x56, 0x15, 0x12, 0x2b, 0x2f, 0xbb, 0x50, 0x62, 0x04, 0x09, 0x18, 0x65, 0x84, 0x1b, 0x5d, 0x28, 0xd9, 0x07, 0x55, 0x77, 0xb4, 0xaf, 0xa3, 0x38, 0xb4, 0x3f, 0xc6, 0x57, 0x9e, 0xca, 0x54, 0x76, 0xe3, 0x56, 0x78, 0x99, 0xba, 0x6b, 0x33, 0x29, 0xb4, 0x57, 0xfd, 0x46, 0xa4, 0xf3, 0xca, 0x23, 0x9e, 0x18, 0x5a, 0x73, 0x56, 0xf0, 0x68, 0x37, }; static const unsigned char xdh_wei448_3022_ourpubkey[] = { 0xb6, 0x7e, 0x61, 0x13, 0x37, 0x2c, 0x16, 0x74, 0x6e, 0x2a, 0x6b, 0xa2, 0x23, 0x8f, 0x4d, 0x05, 0xd7, 0x7c, 0x4a, 0x52, 0x1a, 0x88, 0xd8, 0x50, 0x90, 0xca, 0x2f, 0x84, 0x24, 0x41, 0x96, 0x9e, 0xd5, 0xbb, 0x81, 0x4f, 0xc2, 0xbc, 0x90, 0xc1, 0x8a, 0x5d, 0x2a, 0xf9, 0x5a, 0xb3, 0x0a, 0xb6, 0x72, 0x50, 0x33, 0x0c, 0x95, 0xd8, 0x93, 0x99, }; static const unsigned char xdh_wei448_3022_privkey[] = { 0x64, 0x90, 0x6d, 0x71, 0x3a, 0x86, 0x15, 0x12, 0xe1, 0x16, 0x31, 0xe1, 0x73, 0xa0, 0xae, 0xd2, 0xfd, 0x8b, 0x54, 0xb1, 0x39, 0x4e, 0x89, 0xb1, 0xd8, 0xcd, 0x08, 0x4e, 0xe6, 0xba, 0xcf, 0x81, 0xea, 0xfa, 0xed, 0x45, 0x12, 0x5d, 0xa4, 0xd0, 0xc5, 0xe2, 0xfb, 0xd8, 0xe3, 0x51, 0x8e, 0x66, 0x31, 0xae, 0xc9, 0x8d, 0xba, 0x41, 0x87, 0x83, }; static const unsigned char xdh_wei448_3022_sharedsecret[] = { 0xcc, 0x92, 0x97, 0xac, 0x7b, 0x8f, 0x07, 0xcf, 0x15, 0x4e, 0xea, 0xd3, 0xff, 0x95, 0xf0, 0xbe, 0x8e, 0xe2, 0xee, 0xea, 0xae, 0xc1, 0xd2, 0xaf, 0x9b, 0xb7, 0x70, 0xc5, 0x2a, 0x33, 0xad, 0x86, 0x5b, 0x9a, 0x18, 0x92, 0x6f, 0xf2, 0xce, 0x68, 0x9f, 0xf5, 0x8e, 0x2f, 0xb4, 0x0e, 0x0c, 0xfd, 0x1c, 0xd8, 0x68, 0xcd, 0xec, 0x77, 0x6e, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3022 = { .name = "xdh_wei448_3022", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3022_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3022_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3022_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3022_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 439 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3023 for XDH, tcId is 440 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3023_peerpubkey[] = { 0x73, 0x02, 0x41, 0x13, 0x7d, 0x5a, 0x3e, 0x0a, 0x14, 0x7a, 0xb9, 0x92, 0xae, 0x96, 0xb0, 0x75, 0x6c, 0x81, 0x0d, 0x30, 0xa1, 0x03, 0xd2, 0x09, 0xda, 0x7a, 0xfe, 0x10, 0xd8, 0x0b, 0xe2, 0x72, 0x93, 0x7b, 0x0b, 0xe3, 0x70, 0xf0, 0xff, 0xd3, 0x8c, 0xca, 0x62, 0x56, 0x90, 0xa1, 0xa8, 0xe7, 0x9b, 0x95, 0xd4, 0x41, 0x7e, 0x8d, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_3023_ourpubkey[] = { 0x9d, 0xec, 0xf0, 0xd8, 0x80, 0x39, 0xa9, 0xc3, 0xe2, 0x99, 0xee, 0xeb, 0x05, 0x97, 0xb5, 0xcc, 0x3a, 0xf2, 0xa7, 0xdb, 0x7e, 0x8f, 0xf8, 0xcf, 0xab, 0x48, 0xc1, 0x29, 0x7e, 0xa0, 0x92, 0x00, 0x93, 0x51, 0x0f, 0xdd, 0x5f, 0xda, 0x4c, 0x2c, 0xd3, 0xfd, 0x22, 0x9a, 0xd8, 0x3f, 0x47, 0x55, 0x6a, 0x0f, 0x69, 0x2e, 0x1a, 0xda, 0x44, 0xc5, }; static const unsigned char xdh_wei448_3023_privkey[] = { 0x84, 0x32, 0xc3, 0xe5, 0x95, 0x02, 0xa3, 0x95, 0xab, 0x45, 0x04, 0x9d, 0x1c, 0x97, 0x89, 0x9b, 0x5d, 0xb6, 0xb1, 0xa3, 0x47, 0x4a, 0x08, 0xc6, 0x78, 0x5a, 0xdb, 0xfe, 0xdd, 0x8c, 0xb1, 0xed, 0xc9, 0x6f, 0x3b, 0xfb, 0xf3, 0xb2, 0xab, 0x9f, 0x38, 0x7f, 0x65, 0x29, 0x6e, 0xf4, 0xab, 0xeb, 0x4a, 0x56, 0x1a, 0x9e, 0xc6, 0x8a, 0xdb, 0x8b, }; static const unsigned char xdh_wei448_3023_sharedsecret[] = { 0x8d, 0x9d, 0x14, 0x03, 0x63, 0xa7, 0x9d, 0xc8, 0x12, 0x6a, 0xd4, 0xd3, 0xe7, 0x52, 0x64, 0xa7, 0x69, 0xfd, 0x0d, 0x08, 0x4b, 0x91, 0x0b, 0x9e, 0x1e, 0x8b, 0x5a, 0xbb, 0x84, 0x9b, 0x69, 0x2b, 0x73, 0xc2, 0xc2, 0xd9, 0x62, 0xc7, 0x55, 0xd0, 0x80, 0x8b, 0x66, 0x8d, 0x24, 0x9a, 0x52, 0xc7, 0xaf, 0x49, 0x5d, 0xd3, 0xe2, 0x9b, 0x2a, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_3023 = { .name = "xdh_wei448_3023", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3023_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3023_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3023_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3023_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 440 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3024 for XDH, tcId is 441 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3024_peerpubkey[] = { 0x56, 0xfb, 0xc7, 0xa4, 0xb2, 0x6d, 0x32, 0xb4, 0x75, 0x65, 0x64, 0xb7, 0xf0, 0x74, 0x25, 0x9c, 0x13, 0x91, 0x0e, 0x57, 0x9f, 0xd6, 0x75, 0x4e, 0xb1, 0x96, 0x26, 0x47, 0xf3, 0x32, 0xbb, 0x1d, 0x92, 0x93, 0x85, 0x4f, 0x1c, 0x30, 0x5b, 0x1c, 0x3a, 0x66, 0xbb, 0x6c, 0x9a, 0x99, 0xc8, 0x98, 0x3e, 0x0f, 0xba, 0xaa, 0x1d, 0x9e, 0x2b, 0xf4, }; static const unsigned char xdh_wei448_3024_ourpubkey[] = { 0x65, 0xd9, 0xd4, 0x3f, 0xd0, 0x1e, 0x25, 0x2d, 0x4b, 0xaa, 0x87, 0x8c, 0xe1, 0x1d, 0x88, 0x97, 0xab, 0x3a, 0xca, 0xb1, 0x70, 0xab, 0x49, 0xfc, 0x90, 0xcf, 0x20, 0xce, 0x18, 0x24, 0x9a, 0xa7, 0x95, 0x82, 0x58, 0x2a, 0x2c, 0xc3, 0x8e, 0x00, 0x55, 0x91, 0x42, 0x58, 0x21, 0x9d, 0x37, 0x12, 0xa2, 0x1f, 0x99, 0x56, 0x5e, 0xf1, 0x6a, 0xf1, }; static const unsigned char xdh_wei448_3024_privkey[] = { 0xd4, 0x07, 0x96, 0x8b, 0x10, 0xd6, 0x95, 0x05, 0x65, 0xe5, 0x6c, 0x71, 0x6d, 0xb5, 0xfb, 0x60, 0xaa, 0xd7, 0x94, 0x27, 0x31, 0x1b, 0xba, 0x84, 0xba, 0x4a, 0xf2, 0x12, 0x8f, 0xff, 0x2f, 0xc8, 0x37, 0x0f, 0x11, 0x44, 0x08, 0x4b, 0xbc, 0x7b, 0x42, 0x0f, 0x84, 0xaf, 0xe8, 0xc3, 0x91, 0x0d, 0xe8, 0x98, 0xb9, 0x76, 0x31, 0x9f, 0x76, 0x89, }; static const unsigned char xdh_wei448_3024_sharedsecret[] = { 0x29, 0x07, 0x44, 0x85, 0xc6, 0x60, 0x20, 0xf8, 0xa2, 0x6e, 0x16, 0xaf, 0xe6, 0x8a, 0xe1, 0x30, 0x65, 0xc1, 0x3e, 0x9d, 0x16, 0x3b, 0x19, 0x79, 0x8e, 0xa9, 0x92, 0xf3, 0x8f, 0x7b, 0xae, 0x87, 0xee, 0xdc, 0xea, 0x21, 0x4b, 0x78, 0x8b, 0x95, 0x12, 0x68, 0x19, 0xa9, 0xf1, 0xe7, 0x11, 0xca, 0x9d, 0x72, 0x58, 0xb5, 0xd5, 0xe6, 0x3e, 0x30, }; static const wycheproof_xdh_test xdh_wei448_3024 = { .name = "xdh_wei448_3024", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3024_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3024_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3024_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3024_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 441 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3025 for XDH, tcId is 442 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3025_peerpubkey[] = { 0x00, 0xdf, 0x4e, 0x75, 0x40, 0xc0, 0xb9, 0xfe, 0xad, 0xfc, 0x21, 0xdf, 0xc5, 0xd9, 0xeb, 0x3a, 0x04, 0xb1, 0xe8, 0x78, 0x39, 0x63, 0x8d, 0x35, 0x0d, 0x51, 0xeb, 0x0d, 0xc4, 0x56, 0x04, 0x90, 0x1d, 0xab, 0x57, 0x82, 0x5e, 0x93, 0x7f, 0x15, 0xd7, 0xfb, 0x80, 0x89, 0xa1, 0x27, 0x87, 0x18, 0xac, 0x00, 0xd2, 0x75, 0x8f, 0xd1, 0xf4, 0x21, }; static const unsigned char xdh_wei448_3025_ourpubkey[] = { 0x25, 0x42, 0xc2, 0x80, 0xa1, 0x82, 0x5b, 0xb4, 0x8e, 0xd0, 0x97, 0x31, 0xcb, 0xcf, 0xc3, 0x68, 0xb4, 0x83, 0xe9, 0xbb, 0xd6, 0xc2, 0x29, 0xff, 0xad, 0xf2, 0x03, 0xab, 0xef, 0x4f, 0x91, 0x7d, 0x1d, 0xc3, 0x12, 0x53, 0x48, 0xe0, 0xd4, 0x2b, 0xcc, 0x39, 0x94, 0x4c, 0xf6, 0x73, 0x6a, 0xd4, 0x63, 0x08, 0xb2, 0xb6, 0xc0, 0x49, 0xf0, 0xd7, }; static const unsigned char xdh_wei448_3025_privkey[] = { 0xd8, 0xb1, 0xca, 0x51, 0xa6, 0xe3, 0x61, 0xd2, 0xa7, 0x1f, 0xa8, 0x4d, 0x49, 0x57, 0xf2, 0xcc, 0xfc, 0x8b, 0xb3, 0x72, 0x32, 0x0c, 0xcf, 0x74, 0xe2, 0x79, 0xf6, 0xef, 0xea, 0x2c, 0xa3, 0x61, 0x37, 0xd4, 0xdf, 0x19, 0x2d, 0x93, 0x27, 0x05, 0xb7, 0xb4, 0xed, 0x2d, 0xee, 0x3c, 0x56, 0x86, 0x03, 0xec, 0x62, 0xc7, 0x7e, 0x4a, 0xf4, 0x85, }; static const unsigned char xdh_wei448_3025_sharedsecret[] = { 0xd9, 0x83, 0x35, 0x3a, 0x16, 0x8b, 0xc2, 0x29, 0xf3, 0xb8, 0x05, 0xc0, 0xe0, 0x36, 0x98, 0x33, 0x6f, 0xea, 0x84, 0xb9, 0x22, 0x12, 0x12, 0x9d, 0xf2, 0x34, 0x40, 0x59, 0xd1, 0x38, 0xff, 0x00, 0x1a, 0x5b, 0xb5, 0x36, 0x85, 0x37, 0x3f, 0x8f, 0x93, 0x79, 0x13, 0x72, 0x16, 0x53, 0x4b, 0x05, 0x57, 0xeb, 0x34, 0x83, 0x36, 0x7d, 0x42, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3025 = { .name = "xdh_wei448_3025", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3025_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3025_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3025_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3025_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 442 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3026 for XDH, tcId is 443 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3026_peerpubkey[] = { 0x5c, 0xba, 0x61, 0x48, 0x14, 0x5e, 0x5c, 0x21, 0x51, 0x77, 0x2d, 0xb6, 0x9d, 0xce, 0x9f, 0x12, 0x3e, 0xc8, 0xcb, 0x0d, 0x4e, 0x42, 0x60, 0x36, 0x15, 0xd1, 0x60, 0xb3, 0xd4, 0xa4, 0xee, 0xab, 0xe5, 0x4b, 0xf0, 0x0f, 0x55, 0x88, 0x3b, 0xc7, 0xc0, 0x09, 0xb9, 0x4d, 0x5f, 0x35, 0x9c, 0xd1, 0xac, 0xd5, 0xea, 0x14, 0x55, 0x74, 0x2e, 0x36, }; static const unsigned char xdh_wei448_3026_ourpubkey[] = { 0xe5, 0xca, 0x08, 0x55, 0xc1, 0x8d, 0xb3, 0x14, 0xb7, 0x16, 0x20, 0x30, 0xd2, 0x9d, 0x25, 0x4f, 0x5b, 0xcf, 0x9a, 0x61, 0x4a, 0x0c, 0xc0, 0x3e, 0x06, 0x91, 0xcf, 0xff, 0x33, 0xe7, 0xea, 0xaf, 0x69, 0x14, 0xe5, 0x75, 0x4f, 0x63, 0xb0, 0xdf, 0x23, 0xdf, 0xa1, 0xdb, 0x3a, 0x3b, 0x6c, 0xba, 0x93, 0xec, 0xcf, 0x69, 0x7a, 0x6f, 0xed, 0x00, }; static const unsigned char xdh_wei448_3026_privkey[] = { 0xf8, 0x54, 0xe8, 0x01, 0x4b, 0xfe, 0x18, 0x70, 0xf5, 0x31, 0xf8, 0x32, 0x00, 0x36, 0x40, 0xe4, 0x43, 0x9a, 0xac, 0x4b, 0xc2, 0x3e, 0x03, 0x92, 0x0f, 0xcd, 0x65, 0x1f, 0xae, 0x12, 0x8d, 0x38, 0xe6, 0xf3, 0x6c, 0x53, 0xb9, 0x1b, 0xa8, 0x29, 0x63, 0x62, 0x3f, 0xed, 0x40, 0x16, 0x15, 0x6b, 0xa5, 0x5f, 0x61, 0xfa, 0xb6, 0x6e, 0xe6, 0x82, }; static const unsigned char xdh_wei448_3026_sharedsecret[] = { 0x3e, 0x46, 0xc5, 0xfa, 0x76, 0xd5, 0x9e, 0x0c, 0xc7, 0x98, 0x25, 0xb4, 0xd3, 0xc4, 0x9d, 0xa0, 0x18, 0x2a, 0xc8, 0xd4, 0x92, 0x50, 0xc1, 0xd9, 0x35, 0x28, 0x92, 0x0e, 0x69, 0xc5, 0x7a, 0xfd, 0x24, 0x5b, 0xa5, 0x2c, 0x11, 0x3a, 0x52, 0xdd, 0x17, 0xd8, 0x13, 0xe4, 0x02, 0x9a, 0x8b, 0x15, 0xba, 0xfc, 0xc7, 0x0b, 0x7f, 0x1c, 0x36, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3026 = { .name = "xdh_wei448_3026", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3026_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3026_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3026_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3026_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 443 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3027 for XDH, tcId is 444 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3027_peerpubkey[] = { 0xf5, 0xff, 0x91, 0xf7, 0xed, 0x21, 0xf4, 0x12, 0xb7, 0x58, 0x99, 0x2d, 0x15, 0x08, 0xfd, 0xdf, 0x2d, 0xdc, 0x47, 0x00, 0xac, 0x4c, 0x9f, 0xd3, 0x51, 0xe2, 0x6d, 0x52, 0x04, 0xe0, 0x7a, 0x6a, 0x5a, 0xf6, 0x72, 0x5d, 0x66, 0x1b, 0x5c, 0x54, 0xfb, 0x26, 0x4b, 0xf7, 0xc2, 0xfa, 0x8f, 0x8e, 0x98, 0xd6, 0x57, 0x9f, 0x22, 0x57, 0x95, 0xad, }; static const unsigned char xdh_wei448_3027_ourpubkey[] = { 0x3c, 0xb6, 0x14, 0xeb, 0x95, 0xf0, 0x8b, 0x30, 0xc5, 0x61, 0xab, 0xb6, 0xb5, 0xe9, 0x40, 0xd3, 0x92, 0xdf, 0xcf, 0x88, 0xc3, 0x9c, 0x88, 0xa5, 0x4e, 0x87, 0x9a, 0x06, 0x8d, 0xe0, 0x12, 0xd8, 0xc9, 0xf1, 0x20, 0x8a, 0x04, 0x27, 0xcd, 0x5c, 0x70, 0x1e, 0x8f, 0x98, 0x94, 0xfc, 0x37, 0xac, 0x8c, 0xc6, 0x62, 0x28, 0x7b, 0x13, 0xbf, 0xae, }; static const unsigned char xdh_wei448_3027_privkey[] = { 0x20, 0x9c, 0xee, 0x11, 0x1f, 0xcf, 0xde, 0x94, 0xbd, 0x33, 0x02, 0x0a, 0xe5, 0x51, 0x5d, 0x62, 0xe0, 0x9c, 0x69, 0x17, 0xe3, 0xe3, 0x0a, 0xfd, 0xc9, 0xa1, 0xba, 0x34, 0x9e, 0x6c, 0xd9, 0x60, 0x9d, 0xdb, 0xc8, 0xa1, 0x84, 0xef, 0xb9, 0x50, 0xce, 0x66, 0x14, 0xb3, 0x12, 0x05, 0x9e, 0xb1, 0x50, 0x87, 0x33, 0xca, 0x84, 0x63, 0x29, 0x84, }; static const unsigned char xdh_wei448_3027_sharedsecret[] = { 0x7f, 0x24, 0xac, 0xbd, 0x29, 0xc0, 0xa2, 0x3a, 0x43, 0x16, 0xa2, 0x91, 0x98, 0xba, 0xfa, 0x8e, 0x91, 0xfd, 0xcd, 0xbd, 0x06, 0x63, 0x9e, 0x55, 0xc4, 0xf3, 0xe7, 0x60, 0x2a, 0xb2, 0x72, 0x2d, 0x75, 0xeb, 0x00, 0x80, 0xf8, 0xc1, 0x1e, 0xfb, 0x11, 0x0f, 0xb9, 0x4f, 0x67, 0x26, 0x5e, 0xb4, 0xe5, 0x6a, 0xe0, 0xd9, 0x91, 0xb1, 0x71, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_3027 = { .name = "xdh_wei448_3027", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3027_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3027_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3027_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3027_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 444 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3028 for XDH, tcId is 445 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3028_peerpubkey[] = { 0xda, 0xc2, 0x84, 0x09, 0x77, 0xf3, 0x98, 0x90, 0xf4, 0xe1, 0x7e, 0xbc, 0x7c, 0x48, 0x36, 0x14, 0x16, 0x7a, 0xc2, 0xc3, 0x7a, 0x55, 0xb0, 0x5b, 0x63, 0x61, 0x81, 0x60, 0x8b, 0xc5, 0x39, 0x36, 0xdf, 0xed, 0x3b, 0x4f, 0x4f, 0x0b, 0x8f, 0xfb, 0x05, 0x0f, 0x2f, 0x18, 0x31, 0x48, 0x51, 0x65, 0x70, 0x9b, 0x80, 0xd8, 0x8a, 0xac, 0x10, 0xc2, }; static const unsigned char xdh_wei448_3028_ourpubkey[] = { 0x80, 0x8c, 0x2b, 0xd4, 0x66, 0x05, 0x98, 0xec, 0x2d, 0xef, 0x3e, 0x2c, 0xe3, 0x43, 0xa5, 0xbf, 0xe0, 0xbc, 0xd3, 0x80, 0x6d, 0x15, 0x76, 0x81, 0x5a, 0x01, 0x71, 0x5e, 0x55, 0xa4, 0x59, 0x1b, 0x61, 0x07, 0x68, 0xc2, 0xd7, 0xba, 0x29, 0x30, 0x18, 0x59, 0x0d, 0x17, 0x51, 0x2e, 0x52, 0x1c, 0x75, 0x1b, 0xfe, 0xf8, 0xd5, 0x28, 0x04, 0xd8, }; static const unsigned char xdh_wei448_3028_privkey[] = { 0xcc, 0x29, 0x03, 0x0d, 0x9e, 0xa5, 0x28, 0x34, 0x11, 0xc7, 0xba, 0xd6, 0xba, 0xed, 0xb4, 0x2e, 0xd3, 0x7e, 0x26, 0xfd, 0x17, 0xd9, 0x62, 0x0a, 0x9b, 0xb4, 0xd4, 0x1b, 0x17, 0x47, 0xc3, 0xfa, 0x56, 0xc0, 0xf5, 0x0d, 0xa7, 0xb5, 0x22, 0x7b, 0xa3, 0xbb, 0x30, 0x33, 0x7c, 0x76, 0x95, 0x88, 0xb4, 0xcb, 0xda, 0x9e, 0x2b, 0xa6, 0xc1, 0x83, }; static const unsigned char xdh_wei448_3028_sharedsecret[] = { 0x82, 0x35, 0x58, 0xfa, 0x43, 0xf9, 0x9f, 0xe6, 0xe0, 0xa5, 0x57, 0x1e, 0x5a, 0xa0, 0x1f, 0x8c, 0xa1, 0xaf, 0xa7, 0x3d, 0x6b, 0x6d, 0xf9, 0xd2, 0xff, 0x81, 0x34, 0x6b, 0x0b, 0xa5, 0x1e, 0xdc, 0x3e, 0x3a, 0x29, 0x27, 0x43, 0x38, 0x90, 0x8b, 0x68, 0xa9, 0xa0, 0x3a, 0xda, 0x44, 0x2b, 0x6a, 0x1e, 0x91, 0x71, 0xb2, 0x6a, 0xbf, 0xf8, 0xc6, }; static const wycheproof_xdh_test xdh_wei448_3028 = { .name = "xdh_wei448_3028", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3028_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3028_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3028_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3028_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 445 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3029 for XDH, tcId is 446 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3029_peerpubkey[] = { 0x27, 0x9a, 0x2d, 0x0a, 0x94, 0x36, 0x01, 0xa5, 0xd4, 0x0f, 0x6c, 0xb5, 0x44, 0xc3, 0x01, 0x34, 0x5b, 0x43, 0xb5, 0x8b, 0xaf, 0x9e, 0x49, 0xf4, 0xde, 0x3c, 0x1d, 0xe2, 0xbb, 0xc1, 0xec, 0x14, 0x26, 0xda, 0xb4, 0x4a, 0xfe, 0xf9, 0x97, 0x99, 0xe4, 0x28, 0x8c, 0x61, 0x51, 0x1f, 0xc4, 0xea, 0x0c, 0x2f, 0xab, 0x22, 0x8e, 0x8c, 0xce, 0x3e, }; static const unsigned char xdh_wei448_3029_ourpubkey[] = { 0xef, 0x37, 0x9e, 0x8f, 0x6f, 0xec, 0x3d, 0x6a, 0xc5, 0xed, 0x3d, 0xbb, 0x30, 0xf5, 0x1f, 0x00, 0x96, 0xc8, 0xd2, 0x7b, 0x7d, 0xbc, 0x9d, 0x3a, 0x27, 0xfe, 0x45, 0x7f, 0x68, 0x07, 0xdf, 0x9d, 0x49, 0x43, 0xac, 0x0a, 0x57, 0x23, 0x19, 0x1d, 0x75, 0x8c, 0xa5, 0x24, 0xbc, 0x8d, 0x9a, 0xc1, 0x1a, 0xb7, 0xd8, 0x3f, 0xae, 0xa1, 0xcd, 0xd5, }; static const unsigned char xdh_wei448_3029_privkey[] = { 0x08, 0x25, 0x01, 0x3a, 0x52, 0x0e, 0x13, 0x50, 0x9d, 0x29, 0x99, 0x7a, 0x5a, 0xa8, 0xfd, 0xe0, 0x0b, 0x77, 0x01, 0x1b, 0x3a, 0x63, 0xa5, 0x0b, 0xbe, 0xfc, 0x5b, 0x54, 0xb1, 0xe3, 0x85, 0x71, 0x98, 0xe8, 0xc9, 0xa8, 0x0f, 0x7b, 0x66, 0x14, 0xcc, 0x11, 0xe0, 0xb8, 0x5b, 0xad, 0x33, 0x7c, 0x1f, 0xe7, 0x4b, 0xf7, 0x31, 0xaf, 0xde, 0x83, }; static const unsigned char xdh_wei448_3029_sharedsecret[] = { 0xec, 0xc8, 0x4b, 0xb8, 0xf2, 0xc0, 0x86, 0x00, 0x02, 0x67, 0xd8, 0x9c, 0x1a, 0x7b, 0x21, 0x1d, 0x54, 0x15, 0x41, 0x47, 0x27, 0x06, 0x95, 0x10, 0x37, 0x50, 0xc9, 0xc1, 0x44, 0x86, 0x1a, 0x1c, 0x24, 0x28, 0xfb, 0x5f, 0x69, 0xcc, 0x2d, 0xd4, 0x9b, 0xe5, 0x7c, 0x41, 0x57, 0xa4, 0x84, 0xa7, 0x7d, 0xac, 0x9b, 0x03, 0x3d, 0xc6, 0x72, 0x81, }; static const wycheproof_xdh_test xdh_wei448_3029 = { .name = "xdh_wei448_3029", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3029_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3029_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3029_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3029_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 446 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3030 for XDH, tcId is 447 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3030_peerpubkey[] = { 0xc2, 0xa6, 0xe4, 0xd8, 0xf4, 0x8a, 0xbc, 0xdd, 0xf9, 0x40, 0xcc, 0x97, 0xaf, 0x3c, 0xf9, 0xd6, 0x34, 0xd2, 0x52, 0x81, 0x41, 0xac, 0xe9, 0xbd, 0x4f, 0xcd, 0x3b, 0xe1, 0x8d, 0xa8, 0xa3, 0x95, 0xe4, 0xaf, 0xcf, 0xbe, 0xb5, 0xc9, 0x81, 0x2b, 0x8a, 0xcf, 0x64, 0x72, 0xc3, 0x69, 0xe5, 0x68, 0x48, 0xb8, 0x78, 0xcf, 0xdf, 0x95, 0xb6, 0x48, }; static const unsigned char xdh_wei448_3030_ourpubkey[] = { 0x44, 0x7c, 0x40, 0x9e, 0x6a, 0x68, 0x97, 0xd5, 0xa0, 0xf3, 0x60, 0x39, 0x27, 0x4b, 0xab, 0x7d, 0x05, 0x91, 0xfe, 0x8f, 0x94, 0x0d, 0xb5, 0x45, 0xd9, 0x9d, 0x50, 0xde, 0x2d, 0xd9, 0x66, 0x1c, 0xcd, 0x8c, 0x37, 0x38, 0xa0, 0x73, 0x80, 0x86, 0x0d, 0x00, 0xb2, 0x10, 0x31, 0xaa, 0xcb, 0x92, 0x68, 0x00, 0x41, 0x21, 0x0a, 0x89, 0xd5, 0xbc, }; static const unsigned char xdh_wei448_3030_privkey[] = { 0x64, 0x28, 0x5a, 0xb9, 0xf4, 0x6a, 0x40, 0xbf, 0xd4, 0x6b, 0x78, 0xd0, 0xad, 0x7f, 0x0e, 0xf3, 0xff, 0xfe, 0x04, 0xf3, 0xb4, 0x26, 0xbf, 0xd4, 0xe0, 0x24, 0x91, 0xe7, 0xa1, 0x3a, 0x25, 0x02, 0x72, 0x03, 0x99, 0x43, 0xa2, 0xb1, 0x04, 0xfd, 0xb8, 0xbf, 0x7b, 0x66, 0xd1, 0xe8, 0x3f, 0x11, 0x2b, 0x72, 0xf1, 0x85, 0x60, 0xd0, 0x67, 0x8d, }; static const unsigned char xdh_wei448_3030_sharedsecret[] = { 0xb3, 0xba, 0x7a, 0x3a, 0x1a, 0x79, 0x10, 0xe0, 0x94, 0x78, 0x57, 0x10, 0x4f, 0xd9, 0x0a, 0x60, 0x9f, 0x5d, 0x04, 0x80, 0x0f, 0x8c, 0x97, 0x12, 0xe6, 0x7d, 0x62, 0x15, 0xd6, 0x5d, 0x08, 0x15, 0x85, 0x8f, 0x91, 0x7c, 0xb4, 0xc9, 0x10, 0xc7, 0x9b, 0x2c, 0xb5, 0xaa, 0x6d, 0x04, 0xcb, 0x6b, 0xe6, 0xb9, 0xf4, 0x2e, 0x9b, 0x18, 0xe4, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3030 = { .name = "xdh_wei448_3030", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3030_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3030_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3030_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3030_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 447 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3031 for XDH, tcId is 448 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3031_peerpubkey[] = { 0xe3, 0x49, 0x56, 0x0c, 0x1a, 0x2c, 0x1f, 0xd2, 0x9e, 0x62, 0x30, 0x91, 0xec, 0x08, 0xc1, 0x49, 0xcf, 0xcc, 0x3c, 0xbd, 0xf8, 0xec, 0x38, 0xab, 0xf3, 0xe2, 0xb4, 0xe3, 0x3a, 0xbe, 0xcf, 0x85, 0x46, 0xfe, 0x04, 0xe3, 0xd2, 0x7a, 0xb9, 0xa3, 0xb4, 0xbf, 0x90, 0xdb, 0x3d, 0xe9, 0x0e, 0xbc, 0xc5, 0x4b, 0x75, 0xd3, 0x1a, 0xc0, 0xe8, 0x51, }; static const unsigned char xdh_wei448_3031_ourpubkey[] = { 0xbd, 0x1e, 0x64, 0xc4, 0x1f, 0x1c, 0xac, 0x4b, 0x46, 0xfd, 0x0c, 0xf4, 0x8c, 0xa3, 0xa4, 0xf4, 0x3a, 0xe3, 0xf9, 0xc1, 0xa0, 0x8f, 0x7a, 0xda, 0xe8, 0x9b, 0x75, 0x39, 0xee, 0x08, 0x76, 0x20, 0xfb, 0x0b, 0x1c, 0x29, 0x00, 0x48, 0x40, 0x48, 0xd6, 0x98, 0x2c, 0x0f, 0xa2, 0x67, 0xe1, 0x8e, 0xe5, 0x22, 0x91, 0x87, 0x68, 0x16, 0x38, 0x8c, }; static const unsigned char xdh_wei448_3031_privkey[] = { 0xc8, 0x66, 0x04, 0x42, 0x6c, 0x7a, 0x51, 0xed, 0x5c, 0xbc, 0x2f, 0xb2, 0x6c, 0x99, 0x75, 0x51, 0x88, 0xb9, 0x5c, 0x0f, 0xb2, 0x18, 0xa0, 0xf5, 0x43, 0xef, 0x34, 0x00, 0x82, 0xb4, 0x0b, 0x4a, 0x4b, 0xff, 0x68, 0x89, 0x4f, 0xd9, 0xe3, 0xb9, 0x05, 0x7b, 0x51, 0x3f, 0x00, 0xdb, 0x0f, 0x49, 0x88, 0x22, 0x1e, 0x79, 0x9c, 0x96, 0x41, 0x80, }; static const unsigned char xdh_wei448_3031_sharedsecret[] = { 0xbe, 0x9a, 0xa6, 0x91, 0x17, 0xdf, 0xdc, 0xe5, 0xc5, 0x84, 0x95, 0xb5, 0x0d, 0x9f, 0x52, 0x83, 0x8f, 0xac, 0x6f, 0x6e, 0x9b, 0x4e, 0x99, 0x24, 0x01, 0x7a, 0x40, 0xf9, 0x37, 0x5d, 0x55, 0xf5, 0x6b, 0xed, 0x07, 0x26, 0x96, 0x98, 0xb6, 0xe2, 0xef, 0xbf, 0x9c, 0xea, 0x52, 0xdd, 0x2e, 0x5c, 0xfd, 0x51, 0xee, 0x9c, 0x19, 0xcc, 0xbc, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_3031 = { .name = "xdh_wei448_3031", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3031_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3031_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3031_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3031_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 448 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3032 for XDH, tcId is 449 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3032_peerpubkey[] = { 0x84, 0x7c, 0xa2, 0xc6, 0xb0, 0x59, 0x2a, 0xcc, 0xb6, 0xff, 0x64, 0x3d, 0xc2, 0xc9, 0x0e, 0x90, 0x29, 0x99, 0x3d, 0x8f, 0x77, 0x40, 0x3d, 0xec, 0xc0, 0x07, 0xf3, 0xff, 0xfb, 0x77, 0xaa, 0x35, 0xda, 0xd0, 0xd3, 0xe7, 0x5a, 0x2c, 0x58, 0x85, 0x80, 0x11, 0x3d, 0x86, 0x3a, 0xa2, 0x12, 0xec, 0xe7, 0x65, 0x57, 0xc2, 0xc7, 0xc9, 0x0b, 0x61, }; static const unsigned char xdh_wei448_3032_ourpubkey[] = { 0xff, 0xf1, 0x71, 0xa5, 0x45, 0x94, 0x10, 0x73, 0xbc, 0x41, 0xaf, 0xc8, 0x97, 0x34, 0x44, 0x99, 0x0d, 0xd1, 0x96, 0x96, 0xc9, 0xe6, 0x28, 0xe9, 0x48, 0xc4, 0x60, 0x3c, 0xe4, 0x8c, 0x0b, 0xd0, 0x79, 0x71, 0x5e, 0x3f, 0x6c, 0x19, 0x3b, 0x77, 0x3e, 0xd7, 0xda, 0x0a, 0xc5, 0x77, 0xa8, 0x13, 0x81, 0x94, 0x5c, 0x18, 0xd5, 0x7e, 0x11, 0x40, }; static const unsigned char xdh_wei448_3032_privkey[] = { 0xf4, 0x0b, 0xf1, 0xba, 0x70, 0x53, 0x95, 0xf0, 0x92, 0x0c, 0x0e, 0xff, 0xbd, 0x09, 0x0e, 0x67, 0x06, 0x4d, 0x20, 0xe0, 0xc6, 0x18, 0x0b, 0x37, 0x3d, 0xe9, 0x2a, 0x31, 0x76, 0x2a, 0xcf, 0x2c, 0x74, 0x55, 0xd0, 0xf3, 0x02, 0xda, 0xc9, 0x42, 0x12, 0x67, 0x7b, 0xbd, 0x9a, 0x05, 0x55, 0x18, 0xa0, 0x06, 0x70, 0x56, 0x41, 0x4f, 0x37, 0x8a, }; static const unsigned char xdh_wei448_3032_sharedsecret[] = { 0x7e, 0x34, 0xa5, 0x0e, 0x34, 0x46, 0xe4, 0xdf, 0x31, 0x3d, 0xf5, 0x0a, 0x70, 0x10, 0x61, 0x98, 0xee, 0xb7, 0xfe, 0x14, 0x49, 0x8e, 0xe2, 0x2b, 0xad, 0x93, 0x3c, 0x74, 0x58, 0xc9, 0xd8, 0xaf, 0xb5, 0x02, 0x72, 0x21, 0xac, 0x02, 0x15, 0x94, 0x43, 0x83, 0x9a, 0xae, 0x4f, 0x07, 0xcd, 0x7a, 0xc6, 0x6e, 0xb4, 0x0c, 0x0f, 0x01, 0x85, 0x95, }; static const wycheproof_xdh_test xdh_wei448_3032 = { .name = "xdh_wei448_3032", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3032_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3032_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3032_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3032_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 449 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3033 for XDH, tcId is 450 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3033_peerpubkey[] = { 0x29, 0x79, 0x01, 0x58, 0xcc, 0x57, 0x81, 0x71, 0x16, 0xda, 0xfd, 0x0b, 0xfd, 0xab, 0x37, 0x8f, 0x55, 0x2b, 0x81, 0xb5, 0x84, 0x54, 0x95, 0xbc, 0xe7, 0x80, 0x55, 0xbe, 0x1e, 0x4f, 0xd3, 0xcf, 0x18, 0x4b, 0x4c, 0x04, 0x20, 0x2a, 0xac, 0xb4, 0x48, 0x60, 0xb4, 0x79, 0xe4, 0xb2, 0xff, 0x86, 0xf4, 0x8f, 0x2b, 0x75, 0x4f, 0x14, 0xcf, 0x7c, }; static const unsigned char xdh_wei448_3033_ourpubkey[] = { 0x9f, 0x4f, 0x44, 0x6c, 0xe1, 0x34, 0x19, 0x1a, 0x68, 0x27, 0x91, 0xf4, 0xa7, 0xe3, 0x74, 0xa8, 0x04, 0x27, 0x8c, 0xaa, 0x54, 0x11, 0x10, 0x1b, 0x4f, 0xed, 0xc5, 0x5c, 0x0c, 0x91, 0x1e, 0xa3, 0x9c, 0x4b, 0xfd, 0x29, 0x1e, 0xc6, 0x98, 0x27, 0x47, 0x0b, 0xd8, 0xd6, 0xc2, 0x2e, 0x65, 0x8e, 0xeb, 0xfa, 0x30, 0xf7, 0xfe, 0xc6, 0x83, 0xf7, }; static const unsigned char xdh_wei448_3033_privkey[] = { 0x48, 0x21, 0x4f, 0x09, 0xfd, 0xe0, 0x53, 0xec, 0x90, 0xe4, 0x55, 0xbe, 0x28, 0xa5, 0xf5, 0xd6, 0x1e, 0x4a, 0x0e, 0xec, 0xb2, 0xd7, 0x14, 0xf8, 0xd7, 0xca, 0x66, 0x18, 0x85, 0x4c, 0x5d, 0x70, 0x55, 0xac, 0x41, 0xa8, 0xb3, 0x61, 0xf3, 0xe4, 0xb6, 0x76, 0x43, 0x55, 0x8b, 0x22, 0x8a, 0x09, 0x4c, 0x08, 0x24, 0x8f, 0xcf, 0x31, 0xc6, 0x8b, }; static const unsigned char xdh_wei448_3033_sharedsecret[] = { 0x87, 0xde, 0xbb, 0x5b, 0x1b, 0x3a, 0x26, 0xe3, 0x5d, 0xb9, 0xeb, 0xe2, 0x15, 0xaf, 0x98, 0x05, 0xce, 0x1d, 0x04, 0x36, 0x19, 0xbb, 0xb2, 0xf6, 0xc8, 0xcf, 0x38, 0x0c, 0x62, 0x24, 0x72, 0xc3, 0x62, 0xb1, 0x96, 0xb1, 0x87, 0x77, 0x9e, 0x6c, 0xaf, 0x36, 0x46, 0xc5, 0xea, 0xcf, 0x1a, 0xaa, 0x12, 0x49, 0x6e, 0x19, 0xaf, 0x62, 0x7f, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_3033 = { .name = "xdh_wei448_3033", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3033_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3033_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3033_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3033_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 450 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3034 for XDH, tcId is 451 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3034_peerpubkey[] = { 0x55, 0x1b, 0x4e, 0xa2, 0x3d, 0x25, 0x73, 0x1e, 0x99, 0xe3, 0xed, 0x5c, 0x36, 0x5b, 0x49, 0xff, 0xd1, 0xe5, 0x9e, 0x8a, 0xb9, 0x9f, 0xbc, 0x3c, 0xb1, 0x18, 0x69, 0xf6, 0xa3, 0x65, 0x73, 0x6d, 0x17, 0x1c, 0x92, 0x99, 0x2d, 0x41, 0xd2, 0x88, 0x79, 0x78, 0x91, 0xfe, 0x32, 0x9b, 0xed, 0x87, 0x85, 0x9f, 0xbf, 0x13, 0x6b, 0x17, 0x9c, 0xb0, }; static const unsigned char xdh_wei448_3034_ourpubkey[] = { 0x96, 0x84, 0x6b, 0xe3, 0x43, 0x4b, 0x15, 0xcd, 0xff, 0xf8, 0x37, 0x16, 0x3f, 0x82, 0xfa, 0xde, 0x16, 0x8c, 0x46, 0x6d, 0xa2, 0x47, 0x42, 0x80, 0x8c, 0x26, 0xe7, 0x3e, 0xd9, 0x36, 0x14, 0x8e, 0xd3, 0x0e, 0xbe, 0x2d, 0xb1, 0x21, 0x8a, 0xa1, 0x47, 0x33, 0x15, 0xe8, 0xa5, 0xc4, 0xbb, 0xaf, 0x38, 0x03, 0xcf, 0x3e, 0x26, 0x8c, 0xdb, 0xb5, }; static const unsigned char xdh_wei448_3034_privkey[] = { 0x94, 0xd5, 0x8d, 0x10, 0xfe, 0x0d, 0x69, 0xb4, 0xc5, 0xaf, 0x5f, 0x59, 0x4e, 0xbd, 0x20, 0x51, 0xd8, 0x24, 0xf0, 0xb8, 0xb9, 0x70, 0xd0, 0x87, 0x7e, 0x8a, 0xba, 0x62, 0x79, 0x7a, 0x8d, 0x0f, 0xb1, 0x05, 0x28, 0x91, 0xf2, 0x65, 0xd8, 0xdb, 0x50, 0xca, 0xb5, 0x17, 0xa8, 0x34, 0xee, 0x21, 0x42, 0x58, 0x3b, 0xbb, 0x83, 0x1a, 0xe8, 0x87, }; static const unsigned char xdh_wei448_3034_sharedsecret[] = { 0x65, 0xf2, 0x6e, 0x62, 0xf5, 0xf6, 0x77, 0xc9, 0xd9, 0xad, 0x8c, 0x9d, 0x04, 0xef, 0x88, 0x2d, 0x3d, 0x06, 0x31, 0x74, 0x60, 0x8c, 0x90, 0x15, 0x99, 0x1b, 0xdf, 0x7b, 0x7a, 0x28, 0xec, 0x4b, 0xa0, 0x7a, 0x3b, 0x4a, 0x84, 0x65, 0x60, 0x2c, 0x71, 0xb7, 0xa4, 0x73, 0x5b, 0x53, 0x4b, 0x8a, 0x7b, 0x48, 0xed, 0xde, 0x20, 0xb1, 0xc7, 0x73, }; static const wycheproof_xdh_test xdh_wei448_3034 = { .name = "xdh_wei448_3034", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3034_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3034_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3034_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3034_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 451 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3035 for XDH, tcId is 452 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3035_peerpubkey[] = { 0xab, 0xd2, 0x35, 0x61, 0xec, 0x4c, 0xcd, 0x50, 0x06, 0x48, 0x9e, 0xaa, 0xfe, 0xb5, 0xc9, 0xde, 0x26, 0xdc, 0x0b, 0x1c, 0x9e, 0x37, 0x53, 0x68, 0x60, 0x8c, 0xaf, 0xa5, 0x44, 0x56, 0x97, 0x5a, 0xaf, 0xae, 0x03, 0x1b, 0xc0, 0x69, 0xa4, 0x56, 0xd5, 0x4e, 0xd7, 0x5d, 0x45, 0x08, 0xe4, 0x1d, 0xbe, 0xe3, 0x03, 0x18, 0x0d, 0xac, 0x5e, 0xc2, }; static const unsigned char xdh_wei448_3035_ourpubkey[] = { 0x47, 0xed, 0x3d, 0x5b, 0xb7, 0x3d, 0x8c, 0xec, 0x6b, 0xdd, 0x9d, 0x79, 0xaf, 0xf9, 0xcf, 0x2e, 0xfd, 0x7c, 0xae, 0x55, 0xa8, 0x7a, 0xc3, 0x0f, 0x33, 0xb1, 0x4f, 0x49, 0xde, 0x87, 0x81, 0x96, 0x57, 0xd0, 0x2d, 0x87, 0x40, 0x06, 0x52, 0xeb, 0x8a, 0x87, 0xfd, 0x2d, 0xa0, 0x62, 0x16, 0x9b, 0x62, 0xf1, 0x5b, 0x45, 0xa0, 0x7a, 0x4a, 0x93, }; static const unsigned char xdh_wei448_3035_privkey[] = { 0xcc, 0x53, 0x91, 0x25, 0x93, 0x71, 0x56, 0x86, 0xde, 0x21, 0xea, 0x0b, 0x5b, 0x4c, 0x32, 0x80, 0x77, 0xc7, 0xfe, 0xa1, 0x9b, 0x02, 0x50, 0xde, 0xe4, 0x82, 0x2f, 0xad, 0x0d, 0x41, 0xe5, 0xf1, 0xf3, 0x55, 0xeb, 0xe9, 0xf1, 0xa6, 0x2c, 0xeb, 0x1f, 0x90, 0x2f, 0xfe, 0xed, 0x2b, 0xc7, 0xfb, 0x40, 0xb8, 0xc9, 0x7c, 0x36, 0x6f, 0x3a, 0x80, }; static const unsigned char xdh_wei448_3035_sharedsecret[] = { 0x36, 0x03, 0x03, 0x26, 0x03, 0x55, 0xa2, 0x05, 0x88, 0xa9, 0x24, 0xbb, 0xa2, 0x98, 0xbf, 0x7c, 0xdc, 0x34, 0x75, 0x0c, 0xcd, 0x59, 0x40, 0x23, 0x90, 0x9b, 0xb6, 0xc8, 0x10, 0x84, 0xd5, 0x98, 0x4e, 0x98, 0x57, 0x23, 0xe8, 0x55, 0x7a, 0x9c, 0xc5, 0xf1, 0xf0, 0x8c, 0x3b, 0xeb, 0x2d, 0x56, 0x47, 0x8d, 0xf2, 0x68, 0x2e, 0xfc, 0x78, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_3035 = { .name = "xdh_wei448_3035", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3035_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3035_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3035_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3035_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 452 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3036 for XDH, tcId is 453 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3036_peerpubkey[] = { 0xb3, 0xd6, 0x8b, 0xee, 0x6c, 0xd3, 0xf2, 0xbb, 0xe4, 0x9b, 0xe1, 0x15, 0x93, 0x60, 0xd2, 0x6a, 0xeb, 0x1a, 0xe3, 0x2b, 0xd8, 0x05, 0x08, 0x1c, 0x24, 0xde, 0x14, 0xb2, 0xc2, 0x3d, 0x13, 0xb0, 0xe4, 0x5c, 0x2b, 0x12, 0x54, 0x36, 0xf4, 0x42, 0xd5, 0x26, 0xa5, 0x4d, 0x85, 0x82, 0xb9, 0x24, 0x33, 0xc8, 0x44, 0x92, 0x58, 0xed, 0xd4, 0xc3, }; static const unsigned char xdh_wei448_3036_ourpubkey[] = { 0x25, 0x93, 0x10, 0xae, 0x26, 0xc3, 0x11, 0xb2, 0xea, 0xa7, 0xca, 0x23, 0xf9, 0x7b, 0x88, 0xae, 0x81, 0x1c, 0xb5, 0xc7, 0x52, 0x81, 0xc1, 0x38, 0xd4, 0x86, 0x26, 0xe2, 0x57, 0x36, 0x12, 0x70, 0x3a, 0xe0, 0x61, 0x3d, 0x0a, 0x1e, 0x0a, 0x6b, 0x30, 0x94, 0x0b, 0xea, 0xeb, 0xf0, 0xe9, 0x4b, 0x60, 0x33, 0x94, 0x80, 0xcb, 0x68, 0x29, 0x41, }; static const unsigned char xdh_wei448_3036_privkey[] = { 0x2c, 0xa8, 0x10, 0x4c, 0x30, 0xf6, 0xcf, 0x2d, 0x86, 0x1a, 0x7e, 0xa9, 0xc6, 0x0c, 0x29, 0x91, 0x0c, 0x6c, 0x75, 0xfc, 0x78, 0x63, 0x83, 0xee, 0x2a, 0x9e, 0xf3, 0xe2, 0xe1, 0x28, 0x61, 0x52, 0x92, 0xbe, 0x2e, 0xd1, 0x67, 0x2a, 0x8a, 0x21, 0x62, 0xf1, 0x92, 0xbb, 0x7d, 0x4a, 0x3a, 0x2f, 0xa3, 0x46, 0xa4, 0x8d, 0xff, 0x10, 0xb0, 0x88, }; static const unsigned char xdh_wei448_3036_sharedsecret[] = { 0x8a, 0x14, 0xfe, 0x42, 0x6b, 0x3a, 0xbc, 0x24, 0x8f, 0x4b, 0xfc, 0x27, 0xe2, 0x69, 0x45, 0xb7, 0xe4, 0xa7, 0x84, 0x3a, 0x40, 0x28, 0x84, 0x2f, 0xcf, 0xd8, 0x99, 0xd3, 0x8c, 0xee, 0xf6, 0xab, 0x9d, 0x5c, 0x58, 0xc1, 0x7f, 0xf0, 0x4a, 0x5f, 0xb4, 0x2d, 0x12, 0xe8, 0xec, 0xb9, 0x05, 0x2b, 0xea, 0xae, 0xe8, 0x41, 0x5d, 0x88, 0xe0, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3036 = { .name = "xdh_wei448_3036", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3036_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3036_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3036_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3036_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 453 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3037 for XDH, tcId is 454 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3037_peerpubkey[] = { 0x4b, 0x04, 0xef, 0x0c, 0x42, 0xf1, 0x33, 0x83, 0x31, 0x06, 0xbb, 0x87, 0xa9, 0xd8, 0xa9, 0xf8, 0x0b, 0xd0, 0x5a, 0xbe, 0xb9, 0x01, 0x27, 0xfa, 0x74, 0x13, 0xca, 0x4d, 0xe0, 0x46, 0xea, 0x10, 0x1e, 0xc7, 0x96, 0x13, 0xa8, 0x76, 0x3d, 0xb2, 0xd2, 0x40, 0x50, 0xf8, 0x13, 0x7f, 0xff, 0xcd, 0xe7, 0xd3, 0x07, 0x57, 0x45, 0xc5, 0x52, 0x49, }; static const unsigned char xdh_wei448_3037_ourpubkey[] = { 0xe9, 0x1c, 0x10, 0x37, 0xc2, 0x29, 0x7c, 0x86, 0xea, 0x5a, 0x2e, 0x75, 0xea, 0x3b, 0xb0, 0x98, 0xac, 0x2b, 0xd5, 0x4e, 0x83, 0x4e, 0x6b, 0x94, 0xd4, 0xfc, 0x88, 0x64, 0xc8, 0x63, 0x43, 0x9e, 0xf5, 0x47, 0xd6, 0xe1, 0x31, 0xb4, 0x3c, 0x00, 0x8f, 0x47, 0xd3, 0x85, 0xe4, 0x50, 0xf2, 0x36, 0x8e, 0xfc, 0x41, 0xd3, 0x9d, 0xd0, 0x3f, 0x25, }; static const unsigned char xdh_wei448_3037_privkey[] = { 0x70, 0x96, 0x7c, 0xdd, 0xff, 0xdb, 0x1e, 0xf1, 0x5f, 0x3b, 0xf6, 0xf2, 0xae, 0x06, 0x9e, 0xe3, 0xbc, 0x14, 0x39, 0x46, 0x94, 0x5f, 0x0f, 0x81, 0x23, 0x95, 0xd0, 0x75, 0xc8, 0x6d, 0xf8, 0x88, 0x90, 0x49, 0xd5, 0xd0, 0x3b, 0x03, 0x09, 0x71, 0x67, 0xd0, 0x52, 0x39, 0x49, 0x77, 0xda, 0x36, 0x4d, 0x90, 0x18, 0x28, 0x6e, 0x9c, 0x70, 0x89, }; static const unsigned char xdh_wei448_3037_sharedsecret[] = { 0x25, 0xae, 0xd0, 0x08, 0xf8, 0xc0, 0xda, 0x48, 0xe6, 0x87, 0x69, 0xd5, 0x5a, 0x21, 0xc3, 0xd9, 0xab, 0x82, 0x9e, 0xf9, 0x3a, 0xde, 0x8a, 0x8b, 0x3f, 0xc3, 0xe2, 0xc3, 0xb0, 0x18, 0xae, 0xc2, 0x13, 0x71, 0x16, 0xca, 0xfd, 0x0b, 0x6b, 0xdc, 0x27, 0x2d, 0x8f, 0x6b, 0x5c, 0x56, 0x01, 0x5d, 0x94, 0x60, 0xd5, 0x38, 0x66, 0xd6, 0xe8, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3037 = { .name = "xdh_wei448_3037", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3037_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3037_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3037_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3037_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 454 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3038 for XDH, tcId is 455 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3038_peerpubkey[] = { 0xad, 0x8b, 0x71, 0xb1, 0x90, 0xd4, 0xe8, 0x74, 0x43, 0x97, 0x48, 0x46, 0x38, 0x3a, 0xe6, 0xb4, 0x59, 0x00, 0x90, 0x42, 0xf8, 0x27, 0x89, 0x61, 0x90, 0x1a, 0x99, 0xad, 0x61, 0x62, 0x97, 0xbc, 0xf9, 0x0e, 0x76, 0x79, 0x7e, 0x42, 0xcf, 0x0c, 0xc2, 0x68, 0x72, 0x27, 0x46, 0x38, 0xf9, 0xfe, 0xd0, 0xe2, 0xbd, 0xe9, 0xa5, 0x2f, 0xdf, 0x58, }; static const unsigned char xdh_wei448_3038_ourpubkey[] = { 0x22, 0xcc, 0x49, 0x1e, 0xb8, 0xbb, 0x80, 0x40, 0xb2, 0xd0, 0xd8, 0xaa, 0xa1, 0x53, 0x1f, 0x2e, 0x03, 0x8a, 0xda, 0x2d, 0x2e, 0x3a, 0xe0, 0x2d, 0xde, 0x21, 0x05, 0x5d, 0x74, 0x57, 0xfb, 0x6f, 0xf7, 0xd3, 0x87, 0x95, 0x76, 0x65, 0x68, 0x67, 0x00, 0xb1, 0xee, 0x01, 0xc9, 0xfd, 0xad, 0x43, 0xd6, 0x1c, 0x55, 0xb0, 0x9a, 0x98, 0xf5, 0x77, }; static const unsigned char xdh_wei448_3038_privkey[] = { 0x80, 0x51, 0x74, 0x29, 0xfa, 0x2a, 0x86, 0x8a, 0x00, 0xdb, 0x56, 0x94, 0xd2, 0x44, 0xdf, 0xfe, 0xe5, 0x31, 0x9b, 0x7e, 0x74, 0x4b, 0xb0, 0x51, 0x54, 0x5a, 0xf6, 0xc8, 0x06, 0x73, 0xd5, 0x00, 0x24, 0xe8, 0x30, 0x3d, 0x04, 0x90, 0x5e, 0x35, 0x41, 0x39, 0x8e, 0xb0, 0xbc, 0xf4, 0xf5, 0x10, 0x7b, 0xe4, 0xac, 0x25, 0xec, 0x9e, 0xa9, 0x8a, }; static const unsigned char xdh_wei448_3038_sharedsecret[] = { 0x79, 0x74, 0x3c, 0xd9, 0x18, 0xaa, 0xc1, 0x46, 0x0b, 0x6d, 0x17, 0xb4, 0x2a, 0xae, 0x00, 0x34, 0xff, 0x71, 0xf6, 0x21, 0xa8, 0xf9, 0x37, 0xa0, 0xe5, 0xa7, 0xb9, 0x09, 0x13, 0xdf, 0xfa, 0xaa, 0xd2, 0x6b, 0xbd, 0xbd, 0x58, 0x77, 0x2a, 0xc1, 0x9d, 0x1c, 0x3c, 0x01, 0x3c, 0x89, 0x1f, 0x4b, 0x25, 0x02, 0x9d, 0x2f, 0x32, 0xb8, 0x51, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_3038 = { .name = "xdh_wei448_3038", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3038_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3038_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3038_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3038_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 455 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3039 for XDH, tcId is 456 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3039_peerpubkey[] = { 0x3e, 0x81, 0xb3, 0x8f, 0x54, 0x45, 0xff, 0xdc, 0x2d, 0x59, 0xa8, 0x98, 0x80, 0x6d, 0xac, 0x4c, 0x88, 0xab, 0xdb, 0x9f, 0x5a, 0xf8, 0xe2, 0xcb, 0xef, 0x0f, 0x8d, 0xbe, 0x09, 0x68, 0x04, 0x01, 0x88, 0xa2, 0x85, 0x04, 0x03, 0xcc, 0x2a, 0xe7, 0xe9, 0x1d, 0x12, 0xf9, 0x28, 0x17, 0x01, 0x25, 0xdd, 0xab, 0xcd, 0xb2, 0xd5, 0x02, 0x62, 0x6c, }; static const unsigned char xdh_wei448_3039_ourpubkey[] = { 0x6b, 0xf7, 0xb3, 0xab, 0x34, 0xe1, 0x1c, 0x9a, 0x04, 0xd0, 0x88, 0x70, 0xf6, 0x3a, 0x74, 0xb8, 0x88, 0x99, 0x6d, 0x12, 0xca, 0xa0, 0xd8, 0xc1, 0x37, 0x88, 0xe2, 0xe5, 0x84, 0x87, 0x03, 0x58, 0x47, 0x1c, 0x2b, 0xd1, 0x2e, 0xd5, 0xff, 0x2a, 0x5f, 0x84, 0x12, 0xaf, 0x13, 0x2f, 0x95, 0x20, 0xd9, 0x7b, 0xde, 0x2d, 0xe7, 0x30, 0xa3, 0xad, }; static const unsigned char xdh_wei448_3039_privkey[] = { 0x10, 0xf2, 0x13, 0x45, 0x07, 0xb5, 0x4f, 0x0a, 0xc9, 0x3d, 0x13, 0x33, 0x58, 0x44, 0xdc, 0x9b, 0xcf, 0x0a, 0xb6, 0x3e, 0x37, 0x38, 0x0d, 0x26, 0x4d, 0x6a, 0x2b, 0x6a, 0xda, 0xbf, 0x28, 0x6f, 0x89, 0x2b, 0xe1, 0xc2, 0x18, 0xff, 0xe3, 0xb7, 0x81, 0xe7, 0x8c, 0x15, 0x16, 0x1a, 0xbb, 0x7c, 0x04, 0x93, 0xf3, 0x30, 0x46, 0xea, 0x86, 0x84, }; static const unsigned char xdh_wei448_3039_sharedsecret[] = { 0xc3, 0x98, 0x29, 0x33, 0xd6, 0xf8, 0x6d, 0x4d, 0xbb, 0x96, 0x38, 0x3c, 0x47, 0x44, 0x18, 0x59, 0x6f, 0xdd, 0xbd, 0x33, 0x12, 0x56, 0x50, 0x91, 0xdb, 0x1f, 0x39, 0x02, 0x4f, 0x24, 0x72, 0x3a, 0x9e, 0x99, 0x66, 0xd1, 0x8a, 0x38, 0x88, 0x70, 0x65, 0xf1, 0xcf, 0x44, 0x8b, 0xf3, 0xc8, 0xdd, 0x7a, 0xea, 0x31, 0xde, 0x06, 0xec, 0x01, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_3039 = { .name = "xdh_wei448_3039", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3039_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3039_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3039_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3039_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 456 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3040 for XDH, tcId is 457 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3040_peerpubkey[] = { 0xad, 0x39, 0xdb, 0x7d, 0x0a, 0xb6, 0xf1, 0x62, 0xd5, 0x8d, 0xae, 0x64, 0xee, 0x62, 0x58, 0xbb, 0xf1, 0xf1, 0x5e, 0xc1, 0x15, 0x99, 0x64, 0xc1, 0x96, 0xe8, 0xdf, 0x94, 0x99, 0xe7, 0xba, 0x1c, 0xfd, 0xa4, 0x81, 0xfc, 0x3a, 0xb3, 0x84, 0x24, 0x1d, 0x4b, 0xf2, 0x89, 0xb7, 0xf2, 0x97, 0x82, 0xf6, 0x2e, 0xf1, 0xd4, 0x5f, 0x75, 0xc7, 0xbe, }; static const unsigned char xdh_wei448_3040_ourpubkey[] = { 0xce, 0x5f, 0x89, 0x32, 0x87, 0xc2, 0xd8, 0x0f, 0xa2, 0x85, 0xca, 0x1a, 0x64, 0x19, 0x9b, 0x85, 0x46, 0x00, 0xab, 0xd9, 0xa7, 0xd8, 0x8d, 0xfc, 0x88, 0xb6, 0xe8, 0xb3, 0xdd, 0xd8, 0xbf, 0x3d, 0xa4, 0x56, 0xff, 0x35, 0x3e, 0xf1, 0x2f, 0x26, 0x14, 0x4e, 0xb9, 0x55, 0x88, 0x31, 0x41, 0x6d, 0x74, 0x84, 0x81, 0x8f, 0xca, 0xd5, 0xf1, 0x42, }; static const unsigned char xdh_wei448_3040_privkey[] = { 0xf0, 0x4e, 0x43, 0x32, 0x65, 0x54, 0x81, 0xdb, 0xc2, 0x0d, 0x8a, 0x42, 0x85, 0x04, 0x66, 0xa7, 0x21, 0x06, 0x32, 0x1c, 0xc0, 0xb8, 0x9c, 0x12, 0xbe, 0x6c, 0xbc, 0x15, 0xd4, 0x32, 0xab, 0x63, 0xa1, 0x2c, 0x76, 0xda, 0x18, 0xed, 0xb4, 0xef, 0xd6, 0xf2, 0xc6, 0x83, 0xda, 0xdb, 0x86, 0xe5, 0x93, 0x9c, 0x15, 0xa5, 0xa7, 0x06, 0x44, 0x89, }; static const unsigned char xdh_wei448_3040_sharedsecret[] = { 0x42, 0xbe, 0x6b, 0xff, 0x60, 0xaa, 0x63, 0xf6, 0xe0, 0x96, 0x9b, 0x91, 0x5e, 0xc0, 0xac, 0x98, 0x28, 0x3f, 0xe6, 0x2c, 0x43, 0x04, 0x50, 0x2e, 0x6b, 0xb1, 0xcb, 0x15, 0xa2, 0x59, 0x68, 0xb6, 0x44, 0x5f, 0x19, 0x31, 0x03, 0x56, 0xf2, 0xeb, 0xb5, 0xfd, 0x5e, 0x13, 0x84, 0x47, 0x96, 0x87, 0x2a, 0x6f, 0x74, 0x17, 0xcd, 0x35, 0x05, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_3040 = { .name = "xdh_wei448_3040", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3040_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3040_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3040_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3040_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 457 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3041 for XDH, tcId is 458 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3041_peerpubkey[] = { 0xa9, 0x02, 0xf8, 0x73, 0x9f, 0xfa, 0xe2, 0x74, 0x15, 0x77, 0x05, 0x06, 0x60, 0xc9, 0xb7, 0x46, 0x90, 0xc5, 0x33, 0x0f, 0x88, 0xcc, 0xd0, 0x63, 0x97, 0x2a, 0xa0, 0x05, 0x14, 0xea, 0x06, 0x55, 0x07, 0x06, 0xfc, 0x83, 0x75, 0x1f, 0xb2, 0x45, 0xce, 0xdc, 0x78, 0x1d, 0x39, 0x73, 0x10, 0x8a, 0x0a, 0x0e, 0x18, 0x2c, 0x9d, 0xa2, 0x07, 0xc0, }; static const unsigned char xdh_wei448_3041_ourpubkey[] = { 0xc9, 0x7e, 0xba, 0x4a, 0xa6, 0x96, 0xc8, 0x11, 0xdd, 0xc5, 0x5a, 0x08, 0xf2, 0xf9, 0x96, 0x73, 0x6b, 0x69, 0xb7, 0xfb, 0x17, 0xb4, 0x72, 0xac, 0xbb, 0x69, 0x9f, 0xf2, 0x87, 0xdb, 0x63, 0xce, 0x54, 0xf9, 0xf4, 0x4c, 0x50, 0x35, 0x29, 0x8b, 0x03, 0x77, 0x36, 0xaa, 0x12, 0xaf, 0x80, 0x7b, 0x77, 0xb5, 0x75, 0xab, 0xc7, 0xed, 0x44, 0x31, }; static const unsigned char xdh_wei448_3041_privkey[] = { 0xf8, 0xdc, 0x17, 0xe1, 0x18, 0xe0, 0x56, 0x9e, 0x5f, 0xec, 0xd8, 0x96, 0x1b, 0xda, 0xde, 0xca, 0xba, 0xe2, 0xf4, 0x2a, 0x0b, 0x40, 0xe3, 0xb2, 0x3c, 0xc5, 0x01, 0xba, 0x4f, 0x9b, 0xd3, 0x29, 0xad, 0x0b, 0xd3, 0x0b, 0xb9, 0x3d, 0xe6, 0x6b, 0x59, 0x97, 0x17, 0xcf, 0x95, 0x8e, 0x76, 0x5b, 0x69, 0x4f, 0x59, 0x74, 0xa9, 0x4e, 0x4d, 0x88, }; static const unsigned char xdh_wei448_3041_sharedsecret[] = { 0xc4, 0xf0, 0xcb, 0x9c, 0x4f, 0x3c, 0x3b, 0xa5, 0xc9, 0xc8, 0x84, 0x69, 0xd7, 0xd9, 0xfe, 0x82, 0xe9, 0x14, 0x11, 0x8e, 0x16, 0x4d, 0x28, 0xbc, 0x45, 0x09, 0xe2, 0x75, 0x32, 0x50, 0x09, 0xa0, 0x7f, 0x4a, 0x6b, 0x65, 0xc5, 0xa9, 0x73, 0x2f, 0x93, 0xeb, 0xe8, 0x02, 0xa3, 0x03, 0x9f, 0x03, 0xdb, 0x7f, 0xdb, 0x25, 0xb9, 0xcc, 0x9b, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3041 = { .name = "xdh_wei448_3041", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3041_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3041_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3041_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3041_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 458 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3042 for XDH, tcId is 459 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3042_peerpubkey[] = { 0x72, 0x2a, 0xb1, 0x1d, 0xa3, 0x7a, 0x44, 0x36, 0xee, 0xb8, 0x20, 0x46, 0xbb, 0x2b, 0xa5, 0x24, 0x58, 0x0c, 0xd7, 0x21, 0xc4, 0x9b, 0x79, 0x9b, 0x71, 0x29, 0xc6, 0x60, 0x36, 0xfa, 0xf2, 0xdf, 0x03, 0xc3, 0x96, 0xf9, 0x87, 0x14, 0xc4, 0x6f, 0x3e, 0x67, 0x48, 0xac, 0xef, 0x23, 0xc9, 0x28, 0xe8, 0x23, 0x75, 0x81, 0xc4, 0x35, 0x59, 0xd3, }; static const unsigned char xdh_wei448_3042_ourpubkey[] = { 0x62, 0x5f, 0xb2, 0x0c, 0xfe, 0x5e, 0xf1, 0xbf, 0x4a, 0x83, 0x86, 0x2d, 0x55, 0xea, 0xc7, 0x5b, 0x5d, 0x5e, 0x0b, 0xa8, 0x8b, 0x6b, 0x2c, 0x37, 0x15, 0x21, 0xb6, 0xc8, 0xd6, 0xd3, 0x95, 0xa6, 0x06, 0xf7, 0x9e, 0x7e, 0x35, 0x78, 0x79, 0x2f, 0x17, 0x5c, 0xcb, 0x03, 0x7b, 0xa0, 0x08, 0xb2, 0xe3, 0xac, 0x3b, 0xa1, 0xfa, 0xc4, 0x15, 0x7a, }; static const unsigned char xdh_wei448_3042_privkey[] = { 0xc0, 0x85, 0xe4, 0x06, 0xc8, 0x8d, 0x34, 0x18, 0xa1, 0x9a, 0xca, 0xe3, 0xe6, 0x18, 0xab, 0x18, 0x0d, 0xd9, 0xc6, 0x19, 0xae, 0xad, 0x09, 0x3f, 0xc5, 0x8f, 0x05, 0xaa, 0xe2, 0x1f, 0xa6, 0xb4, 0xed, 0x74, 0x73, 0x2b, 0x64, 0x0b, 0x6d, 0xa5, 0x9e, 0xe7, 0xb4, 0x12, 0x78, 0x30, 0xba, 0x51, 0x58, 0x89, 0x63, 0x73, 0x61, 0x34, 0x7d, 0x81, }; static const unsigned char xdh_wei448_3042_sharedsecret[] = { 0xda, 0xeb, 0xfd, 0xd9, 0xbd, 0x0d, 0xb1, 0x07, 0x48, 0xb0, 0x2f, 0xa7, 0x5b, 0x92, 0xa8, 0x79, 0x75, 0xd7, 0xae, 0x15, 0x80, 0xe3, 0xb3, 0x07, 0x64, 0xca, 0xc9, 0xc6, 0x77, 0x4e, 0xd6, 0xb7, 0x6e, 0xec, 0xaa, 0x73, 0xa7, 0x0f, 0xd3, 0xdd, 0xef, 0xc3, 0x8e, 0xe0, 0x81, 0x21, 0x18, 0x19, 0x88, 0x9c, 0x19, 0xd1, 0x63, 0x17, 0xed, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3042 = { .name = "xdh_wei448_3042", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3042_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3042_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3042_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3042_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 459 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3043 for XDH, tcId is 460 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3043_peerpubkey[] = { 0xe8, 0x60, 0x49, 0x68, 0x52, 0x0e, 0x86, 0xce, 0x55, 0x32, 0x34, 0x18, 0xe7, 0x40, 0x52, 0x78, 0x3b, 0xef, 0x2d, 0x38, 0xb9, 0x06, 0x1c, 0x8d, 0x35, 0x27, 0x70, 0x93, 0x82, 0x65, 0x6f, 0x3b, 0xf6, 0x29, 0x97, 0xf5, 0x1a, 0xed, 0xbf, 0x67, 0xa5, 0x6b, 0x8d, 0xe1, 0x89, 0x45, 0xff, 0xa5, 0x58, 0xaf, 0xbc, 0x24, 0x90, 0x3e, 0x1c, 0xe2, }; static const unsigned char xdh_wei448_3043_ourpubkey[] = { 0x9d, 0xd4, 0xc8, 0x69, 0xd5, 0xdc, 0xda, 0xc1, 0x9f, 0xd0, 0x08, 0x5d, 0x0a, 0x20, 0x1d, 0xf8, 0xa0, 0x57, 0x75, 0x2e, 0x7f, 0x03, 0xdb, 0x85, 0xc7, 0x66, 0xbb, 0x4d, 0x13, 0x66, 0xd7, 0x6b, 0x79, 0xb6, 0xb5, 0x8b, 0x3a, 0x40, 0x18, 0x24, 0x0c, 0xda, 0x92, 0xf9, 0x28, 0x06, 0x6b, 0xef, 0x47, 0xdb, 0x07, 0x93, 0xfe, 0xf3, 0x43, 0x28, }; static const unsigned char xdh_wei448_3043_privkey[] = { 0xe4, 0x34, 0x72, 0xcc, 0xe6, 0x5a, 0x3b, 0x63, 0xe9, 0xcf, 0x5b, 0xc5, 0x83, 0x5c, 0x82, 0xe4, 0x8e, 0xa8, 0xda, 0x69, 0x05, 0xcb, 0x98, 0xff, 0xd7, 0x14, 0x17, 0xe0, 0x23, 0xaf, 0xe6, 0x05, 0xcc, 0x17, 0x50, 0x64, 0x32, 0xb8, 0xd6, 0xba, 0x79, 0x82, 0x9f, 0x69, 0xe8, 0x9d, 0x41, 0xbb, 0x7f, 0x52, 0x60, 0xb0, 0xe6, 0xe8, 0xff, 0x8c, }; static const unsigned char xdh_wei448_3043_sharedsecret[] = { 0x0e, 0x4d, 0x45, 0x7c, 0xd0, 0xe5, 0x70, 0x0d, 0x60, 0x71, 0xea, 0xb5, 0x7e, 0x4d, 0x93, 0xc1, 0x9d, 0xdc, 0x1b, 0x74, 0x10, 0x1b, 0xed, 0xa0, 0xbf, 0x8e, 0x9f, 0x57, 0x1d, 0xe8, 0x9d, 0x3d, 0x0d, 0xaf, 0x14, 0x60, 0xed, 0x4e, 0x57, 0x99, 0x0c, 0x66, 0x71, 0xd6, 0x9f, 0x07, 0x4f, 0x7a, 0xc1, 0xc0, 0xbc, 0x64, 0x99, 0x51, 0x20, 0xeb, }; static const wycheproof_xdh_test xdh_wei448_3043 = { .name = "xdh_wei448_3043", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3043_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3043_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3043_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3043_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 460 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3044 for XDH, tcId is 461 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3044_peerpubkey[] = { 0x38, 0xad, 0x42, 0xf2, 0x98, 0x17, 0xa8, 0xb9, 0x02, 0xb1, 0xfe, 0xc9, 0x7f, 0x91, 0x3e, 0x09, 0xa1, 0x0a, 0x45, 0x55, 0xc4, 0x11, 0xed, 0xab, 0x8d, 0x1b, 0x7b, 0x42, 0xaa, 0x06, 0xac, 0xa9, 0xf9, 0xcb, 0xa0, 0x47, 0xfb, 0x7f, 0x5f, 0xec, 0x5d, 0x49, 0x98, 0xbc, 0xf9, 0x21, 0xdf, 0x5c, 0x40, 0xd2, 0x50, 0xf7, 0x9b, 0x2f, 0xaf, 0x50, }; static const unsigned char xdh_wei448_3044_ourpubkey[] = { 0xd6, 0xd5, 0xb8, 0x4d, 0xbc, 0x1d, 0x42, 0x6c, 0x0f, 0x45, 0x78, 0x10, 0x52, 0x09, 0x20, 0x8c, 0xca, 0xb6, 0x9a, 0x5f, 0xea, 0x21, 0xce, 0xa7, 0xc9, 0xe4, 0xc5, 0x24, 0xb5, 0xab, 0xce, 0x38, 0x78, 0xa3, 0x77, 0xd2, 0xab, 0xc5, 0xa4, 0x2c, 0xb9, 0x2e, 0x6b, 0xd8, 0xcc, 0x85, 0xb0, 0x99, 0x20, 0xbf, 0xc5, 0x5f, 0x27, 0x72, 0xb6, 0x89, }; static const unsigned char xdh_wei448_3044_privkey[] = { 0x1c, 0x4d, 0x32, 0x4d, 0x01, 0xa6, 0xbd, 0x33, 0xa4, 0x0a, 0x54, 0x4b, 0xdb, 0x16, 0x0f, 0xbe, 0xc0, 0x4c, 0x52, 0xb6, 0x2a, 0xbd, 0xc0, 0x6b, 0x60, 0x89, 0xa8, 0x8c, 0xed, 0x16, 0xd7, 0x03, 0x0a, 0x85, 0x38, 0x72, 0x1b, 0xa5, 0x9c, 0x0f, 0x8c, 0xad, 0x87, 0x60, 0xbd, 0xad, 0xc8, 0x2c, 0x7f, 0x70, 0xbf, 0x02, 0x74, 0x30, 0x9d, 0x87, }; static const unsigned char xdh_wei448_3044_sharedsecret[] = { 0x4e, 0x61, 0x67, 0xcc, 0x89, 0x7a, 0xa7, 0x0b, 0xb8, 0x95, 0x04, 0x40, 0xa5, 0x43, 0xc5, 0x4d, 0x07, 0x7e, 0xeb, 0xf1, 0x0f, 0xda, 0xdc, 0x24, 0x85, 0xa1, 0x2e, 0x7e, 0xe0, 0x60, 0x17, 0x89, 0x9e, 0x08, 0x9d, 0xb8, 0x09, 0x2a, 0xc4, 0x4c, 0x60, 0x69, 0xe1, 0x6e, 0xd2, 0x5e, 0xb4, 0x15, 0xc3, 0x50, 0xe8, 0x23, 0xcd, 0x6a, 0xd2, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3044 = { .name = "xdh_wei448_3044", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3044_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3044_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3044_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3044_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 461 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3045 for XDH, tcId is 462 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3045_peerpubkey[] = { 0x66, 0x26, 0xc9, 0xe7, 0xb4, 0xaa, 0x66, 0x21, 0xb2, 0x98, 0xe6, 0xd5, 0x94, 0x4b, 0xd0, 0xa6, 0x4d, 0x14, 0xf0, 0x2b, 0xd2, 0xdf, 0x47, 0xe2, 0x61, 0x10, 0x0a, 0xae, 0x42, 0x6a, 0xe9, 0xdd, 0xf9, 0x42, 0x3e, 0xa2, 0xe6, 0xd0, 0x98, 0x91, 0xbc, 0x00, 0x54, 0xc5, 0x9c, 0xa6, 0xfc, 0x1c, 0xf4, 0xe9, 0xf1, 0xe3, 0x06, 0x00, 0x93, 0x5d, }; static const unsigned char xdh_wei448_3045_ourpubkey[] = { 0x77, 0xae, 0x0d, 0xf9, 0xac, 0x0f, 0x83, 0x06, 0x78, 0xeb, 0x5a, 0xe8, 0x08, 0x08, 0xb9, 0x65, 0x78, 0x43, 0xc7, 0xff, 0xe7, 0xc9, 0x82, 0xe8, 0xa7, 0x26, 0xb3, 0x5a, 0x4e, 0x1f, 0x7f, 0xa4, 0x60, 0x56, 0x12, 0x99, 0xed, 0x59, 0x46, 0x84, 0x53, 0x27, 0xa0, 0x22, 0x8c, 0x49, 0xc2, 0xa7, 0xe7, 0xcc, 0x68, 0xc6, 0x4a, 0xf0, 0x41, 0x0e, }; static const unsigned char xdh_wei448_3045_privkey[] = { 0xcc, 0x8f, 0xc0, 0x9c, 0xac, 0x12, 0x77, 0x05, 0xcc, 0x29, 0x38, 0x9e, 0xc4, 0x67, 0x62, 0xfc, 0xbe, 0xf0, 0xb5, 0x46, 0x0a, 0x54, 0x18, 0x59, 0x44, 0x2d, 0xd4, 0xf9, 0x03, 0x17, 0xd0, 0x76, 0xcc, 0xb7, 0x86, 0x85, 0xf2, 0xbf, 0xb8, 0xa4, 0xc2, 0xdd, 0xff, 0x53, 0x12, 0x64, 0x14, 0xed, 0x3c, 0x03, 0xd5, 0x60, 0xc9, 0x81, 0xb6, 0x8f, }; static const unsigned char xdh_wei448_3045_sharedsecret[] = { 0xd1, 0x89, 0xdc, 0xd8, 0xcd, 0x60, 0x16, 0x97, 0x29, 0xdc, 0x51, 0xc1, 0x36, 0xc8, 0x90, 0xef, 0x68, 0x2c, 0xc7, 0xa0, 0xe7, 0xd3, 0x82, 0xa0, 0xea, 0x52, 0xe8, 0x73, 0x38, 0xc1, 0xa7, 0x00, 0x3a, 0x38, 0xde, 0xb0, 0xc5, 0x05, 0xdb, 0x7c, 0x55, 0xd3, 0xdc, 0xe4, 0x77, 0xd6, 0xba, 0x7a, 0xe6, 0x40, 0x55, 0xb2, 0xae, 0x11, 0x9f, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_3045 = { .name = "xdh_wei448_3045", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3045_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3045_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3045_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3045_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 462 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3046 for XDH, tcId is 463 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3046_peerpubkey[] = { 0x81, 0x45, 0xf6, 0x98, 0xe5, 0xc3, 0xff, 0xe1, 0x0c, 0xc8, 0x0d, 0xc2, 0x32, 0xd0, 0x6b, 0x27, 0x7f, 0x16, 0xc9, 0x7c, 0xdf, 0x2a, 0x13, 0x59, 0x49, 0xec, 0x06, 0x1d, 0x78, 0x39, 0xc1, 0xbd, 0x79, 0xf9, 0x90, 0xf8, 0xbf, 0xc2, 0xb2, 0x4f, 0x61, 0x5a, 0xe5, 0x80, 0xa5, 0x69, 0x32, 0xe9, 0x45, 0x76, 0x28, 0x34, 0x97, 0xa6, 0xf2, 0x6f, }; static const unsigned char xdh_wei448_3046_ourpubkey[] = { 0xd3, 0xa8, 0xf5, 0x44, 0x76, 0xba, 0x3a, 0xb5, 0x0a, 0x91, 0x4d, 0xe5, 0x35, 0x7c, 0xa2, 0x74, 0xed, 0x41, 0x26, 0xe4, 0x86, 0x89, 0xe1, 0xb6, 0x42, 0x1c, 0xe3, 0x5f, 0x2a, 0x26, 0x5c, 0x2e, 0x96, 0x3e, 0x5a, 0xf6, 0xc6, 0x2f, 0xcd, 0x6e, 0x9a, 0xc3, 0x62, 0xa2, 0x23, 0xbb, 0x1d, 0x6c, 0x33, 0x19, 0x60, 0x20, 0x1b, 0x1c, 0x53, 0x59, }; static const unsigned char xdh_wei448_3046_privkey[] = { 0x00, 0xdb, 0x5c, 0x17, 0xb7, 0xf2, 0x76, 0x5d, 0x92, 0x16, 0x3a, 0x1a, 0xbf, 0xd7, 0x0b, 0x3b, 0x5a, 0x10, 0x5b, 0x5b, 0x24, 0xf7, 0xc5, 0x37, 0xeb, 0x33, 0xe1, 0xad, 0xa5, 0x06, 0xe9, 0x14, 0x9f, 0x0f, 0xa2, 0x5d, 0xed, 0x4d, 0x25, 0xfc, 0x37, 0x23, 0xa7, 0x7a, 0x96, 0xb4, 0x0e, 0x56, 0x45, 0x1e, 0xf7, 0x86, 0x09, 0xda, 0x98, 0x8d, }; static const unsigned char xdh_wei448_3046_sharedsecret[] = { 0xda, 0xf2, 0x30, 0xfd, 0x96, 0xf5, 0x99, 0xd2, 0xea, 0xd3, 0x14, 0x9b, 0xad, 0x9f, 0x5e, 0xcf, 0xe6, 0x4c, 0xbe, 0x20, 0xf7, 0x90, 0x97, 0xf1, 0xb2, 0x15, 0xda, 0x86, 0x5a, 0x46, 0xb6, 0xd7, 0x4c, 0x45, 0xae, 0x5b, 0xd6, 0x37, 0x4d, 0x4c, 0x2b, 0x72, 0x33, 0x2e, 0xde, 0xa3, 0x0d, 0xf1, 0x63, 0x83, 0xe4, 0x44, 0x7b, 0x1f, 0x35, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_3046 = { .name = "xdh_wei448_3046", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3046_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3046_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3046_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3046_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 463 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3047 for XDH, tcId is 464 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3047_peerpubkey[] = { 0xc3, 0x1a, 0xeb, 0x03, 0x0b, 0x50, 0x9c, 0x78, 0x44, 0xc8, 0x18, 0xa4, 0x83, 0x9f, 0x00, 0x0b, 0xde, 0x71, 0x06, 0x11, 0x28, 0x91, 0x79, 0xa4, 0x60, 0x75, 0xa9, 0x99, 0xe8, 0xcc, 0x3d, 0x10, 0xc3, 0x9a, 0xa5, 0x69, 0x7d, 0x62, 0xb4, 0x5a, 0x43, 0x77, 0x11, 0x84, 0x28, 0x8e, 0xee, 0x5a, 0x8d, 0x6a, 0x87, 0x3d, 0x74, 0x21, 0x05, 0x7b, }; static const unsigned char xdh_wei448_3047_ourpubkey[] = { 0x82, 0xdf, 0xfc, 0xb2, 0x97, 0x15, 0xd4, 0x82, 0x76, 0x85, 0xe4, 0xed, 0xbb, 0x28, 0x39, 0x15, 0x1b, 0x1c, 0x5c, 0xc0, 0x1b, 0x60, 0x3a, 0x7e, 0x58, 0x9d, 0xd4, 0x92, 0xd4, 0x6a, 0x88, 0x99, 0xdb, 0x42, 0xfd, 0xd3, 0x01, 0xec, 0xa5, 0x82, 0x3d, 0x6f, 0x04, 0x9e, 0x35, 0x14, 0x73, 0xc9, 0xf2, 0x16, 0x76, 0xe2, 0xbc, 0xdc, 0xdf, 0x63, }; static const unsigned char xdh_wei448_3047_privkey[] = { 0xf0, 0x3f, 0x05, 0x18, 0x1a, 0x81, 0x30, 0xe7, 0x21, 0x0c, 0xb5, 0x22, 0x9c, 0x8d, 0xff, 0xa4, 0x57, 0x54, 0x4e, 0xb5, 0xe1, 0xe1, 0xf8, 0x62, 0x97, 0xac, 0x23, 0xfe, 0x0e, 0xf4, 0x95, 0xca, 0xbc, 0x13, 0x67, 0xad, 0x20, 0x54, 0xc5, 0xd8, 0xee, 0xfb, 0x08, 0x34, 0x6e, 0xb5, 0xa1, 0x47, 0xba, 0x44, 0x9e, 0x89, 0x86, 0x02, 0x2b, 0x8c, }; static const unsigned char xdh_wei448_3047_sharedsecret[] = { 0xe7, 0x85, 0x1b, 0xc1, 0x3d, 0x7c, 0xb8, 0x00, 0x9c, 0x54, 0xa7, 0xd6, 0x33, 0xae, 0x82, 0xd2, 0x04, 0x10, 0x16, 0x15, 0xf3, 0x28, 0xba, 0x05, 0x09, 0x28, 0x41, 0x46, 0x9d, 0x41, 0x0a, 0x4d, 0x52, 0x7a, 0x17, 0xde, 0x91, 0x89, 0x51, 0x28, 0x58, 0x85, 0xb9, 0xd7, 0x67, 0xa0, 0xcb, 0xcc, 0x88, 0xf6, 0x9c, 0xe1, 0x50, 0xb3, 0x23, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3047 = { .name = "xdh_wei448_3047", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3047_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3047_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3047_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3047_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 464 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3048 for XDH, tcId is 465 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3048_peerpubkey[] = { 0x3a, 0xb5, 0x93, 0x72, 0x4e, 0xae, 0x72, 0xc6, 0xc3, 0xf7, 0x7a, 0x71, 0xf2, 0x3a, 0xc1, 0xac, 0x52, 0xad, 0xba, 0xea, 0xb9, 0x1f, 0x20, 0x82, 0xbb, 0xe8, 0x4a, 0x58, 0xe6, 0x03, 0xd7, 0x8d, 0x84, 0xe6, 0x51, 0xa6, 0xe5, 0x88, 0x57, 0xd6, 0xcc, 0x91, 0x76, 0x7c, 0xfa, 0xa5, 0xad, 0xf0, 0xc6, 0x7e, 0xe2, 0x3f, 0x04, 0x02, 0xaa, 0x7d, }; static const unsigned char xdh_wei448_3048_ourpubkey[] = { 0x4c, 0xba, 0xf8, 0x5c, 0xe0, 0x86, 0x32, 0xaf, 0x15, 0xdb, 0x3b, 0x59, 0xc1, 0xc2, 0x5c, 0xe1, 0x13, 0xf4, 0xbf, 0x95, 0xc9, 0x23, 0x33, 0x86, 0x8c, 0x12, 0x59, 0x87, 0xb9, 0x29, 0xff, 0x83, 0x6b, 0x07, 0xd7, 0x0c, 0x5d, 0x67, 0x1a, 0x65, 0x7c, 0x6f, 0x11, 0x7d, 0xb6, 0x48, 0xbb, 0xbd, 0xa0, 0x91, 0xbb, 0xf7, 0x21, 0x3a, 0x0b, 0x35, }; static const unsigned char xdh_wei448_3048_privkey[] = { 0x34, 0xd7, 0xfe, 0x88, 0x6b, 0x69, 0x6e, 0x16, 0x2f, 0x35, 0xf2, 0x6d, 0x0b, 0xf7, 0x4a, 0xbf, 0x13, 0xd4, 0x0e, 0x19, 0x3c, 0x1b, 0x69, 0xad, 0x1b, 0x6a, 0xa6, 0xd1, 0x3a, 0x34, 0x08, 0x54, 0xa9, 0xa0, 0xa6, 0x2b, 0x05, 0xda, 0x18, 0x32, 0x96, 0xa6, 0x22, 0xbb, 0x48, 0xeb, 0x8e, 0xd3, 0xe6, 0x76, 0x02, 0x75, 0x02, 0x72, 0x6d, 0x8b, }; static const unsigned char xdh_wei448_3048_sharedsecret[] = { 0x36, 0x95, 0x70, 0xa9, 0x4c, 0xbf, 0x29, 0x23, 0x4a, 0x63, 0x10, 0x0e, 0xdc, 0xbf, 0x84, 0x55, 0x71, 0xd8, 0x32, 0x61, 0x16, 0xb8, 0x27, 0x00, 0x2e, 0x5d, 0xe5, 0xdc, 0xe5, 0x42, 0x93, 0xd5, 0xe9, 0x15, 0x4d, 0xb7, 0x1b, 0x04, 0x07, 0x15, 0x6a, 0x75, 0x72, 0x4b, 0xc1, 0x64, 0xd6, 0x8b, 0xf8, 0x00, 0xdb, 0x2f, 0xeb, 0xbe, 0x64, 0xa1, }; static const wycheproof_xdh_test xdh_wei448_3048 = { .name = "xdh_wei448_3048", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3048_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3048_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3048_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3048_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 465 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3049 for XDH, tcId is 466 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3049_peerpubkey[] = { 0x2f, 0x40, 0x00, 0xa0, 0x10, 0xfb, 0xa8, 0x70, 0xbc, 0xb1, 0x31, 0xe7, 0x3e, 0xeb, 0x05, 0x22, 0xc2, 0x0f, 0xd5, 0x28, 0x2e, 0x33, 0x96, 0xe0, 0xde, 0x9e, 0xd2, 0x6a, 0x62, 0xb1, 0xd4, 0x37, 0x0b, 0xae, 0x26, 0x54, 0x4c, 0xff, 0x3c, 0xae, 0x78, 0xcd, 0x0b, 0x8e, 0xa2, 0x86, 0xc7, 0x4b, 0x1f, 0x7c, 0x7c, 0x7a, 0x9e, 0x73, 0x88, 0xe9, }; static const unsigned char xdh_wei448_3049_ourpubkey[] = { 0xe9, 0x97, 0x45, 0x59, 0x81, 0x67, 0x8a, 0x8c, 0xc9, 0x0e, 0xb2, 0x36, 0x7a, 0x3a, 0x12, 0xe2, 0x81, 0x04, 0xaf, 0xd3, 0xe3, 0x76, 0xf9, 0x4f, 0x4c, 0x95, 0xd5, 0x5b, 0x80, 0x67, 0xca, 0x41, 0xfd, 0x28, 0xf3, 0x5b, 0x05, 0x4e, 0x78, 0xec, 0x3d, 0x59, 0x42, 0xa6, 0xa4, 0xb3, 0x8d, 0xab, 0x89, 0x13, 0xac, 0x72, 0x3a, 0x4a, 0x80, 0xb9, }; static const unsigned char xdh_wei448_3049_privkey[] = { 0xc8, 0x70, 0x53, 0x39, 0x02, 0xfe, 0x72, 0x8c, 0xf8, 0x8b, 0xb9, 0xb1, 0x78, 0xad, 0x0c, 0xcb, 0xb1, 0x55, 0x2a, 0xca, 0xeb, 0x41, 0xd3, 0x58, 0xd5, 0x17, 0x4a, 0x4c, 0x3e, 0xc9, 0x0a, 0xf0, 0x6b, 0x22, 0x55, 0xe5, 0xe1, 0x5c, 0xaf, 0x95, 0xcd, 0x31, 0x52, 0xb7, 0x4b, 0x59, 0x73, 0xc3, 0x39, 0x74, 0x8a, 0x36, 0x52, 0xcd, 0x98, 0x89, }; static const unsigned char xdh_wei448_3049_sharedsecret[] = { 0x50, 0xf0, 0x1d, 0x59, 0xa5, 0xcb, 0xc4, 0xc9, 0x6c, 0x32, 0xd8, 0x90, 0xe8, 0x99, 0x2a, 0x23, 0x60, 0x2d, 0xb6, 0x96, 0x6c, 0xf0, 0xd4, 0x20, 0xc2, 0x27, 0x3a, 0xbd, 0x8e, 0xeb, 0xaa, 0x2e, 0xbd, 0x54, 0x34, 0x61, 0x4b, 0x1a, 0x79, 0x17, 0x5d, 0x28, 0x4d, 0x12, 0xfd, 0x5d, 0x43, 0x5e, 0x47, 0xaf, 0xb7, 0xd4, 0x73, 0x61, 0x51, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3049 = { .name = "xdh_wei448_3049", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3049_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3049_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3049_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3049_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 466 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3050 for XDH, tcId is 467 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3050_peerpubkey[] = { 0x01, 0xb2, 0x37, 0xb2, 0xe5, 0x4b, 0x32, 0xd7, 0xc9, 0xba, 0x63, 0xd9, 0x7a, 0x3a, 0x27, 0x47, 0x1c, 0x24, 0x91, 0x17, 0x67, 0xf6, 0x18, 0x7c, 0x1d, 0x91, 0x4b, 0xec, 0x1f, 0x4f, 0x98, 0x34, 0x8a, 0xdf, 0x51, 0x1a, 0xd0, 0x87, 0xf8, 0xfe, 0x8a, 0xfd, 0x11, 0x07, 0xcb, 0xae, 0x81, 0x9f, 0x60, 0xea, 0x8c, 0x3c, 0xf6, 0xb7, 0xe5, 0xa1, }; static const unsigned char xdh_wei448_3050_ourpubkey[] = { 0x5e, 0xfc, 0x15, 0xe1, 0xa3, 0x18, 0x0e, 0x1e, 0x4e, 0xc6, 0xf6, 0x00, 0xd5, 0x97, 0x2f, 0x2d, 0xbe, 0xe9, 0x60, 0x91, 0xcc, 0x2c, 0x4b, 0x52, 0x02, 0x3c, 0xe9, 0x06, 0x4e, 0x2e, 0xdd, 0xcb, 0x14, 0xfe, 0xa9, 0xd1, 0x90, 0x77, 0xcd, 0x28, 0xd8, 0x9d, 0x3d, 0xb7, 0x6f, 0x4e, 0xce, 0x76, 0x8c, 0xe6, 0x48, 0xdc, 0x0f, 0x47, 0x59, 0x95, }; static const unsigned char xdh_wei448_3050_privkey[] = { 0xf4, 0x58, 0x96, 0xc6, 0x4d, 0x14, 0xe3, 0x75, 0xb4, 0x0c, 0xa3, 0x13, 0x56, 0xb7, 0x85, 0xeb, 0x94, 0x4f, 0xc6, 0xad, 0x07, 0xc3, 0x43, 0x27, 0x98, 0x80, 0xbe, 0x61, 0x14, 0xf4, 0xbc, 0x56, 0x72, 0x6a, 0x98, 0x9c, 0x7c, 0xc2, 0x62, 0x71, 0x73, 0x35, 0xc3, 0x6a, 0xa7, 0x88, 0x06, 0xeb, 0xd8, 0x53, 0xa2, 0x2e, 0x70, 0x08, 0xba, 0x8d, }; static const unsigned char xdh_wei448_3050_sharedsecret[] = { 0xd6, 0x5b, 0x11, 0x3b, 0x36, 0x4d, 0x20, 0x15, 0x6a, 0x78, 0x43, 0x5a, 0x04, 0x66, 0x3d, 0x07, 0x8f, 0xb2, 0x08, 0x23, 0x4b, 0x74, 0x51, 0x51, 0xc9, 0x06, 0xe1, 0x12, 0xdf, 0xa7, 0xcb, 0xeb, 0x53, 0xde, 0x16, 0x32, 0x61, 0x1a, 0x6d, 0x61, 0x23, 0x40, 0x51, 0xa1, 0xd1, 0x8a, 0x86, 0x57, 0xd3, 0x72, 0x2f, 0xd6, 0xbb, 0x0d, 0xcf, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3050 = { .name = "xdh_wei448_3050", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3050_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3050_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3050_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3050_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 467 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3051 for XDH, tcId is 468 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3051_peerpubkey[] = { 0x25, 0x9d, 0x5b, 0x9e, 0x98, 0x3c, 0x18, 0x8c, 0x7f, 0x80, 0x05, 0x52, 0x3f, 0x22, 0x47, 0xbb, 0xed, 0x09, 0xa4, 0xad, 0x8b, 0xa3, 0xac, 0x1c, 0x01, 0x91, 0x7c, 0x2e, 0x27, 0xcf, 0xe1, 0xb4, 0x6d, 0xd7, 0x6c, 0xd3, 0xe0, 0xb7, 0x2b, 0x18, 0x6c, 0x8f, 0xb3, 0x70, 0x19, 0x72, 0xb4, 0x93, 0x8b, 0x1f, 0x7b, 0x52, 0xe6, 0x17, 0x75, 0x06, }; static const unsigned char xdh_wei448_3051_ourpubkey[] = { 0xdc, 0x06, 0x1d, 0xa8, 0x3d, 0x40, 0x44, 0x00, 0x7a, 0x9d, 0x98, 0x97, 0x6d, 0xfb, 0x7a, 0xe3, 0x37, 0x6c, 0x7c, 0xd6, 0x71, 0x0e, 0xfb, 0x27, 0xe9, 0xe3, 0xe0, 0x4e, 0xa5, 0x31, 0x0e, 0xfa, 0x67, 0x95, 0x03, 0x76, 0xf7, 0x3d, 0xf9, 0x59, 0x8a, 0x96, 0x41, 0x20, 0x2b, 0xb4, 0xa5, 0xb2, 0x49, 0x7d, 0xe4, 0xf7, 0x1b, 0xb5, 0xe3, 0x40, }; static const unsigned char xdh_wei448_3051_privkey[] = { 0x30, 0xc2, 0x30, 0x49, 0x39, 0x20, 0x45, 0x12, 0x2b, 0x04, 0xad, 0x8d, 0xef, 0xd0, 0xd2, 0xd9, 0xb6, 0xb6, 0x6c, 0x27, 0xe5, 0x0a, 0x50, 0xc2, 0xd2, 0x62, 0xe9, 0xab, 0xd3, 0x57, 0x17, 0x12, 0x69, 0x25, 0xdb, 0x2a, 0xe4, 0x6a, 0x82, 0x85, 0xbd, 0xbf, 0x5a, 0x86, 0x39, 0xbb, 0x9a, 0x7d, 0x38, 0x9d, 0xcd, 0xf3, 0x7d, 0x9f, 0xc6, 0x9b, }; static const unsigned char xdh_wei448_3051_sharedsecret[] = { 0xa8, 0x7e, 0x2b, 0x37, 0x26, 0x71, 0xbc, 0x4f, 0x9f, 0xa4, 0x5e, 0xb4, 0xf4, 0x98, 0x1c, 0x24, 0x7c, 0xde, 0x7e, 0x25, 0xbd, 0xcb, 0x9e, 0xd8, 0x00, 0x74, 0x8a, 0xd6, 0xf1, 0x11, 0xf0, 0xc7, 0xad, 0xa3, 0xc4, 0xc7, 0xb3, 0x2d, 0xae, 0x7f, 0xaf, 0x67, 0x64, 0x38, 0xba, 0xde, 0x9c, 0xa1, 0xbd, 0xa8, 0x22, 0x50, 0xf8, 0xa2, 0xf1, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3051 = { .name = "xdh_wei448_3051", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3051_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3051_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3051_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3051_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 468 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3052 for XDH, tcId is 469 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3052_peerpubkey[] = { 0x50, 0xe6, 0x8f, 0x3a, 0x02, 0x97, 0xd2, 0x17, 0xa4, 0xab, 0x14, 0xf6, 0x50, 0x89, 0x9e, 0x78, 0x8e, 0x10, 0x3e, 0x4e, 0xff, 0xe6, 0x98, 0x8b, 0xc8, 0x01, 0x71, 0x9a, 0xc8, 0xa5, 0xbe, 0xbe, 0x55, 0xe3, 0xa8, 0x1e, 0xd4, 0xf1, 0xb5, 0x64, 0x19, 0x81, 0xc9, 0xde, 0xe9, 0xa8, 0xbd, 0x94, 0x6b, 0xbc, 0x43, 0x64, 0x9a, 0x10, 0xc0, 0x25, }; static const unsigned char xdh_wei448_3052_ourpubkey[] = { 0x6a, 0x01, 0x4b, 0x1f, 0xf1, 0x84, 0x00, 0xd4, 0x89, 0x97, 0x79, 0x2a, 0x53, 0xc7, 0x73, 0xe6, 0x84, 0x1d, 0x36, 0x95, 0x2b, 0x9a, 0x6f, 0x64, 0x88, 0xa2, 0x1b, 0x25, 0x28, 0x8d, 0x5b, 0xae, 0xa3, 0xaf, 0x51, 0xd5, 0xc6, 0x20, 0x31, 0x61, 0x90, 0xe0, 0x10, 0x75, 0xb3, 0x9d, 0x5a, 0x17, 0xfd, 0x4a, 0x48, 0x64, 0x2b, 0xb7, 0x7a, 0x09, }; static const unsigned char xdh_wei448_3052_privkey[] = { 0x78, 0xeb, 0xba, 0x71, 0xf4, 0xf9, 0xbc, 0x92, 0x9d, 0xf8, 0x68, 0x56, 0xd6, 0x00, 0xe3, 0x2b, 0x87, 0x8c, 0x99, 0xaa, 0x62, 0xfb, 0x01, 0xbf, 0xeb, 0x8e, 0xae, 0xd9, 0x3e, 0xc3, 0x63, 0xbe, 0xf8, 0x2d, 0xab, 0x72, 0x72, 0x25, 0xd8, 0x2e, 0x2a, 0xd7, 0xcc, 0x11, 0x23, 0x87, 0x90, 0x1b, 0xbe, 0x89, 0xdf, 0xfb, 0xad, 0x77, 0x84, 0x9e, }; static const unsigned char xdh_wei448_3052_sharedsecret[] = { 0x8c, 0x23, 0xb9, 0x27, 0x6c, 0x81, 0x64, 0xa6, 0x44, 0x7b, 0x0b, 0x3e, 0xc3, 0x30, 0x26, 0x8c, 0x38, 0xdd, 0x55, 0x3b, 0xf2, 0x09, 0xb6, 0x3c, 0x1d, 0x73, 0x3e, 0x2b, 0x88, 0x5d, 0x5a, 0x26, 0x66, 0x7b, 0xfb, 0xd6, 0xfc, 0x29, 0x37, 0x81, 0xc9, 0xe7, 0x09, 0x09, 0xe7, 0x42, 0xdd, 0xb1, 0x8a, 0x79, 0x81, 0x40, 0xcb, 0xee, 0xb9, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3052 = { .name = "xdh_wei448_3052", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3052_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3052_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3052_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3052_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 469 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3053 for XDH, tcId is 470 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3053_peerpubkey[] = { 0x16, 0x9d, 0x94, 0x58, 0xa9, 0xa9, 0x1b, 0x21, 0x4a, 0xb7, 0xe8, 0x3b, 0x97, 0x68, 0x37, 0x39, 0x99, 0xfe, 0xd6, 0x07, 0xda, 0xa9, 0x43, 0x58, 0x50, 0x37, 0x84, 0x97, 0x64, 0x5b, 0xbe, 0xb6, 0x9a, 0xab, 0x6f, 0x05, 0xfb, 0xf2, 0x4a, 0xfe, 0x51, 0x18, 0x02, 0xbc, 0x45, 0x3a, 0x29, 0x2b, 0xc7, 0x4a, 0x8d, 0xe0, 0x88, 0xef, 0x1e, 0x51, }; static const unsigned char xdh_wei448_3053_ourpubkey[] = { 0x88, 0x31, 0x3e, 0x5a, 0x41, 0xc8, 0x1c, 0xdc, 0xa6, 0x7e, 0x2f, 0x55, 0x2a, 0xe7, 0x9e, 0xe7, 0xc9, 0x38, 0xdc, 0x74, 0xf9, 0x60, 0x2d, 0x5a, 0x13, 0x1c, 0x24, 0x9c, 0xbb, 0xb1, 0xf0, 0x0b, 0x7a, 0xcf, 0x5e, 0xf4, 0x09, 0x03, 0x08, 0x26, 0x28, 0x22, 0x19, 0x00, 0xad, 0x25, 0x97, 0xd1, 0x92, 0x4d, 0xab, 0x7f, 0xa4, 0x51, 0x9b, 0x40, }; static const unsigned char xdh_wei448_3053_privkey[] = { 0x10, 0xc0, 0xb3, 0xb2, 0xe8, 0xb9, 0x8f, 0xce, 0x70, 0x7b, 0x31, 0x49, 0x94, 0x19, 0xe2, 0xac, 0x5f, 0x64, 0xab, 0xda, 0x25, 0x80, 0x75, 0xb6, 0x94, 0x1e, 0xe3, 0xb8, 0x28, 0xa1, 0x91, 0xa7, 0x21, 0xaf, 0x2a, 0x34, 0x4e, 0x89, 0x5c, 0x95, 0xad, 0x79, 0x4f, 0x7c, 0x4e, 0xf0, 0xf4, 0x69, 0x56, 0x05, 0x04, 0x38, 0x67, 0x8a, 0x1e, 0x9c, }; static const unsigned char xdh_wei448_3053_sharedsecret[] = { 0xf5, 0xc7, 0x6c, 0xa6, 0x09, 0x2d, 0xcf, 0x01, 0x61, 0x9b, 0x6e, 0x13, 0x89, 0x0b, 0x02, 0x96, 0xca, 0xac, 0x32, 0x92, 0xc5, 0xc9, 0xe3, 0x7b, 0x79, 0x88, 0x94, 0xf9, 0xf7, 0xbe, 0x57, 0x10, 0x77, 0xc2, 0x5f, 0xb1, 0x2d, 0x61, 0x6b, 0x63, 0xb4, 0xd5, 0xd8, 0xa9, 0x0e, 0x46, 0xf1, 0x09, 0xfc, 0x04, 0x62, 0x8e, 0x0b, 0x2c, 0x0d, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3053 = { .name = "xdh_wei448_3053", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3053_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3053_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3053_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3053_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 470 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3054 for XDH, tcId is 471 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3054_peerpubkey[] = { 0x88, 0xfb, 0xf6, 0x5e, 0x02, 0x44, 0xc8, 0xb2, 0x43, 0x1b, 0xd6, 0xe6, 0x31, 0x4d, 0x50, 0x88, 0xeb, 0xcd, 0xec, 0xde, 0x77, 0xfa, 0x27, 0xbd, 0x81, 0x38, 0x36, 0xc5, 0xff, 0x8a, 0xd3, 0xd0, 0xf0, 0x43, 0x98, 0x7b, 0x88, 0x1b, 0xca, 0xd1, 0xbf, 0x1e, 0x1d, 0xa5, 0xc6, 0x32, 0x31, 0xb7, 0x2b, 0x86, 0x21, 0x23, 0xcd, 0x39, 0x1b, 0x71, }; static const unsigned char xdh_wei448_3054_ourpubkey[] = { 0x22, 0x44, 0xaa, 0x78, 0x23, 0xc2, 0x4c, 0x8d, 0x50, 0x90, 0x9f, 0x26, 0xc2, 0x10, 0x4d, 0x82, 0xc5, 0x5d, 0xba, 0x93, 0xff, 0xba, 0xe7, 0xee, 0x72, 0x46, 0x7f, 0xcd, 0x4f, 0x47, 0x11, 0x4d, 0xcd, 0xdf, 0xf2, 0x8e, 0xc3, 0xad, 0x12, 0xf0, 0x74, 0x0c, 0x6a, 0x05, 0xd8, 0xc1, 0xef, 0xb4, 0xa3, 0xa7, 0xce, 0x4d, 0xce, 0x2b, 0xfb, 0xe5, }; static const unsigned char xdh_wei448_3054_privkey[] = { 0x2c, 0x47, 0xd3, 0x4c, 0xb0, 0x93, 0x51, 0x33, 0x70, 0x8b, 0x21, 0xf4, 0x22, 0x7b, 0x52, 0xb2, 0xe4, 0xad, 0x18, 0x10, 0x81, 0xc5, 0x38, 0xe8, 0x7e, 0x5c, 0x87, 0x66, 0x06, 0xdb, 0x69, 0xe0, 0x7f, 0x35, 0xb3, 0xc9, 0xf8, 0x6b, 0x42, 0xa8, 0x37, 0x2a, 0x93, 0xfb, 0x3c, 0xd6, 0x74, 0xc0, 0xe3, 0x42, 0x24, 0x2a, 0xb9, 0x10, 0xde, 0x94, }; static const unsigned char xdh_wei448_3054_sharedsecret[] = { 0x2d, 0xbe, 0xa0, 0x42, 0x84, 0xc3, 0x14, 0xc9, 0x0d, 0xe0, 0x20, 0x76, 0xf8, 0x37, 0xde, 0xfa, 0xd2, 0x8e, 0x9e, 0x8d, 0x40, 0x09, 0x51, 0x94, 0xc7, 0x05, 0xcc, 0x20, 0x65, 0x56, 0xbc, 0x8b, 0x6a, 0x21, 0x17, 0x29, 0xfe, 0xb5, 0xed, 0xf6, 0xf8, 0x6f, 0xbb, 0x9b, 0x17, 0x20, 0xb4, 0x37, 0x89, 0x78, 0xd9, 0xc9, 0xab, 0x41, 0xb8, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3054 = { .name = "xdh_wei448_3054", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3054_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3054_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3054_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3054_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 471 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3055 for XDH, tcId is 472 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3055_peerpubkey[] = { 0x6c, 0x2f, 0x2e, 0xde, 0xfb, 0xe1, 0x01, 0x8e, 0xfa, 0x83, 0xe2, 0x81, 0xbc, 0xa4, 0xc7, 0x7a, 0x6c, 0xc7, 0x69, 0xb6, 0x2e, 0x8f, 0xf5, 0x12, 0xc6, 0x69, 0xbf, 0xe5, 0x55, 0x4f, 0x70, 0xf0, 0xd8, 0x29, 0xa8, 0xfe, 0x54, 0x81, 0x15, 0xa5, 0x5a, 0x00, 0x34, 0xbb, 0x7b, 0x3e, 0x59, 0x0b, 0x28, 0x65, 0xe1, 0x0c, 0x97, 0x3e, 0x5a, 0xc0, }; static const unsigned char xdh_wei448_3055_ourpubkey[] = { 0x09, 0xdc, 0x29, 0xf7, 0xdd, 0x8b, 0x4e, 0xd4, 0x0a, 0x8f, 0x8e, 0x7c, 0xdc, 0x9e, 0x36, 0xfc, 0x9e, 0xe3, 0x7b, 0x8c, 0x69, 0xd6, 0xdc, 0xb3, 0x09, 0x20, 0xae, 0xcb, 0x41, 0xce, 0x9c, 0xf4, 0x88, 0xc9, 0x97, 0x64, 0x76, 0x67, 0x01, 0xa4, 0x69, 0x51, 0x07, 0x92, 0x17, 0x34, 0x1b, 0x90, 0x2d, 0x6b, 0x00, 0xca, 0x07, 0x6c, 0xdf, 0x87, }; static const unsigned char xdh_wei448_3055_privkey[] = { 0x3c, 0x76, 0x9b, 0xde, 0x8a, 0xcb, 0x40, 0x98, 0xaf, 0xa6, 0xdf, 0x0b, 0x7c, 0x17, 0x4f, 0x72, 0xb9, 0x46, 0x8d, 0x21, 0x6e, 0x8d, 0x60, 0xaa, 0xd8, 0x10, 0x98, 0x87, 0x25, 0x22, 0xfb, 0x60, 0xe9, 0x4e, 0xe9, 0x99, 0x2d, 0xe7, 0x0f, 0x63, 0xd5, 0xc0, 0x02, 0x4c, 0xa9, 0xb6, 0x74, 0xc0, 0xaf, 0x26, 0x2b, 0x6f, 0xcd, 0x52, 0xea, 0x9a, }; static const unsigned char xdh_wei448_3055_sharedsecret[] = { 0x8c, 0x56, 0xe7, 0x41, 0x52, 0x6a, 0xe9, 0xac, 0xb0, 0xa8, 0x53, 0x18, 0x4c, 0x6a, 0x05, 0x85, 0x89, 0x54, 0x65, 0x52, 0x36, 0x43, 0x8e, 0xbe, 0x9b, 0x7c, 0xb5, 0x58, 0x1a, 0x29, 0xf7, 0x57, 0x8f, 0x55, 0x1c, 0xa5, 0x8c, 0x23, 0xc3, 0x21, 0x26, 0xfb, 0xc7, 0x89, 0xa1, 0xa7, 0xc1, 0x92, 0x9f, 0x2d, 0xfd, 0xc2, 0x23, 0x60, 0xdc, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_3055 = { .name = "xdh_wei448_3055", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3055_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3055_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3055_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3055_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 472 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3056 for XDH, tcId is 473 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3056_peerpubkey[] = { 0xc9, 0x4f, 0xfd, 0x5e, 0xb8, 0x00, 0x8e, 0xc4, 0x94, 0x48, 0xab, 0x24, 0xa9, 0x59, 0xc4, 0x04, 0xb0, 0xd1, 0xd6, 0x62, 0xee, 0xe4, 0x67, 0x64, 0x3c, 0x69, 0x6f, 0x8f, 0x11, 0x79, 0x7f, 0xab, 0x49, 0x36, 0xf3, 0x15, 0xd7, 0xb0, 0x62, 0x4f, 0x61, 0x92, 0x1f, 0x5b, 0x3c, 0xb2, 0xdc, 0x6d, 0x2b, 0x75, 0xe9, 0x9a, 0x0d, 0xc9, 0xfb, 0xdc, }; static const unsigned char xdh_wei448_3056_ourpubkey[] = { 0x6b, 0x29, 0x60, 0x6c, 0x2a, 0x90, 0x81, 0x46, 0x47, 0x93, 0x0b, 0xf0, 0xdf, 0x3a, 0x6e, 0xdc, 0x78, 0x33, 0xf2, 0x26, 0x84, 0x64, 0x9e, 0x3a, 0xc3, 0x86, 0x83, 0xd6, 0x2a, 0x95, 0x81, 0x18, 0x37, 0x9e, 0x81, 0x28, 0xd7, 0xd2, 0x14, 0x76, 0x72, 0x2c, 0xa6, 0xaa, 0xf7, 0xad, 0x96, 0x6b, 0x6e, 0x49, 0x25, 0xd1, 0xb3, 0x0c, 0x5e, 0xd7, }; static const unsigned char xdh_wei448_3056_privkey[] = { 0xc4, 0x71, 0x14, 0x37, 0xfb, 0xe2, 0xb5, 0x1a, 0xb1, 0x3e, 0xdd, 0x52, 0x61, 0xd8, 0x80, 0x52, 0x0b, 0xfb, 0x3c, 0x31, 0x37, 0x3d, 0x80, 0x67, 0xb6, 0x44, 0xe0, 0x8a, 0x5b, 0x35, 0x06, 0x48, 0x55, 0x9e, 0x77, 0x26, 0x69, 0x30, 0x30, 0x1b, 0xbb, 0x9f, 0xe5, 0x63, 0x27, 0x74, 0x63, 0x38, 0xf7, 0x3f, 0x82, 0x43, 0x2d, 0x8d, 0x8b, 0x9d, }; static const unsigned char xdh_wei448_3056_sharedsecret[] = { 0x0d, 0xf3, 0x6e, 0x4e, 0xac, 0x40, 0xf7, 0x44, 0xba, 0xa1, 0x38, 0xe9, 0xb8, 0x92, 0x95, 0xde, 0xcd, 0xe5, 0x3d, 0x35, 0xe4, 0xc1, 0xc2, 0x28, 0x9d, 0xb7, 0x93, 0x0f, 0x3b, 0x39, 0xd1, 0xfc, 0xf8, 0x0f, 0x87, 0x1b, 0x69, 0x1c, 0xcc, 0xf3, 0xce, 0xc6, 0xaa, 0xee, 0xc2, 0x1e, 0x67, 0x8a, 0x3d, 0x29, 0xc5, 0x48, 0x58, 0x72, 0x10, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_3056 = { .name = "xdh_wei448_3056", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3056_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3056_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3056_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3056_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 473 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3057 for XDH, tcId is 474 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3057_peerpubkey[] = { 0xa3, 0x58, 0xbd, 0x70, 0xe3, 0x11, 0xa9, 0x52, 0x96, 0x7e, 0x01, 0xd3, 0xf1, 0x93, 0xdb, 0x58, 0xb6, 0x9e, 0x2f, 0x5f, 0x7c, 0x8a, 0xc6, 0x38, 0x1b, 0x15, 0x23, 0x55, 0x67, 0x8e, 0x7b, 0x64, 0x47, 0x48, 0x3b, 0x4e, 0x2b, 0xdb, 0x00, 0x2a, 0x11, 0x3c, 0xc2, 0x34, 0x52, 0xfb, 0xe5, 0x8b, 0xfa, 0x8b, 0xf3, 0x07, 0x33, 0x8d, 0xc2, 0xeb, }; static const unsigned char xdh_wei448_3057_ourpubkey[] = { 0x6c, 0xe9, 0x83, 0x58, 0x2f, 0x5d, 0xb5, 0x7f, 0x8b, 0x22, 0xd5, 0xa7, 0x25, 0xff, 0xb6, 0xf7, 0xef, 0x5d, 0x47, 0x19, 0x19, 0x13, 0x68, 0x24, 0xcd, 0xf9, 0xa0, 0x1e, 0xb2, 0xdc, 0x88, 0xc3, 0xf1, 0xf0, 0x5a, 0xfc, 0x03, 0xe0, 0x2a, 0x6c, 0xf9, 0x63, 0xbf, 0xc2, 0x35, 0x8e, 0xa2, 0x07, 0x88, 0xde, 0x8f, 0x52, 0xaa, 0xe7, 0xda, 0xa3, }; static const unsigned char xdh_wei448_3057_privkey[] = { 0x54, 0x0d, 0xbd, 0x4a, 0x7e, 0x99, 0xfc, 0xc2, 0x98, 0x29, 0x3a, 0x85, 0xc6, 0x36, 0xbd, 0x51, 0x30, 0x2a, 0xa1, 0x30, 0xf3, 0x96, 0x75, 0x60, 0xdc, 0xa8, 0x70, 0x7a, 0x7f, 0xdd, 0xb7, 0xd9, 0x97, 0xc2, 0x05, 0x62, 0xb8, 0x81, 0xe5, 0xb6, 0x80, 0x53, 0xea, 0x9e, 0x04, 0x04, 0x83, 0x21, 0x4c, 0xe8, 0xf1, 0x30, 0xc3, 0x5a, 0x58, 0x9c, }; static const unsigned char xdh_wei448_3057_sharedsecret[] = { 0xcb, 0x6c, 0x61, 0xdd, 0x09, 0xaa, 0x76, 0xec, 0x5a, 0xd6, 0xd2, 0xe3, 0x01, 0x0a, 0x04, 0x6f, 0x99, 0x53, 0x76, 0x1d, 0x23, 0x0c, 0x3d, 0xc5, 0x13, 0xfa, 0x73, 0x2a, 0x4e, 0x5e, 0x98, 0xb0, 0xec, 0xc4, 0xd3, 0xeb, 0xc7, 0xe3, 0xe5, 0x94, 0xba, 0x25, 0xf4, 0x6d, 0x1d, 0x50, 0x8a, 0xf2, 0xd3, 0xa9, 0x8e, 0x1a, 0x3b, 0xa6, 0x84, 0x26, }; static const wycheproof_xdh_test xdh_wei448_3057 = { .name = "xdh_wei448_3057", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3057_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3057_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3057_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3057_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 474 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3058 for XDH, tcId is 475 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3058_peerpubkey[] = { 0x46, 0x50, 0x12, 0xb6, 0x85, 0xf2, 0x28, 0x8d, 0xc4, 0xf7, 0x70, 0xf8, 0xbb, 0x51, 0xdc, 0xd2, 0x94, 0xe3, 0x6f, 0x51, 0x8c, 0xdf, 0xad, 0x45, 0xc6, 0x8a, 0x80, 0xb1, 0x11, 0x20, 0xe3, 0x80, 0xaa, 0xaf, 0xa9, 0xf5, 0x9c, 0x57, 0x25, 0xd4, 0x6e, 0xd3, 0xd3, 0x80, 0x58, 0xa2, 0xa4, 0x73, 0xb1, 0x12, 0x4b, 0x75, 0x41, 0x58, 0x87, 0x15, }; static const unsigned char xdh_wei448_3058_ourpubkey[] = { 0x83, 0xc0, 0x70, 0xa7, 0x95, 0x70, 0xdb, 0xc2, 0x6c, 0xc2, 0x0a, 0xe6, 0xfe, 0x4f, 0x0c, 0x3d, 0x16, 0x7c, 0xb1, 0x31, 0x74, 0x5b, 0xf0, 0xbe, 0x92, 0xac, 0x6e, 0x79, 0xc9, 0xfd, 0xce, 0x7f, 0x1d, 0x1b, 0xfe, 0xae, 0x35, 0xa2, 0xc6, 0x33, 0xb1, 0x23, 0xbb, 0xc6, 0xde, 0x22, 0x0b, 0xa5, 0x90, 0x08, 0xed, 0x9b, 0x77, 0x88, 0x22, 0xc7, }; static const unsigned char xdh_wei448_3058_privkey[] = { 0x0c, 0x86, 0x4c, 0xbb, 0x26, 0x27, 0x5f, 0xa9, 0x46, 0xae, 0xe2, 0xae, 0x87, 0x2a, 0xa5, 0x4a, 0x82, 0x80, 0x7a, 0x70, 0x40, 0x5f, 0xb7, 0x05, 0xe9, 0x25, 0x16, 0x15, 0x2a, 0xa6, 0x68, 0x3f, 0x4e, 0xd4, 0x22, 0x39, 0xdd, 0x14, 0x73, 0x70, 0xa6, 0xb6, 0x71, 0xed, 0x67, 0x83, 0xce, 0xa5, 0xbe, 0xe2, 0x4c, 0xd4, 0x33, 0xe8, 0x64, 0x91, }; static const unsigned char xdh_wei448_3058_sharedsecret[] = { 0xc2, 0xd3, 0x31, 0x77, 0xe5, 0x2d, 0x27, 0x22, 0xd2, 0xc2, 0xe4, 0x4f, 0x2e, 0x15, 0xdd, 0x0d, 0xb3, 0x32, 0xe7, 0xde, 0x9c, 0x5e, 0x93, 0x07, 0xe7, 0xe0, 0xfb, 0xe7, 0x12, 0x1f, 0x1e, 0xc7, 0xd1, 0x48, 0x87, 0xf1, 0x9b, 0x97, 0x40, 0x96, 0x78, 0x4c, 0x45, 0x8e, 0x32, 0xf2, 0xe8, 0x10, 0x2c, 0x0a, 0x13, 0xb0, 0x0c, 0x8f, 0x61, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3058 = { .name = "xdh_wei448_3058", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3058_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3058_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3058_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3058_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 475 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3059 for XDH, tcId is 476 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3059_peerpubkey[] = { 0x0d, 0x05, 0x33, 0xc5, 0x14, 0xcc, 0x66, 0x1e, 0xd7, 0x4a, 0xff, 0x5c, 0xb9, 0x77, 0x18, 0x76, 0xb2, 0xf1, 0xb0, 0x31, 0x79, 0x45, 0x93, 0xbf, 0xd9, 0xb1, 0xf0, 0x15, 0x5b, 0x59, 0xe5, 0x3c, 0x54, 0xa1, 0x43, 0x58, 0xea, 0x01, 0x03, 0x4b, 0xf0, 0x73, 0x9b, 0x78, 0x05, 0x89, 0xc3, 0xb2, 0x14, 0xa6, 0x54, 0x93, 0xd4, 0xb2, 0x84, 0x64, }; static const unsigned char xdh_wei448_3059_ourpubkey[] = { 0x54, 0xde, 0x71, 0x3c, 0xa2, 0x45, 0xb8, 0x02, 0x0f, 0xbb, 0x4b, 0x66, 0x36, 0xd0, 0xb6, 0x0c, 0x21, 0x9b, 0x8d, 0xca, 0xcd, 0x5f, 0x45, 0x8f, 0x06, 0x3c, 0x9f, 0xc8, 0x94, 0xaf, 0xfd, 0xd4, 0x29, 0x98, 0x21, 0x02, 0x8b, 0xbe, 0x35, 0x9e, 0x8b, 0xa3, 0x3e, 0x3f, 0xfc, 0xf9, 0x7a, 0x24, 0x17, 0x02, 0xc6, 0x44, 0x34, 0xed, 0xec, 0x7d, }; static const unsigned char xdh_wei448_3059_privkey[] = { 0xc4, 0x36, 0x40, 0x08, 0x67, 0x58, 0x93, 0x1b, 0x8f, 0x8b, 0xdb, 0x4f, 0x8a, 0xc1, 0xe9, 0x48, 0x21, 0x6e, 0x36, 0x3b, 0x57, 0x23, 0x6b, 0x9e, 0xbf, 0xf8, 0x20, 0xc8, 0x69, 0x1d, 0xd0, 0x76, 0x50, 0x7e, 0xa6, 0x50, 0xbc, 0x7f, 0x98, 0x43, 0x84, 0x6a, 0x26, 0xd7, 0xd3, 0xa5, 0xd5, 0x57, 0x6c, 0xdd, 0xe4, 0x88, 0x68, 0xd4, 0x32, 0x9b, }; static const unsigned char xdh_wei448_3059_sharedsecret[] = { 0x92, 0x93, 0xaa, 0x34, 0x80, 0x47, 0xd1, 0x14, 0x29, 0xf8, 0xc6, 0x6d, 0x3b, 0x05, 0x07, 0x0b, 0xd5, 0x88, 0x8b, 0x22, 0x18, 0xb2, 0xe6, 0x8c, 0xd1, 0x50, 0x95, 0x2b, 0x5a, 0x71, 0x0f, 0x0f, 0x87, 0x17, 0x6c, 0xd9, 0x3c, 0x18, 0x39, 0xc3, 0xa1, 0x45, 0xd0, 0x3c, 0x49, 0x77, 0x20, 0xe6, 0xf9, 0xcd, 0xe0, 0x10, 0x4c, 0xea, 0x1c, 0x09, }; static const wycheproof_xdh_test xdh_wei448_3059 = { .name = "xdh_wei448_3059", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3059_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3059_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3059_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3059_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 476 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3060 for XDH, tcId is 477 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3060_peerpubkey[] = { 0xe2, 0xfe, 0xdb, 0x0f, 0x28, 0xab, 0x05, 0xf2, 0xf6, 0xd9, 0xd8, 0x1c, 0x4b, 0xa9, 0xc6, 0xc8, 0x15, 0xc6, 0x25, 0x42, 0xdc, 0xdb, 0x90, 0x39, 0x83, 0x4d, 0x2a, 0x28, 0x37, 0x34, 0xfb, 0x71, 0x5a, 0x90, 0xf4, 0x03, 0x85, 0x1b, 0x16, 0x25, 0x98, 0x60, 0xb5, 0x72, 0xe4, 0x35, 0x2c, 0x60, 0xbb, 0xa1, 0x87, 0x9c, 0x7e, 0xdf, 0xa4, 0x7d, }; static const unsigned char xdh_wei448_3060_ourpubkey[] = { 0xe0, 0xa1, 0x93, 0xa9, 0xc3, 0x05, 0x40, 0x83, 0xf1, 0xf0, 0x1c, 0x51, 0x9e, 0x16, 0x86, 0xa3, 0x57, 0x07, 0xfc, 0x57, 0x91, 0x94, 0x87, 0xd0, 0x8d, 0x17, 0xdb, 0x2c, 0x05, 0x8f, 0xe4, 0x16, 0xac, 0x86, 0xeb, 0x31, 0xb3, 0x9e, 0x40, 0x39, 0x22, 0xf4, 0xd3, 0xf8, 0x3d, 0x28, 0x6c, 0x0f, 0xc8, 0xd7, 0x25, 0xcd, 0x2d, 0x34, 0x09, 0x9b, }; static const unsigned char xdh_wei448_3060_privkey[] = { 0x14, 0xbf, 0x5e, 0x4a, 0xdb, 0x42, 0xa3, 0xf0, 0xf9, 0x4e, 0x75, 0x31, 0xa8, 0x1a, 0xc9, 0x94, 0xd5, 0x72, 0x9c, 0x6f, 0x51, 0xc6, 0xd8, 0xba, 0xe1, 0xc2, 0xa6, 0x9e, 0xcd, 0x76, 0x59, 0xac, 0x31, 0xb4, 0x8d, 0x35, 0xd9, 0x22, 0x85, 0x76, 0xa4, 0x8e, 0x9e, 0x65, 0x8d, 0xe2, 0xc0, 0xaa, 0x9d, 0x59, 0xef, 0x3f, 0x08, 0xd3, 0x8f, 0x97, }; static const unsigned char xdh_wei448_3060_sharedsecret[] = { 0x35, 0x17, 0xa6, 0x63, 0xcf, 0x3a, 0x34, 0xda, 0x5d, 0xa4, 0xa1, 0x0e, 0xc0, 0x55, 0x33, 0xba, 0xb7, 0xea, 0x0b, 0x22, 0x35, 0x29, 0xc4, 0x90, 0x57, 0xb9, 0xfb, 0xb9, 0x60, 0xc4, 0xdd, 0xde, 0xb2, 0x15, 0x0a, 0x52, 0x26, 0x51, 0x96, 0x4b, 0x20, 0xb6, 0x35, 0x8f, 0xea, 0xc9, 0x20, 0x3a, 0xa0, 0x14, 0xab, 0x01, 0x54, 0x8e, 0xde, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_3060 = { .name = "xdh_wei448_3060", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3060_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3060_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3060_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3060_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 477 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3061 for XDH, tcId is 478 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3061_peerpubkey[] = { 0x06, 0x0a, 0x05, 0x9e, 0xc2, 0x51, 0x40, 0x62, 0x05, 0xa5, 0x70, 0x19, 0xa8, 0xec, 0xa7, 0xaa, 0xa9, 0xef, 0xdc, 0xc5, 0x32, 0x77, 0xa8, 0x9b, 0x55, 0x2e, 0x64, 0x09, 0x98, 0xad, 0x23, 0x83, 0x43, 0x1b, 0x94, 0xec, 0x58, 0xeb, 0xef, 0x0d, 0xe3, 0xa7, 0x68, 0x0f, 0xdf, 0x5e, 0x56, 0xb9, 0xd8, 0x9b, 0x91, 0x42, 0x1f, 0xf4, 0x33, 0x83, }; static const unsigned char xdh_wei448_3061_ourpubkey[] = { 0x88, 0x62, 0x55, 0xf4, 0x34, 0x56, 0x07, 0x03, 0x3a, 0xa8, 0x31, 0x78, 0xd3, 0x4c, 0x1f, 0xad, 0x76, 0x45, 0xa5, 0x4c, 0xa3, 0x64, 0xac, 0x1c, 0xf8, 0x35, 0x2a, 0x1a, 0x28, 0xa8, 0x03, 0x7d, 0xbd, 0x08, 0x5f, 0xb0, 0x95, 0x7d, 0xc7, 0x00, 0xb3, 0xe1, 0xaf, 0x65, 0xca, 0x34, 0xee, 0x33, 0x76, 0x7e, 0xf3, 0x51, 0x66, 0x62, 0xe8, 0xf5, }; static const unsigned char xdh_wei448_3061_privkey[] = { 0xac, 0x93, 0xa2, 0x1d, 0x29, 0xd3, 0x71, 0x8d, 0xd0, 0x33, 0x15, 0xea, 0x0a, 0x47, 0x70, 0xc3, 0x1d, 0xdc, 0x8a, 0xce, 0x30, 0x4e, 0x3e, 0xfd, 0x6e, 0xf9, 0x3e, 0x3d, 0x1b, 0x80, 0x35, 0x29, 0x9f, 0x6b, 0xc6, 0x59, 0xba, 0xcf, 0x14, 0xc1, 0x3e, 0x84, 0x88, 0x10, 0xd7, 0xd8, 0x4d, 0x2b, 0xbb, 0xd4, 0xa1, 0x07, 0x86, 0xc8, 0x6c, 0x98, }; static const unsigned char xdh_wei448_3061_sharedsecret[] = { 0xd3, 0x6c, 0x91, 0x9a, 0xb7, 0xe5, 0x36, 0xe9, 0x58, 0xc9, 0x5e, 0xe9, 0xa7, 0x89, 0xba, 0x37, 0xaa, 0xe9, 0x97, 0x4d, 0xd3, 0xa2, 0x68, 0x07, 0x21, 0xfa, 0x69, 0x52, 0x59, 0x88, 0xa0, 0x25, 0x7c, 0x3f, 0x65, 0x4b, 0x97, 0xd4, 0x50, 0xdc, 0x88, 0xde, 0xda, 0x59, 0xd2, 0x6d, 0x8f, 0x09, 0x58, 0xf8, 0x0c, 0x75, 0x32, 0x8f, 0xba, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3061 = { .name = "xdh_wei448_3061", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3061_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3061_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3061_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3061_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 478 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3062 for XDH, tcId is 479 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3062_peerpubkey[] = { 0x91, 0x82, 0x78, 0x4a, 0x25, 0x5f, 0x07, 0x27, 0xb6, 0xbc, 0x85, 0x92, 0xbd, 0xd5, 0x45, 0xdd, 0x49, 0x37, 0x10, 0xa1, 0x51, 0x45, 0xe8, 0x6e, 0x16, 0x08, 0x60, 0xc5, 0x27, 0xd9, 0x88, 0x47, 0x84, 0xd8, 0x47, 0x0a, 0x56, 0x31, 0xac, 0x8d, 0x8f, 0xe9, 0x83, 0xfa, 0x17, 0xec, 0x58, 0x5d, 0x2f, 0x3b, 0x35, 0xe6, 0x39, 0x7b, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_3062_ourpubkey[] = { 0xc1, 0xf1, 0xe8, 0xcb, 0xba, 0x38, 0x7f, 0x9a, 0x78, 0xf8, 0x0a, 0x73, 0xca, 0xe2, 0x82, 0x48, 0x97, 0x42, 0xa3, 0x7f, 0x7f, 0xe3, 0x5d, 0xe8, 0x37, 0x81, 0x4e, 0xe4, 0x02, 0xec, 0xc1, 0x44, 0x4d, 0xcd, 0x13, 0x21, 0x43, 0xb1, 0xea, 0x5e, 0xa4, 0x85, 0x15, 0x2e, 0x53, 0xba, 0xa2, 0x2c, 0xf7, 0xaf, 0xa1, 0x8a, 0x8e, 0x1a, 0x3f, 0x4d, }; static const unsigned char xdh_wei448_3062_privkey[] = { 0x88, 0xae, 0x17, 0x46, 0x81, 0xb5, 0xaa, 0x06, 0x60, 0x2b, 0xf4, 0x3b, 0x06, 0x0a, 0x91, 0x5f, 0xb3, 0xbc, 0xd7, 0x8f, 0xb2, 0x3f, 0x9d, 0xa1, 0xc0, 0x2e, 0x7f, 0x9a, 0xa8, 0x85, 0x02, 0x74, 0x6e, 0xea, 0x95, 0xb1, 0x1a, 0xef, 0x6f, 0x8a, 0xd1, 0x5e, 0x49, 0x2c, 0x3c, 0xfa, 0xfa, 0xd7, 0xc0, 0x04, 0xd5, 0x92, 0x0f, 0xe1, 0x27, 0x96, }; static const unsigned char xdh_wei448_3062_sharedsecret[] = { 0xfc, 0xed, 0xdd, 0xad, 0x35, 0x58, 0x60, 0x19, 0x33, 0xbe, 0x90, 0x34, 0x41, 0x08, 0xf3, 0xd5, 0x5a, 0x2b, 0x92, 0x4f, 0xc1, 0x6e, 0x7f, 0xdd, 0xb3, 0xe2, 0x6c, 0x6d, 0xd4, 0x1c, 0xd9, 0xf6, 0xc2, 0xf6, 0xed, 0x34, 0x2b, 0x10, 0x95, 0x30, 0x55, 0xf8, 0xe3, 0x8e, 0xd2, 0x6d, 0x3e, 0x95, 0x25, 0x98, 0xeb, 0x80, 0xd1, 0x97, 0xf1, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3062 = { .name = "xdh_wei448_3062", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3062_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3062_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3062_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3062_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 479 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3063 for XDH, tcId is 480 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3063_peerpubkey[] = { 0x83, 0x1e, 0x67, 0x3a, 0xaa, 0xc4, 0x62, 0xd0, 0xb8, 0xef, 0x04, 0x72, 0xe5, 0x64, 0xb0, 0xeb, 0x85, 0x81, 0x65, 0x24, 0x2a, 0x7c, 0x30, 0xef, 0x0d, 0x89, 0x7f, 0x39, 0xb1, 0x2e, 0xd0, 0xec, 0x34, 0x6e, 0xf2, 0x02, 0x49, 0x17, 0x2c, 0x7d, 0x60, 0x1b, 0x92, 0x81, 0x81, 0x50, 0x4a, 0x2a, 0xe8, 0xcf, 0x38, 0xc5, 0x72, 0x9a, 0x1e, 0xb4, }; static const unsigned char xdh_wei448_3063_ourpubkey[] = { 0xe2, 0xa9, 0xfd, 0xa2, 0x7e, 0x76, 0xaa, 0x27, 0x70, 0x60, 0xef, 0xac, 0xbe, 0xc4, 0x65, 0x8b, 0xdd, 0x53, 0x42, 0xe1, 0xb6, 0xa0, 0xd4, 0x2f, 0xb6, 0x9f, 0x86, 0x12, 0x1f, 0xe6, 0xfa, 0x5f, 0x05, 0x48, 0xf8, 0x0c, 0xc7, 0xe9, 0xce, 0x14, 0x01, 0x96, 0x42, 0xc9, 0xd5, 0x5d, 0x8c, 0x02, 0x66, 0x6d, 0x9e, 0x31, 0x93, 0x6f, 0x3c, 0x27, }; static const unsigned char xdh_wei448_3063_privkey[] = { 0xf8, 0x17, 0xa0, 0x22, 0x86, 0x23, 0xeb, 0xb3, 0x13, 0x1e, 0xc3, 0x3b, 0x41, 0xd9, 0x0c, 0x34, 0x7e, 0x9e, 0xfb, 0xe4, 0x6b, 0xb8, 0x10, 0x51, 0xa2, 0xfd, 0xa3, 0x0b, 0x49, 0x99, 0x3a, 0x8e, 0x88, 0x27, 0x2e, 0xc8, 0x32, 0x05, 0x22, 0x93, 0x0c, 0x20, 0x6a, 0x68, 0x4c, 0x77, 0xfd, 0xbd, 0x42, 0xce, 0xe2, 0xce, 0x47, 0x06, 0x6d, 0x93, }; static const unsigned char xdh_wei448_3063_sharedsecret[] = { 0xb5, 0x71, 0xd1, 0xba, 0x1b, 0x21, 0xa4, 0xf8, 0x22, 0x81, 0x4e, 0x47, 0x8e, 0x3c, 0xcd, 0x1f, 0x5d, 0x9d, 0xb8, 0x56, 0x3a, 0x9c, 0x14, 0x13, 0x81, 0xab, 0xd8, 0xc3, 0x96, 0x22, 0xd8, 0x66, 0xaf, 0x11, 0x1f, 0xdb, 0xd9, 0x4a, 0x97, 0xb1, 0x51, 0x78, 0x1d, 0x96, 0xfa, 0xd0, 0xd2, 0xf9, 0x21, 0x51, 0x9e, 0x77, 0x3e, 0x36, 0x79, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3063 = { .name = "xdh_wei448_3063", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3063_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3063_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3063_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3063_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 480 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3064 for XDH, tcId is 481 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3064_peerpubkey[] = { 0x7e, 0x2a, 0xf5, 0xdc, 0xfa, 0xc2, 0xb3, 0xb2, 0xa9, 0x94, 0x0c, 0x41, 0x10, 0x75, 0x9a, 0x35, 0x89, 0xc4, 0x6c, 0xdd, 0x3e, 0xc1, 0x34, 0x88, 0x50, 0x02, 0xe8, 0xef, 0xf0, 0x0a, 0x02, 0x15, 0xb7, 0x44, 0xe9, 0xf6, 0xf3, 0x6d, 0xa6, 0xe0, 0xa1, 0x98, 0xd8, 0x29, 0xae, 0xb0, 0xf7, 0xb0, 0x37, 0x62, 0x79, 0x92, 0x6c, 0x64, 0x6e, 0xbd, }; static const unsigned char xdh_wei448_3064_ourpubkey[] = { 0x67, 0x8e, 0xf2, 0xb6, 0x1b, 0xe2, 0xc9, 0x5d, 0xdb, 0x66, 0xf0, 0xaa, 0xc4, 0x25, 0x78, 0xd1, 0x4d, 0xe8, 0x76, 0x41, 0x7d, 0x9a, 0x57, 0xfd, 0xee, 0x08, 0xa7, 0x4d, 0x9d, 0xee, 0x63, 0xea, 0xa4, 0x3b, 0x8b, 0x87, 0x83, 0xf9, 0x04, 0x51, 0xec, 0xf1, 0x09, 0x6c, 0x8e, 0x0d, 0xdc, 0xed, 0x94, 0xbf, 0x64, 0xff, 0x72, 0xe3, 0xc9, 0x11, }; static const unsigned char xdh_wei448_3064_privkey[] = { 0xf0, 0x3e, 0x20, 0x68, 0x6c, 0xc7, 0xe1, 0xe6, 0x57, 0x6d, 0x6c, 0x69, 0x0a, 0x18, 0x88, 0x15, 0x4d, 0x30, 0x71, 0xef, 0x41, 0x4f, 0xdd, 0x1b, 0x1e, 0x9d, 0xdf, 0x6a, 0xf8, 0x93, 0xd1, 0x95, 0xc6, 0x2e, 0xcf, 0x66, 0xd9, 0xcf, 0xb7, 0x96, 0x00, 0xd5, 0xd6, 0x64, 0x52, 0x7d, 0x69, 0xfb, 0xcf, 0x26, 0x76, 0xb4, 0x87, 0x23, 0x9b, 0x9a, }; static const unsigned char xdh_wei448_3064_sharedsecret[] = { 0x26, 0xf7, 0x64, 0xe8, 0x74, 0x73, 0x3b, 0xf7, 0x54, 0x15, 0x72, 0xe0, 0xc5, 0x44, 0xf6, 0xe2, 0x2a, 0xac, 0x1d, 0x33, 0xd5, 0x46, 0x4f, 0x62, 0x9a, 0xdd, 0xd6, 0xca, 0x86, 0x0b, 0x1d, 0x7c, 0xad, 0x7c, 0x83, 0xd7, 0xac, 0x67, 0x46, 0x50, 0x87, 0x35, 0x95, 0xd5, 0xa2, 0x1f, 0xac, 0xc7, 0xa8, 0xcf, 0x2d, 0xfc, 0x24, 0x9e, 0x6d, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3064 = { .name = "xdh_wei448_3064", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3064_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3064_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3064_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3064_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 481 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3065 for XDH, tcId is 482 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3065_peerpubkey[] = { 0x60, 0xef, 0xab, 0xd2, 0x57, 0x7f, 0xdc, 0xbf, 0x51, 0x90, 0x9e, 0x08, 0x2a, 0x39, 0x53, 0x38, 0x5f, 0xa8, 0x00, 0x1b, 0xca, 0xb7, 0x33, 0x55, 0xca, 0x23, 0xb7, 0x25, 0xad, 0xd5, 0x59, 0x5c, 0x31, 0x81, 0x22, 0x13, 0x30, 0x3d, 0x3b, 0xa4, 0x25, 0x89, 0xa2, 0xad, 0xc2, 0x21, 0x30, 0x80, 0xb7, 0xdf, 0x73, 0x32, 0x29, 0x5a, 0xcd, 0xd1, }; static const unsigned char xdh_wei448_3065_ourpubkey[] = { 0xb2, 0x33, 0xb4, 0xad, 0x05, 0x56, 0x8c, 0x5c, 0xa1, 0xe6, 0x1d, 0x6b, 0x5a, 0xe0, 0x48, 0xd6, 0x5e, 0x0c, 0xb1, 0x82, 0x10, 0xcf, 0xf8, 0x49, 0x50, 0xdc, 0xf2, 0xbc, 0x85, 0xd3, 0x61, 0x60, 0xda, 0xc2, 0xfd, 0x7a, 0x3c, 0x16, 0x6e, 0xdc, 0x8f, 0x9c, 0x26, 0xdc, 0xb3, 0xcb, 0xd8, 0xd2, 0x10, 0x8c, 0x35, 0x54, 0x31, 0x3a, 0x8f, 0xdf, }; static const unsigned char xdh_wei448_3065_privkey[] = { 0xb0, 0x4c, 0x1f, 0xd2, 0xa1, 0xca, 0x66, 0xd4, 0x96, 0xbd, 0xd6, 0x64, 0x54, 0x38, 0x29, 0x18, 0x01, 0x50, 0x4e, 0xaa, 0x7b, 0xe8, 0x28, 0xe9, 0x25, 0x4c, 0xe7, 0x52, 0x08, 0x26, 0x7b, 0x13, 0xc7, 0x9e, 0xe8, 0xae, 0x8f, 0x38, 0x22, 0xba, 0x07, 0xd3, 0x4d, 0xcf, 0x23, 0xc0, 0x64, 0x2e, 0x7d, 0x66, 0x8b, 0x9e, 0xc1, 0xc0, 0x94, 0x99, }; static const unsigned char xdh_wei448_3065_sharedsecret[] = { 0xbe, 0x71, 0x31, 0x18, 0x7a, 0xeb, 0xfe, 0x8c, 0xa1, 0x03, 0xec, 0x44, 0xed, 0x43, 0xda, 0x73, 0xa8, 0x68, 0x14, 0x00, 0xfb, 0xcd, 0x5f, 0x3b, 0xae, 0x3e, 0xb0, 0x96, 0x24, 0x20, 0xe9, 0xfc, 0x9f, 0x1d, 0x2d, 0x3b, 0x0d, 0x51, 0xae, 0x9c, 0xc0, 0x99, 0x88, 0x3e, 0x44, 0xd8, 0xba, 0xe1, 0x4a, 0x91, 0x3a, 0x7a, 0x47, 0x15, 0x36, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_3065 = { .name = "xdh_wei448_3065", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3065_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3065_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3065_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3065_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 482 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3066 for XDH, tcId is 483 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3066_peerpubkey[] = { 0xe7, 0x14, 0xd2, 0xb2, 0x8b, 0x2b, 0x5e, 0xf5, 0x81, 0x5e, 0x8f, 0x3e, 0xd0, 0x55, 0x4a, 0x6e, 0x61, 0xed, 0x26, 0x86, 0x12, 0xa8, 0xf6, 0xa3, 0x76, 0x40, 0x23, 0xd0, 0x0c, 0x76, 0x09, 0x8a, 0x49, 0xea, 0xf8, 0xa5, 0xdd, 0xc4, 0x16, 0x4b, 0x1b, 0xef, 0x39, 0xab, 0x6d, 0xa8, 0x3a, 0x7e, 0xb6, 0x70, 0x3b, 0xaf, 0x3a, 0x57, 0x5d, 0xe9, }; static const unsigned char xdh_wei448_3066_ourpubkey[] = { 0x47, 0x5d, 0x70, 0x17, 0x2f, 0x2a, 0x9a, 0x10, 0xc4, 0xf3, 0x49, 0xae, 0xd4, 0xb3, 0xbf, 0x51, 0x17, 0xfa, 0x5d, 0xc9, 0xa2, 0xd1, 0x5b, 0xb7, 0x86, 0xef, 0x53, 0x85, 0x09, 0x58, 0xea, 0x44, 0x32, 0xf7, 0xff, 0x21, 0xcb, 0x14, 0x51, 0x3a, 0xac, 0x51, 0x12, 0x09, 0x68, 0x0d, 0xbf, 0x8f, 0x3e, 0x2c, 0xc2, 0x23, 0xc3, 0x8e, 0xdd, 0x5d, }; static const unsigned char xdh_wei448_3066_privkey[] = { 0x8c, 0x2a, 0xc1, 0xa1, 0x99, 0x01, 0xb8, 0x47, 0x16, 0x42, 0xf8, 0x59, 0xe0, 0x50, 0xf1, 0x86, 0x16, 0x32, 0x3f, 0x80, 0xc7, 0x57, 0xd0, 0x88, 0x6a, 0xfc, 0x64, 0x06, 0xa4, 0x42, 0x45, 0x44, 0x15, 0xc9, 0x58, 0x17, 0x82, 0x97, 0xca, 0xe5, 0xff, 0x2f, 0xf5, 0xc3, 0x45, 0x30, 0x8b, 0x10, 0xa3, 0x2b, 0xf8, 0x32, 0x69, 0xcd, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_3066_sharedsecret[] = { 0x00, 0x80, 0xc5, 0xad, 0x23, 0xc5, 0x62, 0x12, 0x92, 0x06, 0xab, 0x97, 0x4f, 0x05, 0x4e, 0x24, 0xd2, 0x39, 0xee, 0xa4, 0xdc, 0x4f, 0xcb, 0x54, 0x68, 0x03, 0x8b, 0x62, 0x98, 0xd3, 0xdc, 0x9d, 0x9f, 0xe5, 0x71, 0x73, 0xbd, 0x04, 0x0a, 0x5e, 0xa6, 0xd6, 0x21, 0x50, 0x97, 0xff, 0x88, 0x46, 0x95, 0x8c, 0xc5, 0x6d, 0xae, 0x88, 0x23, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3066 = { .name = "xdh_wei448_3066", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3066_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3066_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3066_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3066_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 483 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3067 for XDH, tcId is 484 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3067_peerpubkey[] = { 0x38, 0x94, 0x95, 0xc3, 0x5c, 0x2f, 0xf3, 0xf3, 0x67, 0xa5, 0x92, 0x68, 0xee, 0xc8, 0x13, 0x02, 0x56, 0x54, 0x2f, 0x5f, 0x66, 0xfc, 0x97, 0xbd, 0x49, 0x9e, 0xf7, 0x0b, 0x15, 0x65, 0xb6, 0xe7, 0x52, 0xb6, 0x84, 0xe1, 0x86, 0x49, 0x15, 0x29, 0x1f, 0xd5, 0x2a, 0xef, 0x62, 0x8f, 0x51, 0x15, 0x4d, 0x0c, 0xd8, 0x0b, 0x72, 0x10, 0xe1, 0x26, }; static const unsigned char xdh_wei448_3067_ourpubkey[] = { 0x49, 0x95, 0xf5, 0xc6, 0xe4, 0xf3, 0x74, 0x5f, 0xd1, 0xf7, 0x2e, 0xa1, 0x48, 0x0a, 0x62, 0x3c, 0xe5, 0x2e, 0x0c, 0x9d, 0x26, 0x26, 0x60, 0x97, 0x10, 0x5a, 0xc5, 0x30, 0x66, 0xfb, 0xf1, 0x4d, 0x38, 0xe5, 0x55, 0xc4, 0x51, 0xe9, 0xf4, 0x52, 0xef, 0x3b, 0x84, 0x00, 0xae, 0xa2, 0x18, 0x55, 0x34, 0x05, 0x70, 0x8d, 0xbf, 0xfc, 0x7f, 0x8c, }; static const unsigned char xdh_wei448_3067_privkey[] = { 0x78, 0xc8, 0xa7, 0xf5, 0xc5, 0x5c, 0x47, 0x55, 0x51, 0x7a, 0x6d, 0x67, 0x9b, 0x5b, 0x9e, 0xab, 0x69, 0x3b, 0xbb, 0x20, 0xb7, 0xc8, 0x7f, 0x0f, 0x14, 0x03, 0x70, 0x27, 0x89, 0xcf, 0xe0, 0x68, 0x42, 0x44, 0xc2, 0xf1, 0x9f, 0xd9, 0xdf, 0xf6, 0x7c, 0x95, 0x22, 0x88, 0x12, 0xa3, 0x08, 0x23, 0x7b, 0x4a, 0xb6, 0xaf, 0x23, 0xf0, 0xa3, 0x9a, }; static const unsigned char xdh_wei448_3067_sharedsecret[] = { 0xd5, 0x8f, 0xce, 0xfc, 0x77, 0x09, 0x28, 0x43, 0x0d, 0x62, 0x8f, 0x7f, 0x20, 0x24, 0x1f, 0x0c, 0x40, 0x18, 0x14, 0xe6, 0xfd, 0x8a, 0x54, 0xec, 0x27, 0x2b, 0x77, 0x9a, 0xc1, 0x5b, 0x08, 0xe6, 0x68, 0x96, 0x94, 0xd2, 0xda, 0xda, 0x97, 0x62, 0x05, 0x31, 0x42, 0x5d, 0x8e, 0x05, 0x29, 0xca, 0xb4, 0x0e, 0x80, 0x86, 0x5c, 0x33, 0x03, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3067 = { .name = "xdh_wei448_3067", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3067_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3067_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3067_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3067_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 484 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3068 for XDH, tcId is 485 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3068_peerpubkey[] = { 0x4a, 0xd6, 0x6b, 0x90, 0xa8, 0xbe, 0xb6, 0x03, 0x4b, 0xe2, 0x83, 0x8f, 0xf7, 0xad, 0x78, 0xad, 0xf8, 0x7c, 0xc8, 0xb8, 0xe5, 0xc6, 0x3a, 0x21, 0x1f, 0x55, 0x83, 0x45, 0x91, 0xff, 0x5f, 0x5e, 0x4f, 0x82, 0xfd, 0x10, 0xda, 0x0a, 0x70, 0x83, 0x6d, 0x3c, 0x7e, 0x3c, 0xee, 0xec, 0xb7, 0xd8, 0xc8, 0xf0, 0x2c, 0x51, 0xbd, 0xfe, 0x50, 0x3e, }; static const unsigned char xdh_wei448_3068_ourpubkey[] = { 0x21, 0xfb, 0xee, 0x0d, 0x14, 0x2e, 0xb0, 0xb5, 0xc1, 0x6a, 0x69, 0x16, 0xdd, 0xc8, 0xa5, 0x5f, 0x8d, 0x06, 0x7a, 0xb5, 0xa7, 0xe5, 0x5f, 0x63, 0x04, 0x04, 0x99, 0xc3, 0x46, 0x98, 0xde, 0xc8, 0xbb, 0x47, 0x98, 0xac, 0x05, 0x38, 0x95, 0xd7, 0x54, 0x39, 0x2c, 0xbe, 0xd1, 0xfb, 0xa8, 0x1f, 0x55, 0x7d, 0x01, 0x01, 0xb2, 0x72, 0xe4, 0xce, }; static const unsigned char xdh_wei448_3068_privkey[] = { 0x30, 0xf5, 0xbf, 0xc1, 0x6c, 0xd2, 0x35, 0x01, 0x71, 0x6a, 0x6c, 0x56, 0x6a, 0x13, 0xbe, 0xe3, 0x2b, 0x08, 0x2c, 0xdb, 0xb6, 0x2f, 0x09, 0x15, 0x9e, 0x3b, 0x57, 0x23, 0xcb, 0xf5, 0x72, 0xdb, 0xa4, 0x3f, 0xc4, 0xf4, 0x34, 0x3b, 0x9d, 0x0b, 0xb1, 0x84, 0xf1, 0xf8, 0xda, 0x11, 0x0d, 0x77, 0x94, 0xab, 0x63, 0xdf, 0x23, 0xcb, 0xcf, 0x96, }; static const unsigned char xdh_wei448_3068_sharedsecret[] = { 0xfb, 0xd6, 0xc5, 0x31, 0x3c, 0x11, 0x14, 0xa5, 0x05, 0x38, 0x2b, 0x68, 0xab, 0xe7, 0xd0, 0x79, 0x86, 0x43, 0xa3, 0x07, 0x05, 0x5f, 0x4b, 0x5a, 0xb9, 0x48, 0xf5, 0x0d, 0x7f, 0x36, 0xce, 0x20, 0x1b, 0x3f, 0x52, 0x2c, 0xfa, 0x34, 0xf0, 0xa0, 0x8d, 0x00, 0x88, 0x1b, 0x6d, 0x7a, 0x67, 0x88, 0xc8, 0x83, 0x19, 0x4e, 0xe1, 0x16, 0xe8, 0x72, }; static const wycheproof_xdh_test xdh_wei448_3068 = { .name = "xdh_wei448_3068", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3068_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3068_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3068_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3068_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 485 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3069 for XDH, tcId is 486 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3069_peerpubkey[] = { 0xca, 0x86, 0xee, 0x9b, 0x71, 0x86, 0x46, 0xba, 0x0c, 0x3e, 0x0e, 0x89, 0xf0, 0x6b, 0xbe, 0x08, 0xad, 0x34, 0xe3, 0xc2, 0x69, 0x82, 0x82, 0x61, 0x19, 0x0d, 0x05, 0xb2, 0x55, 0x0a, 0x4e, 0xb1, 0x7f, 0x9c, 0xe1, 0x4c, 0xbe, 0x0c, 0x95, 0xec, 0x99, 0xa5, 0xc9, 0x0c, 0x70, 0x71, 0xf2, 0xfd, 0xdc, 0x0b, 0xdb, 0x3b, 0xb2, 0xc0, 0x49, 0x71, }; static const unsigned char xdh_wei448_3069_ourpubkey[] = { 0xb0, 0xbc, 0x82, 0x95, 0x49, 0xc3, 0x42, 0xe0, 0xd0, 0x8a, 0xd4, 0xd4, 0x98, 0x95, 0x9d, 0xe6, 0x7f, 0xf7, 0xb3, 0xb1, 0x89, 0x22, 0xf7, 0xa5, 0x38, 0x88, 0xfa, 0x0c, 0x58, 0xb1, 0xb3, 0x6f, 0xce, 0xcc, 0x96, 0xec, 0xb0, 0x50, 0x84, 0x6f, 0xa3, 0x14, 0x24, 0xe5, 0x8b, 0xd1, 0x90, 0x0e, 0x04, 0x62, 0x61, 0x43, 0x8f, 0x14, 0xd2, 0x01, }; static const unsigned char xdh_wei448_3069_privkey[] = { 0x9c, 0x36, 0xb9, 0x4f, 0x80, 0xfb, 0x5a, 0x02, 0x5d, 0x61, 0xcc, 0x8f, 0x14, 0x38, 0xd9, 0x1e, 0xbc, 0x22, 0x2c, 0x34, 0x7e, 0xc6, 0xbd, 0xdc, 0x2e, 0x45, 0xbe, 0xda, 0x4a, 0xc1, 0x47, 0xb2, 0xa9, 0x1e, 0x74, 0x48, 0x12, 0x74, 0x89, 0xbc, 0x1b, 0x45, 0x45, 0x1b, 0xec, 0x84, 0x38, 0x89, 0xf3, 0x8f, 0xa4, 0x46, 0x7b, 0xe5, 0x7e, 0x9b, }; static const unsigned char xdh_wei448_3069_sharedsecret[] = { 0xda, 0xb7, 0x42, 0x1d, 0x74, 0x26, 0x92, 0x20, 0x00, 0x19, 0x34, 0x23, 0x5b, 0x2d, 0x3f, 0xe5, 0xdc, 0xf7, 0x57, 0x17, 0xb3, 0x80, 0xbe, 0x3b, 0xbf, 0xa9, 0x6a, 0x76, 0x52, 0x9e, 0xb9, 0x27, 0x09, 0xfd, 0xbc, 0xce, 0x5d, 0x30, 0x58, 0x3f, 0x5d, 0x9e, 0x99, 0x9b, 0xaa, 0x78, 0x81, 0x5b, 0x10, 0x30, 0x0d, 0x60, 0x99, 0x6b, 0x59, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_3069 = { .name = "xdh_wei448_3069", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3069_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3069_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3069_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3069_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 486 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3070 for XDH, tcId is 487 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3070_peerpubkey[] = { 0xdf, 0xc3, 0x85, 0x3b, 0xd4, 0x94, 0xac, 0x80, 0xbd, 0x25, 0x07, 0x0a, 0x7e, 0x90, 0xfd, 0x89, 0xa7, 0xbf, 0x29, 0x9b, 0x63, 0x97, 0xeb, 0x2a, 0x73, 0x3c, 0x7c, 0x64, 0x29, 0xba, 0x51, 0x0a, 0xf7, 0x42, 0x26, 0xb5, 0xad, 0x52, 0x08, 0xb7, 0x51, 0x3b, 0xbc, 0x53, 0x97, 0x80, 0x63, 0x73, 0x4e, 0x2e, 0x28, 0xe0, 0x2e, 0xee, 0x14, 0x76, }; static const unsigned char xdh_wei448_3070_ourpubkey[] = { 0xba, 0xc8, 0x2d, 0xd9, 0x42, 0x02, 0x60, 0xbb, 0x6b, 0xe1, 0x00, 0xd1, 0xf0, 0x76, 0x96, 0x73, 0x86, 0xf6, 0x05, 0x58, 0xcb, 0xef, 0xde, 0x77, 0x8d, 0xa9, 0xf7, 0xc8, 0xc3, 0xff, 0x70, 0xff, 0x38, 0xda, 0x10, 0x74, 0xaf, 0x39, 0x20, 0xec, 0xbd, 0xee, 0xa5, 0x6b, 0x2d, 0x17, 0x25, 0xac, 0xfe, 0x96, 0x3e, 0xee, 0xc6, 0x9a, 0x1b, 0x8d, }; static const unsigned char xdh_wei448_3070_privkey[] = { 0xb4, 0xd8, 0xc1, 0xbd, 0x4f, 0xe2, 0x23, 0x2b, 0xfd, 0x8f, 0x3a, 0x42, 0xe4, 0xf2, 0xc6, 0x07, 0x97, 0x64, 0x89, 0xa1, 0x81, 0x14, 0x9f, 0xbd, 0x0b, 0xa8, 0xe8, 0xed, 0x68, 0xc4, 0x4f, 0x78, 0x6d, 0x05, 0xeb, 0xe8, 0x90, 0xad, 0xab, 0x4b, 0x23, 0x32, 0x62, 0xed, 0x9c, 0x48, 0x2d, 0x84, 0xcf, 0xf4, 0x2f, 0xb8, 0xbc, 0x0e, 0x1a, 0x94, }; static const unsigned char xdh_wei448_3070_sharedsecret[] = { 0x46, 0x9d, 0x5e, 0x9e, 0x2b, 0xa6, 0x76, 0xe2, 0x47, 0xaa, 0x86, 0x2e, 0xa2, 0x9b, 0xbf, 0x2b, 0xa4, 0xf8, 0xa8, 0x50, 0x09, 0x8c, 0x10, 0x32, 0x0b, 0xf4, 0xa2, 0x86, 0xbd, 0xc0, 0x9c, 0x53, 0x13, 0x14, 0x85, 0xc2, 0xdc, 0x9c, 0x36, 0x63, 0xe7, 0x66, 0x10, 0x46, 0x8f, 0x13, 0x9b, 0x58, 0x6d, 0x61, 0xdd, 0xc9, 0x24, 0x22, 0x32, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_3070 = { .name = "xdh_wei448_3070", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3070_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3070_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3070_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3070_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 487 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3071 for XDH, tcId is 488 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3071_peerpubkey[] = { 0xee, 0xfb, 0xdd, 0xe8, 0x82, 0x1e, 0x5d, 0xb1, 0xb3, 0x0d, 0x73, 0xbc, 0x76, 0xbe, 0x3e, 0x18, 0xfc, 0x91, 0xf3, 0x49, 0x81, 0x16, 0x24, 0x3e, 0x9f, 0x86, 0xcc, 0xcd, 0xc9, 0x8c, 0xc7, 0x8b, 0x18, 0x93, 0x72, 0xab, 0x66, 0x96, 0xee, 0x18, 0xd2, 0xca, 0x74, 0x90, 0x10, 0x5a, 0xd0, 0x3b, 0x5f, 0x50, 0xc2, 0x97, 0x83, 0xab, 0x3a, 0x96, }; static const unsigned char xdh_wei448_3071_ourpubkey[] = { 0x92, 0xe0, 0x42, 0x34, 0xb9, 0xf6, 0x94, 0xab, 0x11, 0xe9, 0x5b, 0xd2, 0x56, 0xd0, 0x8b, 0x6c, 0x7b, 0xd2, 0x12, 0x05, 0x59, 0x5f, 0x3a, 0x0d, 0x70, 0x7e, 0x30, 0x09, 0xc6, 0x4f, 0x6b, 0xcd, 0x12, 0x8a, 0x6a, 0x2f, 0x44, 0xe5, 0x50, 0x52, 0x0d, 0x0a, 0x2c, 0xac, 0x67, 0xc6, 0x7a, 0x1e, 0x64, 0xc5, 0xad, 0xd3, 0x6b, 0x23, 0xa0, 0x85, }; static const unsigned char xdh_wei448_3071_privkey[] = { 0x08, 0x44, 0x42, 0xb7, 0x21, 0x82, 0xb7, 0xcc, 0x53, 0x21, 0xf6, 0x1f, 0x3c, 0xef, 0x93, 0x75, 0x14, 0xbd, 0xc1, 0x24, 0x60, 0x28, 0xa0, 0x2e, 0x8f, 0xc7, 0xf3, 0x06, 0x0d, 0x52, 0x8c, 0xc1, 0x34, 0xa5, 0x93, 0x85, 0xdd, 0x53, 0x4c, 0xe1, 0xe8, 0x2c, 0xef, 0x27, 0xcd, 0xb0, 0x0f, 0xae, 0x66, 0x43, 0xe3, 0xb2, 0x16, 0x7f, 0x1c, 0x9d, }; static const unsigned char xdh_wei448_3071_sharedsecret[] = { 0xe3, 0x01, 0x90, 0x8a, 0x8c, 0xb6, 0xd1, 0xd8, 0xef, 0x9c, 0x1c, 0x55, 0xe7, 0x27, 0x83, 0x90, 0x95, 0x07, 0x19, 0xd0, 0x89, 0xd9, 0x46, 0xca, 0x9d, 0x6e, 0x88, 0x2f, 0x8f, 0x91, 0x75, 0xc8, 0x4c, 0xad, 0xd4, 0xff, 0x2a, 0x7a, 0xbf, 0xd8, 0x04, 0xb5, 0xb7, 0x2f, 0x2a, 0x1d, 0xe7, 0x1b, 0x1a, 0x92, 0xaf, 0x20, 0xe1, 0x68, 0x07, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3071 = { .name = "xdh_wei448_3071", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3071_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3071_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3071_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3071_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 488 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3072 for XDH, tcId is 489 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3072_peerpubkey[] = { 0x54, 0x2c, 0xe8, 0x33, 0xd8, 0x48, 0x92, 0x09, 0x36, 0x23, 0xf9, 0x17, 0x4a, 0x45, 0x08, 0x80, 0xc1, 0x3a, 0x66, 0x1c, 0xa0, 0x2e, 0x44, 0x00, 0x26, 0x7d, 0xf6, 0x3d, 0x66, 0x1f, 0x6a, 0xc7, 0xa8, 0x5f, 0x0f, 0x7e, 0x06, 0x1e, 0x67, 0xb3, 0x9b, 0x7f, 0x25, 0x9e, 0xff, 0xf8, 0x04, 0xfe, 0xba, 0x6d, 0x05, 0x54, 0xe8, 0xc0, 0xf4, 0xfd, }; static const unsigned char xdh_wei448_3072_ourpubkey[] = { 0xfb, 0xd2, 0xfa, 0xda, 0x49, 0xb4, 0xdc, 0x73, 0xae, 0x5d, 0x37, 0x22, 0x5b, 0xbb, 0x2c, 0xb8, 0xb4, 0x6d, 0x19, 0x82, 0x83, 0x5f, 0x9a, 0xcd, 0x32, 0x3f, 0x5f, 0xaf, 0x8b, 0x97, 0x67, 0x1f, 0x51, 0x1e, 0x07, 0x80, 0x32, 0xba, 0x4d, 0x65, 0x3f, 0x07, 0xe9, 0xdd, 0x24, 0x9b, 0xa6, 0xf7, 0x54, 0x62, 0xda, 0xd4, 0xd0, 0xea, 0x6f, 0x2a, }; static const unsigned char xdh_wei448_3072_privkey[] = { 0xb8, 0x15, 0x64, 0x51, 0xd5, 0x83, 0xb5, 0x08, 0xd5, 0x26, 0x5b, 0x9c, 0x37, 0x3f, 0xbc, 0xa9, 0x6f, 0xb4, 0x77, 0x0d, 0x56, 0xb8, 0x28, 0x53, 0x4a, 0xfd, 0xba, 0x29, 0xd3, 0xcb, 0x9f, 0xf0, 0x20, 0x96, 0x94, 0xfa, 0xb2, 0x1c, 0xf9, 0xcf, 0x0a, 0x61, 0xbd, 0x49, 0x83, 0x60, 0x2c, 0xc3, 0x46, 0x7a, 0x3e, 0xe3, 0xbe, 0xb5, 0x3f, 0x96, }; static const unsigned char xdh_wei448_3072_sharedsecret[] = { 0x03, 0xe7, 0x90, 0x68, 0xc4, 0x0a, 0x41, 0x33, 0xc4, 0x90, 0xed, 0xb7, 0x03, 0xdd, 0x51, 0xf8, 0x96, 0x5a, 0xd5, 0xf5, 0x9a, 0xad, 0x1b, 0x04, 0xb3, 0xe1, 0x32, 0x77, 0x50, 0x74, 0x8e, 0x64, 0x81, 0xb0, 0xb6, 0x3e, 0x54, 0xcf, 0xe1, 0x01, 0xee, 0xb6, 0x48, 0xf9, 0x30, 0x7b, 0x09, 0xb0, 0xde, 0xc1, 0xa7, 0x47, 0x2f, 0xa5, 0x72, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3072 = { .name = "xdh_wei448_3072", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3072_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3072_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3072_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3072_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 489 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3073 for XDH, tcId is 490 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3073_peerpubkey[] = { 0x1e, 0xfd, 0xb8, 0x58, 0xaf, 0x19, 0x67, 0xc0, 0xe7, 0x42, 0xee, 0xbe, 0xe5, 0x63, 0x66, 0x7b, 0xfb, 0xc8, 0x96, 0x66, 0x60, 0x6e, 0x39, 0x5e, 0xcd, 0x39, 0x03, 0xb3, 0x92, 0x3b, 0x2a, 0x8f, 0x99, 0x44, 0xeb, 0x0d, 0x07, 0xfe, 0xbc, 0xe9, 0xdf, 0xe7, 0x04, 0x9a, 0xfc, 0x76, 0xb4, 0xfd, 0x1c, 0x47, 0xe9, 0x72, 0xe0, 0x57, 0x34, 0x2f, }; static const unsigned char xdh_wei448_3073_ourpubkey[] = { 0x0e, 0xc2, 0x78, 0xba, 0xde, 0xbc, 0x19, 0x73, 0xd2, 0x06, 0x86, 0x24, 0xb7, 0xe0, 0x28, 0x46, 0x4a, 0xa2, 0x68, 0x47, 0xd0, 0x37, 0xd2, 0xce, 0xd7, 0xa3, 0x4e, 0xb3, 0x81, 0xc0, 0x6d, 0x12, 0xbc, 0xa1, 0xe2, 0x35, 0x18, 0x60, 0x67, 0x96, 0x2b, 0x1f, 0x3d, 0x00, 0x54, 0x27, 0x2c, 0xe8, 0xc7, 0xf3, 0x9f, 0xcb, 0x4b, 0xce, 0x10, 0xc4, }; static const unsigned char xdh_wei448_3073_privkey[] = { 0x40, 0xbd, 0x45, 0x8c, 0xbc, 0x6b, 0xc8, 0x87, 0xd3, 0x48, 0xb4, 0xd5, 0x0a, 0xbf, 0x4c, 0xbf, 0x66, 0x50, 0xba, 0xbd, 0xca, 0x79, 0xd5, 0x46, 0x4b, 0x0b, 0xb3, 0x56, 0x7d, 0x6d, 0xc5, 0x46, 0x07, 0xcf, 0xc0, 0xef, 0xee, 0x28, 0xd0, 0x9e, 0x6f, 0xdc, 0x0c, 0x8e, 0xd4, 0xc6, 0x05, 0x0b, 0x85, 0xc9, 0x91, 0xcd, 0x5e, 0x67, 0x97, 0x9e, }; static const unsigned char xdh_wei448_3073_sharedsecret[] = { 0x6e, 0x24, 0xc3, 0x4c, 0x8a, 0x1b, 0x62, 0x69, 0x76, 0x62, 0x61, 0xfa, 0x57, 0x1f, 0x58, 0x32, 0x9f, 0x49, 0x55, 0xa8, 0x35, 0x5d, 0x8c, 0x64, 0x06, 0xc1, 0xe4, 0xf8, 0xe5, 0xeb, 0xfe, 0x3a, 0x7f, 0x6a, 0xc2, 0x03, 0x77, 0x92, 0x8e, 0x17, 0x01, 0x0c, 0xbc, 0x70, 0x6e, 0x55, 0x1a, 0xab, 0x8e, 0x8c, 0xbf, 0x85, 0xd2, 0xd1, 0xb0, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3073 = { .name = "xdh_wei448_3073", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3073_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3073_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3073_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3073_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 490 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3074 for XDH, tcId is 491 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3074_peerpubkey[] = { 0x8b, 0x87, 0x90, 0x5a, 0xda, 0x5e, 0x80, 0x16, 0x68, 0xca, 0xef, 0x67, 0x2d, 0xfe, 0x9d, 0xbb, 0xf5, 0xc1, 0x2a, 0x47, 0x0f, 0x2c, 0x0a, 0x3d, 0x17, 0x70, 0x13, 0x55, 0x5b, 0x1a, 0x94, 0xa7, 0x17, 0x12, 0xa4, 0xc8, 0x12, 0x09, 0xd1, 0x2f, 0x0b, 0x97, 0x43, 0x53, 0x2b, 0x01, 0x6f, 0x64, 0x1d, 0x7a, 0xd7, 0xc8, 0xd3, 0x6c, 0xd5, 0x42, }; static const unsigned char xdh_wei448_3074_ourpubkey[] = { 0xc0, 0x31, 0x6c, 0x77, 0x8d, 0x5d, 0x59, 0x0a, 0x51, 0x65, 0xa3, 0x33, 0x39, 0x1e, 0xe7, 0x4d, 0xa1, 0x7f, 0x67, 0x20, 0xea, 0x66, 0xcd, 0xc8, 0x56, 0x92, 0x8d, 0x1e, 0x51, 0xc8, 0xbe, 0x4f, 0x9a, 0x6b, 0xd5, 0x06, 0x4f, 0x53, 0xac, 0x8c, 0x39, 0xdc, 0x78, 0x02, 0x4e, 0x55, 0x5c, 0x56, 0x8a, 0xe4, 0x76, 0x37, 0x7f, 0x53, 0xb4, 0x38, }; static const unsigned char xdh_wei448_3074_privkey[] = { 0x8c, 0xcf, 0xeb, 0x69, 0x10, 0x24, 0x15, 0x9d, 0x42, 0xdc, 0x22, 0x2b, 0x45, 0x2d, 0x95, 0xac, 0xef, 0xf2, 0x91, 0xbb, 0x96, 0x1c, 0x85, 0x18, 0x6f, 0x65, 0x7f, 0x4f, 0xcc, 0x8a, 0xa0, 0x2e, 0xf8, 0xde, 0xe9, 0xca, 0x30, 0x61, 0xd3, 0xde, 0x6b, 0x90, 0xdf, 0x77, 0x34, 0xbd, 0x57, 0x2c, 0x2f, 0xf9, 0xcd, 0x02, 0x19, 0x02, 0x2e, 0x9e, }; static const unsigned char xdh_wei448_3074_sharedsecret[] = { 0x29, 0x96, 0xe9, 0xae, 0x7d, 0xfe, 0x36, 0x6c, 0x91, 0x9a, 0xc5, 0xf7, 0xff, 0x52, 0x6d, 0xe8, 0xf7, 0xa2, 0x43, 0xce, 0x0c, 0xdb, 0xc0, 0x26, 0x73, 0x3f, 0x9c, 0xb8, 0xe5, 0xfc, 0x48, 0x38, 0x5d, 0x0b, 0x19, 0x40, 0x10, 0x0e, 0xcb, 0x24, 0xa5, 0x37, 0x58, 0x76, 0xc8, 0xc3, 0xf3, 0x02, 0x7e, 0x13, 0x91, 0x05, 0x47, 0xe2, 0xa5, 0x24, }; static const wycheproof_xdh_test xdh_wei448_3074 = { .name = "xdh_wei448_3074", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3074_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3074_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3074_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3074_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 491 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3075 for XDH, tcId is 492 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3075_peerpubkey[] = { 0x26, 0x0a, 0x2e, 0xb9, 0x17, 0x3e, 0xf5, 0x9f, 0xab, 0x77, 0x45, 0xfc, 0xbf, 0x4a, 0x63, 0x96, 0xc7, 0x2e, 0xd2, 0x0e, 0x5b, 0x7c, 0x2b, 0x44, 0x4e, 0x1b, 0x47, 0x93, 0x05, 0x41, 0x51, 0xbf, 0xa4, 0x40, 0xbb, 0xf8, 0xf2, 0x52, 0xc1, 0xf4, 0xd3, 0xc8, 0xc7, 0xf5, 0x11, 0x79, 0x9c, 0x1a, 0xc1, 0x16, 0xdb, 0x83, 0xa4, 0xd1, 0x9f, 0x47, }; static const unsigned char xdh_wei448_3075_ourpubkey[] = { 0x21, 0xdc, 0xb5, 0x5a, 0x40, 0x1c, 0xd4, 0xe5, 0xba, 0x9e, 0x02, 0x38, 0xdb, 0xa5, 0x9a, 0x8d, 0xe6, 0xac, 0xd2, 0x2b, 0x78, 0x9d, 0x22, 0xbc, 0x1f, 0x88, 0xdd, 0x5e, 0x1b, 0x07, 0xf6, 0x7b, 0xc1, 0x05, 0x54, 0x36, 0xd2, 0x14, 0x47, 0x16, 0x46, 0x8e, 0x8a, 0x5e, 0xd4, 0x72, 0xc9, 0xdc, 0xc8, 0xdc, 0x5e, 0xf0, 0x6c, 0x53, 0x21, 0x38, }; static const unsigned char xdh_wei448_3075_privkey[] = { 0xac, 0xff, 0x53, 0xe5, 0x40, 0xfd, 0x03, 0x18, 0xc5, 0x25, 0x34, 0x7b, 0xf0, 0xee, 0x29, 0xe0, 0x82, 0x08, 0xb7, 0x81, 0x6a, 0x95, 0xd3, 0x5d, 0x92, 0x37, 0xea, 0x69, 0x1f, 0xe6, 0xb7, 0xce, 0xfe, 0x98, 0xb6, 0xd4, 0x34, 0x89, 0x1c, 0xf1, 0x32, 0x81, 0xb3, 0x1b, 0x59, 0xc9, 0x6b, 0x74, 0xd2, 0x13, 0xbb, 0x67, 0x85, 0xee, 0x8c, 0x95, }; static const unsigned char xdh_wei448_3075_sharedsecret[] = { 0xa9, 0xfe, 0xbf, 0x85, 0x14, 0x28, 0x9c, 0x54, 0xf3, 0x43, 0xe5, 0xe9, 0x61, 0x87, 0x2f, 0x7c, 0x89, 0x1c, 0x12, 0x4c, 0x36, 0x0f, 0xd3, 0xd6, 0x68, 0xec, 0xdf, 0x0c, 0xe0, 0x3b, 0x35, 0xdb, 0x95, 0x1b, 0x58, 0xb3, 0xfd, 0x11, 0x34, 0x93, 0x76, 0xbc, 0xe0, 0x9e, 0xd2, 0x75, 0xcd, 0x44, 0x2b, 0xa1, 0xc8, 0xcf, 0x7a, 0x26, 0xb9, 0x75, }; static const wycheproof_xdh_test xdh_wei448_3075 = { .name = "xdh_wei448_3075", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3075_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3075_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3075_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3075_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 492 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3076 for XDH, tcId is 493 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3076_peerpubkey[] = { 0xc3, 0xb3, 0xd7, 0xb4, 0x21, 0xd3, 0xfd, 0x0a, 0x6d, 0x0f, 0x3c, 0xce, 0xbc, 0xcd, 0xc3, 0x45, 0x0f, 0xdf, 0x0b, 0x31, 0xd1, 0x8c, 0x2f, 0x10, 0xf3, 0xba, 0xe7, 0xc8, 0x0f, 0xf5, 0x88, 0x23, 0xd3, 0x15, 0x79, 0xbe, 0x9a, 0x26, 0xda, 0x99, 0x38, 0x1a, 0x3b, 0x61, 0x37, 0x0f, 0xb0, 0x7f, 0x1e, 0xe4, 0xac, 0xf6, 0x8c, 0x76, 0x15, 0x5a, }; static const unsigned char xdh_wei448_3076_ourpubkey[] = { 0x4e, 0x8d, 0xbe, 0x76, 0x29, 0xba, 0x63, 0x75, 0x13, 0x34, 0x32, 0xb0, 0x64, 0x62, 0xd9, 0x76, 0x1b, 0x4c, 0xba, 0xac, 0x25, 0xb7, 0x68, 0xaf, 0x17, 0xbf, 0x98, 0xf0, 0x2f, 0xd3, 0xbc, 0xf4, 0x5c, 0x4a, 0x5d, 0xac, 0xb1, 0x5d, 0x9a, 0x16, 0x79, 0x45, 0x3f, 0xff, 0xf9, 0x2e, 0xc1, 0x4d, 0x81, 0x1f, 0x94, 0xfc, 0xe4, 0x12, 0xd4, 0xfa, }; static const unsigned char xdh_wei448_3076_privkey[] = { 0x18, 0x5b, 0xd9, 0x68, 0x16, 0x0e, 0x59, 0x4c, 0x70, 0xe8, 0x87, 0xfd, 0xee, 0x1d, 0x11, 0x25, 0x2c, 0x4e, 0x10, 0x94, 0xc3, 0x29, 0x08, 0x0b, 0xf6, 0xd6, 0x2d, 0x41, 0xf6, 0x6b, 0xb2, 0x7f, 0xd1, 0x94, 0xd8, 0xd9, 0x94, 0x17, 0xbc, 0x78, 0xbf, 0xae, 0x79, 0x54, 0xd0, 0x17, 0xee, 0x7c, 0xbf, 0x82, 0xd5, 0x71, 0x13, 0xde, 0xe5, 0x9d, }; static const unsigned char xdh_wei448_3076_sharedsecret[] = { 0x46, 0x5f, 0xaa, 0x07, 0x90, 0xf7, 0x5d, 0xbc, 0x3c, 0x5a, 0x27, 0xf8, 0xca, 0x78, 0x5b, 0x41, 0xa2, 0xf6, 0x79, 0xd6, 0x49, 0x91, 0xfc, 0xd2, 0xb8, 0xd1, 0x71, 0x0a, 0x1f, 0x17, 0x05, 0xfb, 0x1d, 0xa2, 0xfa, 0x1b, 0x6e, 0x6b, 0xe7, 0xa4, 0x0f, 0xa6, 0xc2, 0x93, 0x2c, 0x57, 0x6b, 0x61, 0xc7, 0x29, 0x49, 0x93, 0xc1, 0x77, 0xd4, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3076 = { .name = "xdh_wei448_3076", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3076_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3076_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3076_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3076_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 493 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3077 for XDH, tcId is 494 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3077_peerpubkey[] = { 0x43, 0x8c, 0x6c, 0x66, 0x1f, 0xd8, 0xd3, 0x32, 0xe5, 0x63, 0xc6, 0xc0, 0x56, 0x10, 0xe1, 0xe3, 0xae, 0x21, 0xba, 0x59, 0x9b, 0x88, 0xd2, 0xdc, 0x70, 0xe6, 0x5f, 0x3f, 0xb7, 0x66, 0x45, 0x65, 0x5f, 0x01, 0x7e, 0xa4, 0x77, 0x0e, 0x6f, 0xfd, 0xdd, 0xc6, 0x4c, 0x12, 0xe0, 0x68, 0x68, 0x1e, 0xbc, 0xc5, 0x42, 0x5f, 0xde, 0xfa, 0xdd, 0x64, }; static const unsigned char xdh_wei448_3077_ourpubkey[] = { 0xd2, 0xf2, 0x9a, 0x2d, 0x5e, 0xba, 0xc9, 0x4e, 0x61, 0x26, 0xab, 0x78, 0x8f, 0x70, 0xcb, 0xa8, 0xa8, 0xec, 0x48, 0x7a, 0x08, 0x33, 0x70, 0xda, 0xee, 0xf7, 0x73, 0xa4, 0x89, 0x75, 0xff, 0x74, 0xc0, 0x09, 0x9a, 0x20, 0xa2, 0x29, 0xfd, 0xea, 0xf8, 0x2e, 0x3b, 0xa3, 0x9c, 0x66, 0x8a, 0xe7, 0xdb, 0x38, 0x31, 0x6e, 0xca, 0xf2, 0xb3, 0x3f, }; static const unsigned char xdh_wei448_3077_privkey[] = { 0x84, 0x10, 0xd8, 0xad, 0xc4, 0x9f, 0xef, 0x7d, 0xa6, 0x96, 0x68, 0xc4, 0x12, 0x34, 0xe1, 0x3e, 0x61, 0xec, 0x56, 0x15, 0x4a, 0x36, 0x76, 0x61, 0x46, 0xc6, 0x4b, 0xf7, 0xac, 0xa0, 0xda, 0x4f, 0xc8, 0x66, 0x7d, 0xf9, 0xe0, 0x38, 0x34, 0x3b, 0x52, 0x6a, 0x15, 0x79, 0x2a, 0x9c, 0x56, 0x2f, 0xe1, 0xb3, 0x4d, 0x20, 0x05, 0x60, 0x71, 0x94, }; static const unsigned char xdh_wei448_3077_sharedsecret[] = { 0x88, 0xd5, 0xa6, 0x89, 0x1b, 0x45, 0xc4, 0x14, 0x63, 0xe5, 0xb8, 0x9d, 0x1a, 0xc0, 0x75, 0xd6, 0x06, 0x83, 0x57, 0x2c, 0x68, 0x07, 0x21, 0x60, 0xc1, 0x46, 0x76, 0x65, 0xdc, 0xb9, 0xa3, 0xac, 0x23, 0x52, 0x9e, 0x19, 0x95, 0xbb, 0xb0, 0x01, 0x21, 0x8e, 0x15, 0x7d, 0x7a, 0x60, 0xab, 0x53, 0x78, 0x65, 0xe5, 0x4b, 0x05, 0xee, 0x50, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_3077 = { .name = "xdh_wei448_3077", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3077_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3077_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3077_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3077_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 494 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3078 for XDH, tcId is 495 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3078_peerpubkey[] = { 0x97, 0x9b, 0x14, 0x70, 0x77, 0x68, 0x6b, 0x9a, 0x16, 0xec, 0x07, 0x38, 0x68, 0x41, 0xb9, 0x4e, 0xc1, 0xe8, 0x1d, 0x73, 0x31, 0xd7, 0x7b, 0xd4, 0xd6, 0xc4, 0x74, 0xb9, 0x71, 0x21, 0x96, 0x69, 0xf9, 0xad, 0x58, 0xe3, 0x01, 0x71, 0xb0, 0xce, 0x41, 0xf3, 0x7a, 0x4c, 0x1e, 0xac, 0x09, 0xf2, 0x0e, 0xfe, 0x17, 0x06, 0x9c, 0x7d, 0x9c, 0xca, }; static const unsigned char xdh_wei448_3078_ourpubkey[] = { 0x13, 0xf2, 0x54, 0x2d, 0xf4, 0x09, 0xad, 0x52, 0x88, 0x03, 0x53, 0x47, 0x63, 0x36, 0x6f, 0xe3, 0x92, 0x07, 0xf4, 0x96, 0xec, 0xcf, 0x2b, 0x4e, 0xbe, 0xa7, 0xd8, 0x98, 0x73, 0x17, 0x49, 0xd5, 0x8b, 0x14, 0xd6, 0xc3, 0x36, 0xfe, 0x37, 0x0e, 0xe3, 0x7b, 0xc9, 0xac, 0xf3, 0xcd, 0x7f, 0x60, 0x88, 0x66, 0xe6, 0xf8, 0x79, 0x1d, 0xd8, 0x42, }; static const unsigned char xdh_wei448_3078_privkey[] = { 0x44, 0x5e, 0xa2, 0xcf, 0x06, 0x62, 0x62, 0xed, 0x86, 0xf8, 0xe7, 0x58, 0x62, 0x3e, 0x12, 0x55, 0x2f, 0x39, 0x28, 0xdf, 0x35, 0xb8, 0x1a, 0xdf, 0xb5, 0x3f, 0x16, 0xfa, 0xaf, 0x4d, 0xf4, 0xc8, 0x99, 0x89, 0xcb, 0xde, 0xc7, 0x5b, 0x0b, 0x73, 0x2f, 0xd0, 0xae, 0x75, 0x62, 0xec, 0x1f, 0xa0, 0x51, 0x71, 0xa3, 0x0d, 0xc6, 0xbd, 0x04, 0x90, }; static const unsigned char xdh_wei448_3078_sharedsecret[] = { 0x2d, 0x6c, 0x09, 0x06, 0xf8, 0x43, 0x34, 0x92, 0x91, 0xe6, 0x84, 0x69, 0x66, 0x04, 0xa4, 0x61, 0xd9, 0x08, 0x60, 0x3f, 0x7f, 0x1c, 0x7e, 0x9c, 0xdb, 0x49, 0x2b, 0xe4, 0xc2, 0x57, 0xe1, 0xd6, 0x55, 0xc5, 0xca, 0x42, 0x0f, 0xbb, 0x6b, 0x25, 0xd1, 0x17, 0xeb, 0xeb, 0xbb, 0x0d, 0xb7, 0x36, 0x7e, 0x13, 0xe0, 0x91, 0x64, 0xe1, 0x5a, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3078 = { .name = "xdh_wei448_3078", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3078_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3078_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3078_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3078_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 495 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3079 for XDH, tcId is 496 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3079_peerpubkey[] = { 0x86, 0x18, 0xd3, 0xf8, 0x3e, 0xa3, 0x1d, 0xdf, 0x84, 0xa8, 0x01, 0xa4, 0x3c, 0xe2, 0x2a, 0x64, 0x65, 0x0a, 0xa3, 0x35, 0x1e, 0xc4, 0xce, 0x08, 0xad, 0x0e, 0xf4, 0x53, 0x9a, 0x86, 0x37, 0x24, 0x06, 0x33, 0x24, 0x95, 0x20, 0x98, 0x0c, 0x67, 0x24, 0x47, 0x8c, 0x00, 0xbb, 0xe6, 0x31, 0xff, 0x60, 0x38, 0x48, 0x9e, 0x8d, 0x53, 0xd0, 0xd7, }; static const unsigned char xdh_wei448_3079_ourpubkey[] = { 0x3c, 0x0c, 0xeb, 0x65, 0xce, 0x96, 0xd5, 0x5b, 0x6d, 0xec, 0x2e, 0x88, 0x1c, 0x87, 0x12, 0xdf, 0xfb, 0x7c, 0xef, 0x9e, 0xed, 0x1d, 0x25, 0x0f, 0xe4, 0x5a, 0x9f, 0xa1, 0x6b, 0x76, 0xa4, 0x90, 0x65, 0x75, 0xea, 0xe2, 0x20, 0xc7, 0x20, 0x74, 0xb1, 0xb1, 0xd4, 0xc3, 0x0a, 0x0f, 0x24, 0xf5, 0x3c, 0x82, 0xbe, 0x58, 0xe5, 0x5a, 0xed, 0xf8, }; static const unsigned char xdh_wei448_3079_privkey[] = { 0x98, 0x11, 0x3c, 0x01, 0x90, 0x8a, 0xf1, 0x7d, 0xbe, 0xf2, 0x33, 0xff, 0x82, 0xe1, 0xcc, 0x9c, 0x11, 0xfa, 0xb0, 0x96, 0x05, 0x63, 0xc1, 0x3a, 0x73, 0x3a, 0x3a, 0x91, 0xbd, 0xde, 0xf1, 0x9d, 0xc7, 0xc7, 0x29, 0x0d, 0x5b, 0x34, 0x1c, 0x66, 0xd9, 0x39, 0x1b, 0xd6, 0xca, 0xac, 0x71, 0xdc, 0xb6, 0x89, 0x23, 0x43, 0x37, 0x8f, 0x47, 0x90, }; static const unsigned char xdh_wei448_3079_sharedsecret[] = { 0x30, 0x42, 0xf8, 0x85, 0x96, 0x6b, 0x30, 0x5b, 0xf6, 0x4f, 0x92, 0x9f, 0xe6, 0x61, 0xc1, 0x4e, 0xfc, 0x7a, 0x2a, 0xdb, 0x48, 0x32, 0x57, 0x59, 0xfc, 0x96, 0xfe, 0xff, 0x95, 0xfd, 0x9c, 0x03, 0x1a, 0xcf, 0xf0, 0x42, 0x00, 0xd6, 0x66, 0x1d, 0x4a, 0xa1, 0x8d, 0x0e, 0x1e, 0xfa, 0x8f, 0x63, 0x72, 0x0d, 0x29, 0xbe, 0x55, 0x91, 0x32, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3079 = { .name = "xdh_wei448_3079", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3079_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3079_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3079_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3079_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 496 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3080 for XDH, tcId is 497 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3080_peerpubkey[] = { 0x95, 0xcb, 0x9c, 0x89, 0x22, 0x1c, 0x71, 0xca, 0x4d, 0x0f, 0x45, 0x1b, 0xf9, 0x44, 0x3b, 0xd3, 0xac, 0x79, 0x30, 0xba, 0xe5, 0xa1, 0xc4, 0xf0, 0x5d, 0x7d, 0x4d, 0x7c, 0x4e, 0xaf, 0x23, 0xa1, 0x5e, 0xca, 0x56, 0x30, 0x21, 0xa6, 0xa8, 0x00, 0x1e, 0x78, 0x99, 0x99, 0xfe, 0xeb, 0xa5, 0x5a, 0x4f, 0x2b, 0x65, 0xd3, 0x63, 0x54, 0xf5, 0xf8, }; static const unsigned char xdh_wei448_3080_ourpubkey[] = { 0x98, 0xb1, 0xf8, 0x61, 0x82, 0xa9, 0x36, 0x3a, 0xc1, 0x9a, 0xa8, 0x47, 0x49, 0xc5, 0x84, 0x97, 0xa9, 0x39, 0xac, 0x43, 0x5d, 0xfb, 0x47, 0x41, 0x73, 0x48, 0x05, 0x62, 0x20, 0x6b, 0x7b, 0x8d, 0xcd, 0x16, 0xf4, 0x7b, 0x72, 0x07, 0x2e, 0x0f, 0xd2, 0x11, 0x18, 0xf8, 0x3a, 0x63, 0xbb, 0x56, 0x7b, 0x6f, 0xb4, 0xac, 0x6c, 0x64, 0x88, 0xa5, }; static const unsigned char xdh_wei448_3080_privkey[] = { 0x88, 0x0e, 0x5c, 0x31, 0xe1, 0x09, 0x20, 0x8c, 0xf6, 0xea, 0xb1, 0x13, 0xe6, 0x21, 0x78, 0x61, 0x1e, 0xd8, 0xa6, 0xca, 0x8e, 0x77, 0x60, 0x23, 0x2d, 0xc8, 0x25, 0x88, 0xc5, 0x8f, 0xe7, 0xc0, 0x9c, 0xcf, 0x9e, 0x83, 0x95, 0x90, 0x6e, 0x3c, 0x49, 0xb0, 0x10, 0x35, 0x8a, 0x34, 0x3a, 0x8f, 0x38, 0xd7, 0x2d, 0x34, 0x90, 0x24, 0xb6, 0x9b, }; static const unsigned char xdh_wei448_3080_sharedsecret[] = { 0xf6, 0x58, 0xf2, 0xde, 0xe9, 0xe1, 0x8a, 0x7a, 0x35, 0x10, 0x67, 0xe1, 0xc1, 0xb9, 0xce, 0xd8, 0xd7, 0x24, 0x4c, 0x73, 0x84, 0x55, 0x30, 0xa2, 0xa8, 0x0d, 0xa8, 0xaa, 0xe7, 0x40, 0x08, 0x20, 0x29, 0xbb, 0x63, 0xda, 0xee, 0xc6, 0xf7, 0x89, 0x50, 0x6b, 0x7a, 0x4e, 0x2f, 0xa3, 0xe2, 0x7b, 0x74, 0x31, 0x3c, 0x41, 0x4b, 0xe9, 0xf5, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3080 = { .name = "xdh_wei448_3080", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3080_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3080_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3080_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3080_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 497 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3081 for XDH, tcId is 498 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3081_peerpubkey[] = { 0x25, 0x2c, 0x8c, 0xb1, 0x28, 0x33, 0xa8, 0xe3, 0x8f, 0xbf, 0xb4, 0x2f, 0xb2, 0x3f, 0xa7, 0x0b, 0x96, 0x3a, 0x70, 0x25, 0xf3, 0x98, 0xe7, 0xc6, 0x3c, 0x02, 0xd9, 0xf0, 0x06, 0x33, 0xd0, 0xe7, 0xbb, 0x4a, 0xb6, 0xdd, 0x63, 0x32, 0x39, 0x7b, 0xa4, 0xfe, 0xf1, 0xde, 0xcd, 0x28, 0x7c, 0x3d, 0xdb, 0x8c, 0xd5, 0xc3, 0x8d, 0xd1, 0x4e, 0x54, }; static const unsigned char xdh_wei448_3081_ourpubkey[] = { 0x60, 0xd6, 0x1a, 0x31, 0x99, 0x2c, 0x18, 0x74, 0xa6, 0x5e, 0x96, 0x12, 0x36, 0x0f, 0xff, 0x56, 0x45, 0x80, 0xae, 0xac, 0xea, 0xe6, 0xaf, 0xc0, 0xc4, 0x45, 0x36, 0xbd, 0xde, 0xb2, 0xac, 0x5d, 0xe5, 0xac, 0x0d, 0xf0, 0xe6, 0xc7, 0x4d, 0x93, 0x61, 0x18, 0x7a, 0x4d, 0xa7, 0x91, 0x28, 0xe1, 0x63, 0xa2, 0xba, 0x89, 0x75, 0x31, 0x0c, 0x26, }; static const unsigned char xdh_wei448_3081_privkey[] = { 0xe4, 0x89, 0x48, 0xda, 0x83, 0x5c, 0x46, 0x60, 0x02, 0xce, 0x6b, 0xdd, 0x71, 0xb3, 0x8d, 0x78, 0x59, 0xa3, 0x34, 0x1d, 0xd3, 0xc4, 0xf1, 0x8a, 0x9b, 0x9b, 0xf8, 0x6f, 0xb0, 0xc9, 0xb4, 0x9a, 0x6d, 0x61, 0x0f, 0xbb, 0x7a, 0x97, 0x5d, 0x35, 0x35, 0x5c, 0xb2, 0x77, 0x0b, 0x04, 0x9a, 0xc7, 0x1c, 0x79, 0x17, 0x2a, 0x14, 0xe2, 0xe1, 0x9f, }; static const unsigned char xdh_wei448_3081_sharedsecret[] = { 0x2b, 0xf5, 0xa3, 0xd3, 0x55, 0xee, 0x3a, 0x1a, 0x41, 0x91, 0x88, 0xb7, 0x1b, 0x12, 0x3f, 0x5f, 0x55, 0x3b, 0x94, 0x43, 0x9b, 0x76, 0x29, 0x5d, 0xb7, 0xcd, 0x14, 0xe3, 0xa7, 0x8a, 0x96, 0xcc, 0xa1, 0xee, 0xba, 0xaf, 0x7f, 0x5a, 0x67, 0x94, 0xed, 0x44, 0x03, 0xa4, 0x12, 0xe0, 0xe0, 0x83, 0x63, 0x53, 0x4c, 0x27, 0xca, 0xb4, 0xdd, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3081 = { .name = "xdh_wei448_3081", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3081_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3081_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3081_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3081_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3082 for XDH, tcId is 499 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3082_peerpubkey[] = { 0x91, 0xdd, 0xa7, 0xe2, 0xb2, 0xc0, 0x28, 0x92, 0x8b, 0x9a, 0x11, 0x15, 0x1c, 0x30, 0x38, 0x2a, 0x2f, 0x38, 0xf1, 0xee, 0xbf, 0x9f, 0x13, 0x3f, 0x32, 0xf1, 0x3f, 0x58, 0xc6, 0x70, 0x31, 0xad, 0x13, 0x44, 0x77, 0x13, 0x19, 0xe0, 0x1f, 0x47, 0xfb, 0x44, 0xfe, 0x0f, 0x33, 0x6f, 0xb1, 0xdb, 0xb9, 0x39, 0xa3, 0x68, 0xa2, 0x23, 0xfd, 0x89, }; static const unsigned char xdh_wei448_3082_ourpubkey[] = { 0x94, 0x96, 0xfe, 0xd4, 0x1b, 0x7b, 0x3d, 0x91, 0x66, 0x09, 0xd3, 0x41, 0x22, 0x5e, 0xda, 0x1c, 0x23, 0x91, 0xf4, 0x2c, 0x1c, 0x6d, 0x6c, 0xf7, 0x11, 0x6e, 0x8f, 0x9c, 0xf1, 0x50, 0x9b, 0x9a, 0x52, 0x6c, 0x75, 0xc7, 0x20, 0x53, 0xf6, 0x7f, 0x8d, 0xa2, 0x8a, 0x00, 0xee, 0x57, 0x8d, 0x78, 0xbe, 0x35, 0x5a, 0x5d, 0x07, 0x44, 0x77, 0x75, }; static const unsigned char xdh_wei448_3082_privkey[] = { 0x5c, 0x7f, 0x46, 0x8a, 0xdd, 0x25, 0x3a, 0xb3, 0xa1, 0x12, 0x6d, 0xd8, 0xa9, 0x75, 0xcc, 0xb7, 0xf0, 0x97, 0xf7, 0xda, 0x49, 0x66, 0x9b, 0x54, 0x46, 0x7b, 0x01, 0x54, 0x55, 0x12, 0x5c, 0xfb, 0xbf, 0x70, 0x1a, 0x99, 0x21, 0x2b, 0xb3, 0x59, 0x45, 0x4a, 0x0c, 0x99, 0x5f, 0x10, 0x60, 0x07, 0x08, 0x0a, 0x43, 0x36, 0x3b, 0x9d, 0x51, 0x99, }; static const unsigned char xdh_wei448_3082_sharedsecret[] = { 0x9b, 0x74, 0x10, 0x08, 0x71, 0x86, 0x56, 0xf0, 0xcc, 0x1b, 0xd0, 0x34, 0x7b, 0x3d, 0x36, 0x38, 0x40, 0xab, 0xd4, 0x6c, 0x4e, 0x59, 0xe9, 0xf5, 0x45, 0x4d, 0x1b, 0xea, 0x24, 0xe1, 0x7a, 0x84, 0x24, 0x59, 0xfe, 0x45, 0x1c, 0xe7, 0x18, 0xd9, 0x11, 0xe3, 0x79, 0x36, 0x47, 0xa5, 0x44, 0x5b, 0xb4, 0xef, 0x96, 0x7e, 0x03, 0x6b, 0x6c, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_3082 = { .name = "xdh_wei448_3082", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3082_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3082_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3082_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3082_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3083 for XDH, tcId is 500 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3083_peerpubkey[] = { 0x89, 0x73, 0x52, 0x9d, 0x6d, 0xd9, 0xc3, 0xd1, 0xe5, 0xf5, 0xfb, 0x94, 0xa0, 0x27, 0xa8, 0x8e, 0x1c, 0xd5, 0xb9, 0xd6, 0x69, 0xa4, 0x98, 0xbb, 0x43, 0xa2, 0xbc, 0x6a, 0xe1, 0x40, 0xe9, 0x98, 0x31, 0x9f, 0xc3, 0xfd, 0x35, 0x4f, 0x77, 0xb9, 0x4e, 0x67, 0x79, 0x2a, 0x25, 0x94, 0x6c, 0x3b, 0x54, 0x46, 0x61, 0x6f, 0xc8, 0x67, 0x1d, 0xfc, }; static const unsigned char xdh_wei448_3083_ourpubkey[] = { 0xcf, 0xce, 0x6c, 0xfb, 0x71, 0x59, 0xf2, 0x8f, 0x62, 0x25, 0x98, 0x0a, 0x8e, 0x30, 0x9e, 0x35, 0x1d, 0x6c, 0xca, 0x10, 0x47, 0x8a, 0xdb, 0x8f, 0xdd, 0x74, 0x28, 0x88, 0xf7, 0x63, 0xba, 0xec, 0x21, 0x8c, 0xb5, 0x94, 0xcc, 0xc9, 0xe7, 0x13, 0x33, 0xd0, 0x95, 0xf2, 0x25, 0x50, 0x3f, 0x19, 0x97, 0x96, 0x11, 0xb8, 0x55, 0x23, 0x91, 0x67, }; static const unsigned char xdh_wei448_3083_privkey[] = { 0xac, 0xcb, 0xaa, 0x63, 0x4a, 0x2b, 0xa6, 0x89, 0x89, 0xc5, 0x70, 0xa4, 0x17, 0x29, 0x41, 0x47, 0x16, 0x93, 0xbb, 0xf2, 0xcd, 0x5b, 0xf7, 0x1e, 0x23, 0xc0, 0x1a, 0x47, 0xfa, 0xba, 0xfb, 0x4f, 0xd2, 0xe1, 0x81, 0x4e, 0x9d, 0xd7, 0xbe, 0xbf, 0x45, 0x37, 0x1a, 0xed, 0x46, 0x40, 0xa0, 0x41, 0x5b, 0xc1, 0xec, 0xfc, 0xf9, 0x95, 0x1a, 0x9d, }; static const unsigned char xdh_wei448_3083_sharedsecret[] = { 0xd0, 0xdb, 0x13, 0x6f, 0x5f, 0xf5, 0xd8, 0x23, 0x4b, 0x5d, 0x0e, 0xc2, 0x3c, 0xc4, 0xdb, 0xba, 0x27, 0xd4, 0xa8, 0x81, 0xbc, 0x97, 0x3c, 0x50, 0x22, 0x42, 0x81, 0x8e, 0x9e, 0x6b, 0x31, 0x31, 0x0c, 0xe9, 0x9f, 0xd7, 0x95, 0x0e, 0xa3, 0x84, 0x2d, 0xef, 0x84, 0x2d, 0xbd, 0x63, 0xcd, 0xfa, 0xa1, 0x63, 0x77, 0x86, 0x6f, 0xdf, 0xc8, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_3083 = { .name = "xdh_wei448_3083", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3083_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3083_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3083_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3083_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3084 for XDH, tcId is 501 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3084_peerpubkey[] = { 0x93, 0xa8, 0xcf, 0x1a, 0xf7, 0xa6, 0x2d, 0x23, 0x95, 0x57, 0xea, 0x30, 0x22, 0x02, 0xa5, 0x07, 0xf7, 0x6a, 0xfe, 0x05, 0xd4, 0x15, 0x1a, 0x67, 0xaf, 0x47, 0x3e, 0x64, 0x79, 0xe5, 0x55, 0x86, 0x05, 0x71, 0x50, 0xa2, 0x9b, 0xe9, 0x5d, 0x12, 0x08, 0xb9, 0x93, 0xc9, 0x97, 0xc6, 0xa7, 0x75, 0xcc, 0x0b, 0x66, 0x71, 0xe0, 0xc5, 0xf6, 0x5e, }; static const unsigned char xdh_wei448_3084_ourpubkey[] = { 0x96, 0x10, 0xd8, 0xf4, 0x63, 0x58, 0xbd, 0xcd, 0x39, 0x88, 0xec, 0x7b, 0x5c, 0x44, 0x5e, 0x6c, 0x9e, 0x81, 0xcd, 0x5a, 0x6d, 0x3b, 0x76, 0x40, 0x7f, 0xde, 0x5b, 0x40, 0x63, 0xd4, 0x8f, 0x6c, 0xbd, 0x02, 0xe6, 0x86, 0x77, 0x3a, 0x41, 0x7f, 0xc5, 0xa6, 0xcd, 0xb1, 0x25, 0x8a, 0x5f, 0x5e, 0x38, 0x88, 0xc9, 0xfc, 0x28, 0x83, 0xfd, 0x1d, }; static const unsigned char xdh_wei448_3084_privkey[] = { 0xc4, 0x16, 0x33, 0x21, 0x3e, 0x2a, 0x96, 0x9c, 0x61, 0x20, 0x39, 0x91, 0xd4, 0xe2, 0x3c, 0xf2, 0x0b, 0x83, 0x8f, 0x04, 0xb3, 0x75, 0x3a, 0xa5, 0xbd, 0xd8, 0x35, 0x52, 0x37, 0xee, 0x38, 0xbc, 0xf7, 0x55, 0x3c, 0x8e, 0xd6, 0xda, 0x13, 0x3f, 0x07, 0x33, 0xec, 0x43, 0x30, 0x0a, 0xca, 0xf4, 0x1f, 0x6c, 0x2b, 0xb7, 0x1d, 0x41, 0xba, 0x93, }; static const unsigned char xdh_wei448_3084_sharedsecret[] = { 0x3c, 0x01, 0x34, 0x09, 0xc1, 0xab, 0x90, 0xb9, 0x39, 0x5a, 0x39, 0x42, 0x5d, 0xb3, 0x14, 0xf4, 0xd0, 0xc0, 0x2e, 0x8f, 0x85, 0x99, 0xd4, 0x34, 0xb6, 0xb5, 0x18, 0x32, 0x27, 0x5d, 0x03, 0xbf, 0xa9, 0x7f, 0xa7, 0x08, 0xcc, 0x64, 0x91, 0x25, 0x5e, 0x87, 0x01, 0xfd, 0x26, 0x49, 0xf5, 0x5a, 0xcd, 0x24, 0xc2, 0x3d, 0x95, 0x65, 0xb4, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3084 = { .name = "xdh_wei448_3084", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3084_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3084_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3084_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3084_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 501 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3085 for XDH, tcId is 502 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3085_peerpubkey[] = { 0xda, 0x73, 0x6a, 0x97, 0xd9, 0x03, 0x95, 0x26, 0xa2, 0x8b, 0x53, 0xff, 0xcd, 0x60, 0xc5, 0xa4, 0xa8, 0x0a, 0x72, 0x20, 0xa3, 0x9c, 0x74, 0x2c, 0xbd, 0xf7, 0xd8, 0x9b, 0x5a, 0xc5, 0xc1, 0x02, 0x1b, 0x03, 0xca, 0xd2, 0x4b, 0xd3, 0x4a, 0x73, 0x97, 0xe9, 0xf7, 0xba, 0x7f, 0x32, 0xb0, 0x96, 0x76, 0xb5, 0x26, 0x0d, 0x2f, 0xf1, 0x06, 0xef, }; static const unsigned char xdh_wei448_3085_ourpubkey[] = { 0x00, 0x2d, 0xd6, 0xb4, 0x27, 0xbc, 0x03, 0x62, 0xfd, 0xd6, 0xb4, 0x3e, 0x4f, 0x41, 0x47, 0x89, 0x4f, 0x0f, 0xc8, 0x58, 0x07, 0xeb, 0x7b, 0x72, 0x1f, 0xd9, 0xb0, 0x1c, 0x6a, 0xd4, 0x99, 0x6e, 0xfb, 0x60, 0xe0, 0xf2, 0xca, 0x12, 0xc6, 0xa9, 0xdc, 0xa1, 0x30, 0xdc, 0x61, 0xb6, 0x17, 0x1b, 0xa1, 0xdd, 0x39, 0xbe, 0x4f, 0xb3, 0x24, 0xea, }; static const unsigned char xdh_wei448_3085_privkey[] = { 0xa4, 0x10, 0x23, 0xf8, 0x5d, 0x15, 0xe9, 0x3f, 0xc8, 0x0e, 0x97, 0x24, 0xb2, 0x25, 0xb2, 0x6b, 0x3f, 0xbe, 0xc7, 0xae, 0x5b, 0xa8, 0xb0, 0x7f, 0x0c, 0xd6, 0x4d, 0x69, 0x20, 0xd1, 0xb8, 0x31, 0x27, 0x48, 0xfb, 0x4f, 0x52, 0x6c, 0xcb, 0x0e, 0xad, 0xa5, 0xd2, 0x13, 0x1f, 0xa4, 0x44, 0x6f, 0x12, 0x7b, 0xa1, 0x3c, 0x27, 0xe6, 0xac, 0x90, }; static const unsigned char xdh_wei448_3085_sharedsecret[] = { 0xf8, 0x35, 0x35, 0x73, 0x09, 0x1c, 0xf4, 0xcf, 0xde, 0x03, 0xd0, 0x33, 0x35, 0xa2, 0x7d, 0xda, 0x98, 0xf8, 0xc1, 0xee, 0x17, 0x0e, 0x59, 0x81, 0x50, 0x00, 0x7f, 0x16, 0xf7, 0x05, 0x77, 0xb3, 0x8a, 0xa9, 0x67, 0xd9, 0x70, 0xfd, 0xb1, 0x6f, 0x82, 0x01, 0x23, 0xdd, 0x28, 0x06, 0x68, 0x98, 0x6c, 0x57, 0xeb, 0xc6, 0x97, 0x33, 0x37, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3085 = { .name = "xdh_wei448_3085", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3085_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3085_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3085_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3085_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 502 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3086 for XDH, tcId is 503 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3086_peerpubkey[] = { 0xa7, 0x17, 0x42, 0xc4, 0x72, 0xd8, 0xee, 0xe6, 0x36, 0xa9, 0x74, 0xdd, 0x98, 0xf5, 0x54, 0xad, 0x2f, 0x89, 0x91, 0x1f, 0x80, 0xab, 0xdb, 0x3d, 0x8f, 0xa0, 0x3b, 0xbb, 0x98, 0x19, 0x17, 0xb1, 0x9d, 0x92, 0x55, 0x81, 0xbc, 0xce, 0x71, 0x93, 0xc8, 0x83, 0x9f, 0x6b, 0x2e, 0x0f, 0xf6, 0xc1, 0xda, 0x7c, 0x20, 0x29, 0x70, 0xb3, 0xda, 0x46, }; static const unsigned char xdh_wei448_3086_ourpubkey[] = { 0x7c, 0x5a, 0xed, 0xf3, 0x94, 0x7e, 0xb4, 0xc5, 0x8d, 0x80, 0x96, 0x9a, 0x81, 0xe4, 0x17, 0x2e, 0xb9, 0x19, 0x8d, 0xa5, 0x2c, 0x51, 0x4a, 0x8b, 0x88, 0x87, 0xe2, 0xac, 0x73, 0xde, 0xe3, 0x8b, 0xf3, 0x6c, 0xff, 0x19, 0x2e, 0x44, 0x72, 0x00, 0xc2, 0xa8, 0x06, 0x67, 0xb3, 0xd8, 0x9a, 0xca, 0x3a, 0x38, 0x46, 0x91, 0x2b, 0x24, 0x4a, 0x82, }; static const unsigned char xdh_wei448_3086_privkey[] = { 0xbe, 0x58, 0xb9, 0x58, 0xdd, 0xcc, 0x5b, 0xb1, 0xa9, 0xcc, 0xdb, 0xc4, 0x3c, 0xcc, 0x1f, 0xa7, 0xd0, 0x10, 0x2f, 0x6a, 0x70, 0x48, 0x8a, 0xd5, 0x90, 0xb3, 0xf2, 0x6f, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3086_sharedsecret[] = { 0xca, 0xba, 0x02, 0x71, 0xea, 0x05, 0xea, 0xbf, 0x9d, 0x92, 0x31, 0x43, 0x11, 0xce, 0xdf, 0x54, 0xdf, 0x44, 0x73, 0x96, 0x23, 0xa6, 0x00, 0x04, 0xdd, 0x62, 0xd5, 0xcc, 0xac, 0x1f, 0x43, 0x02, 0x64, 0x4b, 0x2f, 0x0b, 0x75, 0xe3, 0x5b, 0x11, 0xa1, 0x83, 0x1a, 0x87, 0x54, 0x82, 0x38, 0xb9, 0xc3, 0x6e, 0x71, 0xe5, 0xf7, 0xc5, 0x7d, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3086 = { .name = "xdh_wei448_3086", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3086_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3086_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3086_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3086_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "private key == -1 (mod order), tcId is 503 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3087 for XDH, tcId is 504 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3087_peerpubkey[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const unsigned char xdh_wei448_3087_ourpubkey[] = { 0xa6, 0xcb, 0x80, 0x36, 0x66, 0xdd, 0x1a, 0x70, 0x7a, 0x3e, 0x89, 0x29, 0xb6, 0xcc, 0x8b, 0x42, 0x42, 0xdd, 0x1e, 0xf2, 0xb7, 0x38, 0xe3, 0x6f, 0x04, 0x50, 0x96, 0x1f, 0x93, 0xb1, 0x7a, 0x06, 0x28, 0x95, 0x8f, 0x1f, 0x32, 0xf1, 0xe9, 0x3b, 0xc5, 0x9c, 0xc0, 0xb8, 0x0c, 0x5b, 0x6a, 0x49, 0x9d, 0x08, 0x33, 0xd8, 0xb1, 0x5c, 0xe4, 0xc5, }; static const unsigned char xdh_wei448_3087_privkey[] = { 0x28, 0x31, 0xf7, 0xfd, 0x47, 0xb8, 0x95, 0x95, 0x00, 0x52, 0xaf, 0x56, 0xa8, 0xb8, 0xb9, 0x9b, 0x4f, 0x5c, 0x7d, 0xf3, 0x22, 0x6e, 0x13, 0xb3, 0x42, 0x94, 0xa1, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, }; static const unsigned char xdh_wei448_3087_sharedsecret[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3087 = { .name = "xdh_wei448_3087", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3087_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3087_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3087_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3087_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 504 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3088 for XDH, tcId is 505 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3088_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_3088_ourpubkey[] = { 0x5c, 0x49, 0x4c, 0xed, 0x15, 0xcc, 0xd9, 0xad, 0x72, 0xd2, 0xdd, 0x70, 0xe0, 0x5e, 0xcc, 0xed, 0x55, 0x06, 0x6a, 0x40, 0x74, 0x1c, 0x2e, 0xd1, 0x32, 0xcd, 0x4a, 0xec, 0xcd, 0x45, 0x9b, 0xcc, 0xd5, 0x9c, 0x4e, 0x31, 0xe4, 0x16, 0x5a, 0x1b, 0x1b, 0x29, 0x8e, 0x32, 0x10, 0x79, 0x2b, 0xd5, 0x35, 0xe6, 0xed, 0x55, 0xce, 0xa9, 0x9b, 0x1f, }; static const unsigned char xdh_wei448_3088_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3088_sharedsecret[] = { 0x52, 0x32, 0xfe, 0x84, 0x57, 0xba, 0x91, 0x0c, 0xb8, 0x86, 0xbd, 0xa0, 0xda, 0x97, 0x75, 0x4b, 0xf7, 0x13, 0x2f, 0x61, 0x48, 0x19, 0x39, 0x80, 0x86, 0x73, 0xdb, 0x29, 0xe3, 0x18, 0xcb, 0xdc, 0xe8, 0x56, 0x1c, 0x78, 0x06, 0x2a, 0xd9, 0x48, 0x64, 0xba, 0x5c, 0x82, 0x04, 0x54, 0x76, 0x6d, 0x02, 0x55, 0xbe, 0xc1, 0xdb, 0x69, 0x51, 0x47, }; static const wycheproof_xdh_test xdh_wei448_3088 = { .name = "xdh_wei448_3088", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3088_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3088_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3088_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3088_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 505 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3089 for XDH, tcId is 506 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3089_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_3089_ourpubkey[] = { 0x5c, 0x49, 0x4c, 0xed, 0x15, 0xcc, 0xd9, 0xad, 0x72, 0xd2, 0xdd, 0x70, 0xe0, 0x5e, 0xcc, 0xed, 0x55, 0x06, 0x6a, 0x40, 0x74, 0x1c, 0x2e, 0xd1, 0x32, 0xcd, 0x4a, 0xec, 0xcd, 0x45, 0x9b, 0xcc, 0xd5, 0x9c, 0x4e, 0x31, 0xe4, 0x16, 0x5a, 0x1b, 0x1b, 0x29, 0x8e, 0x32, 0x10, 0x79, 0x2b, 0xd5, 0x35, 0xe6, 0xed, 0x55, 0xce, 0xa9, 0x9b, 0x1f, }; static const unsigned char xdh_wei448_3089_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3089_sharedsecret[] = { 0x34, 0x1c, 0x3a, 0xeb, 0x05, 0x51, 0x10, 0x8f, 0xc8, 0x0d, 0x22, 0xd9, 0x8c, 0x26, 0x83, 0xa6, 0xeb, 0x68, 0x96, 0x74, 0x20, 0xc1, 0xe0, 0x33, 0xfc, 0x22, 0xc4, 0x1f, 0x4f, 0x3a, 0xb8, 0xd8, 0x2d, 0x64, 0x34, 0x25, 0xd2, 0x67, 0x5f, 0x44, 0xf4, 0x2d, 0x03, 0xb9, 0x98, 0x48, 0x4e, 0x62, 0xf3, 0x5b, 0x91, 0x5c, 0x1d, 0x4b, 0xf4, 0x34, }; static const wycheproof_xdh_test xdh_wei448_3089 = { .name = "xdh_wei448_3089", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3089_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3089_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3089_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3089_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 506 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3090 for XDH, tcId is 507 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3090_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_3090_ourpubkey[] = { 0x5c, 0x49, 0x4c, 0xed, 0x15, 0xcc, 0xd9, 0xad, 0x72, 0xd2, 0xdd, 0x70, 0xe0, 0x5e, 0xcc, 0xed, 0x55, 0x06, 0x6a, 0x40, 0x74, 0x1c, 0x2e, 0xd1, 0x32, 0xcd, 0x4a, 0xec, 0xcd, 0x45, 0x9b, 0xcc, 0xd5, 0x9c, 0x4e, 0x31, 0xe4, 0x16, 0x5a, 0x1b, 0x1b, 0x29, 0x8e, 0x32, 0x10, 0x79, 0x2b, 0xd5, 0x35, 0xe6, 0xed, 0x55, 0xce, 0xa9, 0x9b, 0x1f, }; static const unsigned char xdh_wei448_3090_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3090_sharedsecret[] = { 0xb2, 0xba, 0x50, 0x57, 0xf1, 0xf1, 0x18, 0x3b, 0x19, 0x70, 0xb7, 0x84, 0x45, 0x37, 0x78, 0x46, 0x70, 0xda, 0x55, 0xc5, 0xe3, 0x20, 0x7d, 0xe1, 0xd0, 0xf7, 0x64, 0x27, 0xb2, 0x66, 0x38, 0x11, 0x42, 0x61, 0x07, 0x94, 0x10, 0x22, 0xd9, 0xbf, 0x85, 0xa3, 0x73, 0xa7, 0x84, 0x0e, 0xb0, 0x17, 0xcf, 0x8f, 0xa2, 0x3e, 0x53, 0x06, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3090 = { .name = "xdh_wei448_3090", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3090_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3090_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3090_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3090_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 507 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3091 for XDH, tcId is 508 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3091_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_3091_ourpubkey[] = { 0x9b, 0x4c, 0x11, 0xa3, 0xcc, 0x0d, 0x01, 0x77, 0x14, 0x43, 0x93, 0xfb, 0x5a, 0x2b, 0xb2, 0x0b, 0x26, 0x0f, 0x09, 0x84, 0x8c, 0x39, 0xa9, 0x48, 0xdf, 0xd9, 0x49, 0x69, 0x9d, 0xe2, 0x6a, 0x7e, 0xcb, 0x42, 0x10, 0x15, 0x68, 0x42, 0x6a, 0xe4, 0xdf, 0xe4, 0xea, 0xeb, 0xd4, 0xf5, 0x0b, 0xb5, 0x32, 0xfc, 0xbb, 0xe2, 0xca, 0x43, 0xf8, 0x95, }; static const unsigned char xdh_wei448_3091_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3091_sharedsecret[] = { 0x56, 0x66, 0xa7, 0x22, 0x76, 0xa9, 0xc4, 0xf3, 0x84, 0x9f, 0x62, 0x88, 0x8d, 0x85, 0x90, 0xe0, 0xae, 0xe1, 0x15, 0xe9, 0xa2, 0x31, 0xb1, 0xca, 0x74, 0x3e, 0xe7, 0xa0, 0x2a, 0xf7, 0x37, 0x7e, 0x40, 0x30, 0x52, 0x10, 0x91, 0xd1, 0x73, 0x94, 0x1c, 0x9a, 0x70, 0x17, 0x53, 0xec, 0xa4, 0xd5, 0x82, 0x3f, 0xbd, 0x86, 0x74, 0x7d, 0xc0, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_3091 = { .name = "xdh_wei448_3091", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3091_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3091_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3091_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3091_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 508 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3092 for XDH, tcId is 509 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3092_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_3092_ourpubkey[] = { 0x9b, 0x4c, 0x11, 0xa3, 0xcc, 0x0d, 0x01, 0x77, 0x14, 0x43, 0x93, 0xfb, 0x5a, 0x2b, 0xb2, 0x0b, 0x26, 0x0f, 0x09, 0x84, 0x8c, 0x39, 0xa9, 0x48, 0xdf, 0xd9, 0x49, 0x69, 0x9d, 0xe2, 0x6a, 0x7e, 0xcb, 0x42, 0x10, 0x15, 0x68, 0x42, 0x6a, 0xe4, 0xdf, 0xe4, 0xea, 0xeb, 0xd4, 0xf5, 0x0b, 0xb5, 0x32, 0xfc, 0xbb, 0xe2, 0xca, 0x43, 0xf8, 0x95, }; static const unsigned char xdh_wei448_3092_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3092_sharedsecret[] = { 0x8b, 0xd6, 0x7f, 0xe2, 0x10, 0x2f, 0x52, 0xd8, 0x61, 0xec, 0x67, 0x98, 0xed, 0x27, 0x9b, 0x0f, 0xf9, 0xa4, 0xf2, 0xa8, 0x9e, 0x83, 0x42, 0x9f, 0x69, 0x75, 0x3d, 0x2a, 0x9b, 0x1a, 0x23, 0xbd, 0x94, 0x0e, 0xa6, 0x64, 0x49, 0x0c, 0xdc, 0x32, 0xc8, 0x6e, 0x3e, 0xcb, 0xd9, 0x93, 0x84, 0x7e, 0xd3, 0xea, 0x78, 0x0c, 0x48, 0x39, 0x7f, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_3092 = { .name = "xdh_wei448_3092", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3092_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3092_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3092_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3092_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 509 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3093 for XDH, tcId is 510 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3093_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_3093_ourpubkey[] = { 0x9b, 0x4c, 0x11, 0xa3, 0xcc, 0x0d, 0x01, 0x77, 0x14, 0x43, 0x93, 0xfb, 0x5a, 0x2b, 0xb2, 0x0b, 0x26, 0x0f, 0x09, 0x84, 0x8c, 0x39, 0xa9, 0x48, 0xdf, 0xd9, 0x49, 0x69, 0x9d, 0xe2, 0x6a, 0x7e, 0xcb, 0x42, 0x10, 0x15, 0x68, 0x42, 0x6a, 0xe4, 0xdf, 0xe4, 0xea, 0xeb, 0xd4, 0xf5, 0x0b, 0xb5, 0x32, 0xfc, 0xbb, 0xe2, 0xca, 0x43, 0xf8, 0x95, }; static const unsigned char xdh_wei448_3093_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3093_sharedsecret[] = { 0xb7, 0xda, 0x87, 0xa0, 0x54, 0x66, 0x89, 0xef, 0xf6, 0xfe, 0x5d, 0xbb, 0x1c, 0xad, 0x3d, 0x3f, 0x28, 0x26, 0x53, 0xaf, 0x32, 0xe2, 0xe9, 0x65, 0xb3, 0x00, 0x4b, 0x6d, 0x52, 0x73, 0xe0, 0x4b, 0xe2, 0x42, 0xaf, 0x3c, 0xbc, 0xf9, 0xbb, 0xdc, 0x69, 0xd7, 0x74, 0x00, 0x5b, 0xd8, 0x56, 0xc7, 0xf7, 0x40, 0xeb, 0xf6, 0xce, 0xf0, 0xdf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_3093 = { .name = "xdh_wei448_3093", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3093_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3093_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3093_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3093_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 510 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3094 for XDH, tcId is 511 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3094_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe7, 0x9d, 0x33, 0xf8, 0x8a, 0x5e, 0xa8, 0x6d, 0xaa, 0x7e, 0xea, 0xb0, 0xeb, 0x03, 0x38, 0x3a, 0xdf, 0x79, 0x37, 0x20, 0x76, 0xb1, 0x55, 0x07, 0x16, 0x2e, 0x50, 0x99, 0x8b, 0x00, 0xa8, 0x56, }; static const unsigned char xdh_wei448_3094_ourpubkey[] = { 0x92, 0xdc, 0xeb, 0xa4, 0x05, 0x42, 0x21, 0x13, 0xd1, 0x8a, 0xdd, 0xcd, 0x42, 0xf0, 0xa4, 0xc9, 0xb5, 0x2b, 0x19, 0x00, 0xf5, 0x5a, 0x1e, 0x8e, 0xac, 0x70, 0xea, 0x42, 0x64, 0xa2, 0x43, 0xb6, 0x8c, 0x34, 0xa9, 0x01, 0x45, 0x82, 0xf0, 0x08, 0x82, 0xbe, 0x84, 0x72, 0x02, 0x0a, 0xae, 0x27, 0xf6, 0x43, 0xbd, 0x69, 0xd5, 0xf6, 0x4b, 0x9e, }; static const unsigned char xdh_wei448_3094_privkey[] = { 0x18, 0xfc, 0x8c, 0x7a, 0x83, 0x98, 0x77, 0x7a, 0x62, 0x7c, 0xab, 0x78, 0x12, 0x3e, 0x17, 0xa0, 0xca, 0x1c, 0xbb, 0xaa, 0xd3, 0xf2, 0xc8, 0x63, 0xb9, 0x14, 0xbc, 0x99, 0x70, 0xe6, 0x59, 0x0e, 0xc4, 0xe7, 0x60, 0x8d, 0xd1, 0x58, 0x08, 0x3a, 0x91, 0xe6, 0x7a, 0x61, 0xab, 0xc3, 0x43, 0x0f, 0x70, 0x78, 0x2e, 0xd1, 0x73, 0x3d, 0x97, 0xfb, }; static const wycheproof_xdh_test xdh_wei448_3094 = { .name = "xdh_wei448_3094", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3094_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3094_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3094_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-256, tcId is 511 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3095 for XDH, tcId is 512 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3095_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd1, 0x63, 0xa0, 0x91, 0xc4, 0x04, 0x7e, 0xf2, 0x09, 0xc7, 0x5d, 0x05, 0xcb, 0xed, 0x76, 0xff, 0x4f, 0x0c, 0xb5, 0xd6, 0x88, 0xc6, 0x08, 0x1a, 0xd4, 0x3c, 0x80, 0x02, 0x59, 0x1c, 0x30, 0x35, 0x00, 0x4c, 0x85, 0x03, 0xc8, 0x60, 0x36, 0xaa, 0xa5, 0x85, 0xe1, 0x9f, 0x44, 0x5a, 0x27, 0x5f, }; static const unsigned char xdh_wei448_3095_ourpubkey[] = { 0xdb, 0x79, 0x37, 0xfa, 0xf2, 0x86, 0x4f, 0xfa, 0xd0, 0x30, 0x49, 0x4e, 0x69, 0x42, 0x47, 0x3c, 0x35, 0x6d, 0x34, 0x49, 0x16, 0x64, 0x1b, 0x6d, 0xd5, 0xbc, 0x95, 0xe9, 0x03, 0xf7, 0x62, 0x1f, 0xd1, 0x7b, 0x3e, 0xec, 0xe0, 0xc1, 0xd5, 0x7e, 0x43, 0xff, 0xb8, 0x7f, 0xb7, 0xee, 0x5a, 0x89, 0x81, 0x98, 0xb4, 0xfa, 0xf0, 0x2b, 0x3e, 0x4a, }; static const unsigned char xdh_wei448_3095_privkey[] = { 0x08, 0x73, 0x02, 0xb9, 0x7b, 0x60, 0x4c, 0xe0, 0xbf, 0x2e, 0xaf, 0x04, 0x5f, 0x09, 0xdf, 0xf7, 0x9c, 0x22, 0xe0, 0xff, 0x13, 0x95, 0xd8, 0xda, 0x8c, 0x1e, 0x8e, 0xeb, 0x1a, 0x19, 0x02, 0x19, 0x62, 0x11, 0x6d, 0xb2, 0x2a, 0xa2, 0xc4, 0x2f, 0x57, 0xf9, 0xf3, 0xd2, 0x94, 0x2d, 0xec, 0xe8, 0x38, 0x96, 0x08, 0x23, 0x6a, 0x6e, 0xd3, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3095 = { .name = "xdh_wei448_3095", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3095_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3095_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3095_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-384, tcId is 512 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3096 for XDH, tcId is 513 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'invalid' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3096_peerpubkey[] = { 0x00, 0x6d, 0x48, 0x81, 0x9a, 0x8a, 0x97, 0x42, 0x80, 0x7a, 0x0a, 0x4f, 0x2b, 0x30, 0x6f, 0x64, 0x08, 0xbc, 0xcc, 0x55, 0x94, 0x61, 0xd1, 0x83, 0x26, 0x9f, 0xee, 0x98, 0x1e, 0xb5, 0x9a, 0x74, 0x35, 0x40, 0x0e, 0xc4, 0xeb, 0x2f, 0x85, 0x8c, 0xc2, 0xe8, 0x12, 0x77, 0x33, 0x3b, 0x95, 0xdf, 0xbb, 0x55, 0x46, 0xec, 0xc2, 0x1e, 0x1c, 0x0e, 0x33, 0x2d, 0x23, 0x02, 0x7a, 0x8a, 0x84, 0xb3, 0x04, 0x22, }; static const unsigned char xdh_wei448_3096_ourpubkey[] = { 0x22, 0xbb, 0x27, 0x9b, 0x72, 0x7f, 0x3a, 0x4c, 0x9a, 0x2c, 0x77, 0x32, 0x9c, 0xd7, 0xd8, 0x52, 0x67, 0x63, 0x6a, 0xfa, 0x27, 0x14, 0xee, 0x38, 0xa7, 0xa4, 0x96, 0xba, 0x1f, 0xf8, 0xab, 0xb2, 0xef, 0x72, 0xee, 0xca, 0xa1, 0xed, 0x45, 0xcf, 0x3d, 0x80, 0xc1, 0x68, 0x04, 0xa9, 0x56, 0xa5, 0x2f, 0x4c, 0x0a, 0x73, 0x93, 0xdc, 0x47, 0xce, }; static const unsigned char xdh_wei448_3096_privkey[] = { 0xf4, 0x03, 0xcc, 0xe7, 0x55, 0xe9, 0x00, 0x4e, 0x93, 0x2b, 0xad, 0x47, 0xd0, 0x59, 0x89, 0xbb, 0x07, 0x2d, 0x78, 0x5e, 0xfe, 0x38, 0xaa, 0xee, 0x0b, 0x21, 0x71, 0x9f, 0x98, 0xcd, 0xa7, 0xd9, 0x0d, 0x00, 0xb6, 0x01, 0xe8, 0x74, 0xb9, 0xf7, 0x80, 0x7f, 0x1c, 0x80, 0xfe, 0xba, 0x00, 0x2d, 0xe1, 0xc1, 0x1a, 0x59, 0x65, 0x32, 0x2a, 0xaf, }; static const wycheproof_xdh_test xdh_wei448_3096 = { .name = "xdh_wei448_3096", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3096_peerpubkey, .peerpubkeylen = 66, .ourpubkey = xdh_wei448_3096_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3096_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-521, tcId is 513 in file x448_jwk_test.json [!!!WARNING: this test has been patched from 'invalid' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3097 for XDH, tcId is 514 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3097_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x8e, 0x69, 0x6d, 0x9b, 0xfa, 0x30, 0xfd, 0x3a, 0xd2, 0xda, 0x68, 0xa1, 0x2c, 0x07, 0xe7, 0x86, 0xaf, 0x24, 0x01, 0xd2, 0xfc, 0x75, 0x57, 0xed, 0x2b, 0x0a, 0x2a, 0x50, 0x2f, 0xe3, 0x01, 0x99, }; static const unsigned char xdh_wei448_3097_ourpubkey[] = { 0x60, 0x7a, 0x3b, 0xca, 0xe8, 0x58, 0x9e, 0x9c, 0xcc, 0x14, 0x1b, 0x94, 0xe2, 0x24, 0x8c, 0x4a, 0xf2, 0xeb, 0x09, 0xac, 0x70, 0xed, 0x40, 0xff, 0x0a, 0xd0, 0xa0, 0x1f, 0x9e, 0xca, 0xad, 0x0c, 0x02, 0x76, 0x55, 0xf9, 0xb4, 0x6c, 0xe6, 0x22, 0xff, 0x6e, 0xd6, 0x8d, 0x83, 0x1a, 0x41, 0xab, 0x6a, 0x0e, 0x49, 0x32, 0xa3, 0x4f, 0x69, 0x1c, }; static const unsigned char xdh_wei448_3097_privkey[] = { 0x70, 0xb2, 0x39, 0xcc, 0x32, 0x0a, 0x79, 0x66, 0x64, 0x60, 0xab, 0xcb, 0x2b, 0x3b, 0xb1, 0x14, 0xbb, 0xec, 0x6d, 0x3a, 0x6e, 0x31, 0x9f, 0x2a, 0xb2, 0x16, 0x47, 0x9f, 0x4f, 0x74, 0xd6, 0x18, 0xcf, 0x8d, 0x44, 0x48, 0x96, 0x4c, 0xb1, 0xdc, 0x73, 0x87, 0x60, 0xb7, 0x0a, 0xe9, 0x00, 0xf6, 0x5e, 0xa6, 0xed, 0xa4, 0x1d, 0xbb, 0x23, 0x92, }; static const wycheproof_xdh_test xdh_wei448_3097 = { .name = "xdh_wei448_3097", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3097_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3097_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3097_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for P-256K, tcId is 514 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3098 for XDH, tcId is 515 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3098_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xab, 0xdf, 0x87, 0x6a, 0xe0, 0x75, 0x1d, 0xa2, 0xf1, 0x84, 0x03, 0x5c, 0x5b, 0x2c, 0x85, 0x92, 0x05, 0x20, 0x94, 0xf7, 0x6c, 0x93, 0xa7, 0x63, 0x48, 0xa0, 0xf4, 0xd0, 0x53, 0x4c, 0x98, 0x0c, }; static const unsigned char xdh_wei448_3098_ourpubkey[] = { 0x4f, 0x43, 0x4d, 0x32, 0xbf, 0x53, 0x27, 0x06, 0xc4, 0x18, 0x18, 0x9c, 0xab, 0xe4, 0x9a, 0x1f, 0x06, 0x00, 0xf0, 0x7c, 0x75, 0x76, 0x60, 0x21, 0xc6, 0x54, 0xa0, 0x63, 0x1d, 0x89, 0xf8, 0x76, 0x21, 0xf0, 0x7e, 0x4e, 0xed, 0x5b, 0xa9, 0xe5, 0x81, 0xb0, 0xad, 0xa7, 0x0c, 0x21, 0xfe, 0x68, 0xc0, 0x5c, 0x88, 0xf4, 0xf5, 0xc9, 0x07, 0x6f, }; static const unsigned char xdh_wei448_3098_privkey[] = { 0x40, 0xd4, 0x10, 0x44, 0xbb, 0x54, 0x0b, 0x4c, 0x9d, 0x40, 0x44, 0x63, 0x9b, 0xc7, 0xa3, 0xca, 0xbc, 0x5b, 0x23, 0xd2, 0x6f, 0x6a, 0x0a, 0x5c, 0xbe, 0x3a, 0x6c, 0x77, 0x17, 0x95, 0x0c, 0xd4, 0x64, 0xfd, 0x50, 0xa2, 0xbf, 0xac, 0xae, 0xf9, 0x19, 0x0c, 0x57, 0x99, 0x24, 0x5a, 0xf3, 0x6d, 0x9e, 0x12, 0xc9, 0x74, 0x83, 0xab, 0xb8, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3098 = { .name = "xdh_wei448_3098", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3098_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3098_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3098_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses public key for secp256k1, tcId is 515 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3099 for XDH, tcId is 516 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3099_peerpubkey[] = { 0xf3, 0xd7, 0x1a, 0x21, 0x37, 0xa9, 0xbc, 0x1e, 0x78, 0x64, 0xca, 0x14, 0x98, 0x22, 0xdc, 0xb7, 0x0d, 0xaa, 0x13, 0xe0, 0x29, 0xce, 0xbb, 0xa6, 0x49, 0x83, 0xf3, 0x7b, 0x01, 0xc8, 0x50, 0xaf, 0x8d, 0xab, 0x24, 0xe9, 0x8a, 0x84, 0x07, 0x66, 0x38, 0x5c, 0xba, 0x28, 0x86, 0x05, 0xc8, 0x57, 0x2f, 0xd2, 0x6a, 0x62, 0x07, 0x3c, 0x3d, 0xb4, }; static const unsigned char xdh_wei448_3099_ourpubkey[] = { 0x8c, 0x66, 0x95, 0x97, 0xd7, 0xf5, 0xed, 0x15, 0x0a, 0x9c, 0x37, 0x8b, 0x5f, 0xc8, 0x70, 0xe7, 0xb5, 0xc8, 0xd3, 0x8a, 0xbd, 0x04, 0xe6, 0xd6, 0xbe, 0x65, 0x09, 0x67, 0x4a, 0x3a, 0x9c, 0xf8, 0x80, 0xc9, 0x3d, 0x76, 0x47, 0x76, 0xaa, 0xcf, 0x2b, 0x00, 0xb0, 0x29, 0xbd, 0x35, 0xf6, 0x36, 0xd8, 0xbc, 0xf8, 0x82, 0x82, 0xa1, 0xf3, 0x38, }; static const unsigned char xdh_wei448_3099_privkey[] = { 0xd4, 0x4f, 0xf5, 0xf0, 0xfb, 0x68, 0x56, 0xdd, 0x3c, 0xb7, 0x8f, 0xbe, 0xfd, 0x60, 0x6d, 0xd5, 0x1a, 0xdb, 0x50, 0xc3, 0x8c, 0x65, 0x78, 0xa8, 0xf7, 0xfd, 0xc5, 0x00, 0x3d, 0xe0, 0x5b, 0x82, 0x41, 0x6f, 0x21, 0x4f, 0x09, 0xf2, 0x27, 0x44, 0x4b, 0x9b, 0x7a, 0x0d, 0x6f, 0xfe, 0x96, 0x2c, 0xf3, 0xd9, 0x9f, 0x0e, 0x0d, 0x44, 0xf3, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3099 = { .name = "xdh_wei448_3099", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3099_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3099_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3099_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 516 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3100 for XDH, tcId is 517 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3100_peerpubkey[] = { 0x72, 0xb7, 0x00, 0x1a, 0xa6, 0x41, 0x6e, 0x5b, 0x34, 0xec, 0x34, 0xe0, 0xce, 0x89, 0x8a, 0x2e, 0xbd, 0x6d, 0xcb, 0x8f, 0x49, 0xd6, 0x43, 0x43, 0xf8, 0x2d, 0xbb, 0xce, 0x2d, 0x1b, 0x5b, 0xb7, 0x5e, 0x04, 0xca, 0xe7, 0x9f, 0x9a, 0xf9, 0x97, 0x4a, 0xb3, 0xd0, 0xec, 0xa3, 0x40, 0x72, 0x34, 0xd9, 0x94, 0x4a, 0xa4, 0x32, 0x3e, 0x00, 0xfc, }; static const unsigned char xdh_wei448_3100_ourpubkey[] = { 0x26, 0x20, 0x90, 0x39, 0x43, 0x87, 0x48, 0xde, 0x66, 0x6e, 0xc4, 0x07, 0x68, 0x3b, 0x63, 0x64, 0x4a, 0xf7, 0x09, 0x69, 0x3c, 0xcb, 0x80, 0x1c, 0x0c, 0x78, 0x8d, 0x3d, 0xa2, 0x93, 0x0b, 0xe1, 0x73, 0xb2, 0x09, 0xd7, 0x48, 0x6c, 0x77, 0xf9, 0xa8, 0xf9, 0x84, 0xa0, 0xe5, 0xed, 0xd5, 0x94, 0xb5, 0x57, 0xa4, 0x69, 0xec, 0x3a, 0x75, 0xa9, }; static const unsigned char xdh_wei448_3100_privkey[] = { 0x90, 0x0a, 0x0b, 0x52, 0x0d, 0xf4, 0xf4, 0x26, 0xd9, 0x0f, 0x28, 0xae, 0x1d, 0x17, 0xb0, 0x26, 0xcb, 0xde, 0x73, 0x08, 0x67, 0x35, 0xdf, 0xee, 0xad, 0x6e, 0xfd, 0x98, 0xdd, 0x7d, 0x01, 0x32, 0x00, 0x47, 0xb7, 0xc0, 0xb1, 0x4f, 0x8d, 0x0b, 0x65, 0x25, 0xad, 0x35, 0xe9, 0xd4, 0xf6, 0x38, 0xc3, 0x23, 0x74, 0x71, 0x5f, 0xb1, 0x69, 0x8e, }; static const wycheproof_xdh_test xdh_wei448_3100 = { .name = "xdh_wei448_3100", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3100_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3100_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3100_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 517 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3101 for XDH, tcId is 518 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3101_peerpubkey[] = { 0xab, 0xca, 0x91, 0x51, 0x08, 0x6b, 0xb0, 0xad, 0xea, 0x35, 0xd6, 0xd9, 0xb1, 0xa7, 0x98, 0xf3, 0x07, 0xe4, 0x7c, 0x4a, 0x46, 0x52, 0x68, 0xb9, 0x0a, 0x47, 0x57, 0xd7, 0xc4, 0x17, 0x38, 0xff, 0xe2, 0x1e, 0x17, 0x4a, 0x03, 0xe3, 0x5f, 0x40, 0xb4, 0xb2, 0xf3, 0xa4, 0xcb, 0x0c, 0x1c, 0x55, 0x64, 0x4c, 0x47, 0xa5, 0x3f, 0x01, 0x2e, 0x4b, }; static const unsigned char xdh_wei448_3101_ourpubkey[] = { 0xbe, 0xc3, 0x21, 0x0b, 0x25, 0xc0, 0x7b, 0xe5, 0x23, 0x48, 0x14, 0x81, 0x8d, 0x8d, 0xf7, 0xba, 0x02, 0xf3, 0x3a, 0xdc, 0x04, 0x9d, 0x8d, 0x47, 0xe4, 0x2f, 0xd5, 0x83, 0x8b, 0x5e, 0x87, 0xe9, 0x29, 0x2f, 0x65, 0x70, 0x87, 0x66, 0x6e, 0xfc, 0xec, 0x3e, 0x28, 0x41, 0xa2, 0xfc, 0x50, 0xae, 0x51, 0xf1, 0x2b, 0x53, 0xab, 0x9c, 0x4f, 0xd9, }; static const unsigned char xdh_wei448_3101_privkey[] = { 0x58, 0xdf, 0x84, 0xca, 0x8e, 0x95, 0x57, 0x15, 0xfa, 0x15, 0x03, 0x7d, 0xa1, 0x3e, 0xa7, 0x75, 0x7d, 0xf2, 0x53, 0x91, 0xf9, 0x3c, 0xbd, 0xb0, 0x46, 0x30, 0xfe, 0x6c, 0x42, 0xea, 0x67, 0x07, 0x8d, 0x3b, 0x83, 0x08, 0x94, 0x00, 0xf3, 0xbc, 0xa9, 0x83, 0x56, 0x30, 0xfb, 0x35, 0x7e, 0x97, 0x88, 0x44, 0xa9, 0x51, 0x84, 0xbb, 0x85, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3101 = { .name = "xdh_wei448_3101", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3101_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3101_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3101_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 518 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3102 for XDH, tcId is 519 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3102_peerpubkey[] = { 0x68, 0x50, 0xd6, 0x50, 0xf3, 0x03, 0x82, 0xc8, 0x3f, 0x19, 0xdb, 0xf2, 0xa6, 0xfa, 0x2d, 0xde, 0xab, 0x4f, 0x2d, 0xe4, 0x1f, 0x8e, 0xc1, 0x10, 0x8e, 0x8a, 0x6b, 0x16, 0x5b, 0x3d, 0x31, 0xbc, 0xc4, 0x31, 0xfd, 0xfd, 0x43, 0x90, 0x7b, 0x17, 0x8a, 0x12, 0x6b, 0x19, 0x95, 0x6c, 0x0b, 0x17, 0x71, 0x4d, 0xd6, 0x96, 0x3f, 0xd2, 0xba, 0xce, }; static const unsigned char xdh_wei448_3102_ourpubkey[] = { 0x63, 0x42, 0x92, 0x4d, 0xf1, 0x01, 0xf1, 0x28, 0x86, 0x13, 0xe8, 0xe5, 0xe5, 0x8d, 0xc0, 0xe6, 0x9d, 0x05, 0xa6, 0x99, 0xda, 0x15, 0x5d, 0xd5, 0x1b, 0xeb, 0xf4, 0x53, 0x2b, 0x20, 0x64, 0xc5, 0x76, 0xb1, 0x5d, 0x33, 0x2c, 0xdb, 0xed, 0x3e, 0x5f, 0x5f, 0x10, 0xcc, 0xdf, 0xe9, 0x97, 0x80, 0x02, 0x3f, 0xad, 0x29, 0x57, 0x76, 0xb8, 0xf4, }; static const unsigned char xdh_wei448_3102_privkey[] = { 0x84, 0x02, 0x70, 0x81, 0xfd, 0xf9, 0x12, 0xa0, 0xdc, 0xc3, 0xb3, 0x21, 0x40, 0xd5, 0xcc, 0x03, 0x96, 0xd9, 0x03, 0x61, 0x62, 0x24, 0xa6, 0x19, 0xa7, 0x23, 0xb6, 0x89, 0x89, 0xc6, 0x38, 0x9e, 0xc1, 0xe0, 0xe7, 0x01, 0x1e, 0x50, 0xf8, 0x25, 0x03, 0x1a, 0x76, 0x85, 0x0d, 0x59, 0xeb, 0x06, 0xb1, 0x91, 0x23, 0x3d, 0x02, 0x13, 0x44, 0xba, }; static const wycheproof_xdh_test xdh_wei448_3102 = { .name = "xdh_wei448_3102", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3102_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3102_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3102_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "uses invalid value for kty, tcId is 519 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3103 for XDH, tcId is 521 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3103_peerpubkey[] = { 0xe1, 0x56, 0x72, 0x21, 0x83, 0xe8, 0x47, 0xe1, 0x32, 0xc5, 0x45, 0x45, 0x33, 0x83, 0xc7, 0x5b, 0x7a, 0x1d, 0x3b, 0xd0, 0xb0, 0x9c, 0x2d, 0xfa, 0x4d, 0xc5, 0x03, 0xec, 0xe9, 0xdf, 0x45, 0x5d, 0xac, 0x82, 0x77, 0x42, 0xa8, 0x7d, 0x70, 0x8a, 0xf8, 0xa8, 0x87, 0x6d, 0x1d, 0xf6, 0xf3, 0xb3, 0xed, 0x25, 0x68, 0xd0, 0x94, 0xb0, 0xaf, 0xb2, }; static const unsigned char xdh_wei448_3103_ourpubkey[] = { 0x77, 0xe6, 0xab, 0xd7, 0xa5, 0xb8, 0xe5, 0x77, 0xd2, 0xa9, 0xe5, 0x2e, 0x4a, 0x65, 0xd4, 0x1c, 0x2b, 0xc8, 0x38, 0x81, 0x8b, 0x5d, 0x2a, 0xf8, 0xc1, 0x14, 0x92, 0xbd, 0xf7, 0x1c, 0x86, 0xe9, 0xd0, 0x0c, 0xe8, 0xa6, 0xae, 0x26, 0x63, 0x8f, 0xfc, 0xde, 0x3d, 0xa5, 0x49, 0x0a, 0x88, 0x7b, 0x18, 0x5d, 0x94, 0xd3, 0xbe, 0x65, 0x2c, 0xa5, }; static const unsigned char xdh_wei448_3103_privkey[] = { 0xf0, 0x92, 0xf4, 0xcb, 0xbb, 0xa0, 0xfd, 0x53, 0x07, 0x45, 0x92, 0xd8, 0x73, 0x75, 0xa6, 0x31, 0x9c, 0x55, 0x4f, 0x07, 0x4d, 0x75, 0x1b, 0x0e, 0x21, 0x77, 0x13, 0xaa, 0x98, 0x54, 0x45, 0xcd, 0x32, 0x95, 0x55, 0x38, 0xb4, 0x6b, 0x46, 0xef, 0xca, 0x13, 0x09, 0xc5, 0x17, 0x72, 0xc8, 0x17, 0x1a, 0x3a, 0x08, 0xcd, 0xfb, 0x8a, 0x52, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3103 = { .name = "xdh_wei448_3103", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3103_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3103_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3103_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "missing field kty, tcId is 521 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3104 for XDH, tcId is 522 in file x448_jwk_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3104_peerpubkey[] = { 0xe1, 0x56, 0x72, 0x21, 0x83, 0xe8, 0x47, 0xe1, 0x32, 0xc5, 0x45, 0x45, 0x33, 0x83, 0xc7, 0x5b, 0x7a, 0x1d, 0x3b, 0xd0, 0xb0, 0x9c, 0x2d, 0xfa, 0x4d, 0xc5, 0x03, 0xec, 0xe9, 0xdf, 0x45, 0x5d, 0xac, 0x82, 0x77, 0x42, 0xa8, 0x7d, 0x70, 0x8a, 0xf8, 0xa8, 0x87, 0x6d, 0x1d, 0xf6, 0xf3, 0xb3, 0xed, 0x25, 0x68, 0xd0, 0x94, 0xb0, 0xaf, 0xb2, }; static const unsigned char xdh_wei448_3104_ourpubkey[] = { 0x77, 0xe6, 0xab, 0xd7, 0xa5, 0xb8, 0xe5, 0x77, 0xd2, 0xa9, 0xe5, 0x2e, 0x4a, 0x65, 0xd4, 0x1c, 0x2b, 0xc8, 0x38, 0x81, 0x8b, 0x5d, 0x2a, 0xf8, 0xc1, 0x14, 0x92, 0xbd, 0xf7, 0x1c, 0x86, 0xe9, 0xd0, 0x0c, 0xe8, 0xa6, 0xae, 0x26, 0x63, 0x8f, 0xfc, 0xde, 0x3d, 0xa5, 0x49, 0x0a, 0x88, 0x7b, 0x18, 0x5d, 0x94, 0xd3, 0xbe, 0x65, 0x2c, 0xa5, }; static const unsigned char xdh_wei448_3104_privkey[] = { 0xf0, 0x92, 0xf4, 0xcb, 0xbb, 0xa0, 0xfd, 0x53, 0x07, 0x45, 0x92, 0xd8, 0x73, 0x75, 0xa6, 0x31, 0x9c, 0x55, 0x4f, 0x07, 0x4d, 0x75, 0x1b, 0x0e, 0x21, 0x77, 0x13, 0xaa, 0x98, 0x54, 0x45, 0xcd, 0x32, 0x95, 0x55, 0x38, 0xb4, 0x6b, 0x46, 0xef, 0xca, 0x13, 0x09, 0xc5, 0x17, 0x72, 0xc8, 0x17, 0x1a, 0x3a, 0x08, 0xcd, 0xfb, 0x8a, 0x52, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3104 = { .name = "xdh_wei448_3104", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3104_peerpubkey, .peerpubkeylen = 56, .ourpubkey = xdh_wei448_3104_ourpubkey, .ourpubkeylen = 56, .privkey = xdh_wei448_3104_privkey, .privkeylen = 56, .sharedsecret = (const unsigned char*)"", .sharedsecretlen = 0, .result = -1, .comment = "missing field crv, tcId is 522 in file x448_jwk_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3105 for XDH, tcId is 1 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3105_peerpubkey[] = { 0xf8, 0x07, 0x3f, 0xc0, 0x1c, 0x83, 0x58, 0x36, 0x2c, 0x08, 0x74, 0x0c, 0x91, 0x4b, 0x41, 0x98, 0x47, 0xef, 0x1e, 0x40, 0x9f, 0x4e, 0x40, 0xd9, 0x44, 0x0f, 0xeb, 0xc2, 0x6f, 0x00, 0x55, 0x1a, 0xdb, 0x1c, 0x37, 0xc6, 0xc2, 0xa8, 0x7d, 0x82, 0x83, 0xb8, 0xcb, 0x45, 0x3e, 0x92, 0x8a, 0x0d, 0x42, 0x79, 0x3f, 0x72, 0x89, 0x4e, 0x0f, 0x81, }; static const unsigned char xdh_wei448_3105_privkey[] = { 0xe4, 0x1c, 0x63, 0xd5, 0x15, 0x9c, 0x89, 0xde, 0x12, 0x16, 0x3f, 0xde, 0x9d, 0x04, 0xcf, 0x1f, 0x43, 0x0f, 0x34, 0x6b, 0x8b, 0x2c, 0x1f, 0x2a, 0x4b, 0x1f, 0x5a, 0xee, 0x63, 0xd1, 0x7a, 0xec, 0x29, 0xd4, 0xb1, 0xde, 0xbf, 0x8b, 0x64, 0x57, 0xe7, 0x80, 0x9d, 0x2b, 0x15, 0xff, 0x97, 0x79, 0xc9, 0x7b, 0xec, 0xb0, 0x4b, 0x82, 0x4e, 0xfa, }; static const unsigned char xdh_wei448_3105_sharedsecret[] = { 0xac, 0xd4, 0x96, 0xce, 0xb5, 0xf6, 0x8b, 0xf9, 0xc2, 0x67, 0x19, 0x6b, 0x40, 0x5f, 0x59, 0x70, 0x1a, 0x40, 0xec, 0x88, 0x74, 0x4b, 0x7e, 0x5e, 0x60, 0xbf, 0x8f, 0x81, 0xe8, 0xb1, 0x3d, 0xf4, 0x48, 0xef, 0xe4, 0x02, 0x00, 0x17, 0x50, 0xed, 0xb0, 0xb6, 0x95, 0xa0, 0x51, 0x2f, 0x08, 0xc5, 0x72, 0xa2, 0xe3, 0x56, 0x49, 0x3d, 0x17, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_3105 = { .name = "xdh_wei448_3105", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3105_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3105_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3105_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "normal case, tcId is 1 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3106 for XDH, tcId is 2 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3106_peerpubkey[] = { 0xf8, 0xd9, 0x14, 0x43, 0x04, 0xbd, 0x8c, 0x4d, 0x1f, 0xa6, 0x89, 0x57, 0x02, 0x6f, 0xc5, 0xc1, 0xb7, 0x50, 0x20, 0x36, 0x5b, 0x09, 0x91, 0xd2, 0xeb, 0x15, 0x41, 0xa4, 0xdf, 0xa3, 0xf1, 0x5e, 0x7a, 0x70, 0x28, 0x5c, 0xd3, 0x82, 0x8b, 0x52, 0x9b, 0xec, 0xe0, 0x21, 0xd3, 0xe0, 0x3a, 0x41, 0x5e, 0x4f, 0x8c, 0x02, 0xeb, 0x89, 0xef, 0x19, }; static const unsigned char xdh_wei448_3106_privkey[] = { 0xfc, 0xb4, 0xed, 0x3a, 0xfa, 0x64, 0xc8, 0x4b, 0x78, 0x44, 0x96, 0x5c, 0x84, 0x8a, 0xd8, 0x88, 0x19, 0x24, 0x19, 0x11, 0xcd, 0x65, 0xd3, 0x5a, 0x2b, 0xc2, 0x6a, 0x07, 0x3c, 0x08, 0xd8, 0xe1, 0x91, 0xbc, 0xfa, 0x04, 0xb2, 0xdb, 0xd9, 0x4e, 0x21, 0x9f, 0x74, 0x6d, 0xf9, 0x29, 0xd3, 0x29, 0x8e, 0x03, 0xaf, 0xeb, 0x73, 0xb4, 0xfb, 0xdb, }; static const unsigned char xdh_wei448_3106_sharedsecret[] = { 0x3f, 0x97, 0xc3, 0xf8, 0x7b, 0x96, 0x7d, 0xaa, 0xc4, 0xe5, 0xd1, 0x2e, 0xae, 0x05, 0xa8, 0x0c, 0x75, 0x1c, 0x3b, 0x3e, 0x10, 0x70, 0x88, 0x6b, 0x08, 0x3e, 0x90, 0xbb, 0x8f, 0x63, 0xcf, 0x76, 0xae, 0xa0, 0xcd, 0x4b, 0xf5, 0x03, 0x21, 0x87, 0xe5, 0x2b, 0x1d, 0x05, 0x13, 0xc9, 0x6f, 0x1a, 0xc8, 0x30, 0xde, 0xbc, 0xd3, 0x78, 0x87, 0xab, }; static const wycheproof_xdh_test xdh_wei448_3106 = { .name = "xdh_wei448_3106", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3106_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3106_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3106_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 2 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3107 for XDH, tcId is 3 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3107_peerpubkey[] = { 0x08, 0xeb, 0xf6, 0xed, 0xaa, 0x4f, 0x1e, 0x97, 0xf7, 0x67, 0x5e, 0x98, 0x39, 0xc6, 0x34, 0x9f, 0x71, 0xd8, 0x42, 0xef, 0x0e, 0xfe, 0x1e, 0x21, 0x17, 0x7b, 0x53, 0xdc, 0x40, 0x92, 0x70, 0x45, 0x7b, 0xb1, 0xea, 0x58, 0xe5, 0x76, 0xf5, 0xcc, 0xc6, 0x82, 0xe9, 0x2c, 0xcc, 0x9f, 0xf3, 0xc6, 0x54, 0x2a, 0x0a, 0x6e, 0xcd, 0x32, 0xe7, 0xe0, }; static const unsigned char xdh_wei448_3107_privkey[] = { 0xfc, 0xc8, 0x90, 0x42, 0xab, 0xb5, 0x58, 0xba, 0xf3, 0x2b, 0xb9, 0xa7, 0xf9, 0xea, 0x4b, 0x27, 0x4e, 0x10, 0xe1, 0x3d, 0xb6, 0x5b, 0xee, 0xdb, 0x2a, 0xca, 0x58, 0xea, 0x95, 0xc0, 0xe0, 0x84, 0x12, 0xab, 0xdd, 0x4c, 0x56, 0x84, 0x3e, 0xe9, 0xe2, 0x15, 0x49, 0xbd, 0xca, 0x11, 0x01, 0xfd, 0x0c, 0xa0, 0xf3, 0x0d, 0xe6, 0xeb, 0xce, 0x8e, }; static const unsigned char xdh_wei448_3107_sharedsecret[] = { 0x03, 0xaa, 0x74, 0xc7, 0x30, 0x02, 0x43, 0x38, 0x58, 0x04, 0x13, 0x3a, 0x75, 0x06, 0x35, 0xa9, 0xe0, 0xd5, 0xab, 0x8d, 0x46, 0x12, 0x6a, 0xba, 0xa9, 0x59, 0x56, 0x60, 0xda, 0x17, 0x2e, 0x9b, 0x1f, 0xe9, 0x29, 0x02, 0xbb, 0x71, 0x69, 0x71, 0x22, 0xf0, 0xd6, 0xc3, 0xff, 0x45, 0xb2, 0xa8, 0x97, 0xb7, 0x77, 0x38, 0x0f, 0xfe, 0x49, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_3107 = { .name = "xdh_wei448_3107", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3107_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3107_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3107_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 3 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3108 for XDH, tcId is 4 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3108_peerpubkey[] = { 0x69, 0xa4, 0x38, 0xc3, 0x0c, 0x11, 0xb4, 0xed, 0x55, 0x9c, 0x03, 0xab, 0x43, 0x0a, 0x64, 0xef, 0xb0, 0x1c, 0x98, 0xfe, 0x62, 0x32, 0x80, 0x3c, 0x07, 0x67, 0xa4, 0x03, 0x28, 0x32, 0x6d, 0xa2, 0x8c, 0x34, 0x91, 0xe1, 0x91, 0x51, 0xb4, 0xa8, 0x13, 0xaa, 0xdf, 0x6c, 0x96, 0x63, 0xd6, 0xdc, 0xd4, 0xcc, 0x9b, 0x07, 0x6c, 0x7e, 0x9f, 0xb5, }; static const unsigned char xdh_wei448_3108_privkey[] = { 0xe0, 0xaa, 0xe9, 0x6d, 0x22, 0xfa, 0x49, 0xd3, 0x24, 0x60, 0x1b, 0xb8, 0xb2, 0xdd, 0x9f, 0x73, 0x67, 0x09, 0xdf, 0x55, 0x7b, 0x8c, 0xb4, 0x69, 0xd6, 0xe2, 0xbe, 0xfa, 0x86, 0x35, 0x99, 0x8f, 0x51, 0x22, 0x2a, 0xde, 0xa9, 0x74, 0x10, 0x58, 0x8c, 0x5f, 0x5f, 0x4e, 0xf6, 0x18, 0x87, 0xc9, 0x4f, 0xea, 0x9a, 0x4e, 0x33, 0x24, 0x45, 0xbc, }; static const unsigned char xdh_wei448_3108_sharedsecret[] = { 0xc0, 0x85, 0x3d, 0xba, 0x67, 0x2e, 0x8c, 0x3e, 0x05, 0xde, 0x82, 0xd3, 0x44, 0xde, 0x1c, 0x72, 0xfc, 0xd9, 0xc8, 0x39, 0x1b, 0x17, 0x7f, 0x36, 0x33, 0x97, 0x81, 0x82, 0x70, 0xe9, 0x28, 0xbb, 0x0d, 0xe2, 0xe5, 0x50, 0x12, 0x8a, 0x6f, 0x4e, 0xa6, 0xde, 0x57, 0x93, 0x08, 0xe7, 0xc3, 0xd8, 0x23, 0xb3, 0xe6, 0x51, 0x16, 0xdf, 0x43, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3108 = { .name = "xdh_wei448_3108", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3108_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3108_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3108_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 4 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3109 for XDH, tcId is 5 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3109_peerpubkey[] = { 0x2c, 0x19, 0xd1, 0x2c, 0x78, 0x3c, 0xe4, 0xc6, 0x76, 0x03, 0xe0, 0x2a, 0x09, 0x3d, 0xdc, 0x1e, 0x14, 0x8b, 0x9f, 0x5f, 0x84, 0x53, 0xb1, 0x53, 0xe6, 0xd7, 0x26, 0x29, 0xb1, 0xf5, 0x0e, 0x60, 0x9f, 0xec, 0x8d, 0x0e, 0xe2, 0x3e, 0xee, 0xe7, 0x69, 0xff, 0xb9, 0x09, 0xdb, 0x4b, 0xad, 0xac, 0xdb, 0x99, 0xd5, 0xb9, 0x90, 0xd7, 0x58, 0x25, }; static const unsigned char xdh_wei448_3109_privkey[] = { 0x60, 0x1f, 0x19, 0x76, 0x9c, 0xd4, 0x9e, 0x82, 0x8b, 0x60, 0x0e, 0xe3, 0x73, 0xf1, 0xd0, 0x51, 0x4a, 0xbb, 0xd8, 0x95, 0xb5, 0x43, 0x67, 0x87, 0x60, 0xaa, 0xaf, 0x30, 0x0d, 0x4d, 0x1f, 0xaa, 0xf7, 0x3e, 0x80, 0x1e, 0x56, 0x88, 0x15, 0x28, 0x12, 0xae, 0x96, 0x9d, 0xb5, 0x22, 0xba, 0x8f, 0x3e, 0xd8, 0xa0, 0x03, 0x43, 0x71, 0xeb, 0xa3, }; static const unsigned char xdh_wei448_3109_sharedsecret[] = { 0x4a, 0x89, 0x66, 0x49, 0x7c, 0x42, 0xcc, 0x1c, 0x8e, 0xb7, 0x7e, 0x8a, 0xd1, 0x16, 0xed, 0x25, 0x82, 0xd3, 0xc8, 0x1a, 0x60, 0x2a, 0xf3, 0xd8, 0xb0, 0x8a, 0x99, 0x66, 0x97, 0xe2, 0x26, 0xbe, 0xb7, 0x86, 0x1b, 0xa7, 0x2e, 0xc9, 0x9f, 0xea, 0x58, 0x16, 0xb1, 0x18, 0x7c, 0x6c, 0x76, 0x8f, 0xf7, 0x5b, 0x1f, 0x7c, 0x52, 0x67, 0x41, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_3109 = { .name = "xdh_wei448_3109", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3109_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3109_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3109_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 5 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3110 for XDH, tcId is 6 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3110_peerpubkey[] = { 0xbe, 0x11, 0x10, 0x9a, 0x68, 0x72, 0xc3, 0x8a, 0xba, 0xd8, 0x61, 0x01, 0xb0, 0x56, 0x12, 0x08, 0xcc, 0x3a, 0x32, 0xa9, 0xe0, 0x34, 0x58, 0x22, 0xc7, 0x51, 0x4f, 0x64, 0x23, 0xf1, 0x42, 0x53, 0x0d, 0xf9, 0xbb, 0xfd, 0x72, 0xb0, 0xd4, 0xcd, 0x8e, 0x73, 0x4a, 0xe0, 0x92, 0xdd, 0x02, 0x20, 0x2f, 0x42, 0xb7, 0x8e, 0x54, 0x2e, 0x4c, 0xc5, }; static const unsigned char xdh_wei448_3110_privkey[] = { 0x3c, 0xc4, 0xe7, 0xb7, 0x22, 0xec, 0xe8, 0xf7, 0xcc, 0x1f, 0xb1, 0x88, 0xde, 0xd1, 0xc2, 0x75, 0x07, 0x14, 0x1d, 0xbf, 0x79, 0x41, 0xe1, 0xa9, 0xbb, 0x66, 0x2c, 0xf0, 0xff, 0xc4, 0x80, 0xc3, 0xe0, 0x4d, 0x31, 0x77, 0x82, 0x58, 0x38, 0x1e, 0x93, 0x8e, 0x82, 0x8e, 0x24, 0xdc, 0x6e, 0xa1, 0x14, 0xa6, 0xe0, 0xd2, 0x59, 0xae, 0xf9, 0xbf, }; static const unsigned char xdh_wei448_3110_sharedsecret[] = { 0x66, 0xb1, 0x3d, 0x08, 0xe7, 0x4c, 0x37, 0xe2, 0x34, 0x5d, 0x1a, 0x26, 0xef, 0xf2, 0x5b, 0xfc, 0xa0, 0x71, 0x00, 0x42, 0xd2, 0xda, 0xf0, 0xd3, 0xd4, 0xe9, 0x7e, 0x55, 0xdd, 0xec, 0xed, 0x10, 0xbc, 0xa4, 0x33, 0xf2, 0xd3, 0x30, 0x81, 0x03, 0xc8, 0xcc, 0xfa, 0x07, 0x90, 0x90, 0xdc, 0xe6, 0x9e, 0x90, 0xbd, 0x90, 0xab, 0x93, 0xd6, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_3110 = { .name = "xdh_wei448_3110", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3110_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3110_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3110_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 6 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3111 for XDH, tcId is 7 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3111_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3111_privkey[] = { 0x4c, 0x29, 0x11, 0x8c, 0xd3, 0xfc, 0xe5, 0x1c, 0x7f, 0xd0, 0x82, 0xc8, 0x88, 0x0d, 0x59, 0x2a, 0x9c, 0x2a, 0x93, 0x89, 0xaa, 0x37, 0x1c, 0xa6, 0xe6, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0xef, }; static const unsigned char xdh_wei448_3111_sharedsecret[] = { 0xf2, 0xd3, 0xc0, 0x20, 0x56, 0x56, 0x47, 0x95, 0xc5, 0x9a, 0xbb, 0xa5, 0xb6, 0x0b, 0x84, 0xf6, 0x34, 0x9d, 0xdb, 0xe6, 0xff, 0x38, 0x0b, 0x96, 0x73, 0xf4, 0xd0, 0x9e, 0x28, 0xba, 0x23, 0x72, 0xe2, 0xe8, 0xdc, 0xf2, 0x69, 0xce, 0xc4, 0x87, 0x70, 0x61, 0x86, 0x63, 0xc9, 0x32, 0x28, 0x44, 0x83, 0xf4, 0xee, 0x5a, 0x57, 0x18, 0xfd, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3111 = { .name = "xdh_wei448_3111", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3111_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3111_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3111_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 7 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3112 for XDH, tcId is 8 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3112_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3112_privkey[] = { 0xe8, 0x6c, 0xde, 0x64, 0x0f, 0x9f, 0x2a, 0x0e, 0x52, 0x8b, 0xe1, 0xff, 0x2a, 0x57, 0xa1, 0x26, 0x3a, 0x69, 0xe5, 0x60, 0xf9, 0x7c, 0x79, 0xf2, 0xd2, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0xbd, }; static const unsigned char xdh_wei448_3112_sharedsecret[] = { 0x13, 0xf5, 0x4e, 0x94, 0x80, 0xb6, 0x7c, 0xc5, 0xd5, 0x54, 0x5c, 0xbf, 0x6d, 0xfd, 0x10, 0xd1, 0x10, 0xb0, 0xa3, 0xb2, 0xa7, 0x9d, 0x22, 0x60, 0xd7, 0xd8, 0xf8, 0xf4, 0x9d, 0xb5, 0xd7, 0x82, 0x89, 0xd7, 0xcc, 0xc5, 0x69, 0x62, 0xa4, 0x93, 0x06, 0xaa, 0xe7, 0x40, 0x43, 0x91, 0x88, 0x0a, 0xaf, 0x9b, 0xed, 0xe5, 0xda, 0xb0, 0xfa, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3112 = { .name = "xdh_wei448_3112", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3112_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3112_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3112_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 8 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3113 for XDH, tcId is 9 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3113_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3113_privkey[] = { 0x24, 0xba, 0x9d, 0xf5, 0x6e, 0xf0, 0x36, 0xb4, 0xbc, 0xde, 0x7b, 0x01, 0x38, 0xb7, 0x98, 0x3a, 0xe0, 0xfe, 0x3d, 0x2f, 0xd4, 0xb9, 0xd1, 0x3e, 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0xeb, }; static const unsigned char xdh_wei448_3113_sharedsecret[] = { 0xf1, 0xef, 0x91, 0x74, 0x22, 0x2c, 0x42, 0x2c, 0xb3, 0xa6, 0x19, 0x4d, 0xa9, 0x1d, 0xbd, 0xab, 0x62, 0xb0, 0x68, 0x81, 0x79, 0xe7, 0x7f, 0x47, 0x01, 0x9c, 0xc9, 0xeb, 0x7c, 0x38, 0xda, 0x86, 0xf6, 0xf5, 0x1f, 0xc2, 0x50, 0xe8, 0xa4, 0x6d, 0xd4, 0xb3, 0x34, 0x1c, 0xc5, 0xf7, 0x1f, 0x1d, 0x8d, 0xaf, 0x0b, 0x28, 0xe8, 0x73, 0xd8, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3113 = { .name = "xdh_wei448_3113", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3113_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3113_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3113_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 9 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3114 for XDH, tcId is 10 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3114_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3114_privkey[] = { 0xd4, 0xbd, 0xcc, 0x2b, 0xca, 0x46, 0xee, 0x14, 0x49, 0xcc, 0x42, 0xcc, 0x8e, 0x97, 0xbc, 0x40, 0x43, 0xc6, 0xe2, 0xc0, 0xd0, 0x17, 0x77, 0x6d, 0xd6, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x8e, }; static const unsigned char xdh_wei448_3114_sharedsecret[] = { 0xbb, 0x09, 0xd4, 0x9c, 0xac, 0x99, 0xb9, 0x3b, 0x07, 0x1a, 0x19, 0xe6, 0xac, 0xa0, 0x6d, 0x9c, 0x9c, 0xc4, 0xc5, 0x78, 0x30, 0x4b, 0x3b, 0xe6, 0x48, 0x0d, 0xc4, 0x00, 0x3e, 0xa6, 0xe9, 0x1d, 0xe8, 0x7b, 0x09, 0xfd, 0xfc, 0x31, 0x16, 0x15, 0x1a, 0xe6, 0x6e, 0x98, 0x6a, 0x08, 0x61, 0x3e, 0xe9, 0xea, 0xf1, 0x26, 0x74, 0x30, 0x0e, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3114 = { .name = "xdh_wei448_3114", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3114_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3114_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3114_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 10 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3115 for XDH, tcId is 11 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3115_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3115_privkey[] = { 0x90, 0xd2, 0x68, 0x17, 0x75, 0xbe, 0xc7, 0x4d, 0x89, 0x41, 0x3d, 0xca, 0xfd, 0x01, 0xed, 0x3e, 0x4b, 0x6d, 0x1c, 0x8a, 0xdc, 0x3c, 0x28, 0x88, 0xd6, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0xb5, }; static const unsigned char xdh_wei448_3115_sharedsecret[] = { 0xc1, 0xb5, 0x7f, 0x0e, 0xcb, 0xde, 0x85, 0x2e, 0xf4, 0xc1, 0x84, 0xcf, 0x5b, 0xfc, 0xf7, 0x92, 0x44, 0x05, 0x86, 0x80, 0xc5, 0x91, 0x90, 0x79, 0x98, 0x8b, 0x0f, 0xd5, 0x62, 0xb7, 0x47, 0x58, 0x3e, 0x25, 0x82, 0x70, 0xd9, 0x1c, 0x4d, 0xa7, 0xab, 0xfd, 0xc6, 0xc2, 0x77, 0x84, 0xc6, 0x51, 0x74, 0xb7, 0xe6, 0x12, 0x53, 0x40, 0x97, 0x56, }; static const wycheproof_xdh_test xdh_wei448_3115 = { .name = "xdh_wei448_3115", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3115_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3115_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3115_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 11 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3116 for XDH, tcId is 12 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3116_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3116_privkey[] = { 0xfc, 0xad, 0x30, 0x6b, 0xc8, 0xe2, 0x9a, 0x58, 0x62, 0x9f, 0x84, 0xf3, 0x13, 0x23, 0x4d, 0x16, 0x0b, 0x21, 0x59, 0x86, 0x3d, 0xcd, 0x54, 0x01, 0xa2, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0xc4, }; static const unsigned char xdh_wei448_3116_sharedsecret[] = { 0x72, 0xaf, 0x8c, 0x41, 0xcd, 0x06, 0xd6, 0x24, 0x3b, 0x1c, 0xb5, 0x2f, 0xfe, 0x39, 0x96, 0x20, 0x74, 0x40, 0xca, 0xbd, 0x36, 0xd4, 0xb3, 0x4e, 0x64, 0x30, 0x1f, 0x5a, 0xf0, 0x48, 0x90, 0xfb, 0x70, 0xd4, 0x97, 0xf1, 0x91, 0x8e, 0x53, 0x97, 0xd8, 0xee, 0x3f, 0x4b, 0xab, 0x46, 0xcf, 0xdd, 0x5a, 0x07, 0x14, 0x62, 0xb7, 0x14, 0x8a, 0xc8, }; static const wycheproof_xdh_test xdh_wei448_3116 = { .name = "xdh_wei448_3116", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3116_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3116_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3116_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 12 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3117 for XDH, tcId is 13 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3117_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3117_privkey[] = { 0x58, 0xe8, 0x40, 0x8c, 0xbd, 0x2b, 0xed, 0xc1, 0x55, 0x41, 0x5d, 0xb2, 0x82, 0x65, 0x60, 0x82, 0x79, 0x6d, 0xc6, 0xa6, 0xa7, 0x56, 0xe5, 0x91, 0xaa, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0xa3, }; static const unsigned char xdh_wei448_3117_sharedsecret[] = { 0xe3, 0xef, 0x63, 0x36, 0x7c, 0xce, 0xaa, 0x89, 0x2b, 0x9e, 0xbb, 0x00, 0x07, 0x2a, 0x92, 0x29, 0x6d, 0xdd, 0x27, 0xa0, 0xc6, 0x62, 0xe9, 0x11, 0xdf, 0x2b, 0xf0, 0x4f, 0xdf, 0xbd, 0x2a, 0x20, 0xd1, 0x08, 0x55, 0xb9, 0x44, 0x2c, 0x0d, 0xf4, 0xfb, 0xa8, 0x3e, 0x3f, 0x95, 0xe2, 0xdd, 0x04, 0xd9, 0xc6, 0xd6, 0xee, 0x69, 0x4e, 0xad, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_3117 = { .name = "xdh_wei448_3117", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3117_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3117_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3117_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 13 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3118 for XDH, tcId is 14 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3118_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3118_privkey[] = { 0xd0, 0xcb, 0x88, 0x52, 0x80, 0xa8, 0xb0, 0xcf, 0x7c, 0x0d, 0xd9, 0xf2, 0x76, 0x77, 0x85, 0x8d, 0xb3, 0xeb, 0x2d, 0x16, 0xba, 0x92, 0x1d, 0x99, 0xf1, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0xd6, }; static const unsigned char xdh_wei448_3118_sharedsecret[] = { 0xe8, 0x74, 0xdd, 0xd0, 0x3a, 0xda, 0xa8, 0x86, 0x9b, 0xb8, 0x5e, 0x9d, 0x56, 0xee, 0xac, 0xd7, 0xdf, 0x00, 0x87, 0xae, 0x3a, 0xa0, 0x0d, 0x9d, 0xda, 0xea, 0xe4, 0x0c, 0x87, 0xa6, 0x4d, 0x16, 0x26, 0xa3, 0x34, 0x3b, 0x3e, 0x49, 0xfc, 0x87, 0xb2, 0x77, 0x42, 0xf7, 0xd5, 0x48, 0x72, 0x48, 0xf1, 0x71, 0xef, 0xd8, 0x18, 0x23, 0xbb, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3118 = { .name = "xdh_wei448_3118", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3118_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3118_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3118_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 14 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3119 for XDH, tcId is 15 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3119_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3119_privkey[] = { 0x40, 0x67, 0x0a, 0x1e, 0xfa, 0x70, 0x72, 0xa6, 0x5c, 0x27, 0x9f, 0x96, 0x18, 0x26, 0x3a, 0x9e, 0x26, 0x6f, 0xe1, 0x2d, 0x82, 0xff, 0x53, 0xc2, 0x9b, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x8e, }; static const unsigned char xdh_wei448_3119_sharedsecret[] = { 0xf2, 0x7f, 0x02, 0xb4, 0x52, 0xf9, 0xa5, 0xe9, 0x5f, 0x08, 0x09, 0x2e, 0x7e, 0x40, 0x58, 0xae, 0x56, 0x07, 0x32, 0xa4, 0xff, 0xd5, 0xe4, 0xc4, 0xcc, 0x49, 0x7a, 0xf9, 0xd8, 0xe0, 0xd7, 0x7f, 0x3d, 0x94, 0xd0, 0x7d, 0xea, 0x93, 0x2f, 0x0a, 0x79, 0xfa, 0x63, 0xc8, 0x52, 0xa1, 0xcf, 0x03, 0xb6, 0x0a, 0xb5, 0xa5, 0x20, 0x17, 0x48, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3119 = { .name = "xdh_wei448_3119", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3119_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3119_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3119_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 15 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3120 for XDH, tcId is 16 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3120_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3120_privkey[] = { 0xb8, 0xfe, 0xca, 0xaa, 0x71, 0xe4, 0x2c, 0x55, 0xfa, 0x42, 0xcc, 0xc0, 0x9c, 0x9b, 0xb1, 0xa0, 0x98, 0xc4, 0x1e, 0x98, 0x16, 0x82, 0x46, 0x1b, 0xdc, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x80, }; static const unsigned char xdh_wei448_3120_sharedsecret[] = { 0x70, 0xaf, 0x0e, 0xba, 0xe5, 0x66, 0xf3, 0x2b, 0xff, 0x79, 0x7c, 0x1b, 0xab, 0x73, 0xf9, 0x9f, 0x31, 0xbe, 0x5b, 0xf4, 0xbc, 0x76, 0xf0, 0x13, 0xf2, 0x47, 0xc2, 0x5f, 0x3a, 0xea, 0x5a, 0xce, 0x10, 0x22, 0x4f, 0xf0, 0xeb, 0x9d, 0x3c, 0xff, 0xe4, 0xba, 0x1f, 0x98, 0xfd, 0x59, 0xe0, 0x28, 0x63, 0x6b, 0x3c, 0x48, 0x27, 0x75, 0x59, 0xad, }; static const wycheproof_xdh_test xdh_wei448_3120 = { .name = "xdh_wei448_3120", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3120_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3120_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3120_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 16 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3121 for XDH, tcId is 17 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3121_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3121_privkey[] = { 0xc8, 0xaa, 0x85, 0x74, 0x8b, 0x5c, 0xcd, 0x0f, 0x1f, 0x83, 0x4a, 0x37, 0x15, 0x59, 0x2e, 0x52, 0x3c, 0x2e, 0xd6, 0x09, 0xbf, 0xd1, 0x7f, 0x3b, 0x58, 0xed, 0x5a, 0x5f, 0xac, 0xad, 0x74, 0x9a, 0x43, 0x31, 0xdf, 0xb2, 0x4d, 0x8c, 0xf7, 0xd8, 0x20, 0x9b, 0x49, 0x62, 0xc2, 0x70, 0x3c, 0x01, 0xa5, 0xf9, 0x73, 0xb7, 0xc8, 0x2a, 0x3f, 0xec, }; static const unsigned char xdh_wei448_3121_sharedsecret[] = { 0xe4, 0x51, 0x31, 0x64, 0x3f, 0x60, 0x78, 0x81, 0xb9, 0xeb, 0xa1, 0x45, 0xae, 0x79, 0xaa, 0xe1, 0x6e, 0x64, 0xe9, 0x91, 0x29, 0x84, 0x33, 0x84, 0x86, 0x9b, 0xc2, 0xb5, 0xb3, 0xd7, 0xe7, 0x29, 0x3d, 0x89, 0x49, 0xb3, 0xc7, 0x95, 0xfa, 0xf0, 0x9a, 0xe3, 0xf7, 0xdf, 0x9f, 0x8d, 0xeb, 0x31, 0x42, 0x37, 0x3a, 0xd1, 0x70, 0xec, 0x34, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3121 = { .name = "xdh_wei448_3121", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3121_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3121_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3121_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 17 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3122 for XDH, tcId is 18 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3122_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3122_privkey[] = { 0x14, 0x35, 0xf2, 0x60, 0x75, 0x2f, 0xb2, 0x7d, 0xd1, 0xa4, 0x71, 0xac, 0x4a, 0x08, 0xd9, 0x55, 0xc6, 0xe3, 0x93, 0xc8, 0x23, 0xa8, 0x58, 0xdc, 0x1d, 0x62, 0x38, 0x76, 0x68, 0x66, 0xf6, 0x22, 0x2e, 0x75, 0x26, 0xea, 0x4e, 0x51, 0xbf, 0x68, 0x47, 0xc6, 0x27, 0xef, 0x66, 0x28, 0x21, 0x1b, 0xa9, 0xde, 0xa3, 0x92, 0x2d, 0x70, 0x2c, 0xca, }; static const unsigned char xdh_wei448_3122_sharedsecret[] = { 0x0f, 0xcc, 0xdf, 0x4e, 0xd6, 0x30, 0xda, 0x45, 0x4c, 0x2a, 0xb0, 0xd6, 0xb4, 0x01, 0xb5, 0x65, 0xbd, 0xb1, 0x6b, 0x65, 0x5f, 0xb7, 0xc7, 0x60, 0x10, 0xf2, 0x50, 0xeb, 0x22, 0xcb, 0x3c, 0x92, 0xec, 0x9d, 0x96, 0x83, 0x59, 0xf9, 0x7a, 0x18, 0xe8, 0x55, 0xf6, 0x3f, 0x8d, 0x66, 0x2c, 0xcf, 0x66, 0xe3, 0x34, 0x90, 0x8c, 0x12, 0xfc, 0xa2, }; static const wycheproof_xdh_test xdh_wei448_3122 = { .name = "xdh_wei448_3122", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3122_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3122_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3122_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 18 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3123 for XDH, tcId is 19 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3123_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, }; static const unsigned char xdh_wei448_3123_privkey[] = { 0x24, 0x84, 0xb1, 0xcc, 0xc0, 0x83, 0x04, 0x16, 0xc9, 0xc2, 0x32, 0xe1, 0xc9, 0xe3, 0xac, 0x76, 0x9d, 0x15, 0x58, 0x3b, 0x28, 0x2e, 0xca, 0x13, 0x05, 0x66, 0x49, 0x47, 0x6c, 0x69, 0x51, 0x05, 0x68, 0xe5, 0x0b, 0xa1, 0x5b, 0xb0, 0x48, 0xf4, 0xe4, 0x4a, 0x88, 0xae, 0xb7, 0x79, 0x9a, 0xe7, 0xac, 0xdb, 0x6b, 0x0b, 0x7d, 0xf7, 0x7c, 0xec, }; static const unsigned char xdh_wei448_3123_sharedsecret[] = { 0x70, 0xed, 0x1d, 0x31, 0x76, 0xe3, 0x08, 0xe5, 0x22, 0x1f, 0xc3, 0xf4, 0x16, 0xa8, 0x71, 0x27, 0xa3, 0x97, 0xec, 0x8a, 0x75, 0x56, 0x9c, 0xbf, 0x75, 0x59, 0x04, 0x03, 0x0e, 0xd3, 0xce, 0x20, 0x2b, 0x93, 0xbd, 0xd7, 0xa6, 0xdd, 0xab, 0x32, 0x74, 0x6c, 0xd8, 0x0e, 0x30, 0xf5, 0xb3, 0xcd, 0x50, 0x6d, 0x42, 0xaf, 0x42, 0x7f, 0x1f, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3123 = { .name = "xdh_wei448_3123", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3123_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3123_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3123_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 19 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3124 for XDH, tcId is 20 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3124_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x03, 0x00, }; static const unsigned char xdh_wei448_3124_privkey[] = { 0x24, 0xcc, 0x1c, 0x2b, 0xd0, 0x33, 0x21, 0x21, 0x0d, 0x80, 0xe7, 0xba, 0x12, 0xba, 0xc1, 0x85, 0x1c, 0xff, 0xaf, 0xcd, 0x78, 0x73, 0x83, 0xd7, 0x38, 0x3f, 0xaf, 0xf6, 0x69, 0xd5, 0x1e, 0x07, 0x55, 0x4d, 0x00, 0x6a, 0xf1, 0x4b, 0xaa, 0xe0, 0x81, 0x8e, 0x7d, 0x27, 0x04, 0x45, 0x67, 0x0e, 0x53, 0xf2, 0x2b, 0x7e, 0xff, 0xbf, 0xa6, 0x89, }; static const unsigned char xdh_wei448_3124_sharedsecret[] = { 0xef, 0xe4, 0xb3, 0x2d, 0x8c, 0xcf, 0x5f, 0x42, 0xe4, 0x8d, 0x7c, 0xfe, 0x38, 0x17, 0xa7, 0xb8, 0x2a, 0x13, 0xa7, 0xb7, 0x68, 0x05, 0x39, 0x4d, 0x77, 0x75, 0xc6, 0x49, 0xa8, 0x88, 0x0c, 0x23, 0x79, 0xed, 0x54, 0x6f, 0x37, 0xc0, 0xeb, 0xd9, 0xeb, 0xb5, 0xdc, 0xb0, 0xd2, 0x60, 0xb7, 0xc3, 0xd2, 0x41, 0x70, 0x37, 0x97, 0xb1, 0xf5, 0x4a, }; static const wycheproof_xdh_test xdh_wei448_3124 = { .name = "xdh_wei448_3124", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3124_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3124_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3124_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 20 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3125 for XDH, tcId is 21 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3125_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, }; static const unsigned char xdh_wei448_3125_privkey[] = { 0xbc, 0x08, 0xf8, 0x2f, 0xf3, 0xbb, 0xbb, 0x21, 0x6d, 0x5a, 0x4a, 0x25, 0x38, 0x60, 0xb6, 0x11, 0xe5, 0xff, 0x8b, 0xf7, 0x55, 0x99, 0x6b, 0xec, 0x7f, 0x77, 0xa4, 0xed, 0xb3, 0x46, 0x60, 0xb8, 0xd3, 0x50, 0xf2, 0x50, 0x1f, 0xc1, 0xd9, 0x13, 0x70, 0x41, 0x56, 0xaa, 0x26, 0xde, 0xcf, 0xc3, 0x59, 0xd1, 0x05, 0x3b, 0x18, 0xe0, 0x04, 0xec, }; static const unsigned char xdh_wei448_3125_sharedsecret[] = { 0x15, 0x65, 0x07, 0xca, 0x71, 0x79, 0x8a, 0x7f, 0xaf, 0xc5, 0x76, 0xef, 0x43, 0x67, 0x6a, 0xbf, 0x43, 0x81, 0x5b, 0xc7, 0x33, 0x2f, 0x8b, 0xa6, 0xee, 0xfc, 0x07, 0x27, 0xc6, 0x5d, 0x77, 0xd2, 0x4c, 0xcb, 0xa2, 0xfa, 0x81, 0x09, 0x3b, 0x85, 0x27, 0xc8, 0x27, 0x4b, 0x6a, 0xd0, 0xfe, 0x94, 0x62, 0xe9, 0x47, 0x4d, 0xf1, 0xbe, 0x3a, 0x49, }; static const wycheproof_xdh_test xdh_wei448_3125 = { .name = "xdh_wei448_3125", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3125_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3125_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3125_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 21 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3126 for XDH, tcId is 22 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3126_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_3126_privkey[] = { 0x8c, 0x37, 0xfb, 0x35, 0xea, 0xc1, 0xdb, 0xda, 0x6a, 0x3b, 0x5b, 0xf4, 0x92, 0xc1, 0xf6, 0x42, 0xc7, 0x61, 0xbe, 0x3a, 0xdf, 0x0a, 0xb7, 0x61, 0x7a, 0x66, 0x00, 0x25, 0x76, 0xc4, 0x5b, 0xba, 0x82, 0x02, 0x97, 0x0b, 0xae, 0x6c, 0x5e, 0x05, 0xf6, 0x45, 0xf5, 0x43, 0x9c, 0xa2, 0xf4, 0x2b, 0x89, 0xda, 0xca, 0xce, 0x1a, 0x5d, 0x0e, 0x82, }; static const unsigned char xdh_wei448_3126_sharedsecret[] = { 0x60, 0xc4, 0x68, 0xdf, 0x97, 0xe2, 0xe4, 0x42, 0x7f, 0x27, 0x42, 0x0c, 0xc6, 0xbc, 0x9e, 0xeb, 0xaa, 0x2b, 0xce, 0xb8, 0x27, 0xeb, 0x55, 0xa1, 0x87, 0xfc, 0x5c, 0x29, 0x55, 0x5e, 0x72, 0xa6, 0x63, 0x24, 0x3f, 0x6a, 0xf4, 0x09, 0x56, 0x41, 0xd7, 0x2c, 0xae, 0xac, 0xb3, 0x69, 0x72, 0x0e, 0xa1, 0x8c, 0xad, 0xd6, 0xef, 0xdb, 0xec, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_3126 = { .name = "xdh_wei448_3126", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3126_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3126_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3126_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 22 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3127 for XDH, tcId is 23 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3127_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3127_privkey[] = { 0x00, 0x68, 0x4b, 0xfc, 0x8c, 0xb9, 0x03, 0x17, 0x9b, 0x71, 0xc2, 0xc4, 0x52, 0xf2, 0xda, 0x1e, 0x6b, 0x47, 0x6c, 0x04, 0x58, 0xb3, 0x50, 0x35, 0x6d, 0x89, 0xb4, 0x02, 0x40, 0x3d, 0x01, 0x76, 0x02, 0x8b, 0x43, 0xcd, 0xfe, 0xbc, 0x4e, 0xb7, 0x82, 0x3e, 0x8c, 0x65, 0xac, 0x14, 0x45, 0x3f, 0x59, 0x42, 0x67, 0xf7, 0x7c, 0x40, 0xb2, 0x80, }; static const unsigned char xdh_wei448_3127_sharedsecret[] = { 0x7f, 0x6a, 0xbc, 0x32, 0x1d, 0x71, 0x04, 0x95, 0x5b, 0x76, 0x3a, 0xc6, 0x86, 0x81, 0xc2, 0xc4, 0xd1, 0xbb, 0x72, 0x07, 0xce, 0x63, 0x85, 0xf1, 0x8e, 0x60, 0xba, 0x5f, 0x31, 0x00, 0xc1, 0x3c, 0xdc, 0xad, 0xab, 0x23, 0x55, 0x46, 0xa0, 0xc9, 0x2a, 0x47, 0x92, 0x5d, 0xef, 0xb2, 0x69, 0x2e, 0xe2, 0xac, 0xed, 0x42, 0xbb, 0xff, 0x50, 0x8f, }; static const wycheproof_xdh_test xdh_wei448_3127 = { .name = "xdh_wei448_3127", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3127_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3127_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3127_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 23 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3128 for XDH, tcId is 24 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3128_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3128_privkey[] = { 0xe8, 0x76, 0x15, 0x98, 0xba, 0x21, 0x2a, 0x4e, 0x97, 0x24, 0xea, 0xab, 0x2f, 0x3c, 0x22, 0x5b, 0x0c, 0xc0, 0x19, 0x59, 0x5f, 0xa7, 0x02, 0xae, 0x03, 0x61, 0xbf, 0x3d, 0x34, 0x8d, 0x9d, 0x6f, 0x7a, 0x04, 0x35, 0x24, 0x24, 0xa5, 0xfd, 0x30, 0x26, 0x65, 0x0f, 0x2a, 0x04, 0x57, 0x44, 0x99, 0xda, 0xeb, 0xc7, 0x1f, 0x4c, 0x6d, 0x0f, 0xd9, }; static const unsigned char xdh_wei448_3128_sharedsecret[] = { 0x25, 0x21, 0xc2, 0x83, 0x65, 0x13, 0x96, 0xfb, 0x03, 0xbf, 0x07, 0x4e, 0x3c, 0xe6, 0xd0, 0x8d, 0x7b, 0x39, 0x3d, 0xe5, 0xfa, 0x85, 0xe9, 0xac, 0x63, 0x3c, 0xef, 0x32, 0x8a, 0xc5, 0x45, 0x76, 0xf6, 0x00, 0x5f, 0x34, 0xc7, 0x95, 0x42, 0x5c, 0x56, 0xdb, 0x62, 0xe8, 0xce, 0xdd, 0xf8, 0x07, 0xd6, 0x8e, 0x37, 0x64, 0x6a, 0xfb, 0x11, 0x84, }; static const wycheproof_xdh_test xdh_wei448_3128 = { .name = "xdh_wei448_3128", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3128_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3128_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3128_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 24 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3129 for XDH, tcId is 25 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3129_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, }; static const unsigned char xdh_wei448_3129_privkey[] = { 0x78, 0xd4, 0x03, 0x21, 0xd4, 0xb0, 0xdc, 0x6a, 0x7c, 0x86, 0xdf, 0x13, 0xb5, 0x2e, 0x44, 0x4c, 0x87, 0x27, 0xa6, 0xd3, 0xbb, 0x4b, 0xe1, 0x6b, 0xb9, 0x15, 0xca, 0xb5, 0x22, 0xac, 0x8a, 0x94, 0x29, 0x78, 0xf7, 0x6e, 0x7d, 0xd6, 0xf9, 0xf4, 0x43, 0x9f, 0x5e, 0xf5, 0x35, 0xe6, 0xf4, 0x3e, 0x71, 0x1b, 0x69, 0x2a, 0xcc, 0x6e, 0xa4, 0xa3, }; static const unsigned char xdh_wei448_3129_sharedsecret[] = { 0x45, 0xd7, 0xf9, 0x32, 0x20, 0x1b, 0x24, 0xe1, 0x9b, 0x08, 0x60, 0x80, 0xb5, 0x77, 0xdc, 0x42, 0x80, 0x82, 0x59, 0x75, 0xbf, 0x3f, 0x12, 0x25, 0xbd, 0xde, 0x17, 0x61, 0x3b, 0xfb, 0x39, 0x83, 0x21, 0x53, 0x57, 0xdc, 0x1b, 0x9c, 0x77, 0xa7, 0xe8, 0xba, 0x1d, 0x3d, 0xb5, 0x8f, 0x37, 0x6a, 0x1c, 0x8c, 0x63, 0xd1, 0x30, 0x8c, 0xd9, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_3129 = { .name = "xdh_wei448_3129", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3129_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3129_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3129_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 25 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3130 for XDH, tcId is 26 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3130_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3130_privkey[] = { 0x50, 0xad, 0x85, 0x6c, 0xc0, 0x03, 0xe8, 0xeb, 0xee, 0xf9, 0x91, 0x3f, 0x67, 0xdd, 0xc4, 0xa4, 0x6a, 0x93, 0x47, 0xd0, 0x92, 0x85, 0x65, 0xb9, 0xd7, 0xf8, 0xb1, 0xc0, 0xf9, 0xdc, 0x31, 0xbc, 0xb7, 0x67, 0x97, 0x48, 0x6e, 0x05, 0x33, 0x19, 0xd1, 0x49, 0xf4, 0xc7, 0x94, 0x21, 0xef, 0x5e, 0xc7, 0xd1, 0x89, 0x5f, 0xd3, 0x2f, 0x3a, 0xd5, }; static const unsigned char xdh_wei448_3130_sharedsecret[] = { 0x15, 0xac, 0x85, 0xa8, 0x8f, 0x14, 0x08, 0x1d, 0x6a, 0x59, 0x19, 0xbf, 0x8d, 0x06, 0xa8, 0xc6, 0xbd, 0xcf, 0xfb, 0xba, 0x97, 0x0c, 0x54, 0x7b, 0x26, 0x37, 0x7b, 0x23, 0x8d, 0x64, 0x82, 0xef, 0xf5, 0x8d, 0x36, 0xe0, 0xb8, 0x7a, 0x00, 0xce, 0xf9, 0xb8, 0x0b, 0xe0, 0x1e, 0x69, 0xae, 0x0d, 0x6c, 0x12, 0xed, 0xdd, 0xaa, 0xbf, 0x7c, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_3130 = { .name = "xdh_wei448_3130", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3130_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3130_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3130_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 26 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3131 for XDH, tcId is 27 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3131_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3131_privkey[] = { 0xa4, 0xee, 0xec, 0xbd, 0x9d, 0xdc, 0xe4, 0x81, 0x22, 0x2c, 0x22, 0xf0, 0x53, 0xa4, 0xbe, 0x30, 0xcf, 0xa1, 0x06, 0x8b, 0x57, 0x90, 0xd2, 0xbd, 0xb7, 0x88, 0x38, 0x2c, 0xb9, 0x66, 0xce, 0xfb, 0xb6, 0x06, 0xce, 0xe4, 0x7f, 0xc2, 0x36, 0xc3, 0x71, 0x3d, 0x9f, 0x8e, 0x65, 0xad, 0x04, 0x4e, 0x10, 0xf8, 0x9f, 0x64, 0x1c, 0xc3, 0x1c, 0xaa, }; static const unsigned char xdh_wei448_3131_sharedsecret[] = { 0x48, 0xb9, 0xaa, 0x64, 0xce, 0x34, 0x00, 0x6b, 0x2d, 0xb0, 0x92, 0x82, 0x34, 0xe8, 0x86, 0x36, 0x8e, 0xce, 0xb9, 0x2a, 0x3c, 0x46, 0x7f, 0xaa, 0x15, 0x5d, 0x5f, 0x9d, 0xe5, 0x3c, 0xa3, 0x5a, 0xd0, 0xc3, 0x83, 0xb5, 0xdc, 0xd9, 0xa1, 0xf8, 0x05, 0x1d, 0x80, 0x36, 0x5c, 0x6c, 0xf5, 0x2e, 0x54, 0x35, 0x3e, 0x2b, 0xca, 0x70, 0x60, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_3131 = { .name = "xdh_wei448_3131", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3131_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3131_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3131_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 27 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3132 for XDH, tcId is 28 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3132_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3132_privkey[] = { 0x54, 0x10, 0x73, 0x5b, 0xd9, 0x5c, 0xd0, 0x64, 0x0f, 0xc1, 0xe2, 0xe1, 0x1a, 0x02, 0x88, 0x03, 0xf1, 0xcb, 0x43, 0x44, 0xf4, 0xef, 0xee, 0x75, 0xae, 0x0b, 0x9e, 0xb9, 0xdb, 0x56, 0x27, 0xd6, 0xe2, 0xa4, 0xb6, 0xdb, 0xad, 0x4a, 0xf3, 0xfe, 0xe9, 0x86, 0xcc, 0xe9, 0x34, 0xbe, 0xd6, 0x0a, 0x0e, 0x86, 0x98, 0x20, 0x46, 0x38, 0xb5, 0xa9, }; static const unsigned char xdh_wei448_3132_sharedsecret[] = { 0x89, 0x51, 0xb4, 0xfc, 0x36, 0x2c, 0xcd, 0x60, 0xcb, 0x56, 0x0f, 0xde, 0x65, 0xfa, 0x12, 0x61, 0x58, 0xa9, 0x72, 0x7a, 0x3d, 0x57, 0x7c, 0x50, 0x75, 0x66, 0xfa, 0x5b, 0x4a, 0x79, 0xc2, 0xac, 0x6b, 0xfd, 0x6c, 0x69, 0xde, 0xfe, 0xb9, 0xeb, 0x29, 0x83, 0x0c, 0xc4, 0xaa, 0xf6, 0x42, 0x7f, 0x2a, 0xe6, 0x6b, 0x2c, 0xd3, 0x20, 0x15, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3132 = { .name = "xdh_wei448_3132", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3132_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3132_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3132_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 28 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3133 for XDH, tcId is 29 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3133_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3133_privkey[] = { 0x00, 0xfc, 0x88, 0x42, 0xa4, 0x72, 0x19, 0xed, 0x8f, 0x3e, 0xfa, 0xe3, 0x98, 0x21, 0x40, 0xf4, 0x30, 0x33, 0xdf, 0x74, 0x88, 0xf9, 0x48, 0xeb, 0x2e, 0x24, 0x6a, 0x71, 0xa4, 0x55, 0xfd, 0xec, 0x2e, 0xe0, 0x46, 0x14, 0xe9, 0xab, 0x1c, 0xf4, 0xbb, 0xa4, 0x9e, 0x11, 0xc7, 0xc8, 0x59, 0x1b, 0xb6, 0x7f, 0x9a, 0x93, 0x41, 0x8d, 0x77, 0xd1, }; static const unsigned char xdh_wei448_3133_sharedsecret[] = { 0x8c, 0x3b, 0xd6, 0xc5, 0xe7, 0xe2, 0x02, 0x1e, 0x52, 0x90, 0x9a, 0x8c, 0xbe, 0xbc, 0x44, 0xba, 0x52, 0x3b, 0xdf, 0xa3, 0xac, 0x6c, 0xf8, 0xc7, 0xe3, 0x58, 0xc5, 0x8f, 0x55, 0x15, 0x07, 0x78, 0x41, 0x1e, 0xe0, 0x1c, 0x0b, 0x08, 0xbd, 0x52, 0xac, 0x34, 0xf8, 0xa1, 0x2c, 0xf8, 0xb2, 0x7f, 0xbd, 0x2d, 0xab, 0xa7, 0x37, 0x6f, 0x40, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3133 = { .name = "xdh_wei448_3133", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3133_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3133_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3133_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 29 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3134 for XDH, tcId is 30 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3134_peerpubkey[] = { 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3134_privkey[] = { 0xcc, 0x37, 0xe2, 0xf2, 0x8b, 0xca, 0x03, 0x3c, 0x05, 0x54, 0xa2, 0x52, 0xa2, 0x31, 0x27, 0xd8, 0xc4, 0x4b, 0xd5, 0x91, 0x1a, 0x96, 0xfd, 0x99, 0x0e, 0xcf, 0x72, 0xbf, 0xf3, 0x4c, 0x47, 0x34, 0x71, 0xd7, 0x2c, 0x61, 0xa7, 0xa5, 0x0f, 0x8d, 0x7b, 0xdc, 0x34, 0x34, 0x1a, 0x63, 0xb8, 0xe5, 0xfc, 0x8c, 0xb1, 0x41, 0x28, 0xac, 0xf7, 0x87, }; static const unsigned char xdh_wei448_3134_sharedsecret[] = { 0xde, 0x4e, 0xee, 0xaf, 0xf2, 0xda, 0x2b, 0x47, 0x02, 0x33, 0x42, 0x24, 0xc8, 0x9d, 0xca, 0xd7, 0x8c, 0x98, 0xdc, 0x41, 0xb5, 0xf5, 0x13, 0x67, 0x74, 0xfb, 0xd2, 0x07, 0x67, 0xf5, 0x12, 0x91, 0x2e, 0x1f, 0xf9, 0xa7, 0xed, 0x2d, 0x96, 0xbe, 0x6f, 0x45, 0x2e, 0x8b, 0xcc, 0xac, 0x0b, 0x35, 0x73, 0xc3, 0xd8, 0x0b, 0x78, 0xc6, 0x94, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3134 = { .name = "xdh_wei448_3134", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3134_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3134_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3134_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 30 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3135 for XDH, tcId is 31 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3135_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3135_privkey[] = { 0xd4, 0x9e, 0xe2, 0x78, 0xca, 0xc7, 0x06, 0x42, 0x8b, 0x35, 0x1a, 0x4a, 0x23, 0xd9, 0x11, 0x88, 0xea, 0xf5, 0x5b, 0x5f, 0xe2, 0xba, 0x20, 0xa9, 0xfd, 0x55, 0xb0, 0x36, 0x87, 0xf0, 0xe8, 0xb4, 0x77, 0x13, 0x16, 0xb1, 0xd1, 0x41, 0x0c, 0x8b, 0x2b, 0xf3, 0x1b, 0x21, 0x4f, 0x61, 0x5a, 0x77, 0x3e, 0xae, 0xda, 0x9b, 0x4a, 0xea, 0x59, 0xe2, }; static const unsigned char xdh_wei448_3135_sharedsecret[] = { 0x05, 0x2f, 0x87, 0x17, 0x48, 0xa1, 0xad, 0x50, 0x5a, 0x52, 0x17, 0xe0, 0x60, 0x59, 0x95, 0x5d, 0x2d, 0x1e, 0x90, 0x98, 0x9d, 0xbd, 0xdf, 0x07, 0x1d, 0x36, 0xef, 0xbf, 0x94, 0x20, 0xa5, 0x36, 0x3f, 0x87, 0x67, 0x1d, 0xeb, 0x9e, 0x44, 0x1b, 0xb2, 0xb0, 0x5d, 0x2f, 0xdb, 0xd2, 0xc2, 0x81, 0x1f, 0xbc, 0xe5, 0x84, 0x23, 0x73, 0x72, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_3135 = { .name = "xdh_wei448_3135", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3135_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3135_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3135_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 31 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3136 for XDH, tcId is 32 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3136_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3136_privkey[] = { 0x04, 0xf0, 0x46, 0x38, 0xd5, 0x65, 0xbe, 0xa8, 0x3a, 0xc3, 0x77, 0x03, 0x51, 0x0d, 0x64, 0x75, 0x68, 0xdb, 0xac, 0x58, 0x21, 0x88, 0x13, 0x74, 0x8a, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0xde, }; static const unsigned char xdh_wei448_3136_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3136 = { .name = "xdh_wei448_3136", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3136_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3136_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3136_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 0, tcId is 32 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3137 for XDH, tcId is 33 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3137_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3137_privkey[] = { 0x28, 0x1f, 0x41, 0xa8, 0xa8, 0x53, 0x44, 0x1f, 0x1d, 0x50, 0x14, 0xbc, 0x6c, 0x61, 0x6e, 0x56, 0x4f, 0xce, 0x43, 0x72, 0xac, 0x22, 0x16, 0x81, 0x4f, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0xcf, }; static const unsigned char xdh_wei448_3137_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3137 = { .name = "xdh_wei448_3137", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3137_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3137_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3137_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 1, tcId is 33 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3138 for XDH, tcId is 34 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3138_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3138_privkey[] = { 0x28, 0x11, 0x0d, 0xeb, 0xb1, 0x24, 0x2a, 0x86, 0x94, 0x07, 0xf2, 0x1a, 0x1a, 0x07, 0x61, 0x63, 0x26, 0xe2, 0xbb, 0xa0, 0xae, 0x3d, 0xdc, 0xa3, 0xd4, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0xdf, }; static const unsigned char xdh_wei448_3138_sharedsecret[] = { 0x02, 0x1e, 0xa3, 0xe5, 0x8b, 0xb9, 0xff, 0x27, 0xa1, 0x10, 0x90, 0x79, 0xa8, 0xc5, 0xa0, 0x5b, 0xb0, 0x97, 0x60, 0x86, 0x4b, 0xca, 0x16, 0x50, 0xed, 0x3d, 0x82, 0x56, 0x40, 0xc5, 0x13, 0x4d, 0x06, 0x31, 0xf5, 0x29, 0xd7, 0x95, 0x10, 0xf0, 0x62, 0x88, 0x3b, 0x12, 0x17, 0xbe, 0xda, 0x88, 0xf5, 0x28, 0x01, 0xfd, 0x5b, 0xfa, 0xe9, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_3138 = { .name = "xdh_wei448_3138", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3138_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3138_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3138_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 34 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3139 for XDH, tcId is 35 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3139_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3139_privkey[] = { 0xcc, 0xd0, 0xea, 0xbb, 0x08, 0x91, 0x13, 0x6d, 0x7f, 0x96, 0x3f, 0x52, 0x80, 0xab, 0x98, 0xf0, 0xef, 0xc6, 0xb8, 0x29, 0x02, 0xbc, 0x4f, 0x4f, 0xe5, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0xea, }; static const unsigned char xdh_wei448_3139_sharedsecret[] = { 0x0d, 0xfa, 0xe3, 0xc2, 0x23, 0x85, 0xee, 0x38, 0x4f, 0x52, 0x06, 0x0f, 0x0e, 0x90, 0x05, 0xce, 0xfb, 0x95, 0x0f, 0x7a, 0x80, 0x74, 0x02, 0x16, 0xde, 0xb9, 0x2a, 0xc4, 0xc4, 0xf4, 0xb4, 0x9c, 0x32, 0x84, 0xbe, 0x16, 0xe9, 0xdd, 0x89, 0x37, 0x8d, 0xec, 0xba, 0x9a, 0x73, 0x7d, 0xe8, 0x4a, 0x54, 0x26, 0x93, 0x5f, 0x1b, 0x6a, 0xe4, 0x63, }; static const wycheproof_xdh_test xdh_wei448_3139 = { .name = "xdh_wei448_3139", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3139_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3139_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3139_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 35 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3140 for XDH, tcId is 36 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3140_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3140_privkey[] = { 0x70, 0x14, 0x9f, 0xf0, 0x91, 0x59, 0x12, 0x72, 0xda, 0x90, 0xb2, 0xca, 0x92, 0x06, 0xe0, 0x6b, 0x8e, 0x0f, 0x97, 0x0d, 0xf1, 0x91, 0x54, 0xdb, 0xa9, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x9a, }; static const unsigned char xdh_wei448_3140_sharedsecret[] = { 0x29, 0xde, 0x99, 0x9f, 0x61, 0xfc, 0x03, 0x3d, 0x34, 0x56, 0x74, 0xa0, 0x6d, 0x98, 0xae, 0xc5, 0xc1, 0xa2, 0x56, 0x1d, 0xaa, 0xbe, 0x66, 0xb7, 0x94, 0x9a, 0xc6, 0x97, 0x36, 0xfe, 0x77, 0x0e, 0xcc, 0x46, 0xa7, 0x8e, 0x1c, 0x44, 0x7e, 0x54, 0xa8, 0xc2, 0xee, 0x85, 0x29, 0xc6, 0x6e, 0xcd, 0xd5, 0x07, 0x5c, 0xbf, 0x10, 0xb3, 0xe2, 0xbf, }; static const wycheproof_xdh_test xdh_wei448_3140 = { .name = "xdh_wei448_3140", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3140_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3140_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3140_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 36 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3141 for XDH, tcId is 37 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3141_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3141_privkey[] = { 0x84, 0xee, 0x1a, 0x35, 0xe5, 0x3e, 0xdb, 0xd4, 0x25, 0xe5, 0xb7, 0xd1, 0x0b, 0xaa, 0xbd, 0xec, 0xb2, 0x72, 0x03, 0x04, 0x81, 0xfe, 0x15, 0x12, 0xad, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0xc1, }; static const unsigned char xdh_wei448_3141_sharedsecret[] = { 0x30, 0x73, 0xe3, 0x73, 0xf1, 0xbf, 0x65, 0x3b, 0xb9, 0xde, 0x54, 0xa2, 0x0b, 0xa1, 0xc0, 0x4e, 0x95, 0x06, 0x8a, 0x5f, 0x3d, 0x56, 0x3c, 0x71, 0x55, 0x2d, 0xd6, 0xb3, 0xf0, 0x51, 0xae, 0xfe, 0xbf, 0x25, 0x65, 0x3c, 0xf3, 0x07, 0x2d, 0x7f, 0x83, 0x01, 0xb6, 0x81, 0x80, 0xb8, 0x47, 0x33, 0x98, 0xde, 0xb9, 0x35, 0x09, 0xa8, 0xaa, 0x34, }; static const wycheproof_xdh_test xdh_wei448_3141 = { .name = "xdh_wei448_3141", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3141_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3141_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3141_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 37 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3142 for XDH, tcId is 38 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3142_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3142_privkey[] = { 0xb8, 0x44, 0xa9, 0xa1, 0x84, 0x3e, 0x72, 0xb7, 0x66, 0x52, 0xa7, 0x0d, 0x48, 0x00, 0x43, 0xa8, 0xf3, 0x7e, 0x92, 0x80, 0x14, 0xaa, 0x2d, 0xef, 0xa9, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0xfb, }; static const unsigned char xdh_wei448_3142_sharedsecret[] = { 0xe5, 0xb5, 0xad, 0x45, 0xf5, 0xd0, 0x98, 0x07, 0x2b, 0xfd, 0xe0, 0x14, 0x66, 0xe4, 0xec, 0xaa, 0xcc, 0x89, 0xa8, 0x4a, 0xde, 0x7c, 0xb2, 0xc4, 0xc4, 0x0a, 0x9f, 0x62, 0x0b, 0x8b, 0x91, 0x17, 0x5d, 0xeb, 0xc5, 0xdb, 0x8d, 0xf1, 0x8a, 0x38, 0x26, 0x28, 0x2c, 0x46, 0xf9, 0x17, 0x6f, 0x6d, 0xa7, 0xc8, 0x26, 0xcf, 0x9c, 0x8d, 0xc8, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_3142 = { .name = "xdh_wei448_3142", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3142_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3142_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3142_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 38 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3143 for XDH, tcId is 39 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3143_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3143_privkey[] = { 0x44, 0xb1, 0x70, 0xa0, 0x9b, 0xc5, 0xaf, 0x3d, 0x31, 0xc5, 0x86, 0x43, 0x27, 0xe1, 0xf2, 0xa7, 0x4e, 0x26, 0xda, 0x7b, 0x3f, 0x39, 0xfa, 0xa3, 0xd2, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0xbc, }; static const unsigned char xdh_wei448_3143_sharedsecret[] = { 0x26, 0xf3, 0x40, 0xb6, 0xfc, 0xe9, 0xcd, 0xb7, 0x68, 0x07, 0xea, 0xec, 0x48, 0xd3, 0x88, 0x07, 0xd4, 0x0d, 0x13, 0x91, 0x1c, 0x1b, 0xb0, 0x1d, 0x5a, 0x45, 0x2f, 0x8d, 0x35, 0xbe, 0xb8, 0x3e, 0x23, 0x53, 0x1e, 0x83, 0x45, 0xf8, 0xe7, 0xed, 0x5a, 0x19, 0x4c, 0x6b, 0x73, 0x33, 0x60, 0x50, 0x4d, 0x6d, 0xd6, 0xdd, 0x6f, 0x88, 0x09, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3143 = { .name = "xdh_wei448_3143", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3143_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3143_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3143_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 39 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3144 for XDH, tcId is 40 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3144_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3144_privkey[] = { 0xe4, 0x54, 0x5b, 0x1f, 0x96, 0xa5, 0x38, 0xe4, 0x81, 0xc0, 0x2b, 0x5c, 0x70, 0x35, 0x14, 0xaf, 0x5d, 0x02, 0xfa, 0x6d, 0xfc, 0x10, 0x3c, 0x42, 0x3a, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0xcd, }; static const unsigned char xdh_wei448_3144_sharedsecret[] = { 0xc9, 0x38, 0x03, 0xd1, 0xab, 0x21, 0xe2, 0x01, 0x66, 0x50, 0x7a, 0x62, 0xfb, 0xb2, 0x1c, 0x4e, 0xe2, 0x03, 0x69, 0x26, 0xad, 0xad, 0x3a, 0x10, 0x4e, 0xe7, 0xc5, 0x22, 0x79, 0xa0, 0xae, 0xfc, 0x71, 0xf7, 0x56, 0xc9, 0x96, 0x98, 0x88, 0xd7, 0xb2, 0x92, 0xab, 0x21, 0x1e, 0xd1, 0x94, 0x1d, 0x30, 0x02, 0xbb, 0x83, 0x5f, 0xf1, 0x49, 0x03, }; static const wycheproof_xdh_test xdh_wei448_3144 = { .name = "xdh_wei448_3144", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3144_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3144_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3144_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 40 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3145 for XDH, tcId is 41 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3145_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3145_privkey[] = { 0x84, 0x2a, 0x93, 0x06, 0xa5, 0x2a, 0x73, 0xba, 0x94, 0x0e, 0x54, 0x5a, 0xa6, 0xa6, 0xfb, 0x43, 0xda, 0x23, 0x7d, 0xfb, 0xd0, 0xd8, 0x20, 0xb0, 0xe4, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0xbf, }; static const unsigned char xdh_wei448_3145_sharedsecret[] = { 0xb3, 0xda, 0x43, 0xf7, 0x0e, 0x0a, 0x4a, 0x76, 0x50, 0x5b, 0x10, 0x8d, 0x35, 0x31, 0xb1, 0xf0, 0x2e, 0x66, 0xc4, 0xe9, 0x16, 0x34, 0xe6, 0x1b, 0x6e, 0xb1, 0x09, 0x8e, 0x7d, 0x87, 0x88, 0x73, 0xdb, 0xe8, 0x21, 0xef, 0x60, 0xaa, 0xa1, 0xa3, 0xa3, 0x35, 0x00, 0x44, 0x52, 0xb5, 0x7b, 0x19, 0x29, 0xd9, 0x66, 0xaf, 0x3a, 0xda, 0x63, 0xe7, }; static const wycheproof_xdh_test xdh_wei448_3145 = { .name = "xdh_wei448_3145", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3145_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3145_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3145_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 41 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3146 for XDH, tcId is 42 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3146_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3146_privkey[] = { 0x44, 0x7c, 0x4f, 0x94, 0xcb, 0xe7, 0x04, 0xcb, 0xb7, 0xc2, 0x63, 0x22, 0x1e, 0x12, 0x2b, 0x08, 0xc0, 0x60, 0x63, 0xea, 0xa4, 0xca, 0x09, 0x30, 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0xd0, }; static const unsigned char xdh_wei448_3146_sharedsecret[] = { 0x06, 0xed, 0xfd, 0xcb, 0x6b, 0x3e, 0xd3, 0x4f, 0x08, 0x1b, 0xb0, 0x01, 0x1f, 0xfb, 0x6d, 0x95, 0x06, 0xf3, 0xc9, 0x0f, 0x1a, 0x44, 0x07, 0x40, 0x69, 0x2a, 0x2f, 0x58, 0x9e, 0x81, 0xe9, 0x29, 0x11, 0x1a, 0x9a, 0xdb, 0x47, 0xe4, 0xbf, 0x30, 0x21, 0x6e, 0xcb, 0xb2, 0x60, 0x55, 0xc1, 0x68, 0x26, 0x4a, 0xe7, 0x95, 0x37, 0x31, 0xfd, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3146 = { .name = "xdh_wei448_3146", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3146_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3146_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3146_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 42 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3147 for XDH, tcId is 43 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3147_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3147_privkey[] = { 0x18, 0x50, 0x43, 0xad, 0x10, 0x8f, 0x93, 0x67, 0x3b, 0x28, 0x32, 0x86, 0x76, 0xde, 0x2a, 0x78, 0xd3, 0x7d, 0x7a, 0xc8, 0xa3, 0xa8, 0xbc, 0x69, 0xed, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0xb7, }; static const unsigned char xdh_wei448_3147_sharedsecret[] = { 0x2a, 0x3c, 0xec, 0x52, 0x06, 0x1b, 0x1a, 0x84, 0x38, 0x3b, 0x68, 0xb8, 0xa4, 0x1c, 0xe1, 0x5e, 0x4f, 0x7e, 0x7c, 0xb1, 0x81, 0x76, 0x2d, 0xc1, 0x8c, 0xe8, 0x66, 0x64, 0x7f, 0x93, 0xbe, 0xca, 0xae, 0x47, 0x66, 0x35, 0x18, 0x8b, 0x62, 0x64, 0x89, 0x28, 0xce, 0x23, 0x13, 0x01, 0x53, 0x98, 0x54, 0x6b, 0x92, 0xf2, 0x91, 0x9f, 0xd9, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3147 = { .name = "xdh_wei448_3147", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3147_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3147_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3147_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 43 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3148 for XDH, tcId is 44 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3148_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3148_privkey[] = { 0x08, 0x35, 0x37, 0x24, 0xfb, 0xc0, 0x39, 0x27, 0xb1, 0x73, 0x59, 0xa8, 0x8c, 0x12, 0x12, 0x76, 0xad, 0x69, 0x79, 0x91, 0xee, 0x89, 0x86, 0x8e, 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x94, }; static const unsigned char xdh_wei448_3148_sharedsecret[] = { 0x30, 0xb1, 0xd9, 0x81, 0x54, 0x76, 0x8a, 0x2a, 0x2a, 0xf5, 0x68, 0xe2, 0xfa, 0x35, 0x77, 0xa0, 0x42, 0xa5, 0xc7, 0xe5, 0xf9, 0xac, 0x91, 0xb1, 0x00, 0x65, 0x5e, 0xa3, 0x32, 0xb4, 0x2d, 0xb5, 0x68, 0x03, 0x4b, 0x15, 0xfd, 0xf7, 0x5c, 0x69, 0x3d, 0x8c, 0x2d, 0x0c, 0x2d, 0xe5, 0x4f, 0xb9, 0xd6, 0xd1, 0x7e, 0xfa, 0x31, 0x6a, 0xa5, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3148 = { .name = "xdh_wei448_3148", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3148_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3148_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3148_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 44 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3149 for XDH, tcId is 45 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3149_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3149_privkey[] = { 0x98, 0xc6, 0xf3, 0x6e, 0x1c, 0xb7, 0x45, 0x28, 0x76, 0x3f, 0x3a, 0xa1, 0x11, 0x96, 0xef, 0x94, 0x49, 0xc6, 0x7b, 0xe3, 0x60, 0xe2, 0x5e, 0x40, 0xab, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0xa3, }; static const unsigned char xdh_wei448_3149_sharedsecret[] = { 0xc3, 0xc7, 0xae, 0xc9, 0x77, 0x86, 0xa4, 0x3b, 0x79, 0xf8, 0xa0, 0x53, 0xcf, 0x18, 0x53, 0x63, 0x11, 0x2f, 0x04, 0x41, 0x1a, 0x8e, 0xf3, 0xd3, 0x28, 0x3f, 0x61, 0xee, 0xac, 0x59, 0xa1, 0xf2, 0x91, 0x8e, 0x10, 0xf5, 0x49, 0x37, 0x93, 0x2f, 0x5a, 0xc1, 0xe3, 0xb7, 0x2f, 0xdb, 0xea, 0x57, 0xf3, 0x42, 0x74, 0x59, 0x8b, 0x17, 0xd7, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3149 = { .name = "xdh_wei448_3149", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3149_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3149_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3149_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 45 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3150 for XDH, tcId is 46 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3150_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3150_privkey[] = { 0x80, 0x89, 0xee, 0x7f, 0x5c, 0x2b, 0x0c, 0xe9, 0x4d, 0xe3, 0x62, 0x73, 0x2a, 0x68, 0xe5, 0x9e, 0x59, 0x6b, 0xcc, 0xf6, 0xc3, 0x43, 0x18, 0xe3, 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0xf0, }; static const unsigned char xdh_wei448_3150_sharedsecret[] = { 0x9d, 0xd0, 0x23, 0xa0, 0x90, 0x68, 0x99, 0xeb, 0x83, 0xde, 0xb1, 0x74, 0x92, 0xe9, 0x38, 0x1f, 0x9d, 0xca, 0x96, 0x20, 0xa1, 0x52, 0x84, 0x96, 0x26, 0xc6, 0x57, 0x26, 0x08, 0x8b, 0x41, 0xfd, 0x28, 0xeb, 0x81, 0x7d, 0x37, 0x26, 0x7c, 0x62, 0xc3, 0x51, 0xba, 0xe2, 0xa9, 0xeb, 0xc6, 0x37, 0xdf, 0x44, 0x90, 0xa2, 0x19, 0x13, 0x4c, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3150 = { .name = "xdh_wei448_3150", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3150_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3150_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3150_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 46 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3151 for XDH, tcId is 47 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3151_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3151_privkey[] = { 0xc4, 0x14, 0x52, 0x2a, 0xb0, 0x3f, 0xfa, 0xcf, 0xf2, 0xc4, 0x3a, 0x81, 0x7b, 0xff, 0x63, 0x8f, 0xdd, 0x24, 0x2f, 0x7d, 0x4b, 0x54, 0x75, 0x74, 0xe5, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0xcc, }; static const unsigned char xdh_wei448_3151_sharedsecret[] = { 0x55, 0xbb, 0x0c, 0xa5, 0xd7, 0xc5, 0x76, 0xde, 0xc8, 0x3c, 0xf3, 0xdc, 0xfd, 0x98, 0x85, 0xbd, 0xb5, 0x04, 0x10, 0xf9, 0x69, 0x0d, 0xee, 0x34, 0xb0, 0xfc, 0x49, 0x3e, 0xdc, 0x04, 0xb6, 0x2e, 0xd0, 0x31, 0x16, 0x0f, 0x73, 0xc5, 0x51, 0x09, 0x76, 0x0f, 0x65, 0x11, 0x9b, 0xd2, 0xb9, 0x58, 0xa6, 0x56, 0x6b, 0x98, 0xee, 0xc6, 0xf5, 0x41, }; static const wycheproof_xdh_test xdh_wei448_3151 = { .name = "xdh_wei448_3151", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3151_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3151_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3151_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 47 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3152 for XDH, tcId is 48 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3152_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3152_privkey[] = { 0x7c, 0x6e, 0x75, 0xb7, 0xf8, 0x43, 0xfc, 0xba, 0x2c, 0xed, 0x4f, 0xee, 0x6b, 0xb1, 0xf7, 0x4d, 0x44, 0xda, 0x59, 0xfd, 0x79, 0xfa, 0x25, 0x74, 0x3a, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0xb3, }; static const unsigned char xdh_wei448_3152_sharedsecret[] = { 0x58, 0x6d, 0x61, 0x34, 0x6b, 0x75, 0xcc, 0x07, 0x12, 0xb9, 0xc1, 0x02, 0x9e, 0x97, 0x56, 0x66, 0x8e, 0xed, 0x14, 0xe6, 0x7e, 0x54, 0x3d, 0xef, 0x8f, 0xc5, 0x1c, 0x28, 0x82, 0xdf, 0xed, 0x27, 0xec, 0xef, 0x73, 0x70, 0xa7, 0x28, 0x0f, 0x55, 0x42, 0xda, 0x3d, 0xc5, 0x59, 0xd2, 0x7d, 0x62, 0x8f, 0x85, 0xe9, 0x7e, 0x04, 0x81, 0xba, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3152 = { .name = "xdh_wei448_3152", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3152_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3152_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3152_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 48 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3153 for XDH, tcId is 49 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3153_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3153_privkey[] = { 0x84, 0x09, 0xfd, 0x3e, 0xa1, 0xf0, 0x32, 0xfd, 0x72, 0x9d, 0xbe, 0x2b, 0x2b, 0x79, 0x4d, 0xa5, 0xcb, 0x92, 0xc7, 0xf9, 0xf2, 0x85, 0xb1, 0x00, 0xd9, 0x84, 0x3f, 0xfd, 0x5b, 0x02, 0x45, 0xa7, 0x8b, 0xd2, 0x73, 0xea, 0x2a, 0x8f, 0x04, 0x31, 0x95, 0x02, 0x45, 0x41, 0x2b, 0xd7, 0xee, 0xc3, 0x69, 0x5a, 0x24, 0xcc, 0x73, 0x89, 0x21, 0xab, }; static const unsigned char xdh_wei448_3153_sharedsecret[] = { 0xe8, 0x6f, 0x72, 0xf3, 0x84, 0x7d, 0x87, 0xc1, 0xfd, 0x19, 0xc1, 0xdd, 0xbc, 0xa5, 0xe1, 0x72, 0xb0, 0x58, 0x47, 0xdd, 0x97, 0xd5, 0xc3, 0x11, 0x22, 0x69, 0x8f, 0x36, 0x1f, 0x89, 0xba, 0xbf, 0x7d, 0x5d, 0xaf, 0x5f, 0x23, 0xcc, 0x87, 0x28, 0x5f, 0x49, 0x08, 0x85, 0x98, 0xf8, 0xf1, 0xf3, 0xfd, 0x17, 0x7c, 0xfb, 0x35, 0xed, 0x32, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3153 = { .name = "xdh_wei448_3153", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3153_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3153_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3153_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 49 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3154 for XDH, tcId is 50 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3154_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, }; static const unsigned char xdh_wei448_3154_privkey[] = { 0x24, 0x83, 0x50, 0xb1, 0x81, 0x36, 0x37, 0x62, 0x91, 0x19, 0xa4, 0x38, 0xb8, 0x27, 0xf3, 0x69, 0xd7, 0x0b, 0x7e, 0x19, 0x9b, 0xc6, 0xc5, 0x66, 0xfe, 0xfd, 0x68, 0xb5, 0x5e, 0x22, 0x4e, 0x64, 0x7a, 0x59, 0x5c, 0x05, 0x7b, 0xe4, 0x4f, 0xf2, 0xee, 0x32, 0x1b, 0x2a, 0xcd, 0xbe, 0x39, 0xb0, 0x9b, 0x3e, 0x56, 0xf3, 0xa9, 0xa0, 0xe4, 0xbe, }; static const unsigned char xdh_wei448_3154_sharedsecret[] = { 0xfe, 0x2e, 0x38, 0xc9, 0x30, 0xca, 0xba, 0xdf, 0x8a, 0xa9, 0xc6, 0x05, 0xa9, 0x04, 0x85, 0x0f, 0x6c, 0xe7, 0xdc, 0x35, 0xef, 0xb2, 0xaf, 0x72, 0xeb, 0xb2, 0x8e, 0xc4, 0xaf, 0x31, 0x19, 0x9d, 0x9d, 0xba, 0x57, 0xc4, 0x33, 0x7c, 0x84, 0x88, 0xb9, 0xaa, 0x3d, 0xed, 0xd5, 0x13, 0x49, 0xa4, 0x41, 0xbd, 0xbf, 0x59, 0x24, 0x5a, 0xd2, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3154 = { .name = "xdh_wei448_3154", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3154_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3154_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3154_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 50 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3155 for XDH, tcId is 51 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3155_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3155_privkey[] = { 0xd8, 0x45, 0x48, 0x05, 0xfe, 0x07, 0xcc, 0x84, 0x5d, 0xb6, 0x75, 0xbb, 0x19, 0x34, 0x8f, 0xd1, 0x0f, 0x97, 0xd2, 0x6a, 0x50, 0xd7, 0x29, 0xb5, 0xcd, 0x51, 0x09, 0x77, 0xe9, 0xab, 0xd9, 0xfd, 0x4c, 0x8a, 0x82, 0x41, 0x04, 0x68, 0xb6, 0x07, 0x13, 0x07, 0xb0, 0xbd, 0x57, 0xc4, 0xed, 0x34, 0x64, 0x39, 0x11, 0x05, 0xf6, 0x6e, 0x4b, 0xee, }; static const unsigned char xdh_wei448_3155_sharedsecret[] = { 0xc8, 0xb5, 0xae, 0x9c, 0x08, 0x2b, 0xf1, 0xec, 0xe4, 0x6b, 0x6b, 0x72, 0x4f, 0x96, 0x66, 0xd4, 0x57, 0x1a, 0x47, 0x7a, 0x20, 0xcc, 0xa6, 0x76, 0x42, 0x38, 0x7a, 0x6e, 0x89, 0x1f, 0x11, 0x88, 0x71, 0x8c, 0x46, 0xcd, 0xe8, 0xc2, 0xef, 0x20, 0x4e, 0x7f, 0x77, 0xca, 0xe4, 0xc1, 0x03, 0x20, 0x93, 0x0b, 0x1f, 0x0c, 0x2d, 0xa9, 0x15, 0xd9, }; static const wycheproof_xdh_test xdh_wei448_3155 = { .name = "xdh_wei448_3155", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3155_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3155_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3155_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 51 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3156 for XDH, tcId is 52 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3156_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3156_privkey[] = { 0x50, 0xae, 0x60, 0x84, 0x9c, 0x94, 0x0c, 0x5c, 0xf7, 0x0b, 0x23, 0x72, 0x28, 0xdb, 0xfd, 0x34, 0xc2, 0xe1, 0x66, 0x06, 0xc7, 0xb8, 0xcd, 0x55, 0x08, 0xab, 0x38, 0xbb, 0x45, 0x97, 0xc3, 0x28, 0xc5, 0x8f, 0x0d, 0x3c, 0x8f, 0xdf, 0x9b, 0x9b, 0xbb, 0x21, 0xab, 0x85, 0x8f, 0x02, 0xb7, 0x39, 0xf2, 0xda, 0x73, 0xd8, 0x27, 0xdd, 0xcd, 0xb5, }; static const unsigned char xdh_wei448_3156_sharedsecret[] = { 0xf5, 0xaa, 0xa3, 0x37, 0x4e, 0x01, 0xc7, 0xb6, 0xa3, 0x68, 0x04, 0xd6, 0x28, 0x4d, 0xdf, 0xc6, 0x8e, 0x6f, 0x4f, 0x33, 0x09, 0x0d, 0xd3, 0x07, 0x5b, 0x67, 0xec, 0x9a, 0xf2, 0xfb, 0x4c, 0x99, 0x1d, 0x0d, 0xbd, 0x7f, 0x6e, 0xb3, 0xa1, 0x77, 0xfb, 0x65, 0x0a, 0x5a, 0x05, 0x5b, 0x8d, 0x6b, 0xc9, 0xa2, 0x18, 0xbb, 0xfb, 0xfe, 0x6f, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3156 = { .name = "xdh_wei448_3156", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3156_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3156_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3156_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 52 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3157 for XDH, tcId is 53 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3157_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x80, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_3157_privkey[] = { 0xc8, 0x9c, 0x49, 0x16, 0xc0, 0xeb, 0x3c, 0x28, 0x7e, 0xb1, 0x02, 0xd4, 0x8f, 0x13, 0x88, 0x20, 0x11, 0x53, 0x28, 0xd8, 0x32, 0xaa, 0x80, 0xb6, 0x86, 0x39, 0x36, 0x94, 0xb8, 0xea, 0x1e, 0x89, 0xa0, 0x15, 0xbe, 0xd4, 0x4c, 0x30, 0x2b, 0x18, 0xc8, 0xa3, 0xc0, 0x94, 0x8a, 0xb4, 0x06, 0xad, 0xa5, 0x67, 0x29, 0xd5, 0x99, 0xc5, 0x5d, 0xb8, }; static const unsigned char xdh_wei448_3157_sharedsecret[] = { 0x81, 0x59, 0xaf, 0x5d, 0xbd, 0x95, 0x05, 0x8e, 0x4d, 0x92, 0x50, 0x4a, 0xac, 0xb1, 0x9c, 0xf0, 0x0f, 0xe2, 0xef, 0xbc, 0xa3, 0x96, 0x31, 0x1f, 0xa9, 0xe2, 0xee, 0x60, 0xca, 0x16, 0xeb, 0xcd, 0xae, 0xad, 0x05, 0xd1, 0xa7, 0x7a, 0x72, 0x92, 0x34, 0x77, 0x3e, 0xe4, 0x43, 0x76, 0x24, 0xe4, 0x25, 0x58, 0x0a, 0x4a, 0x55, 0xd5, 0xa4, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_3157 = { .name = "xdh_wei448_3157", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3157_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3157_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3157_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 53 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3158 for XDH, tcId is 54 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3158_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_3158_privkey[] = { 0xb8, 0x1e, 0x63, 0x30, 0x65, 0x9a, 0x23, 0x39, 0x00, 0xa8, 0xee, 0xc1, 0x46, 0x16, 0xae, 0x0b, 0x77, 0x75, 0xda, 0x7d, 0x22, 0x5a, 0xd2, 0x81, 0xb9, 0x86, 0x29, 0x1f, 0xd4, 0x2c, 0x3b, 0x78, 0x0c, 0x40, 0x6e, 0xc7, 0xe9, 0xb2, 0xb2, 0xc8, 0xaf, 0x9b, 0x1f, 0x81, 0x58, 0x74, 0x7f, 0x7b, 0x6d, 0x82, 0x9f, 0x1c, 0x00, 0x51, 0xe1, 0xac, }; static const unsigned char xdh_wei448_3158_sharedsecret[] = { 0x21, 0x14, 0xb2, 0x60, 0x0a, 0xca, 0x27, 0x6c, 0xc6, 0xc2, 0x8c, 0xf3, 0x94, 0x7d, 0xbf, 0x3b, 0x98, 0xf0, 0x6a, 0xe4, 0xf7, 0xf5, 0x33, 0xa0, 0x9e, 0x22, 0xef, 0xa8, 0xc0, 0x5e, 0x91, 0xdd, 0x49, 0x22, 0xce, 0xba, 0xa6, 0x49, 0x17, 0xab, 0x12, 0xf4, 0x54, 0x22, 0xcc, 0xa8, 0x99, 0xef, 0xc2, 0xf9, 0x58, 0x0b, 0x2e, 0x9a, 0x6a, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3158 = { .name = "xdh_wei448_3158", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3158_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3158_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3158_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 54 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3159 for XDH, tcId is 55 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3159_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3159_privkey[] = { 0x2c, 0x7c, 0xd8, 0xe4, 0x13, 0x30, 0x95, 0x4c, 0xec, 0xdc, 0x9c, 0xaf, 0x7e, 0x07, 0x9a, 0x6f, 0x09, 0xe4, 0xb4, 0x06, 0x37, 0xdd, 0x6e, 0x40, 0x25, 0x2d, 0x77, 0x1f, 0x96, 0x54, 0x84, 0xa7, 0xfc, 0x20, 0x8e, 0x13, 0xfd, 0xc4, 0x92, 0x02, 0x5c, 0xab, 0xe9, 0x8a, 0xa5, 0x53, 0x36, 0xa7, 0xdb, 0xa3, 0x6a, 0xc3, 0xae, 0x4d, 0x83, 0x8f, }; static const unsigned char xdh_wei448_3159_sharedsecret[] = { 0x88, 0x74, 0x92, 0xe4, 0x55, 0x7c, 0x0b, 0x6e, 0xca, 0xb3, 0x4e, 0xcc, 0x6b, 0xdf, 0x06, 0x08, 0xfe, 0xbe, 0x33, 0xfb, 0x05, 0xb2, 0xaa, 0x4a, 0xb8, 0xd8, 0x9e, 0xc6, 0xb4, 0x76, 0x51, 0x5c, 0x90, 0xa6, 0x6e, 0x1c, 0xfd, 0x3c, 0xde, 0x5b, 0x32, 0x40, 0xef, 0x8f, 0xbe, 0x0b, 0xb5, 0x3c, 0xfa, 0x6b, 0x25, 0x32, 0xd0, 0xc9, 0x4c, 0xaf, }; static const wycheproof_xdh_test xdh_wei448_3159 = { .name = "xdh_wei448_3159", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3159_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3159_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3159_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 55 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3160 for XDH, tcId is 56 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3160_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3160_privkey[] = { 0x48, 0x04, 0xaf, 0xd0, 0x55, 0xec, 0x05, 0xf3, 0x35, 0xb7, 0xe3, 0xee, 0xbb, 0xde, 0x2a, 0x6d, 0xe0, 0x10, 0xce, 0x74, 0x95, 0xe6, 0xc0, 0xd0, 0x21, 0x73, 0xfa, 0x8c, 0x48, 0xbb, 0x49, 0x53, 0x75, 0xb7, 0xd1, 0x49, 0xc6, 0x7b, 0x92, 0xd2, 0x88, 0x5a, 0xcb, 0x8d, 0x8b, 0xbb, 0x51, 0xa3, 0x17, 0x45, 0x37, 0x88, 0x67, 0x1e, 0xfa, 0x9f, }; static const unsigned char xdh_wei448_3160_sharedsecret[] = { 0xd6, 0xa2, 0x72, 0x4d, 0xc9, 0xca, 0x15, 0x79, 0xd9, 0x4a, 0x8c, 0xc8, 0x81, 0x5a, 0x3e, 0xd3, 0x92, 0xb9, 0xe1, 0x0b, 0x39, 0xf5, 0x7c, 0x74, 0x7f, 0x7b, 0x2d, 0x84, 0xf5, 0x49, 0x69, 0x06, 0x2c, 0x8b, 0x86, 0x92, 0x9a, 0x1a, 0x12, 0xf4, 0x66, 0xd3, 0xef, 0x95, 0x98, 0xf1, 0x90, 0x47, 0x73, 0xa4, 0xee, 0x93, 0x8f, 0x0f, 0x5d, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_3160 = { .name = "xdh_wei448_3160", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3160_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3160_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3160_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 56 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3161 for XDH, tcId is 57 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3161_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3161_privkey[] = { 0x78, 0xc1, 0xed, 0x99, 0x18, 0xd0, 0xaa, 0x85, 0xf8, 0x8a, 0xf3, 0x95, 0x54, 0x7a, 0x07, 0x10, 0x36, 0x95, 0xed, 0xcf, 0x5a, 0xf8, 0xff, 0xdf, 0x14, 0xae, 0xb9, 0x8d, 0xc0, 0x10, 0xa2, 0x38, 0xca, 0xe2, 0xd3, 0x9d, 0xb6, 0xa9, 0x3e, 0xc0, 0x66, 0x45, 0x53, 0x77, 0x65, 0x4d, 0x69, 0x78, 0x89, 0x0f, 0x55, 0x90, 0x07, 0x7d, 0xd2, 0xa9, }; static const unsigned char xdh_wei448_3161_sharedsecret[] = { 0x6d, 0xe6, 0x08, 0x14, 0x85, 0xf0, 0x8c, 0x30, 0x27, 0x5c, 0x2a, 0xcc, 0x64, 0xd9, 0x25, 0xc4, 0xb1, 0xde, 0xac, 0x3f, 0xe4, 0xaa, 0x36, 0x13, 0xeb, 0x83, 0xa5, 0xff, 0x4c, 0x19, 0x15, 0xd4, 0xed, 0x06, 0xae, 0xde, 0xbe, 0xc3, 0x65, 0x92, 0xfa, 0xd3, 0x72, 0xe4, 0x69, 0x4d, 0x28, 0x05, 0x8b, 0x14, 0x24, 0x5c, 0xd4, 0x9f, 0xf1, 0xb2, }; static const wycheproof_xdh_test xdh_wei448_3161 = { .name = "xdh_wei448_3161", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3161_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3161_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3161_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 57 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3162 for XDH, tcId is 58 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3162_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3162_privkey[] = { 0xec, 0xbb, 0x1b, 0xbb, 0x54, 0x5d, 0xf1, 0xf0, 0x5b, 0xb7, 0x29, 0x79, 0x46, 0x29, 0x13, 0xa3, 0x6b, 0x85, 0x69, 0xd3, 0xe3, 0x94, 0xa9, 0xc6, 0x61, 0xca, 0x3f, 0x6b, 0x16, 0x44, 0xc3, 0x5e, 0xbe, 0x36, 0xdc, 0x58, 0xcc, 0x7d, 0xd0, 0x54, 0xe2, 0xa4, 0x46, 0xb9, 0x96, 0x77, 0xc2, 0x8d, 0xec, 0xc3, 0x50, 0xd3, 0x83, 0xc6, 0x69, 0x94, }; static const unsigned char xdh_wei448_3162_sharedsecret[] = { 0xf7, 0x64, 0xdf, 0xa3, 0xbc, 0x00, 0x15, 0xfc, 0xb9, 0x78, 0x39, 0x0c, 0xc3, 0xd2, 0x9c, 0x8d, 0x47, 0xcc, 0x8d, 0x61, 0xcf, 0x41, 0x22, 0x75, 0x4b, 0xf9, 0x05, 0xd1, 0x10, 0x3e, 0xa5, 0xf6, 0x64, 0xf7, 0x30, 0x01, 0x1e, 0xf9, 0x7c, 0xd3, 0x2c, 0x25, 0x01, 0xd3, 0x13, 0xe4, 0x56, 0xff, 0xef, 0xb9, 0xe4, 0xcb, 0xcc, 0x40, 0x13, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3162 = { .name = "xdh_wei448_3162", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3162_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3162_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3162_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 58 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3163 for XDH, tcId is 59 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3163_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3163_privkey[] = { 0x84, 0xc0, 0xd8, 0x06, 0xee, 0xd4, 0xda, 0x2f, 0xfc, 0xac, 0xa8, 0x8c, 0x7f, 0x03, 0x89, 0x05, 0x9f, 0xff, 0x0e, 0xe8, 0xf5, 0x80, 0xd0, 0x80, 0xe9, 0x67, 0x2a, 0x44, 0x1f, 0x5a, 0xb1, 0x90, 0x69, 0xfe, 0xf6, 0x68, 0xab, 0x20, 0xd2, 0x4f, 0x04, 0x68, 0xa5, 0xc3, 0xe5, 0x49, 0xa1, 0x70, 0x12, 0x12, 0x21, 0x34, 0xe0, 0x27, 0xb4, 0x84, }; static const unsigned char xdh_wei448_3163_sharedsecret[] = { 0xa1, 0x05, 0xe0, 0x28, 0x39, 0x41, 0x54, 0x50, 0x6e, 0xc0, 0x7c, 0x69, 0x6f, 0xe6, 0x35, 0x84, 0x3b, 0x8a, 0x53, 0x5b, 0x03, 0xd3, 0x91, 0x1d, 0xc5, 0x27, 0xc4, 0x33, 0xea, 0x4e, 0x24, 0x4e, 0xbf, 0xc7, 0xba, 0x07, 0x93, 0xac, 0x14, 0x66, 0xf3, 0x21, 0x53, 0xc1, 0x6c, 0xa1, 0xdc, 0xe8, 0xa5, 0xad, 0xec, 0xb5, 0xee, 0xcb, 0x82, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3163 = { .name = "xdh_wei448_3163", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3163_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3163_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3163_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 59 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3164 for XDH, tcId is 60 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3164_peerpubkey[] = { 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3164_privkey[] = { 0xbc, 0x7b, 0xce, 0x37, 0x43, 0x4c, 0x0a, 0x1d, 0x05, 0xef, 0xf4, 0x28, 0x03, 0x4f, 0x75, 0xed, 0x74, 0x54, 0xed, 0xe6, 0xb2, 0xa6, 0xe3, 0x4e, 0xd4, 0xfc, 0xed, 0xc0, 0x50, 0x34, 0x9c, 0x86, 0x6c, 0x40, 0xa2, 0x7c, 0x27, 0x89, 0x8a, 0xfe, 0xc4, 0x1b, 0x3b, 0x47, 0x7f, 0x0d, 0xf5, 0xc5, 0x35, 0x6e, 0x57, 0xd7, 0x56, 0x2c, 0xdd, 0xa5, }; static const unsigned char xdh_wei448_3164_sharedsecret[] = { 0x96, 0x3f, 0xf8, 0xe5, 0xea, 0x53, 0x41, 0x78, 0xe1, 0x92, 0x2c, 0xc0, 0x6c, 0x63, 0x83, 0x67, 0xc2, 0xc4, 0x69, 0x0a, 0xba, 0x7e, 0x4a, 0xaa, 0xb8, 0x34, 0x22, 0x10, 0xb9, 0x03, 0x57, 0x27, 0x06, 0x27, 0x62, 0x63, 0x1f, 0x79, 0xe7, 0x09, 0xd2, 0xba, 0xf0, 0x64, 0x6f, 0x0d, 0x9a, 0x37, 0xdf, 0x02, 0xd5, 0x31, 0x79, 0x1b, 0xc9, 0x40, }; static const wycheproof_xdh_test xdh_wei448_3164 = { .name = "xdh_wei448_3164", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3164_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3164_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3164_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 60 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3165 for XDH, tcId is 61 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3165_peerpubkey[] = { 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3165_privkey[] = { 0xa8, 0x9a, 0x7e, 0x06, 0x07, 0x36, 0xdb, 0x3c, 0xb3, 0xe3, 0x7e, 0xe3, 0xb5, 0xdb, 0x1a, 0x7c, 0xe4, 0x51, 0x66, 0x74, 0xbe, 0xf7, 0x15, 0xe8, 0xf8, 0x36, 0xf0, 0x4f, 0x7e, 0x09, 0x57, 0xb7, 0xe5, 0x0e, 0x9c, 0xec, 0x37, 0x70, 0x07, 0xa0, 0x8c, 0x23, 0x43, 0x8d, 0xce, 0x6c, 0x32, 0xf4, 0x09, 0xd7, 0xbb, 0x89, 0x4b, 0x40, 0x4f, 0xe6, }; static const unsigned char xdh_wei448_3165_sharedsecret[] = { 0x29, 0x72, 0x3d, 0x84, 0xea, 0xef, 0xd5, 0x3b, 0x8e, 0xb6, 0xa5, 0x19, 0x4f, 0xd3, 0xa4, 0x01, 0xc7, 0xb6, 0xac, 0x7c, 0x16, 0x65, 0xa5, 0xe9, 0x7e, 0x28, 0x40, 0x9c, 0x9c, 0x75, 0xc9, 0xba, 0xe8, 0x04, 0x9b, 0xc2, 0x83, 0x8b, 0x2b, 0x9b, 0xd4, 0xdc, 0xda, 0xf6, 0x19, 0x2a, 0x9e, 0x30, 0x80, 0xc0, 0xaa, 0xc2, 0x21, 0x9e, 0xe8, 0x11, }; static const wycheproof_xdh_test xdh_wei448_3165 = { .name = "xdh_wei448_3165", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3165_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3165_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3165_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 61 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3166 for XDH, tcId is 62 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3166_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3166_privkey[] = { 0x68, 0x27, 0x3d, 0x87, 0x9a, 0x2c, 0x85, 0xf9, 0x8e, 0x8c, 0x05, 0x1b, 0xda, 0xfc, 0xda, 0xec, 0x09, 0x7b, 0x07, 0x62, 0x2d, 0xea, 0x9a, 0xc6, 0x78, 0x4e, 0x36, 0x15, 0xf2, 0x74, 0x38, 0xea, 0x75, 0xcd, 0x4e, 0xff, 0xbb, 0xab, 0xe7, 0x05, 0xf6, 0x63, 0xa2, 0x44, 0x6a, 0xb8, 0xa2, 0x31, 0x0f, 0x30, 0xf9, 0x05, 0x28, 0xf5, 0x75, 0xf2, }; static const unsigned char xdh_wei448_3166_sharedsecret[] = { 0x56, 0x50, 0xaf, 0x69, 0xcd, 0x01, 0x61, 0x70, 0xac, 0x1d, 0x5b, 0xbe, 0x84, 0xf0, 0x3d, 0x47, 0xe1, 0xfe, 0x89, 0xc7, 0xe2, 0xda, 0xed, 0xbe, 0xa8, 0xf0, 0x26, 0x54, 0xb7, 0x3e, 0xfe, 0xdb, 0xfe, 0xcd, 0xcd, 0x92, 0x5d, 0x79, 0x81, 0xa9, 0xe9, 0xbd, 0x2f, 0x69, 0x11, 0x7f, 0x64, 0x7f, 0xe9, 0xf5, 0x08, 0x23, 0x3b, 0x68, 0xd3, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_3166 = { .name = "xdh_wei448_3166", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3166_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3166_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3166_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 62 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3167 for XDH, tcId is 63 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3167_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3167_privkey[] = { 0xac, 0x23, 0xf2, 0xc2, 0x9d, 0xd7, 0x91, 0x0e, 0xbd, 0xb4, 0x7e, 0xfc, 0x5c, 0xcb, 0x34, 0x5d, 0xc9, 0x39, 0x2b, 0xb5, 0xde, 0xf5, 0x01, 0x8d, 0xc8, 0xcb, 0x41, 0x06, 0x35, 0xf5, 0x6e, 0x63, 0xab, 0x92, 0xbc, 0xda, 0xc4, 0x17, 0x7c, 0x6b, 0xd3, 0x45, 0x0b, 0x09, 0x84, 0x93, 0xb6, 0x8b, 0xb5, 0x4e, 0xa4, 0x7b, 0x76, 0x93, 0x34, 0xc4, }; static const unsigned char xdh_wei448_3167_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3167 = { .name = "xdh_wei448_3167", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3167_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3167_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3167_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 63 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3168 for XDH, tcId is 65 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3168_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3168_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3168_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3168 = { .name = "xdh_wei448_3168", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3168_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3168_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3168_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 65 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3169 for XDH, tcId is 66 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3169_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3169_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3169_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3169 = { .name = "xdh_wei448_3169", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3169_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3169_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3169_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 66 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3170 for XDH, tcId is 67 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3170_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3170_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3170_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3170 = { .name = "xdh_wei448_3170", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3170_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3170_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3170_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 67 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3171 for XDH, tcId is 68 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3171_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3171_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3171_sharedsecret[] = { 0x7a, 0xd5, 0x21, 0x0b, 0x70, 0xf2, 0xa7, 0xf4, 0xf2, 0xfe, 0x30, 0x6c, 0xe0, 0x98, 0xe3, 0xad, 0x30, 0x65, 0xca, 0xfd, 0x6f, 0x5a, 0x8d, 0x3e, 0x04, 0xdf, 0x33, 0xda, 0x71, 0x89, 0xd4, 0x49, 0xba, 0xcc, 0x85, 0x64, 0xed, 0x5b, 0x9f, 0x15, 0x32, 0xe8, 0x73, 0x74, 0xea, 0xe9, 0xd9, 0x51, 0xf4, 0x5c, 0x38, 0x3b, 0xa9, 0xd8, 0x05, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3171 = { .name = "xdh_wei448_3171", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3171_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3171_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3171_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 68 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3172 for XDH, tcId is 69 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3172_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3172_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3172_sharedsecret[] = { 0x25, 0xa8, 0xe0, 0x34, 0xc3, 0x96, 0x3e, 0x07, 0x65, 0xfb, 0x59, 0xe6, 0xb8, 0x85, 0x58, 0xcd, 0x67, 0x4a, 0xc2, 0xdd, 0x2b, 0x31, 0x02, 0x21, 0xec, 0xf3, 0x3d, 0x16, 0x8b, 0x9f, 0xaf, 0x5f, 0xe9, 0x42, 0x53, 0xaf, 0x64, 0x29, 0x7b, 0x9a, 0x06, 0x1b, 0xfa, 0x93, 0xd6, 0xe3, 0xeb, 0x91, 0x9a, 0x51, 0x58, 0x6f, 0xeb, 0x95, 0x5c, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_3172 = { .name = "xdh_wei448_3172", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3172_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3172_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3172_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 69 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3173 for XDH, tcId is 70 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3173_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3173_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3173_sharedsecret[] = { 0x85, 0x6b, 0x87, 0x07, 0xb1, 0x6e, 0x1b, 0x21, 0xdf, 0xc5, 0x47, 0xfd, 0xb0, 0x4c, 0x61, 0xa4, 0xae, 0xd9, 0xf9, 0x00, 0x1f, 0x3f, 0x26, 0x40, 0x49, 0x01, 0xe9, 0xba, 0x30, 0x93, 0x3c, 0xdd, 0x7c, 0xa9, 0xe2, 0xa0, 0xe5, 0x77, 0x00, 0x58, 0x8e, 0xb8, 0x57, 0x63, 0x12, 0xea, 0xd8, 0xee, 0x57, 0x91, 0xa8, 0xec, 0xff, 0x32, 0xef, 0xaa, }; static const wycheproof_xdh_test xdh_wei448_3173 = { .name = "xdh_wei448_3173", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3173_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3173_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3173_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 70 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3174 for XDH, tcId is 71 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3174_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3174_privkey[] = { 0xb8, 0xa9, 0xb9, 0xf6, 0xf1, 0xaf, 0x4f, 0x15, 0x25, 0xa5, 0x3b, 0x89, 0x5c, 0x3b, 0xf6, 0x4f, 0x23, 0x16, 0x1f, 0x67, 0x0f, 0xcf, 0xf2, 0xfb, 0xa7, 0x9b, 0x8f, 0xda, 0xc0, 0x73, 0x95, 0xee, 0x99, 0xbf, 0x46, 0x27, 0x8f, 0x3e, 0x94, 0x8a, 0x55, 0x67, 0x07, 0xcd, 0x2a, 0x88, 0x9b, 0xae, 0x69, 0x44, 0x94, 0x96, 0x29, 0x5c, 0xc5, 0xa2, }; static const unsigned char xdh_wei448_3174_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3174 = { .name = "xdh_wei448_3174", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3174_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3174_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3174_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439, tcId is 71 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3175 for XDH, tcId is 72 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3175_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3175_privkey[] = { 0xe0, 0xb3, 0x2c, 0xd5, 0xd6, 0x02, 0xcb, 0x78, 0xe5, 0x4c, 0x87, 0xfe, 0x29, 0xeb, 0x60, 0x75, 0x88, 0x44, 0x63, 0x33, 0x4b, 0x25, 0x1d, 0xe2, 0x03, 0xf4, 0xc4, 0x6c, 0xb6, 0x8a, 0xc2, 0x47, 0x83, 0x91, 0xf0, 0xa3, 0xf1, 0x9c, 0xcd, 0xe5, 0xf8, 0xec, 0x64, 0x0c, 0xc7, 0xb5, 0x88, 0x77, 0xb4, 0x3e, 0x5b, 0x8b, 0x57, 0x8b, 0x40, 0xd7, }; static const unsigned char xdh_wei448_3175_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3175 = { .name = "xdh_wei448_3175", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3175_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3175_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3175_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365440, tcId is 72 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3176 for XDH, tcId is 73 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3176_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3176_privkey[] = { 0x64, 0x0b, 0x78, 0x20, 0xd3, 0xc9, 0xbc, 0x49, 0xd6, 0x85, 0xfb, 0x80, 0x74, 0xfe, 0x98, 0x42, 0x52, 0x2f, 0x9c, 0x5a, 0xd3, 0x34, 0xda, 0x17, 0xa6, 0x47, 0xc6, 0xbd, 0xae, 0x72, 0x45, 0x4c, 0xcd, 0x25, 0xca, 0x33, 0x72, 0xb6, 0x10, 0xeb, 0xf8, 0x9c, 0x0a, 0x33, 0x6b, 0x4f, 0xd5, 0x9a, 0x82, 0xf6, 0x87, 0x5f, 0x37, 0xdc, 0x86, 0xe4, }; static const unsigned char xdh_wei448_3176_sharedsecret[] = { 0x48, 0x68, 0x06, 0x12, 0x6f, 0xa8, 0xfd, 0x7b, 0x25, 0x59, 0x15, 0x56, 0x0d, 0x4d, 0x54, 0xad, 0xa9, 0xac, 0xc0, 0x5b, 0x1b, 0x54, 0x64, 0xcf, 0x7b, 0x5f, 0x11, 0x67, 0x1f, 0xf0, 0x07, 0x6b, 0x2a, 0x38, 0x88, 0x65, 0x28, 0x55, 0xc2, 0x81, 0x8b, 0xc2, 0x8b, 0xa3, 0xc7, 0xb3, 0x44, 0xcb, 0x10, 0x06, 0x14, 0x3b, 0xfe, 0x1a, 0x97, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_3176 = { .name = "xdh_wei448_3176", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3176_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3176_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3176_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 73 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3177 for XDH, tcId is 74 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3177_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3177_privkey[] = { 0x04, 0x51, 0x6d, 0xd7, 0x0b, 0xfe, 0x73, 0x92, 0xde, 0x61, 0xcf, 0x35, 0x2e, 0xce, 0x15, 0xc2, 0x3e, 0x2a, 0x64, 0x21, 0x52, 0xfe, 0x40, 0xe9, 0x62, 0xc0, 0x53, 0x83, 0xd4, 0xf8, 0xeb, 0xd4, 0x54, 0x82, 0xe1, 0xb3, 0xc0, 0x4a, 0x36, 0x64, 0x45, 0x7f, 0x98, 0xdf, 0xa8, 0x37, 0x19, 0xa5, 0x28, 0x06, 0x39, 0xc5, 0xa1, 0x2d, 0xcb, 0x94, }; static const unsigned char xdh_wei448_3177_sharedsecret[] = { 0xcc, 0x0e, 0xef, 0x36, 0x96, 0xa6, 0x2c, 0xbf, 0xe4, 0xc5, 0x85, 0x51, 0x4a, 0x90, 0xa7, 0xe1, 0x2e, 0xc2, 0x4e, 0x10, 0x1e, 0x84, 0x58, 0xeb, 0xfb, 0xe7, 0x5d, 0x9d, 0xb7, 0xa8, 0x26, 0x60, 0x74, 0x16, 0xd3, 0xf2, 0xa6, 0x9d, 0x7a, 0xc6, 0xc0, 0x3f, 0x27, 0xe1, 0xe2, 0x25, 0xee, 0x75, 0x67, 0x72, 0x78, 0xfc, 0x2f, 0x26, 0xdd, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3177 = { .name = "xdh_wei448_3177", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3177_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3177_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3177_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 74 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3178 for XDH, tcId is 75 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3178_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3178_privkey[] = { 0xfc, 0xa7, 0x84, 0xf0, 0x39, 0x79, 0x8b, 0xe5, 0x96, 0xaf, 0xee, 0xda, 0xec, 0x5b, 0x38, 0x68, 0xf0, 0xc8, 0x29, 0x89, 0x27, 0x72, 0x1f, 0xb8, 0x2a, 0xd0, 0x45, 0x46, 0xb7, 0xe4, 0xc4, 0xf4, 0x2f, 0xa1, 0xfc, 0x3f, 0xc7, 0xd1, 0x2f, 0x43, 0xf5, 0xa2, 0xe8, 0xa9, 0x63, 0x62, 0xfc, 0xc7, 0x1a, 0x34, 0xb4, 0x4b, 0x55, 0x9e, 0x0b, 0x96, }; static const unsigned char xdh_wei448_3178_sharedsecret[] = { 0xa7, 0x29, 0xe6, 0xec, 0xe3, 0xdb, 0x18, 0xb7, 0xe9, 0x42, 0x3b, 0xe4, 0xe7, 0xfa, 0xe1, 0x8c, 0xaa, 0x29, 0x1e, 0x61, 0xce, 0x84, 0xb6, 0x08, 0x56, 0x9a, 0xb4, 0x61, 0xb2, 0x70, 0x72, 0x4f, 0xd9, 0x2f, 0x3e, 0x2b, 0x80, 0x86, 0xfe, 0x06, 0x76, 0x73, 0xca, 0x7a, 0xc0, 0x53, 0x57, 0xee, 0x70, 0x1d, 0x69, 0xe4, 0x05, 0x6d, 0x5b, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3178 = { .name = "xdh_wei448_3178", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3178_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3178_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3178_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 75 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3179 for XDH, tcId is 76 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3179_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3179_privkey[] = { 0x74, 0x2b, 0x8c, 0x0b, 0x0a, 0xb0, 0x10, 0x4a, 0x9e, 0xf9, 0x63, 0x4c, 0x0a, 0xad, 0x02, 0x3f, 0x35, 0xe4, 0x1f, 0xb9, 0x53, 0x71, 0x71, 0x21, 0xce, 0x4c, 0x2a, 0xeb, 0xc1, 0xa1, 0x28, 0xe7, 0xc0, 0x43, 0x1c, 0xd1, 0x34, 0x7a, 0x62, 0x41, 0x68, 0x5f, 0x71, 0x74, 0xa8, 0x51, 0x2d, 0x41, 0x7e, 0xba, 0xaa, 0x46, 0xee, 0x78, 0x0a, 0x8a, }; static const unsigned char xdh_wei448_3179_sharedsecret[] = { 0xd9, 0x2b, 0x02, 0xd7, 0xbb, 0x99, 0x52, 0xf4, 0xca, 0x82, 0x6b, 0x2b, 0x51, 0xf1, 0xa3, 0xd4, 0xde, 0x1f, 0xd4, 0x45, 0x9f, 0x0d, 0x01, 0x98, 0x53, 0xf3, 0xa9, 0x60, 0xd5, 0x4f, 0x33, 0x54, 0xd8, 0xe4, 0x0f, 0xb2, 0x8d, 0x1b, 0xe6, 0x56, 0x37, 0xbb, 0x7d, 0xba, 0x05, 0x71, 0xff, 0x83, 0x79, 0x7b, 0x71, 0x06, 0xc7, 0x49, 0x74, 0x59, }; static const wycheproof_xdh_test xdh_wei448_3179 = { .name = "xdh_wei448_3179", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3179_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3179_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3179_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 76 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3180 for XDH, tcId is 82 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3180_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3180_privkey[] = { 0x44, 0xe6, 0xd9, 0x86, 0x24, 0xb7, 0xdf, 0xda, 0x55, 0x74, 0x08, 0x21, 0x1b, 0xf9, 0xdd, 0xb1, 0x7c, 0xe0, 0xb8, 0x73, 0x94, 0x28, 0x4a, 0x3d, 0xfb, 0x6c, 0x73, 0x8b, 0x67, 0x4c, 0xd7, 0xc5, 0xb2, 0xa7, 0x5f, 0x95, 0x62, 0x38, 0x7e, 0x67, 0x0b, 0x06, 0x3c, 0x7f, 0x37, 0x4b, 0x7b, 0xea, 0x66, 0x97, 0x38, 0xe4, 0x07, 0xda, 0xc3, 0xf1, }; static const unsigned char xdh_wei448_3180_sharedsecret[] = { 0x00, 0x25, 0x17, 0xcf, 0x33, 0x94, 0x89, 0xd2, 0x52, 0x49, 0xdb, 0x5c, 0x2c, 0xea, 0xd3, 0xe1, 0xa8, 0x33, 0x70, 0x5d, 0x5b, 0x53, 0x35, 0x11, 0x85, 0xf8, 0xf9, 0x44, 0x0c, 0xe4, 0xf2, 0x96, 0x79, 0xbd, 0xec, 0x0b, 0x79, 0xc2, 0x30, 0x1a, 0x30, 0x24, 0x31, 0x83, 0x4a, 0x54, 0xb4, 0x55, 0xe7, 0x3b, 0x9f, 0x1a, 0x95, 0x84, 0x6b, 0x1d, }; static const wycheproof_xdh_test xdh_wei448_3180 = { .name = "xdh_wei448_3180", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3180_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3180_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3180_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 82 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3181 for XDH, tcId is 86 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3181_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3181_privkey[] = { 0x14, 0x21, 0x5f, 0xc7, 0x90, 0xbe, 0x32, 0x39, 0xcf, 0xc8, 0xc3, 0xf4, 0x5f, 0xed, 0x60, 0x2b, 0xca, 0xb4, 0xe1, 0x85, 0x3a, 0x5d, 0x03, 0x97, 0xbd, 0x45, 0xbf, 0xd0, 0xa5, 0x46, 0xde, 0x75, 0x55, 0xa6, 0x0b, 0x4d, 0x68, 0x4d, 0x9c, 0x54, 0xf8, 0x22, 0xbc, 0x16, 0x8f, 0x1c, 0xb8, 0xc4, 0xc0, 0x3d, 0xae, 0x2f, 0x7e, 0x34, 0xb8, 0xe0, }; static const unsigned char xdh_wei448_3181_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3181 = { .name = "xdh_wei448_3181", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3181_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3181_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3181_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656, tcId is 86 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3182 for XDH, tcId is 88 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3182_peerpubkey[] = { 0x3e, 0xb7, 0xa8, 0x29, 0xb0, 0xcd, 0x20, 0xf5, 0xbc, 0xfc, 0x0b, 0x59, 0x9b, 0x6f, 0xec, 0xcf, 0x6d, 0xa4, 0x62, 0x71, 0x07, 0xbd, 0xb0, 0xd4, 0xf3, 0x45, 0xb4, 0x30, 0x27, 0xd8, 0xb9, 0x72, 0xfc, 0x3e, 0x34, 0xfb, 0x42, 0x32, 0xa1, 0x3c, 0xa7, 0x06, 0xdc, 0xb5, 0x7a, 0xec, 0x3d, 0xae, 0x07, 0xbd, 0xc1, 0xc6, 0x7b, 0xf3, 0x36, 0x09, }; static const unsigned char xdh_wei448_3182_privkey[] = { 0x9a, 0x8f, 0x49, 0x25, 0xd1, 0x51, 0x9f, 0x57, 0x75, 0xcf, 0x46, 0xb0, 0x4b, 0x58, 0x00, 0xd4, 0xee, 0x9e, 0xe8, 0xba, 0xe8, 0xbc, 0x55, 0x65, 0xd4, 0x98, 0xc2, 0x8d, 0xd9, 0xc9, 0xba, 0xf5, 0x74, 0xa9, 0x41, 0x97, 0x44, 0x89, 0x73, 0x91, 0x00, 0x63, 0x82, 0xa6, 0xf1, 0x27, 0xab, 0x1d, 0x9a, 0xc2, 0xd8, 0xc0, 0xa5, 0x98, 0x72, 0x6b, }; static const unsigned char xdh_wei448_3182_sharedsecret[] = { 0x07, 0xff, 0xf4, 0x18, 0x1a, 0xc6, 0xcc, 0x95, 0xec, 0x1c, 0x16, 0xa9, 0x4a, 0x0f, 0x74, 0xd1, 0x2d, 0xa2, 0x32, 0xce, 0x40, 0xa7, 0x75, 0x52, 0x28, 0x1d, 0x28, 0x2b, 0xb6, 0x0c, 0x0b, 0x56, 0xfd, 0x24, 0x64, 0xc3, 0x35, 0x54, 0x39, 0x36, 0x52, 0x1c, 0x24, 0x40, 0x30, 0x85, 0xd5, 0x9a, 0x44, 0x9a, 0x50, 0x37, 0x51, 0x4a, 0x87, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3182 = { .name = "xdh_wei448_3182", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3182_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3182_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3182_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "RFC 8037, Section A.7, tcId is 88 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3183 for XDH, tcId is 89 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3183_peerpubkey[] = { 0xb9, 0x1a, 0x0c, 0x5a, 0xd4, 0x97, 0xd9, 0x5f, 0x15, 0xdf, 0x62, 0xe4, 0x23, 0x1e, 0xda, 0xaa, 0xab, 0x21, 0xd8, 0x29, 0x53, 0xfc, 0xde, 0x09, 0xea, 0xb1, 0x64, 0x20, 0x97, 0x45, 0xaa, 0xb6, 0xfe, 0x9d, 0x35, 0x3a, 0x0d, 0xa3, 0x28, 0xfa, 0x81, 0x47, 0x93, 0x9e, 0x63, 0xad, 0x56, 0xd1, 0xc0, 0xd2, 0xc0, 0xbd, 0xdd, 0x95, 0xda, 0x50, }; static const unsigned char xdh_wei448_3183_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3183_sharedsecret[] = { 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3183 = { .name = "xdh_wei448_3183", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3183_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3183_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3183_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 89 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3184 for XDH, tcId is 90 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3184_peerpubkey[] = { 0x7b, 0xae, 0x31, 0x6c, 0x8f, 0xb6, 0xd7, 0x59, 0xa3, 0xbe, 0x62, 0x5b, 0xb7, 0xc5, 0xe7, 0x5e, 0xc6, 0x4e, 0x3c, 0xb7, 0xde, 0xdd, 0x3d, 0xfa, 0x05, 0x77, 0x11, 0x46, 0xaf, 0x2d, 0xc4, 0x5e, 0x64, 0x24, 0x48, 0x9b, 0x3d, 0x96, 0xf6, 0x31, 0x37, 0xab, 0x3c, 0xaa, 0x9d, 0x26, 0x1c, 0x49, 0xa2, 0x14, 0x66, 0x28, 0x04, 0xaf, 0x48, 0x46, }; static const unsigned char xdh_wei448_3184_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3184_sharedsecret[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3184 = { .name = "xdh_wei448_3184", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3184_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3184_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3184_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 90 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3185 for XDH, tcId is 91 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3185_peerpubkey[] = { 0xc5, 0x51, 0x02, 0x72, 0x88, 0xf7, 0x73, 0x64, 0x65, 0x90, 0x79, 0xb5, 0xdb, 0x73, 0x68, 0xb4, 0xcf, 0x8f, 0xd6, 0xf1, 0xd7, 0x0d, 0xc1, 0xf1, 0x45, 0xa3, 0x3e, 0x85, 0xd3, 0x71, 0xe0, 0x7a, 0x3a, 0xfe, 0xad, 0x48, 0x4a, 0x0e, 0xad, 0xf0, 0xba, 0x5d, 0x04, 0x3b, 0xc2, 0x7e, 0xa1, 0x95, 0xf2, 0x00, 0x53, 0x10, 0xbe, 0xea, 0x24, 0xa0, }; static const unsigned char xdh_wei448_3185_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3185_sharedsecret[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3185 = { .name = "xdh_wei448_3185", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3185_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3185_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3185_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 91 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3186 for XDH, tcId is 92 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3186_peerpubkey[] = { 0xd3, 0xc5, 0x30, 0x27, 0x9c, 0x9b, 0x5a, 0xce, 0x05, 0x19, 0xde, 0xe3, 0x2e, 0xe9, 0x32, 0xc3, 0x20, 0x42, 0x5d, 0x71, 0x7f, 0x55, 0x9b, 0x34, 0xca, 0x8e, 0x24, 0x54, 0x0f, 0xb7, 0x6f, 0xd9, 0xac, 0xe7, 0x78, 0x5e, 0x52, 0x91, 0x16, 0xb2, 0x20, 0xb0, 0x6f, 0x5e, 0xc0, 0xba, 0x4a, 0x05, 0x23, 0x7f, 0xcf, 0xd0, 0x0b, 0xa3, 0xc7, 0xde, }; static const unsigned char xdh_wei448_3186_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3186_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3186 = { .name = "xdh_wei448_3186", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3186_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3186_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3186_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 92 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3187 for XDH, tcId is 93 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3187_peerpubkey[] = { 0x43, 0xb6, 0x1e, 0x50, 0x2c, 0x66, 0x2f, 0x9c, 0x9a, 0x06, 0x39, 0xd2, 0xaf, 0x3e, 0x88, 0xde, 0x77, 0xb3, 0xb7, 0x0b, 0xc3, 0xbb, 0x2a, 0xbe, 0xab, 0xa3, 0x9d, 0xd5, 0xe7, 0x13, 0x2d, 0xdd, 0xcf, 0x14, 0xa1, 0x8d, 0x9d, 0x7c, 0xa4, 0x01, 0x3a, 0x33, 0xb5, 0x47, 0x87, 0xaf, 0xde, 0xd9, 0xd8, 0x7d, 0x5d, 0x67, 0xd4, 0x3c, 0x30, 0xd6, }; static const unsigned char xdh_wei448_3187_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3187_sharedsecret[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3187 = { .name = "xdh_wei448_3187", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3187_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3187_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3187_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 93 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3188 for XDH, tcId is 94 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3188_peerpubkey[] = { 0x2e, 0xe0, 0x34, 0x14, 0x7e, 0x21, 0xfd, 0x9f, 0xc9, 0x95, 0x68, 0x34, 0x8e, 0x88, 0x28, 0x9c, 0x9d, 0x8c, 0x83, 0x91, 0xd2, 0x51, 0x50, 0xfa, 0xe8, 0x9f, 0x76, 0x3f, 0xb6, 0x4f, 0x96, 0x2c, 0xb8, 0x4a, 0xd3, 0x14, 0xc2, 0x96, 0x08, 0x71, 0xb9, 0x51, 0x11, 0xbb, 0x0f, 0x18, 0x01, 0x11, 0x4c, 0x3a, 0x12, 0x16, 0xbe, 0xe7, 0xed, 0xd6, }; static const unsigned char xdh_wei448_3188_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3188_sharedsecret[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3188 = { .name = "xdh_wei448_3188", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3188_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3188_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3188_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 94 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3189 for XDH, tcId is 95 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3189_peerpubkey[] = { 0xeb, 0xad, 0x9b, 0x8e, 0x2e, 0x7f, 0xdf, 0xd6, 0xc9, 0x3e, 0x2f, 0x3c, 0xf4, 0xe8, 0x1b, 0xe7, 0xbb, 0xfb, 0x34, 0xe6, 0xde, 0x7b, 0xba, 0xef, 0x9c, 0x95, 0x7d, 0x3a, 0x03, 0x24, 0xf9, 0x78, 0x19, 0x50, 0xc7, 0x03, 0x92, 0xee, 0x53, 0x58, 0x79, 0x31, 0xc3, 0xf1, 0xad, 0x30, 0x50, 0x59, 0x7d, 0x07, 0x64, 0x4f, 0x0e, 0x8a, 0x0a, 0xb3, }; static const unsigned char xdh_wei448_3189_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3189_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3189 = { .name = "xdh_wei448_3189", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3189_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3189_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3189_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 95 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3190 for XDH, tcId is 96 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3190_peerpubkey[] = { 0x6a, 0x2b, 0xc1, 0x33, 0xf7, 0xc8, 0x4d, 0x9c, 0x23, 0x39, 0xa7, 0xe9, 0xea, 0x8d, 0xcd, 0xb7, 0xf6, 0xd0, 0x51, 0xfc, 0x5d, 0xb9, 0x27, 0x9c, 0x9f, 0x6e, 0x0a, 0xff, 0x35, 0x17, 0x6c, 0xfd, 0x3b, 0x11, 0xe7, 0xe6, 0xc2, 0xee, 0xc5, 0x20, 0x5b, 0xfe, 0x82, 0x61, 0x2d, 0x2b, 0x0b, 0x3d, 0xf6, 0x73, 0x45, 0x20, 0x36, 0xc5, 0x3f, 0xb8, }; static const unsigned char xdh_wei448_3190_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3190_sharedsecret[] = { 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3190 = { .name = "xdh_wei448_3190", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3190_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3190_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3190_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 96 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3191 for XDH, tcId is 97 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3191_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3191_privkey[] = { 0xc8, 0x17, 0xe3, 0xc0, 0x8e, 0x00, 0x17, 0xa5, 0xa4, 0x42, 0x2c, 0x70, 0x09, 0x5e, 0xdf, 0x06, 0x2d, 0x71, 0xf4, 0x52, 0x13, 0x97, 0x15, 0xed, 0xcc, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0xeb, }; static const unsigned char xdh_wei448_3191_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3191 = { .name = "xdh_wei448_3191", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3191_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3191_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3191_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 97 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3192 for XDH, tcId is 98 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3192_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3192_privkey[] = { 0xdc, 0x05, 0xe8, 0xc9, 0xde, 0xce, 0xf9, 0xd3, 0xe3, 0x50, 0xee, 0x83, 0xae, 0xe2, 0x50, 0x2c, 0xed, 0xd7, 0x6f, 0x07, 0xd2, 0x36, 0x4d, 0xe9, 0x93, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x83, }; static const unsigned char xdh_wei448_3192_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3192 = { .name = "xdh_wei448_3192", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3192_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3192_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3192_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 98 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3193 for XDH, tcId is 99 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3193_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3193_privkey[] = { 0x80, 0x3f, 0x68, 0xff, 0x98, 0x12, 0x67, 0x6a, 0xb8, 0x09, 0x58, 0x2f, 0x0b, 0x93, 0xe8, 0x04, 0x61, 0x59, 0x8c, 0x98, 0x7b, 0xc7, 0xb2, 0xe4, 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x91, }; static const unsigned char xdh_wei448_3193_sharedsecret[] = { 0x27, 0x54, 0xaa, 0x14, 0x4a, 0xc7, 0x00, 0xad, 0x18, 0x3b, 0x9c, 0x20, 0xcd, 0x26, 0x27, 0xdb, 0x3c, 0x51, 0xe7, 0x64, 0x40, 0x55, 0xf7, 0x1f, 0x46, 0xe2, 0xb9, 0x99, 0xd3, 0xe1, 0x3e, 0x34, 0x64, 0x54, 0x56, 0x0f, 0xa7, 0x2a, 0x16, 0x48, 0x85, 0x61, 0xe6, 0x0d, 0x6b, 0x64, 0x23, 0xed, 0x50, 0xd1, 0xe7, 0x5a, 0x48, 0x99, 0xa8, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3193 = { .name = "xdh_wei448_3193", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3193_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3193_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3193_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 99 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3194 for XDH, tcId is 100 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3194_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3194_privkey[] = { 0x04, 0xdf, 0xf9, 0x01, 0xe6, 0x90, 0x7e, 0xf6, 0x3c, 0x05, 0x90, 0xc6, 0x09, 0x00, 0x65, 0xef, 0x5c, 0x3c, 0x0e, 0xd0, 0x3d, 0x1a, 0x99, 0x49, 0xbb, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x9b, }; static const unsigned char xdh_wei448_3194_sharedsecret[] = { 0x00, 0x7a, 0x85, 0x0b, 0x8e, 0x86, 0x37, 0x83, 0xcb, 0x6c, 0x17, 0x5c, 0x9b, 0xab, 0xbb, 0xd3, 0x5a, 0xbe, 0x37, 0xd4, 0x13, 0xa8, 0x88, 0xd9, 0x76, 0xac, 0xc6, 0x8b, 0x70, 0xf6, 0xe6, 0x66, 0x9c, 0x7c, 0x50, 0x95, 0xc2, 0xcf, 0xcc, 0xc5, 0x28, 0x28, 0x46, 0x87, 0xf2, 0x53, 0xdd, 0xb1, 0xdd, 0xc3, 0xea, 0x09, 0x10, 0xbd, 0x14, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3194 = { .name = "xdh_wei448_3194", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3194_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3194_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3194_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 100 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3195 for XDH, tcId is 101 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3195_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3195_privkey[] = { 0x64, 0xd5, 0xe0, 0x00, 0x0a, 0xeb, 0xdf, 0x9b, 0x75, 0x74, 0x02, 0xd0, 0x8a, 0xf6, 0x46, 0xc6, 0xf3, 0x1d, 0x66, 0x28, 0xbe, 0x80, 0x6f, 0x64, 0x6f, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0xf6, }; static const unsigned char xdh_wei448_3195_sharedsecret[] = { 0x06, 0x65, 0xa1, 0xc3, 0xd7, 0xa7, 0x47, 0xe5, 0x9e, 0x8d, 0xbe, 0x84, 0x1d, 0xac, 0x1f, 0x40, 0x1d, 0x07, 0x3c, 0xa4, 0x5e, 0xa2, 0x9b, 0xad, 0x45, 0x75, 0x77, 0xd7, 0x92, 0x2f, 0xb9, 0x82, 0x57, 0x70, 0x5f, 0x84, 0xb1, 0x98, 0xa6, 0x8c, 0x2e, 0x2c, 0x3e, 0xd7, 0xb9, 0xe4, 0x23, 0x3e, 0x43, 0xc4, 0x48, 0x87, 0xd7, 0xa8, 0xe0, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_3195 = { .name = "xdh_wei448_3195", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3195_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3195_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3195_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 101 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3196 for XDH, tcId is 102 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3196_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3196_privkey[] = { 0x78, 0xe6, 0xc1, 0x28, 0xfe, 0x70, 0x60, 0x70, 0x5c, 0xe2, 0x2c, 0x63, 0x63, 0xdf, 0xa7, 0xaa, 0x16, 0x9a, 0x38, 0x99, 0x23, 0xd2, 0x1a, 0x31, 0x3c, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0xf4, }; static const unsigned char xdh_wei448_3196_sharedsecret[] = { 0x07, 0x01, 0xa1, 0xcf, 0x05, 0xb9, 0xed, 0x47, 0x99, 0x15, 0x1d, 0xee, 0xdf, 0xb5, 0xf2, 0xbd, 0x6a, 0xa8, 0x3a, 0x73, 0x90, 0xdd, 0xb2, 0x74, 0x97, 0xe8, 0xa5, 0x9b, 0x9f, 0x8e, 0x18, 0xe2, 0xb2, 0x5a, 0xbb, 0x07, 0x15, 0xe0, 0x84, 0x8b, 0xc3, 0xc2, 0xeb, 0x0b, 0xb2, 0xc9, 0xd6, 0xf0, 0xb3, 0x70, 0xe8, 0x9a, 0x98, 0xef, 0x5b, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_3196 = { .name = "xdh_wei448_3196", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3196_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3196_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3196_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 102 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3197 for XDH, tcId is 103 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3197_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3197_privkey[] = { 0x34, 0x00, 0xca, 0x2d, 0x96, 0xb2, 0x45, 0x7b, 0xd3, 0xcb, 0x6f, 0xef, 0xc3, 0xf5, 0xb5, 0x24, 0xd8, 0x71, 0x33, 0xd6, 0xba, 0x29, 0x56, 0xcc, 0x37, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x8b, }; static const unsigned char xdh_wei448_3197_sharedsecret[] = { 0xd7, 0xc6, 0x2f, 0x95, 0xa5, 0x2e, 0xed, 0xcf, 0xf9, 0x1b, 0x69, 0xa7, 0x34, 0xae, 0xd3, 0x3f, 0x71, 0xbc, 0xad, 0xe0, 0x15, 0xb5, 0xe6, 0x68, 0xf3, 0xfb, 0x79, 0x90, 0x52, 0x2f, 0x97, 0x96, 0x70, 0xb4, 0x3a, 0x4c, 0x8e, 0xe0, 0x55, 0x85, 0x1d, 0xbd, 0x3b, 0x53, 0x47, 0x46, 0x5e, 0x1d, 0x13, 0xb8, 0xdc, 0xee, 0x62, 0x3e, 0x78, 0x79, }; static const wycheproof_xdh_test xdh_wei448_3197 = { .name = "xdh_wei448_3197", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3197_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3197_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3197_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 103 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3198 for XDH, tcId is 104 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3198_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3198_privkey[] = { 0x9c, 0xfd, 0xbc, 0xba, 0x85, 0x85, 0x5a, 0x0c, 0xa9, 0x73, 0x14, 0xa6, 0x53, 0xc9, 0xa0, 0xa1, 0x6e, 0x83, 0xed, 0xb7, 0x4a, 0xaf, 0x79, 0x9d, 0xdc, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0xcf, }; static const unsigned char xdh_wei448_3198_sharedsecret[] = { 0xed, 0x35, 0x4b, 0x70, 0x81, 0xfc, 0x03, 0x66, 0xd5, 0x74, 0xf4, 0x69, 0x6b, 0xef, 0x60, 0xb3, 0x09, 0x9d, 0x55, 0xcb, 0x08, 0x32, 0xe8, 0x22, 0x61, 0x9b, 0x8b, 0x4d, 0x2d, 0x57, 0xff, 0xe3, 0xb3, 0xec, 0x29, 0x87, 0x75, 0x5d, 0xba, 0x08, 0xbd, 0xab, 0x6b, 0xbf, 0x5a, 0x28, 0x42, 0x76, 0x74, 0x5e, 0x0b, 0xd4, 0xfe, 0xf9, 0xba, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3198 = { .name = "xdh_wei448_3198", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3198_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3198_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3198_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 104 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3199 for XDH, tcId is 105 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3199_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3199_privkey[] = { 0xc4, 0x09, 0x1f, 0x83, 0xdd, 0xdf, 0xf4, 0x4f, 0x26, 0xe6, 0x0f, 0xe3, 0xda, 0xf2, 0xea, 0x2a, 0x0d, 0xe8, 0x86, 0x72, 0x7a, 0x43, 0x10, 0x59, 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0xbe, }; static const unsigned char xdh_wei448_3199_sharedsecret[] = { 0x10, 0x0c, 0xdb, 0xa5, 0x2c, 0xd0, 0x5a, 0x3c, 0x18, 0x21, 0x9d, 0xb9, 0x81, 0x54, 0xd9, 0x0c, 0x05, 0xca, 0x6b, 0x4d, 0xce, 0xfa, 0xa0, 0xce, 0xf9, 0x05, 0x38, 0xe7, 0xb8, 0x08, 0x79, 0xf2, 0xd6, 0x7d, 0x5a, 0xb2, 0xc3, 0x1c, 0x28, 0xf7, 0x7b, 0x38, 0x96, 0x9d, 0x81, 0x7a, 0x78, 0xd0, 0x5f, 0x6a, 0x55, 0x99, 0xb8, 0x4b, 0x19, 0x41, }; static const wycheproof_xdh_test xdh_wei448_3199 = { .name = "xdh_wei448_3199", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3199_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3199_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3199_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 105 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3200 for XDH, tcId is 106 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3200_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3200_privkey[] = { 0xdc, 0xc6, 0x1f, 0xe1, 0x8e, 0xab, 0x64, 0xde, 0x8b, 0x96, 0x87, 0xb2, 0x8b, 0xf0, 0x2d, 0x9e, 0x53, 0x32, 0x0c, 0x98, 0xe1, 0xcf, 0x1e, 0x18, 0x45, 0x31, 0x1e, 0x17, 0xea, 0xaf, 0x7e, 0x27, 0x47, 0x67, 0xd9, 0xe6, 0x79, 0x78, 0x05, 0xd5, 0x80, 0xfc, 0x48, 0xc2, 0x49, 0xec, 0x37, 0x6d, 0xb9, 0x22, 0x60, 0xbc, 0x39, 0x0e, 0xc4, 0x89, }; static const unsigned char xdh_wei448_3200_sharedsecret[] = { 0xe8, 0x50, 0x50, 0xba, 0x91, 0xb8, 0xcd, 0xd6, 0xed, 0x86, 0xce, 0xc4, 0x7b, 0xe3, 0x16, 0x2d, 0x70, 0x59, 0x9c, 0xa3, 0x43, 0x3e, 0x7c, 0x6d, 0x3e, 0xc8, 0xff, 0xfe, 0x75, 0x8b, 0x60, 0x79, 0x69, 0xf9, 0x86, 0xe5, 0xc0, 0x10, 0xbc, 0xcf, 0xf0, 0xff, 0xe1, 0x8e, 0x86, 0x1f, 0xf8, 0x7b, 0x46, 0x20, 0x40, 0xb6, 0x11, 0xd4, 0x04, 0x8e, }; static const wycheproof_xdh_test xdh_wei448_3200 = { .name = "xdh_wei448_3200", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3200_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3200_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3200_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 106 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3201 for XDH, tcId is 107 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3201_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3201_privkey[] = { 0x38, 0x0f, 0xaa, 0x61, 0xba, 0x00, 0xb7, 0xf4, 0x5d, 0x70, 0xea, 0xc9, 0x8d, 0x0c, 0x5b, 0x42, 0x00, 0x41, 0x8d, 0xe5, 0xfa, 0xad, 0x0f, 0x1e, 0x21, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0xf1, }; static const unsigned char xdh_wei448_3201_sharedsecret[] = { 0x2a, 0xf9, 0x62, 0x7c, 0xdc, 0x91, 0x9e, 0x6a, 0xff, 0xf5, 0xf9, 0x1c, 0x8d, 0xe2, 0xe2, 0x35, 0xf6, 0xea, 0x2f, 0xc3, 0x7a, 0xf7, 0xbc, 0xe7, 0xbd, 0xdf, 0x80, 0xe0, 0x31, 0x97, 0xd1, 0x3b, 0x8f, 0xa4, 0x24, 0x58, 0x84, 0x4c, 0xc7, 0x91, 0x8d, 0xe6, 0x28, 0xc8, 0x32, 0x81, 0xcc, 0xf4, 0xd3, 0x9c, 0x1e, 0x68, 0x55, 0xc4, 0x26, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3201 = { .name = "xdh_wei448_3201", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3201_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3201_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3201_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 107 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3202 for XDH, tcId is 108 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3202_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3202_privkey[] = { 0xcc, 0x44, 0x2e, 0xe9, 0xdd, 0xeb, 0x3f, 0x1f, 0xf0, 0x4c, 0x32, 0x56, 0xde, 0x35, 0x1a, 0xeb, 0xa2, 0x2d, 0x82, 0x26, 0xa4, 0x9b, 0xf2, 0x1c, 0xa4, 0x13, 0xa0, 0x7f, 0xac, 0x9e, 0x21, 0x33, 0x20, 0x5c, 0x46, 0x8e, 0xf2, 0xa4, 0x7f, 0x10, 0xc7, 0xbe, 0xf3, 0x5f, 0x1c, 0xe7, 0x62, 0x21, 0xbf, 0x8d, 0x61, 0xca, 0x4b, 0x13, 0x36, 0xaf, }; static const unsigned char xdh_wei448_3202_sharedsecret[] = { 0x88, 0xe6, 0x53, 0xd8, 0x87, 0xae, 0xf8, 0xf3, 0xd1, 0xaf, 0xb7, 0x74, 0xd3, 0x7a, 0x85, 0xdd, 0x3f, 0x05, 0xb8, 0xbc, 0xc9, 0x24, 0xce, 0x8c, 0x48, 0x2f, 0x61, 0x27, 0x6b, 0x27, 0x90, 0x6b, 0x94, 0xa5, 0xd6, 0xaf, 0xa2, 0xfe, 0x77, 0xd5, 0x39, 0xaf, 0x69, 0x3d, 0x62, 0x66, 0x47, 0x0c, 0xb4, 0x74, 0x98, 0x2c, 0xbc, 0x95, 0x8d, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3202 = { .name = "xdh_wei448_3202", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3202_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3202_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3202_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 108 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3203 for XDH, tcId is 109 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3203_peerpubkey[] = { 0x75, 0x01, 0x3b, 0x73, 0x52, 0xd4, 0x8e, 0x25, 0x27, 0x81, 0x1e, 0xdd, 0x48, 0xba, 0x39, 0x2c, 0x60, 0xd3, 0xaf, 0x73, 0x4b, 0xb6, 0xe0, 0xf3, 0x5e, 0xc5, 0x7a, 0xf6, 0xcc, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0x35, 0x65, 0xd1, 0xd4, 0xd7, 0x1a, 0x0e, 0x86, 0x71, 0x65, 0xad, 0x7e, 0xdc, 0x62, 0x12, }; static const unsigned char xdh_wei448_3203_privkey[] = { 0xe4, 0xc8, 0xfd, 0x4e, 0x36, 0xe5, 0xc0, 0x67, 0x88, 0x9f, 0xc5, 0xfc, 0xc4, 0x2f, 0xe9, 0xbf, 0x9d, 0xbb, 0xf5, 0xa6, 0x2b, 0x74, 0x58, 0xb9, 0x4e, 0x38, 0x4a, 0x99, 0x18, 0x93, 0x05, 0x01, 0x49, 0xa8, 0x11, 0x5a, 0x3e, 0xc6, 0xaa, 0xb5, 0x3c, 0xf4, 0xe6, 0x94, 0x52, 0x6b, 0x49, 0x09, 0xd8, 0x5c, 0xb3, 0x0e, 0x7d, 0x70, 0x73, 0x88, }; static const unsigned char xdh_wei448_3203_sharedsecret[] = { 0x98, 0x39, 0x2b, 0x35, 0x9f, 0x7f, 0xb1, 0xde, 0x77, 0xa5, 0x21, 0x2e, 0xe9, 0xde, 0x63, 0x65, 0xa6, 0xa4, 0xbf, 0x6e, 0x1d, 0x4a, 0xe6, 0xa3, 0x74, 0xf4, 0xe6, 0x67, 0xa4, 0x98, 0x85, 0xb2, 0xc9, 0x36, 0x7b, 0x1c, 0x95, 0xc8, 0xb8, 0x90, 0xe1, 0x9f, 0x53, 0x0e, 0x30, 0xbe, 0xe7, 0xfb, 0x7a, 0x7e, 0xfb, 0x35, 0x00, 0x8a, 0x4e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_3203 = { .name = "xdh_wei448_3203", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3203_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3203_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3203_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 109 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3204 for XDH, tcId is 110 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3204_peerpubkey[] = { 0xe9, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_3204_privkey[] = { 0xac, 0x81, 0xab, 0x6f, 0x22, 0x44, 0x54, 0xa8, 0xf8, 0x73, 0x11, 0x7d, 0x2e, 0x64, 0x8e, 0xc0, 0x84, 0x69, 0x31, 0xe7, 0xef, 0x64, 0x9e, 0x90, 0xeb, 0x38, 0x2c, 0x71, 0x33, 0x10, 0xba, 0x79, 0x11, 0xd2, 0xcb, 0x3f, 0xf1, 0x79, 0x76, 0x32, 0xf4, 0x39, 0xbf, 0xd6, 0xeb, 0xb3, 0x99, 0x09, 0x89, 0x68, 0xd4, 0x4b, 0x80, 0xfb, 0x63, 0x97, }; static const unsigned char xdh_wei448_3204_sharedsecret[] = { 0x20, 0x6e, 0x12, 0xa6, 0x66, 0xe8, 0xba, 0xdb, 0xdf, 0x25, 0x4d, 0x71, 0x80, 0xd9, 0x79, 0x27, 0x3f, 0x61, 0xd6, 0x6d, 0xa1, 0x4a, 0xb9, 0x4e, 0xa9, 0xce, 0x2d, 0x26, 0x10, 0x99, 0x6d, 0xea, 0xb7, 0x9a, 0x51, 0xc8, 0x78, 0x52, 0x21, 0x68, 0x97, 0xbb, 0xca, 0xb2, 0xcc, 0x4d, 0xa8, 0x9c, 0xc7, 0x7e, 0x56, 0x6a, 0x4b, 0x4e, 0x50, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3204 = { .name = "xdh_wei448_3204", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3204_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3204_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3204_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 110 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3205 for XDH, tcId is 111 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3205_peerpubkey[] = { 0xeb, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_3205_privkey[] = { 0x78, 0x29, 0x04, 0x1f, 0x1c, 0xd5, 0x9e, 0x15, 0x46, 0x26, 0xe3, 0x28, 0x9d, 0x99, 0x3e, 0x42, 0xc3, 0xee, 0x2d, 0x2a, 0x53, 0x1e, 0xd4, 0xd5, 0x89, 0x90, 0xad, 0xf8, 0x56, 0xdf, 0x28, 0x6f, 0xf9, 0xf4, 0xc5, 0xb5, 0xb1, 0xa3, 0xd1, 0x5e, 0x40, 0xb2, 0x97, 0x75, 0xed, 0xfd, 0x66, 0x57, 0xc9, 0x3d, 0xab, 0xa3, 0x6a, 0x42, 0x02, 0xf5, }; static const unsigned char xdh_wei448_3205_sharedsecret[] = { 0x1e, 0x11, 0x74, 0x71, 0xe0, 0x12, 0x91, 0xfe, 0xe7, 0xcd, 0x90, 0x50, 0xc3, 0x1b, 0xff, 0xa5, 0x9d, 0x96, 0xcd, 0x66, 0xdd, 0x2c, 0x32, 0x84, 0xbe, 0x42, 0x36, 0x68, 0x28, 0x71, 0xd2, 0x69, 0x98, 0xbe, 0xbc, 0x0f, 0x3c, 0x7b, 0x14, 0xcc, 0x3a, 0x82, 0x93, 0x92, 0xbc, 0xb8, 0x30, 0x7e, 0x84, 0x50, 0xfb, 0xfd, 0x59, 0x91, 0xe4, 0xdf, }; static const wycheproof_xdh_test xdh_wei448_3205 = { .name = "xdh_wei448_3205", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3205_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3205_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3205_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 111 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3206 for XDH, tcId is 112 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3206_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3206_privkey[] = { 0xf4, 0xa3, 0x46, 0x0f, 0xc8, 0xd5, 0xa9, 0x8d, 0x42, 0x67, 0x03, 0xdf, 0x39, 0xcb, 0xc1, 0x5d, 0x7f, 0xf0, 0xd3, 0x1d, 0xb4, 0x1a, 0xd6, 0x19, 0xa2, 0x8d, 0x69, 0x21, 0xde, 0xec, 0x6a, 0x3b, 0xed, 0xd1, 0xd7, 0x1c, 0xdf, 0xdf, 0x89, 0x88, 0xd7, 0xe1, 0xd5, 0xaf, 0x08, 0x50, 0xad, 0x4f, 0x56, 0x44, 0x03, 0x39, 0x35, 0xe7, 0x4d, 0x95, }; static const unsigned char xdh_wei448_3206_sharedsecret[] = { 0xea, 0xc9, 0x93, 0x28, 0x79, 0x47, 0xde, 0xfb, 0x6b, 0xb8, 0x4c, 0x60, 0x87, 0x13, 0x0d, 0x7b, 0x9f, 0xc4, 0x7e, 0x75, 0xb2, 0xc9, 0x45, 0x52, 0xb8, 0xa0, 0xb0, 0x75, 0xe7, 0x1d, 0x27, 0x06, 0x85, 0x50, 0xa2, 0x4d, 0x31, 0x40, 0xc9, 0x40, 0xbc, 0x86, 0x20, 0x1c, 0xc7, 0x6b, 0x83, 0xe2, 0xba, 0xf2, 0x31, 0xc2, 0x6b, 0x14, 0xab, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3206 = { .name = "xdh_wei448_3206", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3206_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3206_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3206_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 112 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3207 for XDH, tcId is 113 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3207_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_3207_privkey[] = { 0xe0, 0x3c, 0x56, 0xa2, 0x8c, 0xd0, 0x10, 0xfc, 0x8a, 0x1d, 0x86, 0x68, 0x74, 0x7d, 0x24, 0xf0, 0x6e, 0xbc, 0xc2, 0x88, 0x5e, 0xe4, 0x60, 0xa7, 0xdb, 0x14, 0xc1, 0x48, 0x41, 0xe5, 0x81, 0x89, 0x96, 0x16, 0xca, 0x71, 0x8d, 0x42, 0xc0, 0x6c, 0x06, 0xf2, 0xee, 0xdb, 0x2d, 0x7a, 0x23, 0x06, 0x90, 0xb0, 0x01, 0x0b, 0xd6, 0x7e, 0x77, 0x9a, }; static const unsigned char xdh_wei448_3207_sharedsecret[] = { 0xe2, 0x5a, 0x60, 0xb8, 0x52, 0x3f, 0x3e, 0x15, 0x80, 0x09, 0x8a, 0x06, 0x11, 0xee, 0x54, 0x9e, 0x20, 0x1e, 0x5a, 0x70, 0x4e, 0x39, 0x26, 0x3d, 0x06, 0x77, 0x12, 0xfc, 0x47, 0x22, 0x94, 0xc3, 0x78, 0xca, 0x45, 0xf9, 0x76, 0x70, 0x51, 0xea, 0x45, 0xa9, 0x45, 0xa4, 0x85, 0xf5, 0x6c, 0x0a, 0xff, 0x06, 0x38, 0x8e, 0x6f, 0xc1, 0x64, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_3207 = { .name = "xdh_wei448_3207", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3207_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3207_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3207_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 113 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3208 for XDH, tcId is 114 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3208_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3208_privkey[] = { 0x70, 0x19, 0xc5, 0xdd, 0x32, 0x8e, 0xf8, 0x2c, 0xf5, 0x98, 0x49, 0x0d, 0x2c, 0xae, 0xb3, 0xb7, 0x2c, 0xf9, 0x39, 0x33, 0xee, 0xc1, 0xfd, 0x3f, 0xe1, 0xf6, 0x12, 0xb4, 0x3b, 0x5d, 0xdb, 0xc0, 0x11, 0x3f, 0x71, 0x1b, 0x84, 0xd5, 0x12, 0x23, 0xde, 0x93, 0x8f, 0x42, 0xa6, 0x4f, 0x5f, 0x00, 0x20, 0x44, 0x5c, 0x95, 0x14, 0xac, 0xbe, 0xd0, }; static const unsigned char xdh_wei448_3208_sharedsecret[] = { 0x11, 0x3f, 0xc2, 0x8f, 0x3b, 0xa7, 0x19, 0xfc, 0xee, 0xd2, 0x4a, 0x4a, 0x07, 0xaf, 0x7f, 0x24, 0xa9, 0x81, 0xb2, 0x67, 0x5f, 0x36, 0x65, 0x7c, 0x23, 0xfe, 0x92, 0xbb, 0xe0, 0x18, 0x22, 0x9c, 0xb9, 0x14, 0x78, 0x76, 0x7e, 0x7d, 0xba, 0x65, 0x9b, 0x08, 0xd6, 0xc5, 0xdc, 0xf3, 0xd5, 0xed, 0x27, 0xf4, 0xe8, 0xa3, 0x17, 0xfc, 0x84, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_3208 = { .name = "xdh_wei448_3208", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3208_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3208_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3208_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 114 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3209 for XDH, tcId is 115 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3209_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3209_privkey[] = { 0x80, 0xa5, 0xce, 0xa0, 0x6d, 0xb4, 0x30, 0xb1, 0xef, 0x04, 0x53, 0x4c, 0xf7, 0x7b, 0x37, 0x59, 0x3b, 0x40, 0x65, 0x34, 0xfc, 0xc6, 0x64, 0xbd, 0x43, 0xd4, 0xc5, 0x0a, 0x26, 0x12, 0xc6, 0x65, 0x07, 0xd5, 0x34, 0xc8, 0x61, 0x68, 0xd6, 0x94, 0xb4, 0x1c, 0x3d, 0xfc, 0xb5, 0x78, 0x3f, 0xbc, 0x4f, 0xc3, 0xbe, 0xa9, 0x0d, 0x0d, 0x15, 0xed, }; static const unsigned char xdh_wei448_3209_sharedsecret[] = { 0x37, 0x4b, 0xb9, 0x9f, 0x33, 0x9f, 0x10, 0xe1, 0xcf, 0x5c, 0xc5, 0x27, 0xd1, 0x32, 0xfc, 0x0b, 0xdb, 0xf6, 0x57, 0xad, 0x0b, 0x90, 0x0b, 0x04, 0x89, 0x73, 0xd5, 0xdc, 0xcc, 0x69, 0x6c, 0x69, 0xae, 0xf6, 0xb2, 0x58, 0xee, 0x68, 0x5d, 0x36, 0x0d, 0x8f, 0xc2, 0xcd, 0xc9, 0xff, 0xea, 0x4b, 0x87, 0x63, 0x4b, 0x10, 0x6e, 0x6a, 0x2d, 0x14, }; static const wycheproof_xdh_test xdh_wei448_3209 = { .name = "xdh_wei448_3209", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3209_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3209_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3209_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 115 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3210 for XDH, tcId is 116 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3210_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3210_privkey[] = { 0x0c, 0xd9, 0x0e, 0x8e, 0x75, 0xe9, 0xff, 0x33, 0x9b, 0x50, 0x3e, 0xc8, 0x2a, 0xda, 0xef, 0xdd, 0x44, 0xae, 0x5c, 0x85, 0xb6, 0x6f, 0xf4, 0xca, 0x93, 0xae, 0xf7, 0xe8, 0xd7, 0x29, 0x20, 0xe4, 0x70, 0x11, 0x6f, 0x25, 0xe2, 0x0a, 0xe5, 0xec, 0xf2, 0x35, 0xcf, 0x6f, 0x64, 0xab, 0x37, 0x8e, 0xbd, 0xd5, 0x71, 0x0b, 0x87, 0x25, 0xcd, 0x8b, }; static const unsigned char xdh_wei448_3210_sharedsecret[] = { 0xee, 0xa5, 0x6b, 0xb5, 0x1e, 0x98, 0xd2, 0x78, 0x4c, 0xb4, 0x3f, 0x43, 0x35, 0x85, 0x2f, 0xa7, 0x80, 0x4d, 0xc9, 0x75, 0x1f, 0x90, 0x51, 0x3b, 0x8f, 0x2d, 0x60, 0xc8, 0xf8, 0x4c, 0x61, 0xcd, 0xed, 0x28, 0x26, 0x08, 0xb7, 0xd6, 0x42, 0x42, 0x4a, 0x13, 0x10, 0x15, 0x59, 0xd2, 0xc0, 0x40, 0x4d, 0xeb, 0xae, 0x96, 0x59, 0x07, 0x73, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3210 = { .name = "xdh_wei448_3210", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3210_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3210_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3210_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 116 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3211 for XDH, tcId is 117 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3211_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3211_privkey[] = { 0x64, 0x82, 0x61, 0x5f, 0xbe, 0x7d, 0xc4, 0x76, 0xb9, 0x56, 0x04, 0x61, 0xc7, 0xd7, 0xb3, 0x77, 0x77, 0x4b, 0x74, 0x20, 0x42, 0x7b, 0xb1, 0xe2, 0x69, 0x7c, 0xd1, 0xd7, 0x04, 0x1b, 0x7c, 0x6c, 0x42, 0xe4, 0xf8, 0x9e, 0x3b, 0xf9, 0xb3, 0xfc, 0x02, 0x49, 0xbc, 0xd4, 0xf1, 0x8c, 0xfb, 0x50, 0xb5, 0x2b, 0x69, 0xb8, 0x5f, 0x32, 0x22, 0x82, }; static const unsigned char xdh_wei448_3211_sharedsecret[] = { 0x26, 0x07, 0xb8, 0x3d, 0xa4, 0xb7, 0x94, 0x5e, 0xdf, 0x68, 0xc9, 0xc1, 0x89, 0xa6, 0x99, 0x5a, 0xb2, 0xb2, 0xff, 0xdb, 0xdf, 0x33, 0xca, 0x78, 0x36, 0x31, 0x99, 0x89, 0xed, 0x53, 0x2d, 0x19, 0x2e, 0x72, 0xa9, 0x1d, 0xe7, 0x7d, 0xda, 0x49, 0xe3, 0xa9, 0xc6, 0x59, 0x8c, 0xdd, 0xe7, 0x2d, 0x09, 0x61, 0x4d, 0x35, 0xd1, 0x87, 0xb1, 0x64, }; static const wycheproof_xdh_test xdh_wei448_3211 = { .name = "xdh_wei448_3211", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3211_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3211_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3211_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 117 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3212 for XDH, tcId is 118 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3212_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3212_privkey[] = { 0xfc, 0x43, 0x6d, 0x2c, 0xf9, 0x20, 0x8f, 0xba, 0x04, 0x0a, 0x46, 0x81, 0x78, 0x6f, 0x6b, 0xc6, 0x71, 0xa8, 0xe8, 0xdf, 0xcf, 0x29, 0x21, 0x5d, 0x65, 0xc6, 0x99, 0xea, 0x79, 0xf4, 0x49, 0xc9, 0x87, 0x54, 0xa4, 0xf0, 0xd0, 0x3f, 0xa0, 0x84, 0x06, 0x67, 0x14, 0x34, 0xe2, 0xbd, 0xf5, 0x8b, 0x29, 0x0f, 0x7b, 0x86, 0xad, 0xf1, 0xfc, 0xda, }; static const unsigned char xdh_wei448_3212_sharedsecret[] = { 0x37, 0xce, 0x13, 0xff, 0xb8, 0xe9, 0x94, 0xa9, 0x3a, 0xba, 0x40, 0xd0, 0x65, 0x1e, 0x1b, 0x36, 0x68, 0xa4, 0x47, 0x91, 0x9d, 0x30, 0x43, 0x4c, 0x83, 0x23, 0xe9, 0x02, 0xfe, 0xe7, 0xc7, 0x9f, 0x3f, 0xc6, 0x4c, 0x9a, 0xb5, 0x1d, 0x4a, 0xb7, 0x75, 0xed, 0x0e, 0x4e, 0xfc, 0x4e, 0xe4, 0x41, 0x37, 0xe7, 0x52, 0x87, 0x53, 0x3d, 0x0c, 0xad, }; static const wycheproof_xdh_test xdh_wei448_3212 = { .name = "xdh_wei448_3212", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3212_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3212_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3212_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 118 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3213 for XDH, tcId is 119 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3213_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3213_privkey[] = { 0xb0, 0x6b, 0x27, 0xfd, 0x63, 0x9f, 0xdb, 0x97, 0xcc, 0x2d, 0xec, 0x42, 0x26, 0x2a, 0x4c, 0x4a, 0x6c, 0xb9, 0x41, 0xf2, 0x6b, 0xd9, 0x8b, 0xea, 0x7a, 0xf1, 0xe3, 0xe9, 0x78, 0xdc, 0x17, 0xdf, 0x86, 0x07, 0x65, 0x37, 0x14, 0x8d, 0xef, 0xbe, 0x42, 0x68, 0x89, 0xaa, 0x89, 0x8b, 0xf6, 0x62, 0xd8, 0xb8, 0xed, 0x82, 0xfc, 0x49, 0xed, 0xdb, }; static const unsigned char xdh_wei448_3213_sharedsecret[] = { 0x0a, 0xee, 0x21, 0xca, 0x01, 0x39, 0xda, 0xfb, 0xd9, 0x57, 0xd0, 0xa8, 0x06, 0x0a, 0x7f, 0xba, 0x87, 0x25, 0xf5, 0x7f, 0x02, 0xa0, 0xdc, 0x5c, 0xbf, 0xb9, 0x52, 0xe2, 0xc1, 0xe5, 0x3f, 0x4e, 0xca, 0xa0, 0x1a, 0x22, 0x7f, 0xd1, 0xe1, 0xbd, 0xa0, 0x2e, 0x2e, 0xaf, 0x77, 0x77, 0x55, 0x4c, 0x3e, 0xea, 0xbe, 0x86, 0x46, 0x70, 0xa4, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3213 = { .name = "xdh_wei448_3213", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3213_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3213_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3213_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 119 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3214 for XDH, tcId is 120 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3214_peerpubkey[] = { 0x14, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_3214_privkey[] = { 0x98, 0x39, 0xbc, 0x94, 0x16, 0x61, 0xbc, 0xe8, 0x57, 0x65, 0x26, 0xdc, 0x1a, 0xa2, 0x47, 0x3e, 0x68, 0x8b, 0x2e, 0x3e, 0xd9, 0x09, 0xcd, 0x2e, 0x4c, 0xf2, 0x1f, 0x60, 0x9c, 0xc9, 0x46, 0x85, 0x16, 0x72, 0x61, 0x91, 0xcc, 0x5b, 0xa8, 0x7f, 0xaa, 0x7c, 0x83, 0x11, 0xa3, 0xcc, 0x3d, 0xe3, 0x3a, 0x35, 0xd5, 0xdd, 0xdd, 0x04, 0x4d, 0xf5, }; static const unsigned char xdh_wei448_3214_sharedsecret[] = { 0x4f, 0x3e, 0x91, 0x76, 0x98, 0xb3, 0x15, 0x95, 0x67, 0xb4, 0xb5, 0x74, 0xeb, 0xbd, 0xc7, 0xc0, 0xaa, 0x0f, 0x84, 0x02, 0x3d, 0x66, 0xb5, 0xf9, 0x0f, 0x48, 0x80, 0x05, 0xaf, 0x6c, 0xb5, 0x2f, 0x51, 0xfb, 0x5a, 0x1d, 0xac, 0xcd, 0xc1, 0x9a, 0x54, 0xf7, 0x8f, 0xc3, 0x04, 0xf6, 0xe8, 0xbd, 0x8b, 0xa7, 0x54, 0x2b, 0xe5, 0xf2, 0x8b, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_3214 = { .name = "xdh_wei448_3214", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3214_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3214_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3214_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 120 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3215 for XDH, tcId is 121 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3215_peerpubkey[] = { 0x16, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_3215_privkey[] = { 0x1c, 0xb5, 0xc1, 0x6c, 0xbf, 0x08, 0xe0, 0xc2, 0x76, 0x95, 0xb5, 0x65, 0x28, 0x30, 0x05, 0xa3, 0x45, 0xa9, 0x00, 0xa5, 0xb6, 0x48, 0xaf, 0x48, 0xf2, 0xeb, 0x4c, 0x01, 0xb1, 0x85, 0x37, 0x2c, 0xd4, 0xc1, 0x76, 0xd9, 0x69, 0x95, 0x6d, 0xac, 0xae, 0x71, 0x32, 0x92, 0xec, 0x12, 0x43, 0x16, 0x06, 0x2e, 0x59, 0x65, 0xca, 0x7d, 0xb7, 0x8e, }; static const unsigned char xdh_wei448_3215_sharedsecret[] = { 0x13, 0xe9, 0x79, 0x96, 0xfe, 0x6a, 0xd0, 0x7e, 0x56, 0x79, 0x59, 0x63, 0x94, 0x85, 0x6a, 0x7e, 0x5a, 0xa9, 0xad, 0xc3, 0xc9, 0x7d, 0x54, 0xbf, 0x26, 0xff, 0x2d, 0x25, 0xb3, 0x42, 0xc3, 0x00, 0xc0, 0xa6, 0xd3, 0xee, 0x9d, 0x2c, 0xd3, 0xf6, 0x65, 0x2d, 0xdb, 0x77, 0x8f, 0xfb, 0x78, 0x4e, 0xce, 0xdb, 0x25, 0x9b, 0x10, 0x63, 0x24, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3215 = { .name = "xdh_wei448_3215", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3215_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3215_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3215_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 121 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3216 for XDH, tcId is 122 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3216_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, }; static const unsigned char xdh_wei448_3216_privkey[] = { 0xec, 0xd7, 0xf5, 0x43, 0xac, 0x24, 0x82, 0xad, 0xbe, 0x97, 0x5e, 0xd9, 0x50, 0xe5, 0x93, 0x3c, 0x04, 0xc0, 0xdd, 0x19, 0x62, 0x34, 0xc7, 0x60, 0x30, 0x32, 0x5a, 0x32, 0x3b, 0x45, 0xbd, 0xce, 0x02, 0x93, 0x76, 0xfd, 0x84, 0x40, 0xf4, 0x00, 0x5b, 0x60, 0xc0, 0x85, 0x46, 0xc2, 0xad, 0x32, 0x0f, 0x87, 0x70, 0x07, 0xc6, 0x41, 0xb9, 0xfb, }; static const unsigned char xdh_wei448_3216_sharedsecret[] = { 0x72, 0xf6, 0x95, 0x46, 0x6f, 0x28, 0x29, 0x2f, 0xf3, 0x56, 0xda, 0x58, 0x52, 0x94, 0xc9, 0xd1, 0xdc, 0x66, 0xd1, 0xe7, 0x98, 0xcf, 0x73, 0x86, 0xef, 0x9a, 0xb3, 0x18, 0x59, 0x05, 0x24, 0x0c, 0x4a, 0xea, 0xa6, 0x0a, 0xe5, 0xc6, 0x2a, 0xab, 0x28, 0xf2, 0x57, 0x02, 0xa9, 0x19, 0xc1, 0x97, 0x54, 0xbf, 0xe3, 0x5d, 0x66, 0x6e, 0xca, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_3216 = { .name = "xdh_wei448_3216", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3216_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3216_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3216_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 122 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3217 for XDH, tcId is 123 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3217_peerpubkey[] = { 0x8a, 0xfe, 0xc4, 0x8c, 0xad, 0x2b, 0x71, 0xda, 0xd8, 0x7e, 0xe1, 0x22, 0xb7, 0x45, 0xc6, 0xd3, 0x9f, 0x2c, 0x50, 0x8c, 0xb4, 0x49, 0x1f, 0x0c, 0xa1, 0x3a, 0x85, 0x09, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0xca, 0x9a, 0x2e, 0x2b, 0x28, 0xe5, 0xf1, 0x79, 0x8e, 0x9a, 0x52, 0x81, 0x23, 0x9d, 0xed, }; static const unsigned char xdh_wei448_3217_privkey[] = { 0x54, 0xc3, 0xa7, 0x6f, 0x21, 0x16, 0x09, 0x99, 0x68, 0xcc, 0x31, 0x29, 0x1b, 0x36, 0xe5, 0x03, 0xca, 0x3e, 0x77, 0xa1, 0x90, 0x29, 0xe6, 0x0f, 0xcd, 0x06, 0xff, 0xdf, 0x5d, 0xbc, 0x7a, 0x54, 0xa5, 0x2f, 0x98, 0x08, 0x70, 0x7a, 0x39, 0x9e, 0x29, 0x47, 0xe7, 0xba, 0xe8, 0xea, 0xe5, 0x2a, 0xb5, 0x60, 0x74, 0xb4, 0x11, 0x96, 0xd4, 0xf9, }; static const unsigned char xdh_wei448_3217_sharedsecret[] = { 0xae, 0x75, 0x7e, 0xb5, 0x3a, 0xdf, 0xd3, 0x1c, 0xc9, 0x4b, 0x15, 0x33, 0xb3, 0x9d, 0x52, 0xf8, 0xd2, 0x20, 0xac, 0xe0, 0x03, 0xbd, 0x37, 0xcd, 0xe1, 0x00, 0x5c, 0xe0, 0x9a, 0x69, 0xd9, 0x16, 0x87, 0xb2, 0x19, 0xc1, 0x4d, 0xab, 0x9f, 0x3e, 0x0f, 0x8b, 0x89, 0xe8, 0x06, 0x44, 0x81, 0xd0, 0x45, 0x47, 0x20, 0xce, 0x17, 0x40, 0x3b, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3217 = { .name = "xdh_wei448_3217", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3217_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3217_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3217_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 123 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3218 for XDH, tcId is 124 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3218_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3218_privkey[] = { 0xa4, 0x2b, 0xd2, 0x9d, 0xdc, 0x90, 0x7a, 0x46, 0x61, 0x68, 0x7c, 0x7f, 0x48, 0xf2, 0x82, 0x64, 0x0f, 0x8b, 0xdc, 0x6d, 0xf2, 0x5c, 0x35, 0xe7, 0xf0, 0x1d, 0xd3, 0x5e, 0xc9, 0x57, 0x45, 0x57, 0x89, 0x7f, 0xf2, 0x01, 0x95, 0x9f, 0x71, 0x73, 0x86, 0x66, 0xd3, 0x3d, 0x93, 0xc0, 0x98, 0x20, 0x0d, 0x85, 0x52, 0xe2, 0x3e, 0xd2, 0x1e, 0xbf, }; static const unsigned char xdh_wei448_3218_sharedsecret[] = { 0xe3, 0x37, 0xde, 0xb5, 0x5f, 0xdd, 0x51, 0xbc, 0xa3, 0x92, 0x00, 0xa9, 0x7a, 0xa2, 0xbc, 0x1d, 0x2c, 0x22, 0x4f, 0xc4, 0x37, 0x05, 0x45, 0x28, 0x3c, 0x82, 0xd5, 0xc2, 0x42, 0x14, 0x42, 0x54, 0xb4, 0x3b, 0xd2, 0xbc, 0x4d, 0x16, 0x4f, 0xe1, 0x42, 0x14, 0x25, 0x8f, 0x7e, 0x3c, 0xda, 0xe3, 0x18, 0xec, 0x37, 0xb4, 0x6f, 0x47, 0x03, 0x87, }; static const wycheproof_xdh_test xdh_wei448_3218 = { .name = "xdh_wei448_3218", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3218_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3218_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3218_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 124 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3219 for XDH, tcId is 125 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3219_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3219_privkey[] = { 0x8c, 0xe8, 0xdd, 0xcb, 0x93, 0xda, 0xa1, 0x23, 0x81, 0x28, 0x14, 0xdb, 0x4c, 0xae, 0xf1, 0xcd, 0xaf, 0xbc, 0x68, 0x62, 0x4b, 0x56, 0xb9, 0xea, 0x22, 0x7a, 0x66, 0x0b, 0x1e, 0xbe, 0x07, 0xda, 0x6f, 0x9d, 0x3e, 0x8f, 0x12, 0x8b, 0x49, 0xf8, 0x6c, 0xa7, 0x57, 0x60, 0x76, 0xd5, 0x9d, 0xd0, 0xdc, 0x2b, 0x67, 0xfc, 0x10, 0x64, 0x17, 0xa8, }; static const unsigned char xdh_wei448_3219_sharedsecret[] = { 0x8b, 0xd1, 0x1f, 0xa3, 0x89, 0x0a, 0xc9, 0x18, 0xc9, 0x5c, 0x1a, 0xab, 0x51, 0xb2, 0xfd, 0x69, 0xa7, 0xdf, 0x3e, 0x90, 0x37, 0x5c, 0x81, 0x4b, 0x51, 0xf9, 0xe2, 0xef, 0x87, 0x9e, 0x1b, 0x83, 0x34, 0xa0, 0x1d, 0xed, 0x44, 0x06, 0xed, 0x13, 0xf3, 0xac, 0xec, 0xd7, 0x52, 0xf6, 0xd5, 0xc2, 0x41, 0x49, 0xa1, 0x38, 0xb3, 0x67, 0x4c, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3219 = { .name = "xdh_wei448_3219", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3219_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3219_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3219_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 125 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3220 for XDH, tcId is 126 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3220_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3220_privkey[] = { 0x54, 0xe7, 0x8d, 0xf4, 0xea, 0x79, 0xcd, 0x46, 0x56, 0xa6, 0x09, 0x07, 0x56, 0x4a, 0xcb, 0x7f, 0x07, 0x3d, 0x84, 0xf3, 0x38, 0xea, 0xa0, 0x70, 0x75, 0xb3, 0x52, 0xdd, 0x38, 0x97, 0xf2, 0x2b, 0xe0, 0xfb, 0xab, 0xe5, 0x1d, 0x28, 0xf4, 0x01, 0x94, 0x96, 0x1a, 0x64, 0x40, 0xb2, 0x21, 0xa7, 0x87, 0xac, 0xdd, 0x2e, 0xea, 0x81, 0x1b, 0xb1, }; static const unsigned char xdh_wei448_3220_sharedsecret[] = { 0x4d, 0x07, 0x65, 0x58, 0xea, 0x3c, 0xcf, 0xe9, 0xef, 0x92, 0x60, 0x82, 0x92, 0xd3, 0xe1, 0x9e, 0xa9, 0x16, 0x8d, 0x70, 0xde, 0xe6, 0x32, 0x33, 0x7c, 0x72, 0x19, 0x88, 0xa8, 0x93, 0xcb, 0x99, 0xdf, 0x49, 0x4d, 0x38, 0xc4, 0xcc, 0x5d, 0xb9, 0x3c, 0x7b, 0x11, 0x3d, 0x62, 0x59, 0x30, 0xdc, 0xbf, 0xb0, 0xfc, 0x5c, 0xbf, 0xb1, 0xc6, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_3220 = { .name = "xdh_wei448_3220", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3220_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3220_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3220_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 126 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3221 for XDH, tcId is 127 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3221_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3221_privkey[] = { 0xe0, 0xe8, 0xff, 0x04, 0x54, 0x66, 0x78, 0x37, 0x6a, 0xf8, 0xa4, 0xcc, 0xb4, 0x96, 0xa9, 0x6c, 0xa0, 0xc7, 0x31, 0x80, 0x3b, 0xc2, 0xa8, 0xaa, 0x36, 0x00, 0x44, 0x57, 0x6c, 0x70, 0x45, 0x06, 0x8c, 0xb5, 0x78, 0xec, 0xdb, 0x2f, 0xda, 0x4d, 0x1c, 0xec, 0xdc, 0x4a, 0xa1, 0xa0, 0xa4, 0x30, 0xcb, 0xe7, 0x1e, 0x25, 0xa1, 0x76, 0x4c, 0xca, }; static const unsigned char xdh_wei448_3221_sharedsecret[] = { 0x10, 0x76, 0x52, 0xe3, 0x9d, 0x0e, 0xe0, 0xc6, 0x42, 0x1e, 0x60, 0x73, 0xeb, 0xe1, 0xae, 0x70, 0xf2, 0xa0, 0x48, 0x02, 0x6a, 0xfa, 0xb3, 0xfc, 0x1d, 0x62, 0x00, 0x27, 0x65, 0x2f, 0x94, 0xa4, 0xc6, 0xa6, 0xc7, 0x07, 0x6a, 0xe8, 0xc1, 0x51, 0x95, 0x37, 0x68, 0x1e, 0xd1, 0x54, 0x37, 0x35, 0x8c, 0x77, 0xec, 0xa2, 0x9d, 0x9d, 0x02, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3221 = { .name = "xdh_wei448_3221", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3221_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3221_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3221_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 127 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3222 for XDH, tcId is 128 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3222_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3222_privkey[] = { 0xb4, 0x20, 0x92, 0xf1, 0xa6, 0x46, 0xea, 0x58, 0x43, 0xc5, 0xd8, 0x33, 0x84, 0xa0, 0x8b, 0x45, 0x46, 0xae, 0x64, 0x9b, 0x12, 0xaf, 0x6b, 0x02, 0x3e, 0x1c, 0x6e, 0xac, 0x28, 0x0d, 0xaf, 0x10, 0x09, 0x0a, 0x07, 0x26, 0xd4, 0xe7, 0x55, 0x33, 0x55, 0x04, 0x2c, 0xbb, 0xab, 0x98, 0xc5, 0x84, 0xfc, 0x9d, 0xc1, 0x45, 0x89, 0xc3, 0xfe, 0xf4, }; static const unsigned char xdh_wei448_3222_sharedsecret[] = { 0x53, 0xcd, 0xe0, 0xc0, 0x1f, 0x25, 0x22, 0xd3, 0xe7, 0xe2, 0x23, 0xb7, 0x4d, 0x04, 0x15, 0x24, 0x28, 0xe9, 0x49, 0x4d, 0x18, 0xe3, 0xc4, 0xf4, 0x4b, 0xe5, 0x2d, 0x8f, 0x97, 0x1d, 0x29, 0xa4, 0x39, 0x4f, 0x9d, 0x03, 0xbd, 0x2e, 0xb8, 0x4a, 0x66, 0x7e, 0x11, 0x7a, 0x2f, 0x3c, 0x4a, 0x5a, 0x7e, 0x88, 0x4d, 0x45, 0x7f, 0xc7, 0x60, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3222 = { .name = "xdh_wei448_3222", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3222_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3222_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3222_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 128 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3223 for XDH, tcId is 129 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3223_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3223_privkey[] = { 0x90, 0x36, 0x99, 0xfc, 0xf2, 0xd0, 0x73, 0x09, 0xb2, 0xe7, 0x60, 0x56, 0xe2, 0x6e, 0x3b, 0xe4, 0x29, 0x8d, 0x58, 0x69, 0xc6, 0x72, 0xbb, 0x9d, 0x1e, 0xea, 0x80, 0xe6, 0x57, 0xdc, 0x99, 0x5a, 0xc1, 0xc8, 0x1a, 0x39, 0x30, 0xb1, 0x0e, 0x12, 0x4c, 0xc7, 0x76, 0x38, 0xc0, 0x0d, 0xe9, 0x47, 0x52, 0xcb, 0x51, 0x1e, 0xe8, 0x97, 0x22, 0x96, }; static const unsigned char xdh_wei448_3223_sharedsecret[] = { 0x41, 0xca, 0xd2, 0x75, 0x84, 0xa9, 0xe0, 0x0d, 0xbd, 0x39, 0x5c, 0x81, 0x0e, 0x60, 0xfc, 0x41, 0x5c, 0x13, 0xf7, 0x09, 0x5f, 0x90, 0x4f, 0x84, 0x48, 0xa3, 0x36, 0x1f, 0x05, 0x58, 0x02, 0x5a, 0xaa, 0xb3, 0x0e, 0x24, 0x86, 0xc8, 0x0e, 0xd3, 0xe9, 0xb4, 0xa0, 0x2b, 0x85, 0xf4, 0x76, 0x86, 0xd7, 0x00, 0x5d, 0xe8, 0x0b, 0x90, 0xda, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3223 = { .name = "xdh_wei448_3223", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3223_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3223_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3223_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 129 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3224 for XDH, tcId is 130 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3224_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3224_privkey[] = { 0x9c, 0x56, 0x92, 0xf9, 0x24, 0x5d, 0x29, 0xaf, 0x67, 0x24, 0x77, 0xe6, 0x0f, 0x95, 0x75, 0x77, 0xcc, 0xa5, 0xc1, 0xcc, 0x24, 0x73, 0xf7, 0xfa, 0x67, 0xcd, 0x5a, 0x6f, 0x8a, 0xa3, 0xcb, 0xe4, 0x44, 0xdc, 0xdf, 0x65, 0xd5, 0x43, 0x6c, 0x02, 0x46, 0xd6, 0x4d, 0x2c, 0xf2, 0x18, 0x48, 0x4e, 0x97, 0x4c, 0x77, 0xaf, 0x96, 0x8b, 0x5c, 0xd1, }; static const unsigned char xdh_wei448_3224_sharedsecret[] = { 0x2f, 0x07, 0x01, 0x96, 0x00, 0x53, 0x9d, 0x6a, 0x7b, 0x71, 0x59, 0x6b, 0xa9, 0xdc, 0xc9, 0x0e, 0x60, 0xab, 0x2e, 0x2e, 0x8e, 0xfa, 0x32, 0x0a, 0xb6, 0xc8, 0x0d, 0xe2, 0x75, 0x76, 0x97, 0x00, 0x2b, 0x29, 0xe0, 0x2a, 0xa7, 0xd9, 0x16, 0x62, 0xe9, 0x8f, 0x9b, 0xe8, 0x95, 0xa7, 0x85, 0x5c, 0x0e, 0x96, 0xc8, 0x10, 0xc2, 0x94, 0xea, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3224 = { .name = "xdh_wei448_3224", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3224_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3224_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3224_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 130 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3225 for XDH, tcId is 131 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3225_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3225_privkey[] = { 0x58, 0x2b, 0xf6, 0x3e, 0xe5, 0x4d, 0x47, 0xae, 0x55, 0x17, 0xcf, 0x74, 0xfd, 0xfe, 0xd1, 0xd4, 0xbc, 0xd5, 0x44, 0xc9, 0x5e, 0x61, 0xc8, 0xc9, 0x56, 0x05, 0xea, 0x32, 0x3a, 0x4d, 0x18, 0x20, 0xfd, 0xc4, 0x0f, 0xaf, 0xb1, 0xa5, 0xcb, 0xe4, 0xf4, 0xce, 0x1f, 0x89, 0xa9, 0x9f, 0x99, 0xa3, 0x36, 0x19, 0x61, 0xe5, 0xb3, 0x0b, 0xd8, 0x96, }; static const unsigned char xdh_wei448_3225_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3225 = { .name = "xdh_wei448_3225", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3225_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3225_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3225_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 131 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3226 for XDH, tcId is 132 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3226_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3226_privkey[] = { 0x18, 0x68, 0xe9, 0x7d, 0x13, 0x9f, 0xff, 0x37, 0x2e, 0xdb, 0x9a, 0xad, 0xe8, 0x28, 0x79, 0xcb, 0xa6, 0xef, 0xe7, 0x93, 0x4a, 0x45, 0x79, 0x1e, 0x41, 0xd6, 0x1e, 0x7b, 0xb5, 0xe6, 0x7a, 0xb2, 0xcd, 0xad, 0x6a, 0xb8, 0x28, 0x82, 0xc5, 0x7d, 0x34, 0xec, 0x71, 0xe6, 0xa8, 0xd5, 0x56, 0xce, 0x28, 0x09, 0xe7, 0x29, 0x32, 0xea, 0x46, 0x9a, }; static const unsigned char xdh_wei448_3226_sharedsecret[] = { 0x89, 0x6e, 0x8b, 0x82, 0xe5, 0xee, 0x08, 0x3b, 0x6f, 0xaa, 0xf6, 0x1c, 0xcc, 0x6a, 0x79, 0x6f, 0x41, 0x9a, 0x97, 0x8e, 0x33, 0xd6, 0x24, 0x25, 0x71, 0x11, 0x0e, 0xea, 0x5b, 0x54, 0x79, 0x8e, 0x50, 0xc9, 0xa7, 0x8d, 0x4d, 0x4e, 0x88, 0xe5, 0xed, 0xad, 0x7d, 0x18, 0xd6, 0x4b, 0xcf, 0xe9, 0xc4, 0xcd, 0xf6, 0x39, 0x75, 0xce, 0xfd, 0x3c, }; static const wycheproof_xdh_test xdh_wei448_3226 = { .name = "xdh_wei448_3226", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3226_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3226_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3226_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 132 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3227 for XDH, tcId is 133 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3227_peerpubkey[] = { 0x9b, 0x7c, 0xf9, 0xd0, 0x96, 0x84, 0x51, 0xdd, 0x91, 0x41, 0xaa, 0x4e, 0x06, 0xdd, 0x76, 0xf5, 0x3e, 0x54, 0x08, 0x16, 0xad, 0x33, 0x17, 0x63, 0x93, 0x2f, 0x2c, 0xb8, 0x2f, 0x09, 0xbe, 0xcc, 0x47, 0x85, 0xcf, 0x69, 0xe7, 0x3e, 0x41, 0xbd, 0x6c, 0xbf, 0x8d, 0x0f, 0x24, 0x7f, 0x75, 0x87, 0x35, 0x7f, 0x00, 0xd7, 0x8e, 0xb9, 0x09, 0x16, }; static const unsigned char xdh_wei448_3227_privkey[] = { 0xa0, 0xe8, 0x17, 0x9e, 0x76, 0x0e, 0x7c, 0x80, 0x20, 0x62, 0x12, 0x65, 0xe1, 0x50, 0x6f, 0x1e, 0xa4, 0x9c, 0xee, 0x89, 0x06, 0x86, 0x98, 0xf1, 0x53, 0x09, 0x15, 0xaf, 0xf5, 0x14, 0x67, 0xb6, 0x5c, 0x71, 0x99, 0xa3, 0x7b, 0x10, 0x22, 0x25, 0x73, 0x1d, 0xbc, 0xd7, 0x77, 0x2f, 0xdd, 0x5d, 0x22, 0x13, 0x4d, 0x9d, 0xff, 0x38, 0x1a, 0x9a, }; static const unsigned char xdh_wei448_3227_sharedsecret[] = { 0xef, 0x11, 0x12, 0x1d, 0x16, 0x03, 0x9f, 0xab, 0xa9, 0x2d, 0x89, 0x4a, 0x6f, 0xfd, 0x6b, 0x3d, 0xc3, 0x0f, 0x98, 0x59, 0x45, 0xde, 0xd2, 0x0b, 0x0f, 0xd9, 0x7c, 0x85, 0x69, 0x56, 0x20, 0xc3, 0x84, 0xf1, 0xb9, 0x5c, 0xae, 0xf4, 0x1e, 0x69, 0x56, 0x12, 0xfe, 0x0f, 0xd6, 0x44, 0x7b, 0xfb, 0x2b, 0x84, 0x53, 0x38, 0x10, 0xdf, 0x0d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_3227 = { .name = "xdh_wei448_3227", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3227_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3227_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3227_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 133 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3228 for XDH, tcId is 134 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3228_peerpubkey[] = { 0xc4, 0xb7, 0x09, 0x0f, 0x3b, 0x94, 0xf5, 0xc8, 0x9e, 0xc7, 0xd2, 0xdc, 0x46, 0xd8, 0x49, 0xca, 0x68, 0x65, 0xb5, 0x32, 0x0e, 0xec, 0xe2, 0x72, 0xf4, 0x26, 0xd6, 0x10, 0xa5, 0x7e, 0xe5, 0xd2, 0x46, 0xd4, 0xff, 0xa1, 0xc5, 0x92, 0xcf, 0x57, 0x96, 0xfe, 0x9f, 0x9b, 0x66, 0x9f, 0xe5, 0x7d, 0x01, 0xba, 0x31, 0x22, 0xcd, 0xa3, 0x0e, 0x1b, }; static const unsigned char xdh_wei448_3228_privkey[] = { 0x80, 0xfa, 0x57, 0x4c, 0x9b, 0x52, 0xc5, 0x86, 0x9b, 0x4c, 0x0e, 0x0a, 0x6e, 0x00, 0xb1, 0x95, 0x76, 0x1e, 0xd0, 0x06, 0x38, 0x54, 0xa3, 0xb4, 0xd6, 0xa5, 0xb7, 0x05, 0x56, 0x55, 0x6a, 0x17, 0xc8, 0x49, 0xd0, 0xd0, 0x1a, 0x14, 0xff, 0xc6, 0x60, 0x31, 0x3b, 0xa1, 0xa8, 0x6f, 0xf2, 0xbc, 0xe9, 0x6f, 0x62, 0xd6, 0x55, 0x84, 0x9e, 0xba, }; static const unsigned char xdh_wei448_3228_sharedsecret[] = { 0x0c, 0xed, 0x4d, 0xd0, 0xe1, 0x24, 0xb2, 0xd6, 0xa8, 0xb2, 0xcc, 0x84, 0xde, 0xaa, 0xce, 0x4d, 0xec, 0x82, 0x83, 0x6b, 0xa3, 0xc1, 0x54, 0xc6, 0x0b, 0x72, 0x7d, 0x7d, 0x55, 0xb6, 0x82, 0xd0, 0xfd, 0x50, 0x37, 0x83, 0xd1, 0x65, 0xab, 0xde, 0xfd, 0x23, 0x24, 0xe8, 0x54, 0x59, 0x31, 0xd9, 0xc7, 0xf3, 0xab, 0xf8, 0xc8, 0xa2, 0x54, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3228 = { .name = "xdh_wei448_3228", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3228_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3228_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3228_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 134 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3229 for XDH, tcId is 135 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3229_peerpubkey[] = { 0x9a, 0xe0, 0x5c, 0x7f, 0x33, 0x5f, 0xa2, 0x3f, 0xa3, 0x63, 0x58, 0xf8, 0x33, 0xfe, 0x9e, 0x07, 0x4b, 0xc5, 0x52, 0x41, 0x35, 0x81, 0x9a, 0x9a, 0x2f, 0x16, 0x42, 0xd3, 0x91, 0xfb, 0xd7, 0xdc, 0x22, 0x77, 0x8d, 0x46, 0x8c, 0x7e, 0x03, 0xff, 0xd7, 0x2e, 0xd8, 0x78, 0x66, 0x4e, 0x31, 0xe3, 0x29, 0x7a, 0x9a, 0xad, 0x33, 0xfb, 0xc1, 0x7e, }; static const unsigned char xdh_wei448_3229_privkey[] = { 0x34, 0xd6, 0x35, 0xcf, 0xfd, 0x8e, 0x5f, 0x96, 0x8b, 0x91, 0xbb, 0x19, 0x3d, 0x6c, 0x42, 0xa3, 0xae, 0xc6, 0x5b, 0xdf, 0x51, 0x21, 0xf4, 0x2c, 0xa2, 0xec, 0x0d, 0x5a, 0x80, 0xe3, 0xd4, 0xc3, 0x57, 0xda, 0x9f, 0xa4, 0x38, 0x86, 0x7b, 0x55, 0x45, 0x77, 0x69, 0xe1, 0x49, 0x06, 0x70, 0xa1, 0x31, 0x33, 0x84, 0xec, 0xe9, 0xbc, 0x4c, 0xb7, }; static const unsigned char xdh_wei448_3229_sharedsecret[] = { 0x9e, 0xf2, 0x20, 0x30, 0x96, 0xf5, 0x7f, 0xb0, 0x47, 0x25, 0x6c, 0xef, 0x46, 0x30, 0x48, 0x4f, 0x72, 0xba, 0x28, 0x1a, 0xdc, 0xb9, 0x23, 0xca, 0x50, 0xe0, 0x8d, 0x95, 0x6e, 0x80, 0xec, 0xc6, 0xdf, 0xd9, 0x08, 0xee, 0x61, 0x9f, 0xb6, 0x2c, 0x22, 0x48, 0x34, 0xce, 0xb0, 0x1e, 0xe2, 0xb7, 0xc4, 0xd3, 0x56, 0xb8, 0x06, 0xc8, 0xf0, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3229 = { .name = "xdh_wei448_3229", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3229_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3229_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3229_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 135 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3230 for XDH, tcId is 136 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3230_peerpubkey[] = { 0x65, 0x1f, 0xa3, 0x80, 0xcc, 0xa0, 0x5d, 0xc0, 0x5c, 0x9c, 0xa7, 0x07, 0xcc, 0x01, 0x61, 0xf8, 0xb4, 0x3a, 0xad, 0xbe, 0xca, 0x7e, 0x65, 0x65, 0xd0, 0xe9, 0xbd, 0x2c, 0x6d, 0x04, 0x28, 0x23, 0xdd, 0x88, 0x72, 0xb9, 0x73, 0x81, 0xfc, 0x00, 0x28, 0xd1, 0x27, 0x87, 0x99, 0xb1, 0xce, 0x1c, 0xd6, 0x85, 0x65, 0x52, 0xcc, 0x04, 0x3e, 0x81, }; static const unsigned char xdh_wei448_3230_privkey[] = { 0x48, 0xff, 0xe0, 0x4d, 0x62, 0xfc, 0xaf, 0xc6, 0xad, 0xf6, 0x7f, 0x09, 0x8d, 0x9a, 0xe6, 0xa3, 0xd8, 0x08, 0x3e, 0x47, 0x37, 0x6d, 0x6f, 0x7d, 0x92, 0x23, 0xee, 0x35, 0x6b, 0x94, 0x0c, 0x8b, 0x39, 0x38, 0x9b, 0xf4, 0x54, 0x6d, 0x1f, 0x5e, 0x85, 0x14, 0xa7, 0x75, 0xb4, 0x5c, 0x41, 0x21, 0x8b, 0xb8, 0xfa, 0xfa, 0x4c, 0xb3, 0xba, 0xbe, }; static const unsigned char xdh_wei448_3230_sharedsecret[] = { 0x81, 0x2e, 0xca, 0xd3, 0xe5, 0xd7, 0xbc, 0xe3, 0x7d, 0x30, 0xc7, 0xb9, 0x6f, 0xb4, 0xf8, 0xb3, 0x0b, 0x7d, 0x14, 0x16, 0x92, 0x51, 0x6c, 0x2b, 0xb7, 0xb1, 0x8b, 0x78, 0xfc, 0xbe, 0x4f, 0x77, 0x4a, 0x85, 0x00, 0xb2, 0x6d, 0xce, 0x75, 0x36, 0x98, 0x3d, 0xd7, 0x1d, 0x92, 0xa0, 0xe8, 0xbb, 0xd8, 0x5d, 0xd0, 0x30, 0x62, 0x1c, 0x0c, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3230 = { .name = "xdh_wei448_3230", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3230_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3230_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3230_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 136 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3231 for XDH, tcId is 137 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3231_peerpubkey[] = { 0x3b, 0x48, 0xf6, 0xf0, 0xc4, 0x6b, 0x0a, 0x37, 0x61, 0x38, 0x2d, 0x23, 0xb9, 0x27, 0xb6, 0x35, 0x97, 0x9a, 0x4a, 0xcd, 0xf1, 0x13, 0x1d, 0x8d, 0x0b, 0xd9, 0x29, 0xef, 0x59, 0x81, 0x1a, 0x2d, 0xb9, 0x2b, 0x00, 0x5e, 0x3a, 0x6d, 0x30, 0xa8, 0x69, 0x01, 0x60, 0x64, 0x99, 0x60, 0x1a, 0x82, 0xfe, 0x45, 0xce, 0xdd, 0x32, 0x5c, 0xf1, 0xe4, }; static const unsigned char xdh_wei448_3231_privkey[] = { 0x0c, 0xbd, 0xf8, 0x5d, 0x05, 0x38, 0xf6, 0xbe, 0xe7, 0x33, 0x49, 0xe7, 0x78, 0xe1, 0x0f, 0x65, 0x8e, 0xbb, 0x8a, 0x63, 0xa5, 0x94, 0xab, 0x8a, 0x37, 0xae, 0x37, 0xd2, 0x85, 0xb5, 0x96, 0x96, 0xd9, 0x2b, 0x7a, 0x41, 0x28, 0xf7, 0x04, 0x0a, 0x26, 0x64, 0x51, 0xc3, 0x1c, 0x0b, 0xd1, 0x5f, 0x6e, 0xb5, 0x97, 0xaa, 0x33, 0x7b, 0x6b, 0x97, }; static const unsigned char xdh_wei448_3231_sharedsecret[] = { 0xf7, 0xb0, 0xd7, 0x5f, 0x5d, 0xd7, 0x2c, 0xde, 0x92, 0xb7, 0x66, 0x14, 0x77, 0xde, 0xc7, 0x54, 0xed, 0x0c, 0x8d, 0x77, 0x94, 0x75, 0xb6, 0x5e, 0xb0, 0xac, 0x5e, 0x2d, 0x5a, 0x56, 0xd0, 0xfa, 0x06, 0x4a, 0x07, 0x36, 0x19, 0xe9, 0xf2, 0x4c, 0x00, 0x95, 0x3f, 0xfa, 0xc8, 0x7a, 0x3e, 0xd7, 0x3b, 0xbd, 0x45, 0xcb, 0x2d, 0x4c, 0x00, 0xea, }; static const wycheproof_xdh_test xdh_wei448_3231 = { .name = "xdh_wei448_3231", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3231_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3231_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3231_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 137 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3232 for XDH, tcId is 138 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3232_peerpubkey[] = { 0x64, 0x83, 0x06, 0x2f, 0x69, 0x7b, 0xae, 0x22, 0x6e, 0xbe, 0x55, 0xb1, 0xf9, 0x22, 0x89, 0x0a, 0xc1, 0xab, 0xf7, 0xe9, 0x52, 0xcc, 0xe8, 0x9c, 0x6c, 0xd0, 0xd3, 0x47, 0xcf, 0xf6, 0x41, 0x33, 0xb8, 0x7a, 0x30, 0x96, 0x18, 0xc1, 0xbe, 0x42, 0x93, 0x40, 0x72, 0xf0, 0xdb, 0x80, 0x8a, 0x78, 0xca, 0x80, 0xff, 0x28, 0x71, 0x46, 0xf6, 0xe9, }; static const unsigned char xdh_wei448_3232_privkey[] = { 0x34, 0x62, 0x83, 0x92, 0xdd, 0x76, 0x45, 0x81, 0x8b, 0x89, 0x9e, 0x32, 0xe9, 0x8b, 0x13, 0xf7, 0x07, 0x03, 0x8b, 0x94, 0x3f, 0x74, 0x5b, 0xc6, 0x25, 0x2b, 0x8c, 0x4b, 0x2c, 0x9e, 0x62, 0xf8, 0xcb, 0x01, 0x31, 0x02, 0x90, 0xb6, 0x27, 0xf5, 0x52, 0x77, 0x56, 0xc9, 0x43, 0x09, 0x50, 0x37, 0x31, 0xb9, 0x1e, 0xba, 0x64, 0xb7, 0x62, 0xa6, }; static const unsigned char xdh_wei448_3232_sharedsecret[] = { 0xd5, 0x75, 0x5a, 0xf8, 0x02, 0x84, 0xe9, 0x2b, 0x6b, 0x71, 0x8d, 0x02, 0x9e, 0x0e, 0xc9, 0x20, 0x4d, 0x34, 0xa9, 0x17, 0x40, 0x3e, 0xe6, 0x09, 0xc0, 0x06, 0x6f, 0x90, 0x2b, 0x50, 0x97, 0x28, 0xb1, 0x95, 0xfa, 0x4e, 0x84, 0x2f, 0x2b, 0xdc, 0xbd, 0xdc, 0x93, 0x7f, 0xe0, 0xa1, 0x91, 0x4d, 0x58, 0x01, 0x82, 0xae, 0x4c, 0x0a, 0x1c, 0x74, }; static const wycheproof_xdh_test xdh_wei448_3232 = { .name = "xdh_wei448_3232", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3232_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3232_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3232_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 138 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3233 for XDH, tcId is 139 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3233_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3233_privkey[] = { 0xa8, 0x19, 0x12, 0xb4, 0xa4, 0x5a, 0x01, 0x25, 0x5b, 0x3c, 0xa9, 0x10, 0x4c, 0x8e, 0x68, 0x8a, 0x0c, 0x1e, 0x4f, 0x39, 0xf0, 0xc6, 0x3e, 0xd7, 0x7b, 0x84, 0xa6, 0xcc, 0xab, 0xc5, 0x7d, 0x90, 0xc0, 0xb8, 0x59, 0x1a, 0x9c, 0xa2, 0x3b, 0x35, 0x10, 0x41, 0x1e, 0x30, 0xa3, 0x09, 0xb2, 0x81, 0x39, 0x92, 0x99, 0x3f, 0x91, 0x78, 0xe0, 0xa3, }; static const unsigned char xdh_wei448_3233_sharedsecret[] = { 0xa2, 0xda, 0x73, 0x00, 0xf1, 0x95, 0x18, 0x1b, 0x1b, 0x47, 0x6d, 0x12, 0x7b, 0x3b, 0x78, 0xe9, 0xc6, 0xa8, 0xc7, 0x91, 0xd7, 0x6f, 0x40, 0x80, 0x4f, 0x2e, 0x62, 0xb6, 0xbc, 0x8f, 0x9b, 0x68, 0xf2, 0x6a, 0x83, 0xb0, 0x2f, 0x0a, 0xd8, 0xa8, 0x50, 0x59, 0x04, 0x44, 0x1c, 0xe9, 0xd3, 0xfa, 0x4e, 0xc9, 0x92, 0x5f, 0xd1, 0xca, 0x3c, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3233 = { .name = "xdh_wei448_3233", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3233_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3233_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3233_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 139 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3234 for XDH, tcId is 140 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3234_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3234_privkey[] = { 0x04, 0x15, 0x4c, 0xc5, 0x13, 0xb9, 0xb0, 0x44, 0x5a, 0xd4, 0x93, 0x91, 0x0f, 0xb7, 0x5b, 0x26, 0xb2, 0x39, 0x8b, 0xf1, 0xa7, 0xe7, 0x47, 0x1a, 0x30, 0x7f, 0x2b, 0xbd, 0x0f, 0x78, 0xd1, 0x9e, 0xa0, 0x5d, 0x5f, 0xbd, 0x6c, 0xf8, 0x45, 0xf1, 0xc8, 0xa0, 0x3b, 0xb8, 0x30, 0xc1, 0xfc, 0x53, 0x25, 0xe2, 0x48, 0xdd, 0xf5, 0xaa, 0xd4, 0x96, }; static const unsigned char xdh_wei448_3234_sharedsecret[] = { 0xdd, 0x76, 0x45, 0x27, 0xcc, 0x4c, 0x41, 0x3f, 0x3e, 0x03, 0xc4, 0xe8, 0x1c, 0x58, 0x3c, 0xbc, 0xc7, 0x91, 0x92, 0x93, 0xc3, 0xc3, 0x91, 0x01, 0xaa, 0x8c, 0x88, 0x76, 0x77, 0x92, 0x89, 0xb3, 0xc1, 0x42, 0x24, 0xf1, 0x2b, 0xa9, 0x58, 0x69, 0x7d, 0xa6, 0xe2, 0xb3, 0xb0, 0xa1, 0x3f, 0xf0, 0x8e, 0xa3, 0x0b, 0xbc, 0xda, 0xdd, 0x27, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3234 = { .name = "xdh_wei448_3234", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3234_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3234_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3234_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 140 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3235 for XDH, tcId is 141 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3235_peerpubkey[] = { 0xb6, 0x54, 0xb7, 0x67, 0xb0, 0x00, 0xa0, 0x4f, 0x37, 0x8e, 0x46, 0x81, 0x82, 0x4c, 0xd0, 0x1b, 0x1d, 0x60, 0xfb, 0x26, 0x22, 0x57, 0x04, 0x9a, 0xa7, 0x92, 0xd4, 0x52, 0xef, 0x9d, 0x3e, 0x2e, 0x85, 0xca, 0x73, 0x9b, 0x48, 0x93, 0x69, 0x49, 0x12, 0x5c, 0x66, 0x52, 0x31, 0x2e, 0xbb, 0x1c, 0x57, 0x64, 0xe5, 0x9a, 0x34, 0xab, 0x39, 0x5f, }; static const unsigned char xdh_wei448_3235_privkey[] = { 0x64, 0x16, 0x08, 0xb1, 0x8c, 0x38, 0x28, 0x1b, 0x13, 0xbe, 0x02, 0xbd, 0x69, 0x5f, 0xd6, 0x40, 0xfa, 0x68, 0xa0, 0x0b, 0x51, 0xf7, 0x5f, 0x19, 0x5e, 0x98, 0x55, 0xcb, 0xab, 0x92, 0x27, 0x05, 0x73, 0xa5, 0x5e, 0xf9, 0x0f, 0x55, 0xec, 0x7c, 0xb8, 0x65, 0x4f, 0x53, 0xc2, 0x15, 0x90, 0xb6, 0xa7, 0x09, 0x9d, 0xed, 0x7d, 0x1e, 0xae, 0xb7, }; static const unsigned char xdh_wei448_3235_sharedsecret[] = { 0xd5, 0xa1, 0x9d, 0x66, 0x27, 0x94, 0x5a, 0xc4, 0x8d, 0xce, 0x52, 0xa2, 0x7c, 0x9f, 0x8c, 0x75, 0x50, 0xb9, 0x9c, 0xcb, 0x39, 0x59, 0x16, 0xb6, 0xb6, 0x1d, 0x07, 0x6d, 0x53, 0x3e, 0x62, 0xb2, 0x36, 0x06, 0x8e, 0x80, 0x76, 0xa8, 0x15, 0xda, 0x58, 0x47, 0x59, 0x2f, 0x77, 0xc1, 0xfc, 0x13, 0x3a, 0x11, 0xee, 0x90, 0x73, 0x88, 0xbe, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3235 = { .name = "xdh_wei448_3235", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3235_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3235_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3235_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 141 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3236 for XDH, tcId is 142 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3236_peerpubkey[] = { 0xad, 0xbe, 0xcb, 0xd3, 0x8b, 0x69, 0x16, 0x7b, 0x99, 0x5c, 0x0c, 0x7d, 0xa8, 0xf1, 0xfd, 0x1e, 0x9d, 0xca, 0x26, 0x2e, 0xb7, 0x9c, 0x78, 0xc9, 0xab, 0xa1, 0x59, 0xd1, 0xbe, 0x18, 0x6b, 0xba, 0xcd, 0x3b, 0x08, 0xdb, 0x7a, 0xa8, 0xd4, 0x22, 0x70, 0xcd, 0x01, 0x1b, 0x67, 0xc6, 0x66, 0x36, 0x52, 0x8d, 0x6f, 0xf6, 0xf0, 0xf2, 0x97, 0x76, }; static const unsigned char xdh_wei448_3236_privkey[] = { 0xb8, 0xbb, 0xcf, 0x42, 0xea, 0x9c, 0x95, 0xff, 0x90, 0x8d, 0xba, 0x59, 0x8c, 0x96, 0x44, 0x0d, 0xdf, 0x66, 0x49, 0xf8, 0x30, 0xc4, 0xfe, 0x21, 0xf3, 0x1d, 0x0f, 0x45, 0xbc, 0x83, 0x47, 0xe4, 0x81, 0x71, 0xa9, 0x2a, 0x04, 0xd2, 0x19, 0xe4, 0x05, 0x7c, 0x10, 0xdc, 0x74, 0x9d, 0x90, 0x28, 0xfb, 0x5a, 0x55, 0x84, 0xa8, 0x80, 0x3b, 0xbe, }; static const unsigned char xdh_wei448_3236_sharedsecret[] = { 0x2c, 0x9b, 0xb5, 0xa0, 0x3d, 0x9c, 0xc0, 0xec, 0x65, 0xf5, 0x5c, 0x2c, 0x0a, 0x32, 0x79, 0xf4, 0xf7, 0x85, 0xd6, 0xb9, 0x9d, 0x8f, 0xea, 0x6c, 0x80, 0x33, 0xf0, 0xf0, 0xc9, 0xf2, 0xf3, 0xa0, 0xdd, 0xae, 0x1e, 0x09, 0xf5, 0x0a, 0xe7, 0x03, 0x7a, 0x89, 0x31, 0x65, 0x65, 0x0c, 0x5a, 0xb1, 0x5d, 0x20, 0x3f, 0x8d, 0xc2, 0x49, 0x69, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3236 = { .name = "xdh_wei448_3236", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3236_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3236_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3236_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 142 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3237 for XDH, tcId is 143 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3237_peerpubkey[] = { 0xa3, 0xd9, 0xe5, 0x94, 0x6d, 0x7d, 0x7c, 0xd9, 0xda, 0x73, 0x8c, 0xd5, 0x46, 0x53, 0xcd, 0xb3, 0xe7, 0x2f, 0xc6, 0xa3, 0x07, 0x89, 0xe9, 0x0a, 0x3f, 0xc0, 0xff, 0x3d, 0x1f, 0x2b, 0xf9, 0xde, 0x94, 0x1f, 0x17, 0x9a, 0x32, 0x1b, 0x85, 0xe7, 0xc7, 0xf4, 0x3b, 0xaf, 0xd6, 0xeb, 0x26, 0xaa, 0x57, 0x14, 0x33, 0x6f, 0xdc, 0x64, 0x63, 0x12, }; static const unsigned char xdh_wei448_3237_privkey[] = { 0xe4, 0xf0, 0xb2, 0x95, 0xc3, 0xe0, 0xad, 0x3c, 0xd6, 0x43, 0x92, 0x9c, 0x34, 0x0a, 0xd2, 0x9d, 0x36, 0x89, 0x70, 0xe2, 0xdb, 0x1e, 0xa2, 0x51, 0x7b, 0xfe, 0x43, 0xf1, 0x12, 0xd8, 0x2b, 0xce, 0x54, 0xbf, 0xe1, 0x61, 0x38, 0x35, 0x55, 0x45, 0x5b, 0xd2, 0xe2, 0x0d, 0x8b, 0x2c, 0x0b, 0xb1, 0x87, 0xd0, 0xdc, 0x11, 0xa7, 0x0c, 0x7b, 0xab, }; static const unsigned char xdh_wei448_3237_sharedsecret[] = { 0x71, 0xff, 0xb6, 0x11, 0x9f, 0x50, 0xb5, 0x97, 0x97, 0x6c, 0x4e, 0xdd, 0x86, 0xd6, 0xfc, 0xd1, 0x86, 0x8e, 0xfd, 0x0a, 0xf6, 0xda, 0x57, 0xe5, 0xa6, 0x4f, 0x0e, 0xac, 0x2c, 0x5a, 0x01, 0x1b, 0x54, 0x3b, 0x9b, 0x52, 0xc7, 0x84, 0xfa, 0x4e, 0x73, 0x99, 0x43, 0x7c, 0x81, 0x40, 0xa7, 0xfa, 0x68, 0x8e, 0x5a, 0xfe, 0xe5, 0xaa, 0xf7, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3237 = { .name = "xdh_wei448_3237", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3237_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3237_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3237_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 143 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3238 for XDH, tcId is 144 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3238_peerpubkey[] = { 0x54, 0x3f, 0x1c, 0x98, 0x13, 0xfb, 0xb1, 0xd8, 0xc2, 0x82, 0xfd, 0x2d, 0xb8, 0xc1, 0x9d, 0x3f, 0x11, 0x97, 0x3e, 0x6d, 0x28, 0x81, 0x30, 0x7d, 0x4b, 0xf0, 0x0f, 0x9d, 0xe7, 0xdd, 0xab, 0xf5, 0x50, 0xea, 0x00, 0x51, 0xb4, 0xe0, 0x3d, 0x47, 0x20, 0x60, 0x58, 0xa6, 0xdd, 0x24, 0x14, 0x88, 0x4b, 0x19, 0x49, 0x64, 0x13, 0x0c, 0xed, 0x35, }; static const unsigned char xdh_wei448_3238_privkey[] = { 0xb0, 0xa7, 0x8d, 0xbe, 0xd2, 0xbf, 0x1a, 0x9e, 0xf2, 0x3b, 0x5d, 0x69, 0xc0, 0x6a, 0x95, 0xb9, 0x31, 0x92, 0x57, 0x7a, 0x58, 0x1f, 0xa9, 0x59, 0x36, 0xa3, 0x6d, 0x65, 0x86, 0xcf, 0x22, 0x69, 0x95, 0xd8, 0x3e, 0xe7, 0x4c, 0xd2, 0x82, 0x56, 0xb1, 0x6a, 0xc4, 0x43, 0xa5, 0x52, 0x45, 0x9f, 0x64, 0x88, 0x1b, 0xc0, 0x47, 0xbd, 0x89, 0x89, }; static const unsigned char xdh_wei448_3238_sharedsecret[] = { 0xd5, 0x23, 0x44, 0x92, 0xc6, 0x7b, 0xd9, 0xf1, 0xf9, 0x91, 0xbe, 0x23, 0x71, 0x90, 0x7c, 0x09, 0x5a, 0x0d, 0x0b, 0xe8, 0xe7, 0x98, 0x8b, 0x31, 0x36, 0xcb, 0xdb, 0xcc, 0x50, 0x0e, 0x5c, 0xaa, 0x24, 0xfb, 0x0f, 0x26, 0xc7, 0x77, 0xcc, 0xe6, 0x4d, 0xd1, 0x43, 0xf4, 0x62, 0xb8, 0x4b, 0xf4, 0xc7, 0x4c, 0x6b, 0xce, 0x8f, 0xd8, 0x69, 0x47, }; static const wycheproof_xdh_test xdh_wei448_3238 = { .name = "xdh_wei448_3238", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3238_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3238_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3238_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 144 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3239 for XDH, tcId is 145 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3239_peerpubkey[] = { 0x60, 0x5c, 0x4f, 0x65, 0xab, 0x0e, 0xe2, 0xa1, 0x5e, 0x42, 0xa7, 0xf3, 0x02, 0xa7, 0x80, 0x43, 0x41, 0x64, 0xaf, 0x55, 0x89, 0xec, 0xa1, 0xae, 0x0a, 0xd7, 0x82, 0xd9, 0x23, 0x29, 0xc5, 0x9d, 0x0f, 0xfa, 0xd0, 0x43, 0xa2, 0x0d, 0x62, 0x2b, 0x9f, 0x72, 0xe7, 0xb9, 0xa1, 0x81, 0xaf, 0xad, 0xac, 0xb6, 0xf2, 0x19, 0x4d, 0xcb, 0xe2, 0xae, }; static const unsigned char xdh_wei448_3239_privkey[] = { 0x34, 0x9f, 0xa5, 0xb5, 0x42, 0x3f, 0x3e, 0x57, 0xf2, 0x7d, 0x10, 0xd7, 0xea, 0xaa, 0xe5, 0x49, 0x06, 0x30, 0xbe, 0xaf, 0x47, 0x22, 0x66, 0x20, 0xe7, 0x0b, 0x5b, 0xa5, 0x6b, 0xd2, 0x93, 0x07, 0x70, 0xa8, 0x2e, 0x96, 0x20, 0xd2, 0x10, 0x81, 0xd4, 0x7e, 0x58, 0xfb, 0x31, 0xce, 0x5c, 0x67, 0x4f, 0xb9, 0x9f, 0x9d, 0x8f, 0x95, 0xa2, 0x89, }; static const unsigned char xdh_wei448_3239_sharedsecret[] = { 0xaa, 0xb5, 0xa5, 0x19, 0x24, 0x2a, 0x0a, 0x8b, 0x1b, 0x3e, 0x62, 0x28, 0x34, 0x36, 0xd5, 0xae, 0x46, 0x35, 0x1b, 0x4f, 0x29, 0xff, 0x97, 0x55, 0x04, 0x4e, 0xb8, 0xe0, 0xff, 0x1e, 0xa3, 0x33, 0x46, 0x24, 0xab, 0x01, 0xcf, 0x5e, 0x39, 0xa3, 0x78, 0x38, 0x24, 0xf0, 0xb7, 0xd3, 0xcc, 0xc2, 0xe7, 0x10, 0x6d, 0x4c, 0xe6, 0xc6, 0x72, 0x62, }; static const wycheproof_xdh_test xdh_wei448_3239 = { .name = "xdh_wei448_3239", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3239_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3239_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3239_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 145 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3240 for XDH, tcId is 146 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3240_peerpubkey[] = { 0x3c, 0xd6, 0x73, 0x9f, 0x26, 0x06, 0x7e, 0x7e, 0x9f, 0xfc, 0x51, 0xaf, 0xc3, 0xb9, 0x29, 0xf7, 0x02, 0x62, 0x2f, 0x7b, 0xe3, 0xd1, 0x7b, 0x58, 0xee, 0xb1, 0x0c, 0x12, 0xb4, 0x02, 0xd2, 0xdd, 0xe3, 0xe4, 0xfa, 0x56, 0xae, 0xa6, 0x77, 0x98, 0x93, 0x31, 0xdd, 0xde, 0xb1, 0x2c, 0xf2, 0xf0, 0xa1, 0x45, 0x8b, 0x3e, 0x0e, 0xb8, 0x24, 0xb4, }; static const unsigned char xdh_wei448_3240_privkey[] = { 0x84, 0xc7, 0xba, 0xd5, 0x9e, 0x33, 0x2e, 0x1d, 0xab, 0x8e, 0x0d, 0x58, 0xa6, 0x4d, 0xef, 0xf8, 0x94, 0xf2, 0x4c, 0x04, 0x2c, 0x13, 0xb1, 0xee, 0xe6, 0x50, 0x72, 0x11, 0x85, 0xe5, 0x9d, 0xa3, 0x3f, 0x4f, 0x27, 0xa2, 0x9d, 0x70, 0xfa, 0x14, 0x82, 0xdb, 0x32, 0xf6, 0xc9, 0xe9, 0x98, 0xa9, 0xce, 0x4d, 0xad, 0x96, 0x42, 0x03, 0x26, 0x98, }; static const unsigned char xdh_wei448_3240_sharedsecret[] = { 0x6f, 0x53, 0x8d, 0x45, 0xbd, 0xb7, 0xbd, 0x7e, 0x46, 0xae, 0x38, 0x17, 0x3c, 0xf7, 0x6f, 0xbe, 0xee, 0xd7, 0xfd, 0x4a, 0x51, 0x7d, 0x9f, 0x68, 0xd7, 0xe4, 0xb1, 0xa3, 0x8d, 0x9b, 0x7b, 0x7c, 0x14, 0xd9, 0x1f, 0xa7, 0xed, 0xc5, 0x45, 0x2f, 0x01, 0x7a, 0x33, 0x95, 0x9f, 0x66, 0x8b, 0x9e, 0x04, 0x41, 0x32, 0xc3, 0xb0, 0x38, 0x13, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_3240 = { .name = "xdh_wei448_3240", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3240_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3240_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3240_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 146 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3241 for XDH, tcId is 147 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3241_peerpubkey[] = { 0xb3, 0x27, 0x87, 0x93, 0x0b, 0x31, 0x1c, 0xa4, 0xc4, 0xbc, 0x08, 0x3f, 0xc7, 0xda, 0x3f, 0x87, 0x90, 0x21, 0xa6, 0x90, 0xd2, 0x8c, 0x3b, 0xa8, 0x03, 0x43, 0x0f, 0xa9, 0x3b, 0x7a, 0x7a, 0xf6, 0x54, 0x3e, 0xd6, 0xef, 0x03, 0x25, 0x5c, 0x46, 0x6d, 0x20, 0x3c, 0x00, 0x4d, 0x52, 0x49, 0x27, 0x9d, 0x0c, 0xc4, 0x8c, 0x1e, 0xea, 0x25, 0xdc, }; static const unsigned char xdh_wei448_3241_privkey[] = { 0x70, 0x92, 0xf5, 0xef, 0x4e, 0x90, 0xe0, 0x4b, 0x18, 0xdb, 0x8a, 0xbb, 0xc5, 0x7a, 0x96, 0xaa, 0xb4, 0x97, 0x76, 0xfa, 0x89, 0x79, 0x32, 0x1d, 0x4f, 0xc3, 0xce, 0xc5, 0x64, 0x88, 0x2a, 0xc6, 0x4d, 0x2f, 0x8e, 0xcf, 0xa1, 0x81, 0xe7, 0x0b, 0xd1, 0xca, 0xe7, 0x6b, 0xf5, 0xec, 0xc8, 0x9f, 0x61, 0xd4, 0xda, 0x80, 0xa2, 0x58, 0x0e, 0xb6, }; static const unsigned char xdh_wei448_3241_sharedsecret[] = { 0x3c, 0x8d, 0xa7, 0x1a, 0x00, 0x22, 0x1b, 0x9f, 0x77, 0x98, 0xc4, 0xd1, 0xf9, 0xe5, 0xec, 0x36, 0x6a, 0x3d, 0x8c, 0x38, 0x58, 0xec, 0xa0, 0xc4, 0x69, 0x94, 0x55, 0x86, 0xbe, 0x10, 0x11, 0x27, 0x26, 0x57, 0x8d, 0x67, 0xab, 0xbf, 0xf2, 0xb5, 0x97, 0xa1, 0x12, 0x53, 0x1c, 0x36, 0x1d, 0x09, 0x96, 0x51, 0x05, 0xda, 0xb2, 0x46, 0xab, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_3241 = { .name = "xdh_wei448_3241", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3241_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3241_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3241_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 147 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3242 for XDH, tcId is 148 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3242_peerpubkey[] = { 0xc4, 0xcb, 0x77, 0x0d, 0xe1, 0xc5, 0x21, 0xa3, 0x43, 0xdf, 0x91, 0x72, 0xf9, 0xa5, 0xb9, 0x28, 0x1d, 0xf0, 0x6a, 0xf7, 0xf6, 0x1a, 0xf9, 0xea, 0x12, 0x40, 0x8d, 0xfe, 0xad, 0x1d, 0xcc, 0x6c, 0x16, 0x9a, 0x2b, 0xda, 0x16, 0x5d, 0xd0, 0x5a, 0x73, 0x67, 0x9a, 0xa1, 0x4d, 0x05, 0x8f, 0x4f, 0xcb, 0x14, 0xef, 0xac, 0x1e, 0x58, 0x04, 0xff, }; static const unsigned char xdh_wei448_3242_privkey[] = { 0x48, 0xf4, 0x5b, 0xef, 0x6b, 0x16, 0x6f, 0xdd, 0x97, 0x10, 0xe8, 0xe7, 0xde, 0x6c, 0xb9, 0x42, 0x28, 0xfe, 0x09, 0xd9, 0x67, 0xaf, 0x4e, 0xcd, 0xff, 0x92, 0x72, 0x69, 0x5b, 0xb9, 0x90, 0x13, 0xb0, 0x50, 0xbb, 0x35, 0x4f, 0x50, 0xa5, 0xa6, 0x0e, 0xd2, 0x81, 0xc3, 0x04, 0xe6, 0xfb, 0x02, 0xca, 0xde, 0x2f, 0xd4, 0x18, 0xdd, 0xf3, 0x99, }; static const unsigned char xdh_wei448_3242_sharedsecret[] = { 0xd4, 0x3f, 0x64, 0x21, 0xbd, 0x46, 0x20, 0xf4, 0x02, 0xe5, 0x5f, 0x57, 0xa9, 0xdb, 0x4c, 0x5e, 0x9c, 0x47, 0x9c, 0x31, 0x73, 0xa5, 0x75, 0xf9, 0x34, 0x42, 0xe5, 0x85, 0x29, 0xa7, 0x6a, 0xc3, 0xbd, 0x5d, 0xfc, 0xe1, 0x5a, 0x2c, 0xc0, 0xc1, 0x57, 0x66, 0x11, 0x6c, 0x99, 0xe9, 0xe2, 0xbe, 0x8c, 0x5b, 0x8a, 0x12, 0x56, 0x66, 0x27, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3242 = { .name = "xdh_wei448_3242", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3242_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3242_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3242_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 148 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3243 for XDH, tcId is 149 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3243_peerpubkey[] = { 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_3243_privkey[] = { 0x00, 0xab, 0x5a, 0x77, 0x83, 0x4d, 0x28, 0x0d, 0xaf, 0x5f, 0x95, 0x6a, 0xb2, 0x49, 0xd0, 0xe3, 0x45, 0x4e, 0x6c, 0x26, 0x02, 0x4e, 0x3f, 0x31, 0xeb, 0x0d, 0xd8, 0xdf, 0x01, 0x84, 0x85, 0x40, 0x7b, 0x88, 0xeb, 0xd8, 0x16, 0x38, 0xbd, 0x45, 0x71, 0xbd, 0x24, 0xf2, 0x53, 0x90, 0xeb, 0x35, 0x8e, 0x83, 0x6f, 0xba, 0xa8, 0xb7, 0xba, 0x95, }; static const unsigned char xdh_wei448_3243_sharedsecret[] = { 0x7f, 0x15, 0x13, 0xc0, 0x3a, 0x51, 0xb1, 0x5c, 0x8a, 0xa1, 0x7c, 0x0b, 0xac, 0x4a, 0x46, 0xd5, 0xc2, 0x76, 0xf4, 0xf9, 0x3f, 0x63, 0x3f, 0x75, 0x0d, 0x60, 0x86, 0x61, 0x49, 0x33, 0x15, 0x1e, 0x03, 0xf4, 0xef, 0x2b, 0x77, 0x2f, 0x9a, 0x39, 0x48, 0x0b, 0x2e, 0x83, 0xd6, 0x82, 0xd7, 0x66, 0x8e, 0xfd, 0x20, 0x1e, 0x13, 0x69, 0xd9, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3243 = { .name = "xdh_wei448_3243", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3243_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3243_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3243_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 149 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3244 for XDH, tcId is 150 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3244_peerpubkey[] = { 0x9e, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_3244_privkey[] = { 0x54, 0x11, 0x14, 0xfb, 0xfc, 0x2e, 0xb4, 0x7e, 0x94, 0x2c, 0xbc, 0xb4, 0x89, 0x2f, 0xd8, 0xf9, 0xdd, 0xeb, 0x5c, 0xb6, 0x43, 0xe1, 0x9f, 0x89, 0xd2, 0xfb, 0x77, 0xd4, 0x5f, 0x0c, 0x0d, 0x5a, 0x8a, 0x48, 0xf7, 0xc4, 0x1b, 0xd8, 0xd9, 0xbe, 0xf0, 0xdf, 0x8d, 0xbc, 0xa9, 0x3e, 0x4f, 0xd1, 0xe8, 0x7c, 0x62, 0xa4, 0x93, 0x8f, 0x25, 0x92, }; static const unsigned char xdh_wei448_3244_sharedsecret[] = { 0x36, 0xe7, 0x73, 0xe3, 0xa1, 0x8d, 0xba, 0xd7, 0x66, 0x49, 0xad, 0x5e, 0xa8, 0xa4, 0x12, 0x0d, 0xca, 0xb9, 0xb2, 0x3e, 0xbc, 0xe9, 0x95, 0x14, 0x88, 0x7c, 0xa1, 0x92, 0xe5, 0xf7, 0x40, 0xed, 0x4b, 0xd2, 0x78, 0xf6, 0xcb, 0x89, 0xf8, 0x2c, 0xf0, 0x39, 0xda, 0x69, 0xa3, 0x7f, 0xd1, 0x53, 0x21, 0x25, 0x20, 0x48, 0x85, 0xff, 0x56, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_3244 = { .name = "xdh_wei448_3244", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3244_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3244_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3244_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 150 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3245 for XDH, tcId is 151 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3245_peerpubkey[] = { 0xb5, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_3245_privkey[] = { 0x08, 0xe4, 0x13, 0x9f, 0xbe, 0x13, 0x7f, 0xa0, 0x4c, 0xd8, 0x62, 0x23, 0x33, 0x4a, 0x9e, 0x4b, 0xf1, 0xa3, 0xc9, 0x0c, 0x3c, 0xc7, 0x05, 0x66, 0x81, 0xdb, 0xdb, 0x04, 0xce, 0xc4, 0x28, 0x58, 0x2e, 0x5e, 0x63, 0xc3, 0x70, 0x5f, 0xd5, 0x1d, 0xe4, 0x8b, 0xe2, 0x8b, 0xf9, 0x63, 0x67, 0x73, 0x92, 0x83, 0x39, 0xe8, 0x76, 0xe4, 0xdd, 0xaa, }; static const unsigned char xdh_wei448_3245_sharedsecret[] = { 0x2c, 0x4a, 0xaa, 0xec, 0x96, 0x6c, 0xa0, 0xb0, 0xb4, 0xe0, 0x00, 0xe3, 0xf1, 0xb2, 0x3d, 0xbe, 0xfb, 0xd8, 0x6a, 0xa7, 0x76, 0x3d, 0x66, 0x96, 0x8a, 0x39, 0x36, 0x2a, 0xea, 0x4b, 0x33, 0xe0, 0x41, 0xc5, 0x10, 0xe4, 0xab, 0xcf, 0x21, 0xf1, 0xec, 0x6b, 0x92, 0x7a, 0xed, 0x30, 0x11, 0xa6, 0x0d, 0x54, 0xb6, 0x27, 0xc8, 0x83, 0xfa, 0xb5, }; static const wycheproof_xdh_test xdh_wei448_3245 = { .name = "xdh_wei448_3245", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3245_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3245_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3245_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 151 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3246 for XDH, tcId is 152 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3246_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3246_privkey[] = { 0x70, 0x0a, 0x99, 0x85, 0x56, 0x91, 0x33, 0xa0, 0x02, 0x59, 0x1e, 0x4d, 0x66, 0x3a, 0x2a, 0x9b, 0xd5, 0x15, 0x8c, 0xc1, 0x21, 0xd7, 0xd8, 0x79, 0x3e, 0x6a, 0x2d, 0x63, 0x15, 0xa8, 0xf2, 0xb8, 0x60, 0x8d, 0x23, 0x25, 0x47, 0x81, 0xb7, 0xbd, 0x1c, 0x89, 0x82, 0x31, 0xec, 0xde, 0x23, 0x38, 0x80, 0x85, 0x88, 0xf7, 0xe8, 0x46, 0x7a, 0x92, }; static const unsigned char xdh_wei448_3246_sharedsecret[] = { 0x82, 0x59, 0x7f, 0x64, 0x57, 0x0e, 0x5e, 0xab, 0x95, 0xd2, 0x5a, 0xb8, 0x1a, 0xcd, 0xf0, 0x65, 0x1c, 0x9c, 0x6a, 0x6c, 0x81, 0x5f, 0x09, 0x31, 0xf5, 0x12, 0x31, 0x2a, 0x89, 0x6a, 0xfc, 0x85, 0xf8, 0x08, 0xd8, 0x3c, 0xed, 0x09, 0x9b, 0xfd, 0xb9, 0x68, 0x96, 0x99, 0x9e, 0x5f, 0xbd, 0x13, 0x9d, 0xa0, 0xa0, 0x79, 0x69, 0xf1, 0x90, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3246 = { .name = "xdh_wei448_3246", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3246_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3246_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3246_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 152 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3247 for XDH, tcId is 153 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3247_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3247_privkey[] = { 0x44, 0x28, 0x85, 0x1a, 0xf5, 0x97, 0x31, 0xaa, 0xdd, 0x9c, 0xaf, 0x1b, 0x28, 0xc3, 0x4b, 0x55, 0x76, 0xfa, 0xe1, 0x55, 0x76, 0x2c, 0xdb, 0x15, 0x63, 0x05, 0xa8, 0xfc, 0xd5, 0xc5, 0xb6, 0x4b, 0x08, 0x24, 0x9d, 0x4c, 0x40, 0x0a, 0xd1, 0x00, 0xd6, 0x4a, 0x9f, 0x4c, 0xf9, 0x64, 0x57, 0x17, 0x30, 0x63, 0x55, 0x77, 0x20, 0x95, 0x36, 0x81, }; static const unsigned char xdh_wei448_3247_sharedsecret[] = { 0xbe, 0x34, 0x52, 0x6d, 0xe6, 0xc5, 0xbf, 0x2c, 0xf3, 0x54, 0x22, 0xc9, 0x1b, 0xe6, 0xb9, 0xe6, 0xb4, 0x16, 0x51, 0x08, 0x1c, 0x56, 0x40, 0xb5, 0xf1, 0x82, 0x44, 0x69, 0xb8, 0x2d, 0x0f, 0x29, 0x6a, 0xfa, 0x5d, 0xec, 0x09, 0x76, 0x8c, 0xcf, 0x0d, 0x6a, 0x37, 0xc3, 0xe7, 0x02, 0x52, 0x26, 0xcc, 0x4a, 0x57, 0x21, 0x1b, 0xed, 0x4e, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_3247 = { .name = "xdh_wei448_3247", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3247_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3247_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3247_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 153 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3248 for XDH, tcId is 154 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3248_peerpubkey[] = { 0x49, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_3248_privkey[] = { 0x54, 0xec, 0x25, 0x46, 0x9d, 0x62, 0xa1, 0xe4, 0xdd, 0x19, 0x52, 0x16, 0x21, 0x29, 0xf8, 0x67, 0xf9, 0x82, 0x2b, 0x16, 0x1f, 0x40, 0x13, 0xf5, 0x8a, 0xba, 0x62, 0x3f, 0x88, 0x46, 0x4b, 0xf8, 0x92, 0xbd, 0xa2, 0x9a, 0x1f, 0xf9, 0xe5, 0xf6, 0x7b, 0x10, 0xc4, 0x4c, 0xda, 0x0d, 0xab, 0xf0, 0xdc, 0xcb, 0x28, 0x4c, 0x2a, 0x77, 0xf8, 0xad, }; static const unsigned char xdh_wei448_3248_sharedsecret[] = { 0xd7, 0xcb, 0x9f, 0xdb, 0xf3, 0x20, 0x04, 0x45, 0x39, 0xd4, 0x6c, 0x7d, 0xbc, 0xfe, 0xdd, 0x72, 0x37, 0x28, 0xe3, 0xe1, 0xab, 0x38, 0x5d, 0x44, 0x2b, 0x52, 0xaa, 0x7d, 0xfe, 0x4c, 0x13, 0x69, 0x78, 0x27, 0xa2, 0xb8, 0xba, 0x88, 0x06, 0xa9, 0xb1, 0xaf, 0x86, 0xf0, 0x53, 0xe9, 0x0e, 0x46, 0x8e, 0x74, 0x62, 0xf6, 0xc6, 0x69, 0x9e, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3248 = { .name = "xdh_wei448_3248", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3248_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3248_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3248_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 154 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3249 for XDH, tcId is 155 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3249_peerpubkey[] = { 0x60, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_3249_privkey[] = { 0xc4, 0x8c, 0x97, 0xb1, 0x35, 0xcb, 0x79, 0xa7, 0x30, 0xc7, 0x4d, 0x0e, 0x3a, 0xff, 0xc6, 0x3b, 0x88, 0x47, 0x08, 0x4c, 0x59, 0x18, 0x6d, 0x4a, 0x03, 0x69, 0x02, 0xbe, 0x66, 0xc2, 0x27, 0xe5, 0xb3, 0xec, 0x86, 0xdc, 0x16, 0x85, 0x0b, 0x99, 0xec, 0x33, 0x4e, 0xcf, 0x10, 0x1a, 0x9d, 0xe3, 0x48, 0x55, 0x7f, 0x8d, 0x43, 0xd0, 0xf2, 0x8c, }; static const unsigned char xdh_wei448_3249_sharedsecret[] = { 0x85, 0x55, 0x2f, 0xb2, 0x9c, 0xa8, 0x96, 0xe8, 0xfc, 0xb5, 0x42, 0x18, 0x3c, 0xc5, 0x34, 0x3b, 0xf8, 0x91, 0x84, 0xd9, 0xc2, 0x1d, 0x55, 0xe7, 0xa3, 0xf9, 0xe4, 0x52, 0x03, 0xb2, 0x66, 0xf5, 0xcc, 0xef, 0xc6, 0x1c, 0x4f, 0x82, 0x17, 0x8a, 0xa7, 0x39, 0x88, 0xc1, 0x94, 0x8f, 0x11, 0x2a, 0x3c, 0xfb, 0x0a, 0x21, 0xad, 0xe9, 0x4b, 0xde, }; static const wycheproof_xdh_test xdh_wei448_3249 = { .name = "xdh_wei448_3249", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3249_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3249_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3249_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 155 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3250 for XDH, tcId is 156 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3250_peerpubkey[] = { 0xc9, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_3250_privkey[] = { 0x50, 0x8c, 0x89, 0x13, 0x70, 0xa1, 0x1f, 0x70, 0xce, 0x41, 0xb0, 0x41, 0x3b, 0x2d, 0xfc, 0x58, 0x8b, 0x1a, 0x65, 0x2a, 0x22, 0xc0, 0x99, 0x6e, 0xc3, 0x19, 0xbc, 0x11, 0x16, 0x94, 0xba, 0xf5, 0xd3, 0x40, 0xf8, 0x9e, 0x68, 0x5f, 0x63, 0x5f, 0x4b, 0xdb, 0xd3, 0xb2, 0x93, 0x7e, 0x0d, 0x1a, 0x5a, 0x59, 0x0e, 0x4e, 0xcb, 0x02, 0x7d, 0xab, }; static const unsigned char xdh_wei448_3250_sharedsecret[] = { 0x8a, 0xf2, 0x24, 0x24, 0x98, 0x1f, 0x8f, 0x2a, 0x1b, 0x9c, 0xc2, 0x8d, 0x74, 0x83, 0x30, 0xa7, 0xb6, 0xa7, 0x67, 0x51, 0x66, 0x21, 0x25, 0x23, 0x38, 0x6f, 0x35, 0x9a, 0x50, 0x3b, 0xbd, 0xf3, 0x88, 0x46, 0x57, 0x3a, 0xdd, 0xfe, 0xfb, 0x84, 0x14, 0x89, 0xce, 0x02, 0xb8, 0xb1, 0x69, 0x84, 0x42, 0xd2, 0xfd, 0xc3, 0x87, 0x40, 0xe3, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_3250 = { .name = "xdh_wei448_3250", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3250_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3250_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3250_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 156 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3251 for XDH, tcId is 157 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3251_peerpubkey[] = { 0x36, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_3251_privkey[] = { 0xec, 0x71, 0x40, 0x02, 0x51, 0x2a, 0xa1, 0x6a, 0x46, 0xd0, 0x0d, 0xb0, 0x6d, 0x41, 0xce, 0xd2, 0x30, 0xac, 0xe2, 0xaf, 0xf1, 0x39, 0x23, 0x09, 0x2b, 0xaf, 0x0f, 0x7e, 0xef, 0x5b, 0xff, 0x83, 0x43, 0xc9, 0xa3, 0x22, 0x59, 0x56, 0x4d, 0xd4, 0x51, 0xb8, 0xa0, 0xcb, 0x5c, 0x98, 0x7a, 0x8e, 0x6f, 0xa8, 0xdb, 0x8e, 0x4c, 0x26, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_3251_sharedsecret[] = { 0x99, 0xdd, 0xf3, 0x46, 0xdc, 0x91, 0x8d, 0x77, 0x2e, 0xc1, 0x1e, 0x89, 0x49, 0x9a, 0x82, 0xf3, 0xc5, 0x3e, 0x0c, 0xa2, 0xfa, 0xd0, 0x58, 0x55, 0x65, 0x3f, 0xc0, 0x7e, 0x5a, 0x15, 0x2b, 0xe3, 0xcf, 0x5e, 0xd9, 0x98, 0x11, 0x83, 0x57, 0x5f, 0x61, 0x2e, 0x59, 0x78, 0x9e, 0x0e, 0x79, 0x19, 0x77, 0x78, 0x58, 0x3e, 0x8b, 0x35, 0x66, 0x9f, }; static const wycheproof_xdh_test xdh_wei448_3251 = { .name = "xdh_wei448_3251", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3251_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3251_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3251_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 157 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3252 for XDH, tcId is 158 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3252_peerpubkey[] = { 0x9f, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_3252_privkey[] = { 0xe4, 0xd5, 0x1e, 0x5d, 0x74, 0x11, 0x9c, 0xaf, 0x3e, 0xa7, 0xe9, 0x89, 0x91, 0xb3, 0x3f, 0xc0, 0x5b, 0xd7, 0xfe, 0xdb, 0xf5, 0x19, 0x05, 0xee, 0x81, 0xa5, 0x86, 0xcf, 0x76, 0xd4, 0xa5, 0x48, 0x3a, 0x04, 0xab, 0x35, 0xe8, 0x25, 0x9b, 0x84, 0x94, 0xb9, 0x94, 0xa0, 0xc3, 0xad, 0xf8, 0xc9, 0x4c, 0x6a, 0x0e, 0xc9, 0x0e, 0x99, 0x20, 0x98, }; static const unsigned char xdh_wei448_3252_sharedsecret[] = { 0x3c, 0xae, 0x2e, 0xb2, 0x60, 0x18, 0x43, 0x67, 0x6f, 0xb4, 0xe4, 0x9e, 0xa4, 0xdf, 0x44, 0xe8, 0xd3, 0x1b, 0x14, 0xee, 0x36, 0x52, 0xf0, 0x43, 0x0c, 0x11, 0x4b, 0x92, 0xb0, 0xaf, 0xdd, 0xb3, 0xa5, 0x62, 0xf0, 0x53, 0xef, 0x37, 0xb4, 0x16, 0x48, 0x00, 0xfa, 0xc1, 0x53, 0xfc, 0x04, 0x15, 0xff, 0xb4, 0x80, 0xfa, 0xf5, 0x6e, 0x26, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3252 = { .name = "xdh_wei448_3252", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3252_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3252_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3252_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 158 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3253 for XDH, tcId is 159 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3253_peerpubkey[] = { 0xb6, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_3253_privkey[] = { 0x30, 0x7c, 0xf5, 0x96, 0x9e, 0x6f, 0xef, 0x65, 0x77, 0x65, 0xe0, 0xcf, 0x2f, 0xa9, 0xaf, 0xa4, 0x26, 0x96, 0xdb, 0x29, 0xd2, 0xc3, 0x69, 0x1c, 0x87, 0x4d, 0xb3, 0x68, 0x77, 0x20, 0x11, 0xe5, 0x0b, 0x4f, 0xb2, 0x2b, 0xbc, 0xd1, 0xbe, 0xb2, 0x35, 0x1a, 0xfb, 0x4e, 0x93, 0xe4, 0x3d, 0x28, 0xbd, 0x6e, 0xb7, 0xb1, 0xf4, 0x6d, 0x9b, 0xb2, }; static const unsigned char xdh_wei448_3253_sharedsecret[] = { 0x2e, 0xe9, 0x7f, 0xd2, 0xb8, 0x73, 0xeb, 0x49, 0x06, 0xae, 0x46, 0x8c, 0xcb, 0x72, 0x27, 0xc7, 0xb5, 0xdd, 0x0b, 0x93, 0x9d, 0x0d, 0x1d, 0x11, 0x2d, 0xfa, 0xe3, 0xdd, 0xe8, 0x2a, 0x2c, 0x8f, 0x04, 0xb3, 0xd1, 0x85, 0x5b, 0x74, 0x1e, 0x3a, 0x50, 0x07, 0x4a, 0x02, 0x06, 0x74, 0x3d, 0x24, 0xd0, 0xfe, 0x5b, 0x2e, 0x3c, 0x6c, 0xc1, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3253 = { .name = "xdh_wei448_3253", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3253_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3253_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3253_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 159 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3254 for XDH, tcId is 160 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3254_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3254_privkey[] = { 0x20, 0x73, 0x66, 0xc4, 0x9f, 0xd9, 0x57, 0x4e, 0x45, 0x40, 0x1a, 0x81, 0x77, 0xe1, 0x9e, 0xe9, 0xf0, 0x7a, 0x59, 0xde, 0x79, 0x95, 0xb1, 0x68, 0x4d, 0x42, 0x92, 0x4f, 0x51, 0x36, 0x2f, 0x57, 0x82, 0xc9, 0xcd, 0xf8, 0xdd, 0xe3, 0x7f, 0x61, 0xc0, 0xd4, 0x05, 0x9c, 0x98, 0x4f, 0xca, 0x4a, 0x83, 0x8c, 0x63, 0xd4, 0xa8, 0xcc, 0x76, 0xb0, }; static const unsigned char xdh_wei448_3254_sharedsecret[] = { 0xf3, 0x50, 0x26, 0x6e, 0xf6, 0xf4, 0x60, 0xb0, 0x65, 0xab, 0xdb, 0xd1, 0x19, 0xb6, 0x6d, 0xa5, 0xbe, 0x2d, 0x44, 0xe9, 0x0a, 0xc6, 0xdc, 0xf4, 0x5f, 0xeb, 0x30, 0xed, 0xdf, 0xfb, 0xc3, 0x93, 0xde, 0x01, 0xc5, 0xb1, 0x45, 0x5e, 0x67, 0x19, 0x23, 0x59, 0xeb, 0x0f, 0xc4, 0xdc, 0xff, 0xa1, 0xeb, 0x26, 0xf2, 0x44, 0x2f, 0x49, 0xd5, 0x93, }; static const wycheproof_xdh_test xdh_wei448_3254 = { .name = "xdh_wei448_3254", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3254_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3254_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3254_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 160 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3255 for XDH, tcId is 161 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3255_peerpubkey[] = { 0x4a, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_3255_privkey[] = { 0x20, 0xaf, 0xa0, 0x64, 0xf5, 0x05, 0x5c, 0x40, 0xad, 0x96, 0xd7, 0x20, 0x14, 0xc3, 0xee, 0x38, 0x8d, 0x4c, 0xc6, 0x01, 0xcb, 0xf4, 0x80, 0xed, 0xa8, 0xdc, 0x97, 0x63, 0xe9, 0xfe, 0xc4, 0x4f, 0x39, 0xaa, 0xd1, 0x12, 0x90, 0x24, 0x10, 0xdd, 0xca, 0xd5, 0xe7, 0x0b, 0x51, 0xd9, 0xd0, 0x03, 0x39, 0x05, 0x40, 0x7d, 0x21, 0x5a, 0xa4, 0x89, }; static const unsigned char xdh_wei448_3255_sharedsecret[] = { 0x9e, 0x08, 0x65, 0x58, 0xe9, 0xba, 0x60, 0xc4, 0x53, 0x28, 0xd4, 0x0d, 0x31, 0x75, 0x8c, 0x52, 0x79, 0x5e, 0xd5, 0x62, 0xcc, 0xc3, 0x21, 0x37, 0x8a, 0x11, 0xe0, 0x28, 0xb9, 0xad, 0x1c, 0xb7, 0xe5, 0xad, 0xf9, 0xbf, 0xd8, 0xf3, 0x55, 0xae, 0x5d, 0xf4, 0x3b, 0x86, 0xe3, 0x26, 0x62, 0x8b, 0x8a, 0x2d, 0x7a, 0x39, 0xb7, 0xe6, 0x6c, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_3255 = { .name = "xdh_wei448_3255", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3255_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3255_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3255_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 161 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3256 for XDH, tcId is 162 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3256_peerpubkey[] = { 0x61, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_3256_privkey[] = { 0x64, 0xd5, 0x41, 0xc8, 0x9f, 0x4f, 0xf3, 0xa4, 0xbd, 0x30, 0x60, 0x5c, 0xb5, 0x11, 0x1d, 0x4f, 0x1f, 0x1e, 0x0f, 0x44, 0x6d, 0x5f, 0xbd, 0xe9, 0x6b, 0xa7, 0x02, 0x16, 0xe2, 0x94, 0xd3, 0xae, 0x4c, 0x7b, 0x26, 0x6a, 0x48, 0xef, 0x7b, 0x57, 0xdf, 0x36, 0xba, 0x4d, 0x92, 0xb1, 0x3e, 0x2c, 0xd2, 0x47, 0x3e, 0xe5, 0x32, 0xac, 0x1d, 0xa4, }; static const unsigned char xdh_wei448_3256_sharedsecret[] = { 0xfa, 0xcf, 0x34, 0x76, 0xfa, 0x25, 0xef, 0x4c, 0xf5, 0x1f, 0xe1, 0x82, 0xb9, 0xd8, 0xac, 0xb0, 0x76, 0x96, 0xea, 0x11, 0x68, 0xb2, 0xbf, 0x03, 0xf0, 0x75, 0xbb, 0x8c, 0xb8, 0x17, 0xd7, 0x41, 0x72, 0xd0, 0x3d, 0x65, 0xe8, 0xf0, 0xe4, 0xa8, 0xe4, 0xd2, 0x31, 0x9b, 0x95, 0x58, 0x9b, 0xeb, 0xdc, 0x39, 0xa5, 0xb0, 0x8e, 0x66, 0xba, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_3256 = { .name = "xdh_wei448_3256", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3256_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3256_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3256_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 162 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3257 for XDH, tcId is 163 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3257_peerpubkey[] = { 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_3257_privkey[] = { 0x2c, 0x02, 0x97, 0x47, 0xe1, 0x4c, 0x0e, 0xe0, 0x46, 0x8e, 0xa3, 0x9b, 0xe5, 0x7e, 0xd4, 0xe5, 0xc1, 0x49, 0x35, 0xd2, 0x91, 0xba, 0xcb, 0x81, 0x0f, 0xd0, 0xea, 0x3f, 0x94, 0x2b, 0x72, 0x3b, 0x16, 0x80, 0x6e, 0xc2, 0x5d, 0x2d, 0xa5, 0x82, 0xbd, 0xb8, 0x8b, 0xaa, 0x64, 0x93, 0xb7, 0xe5, 0x77, 0x95, 0xcf, 0xbd, 0xe1, 0x33, 0x7e, 0xb2, }; static const unsigned char xdh_wei448_3257_sharedsecret[] = { 0x95, 0xbd, 0xe3, 0x9b, 0x09, 0x67, 0x02, 0xc0, 0x50, 0x20, 0xfd, 0x7b, 0x02, 0xac, 0x3e, 0x0f, 0xd6, 0xc1, 0xa1, 0x82, 0x98, 0x32, 0x37, 0xc1, 0x5d, 0xc1, 0x65, 0x4b, 0x1a, 0x4f, 0x2f, 0x9b, 0x48, 0x84, 0xdc, 0x7e, 0x78, 0xcc, 0x42, 0x2c, 0x6f, 0x75, 0x9a, 0x43, 0x8f, 0x6d, 0x5c, 0x7e, 0xdd, 0x39, 0x59, 0x18, 0x82, 0x5f, 0xfc, 0x62, }; static const wycheproof_xdh_test xdh_wei448_3257 = { .name = "xdh_wei448_3257", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3257_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3257_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3257_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 163 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3258 for XDH, tcId is 164 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3258_peerpubkey[] = { 0x78, 0xd7, 0xb6, 0x1d, 0x2c, 0x3e, 0xed, 0xb9, 0x51, 0x53, 0x87, 0xa4, 0xb7, 0x73, 0x33, 0xf2, 0x4e, 0x91, 0x47, 0x93, 0x40, 0x18, 0xa1, 0x50, 0x3f, 0x97, 0x2b, 0x8d, 0xe6, 0xaf, 0x64, 0x07, 0xd2, 0x2f, 0x8b, 0x46, 0x39, 0xd5, 0xfb, 0x86, 0x33, 0x6f, 0x71, 0x84, 0x9f, 0x59, 0xa1, 0xa4, 0xc9, 0xee, 0x38, 0xca, 0x73, 0xe0, 0xae, 0x1a, }; static const unsigned char xdh_wei448_3258_privkey[] = { 0x2c, 0x61, 0x29, 0x39, 0x30, 0x07, 0x54, 0x37, 0x0c, 0xfb, 0xc5, 0x59, 0x40, 0x7f, 0x1d, 0x99, 0x80, 0x56, 0x18, 0xd0, 0xc6, 0x93, 0xb5, 0x3f, 0xfc, 0x6c, 0x72, 0xd3, 0x96, 0xd6, 0x04, 0xcd, 0xba, 0xf4, 0x60, 0x0d, 0xd4, 0xc8, 0x86, 0x9d, 0x24, 0xd5, 0xdb, 0xa9, 0x16, 0x2a, 0x9e, 0x8c, 0xbd, 0xad, 0x85, 0xf4, 0x19, 0x87, 0x33, 0xaa, }; static const unsigned char xdh_wei448_3258_sharedsecret[] = { 0x78, 0xcf, 0x5f, 0x5d, 0x2c, 0x09, 0x8b, 0x57, 0xb2, 0x06, 0xf8, 0x9c, 0x2b, 0x1e, 0x84, 0xbc, 0x61, 0x63, 0xda, 0x1f, 0x78, 0x20, 0x6f, 0xbe, 0x50, 0x32, 0xce, 0x64, 0xca, 0xbf, 0x16, 0x82, 0xf9, 0xfd, 0x7b, 0xdc, 0xd0, 0x99, 0xdb, 0xb0, 0xcd, 0x04, 0xed, 0x1d, 0x8a, 0xe3, 0x32, 0xfd, 0x37, 0x88, 0xed, 0x31, 0xfa, 0xb9, 0xec, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3258 = { .name = "xdh_wei448_3258", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3258_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3258_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3258_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 164 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3259 for XDH, tcId is 165 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3259_peerpubkey[] = { 0x3f, 0x29, 0x5d, 0x0d, 0x72, 0xd1, 0x5c, 0xcf, 0xa2, 0x8e, 0x3c, 0xc7, 0xca, 0x96, 0xca, 0xcf, 0xa6, 0x48, 0x49, 0x8f, 0xc1, 0x28, 0x99, 0xed, 0xbb, 0x4d, 0xb1, 0x7f, 0x21, 0x03, 0x2e, 0x24, 0x45, 0x62, 0x5b, 0x15, 0x0c, 0xc6, 0x67, 0x5f, 0x98, 0x25, 0xfa, 0xc1, 0xa9, 0x66, 0x36, 0xfe, 0x1a, 0x92, 0xe8, 0xb2, 0xc2, 0xd4, 0xcf, 0x21, }; static const unsigned char xdh_wei448_3259_privkey[] = { 0x68, 0xfa, 0x79, 0x40, 0x55, 0xc1, 0x7d, 0x38, 0xb1, 0x1a, 0x90, 0x66, 0xa7, 0x5f, 0xdb, 0x3c, 0x2e, 0x3d, 0x01, 0x62, 0x93, 0xea, 0x27, 0x47, 0xe4, 0xe3, 0x56, 0x52, 0xbd, 0xa6, 0x06, 0xcc, 0xac, 0xc2, 0x86, 0x3a, 0xf2, 0x97, 0xcd, 0xc5, 0xc5, 0x87, 0x0c, 0x28, 0x15, 0x64, 0x84, 0xb6, 0xb3, 0xab, 0x2a, 0x72, 0xf8, 0xd9, 0x79, 0x89, }; static const unsigned char xdh_wei448_3259_sharedsecret[] = { 0x89, 0xaf, 0x44, 0xdd, 0xbf, 0x48, 0xea, 0x07, 0xf0, 0x14, 0xff, 0xae, 0x51, 0x7b, 0xcc, 0x3b, 0xab, 0xcc, 0xdb, 0x18, 0x82, 0xd3, 0x43, 0x92, 0x03, 0x4b, 0x3d, 0x57, 0x3d, 0x52, 0x7c, 0x94, 0xdc, 0x57, 0xd6, 0xe0, 0x2d, 0x82, 0x77, 0x43, 0x36, 0x78, 0x91, 0xdc, 0x1a, 0xc7, 0x3a, 0x9a, 0x9e, 0xf5, 0x9d, 0xd0, 0xd0, 0x05, 0xbd, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3259 = { .name = "xdh_wei448_3259", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3259_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3259_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3259_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 165 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3260 for XDH, tcId is 166 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3260_peerpubkey[] = { 0xc1, 0x16, 0xcb, 0x36, 0x8f, 0xe2, 0x8d, 0x08, 0x58, 0x32, 0x15, 0x11, 0xaf, 0x9f, 0x34, 0xe9, 0x0a, 0x00, 0x91, 0xeb, 0x0a, 0xf5, 0x67, 0xd1, 0xb1, 0xc8, 0xaa, 0x28, 0x04, 0x25, 0xc1, 0xd7, 0x30, 0xc2, 0x13, 0xcd, 0x87, 0x32, 0x42, 0xd1, 0x22, 0xf0, 0x2a, 0xf5, 0x04, 0xbb, 0xac, 0x21, 0x82, 0xd2, 0xf0, 0x13, 0xb5, 0xd6, 0xc3, 0x5e, }; static const unsigned char xdh_wei448_3260_privkey[] = { 0x50, 0x43, 0x19, 0x86, 0x65, 0x40, 0x69, 0x49, 0x18, 0xc4, 0xcc, 0x84, 0x26, 0x90, 0xe9, 0xf9, 0xf7, 0x60, 0xb8, 0x99, 0x94, 0x38, 0x29, 0xe8, 0xff, 0x35, 0xdf, 0x38, 0x88, 0x88, 0x9f, 0xa5, 0xd4, 0x2f, 0x02, 0x95, 0xe3, 0x6b, 0x55, 0xed, 0xcf, 0xbe, 0x44, 0x82, 0x17, 0xef, 0x06, 0xcc, 0x53, 0xd9, 0xce, 0x86, 0x90, 0x19, 0x14, 0x95, }; static const unsigned char xdh_wei448_3260_sharedsecret[] = { 0xe0, 0x2e, 0xc6, 0x58, 0x03, 0x16, 0x76, 0x8a, 0x41, 0xe6, 0x0e, 0xe2, 0x7b, 0x81, 0xe4, 0x16, 0x4e, 0x11, 0xa2, 0x82, 0x16, 0x06, 0x1e, 0x7e, 0x58, 0x7a, 0x0f, 0x36, 0x85, 0xbc, 0xdf, 0xc2, 0x14, 0xa4, 0x7a, 0x00, 0x50, 0x0e, 0xcc, 0x77, 0xbc, 0xad, 0x70, 0xcc, 0x7d, 0xef, 0x86, 0xdc, 0xb3, 0xc0, 0x3d, 0x6f, 0xab, 0xf3, 0x69, 0xba, }; static const wycheproof_xdh_test xdh_wei448_3260 = { .name = "xdh_wei448_3260", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3260_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3260_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3260_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 166 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3261 for XDH, tcId is 167 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3261_peerpubkey[] = { 0xa6, 0xfc, 0xf8, 0x1e, 0xe7, 0xb2, 0x33, 0x9e, 0xdb, 0x41, 0x09, 0xb1, 0x08, 0x68, 0x85, 0xdd, 0x7f, 0x3f, 0x6e, 0x3c, 0x34, 0x35, 0xae, 0x1d, 0xb0, 0x8d, 0x5e, 0x1d, 0xdf, 0x6d, 0xc2, 0xc7, 0x81, 0x04, 0xc4, 0x8b, 0x39, 0x41, 0xc9, 0x97, 0xe9, 0x96, 0xa8, 0x86, 0x41, 0x2d, 0xef, 0x9e, 0x4a, 0xd4, 0xb9, 0x00, 0x10, 0xb3, 0x7e, 0x73, }; static const unsigned char xdh_wei448_3261_privkey[] = { 0x48, 0xad, 0x61, 0xa0, 0x59, 0xe9, 0xcd, 0xb4, 0xac, 0x95, 0x84, 0x14, 0xad, 0x14, 0x89, 0x9c, 0x30, 0xe0, 0x5a, 0x00, 0x38, 0xe7, 0xec, 0xf3, 0xda, 0x38, 0xf7, 0x05, 0xe6, 0xf5, 0xd7, 0x73, 0x94, 0x3e, 0xc4, 0xda, 0x47, 0x5d, 0x70, 0x53, 0x23, 0xf7, 0xcc, 0xa4, 0x04, 0x2f, 0x73, 0x1f, 0x0b, 0xc4, 0x03, 0x25, 0x9f, 0x5c, 0x73, 0xa2, }; static const unsigned char xdh_wei448_3261_sharedsecret[] = { 0x9b, 0x47, 0xde, 0xc6, 0x15, 0x7f, 0x57, 0xfc, 0x66, 0x7e, 0x2c, 0x6c, 0xe4, 0x61, 0x7a, 0x28, 0x7f, 0x79, 0xcc, 0x60, 0x41, 0xb2, 0xcb, 0x73, 0xa1, 0x41, 0xf4, 0xd0, 0x4e, 0xe9, 0xc6, 0x3e, 0xd9, 0x41, 0x39, 0x6c, 0x3c, 0xbe, 0xe1, 0x7b, 0x51, 0x99, 0x5b, 0xbf, 0x65, 0xd6, 0xc7, 0x2f, 0x2b, 0xee, 0x8a, 0xbb, 0xc5, 0xec, 0x05, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3261 = { .name = "xdh_wei448_3261", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3261_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3261_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3261_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 167 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3262 for XDH, tcId is 168 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3262_peerpubkey[] = { 0xf2, 0xce, 0xb7, 0x02, 0x21, 0xeb, 0x2a, 0xaa, 0x4f, 0x9e, 0x75, 0xae, 0x63, 0xd7, 0x34, 0xa5, 0x68, 0xdf, 0x42, 0x65, 0xc3, 0x03, 0xfe, 0x1b, 0x71, 0x51, 0xc3, 0xdf, 0x8f, 0x4d, 0x3a, 0xef, 0x83, 0xed, 0x3d, 0x6f, 0xba, 0xe4, 0xb3, 0x89, 0x91, 0x1b, 0xd5, 0xdf, 0xe9, 0xb2, 0x9b, 0x6e, 0x54, 0x5d, 0xa9, 0x14, 0x50, 0x91, 0xdc, 0x75, }; static const unsigned char xdh_wei448_3262_privkey[] = { 0x68, 0x03, 0x17, 0x8d, 0xff, 0x23, 0xf5, 0x67, 0xe2, 0x48, 0xe3, 0xd1, 0x2c, 0xce, 0xa4, 0x6c, 0xe5, 0xe3, 0xcd, 0x5d, 0xe0, 0xb5, 0x0b, 0x0e, 0x4a, 0xac, 0xdf, 0x06, 0xe0, 0xea, 0x61, 0xf0, 0xec, 0x83, 0x6e, 0x91, 0x26, 0xd2, 0xed, 0x47, 0xb7, 0xb1, 0x71, 0x78, 0x40, 0x19, 0x40, 0x1b, 0x7a, 0x9f, 0xf2, 0x2d, 0xba, 0x64, 0x78, 0x98, }; static const unsigned char xdh_wei448_3262_sharedsecret[] = { 0xf3, 0x15, 0x67, 0xaa, 0x76, 0xa1, 0xf6, 0x5b, 0xea, 0x08, 0x56, 0x99, 0xb6, 0x86, 0x88, 0x4c, 0xe4, 0x77, 0x76, 0xca, 0x76, 0x65, 0xd0, 0x68, 0xc3, 0x4d, 0x80, 0x07, 0x44, 0x31, 0x3f, 0xb5, 0x6b, 0x8b, 0xac, 0x0f, 0x53, 0x00, 0x81, 0xb2, 0xef, 0x21, 0xa1, 0xc8, 0x9b, 0x76, 0x60, 0x68, 0x94, 0xf1, 0x22, 0xe1, 0x5a, 0x25, 0x82, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_3262 = { .name = "xdh_wei448_3262", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3262_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3262_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3262_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 168 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3263 for XDH, tcId is 169 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3263_peerpubkey[] = { 0x64, 0x4f, 0xf2, 0xb8, 0x7b, 0x82, 0xd7, 0xc5, 0x98, 0xcc, 0x9f, 0xfe, 0x97, 0xb9, 0x92, 0xff, 0x7c, 0xee, 0x5c, 0x07, 0x51, 0xaa, 0x78, 0x55, 0xa5, 0x84, 0x2a, 0x27, 0x0c, 0x5a, 0x7a, 0x30, 0xf0, 0xde, 0xcd, 0x0e, 0xeb, 0x52, 0x32, 0xc0, 0xd0, 0xca, 0x32, 0xb9, 0xfd, 0x72, 0x64, 0x90, 0xf9, 0x2f, 0x10, 0x6f, 0x3f, 0xb7, 0xcd, 0x7a, }; static const unsigned char xdh_wei448_3263_privkey[] = { 0x84, 0x7c, 0x63, 0x55, 0x88, 0x1d, 0x77, 0xf4, 0x01, 0x4a, 0xda, 0x76, 0x03, 0x5f, 0x50, 0xf1, 0x99, 0xef, 0x85, 0x6e, 0x1e, 0x50, 0x90, 0x1f, 0xdd, 0x89, 0x1c, 0x50, 0xbe, 0xf7, 0xed, 0x50, 0x33, 0xb2, 0x21, 0xec, 0x06, 0x92, 0xfa, 0x93, 0xa7, 0xbc, 0x2f, 0xe1, 0x14, 0xc6, 0x2a, 0x4e, 0x15, 0xc0, 0xaf, 0x94, 0x1f, 0xcf, 0xb2, 0xa0, }; static const unsigned char xdh_wei448_3263_sharedsecret[] = { 0xa9, 0xbe, 0x02, 0xb3, 0x12, 0x76, 0xaa, 0x9b, 0x2e, 0xef, 0x26, 0xb9, 0xf2, 0xfa, 0xed, 0xe9, 0xb5, 0xc2, 0x4f, 0xa2, 0xc8, 0x2e, 0xef, 0xec, 0xb2, 0x44, 0xde, 0x0c, 0x81, 0x3d, 0x53, 0x58, 0xdd, 0x32, 0x20, 0x8e, 0x80, 0xba, 0x67, 0x56, 0x37, 0xf3, 0x51, 0xc2, 0x40, 0x9f, 0xf0, 0x07, 0x43, 0x79, 0xbd, 0x69, 0x84, 0xd1, 0xe1, 0x07, }; static const wycheproof_xdh_test xdh_wei448_3263 = { .name = "xdh_wei448_3263", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3263_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3263_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3263_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 169 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3264 for XDH, tcId is 170 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3264_peerpubkey[] = { 0x40, 0x13, 0xfa, 0x9a, 0x82, 0x76, 0x97, 0x06, 0x90, 0xf3, 0x5f, 0x8f, 0x1d, 0x9d, 0x9d, 0xc8, 0x40, 0x4a, 0x38, 0x3b, 0x00, 0x3e, 0xf8, 0x74, 0x22, 0xb3, 0xab, 0x14, 0x88, 0x08, 0xcd, 0xae, 0xc0, 0xea, 0xb4, 0x70, 0x8b, 0xda, 0x47, 0x1b, 0xdd, 0x92, 0x20, 0xdb, 0x2f, 0x05, 0x8b, 0x07, 0x94, 0xb0, 0x1d, 0x25, 0x32, 0xb1, 0x47, 0xa8, }; static const unsigned char xdh_wei448_3264_privkey[] = { 0x48, 0x76, 0x84, 0x64, 0x18, 0x15, 0xfc, 0x73, 0x92, 0x53, 0x2b, 0x3b, 0xcf, 0x99, 0xc9, 0xc3, 0x1d, 0x69, 0xdd, 0x35, 0x76, 0xe5, 0x28, 0xf1, 0x92, 0xe7, 0x5a, 0x55, 0xe4, 0x6d, 0xe3, 0x9f, 0xaa, 0x87, 0xef, 0xfb, 0x37, 0x6d, 0x80, 0x6e, 0x10, 0x39, 0xe2, 0xfe, 0xe5, 0x3d, 0x12, 0xd4, 0x77, 0xe3, 0x18, 0xb9, 0x68, 0xdd, 0x3d, 0x86, }; static const unsigned char xdh_wei448_3264_sharedsecret[] = { 0x66, 0x3f, 0x60, 0x9b, 0x2c, 0x06, 0x9a, 0x71, 0x3e, 0xcf, 0x99, 0x1d, 0x73, 0x63, 0x1b, 0x14, 0x59, 0xeb, 0x3d, 0x3b, 0x8f, 0xe3, 0x98, 0xd9, 0x11, 0xfd, 0x91, 0xaa, 0xe2, 0x6f, 0x98, 0x62, 0x59, 0x65, 0x9d, 0xdc, 0x9a, 0x2c, 0x4a, 0xc7, 0xce, 0x62, 0x64, 0x55, 0x05, 0x6b, 0xcb, 0xe3, 0xb4, 0x06, 0xf7, 0x5f, 0xee, 0x5f, 0xb1, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3264 = { .name = "xdh_wei448_3264", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3264_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3264_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3264_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 170 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3265 for XDH, tcId is 171 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3265_peerpubkey[] = { 0xe6, 0xc5, 0x5c, 0x8e, 0xd5, 0xc8, 0xa3, 0x79, 0x85, 0xec, 0x78, 0xcd, 0x92, 0x35, 0x9c, 0x45, 0xf3, 0x35, 0x23, 0x2a, 0x6e, 0xff, 0xed, 0xe4, 0xf8, 0x30, 0xfe, 0x36, 0x83, 0xed, 0x53, 0x19, 0x7d, 0x06, 0xf2, 0x39, 0x50, 0xfd, 0x89, 0x9d, 0x1e, 0x33, 0x3b, 0xe7, 0x32, 0x2e, 0x6f, 0xc3, 0xa8, 0x30, 0x99, 0xa1, 0x1a, 0xb7, 0x3b, 0xc2, }; static const unsigned char xdh_wei448_3265_privkey[] = { 0x50, 0x30, 0xe6, 0x31, 0xfd, 0xbc, 0x43, 0xd5, 0xd6, 0xdc, 0x87, 0x9d, 0xb9, 0x43, 0x5f, 0xeb, 0x09, 0x92, 0x38, 0x80, 0x4f, 0x2f, 0xe3, 0x3c, 0x6d, 0x81, 0x35, 0x12, 0x4f, 0xc2, 0xd5, 0x09, 0x50, 0x26, 0x7b, 0xa2, 0x17, 0x95, 0xe1, 0x83, 0xb3, 0xea, 0x83, 0x40, 0xdd, 0x27, 0xf9, 0xbc, 0x3b, 0x14, 0x26, 0x6a, 0xc0, 0x38, 0x57, 0xb5, }; static const unsigned char xdh_wei448_3265_sharedsecret[] = { 0x47, 0x47, 0x7f, 0x47, 0x34, 0x4f, 0xac, 0xd4, 0x57, 0xf5, 0x41, 0xb0, 0x02, 0xcd, 0xaf, 0x3e, 0x09, 0x5c, 0x01, 0x88, 0x15, 0xba, 0x3f, 0x72, 0x54, 0xc3, 0x4f, 0x08, 0x77, 0x02, 0x50, 0xf3, 0x60, 0x26, 0x6d, 0xcb, 0x40, 0x65, 0x76, 0xc9, 0x58, 0x07, 0xdb, 0x79, 0x71, 0x26, 0x58, 0x7e, 0x8a, 0x8a, 0x2a, 0xfd, 0x28, 0x42, 0x89, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3265 = { .name = "xdh_wei448_3265", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3265_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3265_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3265_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 171 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3266 for XDH, tcId is 172 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3266_peerpubkey[] = { 0xb2, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_3266_privkey[] = { 0x50, 0x89, 0x93, 0xff, 0x7d, 0xd3, 0x6a, 0x79, 0x51, 0x1d, 0x93, 0x20, 0x9e, 0x4e, 0xaf, 0x50, 0xe0, 0x8c, 0x46, 0x0a, 0xad, 0x5c, 0xdc, 0xfa, 0xab, 0x85, 0x4d, 0x5e, 0x85, 0x75, 0x39, 0x36, 0x53, 0xa7, 0x4c, 0x94, 0xe7, 0xd0, 0x94, 0xbb, 0x59, 0xa7, 0xb9, 0x85, 0x08, 0x74, 0x7d, 0x90, 0x07, 0x5e, 0x5b, 0xc4, 0xbc, 0x13, 0xe6, 0x91, }; static const unsigned char xdh_wei448_3266_sharedsecret[] = { 0xb6, 0x73, 0xdf, 0x07, 0x42, 0x0a, 0xc1, 0xb5, 0xfa, 0x11, 0x20, 0xa1, 0x7d, 0x89, 0x04, 0x6c, 0xdd, 0xca, 0xa0, 0xb2, 0x34, 0xa1, 0xf8, 0x64, 0xd1, 0xfc, 0x17, 0xa2, 0xd5, 0xe7, 0x71, 0xbb, 0x25, 0x0f, 0x0d, 0xc3, 0x87, 0xf3, 0x35, 0x7c, 0x38, 0x09, 0x8a, 0x42, 0x70, 0xee, 0xd6, 0x4e, 0x7b, 0x10, 0x65, 0x13, 0x6a, 0xb8, 0x58, 0x83, }; static const wycheproof_xdh_test xdh_wei448_3266 = { .name = "xdh_wei448_3266", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3266_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3266_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3266_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 172 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3267 for XDH, tcId is 173 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3267_peerpubkey[] = { 0x4c, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_3267_privkey[] = { 0x54, 0x0d, 0x8d, 0x0d, 0x08, 0x30, 0x02, 0x1e, 0x4e, 0xab, 0x07, 0x8a, 0xe2, 0x1b, 0x6c, 0x9e, 0x67, 0xfa, 0x75, 0xe4, 0xbe, 0x5e, 0x95, 0x29, 0x2b, 0xb0, 0x2d, 0x66, 0xe5, 0x79, 0xfd, 0xb5, 0x88, 0xfc, 0x26, 0x67, 0x41, 0x68, 0x6d, 0x58, 0x71, 0x9d, 0x7b, 0xc8, 0xdf, 0x61, 0x94, 0xaa, 0x6e, 0xa8, 0xf8, 0x1e, 0x5c, 0xaa, 0x67, 0xbc, }; static const unsigned char xdh_wei448_3267_sharedsecret[] = { 0x5a, 0xd0, 0x6c, 0x3b, 0x27, 0x76, 0xba, 0x9c, 0x8f, 0x9f, 0xce, 0xd3, 0xa9, 0xdc, 0xb2, 0x67, 0x11, 0x23, 0x54, 0x74, 0x44, 0x7d, 0x4a, 0x06, 0xab, 0xb4, 0x3a, 0x40, 0xc3, 0xea, 0x7f, 0x94, 0x9a, 0x63, 0xe5, 0x49, 0x16, 0x8a, 0x25, 0x1c, 0x4e, 0xd4, 0x88, 0x3b, 0xa0, 0xd3, 0x6c, 0x7a, 0xaf, 0xd0, 0x93, 0x8d, 0x4a, 0x92, 0xa9, 0x67, }; static const wycheproof_xdh_test xdh_wei448_3267 = { .name = "xdh_wei448_3267", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3267_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3267_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3267_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 173 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3268 for XDH, tcId is 174 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3268_peerpubkey[] = { 0xb3, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_3268_privkey[] = { 0x28, 0x6c, 0xb4, 0xa0, 0x6a, 0x64, 0xe8, 0x50, 0x85, 0x0b, 0x37, 0x1c, 0xeb, 0x5c, 0x54, 0xfe, 0x71, 0xb1, 0x7c, 0xd0, 0x77, 0x2e, 0x40, 0x78, 0xb0, 0x20, 0x30, 0x66, 0x23, 0x1b, 0xad, 0x70, 0x0c, 0x79, 0x8a, 0xb0, 0xd9, 0x23, 0x62, 0x44, 0x91, 0x0c, 0xd2, 0x3d, 0xb5, 0x8c, 0xb6, 0x52, 0xc8, 0xfa, 0x58, 0x00, 0x95, 0x39, 0x78, 0x9d, }; static const unsigned char xdh_wei448_3268_sharedsecret[] = { 0x3c, 0x1e, 0x26, 0x78, 0x59, 0x0f, 0x9c, 0x5b, 0xc1, 0x24, 0xd6, 0xbb, 0xdd, 0x45, 0xca, 0xc5, 0xde, 0xa3, 0xdc, 0xb2, 0xb4, 0x5a, 0x1f, 0x2a, 0x9e, 0xd2, 0xfd, 0x02, 0x39, 0xd4, 0x89, 0x48, 0x48, 0x97, 0x55, 0x71, 0xc5, 0x23, 0x12, 0x1d, 0xb7, 0xc6, 0x75, 0x69, 0x25, 0xdd, 0xb1, 0x1d, 0x47, 0x9c, 0x89, 0xbe, 0x7c, 0x6a, 0x24, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_3268 = { .name = "xdh_wei448_3268", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3268_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3268_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3268_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 174 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3269 for XDH, tcId is 175 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3269_peerpubkey[] = { 0x4d, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_3269_privkey[] = { 0xac, 0x04, 0x50, 0x17, 0xf8, 0x6a, 0xda, 0x85, 0xb3, 0x4f, 0x4f, 0x3e, 0x30, 0x7f, 0xd1, 0xb8, 0x30, 0x49, 0x4c, 0xe7, 0xed, 0xb9, 0x11, 0x56, 0xd2, 0x82, 0xbd, 0xff, 0x17, 0x2a, 0x5a, 0x0a, 0x9b, 0x07, 0x50, 0xf5, 0xbf, 0x35, 0x29, 0x5f, 0x1e, 0x2d, 0xe9, 0x08, 0xa0, 0xf1, 0xdb, 0x31, 0x99, 0x2d, 0xb6, 0xe6, 0xbd, 0xb9, 0xab, 0x93, }; static const unsigned char xdh_wei448_3269_sharedsecret[] = { 0x21, 0x9b, 0xd2, 0x7b, 0x3a, 0x7d, 0xe0, 0x97, 0x9e, 0xca, 0xe9, 0x0c, 0x42, 0xbf, 0x49, 0x3b, 0x76, 0x6e, 0xe1, 0x62, 0xa1, 0x04, 0x56, 0xa1, 0x8d, 0xdc, 0x1a, 0x90, 0x10, 0x65, 0x10, 0x70, 0x52, 0xcc, 0x60, 0xbc, 0xb3, 0xbf, 0x43, 0xa0, 0x31, 0x3d, 0x2a, 0xdb, 0xaa, 0x60, 0x06, 0x32, 0x3a, 0x98, 0x6b, 0x0b, 0xad, 0x79, 0xc7, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_3269 = { .name = "xdh_wei448_3269", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3269_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3269_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3269_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 175 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3270 for XDH, tcId is 176 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3270_peerpubkey[] = { 0x77, 0x8e, 0x69, 0x65, 0x59, 0x41, 0x2a, 0x31, 0x70, 0x6d, 0x3d, 0x66, 0x89, 0xfe, 0x56, 0xc6, 0x59, 0x80, 0x50, 0x6f, 0x61, 0xc3, 0xaf, 0x47, 0xfc, 0x95, 0x34, 0x09, 0xd7, 0xa3, 0xe2, 0x71, 0x40, 0xf1, 0xff, 0x0d, 0x3b, 0x78, 0xfd, 0xd9, 0x68, 0xe2, 0xc7, 0x8d, 0xdb, 0xc9, 0x73, 0x39, 0x23, 0x91, 0xd7, 0xf3, 0xf2, 0x79, 0x4c, 0x2b, }; static const unsigned char xdh_wei448_3270_privkey[] = { 0x58, 0x46, 0xfe, 0x5d, 0x68, 0x10, 0x30, 0x2d, 0x59, 0x26, 0x11, 0x1b, 0xd0, 0x14, 0x64, 0x02, 0xb2, 0xe4, 0x99, 0x00, 0x55, 0x05, 0x48, 0xc7, 0xfc, 0x64, 0xdf, 0x74, 0xf1, 0xa7, 0xed, 0x88, 0x5b, 0x34, 0x35, 0x87, 0xb6, 0x1e, 0x7c, 0x0f, 0x24, 0xbb, 0x0b, 0x7a, 0xcf, 0x3d, 0x50, 0xe8, 0xc4, 0xb6, 0x81, 0x12, 0x48, 0xba, 0x19, 0xa6, }; static const unsigned char xdh_wei448_3270_sharedsecret[] = { 0xce, 0xd0, 0x69, 0x51, 0x59, 0x28, 0x92, 0xa8, 0xfc, 0xb5, 0xae, 0x62, 0xac, 0xef, 0x4e, 0xfa, 0x70, 0xba, 0xa0, 0x04, 0x85, 0xc8, 0x23, 0xf9, 0x69, 0x75, 0x94, 0xfe, 0xee, 0x5a, 0xdf, 0x2e, 0xf9, 0xa7, 0x06, 0x71, 0xac, 0x34, 0x1a, 0x95, 0x8a, 0x06, 0x1e, 0x58, 0xf2, 0xff, 0x8a, 0x1c, 0xe7, 0x4b, 0x29, 0xf4, 0x2c, 0xf2, 0x43, 0x79, }; static const wycheproof_xdh_test xdh_wei448_3270 = { .name = "xdh_wei448_3270", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3270_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3270_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3270_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 176 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3271 for XDH, tcId is 177 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3271_peerpubkey[] = { 0xfa, 0xf7, 0xdd, 0x10, 0xbc, 0xc8, 0xd4, 0xd3, 0x78, 0xa6, 0x23, 0x00, 0x55, 0x50, 0x0b, 0x4f, 0x87, 0xbb, 0x99, 0x94, 0xac, 0xe5, 0x4e, 0x44, 0xaf, 0xcf, 0xfa, 0x83, 0x6c, 0x0d, 0x0c, 0xee, 0x94, 0xc1, 0x63, 0x7c, 0x3e, 0xcb, 0x01, 0x5a, 0xb1, 0x0f, 0x1e, 0x17, 0xcb, 0x11, 0xc1, 0x82, 0x4d, 0x2b, 0x7d, 0x7e, 0x32, 0x99, 0x3b, 0x2c, }; static const unsigned char xdh_wei448_3271_privkey[] = { 0x1c, 0x3c, 0x44, 0xc6, 0x2c, 0x73, 0xb7, 0xa4, 0x5e, 0x3f, 0x03, 0x15, 0xee, 0x27, 0x43, 0x77, 0xf7, 0xb5, 0xde, 0x3e, 0xd5, 0x2e, 0x9b, 0x0f, 0x26, 0xb0, 0x24, 0xff, 0x54, 0x09, 0x41, 0xde, 0x85, 0xca, 0x07, 0xed, 0x48, 0xcc, 0xd4, 0xd1, 0x9c, 0x3f, 0x7c, 0xf9, 0x90, 0x1f, 0x82, 0x80, 0x04, 0x5c, 0x3b, 0x1e, 0x79, 0x6b, 0xd9, 0xaa, }; static const unsigned char xdh_wei448_3271_sharedsecret[] = { 0xcd, 0xff, 0x5f, 0x86, 0x09, 0x7e, 0x9d, 0x8a, 0x96, 0xe8, 0xfe, 0x6e, 0x4a, 0x2e, 0x95, 0xc2, 0xae, 0x2c, 0x70, 0xae, 0x8f, 0x1d, 0xa1, 0x70, 0x33, 0x0f, 0xe7, 0x01, 0x2e, 0xf6, 0x39, 0x54, 0x86, 0x08, 0xd0, 0x1e, 0xb8, 0xf1, 0x28, 0xd8, 0x91, 0xa7, 0x28, 0xd3, 0x9d, 0x22, 0x1a, 0xe8, 0xa3, 0x78, 0xc2, 0xf7, 0x8a, 0xc3, 0x81, 0x4f, }; static const wycheproof_xdh_test xdh_wei448_3271 = { .name = "xdh_wei448_3271", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3271_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3271_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3271_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 177 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3272 for XDH, tcId is 178 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3272_peerpubkey[] = { 0x17, 0x25, 0x92, 0x91, 0x21, 0x66, 0x3a, 0x42, 0x51, 0x36, 0x7b, 0x83, 0x90, 0xae, 0x13, 0x57, 0x8b, 0x8b, 0x51, 0x50, 0x48, 0x8c, 0x1d, 0x6f, 0x04, 0x27, 0x03, 0xea, 0x32, 0xbc, 0xca, 0xa0, 0x95, 0x6b, 0xeb, 0x67, 0x7b, 0x60, 0x12, 0x3c, 0x5e, 0xdc, 0x84, 0x4c, 0x4e, 0xbc, 0x6a, 0x02, 0xa8, 0x48, 0xbf, 0x8e, 0xb4, 0x5e, 0xcc, 0x3b, }; static const unsigned char xdh_wei448_3272_privkey[] = { 0x98, 0xe1, 0x49, 0x0a, 0xbf, 0x47, 0x97, 0x36, 0xea, 0x94, 0x54, 0x8b, 0x3b, 0x67, 0x26, 0x5d, 0x99, 0x24, 0xd4, 0xac, 0x34, 0xb5, 0xec, 0xb3, 0xf5, 0xfc, 0xe5, 0xe8, 0x06, 0xca, 0xe3, 0x6f, 0x2c, 0x37, 0x8a, 0x10, 0x35, 0x65, 0xb0, 0x9e, 0x45, 0x34, 0x1b, 0xec, 0x4c, 0x0b, 0x64, 0xc9, 0x3c, 0x50, 0x7e, 0xf5, 0x4b, 0xf2, 0x86, 0xbf, }; static const unsigned char xdh_wei448_3272_sharedsecret[] = { 0x4f, 0x84, 0x58, 0x17, 0x8f, 0x9a, 0xaa, 0x90, 0xd8, 0xf0, 0xdc, 0xb5, 0x7a, 0xa2, 0x8b, 0x0f, 0xa4, 0xe0, 0x43, 0x50, 0xb3, 0x1e, 0x62, 0x74, 0xcf, 0x94, 0x68, 0x64, 0xb9, 0x78, 0x80, 0x5f, 0xca, 0x4d, 0x4c, 0x81, 0xdd, 0xb6, 0xd3, 0x2f, 0x6a, 0x05, 0xe2, 0x4f, 0xbf, 0xd5, 0x21, 0xfc, 0x43, 0xe8, 0x48, 0x17, 0x9b, 0x18, 0x78, 0xa9, }; static const wycheproof_xdh_test xdh_wei448_3272 = { .name = "xdh_wei448_3272", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3272_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3272_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3272_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 178 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3273 for XDH, tcId is 179 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3273_peerpubkey[] = { 0xcb, 0x0b, 0x2a, 0xbd, 0x19, 0x4e, 0xb1, 0xbe, 0x14, 0xd4, 0x17, 0xd5, 0xc8, 0x23, 0xa1, 0x51, 0x54, 0xcb, 0x61, 0x5a, 0x30, 0x3e, 0x25, 0xe6, 0x47, 0x4b, 0xfd, 0x56, 0x32, 0x3a, 0x38, 0xf7, 0x88, 0x2f, 0xbc, 0xd7, 0xbc, 0x14, 0x8a, 0xdf, 0xd7, 0x0f, 0xc1, 0x8c, 0x96, 0xa2, 0x95, 0x69, 0xa1, 0x0a, 0xd1, 0xae, 0xea, 0x67, 0x74, 0x4c, }; static const unsigned char xdh_wei448_3273_privkey[] = { 0xb4, 0xc2, 0xee, 0xc4, 0x6e, 0xae, 0xaa, 0x28, 0x63, 0x6a, 0x44, 0xb0, 0x54, 0x21, 0xf4, 0xe1, 0x7d, 0x06, 0x4b, 0xe0, 0xb9, 0xbe, 0x23, 0x22, 0x6e, 0x4f, 0x3c, 0x17, 0x33, 0xf1, 0xd5, 0x3b, 0x35, 0x72, 0x15, 0xdd, 0x84, 0xf4, 0x12, 0x16, 0xa0, 0x98, 0x5a, 0x9d, 0x47, 0x88, 0x34, 0xf8, 0x5a, 0x92, 0xf6, 0x80, 0x8b, 0x10, 0x97, 0xa9, }; static const unsigned char xdh_wei448_3273_sharedsecret[] = { 0xa6, 0x28, 0x6b, 0xb1, 0xba, 0xf9, 0xa0, 0x39, 0xc5, 0x51, 0x80, 0x8f, 0x6a, 0xe2, 0x54, 0x06, 0x84, 0xeb, 0x62, 0x5e, 0x5e, 0x22, 0xec, 0x09, 0x6f, 0xd1, 0x12, 0xb5, 0x2a, 0xe5, 0xe1, 0x03, 0x99, 0x61, 0x8d, 0x84, 0x76, 0x35, 0x28, 0x7f, 0xaf, 0xa4, 0xe3, 0x1d, 0xb4, 0xa6, 0x6f, 0x0c, 0x11, 0x61, 0xfe, 0x6f, 0xfe, 0x1f, 0xbd, 0xce, }; static const wycheproof_xdh_test xdh_wei448_3273 = { .name = "xdh_wei448_3273", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3273_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3273_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3273_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 179 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3274 for XDH, tcId is 180 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3274_peerpubkey[] = { 0x6c, 0x13, 0x1e, 0x6c, 0x22, 0x5f, 0x3c, 0x7c, 0xd0, 0xcb, 0x44, 0xce, 0xad, 0x0f, 0x45, 0xb5, 0x69, 0x88, 0xf7, 0x9f, 0xa1, 0xaf, 0x96, 0x6b, 0xbf, 0x56, 0x74, 0x00, 0xd7, 0x70, 0x2d, 0x05, 0xa6, 0xfb, 0x1f, 0xab, 0xde, 0xc1, 0x9f, 0x81, 0xc0, 0x77, 0xbd, 0xf8, 0xd9, 0x4f, 0x4b, 0x10, 0x51, 0x9e, 0xca, 0xa6, 0x3e, 0xc2, 0x62, 0x66, }; static const unsigned char xdh_wei448_3274_privkey[] = { 0xe8, 0x37, 0x52, 0x97, 0x8a, 0xb8, 0x67, 0xb6, 0x9d, 0x9c, 0xc6, 0x85, 0x23, 0x66, 0xa7, 0xbe, 0x18, 0x4d, 0x16, 0x0f, 0x50, 0xee, 0x2e, 0x93, 0x25, 0x02, 0x16, 0xd2, 0x42, 0x33, 0xab, 0x3c, 0x11, 0x2b, 0x20, 0xd3, 0x05, 0xcf, 0x42, 0x2b, 0xf4, 0xab, 0x1b, 0xdc, 0xb5, 0x7b, 0x14, 0xd6, 0xe1, 0x7b, 0xdf, 0x3b, 0xce, 0x4f, 0xf1, 0x93, }; static const unsigned char xdh_wei448_3274_sharedsecret[] = { 0xfc, 0xd6, 0xb6, 0xe4, 0x41, 0x05, 0xb4, 0xa7, 0x7b, 0xa9, 0xeb, 0xc5, 0x59, 0x63, 0xa3, 0x4e, 0x38, 0x4f, 0x8b, 0x8c, 0x65, 0xae, 0xcb, 0x8e, 0x12, 0x9d, 0x0c, 0x5c, 0x0c, 0x4a, 0xc3, 0x59, 0xbe, 0x9e, 0xa4, 0x9e, 0x61, 0x78, 0x14, 0x73, 0x61, 0xe5, 0xd3, 0x37, 0x2c, 0x13, 0xbf, 0x56, 0x6f, 0xc0, 0x1d, 0xfb, 0xcc, 0x09, 0x0e, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3274 = { .name = "xdh_wei448_3274", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3274_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3274_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3274_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 180 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3275 for XDH, tcId is 181 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3275_peerpubkey[] = { 0x39, 0xd9, 0x0d, 0xf6, 0xb5, 0xc6, 0x94, 0x17, 0x16, 0x72, 0x9d, 0xa1, 0x37, 0xf5, 0x8e, 0xd6, 0x86, 0x82, 0xfe, 0xfc, 0xc9, 0x64, 0x14, 0x7b, 0xcb, 0x27, 0x55, 0x1e, 0x1d, 0x1e, 0xd8, 0xb5, 0xe0, 0xbb, 0xba, 0x21, 0x71, 0xa4, 0xa1, 0x20, 0xb0, 0xc8, 0xf5, 0x54, 0xf0, 0x65, 0x9d, 0x4d, 0x81, 0xaa, 0x64, 0xa3, 0xf8, 0x45, 0x86, 0xd5, }; static const unsigned char xdh_wei448_3275_privkey[] = { 0x74, 0xca, 0xbe, 0xa8, 0x82, 0xcd, 0x95, 0x59, 0x4f, 0x57, 0xd5, 0x14, 0x49, 0x02, 0x34, 0x4d, 0xd2, 0xb3, 0xad, 0xb0, 0x45, 0xe5, 0xa6, 0xe2, 0x70, 0xa4, 0x93, 0x72, 0xf0, 0x59, 0x22, 0xc4, 0x5f, 0xa5, 0x00, 0xed, 0x1d, 0x7a, 0x4d, 0x9f, 0xff, 0x58, 0x48, 0x8b, 0x26, 0x55, 0x49, 0x61, 0xef, 0xcb, 0xeb, 0xc6, 0xfa, 0x2b, 0xa8, 0x83, }; static const unsigned char xdh_wei448_3275_sharedsecret[] = { 0xa7, 0xfd, 0xca, 0x0e, 0x15, 0xe5, 0x94, 0x8a, 0xa7, 0x7c, 0xed, 0xd2, 0x7b, 0x76, 0x59, 0x90, 0xd5, 0xe6, 0xab, 0xff, 0x7a, 0x72, 0x6b, 0x9a, 0xc0, 0xea, 0x9b, 0xc4, 0x89, 0x92, 0xd0, 0xee, 0x97, 0x28, 0xa7, 0x23, 0xb7, 0xe1, 0x8c, 0x33, 0x34, 0x1c, 0x30, 0xfb, 0xd5, 0x1f, 0x42, 0xf8, 0xf9, 0xe3, 0x6f, 0x4e, 0x00, 0xc5, 0x4f, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_3275 = { .name = "xdh_wei448_3275", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3275_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3275_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3275_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 181 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3276 for XDH, tcId is 182 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3276_peerpubkey[] = { 0xf9, 0x23, 0x2f, 0xe9, 0x3b, 0x09, 0xea, 0x23, 0x2f, 0x04, 0x01, 0x14, 0x47, 0x39, 0x6b, 0xee, 0x7b, 0xdf, 0x1a, 0x2e, 0x86, 0x88, 0x7e, 0x9e, 0x68, 0xe7, 0x91, 0x7f, 0xaf, 0xdc, 0x4d, 0xd6, 0x83, 0x7c, 0xe8, 0xfb, 0x08, 0x2b, 0x0b, 0xbd, 0x77, 0xdb, 0x75, 0x62, 0xb2, 0x29, 0xa6, 0xde, 0x12, 0x63, 0x2a, 0x41, 0x62, 0xea, 0xef, 0x2c, }; static const unsigned char xdh_wei448_3276_privkey[] = { 0x40, 0x73, 0x42, 0xcd, 0x35, 0x65, 0x8c, 0x89, 0x33, 0xf1, 0xf0, 0x0d, 0xfc, 0x08, 0xfa, 0x6e, 0x10, 0x19, 0x1d, 0x88, 0x24, 0x4a, 0xcb, 0x65, 0xe2, 0x02, 0x38, 0x3a, 0x43, 0x51, 0xa8, 0x05, 0x09, 0x5d, 0x39, 0x25, 0xab, 0xf3, 0x3b, 0xc4, 0xb6, 0xb5, 0xd5, 0x8d, 0x9a, 0x11, 0x35, 0xe3, 0xf2, 0xa2, 0x7f, 0x3d, 0x48, 0x35, 0x0e, 0x85, }; static const unsigned char xdh_wei448_3276_sharedsecret[] = { 0x19, 0x0b, 0x8c, 0x74, 0xa0, 0xfd, 0xa4, 0x39, 0xb7, 0x8f, 0x39, 0x00, 0x19, 0xaa, 0xff, 0xe2, 0xac, 0x55, 0x6d, 0x05, 0xa1, 0x0e, 0xd2, 0xa8, 0x66, 0xbf, 0x31, 0x4b, 0xe6, 0x5b, 0xa4, 0xfa, 0x84, 0xa9, 0x4d, 0x1f, 0x73, 0x09, 0x9a, 0x62, 0x6f, 0x53, 0x57, 0xc7, 0xa1, 0x90, 0xd5, 0x0a, 0x55, 0xc9, 0x63, 0x33, 0xdd, 0xfb, 0x12, 0x29, }; static const wycheproof_xdh_test xdh_wei448_3276 = { .name = "xdh_wei448_3276", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3276_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3276_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3276_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 182 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3277 for XDH, tcId is 183 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3277_peerpubkey[] = { 0xa6, 0xfb, 0xd6, 0x4a, 0x66, 0xa4, 0x64, 0x54, 0xeb, 0x14, 0x5b, 0x3f, 0x37, 0x05, 0xe0, 0x19, 0x72, 0xb1, 0x49, 0x3b, 0x8e, 0x8f, 0xd4, 0x12, 0x37, 0x19, 0x84, 0xe0, 0x6b, 0x92, 0x6e, 0x76, 0xa7, 0xfd, 0x67, 0x9b, 0xde, 0x61, 0x14, 0x9f, 0xef, 0x27, 0x9f, 0x31, 0xa7, 0x53, 0x21, 0xad, 0x7f, 0x69, 0x37, 0x61, 0x96, 0xe0, 0xa1, 0x9b, }; static const unsigned char xdh_wei448_3277_privkey[] = { 0x80, 0x38, 0x7a, 0x6b, 0x93, 0x1d, 0xfb, 0xf0, 0xa3, 0x22, 0x0c, 0xbc, 0x8e, 0x16, 0x19, 0x46, 0xd6, 0x66, 0xf4, 0x10, 0x8f, 0x14, 0x34, 0x97, 0x9d, 0xeb, 0x6c, 0xec, 0xeb, 0x42, 0x2f, 0x03, 0x7a, 0x26, 0xc6, 0x34, 0xe9, 0x8b, 0x7d, 0x67, 0xdc, 0x8f, 0xd4, 0xea, 0x52, 0xae, 0x0d, 0xb7, 0xd8, 0x32, 0xaf, 0x7a, 0x07, 0x5b, 0x88, 0x96, }; static const unsigned char xdh_wei448_3277_sharedsecret[] = { 0xf6, 0x57, 0x13, 0xc9, 0x81, 0x9e, 0x06, 0xc2, 0x4f, 0x78, 0x41, 0x88, 0x70, 0xde, 0x30, 0xe8, 0x94, 0x98, 0x46, 0x78, 0x6b, 0x2e, 0xed, 0x55, 0x7b, 0x16, 0xb3, 0x12, 0x59, 0xf9, 0xd8, 0xa6, 0xc6, 0xe3, 0x40, 0x8d, 0x15, 0x5e, 0x2f, 0x1a, 0xb9, 0x83, 0xac, 0x64, 0x6d, 0x76, 0x04, 0x2d, 0x97, 0x66, 0x2c, 0xd5, 0x32, 0x83, 0x4e, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3277 = { .name = "xdh_wei448_3277", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3277_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3277_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3277_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 183 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3278 for XDH, tcId is 184 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3278_peerpubkey[] = { 0x39, 0xbf, 0x39, 0x20, 0x5a, 0xc3, 0xdd, 0x32, 0xd6, 0x09, 0x2d, 0x1b, 0x74, 0x55, 0x79, 0xff, 0x53, 0xfe, 0xa1, 0x03, 0x76, 0xe4, 0xf0, 0xb1, 0xa2, 0xa4, 0xb8, 0x39, 0x5a, 0x6f, 0xaa, 0x85, 0xc2, 0x19, 0xa9, 0x22, 0x41, 0x23, 0xe9, 0x32, 0xe4, 0x92, 0x9d, 0xf4, 0xfd, 0x6b, 0x2b, 0x90, 0xa3, 0xdf, 0xa3, 0xf8, 0x9b, 0xe7, 0x80, 0xaf, }; static const unsigned char xdh_wei448_3278_privkey[] = { 0xf8, 0x6c, 0xb8, 0xff, 0x21, 0x7d, 0xa7, 0x30, 0xd1, 0x84, 0xc7, 0x32, 0x24, 0x63, 0x6a, 0xf9, 0xf7, 0x79, 0xc8, 0x3c, 0x84, 0x4a, 0x1a, 0x85, 0x9b, 0x86, 0xb7, 0x6b, 0xfc, 0x90, 0x5d, 0xd8, 0x09, 0xc5, 0xd7, 0xfd, 0x99, 0xd9, 0xd6, 0xb8, 0x69, 0x5b, 0x6c, 0x1b, 0x9d, 0xd9, 0x94, 0x20, 0x2e, 0x4e, 0x12, 0x6b, 0xc0, 0x0d, 0xe8, 0x9e, }; static const unsigned char xdh_wei448_3278_sharedsecret[] = { 0x71, 0xd0, 0x73, 0x1f, 0xc8, 0x0c, 0x72, 0x53, 0x49, 0x87, 0x3b, 0x22, 0xaf, 0x21, 0x5c, 0x39, 0xf2, 0xec, 0x59, 0x5c, 0xb3, 0x6b, 0x1c, 0x5a, 0x69, 0xbc, 0x5d, 0xdd, 0x75, 0x4e, 0x82, 0x56, 0x3e, 0x06, 0x0d, 0xcb, 0x1d, 0xc8, 0x6b, 0x43, 0x54, 0xbf, 0x20, 0x17, 0xaa, 0x43, 0xbe, 0x1c, 0xa7, 0x39, 0xb4, 0x0d, 0x75, 0xcc, 0x85, 0xd1, }; static const wycheproof_xdh_test xdh_wei448_3278 = { .name = "xdh_wei448_3278", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3278_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3278_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3278_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 184 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3279 for XDH, tcId is 185 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3279_peerpubkey[] = { 0x96, 0x6b, 0x0c, 0x56, 0x8d, 0xca, 0x32, 0x71, 0x75, 0x9b, 0x1a, 0x6c, 0xbd, 0xd5, 0xef, 0x23, 0x86, 0x26, 0x3e, 0xc3, 0x62, 0xc2, 0xa0, 0x76, 0xb8, 0x5b, 0x92, 0x7a, 0xcc, 0xc7, 0x31, 0x90, 0x15, 0xf3, 0x61, 0x53, 0xda, 0x29, 0x0a, 0x81, 0x96, 0x20, 0x31, 0x4e, 0xa1, 0xa2, 0x8e, 0x58, 0xb3, 0xd1, 0xa0, 0xf5, 0x03, 0xde, 0x14, 0xf9, }; static const unsigned char xdh_wei448_3279_privkey[] = { 0x54, 0x48, 0x63, 0x2b, 0xef, 0xfa, 0xf5, 0x36, 0x67, 0x45, 0xe1, 0xd5, 0x92, 0x54, 0xc9, 0x46, 0x52, 0x96, 0xab, 0x37, 0x01, 0x59, 0xbe, 0x41, 0x87, 0x91, 0x9f, 0xa1, 0xbe, 0x25, 0x79, 0x6d, 0x4c, 0x97, 0xba, 0xc0, 0x85, 0xa2, 0xbf, 0x06, 0x55, 0xf2, 0x9e, 0x12, 0x9f, 0x5a, 0xb7, 0xf2, 0x6f, 0xf9, 0x53, 0x62, 0xf3, 0x36, 0xea, 0xbc, }; static const unsigned char xdh_wei448_3279_sharedsecret[] = { 0x0c, 0x72, 0x95, 0x19, 0x74, 0x4c, 0xf1, 0x4b, 0xe7, 0x96, 0x96, 0x32, 0x5a, 0xe8, 0x93, 0x68, 0x77, 0xb3, 0x21, 0xe4, 0x5b, 0x07, 0x57, 0xe4, 0xe5, 0x51, 0x2a, 0xad, 0x2c, 0x1e, 0x8a, 0xa2, 0x33, 0xba, 0x62, 0x24, 0x42, 0xca, 0x55, 0x04, 0x35, 0x9a, 0xdd, 0x3e, 0xc1, 0x9c, 0xef, 0x78, 0x44, 0x64, 0xba, 0x97, 0xfc, 0x81, 0xc3, 0x99, }; static const wycheproof_xdh_test xdh_wei448_3279 = { .name = "xdh_wei448_3279", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3279_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3279_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3279_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 185 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3280 for XDH, tcId is 186 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3280_peerpubkey[] = { 0x83, 0xbe, 0x7f, 0xd9, 0x06, 0xb8, 0xd3, 0x54, 0x34, 0x57, 0xeb, 0xe5, 0x12, 0x80, 0xcc, 0xd8, 0x0b, 0xb2, 0x7a, 0xe0, 0x52, 0xf3, 0xa0, 0x3a, 0x3f, 0x2d, 0x78, 0x90, 0x28, 0xdb, 0x25, 0xe4, 0x30, 0xa8, 0xbc, 0xcc, 0x90, 0xe8, 0x37, 0x1e, 0x20, 0x76, 0x5f, 0xf4, 0x79, 0x82, 0x83, 0xfb, 0x35, 0x59, 0xde, 0xb3, 0x1c, 0x80, 0x88, 0x3a, }; static const unsigned char xdh_wei448_3280_privkey[] = { 0x30, 0xf2, 0x81, 0xd7, 0xb8, 0x24, 0xb6, 0x5f, 0x37, 0x5e, 0xb0, 0x57, 0x8f, 0xa9, 0x12, 0x30, 0x22, 0xfb, 0x58, 0xc0, 0xb0, 0xb9, 0x39, 0x88, 0x93, 0x20, 0x39, 0x46, 0x7c, 0x0e, 0x0c, 0x23, 0x03, 0x97, 0xd0, 0xa2, 0xdd, 0x67, 0xf3, 0x0a, 0x31, 0x97, 0x76, 0x1c, 0x5f, 0x42, 0x49, 0x89, 0x48, 0xe2, 0x5e, 0x3a, 0x25, 0xc3, 0x06, 0x9e, }; static const unsigned char xdh_wei448_3280_sharedsecret[] = { 0xb8, 0x45, 0xc3, 0xd7, 0xb6, 0x4a, 0x4f, 0xc8, 0xc3, 0x01, 0xef, 0xa0, 0x8b, 0x1d, 0xd6, 0x79, 0xb8, 0x50, 0x69, 0x25, 0x29, 0xe7, 0xb7, 0x2d, 0xfb, 0x6d, 0xae, 0xbe, 0x19, 0xaf, 0x5c, 0x3a, 0x4b, 0xd0, 0xad, 0xb6, 0x10, 0xd9, 0x31, 0x75, 0x47, 0xcb, 0x1e, 0x59, 0x87, 0xbe, 0x7e, 0x56, 0x20, 0xd5, 0xdb, 0xf5, 0xdc, 0x15, 0xfe, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_3280 = { .name = "xdh_wei448_3280", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3280_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3280_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3280_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 186 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3281 for XDH, tcId is 187 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3281_peerpubkey[] = { 0xce, 0xd1, 0x73, 0xd5, 0xe9, 0x1d, 0x27, 0xd1, 0x19, 0x13, 0x4e, 0x3c, 0x49, 0xa6, 0xa3, 0x23, 0x65, 0xb7, 0x8c, 0xce, 0x35, 0x29, 0xe9, 0x17, 0x1c, 0x13, 0xe4, 0x7e, 0x46, 0x1c, 0xfb, 0xfd, 0x8e, 0x77, 0xca, 0x34, 0x9d, 0x75, 0xf1, 0xdb, 0xc1, 0xc0, 0x64, 0xce, 0x72, 0x57, 0xb2, 0x0e, 0x63, 0x89, 0xa2, 0x0b, 0x6a, 0xef, 0x40, 0x3b, }; static const unsigned char xdh_wei448_3281_privkey[] = { 0x10, 0xad, 0x34, 0x79, 0x4a, 0x7d, 0x03, 0x35, 0x1b, 0xdd, 0x7e, 0xf9, 0x11, 0x25, 0x7b, 0x0c, 0x94, 0x32, 0x1f, 0xa2, 0x3c, 0xf8, 0xea, 0x60, 0x57, 0xdc, 0x47, 0xd5, 0x16, 0xe4, 0xe5, 0x5d, 0x32, 0xa3, 0x0f, 0x5a, 0xdb, 0x71, 0xdc, 0x96, 0x84, 0xeb, 0xaf, 0xfc, 0x34, 0xca, 0xfb, 0x1a, 0xc7, 0xea, 0x17, 0xe7, 0xb1, 0xb6, 0xb2, 0x8c, }; static const unsigned char xdh_wei448_3281_sharedsecret[] = { 0x99, 0xf2, 0x61, 0xb7, 0x3f, 0x1c, 0x83, 0x75, 0x13, 0x2b, 0x0b, 0x1e, 0x02, 0x8b, 0x2c, 0xe3, 0x38, 0x25, 0xf3, 0xd7, 0x3f, 0x43, 0xd5, 0xc1, 0x24, 0x4e, 0x7f, 0xbd, 0xfb, 0x03, 0x03, 0x2a, 0xe2, 0x02, 0x70, 0xc1, 0x17, 0x0c, 0x23, 0x76, 0x48, 0x9b, 0x02, 0x06, 0x3a, 0x3a, 0xc2, 0x5c, 0xbf, 0xd0, 0xaf, 0x68, 0xbc, 0xa2, 0xea, 0xda, }; static const wycheproof_xdh_test xdh_wei448_3281 = { .name = "xdh_wei448_3281", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3281_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3281_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3281_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 187 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3282 for XDH, tcId is 188 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3282_peerpubkey[] = { 0x18, 0x3f, 0x07, 0xf6, 0x5f, 0x94, 0x57, 0x8f, 0xe8, 0x30, 0x92, 0xfc, 0x2f, 0x75, 0x58, 0xba, 0x2d, 0xa6, 0x88, 0x2d, 0x29, 0xf0, 0xcc, 0x6f, 0xc9, 0x35, 0xee, 0xca, 0x2f, 0xc9, 0xb9, 0x2b, 0xc5, 0x86, 0x21, 0x6f, 0x2b, 0x07, 0xca, 0xdd, 0xe4, 0x59, 0x7a, 0x71, 0x3a, 0x4d, 0x93, 0xeb, 0x7b, 0xc5, 0x55, 0x4e, 0xd6, 0x02, 0xbf, 0x9f, }; static const unsigned char xdh_wei448_3282_privkey[] = { 0x10, 0x6a, 0x1d, 0x78, 0x39, 0x7d, 0x90, 0xa0, 0x4b, 0x84, 0x4c, 0x57, 0x78, 0x4d, 0x82, 0xac, 0xe4, 0xe9, 0xa6, 0xed, 0x25, 0x15, 0x7f, 0xac, 0x82, 0x13, 0xc3, 0x7b, 0xa9, 0xcb, 0xfc, 0x09, 0xb6, 0x01, 0x51, 0x02, 0xd8, 0x48, 0x40, 0xcf, 0xb0, 0x87, 0x81, 0x64, 0x29, 0x32, 0x71, 0x53, 0x93, 0x91, 0xfa, 0x89, 0xb4, 0xf5, 0x24, 0xb0, }; static const unsigned char xdh_wei448_3282_sharedsecret[] = { 0x85, 0xdd, 0x47, 0x7a, 0xa7, 0x6a, 0x49, 0xa5, 0xb6, 0x96, 0x7c, 0xf3, 0x57, 0x06, 0xe0, 0x2e, 0x77, 0x5a, 0x66, 0x90, 0xd5, 0xe0, 0x38, 0xb4, 0x49, 0x63, 0x48, 0x05, 0x39, 0x8b, 0x88, 0x67, 0x28, 0xbb, 0xb7, 0x37, 0x61, 0x33, 0xa3, 0x3a, 0x2d, 0x72, 0xac, 0x3d, 0x12, 0x66, 0x87, 0x0e, 0x23, 0xcc, 0x06, 0x50, 0x49, 0xcd, 0x0b, 0xab, }; static const wycheproof_xdh_test xdh_wei448_3282 = { .name = "xdh_wei448_3282", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3282_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3282_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3282_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 188 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3283 for XDH, tcId is 189 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3283_peerpubkey[] = { 0xa5, 0xe0, 0xdf, 0x95, 0xbd, 0x49, 0xd5, 0x38, 0xc0, 0x51, 0xaf, 0x55, 0x2c, 0x33, 0x9e, 0x85, 0x1d, 0x8e, 0xb7, 0xd7, 0x67, 0xb2, 0x91, 0x37, 0x9b, 0xcb, 0xab, 0xd3, 0xe3, 0x46, 0x90, 0x01, 0xf5, 0x62, 0xf5, 0xff, 0x9d, 0x36, 0x21, 0x0c, 0x3b, 0x64, 0x85, 0xf4, 0x29, 0xae, 0x6f, 0xc0, 0xcd, 0x60, 0xb2, 0x2a, 0xc1, 0x92, 0xa7, 0x3f, }; static const unsigned char xdh_wei448_3283_privkey[] = { 0xe4, 0x8a, 0x40, 0xaf, 0x2c, 0x95, 0xdc, 0xbd, 0x6b, 0xa8, 0xd4, 0x3a, 0x9c, 0x7a, 0x2a, 0x6f, 0x37, 0x52, 0x68, 0x0c, 0xf4, 0x47, 0x02, 0x9d, 0xd0, 0x25, 0xfa, 0x94, 0x49, 0xc3, 0x21, 0x1f, 0x96, 0x78, 0xea, 0xb7, 0xf8, 0x42, 0x19, 0x0f, 0xfb, 0xf9, 0xaa, 0x3e, 0xbb, 0xd1, 0xb1, 0x99, 0xa7, 0xbf, 0x2e, 0xf3, 0x8b, 0xa9, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_3283_sharedsecret[] = { 0x79, 0x5f, 0x7c, 0x3f, 0x04, 0x21, 0x3c, 0x6f, 0xbf, 0xf0, 0xa0, 0x9d, 0x3d, 0xb3, 0x2b, 0xdd, 0xc0, 0xb4, 0xb8, 0x31, 0xf0, 0x6c, 0xb0, 0xab, 0xf6, 0xdc, 0x4c, 0x40, 0xa4, 0xff, 0x1c, 0x60, 0xa9, 0xde, 0x6e, 0x2b, 0x9b, 0x55, 0x24, 0x99, 0xe0, 0x2b, 0xb8, 0xa7, 0x8c, 0x25, 0x35, 0xfe, 0x7c, 0x32, 0x44, 0xbb, 0x75, 0xe9, 0x0c, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3283 = { .name = "xdh_wei448_3283", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3283_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3283_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3283_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 189 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3284 for XDH, tcId is 190 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3284_peerpubkey[] = { 0xca, 0xfa, 0x2c, 0xa3, 0x59, 0xec, 0x03, 0xa6, 0xeb, 0x2f, 0x2c, 0x6e, 0x0c, 0xac, 0x04, 0x9d, 0x98, 0x7e, 0x12, 0x20, 0xab, 0xce, 0xf2, 0xb8, 0x47, 0xc4, 0xb8, 0xca, 0x7d, 0xfe, 0xed, 0xe7, 0x1f, 0xb1, 0x3c, 0x0d, 0xb9, 0xbf, 0x83, 0x03, 0x0f, 0xd4, 0x29, 0xc5, 0xdd, 0xfb, 0x84, 0xf4, 0x02, 0xdd, 0xbe, 0x9f, 0x41, 0x29, 0xa1, 0x83, }; static const unsigned char xdh_wei448_3284_privkey[] = { 0x38, 0xc6, 0x29, 0x6b, 0xf0, 0x9f, 0x64, 0xd2, 0xff, 0x74, 0x15, 0x96, 0x33, 0x41, 0x2c, 0x33, 0xa8, 0xf8, 0xe9, 0x74, 0xac, 0x62, 0x54, 0xbc, 0xbe, 0xc7, 0xa4, 0x6b, 0x59, 0xe5, 0x4e, 0x7a, 0x32, 0xc4, 0xee, 0x43, 0x1d, 0x49, 0xed, 0xe5, 0x65, 0x7c, 0xf1, 0x15, 0x5a, 0x6d, 0x81, 0x9f, 0xea, 0xa6, 0xd0, 0x96, 0x32, 0x04, 0x63, 0xb9, }; static const unsigned char xdh_wei448_3284_sharedsecret[] = { 0x11, 0x88, 0x29, 0x30, 0xb0, 0x70, 0x31, 0x4e, 0x8f, 0x38, 0x9e, 0x99, 0xdb, 0x01, 0x91, 0x35, 0x93, 0xc4, 0x3e, 0xef, 0xde, 0x4e, 0x3a, 0xac, 0xbb, 0x81, 0xa2, 0x01, 0xd9, 0xf9, 0xa9, 0x40, 0x3a, 0x11, 0xd1, 0x15, 0xa3, 0x1b, 0x6a, 0xc8, 0x03, 0x15, 0x55, 0xb8, 0xee, 0xaf, 0x96, 0xfc, 0x1f, 0xc6, 0x59, 0xbf, 0x40, 0x78, 0xe2, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3284 = { .name = "xdh_wei448_3284", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3284_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3284_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3284_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 190 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3285 for XDH, tcId is 191 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3285_peerpubkey[] = { 0xcf, 0xa0, 0xd6, 0xe3, 0xc9, 0xb7, 0xa1, 0x64, 0x73, 0xae, 0x83, 0x71, 0xd8, 0xc3, 0xd3, 0xbf, 0xe2, 0x08, 0xbf, 0xd6, 0xb3, 0x53, 0x8b, 0x9d, 0x4c, 0x0c, 0xfe, 0x4f, 0x0d, 0xac, 0x4c, 0x49, 0xaf, 0xac, 0x43, 0xce, 0x33, 0x7c, 0x81, 0x68, 0x5b, 0x54, 0x48, 0xdf, 0x8d, 0x06, 0x01, 0x4e, 0xf4, 0xf0, 0x1d, 0xd3, 0x86, 0xe5, 0x52, 0xd8, }; static const unsigned char xdh_wei448_3285_privkey[] = { 0xa8, 0xec, 0x40, 0xc1, 0x38, 0x22, 0x72, 0xe4, 0x84, 0x2d, 0x82, 0x12, 0x3e, 0xbd, 0x1a, 0x9c, 0x53, 0xc9, 0x6e, 0x0d, 0x53, 0x4e, 0xb0, 0x8a, 0x34, 0x0f, 0xdb, 0x78, 0x7a, 0xfa, 0xd1, 0x18, 0x8b, 0x86, 0xce, 0xfa, 0x92, 0x37, 0xfe, 0xb0, 0x9c, 0x26, 0x53, 0xa0, 0xd3, 0x51, 0x9a, 0x4e, 0x2a, 0x09, 0xaf, 0x8c, 0x25, 0x6a, 0xe8, 0x86, }; static const unsigned char xdh_wei448_3285_sharedsecret[] = { 0x02, 0xf1, 0x8b, 0x6d, 0xcf, 0xf7, 0xd0, 0x9c, 0x0e, 0x87, 0xae, 0x7c, 0xad, 0xb5, 0x9a, 0x51, 0x91, 0x20, 0xd8, 0xc0, 0xde, 0x7a, 0x2a, 0x83, 0xc9, 0x9a, 0xe5, 0x2e, 0xb2, 0x20, 0x8d, 0xc1, 0xf7, 0x02, 0x13, 0x41, 0xf5, 0xe0, 0xb7, 0xc4, 0xd9, 0x18, 0x36, 0x3d, 0x51, 0xaa, 0x4e, 0xd2, 0x55, 0xc7, 0xd6, 0x68, 0x47, 0x70, 0x05, 0x56, }; static const wycheproof_xdh_test xdh_wei448_3285 = { .name = "xdh_wei448_3285", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3285_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3285_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3285_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 191 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3286 for XDH, tcId is 192 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3286_peerpubkey[] = { 0xc0, 0xb0, 0xae, 0x5b, 0xf6, 0x44, 0xc0, 0x9d, 0xbb, 0xd3, 0x2b, 0x1b, 0xa6, 0xd0, 0xa4, 0x05, 0x58, 0xa5, 0xb9, 0xa7, 0xc2, 0xc9, 0x81, 0x3c, 0xf7, 0x7e, 0x3c, 0x22, 0x53, 0x1e, 0x79, 0xf9, 0xee, 0x3e, 0xb8, 0xec, 0x45, 0x70, 0xf1, 0xce, 0xf3, 0x94, 0x72, 0xc9, 0x70, 0x04, 0xf4, 0xda, 0x1a, 0x21, 0x32, 0xf2, 0x1a, 0x62, 0x48, 0xde, }; static const unsigned char xdh_wei448_3286_privkey[] = { 0x1c, 0x09, 0x4a, 0xa4, 0xb8, 0xd2, 0xfa, 0xe8, 0xc3, 0x93, 0xe4, 0x04, 0x49, 0x6d, 0x8f, 0x13, 0x2f, 0x88, 0xea, 0xca, 0x28, 0x27, 0xe0, 0x84, 0xc0, 0x79, 0x80, 0xa1, 0x95, 0x52, 0x32, 0xf2, 0x69, 0x54, 0x0b, 0x1e, 0x9e, 0x0a, 0x94, 0x64, 0x2e, 0x3e, 0x12, 0x67, 0x20, 0xaf, 0x2e, 0xf0, 0x29, 0x11, 0x08, 0x27, 0xc7, 0xe8, 0x27, 0xa0, }; static const unsigned char xdh_wei448_3286_sharedsecret[] = { 0xda, 0xa6, 0x6a, 0x07, 0x53, 0xa3, 0x07, 0xad, 0x3f, 0xa1, 0xd7, 0x40, 0xec, 0xa4, 0xf0, 0x52, 0x2c, 0xb7, 0xf7, 0x1d, 0xb8, 0xa8, 0x06, 0xf3, 0x20, 0x15, 0x43, 0x38, 0xf0, 0x15, 0x64, 0x89, 0x7f, 0xeb, 0xf8, 0x86, 0x0d, 0x29, 0x2e, 0x66, 0x28, 0x94, 0x22, 0x33, 0x14, 0xe2, 0x8b, 0x75, 0x07, 0xe4, 0x17, 0xf5, 0xfa, 0x90, 0xef, 0x42, }; static const wycheproof_xdh_test xdh_wei448_3286 = { .name = "xdh_wei448_3286", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3286_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3286_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3286_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 192 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3287 for XDH, tcId is 193 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3287_peerpubkey[] = { 0x5c, 0xd1, 0x6d, 0xee, 0x47, 0x1b, 0x4e, 0xb9, 0x3f, 0xd6, 0xc8, 0x9c, 0x35, 0xf9, 0x43, 0x00, 0xc0, 0xa8, 0xeb, 0x14, 0x9d, 0xfe, 0x2b, 0x86, 0xed, 0x14, 0xe9, 0xa1, 0x5f, 0x73, 0xa2, 0x14, 0x4a, 0xde, 0xed, 0x62, 0x09, 0x73, 0x93, 0x9e, 0x51, 0x7e, 0xf1, 0xe0, 0xb0, 0x7a, 0xa0, 0xfd, 0xaf, 0xff, 0xfc, 0xea, 0x47, 0xf8, 0x27, 0x0f, }; static const unsigned char xdh_wei448_3287_privkey[] = { 0x7c, 0xde, 0xe6, 0xca, 0xf1, 0xae, 0x14, 0x41, 0x2d, 0x4d, 0x36, 0x5b, 0x9f, 0x9d, 0x09, 0x04, 0x50, 0x9e, 0xb8, 0xd5, 0x89, 0x0f, 0xbc, 0x92, 0x30, 0x3b, 0xc6, 0xde, 0xd5, 0xf4, 0xff, 0x27, 0xf1, 0xc5, 0xf3, 0x1c, 0x79, 0x19, 0xcb, 0xe8, 0x34, 0xbc, 0x3c, 0xa6, 0x60, 0x07, 0x64, 0x8b, 0x80, 0x95, 0x56, 0xe0, 0x80, 0x85, 0xf6, 0xc0, }; static const unsigned char xdh_wei448_3287_sharedsecret[] = { 0x94, 0x07, 0x15, 0x78, 0x5c, 0x46, 0x06, 0x4c, 0xbb, 0xd8, 0x50, 0xca, 0x39, 0x7f, 0x1d, 0x93, 0xad, 0x85, 0x23, 0x62, 0xd5, 0xc8, 0x38, 0x9e, 0x80, 0xf3, 0xda, 0xa6, 0x3e, 0xce, 0xdb, 0x98, 0x9e, 0x44, 0x2e, 0x2e, 0x0b, 0xec, 0x9b, 0xf0, 0xc6, 0x1a, 0xa2, 0xf0, 0xb3, 0x47, 0xc8, 0xe3, 0x4d, 0xcb, 0xd8, 0xbc, 0xe5, 0x7b, 0x09, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3287 = { .name = "xdh_wei448_3287", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3287_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3287_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3287_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 193 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3288 for XDH, tcId is 194 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3288_peerpubkey[] = { 0x9a, 0x5d, 0x95, 0xf7, 0x7b, 0xd7, 0xea, 0x31, 0xae, 0x97, 0xba, 0x2d, 0xcd, 0x9e, 0x38, 0x4c, 0xbb, 0x13, 0xf9, 0x82, 0xf6, 0x4c, 0x34, 0xb4, 0xac, 0x47, 0x07, 0xc5, 0x37, 0xee, 0xc7, 0x38, 0x70, 0x10, 0x59, 0x95, 0x81, 0x14, 0x10, 0x52, 0x1e, 0xa0, 0x94, 0xe1, 0x34, 0x2f, 0xd7, 0x09, 0x2a, 0x6c, 0xb3, 0x0a, 0x3e, 0x3f, 0x85, 0x1d, }; static const unsigned char xdh_wei448_3288_privkey[] = { 0xec, 0x55, 0x44, 0x4d, 0xd9, 0x2d, 0xdb, 0x86, 0xc0, 0x18, 0x37, 0x7f, 0x27, 0x61, 0x80, 0x47, 0xe8, 0x47, 0x69, 0xff, 0xc7, 0xa0, 0xbe, 0x40, 0xa0, 0xce, 0x7a, 0x11, 0x84, 0x9c, 0xfb, 0x7b, 0x2b, 0x95, 0x98, 0x40, 0x9d, 0x2c, 0x90, 0x6d, 0xe3, 0x8a, 0x4b, 0x69, 0x25, 0x0c, 0x56, 0x00, 0x71, 0x45, 0x69, 0x92, 0xb4, 0x2f, 0xeb, 0xf0, }; static const unsigned char xdh_wei448_3288_sharedsecret[] = { 0x0b, 0x0e, 0xae, 0x19, 0xc0, 0xb7, 0x83, 0x2b, 0x9c, 0xa0, 0x1f, 0x42, 0xf2, 0xd2, 0xdf, 0xa8, 0xb7, 0x0a, 0x2d, 0x43, 0x19, 0x36, 0xde, 0x41, 0x5a, 0xfa, 0x87, 0x82, 0x44, 0xf7, 0x8c, 0x45, 0x38, 0x1d, 0x69, 0xf1, 0x14, 0x54, 0xad, 0x52, 0xa8, 0x64, 0x1e, 0x2e, 0xc7, 0xea, 0x8e, 0xd5, 0x9b, 0x7b, 0x25, 0xff, 0x89, 0x5d, 0x2d, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_3288 = { .name = "xdh_wei448_3288", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3288_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3288_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3288_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 194 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3289 for XDH, tcId is 195 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3289_peerpubkey[] = { 0x62, 0xd4, 0x3d, 0x01, 0x52, 0x6d, 0xe4, 0xba, 0x9d, 0x3c, 0x2f, 0x2b, 0xf3, 0x06, 0xb7, 0x26, 0x26, 0xf6, 0xe1, 0xcc, 0xe0, 0x4d, 0xc4, 0x44, 0xd9, 0x80, 0xd1, 0xca, 0x21, 0x46, 0x5e, 0x26, 0x0c, 0x7b, 0xb1, 0x6a, 0x03, 0xe8, 0xa1, 0xa4, 0x41, 0x1c, 0x56, 0x83, 0xb6, 0xc6, 0xbb, 0x70, 0xf4, 0x72, 0x59, 0xdd, 0x0a, 0xcb, 0xab, 0x66, }; static const unsigned char xdh_wei448_3289_privkey[] = { 0xc4, 0xba, 0x8b, 0x0c, 0xce, 0x5e, 0x04, 0xa4, 0xce, 0x3b, 0xd6, 0xe0, 0x0e, 0xee, 0xcf, 0x36, 0x35, 0x91, 0x15, 0x75, 0x83, 0x7c, 0x60, 0xca, 0xad, 0x6a, 0xc0, 0xe9, 0x5a, 0x7e, 0xac, 0xa7, 0xe0, 0x4a, 0x16, 0x2a, 0xdf, 0x08, 0xb0, 0x97, 0x68, 0x17, 0x85, 0x46, 0xcc, 0x17, 0x8a, 0x79, 0xdf, 0xd5, 0x5f, 0xf8, 0x6e, 0x4d, 0x3b, 0xc6, }; static const unsigned char xdh_wei448_3289_sharedsecret[] = { 0xe1, 0x84, 0xf6, 0xc8, 0x85, 0x0e, 0xed, 0x31, 0xeb, 0x28, 0x0f, 0x4c, 0xb9, 0xa5, 0x1b, 0x8b, 0xbe, 0x87, 0xe2, 0x08, 0x53, 0xf1, 0xb6, 0x65, 0x86, 0x78, 0xfc, 0xa0, 0xa9, 0xa3, 0x3f, 0x74, 0xd6, 0x2b, 0x36, 0x2e, 0x64, 0x3c, 0x24, 0x23, 0x3c, 0xfb, 0x44, 0x4a, 0x01, 0x0c, 0x96, 0x04, 0xec, 0x59, 0x97, 0xbd, 0xae, 0x1d, 0xeb, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3289 = { .name = "xdh_wei448_3289", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3289_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3289_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3289_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 195 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3290 for XDH, tcId is 196 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3290_peerpubkey[] = { 0xc7, 0x68, 0x07, 0x37, 0x27, 0xc7, 0x65, 0x5e, 0xdd, 0xa7, 0xfa, 0xfe, 0x7a, 0x0a, 0xd7, 0xcb, 0x06, 0xc5, 0x41, 0xfe, 0x64, 0x94, 0xb8, 0xf3, 0x37, 0x4c, 0x55, 0xa9, 0x17, 0xe5, 0xc3, 0xfc, 0xf7, 0x46, 0x71, 0xf3, 0xda, 0x77, 0x38, 0x16, 0x9e, 0x57, 0xf6, 0x8d, 0xc0, 0x32, 0x13, 0x49, 0x1c, 0x8b, 0x17, 0xc0, 0xce, 0x5a, 0x18, 0x70, }; static const unsigned char xdh_wei448_3290_privkey[] = { 0xcc, 0x0d, 0x0c, 0x74, 0x08, 0x60, 0x16, 0x60, 0x9a, 0x02, 0xb6, 0x8e, 0x7e, 0xe7, 0x31, 0xa2, 0x80, 0xd9, 0xdf, 0x60, 0x94, 0x83, 0x86, 0xdc, 0x7c, 0xd7, 0xac, 0xdd, 0xb6, 0x9e, 0xbf, 0xc9, 0xb3, 0xf9, 0x6f, 0x60, 0x33, 0xd1, 0x03, 0xd4, 0xcc, 0x08, 0x61, 0x30, 0x6b, 0x96, 0xb5, 0xb5, 0xbd, 0xf4, 0xe1, 0x22, 0x13, 0xe4, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_3290_sharedsecret[] = { 0xb7, 0xd8, 0xdb, 0xad, 0xfd, 0xcd, 0xe8, 0xa6, 0x77, 0x18, 0x06, 0xd0, 0x95, 0x87, 0x99, 0xdf, 0x01, 0x6b, 0x4e, 0xb7, 0x30, 0x94, 0x9f, 0xa3, 0x76, 0x15, 0x6c, 0x65, 0xd4, 0xe5, 0x9f, 0x43, 0x96, 0x2f, 0xad, 0x95, 0xc3, 0x4b, 0xe8, 0x62, 0xa3, 0x9d, 0x67, 0xb6, 0xd0, 0x00, 0xee, 0x26, 0xdd, 0x10, 0xd2, 0x45, 0x27, 0x29, 0x53, 0x28, }; static const wycheproof_xdh_test xdh_wei448_3290 = { .name = "xdh_wei448_3290", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3290_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3290_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3290_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 196 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3291 for XDH, tcId is 197 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3291_peerpubkey[] = { 0x43, 0x3a, 0xfd, 0xd0, 0xe0, 0x22, 0x37, 0x56, 0x87, 0x7f, 0x23, 0x81, 0x2b, 0xa1, 0x06, 0x14, 0x52, 0xb2, 0xea, 0x7b, 0xb3, 0x12, 0x87, 0xcb, 0x61, 0xc7, 0x93, 0x35, 0xbc, 0x9b, 0xe1, 0xf0, 0xa3, 0xa3, 0x4b, 0xf4, 0xb5, 0xb3, 0x5e, 0x36, 0x25, 0xe2, 0x28, 0xec, 0xeb, 0x8c, 0x6d, 0x7a, 0xea, 0x57, 0xcb, 0x18, 0xaf, 0x80, 0x8f, 0xdb, }; static const unsigned char xdh_wei448_3291_privkey[] = { 0x5c, 0x1c, 0x65, 0x76, 0x62, 0x17, 0x1f, 0x6e, 0x2f, 0xcb, 0xe1, 0xab, 0x8c, 0x94, 0x02, 0xed, 0x22, 0xf2, 0x16, 0x5d, 0xa3, 0xdd, 0x8b, 0x27, 0x04, 0x92, 0x47, 0x49, 0x07, 0x7e, 0xf8, 0x96, 0x93, 0x04, 0x5b, 0xd6, 0xc5, 0x28, 0x4e, 0x6b, 0xf6, 0x9a, 0xd1, 0x4d, 0x34, 0xe3, 0xa2, 0xb8, 0xb4, 0x31, 0x48, 0x09, 0x59, 0x20, 0x24, 0xc4, }; static const unsigned char xdh_wei448_3291_sharedsecret[] = { 0x5e, 0x11, 0x31, 0x9b, 0xad, 0xa5, 0x84, 0xd0, 0xfc, 0xfc, 0x13, 0x73, 0xb2, 0x84, 0x2b, 0x2c, 0x9a, 0x07, 0xde, 0xb2, 0x02, 0x40, 0x29, 0xab, 0xbb, 0x60, 0xb1, 0x73, 0x67, 0x1a, 0xe4, 0x7e, 0x5d, 0xb5, 0x10, 0x9b, 0x6b, 0x0f, 0x1a, 0x26, 0xbc, 0xb7, 0x2a, 0x99, 0x7e, 0x5e, 0xd4, 0x47, 0xb8, 0xf8, 0x10, 0x58, 0xdd, 0xff, 0x13, 0x66, }; static const wycheproof_xdh_test xdh_wei448_3291 = { .name = "xdh_wei448_3291", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3291_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3291_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3291_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 197 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3292 for XDH, tcId is 198 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3292_peerpubkey[] = { 0x5c, 0x24, 0xfa, 0xde, 0x43, 0x6b, 0x48, 0xe5, 0x8e, 0x11, 0x34, 0x97, 0xd6, 0x5e, 0x50, 0xa6, 0x3c, 0xaa, 0x04, 0x94, 0x06, 0xa4, 0x0f, 0x8e, 0x97, 0x2b, 0x51, 0x6c, 0x43, 0xfd, 0xdb, 0x1f, 0x13, 0xa5, 0x9f, 0x30, 0x11, 0x2c, 0x41, 0x7c, 0xde, 0x5c, 0xd6, 0x49, 0xee, 0x9c, 0xdf, 0xcf, 0x07, 0xe6, 0x67, 0x84, 0x70, 0xb6, 0xfa, 0xdb, }; static const unsigned char xdh_wei448_3292_privkey[] = { 0xb0, 0xb9, 0xe0, 0xa0, 0xe7, 0xfb, 0x7f, 0x8c, 0xee, 0x5e, 0xed, 0x31, 0x0f, 0x8b, 0x1a, 0x56, 0xed, 0x78, 0x35, 0xb7, 0xd3, 0x1e, 0x67, 0x67, 0x16, 0xe5, 0xa9, 0x4c, 0xd9, 0xa6, 0x8d, 0xde, 0x28, 0xc9, 0x46, 0xe7, 0xd2, 0xba, 0x83, 0x34, 0xd3, 0x91, 0x32, 0x80, 0x51, 0xff, 0xfd, 0xbf, 0x57, 0x44, 0x7e, 0x3a, 0xa5, 0x6f, 0xdb, 0xfe, }; static const unsigned char xdh_wei448_3292_sharedsecret[] = { 0x5b, 0x6a, 0xc4, 0xd3, 0x8f, 0x9d, 0x67, 0x22, 0xaf, 0x38, 0x87, 0x99, 0x92, 0xf5, 0x52, 0x06, 0xc2, 0x3b, 0x99, 0xe0, 0xc3, 0x02, 0x87, 0x8a, 0x37, 0x25, 0xd8, 0x95, 0xbf, 0x93, 0x5a, 0x36, 0xf3, 0x40, 0xc9, 0x02, 0x8f, 0x7c, 0x56, 0x23, 0x98, 0xba, 0x97, 0x0c, 0x1c, 0x66, 0x1b, 0x2e, 0x37, 0x93, 0xd3, 0x3a, 0x56, 0xe6, 0xab, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3292 = { .name = "xdh_wei448_3292", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3292_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3292_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3292_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 198 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3293 for XDH, tcId is 199 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3293_peerpubkey[] = { 0xb0, 0xda, 0xb2, 0xd1, 0x3d, 0xbe, 0x2b, 0xdc, 0x02, 0x84, 0x85, 0x55, 0x0c, 0xd6, 0x01, 0x2f, 0x05, 0x3b, 0xd3, 0x34, 0xe5, 0x83, 0x79, 0x66, 0x13, 0x98, 0x57, 0xa7, 0x06, 0xfe, 0xff, 0x56, 0x97, 0x44, 0xfd, 0xaf, 0xea, 0xf4, 0x23, 0x30, 0xcb, 0x68, 0xb0, 0x3f, 0x34, 0xfb, 0xb0, 0xa0, 0x44, 0x34, 0xdf, 0x1a, 0x45, 0x22, 0x1b, 0xf7, }; static const unsigned char xdh_wei448_3293_privkey[] = { 0xb4, 0x44, 0x9e, 0x88, 0x35, 0x52, 0x26, 0x79, 0x06, 0xf1, 0x53, 0xb6, 0x9e, 0x10, 0x8f, 0xe4, 0x4d, 0x03, 0xce, 0xd2, 0x2c, 0x52, 0x94, 0xca, 0xb5, 0x82, 0x0a, 0xce, 0x87, 0xab, 0x2e, 0xcf, 0x7b, 0x1e, 0x15, 0xea, 0x4f, 0x5f, 0x00, 0xef, 0x6f, 0x48, 0xfc, 0x99, 0x2c, 0xcd, 0xc7, 0xfa, 0x5e, 0xf4, 0x63, 0xf3, 0xc1, 0x48, 0x9e, 0xe5, }; static const unsigned char xdh_wei448_3293_sharedsecret[] = { 0xb5, 0x43, 0xcd, 0xdd, 0xe7, 0x44, 0x33, 0xde, 0x82, 0xad, 0xa4, 0xff, 0xa2, 0xaa, 0xe1, 0x5c, 0xf4, 0xfb, 0x34, 0xcc, 0xda, 0xe6, 0x61, 0x3a, 0x7a, 0x96, 0x1e, 0xef, 0xa6, 0xe0, 0x88, 0x7f, 0x59, 0x9e, 0x55, 0xaf, 0x54, 0x48, 0xc7, 0xbd, 0x5b, 0x01, 0xae, 0xfb, 0x47, 0xbb, 0xa8, 0xd6, 0x92, 0x4a, 0xf5, 0x12, 0x36, 0xbf, 0x93, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3293 = { .name = "xdh_wei448_3293", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3293_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3293_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3293_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 199 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3294 for XDH, tcId is 200 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3294_peerpubkey[] = { 0xc2, 0x75, 0x46, 0x67, 0x80, 0xe7, 0x56, 0x0c, 0x46, 0x6a, 0xf8, 0x66, 0xe0, 0x61, 0xf6, 0x76, 0x7d, 0xbf, 0x18, 0xb4, 0x14, 0x96, 0x40, 0x2b, 0xc1, 0x55, 0x02, 0x28, 0xa3, 0xd0, 0x5e, 0x96, 0x92, 0xb2, 0x7c, 0xcc, 0xa2, 0xb7, 0x3b, 0xa4, 0x8c, 0x06, 0x38, 0xd9, 0x5f, 0xdb, 0x54, 0x6f, 0xa8, 0xa6, 0x61, 0xbe, 0xed, 0xcb, 0xc4, 0x13, }; static const unsigned char xdh_wei448_3294_privkey[] = { 0xd4, 0xf3, 0xf2, 0xdd, 0x24, 0x56, 0x23, 0x45, 0x52, 0x99, 0xcc, 0xa0, 0x37, 0x43, 0x41, 0xaf, 0x75, 0x87, 0x70, 0xa4, 0xad, 0x2f, 0xb1, 0x92, 0x7c, 0x15, 0x07, 0x4a, 0x73, 0x46, 0xa0, 0x9f, 0x41, 0xc9, 0xd1, 0xd6, 0x91, 0x40, 0xfc, 0x81, 0xcc, 0x67, 0xc0, 0x66, 0x66, 0xee, 0x37, 0x60, 0x6a, 0xbc, 0x46, 0x9e, 0x04, 0x62, 0x2a, 0xf6, }; static const unsigned char xdh_wei448_3294_sharedsecret[] = { 0xa8, 0x37, 0xed, 0x51, 0xff, 0x99, 0x28, 0x41, 0x7e, 0x1e, 0x6b, 0x2d, 0xc9, 0x27, 0xc4, 0x4b, 0x59, 0xe1, 0xa7, 0x6d, 0xa7, 0x86, 0x4b, 0x65, 0xfd, 0x12, 0x67, 0x09, 0x82, 0x2c, 0x7d, 0x8d, 0x93, 0x9e, 0x77, 0x78, 0xdc, 0x8f, 0xd8, 0x1c, 0xd3, 0x0b, 0x6c, 0x1d, 0x62, 0x1f, 0xbc, 0x2d, 0xa0, 0x07, 0x0e, 0xc2, 0x0e, 0xdf, 0x5e, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3294 = { .name = "xdh_wei448_3294", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3294_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3294_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3294_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 200 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3295 for XDH, tcId is 201 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3295_peerpubkey[] = { 0xe8, 0x8e, 0x97, 0x65, 0xa7, 0x61, 0x4e, 0x1b, 0xb8, 0xf9, 0x7f, 0xef, 0x3b, 0x3b, 0xcb, 0x99, 0xe0, 0x5e, 0x15, 0x96, 0x1b, 0x69, 0x39, 0xf6, 0x02, 0x2e, 0x5a, 0x32, 0xc4, 0x88, 0xa8, 0x71, 0x80, 0x62, 0x93, 0xd7, 0x6e, 0x32, 0xe3, 0x93, 0x15, 0x7a, 0x95, 0xfc, 0xe8, 0xed, 0xa8, 0x34, 0x15, 0x40, 0xc4, 0xd4, 0x9c, 0xdd, 0xc3, 0x3f, }; static const unsigned char xdh_wei448_3295_privkey[] = { 0x88, 0xc6, 0x5b, 0xf5, 0xb0, 0xe2, 0x14, 0x74, 0x0d, 0xe3, 0x40, 0xf9, 0xbb, 0x56, 0x74, 0xaa, 0x9b, 0xc7, 0x1d, 0x3e, 0xdf, 0x3d, 0x6a, 0xe5, 0x1b, 0x53, 0xc3, 0x92, 0xf4, 0xe2, 0x7b, 0x82, 0x38, 0x93, 0x7e, 0x31, 0xbd, 0xa4, 0xb8, 0xaa, 0x8f, 0xf4, 0x1c, 0xe9, 0x8f, 0x45, 0x7e, 0x62, 0xfc, 0x97, 0x61, 0xb7, 0xd3, 0x2d, 0x61, 0xfc, }; static const unsigned char xdh_wei448_3295_sharedsecret[] = { 0x79, 0xc3, 0x10, 0x61, 0x37, 0x1a, 0xe6, 0xa2, 0x37, 0x42, 0x48, 0x29, 0x9c, 0x2f, 0x53, 0x2e, 0x33, 0xf4, 0x0d, 0x4e, 0x3f, 0x34, 0x18, 0xd3, 0xaa, 0x51, 0x53, 0xd9, 0x45, 0x0c, 0x3d, 0x62, 0xa6, 0xf4, 0x88, 0x30, 0x81, 0x4b, 0xb2, 0xf2, 0xe9, 0x63, 0x63, 0xb8, 0x9d, 0xe8, 0x34, 0x00, 0x68, 0x12, 0xd9, 0x41, 0xe4, 0x2d, 0xd6, 0x38, }; static const wycheproof_xdh_test xdh_wei448_3295 = { .name = "xdh_wei448_3295", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3295_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3295_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3295_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 201 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3296 for XDH, tcId is 202 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3296_peerpubkey[] = { 0x8c, 0x42, 0xb7, 0xe3, 0x7b, 0x44, 0xaf, 0xcc, 0x09, 0x01, 0x0d, 0x97, 0xad, 0x6e, 0x1b, 0x78, 0x94, 0x01, 0x3d, 0x37, 0x7c, 0x5c, 0x2f, 0x1a, 0x75, 0xe9, 0x62, 0x8d, 0xd6, 0x23, 0x91, 0x88, 0x90, 0xca, 0x5f, 0x28, 0x48, 0x82, 0xec, 0x10, 0xc9, 0x37, 0x66, 0xf8, 0xe7, 0xd6, 0xc0, 0x60, 0x55, 0x49, 0x76, 0x46, 0x0b, 0x56, 0xe6, 0x72, }; static const unsigned char xdh_wei448_3296_privkey[] = { 0x4c, 0xee, 0x71, 0x80, 0xf9, 0x3c, 0x8e, 0xb7, 0xae, 0x9e, 0x7c, 0x2a, 0xd7, 0x1c, 0x0c, 0x95, 0xb9, 0x34, 0x91, 0xc3, 0x01, 0x06, 0xd3, 0x38, 0x52, 0x0d, 0xe7, 0x4e, 0xdb, 0x9a, 0x9c, 0x62, 0x18, 0x98, 0xca, 0x56, 0xf6, 0x37, 0x61, 0x9b, 0x86, 0xbb, 0xb1, 0xef, 0xfb, 0xcd, 0xad, 0x9a, 0x08, 0x04, 0xeb, 0xca, 0x3b, 0xc7, 0x64, 0xd4, }; static const unsigned char xdh_wei448_3296_sharedsecret[] = { 0x26, 0xba, 0x56, 0x2a, 0x13, 0x81, 0x75, 0x59, 0xa2, 0x1a, 0xba, 0x7a, 0x7f, 0xfd, 0xc9, 0x24, 0xe9, 0x0d, 0xbb, 0x2c, 0xd3, 0x25, 0xb6, 0x1f, 0x8f, 0x71, 0x63, 0xa5, 0x7e, 0xe0, 0x13, 0x69, 0xa3, 0xee, 0x29, 0x7e, 0xb3, 0x98, 0xe8, 0x39, 0x3e, 0xf9, 0x3b, 0x00, 0x27, 0x66, 0x85, 0x2b, 0x18, 0x2b, 0x61, 0x68, 0xfb, 0x59, 0xf5, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_3296 = { .name = "xdh_wei448_3296", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3296_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3296_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3296_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 202 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3297 for XDH, tcId is 203 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3297_peerpubkey[] = { 0xc6, 0xfc, 0x42, 0xbb, 0x4b, 0x0e, 0xb8, 0x08, 0x16, 0xd7, 0xd2, 0xa3, 0x6d, 0x6d, 0xdc, 0xdd, 0xa2, 0x88, 0xdc, 0xb7, 0x4f, 0xf5, 0xa6, 0x08, 0x69, 0x89, 0x22, 0xe8, 0xa4, 0x36, 0x5c, 0xf1, 0x0c, 0x99, 0x63, 0x7d, 0xf5, 0x5e, 0x49, 0x13, 0x83, 0xe3, 0x37, 0x85, 0x39, 0xf9, 0x05, 0x3c, 0xae, 0xc0, 0x82, 0x00, 0xab, 0xa8, 0x85, 0x9d, }; static const unsigned char xdh_wei448_3297_privkey[] = { 0x8c, 0x94, 0x27, 0xed, 0x2a, 0x45, 0x6c, 0xad, 0x50, 0x18, 0xa7, 0xf6, 0xfb, 0xd2, 0xa3, 0x03, 0xd5, 0x8a, 0x6d, 0x90, 0xf1, 0xbc, 0x6c, 0x14, 0x82, 0x01, 0xac, 0xae, 0x16, 0x1c, 0x47, 0xbf, 0x25, 0xa0, 0x99, 0x56, 0x98, 0x8e, 0xb9, 0xdc, 0x4d, 0x25, 0xf9, 0x23, 0xcb, 0x61, 0xe1, 0x7e, 0x07, 0x4c, 0xfd, 0x76, 0x2b, 0x82, 0xdb, 0xc6, }; static const unsigned char xdh_wei448_3297_sharedsecret[] = { 0x0c, 0x38, 0xc7, 0x52, 0xcf, 0x0b, 0x55, 0x73, 0x3b, 0x27, 0xeb, 0xc4, 0xe1, 0x1a, 0x68, 0x7e, 0x61, 0x81, 0x9a, 0xef, 0x50, 0x3e, 0x40, 0xbc, 0xbb, 0xc9, 0x14, 0xd1, 0x68, 0x85, 0x97, 0x02, 0x14, 0x4b, 0x0c, 0xf8, 0xe6, 0x16, 0x7e, 0x74, 0x8b, 0xc3, 0x30, 0xc0, 0x2d, 0x14, 0xa1, 0xcb, 0x53, 0x6e, 0x79, 0xb2, 0x3b, 0x3e, 0x28, 0x46, }; static const wycheproof_xdh_test xdh_wei448_3297 = { .name = "xdh_wei448_3297", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3297_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3297_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3297_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 203 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3298 for XDH, tcId is 204 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3298_peerpubkey[] = { 0x71, 0xf3, 0xb6, 0x2f, 0xbe, 0x3c, 0xf0, 0x5f, 0xde, 0x7a, 0x1e, 0x29, 0xdf, 0x2b, 0x7d, 0x25, 0xb0, 0xbe, 0x60, 0x54, 0x63, 0x94, 0x8e, 0xb6, 0xa7, 0x8f, 0x79, 0x04, 0x1a, 0x58, 0x77, 0x2c, 0xc5, 0x2c, 0xaf, 0xa5, 0x4a, 0x3d, 0x18, 0x7d, 0xbc, 0x9e, 0xa0, 0xb9, 0x88, 0xce, 0x57, 0xa5, 0x6c, 0x50, 0x99, 0x3c, 0x19, 0x0a, 0xce, 0xc2, }; static const unsigned char xdh_wei448_3298_privkey[] = { 0x74, 0xb0, 0x8f, 0x37, 0x3f, 0xe6, 0x63, 0xd3, 0x82, 0x16, 0xbc, 0x3a, 0x29, 0xca, 0x5b, 0x43, 0x3b, 0x6f, 0x63, 0xe4, 0xbd, 0x0a, 0xfa, 0xaf, 0xb1, 0x35, 0xca, 0x13, 0x48, 0x0a, 0x96, 0xb2, 0x11, 0xae, 0xeb, 0xbe, 0x8c, 0x7f, 0x54, 0x3f, 0xf8, 0xaf, 0xe0, 0xc5, 0x7a, 0xc0, 0xcc, 0x66, 0xf0, 0x92, 0xfa, 0x32, 0x78, 0xd4, 0x1f, 0xfc, }; static const unsigned char xdh_wei448_3298_sharedsecret[] = { 0x10, 0x63, 0x07, 0x86, 0x6f, 0x10, 0x44, 0x10, 0x7a, 0xfd, 0xaa, 0xde, 0xb4, 0x4e, 0x7b, 0x33, 0x42, 0x2d, 0x0b, 0x8b, 0xbe, 0x17, 0x0d, 0x0d, 0xc0, 0x6f, 0xc5, 0xd4, 0x03, 0x51, 0x17, 0xbf, 0x24, 0xd3, 0xc6, 0x0c, 0xaa, 0xe8, 0x84, 0x9c, 0x1a, 0x89, 0x26, 0xe4, 0x8e, 0x8e, 0x8c, 0xbc, 0x19, 0xf3, 0x66, 0x2e, 0x0d, 0x02, 0x32, 0x09, }; static const wycheproof_xdh_test xdh_wei448_3298 = { .name = "xdh_wei448_3298", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3298_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3298_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3298_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 204 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3299 for XDH, tcId is 205 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3299_peerpubkey[] = { 0x16, 0x9d, 0x97, 0xbb, 0x31, 0x55, 0xa7, 0x0d, 0x50, 0xce, 0xee, 0x28, 0xb4, 0x23, 0xf2, 0x6e, 0x8e, 0x32, 0x56, 0x64, 0x9b, 0xd9, 0x90, 0x2c, 0x3c, 0xaa, 0x76, 0xd5, 0x3c, 0x40, 0xdb, 0x66, 0x12, 0x12, 0x53, 0x16, 0x1a, 0x53, 0x3e, 0x9f, 0x02, 0x83, 0x01, 0x97, 0xd4, 0x1d, 0xb3, 0xe1, 0x1c, 0x9c, 0xc2, 0xd3, 0xb3, 0x4e, 0xfe, 0x1d, }; static const unsigned char xdh_wei448_3299_privkey[] = { 0x94, 0x0c, 0xa8, 0xb8, 0x03, 0x4f, 0xe7, 0xbe, 0x8f, 0x18, 0xc5, 0x1b, 0x94, 0xbf, 0xb7, 0x69, 0x07, 0x1e, 0xf1, 0x1c, 0x8d, 0xa0, 0xab, 0x22, 0x0f, 0xbf, 0x70, 0xd2, 0x8b, 0x4c, 0xe0, 0x32, 0x67, 0x5d, 0x9b, 0xf8, 0x0b, 0xaa, 0x68, 0x9a, 0xa7, 0x92, 0x8b, 0x7d, 0x11, 0xcc, 0x1a, 0xf4, 0x80, 0x54, 0x24, 0x50, 0x76, 0xf6, 0xc1, 0xc8, }; static const unsigned char xdh_wei448_3299_sharedsecret[] = { 0xbc, 0xb2, 0xc7, 0xf5, 0xb7, 0x9f, 0x87, 0x4f, 0xbb, 0x53, 0xee, 0x23, 0x86, 0x37, 0x29, 0x55, 0x52, 0x80, 0xad, 0x03, 0xab, 0xdf, 0xa3, 0x50, 0xb0, 0x86, 0xc3, 0xf8, 0xd6, 0x58, 0xdd, 0x6e, 0xfe, 0x43, 0x08, 0x7b, 0xdc, 0x51, 0x6a, 0x10, 0xb5, 0x02, 0x26, 0x42, 0xc1, 0x20, 0xb3, 0xb2, 0x83, 0x3c, 0x7b, 0xf1, 0x35, 0xb9, 0x1a, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3299 = { .name = "xdh_wei448_3299", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3299_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3299_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3299_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 205 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3300 for XDH, tcId is 206 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3300_peerpubkey[] = { 0x68, 0x1c, 0xad, 0x6f, 0x89, 0xe7, 0xc7, 0xcc, 0x9a, 0x39, 0x9b, 0x53, 0xe0, 0x95, 0xef, 0xed, 0x7f, 0x28, 0x67, 0x71, 0x35, 0x58, 0x47, 0xfb, 0x9f, 0x2d, 0x47, 0x5a, 0x17, 0xed, 0x2c, 0xb5, 0xd4, 0x2a, 0xc3, 0xb0, 0x6a, 0x9d, 0x54, 0xef, 0xc8, 0xe0, 0x4c, 0x7e, 0xa0, 0x3d, 0xed, 0x4e, 0x0a, 0x13, 0xa8, 0x39, 0xa4, 0x18, 0x55, 0x52, }; static const unsigned char xdh_wei448_3300_privkey[] = { 0xb4, 0xfc, 0x0a, 0xd3, 0x1e, 0xe4, 0x5f, 0xe9, 0x6d, 0x78, 0xa1, 0x42, 0xfd, 0xaa, 0xee, 0xa4, 0x88, 0x74, 0xc1, 0x3e, 0x50, 0xb3, 0xcc, 0x1b, 0x21, 0x25, 0x65, 0x5b, 0x0e, 0x6c, 0xdd, 0x0f, 0x0f, 0xcf, 0x05, 0xdd, 0xe6, 0xaa, 0x24, 0x81, 0x3d, 0x89, 0xe3, 0x27, 0x7b, 0x74, 0x16, 0x98, 0x2c, 0x63, 0x90, 0x96, 0x2c, 0x58, 0x41, 0xd6, }; static const unsigned char xdh_wei448_3300_sharedsecret[] = { 0x34, 0x4f, 0x21, 0xdc, 0x85, 0xe8, 0x52, 0xe6, 0x37, 0xbb, 0x25, 0x39, 0x93, 0x63, 0xa8, 0x5f, 0x93, 0x99, 0xae, 0xdd, 0x58, 0x75, 0x1f, 0x12, 0x29, 0x54, 0x9f, 0xd5, 0x1f, 0x9b, 0xf3, 0xd4, 0xe3, 0xda, 0x85, 0xb6, 0x33, 0xe9, 0x70, 0xeb, 0xbe, 0x2c, 0xb0, 0xc3, 0x05, 0x0a, 0x8e, 0xfa, 0xd2, 0xc0, 0xdc, 0x1f, 0x12, 0xcf, 0x9e, 0x20, }; static const wycheproof_xdh_test xdh_wei448_3300 = { .name = "xdh_wei448_3300", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3300_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3300_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3300_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 206 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3301 for XDH, tcId is 207 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3301_peerpubkey[] = { 0xfc, 0xea, 0xe5, 0x5f, 0xfb, 0x73, 0xef, 0xab, 0x59, 0x91, 0x43, 0xd5, 0xec, 0xb4, 0xeb, 0x27, 0x3e, 0xac, 0x00, 0x23, 0x98, 0x32, 0x67, 0xce, 0x37, 0x31, 0xd2, 0x59, 0xc4, 0x12, 0x89, 0xa0, 0x64, 0xeb, 0x1e, 0x01, 0x96, 0xf4, 0xb4, 0x21, 0x88, 0x39, 0xd3, 0x8c, 0x2b, 0x2d, 0xa4, 0x56, 0x4d, 0x9c, 0x9c, 0x4e, 0xee, 0xb0, 0x7d, 0x73, }; static const unsigned char xdh_wei448_3301_privkey[] = { 0x98, 0x6d, 0x41, 0x1e, 0x70, 0xc6, 0x75, 0x20, 0x06, 0xdc, 0xeb, 0xa8, 0x2a, 0xeb, 0x3c, 0xf0, 0x67, 0x02, 0xc3, 0x7b, 0x47, 0x01, 0x52, 0xf9, 0x84, 0x3a, 0x0f, 0x79, 0xdc, 0xe4, 0x30, 0x83, 0xde, 0x0a, 0x5b, 0x0b, 0x7d, 0xbc, 0x8d, 0x42, 0xf1, 0x17, 0x5d, 0xa7, 0x91, 0xae, 0x4a, 0x3a, 0xb7, 0x99, 0xaa, 0x42, 0x68, 0x78, 0x64, 0xeb, }; static const unsigned char xdh_wei448_3301_sharedsecret[] = { 0x18, 0x88, 0x4d, 0x24, 0x55, 0x04, 0x78, 0xe7, 0xff, 0x6d, 0xc8, 0xa3, 0xab, 0xe2, 0x14, 0x09, 0x50, 0x1d, 0x10, 0xe5, 0xe7, 0xb3, 0xc0, 0x11, 0x4e, 0x86, 0x6f, 0xcc, 0xf3, 0x28, 0xec, 0x06, 0x8d, 0x9a, 0x71, 0xcf, 0x0c, 0x23, 0x2a, 0xb7, 0x52, 0x0b, 0xc5, 0xff, 0xda, 0xc2, 0xfd, 0x17, 0x6b, 0xf9, 0xd4, 0xc2, 0xd6, 0xd3, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3301 = { .name = "xdh_wei448_3301", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3301_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3301_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3301_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 207 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3302 for XDH, tcId is 208 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3302_peerpubkey[] = { 0xbd, 0xb6, 0xdd, 0x23, 0x57, 0x83, 0x22, 0x3c, 0xcb, 0x04, 0x71, 0x44, 0x02, 0x0b, 0xd7, 0x9b, 0xc4, 0x89, 0x94, 0xfa, 0x0a, 0x2b, 0x83, 0x40, 0x6b, 0x31, 0xf8, 0xbd, 0xe5, 0x68, 0x24, 0x19, 0xa8, 0xd4, 0xd6, 0x51, 0x9f, 0xdb, 0xaa, 0x99, 0x5b, 0x65, 0x88, 0xa7, 0x16, 0x35, 0x28, 0x5e, 0x42, 0xd8, 0x7d, 0x81, 0xb3, 0x1d, 0x7f, 0xef, }; static const unsigned char xdh_wei448_3302_privkey[] = { 0xe0, 0xb3, 0x68, 0x6e, 0x8a, 0x99, 0xb8, 0x97, 0xf2, 0xf6, 0x76, 0xbe, 0xf1, 0x2a, 0x64, 0x4e, 0x5d, 0xa5, 0x72, 0x77, 0x7f, 0x69, 0xde, 0xd3, 0x41, 0xc8, 0xf8, 0x6d, 0x1a, 0x7b, 0x46, 0x30, 0x7f, 0xa2, 0xa6, 0x31, 0x64, 0x65, 0x2a, 0x74, 0x3b, 0x32, 0x1b, 0x31, 0x9a, 0xee, 0x53, 0x48, 0xdf, 0x1e, 0xb7, 0x0e, 0xa1, 0x40, 0x30, 0xea, }; static const unsigned char xdh_wei448_3302_sharedsecret[] = { 0x41, 0xd5, 0x40, 0x37, 0xec, 0xe4, 0x86, 0xf2, 0x1d, 0x64, 0x2e, 0x39, 0xc1, 0xa3, 0x75, 0x4c, 0x1b, 0xd3, 0x72, 0x2a, 0x5f, 0x45, 0x1c, 0xf2, 0xe3, 0x06, 0x5e, 0x0b, 0x74, 0xac, 0x87, 0x86, 0x19, 0x6c, 0xe3, 0x31, 0x61, 0xb5, 0x77, 0xb2, 0x8d, 0x7b, 0x21, 0xa8, 0xfe, 0x30, 0x35, 0x50, 0xea, 0xdc, 0x70, 0xb8, 0xa5, 0xb2, 0x7e, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3302 = { .name = "xdh_wei448_3302", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3302_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3302_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3302_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 208 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3303 for XDH, tcId is 209 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3303_peerpubkey[] = { 0xa2, 0x04, 0x8b, 0xf1, 0x1e, 0x9b, 0x23, 0xc4, 0xef, 0x9c, 0xb5, 0x4e, 0x00, 0x04, 0x4a, 0x25, 0xd0, 0xfa, 0x9d, 0x79, 0x38, 0x66, 0x50, 0xb1, 0x47, 0x2b, 0x06, 0x03, 0x97, 0x89, 0xbf, 0xd6, 0x88, 0x0c, 0xb4, 0x6a, 0x16, 0x5e, 0xd4, 0xb6, 0x5f, 0x6e, 0xb7, 0xac, 0x11, 0x86, 0xae, 0x32, 0xfc, 0x49, 0x82, 0x98, 0x70, 0x4c, 0xeb, 0xf4, }; static const unsigned char xdh_wei448_3303_privkey[] = { 0x28, 0x4a, 0x13, 0xb7, 0x14, 0x6b, 0xef, 0xf2, 0x15, 0xb4, 0xb1, 0x76, 0x22, 0xe2, 0x99, 0x6b, 0xe3, 0x02, 0xb3, 0x82, 0x13, 0x7b, 0xef, 0x0f, 0x12, 0x98, 0x1a, 0xfb, 0xec, 0xb8, 0xe6, 0x32, 0x68, 0x3e, 0x14, 0x64, 0x3a, 0x21, 0x5d, 0xcf, 0x84, 0xd9, 0x66, 0x3b, 0x23, 0x1c, 0x22, 0x01, 0x79, 0x1d, 0xc6, 0xd1, 0x5a, 0xec, 0xc8, 0xf0, }; static const unsigned char xdh_wei448_3303_sharedsecret[] = { 0x5f, 0x17, 0x51, 0xad, 0xb0, 0x29, 0x11, 0x9b, 0x34, 0xb3, 0xac, 0x6a, 0x55, 0x5a, 0x87, 0x1e, 0x72, 0x9c, 0x64, 0x46, 0x94, 0x80, 0xb7, 0x28, 0x5f, 0xfe, 0x8c, 0x6d, 0x39, 0x99, 0x37, 0x73, 0xcd, 0xa2, 0x05, 0xc8, 0xe5, 0xa8, 0x5e, 0xc1, 0x62, 0xb6, 0x4e, 0x54, 0x84, 0xac, 0x3b, 0xab, 0xdf, 0xa4, 0x55, 0xb2, 0x22, 0x34, 0x3a, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3303 = { .name = "xdh_wei448_3303", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3303_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3303_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3303_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 209 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3304 for XDH, tcId is 210 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3304_peerpubkey[] = { 0x47, 0xe2, 0xf9, 0x07, 0xff, 0xc7, 0x71, 0x9f, 0x0e, 0x10, 0xae, 0x6c, 0x93, 0xa2, 0x37, 0xef, 0xd8, 0x5a, 0x73, 0x35, 0x00, 0x3a, 0x5b, 0x15, 0x8a, 0x6c, 0x63, 0xce, 0xc7, 0xcb, 0x62, 0xba, 0x50, 0x05, 0xc3, 0xfd, 0xc5, 0xc3, 0x70, 0x51, 0xac, 0x1f, 0x38, 0x1f, 0xf6, 0xa1, 0x5b, 0x58, 0xb0, 0x0c, 0x0f, 0x5e, 0xdb, 0x47, 0xa1, 0xfd, }; static const unsigned char xdh_wei448_3304_privkey[] = { 0x84, 0x99, 0x39, 0x9b, 0x48, 0x69, 0x12, 0x6f, 0x19, 0x7c, 0xe3, 0xd9, 0x5f, 0xf6, 0x54, 0x65, 0xe4, 0x73, 0x0d, 0xc1, 0x46, 0x22, 0xbb, 0x1f, 0xf8, 0x84, 0x9a, 0xcb, 0xb0, 0x11, 0x85, 0xdd, 0x53, 0x52, 0x1f, 0x99, 0xed, 0x32, 0x11, 0xfd, 0xe6, 0xd2, 0x31, 0xbf, 0xb3, 0x30, 0x13, 0x25, 0xca, 0x4c, 0xc4, 0x61, 0xf8, 0x10, 0xc5, 0xd7, }; static const unsigned char xdh_wei448_3304_sharedsecret[] = { 0x94, 0xe4, 0xc0, 0x9b, 0xde, 0x5a, 0xc9, 0x72, 0x92, 0x8c, 0xea, 0x74, 0xa0, 0x7d, 0xf4, 0x13, 0x52, 0x92, 0xc5, 0x80, 0xa8, 0x4a, 0xe4, 0x44, 0x25, 0x7f, 0xfe, 0x5c, 0xae, 0xb4, 0xd7, 0x69, 0xe3, 0x2e, 0xdb, 0x41, 0x0f, 0xdb, 0x51, 0xf8, 0x00, 0x38, 0x0d, 0xf7, 0x04, 0xbd, 0x2c, 0x4f, 0x6e, 0x32, 0xcd, 0x5d, 0x20, 0x1b, 0x56, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3304 = { .name = "xdh_wei448_3304", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3304_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3304_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3304_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 210 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3305 for XDH, tcId is 211 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3305_peerpubkey[] = { 0x6f, 0x8f, 0xd6, 0x68, 0x40, 0x33, 0x37, 0xc6, 0xa4, 0x91, 0xfb, 0x82, 0x59, 0x38, 0xa8, 0x68, 0x84, 0x36, 0x5e, 0x0c, 0x7c, 0x21, 0x77, 0x4c, 0x02, 0xa9, 0xd4, 0x33, 0x70, 0xc0, 0x10, 0xec, 0xb0, 0x2c, 0x5b, 0xc1, 0xf6, 0x9a, 0xd2, 0x48, 0x3a, 0xc1, 0xf3, 0xa2, 0x22, 0x7e, 0x91, 0x2f, 0x8b, 0x6b, 0x5d, 0x37, 0x01, 0x91, 0x8d, 0x2d, }; static const unsigned char xdh_wei448_3305_privkey[] = { 0xc8, 0x9b, 0x1c, 0x81, 0xdf, 0x51, 0x7d, 0xe2, 0xa9, 0x44, 0x4e, 0x0c, 0x01, 0xdb, 0xec, 0x8f, 0x69, 0xb6, 0x30, 0x02, 0x75, 0x4c, 0xda, 0x17, 0x3a, 0xdf, 0x30, 0x98, 0xff, 0x6b, 0xe5, 0xd9, 0x47, 0x6c, 0x86, 0x30, 0x29, 0xb8, 0x9a, 0x55, 0x11, 0xce, 0xda, 0x19, 0x9a, 0x93, 0x87, 0x52, 0x18, 0xd7, 0x75, 0x7f, 0xfc, 0xe5, 0x0c, 0xfa, }; static const unsigned char xdh_wei448_3305_sharedsecret[] = { 0xf3, 0xc3, 0x2f, 0xd5, 0xdc, 0xbe, 0xd9, 0x8b, 0x8e, 0xbd, 0xae, 0xe7, 0x2e, 0xbd, 0xa9, 0x85, 0x42, 0x12, 0x53, 0x86, 0x29, 0xad, 0x49, 0x43, 0xbb, 0x32, 0xde, 0x03, 0xbb, 0xcf, 0x61, 0xf9, 0xdf, 0x8a, 0xc3, 0x8b, 0x33, 0xa7, 0x95, 0xcd, 0xf0, 0x1e, 0x3f, 0xbe, 0xb4, 0x3f, 0x36, 0xd8, 0x00, 0x85, 0x3f, 0x18, 0xb8, 0x61, 0x96, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3305 = { .name = "xdh_wei448_3305", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3305_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3305_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3305_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 211 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3306 for XDH, tcId is 212 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3306_peerpubkey[] = { 0x42, 0xb0, 0x87, 0xd5, 0xc0, 0xee, 0x80, 0xc6, 0x83, 0x11, 0x59, 0x2c, 0xe6, 0x00, 0xbe, 0x77, 0x37, 0xce, 0x36, 0xca, 0x1b, 0x09, 0xd5, 0xa0, 0x54, 0x98, 0x70, 0x90, 0xec, 0x2e, 0x69, 0xad, 0xdd, 0xbe, 0xff, 0x91, 0x6d, 0x11, 0xc9, 0x10, 0x26, 0x55, 0x56, 0x05, 0xb7, 0x7d, 0x36, 0xfe, 0x73, 0x84, 0xfd, 0x61, 0x88, 0x64, 0xb7, 0x43, }; static const unsigned char xdh_wei448_3306_privkey[] = { 0x6c, 0xaa, 0xae, 0x34, 0x24, 0x4f, 0xf9, 0xf3, 0x94, 0x42, 0x82, 0xe4, 0x95, 0x1d, 0x33, 0x7c, 0xd2, 0xec, 0x56, 0xc1, 0x18, 0x0d, 0x71, 0x6d, 0x15, 0x21, 0xe6, 0x38, 0x06, 0x23, 0xd7, 0xf6, 0xc9, 0x9b, 0x44, 0x55, 0x8a, 0xb8, 0x9a, 0x4f, 0xbd, 0xfc, 0x19, 0x10, 0x16, 0xd1, 0x30, 0x8d, 0x3e, 0xf4, 0xf8, 0x59, 0xcc, 0xde, 0xbc, 0xc1, }; static const unsigned char xdh_wei448_3306_sharedsecret[] = { 0x8b, 0xe1, 0xe0, 0x2f, 0x5c, 0x4b, 0x54, 0xaf, 0x63, 0x60, 0xfb, 0x2f, 0x60, 0xfb, 0xbf, 0x71, 0xb1, 0xbe, 0x92, 0xeb, 0xb3, 0x01, 0x17, 0xc6, 0x3b, 0x18, 0xef, 0x41, 0xfe, 0x6f, 0x1d, 0x95, 0xa2, 0xa5, 0x7f, 0xfe, 0x0a, 0x77, 0xff, 0xff, 0xaa, 0x33, 0x01, 0x99, 0x4c, 0x60, 0x22, 0xfa, 0xf2, 0x7f, 0x2a, 0xf0, 0x6a, 0x54, 0x7b, 0x20, }; static const wycheproof_xdh_test xdh_wei448_3306 = { .name = "xdh_wei448_3306", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3306_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3306_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3306_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 212 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3307 for XDH, tcId is 213 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3307_peerpubkey[] = { 0x7b, 0x01, 0x86, 0xa1, 0x53, 0xdc, 0x52, 0x44, 0x47, 0x46, 0xdd, 0x18, 0x5b, 0x9e, 0xa2, 0x74, 0xc3, 0x97, 0x2a, 0xdb, 0x97, 0x37, 0x9f, 0x85, 0x80, 0x13, 0xda, 0x1e, 0x97, 0xa8, 0x3a, 0xf4, 0xb4, 0xd1, 0xda, 0xd2, 0xfe, 0x6d, 0xbd, 0x82, 0x3a, 0xb8, 0x28, 0x70, 0x29, 0xfc, 0x77, 0x17, 0xc8, 0xdc, 0x75, 0x10, 0xca, 0x4d, 0x45, 0x6c, }; static const unsigned char xdh_wei448_3307_privkey[] = { 0x68, 0x37, 0xe4, 0xbc, 0x8b, 0xdf, 0x43, 0xcd, 0x1a, 0x59, 0xeb, 0x1d, 0x7e, 0xe7, 0x4d, 0xa9, 0x7c, 0x5a, 0xaf, 0x7f, 0xdc, 0x89, 0x9e, 0x86, 0x07, 0x72, 0x0b, 0xd3, 0xff, 0x9f, 0x06, 0x0a, 0xcf, 0xcb, 0x3d, 0xb4, 0xec, 0x7f, 0x1e, 0x7b, 0xda, 0x47, 0x30, 0xc9, 0x72, 0xc7, 0x4c, 0x1e, 0xf3, 0x10, 0x6a, 0xfa, 0xab, 0xf3, 0x05, 0xf9, }; static const unsigned char xdh_wei448_3307_sharedsecret[] = { 0x96, 0xb3, 0x6c, 0x86, 0x51, 0x89, 0x15, 0x79, 0x93, 0x7f, 0x5c, 0x6e, 0x16, 0xd2, 0x71, 0x44, 0xa0, 0x37, 0x09, 0xb3, 0x39, 0xee, 0xda, 0xe5, 0x95, 0xb5, 0xe3, 0xbc, 0x98, 0xf2, 0xf8, 0x9f, 0xdc, 0xd7, 0xb2, 0x2c, 0x88, 0x9c, 0x60, 0xd4, 0xcb, 0xa3, 0x0b, 0x7a, 0x15, 0x07, 0x63, 0xf2, 0x92, 0xae, 0x31, 0x8b, 0xc9, 0xd0, 0x66, 0x92, }; static const wycheproof_xdh_test xdh_wei448_3307 = { .name = "xdh_wei448_3307", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3307_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3307_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3307_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 213 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3308 for XDH, tcId is 214 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3308_peerpubkey[] = { 0x07, 0xac, 0x3e, 0xdd, 0x9d, 0xaf, 0x1f, 0x5f, 0x4c, 0x8d, 0x95, 0x05, 0x66, 0xe5, 0xa0, 0x9a, 0xf8, 0x03, 0x54, 0x20, 0x12, 0x2d, 0x33, 0x55, 0xb1, 0xa7, 0x79, 0x66, 0xe8, 0x94, 0x64, 0xe4, 0xbb, 0x22, 0x19, 0x5d, 0xbd, 0x45, 0x68, 0xc0, 0xc8, 0xdb, 0x33, 0x0d, 0xf3, 0x80, 0xa8, 0xd1, 0x0b, 0xe8, 0xe7, 0x07, 0xd2, 0x41, 0xfb, 0xad, }; static const unsigned char xdh_wei448_3308_privkey[] = { 0x40, 0xee, 0x93, 0xef, 0xc8, 0x0c, 0x29, 0xea, 0xf9, 0xef, 0x1f, 0x84, 0xa9, 0x4b, 0xc2, 0xcd, 0xa8, 0xe1, 0xcb, 0x4c, 0x9d, 0x96, 0xb5, 0x91, 0x8b, 0x67, 0x3b, 0x65, 0x1d, 0xf4, 0xbd, 0x86, 0xce, 0x47, 0x78, 0x46, 0x8d, 0x6f, 0x77, 0x81, 0x93, 0x23, 0x6d, 0x74, 0x93, 0x80, 0x5f, 0xe4, 0x1e, 0x12, 0xd0, 0x87, 0x8a, 0x78, 0x88, 0xe4, }; static const unsigned char xdh_wei448_3308_sharedsecret[] = { 0xa4, 0xcf, 0x91, 0xac, 0xae, 0xac, 0xfd, 0x98, 0xcd, 0xea, 0xec, 0x54, 0xb2, 0xb9, 0x5d, 0x88, 0x51, 0xe0, 0x6b, 0xcd, 0xb0, 0x3b, 0x5b, 0x42, 0xf9, 0xc5, 0xb5, 0x97, 0xee, 0xbc, 0x35, 0x86, 0x8e, 0x48, 0x13, 0x18, 0x66, 0xc7, 0x4e, 0x9f, 0x9a, 0x15, 0xcf, 0x1b, 0x8c, 0xe5, 0x69, 0x2b, 0xc0, 0x93, 0xe7, 0x76, 0xd5, 0x50, 0xa1, 0x38, }; static const wycheproof_xdh_test xdh_wei448_3308 = { .name = "xdh_wei448_3308", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3308_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3308_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3308_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 214 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3309 for XDH, tcId is 215 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3309_peerpubkey[] = { 0x5c, 0xd9, 0x56, 0x61, 0x49, 0x5a, 0xa5, 0x05, 0xae, 0xc5, 0x5b, 0x5f, 0x93, 0xcd, 0xf0, 0x0b, 0x84, 0x56, 0xad, 0x61, 0x6e, 0x71, 0x61, 0xac, 0x2d, 0x98, 0x2e, 0x1b, 0xe8, 0x04, 0x7a, 0xaf, 0x34, 0x19, 0x75, 0xfd, 0x91, 0x57, 0xf0, 0xd0, 0xcb, 0xdd, 0x6b, 0xe5, 0x5e, 0x97, 0x10, 0x79, 0x6e, 0xf7, 0x04, 0xae, 0xf1, 0xf1, 0xfb, 0xbe, }; static const unsigned char xdh_wei448_3309_privkey[] = { 0x4c, 0xda, 0x2c, 0xe7, 0x37, 0x20, 0xce, 0x44, 0x80, 0x70, 0x8d, 0x3a, 0x25, 0xce, 0x83, 0x8b, 0xce, 0x6a, 0x92, 0x2a, 0x32, 0xf1, 0x7b, 0x8a, 0xcc, 0x42, 0xff, 0xe0, 0xe8, 0x24, 0x13, 0x69, 0xa9, 0x4b, 0xaa, 0x34, 0x61, 0x58, 0xbf, 0x2e, 0x64, 0x95, 0x6c, 0x22, 0xee, 0xeb, 0xe0, 0x33, 0x9f, 0x2d, 0x48, 0x73, 0xa1, 0x86, 0x00, 0xc1, }; static const unsigned char xdh_wei448_3309_sharedsecret[] = { 0x47, 0xc4, 0x31, 0x3f, 0xa1, 0x95, 0xc3, 0xbc, 0x87, 0x4c, 0x76, 0xc3, 0x82, 0x71, 0xc7, 0x3b, 0xe7, 0x8a, 0x26, 0x53, 0x57, 0x46, 0x45, 0xea, 0xc0, 0x17, 0x97, 0x79, 0x4e, 0x99, 0x17, 0x95, 0x2a, 0xe6, 0xba, 0x3d, 0x12, 0x28, 0x51, 0xd6, 0xd8, 0x10, 0x3f, 0x16, 0x46, 0x03, 0x25, 0xa0, 0x5a, 0x91, 0x6f, 0x81, 0xe7, 0xa0, 0x8e, 0x66, }; static const wycheproof_xdh_test xdh_wei448_3309 = { .name = "xdh_wei448_3309", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3309_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3309_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3309_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 215 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3310 for XDH, tcId is 216 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3310_peerpubkey[] = { 0xd1, 0xf8, 0x70, 0x58, 0xc7, 0x3d, 0x44, 0x60, 0xd7, 0xb0, 0xdc, 0xbc, 0xaf, 0xb2, 0xe2, 0x69, 0x8f, 0x2c, 0xb5, 0x2f, 0x6a, 0x60, 0xc7, 0xd7, 0x80, 0xaa, 0x10, 0x0b, 0xd7, 0xe2, 0x08, 0x63, 0xb5, 0xe2, 0x62, 0xf7, 0xf3, 0x0f, 0x05, 0xe4, 0x30, 0xe8, 0xaf, 0x04, 0x12, 0xe7, 0x8e, 0x43, 0x33, 0xd6, 0xf0, 0x47, 0x64, 0x9e, 0xc2, 0x43, }; static const unsigned char xdh_wei448_3310_privkey[] = { 0x00, 0x60, 0x98, 0xba, 0x9d, 0x67, 0x64, 0x4b, 0x94, 0x22, 0x10, 0xb1, 0x4d, 0x23, 0xed, 0xd2, 0xc7, 0x78, 0xeb, 0xf8, 0x94, 0x70, 0x67, 0xcd, 0x63, 0x95, 0x1a, 0xbf, 0xab, 0xdd, 0x77, 0x53, 0xff, 0xf7, 0x25, 0xb5, 0xfc, 0x5f, 0xe6, 0xd7, 0xf9, 0xa1, 0x2f, 0x49, 0x2c, 0x54, 0x56, 0x58, 0x73, 0x23, 0xa1, 0xcb, 0x1b, 0x05, 0x05, 0xef, }; static const unsigned char xdh_wei448_3310_sharedsecret[] = { 0xab, 0xfb, 0xa9, 0x4e, 0x98, 0xb0, 0xc5, 0x16, 0x4b, 0x25, 0xa8, 0xa4, 0xb9, 0xc6, 0x3a, 0x45, 0xea, 0xa6, 0xc4, 0xa8, 0x1e, 0x25, 0x4a, 0x2b, 0xb4, 0x28, 0x9f, 0xbd, 0x40, 0x3a, 0x69, 0x89, 0xe4, 0x05, 0xa5, 0xee, 0xce, 0x7c, 0x77, 0xc8, 0x66, 0x75, 0x1c, 0x00, 0xdd, 0x40, 0x13, 0x9c, 0x8c, 0xff, 0x1f, 0x48, 0x15, 0x82, 0xa0, 0xe5, }; static const wycheproof_xdh_test xdh_wei448_3310 = { .name = "xdh_wei448_3310", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3310_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3310_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3310_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 216 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3311 for XDH, tcId is 217 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3311_peerpubkey[] = { 0x73, 0xa6, 0x84, 0x20, 0xea, 0xe8, 0xb0, 0x98, 0x5e, 0xca, 0x5e, 0x2a, 0x13, 0x7d, 0x59, 0x0c, 0xeb, 0x16, 0x42, 0x02, 0xf2, 0x0a, 0x70, 0xd4, 0x2c, 0xc4, 0x9c, 0x33, 0x62, 0x8c, 0x55, 0xf2, 0x54, 0xef, 0x2e, 0xd5, 0xdd, 0x26, 0x21, 0x96, 0x36, 0x33, 0xf0, 0x8d, 0x67, 0xb2, 0xcf, 0xfe, 0x02, 0xf7, 0x39, 0x42, 0xc9, 0x48, 0x31, 0x52, }; static const unsigned char xdh_wei448_3311_privkey[] = { 0xcc, 0xc7, 0x0f, 0x6b, 0xf1, 0x65, 0x2f, 0xec, 0xb5, 0xe9, 0x47, 0x14, 0x55, 0xd9, 0x6b, 0x2f, 0x9f, 0xc4, 0x39, 0xf5, 0x52, 0xe2, 0x17, 0xd8, 0xf3, 0x08, 0x95, 0x5f, 0xab, 0x8b, 0xea, 0x9a, 0xa1, 0xa3, 0x79, 0x65, 0xe2, 0xcc, 0xea, 0x25, 0xe1, 0x98, 0x05, 0x1f, 0x38, 0xe9, 0x2d, 0x69, 0x7a, 0x03, 0x9f, 0x8d, 0xa0, 0x13, 0xf6, 0xc2, }; static const unsigned char xdh_wei448_3311_sharedsecret[] = { 0xed, 0x5a, 0xa6, 0x6c, 0xda, 0x6c, 0x0b, 0x9c, 0x6b, 0x40, 0x5e, 0x2b, 0x85, 0xca, 0x76, 0xf0, 0x4e, 0x3c, 0x82, 0x9a, 0x42, 0x6d, 0xe1, 0xf9, 0x12, 0x21, 0xa5, 0x81, 0x75, 0x68, 0x43, 0x0a, 0x8a, 0xdb, 0xfe, 0xbb, 0x87, 0xd8, 0xea, 0x4b, 0xcf, 0xd2, 0x8a, 0x50, 0xec, 0x97, 0x52, 0xb8, 0x06, 0xb4, 0xbc, 0xfe, 0x37, 0x7a, 0x65, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_3311 = { .name = "xdh_wei448_3311", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3311_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3311_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3311_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 217 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3312 for XDH, tcId is 218 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3312_peerpubkey[] = { 0xcc, 0x7e, 0xda, 0xd8, 0xab, 0x05, 0x35, 0x8a, 0x9a, 0x55, 0xe8, 0xbf, 0x20, 0xd9, 0x1e, 0x21, 0x4a, 0x67, 0x9f, 0x42, 0x78, 0x5f, 0xf0, 0x1d, 0x6d, 0xa6, 0x28, 0xee, 0xd1, 0x03, 0x7f, 0x64, 0xcc, 0xde, 0x9e, 0xa7, 0x50, 0x5d, 0x2d, 0x71, 0x20, 0xd7, 0x5b, 0xa5, 0x5b, 0x72, 0x0f, 0xef, 0xd5, 0x5c, 0xe4, 0x8e, 0xbd, 0xf2, 0xac, 0x5a, }; static const unsigned char xdh_wei448_3312_privkey[] = { 0x00, 0xf1, 0x5d, 0xf3, 0xa5, 0xc1, 0x86, 0xd3, 0x53, 0xb4, 0x80, 0xc7, 0x8a, 0x04, 0x5a, 0x77, 0xc9, 0x42, 0x00, 0x20, 0xdd, 0x43, 0xc0, 0x1f, 0x53, 0x61, 0xed, 0x26, 0xfd, 0x7d, 0x4d, 0xcf, 0x42, 0x94, 0x87, 0x0e, 0x77, 0x80, 0xad, 0xf4, 0x09, 0x9f, 0x93, 0x48, 0x72, 0x62, 0x2d, 0x30, 0x83, 0x60, 0x5c, 0xbc, 0x62, 0xb1, 0x8f, 0xd7, }; static const unsigned char xdh_wei448_3312_sharedsecret[] = { 0x04, 0xd2, 0x7f, 0x92, 0x64, 0xdb, 0x8d, 0xb7, 0x61, 0xd0, 0x5e, 0x30, 0x7f, 0xae, 0x84, 0xf2, 0x04, 0x48, 0x0f, 0x54, 0x59, 0xf9, 0xe4, 0x01, 0x30, 0xed, 0x77, 0x5c, 0x10, 0x12, 0xe6, 0x54, 0x11, 0x38, 0x08, 0x1b, 0xd8, 0xe2, 0xb0, 0x28, 0x3b, 0xfa, 0x50, 0x29, 0x57, 0x09, 0x6b, 0xdf, 0x34, 0x1e, 0x3a, 0x1f, 0x8c, 0x74, 0x82, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3312 = { .name = "xdh_wei448_3312", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3312_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3312_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3312_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 218 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3313 for XDH, tcId is 219 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3313_peerpubkey[] = { 0xa3, 0xbc, 0x34, 0xe9, 0x6d, 0x26, 0xbc, 0x60, 0x44, 0x94, 0x18, 0x0e, 0x1d, 0x71, 0x6a, 0x02, 0x32, 0x74, 0xb0, 0x2a, 0x4a, 0x0c, 0x14, 0x71, 0xc5, 0x00, 0xf3, 0x91, 0x68, 0x98, 0xd3, 0x8e, 0xaf, 0x2e, 0x40, 0xa8, 0x3e, 0xb1, 0x7e, 0xee, 0xee, 0x3b, 0xca, 0x8a, 0xf0, 0x39, 0xe5, 0x7c, 0x50, 0x02, 0x37, 0xcd, 0x23, 0x6e, 0x90, 0xae, }; static const unsigned char xdh_wei448_3313_privkey[] = { 0xc0, 0x80, 0xc5, 0xd2, 0x32, 0x28, 0xf0, 0x63, 0x50, 0x4b, 0x6d, 0x98, 0x6b, 0xfb, 0x7d, 0xef, 0xb2, 0x71, 0x1a, 0x85, 0x7d, 0xaf, 0xb3, 0x31, 0xfe, 0xfd, 0x58, 0xa6, 0x5d, 0x92, 0x01, 0xea, 0xb2, 0x51, 0xd4, 0x7f, 0x25, 0x91, 0x67, 0x08, 0x6e, 0x22, 0xe9, 0x75, 0x9e, 0xc6, 0x56, 0x13, 0x17, 0x11, 0x28, 0x7f, 0xf1, 0x8d, 0xf6, 0xde, }; static const unsigned char xdh_wei448_3313_sharedsecret[] = { 0xff, 0x93, 0x56, 0x08, 0x71, 0xd2, 0x09, 0x94, 0x0c, 0xaf, 0xca, 0xe8, 0xc3, 0x21, 0x3e, 0xaf, 0x57, 0x76, 0x0c, 0x08, 0xaa, 0x80, 0xca, 0xf1, 0x5d, 0x86, 0x9d, 0x21, 0xb4, 0xb6, 0xa5, 0xe0, 0x0f, 0x6f, 0xce, 0x49, 0xef, 0xa1, 0x0a, 0xa1, 0x27, 0x95, 0x65, 0x6a, 0x9e, 0x8c, 0xe8, 0x92, 0x44, 0x45, 0x4c, 0xd5, 0x99, 0xea, 0x74, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3313 = { .name = "xdh_wei448_3313", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3313_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3313_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3313_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 219 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3314 for XDH, tcId is 220 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3314_peerpubkey[] = { 0xdf, 0x65, 0xf6, 0x22, 0x9c, 0x4e, 0x17, 0x2e, 0x16, 0x7d, 0x7f, 0xdf, 0xa5, 0x75, 0xf6, 0xb3, 0xd2, 0x59, 0x23, 0x25, 0xbc, 0xa4, 0xc1, 0x5c, 0xcb, 0x3d, 0xbf, 0xee, 0x79, 0xc5, 0x96, 0x3d, 0xa2, 0x6d, 0x6e, 0x66, 0x7b, 0x6f, 0x5b, 0x06, 0x80, 0x14, 0x4a, 0x7a, 0x0b, 0x7d, 0x7d, 0xd3, 0x03, 0xac, 0xcb, 0x26, 0x97, 0x94, 0xb5, 0xe6, }; static const unsigned char xdh_wei448_3314_privkey[] = { 0x44, 0x75, 0x26, 0x00, 0xc4, 0x67, 0xf9, 0xd8, 0xb3, 0xdb, 0x8e, 0xbc, 0xeb, 0xd1, 0x0a, 0x4a, 0x0c, 0xbc, 0x83, 0x81, 0x90, 0x33, 0x4a, 0xb5, 0x51, 0x36, 0x1b, 0xcc, 0x6b, 0x8e, 0x4a, 0x77, 0x50, 0x4d, 0xdc, 0xf9, 0xd0, 0xf5, 0x66, 0xda, 0x25, 0xf7, 0x5f, 0x92, 0xe9, 0x74, 0xd1, 0xda, 0xde, 0x4e, 0xf0, 0x44, 0xbe, 0xd8, 0x5d, 0xc6, }; static const unsigned char xdh_wei448_3314_sharedsecret[] = { 0xc2, 0x3b, 0x16, 0x2a, 0x2b, 0x47, 0xca, 0x28, 0xdc, 0x52, 0xb9, 0x05, 0x9c, 0xf7, 0x99, 0x9a, 0x69, 0x6f, 0x02, 0x88, 0x49, 0x31, 0x77, 0xbd, 0xa2, 0xcd, 0x1f, 0x62, 0x04, 0x25, 0xb8, 0x3b, 0x7c, 0x50, 0x59, 0x96, 0xe8, 0x93, 0x18, 0x43, 0xa1, 0xd7, 0x0b, 0x33, 0x4b, 0x64, 0x57, 0x4e, 0xde, 0x95, 0x8f, 0x33, 0x1a, 0x81, 0x45, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3314 = { .name = "xdh_wei448_3314", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3314_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3314_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3314_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 220 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3315 for XDH, tcId is 221 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3315_peerpubkey[] = { 0x72, 0x11, 0x28, 0xb0, 0xf6, 0x5d, 0xbc, 0x88, 0x6f, 0xb8, 0xfd, 0x36, 0x6d, 0x68, 0xf7, 0xf9, 0xb5, 0xad, 0xf5, 0xd8, 0xbd, 0x60, 0x90, 0xff, 0x7d, 0x66, 0xc3, 0x84, 0x3f, 0xc1, 0x35, 0x6e, 0x16, 0x1b, 0x69, 0x9b, 0x97, 0x38, 0x02, 0xad, 0x2d, 0x32, 0x9d, 0x9f, 0x71, 0xeb, 0xec, 0x5e, 0xd1, 0xbd, 0x96, 0xf5, 0x30, 0xe3, 0x71, 0x56, }; static const unsigned char xdh_wei448_3315_privkey[] = { 0xc8, 0xb9, 0xca, 0xaf, 0x44, 0x7f, 0xcc, 0xf2, 0xf5, 0xce, 0x33, 0xea, 0xd9, 0xf6, 0x9d, 0x4a, 0x20, 0xd4, 0xfa, 0x61, 0xce, 0xb5, 0xf6, 0xf4, 0x6b, 0x9b, 0xa1, 0xd4, 0x31, 0x85, 0x90, 0x35, 0xc4, 0xc6, 0x5c, 0x3c, 0xcb, 0x24, 0x85, 0xff, 0xee, 0x4e, 0x2a, 0xe3, 0x2a, 0x65, 0x58, 0xcf, 0x6e, 0xa2, 0xe5, 0x7e, 0xd9, 0x89, 0x72, 0xe2, }; static const unsigned char xdh_wei448_3315_sharedsecret[] = { 0x45, 0xa5, 0x70, 0x77, 0x9f, 0xcd, 0x5f, 0x56, 0xd1, 0xfe, 0x79, 0xee, 0xd3, 0x44, 0x84, 0x1c, 0xf7, 0xdb, 0x47, 0x2e, 0x5f, 0x03, 0x9f, 0x23, 0x31, 0x06, 0x6b, 0x5b, 0x37, 0xfb, 0xe1, 0xdf, 0x1b, 0x46, 0x47, 0x2b, 0xf6, 0xe0, 0x6c, 0xcc, 0xac, 0x5e, 0xad, 0x88, 0xba, 0x60, 0x56, 0xe4, 0x55, 0xa7, 0x48, 0x28, 0x3b, 0x12, 0x65, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3315 = { .name = "xdh_wei448_3315", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3315_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3315_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3315_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 221 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3316 for XDH, tcId is 222 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3316_peerpubkey[] = { 0xbd, 0x70, 0xd8, 0xac, 0x19, 0xa9, 0x7c, 0xe5, 0x00, 0x1d, 0x0f, 0xd8, 0x14, 0xe5, 0x9f, 0xd9, 0xdb, 0xbf, 0x0a, 0xe7, 0x4e, 0x82, 0xd9, 0xb7, 0x01, 0xa3, 0x62, 0xb4, 0x59, 0x86, 0x3c, 0xf0, 0xe6, 0x4a, 0xfc, 0x7b, 0x6d, 0x2d, 0xee, 0x51, 0xff, 0xed, 0x49, 0xee, 0xe8, 0x0a, 0xc9, 0x43, 0xa1, 0x3a, 0x53, 0xcb, 0x97, 0xbe, 0xeb, 0x7c, }; static const unsigned char xdh_wei448_3316_privkey[] = { 0x38, 0xca, 0xb1, 0xc7, 0xec, 0xc2, 0xd5, 0x93, 0xe2, 0xe4, 0x6d, 0x94, 0xe6, 0x9a, 0xbf, 0x90, 0x81, 0xb7, 0x70, 0xeb, 0xfd, 0x68, 0xf7, 0x07, 0xf1, 0xdc, 0x53, 0x7b, 0x90, 0xd0, 0x50, 0x83, 0xa1, 0xbe, 0xae, 0x82, 0xe7, 0xc5, 0xbb, 0xdf, 0x47, 0x3c, 0x70, 0x05, 0x32, 0xe1, 0xda, 0xe8, 0x56, 0xa1, 0xcb, 0xcc, 0x6c, 0xa4, 0xb6, 0xc6, }; static const unsigned char xdh_wei448_3316_sharedsecret[] = { 0x91, 0x31, 0x7b, 0xe9, 0x45, 0x6d, 0xa5, 0x2a, 0x89, 0xb5, 0x91, 0x7c, 0x83, 0xe2, 0xdc, 0x39, 0xcb, 0x2c, 0x33, 0x3a, 0x7a, 0xd1, 0x85, 0xe9, 0x9d, 0xe8, 0x5c, 0xa7, 0x4f, 0x2a, 0xca, 0x3a, 0xa1, 0xd6, 0xa1, 0x03, 0x7d, 0x9b, 0x2b, 0x44, 0xfb, 0x96, 0x63, 0x61, 0x8c, 0x78, 0x8c, 0x92, 0x67, 0x80, 0x9c, 0x0b, 0xdb, 0xcf, 0xb6, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_3316 = { .name = "xdh_wei448_3316", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3316_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3316_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3316_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 222 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3317 for XDH, tcId is 223 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3317_peerpubkey[] = { 0x5e, 0xa1, 0xa7, 0xad, 0xe3, 0x1e, 0x31, 0x4d, 0x37, 0x33, 0x5c, 0x25, 0xae, 0x2b, 0x74, 0x8d, 0x8b, 0x22, 0xbf, 0x47, 0x11, 0xdb, 0xdb, 0x5e, 0xbe, 0x17, 0x3f, 0xad, 0xa1, 0x90, 0x70, 0x03, 0x7c, 0x93, 0x50, 0x15, 0x01, 0x68, 0x8b, 0xaa, 0xbc, 0x75, 0xe2, 0xdd, 0x13, 0x19, 0xf1, 0x7e, 0xaa, 0x67, 0x55, 0xf7, 0x17, 0xb9, 0x7e, 0x86, }; static const unsigned char xdh_wei448_3317_privkey[] = { 0xfc, 0x44, 0x95, 0xf0, 0x85, 0xe8, 0x25, 0xdf, 0xb3, 0x8e, 0xe3, 0x84, 0xc9, 0xff, 0x3d, 0xfd, 0x05, 0x85, 0x3d, 0x29, 0xf7, 0x39, 0xd3, 0x03, 0x3c, 0x8f, 0x53, 0x3e, 0x7f, 0xd3, 0x2c, 0xe8, 0x81, 0x04, 0x62, 0x3e, 0x8b, 0x00, 0x44, 0x83, 0x2c, 0x82, 0x52, 0x57, 0xe4, 0xb3, 0x76, 0x51, 0x59, 0x0a, 0x95, 0x19, 0x41, 0x67, 0xa8, 0xce, }; static const unsigned char xdh_wei448_3317_sharedsecret[] = { 0xe8, 0x19, 0x6e, 0x7b, 0x85, 0xe7, 0x57, 0xe2, 0x6e, 0x7a, 0xa8, 0x2c, 0x18, 0xe9, 0x6e, 0x4a, 0xec, 0x58, 0x89, 0xf0, 0xb0, 0x3a, 0xd8, 0xb6, 0x03, 0x63, 0x51, 0x14, 0x87, 0xb6, 0x79, 0x9c, 0xed, 0xb9, 0xc4, 0xc8, 0x79, 0xa9, 0xd9, 0x94, 0x6f, 0xe4, 0x33, 0x5a, 0x73, 0xf0, 0xe9, 0x6b, 0x39, 0xda, 0x7b, 0x95, 0xa4, 0xc9, 0xa9, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_3317 = { .name = "xdh_wei448_3317", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3317_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3317_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3317_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 223 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3318 for XDH, tcId is 224 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3318_peerpubkey[] = { 0x92, 0x52, 0xa3, 0xa0, 0x8e, 0x02, 0x5d, 0x2d, 0x3a, 0x2a, 0xba, 0xf1, 0xb5, 0x77, 0x70, 0x3b, 0x34, 0xc4, 0x59, 0xbd, 0x34, 0x4d, 0xb4, 0xbd, 0x75, 0x86, 0x61, 0x1f, 0x4d, 0xa1, 0x10, 0x41, 0xbe, 0xe4, 0xc3, 0xae, 0xe3, 0x3e, 0x34, 0x38, 0x10, 0xcb, 0xaf, 0x88, 0x90, 0x2e, 0xd8, 0xd3, 0xad, 0xff, 0x25, 0x9d, 0x7d, 0x3c, 0x87, 0xd9, }; static const unsigned char xdh_wei448_3318_privkey[] = { 0x28, 0x1c, 0xb9, 0xf5, 0x2a, 0xc1, 0x40, 0xc6, 0xc5, 0xa9, 0x5c, 0x01, 0xf1, 0x0d, 0x91, 0xa9, 0x32, 0x8d, 0xb2, 0x6d, 0xed, 0xb8, 0x5d, 0xa3, 0xf0, 0x8c, 0x0e, 0xe6, 0x88, 0xfb, 0xfa, 0x5c, 0x05, 0xdd, 0x2e, 0x57, 0xb3, 0x78, 0xfd, 0xe2, 0x13, 0xd3, 0x80, 0x8d, 0x2c, 0xe4, 0xd7, 0xd3, 0xa8, 0x95, 0x8e, 0x55, 0x29, 0x1c, 0x2e, 0xef, }; static const unsigned char xdh_wei448_3318_sharedsecret[] = { 0x2a, 0x01, 0xd7, 0x62, 0xe7, 0x2a, 0xdb, 0x84, 0x7a, 0x5e, 0x99, 0x4a, 0x6e, 0x1d, 0x1a, 0x21, 0x1d, 0xd9, 0xbc, 0xa1, 0x48, 0x78, 0x04, 0xb8, 0x56, 0x3f, 0xfc, 0x40, 0xa5, 0x93, 0x84, 0xce, 0xbf, 0x76, 0xb6, 0xd3, 0x41, 0x1e, 0x1a, 0x9b, 0x53, 0xd4, 0x62, 0xac, 0xab, 0xe3, 0x59, 0xd2, 0x8d, 0x13, 0x4f, 0xe3, 0xe9, 0xad, 0x41, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3318 = { .name = "xdh_wei448_3318", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3318_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3318_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3318_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 224 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3319 for XDH, tcId is 225 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3319_peerpubkey[] = { 0x44, 0x3a, 0x43, 0x33, 0xd6, 0xb7, 0x30, 0xbb, 0xf1, 0xb8, 0xd8, 0x04, 0x9b, 0x85, 0xcf, 0x64, 0x84, 0xe3, 0x92, 0x94, 0x72, 0xc1, 0x1c, 0x8a, 0x48, 0x8e, 0x91, 0x74, 0x13, 0x98, 0x92, 0x92, 0x8f, 0x58, 0xd1, 0xdd, 0x56, 0x1b, 0x23, 0x9f, 0x06, 0x9b, 0x81, 0x7c, 0x57, 0x6e, 0x8e, 0xf8, 0xa8, 0xe3, 0xd1, 0xcb, 0x30, 0x60, 0xa2, 0xe8, }; static const unsigned char xdh_wei448_3319_privkey[] = { 0xb4, 0xc0, 0xd2, 0x5c, 0xc4, 0xf1, 0x41, 0x18, 0x0f, 0xec, 0xcc, 0xdf, 0x47, 0xc0, 0xab, 0xa2, 0x6c, 0x5d, 0x4d, 0x39, 0x0b, 0x0f, 0x64, 0x51, 0xf8, 0x67, 0x85, 0xf2, 0x50, 0xeb, 0x85, 0xd3, 0x54, 0xcf, 0xd8, 0xb5, 0x26, 0x99, 0x31, 0x5c, 0xf1, 0x15, 0x35, 0x1e, 0xc8, 0x00, 0xc8, 0x41, 0xbe, 0xb5, 0x0d, 0x9a, 0x9a, 0x03, 0x71, 0xcc, }; static const unsigned char xdh_wei448_3319_sharedsecret[] = { 0x23, 0xe7, 0x37, 0x3d, 0xf1, 0x17, 0x85, 0x61, 0x2e, 0xa7, 0x48, 0x25, 0xe9, 0x34, 0xd5, 0x60, 0xbb, 0x70, 0x93, 0x2a, 0x04, 0xeb, 0x81, 0xe3, 0x6b, 0xae, 0xc1, 0x93, 0xa3, 0xb7, 0x92, 0x14, 0x08, 0xb0, 0x45, 0xab, 0xb1, 0x1f, 0x01, 0x19, 0x8c, 0x88, 0xc3, 0x90, 0x28, 0x07, 0xd7, 0x42, 0x06, 0xff, 0xc4, 0x24, 0x36, 0x20, 0x39, 0x90, }; static const wycheproof_xdh_test xdh_wei448_3319 = { .name = "xdh_wei448_3319", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3319_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3319_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3319_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 225 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3320 for XDH, tcId is 226 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3320_peerpubkey[] = { 0x11, 0x41, 0x79, 0xc8, 0x9f, 0xc4, 0x91, 0x53, 0x44, 0xd5, 0xd5, 0x3b, 0x10, 0xec, 0x30, 0x43, 0x4a, 0x54, 0x07, 0x28, 0x95, 0x73, 0xab, 0xde, 0x0e, 0x06, 0xea, 0xe9, 0x3e, 0xec, 0x47, 0x74, 0x9e, 0x98, 0xe6, 0xd2, 0xb4, 0xb5, 0x09, 0x13, 0x0c, 0x2c, 0xf5, 0x08, 0x18, 0xbd, 0xf0, 0xaa, 0x52, 0xd1, 0xaa, 0x15, 0x66, 0xd9, 0x2b, 0xf0, }; static const unsigned char xdh_wei448_3320_privkey[] = { 0xd0, 0xb6, 0xb3, 0x75, 0x58, 0x7f, 0x46, 0xa6, 0x80, 0x0a, 0xe9, 0xbd, 0x54, 0x15, 0xf9, 0x6d, 0x9e, 0x12, 0xf7, 0xdf, 0x8b, 0x6b, 0xca, 0x17, 0x18, 0x8a, 0x1c, 0xd4, 0xe3, 0x96, 0xa4, 0x70, 0xfe, 0x82, 0x96, 0xba, 0xbb, 0x8f, 0xe8, 0x44, 0x2f, 0xab, 0x1a, 0x7f, 0x1b, 0xb2, 0x6c, 0x59, 0x73, 0x94, 0x25, 0x74, 0x2b, 0x59, 0x4c, 0xdc, }; static const unsigned char xdh_wei448_3320_sharedsecret[] = { 0x2a, 0x02, 0x11, 0xb6, 0xff, 0x30, 0xf2, 0xed, 0xba, 0xa4, 0x84, 0xa3, 0x04, 0x9a, 0x18, 0xac, 0xb7, 0xcf, 0x5b, 0xfc, 0x1f, 0x75, 0x1e, 0x66, 0xcd, 0xff, 0x91, 0xa0, 0x31, 0x6a, 0x94, 0xa9, 0xf8, 0x36, 0xd8, 0x02, 0xde, 0xa1, 0x15, 0xd4, 0x8c, 0x42, 0x37, 0x23, 0x28, 0x4b, 0xf3, 0x85, 0x90, 0x94, 0xec, 0x25, 0x65, 0x11, 0xd6, 0xb9, }; static const wycheproof_xdh_test xdh_wei448_3320 = { .name = "xdh_wei448_3320", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3320_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3320_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3320_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 226 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3321 for XDH, tcId is 227 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3321_peerpubkey[] = { 0xaf, 0xfe, 0xcc, 0xdd, 0x97, 0x49, 0x98, 0xae, 0xdf, 0x47, 0xea, 0x37, 0xe5, 0x67, 0x11, 0xce, 0x4d, 0x48, 0x78, 0xa3, 0x3d, 0x42, 0x0a, 0x46, 0xf1, 0x60, 0x87, 0x7b, 0x46, 0x38, 0x28, 0xbe, 0xd2, 0x8c, 0xcb, 0x1c, 0x84, 0xfb, 0x5a, 0x8c, 0x77, 0x5a, 0xe8, 0xb3, 0x1e, 0xa0, 0x66, 0xc3, 0xea, 0xaa, 0x36, 0x2f, 0xcb, 0xd1, 0x64, 0xf2, }; static const unsigned char xdh_wei448_3321_privkey[] = { 0x9c, 0x46, 0x49, 0x53, 0x01, 0xde, 0x30, 0x3e, 0x3e, 0x76, 0xd0, 0x7c, 0xe5, 0xbc, 0x54, 0x59, 0xdc, 0x31, 0xff, 0x16, 0x8e, 0xf8, 0x90, 0x42, 0x58, 0x5b, 0x65, 0x7c, 0x7a, 0xcc, 0x12, 0x02, 0xd2, 0xfb, 0xf5, 0xd6, 0xdc, 0xa3, 0xe0, 0x2c, 0x31, 0xec, 0x0d, 0xd4, 0xd5, 0xae, 0x9b, 0x76, 0x55, 0x9e, 0x58, 0x6a, 0x6e, 0x28, 0x32, 0xf2, }; static const unsigned char xdh_wei448_3321_sharedsecret[] = { 0xd3, 0x54, 0x8f, 0x0c, 0xf8, 0xbd, 0x05, 0x8c, 0x1f, 0x7e, 0x17, 0x26, 0x2f, 0xba, 0xd4, 0x5a, 0xf7, 0xfb, 0x75, 0x04, 0xc5, 0x62, 0x26, 0x2f, 0x02, 0xaa, 0xc5, 0xd2, 0x40, 0x93, 0xf4, 0x1b, 0x61, 0x4b, 0x4e, 0x63, 0xc1, 0xc7, 0xab, 0x0d, 0x73, 0xe9, 0x51, 0xc1, 0xf2, 0x7f, 0x71, 0x4c, 0xe0, 0xce, 0xc0, 0x21, 0xc6, 0x67, 0xe7, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3321 = { .name = "xdh_wei448_3321", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3321_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3321_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3321_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 227 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3322 for XDH, tcId is 228 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3322_peerpubkey[] = { 0x1b, 0xc5, 0x15, 0xb8, 0x8a, 0xff, 0x3e, 0x8a, 0x83, 0xbe, 0x39, 0x44, 0x24, 0xe1, 0xd8, 0x05, 0x4f, 0x7b, 0xdb, 0x40, 0xa0, 0x6e, 0xb5, 0xc3, 0xc9, 0xd0, 0x7f, 0xc0, 0xa7, 0xf5, 0x70, 0x9b, 0xcc, 0xeb, 0x6d, 0xdc, 0x1d, 0x4f, 0x8d, 0x6f, 0x5c, 0xcd, 0xf0, 0x17, 0xe0, 0x77, 0x06, 0xfd, 0xd6, 0x12, 0x71, 0xb3, 0x59, 0x87, 0x22, 0x01, }; static const unsigned char xdh_wei448_3322_privkey[] = { 0xa8, 0x88, 0x61, 0x97, 0x6c, 0x6d, 0x17, 0x79, 0xfd, 0x8e, 0x17, 0x97, 0x6b, 0x4d, 0x69, 0xba, 0x76, 0x2d, 0x90, 0xc4, 0x03, 0xcd, 0xfa, 0x95, 0x8e, 0xf9, 0xa3, 0xd1, 0xb1, 0xf1, 0x9d, 0xc0, 0x17, 0x3e, 0x9d, 0x81, 0xbc, 0x68, 0x0c, 0x27, 0x6a, 0x69, 0x77, 0x11, 0xe5, 0x8b, 0x8f, 0x3b, 0x28, 0xee, 0x0b, 0x5d, 0xf5, 0x62, 0x35, 0x8f, }; static const unsigned char xdh_wei448_3322_sharedsecret[] = { 0xf4, 0xaf, 0x7d, 0x59, 0xa4, 0xeb, 0xaf, 0x9f, 0xe9, 0xc3, 0xbe, 0x54, 0x2f, 0x61, 0xc2, 0x71, 0xa2, 0xf4, 0x0f, 0x5a, 0x9b, 0x1c, 0x6d, 0xa1, 0xde, 0xf3, 0x9d, 0x93, 0x66, 0xc6, 0x95, 0xe0, 0xd9, 0x87, 0xd6, 0x4a, 0x8b, 0xa0, 0x23, 0x4d, 0x5a, 0x92, 0xe3, 0x88, 0xb9, 0xe8, 0xf3, 0xe1, 0x24, 0x94, 0x2a, 0xbd, 0x40, 0xb1, 0xfa, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3322 = { .name = "xdh_wei448_3322", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3322_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3322_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3322_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 228 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3323 for XDH, tcId is 229 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3323_peerpubkey[] = { 0x56, 0xf4, 0xcf, 0x0c, 0x6d, 0xdd, 0xf7, 0x82, 0xb7, 0x9c, 0x49, 0xef, 0x53, 0x72, 0xfc, 0xf5, 0x0d, 0x7c, 0x25, 0xb2, 0x53, 0x0f, 0x48, 0x73, 0xa0, 0xdc, 0x45, 0x0b, 0xfc, 0x82, 0xf6, 0xde, 0x9b, 0x7f, 0xf5, 0x2a, 0x4c, 0xe7, 0x53, 0x48, 0x39, 0x90, 0x21, 0x9d, 0xef, 0xf9, 0x98, 0x5d, 0xff, 0x38, 0x33, 0x23, 0x8f, 0x19, 0xaf, 0x37, }; static const unsigned char xdh_wei448_3323_privkey[] = { 0x10, 0xc8, 0x41, 0x04, 0xbf, 0x5c, 0xce, 0x41, 0xee, 0xc1, 0x43, 0xe4, 0xfe, 0x02, 0xb6, 0xca, 0x5a, 0x87, 0x54, 0x03, 0x4a, 0x46, 0xa3, 0x13, 0xa4, 0x8d, 0xa0, 0x6c, 0xba, 0x9f, 0x04, 0xc8, 0x4e, 0x3d, 0xe6, 0x35, 0x67, 0x3f, 0xbb, 0xb5, 0x0d, 0xe2, 0x78, 0x30, 0x30, 0x72, 0x97, 0x15, 0x9b, 0x91, 0x35, 0xf0, 0x28, 0xc3, 0x4a, 0x85, }; static const unsigned char xdh_wei448_3323_sharedsecret[] = { 0x41, 0x54, 0x8c, 0xe8, 0x0d, 0x1c, 0x09, 0xe6, 0x90, 0x3e, 0xa7, 0xb1, 0x8c, 0xc5, 0xb0, 0xb2, 0x68, 0xcb, 0x24, 0xb1, 0x2a, 0xaf, 0xd2, 0x2f, 0xd9, 0x16, 0xff, 0x40, 0x60, 0xd8, 0x9a, 0x12, 0x30, 0x22, 0xfa, 0x95, 0x08, 0x83, 0x6a, 0x08, 0x26, 0x95, 0xf5, 0x4a, 0xb5, 0x8b, 0xcc, 0x20, 0x24, 0xc9, 0x31, 0x6c, 0xe1, 0xe3, 0x2b, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3323 = { .name = "xdh_wei448_3323", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3323_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3323_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3323_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 229 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3324 for XDH, tcId is 230 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3324_peerpubkey[] = { 0x43, 0x03, 0xa6, 0x39, 0xa2, 0xe1, 0x68, 0x1c, 0xc9, 0x34, 0x5f, 0x86, 0x16, 0xc3, 0xb5, 0x03, 0x9a, 0x18, 0x89, 0x71, 0x35, 0xfc, 0x68, 0x0a, 0xd9, 0x11, 0x31, 0x6f, 0xba, 0x21, 0xba, 0x7d, 0x34, 0x12, 0xf7, 0x18, 0xe3, 0x9f, 0x4e, 0x3b, 0xfe, 0xe2, 0x75, 0x82, 0xff, 0x5f, 0xf1, 0x53, 0xa6, 0xe5, 0xbe, 0x18, 0x6d, 0x92, 0x45, 0xe0, }; static const unsigned char xdh_wei448_3324_privkey[] = { 0x80, 0xc8, 0x56, 0x04, 0x0c, 0xd9, 0x01, 0x13, 0xfa, 0x51, 0xc6, 0x48, 0xfd, 0x39, 0x6e, 0x76, 0x73, 0x29, 0xbc, 0x10, 0xbb, 0x6e, 0xbd, 0x8a, 0xfb, 0x41, 0xf5, 0x05, 0x5e, 0x84, 0x5f, 0x66, 0x8e, 0xd2, 0x92, 0xec, 0xec, 0xa8, 0x4d, 0x5f, 0xfb, 0xb3, 0xf7, 0x70, 0xe0, 0xb7, 0x44, 0xaf, 0xa2, 0x8e, 0x03, 0x9f, 0xf6, 0xee, 0x55, 0x91, }; static const unsigned char xdh_wei448_3324_sharedsecret[] = { 0x30, 0x75, 0x2a, 0x13, 0xe1, 0x7b, 0x32, 0xc9, 0xf9, 0xce, 0xdb, 0x9c, 0x01, 0x2e, 0xea, 0x63, 0x97, 0x00, 0xf2, 0x70, 0xbf, 0x6a, 0x8d, 0xf3, 0x50, 0x52, 0x1c, 0x54, 0xb1, 0x26, 0x40, 0x42, 0x47, 0xdc, 0x68, 0xfc, 0xd0, 0x49, 0x3a, 0xf6, 0x1e, 0x97, 0xb9, 0xf6, 0xdb, 0xff, 0xfa, 0xad, 0x1a, 0x88, 0x35, 0xa5, 0x6f, 0x13, 0x30, 0x22, }; static const wycheproof_xdh_test xdh_wei448_3324 = { .name = "xdh_wei448_3324", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3324_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3324_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3324_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 230 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3325 for XDH, tcId is 231 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3325_peerpubkey[] = { 0xb8, 0xd2, 0x9b, 0xc0, 0x8c, 0x77, 0xbd, 0xcb, 0xb3, 0x2d, 0xd4, 0x60, 0x57, 0x5f, 0x0d, 0xc3, 0xb8, 0xef, 0x5e, 0x08, 0x87, 0x51, 0xd4, 0x50, 0x6a, 0x8f, 0x16, 0x6e, 0x7f, 0x34, 0x02, 0xaa, 0x19, 0x1a, 0x7a, 0xde, 0x82, 0x49, 0xa2, 0x75, 0x9d, 0xfe, 0x70, 0x93, 0xac, 0xef, 0xef, 0xaf, 0x04, 0x72, 0x27, 0x77, 0xff, 0x5f, 0x84, 0xf5, }; static const unsigned char xdh_wei448_3325_privkey[] = { 0xcc, 0xfb, 0x76, 0xa8, 0x2b, 0x43, 0x07, 0xe5, 0x61, 0xe9, 0xf7, 0xf4, 0x2b, 0x61, 0xb1, 0x88, 0x14, 0xe7, 0x8e, 0xa2, 0x00, 0x3f, 0x21, 0xf0, 0xcc, 0x7b, 0x92, 0xb4, 0x46, 0x23, 0xbd, 0x07, 0xe3, 0x1a, 0x77, 0x61, 0x92, 0x06, 0x32, 0x4f, 0xd1, 0x66, 0x28, 0xc5, 0x54, 0x37, 0x65, 0xf6, 0xde, 0x44, 0x29, 0x2a, 0x11, 0xf1, 0x50, 0x84, }; static const unsigned char xdh_wei448_3325_sharedsecret[] = { 0xb9, 0x80, 0x60, 0x2b, 0x7f, 0xce, 0x7c, 0x33, 0xdd, 0x25, 0x4a, 0x32, 0x8a, 0x97, 0xe2, 0x33, 0x30, 0x85, 0x79, 0xb4, 0x3c, 0x40, 0xb4, 0x75, 0x94, 0x2f, 0x75, 0xdb, 0xb1, 0xc7, 0x60, 0x77, 0xe6, 0x1f, 0x4c, 0xff, 0x78, 0xde, 0x26, 0xd4, 0xc1, 0x8e, 0x7f, 0xd5, 0x6c, 0x24, 0x67, 0x6e, 0xc2, 0xa3, 0xe3, 0x0c, 0xbb, 0x0c, 0xf4, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3325 = { .name = "xdh_wei448_3325", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3325_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3325_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3325_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 231 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3326 for XDH, tcId is 232 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3326_peerpubkey[] = { 0x3e, 0x61, 0x64, 0xdb, 0x9f, 0x9e, 0x92, 0x74, 0xc9, 0xb8, 0xef, 0x2c, 0xfd, 0xab, 0x4c, 0xa0, 0xf5, 0x67, 0xd3, 0xf1, 0x5b, 0x33, 0xb3, 0xf5, 0x25, 0x46, 0x62, 0x96, 0x64, 0x89, 0x05, 0xd8, 0x51, 0x46, 0xbd, 0x6f, 0x9b, 0xfc, 0x63, 0x72, 0x5c, 0x22, 0x34, 0xf1, 0x8f, 0x21, 0xfd, 0x3e, 0xb3, 0x6f, 0x54, 0x06, 0xf5, 0xd0, 0xd1, 0x01, }; static const unsigned char xdh_wei448_3326_privkey[] = { 0xd8, 0x3c, 0x17, 0xb9, 0x3d, 0xb4, 0xf2, 0x9f, 0xfc, 0x95, 0x4f, 0x8e, 0x36, 0x37, 0xd3, 0x52, 0x04, 0x19, 0x20, 0xf6, 0x8b, 0xa8, 0x91, 0x4e, 0x40, 0x50, 0x31, 0x8c, 0xcd, 0xd3, 0xc6, 0xc3, 0x40, 0x2c, 0x64, 0x1a, 0x56, 0x67, 0x3d, 0x72, 0x72, 0x77, 0x74, 0x35, 0x7a, 0x82, 0x64, 0x85, 0xa8, 0x00, 0xa0, 0xa0, 0x06, 0xdf, 0x8e, 0x9c, }; static const unsigned char xdh_wei448_3326_sharedsecret[] = { 0x84, 0xef, 0xdc, 0x92, 0x07, 0x1a, 0xb9, 0xa8, 0xc4, 0xbd, 0xa2, 0x09, 0xa7, 0x0b, 0x7d, 0xf1, 0x15, 0x4e, 0xc6, 0x73, 0xae, 0x5d, 0x44, 0xdf, 0x01, 0x46, 0x0d, 0x2b, 0x37, 0x5e, 0x3a, 0x5e, 0xc5, 0x1b, 0x48, 0x5a, 0xb7, 0xb4, 0xd4, 0x49, 0xe9, 0x90, 0xc0, 0xe4, 0xe8, 0x2b, 0xd3, 0x38, 0xa1, 0x08, 0x91, 0x0f, 0x0a, 0x49, 0xed, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_3326 = { .name = "xdh_wei448_3326", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3326_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3326_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3326_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 232 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3327 for XDH, tcId is 233 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3327_peerpubkey[] = { 0x3c, 0x84, 0x5e, 0x04, 0x5d, 0xd2, 0x1f, 0x7f, 0x8e, 0x21, 0x85, 0xb6, 0xb6, 0x88, 0x4f, 0x06, 0x2b, 0x52, 0xda, 0x23, 0x63, 0x78, 0xd9, 0x0a, 0x5a, 0x87, 0x3f, 0xc8, 0x4a, 0x7a, 0x6e, 0x65, 0x26, 0x50, 0x08, 0xf4, 0x5b, 0x43, 0xcf, 0x27, 0x50, 0xa2, 0x47, 0x6b, 0xef, 0x65, 0x7c, 0x34, 0x04, 0x55, 0xdc, 0x9f, 0xae, 0x3d, 0xbb, 0x05, }; static const unsigned char xdh_wei448_3327_privkey[] = { 0x3c, 0x08, 0x7d, 0xf1, 0x21, 0xe1, 0x39, 0x54, 0xe3, 0xbb, 0x66, 0xca, 0xc9, 0x2a, 0x56, 0x18, 0xf0, 0x94, 0x01, 0x68, 0x97, 0x62, 0xdd, 0xc7, 0x10, 0x26, 0x36, 0xcc, 0xb0, 0x89, 0x4f, 0xf2, 0xfe, 0xdd, 0x94, 0x5f, 0x09, 0x64, 0x81, 0x49, 0xd9, 0x9a, 0x3e, 0xd7, 0xc7, 0xba, 0x0f, 0x08, 0xde, 0xaf, 0x52, 0x07, 0x4d, 0xd2, 0xfc, 0x89, }; static const unsigned char xdh_wei448_3327_sharedsecret[] = { 0x41, 0xd6, 0x94, 0x37, 0x44, 0xa7, 0xc0, 0xf8, 0x9e, 0x91, 0xc7, 0x02, 0x01, 0x82, 0x3d, 0x13, 0x3c, 0xa6, 0xa3, 0x2d, 0x08, 0xe8, 0xba, 0x6a, 0xc9, 0x5c, 0x48, 0xea, 0x6b, 0x37, 0x2d, 0xa0, 0x79, 0x6e, 0x63, 0x24, 0xc8, 0xff, 0x68, 0x22, 0xac, 0xbe, 0x3b, 0x1d, 0xe4, 0x60, 0x81, 0x79, 0x9c, 0x04, 0x48, 0xcf, 0xa3, 0x72, 0x6d, 0x7c, }; static const wycheproof_xdh_test xdh_wei448_3327 = { .name = "xdh_wei448_3327", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3327_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3327_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3327_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 233 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3328 for XDH, tcId is 234 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3328_peerpubkey[] = { 0xec, 0x39, 0x42, 0xb9, 0x47, 0x94, 0x7a, 0x05, 0x31, 0x67, 0x24, 0xe6, 0xb2, 0x0e, 0x50, 0xc9, 0xa9, 0x30, 0x5e, 0x9d, 0xc3, 0x5a, 0x4a, 0x06, 0x3f, 0xf6, 0xfe, 0xd3, 0x80, 0x06, 0x49, 0x4d, 0x2b, 0x20, 0xbd, 0xc9, 0x83, 0xb0, 0x35, 0x19, 0xaa, 0xf0, 0x38, 0xed, 0x8d, 0xed, 0x60, 0xb9, 0x30, 0x2b, 0x36, 0x3d, 0x34, 0x4c, 0x2a, 0x37, }; static const unsigned char xdh_wei448_3328_privkey[] = { 0x48, 0x1e, 0x7b, 0x28, 0x5a, 0x51, 0x20, 0x5a, 0xf9, 0xf1, 0xd1, 0x0a, 0xa9, 0x40, 0xe7, 0xe4, 0x7e, 0x32, 0x6e, 0xf7, 0x36, 0x6c, 0x90, 0x7d, 0x74, 0xc6, 0x59, 0x8a, 0x23, 0x5c, 0x0f, 0x27, 0xeb, 0x04, 0xef, 0xcf, 0xde, 0x78, 0x9b, 0x53, 0x04, 0x0c, 0x50, 0x1e, 0xae, 0xc5, 0x0f, 0x01, 0xdc, 0xdb, 0x3c, 0xe6, 0xf9, 0xe2, 0x92, 0x8b, }; static const unsigned char xdh_wei448_3328_sharedsecret[] = { 0x04, 0xd6, 0xb7, 0xfa, 0xb7, 0xde, 0x07, 0x39, 0xe4, 0xeb, 0x4c, 0x5f, 0x37, 0xde, 0xef, 0x59, 0x01, 0x67, 0xc8, 0x04, 0xa9, 0x58, 0xf9, 0x9b, 0xd1, 0x41, 0x02, 0xda, 0x44, 0x49, 0x09, 0x63, 0xe0, 0x11, 0x9a, 0x75, 0xb8, 0x43, 0x62, 0xcc, 0x3a, 0x19, 0x5e, 0x0b, 0x24, 0xa8, 0xfd, 0x71, 0x3a, 0x45, 0x03, 0x80, 0x80, 0x38, 0x3d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3328 = { .name = "xdh_wei448_3328", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3328_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3328_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3328_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 234 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3329 for XDH, tcId is 235 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3329_peerpubkey[] = { 0xfe, 0x29, 0xe8, 0x2e, 0x30, 0x86, 0xce, 0xed, 0x02, 0x29, 0xf6, 0x3e, 0x68, 0x03, 0xd9, 0x86, 0x41, 0x14, 0xd2, 0x66, 0xb0, 0x1d, 0x77, 0x6d, 0x8f, 0xf7, 0xb8, 0x9e, 0x5e, 0x64, 0xac, 0x47, 0x1c, 0x00, 0x4e, 0x3a, 0x99, 0xcb, 0x16, 0xcf, 0x94, 0xe6, 0xf0, 0x49, 0x3e, 0xe3, 0x53, 0x25, 0xe6, 0x9d, 0x9e, 0x1f, 0x8c, 0xbb, 0x12, 0x3d, }; static const unsigned char xdh_wei448_3329_privkey[] = { 0x50, 0x0f, 0xc2, 0x83, 0x89, 0x9a, 0x14, 0xc9, 0x35, 0x42, 0x8b, 0x14, 0x81, 0x71, 0xbb, 0xcd, 0x55, 0x34, 0x1d, 0xad, 0x96, 0xae, 0xea, 0x5e, 0x4a, 0xda, 0x76, 0xe3, 0x78, 0x29, 0x07, 0x08, 0xbf, 0x4f, 0x8f, 0x4e, 0xbb, 0x8c, 0x0b, 0x14, 0x78, 0x95, 0x61, 0xd2, 0x14, 0xb9, 0x9b, 0x99, 0x8b, 0x26, 0xf2, 0x3c, 0xd5, 0x53, 0x82, 0x9c, }; static const unsigned char xdh_wei448_3329_sharedsecret[] = { 0x85, 0x79, 0x2e, 0xec, 0x0e, 0x00, 0xae, 0x19, 0x06, 0x9b, 0x15, 0x47, 0xc8, 0xef, 0x7c, 0x68, 0x18, 0x59, 0x3b, 0x50, 0xf9, 0xb5, 0x3a, 0x18, 0x9d, 0x69, 0xea, 0x46, 0x9a, 0x3b, 0x49, 0x34, 0x2e, 0x5b, 0x4b, 0x37, 0x19, 0x4d, 0x42, 0xd8, 0x9a, 0xf2, 0x1a, 0x36, 0xc7, 0xf3, 0x7f, 0xb1, 0x2b, 0x21, 0x3b, 0x32, 0xff, 0x39, 0x0d, 0x02, }; static const wycheproof_xdh_test xdh_wei448_3329 = { .name = "xdh_wei448_3329", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3329_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3329_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3329_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 235 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3330 for XDH, tcId is 236 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3330_peerpubkey[] = { 0x2c, 0xfa, 0x4d, 0x92, 0xdd, 0x10, 0xf4, 0xf4, 0xf1, 0x9e, 0x42, 0xd9, 0x25, 0x28, 0xb4, 0x4e, 0x86, 0xa9, 0x78, 0x8c, 0xb9, 0x32, 0x6f, 0x9c, 0x43, 0x35, 0x2d, 0x41, 0xe2, 0xa2, 0x0e, 0x95, 0xba, 0x41, 0x6c, 0x76, 0xf3, 0x27, 0x13, 0x76, 0xa5, 0xef, 0xc1, 0xd4, 0x89, 0xa0, 0x21, 0x8b, 0xed, 0xa1, 0x35, 0xd5, 0xb4, 0x9a, 0xd0, 0x5c, }; static const unsigned char xdh_wei448_3330_privkey[] = { 0x94, 0x4d, 0x70, 0x46, 0x05, 0xc0, 0xb9, 0xa3, 0xe5, 0xef, 0xa5, 0xbf, 0x02, 0xda, 0xab, 0x42, 0xf7, 0xe0, 0x00, 0x25, 0x29, 0xc7, 0x30, 0x24, 0x60, 0x83, 0x60, 0xad, 0xf5, 0x88, 0x4a, 0x86, 0x49, 0xa8, 0x08, 0xd7, 0x91, 0x6e, 0x20, 0x5e, 0x1f, 0x4a, 0x1c, 0x36, 0xb3, 0xed, 0xa9, 0xfb, 0x21, 0x5e, 0x22, 0x31, 0xa7, 0x21, 0x4b, 0x8f, }; static const unsigned char xdh_wei448_3330_sharedsecret[] = { 0xbe, 0xc8, 0x91, 0x62, 0x35, 0x34, 0x2d, 0x5a, 0x63, 0x81, 0x84, 0x7f, 0xc1, 0x09, 0x73, 0x2d, 0x68, 0xe2, 0x6d, 0x0f, 0xff, 0x87, 0x8c, 0xd2, 0x68, 0xb9, 0x82, 0x13, 0xac, 0x78, 0x5e, 0x26, 0x8f, 0xb2, 0x31, 0x94, 0xe3, 0xbf, 0xd7, 0x01, 0x0f, 0xff, 0x1b, 0x2b, 0x1a, 0x43, 0x82, 0x9a, 0x16, 0x9c, 0x0e, 0x1a, 0xf0, 0x8c, 0x4f, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3330 = { .name = "xdh_wei448_3330", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3330_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3330_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3330_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 236 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3331 for XDH, tcId is 237 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3331_peerpubkey[] = { 0xe4, 0xf2, 0xc8, 0xbf, 0xf8, 0x7d, 0x70, 0xcf, 0xb1, 0xbe, 0xe7, 0xf4, 0x8c, 0x3f, 0x63, 0xf5, 0x99, 0x56, 0x89, 0xdb, 0x27, 0xb6, 0x83, 0x03, 0x99, 0x43, 0xc7, 0x0d, 0x98, 0x2e, 0x3a, 0x0a, 0x19, 0xd5, 0x54, 0xf0, 0x39, 0x53, 0xb7, 0xd9, 0x70, 0xa2, 0x97, 0xd6, 0xbd, 0x65, 0xc2, 0x89, 0x30, 0x36, 0x6e, 0x67, 0x92, 0x82, 0x2d, 0x62, }; static const unsigned char xdh_wei448_3331_privkey[] = { 0xec, 0x38, 0xa3, 0x72, 0x22, 0xb8, 0x13, 0x84, 0x8f, 0x31, 0x2c, 0xe7, 0x64, 0x4f, 0x69, 0xea, 0xf9, 0x62, 0x4d, 0x2c, 0x13, 0x68, 0x5d, 0x35, 0x0b, 0x46, 0x9c, 0x02, 0xd4, 0x30, 0xa0, 0x2f, 0xa0, 0xbe, 0xa6, 0x54, 0x58, 0xb4, 0x42, 0x7c, 0x74, 0xff, 0x49, 0xc1, 0xeb, 0xcb, 0x1d, 0xfa, 0x07, 0x3b, 0x8e, 0xb3, 0xb8, 0x07, 0xc7, 0x94, }; static const unsigned char xdh_wei448_3331_sharedsecret[] = { 0x61, 0x34, 0x5e, 0x76, 0x39, 0x62, 0x46, 0x13, 0xbd, 0xbd, 0xf0, 0x69, 0x83, 0xf2, 0x55, 0xbc, 0xd6, 0x76, 0xa7, 0x65, 0x38, 0x2a, 0xa4, 0xf3, 0x76, 0xe2, 0x3b, 0xb5, 0x3a, 0x7c, 0x1a, 0x5b, 0xfc, 0xc9, 0x0d, 0x5a, 0x79, 0xa9, 0xef, 0xff, 0x13, 0x40, 0x49, 0x0e, 0x58, 0xda, 0xd3, 0x6b, 0xfd, 0x85, 0xd6, 0x56, 0x2b, 0x03, 0xb8, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3331 = { .name = "xdh_wei448_3331", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3331_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3331_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3331_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 237 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3332 for XDH, tcId is 238 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3332_peerpubkey[] = { 0x91, 0xc7, 0xe2, 0xf3, 0xf1, 0x8b, 0x66, 0x0a, 0x3b, 0xcc, 0x10, 0x7a, 0xc1, 0x0e, 0x6f, 0x4b, 0x58, 0xfd, 0x8e, 0xf9, 0xc5, 0x7e, 0xad, 0x82, 0x39, 0x4c, 0x99, 0xff, 0x89, 0xb0, 0x69, 0x53, 0xf4, 0xfb, 0xd3, 0x99, 0x7b, 0xcb, 0xfd, 0x3f, 0x78, 0xf2, 0x8f, 0x0b, 0x0b, 0x34, 0x8a, 0xf4, 0xa3, 0x5a, 0x7f, 0x35, 0x1a, 0x29, 0xf0, 0x7d, }; static const unsigned char xdh_wei448_3332_privkey[] = { 0xf4, 0x97, 0x0a, 0x04, 0xbf, 0x57, 0xaf, 0xa4, 0x65, 0x70, 0x71, 0x6d, 0x9e, 0xc0, 0x37, 0x98, 0xc3, 0x4a, 0xe3, 0xad, 0xd1, 0x90, 0x33, 0xc7, 0xeb, 0x25, 0x75, 0x68, 0xd1, 0x9f, 0xf1, 0xe3, 0xf9, 0x08, 0xe1, 0xb6, 0xe6, 0x95, 0x07, 0x4f, 0x75, 0x2f, 0x0a, 0xd7, 0x1f, 0x27, 0x04, 0x89, 0x5b, 0xea, 0x0d, 0xa2, 0xf9, 0x07, 0xaf, 0x9b, }; static const unsigned char xdh_wei448_3332_sharedsecret[] = { 0xcd, 0x3f, 0x8e, 0xca, 0xda, 0xb8, 0xe3, 0x2b, 0xac, 0xd7, 0x21, 0x75, 0xdb, 0x84, 0x7f, 0x9f, 0xaf, 0x99, 0x2a, 0x04, 0xfc, 0x07, 0xa1, 0xb4, 0x0a, 0x18, 0x26, 0xd1, 0xa2, 0x22, 0xba, 0x00, 0x10, 0x91, 0xb6, 0xa6, 0xe4, 0x7b, 0xe2, 0x29, 0x94, 0xb6, 0x56, 0xc2, 0xc0, 0x8f, 0x6a, 0xd9, 0x0d, 0x9a, 0x66, 0xb2, 0xe1, 0x39, 0xb9, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_3332 = { .name = "xdh_wei448_3332", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3332_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3332_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3332_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 238 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3333 for XDH, tcId is 239 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3333_peerpubkey[] = { 0xc5, 0x45, 0x38, 0xc9, 0xe6, 0x2c, 0xa0, 0x3b, 0xdd, 0xdf, 0x4d, 0x87, 0x1d, 0x32, 0x48, 0x77, 0xb5, 0xaf, 0x95, 0xcb, 0x52, 0xb5, 0x3d, 0xc4, 0x38, 0x6f, 0x10, 0x5c, 0x68, 0xd8, 0x0e, 0xbd, 0x73, 0xfd, 0xb5, 0x1b, 0xc9, 0xb2, 0x66, 0x62, 0x08, 0x65, 0x8b, 0x86, 0xc3, 0xb5, 0x93, 0x0b, 0x81, 0xab, 0xfa, 0x4a, 0xc2, 0xa2, 0x13, 0x96, }; static const unsigned char xdh_wei448_3333_privkey[] = { 0x90, 0x96, 0xf6, 0x8a, 0xd3, 0x95, 0x0f, 0x01, 0x4b, 0x5e, 0xdb, 0x84, 0xca, 0x36, 0x9d, 0x2c, 0x05, 0x3f, 0xf8, 0xf0, 0xc7, 0x8e, 0x89, 0xbb, 0xb0, 0x88, 0xe7, 0xcf, 0xbe, 0x1a, 0x1b, 0xd1, 0x8a, 0xf8, 0xc5, 0xea, 0x0e, 0x72, 0x85, 0xb1, 0x6e, 0xc2, 0x73, 0x54, 0xab, 0xfd, 0xde, 0x2b, 0xc1, 0x3e, 0x95, 0x86, 0x0d, 0xab, 0xd9, 0x85, }; static const unsigned char xdh_wei448_3333_sharedsecret[] = { 0xdb, 0x72, 0x24, 0x2a, 0x51, 0x39, 0x8f, 0xac, 0xda, 0xd9, 0x9b, 0x3c, 0xe5, 0xad, 0x85, 0x6f, 0x90, 0x24, 0xb6, 0x62, 0xdf, 0x36, 0xf0, 0xaa, 0x03, 0xa9, 0x46, 0x34, 0x35, 0x54, 0xed, 0x62, 0x44, 0xf7, 0x7c, 0x6a, 0xe2, 0x00, 0xcb, 0x2c, 0x7b, 0x7b, 0x5b, 0xcb, 0xda, 0x5b, 0x81, 0x6f, 0x97, 0xf5, 0x3c, 0xa2, 0xc5, 0xa7, 0x47, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3333 = { .name = "xdh_wei448_3333", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3333_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3333_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3333_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 239 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3334 for XDH, tcId is 240 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3334_peerpubkey[] = { 0x2b, 0x4c, 0xb8, 0xa2, 0xdb, 0x20, 0xb1, 0x6c, 0x50, 0x13, 0xd8, 0x3f, 0x3f, 0xe7, 0xf2, 0x34, 0x1e, 0xab, 0xc3, 0x68, 0xd4, 0xb3, 0x11, 0xdb, 0x04, 0xfe, 0xf4, 0xa7, 0x1e, 0x3c, 0x94, 0xc6, 0xb0, 0xe2, 0x64, 0xa4, 0x1f, 0xf9, 0x63, 0x94, 0x15, 0x09, 0x5c, 0x74, 0x55, 0x34, 0x47, 0xc2, 0x6a, 0xcc, 0x75, 0x1f, 0x1f, 0xd2, 0x61, 0xd2, }; static const unsigned char xdh_wei448_3334_privkey[] = { 0xc4, 0xa9, 0xea, 0x45, 0x52, 0xf0, 0xb0, 0x2f, 0xb1, 0x53, 0xa6, 0xcc, 0xdb, 0x7b, 0x10, 0x2d, 0xe9, 0xa5, 0x0e, 0xf5, 0xee, 0x46, 0x2a, 0xf0, 0x34, 0x8a, 0x6c, 0x40, 0x86, 0x86, 0x87, 0xff, 0xb2, 0x7c, 0xb3, 0xb1, 0xff, 0x24, 0x20, 0xf4, 0xc9, 0xe6, 0xb5, 0xb8, 0xc0, 0x6c, 0x5d, 0x7d, 0xa9, 0x99, 0xb9, 0x50, 0xdc, 0xc8, 0x17, 0x80, }; static const unsigned char xdh_wei448_3334_sharedsecret[] = { 0xb6, 0xf4, 0xd2, 0x6b, 0x91, 0x7a, 0x5e, 0x29, 0x9a, 0xe9, 0xdf, 0x9d, 0x96, 0x55, 0xcf, 0x2d, 0xd6, 0x15, 0x5e, 0x1a, 0x78, 0x56, 0x36, 0xc7, 0x50, 0xf2, 0x21, 0x5e, 0xd8, 0xc7, 0xc3, 0x15, 0x2e, 0x7d, 0xd7, 0xc3, 0x16, 0x65, 0x7a, 0x91, 0x0d, 0x02, 0x21, 0x86, 0x43, 0x5b, 0xbc, 0x7e, 0xf4, 0x30, 0x9d, 0xad, 0xdd, 0x73, 0x31, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3334 = { .name = "xdh_wei448_3334", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3334_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3334_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3334_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 240 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3335 for XDH, tcId is 241 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3335_peerpubkey[] = { 0x48, 0xed, 0xc1, 0x3a, 0x4c, 0xb0, 0x97, 0xc3, 0x2e, 0x0a, 0xae, 0xfe, 0x25, 0x1d, 0x35, 0x1f, 0xa0, 0x97, 0x13, 0x4e, 0xbf, 0xc5, 0xaa, 0x84, 0xb6, 0x27, 0x70, 0x2c, 0xb4, 0xd5, 0xad, 0xa5, 0xda, 0x25, 0x83, 0xfc, 0x68, 0xff, 0x78, 0x05, 0x35, 0x42, 0xc7, 0x96, 0xad, 0x62, 0x53, 0x95, 0xb4, 0x31, 0xdb, 0xbe, 0x9b, 0xf1, 0x70, 0xde, }; static const unsigned char xdh_wei448_3335_privkey[] = { 0x70, 0x9d, 0x6e, 0xbd, 0xa1, 0x76, 0x61, 0xa9, 0xa6, 0xcf, 0x02, 0x83, 0xcc, 0x37, 0xcd, 0x25, 0x80, 0x2d, 0xae, 0x0c, 0x33, 0xe6, 0xa2, 0x47, 0x99, 0xb2, 0x28, 0x40, 0x2d, 0x8c, 0x8d, 0x3b, 0xf5, 0xc3, 0x79, 0xbf, 0x2e, 0x31, 0x70, 0x8a, 0x4c, 0xe7, 0xca, 0x14, 0x96, 0x4f, 0x83, 0x68, 0xa8, 0x59, 0xb7, 0x8d, 0x8d, 0x17, 0xb5, 0x9b, }; static const unsigned char xdh_wei448_3335_sharedsecret[] = { 0x4a, 0x71, 0x74, 0xf4, 0xbf, 0x4d, 0xe8, 0xc3, 0xd9, 0xc9, 0x54, 0xdd, 0xf9, 0x86, 0x5b, 0xca, 0x47, 0xb0, 0xb9, 0xd8, 0xde, 0xa5, 0x1c, 0x3a, 0xf2, 0x90, 0xbf, 0x6e, 0x3e, 0xf8, 0xee, 0xa8, 0x26, 0x30, 0x36, 0xed, 0xb7, 0x70, 0xf5, 0x63, 0x3c, 0x05, 0x08, 0xe2, 0x67, 0x0c, 0xb9, 0xef, 0x24, 0x7d, 0x99, 0xc9, 0xf9, 0x4a, 0xab, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3335 = { .name = "xdh_wei448_3335", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3335_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3335_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3335_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 241 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3336 for XDH, tcId is 242 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3336_peerpubkey[] = { 0x45, 0xb4, 0x60, 0x34, 0x8e, 0xc0, 0xaf, 0x65, 0x1d, 0x91, 0xef, 0xe8, 0x8f, 0x94, 0x69, 0x91, 0xd2, 0x73, 0xaf, 0xee, 0x61, 0x16, 0x5b, 0xf7, 0x33, 0x49, 0x1f, 0x02, 0x20, 0xe0, 0x51, 0x06, 0x87, 0xb5, 0x18, 0xf1, 0x34, 0xc4, 0xe7, 0xe8, 0xf0, 0x4f, 0x7d, 0x6b, 0xfc, 0xcc, 0xaf, 0x2d, 0x1c, 0x9e, 0x3b, 0xa5, 0xb5, 0x0f, 0x8f, 0xe1, }; static const unsigned char xdh_wei448_3336_privkey[] = { 0xcc, 0x80, 0x41, 0x7d, 0x3f, 0x9e, 0x3c, 0x94, 0x92, 0xdb, 0xb9, 0xd2, 0x5f, 0x46, 0x0b, 0x8d, 0xf4, 0x48, 0x49, 0x85, 0xb2, 0xad, 0x9f, 0xaa, 0xa6, 0x2d, 0xfd, 0x59, 0xe5, 0x73, 0x08, 0x15, 0x7e, 0x22, 0x6c, 0x47, 0x39, 0xd4, 0x60, 0xb0, 0x8d, 0xe4, 0x6c, 0xe6, 0x38, 0x01, 0xce, 0x7d, 0xa2, 0x55, 0x73, 0xc9, 0x46, 0xd0, 0x18, 0x88, }; static const unsigned char xdh_wei448_3336_sharedsecret[] = { 0xfa, 0x1b, 0x67, 0x5f, 0x6c, 0x89, 0x3e, 0xd6, 0x8f, 0xd5, 0x98, 0xff, 0xed, 0x63, 0xfc, 0x12, 0xde, 0x40, 0x61, 0x02, 0x0b, 0x90, 0xb2, 0x2b, 0x5f, 0x72, 0xe6, 0x36, 0xf0, 0x28, 0xed, 0xfd, 0xd9, 0xda, 0x42, 0x3e, 0x83, 0x40, 0x20, 0x3e, 0x83, 0x56, 0x0d, 0xcc, 0xcd, 0xd7, 0x76, 0xdb, 0x72, 0xc6, 0x1e, 0xa8, 0x8e, 0x5d, 0x1e, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3336 = { .name = "xdh_wei448_3336", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3336_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3336_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3336_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 242 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3337 for XDH, tcId is 243 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3337_peerpubkey[] = { 0xb9, 0x1e, 0x57, 0x17, 0x71, 0xaa, 0xd3, 0xc4, 0x04, 0xae, 0x46, 0x93, 0xbf, 0xf7, 0xf2, 0x14, 0x0a, 0x6c, 0x04, 0x2d, 0xb3, 0x06, 0x98, 0x94, 0xae, 0xf2, 0x0c, 0x1b, 0x34, 0xdd, 0x63, 0x5c, 0x6a, 0x08, 0x12, 0x62, 0x36, 0x45, 0x4b, 0xcb, 0x8c, 0x63, 0xa4, 0x7a, 0xc9, 0x43, 0x52, 0xa0, 0x45, 0x36, 0x76, 0x9b, 0x24, 0x22, 0x60, 0x06, }; static const unsigned char xdh_wei448_3337_privkey[] = { 0x98, 0xb7, 0xa5, 0xcf, 0xe0, 0x99, 0xbd, 0x4c, 0xbb, 0x37, 0xa7, 0x24, 0xdc, 0x0a, 0x8d, 0xe6, 0xae, 0xbf, 0x1d, 0x3f, 0xa4, 0x6d, 0xd6, 0xda, 0x64, 0xff, 0x76, 0x4e, 0x63, 0x3b, 0x4d, 0xcc, 0xd8, 0xc8, 0x07, 0x70, 0x50, 0xa9, 0x23, 0x27, 0xdd, 0x73, 0x6d, 0xca, 0xf9, 0x33, 0x2d, 0xb7, 0x1a, 0x0d, 0xfc, 0x51, 0xa9, 0xca, 0x18, 0x8c, }; static const unsigned char xdh_wei448_3337_sharedsecret[] = { 0x46, 0xeb, 0x6c, 0xd4, 0x9b, 0x02, 0x52, 0x4e, 0xfc, 0x3f, 0xa5, 0xfc, 0x6a, 0xdb, 0xd9, 0xb6, 0x04, 0x7f, 0xae, 0x2f, 0xb1, 0x74, 0x3d, 0xa9, 0x97, 0x68, 0x0e, 0x0e, 0x72, 0xc3, 0xcf, 0x1e, 0x86, 0x1f, 0xde, 0x59, 0xc0, 0x59, 0x4c, 0xf0, 0xc5, 0x80, 0x72, 0x6f, 0x0c, 0xe9, 0x94, 0x9c, 0x65, 0xdd, 0x7e, 0x71, 0x72, 0xfe, 0x51, 0x36, }; static const wycheproof_xdh_test xdh_wei448_3337 = { .name = "xdh_wei448_3337", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3337_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3337_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3337_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 243 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3338 for XDH, tcId is 244 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3338_peerpubkey[] = { 0x54, 0x2b, 0xb7, 0x70, 0x5e, 0x4a, 0x83, 0x1f, 0x0b, 0xb4, 0xcc, 0xfd, 0xcd, 0xfb, 0x74, 0xe7, 0x60, 0xcd, 0x45, 0x18, 0xbe, 0x85, 0x53, 0xe0, 0x5c, 0x14, 0x75, 0x9e, 0xe7, 0xf6, 0x7d, 0x0d, 0x7e, 0xec, 0x06, 0x61, 0xa2, 0xcb, 0x96, 0x57, 0xdc, 0xdd, 0x66, 0xdc, 0xfd, 0xba, 0xe4, 0x5b, 0x3d, 0xcb, 0x1e, 0xee, 0xab, 0x15, 0x20, 0x0d, }; static const unsigned char xdh_wei448_3338_privkey[] = { 0xf8, 0x69, 0x06, 0xe9, 0x18, 0x5e, 0x34, 0x75, 0xc6, 0x17, 0x91, 0x83, 0xac, 0xde, 0x9d, 0xd7, 0x5a, 0x59, 0x8f, 0xe7, 0x9c, 0x67, 0x70, 0xa9, 0xeb, 0x25, 0xee, 0x7c, 0x3e, 0xfa, 0xb8, 0x74, 0x0a, 0xbc, 0xfd, 0x50, 0x86, 0x79, 0xe3, 0x6f, 0x69, 0xb0, 0x61, 0x54, 0x34, 0x24, 0x36, 0xae, 0x52, 0xe5, 0x75, 0x9b, 0xf0, 0x15, 0xca, 0x84, }; static const unsigned char xdh_wei448_3338_sharedsecret[] = { 0x53, 0x36, 0xf3, 0x84, 0xa8, 0x10, 0x0c, 0xd9, 0x19, 0xd2, 0x52, 0x16, 0x46, 0xb6, 0xad, 0x8f, 0x77, 0xf2, 0x55, 0xe1, 0xa7, 0xc5, 0x08, 0x89, 0xb3, 0x3f, 0x1e, 0x24, 0x8f, 0xb5, 0xb0, 0xeb, 0x1c, 0x30, 0x2d, 0x27, 0xf3, 0x23, 0x5f, 0x7f, 0xd3, 0xf5, 0x82, 0x03, 0x75, 0x8f, 0x3f, 0x0d, 0xc7, 0x9d, 0xb6, 0x99, 0x35, 0x96, 0xcc, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3338 = { .name = "xdh_wei448_3338", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3338_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3338_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3338_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 244 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3339 for XDH, tcId is 245 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3339_peerpubkey[] = { 0x8a, 0x7b, 0x26, 0xe1, 0xd0, 0x96, 0xd5, 0xab, 0xdd, 0x69, 0x05, 0xb8, 0xf3, 0x7f, 0x01, 0xe0, 0xad, 0xbc, 0xe9, 0xbd, 0x85, 0x61, 0x7e, 0xf6, 0x5e, 0x78, 0xcd, 0xff, 0x93, 0xaf, 0xab, 0xc3, 0xa1, 0x6f, 0x35, 0x61, 0xbd, 0x60, 0x5e, 0xa0, 0xca, 0xa4, 0xc6, 0x6d, 0xd6, 0x38, 0xf3, 0xca, 0xab, 0x4e, 0x76, 0x85, 0x9c, 0xfd, 0x7f, 0x44, }; static const unsigned char xdh_wei448_3339_privkey[] = { 0x74, 0x23, 0xbe, 0xdd, 0x2e, 0xbb, 0x65, 0x1a, 0xd8, 0x41, 0xb7, 0x8a, 0x89, 0x56, 0x8d, 0x05, 0xac, 0xf3, 0xbb, 0x5c, 0x17, 0x42, 0x2e, 0x16, 0x09, 0xf4, 0x06, 0x7b, 0xde, 0x59, 0x2c, 0x7d, 0xf2, 0xa0, 0x4a, 0xe3, 0xfe, 0xd7, 0xf6, 0xfc, 0xca, 0x82, 0xb7, 0x8d, 0xee, 0xc6, 0xb6, 0x20, 0x44, 0x8c, 0x18, 0x51, 0xde, 0x98, 0x56, 0x84, }; static const unsigned char xdh_wei448_3339_sharedsecret[] = { 0x6e, 0xc4, 0xc8, 0x08, 0xf1, 0xe7, 0x4d, 0x72, 0x93, 0xb4, 0xfd, 0x6a, 0x26, 0x7e, 0xcf, 0x4d, 0x57, 0xef, 0x58, 0xe6, 0x9e, 0x4e, 0xfa, 0x34, 0x27, 0xd4, 0x49, 0x49, 0x03, 0xe1, 0xbf, 0x1c, 0x10, 0x61, 0x06, 0x95, 0x37, 0x2f, 0xbe, 0x29, 0x8b, 0x33, 0x00, 0xda, 0x37, 0xf2, 0x84, 0xb6, 0x64, 0x48, 0x06, 0xcc, 0xe8, 0xb9, 0xd8, 0x52, }; static const wycheproof_xdh_test xdh_wei448_3339 = { .name = "xdh_wei448_3339", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3339_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3339_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3339_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 245 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3340 for XDH, tcId is 246 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3340_peerpubkey[] = { 0xb0, 0x1d, 0x26, 0x56, 0x5d, 0x2f, 0xd0, 0x56, 0x0c, 0xb6, 0x78, 0x6b, 0xb8, 0xcc, 0xcb, 0x6b, 0x06, 0x24, 0xd1, 0x9d, 0x9e, 0x3e, 0x60, 0x84, 0xcd, 0xd8, 0xb0, 0x2c, 0xe6, 0xbf, 0xa0, 0x60, 0x98, 0x5b, 0x1e, 0xed, 0x84, 0xed, 0xcf, 0x15, 0x84, 0x8a, 0xdf, 0xff, 0x62, 0x80, 0xef, 0x25, 0x14, 0x3c, 0xe4, 0x8a, 0x15, 0xd0, 0xd5, 0x70, }; static const unsigned char xdh_wei448_3340_privkey[] = { 0x0c, 0x27, 0x0d, 0xe1, 0x09, 0x01, 0x5b, 0xb6, 0x13, 0x3e, 0xb5, 0x48, 0xe3, 0xf1, 0xdf, 0x78, 0xcd, 0x10, 0x47, 0x4f, 0x5b, 0x35, 0xfb, 0x7b, 0x7b, 0xe5, 0x69, 0xcf, 0x66, 0xe0, 0x91, 0xcf, 0x12, 0xf4, 0x74, 0xe7, 0x57, 0xa7, 0x69, 0xb3, 0x58, 0xff, 0x27, 0x6f, 0x37, 0x69, 0xdf, 0x08, 0x11, 0x97, 0xcd, 0x15, 0xa5, 0x6d, 0x4d, 0x9d, }; static const unsigned char xdh_wei448_3340_sharedsecret[] = { 0x4c, 0xf8, 0x05, 0x8c, 0xd2, 0xa9, 0x0f, 0xa5, 0xcd, 0x19, 0x23, 0x7e, 0x19, 0xcf, 0x62, 0x0d, 0xda, 0x88, 0xf9, 0xeb, 0xac, 0x2b, 0x69, 0x75, 0xda, 0xc1, 0x82, 0x5d, 0x26, 0x68, 0xd4, 0xea, 0x1b, 0x6d, 0xca, 0xd6, 0xbe, 0x81, 0xde, 0xc5, 0x4e, 0x2a, 0xfa, 0x9c, 0x61, 0x3d, 0x7d, 0x22, 0x84, 0xa4, 0xbb, 0x61, 0x1c, 0xa2, 0x71, 0xf5, }; static const wycheproof_xdh_test xdh_wei448_3340 = { .name = "xdh_wei448_3340", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3340_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3340_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3340_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 246 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3341 for XDH, tcId is 247 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3341_peerpubkey[] = { 0x6a, 0x36, 0xb7, 0x29, 0xe0, 0x4f, 0xb9, 0xc1, 0xd3, 0x54, 0x41, 0x62, 0x2b, 0x73, 0x5f, 0xe2, 0x17, 0x87, 0x00, 0xd8, 0x28, 0x9a, 0xbb, 0x4c, 0xee, 0x07, 0xfe, 0xac, 0x47, 0xbf, 0xb8, 0xab, 0x3b, 0x5b, 0x19, 0x37, 0x10, 0x53, 0xfe, 0xa2, 0x0e, 0x4c, 0xef, 0x03, 0x6d, 0xda, 0xc5, 0xbc, 0xb5, 0x1f, 0x74, 0x36, 0xae, 0xe3, 0x4a, 0x9e, }; static const unsigned char xdh_wei448_3341_privkey[] = { 0xbc, 0xcf, 0xa0, 0x99, 0x85, 0x11, 0x63, 0xd5, 0x23, 0xb4, 0x8d, 0x2a, 0x09, 0x8e, 0xb3, 0xec, 0x43, 0x45, 0x26, 0x59, 0x57, 0x5e, 0x1d, 0x63, 0xec, 0xdf, 0x5e, 0x59, 0x94, 0x39, 0x7d, 0xe1, 0x2d, 0x42, 0xae, 0x72, 0xb7, 0x88, 0x49, 0x94, 0xda, 0xa7, 0xe7, 0x5d, 0x8a, 0x25, 0x18, 0x67, 0x3f, 0x7f, 0xa1, 0x9a, 0x7a, 0x6a, 0xf1, 0x90, }; static const unsigned char xdh_wei448_3341_sharedsecret[] = { 0xa7, 0x87, 0xfd, 0x2a, 0xcb, 0x08, 0xe0, 0xcc, 0xf9, 0xe9, 0x63, 0xb7, 0xf1, 0xf2, 0x4a, 0xfb, 0x73, 0x02, 0x49, 0x3c, 0xa8, 0xa6, 0xc5, 0xb8, 0xa4, 0x41, 0xb7, 0xf8, 0x16, 0x30, 0x77, 0x6f, 0x35, 0x90, 0x27, 0x6c, 0x79, 0xa5, 0x7f, 0xea, 0x74, 0xb3, 0x57, 0x52, 0xa5, 0xdf, 0x08, 0x70, 0xa1, 0x23, 0x2b, 0x6c, 0x7f, 0x43, 0x2c, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3341 = { .name = "xdh_wei448_3341", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3341_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3341_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3341_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 247 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3342 for XDH, tcId is 248 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3342_peerpubkey[] = { 0xa8, 0xac, 0xd6, 0xc7, 0x32, 0x7e, 0xe6, 0x62, 0x2d, 0xf0, 0x85, 0xb0, 0xe2, 0xb6, 0x87, 0x76, 0xae, 0xcc, 0x68, 0xfe, 0x57, 0x9a, 0xc9, 0x01, 0x12, 0xe5, 0xd4, 0x01, 0x3e, 0x18, 0x38, 0x6c, 0x32, 0x01, 0xca, 0x53, 0x3b, 0x76, 0x38, 0xe7, 0x6c, 0x76, 0x04, 0xbe, 0x54, 0xfb, 0x93, 0x66, 0x9a, 0xbe, 0x9e, 0x9d, 0x1d, 0x5c, 0xbc, 0xd5, }; static const unsigned char xdh_wei448_3342_privkey[] = { 0x3c, 0xcc, 0xc1, 0x4a, 0xfd, 0x4c, 0x79, 0x6e, 0xcd, 0xf0, 0x41, 0x12, 0x14, 0x88, 0x0d, 0x61, 0x88, 0xc7, 0x4c, 0x99, 0x87, 0x66, 0xd1, 0x62, 0x2f, 0xdb, 0x90, 0x57, 0x3f, 0x07, 0x0e, 0x1f, 0x2b, 0x6b, 0xe5, 0x95, 0x54, 0x32, 0x29, 0xb5, 0xed, 0xf3, 0xf8, 0x8f, 0x26, 0x13, 0x9f, 0x9d, 0x3f, 0x65, 0x00, 0xe5, 0xbb, 0xba, 0x92, 0x99, }; static const unsigned char xdh_wei448_3342_sharedsecret[] = { 0x4d, 0xc8, 0x46, 0xc3, 0x35, 0xa9, 0xe3, 0x7c, 0x4b, 0x1e, 0x02, 0x8c, 0xbb, 0xf1, 0x21, 0x95, 0x7a, 0xa0, 0xb4, 0x82, 0x6c, 0x6c, 0x7e, 0xb5, 0xf1, 0x16, 0xa6, 0xd6, 0xf9, 0x48, 0xe5, 0xbf, 0xa6, 0x25, 0xa4, 0xf1, 0x7c, 0xb5, 0xf3, 0xc1, 0xeb, 0x33, 0x56, 0x1e, 0xa6, 0xb4, 0x77, 0xb7, 0xc6, 0x49, 0xc9, 0xba, 0x89, 0xfa, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3342 = { .name = "xdh_wei448_3342", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3342_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3342_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3342_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 248 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3343 for XDH, tcId is 249 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3343_peerpubkey[] = { 0xe5, 0x45, 0x3d, 0x6c, 0x5b, 0xb8, 0x8d, 0xca, 0x66, 0x79, 0x8b, 0xb0, 0x08, 0xbf, 0xc7, 0x32, 0xa2, 0xf4, 0xd1, 0x50, 0xf1, 0x77, 0x0c, 0x12, 0xf0, 0xd4, 0xc3, 0xcf, 0xee, 0x7b, 0x62, 0xee, 0x4f, 0x64, 0x0f, 0x88, 0x8a, 0x51, 0x6a, 0x4f, 0x9b, 0x85, 0x54, 0x55, 0x9f, 0xe0, 0x4c, 0xf7, 0xcf, 0x6f, 0x5b, 0xdf, 0x95, 0xe6, 0xf5, 0x06, }; static const unsigned char xdh_wei448_3343_privkey[] = { 0x74, 0xe8, 0xd6, 0xfb, 0x8c, 0xac, 0x97, 0x14, 0xe2, 0xe3, 0xb3, 0x3e, 0x0a, 0xe9, 0x83, 0x72, 0x89, 0x07, 0xcc, 0x8e, 0xc5, 0x93, 0x21, 0x3c, 0x34, 0x04, 0x58, 0x8e, 0x9f, 0x05, 0x7b, 0x94, 0xb1, 0xc3, 0xc7, 0x47, 0x4d, 0xa2, 0x43, 0x80, 0xed, 0xc3, 0x63, 0x03, 0xc5, 0x9a, 0xca, 0x5e, 0xf8, 0x67, 0x8d, 0x89, 0x62, 0x3d, 0x8b, 0x8b, }; static const unsigned char xdh_wei448_3343_sharedsecret[] = { 0xd5, 0xce, 0xc8, 0xc6, 0xe7, 0x44, 0x69, 0x73, 0x98, 0x55, 0xb8, 0x74, 0xc6, 0x36, 0x5b, 0x92, 0x0f, 0x6d, 0xd2, 0xdf, 0x38, 0xc0, 0x2e, 0xcb, 0xdf, 0x47, 0xef, 0xe8, 0xb4, 0x3e, 0xbd, 0x7d, 0x20, 0x3c, 0x4f, 0x11, 0x85, 0xbb, 0x10, 0x1d, 0x49, 0x5f, 0xd5, 0xe6, 0x8b, 0xc8, 0x92, 0x80, 0x26, 0x7a, 0xf5, 0x81, 0x89, 0x8b, 0x03, 0x49, }; static const wycheproof_xdh_test xdh_wei448_3343 = { .name = "xdh_wei448_3343", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3343_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3343_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3343_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 249 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3344 for XDH, tcId is 250 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3344_peerpubkey[] = { 0xec, 0x5c, 0xec, 0x8d, 0xe7, 0x18, 0xb0, 0x86, 0x64, 0xf2, 0xa5, 0xf7, 0x95, 0xbe, 0x52, 0x15, 0x37, 0x12, 0xe7, 0x46, 0x76, 0x05, 0xfd, 0xe4, 0x2d, 0xcf, 0x30, 0xc7, 0xce, 0xbe, 0x4c, 0xa8, 0xe8, 0x71, 0x0c, 0xc8, 0x99, 0x75, 0x24, 0x24, 0x01, 0xe5, 0x83, 0x90, 0x59, 0xf0, 0xaa, 0xd6, 0xd6, 0x1a, 0x7a, 0x67, 0x5c, 0x45, 0x48, 0x1c, }; static const unsigned char xdh_wei448_3344_privkey[] = { 0xf0, 0x49, 0x0b, 0xe3, 0xbe, 0xfd, 0x45, 0x60, 0x48, 0x60, 0x23, 0x73, 0x1a, 0x03, 0x97, 0x08, 0x08, 0x16, 0xe5, 0x5d, 0xb0, 0x5e, 0x77, 0x7b, 0xa7, 0x8e, 0x22, 0x51, 0xcd, 0x20, 0xf3, 0x50, 0x4a, 0x16, 0x31, 0x90, 0x78, 0xd2, 0xfe, 0x73, 0x14, 0xb3, 0x0f, 0xdc, 0xef, 0x00, 0xd7, 0x80, 0x94, 0x2d, 0x13, 0xd3, 0xf4, 0xde, 0x76, 0x98, }; static const unsigned char xdh_wei448_3344_sharedsecret[] = { 0x65, 0xa9, 0x20, 0xbb, 0xf2, 0x22, 0x92, 0x0f, 0xc7, 0x54, 0xa1, 0x83, 0x96, 0x8c, 0x6b, 0x98, 0x86, 0x17, 0x45, 0x0a, 0x5b, 0x28, 0xde, 0x1b, 0x5d, 0xe0, 0xee, 0x23, 0xf6, 0x67, 0x40, 0x36, 0xdf, 0xc9, 0x09, 0xd3, 0x78, 0xb1, 0xde, 0x87, 0x20, 0x9a, 0xe3, 0x31, 0xc1, 0x67, 0xc6, 0x1a, 0x0b, 0xfd, 0xab, 0xc3, 0xd2, 0x09, 0x4e, 0x65, }; static const wycheproof_xdh_test xdh_wei448_3344 = { .name = "xdh_wei448_3344", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3344_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3344_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3344_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 250 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3345 for XDH, tcId is 251 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3345_peerpubkey[] = { 0xc8, 0x08, 0x89, 0xfb, 0x36, 0x4d, 0xc6, 0xa2, 0x3b, 0x16, 0xc0, 0x5f, 0x16, 0xbe, 0x51, 0x01, 0x0c, 0xc5, 0xbf, 0x50, 0xc8, 0xd3, 0xab, 0xb6, 0x09, 0x7f, 0xe4, 0x67, 0x92, 0x3d, 0x50, 0x52, 0x2b, 0xfc, 0xb5, 0x7a, 0xe1, 0xa8, 0xe5, 0x36, 0xab, 0x00, 0xe9, 0x7b, 0x6d, 0x69, 0x89, 0xd3, 0x54, 0x65, 0xc0, 0x0a, 0xd1, 0xfc, 0xd7, 0x57, }; static const unsigned char xdh_wei448_3345_privkey[] = { 0x14, 0xdf, 0xec, 0xdc, 0x6a, 0xe2, 0x09, 0x1a, 0x22, 0x3a, 0x3e, 0x6b, 0xea, 0x36, 0xc3, 0xca, 0xf3, 0x56, 0xb6, 0x6e, 0xd8, 0x47, 0x88, 0x21, 0xd2, 0x85, 0xa1, 0x04, 0x08, 0xed, 0xc0, 0x30, 0xc1, 0x18, 0xbc, 0x2f, 0x60, 0x99, 0x97, 0x14, 0x6f, 0xba, 0xbf, 0x34, 0x86, 0x58, 0xfa, 0x8b, 0xf3, 0x13, 0xda, 0x6e, 0xd4, 0x9c, 0xe2, 0x81, }; static const unsigned char xdh_wei448_3345_sharedsecret[] = { 0x74, 0x0a, 0x84, 0xcd, 0x54, 0xaf, 0xe2, 0x3b, 0x00, 0x60, 0x6a, 0x30, 0x09, 0xbb, 0x37, 0xa1, 0x30, 0x11, 0x8e, 0x53, 0x52, 0xc5, 0xe3, 0xc3, 0x8b, 0x51, 0x7f, 0xfa, 0x46, 0x98, 0x78, 0x98, 0x52, 0xdc, 0x15, 0x9e, 0x35, 0xd0, 0x6c, 0xe5, 0xeb, 0x68, 0xba, 0x54, 0x14, 0xb2, 0xe6, 0x51, 0x5d, 0x68, 0x3a, 0x80, 0x02, 0x81, 0x74, 0x72, }; static const wycheproof_xdh_test xdh_wei448_3345 = { .name = "xdh_wei448_3345", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3345_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3345_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3345_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 251 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3346 for XDH, tcId is 252 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3346_peerpubkey[] = { 0x0a, 0xd8, 0xa1, 0x51, 0x1e, 0x59, 0xa2, 0x38, 0xbb, 0x9b, 0xfd, 0x79, 0x04, 0x44, 0xf6, 0xeb, 0x87, 0xed, 0x22, 0xcb, 0x17, 0x0f, 0x9d, 0xcc, 0xbb, 0xcb, 0xc6, 0x4d, 0x0a, 0x66, 0x33, 0x62, 0x32, 0xcd, 0x2d, 0xca, 0x7b, 0x9c, 0xcb, 0x93, 0x44, 0x58, 0x4e, 0xf7, 0x1e, 0x18, 0x1d, 0x5f, 0x47, 0x7b, 0x88, 0x3d, 0xbd, 0x65, 0xdb, 0x7e, }; static const unsigned char xdh_wei448_3346_privkey[] = { 0x0c, 0x3b, 0xdd, 0x0e, 0xae, 0x10, 0x80, 0x13, 0x94, 0xd8, 0x1d, 0x88, 0xc5, 0x0b, 0x0c, 0x79, 0x1e, 0xe8, 0x39, 0x7a, 0x26, 0xe7, 0x0d, 0xfa, 0x02, 0xa0, 0x30, 0xeb, 0x8d, 0xed, 0xa5, 0xa2, 0x0b, 0xf6, 0x9c, 0x42, 0x6f, 0x64, 0xbf, 0xc7, 0x5c, 0x9b, 0xc3, 0x6d, 0x76, 0xa3, 0x54, 0xea, 0xc4, 0xcb, 0xc8, 0x3b, 0xa5, 0x6d, 0x8d, 0x88, }; static const unsigned char xdh_wei448_3346_sharedsecret[] = { 0x30, 0x36, 0x4d, 0xac, 0x7c, 0x97, 0x17, 0xc7, 0x79, 0x27, 0xbd, 0x11, 0x3f, 0x9d, 0x5c, 0xfb, 0x16, 0xf4, 0xe3, 0xfb, 0xeb, 0x5f, 0xe1, 0xd1, 0x73, 0x5f, 0xf7, 0x91, 0xea, 0x2c, 0x12, 0xd5, 0x40, 0x21, 0xbf, 0x52, 0xdb, 0xb2, 0xb2, 0x76, 0xdf, 0xf5, 0x0b, 0x78, 0x9e, 0x96, 0x49, 0x72, 0xb5, 0x0e, 0x4c, 0x07, 0x0e, 0xde, 0xa4, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3346 = { .name = "xdh_wei448_3346", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3346_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3346_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3346_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 252 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3347 for XDH, tcId is 253 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3347_peerpubkey[] = { 0x51, 0x0b, 0xf0, 0x00, 0x66, 0x14, 0x2c, 0xe7, 0xcb, 0x50, 0x6b, 0x22, 0x7f, 0xdf, 0xd1, 0xe1, 0xc5, 0x7e, 0x9c, 0xef, 0x90, 0x18, 0x64, 0x38, 0x4a, 0xe0, 0x76, 0x40, 0x14, 0x1e, 0xd2, 0xbf, 0x70, 0x0c, 0x91, 0xb5, 0x64, 0x1d, 0x6f, 0xbe, 0x40, 0x96, 0xdd, 0x21, 0xad, 0x51, 0x73, 0x47, 0x72, 0x27, 0xe4, 0x73, 0x3b, 0xdc, 0xd3, 0xaa, }; static const unsigned char xdh_wei448_3347_privkey[] = { 0x7c, 0xba, 0xa9, 0xa6, 0x20, 0x37, 0xfb, 0x3b, 0x44, 0xda, 0x1c, 0x07, 0xad, 0xc7, 0x69, 0x85, 0xbb, 0x0c, 0x55, 0xe7, 0xfb, 0x58, 0x54, 0xed, 0xd1, 0x14, 0xa1, 0xae, 0xb3, 0x87, 0x95, 0xc4, 0xce, 0x5f, 0xc9, 0x3f, 0x6c, 0x72, 0x57, 0xf0, 0x45, 0xca, 0x9a, 0xe8, 0x52, 0x6a, 0xdb, 0xda, 0xc5, 0x7f, 0x40, 0x86, 0xb6, 0x98, 0xbb, 0x85, }; static const unsigned char xdh_wei448_3347_sharedsecret[] = { 0x71, 0x11, 0xd8, 0x4a, 0x2d, 0x5e, 0x7b, 0xfb, 0x45, 0xf1, 0xd8, 0x9a, 0x58, 0xab, 0x39, 0x27, 0xfe, 0xb3, 0x9b, 0x31, 0x6c, 0xfa, 0x35, 0x48, 0xc3, 0xf0, 0x56, 0x15, 0x3a, 0xe8, 0x2c, 0xd5, 0x20, 0xa5, 0x82, 0x78, 0xf9, 0x72, 0xc3, 0xd6, 0xdc, 0xaa, 0xdf, 0x6a, 0xe6, 0x83, 0x3f, 0x94, 0x9b, 0x2b, 0x9c, 0xb5, 0xe4, 0x34, 0x14, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3347 = { .name = "xdh_wei448_3347", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3347_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3347_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3347_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 253 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3348 for XDH, tcId is 254 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3348_peerpubkey[] = { 0x29, 0x51, 0xe6, 0xc0, 0x95, 0x0e, 0x6a, 0xd8, 0x80, 0x8a, 0x5f, 0xa3, 0x4a, 0x0a, 0x82, 0x8c, 0x04, 0xaa, 0x51, 0x3c, 0x3c, 0x79, 0x8f, 0x43, 0x15, 0xab, 0x6d, 0x4f, 0x47, 0x6f, 0x7a, 0x82, 0xa9, 0x69, 0x19, 0x7c, 0x24, 0xb8, 0xec, 0x6c, 0xa2, 0x30, 0xe6, 0xbb, 0xc6, 0xe6, 0xb8, 0xf2, 0xaf, 0x47, 0x8f, 0x46, 0x33, 0xa2, 0x7a, 0xf0, }; static const unsigned char xdh_wei448_3348_privkey[] = { 0x98, 0x84, 0x92, 0xb8, 0x2d, 0x09, 0x6f, 0xa8, 0x2e, 0x9b, 0xd1, 0x2b, 0xab, 0xe1, 0xb5, 0x27, 0xd0, 0xeb, 0xb4, 0x2d, 0x13, 0x19, 0x43, 0x87, 0xf8, 0x9e, 0xe1, 0x13, 0x07, 0x01, 0xda, 0x37, 0x04, 0x9a, 0x23, 0xc7, 0x26, 0xe2, 0x86, 0x24, 0x14, 0x4c, 0xb4, 0x9b, 0x1c, 0xcc, 0x09, 0x3a, 0x6e, 0xaf, 0x24, 0x2a, 0x27, 0xa6, 0xf0, 0x86, }; static const unsigned char xdh_wei448_3348_sharedsecret[] = { 0x42, 0x37, 0x05, 0x8a, 0x28, 0x37, 0xa7, 0x5c, 0xbb, 0xdb, 0xc5, 0x60, 0x43, 0xab, 0x3e, 0xd8, 0xcc, 0x02, 0xf5, 0x96, 0xec, 0x5c, 0xee, 0x54, 0x7a, 0x5d, 0x68, 0x2f, 0x00, 0x8d, 0xf4, 0x9e, 0x60, 0x11, 0x90, 0x1c, 0x94, 0x0e, 0x41, 0x6e, 0xef, 0x37, 0x1c, 0x80, 0xe3, 0x1f, 0xea, 0x48, 0x3f, 0x00, 0x92, 0x51, 0xf7, 0x2a, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei448_3348 = { .name = "xdh_wei448_3348", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3348_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3348_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3348_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 254 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3349 for XDH, tcId is 255 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3349_peerpubkey[] = { 0x3d, 0xa1, 0x0f, 0x7b, 0x47, 0xf0, 0x77, 0x4a, 0xeb, 0x7c, 0x2d, 0x3e, 0xc9, 0x52, 0x14, 0xb5, 0x4f, 0xb8, 0x0a, 0xb8, 0xf5, 0x35, 0xec, 0x13, 0x84, 0xac, 0xaa, 0xd0, 0x4b, 0x6d, 0x88, 0x61, 0x87, 0x2d, 0x0b, 0xc9, 0x03, 0xab, 0x9c, 0x9b, 0x61, 0xca, 0xc4, 0x67, 0xa3, 0xf6, 0x32, 0xf0, 0xe5, 0x37, 0xa6, 0x96, 0xea, 0x88, 0x28, 0x0b, }; static const unsigned char xdh_wei448_3349_privkey[] = { 0x38, 0xb1, 0x19, 0x0d, 0xd6, 0x91, 0xea, 0xc7, 0xbd, 0x5f, 0x80, 0x6b, 0x20, 0x1f, 0xdb, 0xf9, 0x0e, 0x0e, 0xf7, 0xc7, 0x2f, 0x79, 0xbf, 0x2e, 0xf3, 0xa0, 0x4e, 0xac, 0xbc, 0xd4, 0x09, 0x98, 0x4b, 0xc7, 0x65, 0xc0, 0x4f, 0x64, 0x1d, 0xa9, 0x80, 0x25, 0xe4, 0x16, 0x41, 0x55, 0x92, 0xc9, 0x1c, 0x18, 0xec, 0x3c, 0x4d, 0x39, 0x85, 0x9b, }; static const unsigned char xdh_wei448_3349_sharedsecret[] = { 0x4e, 0xda, 0x68, 0xdf, 0x39, 0xba, 0x14, 0xb0, 0x9e, 0xed, 0xd4, 0xc5, 0x2d, 0xb5, 0xa4, 0x95, 0x5b, 0x4e, 0x00, 0xb0, 0x56, 0xca, 0x18, 0x23, 0xe9, 0x3f, 0x19, 0x0b, 0x21, 0xff, 0x7f, 0xe7, 0xe0, 0x5f, 0x80, 0x89, 0xfb, 0x0c, 0x0a, 0x1f, 0xaa, 0x84, 0xff, 0xed, 0xe4, 0x2a, 0xb9, 0xac, 0x93, 0x79, 0x9b, 0x99, 0xfe, 0x18, 0x25, 0x59, }; static const wycheproof_xdh_test xdh_wei448_3349 = { .name = "xdh_wei448_3349", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3349_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3349_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3349_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 255 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3350 for XDH, tcId is 256 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3350_peerpubkey[] = { 0x83, 0xfd, 0x7a, 0xac, 0x6b, 0xe7, 0x83, 0x19, 0x80, 0xbc, 0x1f, 0x39, 0x16, 0xc3, 0xcb, 0x6b, 0xf0, 0x85, 0x1a, 0x29, 0x04, 0xab, 0x9a, 0x38, 0xca, 0xa4, 0xe7, 0xa0, 0x14, 0xfb, 0xee, 0xbe, 0x9f, 0xa0, 0x12, 0x5a, 0x39, 0xa3, 0xa2, 0x29, 0xc8, 0xdf, 0xc7, 0x5c, 0x98, 0xc3, 0x03, 0x17, 0x9e, 0x60, 0x95, 0x44, 0x69, 0xeb, 0x83, 0x0f, }; static const unsigned char xdh_wei448_3350_privkey[] = { 0xe4, 0xa4, 0x81, 0x98, 0xa8, 0x66, 0x81, 0x2b, 0x3c, 0x7a, 0xc4, 0xe2, 0x83, 0xcf, 0x2b, 0x34, 0x01, 0x33, 0xed, 0xb4, 0x88, 0x06, 0xc9, 0x5c, 0xae, 0xe3, 0x22, 0xea, 0x58, 0x30, 0x9f, 0x9d, 0x53, 0xe7, 0x5c, 0x65, 0x54, 0x05, 0x17, 0x4c, 0x50, 0xd8, 0x7c, 0x37, 0xaf, 0x69, 0xe6, 0x26, 0xbc, 0x5e, 0xb3, 0xfe, 0x48, 0x29, 0x08, 0x9a, }; static const unsigned char xdh_wei448_3350_sharedsecret[] = { 0x30, 0xd4, 0x13, 0x2a, 0x48, 0xfd, 0xa4, 0x03, 0x0d, 0xd6, 0xee, 0x8f, 0x6b, 0x92, 0x91, 0x8f, 0x95, 0x67, 0xc4, 0x0a, 0xbc, 0xd1, 0x93, 0xd7, 0x60, 0x4e, 0x55, 0x10, 0x79, 0xa7, 0xa3, 0xf8, 0x1f, 0x80, 0x25, 0x7b, 0x43, 0x85, 0x9d, 0xd9, 0x0a, 0xd2, 0x17, 0xbd, 0xb3, 0xb2, 0xe0, 0xef, 0x1b, 0x0b, 0x7e, 0x88, 0x46, 0xb9, 0xb4, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3350 = { .name = "xdh_wei448_3350", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3350_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3350_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3350_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 256 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3351 for XDH, tcId is 257 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3351_peerpubkey[] = { 0xd3, 0x18, 0x3f, 0x95, 0x04, 0xd7, 0xa2, 0xa7, 0x13, 0x41, 0x37, 0x5a, 0xde, 0x2a, 0x68, 0xa5, 0xb2, 0xb5, 0xf5, 0x97, 0x93, 0x21, 0xee, 0x5b, 0xfa, 0x55, 0x35, 0x5b, 0x8b, 0x60, 0x2b, 0xfe, 0x5e, 0x6e, 0xa6, 0xd9, 0xa8, 0xe9, 0xd8, 0x3e, 0xd1, 0x14, 0x6a, 0x08, 0x16, 0x62, 0xb0, 0xa5, 0x2f, 0x52, 0x37, 0x4e, 0x9d, 0x93, 0xe9, 0x22, }; static const unsigned char xdh_wei448_3351_privkey[] = { 0x3c, 0x96, 0x99, 0xd1, 0x52, 0xec, 0x8f, 0x3d, 0xe3, 0x8e, 0xf3, 0x7a, 0x92, 0xa3, 0x86, 0x59, 0x28, 0x3e, 0xee, 0xfd, 0x19, 0x25, 0xf9, 0x6c, 0xac, 0x53, 0xb4, 0xb7, 0x5b, 0xaf, 0x32, 0x95, 0xdd, 0xd7, 0x08, 0xeb, 0x1b, 0x0f, 0x0a, 0xf0, 0x92, 0x57, 0x92, 0xac, 0x8a, 0xe9, 0xf8, 0x12, 0xde, 0x2b, 0x48, 0xd8, 0x7c, 0x11, 0x4a, 0x9d, }; static const unsigned char xdh_wei448_3351_sharedsecret[] = { 0x7c, 0x27, 0xfa, 0x6b, 0x65, 0x13, 0x3c, 0xd1, 0xa4, 0xa2, 0x90, 0x16, 0x03, 0x0e, 0x11, 0x20, 0x4c, 0x9c, 0xc5, 0x70, 0xcb, 0xda, 0xbe, 0xa0, 0x78, 0xea, 0xbb, 0x5a, 0x2f, 0xb9, 0x2a, 0x3a, 0xc9, 0xf7, 0x5e, 0x4a, 0x19, 0x8d, 0x29, 0x1a, 0xb2, 0xc2, 0x60, 0x4f, 0xad, 0x6b, 0x1a, 0x36, 0xda, 0x89, 0x19, 0xfc, 0xe3, 0x55, 0x60, 0xe8, }; static const wycheproof_xdh_test xdh_wei448_3351 = { .name = "xdh_wei448_3351", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3351_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3351_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3351_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 257 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3352 for XDH, tcId is 258 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3352_peerpubkey[] = { 0x40, 0xa4, 0xe6, 0x6d, 0x42, 0xe4, 0xd9, 0xa1, 0x3e, 0xd3, 0x48, 0xb3, 0x90, 0xb4, 0x06, 0xa1, 0xd7, 0x3a, 0x1a, 0xd7, 0x1a, 0x2d, 0xe9, 0xf0, 0x65, 0x69, 0x29, 0x92, 0xb0, 0x1b, 0xa6, 0x24, 0x3c, 0x01, 0x34, 0xf4, 0x15, 0x0f, 0xb9, 0xa3, 0xaa, 0xaf, 0xb6, 0xb7, 0x4f, 0x27, 0xe7, 0x3a, 0x53, 0xee, 0x96, 0xee, 0xb0, 0x95, 0x03, 0x2e, }; static const unsigned char xdh_wei448_3352_privkey[] = { 0x2c, 0x45, 0x44, 0x67, 0x14, 0xbc, 0xb9, 0x25, 0x2b, 0x29, 0xaa, 0x50, 0x50, 0x27, 0x7b, 0x43, 0xcb, 0x39, 0x77, 0x58, 0x49, 0x0f, 0x49, 0x65, 0xe7, 0x7a, 0x8b, 0x6c, 0xb9, 0x84, 0xb4, 0x51, 0x18, 0xb6, 0x23, 0x48, 0xeb, 0x49, 0x4a, 0xe9, 0x6b, 0x74, 0x43, 0x15, 0x52, 0xa9, 0x45, 0x61, 0x0b, 0x2e, 0x1f, 0x56, 0x59, 0xfb, 0xc7, 0x81, }; static const unsigned char xdh_wei448_3352_sharedsecret[] = { 0x75, 0x0b, 0x89, 0xd5, 0xbe, 0x9d, 0x34, 0xa3, 0x2b, 0x92, 0xab, 0xef, 0x98, 0x44, 0x07, 0x29, 0xa7, 0x3c, 0x73, 0x3b, 0xd6, 0x31, 0x8e, 0x38, 0x59, 0xbf, 0x88, 0x7f, 0x4b, 0x46, 0xa7, 0x04, 0x8a, 0x61, 0xeb, 0xa1, 0xe3, 0xc9, 0x88, 0x89, 0xee, 0x71, 0x2c, 0x4f, 0x24, 0x65, 0x83, 0xcb, 0xea, 0x23, 0x76, 0x82, 0x50, 0x80, 0x2d, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3352 = { .name = "xdh_wei448_3352", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3352_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3352_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3352_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 258 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3353 for XDH, tcId is 259 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3353_peerpubkey[] = { 0x72, 0xf7, 0x48, 0xf5, 0x10, 0x28, 0xb0, 0xb2, 0xb3, 0x89, 0x64, 0x24, 0x71, 0x00, 0xfb, 0x55, 0x21, 0x75, 0xfa, 0xdd, 0x4a, 0xb5, 0xbc, 0xf3, 0x9d, 0xcf, 0xbd, 0xda, 0x32, 0x8b, 0xd6, 0x7f, 0xa1, 0x04, 0xe4, 0x6e, 0x7a, 0x55, 0xfb, 0x03, 0x19, 0xe4, 0xfe, 0x7c, 0x94, 0x07, 0xc8, 0x68, 0x30, 0xcb, 0x41, 0x81, 0x08, 0x62, 0x05, 0x4b, }; static const unsigned char xdh_wei448_3353_privkey[] = { 0xf0, 0xf1, 0x87, 0xeb, 0xde, 0x1b, 0xf9, 0xa1, 0xcf, 0x5f, 0xc3, 0xa9, 0xf9, 0x05, 0x2b, 0x33, 0xa7, 0xf5, 0x07, 0x2e, 0xfe, 0x84, 0xfb, 0x06, 0x02, 0xcd, 0x50, 0x0b, 0x78, 0xc8, 0xaa, 0xce, 0x23, 0x49, 0x90, 0xd3, 0xc2, 0x93, 0xcd, 0xd1, 0x9d, 0x8e, 0xf0, 0x60, 0x12, 0x28, 0x9a, 0x28, 0x0c, 0x53, 0xae, 0x81, 0x4f, 0xc4, 0x29, 0x94, }; static const unsigned char xdh_wei448_3353_sharedsecret[] = { 0x3f, 0x08, 0xf0, 0xfe, 0x4c, 0x3a, 0x6b, 0xad, 0x42, 0x5c, 0x62, 0x68, 0xb4, 0xc3, 0xeb, 0xe5, 0x98, 0x3b, 0xda, 0xfc, 0xd7, 0xb6, 0x0a, 0x02, 0xd1, 0x24, 0x7c, 0x76, 0xb2, 0xcd, 0xe2, 0xe5, 0x6c, 0x2c, 0x15, 0x2e, 0x17, 0x99, 0x59, 0x5c, 0xd1, 0x23, 0x72, 0x96, 0xbc, 0x9c, 0x1a, 0x74, 0xe1, 0x04, 0xcd, 0x9f, 0x5f, 0xb4, 0x1c, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3353 = { .name = "xdh_wei448_3353", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3353_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3353_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3353_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 259 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3354 for XDH, tcId is 260 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3354_peerpubkey[] = { 0x63, 0xb4, 0x75, 0xdd, 0x74, 0x8d, 0x69, 0xa3, 0xd9, 0xbd, 0x58, 0xb4, 0x0a, 0xad, 0x21, 0x4a, 0x49, 0x7f, 0xf6, 0xdd, 0xc1, 0x85, 0x95, 0x2d, 0xa9, 0xdf, 0x7f, 0x10, 0xf1, 0x47, 0x46, 0xd2, 0xfb, 0x3b, 0xa8, 0xa1, 0x63, 0xc6, 0x96, 0x84, 0x66, 0x0a, 0xda, 0x69, 0x5d, 0x97, 0xaa, 0x77, 0x5e, 0xfe, 0x31, 0x97, 0x83, 0x21, 0x0f, 0xb9, }; static const unsigned char xdh_wei448_3354_privkey[] = { 0xd4, 0xbe, 0x35, 0x9d, 0x94, 0x86, 0x27, 0xc6, 0x5c, 0x40, 0x66, 0x6b, 0x6f, 0xc5, 0x8d, 0xa9, 0x8a, 0x6d, 0x17, 0xa4, 0x37, 0xfc, 0x74, 0x5e, 0x1d, 0x08, 0x2c, 0x65, 0x45, 0xf5, 0xd2, 0x37, 0x1b, 0x25, 0xdf, 0x69, 0x09, 0x61, 0x95, 0x92, 0x4f, 0x45, 0x65, 0x72, 0x59, 0x43, 0xfa, 0x10, 0x89, 0xee, 0x19, 0x34, 0xf7, 0x67, 0x16, 0x93, }; static const unsigned char xdh_wei448_3354_sharedsecret[] = { 0xe6, 0x9b, 0x39, 0x17, 0xc3, 0xca, 0xf5, 0x8d, 0xfe, 0x8c, 0x9b, 0x60, 0x15, 0x44, 0xd3, 0x19, 0xa0, 0x05, 0x44, 0xf3, 0xc8, 0xba, 0x7c, 0x8c, 0x4d, 0x55, 0x71, 0x16, 0xd9, 0x41, 0x61, 0x71, 0xbb, 0x84, 0xce, 0x2d, 0xc1, 0xac, 0x72, 0x32, 0x49, 0x60, 0x50, 0x23, 0xd3, 0x9d, 0x28, 0x7f, 0x17, 0xf0, 0x23, 0x1c, 0x61, 0x1e, 0x6c, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3354 = { .name = "xdh_wei448_3354", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3354_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3354_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3354_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 260 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3355 for XDH, tcId is 261 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3355_peerpubkey[] = { 0x07, 0x31, 0xcb, 0x8c, 0x77, 0xf5, 0xb9, 0xe5, 0x1a, 0x90, 0x3b, 0x86, 0x47, 0x5e, 0x41, 0xa3, 0x7a, 0xbc, 0xb0, 0xef, 0xfb, 0x89, 0x8c, 0x6c, 0x8d, 0xe7, 0x1f, 0x28, 0xc8, 0x29, 0x2b, 0xe4, 0xa2, 0xcc, 0xdf, 0xf1, 0x3b, 0x62, 0xed, 0xd2, 0x1a, 0x8f, 0xad, 0x84, 0x6d, 0x0e, 0x1d, 0x9e, 0xac, 0x18, 0xcc, 0x4d, 0xe9, 0x23, 0x2d, 0x0e, }; static const unsigned char xdh_wei448_3355_privkey[] = { 0xc4, 0x21, 0xe2, 0x0c, 0x39, 0x1c, 0x60, 0xcf, 0x4a, 0xbc, 0x0d, 0x57, 0x2f, 0x33, 0x5c, 0x36, 0x7b, 0xf0, 0x2c, 0xd5, 0x98, 0x6f, 0x38, 0xc3, 0x80, 0x5f, 0xf3, 0x9f, 0xa9, 0x66, 0x08, 0x76, 0x80, 0x06, 0x30, 0x3e, 0xf5, 0xfd, 0x11, 0x87, 0xaf, 0x2d, 0x3a, 0x66, 0x72, 0xe5, 0x18, 0x16, 0x6b, 0x44, 0x8d, 0xc7, 0x9f, 0xe7, 0x1d, 0x9f, }; static const unsigned char xdh_wei448_3355_sharedsecret[] = { 0x7a, 0x7f, 0x60, 0xd5, 0x04, 0x45, 0x29, 0x98, 0xa6, 0x15, 0x37, 0x78, 0xe4, 0x9b, 0x66, 0x39, 0x76, 0xd7, 0x5a, 0xa8, 0x63, 0xa5, 0x71, 0xb2, 0xdc, 0x8c, 0x99, 0xbd, 0x4d, 0xd6, 0x12, 0x52, 0x19, 0x3e, 0x55, 0xfa, 0x06, 0x8b, 0x45, 0x19, 0x42, 0x71, 0xb3, 0xa3, 0x96, 0x91, 0x2a, 0x2c, 0xa3, 0x68, 0xb5, 0x60, 0x55, 0xb6, 0xf1, 0xc9, }; static const wycheproof_xdh_test xdh_wei448_3355 = { .name = "xdh_wei448_3355", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3355_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3355_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3355_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 261 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3356 for XDH, tcId is 262 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3356_peerpubkey[] = { 0xe1, 0x20, 0xba, 0xc8, 0xb1, 0x25, 0x14, 0x25, 0xb2, 0x44, 0xdb, 0x72, 0x12, 0x4d, 0xd9, 0x6c, 0x2c, 0x52, 0xcc, 0xa8, 0x2b, 0x42, 0x57, 0x00, 0x07, 0x0b, 0xb8, 0xa7, 0xdf, 0x81, 0x04, 0x35, 0x18, 0x98, 0x07, 0x62, 0x02, 0x2f, 0x0f, 0xc9, 0xe0, 0x9d, 0x15, 0xfc, 0xcb, 0x06, 0xb7, 0x6f, 0x5f, 0x8a, 0x57, 0x2a, 0x4b, 0x79, 0xee, 0x15, }; static const unsigned char xdh_wei448_3356_privkey[] = { 0x30, 0x12, 0xf7, 0x85, 0x1f, 0x3c, 0xe0, 0xaa, 0x48, 0x1d, 0xc6, 0x5c, 0x32, 0x22, 0x39, 0x79, 0x75, 0x11, 0xa6, 0xee, 0x1f, 0x02, 0xb1, 0x02, 0x6d, 0x49, 0x03, 0x2e, 0xfb, 0x99, 0x85, 0x03, 0xd7, 0x25, 0x05, 0xc7, 0x26, 0x1c, 0x61, 0xcd, 0x69, 0x8b, 0xa8, 0xae, 0xc1, 0xd1, 0xb9, 0xa8, 0x60, 0xe9, 0x90, 0x8c, 0x81, 0xe5, 0x63, 0x90, }; static const unsigned char xdh_wei448_3356_sharedsecret[] = { 0xe1, 0x56, 0x0d, 0xab, 0x7b, 0xb1, 0x8f, 0x74, 0xed, 0x8a, 0x98, 0x5f, 0x51, 0x99, 0x3d, 0x65, 0x59, 0xc3, 0x12, 0xfa, 0x45, 0x3d, 0x1e, 0xe8, 0x45, 0x47, 0xf3, 0x5f, 0xa8, 0x69, 0x4e, 0x97, 0x4a, 0xb6, 0x01, 0xdb, 0xad, 0xad, 0x46, 0x58, 0xd6, 0x99, 0x97, 0x77, 0xba, 0x0d, 0xad, 0x19, 0x9a, 0xb0, 0xc2, 0x2d, 0x49, 0x51, 0x1f, 0x16, }; static const wycheproof_xdh_test xdh_wei448_3356 = { .name = "xdh_wei448_3356", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3356_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3356_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3356_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 262 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3357 for XDH, tcId is 263 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3357_peerpubkey[] = { 0xa4, 0xb4, 0x6e, 0xd5, 0xa3, 0x64, 0xeb, 0xe3, 0x50, 0x4c, 0xfe, 0x32, 0xd5, 0x97, 0xfc, 0x7d, 0xfc, 0x8d, 0xc7, 0x26, 0x8b, 0x15, 0xfd, 0x40, 0xd6, 0xa3, 0x1d, 0x75, 0xfa, 0x74, 0x45, 0x6c, 0x6f, 0x7d, 0xe8, 0x92, 0xb4, 0x8d, 0x08, 0x94, 0xaf, 0x6a, 0xf6, 0x99, 0x11, 0x44, 0xff, 0xe6, 0x21, 0x3c, 0xab, 0xf8, 0x63, 0xde, 0xc0, 0x41, }; static const unsigned char xdh_wei448_3357_privkey[] = { 0xbc, 0x87, 0x11, 0x09, 0xd0, 0x26, 0xb1, 0x41, 0x34, 0x9f, 0xd6, 0xcb, 0x97, 0xa3, 0x65, 0xba, 0xf1, 0x8d, 0x7e, 0x40, 0xc3, 0x11, 0xde, 0x98, 0x0f, 0x50, 0x21, 0x7e, 0x7f, 0xf1, 0xeb, 0x86, 0x9a, 0x5f, 0x9f, 0x29, 0xde, 0x1b, 0xd7, 0x60, 0xf4, 0x31, 0x3c, 0x01, 0x0d, 0xab, 0x9c, 0xbe, 0xa3, 0xfd, 0xb1, 0x2b, 0x95, 0xb7, 0xc9, 0x83, }; static const unsigned char xdh_wei448_3357_sharedsecret[] = { 0x28, 0x44, 0x9c, 0x1f, 0x5c, 0x54, 0x3e, 0x09, 0x41, 0x7e, 0x3d, 0xb5, 0x7b, 0xff, 0xa6, 0xc2, 0x9e, 0x0e, 0xe4, 0x39, 0x52, 0xc1, 0x0a, 0xb2, 0xbd, 0xba, 0x80, 0x6b, 0xd0, 0xbe, 0x28, 0xd2, 0xe9, 0xc4, 0x68, 0x4c, 0xe5, 0xc5, 0xcd, 0xdf, 0x2a, 0x67, 0x88, 0x33, 0xfc, 0x2f, 0x05, 0x85, 0x23, 0x02, 0xdd, 0x28, 0x30, 0x98, 0xd1, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3357 = { .name = "xdh_wei448_3357", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3357_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3357_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3357_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 263 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3358 for XDH, tcId is 264 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3358_peerpubkey[] = { 0xdc, 0x9d, 0xf7, 0x90, 0x6a, 0xc7, 0x0e, 0xeb, 0xa1, 0x3a, 0x76, 0x6f, 0xfe, 0x82, 0xdf, 0x94, 0xc8, 0x33, 0xbd, 0x1b, 0xd5, 0x2c, 0x65, 0x44, 0x9b, 0x1a, 0xba, 0x4d, 0x3c, 0x3b, 0x36, 0x06, 0x02, 0xac, 0x30, 0x48, 0x37, 0x78, 0x22, 0x92, 0x3d, 0xb8, 0x06, 0x4c, 0x7d, 0xbd, 0x68, 0xf5, 0x3f, 0xbe, 0xc5, 0xe8, 0x6a, 0xb2, 0x3c, 0x56, }; static const unsigned char xdh_wei448_3358_privkey[] = { 0x9c, 0xfa, 0x3e, 0xb1, 0x9c, 0x53, 0x80, 0x84, 0xdc, 0x9b, 0x90, 0x03, 0xb1, 0xb8, 0x0a, 0xcb, 0x5a, 0x61, 0xf6, 0xbb, 0xf4, 0x93, 0xff, 0x82, 0x85, 0xc8, 0xcb, 0xf6, 0x48, 0xcc, 0x25, 0x87, 0x7c, 0xec, 0x79, 0x2e, 0x57, 0x3e, 0xe3, 0x8f, 0x28, 0xdf, 0x15, 0x45, 0x51, 0x39, 0x2f, 0x59, 0xf3, 0x3f, 0xea, 0xa0, 0x4c, 0x72, 0x02, 0x9b, }; static const unsigned char xdh_wei448_3358_sharedsecret[] = { 0x31, 0x8a, 0x56, 0xad, 0xf9, 0x66, 0x12, 0xdd, 0x1e, 0xcc, 0x49, 0x35, 0xb4, 0xa2, 0x25, 0xae, 0x35, 0x1f, 0xcc, 0xcb, 0xd4, 0xda, 0x3e, 0x6e, 0xd1, 0x3e, 0xf8, 0x0b, 0xe8, 0x64, 0x25, 0x1f, 0x71, 0x42, 0xa8, 0xe1, 0xb0, 0x14, 0x30, 0x50, 0x8c, 0x24, 0xd8, 0xb9, 0xc4, 0x26, 0x78, 0x54, 0x86, 0x95, 0xd1, 0x39, 0x36, 0x31, 0x17, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_3358 = { .name = "xdh_wei448_3358", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3358_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3358_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3358_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 264 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3359 for XDH, tcId is 265 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3359_peerpubkey[] = { 0xb1, 0xe6, 0x5a, 0x10, 0x78, 0x29, 0xd8, 0x4d, 0x3b, 0x3b, 0x7b, 0x66, 0x4b, 0xaf, 0x01, 0xdc, 0xa5, 0x51, 0x6b, 0xaa, 0xf6, 0x2d, 0x3d, 0xc3, 0x3d, 0x91, 0x7c, 0x60, 0x88, 0x33, 0xdd, 0x0d, 0x72, 0x2f, 0x11, 0x59, 0x4c, 0x08, 0xf9, 0x86, 0x99, 0xa6, 0xa2, 0x2e, 0xf7, 0x89, 0x74, 0xc1, 0x5a, 0xdc, 0x90, 0x06, 0x09, 0x52, 0x7a, 0x7a, }; static const unsigned char xdh_wei448_3359_privkey[] = { 0xf4, 0x7a, 0x0e, 0xbb, 0x03, 0xfd, 0x34, 0x50, 0x0f, 0xb0, 0xca, 0xe9, 0x53, 0x7f, 0x84, 0x50, 0x22, 0xd1, 0xfd, 0x0c, 0xa1, 0x95, 0xff, 0x57, 0x05, 0xc9, 0x47, 0x12, 0x5f, 0xcd, 0x75, 0x19, 0xc9, 0x30, 0x1e, 0x53, 0x90, 0x40, 0xd6, 0x70, 0x0f, 0x13, 0xa9, 0x3d, 0xfc, 0xd1, 0xbc, 0x90, 0x81, 0x21, 0xb9, 0x9a, 0x48, 0xfa, 0xc2, 0x9c, }; static const unsigned char xdh_wei448_3359_sharedsecret[] = { 0x82, 0xa9, 0xa3, 0xe6, 0x67, 0xc2, 0xd6, 0x0f, 0xa0, 0xfc, 0x83, 0xb3, 0x38, 0x62, 0x83, 0x7c, 0xf3, 0x68, 0x2f, 0xd9, 0x73, 0x57, 0xb1, 0x38, 0x98, 0x21, 0x15, 0x59, 0x0f, 0x92, 0xb1, 0xcc, 0xdc, 0x41, 0x50, 0x30, 0x3f, 0x4c, 0x67, 0x33, 0x04, 0x76, 0xa8, 0xda, 0xdd, 0x2b, 0x61, 0xca, 0x40, 0xbb, 0xc3, 0x86, 0x24, 0x58, 0x5f, 0x8a, }; static const wycheproof_xdh_test xdh_wei448_3359 = { .name = "xdh_wei448_3359", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3359_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3359_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3359_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 265 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3360 for XDH, tcId is 266 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3360_peerpubkey[] = { 0xa9, 0xfc, 0x50, 0xd4, 0x34, 0x71, 0xbd, 0x14, 0xcf, 0x7e, 0xf4, 0x21, 0x9d, 0xc7, 0xec, 0x09, 0x34, 0x80, 0x71, 0xa8, 0xcf, 0xc0, 0x73, 0xd9, 0x0e, 0xc2, 0x67, 0x27, 0x56, 0x9e, 0xf1, 0x1c, 0x4c, 0xe6, 0x56, 0x5d, 0x90, 0x61, 0x00, 0x0b, 0xc8, 0x3f, 0xd6, 0x4a, 0xe8, 0x22, 0xc3, 0x14, 0x4e, 0xa0, 0x27, 0x7c, 0xf2, 0x71, 0xd3, 0xf6, }; static const unsigned char xdh_wei448_3360_privkey[] = { 0x18, 0x53, 0x2d, 0x04, 0xfe, 0x1e, 0x3a, 0xf6, 0xdb, 0xab, 0xbe, 0x86, 0x52, 0x49, 0x5d, 0xb6, 0x40, 0xe0, 0xb3, 0x95, 0x14, 0xfa, 0x26, 0xc2, 0x0c, 0x86, 0x7f, 0x8e, 0x85, 0x37, 0xfc, 0x93, 0x70, 0xa4, 0x23, 0x05, 0x65, 0x99, 0x44, 0xea, 0xb2, 0x09, 0x3b, 0xbf, 0xc9, 0xc5, 0xe3, 0xeb, 0x75, 0x9f, 0x07, 0x86, 0xfb, 0x05, 0x78, 0x87, }; static const unsigned char xdh_wei448_3360_sharedsecret[] = { 0x65, 0xb4, 0xfa, 0x3d, 0x4d, 0x65, 0xfe, 0xbb, 0x2c, 0x57, 0xc9, 0xf9, 0xcc, 0xbb, 0x57, 0x30, 0xb1, 0xe6, 0xc8, 0xa1, 0x9e, 0xe3, 0x7a, 0xc3, 0xa9, 0x04, 0x61, 0xe1, 0xa9, 0xa4, 0x69, 0x6a, 0x5b, 0x51, 0x29, 0xe1, 0x7b, 0x1a, 0xb4, 0x69, 0x4b, 0x67, 0xfd, 0x88, 0x53, 0xda, 0x3a, 0x75, 0x23, 0x1b, 0x6f, 0x4c, 0x2c, 0x86, 0x65, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3360 = { .name = "xdh_wei448_3360", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3360_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3360_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3360_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 266 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3361 for XDH, tcId is 267 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3361_peerpubkey[] = { 0x7e, 0xcc, 0x90, 0xce, 0xa3, 0x06, 0xfb, 0x13, 0x7f, 0x07, 0x2e, 0x6f, 0x3e, 0x1b, 0x20, 0x8a, 0x11, 0xb4, 0x01, 0xc6, 0xc9, 0x3b, 0xee, 0x08, 0x27, 0x69, 0xbc, 0x1f, 0x77, 0x93, 0xdd, 0xbd, 0xb1, 0x40, 0xdc, 0x97, 0x1b, 0x8f, 0x63, 0x90, 0x46, 0x86, 0xf4, 0xa5, 0xa3, 0x0a, 0xa9, 0xf8, 0x07, 0xce, 0x38, 0xb4, 0xe8, 0xf6, 0xef, 0x10, }; static const unsigned char xdh_wei448_3361_privkey[] = { 0xe0, 0x36, 0xdf, 0x73, 0xea, 0x2b, 0x42, 0xce, 0x38, 0x5d, 0xda, 0xcb, 0x37, 0xa1, 0x31, 0x23, 0x91, 0x76, 0xda, 0x91, 0x64, 0x2f, 0x9d, 0x32, 0x81, 0x90, 0x48, 0xd6, 0x90, 0xc6, 0x77, 0x6f, 0xa3, 0x3a, 0x8d, 0x9a, 0xf6, 0x62, 0x09, 0x03, 0x0e, 0x3f, 0x54, 0x3b, 0x15, 0x84, 0xb6, 0xd4, 0xa8, 0xaf, 0x02, 0xe7, 0x26, 0xf9, 0x0e, 0x92, }; static const unsigned char xdh_wei448_3361_sharedsecret[] = { 0x9d, 0x88, 0x9f, 0xfb, 0xf9, 0x65, 0xdd, 0x3d, 0x91, 0xa3, 0xb8, 0xcd, 0x89, 0xae, 0xc0, 0x0a, 0x49, 0xb0, 0x87, 0xaf, 0x17, 0x1d, 0xcc, 0xdf, 0x16, 0x7b, 0xc5, 0x90, 0x7e, 0xeb, 0x4d, 0x87, 0x10, 0xf9, 0x35, 0xc3, 0x1a, 0xb2, 0xb6, 0xfc, 0x7a, 0xe6, 0x55, 0xf0, 0xab, 0x34, 0x2d, 0x1a, 0x9d, 0x6a, 0x80, 0xcb, 0x75, 0x95, 0xa2, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3361 = { .name = "xdh_wei448_3361", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3361_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3361_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3361_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 267 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3362 for XDH, tcId is 268 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3362_peerpubkey[] = { 0x54, 0x95, 0x00, 0xe6, 0x64, 0xed, 0x20, 0x37, 0xd2, 0x07, 0x10, 0xf4, 0x27, 0xdf, 0xae, 0x6e, 0x20, 0xbe, 0x0e, 0xce, 0xbd, 0x42, 0x04, 0x20, 0x60, 0x79, 0xcb, 0x66, 0x13, 0x01, 0x2e, 0x13, 0x72, 0x5b, 0xd2, 0x36, 0x22, 0x4c, 0x68, 0x98, 0x7d, 0xf0, 0xd0, 0x8a, 0xfe, 0xb8, 0x4f, 0xb8, 0x96, 0x34, 0xf2, 0xd5, 0x11, 0x72, 0xd7, 0x5c, }; static const unsigned char xdh_wei448_3362_privkey[] = { 0x0c, 0x56, 0x46, 0x8b, 0xfd, 0x25, 0xd2, 0x4b, 0x54, 0xe2, 0x7f, 0xf3, 0xc5, 0xe6, 0x69, 0x95, 0x1c, 0x38, 0xa9, 0x87, 0x7d, 0x3e, 0xcf, 0x40, 0x02, 0x1a, 0x5e, 0xe9, 0xdd, 0xb8, 0x6a, 0xaa, 0xe3, 0x7a, 0xdf, 0x14, 0x37, 0x2e, 0x96, 0x2b, 0x4d, 0x28, 0xa5, 0xd8, 0x5b, 0x51, 0xe5, 0xb0, 0x93, 0x9c, 0x8e, 0x9b, 0x5d, 0xc7, 0xd6, 0x85, }; static const unsigned char xdh_wei448_3362_sharedsecret[] = { 0xa7, 0x6e, 0x9e, 0x26, 0x31, 0xa1, 0x01, 0x5d, 0xbd, 0x5d, 0xd8, 0xc7, 0x48, 0xaa, 0x19, 0xc0, 0x7f, 0x8b, 0x35, 0xc0, 0xce, 0xab, 0x91, 0xce, 0x6b, 0xdf, 0x9e, 0x7d, 0x8a, 0x1f, 0x30, 0x0f, 0xa4, 0xa6, 0x12, 0x18, 0xf2, 0x56, 0xe7, 0x25, 0x97, 0x75, 0x77, 0x82, 0xed, 0xd2, 0x20, 0xbb, 0x73, 0x79, 0x48, 0xb1, 0xb8, 0x00, 0x65, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3362 = { .name = "xdh_wei448_3362", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3362_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3362_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3362_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 4, tcId is 268 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3363 for XDH, tcId is 269 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3363_peerpubkey[] = { 0xa5, 0x36, 0x1d, 0x32, 0x99, 0x48, 0x82, 0xf2, 0xac, 0x7f, 0x53, 0x94, 0x44, 0x84, 0x01, 0xac, 0x01, 0xc5, 0x96, 0x28, 0xe5, 0xaa, 0x05, 0x9a, 0xf6, 0x08, 0xf6, 0x8f, 0xc3, 0x00, 0x0a, 0xf0, 0xb0, 0x54, 0x6b, 0xa1, 0xb8, 0x68, 0x24, 0x66, 0x30, 0x35, 0x8c, 0xef, 0x66, 0xe9, 0xfe, 0x7b, 0xd4, 0x3c, 0xd4, 0x18, 0xb0, 0xab, 0x05, 0x8e, }; static const unsigned char xdh_wei448_3363_privkey[] = { 0xd0, 0xe9, 0xa3, 0x8f, 0xc4, 0xca, 0x84, 0x4c, 0x58, 0xa9, 0x55, 0x37, 0x2f, 0x5d, 0xc7, 0xce, 0x69, 0xeb, 0x2d, 0x28, 0xe4, 0x82, 0x49, 0x09, 0x62, 0x3d, 0xe9, 0x71, 0x81, 0xb3, 0x73, 0xc8, 0xad, 0xe6, 0x43, 0x1f, 0x00, 0xef, 0x6f, 0x3b, 0xbd, 0x50, 0x52, 0x3d, 0xd5, 0x7f, 0x4e, 0xc5, 0x49, 0x09, 0x3a, 0xd3, 0x39, 0xdc, 0x0b, 0x92, }; static const unsigned char xdh_wei448_3363_sharedsecret[] = { 0xf2, 0x07, 0xf0, 0x56, 0x98, 0x3a, 0x0f, 0x15, 0x8b, 0x23, 0xf8, 0xa4, 0x10, 0x89, 0x9a, 0x6b, 0x31, 0x2e, 0x92, 0x39, 0x5e, 0x09, 0xec, 0xbf, 0x0b, 0x5f, 0xe3, 0xda, 0x37, 0x1e, 0x22, 0x4a, 0x80, 0x58, 0xe5, 0xa3, 0xa3, 0x1f, 0x1e, 0x2a, 0x4f, 0xff, 0xd2, 0x21, 0x34, 0xfc, 0xf0, 0x6f, 0x41, 0xba, 0x2e, 0xf6, 0xb4, 0x64, 0xb5, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3363 = { .name = "xdh_wei448_3363", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3363_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3363_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3363_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 269 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3364 for XDH, tcId is 270 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3364_peerpubkey[] = { 0xf4, 0x02, 0x2e, 0x9e, 0x4e, 0xd6, 0x49, 0x37, 0x79, 0x15, 0xf2, 0xdc, 0xdb, 0xd2, 0x47, 0x64, 0x43, 0xa4, 0xdf, 0x98, 0xe4, 0xb2, 0x26, 0xf1, 0x4a, 0xf7, 0x80, 0xd5, 0xfd, 0xf7, 0xae, 0x4b, 0x03, 0x01, 0x32, 0x7f, 0x6b, 0x24, 0x47, 0x4e, 0x48, 0xa3, 0xfd, 0xf2, 0x80, 0xcf, 0xd5, 0x7c, 0x48, 0x27, 0xf2, 0x34, 0xe0, 0xad, 0x2e, 0x12, }; static const unsigned char xdh_wei448_3364_privkey[] = { 0xe0, 0xf8, 0x49, 0x33, 0x65, 0x4e, 0xff, 0xcc, 0x42, 0x06, 0xa3, 0xb8, 0x60, 0x37, 0x9e, 0xb0, 0x6e, 0x60, 0xa8, 0x9d, 0xcc, 0x03, 0xab, 0x75, 0x59, 0x60, 0x1e, 0xec, 0xca, 0xb1, 0x41, 0xae, 0x51, 0x43, 0xd9, 0xb0, 0x2f, 0xae, 0xe9, 0xf7, 0x56, 0x7e, 0x2f, 0x4f, 0xe6, 0xb5, 0x99, 0xfe, 0xc5, 0x9c, 0x5d, 0xe3, 0x25, 0x52, 0x39, 0x99, }; static const unsigned char xdh_wei448_3364_sharedsecret[] = { 0xff, 0x11, 0xeb, 0x0a, 0x0e, 0xa0, 0xa0, 0xf7, 0x38, 0x14, 0x2d, 0x8c, 0xdd, 0x06, 0xdf, 0x11, 0x84, 0x00, 0xf2, 0x33, 0x0e, 0xba, 0x7f, 0xd4, 0xde, 0xf9, 0x12, 0xc7, 0x73, 0x11, 0x28, 0xb7, 0x67, 0x9a, 0x74, 0x99, 0x7c, 0xa1, 0x00, 0xde, 0xc1, 0xb5, 0x3a, 0x51, 0x55, 0x62, 0xea, 0x7c, 0x44, 0xb4, 0x45, 0x77, 0x81, 0x36, 0x95, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3364 = { .name = "xdh_wei448_3364", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3364_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3364_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3364_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 270 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3365 for XDH, tcId is 271 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3365_peerpubkey[] = { 0x6e, 0x22, 0xa5, 0xa1, 0x65, 0xe4, 0x5d, 0xd3, 0xf7, 0xf0, 0x6a, 0x27, 0xec, 0x3d, 0xcf, 0x4f, 0x73, 0x36, 0xf3, 0x77, 0xbe, 0x0c, 0xad, 0x1b, 0xc3, 0x2c, 0x69, 0xea, 0x46, 0x71, 0x24, 0x5f, 0xe6, 0x0f, 0xa4, 0x7e, 0x56, 0xc7, 0xab, 0x63, 0x09, 0xda, 0x8c, 0x8e, 0x3c, 0x21, 0xea, 0xc8, 0xa1, 0x9c, 0xcc, 0x59, 0xcb, 0xc4, 0x46, 0x30, }; static const unsigned char xdh_wei448_3365_privkey[] = { 0x78, 0x3c, 0x7a, 0x71, 0x18, 0x14, 0xfb, 0xb0, 0xa2, 0x8a, 0x4a, 0xa1, 0x32, 0xa1, 0x28, 0xa3, 0xc3, 0xc4, 0x02, 0x65, 0xdb, 0xf9, 0x2e, 0x7e, 0x7b, 0x69, 0x62, 0xa0, 0x17, 0xde, 0xc3, 0xd8, 0xea, 0xd2, 0xe5, 0x13, 0x61, 0xb3, 0x19, 0x96, 0xf1, 0xc3, 0xc9, 0x90, 0x0c, 0xab, 0xe2, 0x55, 0x95, 0xde, 0x1a, 0x89, 0xd4, 0x29, 0xb4, 0x91, }; static const unsigned char xdh_wei448_3365_sharedsecret[] = { 0xc2, 0x5e, 0xdf, 0x26, 0xc6, 0x82, 0xec, 0x00, 0x94, 0xf9, 0xde, 0x6a, 0x60, 0xc7, 0x12, 0x10, 0x83, 0x54, 0x56, 0x07, 0xf6, 0xfb, 0x9e, 0x73, 0x9a, 0x6b, 0x08, 0x05, 0xf0, 0x97, 0xf6, 0x9c, 0xbd, 0x9f, 0xb4, 0xc9, 0xb2, 0x93, 0x7d, 0xa0, 0xbd, 0x74, 0x2b, 0x61, 0x43, 0x9a, 0xfc, 0x98, 0xda, 0xde, 0x15, 0x40, 0xee, 0x58, 0x15, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3365 = { .name = "xdh_wei448_3365", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3365_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3365_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3365_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 271 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3366 for XDH, tcId is 272 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3366_peerpubkey[] = { 0x01, 0xde, 0x09, 0x4d, 0xed, 0x29, 0x15, 0x5f, 0x9e, 0xcc, 0xc3, 0x0c, 0x83, 0xc3, 0x29, 0xa5, 0x1d, 0x22, 0x44, 0x62, 0xc2, 0x5c, 0x7f, 0x13, 0x0b, 0xac, 0xb1, 0x9f, 0x94, 0x10, 0xaf, 0xa6, 0xfb, 0x2e, 0x3d, 0x67, 0x41, 0xb0, 0x61, 0x81, 0x1e, 0xbe, 0xb4, 0xc3, 0x44, 0x2f, 0xa5, 0x13, 0xc8, 0x76, 0x1e, 0x87, 0xda, 0x33, 0x11, 0x4f, }; static const unsigned char xdh_wei448_3366_privkey[] = { 0x38, 0xa0, 0x3d, 0x14, 0xa4, 0xae, 0x3d, 0xe5, 0xa5, 0xbf, 0x2f, 0x21, 0x01, 0x81, 0xa2, 0x9d, 0x5a, 0x4d, 0x53, 0x2b, 0x10, 0xc6, 0x0e, 0x6c, 0x87, 0x2b, 0x8d, 0x72, 0x7a, 0x19, 0x68, 0xba, 0x64, 0x79, 0x11, 0x69, 0xb0, 0x26, 0x15, 0xdc, 0x23, 0x36, 0x7b, 0x13, 0xaf, 0xdb, 0xfb, 0x06, 0x4c, 0x61, 0xe2, 0x56, 0xb2, 0xf1, 0x8a, 0x9e, }; static const unsigned char xdh_wei448_3366_sharedsecret[] = { 0xb2, 0xed, 0xb7, 0xde, 0x66, 0xc3, 0x39, 0xd5, 0x48, 0xca, 0x02, 0x1a, 0x44, 0x87, 0x7e, 0x6a, 0x3e, 0xc2, 0x4b, 0xe9, 0x6a, 0x30, 0xb7, 0xe3, 0x92, 0xb2, 0x2a, 0xd5, 0x6e, 0xf7, 0xc7, 0x5f, 0xcb, 0x70, 0xc5, 0xcc, 0x37, 0xb0, 0x17, 0xec, 0x21, 0x58, 0x43, 0x06, 0x33, 0xe3, 0xa6, 0xb0, 0x82, 0x1b, 0x87, 0xdc, 0x0d, 0xae, 0x0a, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_3366 = { .name = "xdh_wei448_3366", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3366_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3366_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3366_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 272 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3367 for XDH, tcId is 273 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3367_peerpubkey[] = { 0xcb, 0xe5, 0x74, 0xa3, 0xfa, 0x63, 0x42, 0x34, 0x73, 0x64, 0xb0, 0x44, 0x9a, 0x2e, 0x33, 0xf9, 0xe8, 0x40, 0xb7, 0x47, 0x53, 0x5e, 0x81, 0x94, 0x96, 0xc5, 0x94, 0x83, 0xa2, 0xe8, 0x47, 0x46, 0xd6, 0x7c, 0x44, 0x4f, 0xca, 0xf7, 0x14, 0xb4, 0x36, 0x7a, 0xc1, 0xef, 0x1c, 0x1d, 0x9d, 0x19, 0x70, 0x4a, 0xd0, 0x36, 0x94, 0x6c, 0x44, 0x7f, }; static const unsigned char xdh_wei448_3367_privkey[] = { 0xc0, 0x3c, 0xbb, 0xd2, 0x0d, 0x8b, 0x0e, 0x9f, 0x3e, 0xf1, 0xb5, 0x1a, 0x8d, 0x02, 0xac, 0x42, 0x89, 0x9d, 0x2e, 0xa2, 0x22, 0xd0, 0x87, 0xcc, 0xc0, 0xa0, 0x25, 0xdb, 0x01, 0xa5, 0xdf, 0x3d, 0xfa, 0x2a, 0xe3, 0xfd, 0x35, 0x7e, 0xab, 0x41, 0xae, 0x98, 0x5a, 0x7b, 0xfb, 0xee, 0x52, 0xa7, 0x98, 0x26, 0xb9, 0x60, 0x68, 0x83, 0x8e, 0x9b, }; static const unsigned char xdh_wei448_3367_sharedsecret[] = { 0x65, 0x28, 0xea, 0x6e, 0xa0, 0x97, 0x1c, 0xeb, 0x0b, 0xd4, 0xad, 0xf4, 0xb5, 0x62, 0x0e, 0x93, 0x6b, 0x90, 0x9c, 0xed, 0x8f, 0x64, 0xc0, 0xe3, 0x9c, 0x6e, 0xdf, 0xa2, 0xe2, 0xee, 0x68, 0x87, 0x1e, 0x17, 0x47, 0x7a, 0x53, 0xd0, 0x2d, 0xbd, 0x3e, 0x90, 0x69, 0x10, 0x2c, 0xa8, 0xa8, 0x1c, 0xdc, 0x16, 0x67, 0x84, 0xc0, 0xc5, 0x52, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_3367 = { .name = "xdh_wei448_3367", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3367_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3367_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3367_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 273 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3368 for XDH, tcId is 274 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3368_peerpubkey[] = { 0x0a, 0x9f, 0x04, 0xb9, 0x00, 0x5d, 0xc8, 0xf6, 0x74, 0xef, 0xe9, 0xb8, 0x49, 0xab, 0x56, 0x82, 0x88, 0x3f, 0x97, 0x31, 0x9b, 0x5f, 0xae, 0x83, 0xb9, 0xf7, 0x2d, 0x73, 0x63, 0x86, 0xc9, 0xed, 0x82, 0x76, 0x30, 0xde, 0xce, 0x8c, 0xf8, 0xb1, 0xb2, 0x50, 0xb2, 0x96, 0x5f, 0x6e, 0x0e, 0x6c, 0xef, 0xe2, 0x9d, 0xd6, 0xba, 0x33, 0x80, 0x8b, }; static const unsigned char xdh_wei448_3368_privkey[] = { 0x6c, 0x80, 0x14, 0x15, 0xb2, 0x77, 0x4b, 0xad, 0x10, 0xa2, 0xb7, 0x2c, 0x22, 0x32, 0x09, 0x42, 0xbf, 0xd0, 0x99, 0x4e, 0x4a, 0x2f, 0x03, 0xfb, 0xf8, 0xf8, 0x46, 0xca, 0x4e, 0x23, 0xa9, 0x3d, 0xe2, 0x41, 0x2e, 0x97, 0x36, 0x9f, 0x23, 0x9e, 0x31, 0xb5, 0x03, 0x5e, 0xd5, 0xde, 0xa3, 0x43, 0xe5, 0x16, 0x8e, 0xbb, 0xb1, 0xf9, 0xee, 0x92, }; static const unsigned char xdh_wei448_3368_sharedsecret[] = { 0xd1, 0x19, 0x42, 0xc9, 0xa7, 0x46, 0xea, 0x84, 0x0f, 0x15, 0x84, 0xf1, 0xf6, 0x54, 0xf7, 0xce, 0xcf, 0x58, 0xef, 0x22, 0xcd, 0x0e, 0xf8, 0xac, 0x46, 0xdc, 0x83, 0xda, 0xbd, 0x1d, 0xfc, 0xa1, 0x30, 0x3d, 0x25, 0xa5, 0x1c, 0x06, 0x48, 0xb3, 0x94, 0xe5, 0x0f, 0x29, 0xeb, 0x85, 0x3c, 0xe1, 0xc9, 0xc6, 0x3f, 0xd0, 0xe3, 0x77, 0xfe, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_3368 = { .name = "xdh_wei448_3368", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3368_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3368_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3368_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 274 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3369 for XDH, tcId is 275 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3369_peerpubkey[] = { 0xac, 0xcc, 0xc2, 0xcc, 0xf2, 0xf7, 0x73, 0xec, 0x14, 0xfd, 0x79, 0xef, 0x35, 0xd6, 0x3d, 0x38, 0xf5, 0xc9, 0xf7, 0xb8, 0x62, 0xfa, 0x7b, 0x21, 0xae, 0x00, 0xb6, 0x8f, 0x55, 0x65, 0xce, 0xa1, 0x6e, 0x28, 0xda, 0xe9, 0xba, 0x2e, 0x30, 0x9e, 0x81, 0xe4, 0x9e, 0x1a, 0xe9, 0xea, 0xcc, 0x33, 0xfd, 0x5b, 0xcc, 0xe2, 0x13, 0xec, 0x74, 0xb8, }; static const unsigned char xdh_wei448_3369_privkey[] = { 0xec, 0x56, 0x75, 0xdd, 0x08, 0x8b, 0x7d, 0xd2, 0x6d, 0x1c, 0xda, 0x22, 0x7f, 0xfe, 0x78, 0xf6, 0x97, 0xd1, 0xc5, 0xd5, 0x21, 0x23, 0x91, 0xf3, 0x3c, 0xf6, 0x3c, 0x23, 0x63, 0x4d, 0xac, 0xad, 0x47, 0x30, 0xbd, 0xb4, 0x35, 0x0c, 0x4b, 0xeb, 0x1d, 0x23, 0xef, 0xfb, 0x9c, 0xd3, 0x6c, 0xf1, 0x48, 0xec, 0x67, 0xe6, 0x95, 0x75, 0xb4, 0x84, }; static const unsigned char xdh_wei448_3369_sharedsecret[] = { 0x68, 0xac, 0xae, 0x35, 0x91, 0x62, 0xc4, 0xd8, 0x3c, 0x29, 0xbe, 0x84, 0xf1, 0xa0, 0xa4, 0x1b, 0x03, 0x2f, 0xc8, 0x8f, 0x64, 0xd1, 0xeb, 0x82, 0xdc, 0x98, 0x00, 0x94, 0x77, 0xac, 0xf5, 0xa6, 0x4c, 0x2a, 0x1a, 0xc8, 0x04, 0x0e, 0xea, 0x5e, 0x13, 0xfb, 0x19, 0x09, 0x5b, 0x66, 0xef, 0xc3, 0x76, 0xc9, 0x70, 0x97, 0xe0, 0x11, 0x4d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3369 = { .name = "xdh_wei448_3369", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3369_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3369_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3369_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 275 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3370 for XDH, tcId is 276 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3370_peerpubkey[] = { 0xda, 0xd4, 0xbd, 0x4f, 0xf2, 0xb1, 0xe9, 0x35, 0x40, 0x92, 0x4e, 0xd4, 0xee, 0x44, 0xe5, 0x46, 0x50, 0xc0, 0x85, 0x34, 0xc6, 0x31, 0x4e, 0x66, 0xbe, 0x91, 0xa1, 0xe8, 0x91, 0xb2, 0x42, 0xeb, 0xd6, 0x24, 0x1f, 0x69, 0x06, 0x22, 0x63, 0x25, 0xfd, 0xff, 0xe7, 0x31, 0x10, 0x13, 0xf5, 0x50, 0x5f, 0x0b, 0x19, 0x0b, 0xdf, 0xbe, 0x57, 0x18, }; static const unsigned char xdh_wei448_3370_privkey[] = { 0x04, 0xa5, 0x09, 0x84, 0x0a, 0x65, 0x8d, 0xaf, 0xf7, 0x03, 0x74, 0xd4, 0x2d, 0xec, 0x10, 0x9c, 0x37, 0x79, 0xef, 0xba, 0x47, 0x76, 0x97, 0xfa, 0x65, 0x2f, 0x81, 0x59, 0x5c, 0x8d, 0x52, 0xa7, 0xcd, 0xd0, 0xc7, 0x1a, 0x76, 0x54, 0xc5, 0x22, 0xec, 0x61, 0x0b, 0x46, 0x9b, 0xcb, 0x3a, 0x8f, 0xfc, 0x64, 0x0b, 0x4c, 0x16, 0xbc, 0x78, 0x8c, }; static const unsigned char xdh_wei448_3370_sharedsecret[] = { 0x4c, 0x81, 0xbb, 0x6f, 0x58, 0xb3, 0x21, 0x9b, 0x99, 0xd4, 0x79, 0xbe, 0x26, 0xd7, 0xf8, 0x27, 0x45, 0x80, 0xfc, 0x86, 0x95, 0x93, 0xf3, 0x2f, 0xd0, 0x5c, 0x55, 0x56, 0x10, 0x32, 0x4d, 0x4a, 0x80, 0x57, 0xa5, 0xdf, 0x88, 0xf4, 0x74, 0x20, 0xb1, 0x33, 0x67, 0xb5, 0x3f, 0xad, 0xa6, 0x6c, 0xa6, 0xf3, 0x23, 0x79, 0x01, 0x11, 0x18, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3370 = { .name = "xdh_wei448_3370", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3370_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3370_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3370_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 276 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3371 for XDH, tcId is 277 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3371_peerpubkey[] = { 0x42, 0x16, 0xbe, 0x75, 0xfd, 0xb4, 0x37, 0xee, 0x29, 0x18, 0x7a, 0x26, 0x9f, 0x63, 0x24, 0x6e, 0x2b, 0xe1, 0xd7, 0x40, 0x12, 0x76, 0x73, 0x57, 0xec, 0x87, 0x28, 0x61, 0x5f, 0xfb, 0xc5, 0xfb, 0xc0, 0x2c, 0xcf, 0xda, 0x1f, 0x3d, 0x03, 0x20, 0x3a, 0xa7, 0xe2, 0x27, 0x04, 0x91, 0x53, 0x2f, 0x0d, 0x52, 0xd8, 0xd0, 0xab, 0xd7, 0xb2, 0x48, }; static const unsigned char xdh_wei448_3371_privkey[] = { 0x54, 0x15, 0x76, 0xd1, 0x4a, 0x69, 0x1d, 0x41, 0xd8, 0x18, 0xad, 0xa6, 0xb5, 0xc9, 0x5a, 0x38, 0x2f, 0x8a, 0xe1, 0x74, 0xce, 0xd7, 0x1c, 0x3e, 0x45, 0xd0, 0x38, 0x9f, 0x1f, 0xdf, 0x00, 0x8a, 0x61, 0x61, 0x23, 0x67, 0x5d, 0x32, 0xe5, 0x2b, 0xbc, 0x78, 0xab, 0xa8, 0x01, 0x6e, 0xb5, 0x25, 0x41, 0x9c, 0xd6, 0x75, 0xd2, 0x2d, 0x70, 0x96, }; static const unsigned char xdh_wei448_3371_sharedsecret[] = { 0x5e, 0x3e, 0x15, 0x68, 0x0a, 0xcf, 0x3a, 0x6b, 0xdb, 0x33, 0x68, 0x8d, 0xed, 0xcd, 0x6b, 0xe5, 0x10, 0x4d, 0x4d, 0xa3, 0x6b, 0xa9, 0xfc, 0x87, 0x3f, 0x28, 0xed, 0xb5, 0x38, 0x3b, 0x15, 0xae, 0x37, 0x8c, 0xbe, 0x26, 0x1b, 0x17, 0xa0, 0xbe, 0xdb, 0x67, 0x2a, 0x85, 0x9b, 0xc1, 0x44, 0x94, 0x7f, 0xee, 0x2a, 0xbe, 0xbb, 0x76, 0x27, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3371 = { .name = "xdh_wei448_3371", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3371_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3371_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3371_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 277 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3372 for XDH, tcId is 278 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3372_peerpubkey[] = { 0x6b, 0x07, 0x4b, 0x4d, 0xc2, 0xdc, 0x31, 0xc4, 0x62, 0x2b, 0x87, 0xd9, 0x07, 0x13, 0x98, 0xef, 0x9a, 0xf5, 0x43, 0x6a, 0xa7, 0x32, 0xee, 0xb4, 0x44, 0xdb, 0xab, 0xd7, 0x9e, 0xd8, 0x8b, 0x00, 0x0c, 0x4a, 0xf1, 0x64, 0x86, 0xd7, 0xfe, 0x70, 0x7f, 0x80, 0x34, 0xb1, 0xbf, 0x59, 0xf6, 0xa6, 0x19, 0x7c, 0x3f, 0x1f, 0x54, 0x9d, 0x3e, 0x61, }; static const unsigned char xdh_wei448_3372_privkey[] = { 0xf8, 0x96, 0xf9, 0xb3, 0xbf, 0x25, 0x52, 0x05, 0x75, 0x18, 0xe4, 0xf3, 0x3c, 0x6e, 0x25, 0xa6, 0xda, 0x71, 0x03, 0x7b, 0x5b, 0xeb, 0x26, 0x63, 0x3c, 0x78, 0xd6, 0x25, 0x13, 0x88, 0x33, 0xd9, 0xc6, 0xc5, 0xcd, 0x74, 0x57, 0x62, 0x23, 0xd8, 0x82, 0x5d, 0x26, 0xdd, 0x53, 0x3b, 0x11, 0x5c, 0xcd, 0x55, 0x86, 0xd5, 0xa4, 0x89, 0xe3, 0x9c, }; static const unsigned char xdh_wei448_3372_sharedsecret[] = { 0x9c, 0x17, 0xe7, 0xcb, 0x18, 0x9c, 0x0c, 0xbc, 0x7c, 0xd2, 0xce, 0x66, 0xad, 0x68, 0xc1, 0x96, 0xed, 0x7e, 0xbe, 0x25, 0x52, 0x59, 0xf1, 0xc7, 0xd5, 0x52, 0x70, 0xd0, 0x7b, 0xee, 0xce, 0xe9, 0x89, 0x61, 0xdd, 0x05, 0x87, 0xdf, 0x8c, 0x42, 0x80, 0x32, 0x01, 0xad, 0x6b, 0x5c, 0xa5, 0x17, 0x71, 0x0a, 0x57, 0x07, 0xaa, 0x13, 0x18, 0x98, }; static const wycheproof_xdh_test xdh_wei448_3372 = { .name = "xdh_wei448_3372", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3372_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3372_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3372_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 278 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3373 for XDH, tcId is 279 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3373_peerpubkey[] = { 0x00, 0xef, 0xe0, 0x8c, 0xd7, 0x69, 0x40, 0xb8, 0x10, 0x9a, 0x2f, 0x29, 0xc7, 0xb4, 0x74, 0xb2, 0x66, 0xb8, 0xa4, 0xf6, 0x39, 0x4f, 0x1d, 0xba, 0x95, 0x8f, 0x5f, 0xe3, 0xb4, 0xfa, 0x07, 0x7d, 0xb1, 0xb1, 0x68, 0x87, 0xbc, 0xc2, 0x92, 0x0d, 0xf7, 0xb0, 0x27, 0xbb, 0x78, 0xf1, 0xce, 0xf5, 0x3d, 0x7a, 0xdf, 0x8f, 0xc2, 0x88, 0x18, 0x83, }; static const unsigned char xdh_wei448_3373_privkey[] = { 0x84, 0x42, 0x6a, 0x32, 0xdf, 0x1d, 0x2e, 0x21, 0x9a, 0x6b, 0x3e, 0x74, 0x49, 0x97, 0xc5, 0x9b, 0x34, 0x4c, 0x99, 0xe5, 0xe1, 0x7d, 0xcf, 0x26, 0x99, 0xc4, 0xea, 0xaf, 0x0d, 0x37, 0x3b, 0xa7, 0x11, 0x83, 0xee, 0xfb, 0x5d, 0x6b, 0x92, 0x65, 0x5e, 0xa4, 0x01, 0x34, 0x9b, 0xd2, 0x28, 0xad, 0x15, 0xbb, 0x97, 0x3a, 0x09, 0xc0, 0xdb, 0x9a, }; static const unsigned char xdh_wei448_3373_sharedsecret[] = { 0xfd, 0xf3, 0x76, 0xe9, 0x71, 0x77, 0x18, 0x62, 0xae, 0x8a, 0xa0, 0x04, 0x57, 0x3d, 0x49, 0xa5, 0xc1, 0x7d, 0x3d, 0x01, 0xd6, 0xa5, 0xba, 0x46, 0xbe, 0xa1, 0x94, 0x3d, 0xf0, 0x85, 0x2f, 0x3f, 0x97, 0x5c, 0x1f, 0xcd, 0xb5, 0x78, 0x02, 0x53, 0xd3, 0x5c, 0x89, 0x16, 0x6f, 0xb8, 0x24, 0x61, 0x12, 0xf3, 0xa1, 0x36, 0x4c, 0xc4, 0xeb, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_3373 = { .name = "xdh_wei448_3373", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3373_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3373_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3373_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 279 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3374 for XDH, tcId is 280 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3374_peerpubkey[] = { 0x1f, 0xe1, 0xd8, 0x91, 0x5a, 0xe8, 0xbd, 0xc6, 0xe5, 0xcb, 0x11, 0xb0, 0x89, 0xa4, 0x63, 0xb7, 0x06, 0x6f, 0x65, 0x6e, 0xc7, 0xd4, 0xe4, 0x21, 0xf1, 0x09, 0xd9, 0x99, 0x29, 0xa9, 0x08, 0x8b, 0xdb, 0x4a, 0xca, 0x2f, 0x6f, 0x0e, 0x5f, 0xb6, 0x61, 0x1d, 0x55, 0x60, 0x8a, 0x06, 0xdc, 0x60, 0xcc, 0x65, 0xad, 0x11, 0xe9, 0xb3, 0x8e, 0x98, }; static const unsigned char xdh_wei448_3374_privkey[] = { 0x70, 0x08, 0x03, 0x89, 0x33, 0x89, 0xf7, 0x13, 0x1f, 0x5b, 0x97, 0x91, 0x9e, 0xea, 0xf0, 0xed, 0xb7, 0x25, 0x1f, 0x69, 0xc0, 0x5d, 0x30, 0xd6, 0x6c, 0x6d, 0xbd, 0x63, 0xcf, 0x07, 0x5a, 0x61, 0xaa, 0xcd, 0x3d, 0x40, 0x41, 0x04, 0x4b, 0x54, 0x70, 0x93, 0xf4, 0xb7, 0xfc, 0xfe, 0x34, 0x3a, 0xcb, 0x87, 0xfb, 0x13, 0xcc, 0x1b, 0xd2, 0x9b, }; static const unsigned char xdh_wei448_3374_sharedsecret[] = { 0x8d, 0x9f, 0x9c, 0x03, 0xa5, 0x8c, 0x00, 0x0c, 0x81, 0xb0, 0xf8, 0xd1, 0x92, 0xb2, 0x7c, 0x99, 0x5e, 0x02, 0xda, 0xcf, 0x6d, 0x18, 0xbd, 0xf0, 0xde, 0x5e, 0xcd, 0x82, 0x91, 0x2f, 0x38, 0xe9, 0x99, 0x18, 0xfd, 0x4b, 0x39, 0xb5, 0x5e, 0xec, 0x83, 0x5f, 0xd4, 0x36, 0x9a, 0xc1, 0x58, 0x75, 0xec, 0x78, 0xb8, 0x48, 0x18, 0x89, 0x02, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3374 = { .name = "xdh_wei448_3374", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3374_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3374_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3374_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 280 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3375 for XDH, tcId is 281 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3375_peerpubkey[] = { 0xf6, 0xa0, 0xe6, 0x56, 0x18, 0x56, 0x09, 0x49, 0x73, 0xaa, 0x4f, 0x8f, 0x5d, 0xf2, 0xff, 0xfe, 0x6a, 0xb6, 0xef, 0x11, 0x4b, 0x92, 0xbb, 0x22, 0xb5, 0x78, 0x60, 0x32, 0xbe, 0x91, 0xf4, 0x90, 0x10, 0x9f, 0x9c, 0xfa, 0x53, 0x04, 0x19, 0x07, 0x94, 0x50, 0xdd, 0x8f, 0x8e, 0x27, 0xea, 0x49, 0xd4, 0x5d, 0x7c, 0x39, 0x6e, 0x60, 0x43, 0xd6, }; static const unsigned char xdh_wei448_3375_privkey[] = { 0x74, 0x8f, 0x0c, 0xe4, 0x83, 0xd2, 0x73, 0x00, 0x5c, 0xff, 0x64, 0x93, 0x31, 0x04, 0x80, 0x44, 0x1e, 0x1a, 0x0b, 0xf9, 0x67, 0x90, 0xc6, 0x22, 0x35, 0x1a, 0x0f, 0x0a, 0x23, 0x5a, 0x67, 0x82, 0xd2, 0xb4, 0x0f, 0x78, 0xd1, 0x41, 0x33, 0xf8, 0x33, 0x58, 0xec, 0xf3, 0xff, 0x17, 0x94, 0xc3, 0xfc, 0xde, 0x36, 0x6d, 0x82, 0x2a, 0xb2, 0x91, }; static const unsigned char xdh_wei448_3375_sharedsecret[] = { 0xa6, 0x70, 0x2c, 0x33, 0x26, 0x6b, 0x58, 0x51, 0x1b, 0x62, 0xc1, 0x1e, 0xbb, 0x0a, 0x4e, 0x36, 0xac, 0xce, 0xe3, 0x40, 0x6d, 0xac, 0x49, 0xce, 0x89, 0x55, 0xff, 0x6c, 0xab, 0x92, 0x3c, 0x18, 0x82, 0x81, 0xe3, 0x8c, 0x95, 0x35, 0x04, 0x6e, 0xb0, 0xed, 0x67, 0xc8, 0x0d, 0xa0, 0xf6, 0xea, 0xe7, 0x26, 0x2b, 0x59, 0x4a, 0xe0, 0x7d, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3375 = { .name = "xdh_wei448_3375", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3375_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3375_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3375_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 281 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3376 for XDH, tcId is 282 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3376_peerpubkey[] = { 0xcf, 0x62, 0x48, 0xd9, 0x03, 0x32, 0x60, 0x24, 0x45, 0x9a, 0x56, 0x15, 0x6e, 0xad, 0x65, 0x9e, 0x8e, 0xc1, 0xb3, 0xbc, 0x04, 0x6b, 0xa1, 0x37, 0xc3, 0xc5, 0x98, 0x6e, 0xec, 0x34, 0x72, 0x4b, 0xef, 0x55, 0x17, 0x49, 0x90, 0x72, 0xba, 0xbf, 0x99, 0x7d, 0x9a, 0xf6, 0xa1, 0x03, 0x2c, 0xa8, 0x50, 0x2a, 0x61, 0x93, 0xea, 0xd1, 0x2c, 0x46, }; static const unsigned char xdh_wei448_3376_privkey[] = { 0x5c, 0x3f, 0x8e, 0xbb, 0x85, 0xcc, 0x58, 0x69, 0xa1, 0x16, 0x17, 0x4d, 0x5e, 0xcb, 0xea, 0x01, 0x66, 0xf7, 0x94, 0x3b, 0xf3, 0x88, 0x1e, 0xad, 0x45, 0x8c, 0x31, 0xfb, 0xb8, 0xe6, 0x74, 0x48, 0x49, 0x16, 0xf7, 0x63, 0xe1, 0x39, 0x80, 0x16, 0x81, 0xeb, 0xce, 0x63, 0x0d, 0xec, 0x2b, 0x67, 0x71, 0x1d, 0x5b, 0xf9, 0x13, 0x43, 0x90, 0x95, }; static const unsigned char xdh_wei448_3376_sharedsecret[] = { 0x97, 0xff, 0xd4, 0x7b, 0xce, 0x90, 0x00, 0xac, 0xc2, 0x24, 0x75, 0xe3, 0x25, 0xf1, 0x98, 0x5a, 0x6c, 0x26, 0x99, 0x61, 0xaa, 0x11, 0xdc, 0xa3, 0x4d, 0x31, 0xa4, 0x56, 0x2e, 0x9a, 0x40, 0x18, 0x8c, 0x6f, 0x09, 0x84, 0xeb, 0x0a, 0x26, 0x2c, 0x6e, 0x11, 0x84, 0x13, 0x10, 0x82, 0x53, 0x78, 0x11, 0x88, 0x9c, 0x59, 0x71, 0xc2, 0x42, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_3376 = { .name = "xdh_wei448_3376", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3376_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3376_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3376_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 4, tcId is 282 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3377 for XDH, tcId is 283 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3377_peerpubkey[] = { 0xa0, 0x78, 0x99, 0x60, 0x3b, 0x31, 0xc8, 0xb3, 0x60, 0xf9, 0x51, 0x3e, 0xe8, 0x1b, 0xed, 0x87, 0x0f, 0xb9, 0xf6, 0xbb, 0xa0, 0x8f, 0x40, 0xac, 0xa3, 0xb7, 0x88, 0x7f, 0xfe, 0x9b, 0xab, 0xd2, 0xbc, 0x4d, 0xa3, 0x72, 0x30, 0x97, 0x13, 0x9c, 0x88, 0x46, 0xbd, 0x77, 0xd1, 0x9b, 0x39, 0xfb, 0x99, 0x22, 0x50, 0x4a, 0xb9, 0x8c, 0x8f, 0x51, }; static const unsigned char xdh_wei448_3377_privkey[] = { 0x3c, 0x32, 0xbd, 0x74, 0x55, 0xed, 0x1f, 0x0e, 0xd7, 0xe6, 0x06, 0x28, 0x8c, 0xc0, 0xa6, 0x7d, 0x30, 0x82, 0x6d, 0xc4, 0xbe, 0xc3, 0xaf, 0xf5, 0xd2, 0x22, 0xc0, 0x3c, 0x22, 0xc5, 0x46, 0x17, 0xd8, 0xef, 0xb1, 0xa5, 0x9f, 0x8d, 0x94, 0x03, 0xb4, 0x4d, 0xb5, 0x3a, 0x8f, 0x95, 0x5d, 0xf7, 0xe6, 0xd5, 0x39, 0xba, 0x37, 0x4e, 0xdd, 0x8a, }; static const unsigned char xdh_wei448_3377_sharedsecret[] = { 0x92, 0xe9, 0xc9, 0x6b, 0x8b, 0x16, 0x8f, 0xe5, 0xa3, 0xa1, 0x16, 0x6f, 0x52, 0xce, 0x2d, 0x80, 0x00, 0x8b, 0x56, 0xf0, 0xac, 0xea, 0x64, 0x2c, 0x45, 0xd6, 0xb2, 0x1e, 0x22, 0x7e, 0x38, 0x33, 0x50, 0x60, 0xc2, 0x7a, 0x06, 0xf1, 0xa2, 0x6c, 0xb9, 0xf8, 0x8a, 0x65, 0x78, 0x74, 0x9c, 0xc2, 0xf4, 0xd5, 0x4f, 0x88, 0x1e, 0x71, 0x60, 0xbe, }; static const wycheproof_xdh_test xdh_wei448_3377 = { .name = "xdh_wei448_3377", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3377_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3377_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3377_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 283 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3378 for XDH, tcId is 284 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3378_peerpubkey[] = { 0x80, 0x35, 0x79, 0x25, 0x31, 0xea, 0x3c, 0x76, 0x38, 0x9f, 0x38, 0xd9, 0x7b, 0x39, 0xcb, 0xa7, 0x88, 0xad, 0x43, 0x83, 0x8a, 0x8f, 0xcb, 0x88, 0x81, 0x7a, 0xb1, 0x13, 0x7c, 0x7a, 0xa6, 0xed, 0x29, 0xf3, 0x0a, 0x2f, 0xc9, 0x15, 0x61, 0x1a, 0xf5, 0xe6, 0xe7, 0x57, 0xfa, 0x5b, 0xc7, 0xf2, 0xe1, 0xa4, 0x35, 0x20, 0xdc, 0x50, 0x83, 0x64, }; static const unsigned char xdh_wei448_3378_privkey[] = { 0x50, 0x31, 0xbc, 0xc3, 0xad, 0x19, 0xec, 0xb8, 0x00, 0x06, 0xc5, 0x4b, 0x94, 0x9b, 0x74, 0xac, 0x37, 0x5f, 0x68, 0xbb, 0xf9, 0x8a, 0xe7, 0xbe, 0x65, 0x33, 0xde, 0xc2, 0xd4, 0x51, 0x47, 0xf3, 0x1d, 0x67, 0x8e, 0xc5, 0x05, 0x0b, 0xf2, 0xf4, 0x5a, 0x92, 0xa8, 0x57, 0xa2, 0x8f, 0xac, 0x9e, 0x20, 0x17, 0x16, 0xce, 0xd4, 0x6c, 0x45, 0x85, }; static const unsigned char xdh_wei448_3378_sharedsecret[] = { 0xc2, 0x74, 0x56, 0x71, 0x70, 0xa5, 0x30, 0xa3, 0x90, 0x82, 0x31, 0x21, 0x9b, 0x1b, 0x1c, 0xbe, 0x88, 0x5c, 0x8e, 0x46, 0x42, 0x18, 0xea, 0x90, 0xc3, 0x8e, 0x89, 0x5e, 0x85, 0x87, 0xfc, 0x43, 0xd0, 0x14, 0xf5, 0xd1, 0xb7, 0xbd, 0x7d, 0x3f, 0xbd, 0xec, 0x0c, 0xa4, 0x0d, 0x62, 0xfd, 0xb8, 0x77, 0x92, 0x9b, 0x97, 0x95, 0x39, 0x29, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3378 = { .name = "xdh_wei448_3378", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3378_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3378_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3378_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 284 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3379 for XDH, tcId is 285 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3379_peerpubkey[] = { 0xd7, 0x88, 0x06, 0x7d, 0xe2, 0xe5, 0xd9, 0x86, 0x91, 0x6d, 0xcd, 0xb8, 0xbb, 0x80, 0x5d, 0x64, 0x73, 0x01, 0x9b, 0xb4, 0xa1, 0x6e, 0x03, 0xaa, 0x48, 0x0c, 0x4f, 0x7f, 0x8b, 0xd6, 0xeb, 0x6f, 0x2b, 0xf2, 0x50, 0x11, 0x6b, 0x77, 0xcb, 0x9a, 0xed, 0x51, 0x09, 0x6c, 0x1a, 0x06, 0x87, 0x68, 0xe5, 0x74, 0xd9, 0x23, 0x9c, 0x71, 0x7e, 0xc5, }; static const unsigned char xdh_wei448_3379_privkey[] = { 0x0c, 0x69, 0x7d, 0x7d, 0x3f, 0x36, 0x1b, 0x0d, 0x72, 0xab, 0x3d, 0x45, 0x76, 0x2c, 0x7a, 0xff, 0x6c, 0xb6, 0x71, 0x05, 0x07, 0x8c, 0x21, 0x73, 0x68, 0xb0, 0x81, 0xde, 0x4f, 0xd8, 0x6d, 0x78, 0xef, 0xe5, 0xea, 0xf8, 0x35, 0xf5, 0x0c, 0xe7, 0xe3, 0x25, 0x90, 0x54, 0x67, 0x44, 0x8a, 0x7a, 0x2e, 0x7f, 0xe6, 0x84, 0xdb, 0xce, 0x5a, 0x9e, }; static const unsigned char xdh_wei448_3379_sharedsecret[] = { 0x2c, 0xf2, 0xef, 0x94, 0x60, 0xcb, 0xd0, 0x3e, 0xca, 0x6e, 0x29, 0x88, 0x40, 0xa2, 0x62, 0x9d, 0x99, 0x22, 0x51, 0x66, 0xb3, 0xe5, 0xb2, 0xf7, 0x72, 0xfb, 0x70, 0xaa, 0x38, 0xd9, 0x74, 0xa0, 0x6f, 0x57, 0x0b, 0x6d, 0x13, 0x35, 0x26, 0x49, 0x42, 0x2f, 0x65, 0xd3, 0xf0, 0xf4, 0x76, 0x32, 0x0e, 0xca, 0xc9, 0x33, 0x33, 0x99, 0x54, 0xb8, }; static const wycheproof_xdh_test xdh_wei448_3379 = { .name = "xdh_wei448_3379", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3379_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3379_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3379_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 285 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3380 for XDH, tcId is 286 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3380_peerpubkey[] = { 0xf0, 0xdd, 0x20, 0x3c, 0x95, 0x09, 0x9b, 0xaf, 0x75, 0x79, 0xe5, 0x59, 0xf2, 0x40, 0x4d, 0x21, 0xd2, 0x1d, 0xda, 0x49, 0xf6, 0x0f, 0x07, 0x9f, 0x77, 0x15, 0xf2, 0x0c, 0x6a, 0x5e, 0xda, 0x38, 0x1a, 0xb5, 0xf0, 0x89, 0xa7, 0x80, 0xf4, 0x01, 0x97, 0xbb, 0x03, 0xd7, 0x0f, 0x1f, 0x72, 0xef, 0xa0, 0x0e, 0x49, 0xe2, 0x8e, 0xad, 0xf9, 0x46, }; static const unsigned char xdh_wei448_3380_privkey[] = { 0xd8, 0xbf, 0x06, 0xfe, 0xc1, 0x96, 0x24, 0x31, 0x43, 0x77, 0x3d, 0x03, 0xc2, 0x3c, 0x6c, 0x0a, 0x8b, 0xbb, 0x57, 0xc2, 0x0c, 0x3c, 0x0e, 0xd5, 0x4c, 0xc1, 0x5a, 0xd5, 0x73, 0x42, 0x9c, 0xce, 0x18, 0x5a, 0x2c, 0x3c, 0x3e, 0xbf, 0x1a, 0x5a, 0x1c, 0x45, 0xfb, 0x74, 0xbc, 0xb8, 0x1b, 0xb5, 0xd4, 0xfc, 0xcf, 0x5c, 0xd4, 0x14, 0x67, 0x88, }; static const unsigned char xdh_wei448_3380_sharedsecret[] = { 0x61, 0x19, 0x03, 0x3f, 0x41, 0x96, 0x29, 0xbd, 0xd3, 0xd3, 0xd7, 0x65, 0xbf, 0x2d, 0xa2, 0xde, 0xd5, 0xe8, 0xa7, 0xbb, 0x5a, 0x81, 0xb1, 0xc2, 0xee, 0x60, 0xb4, 0x55, 0x16, 0x34, 0xfa, 0x2d, 0x27, 0xd7, 0x31, 0xf9, 0x1a, 0x25, 0xc1, 0x3e, 0x59, 0x94, 0x87, 0x87, 0xc3, 0x29, 0x19, 0x2f, 0x65, 0x86, 0x97, 0x88, 0x28, 0x12, 0x58, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3380 = { .name = "xdh_wei448_3380", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3380_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3380_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3380_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 286 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3381 for XDH, tcId is 287 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3381_peerpubkey[] = { 0x0c, 0x17, 0xe3, 0xbd, 0x7c, 0x05, 0x0c, 0x2a, 0x2c, 0x29, 0x80, 0xfd, 0xb6, 0xb0, 0xde, 0x32, 0xbc, 0x5e, 0x89, 0xd6, 0xd7, 0xe3, 0x47, 0x00, 0x1a, 0xe1, 0xd8, 0x7d, 0x96, 0xc4, 0x36, 0xe4, 0x58, 0x0d, 0x96, 0xe8, 0x44, 0xe5, 0xa1, 0x59, 0xde, 0x88, 0xbb, 0x7d, 0x53, 0xd4, 0xbc, 0x04, 0xfb, 0xd4, 0xa3, 0x06, 0x22, 0xe5, 0x44, 0x57, }; static const unsigned char xdh_wei448_3381_privkey[] = { 0xc4, 0xb8, 0x78, 0x78, 0x1a, 0xe5, 0x85, 0x3e, 0x90, 0x75, 0x83, 0xd2, 0x8e, 0xae, 0x2b, 0xb2, 0xb1, 0x08, 0x47, 0x26, 0x10, 0xac, 0xe2, 0x23, 0x68, 0x14, 0xfb, 0xf1, 0x4e, 0xa9, 0xee, 0xf6, 0x52, 0x50, 0xf7, 0x9a, 0x5f, 0x2e, 0xf5, 0x3c, 0x46, 0xbb, 0x1a, 0xc1, 0x84, 0xa1, 0x68, 0x5c, 0xaf, 0xa3, 0x98, 0xa3, 0x74, 0x6c, 0xc1, 0x9e, }; static const unsigned char xdh_wei448_3381_sharedsecret[] = { 0x65, 0x0d, 0x63, 0x8d, 0x93, 0xc2, 0xea, 0xbf, 0xd5, 0xd4, 0xc2, 0x15, 0x46, 0x03, 0x51, 0xf3, 0x27, 0xe5, 0x85, 0x73, 0x89, 0x88, 0x8e, 0x4e, 0x29, 0x25, 0x76, 0xd9, 0xd9, 0x1e, 0x0f, 0xea, 0x60, 0x28, 0x9e, 0x79, 0x8a, 0xe8, 0x6a, 0x31, 0x57, 0x29, 0x6c, 0xe6, 0x89, 0x15, 0xaf, 0x53, 0xb3, 0x8c, 0xa3, 0xe8, 0x71, 0xa5, 0x0e, 0x6a, }; static const wycheproof_xdh_test xdh_wei448_3381 = { .name = "xdh_wei448_3381", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3381_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3381_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3381_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 287 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3382 for XDH, tcId is 288 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3382_peerpubkey[] = { 0x31, 0x8d, 0x8a, 0x8c, 0xf1, 0x21, 0xe3, 0x65, 0xd1, 0x8d, 0xb1, 0x70, 0xde, 0xbe, 0xa4, 0x5f, 0xfc, 0xd3, 0xb7, 0x75, 0xdd, 0xab, 0xc4, 0xc3, 0x24, 0x69, 0xae, 0xa3, 0x85, 0x7b, 0x70, 0x2f, 0x9a, 0x80, 0x59, 0x48, 0xf2, 0x1b, 0x80, 0x57, 0x3a, 0x17, 0x68, 0xb5, 0x7f, 0xb9, 0x86, 0xdc, 0xb9, 0x27, 0xfe, 0xc5, 0x53, 0x5e, 0x00, 0x62, }; static const unsigned char xdh_wei448_3382_privkey[] = { 0xa4, 0x1e, 0xd8, 0x95, 0x26, 0xf0, 0x4d, 0xa4, 0xa3, 0xf4, 0xf5, 0x7c, 0xf4, 0x47, 0x4e, 0x33, 0x5e, 0xa5, 0x25, 0xc5, 0xea, 0xb3, 0x6f, 0xfb, 0x87, 0xce, 0xe1, 0x0f, 0x85, 0xb6, 0xc4, 0xa0, 0xe5, 0x17, 0x99, 0x6f, 0x2d, 0x55, 0xa9, 0x84, 0x3e, 0x29, 0xa3, 0x2e, 0xbf, 0x34, 0x1e, 0x9f, 0x2c, 0x20, 0x59, 0x0d, 0x77, 0xc4, 0x95, 0x8c, }; static const unsigned char xdh_wei448_3382_sharedsecret[] = { 0x53, 0xe2, 0x93, 0x4c, 0xfb, 0x0d, 0xf8, 0x7d, 0xd1, 0xe0, 0xdc, 0xa0, 0x5f, 0x0b, 0xa3, 0x2c, 0x2b, 0xaf, 0x60, 0xe6, 0x32, 0xd3, 0x3e, 0xbf, 0x45, 0xd2, 0x68, 0x14, 0x47, 0xce, 0xc6, 0xdf, 0xf1, 0x64, 0xe9, 0x19, 0x06, 0x4e, 0xf2, 0xe6, 0xfe, 0x72, 0x75, 0x27, 0x0a, 0xff, 0xcb, 0xb6, 0xb1, 0xdf, 0xea, 0x0d, 0xd7, 0x3d, 0x18, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3382 = { .name = "xdh_wei448_3382", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3382_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3382_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3382_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 288 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3383 for XDH, tcId is 289 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3383_peerpubkey[] = { 0x96, 0x63, 0x52, 0x65, 0x11, 0x51, 0x9a, 0xa6, 0xb2, 0x01, 0x5f, 0x25, 0x8a, 0xb0, 0x16, 0xaa, 0x2a, 0xc7, 0xae, 0x05, 0x12, 0x5e, 0xb1, 0x52, 0x8c, 0xb2, 0xe0, 0x0a, 0x8b, 0x0f, 0x0b, 0xa7, 0xab, 0x43, 0xbe, 0x08, 0xae, 0x67, 0xf0, 0x86, 0x2b, 0xc5, 0x12, 0x72, 0x54, 0xb2, 0xb2, 0x92, 0x3c, 0xc8, 0x2e, 0x32, 0xbc, 0x5d, 0x49, 0x02, }; static const unsigned char xdh_wei448_3383_privkey[] = { 0x84, 0x6d, 0xd0, 0x12, 0x51, 0x0b, 0x69, 0x86, 0x0c, 0xf9, 0x6a, 0xc5, 0x97, 0x87, 0xff, 0x8e, 0x21, 0xb4, 0x86, 0xe1, 0x10, 0xe4, 0x36, 0x52, 0xba, 0x1e, 0xda, 0x5a, 0x4a, 0x81, 0x88, 0xae, 0xf4, 0xe7, 0x66, 0x83, 0x06, 0x5c, 0x61, 0x7a, 0xdb, 0x32, 0xec, 0xf9, 0x73, 0xcf, 0x80, 0x7b, 0x5a, 0xce, 0xf2, 0xd9, 0x82, 0xdd, 0x2a, 0xb7, }; static const unsigned char xdh_wei448_3383_sharedsecret[] = { 0xb9, 0xf5, 0xa8, 0xc4, 0x63, 0xbd, 0xd4, 0x1b, 0x4d, 0xb4, 0xca, 0x69, 0x1c, 0xf5, 0x9d, 0xb2, 0x39, 0x59, 0xff, 0xe8, 0x9a, 0x43, 0x38, 0x71, 0xb5, 0x33, 0x3c, 0xc7, 0x14, 0x94, 0xf5, 0xb4, 0xc0, 0xd6, 0x9a, 0xb4, 0x07, 0x80, 0x56, 0x74, 0x03, 0x23, 0x7b, 0x02, 0x00, 0x0b, 0xb4, 0x4f, 0xa0, 0x74, 0xb8, 0xa0, 0x6a, 0xfc, 0x3e, 0xf4, }; static const wycheproof_xdh_test xdh_wei448_3383 = { .name = "xdh_wei448_3383", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3383_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3383_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3383_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 289 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3384 for XDH, tcId is 290 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3384_peerpubkey[] = { 0x39, 0xf8, 0xb7, 0xb8, 0x00, 0xdc, 0x86, 0x78, 0xc8, 0x62, 0xd0, 0xa9, 0x5c, 0x8c, 0xab, 0x7e, 0x88, 0xa0, 0x0c, 0xc1, 0x6d, 0x2d, 0x8d, 0xc7, 0x56, 0x2b, 0xe8, 0xf2, 0xbd, 0x01, 0x98, 0x10, 0xec, 0xb6, 0x8c, 0x9b, 0x01, 0xfa, 0xf9, 0xa2, 0x48, 0x77, 0xa2, 0x5e, 0xa9, 0x63, 0xe8, 0xeb, 0x23, 0x7b, 0x47, 0xf2, 0xef, 0x29, 0x25, 0x26, }; static const unsigned char xdh_wei448_3384_privkey[] = { 0x90, 0xa7, 0xd0, 0x68, 0x5d, 0xf2, 0xc5, 0xa1, 0x21, 0xe8, 0x86, 0x1a, 0x98, 0x7f, 0xbf, 0x4b, 0x56, 0x6e, 0xbb, 0xdf, 0xaf, 0xb6, 0xd1, 0x40, 0xcb, 0xa2, 0xaf, 0x9f, 0x2a, 0x24, 0x59, 0x80, 0x15, 0x79, 0x5d, 0x39, 0xd5, 0x03, 0x5a, 0x73, 0xcb, 0x28, 0x72, 0x8d, 0xd0, 0xce, 0x23, 0x7f, 0xb0, 0x50, 0x2e, 0xf6, 0xb9, 0x0f, 0xd4, 0xa3, }; static const unsigned char xdh_wei448_3384_sharedsecret[] = { 0xfd, 0x80, 0x64, 0xa2, 0xb1, 0x16, 0x51, 0x06, 0x79, 0x12, 0xee, 0x1b, 0x29, 0x9a, 0x19, 0xba, 0x76, 0x1f, 0x0d, 0x44, 0x6c, 0x26, 0xcb, 0xee, 0x6b, 0xc8, 0x5e, 0x96, 0x14, 0x9a, 0x53, 0xfc, 0x6c, 0x6f, 0xc0, 0xda, 0xbc, 0x2f, 0xaa, 0x64, 0xf0, 0x4b, 0xbe, 0x4d, 0xf0, 0x0f, 0x99, 0x48, 0x7f, 0x44, 0x47, 0x42, 0x95, 0xe1, 0x61, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3384 = { .name = "xdh_wei448_3384", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3384_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3384_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3384_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 290 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3385 for XDH, tcId is 291 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3385_peerpubkey[] = { 0x0b, 0xf3, 0xd5, 0x0d, 0x7a, 0xcb, 0x23, 0x3b, 0xd2, 0x34, 0x13, 0xc2, 0x68, 0xe5, 0xd5, 0x90, 0xb7, 0x2c, 0x6a, 0x78, 0xb7, 0x74, 0x52, 0x13, 0x8a, 0xc0, 0x93, 0x42, 0xd7, 0x28, 0xb9, 0x7b, 0xba, 0x41, 0x61, 0xf9, 0xf3, 0x30, 0x5a, 0x1a, 0x1c, 0x2f, 0x40, 0x74, 0xe0, 0xb3, 0xdd, 0x2b, 0xcf, 0x28, 0x39, 0x70, 0x6b, 0x48, 0x60, 0x82, }; static const unsigned char xdh_wei448_3385_privkey[] = { 0xd8, 0xaa, 0x6e, 0x7c, 0xaf, 0x9e, 0x7f, 0x59, 0xf2, 0xc5, 0xc5, 0x31, 0xdf, 0x61, 0xc8, 0xfb, 0x37, 0x49, 0x42, 0x2b, 0x7a, 0x9a, 0x9e, 0x77, 0x5e, 0x00, 0xd2, 0x1b, 0xbf, 0x3b, 0x29, 0xdc, 0xf4, 0xe9, 0x03, 0x1e, 0x4e, 0x0b, 0x3a, 0x71, 0xe3, 0x9c, 0x53, 0x00, 0xa7, 0x5f, 0xba, 0x99, 0x9e, 0xca, 0x62, 0x11, 0xc8, 0x48, 0x7f, 0xba, }; static const unsigned char xdh_wei448_3385_sharedsecret[] = { 0x3e, 0xb2, 0xd5, 0x05, 0xcb, 0x9b, 0x4c, 0xa3, 0x9f, 0x1e, 0x20, 0xa6, 0xdb, 0xd7, 0xd8, 0x39, 0x35, 0x63, 0x4b, 0x13, 0x14, 0x7e, 0xcf, 0xbd, 0x39, 0xca, 0xe8, 0x2e, 0xb2, 0xe0, 0x11, 0x29, 0xfc, 0xda, 0xe9, 0xbc, 0xb0, 0xb2, 0x04, 0x99, 0x55, 0x96, 0x0b, 0x65, 0x87, 0x32, 0x1e, 0xcc, 0xc5, 0x41, 0x58, 0xdf, 0x2d, 0xc5, 0x85, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3385 = { .name = "xdh_wei448_3385", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3385_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3385_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3385_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 291 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3386 for XDH, tcId is 292 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3386_peerpubkey[] = { 0xb4, 0x80, 0x64, 0xd6, 0xa9, 0x19, 0xa4, 0xf1, 0x6f, 0x38, 0x31, 0x54, 0x39, 0xee, 0x0f, 0xe5, 0x9b, 0xfc, 0xdd, 0x46, 0x13, 0x7a, 0x03, 0x27, 0x59, 0x5c, 0xaf, 0x9e, 0xf8, 0x40, 0x63, 0xb4, 0xdf, 0xc5, 0x0c, 0x4b, 0x9d, 0x13, 0xaf, 0x81, 0xd2, 0x3e, 0xed, 0x03, 0xad, 0x6f, 0x0b, 0x74, 0xd0, 0x16, 0x64, 0x34, 0x6f, 0xa8, 0x70, 0xb2, }; static const unsigned char xdh_wei448_3386_privkey[] = { 0x40, 0x40, 0x36, 0x3c, 0x5a, 0xb5, 0x18, 0x3e, 0xba, 0x95, 0xa6, 0xbd, 0xe2, 0x17, 0xe8, 0x27, 0x5e, 0x0f, 0x4c, 0xc6, 0x70, 0x36, 0xfa, 0x07, 0x6b, 0x19, 0x65, 0xd7, 0x49, 0x9b, 0x1d, 0xeb, 0x13, 0x3c, 0x87, 0xe3, 0x71, 0xea, 0x8c, 0x30, 0x6b, 0xa5, 0x33, 0xf6, 0xf4, 0x3c, 0x3a, 0xa9, 0xb6, 0x45, 0x0a, 0xb4, 0x69, 0x3c, 0xfb, 0xab, }; static const unsigned char xdh_wei448_3386_sharedsecret[] = { 0x5a, 0xb0, 0x1c, 0x0b, 0x22, 0x06, 0x9d, 0xe1, 0x7d, 0xc2, 0x89, 0xc5, 0xc0, 0x25, 0xd1, 0xd2, 0x6c, 0x62, 0xb5, 0xf6, 0x2d, 0x71, 0x41, 0x77, 0x4b, 0xd7, 0x90, 0x7d, 0xf7, 0xff, 0xf6, 0xcd, 0xc8, 0x99, 0xdd, 0x8c, 0x52, 0x2d, 0x3a, 0xb7, 0x4b, 0x63, 0x6c, 0x6e, 0xd6, 0x51, 0xc1, 0xc2, 0x70, 0x49, 0xc3, 0x1e, 0x1e, 0xc1, 0x66, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3386 = { .name = "xdh_wei448_3386", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3386_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3386_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3386_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 292 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3387 for XDH, tcId is 293 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3387_peerpubkey[] = { 0x5c, 0x21, 0x37, 0xbe, 0xa5, 0x0f, 0x8f, 0xf7, 0x95, 0x69, 0xa6, 0xae, 0xc1, 0x9d, 0x23, 0x10, 0x16, 0x4f, 0x56, 0x52, 0xa3, 0x01, 0xbd, 0x6a, 0xb1, 0x86, 0x3d, 0xc9, 0x4e, 0xc3, 0xc3, 0x1c, 0x2c, 0xa3, 0xfa, 0xb6, 0x2f, 0x31, 0xda, 0x5e, 0x33, 0x4c, 0x05, 0x0a, 0xf9, 0x3e, 0xb3, 0xb3, 0x47, 0x64, 0x89, 0x15, 0x04, 0x19, 0xf4, 0xdb, }; static const unsigned char xdh_wei448_3387_privkey[] = { 0x50, 0x13, 0x98, 0xbb, 0x75, 0x71, 0x08, 0x79, 0xb8, 0x5d, 0xfb, 0xf5, 0xec, 0xb8, 0x50, 0xba, 0x7d, 0xd3, 0x01, 0x41, 0x7f, 0x0e, 0xcc, 0x0b, 0x58, 0x94, 0x47, 0xf6, 0xf1, 0x90, 0x55, 0xc7, 0x4e, 0xa5, 0x5b, 0x6a, 0x6b, 0x74, 0xfc, 0x59, 0x74, 0xab, 0x49, 0x88, 0x1d, 0xb2, 0xa3, 0xd6, 0xf0, 0x7f, 0x6a, 0x57, 0x43, 0x8e, 0x77, 0xb2, }; static const unsigned char xdh_wei448_3387_sharedsecret[] = { 0xe6, 0x5b, 0x36, 0xc1, 0x5b, 0x12, 0x1a, 0xe2, 0xeb, 0xfa, 0xe1, 0x2b, 0x2f, 0x37, 0x02, 0xef, 0x26, 0x14, 0xf3, 0xf6, 0x80, 0xe9, 0x70, 0x7b, 0xa2, 0xa9, 0x5b, 0x45, 0x2d, 0xdd, 0xf8, 0xb1, 0x08, 0x9c, 0x7c, 0xca, 0x74, 0xae, 0x64, 0xf0, 0xf6, 0xa0, 0xc1, 0x36, 0xd2, 0x77, 0x40, 0x62, 0xef, 0xf8, 0x80, 0x0c, 0x01, 0x60, 0xc1, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3387 = { .name = "xdh_wei448_3387", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3387_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3387_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3387_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 293 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3388 for XDH, tcId is 294 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3388_peerpubkey[] = { 0x6a, 0xd8, 0x46, 0xd0, 0x92, 0x81, 0x7e, 0x34, 0x1f, 0x5d, 0x13, 0x42, 0xee, 0x60, 0x03, 0xe3, 0x82, 0x2e, 0x5c, 0x30, 0x92, 0xef, 0x05, 0x99, 0xe0, 0x11, 0x49, 0x97, 0x5d, 0x7a, 0x0d, 0xc8, 0x08, 0x5c, 0xd4, 0x49, 0x09, 0x43, 0x34, 0x3f, 0x86, 0x91, 0x38, 0x15, 0x11, 0x1b, 0x96, 0x79, 0x8e, 0x37, 0x3d, 0x56, 0xc5, 0xa7, 0x28, 0x03, }; static const unsigned char xdh_wei448_3388_privkey[] = { 0x48, 0x1c, 0x15, 0x52, 0xcb, 0x3b, 0xc7, 0x9e, 0xf4, 0xef, 0x33, 0xea, 0xd3, 0x16, 0x27, 0x35, 0xe3, 0xdf, 0x3d, 0x47, 0x15, 0x0a, 0x3f, 0xdc, 0x1f, 0x00, 0x90, 0x39, 0x1b, 0x61, 0x8f, 0xa3, 0x20, 0x69, 0x35, 0x5d, 0x18, 0x11, 0x52, 0xb0, 0xbf, 0x64, 0x1c, 0xd7, 0x8b, 0x12, 0xb7, 0xb7, 0xca, 0x85, 0x62, 0x4e, 0xa0, 0x46, 0x67, 0xae, }; static const unsigned char xdh_wei448_3388_sharedsecret[] = { 0x6a, 0x1c, 0x24, 0x8b, 0x32, 0x62, 0x56, 0x04, 0xea, 0x1d, 0x53, 0x6d, 0x83, 0xe9, 0x13, 0xa4, 0xb9, 0x6a, 0x1c, 0x86, 0x9b, 0x7c, 0x09, 0xb9, 0xb7, 0xd1, 0xce, 0x31, 0x5e, 0x24, 0xc1, 0x8b, 0x7c, 0x47, 0x9b, 0xb8, 0xe9, 0x94, 0xcf, 0x1f, 0xfd, 0x54, 0x28, 0xe7, 0x78, 0x84, 0xcb, 0x06, 0x34, 0x6f, 0xb7, 0x76, 0xaf, 0x7d, 0x52, 0x50, }; static const wycheproof_xdh_test xdh_wei448_3388 = { .name = "xdh_wei448_3388", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3388_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3388_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3388_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 294 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3389 for XDH, tcId is 295 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3389_peerpubkey[] = { 0xa0, 0x68, 0xd1, 0xa8, 0xaa, 0x41, 0xb8, 0x4a, 0x48, 0x61, 0x22, 0x0d, 0xf0, 0xd7, 0x04, 0x0e, 0x04, 0x58, 0x37, 0xf1, 0x09, 0xf9, 0xed, 0x15, 0x6d, 0x63, 0x9a, 0x8a, 0xe9, 0xa8, 0x15, 0x35, 0xfe, 0x3b, 0x0a, 0xf9, 0xb8, 0xb8, 0xfa, 0x4b, 0x6c, 0xcf, 0xf3, 0xa2, 0xb1, 0xd0, 0xb4, 0x0e, 0xca, 0x97, 0x96, 0xff, 0xc9, 0xa9, 0xbe, 0x28, }; static const unsigned char xdh_wei448_3389_privkey[] = { 0x3c, 0xd4, 0xf7, 0xc0, 0x6f, 0xab, 0x74, 0x31, 0xcc, 0xaa, 0x07, 0x6f, 0x6e, 0xa2, 0x11, 0x70, 0xeb, 0x6e, 0x93, 0xa3, 0xc9, 0xec, 0xb5, 0x51, 0x66, 0xfd, 0xc4, 0x19, 0xf3, 0x21, 0xfa, 0x3b, 0xe8, 0xa3, 0x0d, 0xfc, 0x4a, 0xd8, 0xd4, 0x11, 0x86, 0xbb, 0x15, 0x5d, 0x9e, 0x73, 0x72, 0x4a, 0xd0, 0xc2, 0x67, 0xa4, 0x9b, 0x9a, 0x0c, 0xac, }; static const unsigned char xdh_wei448_3389_sharedsecret[] = { 0xe1, 0x0b, 0x5f, 0x67, 0x27, 0x53, 0x75, 0x67, 0x83, 0xc9, 0x52, 0x4f, 0x04, 0x0a, 0xc0, 0x27, 0xcc, 0x64, 0x03, 0xca, 0x02, 0x5b, 0x5d, 0x6c, 0xd3, 0x93, 0xd0, 0xe7, 0x4a, 0xa5, 0x01, 0x2b, 0xaa, 0x50, 0xc6, 0xf7, 0x20, 0xd3, 0xf5, 0x21, 0xf8, 0xbf, 0x68, 0x9e, 0x3e, 0x5e, 0x6f, 0x54, 0xd1, 0xdb, 0xf2, 0x28, 0x6d, 0x71, 0xad, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_3389 = { .name = "xdh_wei448_3389", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3389_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3389_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3389_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 295 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3390 for XDH, tcId is 296 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3390_peerpubkey[] = { 0x1d, 0x10, 0x06, 0xcf, 0x7e, 0xd9, 0x4e, 0x0a, 0xeb, 0x5b, 0x73, 0x58, 0x76, 0x99, 0xf0, 0xee, 0x7a, 0xcd, 0xee, 0x1d, 0x46, 0x8f, 0x5e, 0x10, 0xe7, 0xcb, 0xd2, 0xbd, 0xf8, 0x92, 0xe1, 0xa4, 0x38, 0x84, 0xff, 0x34, 0x8e, 0x81, 0x9e, 0x4a, 0x32, 0x64, 0xd5, 0x28, 0x26, 0xda, 0xf8, 0x6b, 0xb4, 0xe9, 0x2c, 0x1a, 0xb7, 0x8d, 0x14, 0x3d, }; static const unsigned char xdh_wei448_3390_privkey[] = { 0xac, 0x5b, 0x24, 0xe0, 0x9b, 0xb8, 0x9f, 0x2b, 0xae, 0x47, 0xfc, 0xc3, 0x85, 0x7d, 0xda, 0x33, 0x6a, 0x9f, 0xfe, 0xf7, 0xfe, 0xd7, 0xf0, 0xd8, 0x0b, 0xe2, 0xbd, 0xb5, 0x65, 0xdf, 0x21, 0xb3, 0xaf, 0x2f, 0x46, 0x9d, 0x23, 0x92, 0xb9, 0xc8, 0x69, 0x19, 0x7b, 0xb3, 0x95, 0xff, 0x0b, 0xe9, 0x42, 0xef, 0xbd, 0x2a, 0xe4, 0x40, 0x97, 0xb3, }; static const unsigned char xdh_wei448_3390_sharedsecret[] = { 0x1f, 0x6a, 0x76, 0xd8, 0x38, 0x73, 0xcf, 0xb8, 0x79, 0xdd, 0x85, 0xc7, 0x05, 0x54, 0x65, 0x8b, 0xbc, 0x6f, 0xe4, 0x23, 0x4e, 0x33, 0x80, 0x75, 0x5c, 0xe2, 0xb2, 0xa4, 0x57, 0x56, 0x83, 0x61, 0x86, 0x86, 0xab, 0x49, 0x4a, 0xc5, 0x58, 0xfa, 0x7a, 0xf9, 0xe2, 0xb7, 0x23, 0xde, 0xe9, 0xcf, 0x78, 0x3f, 0x7a, 0x7f, 0xb1, 0x7c, 0x8a, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_3390 = { .name = "xdh_wei448_3390", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3390_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3390_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3390_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 296 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3391 for XDH, tcId is 297 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3391_peerpubkey[] = { 0x6c, 0x6f, 0x67, 0x67, 0x2c, 0x21, 0xe1, 0xce, 0x57, 0x4c, 0xf5, 0x7e, 0xb7, 0x59, 0x67, 0x0a, 0xc8, 0x9a, 0x70, 0xa8, 0xcf, 0x5b, 0x2f, 0xd6, 0x07, 0x52, 0x12, 0x2e, 0x78, 0x98, 0xd9, 0x14, 0x0f, 0x80, 0xa5, 0x0c, 0x48, 0x8a, 0x4d, 0xe4, 0x75, 0xd5, 0x63, 0xc9, 0x3c, 0x47, 0x93, 0x18, 0x26, 0xde, 0xef, 0x68, 0xcf, 0x68, 0xd5, 0x5d, }; static const unsigned char xdh_wei448_3391_privkey[] = { 0x50, 0x24, 0x6f, 0xb7, 0xc5, 0xc6, 0xd1, 0xfe, 0x57, 0x89, 0xd1, 0x21, 0x20, 0x6c, 0x0e, 0xfe, 0x5e, 0x55, 0xf3, 0x01, 0x3a, 0x3f, 0x58, 0xde, 0xf7, 0x7e, 0x93, 0xc6, 0x5b, 0x53, 0xdf, 0xa3, 0x25, 0x1a, 0x4c, 0x8e, 0xb6, 0x97, 0x6d, 0xc1, 0x82, 0xaf, 0x2a, 0x18, 0x64, 0x11, 0xaa, 0xca, 0x3a, 0x87, 0x09, 0xc3, 0x8e, 0xf9, 0x03, 0xb0, }; static const unsigned char xdh_wei448_3391_sharedsecret[] = { 0xe2, 0xd0, 0x4a, 0xf5, 0x98, 0xc7, 0xa0, 0x89, 0xb8, 0xac, 0x47, 0x55, 0xee, 0x0e, 0x9a, 0x62, 0x4e, 0xdf, 0xe1, 0x86, 0x66, 0xa6, 0x27, 0xde, 0xff, 0xba, 0xcb, 0xab, 0x67, 0x7c, 0xc8, 0xef, 0x4d, 0x84, 0xf2, 0x00, 0xb4, 0x97, 0xc5, 0x28, 0xd4, 0x64, 0xda, 0xa1, 0x1f, 0x61, 0x5b, 0xbd, 0x19, 0x1f, 0x44, 0x38, 0x2b, 0xb3, 0x8d, 0x5e, }; static const wycheproof_xdh_test xdh_wei448_3391 = { .name = "xdh_wei448_3391", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3391_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3391_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3391_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 297 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3392 for XDH, tcId is 298 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3392_peerpubkey[] = { 0x12, 0xe9, 0xbd, 0xc5, 0xee, 0xa1, 0x8e, 0xcd, 0x03, 0xd9, 0x90, 0x45, 0xae, 0xc4, 0x4b, 0xd3, 0x33, 0x29, 0x9e, 0x03, 0x08, 0x2f, 0x9f, 0xc8, 0x6b, 0x99, 0x7e, 0x1d, 0x21, 0x60, 0x13, 0xa3, 0x5f, 0x6a, 0x80, 0xf9, 0x67, 0xfe, 0x7a, 0x41, 0x71, 0xbe, 0x21, 0x56, 0x31, 0xe4, 0x07, 0x6c, 0x2c, 0x36, 0xc5, 0x34, 0x61, 0x8e, 0xce, 0x9a, }; static const unsigned char xdh_wei448_3392_privkey[] = { 0x28, 0x8f, 0x40, 0x6a, 0x70, 0x35, 0x8c, 0x9a, 0xaf, 0xc8, 0x96, 0x1a, 0x16, 0xc4, 0x27, 0x05, 0x83, 0x4e, 0xce, 0x4a, 0xa8, 0x2c, 0xe4, 0xa4, 0x4d, 0xac, 0x53, 0x32, 0x52, 0x69, 0x35, 0x30, 0x8a, 0x5f, 0x79, 0x36, 0x96, 0x9a, 0xc9, 0xb1, 0xb2, 0x9b, 0x4b, 0x53, 0x90, 0x17, 0x67, 0xc8, 0x7f, 0xa8, 0xda, 0x94, 0xc9, 0xce, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_3392_sharedsecret[] = { 0xb3, 0x69, 0x7a, 0x12, 0xa9, 0x9e, 0xb9, 0x10, 0x01, 0x95, 0x08, 0x96, 0xeb, 0xd1, 0x77, 0xc2, 0x87, 0xe6, 0x6c, 0xc1, 0xa4, 0x52, 0x56, 0xe0, 0x0d, 0x0d, 0xec, 0xf2, 0x6b, 0x27, 0x76, 0xd9, 0x40, 0xd6, 0x1e, 0xaf, 0xd5, 0x3b, 0x91, 0x37, 0x82, 0xda, 0xc6, 0x85, 0xf9, 0x06, 0xa5, 0x15, 0xa0, 0x82, 0xa5, 0x95, 0x68, 0x0c, 0xf0, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3392 = { .name = "xdh_wei448_3392", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3392_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3392_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3392_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 298 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3393 for XDH, tcId is 299 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3393_peerpubkey[] = { 0x3b, 0x84, 0x3f, 0x59, 0x14, 0x65, 0x4a, 0xbc, 0x39, 0xdc, 0x97, 0x5f, 0x24, 0x24, 0x53, 0x8d, 0x59, 0xba, 0xa1, 0x3b, 0x7e, 0xc4, 0x56, 0x1e, 0xcf, 0xfa, 0x41, 0x28, 0xe6, 0x3f, 0xb4, 0xc0, 0x59, 0xbc, 0xaf, 0x6d, 0x19, 0x20, 0x3d, 0xa7, 0x05, 0x48, 0x71, 0x87, 0xda, 0xc8, 0x67, 0x88, 0x1b, 0x12, 0x09, 0x6a, 0xd1, 0xaa, 0xbd, 0xbc, }; static const unsigned char xdh_wei448_3393_privkey[] = { 0xd0, 0x4f, 0x7f, 0xcd, 0xba, 0xc2, 0xd5, 0xe0, 0x3b, 0x79, 0x82, 0xef, 0x3e, 0xe9, 0x88, 0x9d, 0x38, 0x20, 0x79, 0xdd, 0x00, 0x62, 0xe2, 0x9d, 0xc2, 0x79, 0xc0, 0x9d, 0xe8, 0xbd, 0x00, 0x67, 0xcb, 0xe6, 0x75, 0x8f, 0x28, 0x21, 0xa6, 0x24, 0x9d, 0x0c, 0xb3, 0xde, 0x45, 0x81, 0x5e, 0x4c, 0x16, 0x17, 0x98, 0x25, 0x86, 0x19, 0xac, 0xa4, }; static const unsigned char xdh_wei448_3393_sharedsecret[] = { 0x6b, 0xc9, 0xc9, 0x75, 0x4f, 0x0b, 0xd8, 0x38, 0x4c, 0xfc, 0x07, 0x2b, 0x3a, 0xb3, 0xd4, 0x88, 0xb7, 0x4e, 0xc1, 0x42, 0xbe, 0x9f, 0x01, 0x5e, 0xe9, 0x26, 0xe7, 0x46, 0xb9, 0x58, 0x61, 0x2f, 0x32, 0xa9, 0x23, 0xf3, 0x5d, 0x9d, 0xfe, 0x6b, 0x9f, 0x4b, 0x75, 0x12, 0xef, 0x44, 0xab, 0x95, 0x36, 0x05, 0xd7, 0xaa, 0x21, 0xf8, 0x2f, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_3393 = { .name = "xdh_wei448_3393", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3393_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3393_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3393_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 299 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3394 for XDH, tcId is 300 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3394_peerpubkey[] = { 0xc9, 0x8e, 0x2f, 0x4d, 0xf8, 0x5f, 0x68, 0x61, 0x4b, 0xbb, 0xc4, 0x76, 0x96, 0xd9, 0x18, 0xd0, 0x46, 0xde, 0x36, 0xb5, 0xee, 0xd7, 0xb8, 0xfe, 0xe1, 0x14, 0x40, 0xad, 0x1c, 0x7d, 0x9f, 0x65, 0x0d, 0x9a, 0x0c, 0x8a, 0xce, 0x00, 0x8a, 0xa5, 0xef, 0xf6, 0x7a, 0xc8, 0xae, 0x77, 0x74, 0x90, 0x0e, 0x6e, 0x2c, 0x18, 0x73, 0xa3, 0x0c, 0xbd, }; static const unsigned char xdh_wei448_3394_privkey[] = { 0x4c, 0x80, 0x8a, 0x20, 0x52, 0xa6, 0x75, 0xfb, 0x0f, 0x76, 0xfb, 0x84, 0x98, 0xa5, 0xf4, 0x79, 0x76, 0x9b, 0xdd, 0x0b, 0xbb, 0x5f, 0xdf, 0x27, 0x0c, 0x03, 0x82, 0xf1, 0xd9, 0x7d, 0x00, 0xe1, 0xcb, 0x12, 0x29, 0x07, 0xd0, 0xc1, 0x30, 0x91, 0xaa, 0xde, 0x88, 0x26, 0x64, 0xb3, 0xc8, 0xc4, 0xb9, 0xba, 0x15, 0x33, 0xfd, 0x6b, 0x6c, 0xb6, }; static const unsigned char xdh_wei448_3394_sharedsecret[] = { 0x97, 0x5c, 0x8d, 0xdc, 0x5e, 0x63, 0x77, 0xf2, 0x84, 0x2c, 0xc4, 0x8b, 0xe6, 0xfc, 0x76, 0x7f, 0x7c, 0x33, 0xbc, 0x21, 0xd0, 0xf1, 0x47, 0x26, 0xd6, 0xc5, 0x00, 0x57, 0xb1, 0xf7, 0x3c, 0xe2, 0x5a, 0x87, 0x08, 0xe9, 0x60, 0xed, 0x45, 0xe1, 0x62, 0x04, 0xa2, 0x81, 0x56, 0x7a, 0xd1, 0xf4, 0xc3, 0xa9, 0x0e, 0x3e, 0x43, 0x4b, 0x5e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_3394 = { .name = "xdh_wei448_3394", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3394_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3394_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3394_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 300 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3395 for XDH, tcId is 301 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3395_peerpubkey[] = { 0x9d, 0xd0, 0xc3, 0x0d, 0xe8, 0x7d, 0x1d, 0x7c, 0x52, 0x35, 0x11, 0x8f, 0x68, 0x67, 0x11, 0x34, 0x28, 0xae, 0x82, 0x82, 0x83, 0x9f, 0x75, 0x96, 0x83, 0xe6, 0x4e, 0xda, 0xba, 0x47, 0x80, 0x8b, 0xc8, 0xce, 0x16, 0x64, 0xff, 0xdf, 0x70, 0xa8, 0x47, 0x1d, 0x7b, 0xbf, 0xd1, 0xe0, 0xda, 0xca, 0x19, 0x72, 0xc3, 0xa9, 0x11, 0x8c, 0x5a, 0x04, }; static const unsigned char xdh_wei448_3395_privkey[] = { 0x30, 0xa4, 0x2f, 0x76, 0x8a, 0x8e, 0x77, 0x95, 0xf0, 0x51, 0x38, 0x2e, 0x22, 0xb0, 0xc3, 0x13, 0x42, 0xf6, 0x3c, 0x3b, 0xf0, 0x20, 0x42, 0x66, 0x13, 0xaf, 0xd2, 0x09, 0xdd, 0xb0, 0x97, 0x45, 0xc6, 0xc1, 0x67, 0x71, 0x26, 0xcc, 0x12, 0x73, 0xd3, 0x4d, 0xc5, 0x71, 0x50, 0xf2, 0xd5, 0xdc, 0x15, 0x5b, 0xbe, 0x62, 0x66, 0x08, 0xc6, 0xa8, }; static const unsigned char xdh_wei448_3395_sharedsecret[] = { 0x1f, 0x14, 0x34, 0x45, 0x74, 0x41, 0xd0, 0xda, 0xbe, 0x47, 0x35, 0xe7, 0xf9, 0x49, 0x93, 0x33, 0x00, 0xc2, 0x20, 0xe9, 0x5d, 0x94, 0xaa, 0xb1, 0xeb, 0xd3, 0xee, 0xf6, 0x0b, 0xcf, 0xdb, 0x3d, 0x5c, 0xc6, 0xd9, 0xaf, 0x29, 0xad, 0xe1, 0x21, 0xf0, 0x0b, 0x03, 0x41, 0x7f, 0xb4, 0xab, 0x31, 0xe0, 0x5e, 0x74, 0xa0, 0x7b, 0xc3, 0x72, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3395 = { .name = "xdh_wei448_3395", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3395_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3395_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3395_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 301 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3396 for XDH, tcId is 302 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3396_peerpubkey[] = { 0xa3, 0x3e, 0x95, 0x47, 0xb1, 0x00, 0xfc, 0x26, 0x3e, 0x53, 0x56, 0x4f, 0x15, 0x6c, 0xc4, 0xed, 0x2f, 0x2d, 0x60, 0xec, 0xdf, 0xc3, 0x65, 0x28, 0x5a, 0xbf, 0x84, 0xf3, 0xc3, 0x67, 0xb6, 0xb4, 0xa3, 0x04, 0x8b, 0x23, 0x26, 0x01, 0x35, 0x93, 0xae, 0x14, 0x67, 0x97, 0x3a, 0x8e, 0x25, 0xad, 0x66, 0xef, 0xef, 0xf4, 0x82, 0x88, 0x0d, 0x0c, }; static const unsigned char xdh_wei448_3396_privkey[] = { 0xa4, 0x14, 0x23, 0x8d, 0xc7, 0xbf, 0x4c, 0xea, 0xf9, 0x36, 0x6d, 0x1c, 0xb2, 0xcf, 0xb8, 0x0b, 0xc2, 0x72, 0xb8, 0x2b, 0x12, 0x2e, 0x36, 0xfd, 0x51, 0x19, 0xfc, 0x53, 0xd9, 0x9b, 0x34, 0x61, 0xfe, 0x35, 0xfa, 0x49, 0xe8, 0xf9, 0x84, 0xa9, 0xb9, 0xb5, 0xf4, 0xd2, 0x13, 0x86, 0x8f, 0xdd, 0x1f, 0xaf, 0x8b, 0xc0, 0x3f, 0x94, 0x2e, 0xb7, }; static const unsigned char xdh_wei448_3396_sharedsecret[] = { 0xb3, 0xd2, 0x72, 0x1f, 0x00, 0xbe, 0x29, 0xc2, 0x08, 0x3a, 0x4d, 0xfe, 0xef, 0x8e, 0x80, 0x60, 0xc2, 0x96, 0x39, 0xac, 0x60, 0xe4, 0x12, 0x2f, 0xb9, 0x54, 0xe1, 0xcc, 0x2e, 0xa2, 0x67, 0x65, 0x45, 0x8e, 0xfa, 0xd4, 0x76, 0x68, 0xc1, 0x9c, 0x70, 0xa5, 0x1c, 0xa0, 0xd7, 0x85, 0x74, 0xb5, 0xb2, 0xfe, 0x46, 0xd8, 0xc5, 0x7f, 0x51, 0x03, }; static const wycheproof_xdh_test xdh_wei448_3396 = { .name = "xdh_wei448_3396", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3396_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3396_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3396_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 302 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3397 for XDH, tcId is 303 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3397_peerpubkey[] = { 0xe9, 0x9e, 0xc1, 0x56, 0x66, 0x55, 0x75, 0xbb, 0x7e, 0x29, 0x9a, 0x44, 0x4b, 0x2b, 0x70, 0x2b, 0x66, 0x01, 0xc8, 0xc4, 0x62, 0xad, 0x93, 0x9e, 0x58, 0xe0, 0xe2, 0x7f, 0x0b, 0xa3, 0x9c, 0x6c, 0x69, 0x5a, 0x14, 0xb7, 0xc5, 0xac, 0x55, 0xb6, 0x46, 0x30, 0x37, 0x34, 0x37, 0xf6, 0xea, 0x9b, 0x86, 0x91, 0x13, 0x2f, 0x10, 0xdc, 0xc4, 0x29, }; static const unsigned char xdh_wei448_3397_privkey[] = { 0x24, 0xbb, 0x5f, 0x75, 0x0e, 0x52, 0x52, 0xa1, 0xd6, 0x64, 0xf9, 0xe1, 0x66, 0xc5, 0x29, 0xf1, 0xe1, 0xc8, 0xcf, 0x2d, 0x29, 0x65, 0x57, 0xf4, 0xf9, 0xe8, 0xca, 0xbb, 0x9e, 0xd4, 0x8a, 0x57, 0xbb, 0xc0, 0x7d, 0xd8, 0x6d, 0x63, 0x94, 0x32, 0xda, 0x1c, 0xab, 0xd0, 0x98, 0xcc, 0x61, 0x08, 0x45, 0x16, 0x22, 0x5f, 0xc5, 0x21, 0x63, 0xb5, }; static const unsigned char xdh_wei448_3397_sharedsecret[] = { 0x32, 0xb1, 0x16, 0xd2, 0xd8, 0x76, 0xca, 0x11, 0xa1, 0x85, 0x8f, 0x87, 0x01, 0xb2, 0xf0, 0xcc, 0xdc, 0xac, 0x45, 0xe1, 0x23, 0xf4, 0x6c, 0xf1, 0xc2, 0x54, 0x4e, 0x0d, 0xe5, 0x74, 0x1c, 0x06, 0x10, 0xfc, 0xce, 0xe9, 0x59, 0x26, 0x1d, 0x6e, 0x85, 0x58, 0xa0, 0xb0, 0xa5, 0xef, 0x0d, 0x0a, 0x42, 0xb0, 0x0b, 0xd9, 0x5e, 0x24, 0x5c, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3397 = { .name = "xdh_wei448_3397", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3397_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3397_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3397_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 303 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3398 for XDH, tcId is 304 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3398_peerpubkey[] = { 0x61, 0x34, 0x2d, 0x90, 0x2b, 0x5a, 0x65, 0x98, 0xfa, 0xba, 0x1f, 0x83, 0xb9, 0x22, 0xca, 0x19, 0x07, 0x1c, 0xfc, 0x82, 0x55, 0x63, 0x52, 0xc8, 0x8d, 0x29, 0xba, 0x35, 0x09, 0x0e, 0x39, 0x5e, 0x9b, 0xeb, 0xbd, 0x8d, 0xab, 0x83, 0xe9, 0x83, 0x54, 0x9f, 0xcf, 0xc3, 0x32, 0x12, 0x49, 0x70, 0x94, 0x48, 0x6a, 0xdd, 0xac, 0xd6, 0x0d, 0x34, }; static const unsigned char xdh_wei448_3398_privkey[] = { 0x78, 0xb9, 0xbb, 0x7c, 0xe3, 0xdf, 0xe8, 0x71, 0xe7, 0x59, 0xfe, 0xbb, 0x07, 0xad, 0xc7, 0x8a, 0x7c, 0x69, 0x17, 0xd9, 0x22, 0x4b, 0x19, 0xb3, 0xda, 0x1f, 0x28, 0xa5, 0x78, 0x38, 0x85, 0x12, 0x38, 0xbc, 0x22, 0xd4, 0x66, 0x3b, 0x3d, 0x7e, 0x7f, 0x4f, 0xcd, 0x0c, 0x62, 0xf9, 0xcb, 0xc3, 0x80, 0x6f, 0x7b, 0x77, 0xaa, 0x20, 0x20, 0xbd, }; static const unsigned char xdh_wei448_3398_sharedsecret[] = { 0xc3, 0x99, 0xb4, 0x51, 0xd4, 0x72, 0x4d, 0xa2, 0x61, 0x83, 0x1c, 0x38, 0x62, 0x5a, 0x74, 0xcd, 0x58, 0x05, 0x8f, 0x20, 0x45, 0x1b, 0x52, 0x7f, 0xcb, 0xc3, 0xe5, 0x57, 0x60, 0x3e, 0x42, 0x9c, 0x47, 0x81, 0xdb, 0x0a, 0x52, 0x39, 0x71, 0xdf, 0x1d, 0x60, 0xe0, 0x4a, 0x0d, 0xed, 0x7e, 0xf9, 0x11, 0xc5, 0xd1, 0x28, 0x9f, 0x89, 0x03, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3398 = { .name = "xdh_wei448_3398", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3398_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3398_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3398_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 304 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3399 for XDH, tcId is 305 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3399_peerpubkey[] = { 0x67, 0x56, 0xc9, 0x7a, 0xa9, 0x9f, 0x8b, 0xdd, 0x00, 0x38, 0x51, 0xf7, 0x78, 0x72, 0xca, 0x51, 0x4e, 0xcf, 0x7c, 0xe6, 0xe4, 0xed, 0xf5, 0x1d, 0x3d, 0x41, 0xb3, 0xc5, 0x06, 0xa3, 0x4d, 0x2d, 0xac, 0x32, 0xbc, 0x8e, 0x5d, 0x12, 0xc5, 0xd2, 0x9e, 0x47, 0xa6, 0x39, 0xf2, 0xa1, 0xe3, 0x23, 0x55, 0xbb, 0x9b, 0x75, 0xb7, 0x1f, 0x3c, 0x85, }; static const unsigned char xdh_wei448_3399_privkey[] = { 0x60, 0x22, 0x22, 0x56, 0xc0, 0x60, 0xb2, 0x2f, 0x43, 0x52, 0xda, 0x8b, 0xa8, 0x5c, 0xcc, 0x99, 0x11, 0x49, 0xa9, 0xdc, 0x8c, 0xf1, 0xb2, 0x5d, 0xc8, 0x0a, 0x8a, 0xb9, 0x81, 0x5c, 0x7e, 0x59, 0x5c, 0xbc, 0x89, 0x33, 0x4a, 0x81, 0x8a, 0x00, 0x98, 0xa7, 0xdb, 0x69, 0x8a, 0xc2, 0x40, 0x08, 0x09, 0x31, 0xaa, 0xea, 0x13, 0x7c, 0xd8, 0xb7, }; static const unsigned char xdh_wei448_3399_sharedsecret[] = { 0x0f, 0x04, 0x25, 0xfa, 0x3f, 0xbf, 0x31, 0xe0, 0xd5, 0xe7, 0xbb, 0x4c, 0x2c, 0xcb, 0xa8, 0xb3, 0x0a, 0x40, 0xde, 0x39, 0xaa, 0x0c, 0x87, 0xdb, 0xed, 0xa8, 0x82, 0x99, 0x48, 0x83, 0x0f, 0x39, 0x92, 0x6e, 0x80, 0x1d, 0xe3, 0xad, 0xe2, 0x05, 0x8d, 0xa9, 0xa0, 0x5d, 0xb8, 0x08, 0xea, 0x99, 0xb7, 0xeb, 0xe3, 0xe3, 0x28, 0x54, 0x47, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3399 = { .name = "xdh_wei448_3399", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3399_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3399_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3399_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 305 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3400 for XDH, tcId is 306 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3400_peerpubkey[] = { 0x37, 0x8c, 0xbd, 0x8e, 0xeb, 0x6c, 0x8e, 0x5a, 0x96, 0x7a, 0x76, 0xfb, 0x31, 0x1f, 0x38, 0xe6, 0x18, 0xec, 0x52, 0x66, 0x0d, 0x06, 0x02, 0x20, 0xba, 0xbc, 0x7e, 0x9a, 0xdf, 0x93, 0xbe, 0x90, 0xe9, 0xd5, 0x4c, 0x3f, 0x77, 0x34, 0x65, 0x04, 0x4b, 0xfc, 0x95, 0xe2, 0xeb, 0x9a, 0xde, 0x69, 0x5b, 0x0d, 0x91, 0x34, 0xef, 0xa3, 0xc2, 0x0f, }; static const unsigned char xdh_wei448_3400_privkey[] = { 0xd4, 0xb9, 0x21, 0x81, 0x9f, 0x2e, 0x67, 0x46, 0x0b, 0x2d, 0x31, 0x2a, 0x8a, 0x96, 0x2a, 0xeb, 0x3d, 0x4c, 0x7e, 0x99, 0x49, 0x04, 0xb1, 0x43, 0x6c, 0xd1, 0xaf, 0x83, 0x3f, 0x5e, 0x99, 0x97, 0xc0, 0xdc, 0xa1, 0xd7, 0x02, 0xd2, 0xa8, 0x59, 0x7a, 0x3a, 0xfb, 0xb2, 0x3d, 0x83, 0x8f, 0x38, 0x6e, 0xcd, 0xbf, 0x97, 0xf3, 0x8e, 0xd0, 0xa5, }; static const unsigned char xdh_wei448_3400_sharedsecret[] = { 0xfe, 0xa7, 0x49, 0xf4, 0xb7, 0xaf, 0x95, 0x46, 0x3b, 0x25, 0x23, 0x82, 0x69, 0xf1, 0x27, 0x9d, 0x19, 0xba, 0x6d, 0x4e, 0x09, 0xf3, 0x64, 0x59, 0xc2, 0x43, 0xf8, 0x68, 0x8d, 0x2a, 0x38, 0xba, 0x4c, 0xd2, 0xba, 0xab, 0x32, 0xb4, 0x37, 0xdd, 0x1f, 0x74, 0x5a, 0xbc, 0xd4, 0x77, 0xe3, 0x47, 0xd3, 0xda, 0xf4, 0x03, 0x12, 0xfd, 0x0c, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3400 = { .name = "xdh_wei448_3400", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3400_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3400_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3400_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 306 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3401 for XDH, tcId is 307 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3401_peerpubkey[] = { 0x72, 0x9a, 0x92, 0x3f, 0xa0, 0x7c, 0x83, 0xb1, 0x8c, 0x62, 0x2b, 0x9f, 0x9f, 0x86, 0x9a, 0x2d, 0xbf, 0xd3, 0x46, 0x0a, 0x1c, 0xa3, 0x4a, 0x07, 0xa9, 0xb2, 0xdd, 0xd2, 0x55, 0xc0, 0x1c, 0xa8, 0x17, 0xa4, 0x75, 0xe4, 0xe4, 0x1b, 0xdd, 0xe0, 0x6e, 0x21, 0xc1, 0x1a, 0x73, 0xb7, 0x74, 0x0d, 0xc3, 0xbe, 0xe0, 0x07, 0x6e, 0x41, 0x58, 0x21, }; static const unsigned char xdh_wei448_3401_privkey[] = { 0xe0, 0xaa, 0xa7, 0xb6, 0x25, 0x9c, 0x53, 0xaa, 0x11, 0xe4, 0xb2, 0xf2, 0xb2, 0xb7, 0x8b, 0x8a, 0xd3, 0x6a, 0xf7, 0x8f, 0xb4, 0xf7, 0xb8, 0xaa, 0x51, 0x58, 0xf7, 0x7d, 0x76, 0x96, 0xf1, 0xf0, 0x1b, 0x51, 0x84, 0x95, 0x18, 0xa5, 0xc7, 0x98, 0xb4, 0x84, 0x79, 0x81, 0x6f, 0x88, 0x44, 0xce, 0xd2, 0xad, 0x57, 0x68, 0xae, 0xce, 0xc6, 0xbb, }; static const unsigned char xdh_wei448_3401_sharedsecret[] = { 0xd4, 0x0b, 0xc5, 0x54, 0xaf, 0x8c, 0x4a, 0x13, 0x9f, 0xf8, 0xc5, 0xd4, 0x35, 0xe8, 0x92, 0x98, 0x3b, 0x5d, 0x79, 0x86, 0xb6, 0x7b, 0x60, 0x4d, 0xbd, 0xc6, 0x5b, 0x60, 0x52, 0x57, 0x00, 0xbe, 0x60, 0x10, 0xc6, 0x59, 0x48, 0x27, 0xd6, 0x47, 0x10, 0x78, 0x98, 0x2f, 0xd3, 0x83, 0x5a, 0x18, 0x43, 0xed, 0x28, 0xcf, 0x66, 0xb3, 0xc5, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_3401 = { .name = "xdh_wei448_3401", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3401_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3401_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3401_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 307 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3402 for XDH, tcId is 308 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3402_peerpubkey[] = { 0x17, 0x95, 0xd9, 0x34, 0x69, 0xd7, 0x04, 0x4a, 0xba, 0xdc, 0xa6, 0x04, 0xbb, 0x8b, 0x97, 0x21, 0x4e, 0x79, 0xa5, 0xbb, 0xb1, 0x4d, 0xc1, 0x2f, 0xa9, 0xc5, 0x6e, 0x30, 0x27, 0xe4, 0xe4, 0x64, 0xac, 0x99, 0x8a, 0xb8, 0xe0, 0xdb, 0xb1, 0x15, 0x19, 0x34, 0xad, 0x3c, 0x70, 0x98, 0x30, 0xae, 0x85, 0x61, 0xcf, 0x25, 0xc2, 0x2c, 0x02, 0xc1, }; static const unsigned char xdh_wei448_3402_privkey[] = { 0x38, 0x6f, 0x45, 0x02, 0xaa, 0x94, 0xc2, 0x96, 0xec, 0xf0, 0xd4, 0xc2, 0x4d, 0x43, 0x33, 0x02, 0x88, 0x13, 0x58, 0x08, 0x31, 0x49, 0x4d, 0x43, 0xcb, 0xe0, 0x0a, 0x0f, 0xb2, 0xd8, 0x3e, 0x29, 0x6c, 0x97, 0x53, 0xa9, 0xb8, 0x80, 0x9b, 0xc8, 0x04, 0x21, 0xb5, 0xd9, 0x3e, 0xc9, 0x3e, 0x79, 0x4e, 0xe4, 0x12, 0xff, 0xac, 0xb8, 0x7c, 0xa5, }; static const unsigned char xdh_wei448_3402_sharedsecret[] = { 0xe5, 0x82, 0x50, 0x0f, 0xa1, 0x94, 0x30, 0xb1, 0x92, 0xcd, 0xa9, 0x9a, 0x08, 0x97, 0x18, 0xc9, 0x23, 0xcb, 0xd7, 0xe5, 0x4d, 0x5c, 0x19, 0x0c, 0x28, 0x54, 0x6f, 0x79, 0xf9, 0x65, 0xe8, 0x9d, 0x73, 0xf7, 0x2a, 0x4c, 0x16, 0x13, 0x62, 0x9e, 0x6c, 0x39, 0x06, 0x22, 0xae, 0x89, 0xf7, 0x07, 0xa6, 0x7b, 0x73, 0xd5, 0xb0, 0x9f, 0x9d, 0x9a, }; static const wycheproof_xdh_test xdh_wei448_3402 = { .name = "xdh_wei448_3402", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3402_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3402_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3402_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 308 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3403 for XDH, tcId is 309 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3403_peerpubkey[] = { 0xd5, 0x15, 0x03, 0x5b, 0x93, 0x52, 0x73, 0x8e, 0x6e, 0xe3, 0x6c, 0x8e, 0x2f, 0xcc, 0x99, 0x6e, 0x1c, 0xb4, 0x8c, 0x83, 0x68, 0xab, 0xe5, 0xb1, 0x29, 0xf4, 0x12, 0x63, 0x97, 0xf7, 0x33, 0x00, 0x3e, 0xb3, 0x69, 0xd7, 0x9f, 0x2e, 0xe1, 0x6c, 0xbd, 0xe9, 0x2a, 0xf4, 0xf8, 0xad, 0xc7, 0x1a, 0xa8, 0x95, 0xd0, 0x15, 0x22, 0xd7, 0xdb, 0xcd, }; static const unsigned char xdh_wei448_3403_privkey[] = { 0x00, 0x61, 0xd8, 0x3e, 0xc2, 0x04, 0x5d, 0xc6, 0x89, 0xcb, 0x25, 0xd0, 0xe3, 0xf4, 0xb0, 0x4b, 0xc7, 0x4b, 0x9f, 0x19, 0x2b, 0x66, 0xaf, 0x3c, 0xb5, 0x0b, 0x02, 0xdc, 0xb0, 0x7a, 0x5e, 0x89, 0x4d, 0x10, 0x49, 0x78, 0x89, 0x73, 0x11, 0xaf, 0xe7, 0x86, 0xd9, 0xf5, 0x72, 0xd1, 0x20, 0x68, 0xee, 0x0c, 0x55, 0xf8, 0xae, 0xa7, 0x96, 0xad, }; static const unsigned char xdh_wei448_3403_sharedsecret[] = { 0xf7, 0x67, 0x3b, 0xa8, 0x35, 0x39, 0x1a, 0x22, 0x41, 0xad, 0x03, 0x3f, 0xb6, 0x43, 0x1e, 0xd3, 0xad, 0x34, 0x6e, 0x10, 0x10, 0x4e, 0x40, 0x45, 0xa7, 0x08, 0x52, 0xcc, 0xe3, 0xcc, 0x83, 0x44, 0x10, 0x45, 0xa8, 0xa7, 0xe0, 0x5b, 0xf0, 0x31, 0x35, 0x1b, 0x50, 0xe0, 0x2d, 0xb6, 0xe0, 0x86, 0xe1, 0xc4, 0x63, 0xcb, 0xf6, 0x16, 0x6d, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_3403 = { .name = "xdh_wei448_3403", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3403_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3403_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3403_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 309 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3404 for XDH, tcId is 310 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3404_peerpubkey[] = { 0xf4, 0xdb, 0xc2, 0x89, 0x83, 0xcf, 0xd8, 0x64, 0xa3, 0xd7, 0x52, 0xda, 0xe7, 0x42, 0x48, 0x4f, 0x7e, 0xcc, 0x55, 0xb5, 0xd3, 0xb4, 0xfc, 0x4b, 0x0f, 0x48, 0x4d, 0x64, 0x00, 0x56, 0x97, 0x7c, 0x87, 0x3c, 0x5c, 0xf0, 0x15, 0x34, 0x7b, 0xc1, 0xb0, 0xbf, 0xc9, 0x4c, 0x58, 0x97, 0xfa, 0x6e, 0xbb, 0xb6, 0xc1, 0x05, 0x50, 0x61, 0x10, 0xd7, }; static const unsigned char xdh_wei448_3404_privkey[] = { 0x30, 0x50, 0xe8, 0x52, 0xb4, 0x4e, 0x68, 0xc9, 0x87, 0xda, 0xd6, 0x8e, 0x51, 0x2d, 0xcb, 0xad, 0x7f, 0xdb, 0x99, 0x9d, 0x99, 0x2c, 0x2c, 0xcc, 0x2e, 0x3c, 0xcc, 0x23, 0x9d, 0xdf, 0x44, 0x17, 0x50, 0xea, 0x0b, 0x20, 0x5d, 0x67, 0x99, 0x42, 0x25, 0x67, 0xcf, 0xa3, 0x41, 0x5c, 0x5d, 0x2c, 0x05, 0x4e, 0x2c, 0x51, 0x32, 0xcd, 0xdc, 0xa8, }; static const unsigned char xdh_wei448_3404_sharedsecret[] = { 0xfc, 0x4d, 0x51, 0x4f, 0xa4, 0x1c, 0xe0, 0x1b, 0x8f, 0x75, 0x6b, 0xc5, 0x55, 0x9e, 0xb8, 0x5d, 0xc4, 0xaf, 0xa4, 0x86, 0xe5, 0xf7, 0x2c, 0x4c, 0x69, 0x5c, 0x6c, 0x87, 0xd8, 0x98, 0x13, 0xd0, 0x8e, 0x9f, 0xbe, 0x3c, 0xcc, 0x71, 0xd0, 0xe2, 0xb3, 0x94, 0xda, 0x3a, 0xf8, 0x6c, 0x6e, 0x3f, 0x5e, 0x2f, 0x03, 0x80, 0x4a, 0xdf, 0x19, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3404 = { .name = "xdh_wei448_3404", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3404_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3404_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3404_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 310 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3405 for XDH, tcId is 311 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3405_peerpubkey[] = { 0xbb, 0x7f, 0xfe, 0x8b, 0xc4, 0x25, 0x6e, 0xa7, 0xbe, 0x81, 0x8f, 0xf5, 0x33, 0x9f, 0xa6, 0x1f, 0xb6, 0xf8, 0x44, 0x09, 0xb6, 0x51, 0x2a, 0x82, 0xa5, 0x06, 0x38, 0x7f, 0x9a, 0x8f, 0xc2, 0x16, 0x52, 0xf4, 0x77, 0x2d, 0x7a, 0x01, 0x8a, 0x81, 0x24, 0x18, 0x39, 0x26, 0x1c, 0xbf, 0xd2, 0xc5, 0xc7, 0x33, 0x70, 0xb8, 0x56, 0x02, 0x60, 0x12, }; static const unsigned char xdh_wei448_3405_privkey[] = { 0x38, 0xc7, 0x43, 0x50, 0x07, 0x0f, 0xbe, 0x66, 0x2e, 0xfb, 0xbe, 0xd8, 0x36, 0x85, 0xb9, 0xe2, 0x39, 0x3e, 0x6d, 0xfd, 0xa3, 0x4f, 0x52, 0x82, 0xcd, 0x9a, 0x90, 0x23, 0xba, 0x76, 0xd1, 0xa5, 0xa2, 0x2d, 0x59, 0xdb, 0x9d, 0x4d, 0x2f, 0xbd, 0xf2, 0x17, 0x03, 0xe6, 0x22, 0x94, 0xb6, 0xa1, 0xf5, 0x81, 0x07, 0x57, 0x8b, 0x63, 0x65, 0xad, }; static const unsigned char xdh_wei448_3405_sharedsecret[] = { 0xcf, 0xcd, 0x10, 0x53, 0x40, 0x65, 0xd1, 0xba, 0xa0, 0x5e, 0xe9, 0x0b, 0xaf, 0xe2, 0x65, 0x90, 0x62, 0x27, 0x8b, 0x8f, 0x6e, 0x1d, 0x12, 0xfd, 0x74, 0xc0, 0x52, 0xb6, 0xa0, 0xb8, 0x3e, 0x7a, 0x68, 0x8c, 0xed, 0xe5, 0xf2, 0xe4, 0x9b, 0x01, 0xc7, 0x8c, 0xb5, 0xc7, 0x3f, 0xe9, 0x06, 0x23, 0x94, 0x18, 0x2f, 0x4f, 0x6f, 0x39, 0x8a, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_3405 = { .name = "xdh_wei448_3405", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3405_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3405_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3405_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 311 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3406 for XDH, tcId is 312 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3406_peerpubkey[] = { 0x04, 0x1e, 0x0a, 0xa7, 0x5e, 0x8f, 0xb7, 0x41, 0xec, 0xba, 0xab, 0x1c, 0x8c, 0x35, 0x10, 0x7e, 0x28, 0xfb, 0x93, 0xbb, 0xb2, 0x80, 0x7a, 0xb6, 0x31, 0x41, 0xb0, 0xcc, 0x62, 0xbc, 0x6d, 0x60, 0x1b, 0x40, 0x91, 0xed, 0x04, 0xb7, 0x8c, 0x46, 0xb5, 0x80, 0xb7, 0x85, 0xbc, 0xd2, 0x15, 0xf6, 0x53, 0x26, 0x42, 0x1f, 0xe5, 0xf8, 0xa5, 0x84, }; static const unsigned char xdh_wei448_3406_privkey[] = { 0xf8, 0x5e, 0xe5, 0x97, 0x7b, 0x6a, 0x05, 0xbd, 0xbc, 0x53, 0x98, 0x2b, 0x1b, 0x81, 0xb9, 0xe2, 0xc2, 0x1b, 0xa6, 0xd4, 0x40, 0x93, 0xee, 0x8c, 0x6e, 0xd3, 0x0a, 0x2b, 0x63, 0xda, 0xf5, 0xab, 0x4d, 0x4b, 0xf7, 0x14, 0xe1, 0x02, 0xb7, 0xe5, 0x9f, 0x9d, 0x09, 0x66, 0x20, 0x38, 0xbe, 0x26, 0x13, 0x83, 0xc5, 0x06, 0xc1, 0x98, 0x3c, 0xa6, }; static const unsigned char xdh_wei448_3406_sharedsecret[] = { 0x20, 0x21, 0xed, 0x9f, 0xa8, 0x01, 0xd8, 0x62, 0x20, 0xa6, 0x1a, 0x33, 0xaf, 0xbb, 0x7a, 0x03, 0x67, 0x5d, 0x23, 0x42, 0x6b, 0x10, 0x75, 0x5c, 0x44, 0xe4, 0x16, 0x71, 0xbc, 0x45, 0x4b, 0x60, 0x5c, 0xab, 0x34, 0x30, 0x68, 0xc4, 0xa9, 0x70, 0xf2, 0x29, 0x71, 0x2d, 0x84, 0x67, 0x0f, 0x06, 0x12, 0xd2, 0x56, 0xec, 0x00, 0xf9, 0xf8, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3406 = { .name = "xdh_wei448_3406", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3406_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3406_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3406_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 312 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3407 for XDH, tcId is 313 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3407_peerpubkey[] = { 0xff, 0x1e, 0x23, 0xf8, 0xe3, 0x6b, 0x5f, 0x31, 0x7f, 0x7f, 0x38, 0x33, 0x25, 0xce, 0x34, 0x81, 0xb3, 0xeb, 0x07, 0xc4, 0x61, 0x5a, 0x25, 0x31, 0xbd, 0x12, 0xea, 0xb4, 0x54, 0xac, 0xec, 0xab, 0x6a, 0x00, 0x05, 0x2e, 0x68, 0x5c, 0xb5, 0x51, 0x00, 0xd7, 0xc7, 0xf6, 0xd9, 0x18, 0x08, 0x2e, 0xcb, 0x57, 0xc6, 0x83, 0xe5, 0xb8, 0x64, 0x9c, }; static const unsigned char xdh_wei448_3407_privkey[] = { 0xbc, 0x8e, 0x01, 0x09, 0xc6, 0x7a, 0x98, 0x29, 0x0f, 0x93, 0x29, 0x68, 0x65, 0xcb, 0x7d, 0x6c, 0x67, 0x8c, 0x56, 0xd6, 0x35, 0xcf, 0x9e, 0xd1, 0x8d, 0xa3, 0xea, 0x72, 0x26, 0xe6, 0xa0, 0x2a, 0x8a, 0x3f, 0x6b, 0x1b, 0x45, 0x80, 0x7a, 0x08, 0x0d, 0x69, 0x9f, 0x1b, 0xe0, 0x78, 0x64, 0xea, 0x8c, 0x8b, 0x83, 0x94, 0xaa, 0x75, 0x1c, 0xab, }; static const unsigned char xdh_wei448_3407_sharedsecret[] = { 0x23, 0x43, 0x7b, 0x39, 0x30, 0x1e, 0xe8, 0xcf, 0xc7, 0xd3, 0x92, 0xc6, 0x28, 0x72, 0xe3, 0xdc, 0x86, 0x89, 0x6c, 0xc2, 0xcf, 0x6e, 0x4d, 0x9f, 0xe4, 0x77, 0xad, 0xe5, 0xce, 0xfd, 0x6c, 0x34, 0xb8, 0x08, 0x3a, 0x28, 0x68, 0x20, 0x4f, 0x67, 0x2e, 0xb7, 0xf0, 0x33, 0x4a, 0xd7, 0x41, 0xf3, 0xf8, 0xb9, 0xd0, 0x67, 0xa3, 0x3a, 0xbe, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3407 = { .name = "xdh_wei448_3407", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3407_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3407_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3407_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 313 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3408 for XDH, tcId is 314 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3408_peerpubkey[] = { 0x96, 0xbe, 0x7b, 0xa9, 0xc9, 0x6e, 0x0a, 0xb6, 0x09, 0xa5, 0xb3, 0x01, 0xdf, 0xf3, 0xc7, 0x30, 0x2b, 0x94, 0x48, 0x3a, 0xef, 0x83, 0xd3, 0x0b, 0xd0, 0xde, 0x25, 0xd4, 0x49, 0x4d, 0xd3, 0xa6, 0x66, 0xad, 0xa1, 0x67, 0x76, 0xb7, 0xd7, 0xfa, 0x4d, 0x75, 0x49, 0x74, 0xf4, 0x1f, 0x34, 0x84, 0x78, 0x14, 0x3d, 0x1d, 0x6d, 0x54, 0xac, 0xa7, }; static const unsigned char xdh_wei448_3408_privkey[] = { 0x24, 0x59, 0x67, 0x0e, 0x6f, 0xd0, 0xd3, 0x2c, 0x81, 0x75, 0x5a, 0x93, 0x44, 0x5a, 0xd4, 0x54, 0xc9, 0x01, 0x4f, 0xc2, 0x79, 0x77, 0x64, 0xbb, 0x28, 0xd2, 0x25, 0x21, 0x4f, 0x1c, 0xc3, 0x3c, 0x36, 0x24, 0xec, 0x10, 0xd2, 0xc6, 0xb0, 0x30, 0xa7, 0x61, 0x36, 0x43, 0x12, 0xf9, 0xc9, 0xbf, 0x16, 0xf4, 0x2a, 0xcd, 0x50, 0x52, 0x11, 0xb9, }; static const unsigned char xdh_wei448_3408_sharedsecret[] = { 0xa0, 0xa7, 0x67, 0xf9, 0x56, 0x17, 0x85, 0x90, 0x3b, 0x8a, 0x4e, 0x06, 0xd5, 0x1c, 0x95, 0xeb, 0xf3, 0x5d, 0x16, 0xdd, 0xef, 0xf4, 0x90, 0x92, 0xae, 0x1d, 0x9f, 0xc9, 0xb4, 0xa7, 0xdb, 0x32, 0x92, 0xdc, 0x35, 0x48, 0x90, 0xee, 0x4b, 0x04, 0x38, 0x72, 0xac, 0x67, 0xf7, 0x04, 0xd5, 0x80, 0x83, 0x38, 0xd8, 0xd0, 0x04, 0x8b, 0x86, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3408 = { .name = "xdh_wei448_3408", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3408_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3408_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3408_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 314 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3409 for XDH, tcId is 315 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3409_peerpubkey[] = { 0xdd, 0xc4, 0xbc, 0x16, 0xd8, 0x9b, 0x9e, 0x67, 0x19, 0xcc, 0x97, 0x9c, 0xcb, 0x33, 0x93, 0x58, 0x5b, 0x42, 0xdc, 0xb2, 0xd8, 0xed, 0xea, 0x8c, 0x4e, 0x6c, 0x61, 0x50, 0xbb, 0x67, 0x04, 0xfc, 0xa9, 0xbb, 0x48, 0x32, 0x12, 0x28, 0x12, 0x24, 0x9d, 0x67, 0x19, 0xf0, 0x45, 0x37, 0x51, 0xce, 0x24, 0x66, 0xbb, 0x11, 0x58, 0xf6, 0xf0, 0xe4, }; static const unsigned char xdh_wei448_3409_privkey[] = { 0xec, 0x9f, 0xf8, 0xce, 0xa3, 0xaa, 0x8a, 0xd6, 0xa9, 0x57, 0x01, 0x19, 0xda, 0xa1, 0x07, 0x03, 0x5f, 0xae, 0x2a, 0xae, 0x7e, 0x8b, 0x6a, 0xc7, 0xb5, 0x02, 0x39, 0x16, 0x05, 0x52, 0x91, 0x53, 0x25, 0xe0, 0x5f, 0x94, 0x66, 0xcd, 0x44, 0xa4, 0x31, 0x4a, 0xa2, 0xbd, 0x8a, 0x78, 0xb1, 0x6f, 0xc7, 0x4b, 0x18, 0xd6, 0x62, 0xdc, 0xd9, 0xa5, }; static const unsigned char xdh_wei448_3409_sharedsecret[] = { 0x5a, 0x7d, 0xc0, 0x0f, 0xb2, 0x06, 0xfe, 0xbc, 0x3a, 0xbf, 0xf3, 0x6c, 0x57, 0xed, 0x8b, 0x88, 0x8e, 0x8b, 0xe6, 0xd2, 0x79, 0xf0, 0x92, 0x54, 0xb7, 0x9b, 0x1a, 0x02, 0x0c, 0x13, 0xc4, 0x2d, 0x8c, 0x94, 0xd6, 0x4d, 0xcd, 0xa8, 0x92, 0xd3, 0x45, 0x2c, 0x00, 0x22, 0x0b, 0xd5, 0x19, 0x9b, 0x23, 0x9b, 0xbd, 0xb2, 0xad, 0x6c, 0xb0, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3409 = { .name = "xdh_wei448_3409", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3409_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3409_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3409_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 315 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3410 for XDH, tcId is 316 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3410_peerpubkey[] = { 0x6d, 0x66, 0x81, 0x44, 0xc2, 0xbb, 0x25, 0x96, 0x18, 0xfc, 0xe4, 0x97, 0x94, 0x4e, 0x68, 0xf8, 0x36, 0xf6, 0xb4, 0x34, 0x92, 0x68, 0x3e, 0x25, 0xc0, 0x86, 0x55, 0x1c, 0xd9, 0x74, 0xf1, 0xae, 0x34, 0xbe, 0x58, 0x48, 0x38, 0x23, 0xb2, 0x92, 0x18, 0x57, 0x4c, 0xe7, 0x05, 0xc6, 0x49, 0x4b, 0x5b, 0x92, 0x17, 0xc8, 0xfb, 0xcc, 0xe8, 0xe9, }; static const unsigned char xdh_wei448_3410_privkey[] = { 0xb0, 0x19, 0x30, 0x22, 0x58, 0x0d, 0x05, 0x7d, 0xaa, 0x8b, 0x92, 0x25, 0xd0, 0x85, 0x49, 0x56, 0x2f, 0x1f, 0xe3, 0x3f, 0xe4, 0x74, 0xdb, 0xb1, 0xc1, 0x77, 0xa2, 0x97, 0xc3, 0xb5, 0x4d, 0xbe, 0x3e, 0x3a, 0xcc, 0x23, 0xb9, 0xd7, 0x42, 0xe2, 0x2b, 0x00, 0x69, 0x8e, 0xd0, 0x80, 0x4d, 0x35, 0x01, 0x89, 0xd2, 0x09, 0xa9, 0xf0, 0x48, 0xab, }; static const unsigned char xdh_wei448_3410_sharedsecret[] = { 0x36, 0x45, 0x39, 0x0c, 0xe6, 0x49, 0xcf, 0x24, 0x8d, 0x8d, 0x17, 0x19, 0x34, 0x22, 0x6a, 0xe4, 0x38, 0x09, 0xbc, 0x61, 0x4b, 0x72, 0x3f, 0x61, 0x12, 0x8d, 0xca, 0x56, 0x28, 0x45, 0x28, 0x44, 0xe7, 0xe9, 0xa3, 0x76, 0x15, 0x73, 0xbf, 0x4b, 0x59, 0x2d, 0xdc, 0x0d, 0xf0, 0xa1, 0x2d, 0xff, 0x90, 0x10, 0x3f, 0xa1, 0xfa, 0x61, 0x6c, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3410 = { .name = "xdh_wei448_3410", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3410_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3410_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3410_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 316 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3411 for XDH, tcId is 317 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3411_peerpubkey[] = { 0x9b, 0xdb, 0x0b, 0x57, 0x30, 0x85, 0xb3, 0xdf, 0x64, 0x0b, 0x7e, 0xbd, 0xf3, 0x43, 0xbb, 0xed, 0xe2, 0xca, 0x09, 0xac, 0x4e, 0x75, 0xb5, 0xe9, 0xe4, 0x62, 0x4b, 0xc4, 0xf7, 0x1d, 0x68, 0xea, 0x72, 0x4d, 0xbf, 0xf4, 0x7f, 0x72, 0x42, 0x48, 0xfe, 0x5c, 0xcc, 0x28, 0x5d, 0x96, 0x0b, 0x6f, 0xc9, 0x79, 0x04, 0x30, 0xa3, 0xa5, 0x21, 0xf6, }; static const unsigned char xdh_wei448_3411_privkey[] = { 0x58, 0xed, 0xe3, 0xfd, 0x60, 0xae, 0x61, 0x9c, 0x35, 0x3e, 0x39, 0x4f, 0x2a, 0x78, 0xaf, 0x92, 0x92, 0x30, 0x56, 0x90, 0xc6, 0x92, 0x32, 0x27, 0xc2, 0xf0, 0xce, 0xa0, 0x85, 0xf8, 0xc1, 0x1e, 0x51, 0x33, 0xbb, 0x56, 0x16, 0x4e, 0x5d, 0x41, 0xfe, 0x63, 0xba, 0x22, 0x99, 0x8b, 0x0f, 0x35, 0x1b, 0x7c, 0x81, 0xa3, 0x63, 0x05, 0x95, 0xa9, }; static const unsigned char xdh_wei448_3411_sharedsecret[] = { 0x3e, 0xfc, 0x48, 0xb8, 0x50, 0x74, 0x43, 0xc4, 0x1d, 0xf8, 0xc1, 0x07, 0x7a, 0xa5, 0xc7, 0x9c, 0xa1, 0xe9, 0x88, 0x1d, 0x64, 0xb4, 0x47, 0x75, 0xf8, 0x77, 0xff, 0x7c, 0x70, 0x7f, 0xb1, 0x86, 0x2f, 0xd7, 0xf7, 0x9d, 0x50, 0x36, 0x0e, 0x6a, 0xdc, 0x19, 0xc2, 0x28, 0x26, 0xff, 0x23, 0x14, 0xdb, 0xfd, 0x16, 0x8e, 0x0e, 0xec, 0x25, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_3411 = { .name = "xdh_wei448_3411", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3411_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3411_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3411_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 317 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3412 for XDH, tcId is 318 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3412_peerpubkey[] = { 0xfd, 0x1e, 0xad, 0x12, 0xe7, 0x90, 0x3a, 0x0d, 0x7c, 0xfe, 0x9d, 0xef, 0x3d, 0xa3, 0x95, 0xac, 0xcf, 0x68, 0x84, 0xa5, 0x33, 0xb6, 0xf9, 0xde, 0x30, 0x74, 0x54, 0x8e, 0x04, 0x7e, 0x39, 0x4f, 0xe4, 0x1f, 0x8f, 0xca, 0x96, 0x6d, 0xf7, 0x3e, 0xcc, 0xd8, 0x1d, 0xfc, 0xcd, 0xc7, 0x13, 0x62, 0x8c, 0x9d, 0x78, 0x27, 0x56, 0x28, 0x53, 0xaa, }; static const unsigned char xdh_wei448_3412_privkey[] = { 0xc0, 0x1b, 0xe8, 0xec, 0x9f, 0x3e, 0x48, 0xf8, 0x3b, 0xd7, 0x91, 0xb5, 0x3e, 0x52, 0x11, 0xc2, 0xb4, 0xdb, 0x5f, 0xe3, 0xad, 0x07, 0xd0, 0xd2, 0xc1, 0xa8, 0xcd, 0x55, 0x6a, 0x6f, 0x5e, 0x85, 0xfa, 0xc1, 0xfc, 0x8a, 0xec, 0x68, 0xbe, 0x8d, 0x96, 0xa8, 0xea, 0xfa, 0xab, 0xbd, 0x5b, 0xde, 0x6a, 0x46, 0xda, 0x39, 0x66, 0x50, 0xf8, 0xb3, }; static const unsigned char xdh_wei448_3412_sharedsecret[] = { 0xf9, 0xe4, 0x59, 0x53, 0x3a, 0x86, 0xcc, 0xc6, 0xf9, 0xba, 0xf4, 0xc3, 0xfc, 0xc9, 0x6e, 0x5b, 0x07, 0xbc, 0x5f, 0xbd, 0xe8, 0x46, 0xa3, 0x38, 0xce, 0xc8, 0xbc, 0xa4, 0x69, 0x00, 0x11, 0xe1, 0x99, 0x5f, 0xef, 0x31, 0xfb, 0x7d, 0xd3, 0xce, 0x31, 0xf4, 0x98, 0xa8, 0x66, 0xc6, 0xb1, 0xeb, 0x59, 0x5a, 0x8f, 0x22, 0xa8, 0x45, 0x20, 0x28, }; static const wycheproof_xdh_test xdh_wei448_3412 = { .name = "xdh_wei448_3412", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3412_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3412_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3412_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 318 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3413 for XDH, tcId is 319 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3413_peerpubkey[] = { 0x65, 0x35, 0x00, 0xf4, 0x1c, 0xc9, 0x14, 0xee, 0x7b, 0x24, 0x9d, 0x29, 0x3e, 0x3e, 0x60, 0xf5, 0xb2, 0x3d, 0xd6, 0x27, 0x17, 0xde, 0x18, 0xec, 0xc0, 0x65, 0xce, 0x1c, 0x3f, 0x0e, 0x62, 0xea, 0xa5, 0x3a, 0xeb, 0x40, 0xff, 0x91, 0x4f, 0x6e, 0x28, 0x3a, 0x26, 0x4e, 0x38, 0x4f, 0x86, 0xc8, 0xda, 0x96, 0xa2, 0x87, 0x49, 0x93, 0x61, 0xd8, }; static const unsigned char xdh_wei448_3413_privkey[] = { 0x18, 0x11, 0xae, 0x99, 0xd3, 0xa3, 0x67, 0xfd, 0xe2, 0x6f, 0xef, 0xeb, 0x3a, 0xd6, 0x2c, 0x7a, 0xe2, 0x1f, 0x65, 0x00, 0xa0, 0x09, 0xd4, 0x34, 0x35, 0x7d, 0xa5, 0x9b, 0x42, 0x27, 0xe6, 0xab, 0xe2, 0x80, 0xbe, 0x9f, 0xba, 0xee, 0x96, 0x48, 0x17, 0x2e, 0xc7, 0xd5, 0x4d, 0x81, 0xfc, 0x37, 0x6a, 0x63, 0xbe, 0x59, 0x1a, 0x48, 0x9f, 0xa0, }; static const unsigned char xdh_wei448_3413_sharedsecret[] = { 0xc2, 0xbc, 0x97, 0xf6, 0x8f, 0xf5, 0xc2, 0x37, 0x08, 0xd2, 0x82, 0x88, 0x3c, 0x20, 0xc8, 0xd9, 0x07, 0x9b, 0xaf, 0x06, 0xd7, 0x2e, 0x63, 0x2b, 0x46, 0x49, 0xea, 0x11, 0x3f, 0xb2, 0x87, 0x9f, 0x86, 0x40, 0xa2, 0x1d, 0x44, 0x85, 0x1f, 0x1a, 0xbf, 0x3e, 0x48, 0x7f, 0x2d, 0x65, 0xc8, 0x44, 0x6d, 0x32, 0xf6, 0x6b, 0x5e, 0xa9, 0xff, 0xb7, }; static const wycheproof_xdh_test xdh_wei448_3413 = { .name = "xdh_wei448_3413", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3413_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3413_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3413_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 319 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3414 for XDH, tcId is 320 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3414_peerpubkey[] = { 0xc1, 0x39, 0xba, 0x0b, 0xb5, 0xca, 0x96, 0x36, 0x09, 0x28, 0x6b, 0x50, 0xaf, 0xf9, 0xc3, 0xb2, 0x4c, 0x70, 0x51, 0x2c, 0x04, 0x07, 0xd9, 0x5a, 0x6a, 0xa7, 0x6f, 0x07, 0x4e, 0x4e, 0x34, 0x38, 0xab, 0x03, 0x8a, 0x9d, 0x68, 0x05, 0xe6, 0xb0, 0x1c, 0x4c, 0xa0, 0xc6, 0x23, 0xf8, 0xb5, 0x0e, 0xe5, 0xb7, 0x57, 0xa8, 0x3c, 0xfb, 0xbf, 0x02, }; static const unsigned char xdh_wei448_3414_privkey[] = { 0xdc, 0x40, 0x76, 0x80, 0x5c, 0x6d, 0x33, 0xa4, 0x54, 0xb2, 0x97, 0xd0, 0x8e, 0xbc, 0x44, 0x70, 0x12, 0xe0, 0xf4, 0x45, 0x99, 0x27, 0x31, 0x6c, 0x30, 0xcf, 0x5a, 0xae, 0x25, 0x1a, 0xc1, 0x42, 0x0c, 0xbc, 0x04, 0xf2, 0x3f, 0xd8, 0x64, 0x6f, 0x96, 0xfa, 0xed, 0x9f, 0xd4, 0x61, 0x75, 0x06, 0xf9, 0xbf, 0xe8, 0xf8, 0x80, 0x5a, 0x42, 0xdf, }; static const unsigned char xdh_wei448_3414_sharedsecret[] = { 0xb2, 0x0b, 0x6c, 0x99, 0x75, 0x13, 0x4a, 0xdc, 0x76, 0x8f, 0xcf, 0x27, 0xfd, 0x90, 0x3a, 0x17, 0xa7, 0x52, 0x56, 0x74, 0xc4, 0xf6, 0xad, 0x12, 0x60, 0x0a, 0xe5, 0xaa, 0x30, 0xf7, 0x8f, 0xad, 0x69, 0x10, 0x8c, 0x88, 0xcb, 0x8e, 0x68, 0xec, 0xbd, 0x00, 0x55, 0xbc, 0x6c, 0xa1, 0xce, 0xd4, 0x69, 0x18, 0xe4, 0x7c, 0x8a, 0x90, 0xa9, 0x4c, }; static const wycheproof_xdh_test xdh_wei448_3414 = { .name = "xdh_wei448_3414", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3414_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3414_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3414_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 320 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3415 for XDH, tcId is 321 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3415_peerpubkey[] = { 0x1a, 0x70, 0xd9, 0x23, 0xb5, 0xed, 0x73, 0xbf, 0x71, 0xa6, 0x5b, 0x47, 0xfe, 0xe7, 0xe7, 0x95, 0xb9, 0xc4, 0xcf, 0x4d, 0xb6, 0x18, 0xf6, 0x83, 0xfa, 0xc0, 0x3a, 0x70, 0xba, 0x23, 0x30, 0x02, 0x47, 0xd1, 0x4c, 0xfe, 0xba, 0xea, 0xb6, 0xb3, 0xab, 0xf0, 0xf1, 0x40, 0xe3, 0xd4, 0x8d, 0x54, 0xfd, 0x48, 0xba, 0x21, 0x3c, 0xc1, 0xfd, 0x04, }; static const unsigned char xdh_wei448_3415_privkey[] = { 0xa4, 0x8e, 0xbc, 0x73, 0x82, 0x70, 0x11, 0xfb, 0xe8, 0xd6, 0x32, 0xd8, 0xae, 0xa5, 0x7d, 0xf4, 0x4f, 0xa7, 0x03, 0xce, 0x27, 0x07, 0xb8, 0x09, 0x26, 0xad, 0x22, 0x8b, 0x5c, 0x2f, 0x25, 0x0b, 0xed, 0xbb, 0xc8, 0xf6, 0xd2, 0xd0, 0xb4, 0xe0, 0xa5, 0x6d, 0x65, 0x7e, 0xdd, 0x17, 0xee, 0x07, 0x19, 0xd0, 0xb3, 0xf1, 0x9d, 0x62, 0x16, 0xd4, }; static const unsigned char xdh_wei448_3415_sharedsecret[] = { 0x4e, 0xbf, 0xd3, 0x1f, 0x1c, 0xe1, 0xc8, 0x45, 0xfc, 0x3b, 0x36, 0x56, 0x93, 0x5c, 0x46, 0xc8, 0x8b, 0xbe, 0xf3, 0xbd, 0x23, 0x60, 0xaf, 0x50, 0x96, 0x50, 0xe0, 0x31, 0xb6, 0x5c, 0x72, 0x60, 0xaf, 0xb8, 0x46, 0xd0, 0xd6, 0x75, 0x63, 0x47, 0xc3, 0x89, 0xf7, 0x8d, 0xcf, 0x58, 0xde, 0x28, 0x0d, 0xd1, 0x0e, 0xc1, 0x40, 0xf2, 0x9e, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3415 = { .name = "xdh_wei448_3415", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3415_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3415_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3415_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 321 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3416 for XDH, tcId is 322 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3416_peerpubkey[] = { 0xaa, 0x6f, 0xec, 0xaf, 0xff, 0x49, 0xda, 0xf6, 0x52, 0xe6, 0x35, 0x53, 0xbb, 0x2a, 0x24, 0xdf, 0xf2, 0xe3, 0x36, 0x09, 0x35, 0xf6, 0xe6, 0x63, 0xe5, 0xd0, 0xb9, 0x87, 0x3a, 0xfd, 0xcc, 0xd9, 0xce, 0x2f, 0xee, 0xd9, 0x70, 0x2d, 0x69, 0xec, 0x7f, 0xd2, 0x00, 0xb5, 0xf0, 0x50, 0x36, 0xd4, 0xd8, 0x38, 0xe3, 0x8a, 0xc3, 0xe3, 0x50, 0x19, }; static const unsigned char xdh_wei448_3416_privkey[] = { 0x80, 0xce, 0x00, 0xf3, 0x00, 0x61, 0x6a, 0x90, 0x39, 0xf9, 0xf7, 0xc2, 0x37, 0x92, 0xd3, 0xea, 0xd1, 0xf9, 0xf1, 0xc4, 0xcc, 0xb4, 0x97, 0xd8, 0x56, 0x3e, 0x43, 0xae, 0x26, 0xac, 0xb4, 0xea, 0x42, 0xf2, 0xd8, 0x74, 0x38, 0x92, 0x5c, 0xce, 0x52, 0x4f, 0xb7, 0x2f, 0xff, 0x48, 0x3c, 0xf0, 0x35, 0x45, 0x04, 0x3a, 0xe6, 0x1f, 0xc4, 0xdb, }; static const unsigned char xdh_wei448_3416_sharedsecret[] = { 0xd4, 0xd6, 0xb7, 0x77, 0x2f, 0x2c, 0xe6, 0x63, 0x08, 0x9a, 0x38, 0xd7, 0xa8, 0x13, 0xd9, 0x40, 0x96, 0x28, 0xaf, 0x72, 0x2e, 0x7e, 0x42, 0x65, 0x86, 0x36, 0xd8, 0x1b, 0x0d, 0x83, 0x67, 0x97, 0x5a, 0x77, 0xd0, 0x20, 0xb6, 0xc4, 0xb1, 0xbe, 0xc2, 0xb5, 0x5e, 0xa6, 0x9a, 0x08, 0x7c, 0xd1, 0xdb, 0xbf, 0x2b, 0xca, 0x33, 0xf5, 0xbc, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3416 = { .name = "xdh_wei448_3416", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3416_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3416_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3416_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 322 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3417 for XDH, tcId is 323 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3417_peerpubkey[] = { 0x82, 0x4d, 0x9b, 0xe2, 0x7c, 0xeb, 0xa9, 0x4d, 0x89, 0x86, 0xb6, 0x43, 0xf9, 0x76, 0x12, 0x36, 0xc5, 0x85, 0x5b, 0xb1, 0xb2, 0xe4, 0x52, 0x8a, 0x51, 0x1f, 0x29, 0x98, 0xb4, 0xe1, 0x6c, 0xd9, 0x3a, 0x7b, 0x18, 0x58, 0xcb, 0x55, 0x01, 0x9d, 0x77, 0x42, 0x06, 0x4d, 0x99, 0x3c, 0xa8, 0x02, 0xa3, 0xc8, 0xac, 0x17, 0x29, 0x5e, 0xcd, 0x2c, }; static const unsigned char xdh_wei448_3417_privkey[] = { 0x98, 0xcf, 0x8c, 0x51, 0x7e, 0x34, 0xd7, 0x71, 0xd9, 0xe0, 0x8c, 0xb9, 0x4d, 0xf8, 0x62, 0x80, 0xf6, 0x7e, 0x61, 0xdd, 0x7c, 0xff, 0x24, 0xbb, 0x32, 0x01, 0x37, 0xcf, 0x37, 0x0f, 0xd0, 0xb5, 0x88, 0x65, 0xdc, 0xf9, 0xbd, 0xee, 0x21, 0x8e, 0x51, 0xf5, 0x97, 0xd9, 0x13, 0xa5, 0xce, 0x25, 0xe0, 0xf9, 0x4b, 0x56, 0x61, 0x19, 0x31, 0xc5, }; static const unsigned char xdh_wei448_3417_sharedsecret[] = { 0x51, 0x7a, 0x8e, 0x2b, 0x66, 0xcf, 0xca, 0x84, 0x9c, 0x3c, 0xb8, 0xee, 0xe2, 0x8c, 0x45, 0x50, 0x50, 0xba, 0xa4, 0x79, 0x93, 0x40, 0xb4, 0x77, 0xfd, 0x6d, 0xa9, 0x5a, 0x99, 0x41, 0xdf, 0x92, 0xc7, 0xe4, 0x0b, 0x7d, 0xf7, 0x3f, 0x92, 0x0a, 0xe2, 0x2e, 0x5f, 0xc2, 0xd1, 0x45, 0x50, 0x49, 0x28, 0x42, 0x5e, 0x5e, 0x38, 0xc5, 0xcc, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3417 = { .name = "xdh_wei448_3417", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3417_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3417_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3417_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 323 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3418 for XDH, tcId is 324 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3418_peerpubkey[] = { 0xb6, 0x78, 0x75, 0xad, 0xd6, 0xc1, 0xf7, 0x61, 0x23, 0x4e, 0x35, 0x2b, 0x70, 0xc4, 0x1d, 0x23, 0x9d, 0xd1, 0xe5, 0x2a, 0x9f, 0xa1, 0x1e, 0x9e, 0x84, 0x52, 0x85, 0x26, 0x7f, 0x43, 0x6a, 0xc8, 0x1b, 0x79, 0x72, 0x06, 0x7e, 0x84, 0x3b, 0x03, 0xa4, 0xc5, 0x2c, 0x7a, 0x3b, 0x5a, 0xec, 0xa2, 0xfc, 0x6d, 0x18, 0x4b, 0x84, 0x38, 0xa6, 0x53, }; static const unsigned char xdh_wei448_3418_privkey[] = { 0x50, 0x6e, 0x86, 0xb7, 0xcc, 0xa2, 0x85, 0x83, 0x14, 0x77, 0xd9, 0x22, 0xb7, 0x86, 0x2e, 0x97, 0xda, 0x29, 0x4d, 0xf3, 0x9b, 0xbc, 0x5d, 0x96, 0x78, 0xe4, 0xd8, 0x3b, 0x2f, 0xdc, 0xe5, 0x65, 0x0c, 0x91, 0x67, 0x3c, 0xfb, 0xfa, 0xfb, 0x99, 0xb0, 0x73, 0x88, 0x00, 0x5b, 0xc6, 0xf6, 0xcf, 0x77, 0x7a, 0x24, 0x42, 0xed, 0x43, 0x74, 0xcb, }; static const unsigned char xdh_wei448_3418_sharedsecret[] = { 0xee, 0xb6, 0x2c, 0x57, 0x18, 0x97, 0x17, 0x51, 0x8c, 0x4d, 0xd0, 0x68, 0x73, 0x59, 0x3e, 0x4b, 0x12, 0xa9, 0xc5, 0x08, 0x75, 0x08, 0x0f, 0x56, 0xd7, 0x81, 0xa3, 0xed, 0x3e, 0xf7, 0xd9, 0xda, 0xf3, 0x5d, 0x86, 0xc4, 0x11, 0x1a, 0x2d, 0xbe, 0x06, 0x57, 0x8f, 0xf6, 0xd3, 0xa6, 0x5d, 0xed, 0x0b, 0x18, 0x14, 0x60, 0x06, 0xcf, 0xaa, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_3418 = { .name = "xdh_wei448_3418", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3418_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3418_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3418_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 324 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3419 for XDH, tcId is 325 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3419_peerpubkey[] = { 0xe5, 0xf9, 0x76, 0x38, 0x77, 0x9e, 0x27, 0xa9, 0x73, 0x7e, 0x08, 0x21, 0xd7, 0x71, 0x15, 0x85, 0xa9, 0x3f, 0x26, 0xdd, 0x52, 0x20, 0x8e, 0xd5, 0x36, 0x37, 0xd6, 0x74, 0xec, 0xe9, 0x66, 0x4f, 0xbb, 0xf3, 0x3e, 0x1c, 0xc4, 0xa3, 0x1f, 0x64, 0x30, 0xf1, 0x27, 0xc2, 0xf6, 0x0c, 0xb7, 0x6a, 0x1d, 0xef, 0xa6, 0xb6, 0xf7, 0x52, 0x47, 0x75, }; static const unsigned char xdh_wei448_3419_privkey[] = { 0xa0, 0x45, 0x4f, 0x58, 0x1e, 0x87, 0x8d, 0x6a, 0x3e, 0x04, 0x0f, 0x47, 0x69, 0xf2, 0x6d, 0x42, 0xd4, 0xb5, 0x5c, 0x25, 0x5b, 0xdd, 0x1e, 0xb2, 0x70, 0x76, 0x5d, 0x94, 0x9c, 0x49, 0x2f, 0x1c, 0x82, 0xc4, 0xd2, 0x3f, 0xec, 0x8b, 0x72, 0xd9, 0xcb, 0xbe, 0xd2, 0xdb, 0xc4, 0x0e, 0x23, 0xeb, 0x9f, 0x2b, 0x75, 0xf4, 0x91, 0xf4, 0xe2, 0xd2, }; static const unsigned char xdh_wei448_3419_sharedsecret[] = { 0x99, 0x57, 0x23, 0x6d, 0x86, 0x1e, 0xb7, 0x81, 0xc4, 0xc2, 0xd9, 0x15, 0x71, 0xb2, 0xa7, 0xb6, 0x9a, 0x51, 0xdd, 0x7d, 0x32, 0xcb, 0x53, 0x41, 0x8c, 0x33, 0x93, 0x3b, 0x81, 0x39, 0xbe, 0x72, 0x32, 0x95, 0xd2, 0x74, 0x44, 0xe3, 0x93, 0x69, 0x8c, 0x26, 0xb2, 0xc7, 0x84, 0xeb, 0x51, 0xfb, 0x8c, 0xf5, 0x3c, 0xcd, 0x3b, 0x41, 0x47, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3419 = { .name = "xdh_wei448_3419", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3419_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3419_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3419_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 325 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3420 for XDH, tcId is 326 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3420_peerpubkey[] = { 0x89, 0xc6, 0x37, 0xa3, 0x88, 0x96, 0xa8, 0xb5, 0xa3, 0xc1, 0x6e, 0x71, 0xa3, 0x5c, 0x2c, 0x18, 0xe4, 0x2d, 0x4a, 0x66, 0xd9, 0x71, 0xe3, 0x13, 0xc4, 0x62, 0xe7, 0xcc, 0x0c, 0x63, 0x2f, 0xea, 0x67, 0x0a, 0xb4, 0xc6, 0x0f, 0x49, 0xe8, 0x01, 0xd0, 0x18, 0x09, 0x70, 0x88, 0x8c, 0x33, 0x21, 0xb6, 0x61, 0xf3, 0x53, 0x1b, 0x0f, 0xe6, 0x76, }; static const unsigned char xdh_wei448_3420_privkey[] = { 0x54, 0xda, 0x02, 0x65, 0x68, 0xfc, 0x41, 0xef, 0x64, 0x9a, 0x51, 0xfd, 0x78, 0x40, 0x58, 0xf1, 0x91, 0x8c, 0x1a, 0x1f, 0x06, 0x98, 0xaa, 0xb9, 0xe5, 0x48, 0x6a, 0xec, 0xac, 0x85, 0x9d, 0x9b, 0xa2, 0x24, 0x38, 0x61, 0xdd, 0xfd, 0xfd, 0x63, 0x82, 0xdf, 0x20, 0xa4, 0x3b, 0xb0, 0x21, 0x65, 0xe3, 0x21, 0xc1, 0x98, 0x59, 0xc7, 0xe9, 0xdf, }; static const unsigned char xdh_wei448_3420_sharedsecret[] = { 0x0a, 0xcc, 0x1f, 0xf0, 0xe8, 0xd1, 0xef, 0xf3, 0xc7, 0x42, 0x1a, 0x8c, 0x0c, 0xdf, 0xd5, 0xa7, 0xa1, 0x48, 0xea, 0x53, 0x26, 0xd2, 0xaa, 0x7b, 0xd9, 0x7f, 0x93, 0x1f, 0xa4, 0x79, 0x16, 0xa5, 0xb6, 0x34, 0x61, 0x51, 0x35, 0x3d, 0x4f, 0x9e, 0x8e, 0xdb, 0x9e, 0xf0, 0xe9, 0xc3, 0xe3, 0x28, 0x19, 0x70, 0x77, 0x93, 0x6a, 0xa8, 0x09, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3420 = { .name = "xdh_wei448_3420", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3420_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3420_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3420_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 326 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3421 for XDH, tcId is 327 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3421_peerpubkey[] = { 0xda, 0x58, 0x1f, 0x73, 0x92, 0xf3, 0x4e, 0x3a, 0x7a, 0xe0, 0x90, 0x79, 0x50, 0x77, 0xc7, 0x61, 0x4c, 0xd2, 0x18, 0x5b, 0x8a, 0x61, 0x20, 0x3d, 0x10, 0x6e, 0xbd, 0xdd, 0x51, 0x65, 0x93, 0x61, 0x6e, 0x2c, 0xb3, 0xdd, 0x77, 0xf9, 0x77, 0x15, 0x97, 0xfc, 0xb2, 0x5b, 0xb4, 0xa9, 0xd8, 0x69, 0x88, 0x82, 0xc0, 0x33, 0xbe, 0xb9, 0xa1, 0x89, }; static const unsigned char xdh_wei448_3421_privkey[] = { 0x90, 0xd9, 0xb6, 0x83, 0x57, 0xd4, 0x99, 0x59, 0x74, 0xb0, 0xbb, 0x11, 0xf5, 0x24, 0x77, 0x3c, 0xfb, 0x2e, 0x49, 0x38, 0x5e, 0x31, 0x8c, 0x03, 0x63, 0x0b, 0x73, 0x38, 0x26, 0x11, 0x5e, 0x6a, 0x5b, 0x1d, 0x73, 0xb5, 0x30, 0x69, 0x50, 0xff, 0x90, 0xb9, 0x75, 0x16, 0x11, 0x4b, 0xad, 0x3e, 0xcd, 0x68, 0x59, 0xfb, 0x63, 0x93, 0x60, 0xca, }; static const unsigned char xdh_wei448_3421_sharedsecret[] = { 0x15, 0xab, 0xca, 0xad, 0xdf, 0x6b, 0x8c, 0xcd, 0x7a, 0xab, 0x0a, 0xea, 0xea, 0x64, 0x96, 0x60, 0xff, 0xc8, 0x65, 0xe5, 0x2e, 0x33, 0x91, 0x31, 0xaa, 0x33, 0x3d, 0xdc, 0x9e, 0x34, 0x3f, 0x16, 0x02, 0xb9, 0xee, 0xd6, 0xb9, 0x00, 0x15, 0x97, 0x42, 0x1e, 0xfd, 0x24, 0x57, 0xec, 0x49, 0x5c, 0xce, 0x57, 0xd8, 0x9d, 0xb4, 0xf3, 0x45, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3421 = { .name = "xdh_wei448_3421", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3421_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3421_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3421_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 327 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3422 for XDH, tcId is 328 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3422_peerpubkey[] = { 0x65, 0xba, 0x0d, 0xd5, 0x81, 0xdb, 0xe1, 0x7a, 0x82, 0x90, 0x6e, 0x4d, 0xc5, 0x6a, 0x09, 0xdb, 0xdd, 0x54, 0xac, 0xcd, 0x86, 0xfd, 0xa4, 0x90, 0xeb, 0x61, 0x8e, 0x77, 0x27, 0x72, 0x93, 0x53, 0x3e, 0xbc, 0x70, 0xda, 0xd7, 0x02, 0x52, 0xd3, 0xbd, 0x6a, 0x12, 0x4b, 0xfd, 0x99, 0xaa, 0x3a, 0xdb, 0x83, 0x1e, 0x83, 0xc9, 0x6e, 0xdc, 0x9f, }; static const unsigned char xdh_wei448_3422_privkey[] = { 0x50, 0x21, 0xdd, 0x11, 0x1e, 0x3c, 0x8b, 0x81, 0x29, 0xf3, 0x54, 0x79, 0x85, 0xc7, 0xf2, 0x6b, 0xf3, 0x78, 0x5c, 0xd3, 0xe0, 0x50, 0xe9, 0x44, 0x82, 0x65, 0x26, 0x1f, 0xb5, 0x8e, 0xd6, 0xc5, 0xc5, 0xaf, 0x9e, 0x68, 0x78, 0xc0, 0x46, 0x18, 0xda, 0xe7, 0xec, 0xf4, 0x55, 0x43, 0xbc, 0x40, 0xcc, 0x38, 0x02, 0x08, 0x48, 0xc2, 0x10, 0xcd, }; static const unsigned char xdh_wei448_3422_sharedsecret[] = { 0x93, 0x3c, 0xca, 0x5e, 0x01, 0xcc, 0xa2, 0x97, 0x11, 0xb3, 0xb4, 0x72, 0x9a, 0xff, 0x32, 0x3a, 0xf5, 0x8f, 0x18, 0x80, 0x17, 0xd9, 0x6c, 0x15, 0xc7, 0xd1, 0x6a, 0x07, 0x83, 0x56, 0x50, 0x7b, 0x6e, 0x9c, 0xd6, 0xe0, 0x65, 0x1d, 0x0b, 0x52, 0x9f, 0x1c, 0x2c, 0xc9, 0xb9, 0x45, 0x10, 0xb8, 0xbe, 0xb3, 0x59, 0x45, 0x45, 0x2b, 0x2b, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3422 = { .name = "xdh_wei448_3422", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3422_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3422_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3422_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 328 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3423 for XDH, tcId is 329 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3423_peerpubkey[] = { 0x1b, 0x68, 0x20, 0xa3, 0xf4, 0x5e, 0xd2, 0x5f, 0xbc, 0x60, 0x05, 0x26, 0x1d, 0xfc, 0xe5, 0x7a, 0xcb, 0x5d, 0x4d, 0x82, 0xcb, 0x73, 0x4b, 0x2c, 0x35, 0xeb, 0x62, 0x6c, 0xad, 0xe1, 0xea, 0x38, 0x28, 0xfd, 0x7f, 0x6f, 0x0a, 0x32, 0xbc, 0xf7, 0x93, 0x3d, 0x93, 0x7e, 0x6d, 0x0f, 0x54, 0x9a, 0x0e, 0xda, 0x36, 0xd2, 0x41, 0x61, 0x7c, 0xaa, }; static const unsigned char xdh_wei448_3423_privkey[] = { 0x78, 0x63, 0xa4, 0x08, 0xac, 0xf7, 0xb6, 0xd5, 0x2e, 0x2c, 0xb0, 0x9e, 0x9d, 0x38, 0x05, 0xbf, 0xf4, 0x81, 0x78, 0x7a, 0x99, 0x22, 0x3a, 0xec, 0x44, 0xec, 0x22, 0x42, 0xf4, 0xd5, 0x5f, 0x2c, 0x77, 0x17, 0xb6, 0x71, 0x2a, 0xad, 0x80, 0xa8, 0x4b, 0xb7, 0xf0, 0x2b, 0xbf, 0xed, 0x3f, 0xb4, 0xde, 0x72, 0x9f, 0xc1, 0x5e, 0xc2, 0xe1, 0xd3, }; static const unsigned char xdh_wei448_3423_sharedsecret[] = { 0x05, 0x7c, 0xc2, 0xab, 0x05, 0x52, 0x3b, 0x73, 0xe7, 0x4a, 0xee, 0x31, 0x51, 0xef, 0x8d, 0xbf, 0x9e, 0x79, 0x6d, 0x68, 0x19, 0x9f, 0x69, 0x92, 0x9f, 0x95, 0x12, 0x1d, 0x29, 0xc3, 0xbf, 0x43, 0xb9, 0x1b, 0xeb, 0x74, 0x94, 0xb1, 0x70, 0x39, 0x5f, 0xdf, 0x0f, 0xa1, 0x1f, 0x44, 0x56, 0x09, 0x4e, 0x27, 0x63, 0x3f, 0x9d, 0x24, 0x0a, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3423 = { .name = "xdh_wei448_3423", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3423_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3423_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3423_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 329 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3424 for XDH, tcId is 330 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3424_peerpubkey[] = { 0xde, 0xfd, 0x0c, 0xb3, 0x99, 0x2f, 0x0a, 0x16, 0xe7, 0x58, 0x79, 0x19, 0x04, 0x44, 0x29, 0xbf, 0x1a, 0x91, 0x33, 0x30, 0xcc, 0x3e, 0x82, 0x54, 0x9a, 0xe4, 0xb8, 0x8c, 0x6b, 0x25, 0x50, 0xc8, 0x3d, 0x36, 0x4c, 0x7e, 0x52, 0x92, 0xb5, 0x91, 0x90, 0xec, 0xb2, 0x4d, 0x12, 0x01, 0x96, 0x32, 0x19, 0x55, 0x52, 0xcb, 0x98, 0x8c, 0x6a, 0xbc, }; static const unsigned char xdh_wei448_3424_privkey[] = { 0x58, 0x31, 0x40, 0x3b, 0xb4, 0xfe, 0x37, 0x74, 0xbc, 0xe2, 0xa7, 0x46, 0x10, 0x5c, 0x67, 0x60, 0x47, 0xee, 0x7c, 0xf6, 0x25, 0xca, 0xdb, 0xea, 0x99, 0x2b, 0x89, 0xcb, 0x5c, 0x6f, 0xd8, 0xbd, 0x43, 0xb6, 0x82, 0xf9, 0x64, 0xe7, 0xc3, 0x74, 0xda, 0xcd, 0x2d, 0xc9, 0xe6, 0x1b, 0x02, 0x0d, 0x4d, 0xa9, 0xe0, 0x35, 0xac, 0x7b, 0xf3, 0xd1, }; static const unsigned char xdh_wei448_3424_sharedsecret[] = { 0x5a, 0xbd, 0x6a, 0xa8, 0x0c, 0xfe, 0xba, 0x87, 0xfa, 0x38, 0x97, 0x14, 0x29, 0x5d, 0x16, 0xb7, 0xc0, 0x64, 0xe1, 0x60, 0x5c, 0x8d, 0xf8, 0xa3, 0xd0, 0x69, 0x46, 0x74, 0x87, 0x97, 0xae, 0x98, 0x54, 0xf7, 0x4f, 0x08, 0x96, 0x47, 0xd4, 0x69, 0x8c, 0x04, 0x8f, 0x29, 0xf9, 0x2d, 0x90, 0xc7, 0xe7, 0xbd, 0xd4, 0xf2, 0x7e, 0xf0, 0xea, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3424 = { .name = "xdh_wei448_3424", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3424_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3424_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3424_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 330 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3425 for XDH, tcId is 331 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3425_peerpubkey[] = { 0x64, 0xfa, 0x39, 0x92, 0xdc, 0x42, 0x9e, 0x51, 0xcf, 0xb4, 0x47, 0xae, 0x60, 0x90, 0xbb, 0xe5, 0x39, 0xbc, 0xdc, 0xcc, 0xcf, 0xfe, 0xa8, 0xbe, 0x0c, 0x8f, 0x3f, 0x8e, 0x5f, 0x8f, 0xf7, 0x5e, 0x50, 0xb2, 0xba, 0x94, 0xf2, 0x7c, 0x30, 0x20, 0x54, 0x27, 0x87, 0x3f, 0xf9, 0x24, 0x3b, 0xaa, 0xf1, 0x62, 0xf1, 0x54, 0xa3, 0xcc, 0x1e, 0xcd, }; static const unsigned char xdh_wei448_3425_privkey[] = { 0xcc, 0x56, 0x3f, 0x16, 0xc8, 0xab, 0x58, 0x4e, 0x30, 0x76, 0x0d, 0xef, 0xc2, 0x8f, 0x5f, 0x19, 0x14, 0xd2, 0x4b, 0xad, 0xf1, 0x0e, 0x5f, 0xee, 0x39, 0xb4, 0xe4, 0xdb, 0xc5, 0x86, 0x09, 0x61, 0xfd, 0x19, 0xa3, 0xf1, 0x1d, 0xd5, 0x6c, 0xf0, 0x3e, 0xd6, 0x98, 0xa8, 0xaa, 0xba, 0x08, 0xee, 0x48, 0x12, 0xb4, 0x5c, 0xba, 0x0f, 0xd6, 0xc5, }; static const unsigned char xdh_wei448_3425_sharedsecret[] = { 0xb8, 0xa3, 0x98, 0xd6, 0x29, 0x76, 0xd6, 0x5b, 0x81, 0x79, 0xd4, 0x0a, 0x5c, 0x14, 0xfd, 0xa0, 0x07, 0x6d, 0x2a, 0x9d, 0x46, 0x26, 0xde, 0xb5, 0xd7, 0x34, 0x92, 0x0c, 0x0a, 0xc4, 0xf2, 0x83, 0xe8, 0x1d, 0x49, 0xf2, 0xdd, 0x8d, 0x6b, 0x50, 0x3f, 0x11, 0xa1, 0x86, 0xe7, 0x38, 0x13, 0x9c, 0x5a, 0x14, 0x33, 0x00, 0x3a, 0x0d, 0xa7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3425 = { .name = "xdh_wei448_3425", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3425_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3425_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3425_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 331 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3426 for XDH, tcId is 332 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3426_peerpubkey[] = { 0xb1, 0x2e, 0x03, 0x9a, 0x6c, 0x92, 0x0f, 0x62, 0x6e, 0x99, 0x77, 0xdd, 0x93, 0xf0, 0x40, 0x5e, 0x30, 0x9f, 0x6d, 0x60, 0x1f, 0x51, 0xe9, 0x63, 0x26, 0x93, 0x5e, 0x6e, 0x5a, 0xc1, 0xa1, 0xda, 0xa4, 0xda, 0xfc, 0x09, 0xf9, 0xe1, 0xaa, 0x36, 0x2c, 0xa1, 0x24, 0x2a, 0xe8, 0x5c, 0xf1, 0x13, 0x39, 0xbf, 0x49, 0xc5, 0xfc, 0xdb, 0xef, 0x04, }; static const unsigned char xdh_wei448_3426_privkey[] = { 0x84, 0x5d, 0xb0, 0x49, 0xa0, 0x26, 0x01, 0xc8, 0xbf, 0xfc, 0xb3, 0x9a, 0x09, 0xf8, 0xa4, 0x1f, 0x59, 0xea, 0x7b, 0x7d, 0x7f, 0x9a, 0xb0, 0xac, 0x32, 0x01, 0xb6, 0xc9, 0xf5, 0x4c, 0x19, 0x00, 0x97, 0xef, 0xcc, 0x87, 0xe6, 0xfb, 0x66, 0x96, 0x9a, 0x86, 0xa4, 0x00, 0x51, 0xaf, 0x63, 0x79, 0xed, 0xa8, 0x46, 0xdb, 0x3a, 0x63, 0xd6, 0xc3, }; static const unsigned char xdh_wei448_3426_sharedsecret[] = { 0x4b, 0x85, 0x89, 0xcd, 0x37, 0x0b, 0x85, 0x1e, 0xec, 0xcd, 0x07, 0xb2, 0x25, 0x96, 0x3e, 0x2d, 0xc3, 0x55, 0x70, 0x47, 0x93, 0xa8, 0xe4, 0x4f, 0xfb, 0x73, 0x94, 0x45, 0xcc, 0x59, 0x07, 0xf4, 0x7b, 0xcd, 0xfb, 0x1e, 0x3a, 0xe4, 0x41, 0x23, 0x8d, 0x72, 0xf6, 0x0d, 0x42, 0x54, 0x4a, 0xee, 0x01, 0x2a, 0xa1, 0xcc, 0x17, 0x19, 0x5a, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3426 = { .name = "xdh_wei448_3426", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3426_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3426_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3426_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 332 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3427 for XDH, tcId is 333 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3427_peerpubkey[] = { 0x11, 0x80, 0xa4, 0x67, 0xe0, 0x5c, 0x86, 0x8c, 0xa3, 0x3b, 0xd1, 0x81, 0x5d, 0x1d, 0xaa, 0x76, 0x5e, 0x98, 0x9d, 0x03, 0x8a, 0x34, 0x9c, 0xb0, 0xbe, 0x63, 0x9c, 0x85, 0x59, 0x17, 0x15, 0x40, 0xe9, 0xb4, 0x1d, 0xfc, 0x2e, 0xc8, 0xf7, 0xac, 0xb9, 0x4b, 0x92, 0x9a, 0x6d, 0x01, 0xbb, 0x9b, 0x67, 0x93, 0xe3, 0x51, 0x66, 0x97, 0x86, 0x5e, }; static const unsigned char xdh_wei448_3427_privkey[] = { 0x50, 0x51, 0x7d, 0x38, 0x72, 0x02, 0x9a, 0x98, 0xe9, 0xdc, 0x37, 0x49, 0x72, 0x08, 0xc0, 0xe8, 0xba, 0x00, 0x51, 0xa8, 0x51, 0x78, 0x41, 0xfb, 0x93, 0xcd, 0xa1, 0x64, 0x5c, 0xbf, 0xc8, 0x35, 0xab, 0x3f, 0x6e, 0x53, 0xd5, 0x70, 0xb5, 0xe2, 0x80, 0xd3, 0xa7, 0xcc, 0x16, 0x64, 0x1e, 0x64, 0xe1, 0x46, 0xcd, 0x7a, 0x4d, 0x70, 0x1b, 0xd3, }; static const unsigned char xdh_wei448_3427_sharedsecret[] = { 0x9f, 0xff, 0x02, 0x11, 0xe4, 0x00, 0x6e, 0xe0, 0x37, 0xf7, 0xbd, 0xa5, 0x10, 0x57, 0xac, 0x9f, 0x97, 0x3c, 0xf2, 0x11, 0x43, 0x59, 0xad, 0xb8, 0xb0, 0x94, 0x6c, 0xee, 0x04, 0x36, 0x2f, 0x22, 0x50, 0xc8, 0x41, 0x73, 0xba, 0xf0, 0xdb, 0xcd, 0xf8, 0xf0, 0xf1, 0x8f, 0xcc, 0x37, 0x09, 0x81, 0xef, 0xcb, 0x68, 0x41, 0x8d, 0xda, 0x37, 0x36, }; static const wycheproof_xdh_test xdh_wei448_3427 = { .name = "xdh_wei448_3427", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3427_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3427_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3427_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 333 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3428 for XDH, tcId is 334 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3428_peerpubkey[] = { 0xbe, 0xbf, 0xf6, 0xf3, 0xa3, 0xa1, 0xf1, 0x68, 0x1a, 0x15, 0x47, 0x91, 0x2e, 0x8b, 0xa8, 0xf1, 0x80, 0x83, 0x56, 0x59, 0xf1, 0x66, 0x7c, 0xc2, 0x4f, 0x3f, 0xb3, 0x56, 0xc9, 0xb2, 0xb4, 0xb8, 0x5d, 0x9e, 0xf9, 0x56, 0x1e, 0x21, 0x0a, 0x8c, 0x74, 0xb6, 0xc0, 0xaa, 0x07, 0xee, 0xa6, 0x44, 0xe3, 0x06, 0x33, 0xdf, 0x02, 0x83, 0x86, 0x90, }; static const unsigned char xdh_wei448_3428_privkey[] = { 0xcc, 0x01, 0x12, 0x81, 0xae, 0x30, 0xb6, 0x17, 0xad, 0x79, 0x23, 0xaa, 0xce, 0xe0, 0x72, 0xfd, 0x5f, 0x9d, 0x1d, 0xa0, 0x55, 0xee, 0x7b, 0x60, 0x52, 0xcc, 0x03, 0xf7, 0x9f, 0x99, 0xc8, 0x8e, 0xec, 0xa7, 0xb5, 0xee, 0x65, 0xd8, 0x56, 0x23, 0x64, 0x2c, 0x4e, 0x92, 0xd4, 0x0b, 0xb8, 0x18, 0x50, 0xfc, 0x27, 0x0c, 0x61, 0x6f, 0x43, 0xda, }; static const unsigned char xdh_wei448_3428_sharedsecret[] = { 0x89, 0x53, 0x8a, 0xc4, 0x75, 0xd4, 0x4c, 0xf7, 0x0e, 0xa5, 0x48, 0x45, 0x16, 0x35, 0x69, 0xb7, 0xa4, 0x6f, 0x28, 0x05, 0x6b, 0xf0, 0xb0, 0x16, 0x4b, 0x76, 0x6f, 0xc9, 0x41, 0xb2, 0x3e, 0x92, 0xb9, 0x9d, 0x6e, 0xc5, 0x39, 0x1e, 0x2e, 0xb9, 0xd7, 0xf1, 0xd0, 0x4c, 0xab, 0xd6, 0x26, 0x86, 0xd2, 0xde, 0x74, 0xa2, 0xd3, 0x57, 0x02, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3428 = { .name = "xdh_wei448_3428", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3428_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3428_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3428_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 334 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3429 for XDH, tcId is 335 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3429_peerpubkey[] = { 0x23, 0x55, 0xaa, 0x15, 0x22, 0x36, 0x45, 0x1f, 0xde, 0xe7, 0xa5, 0xa3, 0xb8, 0xb4, 0x38, 0x65, 0x63, 0x68, 0xe6, 0xc4, 0x92, 0xf7, 0x4f, 0x7d, 0x72, 0xc7, 0x06, 0xa7, 0x8b, 0xc6, 0x6b, 0x4a, 0xdb, 0xaa, 0xc8, 0xfb, 0x73, 0xfc, 0xe3, 0xb5, 0x90, 0x6e, 0xa1, 0x8c, 0xd5, 0xc2, 0x47, 0xc1, 0xc9, 0xce, 0xfb, 0x3f, 0x36, 0xd6, 0x8b, 0x0c, }; static const unsigned char xdh_wei448_3429_privkey[] = { 0x50, 0xd4, 0x8c, 0x9d, 0x35, 0x2d, 0x66, 0xbc, 0x02, 0x8a, 0x4b, 0x62, 0x1b, 0xd4, 0xd5, 0xa5, 0x35, 0xef, 0x0c, 0xdd, 0xac, 0xe9, 0xfd, 0xb4, 0x30, 0xab, 0x93, 0xd3, 0xdf, 0xd5, 0xe8, 0x97, 0x88, 0x28, 0xb1, 0xaf, 0x6f, 0xef, 0xfe, 0x7d, 0xb8, 0xf0, 0x83, 0xf3, 0x01, 0x4d, 0x4d, 0xc9, 0x15, 0xd6, 0x96, 0xa4, 0x9c, 0xa3, 0x5b, 0xcf, }; static const unsigned char xdh_wei448_3429_sharedsecret[] = { 0x7b, 0xa0, 0xd3, 0x22, 0x86, 0xc0, 0x48, 0x7c, 0x25, 0x7c, 0x80, 0x3b, 0xa9, 0xd3, 0x51, 0xcd, 0x29, 0xbe, 0xfa, 0x9f, 0xc7, 0x80, 0x82, 0x28, 0x47, 0xa1, 0x79, 0xd2, 0xd0, 0x93, 0x92, 0xde, 0xe6, 0x53, 0xfc, 0x73, 0x1c, 0x4b, 0xaf, 0x1f, 0xcb, 0x4a, 0xc0, 0xdb, 0x86, 0x73, 0xba, 0x92, 0x75, 0x21, 0x37, 0x50, 0x90, 0x7d, 0x20, 0xc1, }; static const wycheproof_xdh_test xdh_wei448_3429 = { .name = "xdh_wei448_3429", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3429_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3429_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3429_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 335 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3430 for XDH, tcId is 336 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3430_peerpubkey[] = { 0xf9, 0x89, 0xfb, 0x50, 0x94, 0xb0, 0x71, 0xe7, 0x56, 0x0e, 0x7f, 0xf7, 0x19, 0xd5, 0x58, 0xaf, 0x6a, 0x52, 0x56, 0x7d, 0x4c, 0x0d, 0xa9, 0x08, 0xc0, 0x77, 0x77, 0x02, 0x9d, 0x90, 0xf6, 0xc9, 0x76, 0x13, 0x41, 0x8c, 0x89, 0xb3, 0xba, 0x5c, 0x18, 0x83, 0x91, 0x21, 0x59, 0xf5, 0xb3, 0xcc, 0x15, 0xb9, 0xee, 0xe7, 0xee, 0x99, 0xfb, 0x0f, }; static const unsigned char xdh_wei448_3430_privkey[] = { 0xa0, 0xa6, 0x53, 0x86, 0x43, 0x52, 0x9a, 0x71, 0x12, 0x5c, 0xbd, 0xe7, 0x41, 0x1d, 0x4d, 0x0c, 0x6d, 0x93, 0xf0, 0x6c, 0x3f, 0xd9, 0x25, 0x85, 0x7b, 0xe3, 0x97, 0xfb, 0x8a, 0x09, 0x63, 0x08, 0x6e, 0xd1, 0xec, 0x2c, 0xc3, 0xaa, 0xc4, 0x55, 0xd7, 0xe5, 0x31, 0x9c, 0xbc, 0x3b, 0x9d, 0x61, 0xbc, 0xbc, 0x04, 0xec, 0xaa, 0xba, 0x1b, 0xde, }; static const unsigned char xdh_wei448_3430_sharedsecret[] = { 0xf2, 0xb5, 0x2d, 0x42, 0x22, 0x4f, 0x2e, 0xa8, 0x6a, 0xa9, 0x69, 0x79, 0xb8, 0x0e, 0xe6, 0x93, 0x91, 0xab, 0x04, 0x2d, 0x8b, 0xd6, 0xdb, 0xaa, 0x2c, 0xec, 0x68, 0x00, 0x16, 0x60, 0x6e, 0xa3, 0x45, 0x83, 0xe5, 0xb4, 0x61, 0xfe, 0x38, 0xb9, 0xdf, 0x61, 0x61, 0xc8, 0xa1, 0xa4, 0x3f, 0xb4, 0xfb, 0x88, 0x0b, 0xa4, 0x60, 0xaf, 0x71, 0x27, }; static const wycheproof_xdh_test xdh_wei448_3430 = { .name = "xdh_wei448_3430", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3430_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3430_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3430_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 336 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3431 for XDH, tcId is 337 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3431_peerpubkey[] = { 0x69, 0x74, 0x07, 0xb0, 0xaf, 0xaf, 0x40, 0x10, 0x7c, 0x7c, 0x5f, 0x26, 0x4c, 0xd8, 0xa7, 0x03, 0x0c, 0x71, 0x5c, 0x57, 0x6e, 0x7d, 0x83, 0xc4, 0xf5, 0xb6, 0x92, 0xfc, 0x30, 0xf8, 0x47, 0x1e, 0x25, 0xeb, 0xd8, 0x95, 0x5f, 0x3f, 0x5a, 0x74, 0xc4, 0x97, 0x0d, 0x41, 0x19, 0xa3, 0xe9, 0xbd, 0x85, 0x3f, 0xc3, 0xc5, 0x89, 0xbc, 0xe1, 0x19, }; static const unsigned char xdh_wei448_3431_privkey[] = { 0x84, 0x87, 0x3d, 0xf6, 0xb5, 0xe1, 0xbf, 0xe2, 0x6a, 0x39, 0xe2, 0x5c, 0xcc, 0xab, 0x3e, 0xa7, 0xee, 0xbf, 0xbe, 0xad, 0x47, 0x5d, 0x0f, 0xa2, 0x51, 0x4b, 0xe6, 0x8a, 0x11, 0x1e, 0x4c, 0xec, 0x6d, 0xc9, 0xa3, 0x40, 0x40, 0x99, 0xb8, 0x15, 0xde, 0x59, 0x5c, 0x5b, 0xa2, 0x3d, 0x78, 0x90, 0x58, 0x3c, 0xcb, 0x2c, 0x81, 0xd2, 0x72, 0xd4, }; static const unsigned char xdh_wei448_3431_sharedsecret[] = { 0x20, 0xfe, 0x01, 0x00, 0xaf, 0xdd, 0x1f, 0xe9, 0xd3, 0x41, 0x34, 0xfd, 0xcf, 0xd9, 0x59, 0x0a, 0xc1, 0x5e, 0x98, 0x0d, 0xf8, 0x90, 0x05, 0xf4, 0x87, 0xbb, 0xae, 0x45, 0x19, 0x8c, 0x20, 0xc2, 0xea, 0x02, 0x71, 0x01, 0xd5, 0x5d, 0xc3, 0xfe, 0xf7, 0xb6, 0x80, 0x04, 0xb5, 0x12, 0x45, 0xef, 0x62, 0xa3, 0x73, 0xc9, 0xe2, 0x35, 0xc1, 0x06, }; static const wycheproof_xdh_test xdh_wei448_3431 = { .name = "xdh_wei448_3431", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3431_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3431_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3431_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 337 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3432 for XDH, tcId is 338 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3432_peerpubkey[] = { 0xdb, 0xe0, 0xa6, 0xb7, 0xd0, 0x7a, 0x46, 0x1a, 0x90, 0xf3, 0xcb, 0x09, 0xed, 0xa8, 0x44, 0xe2, 0x41, 0xf2, 0x15, 0x3a, 0x9c, 0x34, 0xe3, 0xa9, 0x00, 0xcc, 0xbd, 0xd5, 0xcb, 0x73, 0xd0, 0x88, 0x98, 0xdb, 0x2c, 0x5e, 0xb4, 0x3f, 0x81, 0xd1, 0x54, 0xb9, 0xb2, 0xba, 0x95, 0x40, 0xa5, 0xf6, 0x65, 0xde, 0x20, 0x4f, 0x28, 0xb9, 0xf4, 0x98, }; static const unsigned char xdh_wei448_3432_privkey[] = { 0x64, 0x85, 0x25, 0x2a, 0xeb, 0x24, 0x4c, 0x87, 0x22, 0xae, 0xeb, 0x74, 0x77, 0xe2, 0xc6, 0xa6, 0xab, 0x33, 0x87, 0x63, 0xb7, 0xa3, 0x05, 0x7a, 0xee, 0x86, 0x7b, 0x4b, 0x2d, 0x6d, 0xa2, 0xc3, 0x34, 0xf6, 0x28, 0x93, 0x69, 0x30, 0x48, 0x9c, 0x77, 0xd5, 0xa5, 0xf7, 0xf4, 0x62, 0xf9, 0x36, 0x3b, 0x9c, 0xfc, 0x9e, 0x31, 0x40, 0x9a, 0xdf, }; static const unsigned char xdh_wei448_3432_sharedsecret[] = { 0xb2, 0x50, 0xf4, 0x32, 0xd3, 0xd2, 0xd6, 0x6c, 0xd1, 0x75, 0xaa, 0x7d, 0xbe, 0x0b, 0x3a, 0x97, 0xf7, 0x45, 0x39, 0xb1, 0x82, 0x03, 0x0b, 0xd0, 0xd1, 0x4d, 0xa5, 0x47, 0xc2, 0xb7, 0xd6, 0x30, 0x97, 0xb3, 0x01, 0x2a, 0xfe, 0x41, 0x45, 0x25, 0x81, 0xa9, 0x8e, 0x17, 0x85, 0xe1, 0x1a, 0xc1, 0x07, 0xdc, 0x97, 0x85, 0x4b, 0x16, 0xdd, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_3432 = { .name = "xdh_wei448_3432", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3432_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3432_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3432_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 338 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3433 for XDH, tcId is 339 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3433_peerpubkey[] = { 0xd4, 0x92, 0x85, 0x11, 0x28, 0x15, 0x6c, 0xd6, 0x75, 0xb4, 0xa4, 0x0d, 0x6d, 0x69, 0x2e, 0xd5, 0x9f, 0x81, 0x53, 0xb8, 0x12, 0x70, 0x29, 0xcd, 0xf2, 0x4a, 0x09, 0x0a, 0x3f, 0x19, 0xee, 0x29, 0xcd, 0x8e, 0xf7, 0x2e, 0xbd, 0x50, 0xa2, 0x13, 0x93, 0x4e, 0xba, 0x5e, 0x02, 0x3a, 0x28, 0x93, 0xae, 0x34, 0x23, 0x38, 0x79, 0xb4, 0x69, 0xa2, }; static const unsigned char xdh_wei448_3433_privkey[] = { 0xe4, 0x81, 0x8a, 0x88, 0xbc, 0x9c, 0x3e, 0xd2, 0x5b, 0xa5, 0x2f, 0x10, 0x60, 0x5c, 0x9e, 0x4c, 0x75, 0x44, 0x70, 0x52, 0x8f, 0x56, 0xc9, 0xe0, 0x2b, 0x03, 0xd3, 0x6e, 0x0c, 0xa9, 0x45, 0x74, 0xd3, 0x3d, 0x71, 0x7b, 0x3b, 0x14, 0x15, 0x54, 0x4d, 0xa3, 0x1e, 0xed, 0xe1, 0x25, 0x4e, 0x8e, 0xee, 0xcf, 0x92, 0x9c, 0x4f, 0x1a, 0x96, 0xcf, }; static const unsigned char xdh_wei448_3433_sharedsecret[] = { 0x4f, 0x4b, 0x68, 0x0d, 0x42, 0x5b, 0xf9, 0xca, 0x41, 0xf9, 0xde, 0x0a, 0xcd, 0x0f, 0xac, 0x23, 0x26, 0x57, 0xec, 0xa4, 0xf2, 0x90, 0x55, 0x38, 0x6b, 0xe8, 0xc4, 0x1e, 0x92, 0xe0, 0xb8, 0x95, 0x28, 0xde, 0x17, 0xd3, 0x4a, 0xef, 0x44, 0x28, 0xd3, 0x11, 0x6f, 0xf7, 0x6b, 0xb5, 0xab, 0x0f, 0x4a, 0x28, 0xfc, 0x0e, 0x63, 0xdb, 0xb8, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3433 = { .name = "xdh_wei448_3433", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3433_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3433_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3433_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 339 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3434 for XDH, tcId is 340 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3434_peerpubkey[] = { 0x9d, 0x74, 0xeb, 0x1e, 0x65, 0xb4, 0x98, 0x59, 0xff, 0xaa, 0x71, 0x1c, 0xa3, 0x35, 0x59, 0x4f, 0x5e, 0x86, 0xda, 0x02, 0x3e, 0x2a, 0x3f, 0x8b, 0x7f, 0x92, 0x93, 0x88, 0x37, 0x5f, 0x61, 0xb4, 0x05, 0xa0, 0xa8, 0x79, 0xfc, 0x05, 0xa1, 0x87, 0xf1, 0x3c, 0xb2, 0x99, 0xed, 0xa9, 0xa8, 0x0d, 0x14, 0x4d, 0xd2, 0x88, 0x59, 0xe0, 0x9d, 0x25, }; static const unsigned char xdh_wei448_3434_privkey[] = { 0xbc, 0xd5, 0x1b, 0x5d, 0x0b, 0xda, 0xc7, 0xbe, 0x40, 0x7c, 0xa2, 0x0f, 0x96, 0x34, 0x8e, 0x7e, 0xc7, 0xb5, 0x06, 0xe3, 0x71, 0x99, 0x40, 0xdf, 0x32, 0x10, 0x37, 0x73, 0x0b, 0x32, 0x3b, 0xa2, 0x31, 0x65, 0x35, 0xd4, 0x0a, 0xd2, 0xc2, 0x06, 0x3c, 0xfa, 0x00, 0x91, 0x0d, 0x14, 0x3c, 0x80, 0x5a, 0xd4, 0x0f, 0x9f, 0x6a, 0xcd, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_3434_sharedsecret[] = { 0xd3, 0xd6, 0x94, 0xe1, 0x19, 0xae, 0x51, 0xe4, 0x76, 0xf4, 0x1a, 0x09, 0xf7, 0x17, 0xd3, 0xcd, 0xb1, 0x40, 0x3c, 0xc2, 0x3a, 0x5c, 0x09, 0x0e, 0x20, 0x86, 0x83, 0x9b, 0x47, 0xba, 0x61, 0xe8, 0x35, 0x69, 0x8d, 0xdd, 0xbd, 0xd4, 0xbb, 0x0e, 0x24, 0x58, 0x03, 0x0a, 0x84, 0xd7, 0x00, 0x66, 0xd8, 0x52, 0xa1, 0x04, 0x99, 0x11, 0xf0, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3434 = { .name = "xdh_wei448_3434", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3434_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3434_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3434_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 340 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3435 for XDH, tcId is 341 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3435_peerpubkey[] = { 0x9e, 0x56, 0x61, 0xc3, 0x63, 0xc4, 0x50, 0x84, 0x27, 0x51, 0xf7, 0x48, 0x0c, 0x92, 0x15, 0xeb, 0x4a, 0x17, 0xdc, 0x97, 0xfe, 0xec, 0x90, 0xb8, 0x22, 0x86, 0xcd, 0x30, 0x38, 0x57, 0x72, 0x90, 0x3b, 0x0c, 0x23, 0xa8, 0x70, 0xff, 0xe5, 0xd8, 0x92, 0xa3, 0xef, 0xba, 0x21, 0x4c, 0xc8, 0x38, 0x5f, 0xf5, 0x95, 0x15, 0x88, 0x90, 0xdf, 0x31, }; static const unsigned char xdh_wei448_3435_privkey[] = { 0x14, 0x61, 0x8b, 0x40, 0xe7, 0xf8, 0x5c, 0x20, 0x61, 0xcf, 0xd1, 0xb3, 0x21, 0xb9, 0x63, 0xfe, 0x0e, 0x8a, 0x54, 0x93, 0xc6, 0x72, 0xfd, 0x2f, 0xa6, 0xa6, 0xd1, 0x0c, 0x2c, 0xec, 0x76, 0xac, 0x8c, 0xbb, 0x06, 0x27, 0x4c, 0xf3, 0x05, 0x8b, 0xe3, 0xac, 0x51, 0xc9, 0x63, 0x39, 0xff, 0x97, 0x20, 0x45, 0x74, 0x56, 0x4d, 0x17, 0x1f, 0xc7, }; static const unsigned char xdh_wei448_3435_sharedsecret[] = { 0x67, 0xc5, 0x4f, 0xb6, 0x77, 0xcc, 0x4c, 0x02, 0xc3, 0x24, 0xe1, 0xd7, 0xf0, 0xae, 0x06, 0x8a, 0x25, 0x55, 0xd1, 0x53, 0xd7, 0x05, 0x17, 0xbc, 0x1a, 0xb9, 0x03, 0x1d, 0x45, 0xa4, 0xa4, 0x41, 0x5b, 0xe0, 0xce, 0xbb, 0x35, 0x76, 0x56, 0xb9, 0x7c, 0xf5, 0xb5, 0x17, 0x6b, 0x3a, 0xea, 0x61, 0xac, 0x4d, 0xb8, 0x2d, 0xf3, 0x24, 0x11, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_3435 = { .name = "xdh_wei448_3435", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3435_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3435_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3435_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 341 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3436 for XDH, tcId is 342 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3436_peerpubkey[] = { 0xd0, 0xd2, 0x16, 0xc1, 0x49, 0xe7, 0xe5, 0x36, 0xaa, 0x68, 0x99, 0xb9, 0x8d, 0x5b, 0x04, 0xf3, 0xea, 0xe7, 0x3a, 0x38, 0xff, 0xe0, 0xc6, 0x2d, 0x90, 0x80, 0xfc, 0x6d, 0x63, 0xdd, 0xac, 0xcd, 0x3a, 0x9b, 0xf5, 0xf5, 0x4c, 0x5c, 0xe5, 0x8d, 0x96, 0x11, 0x96, 0xc5, 0xdf, 0x28, 0xbd, 0x3b, 0x7e, 0x39, 0x98, 0xb8, 0x52, 0xe3, 0x5d, 0x89, }; static const unsigned char xdh_wei448_3436_privkey[] = { 0x80, 0x74, 0x7b, 0xd0, 0xed, 0x71, 0xf6, 0x7e, 0xbc, 0xbc, 0x6c, 0x91, 0x53, 0x6c, 0x09, 0xce, 0x12, 0x4b, 0xf5, 0x4c, 0xbd, 0x89, 0x83, 0xab, 0x5f, 0xec, 0xdd, 0xba, 0xc6, 0x58, 0x23, 0x9c, 0xfb, 0x51, 0x5c, 0xd8, 0x17, 0xd3, 0xe8, 0x20, 0x8f, 0x6d, 0x0b, 0x68, 0x76, 0xb2, 0x7c, 0x31, 0x8a, 0xf8, 0xcd, 0x0d, 0xd1, 0xe5, 0x21, 0xc2, }; static const unsigned char xdh_wei448_3436_sharedsecret[] = { 0xc3, 0x9e, 0xcd, 0x28, 0x5b, 0x58, 0x41, 0xef, 0x62, 0x62, 0x0d, 0xb8, 0xfe, 0x8e, 0x76, 0x9b, 0x19, 0x5a, 0x04, 0xe7, 0xd0, 0xe8, 0x28, 0xee, 0x19, 0x09, 0x68, 0xca, 0x96, 0x7d, 0x49, 0x5d, 0x85, 0xfe, 0xf5, 0xd5, 0x20, 0x21, 0xaf, 0x32, 0x15, 0xb3, 0xb9, 0xf4, 0x65, 0x04, 0xc7, 0xeb, 0xdb, 0x14, 0x57, 0xb4, 0xcf, 0xe5, 0xab, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3436 = { .name = "xdh_wei448_3436", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3436_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3436_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3436_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 342 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3437 for XDH, tcId is 343 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3437_peerpubkey[] = { 0xc7, 0xc1, 0x42, 0xb6, 0x8d, 0x6d, 0xfa, 0xde, 0x01, 0x8c, 0xf3, 0xf1, 0xd4, 0x12, 0xb8, 0x29, 0xf2, 0x20, 0x95, 0x11, 0x95, 0x30, 0x02, 0x0c, 0x2f, 0x22, 0x3e, 0x59, 0x9e, 0xc4, 0x2c, 0x42, 0x87, 0x5f, 0xd7, 0xad, 0xd6, 0x65, 0x30, 0xd0, 0xf9, 0x07, 0x2d, 0xb2, 0x66, 0xa3, 0x9f, 0x98, 0x8e, 0x57, 0xd9, 0x9f, 0xf1, 0xc3, 0xc5, 0x90, }; static const unsigned char xdh_wei448_3437_privkey[] = { 0x5c, 0x77, 0x5f, 0xe0, 0x85, 0x8a, 0x81, 0x26, 0xc8, 0xd3, 0xc4, 0x6c, 0x91, 0x75, 0xeb, 0x89, 0x4b, 0x44, 0xb6, 0x09, 0x83, 0xbf, 0x1a, 0xaa, 0xa9, 0x96, 0x41, 0x01, 0x11, 0x7b, 0xd0, 0x16, 0xb2, 0x80, 0x93, 0x9f, 0xe0, 0xc2, 0xfd, 0x12, 0x9b, 0xa3, 0xc1, 0x1f, 0x42, 0xf1, 0xc1, 0x83, 0x00, 0x33, 0xbc, 0x0f, 0xa9, 0x13, 0xd8, 0xd8, }; static const unsigned char xdh_wei448_3437_sharedsecret[] = { 0xd0, 0xd7, 0x97, 0x99, 0x44, 0xc4, 0xde, 0xfa, 0xae, 0x9f, 0x61, 0x72, 0xbb, 0xd1, 0xce, 0x11, 0x5e, 0x71, 0x0f, 0x12, 0x20, 0xb8, 0xc8, 0x86, 0xf6, 0x44, 0x77, 0x18, 0x48, 0x64, 0xd2, 0x04, 0xdf, 0x9d, 0x45, 0x19, 0x2b, 0x23, 0xa9, 0xb3, 0x8d, 0x9f, 0x6f, 0x2e, 0x1b, 0x4f, 0x4c, 0x03, 0xe0, 0xd2, 0xed, 0x0e, 0x44, 0x19, 0x6b, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3437 = { .name = "xdh_wei448_3437", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3437_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3437_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3437_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 343 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3438 for XDH, tcId is 344 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3438_peerpubkey[] = { 0x25, 0xb1, 0x83, 0x73, 0xed, 0x30, 0xd6, 0x26, 0x30, 0xb9, 0x1a, 0xf8, 0x6a, 0xc2, 0xd4, 0xe7, 0x5a, 0xab, 0x36, 0x6d, 0xa6, 0xd5, 0x72, 0x4d, 0xe3, 0x34, 0xea, 0x40, 0xac, 0x39, 0xe3, 0x25, 0x00, 0xa1, 0xc0, 0x5e, 0x1c, 0x9d, 0x00, 0x48, 0x7d, 0x27, 0x2a, 0x0f, 0x21, 0xaf, 0x81, 0x8b, 0x02, 0xbf, 0x63, 0x48, 0xd7, 0x03, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_3438_privkey[] = { 0xd8, 0x1c, 0xd9, 0x48, 0xda, 0x26, 0x3b, 0xc3, 0xad, 0x80, 0xcd, 0xac, 0x6b, 0x7b, 0x5f, 0xde, 0xd4, 0x13, 0x13, 0xcf, 0x09, 0x21, 0x69, 0x2f, 0x7c, 0xa7, 0xc2, 0xd4, 0x8c, 0x22, 0x5c, 0x60, 0x56, 0x27, 0xbc, 0xc6, 0x1b, 0xc5, 0xa2, 0x80, 0xdb, 0x23, 0x65, 0xef, 0xc1, 0x1c, 0xb2, 0x86, 0xd2, 0x86, 0xbd, 0x8e, 0xbd, 0x36, 0xcf, 0xd4, }; static const unsigned char xdh_wei448_3438_sharedsecret[] = { 0x84, 0xbb, 0xf9, 0x15, 0x3d, 0xb2, 0xb5, 0x2c, 0x78, 0x0a, 0x2f, 0x1b, 0x27, 0x97, 0xb9, 0x89, 0x88, 0xbf, 0x45, 0xe1, 0x17, 0xd7, 0x5e, 0x07, 0x2d, 0x98, 0xd1, 0xb0, 0xa4, 0xf9, 0xc4, 0x68, 0x63, 0xda, 0xca, 0x2f, 0x98, 0x02, 0x43, 0x95, 0x59, 0x5a, 0x99, 0x60, 0x4e, 0xc9, 0x6d, 0xfe, 0x38, 0x45, 0x25, 0x4d, 0xcc, 0x4f, 0x4b, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_3438 = { .name = "xdh_wei448_3438", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3438_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3438_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3438_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 344 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3439 for XDH, tcId is 345 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3439_peerpubkey[] = { 0xc2, 0xbc, 0x7a, 0xa4, 0xb3, 0xb3, 0xce, 0x53, 0x15, 0x35, 0x1a, 0x89, 0xf8, 0xc0, 0x43, 0x26, 0x60, 0x69, 0xeb, 0x19, 0x8e, 0x72, 0x4e, 0xc5, 0xa0, 0x3d, 0xdd, 0x10, 0xaa, 0x5e, 0x20, 0x6f, 0x39, 0xa4, 0x06, 0x0d, 0x5e, 0x1b, 0x7b, 0xdb, 0x1a, 0xe0, 0x42, 0xf7, 0x4d, 0xf4, 0x37, 0x66, 0x45, 0x02, 0xe2, 0x8e, 0x72, 0x48, 0x33, 0xb7, }; static const unsigned char xdh_wei448_3439_privkey[] = { 0x60, 0x5b, 0x9a, 0x97, 0x97, 0xda, 0xd5, 0x39, 0x0f, 0x24, 0x0c, 0xbc, 0x43, 0xdb, 0x3e, 0xb8, 0xe0, 0x3d, 0x93, 0xe0, 0x91, 0x0c, 0xe6, 0x1a, 0x39, 0xd9, 0x84, 0x7e, 0x47, 0xa6, 0x5c, 0x82, 0x0e, 0x04, 0x7b, 0xc0, 0x48, 0x44, 0x8a, 0x7e, 0xbc, 0x70, 0x4b, 0xdd, 0x21, 0x57, 0x55, 0x50, 0xcb, 0x0f, 0xa6, 0x95, 0x80, 0x90, 0x27, 0xdf, }; static const unsigned char xdh_wei448_3439_sharedsecret[] = { 0x09, 0x52, 0xc6, 0x07, 0x03, 0x9f, 0xc7, 0xbc, 0x65, 0x23, 0xf6, 0x68, 0x26, 0x3d, 0xd7, 0xbf, 0xc4, 0xc7, 0x3c, 0x39, 0x31, 0x91, 0x62, 0x2c, 0x6e, 0x07, 0xf6, 0x88, 0x59, 0x4a, 0xd3, 0xd6, 0x22, 0xc9, 0x9f, 0x0f, 0xe8, 0xdb, 0x4f, 0x8c, 0x57, 0xfc, 0x91, 0xac, 0x6f, 0x87, 0xfe, 0x81, 0x00, 0x32, 0xb3, 0x74, 0x4d, 0xaf, 0xf3, 0x54, }; static const wycheproof_xdh_test xdh_wei448_3439 = { .name = "xdh_wei448_3439", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3439_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3439_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3439_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 345 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3440 for XDH, tcId is 346 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3440_peerpubkey[] = { 0xbd, 0x38, 0xf4, 0xa0, 0xa8, 0x28, 0x6a, 0xaa, 0xd5, 0xe7, 0x14, 0x73, 0xde, 0x5e, 0xb8, 0x06, 0x9f, 0x2e, 0xe0, 0x09, 0xc0, 0xc2, 0x42, 0xf1, 0x6f, 0x64, 0xe1, 0x9b, 0x5b, 0x4b, 0x89, 0x3a, 0x2b, 0x65, 0x98, 0x66, 0x1d, 0x05, 0xd8, 0xe0, 0x9e, 0x6c, 0xcb, 0x1c, 0x6a, 0x3a, 0x42, 0xed, 0xd2, 0x21, 0xd6, 0xae, 0x48, 0xaa, 0xc7, 0xbb, }; static const unsigned char xdh_wei448_3440_privkey[] = { 0x54, 0x61, 0x3c, 0x11, 0x58, 0x96, 0x49, 0x9e, 0xdc, 0xa8, 0xf9, 0xe7, 0x8d, 0xd6, 0x41, 0x14, 0x1e, 0x7e, 0xa4, 0x60, 0x96, 0x72, 0xd6, 0x6f, 0x43, 0x63, 0xdd, 0x49, 0x13, 0xbc, 0x6c, 0x84, 0x4f, 0x2d, 0x2c, 0xdf, 0x8b, 0xe8, 0xfd, 0xed, 0xf4, 0x58, 0xef, 0x5c, 0x4d, 0xc2, 0x80, 0x80, 0xee, 0xb3, 0xa5, 0xff, 0x52, 0x71, 0x84, 0xd2, }; static const unsigned char xdh_wei448_3440_sharedsecret[] = { 0x1d, 0xa0, 0x29, 0x3b, 0xdc, 0x16, 0xeb, 0xcc, 0x75, 0x69, 0x0e, 0x07, 0xbc, 0x71, 0x17, 0xa8, 0x00, 0x4e, 0xd4, 0xde, 0x12, 0x24, 0x33, 0x26, 0x81, 0x67, 0x5c, 0x4a, 0x1b, 0x90, 0x1e, 0x55, 0x6e, 0x14, 0xf2, 0xfd, 0xd9, 0xfe, 0x97, 0xe1, 0xfe, 0x66, 0x58, 0x39, 0x1b, 0x8f, 0x76, 0x28, 0xbb, 0x72, 0xce, 0x89, 0x3b, 0xce, 0x74, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3440 = { .name = "xdh_wei448_3440", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3440_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3440_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3440_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 346 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3441 for XDH, tcId is 347 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3441_peerpubkey[] = { 0x91, 0xa2, 0x00, 0x3c, 0x42, 0xb6, 0x96, 0x62, 0x0c, 0xc1, 0x51, 0x49, 0xe4, 0x1c, 0xca, 0x55, 0xc9, 0x38, 0xa0, 0x8f, 0x01, 0xa8, 0x89, 0xec, 0xb5, 0xf7, 0xd8, 0xbf, 0xdb, 0xc2, 0x4e, 0x11, 0x07, 0x7c, 0xa9, 0x13, 0x55, 0x78, 0x4f, 0x61, 0xf6, 0x53, 0x47, 0x1a, 0x29, 0xd0, 0xe4, 0x22, 0x33, 0xd4, 0x23, 0x0c, 0x7a, 0xf7, 0x23, 0xc0, }; static const unsigned char xdh_wei448_3441_privkey[] = { 0x24, 0x76, 0x40, 0x94, 0xde, 0xa4, 0x3e, 0x4c, 0x16, 0x7c, 0xdd, 0x8d, 0x22, 0xa4, 0x63, 0x40, 0x4b, 0xbc, 0xbe, 0x84, 0x94, 0x6c, 0x09, 0x6f, 0xa2, 0x87, 0xa4, 0x5b, 0x72, 0xd0, 0x21, 0x92, 0xe6, 0x4a, 0x48, 0x2c, 0x0c, 0x81, 0xaf, 0x60, 0x6e, 0xbf, 0xab, 0x93, 0x83, 0x7d, 0x79, 0xbd, 0xba, 0xe0, 0x59, 0x2e, 0xff, 0x04, 0xdb, 0xd6, }; static const unsigned char xdh_wei448_3441_sharedsecret[] = { 0x7f, 0x06, 0x14, 0x3a, 0x73, 0x85, 0xae, 0xc3, 0xe3, 0x4c, 0xf6, 0xe9, 0x3c, 0x8e, 0x56, 0x81, 0x2e, 0xb7, 0xb5, 0x33, 0xa1, 0x3f, 0x3f, 0xdf, 0xc6, 0x52, 0x82, 0xab, 0x7e, 0xa3, 0x66, 0x89, 0x27, 0x17, 0x67, 0x74, 0xf7, 0x1c, 0x53, 0x34, 0x7d, 0x83, 0xeb, 0x87, 0x2c, 0xcb, 0xfd, 0xef, 0x3b, 0xbd, 0x53, 0xc0, 0xd0, 0xe7, 0xa2, 0x52, }; static const wycheproof_xdh_test xdh_wei448_3441 = { .name = "xdh_wei448_3441", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3441_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3441_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3441_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 347 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3442 for XDH, tcId is 348 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3442_peerpubkey[] = { 0xcb, 0x65, 0xba, 0xe2, 0x10, 0x1d, 0x1c, 0x64, 0xec, 0xdb, 0x33, 0x8a, 0xa9, 0xa9, 0x56, 0xfe, 0xb8, 0x77, 0x36, 0xb2, 0x82, 0xd0, 0x68, 0x1e, 0x63, 0x4f, 0xab, 0x7b, 0x64, 0x6f, 0x0e, 0x2d, 0xf8, 0x14, 0xec, 0x87, 0xd4, 0x25, 0xd7, 0x75, 0x11, 0xfa, 0x6a, 0xc0, 0x53, 0x23, 0x3a, 0x68, 0xfe, 0x26, 0x0e, 0x3b, 0x32, 0x3c, 0xf5, 0xc1, }; static const unsigned char xdh_wei448_3442_privkey[] = { 0x2c, 0xb5, 0xab, 0xe1, 0x12, 0x50, 0xb3, 0x26, 0x6e, 0xa5, 0x93, 0x9f, 0x24, 0xe1, 0xe6, 0xdc, 0xaa, 0x00, 0x59, 0xed, 0x53, 0xda, 0x62, 0xdb, 0xe0, 0x5e, 0x50, 0x6a, 0x51, 0x32, 0x91, 0xf9, 0x1f, 0xd5, 0xee, 0x83, 0x87, 0x66, 0x01, 0x1c, 0x97, 0xf6, 0x2f, 0x4f, 0xb7, 0xcb, 0x54, 0x75, 0xd5, 0x7b, 0x39, 0xcd, 0x5b, 0xe7, 0xd7, 0xdf, }; static const unsigned char xdh_wei448_3442_sharedsecret[] = { 0x4b, 0x7d, 0xf7, 0x24, 0x24, 0x02, 0x89, 0x0d, 0x13, 0xa2, 0x3a, 0x17, 0x58, 0x39, 0x1b, 0xdf, 0x6c, 0x5c, 0xea, 0xb3, 0xad, 0xc7, 0x69, 0xcb, 0xfc, 0xea, 0x5d, 0xf6, 0x6b, 0xb7, 0x6a, 0x8b, 0xbe, 0xfe, 0x76, 0xb0, 0x6e, 0x51, 0x47, 0x48, 0x70, 0x01, 0xa5, 0x66, 0x54, 0x93, 0x35, 0xb3, 0xea, 0x55, 0x67, 0xad, 0x90, 0x4a, 0x46, 0x3f, }; static const wycheproof_xdh_test xdh_wei448_3442 = { .name = "xdh_wei448_3442", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3442_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3442_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3442_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 348 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3443 for XDH, tcId is 349 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3443_peerpubkey[] = { 0x8f, 0xdf, 0xe2, 0x0f, 0xe3, 0xeb, 0x12, 0x9d, 0xb8, 0x43, 0xa6, 0xf3, 0x1c, 0x22, 0x05, 0x93, 0x48, 0x45, 0xd4, 0xc3, 0xac, 0xcd, 0xfa, 0x9c, 0xbc, 0x0e, 0x25, 0x08, 0xaf, 0x9c, 0x5d, 0x98, 0x9c, 0xd4, 0xba, 0xd5, 0xd3, 0xe1, 0xe0, 0x4b, 0x65, 0xcb, 0xb5, 0x8e, 0x3c, 0xfa, 0x76, 0x6f, 0xb1, 0xa6, 0x1e, 0xc8, 0x1b, 0x53, 0xbc, 0x33, }; static const unsigned char xdh_wei448_3443_privkey[] = { 0x9c, 0x1a, 0xbe, 0xd8, 0xef, 0xb6, 0x02, 0xeb, 0xa9, 0xb7, 0x40, 0xe4, 0xa4, 0xe0, 0x01, 0x7d, 0x15, 0x8f, 0xfe, 0x89, 0x98, 0x7c, 0x64, 0x2d, 0x49, 0x03, 0x70, 0xb5, 0x22, 0x95, 0x9c, 0x1c, 0x96, 0x16, 0x87, 0x97, 0x35, 0x6f, 0xbb, 0x93, 0x50, 0x84, 0x92, 0x8b, 0xe5, 0x3a, 0xd5, 0x35, 0x7f, 0x6e, 0x5b, 0x78, 0x3b, 0xd9, 0xdc, 0xc6, }; static const unsigned char xdh_wei448_3443_sharedsecret[] = { 0x9a, 0x69, 0x04, 0x6c, 0x39, 0xa6, 0x18, 0x92, 0xa6, 0xb2, 0x4f, 0xac, 0xfd, 0xb0, 0x0e, 0x65, 0x9f, 0x6d, 0xb7, 0x9c, 0x06, 0x62, 0xa0, 0xbc, 0xba, 0x9c, 0x73, 0x4e, 0x7f, 0x75, 0x16, 0x0c, 0x54, 0xbc, 0x17, 0xa9, 0xc6, 0x4d, 0xa2, 0xc0, 0x3f, 0x9f, 0xe0, 0xba, 0x33, 0x4e, 0xb7, 0x5e, 0x16, 0x8b, 0xc2, 0x98, 0x06, 0xfc, 0xec, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3443 = { .name = "xdh_wei448_3443", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3443_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3443_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3443_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 349 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3444 for XDH, tcId is 350 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3444_peerpubkey[] = { 0x2f, 0x8e, 0x43, 0x95, 0x99, 0x78, 0x64, 0x54, 0x31, 0xe3, 0xc0, 0x85, 0x5c, 0xeb, 0xba, 0x34, 0xcb, 0x5e, 0xd2, 0x3c, 0x5d, 0xe8, 0x72, 0xb4, 0xb2, 0x45, 0x10, 0xad, 0x3c, 0x65, 0xa3, 0x26, 0xef, 0xfd, 0xdf, 0xbc, 0x68, 0x5c, 0xb6, 0x1e, 0x60, 0xc1, 0xa3, 0xd5, 0x9d, 0x60, 0xa3, 0xb1, 0x17, 0x5e, 0x68, 0x22, 0x80, 0x8e, 0x9f, 0x64, }; static const unsigned char xdh_wei448_3444_privkey[] = { 0x7c, 0x1d, 0x55, 0x71, 0xe6, 0x3c, 0xae, 0xa8, 0x31, 0xeb, 0x48, 0x27, 0xc4, 0xfc, 0x7a, 0x05, 0xa5, 0x76, 0xec, 0xb6, 0x62, 0xb0, 0x90, 0x50, 0xe7, 0x19, 0xe4, 0xfd, 0x7d, 0x1b, 0xd5, 0xaf, 0x78, 0x21, 0xa7, 0x22, 0x4d, 0x39, 0x05, 0x37, 0xa4, 0xf3, 0x23, 0x0c, 0x96, 0xf1, 0x68, 0x1b, 0x3c, 0xd5, 0x01, 0x96, 0xe9, 0xa3, 0x10, 0xdd, }; static const unsigned char xdh_wei448_3444_sharedsecret[] = { 0xfb, 0x28, 0x86, 0x3a, 0x88, 0x1b, 0x90, 0x89, 0x70, 0x32, 0x29, 0xac, 0xc8, 0x0e, 0x3f, 0x1e, 0x65, 0x00, 0xd6, 0x53, 0x10, 0xad, 0x80, 0x17, 0x90, 0xbc, 0x90, 0x7f, 0xf3, 0xa9, 0xbb, 0x33, 0xd0, 0x08, 0x96, 0x81, 0x22, 0xfb, 0x9e, 0x5b, 0xbe, 0x2a, 0x0a, 0xe5, 0x57, 0xee, 0x99, 0x5b, 0xa8, 0x23, 0x2c, 0x36, 0xf7, 0xe0, 0x47, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3444 = { .name = "xdh_wei448_3444", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3444_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3444_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3444_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 350 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3445 for XDH, tcId is 351 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3445_peerpubkey[] = { 0xd9, 0x7d, 0xd1, 0x83, 0xea, 0xe8, 0x1d, 0xd3, 0x4d, 0xa6, 0xd8, 0xb6, 0x6c, 0x91, 0x80, 0xa6, 0x0b, 0x2e, 0x26, 0x11, 0x2d, 0xaf, 0xdf, 0xe5, 0x6a, 0x80, 0x22, 0xc8, 0x72, 0xef, 0xe6, 0xd1, 0xc5, 0xd1, 0xb3, 0x57, 0x2c, 0x82, 0x4c, 0x69, 0xbb, 0x66, 0xd1, 0xd9, 0x1c, 0xca, 0x5e, 0x69, 0xf9, 0xdf, 0x20, 0xb4, 0xaf, 0x32, 0x6c, 0x7c, }; static const unsigned char xdh_wei448_3445_privkey[] = { 0xb0, 0xce, 0x11, 0x67, 0xca, 0x6d, 0x3d, 0xe6, 0xa5, 0x13, 0x8e, 0x60, 0x57, 0xb0, 0x8a, 0xf1, 0x01, 0x35, 0xc7, 0xe4, 0x12, 0xf4, 0x48, 0x8a, 0xb1, 0x02, 0x3b, 0xef, 0xc9, 0xf6, 0x7f, 0x12, 0x36, 0x5c, 0x30, 0x2f, 0xfe, 0x80, 0x4d, 0x5a, 0x25, 0xd0, 0x34, 0x65, 0xe0, 0x27, 0x28, 0xca, 0x06, 0xab, 0xad, 0x3e, 0x78, 0x5f, 0x69, 0xcf, }; static const unsigned char xdh_wei448_3445_sharedsecret[] = { 0xfc, 0x9f, 0xe0, 0x0b, 0x58, 0xda, 0xfa, 0x32, 0x1a, 0xe0, 0x55, 0x82, 0xde, 0x2e, 0xe2, 0x80, 0xd7, 0x11, 0xf2, 0x92, 0x9f, 0x39, 0x31, 0x9f, 0x0f, 0xda, 0x49, 0xd9, 0x97, 0x3d, 0xea, 0x0a, 0x58, 0x03, 0xe5, 0xe0, 0x37, 0x39, 0xb0, 0xd6, 0xe5, 0xe6, 0xcf, 0x4e, 0x46, 0xb1, 0xd9, 0x92, 0x1e, 0x76, 0x37, 0x6d, 0xf0, 0x08, 0x4d, 0xd2, }; static const wycheproof_xdh_test xdh_wei448_3445 = { .name = "xdh_wei448_3445", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3445_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3445_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3445_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 351 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3446 for XDH, tcId is 352 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3446_peerpubkey[] = { 0x7c, 0x35, 0x31, 0x0f, 0xc6, 0x99, 0xa6, 0x56, 0x8a, 0xa5, 0x84, 0xf6, 0xf0, 0xc8, 0x9a, 0xbc, 0x89, 0x43, 0xe6, 0x8e, 0x87, 0x32, 0x3f, 0x62, 0xcd, 0x98, 0xc6, 0xc6, 0xbb, 0x17, 0x33, 0x4b, 0x75, 0xcf, 0x57, 0x81, 0x5f, 0x24, 0xc9, 0x6d, 0x4e, 0xa2, 0x2d, 0x99, 0xdd, 0xbf, 0x61, 0xe0, 0xaa, 0x4b, 0xed, 0x81, 0xc4, 0x13, 0xf6, 0x9e, }; static const unsigned char xdh_wei448_3446_privkey[] = { 0xe4, 0x89, 0x83, 0x95, 0x9f, 0x3b, 0xb8, 0x85, 0xfd, 0x7a, 0x26, 0xe2, 0x10, 0x57, 0x7b, 0xb0, 0x7e, 0xa9, 0xda, 0x7a, 0xf2, 0x95, 0xee, 0x83, 0xaf, 0xfa, 0x64, 0xe0, 0x23, 0x28, 0x47, 0x5b, 0x3f, 0xc9, 0x9d, 0x94, 0xc5, 0x66, 0xb7, 0xcb, 0xc5, 0x82, 0xd8, 0xd9, 0xca, 0x3c, 0xa4, 0x1f, 0xf0, 0xd2, 0xde, 0xc9, 0x14, 0x4e, 0xab, 0xde, }; static const unsigned char xdh_wei448_3446_sharedsecret[] = { 0x21, 0x1a, 0xbd, 0x6c, 0xad, 0x5a, 0x8c, 0x4c, 0xc2, 0x7b, 0xee, 0x02, 0x7c, 0x00, 0x24, 0x74, 0x8f, 0xd1, 0x1d, 0x78, 0x6f, 0x01, 0x67, 0x67, 0xda, 0x72, 0x69, 0x44, 0x95, 0x71, 0xb9, 0x84, 0xd6, 0x1c, 0x50, 0x40, 0x25, 0x1d, 0x1e, 0xd6, 0xe0, 0xed, 0xea, 0x5c, 0x69, 0xaf, 0xf2, 0x35, 0x00, 0x03, 0x7f, 0x65, 0xb2, 0xca, 0x48, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3446 = { .name = "xdh_wei448_3446", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3446_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3446_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3446_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 352 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3447 for XDH, tcId is 353 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3447_peerpubkey[] = { 0xa5, 0xd3, 0xd1, 0x92, 0x60, 0x73, 0x62, 0x9d, 0xab, 0x3a, 0x52, 0xa1, 0x89, 0xc3, 0x56, 0xc1, 0xcb, 0x2f, 0x44, 0x38, 0x92, 0xe0, 0x64, 0xad, 0x42, 0xc9, 0xe6, 0x8a, 0x3b, 0xcf, 0x74, 0x23, 0x3c, 0xb8, 0x93, 0xf3, 0x1d, 0xb0, 0x4b, 0xa7, 0x10, 0x99, 0x83, 0x63, 0x10, 0x71, 0xf4, 0x0b, 0xdc, 0x15, 0xfe, 0x8f, 0x77, 0xf8, 0x96, 0xc7, }; static const unsigned char xdh_wei448_3447_privkey[] = { 0x28, 0xa4, 0xdf, 0x2a, 0x71, 0x9b, 0x8c, 0xe1, 0x67, 0x1a, 0xb0, 0x7e, 0x9f, 0xcf, 0xd6, 0xcf, 0x2c, 0xf5, 0xca, 0x31, 0x44, 0xdb, 0x0b, 0x19, 0xf3, 0xd8, 0xde, 0x9b, 0x0a, 0x04, 0xe4, 0x31, 0x3f, 0x11, 0x5b, 0x08, 0xaf, 0x09, 0x40, 0x1b, 0x65, 0xac, 0x7d, 0x97, 0x29, 0x4e, 0x69, 0xc5, 0xf7, 0x71, 0xe0, 0x02, 0x66, 0x6b, 0xf7, 0xcf, }; static const unsigned char xdh_wei448_3447_sharedsecret[] = { 0x3f, 0x5b, 0x5c, 0x9d, 0x10, 0x78, 0x08, 0x52, 0x47, 0xcf, 0x12, 0x43, 0x1e, 0xbe, 0x54, 0xb8, 0xaa, 0xbc, 0x6d, 0xfe, 0xd5, 0x72, 0xc8, 0xf6, 0x60, 0xf2, 0x45, 0xe4, 0x5d, 0xeb, 0x65, 0x41, 0x12, 0xd7, 0x69, 0xbc, 0x81, 0xf6, 0x9d, 0x6f, 0xf9, 0xa1, 0x9e, 0x87, 0x9b, 0x41, 0xff, 0x09, 0xd6, 0x88, 0x5b, 0x3d, 0x08, 0x15, 0x50, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_3447 = { .name = "xdh_wei448_3447", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3447_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3447_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3447_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 353 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3448 for XDH, tcId is 354 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3448_peerpubkey[] = { 0x86, 0x79, 0x7e, 0x52, 0x05, 0x9c, 0xe5, 0x3d, 0x0e, 0x81, 0x4b, 0xed, 0xdd, 0x2b, 0xa9, 0xcf, 0x87, 0xa4, 0x7e, 0xb7, 0x36, 0x37, 0x0f, 0x0a, 0xc4, 0x82, 0xcc, 0x29, 0x1d, 0x14, 0x26, 0x49, 0x6e, 0x9a, 0xfc, 0x74, 0x66, 0xc6, 0x54, 0x55, 0x8f, 0xe6, 0x8d, 0x6b, 0x9d, 0xe8, 0xb0, 0x4f, 0x87, 0x5d, 0x4c, 0x0d, 0x9d, 0x22, 0x31, 0xf5, }; static const unsigned char xdh_wei448_3448_privkey[] = { 0xe8, 0xba, 0xd8, 0xe1, 0x9e, 0x83, 0x08, 0x4e, 0x35, 0xfc, 0xc6, 0x9f, 0x29, 0xe7, 0xc7, 0xf4, 0x4c, 0x35, 0x4b, 0x1c, 0x29, 0x92, 0x5c, 0xff, 0xf6, 0x32, 0xf9, 0xcc, 0xaf, 0x7f, 0xf4, 0x9c, 0x91, 0x99, 0xf8, 0x60, 0x80, 0xd6, 0xb8, 0xb3, 0xe3, 0xca, 0x24, 0x13, 0x0f, 0x0d, 0x06, 0xeb, 0x54, 0x10, 0x4f, 0x3c, 0x1a, 0x18, 0x3b, 0xd7, }; static const unsigned char xdh_wei448_3448_sharedsecret[] = { 0x00, 0x3b, 0xab, 0x0e, 0x3c, 0x73, 0x9f, 0x94, 0x2e, 0x62, 0x33, 0xa8, 0xb2, 0xa8, 0xb0, 0xf2, 0x28, 0x9f, 0x1b, 0xb3, 0x7a, 0xad, 0x96, 0x61, 0x94, 0x6c, 0x17, 0x6e, 0x8a, 0xe1, 0x24, 0x71, 0xfc, 0xb4, 0x60, 0xe4, 0x92, 0x1b, 0xdc, 0x3e, 0x5d, 0x9f, 0xbc, 0x89, 0xf6, 0x95, 0x96, 0xf0, 0xa4, 0xd4, 0xdb, 0x1d, 0x17, 0xbf, 0xe1, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3448 = { .name = "xdh_wei448_3448", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3448_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3448_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3448_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 354 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3449 for XDH, tcId is 355 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3449_peerpubkey[] = { 0x1f, 0x24, 0xe0, 0xd9, 0xe5, 0xfb, 0x41, 0xbb, 0x67, 0x25, 0xe8, 0xea, 0x03, 0xd2, 0xee, 0x90, 0xc2, 0x46, 0x59, 0x87, 0x1b, 0x79, 0x59, 0xd1, 0xbf, 0x86, 0x54, 0x54, 0xda, 0xd4, 0xad, 0x5d, 0x8a, 0xcc, 0x26, 0x8f, 0xe2, 0xa6, 0x08, 0x92, 0x53, 0xeb, 0xff, 0x4a, 0xe7, 0xed, 0xfd, 0x91, 0x24, 0xfa, 0x7c, 0xb2, 0xb4, 0xf2, 0xe6, 0xff, }; static const unsigned char xdh_wei448_3449_privkey[] = { 0x04, 0x23, 0x02, 0xe5, 0xdd, 0x31, 0xc8, 0x1d, 0xc9, 0x1e, 0x16, 0xfc, 0x56, 0x48, 0x32, 0x48, 0xb6, 0x46, 0x2c, 0x5f, 0x0b, 0x80, 0x8f, 0x17, 0x8e, 0xac, 0xa1, 0xf4, 0x0d, 0x3c, 0x1f, 0xfc, 0x85, 0x8a, 0xef, 0x5c, 0xab, 0x1d, 0x0b, 0xd6, 0xe6, 0xf1, 0xee, 0xe4, 0x39, 0x44, 0x63, 0xc9, 0xaa, 0xff, 0x80, 0x6f, 0x7a, 0xdf, 0xed, 0xc1, }; static const unsigned char xdh_wei448_3449_sharedsecret[] = { 0xc9, 0x7f, 0xea, 0x9a, 0x53, 0x85, 0xb6, 0xfd, 0x1a, 0x3d, 0xa4, 0xf8, 0x97, 0x28, 0xf6, 0x6c, 0x16, 0x4a, 0xfd, 0xff, 0x17, 0x92, 0x55, 0x99, 0x15, 0x9d, 0x6d, 0x88, 0x44, 0x22, 0x22, 0x4f, 0x2f, 0xd8, 0xb7, 0xc5, 0x06, 0x3e, 0x1f, 0x2b, 0x7f, 0x49, 0x9a, 0x8a, 0x29, 0x10, 0xc8, 0x4e, 0x8e, 0xaf, 0x8a, 0xac, 0xaf, 0xe7, 0xea, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3449 = { .name = "xdh_wei448_3449", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3449_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3449_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3449_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 355 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3450 for XDH, tcId is 356 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3450_peerpubkey[] = { 0xcb, 0x2e, 0x8e, 0xab, 0x9c, 0x36, 0x8b, 0xec, 0x18, 0x2f, 0x88, 0x6d, 0x42, 0x7a, 0xd4, 0xff, 0x4f, 0x3d, 0x31, 0xb5, 0x2c, 0x49, 0x40, 0x39, 0x03, 0x6d, 0xf8, 0x25, 0x00, 0xfe, 0x71, 0xfd, 0xc8, 0x93, 0x46, 0x16, 0x79, 0xc0, 0x7b, 0xdd, 0x91, 0x8b, 0x17, 0x59, 0x66, 0xfa, 0x7c, 0xf9, 0x47, 0xc3, 0xfb, 0x54, 0x35, 0xfb, 0xd5, 0x3e, }; static const unsigned char xdh_wei448_3450_privkey[] = { 0xd4, 0x76, 0x2e, 0x92, 0xed, 0xf6, 0xa3, 0x63, 0xea, 0x9a, 0x49, 0x68, 0xbf, 0x0f, 0x11, 0x9d, 0xa8, 0x8f, 0x43, 0x49, 0x91, 0xe1, 0xc9, 0x6b, 0xe4, 0x96, 0x7e, 0xb9, 0xfe, 0x67, 0x6a, 0x3e, 0x98, 0x1d, 0x35, 0x38, 0xb4, 0x29, 0x69, 0x83, 0x9c, 0xde, 0x50, 0x97, 0xd9, 0x96, 0x4d, 0x19, 0x54, 0xde, 0xe4, 0xc9, 0x5c, 0xcd, 0x95, 0xcd, }; static const unsigned char xdh_wei448_3450_sharedsecret[] = { 0xc0, 0x74, 0x45, 0x2f, 0xf1, 0x0e, 0x18, 0x8b, 0xe0, 0x3b, 0xe2, 0xf6, 0x16, 0x4b, 0xc2, 0x97, 0xa8, 0xe3, 0xde, 0x6d, 0x22, 0xff, 0x4b, 0xa7, 0xbd, 0xfc, 0x90, 0xbd, 0xdb, 0x8a, 0x07, 0x4b, 0xa1, 0x3b, 0x20, 0x53, 0x3c, 0x8d, 0x37, 0xfb, 0x0a, 0x3f, 0x9d, 0x24, 0xa0, 0x76, 0x79, 0xf0, 0x1c, 0x10, 0x75, 0x46, 0xea, 0x92, 0xff, 0x87, }; static const wycheproof_xdh_test xdh_wei448_3450 = { .name = "xdh_wei448_3450", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3450_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3450_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3450_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 356 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3451 for XDH, tcId is 357 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3451_peerpubkey[] = { 0xa3, 0x5d, 0x62, 0x3f, 0x4e, 0xb1, 0x90, 0xd2, 0xf5, 0x18, 0x24, 0xdc, 0x97, 0xf3, 0x59, 0xd9, 0x93, 0x43, 0x40, 0x55, 0xfe, 0x18, 0xa0, 0xaa, 0x1a, 0xb0, 0x07, 0xc6, 0x00, 0x73, 0x59, 0xe1, 0x4b, 0xeb, 0xc8, 0xf6, 0xed, 0x82, 0x1f, 0xea, 0x47, 0x03, 0x53, 0x59, 0xc9, 0x7f, 0xda, 0x79, 0x3a, 0x3d, 0xc6, 0xc9, 0x97, 0x6d, 0xbe, 0x44, }; static const unsigned char xdh_wei448_3451_privkey[] = { 0x34, 0x3d, 0x69, 0xf9, 0xb1, 0x3e, 0x35, 0x7d, 0x71, 0x3b, 0x5c, 0xc8, 0x27, 0x17, 0xa5, 0xa5, 0x7a, 0xd2, 0x52, 0x9b, 0xdd, 0x81, 0xf6, 0x1e, 0xe6, 0x61, 0xcf, 0x27, 0x2e, 0xb2, 0x44, 0x89, 0xe6, 0xe6, 0x2e, 0x78, 0x2c, 0x40, 0xa9, 0x89, 0x1d, 0xe4, 0xd2, 0xa3, 0x93, 0x20, 0xc8, 0x1c, 0xfe, 0x07, 0xdf, 0xf6, 0x55, 0x85, 0xcc, 0xcd, }; static const unsigned char xdh_wei448_3451_sharedsecret[] = { 0x20, 0x32, 0x06, 0xa8, 0x7b, 0x93, 0xc0, 0x6d, 0x59, 0x31, 0xbd, 0xe7, 0x95, 0xa8, 0x0c, 0x9c, 0xa8, 0x7d, 0x25, 0xe4, 0x27, 0x44, 0x24, 0x3f, 0x39, 0x6c, 0xa2, 0x7c, 0x9e, 0x9a, 0x42, 0xce, 0xe7, 0xa7, 0xde, 0xda, 0x39, 0xe8, 0xe0, 0x66, 0x6b, 0xad, 0x66, 0xad, 0xca, 0x8f, 0x80, 0x56, 0x95, 0xa0, 0xff, 0x30, 0x38, 0x71, 0x9f, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3451 = { .name = "xdh_wei448_3451", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3451_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3451_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3451_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 357 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3452 for XDH, tcId is 358 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3452_peerpubkey[] = { 0x3a, 0x1d, 0x28, 0x5d, 0x1a, 0x56, 0xa7, 0xce, 0x8f, 0x29, 0x79, 0x01, 0x78, 0xce, 0x16, 0xd4, 0xd0, 0x93, 0x49, 0xcd, 0x28, 0xe1, 0x0b, 0xd3, 0x45, 0x63, 0x4b, 0x9d, 0x07, 0x15, 0xec, 0x49, 0xf5, 0x1b, 0x00, 0x61, 0xfe, 0x51, 0x48, 0x43, 0x9f, 0x7a, 0x7b, 0x6c, 0x5b, 0x6c, 0x1d, 0x95, 0xde, 0x68, 0x38, 0xeb, 0xdf, 0xc0, 0xc3, 0x46, }; static const unsigned char xdh_wei448_3452_privkey[] = { 0x6c, 0x23, 0xd8, 0xf0, 0xe7, 0x47, 0x51, 0x69, 0xe0, 0xc7, 0xe3, 0xdf, 0xce, 0x80, 0xd1, 0xca, 0xe0, 0x48, 0x9c, 0xae, 0xf1, 0xfd, 0x1a, 0x4f, 0xf9, 0x00, 0xa1, 0x08, 0xea, 0x15, 0x41, 0xf9, 0xee, 0x72, 0x32, 0xdb, 0xe3, 0x60, 0x5a, 0x68, 0x3c, 0x78, 0x3a, 0x6a, 0xab, 0xbe, 0x8e, 0xda, 0xf9, 0x33, 0x03, 0x8f, 0xb2, 0xf1, 0x4a, 0xdf, }; static const unsigned char xdh_wei448_3452_sharedsecret[] = { 0x1e, 0xff, 0x19, 0x50, 0xbb, 0xcc, 0x94, 0x32, 0x2f, 0x02, 0xdd, 0x46, 0x39, 0x06, 0xc0, 0x9a, 0xe6, 0xd3, 0xd7, 0x51, 0x7c, 0x82, 0x58, 0xf0, 0xc6, 0x4b, 0x10, 0xc2, 0xa0, 0x25, 0xa1, 0x7d, 0x83, 0x05, 0xe5, 0x1f, 0x8e, 0x38, 0x64, 0x75, 0xd9, 0x4b, 0x17, 0x48, 0x46, 0x51, 0xf3, 0xa5, 0x2c, 0xa7, 0xef, 0x3f, 0x44, 0x0b, 0xbb, 0xfb, }; static const wycheproof_xdh_test xdh_wei448_3452 = { .name = "xdh_wei448_3452", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3452_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3452_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3452_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 358 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3453 for XDH, tcId is 359 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3453_peerpubkey[] = { 0x8e, 0x7d, 0x1a, 0x85, 0xdd, 0x55, 0xe5, 0xc2, 0x1a, 0x18, 0xa6, 0x6d, 0xd1, 0x48, 0xcc, 0xbf, 0xad, 0x15, 0x1a, 0xd0, 0x94, 0xfa, 0x15, 0xa7, 0x6b, 0x00, 0x17, 0x2f, 0x30, 0xc7, 0xe2, 0x13, 0xae, 0x7f, 0xc6, 0xc1, 0x95, 0xde, 0x55, 0x8d, 0x0d, 0x1d, 0x8d, 0x61, 0xd0, 0xe1, 0xe8, 0xb8, 0x37, 0xd1, 0xdb, 0xa5, 0xc4, 0x4d, 0x90, 0x55, }; static const unsigned char xdh_wei448_3453_privkey[] = { 0x38, 0xc6, 0x76, 0xf2, 0xda, 0xd6, 0xc4, 0x3d, 0x19, 0x27, 0xe9, 0x62, 0x9e, 0xb6, 0xef, 0x80, 0x6f, 0x47, 0xf5, 0xbd, 0x8a, 0x4d, 0xdf, 0xd6, 0x16, 0x2e, 0x93, 0xc7, 0xc1, 0x80, 0xf3, 0x85, 0x72, 0x6d, 0xd4, 0xfe, 0x00, 0x9f, 0xd3, 0x80, 0xad, 0x6f, 0xed, 0x29, 0xe2, 0x09, 0x59, 0xba, 0xdf, 0x06, 0x04, 0x59, 0xf2, 0x8a, 0xe8, 0xcd, }; static const unsigned char xdh_wei448_3453_sharedsecret[] = { 0x0d, 0xac, 0xa1, 0xf8, 0x24, 0xd7, 0xb3, 0xd9, 0x60, 0x8d, 0x90, 0x57, 0x94, 0x80, 0xda, 0xf8, 0x09, 0xf9, 0x93, 0xce, 0x56, 0x49, 0x97, 0x73, 0x30, 0xc5, 0x23, 0x98, 0xfb, 0xef, 0x53, 0x16, 0x6d, 0x43, 0x24, 0x26, 0xa7, 0xec, 0x6d, 0xd6, 0xe7, 0x37, 0x95, 0xff, 0xbd, 0x53, 0xf3, 0xce, 0xf8, 0x2d, 0xf7, 0x7a, 0xd2, 0x8e, 0x9f, 0x06, }; static const wycheproof_xdh_test xdh_wei448_3453 = { .name = "xdh_wei448_3453", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3453_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3453_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3453_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 359 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3454 for XDH, tcId is 360 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3454_peerpubkey[] = { 0x8e, 0x50, 0x2e, 0xc4, 0x41, 0x68, 0xea, 0x75, 0x2a, 0x34, 0x55, 0xfe, 0x2a, 0x53, 0x9e, 0x53, 0x0b, 0x74, 0x06, 0xd6, 0xfd, 0xca, 0x11, 0x70, 0x6d, 0x54, 0x13, 0x01, 0xce, 0xd2, 0x8d, 0x6c, 0x42, 0x0e, 0xde, 0x92, 0xf8, 0xed, 0xa1, 0x02, 0xf8, 0x6a, 0xad, 0xbc, 0x0e, 0xdf, 0x27, 0x42, 0x74, 0x82, 0x58, 0xcd, 0xa2, 0x97, 0x59, 0x5c, }; static const unsigned char xdh_wei448_3454_privkey[] = { 0x18, 0x42, 0x86, 0x52, 0x9c, 0xf3, 0xb2, 0x5b, 0x75, 0x6c, 0x5d, 0x62, 0xea, 0x9b, 0x81, 0xab, 0xda, 0x33, 0xdf, 0x98, 0x8b, 0x90, 0x98, 0x3d, 0xdf, 0x1d, 0x6c, 0xa5, 0xf1, 0x9a, 0x7e, 0xe7, 0x83, 0xed, 0x55, 0x52, 0x77, 0x60, 0x75, 0xeb, 0x7b, 0x86, 0xfb, 0xc6, 0x94, 0x7d, 0x34, 0xf5, 0x04, 0x9b, 0x9e, 0xad, 0x84, 0xb5, 0xef, 0xc4, }; static const unsigned char xdh_wei448_3454_sharedsecret[] = { 0x32, 0xce, 0xda, 0xe0, 0x10, 0x35, 0x85, 0x2c, 0x0e, 0x3c, 0xb2, 0x7b, 0x49, 0x1e, 0xae, 0xc0, 0xf5, 0x99, 0xc9, 0x25, 0xf6, 0x07, 0xad, 0xe1, 0x93, 0xda, 0x94, 0x5a, 0xd0, 0xdb, 0x3d, 0xaf, 0xc9, 0xe0, 0xeb, 0xaf, 0xdc, 0xa1, 0xbf, 0xab, 0xc4, 0x74, 0x0e, 0x67, 0x2b, 0x37, 0x2a, 0x38, 0x3d, 0x77, 0x51, 0xef, 0x68, 0x7e, 0xba, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_3454 = { .name = "xdh_wei448_3454", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3454_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3454_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3454_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 360 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3455 for XDH, tcId is 361 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3455_peerpubkey[] = { 0x80, 0xd8, 0xd7, 0xef, 0xb6, 0x1e, 0xe9, 0x96, 0x46, 0x34, 0x89, 0x4f, 0x64, 0xd6, 0xe7, 0x82, 0xf7, 0x78, 0x5b, 0x93, 0x88, 0x2e, 0x61, 0xd3, 0x13, 0x1e, 0x79, 0x27, 0x7b, 0x2d, 0x07, 0x62, 0xc0, 0x27, 0x89, 0x81, 0x22, 0x64, 0x97, 0x61, 0x09, 0x6a, 0x66, 0x02, 0x7b, 0x3f, 0x6b, 0x41, 0xc5, 0xd3, 0x47, 0x65, 0xc5, 0xb8, 0x46, 0xad, }; static const unsigned char xdh_wei448_3455_privkey[] = { 0xf0, 0x3e, 0x5d, 0xbb, 0x15, 0x87, 0x7c, 0xab, 0x76, 0xbb, 0x81, 0x18, 0x79, 0xa5, 0x98, 0x90, 0x83, 0xa2, 0x49, 0x1c, 0x33, 0xd5, 0xde, 0x3c, 0x13, 0xc6, 0x8f, 0xa1, 0x17, 0xd7, 0xda, 0x60, 0x83, 0x93, 0xf5, 0x55, 0xa3, 0x27, 0x86, 0x3b, 0xab, 0xe8, 0xf8, 0xb5, 0xf5, 0x24, 0xf3, 0xe5, 0x19, 0x43, 0x10, 0x54, 0xc2, 0xc8, 0x17, 0xc1, }; static const unsigned char xdh_wei448_3455_sharedsecret[] = { 0x2e, 0xf2, 0x40, 0x48, 0x03, 0x1f, 0xd4, 0xc0, 0x61, 0x5c, 0x0e, 0x27, 0x3a, 0xe3, 0x16, 0xf1, 0xcf, 0x74, 0x07, 0x32, 0xaa, 0xfa, 0xa1, 0x0f, 0x01, 0x07, 0xed, 0xb1, 0x5d, 0xf6, 0x35, 0x5b, 0x3b, 0x07, 0xe1, 0x6d, 0x7b, 0x9d, 0x3f, 0x28, 0x74, 0xf4, 0xd6, 0xe8, 0x7e, 0x56, 0xe5, 0x14, 0xa4, 0xfa, 0x7b, 0x2a, 0xab, 0x2e, 0x11, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_3455 = { .name = "xdh_wei448_3455", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3455_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3455_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3455_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3456 for XDH, tcId is 362 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3456_peerpubkey[] = { 0xd7, 0xd8, 0xb5, 0x3d, 0xbd, 0x66, 0x09, 0x27, 0x9b, 0xdd, 0x62, 0x55, 0xda, 0x90, 0x05, 0xb9, 0xc9, 0xde, 0x75, 0xff, 0xbc, 0x4d, 0xbb, 0x27, 0xa6, 0x0a, 0x51, 0x59, 0xcd, 0xfc, 0xe3, 0xea, 0xb2, 0xf6, 0xe8, 0xdc, 0xb9, 0xba, 0x1a, 0x7f, 0x81, 0xb1, 0xc0, 0x7d, 0x5c, 0x82, 0x19, 0x28, 0xa7, 0x32, 0x79, 0x89, 0x3d, 0x1c, 0x3c, 0xd2, }; static const unsigned char xdh_wei448_3456_privkey[] = { 0xf8, 0x69, 0x4c, 0xd5, 0xfc, 0xa3, 0x29, 0xc6, 0xe4, 0xde, 0xfb, 0x17, 0xd4, 0x46, 0x54, 0x4a, 0x60, 0x01, 0x2d, 0xbc, 0xfa, 0x23, 0xd7, 0xd6, 0x5c, 0xaf, 0xf2, 0x81, 0xee, 0x94, 0x7a, 0x50, 0x8d, 0x34, 0xfa, 0x1f, 0xa2, 0x46, 0x93, 0x9d, 0x7c, 0x7e, 0xab, 0x93, 0xdb, 0x31, 0x50, 0xb8, 0x95, 0x8d, 0xf5, 0x60, 0xb9, 0xe4, 0x9a, 0xd0, }; static const unsigned char xdh_wei448_3456_sharedsecret[] = { 0xbf, 0xc7, 0xe3, 0x09, 0x9b, 0x4f, 0x48, 0xbd, 0x4b, 0x1b, 0x89, 0xde, 0xb5, 0x96, 0x87, 0x84, 0x7b, 0xf6, 0x01, 0x4d, 0x5a, 0xca, 0xfc, 0x24, 0x8b, 0x3b, 0x57, 0x6f, 0xaa, 0x11, 0x11, 0xba, 0xe6, 0xe8, 0x81, 0x02, 0x71, 0x05, 0xd7, 0x24, 0x0d, 0x89, 0xee, 0x6a, 0xc2, 0x00, 0xba, 0x0d, 0xfe, 0x46, 0x48, 0x6a, 0xe0, 0x7b, 0x0d, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3456 = { .name = "xdh_wei448_3456", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3456_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3456_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3456_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 362 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3457 for XDH, tcId is 363 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3457_peerpubkey[] = { 0xef, 0x64, 0x72, 0x31, 0x7c, 0x20, 0x56, 0x6f, 0x5f, 0xec, 0xff, 0x8e, 0x18, 0x07, 0x75, 0x42, 0x43, 0x96, 0x87, 0x35, 0x4b, 0x9f, 0x9e, 0x77, 0x0f, 0x4d, 0xd7, 0x70, 0x69, 0x0b, 0x79, 0xa6, 0xd3, 0x50, 0x10, 0x00, 0xb6, 0xf5, 0x04, 0xad, 0x62, 0x8a, 0xc2, 0x00, 0xed, 0x89, 0xfd, 0x82, 0x2e, 0x13, 0x1c, 0x1c, 0x97, 0x1d, 0x82, 0xf0, }; static const unsigned char xdh_wei448_3457_privkey[] = { 0x98, 0xb2, 0xc9, 0xa0, 0xdf, 0xa3, 0x9a, 0xef, 0x17, 0x56, 0x33, 0x08, 0x9b, 0x35, 0x13, 0x30, 0x5c, 0x0d, 0x6f, 0x90, 0x69, 0x39, 0xff, 0x65, 0x1e, 0x5c, 0x59, 0xf9, 0x76, 0x29, 0x96, 0x32, 0xb1, 0x23, 0xed, 0x88, 0x27, 0x44, 0xda, 0xc5, 0xaf, 0xf2, 0x62, 0x86, 0x9a, 0xce, 0xd8, 0x4b, 0xa0, 0xd7, 0x1e, 0xa3, 0x91, 0xa4, 0xc9, 0xc9, }; static const unsigned char xdh_wei448_3457_sharedsecret[] = { 0x6a, 0x9e, 0x56, 0xff, 0x58, 0xe2, 0x9a, 0x0e, 0xf4, 0x40, 0xe5, 0x81, 0x1d, 0x5a, 0xa5, 0x14, 0x11, 0xd9, 0x31, 0x4b, 0xe2, 0xc6, 0xc0, 0xe8, 0x02, 0xa5, 0x55, 0x7b, 0x9a, 0x1e, 0xf7, 0x21, 0x8b, 0xc1, 0x17, 0x86, 0x5e, 0x85, 0xef, 0xb9, 0xcf, 0x2d, 0x7e, 0xca, 0xf9, 0x88, 0x7a, 0xed, 0xd8, 0x37, 0x93, 0x9f, 0x1a, 0xd0, 0xff, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3457 = { .name = "xdh_wei448_3457", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3457_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3457_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3457_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 363 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3458 for XDH, tcId is 364 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3458_peerpubkey[] = { 0x6b, 0x70, 0x3f, 0x0d, 0x03, 0xcd, 0x81, 0xbc, 0x86, 0x27, 0x48, 0xa0, 0x47, 0xba, 0x6d, 0x7c, 0xc6, 0x61, 0x0d, 0xe2, 0xc4, 0x3b, 0xd8, 0x10, 0x59, 0x70, 0xdf, 0x02, 0xf1, 0x26, 0x25, 0x3f, 0x13, 0x74, 0x07, 0xef, 0xb1, 0x82, 0xa0, 0xed, 0xbc, 0xd3, 0xfa, 0xdd, 0x17, 0x0a, 0x33, 0xac, 0xfa, 0xdf, 0x18, 0x5f, 0xd0, 0xf3, 0x0f, 0xfb, }; static const unsigned char xdh_wei448_3458_privkey[] = { 0xa0, 0x33, 0x7e, 0x1c, 0x6e, 0xf5, 0x6a, 0xe9, 0xf2, 0xc5, 0x1f, 0x23, 0xea, 0xc2, 0x39, 0xc9, 0x50, 0x7c, 0x83, 0x12, 0x8e, 0xc9, 0xd6, 0xc8, 0x96, 0x75, 0x13, 0x28, 0xc3, 0x7d, 0x9e, 0x2c, 0x21, 0x5e, 0xb0, 0xca, 0xcc, 0x1b, 0xfc, 0xb1, 0x1e, 0xb8, 0x52, 0xff, 0xcf, 0xa3, 0x40, 0x24, 0x64, 0xb2, 0x71, 0x50, 0x45, 0xc8, 0x93, 0xd2, }; static const unsigned char xdh_wei448_3458_sharedsecret[] = { 0x46, 0x80, 0xb8, 0x74, 0xd6, 0x71, 0x8f, 0xe3, 0x66, 0x7b, 0x28, 0xd4, 0x6f, 0xda, 0xa8, 0x5b, 0x05, 0x22, 0x52, 0x0a, 0xd9, 0xe2, 0x09, 0x78, 0x8d, 0xff, 0x52, 0x42, 0x0b, 0x2e, 0x04, 0xc2, 0xea, 0xa9, 0xc9, 0x1b, 0x2d, 0xd2, 0x7e, 0xf5, 0xfd, 0x23, 0x07, 0x95, 0xe3, 0x42, 0x8f, 0xc7, 0x2f, 0x05, 0x4c, 0xb1, 0xfa, 0x46, 0x2b, 0xba, }; static const wycheproof_xdh_test xdh_wei448_3458 = { .name = "xdh_wei448_3458", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3458_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3458_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3458_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 364 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3459 for XDH, tcId is 365 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3459_peerpubkey[] = { 0xc7, 0x4c, 0xb2, 0x63, 0x92, 0xf8, 0x4f, 0xab, 0xb9, 0xfe, 0x10, 0x79, 0x81, 0x74, 0xa6, 0x95, 0xca, 0x37, 0x50, 0xae, 0x72, 0x0d, 0x7e, 0xdd, 0xe1, 0xeb, 0x1b, 0xbc, 0x14, 0xde, 0x52, 0x42, 0x11, 0x9e, 0xa9, 0xde, 0x79, 0x6f, 0xa5, 0xa5, 0x38, 0xc0, 0xb6, 0x10, 0xb6, 0x5d, 0xa5, 0xa1, 0x0d, 0x47, 0xbb, 0x92, 0x31, 0x47, 0x7e, 0x0f, }; static const unsigned char xdh_wei448_3459_privkey[] = { 0x9c, 0x16, 0xc7, 0x35, 0x62, 0x84, 0xca, 0x60, 0x8f, 0x41, 0x12, 0x2d, 0xb6, 0xfd, 0x57, 0xf6, 0x7e, 0xd1, 0x4d, 0x9f, 0x82, 0x87, 0x0f, 0xe7, 0x67, 0xe6, 0x47, 0x60, 0xdd, 0x85, 0xe0, 0xc5, 0x50, 0x2d, 0x8c, 0x53, 0x17, 0xa5, 0x70, 0x72, 0x92, 0x82, 0xce, 0x5f, 0x51, 0x86, 0x40, 0xc5, 0x8c, 0xc0, 0x2e, 0xde, 0xf6, 0x38, 0xed, 0xe0, }; static const unsigned char xdh_wei448_3459_sharedsecret[] = { 0x2a, 0x74, 0x77, 0x12, 0x0b, 0xce, 0x86, 0x53, 0x3d, 0x19, 0xcd, 0x3c, 0xab, 0xc8, 0x35, 0x5b, 0xab, 0x91, 0xa1, 0x25, 0x6d, 0x9d, 0x0b, 0x54, 0x54, 0x06, 0xcc, 0x72, 0x39, 0xab, 0x9f, 0x75, 0xb6, 0x2d, 0x38, 0x19, 0x03, 0xa5, 0x1a, 0x4c, 0xa4, 0x14, 0x29, 0x20, 0xc0, 0x00, 0xfc, 0x80, 0xe4, 0x74, 0xe4, 0x1a, 0xce, 0xf9, 0xd7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3459 = { .name = "xdh_wei448_3459", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3459_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3459_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3459_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 365 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3460 for XDH, tcId is 366 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3460_peerpubkey[] = { 0x5a, 0x07, 0xde, 0x5d, 0x53, 0xdc, 0xac, 0x22, 0xa4, 0x93, 0x5a, 0x11, 0x90, 0x9a, 0x8b, 0x5d, 0xc6, 0x62, 0x59, 0x96, 0x71, 0xe3, 0xba, 0xfc, 0x71, 0xf9, 0x8d, 0x8f, 0x64, 0x05, 0x6a, 0xb5, 0x19, 0x34, 0x8e, 0x1c, 0x8d, 0x74, 0x87, 0x00, 0x1d, 0x9b, 0xa5, 0xc0, 0x88, 0x8a, 0xef, 0x3a, 0x09, 0xe3, 0x99, 0x95, 0xc5, 0x15, 0xed, 0x1c, }; static const unsigned char xdh_wei448_3460_privkey[] = { 0x94, 0xd3, 0xf7, 0x22, 0xea, 0x49, 0xaa, 0xd9, 0xd7, 0xe6, 0x3d, 0x78, 0x4d, 0xf5, 0xa4, 0xb8, 0xea, 0xa3, 0x55, 0xbb, 0x13, 0x30, 0x81, 0xfb, 0x46, 0x6e, 0x8e, 0xbe, 0xae, 0xec, 0x80, 0xf6, 0x3a, 0xff, 0xc0, 0x3d, 0xee, 0x73, 0x32, 0xa3, 0xcf, 0x11, 0xb4, 0x44, 0x2c, 0x60, 0x27, 0x72, 0x7a, 0x65, 0x29, 0x66, 0xdf, 0x0f, 0x26, 0xf5, }; static const unsigned char xdh_wei448_3460_sharedsecret[] = { 0xa8, 0xed, 0x03, 0xdc, 0x9a, 0xc2, 0x65, 0x87, 0x90, 0xf0, 0x6a, 0xe5, 0x85, 0x8f, 0xd2, 0xc5, 0x4d, 0x25, 0x76, 0xf7, 0x79, 0x33, 0x86, 0xf8, 0xe9, 0xe6, 0xa9, 0xc2, 0x8a, 0xcd, 0xd0, 0x84, 0x0e, 0xb6, 0xfc, 0x23, 0x6b, 0x6e, 0x72, 0xfd, 0x7d, 0x23, 0x8c, 0x79, 0xd5, 0x0d, 0xc5, 0xec, 0x75, 0x8f, 0x2a, 0x1a, 0xad, 0xb4, 0x08, 0x8c, }; static const wycheproof_xdh_test xdh_wei448_3460 = { .name = "xdh_wei448_3460", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3460_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3460_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3460_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 366 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3461 for XDH, tcId is 367 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3461_peerpubkey[] = { 0xc2, 0x67, 0x4f, 0xc9, 0xde, 0xd2, 0x19, 0xe3, 0x48, 0x9e, 0x23, 0xcf, 0xcc, 0xc5, 0xe4, 0x09, 0x08, 0x5a, 0x62, 0xcc, 0xc9, 0x0e, 0x91, 0x2b, 0x4f, 0x25, 0x66, 0xe2, 0x28, 0xa2, 0x3b, 0x24, 0x36, 0x30, 0xdf, 0x20, 0x11, 0x65, 0x07, 0x13, 0x8d, 0xef, 0x1f, 0x10, 0xd7, 0xe7, 0x88, 0x1f, 0x93, 0xb1, 0x0b, 0x6e, 0x85, 0x59, 0x03, 0x57, }; static const unsigned char xdh_wei448_3461_privkey[] = { 0x84, 0xb7, 0xea, 0x45, 0x39, 0xa2, 0x5d, 0x59, 0x14, 0x12, 0x1d, 0xbb, 0x22, 0xa0, 0xaa, 0x6b, 0x6d, 0x39, 0x48, 0x79, 0x1f, 0x3e, 0xcb, 0xe6, 0xc2, 0x9e, 0x9b, 0xe7, 0x59, 0x85, 0xe1, 0x85, 0x28, 0xaa, 0xd1, 0xe8, 0xf5, 0x78, 0xeb, 0x60, 0x36, 0x7a, 0x21, 0x6c, 0xac, 0x12, 0x96, 0x82, 0x43, 0x18, 0xc6, 0xe0, 0xb0, 0xc3, 0x59, 0xfc, }; static const unsigned char xdh_wei448_3461_sharedsecret[] = { 0x94, 0xa2, 0x15, 0xb7, 0x82, 0x73, 0x1e, 0x91, 0xfb, 0x24, 0x9a, 0xf1, 0xef, 0xf1, 0x3a, 0x8a, 0x31, 0xe2, 0x66, 0x20, 0x83, 0x87, 0x45, 0xc4, 0x5f, 0xaf, 0x1b, 0x93, 0xd5, 0x2a, 0x9a, 0x2b, 0x76, 0x54, 0x96, 0x86, 0xd6, 0xdc, 0x68, 0xde, 0xa3, 0x95, 0x4e, 0x28, 0x2e, 0x25, 0xdb, 0x51, 0xba, 0x9a, 0x00, 0xdc, 0x40, 0x48, 0x61, 0xce, }; static const wycheproof_xdh_test xdh_wei448_3461 = { .name = "xdh_wei448_3461", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3461_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3461_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3461_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 367 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3462 for XDH, tcId is 368 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3462_peerpubkey[] = { 0x6e, 0x2d, 0xea, 0x3b, 0x6f, 0x6f, 0xab, 0x4c, 0x40, 0xb5, 0xdd, 0x70, 0xf2, 0xa2, 0x0b, 0x4e, 0x94, 0xb8, 0x5c, 0xf6, 0x18, 0xde, 0xe1, 0x87, 0x26, 0x34, 0xfc, 0x3c, 0x11, 0xa1, 0xeb, 0xde, 0x1d, 0xec, 0x90, 0x46, 0x07, 0x3d, 0xab, 0x37, 0x99, 0x9c, 0xc4, 0xe2, 0xbb, 0x27, 0x8d, 0x9d, 0xa5, 0x39, 0xfc, 0x0c, 0x55, 0x4d, 0xd9, 0x68, }; static const unsigned char xdh_wei448_3462_privkey[] = { 0x24, 0x38, 0x8c, 0x6f, 0x8d, 0xbf, 0x84, 0x4c, 0xd9, 0xc8, 0x57, 0x5f, 0x9f, 0xc5, 0x81, 0x95, 0xb1, 0xd8, 0x5c, 0x9e, 0x87, 0x1e, 0x11, 0x83, 0x7a, 0x11, 0x98, 0xcf, 0xa6, 0x38, 0x22, 0x63, 0xd2, 0x76, 0xf1, 0xed, 0x8b, 0xe7, 0x18, 0x66, 0x86, 0xf4, 0x78, 0x67, 0x80, 0x90, 0xb4, 0xd8, 0x83, 0x82, 0x8d, 0x67, 0x99, 0x92, 0xb6, 0xf7, }; static const unsigned char xdh_wei448_3462_sharedsecret[] = { 0x90, 0x27, 0x2c, 0x81, 0x6f, 0xaa, 0x4b, 0x33, 0xc9, 0x4c, 0x02, 0x6c, 0x6b, 0xf0, 0xdb, 0x26, 0xc6, 0x85, 0x34, 0x6e, 0xc9, 0xc5, 0x84, 0x33, 0x8d, 0xf0, 0x07, 0xda, 0x8a, 0x22, 0x70, 0xe6, 0xbf, 0xe3, 0x94, 0xcc, 0xc2, 0x74, 0x8a, 0x3c, 0x69, 0xae, 0xe0, 0x3b, 0x97, 0xa4, 0x4f, 0xd6, 0x0f, 0x55, 0xd2, 0x80, 0x7a, 0xc3, 0xd3, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3462 = { .name = "xdh_wei448_3462", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3462_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3462_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3462_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 368 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3463 for XDH, tcId is 369 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3463_peerpubkey[] = { 0x74, 0x65, 0x25, 0xc0, 0xd0, 0xaa, 0x1c, 0x92, 0xbb, 0xed, 0x10, 0xc3, 0xe6, 0x5e, 0x76, 0x36, 0xf1, 0x15, 0x94, 0x4c, 0x1a, 0x1c, 0x22, 0xe0, 0x10, 0x5a, 0x77, 0xfa, 0xa2, 0x15, 0x70, 0x0e, 0x3e, 0xd2, 0x98, 0x86, 0x6a, 0xff, 0xbf, 0x38, 0xbb, 0xbd, 0x50, 0x11, 0x28, 0x5f, 0x10, 0x56, 0xad, 0x4e, 0x27, 0x7b, 0x2e, 0x05, 0x44, 0x93, }; static const unsigned char xdh_wei448_3463_privkey[] = { 0xe8, 0xf7, 0x13, 0x63, 0xb9, 0xc4, 0x20, 0x49, 0xcb, 0x42, 0x1c, 0xb6, 0x16, 0x6c, 0xe8, 0x40, 0xf4, 0x8d, 0x39, 0xcd, 0xc5, 0xa1, 0x1f, 0x8b, 0xe5, 0x27, 0x15, 0x34, 0xa5, 0x8d, 0x56, 0x4c, 0xeb, 0x7c, 0x5d, 0xb3, 0x39, 0x09, 0x81, 0x72, 0x93, 0xee, 0x17, 0xa9, 0x6c, 0x06, 0x21, 0x4e, 0x85, 0xa5, 0x16, 0x29, 0x6f, 0xbf, 0x53, 0xf5, }; static const unsigned char xdh_wei448_3463_sharedsecret[] = { 0x5d, 0x24, 0x56, 0x4b, 0x12, 0x25, 0x7f, 0x6e, 0x52, 0xf8, 0x26, 0x9a, 0x09, 0xe8, 0xb1, 0x13, 0x7e, 0xcb, 0x83, 0x2a, 0xcc, 0x34, 0x3e, 0x0a, 0x19, 0xbe, 0x45, 0x9e, 0xf2, 0xcf, 0xd2, 0x76, 0xd3, 0x9f, 0x95, 0x56, 0x49, 0x4a, 0x3e, 0x2d, 0xd5, 0xfc, 0x55, 0x00, 0xc6, 0x46, 0xef, 0xe0, 0x6f, 0x2d, 0x19, 0x20, 0xa2, 0xf3, 0x25, 0xee, }; static const wycheproof_xdh_test xdh_wei448_3463 = { .name = "xdh_wei448_3463", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3463_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3463_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3463_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 369 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3464 for XDH, tcId is 370 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3464_peerpubkey[] = { 0xcc, 0x14, 0x70, 0x70, 0x95, 0x30, 0x75, 0x5c, 0xb6, 0xfa, 0x6b, 0xd9, 0xda, 0x94, 0x72, 0x52, 0xc6, 0xdf, 0x9c, 0xdb, 0x14, 0x21, 0xa5, 0x70, 0xe0, 0xdb, 0xd2, 0x98, 0xbc, 0x56, 0xf3, 0x5f, 0x84, 0x4c, 0x9b, 0x42, 0xff, 0x60, 0xe9, 0xaf, 0x17, 0xb0, 0x06, 0x63, 0xe8, 0x8e, 0x08, 0x8f, 0x8a, 0x84, 0xc7, 0x30, 0x94, 0xe9, 0x44, 0xe7, }; static const unsigned char xdh_wei448_3464_privkey[] = { 0x2c, 0x8b, 0x77, 0x93, 0x12, 0x30, 0xba, 0xa9, 0x34, 0x0d, 0xec, 0xa7, 0x60, 0x7f, 0x72, 0x18, 0x66, 0x11, 0xe6, 0x40, 0xff, 0x3f, 0x90, 0xcd, 0xee, 0xcb, 0xf2, 0x07, 0xac, 0x31, 0xa2, 0x33, 0xcf, 0x57, 0x5f, 0xe9, 0xb9, 0xfb, 0x5f, 0x43, 0x81, 0xa2, 0xe8, 0x83, 0x60, 0xcd, 0xe2, 0xb0, 0x84, 0x71, 0x46, 0x30, 0x3f, 0xaf, 0xa6, 0xfa, }; static const unsigned char xdh_wei448_3464_sharedsecret[] = { 0xcf, 0xc1, 0xd9, 0xe2, 0x50, 0x44, 0x7d, 0x37, 0xa7, 0x0f, 0xfb, 0x67, 0x64, 0xe4, 0x24, 0x9f, 0x89, 0xa1, 0x4d, 0x16, 0x84, 0x57, 0x64, 0x17, 0x49, 0xd5, 0x1b, 0xda, 0x5f, 0x31, 0x09, 0xb5, 0x5e, 0xb6, 0x4d, 0x7e, 0x1d, 0xf1, 0x1a, 0x47, 0xc7, 0xca, 0xca, 0xc9, 0x91, 0xb8, 0x7b, 0x5b, 0xed, 0x3b, 0xe4, 0x54, 0xda, 0x3f, 0x9e, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3464 = { .name = "xdh_wei448_3464", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3464_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3464_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3464_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 370 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3465 for XDH, tcId is 371 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3465_peerpubkey[] = { 0x28, 0xe2, 0x9f, 0xac, 0x5e, 0xeb, 0x6b, 0x5f, 0x19, 0xd1, 0x4f, 0x73, 0x6f, 0x09, 0x23, 0xd3, 0xca, 0x8a, 0x6f, 0x0c, 0x6d, 0xad, 0xb0, 0x99, 0x4e, 0x74, 0x23, 0xb1, 0x62, 0x13, 0x5b, 0x69, 0x64, 0xaf, 0xeb, 0xa4, 0x73, 0x09, 0xa5, 0xc3, 0x40, 0xe8, 0x64, 0xbe, 0x2d, 0x86, 0xde, 0x3f, 0x4c, 0x39, 0x65, 0xf5, 0x2e, 0xc6, 0xfb, 0x10, }; static const unsigned char xdh_wei448_3465_privkey[] = { 0xbc, 0x1e, 0x2a, 0xdc, 0xe0, 0xc4, 0x01, 0x64, 0xd0, 0x8b, 0x69, 0xc0, 0x85, 0xcb, 0x06, 0x43, 0xf9, 0x4d, 0x0f, 0xbb, 0x63, 0x40, 0xf1, 0x4a, 0x4a, 0xdf, 0xf5, 0x9d, 0x40, 0x2e, 0x96, 0xc7, 0xc6, 0xaf, 0x2d, 0xcc, 0x26, 0xd8, 0xd5, 0xdf, 0x8b, 0x90, 0xc8, 0xb2, 0x9c, 0x29, 0x81, 0xc3, 0x13, 0xc9, 0x6e, 0x89, 0xd8, 0xbb, 0x21, 0xe8, }; static const unsigned char xdh_wei448_3465_sharedsecret[] = { 0xda, 0x0f, 0x3e, 0x1d, 0xd1, 0x93, 0x73, 0x5a, 0xf9, 0x64, 0x89, 0xf5, 0x54, 0xaf, 0xef, 0x42, 0xef, 0x83, 0x7e, 0x7b, 0xcd, 0xb2, 0x07, 0xd9, 0x4e, 0xe5, 0xed, 0x41, 0x1a, 0xea, 0x06, 0x1d, 0x47, 0x86, 0x50, 0xe5, 0x5f, 0x3a, 0xe2, 0x6f, 0xe6, 0x2b, 0xd9, 0xe6, 0xf2, 0x70, 0x95, 0x96, 0xbc, 0x03, 0xf7, 0x82, 0x7a, 0x7b, 0x06, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3465 = { .name = "xdh_wei448_3465", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3465_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3465_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3465_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 371 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3466 for XDH, tcId is 372 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3466_peerpubkey[] = { 0xbd, 0xc9, 0x21, 0x80, 0x54, 0xef, 0x5e, 0x3a, 0xa4, 0x40, 0x5b, 0xc7, 0x1e, 0x75, 0xe9, 0x06, 0x72, 0x60, 0xa7, 0x51, 0x06, 0x64, 0xf9, 0x1d, 0xd2, 0x88, 0x10, 0xbf, 0x2f, 0x6b, 0xec, 0x45, 0xd9, 0xb1, 0x7c, 0x96, 0xb3, 0xb5, 0x0a, 0x5e, 0xcd, 0xf6, 0x4f, 0x1e, 0xa9, 0x68, 0x28, 0xb6, 0x8c, 0x2e, 0x2c, 0x5c, 0xc2, 0x68, 0xb8, 0x45, }; static const unsigned char xdh_wei448_3466_privkey[] = { 0xbc, 0xae, 0x78, 0x6f, 0x69, 0xd6, 0x17, 0x12, 0x96, 0x2a, 0xf8, 0x9f, 0x67, 0x39, 0x72, 0xdc, 0x89, 0xa4, 0xde, 0xc5, 0x1f, 0xa7, 0x96, 0xe8, 0x25, 0xb3, 0x02, 0x05, 0xb1, 0x1c, 0xae, 0x6c, 0xc7, 0x35, 0xff, 0x5e, 0x1e, 0xe4, 0x82, 0x74, 0x01, 0x05, 0x3b, 0xb4, 0x8a, 0x9f, 0xb9, 0xfb, 0x18, 0xd9, 0xd9, 0x31, 0xf9, 0xcb, 0x56, 0xe9, }; static const unsigned char xdh_wei448_3466_sharedsecret[] = { 0x23, 0xa1, 0x0a, 0x2e, 0xf5, 0x07, 0xd3, 0x62, 0x66, 0xf3, 0x69, 0x36, 0x30, 0xfa, 0x7d, 0x0d, 0x59, 0x03, 0x26, 0xd0, 0x99, 0x4c, 0x22, 0xa2, 0xd5, 0xcf, 0x85, 0xd2, 0x24, 0xd0, 0x08, 0x54, 0xb7, 0x2b, 0x32, 0x74, 0xe9, 0xd1, 0x06, 0x10, 0x33, 0xb1, 0x1c, 0x6f, 0xdb, 0xde, 0x27, 0x37, 0x7b, 0xe3, 0x6b, 0xce, 0x38, 0xcc, 0xbf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_3466 = { .name = "xdh_wei448_3466", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3466_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3466_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3466_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 372 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3467 for XDH, tcId is 373 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3467_peerpubkey[] = { 0x7f, 0xda, 0xea, 0x8c, 0xf3, 0x83, 0x20, 0x55, 0xad, 0x8e, 0x05, 0x93, 0xa6, 0xae, 0x7f, 0x31, 0x93, 0x9d, 0xe0, 0x46, 0x3c, 0x56, 0xec, 0x32, 0x8c, 0xa9, 0x25, 0x0c, 0xff, 0x0a, 0x45, 0x63, 0x89, 0x60, 0xce, 0x55, 0x8e, 0x95, 0xd8, 0x06, 0xdd, 0x89, 0x43, 0xfb, 0x2d, 0x8e, 0xc0, 0x06, 0xcf, 0x44, 0x98, 0x75, 0xeb, 0xa0, 0x6b, 0x7e, }; static const unsigned char xdh_wei448_3467_privkey[] = { 0x68, 0xfc, 0xdc, 0xc5, 0xba, 0x2e, 0x44, 0x9b, 0x1b, 0x14, 0xd1, 0x1a, 0x27, 0x28, 0x12, 0xe8, 0xcf, 0xf2, 0xbf, 0x54, 0x8e, 0xa4, 0xf2, 0x28, 0x16, 0xd3, 0xb1, 0xfa, 0x8d, 0xa1, 0x01, 0xeb, 0x8d, 0x72, 0x5b, 0x2c, 0x86, 0x4c, 0x72, 0x84, 0x3e, 0x46, 0x45, 0xf3, 0x59, 0xea, 0x23, 0x6c, 0xc8, 0x3f, 0xf6, 0xa9, 0x3c, 0x7a, 0xbc, 0xf8, }; static const unsigned char xdh_wei448_3467_sharedsecret[] = { 0x98, 0x6e, 0x69, 0x86, 0x0b, 0xcf, 0x20, 0x59, 0xd8, 0x32, 0xb8, 0x6a, 0x15, 0xb6, 0xc5, 0x36, 0xf8, 0xb8, 0x47, 0xb7, 0x14, 0xa1, 0xdc, 0x64, 0x84, 0x87, 0xd6, 0xa4, 0xd9, 0xed, 0xb0, 0xe0, 0x04, 0xdc, 0xd9, 0x82, 0x09, 0x9f, 0x34, 0x4e, 0x23, 0xff, 0x36, 0x83, 0x12, 0xb3, 0xf2, 0xec, 0x85, 0x3f, 0x33, 0x20, 0x67, 0x43, 0x24, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3467 = { .name = "xdh_wei448_3467", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3467_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3467_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3467_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 373 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3468 for XDH, tcId is 374 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3468_peerpubkey[] = { 0x07, 0x03, 0xc1, 0xc0, 0x35, 0x2e, 0x54, 0xc0, 0xcb, 0xc3, 0xc2, 0xec, 0x9f, 0x2d, 0x27, 0x97, 0xfe, 0xb2, 0x2e, 0x1f, 0x01, 0xb4, 0x3f, 0xb0, 0xda, 0x67, 0x5e, 0xba, 0x50, 0xc1, 0xa6, 0x96, 0xc9, 0x23, 0x69, 0x00, 0x61, 0xc8, 0xf3, 0x6f, 0x95, 0xab, 0x01, 0xf0, 0x8d, 0x3f, 0x6b, 0x43, 0xf1, 0xa5, 0x68, 0x8a, 0x7c, 0xe6, 0x9d, 0x7f, }; static const unsigned char xdh_wei448_3468_privkey[] = { 0x8c, 0x92, 0x48, 0x35, 0x57, 0x10, 0xe2, 0xa5, 0xb5, 0xfc, 0x05, 0x82, 0x9b, 0x97, 0xa9, 0x9b, 0xe5, 0x5a, 0x44, 0x1b, 0xc6, 0xc6, 0x17, 0xed, 0xaf, 0x5f, 0xe8, 0xb3, 0x63, 0x27, 0x04, 0x76, 0xb1, 0x51, 0x6e, 0x42, 0x49, 0x79, 0x76, 0x32, 0x67, 0xb8, 0x5c, 0xf9, 0x21, 0x2f, 0x58, 0xb0, 0x2b, 0x5f, 0x5c, 0xf0, 0xae, 0x57, 0x3c, 0xeb, }; static const unsigned char xdh_wei448_3468_sharedsecret[] = { 0x2c, 0xfe, 0x18, 0x4e, 0x46, 0x42, 0xbd, 0x7f, 0xb7, 0x82, 0x6d, 0x74, 0x86, 0x43, 0xdc, 0x1e, 0x4b, 0xad, 0xe0, 0x1e, 0xfd, 0xbb, 0x97, 0xab, 0x43, 0x75, 0xce, 0x70, 0x5d, 0x50, 0xeb, 0x5f, 0xa4, 0xb7, 0x15, 0xf8, 0xf6, 0x8c, 0xb4, 0xc2, 0xd3, 0x1f, 0x40, 0x5b, 0x9f, 0xcc, 0x7f, 0xdf, 0xaf, 0x45, 0xe2, 0x50, 0xee, 0xb4, 0x25, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3468 = { .name = "xdh_wei448_3468", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3468_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3468_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3468_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 374 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3469 for XDH, tcId is 375 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3469_peerpubkey[] = { 0x4d, 0xa7, 0xda, 0xb7, 0xbb, 0xd2, 0xd1, 0xe6, 0x5f, 0xa8, 0x27, 0xad, 0x65, 0x73, 0xb0, 0x58, 0xef, 0x88, 0xa6, 0x6b, 0x65, 0x58, 0xcb, 0xd5, 0x9a, 0x71, 0x05, 0x5f, 0x9f, 0x4e, 0xec, 0xb8, 0x17, 0xb4, 0xae, 0xd5, 0x62, 0xe5, 0xf7, 0x17, 0x8d, 0xa3, 0xb9, 0xe6, 0x38, 0xe6, 0xf8, 0xe0, 0xa4, 0xb2, 0x7c, 0xba, 0xd7, 0x7c, 0x7a, 0x81, }; static const unsigned char xdh_wei448_3469_privkey[] = { 0xc0, 0x53, 0x32, 0x24, 0xb8, 0x9a, 0x99, 0x1a, 0x65, 0xfe, 0x40, 0x36, 0x5e, 0x5f, 0x15, 0xaa, 0xb2, 0xbc, 0x76, 0x75, 0x3f, 0xb4, 0xa2, 0x21, 0xf1, 0x29, 0x14, 0x7a, 0xb9, 0x27, 0x4c, 0x76, 0x22, 0xc2, 0x41, 0xfb, 0x7e, 0x97, 0xdb, 0x21, 0x83, 0x56, 0xf3, 0xd0, 0x59, 0x40, 0x41, 0xba, 0x51, 0x03, 0xaf, 0x29, 0x84, 0xc5, 0xc0, 0xf5, }; static const unsigned char xdh_wei448_3469_sharedsecret[] = { 0xe8, 0xef, 0x23, 0x26, 0x55, 0x5f, 0x0f, 0xf5, 0x06, 0x2a, 0x57, 0xd4, 0x54, 0x82, 0xd5, 0x76, 0x72, 0x80, 0x20, 0x15, 0x0b, 0xd1, 0x0f, 0xa1, 0xf9, 0x5f, 0x09, 0x57, 0x47, 0x1e, 0x7b, 0xc4, 0x38, 0x85, 0x54, 0x2d, 0x04, 0x19, 0x07, 0xf5, 0xdc, 0xfe, 0x43, 0xd2, 0xaa, 0x86, 0x28, 0x61, 0x23, 0xc0, 0x04, 0x32, 0xf9, 0x8f, 0x59, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_3469 = { .name = "xdh_wei448_3469", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3469_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3469_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3469_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 375 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3470 for XDH, tcId is 376 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3470_peerpubkey[] = { 0x5f, 0x95, 0xcf, 0x0a, 0xfe, 0x8f, 0x99, 0x15, 0xd9, 0x83, 0xc7, 0x17, 0x54, 0x32, 0x9e, 0xb0, 0x52, 0x77, 0x68, 0x60, 0x5b, 0xa8, 0xe5, 0x8c, 0xa2, 0xc6, 0x4a, 0x75, 0x0a, 0x52, 0x8c, 0x1a, 0x6c, 0x1a, 0xf8, 0x83, 0x7d, 0x93, 0xfc, 0x88, 0xe7, 0x2d, 0x8d, 0xdb, 0x67, 0x5f, 0xef, 0xda, 0x43, 0x85, 0x1d, 0x19, 0xf7, 0x99, 0x78, 0x85, }; static const unsigned char xdh_wei448_3470_privkey[] = { 0xe4, 0x58, 0x55, 0x7f, 0xbd, 0xec, 0x2e, 0x38, 0xa7, 0x6a, 0x03, 0xb7, 0xd7, 0x96, 0x4e, 0xe7, 0xd0, 0xa9, 0x52, 0xc3, 0xbe, 0x4f, 0x04, 0x45, 0x89, 0xa2, 0xda, 0xe9, 0x1e, 0x18, 0x44, 0xe7, 0x0b, 0x5b, 0xa2, 0x73, 0x67, 0xec, 0x7f, 0xc5, 0x48, 0x5c, 0xca, 0x82, 0xf7, 0xde, 0xdf, 0x47, 0x42, 0xa5, 0x6c, 0x7d, 0xb3, 0xe5, 0x98, 0xf3, }; static const unsigned char xdh_wei448_3470_sharedsecret[] = { 0x75, 0x31, 0xde, 0x90, 0xb1, 0x98, 0xac, 0xdb, 0x91, 0xd8, 0xd5, 0xff, 0xda, 0x2a, 0x9b, 0xd3, 0xaf, 0x0d, 0x2e, 0x04, 0x65, 0x09, 0x4d, 0xda, 0xe2, 0xdb, 0x7f, 0x9e, 0x21, 0xfb, 0x12, 0x57, 0x91, 0x20, 0x34, 0x56, 0xc6, 0x9e, 0x73, 0xa5, 0x46, 0xca, 0x38, 0x20, 0x61, 0x7a, 0x31, 0x2c, 0xd3, 0x17, 0x9c, 0xde, 0x2d, 0x7e, 0xcb, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3470 = { .name = "xdh_wei448_3470", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3470_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3470_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3470_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 376 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3471 for XDH, tcId is 377 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3471_peerpubkey[] = { 0xa9, 0x1e, 0xe7, 0x64, 0xb9, 0x06, 0x93, 0x11, 0x51, 0x1b, 0xb4, 0xbd, 0xeb, 0xef, 0x48, 0x5f, 0xf2, 0xfb, 0x26, 0xe3, 0x4c, 0xa7, 0x44, 0x7b, 0x74, 0x33, 0xce, 0x92, 0xd6, 0x7e, 0xc2, 0x41, 0x95, 0x16, 0xc8, 0x87, 0x27, 0xf0, 0x7e, 0x47, 0x3b, 0xa6, 0x31, 0xa0, 0xf6, 0x68, 0x79, 0x9d, 0x86, 0x1c, 0x72, 0x46, 0xa3, 0x61, 0x73, 0x2e, }; static const unsigned char xdh_wei448_3471_privkey[] = { 0xcc, 0x78, 0x1a, 0x9d, 0xd0, 0xb1, 0x32, 0x1a, 0x4f, 0xf4, 0x4d, 0x3a, 0x97, 0xa8, 0x2f, 0xd4, 0x3b, 0x8b, 0xf4, 0xd4, 0x46, 0xa1, 0xef, 0x32, 0xa2, 0x14, 0x76, 0x48, 0xf3, 0x99, 0xd9, 0xae, 0x66, 0xcd, 0xf9, 0x55, 0x5d, 0xf5, 0xc2, 0xa9, 0xe3, 0xab, 0x33, 0x00, 0x46, 0x2a, 0x52, 0x20, 0x14, 0x11, 0x09, 0x0c, 0x76, 0x4f, 0x4e, 0xf2, }; static const unsigned char xdh_wei448_3471_sharedsecret[] = { 0xb9, 0x0c, 0x03, 0x5c, 0xfe, 0x44, 0xce, 0x40, 0x0c, 0x66, 0xe3, 0xa0, 0x90, 0x32, 0x85, 0x6d, 0x56, 0x74, 0x49, 0xbd, 0x98, 0x8d, 0xbf, 0xa0, 0x52, 0xee, 0x8f, 0xf0, 0x8b, 0xd0, 0x47, 0xc2, 0x94, 0xb7, 0xbe, 0x90, 0xb2, 0x8b, 0xa8, 0x90, 0xaf, 0x46, 0x1b, 0xaa, 0xba, 0xd2, 0xcb, 0x0e, 0x31, 0x1a, 0x12, 0xe6, 0xa2, 0xc5, 0x93, 0x3d, }; static const wycheproof_xdh_test xdh_wei448_3471 = { .name = "xdh_wei448_3471", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3471_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3471_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3471_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 377 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3472 for XDH, tcId is 378 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3472_peerpubkey[] = { 0xf2, 0xf5, 0xf2, 0xc7, 0xc6, 0xe5, 0x79, 0x77, 0x67, 0x11, 0x59, 0x10, 0x82, 0xad, 0xf2, 0x9e, 0xa2, 0xec, 0x35, 0x96, 0xdb, 0x73, 0xa0, 0xda, 0xf8, 0x67, 0x0a, 0x4f, 0xab, 0x96, 0x0f, 0x74, 0xa4, 0x8e, 0xb3, 0xd3, 0xab, 0x6d, 0x6e, 0x1e, 0xa9, 0x49, 0x71, 0x80, 0x9f, 0x42, 0xb8, 0x38, 0x72, 0x8e, 0xc9, 0x9e, 0xd4, 0xe8, 0xa9, 0xaa, }; static const unsigned char xdh_wei448_3472_privkey[] = { 0xfc, 0x9d, 0xee, 0x93, 0x89, 0x06, 0x11, 0xc1, 0x15, 0x21, 0xce, 0x1f, 0x22, 0x7a, 0x66, 0xb4, 0xab, 0xd8, 0x05, 0x7c, 0x76, 0xff, 0x83, 0x82, 0x78, 0xc9, 0xa6, 0x28, 0xe4, 0x46, 0xfc, 0x20, 0xc3, 0xcd, 0xc3, 0x85, 0x61, 0x2e, 0x84, 0xd2, 0xe4, 0x70, 0xbf, 0xf8, 0x0e, 0xef, 0x57, 0x05, 0x14, 0x59, 0x5b, 0x35, 0xbc, 0x1a, 0x13, 0xe6, }; static const unsigned char xdh_wei448_3472_sharedsecret[] = { 0x3b, 0x80, 0x35, 0xf4, 0x81, 0x6c, 0xce, 0x9a, 0xdf, 0xfa, 0x75, 0x50, 0x82, 0x51, 0x96, 0x84, 0x06, 0x25, 0x29, 0xe5, 0x07, 0x46, 0x66, 0xf6, 0xc3, 0x19, 0x5a, 0xf6, 0x26, 0xb7, 0x34, 0xdd, 0x3a, 0x9c, 0xc7, 0xfd, 0xdf, 0xd0, 0x10, 0xbf, 0xb9, 0x00, 0xe9, 0x59, 0x29, 0x29, 0xa6, 0xc8, 0x72, 0x5d, 0x60, 0xdf, 0x6f, 0xcc, 0xbe, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3472 = { .name = "xdh_wei448_3472", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3472_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3472_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3472_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 378 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3473 for XDH, tcId is 379 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3473_peerpubkey[] = { 0x6c, 0xef, 0x89, 0x65, 0x3c, 0xcc, 0x19, 0x99, 0xa5, 0x98, 0x0a, 0x53, 0x7a, 0x2d, 0xa8, 0x26, 0xdd, 0x9d, 0xd0, 0xa3, 0xba, 0x4a, 0xa3, 0xd4, 0x0b, 0x53, 0xd4, 0xe2, 0x1e, 0xa7, 0x44, 0xb1, 0xe9, 0x89, 0x30, 0x79, 0x2b, 0x34, 0xd7, 0x4b, 0x7e, 0x81, 0x7f, 0x15, 0xbb, 0x2c, 0x06, 0x6f, 0x40, 0xbb, 0xab, 0x05, 0x7a, 0xac, 0x9a, 0x40, }; static const unsigned char xdh_wei448_3473_privkey[] = { 0xd8, 0xe1, 0x3c, 0x43, 0xed, 0x11, 0x43, 0x13, 0xd2, 0x3c, 0x04, 0xe5, 0x12, 0xad, 0x78, 0x20, 0x30, 0xcf, 0x65, 0xaa, 0x10, 0xbe, 0x0f, 0x43, 0x05, 0x03, 0x91, 0xe3, 0xfe, 0x2e, 0x3a, 0x55, 0x69, 0x7d, 0x24, 0x58, 0xff, 0xec, 0x4c, 0x8f, 0x66, 0x41, 0x4f, 0x69, 0xd9, 0x6f, 0x72, 0x5e, 0xe2, 0x37, 0xe8, 0xb7, 0x12, 0x54, 0x5c, 0xe4, }; static const unsigned char xdh_wei448_3473_sharedsecret[] = { 0xe6, 0x26, 0x59, 0x62, 0x59, 0x1d, 0x6a, 0xf3, 0x76, 0x1e, 0xc7, 0xea, 0xfb, 0x52, 0x2b, 0x0e, 0x1e, 0x49, 0x3e, 0x6d, 0xb8, 0xae, 0x41, 0xff, 0xeb, 0x89, 0xb9, 0xa0, 0xa4, 0xe8, 0xc7, 0x1a, 0x87, 0x29, 0xa7, 0xe2, 0x4e, 0xfd, 0x41, 0x3a, 0x18, 0x17, 0x8c, 0xf0, 0x6d, 0xd4, 0x0d, 0xf4, 0xde, 0x7e, 0xcd, 0x39, 0x7f, 0x00, 0xb6, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_3473 = { .name = "xdh_wei448_3473", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3473_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3473_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3473_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 379 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3474 for XDH, tcId is 380 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3474_peerpubkey[] = { 0x19, 0xe5, 0x81, 0xec, 0xc7, 0x9d, 0x67, 0xd1, 0x56, 0x90, 0x89, 0x3a, 0xe6, 0x76, 0x39, 0xa6, 0x8e, 0x66, 0xb9, 0x25, 0x26, 0x77, 0xc8, 0x9a, 0xa6, 0x6b, 0x57, 0xd9, 0x69, 0xcd, 0xbf, 0x99, 0xec, 0x66, 0xec, 0x96, 0x4c, 0x02, 0x5a, 0xef, 0xa0, 0x81, 0x7f, 0xcf, 0xb7, 0x68, 0x9f, 0xb4, 0x77, 0x05, 0x51, 0x29, 0xe7, 0x7c, 0xe8, 0x92, }; static const unsigned char xdh_wei448_3474_privkey[] = { 0x94, 0x6e, 0x8d, 0x97, 0x47, 0x43, 0x26, 0xca, 0x14, 0xb1, 0xf8, 0x5b, 0x64, 0xfb, 0x22, 0xf7, 0xf6, 0xae, 0xec, 0xe2, 0x75, 0x9b, 0xfe, 0xc0, 0x33, 0x7d, 0x80, 0xab, 0xb8, 0x98, 0xd8, 0x57, 0xf9, 0xda, 0x52, 0x84, 0xff, 0x68, 0x8c, 0xec, 0x5e, 0x5d, 0xc9, 0x62, 0xeb, 0x01, 0x1f, 0x42, 0xd1, 0x57, 0x71, 0xc1, 0xaa, 0x89, 0xc4, 0xea, }; static const unsigned char xdh_wei448_3474_sharedsecret[] = { 0x33, 0x19, 0x0b, 0x5c, 0xd0, 0x3a, 0x49, 0x6f, 0xa9, 0xfb, 0xe8, 0x3f, 0x0d, 0x6c, 0x4a, 0x06, 0xe1, 0xf7, 0xc0, 0x3a, 0xb6, 0xb3, 0xf4, 0x1e, 0x83, 0x6c, 0x25, 0x20, 0xaf, 0x79, 0xd1, 0x5c, 0x8e, 0xd3, 0x64, 0xe2, 0x7d, 0x85, 0x44, 0x6d, 0x87, 0x4d, 0x08, 0x98, 0xee, 0xc5, 0xb9, 0xa5, 0xb0, 0xd7, 0x81, 0x17, 0x6c, 0xa6, 0xc3, 0x35, }; static const wycheproof_xdh_test xdh_wei448_3474 = { .name = "xdh_wei448_3474", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3474_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3474_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3474_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 380 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3475 for XDH, tcId is 381 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3475_peerpubkey[] = { 0x13, 0x98, 0x9f, 0x93, 0x44, 0xc1, 0x10, 0xfb, 0x0a, 0x21, 0x6a, 0x23, 0x37, 0xc5, 0x3a, 0xde, 0xd3, 0x39, 0xd8, 0x60, 0x01, 0xe5, 0xc0, 0x0f, 0xc8, 0x83, 0x31, 0x34, 0x99, 0xb4, 0xc1, 0x17, 0x48, 0x7f, 0xf4, 0x9f, 0xcd, 0xa1, 0xc3, 0x6a, 0xc0, 0x80, 0xb2, 0xa5, 0xed, 0xf0, 0xe6, 0x28, 0x26, 0xce, 0x01, 0x6b, 0x7b, 0x68, 0xf6, 0xa0, }; static const unsigned char xdh_wei448_3475_privkey[] = { 0xcc, 0xb9, 0xda, 0x3c, 0x63, 0xe1, 0xed, 0xc2, 0x88, 0x4e, 0x19, 0xd8, 0xd1, 0x04, 0x0d, 0x9d, 0xd6, 0x82, 0x90, 0xd2, 0xec, 0xfc, 0xe7, 0xf9, 0xb1, 0xcd, 0x5c, 0xb1, 0x3d, 0xc3, 0xa5, 0xf3, 0x5d, 0x15, 0x0b, 0x39, 0x95, 0xdd, 0x76, 0xa1, 0x36, 0x33, 0xbe, 0xed, 0x2f, 0xed, 0xed, 0x76, 0x4b, 0x78, 0x73, 0xaf, 0xb6, 0x5c, 0xf6, 0xee, }; static const unsigned char xdh_wei448_3475_sharedsecret[] = { 0xdc, 0x25, 0x69, 0x06, 0xd9, 0x5f, 0x81, 0xe3, 0x0d, 0x47, 0x72, 0xc7, 0xaa, 0xd6, 0xb1, 0x4e, 0xc1, 0xe3, 0x1e, 0x62, 0x17, 0x31, 0x9a, 0x91, 0xaa, 0xc3, 0xbe, 0x8a, 0x36, 0x0e, 0x5d, 0x9a, 0x7e, 0x05, 0x15, 0xc6, 0x93, 0xfd, 0x99, 0x9f, 0x28, 0x88, 0x3d, 0x4b, 0xf8, 0xa8, 0xc6, 0x71, 0x66, 0x8a, 0xce, 0x30, 0xb7, 0x20, 0x8c, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_3475 = { .name = "xdh_wei448_3475", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3475_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3475_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3475_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 381 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3476 for XDH, tcId is 382 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3476_peerpubkey[] = { 0x92, 0x91, 0xf9, 0x26, 0x89, 0x0a, 0xa8, 0x69, 0x69, 0x97, 0x8c, 0x09, 0xe9, 0xec, 0xad, 0x96, 0x86, 0x65, 0x7f, 0x45, 0x1c, 0x93, 0x1e, 0xbe, 0x37, 0x49, 0x8d, 0xcb, 0x0e, 0x02, 0x80, 0x41, 0xe8, 0x44, 0x7f, 0x91, 0xfd, 0x87, 0x34, 0x77, 0xb4, 0x57, 0xcb, 0xd9, 0xa3, 0x93, 0x2f, 0xb2, 0x87, 0xf9, 0x45, 0xfe, 0x72, 0x13, 0xfc, 0xa4, }; static const unsigned char xdh_wei448_3476_privkey[] = { 0xf8, 0x7e, 0x2a, 0x3f, 0xea, 0x7e, 0x8a, 0xd5, 0xa3, 0xd2, 0x5b, 0xf6, 0x6d, 0xc3, 0x12, 0x36, 0x27, 0x9b, 0xdb, 0xc5, 0x9b, 0xf6, 0x1c, 0x47, 0x93, 0x0c, 0x49, 0x56, 0xf2, 0x2e, 0x02, 0xc0, 0x76, 0x7e, 0x55, 0xd1, 0xdd, 0xf3, 0x79, 0xce, 0x4e, 0x2d, 0x9c, 0x6b, 0xd3, 0x8a, 0xc6, 0x9e, 0x02, 0x4b, 0x2d, 0x9c, 0xfb, 0x18, 0x16, 0xe9, }; static const unsigned char xdh_wei448_3476_sharedsecret[] = { 0x67, 0x93, 0x1b, 0x5e, 0x94, 0x7f, 0x47, 0x9c, 0x05, 0xb0, 0x6f, 0x5d, 0x25, 0x6e, 0xa9, 0xe3, 0x55, 0x95, 0x06, 0x00, 0xc8, 0x04, 0xd9, 0xac, 0xca, 0x2e, 0x1a, 0x18, 0xc7, 0x1e, 0x54, 0xf4, 0x40, 0xaa, 0x5b, 0x1c, 0xaa, 0xae, 0x40, 0xda, 0x81, 0x52, 0x88, 0x84, 0xed, 0xd7, 0x1c, 0x59, 0x32, 0x98, 0x1b, 0x03, 0x98, 0x62, 0xe6, 0xde, }; static const wycheproof_xdh_test xdh_wei448_3476 = { .name = "xdh_wei448_3476", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3476_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3476_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3476_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 382 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3477 for XDH, tcId is 383 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3477_peerpubkey[] = { 0xe7, 0x89, 0x23, 0x79, 0x43, 0xcb, 0xb6, 0xb6, 0x38, 0xa2, 0xc9, 0x0d, 0x1c, 0x66, 0xb9, 0x28, 0x68, 0x50, 0xa6, 0xb7, 0xb4, 0x1e, 0x43, 0xc8, 0xa6, 0x52, 0x5d, 0x98, 0x04, 0x26, 0x48, 0xfe, 0x16, 0x2b, 0x61, 0xe1, 0x99, 0xba, 0x04, 0x1a, 0x95, 0xe7, 0x1d, 0x79, 0xb1, 0xbf, 0xb8, 0x11, 0x9b, 0x35, 0xa1, 0x44, 0xec, 0xea, 0xc5, 0xf4, }; static const unsigned char xdh_wei448_3477_privkey[] = { 0x78, 0xeb, 0xd7, 0x26, 0x1f, 0x71, 0xc5, 0x3b, 0x04, 0xae, 0x01, 0x87, 0xa6, 0x6c, 0x83, 0x33, 0x67, 0x38, 0x3e, 0x8c, 0x80, 0x2c, 0xf6, 0x55, 0xb2, 0x74, 0xb5, 0xbd, 0x7c, 0x5c, 0x07, 0x28, 0x72, 0xa3, 0xe5, 0xd2, 0xf7, 0xc1, 0x34, 0x47, 0x53, 0xc8, 0xec, 0xc6, 0x8b, 0xc3, 0xfc, 0xea, 0xec, 0xca, 0xca, 0xfd, 0x72, 0x91, 0x39, 0xf0, }; static const unsigned char xdh_wei448_3477_sharedsecret[] = { 0x6f, 0x8f, 0xa9, 0xae, 0xdd, 0x0e, 0x3d, 0xec, 0x31, 0x88, 0x9e, 0x77, 0x51, 0xb9, 0x37, 0x8b, 0xcc, 0x1b, 0xf2, 0xd7, 0xbb, 0x08, 0x22, 0xfe, 0x5d, 0x76, 0x36, 0x10, 0xee, 0x41, 0xd3, 0xd3, 0xe8, 0xb4, 0x04, 0x44, 0x6f, 0x45, 0x6a, 0xf9, 0xe9, 0xed, 0x1c, 0x83, 0x1e, 0x84, 0x62, 0xee, 0x1a, 0xb2, 0x4f, 0x77, 0x18, 0xc6, 0xc9, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3477 = { .name = "xdh_wei448_3477", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3477_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3477_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3477_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 383 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3478 for XDH, tcId is 384 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3478_peerpubkey[] = { 0x13, 0x32, 0xb9, 0xb6, 0x78, 0x2e, 0x4c, 0x90, 0x03, 0xc7, 0xfa, 0x28, 0x3b, 0xda, 0x21, 0x46, 0x83, 0x72, 0xb2, 0x52, 0x1e, 0xe7, 0xfd, 0xe4, 0x78, 0x5d, 0xde, 0x62, 0x54, 0x7a, 0x98, 0x4e, 0x95, 0x64, 0xb8, 0xcb, 0x8a, 0x88, 0x9c, 0x9f, 0x18, 0xaf, 0xd1, 0xa2, 0xaa, 0x41, 0xa8, 0x8a, 0xfc, 0x14, 0x43, 0x6b, 0x1f, 0xe0, 0x2d, 0x69, }; static const unsigned char xdh_wei448_3478_privkey[] = { 0xe0, 0xce, 0x4d, 0xea, 0xa0, 0x83, 0xdc, 0x1c, 0xa7, 0x92, 0x7b, 0xb9, 0x1f, 0x6a, 0x76, 0xe5, 0x6e, 0x3b, 0x17, 0xe9, 0x72, 0x4d, 0xc5, 0x53, 0x4c, 0xd9, 0x5e, 0x53, 0x52, 0x21, 0xcc, 0xf2, 0x30, 0xe6, 0x51, 0x10, 0xda, 0x23, 0x75, 0x77, 0x28, 0xd8, 0x0c, 0x25, 0x84, 0x3b, 0x6d, 0xfe, 0x02, 0x2e, 0xa7, 0xe6, 0x6b, 0xed, 0x39, 0xe8, }; static const unsigned char xdh_wei448_3478_sharedsecret[] = { 0x4e, 0x35, 0xa6, 0x77, 0xd7, 0x5f, 0x81, 0x40, 0x80, 0x42, 0x69, 0x54, 0xa3, 0x1b, 0x7d, 0x91, 0xc3, 0x6c, 0x58, 0x36, 0x52, 0x4e, 0xee, 0xe4, 0x13, 0x8c, 0x7c, 0x42, 0x15, 0xbb, 0x86, 0x65, 0x1a, 0x40, 0x81, 0xf7, 0x57, 0x8b, 0x70, 0x8a, 0xaf, 0x53, 0x85, 0xe8, 0xf1, 0x95, 0x07, 0xa0, 0x3a, 0xf6, 0x49, 0xf9, 0x17, 0x99, 0x08, 0xca, }; static const wycheproof_xdh_test xdh_wei448_3478 = { .name = "xdh_wei448_3478", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3478_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3478_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3478_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 384 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3479 for XDH, tcId is 385 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3479_peerpubkey[] = { 0xbd, 0xd1, 0x80, 0xb5, 0xf6, 0xbb, 0x4f, 0xdc, 0xb2, 0x28, 0x8e, 0x45, 0x93, 0x8f, 0x0b, 0xfc, 0x5f, 0x9d, 0xa2, 0x58, 0x6a, 0xa8, 0xd5, 0x0d, 0x77, 0x1e, 0xbd, 0x50, 0xf5, 0x71, 0xd0, 0xea, 0xbb, 0xfe, 0xae, 0xa7, 0x7a, 0x0b, 0x6c, 0xbc, 0xd7, 0x15, 0xab, 0x56, 0x35, 0xd6, 0xc6, 0x22, 0xab, 0x2f, 0x6a, 0x68, 0x80, 0x96, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_3479_privkey[] = { 0x20, 0x40, 0x9b, 0x40, 0x15, 0xd8, 0x73, 0x1f, 0x86, 0xbe, 0x47, 0xdb, 0xc0, 0x7d, 0x26, 0x87, 0xf0, 0x9a, 0x38, 0x01, 0x39, 0x6a, 0xfd, 0x94, 0xcf, 0x39, 0xe6, 0xf7, 0x46, 0x25, 0x35, 0xd7, 0x94, 0x0e, 0xcb, 0xbc, 0xf8, 0x58, 0xb3, 0xd9, 0x8e, 0xc0, 0x95, 0xb4, 0xfd, 0x52, 0x54, 0x81, 0xb4, 0xd3, 0x2d, 0xc8, 0xb8, 0x3a, 0x76, 0xe4, }; static const unsigned char xdh_wei448_3479_sharedsecret[] = { 0xaa, 0x2a, 0xeb, 0x87, 0x18, 0x6d, 0x27, 0x52, 0x89, 0xb4, 0x73, 0x54, 0x03, 0xc3, 0xb0, 0xf4, 0x13, 0x09, 0xa8, 0x6f, 0xcb, 0x26, 0xf9, 0xb9, 0x12, 0x16, 0x0a, 0xe5, 0x5b, 0xeb, 0xe8, 0x85, 0x4b, 0x63, 0x3f, 0xe3, 0x57, 0x84, 0x63, 0xec, 0x1e, 0x74, 0x80, 0x2d, 0xeb, 0x1d, 0x76, 0x1f, 0x77, 0x23, 0x71, 0xbf, 0x6d, 0xf2, 0x4d, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3479 = { .name = "xdh_wei448_3479", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3479_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3479_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3479_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 385 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3480 for XDH, tcId is 386 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3480_peerpubkey[] = { 0xd9, 0x26, 0x35, 0xc4, 0x3c, 0x6b, 0x8e, 0xe5, 0x2f, 0xc0, 0x30, 0x1c, 0x76, 0x01, 0xee, 0x9d, 0xcb, 0x10, 0x71, 0xf2, 0xf0, 0x51, 0x55, 0xc3, 0x13, 0xcc, 0x3a, 0x5e, 0xa2, 0xa0, 0x81, 0xbd, 0xfc, 0xd6, 0x1c, 0xde, 0x45, 0xb3, 0x94, 0x01, 0x7c, 0xa3, 0x2c, 0xc5, 0x14, 0xc4, 0x66, 0x5a, 0x5a, 0xc9, 0xc6, 0xcf, 0x5c, 0x29, 0xc2, 0xe6, }; static const unsigned char xdh_wei448_3480_privkey[] = { 0x6c, 0x4b, 0xaf, 0xc2, 0x7a, 0x17, 0x46, 0xea, 0xf9, 0x19, 0xe2, 0x57, 0xb6, 0xeb, 0xc6, 0x17, 0x75, 0x37, 0x8f, 0xc4, 0x08, 0x24, 0x52, 0xf4, 0x93, 0x70, 0x09, 0x68, 0x51, 0x3e, 0x17, 0x57, 0x8d, 0x9f, 0x1e, 0xe7, 0x9e, 0x7a, 0x8c, 0x52, 0x9a, 0xb9, 0x70, 0x21, 0x7a, 0xbc, 0x1c, 0x4b, 0xb5, 0xf4, 0xd1, 0x6c, 0x0a, 0x3a, 0x3b, 0xf3, }; static const unsigned char xdh_wei448_3480_sharedsecret[] = { 0x3d, 0x2a, 0x86, 0x0f, 0xb7, 0xef, 0x56, 0xdf, 0xc8, 0x5a, 0x92, 0x24, 0xde, 0x7c, 0xf2, 0x6f, 0x09, 0xe7, 0x04, 0x38, 0x1a, 0x81, 0xe9, 0x9c, 0xc1, 0xb8, 0xb1, 0x71, 0xaa, 0x95, 0x3d, 0x20, 0x1c, 0x8c, 0x6a, 0x2f, 0xd2, 0xd9, 0xba, 0x08, 0xf2, 0x88, 0x31, 0xd4, 0x23, 0xc6, 0xb8, 0xe3, 0x31, 0xa5, 0xad, 0x12, 0xf0, 0x05, 0xfe, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_3480 = { .name = "xdh_wei448_3480", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3480_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3480_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3480_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 386 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3481 for XDH, tcId is 387 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3481_peerpubkey[] = { 0x89, 0x1b, 0x7d, 0x3d, 0x80, 0x11, 0x71, 0xc4, 0xc5, 0x83, 0x95, 0x2a, 0xa9, 0x3e, 0x29, 0x80, 0xed, 0x5e, 0x29, 0xc3, 0xbb, 0xaf, 0x82, 0x26, 0xd6, 0xf7, 0x9c, 0xb6, 0x86, 0x67, 0x90, 0x58, 0x04, 0x5f, 0xd5, 0x07, 0x57, 0xaa, 0x58, 0x82, 0x75, 0x3d, 0xa4, 0x74, 0x8f, 0xf1, 0x19, 0xf6, 0xe7, 0xeb, 0xd8, 0x92, 0xbe, 0x28, 0xd9, 0xf2, }; static const unsigned char xdh_wei448_3481_privkey[] = { 0x64, 0x4f, 0xf7, 0xf2, 0x64, 0xe2, 0x1d, 0x0a, 0x84, 0x65, 0xaf, 0x22, 0x40, 0x2b, 0xa6, 0xb7, 0x35, 0x8c, 0x4c, 0x6c, 0xf2, 0x9d, 0x9a, 0xc8, 0x98, 0xce, 0x40, 0xf6, 0x6c, 0xc8, 0x60, 0xce, 0x48, 0xf1, 0xea, 0xf8, 0x6d, 0xc5, 0x44, 0x61, 0xed, 0x06, 0xf4, 0x8b, 0x3e, 0x5d, 0xae, 0x17, 0x2d, 0x21, 0x20, 0x12, 0x51, 0x47, 0x3c, 0xec, }; static const unsigned char xdh_wei448_3481_sharedsecret[] = { 0xce, 0x34, 0xa2, 0x34, 0x63, 0x77, 0x27, 0x43, 0x04, 0xdf, 0xde, 0xcd, 0x29, 0xe3, 0xd9, 0x85, 0xdb, 0x46, 0x08, 0x85, 0xad, 0x09, 0xf9, 0xaf, 0x4c, 0x22, 0xd9, 0x8f, 0xef, 0x11, 0x71, 0xc4, 0x1b, 0xdb, 0xba, 0xd0, 0xf2, 0x18, 0xb9, 0x8a, 0x9f, 0xc5, 0x73, 0x36, 0x97, 0x79, 0xc0, 0x62, 0xbb, 0x1a, 0xe3, 0x96, 0xd3, 0xe4, 0x1e, 0x81, }; static const wycheproof_xdh_test xdh_wei448_3481 = { .name = "xdh_wei448_3481", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3481_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3481_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3481_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 387 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3482 for XDH, tcId is 388 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3482_peerpubkey[] = { 0x6a, 0x69, 0x95, 0xb0, 0xdd, 0x8f, 0x5e, 0x3f, 0x7f, 0x1a, 0xbe, 0x7e, 0x4f, 0x60, 0xbc, 0xad, 0xe6, 0x89, 0x93, 0x3f, 0x17, 0xc3, 0xd2, 0xf7, 0xf9, 0x39, 0x88, 0x88, 0x4e, 0x1b, 0x73, 0xb7, 0x8f, 0x6f, 0x47, 0x1d, 0x8a, 0x71, 0xe4, 0x2a, 0xce, 0x69, 0x79, 0xa4, 0xe8, 0x48, 0xf6, 0x77, 0x9b, 0xab, 0xa0, 0xff, 0x27, 0x90, 0xc9, 0x7f, }; static const unsigned char xdh_wei448_3482_privkey[] = { 0x98, 0x13, 0x04, 0x32, 0x48, 0xa6, 0x11, 0xef, 0xa9, 0xc0, 0x05, 0xfe, 0x3a, 0xda, 0x01, 0xa4, 0x1f, 0x15, 0x68, 0x49, 0x0f, 0x1f, 0x62, 0x79, 0x1e, 0xf8, 0x41, 0x4c, 0x35, 0x74, 0xd8, 0xf5, 0x26, 0xde, 0x49, 0x1e, 0xc2, 0x5c, 0xd2, 0x62, 0x81, 0xb8, 0x4d, 0xe2, 0x22, 0x2a, 0x4c, 0xc8, 0x79, 0xd1, 0xb4, 0xdf, 0x56, 0x74, 0xe2, 0xf2, }; static const unsigned char xdh_wei448_3482_sharedsecret[] = { 0x4d, 0x43, 0x25, 0xab, 0xa1, 0xd4, 0x5a, 0x6d, 0xa8, 0x5b, 0x2c, 0x27, 0xb4, 0xad, 0x6e, 0x65, 0xde, 0x71, 0x0f, 0x26, 0x4d, 0x5b, 0x5d, 0x0f, 0x24, 0x14, 0x77, 0x49, 0xfe, 0x33, 0x51, 0x00, 0x47, 0x60, 0xb0, 0xe3, 0x8c, 0x82, 0xdc, 0x44, 0x78, 0xc4, 0xdd, 0x74, 0x02, 0xc6, 0xe2, 0xe0, 0x59, 0xd5, 0x0e, 0xf6, 0x54, 0xef, 0x7a, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_3482 = { .name = "xdh_wei448_3482", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3482_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3482_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3482_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 388 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3483 for XDH, tcId is 389 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3483_peerpubkey[] = { 0x00, 0xb9, 0x57, 0x35, 0x08, 0x52, 0xc5, 0xb1, 0xdd, 0x62, 0x92, 0x21, 0xe4, 0x3f, 0x90, 0xce, 0x3c, 0xd1, 0x76, 0x1e, 0x59, 0x1e, 0x4b, 0x75, 0x44, 0xdb, 0x5d, 0x23, 0xca, 0x54, 0xca, 0x49, 0x90, 0xdf, 0xaf, 0x22, 0x70, 0x83, 0xe9, 0xcf, 0x61, 0x3e, 0x3c, 0x6a, 0xb7, 0x0d, 0x31, 0x67, 0x91, 0x12, 0x92, 0x71, 0x6d, 0x10, 0x48, 0xa9, }; static const unsigned char xdh_wei448_3483_privkey[] = { 0x74, 0x11, 0xca, 0x7f, 0x71, 0x79, 0xef, 0x67, 0x3a, 0x6e, 0x2a, 0xcb, 0x8c, 0x61, 0x4f, 0x8d, 0xcf, 0x19, 0xf5, 0x64, 0x63, 0x16, 0x65, 0x14, 0x1f, 0x69, 0xec, 0xa5, 0xe1, 0xe1, 0xe8, 0xc8, 0x28, 0x73, 0xd6, 0x57, 0xa2, 0x63, 0xf0, 0x2c, 0xfb, 0xa3, 0xc5, 0x06, 0xe7, 0x03, 0x8d, 0xb4, 0x65, 0xea, 0x28, 0xbd, 0x6e, 0x1f, 0xb7, 0xff, }; static const unsigned char xdh_wei448_3483_sharedsecret[] = { 0xe1, 0x3f, 0x6c, 0x6b, 0x4b, 0x46, 0x94, 0x46, 0x71, 0x29, 0x7e, 0x50, 0x92, 0x65, 0x21, 0xf2, 0x2a, 0xc1, 0x73, 0xc9, 0x05, 0x6d, 0x94, 0x10, 0x64, 0xcd, 0x2a, 0xa6, 0x05, 0x21, 0x38, 0x7d, 0x06, 0x08, 0xf3, 0xba, 0x2e, 0xbc, 0xe9, 0x5c, 0xf2, 0x6e, 0x9b, 0x06, 0x0e, 0x67, 0x72, 0x58, 0x55, 0xc7, 0xb5, 0xb9, 0xea, 0x35, 0x24, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_3483 = { .name = "xdh_wei448_3483", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3483_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3483_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3483_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 389 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3484 for XDH, tcId is 390 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3484_peerpubkey[] = { 0x9d, 0x65, 0xe5, 0x0f, 0xf2, 0xf1, 0xb0, 0x71, 0x35, 0x75, 0xcc, 0x01, 0xbd, 0x43, 0xfb, 0x35, 0x5e, 0xe9, 0xd3, 0x74, 0x2d, 0x1e, 0xd3, 0x17, 0xdf, 0x8e, 0x4d, 0x32, 0x42, 0x58, 0xdd, 0x0b, 0xeb, 0xf0, 0x78, 0x33, 0xa9, 0xf0, 0x0d, 0x5e, 0x4c, 0xfe, 0xe7, 0x46, 0x9e, 0x44, 0x60, 0x1d, 0x52, 0x70, 0x09, 0x06, 0x39, 0x41, 0x96, 0xb1, }; static const unsigned char xdh_wei448_3484_privkey[] = { 0x60, 0xb8, 0x2b, 0x40, 0x07, 0xd7, 0x0e, 0x09, 0x12, 0x52, 0x73, 0x44, 0xc1, 0x86, 0x33, 0x0f, 0x2a, 0xb0, 0x27, 0x7a, 0xa6, 0x0a, 0x1d, 0xae, 0x65, 0x60, 0xc4, 0x19, 0xb0, 0x46, 0x13, 0xbf, 0xf4, 0x30, 0x2a, 0xe8, 0x2d, 0x01, 0x96, 0xc0, 0xaa, 0x9b, 0xf5, 0x40, 0xfa, 0xe1, 0x66, 0xb8, 0xd6, 0x6f, 0xdd, 0x6a, 0xa2, 0x46, 0x50, 0xf6, }; static const unsigned char xdh_wei448_3484_sharedsecret[] = { 0x04, 0xe5, 0xb0, 0x68, 0x04, 0x8b, 0x70, 0x44, 0x6a, 0x43, 0x5b, 0xbb, 0x45, 0xb0, 0x33, 0x8f, 0x74, 0x8e, 0xfe, 0x5e, 0xf1, 0x0d, 0x43, 0x67, 0x70, 0xeb, 0x27, 0xd2, 0x91, 0xcb, 0xbc, 0x5b, 0x45, 0x25, 0x8d, 0xeb, 0xa0, 0xfe, 0xe1, 0x21, 0x40, 0x1d, 0xd3, 0x6a, 0x13, 0x49, 0xe0, 0x76, 0xb9, 0xc1, 0xb2, 0x7d, 0x3b, 0x8a, 0x46, 0x07, }; static const wycheproof_xdh_test xdh_wei448_3484 = { .name = "xdh_wei448_3484", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3484_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3484_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3484_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 390 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3485 for XDH, tcId is 391 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3485_peerpubkey[] = { 0xbb, 0xf7, 0x50, 0x4e, 0xb0, 0xa3, 0x4c, 0x8e, 0xcc, 0x11, 0x04, 0x30, 0x1c, 0x81, 0xb4, 0x91, 0xb3, 0xf7, 0xb5, 0x64, 0xa5, 0xcb, 0x69, 0x16, 0xbc, 0xdd, 0x9c, 0x8f, 0xb0, 0x88, 0xe7, 0x5e, 0x48, 0xdf, 0x31, 0x98, 0xbd, 0xad, 0x7f, 0x2c, 0xe1, 0xc6, 0x8a, 0xcc, 0x98, 0x97, 0xf0, 0x02, 0x2a, 0x86, 0xb9, 0x6a, 0x67, 0xf4, 0xd6, 0xc8, }; static const unsigned char xdh_wei448_3485_privkey[] = { 0x94, 0xf8, 0x33, 0x1a, 0x59, 0x95, 0x8a, 0xb4, 0xf0, 0xb9, 0x7d, 0xce, 0x96, 0xb0, 0x05, 0x30, 0x1a, 0xa4, 0x81, 0x96, 0xa0, 0xd5, 0x90, 0x87, 0x58, 0xc3, 0xea, 0x6d, 0x62, 0x5c, 0x76, 0xe9, 0x88, 0x47, 0x93, 0x7a, 0x6f, 0x79, 0x55, 0x80, 0x3f, 0x6c, 0xdc, 0xc9, 0xea, 0x3e, 0x62, 0xde, 0x8e, 0xa0, 0xf3, 0x0a, 0x1c, 0xfc, 0xc3, 0xe4, }; static const unsigned char xdh_wei448_3485_sharedsecret[] = { 0x36, 0xe2, 0x06, 0x5d, 0xce, 0x60, 0x37, 0xb3, 0x34, 0x12, 0x60, 0xb4, 0x48, 0x76, 0x36, 0xb9, 0x46, 0x06, 0x88, 0x73, 0x1c, 0xfb, 0x85, 0xa3, 0x95, 0x18, 0x73, 0xb2, 0x7e, 0x2f, 0x0f, 0xea, 0x5e, 0xe4, 0xd1, 0xaa, 0xf7, 0x5c, 0xdf, 0x97, 0x12, 0xef, 0xf7, 0x01, 0x82, 0x34, 0x27, 0x11, 0x11, 0x41, 0x70, 0x2d, 0xd6, 0x04, 0xd6, 0x46, }; static const wycheproof_xdh_test xdh_wei448_3485 = { .name = "xdh_wei448_3485", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3485_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3485_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3485_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 391 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3486 for XDH, tcId is 392 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3486_peerpubkey[] = { 0x84, 0x36, 0xa6, 0xa8, 0xe8, 0xf1, 0xcb, 0x2d, 0x0a, 0xa5, 0x6f, 0x0b, 0x03, 0xde, 0xf5, 0x08, 0xe2, 0x3d, 0x33, 0xc2, 0xd3, 0xa3, 0x44, 0x5c, 0x82, 0xc8, 0x19, 0x77, 0xd0, 0xca, 0xca, 0xeb, 0xae, 0x19, 0x3c, 0x86, 0x73, 0x21, 0xcd, 0xdd, 0x9b, 0xb8, 0x6e, 0x0b, 0x50, 0x4a, 0x1f, 0x59, 0x2a, 0x46, 0xea, 0x8d, 0xc4, 0x20, 0xa1, 0x00, }; static const unsigned char xdh_wei448_3486_privkey[] = { 0x1c, 0x3c, 0x5b, 0xda, 0x03, 0x83, 0xf0, 0xbe, 0x2a, 0x78, 0xd1, 0xac, 0x08, 0x84, 0x33, 0x04, 0x3c, 0x51, 0x2c, 0xd4, 0xe4, 0xa5, 0xa8, 0x0a, 0x18, 0xd3, 0x18, 0x3e, 0x19, 0x88, 0xdf, 0x54, 0x85, 0xc8, 0xbe, 0xca, 0x04, 0xa7, 0xd4, 0x4b, 0xed, 0xec, 0x10, 0x27, 0x40, 0xb5, 0xde, 0x33, 0x3e, 0x1a, 0xd6, 0xe9, 0xbc, 0x63, 0xa1, 0x87, }; static const unsigned char xdh_wei448_3486_sharedsecret[] = { 0xb1, 0x96, 0xbb, 0x34, 0xea, 0x5e, 0x74, 0xb7, 0x4c, 0xaa, 0x26, 0x0e, 0x3b, 0x2c, 0x8a, 0x11, 0x0c, 0x22, 0x79, 0xaa, 0x39, 0x37, 0x82, 0x6b, 0x88, 0xbe, 0x58, 0x26, 0xb7, 0xe0, 0xa6, 0xe8, 0xf5, 0xa1, 0x15, 0x0b, 0x7c, 0x13, 0x53, 0xde, 0x1d, 0xf4, 0x7c, 0xe7, 0x27, 0xa2, 0x2f, 0xc9, 0xf4, 0x9c, 0xaa, 0xce, 0x01, 0x0a, 0x9c, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_3486 = { .name = "xdh_wei448_3486", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3486_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3486_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3486_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 392 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3487 for XDH, tcId is 393 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3487_peerpubkey[] = { 0xe6, 0x7c, 0x5f, 0x08, 0xd1, 0x7d, 0x2b, 0xea, 0x11, 0x7c, 0xc4, 0xde, 0xad, 0xac, 0x22, 0x4a, 0x1a, 0xc1, 0xb1, 0x1e, 0x8f, 0xc7, 0xe6, 0x4f, 0xee, 0xc7, 0xf0, 0x8d, 0x0a, 0x5c, 0x25, 0xe2, 0x79, 0x5f, 0x44, 0xfb, 0x97, 0x56, 0x0b, 0xc1, 0xb7, 0xd9, 0x17, 0xdd, 0x70, 0x36, 0xb7, 0x54, 0x7f, 0x6e, 0xd4, 0xe0, 0x0a, 0xb9, 0x98, 0x27, }; static const unsigned char xdh_wei448_3487_privkey[] = { 0x30, 0x48, 0x7a, 0xb4, 0x34, 0x5c, 0xec, 0xd5, 0x27, 0xa8, 0x4f, 0x47, 0x51, 0xb9, 0x0c, 0xba, 0x79, 0x34, 0x24, 0xac, 0xb2, 0x98, 0xaa, 0xd2, 0xcd, 0x86, 0x2d, 0x46, 0x16, 0x5b, 0x8a, 0xfc, 0xa3, 0x02, 0xd8, 0xef, 0xa4, 0x1e, 0x43, 0x85, 0x0c, 0xf5, 0x06, 0x06, 0x1d, 0x21, 0x13, 0xe6, 0x84, 0xd3, 0x6f, 0xdb, 0x04, 0x32, 0x35, 0x8a, }; static const unsigned char xdh_wei448_3487_sharedsecret[] = { 0x89, 0xbf, 0x0c, 0x9d, 0xee, 0x1b, 0xa6, 0xab, 0xad, 0x76, 0xc9, 0xa2, 0xd5, 0x21, 0x0b, 0x62, 0x01, 0xd4, 0xca, 0x34, 0x2a, 0x56, 0xf4, 0x74, 0x54, 0x5f, 0xab, 0x3e, 0x55, 0x2b, 0x50, 0xef, 0x11, 0xe2, 0x1a, 0xec, 0x0a, 0x53, 0xc0, 0x70, 0x23, 0x85, 0x21, 0x8c, 0x68, 0x11, 0x78, 0x1d, 0x31, 0xea, 0x0b, 0x22, 0x88, 0x7f, 0x04, 0x29, }; static const wycheproof_xdh_test xdh_wei448_3487 = { .name = "xdh_wei448_3487", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3487_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3487_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3487_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 393 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3488 for XDH, tcId is 394 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3488_peerpubkey[] = { 0x3e, 0xa6, 0x19, 0xf8, 0x92, 0x8c, 0xaa, 0x40, 0x38, 0x27, 0x58, 0x77, 0xbf, 0xd9, 0x06, 0xbd, 0x08, 0x3b, 0xd1, 0xdd, 0xbd, 0xdb, 0xed, 0xf6, 0xf3, 0xb1, 0x68, 0x29, 0x12, 0x9c, 0xb3, 0xbd, 0xb1, 0x2e, 0x15, 0x6b, 0x99, 0xb1, 0xfb, 0xe6, 0xb5, 0x99, 0xf3, 0xf3, 0xf0, 0xb3, 0x1a, 0xd5, 0x1b, 0x17, 0xb2, 0xfb, 0xb0, 0x48, 0x29, 0x6a, }; static const unsigned char xdh_wei448_3488_privkey[] = { 0xc4, 0x57, 0x27, 0xd6, 0x19, 0x0f, 0x88, 0xe4, 0x1d, 0x36, 0xbe, 0xc9, 0xf3, 0x2f, 0x41, 0xaa, 0xf2, 0x6a, 0x25, 0xc6, 0xfa, 0xfe, 0x8b, 0xa0, 0xc2, 0xd5, 0x30, 0x82, 0xe5, 0x89, 0xa6, 0xcc, 0x04, 0xa4, 0x6c, 0x2a, 0xfe, 0xcb, 0xa7, 0x22, 0x83, 0xe6, 0x08, 0xa1, 0x40, 0x01, 0xec, 0xa8, 0xaa, 0x16, 0x16, 0xa8, 0x0f, 0x7f, 0x14, 0x85, }; static const unsigned char xdh_wei448_3488_sharedsecret[] = { 0x55, 0x6e, 0xc0, 0x50, 0x8a, 0x58, 0xdc, 0xb9, 0xd1, 0x4f, 0x0b, 0x33, 0x01, 0x3a, 0xa7, 0xfd, 0x18, 0xf0, 0x31, 0x4f, 0x17, 0x67, 0x19, 0x64, 0xce, 0x91, 0x45, 0xf5, 0x5a, 0x61, 0x08, 0x89, 0x5f, 0x3b, 0xaf, 0x7b, 0x6c, 0x0d, 0x31, 0x3e, 0x35, 0xed, 0xfa, 0xa1, 0xfd, 0x4a, 0x61, 0x01, 0x56, 0xf8, 0xaf, 0x71, 0x5a, 0x3c, 0xb1, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3488 = { .name = "xdh_wei448_3488", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3488_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3488_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3488_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 394 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3489 for XDH, tcId is 395 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3489_peerpubkey[] = { 0x26, 0x5a, 0x93, 0x0b, 0x5d, 0x6f, 0xd6, 0x97, 0x7b, 0xc3, 0xec, 0x93, 0xc3, 0x02, 0x7c, 0xa9, 0x7a, 0x34, 0xb1, 0x2d, 0x43, 0xdc, 0xa8, 0x36, 0xc7, 0x97, 0x1a, 0xcc, 0x99, 0x6e, 0x0c, 0x9e, 0x25, 0x0b, 0xf0, 0x87, 0x4d, 0x1d, 0x64, 0x5b, 0x07, 0x23, 0x15, 0xaa, 0xc6, 0x1a, 0x95, 0x04, 0x17, 0x92, 0xcb, 0x55, 0x88, 0xb2, 0x9d, 0xbf, }; static const unsigned char xdh_wei448_3489_privkey[] = { 0x14, 0xf1, 0x41, 0xfb, 0xb1, 0x64, 0xd6, 0x70, 0xb9, 0x0a, 0x19, 0xc9, 0xd9, 0x70, 0xf8, 0x32, 0x7f, 0x21, 0x1e, 0x8e, 0xd8, 0x66, 0x06, 0x21, 0x08, 0x68, 0x37, 0x2c, 0x22, 0x69, 0xc8, 0x1b, 0x2b, 0x61, 0x50, 0x4b, 0x46, 0xf3, 0xf6, 0x55, 0x33, 0xef, 0x7a, 0xdb, 0x31, 0xd9, 0x7c, 0xa0, 0xdd, 0x52, 0x4b, 0x38, 0xb4, 0xdf, 0xf7, 0x8a, }; static const unsigned char xdh_wei448_3489_sharedsecret[] = { 0x4b, 0x0a, 0xf1, 0xcc, 0x0b, 0x4e, 0xe4, 0x32, 0x2c, 0x8a, 0x23, 0x98, 0x9f, 0x74, 0xd6, 0x62, 0x51, 0x94, 0xd1, 0xcc, 0x81, 0xe0, 0xa9, 0x1c, 0x68, 0x22, 0x4f, 0x07, 0x8e, 0xff, 0x2a, 0x7d, 0xef, 0x5f, 0x57, 0xd5, 0x39, 0x86, 0x93, 0x2b, 0xb4, 0x53, 0xc4, 0x5e, 0xad, 0xfd, 0xb3, 0xa5, 0x0e, 0xf3, 0x3d, 0xe3, 0xf9, 0xd7, 0x43, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3489 = { .name = "xdh_wei448_3489", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3489_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3489_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3489_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 395 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3490 for XDH, tcId is 396 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3490_peerpubkey[] = { 0x11, 0xe9, 0xe4, 0xe0, 0x24, 0xc2, 0x77, 0xe1, 0x84, 0x34, 0x48, 0xa1, 0x0f, 0x21, 0x8d, 0x4e, 0x4f, 0x88, 0xb4, 0x02, 0xb2, 0x95, 0x4c, 0xb3, 0x7f, 0x8b, 0x5c, 0x33, 0xa9, 0x02, 0x93, 0x2f, 0x95, 0x41, 0xe6, 0x14, 0x86, 0xf1, 0xf4, 0xa8, 0xfb, 0xd9, 0x73, 0x8b, 0x7f, 0xff, 0xfd, 0xb3, 0x94, 0x46, 0xe7, 0x92, 0xf1, 0x2a, 0x69, 0xf1, }; static const unsigned char xdh_wei448_3490_privkey[] = { 0xa8, 0xed, 0x7c, 0x6c, 0x57, 0xd5, 0xaf, 0x99, 0x85, 0x5b, 0x98, 0x9d, 0x8c, 0x43, 0x79, 0x94, 0xb1, 0xf7, 0x2c, 0x25, 0xd2, 0x2c, 0x2a, 0xce, 0xa5, 0x04, 0x87, 0x8c, 0xc3, 0x3c, 0x57, 0x2b, 0x84, 0xcc, 0x4c, 0xbc, 0xb5, 0xf2, 0x4d, 0xc0, 0xcc, 0x7b, 0xa8, 0xce, 0x36, 0xbf, 0x31, 0x68, 0x7a, 0x27, 0xc4, 0xd0, 0x60, 0x52, 0x0f, 0x8b, }; static const unsigned char xdh_wei448_3490_sharedsecret[] = { 0xb8, 0xed, 0xce, 0xf5, 0x32, 0x24, 0x7b, 0x0d, 0xa1, 0x8f, 0x7d, 0x67, 0xf4, 0x89, 0xa9, 0x81, 0x02, 0x16, 0x84, 0xea, 0x9f, 0xb9, 0xd0, 0xa9, 0x57, 0xbc, 0x36, 0x3c, 0xd3, 0x90, 0xfc, 0x39, 0x54, 0x20, 0xd0, 0xa9, 0xb6, 0xfd, 0xf9, 0xe4, 0x0a, 0xf6, 0x5e, 0xb0, 0xd8, 0x5d, 0x19, 0x5a, 0x25, 0x23, 0x74, 0x13, 0xa7, 0xb1, 0x44, 0x59, }; static const wycheproof_xdh_test xdh_wei448_3490 = { .name = "xdh_wei448_3490", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3490_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3490_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3490_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 396 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3491 for XDH, tcId is 397 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3491_peerpubkey[] = { 0x13, 0x27, 0x29, 0xb7, 0x38, 0xcd, 0x98, 0x7f, 0xfe, 0x19, 0x54, 0x35, 0x84, 0xf8, 0xfe, 0x2b, 0xe1, 0xe8, 0x01, 0xb7, 0x19, 0xd3, 0xab, 0x2c, 0x51, 0x23, 0x4f, 0xbd, 0x08, 0xd4, 0xc9, 0xf7, 0x36, 0xc7, 0xf5, 0x0b, 0x84, 0x49, 0x26, 0x7f, 0x73, 0x72, 0x97, 0xf9, 0x8b, 0x3c, 0xb7, 0x30, 0x52, 0x8a, 0xf6, 0x4f, 0x6a, 0xa0, 0xfb, 0x02, }; static const unsigned char xdh_wei448_3491_privkey[] = { 0x84, 0xe6, 0x9e, 0x44, 0x72, 0xb6, 0x69, 0xeb, 0xc6, 0xa6, 0xad, 0x1b, 0xd2, 0x11, 0x71, 0x26, 0x5d, 0x64, 0x92, 0x0f, 0x3d, 0xc9, 0xc7, 0xaa, 0x26, 0x17, 0x44, 0x62, 0xf3, 0x3d, 0x20, 0xe5, 0x0b, 0x02, 0x30, 0xce, 0xa7, 0x13, 0x57, 0x6a, 0x9b, 0xe5, 0x59, 0xb5, 0x5d, 0x63, 0xef, 0x12, 0x5d, 0xcf, 0x9f, 0x54, 0x34, 0x57, 0xff, 0x89, }; static const unsigned char xdh_wei448_3491_sharedsecret[] = { 0xc7, 0x19, 0xe3, 0x09, 0xf9, 0x40, 0x20, 0x74, 0xeb, 0x74, 0xbf, 0x18, 0x58, 0x6e, 0xa8, 0x60, 0xfd, 0x87, 0xa8, 0xd0, 0x8e, 0xeb, 0xbd, 0xba, 0xf8, 0x42, 0x08, 0x47, 0x41, 0xf3, 0x01, 0xeb, 0x74, 0xc9, 0x4a, 0xa3, 0x3d, 0xb5, 0xba, 0x1c, 0x2d, 0x8a, 0x99, 0x7a, 0xfa, 0x4f, 0xef, 0x78, 0xba, 0x76, 0x9b, 0x46, 0x8a, 0x00, 0x76, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3491 = { .name = "xdh_wei448_3491", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3491_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3491_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3491_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 397 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3492 for XDH, tcId is 398 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3492_peerpubkey[] = { 0xcd, 0x72, 0xb7, 0x26, 0x6f, 0x8f, 0xe8, 0x8f, 0x85, 0xe9, 0xa4, 0x7e, 0xd5, 0xc0, 0xec, 0x74, 0x39, 0x41, 0xfd, 0x1b, 0x4c, 0xbf, 0x2d, 0xda, 0x96, 0xf3, 0xa6, 0x0f, 0x30, 0xf6, 0xb3, 0xc3, 0xa4, 0xe7, 0xe4, 0x2c, 0x80, 0x83, 0x31, 0x07, 0x7d, 0x5b, 0x9b, 0x8c, 0x37, 0xfa, 0x65, 0x07, 0xb1, 0x73, 0x5c, 0xe0, 0x81, 0x16, 0xc3, 0x1b, }; static const unsigned char xdh_wei448_3492_privkey[] = { 0x2c, 0x42, 0xdd, 0x62, 0xd9, 0x66, 0x51, 0x34, 0xf1, 0xdd, 0xa0, 0x82, 0x43, 0x82, 0xc8, 0xd6, 0x77, 0x3f, 0x98, 0x64, 0x95, 0xcf, 0x1b, 0x18, 0xcf, 0x02, 0xf8, 0xf4, 0x53, 0x38, 0xcd, 0xbb, 0xde, 0x6d, 0x26, 0xd5, 0xf9, 0x1f, 0x3d, 0x4e, 0x1a, 0x25, 0x0f, 0xfa, 0xfe, 0x1b, 0x5e, 0x24, 0xb8, 0x20, 0x8b, 0xa1, 0xb9, 0x12, 0x76, 0x86, }; static const unsigned char xdh_wei448_3492_sharedsecret[] = { 0x51, 0xb1, 0xd5, 0xa3, 0x34, 0x95, 0x7b, 0xb9, 0xf5, 0x39, 0x90, 0xd1, 0x88, 0xd9, 0x3e, 0xdb, 0x17, 0x86, 0xda, 0x92, 0x17, 0x83, 0xc0, 0x08, 0x70, 0x42, 0x91, 0x34, 0xd2, 0xf2, 0xef, 0x97, 0x63, 0x24, 0x4a, 0x20, 0x4a, 0x46, 0xfa, 0xc1, 0x67, 0xa0, 0x89, 0x44, 0x74, 0x34, 0x2e, 0xa7, 0x72, 0x27, 0x58, 0x99, 0xd2, 0x17, 0x42, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3492 = { .name = "xdh_wei448_3492", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3492_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3492_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3492_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 398 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3493 for XDH, tcId is 399 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3493_peerpubkey[] = { 0xd5, 0x60, 0x21, 0x11, 0x53, 0xf1, 0x00, 0xaf, 0x3a, 0x4c, 0x0a, 0x22, 0x33, 0xf6, 0xec, 0xd7, 0xe9, 0x5c, 0xc5, 0x08, 0x6d, 0xec, 0xb3, 0xa0, 0xd1, 0x38, 0x67, 0x0e, 0xe4, 0x19, 0x55, 0xaa, 0xb9, 0x5f, 0x4a, 0x71, 0xbb, 0x84, 0x96, 0xb4, 0xdb, 0xf9, 0x8b, 0x45, 0xae, 0x6f, 0xf6, 0x7b, 0x02, 0xfb, 0xc9, 0x48, 0xb1, 0x45, 0x14, 0x2c, }; static const unsigned char xdh_wei448_3493_privkey[] = { 0x5c, 0xd3, 0xa7, 0xa6, 0xc7, 0x3d, 0xe1, 0x1e, 0xbe, 0x7d, 0x4c, 0xd3, 0xbb, 0x14, 0x6e, 0x0f, 0xf1, 0x56, 0x43, 0x76, 0x85, 0xc8, 0x1a, 0xf2, 0xac, 0x3c, 0xf6, 0x05, 0x3e, 0x4b, 0x32, 0x89, 0x01, 0x4d, 0x38, 0xda, 0xdf, 0x73, 0x2e, 0xd2, 0xf3, 0x98, 0xe4, 0x77, 0x2a, 0x34, 0x47, 0xa2, 0x58, 0xda, 0xdf, 0xdb, 0x2d, 0x7d, 0xf5, 0x87, }; static const unsigned char xdh_wei448_3493_sharedsecret[] = { 0x51, 0xdd, 0xe5, 0x72, 0x74, 0xf7, 0xff, 0xb4, 0xc0, 0x1e, 0x97, 0x1f, 0xb9, 0xf2, 0xba, 0x89, 0x11, 0xe1, 0xcf, 0x56, 0xc2, 0x03, 0x55, 0x21, 0x69, 0x01, 0xdc, 0x1d, 0x14, 0x81, 0xbf, 0xa2, 0x8b, 0x87, 0xf4, 0xb7, 0x24, 0x49, 0x53, 0x4a, 0xd6, 0x99, 0x96, 0x90, 0x0c, 0xf5, 0xe7, 0x3b, 0x8e, 0x0f, 0xa1, 0x15, 0xe8, 0x92, 0x4e, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3493 = { .name = "xdh_wei448_3493", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3493_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3493_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3493_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 399 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3494 for XDH, tcId is 400 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3494_peerpubkey[] = { 0xa4, 0xcc, 0xa4, 0x82, 0xc8, 0xe2, 0x1f, 0xf3, 0x00, 0x97, 0xcb, 0xc4, 0xf5, 0xe3, 0xa7, 0x07, 0x62, 0x3c, 0xd6, 0x77, 0x1b, 0x28, 0x8d, 0x8f, 0x3d, 0x11, 0x68, 0x2f, 0xa5, 0x26, 0xb4, 0xed, 0xa2, 0x7c, 0x68, 0x33, 0xd4, 0x19, 0x2b, 0xda, 0x53, 0x05, 0x2a, 0x14, 0x2c, 0x69, 0x87, 0x8f, 0xce, 0xdc, 0xc9, 0x2a, 0x5f, 0x61, 0x1a, 0xa2, }; static const unsigned char xdh_wei448_3494_privkey[] = { 0x80, 0x81, 0xae, 0xfb, 0x19, 0x87, 0x2a, 0xea, 0xad, 0x84, 0xa4, 0x06, 0xeb, 0x3f, 0xd4, 0xc2, 0x7f, 0x23, 0x1f, 0xbc, 0xa3, 0x91, 0x73, 0xba, 0xd4, 0x17, 0xa2, 0xef, 0x12, 0x3c, 0x0a, 0x89, 0x59, 0xae, 0xa6, 0xd6, 0x9f, 0xe6, 0x92, 0xeb, 0xf6, 0x96, 0x31, 0xd5, 0x3b, 0x73, 0xe3, 0xd6, 0x7f, 0x1b, 0xcb, 0xa6, 0x84, 0x9f, 0xb7, 0x83, }; static const unsigned char xdh_wei448_3494_sharedsecret[] = { 0xe1, 0xc4, 0xae, 0x75, 0xcc, 0x6f, 0x65, 0xc6, 0x52, 0xf4, 0x0d, 0xee, 0x0b, 0x7a, 0x02, 0x24, 0x8a, 0xf6, 0x60, 0x93, 0xd4, 0x03, 0xe0, 0xf5, 0xec, 0x34, 0xf3, 0xe4, 0xb6, 0xd3, 0x8d, 0x20, 0x82, 0x60, 0x2d, 0xc5, 0x1a, 0x52, 0x6e, 0xd0, 0xe9, 0xb1, 0x56, 0x9c, 0xb2, 0x0a, 0xa3, 0x44, 0x24, 0xb0, 0x21, 0x9b, 0xdd, 0xb5, 0x37, 0x56, }; static const wycheproof_xdh_test xdh_wei448_3494 = { .name = "xdh_wei448_3494", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3494_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3494_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3494_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 400 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3495 for XDH, tcId is 401 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3495_peerpubkey[] = { 0xd6, 0x88, 0x03, 0xe5, 0x6a, 0x32, 0x9b, 0x20, 0x53, 0xa0, 0x6b, 0x6f, 0x72, 0x16, 0xb3, 0xec, 0xe4, 0xec, 0x45, 0x3d, 0x62, 0x53, 0xc6, 0xdb, 0xb9, 0x01, 0x82, 0xff, 0xce, 0x7f, 0xa5, 0x95, 0x24, 0xff, 0x05, 0x4a, 0x5c, 0x3a, 0xaa, 0xb8, 0xa4, 0x41, 0x74, 0xab, 0x20, 0x38, 0x5f, 0x7a, 0x95, 0xa8, 0x57, 0x9a, 0xbc, 0xb9, 0xae, 0xa7, }; static const unsigned char xdh_wei448_3495_privkey[] = { 0x74, 0xfb, 0x2c, 0xcc, 0x2b, 0x2e, 0xfb, 0x17, 0xdd, 0xab, 0x72, 0x17, 0x50, 0xde, 0x77, 0x51, 0xf0, 0xa6, 0xbe, 0xda, 0x5d, 0xe7, 0x75, 0xb8, 0x2c, 0xbd, 0x21, 0x14, 0x90, 0xa4, 0x02, 0x0e, 0x80, 0x80, 0x8a, 0x62, 0x11, 0x4f, 0x0f, 0x1c, 0x45, 0x53, 0xf2, 0x6f, 0xbc, 0xab, 0x6c, 0xa9, 0x02, 0x64, 0x51, 0x60, 0xa3, 0xcf, 0xaa, 0x87, }; static const unsigned char xdh_wei448_3495_sharedsecret[] = { 0x45, 0x46, 0x32, 0x8d, 0x31, 0xeb, 0xd4, 0x74, 0x39, 0x22, 0x1c, 0xf9, 0x40, 0x33, 0x87, 0xcc, 0x61, 0x07, 0xd5, 0x4f, 0x67, 0xdd, 0xbe, 0xea, 0xfe, 0x3c, 0x57, 0xb7, 0x58, 0xab, 0x83, 0x86, 0xed, 0x76, 0xdc, 0xfc, 0xdd, 0x5b, 0x49, 0x92, 0x32, 0xbf, 0xbf, 0x7f, 0x15, 0xe6, 0x75, 0x0b, 0x71, 0x73, 0xdb, 0x07, 0xef, 0xb7, 0x31, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3495 = { .name = "xdh_wei448_3495", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3495_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3495_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3495_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 401 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3496 for XDH, tcId is 402 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3496_peerpubkey[] = { 0x41, 0xfd, 0xa6, 0xe7, 0x50, 0x6b, 0x50, 0x85, 0x70, 0xae, 0x39, 0xd1, 0x65, 0x1d, 0x72, 0x1b, 0x8f, 0x2a, 0xc1, 0xba, 0xed, 0xa0, 0xa3, 0xba, 0x5c, 0x86, 0xc9, 0xc7, 0x17, 0x97, 0x90, 0xdd, 0xa0, 0x18, 0x5d, 0xa5, 0xde, 0x64, 0x87, 0x9c, 0x15, 0x73, 0x83, 0xf0, 0x4b, 0x9a, 0x32, 0x8a, 0xa5, 0xfb, 0xbf, 0x7e, 0x7d, 0x87, 0x0f, 0xd7, }; static const unsigned char xdh_wei448_3496_privkey[] = { 0x0c, 0x2f, 0x22, 0xe6, 0xa4, 0x7e, 0xa6, 0x08, 0xe8, 0xc0, 0xd1, 0xb0, 0x47, 0x0c, 0x45, 0xcc, 0x02, 0x5d, 0x1c, 0x07, 0x52, 0xbf, 0xe3, 0xaa, 0x36, 0xd1, 0x4f, 0x0e, 0x8f, 0x82, 0xf2, 0xe1, 0x2a, 0x27, 0xb6, 0xbd, 0x32, 0x23, 0x95, 0xa3, 0xde, 0x5b, 0x5d, 0xed, 0x46, 0xc3, 0x7b, 0xe1, 0x12, 0xd3, 0xe8, 0xd1, 0xbb, 0x86, 0xde, 0x86, }; static const unsigned char xdh_wei448_3496_sharedsecret[] = { 0xda, 0x06, 0xfa, 0x2f, 0xf0, 0x01, 0x5c, 0x46, 0x63, 0xa5, 0x9d, 0x2c, 0xde, 0x02, 0xb4, 0xd7, 0x9f, 0xad, 0x37, 0xa0, 0x54, 0x22, 0x0b, 0x15, 0x65, 0x1b, 0xe9, 0x92, 0x26, 0x65, 0x0e, 0x9f, 0x62, 0x46, 0x68, 0x34, 0x78, 0x2b, 0x3d, 0x00, 0x04, 0x31, 0x01, 0xc0, 0xff, 0x1b, 0xe3, 0x7d, 0xcc, 0x0d, 0x6f, 0x6b, 0xef, 0xe9, 0xbb, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_3496 = { .name = "xdh_wei448_3496", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3496_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3496_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3496_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 402 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3497 for XDH, tcId is 403 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3497_peerpubkey[] = { 0x2c, 0x2f, 0xda, 0x82, 0x80, 0xb4, 0x16, 0x0f, 0xbb, 0x8f, 0xcd, 0xd9, 0xa4, 0x6f, 0x78, 0x7f, 0x2e, 0x9b, 0x4e, 0xcf, 0xe1, 0x14, 0x92, 0x29, 0x81, 0x7d, 0x94, 0x06, 0x85, 0xa2, 0x55, 0x94, 0x9f, 0x5d, 0x9e, 0x05, 0x44, 0x6c, 0xba, 0xf8, 0x6b, 0x2a, 0xf6, 0x2d, 0x27, 0xe5, 0xe7, 0x6c, 0x74, 0x5b, 0x39, 0xb2, 0x9b, 0x52, 0x07, 0x06, }; static const unsigned char xdh_wei448_3497_privkey[] = { 0xec, 0xd9, 0x88, 0xd9, 0x37, 0xd7, 0x19, 0x04, 0xf1, 0x58, 0x4a, 0x7c, 0xb4, 0x7d, 0xc6, 0xf9, 0xb5, 0xd1, 0xf1, 0x62, 0xf0, 0xf4, 0x0a, 0x76, 0x39, 0x3b, 0xf4, 0x80, 0x84, 0x34, 0xe2, 0x64, 0x4d, 0xeb, 0xe2, 0x30, 0x35, 0xbf, 0x4f, 0x9b, 0x59, 0x83, 0xfa, 0xf6, 0xe9, 0xf5, 0xfb, 0x9b, 0x1f, 0x4c, 0x4e, 0xc6, 0xc2, 0x5d, 0xfc, 0x88, }; static const unsigned char xdh_wei448_3497_sharedsecret[] = { 0xaa, 0x5a, 0xe8, 0x6b, 0x41, 0xec, 0x49, 0x1e, 0x1d, 0x6e, 0xfa, 0x86, 0x08, 0xf3, 0xf1, 0x07, 0x0a, 0x7f, 0xf0, 0xb6, 0x13, 0x88, 0x6a, 0xcc, 0x45, 0xc9, 0x2f, 0xcd, 0xba, 0x6a, 0x5a, 0x48, 0x09, 0x95, 0x74, 0x0d, 0x02, 0xe6, 0xb9, 0xb9, 0x62, 0xb8, 0x7e, 0x11, 0xc3, 0x3e, 0x25, 0xdf, 0xcc, 0xda, 0x8e, 0x5c, 0xb2, 0xf1, 0x52, 0x99, }; static const wycheproof_xdh_test xdh_wei448_3497 = { .name = "xdh_wei448_3497", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3497_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3497_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3497_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 403 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3498 for XDH, tcId is 404 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3498_peerpubkey[] = { 0x2b, 0xa9, 0x1c, 0xe4, 0xae, 0xfe, 0x09, 0x1a, 0xe4, 0x02, 0x92, 0xd2, 0x8c, 0x20, 0xfb, 0x24, 0x64, 0x94, 0x0c, 0xf6, 0xfb, 0x56, 0x87, 0x75, 0x42, 0xbb, 0x7b, 0xd9, 0x31, 0x49, 0x3b, 0x4e, 0xb7, 0xfd, 0xbc, 0xb6, 0x22, 0x70, 0x69, 0x34, 0x2d, 0x91, 0x3a, 0xeb, 0x29, 0xe4, 0x73, 0x27, 0xe5, 0x3e, 0x35, 0xa2, 0x42, 0x2b, 0x4d, 0x0b, }; static const unsigned char xdh_wei448_3498_privkey[] = { 0x20, 0x43, 0x3d, 0x78, 0xa9, 0x74, 0x48, 0xc2, 0xdc, 0xa9, 0xcd, 0x9c, 0xfb, 0xf1, 0xc6, 0xa5, 0x3c, 0xf6, 0xc1, 0x38, 0xd1, 0x46, 0xc5, 0x73, 0xf9, 0x50, 0xdb, 0x11, 0x72, 0x34, 0x66, 0x06, 0x6f, 0x2b, 0xb5, 0x4a, 0x04, 0x19, 0xf1, 0xb8, 0xc8, 0x42, 0xf4, 0x35, 0x4f, 0x1f, 0x10, 0xe0, 0x7c, 0x75, 0xc3, 0x77, 0xec, 0x8f, 0xc2, 0x87, }; static const unsigned char xdh_wei448_3498_sharedsecret[] = { 0xf0, 0x52, 0x7e, 0xc8, 0x7d, 0x89, 0x6e, 0xcc, 0xed, 0xb3, 0xa6, 0xca, 0xa6, 0x65, 0x72, 0xe6, 0x4a, 0xee, 0xa5, 0x15, 0xf1, 0x89, 0x01, 0x46, 0xc8, 0x3d, 0x72, 0x53, 0x58, 0x31, 0xfe, 0x7e, 0xb1, 0x2d, 0xcc, 0x43, 0x4a, 0x63, 0x83, 0x9a, 0xff, 0x89, 0xd8, 0xc8, 0x78, 0x90, 0x6f, 0xe9, 0xd9, 0x2e, 0x0e, 0xdf, 0x21, 0x8c, 0x64, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_3498 = { .name = "xdh_wei448_3498", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3498_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3498_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3498_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 404 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3499 for XDH, tcId is 405 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3499_peerpubkey[] = { 0x78, 0x0c, 0x77, 0x37, 0x80, 0xe0, 0x04, 0xc3, 0x76, 0x59, 0x7d, 0x1f, 0x7d, 0x98, 0x89, 0x91, 0xc8, 0xb4, 0xc0, 0x31, 0x5d, 0x7b, 0xac, 0x91, 0xe6, 0x8d, 0xdb, 0x40, 0x51, 0xfa, 0xc4, 0x04, 0x40, 0xaf, 0x2f, 0x5b, 0x87, 0xd8, 0x4b, 0x00, 0xce, 0x2d, 0x85, 0xd6, 0x24, 0x97, 0xd0, 0xf6, 0x9d, 0xdb, 0xda, 0xe6, 0x61, 0xdf, 0x17, 0x3e, }; static const unsigned char xdh_wei448_3499_privkey[] = { 0xb8, 0x69, 0xb7, 0xf0, 0x70, 0x72, 0x4d, 0x56, 0x2a, 0xb3, 0x46, 0xb0, 0xce, 0xe9, 0x10, 0xf0, 0x10, 0x61, 0xf7, 0x79, 0x48, 0x8d, 0x6a, 0xf1, 0x89, 0xde, 0xac, 0x04, 0x36, 0xd4, 0x0f, 0x65, 0x7e, 0x20, 0xd5, 0x6b, 0x57, 0xd4, 0xd1, 0xc0, 0x52, 0x87, 0x9b, 0xe7, 0x56, 0x62, 0xe1, 0xe6, 0x4f, 0x6b, 0x1a, 0xa3, 0xc1, 0x13, 0xd3, 0x8a, }; static const unsigned char xdh_wei448_3499_sharedsecret[] = { 0x7c, 0xb3, 0x47, 0xb4, 0x36, 0xf5, 0xa8, 0x3b, 0x14, 0x9d, 0x31, 0xfd, 0x93, 0x66, 0xc5, 0xeb, 0x84, 0xa6, 0x87, 0xbb, 0x78, 0xe5, 0x1e, 0x70, 0x14, 0xbd, 0xb6, 0xc0, 0x10, 0xa1, 0x5a, 0x00, 0x0d, 0x8d, 0x5e, 0x1f, 0xeb, 0x15, 0xa9, 0x0c, 0xa3, 0xe1, 0x7f, 0xb7, 0x45, 0x5d, 0xa7, 0x49, 0x6b, 0xd4, 0x81, 0xa4, 0xe0, 0xa6, 0x64, 0x25, }; static const wycheproof_xdh_test xdh_wei448_3499 = { .name = "xdh_wei448_3499", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3499_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3499_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3499_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 405 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3500 for XDH, tcId is 406 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3500_peerpubkey[] = { 0x4e, 0x6b, 0x2e, 0x16, 0xcf, 0xdc, 0x7f, 0x73, 0x43, 0x64, 0x4d, 0x90, 0x5c, 0x19, 0x5b, 0xec, 0xf6, 0x7a, 0xa8, 0xac, 0xfd, 0xbe, 0xd6, 0x24, 0xb6, 0x9d, 0xb1, 0x9b, 0x8c, 0x1f, 0x60, 0xd1, 0x74, 0x3e, 0xc0, 0x22, 0x3c, 0x0f, 0x75, 0x4e, 0x2f, 0xdd, 0x91, 0x90, 0xa4, 0xcf, 0x4c, 0xaf, 0x8b, 0x92, 0xfd, 0x1c, 0x93, 0xec, 0xdb, 0x65, }; static const unsigned char xdh_wei448_3500_privkey[] = { 0xac, 0xf0, 0x2c, 0x2e, 0x2b, 0x37, 0x52, 0x89, 0xc5, 0x9a, 0x27, 0x0f, 0x2b, 0x59, 0xa3, 0x36, 0x7c, 0x47, 0x79, 0x5e, 0x87, 0xcb, 0xf5, 0x19, 0x93, 0xf0, 0x49, 0x93, 0x0a, 0x0c, 0x1e, 0x1e, 0x79, 0x49, 0xe7, 0x0b, 0xe8, 0x38, 0xaa, 0xa6, 0xc1, 0x80, 0x09, 0x27, 0x35, 0x4b, 0x1e, 0xcc, 0x68, 0x5a, 0xc6, 0x1d, 0x59, 0x56, 0xe9, 0x89, }; static const unsigned char xdh_wei448_3500_sharedsecret[] = { 0x64, 0xd6, 0xb9, 0xd6, 0x30, 0xdc, 0x7e, 0xb0, 0xd8, 0x29, 0xf9, 0x6c, 0x03, 0x4e, 0xca, 0xfe, 0x21, 0xfe, 0xfe, 0x7a, 0x7f, 0xe6, 0x60, 0xe4, 0xc9, 0x1c, 0x6c, 0x54, 0x0c, 0xa3, 0x15, 0x7f, 0x94, 0x4c, 0x5c, 0xce, 0xa9, 0x70, 0x7c, 0x2f, 0x86, 0xfd, 0x38, 0xd0, 0x23, 0x8c, 0x85, 0x99, 0xc8, 0x48, 0xb8, 0x03, 0x60, 0x0d, 0xb9, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3500 = { .name = "xdh_wei448_3500", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3500_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3500_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3500_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 406 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3501 for XDH, tcId is 407 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3501_peerpubkey[] = { 0xe4, 0x67, 0xd4, 0x24, 0x52, 0x8b, 0x22, 0x7b, 0xd1, 0x19, 0x2c, 0x1e, 0xcf, 0x22, 0xbd, 0xfb, 0xd0, 0xf5, 0xe1, 0x6b, 0x50, 0x2d, 0x58, 0x56, 0x84, 0x8c, 0x0e, 0x56, 0x72, 0xa8, 0x56, 0x31, 0x3f, 0x3e, 0x84, 0x43, 0x96, 0x61, 0xd7, 0xd5, 0xfc, 0x95, 0xb5, 0xa5, 0x9b, 0xba, 0x3a, 0xd5, 0x31, 0x21, 0xec, 0x97, 0xad, 0x54, 0x0f, 0x95, }; static const unsigned char xdh_wei448_3501_privkey[] = { 0xdc, 0x0f, 0x97, 0x35, 0x5e, 0xf2, 0xc5, 0xd4, 0x24, 0x15, 0x86, 0x7a, 0x28, 0xe9, 0xf6, 0x96, 0x57, 0xb7, 0x8d, 0xa4, 0x18, 0x5c, 0xe5, 0x1d, 0xae, 0x61, 0xe2, 0x38, 0x71, 0x36, 0xa6, 0x2d, 0x88, 0x5c, 0x18, 0xe7, 0xe1, 0x77, 0x30, 0xa0, 0x1f, 0x4b, 0x47, 0x26, 0x7e, 0xe6, 0x93, 0xa6, 0x07, 0x38, 0xef, 0x1e, 0xa5, 0x18, 0x7b, 0x86, }; static const unsigned char xdh_wei448_3501_sharedsecret[] = { 0xfd, 0x52, 0x30, 0x23, 0x11, 0x12, 0x09, 0x0a, 0x49, 0x2e, 0x4b, 0x6b, 0x4d, 0x9f, 0x29, 0xae, 0x56, 0x5f, 0xb7, 0x52, 0x7e, 0x56, 0xfa, 0x80, 0x43, 0x47, 0xe1, 0x00, 0x47, 0xe9, 0xa5, 0x4c, 0xa4, 0x3c, 0x1e, 0x65, 0x45, 0xab, 0x5c, 0x73, 0x3a, 0x86, 0xf6, 0x68, 0x81, 0x0f, 0x0e, 0x22, 0xef, 0x5c, 0xb8, 0x74, 0x57, 0xa0, 0x1b, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_3501 = { .name = "xdh_wei448_3501", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3501_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3501_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3501_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 407 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3502 for XDH, tcId is 408 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3502_peerpubkey[] = { 0xc6, 0x9f, 0x7f, 0x36, 0x49, 0x53, 0xc3, 0xcc, 0xba, 0x79, 0x10, 0x3f, 0x5a, 0x88, 0xd9, 0xe7, 0x45, 0x21, 0x68, 0x4e, 0xb5, 0xe3, 0x6c, 0xcf, 0x8c, 0x25, 0x85, 0xdb, 0x73, 0xb8, 0x05, 0xa7, 0x9f, 0xbb, 0xa3, 0x93, 0xf8, 0x1a, 0x11, 0x56, 0xf6, 0x89, 0xa3, 0x82, 0xcb, 0xde, 0x27, 0x2c, 0x9c, 0x2b, 0x1f, 0xfa, 0x88, 0x79, 0xad, 0xad, }; static const unsigned char xdh_wei448_3502_privkey[] = { 0x9c, 0xf1, 0x09, 0x4d, 0xd4, 0x82, 0xc8, 0xfd, 0xd1, 0x11, 0x95, 0xed, 0xe3, 0x39, 0x5b, 0xb9, 0xb3, 0x3e, 0x87, 0x02, 0xb8, 0xce, 0x77, 0x11, 0x6d, 0x4e, 0xa4, 0x01, 0x89, 0x84, 0x4f, 0x54, 0xec, 0x53, 0x5c, 0x91, 0xfb, 0xfd, 0xb8, 0x2c, 0xcc, 0x7b, 0xb5, 0x44, 0x1f, 0x7f, 0xfc, 0xf5, 0x25, 0x31, 0x91, 0xdb, 0x3a, 0xf0, 0x13, 0x8d, }; static const unsigned char xdh_wei448_3502_sharedsecret[] = { 0xba, 0x66, 0x1d, 0x79, 0x28, 0x69, 0xd0, 0xd0, 0x8f, 0x07, 0xe9, 0x7b, 0x53, 0x05, 0xd5, 0x16, 0x48, 0xe4, 0xaa, 0x71, 0x43, 0xc9, 0x02, 0x8f, 0x3a, 0x2c, 0xa2, 0xf1, 0x2f, 0x60, 0x14, 0x76, 0xd8, 0x8b, 0x5d, 0xad, 0x32, 0x9f, 0xd0, 0xa7, 0x73, 0xff, 0xae, 0x21, 0x65, 0xe0, 0xe3, 0x25, 0x1f, 0x56, 0xe8, 0xe7, 0x3f, 0xbf, 0x6f, 0xfd, }; static const wycheproof_xdh_test xdh_wei448_3502 = { .name = "xdh_wei448_3502", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3502_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3502_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3502_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 408 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3503 for XDH, tcId is 409 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3503_peerpubkey[] = { 0x9c, 0xa0, 0x54, 0xab, 0x30, 0x0f, 0x6b, 0x38, 0x9c, 0xd5, 0x3c, 0xbf, 0x01, 0x1e, 0x86, 0x66, 0xf5, 0x92, 0xf9, 0xc1, 0x4f, 0x1e, 0x13, 0x87, 0xcc, 0xf7, 0x8e, 0xc4, 0x36, 0x46, 0x2e, 0x7a, 0xc1, 0xe8, 0x11, 0x81, 0x96, 0xee, 0x73, 0x1b, 0xc2, 0xa2, 0x0b, 0x24, 0x08, 0xa6, 0xbd, 0x49, 0xd1, 0x5a, 0x8a, 0x10, 0x41, 0x62, 0xf7, 0x06, }; static const unsigned char xdh_wei448_3503_privkey[] = { 0xa8, 0xeb, 0xca, 0x65, 0xaa, 0x84, 0x59, 0xc4, 0x8a, 0xc1, 0xc1, 0x4a, 0x83, 0xb0, 0x51, 0x5e, 0x92, 0xde, 0x6c, 0x35, 0x8b, 0xb6, 0x05, 0xe3, 0x1e, 0x46, 0x66, 0x94, 0xa8, 0x26, 0xa7, 0xef, 0x99, 0x46, 0x4e, 0x42, 0x5b, 0x97, 0x81, 0x42, 0x59, 0xb4, 0x15, 0xd0, 0xa8, 0xdf, 0x83, 0xb5, 0x40, 0xec, 0x89, 0x30, 0xee, 0x41, 0x37, 0x8d, }; static const unsigned char xdh_wei448_3503_sharedsecret[] = { 0x01, 0x57, 0x37, 0x8a, 0x83, 0xd7, 0xd4, 0x4b, 0xec, 0x58, 0x6e, 0x3e, 0xdd, 0xe0, 0x3e, 0x3a, 0xb4, 0x8f, 0x06, 0xe0, 0x0d, 0x21, 0x29, 0xcb, 0x34, 0x8c, 0x18, 0x09, 0x2b, 0x9c, 0x7b, 0xf7, 0xe4, 0xe0, 0x0d, 0xf1, 0x6a, 0x65, 0x0e, 0x46, 0x76, 0xd3, 0x1c, 0x91, 0x19, 0x27, 0x5a, 0x43, 0xdc, 0x60, 0xee, 0x61, 0x20, 0xe9, 0x0d, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3503 = { .name = "xdh_wei448_3503", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3503_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3503_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3503_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 409 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3504 for XDH, tcId is 410 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3504_peerpubkey[] = { 0xae, 0x59, 0xde, 0x0b, 0xb7, 0x5b, 0xf5, 0x87, 0x06, 0xc3, 0x3c, 0x6f, 0xe9, 0x1b, 0x27, 0xba, 0x70, 0xf9, 0xa7, 0xb8, 0x72, 0x7a, 0x90, 0x1d, 0x4e, 0xa5, 0x3d, 0xce, 0xbb, 0xcf, 0x9f, 0x96, 0x26, 0xa9, 0xad, 0x60, 0xd8, 0x18, 0xea, 0x73, 0xdf, 0x1f, 0xaa, 0x4a, 0x2b, 0xf6, 0x33, 0x36, 0x5e, 0xe3, 0x4a, 0x0f, 0xc4, 0xc7, 0xd3, 0x0b, }; static const unsigned char xdh_wei448_3504_privkey[] = { 0x7c, 0xd3, 0x6d, 0x53, 0x9a, 0x2a, 0xbb, 0xef, 0x73, 0xd9, 0x34, 0xca, 0xbb, 0xb5, 0xfb, 0xbe, 0x63, 0x20, 0x0a, 0x3e, 0x77, 0x95, 0xff, 0x30, 0x07, 0x32, 0x24, 0x5b, 0xfb, 0x11, 0xed, 0x60, 0xac, 0xee, 0x4a, 0x71, 0x33, 0x0b, 0xd9, 0x83, 0x1d, 0x91, 0xf3, 0xeb, 0x8a, 0x41, 0x49, 0x76, 0xf6, 0xf7, 0x21, 0x6c, 0x1f, 0x37, 0x63, 0x84, }; static const unsigned char xdh_wei448_3504_sharedsecret[] = { 0x27, 0x07, 0xb9, 0x4b, 0xd0, 0xc4, 0xb7, 0xaa, 0xa7, 0x77, 0x46, 0x7d, 0x15, 0xfa, 0x86, 0x24, 0x9b, 0x46, 0x06, 0xc7, 0xae, 0xb8, 0x25, 0x88, 0x14, 0xd4, 0x60, 0xd9, 0xbf, 0x59, 0x4d, 0x81, 0x2d, 0x38, 0x39, 0x54, 0x76, 0x1c, 0x95, 0xa4, 0xc6, 0x76, 0x74, 0xc4, 0xae, 0x6d, 0x09, 0xf7, 0x4c, 0xba, 0xd3, 0xd7, 0x53, 0x40, 0xc6, 0x09, }; static const wycheproof_xdh_test xdh_wei448_3504 = { .name = "xdh_wei448_3504", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3504_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3504_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3504_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 410 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3505 for XDH, tcId is 411 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3505_peerpubkey[] = { 0xe6, 0x24, 0x22, 0xb2, 0x2e, 0x12, 0x32, 0xdf, 0xb6, 0x03, 0x7d, 0xfa, 0x7c, 0xbb, 0xf5, 0x76, 0x76, 0x04, 0x66, 0x4d, 0x22, 0xad, 0x2a, 0xfa, 0xde, 0x89, 0x2c, 0xe8, 0x74, 0x71, 0xad, 0xfe, 0x32, 0xa2, 0x90, 0x20, 0x3e, 0x22, 0xdd, 0x82, 0x80, 0x93, 0x8d, 0xa1, 0x89, 0x86, 0x6e, 0x60, 0xa4, 0xf2, 0xb0, 0x97, 0x85, 0x01, 0xac, 0x1a, }; static const unsigned char xdh_wei448_3505_privkey[] = { 0xb4, 0x35, 0x5c, 0xe9, 0x25, 0x0c, 0x14, 0xe5, 0x1f, 0xad, 0x03, 0xb7, 0x85, 0xd1, 0x3d, 0xfc, 0xc9, 0xe4, 0x31, 0xdf, 0xc4, 0x0e, 0xa5, 0xde, 0x83, 0x7b, 0x42, 0x6b, 0xc0, 0xdb, 0x90, 0xd8, 0x7d, 0xce, 0xfb, 0xe9, 0x81, 0xd9, 0x39, 0xb9, 0xdc, 0x9e, 0xbe, 0xe0, 0x77, 0x21, 0x27, 0xc7, 0x32, 0x45, 0xb6, 0xda, 0x6d, 0x56, 0xa5, 0x8c, }; static const unsigned char xdh_wei448_3505_sharedsecret[] = { 0x0c, 0x40, 0x76, 0xf5, 0xf7, 0xe7, 0x8c, 0x06, 0x5d, 0x03, 0x56, 0xa5, 0x42, 0x77, 0x42, 0x96, 0xb8, 0x8e, 0x58, 0x4a, 0x3d, 0xb4, 0x99, 0x44, 0xbe, 0x07, 0xe6, 0xac, 0x44, 0x9d, 0x8a, 0x74, 0x1e, 0xfd, 0x32, 0xea, 0x46, 0xb5, 0x3f, 0xec, 0x1e, 0x49, 0x4e, 0x7e, 0x9f, 0xe2, 0xfa, 0x83, 0x1b, 0xcf, 0xfe, 0xdd, 0x27, 0xd6, 0x69, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_3505 = { .name = "xdh_wei448_3505", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3505_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3505_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3505_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 411 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3506 for XDH, tcId is 412 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3506_peerpubkey[] = { 0xd2, 0xa4, 0xc7, 0x15, 0x2d, 0x46, 0x08, 0x82, 0xa8, 0x96, 0xc3, 0x25, 0x59, 0xd0, 0x46, 0xbf, 0x70, 0x1d, 0x51, 0x24, 0xcf, 0x5c, 0xef, 0xe5, 0x30, 0x77, 0x74, 0xd0, 0x4c, 0xb4, 0x49, 0xf7, 0xac, 0x18, 0x1c, 0x10, 0x80, 0x00, 0x7a, 0xbf, 0xec, 0xc1, 0x5c, 0x1b, 0xfe, 0x32, 0xbf, 0xf6, 0xdb, 0xe1, 0x24, 0xfe, 0x52, 0xca, 0x5c, 0x1e, }; static const unsigned char xdh_wei448_3506_privkey[] = { 0x5c, 0x58, 0xdd, 0xfa, 0xcc, 0x07, 0xa8, 0x96, 0x9d, 0x78, 0x30, 0xc1, 0x69, 0x11, 0x39, 0x28, 0x35, 0x1b, 0x7f, 0x9b, 0xe9, 0x4b, 0x2d, 0xe7, 0x28, 0xf6, 0x3f, 0xac, 0xc1, 0x8e, 0x27, 0x95, 0xf6, 0x91, 0xdc, 0x32, 0x96, 0x8e, 0x33, 0x10, 0xa7, 0x8a, 0x38, 0xea, 0x57, 0xd6, 0x76, 0x07, 0x28, 0x11, 0xde, 0x47, 0x7d, 0x28, 0xa0, 0x8e, }; static const unsigned char xdh_wei448_3506_sharedsecret[] = { 0x9a, 0xfd, 0x98, 0x88, 0x44, 0x0c, 0x6e, 0xab, 0x0d, 0x63, 0xb7, 0xce, 0xc4, 0x2b, 0x5f, 0x42, 0x7f, 0xcb, 0x6a, 0x12, 0xa2, 0x65, 0xfe, 0x40, 0x26, 0x36, 0x3a, 0x3d, 0x1d, 0xa1, 0x71, 0xd1, 0xa0, 0xfa, 0x00, 0x09, 0x33, 0x3d, 0x41, 0xb4, 0x73, 0xb4, 0xec, 0x08, 0x66, 0xb6, 0xd6, 0x09, 0x3c, 0xfe, 0x87, 0x94, 0x25, 0xe2, 0x1e, 0x72, }; static const wycheproof_xdh_test xdh_wei448_3506 = { .name = "xdh_wei448_3506", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3506_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3506_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3506_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 412 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3507 for XDH, tcId is 413 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3507_peerpubkey[] = { 0x57, 0x5a, 0xa8, 0x2e, 0x2e, 0xad, 0x45, 0x3e, 0x32, 0x95, 0xd7, 0x81, 0x93, 0xcb, 0xaf, 0xdf, 0xb7, 0x48, 0xbf, 0xde, 0x0a, 0xb1, 0x2b, 0x5c, 0xab, 0x36, 0x11, 0x3a, 0xc2, 0x79, 0x6b, 0xc9, 0x50, 0xa3, 0x18, 0xf5, 0x94, 0x45, 0x38, 0x52, 0xf4, 0xb2, 0xaa, 0x86, 0x17, 0x0b, 0xcc, 0x31, 0x73, 0x93, 0x81, 0xae, 0xb7, 0x8b, 0xa9, 0x2b, }; static const unsigned char xdh_wei448_3507_privkey[] = { 0x18, 0x12, 0x23, 0x06, 0xcd, 0x06, 0x38, 0xb6, 0x4a, 0x86, 0x00, 0xf0, 0x88, 0x30, 0x74, 0xa7, 0xed, 0xfc, 0xe6, 0xd6, 0x4d, 0x1e, 0x29, 0xeb, 0x0e, 0x3e, 0xfb, 0xd9, 0xca, 0x0e, 0x80, 0xb1, 0x33, 0xbc, 0x71, 0xf1, 0x81, 0x48, 0xbc, 0x11, 0xc2, 0xb1, 0xe6, 0xa2, 0x46, 0x80, 0x0d, 0xa2, 0xdc, 0xfa, 0x30, 0x05, 0xa0, 0x94, 0x68, 0x84, }; static const unsigned char xdh_wei448_3507_sharedsecret[] = { 0x29, 0x44, 0x7f, 0xa2, 0x06, 0x1b, 0x4c, 0xde, 0x87, 0x6b, 0xd0, 0x74, 0x9c, 0x6d, 0x5b, 0x5e, 0x4d, 0x94, 0x19, 0xde, 0xfb, 0xa9, 0xac, 0xe2, 0x79, 0x9e, 0x9d, 0x3e, 0xa1, 0x74, 0x03, 0x5d, 0x97, 0x7a, 0xce, 0x07, 0x83, 0x36, 0x8a, 0xc1, 0x26, 0x9f, 0x69, 0x22, 0xa6, 0x9d, 0xc4, 0x7f, 0xfb, 0x65, 0xf2, 0x13, 0x75, 0xf5, 0x69, 0x29, }; static const wycheproof_xdh_test xdh_wei448_3507 = { .name = "xdh_wei448_3507", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3507_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3507_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3507_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 413 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3508 for XDH, tcId is 414 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3508_peerpubkey[] = { 0x56, 0x29, 0xec, 0x6f, 0xcb, 0x52, 0x60, 0x01, 0x9d, 0x95, 0x51, 0xb6, 0x30, 0x85, 0xd2, 0x50, 0x00, 0xa5, 0x9c, 0x12, 0x94, 0x7b, 0xc8, 0xd8, 0x98, 0x5d, 0x68, 0xca, 0xba, 0x08, 0xef, 0xed, 0x9e, 0xde, 0x76, 0xde, 0x2f, 0x6c, 0x5b, 0x76, 0x28, 0x01, 0xc3, 0x65, 0x06, 0x15, 0xed, 0xb9, 0x6f, 0xd4, 0x73, 0xb1, 0x7c, 0xd0, 0x38, 0x2e, }; static const unsigned char xdh_wei448_3508_privkey[] = { 0x40, 0x68, 0x6a, 0xc7, 0xb2, 0x65, 0xa2, 0xdf, 0xfb, 0xb5, 0x28, 0x00, 0x28, 0x64, 0x96, 0x9a, 0x03, 0xb0, 0xc2, 0x94, 0x2c, 0x9e, 0x5f, 0xcd, 0xc5, 0xe0, 0x2e, 0xfe, 0x45, 0x2f, 0x35, 0x11, 0x0c, 0xcd, 0xe0, 0xba, 0x88, 0xc4, 0x0c, 0x6a, 0xd2, 0x34, 0x3c, 0x5a, 0x7c, 0xaf, 0xd6, 0x80, 0x50, 0x54, 0xef, 0xce, 0x3c, 0x17, 0x99, 0x8e, }; static const unsigned char xdh_wei448_3508_sharedsecret[] = { 0x67, 0x7b, 0xfe, 0x25, 0xc0, 0x04, 0x4b, 0x3b, 0x54, 0x05, 0x27, 0xe8, 0xdc, 0x78, 0xd8, 0x78, 0x27, 0xaa, 0xb6, 0x68, 0x62, 0x34, 0x6c, 0x78, 0xf7, 0xad, 0x95, 0x9e, 0x8c, 0xbd, 0x5f, 0x8b, 0xf0, 0xc6, 0x12, 0xca, 0x66, 0xdb, 0x2b, 0xba, 0xd6, 0xa0, 0xd3, 0xc8, 0xdb, 0xd0, 0xf9, 0x92, 0x22, 0x94, 0xfa, 0x28, 0x21, 0x40, 0xab, 0x06, }; static const wycheproof_xdh_test xdh_wei448_3508 = { .name = "xdh_wei448_3508", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3508_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3508_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3508_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 414 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3509 for XDH, tcId is 415 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3509_peerpubkey[] = { 0x23, 0x94, 0xf0, 0xd4, 0x2a, 0x7e, 0x06, 0x0c, 0x83, 0xf2, 0x4f, 0xe7, 0x17, 0x9f, 0x07, 0xed, 0xd1, 0x71, 0xaf, 0x1b, 0x53, 0xe8, 0x6b, 0xe7, 0x00, 0x55, 0x1a, 0x96, 0x95, 0x04, 0x78, 0x2c, 0x45, 0x93, 0x6a, 0x16, 0xc7, 0x7c, 0x0f, 0xa1, 0xe0, 0x54, 0xa6, 0x9a, 0x50, 0x99, 0x63, 0xa2, 0x42, 0xae, 0x25, 0x6f, 0x71, 0x79, 0x04, 0x35, }; static const unsigned char xdh_wei448_3509_privkey[] = { 0xf0, 0x4d, 0xfc, 0x27, 0x1f, 0xbc, 0x4a, 0x4e, 0xc8, 0xda, 0x96, 0x29, 0xde, 0x17, 0xfb, 0x6d, 0x66, 0x7e, 0x0a, 0x5f, 0x04, 0xb6, 0x99, 0x35, 0x82, 0xff, 0x32, 0xb3, 0xa7, 0xe0, 0xd4, 0xb8, 0x40, 0xee, 0x07, 0x2b, 0x5c, 0x08, 0xf9, 0x61, 0x42, 0xcc, 0x3c, 0x0d, 0xe1, 0x4a, 0x61, 0xf2, 0x59, 0x6f, 0x5c, 0x88, 0x43, 0x5e, 0xbb, 0x8b, }; static const unsigned char xdh_wei448_3509_sharedsecret[] = { 0x91, 0xde, 0xcd, 0xb8, 0x94, 0x28, 0x3a, 0xa2, 0x6e, 0x61, 0x4e, 0x31, 0x15, 0x44, 0x70, 0xc3, 0x1f, 0xde, 0x19, 0x13, 0x40, 0x57, 0x70, 0xe6, 0x53, 0x25, 0x31, 0x9f, 0x2c, 0xa2, 0x6a, 0xac, 0x71, 0xad, 0x24, 0x7d, 0xc2, 0x18, 0x5c, 0x2d, 0xaa, 0xb8, 0x21, 0x41, 0x76, 0x15, 0xed, 0x6e, 0x77, 0x28, 0xe8, 0xa9, 0xcc, 0x5f, 0xb6, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_3509 = { .name = "xdh_wei448_3509", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3509_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3509_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3509_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 415 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3510 for XDH, tcId is 416 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3510_peerpubkey[] = { 0xf9, 0xfa, 0xd4, 0x52, 0x57, 0x8f, 0x50, 0x6e, 0x18, 0xd7, 0x0c, 0x27, 0xeb, 0x00, 0x2a, 0xa6, 0x1b, 0x20, 0xb9, 0xe9, 0x05, 0xeb, 0x53, 0x10, 0x47, 0x66, 0xb2, 0x8d, 0xb2, 0x31, 0x4e, 0xe1, 0xdb, 0x36, 0x26, 0x5f, 0x6f, 0x34, 0xb4, 0x1a, 0x00, 0x8c, 0xb5, 0x79, 0x5d, 0x13, 0xbe, 0x40, 0x3a, 0xd9, 0x41, 0x88, 0x62, 0x56, 0x05, 0x3c, }; static const unsigned char xdh_wei448_3510_privkey[] = { 0x54, 0xb3, 0xdc, 0xaf, 0xdd, 0x9e, 0x0d, 0x73, 0x1e, 0xff, 0x76, 0xd2, 0x44, 0x63, 0xaf, 0xc0, 0xbf, 0x94, 0x81, 0x59, 0x7f, 0x35, 0x6d, 0x21, 0x06, 0x21, 0xaf, 0x29, 0x10, 0x48, 0xd9, 0x20, 0x75, 0x38, 0x6e, 0x80, 0xee, 0x8e, 0x78, 0xd7, 0xf5, 0x43, 0xb3, 0x05, 0xe3, 0xd2, 0xd2, 0xa4, 0x18, 0x0d, 0xee, 0x8b, 0x52, 0x8a, 0xb4, 0x87, }; static const unsigned char xdh_wei448_3510_sharedsecret[] = { 0xf5, 0xd9, 0xca, 0xbf, 0x7c, 0x1b, 0x1c, 0x64, 0xc9, 0xe2, 0xc2, 0xda, 0xf9, 0x5c, 0xcb, 0x38, 0xa7, 0x1b, 0x21, 0x28, 0xf1, 0x98, 0x7a, 0x98, 0xed, 0x5c, 0x91, 0x8b, 0xa6, 0x94, 0x86, 0xb1, 0x7e, 0x03, 0x70, 0xa9, 0x49, 0xdc, 0x17, 0x2b, 0xaf, 0x85, 0x93, 0xa1, 0xf8, 0xd3, 0x7d, 0x02, 0x2b, 0x0a, 0x0a, 0x9b, 0xc5, 0x4c, 0xae, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_3510 = { .name = "xdh_wei448_3510", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3510_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3510_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3510_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 416 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3511 for XDH, tcId is 417 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3511_peerpubkey[] = { 0xf2, 0xc4, 0xcb, 0x79, 0xda, 0x0f, 0xd6, 0xae, 0x25, 0x1a, 0x16, 0x44, 0x6e, 0x6b, 0x92, 0x14, 0xcb, 0xbf, 0x76, 0xdd, 0x91, 0x1f, 0xb4, 0x96, 0x6e, 0xa6, 0x5e, 0x1e, 0x5c, 0x72, 0x5d, 0x35, 0x40, 0x48, 0x8f, 0x22, 0xd2, 0x32, 0xdd, 0x4e, 0x55, 0x96, 0xeb, 0x7f, 0x9e, 0x6d, 0x4b, 0xba, 0xe8, 0xf1, 0xa1, 0x7a, 0x6e, 0x3d, 0x94, 0x61, }; static const unsigned char xdh_wei448_3511_privkey[] = { 0x04, 0x1b, 0x7c, 0xca, 0x67, 0x44, 0x98, 0x6f, 0x6b, 0xdf, 0x4e, 0x83, 0xb5, 0xe6, 0xa7, 0xed, 0x8a, 0xa9, 0x73, 0xbf, 0xc0, 0xb5, 0x88, 0x4e, 0x60, 0x70, 0x18, 0x7f, 0xae, 0x24, 0xf3, 0x40, 0x73, 0x63, 0xac, 0xbb, 0x1a, 0xf3, 0x7c, 0x96, 0x28, 0xf1, 0x5d, 0x9f, 0xd4, 0x9b, 0xeb, 0x51, 0x5f, 0x8a, 0x9b, 0x5e, 0x9a, 0x39, 0xf7, 0x86, }; static const unsigned char xdh_wei448_3511_sharedsecret[] = { 0xb8, 0x04, 0x81, 0x33, 0xbb, 0x5b, 0x73, 0x4e, 0xea, 0x7a, 0xa9, 0xe3, 0x5e, 0x69, 0xc5, 0x30, 0x19, 0x5d, 0xaf, 0x68, 0xa3, 0x6e, 0x04, 0x48, 0xc8, 0xc3, 0x88, 0x71, 0x1f, 0xcc, 0xee, 0xa1, 0x19, 0x18, 0x26, 0xbe, 0x00, 0x18, 0x0e, 0x0a, 0xad, 0x6e, 0xa2, 0x2d, 0x29, 0xe3, 0xae, 0x82, 0x37, 0xec, 0x78, 0xdd, 0x2e, 0x3b, 0x9d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_3511 = { .name = "xdh_wei448_3511", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3511_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3511_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3511_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 417 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3512 for XDH, tcId is 418 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3512_peerpubkey[] = { 0x67, 0x48, 0x8d, 0x65, 0xdc, 0xe8, 0x53, 0xb8, 0xa7, 0x3e, 0x4b, 0x1c, 0xc0, 0x69, 0xfa, 0xd7, 0x3d, 0x8b, 0x85, 0x56, 0x80, 0x00, 0x67, 0xae, 0xc1, 0xbf, 0x31, 0xef, 0x6a, 0xc9, 0xbf, 0x0b, 0xe6, 0x3a, 0x35, 0xba, 0x04, 0x8c, 0xca, 0x4f, 0x38, 0x43, 0x5b, 0xa5, 0x10, 0x8d, 0x9a, 0x15, 0x1f, 0xec, 0xbe, 0xdc, 0xd9, 0x48, 0xb5, 0x70, }; static const unsigned char xdh_wei448_3512_privkey[] = { 0x70, 0x60, 0xb7, 0x7e, 0xef, 0x77, 0xf8, 0xc0, 0x7c, 0xe0, 0x94, 0xf5, 0x77, 0x8f, 0x4a, 0x77, 0x46, 0x2c, 0x22, 0xe2, 0x9e, 0x14, 0xe8, 0x86, 0xfe, 0x18, 0x73, 0x98, 0xe6, 0xcd, 0x9e, 0x1c, 0xec, 0xca, 0x70, 0x72, 0x08, 0x3c, 0x90, 0xfa, 0x03, 0xad, 0x05, 0x94, 0x02, 0x19, 0x76, 0x10, 0xcd, 0x94, 0xb9, 0x08, 0xdc, 0x9a, 0xb4, 0x89, }; static const unsigned char xdh_wei448_3512_sharedsecret[] = { 0x15, 0xd3, 0x49, 0xa6, 0xb9, 0x56, 0x3a, 0x54, 0xdd, 0xa4, 0xc4, 0x7d, 0x13, 0x27, 0x68, 0xc2, 0xfc, 0x95, 0x34, 0xec, 0x9f, 0x21, 0x22, 0xb4, 0x03, 0x59, 0xdb, 0x74, 0x50, 0x2c, 0xed, 0x68, 0x0e, 0x1d, 0x22, 0x7c, 0x4f, 0xee, 0xa2, 0xea, 0x60, 0x95, 0x35, 0x56, 0x66, 0xa4, 0xa8, 0x60, 0x0d, 0x32, 0x88, 0x75, 0x2a, 0x29, 0x53, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3512 = { .name = "xdh_wei448_3512", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3512_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3512_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3512_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 418 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3513 for XDH, tcId is 419 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3513_peerpubkey[] = { 0xc8, 0xa8, 0xd5, 0xf8, 0x7d, 0x63, 0x8f, 0xa0, 0xac, 0x76, 0x3e, 0xe1, 0xc8, 0x47, 0x06, 0xcf, 0x3b, 0xb2, 0x99, 0x6e, 0x95, 0xee, 0xd9, 0xf3, 0x78, 0xb2, 0x63, 0xcd, 0x55, 0x90, 0x19, 0x3d, 0x6e, 0x3c, 0x15, 0x92, 0xe0, 0x1d, 0x04, 0x00, 0x88, 0x13, 0xb3, 0x37, 0x70, 0x3a, 0x62, 0xde, 0xfb, 0xc8, 0x0c, 0x26, 0x57, 0x3a, 0xf9, 0xa1, }; static const unsigned char xdh_wei448_3513_privkey[] = { 0xcc, 0x64, 0x28, 0x9a, 0x20, 0x78, 0xd5, 0xed, 0x5e, 0x85, 0x48, 0xd6, 0xc0, 0x03, 0xaf, 0xe2, 0x79, 0x98, 0x10, 0x3e, 0x0b, 0xaf, 0x57, 0x0f, 0x65, 0x66, 0x24, 0xd9, 0x15, 0x6d, 0x6e, 0xee, 0xc6, 0xfd, 0x74, 0xde, 0xa9, 0x61, 0x5c, 0xa2, 0x87, 0xc1, 0xba, 0xf0, 0xf2, 0x7d, 0xdd, 0xda, 0x2c, 0xe5, 0x80, 0x69, 0xeb, 0x2e, 0x88, 0x8e, }; static const unsigned char xdh_wei448_3513_sharedsecret[] = { 0x98, 0x3a, 0x50, 0x28, 0x5e, 0x5e, 0x44, 0xbb, 0xe8, 0xde, 0x55, 0xde, 0x9c, 0x7f, 0xcb, 0xac, 0x1e, 0x2f, 0xb6, 0xaf, 0xd6, 0xfe, 0xc1, 0x89, 0xe6, 0xf3, 0xb9, 0xb8, 0xbd, 0xac, 0xa6, 0xab, 0x4b, 0x1f, 0xa9, 0xb5, 0x38, 0xb2, 0x8a, 0xda, 0xa5, 0xbf, 0x16, 0x73, 0x5a, 0x78, 0x69, 0xd8, 0x60, 0x95, 0xc5, 0x4f, 0x8a, 0xa4, 0x04, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3513 = { .name = "xdh_wei448_3513", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3513_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3513_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3513_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 419 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3514 for XDH, tcId is 420 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3514_peerpubkey[] = { 0x97, 0xe2, 0x9f, 0x21, 0x18, 0x74, 0x22, 0xc9, 0x4c, 0xfd, 0xf7, 0x4a, 0xf7, 0xfb, 0xd3, 0xc3, 0xd1, 0xfc, 0x17, 0x22, 0x5a, 0xc7, 0xd8, 0xe8, 0x7b, 0xb2, 0x56, 0x3b, 0x98, 0x8a, 0xc1, 0x9c, 0xd3, 0xaf, 0xcc, 0xa7, 0x07, 0xfa, 0xb8, 0x5a, 0x65, 0x2a, 0xe1, 0xb6, 0x18, 0x86, 0xfb, 0xba, 0x75, 0xc0, 0xa6, 0xf4, 0x5f, 0x50, 0x1c, 0xdc, }; static const unsigned char xdh_wei448_3514_privkey[] = { 0xa4, 0xdc, 0xcd, 0xb2, 0xca, 0x5b, 0x7a, 0xfc, 0x13, 0x14, 0x31, 0xd5, 0xea, 0xc0, 0xac, 0x6e, 0x6f, 0x9b, 0x33, 0xee, 0x2f, 0x41, 0x34, 0xe7, 0xd7, 0x9e, 0x10, 0xce, 0xb8, 0x4a, 0x36, 0xa0, 0x0b, 0xcc, 0xb2, 0x80, 0xac, 0x18, 0x59, 0xd1, 0x2a, 0x74, 0x08, 0x62, 0xd4, 0x07, 0x4c, 0xed, 0xb6, 0x53, 0x58, 0x7b, 0xcf, 0x71, 0x09, 0x8b, }; static const unsigned char xdh_wei448_3514_sharedsecret[] = { 0xc6, 0x06, 0x1d, 0xad, 0x24, 0xc1, 0xa1, 0xc8, 0x02, 0x91, 0xb3, 0x53, 0x89, 0xe0, 0x8d, 0xe5, 0xf9, 0x57, 0x7b, 0x01, 0x34, 0x15, 0xdd, 0xf4, 0x49, 0xe3, 0x88, 0x1b, 0xcb, 0x4c, 0xc3, 0x5a, 0x11, 0x40, 0x83, 0x59, 0x40, 0x59, 0x31, 0xa1, 0x7f, 0x42, 0x66, 0x2e, 0x26, 0x30, 0x3a, 0xad, 0x0f, 0xde, 0xcc, 0xd3, 0x24, 0xd7, 0x74, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_3514 = { .name = "xdh_wei448_3514", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3514_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3514_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3514_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 420 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3515 for XDH, tcId is 421 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3515_peerpubkey[] = { 0x05, 0x11, 0x83, 0xae, 0xfd, 0x0a, 0xb2, 0x1a, 0x07, 0x91, 0xc8, 0xb2, 0x91, 0x7b, 0xdf, 0x23, 0xbe, 0x5b, 0x25, 0xf1, 0xf4, 0xb3, 0x0c, 0x64, 0xc3, 0x7a, 0x25, 0x6f, 0x8c, 0xde, 0xca, 0x54, 0xcc, 0xee, 0x9d, 0xcd, 0x1e, 0x24, 0xaf, 0x24, 0x20, 0xd3, 0x2b, 0xc5, 0x57, 0x60, 0x91, 0xfd, 0x1f, 0xf3, 0xf8, 0x0d, 0xa3, 0x54, 0x36, 0xde, }; static const unsigned char xdh_wei448_3515_privkey[] = { 0x64, 0x5d, 0xfb, 0x9e, 0x66, 0xcf, 0x2a, 0x6a, 0x4e, 0x19, 0x8f, 0x19, 0xed, 0xc6, 0xfa, 0x43, 0xca, 0xf8, 0x6b, 0x1c, 0x35, 0xdf, 0xac, 0x97, 0xa5, 0x24, 0xb7, 0x0c, 0x0c, 0xd2, 0xba, 0xaf, 0x29, 0x16, 0xca, 0xc7, 0x19, 0x53, 0x61, 0x69, 0xea, 0x1f, 0x43, 0xe0, 0xe2, 0x46, 0x30, 0x65, 0x9f, 0x60, 0xd4, 0xe3, 0x32, 0x01, 0x89, 0x89, }; static const unsigned char xdh_wei448_3515_sharedsecret[] = { 0x3f, 0xea, 0x03, 0x6a, 0x64, 0x3f, 0xa9, 0x94, 0x67, 0x76, 0x3b, 0x06, 0xe0, 0x76, 0xf1, 0xc3, 0x11, 0x65, 0x3b, 0xd0, 0x86, 0x87, 0x7c, 0x87, 0xf8, 0x58, 0xb1, 0xbe, 0x2b, 0xb5, 0xcd, 0x10, 0x7b, 0xc1, 0x8b, 0x42, 0x22, 0xac, 0x1f, 0x48, 0xdc, 0x13, 0x74, 0x19, 0x38, 0x11, 0x99, 0xb4, 0xba, 0x29, 0xa7, 0xa7, 0xe9, 0x6d, 0xa0, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3515 = { .name = "xdh_wei448_3515", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3515_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3515_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3515_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 421 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3516 for XDH, tcId is 422 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3516_peerpubkey[] = { 0x0f, 0x25, 0xb2, 0x4b, 0x22, 0x50, 0x81, 0x23, 0x39, 0xa4, 0x50, 0x75, 0x84, 0xd2, 0xb5, 0x74, 0xbc, 0x2b, 0xfe, 0x07, 0x4c, 0xfb, 0xa1, 0x2f, 0xdc, 0x8e, 0x61, 0x2e, 0xfb, 0xdf, 0x67, 0x48, 0x0d, 0xe3, 0x3d, 0x62, 0xdd, 0xe1, 0x3f, 0xe6, 0x18, 0x67, 0x54, 0x57, 0x1e, 0x6c, 0xf3, 0x0a, 0x8f, 0xe3, 0x2e, 0x97, 0x5d, 0x94, 0x56, 0xeb, }; static const unsigned char xdh_wei448_3516_privkey[] = { 0xcc, 0x18, 0x26, 0xcf, 0x87, 0x5e, 0x63, 0x6c, 0xd1, 0x5d, 0xbc, 0xd9, 0xb2, 0xf7, 0xc4, 0xd3, 0x3c, 0x92, 0x39, 0x65, 0x2f, 0xf4, 0x84, 0xbb, 0xe9, 0xfb, 0xf8, 0x25, 0x47, 0x91, 0xce, 0xe4, 0xdc, 0x95, 0xe7, 0x5b, 0x0d, 0x92, 0x67, 0x9e, 0xdb, 0xdf, 0x6c, 0xba, 0xfe, 0x43, 0xff, 0xb0, 0x9d, 0x0a, 0xb7, 0x35, 0x68, 0xcf, 0x3c, 0x81, }; static const unsigned char xdh_wei448_3516_sharedsecret[] = { 0x7b, 0xd1, 0x4e, 0xbc, 0x4a, 0xae, 0x16, 0x3f, 0x2c, 0x61, 0xd5, 0x16, 0xe5, 0xb6, 0x7a, 0x5d, 0xbe, 0xf4, 0x87, 0xb8, 0x98, 0x0d, 0xef, 0xe3, 0x41, 0xfb, 0x94, 0x2f, 0xa8, 0xf1, 0xeb, 0x1a, 0xa8, 0x29, 0x51, 0x89, 0xf0, 0x6c, 0xd7, 0xcc, 0x7e, 0x35, 0xe5, 0x77, 0xbd, 0x34, 0xc8, 0x07, 0x70, 0xe9, 0x63, 0x3f, 0x85, 0x0f, 0xe8, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3516 = { .name = "xdh_wei448_3516", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3516_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3516_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3516_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 422 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3517 for XDH, tcId is 423 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3517_peerpubkey[] = { 0x17, 0x22, 0x5d, 0xf6, 0xc6, 0x58, 0x1a, 0x4c, 0x50, 0xd3, 0x14, 0x00, 0x39, 0x5f, 0xa2, 0x11, 0xed, 0x3d, 0x14, 0x6d, 0xeb, 0xda, 0xe1, 0xc3, 0xe6, 0xb4, 0x41, 0xbb, 0x13, 0x87, 0x10, 0x42, 0xdd, 0x35, 0x85, 0x47, 0x01, 0x98, 0xdf, 0x89, 0x7b, 0xfe, 0x82, 0xc0, 0xc7, 0xef, 0xe7, 0x39, 0xa7, 0x28, 0x4f, 0x8e, 0xb4, 0x72, 0x42, 0xef, }; static const unsigned char xdh_wei448_3517_privkey[] = { 0x38, 0x11, 0x23, 0x73, 0x97, 0xab, 0x5d, 0x36, 0x4c, 0x88, 0xa6, 0x8a, 0x1e, 0xcc, 0x31, 0x09, 0x60, 0x06, 0x78, 0x9a, 0x8c, 0xee, 0x84, 0xe6, 0x9c, 0x26, 0x7f, 0x1d, 0x93, 0xc1, 0xb8, 0xef, 0xab, 0x9f, 0xab, 0x8e, 0x3d, 0x5a, 0xb5, 0x11, 0x52, 0xa0, 0xb5, 0xdc, 0x11, 0xba, 0x0a, 0x0d, 0x4d, 0xcf, 0x7c, 0x41, 0xe7, 0xd7, 0xb6, 0x89, }; static const unsigned char xdh_wei448_3517_sharedsecret[] = { 0xd9, 0x6d, 0x07, 0x7d, 0x0a, 0xc0, 0x09, 0x6b, 0xbd, 0x79, 0xba, 0x1b, 0x83, 0x76, 0x32, 0x06, 0xb4, 0x01, 0x8d, 0x76, 0x9c, 0x0e, 0xa0, 0x7e, 0xff, 0x92, 0x4c, 0x98, 0x51, 0xc0, 0x7f, 0x66, 0xb3, 0x54, 0x75, 0xf1, 0x8b, 0xfc, 0xc8, 0x82, 0xb5, 0x00, 0x6a, 0x4e, 0xcf, 0x7c, 0xcb, 0xeb, 0x69, 0x4b, 0x57, 0x62, 0xb4, 0xcf, 0x07, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3517 = { .name = "xdh_wei448_3517", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3517_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3517_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3517_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 423 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3518 for XDH, tcId is 424 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3518_peerpubkey[] = { 0x6f, 0x56, 0xf2, 0xb6, 0x5a, 0x56, 0x09, 0x2f, 0xce, 0xce, 0x41, 0x79, 0x7f, 0x1b, 0x53, 0x13, 0xa2, 0xe7, 0xae, 0x5e, 0x60, 0xb9, 0x2a, 0x22, 0x11, 0xe2, 0xd6, 0x34, 0x80, 0x8e, 0x10, 0x9c, 0xd6, 0x84, 0xd4, 0x55, 0x47, 0x63, 0xb4, 0x86, 0x4d, 0x67, 0x68, 0x1d, 0xa4, 0x8d, 0x75, 0xf5, 0xdc, 0xf8, 0x69, 0x34, 0x6a, 0x10, 0x4a, 0x0d, }; static const unsigned char xdh_wei448_3518_privkey[] = { 0x0c, 0x78, 0xfc, 0x8b, 0x60, 0x5d, 0xa2, 0xf2, 0xa8, 0x33, 0x2d, 0x0c, 0x08, 0x48, 0xac, 0xf7, 0x13, 0x3d, 0x33, 0x50, 0xff, 0xdc, 0x4b, 0x66, 0x51, 0x25, 0x70, 0x5d, 0xb9, 0x59, 0xae, 0x17, 0xd2, 0x5d, 0x2e, 0x2d, 0xfc, 0xb8, 0x58, 0xf0, 0xcf, 0x6f, 0x16, 0x16, 0x2a, 0x46, 0x17, 0x22, 0xb4, 0x09, 0x14, 0x95, 0x46, 0xa9, 0x97, 0x83, }; static const unsigned char xdh_wei448_3518_sharedsecret[] = { 0x23, 0x16, 0xe7, 0x1f, 0x15, 0xd9, 0x1b, 0xf0, 0xc3, 0xf8, 0xb3, 0x7b, 0x05, 0x37, 0xd3, 0xa4, 0x08, 0x82, 0x59, 0x99, 0x6e, 0x01, 0x83, 0x83, 0xc8, 0x10, 0xb9, 0xdd, 0xdf, 0x21, 0x1a, 0x44, 0x69, 0xae, 0x08, 0x8a, 0xbd, 0xf9, 0x31, 0x89, 0x4e, 0x22, 0x86, 0x50, 0x3e, 0x78, 0x08, 0x98, 0x48, 0x72, 0x55, 0xa1, 0x3e, 0xb5, 0xab, 0xc3, }; static const wycheproof_xdh_test xdh_wei448_3518 = { .name = "xdh_wei448_3518", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3518_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3518_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3518_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 424 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3519 for XDH, tcId is 425 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3519_peerpubkey[] = { 0x2b, 0x12, 0xcb, 0xc3, 0xbc, 0x20, 0xfc, 0x18, 0x92, 0xf5, 0xb0, 0x23, 0x6b, 0x71, 0xe7, 0x28, 0xe1, 0xe4, 0xad, 0xc7, 0x2d, 0x52, 0x61, 0xe6, 0xdf, 0x21, 0x77, 0xbb, 0x53, 0x10, 0x1d, 0x14, 0x40, 0xdb, 0xd8, 0x69, 0x9d, 0x2e, 0x83, 0xa0, 0x8e, 0x3e, 0x9e, 0x6f, 0xbe, 0xbe, 0xff, 0x59, 0xad, 0x43, 0xa4, 0x27, 0x7f, 0x97, 0x03, 0x10, }; static const unsigned char xdh_wei448_3519_privkey[] = { 0xf4, 0x70, 0x2f, 0x84, 0x13, 0xcb, 0x82, 0x78, 0x58, 0x6a, 0x79, 0xa5, 0xf4, 0xe4, 0xca, 0xae, 0x61, 0x5d, 0x5e, 0xb9, 0x88, 0x51, 0x02, 0xe7, 0x19, 0x1a, 0x61, 0x60, 0xd2, 0x12, 0xc6, 0xe0, 0xfa, 0x50, 0xa2, 0x10, 0x97, 0x83, 0x52, 0x20, 0x42, 0x72, 0xd7, 0x99, 0xe1, 0x89, 0xa2, 0x83, 0x23, 0x3c, 0xd8, 0xfc, 0x3d, 0x96, 0xf4, 0x83, }; static const unsigned char xdh_wei448_3519_sharedsecret[] = { 0x20, 0xf0, 0xa3, 0xeb, 0xaa, 0x09, 0x9b, 0xdc, 0x58, 0xa5, 0xf9, 0x08, 0x8d, 0x5c, 0x44, 0xbb, 0xe6, 0x6c, 0xdd, 0xda, 0xf4, 0xc0, 0x52, 0x1b, 0x66, 0xb3, 0x1a, 0x00, 0xa5, 0x9e, 0x70, 0x09, 0x4c, 0xe6, 0x0e, 0x35, 0x67, 0x53, 0x95, 0x55, 0x2d, 0x48, 0x2c, 0x57, 0xfc, 0x38, 0xd1, 0x1c, 0x8d, 0xe2, 0x67, 0xe5, 0x11, 0xde, 0x45, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3519 = { .name = "xdh_wei448_3519", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3519_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3519_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3519_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 425 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3520 for XDH, tcId is 426 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3520_peerpubkey[] = { 0x5d, 0xeb, 0x8c, 0xb5, 0x71, 0xf9, 0xde, 0xea, 0x6f, 0x4c, 0xa6, 0xdd, 0xef, 0x78, 0x9c, 0xf0, 0x92, 0xbb, 0x7e, 0x33, 0xbb, 0xb8, 0x16, 0x0c, 0x0c, 0xc8, 0x3a, 0xff, 0xc6, 0xc0, 0x37, 0xdb, 0x17, 0xff, 0x3d, 0xbd, 0x12, 0x8e, 0x3e, 0x5d, 0x78, 0x04, 0x7d, 0xa6, 0xb9, 0xa0, 0x58, 0x51, 0xf1, 0x27, 0xdd, 0x0f, 0x27, 0xbe, 0xab, 0xaa, }; static const unsigned char xdh_wei448_3520_privkey[] = { 0xcc, 0x78, 0x89, 0xbb, 0x91, 0x35, 0x7e, 0x0c, 0xbf, 0xd5, 0x3a, 0x99, 0x47, 0x54, 0x4f, 0xab, 0x4e, 0x35, 0xf1, 0x10, 0x2d, 0xa8, 0x7d, 0x34, 0x35, 0x38, 0x70, 0x9f, 0xa4, 0x73, 0xaa, 0x82, 0x13, 0x06, 0xf2, 0x08, 0x1f, 0x56, 0x9a, 0xef, 0x83, 0x7d, 0x76, 0x94, 0x28, 0x13, 0x8d, 0x83, 0x1b, 0x9e, 0x57, 0x67, 0xb4, 0x31, 0xf7, 0x85, }; static const unsigned char xdh_wei448_3520_sharedsecret[] = { 0xa6, 0x9f, 0xd8, 0xc7, 0xa5, 0xed, 0x40, 0x1c, 0x81, 0x45, 0x50, 0xc9, 0xd1, 0x35, 0xff, 0xc4, 0x82, 0xab, 0x40, 0xe0, 0x78, 0x01, 0xab, 0x50, 0xd1, 0x08, 0x2f, 0xfb, 0xb7, 0x8e, 0x07, 0xe5, 0xe1, 0x62, 0x8f, 0xeb, 0x5a, 0x18, 0xcc, 0x25, 0x7f, 0xff, 0x43, 0x1d, 0x5e, 0x36, 0xd9, 0x99, 0xb7, 0x53, 0x70, 0x89, 0xe9, 0x07, 0x3b, 0x40, }; static const wycheproof_xdh_test xdh_wei448_3520 = { .name = "xdh_wei448_3520", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3520_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3520_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3520_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 8, tcId is 426 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3521 for XDH, tcId is 427 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3521_peerpubkey[] = { 0x90, 0x11, 0x7d, 0x3b, 0x29, 0x6d, 0xdd, 0xb7, 0xe1, 0x6f, 0xa6, 0x55, 0x84, 0x02, 0x18, 0x8f, 0xb3, 0xce, 0xd0, 0x95, 0xf6, 0xb5, 0xcf, 0xe5, 0x5a, 0x2e, 0xf7, 0x37, 0x63, 0x4f, 0xfe, 0xf7, 0xd7, 0x2e, 0x29, 0x87, 0x52, 0xfc, 0xd0, 0x5f, 0x46, 0xb0, 0x8b, 0x98, 0x38, 0xa0, 0x58, 0x37, 0x45, 0xcb, 0x4d, 0xed, 0x2a, 0xe9, 0x74, 0xb5, }; static const unsigned char xdh_wei448_3521_privkey[] = { 0x6c, 0xa1, 0x6c, 0x5c, 0x5a, 0x85, 0x3e, 0xa8, 0xec, 0x6b, 0xee, 0x34, 0x69, 0x9c, 0xe3, 0x3d, 0x98, 0x6f, 0xeb, 0xd1, 0x26, 0x1d, 0xd9, 0x01, 0x4d, 0xe1, 0x81, 0x5b, 0xd7, 0x22, 0xe4, 0xb2, 0x55, 0x4f, 0x5e, 0xe1, 0xd4, 0x5d, 0x54, 0x66, 0x3a, 0x91, 0x90, 0xb3, 0x14, 0xbf, 0xd8, 0xd9, 0xc5, 0x49, 0x2e, 0xd4, 0x74, 0xc0, 0x09, 0x88, }; static const unsigned char xdh_wei448_3521_sharedsecret[] = { 0xb4, 0x09, 0x2b, 0x95, 0x50, 0x12, 0x3a, 0x03, 0x08, 0x59, 0xd2, 0xb5, 0xd7, 0x37, 0x0b, 0xbe, 0xf9, 0x3c, 0xa2, 0x90, 0x15, 0x30, 0x25, 0x9d, 0xac, 0xc9, 0x21, 0x17, 0x8d, 0x09, 0x89, 0xd1, 0x15, 0x08, 0xed, 0xa0, 0x7e, 0x82, 0xf2, 0xab, 0x43, 0xff, 0x14, 0xbb, 0x54, 0xa8, 0x47, 0xb9, 0x08, 0xe2, 0x5e, 0xdc, 0x24, 0x52, 0x5a, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3521 = { .name = "xdh_wei448_3521", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3521_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3521_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3521_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 427 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3522 for XDH, tcId is 428 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3522_peerpubkey[] = { 0x14, 0xe7, 0x73, 0x59, 0x5d, 0x8f, 0x47, 0xd1, 0x39, 0xe8, 0x62, 0x4c, 0x8c, 0xda, 0x31, 0xca, 0x26, 0xdd, 0x88, 0x7a, 0x3b, 0x37, 0x75, 0xef, 0xde, 0xc8, 0x83, 0x18, 0x31, 0xa9, 0x89, 0x72, 0x7f, 0x8d, 0xb0, 0x08, 0x27, 0x79, 0x6a, 0x18, 0x9a, 0x8c, 0x26, 0x16, 0x15, 0x74, 0x98, 0xc6, 0x66, 0x76, 0xed, 0x7b, 0x20, 0x37, 0xf0, 0xd1, }; static const unsigned char xdh_wei448_3522_privkey[] = { 0x5c, 0xf6, 0xe2, 0x12, 0xe2, 0xa0, 0x15, 0x2e, 0x32, 0x04, 0x15, 0x08, 0x34, 0xca, 0x22, 0x07, 0xb7, 0x41, 0xf1, 0xa8, 0x27, 0xd0, 0x36, 0xaf, 0x18, 0x55, 0x27, 0xc8, 0x97, 0x66, 0x1f, 0x11, 0x51, 0x40, 0x9b, 0x64, 0xba, 0xad, 0x8c, 0xc1, 0xda, 0x9d, 0xc7, 0x5a, 0xe5, 0xaa, 0xfb, 0x8c, 0x36, 0x06, 0x2f, 0xc9, 0xb6, 0xdc, 0x9c, 0x8b, }; static const unsigned char xdh_wei448_3522_sharedsecret[] = { 0x22, 0xb9, 0x38, 0xcc, 0xed, 0x84, 0x72, 0xf3, 0x80, 0x01, 0xdb, 0xa6, 0xa2, 0xee, 0xd8, 0x56, 0xc9, 0x3f, 0x70, 0x1c, 0x4e, 0xd8, 0x1f, 0x51, 0x01, 0x89, 0xa1, 0x0b, 0xe2, 0x6d, 0x85, 0xc6, 0x95, 0x40, 0x28, 0x4b, 0xd2, 0x3e, 0xf7, 0x9e, 0x47, 0xc4, 0x47, 0x09, 0xd3, 0x06, 0x7d, 0xf3, 0xe1, 0x5a, 0x36, 0xa8, 0xa4, 0x1b, 0x85, 0x13, }; static const wycheproof_xdh_test xdh_wei448_3522 = { .name = "xdh_wei448_3522", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3522_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3522_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3522_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 428 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3523 for XDH, tcId is 429 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3523_peerpubkey[] = { 0x17, 0x18, 0x76, 0x86, 0xf0, 0x67, 0x45, 0x4a, 0xf7, 0x8c, 0x62, 0x04, 0xec, 0xea, 0x72, 0x87, 0x32, 0xc3, 0x22, 0xc8, 0x03, 0x5e, 0xf3, 0x48, 0xad, 0x1c, 0x35, 0xe7, 0x41, 0x8b, 0x9e, 0x9e, 0xf6, 0xec, 0xcc, 0x12, 0xf8, 0x80, 0x64, 0xd0, 0x62, 0x99, 0xb7, 0x64, 0x3e, 0xbf, 0x41, 0x66, 0x4b, 0xbf, 0x2c, 0x47, 0x79, 0x5f, 0x9e, 0xe4, }; static const unsigned char xdh_wei448_3523_privkey[] = { 0xd0, 0x50, 0xe8, 0x2a, 0x74, 0x80, 0x61, 0xc3, 0x23, 0x44, 0x0b, 0xa4, 0xae, 0x3d, 0x53, 0x37, 0x45, 0xe9, 0x41, 0xa3, 0xf7, 0x5e, 0xd5, 0x56, 0x91, 0x92, 0x17, 0xe0, 0x2f, 0x06, 0x90, 0x31, 0x55, 0x80, 0x7a, 0x4e, 0x60, 0xfe, 0xff, 0x4b, 0x14, 0xfd, 0xc7, 0x8f, 0xc4, 0xa2, 0x70, 0x24, 0xca, 0xaa, 0x02, 0x42, 0x62, 0xad, 0xac, 0x82, }; static const unsigned char xdh_wei448_3523_sharedsecret[] = { 0xed, 0xd3, 0x1e, 0xfe, 0x06, 0x31, 0x5a, 0x1d, 0xf5, 0x63, 0x9a, 0x85, 0xa5, 0x8d, 0xc2, 0x9b, 0xe3, 0xd1, 0x1a, 0x29, 0xab, 0x62, 0x59, 0xfb, 0x61, 0x3c, 0xa8, 0xce, 0xc1, 0xc1, 0xec, 0x96, 0x2c, 0x51, 0x5d, 0xf7, 0xd7, 0xc4, 0xa7, 0x88, 0x15, 0xad, 0x33, 0xfd, 0x04, 0xcc, 0xf9, 0xfc, 0x70, 0xac, 0xcb, 0x29, 0x64, 0x10, 0x3f, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3523 = { .name = "xdh_wei448_3523", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3523_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3523_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3523_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 429 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3524 for XDH, tcId is 430 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3524_peerpubkey[] = { 0x5f, 0xa4, 0x8c, 0x35, 0x57, 0x40, 0xdd, 0xee, 0xe1, 0x54, 0x2f, 0x43, 0xde, 0x26, 0xdf, 0xbf, 0x1d, 0xd8, 0x92, 0xbc, 0x2c, 0xbe, 0x21, 0x12, 0x42, 0xfd, 0x2f, 0x4f, 0xa9, 0x3f, 0xc2, 0xf8, 0x60, 0x5d, 0xd8, 0xfc, 0x88, 0xba, 0xa6, 0xa2, 0x1c, 0xae, 0xae, 0xdb, 0x99, 0xe6, 0x0c, 0x78, 0x74, 0x80, 0xcb, 0xea, 0x8e, 0x7e, 0x6f, 0x0e, }; static const unsigned char xdh_wei448_3524_privkey[] = { 0xa4, 0xa9, 0xb6, 0xc6, 0x71, 0xcc, 0xca, 0xbf, 0x86, 0xd4, 0xd7, 0x50, 0xf6, 0x2a, 0xfc, 0xdd, 0x9e, 0x7c, 0xd5, 0x3d, 0x99, 0xd7, 0x8a, 0x5b, 0x44, 0x81, 0xc3, 0xef, 0xbd, 0xdf, 0xca, 0xac, 0x42, 0x33, 0xfc, 0x49, 0xab, 0x2e, 0x50, 0x3d, 0x58, 0x18, 0x90, 0xe6, 0x3b, 0x60, 0x50, 0x10, 0xd8, 0x7f, 0x41, 0xf9, 0x08, 0x25, 0xed, 0x88, }; static const unsigned char xdh_wei448_3524_sharedsecret[] = { 0xea, 0xcc, 0xe9, 0xab, 0xd1, 0xf1, 0x53, 0x94, 0xf5, 0xcd, 0xa8, 0x84, 0xc4, 0x1e, 0xed, 0xf6, 0x38, 0xfc, 0xe5, 0x54, 0xab, 0xf1, 0x5f, 0x19, 0x41, 0x14, 0x6a, 0x6a, 0xbb, 0x38, 0x1e, 0x18, 0x6f, 0x3d, 0xe8, 0x16, 0xd9, 0xf4, 0x4a, 0x66, 0x88, 0x6e, 0x6c, 0xab, 0xf2, 0xd4, 0xe2, 0x2d, 0xbd, 0xb4, 0xfa, 0xa2, 0x18, 0x4a, 0xa4, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_3524 = { .name = "xdh_wei448_3524", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3524_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3524_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3524_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 430 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3525 for XDH, tcId is 431 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3525_peerpubkey[] = { 0xe7, 0x17, 0x0c, 0x9d, 0xae, 0xd8, 0xb8, 0x4c, 0x22, 0x82, 0xf0, 0x06, 0xb3, 0xd2, 0x8c, 0x10, 0xb4, 0x5b, 0x5c, 0x1b, 0xd2, 0x39, 0x78, 0xb2, 0x34, 0x83, 0x5b, 0x21, 0xe5, 0xe0, 0x1b, 0x52, 0xb8, 0x92, 0xbb, 0x19, 0x97, 0x73, 0xea, 0xff, 0x77, 0x03, 0x66, 0xc3, 0xb2, 0x6a, 0xd1, 0x67, 0x4a, 0xcb, 0x01, 0x1f, 0x52, 0x02, 0x81, 0x11, }; static const unsigned char xdh_wei448_3525_privkey[] = { 0xa4, 0x99, 0x7a, 0x79, 0x78, 0x07, 0x34, 0x9e, 0xe8, 0xae, 0x58, 0x8e, 0x72, 0x28, 0x86, 0x46, 0x88, 0x88, 0xfa, 0x87, 0x23, 0x6d, 0xcb, 0x58, 0x75, 0xcf, 0x92, 0x66, 0xf0, 0x1b, 0x7c, 0x2e, 0x18, 0x60, 0x1a, 0xdb, 0xb8, 0xef, 0x6a, 0x3a, 0x92, 0xa5, 0x2c, 0x78, 0x84, 0x0f, 0xfd, 0x8f, 0xc2, 0x26, 0xe7, 0x2c, 0xf6, 0x52, 0x28, 0x82, }; static const unsigned char xdh_wei448_3525_sharedsecret[] = { 0x93, 0xd3, 0x83, 0x01, 0xd1, 0xa4, 0x39, 0x66, 0x71, 0xdd, 0x66, 0x4e, 0xfa, 0x08, 0x41, 0x6d, 0x8e, 0xf5, 0x09, 0x4b, 0x40, 0x8f, 0x7d, 0xd9, 0x33, 0x70, 0x83, 0x8b, 0x4f, 0xa6, 0x14, 0x6b, 0x3d, 0xd6, 0xfd, 0x19, 0xcb, 0xfe, 0xbf, 0xee, 0x1b, 0xb6, 0xe6, 0xaa, 0x96, 0x43, 0xa6, 0xb6, 0x8f, 0xc5, 0x83, 0x69, 0x02, 0x9b, 0xe9, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3525 = { .name = "xdh_wei448_3525", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3525_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3525_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3525_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 431 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3526 for XDH, tcId is 432 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3526_peerpubkey[] = { 0xd7, 0x41, 0xf0, 0x5b, 0x91, 0xf7, 0xbf, 0xe5, 0x15, 0x4f, 0x58, 0xea, 0x7c, 0x7f, 0x9a, 0xa1, 0xfe, 0x10, 0xec, 0xdb, 0x5f, 0xbd, 0xed, 0xf4, 0x3b, 0x0f, 0x9f, 0x26, 0x0b, 0xef, 0x62, 0x0a, 0x02, 0xc3, 0xc6, 0x5e, 0x51, 0x07, 0x95, 0x47, 0x17, 0xbf, 0x99, 0xb4, 0x9f, 0x4a, 0xaf, 0xe2, 0x2e, 0x5f, 0xee, 0x26, 0xa1, 0xa7, 0xef, 0x23, }; static const unsigned char xdh_wei448_3526_privkey[] = { 0xe0, 0x1f, 0xe2, 0x6e, 0x43, 0x75, 0xd4, 0xf6, 0x9b, 0x32, 0x09, 0xdd, 0x68, 0x81, 0xc0, 0xd4, 0xf0, 0x1f, 0xb7, 0x72, 0x81, 0xb9, 0xb6, 0xec, 0xc3, 0x5e, 0x79, 0x80, 0x54, 0x2a, 0x10, 0xda, 0xf8, 0x38, 0xba, 0x6c, 0xd4, 0xdb, 0xa6, 0x22, 0x54, 0xab, 0xba, 0x0e, 0xd4, 0x48, 0x33, 0x79, 0x83, 0x8a, 0x0a, 0xd7, 0x35, 0x37, 0xeb, 0x86, }; static const unsigned char xdh_wei448_3526_sharedsecret[] = { 0xd0, 0x62, 0x3e, 0x44, 0x77, 0x00, 0x86, 0x6d, 0xe7, 0x68, 0x78, 0x26, 0xa8, 0xa7, 0x0b, 0xc1, 0xf1, 0x5f, 0xb8, 0x42, 0x61, 0xa2, 0x7f, 0x64, 0x0a, 0xd0, 0x3e, 0x77, 0x8c, 0x50, 0x7b, 0xc2, 0x54, 0xe0, 0x50, 0x04, 0xa0, 0x0a, 0xb2, 0xef, 0x49, 0xeb, 0x7d, 0x0c, 0x91, 0x02, 0xc6, 0x40, 0x0f, 0x67, 0x7f, 0x45, 0x25, 0x04, 0xec, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3526 = { .name = "xdh_wei448_3526", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3526_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3526_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3526_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 432 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3527 for XDH, tcId is 433 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3527_peerpubkey[] = { 0x33, 0x7a, 0x44, 0xd3, 0xb0, 0x72, 0xad, 0x2a, 0x41, 0xdd, 0x41, 0x92, 0xca, 0x2f, 0xd8, 0x61, 0xaf, 0x53, 0xef, 0xd0, 0x80, 0xd0, 0xee, 0xbf, 0xca, 0xc3, 0xc6, 0x6c, 0xc9, 0x9b, 0x84, 0xbe, 0xa3, 0x36, 0xec, 0xef, 0xdd, 0xf5, 0x5e, 0x6b, 0xec, 0x33, 0x7d, 0xa3, 0x34, 0xb8, 0xeb, 0xe3, 0x8b, 0x4c, 0x39, 0x46, 0x66, 0xd2, 0xaa, 0x56, }; static const unsigned char xdh_wei448_3527_privkey[] = { 0xa0, 0x4c, 0x53, 0xb1, 0x52, 0xe8, 0xfd, 0xe1, 0x9a, 0x07, 0x96, 0xd0, 0x56, 0x75, 0x9e, 0x13, 0x48, 0xac, 0xd4, 0x3e, 0xfe, 0x3f, 0x55, 0xb1, 0xfb, 0x38, 0xd6, 0xc6, 0xd5, 0x07, 0x21, 0x1e, 0xe6, 0x64, 0x27, 0x14, 0xb3, 0x23, 0x4e, 0x6e, 0x2d, 0xbb, 0x36, 0xff, 0xb5, 0xd0, 0x2d, 0xa8, 0xa7, 0xc8, 0x01, 0x26, 0x58, 0xff, 0xae, 0x89, }; static const unsigned char xdh_wei448_3527_sharedsecret[] = { 0x6c, 0xf3, 0xf4, 0xc8, 0x9b, 0xbc, 0xdd, 0x24, 0x99, 0x41, 0x38, 0x2a, 0x6d, 0x06, 0xaf, 0xc4, 0x47, 0x5c, 0xa7, 0x2c, 0x22, 0x8d, 0x9d, 0x3c, 0xc4, 0x72, 0x1c, 0xc9, 0xe6, 0x3d, 0x94, 0x48, 0xaf, 0x90, 0x01, 0x3b, 0x4d, 0x83, 0x1a, 0x19, 0x27, 0xbe, 0x13, 0xa2, 0x50, 0x20, 0xe7, 0x25, 0xe7, 0xbe, 0xb9, 0x45, 0x50, 0xef, 0xbe, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_3527 = { .name = "xdh_wei448_3527", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3527_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3527_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3527_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 433 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3528 for XDH, tcId is 434 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3528_peerpubkey[] = { 0x13, 0xde, 0x45, 0x94, 0xaf, 0xab, 0xeb, 0xbf, 0xff, 0x7c, 0x6a, 0xd2, 0x4d, 0x9e, 0x36, 0xdb, 0x41, 0x65, 0x0a, 0x66, 0xce, 0xed, 0x76, 0x63, 0xc4, 0x4a, 0x9e, 0xe3, 0x4f, 0x36, 0x04, 0xe8, 0xd6, 0xc4, 0x5b, 0xcc, 0xaa, 0xee, 0xcb, 0xa8, 0x88, 0x42, 0x44, 0xd2, 0xe7, 0x17, 0x60, 0xaf, 0xfc, 0x57, 0xe3, 0xe5, 0x1a, 0xe7, 0x75, 0x71, }; static const unsigned char xdh_wei448_3528_privkey[] = { 0xa4, 0x62, 0xce, 0xc9, 0x36, 0x92, 0x33, 0xf2, 0xaa, 0x18, 0xdb, 0x8e, 0x05, 0x9b, 0x5b, 0xe1, 0x97, 0x19, 0xbd, 0x3f, 0x8e, 0x75, 0x28, 0x81, 0x99, 0x17, 0xa9, 0x6a, 0xbe, 0xc1, 0x30, 0xa4, 0xca, 0xbb, 0xd5, 0x9a, 0xb3, 0x85, 0xbb, 0xd8, 0x8a, 0xb7, 0x25, 0xed, 0x1c, 0x2d, 0x01, 0x1e, 0x9d, 0x33, 0x1d, 0x75, 0x04, 0xd6, 0x0e, 0x8b, }; static const unsigned char xdh_wei448_3528_sharedsecret[] = { 0xec, 0xcf, 0x64, 0x2c, 0x29, 0xf9, 0x48, 0xbb, 0x35, 0x00, 0x9e, 0x6a, 0xc2, 0x60, 0x37, 0x38, 0x81, 0x82, 0xd1, 0xac, 0x54, 0xa1, 0xdc, 0xf9, 0x70, 0xea, 0xd2, 0xbe, 0xae, 0xcc, 0x71, 0x4a, 0xab, 0xf6, 0x4b, 0x6f, 0x0d, 0x4f, 0x34, 0xc7, 0xbc, 0xe6, 0xb1, 0xe0, 0x73, 0x19, 0x98, 0x4f, 0x9f, 0x15, 0x32, 0x6d, 0xf5, 0x76, 0x80, 0x8b, }; static const wycheproof_xdh_test xdh_wei448_3528 = { .name = "xdh_wei448_3528", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3528_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3528_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3528_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 434 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3529 for XDH, tcId is 435 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3529_peerpubkey[] = { 0x78, 0x49, 0x8b, 0xd7, 0x7e, 0x19, 0xd5, 0xc0, 0x3f, 0xe0, 0x9f, 0xc9, 0x92, 0x29, 0xb1, 0xa8, 0x17, 0xf7, 0x32, 0x60, 0x21, 0xe2, 0xe0, 0x7b, 0xc0, 0x91, 0x7d, 0x54, 0x79, 0x84, 0x81, 0x13, 0xe2, 0x30, 0x7e, 0x50, 0xbc, 0xcf, 0x90, 0x4a, 0x50, 0x23, 0xab, 0xb9, 0xbe, 0x03, 0x86, 0xa0, 0x18, 0xeb, 0x50, 0xbc, 0xd9, 0x9b, 0x7d, 0x93, }; static const unsigned char xdh_wei448_3529_privkey[] = { 0x74, 0xde, 0xdb, 0x25, 0xf4, 0x9d, 0xe2, 0x23, 0x65, 0x68, 0x49, 0x20, 0x08, 0xbd, 0x6c, 0xc8, 0x75, 0x5a, 0xeb, 0x73, 0x03, 0xe2, 0x40, 0xf0, 0xac, 0xc8, 0xa5, 0x99, 0x99, 0xdc, 0x94, 0x71, 0x7a, 0xe3, 0xfb, 0x4d, 0x04, 0x52, 0xf0, 0x82, 0x78, 0x4e, 0x89, 0x5b, 0xd3, 0x1b, 0xdf, 0xbd, 0xb6, 0xe7, 0x19, 0x55, 0xaf, 0x31, 0xe4, 0x83, }; static const unsigned char xdh_wei448_3529_sharedsecret[] = { 0x64, 0x16, 0xc4, 0x78, 0xb8, 0x3a, 0xba, 0x72, 0xde, 0xdc, 0xf7, 0xcd, 0xf7, 0x58, 0xf2, 0xa2, 0x19, 0xb0, 0x85, 0x60, 0x10, 0x85, 0x9a, 0xe9, 0x07, 0xfd, 0xbb, 0x06, 0xdf, 0xb2, 0xfe, 0x93, 0x63, 0x7c, 0xe1, 0x4b, 0xa1, 0x2c, 0x40, 0x75, 0x59, 0x1e, 0x3a, 0xa4, 0x39, 0xe9, 0x83, 0x5e, 0xe6, 0x53, 0x02, 0xca, 0x72, 0x26, 0xbc, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3529 = { .name = "xdh_wei448_3529", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3529_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3529_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3529_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 435 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3530 for XDH, tcId is 436 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3530_peerpubkey[] = { 0xa1, 0x12, 0x9e, 0x2b, 0xa4, 0xe8, 0xe5, 0x77, 0xf2, 0x3f, 0x09, 0x9b, 0x99, 0x02, 0xc8, 0x3e, 0x3a, 0xb9, 0x07, 0xf5, 0x98, 0x51, 0x11, 0xf9, 0x2f, 0x1d, 0x66, 0x8f, 0x1c, 0x0f, 0x53, 0x4e, 0x00, 0x22, 0x8b, 0xbc, 0xd8, 0xf3, 0x12, 0xbf, 0x46, 0xd7, 0xe3, 0x98, 0x9c, 0x9d, 0xe6, 0x07, 0xe4, 0x98, 0x07, 0x94, 0x34, 0xa5, 0x90, 0xc8, }; static const unsigned char xdh_wei448_3530_privkey[] = { 0x1c, 0xd9, 0xf8, 0x5a, 0x2e, 0x93, 0x13, 0xdf, 0xaf, 0xa6, 0xe8, 0xcc, 0xb4, 0x5a, 0xe2, 0x6a, 0x51, 0x28, 0x8c, 0x39, 0xbd, 0xc4, 0xa0, 0xde, 0x50, 0xc7, 0x57, 0x4c, 0x7d, 0xc5, 0x0c, 0xcb, 0xb0, 0x68, 0x3d, 0xc4, 0x0c, 0x03, 0x6e, 0xbb, 0x83, 0x3b, 0x3b, 0x6d, 0x82, 0xdd, 0xfb, 0x18, 0x00, 0x64, 0x78, 0xfe, 0xcf, 0x2d, 0x98, 0x82, }; static const unsigned char xdh_wei448_3530_sharedsecret[] = { 0x99, 0x64, 0xf1, 0xfa, 0x7b, 0x34, 0xeb, 0x88, 0x89, 0xe8, 0xda, 0x93, 0xa1, 0x6a, 0x3d, 0x35, 0x45, 0xfa, 0xca, 0xa0, 0x38, 0xba, 0x15, 0x20, 0x93, 0xe2, 0x22, 0x01, 0x1c, 0x1c, 0xb0, 0xa9, 0x48, 0x7c, 0xca, 0x08, 0xe2, 0xa8, 0xe9, 0x3f, 0x44, 0x0e, 0x4c, 0x38, 0x3e, 0xb8, 0xe2, 0x6c, 0xf2, 0x5a, 0x22, 0xad, 0x35, 0x8b, 0xc6, 0xae, }; static const wycheproof_xdh_test xdh_wei448_3530 = { .name = "xdh_wei448_3530", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3530_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3530_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3530_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 436 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3531 for XDH, tcId is 437 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3531_peerpubkey[] = { 0xc5, 0x0e, 0x7e, 0x03, 0xc7, 0xb6, 0xbd, 0xaf, 0x94, 0x9c, 0xfa, 0x1d, 0x16, 0x76, 0xa6, 0x32, 0x15, 0x08, 0xa4, 0x46, 0xf3, 0xee, 0x24, 0x6d, 0x78, 0x1b, 0xac, 0x57, 0x25, 0xd9, 0x31, 0xe8, 0xf0, 0xb0, 0x0a, 0x78, 0x0a, 0xba, 0xe0, 0x0b, 0x31, 0x3e, 0x66, 0xe6, 0x17, 0x0f, 0x21, 0xf3, 0xbd, 0x01, 0xb0, 0x86, 0x51, 0xd5, 0x8d, 0xe8, }; static const unsigned char xdh_wei448_3531_privkey[] = { 0x3c, 0xbb, 0x83, 0x47, 0x73, 0x92, 0x93, 0xe9, 0x9b, 0x8d, 0xa8, 0x9a, 0xc2, 0xe5, 0xa6, 0x77, 0xc7, 0x2a, 0x02, 0x21, 0x78, 0xef, 0xc9, 0x81, 0x49, 0x41, 0xb8, 0x99, 0xaf, 0x28, 0xe7, 0xa1, 0xdf, 0x9a, 0xed, 0xc7, 0x0b, 0x3e, 0xc8, 0xf5, 0xac, 0x2a, 0xd4, 0xaf, 0x9c, 0x53, 0xd5, 0x2a, 0xa5, 0xaa, 0xd8, 0xf1, 0x23, 0x46, 0xd1, 0x8e, }; static const unsigned char xdh_wei448_3531_sharedsecret[] = { 0x6d, 0x99, 0x2d, 0x27, 0x53, 0xe4, 0xac, 0xcd, 0x47, 0x8b, 0x92, 0x5e, 0xc3, 0x9d, 0x73, 0x49, 0x30, 0x5a, 0x49, 0x88, 0x9b, 0xdc, 0x7f, 0x25, 0xec, 0xf3, 0xb0, 0xa4, 0xb4, 0xc2, 0xa0, 0x3a, 0xc6, 0x2f, 0x60, 0x53, 0x3b, 0xa6, 0xe3, 0x97, 0x21, 0x71, 0x99, 0xba, 0xbf, 0x69, 0x5e, 0xea, 0x42, 0x46, 0x1f, 0x24, 0x6e, 0x9c, 0x75, 0xda, }; static const wycheproof_xdh_test xdh_wei448_3531 = { .name = "xdh_wei448_3531", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3531_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3531_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3531_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 437 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3532 for XDH, tcId is 438 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3532_peerpubkey[] = { 0xe5, 0x11, 0x3d, 0x1e, 0x12, 0x9f, 0x26, 0x1b, 0xc9, 0x1e, 0x7a, 0x40, 0x9b, 0x73, 0xfe, 0x0c, 0x79, 0xf5, 0x61, 0xfd, 0xab, 0xa0, 0x9b, 0xe3, 0xb4, 0x5a, 0xa3, 0x99, 0x9e, 0xa6, 0x17, 0x4c, 0x78, 0x37, 0x60, 0x6e, 0xd9, 0xc2, 0xfb, 0x4c, 0x36, 0xa6, 0x13, 0xf7, 0x97, 0xdc, 0x76, 0x75, 0x22, 0x87, 0xbb, 0x58, 0xa9, 0xf1, 0xcb, 0x15, }; static const unsigned char xdh_wei448_3532_privkey[] = { 0x0c, 0x94, 0x26, 0xcb, 0x52, 0x09, 0xdf, 0xd0, 0x7f, 0xd3, 0x46, 0x56, 0xf1, 0x45, 0x6e, 0x6b, 0xaf, 0xa1, 0x1c, 0xad, 0x58, 0xa7, 0x62, 0xea, 0x22, 0x1a, 0x16, 0xc1, 0xba, 0x8b, 0x9d, 0x24, 0x77, 0x74, 0x27, 0x44, 0xa0, 0x63, 0x62, 0xb4, 0x06, 0x97, 0x85, 0x43, 0x05, 0xd6, 0x72, 0xd7, 0xdb, 0xbb, 0xd4, 0x84, 0x2b, 0xec, 0xa5, 0x82, }; static const unsigned char xdh_wei448_3532_sharedsecret[] = { 0xa7, 0x5d, 0x72, 0x6b, 0x54, 0xce, 0x76, 0xe9, 0xf1, 0x5d, 0x4a, 0x9f, 0x52, 0x11, 0xb6, 0x24, 0x5d, 0x68, 0xc1, 0x4c, 0xf4, 0x84, 0x6f, 0xe4, 0x70, 0xcb, 0x44, 0xb9, 0x5a, 0xf6, 0x80, 0x96, 0x57, 0x3f, 0x0d, 0x96, 0xd4, 0xfc, 0xf3, 0x0b, 0x7e, 0x19, 0x84, 0x18, 0x8f, 0xff, 0x0f, 0x3a, 0xb5, 0xc1, 0x10, 0x50, 0x0e, 0xee, 0xc4, 0xe0, }; static const wycheproof_xdh_test xdh_wei448_3532 = { .name = "xdh_wei448_3532", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3532_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3532_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3532_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 438 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3533 for XDH, tcId is 439 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3533_peerpubkey[] = { 0x56, 0x15, 0x12, 0x2b, 0x2f, 0xbb, 0x50, 0x62, 0x04, 0x09, 0x18, 0x65, 0x84, 0x1b, 0x5d, 0x28, 0xd9, 0x07, 0x55, 0x77, 0xb4, 0xaf, 0xa3, 0x38, 0xb4, 0x3f, 0xc6, 0x57, 0x9e, 0xca, 0x54, 0x76, 0xe3, 0x56, 0x78, 0x99, 0xba, 0x6b, 0x33, 0x29, 0xb4, 0x57, 0xfd, 0x46, 0xa4, 0xf3, 0xca, 0x23, 0x9e, 0x18, 0x5a, 0x73, 0x56, 0xf0, 0x68, 0x37, }; static const unsigned char xdh_wei448_3533_privkey[] = { 0x64, 0x90, 0x6d, 0x71, 0x3a, 0x86, 0x15, 0x12, 0xe1, 0x16, 0x31, 0xe1, 0x73, 0xa0, 0xae, 0xd2, 0xfd, 0x8b, 0x54, 0xb1, 0x39, 0x4e, 0x89, 0xb1, 0xd8, 0xcd, 0x08, 0x4e, 0xe6, 0xba, 0xcf, 0x81, 0xea, 0xfa, 0xed, 0x45, 0x12, 0x5d, 0xa4, 0xd0, 0xc5, 0xe2, 0xfb, 0xd8, 0xe3, 0x51, 0x8e, 0x66, 0x31, 0xae, 0xc9, 0x8d, 0xba, 0x41, 0x87, 0x83, }; static const unsigned char xdh_wei448_3533_sharedsecret[] = { 0xcc, 0x92, 0x97, 0xac, 0x7b, 0x8f, 0x07, 0xcf, 0x15, 0x4e, 0xea, 0xd3, 0xff, 0x95, 0xf0, 0xbe, 0x8e, 0xe2, 0xee, 0xea, 0xae, 0xc1, 0xd2, 0xaf, 0x9b, 0xb7, 0x70, 0xc5, 0x2a, 0x33, 0xad, 0x86, 0x5b, 0x9a, 0x18, 0x92, 0x6f, 0xf2, 0xce, 0x68, 0x9f, 0xf5, 0x8e, 0x2f, 0xb4, 0x0e, 0x0c, 0xfd, 0x1c, 0xd8, 0x68, 0xcd, 0xec, 0x77, 0x6e, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3533 = { .name = "xdh_wei448_3533", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3533_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3533_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3533_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 439 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3534 for XDH, tcId is 440 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3534_peerpubkey[] = { 0x73, 0x02, 0x41, 0x13, 0x7d, 0x5a, 0x3e, 0x0a, 0x14, 0x7a, 0xb9, 0x92, 0xae, 0x96, 0xb0, 0x75, 0x6c, 0x81, 0x0d, 0x30, 0xa1, 0x03, 0xd2, 0x09, 0xda, 0x7a, 0xfe, 0x10, 0xd8, 0x0b, 0xe2, 0x72, 0x93, 0x7b, 0x0b, 0xe3, 0x70, 0xf0, 0xff, 0xd3, 0x8c, 0xca, 0x62, 0x56, 0x90, 0xa1, 0xa8, 0xe7, 0x9b, 0x95, 0xd4, 0x41, 0x7e, 0x8d, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_3534_privkey[] = { 0x84, 0x32, 0xc3, 0xe5, 0x95, 0x02, 0xa3, 0x95, 0xab, 0x45, 0x04, 0x9d, 0x1c, 0x97, 0x89, 0x9b, 0x5d, 0xb6, 0xb1, 0xa3, 0x47, 0x4a, 0x08, 0xc6, 0x78, 0x5a, 0xdb, 0xfe, 0xdd, 0x8c, 0xb1, 0xed, 0xc9, 0x6f, 0x3b, 0xfb, 0xf3, 0xb2, 0xab, 0x9f, 0x38, 0x7f, 0x65, 0x29, 0x6e, 0xf4, 0xab, 0xeb, 0x4a, 0x56, 0x1a, 0x9e, 0xc6, 0x8a, 0xdb, 0x8b, }; static const unsigned char xdh_wei448_3534_sharedsecret[] = { 0x8d, 0x9d, 0x14, 0x03, 0x63, 0xa7, 0x9d, 0xc8, 0x12, 0x6a, 0xd4, 0xd3, 0xe7, 0x52, 0x64, 0xa7, 0x69, 0xfd, 0x0d, 0x08, 0x4b, 0x91, 0x0b, 0x9e, 0x1e, 0x8b, 0x5a, 0xbb, 0x84, 0x9b, 0x69, 0x2b, 0x73, 0xc2, 0xc2, 0xd9, 0x62, 0xc7, 0x55, 0xd0, 0x80, 0x8b, 0x66, 0x8d, 0x24, 0x9a, 0x52, 0xc7, 0xaf, 0x49, 0x5d, 0xd3, 0xe2, 0x9b, 0x2a, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_3534 = { .name = "xdh_wei448_3534", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3534_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3534_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3534_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 440 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3535 for XDH, tcId is 441 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3535_peerpubkey[] = { 0x56, 0xfb, 0xc7, 0xa4, 0xb2, 0x6d, 0x32, 0xb4, 0x75, 0x65, 0x64, 0xb7, 0xf0, 0x74, 0x25, 0x9c, 0x13, 0x91, 0x0e, 0x57, 0x9f, 0xd6, 0x75, 0x4e, 0xb1, 0x96, 0x26, 0x47, 0xf3, 0x32, 0xbb, 0x1d, 0x92, 0x93, 0x85, 0x4f, 0x1c, 0x30, 0x5b, 0x1c, 0x3a, 0x66, 0xbb, 0x6c, 0x9a, 0x99, 0xc8, 0x98, 0x3e, 0x0f, 0xba, 0xaa, 0x1d, 0x9e, 0x2b, 0xf4, }; static const unsigned char xdh_wei448_3535_privkey[] = { 0xd4, 0x07, 0x96, 0x8b, 0x10, 0xd6, 0x95, 0x05, 0x65, 0xe5, 0x6c, 0x71, 0x6d, 0xb5, 0xfb, 0x60, 0xaa, 0xd7, 0x94, 0x27, 0x31, 0x1b, 0xba, 0x84, 0xba, 0x4a, 0xf2, 0x12, 0x8f, 0xff, 0x2f, 0xc8, 0x37, 0x0f, 0x11, 0x44, 0x08, 0x4b, 0xbc, 0x7b, 0x42, 0x0f, 0x84, 0xaf, 0xe8, 0xc3, 0x91, 0x0d, 0xe8, 0x98, 0xb9, 0x76, 0x31, 0x9f, 0x76, 0x89, }; static const unsigned char xdh_wei448_3535_sharedsecret[] = { 0x29, 0x07, 0x44, 0x85, 0xc6, 0x60, 0x20, 0xf8, 0xa2, 0x6e, 0x16, 0xaf, 0xe6, 0x8a, 0xe1, 0x30, 0x65, 0xc1, 0x3e, 0x9d, 0x16, 0x3b, 0x19, 0x79, 0x8e, 0xa9, 0x92, 0xf3, 0x8f, 0x7b, 0xae, 0x87, 0xee, 0xdc, 0xea, 0x21, 0x4b, 0x78, 0x8b, 0x95, 0x12, 0x68, 0x19, 0xa9, 0xf1, 0xe7, 0x11, 0xca, 0x9d, 0x72, 0x58, 0xb5, 0xd5, 0xe6, 0x3e, 0x30, }; static const wycheproof_xdh_test xdh_wei448_3535 = { .name = "xdh_wei448_3535", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3535_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3535_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3535_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 441 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3536 for XDH, tcId is 442 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3536_peerpubkey[] = { 0x00, 0xdf, 0x4e, 0x75, 0x40, 0xc0, 0xb9, 0xfe, 0xad, 0xfc, 0x21, 0xdf, 0xc5, 0xd9, 0xeb, 0x3a, 0x04, 0xb1, 0xe8, 0x78, 0x39, 0x63, 0x8d, 0x35, 0x0d, 0x51, 0xeb, 0x0d, 0xc4, 0x56, 0x04, 0x90, 0x1d, 0xab, 0x57, 0x82, 0x5e, 0x93, 0x7f, 0x15, 0xd7, 0xfb, 0x80, 0x89, 0xa1, 0x27, 0x87, 0x18, 0xac, 0x00, 0xd2, 0x75, 0x8f, 0xd1, 0xf4, 0x21, }; static const unsigned char xdh_wei448_3536_privkey[] = { 0xd8, 0xb1, 0xca, 0x51, 0xa6, 0xe3, 0x61, 0xd2, 0xa7, 0x1f, 0xa8, 0x4d, 0x49, 0x57, 0xf2, 0xcc, 0xfc, 0x8b, 0xb3, 0x72, 0x32, 0x0c, 0xcf, 0x74, 0xe2, 0x79, 0xf6, 0xef, 0xea, 0x2c, 0xa3, 0x61, 0x37, 0xd4, 0xdf, 0x19, 0x2d, 0x93, 0x27, 0x05, 0xb7, 0xb4, 0xed, 0x2d, 0xee, 0x3c, 0x56, 0x86, 0x03, 0xec, 0x62, 0xc7, 0x7e, 0x4a, 0xf4, 0x85, }; static const unsigned char xdh_wei448_3536_sharedsecret[] = { 0xd9, 0x83, 0x35, 0x3a, 0x16, 0x8b, 0xc2, 0x29, 0xf3, 0xb8, 0x05, 0xc0, 0xe0, 0x36, 0x98, 0x33, 0x6f, 0xea, 0x84, 0xb9, 0x22, 0x12, 0x12, 0x9d, 0xf2, 0x34, 0x40, 0x59, 0xd1, 0x38, 0xff, 0x00, 0x1a, 0x5b, 0xb5, 0x36, 0x85, 0x37, 0x3f, 0x8f, 0x93, 0x79, 0x13, 0x72, 0x16, 0x53, 0x4b, 0x05, 0x57, 0xeb, 0x34, 0x83, 0x36, 0x7d, 0x42, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3536 = { .name = "xdh_wei448_3536", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3536_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3536_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3536_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 442 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3537 for XDH, tcId is 443 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3537_peerpubkey[] = { 0x5c, 0xba, 0x61, 0x48, 0x14, 0x5e, 0x5c, 0x21, 0x51, 0x77, 0x2d, 0xb6, 0x9d, 0xce, 0x9f, 0x12, 0x3e, 0xc8, 0xcb, 0x0d, 0x4e, 0x42, 0x60, 0x36, 0x15, 0xd1, 0x60, 0xb3, 0xd4, 0xa4, 0xee, 0xab, 0xe5, 0x4b, 0xf0, 0x0f, 0x55, 0x88, 0x3b, 0xc7, 0xc0, 0x09, 0xb9, 0x4d, 0x5f, 0x35, 0x9c, 0xd1, 0xac, 0xd5, 0xea, 0x14, 0x55, 0x74, 0x2e, 0x36, }; static const unsigned char xdh_wei448_3537_privkey[] = { 0xf8, 0x54, 0xe8, 0x01, 0x4b, 0xfe, 0x18, 0x70, 0xf5, 0x31, 0xf8, 0x32, 0x00, 0x36, 0x40, 0xe4, 0x43, 0x9a, 0xac, 0x4b, 0xc2, 0x3e, 0x03, 0x92, 0x0f, 0xcd, 0x65, 0x1f, 0xae, 0x12, 0x8d, 0x38, 0xe6, 0xf3, 0x6c, 0x53, 0xb9, 0x1b, 0xa8, 0x29, 0x63, 0x62, 0x3f, 0xed, 0x40, 0x16, 0x15, 0x6b, 0xa5, 0x5f, 0x61, 0xfa, 0xb6, 0x6e, 0xe6, 0x82, }; static const unsigned char xdh_wei448_3537_sharedsecret[] = { 0x3e, 0x46, 0xc5, 0xfa, 0x76, 0xd5, 0x9e, 0x0c, 0xc7, 0x98, 0x25, 0xb4, 0xd3, 0xc4, 0x9d, 0xa0, 0x18, 0x2a, 0xc8, 0xd4, 0x92, 0x50, 0xc1, 0xd9, 0x35, 0x28, 0x92, 0x0e, 0x69, 0xc5, 0x7a, 0xfd, 0x24, 0x5b, 0xa5, 0x2c, 0x11, 0x3a, 0x52, 0xdd, 0x17, 0xd8, 0x13, 0xe4, 0x02, 0x9a, 0x8b, 0x15, 0xba, 0xfc, 0xc7, 0x0b, 0x7f, 0x1c, 0x36, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3537 = { .name = "xdh_wei448_3537", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3537_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3537_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3537_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 443 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3538 for XDH, tcId is 444 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3538_peerpubkey[] = { 0xf5, 0xff, 0x91, 0xf7, 0xed, 0x21, 0xf4, 0x12, 0xb7, 0x58, 0x99, 0x2d, 0x15, 0x08, 0xfd, 0xdf, 0x2d, 0xdc, 0x47, 0x00, 0xac, 0x4c, 0x9f, 0xd3, 0x51, 0xe2, 0x6d, 0x52, 0x04, 0xe0, 0x7a, 0x6a, 0x5a, 0xf6, 0x72, 0x5d, 0x66, 0x1b, 0x5c, 0x54, 0xfb, 0x26, 0x4b, 0xf7, 0xc2, 0xfa, 0x8f, 0x8e, 0x98, 0xd6, 0x57, 0x9f, 0x22, 0x57, 0x95, 0xad, }; static const unsigned char xdh_wei448_3538_privkey[] = { 0x20, 0x9c, 0xee, 0x11, 0x1f, 0xcf, 0xde, 0x94, 0xbd, 0x33, 0x02, 0x0a, 0xe5, 0x51, 0x5d, 0x62, 0xe0, 0x9c, 0x69, 0x17, 0xe3, 0xe3, 0x0a, 0xfd, 0xc9, 0xa1, 0xba, 0x34, 0x9e, 0x6c, 0xd9, 0x60, 0x9d, 0xdb, 0xc8, 0xa1, 0x84, 0xef, 0xb9, 0x50, 0xce, 0x66, 0x14, 0xb3, 0x12, 0x05, 0x9e, 0xb1, 0x50, 0x87, 0x33, 0xca, 0x84, 0x63, 0x29, 0x84, }; static const unsigned char xdh_wei448_3538_sharedsecret[] = { 0x7f, 0x24, 0xac, 0xbd, 0x29, 0xc0, 0xa2, 0x3a, 0x43, 0x16, 0xa2, 0x91, 0x98, 0xba, 0xfa, 0x8e, 0x91, 0xfd, 0xcd, 0xbd, 0x06, 0x63, 0x9e, 0x55, 0xc4, 0xf3, 0xe7, 0x60, 0x2a, 0xb2, 0x72, 0x2d, 0x75, 0xeb, 0x00, 0x80, 0xf8, 0xc1, 0x1e, 0xfb, 0x11, 0x0f, 0xb9, 0x4f, 0x67, 0x26, 0x5e, 0xb4, 0xe5, 0x6a, 0xe0, 0xd9, 0x91, 0xb1, 0x71, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_3538 = { .name = "xdh_wei448_3538", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3538_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3538_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3538_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 444 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3539 for XDH, tcId is 445 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3539_peerpubkey[] = { 0xda, 0xc2, 0x84, 0x09, 0x77, 0xf3, 0x98, 0x90, 0xf4, 0xe1, 0x7e, 0xbc, 0x7c, 0x48, 0x36, 0x14, 0x16, 0x7a, 0xc2, 0xc3, 0x7a, 0x55, 0xb0, 0x5b, 0x63, 0x61, 0x81, 0x60, 0x8b, 0xc5, 0x39, 0x36, 0xdf, 0xed, 0x3b, 0x4f, 0x4f, 0x0b, 0x8f, 0xfb, 0x05, 0x0f, 0x2f, 0x18, 0x31, 0x48, 0x51, 0x65, 0x70, 0x9b, 0x80, 0xd8, 0x8a, 0xac, 0x10, 0xc2, }; static const unsigned char xdh_wei448_3539_privkey[] = { 0xcc, 0x29, 0x03, 0x0d, 0x9e, 0xa5, 0x28, 0x34, 0x11, 0xc7, 0xba, 0xd6, 0xba, 0xed, 0xb4, 0x2e, 0xd3, 0x7e, 0x26, 0xfd, 0x17, 0xd9, 0x62, 0x0a, 0x9b, 0xb4, 0xd4, 0x1b, 0x17, 0x47, 0xc3, 0xfa, 0x56, 0xc0, 0xf5, 0x0d, 0xa7, 0xb5, 0x22, 0x7b, 0xa3, 0xbb, 0x30, 0x33, 0x7c, 0x76, 0x95, 0x88, 0xb4, 0xcb, 0xda, 0x9e, 0x2b, 0xa6, 0xc1, 0x83, }; static const unsigned char xdh_wei448_3539_sharedsecret[] = { 0x82, 0x35, 0x58, 0xfa, 0x43, 0xf9, 0x9f, 0xe6, 0xe0, 0xa5, 0x57, 0x1e, 0x5a, 0xa0, 0x1f, 0x8c, 0xa1, 0xaf, 0xa7, 0x3d, 0x6b, 0x6d, 0xf9, 0xd2, 0xff, 0x81, 0x34, 0x6b, 0x0b, 0xa5, 0x1e, 0xdc, 0x3e, 0x3a, 0x29, 0x27, 0x43, 0x38, 0x90, 0x8b, 0x68, 0xa9, 0xa0, 0x3a, 0xda, 0x44, 0x2b, 0x6a, 0x1e, 0x91, 0x71, 0xb2, 0x6a, 0xbf, 0xf8, 0xc6, }; static const wycheproof_xdh_test xdh_wei448_3539 = { .name = "xdh_wei448_3539", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3539_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3539_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3539_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 445 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3540 for XDH, tcId is 446 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3540_peerpubkey[] = { 0x27, 0x9a, 0x2d, 0x0a, 0x94, 0x36, 0x01, 0xa5, 0xd4, 0x0f, 0x6c, 0xb5, 0x44, 0xc3, 0x01, 0x34, 0x5b, 0x43, 0xb5, 0x8b, 0xaf, 0x9e, 0x49, 0xf4, 0xde, 0x3c, 0x1d, 0xe2, 0xbb, 0xc1, 0xec, 0x14, 0x26, 0xda, 0xb4, 0x4a, 0xfe, 0xf9, 0x97, 0x99, 0xe4, 0x28, 0x8c, 0x61, 0x51, 0x1f, 0xc4, 0xea, 0x0c, 0x2f, 0xab, 0x22, 0x8e, 0x8c, 0xce, 0x3e, }; static const unsigned char xdh_wei448_3540_privkey[] = { 0x08, 0x25, 0x01, 0x3a, 0x52, 0x0e, 0x13, 0x50, 0x9d, 0x29, 0x99, 0x7a, 0x5a, 0xa8, 0xfd, 0xe0, 0x0b, 0x77, 0x01, 0x1b, 0x3a, 0x63, 0xa5, 0x0b, 0xbe, 0xfc, 0x5b, 0x54, 0xb1, 0xe3, 0x85, 0x71, 0x98, 0xe8, 0xc9, 0xa8, 0x0f, 0x7b, 0x66, 0x14, 0xcc, 0x11, 0xe0, 0xb8, 0x5b, 0xad, 0x33, 0x7c, 0x1f, 0xe7, 0x4b, 0xf7, 0x31, 0xaf, 0xde, 0x83, }; static const unsigned char xdh_wei448_3540_sharedsecret[] = { 0xec, 0xc8, 0x4b, 0xb8, 0xf2, 0xc0, 0x86, 0x00, 0x02, 0x67, 0xd8, 0x9c, 0x1a, 0x7b, 0x21, 0x1d, 0x54, 0x15, 0x41, 0x47, 0x27, 0x06, 0x95, 0x10, 0x37, 0x50, 0xc9, 0xc1, 0x44, 0x86, 0x1a, 0x1c, 0x24, 0x28, 0xfb, 0x5f, 0x69, 0xcc, 0x2d, 0xd4, 0x9b, 0xe5, 0x7c, 0x41, 0x57, 0xa4, 0x84, 0xa7, 0x7d, 0xac, 0x9b, 0x03, 0x3d, 0xc6, 0x72, 0x81, }; static const wycheproof_xdh_test xdh_wei448_3540 = { .name = "xdh_wei448_3540", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3540_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3540_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3540_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 446 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3541 for XDH, tcId is 447 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3541_peerpubkey[] = { 0xc2, 0xa6, 0xe4, 0xd8, 0xf4, 0x8a, 0xbc, 0xdd, 0xf9, 0x40, 0xcc, 0x97, 0xaf, 0x3c, 0xf9, 0xd6, 0x34, 0xd2, 0x52, 0x81, 0x41, 0xac, 0xe9, 0xbd, 0x4f, 0xcd, 0x3b, 0xe1, 0x8d, 0xa8, 0xa3, 0x95, 0xe4, 0xaf, 0xcf, 0xbe, 0xb5, 0xc9, 0x81, 0x2b, 0x8a, 0xcf, 0x64, 0x72, 0xc3, 0x69, 0xe5, 0x68, 0x48, 0xb8, 0x78, 0xcf, 0xdf, 0x95, 0xb6, 0x48, }; static const unsigned char xdh_wei448_3541_privkey[] = { 0x64, 0x28, 0x5a, 0xb9, 0xf4, 0x6a, 0x40, 0xbf, 0xd4, 0x6b, 0x78, 0xd0, 0xad, 0x7f, 0x0e, 0xf3, 0xff, 0xfe, 0x04, 0xf3, 0xb4, 0x26, 0xbf, 0xd4, 0xe0, 0x24, 0x91, 0xe7, 0xa1, 0x3a, 0x25, 0x02, 0x72, 0x03, 0x99, 0x43, 0xa2, 0xb1, 0x04, 0xfd, 0xb8, 0xbf, 0x7b, 0x66, 0xd1, 0xe8, 0x3f, 0x11, 0x2b, 0x72, 0xf1, 0x85, 0x60, 0xd0, 0x67, 0x8d, }; static const unsigned char xdh_wei448_3541_sharedsecret[] = { 0xb3, 0xba, 0x7a, 0x3a, 0x1a, 0x79, 0x10, 0xe0, 0x94, 0x78, 0x57, 0x10, 0x4f, 0xd9, 0x0a, 0x60, 0x9f, 0x5d, 0x04, 0x80, 0x0f, 0x8c, 0x97, 0x12, 0xe6, 0x7d, 0x62, 0x15, 0xd6, 0x5d, 0x08, 0x15, 0x85, 0x8f, 0x91, 0x7c, 0xb4, 0xc9, 0x10, 0xc7, 0x9b, 0x2c, 0xb5, 0xaa, 0x6d, 0x04, 0xcb, 0x6b, 0xe6, 0xb9, 0xf4, 0x2e, 0x9b, 0x18, 0xe4, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3541 = { .name = "xdh_wei448_3541", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3541_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3541_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3541_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 447 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3542 for XDH, tcId is 448 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3542_peerpubkey[] = { 0xe3, 0x49, 0x56, 0x0c, 0x1a, 0x2c, 0x1f, 0xd2, 0x9e, 0x62, 0x30, 0x91, 0xec, 0x08, 0xc1, 0x49, 0xcf, 0xcc, 0x3c, 0xbd, 0xf8, 0xec, 0x38, 0xab, 0xf3, 0xe2, 0xb4, 0xe3, 0x3a, 0xbe, 0xcf, 0x85, 0x46, 0xfe, 0x04, 0xe3, 0xd2, 0x7a, 0xb9, 0xa3, 0xb4, 0xbf, 0x90, 0xdb, 0x3d, 0xe9, 0x0e, 0xbc, 0xc5, 0x4b, 0x75, 0xd3, 0x1a, 0xc0, 0xe8, 0x51, }; static const unsigned char xdh_wei448_3542_privkey[] = { 0xc8, 0x66, 0x04, 0x42, 0x6c, 0x7a, 0x51, 0xed, 0x5c, 0xbc, 0x2f, 0xb2, 0x6c, 0x99, 0x75, 0x51, 0x88, 0xb9, 0x5c, 0x0f, 0xb2, 0x18, 0xa0, 0xf5, 0x43, 0xef, 0x34, 0x00, 0x82, 0xb4, 0x0b, 0x4a, 0x4b, 0xff, 0x68, 0x89, 0x4f, 0xd9, 0xe3, 0xb9, 0x05, 0x7b, 0x51, 0x3f, 0x00, 0xdb, 0x0f, 0x49, 0x88, 0x22, 0x1e, 0x79, 0x9c, 0x96, 0x41, 0x80, }; static const unsigned char xdh_wei448_3542_sharedsecret[] = { 0xbe, 0x9a, 0xa6, 0x91, 0x17, 0xdf, 0xdc, 0xe5, 0xc5, 0x84, 0x95, 0xb5, 0x0d, 0x9f, 0x52, 0x83, 0x8f, 0xac, 0x6f, 0x6e, 0x9b, 0x4e, 0x99, 0x24, 0x01, 0x7a, 0x40, 0xf9, 0x37, 0x5d, 0x55, 0xf5, 0x6b, 0xed, 0x07, 0x26, 0x96, 0x98, 0xb6, 0xe2, 0xef, 0xbf, 0x9c, 0xea, 0x52, 0xdd, 0x2e, 0x5c, 0xfd, 0x51, 0xee, 0x9c, 0x19, 0xcc, 0xbc, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_3542 = { .name = "xdh_wei448_3542", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3542_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3542_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3542_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 448 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3543 for XDH, tcId is 449 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3543_peerpubkey[] = { 0x84, 0x7c, 0xa2, 0xc6, 0xb0, 0x59, 0x2a, 0xcc, 0xb6, 0xff, 0x64, 0x3d, 0xc2, 0xc9, 0x0e, 0x90, 0x29, 0x99, 0x3d, 0x8f, 0x77, 0x40, 0x3d, 0xec, 0xc0, 0x07, 0xf3, 0xff, 0xfb, 0x77, 0xaa, 0x35, 0xda, 0xd0, 0xd3, 0xe7, 0x5a, 0x2c, 0x58, 0x85, 0x80, 0x11, 0x3d, 0x86, 0x3a, 0xa2, 0x12, 0xec, 0xe7, 0x65, 0x57, 0xc2, 0xc7, 0xc9, 0x0b, 0x61, }; static const unsigned char xdh_wei448_3543_privkey[] = { 0xf4, 0x0b, 0xf1, 0xba, 0x70, 0x53, 0x95, 0xf0, 0x92, 0x0c, 0x0e, 0xff, 0xbd, 0x09, 0x0e, 0x67, 0x06, 0x4d, 0x20, 0xe0, 0xc6, 0x18, 0x0b, 0x37, 0x3d, 0xe9, 0x2a, 0x31, 0x76, 0x2a, 0xcf, 0x2c, 0x74, 0x55, 0xd0, 0xf3, 0x02, 0xda, 0xc9, 0x42, 0x12, 0x67, 0x7b, 0xbd, 0x9a, 0x05, 0x55, 0x18, 0xa0, 0x06, 0x70, 0x56, 0x41, 0x4f, 0x37, 0x8a, }; static const unsigned char xdh_wei448_3543_sharedsecret[] = { 0x7e, 0x34, 0xa5, 0x0e, 0x34, 0x46, 0xe4, 0xdf, 0x31, 0x3d, 0xf5, 0x0a, 0x70, 0x10, 0x61, 0x98, 0xee, 0xb7, 0xfe, 0x14, 0x49, 0x8e, 0xe2, 0x2b, 0xad, 0x93, 0x3c, 0x74, 0x58, 0xc9, 0xd8, 0xaf, 0xb5, 0x02, 0x72, 0x21, 0xac, 0x02, 0x15, 0x94, 0x43, 0x83, 0x9a, 0xae, 0x4f, 0x07, 0xcd, 0x7a, 0xc6, 0x6e, 0xb4, 0x0c, 0x0f, 0x01, 0x85, 0x95, }; static const wycheproof_xdh_test xdh_wei448_3543 = { .name = "xdh_wei448_3543", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3543_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3543_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3543_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 449 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3544 for XDH, tcId is 450 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3544_peerpubkey[] = { 0x29, 0x79, 0x01, 0x58, 0xcc, 0x57, 0x81, 0x71, 0x16, 0xda, 0xfd, 0x0b, 0xfd, 0xab, 0x37, 0x8f, 0x55, 0x2b, 0x81, 0xb5, 0x84, 0x54, 0x95, 0xbc, 0xe7, 0x80, 0x55, 0xbe, 0x1e, 0x4f, 0xd3, 0xcf, 0x18, 0x4b, 0x4c, 0x04, 0x20, 0x2a, 0xac, 0xb4, 0x48, 0x60, 0xb4, 0x79, 0xe4, 0xb2, 0xff, 0x86, 0xf4, 0x8f, 0x2b, 0x75, 0x4f, 0x14, 0xcf, 0x7c, }; static const unsigned char xdh_wei448_3544_privkey[] = { 0x48, 0x21, 0x4f, 0x09, 0xfd, 0xe0, 0x53, 0xec, 0x90, 0xe4, 0x55, 0xbe, 0x28, 0xa5, 0xf5, 0xd6, 0x1e, 0x4a, 0x0e, 0xec, 0xb2, 0xd7, 0x14, 0xf8, 0xd7, 0xca, 0x66, 0x18, 0x85, 0x4c, 0x5d, 0x70, 0x55, 0xac, 0x41, 0xa8, 0xb3, 0x61, 0xf3, 0xe4, 0xb6, 0x76, 0x43, 0x55, 0x8b, 0x22, 0x8a, 0x09, 0x4c, 0x08, 0x24, 0x8f, 0xcf, 0x31, 0xc6, 0x8b, }; static const unsigned char xdh_wei448_3544_sharedsecret[] = { 0x87, 0xde, 0xbb, 0x5b, 0x1b, 0x3a, 0x26, 0xe3, 0x5d, 0xb9, 0xeb, 0xe2, 0x15, 0xaf, 0x98, 0x05, 0xce, 0x1d, 0x04, 0x36, 0x19, 0xbb, 0xb2, 0xf6, 0xc8, 0xcf, 0x38, 0x0c, 0x62, 0x24, 0x72, 0xc3, 0x62, 0xb1, 0x96, 0xb1, 0x87, 0x77, 0x9e, 0x6c, 0xaf, 0x36, 0x46, 0xc5, 0xea, 0xcf, 0x1a, 0xaa, 0x12, 0x49, 0x6e, 0x19, 0xaf, 0x62, 0x7f, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_3544 = { .name = "xdh_wei448_3544", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3544_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3544_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3544_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 450 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3545 for XDH, tcId is 451 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3545_peerpubkey[] = { 0x55, 0x1b, 0x4e, 0xa2, 0x3d, 0x25, 0x73, 0x1e, 0x99, 0xe3, 0xed, 0x5c, 0x36, 0x5b, 0x49, 0xff, 0xd1, 0xe5, 0x9e, 0x8a, 0xb9, 0x9f, 0xbc, 0x3c, 0xb1, 0x18, 0x69, 0xf6, 0xa3, 0x65, 0x73, 0x6d, 0x17, 0x1c, 0x92, 0x99, 0x2d, 0x41, 0xd2, 0x88, 0x79, 0x78, 0x91, 0xfe, 0x32, 0x9b, 0xed, 0x87, 0x85, 0x9f, 0xbf, 0x13, 0x6b, 0x17, 0x9c, 0xb0, }; static const unsigned char xdh_wei448_3545_privkey[] = { 0x94, 0xd5, 0x8d, 0x10, 0xfe, 0x0d, 0x69, 0xb4, 0xc5, 0xaf, 0x5f, 0x59, 0x4e, 0xbd, 0x20, 0x51, 0xd8, 0x24, 0xf0, 0xb8, 0xb9, 0x70, 0xd0, 0x87, 0x7e, 0x8a, 0xba, 0x62, 0x79, 0x7a, 0x8d, 0x0f, 0xb1, 0x05, 0x28, 0x91, 0xf2, 0x65, 0xd8, 0xdb, 0x50, 0xca, 0xb5, 0x17, 0xa8, 0x34, 0xee, 0x21, 0x42, 0x58, 0x3b, 0xbb, 0x83, 0x1a, 0xe8, 0x87, }; static const unsigned char xdh_wei448_3545_sharedsecret[] = { 0x65, 0xf2, 0x6e, 0x62, 0xf5, 0xf6, 0x77, 0xc9, 0xd9, 0xad, 0x8c, 0x9d, 0x04, 0xef, 0x88, 0x2d, 0x3d, 0x06, 0x31, 0x74, 0x60, 0x8c, 0x90, 0x15, 0x99, 0x1b, 0xdf, 0x7b, 0x7a, 0x28, 0xec, 0x4b, 0xa0, 0x7a, 0x3b, 0x4a, 0x84, 0x65, 0x60, 0x2c, 0x71, 0xb7, 0xa4, 0x73, 0x5b, 0x53, 0x4b, 0x8a, 0x7b, 0x48, 0xed, 0xde, 0x20, 0xb1, 0xc7, 0x73, }; static const wycheproof_xdh_test xdh_wei448_3545 = { .name = "xdh_wei448_3545", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3545_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3545_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3545_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 451 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3546 for XDH, tcId is 452 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3546_peerpubkey[] = { 0xab, 0xd2, 0x35, 0x61, 0xec, 0x4c, 0xcd, 0x50, 0x06, 0x48, 0x9e, 0xaa, 0xfe, 0xb5, 0xc9, 0xde, 0x26, 0xdc, 0x0b, 0x1c, 0x9e, 0x37, 0x53, 0x68, 0x60, 0x8c, 0xaf, 0xa5, 0x44, 0x56, 0x97, 0x5a, 0xaf, 0xae, 0x03, 0x1b, 0xc0, 0x69, 0xa4, 0x56, 0xd5, 0x4e, 0xd7, 0x5d, 0x45, 0x08, 0xe4, 0x1d, 0xbe, 0xe3, 0x03, 0x18, 0x0d, 0xac, 0x5e, 0xc2, }; static const unsigned char xdh_wei448_3546_privkey[] = { 0xcc, 0x53, 0x91, 0x25, 0x93, 0x71, 0x56, 0x86, 0xde, 0x21, 0xea, 0x0b, 0x5b, 0x4c, 0x32, 0x80, 0x77, 0xc7, 0xfe, 0xa1, 0x9b, 0x02, 0x50, 0xde, 0xe4, 0x82, 0x2f, 0xad, 0x0d, 0x41, 0xe5, 0xf1, 0xf3, 0x55, 0xeb, 0xe9, 0xf1, 0xa6, 0x2c, 0xeb, 0x1f, 0x90, 0x2f, 0xfe, 0xed, 0x2b, 0xc7, 0xfb, 0x40, 0xb8, 0xc9, 0x7c, 0x36, 0x6f, 0x3a, 0x80, }; static const unsigned char xdh_wei448_3546_sharedsecret[] = { 0x36, 0x03, 0x03, 0x26, 0x03, 0x55, 0xa2, 0x05, 0x88, 0xa9, 0x24, 0xbb, 0xa2, 0x98, 0xbf, 0x7c, 0xdc, 0x34, 0x75, 0x0c, 0xcd, 0x59, 0x40, 0x23, 0x90, 0x9b, 0xb6, 0xc8, 0x10, 0x84, 0xd5, 0x98, 0x4e, 0x98, 0x57, 0x23, 0xe8, 0x55, 0x7a, 0x9c, 0xc5, 0xf1, 0xf0, 0x8c, 0x3b, 0xeb, 0x2d, 0x56, 0x47, 0x8d, 0xf2, 0x68, 0x2e, 0xfc, 0x78, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_3546 = { .name = "xdh_wei448_3546", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3546_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3546_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3546_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 452 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3547 for XDH, tcId is 453 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3547_peerpubkey[] = { 0xb3, 0xd6, 0x8b, 0xee, 0x6c, 0xd3, 0xf2, 0xbb, 0xe4, 0x9b, 0xe1, 0x15, 0x93, 0x60, 0xd2, 0x6a, 0xeb, 0x1a, 0xe3, 0x2b, 0xd8, 0x05, 0x08, 0x1c, 0x24, 0xde, 0x14, 0xb2, 0xc2, 0x3d, 0x13, 0xb0, 0xe4, 0x5c, 0x2b, 0x12, 0x54, 0x36, 0xf4, 0x42, 0xd5, 0x26, 0xa5, 0x4d, 0x85, 0x82, 0xb9, 0x24, 0x33, 0xc8, 0x44, 0x92, 0x58, 0xed, 0xd4, 0xc3, }; static const unsigned char xdh_wei448_3547_privkey[] = { 0x2c, 0xa8, 0x10, 0x4c, 0x30, 0xf6, 0xcf, 0x2d, 0x86, 0x1a, 0x7e, 0xa9, 0xc6, 0x0c, 0x29, 0x91, 0x0c, 0x6c, 0x75, 0xfc, 0x78, 0x63, 0x83, 0xee, 0x2a, 0x9e, 0xf3, 0xe2, 0xe1, 0x28, 0x61, 0x52, 0x92, 0xbe, 0x2e, 0xd1, 0x67, 0x2a, 0x8a, 0x21, 0x62, 0xf1, 0x92, 0xbb, 0x7d, 0x4a, 0x3a, 0x2f, 0xa3, 0x46, 0xa4, 0x8d, 0xff, 0x10, 0xb0, 0x88, }; static const unsigned char xdh_wei448_3547_sharedsecret[] = { 0x8a, 0x14, 0xfe, 0x42, 0x6b, 0x3a, 0xbc, 0x24, 0x8f, 0x4b, 0xfc, 0x27, 0xe2, 0x69, 0x45, 0xb7, 0xe4, 0xa7, 0x84, 0x3a, 0x40, 0x28, 0x84, 0x2f, 0xcf, 0xd8, 0x99, 0xd3, 0x8c, 0xee, 0xf6, 0xab, 0x9d, 0x5c, 0x58, 0xc1, 0x7f, 0xf0, 0x4a, 0x5f, 0xb4, 0x2d, 0x12, 0xe8, 0xec, 0xb9, 0x05, 0x2b, 0xea, 0xae, 0xe8, 0x41, 0x5d, 0x88, 0xe0, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3547 = { .name = "xdh_wei448_3547", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3547_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3547_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3547_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 453 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3548 for XDH, tcId is 454 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3548_peerpubkey[] = { 0x4b, 0x04, 0xef, 0x0c, 0x42, 0xf1, 0x33, 0x83, 0x31, 0x06, 0xbb, 0x87, 0xa9, 0xd8, 0xa9, 0xf8, 0x0b, 0xd0, 0x5a, 0xbe, 0xb9, 0x01, 0x27, 0xfa, 0x74, 0x13, 0xca, 0x4d, 0xe0, 0x46, 0xea, 0x10, 0x1e, 0xc7, 0x96, 0x13, 0xa8, 0x76, 0x3d, 0xb2, 0xd2, 0x40, 0x50, 0xf8, 0x13, 0x7f, 0xff, 0xcd, 0xe7, 0xd3, 0x07, 0x57, 0x45, 0xc5, 0x52, 0x49, }; static const unsigned char xdh_wei448_3548_privkey[] = { 0x70, 0x96, 0x7c, 0xdd, 0xff, 0xdb, 0x1e, 0xf1, 0x5f, 0x3b, 0xf6, 0xf2, 0xae, 0x06, 0x9e, 0xe3, 0xbc, 0x14, 0x39, 0x46, 0x94, 0x5f, 0x0f, 0x81, 0x23, 0x95, 0xd0, 0x75, 0xc8, 0x6d, 0xf8, 0x88, 0x90, 0x49, 0xd5, 0xd0, 0x3b, 0x03, 0x09, 0x71, 0x67, 0xd0, 0x52, 0x39, 0x49, 0x77, 0xda, 0x36, 0x4d, 0x90, 0x18, 0x28, 0x6e, 0x9c, 0x70, 0x89, }; static const unsigned char xdh_wei448_3548_sharedsecret[] = { 0x25, 0xae, 0xd0, 0x08, 0xf8, 0xc0, 0xda, 0x48, 0xe6, 0x87, 0x69, 0xd5, 0x5a, 0x21, 0xc3, 0xd9, 0xab, 0x82, 0x9e, 0xf9, 0x3a, 0xde, 0x8a, 0x8b, 0x3f, 0xc3, 0xe2, 0xc3, 0xb0, 0x18, 0xae, 0xc2, 0x13, 0x71, 0x16, 0xca, 0xfd, 0x0b, 0x6b, 0xdc, 0x27, 0x2d, 0x8f, 0x6b, 0x5c, 0x56, 0x01, 0x5d, 0x94, 0x60, 0xd5, 0x38, 0x66, 0xd6, 0xe8, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3548 = { .name = "xdh_wei448_3548", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3548_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3548_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3548_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 454 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3549 for XDH, tcId is 455 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3549_peerpubkey[] = { 0xad, 0x8b, 0x71, 0xb1, 0x90, 0xd4, 0xe8, 0x74, 0x43, 0x97, 0x48, 0x46, 0x38, 0x3a, 0xe6, 0xb4, 0x59, 0x00, 0x90, 0x42, 0xf8, 0x27, 0x89, 0x61, 0x90, 0x1a, 0x99, 0xad, 0x61, 0x62, 0x97, 0xbc, 0xf9, 0x0e, 0x76, 0x79, 0x7e, 0x42, 0xcf, 0x0c, 0xc2, 0x68, 0x72, 0x27, 0x46, 0x38, 0xf9, 0xfe, 0xd0, 0xe2, 0xbd, 0xe9, 0xa5, 0x2f, 0xdf, 0x58, }; static const unsigned char xdh_wei448_3549_privkey[] = { 0x80, 0x51, 0x74, 0x29, 0xfa, 0x2a, 0x86, 0x8a, 0x00, 0xdb, 0x56, 0x94, 0xd2, 0x44, 0xdf, 0xfe, 0xe5, 0x31, 0x9b, 0x7e, 0x74, 0x4b, 0xb0, 0x51, 0x54, 0x5a, 0xf6, 0xc8, 0x06, 0x73, 0xd5, 0x00, 0x24, 0xe8, 0x30, 0x3d, 0x04, 0x90, 0x5e, 0x35, 0x41, 0x39, 0x8e, 0xb0, 0xbc, 0xf4, 0xf5, 0x10, 0x7b, 0xe4, 0xac, 0x25, 0xec, 0x9e, 0xa9, 0x8a, }; static const unsigned char xdh_wei448_3549_sharedsecret[] = { 0x79, 0x74, 0x3c, 0xd9, 0x18, 0xaa, 0xc1, 0x46, 0x0b, 0x6d, 0x17, 0xb4, 0x2a, 0xae, 0x00, 0x34, 0xff, 0x71, 0xf6, 0x21, 0xa8, 0xf9, 0x37, 0xa0, 0xe5, 0xa7, 0xb9, 0x09, 0x13, 0xdf, 0xfa, 0xaa, 0xd2, 0x6b, 0xbd, 0xbd, 0x58, 0x77, 0x2a, 0xc1, 0x9d, 0x1c, 0x3c, 0x01, 0x3c, 0x89, 0x1f, 0x4b, 0x25, 0x02, 0x9d, 0x2f, 0x32, 0xb8, 0x51, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_3549 = { .name = "xdh_wei448_3549", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3549_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3549_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3549_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 455 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3550 for XDH, tcId is 456 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3550_peerpubkey[] = { 0x3e, 0x81, 0xb3, 0x8f, 0x54, 0x45, 0xff, 0xdc, 0x2d, 0x59, 0xa8, 0x98, 0x80, 0x6d, 0xac, 0x4c, 0x88, 0xab, 0xdb, 0x9f, 0x5a, 0xf8, 0xe2, 0xcb, 0xef, 0x0f, 0x8d, 0xbe, 0x09, 0x68, 0x04, 0x01, 0x88, 0xa2, 0x85, 0x04, 0x03, 0xcc, 0x2a, 0xe7, 0xe9, 0x1d, 0x12, 0xf9, 0x28, 0x17, 0x01, 0x25, 0xdd, 0xab, 0xcd, 0xb2, 0xd5, 0x02, 0x62, 0x6c, }; static const unsigned char xdh_wei448_3550_privkey[] = { 0x10, 0xf2, 0x13, 0x45, 0x07, 0xb5, 0x4f, 0x0a, 0xc9, 0x3d, 0x13, 0x33, 0x58, 0x44, 0xdc, 0x9b, 0xcf, 0x0a, 0xb6, 0x3e, 0x37, 0x38, 0x0d, 0x26, 0x4d, 0x6a, 0x2b, 0x6a, 0xda, 0xbf, 0x28, 0x6f, 0x89, 0x2b, 0xe1, 0xc2, 0x18, 0xff, 0xe3, 0xb7, 0x81, 0xe7, 0x8c, 0x15, 0x16, 0x1a, 0xbb, 0x7c, 0x04, 0x93, 0xf3, 0x30, 0x46, 0xea, 0x86, 0x84, }; static const unsigned char xdh_wei448_3550_sharedsecret[] = { 0xc3, 0x98, 0x29, 0x33, 0xd6, 0xf8, 0x6d, 0x4d, 0xbb, 0x96, 0x38, 0x3c, 0x47, 0x44, 0x18, 0x59, 0x6f, 0xdd, 0xbd, 0x33, 0x12, 0x56, 0x50, 0x91, 0xdb, 0x1f, 0x39, 0x02, 0x4f, 0x24, 0x72, 0x3a, 0x9e, 0x99, 0x66, 0xd1, 0x8a, 0x38, 0x88, 0x70, 0x65, 0xf1, 0xcf, 0x44, 0x8b, 0xf3, 0xc8, 0xdd, 0x7a, 0xea, 0x31, 0xde, 0x06, 0xec, 0x01, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_3550 = { .name = "xdh_wei448_3550", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3550_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3550_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3550_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 456 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3551 for XDH, tcId is 457 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3551_peerpubkey[] = { 0xad, 0x39, 0xdb, 0x7d, 0x0a, 0xb6, 0xf1, 0x62, 0xd5, 0x8d, 0xae, 0x64, 0xee, 0x62, 0x58, 0xbb, 0xf1, 0xf1, 0x5e, 0xc1, 0x15, 0x99, 0x64, 0xc1, 0x96, 0xe8, 0xdf, 0x94, 0x99, 0xe7, 0xba, 0x1c, 0xfd, 0xa4, 0x81, 0xfc, 0x3a, 0xb3, 0x84, 0x24, 0x1d, 0x4b, 0xf2, 0x89, 0xb7, 0xf2, 0x97, 0x82, 0xf6, 0x2e, 0xf1, 0xd4, 0x5f, 0x75, 0xc7, 0xbe, }; static const unsigned char xdh_wei448_3551_privkey[] = { 0xf0, 0x4e, 0x43, 0x32, 0x65, 0x54, 0x81, 0xdb, 0xc2, 0x0d, 0x8a, 0x42, 0x85, 0x04, 0x66, 0xa7, 0x21, 0x06, 0x32, 0x1c, 0xc0, 0xb8, 0x9c, 0x12, 0xbe, 0x6c, 0xbc, 0x15, 0xd4, 0x32, 0xab, 0x63, 0xa1, 0x2c, 0x76, 0xda, 0x18, 0xed, 0xb4, 0xef, 0xd6, 0xf2, 0xc6, 0x83, 0xda, 0xdb, 0x86, 0xe5, 0x93, 0x9c, 0x15, 0xa5, 0xa7, 0x06, 0x44, 0x89, }; static const unsigned char xdh_wei448_3551_sharedsecret[] = { 0x42, 0xbe, 0x6b, 0xff, 0x60, 0xaa, 0x63, 0xf6, 0xe0, 0x96, 0x9b, 0x91, 0x5e, 0xc0, 0xac, 0x98, 0x28, 0x3f, 0xe6, 0x2c, 0x43, 0x04, 0x50, 0x2e, 0x6b, 0xb1, 0xcb, 0x15, 0xa2, 0x59, 0x68, 0xb6, 0x44, 0x5f, 0x19, 0x31, 0x03, 0x56, 0xf2, 0xeb, 0xb5, 0xfd, 0x5e, 0x13, 0x84, 0x47, 0x96, 0x87, 0x2a, 0x6f, 0x74, 0x17, 0xcd, 0x35, 0x05, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_3551 = { .name = "xdh_wei448_3551", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3551_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3551_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3551_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 457 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3552 for XDH, tcId is 458 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3552_peerpubkey[] = { 0xa9, 0x02, 0xf8, 0x73, 0x9f, 0xfa, 0xe2, 0x74, 0x15, 0x77, 0x05, 0x06, 0x60, 0xc9, 0xb7, 0x46, 0x90, 0xc5, 0x33, 0x0f, 0x88, 0xcc, 0xd0, 0x63, 0x97, 0x2a, 0xa0, 0x05, 0x14, 0xea, 0x06, 0x55, 0x07, 0x06, 0xfc, 0x83, 0x75, 0x1f, 0xb2, 0x45, 0xce, 0xdc, 0x78, 0x1d, 0x39, 0x73, 0x10, 0x8a, 0x0a, 0x0e, 0x18, 0x2c, 0x9d, 0xa2, 0x07, 0xc0, }; static const unsigned char xdh_wei448_3552_privkey[] = { 0xf8, 0xdc, 0x17, 0xe1, 0x18, 0xe0, 0x56, 0x9e, 0x5f, 0xec, 0xd8, 0x96, 0x1b, 0xda, 0xde, 0xca, 0xba, 0xe2, 0xf4, 0x2a, 0x0b, 0x40, 0xe3, 0xb2, 0x3c, 0xc5, 0x01, 0xba, 0x4f, 0x9b, 0xd3, 0x29, 0xad, 0x0b, 0xd3, 0x0b, 0xb9, 0x3d, 0xe6, 0x6b, 0x59, 0x97, 0x17, 0xcf, 0x95, 0x8e, 0x76, 0x5b, 0x69, 0x4f, 0x59, 0x74, 0xa9, 0x4e, 0x4d, 0x88, }; static const unsigned char xdh_wei448_3552_sharedsecret[] = { 0xc4, 0xf0, 0xcb, 0x9c, 0x4f, 0x3c, 0x3b, 0xa5, 0xc9, 0xc8, 0x84, 0x69, 0xd7, 0xd9, 0xfe, 0x82, 0xe9, 0x14, 0x11, 0x8e, 0x16, 0x4d, 0x28, 0xbc, 0x45, 0x09, 0xe2, 0x75, 0x32, 0x50, 0x09, 0xa0, 0x7f, 0x4a, 0x6b, 0x65, 0xc5, 0xa9, 0x73, 0x2f, 0x93, 0xeb, 0xe8, 0x02, 0xa3, 0x03, 0x9f, 0x03, 0xdb, 0x7f, 0xdb, 0x25, 0xb9, 0xcc, 0x9b, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3552 = { .name = "xdh_wei448_3552", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3552_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3552_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3552_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 458 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3553 for XDH, tcId is 459 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3553_peerpubkey[] = { 0x72, 0x2a, 0xb1, 0x1d, 0xa3, 0x7a, 0x44, 0x36, 0xee, 0xb8, 0x20, 0x46, 0xbb, 0x2b, 0xa5, 0x24, 0x58, 0x0c, 0xd7, 0x21, 0xc4, 0x9b, 0x79, 0x9b, 0x71, 0x29, 0xc6, 0x60, 0x36, 0xfa, 0xf2, 0xdf, 0x03, 0xc3, 0x96, 0xf9, 0x87, 0x14, 0xc4, 0x6f, 0x3e, 0x67, 0x48, 0xac, 0xef, 0x23, 0xc9, 0x28, 0xe8, 0x23, 0x75, 0x81, 0xc4, 0x35, 0x59, 0xd3, }; static const unsigned char xdh_wei448_3553_privkey[] = { 0xc0, 0x85, 0xe4, 0x06, 0xc8, 0x8d, 0x34, 0x18, 0xa1, 0x9a, 0xca, 0xe3, 0xe6, 0x18, 0xab, 0x18, 0x0d, 0xd9, 0xc6, 0x19, 0xae, 0xad, 0x09, 0x3f, 0xc5, 0x8f, 0x05, 0xaa, 0xe2, 0x1f, 0xa6, 0xb4, 0xed, 0x74, 0x73, 0x2b, 0x64, 0x0b, 0x6d, 0xa5, 0x9e, 0xe7, 0xb4, 0x12, 0x78, 0x30, 0xba, 0x51, 0x58, 0x89, 0x63, 0x73, 0x61, 0x34, 0x7d, 0x81, }; static const unsigned char xdh_wei448_3553_sharedsecret[] = { 0xda, 0xeb, 0xfd, 0xd9, 0xbd, 0x0d, 0xb1, 0x07, 0x48, 0xb0, 0x2f, 0xa7, 0x5b, 0x92, 0xa8, 0x79, 0x75, 0xd7, 0xae, 0x15, 0x80, 0xe3, 0xb3, 0x07, 0x64, 0xca, 0xc9, 0xc6, 0x77, 0x4e, 0xd6, 0xb7, 0x6e, 0xec, 0xaa, 0x73, 0xa7, 0x0f, 0xd3, 0xdd, 0xef, 0xc3, 0x8e, 0xe0, 0x81, 0x21, 0x18, 0x19, 0x88, 0x9c, 0x19, 0xd1, 0x63, 0x17, 0xed, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3553 = { .name = "xdh_wei448_3553", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3553_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3553_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3553_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 459 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3554 for XDH, tcId is 460 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3554_peerpubkey[] = { 0xe8, 0x60, 0x49, 0x68, 0x52, 0x0e, 0x86, 0xce, 0x55, 0x32, 0x34, 0x18, 0xe7, 0x40, 0x52, 0x78, 0x3b, 0xef, 0x2d, 0x38, 0xb9, 0x06, 0x1c, 0x8d, 0x35, 0x27, 0x70, 0x93, 0x82, 0x65, 0x6f, 0x3b, 0xf6, 0x29, 0x97, 0xf5, 0x1a, 0xed, 0xbf, 0x67, 0xa5, 0x6b, 0x8d, 0xe1, 0x89, 0x45, 0xff, 0xa5, 0x58, 0xaf, 0xbc, 0x24, 0x90, 0x3e, 0x1c, 0xe2, }; static const unsigned char xdh_wei448_3554_privkey[] = { 0xe4, 0x34, 0x72, 0xcc, 0xe6, 0x5a, 0x3b, 0x63, 0xe9, 0xcf, 0x5b, 0xc5, 0x83, 0x5c, 0x82, 0xe4, 0x8e, 0xa8, 0xda, 0x69, 0x05, 0xcb, 0x98, 0xff, 0xd7, 0x14, 0x17, 0xe0, 0x23, 0xaf, 0xe6, 0x05, 0xcc, 0x17, 0x50, 0x64, 0x32, 0xb8, 0xd6, 0xba, 0x79, 0x82, 0x9f, 0x69, 0xe8, 0x9d, 0x41, 0xbb, 0x7f, 0x52, 0x60, 0xb0, 0xe6, 0xe8, 0xff, 0x8c, }; static const unsigned char xdh_wei448_3554_sharedsecret[] = { 0x0e, 0x4d, 0x45, 0x7c, 0xd0, 0xe5, 0x70, 0x0d, 0x60, 0x71, 0xea, 0xb5, 0x7e, 0x4d, 0x93, 0xc1, 0x9d, 0xdc, 0x1b, 0x74, 0x10, 0x1b, 0xed, 0xa0, 0xbf, 0x8e, 0x9f, 0x57, 0x1d, 0xe8, 0x9d, 0x3d, 0x0d, 0xaf, 0x14, 0x60, 0xed, 0x4e, 0x57, 0x99, 0x0c, 0x66, 0x71, 0xd6, 0x9f, 0x07, 0x4f, 0x7a, 0xc1, 0xc0, 0xbc, 0x64, 0x99, 0x51, 0x20, 0xeb, }; static const wycheproof_xdh_test xdh_wei448_3554 = { .name = "xdh_wei448_3554", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3554_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3554_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3554_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 460 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3555 for XDH, tcId is 461 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3555_peerpubkey[] = { 0x38, 0xad, 0x42, 0xf2, 0x98, 0x17, 0xa8, 0xb9, 0x02, 0xb1, 0xfe, 0xc9, 0x7f, 0x91, 0x3e, 0x09, 0xa1, 0x0a, 0x45, 0x55, 0xc4, 0x11, 0xed, 0xab, 0x8d, 0x1b, 0x7b, 0x42, 0xaa, 0x06, 0xac, 0xa9, 0xf9, 0xcb, 0xa0, 0x47, 0xfb, 0x7f, 0x5f, 0xec, 0x5d, 0x49, 0x98, 0xbc, 0xf9, 0x21, 0xdf, 0x5c, 0x40, 0xd2, 0x50, 0xf7, 0x9b, 0x2f, 0xaf, 0x50, }; static const unsigned char xdh_wei448_3555_privkey[] = { 0x1c, 0x4d, 0x32, 0x4d, 0x01, 0xa6, 0xbd, 0x33, 0xa4, 0x0a, 0x54, 0x4b, 0xdb, 0x16, 0x0f, 0xbe, 0xc0, 0x4c, 0x52, 0xb6, 0x2a, 0xbd, 0xc0, 0x6b, 0x60, 0x89, 0xa8, 0x8c, 0xed, 0x16, 0xd7, 0x03, 0x0a, 0x85, 0x38, 0x72, 0x1b, 0xa5, 0x9c, 0x0f, 0x8c, 0xad, 0x87, 0x60, 0xbd, 0xad, 0xc8, 0x2c, 0x7f, 0x70, 0xbf, 0x02, 0x74, 0x30, 0x9d, 0x87, }; static const unsigned char xdh_wei448_3555_sharedsecret[] = { 0x4e, 0x61, 0x67, 0xcc, 0x89, 0x7a, 0xa7, 0x0b, 0xb8, 0x95, 0x04, 0x40, 0xa5, 0x43, 0xc5, 0x4d, 0x07, 0x7e, 0xeb, 0xf1, 0x0f, 0xda, 0xdc, 0x24, 0x85, 0xa1, 0x2e, 0x7e, 0xe0, 0x60, 0x17, 0x89, 0x9e, 0x08, 0x9d, 0xb8, 0x09, 0x2a, 0xc4, 0x4c, 0x60, 0x69, 0xe1, 0x6e, 0xd2, 0x5e, 0xb4, 0x15, 0xc3, 0x50, 0xe8, 0x23, 0xcd, 0x6a, 0xd2, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3555 = { .name = "xdh_wei448_3555", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3555_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3555_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3555_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 461 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3556 for XDH, tcId is 462 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3556_peerpubkey[] = { 0x66, 0x26, 0xc9, 0xe7, 0xb4, 0xaa, 0x66, 0x21, 0xb2, 0x98, 0xe6, 0xd5, 0x94, 0x4b, 0xd0, 0xa6, 0x4d, 0x14, 0xf0, 0x2b, 0xd2, 0xdf, 0x47, 0xe2, 0x61, 0x10, 0x0a, 0xae, 0x42, 0x6a, 0xe9, 0xdd, 0xf9, 0x42, 0x3e, 0xa2, 0xe6, 0xd0, 0x98, 0x91, 0xbc, 0x00, 0x54, 0xc5, 0x9c, 0xa6, 0xfc, 0x1c, 0xf4, 0xe9, 0xf1, 0xe3, 0x06, 0x00, 0x93, 0x5d, }; static const unsigned char xdh_wei448_3556_privkey[] = { 0xcc, 0x8f, 0xc0, 0x9c, 0xac, 0x12, 0x77, 0x05, 0xcc, 0x29, 0x38, 0x9e, 0xc4, 0x67, 0x62, 0xfc, 0xbe, 0xf0, 0xb5, 0x46, 0x0a, 0x54, 0x18, 0x59, 0x44, 0x2d, 0xd4, 0xf9, 0x03, 0x17, 0xd0, 0x76, 0xcc, 0xb7, 0x86, 0x85, 0xf2, 0xbf, 0xb8, 0xa4, 0xc2, 0xdd, 0xff, 0x53, 0x12, 0x64, 0x14, 0xed, 0x3c, 0x03, 0xd5, 0x60, 0xc9, 0x81, 0xb6, 0x8f, }; static const unsigned char xdh_wei448_3556_sharedsecret[] = { 0xd1, 0x89, 0xdc, 0xd8, 0xcd, 0x60, 0x16, 0x97, 0x29, 0xdc, 0x51, 0xc1, 0x36, 0xc8, 0x90, 0xef, 0x68, 0x2c, 0xc7, 0xa0, 0xe7, 0xd3, 0x82, 0xa0, 0xea, 0x52, 0xe8, 0x73, 0x38, 0xc1, 0xa7, 0x00, 0x3a, 0x38, 0xde, 0xb0, 0xc5, 0x05, 0xdb, 0x7c, 0x55, 0xd3, 0xdc, 0xe4, 0x77, 0xd6, 0xba, 0x7a, 0xe6, 0x40, 0x55, 0xb2, 0xae, 0x11, 0x9f, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_3556 = { .name = "xdh_wei448_3556", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3556_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3556_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3556_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 462 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3557 for XDH, tcId is 463 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3557_peerpubkey[] = { 0x81, 0x45, 0xf6, 0x98, 0xe5, 0xc3, 0xff, 0xe1, 0x0c, 0xc8, 0x0d, 0xc2, 0x32, 0xd0, 0x6b, 0x27, 0x7f, 0x16, 0xc9, 0x7c, 0xdf, 0x2a, 0x13, 0x59, 0x49, 0xec, 0x06, 0x1d, 0x78, 0x39, 0xc1, 0xbd, 0x79, 0xf9, 0x90, 0xf8, 0xbf, 0xc2, 0xb2, 0x4f, 0x61, 0x5a, 0xe5, 0x80, 0xa5, 0x69, 0x32, 0xe9, 0x45, 0x76, 0x28, 0x34, 0x97, 0xa6, 0xf2, 0x6f, }; static const unsigned char xdh_wei448_3557_privkey[] = { 0x00, 0xdb, 0x5c, 0x17, 0xb7, 0xf2, 0x76, 0x5d, 0x92, 0x16, 0x3a, 0x1a, 0xbf, 0xd7, 0x0b, 0x3b, 0x5a, 0x10, 0x5b, 0x5b, 0x24, 0xf7, 0xc5, 0x37, 0xeb, 0x33, 0xe1, 0xad, 0xa5, 0x06, 0xe9, 0x14, 0x9f, 0x0f, 0xa2, 0x5d, 0xed, 0x4d, 0x25, 0xfc, 0x37, 0x23, 0xa7, 0x7a, 0x96, 0xb4, 0x0e, 0x56, 0x45, 0x1e, 0xf7, 0x86, 0x09, 0xda, 0x98, 0x8d, }; static const unsigned char xdh_wei448_3557_sharedsecret[] = { 0xda, 0xf2, 0x30, 0xfd, 0x96, 0xf5, 0x99, 0xd2, 0xea, 0xd3, 0x14, 0x9b, 0xad, 0x9f, 0x5e, 0xcf, 0xe6, 0x4c, 0xbe, 0x20, 0xf7, 0x90, 0x97, 0xf1, 0xb2, 0x15, 0xda, 0x86, 0x5a, 0x46, 0xb6, 0xd7, 0x4c, 0x45, 0xae, 0x5b, 0xd6, 0x37, 0x4d, 0x4c, 0x2b, 0x72, 0x33, 0x2e, 0xde, 0xa3, 0x0d, 0xf1, 0x63, 0x83, 0xe4, 0x44, 0x7b, 0x1f, 0x35, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_3557 = { .name = "xdh_wei448_3557", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3557_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3557_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3557_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 463 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3558 for XDH, tcId is 464 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3558_peerpubkey[] = { 0xc3, 0x1a, 0xeb, 0x03, 0x0b, 0x50, 0x9c, 0x78, 0x44, 0xc8, 0x18, 0xa4, 0x83, 0x9f, 0x00, 0x0b, 0xde, 0x71, 0x06, 0x11, 0x28, 0x91, 0x79, 0xa4, 0x60, 0x75, 0xa9, 0x99, 0xe8, 0xcc, 0x3d, 0x10, 0xc3, 0x9a, 0xa5, 0x69, 0x7d, 0x62, 0xb4, 0x5a, 0x43, 0x77, 0x11, 0x84, 0x28, 0x8e, 0xee, 0x5a, 0x8d, 0x6a, 0x87, 0x3d, 0x74, 0x21, 0x05, 0x7b, }; static const unsigned char xdh_wei448_3558_privkey[] = { 0xf0, 0x3f, 0x05, 0x18, 0x1a, 0x81, 0x30, 0xe7, 0x21, 0x0c, 0xb5, 0x22, 0x9c, 0x8d, 0xff, 0xa4, 0x57, 0x54, 0x4e, 0xb5, 0xe1, 0xe1, 0xf8, 0x62, 0x97, 0xac, 0x23, 0xfe, 0x0e, 0xf4, 0x95, 0xca, 0xbc, 0x13, 0x67, 0xad, 0x20, 0x54, 0xc5, 0xd8, 0xee, 0xfb, 0x08, 0x34, 0x6e, 0xb5, 0xa1, 0x47, 0xba, 0x44, 0x9e, 0x89, 0x86, 0x02, 0x2b, 0x8c, }; static const unsigned char xdh_wei448_3558_sharedsecret[] = { 0xe7, 0x85, 0x1b, 0xc1, 0x3d, 0x7c, 0xb8, 0x00, 0x9c, 0x54, 0xa7, 0xd6, 0x33, 0xae, 0x82, 0xd2, 0x04, 0x10, 0x16, 0x15, 0xf3, 0x28, 0xba, 0x05, 0x09, 0x28, 0x41, 0x46, 0x9d, 0x41, 0x0a, 0x4d, 0x52, 0x7a, 0x17, 0xde, 0x91, 0x89, 0x51, 0x28, 0x58, 0x85, 0xb9, 0xd7, 0x67, 0xa0, 0xcb, 0xcc, 0x88, 0xf6, 0x9c, 0xe1, 0x50, 0xb3, 0x23, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3558 = { .name = "xdh_wei448_3558", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3558_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3558_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3558_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 464 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3559 for XDH, tcId is 465 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3559_peerpubkey[] = { 0x3a, 0xb5, 0x93, 0x72, 0x4e, 0xae, 0x72, 0xc6, 0xc3, 0xf7, 0x7a, 0x71, 0xf2, 0x3a, 0xc1, 0xac, 0x52, 0xad, 0xba, 0xea, 0xb9, 0x1f, 0x20, 0x82, 0xbb, 0xe8, 0x4a, 0x58, 0xe6, 0x03, 0xd7, 0x8d, 0x84, 0xe6, 0x51, 0xa6, 0xe5, 0x88, 0x57, 0xd6, 0xcc, 0x91, 0x76, 0x7c, 0xfa, 0xa5, 0xad, 0xf0, 0xc6, 0x7e, 0xe2, 0x3f, 0x04, 0x02, 0xaa, 0x7d, }; static const unsigned char xdh_wei448_3559_privkey[] = { 0x34, 0xd7, 0xfe, 0x88, 0x6b, 0x69, 0x6e, 0x16, 0x2f, 0x35, 0xf2, 0x6d, 0x0b, 0xf7, 0x4a, 0xbf, 0x13, 0xd4, 0x0e, 0x19, 0x3c, 0x1b, 0x69, 0xad, 0x1b, 0x6a, 0xa6, 0xd1, 0x3a, 0x34, 0x08, 0x54, 0xa9, 0xa0, 0xa6, 0x2b, 0x05, 0xda, 0x18, 0x32, 0x96, 0xa6, 0x22, 0xbb, 0x48, 0xeb, 0x8e, 0xd3, 0xe6, 0x76, 0x02, 0x75, 0x02, 0x72, 0x6d, 0x8b, }; static const unsigned char xdh_wei448_3559_sharedsecret[] = { 0x36, 0x95, 0x70, 0xa9, 0x4c, 0xbf, 0x29, 0x23, 0x4a, 0x63, 0x10, 0x0e, 0xdc, 0xbf, 0x84, 0x55, 0x71, 0xd8, 0x32, 0x61, 0x16, 0xb8, 0x27, 0x00, 0x2e, 0x5d, 0xe5, 0xdc, 0xe5, 0x42, 0x93, 0xd5, 0xe9, 0x15, 0x4d, 0xb7, 0x1b, 0x04, 0x07, 0x15, 0x6a, 0x75, 0x72, 0x4b, 0xc1, 0x64, 0xd6, 0x8b, 0xf8, 0x00, 0xdb, 0x2f, 0xeb, 0xbe, 0x64, 0xa1, }; static const wycheproof_xdh_test xdh_wei448_3559 = { .name = "xdh_wei448_3559", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3559_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3559_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3559_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 465 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3560 for XDH, tcId is 466 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3560_peerpubkey[] = { 0x2f, 0x40, 0x00, 0xa0, 0x10, 0xfb, 0xa8, 0x70, 0xbc, 0xb1, 0x31, 0xe7, 0x3e, 0xeb, 0x05, 0x22, 0xc2, 0x0f, 0xd5, 0x28, 0x2e, 0x33, 0x96, 0xe0, 0xde, 0x9e, 0xd2, 0x6a, 0x62, 0xb1, 0xd4, 0x37, 0x0b, 0xae, 0x26, 0x54, 0x4c, 0xff, 0x3c, 0xae, 0x78, 0xcd, 0x0b, 0x8e, 0xa2, 0x86, 0xc7, 0x4b, 0x1f, 0x7c, 0x7c, 0x7a, 0x9e, 0x73, 0x88, 0xe9, }; static const unsigned char xdh_wei448_3560_privkey[] = { 0xc8, 0x70, 0x53, 0x39, 0x02, 0xfe, 0x72, 0x8c, 0xf8, 0x8b, 0xb9, 0xb1, 0x78, 0xad, 0x0c, 0xcb, 0xb1, 0x55, 0x2a, 0xca, 0xeb, 0x41, 0xd3, 0x58, 0xd5, 0x17, 0x4a, 0x4c, 0x3e, 0xc9, 0x0a, 0xf0, 0x6b, 0x22, 0x55, 0xe5, 0xe1, 0x5c, 0xaf, 0x95, 0xcd, 0x31, 0x52, 0xb7, 0x4b, 0x59, 0x73, 0xc3, 0x39, 0x74, 0x8a, 0x36, 0x52, 0xcd, 0x98, 0x89, }; static const unsigned char xdh_wei448_3560_sharedsecret[] = { 0x50, 0xf0, 0x1d, 0x59, 0xa5, 0xcb, 0xc4, 0xc9, 0x6c, 0x32, 0xd8, 0x90, 0xe8, 0x99, 0x2a, 0x23, 0x60, 0x2d, 0xb6, 0x96, 0x6c, 0xf0, 0xd4, 0x20, 0xc2, 0x27, 0x3a, 0xbd, 0x8e, 0xeb, 0xaa, 0x2e, 0xbd, 0x54, 0x34, 0x61, 0x4b, 0x1a, 0x79, 0x17, 0x5d, 0x28, 0x4d, 0x12, 0xfd, 0x5d, 0x43, 0x5e, 0x47, 0xaf, 0xb7, 0xd4, 0x73, 0x61, 0x51, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3560 = { .name = "xdh_wei448_3560", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3560_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3560_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3560_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 466 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3561 for XDH, tcId is 467 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3561_peerpubkey[] = { 0x01, 0xb2, 0x37, 0xb2, 0xe5, 0x4b, 0x32, 0xd7, 0xc9, 0xba, 0x63, 0xd9, 0x7a, 0x3a, 0x27, 0x47, 0x1c, 0x24, 0x91, 0x17, 0x67, 0xf6, 0x18, 0x7c, 0x1d, 0x91, 0x4b, 0xec, 0x1f, 0x4f, 0x98, 0x34, 0x8a, 0xdf, 0x51, 0x1a, 0xd0, 0x87, 0xf8, 0xfe, 0x8a, 0xfd, 0x11, 0x07, 0xcb, 0xae, 0x81, 0x9f, 0x60, 0xea, 0x8c, 0x3c, 0xf6, 0xb7, 0xe5, 0xa1, }; static const unsigned char xdh_wei448_3561_privkey[] = { 0xf4, 0x58, 0x96, 0xc6, 0x4d, 0x14, 0xe3, 0x75, 0xb4, 0x0c, 0xa3, 0x13, 0x56, 0xb7, 0x85, 0xeb, 0x94, 0x4f, 0xc6, 0xad, 0x07, 0xc3, 0x43, 0x27, 0x98, 0x80, 0xbe, 0x61, 0x14, 0xf4, 0xbc, 0x56, 0x72, 0x6a, 0x98, 0x9c, 0x7c, 0xc2, 0x62, 0x71, 0x73, 0x35, 0xc3, 0x6a, 0xa7, 0x88, 0x06, 0xeb, 0xd8, 0x53, 0xa2, 0x2e, 0x70, 0x08, 0xba, 0x8d, }; static const unsigned char xdh_wei448_3561_sharedsecret[] = { 0xd6, 0x5b, 0x11, 0x3b, 0x36, 0x4d, 0x20, 0x15, 0x6a, 0x78, 0x43, 0x5a, 0x04, 0x66, 0x3d, 0x07, 0x8f, 0xb2, 0x08, 0x23, 0x4b, 0x74, 0x51, 0x51, 0xc9, 0x06, 0xe1, 0x12, 0xdf, 0xa7, 0xcb, 0xeb, 0x53, 0xde, 0x16, 0x32, 0x61, 0x1a, 0x6d, 0x61, 0x23, 0x40, 0x51, 0xa1, 0xd1, 0x8a, 0x86, 0x57, 0xd3, 0x72, 0x2f, 0xd6, 0xbb, 0x0d, 0xcf, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3561 = { .name = "xdh_wei448_3561", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3561_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3561_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3561_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 467 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3562 for XDH, tcId is 468 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3562_peerpubkey[] = { 0x25, 0x9d, 0x5b, 0x9e, 0x98, 0x3c, 0x18, 0x8c, 0x7f, 0x80, 0x05, 0x52, 0x3f, 0x22, 0x47, 0xbb, 0xed, 0x09, 0xa4, 0xad, 0x8b, 0xa3, 0xac, 0x1c, 0x01, 0x91, 0x7c, 0x2e, 0x27, 0xcf, 0xe1, 0xb4, 0x6d, 0xd7, 0x6c, 0xd3, 0xe0, 0xb7, 0x2b, 0x18, 0x6c, 0x8f, 0xb3, 0x70, 0x19, 0x72, 0xb4, 0x93, 0x8b, 0x1f, 0x7b, 0x52, 0xe6, 0x17, 0x75, 0x06, }; static const unsigned char xdh_wei448_3562_privkey[] = { 0x30, 0xc2, 0x30, 0x49, 0x39, 0x20, 0x45, 0x12, 0x2b, 0x04, 0xad, 0x8d, 0xef, 0xd0, 0xd2, 0xd9, 0xb6, 0xb6, 0x6c, 0x27, 0xe5, 0x0a, 0x50, 0xc2, 0xd2, 0x62, 0xe9, 0xab, 0xd3, 0x57, 0x17, 0x12, 0x69, 0x25, 0xdb, 0x2a, 0xe4, 0x6a, 0x82, 0x85, 0xbd, 0xbf, 0x5a, 0x86, 0x39, 0xbb, 0x9a, 0x7d, 0x38, 0x9d, 0xcd, 0xf3, 0x7d, 0x9f, 0xc6, 0x9b, }; static const unsigned char xdh_wei448_3562_sharedsecret[] = { 0xa8, 0x7e, 0x2b, 0x37, 0x26, 0x71, 0xbc, 0x4f, 0x9f, 0xa4, 0x5e, 0xb4, 0xf4, 0x98, 0x1c, 0x24, 0x7c, 0xde, 0x7e, 0x25, 0xbd, 0xcb, 0x9e, 0xd8, 0x00, 0x74, 0x8a, 0xd6, 0xf1, 0x11, 0xf0, 0xc7, 0xad, 0xa3, 0xc4, 0xc7, 0xb3, 0x2d, 0xae, 0x7f, 0xaf, 0x67, 0x64, 0x38, 0xba, 0xde, 0x9c, 0xa1, 0xbd, 0xa8, 0x22, 0x50, 0xf8, 0xa2, 0xf1, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3562 = { .name = "xdh_wei448_3562", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3562_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3562_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3562_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 468 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3563 for XDH, tcId is 469 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3563_peerpubkey[] = { 0x50, 0xe6, 0x8f, 0x3a, 0x02, 0x97, 0xd2, 0x17, 0xa4, 0xab, 0x14, 0xf6, 0x50, 0x89, 0x9e, 0x78, 0x8e, 0x10, 0x3e, 0x4e, 0xff, 0xe6, 0x98, 0x8b, 0xc8, 0x01, 0x71, 0x9a, 0xc8, 0xa5, 0xbe, 0xbe, 0x55, 0xe3, 0xa8, 0x1e, 0xd4, 0xf1, 0xb5, 0x64, 0x19, 0x81, 0xc9, 0xde, 0xe9, 0xa8, 0xbd, 0x94, 0x6b, 0xbc, 0x43, 0x64, 0x9a, 0x10, 0xc0, 0x25, }; static const unsigned char xdh_wei448_3563_privkey[] = { 0x78, 0xeb, 0xba, 0x71, 0xf4, 0xf9, 0xbc, 0x92, 0x9d, 0xf8, 0x68, 0x56, 0xd6, 0x00, 0xe3, 0x2b, 0x87, 0x8c, 0x99, 0xaa, 0x62, 0xfb, 0x01, 0xbf, 0xeb, 0x8e, 0xae, 0xd9, 0x3e, 0xc3, 0x63, 0xbe, 0xf8, 0x2d, 0xab, 0x72, 0x72, 0x25, 0xd8, 0x2e, 0x2a, 0xd7, 0xcc, 0x11, 0x23, 0x87, 0x90, 0x1b, 0xbe, 0x89, 0xdf, 0xfb, 0xad, 0x77, 0x84, 0x9e, }; static const unsigned char xdh_wei448_3563_sharedsecret[] = { 0x8c, 0x23, 0xb9, 0x27, 0x6c, 0x81, 0x64, 0xa6, 0x44, 0x7b, 0x0b, 0x3e, 0xc3, 0x30, 0x26, 0x8c, 0x38, 0xdd, 0x55, 0x3b, 0xf2, 0x09, 0xb6, 0x3c, 0x1d, 0x73, 0x3e, 0x2b, 0x88, 0x5d, 0x5a, 0x26, 0x66, 0x7b, 0xfb, 0xd6, 0xfc, 0x29, 0x37, 0x81, 0xc9, 0xe7, 0x09, 0x09, 0xe7, 0x42, 0xdd, 0xb1, 0x8a, 0x79, 0x81, 0x40, 0xcb, 0xee, 0xb9, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3563 = { .name = "xdh_wei448_3563", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3563_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3563_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3563_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 469 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3564 for XDH, tcId is 470 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3564_peerpubkey[] = { 0x16, 0x9d, 0x94, 0x58, 0xa9, 0xa9, 0x1b, 0x21, 0x4a, 0xb7, 0xe8, 0x3b, 0x97, 0x68, 0x37, 0x39, 0x99, 0xfe, 0xd6, 0x07, 0xda, 0xa9, 0x43, 0x58, 0x50, 0x37, 0x84, 0x97, 0x64, 0x5b, 0xbe, 0xb6, 0x9a, 0xab, 0x6f, 0x05, 0xfb, 0xf2, 0x4a, 0xfe, 0x51, 0x18, 0x02, 0xbc, 0x45, 0x3a, 0x29, 0x2b, 0xc7, 0x4a, 0x8d, 0xe0, 0x88, 0xef, 0x1e, 0x51, }; static const unsigned char xdh_wei448_3564_privkey[] = { 0x10, 0xc0, 0xb3, 0xb2, 0xe8, 0xb9, 0x8f, 0xce, 0x70, 0x7b, 0x31, 0x49, 0x94, 0x19, 0xe2, 0xac, 0x5f, 0x64, 0xab, 0xda, 0x25, 0x80, 0x75, 0xb6, 0x94, 0x1e, 0xe3, 0xb8, 0x28, 0xa1, 0x91, 0xa7, 0x21, 0xaf, 0x2a, 0x34, 0x4e, 0x89, 0x5c, 0x95, 0xad, 0x79, 0x4f, 0x7c, 0x4e, 0xf0, 0xf4, 0x69, 0x56, 0x05, 0x04, 0x38, 0x67, 0x8a, 0x1e, 0x9c, }; static const unsigned char xdh_wei448_3564_sharedsecret[] = { 0xf5, 0xc7, 0x6c, 0xa6, 0x09, 0x2d, 0xcf, 0x01, 0x61, 0x9b, 0x6e, 0x13, 0x89, 0x0b, 0x02, 0x96, 0xca, 0xac, 0x32, 0x92, 0xc5, 0xc9, 0xe3, 0x7b, 0x79, 0x88, 0x94, 0xf9, 0xf7, 0xbe, 0x57, 0x10, 0x77, 0xc2, 0x5f, 0xb1, 0x2d, 0x61, 0x6b, 0x63, 0xb4, 0xd5, 0xd8, 0xa9, 0x0e, 0x46, 0xf1, 0x09, 0xfc, 0x04, 0x62, 0x8e, 0x0b, 0x2c, 0x0d, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3564 = { .name = "xdh_wei448_3564", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3564_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3564_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3564_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 470 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3565 for XDH, tcId is 471 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3565_peerpubkey[] = { 0x88, 0xfb, 0xf6, 0x5e, 0x02, 0x44, 0xc8, 0xb2, 0x43, 0x1b, 0xd6, 0xe6, 0x31, 0x4d, 0x50, 0x88, 0xeb, 0xcd, 0xec, 0xde, 0x77, 0xfa, 0x27, 0xbd, 0x81, 0x38, 0x36, 0xc5, 0xff, 0x8a, 0xd3, 0xd0, 0xf0, 0x43, 0x98, 0x7b, 0x88, 0x1b, 0xca, 0xd1, 0xbf, 0x1e, 0x1d, 0xa5, 0xc6, 0x32, 0x31, 0xb7, 0x2b, 0x86, 0x21, 0x23, 0xcd, 0x39, 0x1b, 0x71, }; static const unsigned char xdh_wei448_3565_privkey[] = { 0x2c, 0x47, 0xd3, 0x4c, 0xb0, 0x93, 0x51, 0x33, 0x70, 0x8b, 0x21, 0xf4, 0x22, 0x7b, 0x52, 0xb2, 0xe4, 0xad, 0x18, 0x10, 0x81, 0xc5, 0x38, 0xe8, 0x7e, 0x5c, 0x87, 0x66, 0x06, 0xdb, 0x69, 0xe0, 0x7f, 0x35, 0xb3, 0xc9, 0xf8, 0x6b, 0x42, 0xa8, 0x37, 0x2a, 0x93, 0xfb, 0x3c, 0xd6, 0x74, 0xc0, 0xe3, 0x42, 0x24, 0x2a, 0xb9, 0x10, 0xde, 0x94, }; static const unsigned char xdh_wei448_3565_sharedsecret[] = { 0x2d, 0xbe, 0xa0, 0x42, 0x84, 0xc3, 0x14, 0xc9, 0x0d, 0xe0, 0x20, 0x76, 0xf8, 0x37, 0xde, 0xfa, 0xd2, 0x8e, 0x9e, 0x8d, 0x40, 0x09, 0x51, 0x94, 0xc7, 0x05, 0xcc, 0x20, 0x65, 0x56, 0xbc, 0x8b, 0x6a, 0x21, 0x17, 0x29, 0xfe, 0xb5, 0xed, 0xf6, 0xf8, 0x6f, 0xbb, 0x9b, 0x17, 0x20, 0xb4, 0x37, 0x89, 0x78, 0xd9, 0xc9, 0xab, 0x41, 0xb8, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3565 = { .name = "xdh_wei448_3565", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3565_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3565_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3565_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 471 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3566 for XDH, tcId is 472 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3566_peerpubkey[] = { 0x6c, 0x2f, 0x2e, 0xde, 0xfb, 0xe1, 0x01, 0x8e, 0xfa, 0x83, 0xe2, 0x81, 0xbc, 0xa4, 0xc7, 0x7a, 0x6c, 0xc7, 0x69, 0xb6, 0x2e, 0x8f, 0xf5, 0x12, 0xc6, 0x69, 0xbf, 0xe5, 0x55, 0x4f, 0x70, 0xf0, 0xd8, 0x29, 0xa8, 0xfe, 0x54, 0x81, 0x15, 0xa5, 0x5a, 0x00, 0x34, 0xbb, 0x7b, 0x3e, 0x59, 0x0b, 0x28, 0x65, 0xe1, 0x0c, 0x97, 0x3e, 0x5a, 0xc0, }; static const unsigned char xdh_wei448_3566_privkey[] = { 0x3c, 0x76, 0x9b, 0xde, 0x8a, 0xcb, 0x40, 0x98, 0xaf, 0xa6, 0xdf, 0x0b, 0x7c, 0x17, 0x4f, 0x72, 0xb9, 0x46, 0x8d, 0x21, 0x6e, 0x8d, 0x60, 0xaa, 0xd8, 0x10, 0x98, 0x87, 0x25, 0x22, 0xfb, 0x60, 0xe9, 0x4e, 0xe9, 0x99, 0x2d, 0xe7, 0x0f, 0x63, 0xd5, 0xc0, 0x02, 0x4c, 0xa9, 0xb6, 0x74, 0xc0, 0xaf, 0x26, 0x2b, 0x6f, 0xcd, 0x52, 0xea, 0x9a, }; static const unsigned char xdh_wei448_3566_sharedsecret[] = { 0x8c, 0x56, 0xe7, 0x41, 0x52, 0x6a, 0xe9, 0xac, 0xb0, 0xa8, 0x53, 0x18, 0x4c, 0x6a, 0x05, 0x85, 0x89, 0x54, 0x65, 0x52, 0x36, 0x43, 0x8e, 0xbe, 0x9b, 0x7c, 0xb5, 0x58, 0x1a, 0x29, 0xf7, 0x57, 0x8f, 0x55, 0x1c, 0xa5, 0x8c, 0x23, 0xc3, 0x21, 0x26, 0xfb, 0xc7, 0x89, 0xa1, 0xa7, 0xc1, 0x92, 0x9f, 0x2d, 0xfd, 0xc2, 0x23, 0x60, 0xdc, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_3566 = { .name = "xdh_wei448_3566", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3566_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3566_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3566_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 472 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3567 for XDH, tcId is 473 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3567_peerpubkey[] = { 0xc9, 0x4f, 0xfd, 0x5e, 0xb8, 0x00, 0x8e, 0xc4, 0x94, 0x48, 0xab, 0x24, 0xa9, 0x59, 0xc4, 0x04, 0xb0, 0xd1, 0xd6, 0x62, 0xee, 0xe4, 0x67, 0x64, 0x3c, 0x69, 0x6f, 0x8f, 0x11, 0x79, 0x7f, 0xab, 0x49, 0x36, 0xf3, 0x15, 0xd7, 0xb0, 0x62, 0x4f, 0x61, 0x92, 0x1f, 0x5b, 0x3c, 0xb2, 0xdc, 0x6d, 0x2b, 0x75, 0xe9, 0x9a, 0x0d, 0xc9, 0xfb, 0xdc, }; static const unsigned char xdh_wei448_3567_privkey[] = { 0xc4, 0x71, 0x14, 0x37, 0xfb, 0xe2, 0xb5, 0x1a, 0xb1, 0x3e, 0xdd, 0x52, 0x61, 0xd8, 0x80, 0x52, 0x0b, 0xfb, 0x3c, 0x31, 0x37, 0x3d, 0x80, 0x67, 0xb6, 0x44, 0xe0, 0x8a, 0x5b, 0x35, 0x06, 0x48, 0x55, 0x9e, 0x77, 0x26, 0x69, 0x30, 0x30, 0x1b, 0xbb, 0x9f, 0xe5, 0x63, 0x27, 0x74, 0x63, 0x38, 0xf7, 0x3f, 0x82, 0x43, 0x2d, 0x8d, 0x8b, 0x9d, }; static const unsigned char xdh_wei448_3567_sharedsecret[] = { 0x0d, 0xf3, 0x6e, 0x4e, 0xac, 0x40, 0xf7, 0x44, 0xba, 0xa1, 0x38, 0xe9, 0xb8, 0x92, 0x95, 0xde, 0xcd, 0xe5, 0x3d, 0x35, 0xe4, 0xc1, 0xc2, 0x28, 0x9d, 0xb7, 0x93, 0x0f, 0x3b, 0x39, 0xd1, 0xfc, 0xf8, 0x0f, 0x87, 0x1b, 0x69, 0x1c, 0xcc, 0xf3, 0xce, 0xc6, 0xaa, 0xee, 0xc2, 0x1e, 0x67, 0x8a, 0x3d, 0x29, 0xc5, 0x48, 0x58, 0x72, 0x10, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_3567 = { .name = "xdh_wei448_3567", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3567_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3567_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3567_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 473 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3568 for XDH, tcId is 474 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3568_peerpubkey[] = { 0xa3, 0x58, 0xbd, 0x70, 0xe3, 0x11, 0xa9, 0x52, 0x96, 0x7e, 0x01, 0xd3, 0xf1, 0x93, 0xdb, 0x58, 0xb6, 0x9e, 0x2f, 0x5f, 0x7c, 0x8a, 0xc6, 0x38, 0x1b, 0x15, 0x23, 0x55, 0x67, 0x8e, 0x7b, 0x64, 0x47, 0x48, 0x3b, 0x4e, 0x2b, 0xdb, 0x00, 0x2a, 0x11, 0x3c, 0xc2, 0x34, 0x52, 0xfb, 0xe5, 0x8b, 0xfa, 0x8b, 0xf3, 0x07, 0x33, 0x8d, 0xc2, 0xeb, }; static const unsigned char xdh_wei448_3568_privkey[] = { 0x54, 0x0d, 0xbd, 0x4a, 0x7e, 0x99, 0xfc, 0xc2, 0x98, 0x29, 0x3a, 0x85, 0xc6, 0x36, 0xbd, 0x51, 0x30, 0x2a, 0xa1, 0x30, 0xf3, 0x96, 0x75, 0x60, 0xdc, 0xa8, 0x70, 0x7a, 0x7f, 0xdd, 0xb7, 0xd9, 0x97, 0xc2, 0x05, 0x62, 0xb8, 0x81, 0xe5, 0xb6, 0x80, 0x53, 0xea, 0x9e, 0x04, 0x04, 0x83, 0x21, 0x4c, 0xe8, 0xf1, 0x30, 0xc3, 0x5a, 0x58, 0x9c, }; static const unsigned char xdh_wei448_3568_sharedsecret[] = { 0xcb, 0x6c, 0x61, 0xdd, 0x09, 0xaa, 0x76, 0xec, 0x5a, 0xd6, 0xd2, 0xe3, 0x01, 0x0a, 0x04, 0x6f, 0x99, 0x53, 0x76, 0x1d, 0x23, 0x0c, 0x3d, 0xc5, 0x13, 0xfa, 0x73, 0x2a, 0x4e, 0x5e, 0x98, 0xb0, 0xec, 0xc4, 0xd3, 0xeb, 0xc7, 0xe3, 0xe5, 0x94, 0xba, 0x25, 0xf4, 0x6d, 0x1d, 0x50, 0x8a, 0xf2, 0xd3, 0xa9, 0x8e, 0x1a, 0x3b, 0xa6, 0x84, 0x26, }; static const wycheproof_xdh_test xdh_wei448_3568 = { .name = "xdh_wei448_3568", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3568_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3568_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3568_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 474 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3569 for XDH, tcId is 475 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3569_peerpubkey[] = { 0x46, 0x50, 0x12, 0xb6, 0x85, 0xf2, 0x28, 0x8d, 0xc4, 0xf7, 0x70, 0xf8, 0xbb, 0x51, 0xdc, 0xd2, 0x94, 0xe3, 0x6f, 0x51, 0x8c, 0xdf, 0xad, 0x45, 0xc6, 0x8a, 0x80, 0xb1, 0x11, 0x20, 0xe3, 0x80, 0xaa, 0xaf, 0xa9, 0xf5, 0x9c, 0x57, 0x25, 0xd4, 0x6e, 0xd3, 0xd3, 0x80, 0x58, 0xa2, 0xa4, 0x73, 0xb1, 0x12, 0x4b, 0x75, 0x41, 0x58, 0x87, 0x15, }; static const unsigned char xdh_wei448_3569_privkey[] = { 0x0c, 0x86, 0x4c, 0xbb, 0x26, 0x27, 0x5f, 0xa9, 0x46, 0xae, 0xe2, 0xae, 0x87, 0x2a, 0xa5, 0x4a, 0x82, 0x80, 0x7a, 0x70, 0x40, 0x5f, 0xb7, 0x05, 0xe9, 0x25, 0x16, 0x15, 0x2a, 0xa6, 0x68, 0x3f, 0x4e, 0xd4, 0x22, 0x39, 0xdd, 0x14, 0x73, 0x70, 0xa6, 0xb6, 0x71, 0xed, 0x67, 0x83, 0xce, 0xa5, 0xbe, 0xe2, 0x4c, 0xd4, 0x33, 0xe8, 0x64, 0x91, }; static const unsigned char xdh_wei448_3569_sharedsecret[] = { 0xc2, 0xd3, 0x31, 0x77, 0xe5, 0x2d, 0x27, 0x22, 0xd2, 0xc2, 0xe4, 0x4f, 0x2e, 0x15, 0xdd, 0x0d, 0xb3, 0x32, 0xe7, 0xde, 0x9c, 0x5e, 0x93, 0x07, 0xe7, 0xe0, 0xfb, 0xe7, 0x12, 0x1f, 0x1e, 0xc7, 0xd1, 0x48, 0x87, 0xf1, 0x9b, 0x97, 0x40, 0x96, 0x78, 0x4c, 0x45, 0x8e, 0x32, 0xf2, 0xe8, 0x10, 0x2c, 0x0a, 0x13, 0xb0, 0x0c, 0x8f, 0x61, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3569 = { .name = "xdh_wei448_3569", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3569_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3569_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3569_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 475 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3570 for XDH, tcId is 476 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3570_peerpubkey[] = { 0x0d, 0x05, 0x33, 0xc5, 0x14, 0xcc, 0x66, 0x1e, 0xd7, 0x4a, 0xff, 0x5c, 0xb9, 0x77, 0x18, 0x76, 0xb2, 0xf1, 0xb0, 0x31, 0x79, 0x45, 0x93, 0xbf, 0xd9, 0xb1, 0xf0, 0x15, 0x5b, 0x59, 0xe5, 0x3c, 0x54, 0xa1, 0x43, 0x58, 0xea, 0x01, 0x03, 0x4b, 0xf0, 0x73, 0x9b, 0x78, 0x05, 0x89, 0xc3, 0xb2, 0x14, 0xa6, 0x54, 0x93, 0xd4, 0xb2, 0x84, 0x64, }; static const unsigned char xdh_wei448_3570_privkey[] = { 0xc4, 0x36, 0x40, 0x08, 0x67, 0x58, 0x93, 0x1b, 0x8f, 0x8b, 0xdb, 0x4f, 0x8a, 0xc1, 0xe9, 0x48, 0x21, 0x6e, 0x36, 0x3b, 0x57, 0x23, 0x6b, 0x9e, 0xbf, 0xf8, 0x20, 0xc8, 0x69, 0x1d, 0xd0, 0x76, 0x50, 0x7e, 0xa6, 0x50, 0xbc, 0x7f, 0x98, 0x43, 0x84, 0x6a, 0x26, 0xd7, 0xd3, 0xa5, 0xd5, 0x57, 0x6c, 0xdd, 0xe4, 0x88, 0x68, 0xd4, 0x32, 0x9b, }; static const unsigned char xdh_wei448_3570_sharedsecret[] = { 0x92, 0x93, 0xaa, 0x34, 0x80, 0x47, 0xd1, 0x14, 0x29, 0xf8, 0xc6, 0x6d, 0x3b, 0x05, 0x07, 0x0b, 0xd5, 0x88, 0x8b, 0x22, 0x18, 0xb2, 0xe6, 0x8c, 0xd1, 0x50, 0x95, 0x2b, 0x5a, 0x71, 0x0f, 0x0f, 0x87, 0x17, 0x6c, 0xd9, 0x3c, 0x18, 0x39, 0xc3, 0xa1, 0x45, 0xd0, 0x3c, 0x49, 0x77, 0x20, 0xe6, 0xf9, 0xcd, 0xe0, 0x10, 0x4c, 0xea, 0x1c, 0x09, }; static const wycheproof_xdh_test xdh_wei448_3570 = { .name = "xdh_wei448_3570", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3570_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3570_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3570_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 476 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3571 for XDH, tcId is 477 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3571_peerpubkey[] = { 0xe2, 0xfe, 0xdb, 0x0f, 0x28, 0xab, 0x05, 0xf2, 0xf6, 0xd9, 0xd8, 0x1c, 0x4b, 0xa9, 0xc6, 0xc8, 0x15, 0xc6, 0x25, 0x42, 0xdc, 0xdb, 0x90, 0x39, 0x83, 0x4d, 0x2a, 0x28, 0x37, 0x34, 0xfb, 0x71, 0x5a, 0x90, 0xf4, 0x03, 0x85, 0x1b, 0x16, 0x25, 0x98, 0x60, 0xb5, 0x72, 0xe4, 0x35, 0x2c, 0x60, 0xbb, 0xa1, 0x87, 0x9c, 0x7e, 0xdf, 0xa4, 0x7d, }; static const unsigned char xdh_wei448_3571_privkey[] = { 0x14, 0xbf, 0x5e, 0x4a, 0xdb, 0x42, 0xa3, 0xf0, 0xf9, 0x4e, 0x75, 0x31, 0xa8, 0x1a, 0xc9, 0x94, 0xd5, 0x72, 0x9c, 0x6f, 0x51, 0xc6, 0xd8, 0xba, 0xe1, 0xc2, 0xa6, 0x9e, 0xcd, 0x76, 0x59, 0xac, 0x31, 0xb4, 0x8d, 0x35, 0xd9, 0x22, 0x85, 0x76, 0xa4, 0x8e, 0x9e, 0x65, 0x8d, 0xe2, 0xc0, 0xaa, 0x9d, 0x59, 0xef, 0x3f, 0x08, 0xd3, 0x8f, 0x97, }; static const unsigned char xdh_wei448_3571_sharedsecret[] = { 0x35, 0x17, 0xa6, 0x63, 0xcf, 0x3a, 0x34, 0xda, 0x5d, 0xa4, 0xa1, 0x0e, 0xc0, 0x55, 0x33, 0xba, 0xb7, 0xea, 0x0b, 0x22, 0x35, 0x29, 0xc4, 0x90, 0x57, 0xb9, 0xfb, 0xb9, 0x60, 0xc4, 0xdd, 0xde, 0xb2, 0x15, 0x0a, 0x52, 0x26, 0x51, 0x96, 0x4b, 0x20, 0xb6, 0x35, 0x8f, 0xea, 0xc9, 0x20, 0x3a, 0xa0, 0x14, 0xab, 0x01, 0x54, 0x8e, 0xde, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_3571 = { .name = "xdh_wei448_3571", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3571_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3571_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3571_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 477 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3572 for XDH, tcId is 478 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3572_peerpubkey[] = { 0x06, 0x0a, 0x05, 0x9e, 0xc2, 0x51, 0x40, 0x62, 0x05, 0xa5, 0x70, 0x19, 0xa8, 0xec, 0xa7, 0xaa, 0xa9, 0xef, 0xdc, 0xc5, 0x32, 0x77, 0xa8, 0x9b, 0x55, 0x2e, 0x64, 0x09, 0x98, 0xad, 0x23, 0x83, 0x43, 0x1b, 0x94, 0xec, 0x58, 0xeb, 0xef, 0x0d, 0xe3, 0xa7, 0x68, 0x0f, 0xdf, 0x5e, 0x56, 0xb9, 0xd8, 0x9b, 0x91, 0x42, 0x1f, 0xf4, 0x33, 0x83, }; static const unsigned char xdh_wei448_3572_privkey[] = { 0xac, 0x93, 0xa2, 0x1d, 0x29, 0xd3, 0x71, 0x8d, 0xd0, 0x33, 0x15, 0xea, 0x0a, 0x47, 0x70, 0xc3, 0x1d, 0xdc, 0x8a, 0xce, 0x30, 0x4e, 0x3e, 0xfd, 0x6e, 0xf9, 0x3e, 0x3d, 0x1b, 0x80, 0x35, 0x29, 0x9f, 0x6b, 0xc6, 0x59, 0xba, 0xcf, 0x14, 0xc1, 0x3e, 0x84, 0x88, 0x10, 0xd7, 0xd8, 0x4d, 0x2b, 0xbb, 0xd4, 0xa1, 0x07, 0x86, 0xc8, 0x6c, 0x98, }; static const unsigned char xdh_wei448_3572_sharedsecret[] = { 0xd3, 0x6c, 0x91, 0x9a, 0xb7, 0xe5, 0x36, 0xe9, 0x58, 0xc9, 0x5e, 0xe9, 0xa7, 0x89, 0xba, 0x37, 0xaa, 0xe9, 0x97, 0x4d, 0xd3, 0xa2, 0x68, 0x07, 0x21, 0xfa, 0x69, 0x52, 0x59, 0x88, 0xa0, 0x25, 0x7c, 0x3f, 0x65, 0x4b, 0x97, 0xd4, 0x50, 0xdc, 0x88, 0xde, 0xda, 0x59, 0xd2, 0x6d, 0x8f, 0x09, 0x58, 0xf8, 0x0c, 0x75, 0x32, 0x8f, 0xba, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3572 = { .name = "xdh_wei448_3572", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3572_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3572_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3572_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 478 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3573 for XDH, tcId is 479 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3573_peerpubkey[] = { 0x91, 0x82, 0x78, 0x4a, 0x25, 0x5f, 0x07, 0x27, 0xb6, 0xbc, 0x85, 0x92, 0xbd, 0xd5, 0x45, 0xdd, 0x49, 0x37, 0x10, 0xa1, 0x51, 0x45, 0xe8, 0x6e, 0x16, 0x08, 0x60, 0xc5, 0x27, 0xd9, 0x88, 0x47, 0x84, 0xd8, 0x47, 0x0a, 0x56, 0x31, 0xac, 0x8d, 0x8f, 0xe9, 0x83, 0xfa, 0x17, 0xec, 0x58, 0x5d, 0x2f, 0x3b, 0x35, 0xe6, 0x39, 0x7b, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_3573_privkey[] = { 0x88, 0xae, 0x17, 0x46, 0x81, 0xb5, 0xaa, 0x06, 0x60, 0x2b, 0xf4, 0x3b, 0x06, 0x0a, 0x91, 0x5f, 0xb3, 0xbc, 0xd7, 0x8f, 0xb2, 0x3f, 0x9d, 0xa1, 0xc0, 0x2e, 0x7f, 0x9a, 0xa8, 0x85, 0x02, 0x74, 0x6e, 0xea, 0x95, 0xb1, 0x1a, 0xef, 0x6f, 0x8a, 0xd1, 0x5e, 0x49, 0x2c, 0x3c, 0xfa, 0xfa, 0xd7, 0xc0, 0x04, 0xd5, 0x92, 0x0f, 0xe1, 0x27, 0x96, }; static const unsigned char xdh_wei448_3573_sharedsecret[] = { 0xfc, 0xed, 0xdd, 0xad, 0x35, 0x58, 0x60, 0x19, 0x33, 0xbe, 0x90, 0x34, 0x41, 0x08, 0xf3, 0xd5, 0x5a, 0x2b, 0x92, 0x4f, 0xc1, 0x6e, 0x7f, 0xdd, 0xb3, 0xe2, 0x6c, 0x6d, 0xd4, 0x1c, 0xd9, 0xf6, 0xc2, 0xf6, 0xed, 0x34, 0x2b, 0x10, 0x95, 0x30, 0x55, 0xf8, 0xe3, 0x8e, 0xd2, 0x6d, 0x3e, 0x95, 0x25, 0x98, 0xeb, 0x80, 0xd1, 0x97, 0xf1, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3573 = { .name = "xdh_wei448_3573", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3573_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3573_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3573_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 479 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3574 for XDH, tcId is 480 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3574_peerpubkey[] = { 0x83, 0x1e, 0x67, 0x3a, 0xaa, 0xc4, 0x62, 0xd0, 0xb8, 0xef, 0x04, 0x72, 0xe5, 0x64, 0xb0, 0xeb, 0x85, 0x81, 0x65, 0x24, 0x2a, 0x7c, 0x30, 0xef, 0x0d, 0x89, 0x7f, 0x39, 0xb1, 0x2e, 0xd0, 0xec, 0x34, 0x6e, 0xf2, 0x02, 0x49, 0x17, 0x2c, 0x7d, 0x60, 0x1b, 0x92, 0x81, 0x81, 0x50, 0x4a, 0x2a, 0xe8, 0xcf, 0x38, 0xc5, 0x72, 0x9a, 0x1e, 0xb4, }; static const unsigned char xdh_wei448_3574_privkey[] = { 0xf8, 0x17, 0xa0, 0x22, 0x86, 0x23, 0xeb, 0xb3, 0x13, 0x1e, 0xc3, 0x3b, 0x41, 0xd9, 0x0c, 0x34, 0x7e, 0x9e, 0xfb, 0xe4, 0x6b, 0xb8, 0x10, 0x51, 0xa2, 0xfd, 0xa3, 0x0b, 0x49, 0x99, 0x3a, 0x8e, 0x88, 0x27, 0x2e, 0xc8, 0x32, 0x05, 0x22, 0x93, 0x0c, 0x20, 0x6a, 0x68, 0x4c, 0x77, 0xfd, 0xbd, 0x42, 0xce, 0xe2, 0xce, 0x47, 0x06, 0x6d, 0x93, }; static const unsigned char xdh_wei448_3574_sharedsecret[] = { 0xb5, 0x71, 0xd1, 0xba, 0x1b, 0x21, 0xa4, 0xf8, 0x22, 0x81, 0x4e, 0x47, 0x8e, 0x3c, 0xcd, 0x1f, 0x5d, 0x9d, 0xb8, 0x56, 0x3a, 0x9c, 0x14, 0x13, 0x81, 0xab, 0xd8, 0xc3, 0x96, 0x22, 0xd8, 0x66, 0xaf, 0x11, 0x1f, 0xdb, 0xd9, 0x4a, 0x97, 0xb1, 0x51, 0x78, 0x1d, 0x96, 0xfa, 0xd0, 0xd2, 0xf9, 0x21, 0x51, 0x9e, 0x77, 0x3e, 0x36, 0x79, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3574 = { .name = "xdh_wei448_3574", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3574_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3574_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3574_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 480 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3575 for XDH, tcId is 481 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3575_peerpubkey[] = { 0x7e, 0x2a, 0xf5, 0xdc, 0xfa, 0xc2, 0xb3, 0xb2, 0xa9, 0x94, 0x0c, 0x41, 0x10, 0x75, 0x9a, 0x35, 0x89, 0xc4, 0x6c, 0xdd, 0x3e, 0xc1, 0x34, 0x88, 0x50, 0x02, 0xe8, 0xef, 0xf0, 0x0a, 0x02, 0x15, 0xb7, 0x44, 0xe9, 0xf6, 0xf3, 0x6d, 0xa6, 0xe0, 0xa1, 0x98, 0xd8, 0x29, 0xae, 0xb0, 0xf7, 0xb0, 0x37, 0x62, 0x79, 0x92, 0x6c, 0x64, 0x6e, 0xbd, }; static const unsigned char xdh_wei448_3575_privkey[] = { 0xf0, 0x3e, 0x20, 0x68, 0x6c, 0xc7, 0xe1, 0xe6, 0x57, 0x6d, 0x6c, 0x69, 0x0a, 0x18, 0x88, 0x15, 0x4d, 0x30, 0x71, 0xef, 0x41, 0x4f, 0xdd, 0x1b, 0x1e, 0x9d, 0xdf, 0x6a, 0xf8, 0x93, 0xd1, 0x95, 0xc6, 0x2e, 0xcf, 0x66, 0xd9, 0xcf, 0xb7, 0x96, 0x00, 0xd5, 0xd6, 0x64, 0x52, 0x7d, 0x69, 0xfb, 0xcf, 0x26, 0x76, 0xb4, 0x87, 0x23, 0x9b, 0x9a, }; static const unsigned char xdh_wei448_3575_sharedsecret[] = { 0x26, 0xf7, 0x64, 0xe8, 0x74, 0x73, 0x3b, 0xf7, 0x54, 0x15, 0x72, 0xe0, 0xc5, 0x44, 0xf6, 0xe2, 0x2a, 0xac, 0x1d, 0x33, 0xd5, 0x46, 0x4f, 0x62, 0x9a, 0xdd, 0xd6, 0xca, 0x86, 0x0b, 0x1d, 0x7c, 0xad, 0x7c, 0x83, 0xd7, 0xac, 0x67, 0x46, 0x50, 0x87, 0x35, 0x95, 0xd5, 0xa2, 0x1f, 0xac, 0xc7, 0xa8, 0xcf, 0x2d, 0xfc, 0x24, 0x9e, 0x6d, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3575 = { .name = "xdh_wei448_3575", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3575_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3575_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3575_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 481 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3576 for XDH, tcId is 482 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3576_peerpubkey[] = { 0x60, 0xef, 0xab, 0xd2, 0x57, 0x7f, 0xdc, 0xbf, 0x51, 0x90, 0x9e, 0x08, 0x2a, 0x39, 0x53, 0x38, 0x5f, 0xa8, 0x00, 0x1b, 0xca, 0xb7, 0x33, 0x55, 0xca, 0x23, 0xb7, 0x25, 0xad, 0xd5, 0x59, 0x5c, 0x31, 0x81, 0x22, 0x13, 0x30, 0x3d, 0x3b, 0xa4, 0x25, 0x89, 0xa2, 0xad, 0xc2, 0x21, 0x30, 0x80, 0xb7, 0xdf, 0x73, 0x32, 0x29, 0x5a, 0xcd, 0xd1, }; static const unsigned char xdh_wei448_3576_privkey[] = { 0xb0, 0x4c, 0x1f, 0xd2, 0xa1, 0xca, 0x66, 0xd4, 0x96, 0xbd, 0xd6, 0x64, 0x54, 0x38, 0x29, 0x18, 0x01, 0x50, 0x4e, 0xaa, 0x7b, 0xe8, 0x28, 0xe9, 0x25, 0x4c, 0xe7, 0x52, 0x08, 0x26, 0x7b, 0x13, 0xc7, 0x9e, 0xe8, 0xae, 0x8f, 0x38, 0x22, 0xba, 0x07, 0xd3, 0x4d, 0xcf, 0x23, 0xc0, 0x64, 0x2e, 0x7d, 0x66, 0x8b, 0x9e, 0xc1, 0xc0, 0x94, 0x99, }; static const unsigned char xdh_wei448_3576_sharedsecret[] = { 0xbe, 0x71, 0x31, 0x18, 0x7a, 0xeb, 0xfe, 0x8c, 0xa1, 0x03, 0xec, 0x44, 0xed, 0x43, 0xda, 0x73, 0xa8, 0x68, 0x14, 0x00, 0xfb, 0xcd, 0x5f, 0x3b, 0xae, 0x3e, 0xb0, 0x96, 0x24, 0x20, 0xe9, 0xfc, 0x9f, 0x1d, 0x2d, 0x3b, 0x0d, 0x51, 0xae, 0x9c, 0xc0, 0x99, 0x88, 0x3e, 0x44, 0xd8, 0xba, 0xe1, 0x4a, 0x91, 0x3a, 0x7a, 0x47, 0x15, 0x36, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_3576 = { .name = "xdh_wei448_3576", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3576_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3576_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3576_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 482 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3577 for XDH, tcId is 483 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3577_peerpubkey[] = { 0xe7, 0x14, 0xd2, 0xb2, 0x8b, 0x2b, 0x5e, 0xf5, 0x81, 0x5e, 0x8f, 0x3e, 0xd0, 0x55, 0x4a, 0x6e, 0x61, 0xed, 0x26, 0x86, 0x12, 0xa8, 0xf6, 0xa3, 0x76, 0x40, 0x23, 0xd0, 0x0c, 0x76, 0x09, 0x8a, 0x49, 0xea, 0xf8, 0xa5, 0xdd, 0xc4, 0x16, 0x4b, 0x1b, 0xef, 0x39, 0xab, 0x6d, 0xa8, 0x3a, 0x7e, 0xb6, 0x70, 0x3b, 0xaf, 0x3a, 0x57, 0x5d, 0xe9, }; static const unsigned char xdh_wei448_3577_privkey[] = { 0x8c, 0x2a, 0xc1, 0xa1, 0x99, 0x01, 0xb8, 0x47, 0x16, 0x42, 0xf8, 0x59, 0xe0, 0x50, 0xf1, 0x86, 0x16, 0x32, 0x3f, 0x80, 0xc7, 0x57, 0xd0, 0x88, 0x6a, 0xfc, 0x64, 0x06, 0xa4, 0x42, 0x45, 0x44, 0x15, 0xc9, 0x58, 0x17, 0x82, 0x97, 0xca, 0xe5, 0xff, 0x2f, 0xf5, 0xc3, 0x45, 0x30, 0x8b, 0x10, 0xa3, 0x2b, 0xf8, 0x32, 0x69, 0xcd, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_3577_sharedsecret[] = { 0x00, 0x80, 0xc5, 0xad, 0x23, 0xc5, 0x62, 0x12, 0x92, 0x06, 0xab, 0x97, 0x4f, 0x05, 0x4e, 0x24, 0xd2, 0x39, 0xee, 0xa4, 0xdc, 0x4f, 0xcb, 0x54, 0x68, 0x03, 0x8b, 0x62, 0x98, 0xd3, 0xdc, 0x9d, 0x9f, 0xe5, 0x71, 0x73, 0xbd, 0x04, 0x0a, 0x5e, 0xa6, 0xd6, 0x21, 0x50, 0x97, 0xff, 0x88, 0x46, 0x95, 0x8c, 0xc5, 0x6d, 0xae, 0x88, 0x23, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3577 = { .name = "xdh_wei448_3577", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3577_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3577_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3577_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 483 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3578 for XDH, tcId is 484 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3578_peerpubkey[] = { 0x38, 0x94, 0x95, 0xc3, 0x5c, 0x2f, 0xf3, 0xf3, 0x67, 0xa5, 0x92, 0x68, 0xee, 0xc8, 0x13, 0x02, 0x56, 0x54, 0x2f, 0x5f, 0x66, 0xfc, 0x97, 0xbd, 0x49, 0x9e, 0xf7, 0x0b, 0x15, 0x65, 0xb6, 0xe7, 0x52, 0xb6, 0x84, 0xe1, 0x86, 0x49, 0x15, 0x29, 0x1f, 0xd5, 0x2a, 0xef, 0x62, 0x8f, 0x51, 0x15, 0x4d, 0x0c, 0xd8, 0x0b, 0x72, 0x10, 0xe1, 0x26, }; static const unsigned char xdh_wei448_3578_privkey[] = { 0x78, 0xc8, 0xa7, 0xf5, 0xc5, 0x5c, 0x47, 0x55, 0x51, 0x7a, 0x6d, 0x67, 0x9b, 0x5b, 0x9e, 0xab, 0x69, 0x3b, 0xbb, 0x20, 0xb7, 0xc8, 0x7f, 0x0f, 0x14, 0x03, 0x70, 0x27, 0x89, 0xcf, 0xe0, 0x68, 0x42, 0x44, 0xc2, 0xf1, 0x9f, 0xd9, 0xdf, 0xf6, 0x7c, 0x95, 0x22, 0x88, 0x12, 0xa3, 0x08, 0x23, 0x7b, 0x4a, 0xb6, 0xaf, 0x23, 0xf0, 0xa3, 0x9a, }; static const unsigned char xdh_wei448_3578_sharedsecret[] = { 0xd5, 0x8f, 0xce, 0xfc, 0x77, 0x09, 0x28, 0x43, 0x0d, 0x62, 0x8f, 0x7f, 0x20, 0x24, 0x1f, 0x0c, 0x40, 0x18, 0x14, 0xe6, 0xfd, 0x8a, 0x54, 0xec, 0x27, 0x2b, 0x77, 0x9a, 0xc1, 0x5b, 0x08, 0xe6, 0x68, 0x96, 0x94, 0xd2, 0xda, 0xda, 0x97, 0x62, 0x05, 0x31, 0x42, 0x5d, 0x8e, 0x05, 0x29, 0xca, 0xb4, 0x0e, 0x80, 0x86, 0x5c, 0x33, 0x03, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3578 = { .name = "xdh_wei448_3578", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3578_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3578_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3578_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 484 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3579 for XDH, tcId is 485 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3579_peerpubkey[] = { 0x4a, 0xd6, 0x6b, 0x90, 0xa8, 0xbe, 0xb6, 0x03, 0x4b, 0xe2, 0x83, 0x8f, 0xf7, 0xad, 0x78, 0xad, 0xf8, 0x7c, 0xc8, 0xb8, 0xe5, 0xc6, 0x3a, 0x21, 0x1f, 0x55, 0x83, 0x45, 0x91, 0xff, 0x5f, 0x5e, 0x4f, 0x82, 0xfd, 0x10, 0xda, 0x0a, 0x70, 0x83, 0x6d, 0x3c, 0x7e, 0x3c, 0xee, 0xec, 0xb7, 0xd8, 0xc8, 0xf0, 0x2c, 0x51, 0xbd, 0xfe, 0x50, 0x3e, }; static const unsigned char xdh_wei448_3579_privkey[] = { 0x30, 0xf5, 0xbf, 0xc1, 0x6c, 0xd2, 0x35, 0x01, 0x71, 0x6a, 0x6c, 0x56, 0x6a, 0x13, 0xbe, 0xe3, 0x2b, 0x08, 0x2c, 0xdb, 0xb6, 0x2f, 0x09, 0x15, 0x9e, 0x3b, 0x57, 0x23, 0xcb, 0xf5, 0x72, 0xdb, 0xa4, 0x3f, 0xc4, 0xf4, 0x34, 0x3b, 0x9d, 0x0b, 0xb1, 0x84, 0xf1, 0xf8, 0xda, 0x11, 0x0d, 0x77, 0x94, 0xab, 0x63, 0xdf, 0x23, 0xcb, 0xcf, 0x96, }; static const unsigned char xdh_wei448_3579_sharedsecret[] = { 0xfb, 0xd6, 0xc5, 0x31, 0x3c, 0x11, 0x14, 0xa5, 0x05, 0x38, 0x2b, 0x68, 0xab, 0xe7, 0xd0, 0x79, 0x86, 0x43, 0xa3, 0x07, 0x05, 0x5f, 0x4b, 0x5a, 0xb9, 0x48, 0xf5, 0x0d, 0x7f, 0x36, 0xce, 0x20, 0x1b, 0x3f, 0x52, 0x2c, 0xfa, 0x34, 0xf0, 0xa0, 0x8d, 0x00, 0x88, 0x1b, 0x6d, 0x7a, 0x67, 0x88, 0xc8, 0x83, 0x19, 0x4e, 0xe1, 0x16, 0xe8, 0x72, }; static const wycheproof_xdh_test xdh_wei448_3579 = { .name = "xdh_wei448_3579", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3579_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3579_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3579_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 485 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3580 for XDH, tcId is 486 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3580_peerpubkey[] = { 0xca, 0x86, 0xee, 0x9b, 0x71, 0x86, 0x46, 0xba, 0x0c, 0x3e, 0x0e, 0x89, 0xf0, 0x6b, 0xbe, 0x08, 0xad, 0x34, 0xe3, 0xc2, 0x69, 0x82, 0x82, 0x61, 0x19, 0x0d, 0x05, 0xb2, 0x55, 0x0a, 0x4e, 0xb1, 0x7f, 0x9c, 0xe1, 0x4c, 0xbe, 0x0c, 0x95, 0xec, 0x99, 0xa5, 0xc9, 0x0c, 0x70, 0x71, 0xf2, 0xfd, 0xdc, 0x0b, 0xdb, 0x3b, 0xb2, 0xc0, 0x49, 0x71, }; static const unsigned char xdh_wei448_3580_privkey[] = { 0x9c, 0x36, 0xb9, 0x4f, 0x80, 0xfb, 0x5a, 0x02, 0x5d, 0x61, 0xcc, 0x8f, 0x14, 0x38, 0xd9, 0x1e, 0xbc, 0x22, 0x2c, 0x34, 0x7e, 0xc6, 0xbd, 0xdc, 0x2e, 0x45, 0xbe, 0xda, 0x4a, 0xc1, 0x47, 0xb2, 0xa9, 0x1e, 0x74, 0x48, 0x12, 0x74, 0x89, 0xbc, 0x1b, 0x45, 0x45, 0x1b, 0xec, 0x84, 0x38, 0x89, 0xf3, 0x8f, 0xa4, 0x46, 0x7b, 0xe5, 0x7e, 0x9b, }; static const unsigned char xdh_wei448_3580_sharedsecret[] = { 0xda, 0xb7, 0x42, 0x1d, 0x74, 0x26, 0x92, 0x20, 0x00, 0x19, 0x34, 0x23, 0x5b, 0x2d, 0x3f, 0xe5, 0xdc, 0xf7, 0x57, 0x17, 0xb3, 0x80, 0xbe, 0x3b, 0xbf, 0xa9, 0x6a, 0x76, 0x52, 0x9e, 0xb9, 0x27, 0x09, 0xfd, 0xbc, 0xce, 0x5d, 0x30, 0x58, 0x3f, 0x5d, 0x9e, 0x99, 0x9b, 0xaa, 0x78, 0x81, 0x5b, 0x10, 0x30, 0x0d, 0x60, 0x99, 0x6b, 0x59, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_3580 = { .name = "xdh_wei448_3580", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3580_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3580_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3580_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 486 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3581 for XDH, tcId is 487 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3581_peerpubkey[] = { 0xdf, 0xc3, 0x85, 0x3b, 0xd4, 0x94, 0xac, 0x80, 0xbd, 0x25, 0x07, 0x0a, 0x7e, 0x90, 0xfd, 0x89, 0xa7, 0xbf, 0x29, 0x9b, 0x63, 0x97, 0xeb, 0x2a, 0x73, 0x3c, 0x7c, 0x64, 0x29, 0xba, 0x51, 0x0a, 0xf7, 0x42, 0x26, 0xb5, 0xad, 0x52, 0x08, 0xb7, 0x51, 0x3b, 0xbc, 0x53, 0x97, 0x80, 0x63, 0x73, 0x4e, 0x2e, 0x28, 0xe0, 0x2e, 0xee, 0x14, 0x76, }; static const unsigned char xdh_wei448_3581_privkey[] = { 0xb4, 0xd8, 0xc1, 0xbd, 0x4f, 0xe2, 0x23, 0x2b, 0xfd, 0x8f, 0x3a, 0x42, 0xe4, 0xf2, 0xc6, 0x07, 0x97, 0x64, 0x89, 0xa1, 0x81, 0x14, 0x9f, 0xbd, 0x0b, 0xa8, 0xe8, 0xed, 0x68, 0xc4, 0x4f, 0x78, 0x6d, 0x05, 0xeb, 0xe8, 0x90, 0xad, 0xab, 0x4b, 0x23, 0x32, 0x62, 0xed, 0x9c, 0x48, 0x2d, 0x84, 0xcf, 0xf4, 0x2f, 0xb8, 0xbc, 0x0e, 0x1a, 0x94, }; static const unsigned char xdh_wei448_3581_sharedsecret[] = { 0x46, 0x9d, 0x5e, 0x9e, 0x2b, 0xa6, 0x76, 0xe2, 0x47, 0xaa, 0x86, 0x2e, 0xa2, 0x9b, 0xbf, 0x2b, 0xa4, 0xf8, 0xa8, 0x50, 0x09, 0x8c, 0x10, 0x32, 0x0b, 0xf4, 0xa2, 0x86, 0xbd, 0xc0, 0x9c, 0x53, 0x13, 0x14, 0x85, 0xc2, 0xdc, 0x9c, 0x36, 0x63, 0xe7, 0x66, 0x10, 0x46, 0x8f, 0x13, 0x9b, 0x58, 0x6d, 0x61, 0xdd, 0xc9, 0x24, 0x22, 0x32, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_3581 = { .name = "xdh_wei448_3581", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3581_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3581_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3581_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 487 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3582 for XDH, tcId is 488 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3582_peerpubkey[] = { 0xee, 0xfb, 0xdd, 0xe8, 0x82, 0x1e, 0x5d, 0xb1, 0xb3, 0x0d, 0x73, 0xbc, 0x76, 0xbe, 0x3e, 0x18, 0xfc, 0x91, 0xf3, 0x49, 0x81, 0x16, 0x24, 0x3e, 0x9f, 0x86, 0xcc, 0xcd, 0xc9, 0x8c, 0xc7, 0x8b, 0x18, 0x93, 0x72, 0xab, 0x66, 0x96, 0xee, 0x18, 0xd2, 0xca, 0x74, 0x90, 0x10, 0x5a, 0xd0, 0x3b, 0x5f, 0x50, 0xc2, 0x97, 0x83, 0xab, 0x3a, 0x96, }; static const unsigned char xdh_wei448_3582_privkey[] = { 0x08, 0x44, 0x42, 0xb7, 0x21, 0x82, 0xb7, 0xcc, 0x53, 0x21, 0xf6, 0x1f, 0x3c, 0xef, 0x93, 0x75, 0x14, 0xbd, 0xc1, 0x24, 0x60, 0x28, 0xa0, 0x2e, 0x8f, 0xc7, 0xf3, 0x06, 0x0d, 0x52, 0x8c, 0xc1, 0x34, 0xa5, 0x93, 0x85, 0xdd, 0x53, 0x4c, 0xe1, 0xe8, 0x2c, 0xef, 0x27, 0xcd, 0xb0, 0x0f, 0xae, 0x66, 0x43, 0xe3, 0xb2, 0x16, 0x7f, 0x1c, 0x9d, }; static const unsigned char xdh_wei448_3582_sharedsecret[] = { 0xe3, 0x01, 0x90, 0x8a, 0x8c, 0xb6, 0xd1, 0xd8, 0xef, 0x9c, 0x1c, 0x55, 0xe7, 0x27, 0x83, 0x90, 0x95, 0x07, 0x19, 0xd0, 0x89, 0xd9, 0x46, 0xca, 0x9d, 0x6e, 0x88, 0x2f, 0x8f, 0x91, 0x75, 0xc8, 0x4c, 0xad, 0xd4, 0xff, 0x2a, 0x7a, 0xbf, 0xd8, 0x04, 0xb5, 0xb7, 0x2f, 0x2a, 0x1d, 0xe7, 0x1b, 0x1a, 0x92, 0xaf, 0x20, 0xe1, 0x68, 0x07, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3582 = { .name = "xdh_wei448_3582", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3582_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3582_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3582_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 488 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3583 for XDH, tcId is 489 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3583_peerpubkey[] = { 0x54, 0x2c, 0xe8, 0x33, 0xd8, 0x48, 0x92, 0x09, 0x36, 0x23, 0xf9, 0x17, 0x4a, 0x45, 0x08, 0x80, 0xc1, 0x3a, 0x66, 0x1c, 0xa0, 0x2e, 0x44, 0x00, 0x26, 0x7d, 0xf6, 0x3d, 0x66, 0x1f, 0x6a, 0xc7, 0xa8, 0x5f, 0x0f, 0x7e, 0x06, 0x1e, 0x67, 0xb3, 0x9b, 0x7f, 0x25, 0x9e, 0xff, 0xf8, 0x04, 0xfe, 0xba, 0x6d, 0x05, 0x54, 0xe8, 0xc0, 0xf4, 0xfd, }; static const unsigned char xdh_wei448_3583_privkey[] = { 0xb8, 0x15, 0x64, 0x51, 0xd5, 0x83, 0xb5, 0x08, 0xd5, 0x26, 0x5b, 0x9c, 0x37, 0x3f, 0xbc, 0xa9, 0x6f, 0xb4, 0x77, 0x0d, 0x56, 0xb8, 0x28, 0x53, 0x4a, 0xfd, 0xba, 0x29, 0xd3, 0xcb, 0x9f, 0xf0, 0x20, 0x96, 0x94, 0xfa, 0xb2, 0x1c, 0xf9, 0xcf, 0x0a, 0x61, 0xbd, 0x49, 0x83, 0x60, 0x2c, 0xc3, 0x46, 0x7a, 0x3e, 0xe3, 0xbe, 0xb5, 0x3f, 0x96, }; static const unsigned char xdh_wei448_3583_sharedsecret[] = { 0x03, 0xe7, 0x90, 0x68, 0xc4, 0x0a, 0x41, 0x33, 0xc4, 0x90, 0xed, 0xb7, 0x03, 0xdd, 0x51, 0xf8, 0x96, 0x5a, 0xd5, 0xf5, 0x9a, 0xad, 0x1b, 0x04, 0xb3, 0xe1, 0x32, 0x77, 0x50, 0x74, 0x8e, 0x64, 0x81, 0xb0, 0xb6, 0x3e, 0x54, 0xcf, 0xe1, 0x01, 0xee, 0xb6, 0x48, 0xf9, 0x30, 0x7b, 0x09, 0xb0, 0xde, 0xc1, 0xa7, 0x47, 0x2f, 0xa5, 0x72, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3583 = { .name = "xdh_wei448_3583", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3583_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3583_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3583_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 489 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3584 for XDH, tcId is 490 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3584_peerpubkey[] = { 0x1e, 0xfd, 0xb8, 0x58, 0xaf, 0x19, 0x67, 0xc0, 0xe7, 0x42, 0xee, 0xbe, 0xe5, 0x63, 0x66, 0x7b, 0xfb, 0xc8, 0x96, 0x66, 0x60, 0x6e, 0x39, 0x5e, 0xcd, 0x39, 0x03, 0xb3, 0x92, 0x3b, 0x2a, 0x8f, 0x99, 0x44, 0xeb, 0x0d, 0x07, 0xfe, 0xbc, 0xe9, 0xdf, 0xe7, 0x04, 0x9a, 0xfc, 0x76, 0xb4, 0xfd, 0x1c, 0x47, 0xe9, 0x72, 0xe0, 0x57, 0x34, 0x2f, }; static const unsigned char xdh_wei448_3584_privkey[] = { 0x40, 0xbd, 0x45, 0x8c, 0xbc, 0x6b, 0xc8, 0x87, 0xd3, 0x48, 0xb4, 0xd5, 0x0a, 0xbf, 0x4c, 0xbf, 0x66, 0x50, 0xba, 0xbd, 0xca, 0x79, 0xd5, 0x46, 0x4b, 0x0b, 0xb3, 0x56, 0x7d, 0x6d, 0xc5, 0x46, 0x07, 0xcf, 0xc0, 0xef, 0xee, 0x28, 0xd0, 0x9e, 0x6f, 0xdc, 0x0c, 0x8e, 0xd4, 0xc6, 0x05, 0x0b, 0x85, 0xc9, 0x91, 0xcd, 0x5e, 0x67, 0x97, 0x9e, }; static const unsigned char xdh_wei448_3584_sharedsecret[] = { 0x6e, 0x24, 0xc3, 0x4c, 0x8a, 0x1b, 0x62, 0x69, 0x76, 0x62, 0x61, 0xfa, 0x57, 0x1f, 0x58, 0x32, 0x9f, 0x49, 0x55, 0xa8, 0x35, 0x5d, 0x8c, 0x64, 0x06, 0xc1, 0xe4, 0xf8, 0xe5, 0xeb, 0xfe, 0x3a, 0x7f, 0x6a, 0xc2, 0x03, 0x77, 0x92, 0x8e, 0x17, 0x01, 0x0c, 0xbc, 0x70, 0x6e, 0x55, 0x1a, 0xab, 0x8e, 0x8c, 0xbf, 0x85, 0xd2, 0xd1, 0xb0, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3584 = { .name = "xdh_wei448_3584", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3584_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3584_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3584_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 490 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3585 for XDH, tcId is 491 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3585_peerpubkey[] = { 0x8b, 0x87, 0x90, 0x5a, 0xda, 0x5e, 0x80, 0x16, 0x68, 0xca, 0xef, 0x67, 0x2d, 0xfe, 0x9d, 0xbb, 0xf5, 0xc1, 0x2a, 0x47, 0x0f, 0x2c, 0x0a, 0x3d, 0x17, 0x70, 0x13, 0x55, 0x5b, 0x1a, 0x94, 0xa7, 0x17, 0x12, 0xa4, 0xc8, 0x12, 0x09, 0xd1, 0x2f, 0x0b, 0x97, 0x43, 0x53, 0x2b, 0x01, 0x6f, 0x64, 0x1d, 0x7a, 0xd7, 0xc8, 0xd3, 0x6c, 0xd5, 0x42, }; static const unsigned char xdh_wei448_3585_privkey[] = { 0x8c, 0xcf, 0xeb, 0x69, 0x10, 0x24, 0x15, 0x9d, 0x42, 0xdc, 0x22, 0x2b, 0x45, 0x2d, 0x95, 0xac, 0xef, 0xf2, 0x91, 0xbb, 0x96, 0x1c, 0x85, 0x18, 0x6f, 0x65, 0x7f, 0x4f, 0xcc, 0x8a, 0xa0, 0x2e, 0xf8, 0xde, 0xe9, 0xca, 0x30, 0x61, 0xd3, 0xde, 0x6b, 0x90, 0xdf, 0x77, 0x34, 0xbd, 0x57, 0x2c, 0x2f, 0xf9, 0xcd, 0x02, 0x19, 0x02, 0x2e, 0x9e, }; static const unsigned char xdh_wei448_3585_sharedsecret[] = { 0x29, 0x96, 0xe9, 0xae, 0x7d, 0xfe, 0x36, 0x6c, 0x91, 0x9a, 0xc5, 0xf7, 0xff, 0x52, 0x6d, 0xe8, 0xf7, 0xa2, 0x43, 0xce, 0x0c, 0xdb, 0xc0, 0x26, 0x73, 0x3f, 0x9c, 0xb8, 0xe5, 0xfc, 0x48, 0x38, 0x5d, 0x0b, 0x19, 0x40, 0x10, 0x0e, 0xcb, 0x24, 0xa5, 0x37, 0x58, 0x76, 0xc8, 0xc3, 0xf3, 0x02, 0x7e, 0x13, 0x91, 0x05, 0x47, 0xe2, 0xa5, 0x24, }; static const wycheproof_xdh_test xdh_wei448_3585 = { .name = "xdh_wei448_3585", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3585_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3585_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3585_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 491 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3586 for XDH, tcId is 492 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3586_peerpubkey[] = { 0x26, 0x0a, 0x2e, 0xb9, 0x17, 0x3e, 0xf5, 0x9f, 0xab, 0x77, 0x45, 0xfc, 0xbf, 0x4a, 0x63, 0x96, 0xc7, 0x2e, 0xd2, 0x0e, 0x5b, 0x7c, 0x2b, 0x44, 0x4e, 0x1b, 0x47, 0x93, 0x05, 0x41, 0x51, 0xbf, 0xa4, 0x40, 0xbb, 0xf8, 0xf2, 0x52, 0xc1, 0xf4, 0xd3, 0xc8, 0xc7, 0xf5, 0x11, 0x79, 0x9c, 0x1a, 0xc1, 0x16, 0xdb, 0x83, 0xa4, 0xd1, 0x9f, 0x47, }; static const unsigned char xdh_wei448_3586_privkey[] = { 0xac, 0xff, 0x53, 0xe5, 0x40, 0xfd, 0x03, 0x18, 0xc5, 0x25, 0x34, 0x7b, 0xf0, 0xee, 0x29, 0xe0, 0x82, 0x08, 0xb7, 0x81, 0x6a, 0x95, 0xd3, 0x5d, 0x92, 0x37, 0xea, 0x69, 0x1f, 0xe6, 0xb7, 0xce, 0xfe, 0x98, 0xb6, 0xd4, 0x34, 0x89, 0x1c, 0xf1, 0x32, 0x81, 0xb3, 0x1b, 0x59, 0xc9, 0x6b, 0x74, 0xd2, 0x13, 0xbb, 0x67, 0x85, 0xee, 0x8c, 0x95, }; static const unsigned char xdh_wei448_3586_sharedsecret[] = { 0xa9, 0xfe, 0xbf, 0x85, 0x14, 0x28, 0x9c, 0x54, 0xf3, 0x43, 0xe5, 0xe9, 0x61, 0x87, 0x2f, 0x7c, 0x89, 0x1c, 0x12, 0x4c, 0x36, 0x0f, 0xd3, 0xd6, 0x68, 0xec, 0xdf, 0x0c, 0xe0, 0x3b, 0x35, 0xdb, 0x95, 0x1b, 0x58, 0xb3, 0xfd, 0x11, 0x34, 0x93, 0x76, 0xbc, 0xe0, 0x9e, 0xd2, 0x75, 0xcd, 0x44, 0x2b, 0xa1, 0xc8, 0xcf, 0x7a, 0x26, 0xb9, 0x75, }; static const wycheproof_xdh_test xdh_wei448_3586 = { .name = "xdh_wei448_3586", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3586_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3586_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3586_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 492 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3587 for XDH, tcId is 493 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3587_peerpubkey[] = { 0xc3, 0xb3, 0xd7, 0xb4, 0x21, 0xd3, 0xfd, 0x0a, 0x6d, 0x0f, 0x3c, 0xce, 0xbc, 0xcd, 0xc3, 0x45, 0x0f, 0xdf, 0x0b, 0x31, 0xd1, 0x8c, 0x2f, 0x10, 0xf3, 0xba, 0xe7, 0xc8, 0x0f, 0xf5, 0x88, 0x23, 0xd3, 0x15, 0x79, 0xbe, 0x9a, 0x26, 0xda, 0x99, 0x38, 0x1a, 0x3b, 0x61, 0x37, 0x0f, 0xb0, 0x7f, 0x1e, 0xe4, 0xac, 0xf6, 0x8c, 0x76, 0x15, 0x5a, }; static const unsigned char xdh_wei448_3587_privkey[] = { 0x18, 0x5b, 0xd9, 0x68, 0x16, 0x0e, 0x59, 0x4c, 0x70, 0xe8, 0x87, 0xfd, 0xee, 0x1d, 0x11, 0x25, 0x2c, 0x4e, 0x10, 0x94, 0xc3, 0x29, 0x08, 0x0b, 0xf6, 0xd6, 0x2d, 0x41, 0xf6, 0x6b, 0xb2, 0x7f, 0xd1, 0x94, 0xd8, 0xd9, 0x94, 0x17, 0xbc, 0x78, 0xbf, 0xae, 0x79, 0x54, 0xd0, 0x17, 0xee, 0x7c, 0xbf, 0x82, 0xd5, 0x71, 0x13, 0xde, 0xe5, 0x9d, }; static const unsigned char xdh_wei448_3587_sharedsecret[] = { 0x46, 0x5f, 0xaa, 0x07, 0x90, 0xf7, 0x5d, 0xbc, 0x3c, 0x5a, 0x27, 0xf8, 0xca, 0x78, 0x5b, 0x41, 0xa2, 0xf6, 0x79, 0xd6, 0x49, 0x91, 0xfc, 0xd2, 0xb8, 0xd1, 0x71, 0x0a, 0x1f, 0x17, 0x05, 0xfb, 0x1d, 0xa2, 0xfa, 0x1b, 0x6e, 0x6b, 0xe7, 0xa4, 0x0f, 0xa6, 0xc2, 0x93, 0x2c, 0x57, 0x6b, 0x61, 0xc7, 0x29, 0x49, 0x93, 0xc1, 0x77, 0xd4, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3587 = { .name = "xdh_wei448_3587", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3587_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3587_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3587_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 493 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3588 for XDH, tcId is 494 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3588_peerpubkey[] = { 0x43, 0x8c, 0x6c, 0x66, 0x1f, 0xd8, 0xd3, 0x32, 0xe5, 0x63, 0xc6, 0xc0, 0x56, 0x10, 0xe1, 0xe3, 0xae, 0x21, 0xba, 0x59, 0x9b, 0x88, 0xd2, 0xdc, 0x70, 0xe6, 0x5f, 0x3f, 0xb7, 0x66, 0x45, 0x65, 0x5f, 0x01, 0x7e, 0xa4, 0x77, 0x0e, 0x6f, 0xfd, 0xdd, 0xc6, 0x4c, 0x12, 0xe0, 0x68, 0x68, 0x1e, 0xbc, 0xc5, 0x42, 0x5f, 0xde, 0xfa, 0xdd, 0x64, }; static const unsigned char xdh_wei448_3588_privkey[] = { 0x84, 0x10, 0xd8, 0xad, 0xc4, 0x9f, 0xef, 0x7d, 0xa6, 0x96, 0x68, 0xc4, 0x12, 0x34, 0xe1, 0x3e, 0x61, 0xec, 0x56, 0x15, 0x4a, 0x36, 0x76, 0x61, 0x46, 0xc6, 0x4b, 0xf7, 0xac, 0xa0, 0xda, 0x4f, 0xc8, 0x66, 0x7d, 0xf9, 0xe0, 0x38, 0x34, 0x3b, 0x52, 0x6a, 0x15, 0x79, 0x2a, 0x9c, 0x56, 0x2f, 0xe1, 0xb3, 0x4d, 0x20, 0x05, 0x60, 0x71, 0x94, }; static const unsigned char xdh_wei448_3588_sharedsecret[] = { 0x88, 0xd5, 0xa6, 0x89, 0x1b, 0x45, 0xc4, 0x14, 0x63, 0xe5, 0xb8, 0x9d, 0x1a, 0xc0, 0x75, 0xd6, 0x06, 0x83, 0x57, 0x2c, 0x68, 0x07, 0x21, 0x60, 0xc1, 0x46, 0x76, 0x65, 0xdc, 0xb9, 0xa3, 0xac, 0x23, 0x52, 0x9e, 0x19, 0x95, 0xbb, 0xb0, 0x01, 0x21, 0x8e, 0x15, 0x7d, 0x7a, 0x60, 0xab, 0x53, 0x78, 0x65, 0xe5, 0x4b, 0x05, 0xee, 0x50, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_3588 = { .name = "xdh_wei448_3588", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3588_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3588_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3588_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 494 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3589 for XDH, tcId is 495 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3589_peerpubkey[] = { 0x97, 0x9b, 0x14, 0x70, 0x77, 0x68, 0x6b, 0x9a, 0x16, 0xec, 0x07, 0x38, 0x68, 0x41, 0xb9, 0x4e, 0xc1, 0xe8, 0x1d, 0x73, 0x31, 0xd7, 0x7b, 0xd4, 0xd6, 0xc4, 0x74, 0xb9, 0x71, 0x21, 0x96, 0x69, 0xf9, 0xad, 0x58, 0xe3, 0x01, 0x71, 0xb0, 0xce, 0x41, 0xf3, 0x7a, 0x4c, 0x1e, 0xac, 0x09, 0xf2, 0x0e, 0xfe, 0x17, 0x06, 0x9c, 0x7d, 0x9c, 0xca, }; static const unsigned char xdh_wei448_3589_privkey[] = { 0x44, 0x5e, 0xa2, 0xcf, 0x06, 0x62, 0x62, 0xed, 0x86, 0xf8, 0xe7, 0x58, 0x62, 0x3e, 0x12, 0x55, 0x2f, 0x39, 0x28, 0xdf, 0x35, 0xb8, 0x1a, 0xdf, 0xb5, 0x3f, 0x16, 0xfa, 0xaf, 0x4d, 0xf4, 0xc8, 0x99, 0x89, 0xcb, 0xde, 0xc7, 0x5b, 0x0b, 0x73, 0x2f, 0xd0, 0xae, 0x75, 0x62, 0xec, 0x1f, 0xa0, 0x51, 0x71, 0xa3, 0x0d, 0xc6, 0xbd, 0x04, 0x90, }; static const unsigned char xdh_wei448_3589_sharedsecret[] = { 0x2d, 0x6c, 0x09, 0x06, 0xf8, 0x43, 0x34, 0x92, 0x91, 0xe6, 0x84, 0x69, 0x66, 0x04, 0xa4, 0x61, 0xd9, 0x08, 0x60, 0x3f, 0x7f, 0x1c, 0x7e, 0x9c, 0xdb, 0x49, 0x2b, 0xe4, 0xc2, 0x57, 0xe1, 0xd6, 0x55, 0xc5, 0xca, 0x42, 0x0f, 0xbb, 0x6b, 0x25, 0xd1, 0x17, 0xeb, 0xeb, 0xbb, 0x0d, 0xb7, 0x36, 0x7e, 0x13, 0xe0, 0x91, 0x64, 0xe1, 0x5a, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3589 = { .name = "xdh_wei448_3589", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3589_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3589_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3589_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 495 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3590 for XDH, tcId is 496 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3590_peerpubkey[] = { 0x86, 0x18, 0xd3, 0xf8, 0x3e, 0xa3, 0x1d, 0xdf, 0x84, 0xa8, 0x01, 0xa4, 0x3c, 0xe2, 0x2a, 0x64, 0x65, 0x0a, 0xa3, 0x35, 0x1e, 0xc4, 0xce, 0x08, 0xad, 0x0e, 0xf4, 0x53, 0x9a, 0x86, 0x37, 0x24, 0x06, 0x33, 0x24, 0x95, 0x20, 0x98, 0x0c, 0x67, 0x24, 0x47, 0x8c, 0x00, 0xbb, 0xe6, 0x31, 0xff, 0x60, 0x38, 0x48, 0x9e, 0x8d, 0x53, 0xd0, 0xd7, }; static const unsigned char xdh_wei448_3590_privkey[] = { 0x98, 0x11, 0x3c, 0x01, 0x90, 0x8a, 0xf1, 0x7d, 0xbe, 0xf2, 0x33, 0xff, 0x82, 0xe1, 0xcc, 0x9c, 0x11, 0xfa, 0xb0, 0x96, 0x05, 0x63, 0xc1, 0x3a, 0x73, 0x3a, 0x3a, 0x91, 0xbd, 0xde, 0xf1, 0x9d, 0xc7, 0xc7, 0x29, 0x0d, 0x5b, 0x34, 0x1c, 0x66, 0xd9, 0x39, 0x1b, 0xd6, 0xca, 0xac, 0x71, 0xdc, 0xb6, 0x89, 0x23, 0x43, 0x37, 0x8f, 0x47, 0x90, }; static const unsigned char xdh_wei448_3590_sharedsecret[] = { 0x30, 0x42, 0xf8, 0x85, 0x96, 0x6b, 0x30, 0x5b, 0xf6, 0x4f, 0x92, 0x9f, 0xe6, 0x61, 0xc1, 0x4e, 0xfc, 0x7a, 0x2a, 0xdb, 0x48, 0x32, 0x57, 0x59, 0xfc, 0x96, 0xfe, 0xff, 0x95, 0xfd, 0x9c, 0x03, 0x1a, 0xcf, 0xf0, 0x42, 0x00, 0xd6, 0x66, 0x1d, 0x4a, 0xa1, 0x8d, 0x0e, 0x1e, 0xfa, 0x8f, 0x63, 0x72, 0x0d, 0x29, 0xbe, 0x55, 0x91, 0x32, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3590 = { .name = "xdh_wei448_3590", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3590_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3590_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3590_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 496 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3591 for XDH, tcId is 497 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3591_peerpubkey[] = { 0x95, 0xcb, 0x9c, 0x89, 0x22, 0x1c, 0x71, 0xca, 0x4d, 0x0f, 0x45, 0x1b, 0xf9, 0x44, 0x3b, 0xd3, 0xac, 0x79, 0x30, 0xba, 0xe5, 0xa1, 0xc4, 0xf0, 0x5d, 0x7d, 0x4d, 0x7c, 0x4e, 0xaf, 0x23, 0xa1, 0x5e, 0xca, 0x56, 0x30, 0x21, 0xa6, 0xa8, 0x00, 0x1e, 0x78, 0x99, 0x99, 0xfe, 0xeb, 0xa5, 0x5a, 0x4f, 0x2b, 0x65, 0xd3, 0x63, 0x54, 0xf5, 0xf8, }; static const unsigned char xdh_wei448_3591_privkey[] = { 0x88, 0x0e, 0x5c, 0x31, 0xe1, 0x09, 0x20, 0x8c, 0xf6, 0xea, 0xb1, 0x13, 0xe6, 0x21, 0x78, 0x61, 0x1e, 0xd8, 0xa6, 0xca, 0x8e, 0x77, 0x60, 0x23, 0x2d, 0xc8, 0x25, 0x88, 0xc5, 0x8f, 0xe7, 0xc0, 0x9c, 0xcf, 0x9e, 0x83, 0x95, 0x90, 0x6e, 0x3c, 0x49, 0xb0, 0x10, 0x35, 0x8a, 0x34, 0x3a, 0x8f, 0x38, 0xd7, 0x2d, 0x34, 0x90, 0x24, 0xb6, 0x9b, }; static const unsigned char xdh_wei448_3591_sharedsecret[] = { 0xf6, 0x58, 0xf2, 0xde, 0xe9, 0xe1, 0x8a, 0x7a, 0x35, 0x10, 0x67, 0xe1, 0xc1, 0xb9, 0xce, 0xd8, 0xd7, 0x24, 0x4c, 0x73, 0x84, 0x55, 0x30, 0xa2, 0xa8, 0x0d, 0xa8, 0xaa, 0xe7, 0x40, 0x08, 0x20, 0x29, 0xbb, 0x63, 0xda, 0xee, 0xc6, 0xf7, 0x89, 0x50, 0x6b, 0x7a, 0x4e, 0x2f, 0xa3, 0xe2, 0x7b, 0x74, 0x31, 0x3c, 0x41, 0x4b, 0xe9, 0xf5, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3591 = { .name = "xdh_wei448_3591", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3591_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3591_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3591_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 497 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3592 for XDH, tcId is 498 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3592_peerpubkey[] = { 0x25, 0x2c, 0x8c, 0xb1, 0x28, 0x33, 0xa8, 0xe3, 0x8f, 0xbf, 0xb4, 0x2f, 0xb2, 0x3f, 0xa7, 0x0b, 0x96, 0x3a, 0x70, 0x25, 0xf3, 0x98, 0xe7, 0xc6, 0x3c, 0x02, 0xd9, 0xf0, 0x06, 0x33, 0xd0, 0xe7, 0xbb, 0x4a, 0xb6, 0xdd, 0x63, 0x32, 0x39, 0x7b, 0xa4, 0xfe, 0xf1, 0xde, 0xcd, 0x28, 0x7c, 0x3d, 0xdb, 0x8c, 0xd5, 0xc3, 0x8d, 0xd1, 0x4e, 0x54, }; static const unsigned char xdh_wei448_3592_privkey[] = { 0xe4, 0x89, 0x48, 0xda, 0x83, 0x5c, 0x46, 0x60, 0x02, 0xce, 0x6b, 0xdd, 0x71, 0xb3, 0x8d, 0x78, 0x59, 0xa3, 0x34, 0x1d, 0xd3, 0xc4, 0xf1, 0x8a, 0x9b, 0x9b, 0xf8, 0x6f, 0xb0, 0xc9, 0xb4, 0x9a, 0x6d, 0x61, 0x0f, 0xbb, 0x7a, 0x97, 0x5d, 0x35, 0x35, 0x5c, 0xb2, 0x77, 0x0b, 0x04, 0x9a, 0xc7, 0x1c, 0x79, 0x17, 0x2a, 0x14, 0xe2, 0xe1, 0x9f, }; static const unsigned char xdh_wei448_3592_sharedsecret[] = { 0x2b, 0xf5, 0xa3, 0xd3, 0x55, 0xee, 0x3a, 0x1a, 0x41, 0x91, 0x88, 0xb7, 0x1b, 0x12, 0x3f, 0x5f, 0x55, 0x3b, 0x94, 0x43, 0x9b, 0x76, 0x29, 0x5d, 0xb7, 0xcd, 0x14, 0xe3, 0xa7, 0x8a, 0x96, 0xcc, 0xa1, 0xee, 0xba, 0xaf, 0x7f, 0x5a, 0x67, 0x94, 0xed, 0x44, 0x03, 0xa4, 0x12, 0xe0, 0xe0, 0x83, 0x63, 0x53, 0x4c, 0x27, 0xca, 0xb4, 0xdd, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3592 = { .name = "xdh_wei448_3592", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3592_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3592_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3592_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3593 for XDH, tcId is 499 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3593_peerpubkey[] = { 0x91, 0xdd, 0xa7, 0xe2, 0xb2, 0xc0, 0x28, 0x92, 0x8b, 0x9a, 0x11, 0x15, 0x1c, 0x30, 0x38, 0x2a, 0x2f, 0x38, 0xf1, 0xee, 0xbf, 0x9f, 0x13, 0x3f, 0x32, 0xf1, 0x3f, 0x58, 0xc6, 0x70, 0x31, 0xad, 0x13, 0x44, 0x77, 0x13, 0x19, 0xe0, 0x1f, 0x47, 0xfb, 0x44, 0xfe, 0x0f, 0x33, 0x6f, 0xb1, 0xdb, 0xb9, 0x39, 0xa3, 0x68, 0xa2, 0x23, 0xfd, 0x89, }; static const unsigned char xdh_wei448_3593_privkey[] = { 0x5c, 0x7f, 0x46, 0x8a, 0xdd, 0x25, 0x3a, 0xb3, 0xa1, 0x12, 0x6d, 0xd8, 0xa9, 0x75, 0xcc, 0xb7, 0xf0, 0x97, 0xf7, 0xda, 0x49, 0x66, 0x9b, 0x54, 0x46, 0x7b, 0x01, 0x54, 0x55, 0x12, 0x5c, 0xfb, 0xbf, 0x70, 0x1a, 0x99, 0x21, 0x2b, 0xb3, 0x59, 0x45, 0x4a, 0x0c, 0x99, 0x5f, 0x10, 0x60, 0x07, 0x08, 0x0a, 0x43, 0x36, 0x3b, 0x9d, 0x51, 0x99, }; static const unsigned char xdh_wei448_3593_sharedsecret[] = { 0x9b, 0x74, 0x10, 0x08, 0x71, 0x86, 0x56, 0xf0, 0xcc, 0x1b, 0xd0, 0x34, 0x7b, 0x3d, 0x36, 0x38, 0x40, 0xab, 0xd4, 0x6c, 0x4e, 0x59, 0xe9, 0xf5, 0x45, 0x4d, 0x1b, 0xea, 0x24, 0xe1, 0x7a, 0x84, 0x24, 0x59, 0xfe, 0x45, 0x1c, 0xe7, 0x18, 0xd9, 0x11, 0xe3, 0x79, 0x36, 0x47, 0xa5, 0x44, 0x5b, 0xb4, 0xef, 0x96, 0x7e, 0x03, 0x6b, 0x6c, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_3593 = { .name = "xdh_wei448_3593", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3593_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3593_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3593_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3594 for XDH, tcId is 500 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3594_peerpubkey[] = { 0x89, 0x73, 0x52, 0x9d, 0x6d, 0xd9, 0xc3, 0xd1, 0xe5, 0xf5, 0xfb, 0x94, 0xa0, 0x27, 0xa8, 0x8e, 0x1c, 0xd5, 0xb9, 0xd6, 0x69, 0xa4, 0x98, 0xbb, 0x43, 0xa2, 0xbc, 0x6a, 0xe1, 0x40, 0xe9, 0x98, 0x31, 0x9f, 0xc3, 0xfd, 0x35, 0x4f, 0x77, 0xb9, 0x4e, 0x67, 0x79, 0x2a, 0x25, 0x94, 0x6c, 0x3b, 0x54, 0x46, 0x61, 0x6f, 0xc8, 0x67, 0x1d, 0xfc, }; static const unsigned char xdh_wei448_3594_privkey[] = { 0xac, 0xcb, 0xaa, 0x63, 0x4a, 0x2b, 0xa6, 0x89, 0x89, 0xc5, 0x70, 0xa4, 0x17, 0x29, 0x41, 0x47, 0x16, 0x93, 0xbb, 0xf2, 0xcd, 0x5b, 0xf7, 0x1e, 0x23, 0xc0, 0x1a, 0x47, 0xfa, 0xba, 0xfb, 0x4f, 0xd2, 0xe1, 0x81, 0x4e, 0x9d, 0xd7, 0xbe, 0xbf, 0x45, 0x37, 0x1a, 0xed, 0x46, 0x40, 0xa0, 0x41, 0x5b, 0xc1, 0xec, 0xfc, 0xf9, 0x95, 0x1a, 0x9d, }; static const unsigned char xdh_wei448_3594_sharedsecret[] = { 0xd0, 0xdb, 0x13, 0x6f, 0x5f, 0xf5, 0xd8, 0x23, 0x4b, 0x5d, 0x0e, 0xc2, 0x3c, 0xc4, 0xdb, 0xba, 0x27, 0xd4, 0xa8, 0x81, 0xbc, 0x97, 0x3c, 0x50, 0x22, 0x42, 0x81, 0x8e, 0x9e, 0x6b, 0x31, 0x31, 0x0c, 0xe9, 0x9f, 0xd7, 0x95, 0x0e, 0xa3, 0x84, 0x2d, 0xef, 0x84, 0x2d, 0xbd, 0x63, 0xcd, 0xfa, 0xa1, 0x63, 0x77, 0x86, 0x6f, 0xdf, 0xc8, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_3594 = { .name = "xdh_wei448_3594", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3594_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3594_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3594_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3595 for XDH, tcId is 501 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3595_peerpubkey[] = { 0x93, 0xa8, 0xcf, 0x1a, 0xf7, 0xa6, 0x2d, 0x23, 0x95, 0x57, 0xea, 0x30, 0x22, 0x02, 0xa5, 0x07, 0xf7, 0x6a, 0xfe, 0x05, 0xd4, 0x15, 0x1a, 0x67, 0xaf, 0x47, 0x3e, 0x64, 0x79, 0xe5, 0x55, 0x86, 0x05, 0x71, 0x50, 0xa2, 0x9b, 0xe9, 0x5d, 0x12, 0x08, 0xb9, 0x93, 0xc9, 0x97, 0xc6, 0xa7, 0x75, 0xcc, 0x0b, 0x66, 0x71, 0xe0, 0xc5, 0xf6, 0x5e, }; static const unsigned char xdh_wei448_3595_privkey[] = { 0xc4, 0x16, 0x33, 0x21, 0x3e, 0x2a, 0x96, 0x9c, 0x61, 0x20, 0x39, 0x91, 0xd4, 0xe2, 0x3c, 0xf2, 0x0b, 0x83, 0x8f, 0x04, 0xb3, 0x75, 0x3a, 0xa5, 0xbd, 0xd8, 0x35, 0x52, 0x37, 0xee, 0x38, 0xbc, 0xf7, 0x55, 0x3c, 0x8e, 0xd6, 0xda, 0x13, 0x3f, 0x07, 0x33, 0xec, 0x43, 0x30, 0x0a, 0xca, 0xf4, 0x1f, 0x6c, 0x2b, 0xb7, 0x1d, 0x41, 0xba, 0x93, }; static const unsigned char xdh_wei448_3595_sharedsecret[] = { 0x3c, 0x01, 0x34, 0x09, 0xc1, 0xab, 0x90, 0xb9, 0x39, 0x5a, 0x39, 0x42, 0x5d, 0xb3, 0x14, 0xf4, 0xd0, 0xc0, 0x2e, 0x8f, 0x85, 0x99, 0xd4, 0x34, 0xb6, 0xb5, 0x18, 0x32, 0x27, 0x5d, 0x03, 0xbf, 0xa9, 0x7f, 0xa7, 0x08, 0xcc, 0x64, 0x91, 0x25, 0x5e, 0x87, 0x01, 0xfd, 0x26, 0x49, 0xf5, 0x5a, 0xcd, 0x24, 0xc2, 0x3d, 0x95, 0x65, 0xb4, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3595 = { .name = "xdh_wei448_3595", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3595_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3595_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3595_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 501 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3596 for XDH, tcId is 502 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3596_peerpubkey[] = { 0xda, 0x73, 0x6a, 0x97, 0xd9, 0x03, 0x95, 0x26, 0xa2, 0x8b, 0x53, 0xff, 0xcd, 0x60, 0xc5, 0xa4, 0xa8, 0x0a, 0x72, 0x20, 0xa3, 0x9c, 0x74, 0x2c, 0xbd, 0xf7, 0xd8, 0x9b, 0x5a, 0xc5, 0xc1, 0x02, 0x1b, 0x03, 0xca, 0xd2, 0x4b, 0xd3, 0x4a, 0x73, 0x97, 0xe9, 0xf7, 0xba, 0x7f, 0x32, 0xb0, 0x96, 0x76, 0xb5, 0x26, 0x0d, 0x2f, 0xf1, 0x06, 0xef, }; static const unsigned char xdh_wei448_3596_privkey[] = { 0xa4, 0x10, 0x23, 0xf8, 0x5d, 0x15, 0xe9, 0x3f, 0xc8, 0x0e, 0x97, 0x24, 0xb2, 0x25, 0xb2, 0x6b, 0x3f, 0xbe, 0xc7, 0xae, 0x5b, 0xa8, 0xb0, 0x7f, 0x0c, 0xd6, 0x4d, 0x69, 0x20, 0xd1, 0xb8, 0x31, 0x27, 0x48, 0xfb, 0x4f, 0x52, 0x6c, 0xcb, 0x0e, 0xad, 0xa5, 0xd2, 0x13, 0x1f, 0xa4, 0x44, 0x6f, 0x12, 0x7b, 0xa1, 0x3c, 0x27, 0xe6, 0xac, 0x90, }; static const unsigned char xdh_wei448_3596_sharedsecret[] = { 0xf8, 0x35, 0x35, 0x73, 0x09, 0x1c, 0xf4, 0xcf, 0xde, 0x03, 0xd0, 0x33, 0x35, 0xa2, 0x7d, 0xda, 0x98, 0xf8, 0xc1, 0xee, 0x17, 0x0e, 0x59, 0x81, 0x50, 0x00, 0x7f, 0x16, 0xf7, 0x05, 0x77, 0xb3, 0x8a, 0xa9, 0x67, 0xd9, 0x70, 0xfd, 0xb1, 0x6f, 0x82, 0x01, 0x23, 0xdd, 0x28, 0x06, 0x68, 0x98, 0x6c, 0x57, 0xeb, 0xc6, 0x97, 0x33, 0x37, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3596 = { .name = "xdh_wei448_3596", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3596_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3596_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3596_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 502 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3597 for XDH, tcId is 503 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3597_peerpubkey[] = { 0xa7, 0x17, 0x42, 0xc4, 0x72, 0xd8, 0xee, 0xe6, 0x36, 0xa9, 0x74, 0xdd, 0x98, 0xf5, 0x54, 0xad, 0x2f, 0x89, 0x91, 0x1f, 0x80, 0xab, 0xdb, 0x3d, 0x8f, 0xa0, 0x3b, 0xbb, 0x98, 0x19, 0x17, 0xb1, 0x9d, 0x92, 0x55, 0x81, 0xbc, 0xce, 0x71, 0x93, 0xc8, 0x83, 0x9f, 0x6b, 0x2e, 0x0f, 0xf6, 0xc1, 0xda, 0x7c, 0x20, 0x29, 0x70, 0xb3, 0xda, 0x46, }; static const unsigned char xdh_wei448_3597_privkey[] = { 0xbe, 0x58, 0xb9, 0x58, 0xdd, 0xcc, 0x5b, 0xb1, 0xa9, 0xcc, 0xdb, 0xc4, 0x3c, 0xcc, 0x1f, 0xa7, 0xd0, 0x10, 0x2f, 0x6a, 0x70, 0x48, 0x8a, 0xd5, 0x90, 0xb3, 0xf2, 0x6f, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3597_sharedsecret[] = { 0xca, 0xba, 0x02, 0x71, 0xea, 0x05, 0xea, 0xbf, 0x9d, 0x92, 0x31, 0x43, 0x11, 0xce, 0xdf, 0x54, 0xdf, 0x44, 0x73, 0x96, 0x23, 0xa6, 0x00, 0x04, 0xdd, 0x62, 0xd5, 0xcc, 0xac, 0x1f, 0x43, 0x02, 0x64, 0x4b, 0x2f, 0x0b, 0x75, 0xe3, 0x5b, 0x11, 0xa1, 0x83, 0x1a, 0x87, 0x54, 0x82, 0x38, 0xb9, 0xc3, 0x6e, 0x71, 0xe5, 0xf7, 0xc5, 0x7d, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3597 = { .name = "xdh_wei448_3597", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3597_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3597_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3597_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "private key == -1 (mod order), tcId is 503 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3598 for XDH, tcId is 504 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3598_peerpubkey[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const unsigned char xdh_wei448_3598_privkey[] = { 0x28, 0x31, 0xf7, 0xfd, 0x47, 0xb8, 0x95, 0x95, 0x00, 0x52, 0xaf, 0x56, 0xa8, 0xb8, 0xb9, 0x9b, 0x4f, 0x5c, 0x7d, 0xf3, 0x22, 0x6e, 0x13, 0xb3, 0x42, 0x94, 0xa1, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, }; static const unsigned char xdh_wei448_3598_sharedsecret[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3598 = { .name = "xdh_wei448_3598", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3598_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3598_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3598_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 504 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3599 for XDH, tcId is 505 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3599_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_3599_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3599_sharedsecret[] = { 0x52, 0x32, 0xfe, 0x84, 0x57, 0xba, 0x91, 0x0c, 0xb8, 0x86, 0xbd, 0xa0, 0xda, 0x97, 0x75, 0x4b, 0xf7, 0x13, 0x2f, 0x61, 0x48, 0x19, 0x39, 0x80, 0x86, 0x73, 0xdb, 0x29, 0xe3, 0x18, 0xcb, 0xdc, 0xe8, 0x56, 0x1c, 0x78, 0x06, 0x2a, 0xd9, 0x48, 0x64, 0xba, 0x5c, 0x82, 0x04, 0x54, 0x76, 0x6d, 0x02, 0x55, 0xbe, 0xc1, 0xdb, 0x69, 0x51, 0x47, }; static const wycheproof_xdh_test xdh_wei448_3599 = { .name = "xdh_wei448_3599", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3599_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3599_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3599_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 505 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3600 for XDH, tcId is 506 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3600_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_3600_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3600_sharedsecret[] = { 0x34, 0x1c, 0x3a, 0xeb, 0x05, 0x51, 0x10, 0x8f, 0xc8, 0x0d, 0x22, 0xd9, 0x8c, 0x26, 0x83, 0xa6, 0xeb, 0x68, 0x96, 0x74, 0x20, 0xc1, 0xe0, 0x33, 0xfc, 0x22, 0xc4, 0x1f, 0x4f, 0x3a, 0xb8, 0xd8, 0x2d, 0x64, 0x34, 0x25, 0xd2, 0x67, 0x5f, 0x44, 0xf4, 0x2d, 0x03, 0xb9, 0x98, 0x48, 0x4e, 0x62, 0xf3, 0x5b, 0x91, 0x5c, 0x1d, 0x4b, 0xf4, 0x34, }; static const wycheproof_xdh_test xdh_wei448_3600 = { .name = "xdh_wei448_3600", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3600_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3600_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3600_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 506 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3601 for XDH, tcId is 507 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3601_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_3601_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_3601_sharedsecret[] = { 0xb2, 0xba, 0x50, 0x57, 0xf1, 0xf1, 0x18, 0x3b, 0x19, 0x70, 0xb7, 0x84, 0x45, 0x37, 0x78, 0x46, 0x70, 0xda, 0x55, 0xc5, 0xe3, 0x20, 0x7d, 0xe1, 0xd0, 0xf7, 0x64, 0x27, 0xb2, 0x66, 0x38, 0x11, 0x42, 0x61, 0x07, 0x94, 0x10, 0x22, 0xd9, 0xbf, 0x85, 0xa3, 0x73, 0xa7, 0x84, 0x0e, 0xb0, 0x17, 0xcf, 0x8f, 0xa2, 0x3e, 0x53, 0x06, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3601 = { .name = "xdh_wei448_3601", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3601_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3601_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3601_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 507 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3602 for XDH, tcId is 508 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3602_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_3602_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3602_sharedsecret[] = { 0x56, 0x66, 0xa7, 0x22, 0x76, 0xa9, 0xc4, 0xf3, 0x84, 0x9f, 0x62, 0x88, 0x8d, 0x85, 0x90, 0xe0, 0xae, 0xe1, 0x15, 0xe9, 0xa2, 0x31, 0xb1, 0xca, 0x74, 0x3e, 0xe7, 0xa0, 0x2a, 0xf7, 0x37, 0x7e, 0x40, 0x30, 0x52, 0x10, 0x91, 0xd1, 0x73, 0x94, 0x1c, 0x9a, 0x70, 0x17, 0x53, 0xec, 0xa4, 0xd5, 0x82, 0x3f, 0xbd, 0x86, 0x74, 0x7d, 0xc0, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_3602 = { .name = "xdh_wei448_3602", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3602_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3602_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3602_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 508 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3603 for XDH, tcId is 509 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3603_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_3603_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3603_sharedsecret[] = { 0x8b, 0xd6, 0x7f, 0xe2, 0x10, 0x2f, 0x52, 0xd8, 0x61, 0xec, 0x67, 0x98, 0xed, 0x27, 0x9b, 0x0f, 0xf9, 0xa4, 0xf2, 0xa8, 0x9e, 0x83, 0x42, 0x9f, 0x69, 0x75, 0x3d, 0x2a, 0x9b, 0x1a, 0x23, 0xbd, 0x94, 0x0e, 0xa6, 0x64, 0x49, 0x0c, 0xdc, 0x32, 0xc8, 0x6e, 0x3e, 0xcb, 0xd9, 0x93, 0x84, 0x7e, 0xd3, 0xea, 0x78, 0x0c, 0x48, 0x39, 0x7f, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_3603 = { .name = "xdh_wei448_3603", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3603_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3603_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3603_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 509 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3604 for XDH, tcId is 510 in file x448_pem_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3604_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_3604_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_3604_sharedsecret[] = { 0xb7, 0xda, 0x87, 0xa0, 0x54, 0x66, 0x89, 0xef, 0xf6, 0xfe, 0x5d, 0xbb, 0x1c, 0xad, 0x3d, 0x3f, 0x28, 0x26, 0x53, 0xaf, 0x32, 0xe2, 0xe9, 0x65, 0xb3, 0x00, 0x4b, 0x6d, 0x52, 0x73, 0xe0, 0x4b, 0xe2, 0x42, 0xaf, 0x3c, 0xbc, 0xf9, 0xbb, 0xdc, 0x69, 0xd7, 0x74, 0x00, 0x5b, 0xd8, 0x56, 0xc7, 0xf7, 0x40, 0xeb, 0xf6, 0xce, 0xf0, 0xdf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_3604 = { .name = "xdh_wei448_3604", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3604_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3604_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3604_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 510 in file x448_pem_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3605 for XDH, tcId is 1 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3605_peerpubkey[] = { 0xf8, 0x07, 0x3f, 0xc0, 0x1c, 0x83, 0x58, 0x36, 0x2c, 0x08, 0x74, 0x0c, 0x91, 0x4b, 0x41, 0x98, 0x47, 0xef, 0x1e, 0x40, 0x9f, 0x4e, 0x40, 0xd9, 0x44, 0x0f, 0xeb, 0xc2, 0x6f, 0x00, 0x55, 0x1a, 0xdb, 0x1c, 0x37, 0xc6, 0xc2, 0xa8, 0x7d, 0x82, 0x83, 0xb8, 0xcb, 0x45, 0x3e, 0x92, 0x8a, 0x0d, 0x42, 0x79, 0x3f, 0x72, 0x89, 0x4e, 0x0f, 0x81, }; static const unsigned char xdh_wei448_3605_privkey[] = { 0xe4, 0x1c, 0x63, 0xd5, 0x15, 0x9c, 0x89, 0xde, 0x12, 0x16, 0x3f, 0xde, 0x9d, 0x04, 0xcf, 0x1f, 0x43, 0x0f, 0x34, 0x6b, 0x8b, 0x2c, 0x1f, 0x2a, 0x4b, 0x1f, 0x5a, 0xee, 0x63, 0xd1, 0x7a, 0xec, 0x29, 0xd4, 0xb1, 0xde, 0xbf, 0x8b, 0x64, 0x57, 0xe7, 0x80, 0x9d, 0x2b, 0x15, 0xff, 0x97, 0x79, 0xc9, 0x7b, 0xec, 0xb0, 0x4b, 0x82, 0x4e, 0xfa, }; static const unsigned char xdh_wei448_3605_sharedsecret[] = { 0xac, 0xd4, 0x96, 0xce, 0xb5, 0xf6, 0x8b, 0xf9, 0xc2, 0x67, 0x19, 0x6b, 0x40, 0x5f, 0x59, 0x70, 0x1a, 0x40, 0xec, 0x88, 0x74, 0x4b, 0x7e, 0x5e, 0x60, 0xbf, 0x8f, 0x81, 0xe8, 0xb1, 0x3d, 0xf4, 0x48, 0xef, 0xe4, 0x02, 0x00, 0x17, 0x50, 0xed, 0xb0, 0xb6, 0x95, 0xa0, 0x51, 0x2f, 0x08, 0xc5, 0x72, 0xa2, 0xe3, 0x56, 0x49, 0x3d, 0x17, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_3605 = { .name = "xdh_wei448_3605", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3605_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3605_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3605_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "normal case, tcId is 1 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3606 for XDH, tcId is 2 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3606_peerpubkey[] = { 0xf8, 0xd9, 0x14, 0x43, 0x04, 0xbd, 0x8c, 0x4d, 0x1f, 0xa6, 0x89, 0x57, 0x02, 0x6f, 0xc5, 0xc1, 0xb7, 0x50, 0x20, 0x36, 0x5b, 0x09, 0x91, 0xd2, 0xeb, 0x15, 0x41, 0xa4, 0xdf, 0xa3, 0xf1, 0x5e, 0x7a, 0x70, 0x28, 0x5c, 0xd3, 0x82, 0x8b, 0x52, 0x9b, 0xec, 0xe0, 0x21, 0xd3, 0xe0, 0x3a, 0x41, 0x5e, 0x4f, 0x8c, 0x02, 0xeb, 0x89, 0xef, 0x19, }; static const unsigned char xdh_wei448_3606_privkey[] = { 0xfc, 0xb4, 0xed, 0x3a, 0xfa, 0x64, 0xc8, 0x4b, 0x78, 0x44, 0x96, 0x5c, 0x84, 0x8a, 0xd8, 0x88, 0x19, 0x24, 0x19, 0x11, 0xcd, 0x65, 0xd3, 0x5a, 0x2b, 0xc2, 0x6a, 0x07, 0x3c, 0x08, 0xd8, 0xe1, 0x91, 0xbc, 0xfa, 0x04, 0xb2, 0xdb, 0xd9, 0x4e, 0x21, 0x9f, 0x74, 0x6d, 0xf9, 0x29, 0xd3, 0x29, 0x8e, 0x03, 0xaf, 0xeb, 0x73, 0xb4, 0xfb, 0xdb, }; static const unsigned char xdh_wei448_3606_sharedsecret[] = { 0x3f, 0x97, 0xc3, 0xf8, 0x7b, 0x96, 0x7d, 0xaa, 0xc4, 0xe5, 0xd1, 0x2e, 0xae, 0x05, 0xa8, 0x0c, 0x75, 0x1c, 0x3b, 0x3e, 0x10, 0x70, 0x88, 0x6b, 0x08, 0x3e, 0x90, 0xbb, 0x8f, 0x63, 0xcf, 0x76, 0xae, 0xa0, 0xcd, 0x4b, 0xf5, 0x03, 0x21, 0x87, 0xe5, 0x2b, 0x1d, 0x05, 0x13, 0xc9, 0x6f, 0x1a, 0xc8, 0x30, 0xde, 0xbc, 0xd3, 0x78, 0x87, 0xab, }; static const wycheproof_xdh_test xdh_wei448_3606 = { .name = "xdh_wei448_3606", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3606_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3606_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3606_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 2 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3607 for XDH, tcId is 3 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3607_peerpubkey[] = { 0x08, 0xeb, 0xf6, 0xed, 0xaa, 0x4f, 0x1e, 0x97, 0xf7, 0x67, 0x5e, 0x98, 0x39, 0xc6, 0x34, 0x9f, 0x71, 0xd8, 0x42, 0xef, 0x0e, 0xfe, 0x1e, 0x21, 0x17, 0x7b, 0x53, 0xdc, 0x40, 0x92, 0x70, 0x45, 0x7b, 0xb1, 0xea, 0x58, 0xe5, 0x76, 0xf5, 0xcc, 0xc6, 0x82, 0xe9, 0x2c, 0xcc, 0x9f, 0xf3, 0xc6, 0x54, 0x2a, 0x0a, 0x6e, 0xcd, 0x32, 0xe7, 0xe0, }; static const unsigned char xdh_wei448_3607_privkey[] = { 0xfc, 0xc8, 0x90, 0x42, 0xab, 0xb5, 0x58, 0xba, 0xf3, 0x2b, 0xb9, 0xa7, 0xf9, 0xea, 0x4b, 0x27, 0x4e, 0x10, 0xe1, 0x3d, 0xb6, 0x5b, 0xee, 0xdb, 0x2a, 0xca, 0x58, 0xea, 0x95, 0xc0, 0xe0, 0x84, 0x12, 0xab, 0xdd, 0x4c, 0x56, 0x84, 0x3e, 0xe9, 0xe2, 0x15, 0x49, 0xbd, 0xca, 0x11, 0x01, 0xfd, 0x0c, 0xa0, 0xf3, 0x0d, 0xe6, 0xeb, 0xce, 0x8e, }; static const unsigned char xdh_wei448_3607_sharedsecret[] = { 0x03, 0xaa, 0x74, 0xc7, 0x30, 0x02, 0x43, 0x38, 0x58, 0x04, 0x13, 0x3a, 0x75, 0x06, 0x35, 0xa9, 0xe0, 0xd5, 0xab, 0x8d, 0x46, 0x12, 0x6a, 0xba, 0xa9, 0x59, 0x56, 0x60, 0xda, 0x17, 0x2e, 0x9b, 0x1f, 0xe9, 0x29, 0x02, 0xbb, 0x71, 0x69, 0x71, 0x22, 0xf0, 0xd6, 0xc3, 0xff, 0x45, 0xb2, 0xa8, 0x97, 0xb7, 0x77, 0x38, 0x0f, 0xfe, 0x49, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_3607 = { .name = "xdh_wei448_3607", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3607_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3607_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3607_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 3 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3608 for XDH, tcId is 4 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3608_peerpubkey[] = { 0x69, 0xa4, 0x38, 0xc3, 0x0c, 0x11, 0xb4, 0xed, 0x55, 0x9c, 0x03, 0xab, 0x43, 0x0a, 0x64, 0xef, 0xb0, 0x1c, 0x98, 0xfe, 0x62, 0x32, 0x80, 0x3c, 0x07, 0x67, 0xa4, 0x03, 0x28, 0x32, 0x6d, 0xa2, 0x8c, 0x34, 0x91, 0xe1, 0x91, 0x51, 0xb4, 0xa8, 0x13, 0xaa, 0xdf, 0x6c, 0x96, 0x63, 0xd6, 0xdc, 0xd4, 0xcc, 0x9b, 0x07, 0x6c, 0x7e, 0x9f, 0xb5, }; static const unsigned char xdh_wei448_3608_privkey[] = { 0xe0, 0xaa, 0xe9, 0x6d, 0x22, 0xfa, 0x49, 0xd3, 0x24, 0x60, 0x1b, 0xb8, 0xb2, 0xdd, 0x9f, 0x73, 0x67, 0x09, 0xdf, 0x55, 0x7b, 0x8c, 0xb4, 0x69, 0xd6, 0xe2, 0xbe, 0xfa, 0x86, 0x35, 0x99, 0x8f, 0x51, 0x22, 0x2a, 0xde, 0xa9, 0x74, 0x10, 0x58, 0x8c, 0x5f, 0x5f, 0x4e, 0xf6, 0x18, 0x87, 0xc9, 0x4f, 0xea, 0x9a, 0x4e, 0x33, 0x24, 0x45, 0xbc, }; static const unsigned char xdh_wei448_3608_sharedsecret[] = { 0xc0, 0x85, 0x3d, 0xba, 0x67, 0x2e, 0x8c, 0x3e, 0x05, 0xde, 0x82, 0xd3, 0x44, 0xde, 0x1c, 0x72, 0xfc, 0xd9, 0xc8, 0x39, 0x1b, 0x17, 0x7f, 0x36, 0x33, 0x97, 0x81, 0x82, 0x70, 0xe9, 0x28, 0xbb, 0x0d, 0xe2, 0xe5, 0x50, 0x12, 0x8a, 0x6f, 0x4e, 0xa6, 0xde, 0x57, 0x93, 0x08, 0xe7, 0xc3, 0xd8, 0x23, 0xb3, 0xe6, 0x51, 0x16, 0xdf, 0x43, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3608 = { .name = "xdh_wei448_3608", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3608_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3608_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3608_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 4 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3609 for XDH, tcId is 5 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3609_peerpubkey[] = { 0x2c, 0x19, 0xd1, 0x2c, 0x78, 0x3c, 0xe4, 0xc6, 0x76, 0x03, 0xe0, 0x2a, 0x09, 0x3d, 0xdc, 0x1e, 0x14, 0x8b, 0x9f, 0x5f, 0x84, 0x53, 0xb1, 0x53, 0xe6, 0xd7, 0x26, 0x29, 0xb1, 0xf5, 0x0e, 0x60, 0x9f, 0xec, 0x8d, 0x0e, 0xe2, 0x3e, 0xee, 0xe7, 0x69, 0xff, 0xb9, 0x09, 0xdb, 0x4b, 0xad, 0xac, 0xdb, 0x99, 0xd5, 0xb9, 0x90, 0xd7, 0x58, 0x25, }; static const unsigned char xdh_wei448_3609_privkey[] = { 0x60, 0x1f, 0x19, 0x76, 0x9c, 0xd4, 0x9e, 0x82, 0x8b, 0x60, 0x0e, 0xe3, 0x73, 0xf1, 0xd0, 0x51, 0x4a, 0xbb, 0xd8, 0x95, 0xb5, 0x43, 0x67, 0x87, 0x60, 0xaa, 0xaf, 0x30, 0x0d, 0x4d, 0x1f, 0xaa, 0xf7, 0x3e, 0x80, 0x1e, 0x56, 0x88, 0x15, 0x28, 0x12, 0xae, 0x96, 0x9d, 0xb5, 0x22, 0xba, 0x8f, 0x3e, 0xd8, 0xa0, 0x03, 0x43, 0x71, 0xeb, 0xa3, }; static const unsigned char xdh_wei448_3609_sharedsecret[] = { 0x4a, 0x89, 0x66, 0x49, 0x7c, 0x42, 0xcc, 0x1c, 0x8e, 0xb7, 0x7e, 0x8a, 0xd1, 0x16, 0xed, 0x25, 0x82, 0xd3, 0xc8, 0x1a, 0x60, 0x2a, 0xf3, 0xd8, 0xb0, 0x8a, 0x99, 0x66, 0x97, 0xe2, 0x26, 0xbe, 0xb7, 0x86, 0x1b, 0xa7, 0x2e, 0xc9, 0x9f, 0xea, 0x58, 0x16, 0xb1, 0x18, 0x7c, 0x6c, 0x76, 0x8f, 0xf7, 0x5b, 0x1f, 0x7c, 0x52, 0x67, 0x41, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_3609 = { .name = "xdh_wei448_3609", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3609_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3609_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3609_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 5 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3610 for XDH, tcId is 6 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3610_peerpubkey[] = { 0xbe, 0x11, 0x10, 0x9a, 0x68, 0x72, 0xc3, 0x8a, 0xba, 0xd8, 0x61, 0x01, 0xb0, 0x56, 0x12, 0x08, 0xcc, 0x3a, 0x32, 0xa9, 0xe0, 0x34, 0x58, 0x22, 0xc7, 0x51, 0x4f, 0x64, 0x23, 0xf1, 0x42, 0x53, 0x0d, 0xf9, 0xbb, 0xfd, 0x72, 0xb0, 0xd4, 0xcd, 0x8e, 0x73, 0x4a, 0xe0, 0x92, 0xdd, 0x02, 0x20, 0x2f, 0x42, 0xb7, 0x8e, 0x54, 0x2e, 0x4c, 0xc5, }; static const unsigned char xdh_wei448_3610_privkey[] = { 0x3c, 0xc4, 0xe7, 0xb7, 0x22, 0xec, 0xe8, 0xf7, 0xcc, 0x1f, 0xb1, 0x88, 0xde, 0xd1, 0xc2, 0x75, 0x07, 0x14, 0x1d, 0xbf, 0x79, 0x41, 0xe1, 0xa9, 0xbb, 0x66, 0x2c, 0xf0, 0xff, 0xc4, 0x80, 0xc3, 0xe0, 0x4d, 0x31, 0x77, 0x82, 0x58, 0x38, 0x1e, 0x93, 0x8e, 0x82, 0x8e, 0x24, 0xdc, 0x6e, 0xa1, 0x14, 0xa6, 0xe0, 0xd2, 0x59, 0xae, 0xf9, 0xbf, }; static const unsigned char xdh_wei448_3610_sharedsecret[] = { 0x66, 0xb1, 0x3d, 0x08, 0xe7, 0x4c, 0x37, 0xe2, 0x34, 0x5d, 0x1a, 0x26, 0xef, 0xf2, 0x5b, 0xfc, 0xa0, 0x71, 0x00, 0x42, 0xd2, 0xda, 0xf0, 0xd3, 0xd4, 0xe9, 0x7e, 0x55, 0xdd, 0xec, 0xed, 0x10, 0xbc, 0xa4, 0x33, 0xf2, 0xd3, 0x30, 0x81, 0x03, 0xc8, 0xcc, 0xfa, 0x07, 0x90, 0x90, 0xdc, 0xe6, 0x9e, 0x90, 0xbd, 0x90, 0xab, 0x93, 0xd6, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_3610 = { .name = "xdh_wei448_3610", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3610_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3610_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3610_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 6 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3611 for XDH, tcId is 7 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3611_peerpubkey[] = { 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3611_privkey[] = { 0x4c, 0x29, 0x11, 0x8c, 0xd3, 0xfc, 0xe5, 0x1c, 0x7f, 0xd0, 0x82, 0xc8, 0x88, 0x0d, 0x59, 0x2a, 0x9c, 0x2a, 0x93, 0x89, 0xaa, 0x37, 0x1c, 0xa6, 0xe6, 0xed, 0x78, 0xe6, 0xee, 0x02, 0xf0, 0x8b, 0xec, 0x1c, 0x15, 0xd6, 0x6f, 0xbb, 0xe5, 0xb8, 0x3f, 0xfc, 0x37, 0xea, 0x14, 0xe1, 0x51, 0x2c, 0xc1, 0xbd, 0x4b, 0x2e, 0xa6, 0xd8, 0x06, 0xef, }; static const unsigned char xdh_wei448_3611_sharedsecret[] = { 0xf2, 0xd3, 0xc0, 0x20, 0x56, 0x56, 0x47, 0x95, 0xc5, 0x9a, 0xbb, 0xa5, 0xb6, 0x0b, 0x84, 0xf6, 0x34, 0x9d, 0xdb, 0xe6, 0xff, 0x38, 0x0b, 0x96, 0x73, 0xf4, 0xd0, 0x9e, 0x28, 0xba, 0x23, 0x72, 0xe2, 0xe8, 0xdc, 0xf2, 0x69, 0xce, 0xc4, 0x87, 0x70, 0x61, 0x86, 0x63, 0xc9, 0x32, 0x28, 0x44, 0x83, 0xf4, 0xee, 0x5a, 0x57, 0x18, 0xfd, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3611 = { .name = "xdh_wei448_3611", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3611_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3611_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3611_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 7 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3612 for XDH, tcId is 8 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3612_peerpubkey[] = { 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3612_privkey[] = { 0xe8, 0x6c, 0xde, 0x64, 0x0f, 0x9f, 0x2a, 0x0e, 0x52, 0x8b, 0xe1, 0xff, 0x2a, 0x57, 0xa1, 0x26, 0x3a, 0x69, 0xe5, 0x60, 0xf9, 0x7c, 0x79, 0xf2, 0xd2, 0x5a, 0xbd, 0x08, 0xbf, 0x5e, 0x62, 0x53, 0x8c, 0xb9, 0xa5, 0xed, 0x10, 0x5d, 0xbe, 0xdd, 0x6d, 0xe3, 0x8d, 0x07, 0x94, 0x00, 0x85, 0x07, 0x2b, 0x43, 0x11, 0xc2, 0x67, 0x8e, 0xd7, 0xbd, }; static const unsigned char xdh_wei448_3612_sharedsecret[] = { 0x13, 0xf5, 0x4e, 0x94, 0x80, 0xb6, 0x7c, 0xc5, 0xd5, 0x54, 0x5c, 0xbf, 0x6d, 0xfd, 0x10, 0xd1, 0x10, 0xb0, 0xa3, 0xb2, 0xa7, 0x9d, 0x22, 0x60, 0xd7, 0xd8, 0xf8, 0xf4, 0x9d, 0xb5, 0xd7, 0x82, 0x89, 0xd7, 0xcc, 0xc5, 0x69, 0x62, 0xa4, 0x93, 0x06, 0xaa, 0xe7, 0x40, 0x43, 0x91, 0x88, 0x0a, 0xaf, 0x9b, 0xed, 0xe5, 0xda, 0xb0, 0xfa, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3612 = { .name = "xdh_wei448_3612", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3612_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3612_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3612_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 8 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3613 for XDH, tcId is 9 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3613_peerpubkey[] = { 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3613_privkey[] = { 0x24, 0xba, 0x9d, 0xf5, 0x6e, 0xf0, 0x36, 0xb4, 0xbc, 0xde, 0x7b, 0x01, 0x38, 0xb7, 0x98, 0x3a, 0xe0, 0xfe, 0x3d, 0x2f, 0xd4, 0xb9, 0xd1, 0x3e, 0xf0, 0xb8, 0xb0, 0x99, 0x8c, 0x83, 0x94, 0x36, 0x4d, 0x7d, 0xcb, 0x25, 0xa3, 0x88, 0x5e, 0x57, 0x13, 0x74, 0xf9, 0x16, 0x15, 0x27, 0x54, 0x40, 0xdb, 0x06, 0x45, 0xee, 0x7c, 0x0a, 0x6f, 0xeb, }; static const unsigned char xdh_wei448_3613_sharedsecret[] = { 0xf1, 0xef, 0x91, 0x74, 0x22, 0x2c, 0x42, 0x2c, 0xb3, 0xa6, 0x19, 0x4d, 0xa9, 0x1d, 0xbd, 0xab, 0x62, 0xb0, 0x68, 0x81, 0x79, 0xe7, 0x7f, 0x47, 0x01, 0x9c, 0xc9, 0xeb, 0x7c, 0x38, 0xda, 0x86, 0xf6, 0xf5, 0x1f, 0xc2, 0x50, 0xe8, 0xa4, 0x6d, 0xd4, 0xb3, 0x34, 0x1c, 0xc5, 0xf7, 0x1f, 0x1d, 0x8d, 0xaf, 0x0b, 0x28, 0xe8, 0x73, 0xd8, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3613 = { .name = "xdh_wei448_3613", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3613_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3613_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3613_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 9 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3614 for XDH, tcId is 10 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3614_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3614_privkey[] = { 0xd4, 0xbd, 0xcc, 0x2b, 0xca, 0x46, 0xee, 0x14, 0x49, 0xcc, 0x42, 0xcc, 0x8e, 0x97, 0xbc, 0x40, 0x43, 0xc6, 0xe2, 0xc0, 0xd0, 0x17, 0x77, 0x6d, 0xd6, 0x53, 0xe7, 0xbf, 0x19, 0x02, 0x61, 0x9c, 0xd6, 0x1c, 0x9c, 0x73, 0x9e, 0x09, 0xd5, 0x4c, 0x41, 0x47, 0xf4, 0x6d, 0x19, 0x07, 0x20, 0x96, 0x6f, 0x7d, 0xe1, 0xd9, 0xcf, 0xfb, 0xbd, 0x8e, }; static const unsigned char xdh_wei448_3614_sharedsecret[] = { 0xbb, 0x09, 0xd4, 0x9c, 0xac, 0x99, 0xb9, 0x3b, 0x07, 0x1a, 0x19, 0xe6, 0xac, 0xa0, 0x6d, 0x9c, 0x9c, 0xc4, 0xc5, 0x78, 0x30, 0x4b, 0x3b, 0xe6, 0x48, 0x0d, 0xc4, 0x00, 0x3e, 0xa6, 0xe9, 0x1d, 0xe8, 0x7b, 0x09, 0xfd, 0xfc, 0x31, 0x16, 0x15, 0x1a, 0xe6, 0x6e, 0x98, 0x6a, 0x08, 0x61, 0x3e, 0xe9, 0xea, 0xf1, 0x26, 0x74, 0x30, 0x0e, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3614 = { .name = "xdh_wei448_3614", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3614_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3614_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3614_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 10 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3615 for XDH, tcId is 11 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3615_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3615_privkey[] = { 0x90, 0xd2, 0x68, 0x17, 0x75, 0xbe, 0xc7, 0x4d, 0x89, 0x41, 0x3d, 0xca, 0xfd, 0x01, 0xed, 0x3e, 0x4b, 0x6d, 0x1c, 0x8a, 0xdc, 0x3c, 0x28, 0x88, 0xd6, 0x0c, 0x35, 0xdc, 0x17, 0x46, 0x0f, 0x36, 0x0b, 0xfa, 0xe7, 0xb9, 0x46, 0x47, 0xbc, 0x4e, 0x9a, 0x7a, 0xd9, 0xce, 0x82, 0xab, 0xea, 0xdb, 0x50, 0xa2, 0xf1, 0xa0, 0x73, 0x6e, 0x21, 0xb5, }; static const unsigned char xdh_wei448_3615_sharedsecret[] = { 0xc1, 0xb5, 0x7f, 0x0e, 0xcb, 0xde, 0x85, 0x2e, 0xf4, 0xc1, 0x84, 0xcf, 0x5b, 0xfc, 0xf7, 0x92, 0x44, 0x05, 0x86, 0x80, 0xc5, 0x91, 0x90, 0x79, 0x98, 0x8b, 0x0f, 0xd5, 0x62, 0xb7, 0x47, 0x58, 0x3e, 0x25, 0x82, 0x70, 0xd9, 0x1c, 0x4d, 0xa7, 0xab, 0xfd, 0xc6, 0xc2, 0x77, 0x84, 0xc6, 0x51, 0x74, 0xb7, 0xe6, 0x12, 0x53, 0x40, 0x97, 0x56, }; static const wycheproof_xdh_test xdh_wei448_3615 = { .name = "xdh_wei448_3615", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3615_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3615_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3615_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 11 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3616 for XDH, tcId is 12 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3616_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3616_privkey[] = { 0xfc, 0xad, 0x30, 0x6b, 0xc8, 0xe2, 0x9a, 0x58, 0x62, 0x9f, 0x84, 0xf3, 0x13, 0x23, 0x4d, 0x16, 0x0b, 0x21, 0x59, 0x86, 0x3d, 0xcd, 0x54, 0x01, 0xa2, 0x21, 0xd7, 0x50, 0x09, 0xa4, 0x59, 0x6e, 0x5a, 0x33, 0xf1, 0x29, 0x21, 0xc1, 0x0f, 0x36, 0x70, 0x93, 0x3b, 0xc8, 0x0d, 0xde, 0x3b, 0xba, 0x22, 0x88, 0x1b, 0x61, 0x20, 0x58, 0x21, 0xc4, }; static const unsigned char xdh_wei448_3616_sharedsecret[] = { 0x72, 0xaf, 0x8c, 0x41, 0xcd, 0x06, 0xd6, 0x24, 0x3b, 0x1c, 0xb5, 0x2f, 0xfe, 0x39, 0x96, 0x20, 0x74, 0x40, 0xca, 0xbd, 0x36, 0xd4, 0xb3, 0x4e, 0x64, 0x30, 0x1f, 0x5a, 0xf0, 0x48, 0x90, 0xfb, 0x70, 0xd4, 0x97, 0xf1, 0x91, 0x8e, 0x53, 0x97, 0xd8, 0xee, 0x3f, 0x4b, 0xab, 0x46, 0xcf, 0xdd, 0x5a, 0x07, 0x14, 0x62, 0xb7, 0x14, 0x8a, 0xc8, }; static const wycheproof_xdh_test xdh_wei448_3616 = { .name = "xdh_wei448_3616", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3616_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3616_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3616_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 12 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3617 for XDH, tcId is 13 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3617_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3617_privkey[] = { 0x58, 0xe8, 0x40, 0x8c, 0xbd, 0x2b, 0xed, 0xc1, 0x55, 0x41, 0x5d, 0xb2, 0x82, 0x65, 0x60, 0x82, 0x79, 0x6d, 0xc6, 0xa6, 0xa7, 0x56, 0xe5, 0x91, 0xaa, 0x9c, 0x66, 0x87, 0xf9, 0x9b, 0xd5, 0x69, 0xa0, 0x1f, 0xd8, 0xbd, 0x43, 0x82, 0x36, 0x16, 0x0d, 0x15, 0xce, 0x2c, 0x57, 0xc1, 0xd7, 0x1e, 0xba, 0xa3, 0xf2, 0xda, 0x88, 0x23, 0x38, 0xa3, }; static const unsigned char xdh_wei448_3617_sharedsecret[] = { 0xe3, 0xef, 0x63, 0x36, 0x7c, 0xce, 0xaa, 0x89, 0x2b, 0x9e, 0xbb, 0x00, 0x07, 0x2a, 0x92, 0x29, 0x6d, 0xdd, 0x27, 0xa0, 0xc6, 0x62, 0xe9, 0x11, 0xdf, 0x2b, 0xf0, 0x4f, 0xdf, 0xbd, 0x2a, 0x20, 0xd1, 0x08, 0x55, 0xb9, 0x44, 0x2c, 0x0d, 0xf4, 0xfb, 0xa8, 0x3e, 0x3f, 0x95, 0xe2, 0xdd, 0x04, 0xd9, 0xc6, 0xd6, 0xee, 0x69, 0x4e, 0xad, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_3617 = { .name = "xdh_wei448_3617", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3617_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3617_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3617_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 13 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3618 for XDH, tcId is 14 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3618_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3618_privkey[] = { 0xd0, 0xcb, 0x88, 0x52, 0x80, 0xa8, 0xb0, 0xcf, 0x7c, 0x0d, 0xd9, 0xf2, 0x76, 0x77, 0x85, 0x8d, 0xb3, 0xeb, 0x2d, 0x16, 0xba, 0x92, 0x1d, 0x99, 0xf1, 0x04, 0xb8, 0xfd, 0x05, 0xd9, 0xff, 0xfd, 0x85, 0x3c, 0xdc, 0x6d, 0x22, 0x66, 0x38, 0x9b, 0x73, 0x7e, 0x8d, 0xfc, 0x29, 0x6a, 0xd0, 0x0b, 0x5a, 0x69, 0xb2, 0xa9, 0xdc, 0xf7, 0x29, 0xd6, }; static const unsigned char xdh_wei448_3618_sharedsecret[] = { 0xe8, 0x74, 0xdd, 0xd0, 0x3a, 0xda, 0xa8, 0x86, 0x9b, 0xb8, 0x5e, 0x9d, 0x56, 0xee, 0xac, 0xd7, 0xdf, 0x00, 0x87, 0xae, 0x3a, 0xa0, 0x0d, 0x9d, 0xda, 0xea, 0xe4, 0x0c, 0x87, 0xa6, 0x4d, 0x16, 0x26, 0xa3, 0x34, 0x3b, 0x3e, 0x49, 0xfc, 0x87, 0xb2, 0x77, 0x42, 0xf7, 0xd5, 0x48, 0x72, 0x48, 0xf1, 0x71, 0xef, 0xd8, 0x18, 0x23, 0xbb, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3618 = { .name = "xdh_wei448_3618", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3618_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3618_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3618_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 14 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3619 for XDH, tcId is 15 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3619_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3619_privkey[] = { 0x40, 0x67, 0x0a, 0x1e, 0xfa, 0x70, 0x72, 0xa6, 0x5c, 0x27, 0x9f, 0x96, 0x18, 0x26, 0x3a, 0x9e, 0x26, 0x6f, 0xe1, 0x2d, 0x82, 0xff, 0x53, 0xc2, 0x9b, 0x99, 0xd5, 0xe2, 0x65, 0xe1, 0xfc, 0x7c, 0x32, 0x34, 0x52, 0x27, 0xd6, 0x69, 0x9a, 0x6d, 0x6b, 0x55, 0x17, 0xcf, 0x33, 0xb4, 0x3a, 0xb1, 0x56, 0xee, 0x20, 0xdf, 0x48, 0x78, 0x79, 0x8e, }; static const unsigned char xdh_wei448_3619_sharedsecret[] = { 0xf2, 0x7f, 0x02, 0xb4, 0x52, 0xf9, 0xa5, 0xe9, 0x5f, 0x08, 0x09, 0x2e, 0x7e, 0x40, 0x58, 0xae, 0x56, 0x07, 0x32, 0xa4, 0xff, 0xd5, 0xe4, 0xc4, 0xcc, 0x49, 0x7a, 0xf9, 0xd8, 0xe0, 0xd7, 0x7f, 0x3d, 0x94, 0xd0, 0x7d, 0xea, 0x93, 0x2f, 0x0a, 0x79, 0xfa, 0x63, 0xc8, 0x52, 0xa1, 0xcf, 0x03, 0xb6, 0x0a, 0xb5, 0xa5, 0x20, 0x17, 0x48, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3619 = { .name = "xdh_wei448_3619", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3619_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3619_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3619_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 15 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3620 for XDH, tcId is 16 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3620_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3620_privkey[] = { 0xb8, 0xfe, 0xca, 0xaa, 0x71, 0xe4, 0x2c, 0x55, 0xfa, 0x42, 0xcc, 0xc0, 0x9c, 0x9b, 0xb1, 0xa0, 0x98, 0xc4, 0x1e, 0x98, 0x16, 0x82, 0x46, 0x1b, 0xdc, 0x42, 0x31, 0x6e, 0x54, 0x76, 0xae, 0xae, 0xe8, 0x38, 0x20, 0x42, 0x58, 0xa0, 0x6f, 0x15, 0xde, 0x01, 0x1b, 0xa4, 0x0b, 0x99, 0x62, 0x70, 0x5e, 0x7f, 0x6e, 0x88, 0x9f, 0xe7, 0x1f, 0x80, }; static const unsigned char xdh_wei448_3620_sharedsecret[] = { 0x70, 0xaf, 0x0e, 0xba, 0xe5, 0x66, 0xf3, 0x2b, 0xff, 0x79, 0x7c, 0x1b, 0xab, 0x73, 0xf9, 0x9f, 0x31, 0xbe, 0x5b, 0xf4, 0xbc, 0x76, 0xf0, 0x13, 0xf2, 0x47, 0xc2, 0x5f, 0x3a, 0xea, 0x5a, 0xce, 0x10, 0x22, 0x4f, 0xf0, 0xeb, 0x9d, 0x3c, 0xff, 0xe4, 0xba, 0x1f, 0x98, 0xfd, 0x59, 0xe0, 0x28, 0x63, 0x6b, 0x3c, 0x48, 0x27, 0x75, 0x59, 0xad, }; static const wycheproof_xdh_test xdh_wei448_3620 = { .name = "xdh_wei448_3620", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3620_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3620_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3620_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 16 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3621 for XDH, tcId is 17 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3621_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3621_privkey[] = { 0xc8, 0xaa, 0x85, 0x74, 0x8b, 0x5c, 0xcd, 0x0f, 0x1f, 0x83, 0x4a, 0x37, 0x15, 0x59, 0x2e, 0x52, 0x3c, 0x2e, 0xd6, 0x09, 0xbf, 0xd1, 0x7f, 0x3b, 0x58, 0xed, 0x5a, 0x5f, 0xac, 0xad, 0x74, 0x9a, 0x43, 0x31, 0xdf, 0xb2, 0x4d, 0x8c, 0xf7, 0xd8, 0x20, 0x9b, 0x49, 0x62, 0xc2, 0x70, 0x3c, 0x01, 0xa5, 0xf9, 0x73, 0xb7, 0xc8, 0x2a, 0x3f, 0xec, }; static const unsigned char xdh_wei448_3621_sharedsecret[] = { 0xe4, 0x51, 0x31, 0x64, 0x3f, 0x60, 0x78, 0x81, 0xb9, 0xeb, 0xa1, 0x45, 0xae, 0x79, 0xaa, 0xe1, 0x6e, 0x64, 0xe9, 0x91, 0x29, 0x84, 0x33, 0x84, 0x86, 0x9b, 0xc2, 0xb5, 0xb3, 0xd7, 0xe7, 0x29, 0x3d, 0x89, 0x49, 0xb3, 0xc7, 0x95, 0xfa, 0xf0, 0x9a, 0xe3, 0xf7, 0xdf, 0x9f, 0x8d, 0xeb, 0x31, 0x42, 0x37, 0x3a, 0xd1, 0x70, 0xec, 0x34, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3621 = { .name = "xdh_wei448_3621", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3621_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3621_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3621_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 17 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3622 for XDH, tcId is 18 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3622_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3622_privkey[] = { 0x14, 0x35, 0xf2, 0x60, 0x75, 0x2f, 0xb2, 0x7d, 0xd1, 0xa4, 0x71, 0xac, 0x4a, 0x08, 0xd9, 0x55, 0xc6, 0xe3, 0x93, 0xc8, 0x23, 0xa8, 0x58, 0xdc, 0x1d, 0x62, 0x38, 0x76, 0x68, 0x66, 0xf6, 0x22, 0x2e, 0x75, 0x26, 0xea, 0x4e, 0x51, 0xbf, 0x68, 0x47, 0xc6, 0x27, 0xef, 0x66, 0x28, 0x21, 0x1b, 0xa9, 0xde, 0xa3, 0x92, 0x2d, 0x70, 0x2c, 0xca, }; static const unsigned char xdh_wei448_3622_sharedsecret[] = { 0x0f, 0xcc, 0xdf, 0x4e, 0xd6, 0x30, 0xda, 0x45, 0x4c, 0x2a, 0xb0, 0xd6, 0xb4, 0x01, 0xb5, 0x65, 0xbd, 0xb1, 0x6b, 0x65, 0x5f, 0xb7, 0xc7, 0x60, 0x10, 0xf2, 0x50, 0xeb, 0x22, 0xcb, 0x3c, 0x92, 0xec, 0x9d, 0x96, 0x83, 0x59, 0xf9, 0x7a, 0x18, 0xe8, 0x55, 0xf6, 0x3f, 0x8d, 0x66, 0x2c, 0xcf, 0x66, 0xe3, 0x34, 0x90, 0x8c, 0x12, 0xfc, 0xa2, }; static const wycheproof_xdh_test xdh_wei448_3622 = { .name = "xdh_wei448_3622", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3622_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3622_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3622_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 18 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3623 for XDH, tcId is 19 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3623_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, }; static const unsigned char xdh_wei448_3623_privkey[] = { 0x24, 0x84, 0xb1, 0xcc, 0xc0, 0x83, 0x04, 0x16, 0xc9, 0xc2, 0x32, 0xe1, 0xc9, 0xe3, 0xac, 0x76, 0x9d, 0x15, 0x58, 0x3b, 0x28, 0x2e, 0xca, 0x13, 0x05, 0x66, 0x49, 0x47, 0x6c, 0x69, 0x51, 0x05, 0x68, 0xe5, 0x0b, 0xa1, 0x5b, 0xb0, 0x48, 0xf4, 0xe4, 0x4a, 0x88, 0xae, 0xb7, 0x79, 0x9a, 0xe7, 0xac, 0xdb, 0x6b, 0x0b, 0x7d, 0xf7, 0x7c, 0xec, }; static const unsigned char xdh_wei448_3623_sharedsecret[] = { 0x70, 0xed, 0x1d, 0x31, 0x76, 0xe3, 0x08, 0xe5, 0x22, 0x1f, 0xc3, 0xf4, 0x16, 0xa8, 0x71, 0x27, 0xa3, 0x97, 0xec, 0x8a, 0x75, 0x56, 0x9c, 0xbf, 0x75, 0x59, 0x04, 0x03, 0x0e, 0xd3, 0xce, 0x20, 0x2b, 0x93, 0xbd, 0xd7, 0xa6, 0xdd, 0xab, 0x32, 0x74, 0x6c, 0xd8, 0x0e, 0x30, 0xf5, 0xb3, 0xcd, 0x50, 0x6d, 0x42, 0xaf, 0x42, 0x7f, 0x1f, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3623 = { .name = "xdh_wei448_3623", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3623_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3623_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3623_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 19 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3624 for XDH, tcId is 20 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3624_peerpubkey[] = { 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x1f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x07, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x03, 0x00, }; static const unsigned char xdh_wei448_3624_privkey[] = { 0x24, 0xcc, 0x1c, 0x2b, 0xd0, 0x33, 0x21, 0x21, 0x0d, 0x80, 0xe7, 0xba, 0x12, 0xba, 0xc1, 0x85, 0x1c, 0xff, 0xaf, 0xcd, 0x78, 0x73, 0x83, 0xd7, 0x38, 0x3f, 0xaf, 0xf6, 0x69, 0xd5, 0x1e, 0x07, 0x55, 0x4d, 0x00, 0x6a, 0xf1, 0x4b, 0xaa, 0xe0, 0x81, 0x8e, 0x7d, 0x27, 0x04, 0x45, 0x67, 0x0e, 0x53, 0xf2, 0x2b, 0x7e, 0xff, 0xbf, 0xa6, 0x89, }; static const unsigned char xdh_wei448_3624_sharedsecret[] = { 0xef, 0xe4, 0xb3, 0x2d, 0x8c, 0xcf, 0x5f, 0x42, 0xe4, 0x8d, 0x7c, 0xfe, 0x38, 0x17, 0xa7, 0xb8, 0x2a, 0x13, 0xa7, 0xb7, 0x68, 0x05, 0x39, 0x4d, 0x77, 0x75, 0xc6, 0x49, 0xa8, 0x88, 0x0c, 0x23, 0x79, 0xed, 0x54, 0x6f, 0x37, 0xc0, 0xeb, 0xd9, 0xeb, 0xb5, 0xdc, 0xb0, 0xd2, 0x60, 0xb7, 0xc3, 0xd2, 0x41, 0x70, 0x37, 0x97, 0xb1, 0xf5, 0x4a, }; static const wycheproof_xdh_test xdh_wei448_3624 = { .name = "xdh_wei448_3624", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3624_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3624_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3624_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 20 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3625 for XDH, tcId is 21 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3625_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, }; static const unsigned char xdh_wei448_3625_privkey[] = { 0xbc, 0x08, 0xf8, 0x2f, 0xf3, 0xbb, 0xbb, 0x21, 0x6d, 0x5a, 0x4a, 0x25, 0x38, 0x60, 0xb6, 0x11, 0xe5, 0xff, 0x8b, 0xf7, 0x55, 0x99, 0x6b, 0xec, 0x7f, 0x77, 0xa4, 0xed, 0xb3, 0x46, 0x60, 0xb8, 0xd3, 0x50, 0xf2, 0x50, 0x1f, 0xc1, 0xd9, 0x13, 0x70, 0x41, 0x56, 0xaa, 0x26, 0xde, 0xcf, 0xc3, 0x59, 0xd1, 0x05, 0x3b, 0x18, 0xe0, 0x04, 0xec, }; static const unsigned char xdh_wei448_3625_sharedsecret[] = { 0x15, 0x65, 0x07, 0xca, 0x71, 0x79, 0x8a, 0x7f, 0xaf, 0xc5, 0x76, 0xef, 0x43, 0x67, 0x6a, 0xbf, 0x43, 0x81, 0x5b, 0xc7, 0x33, 0x2f, 0x8b, 0xa6, 0xee, 0xfc, 0x07, 0x27, 0xc6, 0x5d, 0x77, 0xd2, 0x4c, 0xcb, 0xa2, 0xfa, 0x81, 0x09, 0x3b, 0x85, 0x27, 0xc8, 0x27, 0x4b, 0x6a, 0xd0, 0xfe, 0x94, 0x62, 0xe9, 0x47, 0x4d, 0xf1, 0xbe, 0x3a, 0x49, }; static const wycheproof_xdh_test xdh_wei448_3625 = { .name = "xdh_wei448_3625", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3625_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3625_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3625_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 21 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3626 for XDH, tcId is 22 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3626_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_3626_privkey[] = { 0x8c, 0x37, 0xfb, 0x35, 0xea, 0xc1, 0xdb, 0xda, 0x6a, 0x3b, 0x5b, 0xf4, 0x92, 0xc1, 0xf6, 0x42, 0xc7, 0x61, 0xbe, 0x3a, 0xdf, 0x0a, 0xb7, 0x61, 0x7a, 0x66, 0x00, 0x25, 0x76, 0xc4, 0x5b, 0xba, 0x82, 0x02, 0x97, 0x0b, 0xae, 0x6c, 0x5e, 0x05, 0xf6, 0x45, 0xf5, 0x43, 0x9c, 0xa2, 0xf4, 0x2b, 0x89, 0xda, 0xca, 0xce, 0x1a, 0x5d, 0x0e, 0x82, }; static const unsigned char xdh_wei448_3626_sharedsecret[] = { 0x60, 0xc4, 0x68, 0xdf, 0x97, 0xe2, 0xe4, 0x42, 0x7f, 0x27, 0x42, 0x0c, 0xc6, 0xbc, 0x9e, 0xeb, 0xaa, 0x2b, 0xce, 0xb8, 0x27, 0xeb, 0x55, 0xa1, 0x87, 0xfc, 0x5c, 0x29, 0x55, 0x5e, 0x72, 0xa6, 0x63, 0x24, 0x3f, 0x6a, 0xf4, 0x09, 0x56, 0x41, 0xd7, 0x2c, 0xae, 0xac, 0xb3, 0x69, 0x72, 0x0e, 0xa1, 0x8c, 0xad, 0xd6, 0xef, 0xdb, 0xec, 0xe6, }; static const wycheproof_xdh_test xdh_wei448_3626 = { .name = "xdh_wei448_3626", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3626_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3626_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3626_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 22 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3627 for XDH, tcId is 23 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3627_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3627_privkey[] = { 0x00, 0x68, 0x4b, 0xfc, 0x8c, 0xb9, 0x03, 0x17, 0x9b, 0x71, 0xc2, 0xc4, 0x52, 0xf2, 0xda, 0x1e, 0x6b, 0x47, 0x6c, 0x04, 0x58, 0xb3, 0x50, 0x35, 0x6d, 0x89, 0xb4, 0x02, 0x40, 0x3d, 0x01, 0x76, 0x02, 0x8b, 0x43, 0xcd, 0xfe, 0xbc, 0x4e, 0xb7, 0x82, 0x3e, 0x8c, 0x65, 0xac, 0x14, 0x45, 0x3f, 0x59, 0x42, 0x67, 0xf7, 0x7c, 0x40, 0xb2, 0x80, }; static const unsigned char xdh_wei448_3627_sharedsecret[] = { 0x7f, 0x6a, 0xbc, 0x32, 0x1d, 0x71, 0x04, 0x95, 0x5b, 0x76, 0x3a, 0xc6, 0x86, 0x81, 0xc2, 0xc4, 0xd1, 0xbb, 0x72, 0x07, 0xce, 0x63, 0x85, 0xf1, 0x8e, 0x60, 0xba, 0x5f, 0x31, 0x00, 0xc1, 0x3c, 0xdc, 0xad, 0xab, 0x23, 0x55, 0x46, 0xa0, 0xc9, 0x2a, 0x47, 0x92, 0x5d, 0xef, 0xb2, 0x69, 0x2e, 0xe2, 0xac, 0xed, 0x42, 0xbb, 0xff, 0x50, 0x8f, }; static const wycheproof_xdh_test xdh_wei448_3627 = { .name = "xdh_wei448_3627", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3627_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3627_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3627_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 23 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3628 for XDH, tcId is 24 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3628_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3628_privkey[] = { 0xe8, 0x76, 0x15, 0x98, 0xba, 0x21, 0x2a, 0x4e, 0x97, 0x24, 0xea, 0xab, 0x2f, 0x3c, 0x22, 0x5b, 0x0c, 0xc0, 0x19, 0x59, 0x5f, 0xa7, 0x02, 0xae, 0x03, 0x61, 0xbf, 0x3d, 0x34, 0x8d, 0x9d, 0x6f, 0x7a, 0x04, 0x35, 0x24, 0x24, 0xa5, 0xfd, 0x30, 0x26, 0x65, 0x0f, 0x2a, 0x04, 0x57, 0x44, 0x99, 0xda, 0xeb, 0xc7, 0x1f, 0x4c, 0x6d, 0x0f, 0xd9, }; static const unsigned char xdh_wei448_3628_sharedsecret[] = { 0x25, 0x21, 0xc2, 0x83, 0x65, 0x13, 0x96, 0xfb, 0x03, 0xbf, 0x07, 0x4e, 0x3c, 0xe6, 0xd0, 0x8d, 0x7b, 0x39, 0x3d, 0xe5, 0xfa, 0x85, 0xe9, 0xac, 0x63, 0x3c, 0xef, 0x32, 0x8a, 0xc5, 0x45, 0x76, 0xf6, 0x00, 0x5f, 0x34, 0xc7, 0x95, 0x42, 0x5c, 0x56, 0xdb, 0x62, 0xe8, 0xce, 0xdd, 0xf8, 0x07, 0xd6, 0x8e, 0x37, 0x64, 0x6a, 0xfb, 0x11, 0x84, }; static const wycheproof_xdh_test xdh_wei448_3628 = { .name = "xdh_wei448_3628", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3628_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3628_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3628_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 24 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3629 for XDH, tcId is 25 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3629_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, }; static const unsigned char xdh_wei448_3629_privkey[] = { 0x78, 0xd4, 0x03, 0x21, 0xd4, 0xb0, 0xdc, 0x6a, 0x7c, 0x86, 0xdf, 0x13, 0xb5, 0x2e, 0x44, 0x4c, 0x87, 0x27, 0xa6, 0xd3, 0xbb, 0x4b, 0xe1, 0x6b, 0xb9, 0x15, 0xca, 0xb5, 0x22, 0xac, 0x8a, 0x94, 0x29, 0x78, 0xf7, 0x6e, 0x7d, 0xd6, 0xf9, 0xf4, 0x43, 0x9f, 0x5e, 0xf5, 0x35, 0xe6, 0xf4, 0x3e, 0x71, 0x1b, 0x69, 0x2a, 0xcc, 0x6e, 0xa4, 0xa3, }; static const unsigned char xdh_wei448_3629_sharedsecret[] = { 0x45, 0xd7, 0xf9, 0x32, 0x20, 0x1b, 0x24, 0xe1, 0x9b, 0x08, 0x60, 0x80, 0xb5, 0x77, 0xdc, 0x42, 0x80, 0x82, 0x59, 0x75, 0xbf, 0x3f, 0x12, 0x25, 0xbd, 0xde, 0x17, 0x61, 0x3b, 0xfb, 0x39, 0x83, 0x21, 0x53, 0x57, 0xdc, 0x1b, 0x9c, 0x77, 0xa7, 0xe8, 0xba, 0x1d, 0x3d, 0xb5, 0x8f, 0x37, 0x6a, 0x1c, 0x8c, 0x63, 0xd1, 0x30, 0x8c, 0xd9, 0xb0, }; static const wycheproof_xdh_test xdh_wei448_3629 = { .name = "xdh_wei448_3629", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3629_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3629_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3629_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 25 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3630 for XDH, tcId is 26 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3630_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3630_privkey[] = { 0x50, 0xad, 0x85, 0x6c, 0xc0, 0x03, 0xe8, 0xeb, 0xee, 0xf9, 0x91, 0x3f, 0x67, 0xdd, 0xc4, 0xa4, 0x6a, 0x93, 0x47, 0xd0, 0x92, 0x85, 0x65, 0xb9, 0xd7, 0xf8, 0xb1, 0xc0, 0xf9, 0xdc, 0x31, 0xbc, 0xb7, 0x67, 0x97, 0x48, 0x6e, 0x05, 0x33, 0x19, 0xd1, 0x49, 0xf4, 0xc7, 0x94, 0x21, 0xef, 0x5e, 0xc7, 0xd1, 0x89, 0x5f, 0xd3, 0x2f, 0x3a, 0xd5, }; static const unsigned char xdh_wei448_3630_sharedsecret[] = { 0x15, 0xac, 0x85, 0xa8, 0x8f, 0x14, 0x08, 0x1d, 0x6a, 0x59, 0x19, 0xbf, 0x8d, 0x06, 0xa8, 0xc6, 0xbd, 0xcf, 0xfb, 0xba, 0x97, 0x0c, 0x54, 0x7b, 0x26, 0x37, 0x7b, 0x23, 0x8d, 0x64, 0x82, 0xef, 0xf5, 0x8d, 0x36, 0xe0, 0xb8, 0x7a, 0x00, 0xce, 0xf9, 0xb8, 0x0b, 0xe0, 0x1e, 0x69, 0xae, 0x0d, 0x6c, 0x12, 0xed, 0xdd, 0xaa, 0xbf, 0x7c, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_3630 = { .name = "xdh_wei448_3630", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3630_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3630_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3630_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 26 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3631 for XDH, tcId is 27 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3631_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3631_privkey[] = { 0xa4, 0xee, 0xec, 0xbd, 0x9d, 0xdc, 0xe4, 0x81, 0x22, 0x2c, 0x22, 0xf0, 0x53, 0xa4, 0xbe, 0x30, 0xcf, 0xa1, 0x06, 0x8b, 0x57, 0x90, 0xd2, 0xbd, 0xb7, 0x88, 0x38, 0x2c, 0xb9, 0x66, 0xce, 0xfb, 0xb6, 0x06, 0xce, 0xe4, 0x7f, 0xc2, 0x36, 0xc3, 0x71, 0x3d, 0x9f, 0x8e, 0x65, 0xad, 0x04, 0x4e, 0x10, 0xf8, 0x9f, 0x64, 0x1c, 0xc3, 0x1c, 0xaa, }; static const unsigned char xdh_wei448_3631_sharedsecret[] = { 0x48, 0xb9, 0xaa, 0x64, 0xce, 0x34, 0x00, 0x6b, 0x2d, 0xb0, 0x92, 0x82, 0x34, 0xe8, 0x86, 0x36, 0x8e, 0xce, 0xb9, 0x2a, 0x3c, 0x46, 0x7f, 0xaa, 0x15, 0x5d, 0x5f, 0x9d, 0xe5, 0x3c, 0xa3, 0x5a, 0xd0, 0xc3, 0x83, 0xb5, 0xdc, 0xd9, 0xa1, 0xf8, 0x05, 0x1d, 0x80, 0x36, 0x5c, 0x6c, 0xf5, 0x2e, 0x54, 0x35, 0x3e, 0x2b, 0xca, 0x70, 0x60, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_3631 = { .name = "xdh_wei448_3631", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3631_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3631_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3631_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 27 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3632 for XDH, tcId is 28 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3632_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3632_privkey[] = { 0x54, 0x10, 0x73, 0x5b, 0xd9, 0x5c, 0xd0, 0x64, 0x0f, 0xc1, 0xe2, 0xe1, 0x1a, 0x02, 0x88, 0x03, 0xf1, 0xcb, 0x43, 0x44, 0xf4, 0xef, 0xee, 0x75, 0xae, 0x0b, 0x9e, 0xb9, 0xdb, 0x56, 0x27, 0xd6, 0xe2, 0xa4, 0xb6, 0xdb, 0xad, 0x4a, 0xf3, 0xfe, 0xe9, 0x86, 0xcc, 0xe9, 0x34, 0xbe, 0xd6, 0x0a, 0x0e, 0x86, 0x98, 0x20, 0x46, 0x38, 0xb5, 0xa9, }; static const unsigned char xdh_wei448_3632_sharedsecret[] = { 0x89, 0x51, 0xb4, 0xfc, 0x36, 0x2c, 0xcd, 0x60, 0xcb, 0x56, 0x0f, 0xde, 0x65, 0xfa, 0x12, 0x61, 0x58, 0xa9, 0x72, 0x7a, 0x3d, 0x57, 0x7c, 0x50, 0x75, 0x66, 0xfa, 0x5b, 0x4a, 0x79, 0xc2, 0xac, 0x6b, 0xfd, 0x6c, 0x69, 0xde, 0xfe, 0xb9, 0xeb, 0x29, 0x83, 0x0c, 0xc4, 0xaa, 0xf6, 0x42, 0x7f, 0x2a, 0xe6, 0x6b, 0x2c, 0xd3, 0x20, 0x15, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3632 = { .name = "xdh_wei448_3632", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3632_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3632_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3632_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 28 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3633 for XDH, tcId is 29 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3633_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3633_privkey[] = { 0x00, 0xfc, 0x88, 0x42, 0xa4, 0x72, 0x19, 0xed, 0x8f, 0x3e, 0xfa, 0xe3, 0x98, 0x21, 0x40, 0xf4, 0x30, 0x33, 0xdf, 0x74, 0x88, 0xf9, 0x48, 0xeb, 0x2e, 0x24, 0x6a, 0x71, 0xa4, 0x55, 0xfd, 0xec, 0x2e, 0xe0, 0x46, 0x14, 0xe9, 0xab, 0x1c, 0xf4, 0xbb, 0xa4, 0x9e, 0x11, 0xc7, 0xc8, 0x59, 0x1b, 0xb6, 0x7f, 0x9a, 0x93, 0x41, 0x8d, 0x77, 0xd1, }; static const unsigned char xdh_wei448_3633_sharedsecret[] = { 0x8c, 0x3b, 0xd6, 0xc5, 0xe7, 0xe2, 0x02, 0x1e, 0x52, 0x90, 0x9a, 0x8c, 0xbe, 0xbc, 0x44, 0xba, 0x52, 0x3b, 0xdf, 0xa3, 0xac, 0x6c, 0xf8, 0xc7, 0xe3, 0x58, 0xc5, 0x8f, 0x55, 0x15, 0x07, 0x78, 0x41, 0x1e, 0xe0, 0x1c, 0x0b, 0x08, 0xbd, 0x52, 0xac, 0x34, 0xf8, 0xa1, 0x2c, 0xf8, 0xb2, 0x7f, 0xbd, 0x2d, 0xab, 0xa7, 0x37, 0x6f, 0x40, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3633 = { .name = "xdh_wei448_3633", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3633_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3633_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3633_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 29 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3634 for XDH, tcId is 30 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3634_peerpubkey[] = { 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3634_privkey[] = { 0xcc, 0x37, 0xe2, 0xf2, 0x8b, 0xca, 0x03, 0x3c, 0x05, 0x54, 0xa2, 0x52, 0xa2, 0x31, 0x27, 0xd8, 0xc4, 0x4b, 0xd5, 0x91, 0x1a, 0x96, 0xfd, 0x99, 0x0e, 0xcf, 0x72, 0xbf, 0xf3, 0x4c, 0x47, 0x34, 0x71, 0xd7, 0x2c, 0x61, 0xa7, 0xa5, 0x0f, 0x8d, 0x7b, 0xdc, 0x34, 0x34, 0x1a, 0x63, 0xb8, 0xe5, 0xfc, 0x8c, 0xb1, 0x41, 0x28, 0xac, 0xf7, 0x87, }; static const unsigned char xdh_wei448_3634_sharedsecret[] = { 0xde, 0x4e, 0xee, 0xaf, 0xf2, 0xda, 0x2b, 0x47, 0x02, 0x33, 0x42, 0x24, 0xc8, 0x9d, 0xca, 0xd7, 0x8c, 0x98, 0xdc, 0x41, 0xb5, 0xf5, 0x13, 0x67, 0x74, 0xfb, 0xd2, 0x07, 0x67, 0xf5, 0x12, 0x91, 0x2e, 0x1f, 0xf9, 0xa7, 0xed, 0x2d, 0x96, 0xbe, 0x6f, 0x45, 0x2e, 0x8b, 0xcc, 0xac, 0x0b, 0x35, 0x73, 0xc3, 0xd8, 0x0b, 0x78, 0xc6, 0x94, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3634 = { .name = "xdh_wei448_3634", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3634_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3634_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3634_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 30 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3635 for XDH, tcId is 31 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3635_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3635_privkey[] = { 0xd4, 0x9e, 0xe2, 0x78, 0xca, 0xc7, 0x06, 0x42, 0x8b, 0x35, 0x1a, 0x4a, 0x23, 0xd9, 0x11, 0x88, 0xea, 0xf5, 0x5b, 0x5f, 0xe2, 0xba, 0x20, 0xa9, 0xfd, 0x55, 0xb0, 0x36, 0x87, 0xf0, 0xe8, 0xb4, 0x77, 0x13, 0x16, 0xb1, 0xd1, 0x41, 0x0c, 0x8b, 0x2b, 0xf3, 0x1b, 0x21, 0x4f, 0x61, 0x5a, 0x77, 0x3e, 0xae, 0xda, 0x9b, 0x4a, 0xea, 0x59, 0xe2, }; static const unsigned char xdh_wei448_3635_sharedsecret[] = { 0x05, 0x2f, 0x87, 0x17, 0x48, 0xa1, 0xad, 0x50, 0x5a, 0x52, 0x17, 0xe0, 0x60, 0x59, 0x95, 0x5d, 0x2d, 0x1e, 0x90, 0x98, 0x9d, 0xbd, 0xdf, 0x07, 0x1d, 0x36, 0xef, 0xbf, 0x94, 0x20, 0xa5, 0x36, 0x3f, 0x87, 0x67, 0x1d, 0xeb, 0x9e, 0x44, 0x1b, 0xb2, 0xb0, 0x5d, 0x2f, 0xdb, 0xd2, 0xc2, 0x81, 0x1f, 0xbc, 0xe5, 0x84, 0x23, 0x73, 0x72, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_3635 = { .name = "xdh_wei448_3635", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3635_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3635_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3635_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key on twist, tcId is 31 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3636 for XDH, tcId is 32 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3636_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3636_privkey[] = { 0x04, 0xf0, 0x46, 0x38, 0xd5, 0x65, 0xbe, 0xa8, 0x3a, 0xc3, 0x77, 0x03, 0x51, 0x0d, 0x64, 0x75, 0x68, 0xdb, 0xac, 0x58, 0x21, 0x88, 0x13, 0x74, 0x8a, 0x22, 0x74, 0x94, 0x03, 0x8f, 0x2b, 0xb8, 0x11, 0xd4, 0x78, 0x05, 0xbc, 0xdf, 0x04, 0xa2, 0xac, 0x58, 0x5a, 0xda, 0x7f, 0x2f, 0x23, 0x38, 0x9b, 0xfd, 0x46, 0x58, 0xf9, 0xdd, 0xd4, 0xde, }; static const unsigned char xdh_wei448_3636_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3636 = { .name = "xdh_wei448_3636", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3636_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3636_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3636_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 0, tcId is 32 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3637 for XDH, tcId is 33 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3637_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3637_privkey[] = { 0x28, 0x1f, 0x41, 0xa8, 0xa8, 0x53, 0x44, 0x1f, 0x1d, 0x50, 0x14, 0xbc, 0x6c, 0x61, 0x6e, 0x56, 0x4f, 0xce, 0x43, 0x72, 0xac, 0x22, 0x16, 0x81, 0x4f, 0x23, 0x2e, 0x89, 0x72, 0xb6, 0x1c, 0x7e, 0x61, 0x93, 0x0e, 0xb9, 0x45, 0x0b, 0x50, 0x70, 0xea, 0xe1, 0xc6, 0x70, 0x47, 0x56, 0x85, 0x54, 0x1f, 0x04, 0x76, 0x21, 0x7e, 0x48, 0x18, 0xcf, }; static const unsigned char xdh_wei448_3637_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3637 = { .name = "xdh_wei448_3637", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3637_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3637_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3637_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 1, tcId is 33 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3638 for XDH, tcId is 34 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3638_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3638_privkey[] = { 0x28, 0x11, 0x0d, 0xeb, 0xb1, 0x24, 0x2a, 0x86, 0x94, 0x07, 0xf2, 0x1a, 0x1a, 0x07, 0x61, 0x63, 0x26, 0xe2, 0xbb, 0xa0, 0xae, 0x3d, 0xdc, 0xa3, 0xd4, 0x3e, 0xdd, 0xe9, 0xf3, 0xe7, 0xb7, 0x99, 0x04, 0x5f, 0x9a, 0xc3, 0x79, 0x3d, 0x4a, 0x92, 0x77, 0xda, 0xde, 0xad, 0xc4, 0x1b, 0xec, 0x02, 0x90, 0xf8, 0x1f, 0x74, 0x4f, 0x73, 0x77, 0xdf, }; static const unsigned char xdh_wei448_3638_sharedsecret[] = { 0x02, 0x1e, 0xa3, 0xe5, 0x8b, 0xb9, 0xff, 0x27, 0xa1, 0x10, 0x90, 0x79, 0xa8, 0xc5, 0xa0, 0x5b, 0xb0, 0x97, 0x60, 0x86, 0x4b, 0xca, 0x16, 0x50, 0xed, 0x3d, 0x82, 0x56, 0x40, 0xc5, 0x13, 0x4d, 0x06, 0x31, 0xf5, 0x29, 0xd7, 0x95, 0x10, 0xf0, 0x62, 0x88, 0x3b, 0x12, 0x17, 0xbe, 0xda, 0x88, 0xf5, 0x28, 0x01, 0xfd, 0x5b, 0xfa, 0xe9, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_3638 = { .name = "xdh_wei448_3638", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3638_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3638_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3638_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 34 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3639 for XDH, tcId is 35 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3639_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3639_privkey[] = { 0xcc, 0xd0, 0xea, 0xbb, 0x08, 0x91, 0x13, 0x6d, 0x7f, 0x96, 0x3f, 0x52, 0x80, 0xab, 0x98, 0xf0, 0xef, 0xc6, 0xb8, 0x29, 0x02, 0xbc, 0x4f, 0x4f, 0xe5, 0x9d, 0x57, 0xa9, 0x14, 0xe3, 0xc2, 0x90, 0x36, 0xfd, 0x9a, 0x44, 0x2b, 0xa5, 0x26, 0xb5, 0xcd, 0xcd, 0xf2, 0x82, 0x16, 0x15, 0x3e, 0x63, 0x6c, 0x10, 0x67, 0x7a, 0xca, 0xb6, 0xbd, 0xea, }; static const unsigned char xdh_wei448_3639_sharedsecret[] = { 0x0d, 0xfa, 0xe3, 0xc2, 0x23, 0x85, 0xee, 0x38, 0x4f, 0x52, 0x06, 0x0f, 0x0e, 0x90, 0x05, 0xce, 0xfb, 0x95, 0x0f, 0x7a, 0x80, 0x74, 0x02, 0x16, 0xde, 0xb9, 0x2a, 0xc4, 0xc4, 0xf4, 0xb4, 0x9c, 0x32, 0x84, 0xbe, 0x16, 0xe9, 0xdd, 0x89, 0x37, 0x8d, 0xec, 0xba, 0x9a, 0x73, 0x7d, 0xe8, 0x4a, 0x54, 0x26, 0x93, 0x5f, 0x1b, 0x6a, 0xe4, 0x63, }; static const wycheproof_xdh_test xdh_wei448_3639 = { .name = "xdh_wei448_3639", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3639_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3639_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3639_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 35 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3640 for XDH, tcId is 36 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3640_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3640_privkey[] = { 0x70, 0x14, 0x9f, 0xf0, 0x91, 0x59, 0x12, 0x72, 0xda, 0x90, 0xb2, 0xca, 0x92, 0x06, 0xe0, 0x6b, 0x8e, 0x0f, 0x97, 0x0d, 0xf1, 0x91, 0x54, 0xdb, 0xa9, 0x38, 0x6f, 0x7f, 0x16, 0xc5, 0x07, 0x31, 0xd6, 0x4f, 0x82, 0xe6, 0xa1, 0x70, 0xb1, 0x42, 0xa4, 0xe3, 0x4f, 0x31, 0xfd, 0x77, 0x68, 0xfc, 0xb8, 0x90, 0x29, 0x25, 0xe7, 0xd1, 0xe2, 0x9a, }; static const unsigned char xdh_wei448_3640_sharedsecret[] = { 0x29, 0xde, 0x99, 0x9f, 0x61, 0xfc, 0x03, 0x3d, 0x34, 0x56, 0x74, 0xa0, 0x6d, 0x98, 0xae, 0xc5, 0xc1, 0xa2, 0x56, 0x1d, 0xaa, 0xbe, 0x66, 0xb7, 0x94, 0x9a, 0xc6, 0x97, 0x36, 0xfe, 0x77, 0x0e, 0xcc, 0x46, 0xa7, 0x8e, 0x1c, 0x44, 0x7e, 0x54, 0xa8, 0xc2, 0xee, 0x85, 0x29, 0xc6, 0x6e, 0xcd, 0xd5, 0x07, 0x5c, 0xbf, 0x10, 0xb3, 0xe2, 0xbf, }; static const wycheproof_xdh_test xdh_wei448_3640 = { .name = "xdh_wei448_3640", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3640_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3640_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3640_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 36 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3641 for XDH, tcId is 37 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3641_peerpubkey[] = { 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3641_privkey[] = { 0x84, 0xee, 0x1a, 0x35, 0xe5, 0x3e, 0xdb, 0xd4, 0x25, 0xe5, 0xb7, 0xd1, 0x0b, 0xaa, 0xbd, 0xec, 0xb2, 0x72, 0x03, 0x04, 0x81, 0xfe, 0x15, 0x12, 0xad, 0xa1, 0xa2, 0xec, 0x9f, 0xa9, 0x91, 0x5a, 0xe7, 0xaa, 0xce, 0x6a, 0x37, 0xc6, 0x85, 0x91, 0xd3, 0x9e, 0x15, 0x99, 0x5c, 0x4e, 0xf5, 0xeb, 0xd3, 0x56, 0x1c, 0x02, 0xf7, 0x2d, 0xda, 0xc1, }; static const unsigned char xdh_wei448_3641_sharedsecret[] = { 0x30, 0x73, 0xe3, 0x73, 0xf1, 0xbf, 0x65, 0x3b, 0xb9, 0xde, 0x54, 0xa2, 0x0b, 0xa1, 0xc0, 0x4e, 0x95, 0x06, 0x8a, 0x5f, 0x3d, 0x56, 0x3c, 0x71, 0x55, 0x2d, 0xd6, 0xb3, 0xf0, 0x51, 0xae, 0xfe, 0xbf, 0x25, 0x65, 0x3c, 0xf3, 0x07, 0x2d, 0x7f, 0x83, 0x01, 0xb6, 0x81, 0x80, 0xb8, 0x47, 0x33, 0x98, 0xde, 0xb9, 0x35, 0x09, 0xa8, 0xaa, 0x34, }; static const wycheproof_xdh_test xdh_wei448_3641 = { .name = "xdh_wei448_3641", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3641_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3641_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3641_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 37 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3642 for XDH, tcId is 38 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3642_peerpubkey[] = { 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3642_privkey[] = { 0xb8, 0x44, 0xa9, 0xa1, 0x84, 0x3e, 0x72, 0xb7, 0x66, 0x52, 0xa7, 0x0d, 0x48, 0x00, 0x43, 0xa8, 0xf3, 0x7e, 0x92, 0x80, 0x14, 0xaa, 0x2d, 0xef, 0xa9, 0xc9, 0xdf, 0x58, 0x20, 0xeb, 0x39, 0x9d, 0x47, 0x1d, 0xfa, 0x32, 0x15, 0xd9, 0x60, 0x55, 0xb3, 0xc7, 0xd0, 0xf4, 0xea, 0x49, 0xf8, 0xab, 0x02, 0x8d, 0x6a, 0x6e, 0x31, 0x94, 0x51, 0xfb, }; static const unsigned char xdh_wei448_3642_sharedsecret[] = { 0xe5, 0xb5, 0xad, 0x45, 0xf5, 0xd0, 0x98, 0x07, 0x2b, 0xfd, 0xe0, 0x14, 0x66, 0xe4, 0xec, 0xaa, 0xcc, 0x89, 0xa8, 0x4a, 0xde, 0x7c, 0xb2, 0xc4, 0xc4, 0x0a, 0x9f, 0x62, 0x0b, 0x8b, 0x91, 0x17, 0x5d, 0xeb, 0xc5, 0xdb, 0x8d, 0xf1, 0x8a, 0x38, 0x26, 0x28, 0x2c, 0x46, 0xf9, 0x17, 0x6f, 0x6d, 0xa7, 0xc8, 0x26, 0xcf, 0x9c, 0x8d, 0xc8, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_3642 = { .name = "xdh_wei448_3642", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3642_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3642_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3642_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 38 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3643 for XDH, tcId is 39 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3643_peerpubkey[] = { 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3643_privkey[] = { 0x44, 0xb1, 0x70, 0xa0, 0x9b, 0xc5, 0xaf, 0x3d, 0x31, 0xc5, 0x86, 0x43, 0x27, 0xe1, 0xf2, 0xa7, 0x4e, 0x26, 0xda, 0x7b, 0x3f, 0x39, 0xfa, 0xa3, 0xd2, 0xd3, 0x1c, 0x49, 0x1c, 0xbd, 0x39, 0x27, 0x18, 0x59, 0xb4, 0xa6, 0x3a, 0x31, 0x68, 0x26, 0x50, 0x7b, 0x1d, 0xb8, 0xc7, 0x01, 0x70, 0x9f, 0xd0, 0xff, 0xe3, 0xeb, 0x21, 0xc4, 0x46, 0xbc, }; static const unsigned char xdh_wei448_3643_sharedsecret[] = { 0x26, 0xf3, 0x40, 0xb6, 0xfc, 0xe9, 0xcd, 0xb7, 0x68, 0x07, 0xea, 0xec, 0x48, 0xd3, 0x88, 0x07, 0xd4, 0x0d, 0x13, 0x91, 0x1c, 0x1b, 0xb0, 0x1d, 0x5a, 0x45, 0x2f, 0x8d, 0x35, 0xbe, 0xb8, 0x3e, 0x23, 0x53, 0x1e, 0x83, 0x45, 0xf8, 0xe7, 0xed, 0x5a, 0x19, 0x4c, 0x6b, 0x73, 0x33, 0x60, 0x50, 0x4d, 0x6d, 0xd6, 0xdd, 0x6f, 0x88, 0x09, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3643 = { .name = "xdh_wei448_3643", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3643_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3643_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3643_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 39 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3644 for XDH, tcId is 40 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3644_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3644_privkey[] = { 0xe4, 0x54, 0x5b, 0x1f, 0x96, 0xa5, 0x38, 0xe4, 0x81, 0xc0, 0x2b, 0x5c, 0x70, 0x35, 0x14, 0xaf, 0x5d, 0x02, 0xfa, 0x6d, 0xfc, 0x10, 0x3c, 0x42, 0x3a, 0x5f, 0xc8, 0x05, 0x89, 0x00, 0xa8, 0x50, 0x21, 0xdd, 0x92, 0x42, 0x5d, 0x2f, 0xb3, 0x9a, 0x62, 0xd4, 0xe2, 0x3a, 0xef, 0x1d, 0x51, 0x04, 0xc4, 0xc2, 0xd8, 0x87, 0x12, 0xd3, 0x9e, 0xcd, }; static const unsigned char xdh_wei448_3644_sharedsecret[] = { 0xc9, 0x38, 0x03, 0xd1, 0xab, 0x21, 0xe2, 0x01, 0x66, 0x50, 0x7a, 0x62, 0xfb, 0xb2, 0x1c, 0x4e, 0xe2, 0x03, 0x69, 0x26, 0xad, 0xad, 0x3a, 0x10, 0x4e, 0xe7, 0xc5, 0x22, 0x79, 0xa0, 0xae, 0xfc, 0x71, 0xf7, 0x56, 0xc9, 0x96, 0x98, 0x88, 0xd7, 0xb2, 0x92, 0xab, 0x21, 0x1e, 0xd1, 0x94, 0x1d, 0x30, 0x02, 0xbb, 0x83, 0x5f, 0xf1, 0x49, 0x03, }; static const wycheproof_xdh_test xdh_wei448_3644 = { .name = "xdh_wei448_3644", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3644_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3644_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3644_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 40 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3645 for XDH, tcId is 41 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3645_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3645_privkey[] = { 0x84, 0x2a, 0x93, 0x06, 0xa5, 0x2a, 0x73, 0xba, 0x94, 0x0e, 0x54, 0x5a, 0xa6, 0xa6, 0xfb, 0x43, 0xda, 0x23, 0x7d, 0xfb, 0xd0, 0xd8, 0x20, 0xb0, 0xe4, 0x61, 0x4b, 0x0c, 0x40, 0x8a, 0xf2, 0x4d, 0x9d, 0x24, 0xc0, 0xa7, 0x2f, 0x91, 0x37, 0xfb, 0xd6, 0xb1, 0x6f, 0x02, 0xcc, 0xc9, 0x47, 0x97, 0xea, 0x39, 0x71, 0xab, 0x16, 0x07, 0x3a, 0xbf, }; static const unsigned char xdh_wei448_3645_sharedsecret[] = { 0xb3, 0xda, 0x43, 0xf7, 0x0e, 0x0a, 0x4a, 0x76, 0x50, 0x5b, 0x10, 0x8d, 0x35, 0x31, 0xb1, 0xf0, 0x2e, 0x66, 0xc4, 0xe9, 0x16, 0x34, 0xe6, 0x1b, 0x6e, 0xb1, 0x09, 0x8e, 0x7d, 0x87, 0x88, 0x73, 0xdb, 0xe8, 0x21, 0xef, 0x60, 0xaa, 0xa1, 0xa3, 0xa3, 0x35, 0x00, 0x44, 0x52, 0xb5, 0x7b, 0x19, 0x29, 0xd9, 0x66, 0xaf, 0x3a, 0xda, 0x63, 0xe7, }; static const wycheproof_xdh_test xdh_wei448_3645 = { .name = "xdh_wei448_3645", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3645_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3645_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3645_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 41 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3646 for XDH, tcId is 42 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3646_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3646_privkey[] = { 0x44, 0x7c, 0x4f, 0x94, 0xcb, 0xe7, 0x04, 0xcb, 0xb7, 0xc2, 0x63, 0x22, 0x1e, 0x12, 0x2b, 0x08, 0xc0, 0x60, 0x63, 0xea, 0xa4, 0xca, 0x09, 0x30, 0x68, 0x96, 0x4b, 0xca, 0x51, 0x46, 0x5b, 0xf0, 0xf5, 0xba, 0x52, 0x4b, 0x14, 0x82, 0xce, 0xff, 0x0e, 0x96, 0x0a, 0x1e, 0xd9, 0xf4, 0x8d, 0xcc, 0x30, 0xf1, 0x60, 0x8d, 0x0e, 0x50, 0x1a, 0xd0, }; static const unsigned char xdh_wei448_3646_sharedsecret[] = { 0x06, 0xed, 0xfd, 0xcb, 0x6b, 0x3e, 0xd3, 0x4f, 0x08, 0x1b, 0xb0, 0x01, 0x1f, 0xfb, 0x6d, 0x95, 0x06, 0xf3, 0xc9, 0x0f, 0x1a, 0x44, 0x07, 0x40, 0x69, 0x2a, 0x2f, 0x58, 0x9e, 0x81, 0xe9, 0x29, 0x11, 0x1a, 0x9a, 0xdb, 0x47, 0xe4, 0xbf, 0x30, 0x21, 0x6e, 0xcb, 0xb2, 0x60, 0x55, 0xc1, 0x68, 0x26, 0x4a, 0xe7, 0x95, 0x37, 0x31, 0xfd, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3646 = { .name = "xdh_wei448_3646", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3646_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3646_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3646_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 42 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3647 for XDH, tcId is 43 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3647_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3647_privkey[] = { 0x18, 0x50, 0x43, 0xad, 0x10, 0x8f, 0x93, 0x67, 0x3b, 0x28, 0x32, 0x86, 0x76, 0xde, 0x2a, 0x78, 0xd3, 0x7d, 0x7a, 0xc8, 0xa3, 0xa8, 0xbc, 0x69, 0xed, 0x0b, 0xf0, 0xe6, 0x09, 0xbf, 0x3b, 0x03, 0x5b, 0x55, 0x2f, 0x9d, 0xb7, 0xe9, 0xec, 0xbc, 0x44, 0xa0, 0x4b, 0x79, 0x10, 0xb1, 0x49, 0x36, 0x61, 0xa5, 0x24, 0xf4, 0x6c, 0x3c, 0x22, 0xb7, }; static const unsigned char xdh_wei448_3647_sharedsecret[] = { 0x2a, 0x3c, 0xec, 0x52, 0x06, 0x1b, 0x1a, 0x84, 0x38, 0x3b, 0x68, 0xb8, 0xa4, 0x1c, 0xe1, 0x5e, 0x4f, 0x7e, 0x7c, 0xb1, 0x81, 0x76, 0x2d, 0xc1, 0x8c, 0xe8, 0x66, 0x64, 0x7f, 0x93, 0xbe, 0xca, 0xae, 0x47, 0x66, 0x35, 0x18, 0x8b, 0x62, 0x64, 0x89, 0x28, 0xce, 0x23, 0x13, 0x01, 0x53, 0x98, 0x54, 0x6b, 0x92, 0xf2, 0x91, 0x9f, 0xd9, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3647 = { .name = "xdh_wei448_3647", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3647_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3647_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3647_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 43 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3648 for XDH, tcId is 44 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3648_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3648_privkey[] = { 0x08, 0x35, 0x37, 0x24, 0xfb, 0xc0, 0x39, 0x27, 0xb1, 0x73, 0x59, 0xa8, 0x8c, 0x12, 0x12, 0x76, 0xad, 0x69, 0x79, 0x91, 0xee, 0x89, 0x86, 0x8e, 0x48, 0x89, 0x0e, 0x95, 0xd1, 0xb0, 0x3e, 0x60, 0x3b, 0xcb, 0x51, 0xfd, 0xf6, 0xf2, 0x96, 0xf1, 0xf1, 0xd1, 0x0f, 0x5d, 0xf1, 0x0e, 0x00, 0xb8, 0xa2, 0x5c, 0x98, 0x09, 0xf9, 0xaa, 0x1a, 0x94, }; static const unsigned char xdh_wei448_3648_sharedsecret[] = { 0x30, 0xb1, 0xd9, 0x81, 0x54, 0x76, 0x8a, 0x2a, 0x2a, 0xf5, 0x68, 0xe2, 0xfa, 0x35, 0x77, 0xa0, 0x42, 0xa5, 0xc7, 0xe5, 0xf9, 0xac, 0x91, 0xb1, 0x00, 0x65, 0x5e, 0xa3, 0x32, 0xb4, 0x2d, 0xb5, 0x68, 0x03, 0x4b, 0x15, 0xfd, 0xf7, 0x5c, 0x69, 0x3d, 0x8c, 0x2d, 0x0c, 0x2d, 0xe5, 0x4f, 0xb9, 0xd6, 0xd1, 0x7e, 0xfa, 0x31, 0x6a, 0xa5, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3648 = { .name = "xdh_wei448_3648", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3648_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3648_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3648_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 44 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3649 for XDH, tcId is 45 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3649_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3649_privkey[] = { 0x98, 0xc6, 0xf3, 0x6e, 0x1c, 0xb7, 0x45, 0x28, 0x76, 0x3f, 0x3a, 0xa1, 0x11, 0x96, 0xef, 0x94, 0x49, 0xc6, 0x7b, 0xe3, 0x60, 0xe2, 0x5e, 0x40, 0xab, 0x06, 0xf1, 0xe3, 0x9b, 0x74, 0x26, 0x15, 0xa7, 0xdd, 0xe3, 0xb2, 0x94, 0x15, 0xed, 0x82, 0x7c, 0x68, 0xf0, 0x7d, 0x4a, 0x47, 0xa4, 0xd9, 0x59, 0x5c, 0x40, 0xc7, 0xfc, 0xcb, 0x92, 0xa3, }; static const unsigned char xdh_wei448_3649_sharedsecret[] = { 0xc3, 0xc7, 0xae, 0xc9, 0x77, 0x86, 0xa4, 0x3b, 0x79, 0xf8, 0xa0, 0x53, 0xcf, 0x18, 0x53, 0x63, 0x11, 0x2f, 0x04, 0x41, 0x1a, 0x8e, 0xf3, 0xd3, 0x28, 0x3f, 0x61, 0xee, 0xac, 0x59, 0xa1, 0xf2, 0x91, 0x8e, 0x10, 0xf5, 0x49, 0x37, 0x93, 0x2f, 0x5a, 0xc1, 0xe3, 0xb7, 0x2f, 0xdb, 0xea, 0x57, 0xf3, 0x42, 0x74, 0x59, 0x8b, 0x17, 0xd7, 0x68, }; static const wycheproof_xdh_test xdh_wei448_3649 = { .name = "xdh_wei448_3649", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3649_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3649_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3649_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 45 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3650 for XDH, tcId is 46 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3650_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3650_privkey[] = { 0x80, 0x89, 0xee, 0x7f, 0x5c, 0x2b, 0x0c, 0xe9, 0x4d, 0xe3, 0x62, 0x73, 0x2a, 0x68, 0xe5, 0x9e, 0x59, 0x6b, 0xcc, 0xf6, 0xc3, 0x43, 0x18, 0xe3, 0xa8, 0xe5, 0x6b, 0xb1, 0x3a, 0x9f, 0x2b, 0x33, 0xb8, 0xe6, 0x75, 0x0b, 0x4a, 0x6e, 0x66, 0x21, 0xdc, 0x26, 0xae, 0x8c, 0x5c, 0x62, 0x4a, 0x09, 0x92, 0xc8, 0xf0, 0xd5, 0xb9, 0x10, 0xf1, 0xf0, }; static const unsigned char xdh_wei448_3650_sharedsecret[] = { 0x9d, 0xd0, 0x23, 0xa0, 0x90, 0x68, 0x99, 0xeb, 0x83, 0xde, 0xb1, 0x74, 0x92, 0xe9, 0x38, 0x1f, 0x9d, 0xca, 0x96, 0x20, 0xa1, 0x52, 0x84, 0x96, 0x26, 0xc6, 0x57, 0x26, 0x08, 0x8b, 0x41, 0xfd, 0x28, 0xeb, 0x81, 0x7d, 0x37, 0x26, 0x7c, 0x62, 0xc3, 0x51, 0xba, 0xe2, 0xa9, 0xeb, 0xc6, 0x37, 0xdf, 0x44, 0x90, 0xa2, 0x19, 0x13, 0x4c, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3650 = { .name = "xdh_wei448_3650", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3650_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3650_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3650_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 46 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3651 for XDH, tcId is 47 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3651_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3651_privkey[] = { 0xc4, 0x14, 0x52, 0x2a, 0xb0, 0x3f, 0xfa, 0xcf, 0xf2, 0xc4, 0x3a, 0x81, 0x7b, 0xff, 0x63, 0x8f, 0xdd, 0x24, 0x2f, 0x7d, 0x4b, 0x54, 0x75, 0x74, 0xe5, 0x45, 0xf5, 0x5c, 0x15, 0x94, 0x51, 0xe9, 0x78, 0x14, 0xd7, 0x47, 0x05, 0x0f, 0xd7, 0x76, 0x9b, 0xd4, 0x78, 0x43, 0x4a, 0x01, 0x87, 0x6a, 0x56, 0xe5, 0x53, 0xf6, 0x63, 0x84, 0xa7, 0xcc, }; static const unsigned char xdh_wei448_3651_sharedsecret[] = { 0x55, 0xbb, 0x0c, 0xa5, 0xd7, 0xc5, 0x76, 0xde, 0xc8, 0x3c, 0xf3, 0xdc, 0xfd, 0x98, 0x85, 0xbd, 0xb5, 0x04, 0x10, 0xf9, 0x69, 0x0d, 0xee, 0x34, 0xb0, 0xfc, 0x49, 0x3e, 0xdc, 0x04, 0xb6, 0x2e, 0xd0, 0x31, 0x16, 0x0f, 0x73, 0xc5, 0x51, 0x09, 0x76, 0x0f, 0x65, 0x11, 0x9b, 0xd2, 0xb9, 0x58, 0xa6, 0x56, 0x6b, 0x98, 0xee, 0xc6, 0xf5, 0x41, }; static const wycheproof_xdh_test xdh_wei448_3651 = { .name = "xdh_wei448_3651", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3651_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3651_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3651_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 47 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3652 for XDH, tcId is 48 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3652_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3652_privkey[] = { 0x7c, 0x6e, 0x75, 0xb7, 0xf8, 0x43, 0xfc, 0xba, 0x2c, 0xed, 0x4f, 0xee, 0x6b, 0xb1, 0xf7, 0x4d, 0x44, 0xda, 0x59, 0xfd, 0x79, 0xfa, 0x25, 0x74, 0x3a, 0xd6, 0x40, 0x3e, 0x13, 0x77, 0x73, 0x4c, 0xdc, 0xe9, 0x82, 0x85, 0xe8, 0x20, 0xf2, 0x56, 0xad, 0x6b, 0x76, 0x9d, 0x6b, 0x56, 0x12, 0xbc, 0xf4, 0x2c, 0xf2, 0xb9, 0x79, 0x45, 0xc0, 0xb3, }; static const unsigned char xdh_wei448_3652_sharedsecret[] = { 0x58, 0x6d, 0x61, 0x34, 0x6b, 0x75, 0xcc, 0x07, 0x12, 0xb9, 0xc1, 0x02, 0x9e, 0x97, 0x56, 0x66, 0x8e, 0xed, 0x14, 0xe6, 0x7e, 0x54, 0x3d, 0xef, 0x8f, 0xc5, 0x1c, 0x28, 0x82, 0xdf, 0xed, 0x27, 0xec, 0xef, 0x73, 0x70, 0xa7, 0x28, 0x0f, 0x55, 0x42, 0xda, 0x3d, 0xc5, 0x59, 0xd2, 0x7d, 0x62, 0x8f, 0x85, 0xe9, 0x7e, 0x04, 0x81, 0xba, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3652 = { .name = "xdh_wei448_3652", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3652_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3652_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3652_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 48 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3653 for XDH, tcId is 49 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3653_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3653_privkey[] = { 0x84, 0x09, 0xfd, 0x3e, 0xa1, 0xf0, 0x32, 0xfd, 0x72, 0x9d, 0xbe, 0x2b, 0x2b, 0x79, 0x4d, 0xa5, 0xcb, 0x92, 0xc7, 0xf9, 0xf2, 0x85, 0xb1, 0x00, 0xd9, 0x84, 0x3f, 0xfd, 0x5b, 0x02, 0x45, 0xa7, 0x8b, 0xd2, 0x73, 0xea, 0x2a, 0x8f, 0x04, 0x31, 0x95, 0x02, 0x45, 0x41, 0x2b, 0xd7, 0xee, 0xc3, 0x69, 0x5a, 0x24, 0xcc, 0x73, 0x89, 0x21, 0xab, }; static const unsigned char xdh_wei448_3653_sharedsecret[] = { 0xe8, 0x6f, 0x72, 0xf3, 0x84, 0x7d, 0x87, 0xc1, 0xfd, 0x19, 0xc1, 0xdd, 0xbc, 0xa5, 0xe1, 0x72, 0xb0, 0x58, 0x47, 0xdd, 0x97, 0xd5, 0xc3, 0x11, 0x22, 0x69, 0x8f, 0x36, 0x1f, 0x89, 0xba, 0xbf, 0x7d, 0x5d, 0xaf, 0x5f, 0x23, 0xcc, 0x87, 0x28, 0x5f, 0x49, 0x08, 0x85, 0x98, 0xf8, 0xf1, 0xf3, 0xfd, 0x17, 0x7c, 0xfb, 0x35, 0xed, 0x32, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3653 = { .name = "xdh_wei448_3653", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3653_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3653_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3653_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 49 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3654 for XDH, tcId is 50 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3654_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, }; static const unsigned char xdh_wei448_3654_privkey[] = { 0x24, 0x83, 0x50, 0xb1, 0x81, 0x36, 0x37, 0x62, 0x91, 0x19, 0xa4, 0x38, 0xb8, 0x27, 0xf3, 0x69, 0xd7, 0x0b, 0x7e, 0x19, 0x9b, 0xc6, 0xc5, 0x66, 0xfe, 0xfd, 0x68, 0xb5, 0x5e, 0x22, 0x4e, 0x64, 0x7a, 0x59, 0x5c, 0x05, 0x7b, 0xe4, 0x4f, 0xf2, 0xee, 0x32, 0x1b, 0x2a, 0xcd, 0xbe, 0x39, 0xb0, 0x9b, 0x3e, 0x56, 0xf3, 0xa9, 0xa0, 0xe4, 0xbe, }; static const unsigned char xdh_wei448_3654_sharedsecret[] = { 0xfe, 0x2e, 0x38, 0xc9, 0x30, 0xca, 0xba, 0xdf, 0x8a, 0xa9, 0xc6, 0x05, 0xa9, 0x04, 0x85, 0x0f, 0x6c, 0xe7, 0xdc, 0x35, 0xef, 0xb2, 0xaf, 0x72, 0xeb, 0xb2, 0x8e, 0xc4, 0xaf, 0x31, 0x19, 0x9d, 0x9d, 0xba, 0x57, 0xc4, 0x33, 0x7c, 0x84, 0x88, 0xb9, 0xaa, 0x3d, 0xed, 0xd5, 0x13, 0x49, 0xa4, 0x41, 0xbd, 0xbf, 0x59, 0x24, 0x5a, 0xd2, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3654 = { .name = "xdh_wei448_3654", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3654_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3654_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3654_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 50 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3655 for XDH, tcId is 51 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3655_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3655_privkey[] = { 0xd8, 0x45, 0x48, 0x05, 0xfe, 0x07, 0xcc, 0x84, 0x5d, 0xb6, 0x75, 0xbb, 0x19, 0x34, 0x8f, 0xd1, 0x0f, 0x97, 0xd2, 0x6a, 0x50, 0xd7, 0x29, 0xb5, 0xcd, 0x51, 0x09, 0x77, 0xe9, 0xab, 0xd9, 0xfd, 0x4c, 0x8a, 0x82, 0x41, 0x04, 0x68, 0xb6, 0x07, 0x13, 0x07, 0xb0, 0xbd, 0x57, 0xc4, 0xed, 0x34, 0x64, 0x39, 0x11, 0x05, 0xf6, 0x6e, 0x4b, 0xee, }; static const unsigned char xdh_wei448_3655_sharedsecret[] = { 0xc8, 0xb5, 0xae, 0x9c, 0x08, 0x2b, 0xf1, 0xec, 0xe4, 0x6b, 0x6b, 0x72, 0x4f, 0x96, 0x66, 0xd4, 0x57, 0x1a, 0x47, 0x7a, 0x20, 0xcc, 0xa6, 0x76, 0x42, 0x38, 0x7a, 0x6e, 0x89, 0x1f, 0x11, 0x88, 0x71, 0x8c, 0x46, 0xcd, 0xe8, 0xc2, 0xef, 0x20, 0x4e, 0x7f, 0x77, 0xca, 0xe4, 0xc1, 0x03, 0x20, 0x93, 0x0b, 0x1f, 0x0c, 0x2d, 0xa9, 0x15, 0xd9, }; static const wycheproof_xdh_test xdh_wei448_3655 = { .name = "xdh_wei448_3655", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3655_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3655_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3655_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 51 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3656 for XDH, tcId is 52 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3656_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3656_privkey[] = { 0x50, 0xae, 0x60, 0x84, 0x9c, 0x94, 0x0c, 0x5c, 0xf7, 0x0b, 0x23, 0x72, 0x28, 0xdb, 0xfd, 0x34, 0xc2, 0xe1, 0x66, 0x06, 0xc7, 0xb8, 0xcd, 0x55, 0x08, 0xab, 0x38, 0xbb, 0x45, 0x97, 0xc3, 0x28, 0xc5, 0x8f, 0x0d, 0x3c, 0x8f, 0xdf, 0x9b, 0x9b, 0xbb, 0x21, 0xab, 0x85, 0x8f, 0x02, 0xb7, 0x39, 0xf2, 0xda, 0x73, 0xd8, 0x27, 0xdd, 0xcd, 0xb5, }; static const unsigned char xdh_wei448_3656_sharedsecret[] = { 0xf5, 0xaa, 0xa3, 0x37, 0x4e, 0x01, 0xc7, 0xb6, 0xa3, 0x68, 0x04, 0xd6, 0x28, 0x4d, 0xdf, 0xc6, 0x8e, 0x6f, 0x4f, 0x33, 0x09, 0x0d, 0xd3, 0x07, 0x5b, 0x67, 0xec, 0x9a, 0xf2, 0xfb, 0x4c, 0x99, 0x1d, 0x0d, 0xbd, 0x7f, 0x6e, 0xb3, 0xa1, 0x77, 0xfb, 0x65, 0x0a, 0x5a, 0x05, 0x5b, 0x8d, 0x6b, 0xc9, 0xa2, 0x18, 0xbb, 0xfb, 0xfe, 0x6f, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3656 = { .name = "xdh_wei448_3656", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3656_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3656_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3656_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 52 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3657 for XDH, tcId is 53 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3657_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x03, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x07, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x0f, 0x00, 0x00, 0x80, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_3657_privkey[] = { 0xc8, 0x9c, 0x49, 0x16, 0xc0, 0xeb, 0x3c, 0x28, 0x7e, 0xb1, 0x02, 0xd4, 0x8f, 0x13, 0x88, 0x20, 0x11, 0x53, 0x28, 0xd8, 0x32, 0xaa, 0x80, 0xb6, 0x86, 0x39, 0x36, 0x94, 0xb8, 0xea, 0x1e, 0x89, 0xa0, 0x15, 0xbe, 0xd4, 0x4c, 0x30, 0x2b, 0x18, 0xc8, 0xa3, 0xc0, 0x94, 0x8a, 0xb4, 0x06, 0xad, 0xa5, 0x67, 0x29, 0xd5, 0x99, 0xc5, 0x5d, 0xb8, }; static const unsigned char xdh_wei448_3657_sharedsecret[] = { 0x81, 0x59, 0xaf, 0x5d, 0xbd, 0x95, 0x05, 0x8e, 0x4d, 0x92, 0x50, 0x4a, 0xac, 0xb1, 0x9c, 0xf0, 0x0f, 0xe2, 0xef, 0xbc, 0xa3, 0x96, 0x31, 0x1f, 0xa9, 0xe2, 0xee, 0x60, 0xca, 0x16, 0xeb, 0xcd, 0xae, 0xad, 0x05, 0xd1, 0xa7, 0x7a, 0x72, 0x92, 0x34, 0x77, 0x3e, 0xe4, 0x43, 0x76, 0x24, 0xe4, 0x25, 0x58, 0x0a, 0x4a, 0x55, 0xd5, 0xa4, 0xb4, }; static const wycheproof_xdh_test xdh_wei448_3657 = { .name = "xdh_wei448_3657", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3657_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3657_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3657_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 53 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3658 for XDH, tcId is 54 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3658_peerpubkey[] = { 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0x07, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0xf8, 0xff, 0xff, 0x0f, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0x03, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0xfc, 0xff, }; static const unsigned char xdh_wei448_3658_privkey[] = { 0xb8, 0x1e, 0x63, 0x30, 0x65, 0x9a, 0x23, 0x39, 0x00, 0xa8, 0xee, 0xc1, 0x46, 0x16, 0xae, 0x0b, 0x77, 0x75, 0xda, 0x7d, 0x22, 0x5a, 0xd2, 0x81, 0xb9, 0x86, 0x29, 0x1f, 0xd4, 0x2c, 0x3b, 0x78, 0x0c, 0x40, 0x6e, 0xc7, 0xe9, 0xb2, 0xb2, 0xc8, 0xaf, 0x9b, 0x1f, 0x81, 0x58, 0x74, 0x7f, 0x7b, 0x6d, 0x82, 0x9f, 0x1c, 0x00, 0x51, 0xe1, 0xac, }; static const unsigned char xdh_wei448_3658_sharedsecret[] = { 0x21, 0x14, 0xb2, 0x60, 0x0a, 0xca, 0x27, 0x6c, 0xc6, 0xc2, 0x8c, 0xf3, 0x94, 0x7d, 0xbf, 0x3b, 0x98, 0xf0, 0x6a, 0xe4, 0xf7, 0xf5, 0x33, 0xa0, 0x9e, 0x22, 0xef, 0xa8, 0xc0, 0x5e, 0x91, 0xdd, 0x49, 0x22, 0xce, 0xba, 0xa6, 0x49, 0x17, 0xab, 0x12, 0xf4, 0x54, 0x22, 0xcc, 0xa8, 0x99, 0xef, 0xc2, 0xf9, 0x58, 0x0b, 0x2e, 0x9a, 0x6a, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3658 = { .name = "xdh_wei448_3658", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3658_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3658_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3658_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 54 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3659 for XDH, tcId is 55 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3659_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3659_privkey[] = { 0x2c, 0x7c, 0xd8, 0xe4, 0x13, 0x30, 0x95, 0x4c, 0xec, 0xdc, 0x9c, 0xaf, 0x7e, 0x07, 0x9a, 0x6f, 0x09, 0xe4, 0xb4, 0x06, 0x37, 0xdd, 0x6e, 0x40, 0x25, 0x2d, 0x77, 0x1f, 0x96, 0x54, 0x84, 0xa7, 0xfc, 0x20, 0x8e, 0x13, 0xfd, 0xc4, 0x92, 0x02, 0x5c, 0xab, 0xe9, 0x8a, 0xa5, 0x53, 0x36, 0xa7, 0xdb, 0xa3, 0x6a, 0xc3, 0xae, 0x4d, 0x83, 0x8f, }; static const unsigned char xdh_wei448_3659_sharedsecret[] = { 0x88, 0x74, 0x92, 0xe4, 0x55, 0x7c, 0x0b, 0x6e, 0xca, 0xb3, 0x4e, 0xcc, 0x6b, 0xdf, 0x06, 0x08, 0xfe, 0xbe, 0x33, 0xfb, 0x05, 0xb2, 0xaa, 0x4a, 0xb8, 0xd8, 0x9e, 0xc6, 0xb4, 0x76, 0x51, 0x5c, 0x90, 0xa6, 0x6e, 0x1c, 0xfd, 0x3c, 0xde, 0x5b, 0x32, 0x40, 0xef, 0x8f, 0xbe, 0x0b, 0xb5, 0x3c, 0xfa, 0x6b, 0x25, 0x32, 0xd0, 0xc9, 0x4c, 0xaf, }; static const wycheproof_xdh_test xdh_wei448_3659 = { .name = "xdh_wei448_3659", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3659_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3659_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3659_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 55 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3660 for XDH, tcId is 56 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3660_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3660_privkey[] = { 0x48, 0x04, 0xaf, 0xd0, 0x55, 0xec, 0x05, 0xf3, 0x35, 0xb7, 0xe3, 0xee, 0xbb, 0xde, 0x2a, 0x6d, 0xe0, 0x10, 0xce, 0x74, 0x95, 0xe6, 0xc0, 0xd0, 0x21, 0x73, 0xfa, 0x8c, 0x48, 0xbb, 0x49, 0x53, 0x75, 0xb7, 0xd1, 0x49, 0xc6, 0x7b, 0x92, 0xd2, 0x88, 0x5a, 0xcb, 0x8d, 0x8b, 0xbb, 0x51, 0xa3, 0x17, 0x45, 0x37, 0x88, 0x67, 0x1e, 0xfa, 0x9f, }; static const unsigned char xdh_wei448_3660_sharedsecret[] = { 0xd6, 0xa2, 0x72, 0x4d, 0xc9, 0xca, 0x15, 0x79, 0xd9, 0x4a, 0x8c, 0xc8, 0x81, 0x5a, 0x3e, 0xd3, 0x92, 0xb9, 0xe1, 0x0b, 0x39, 0xf5, 0x7c, 0x74, 0x7f, 0x7b, 0x2d, 0x84, 0xf5, 0x49, 0x69, 0x06, 0x2c, 0x8b, 0x86, 0x92, 0x9a, 0x1a, 0x12, 0xf4, 0x66, 0xd3, 0xef, 0x95, 0x98, 0xf1, 0x90, 0x47, 0x73, 0xa4, 0xee, 0x93, 0x8f, 0x0f, 0x5d, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_3660 = { .name = "xdh_wei448_3660", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3660_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3660_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3660_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 56 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3661 for XDH, tcId is 57 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3661_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3661_privkey[] = { 0x78, 0xc1, 0xed, 0x99, 0x18, 0xd0, 0xaa, 0x85, 0xf8, 0x8a, 0xf3, 0x95, 0x54, 0x7a, 0x07, 0x10, 0x36, 0x95, 0xed, 0xcf, 0x5a, 0xf8, 0xff, 0xdf, 0x14, 0xae, 0xb9, 0x8d, 0xc0, 0x10, 0xa2, 0x38, 0xca, 0xe2, 0xd3, 0x9d, 0xb6, 0xa9, 0x3e, 0xc0, 0x66, 0x45, 0x53, 0x77, 0x65, 0x4d, 0x69, 0x78, 0x89, 0x0f, 0x55, 0x90, 0x07, 0x7d, 0xd2, 0xa9, }; static const unsigned char xdh_wei448_3661_sharedsecret[] = { 0x6d, 0xe6, 0x08, 0x14, 0x85, 0xf0, 0x8c, 0x30, 0x27, 0x5c, 0x2a, 0xcc, 0x64, 0xd9, 0x25, 0xc4, 0xb1, 0xde, 0xac, 0x3f, 0xe4, 0xaa, 0x36, 0x13, 0xeb, 0x83, 0xa5, 0xff, 0x4c, 0x19, 0x15, 0xd4, 0xed, 0x06, 0xae, 0xde, 0xbe, 0xc3, 0x65, 0x92, 0xfa, 0xd3, 0x72, 0xe4, 0x69, 0x4d, 0x28, 0x05, 0x8b, 0x14, 0x24, 0x5c, 0xd4, 0x9f, 0xf1, 0xb2, }; static const wycheproof_xdh_test xdh_wei448_3661 = { .name = "xdh_wei448_3661", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3661_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3661_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3661_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 57 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3662 for XDH, tcId is 58 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3662_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3662_privkey[] = { 0xec, 0xbb, 0x1b, 0xbb, 0x54, 0x5d, 0xf1, 0xf0, 0x5b, 0xb7, 0x29, 0x79, 0x46, 0x29, 0x13, 0xa3, 0x6b, 0x85, 0x69, 0xd3, 0xe3, 0x94, 0xa9, 0xc6, 0x61, 0xca, 0x3f, 0x6b, 0x16, 0x44, 0xc3, 0x5e, 0xbe, 0x36, 0xdc, 0x58, 0xcc, 0x7d, 0xd0, 0x54, 0xe2, 0xa4, 0x46, 0xb9, 0x96, 0x77, 0xc2, 0x8d, 0xec, 0xc3, 0x50, 0xd3, 0x83, 0xc6, 0x69, 0x94, }; static const unsigned char xdh_wei448_3662_sharedsecret[] = { 0xf7, 0x64, 0xdf, 0xa3, 0xbc, 0x00, 0x15, 0xfc, 0xb9, 0x78, 0x39, 0x0c, 0xc3, 0xd2, 0x9c, 0x8d, 0x47, 0xcc, 0x8d, 0x61, 0xcf, 0x41, 0x22, 0x75, 0x4b, 0xf9, 0x05, 0xd1, 0x10, 0x3e, 0xa5, 0xf6, 0x64, 0xf7, 0x30, 0x01, 0x1e, 0xf9, 0x7c, 0xd3, 0x2c, 0x25, 0x01, 0xd3, 0x13, 0xe4, 0x56, 0xff, 0xef, 0xb9, 0xe4, 0xcb, 0xcc, 0x40, 0x13, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3662 = { .name = "xdh_wei448_3662", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3662_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3662_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3662_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 58 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3663 for XDH, tcId is 59 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3663_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3663_privkey[] = { 0x84, 0xc0, 0xd8, 0x06, 0xee, 0xd4, 0xda, 0x2f, 0xfc, 0xac, 0xa8, 0x8c, 0x7f, 0x03, 0x89, 0x05, 0x9f, 0xff, 0x0e, 0xe8, 0xf5, 0x80, 0xd0, 0x80, 0xe9, 0x67, 0x2a, 0x44, 0x1f, 0x5a, 0xb1, 0x90, 0x69, 0xfe, 0xf6, 0x68, 0xab, 0x20, 0xd2, 0x4f, 0x04, 0x68, 0xa5, 0xc3, 0xe5, 0x49, 0xa1, 0x70, 0x12, 0x12, 0x21, 0x34, 0xe0, 0x27, 0xb4, 0x84, }; static const unsigned char xdh_wei448_3663_sharedsecret[] = { 0xa1, 0x05, 0xe0, 0x28, 0x39, 0x41, 0x54, 0x50, 0x6e, 0xc0, 0x7c, 0x69, 0x6f, 0xe6, 0x35, 0x84, 0x3b, 0x8a, 0x53, 0x5b, 0x03, 0xd3, 0x91, 0x1d, 0xc5, 0x27, 0xc4, 0x33, 0xea, 0x4e, 0x24, 0x4e, 0xbf, 0xc7, 0xba, 0x07, 0x93, 0xac, 0x14, 0x66, 0xf3, 0x21, 0x53, 0xc1, 0x6c, 0xa1, 0xdc, 0xe8, 0xa5, 0xad, 0xec, 0xb5, 0xee, 0xcb, 0x82, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3663 = { .name = "xdh_wei448_3663", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3663_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3663_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3663_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 59 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3664 for XDH, tcId is 60 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3664_peerpubkey[] = { 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3664_privkey[] = { 0xbc, 0x7b, 0xce, 0x37, 0x43, 0x4c, 0x0a, 0x1d, 0x05, 0xef, 0xf4, 0x28, 0x03, 0x4f, 0x75, 0xed, 0x74, 0x54, 0xed, 0xe6, 0xb2, 0xa6, 0xe3, 0x4e, 0xd4, 0xfc, 0xed, 0xc0, 0x50, 0x34, 0x9c, 0x86, 0x6c, 0x40, 0xa2, 0x7c, 0x27, 0x89, 0x8a, 0xfe, 0xc4, 0x1b, 0x3b, 0x47, 0x7f, 0x0d, 0xf5, 0xc5, 0x35, 0x6e, 0x57, 0xd7, 0x56, 0x2c, 0xdd, 0xa5, }; static const unsigned char xdh_wei448_3664_sharedsecret[] = { 0x96, 0x3f, 0xf8, 0xe5, 0xea, 0x53, 0x41, 0x78, 0xe1, 0x92, 0x2c, 0xc0, 0x6c, 0x63, 0x83, 0x67, 0xc2, 0xc4, 0x69, 0x0a, 0xba, 0x7e, 0x4a, 0xaa, 0xb8, 0x34, 0x22, 0x10, 0xb9, 0x03, 0x57, 0x27, 0x06, 0x27, 0x62, 0x63, 0x1f, 0x79, 0xe7, 0x09, 0xd2, 0xba, 0xf0, 0x64, 0x6f, 0x0d, 0x9a, 0x37, 0xdf, 0x02, 0xd5, 0x31, 0x79, 0x1b, 0xc9, 0x40, }; static const wycheproof_xdh_test xdh_wei448_3664 = { .name = "xdh_wei448_3664", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3664_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3664_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3664_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 60 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3665 for XDH, tcId is 61 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3665_peerpubkey[] = { 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3665_privkey[] = { 0xa8, 0x9a, 0x7e, 0x06, 0x07, 0x36, 0xdb, 0x3c, 0xb3, 0xe3, 0x7e, 0xe3, 0xb5, 0xdb, 0x1a, 0x7c, 0xe4, 0x51, 0x66, 0x74, 0xbe, 0xf7, 0x15, 0xe8, 0xf8, 0x36, 0xf0, 0x4f, 0x7e, 0x09, 0x57, 0xb7, 0xe5, 0x0e, 0x9c, 0xec, 0x37, 0x70, 0x07, 0xa0, 0x8c, 0x23, 0x43, 0x8d, 0xce, 0x6c, 0x32, 0xf4, 0x09, 0xd7, 0xbb, 0x89, 0x4b, 0x40, 0x4f, 0xe6, }; static const unsigned char xdh_wei448_3665_sharedsecret[] = { 0x29, 0x72, 0x3d, 0x84, 0xea, 0xef, 0xd5, 0x3b, 0x8e, 0xb6, 0xa5, 0x19, 0x4f, 0xd3, 0xa4, 0x01, 0xc7, 0xb6, 0xac, 0x7c, 0x16, 0x65, 0xa5, 0xe9, 0x7e, 0x28, 0x40, 0x9c, 0x9c, 0x75, 0xc9, 0xba, 0xe8, 0x04, 0x9b, 0xc2, 0x83, 0x8b, 0x2b, 0x9b, 0xd4, 0xdc, 0xda, 0xf6, 0x19, 0x2a, 0x9e, 0x30, 0x80, 0xc0, 0xaa, 0xc2, 0x21, 0x9e, 0xe8, 0x11, }; static const wycheproof_xdh_test xdh_wei448_3665 = { .name = "xdh_wei448_3665", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3665_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3665_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3665_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 61 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3666 for XDH, tcId is 62 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3666_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3666_privkey[] = { 0x68, 0x27, 0x3d, 0x87, 0x9a, 0x2c, 0x85, 0xf9, 0x8e, 0x8c, 0x05, 0x1b, 0xda, 0xfc, 0xda, 0xec, 0x09, 0x7b, 0x07, 0x62, 0x2d, 0xea, 0x9a, 0xc6, 0x78, 0x4e, 0x36, 0x15, 0xf2, 0x74, 0x38, 0xea, 0x75, 0xcd, 0x4e, 0xff, 0xbb, 0xab, 0xe7, 0x05, 0xf6, 0x63, 0xa2, 0x44, 0x6a, 0xb8, 0xa2, 0x31, 0x0f, 0x30, 0xf9, 0x05, 0x28, 0xf5, 0x75, 0xf2, }; static const unsigned char xdh_wei448_3666_sharedsecret[] = { 0x56, 0x50, 0xaf, 0x69, 0xcd, 0x01, 0x61, 0x70, 0xac, 0x1d, 0x5b, 0xbe, 0x84, 0xf0, 0x3d, 0x47, 0xe1, 0xfe, 0x89, 0xc7, 0xe2, 0xda, 0xed, 0xbe, 0xa8, 0xf0, 0x26, 0x54, 0xb7, 0x3e, 0xfe, 0xdb, 0xfe, 0xcd, 0xcd, 0x92, 0x5d, 0x79, 0x81, 0xa9, 0xe9, 0xbd, 0x2f, 0x69, 0x11, 0x7f, 0x64, 0x7f, 0xe9, 0xf5, 0x08, 0x23, 0x3b, 0x68, 0xd3, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_3666 = { .name = "xdh_wei448_3666", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3666_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3666_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3666_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case public key, tcId is 62 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3667 for XDH, tcId is 63 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3667_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3667_privkey[] = { 0xac, 0x23, 0xf2, 0xc2, 0x9d, 0xd7, 0x91, 0x0e, 0xbd, 0xb4, 0x7e, 0xfc, 0x5c, 0xcb, 0x34, 0x5d, 0xc9, 0x39, 0x2b, 0xb5, 0xde, 0xf5, 0x01, 0x8d, 0xc8, 0xcb, 0x41, 0x06, 0x35, 0xf5, 0x6e, 0x63, 0xab, 0x92, 0xbc, 0xda, 0xc4, 0x17, 0x7c, 0x6b, 0xd3, 0x45, 0x0b, 0x09, 0x84, 0x93, 0xb6, 0x8b, 0xb5, 0x4e, 0xa4, 0x7b, 0x76, 0x93, 0x34, 0xc4, }; static const unsigned char xdh_wei448_3667_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3667 = { .name = "xdh_wei448_3667", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3667_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3667_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3667_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 63 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3668 for XDH, tcId is 64 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3668_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3668_privkey[] = { 0x28, 0x5e, 0x19, 0x31, 0x45, 0xa1, 0x7f, 0x00, 0xde, 0xa2, 0x19, 0x49, 0xb0, 0xe6, 0x00, 0xc0, 0x40, 0xe4, 0xb9, 0x2d, 0xcd, 0x85, 0xe1, 0x42, 0x48, 0x31, 0x72, 0x6d, 0x45, 0xe7, 0x65, 0x74, 0xaa, 0xf2, 0xf3, 0xb8, 0x2c, 0xd0, 0xe3, 0xb8, 0x7f, 0xed, 0xd8, 0x3e, 0xaf, 0xb2, 0x42, 0xe0, 0xe7, 0xa8, 0x97, 0x44, 0x2d, 0xd4, 0xda, 0xdb, }; static const unsigned char xdh_wei448_3668_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3668 = { .name = "xdh_wei448_3668", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3668_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3668_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3668_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key with low order, tcId is 64 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3669 for XDH, tcId is 65 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3669_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3669_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3669_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3669 = { .name = "xdh_wei448_3669", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3669_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3669_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3669_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 65 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3670 for XDH, tcId is 66 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3670_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3670_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3670_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3670 = { .name = "xdh_wei448_3670", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3670_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3670_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3670_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 66 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3671 for XDH, tcId is 67 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3671_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3671_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3671_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3671 = { .name = "xdh_wei448_3671", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3671_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3671_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3671_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 67 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3672 for XDH, tcId is 68 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3672_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3672_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3672_sharedsecret[] = { 0x7a, 0xd5, 0x21, 0x0b, 0x70, 0xf2, 0xa7, 0xf4, 0xf2, 0xfe, 0x30, 0x6c, 0xe0, 0x98, 0xe3, 0xad, 0x30, 0x65, 0xca, 0xfd, 0x6f, 0x5a, 0x8d, 0x3e, 0x04, 0xdf, 0x33, 0xda, 0x71, 0x89, 0xd4, 0x49, 0xba, 0xcc, 0x85, 0x64, 0xed, 0x5b, 0x9f, 0x15, 0x32, 0xe8, 0x73, 0x74, 0xea, 0xe9, 0xd9, 0x51, 0xf4, 0x5c, 0x38, 0x3b, 0xa9, 0xd8, 0x05, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3672 = { .name = "xdh_wei448_3672", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3672_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3672_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3672_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 68 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3673 for XDH, tcId is 69 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3673_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3673_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3673_sharedsecret[] = { 0x25, 0xa8, 0xe0, 0x34, 0xc3, 0x96, 0x3e, 0x07, 0x65, 0xfb, 0x59, 0xe6, 0xb8, 0x85, 0x58, 0xcd, 0x67, 0x4a, 0xc2, 0xdd, 0x2b, 0x31, 0x02, 0x21, 0xec, 0xf3, 0x3d, 0x16, 0x8b, 0x9f, 0xaf, 0x5f, 0xe9, 0x42, 0x53, 0xaf, 0x64, 0x29, 0x7b, 0x9a, 0x06, 0x1b, 0xfa, 0x93, 0xd6, 0xe3, 0xeb, 0x91, 0x9a, 0x51, 0x58, 0x6f, 0xeb, 0x95, 0x5c, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_3673 = { .name = "xdh_wei448_3673", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3673_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3673_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3673_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 69 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3674 for XDH, tcId is 70 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3674_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3674_privkey[] = { 0xc0, 0x5b, 0xd1, 0x9c, 0x61, 0xd1, 0xc2, 0xc0, 0xe7, 0x94, 0x14, 0x34, 0x5c, 0xfb, 0x9c, 0x13, 0x8e, 0xed, 0x88, 0x05, 0x4f, 0xac, 0x8f, 0x74, 0xb2, 0xc4, 0xb5, 0xe1, 0xe8, 0x17, 0xaa, 0xad, 0x62, 0x9d, 0x15, 0x99, 0x03, 0xbe, 0xf4, 0x0c, 0x10, 0xc8, 0x5a, 0x8b, 0x90, 0xb8, 0x43, 0x3c, 0x7f, 0x35, 0x24, 0x8d, 0x72, 0xbe, 0xa2, 0xd1, }; static const unsigned char xdh_wei448_3674_sharedsecret[] = { 0x85, 0x6b, 0x87, 0x07, 0xb1, 0x6e, 0x1b, 0x21, 0xdf, 0xc5, 0x47, 0xfd, 0xb0, 0x4c, 0x61, 0xa4, 0xae, 0xd9, 0xf9, 0x00, 0x1f, 0x3f, 0x26, 0x40, 0x49, 0x01, 0xe9, 0xba, 0x30, 0x93, 0x3c, 0xdd, 0x7c, 0xa9, 0xe2, 0xa0, 0xe5, 0x77, 0x00, 0x58, 0x8e, 0xb8, 0x57, 0x63, 0x12, 0xea, 0xd8, 0xee, 0x57, 0x91, 0xa8, 0xec, 0xff, 0x32, 0xef, 0xaa, }; static const wycheproof_xdh_test xdh_wei448_3674 = { .name = "xdh_wei448_3674", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3674_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3674_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3674_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key with low order, tcId is 70 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3675 for XDH, tcId is 71 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3675_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3675_privkey[] = { 0xb8, 0xa9, 0xb9, 0xf6, 0xf1, 0xaf, 0x4f, 0x15, 0x25, 0xa5, 0x3b, 0x89, 0x5c, 0x3b, 0xf6, 0x4f, 0x23, 0x16, 0x1f, 0x67, 0x0f, 0xcf, 0xf2, 0xfb, 0xa7, 0x9b, 0x8f, 0xda, 0xc0, 0x73, 0x95, 0xee, 0x99, 0xbf, 0x46, 0x27, 0x8f, 0x3e, 0x94, 0x8a, 0x55, 0x67, 0x07, 0xcd, 0x2a, 0x88, 0x9b, 0xae, 0x69, 0x44, 0x94, 0x96, 0x29, 0x5c, 0xc5, 0xa2, }; static const unsigned char xdh_wei448_3675_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3675 = { .name = "xdh_wei448_3675", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3675_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3675_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3675_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365439, tcId is 71 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3676 for XDH, tcId is 72 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3676_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3676_privkey[] = { 0xe0, 0xb3, 0x2c, 0xd5, 0xd6, 0x02, 0xcb, 0x78, 0xe5, 0x4c, 0x87, 0xfe, 0x29, 0xeb, 0x60, 0x75, 0x88, 0x44, 0x63, 0x33, 0x4b, 0x25, 0x1d, 0xe2, 0x03, 0xf4, 0xc4, 0x6c, 0xb6, 0x8a, 0xc2, 0x47, 0x83, 0x91, 0xf0, 0xa3, 0xf1, 0x9c, 0xcd, 0xe5, 0xf8, 0xec, 0x64, 0x0c, 0xc7, 0xb5, 0x88, 0x77, 0xb4, 0x3e, 0x5b, 0x8b, 0x57, 0x8b, 0x40, 0xd7, }; static const unsigned char xdh_wei448_3676_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3676 = { .name = "xdh_wei448_3676", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3676_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3676_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3676_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180612328166730772686396383698676545930088884461843637361053498018365440, tcId is 72 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3677 for XDH, tcId is 73 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3677_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3677_privkey[] = { 0x64, 0x0b, 0x78, 0x20, 0xd3, 0xc9, 0xbc, 0x49, 0xd6, 0x85, 0xfb, 0x80, 0x74, 0xfe, 0x98, 0x42, 0x52, 0x2f, 0x9c, 0x5a, 0xd3, 0x34, 0xda, 0x17, 0xa6, 0x47, 0xc6, 0xbd, 0xae, 0x72, 0x45, 0x4c, 0xcd, 0x25, 0xca, 0x33, 0x72, 0xb6, 0x10, 0xeb, 0xf8, 0x9c, 0x0a, 0x33, 0x6b, 0x4f, 0xd5, 0x9a, 0x82, 0xf6, 0x87, 0x5f, 0x37, 0xdc, 0x86, 0xe4, }; static const unsigned char xdh_wei448_3677_sharedsecret[] = { 0x48, 0x68, 0x06, 0x12, 0x6f, 0xa8, 0xfd, 0x7b, 0x25, 0x59, 0x15, 0x56, 0x0d, 0x4d, 0x54, 0xad, 0xa9, 0xac, 0xc0, 0x5b, 0x1b, 0x54, 0x64, 0xcf, 0x7b, 0x5f, 0x11, 0x67, 0x1f, 0xf0, 0x07, 0x6b, 0x2a, 0x38, 0x88, 0x65, 0x28, 0x55, 0xc2, 0x81, 0x8b, 0xc2, 0x8b, 0xa3, 0xc7, 0xb3, 0x44, 0xcb, 0x10, 0x06, 0x14, 0x3b, 0xfe, 0x1a, 0x97, 0x1e, }; static const wycheproof_xdh_test xdh_wei448_3677 = { .name = "xdh_wei448_3677", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3677_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3677_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3677_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 73 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3678 for XDH, tcId is 74 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3678_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3678_privkey[] = { 0x04, 0x51, 0x6d, 0xd7, 0x0b, 0xfe, 0x73, 0x92, 0xde, 0x61, 0xcf, 0x35, 0x2e, 0xce, 0x15, 0xc2, 0x3e, 0x2a, 0x64, 0x21, 0x52, 0xfe, 0x40, 0xe9, 0x62, 0xc0, 0x53, 0x83, 0xd4, 0xf8, 0xeb, 0xd4, 0x54, 0x82, 0xe1, 0xb3, 0xc0, 0x4a, 0x36, 0x64, 0x45, 0x7f, 0x98, 0xdf, 0xa8, 0x37, 0x19, 0xa5, 0x28, 0x06, 0x39, 0xc5, 0xa1, 0x2d, 0xcb, 0x94, }; static const unsigned char xdh_wei448_3678_sharedsecret[] = { 0xcc, 0x0e, 0xef, 0x36, 0x96, 0xa6, 0x2c, 0xbf, 0xe4, 0xc5, 0x85, 0x51, 0x4a, 0x90, 0xa7, 0xe1, 0x2e, 0xc2, 0x4e, 0x10, 0x1e, 0x84, 0x58, 0xeb, 0xfb, 0xe7, 0x5d, 0x9d, 0xb7, 0xa8, 0x26, 0x60, 0x74, 0x16, 0xd3, 0xf2, 0xa6, 0x9d, 0x7a, 0xc6, 0xc0, 0x3f, 0x27, 0xe1, 0xe2, 0x25, 0xee, 0x75, 0x67, 0x72, 0x78, 0xfc, 0x2f, 0x26, 0xdd, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3678 = { .name = "xdh_wei448_3678", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3678_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3678_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3678_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 74 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3679 for XDH, tcId is 75 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3679_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3679_privkey[] = { 0xfc, 0xa7, 0x84, 0xf0, 0x39, 0x79, 0x8b, 0xe5, 0x96, 0xaf, 0xee, 0xda, 0xec, 0x5b, 0x38, 0x68, 0xf0, 0xc8, 0x29, 0x89, 0x27, 0x72, 0x1f, 0xb8, 0x2a, 0xd0, 0x45, 0x46, 0xb7, 0xe4, 0xc4, 0xf4, 0x2f, 0xa1, 0xfc, 0x3f, 0xc7, 0xd1, 0x2f, 0x43, 0xf5, 0xa2, 0xe8, 0xa9, 0x63, 0x62, 0xfc, 0xc7, 0x1a, 0x34, 0xb4, 0x4b, 0x55, 0x9e, 0x0b, 0x96, }; static const unsigned char xdh_wei448_3679_sharedsecret[] = { 0xa7, 0x29, 0xe6, 0xec, 0xe3, 0xdb, 0x18, 0xb7, 0xe9, 0x42, 0x3b, 0xe4, 0xe7, 0xfa, 0xe1, 0x8c, 0xaa, 0x29, 0x1e, 0x61, 0xce, 0x84, 0xb6, 0x08, 0x56, 0x9a, 0xb4, 0x61, 0xb2, 0x70, 0x72, 0x4f, 0xd9, 0x2f, 0x3e, 0x2b, 0x80, 0x86, 0xfe, 0x06, 0x76, 0x73, 0xca, 0x7a, 0xc0, 0x53, 0x57, 0xee, 0x70, 0x1d, 0x69, 0xe4, 0x05, 0x6d, 0x5b, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_3679 = { .name = "xdh_wei448_3679", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3679_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3679_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3679_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 75 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3680 for XDH, tcId is 76 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3680_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3680_privkey[] = { 0x74, 0x2b, 0x8c, 0x0b, 0x0a, 0xb0, 0x10, 0x4a, 0x9e, 0xf9, 0x63, 0x4c, 0x0a, 0xad, 0x02, 0x3f, 0x35, 0xe4, 0x1f, 0xb9, 0x53, 0x71, 0x71, 0x21, 0xce, 0x4c, 0x2a, 0xeb, 0xc1, 0xa1, 0x28, 0xe7, 0xc0, 0x43, 0x1c, 0xd1, 0x34, 0x7a, 0x62, 0x41, 0x68, 0x5f, 0x71, 0x74, 0xa8, 0x51, 0x2d, 0x41, 0x7e, 0xba, 0xaa, 0x46, 0xee, 0x78, 0x0a, 0x8a, }; static const unsigned char xdh_wei448_3680_sharedsecret[] = { 0xd9, 0x2b, 0x02, 0xd7, 0xbb, 0x99, 0x52, 0xf4, 0xca, 0x82, 0x6b, 0x2b, 0x51, 0xf1, 0xa3, 0xd4, 0xde, 0x1f, 0xd4, 0x45, 0x9f, 0x0d, 0x01, 0x98, 0x53, 0xf3, 0xa9, 0x60, 0xd5, 0x4f, 0x33, 0x54, 0xd8, 0xe4, 0x0f, 0xb2, 0x8d, 0x1b, 0xe6, 0x56, 0x37, 0xbb, 0x7d, 0xba, 0x05, 0x71, 0xff, 0x83, 0x79, 0x7b, 0x71, 0x06, 0xc7, 0x49, 0x74, 0x59, }; static const wycheproof_xdh_test xdh_wei448_3680 = { .name = "xdh_wei448_3680", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3680_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3680_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3680_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "non-canonical public key, tcId is 76 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3681 for XDH, tcId is 77 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3681_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3681_privkey[] = { 0xf4, 0x9a, 0x2a, 0xe8, 0x10, 0x11, 0x58, 0x86, 0x82, 0x1e, 0xda, 0x33, 0xe6, 0xe7, 0x27, 0x54, 0x71, 0x25, 0xd2, 0x05, 0xdd, 0x62, 0x08, 0x4d, 0x76, 0x21, 0x98, 0xa6, 0xa6, 0x1a, 0x10, 0xe8, 0x5c, 0x7f, 0xd8, 0x93, 0x16, 0x57, 0x5e, 0x62, 0xa4, 0x8e, 0x0f, 0xf4, 0x19, 0x1e, 0x27, 0x6d, 0xa8, 0x9c, 0x8f, 0x8c, 0x2b, 0xbe, 0x4a, 0xef, }; static const unsigned char xdh_wei448_3681_sharedsecret[] = { 0x42, 0xd8, 0xa2, 0x0f, 0x37, 0x89, 0x1c, 0xf1, 0xdf, 0x59, 0x31, 0xb5, 0x8a, 0x6f, 0x34, 0xbe, 0xd5, 0x8e, 0x28, 0x7b, 0xc2, 0x01, 0x67, 0x37, 0x88, 0xb8, 0x4b, 0xe1, 0x07, 0x5a, 0xa0, 0xca, 0x5d, 0x7e, 0x57, 0x1b, 0x2e, 0x7a, 0x80, 0x16, 0xb3, 0x91, 0xd4, 0x86, 0x5d, 0x9e, 0x50, 0x78, 0x35, 0x14, 0xab, 0x2b, 0x96, 0xf4, 0xe1, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3681 = { .name = "xdh_wei448_3681", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3681_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3681_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3681_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 77 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3682 for XDH, tcId is 78 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3682_peerpubkey[] = { 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3682_privkey[] = { 0x14, 0xf9, 0xd7, 0x14, 0xd0, 0x7b, 0xf6, 0x97, 0x69, 0xcd, 0x59, 0x7d, 0xa4, 0x14, 0xb4, 0x7a, 0xd6, 0x73, 0x67, 0x43, 0x62, 0x8c, 0x59, 0x65, 0x60, 0x09, 0x4f, 0xbb, 0x42, 0x70, 0xbf, 0x87, 0xeb, 0x42, 0x6f, 0x8e, 0x70, 0xac, 0x2d, 0xf0, 0x80, 0xf5, 0xa4, 0x44, 0xf3, 0xbd, 0x4d, 0xbe, 0xbd, 0x13, 0xb1, 0x92, 0x26, 0x97, 0x80, 0xce, }; static const unsigned char xdh_wei448_3682_sharedsecret[] = { 0x74, 0x81, 0x08, 0x91, 0x5c, 0xac, 0xcb, 0x93, 0x08, 0x46, 0x6e, 0xfe, 0x74, 0x40, 0x72, 0x9b, 0xb4, 0x86, 0x5e, 0x55, 0xf5, 0x43, 0xf3, 0x22, 0xe2, 0xc7, 0x35, 0x6e, 0x5a, 0xa9, 0x1e, 0xaf, 0x4c, 0x55, 0xa9, 0x4b, 0x97, 0xc5, 0x05, 0x13, 0x1d, 0x38, 0xda, 0xd6, 0xdb, 0xbd, 0x74, 0x8b, 0x49, 0x43, 0xae, 0xa7, 0x7e, 0x3b, 0x65, 0xa4, }; static const wycheproof_xdh_test xdh_wei448_3682 = { .name = "xdh_wei448_3682", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3682_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3682_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3682_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 78 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3683 for XDH, tcId is 79 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3683_peerpubkey[] = { 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3683_privkey[] = { 0x5c, 0xc3, 0x56, 0x76, 0xa3, 0x41, 0x3d, 0x09, 0x7d, 0xd7, 0xbb, 0x23, 0x00, 0x33, 0xa1, 0xeb, 0xa3, 0x47, 0xb4, 0x72, 0xdc, 0xc4, 0xa8, 0x37, 0xb5, 0xee, 0x6b, 0xf1, 0x5a, 0x58, 0xaf, 0xd9, 0xad, 0x09, 0xcb, 0x27, 0xa7, 0xdf, 0xf9, 0x7b, 0xe2, 0x3b, 0xa6, 0x16, 0xa3, 0x20, 0x30, 0x5e, 0x92, 0x89, 0x86, 0x6c, 0x97, 0x3b, 0xa4, 0xc3, }; static const unsigned char xdh_wei448_3683_sharedsecret[] = { 0x14, 0xa4, 0x84, 0x63, 0x7a, 0xe0, 0xff, 0x2e, 0x46, 0x68, 0x7d, 0x58, 0x91, 0x42, 0x64, 0x86, 0xab, 0xab, 0x18, 0x9d, 0xc4, 0x45, 0x8f, 0x26, 0xe4, 0x46, 0x62, 0x72, 0x3f, 0xf8, 0x0c, 0xc7, 0xae, 0x18, 0x67, 0x66, 0x45, 0x76, 0x35, 0xe9, 0xdf, 0xf0, 0xca, 0x3b, 0x5f, 0xf5, 0x00, 0x3e, 0x21, 0x39, 0x22, 0x77, 0x82, 0x6b, 0x47, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_3683 = { .name = "xdh_wei448_3683", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3683_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3683_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3683_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 79 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3684 for XDH, tcId is 80 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3684_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3684_privkey[] = { 0x90, 0x49, 0xd5, 0x98, 0x8c, 0x54, 0x44, 0x86, 0x8a, 0xb7, 0xe1, 0x36, 0x7d, 0xef, 0xb8, 0x56, 0x5e, 0x81, 0xaa, 0x3c, 0xf3, 0xaf, 0x6f, 0xdc, 0xbe, 0xe3, 0x04, 0x49, 0x12, 0xdc, 0xd4, 0x81, 0x09, 0xe8, 0xb5, 0xc6, 0xe8, 0x39, 0x23, 0x5d, 0xca, 0xb8, 0x6f, 0x38, 0xe1, 0x4c, 0x8e, 0xb5, 0xdf, 0xb3, 0x41, 0xd6, 0x00, 0xac, 0x64, 0xbc, }; static const unsigned char xdh_wei448_3684_sharedsecret[] = { 0xc1, 0x54, 0xcc, 0x67, 0x07, 0x34, 0xe4, 0xfb, 0x43, 0x96, 0x93, 0x36, 0xd8, 0x82, 0xbe, 0x6b, 0x28, 0xdd, 0x82, 0xc0, 0xd8, 0xa1, 0x3a, 0x75, 0x9a, 0x0a, 0x7b, 0xb5, 0x61, 0xb7, 0x92, 0x6d, 0x53, 0x5f, 0x85, 0x64, 0x28, 0x0a, 0x57, 0xf8, 0xe6, 0x67, 0xea, 0x24, 0x92, 0x25, 0xc0, 0x20, 0xd9, 0x4e, 0x78, 0x10, 0x7d, 0xe8, 0x47, 0x8d, }; static const wycheproof_xdh_test xdh_wei448_3684 = { .name = "xdh_wei448_3684", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3684_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3684_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3684_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 80 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3685 for XDH, tcId is 81 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3685_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3685_privkey[] = { 0x58, 0xfc, 0x99, 0x70, 0xe9, 0xc6, 0x28, 0xa8, 0xfe, 0x3a, 0x24, 0xb6, 0xa9, 0x2a, 0x18, 0xa3, 0x3e, 0xee, 0x81, 0x8a, 0x9e, 0x3e, 0x1c, 0xc2, 0x8e, 0xe6, 0x91, 0x0f, 0xa9, 0x3f, 0x60, 0x19, 0x82, 0xcf, 0x74, 0x0f, 0x31, 0x4d, 0xeb, 0x85, 0xf6, 0x12, 0x2e, 0x93, 0xf2, 0x38, 0x65, 0x56, 0x83, 0x0a, 0x23, 0x20, 0x87, 0x31, 0x3d, 0x8d, }; static const unsigned char xdh_wei448_3685_sharedsecret[] = { 0x09, 0xd8, 0x40, 0x53, 0x3e, 0xe1, 0x6d, 0xe3, 0x0d, 0x2b, 0x71, 0x41, 0x24, 0x4e, 0x5c, 0x98, 0x90, 0x23, 0xfe, 0x5f, 0x88, 0x27, 0x73, 0x67, 0xe2, 0x8d, 0xba, 0x85, 0xc9, 0xf3, 0x2d, 0x68, 0xad, 0xa8, 0x4a, 0x9a, 0xa9, 0xd1, 0x80, 0x7e, 0xa4, 0x44, 0xe0, 0x1b, 0x75, 0xda, 0xda, 0x83, 0x1f, 0x8a, 0x9e, 0x8e, 0x14, 0x6f, 0x14, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_3685 = { .name = "xdh_wei448_3685", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3685_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3685_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3685_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 81 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3686 for XDH, tcId is 82 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3686_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3686_privkey[] = { 0x44, 0xe6, 0xd9, 0x86, 0x24, 0xb7, 0xdf, 0xda, 0x55, 0x74, 0x08, 0x21, 0x1b, 0xf9, 0xdd, 0xb1, 0x7c, 0xe0, 0xb8, 0x73, 0x94, 0x28, 0x4a, 0x3d, 0xfb, 0x6c, 0x73, 0x8b, 0x67, 0x4c, 0xd7, 0xc5, 0xb2, 0xa7, 0x5f, 0x95, 0x62, 0x38, 0x7e, 0x67, 0x0b, 0x06, 0x3c, 0x7f, 0x37, 0x4b, 0x7b, 0xea, 0x66, 0x97, 0x38, 0xe4, 0x07, 0xda, 0xc3, 0xf1, }; static const unsigned char xdh_wei448_3686_sharedsecret[] = { 0x00, 0x25, 0x17, 0xcf, 0x33, 0x94, 0x89, 0xd2, 0x52, 0x49, 0xdb, 0x5c, 0x2c, 0xea, 0xd3, 0xe1, 0xa8, 0x33, 0x70, 0x5d, 0x5b, 0x53, 0x35, 0x11, 0x85, 0xf8, 0xf9, 0x44, 0x0c, 0xe4, 0xf2, 0x96, 0x79, 0xbd, 0xec, 0x0b, 0x79, 0xc2, 0x30, 0x1a, 0x30, 0x24, 0x31, 0x83, 0x4a, 0x54, 0xb4, 0x55, 0xe7, 0x3b, 0x9f, 0x1a, 0x95, 0x84, 0x6b, 0x1d, }; static const wycheproof_xdh_test xdh_wei448_3686 = { .name = "xdh_wei448_3686", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3686_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3686_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3686_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 82 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3687 for XDH, tcId is 83 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3687_peerpubkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3687_privkey[] = { 0x14, 0x22, 0x63, 0xda, 0x1a, 0xd1, 0x6f, 0xea, 0x83, 0xa2, 0xc5, 0xa4, 0xec, 0x0b, 0x57, 0xf5, 0x92, 0x0b, 0x4a, 0x18, 0x1b, 0x70, 0x59, 0x61, 0xaa, 0x95, 0x9b, 0x6f, 0x3a, 0x47, 0x79, 0x61, 0xbd, 0xcd, 0x36, 0x64, 0xf8, 0x8d, 0x3a, 0x81, 0x30, 0x55, 0xd2, 0x4d, 0x22, 0x69, 0x8d, 0xb0, 0xa9, 0x0f, 0x14, 0x8d, 0x44, 0xd3, 0xe3, 0xdb, }; static const unsigned char xdh_wei448_3687_sharedsecret[] = { 0x84, 0xd1, 0xde, 0xbc, 0x9a, 0x4e, 0xd0, 0x3b, 0x2d, 0xf0, 0xfa, 0x8d, 0x9f, 0xb1, 0xf0, 0xfc, 0xa9, 0x07, 0x20, 0xe6, 0xd2, 0x7c, 0x2a, 0x08, 0xa8, 0xb6, 0x1d, 0xb5, 0xa8, 0xd7, 0xd0, 0xdd, 0x12, 0xae, 0x7a, 0xe3, 0x1d, 0x96, 0x7b, 0x54, 0x25, 0x4b, 0x5c, 0xcc, 0x79, 0x0a, 0xfd, 0xf8, 0x44, 0x66, 0xa1, 0xe8, 0xe4, 0xd9, 0x41, 0x75, }; static const wycheproof_xdh_test xdh_wei448_3687 = { .name = "xdh_wei448_3687", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3687_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3687_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3687_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 83 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3688 for XDH, tcId is 84 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3688_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3688_privkey[] = { 0xd0, 0xab, 0xb3, 0x22, 0x4e, 0xc5, 0x0b, 0x0c, 0x8a, 0x9b, 0x23, 0xba, 0x7b, 0x08, 0xb2, 0x46, 0x5f, 0x0d, 0x18, 0x94, 0x64, 0xed, 0xeb, 0x44, 0x62, 0xf4, 0x13, 0x30, 0x60, 0xe2, 0xab, 0xe3, 0x2b, 0x75, 0x6e, 0x6a, 0xa4, 0x49, 0x2d, 0x44, 0x37, 0x68, 0x40, 0x18, 0xe9, 0x88, 0x5a, 0x3a, 0xe1, 0x47, 0xf6, 0x39, 0x4d, 0xa0, 0x7a, 0x9f, }; static const unsigned char xdh_wei448_3688_sharedsecret[] = { 0x23, 0x43, 0x69, 0x9c, 0x73, 0x1e, 0xf8, 0x75, 0xb7, 0x18, 0x2f, 0x47, 0x95, 0x4c, 0xd4, 0x1f, 0x3c, 0xb0, 0x4c, 0x8d, 0x92, 0x1f, 0xe9, 0x17, 0xff, 0x83, 0x5d, 0xdd, 0xa0, 0x8d, 0x11, 0x39, 0xe6, 0x38, 0x27, 0xb7, 0x51, 0x0c, 0x39, 0xb2, 0xa3, 0x03, 0x1e, 0x1e, 0xc6, 0x93, 0x33, 0x69, 0xd4, 0x9f, 0x98, 0xea, 0x54, 0x8f, 0x6b, 0x6c, }; static const wycheproof_xdh_test xdh_wei448_3688 = { .name = "xdh_wei448_3688", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3688_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3688_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3688_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 84 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3689 for XDH, tcId is 85 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3689_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, }; static const unsigned char xdh_wei448_3689_privkey[] = { 0x30, 0x34, 0xf9, 0x58, 0x9b, 0xf9, 0x5d, 0x1d, 0x00, 0xa1, 0x81, 0xb2, 0xa4, 0x24, 0x36, 0xfa, 0x04, 0x99, 0xae, 0x54, 0xec, 0xd9, 0x88, 0xc3, 0x31, 0x99, 0x37, 0x09, 0xaa, 0xdd, 0x25, 0xbf, 0x1a, 0xf3, 0xac, 0xa2, 0x3f, 0x11, 0x0b, 0x3a, 0x21, 0x1a, 0x87, 0xe2, 0xcd, 0x9a, 0x34, 0xff, 0xad, 0xbe, 0x16, 0xa9, 0x33, 0xdd, 0x28, 0xaf, }; static const unsigned char xdh_wei448_3689_sharedsecret[] = { 0x9a, 0xb0, 0x2a, 0xec, 0x3d, 0x2b, 0x9f, 0x72, 0x72, 0xdc, 0xf1, 0xa8, 0xa0, 0xfa, 0x78, 0xe8, 0x93, 0xa9, 0x30, 0xa3, 0x62, 0xcc, 0xba, 0xca, 0x73, 0x77, 0x3a, 0xf3, 0xbf, 0xac, 0xb7, 0x72, 0x61, 0x13, 0xc5, 0x4c, 0x3e, 0x12, 0x6a, 0xd2, 0x93, 0xbb, 0xe7, 0xcc, 0x0d, 0x52, 0x9d, 0xb3, 0xa9, 0x67, 0xcb, 0x6f, 0x18, 0xf0, 0xeb, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_3689 = { .name = "xdh_wei448_3689", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3689_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3689_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3689_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "non-canonical public key, tcId is 85 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3690 for XDH, tcId is 86 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3690_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3690_privkey[] = { 0x14, 0x21, 0x5f, 0xc7, 0x90, 0xbe, 0x32, 0x39, 0xcf, 0xc8, 0xc3, 0xf4, 0x5f, 0xed, 0x60, 0x2b, 0xca, 0xb4, 0xe1, 0x85, 0x3a, 0x5d, 0x03, 0x97, 0xbd, 0x45, 0xbf, 0xd0, 0xa5, 0x46, 0xde, 0x75, 0x55, 0xa6, 0x0b, 0x4d, 0x68, 0x4d, 0x9c, 0x54, 0xf8, 0x22, 0xbc, 0x16, 0x8f, 0x1c, 0xb8, 0xc4, 0xc0, 0x3d, 0xae, 0x2f, 0x7e, 0x34, 0xb8, 0xe0, }; static const unsigned char xdh_wei448_3690_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3690 = { .name = "xdh_wei448_3690", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3690_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3690_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3690_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656, tcId is 86 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3691 for XDH, tcId is 87 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)] */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3691_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, }; static const unsigned char xdh_wei448_3691_privkey[] = { 0x70, 0x0a, 0x16, 0x42, 0x84, 0x4c, 0x36, 0x8a, 0x8c, 0xda, 0xe4, 0x11, 0x9b, 0xe4, 0xc1, 0x74, 0x6e, 0xf2, 0x14, 0xbe, 0xed, 0x0d, 0x4b, 0x40, 0x55, 0xe2, 0x35, 0xd5, 0x6b, 0x3c, 0xf8, 0x1f, 0x93, 0x62, 0x50, 0xa0, 0x48, 0x43, 0xc3, 0x7a, 0x89, 0x2b, 0xa6, 0xb5, 0x09, 0xb7, 0x5d, 0xb6, 0x51, 0x61, 0x60, 0x4c, 0xf9, 0xa4, 0x51, 0xf3, }; static const unsigned char xdh_wei448_3691_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3691 = { .name = "xdh_wei448_3691", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3691_peerpubkey, .peerpubkeylen = 57, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3691_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3691_sharedsecret, .sharedsecretlen = 56, .result = -1, .comment = "public key = 726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614657, tcId is 87 in file x448_test.json [!!!WARNING: this test has been patched from 'acceptable' to 'invalid'! (X448 incorrect length, see https://github.com/google/wycheproof/issues/76)]", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3692 for XDH, tcId is 88 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3692_peerpubkey[] = { 0x3e, 0xb7, 0xa8, 0x29, 0xb0, 0xcd, 0x20, 0xf5, 0xbc, 0xfc, 0x0b, 0x59, 0x9b, 0x6f, 0xec, 0xcf, 0x6d, 0xa4, 0x62, 0x71, 0x07, 0xbd, 0xb0, 0xd4, 0xf3, 0x45, 0xb4, 0x30, 0x27, 0xd8, 0xb9, 0x72, 0xfc, 0x3e, 0x34, 0xfb, 0x42, 0x32, 0xa1, 0x3c, 0xa7, 0x06, 0xdc, 0xb5, 0x7a, 0xec, 0x3d, 0xae, 0x07, 0xbd, 0xc1, 0xc6, 0x7b, 0xf3, 0x36, 0x09, }; static const unsigned char xdh_wei448_3692_privkey[] = { 0x9a, 0x8f, 0x49, 0x25, 0xd1, 0x51, 0x9f, 0x57, 0x75, 0xcf, 0x46, 0xb0, 0x4b, 0x58, 0x00, 0xd4, 0xee, 0x9e, 0xe8, 0xba, 0xe8, 0xbc, 0x55, 0x65, 0xd4, 0x98, 0xc2, 0x8d, 0xd9, 0xc9, 0xba, 0xf5, 0x74, 0xa9, 0x41, 0x97, 0x44, 0x89, 0x73, 0x91, 0x00, 0x63, 0x82, 0xa6, 0xf1, 0x27, 0xab, 0x1d, 0x9a, 0xc2, 0xd8, 0xc0, 0xa5, 0x98, 0x72, 0x6b, }; static const unsigned char xdh_wei448_3692_sharedsecret[] = { 0x07, 0xff, 0xf4, 0x18, 0x1a, 0xc6, 0xcc, 0x95, 0xec, 0x1c, 0x16, 0xa9, 0x4a, 0x0f, 0x74, 0xd1, 0x2d, 0xa2, 0x32, 0xce, 0x40, 0xa7, 0x75, 0x52, 0x28, 0x1d, 0x28, 0x2b, 0xb6, 0x0c, 0x0b, 0x56, 0xfd, 0x24, 0x64, 0xc3, 0x35, 0x54, 0x39, 0x36, 0x52, 0x1c, 0x24, 0x40, 0x30, 0x85, 0xd5, 0x9a, 0x44, 0x9a, 0x50, 0x37, 0x51, 0x4a, 0x87, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3692 = { .name = "xdh_wei448_3692", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3692_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3692_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3692_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "RFC 8037, Section A.7, tcId is 88 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3693 for XDH, tcId is 89 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3693_peerpubkey[] = { 0xb9, 0x1a, 0x0c, 0x5a, 0xd4, 0x97, 0xd9, 0x5f, 0x15, 0xdf, 0x62, 0xe4, 0x23, 0x1e, 0xda, 0xaa, 0xab, 0x21, 0xd8, 0x29, 0x53, 0xfc, 0xde, 0x09, 0xea, 0xb1, 0x64, 0x20, 0x97, 0x45, 0xaa, 0xb6, 0xfe, 0x9d, 0x35, 0x3a, 0x0d, 0xa3, 0x28, 0xfa, 0x81, 0x47, 0x93, 0x9e, 0x63, 0xad, 0x56, 0xd1, 0xc0, 0xd2, 0xc0, 0xbd, 0xdd, 0x95, 0xda, 0x50, }; static const unsigned char xdh_wei448_3693_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3693_sharedsecret[] = { 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3693 = { .name = "xdh_wei448_3693", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3693_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3693_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3693_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 89 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3694 for XDH, tcId is 90 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3694_peerpubkey[] = { 0x7b, 0xae, 0x31, 0x6c, 0x8f, 0xb6, 0xd7, 0x59, 0xa3, 0xbe, 0x62, 0x5b, 0xb7, 0xc5, 0xe7, 0x5e, 0xc6, 0x4e, 0x3c, 0xb7, 0xde, 0xdd, 0x3d, 0xfa, 0x05, 0x77, 0x11, 0x46, 0xaf, 0x2d, 0xc4, 0x5e, 0x64, 0x24, 0x48, 0x9b, 0x3d, 0x96, 0xf6, 0x31, 0x37, 0xab, 0x3c, 0xaa, 0x9d, 0x26, 0x1c, 0x49, 0xa2, 0x14, 0x66, 0x28, 0x04, 0xaf, 0x48, 0x46, }; static const unsigned char xdh_wei448_3694_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3694_sharedsecret[] = { 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3694 = { .name = "xdh_wei448_3694", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3694_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3694_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3694_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 90 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3695 for XDH, tcId is 91 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3695_peerpubkey[] = { 0xc5, 0x51, 0x02, 0x72, 0x88, 0xf7, 0x73, 0x64, 0x65, 0x90, 0x79, 0xb5, 0xdb, 0x73, 0x68, 0xb4, 0xcf, 0x8f, 0xd6, 0xf1, 0xd7, 0x0d, 0xc1, 0xf1, 0x45, 0xa3, 0x3e, 0x85, 0xd3, 0x71, 0xe0, 0x7a, 0x3a, 0xfe, 0xad, 0x48, 0x4a, 0x0e, 0xad, 0xf0, 0xba, 0x5d, 0x04, 0x3b, 0xc2, 0x7e, 0xa1, 0x95, 0xf2, 0x00, 0x53, 0x10, 0xbe, 0xea, 0x24, 0xa0, }; static const unsigned char xdh_wei448_3695_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3695_sharedsecret[] = { 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3695 = { .name = "xdh_wei448_3695", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3695_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3695_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3695_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 91 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3696 for XDH, tcId is 92 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3696_peerpubkey[] = { 0xd3, 0xc5, 0x30, 0x27, 0x9c, 0x9b, 0x5a, 0xce, 0x05, 0x19, 0xde, 0xe3, 0x2e, 0xe9, 0x32, 0xc3, 0x20, 0x42, 0x5d, 0x71, 0x7f, 0x55, 0x9b, 0x34, 0xca, 0x8e, 0x24, 0x54, 0x0f, 0xb7, 0x6f, 0xd9, 0xac, 0xe7, 0x78, 0x5e, 0x52, 0x91, 0x16, 0xb2, 0x20, 0xb0, 0x6f, 0x5e, 0xc0, 0xba, 0x4a, 0x05, 0x23, 0x7f, 0xcf, 0xd0, 0x0b, 0xa3, 0xc7, 0xde, }; static const unsigned char xdh_wei448_3696_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3696_sharedsecret[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3696 = { .name = "xdh_wei448_3696", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3696_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3696_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3696_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 92 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3697 for XDH, tcId is 93 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3697_peerpubkey[] = { 0x43, 0xb6, 0x1e, 0x50, 0x2c, 0x66, 0x2f, 0x9c, 0x9a, 0x06, 0x39, 0xd2, 0xaf, 0x3e, 0x88, 0xde, 0x77, 0xb3, 0xb7, 0x0b, 0xc3, 0xbb, 0x2a, 0xbe, 0xab, 0xa3, 0x9d, 0xd5, 0xe7, 0x13, 0x2d, 0xdd, 0xcf, 0x14, 0xa1, 0x8d, 0x9d, 0x7c, 0xa4, 0x01, 0x3a, 0x33, 0xb5, 0x47, 0x87, 0xaf, 0xde, 0xd9, 0xd8, 0x7d, 0x5d, 0x67, 0xd4, 0x3c, 0x30, 0xd6, }; static const unsigned char xdh_wei448_3697_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3697_sharedsecret[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3697 = { .name = "xdh_wei448_3697", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3697_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3697_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3697_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 93 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3698 for XDH, tcId is 94 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3698_peerpubkey[] = { 0x2e, 0xe0, 0x34, 0x14, 0x7e, 0x21, 0xfd, 0x9f, 0xc9, 0x95, 0x68, 0x34, 0x8e, 0x88, 0x28, 0x9c, 0x9d, 0x8c, 0x83, 0x91, 0xd2, 0x51, 0x50, 0xfa, 0xe8, 0x9f, 0x76, 0x3f, 0xb6, 0x4f, 0x96, 0x2c, 0xb8, 0x4a, 0xd3, 0x14, 0xc2, 0x96, 0x08, 0x71, 0xb9, 0x51, 0x11, 0xbb, 0x0f, 0x18, 0x01, 0x11, 0x4c, 0x3a, 0x12, 0x16, 0xbe, 0xe7, 0xed, 0xd6, }; static const unsigned char xdh_wei448_3698_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3698_sharedsecret[] = { 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3698 = { .name = "xdh_wei448_3698", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3698_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3698_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3698_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "edge case for shared secret, tcId is 94 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3699 for XDH, tcId is 95 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3699_peerpubkey[] = { 0xeb, 0xad, 0x9b, 0x8e, 0x2e, 0x7f, 0xdf, 0xd6, 0xc9, 0x3e, 0x2f, 0x3c, 0xf4, 0xe8, 0x1b, 0xe7, 0xbb, 0xfb, 0x34, 0xe6, 0xde, 0x7b, 0xba, 0xef, 0x9c, 0x95, 0x7d, 0x3a, 0x03, 0x24, 0xf9, 0x78, 0x19, 0x50, 0xc7, 0x03, 0x92, 0xee, 0x53, 0x58, 0x79, 0x31, 0xc3, 0xf1, 0xad, 0x30, 0x50, 0x59, 0x7d, 0x07, 0x64, 0x4f, 0x0e, 0x8a, 0x0a, 0xb3, }; static const unsigned char xdh_wei448_3699_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3699_sharedsecret[] = { 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3699 = { .name = "xdh_wei448_3699", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3699_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3699_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3699_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 95 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3700 for XDH, tcId is 96 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3700_peerpubkey[] = { 0x6a, 0x2b, 0xc1, 0x33, 0xf7, 0xc8, 0x4d, 0x9c, 0x23, 0x39, 0xa7, 0xe9, 0xea, 0x8d, 0xcd, 0xb7, 0xf6, 0xd0, 0x51, 0xfc, 0x5d, 0xb9, 0x27, 0x9c, 0x9f, 0x6e, 0x0a, 0xff, 0x35, 0x17, 0x6c, 0xfd, 0x3b, 0x11, 0xe7, 0xe6, 0xc2, 0xee, 0xc5, 0x20, 0x5b, 0xfe, 0x82, 0x61, 0x2d, 0x2b, 0x0b, 0x3d, 0xf6, 0x73, 0x45, 0x20, 0x36, 0xc5, 0x3f, 0xb8, }; static const unsigned char xdh_wei448_3700_privkey[] = { 0x70, 0xef, 0x97, 0x86, 0x5b, 0xee, 0x47, 0xcf, 0x00, 0xde, 0x84, 0x60, 0x64, 0x08, 0xe2, 0x70, 0x1a, 0xd8, 0xbf, 0x6e, 0xd3, 0x11, 0x03, 0x97, 0x64, 0xa3, 0xa4, 0xf1, 0x30, 0xb9, 0x8a, 0x5b, 0xe4, 0xb1, 0xce, 0xdb, 0x7c, 0xb8, 0x55, 0x84, 0xa3, 0x52, 0x0e, 0x14, 0x2d, 0x47, 0x4d, 0xc9, 0xcc, 0xb9, 0x09, 0xa0, 0x73, 0xa9, 0x76, 0xbf, }; static const unsigned char xdh_wei448_3700_sharedsecret[] = { 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3700 = { .name = "xdh_wei448_3700", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3700_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3700_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3700_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "edge case for shared secret, tcId is 96 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3701 for XDH, tcId is 97 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3701_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3701_privkey[] = { 0xc8, 0x17, 0xe3, 0xc0, 0x8e, 0x00, 0x17, 0xa5, 0xa4, 0x42, 0x2c, 0x70, 0x09, 0x5e, 0xdf, 0x06, 0x2d, 0x71, 0xf4, 0x52, 0x13, 0x97, 0x15, 0xed, 0xcc, 0xd0, 0x7c, 0x46, 0xbb, 0xfb, 0x82, 0x77, 0x53, 0xb9, 0x2c, 0x70, 0xe4, 0x95, 0x83, 0xce, 0x8b, 0xfa, 0x44, 0x64, 0x1a, 0x73, 0x82, 0x25, 0x8e, 0xa9, 0x03, 0xd6, 0xa8, 0x32, 0xc9, 0xeb, }; static const unsigned char xdh_wei448_3701_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3701 = { .name = "xdh_wei448_3701", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3701_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3701_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3701_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 97 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3702 for XDH, tcId is 98 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3702_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3702_privkey[] = { 0xdc, 0x05, 0xe8, 0xc9, 0xde, 0xce, 0xf9, 0xd3, 0xe3, 0x50, 0xee, 0x83, 0xae, 0xe2, 0x50, 0x2c, 0xed, 0xd7, 0x6f, 0x07, 0xd2, 0x36, 0x4d, 0xe9, 0x93, 0xb7, 0xef, 0x23, 0x7a, 0x05, 0x5f, 0x34, 0x8d, 0xcb, 0x4c, 0x43, 0x64, 0xa5, 0x9d, 0x7d, 0x31, 0xed, 0xc7, 0xab, 0x78, 0xf2, 0xca, 0x25, 0x4e, 0x2c, 0x81, 0x09, 0x75, 0xc3, 0xf5, 0x83, }; static const unsigned char xdh_wei448_3702_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3702 = { .name = "xdh_wei448_3702", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3702_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3702_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3702_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 98 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3703 for XDH, tcId is 99 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3703_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3703_privkey[] = { 0x80, 0x3f, 0x68, 0xff, 0x98, 0x12, 0x67, 0x6a, 0xb8, 0x09, 0x58, 0x2f, 0x0b, 0x93, 0xe8, 0x04, 0x61, 0x59, 0x8c, 0x98, 0x7b, 0xc7, 0xb2, 0xe4, 0xe0, 0xa8, 0xbe, 0x63, 0x31, 0x5c, 0x4f, 0x0f, 0x0a, 0x3f, 0xee, 0x60, 0x7f, 0x44, 0xd3, 0x0a, 0x55, 0xbe, 0x63, 0xf0, 0x95, 0x61, 0xd9, 0xaf, 0x93, 0xe0, 0xa1, 0xc9, 0xcf, 0x0e, 0xd7, 0x91, }; static const unsigned char xdh_wei448_3703_sharedsecret[] = { 0x27, 0x54, 0xaa, 0x14, 0x4a, 0xc7, 0x00, 0xad, 0x18, 0x3b, 0x9c, 0x20, 0xcd, 0x26, 0x27, 0xdb, 0x3c, 0x51, 0xe7, 0x64, 0x40, 0x55, 0xf7, 0x1f, 0x46, 0xe2, 0xb9, 0x99, 0xd3, 0xe1, 0x3e, 0x34, 0x64, 0x54, 0x56, 0x0f, 0xa7, 0x2a, 0x16, 0x48, 0x85, 0x61, 0xe6, 0x0d, 0x6b, 0x64, 0x23, 0xed, 0x50, 0xd1, 0xe7, 0x5a, 0x48, 0x99, 0xa8, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3703 = { .name = "xdh_wei448_3703", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3703_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3703_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3703_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 99 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3704 for XDH, tcId is 100 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3704_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3704_privkey[] = { 0x04, 0xdf, 0xf9, 0x01, 0xe6, 0x90, 0x7e, 0xf6, 0x3c, 0x05, 0x90, 0xc6, 0x09, 0x00, 0x65, 0xef, 0x5c, 0x3c, 0x0e, 0xd0, 0x3d, 0x1a, 0x99, 0x49, 0xbb, 0xda, 0x2b, 0xd2, 0xd7, 0xcf, 0x25, 0xa3, 0xe5, 0x4e, 0x5f, 0x87, 0xee, 0x15, 0x91, 0x1e, 0xff, 0xb9, 0xff, 0x86, 0xba, 0xec, 0x40, 0x76, 0xd5, 0x6c, 0x8e, 0x95, 0x36, 0x70, 0xbf, 0x9b, }; static const unsigned char xdh_wei448_3704_sharedsecret[] = { 0x00, 0x7a, 0x85, 0x0b, 0x8e, 0x86, 0x37, 0x83, 0xcb, 0x6c, 0x17, 0x5c, 0x9b, 0xab, 0xbb, 0xd3, 0x5a, 0xbe, 0x37, 0xd4, 0x13, 0xa8, 0x88, 0xd9, 0x76, 0xac, 0xc6, 0x8b, 0x70, 0xf6, 0xe6, 0x66, 0x9c, 0x7c, 0x50, 0x95, 0xc2, 0xcf, 0xcc, 0xc5, 0x28, 0x28, 0x46, 0x87, 0xf2, 0x53, 0xdd, 0xb1, 0xdd, 0xc3, 0xea, 0x09, 0x10, 0xbd, 0x14, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_3704 = { .name = "xdh_wei448_3704", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3704_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3704_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3704_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 100 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3705 for XDH, tcId is 101 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3705_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3705_privkey[] = { 0x64, 0xd5, 0xe0, 0x00, 0x0a, 0xeb, 0xdf, 0x9b, 0x75, 0x74, 0x02, 0xd0, 0x8a, 0xf6, 0x46, 0xc6, 0xf3, 0x1d, 0x66, 0x28, 0xbe, 0x80, 0x6f, 0x64, 0x6f, 0x4c, 0xd4, 0x20, 0xaf, 0x41, 0xab, 0xb3, 0xd1, 0x0c, 0x61, 0xe7, 0x73, 0x23, 0x8c, 0xf7, 0x29, 0xc2, 0x15, 0x5f, 0x94, 0x1a, 0xc2, 0x7e, 0x15, 0xf4, 0xc3, 0x7f, 0x49, 0xb2, 0x95, 0xf6, }; static const unsigned char xdh_wei448_3705_sharedsecret[] = { 0x06, 0x65, 0xa1, 0xc3, 0xd7, 0xa7, 0x47, 0xe5, 0x9e, 0x8d, 0xbe, 0x84, 0x1d, 0xac, 0x1f, 0x40, 0x1d, 0x07, 0x3c, 0xa4, 0x5e, 0xa2, 0x9b, 0xad, 0x45, 0x75, 0x77, 0xd7, 0x92, 0x2f, 0xb9, 0x82, 0x57, 0x70, 0x5f, 0x84, 0xb1, 0x98, 0xa6, 0x8c, 0x2e, 0x2c, 0x3e, 0xd7, 0xb9, 0xe4, 0x23, 0x3e, 0x43, 0xc4, 0x48, 0x87, 0xd7, 0xa8, 0xe0, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_3705 = { .name = "xdh_wei448_3705", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3705_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3705_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3705_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 101 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3706 for XDH, tcId is 102 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3706_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3706_privkey[] = { 0x78, 0xe6, 0xc1, 0x28, 0xfe, 0x70, 0x60, 0x70, 0x5c, 0xe2, 0x2c, 0x63, 0x63, 0xdf, 0xa7, 0xaa, 0x16, 0x9a, 0x38, 0x99, 0x23, 0xd2, 0x1a, 0x31, 0x3c, 0xcf, 0xac, 0xaa, 0x44, 0x60, 0x79, 0x6b, 0x4d, 0xe4, 0x34, 0xbd, 0xd6, 0x73, 0x9f, 0x0d, 0x04, 0x36, 0x71, 0xf9, 0x7f, 0xa8, 0x29, 0x51, 0x75, 0x11, 0xe6, 0xb4, 0x7a, 0xa9, 0x34, 0xf4, }; static const unsigned char xdh_wei448_3706_sharedsecret[] = { 0x07, 0x01, 0xa1, 0xcf, 0x05, 0xb9, 0xed, 0x47, 0x99, 0x15, 0x1d, 0xee, 0xdf, 0xb5, 0xf2, 0xbd, 0x6a, 0xa8, 0x3a, 0x73, 0x90, 0xdd, 0xb2, 0x74, 0x97, 0xe8, 0xa5, 0x9b, 0x9f, 0x8e, 0x18, 0xe2, 0xb2, 0x5a, 0xbb, 0x07, 0x15, 0xe0, 0x84, 0x8b, 0xc3, 0xc2, 0xeb, 0x0b, 0xb2, 0xc9, 0xd6, 0xf0, 0xb3, 0x70, 0xe8, 0x9a, 0x98, 0xef, 0x5b, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_3706 = { .name = "xdh_wei448_3706", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3706_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3706_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3706_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 102 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3707 for XDH, tcId is 103 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3707_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3707_privkey[] = { 0x34, 0x00, 0xca, 0x2d, 0x96, 0xb2, 0x45, 0x7b, 0xd3, 0xcb, 0x6f, 0xef, 0xc3, 0xf5, 0xb5, 0x24, 0xd8, 0x71, 0x33, 0xd6, 0xba, 0x29, 0x56, 0xcc, 0x37, 0x83, 0x2e, 0x8c, 0xb6, 0x27, 0xac, 0x19, 0x5f, 0x77, 0xb1, 0x10, 0x52, 0x58, 0xe4, 0xbb, 0x18, 0xb9, 0x9a, 0x5e, 0xd9, 0x44, 0x40, 0x4b, 0xfa, 0xcb, 0x3a, 0x03, 0x9f, 0xbd, 0xb1, 0x8b, }; static const unsigned char xdh_wei448_3707_sharedsecret[] = { 0xd7, 0xc6, 0x2f, 0x95, 0xa5, 0x2e, 0xed, 0xcf, 0xf9, 0x1b, 0x69, 0xa7, 0x34, 0xae, 0xd3, 0x3f, 0x71, 0xbc, 0xad, 0xe0, 0x15, 0xb5, 0xe6, 0x68, 0xf3, 0xfb, 0x79, 0x90, 0x52, 0x2f, 0x97, 0x96, 0x70, 0xb4, 0x3a, 0x4c, 0x8e, 0xe0, 0x55, 0x85, 0x1d, 0xbd, 0x3b, 0x53, 0x47, 0x46, 0x5e, 0x1d, 0x13, 0xb8, 0xdc, 0xee, 0x62, 0x3e, 0x78, 0x79, }; static const wycheproof_xdh_test xdh_wei448_3707 = { .name = "xdh_wei448_3707", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3707_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3707_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3707_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 103 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3708 for XDH, tcId is 104 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3708_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3708_privkey[] = { 0x9c, 0xfd, 0xbc, 0xba, 0x85, 0x85, 0x5a, 0x0c, 0xa9, 0x73, 0x14, 0xa6, 0x53, 0xc9, 0xa0, 0xa1, 0x6e, 0x83, 0xed, 0xb7, 0x4a, 0xaf, 0x79, 0x9d, 0xdc, 0x18, 0xfd, 0x69, 0x71, 0xe5, 0x46, 0x44, 0x7f, 0x36, 0x1d, 0x33, 0xd3, 0xdb, 0xb3, 0xea, 0xdc, 0xf0, 0x2f, 0xb2, 0x8f, 0x24, 0x6f, 0x1d, 0x51, 0x07, 0xb9, 0x07, 0x3a, 0x93, 0xcd, 0xcf, }; static const unsigned char xdh_wei448_3708_sharedsecret[] = { 0xed, 0x35, 0x4b, 0x70, 0x81, 0xfc, 0x03, 0x66, 0xd5, 0x74, 0xf4, 0x69, 0x6b, 0xef, 0x60, 0xb3, 0x09, 0x9d, 0x55, 0xcb, 0x08, 0x32, 0xe8, 0x22, 0x61, 0x9b, 0x8b, 0x4d, 0x2d, 0x57, 0xff, 0xe3, 0xb3, 0xec, 0x29, 0x87, 0x75, 0x5d, 0xba, 0x08, 0xbd, 0xab, 0x6b, 0xbf, 0x5a, 0x28, 0x42, 0x76, 0x74, 0x5e, 0x0b, 0xd4, 0xfe, 0xf9, 0xba, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3708 = { .name = "xdh_wei448_3708", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3708_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3708_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3708_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 104 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3709 for XDH, tcId is 105 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3709_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3709_privkey[] = { 0xc4, 0x09, 0x1f, 0x83, 0xdd, 0xdf, 0xf4, 0x4f, 0x26, 0xe6, 0x0f, 0xe3, 0xda, 0xf2, 0xea, 0x2a, 0x0d, 0xe8, 0x86, 0x72, 0x7a, 0x43, 0x10, 0x59, 0x10, 0x21, 0xcd, 0x86, 0x82, 0xbd, 0xc3, 0xf5, 0xda, 0x91, 0x00, 0xad, 0xff, 0x5b, 0x22, 0x30, 0xb3, 0xac, 0xd8, 0x36, 0xb3, 0xa4, 0x55, 0xdb, 0x83, 0x52, 0xa2, 0xc2, 0x7e, 0x69, 0xd1, 0xbe, }; static const unsigned char xdh_wei448_3709_sharedsecret[] = { 0x10, 0x0c, 0xdb, 0xa5, 0x2c, 0xd0, 0x5a, 0x3c, 0x18, 0x21, 0x9d, 0xb9, 0x81, 0x54, 0xd9, 0x0c, 0x05, 0xca, 0x6b, 0x4d, 0xce, 0xfa, 0xa0, 0xce, 0xf9, 0x05, 0x38, 0xe7, 0xb8, 0x08, 0x79, 0xf2, 0xd6, 0x7d, 0x5a, 0xb2, 0xc3, 0x1c, 0x28, 0xf7, 0x7b, 0x38, 0x96, 0x9d, 0x81, 0x7a, 0x78, 0xd0, 0x5f, 0x6a, 0x55, 0x99, 0xb8, 0x4b, 0x19, 0x41, }; static const wycheproof_xdh_test xdh_wei448_3709 = { .name = "xdh_wei448_3709", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3709_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3709_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3709_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 105 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3710 for XDH, tcId is 106 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3710_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3710_privkey[] = { 0xdc, 0xc6, 0x1f, 0xe1, 0x8e, 0xab, 0x64, 0xde, 0x8b, 0x96, 0x87, 0xb2, 0x8b, 0xf0, 0x2d, 0x9e, 0x53, 0x32, 0x0c, 0x98, 0xe1, 0xcf, 0x1e, 0x18, 0x45, 0x31, 0x1e, 0x17, 0xea, 0xaf, 0x7e, 0x27, 0x47, 0x67, 0xd9, 0xe6, 0x79, 0x78, 0x05, 0xd5, 0x80, 0xfc, 0x48, 0xc2, 0x49, 0xec, 0x37, 0x6d, 0xb9, 0x22, 0x60, 0xbc, 0x39, 0x0e, 0xc4, 0x89, }; static const unsigned char xdh_wei448_3710_sharedsecret[] = { 0xe8, 0x50, 0x50, 0xba, 0x91, 0xb8, 0xcd, 0xd6, 0xed, 0x86, 0xce, 0xc4, 0x7b, 0xe3, 0x16, 0x2d, 0x70, 0x59, 0x9c, 0xa3, 0x43, 0x3e, 0x7c, 0x6d, 0x3e, 0xc8, 0xff, 0xfe, 0x75, 0x8b, 0x60, 0x79, 0x69, 0xf9, 0x86, 0xe5, 0xc0, 0x10, 0xbc, 0xcf, 0xf0, 0xff, 0xe1, 0x8e, 0x86, 0x1f, 0xf8, 0x7b, 0x46, 0x20, 0x40, 0xb6, 0x11, 0xd4, 0x04, 0x8e, }; static const wycheproof_xdh_test xdh_wei448_3710 = { .name = "xdh_wei448_3710", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3710_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3710_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3710_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 106 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3711 for XDH, tcId is 107 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3711_peerpubkey[] = { 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3711_privkey[] = { 0x38, 0x0f, 0xaa, 0x61, 0xba, 0x00, 0xb7, 0xf4, 0x5d, 0x70, 0xea, 0xc9, 0x8d, 0x0c, 0x5b, 0x42, 0x00, 0x41, 0x8d, 0xe5, 0xfa, 0xad, 0x0f, 0x1e, 0x21, 0xe4, 0xc9, 0x24, 0x71, 0x02, 0x29, 0x26, 0x55, 0xd6, 0x76, 0x5d, 0x7d, 0x84, 0xc6, 0xfc, 0xe5, 0x30, 0x9b, 0x80, 0x04, 0x04, 0x5d, 0xae, 0xa6, 0xd7, 0xd7, 0xdc, 0xad, 0x46, 0x28, 0xf1, }; static const unsigned char xdh_wei448_3711_sharedsecret[] = { 0x2a, 0xf9, 0x62, 0x7c, 0xdc, 0x91, 0x9e, 0x6a, 0xff, 0xf5, 0xf9, 0x1c, 0x8d, 0xe2, 0xe2, 0x35, 0xf6, 0xea, 0x2f, 0xc3, 0x7a, 0xf7, 0xbc, 0xe7, 0xbd, 0xdf, 0x80, 0xe0, 0x31, 0x97, 0xd1, 0x3b, 0x8f, 0xa4, 0x24, 0x58, 0x84, 0x4c, 0xc7, 0x91, 0x8d, 0xe6, 0x28, 0xc8, 0x32, 0x81, 0xcc, 0xf4, 0xd3, 0x9c, 0x1e, 0x68, 0x55, 0xc4, 0x26, 0x76, }; static const wycheproof_xdh_test xdh_wei448_3711 = { .name = "xdh_wei448_3711", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3711_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3711_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3711_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 107 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3712 for XDH, tcId is 108 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3712_peerpubkey[] = { 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3712_privkey[] = { 0xcc, 0x44, 0x2e, 0xe9, 0xdd, 0xeb, 0x3f, 0x1f, 0xf0, 0x4c, 0x32, 0x56, 0xde, 0x35, 0x1a, 0xeb, 0xa2, 0x2d, 0x82, 0x26, 0xa4, 0x9b, 0xf2, 0x1c, 0xa4, 0x13, 0xa0, 0x7f, 0xac, 0x9e, 0x21, 0x33, 0x20, 0x5c, 0x46, 0x8e, 0xf2, 0xa4, 0x7f, 0x10, 0xc7, 0xbe, 0xf3, 0x5f, 0x1c, 0xe7, 0x62, 0x21, 0xbf, 0x8d, 0x61, 0xca, 0x4b, 0x13, 0x36, 0xaf, }; static const unsigned char xdh_wei448_3712_sharedsecret[] = { 0x88, 0xe6, 0x53, 0xd8, 0x87, 0xae, 0xf8, 0xf3, 0xd1, 0xaf, 0xb7, 0x74, 0xd3, 0x7a, 0x85, 0xdd, 0x3f, 0x05, 0xb8, 0xbc, 0xc9, 0x24, 0xce, 0x8c, 0x48, 0x2f, 0x61, 0x27, 0x6b, 0x27, 0x90, 0x6b, 0x94, 0xa5, 0xd6, 0xaf, 0xa2, 0xfe, 0x77, 0xd5, 0x39, 0xaf, 0x69, 0x3d, 0x62, 0x66, 0x47, 0x0c, 0xb4, 0x74, 0x98, 0x2c, 0xbc, 0x95, 0x8d, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3712 = { .name = "xdh_wei448_3712", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3712_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3712_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3712_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 108 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3713 for XDH, tcId is 109 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3713_peerpubkey[] = { 0x75, 0x01, 0x3b, 0x73, 0x52, 0xd4, 0x8e, 0x25, 0x27, 0x81, 0x1e, 0xdd, 0x48, 0xba, 0x39, 0x2c, 0x60, 0xd3, 0xaf, 0x73, 0x4b, 0xb6, 0xe0, 0xf3, 0x5e, 0xc5, 0x7a, 0xf6, 0xcc, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0x35, 0x65, 0xd1, 0xd4, 0xd7, 0x1a, 0x0e, 0x86, 0x71, 0x65, 0xad, 0x7e, 0xdc, 0x62, 0x12, }; static const unsigned char xdh_wei448_3713_privkey[] = { 0xe4, 0xc8, 0xfd, 0x4e, 0x36, 0xe5, 0xc0, 0x67, 0x88, 0x9f, 0xc5, 0xfc, 0xc4, 0x2f, 0xe9, 0xbf, 0x9d, 0xbb, 0xf5, 0xa6, 0x2b, 0x74, 0x58, 0xb9, 0x4e, 0x38, 0x4a, 0x99, 0x18, 0x93, 0x05, 0x01, 0x49, 0xa8, 0x11, 0x5a, 0x3e, 0xc6, 0xaa, 0xb5, 0x3c, 0xf4, 0xe6, 0x94, 0x52, 0x6b, 0x49, 0x09, 0xd8, 0x5c, 0xb3, 0x0e, 0x7d, 0x70, 0x73, 0x88, }; static const unsigned char xdh_wei448_3713_sharedsecret[] = { 0x98, 0x39, 0x2b, 0x35, 0x9f, 0x7f, 0xb1, 0xde, 0x77, 0xa5, 0x21, 0x2e, 0xe9, 0xde, 0x63, 0x65, 0xa6, 0xa4, 0xbf, 0x6e, 0x1d, 0x4a, 0xe6, 0xa3, 0x74, 0xf4, 0xe6, 0x67, 0xa4, 0x98, 0x85, 0xb2, 0xc9, 0x36, 0x7b, 0x1c, 0x95, 0xc8, 0xb8, 0x90, 0xe1, 0x9f, 0x53, 0x0e, 0x30, 0xbe, 0xe7, 0xfb, 0x7a, 0x7e, 0xfb, 0x35, 0x00, 0x8a, 0x4e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_3713 = { .name = "xdh_wei448_3713", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3713_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3713_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3713_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 109 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3714 for XDH, tcId is 110 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3714_peerpubkey[] = { 0xe9, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_3714_privkey[] = { 0xac, 0x81, 0xab, 0x6f, 0x22, 0x44, 0x54, 0xa8, 0xf8, 0x73, 0x11, 0x7d, 0x2e, 0x64, 0x8e, 0xc0, 0x84, 0x69, 0x31, 0xe7, 0xef, 0x64, 0x9e, 0x90, 0xeb, 0x38, 0x2c, 0x71, 0x33, 0x10, 0xba, 0x79, 0x11, 0xd2, 0xcb, 0x3f, 0xf1, 0x79, 0x76, 0x32, 0xf4, 0x39, 0xbf, 0xd6, 0xeb, 0xb3, 0x99, 0x09, 0x89, 0x68, 0xd4, 0x4b, 0x80, 0xfb, 0x63, 0x97, }; static const unsigned char xdh_wei448_3714_sharedsecret[] = { 0x20, 0x6e, 0x12, 0xa6, 0x66, 0xe8, 0xba, 0xdb, 0xdf, 0x25, 0x4d, 0x71, 0x80, 0xd9, 0x79, 0x27, 0x3f, 0x61, 0xd6, 0x6d, 0xa1, 0x4a, 0xb9, 0x4e, 0xa9, 0xce, 0x2d, 0x26, 0x10, 0x99, 0x6d, 0xea, 0xb7, 0x9a, 0x51, 0xc8, 0x78, 0x52, 0x21, 0x68, 0x97, 0xbb, 0xca, 0xb2, 0xcc, 0x4d, 0xa8, 0x9c, 0xc7, 0x7e, 0x56, 0x6a, 0x4b, 0x4e, 0x50, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3714 = { .name = "xdh_wei448_3714", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3714_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3714_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3714_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 110 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3715 for XDH, tcId is 111 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3715_peerpubkey[] = { 0xeb, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0x74, 0x73, 0x58, 0xc0, 0xa6, 0x5f, 0xe7, 0x96, 0x6c, 0xc1, 0xe7, 0xbd, 0x8a, 0xf5, 0xec, 0x99, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0x6b, 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, }; static const unsigned char xdh_wei448_3715_privkey[] = { 0x78, 0x29, 0x04, 0x1f, 0x1c, 0xd5, 0x9e, 0x15, 0x46, 0x26, 0xe3, 0x28, 0x9d, 0x99, 0x3e, 0x42, 0xc3, 0xee, 0x2d, 0x2a, 0x53, 0x1e, 0xd4, 0xd5, 0x89, 0x90, 0xad, 0xf8, 0x56, 0xdf, 0x28, 0x6f, 0xf9, 0xf4, 0xc5, 0xb5, 0xb1, 0xa3, 0xd1, 0x5e, 0x40, 0xb2, 0x97, 0x75, 0xed, 0xfd, 0x66, 0x57, 0xc9, 0x3d, 0xab, 0xa3, 0x6a, 0x42, 0x02, 0xf5, }; static const unsigned char xdh_wei448_3715_sharedsecret[] = { 0x1e, 0x11, 0x74, 0x71, 0xe0, 0x12, 0x91, 0xfe, 0xe7, 0xcd, 0x90, 0x50, 0xc3, 0x1b, 0xff, 0xa5, 0x9d, 0x96, 0xcd, 0x66, 0xdd, 0x2c, 0x32, 0x84, 0xbe, 0x42, 0x36, 0x68, 0x28, 0x71, 0xd2, 0x69, 0x98, 0xbe, 0xbc, 0x0f, 0x3c, 0x7b, 0x14, 0xcc, 0x3a, 0x82, 0x93, 0x92, 0xbc, 0xb8, 0x30, 0x7e, 0x84, 0x50, 0xfb, 0xfd, 0x59, 0x91, 0xe4, 0xdf, }; static const wycheproof_xdh_test xdh_wei448_3715 = { .name = "xdh_wei448_3715", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3715_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3715_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3715_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 111 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3716 for XDH, tcId is 112 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3716_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_3716_privkey[] = { 0xf4, 0xa3, 0x46, 0x0f, 0xc8, 0xd5, 0xa9, 0x8d, 0x42, 0x67, 0x03, 0xdf, 0x39, 0xcb, 0xc1, 0x5d, 0x7f, 0xf0, 0xd3, 0x1d, 0xb4, 0x1a, 0xd6, 0x19, 0xa2, 0x8d, 0x69, 0x21, 0xde, 0xec, 0x6a, 0x3b, 0xed, 0xd1, 0xd7, 0x1c, 0xdf, 0xdf, 0x89, 0x88, 0xd7, 0xe1, 0xd5, 0xaf, 0x08, 0x50, 0xad, 0x4f, 0x56, 0x44, 0x03, 0x39, 0x35, 0xe7, 0x4d, 0x95, }; static const unsigned char xdh_wei448_3716_sharedsecret[] = { 0xea, 0xc9, 0x93, 0x28, 0x79, 0x47, 0xde, 0xfb, 0x6b, 0xb8, 0x4c, 0x60, 0x87, 0x13, 0x0d, 0x7b, 0x9f, 0xc4, 0x7e, 0x75, 0xb2, 0xc9, 0x45, 0x52, 0xb8, 0xa0, 0xb0, 0x75, 0xe7, 0x1d, 0x27, 0x06, 0x85, 0x50, 0xa2, 0x4d, 0x31, 0x40, 0xc9, 0x40, 0xbc, 0x86, 0x20, 0x1c, 0xc7, 0x6b, 0x83, 0xe2, 0xba, 0xf2, 0x31, 0xc2, 0x6b, 0x14, 0xab, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3716 = { .name = "xdh_wei448_3716", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3716_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3716_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3716_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 112 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3717 for XDH, tcId is 113 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3717_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, }; static const unsigned char xdh_wei448_3717_privkey[] = { 0xe0, 0x3c, 0x56, 0xa2, 0x8c, 0xd0, 0x10, 0xfc, 0x8a, 0x1d, 0x86, 0x68, 0x74, 0x7d, 0x24, 0xf0, 0x6e, 0xbc, 0xc2, 0x88, 0x5e, 0xe4, 0x60, 0xa7, 0xdb, 0x14, 0xc1, 0x48, 0x41, 0xe5, 0x81, 0x89, 0x96, 0x16, 0xca, 0x71, 0x8d, 0x42, 0xc0, 0x6c, 0x06, 0xf2, 0xee, 0xdb, 0x2d, 0x7a, 0x23, 0x06, 0x90, 0xb0, 0x01, 0x0b, 0xd6, 0x7e, 0x77, 0x9a, }; static const unsigned char xdh_wei448_3717_sharedsecret[] = { 0xe2, 0x5a, 0x60, 0xb8, 0x52, 0x3f, 0x3e, 0x15, 0x80, 0x09, 0x8a, 0x06, 0x11, 0xee, 0x54, 0x9e, 0x20, 0x1e, 0x5a, 0x70, 0x4e, 0x39, 0x26, 0x3d, 0x06, 0x77, 0x12, 0xfc, 0x47, 0x22, 0x94, 0xc3, 0x78, 0xca, 0x45, 0xf9, 0x76, 0x70, 0x51, 0xea, 0x45, 0xa9, 0x45, 0xa4, 0x85, 0xf5, 0x6c, 0x0a, 0xff, 0x06, 0x38, 0x8e, 0x6f, 0xc1, 0x64, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_3717 = { .name = "xdh_wei448_3717", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3717_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3717_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3717_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 113 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3718 for XDH, tcId is 114 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3718_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3718_privkey[] = { 0x70, 0x19, 0xc5, 0xdd, 0x32, 0x8e, 0xf8, 0x2c, 0xf5, 0x98, 0x49, 0x0d, 0x2c, 0xae, 0xb3, 0xb7, 0x2c, 0xf9, 0x39, 0x33, 0xee, 0xc1, 0xfd, 0x3f, 0xe1, 0xf6, 0x12, 0xb4, 0x3b, 0x5d, 0xdb, 0xc0, 0x11, 0x3f, 0x71, 0x1b, 0x84, 0xd5, 0x12, 0x23, 0xde, 0x93, 0x8f, 0x42, 0xa6, 0x4f, 0x5f, 0x00, 0x20, 0x44, 0x5c, 0x95, 0x14, 0xac, 0xbe, 0xd0, }; static const unsigned char xdh_wei448_3718_sharedsecret[] = { 0x11, 0x3f, 0xc2, 0x8f, 0x3b, 0xa7, 0x19, 0xfc, 0xee, 0xd2, 0x4a, 0x4a, 0x07, 0xaf, 0x7f, 0x24, 0xa9, 0x81, 0xb2, 0x67, 0x5f, 0x36, 0x65, 0x7c, 0x23, 0xfe, 0x92, 0xbb, 0xe0, 0x18, 0x22, 0x9c, 0xb9, 0x14, 0x78, 0x76, 0x7e, 0x7d, 0xba, 0x65, 0x9b, 0x08, 0xd6, 0xc5, 0xdc, 0xf3, 0xd5, 0xed, 0x27, 0xf4, 0xe8, 0xa3, 0x17, 0xfc, 0x84, 0x5c, }; static const wycheproof_xdh_test xdh_wei448_3718 = { .name = "xdh_wei448_3718", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3718_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3718_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3718_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 114 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3719 for XDH, tcId is 115 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3719_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3719_privkey[] = { 0x80, 0xa5, 0xce, 0xa0, 0x6d, 0xb4, 0x30, 0xb1, 0xef, 0x04, 0x53, 0x4c, 0xf7, 0x7b, 0x37, 0x59, 0x3b, 0x40, 0x65, 0x34, 0xfc, 0xc6, 0x64, 0xbd, 0x43, 0xd4, 0xc5, 0x0a, 0x26, 0x12, 0xc6, 0x65, 0x07, 0xd5, 0x34, 0xc8, 0x61, 0x68, 0xd6, 0x94, 0xb4, 0x1c, 0x3d, 0xfc, 0xb5, 0x78, 0x3f, 0xbc, 0x4f, 0xc3, 0xbe, 0xa9, 0x0d, 0x0d, 0x15, 0xed, }; static const unsigned char xdh_wei448_3719_sharedsecret[] = { 0x37, 0x4b, 0xb9, 0x9f, 0x33, 0x9f, 0x10, 0xe1, 0xcf, 0x5c, 0xc5, 0x27, 0xd1, 0x32, 0xfc, 0x0b, 0xdb, 0xf6, 0x57, 0xad, 0x0b, 0x90, 0x0b, 0x04, 0x89, 0x73, 0xd5, 0xdc, 0xcc, 0x69, 0x6c, 0x69, 0xae, 0xf6, 0xb2, 0x58, 0xee, 0x68, 0x5d, 0x36, 0x0d, 0x8f, 0xc2, 0xcd, 0xc9, 0xff, 0xea, 0x4b, 0x87, 0x63, 0x4b, 0x10, 0x6e, 0x6a, 0x2d, 0x14, }; static const wycheproof_xdh_test xdh_wei448_3719 = { .name = "xdh_wei448_3719", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3719_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3719_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3719_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 115 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3720 for XDH, tcId is 116 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3720_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3720_privkey[] = { 0x0c, 0xd9, 0x0e, 0x8e, 0x75, 0xe9, 0xff, 0x33, 0x9b, 0x50, 0x3e, 0xc8, 0x2a, 0xda, 0xef, 0xdd, 0x44, 0xae, 0x5c, 0x85, 0xb6, 0x6f, 0xf4, 0xca, 0x93, 0xae, 0xf7, 0xe8, 0xd7, 0x29, 0x20, 0xe4, 0x70, 0x11, 0x6f, 0x25, 0xe2, 0x0a, 0xe5, 0xec, 0xf2, 0x35, 0xcf, 0x6f, 0x64, 0xab, 0x37, 0x8e, 0xbd, 0xd5, 0x71, 0x0b, 0x87, 0x25, 0xcd, 0x8b, }; static const unsigned char xdh_wei448_3720_sharedsecret[] = { 0xee, 0xa5, 0x6b, 0xb5, 0x1e, 0x98, 0xd2, 0x78, 0x4c, 0xb4, 0x3f, 0x43, 0x35, 0x85, 0x2f, 0xa7, 0x80, 0x4d, 0xc9, 0x75, 0x1f, 0x90, 0x51, 0x3b, 0x8f, 0x2d, 0x60, 0xc8, 0xf8, 0x4c, 0x61, 0xcd, 0xed, 0x28, 0x26, 0x08, 0xb7, 0xd6, 0x42, 0x42, 0x4a, 0x13, 0x10, 0x15, 0x59, 0xd2, 0xc0, 0x40, 0x4d, 0xeb, 0xae, 0x96, 0x59, 0x07, 0x73, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3720 = { .name = "xdh_wei448_3720", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3720_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3720_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3720_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 116 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3721 for XDH, tcId is 117 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3721_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, }; static const unsigned char xdh_wei448_3721_privkey[] = { 0x64, 0x82, 0x61, 0x5f, 0xbe, 0x7d, 0xc4, 0x76, 0xb9, 0x56, 0x04, 0x61, 0xc7, 0xd7, 0xb3, 0x77, 0x77, 0x4b, 0x74, 0x20, 0x42, 0x7b, 0xb1, 0xe2, 0x69, 0x7c, 0xd1, 0xd7, 0x04, 0x1b, 0x7c, 0x6c, 0x42, 0xe4, 0xf8, 0x9e, 0x3b, 0xf9, 0xb3, 0xfc, 0x02, 0x49, 0xbc, 0xd4, 0xf1, 0x8c, 0xfb, 0x50, 0xb5, 0x2b, 0x69, 0xb8, 0x5f, 0x32, 0x22, 0x82, }; static const unsigned char xdh_wei448_3721_sharedsecret[] = { 0x26, 0x07, 0xb8, 0x3d, 0xa4, 0xb7, 0x94, 0x5e, 0xdf, 0x68, 0xc9, 0xc1, 0x89, 0xa6, 0x99, 0x5a, 0xb2, 0xb2, 0xff, 0xdb, 0xdf, 0x33, 0xca, 0x78, 0x36, 0x31, 0x99, 0x89, 0xed, 0x53, 0x2d, 0x19, 0x2e, 0x72, 0xa9, 0x1d, 0xe7, 0x7d, 0xda, 0x49, 0xe3, 0xa9, 0xc6, 0x59, 0x8c, 0xdd, 0xe7, 0x2d, 0x09, 0x61, 0x4d, 0x35, 0xd1, 0x87, 0xb1, 0x64, }; static const wycheproof_xdh_test xdh_wei448_3721 = { .name = "xdh_wei448_3721", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3721_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3721_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3721_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 117 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3722 for XDH, tcId is 118 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3722_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3722_privkey[] = { 0xfc, 0x43, 0x6d, 0x2c, 0xf9, 0x20, 0x8f, 0xba, 0x04, 0x0a, 0x46, 0x81, 0x78, 0x6f, 0x6b, 0xc6, 0x71, 0xa8, 0xe8, 0xdf, 0xcf, 0x29, 0x21, 0x5d, 0x65, 0xc6, 0x99, 0xea, 0x79, 0xf4, 0x49, 0xc9, 0x87, 0x54, 0xa4, 0xf0, 0xd0, 0x3f, 0xa0, 0x84, 0x06, 0x67, 0x14, 0x34, 0xe2, 0xbd, 0xf5, 0x8b, 0x29, 0x0f, 0x7b, 0x86, 0xad, 0xf1, 0xfc, 0xda, }; static const unsigned char xdh_wei448_3722_sharedsecret[] = { 0x37, 0xce, 0x13, 0xff, 0xb8, 0xe9, 0x94, 0xa9, 0x3a, 0xba, 0x40, 0xd0, 0x65, 0x1e, 0x1b, 0x36, 0x68, 0xa4, 0x47, 0x91, 0x9d, 0x30, 0x43, 0x4c, 0x83, 0x23, 0xe9, 0x02, 0xfe, 0xe7, 0xc7, 0x9f, 0x3f, 0xc6, 0x4c, 0x9a, 0xb5, 0x1d, 0x4a, 0xb7, 0x75, 0xed, 0x0e, 0x4e, 0xfc, 0x4e, 0xe4, 0x41, 0x37, 0xe7, 0x52, 0x87, 0x53, 0x3d, 0x0c, 0xad, }; static const wycheproof_xdh_test xdh_wei448_3722 = { .name = "xdh_wei448_3722", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3722_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3722_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3722_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 118 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3723 for XDH, tcId is 119 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3723_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, }; static const unsigned char xdh_wei448_3723_privkey[] = { 0xb0, 0x6b, 0x27, 0xfd, 0x63, 0x9f, 0xdb, 0x97, 0xcc, 0x2d, 0xec, 0x42, 0x26, 0x2a, 0x4c, 0x4a, 0x6c, 0xb9, 0x41, 0xf2, 0x6b, 0xd9, 0x8b, 0xea, 0x7a, 0xf1, 0xe3, 0xe9, 0x78, 0xdc, 0x17, 0xdf, 0x86, 0x07, 0x65, 0x37, 0x14, 0x8d, 0xef, 0xbe, 0x42, 0x68, 0x89, 0xaa, 0x89, 0x8b, 0xf6, 0x62, 0xd8, 0xb8, 0xed, 0x82, 0xfc, 0x49, 0xed, 0xdb, }; static const unsigned char xdh_wei448_3723_sharedsecret[] = { 0x0a, 0xee, 0x21, 0xca, 0x01, 0x39, 0xda, 0xfb, 0xd9, 0x57, 0xd0, 0xa8, 0x06, 0x0a, 0x7f, 0xba, 0x87, 0x25, 0xf5, 0x7f, 0x02, 0xa0, 0xdc, 0x5c, 0xbf, 0xb9, 0x52, 0xe2, 0xc1, 0xe5, 0x3f, 0x4e, 0xca, 0xa0, 0x1a, 0x22, 0x7f, 0xd1, 0xe1, 0xbd, 0xa0, 0x2e, 0x2e, 0xaf, 0x77, 0x77, 0x55, 0x4c, 0x3e, 0xea, 0xbe, 0x86, 0x46, 0x70, 0xa4, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3723 = { .name = "xdh_wei448_3723", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3723_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3723_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3723_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 119 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3724 for XDH, tcId is 120 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3724_peerpubkey[] = { 0x14, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_3724_privkey[] = { 0x98, 0x39, 0xbc, 0x94, 0x16, 0x61, 0xbc, 0xe8, 0x57, 0x65, 0x26, 0xdc, 0x1a, 0xa2, 0x47, 0x3e, 0x68, 0x8b, 0x2e, 0x3e, 0xd9, 0x09, 0xcd, 0x2e, 0x4c, 0xf2, 0x1f, 0x60, 0x9c, 0xc9, 0x46, 0x85, 0x16, 0x72, 0x61, 0x91, 0xcc, 0x5b, 0xa8, 0x7f, 0xaa, 0x7c, 0x83, 0x11, 0xa3, 0xcc, 0x3d, 0xe3, 0x3a, 0x35, 0xd5, 0xdd, 0xdd, 0x04, 0x4d, 0xf5, }; static const unsigned char xdh_wei448_3724_sharedsecret[] = { 0x4f, 0x3e, 0x91, 0x76, 0x98, 0xb3, 0x15, 0x95, 0x67, 0xb4, 0xb5, 0x74, 0xeb, 0xbd, 0xc7, 0xc0, 0xaa, 0x0f, 0x84, 0x02, 0x3d, 0x66, 0xb5, 0xf9, 0x0f, 0x48, 0x80, 0x05, 0xaf, 0x6c, 0xb5, 0x2f, 0x51, 0xfb, 0x5a, 0x1d, 0xac, 0xcd, 0xc1, 0x9a, 0x54, 0xf7, 0x8f, 0xc3, 0x04, 0xf6, 0xe8, 0xbd, 0x8b, 0xa7, 0x54, 0x2b, 0xe5, 0xf2, 0x8b, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_3724 = { .name = "xdh_wei448_3724", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3724_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3724_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3724_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 120 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3725 for XDH, tcId is 121 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3725_peerpubkey[] = { 0x16, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x8b, 0x8c, 0xa7, 0x3f, 0x59, 0xa0, 0x18, 0x69, 0x93, 0x3e, 0x18, 0x42, 0x75, 0x0a, 0x13, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x94, 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, }; static const unsigned char xdh_wei448_3725_privkey[] = { 0x1c, 0xb5, 0xc1, 0x6c, 0xbf, 0x08, 0xe0, 0xc2, 0x76, 0x95, 0xb5, 0x65, 0x28, 0x30, 0x05, 0xa3, 0x45, 0xa9, 0x00, 0xa5, 0xb6, 0x48, 0xaf, 0x48, 0xf2, 0xeb, 0x4c, 0x01, 0xb1, 0x85, 0x37, 0x2c, 0xd4, 0xc1, 0x76, 0xd9, 0x69, 0x95, 0x6d, 0xac, 0xae, 0x71, 0x32, 0x92, 0xec, 0x12, 0x43, 0x16, 0x06, 0x2e, 0x59, 0x65, 0xca, 0x7d, 0xb7, 0x8e, }; static const unsigned char xdh_wei448_3725_sharedsecret[] = { 0x13, 0xe9, 0x79, 0x96, 0xfe, 0x6a, 0xd0, 0x7e, 0x56, 0x79, 0x59, 0x63, 0x94, 0x85, 0x6a, 0x7e, 0x5a, 0xa9, 0xad, 0xc3, 0xc9, 0x7d, 0x54, 0xbf, 0x26, 0xff, 0x2d, 0x25, 0xb3, 0x42, 0xc3, 0x00, 0xc0, 0xa6, 0xd3, 0xee, 0x9d, 0x2c, 0xd3, 0xf6, 0x65, 0x2d, 0xdb, 0x77, 0x8f, 0xfb, 0x78, 0x4e, 0xce, 0xdb, 0x25, 0x9b, 0x10, 0x63, 0x24, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3725 = { .name = "xdh_wei448_3725", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3725_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3725_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3725_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 121 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3726 for XDH, tcId is 122 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3726_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, }; static const unsigned char xdh_wei448_3726_privkey[] = { 0xec, 0xd7, 0xf5, 0x43, 0xac, 0x24, 0x82, 0xad, 0xbe, 0x97, 0x5e, 0xd9, 0x50, 0xe5, 0x93, 0x3c, 0x04, 0xc0, 0xdd, 0x19, 0x62, 0x34, 0xc7, 0x60, 0x30, 0x32, 0x5a, 0x32, 0x3b, 0x45, 0xbd, 0xce, 0x02, 0x93, 0x76, 0xfd, 0x84, 0x40, 0xf4, 0x00, 0x5b, 0x60, 0xc0, 0x85, 0x46, 0xc2, 0xad, 0x32, 0x0f, 0x87, 0x70, 0x07, 0xc6, 0x41, 0xb9, 0xfb, }; static const unsigned char xdh_wei448_3726_sharedsecret[] = { 0x72, 0xf6, 0x95, 0x46, 0x6f, 0x28, 0x29, 0x2f, 0xf3, 0x56, 0xda, 0x58, 0x52, 0x94, 0xc9, 0xd1, 0xdc, 0x66, 0xd1, 0xe7, 0x98, 0xcf, 0x73, 0x86, 0xef, 0x9a, 0xb3, 0x18, 0x59, 0x05, 0x24, 0x0c, 0x4a, 0xea, 0xa6, 0x0a, 0xe5, 0xc6, 0x2a, 0xab, 0x28, 0xf2, 0x57, 0x02, 0xa9, 0x19, 0xc1, 0x97, 0x54, 0xbf, 0xe3, 0x5d, 0x66, 0x6e, 0xca, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_3726 = { .name = "xdh_wei448_3726", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3726_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3726_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3726_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 122 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3727 for XDH, tcId is 123 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3727_peerpubkey[] = { 0x8a, 0xfe, 0xc4, 0x8c, 0xad, 0x2b, 0x71, 0xda, 0xd8, 0x7e, 0xe1, 0x22, 0xb7, 0x45, 0xc6, 0xd3, 0x9f, 0x2c, 0x50, 0x8c, 0xb4, 0x49, 0x1f, 0x0c, 0xa1, 0x3a, 0x85, 0x09, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0xca, 0x9a, 0x2e, 0x2b, 0x28, 0xe5, 0xf1, 0x79, 0x8e, 0x9a, 0x52, 0x81, 0x23, 0x9d, 0xed, }; static const unsigned char xdh_wei448_3727_privkey[] = { 0x54, 0xc3, 0xa7, 0x6f, 0x21, 0x16, 0x09, 0x99, 0x68, 0xcc, 0x31, 0x29, 0x1b, 0x36, 0xe5, 0x03, 0xca, 0x3e, 0x77, 0xa1, 0x90, 0x29, 0xe6, 0x0f, 0xcd, 0x06, 0xff, 0xdf, 0x5d, 0xbc, 0x7a, 0x54, 0xa5, 0x2f, 0x98, 0x08, 0x70, 0x7a, 0x39, 0x9e, 0x29, 0x47, 0xe7, 0xba, 0xe8, 0xea, 0xe5, 0x2a, 0xb5, 0x60, 0x74, 0xb4, 0x11, 0x96, 0xd4, 0xf9, }; static const unsigned char xdh_wei448_3727_sharedsecret[] = { 0xae, 0x75, 0x7e, 0xb5, 0x3a, 0xdf, 0xd3, 0x1c, 0xc9, 0x4b, 0x15, 0x33, 0xb3, 0x9d, 0x52, 0xf8, 0xd2, 0x20, 0xac, 0xe0, 0x03, 0xbd, 0x37, 0xcd, 0xe1, 0x00, 0x5c, 0xe0, 0x9a, 0x69, 0xd9, 0x16, 0x87, 0xb2, 0x19, 0xc1, 0x4d, 0xab, 0x9f, 0x3e, 0x0f, 0x8b, 0x89, 0xe8, 0x06, 0x44, 0x81, 0xd0, 0x45, 0x47, 0x20, 0xce, 0x17, 0x40, 0x3b, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3727 = { .name = "xdh_wei448_3727", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3727_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3727_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3727_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 123 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3728 for XDH, tcId is 124 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3728_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3728_privkey[] = { 0xa4, 0x2b, 0xd2, 0x9d, 0xdc, 0x90, 0x7a, 0x46, 0x61, 0x68, 0x7c, 0x7f, 0x48, 0xf2, 0x82, 0x64, 0x0f, 0x8b, 0xdc, 0x6d, 0xf2, 0x5c, 0x35, 0xe7, 0xf0, 0x1d, 0xd3, 0x5e, 0xc9, 0x57, 0x45, 0x57, 0x89, 0x7f, 0xf2, 0x01, 0x95, 0x9f, 0x71, 0x73, 0x86, 0x66, 0xd3, 0x3d, 0x93, 0xc0, 0x98, 0x20, 0x0d, 0x85, 0x52, 0xe2, 0x3e, 0xd2, 0x1e, 0xbf, }; static const unsigned char xdh_wei448_3728_sharedsecret[] = { 0xe3, 0x37, 0xde, 0xb5, 0x5f, 0xdd, 0x51, 0xbc, 0xa3, 0x92, 0x00, 0xa9, 0x7a, 0xa2, 0xbc, 0x1d, 0x2c, 0x22, 0x4f, 0xc4, 0x37, 0x05, 0x45, 0x28, 0x3c, 0x82, 0xd5, 0xc2, 0x42, 0x14, 0x42, 0x54, 0xb4, 0x3b, 0xd2, 0xbc, 0x4d, 0x16, 0x4f, 0xe1, 0x42, 0x14, 0x25, 0x8f, 0x7e, 0x3c, 0xda, 0xe3, 0x18, 0xec, 0x37, 0xb4, 0x6f, 0x47, 0x03, 0x87, }; static const wycheproof_xdh_test xdh_wei448_3728 = { .name = "xdh_wei448_3728", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3728_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3728_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3728_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 124 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3729 for XDH, tcId is 125 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3729_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3729_privkey[] = { 0x8c, 0xe8, 0xdd, 0xcb, 0x93, 0xda, 0xa1, 0x23, 0x81, 0x28, 0x14, 0xdb, 0x4c, 0xae, 0xf1, 0xcd, 0xaf, 0xbc, 0x68, 0x62, 0x4b, 0x56, 0xb9, 0xea, 0x22, 0x7a, 0x66, 0x0b, 0x1e, 0xbe, 0x07, 0xda, 0x6f, 0x9d, 0x3e, 0x8f, 0x12, 0x8b, 0x49, 0xf8, 0x6c, 0xa7, 0x57, 0x60, 0x76, 0xd5, 0x9d, 0xd0, 0xdc, 0x2b, 0x67, 0xfc, 0x10, 0x64, 0x17, 0xa8, }; static const unsigned char xdh_wei448_3729_sharedsecret[] = { 0x8b, 0xd1, 0x1f, 0xa3, 0x89, 0x0a, 0xc9, 0x18, 0xc9, 0x5c, 0x1a, 0xab, 0x51, 0xb2, 0xfd, 0x69, 0xa7, 0xdf, 0x3e, 0x90, 0x37, 0x5c, 0x81, 0x4b, 0x51, 0xf9, 0xe2, 0xef, 0x87, 0x9e, 0x1b, 0x83, 0x34, 0xa0, 0x1d, 0xed, 0x44, 0x06, 0xed, 0x13, 0xf3, 0xac, 0xec, 0xd7, 0x52, 0xf6, 0xd5, 0xc2, 0x41, 0x49, 0xa1, 0x38, 0xb3, 0x67, 0x4c, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_3729 = { .name = "xdh_wei448_3729", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3729_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3729_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3729_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 125 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3730 for XDH, tcId is 126 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3730_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3730_privkey[] = { 0x54, 0xe7, 0x8d, 0xf4, 0xea, 0x79, 0xcd, 0x46, 0x56, 0xa6, 0x09, 0x07, 0x56, 0x4a, 0xcb, 0x7f, 0x07, 0x3d, 0x84, 0xf3, 0x38, 0xea, 0xa0, 0x70, 0x75, 0xb3, 0x52, 0xdd, 0x38, 0x97, 0xf2, 0x2b, 0xe0, 0xfb, 0xab, 0xe5, 0x1d, 0x28, 0xf4, 0x01, 0x94, 0x96, 0x1a, 0x64, 0x40, 0xb2, 0x21, 0xa7, 0x87, 0xac, 0xdd, 0x2e, 0xea, 0x81, 0x1b, 0xb1, }; static const unsigned char xdh_wei448_3730_sharedsecret[] = { 0x4d, 0x07, 0x65, 0x58, 0xea, 0x3c, 0xcf, 0xe9, 0xef, 0x92, 0x60, 0x82, 0x92, 0xd3, 0xe1, 0x9e, 0xa9, 0x16, 0x8d, 0x70, 0xde, 0xe6, 0x32, 0x33, 0x7c, 0x72, 0x19, 0x88, 0xa8, 0x93, 0xcb, 0x99, 0xdf, 0x49, 0x4d, 0x38, 0xc4, 0xcc, 0x5d, 0xb9, 0x3c, 0x7b, 0x11, 0x3d, 0x62, 0x59, 0x30, 0xdc, 0xbf, 0xb0, 0xfc, 0x5c, 0xbf, 0xb1, 0xc6, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_3730 = { .name = "xdh_wei448_3730", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3730_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3730_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3730_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 126 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3731 for XDH, tcId is 127 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3731_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3731_privkey[] = { 0xe0, 0xe8, 0xff, 0x04, 0x54, 0x66, 0x78, 0x37, 0x6a, 0xf8, 0xa4, 0xcc, 0xb4, 0x96, 0xa9, 0x6c, 0xa0, 0xc7, 0x31, 0x80, 0x3b, 0xc2, 0xa8, 0xaa, 0x36, 0x00, 0x44, 0x57, 0x6c, 0x70, 0x45, 0x06, 0x8c, 0xb5, 0x78, 0xec, 0xdb, 0x2f, 0xda, 0x4d, 0x1c, 0xec, 0xdc, 0x4a, 0xa1, 0xa0, 0xa4, 0x30, 0xcb, 0xe7, 0x1e, 0x25, 0xa1, 0x76, 0x4c, 0xca, }; static const unsigned char xdh_wei448_3731_sharedsecret[] = { 0x10, 0x76, 0x52, 0xe3, 0x9d, 0x0e, 0xe0, 0xc6, 0x42, 0x1e, 0x60, 0x73, 0xeb, 0xe1, 0xae, 0x70, 0xf2, 0xa0, 0x48, 0x02, 0x6a, 0xfa, 0xb3, 0xfc, 0x1d, 0x62, 0x00, 0x27, 0x65, 0x2f, 0x94, 0xa4, 0xc6, 0xa6, 0xc7, 0x07, 0x6a, 0xe8, 0xc1, 0x51, 0x95, 0x37, 0x68, 0x1e, 0xd1, 0x54, 0x37, 0x35, 0x8c, 0x77, 0xec, 0xa2, 0x9d, 0x9d, 0x02, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3731 = { .name = "xdh_wei448_3731", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3731_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3731_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3731_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 127 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3732 for XDH, tcId is 128 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3732_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3732_privkey[] = { 0xb4, 0x20, 0x92, 0xf1, 0xa6, 0x46, 0xea, 0x58, 0x43, 0xc5, 0xd8, 0x33, 0x84, 0xa0, 0x8b, 0x45, 0x46, 0xae, 0x64, 0x9b, 0x12, 0xaf, 0x6b, 0x02, 0x3e, 0x1c, 0x6e, 0xac, 0x28, 0x0d, 0xaf, 0x10, 0x09, 0x0a, 0x07, 0x26, 0xd4, 0xe7, 0x55, 0x33, 0x55, 0x04, 0x2c, 0xbb, 0xab, 0x98, 0xc5, 0x84, 0xfc, 0x9d, 0xc1, 0x45, 0x89, 0xc3, 0xfe, 0xf4, }; static const unsigned char xdh_wei448_3732_sharedsecret[] = { 0x53, 0xcd, 0xe0, 0xc0, 0x1f, 0x25, 0x22, 0xd3, 0xe7, 0xe2, 0x23, 0xb7, 0x4d, 0x04, 0x15, 0x24, 0x28, 0xe9, 0x49, 0x4d, 0x18, 0xe3, 0xc4, 0xf4, 0x4b, 0xe5, 0x2d, 0x8f, 0x97, 0x1d, 0x29, 0xa4, 0x39, 0x4f, 0x9d, 0x03, 0xbd, 0x2e, 0xb8, 0x4a, 0x66, 0x7e, 0x11, 0x7a, 0x2f, 0x3c, 0x4a, 0x5a, 0x7e, 0x88, 0x4d, 0x45, 0x7f, 0xc7, 0x60, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3732 = { .name = "xdh_wei448_3732", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3732_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3732_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3732_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 128 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3733 for XDH, tcId is 129 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3733_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3733_privkey[] = { 0x90, 0x36, 0x99, 0xfc, 0xf2, 0xd0, 0x73, 0x09, 0xb2, 0xe7, 0x60, 0x56, 0xe2, 0x6e, 0x3b, 0xe4, 0x29, 0x8d, 0x58, 0x69, 0xc6, 0x72, 0xbb, 0x9d, 0x1e, 0xea, 0x80, 0xe6, 0x57, 0xdc, 0x99, 0x5a, 0xc1, 0xc8, 0x1a, 0x39, 0x30, 0xb1, 0x0e, 0x12, 0x4c, 0xc7, 0x76, 0x38, 0xc0, 0x0d, 0xe9, 0x47, 0x52, 0xcb, 0x51, 0x1e, 0xe8, 0x97, 0x22, 0x96, }; static const unsigned char xdh_wei448_3733_sharedsecret[] = { 0x41, 0xca, 0xd2, 0x75, 0x84, 0xa9, 0xe0, 0x0d, 0xbd, 0x39, 0x5c, 0x81, 0x0e, 0x60, 0xfc, 0x41, 0x5c, 0x13, 0xf7, 0x09, 0x5f, 0x90, 0x4f, 0x84, 0x48, 0xa3, 0x36, 0x1f, 0x05, 0x58, 0x02, 0x5a, 0xaa, 0xb3, 0x0e, 0x24, 0x86, 0xc8, 0x0e, 0xd3, 0xe9, 0xb4, 0xa0, 0x2b, 0x85, 0xf4, 0x76, 0x86, 0xd7, 0x00, 0x5d, 0xe8, 0x0b, 0x90, 0xda, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3733 = { .name = "xdh_wei448_3733", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3733_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3733_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3733_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 129 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3734 for XDH, tcId is 130 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3734_peerpubkey[] = { 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3734_privkey[] = { 0x9c, 0x56, 0x92, 0xf9, 0x24, 0x5d, 0x29, 0xaf, 0x67, 0x24, 0x77, 0xe6, 0x0f, 0x95, 0x75, 0x77, 0xcc, 0xa5, 0xc1, 0xcc, 0x24, 0x73, 0xf7, 0xfa, 0x67, 0xcd, 0x5a, 0x6f, 0x8a, 0xa3, 0xcb, 0xe4, 0x44, 0xdc, 0xdf, 0x65, 0xd5, 0x43, 0x6c, 0x02, 0x46, 0xd6, 0x4d, 0x2c, 0xf2, 0x18, 0x48, 0x4e, 0x97, 0x4c, 0x77, 0xaf, 0x96, 0x8b, 0x5c, 0xd1, }; static const unsigned char xdh_wei448_3734_sharedsecret[] = { 0x2f, 0x07, 0x01, 0x96, 0x00, 0x53, 0x9d, 0x6a, 0x7b, 0x71, 0x59, 0x6b, 0xa9, 0xdc, 0xc9, 0x0e, 0x60, 0xab, 0x2e, 0x2e, 0x8e, 0xfa, 0x32, 0x0a, 0xb6, 0xc8, 0x0d, 0xe2, 0x75, 0x76, 0x97, 0x00, 0x2b, 0x29, 0xe0, 0x2a, 0xa7, 0xd9, 0x16, 0x62, 0xe9, 0x8f, 0x9b, 0xe8, 0x95, 0xa7, 0x85, 0x5c, 0x0e, 0x96, 0xc8, 0x10, 0xc2, 0x94, 0xea, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3734 = { .name = "xdh_wei448_3734", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3734_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3734_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3734_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case public key, tcId is 130 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3735 for XDH, tcId is 131 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3735_peerpubkey[] = { 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3735_privkey[] = { 0x58, 0x2b, 0xf6, 0x3e, 0xe5, 0x4d, 0x47, 0xae, 0x55, 0x17, 0xcf, 0x74, 0xfd, 0xfe, 0xd1, 0xd4, 0xbc, 0xd5, 0x44, 0xc9, 0x5e, 0x61, 0xc8, 0xc9, 0x56, 0x05, 0xea, 0x32, 0x3a, 0x4d, 0x18, 0x20, 0xfd, 0xc4, 0x0f, 0xaf, 0xb1, 0xa5, 0xcb, 0xe4, 0xf4, 0xce, 0x1f, 0x89, 0xa9, 0x9f, 0x99, 0xa3, 0x36, 0x19, 0x61, 0xe5, 0xb3, 0x0b, 0xd8, 0x96, }; static const unsigned char xdh_wei448_3735_sharedsecret[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3735 = { .name = "xdh_wei448_3735", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3735_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3735_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3735_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case public key, tcId is 131 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3736 for XDH, tcId is 132 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3736_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3736_privkey[] = { 0x18, 0x68, 0xe9, 0x7d, 0x13, 0x9f, 0xff, 0x37, 0x2e, 0xdb, 0x9a, 0xad, 0xe8, 0x28, 0x79, 0xcb, 0xa6, 0xef, 0xe7, 0x93, 0x4a, 0x45, 0x79, 0x1e, 0x41, 0xd6, 0x1e, 0x7b, 0xb5, 0xe6, 0x7a, 0xb2, 0xcd, 0xad, 0x6a, 0xb8, 0x28, 0x82, 0xc5, 0x7d, 0x34, 0xec, 0x71, 0xe6, 0xa8, 0xd5, 0x56, 0xce, 0x28, 0x09, 0xe7, 0x29, 0x32, 0xea, 0x46, 0x9a, }; static const unsigned char xdh_wei448_3736_sharedsecret[] = { 0x89, 0x6e, 0x8b, 0x82, 0xe5, 0xee, 0x08, 0x3b, 0x6f, 0xaa, 0xf6, 0x1c, 0xcc, 0x6a, 0x79, 0x6f, 0x41, 0x9a, 0x97, 0x8e, 0x33, 0xd6, 0x24, 0x25, 0x71, 0x11, 0x0e, 0xea, 0x5b, 0x54, 0x79, 0x8e, 0x50, 0xc9, 0xa7, 0x8d, 0x4d, 0x4e, 0x88, 0xe5, 0xed, 0xad, 0x7d, 0x18, 0xd6, 0x4b, 0xcf, 0xe9, 0xc4, 0xcd, 0xf6, 0x39, 0x75, 0xce, 0xfd, 0x3c, }; static const wycheproof_xdh_test xdh_wei448_3736 = { .name = "xdh_wei448_3736", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3736_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3736_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3736_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 132 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3737 for XDH, tcId is 133 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3737_peerpubkey[] = { 0x9b, 0x7c, 0xf9, 0xd0, 0x96, 0x84, 0x51, 0xdd, 0x91, 0x41, 0xaa, 0x4e, 0x06, 0xdd, 0x76, 0xf5, 0x3e, 0x54, 0x08, 0x16, 0xad, 0x33, 0x17, 0x63, 0x93, 0x2f, 0x2c, 0xb8, 0x2f, 0x09, 0xbe, 0xcc, 0x47, 0x85, 0xcf, 0x69, 0xe7, 0x3e, 0x41, 0xbd, 0x6c, 0xbf, 0x8d, 0x0f, 0x24, 0x7f, 0x75, 0x87, 0x35, 0x7f, 0x00, 0xd7, 0x8e, 0xb9, 0x09, 0x16, }; static const unsigned char xdh_wei448_3737_privkey[] = { 0xa0, 0xe8, 0x17, 0x9e, 0x76, 0x0e, 0x7c, 0x80, 0x20, 0x62, 0x12, 0x65, 0xe1, 0x50, 0x6f, 0x1e, 0xa4, 0x9c, 0xee, 0x89, 0x06, 0x86, 0x98, 0xf1, 0x53, 0x09, 0x15, 0xaf, 0xf5, 0x14, 0x67, 0xb6, 0x5c, 0x71, 0x99, 0xa3, 0x7b, 0x10, 0x22, 0x25, 0x73, 0x1d, 0xbc, 0xd7, 0x77, 0x2f, 0xdd, 0x5d, 0x22, 0x13, 0x4d, 0x9d, 0xff, 0x38, 0x1a, 0x9a, }; static const unsigned char xdh_wei448_3737_sharedsecret[] = { 0xef, 0x11, 0x12, 0x1d, 0x16, 0x03, 0x9f, 0xab, 0xa9, 0x2d, 0x89, 0x4a, 0x6f, 0xfd, 0x6b, 0x3d, 0xc3, 0x0f, 0x98, 0x59, 0x45, 0xde, 0xd2, 0x0b, 0x0f, 0xd9, 0x7c, 0x85, 0x69, 0x56, 0x20, 0xc3, 0x84, 0xf1, 0xb9, 0x5c, 0xae, 0xf4, 0x1e, 0x69, 0x56, 0x12, 0xfe, 0x0f, 0xd6, 0x44, 0x7b, 0xfb, 0x2b, 0x84, 0x53, 0x38, 0x10, 0xdf, 0x0d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_3737 = { .name = "xdh_wei448_3737", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3737_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3737_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3737_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 133 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3738 for XDH, tcId is 134 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3738_peerpubkey[] = { 0xc4, 0xb7, 0x09, 0x0f, 0x3b, 0x94, 0xf5, 0xc8, 0x9e, 0xc7, 0xd2, 0xdc, 0x46, 0xd8, 0x49, 0xca, 0x68, 0x65, 0xb5, 0x32, 0x0e, 0xec, 0xe2, 0x72, 0xf4, 0x26, 0xd6, 0x10, 0xa5, 0x7e, 0xe5, 0xd2, 0x46, 0xd4, 0xff, 0xa1, 0xc5, 0x92, 0xcf, 0x57, 0x96, 0xfe, 0x9f, 0x9b, 0x66, 0x9f, 0xe5, 0x7d, 0x01, 0xba, 0x31, 0x22, 0xcd, 0xa3, 0x0e, 0x1b, }; static const unsigned char xdh_wei448_3738_privkey[] = { 0x80, 0xfa, 0x57, 0x4c, 0x9b, 0x52, 0xc5, 0x86, 0x9b, 0x4c, 0x0e, 0x0a, 0x6e, 0x00, 0xb1, 0x95, 0x76, 0x1e, 0xd0, 0x06, 0x38, 0x54, 0xa3, 0xb4, 0xd6, 0xa5, 0xb7, 0x05, 0x56, 0x55, 0x6a, 0x17, 0xc8, 0x49, 0xd0, 0xd0, 0x1a, 0x14, 0xff, 0xc6, 0x60, 0x31, 0x3b, 0xa1, 0xa8, 0x6f, 0xf2, 0xbc, 0xe9, 0x6f, 0x62, 0xd6, 0x55, 0x84, 0x9e, 0xba, }; static const unsigned char xdh_wei448_3738_sharedsecret[] = { 0x0c, 0xed, 0x4d, 0xd0, 0xe1, 0x24, 0xb2, 0xd6, 0xa8, 0xb2, 0xcc, 0x84, 0xde, 0xaa, 0xce, 0x4d, 0xec, 0x82, 0x83, 0x6b, 0xa3, 0xc1, 0x54, 0xc6, 0x0b, 0x72, 0x7d, 0x7d, 0x55, 0xb6, 0x82, 0xd0, 0xfd, 0x50, 0x37, 0x83, 0xd1, 0x65, 0xab, 0xde, 0xfd, 0x23, 0x24, 0xe8, 0x54, 0x59, 0x31, 0xd9, 0xc7, 0xf3, 0xab, 0xf8, 0xc8, 0xa2, 0x54, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3738 = { .name = "xdh_wei448_3738", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3738_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3738_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3738_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 134 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3739 for XDH, tcId is 135 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3739_peerpubkey[] = { 0x9a, 0xe0, 0x5c, 0x7f, 0x33, 0x5f, 0xa2, 0x3f, 0xa3, 0x63, 0x58, 0xf8, 0x33, 0xfe, 0x9e, 0x07, 0x4b, 0xc5, 0x52, 0x41, 0x35, 0x81, 0x9a, 0x9a, 0x2f, 0x16, 0x42, 0xd3, 0x91, 0xfb, 0xd7, 0xdc, 0x22, 0x77, 0x8d, 0x46, 0x8c, 0x7e, 0x03, 0xff, 0xd7, 0x2e, 0xd8, 0x78, 0x66, 0x4e, 0x31, 0xe3, 0x29, 0x7a, 0x9a, 0xad, 0x33, 0xfb, 0xc1, 0x7e, }; static const unsigned char xdh_wei448_3739_privkey[] = { 0x34, 0xd6, 0x35, 0xcf, 0xfd, 0x8e, 0x5f, 0x96, 0x8b, 0x91, 0xbb, 0x19, 0x3d, 0x6c, 0x42, 0xa3, 0xae, 0xc6, 0x5b, 0xdf, 0x51, 0x21, 0xf4, 0x2c, 0xa2, 0xec, 0x0d, 0x5a, 0x80, 0xe3, 0xd4, 0xc3, 0x57, 0xda, 0x9f, 0xa4, 0x38, 0x86, 0x7b, 0x55, 0x45, 0x77, 0x69, 0xe1, 0x49, 0x06, 0x70, 0xa1, 0x31, 0x33, 0x84, 0xec, 0xe9, 0xbc, 0x4c, 0xb7, }; static const unsigned char xdh_wei448_3739_sharedsecret[] = { 0x9e, 0xf2, 0x20, 0x30, 0x96, 0xf5, 0x7f, 0xb0, 0x47, 0x25, 0x6c, 0xef, 0x46, 0x30, 0x48, 0x4f, 0x72, 0xba, 0x28, 0x1a, 0xdc, 0xb9, 0x23, 0xca, 0x50, 0xe0, 0x8d, 0x95, 0x6e, 0x80, 0xec, 0xc6, 0xdf, 0xd9, 0x08, 0xee, 0x61, 0x9f, 0xb6, 0x2c, 0x22, 0x48, 0x34, 0xce, 0xb0, 0x1e, 0xe2, 0xb7, 0xc4, 0xd3, 0x56, 0xb8, 0x06, 0xc8, 0xf0, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3739 = { .name = "xdh_wei448_3739", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3739_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3739_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3739_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 135 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3740 for XDH, tcId is 136 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3740_peerpubkey[] = { 0x65, 0x1f, 0xa3, 0x80, 0xcc, 0xa0, 0x5d, 0xc0, 0x5c, 0x9c, 0xa7, 0x07, 0xcc, 0x01, 0x61, 0xf8, 0xb4, 0x3a, 0xad, 0xbe, 0xca, 0x7e, 0x65, 0x65, 0xd0, 0xe9, 0xbd, 0x2c, 0x6d, 0x04, 0x28, 0x23, 0xdd, 0x88, 0x72, 0xb9, 0x73, 0x81, 0xfc, 0x00, 0x28, 0xd1, 0x27, 0x87, 0x99, 0xb1, 0xce, 0x1c, 0xd6, 0x85, 0x65, 0x52, 0xcc, 0x04, 0x3e, 0x81, }; static const unsigned char xdh_wei448_3740_privkey[] = { 0x48, 0xff, 0xe0, 0x4d, 0x62, 0xfc, 0xaf, 0xc6, 0xad, 0xf6, 0x7f, 0x09, 0x8d, 0x9a, 0xe6, 0xa3, 0xd8, 0x08, 0x3e, 0x47, 0x37, 0x6d, 0x6f, 0x7d, 0x92, 0x23, 0xee, 0x35, 0x6b, 0x94, 0x0c, 0x8b, 0x39, 0x38, 0x9b, 0xf4, 0x54, 0x6d, 0x1f, 0x5e, 0x85, 0x14, 0xa7, 0x75, 0xb4, 0x5c, 0x41, 0x21, 0x8b, 0xb8, 0xfa, 0xfa, 0x4c, 0xb3, 0xba, 0xbe, }; static const unsigned char xdh_wei448_3740_sharedsecret[] = { 0x81, 0x2e, 0xca, 0xd3, 0xe5, 0xd7, 0xbc, 0xe3, 0x7d, 0x30, 0xc7, 0xb9, 0x6f, 0xb4, 0xf8, 0xb3, 0x0b, 0x7d, 0x14, 0x16, 0x92, 0x51, 0x6c, 0x2b, 0xb7, 0xb1, 0x8b, 0x78, 0xfc, 0xbe, 0x4f, 0x77, 0x4a, 0x85, 0x00, 0xb2, 0x6d, 0xce, 0x75, 0x36, 0x98, 0x3d, 0xd7, 0x1d, 0x92, 0xa0, 0xe8, 0xbb, 0xd8, 0x5d, 0xd0, 0x30, 0x62, 0x1c, 0x0c, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3740 = { .name = "xdh_wei448_3740", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3740_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3740_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3740_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 2, tcId is 136 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3741 for XDH, tcId is 137 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3741_peerpubkey[] = { 0x3b, 0x48, 0xf6, 0xf0, 0xc4, 0x6b, 0x0a, 0x37, 0x61, 0x38, 0x2d, 0x23, 0xb9, 0x27, 0xb6, 0x35, 0x97, 0x9a, 0x4a, 0xcd, 0xf1, 0x13, 0x1d, 0x8d, 0x0b, 0xd9, 0x29, 0xef, 0x59, 0x81, 0x1a, 0x2d, 0xb9, 0x2b, 0x00, 0x5e, 0x3a, 0x6d, 0x30, 0xa8, 0x69, 0x01, 0x60, 0x64, 0x99, 0x60, 0x1a, 0x82, 0xfe, 0x45, 0xce, 0xdd, 0x32, 0x5c, 0xf1, 0xe4, }; static const unsigned char xdh_wei448_3741_privkey[] = { 0x0c, 0xbd, 0xf8, 0x5d, 0x05, 0x38, 0xf6, 0xbe, 0xe7, 0x33, 0x49, 0xe7, 0x78, 0xe1, 0x0f, 0x65, 0x8e, 0xbb, 0x8a, 0x63, 0xa5, 0x94, 0xab, 0x8a, 0x37, 0xae, 0x37, 0xd2, 0x85, 0xb5, 0x96, 0x96, 0xd9, 0x2b, 0x7a, 0x41, 0x28, 0xf7, 0x04, 0x0a, 0x26, 0x64, 0x51, 0xc3, 0x1c, 0x0b, 0xd1, 0x5f, 0x6e, 0xb5, 0x97, 0xaa, 0x33, 0x7b, 0x6b, 0x97, }; static const unsigned char xdh_wei448_3741_sharedsecret[] = { 0xf7, 0xb0, 0xd7, 0x5f, 0x5d, 0xd7, 0x2c, 0xde, 0x92, 0xb7, 0x66, 0x14, 0x77, 0xde, 0xc7, 0x54, 0xed, 0x0c, 0x8d, 0x77, 0x94, 0x75, 0xb6, 0x5e, 0xb0, 0xac, 0x5e, 0x2d, 0x5a, 0x56, 0xd0, 0xfa, 0x06, 0x4a, 0x07, 0x36, 0x19, 0xe9, 0xf2, 0x4c, 0x00, 0x95, 0x3f, 0xfa, 0xc8, 0x7a, 0x3e, 0xd7, 0x3b, 0xbd, 0x45, 0xcb, 0x2d, 0x4c, 0x00, 0xea, }; static const wycheproof_xdh_test xdh_wei448_3741 = { .name = "xdh_wei448_3741", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3741_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3741_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3741_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 137 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3742 for XDH, tcId is 138 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3742_peerpubkey[] = { 0x64, 0x83, 0x06, 0x2f, 0x69, 0x7b, 0xae, 0x22, 0x6e, 0xbe, 0x55, 0xb1, 0xf9, 0x22, 0x89, 0x0a, 0xc1, 0xab, 0xf7, 0xe9, 0x52, 0xcc, 0xe8, 0x9c, 0x6c, 0xd0, 0xd3, 0x47, 0xcf, 0xf6, 0x41, 0x33, 0xb8, 0x7a, 0x30, 0x96, 0x18, 0xc1, 0xbe, 0x42, 0x93, 0x40, 0x72, 0xf0, 0xdb, 0x80, 0x8a, 0x78, 0xca, 0x80, 0xff, 0x28, 0x71, 0x46, 0xf6, 0xe9, }; static const unsigned char xdh_wei448_3742_privkey[] = { 0x34, 0x62, 0x83, 0x92, 0xdd, 0x76, 0x45, 0x81, 0x8b, 0x89, 0x9e, 0x32, 0xe9, 0x8b, 0x13, 0xf7, 0x07, 0x03, 0x8b, 0x94, 0x3f, 0x74, 0x5b, 0xc6, 0x25, 0x2b, 0x8c, 0x4b, 0x2c, 0x9e, 0x62, 0xf8, 0xcb, 0x01, 0x31, 0x02, 0x90, 0xb6, 0x27, 0xf5, 0x52, 0x77, 0x56, 0xc9, 0x43, 0x09, 0x50, 0x37, 0x31, 0xb9, 0x1e, 0xba, 0x64, 0xb7, 0x62, 0xa6, }; static const unsigned char xdh_wei448_3742_sharedsecret[] = { 0xd5, 0x75, 0x5a, 0xf8, 0x02, 0x84, 0xe9, 0x2b, 0x6b, 0x71, 0x8d, 0x02, 0x9e, 0x0e, 0xc9, 0x20, 0x4d, 0x34, 0xa9, 0x17, 0x40, 0x3e, 0xe6, 0x09, 0xc0, 0x06, 0x6f, 0x90, 0x2b, 0x50, 0x97, 0x28, 0xb1, 0x95, 0xfa, 0x4e, 0x84, 0x2f, 0x2b, 0xdc, 0xbd, 0xdc, 0x93, 0x7f, 0xe0, 0xa1, 0x91, 0x4d, 0x58, 0x01, 0x82, 0xae, 0x4c, 0x0a, 0x1c, 0x74, }; static const wycheproof_xdh_test xdh_wei448_3742 = { .name = "xdh_wei448_3742", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3742_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3742_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3742_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 138 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3743 for XDH, tcId is 139 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3743_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const unsigned char xdh_wei448_3743_privkey[] = { 0xa8, 0x19, 0x12, 0xb4, 0xa4, 0x5a, 0x01, 0x25, 0x5b, 0x3c, 0xa9, 0x10, 0x4c, 0x8e, 0x68, 0x8a, 0x0c, 0x1e, 0x4f, 0x39, 0xf0, 0xc6, 0x3e, 0xd7, 0x7b, 0x84, 0xa6, 0xcc, 0xab, 0xc5, 0x7d, 0x90, 0xc0, 0xb8, 0x59, 0x1a, 0x9c, 0xa2, 0x3b, 0x35, 0x10, 0x41, 0x1e, 0x30, 0xa3, 0x09, 0xb2, 0x81, 0x39, 0x92, 0x99, 0x3f, 0x91, 0x78, 0xe0, 0xa3, }; static const unsigned char xdh_wei448_3743_sharedsecret[] = { 0xa2, 0xda, 0x73, 0x00, 0xf1, 0x95, 0x18, 0x1b, 0x1b, 0x47, 0x6d, 0x12, 0x7b, 0x3b, 0x78, 0xe9, 0xc6, 0xa8, 0xc7, 0x91, 0xd7, 0x6f, 0x40, 0x80, 0x4f, 0x2e, 0x62, 0xb6, 0xbc, 0x8f, 0x9b, 0x68, 0xf2, 0x6a, 0x83, 0xb0, 0x2f, 0x0a, 0xd8, 0xa8, 0x50, 0x59, 0x04, 0x44, 0x1c, 0xe9, 0xd3, 0xfa, 0x4e, 0xc9, 0x92, 0x5f, 0xd1, 0xca, 0x3c, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3743 = { .name = "xdh_wei448_3743", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3743_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3743_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3743_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 2, tcId is 139 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3744 for XDH, tcId is 140 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3744_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const unsigned char xdh_wei448_3744_privkey[] = { 0x04, 0x15, 0x4c, 0xc5, 0x13, 0xb9, 0xb0, 0x44, 0x5a, 0xd4, 0x93, 0x91, 0x0f, 0xb7, 0x5b, 0x26, 0xb2, 0x39, 0x8b, 0xf1, 0xa7, 0xe7, 0x47, 0x1a, 0x30, 0x7f, 0x2b, 0xbd, 0x0f, 0x78, 0xd1, 0x9e, 0xa0, 0x5d, 0x5f, 0xbd, 0x6c, 0xf8, 0x45, 0xf1, 0xc8, 0xa0, 0x3b, 0xb8, 0x30, 0xc1, 0xfc, 0x53, 0x25, 0xe2, 0x48, 0xdd, 0xf5, 0xaa, 0xd4, 0x96, }; static const unsigned char xdh_wei448_3744_sharedsecret[] = { 0xdd, 0x76, 0x45, 0x27, 0xcc, 0x4c, 0x41, 0x3f, 0x3e, 0x03, 0xc4, 0xe8, 0x1c, 0x58, 0x3c, 0xbc, 0xc7, 0x91, 0x92, 0x93, 0xc3, 0xc3, 0x91, 0x01, 0xaa, 0x8c, 0x88, 0x76, 0x77, 0x92, 0x89, 0xb3, 0xc1, 0x42, 0x24, 0xf1, 0x2b, 0xa9, 0x58, 0x69, 0x7d, 0xa6, 0xe2, 0xb3, 0xb0, 0xa1, 0x3f, 0xf0, 0x8e, 0xa3, 0x0b, 0xbc, 0xda, 0xdd, 0x27, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3744 = { .name = "xdh_wei448_3744", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3744_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3744_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3744_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 2, tcId is 140 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3745 for XDH, tcId is 141 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3745_peerpubkey[] = { 0xb6, 0x54, 0xb7, 0x67, 0xb0, 0x00, 0xa0, 0x4f, 0x37, 0x8e, 0x46, 0x81, 0x82, 0x4c, 0xd0, 0x1b, 0x1d, 0x60, 0xfb, 0x26, 0x22, 0x57, 0x04, 0x9a, 0xa7, 0x92, 0xd4, 0x52, 0xef, 0x9d, 0x3e, 0x2e, 0x85, 0xca, 0x73, 0x9b, 0x48, 0x93, 0x69, 0x49, 0x12, 0x5c, 0x66, 0x52, 0x31, 0x2e, 0xbb, 0x1c, 0x57, 0x64, 0xe5, 0x9a, 0x34, 0xab, 0x39, 0x5f, }; static const unsigned char xdh_wei448_3745_privkey[] = { 0x64, 0x16, 0x08, 0xb1, 0x8c, 0x38, 0x28, 0x1b, 0x13, 0xbe, 0x02, 0xbd, 0x69, 0x5f, 0xd6, 0x40, 0xfa, 0x68, 0xa0, 0x0b, 0x51, 0xf7, 0x5f, 0x19, 0x5e, 0x98, 0x55, 0xcb, 0xab, 0x92, 0x27, 0x05, 0x73, 0xa5, 0x5e, 0xf9, 0x0f, 0x55, 0xec, 0x7c, 0xb8, 0x65, 0x4f, 0x53, 0xc2, 0x15, 0x90, 0xb6, 0xa7, 0x09, 0x9d, 0xed, 0x7d, 0x1e, 0xae, 0xb7, }; static const unsigned char xdh_wei448_3745_sharedsecret[] = { 0xd5, 0xa1, 0x9d, 0x66, 0x27, 0x94, 0x5a, 0xc4, 0x8d, 0xce, 0x52, 0xa2, 0x7c, 0x9f, 0x8c, 0x75, 0x50, 0xb9, 0x9c, 0xcb, 0x39, 0x59, 0x16, 0xb6, 0xb6, 0x1d, 0x07, 0x6d, 0x53, 0x3e, 0x62, 0xb2, 0x36, 0x06, 0x8e, 0x80, 0x76, 0xa8, 0x15, 0xda, 0x58, 0x47, 0x59, 0x2f, 0x77, 0xc1, 0xfc, 0x13, 0x3a, 0x11, 0xee, 0x90, 0x73, 0x88, 0xbe, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3745 = { .name = "xdh_wei448_3745", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3745_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3745_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3745_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 141 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3746 for XDH, tcId is 142 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3746_peerpubkey[] = { 0xad, 0xbe, 0xcb, 0xd3, 0x8b, 0x69, 0x16, 0x7b, 0x99, 0x5c, 0x0c, 0x7d, 0xa8, 0xf1, 0xfd, 0x1e, 0x9d, 0xca, 0x26, 0x2e, 0xb7, 0x9c, 0x78, 0xc9, 0xab, 0xa1, 0x59, 0xd1, 0xbe, 0x18, 0x6b, 0xba, 0xcd, 0x3b, 0x08, 0xdb, 0x7a, 0xa8, 0xd4, 0x22, 0x70, 0xcd, 0x01, 0x1b, 0x67, 0xc6, 0x66, 0x36, 0x52, 0x8d, 0x6f, 0xf6, 0xf0, 0xf2, 0x97, 0x76, }; static const unsigned char xdh_wei448_3746_privkey[] = { 0xb8, 0xbb, 0xcf, 0x42, 0xea, 0x9c, 0x95, 0xff, 0x90, 0x8d, 0xba, 0x59, 0x8c, 0x96, 0x44, 0x0d, 0xdf, 0x66, 0x49, 0xf8, 0x30, 0xc4, 0xfe, 0x21, 0xf3, 0x1d, 0x0f, 0x45, 0xbc, 0x83, 0x47, 0xe4, 0x81, 0x71, 0xa9, 0x2a, 0x04, 0xd2, 0x19, 0xe4, 0x05, 0x7c, 0x10, 0xdc, 0x74, 0x9d, 0x90, 0x28, 0xfb, 0x5a, 0x55, 0x84, 0xa8, 0x80, 0x3b, 0xbe, }; static const unsigned char xdh_wei448_3746_sharedsecret[] = { 0x2c, 0x9b, 0xb5, 0xa0, 0x3d, 0x9c, 0xc0, 0xec, 0x65, 0xf5, 0x5c, 0x2c, 0x0a, 0x32, 0x79, 0xf4, 0xf7, 0x85, 0xd6, 0xb9, 0x9d, 0x8f, 0xea, 0x6c, 0x80, 0x33, 0xf0, 0xf0, 0xc9, 0xf2, 0xf3, 0xa0, 0xdd, 0xae, 0x1e, 0x09, 0xf5, 0x0a, 0xe7, 0x03, 0x7a, 0x89, 0x31, 0x65, 0x65, 0x0c, 0x5a, 0xb1, 0x5d, 0x20, 0x3f, 0x8d, 0xc2, 0x49, 0x69, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3746 = { .name = "xdh_wei448_3746", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3746_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3746_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3746_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 2, tcId is 142 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3747 for XDH, tcId is 143 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3747_peerpubkey[] = { 0xa3, 0xd9, 0xe5, 0x94, 0x6d, 0x7d, 0x7c, 0xd9, 0xda, 0x73, 0x8c, 0xd5, 0x46, 0x53, 0xcd, 0xb3, 0xe7, 0x2f, 0xc6, 0xa3, 0x07, 0x89, 0xe9, 0x0a, 0x3f, 0xc0, 0xff, 0x3d, 0x1f, 0x2b, 0xf9, 0xde, 0x94, 0x1f, 0x17, 0x9a, 0x32, 0x1b, 0x85, 0xe7, 0xc7, 0xf4, 0x3b, 0xaf, 0xd6, 0xeb, 0x26, 0xaa, 0x57, 0x14, 0x33, 0x6f, 0xdc, 0x64, 0x63, 0x12, }; static const unsigned char xdh_wei448_3747_privkey[] = { 0xe4, 0xf0, 0xb2, 0x95, 0xc3, 0xe0, 0xad, 0x3c, 0xd6, 0x43, 0x92, 0x9c, 0x34, 0x0a, 0xd2, 0x9d, 0x36, 0x89, 0x70, 0xe2, 0xdb, 0x1e, 0xa2, 0x51, 0x7b, 0xfe, 0x43, 0xf1, 0x12, 0xd8, 0x2b, 0xce, 0x54, 0xbf, 0xe1, 0x61, 0x38, 0x35, 0x55, 0x45, 0x5b, 0xd2, 0xe2, 0x0d, 0x8b, 0x2c, 0x0b, 0xb1, 0x87, 0xd0, 0xdc, 0x11, 0xa7, 0x0c, 0x7b, 0xab, }; static const unsigned char xdh_wei448_3747_sharedsecret[] = { 0x71, 0xff, 0xb6, 0x11, 0x9f, 0x50, 0xb5, 0x97, 0x97, 0x6c, 0x4e, 0xdd, 0x86, 0xd6, 0xfc, 0xd1, 0x86, 0x8e, 0xfd, 0x0a, 0xf6, 0xda, 0x57, 0xe5, 0xa6, 0x4f, 0x0e, 0xac, 0x2c, 0x5a, 0x01, 0x1b, 0x54, 0x3b, 0x9b, 0x52, 0xc7, 0x84, 0xfa, 0x4e, 0x73, 0x99, 0x43, 0x7c, 0x81, 0x40, 0xa7, 0xfa, 0x68, 0x8e, 0x5a, 0xfe, 0xe5, 0xaa, 0xf7, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3747 = { .name = "xdh_wei448_3747", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3747_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3747_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3747_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 143 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3748 for XDH, tcId is 144 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3748_peerpubkey[] = { 0x54, 0x3f, 0x1c, 0x98, 0x13, 0xfb, 0xb1, 0xd8, 0xc2, 0x82, 0xfd, 0x2d, 0xb8, 0xc1, 0x9d, 0x3f, 0x11, 0x97, 0x3e, 0x6d, 0x28, 0x81, 0x30, 0x7d, 0x4b, 0xf0, 0x0f, 0x9d, 0xe7, 0xdd, 0xab, 0xf5, 0x50, 0xea, 0x00, 0x51, 0xb4, 0xe0, 0x3d, 0x47, 0x20, 0x60, 0x58, 0xa6, 0xdd, 0x24, 0x14, 0x88, 0x4b, 0x19, 0x49, 0x64, 0x13, 0x0c, 0xed, 0x35, }; static const unsigned char xdh_wei448_3748_privkey[] = { 0xb0, 0xa7, 0x8d, 0xbe, 0xd2, 0xbf, 0x1a, 0x9e, 0xf2, 0x3b, 0x5d, 0x69, 0xc0, 0x6a, 0x95, 0xb9, 0x31, 0x92, 0x57, 0x7a, 0x58, 0x1f, 0xa9, 0x59, 0x36, 0xa3, 0x6d, 0x65, 0x86, 0xcf, 0x22, 0x69, 0x95, 0xd8, 0x3e, 0xe7, 0x4c, 0xd2, 0x82, 0x56, 0xb1, 0x6a, 0xc4, 0x43, 0xa5, 0x52, 0x45, 0x9f, 0x64, 0x88, 0x1b, 0xc0, 0x47, 0xbd, 0x89, 0x89, }; static const unsigned char xdh_wei448_3748_sharedsecret[] = { 0xd5, 0x23, 0x44, 0x92, 0xc6, 0x7b, 0xd9, 0xf1, 0xf9, 0x91, 0xbe, 0x23, 0x71, 0x90, 0x7c, 0x09, 0x5a, 0x0d, 0x0b, 0xe8, 0xe7, 0x98, 0x8b, 0x31, 0x36, 0xcb, 0xdb, 0xcc, 0x50, 0x0e, 0x5c, 0xaa, 0x24, 0xfb, 0x0f, 0x26, 0xc7, 0x77, 0xcc, 0xe6, 0x4d, 0xd1, 0x43, 0xf4, 0x62, 0xb8, 0x4b, 0xf4, 0xc7, 0x4c, 0x6b, 0xce, 0x8f, 0xd8, 0x69, 0x47, }; static const wycheproof_xdh_test xdh_wei448_3748 = { .name = "xdh_wei448_3748", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3748_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3748_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3748_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 144 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3749 for XDH, tcId is 145 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3749_peerpubkey[] = { 0x60, 0x5c, 0x4f, 0x65, 0xab, 0x0e, 0xe2, 0xa1, 0x5e, 0x42, 0xa7, 0xf3, 0x02, 0xa7, 0x80, 0x43, 0x41, 0x64, 0xaf, 0x55, 0x89, 0xec, 0xa1, 0xae, 0x0a, 0xd7, 0x82, 0xd9, 0x23, 0x29, 0xc5, 0x9d, 0x0f, 0xfa, 0xd0, 0x43, 0xa2, 0x0d, 0x62, 0x2b, 0x9f, 0x72, 0xe7, 0xb9, 0xa1, 0x81, 0xaf, 0xad, 0xac, 0xb6, 0xf2, 0x19, 0x4d, 0xcb, 0xe2, 0xae, }; static const unsigned char xdh_wei448_3749_privkey[] = { 0x34, 0x9f, 0xa5, 0xb5, 0x42, 0x3f, 0x3e, 0x57, 0xf2, 0x7d, 0x10, 0xd7, 0xea, 0xaa, 0xe5, 0x49, 0x06, 0x30, 0xbe, 0xaf, 0x47, 0x22, 0x66, 0x20, 0xe7, 0x0b, 0x5b, 0xa5, 0x6b, 0xd2, 0x93, 0x07, 0x70, 0xa8, 0x2e, 0x96, 0x20, 0xd2, 0x10, 0x81, 0xd4, 0x7e, 0x58, 0xfb, 0x31, 0xce, 0x5c, 0x67, 0x4f, 0xb9, 0x9f, 0x9d, 0x8f, 0x95, 0xa2, 0x89, }; static const unsigned char xdh_wei448_3749_sharedsecret[] = { 0xaa, 0xb5, 0xa5, 0x19, 0x24, 0x2a, 0x0a, 0x8b, 0x1b, 0x3e, 0x62, 0x28, 0x34, 0x36, 0xd5, 0xae, 0x46, 0x35, 0x1b, 0x4f, 0x29, 0xff, 0x97, 0x55, 0x04, 0x4e, 0xb8, 0xe0, 0xff, 0x1e, 0xa3, 0x33, 0x46, 0x24, 0xab, 0x01, 0xcf, 0x5e, 0x39, 0xa3, 0x78, 0x38, 0x24, 0xf0, 0xb7, 0xd3, 0xcc, 0xc2, 0xe7, 0x10, 0x6d, 0x4c, 0xe6, 0xc6, 0x72, 0x62, }; static const wycheproof_xdh_test xdh_wei448_3749 = { .name = "xdh_wei448_3749", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3749_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3749_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3749_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 145 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3750 for XDH, tcId is 146 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3750_peerpubkey[] = { 0x3c, 0xd6, 0x73, 0x9f, 0x26, 0x06, 0x7e, 0x7e, 0x9f, 0xfc, 0x51, 0xaf, 0xc3, 0xb9, 0x29, 0xf7, 0x02, 0x62, 0x2f, 0x7b, 0xe3, 0xd1, 0x7b, 0x58, 0xee, 0xb1, 0x0c, 0x12, 0xb4, 0x02, 0xd2, 0xdd, 0xe3, 0xe4, 0xfa, 0x56, 0xae, 0xa6, 0x77, 0x98, 0x93, 0x31, 0xdd, 0xde, 0xb1, 0x2c, 0xf2, 0xf0, 0xa1, 0x45, 0x8b, 0x3e, 0x0e, 0xb8, 0x24, 0xb4, }; static const unsigned char xdh_wei448_3750_privkey[] = { 0x84, 0xc7, 0xba, 0xd5, 0x9e, 0x33, 0x2e, 0x1d, 0xab, 0x8e, 0x0d, 0x58, 0xa6, 0x4d, 0xef, 0xf8, 0x94, 0xf2, 0x4c, 0x04, 0x2c, 0x13, 0xb1, 0xee, 0xe6, 0x50, 0x72, 0x11, 0x85, 0xe5, 0x9d, 0xa3, 0x3f, 0x4f, 0x27, 0xa2, 0x9d, 0x70, 0xfa, 0x14, 0x82, 0xdb, 0x32, 0xf6, 0xc9, 0xe9, 0x98, 0xa9, 0xce, 0x4d, 0xad, 0x96, 0x42, 0x03, 0x26, 0x98, }; static const unsigned char xdh_wei448_3750_sharedsecret[] = { 0x6f, 0x53, 0x8d, 0x45, 0xbd, 0xb7, 0xbd, 0x7e, 0x46, 0xae, 0x38, 0x17, 0x3c, 0xf7, 0x6f, 0xbe, 0xee, 0xd7, 0xfd, 0x4a, 0x51, 0x7d, 0x9f, 0x68, 0xd7, 0xe4, 0xb1, 0xa3, 0x8d, 0x9b, 0x7b, 0x7c, 0x14, 0xd9, 0x1f, 0xa7, 0xed, 0xc5, 0x45, 0x2f, 0x01, 0x7a, 0x33, 0x95, 0x9f, 0x66, 0x8b, 0x9e, 0x04, 0x41, 0x32, 0xc3, 0xb0, 0x38, 0x13, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_3750 = { .name = "xdh_wei448_3750", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3750_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3750_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3750_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 2, tcId is 146 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3751 for XDH, tcId is 147 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3751_peerpubkey[] = { 0xb3, 0x27, 0x87, 0x93, 0x0b, 0x31, 0x1c, 0xa4, 0xc4, 0xbc, 0x08, 0x3f, 0xc7, 0xda, 0x3f, 0x87, 0x90, 0x21, 0xa6, 0x90, 0xd2, 0x8c, 0x3b, 0xa8, 0x03, 0x43, 0x0f, 0xa9, 0x3b, 0x7a, 0x7a, 0xf6, 0x54, 0x3e, 0xd6, 0xef, 0x03, 0x25, 0x5c, 0x46, 0x6d, 0x20, 0x3c, 0x00, 0x4d, 0x52, 0x49, 0x27, 0x9d, 0x0c, 0xc4, 0x8c, 0x1e, 0xea, 0x25, 0xdc, }; static const unsigned char xdh_wei448_3751_privkey[] = { 0x70, 0x92, 0xf5, 0xef, 0x4e, 0x90, 0xe0, 0x4b, 0x18, 0xdb, 0x8a, 0xbb, 0xc5, 0x7a, 0x96, 0xaa, 0xb4, 0x97, 0x76, 0xfa, 0x89, 0x79, 0x32, 0x1d, 0x4f, 0xc3, 0xce, 0xc5, 0x64, 0x88, 0x2a, 0xc6, 0x4d, 0x2f, 0x8e, 0xcf, 0xa1, 0x81, 0xe7, 0x0b, 0xd1, 0xca, 0xe7, 0x6b, 0xf5, 0xec, 0xc8, 0x9f, 0x61, 0xd4, 0xda, 0x80, 0xa2, 0x58, 0x0e, 0xb6, }; static const unsigned char xdh_wei448_3751_sharedsecret[] = { 0x3c, 0x8d, 0xa7, 0x1a, 0x00, 0x22, 0x1b, 0x9f, 0x77, 0x98, 0xc4, 0xd1, 0xf9, 0xe5, 0xec, 0x36, 0x6a, 0x3d, 0x8c, 0x38, 0x58, 0xec, 0xa0, 0xc4, 0x69, 0x94, 0x55, 0x86, 0xbe, 0x10, 0x11, 0x27, 0x26, 0x57, 0x8d, 0x67, 0xab, 0xbf, 0xf2, 0xb5, 0x97, 0xa1, 0x12, 0x53, 0x1c, 0x36, 0x1d, 0x09, 0x96, 0x51, 0x05, 0xda, 0xb2, 0x46, 0xab, 0xd6, }; static const wycheproof_xdh_test xdh_wei448_3751 = { .name = "xdh_wei448_3751", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3751_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3751_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3751_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 147 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3752 for XDH, tcId is 148 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3752_peerpubkey[] = { 0xc4, 0xcb, 0x77, 0x0d, 0xe1, 0xc5, 0x21, 0xa3, 0x43, 0xdf, 0x91, 0x72, 0xf9, 0xa5, 0xb9, 0x28, 0x1d, 0xf0, 0x6a, 0xf7, 0xf6, 0x1a, 0xf9, 0xea, 0x12, 0x40, 0x8d, 0xfe, 0xad, 0x1d, 0xcc, 0x6c, 0x16, 0x9a, 0x2b, 0xda, 0x16, 0x5d, 0xd0, 0x5a, 0x73, 0x67, 0x9a, 0xa1, 0x4d, 0x05, 0x8f, 0x4f, 0xcb, 0x14, 0xef, 0xac, 0x1e, 0x58, 0x04, 0xff, }; static const unsigned char xdh_wei448_3752_privkey[] = { 0x48, 0xf4, 0x5b, 0xef, 0x6b, 0x16, 0x6f, 0xdd, 0x97, 0x10, 0xe8, 0xe7, 0xde, 0x6c, 0xb9, 0x42, 0x28, 0xfe, 0x09, 0xd9, 0x67, 0xaf, 0x4e, 0xcd, 0xff, 0x92, 0x72, 0x69, 0x5b, 0xb9, 0x90, 0x13, 0xb0, 0x50, 0xbb, 0x35, 0x4f, 0x50, 0xa5, 0xa6, 0x0e, 0xd2, 0x81, 0xc3, 0x04, 0xe6, 0xfb, 0x02, 0xca, 0xde, 0x2f, 0xd4, 0x18, 0xdd, 0xf3, 0x99, }; static const unsigned char xdh_wei448_3752_sharedsecret[] = { 0xd4, 0x3f, 0x64, 0x21, 0xbd, 0x46, 0x20, 0xf4, 0x02, 0xe5, 0x5f, 0x57, 0xa9, 0xdb, 0x4c, 0x5e, 0x9c, 0x47, 0x9c, 0x31, 0x73, 0xa5, 0x75, 0xf9, 0x34, 0x42, 0xe5, 0x85, 0x29, 0xa7, 0x6a, 0xc3, 0xbd, 0x5d, 0xfc, 0xe1, 0x5a, 0x2c, 0xc0, 0xc1, 0x57, 0x66, 0x11, 0x6c, 0x99, 0xe9, 0xe2, 0xbe, 0x8c, 0x5b, 0x8a, 0x12, 0x56, 0x66, 0x27, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_3752 = { .name = "xdh_wei448_3752", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3752_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3752_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3752_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 2, tcId is 148 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3753 for XDH, tcId is 149 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3753_peerpubkey[] = { 0x35, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_3753_privkey[] = { 0x00, 0xab, 0x5a, 0x77, 0x83, 0x4d, 0x28, 0x0d, 0xaf, 0x5f, 0x95, 0x6a, 0xb2, 0x49, 0xd0, 0xe3, 0x45, 0x4e, 0x6c, 0x26, 0x02, 0x4e, 0x3f, 0x31, 0xeb, 0x0d, 0xd8, 0xdf, 0x01, 0x84, 0x85, 0x40, 0x7b, 0x88, 0xeb, 0xd8, 0x16, 0x38, 0xbd, 0x45, 0x71, 0xbd, 0x24, 0xf2, 0x53, 0x90, 0xeb, 0x35, 0x8e, 0x83, 0x6f, 0xba, 0xa8, 0xb7, 0xba, 0x95, }; static const unsigned char xdh_wei448_3753_sharedsecret[] = { 0x7f, 0x15, 0x13, 0xc0, 0x3a, 0x51, 0xb1, 0x5c, 0x8a, 0xa1, 0x7c, 0x0b, 0xac, 0x4a, 0x46, 0xd5, 0xc2, 0x76, 0xf4, 0xf9, 0x3f, 0x63, 0x3f, 0x75, 0x0d, 0x60, 0x86, 0x61, 0x49, 0x33, 0x15, 0x1e, 0x03, 0xf4, 0xef, 0x2b, 0x77, 0x2f, 0x9a, 0x39, 0x48, 0x0b, 0x2e, 0x83, 0xd6, 0x82, 0xd7, 0x66, 0x8e, 0xfd, 0x20, 0x1e, 0x13, 0x69, 0xd9, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3753 = { .name = "xdh_wei448_3753", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3753_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3753_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3753_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 149 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3754 for XDH, tcId is 150 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3754_peerpubkey[] = { 0x9e, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_3754_privkey[] = { 0x54, 0x11, 0x14, 0xfb, 0xfc, 0x2e, 0xb4, 0x7e, 0x94, 0x2c, 0xbc, 0xb4, 0x89, 0x2f, 0xd8, 0xf9, 0xdd, 0xeb, 0x5c, 0xb6, 0x43, 0xe1, 0x9f, 0x89, 0xd2, 0xfb, 0x77, 0xd4, 0x5f, 0x0c, 0x0d, 0x5a, 0x8a, 0x48, 0xf7, 0xc4, 0x1b, 0xd8, 0xd9, 0xbe, 0xf0, 0xdf, 0x8d, 0xbc, 0xa9, 0x3e, 0x4f, 0xd1, 0xe8, 0x7c, 0x62, 0xa4, 0x93, 0x8f, 0x25, 0x92, }; static const unsigned char xdh_wei448_3754_sharedsecret[] = { 0x36, 0xe7, 0x73, 0xe3, 0xa1, 0x8d, 0xba, 0xd7, 0x66, 0x49, 0xad, 0x5e, 0xa8, 0xa4, 0x12, 0x0d, 0xca, 0xb9, 0xb2, 0x3e, 0xbc, 0xe9, 0x95, 0x14, 0x88, 0x7c, 0xa1, 0x92, 0xe5, 0xf7, 0x40, 0xed, 0x4b, 0xd2, 0x78, 0xf6, 0xcb, 0x89, 0xf8, 0x2c, 0xf0, 0x39, 0xda, 0x69, 0xa3, 0x7f, 0xd1, 0x53, 0x21, 0x25, 0x20, 0x48, 0x85, 0xff, 0x56, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_3754 = { .name = "xdh_wei448_3754", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3754_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3754_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3754_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 150 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3755 for XDH, tcId is 151 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3755_peerpubkey[] = { 0xb5, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_3755_privkey[] = { 0x08, 0xe4, 0x13, 0x9f, 0xbe, 0x13, 0x7f, 0xa0, 0x4c, 0xd8, 0x62, 0x23, 0x33, 0x4a, 0x9e, 0x4b, 0xf1, 0xa3, 0xc9, 0x0c, 0x3c, 0xc7, 0x05, 0x66, 0x81, 0xdb, 0xdb, 0x04, 0xce, 0xc4, 0x28, 0x58, 0x2e, 0x5e, 0x63, 0xc3, 0x70, 0x5f, 0xd5, 0x1d, 0xe4, 0x8b, 0xe2, 0x8b, 0xf9, 0x63, 0x67, 0x73, 0x92, 0x83, 0x39, 0xe8, 0x76, 0xe4, 0xdd, 0xaa, }; static const unsigned char xdh_wei448_3755_sharedsecret[] = { 0x2c, 0x4a, 0xaa, 0xec, 0x96, 0x6c, 0xa0, 0xb0, 0xb4, 0xe0, 0x00, 0xe3, 0xf1, 0xb2, 0x3d, 0xbe, 0xfb, 0xd8, 0x6a, 0xa7, 0x76, 0x3d, 0x66, 0x96, 0x8a, 0x39, 0x36, 0x2a, 0xea, 0x4b, 0x33, 0xe0, 0x41, 0xc5, 0x10, 0xe4, 0xab, 0xcf, 0x21, 0xf1, 0xec, 0x6b, 0x92, 0x7a, 0xed, 0x30, 0x11, 0xa6, 0x0d, 0x54, 0xb6, 0x27, 0xc8, 0x83, 0xfa, 0xb5, }; static const wycheproof_xdh_test xdh_wei448_3755 = { .name = "xdh_wei448_3755", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3755_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3755_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3755_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 151 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3756 for XDH, tcId is 152 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3756_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3756_privkey[] = { 0x70, 0x0a, 0x99, 0x85, 0x56, 0x91, 0x33, 0xa0, 0x02, 0x59, 0x1e, 0x4d, 0x66, 0x3a, 0x2a, 0x9b, 0xd5, 0x15, 0x8c, 0xc1, 0x21, 0xd7, 0xd8, 0x79, 0x3e, 0x6a, 0x2d, 0x63, 0x15, 0xa8, 0xf2, 0xb8, 0x60, 0x8d, 0x23, 0x25, 0x47, 0x81, 0xb7, 0xbd, 0x1c, 0x89, 0x82, 0x31, 0xec, 0xde, 0x23, 0x38, 0x80, 0x85, 0x88, 0xf7, 0xe8, 0x46, 0x7a, 0x92, }; static const unsigned char xdh_wei448_3756_sharedsecret[] = { 0x82, 0x59, 0x7f, 0x64, 0x57, 0x0e, 0x5e, 0xab, 0x95, 0xd2, 0x5a, 0xb8, 0x1a, 0xcd, 0xf0, 0x65, 0x1c, 0x9c, 0x6a, 0x6c, 0x81, 0x5f, 0x09, 0x31, 0xf5, 0x12, 0x31, 0x2a, 0x89, 0x6a, 0xfc, 0x85, 0xf8, 0x08, 0xd8, 0x3c, 0xed, 0x09, 0x9b, 0xfd, 0xb9, 0x68, 0x96, 0x99, 0x9e, 0x5f, 0xbd, 0x13, 0x9d, 0xa0, 0xa0, 0x79, 0x69, 0xf1, 0x90, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3756 = { .name = "xdh_wei448_3756", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3756_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3756_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3756_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 152 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3757 for XDH, tcId is 153 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3757_peerpubkey[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3757_privkey[] = { 0x44, 0x28, 0x85, 0x1a, 0xf5, 0x97, 0x31, 0xaa, 0xdd, 0x9c, 0xaf, 0x1b, 0x28, 0xc3, 0x4b, 0x55, 0x76, 0xfa, 0xe1, 0x55, 0x76, 0x2c, 0xdb, 0x15, 0x63, 0x05, 0xa8, 0xfc, 0xd5, 0xc5, 0xb6, 0x4b, 0x08, 0x24, 0x9d, 0x4c, 0x40, 0x0a, 0xd1, 0x00, 0xd6, 0x4a, 0x9f, 0x4c, 0xf9, 0x64, 0x57, 0x17, 0x30, 0x63, 0x55, 0x77, 0x20, 0x95, 0x36, 0x81, }; static const unsigned char xdh_wei448_3757_sharedsecret[] = { 0xbe, 0x34, 0x52, 0x6d, 0xe6, 0xc5, 0xbf, 0x2c, 0xf3, 0x54, 0x22, 0xc9, 0x1b, 0xe6, 0xb9, 0xe6, 0xb4, 0x16, 0x51, 0x08, 0x1c, 0x56, 0x40, 0xb5, 0xf1, 0x82, 0x44, 0x69, 0xb8, 0x2d, 0x0f, 0x29, 0x6a, 0xfa, 0x5d, 0xec, 0x09, 0x76, 0x8c, 0xcf, 0x0d, 0x6a, 0x37, 0xc3, 0xe7, 0x02, 0x52, 0x26, 0xcc, 0x4a, 0x57, 0x21, 0x1b, 0xed, 0x4e, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_3757 = { .name = "xdh_wei448_3757", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3757_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3757_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3757_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 153 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3758 for XDH, tcId is 154 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3758_peerpubkey[] = { 0x49, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_3758_privkey[] = { 0x54, 0xec, 0x25, 0x46, 0x9d, 0x62, 0xa1, 0xe4, 0xdd, 0x19, 0x52, 0x16, 0x21, 0x29, 0xf8, 0x67, 0xf9, 0x82, 0x2b, 0x16, 0x1f, 0x40, 0x13, 0xf5, 0x8a, 0xba, 0x62, 0x3f, 0x88, 0x46, 0x4b, 0xf8, 0x92, 0xbd, 0xa2, 0x9a, 0x1f, 0xf9, 0xe5, 0xf6, 0x7b, 0x10, 0xc4, 0x4c, 0xda, 0x0d, 0xab, 0xf0, 0xdc, 0xcb, 0x28, 0x4c, 0x2a, 0x77, 0xf8, 0xad, }; static const unsigned char xdh_wei448_3758_sharedsecret[] = { 0xd7, 0xcb, 0x9f, 0xdb, 0xf3, 0x20, 0x04, 0x45, 0x39, 0xd4, 0x6c, 0x7d, 0xbc, 0xfe, 0xdd, 0x72, 0x37, 0x28, 0xe3, 0xe1, 0xab, 0x38, 0x5d, 0x44, 0x2b, 0x52, 0xaa, 0x7d, 0xfe, 0x4c, 0x13, 0x69, 0x78, 0x27, 0xa2, 0xb8, 0xba, 0x88, 0x06, 0xa9, 0xb1, 0xaf, 0x86, 0xf0, 0x53, 0xe9, 0x0e, 0x46, 0x8e, 0x74, 0x62, 0xf6, 0xc6, 0x69, 0x9e, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3758 = { .name = "xdh_wei448_3758", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3758_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3758_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3758_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 154 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3759 for XDH, tcId is 155 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3759_peerpubkey[] = { 0x60, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_3759_privkey[] = { 0xc4, 0x8c, 0x97, 0xb1, 0x35, 0xcb, 0x79, 0xa7, 0x30, 0xc7, 0x4d, 0x0e, 0x3a, 0xff, 0xc6, 0x3b, 0x88, 0x47, 0x08, 0x4c, 0x59, 0x18, 0x6d, 0x4a, 0x03, 0x69, 0x02, 0xbe, 0x66, 0xc2, 0x27, 0xe5, 0xb3, 0xec, 0x86, 0xdc, 0x16, 0x85, 0x0b, 0x99, 0xec, 0x33, 0x4e, 0xcf, 0x10, 0x1a, 0x9d, 0xe3, 0x48, 0x55, 0x7f, 0x8d, 0x43, 0xd0, 0xf2, 0x8c, }; static const unsigned char xdh_wei448_3759_sharedsecret[] = { 0x85, 0x55, 0x2f, 0xb2, 0x9c, 0xa8, 0x96, 0xe8, 0xfc, 0xb5, 0x42, 0x18, 0x3c, 0xc5, 0x34, 0x3b, 0xf8, 0x91, 0x84, 0xd9, 0xc2, 0x1d, 0x55, 0xe7, 0xa3, 0xf9, 0xe4, 0x52, 0x03, 0xb2, 0x66, 0xf5, 0xcc, 0xef, 0xc6, 0x1c, 0x4f, 0x82, 0x17, 0x8a, 0xa7, 0x39, 0x88, 0xc1, 0x94, 0x8f, 0x11, 0x2a, 0x3c, 0xfb, 0x0a, 0x21, 0xad, 0xe9, 0x4b, 0xde, }; static const wycheproof_xdh_test xdh_wei448_3759 = { .name = "xdh_wei448_3759", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3759_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3759_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3759_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 2, tcId is 155 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3760 for XDH, tcId is 156 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3760_peerpubkey[] = { 0xc9, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_3760_privkey[] = { 0x50, 0x8c, 0x89, 0x13, 0x70, 0xa1, 0x1f, 0x70, 0xce, 0x41, 0xb0, 0x41, 0x3b, 0x2d, 0xfc, 0x58, 0x8b, 0x1a, 0x65, 0x2a, 0x22, 0xc0, 0x99, 0x6e, 0xc3, 0x19, 0xbc, 0x11, 0x16, 0x94, 0xba, 0xf5, 0xd3, 0x40, 0xf8, 0x9e, 0x68, 0x5f, 0x63, 0x5f, 0x4b, 0xdb, 0xd3, 0xb2, 0x93, 0x7e, 0x0d, 0x1a, 0x5a, 0x59, 0x0e, 0x4e, 0xcb, 0x02, 0x7d, 0xab, }; static const unsigned char xdh_wei448_3760_sharedsecret[] = { 0x8a, 0xf2, 0x24, 0x24, 0x98, 0x1f, 0x8f, 0x2a, 0x1b, 0x9c, 0xc2, 0x8d, 0x74, 0x83, 0x30, 0xa7, 0xb6, 0xa7, 0x67, 0x51, 0x66, 0x21, 0x25, 0x23, 0x38, 0x6f, 0x35, 0x9a, 0x50, 0x3b, 0xbd, 0xf3, 0x88, 0x46, 0x57, 0x3a, 0xdd, 0xfe, 0xfb, 0x84, 0x14, 0x89, 0xce, 0x02, 0xb8, 0xb1, 0x69, 0x84, 0x42, 0xd2, 0xfd, 0xc3, 0x87, 0x40, 0xe3, 0x0a, }; static const wycheproof_xdh_test xdh_wei448_3760 = { .name = "xdh_wei448_3760", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3760_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3760_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3760_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 2, tcId is 156 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3761 for XDH, tcId is 157 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3761_peerpubkey[] = { 0x36, 0x5d, 0x56, 0x50, 0xca, 0xe3, 0xf3, 0x1c, 0x35, 0xa5, 0x02, 0x47, 0x3a, 0xdb, 0x15, 0xfd, 0x89, 0x19, 0x5b, 0x57, 0xe2, 0xb4, 0xb1, 0xfd, 0xc2, 0x45, 0x6e, 0x0b, 0xc2, 0x04, 0x96, 0xa9, 0x6a, 0xfc, 0x5c, 0xb0, 0x73, 0xbd, 0x44, 0xbc, 0x44, 0xee, 0x65, 0x88, 0x8a, 0xcd, 0xa6, 0x6a, 0x5f, 0xf9, 0x9a, 0x84, 0xc2, 0xb4, 0xcb, 0x14, }; static const unsigned char xdh_wei448_3761_privkey[] = { 0xec, 0x71, 0x40, 0x02, 0x51, 0x2a, 0xa1, 0x6a, 0x46, 0xd0, 0x0d, 0xb0, 0x6d, 0x41, 0xce, 0xd2, 0x30, 0xac, 0xe2, 0xaf, 0xf1, 0x39, 0x23, 0x09, 0x2b, 0xaf, 0x0f, 0x7e, 0xef, 0x5b, 0xff, 0x83, 0x43, 0xc9, 0xa3, 0x22, 0x59, 0x56, 0x4d, 0xd4, 0x51, 0xb8, 0xa0, 0xcb, 0x5c, 0x98, 0x7a, 0x8e, 0x6f, 0xa8, 0xdb, 0x8e, 0x4c, 0x26, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_3761_sharedsecret[] = { 0x99, 0xdd, 0xf3, 0x46, 0xdc, 0x91, 0x8d, 0x77, 0x2e, 0xc1, 0x1e, 0x89, 0x49, 0x9a, 0x82, 0xf3, 0xc5, 0x3e, 0x0c, 0xa2, 0xfa, 0xd0, 0x58, 0x55, 0x65, 0x3f, 0xc0, 0x7e, 0x5a, 0x15, 0x2b, 0xe3, 0xcf, 0x5e, 0xd9, 0x98, 0x11, 0x83, 0x57, 0x5f, 0x61, 0x2e, 0x59, 0x78, 0x9e, 0x0e, 0x79, 0x19, 0x77, 0x78, 0x58, 0x3e, 0x8b, 0x35, 0x66, 0x9f, }; static const wycheproof_xdh_test xdh_wei448_3761 = { .name = "xdh_wei448_3761", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3761_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3761_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3761_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 157 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3762 for XDH, tcId is 158 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3762_peerpubkey[] = { 0x9f, 0xfd, 0x34, 0xab, 0xca, 0x81, 0xd1, 0x27, 0x46, 0xa1, 0xdd, 0xa1, 0xdd, 0x08, 0xcd, 0xbb, 0x3a, 0x99, 0xac, 0x4a, 0x50, 0x83, 0xb2, 0xbd, 0x9e, 0x25, 0x9a, 0xb5, 0x03, 0xcf, 0x09, 0x83, 0xe5, 0x8f, 0x57, 0x99, 0xab, 0x4e, 0x5c, 0x7e, 0x40, 0x1b, 0x42, 0xbd, 0x75, 0x0c, 0xff, 0x1e, 0xdf, 0xa8, 0xd9, 0x3e, 0xbd, 0x02, 0xe3, 0x6f, }; static const unsigned char xdh_wei448_3762_privkey[] = { 0xe4, 0xd5, 0x1e, 0x5d, 0x74, 0x11, 0x9c, 0xaf, 0x3e, 0xa7, 0xe9, 0x89, 0x91, 0xb3, 0x3f, 0xc0, 0x5b, 0xd7, 0xfe, 0xdb, 0xf5, 0x19, 0x05, 0xee, 0x81, 0xa5, 0x86, 0xcf, 0x76, 0xd4, 0xa5, 0x48, 0x3a, 0x04, 0xab, 0x35, 0xe8, 0x25, 0x9b, 0x84, 0x94, 0xb9, 0x94, 0xa0, 0xc3, 0xad, 0xf8, 0xc9, 0x4c, 0x6a, 0x0e, 0xc9, 0x0e, 0x99, 0x20, 0x98, }; static const unsigned char xdh_wei448_3762_sharedsecret[] = { 0x3c, 0xae, 0x2e, 0xb2, 0x60, 0x18, 0x43, 0x67, 0x6f, 0xb4, 0xe4, 0x9e, 0xa4, 0xdf, 0x44, 0xe8, 0xd3, 0x1b, 0x14, 0xee, 0x36, 0x52, 0xf0, 0x43, 0x0c, 0x11, 0x4b, 0x92, 0xb0, 0xaf, 0xdd, 0xb3, 0xa5, 0x62, 0xf0, 0x53, 0xef, 0x37, 0xb4, 0x16, 0x48, 0x00, 0xfa, 0xc1, 0x53, 0xfc, 0x04, 0x15, 0xff, 0xb4, 0x80, 0xfa, 0xf5, 0x6e, 0x26, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3762 = { .name = "xdh_wei448_3762", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3762_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3762_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3762_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 158 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3763 for XDH, tcId is 159 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3763_peerpubkey[] = { 0xb6, 0x3d, 0xe8, 0xe9, 0x98, 0x47, 0xe6, 0xcf, 0x96, 0x7a, 0x85, 0xc3, 0x1a, 0x66, 0xbc, 0x8c, 0x4c, 0x75, 0x7e, 0x3b, 0x57, 0x2d, 0x62, 0x0a, 0x66, 0x48, 0x36, 0xf1, 0x16, 0x4c, 0x17, 0xb6, 0x23, 0x7e, 0x73, 0x30, 0xb2, 0x63, 0x17, 0x2b, 0x11, 0x93, 0xa6, 0x04, 0xc8, 0x3b, 0xb2, 0x29, 0x6f, 0x83, 0xed, 0x80, 0xd0, 0x67, 0x58, 0x72, }; static const unsigned char xdh_wei448_3763_privkey[] = { 0x30, 0x7c, 0xf5, 0x96, 0x9e, 0x6f, 0xef, 0x65, 0x77, 0x65, 0xe0, 0xcf, 0x2f, 0xa9, 0xaf, 0xa4, 0x26, 0x96, 0xdb, 0x29, 0xd2, 0xc3, 0x69, 0x1c, 0x87, 0x4d, 0xb3, 0x68, 0x77, 0x20, 0x11, 0xe5, 0x0b, 0x4f, 0xb2, 0x2b, 0xbc, 0xd1, 0xbe, 0xb2, 0x35, 0x1a, 0xfb, 0x4e, 0x93, 0xe4, 0x3d, 0x28, 0xbd, 0x6e, 0xb7, 0xb1, 0xf4, 0x6d, 0x9b, 0xb2, }; static const unsigned char xdh_wei448_3763_sharedsecret[] = { 0x2e, 0xe9, 0x7f, 0xd2, 0xb8, 0x73, 0xeb, 0x49, 0x06, 0xae, 0x46, 0x8c, 0xcb, 0x72, 0x27, 0xc7, 0xb5, 0xdd, 0x0b, 0x93, 0x9d, 0x0d, 0x1d, 0x11, 0x2d, 0xfa, 0xe3, 0xdd, 0xe8, 0x2a, 0x2c, 0x8f, 0x04, 0xb3, 0xd1, 0x85, 0x5b, 0x74, 0x1e, 0x3a, 0x50, 0x07, 0x4a, 0x02, 0x06, 0x74, 0x3d, 0x24, 0xd0, 0xfe, 0x5b, 0x2e, 0x3c, 0x6c, 0xc1, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3763 = { .name = "xdh_wei448_3763", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3763_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3763_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3763_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 159 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3764 for XDH, tcId is 160 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3764_peerpubkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, }; static const unsigned char xdh_wei448_3764_privkey[] = { 0x20, 0x73, 0x66, 0xc4, 0x9f, 0xd9, 0x57, 0x4e, 0x45, 0x40, 0x1a, 0x81, 0x77, 0xe1, 0x9e, 0xe9, 0xf0, 0x7a, 0x59, 0xde, 0x79, 0x95, 0xb1, 0x68, 0x4d, 0x42, 0x92, 0x4f, 0x51, 0x36, 0x2f, 0x57, 0x82, 0xc9, 0xcd, 0xf8, 0xdd, 0xe3, 0x7f, 0x61, 0xc0, 0xd4, 0x05, 0x9c, 0x98, 0x4f, 0xca, 0x4a, 0x83, 0x8c, 0x63, 0xd4, 0xa8, 0xcc, 0x76, 0xb0, }; static const unsigned char xdh_wei448_3764_sharedsecret[] = { 0xf3, 0x50, 0x26, 0x6e, 0xf6, 0xf4, 0x60, 0xb0, 0x65, 0xab, 0xdb, 0xd1, 0x19, 0xb6, 0x6d, 0xa5, 0xbe, 0x2d, 0x44, 0xe9, 0x0a, 0xc6, 0xdc, 0xf4, 0x5f, 0xeb, 0x30, 0xed, 0xdf, 0xfb, 0xc3, 0x93, 0xde, 0x01, 0xc5, 0xb1, 0x45, 0x5e, 0x67, 0x19, 0x23, 0x59, 0xeb, 0x0f, 0xc4, 0xdc, 0xff, 0xa1, 0xeb, 0x26, 0xf2, 0x44, 0x2f, 0x49, 0xd5, 0x93, }; static const wycheproof_xdh_test xdh_wei448_3764 = { .name = "xdh_wei448_3764", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3764_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3764_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3764_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 160 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3765 for XDH, tcId is 161 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3765_peerpubkey[] = { 0x4a, 0xc2, 0x17, 0x16, 0x67, 0xb8, 0x19, 0x30, 0x69, 0x85, 0x7a, 0x3c, 0xe5, 0x99, 0x43, 0x73, 0xb3, 0x8a, 0x81, 0xc4, 0xa8, 0xd2, 0x9d, 0xf5, 0x99, 0xb7, 0xc9, 0x0e, 0xe8, 0xb3, 0xe8, 0x49, 0xdc, 0x81, 0x8c, 0xcf, 0x4d, 0x9c, 0xe8, 0xd4, 0xee, 0x6c, 0x59, 0xfb, 0x37, 0xc4, 0x4d, 0xd6, 0x90, 0x7c, 0x12, 0x7f, 0x2f, 0x98, 0xa7, 0x8d, }; static const unsigned char xdh_wei448_3765_privkey[] = { 0x20, 0xaf, 0xa0, 0x64, 0xf5, 0x05, 0x5c, 0x40, 0xad, 0x96, 0xd7, 0x20, 0x14, 0xc3, 0xee, 0x38, 0x8d, 0x4c, 0xc6, 0x01, 0xcb, 0xf4, 0x80, 0xed, 0xa8, 0xdc, 0x97, 0x63, 0xe9, 0xfe, 0xc4, 0x4f, 0x39, 0xaa, 0xd1, 0x12, 0x90, 0x24, 0x10, 0xdd, 0xca, 0xd5, 0xe7, 0x0b, 0x51, 0xd9, 0xd0, 0x03, 0x39, 0x05, 0x40, 0x7d, 0x21, 0x5a, 0xa4, 0x89, }; static const unsigned char xdh_wei448_3765_sharedsecret[] = { 0x9e, 0x08, 0x65, 0x58, 0xe9, 0xba, 0x60, 0xc4, 0x53, 0x28, 0xd4, 0x0d, 0x31, 0x75, 0x8c, 0x52, 0x79, 0x5e, 0xd5, 0x62, 0xcc, 0xc3, 0x21, 0x37, 0x8a, 0x11, 0xe0, 0x28, 0xb9, 0xad, 0x1c, 0xb7, 0xe5, 0xad, 0xf9, 0xbf, 0xd8, 0xf3, 0x55, 0xae, 0x5d, 0xf4, 0x3b, 0x86, 0xe3, 0x26, 0x62, 0x8b, 0x8a, 0x2d, 0x7a, 0x39, 0xb7, 0xe6, 0x6c, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_3765 = { .name = "xdh_wei448_3765", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3765_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3765_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3765_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 2, tcId is 161 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3766 for XDH, tcId is 162 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3766_peerpubkey[] = { 0x61, 0x02, 0xcb, 0x54, 0x35, 0x7e, 0x2e, 0xd8, 0xb9, 0x5e, 0x22, 0x5e, 0x22, 0xf7, 0x32, 0x44, 0xc5, 0x66, 0x53, 0xb5, 0xaf, 0x7c, 0x4d, 0x42, 0x61, 0xda, 0x65, 0x4a, 0xfb, 0x30, 0xf6, 0x7c, 0x1a, 0x70, 0xa8, 0x66, 0x54, 0xb1, 0xa3, 0x81, 0xbf, 0xe4, 0xbd, 0x42, 0x8a, 0xf3, 0x00, 0xe1, 0x20, 0x57, 0x26, 0xc1, 0x42, 0xfd, 0x1c, 0x90, }; static const unsigned char xdh_wei448_3766_privkey[] = { 0x64, 0xd5, 0x41, 0xc8, 0x9f, 0x4f, 0xf3, 0xa4, 0xbd, 0x30, 0x60, 0x5c, 0xb5, 0x11, 0x1d, 0x4f, 0x1f, 0x1e, 0x0f, 0x44, 0x6d, 0x5f, 0xbd, 0xe9, 0x6b, 0xa7, 0x02, 0x16, 0xe2, 0x94, 0xd3, 0xae, 0x4c, 0x7b, 0x26, 0x6a, 0x48, 0xef, 0x7b, 0x57, 0xdf, 0x36, 0xba, 0x4d, 0x92, 0xb1, 0x3e, 0x2c, 0xd2, 0x47, 0x3e, 0xe5, 0x32, 0xac, 0x1d, 0xa4, }; static const unsigned char xdh_wei448_3766_sharedsecret[] = { 0xfa, 0xcf, 0x34, 0x76, 0xfa, 0x25, 0xef, 0x4c, 0xf5, 0x1f, 0xe1, 0x82, 0xb9, 0xd8, 0xac, 0xb0, 0x76, 0x96, 0xea, 0x11, 0x68, 0xb2, 0xbf, 0x03, 0xf0, 0x75, 0xbb, 0x8c, 0xb8, 0x17, 0xd7, 0x41, 0x72, 0xd0, 0x3d, 0x65, 0xe8, 0xf0, 0xe4, 0xa8, 0xe4, 0xd2, 0x31, 0x9b, 0x95, 0x58, 0x9b, 0xeb, 0xdc, 0x39, 0xa5, 0xb0, 0x8e, 0x66, 0xba, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_3766 = { .name = "xdh_wei448_3766", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3766_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3766_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3766_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 162 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3767 for XDH, tcId is 163 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3767_peerpubkey[] = { 0xca, 0xa2, 0xa9, 0xaf, 0x35, 0x1c, 0x0c, 0xe3, 0xca, 0x5a, 0xfd, 0xb8, 0xc5, 0x24, 0xea, 0x02, 0x76, 0xe6, 0xa4, 0xa8, 0x1d, 0x4b, 0x4e, 0x02, 0x3d, 0xba, 0x91, 0xf4, 0x3c, 0xfb, 0x69, 0x56, 0x95, 0x03, 0xa3, 0x4f, 0x8c, 0x42, 0xbb, 0x43, 0xbb, 0x11, 0x9a, 0x77, 0x75, 0x32, 0x59, 0x95, 0xa0, 0x06, 0x65, 0x7b, 0x3d, 0x4b, 0x34, 0xeb, }; static const unsigned char xdh_wei448_3767_privkey[] = { 0x2c, 0x02, 0x97, 0x47, 0xe1, 0x4c, 0x0e, 0xe0, 0x46, 0x8e, 0xa3, 0x9b, 0xe5, 0x7e, 0xd4, 0xe5, 0xc1, 0x49, 0x35, 0xd2, 0x91, 0xba, 0xcb, 0x81, 0x0f, 0xd0, 0xea, 0x3f, 0x94, 0x2b, 0x72, 0x3b, 0x16, 0x80, 0x6e, 0xc2, 0x5d, 0x2d, 0xa5, 0x82, 0xbd, 0xb8, 0x8b, 0xaa, 0x64, 0x93, 0xb7, 0xe5, 0x77, 0x95, 0xcf, 0xbd, 0xe1, 0x33, 0x7e, 0xb2, }; static const unsigned char xdh_wei448_3767_sharedsecret[] = { 0x95, 0xbd, 0xe3, 0x9b, 0x09, 0x67, 0x02, 0xc0, 0x50, 0x20, 0xfd, 0x7b, 0x02, 0xac, 0x3e, 0x0f, 0xd6, 0xc1, 0xa1, 0x82, 0x98, 0x32, 0x37, 0xc1, 0x5d, 0xc1, 0x65, 0x4b, 0x1a, 0x4f, 0x2f, 0x9b, 0x48, 0x84, 0xdc, 0x7e, 0x78, 0xcc, 0x42, 0x2c, 0x6f, 0x75, 0x9a, 0x43, 0x8f, 0x6d, 0x5c, 0x7e, 0xdd, 0x39, 0x59, 0x18, 0x82, 0x5f, 0xfc, 0x62, }; static const wycheproof_xdh_test xdh_wei448_3767 = { .name = "xdh_wei448_3767", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3767_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3767_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3767_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 2, tcId is 163 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3768 for XDH, tcId is 164 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3768_peerpubkey[] = { 0x78, 0xd7, 0xb6, 0x1d, 0x2c, 0x3e, 0xed, 0xb9, 0x51, 0x53, 0x87, 0xa4, 0xb7, 0x73, 0x33, 0xf2, 0x4e, 0x91, 0x47, 0x93, 0x40, 0x18, 0xa1, 0x50, 0x3f, 0x97, 0x2b, 0x8d, 0xe6, 0xaf, 0x64, 0x07, 0xd2, 0x2f, 0x8b, 0x46, 0x39, 0xd5, 0xfb, 0x86, 0x33, 0x6f, 0x71, 0x84, 0x9f, 0x59, 0xa1, 0xa4, 0xc9, 0xee, 0x38, 0xca, 0x73, 0xe0, 0xae, 0x1a, }; static const unsigned char xdh_wei448_3768_privkey[] = { 0x2c, 0x61, 0x29, 0x39, 0x30, 0x07, 0x54, 0x37, 0x0c, 0xfb, 0xc5, 0x59, 0x40, 0x7f, 0x1d, 0x99, 0x80, 0x56, 0x18, 0xd0, 0xc6, 0x93, 0xb5, 0x3f, 0xfc, 0x6c, 0x72, 0xd3, 0x96, 0xd6, 0x04, 0xcd, 0xba, 0xf4, 0x60, 0x0d, 0xd4, 0xc8, 0x86, 0x9d, 0x24, 0xd5, 0xdb, 0xa9, 0x16, 0x2a, 0x9e, 0x8c, 0xbd, 0xad, 0x85, 0xf4, 0x19, 0x87, 0x33, 0xaa, }; static const unsigned char xdh_wei448_3768_sharedsecret[] = { 0x78, 0xcf, 0x5f, 0x5d, 0x2c, 0x09, 0x8b, 0x57, 0xb2, 0x06, 0xf8, 0x9c, 0x2b, 0x1e, 0x84, 0xbc, 0x61, 0x63, 0xda, 0x1f, 0x78, 0x20, 0x6f, 0xbe, 0x50, 0x32, 0xce, 0x64, 0xca, 0xbf, 0x16, 0x82, 0xf9, 0xfd, 0x7b, 0xdc, 0xd0, 0x99, 0xdb, 0xb0, 0xcd, 0x04, 0xed, 0x1d, 0x8a, 0xe3, 0x32, 0xfd, 0x37, 0x88, 0xed, 0x31, 0xfa, 0xb9, 0xec, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3768 = { .name = "xdh_wei448_3768", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3768_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3768_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3768_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 164 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3769 for XDH, tcId is 165 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3769_peerpubkey[] = { 0x3f, 0x29, 0x5d, 0x0d, 0x72, 0xd1, 0x5c, 0xcf, 0xa2, 0x8e, 0x3c, 0xc7, 0xca, 0x96, 0xca, 0xcf, 0xa6, 0x48, 0x49, 0x8f, 0xc1, 0x28, 0x99, 0xed, 0xbb, 0x4d, 0xb1, 0x7f, 0x21, 0x03, 0x2e, 0x24, 0x45, 0x62, 0x5b, 0x15, 0x0c, 0xc6, 0x67, 0x5f, 0x98, 0x25, 0xfa, 0xc1, 0xa9, 0x66, 0x36, 0xfe, 0x1a, 0x92, 0xe8, 0xb2, 0xc2, 0xd4, 0xcf, 0x21, }; static const unsigned char xdh_wei448_3769_privkey[] = { 0x68, 0xfa, 0x79, 0x40, 0x55, 0xc1, 0x7d, 0x38, 0xb1, 0x1a, 0x90, 0x66, 0xa7, 0x5f, 0xdb, 0x3c, 0x2e, 0x3d, 0x01, 0x62, 0x93, 0xea, 0x27, 0x47, 0xe4, 0xe3, 0x56, 0x52, 0xbd, 0xa6, 0x06, 0xcc, 0xac, 0xc2, 0x86, 0x3a, 0xf2, 0x97, 0xcd, 0xc5, 0xc5, 0x87, 0x0c, 0x28, 0x15, 0x64, 0x84, 0xb6, 0xb3, 0xab, 0x2a, 0x72, 0xf8, 0xd9, 0x79, 0x89, }; static const unsigned char xdh_wei448_3769_sharedsecret[] = { 0x89, 0xaf, 0x44, 0xdd, 0xbf, 0x48, 0xea, 0x07, 0xf0, 0x14, 0xff, 0xae, 0x51, 0x7b, 0xcc, 0x3b, 0xab, 0xcc, 0xdb, 0x18, 0x82, 0xd3, 0x43, 0x92, 0x03, 0x4b, 0x3d, 0x57, 0x3d, 0x52, 0x7c, 0x94, 0xdc, 0x57, 0xd6, 0xe0, 0x2d, 0x82, 0x77, 0x43, 0x36, 0x78, 0x91, 0xdc, 0x1a, 0xc7, 0x3a, 0x9a, 0x9e, 0xf5, 0x9d, 0xd0, 0xd0, 0x05, 0xbd, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3769 = { .name = "xdh_wei448_3769", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3769_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3769_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3769_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 165 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3770 for XDH, tcId is 166 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3770_peerpubkey[] = { 0xc1, 0x16, 0xcb, 0x36, 0x8f, 0xe2, 0x8d, 0x08, 0x58, 0x32, 0x15, 0x11, 0xaf, 0x9f, 0x34, 0xe9, 0x0a, 0x00, 0x91, 0xeb, 0x0a, 0xf5, 0x67, 0xd1, 0xb1, 0xc8, 0xaa, 0x28, 0x04, 0x25, 0xc1, 0xd7, 0x30, 0xc2, 0x13, 0xcd, 0x87, 0x32, 0x42, 0xd1, 0x22, 0xf0, 0x2a, 0xf5, 0x04, 0xbb, 0xac, 0x21, 0x82, 0xd2, 0xf0, 0x13, 0xb5, 0xd6, 0xc3, 0x5e, }; static const unsigned char xdh_wei448_3770_privkey[] = { 0x50, 0x43, 0x19, 0x86, 0x65, 0x40, 0x69, 0x49, 0x18, 0xc4, 0xcc, 0x84, 0x26, 0x90, 0xe9, 0xf9, 0xf7, 0x60, 0xb8, 0x99, 0x94, 0x38, 0x29, 0xe8, 0xff, 0x35, 0xdf, 0x38, 0x88, 0x88, 0x9f, 0xa5, 0xd4, 0x2f, 0x02, 0x95, 0xe3, 0x6b, 0x55, 0xed, 0xcf, 0xbe, 0x44, 0x82, 0x17, 0xef, 0x06, 0xcc, 0x53, 0xd9, 0xce, 0x86, 0x90, 0x19, 0x14, 0x95, }; static const unsigned char xdh_wei448_3770_sharedsecret[] = { 0xe0, 0x2e, 0xc6, 0x58, 0x03, 0x16, 0x76, 0x8a, 0x41, 0xe6, 0x0e, 0xe2, 0x7b, 0x81, 0xe4, 0x16, 0x4e, 0x11, 0xa2, 0x82, 0x16, 0x06, 0x1e, 0x7e, 0x58, 0x7a, 0x0f, 0x36, 0x85, 0xbc, 0xdf, 0xc2, 0x14, 0xa4, 0x7a, 0x00, 0x50, 0x0e, 0xcc, 0x77, 0xbc, 0xad, 0x70, 0xcc, 0x7d, 0xef, 0x86, 0xdc, 0xb3, 0xc0, 0x3d, 0x6f, 0xab, 0xf3, 0x69, 0xba, }; static const wycheproof_xdh_test xdh_wei448_3770 = { .name = "xdh_wei448_3770", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3770_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3770_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3770_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 166 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3771 for XDH, tcId is 167 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3771_peerpubkey[] = { 0xa6, 0xfc, 0xf8, 0x1e, 0xe7, 0xb2, 0x33, 0x9e, 0xdb, 0x41, 0x09, 0xb1, 0x08, 0x68, 0x85, 0xdd, 0x7f, 0x3f, 0x6e, 0x3c, 0x34, 0x35, 0xae, 0x1d, 0xb0, 0x8d, 0x5e, 0x1d, 0xdf, 0x6d, 0xc2, 0xc7, 0x81, 0x04, 0xc4, 0x8b, 0x39, 0x41, 0xc9, 0x97, 0xe9, 0x96, 0xa8, 0x86, 0x41, 0x2d, 0xef, 0x9e, 0x4a, 0xd4, 0xb9, 0x00, 0x10, 0xb3, 0x7e, 0x73, }; static const unsigned char xdh_wei448_3771_privkey[] = { 0x48, 0xad, 0x61, 0xa0, 0x59, 0xe9, 0xcd, 0xb4, 0xac, 0x95, 0x84, 0x14, 0xad, 0x14, 0x89, 0x9c, 0x30, 0xe0, 0x5a, 0x00, 0x38, 0xe7, 0xec, 0xf3, 0xda, 0x38, 0xf7, 0x05, 0xe6, 0xf5, 0xd7, 0x73, 0x94, 0x3e, 0xc4, 0xda, 0x47, 0x5d, 0x70, 0x53, 0x23, 0xf7, 0xcc, 0xa4, 0x04, 0x2f, 0x73, 0x1f, 0x0b, 0xc4, 0x03, 0x25, 0x9f, 0x5c, 0x73, 0xa2, }; static const unsigned char xdh_wei448_3771_sharedsecret[] = { 0x9b, 0x47, 0xde, 0xc6, 0x15, 0x7f, 0x57, 0xfc, 0x66, 0x7e, 0x2c, 0x6c, 0xe4, 0x61, 0x7a, 0x28, 0x7f, 0x79, 0xcc, 0x60, 0x41, 0xb2, 0xcb, 0x73, 0xa1, 0x41, 0xf4, 0xd0, 0x4e, 0xe9, 0xc6, 0x3e, 0xd9, 0x41, 0x39, 0x6c, 0x3c, 0xbe, 0xe1, 0x7b, 0x51, 0x99, 0x5b, 0xbf, 0x65, 0xd6, 0xc7, 0x2f, 0x2b, 0xee, 0x8a, 0xbb, 0xc5, 0xec, 0x05, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3771 = { .name = "xdh_wei448_3771", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3771_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3771_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3771_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 2, tcId is 167 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3772 for XDH, tcId is 168 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3772_peerpubkey[] = { 0xf2, 0xce, 0xb7, 0x02, 0x21, 0xeb, 0x2a, 0xaa, 0x4f, 0x9e, 0x75, 0xae, 0x63, 0xd7, 0x34, 0xa5, 0x68, 0xdf, 0x42, 0x65, 0xc3, 0x03, 0xfe, 0x1b, 0x71, 0x51, 0xc3, 0xdf, 0x8f, 0x4d, 0x3a, 0xef, 0x83, 0xed, 0x3d, 0x6f, 0xba, 0xe4, 0xb3, 0x89, 0x91, 0x1b, 0xd5, 0xdf, 0xe9, 0xb2, 0x9b, 0x6e, 0x54, 0x5d, 0xa9, 0x14, 0x50, 0x91, 0xdc, 0x75, }; static const unsigned char xdh_wei448_3772_privkey[] = { 0x68, 0x03, 0x17, 0x8d, 0xff, 0x23, 0xf5, 0x67, 0xe2, 0x48, 0xe3, 0xd1, 0x2c, 0xce, 0xa4, 0x6c, 0xe5, 0xe3, 0xcd, 0x5d, 0xe0, 0xb5, 0x0b, 0x0e, 0x4a, 0xac, 0xdf, 0x06, 0xe0, 0xea, 0x61, 0xf0, 0xec, 0x83, 0x6e, 0x91, 0x26, 0xd2, 0xed, 0x47, 0xb7, 0xb1, 0x71, 0x78, 0x40, 0x19, 0x40, 0x1b, 0x7a, 0x9f, 0xf2, 0x2d, 0xba, 0x64, 0x78, 0x98, }; static const unsigned char xdh_wei448_3772_sharedsecret[] = { 0xf3, 0x15, 0x67, 0xaa, 0x76, 0xa1, 0xf6, 0x5b, 0xea, 0x08, 0x56, 0x99, 0xb6, 0x86, 0x88, 0x4c, 0xe4, 0x77, 0x76, 0xca, 0x76, 0x65, 0xd0, 0x68, 0xc3, 0x4d, 0x80, 0x07, 0x44, 0x31, 0x3f, 0xb5, 0x6b, 0x8b, 0xac, 0x0f, 0x53, 0x00, 0x81, 0xb2, 0xef, 0x21, 0xa1, 0xc8, 0x9b, 0x76, 0x60, 0x68, 0x94, 0xf1, 0x22, 0xe1, 0x5a, 0x25, 0x82, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_3772 = { .name = "xdh_wei448_3772", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3772_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3772_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3772_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 168 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3773 for XDH, tcId is 169 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3773_peerpubkey[] = { 0x64, 0x4f, 0xf2, 0xb8, 0x7b, 0x82, 0xd7, 0xc5, 0x98, 0xcc, 0x9f, 0xfe, 0x97, 0xb9, 0x92, 0xff, 0x7c, 0xee, 0x5c, 0x07, 0x51, 0xaa, 0x78, 0x55, 0xa5, 0x84, 0x2a, 0x27, 0x0c, 0x5a, 0x7a, 0x30, 0xf0, 0xde, 0xcd, 0x0e, 0xeb, 0x52, 0x32, 0xc0, 0xd0, 0xca, 0x32, 0xb9, 0xfd, 0x72, 0x64, 0x90, 0xf9, 0x2f, 0x10, 0x6f, 0x3f, 0xb7, 0xcd, 0x7a, }; static const unsigned char xdh_wei448_3773_privkey[] = { 0x84, 0x7c, 0x63, 0x55, 0x88, 0x1d, 0x77, 0xf4, 0x01, 0x4a, 0xda, 0x76, 0x03, 0x5f, 0x50, 0xf1, 0x99, 0xef, 0x85, 0x6e, 0x1e, 0x50, 0x90, 0x1f, 0xdd, 0x89, 0x1c, 0x50, 0xbe, 0xf7, 0xed, 0x50, 0x33, 0xb2, 0x21, 0xec, 0x06, 0x92, 0xfa, 0x93, 0xa7, 0xbc, 0x2f, 0xe1, 0x14, 0xc6, 0x2a, 0x4e, 0x15, 0xc0, 0xaf, 0x94, 0x1f, 0xcf, 0xb2, 0xa0, }; static const unsigned char xdh_wei448_3773_sharedsecret[] = { 0xa9, 0xbe, 0x02, 0xb3, 0x12, 0x76, 0xaa, 0x9b, 0x2e, 0xef, 0x26, 0xb9, 0xf2, 0xfa, 0xed, 0xe9, 0xb5, 0xc2, 0x4f, 0xa2, 0xc8, 0x2e, 0xef, 0xec, 0xb2, 0x44, 0xde, 0x0c, 0x81, 0x3d, 0x53, 0x58, 0xdd, 0x32, 0x20, 0x8e, 0x80, 0xba, 0x67, 0x56, 0x37, 0xf3, 0x51, 0xc2, 0x40, 0x9f, 0xf0, 0x07, 0x43, 0x79, 0xbd, 0x69, 0x84, 0xd1, 0xe1, 0x07, }; static const wycheproof_xdh_test xdh_wei448_3773 = { .name = "xdh_wei448_3773", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3773_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3773_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3773_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 169 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3774 for XDH, tcId is 170 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3774_peerpubkey[] = { 0x40, 0x13, 0xfa, 0x9a, 0x82, 0x76, 0x97, 0x06, 0x90, 0xf3, 0x5f, 0x8f, 0x1d, 0x9d, 0x9d, 0xc8, 0x40, 0x4a, 0x38, 0x3b, 0x00, 0x3e, 0xf8, 0x74, 0x22, 0xb3, 0xab, 0x14, 0x88, 0x08, 0xcd, 0xae, 0xc0, 0xea, 0xb4, 0x70, 0x8b, 0xda, 0x47, 0x1b, 0xdd, 0x92, 0x20, 0xdb, 0x2f, 0x05, 0x8b, 0x07, 0x94, 0xb0, 0x1d, 0x25, 0x32, 0xb1, 0x47, 0xa8, }; static const unsigned char xdh_wei448_3774_privkey[] = { 0x48, 0x76, 0x84, 0x64, 0x18, 0x15, 0xfc, 0x73, 0x92, 0x53, 0x2b, 0x3b, 0xcf, 0x99, 0xc9, 0xc3, 0x1d, 0x69, 0xdd, 0x35, 0x76, 0xe5, 0x28, 0xf1, 0x92, 0xe7, 0x5a, 0x55, 0xe4, 0x6d, 0xe3, 0x9f, 0xaa, 0x87, 0xef, 0xfb, 0x37, 0x6d, 0x80, 0x6e, 0x10, 0x39, 0xe2, 0xfe, 0xe5, 0x3d, 0x12, 0xd4, 0x77, 0xe3, 0x18, 0xb9, 0x68, 0xdd, 0x3d, 0x86, }; static const unsigned char xdh_wei448_3774_sharedsecret[] = { 0x66, 0x3f, 0x60, 0x9b, 0x2c, 0x06, 0x9a, 0x71, 0x3e, 0xcf, 0x99, 0x1d, 0x73, 0x63, 0x1b, 0x14, 0x59, 0xeb, 0x3d, 0x3b, 0x8f, 0xe3, 0x98, 0xd9, 0x11, 0xfd, 0x91, 0xaa, 0xe2, 0x6f, 0x98, 0x62, 0x59, 0x65, 0x9d, 0xdc, 0x9a, 0x2c, 0x4a, 0xc7, 0xce, 0x62, 0x64, 0x55, 0x05, 0x6b, 0xcb, 0xe3, 0xb4, 0x06, 0xf7, 0x5f, 0xee, 0x5f, 0xb1, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3774 = { .name = "xdh_wei448_3774", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3774_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3774_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3774_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 170 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3775 for XDH, tcId is 171 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3775_peerpubkey[] = { 0xe6, 0xc5, 0x5c, 0x8e, 0xd5, 0xc8, 0xa3, 0x79, 0x85, 0xec, 0x78, 0xcd, 0x92, 0x35, 0x9c, 0x45, 0xf3, 0x35, 0x23, 0x2a, 0x6e, 0xff, 0xed, 0xe4, 0xf8, 0x30, 0xfe, 0x36, 0x83, 0xed, 0x53, 0x19, 0x7d, 0x06, 0xf2, 0x39, 0x50, 0xfd, 0x89, 0x9d, 0x1e, 0x33, 0x3b, 0xe7, 0x32, 0x2e, 0x6f, 0xc3, 0xa8, 0x30, 0x99, 0xa1, 0x1a, 0xb7, 0x3b, 0xc2, }; static const unsigned char xdh_wei448_3775_privkey[] = { 0x50, 0x30, 0xe6, 0x31, 0xfd, 0xbc, 0x43, 0xd5, 0xd6, 0xdc, 0x87, 0x9d, 0xb9, 0x43, 0x5f, 0xeb, 0x09, 0x92, 0x38, 0x80, 0x4f, 0x2f, 0xe3, 0x3c, 0x6d, 0x81, 0x35, 0x12, 0x4f, 0xc2, 0xd5, 0x09, 0x50, 0x26, 0x7b, 0xa2, 0x17, 0x95, 0xe1, 0x83, 0xb3, 0xea, 0x83, 0x40, 0xdd, 0x27, 0xf9, 0xbc, 0x3b, 0x14, 0x26, 0x6a, 0xc0, 0x38, 0x57, 0xb5, }; static const unsigned char xdh_wei448_3775_sharedsecret[] = { 0x47, 0x47, 0x7f, 0x47, 0x34, 0x4f, 0xac, 0xd4, 0x57, 0xf5, 0x41, 0xb0, 0x02, 0xcd, 0xaf, 0x3e, 0x09, 0x5c, 0x01, 0x88, 0x15, 0xba, 0x3f, 0x72, 0x54, 0xc3, 0x4f, 0x08, 0x77, 0x02, 0x50, 0xf3, 0x60, 0x26, 0x6d, 0xcb, 0x40, 0x65, 0x76, 0xc9, 0x58, 0x07, 0xdb, 0x79, 0x71, 0x26, 0x58, 0x7e, 0x8a, 0x8a, 0x2a, 0xfd, 0x28, 0x42, 0x89, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3775 = { .name = "xdh_wei448_3775", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3775_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3775_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3775_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 2, tcId is 171 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3776 for XDH, tcId is 172 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3776_peerpubkey[] = { 0xb2, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_3776_privkey[] = { 0x50, 0x89, 0x93, 0xff, 0x7d, 0xd3, 0x6a, 0x79, 0x51, 0x1d, 0x93, 0x20, 0x9e, 0x4e, 0xaf, 0x50, 0xe0, 0x8c, 0x46, 0x0a, 0xad, 0x5c, 0xdc, 0xfa, 0xab, 0x85, 0x4d, 0x5e, 0x85, 0x75, 0x39, 0x36, 0x53, 0xa7, 0x4c, 0x94, 0xe7, 0xd0, 0x94, 0xbb, 0x59, 0xa7, 0xb9, 0x85, 0x08, 0x74, 0x7d, 0x90, 0x07, 0x5e, 0x5b, 0xc4, 0xbc, 0x13, 0xe6, 0x91, }; static const unsigned char xdh_wei448_3776_sharedsecret[] = { 0xb6, 0x73, 0xdf, 0x07, 0x42, 0x0a, 0xc1, 0xb5, 0xfa, 0x11, 0x20, 0xa1, 0x7d, 0x89, 0x04, 0x6c, 0xdd, 0xca, 0xa0, 0xb2, 0x34, 0xa1, 0xf8, 0x64, 0xd1, 0xfc, 0x17, 0xa2, 0xd5, 0xe7, 0x71, 0xbb, 0x25, 0x0f, 0x0d, 0xc3, 0x87, 0xf3, 0x35, 0x7c, 0x38, 0x09, 0x8a, 0x42, 0x70, 0xee, 0xd6, 0x4e, 0x7b, 0x10, 0x65, 0x13, 0x6a, 0xb8, 0x58, 0x83, }; static const wycheproof_xdh_test xdh_wei448_3776 = { .name = "xdh_wei448_3776", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3776_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3776_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3776_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 172 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3777 for XDH, tcId is 173 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3777_peerpubkey[] = { 0x4c, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_3777_privkey[] = { 0x54, 0x0d, 0x8d, 0x0d, 0x08, 0x30, 0x02, 0x1e, 0x4e, 0xab, 0x07, 0x8a, 0xe2, 0x1b, 0x6c, 0x9e, 0x67, 0xfa, 0x75, 0xe4, 0xbe, 0x5e, 0x95, 0x29, 0x2b, 0xb0, 0x2d, 0x66, 0xe5, 0x79, 0xfd, 0xb5, 0x88, 0xfc, 0x26, 0x67, 0x41, 0x68, 0x6d, 0x58, 0x71, 0x9d, 0x7b, 0xc8, 0xdf, 0x61, 0x94, 0xaa, 0x6e, 0xa8, 0xf8, 0x1e, 0x5c, 0xaa, 0x67, 0xbc, }; static const unsigned char xdh_wei448_3777_sharedsecret[] = { 0x5a, 0xd0, 0x6c, 0x3b, 0x27, 0x76, 0xba, 0x9c, 0x8f, 0x9f, 0xce, 0xd3, 0xa9, 0xdc, 0xb2, 0x67, 0x11, 0x23, 0x54, 0x74, 0x44, 0x7d, 0x4a, 0x06, 0xab, 0xb4, 0x3a, 0x40, 0xc3, 0xea, 0x7f, 0x94, 0x9a, 0x63, 0xe5, 0x49, 0x16, 0x8a, 0x25, 0x1c, 0x4e, 0xd4, 0x88, 0x3b, 0xa0, 0xd3, 0x6c, 0x7a, 0xaf, 0xd0, 0x93, 0x8d, 0x4a, 0x92, 0xa9, 0x67, }; static const wycheproof_xdh_test xdh_wei448_3777 = { .name = "xdh_wei448_3777", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3777_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3777_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3777_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 2, tcId is 173 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3778 for XDH, tcId is 174 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3778_peerpubkey[] = { 0xb3, 0x92, 0xdd, 0x03, 0x81, 0xd9, 0x3c, 0xf9, 0x17, 0x65, 0x93, 0xa3, 0x41, 0x64, 0xc6, 0x6c, 0x4e, 0x02, 0x15, 0xeb, 0xd3, 0x42, 0x74, 0x2b, 0x02, 0x8b, 0x7b, 0x38, 0xe3, 0xa1, 0xf3, 0x04, 0x5c, 0x25, 0xaf, 0x58, 0x71, 0xb5, 0x1b, 0xe6, 0xd2, 0x9a, 0xe5, 0xc0, 0x13, 0xc4, 0x20, 0xba, 0xfd, 0xeb, 0x00, 0x90, 0xe1, 0xe2, 0xa9, 0x1f, }; static const unsigned char xdh_wei448_3778_privkey[] = { 0x28, 0x6c, 0xb4, 0xa0, 0x6a, 0x64, 0xe8, 0x50, 0x85, 0x0b, 0x37, 0x1c, 0xeb, 0x5c, 0x54, 0xfe, 0x71, 0xb1, 0x7c, 0xd0, 0x77, 0x2e, 0x40, 0x78, 0xb0, 0x20, 0x30, 0x66, 0x23, 0x1b, 0xad, 0x70, 0x0c, 0x79, 0x8a, 0xb0, 0xd9, 0x23, 0x62, 0x44, 0x91, 0x0c, 0xd2, 0x3d, 0xb5, 0x8c, 0xb6, 0x52, 0xc8, 0xfa, 0x58, 0x00, 0x95, 0x39, 0x78, 0x9d, }; static const unsigned char xdh_wei448_3778_sharedsecret[] = { 0x3c, 0x1e, 0x26, 0x78, 0x59, 0x0f, 0x9c, 0x5b, 0xc1, 0x24, 0xd6, 0xbb, 0xdd, 0x45, 0xca, 0xc5, 0xde, 0xa3, 0xdc, 0xb2, 0xb4, 0x5a, 0x1f, 0x2a, 0x9e, 0xd2, 0xfd, 0x02, 0x39, 0xd4, 0x89, 0x48, 0x48, 0x97, 0x55, 0x71, 0xc5, 0x23, 0x12, 0x1d, 0xb7, 0xc6, 0x75, 0x69, 0x25, 0xdd, 0xb1, 0x1d, 0x47, 0x9c, 0x89, 0xbe, 0x7c, 0x6a, 0x24, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_3778 = { .name = "xdh_wei448_3778", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3778_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3778_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3778_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 174 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3779 for XDH, tcId is 175 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3779_peerpubkey[] = { 0x4d, 0x6d, 0x22, 0xfc, 0x7e, 0x26, 0xc3, 0x06, 0xe8, 0x9a, 0x6c, 0x5c, 0xbe, 0x9b, 0x39, 0x93, 0xb1, 0xfd, 0xea, 0x14, 0x2c, 0xbd, 0x8b, 0xd4, 0xfd, 0x74, 0x84, 0xc7, 0x1b, 0x5e, 0x0c, 0xfb, 0xa3, 0xda, 0x50, 0xa7, 0x8e, 0x4a, 0xe4, 0x19, 0x2d, 0x65, 0x1a, 0x3f, 0xec, 0x3b, 0xdf, 0x45, 0x02, 0x14, 0xff, 0x6f, 0x1e, 0x1d, 0x56, 0xe0, }; static const unsigned char xdh_wei448_3779_privkey[] = { 0xac, 0x04, 0x50, 0x17, 0xf8, 0x6a, 0xda, 0x85, 0xb3, 0x4f, 0x4f, 0x3e, 0x30, 0x7f, 0xd1, 0xb8, 0x30, 0x49, 0x4c, 0xe7, 0xed, 0xb9, 0x11, 0x56, 0xd2, 0x82, 0xbd, 0xff, 0x17, 0x2a, 0x5a, 0x0a, 0x9b, 0x07, 0x50, 0xf5, 0xbf, 0x35, 0x29, 0x5f, 0x1e, 0x2d, 0xe9, 0x08, 0xa0, 0xf1, 0xdb, 0x31, 0x99, 0x2d, 0xb6, 0xe6, 0xbd, 0xb9, 0xab, 0x93, }; static const unsigned char xdh_wei448_3779_sharedsecret[] = { 0x21, 0x9b, 0xd2, 0x7b, 0x3a, 0x7d, 0xe0, 0x97, 0x9e, 0xca, 0xe9, 0x0c, 0x42, 0xbf, 0x49, 0x3b, 0x76, 0x6e, 0xe1, 0x62, 0xa1, 0x04, 0x56, 0xa1, 0x8d, 0xdc, 0x1a, 0x90, 0x10, 0x65, 0x10, 0x70, 0x52, 0xcc, 0x60, 0xbc, 0xb3, 0xbf, 0x43, 0xa0, 0x31, 0x3d, 0x2a, 0xdb, 0xaa, 0x60, 0x06, 0x32, 0x3a, 0x98, 0x6b, 0x0b, 0xad, 0x79, 0xc7, 0x3e, }; static const wycheproof_xdh_test xdh_wei448_3779 = { .name = "xdh_wei448_3779", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3779_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3779_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3779_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 2, tcId is 175 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3780 for XDH, tcId is 176 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3780_peerpubkey[] = { 0x77, 0x8e, 0x69, 0x65, 0x59, 0x41, 0x2a, 0x31, 0x70, 0x6d, 0x3d, 0x66, 0x89, 0xfe, 0x56, 0xc6, 0x59, 0x80, 0x50, 0x6f, 0x61, 0xc3, 0xaf, 0x47, 0xfc, 0x95, 0x34, 0x09, 0xd7, 0xa3, 0xe2, 0x71, 0x40, 0xf1, 0xff, 0x0d, 0x3b, 0x78, 0xfd, 0xd9, 0x68, 0xe2, 0xc7, 0x8d, 0xdb, 0xc9, 0x73, 0x39, 0x23, 0x91, 0xd7, 0xf3, 0xf2, 0x79, 0x4c, 0x2b, }; static const unsigned char xdh_wei448_3780_privkey[] = { 0x58, 0x46, 0xfe, 0x5d, 0x68, 0x10, 0x30, 0x2d, 0x59, 0x26, 0x11, 0x1b, 0xd0, 0x14, 0x64, 0x02, 0xb2, 0xe4, 0x99, 0x00, 0x55, 0x05, 0x48, 0xc7, 0xfc, 0x64, 0xdf, 0x74, 0xf1, 0xa7, 0xed, 0x88, 0x5b, 0x34, 0x35, 0x87, 0xb6, 0x1e, 0x7c, 0x0f, 0x24, 0xbb, 0x0b, 0x7a, 0xcf, 0x3d, 0x50, 0xe8, 0xc4, 0xb6, 0x81, 0x12, 0x48, 0xba, 0x19, 0xa6, }; static const unsigned char xdh_wei448_3780_sharedsecret[] = { 0xce, 0xd0, 0x69, 0x51, 0x59, 0x28, 0x92, 0xa8, 0xfc, 0xb5, 0xae, 0x62, 0xac, 0xef, 0x4e, 0xfa, 0x70, 0xba, 0xa0, 0x04, 0x85, 0xc8, 0x23, 0xf9, 0x69, 0x75, 0x94, 0xfe, 0xee, 0x5a, 0xdf, 0x2e, 0xf9, 0xa7, 0x06, 0x71, 0xac, 0x34, 0x1a, 0x95, 0x8a, 0x06, 0x1e, 0x58, 0xf2, 0xff, 0x8a, 0x1c, 0xe7, 0x4b, 0x29, 0xf4, 0x2c, 0xf2, 0x43, 0x79, }; static const wycheproof_xdh_test xdh_wei448_3780 = { .name = "xdh_wei448_3780", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3780_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3780_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3780_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 176 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3781 for XDH, tcId is 177 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3781_peerpubkey[] = { 0xfa, 0xf7, 0xdd, 0x10, 0xbc, 0xc8, 0xd4, 0xd3, 0x78, 0xa6, 0x23, 0x00, 0x55, 0x50, 0x0b, 0x4f, 0x87, 0xbb, 0x99, 0x94, 0xac, 0xe5, 0x4e, 0x44, 0xaf, 0xcf, 0xfa, 0x83, 0x6c, 0x0d, 0x0c, 0xee, 0x94, 0xc1, 0x63, 0x7c, 0x3e, 0xcb, 0x01, 0x5a, 0xb1, 0x0f, 0x1e, 0x17, 0xcb, 0x11, 0xc1, 0x82, 0x4d, 0x2b, 0x7d, 0x7e, 0x32, 0x99, 0x3b, 0x2c, }; static const unsigned char xdh_wei448_3781_privkey[] = { 0x1c, 0x3c, 0x44, 0xc6, 0x2c, 0x73, 0xb7, 0xa4, 0x5e, 0x3f, 0x03, 0x15, 0xee, 0x27, 0x43, 0x77, 0xf7, 0xb5, 0xde, 0x3e, 0xd5, 0x2e, 0x9b, 0x0f, 0x26, 0xb0, 0x24, 0xff, 0x54, 0x09, 0x41, 0xde, 0x85, 0xca, 0x07, 0xed, 0x48, 0xcc, 0xd4, 0xd1, 0x9c, 0x3f, 0x7c, 0xf9, 0x90, 0x1f, 0x82, 0x80, 0x04, 0x5c, 0x3b, 0x1e, 0x79, 0x6b, 0xd9, 0xaa, }; static const unsigned char xdh_wei448_3781_sharedsecret[] = { 0xcd, 0xff, 0x5f, 0x86, 0x09, 0x7e, 0x9d, 0x8a, 0x96, 0xe8, 0xfe, 0x6e, 0x4a, 0x2e, 0x95, 0xc2, 0xae, 0x2c, 0x70, 0xae, 0x8f, 0x1d, 0xa1, 0x70, 0x33, 0x0f, 0xe7, 0x01, 0x2e, 0xf6, 0x39, 0x54, 0x86, 0x08, 0xd0, 0x1e, 0xb8, 0xf1, 0x28, 0xd8, 0x91, 0xa7, 0x28, 0xd3, 0x9d, 0x22, 0x1a, 0xe8, 0xa3, 0x78, 0xc2, 0xf7, 0x8a, 0xc3, 0x81, 0x4f, }; static const wycheproof_xdh_test xdh_wei448_3781 = { .name = "xdh_wei448_3781", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3781_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3781_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3781_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 177 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3782 for XDH, tcId is 178 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3782_peerpubkey[] = { 0x17, 0x25, 0x92, 0x91, 0x21, 0x66, 0x3a, 0x42, 0x51, 0x36, 0x7b, 0x83, 0x90, 0xae, 0x13, 0x57, 0x8b, 0x8b, 0x51, 0x50, 0x48, 0x8c, 0x1d, 0x6f, 0x04, 0x27, 0x03, 0xea, 0x32, 0xbc, 0xca, 0xa0, 0x95, 0x6b, 0xeb, 0x67, 0x7b, 0x60, 0x12, 0x3c, 0x5e, 0xdc, 0x84, 0x4c, 0x4e, 0xbc, 0x6a, 0x02, 0xa8, 0x48, 0xbf, 0x8e, 0xb4, 0x5e, 0xcc, 0x3b, }; static const unsigned char xdh_wei448_3782_privkey[] = { 0x98, 0xe1, 0x49, 0x0a, 0xbf, 0x47, 0x97, 0x36, 0xea, 0x94, 0x54, 0x8b, 0x3b, 0x67, 0x26, 0x5d, 0x99, 0x24, 0xd4, 0xac, 0x34, 0xb5, 0xec, 0xb3, 0xf5, 0xfc, 0xe5, 0xe8, 0x06, 0xca, 0xe3, 0x6f, 0x2c, 0x37, 0x8a, 0x10, 0x35, 0x65, 0xb0, 0x9e, 0x45, 0x34, 0x1b, 0xec, 0x4c, 0x0b, 0x64, 0xc9, 0x3c, 0x50, 0x7e, 0xf5, 0x4b, 0xf2, 0x86, 0xbf, }; static const unsigned char xdh_wei448_3782_sharedsecret[] = { 0x4f, 0x84, 0x58, 0x17, 0x8f, 0x9a, 0xaa, 0x90, 0xd8, 0xf0, 0xdc, 0xb5, 0x7a, 0xa2, 0x8b, 0x0f, 0xa4, 0xe0, 0x43, 0x50, 0xb3, 0x1e, 0x62, 0x74, 0xcf, 0x94, 0x68, 0x64, 0xb9, 0x78, 0x80, 0x5f, 0xca, 0x4d, 0x4c, 0x81, 0xdd, 0xb6, 0xd3, 0x2f, 0x6a, 0x05, 0xe2, 0x4f, 0xbf, 0xd5, 0x21, 0xfc, 0x43, 0xe8, 0x48, 0x17, 0x9b, 0x18, 0x78, 0xa9, }; static const wycheproof_xdh_test xdh_wei448_3782 = { .name = "xdh_wei448_3782", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3782_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3782_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3782_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 178 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3783 for XDH, tcId is 179 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3783_peerpubkey[] = { 0xcb, 0x0b, 0x2a, 0xbd, 0x19, 0x4e, 0xb1, 0xbe, 0x14, 0xd4, 0x17, 0xd5, 0xc8, 0x23, 0xa1, 0x51, 0x54, 0xcb, 0x61, 0x5a, 0x30, 0x3e, 0x25, 0xe6, 0x47, 0x4b, 0xfd, 0x56, 0x32, 0x3a, 0x38, 0xf7, 0x88, 0x2f, 0xbc, 0xd7, 0xbc, 0x14, 0x8a, 0xdf, 0xd7, 0x0f, 0xc1, 0x8c, 0x96, 0xa2, 0x95, 0x69, 0xa1, 0x0a, 0xd1, 0xae, 0xea, 0x67, 0x74, 0x4c, }; static const unsigned char xdh_wei448_3783_privkey[] = { 0xb4, 0xc2, 0xee, 0xc4, 0x6e, 0xae, 0xaa, 0x28, 0x63, 0x6a, 0x44, 0xb0, 0x54, 0x21, 0xf4, 0xe1, 0x7d, 0x06, 0x4b, 0xe0, 0xb9, 0xbe, 0x23, 0x22, 0x6e, 0x4f, 0x3c, 0x17, 0x33, 0xf1, 0xd5, 0x3b, 0x35, 0x72, 0x15, 0xdd, 0x84, 0xf4, 0x12, 0x16, 0xa0, 0x98, 0x5a, 0x9d, 0x47, 0x88, 0x34, 0xf8, 0x5a, 0x92, 0xf6, 0x80, 0x8b, 0x10, 0x97, 0xa9, }; static const unsigned char xdh_wei448_3783_sharedsecret[] = { 0xa6, 0x28, 0x6b, 0xb1, 0xba, 0xf9, 0xa0, 0x39, 0xc5, 0x51, 0x80, 0x8f, 0x6a, 0xe2, 0x54, 0x06, 0x84, 0xeb, 0x62, 0x5e, 0x5e, 0x22, 0xec, 0x09, 0x6f, 0xd1, 0x12, 0xb5, 0x2a, 0xe5, 0xe1, 0x03, 0x99, 0x61, 0x8d, 0x84, 0x76, 0x35, 0x28, 0x7f, 0xaf, 0xa4, 0xe3, 0x1d, 0xb4, 0xa6, 0x6f, 0x0c, 0x11, 0x61, 0xfe, 0x6f, 0xfe, 0x1f, 0xbd, 0xce, }; static const wycheproof_xdh_test xdh_wei448_3783 = { .name = "xdh_wei448_3783", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3783_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3783_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3783_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 179 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3784 for XDH, tcId is 180 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3784_peerpubkey[] = { 0x6c, 0x13, 0x1e, 0x6c, 0x22, 0x5f, 0x3c, 0x7c, 0xd0, 0xcb, 0x44, 0xce, 0xad, 0x0f, 0x45, 0xb5, 0x69, 0x88, 0xf7, 0x9f, 0xa1, 0xaf, 0x96, 0x6b, 0xbf, 0x56, 0x74, 0x00, 0xd7, 0x70, 0x2d, 0x05, 0xa6, 0xfb, 0x1f, 0xab, 0xde, 0xc1, 0x9f, 0x81, 0xc0, 0x77, 0xbd, 0xf8, 0xd9, 0x4f, 0x4b, 0x10, 0x51, 0x9e, 0xca, 0xa6, 0x3e, 0xc2, 0x62, 0x66, }; static const unsigned char xdh_wei448_3784_privkey[] = { 0xe8, 0x37, 0x52, 0x97, 0x8a, 0xb8, 0x67, 0xb6, 0x9d, 0x9c, 0xc6, 0x85, 0x23, 0x66, 0xa7, 0xbe, 0x18, 0x4d, 0x16, 0x0f, 0x50, 0xee, 0x2e, 0x93, 0x25, 0x02, 0x16, 0xd2, 0x42, 0x33, 0xab, 0x3c, 0x11, 0x2b, 0x20, 0xd3, 0x05, 0xcf, 0x42, 0x2b, 0xf4, 0xab, 0x1b, 0xdc, 0xb5, 0x7b, 0x14, 0xd6, 0xe1, 0x7b, 0xdf, 0x3b, 0xce, 0x4f, 0xf1, 0x93, }; static const unsigned char xdh_wei448_3784_sharedsecret[] = { 0xfc, 0xd6, 0xb6, 0xe4, 0x41, 0x05, 0xb4, 0xa7, 0x7b, 0xa9, 0xeb, 0xc5, 0x59, 0x63, 0xa3, 0x4e, 0x38, 0x4f, 0x8b, 0x8c, 0x65, 0xae, 0xcb, 0x8e, 0x12, 0x9d, 0x0c, 0x5c, 0x0c, 0x4a, 0xc3, 0x59, 0xbe, 0x9e, 0xa4, 0x9e, 0x61, 0x78, 0x14, 0x73, 0x61, 0xe5, 0xd3, 0x37, 0x2c, 0x13, 0xbf, 0x56, 0x6f, 0xc0, 0x1d, 0xfb, 0xcc, 0x09, 0x0e, 0xf8, }; static const wycheproof_xdh_test xdh_wei448_3784 = { .name = "xdh_wei448_3784", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3784_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3784_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3784_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 2, tcId is 180 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3785 for XDH, tcId is 181 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3785_peerpubkey[] = { 0x39, 0xd9, 0x0d, 0xf6, 0xb5, 0xc6, 0x94, 0x17, 0x16, 0x72, 0x9d, 0xa1, 0x37, 0xf5, 0x8e, 0xd6, 0x86, 0x82, 0xfe, 0xfc, 0xc9, 0x64, 0x14, 0x7b, 0xcb, 0x27, 0x55, 0x1e, 0x1d, 0x1e, 0xd8, 0xb5, 0xe0, 0xbb, 0xba, 0x21, 0x71, 0xa4, 0xa1, 0x20, 0xb0, 0xc8, 0xf5, 0x54, 0xf0, 0x65, 0x9d, 0x4d, 0x81, 0xaa, 0x64, 0xa3, 0xf8, 0x45, 0x86, 0xd5, }; static const unsigned char xdh_wei448_3785_privkey[] = { 0x74, 0xca, 0xbe, 0xa8, 0x82, 0xcd, 0x95, 0x59, 0x4f, 0x57, 0xd5, 0x14, 0x49, 0x02, 0x34, 0x4d, 0xd2, 0xb3, 0xad, 0xb0, 0x45, 0xe5, 0xa6, 0xe2, 0x70, 0xa4, 0x93, 0x72, 0xf0, 0x59, 0x22, 0xc4, 0x5f, 0xa5, 0x00, 0xed, 0x1d, 0x7a, 0x4d, 0x9f, 0xff, 0x58, 0x48, 0x8b, 0x26, 0x55, 0x49, 0x61, 0xef, 0xcb, 0xeb, 0xc6, 0xfa, 0x2b, 0xa8, 0x83, }; static const unsigned char xdh_wei448_3785_sharedsecret[] = { 0xa7, 0xfd, 0xca, 0x0e, 0x15, 0xe5, 0x94, 0x8a, 0xa7, 0x7c, 0xed, 0xd2, 0x7b, 0x76, 0x59, 0x90, 0xd5, 0xe6, 0xab, 0xff, 0x7a, 0x72, 0x6b, 0x9a, 0xc0, 0xea, 0x9b, 0xc4, 0x89, 0x92, 0xd0, 0xee, 0x97, 0x28, 0xa7, 0x23, 0xb7, 0xe1, 0x8c, 0x33, 0x34, 0x1c, 0x30, 0xfb, 0xd5, 0x1f, 0x42, 0xf8, 0xf9, 0xe3, 0x6f, 0x4e, 0x00, 0xc5, 0x4f, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_3785 = { .name = "xdh_wei448_3785", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3785_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3785_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3785_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 2, tcId is 181 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3786 for XDH, tcId is 182 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3786_peerpubkey[] = { 0xf9, 0x23, 0x2f, 0xe9, 0x3b, 0x09, 0xea, 0x23, 0x2f, 0x04, 0x01, 0x14, 0x47, 0x39, 0x6b, 0xee, 0x7b, 0xdf, 0x1a, 0x2e, 0x86, 0x88, 0x7e, 0x9e, 0x68, 0xe7, 0x91, 0x7f, 0xaf, 0xdc, 0x4d, 0xd6, 0x83, 0x7c, 0xe8, 0xfb, 0x08, 0x2b, 0x0b, 0xbd, 0x77, 0xdb, 0x75, 0x62, 0xb2, 0x29, 0xa6, 0xde, 0x12, 0x63, 0x2a, 0x41, 0x62, 0xea, 0xef, 0x2c, }; static const unsigned char xdh_wei448_3786_privkey[] = { 0x40, 0x73, 0x42, 0xcd, 0x35, 0x65, 0x8c, 0x89, 0x33, 0xf1, 0xf0, 0x0d, 0xfc, 0x08, 0xfa, 0x6e, 0x10, 0x19, 0x1d, 0x88, 0x24, 0x4a, 0xcb, 0x65, 0xe2, 0x02, 0x38, 0x3a, 0x43, 0x51, 0xa8, 0x05, 0x09, 0x5d, 0x39, 0x25, 0xab, 0xf3, 0x3b, 0xc4, 0xb6, 0xb5, 0xd5, 0x8d, 0x9a, 0x11, 0x35, 0xe3, 0xf2, 0xa2, 0x7f, 0x3d, 0x48, 0x35, 0x0e, 0x85, }; static const unsigned char xdh_wei448_3786_sharedsecret[] = { 0x19, 0x0b, 0x8c, 0x74, 0xa0, 0xfd, 0xa4, 0x39, 0xb7, 0x8f, 0x39, 0x00, 0x19, 0xaa, 0xff, 0xe2, 0xac, 0x55, 0x6d, 0x05, 0xa1, 0x0e, 0xd2, 0xa8, 0x66, 0xbf, 0x31, 0x4b, 0xe6, 0x5b, 0xa4, 0xfa, 0x84, 0xa9, 0x4d, 0x1f, 0x73, 0x09, 0x9a, 0x62, 0x6f, 0x53, 0x57, 0xc7, 0xa1, 0x90, 0xd5, 0x0a, 0x55, 0xc9, 0x63, 0x33, 0xdd, 0xfb, 0x12, 0x29, }; static const wycheproof_xdh_test xdh_wei448_3786 = { .name = "xdh_wei448_3786", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3786_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3786_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3786_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 182 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3787 for XDH, tcId is 183 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3787_peerpubkey[] = { 0xa6, 0xfb, 0xd6, 0x4a, 0x66, 0xa4, 0x64, 0x54, 0xeb, 0x14, 0x5b, 0x3f, 0x37, 0x05, 0xe0, 0x19, 0x72, 0xb1, 0x49, 0x3b, 0x8e, 0x8f, 0xd4, 0x12, 0x37, 0x19, 0x84, 0xe0, 0x6b, 0x92, 0x6e, 0x76, 0xa7, 0xfd, 0x67, 0x9b, 0xde, 0x61, 0x14, 0x9f, 0xef, 0x27, 0x9f, 0x31, 0xa7, 0x53, 0x21, 0xad, 0x7f, 0x69, 0x37, 0x61, 0x96, 0xe0, 0xa1, 0x9b, }; static const unsigned char xdh_wei448_3787_privkey[] = { 0x80, 0x38, 0x7a, 0x6b, 0x93, 0x1d, 0xfb, 0xf0, 0xa3, 0x22, 0x0c, 0xbc, 0x8e, 0x16, 0x19, 0x46, 0xd6, 0x66, 0xf4, 0x10, 0x8f, 0x14, 0x34, 0x97, 0x9d, 0xeb, 0x6c, 0xec, 0xeb, 0x42, 0x2f, 0x03, 0x7a, 0x26, 0xc6, 0x34, 0xe9, 0x8b, 0x7d, 0x67, 0xdc, 0x8f, 0xd4, 0xea, 0x52, 0xae, 0x0d, 0xb7, 0xd8, 0x32, 0xaf, 0x7a, 0x07, 0x5b, 0x88, 0x96, }; static const unsigned char xdh_wei448_3787_sharedsecret[] = { 0xf6, 0x57, 0x13, 0xc9, 0x81, 0x9e, 0x06, 0xc2, 0x4f, 0x78, 0x41, 0x88, 0x70, 0xde, 0x30, 0xe8, 0x94, 0x98, 0x46, 0x78, 0x6b, 0x2e, 0xed, 0x55, 0x7b, 0x16, 0xb3, 0x12, 0x59, 0xf9, 0xd8, 0xa6, 0xc6, 0xe3, 0x40, 0x8d, 0x15, 0x5e, 0x2f, 0x1a, 0xb9, 0x83, 0xac, 0x64, 0x6d, 0x76, 0x04, 0x2d, 0x97, 0x66, 0x2c, 0xd5, 0x32, 0x83, 0x4e, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3787 = { .name = "xdh_wei448_3787", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3787_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3787_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3787_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 2, tcId is 183 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3788 for XDH, tcId is 184 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3788_peerpubkey[] = { 0x39, 0xbf, 0x39, 0x20, 0x5a, 0xc3, 0xdd, 0x32, 0xd6, 0x09, 0x2d, 0x1b, 0x74, 0x55, 0x79, 0xff, 0x53, 0xfe, 0xa1, 0x03, 0x76, 0xe4, 0xf0, 0xb1, 0xa2, 0xa4, 0xb8, 0x39, 0x5a, 0x6f, 0xaa, 0x85, 0xc2, 0x19, 0xa9, 0x22, 0x41, 0x23, 0xe9, 0x32, 0xe4, 0x92, 0x9d, 0xf4, 0xfd, 0x6b, 0x2b, 0x90, 0xa3, 0xdf, 0xa3, 0xf8, 0x9b, 0xe7, 0x80, 0xaf, }; static const unsigned char xdh_wei448_3788_privkey[] = { 0xf8, 0x6c, 0xb8, 0xff, 0x21, 0x7d, 0xa7, 0x30, 0xd1, 0x84, 0xc7, 0x32, 0x24, 0x63, 0x6a, 0xf9, 0xf7, 0x79, 0xc8, 0x3c, 0x84, 0x4a, 0x1a, 0x85, 0x9b, 0x86, 0xb7, 0x6b, 0xfc, 0x90, 0x5d, 0xd8, 0x09, 0xc5, 0xd7, 0xfd, 0x99, 0xd9, 0xd6, 0xb8, 0x69, 0x5b, 0x6c, 0x1b, 0x9d, 0xd9, 0x94, 0x20, 0x2e, 0x4e, 0x12, 0x6b, 0xc0, 0x0d, 0xe8, 0x9e, }; static const unsigned char xdh_wei448_3788_sharedsecret[] = { 0x71, 0xd0, 0x73, 0x1f, 0xc8, 0x0c, 0x72, 0x53, 0x49, 0x87, 0x3b, 0x22, 0xaf, 0x21, 0x5c, 0x39, 0xf2, 0xec, 0x59, 0x5c, 0xb3, 0x6b, 0x1c, 0x5a, 0x69, 0xbc, 0x5d, 0xdd, 0x75, 0x4e, 0x82, 0x56, 0x3e, 0x06, 0x0d, 0xcb, 0x1d, 0xc8, 0x6b, 0x43, 0x54, 0xbf, 0x20, 0x17, 0xaa, 0x43, 0xbe, 0x1c, 0xa7, 0x39, 0xb4, 0x0d, 0x75, 0xcc, 0x85, 0xd1, }; static const wycheproof_xdh_test xdh_wei448_3788 = { .name = "xdh_wei448_3788", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3788_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3788_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3788_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 184 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3789 for XDH, tcId is 185 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3789_peerpubkey[] = { 0x96, 0x6b, 0x0c, 0x56, 0x8d, 0xca, 0x32, 0x71, 0x75, 0x9b, 0x1a, 0x6c, 0xbd, 0xd5, 0xef, 0x23, 0x86, 0x26, 0x3e, 0xc3, 0x62, 0xc2, 0xa0, 0x76, 0xb8, 0x5b, 0x92, 0x7a, 0xcc, 0xc7, 0x31, 0x90, 0x15, 0xf3, 0x61, 0x53, 0xda, 0x29, 0x0a, 0x81, 0x96, 0x20, 0x31, 0x4e, 0xa1, 0xa2, 0x8e, 0x58, 0xb3, 0xd1, 0xa0, 0xf5, 0x03, 0xde, 0x14, 0xf9, }; static const unsigned char xdh_wei448_3789_privkey[] = { 0x54, 0x48, 0x63, 0x2b, 0xef, 0xfa, 0xf5, 0x36, 0x67, 0x45, 0xe1, 0xd5, 0x92, 0x54, 0xc9, 0x46, 0x52, 0x96, 0xab, 0x37, 0x01, 0x59, 0xbe, 0x41, 0x87, 0x91, 0x9f, 0xa1, 0xbe, 0x25, 0x79, 0x6d, 0x4c, 0x97, 0xba, 0xc0, 0x85, 0xa2, 0xbf, 0x06, 0x55, 0xf2, 0x9e, 0x12, 0x9f, 0x5a, 0xb7, 0xf2, 0x6f, 0xf9, 0x53, 0x62, 0xf3, 0x36, 0xea, 0xbc, }; static const unsigned char xdh_wei448_3789_sharedsecret[] = { 0x0c, 0x72, 0x95, 0x19, 0x74, 0x4c, 0xf1, 0x4b, 0xe7, 0x96, 0x96, 0x32, 0x5a, 0xe8, 0x93, 0x68, 0x77, 0xb3, 0x21, 0xe4, 0x5b, 0x07, 0x57, 0xe4, 0xe5, 0x51, 0x2a, 0xad, 0x2c, 0x1e, 0x8a, 0xa2, 0x33, 0xba, 0x62, 0x24, 0x42, 0xca, 0x55, 0x04, 0x35, 0x9a, 0xdd, 0x3e, 0xc1, 0x9c, 0xef, 0x78, 0x44, 0x64, 0xba, 0x97, 0xfc, 0x81, 0xc3, 0x99, }; static const wycheproof_xdh_test xdh_wei448_3789 = { .name = "xdh_wei448_3789", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3789_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3789_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3789_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 2, tcId is 185 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3790 for XDH, tcId is 186 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3790_peerpubkey[] = { 0x83, 0xbe, 0x7f, 0xd9, 0x06, 0xb8, 0xd3, 0x54, 0x34, 0x57, 0xeb, 0xe5, 0x12, 0x80, 0xcc, 0xd8, 0x0b, 0xb2, 0x7a, 0xe0, 0x52, 0xf3, 0xa0, 0x3a, 0x3f, 0x2d, 0x78, 0x90, 0x28, 0xdb, 0x25, 0xe4, 0x30, 0xa8, 0xbc, 0xcc, 0x90, 0xe8, 0x37, 0x1e, 0x20, 0x76, 0x5f, 0xf4, 0x79, 0x82, 0x83, 0xfb, 0x35, 0x59, 0xde, 0xb3, 0x1c, 0x80, 0x88, 0x3a, }; static const unsigned char xdh_wei448_3790_privkey[] = { 0x30, 0xf2, 0x81, 0xd7, 0xb8, 0x24, 0xb6, 0x5f, 0x37, 0x5e, 0xb0, 0x57, 0x8f, 0xa9, 0x12, 0x30, 0x22, 0xfb, 0x58, 0xc0, 0xb0, 0xb9, 0x39, 0x88, 0x93, 0x20, 0x39, 0x46, 0x7c, 0x0e, 0x0c, 0x23, 0x03, 0x97, 0xd0, 0xa2, 0xdd, 0x67, 0xf3, 0x0a, 0x31, 0x97, 0x76, 0x1c, 0x5f, 0x42, 0x49, 0x89, 0x48, 0xe2, 0x5e, 0x3a, 0x25, 0xc3, 0x06, 0x9e, }; static const unsigned char xdh_wei448_3790_sharedsecret[] = { 0xb8, 0x45, 0xc3, 0xd7, 0xb6, 0x4a, 0x4f, 0xc8, 0xc3, 0x01, 0xef, 0xa0, 0x8b, 0x1d, 0xd6, 0x79, 0xb8, 0x50, 0x69, 0x25, 0x29, 0xe7, 0xb7, 0x2d, 0xfb, 0x6d, 0xae, 0xbe, 0x19, 0xaf, 0x5c, 0x3a, 0x4b, 0xd0, 0xad, 0xb6, 0x10, 0xd9, 0x31, 0x75, 0x47, 0xcb, 0x1e, 0x59, 0x87, 0xbe, 0x7e, 0x56, 0x20, 0xd5, 0xdb, 0xf5, 0xdc, 0x15, 0xfe, 0xf3, }; static const wycheproof_xdh_test xdh_wei448_3790 = { .name = "xdh_wei448_3790", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3790_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3790_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3790_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 186 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3791 for XDH, tcId is 187 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3791_peerpubkey[] = { 0xce, 0xd1, 0x73, 0xd5, 0xe9, 0x1d, 0x27, 0xd1, 0x19, 0x13, 0x4e, 0x3c, 0x49, 0xa6, 0xa3, 0x23, 0x65, 0xb7, 0x8c, 0xce, 0x35, 0x29, 0xe9, 0x17, 0x1c, 0x13, 0xe4, 0x7e, 0x46, 0x1c, 0xfb, 0xfd, 0x8e, 0x77, 0xca, 0x34, 0x9d, 0x75, 0xf1, 0xdb, 0xc1, 0xc0, 0x64, 0xce, 0x72, 0x57, 0xb2, 0x0e, 0x63, 0x89, 0xa2, 0x0b, 0x6a, 0xef, 0x40, 0x3b, }; static const unsigned char xdh_wei448_3791_privkey[] = { 0x10, 0xad, 0x34, 0x79, 0x4a, 0x7d, 0x03, 0x35, 0x1b, 0xdd, 0x7e, 0xf9, 0x11, 0x25, 0x7b, 0x0c, 0x94, 0x32, 0x1f, 0xa2, 0x3c, 0xf8, 0xea, 0x60, 0x57, 0xdc, 0x47, 0xd5, 0x16, 0xe4, 0xe5, 0x5d, 0x32, 0xa3, 0x0f, 0x5a, 0xdb, 0x71, 0xdc, 0x96, 0x84, 0xeb, 0xaf, 0xfc, 0x34, 0xca, 0xfb, 0x1a, 0xc7, 0xea, 0x17, 0xe7, 0xb1, 0xb6, 0xb2, 0x8c, }; static const unsigned char xdh_wei448_3791_sharedsecret[] = { 0x99, 0xf2, 0x61, 0xb7, 0x3f, 0x1c, 0x83, 0x75, 0x13, 0x2b, 0x0b, 0x1e, 0x02, 0x8b, 0x2c, 0xe3, 0x38, 0x25, 0xf3, 0xd7, 0x3f, 0x43, 0xd5, 0xc1, 0x24, 0x4e, 0x7f, 0xbd, 0xfb, 0x03, 0x03, 0x2a, 0xe2, 0x02, 0x70, 0xc1, 0x17, 0x0c, 0x23, 0x76, 0x48, 0x9b, 0x02, 0x06, 0x3a, 0x3a, 0xc2, 0x5c, 0xbf, 0xd0, 0xaf, 0x68, 0xbc, 0xa2, 0xea, 0xda, }; static const wycheproof_xdh_test xdh_wei448_3791 = { .name = "xdh_wei448_3791", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3791_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3791_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3791_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 187 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3792 for XDH, tcId is 188 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3792_peerpubkey[] = { 0x18, 0x3f, 0x07, 0xf6, 0x5f, 0x94, 0x57, 0x8f, 0xe8, 0x30, 0x92, 0xfc, 0x2f, 0x75, 0x58, 0xba, 0x2d, 0xa6, 0x88, 0x2d, 0x29, 0xf0, 0xcc, 0x6f, 0xc9, 0x35, 0xee, 0xca, 0x2f, 0xc9, 0xb9, 0x2b, 0xc5, 0x86, 0x21, 0x6f, 0x2b, 0x07, 0xca, 0xdd, 0xe4, 0x59, 0x7a, 0x71, 0x3a, 0x4d, 0x93, 0xeb, 0x7b, 0xc5, 0x55, 0x4e, 0xd6, 0x02, 0xbf, 0x9f, }; static const unsigned char xdh_wei448_3792_privkey[] = { 0x10, 0x6a, 0x1d, 0x78, 0x39, 0x7d, 0x90, 0xa0, 0x4b, 0x84, 0x4c, 0x57, 0x78, 0x4d, 0x82, 0xac, 0xe4, 0xe9, 0xa6, 0xed, 0x25, 0x15, 0x7f, 0xac, 0x82, 0x13, 0xc3, 0x7b, 0xa9, 0xcb, 0xfc, 0x09, 0xb6, 0x01, 0x51, 0x02, 0xd8, 0x48, 0x40, 0xcf, 0xb0, 0x87, 0x81, 0x64, 0x29, 0x32, 0x71, 0x53, 0x93, 0x91, 0xfa, 0x89, 0xb4, 0xf5, 0x24, 0xb0, }; static const unsigned char xdh_wei448_3792_sharedsecret[] = { 0x85, 0xdd, 0x47, 0x7a, 0xa7, 0x6a, 0x49, 0xa5, 0xb6, 0x96, 0x7c, 0xf3, 0x57, 0x06, 0xe0, 0x2e, 0x77, 0x5a, 0x66, 0x90, 0xd5, 0xe0, 0x38, 0xb4, 0x49, 0x63, 0x48, 0x05, 0x39, 0x8b, 0x88, 0x67, 0x28, 0xbb, 0xb7, 0x37, 0x61, 0x33, 0xa3, 0x3a, 0x2d, 0x72, 0xac, 0x3d, 0x12, 0x66, 0x87, 0x0e, 0x23, 0xcc, 0x06, 0x50, 0x49, 0xcd, 0x0b, 0xab, }; static const wycheproof_xdh_test xdh_wei448_3792 = { .name = "xdh_wei448_3792", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3792_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3792_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3792_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 2, tcId is 188 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3793 for XDH, tcId is 189 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3793_peerpubkey[] = { 0xa5, 0xe0, 0xdf, 0x95, 0xbd, 0x49, 0xd5, 0x38, 0xc0, 0x51, 0xaf, 0x55, 0x2c, 0x33, 0x9e, 0x85, 0x1d, 0x8e, 0xb7, 0xd7, 0x67, 0xb2, 0x91, 0x37, 0x9b, 0xcb, 0xab, 0xd3, 0xe3, 0x46, 0x90, 0x01, 0xf5, 0x62, 0xf5, 0xff, 0x9d, 0x36, 0x21, 0x0c, 0x3b, 0x64, 0x85, 0xf4, 0x29, 0xae, 0x6f, 0xc0, 0xcd, 0x60, 0xb2, 0x2a, 0xc1, 0x92, 0xa7, 0x3f, }; static const unsigned char xdh_wei448_3793_privkey[] = { 0xe4, 0x8a, 0x40, 0xaf, 0x2c, 0x95, 0xdc, 0xbd, 0x6b, 0xa8, 0xd4, 0x3a, 0x9c, 0x7a, 0x2a, 0x6f, 0x37, 0x52, 0x68, 0x0c, 0xf4, 0x47, 0x02, 0x9d, 0xd0, 0x25, 0xfa, 0x94, 0x49, 0xc3, 0x21, 0x1f, 0x96, 0x78, 0xea, 0xb7, 0xf8, 0x42, 0x19, 0x0f, 0xfb, 0xf9, 0xaa, 0x3e, 0xbb, 0xd1, 0xb1, 0x99, 0xa7, 0xbf, 0x2e, 0xf3, 0x8b, 0xa9, 0x5d, 0xbf, }; static const unsigned char xdh_wei448_3793_sharedsecret[] = { 0x79, 0x5f, 0x7c, 0x3f, 0x04, 0x21, 0x3c, 0x6f, 0xbf, 0xf0, 0xa0, 0x9d, 0x3d, 0xb3, 0x2b, 0xdd, 0xc0, 0xb4, 0xb8, 0x31, 0xf0, 0x6c, 0xb0, 0xab, 0xf6, 0xdc, 0x4c, 0x40, 0xa4, 0xff, 0x1c, 0x60, 0xa9, 0xde, 0x6e, 0x2b, 0x9b, 0x55, 0x24, 0x99, 0xe0, 0x2b, 0xb8, 0xa7, 0x8c, 0x25, 0x35, 0xfe, 0x7c, 0x32, 0x44, 0xbb, 0x75, 0xe9, 0x0c, 0xbd, }; static const wycheproof_xdh_test xdh_wei448_3793 = { .name = "xdh_wei448_3793", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3793_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3793_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3793_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 189 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3794 for XDH, tcId is 190 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3794_peerpubkey[] = { 0xca, 0xfa, 0x2c, 0xa3, 0x59, 0xec, 0x03, 0xa6, 0xeb, 0x2f, 0x2c, 0x6e, 0x0c, 0xac, 0x04, 0x9d, 0x98, 0x7e, 0x12, 0x20, 0xab, 0xce, 0xf2, 0xb8, 0x47, 0xc4, 0xb8, 0xca, 0x7d, 0xfe, 0xed, 0xe7, 0x1f, 0xb1, 0x3c, 0x0d, 0xb9, 0xbf, 0x83, 0x03, 0x0f, 0xd4, 0x29, 0xc5, 0xdd, 0xfb, 0x84, 0xf4, 0x02, 0xdd, 0xbe, 0x9f, 0x41, 0x29, 0xa1, 0x83, }; static const unsigned char xdh_wei448_3794_privkey[] = { 0x38, 0xc6, 0x29, 0x6b, 0xf0, 0x9f, 0x64, 0xd2, 0xff, 0x74, 0x15, 0x96, 0x33, 0x41, 0x2c, 0x33, 0xa8, 0xf8, 0xe9, 0x74, 0xac, 0x62, 0x54, 0xbc, 0xbe, 0xc7, 0xa4, 0x6b, 0x59, 0xe5, 0x4e, 0x7a, 0x32, 0xc4, 0xee, 0x43, 0x1d, 0x49, 0xed, 0xe5, 0x65, 0x7c, 0xf1, 0x15, 0x5a, 0x6d, 0x81, 0x9f, 0xea, 0xa6, 0xd0, 0x96, 0x32, 0x04, 0x63, 0xb9, }; static const unsigned char xdh_wei448_3794_sharedsecret[] = { 0x11, 0x88, 0x29, 0x30, 0xb0, 0x70, 0x31, 0x4e, 0x8f, 0x38, 0x9e, 0x99, 0xdb, 0x01, 0x91, 0x35, 0x93, 0xc4, 0x3e, 0xef, 0xde, 0x4e, 0x3a, 0xac, 0xbb, 0x81, 0xa2, 0x01, 0xd9, 0xf9, 0xa9, 0x40, 0x3a, 0x11, 0xd1, 0x15, 0xa3, 0x1b, 0x6a, 0xc8, 0x03, 0x15, 0x55, 0xb8, 0xee, 0xaf, 0x96, 0xfc, 0x1f, 0xc6, 0x59, 0xbf, 0x40, 0x78, 0xe2, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3794 = { .name = "xdh_wei448_3794", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3794_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3794_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3794_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 190 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3795 for XDH, tcId is 191 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3795_peerpubkey[] = { 0xcf, 0xa0, 0xd6, 0xe3, 0xc9, 0xb7, 0xa1, 0x64, 0x73, 0xae, 0x83, 0x71, 0xd8, 0xc3, 0xd3, 0xbf, 0xe2, 0x08, 0xbf, 0xd6, 0xb3, 0x53, 0x8b, 0x9d, 0x4c, 0x0c, 0xfe, 0x4f, 0x0d, 0xac, 0x4c, 0x49, 0xaf, 0xac, 0x43, 0xce, 0x33, 0x7c, 0x81, 0x68, 0x5b, 0x54, 0x48, 0xdf, 0x8d, 0x06, 0x01, 0x4e, 0xf4, 0xf0, 0x1d, 0xd3, 0x86, 0xe5, 0x52, 0xd8, }; static const unsigned char xdh_wei448_3795_privkey[] = { 0xa8, 0xec, 0x40, 0xc1, 0x38, 0x22, 0x72, 0xe4, 0x84, 0x2d, 0x82, 0x12, 0x3e, 0xbd, 0x1a, 0x9c, 0x53, 0xc9, 0x6e, 0x0d, 0x53, 0x4e, 0xb0, 0x8a, 0x34, 0x0f, 0xdb, 0x78, 0x7a, 0xfa, 0xd1, 0x18, 0x8b, 0x86, 0xce, 0xfa, 0x92, 0x37, 0xfe, 0xb0, 0x9c, 0x26, 0x53, 0xa0, 0xd3, 0x51, 0x9a, 0x4e, 0x2a, 0x09, 0xaf, 0x8c, 0x25, 0x6a, 0xe8, 0x86, }; static const unsigned char xdh_wei448_3795_sharedsecret[] = { 0x02, 0xf1, 0x8b, 0x6d, 0xcf, 0xf7, 0xd0, 0x9c, 0x0e, 0x87, 0xae, 0x7c, 0xad, 0xb5, 0x9a, 0x51, 0x91, 0x20, 0xd8, 0xc0, 0xde, 0x7a, 0x2a, 0x83, 0xc9, 0x9a, 0xe5, 0x2e, 0xb2, 0x20, 0x8d, 0xc1, 0xf7, 0x02, 0x13, 0x41, 0xf5, 0xe0, 0xb7, 0xc4, 0xd9, 0x18, 0x36, 0x3d, 0x51, 0xaa, 0x4e, 0xd2, 0x55, 0xc7, 0xd6, 0x68, 0x47, 0x70, 0x05, 0x56, }; static const wycheproof_xdh_test xdh_wei448_3795 = { .name = "xdh_wei448_3795", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3795_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3795_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3795_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 2, tcId is 191 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3796 for XDH, tcId is 192 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3796_peerpubkey[] = { 0xc0, 0xb0, 0xae, 0x5b, 0xf6, 0x44, 0xc0, 0x9d, 0xbb, 0xd3, 0x2b, 0x1b, 0xa6, 0xd0, 0xa4, 0x05, 0x58, 0xa5, 0xb9, 0xa7, 0xc2, 0xc9, 0x81, 0x3c, 0xf7, 0x7e, 0x3c, 0x22, 0x53, 0x1e, 0x79, 0xf9, 0xee, 0x3e, 0xb8, 0xec, 0x45, 0x70, 0xf1, 0xce, 0xf3, 0x94, 0x72, 0xc9, 0x70, 0x04, 0xf4, 0xda, 0x1a, 0x21, 0x32, 0xf2, 0x1a, 0x62, 0x48, 0xde, }; static const unsigned char xdh_wei448_3796_privkey[] = { 0x1c, 0x09, 0x4a, 0xa4, 0xb8, 0xd2, 0xfa, 0xe8, 0xc3, 0x93, 0xe4, 0x04, 0x49, 0x6d, 0x8f, 0x13, 0x2f, 0x88, 0xea, 0xca, 0x28, 0x27, 0xe0, 0x84, 0xc0, 0x79, 0x80, 0xa1, 0x95, 0x52, 0x32, 0xf2, 0x69, 0x54, 0x0b, 0x1e, 0x9e, 0x0a, 0x94, 0x64, 0x2e, 0x3e, 0x12, 0x67, 0x20, 0xaf, 0x2e, 0xf0, 0x29, 0x11, 0x08, 0x27, 0xc7, 0xe8, 0x27, 0xa0, }; static const unsigned char xdh_wei448_3796_sharedsecret[] = { 0xda, 0xa6, 0x6a, 0x07, 0x53, 0xa3, 0x07, 0xad, 0x3f, 0xa1, 0xd7, 0x40, 0xec, 0xa4, 0xf0, 0x52, 0x2c, 0xb7, 0xf7, 0x1d, 0xb8, 0xa8, 0x06, 0xf3, 0x20, 0x15, 0x43, 0x38, 0xf0, 0x15, 0x64, 0x89, 0x7f, 0xeb, 0xf8, 0x86, 0x0d, 0x29, 0x2e, 0x66, 0x28, 0x94, 0x22, 0x33, 0x14, 0xe2, 0x8b, 0x75, 0x07, 0xe4, 0x17, 0xf5, 0xfa, 0x90, 0xef, 0x42, }; static const wycheproof_xdh_test xdh_wei448_3796 = { .name = "xdh_wei448_3796", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3796_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3796_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3796_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 2, tcId is 192 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3797 for XDH, tcId is 193 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3797_peerpubkey[] = { 0x5c, 0xd1, 0x6d, 0xee, 0x47, 0x1b, 0x4e, 0xb9, 0x3f, 0xd6, 0xc8, 0x9c, 0x35, 0xf9, 0x43, 0x00, 0xc0, 0xa8, 0xeb, 0x14, 0x9d, 0xfe, 0x2b, 0x86, 0xed, 0x14, 0xe9, 0xa1, 0x5f, 0x73, 0xa2, 0x14, 0x4a, 0xde, 0xed, 0x62, 0x09, 0x73, 0x93, 0x9e, 0x51, 0x7e, 0xf1, 0xe0, 0xb0, 0x7a, 0xa0, 0xfd, 0xaf, 0xff, 0xfc, 0xea, 0x47, 0xf8, 0x27, 0x0f, }; static const unsigned char xdh_wei448_3797_privkey[] = { 0x7c, 0xde, 0xe6, 0xca, 0xf1, 0xae, 0x14, 0x41, 0x2d, 0x4d, 0x36, 0x5b, 0x9f, 0x9d, 0x09, 0x04, 0x50, 0x9e, 0xb8, 0xd5, 0x89, 0x0f, 0xbc, 0x92, 0x30, 0x3b, 0xc6, 0xde, 0xd5, 0xf4, 0xff, 0x27, 0xf1, 0xc5, 0xf3, 0x1c, 0x79, 0x19, 0xcb, 0xe8, 0x34, 0xbc, 0x3c, 0xa6, 0x60, 0x07, 0x64, 0x8b, 0x80, 0x95, 0x56, 0xe0, 0x80, 0x85, 0xf6, 0xc0, }; static const unsigned char xdh_wei448_3797_sharedsecret[] = { 0x94, 0x07, 0x15, 0x78, 0x5c, 0x46, 0x06, 0x4c, 0xbb, 0xd8, 0x50, 0xca, 0x39, 0x7f, 0x1d, 0x93, 0xad, 0x85, 0x23, 0x62, 0xd5, 0xc8, 0x38, 0x9e, 0x80, 0xf3, 0xda, 0xa6, 0x3e, 0xce, 0xdb, 0x98, 0x9e, 0x44, 0x2e, 0x2e, 0x0b, 0xec, 0x9b, 0xf0, 0xc6, 0x1a, 0xa2, 0xf0, 0xb3, 0x47, 0xc8, 0xe3, 0x4d, 0xcb, 0xd8, 0xbc, 0xe5, 0x7b, 0x09, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3797 = { .name = "xdh_wei448_3797", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3797_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3797_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3797_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 193 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3798 for XDH, tcId is 194 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3798_peerpubkey[] = { 0x9a, 0x5d, 0x95, 0xf7, 0x7b, 0xd7, 0xea, 0x31, 0xae, 0x97, 0xba, 0x2d, 0xcd, 0x9e, 0x38, 0x4c, 0xbb, 0x13, 0xf9, 0x82, 0xf6, 0x4c, 0x34, 0xb4, 0xac, 0x47, 0x07, 0xc5, 0x37, 0xee, 0xc7, 0x38, 0x70, 0x10, 0x59, 0x95, 0x81, 0x14, 0x10, 0x52, 0x1e, 0xa0, 0x94, 0xe1, 0x34, 0x2f, 0xd7, 0x09, 0x2a, 0x6c, 0xb3, 0x0a, 0x3e, 0x3f, 0x85, 0x1d, }; static const unsigned char xdh_wei448_3798_privkey[] = { 0xec, 0x55, 0x44, 0x4d, 0xd9, 0x2d, 0xdb, 0x86, 0xc0, 0x18, 0x37, 0x7f, 0x27, 0x61, 0x80, 0x47, 0xe8, 0x47, 0x69, 0xff, 0xc7, 0xa0, 0xbe, 0x40, 0xa0, 0xce, 0x7a, 0x11, 0x84, 0x9c, 0xfb, 0x7b, 0x2b, 0x95, 0x98, 0x40, 0x9d, 0x2c, 0x90, 0x6d, 0xe3, 0x8a, 0x4b, 0x69, 0x25, 0x0c, 0x56, 0x00, 0x71, 0x45, 0x69, 0x92, 0xb4, 0x2f, 0xeb, 0xf0, }; static const unsigned char xdh_wei448_3798_sharedsecret[] = { 0x0b, 0x0e, 0xae, 0x19, 0xc0, 0xb7, 0x83, 0x2b, 0x9c, 0xa0, 0x1f, 0x42, 0xf2, 0xd2, 0xdf, 0xa8, 0xb7, 0x0a, 0x2d, 0x43, 0x19, 0x36, 0xde, 0x41, 0x5a, 0xfa, 0x87, 0x82, 0x44, 0xf7, 0x8c, 0x45, 0x38, 0x1d, 0x69, 0xf1, 0x14, 0x54, 0xad, 0x52, 0xa8, 0x64, 0x1e, 0x2e, 0xc7, 0xea, 0x8e, 0xd5, 0x9b, 0x7b, 0x25, 0xff, 0x89, 0x5d, 0x2d, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_3798 = { .name = "xdh_wei448_3798", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3798_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3798_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3798_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 194 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3799 for XDH, tcId is 195 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3799_peerpubkey[] = { 0x62, 0xd4, 0x3d, 0x01, 0x52, 0x6d, 0xe4, 0xba, 0x9d, 0x3c, 0x2f, 0x2b, 0xf3, 0x06, 0xb7, 0x26, 0x26, 0xf6, 0xe1, 0xcc, 0xe0, 0x4d, 0xc4, 0x44, 0xd9, 0x80, 0xd1, 0xca, 0x21, 0x46, 0x5e, 0x26, 0x0c, 0x7b, 0xb1, 0x6a, 0x03, 0xe8, 0xa1, 0xa4, 0x41, 0x1c, 0x56, 0x83, 0xb6, 0xc6, 0xbb, 0x70, 0xf4, 0x72, 0x59, 0xdd, 0x0a, 0xcb, 0xab, 0x66, }; static const unsigned char xdh_wei448_3799_privkey[] = { 0xc4, 0xba, 0x8b, 0x0c, 0xce, 0x5e, 0x04, 0xa4, 0xce, 0x3b, 0xd6, 0xe0, 0x0e, 0xee, 0xcf, 0x36, 0x35, 0x91, 0x15, 0x75, 0x83, 0x7c, 0x60, 0xca, 0xad, 0x6a, 0xc0, 0xe9, 0x5a, 0x7e, 0xac, 0xa7, 0xe0, 0x4a, 0x16, 0x2a, 0xdf, 0x08, 0xb0, 0x97, 0x68, 0x17, 0x85, 0x46, 0xcc, 0x17, 0x8a, 0x79, 0xdf, 0xd5, 0x5f, 0xf8, 0x6e, 0x4d, 0x3b, 0xc6, }; static const unsigned char xdh_wei448_3799_sharedsecret[] = { 0xe1, 0x84, 0xf6, 0xc8, 0x85, 0x0e, 0xed, 0x31, 0xeb, 0x28, 0x0f, 0x4c, 0xb9, 0xa5, 0x1b, 0x8b, 0xbe, 0x87, 0xe2, 0x08, 0x53, 0xf1, 0xb6, 0x65, 0x86, 0x78, 0xfc, 0xa0, 0xa9, 0xa3, 0x3f, 0x74, 0xd6, 0x2b, 0x36, 0x2e, 0x64, 0x3c, 0x24, 0x23, 0x3c, 0xfb, 0x44, 0x4a, 0x01, 0x0c, 0x96, 0x04, 0xec, 0x59, 0x97, 0xbd, 0xae, 0x1d, 0xeb, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3799 = { .name = "xdh_wei448_3799", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3799_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3799_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3799_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 195 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3800 for XDH, tcId is 196 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3800_peerpubkey[] = { 0xc7, 0x68, 0x07, 0x37, 0x27, 0xc7, 0x65, 0x5e, 0xdd, 0xa7, 0xfa, 0xfe, 0x7a, 0x0a, 0xd7, 0xcb, 0x06, 0xc5, 0x41, 0xfe, 0x64, 0x94, 0xb8, 0xf3, 0x37, 0x4c, 0x55, 0xa9, 0x17, 0xe5, 0xc3, 0xfc, 0xf7, 0x46, 0x71, 0xf3, 0xda, 0x77, 0x38, 0x16, 0x9e, 0x57, 0xf6, 0x8d, 0xc0, 0x32, 0x13, 0x49, 0x1c, 0x8b, 0x17, 0xc0, 0xce, 0x5a, 0x18, 0x70, }; static const unsigned char xdh_wei448_3800_privkey[] = { 0xcc, 0x0d, 0x0c, 0x74, 0x08, 0x60, 0x16, 0x60, 0x9a, 0x02, 0xb6, 0x8e, 0x7e, 0xe7, 0x31, 0xa2, 0x80, 0xd9, 0xdf, 0x60, 0x94, 0x83, 0x86, 0xdc, 0x7c, 0xd7, 0xac, 0xdd, 0xb6, 0x9e, 0xbf, 0xc9, 0xb3, 0xf9, 0x6f, 0x60, 0x33, 0xd1, 0x03, 0xd4, 0xcc, 0x08, 0x61, 0x30, 0x6b, 0x96, 0xb5, 0xb5, 0xbd, 0xf4, 0xe1, 0x22, 0x13, 0xe4, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_3800_sharedsecret[] = { 0xb7, 0xd8, 0xdb, 0xad, 0xfd, 0xcd, 0xe8, 0xa6, 0x77, 0x18, 0x06, 0xd0, 0x95, 0x87, 0x99, 0xdf, 0x01, 0x6b, 0x4e, 0xb7, 0x30, 0x94, 0x9f, 0xa3, 0x76, 0x15, 0x6c, 0x65, 0xd4, 0xe5, 0x9f, 0x43, 0x96, 0x2f, 0xad, 0x95, 0xc3, 0x4b, 0xe8, 0x62, 0xa3, 0x9d, 0x67, 0xb6, 0xd0, 0x00, 0xee, 0x26, 0xdd, 0x10, 0xd2, 0x45, 0x27, 0x29, 0x53, 0x28, }; static const wycheproof_xdh_test xdh_wei448_3800 = { .name = "xdh_wei448_3800", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3800_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3800_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3800_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 196 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3801 for XDH, tcId is 197 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3801_peerpubkey[] = { 0x43, 0x3a, 0xfd, 0xd0, 0xe0, 0x22, 0x37, 0x56, 0x87, 0x7f, 0x23, 0x81, 0x2b, 0xa1, 0x06, 0x14, 0x52, 0xb2, 0xea, 0x7b, 0xb3, 0x12, 0x87, 0xcb, 0x61, 0xc7, 0x93, 0x35, 0xbc, 0x9b, 0xe1, 0xf0, 0xa3, 0xa3, 0x4b, 0xf4, 0xb5, 0xb3, 0x5e, 0x36, 0x25, 0xe2, 0x28, 0xec, 0xeb, 0x8c, 0x6d, 0x7a, 0xea, 0x57, 0xcb, 0x18, 0xaf, 0x80, 0x8f, 0xdb, }; static const unsigned char xdh_wei448_3801_privkey[] = { 0x5c, 0x1c, 0x65, 0x76, 0x62, 0x17, 0x1f, 0x6e, 0x2f, 0xcb, 0xe1, 0xab, 0x8c, 0x94, 0x02, 0xed, 0x22, 0xf2, 0x16, 0x5d, 0xa3, 0xdd, 0x8b, 0x27, 0x04, 0x92, 0x47, 0x49, 0x07, 0x7e, 0xf8, 0x96, 0x93, 0x04, 0x5b, 0xd6, 0xc5, 0x28, 0x4e, 0x6b, 0xf6, 0x9a, 0xd1, 0x4d, 0x34, 0xe3, 0xa2, 0xb8, 0xb4, 0x31, 0x48, 0x09, 0x59, 0x20, 0x24, 0xc4, }; static const unsigned char xdh_wei448_3801_sharedsecret[] = { 0x5e, 0x11, 0x31, 0x9b, 0xad, 0xa5, 0x84, 0xd0, 0xfc, 0xfc, 0x13, 0x73, 0xb2, 0x84, 0x2b, 0x2c, 0x9a, 0x07, 0xde, 0xb2, 0x02, 0x40, 0x29, 0xab, 0xbb, 0x60, 0xb1, 0x73, 0x67, 0x1a, 0xe4, 0x7e, 0x5d, 0xb5, 0x10, 0x9b, 0x6b, 0x0f, 0x1a, 0x26, 0xbc, 0xb7, 0x2a, 0x99, 0x7e, 0x5e, 0xd4, 0x47, 0xb8, 0xf8, 0x10, 0x58, 0xdd, 0xff, 0x13, 0x66, }; static const wycheproof_xdh_test xdh_wei448_3801 = { .name = "xdh_wei448_3801", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3801_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3801_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3801_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 3, tcId is 197 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3802 for XDH, tcId is 198 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3802_peerpubkey[] = { 0x5c, 0x24, 0xfa, 0xde, 0x43, 0x6b, 0x48, 0xe5, 0x8e, 0x11, 0x34, 0x97, 0xd6, 0x5e, 0x50, 0xa6, 0x3c, 0xaa, 0x04, 0x94, 0x06, 0xa4, 0x0f, 0x8e, 0x97, 0x2b, 0x51, 0x6c, 0x43, 0xfd, 0xdb, 0x1f, 0x13, 0xa5, 0x9f, 0x30, 0x11, 0x2c, 0x41, 0x7c, 0xde, 0x5c, 0xd6, 0x49, 0xee, 0x9c, 0xdf, 0xcf, 0x07, 0xe6, 0x67, 0x84, 0x70, 0xb6, 0xfa, 0xdb, }; static const unsigned char xdh_wei448_3802_privkey[] = { 0xb0, 0xb9, 0xe0, 0xa0, 0xe7, 0xfb, 0x7f, 0x8c, 0xee, 0x5e, 0xed, 0x31, 0x0f, 0x8b, 0x1a, 0x56, 0xed, 0x78, 0x35, 0xb7, 0xd3, 0x1e, 0x67, 0x67, 0x16, 0xe5, 0xa9, 0x4c, 0xd9, 0xa6, 0x8d, 0xde, 0x28, 0xc9, 0x46, 0xe7, 0xd2, 0xba, 0x83, 0x34, 0xd3, 0x91, 0x32, 0x80, 0x51, 0xff, 0xfd, 0xbf, 0x57, 0x44, 0x7e, 0x3a, 0xa5, 0x6f, 0xdb, 0xfe, }; static const unsigned char xdh_wei448_3802_sharedsecret[] = { 0x5b, 0x6a, 0xc4, 0xd3, 0x8f, 0x9d, 0x67, 0x22, 0xaf, 0x38, 0x87, 0x99, 0x92, 0xf5, 0x52, 0x06, 0xc2, 0x3b, 0x99, 0xe0, 0xc3, 0x02, 0x87, 0x8a, 0x37, 0x25, 0xd8, 0x95, 0xbf, 0x93, 0x5a, 0x36, 0xf3, 0x40, 0xc9, 0x02, 0x8f, 0x7c, 0x56, 0x23, 0x98, 0xba, 0x97, 0x0c, 0x1c, 0x66, 0x1b, 0x2e, 0x37, 0x93, 0xd3, 0x3a, 0x56, 0xe6, 0xab, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3802 = { .name = "xdh_wei448_3802", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3802_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3802_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3802_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 198 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3803 for XDH, tcId is 199 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3803_peerpubkey[] = { 0xb0, 0xda, 0xb2, 0xd1, 0x3d, 0xbe, 0x2b, 0xdc, 0x02, 0x84, 0x85, 0x55, 0x0c, 0xd6, 0x01, 0x2f, 0x05, 0x3b, 0xd3, 0x34, 0xe5, 0x83, 0x79, 0x66, 0x13, 0x98, 0x57, 0xa7, 0x06, 0xfe, 0xff, 0x56, 0x97, 0x44, 0xfd, 0xaf, 0xea, 0xf4, 0x23, 0x30, 0xcb, 0x68, 0xb0, 0x3f, 0x34, 0xfb, 0xb0, 0xa0, 0x44, 0x34, 0xdf, 0x1a, 0x45, 0x22, 0x1b, 0xf7, }; static const unsigned char xdh_wei448_3803_privkey[] = { 0xb4, 0x44, 0x9e, 0x88, 0x35, 0x52, 0x26, 0x79, 0x06, 0xf1, 0x53, 0xb6, 0x9e, 0x10, 0x8f, 0xe4, 0x4d, 0x03, 0xce, 0xd2, 0x2c, 0x52, 0x94, 0xca, 0xb5, 0x82, 0x0a, 0xce, 0x87, 0xab, 0x2e, 0xcf, 0x7b, 0x1e, 0x15, 0xea, 0x4f, 0x5f, 0x00, 0xef, 0x6f, 0x48, 0xfc, 0x99, 0x2c, 0xcd, 0xc7, 0xfa, 0x5e, 0xf4, 0x63, 0xf3, 0xc1, 0x48, 0x9e, 0xe5, }; static const unsigned char xdh_wei448_3803_sharedsecret[] = { 0xb5, 0x43, 0xcd, 0xdd, 0xe7, 0x44, 0x33, 0xde, 0x82, 0xad, 0xa4, 0xff, 0xa2, 0xaa, 0xe1, 0x5c, 0xf4, 0xfb, 0x34, 0xcc, 0xda, 0xe6, 0x61, 0x3a, 0x7a, 0x96, 0x1e, 0xef, 0xa6, 0xe0, 0x88, 0x7f, 0x59, 0x9e, 0x55, 0xaf, 0x54, 0x48, 0xc7, 0xbd, 0x5b, 0x01, 0xae, 0xfb, 0x47, 0xbb, 0xa8, 0xd6, 0x92, 0x4a, 0xf5, 0x12, 0x36, 0xbf, 0x93, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3803 = { .name = "xdh_wei448_3803", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3803_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3803_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3803_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 3, tcId is 199 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3804 for XDH, tcId is 200 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3804_peerpubkey[] = { 0xc2, 0x75, 0x46, 0x67, 0x80, 0xe7, 0x56, 0x0c, 0x46, 0x6a, 0xf8, 0x66, 0xe0, 0x61, 0xf6, 0x76, 0x7d, 0xbf, 0x18, 0xb4, 0x14, 0x96, 0x40, 0x2b, 0xc1, 0x55, 0x02, 0x28, 0xa3, 0xd0, 0x5e, 0x96, 0x92, 0xb2, 0x7c, 0xcc, 0xa2, 0xb7, 0x3b, 0xa4, 0x8c, 0x06, 0x38, 0xd9, 0x5f, 0xdb, 0x54, 0x6f, 0xa8, 0xa6, 0x61, 0xbe, 0xed, 0xcb, 0xc4, 0x13, }; static const unsigned char xdh_wei448_3804_privkey[] = { 0xd4, 0xf3, 0xf2, 0xdd, 0x24, 0x56, 0x23, 0x45, 0x52, 0x99, 0xcc, 0xa0, 0x37, 0x43, 0x41, 0xaf, 0x75, 0x87, 0x70, 0xa4, 0xad, 0x2f, 0xb1, 0x92, 0x7c, 0x15, 0x07, 0x4a, 0x73, 0x46, 0xa0, 0x9f, 0x41, 0xc9, 0xd1, 0xd6, 0x91, 0x40, 0xfc, 0x81, 0xcc, 0x67, 0xc0, 0x66, 0x66, 0xee, 0x37, 0x60, 0x6a, 0xbc, 0x46, 0x9e, 0x04, 0x62, 0x2a, 0xf6, }; static const unsigned char xdh_wei448_3804_sharedsecret[] = { 0xa8, 0x37, 0xed, 0x51, 0xff, 0x99, 0x28, 0x41, 0x7e, 0x1e, 0x6b, 0x2d, 0xc9, 0x27, 0xc4, 0x4b, 0x59, 0xe1, 0xa7, 0x6d, 0xa7, 0x86, 0x4b, 0x65, 0xfd, 0x12, 0x67, 0x09, 0x82, 0x2c, 0x7d, 0x8d, 0x93, 0x9e, 0x77, 0x78, 0xdc, 0x8f, 0xd8, 0x1c, 0xd3, 0x0b, 0x6c, 0x1d, 0x62, 0x1f, 0xbc, 0x2d, 0xa0, 0x07, 0x0e, 0xc2, 0x0e, 0xdf, 0x5e, 0x88, }; static const wycheproof_xdh_test xdh_wei448_3804 = { .name = "xdh_wei448_3804", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3804_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3804_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3804_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 200 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3805 for XDH, tcId is 201 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3805_peerpubkey[] = { 0xe8, 0x8e, 0x97, 0x65, 0xa7, 0x61, 0x4e, 0x1b, 0xb8, 0xf9, 0x7f, 0xef, 0x3b, 0x3b, 0xcb, 0x99, 0xe0, 0x5e, 0x15, 0x96, 0x1b, 0x69, 0x39, 0xf6, 0x02, 0x2e, 0x5a, 0x32, 0xc4, 0x88, 0xa8, 0x71, 0x80, 0x62, 0x93, 0xd7, 0x6e, 0x32, 0xe3, 0x93, 0x15, 0x7a, 0x95, 0xfc, 0xe8, 0xed, 0xa8, 0x34, 0x15, 0x40, 0xc4, 0xd4, 0x9c, 0xdd, 0xc3, 0x3f, }; static const unsigned char xdh_wei448_3805_privkey[] = { 0x88, 0xc6, 0x5b, 0xf5, 0xb0, 0xe2, 0x14, 0x74, 0x0d, 0xe3, 0x40, 0xf9, 0xbb, 0x56, 0x74, 0xaa, 0x9b, 0xc7, 0x1d, 0x3e, 0xdf, 0x3d, 0x6a, 0xe5, 0x1b, 0x53, 0xc3, 0x92, 0xf4, 0xe2, 0x7b, 0x82, 0x38, 0x93, 0x7e, 0x31, 0xbd, 0xa4, 0xb8, 0xaa, 0x8f, 0xf4, 0x1c, 0xe9, 0x8f, 0x45, 0x7e, 0x62, 0xfc, 0x97, 0x61, 0xb7, 0xd3, 0x2d, 0x61, 0xfc, }; static const unsigned char xdh_wei448_3805_sharedsecret[] = { 0x79, 0xc3, 0x10, 0x61, 0x37, 0x1a, 0xe6, 0xa2, 0x37, 0x42, 0x48, 0x29, 0x9c, 0x2f, 0x53, 0x2e, 0x33, 0xf4, 0x0d, 0x4e, 0x3f, 0x34, 0x18, 0xd3, 0xaa, 0x51, 0x53, 0xd9, 0x45, 0x0c, 0x3d, 0x62, 0xa6, 0xf4, 0x88, 0x30, 0x81, 0x4b, 0xb2, 0xf2, 0xe9, 0x63, 0x63, 0xb8, 0x9d, 0xe8, 0x34, 0x00, 0x68, 0x12, 0xd9, 0x41, 0xe4, 0x2d, 0xd6, 0x38, }; static const wycheproof_xdh_test xdh_wei448_3805 = { .name = "xdh_wei448_3805", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3805_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3805_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3805_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 201 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3806 for XDH, tcId is 202 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3806_peerpubkey[] = { 0x8c, 0x42, 0xb7, 0xe3, 0x7b, 0x44, 0xaf, 0xcc, 0x09, 0x01, 0x0d, 0x97, 0xad, 0x6e, 0x1b, 0x78, 0x94, 0x01, 0x3d, 0x37, 0x7c, 0x5c, 0x2f, 0x1a, 0x75, 0xe9, 0x62, 0x8d, 0xd6, 0x23, 0x91, 0x88, 0x90, 0xca, 0x5f, 0x28, 0x48, 0x82, 0xec, 0x10, 0xc9, 0x37, 0x66, 0xf8, 0xe7, 0xd6, 0xc0, 0x60, 0x55, 0x49, 0x76, 0x46, 0x0b, 0x56, 0xe6, 0x72, }; static const unsigned char xdh_wei448_3806_privkey[] = { 0x4c, 0xee, 0x71, 0x80, 0xf9, 0x3c, 0x8e, 0xb7, 0xae, 0x9e, 0x7c, 0x2a, 0xd7, 0x1c, 0x0c, 0x95, 0xb9, 0x34, 0x91, 0xc3, 0x01, 0x06, 0xd3, 0x38, 0x52, 0x0d, 0xe7, 0x4e, 0xdb, 0x9a, 0x9c, 0x62, 0x18, 0x98, 0xca, 0x56, 0xf6, 0x37, 0x61, 0x9b, 0x86, 0xbb, 0xb1, 0xef, 0xfb, 0xcd, 0xad, 0x9a, 0x08, 0x04, 0xeb, 0xca, 0x3b, 0xc7, 0x64, 0xd4, }; static const unsigned char xdh_wei448_3806_sharedsecret[] = { 0x26, 0xba, 0x56, 0x2a, 0x13, 0x81, 0x75, 0x59, 0xa2, 0x1a, 0xba, 0x7a, 0x7f, 0xfd, 0xc9, 0x24, 0xe9, 0x0d, 0xbb, 0x2c, 0xd3, 0x25, 0xb6, 0x1f, 0x8f, 0x71, 0x63, 0xa5, 0x7e, 0xe0, 0x13, 0x69, 0xa3, 0xee, 0x29, 0x7e, 0xb3, 0x98, 0xe8, 0x39, 0x3e, 0xf9, 0x3b, 0x00, 0x27, 0x66, 0x85, 0x2b, 0x18, 0x2b, 0x61, 0x68, 0xfb, 0x59, 0xf5, 0xa0, }; static const wycheproof_xdh_test xdh_wei448_3806 = { .name = "xdh_wei448_3806", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3806_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3806_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3806_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 202 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3807 for XDH, tcId is 203 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3807_peerpubkey[] = { 0xc6, 0xfc, 0x42, 0xbb, 0x4b, 0x0e, 0xb8, 0x08, 0x16, 0xd7, 0xd2, 0xa3, 0x6d, 0x6d, 0xdc, 0xdd, 0xa2, 0x88, 0xdc, 0xb7, 0x4f, 0xf5, 0xa6, 0x08, 0x69, 0x89, 0x22, 0xe8, 0xa4, 0x36, 0x5c, 0xf1, 0x0c, 0x99, 0x63, 0x7d, 0xf5, 0x5e, 0x49, 0x13, 0x83, 0xe3, 0x37, 0x85, 0x39, 0xf9, 0x05, 0x3c, 0xae, 0xc0, 0x82, 0x00, 0xab, 0xa8, 0x85, 0x9d, }; static const unsigned char xdh_wei448_3807_privkey[] = { 0x8c, 0x94, 0x27, 0xed, 0x2a, 0x45, 0x6c, 0xad, 0x50, 0x18, 0xa7, 0xf6, 0xfb, 0xd2, 0xa3, 0x03, 0xd5, 0x8a, 0x6d, 0x90, 0xf1, 0xbc, 0x6c, 0x14, 0x82, 0x01, 0xac, 0xae, 0x16, 0x1c, 0x47, 0xbf, 0x25, 0xa0, 0x99, 0x56, 0x98, 0x8e, 0xb9, 0xdc, 0x4d, 0x25, 0xf9, 0x23, 0xcb, 0x61, 0xe1, 0x7e, 0x07, 0x4c, 0xfd, 0x76, 0x2b, 0x82, 0xdb, 0xc6, }; static const unsigned char xdh_wei448_3807_sharedsecret[] = { 0x0c, 0x38, 0xc7, 0x52, 0xcf, 0x0b, 0x55, 0x73, 0x3b, 0x27, 0xeb, 0xc4, 0xe1, 0x1a, 0x68, 0x7e, 0x61, 0x81, 0x9a, 0xef, 0x50, 0x3e, 0x40, 0xbc, 0xbb, 0xc9, 0x14, 0xd1, 0x68, 0x85, 0x97, 0x02, 0x14, 0x4b, 0x0c, 0xf8, 0xe6, 0x16, 0x7e, 0x74, 0x8b, 0xc3, 0x30, 0xc0, 0x2d, 0x14, 0xa1, 0xcb, 0x53, 0x6e, 0x79, 0xb2, 0x3b, 0x3e, 0x28, 0x46, }; static const wycheproof_xdh_test xdh_wei448_3807 = { .name = "xdh_wei448_3807", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3807_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3807_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3807_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 3, tcId is 203 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3808 for XDH, tcId is 204 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3808_peerpubkey[] = { 0x71, 0xf3, 0xb6, 0x2f, 0xbe, 0x3c, 0xf0, 0x5f, 0xde, 0x7a, 0x1e, 0x29, 0xdf, 0x2b, 0x7d, 0x25, 0xb0, 0xbe, 0x60, 0x54, 0x63, 0x94, 0x8e, 0xb6, 0xa7, 0x8f, 0x79, 0x04, 0x1a, 0x58, 0x77, 0x2c, 0xc5, 0x2c, 0xaf, 0xa5, 0x4a, 0x3d, 0x18, 0x7d, 0xbc, 0x9e, 0xa0, 0xb9, 0x88, 0xce, 0x57, 0xa5, 0x6c, 0x50, 0x99, 0x3c, 0x19, 0x0a, 0xce, 0xc2, }; static const unsigned char xdh_wei448_3808_privkey[] = { 0x74, 0xb0, 0x8f, 0x37, 0x3f, 0xe6, 0x63, 0xd3, 0x82, 0x16, 0xbc, 0x3a, 0x29, 0xca, 0x5b, 0x43, 0x3b, 0x6f, 0x63, 0xe4, 0xbd, 0x0a, 0xfa, 0xaf, 0xb1, 0x35, 0xca, 0x13, 0x48, 0x0a, 0x96, 0xb2, 0x11, 0xae, 0xeb, 0xbe, 0x8c, 0x7f, 0x54, 0x3f, 0xf8, 0xaf, 0xe0, 0xc5, 0x7a, 0xc0, 0xcc, 0x66, 0xf0, 0x92, 0xfa, 0x32, 0x78, 0xd4, 0x1f, 0xfc, }; static const unsigned char xdh_wei448_3808_sharedsecret[] = { 0x10, 0x63, 0x07, 0x86, 0x6f, 0x10, 0x44, 0x10, 0x7a, 0xfd, 0xaa, 0xde, 0xb4, 0x4e, 0x7b, 0x33, 0x42, 0x2d, 0x0b, 0x8b, 0xbe, 0x17, 0x0d, 0x0d, 0xc0, 0x6f, 0xc5, 0xd4, 0x03, 0x51, 0x17, 0xbf, 0x24, 0xd3, 0xc6, 0x0c, 0xaa, 0xe8, 0x84, 0x9c, 0x1a, 0x89, 0x26, 0xe4, 0x8e, 0x8e, 0x8c, 0xbc, 0x19, 0xf3, 0x66, 0x2e, 0x0d, 0x02, 0x32, 0x09, }; static const wycheproof_xdh_test xdh_wei448_3808 = { .name = "xdh_wei448_3808", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3808_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3808_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3808_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 3, tcId is 204 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3809 for XDH, tcId is 205 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3809_peerpubkey[] = { 0x16, 0x9d, 0x97, 0xbb, 0x31, 0x55, 0xa7, 0x0d, 0x50, 0xce, 0xee, 0x28, 0xb4, 0x23, 0xf2, 0x6e, 0x8e, 0x32, 0x56, 0x64, 0x9b, 0xd9, 0x90, 0x2c, 0x3c, 0xaa, 0x76, 0xd5, 0x3c, 0x40, 0xdb, 0x66, 0x12, 0x12, 0x53, 0x16, 0x1a, 0x53, 0x3e, 0x9f, 0x02, 0x83, 0x01, 0x97, 0xd4, 0x1d, 0xb3, 0xe1, 0x1c, 0x9c, 0xc2, 0xd3, 0xb3, 0x4e, 0xfe, 0x1d, }; static const unsigned char xdh_wei448_3809_privkey[] = { 0x94, 0x0c, 0xa8, 0xb8, 0x03, 0x4f, 0xe7, 0xbe, 0x8f, 0x18, 0xc5, 0x1b, 0x94, 0xbf, 0xb7, 0x69, 0x07, 0x1e, 0xf1, 0x1c, 0x8d, 0xa0, 0xab, 0x22, 0x0f, 0xbf, 0x70, 0xd2, 0x8b, 0x4c, 0xe0, 0x32, 0x67, 0x5d, 0x9b, 0xf8, 0x0b, 0xaa, 0x68, 0x9a, 0xa7, 0x92, 0x8b, 0x7d, 0x11, 0xcc, 0x1a, 0xf4, 0x80, 0x54, 0x24, 0x50, 0x76, 0xf6, 0xc1, 0xc8, }; static const unsigned char xdh_wei448_3809_sharedsecret[] = { 0xbc, 0xb2, 0xc7, 0xf5, 0xb7, 0x9f, 0x87, 0x4f, 0xbb, 0x53, 0xee, 0x23, 0x86, 0x37, 0x29, 0x55, 0x52, 0x80, 0xad, 0x03, 0xab, 0xdf, 0xa3, 0x50, 0xb0, 0x86, 0xc3, 0xf8, 0xd6, 0x58, 0xdd, 0x6e, 0xfe, 0x43, 0x08, 0x7b, 0xdc, 0x51, 0x6a, 0x10, 0xb5, 0x02, 0x26, 0x42, 0xc1, 0x20, 0xb3, 0xb2, 0x83, 0x3c, 0x7b, 0xf1, 0x35, 0xb9, 0x1a, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3809 = { .name = "xdh_wei448_3809", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3809_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3809_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3809_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 205 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3810 for XDH, tcId is 206 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3810_peerpubkey[] = { 0x68, 0x1c, 0xad, 0x6f, 0x89, 0xe7, 0xc7, 0xcc, 0x9a, 0x39, 0x9b, 0x53, 0xe0, 0x95, 0xef, 0xed, 0x7f, 0x28, 0x67, 0x71, 0x35, 0x58, 0x47, 0xfb, 0x9f, 0x2d, 0x47, 0x5a, 0x17, 0xed, 0x2c, 0xb5, 0xd4, 0x2a, 0xc3, 0xb0, 0x6a, 0x9d, 0x54, 0xef, 0xc8, 0xe0, 0x4c, 0x7e, 0xa0, 0x3d, 0xed, 0x4e, 0x0a, 0x13, 0xa8, 0x39, 0xa4, 0x18, 0x55, 0x52, }; static const unsigned char xdh_wei448_3810_privkey[] = { 0xb4, 0xfc, 0x0a, 0xd3, 0x1e, 0xe4, 0x5f, 0xe9, 0x6d, 0x78, 0xa1, 0x42, 0xfd, 0xaa, 0xee, 0xa4, 0x88, 0x74, 0xc1, 0x3e, 0x50, 0xb3, 0xcc, 0x1b, 0x21, 0x25, 0x65, 0x5b, 0x0e, 0x6c, 0xdd, 0x0f, 0x0f, 0xcf, 0x05, 0xdd, 0xe6, 0xaa, 0x24, 0x81, 0x3d, 0x89, 0xe3, 0x27, 0x7b, 0x74, 0x16, 0x98, 0x2c, 0x63, 0x90, 0x96, 0x2c, 0x58, 0x41, 0xd6, }; static const unsigned char xdh_wei448_3810_sharedsecret[] = { 0x34, 0x4f, 0x21, 0xdc, 0x85, 0xe8, 0x52, 0xe6, 0x37, 0xbb, 0x25, 0x39, 0x93, 0x63, 0xa8, 0x5f, 0x93, 0x99, 0xae, 0xdd, 0x58, 0x75, 0x1f, 0x12, 0x29, 0x54, 0x9f, 0xd5, 0x1f, 0x9b, 0xf3, 0xd4, 0xe3, 0xda, 0x85, 0xb6, 0x33, 0xe9, 0x70, 0xeb, 0xbe, 0x2c, 0xb0, 0xc3, 0x05, 0x0a, 0x8e, 0xfa, 0xd2, 0xc0, 0xdc, 0x1f, 0x12, 0xcf, 0x9e, 0x20, }; static const wycheproof_xdh_test xdh_wei448_3810 = { .name = "xdh_wei448_3810", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3810_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3810_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3810_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 206 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3811 for XDH, tcId is 207 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3811_peerpubkey[] = { 0xfc, 0xea, 0xe5, 0x5f, 0xfb, 0x73, 0xef, 0xab, 0x59, 0x91, 0x43, 0xd5, 0xec, 0xb4, 0xeb, 0x27, 0x3e, 0xac, 0x00, 0x23, 0x98, 0x32, 0x67, 0xce, 0x37, 0x31, 0xd2, 0x59, 0xc4, 0x12, 0x89, 0xa0, 0x64, 0xeb, 0x1e, 0x01, 0x96, 0xf4, 0xb4, 0x21, 0x88, 0x39, 0xd3, 0x8c, 0x2b, 0x2d, 0xa4, 0x56, 0x4d, 0x9c, 0x9c, 0x4e, 0xee, 0xb0, 0x7d, 0x73, }; static const unsigned char xdh_wei448_3811_privkey[] = { 0x98, 0x6d, 0x41, 0x1e, 0x70, 0xc6, 0x75, 0x20, 0x06, 0xdc, 0xeb, 0xa8, 0x2a, 0xeb, 0x3c, 0xf0, 0x67, 0x02, 0xc3, 0x7b, 0x47, 0x01, 0x52, 0xf9, 0x84, 0x3a, 0x0f, 0x79, 0xdc, 0xe4, 0x30, 0x83, 0xde, 0x0a, 0x5b, 0x0b, 0x7d, 0xbc, 0x8d, 0x42, 0xf1, 0x17, 0x5d, 0xa7, 0x91, 0xae, 0x4a, 0x3a, 0xb7, 0x99, 0xaa, 0x42, 0x68, 0x78, 0x64, 0xeb, }; static const unsigned char xdh_wei448_3811_sharedsecret[] = { 0x18, 0x88, 0x4d, 0x24, 0x55, 0x04, 0x78, 0xe7, 0xff, 0x6d, 0xc8, 0xa3, 0xab, 0xe2, 0x14, 0x09, 0x50, 0x1d, 0x10, 0xe5, 0xe7, 0xb3, 0xc0, 0x11, 0x4e, 0x86, 0x6f, 0xcc, 0xf3, 0x28, 0xec, 0x06, 0x8d, 0x9a, 0x71, 0xcf, 0x0c, 0x23, 0x2a, 0xb7, 0x52, 0x0b, 0xc5, 0xff, 0xda, 0xc2, 0xfd, 0x17, 0x6b, 0xf9, 0xd4, 0xc2, 0xd6, 0xd3, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3811 = { .name = "xdh_wei448_3811", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3811_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3811_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3811_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 207 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3812 for XDH, tcId is 208 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3812_peerpubkey[] = { 0xbd, 0xb6, 0xdd, 0x23, 0x57, 0x83, 0x22, 0x3c, 0xcb, 0x04, 0x71, 0x44, 0x02, 0x0b, 0xd7, 0x9b, 0xc4, 0x89, 0x94, 0xfa, 0x0a, 0x2b, 0x83, 0x40, 0x6b, 0x31, 0xf8, 0xbd, 0xe5, 0x68, 0x24, 0x19, 0xa8, 0xd4, 0xd6, 0x51, 0x9f, 0xdb, 0xaa, 0x99, 0x5b, 0x65, 0x88, 0xa7, 0x16, 0x35, 0x28, 0x5e, 0x42, 0xd8, 0x7d, 0x81, 0xb3, 0x1d, 0x7f, 0xef, }; static const unsigned char xdh_wei448_3812_privkey[] = { 0xe0, 0xb3, 0x68, 0x6e, 0x8a, 0x99, 0xb8, 0x97, 0xf2, 0xf6, 0x76, 0xbe, 0xf1, 0x2a, 0x64, 0x4e, 0x5d, 0xa5, 0x72, 0x77, 0x7f, 0x69, 0xde, 0xd3, 0x41, 0xc8, 0xf8, 0x6d, 0x1a, 0x7b, 0x46, 0x30, 0x7f, 0xa2, 0xa6, 0x31, 0x64, 0x65, 0x2a, 0x74, 0x3b, 0x32, 0x1b, 0x31, 0x9a, 0xee, 0x53, 0x48, 0xdf, 0x1e, 0xb7, 0x0e, 0xa1, 0x40, 0x30, 0xea, }; static const unsigned char xdh_wei448_3812_sharedsecret[] = { 0x41, 0xd5, 0x40, 0x37, 0xec, 0xe4, 0x86, 0xf2, 0x1d, 0x64, 0x2e, 0x39, 0xc1, 0xa3, 0x75, 0x4c, 0x1b, 0xd3, 0x72, 0x2a, 0x5f, 0x45, 0x1c, 0xf2, 0xe3, 0x06, 0x5e, 0x0b, 0x74, 0xac, 0x87, 0x86, 0x19, 0x6c, 0xe3, 0x31, 0x61, 0xb5, 0x77, 0xb2, 0x8d, 0x7b, 0x21, 0xa8, 0xfe, 0x30, 0x35, 0x50, 0xea, 0xdc, 0x70, 0xb8, 0xa5, 0xb2, 0x7e, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3812 = { .name = "xdh_wei448_3812", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3812_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3812_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3812_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 208 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3813 for XDH, tcId is 209 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3813_peerpubkey[] = { 0xa2, 0x04, 0x8b, 0xf1, 0x1e, 0x9b, 0x23, 0xc4, 0xef, 0x9c, 0xb5, 0x4e, 0x00, 0x04, 0x4a, 0x25, 0xd0, 0xfa, 0x9d, 0x79, 0x38, 0x66, 0x50, 0xb1, 0x47, 0x2b, 0x06, 0x03, 0x97, 0x89, 0xbf, 0xd6, 0x88, 0x0c, 0xb4, 0x6a, 0x16, 0x5e, 0xd4, 0xb6, 0x5f, 0x6e, 0xb7, 0xac, 0x11, 0x86, 0xae, 0x32, 0xfc, 0x49, 0x82, 0x98, 0x70, 0x4c, 0xeb, 0xf4, }; static const unsigned char xdh_wei448_3813_privkey[] = { 0x28, 0x4a, 0x13, 0xb7, 0x14, 0x6b, 0xef, 0xf2, 0x15, 0xb4, 0xb1, 0x76, 0x22, 0xe2, 0x99, 0x6b, 0xe3, 0x02, 0xb3, 0x82, 0x13, 0x7b, 0xef, 0x0f, 0x12, 0x98, 0x1a, 0xfb, 0xec, 0xb8, 0xe6, 0x32, 0x68, 0x3e, 0x14, 0x64, 0x3a, 0x21, 0x5d, 0xcf, 0x84, 0xd9, 0x66, 0x3b, 0x23, 0x1c, 0x22, 0x01, 0x79, 0x1d, 0xc6, 0xd1, 0x5a, 0xec, 0xc8, 0xf0, }; static const unsigned char xdh_wei448_3813_sharedsecret[] = { 0x5f, 0x17, 0x51, 0xad, 0xb0, 0x29, 0x11, 0x9b, 0x34, 0xb3, 0xac, 0x6a, 0x55, 0x5a, 0x87, 0x1e, 0x72, 0x9c, 0x64, 0x46, 0x94, 0x80, 0xb7, 0x28, 0x5f, 0xfe, 0x8c, 0x6d, 0x39, 0x99, 0x37, 0x73, 0xcd, 0xa2, 0x05, 0xc8, 0xe5, 0xa8, 0x5e, 0xc1, 0x62, 0xb6, 0x4e, 0x54, 0x84, 0xac, 0x3b, 0xab, 0xdf, 0xa4, 0x55, 0xb2, 0x22, 0x34, 0x3a, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_3813 = { .name = "xdh_wei448_3813", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3813_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3813_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3813_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 3, tcId is 209 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3814 for XDH, tcId is 210 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3814_peerpubkey[] = { 0x47, 0xe2, 0xf9, 0x07, 0xff, 0xc7, 0x71, 0x9f, 0x0e, 0x10, 0xae, 0x6c, 0x93, 0xa2, 0x37, 0xef, 0xd8, 0x5a, 0x73, 0x35, 0x00, 0x3a, 0x5b, 0x15, 0x8a, 0x6c, 0x63, 0xce, 0xc7, 0xcb, 0x62, 0xba, 0x50, 0x05, 0xc3, 0xfd, 0xc5, 0xc3, 0x70, 0x51, 0xac, 0x1f, 0x38, 0x1f, 0xf6, 0xa1, 0x5b, 0x58, 0xb0, 0x0c, 0x0f, 0x5e, 0xdb, 0x47, 0xa1, 0xfd, }; static const unsigned char xdh_wei448_3814_privkey[] = { 0x84, 0x99, 0x39, 0x9b, 0x48, 0x69, 0x12, 0x6f, 0x19, 0x7c, 0xe3, 0xd9, 0x5f, 0xf6, 0x54, 0x65, 0xe4, 0x73, 0x0d, 0xc1, 0x46, 0x22, 0xbb, 0x1f, 0xf8, 0x84, 0x9a, 0xcb, 0xb0, 0x11, 0x85, 0xdd, 0x53, 0x52, 0x1f, 0x99, 0xed, 0x32, 0x11, 0xfd, 0xe6, 0xd2, 0x31, 0xbf, 0xb3, 0x30, 0x13, 0x25, 0xca, 0x4c, 0xc4, 0x61, 0xf8, 0x10, 0xc5, 0xd7, }; static const unsigned char xdh_wei448_3814_sharedsecret[] = { 0x94, 0xe4, 0xc0, 0x9b, 0xde, 0x5a, 0xc9, 0x72, 0x92, 0x8c, 0xea, 0x74, 0xa0, 0x7d, 0xf4, 0x13, 0x52, 0x92, 0xc5, 0x80, 0xa8, 0x4a, 0xe4, 0x44, 0x25, 0x7f, 0xfe, 0x5c, 0xae, 0xb4, 0xd7, 0x69, 0xe3, 0x2e, 0xdb, 0x41, 0x0f, 0xdb, 0x51, 0xf8, 0x00, 0x38, 0x0d, 0xf7, 0x04, 0xbd, 0x2c, 0x4f, 0x6e, 0x32, 0xcd, 0x5d, 0x20, 0x1b, 0x56, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3814 = { .name = "xdh_wei448_3814", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3814_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3814_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3814_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 3, tcId is 210 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3815 for XDH, tcId is 211 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3815_peerpubkey[] = { 0x6f, 0x8f, 0xd6, 0x68, 0x40, 0x33, 0x37, 0xc6, 0xa4, 0x91, 0xfb, 0x82, 0x59, 0x38, 0xa8, 0x68, 0x84, 0x36, 0x5e, 0x0c, 0x7c, 0x21, 0x77, 0x4c, 0x02, 0xa9, 0xd4, 0x33, 0x70, 0xc0, 0x10, 0xec, 0xb0, 0x2c, 0x5b, 0xc1, 0xf6, 0x9a, 0xd2, 0x48, 0x3a, 0xc1, 0xf3, 0xa2, 0x22, 0x7e, 0x91, 0x2f, 0x8b, 0x6b, 0x5d, 0x37, 0x01, 0x91, 0x8d, 0x2d, }; static const unsigned char xdh_wei448_3815_privkey[] = { 0xc8, 0x9b, 0x1c, 0x81, 0xdf, 0x51, 0x7d, 0xe2, 0xa9, 0x44, 0x4e, 0x0c, 0x01, 0xdb, 0xec, 0x8f, 0x69, 0xb6, 0x30, 0x02, 0x75, 0x4c, 0xda, 0x17, 0x3a, 0xdf, 0x30, 0x98, 0xff, 0x6b, 0xe5, 0xd9, 0x47, 0x6c, 0x86, 0x30, 0x29, 0xb8, 0x9a, 0x55, 0x11, 0xce, 0xda, 0x19, 0x9a, 0x93, 0x87, 0x52, 0x18, 0xd7, 0x75, 0x7f, 0xfc, 0xe5, 0x0c, 0xfa, }; static const unsigned char xdh_wei448_3815_sharedsecret[] = { 0xf3, 0xc3, 0x2f, 0xd5, 0xdc, 0xbe, 0xd9, 0x8b, 0x8e, 0xbd, 0xae, 0xe7, 0x2e, 0xbd, 0xa9, 0x85, 0x42, 0x12, 0x53, 0x86, 0x29, 0xad, 0x49, 0x43, 0xbb, 0x32, 0xde, 0x03, 0xbb, 0xcf, 0x61, 0xf9, 0xdf, 0x8a, 0xc3, 0x8b, 0x33, 0xa7, 0x95, 0xcd, 0xf0, 0x1e, 0x3f, 0xbe, 0xb4, 0x3f, 0x36, 0xd8, 0x00, 0x85, 0x3f, 0x18, 0xb8, 0x61, 0x96, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3815 = { .name = "xdh_wei448_3815", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3815_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3815_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3815_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 211 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3816 for XDH, tcId is 212 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3816_peerpubkey[] = { 0x42, 0xb0, 0x87, 0xd5, 0xc0, 0xee, 0x80, 0xc6, 0x83, 0x11, 0x59, 0x2c, 0xe6, 0x00, 0xbe, 0x77, 0x37, 0xce, 0x36, 0xca, 0x1b, 0x09, 0xd5, 0xa0, 0x54, 0x98, 0x70, 0x90, 0xec, 0x2e, 0x69, 0xad, 0xdd, 0xbe, 0xff, 0x91, 0x6d, 0x11, 0xc9, 0x10, 0x26, 0x55, 0x56, 0x05, 0xb7, 0x7d, 0x36, 0xfe, 0x73, 0x84, 0xfd, 0x61, 0x88, 0x64, 0xb7, 0x43, }; static const unsigned char xdh_wei448_3816_privkey[] = { 0x6c, 0xaa, 0xae, 0x34, 0x24, 0x4f, 0xf9, 0xf3, 0x94, 0x42, 0x82, 0xe4, 0x95, 0x1d, 0x33, 0x7c, 0xd2, 0xec, 0x56, 0xc1, 0x18, 0x0d, 0x71, 0x6d, 0x15, 0x21, 0xe6, 0x38, 0x06, 0x23, 0xd7, 0xf6, 0xc9, 0x9b, 0x44, 0x55, 0x8a, 0xb8, 0x9a, 0x4f, 0xbd, 0xfc, 0x19, 0x10, 0x16, 0xd1, 0x30, 0x8d, 0x3e, 0xf4, 0xf8, 0x59, 0xcc, 0xde, 0xbc, 0xc1, }; static const unsigned char xdh_wei448_3816_sharedsecret[] = { 0x8b, 0xe1, 0xe0, 0x2f, 0x5c, 0x4b, 0x54, 0xaf, 0x63, 0x60, 0xfb, 0x2f, 0x60, 0xfb, 0xbf, 0x71, 0xb1, 0xbe, 0x92, 0xeb, 0xb3, 0x01, 0x17, 0xc6, 0x3b, 0x18, 0xef, 0x41, 0xfe, 0x6f, 0x1d, 0x95, 0xa2, 0xa5, 0x7f, 0xfe, 0x0a, 0x77, 0xff, 0xff, 0xaa, 0x33, 0x01, 0x99, 0x4c, 0x60, 0x22, 0xfa, 0xf2, 0x7f, 0x2a, 0xf0, 0x6a, 0x54, 0x7b, 0x20, }; static const wycheproof_xdh_test xdh_wei448_3816 = { .name = "xdh_wei448_3816", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3816_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3816_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3816_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 212 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3817 for XDH, tcId is 213 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3817_peerpubkey[] = { 0x7b, 0x01, 0x86, 0xa1, 0x53, 0xdc, 0x52, 0x44, 0x47, 0x46, 0xdd, 0x18, 0x5b, 0x9e, 0xa2, 0x74, 0xc3, 0x97, 0x2a, 0xdb, 0x97, 0x37, 0x9f, 0x85, 0x80, 0x13, 0xda, 0x1e, 0x97, 0xa8, 0x3a, 0xf4, 0xb4, 0xd1, 0xda, 0xd2, 0xfe, 0x6d, 0xbd, 0x82, 0x3a, 0xb8, 0x28, 0x70, 0x29, 0xfc, 0x77, 0x17, 0xc8, 0xdc, 0x75, 0x10, 0xca, 0x4d, 0x45, 0x6c, }; static const unsigned char xdh_wei448_3817_privkey[] = { 0x68, 0x37, 0xe4, 0xbc, 0x8b, 0xdf, 0x43, 0xcd, 0x1a, 0x59, 0xeb, 0x1d, 0x7e, 0xe7, 0x4d, 0xa9, 0x7c, 0x5a, 0xaf, 0x7f, 0xdc, 0x89, 0x9e, 0x86, 0x07, 0x72, 0x0b, 0xd3, 0xff, 0x9f, 0x06, 0x0a, 0xcf, 0xcb, 0x3d, 0xb4, 0xec, 0x7f, 0x1e, 0x7b, 0xda, 0x47, 0x30, 0xc9, 0x72, 0xc7, 0x4c, 0x1e, 0xf3, 0x10, 0x6a, 0xfa, 0xab, 0xf3, 0x05, 0xf9, }; static const unsigned char xdh_wei448_3817_sharedsecret[] = { 0x96, 0xb3, 0x6c, 0x86, 0x51, 0x89, 0x15, 0x79, 0x93, 0x7f, 0x5c, 0x6e, 0x16, 0xd2, 0x71, 0x44, 0xa0, 0x37, 0x09, 0xb3, 0x39, 0xee, 0xda, 0xe5, 0x95, 0xb5, 0xe3, 0xbc, 0x98, 0xf2, 0xf8, 0x9f, 0xdc, 0xd7, 0xb2, 0x2c, 0x88, 0x9c, 0x60, 0xd4, 0xcb, 0xa3, 0x0b, 0x7a, 0x15, 0x07, 0x63, 0xf2, 0x92, 0xae, 0x31, 0x8b, 0xc9, 0xd0, 0x66, 0x92, }; static const wycheproof_xdh_test xdh_wei448_3817 = { .name = "xdh_wei448_3817", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3817_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3817_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3817_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 213 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3818 for XDH, tcId is 214 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3818_peerpubkey[] = { 0x07, 0xac, 0x3e, 0xdd, 0x9d, 0xaf, 0x1f, 0x5f, 0x4c, 0x8d, 0x95, 0x05, 0x66, 0xe5, 0xa0, 0x9a, 0xf8, 0x03, 0x54, 0x20, 0x12, 0x2d, 0x33, 0x55, 0xb1, 0xa7, 0x79, 0x66, 0xe8, 0x94, 0x64, 0xe4, 0xbb, 0x22, 0x19, 0x5d, 0xbd, 0x45, 0x68, 0xc0, 0xc8, 0xdb, 0x33, 0x0d, 0xf3, 0x80, 0xa8, 0xd1, 0x0b, 0xe8, 0xe7, 0x07, 0xd2, 0x41, 0xfb, 0xad, }; static const unsigned char xdh_wei448_3818_privkey[] = { 0x40, 0xee, 0x93, 0xef, 0xc8, 0x0c, 0x29, 0xea, 0xf9, 0xef, 0x1f, 0x84, 0xa9, 0x4b, 0xc2, 0xcd, 0xa8, 0xe1, 0xcb, 0x4c, 0x9d, 0x96, 0xb5, 0x91, 0x8b, 0x67, 0x3b, 0x65, 0x1d, 0xf4, 0xbd, 0x86, 0xce, 0x47, 0x78, 0x46, 0x8d, 0x6f, 0x77, 0x81, 0x93, 0x23, 0x6d, 0x74, 0x93, 0x80, 0x5f, 0xe4, 0x1e, 0x12, 0xd0, 0x87, 0x8a, 0x78, 0x88, 0xe4, }; static const unsigned char xdh_wei448_3818_sharedsecret[] = { 0xa4, 0xcf, 0x91, 0xac, 0xae, 0xac, 0xfd, 0x98, 0xcd, 0xea, 0xec, 0x54, 0xb2, 0xb9, 0x5d, 0x88, 0x51, 0xe0, 0x6b, 0xcd, 0xb0, 0x3b, 0x5b, 0x42, 0xf9, 0xc5, 0xb5, 0x97, 0xee, 0xbc, 0x35, 0x86, 0x8e, 0x48, 0x13, 0x18, 0x66, 0xc7, 0x4e, 0x9f, 0x9a, 0x15, 0xcf, 0x1b, 0x8c, 0xe5, 0x69, 0x2b, 0xc0, 0x93, 0xe7, 0x76, 0xd5, 0x50, 0xa1, 0x38, }; static const wycheproof_xdh_test xdh_wei448_3818 = { .name = "xdh_wei448_3818", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3818_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3818_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3818_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 3, tcId is 214 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3819 for XDH, tcId is 215 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3819_peerpubkey[] = { 0x5c, 0xd9, 0x56, 0x61, 0x49, 0x5a, 0xa5, 0x05, 0xae, 0xc5, 0x5b, 0x5f, 0x93, 0xcd, 0xf0, 0x0b, 0x84, 0x56, 0xad, 0x61, 0x6e, 0x71, 0x61, 0xac, 0x2d, 0x98, 0x2e, 0x1b, 0xe8, 0x04, 0x7a, 0xaf, 0x34, 0x19, 0x75, 0xfd, 0x91, 0x57, 0xf0, 0xd0, 0xcb, 0xdd, 0x6b, 0xe5, 0x5e, 0x97, 0x10, 0x79, 0x6e, 0xf7, 0x04, 0xae, 0xf1, 0xf1, 0xfb, 0xbe, }; static const unsigned char xdh_wei448_3819_privkey[] = { 0x4c, 0xda, 0x2c, 0xe7, 0x37, 0x20, 0xce, 0x44, 0x80, 0x70, 0x8d, 0x3a, 0x25, 0xce, 0x83, 0x8b, 0xce, 0x6a, 0x92, 0x2a, 0x32, 0xf1, 0x7b, 0x8a, 0xcc, 0x42, 0xff, 0xe0, 0xe8, 0x24, 0x13, 0x69, 0xa9, 0x4b, 0xaa, 0x34, 0x61, 0x58, 0xbf, 0x2e, 0x64, 0x95, 0x6c, 0x22, 0xee, 0xeb, 0xe0, 0x33, 0x9f, 0x2d, 0x48, 0x73, 0xa1, 0x86, 0x00, 0xc1, }; static const unsigned char xdh_wei448_3819_sharedsecret[] = { 0x47, 0xc4, 0x31, 0x3f, 0xa1, 0x95, 0xc3, 0xbc, 0x87, 0x4c, 0x76, 0xc3, 0x82, 0x71, 0xc7, 0x3b, 0xe7, 0x8a, 0x26, 0x53, 0x57, 0x46, 0x45, 0xea, 0xc0, 0x17, 0x97, 0x79, 0x4e, 0x99, 0x17, 0x95, 0x2a, 0xe6, 0xba, 0x3d, 0x12, 0x28, 0x51, 0xd6, 0xd8, 0x10, 0x3f, 0x16, 0x46, 0x03, 0x25, 0xa0, 0x5a, 0x91, 0x6f, 0x81, 0xe7, 0xa0, 0x8e, 0x66, }; static const wycheproof_xdh_test xdh_wei448_3819 = { .name = "xdh_wei448_3819", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3819_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3819_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3819_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 3, tcId is 215 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3820 for XDH, tcId is 216 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3820_peerpubkey[] = { 0xd1, 0xf8, 0x70, 0x58, 0xc7, 0x3d, 0x44, 0x60, 0xd7, 0xb0, 0xdc, 0xbc, 0xaf, 0xb2, 0xe2, 0x69, 0x8f, 0x2c, 0xb5, 0x2f, 0x6a, 0x60, 0xc7, 0xd7, 0x80, 0xaa, 0x10, 0x0b, 0xd7, 0xe2, 0x08, 0x63, 0xb5, 0xe2, 0x62, 0xf7, 0xf3, 0x0f, 0x05, 0xe4, 0x30, 0xe8, 0xaf, 0x04, 0x12, 0xe7, 0x8e, 0x43, 0x33, 0xd6, 0xf0, 0x47, 0x64, 0x9e, 0xc2, 0x43, }; static const unsigned char xdh_wei448_3820_privkey[] = { 0x00, 0x60, 0x98, 0xba, 0x9d, 0x67, 0x64, 0x4b, 0x94, 0x22, 0x10, 0xb1, 0x4d, 0x23, 0xed, 0xd2, 0xc7, 0x78, 0xeb, 0xf8, 0x94, 0x70, 0x67, 0xcd, 0x63, 0x95, 0x1a, 0xbf, 0xab, 0xdd, 0x77, 0x53, 0xff, 0xf7, 0x25, 0xb5, 0xfc, 0x5f, 0xe6, 0xd7, 0xf9, 0xa1, 0x2f, 0x49, 0x2c, 0x54, 0x56, 0x58, 0x73, 0x23, 0xa1, 0xcb, 0x1b, 0x05, 0x05, 0xef, }; static const unsigned char xdh_wei448_3820_sharedsecret[] = { 0xab, 0xfb, 0xa9, 0x4e, 0x98, 0xb0, 0xc5, 0x16, 0x4b, 0x25, 0xa8, 0xa4, 0xb9, 0xc6, 0x3a, 0x45, 0xea, 0xa6, 0xc4, 0xa8, 0x1e, 0x25, 0x4a, 0x2b, 0xb4, 0x28, 0x9f, 0xbd, 0x40, 0x3a, 0x69, 0x89, 0xe4, 0x05, 0xa5, 0xee, 0xce, 0x7c, 0x77, 0xc8, 0x66, 0x75, 0x1c, 0x00, 0xdd, 0x40, 0x13, 0x9c, 0x8c, 0xff, 0x1f, 0x48, 0x15, 0x82, 0xa0, 0xe5, }; static const wycheproof_xdh_test xdh_wei448_3820 = { .name = "xdh_wei448_3820", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3820_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3820_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3820_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 216 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3821 for XDH, tcId is 217 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3821_peerpubkey[] = { 0x73, 0xa6, 0x84, 0x20, 0xea, 0xe8, 0xb0, 0x98, 0x5e, 0xca, 0x5e, 0x2a, 0x13, 0x7d, 0x59, 0x0c, 0xeb, 0x16, 0x42, 0x02, 0xf2, 0x0a, 0x70, 0xd4, 0x2c, 0xc4, 0x9c, 0x33, 0x62, 0x8c, 0x55, 0xf2, 0x54, 0xef, 0x2e, 0xd5, 0xdd, 0x26, 0x21, 0x96, 0x36, 0x33, 0xf0, 0x8d, 0x67, 0xb2, 0xcf, 0xfe, 0x02, 0xf7, 0x39, 0x42, 0xc9, 0x48, 0x31, 0x52, }; static const unsigned char xdh_wei448_3821_privkey[] = { 0xcc, 0xc7, 0x0f, 0x6b, 0xf1, 0x65, 0x2f, 0xec, 0xb5, 0xe9, 0x47, 0x14, 0x55, 0xd9, 0x6b, 0x2f, 0x9f, 0xc4, 0x39, 0xf5, 0x52, 0xe2, 0x17, 0xd8, 0xf3, 0x08, 0x95, 0x5f, 0xab, 0x8b, 0xea, 0x9a, 0xa1, 0xa3, 0x79, 0x65, 0xe2, 0xcc, 0xea, 0x25, 0xe1, 0x98, 0x05, 0x1f, 0x38, 0xe9, 0x2d, 0x69, 0x7a, 0x03, 0x9f, 0x8d, 0xa0, 0x13, 0xf6, 0xc2, }; static const unsigned char xdh_wei448_3821_sharedsecret[] = { 0xed, 0x5a, 0xa6, 0x6c, 0xda, 0x6c, 0x0b, 0x9c, 0x6b, 0x40, 0x5e, 0x2b, 0x85, 0xca, 0x76, 0xf0, 0x4e, 0x3c, 0x82, 0x9a, 0x42, 0x6d, 0xe1, 0xf9, 0x12, 0x21, 0xa5, 0x81, 0x75, 0x68, 0x43, 0x0a, 0x8a, 0xdb, 0xfe, 0xbb, 0x87, 0xd8, 0xea, 0x4b, 0xcf, 0xd2, 0x8a, 0x50, 0xec, 0x97, 0x52, 0xb8, 0x06, 0xb4, 0xbc, 0xfe, 0x37, 0x7a, 0x65, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_3821 = { .name = "xdh_wei448_3821", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3821_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3821_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3821_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 217 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3822 for XDH, tcId is 218 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3822_peerpubkey[] = { 0xcc, 0x7e, 0xda, 0xd8, 0xab, 0x05, 0x35, 0x8a, 0x9a, 0x55, 0xe8, 0xbf, 0x20, 0xd9, 0x1e, 0x21, 0x4a, 0x67, 0x9f, 0x42, 0x78, 0x5f, 0xf0, 0x1d, 0x6d, 0xa6, 0x28, 0xee, 0xd1, 0x03, 0x7f, 0x64, 0xcc, 0xde, 0x9e, 0xa7, 0x50, 0x5d, 0x2d, 0x71, 0x20, 0xd7, 0x5b, 0xa5, 0x5b, 0x72, 0x0f, 0xef, 0xd5, 0x5c, 0xe4, 0x8e, 0xbd, 0xf2, 0xac, 0x5a, }; static const unsigned char xdh_wei448_3822_privkey[] = { 0x00, 0xf1, 0x5d, 0xf3, 0xa5, 0xc1, 0x86, 0xd3, 0x53, 0xb4, 0x80, 0xc7, 0x8a, 0x04, 0x5a, 0x77, 0xc9, 0x42, 0x00, 0x20, 0xdd, 0x43, 0xc0, 0x1f, 0x53, 0x61, 0xed, 0x26, 0xfd, 0x7d, 0x4d, 0xcf, 0x42, 0x94, 0x87, 0x0e, 0x77, 0x80, 0xad, 0xf4, 0x09, 0x9f, 0x93, 0x48, 0x72, 0x62, 0x2d, 0x30, 0x83, 0x60, 0x5c, 0xbc, 0x62, 0xb1, 0x8f, 0xd7, }; static const unsigned char xdh_wei448_3822_sharedsecret[] = { 0x04, 0xd2, 0x7f, 0x92, 0x64, 0xdb, 0x8d, 0xb7, 0x61, 0xd0, 0x5e, 0x30, 0x7f, 0xae, 0x84, 0xf2, 0x04, 0x48, 0x0f, 0x54, 0x59, 0xf9, 0xe4, 0x01, 0x30, 0xed, 0x77, 0x5c, 0x10, 0x12, 0xe6, 0x54, 0x11, 0x38, 0x08, 0x1b, 0xd8, 0xe2, 0xb0, 0x28, 0x3b, 0xfa, 0x50, 0x29, 0x57, 0x09, 0x6b, 0xdf, 0x34, 0x1e, 0x3a, 0x1f, 0x8c, 0x74, 0x82, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3822 = { .name = "xdh_wei448_3822", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3822_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3822_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3822_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 218 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3823 for XDH, tcId is 219 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3823_peerpubkey[] = { 0xa3, 0xbc, 0x34, 0xe9, 0x6d, 0x26, 0xbc, 0x60, 0x44, 0x94, 0x18, 0x0e, 0x1d, 0x71, 0x6a, 0x02, 0x32, 0x74, 0xb0, 0x2a, 0x4a, 0x0c, 0x14, 0x71, 0xc5, 0x00, 0xf3, 0x91, 0x68, 0x98, 0xd3, 0x8e, 0xaf, 0x2e, 0x40, 0xa8, 0x3e, 0xb1, 0x7e, 0xee, 0xee, 0x3b, 0xca, 0x8a, 0xf0, 0x39, 0xe5, 0x7c, 0x50, 0x02, 0x37, 0xcd, 0x23, 0x6e, 0x90, 0xae, }; static const unsigned char xdh_wei448_3823_privkey[] = { 0xc0, 0x80, 0xc5, 0xd2, 0x32, 0x28, 0xf0, 0x63, 0x50, 0x4b, 0x6d, 0x98, 0x6b, 0xfb, 0x7d, 0xef, 0xb2, 0x71, 0x1a, 0x85, 0x7d, 0xaf, 0xb3, 0x31, 0xfe, 0xfd, 0x58, 0xa6, 0x5d, 0x92, 0x01, 0xea, 0xb2, 0x51, 0xd4, 0x7f, 0x25, 0x91, 0x67, 0x08, 0x6e, 0x22, 0xe9, 0x75, 0x9e, 0xc6, 0x56, 0x13, 0x17, 0x11, 0x28, 0x7f, 0xf1, 0x8d, 0xf6, 0xde, }; static const unsigned char xdh_wei448_3823_sharedsecret[] = { 0xff, 0x93, 0x56, 0x08, 0x71, 0xd2, 0x09, 0x94, 0x0c, 0xaf, 0xca, 0xe8, 0xc3, 0x21, 0x3e, 0xaf, 0x57, 0x76, 0x0c, 0x08, 0xaa, 0x80, 0xca, 0xf1, 0x5d, 0x86, 0x9d, 0x21, 0xb4, 0xb6, 0xa5, 0xe0, 0x0f, 0x6f, 0xce, 0x49, 0xef, 0xa1, 0x0a, 0xa1, 0x27, 0x95, 0x65, 0x6a, 0x9e, 0x8c, 0xe8, 0x92, 0x44, 0x45, 0x4c, 0xd5, 0x99, 0xea, 0x74, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3823 = { .name = "xdh_wei448_3823", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3823_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3823_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3823_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 3, tcId is 219 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3824 for XDH, tcId is 220 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3824_peerpubkey[] = { 0xdf, 0x65, 0xf6, 0x22, 0x9c, 0x4e, 0x17, 0x2e, 0x16, 0x7d, 0x7f, 0xdf, 0xa5, 0x75, 0xf6, 0xb3, 0xd2, 0x59, 0x23, 0x25, 0xbc, 0xa4, 0xc1, 0x5c, 0xcb, 0x3d, 0xbf, 0xee, 0x79, 0xc5, 0x96, 0x3d, 0xa2, 0x6d, 0x6e, 0x66, 0x7b, 0x6f, 0x5b, 0x06, 0x80, 0x14, 0x4a, 0x7a, 0x0b, 0x7d, 0x7d, 0xd3, 0x03, 0xac, 0xcb, 0x26, 0x97, 0x94, 0xb5, 0xe6, }; static const unsigned char xdh_wei448_3824_privkey[] = { 0x44, 0x75, 0x26, 0x00, 0xc4, 0x67, 0xf9, 0xd8, 0xb3, 0xdb, 0x8e, 0xbc, 0xeb, 0xd1, 0x0a, 0x4a, 0x0c, 0xbc, 0x83, 0x81, 0x90, 0x33, 0x4a, 0xb5, 0x51, 0x36, 0x1b, 0xcc, 0x6b, 0x8e, 0x4a, 0x77, 0x50, 0x4d, 0xdc, 0xf9, 0xd0, 0xf5, 0x66, 0xda, 0x25, 0xf7, 0x5f, 0x92, 0xe9, 0x74, 0xd1, 0xda, 0xde, 0x4e, 0xf0, 0x44, 0xbe, 0xd8, 0x5d, 0xc6, }; static const unsigned char xdh_wei448_3824_sharedsecret[] = { 0xc2, 0x3b, 0x16, 0x2a, 0x2b, 0x47, 0xca, 0x28, 0xdc, 0x52, 0xb9, 0x05, 0x9c, 0xf7, 0x99, 0x9a, 0x69, 0x6f, 0x02, 0x88, 0x49, 0x31, 0x77, 0xbd, 0xa2, 0xcd, 0x1f, 0x62, 0x04, 0x25, 0xb8, 0x3b, 0x7c, 0x50, 0x59, 0x96, 0xe8, 0x93, 0x18, 0x43, 0xa1, 0xd7, 0x0b, 0x33, 0x4b, 0x64, 0x57, 0x4e, 0xde, 0x95, 0x8f, 0x33, 0x1a, 0x81, 0x45, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3824 = { .name = "xdh_wei448_3824", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3824_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3824_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3824_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 3, tcId is 220 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3825 for XDH, tcId is 221 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3825_peerpubkey[] = { 0x72, 0x11, 0x28, 0xb0, 0xf6, 0x5d, 0xbc, 0x88, 0x6f, 0xb8, 0xfd, 0x36, 0x6d, 0x68, 0xf7, 0xf9, 0xb5, 0xad, 0xf5, 0xd8, 0xbd, 0x60, 0x90, 0xff, 0x7d, 0x66, 0xc3, 0x84, 0x3f, 0xc1, 0x35, 0x6e, 0x16, 0x1b, 0x69, 0x9b, 0x97, 0x38, 0x02, 0xad, 0x2d, 0x32, 0x9d, 0x9f, 0x71, 0xeb, 0xec, 0x5e, 0xd1, 0xbd, 0x96, 0xf5, 0x30, 0xe3, 0x71, 0x56, }; static const unsigned char xdh_wei448_3825_privkey[] = { 0xc8, 0xb9, 0xca, 0xaf, 0x44, 0x7f, 0xcc, 0xf2, 0xf5, 0xce, 0x33, 0xea, 0xd9, 0xf6, 0x9d, 0x4a, 0x20, 0xd4, 0xfa, 0x61, 0xce, 0xb5, 0xf6, 0xf4, 0x6b, 0x9b, 0xa1, 0xd4, 0x31, 0x85, 0x90, 0x35, 0xc4, 0xc6, 0x5c, 0x3c, 0xcb, 0x24, 0x85, 0xff, 0xee, 0x4e, 0x2a, 0xe3, 0x2a, 0x65, 0x58, 0xcf, 0x6e, 0xa2, 0xe5, 0x7e, 0xd9, 0x89, 0x72, 0xe2, }; static const unsigned char xdh_wei448_3825_sharedsecret[] = { 0x45, 0xa5, 0x70, 0x77, 0x9f, 0xcd, 0x5f, 0x56, 0xd1, 0xfe, 0x79, 0xee, 0xd3, 0x44, 0x84, 0x1c, 0xf7, 0xdb, 0x47, 0x2e, 0x5f, 0x03, 0x9f, 0x23, 0x31, 0x06, 0x6b, 0x5b, 0x37, 0xfb, 0xe1, 0xdf, 0x1b, 0x46, 0x47, 0x2b, 0xf6, 0xe0, 0x6c, 0xcc, 0xac, 0x5e, 0xad, 0x88, 0xba, 0x60, 0x56, 0xe4, 0x55, 0xa7, 0x48, 0x28, 0x3b, 0x12, 0x65, 0x43, }; static const wycheproof_xdh_test xdh_wei448_3825 = { .name = "xdh_wei448_3825", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3825_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3825_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3825_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 221 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3826 for XDH, tcId is 222 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3826_peerpubkey[] = { 0xbd, 0x70, 0xd8, 0xac, 0x19, 0xa9, 0x7c, 0xe5, 0x00, 0x1d, 0x0f, 0xd8, 0x14, 0xe5, 0x9f, 0xd9, 0xdb, 0xbf, 0x0a, 0xe7, 0x4e, 0x82, 0xd9, 0xb7, 0x01, 0xa3, 0x62, 0xb4, 0x59, 0x86, 0x3c, 0xf0, 0xe6, 0x4a, 0xfc, 0x7b, 0x6d, 0x2d, 0xee, 0x51, 0xff, 0xed, 0x49, 0xee, 0xe8, 0x0a, 0xc9, 0x43, 0xa1, 0x3a, 0x53, 0xcb, 0x97, 0xbe, 0xeb, 0x7c, }; static const unsigned char xdh_wei448_3826_privkey[] = { 0x38, 0xca, 0xb1, 0xc7, 0xec, 0xc2, 0xd5, 0x93, 0xe2, 0xe4, 0x6d, 0x94, 0xe6, 0x9a, 0xbf, 0x90, 0x81, 0xb7, 0x70, 0xeb, 0xfd, 0x68, 0xf7, 0x07, 0xf1, 0xdc, 0x53, 0x7b, 0x90, 0xd0, 0x50, 0x83, 0xa1, 0xbe, 0xae, 0x82, 0xe7, 0xc5, 0xbb, 0xdf, 0x47, 0x3c, 0x70, 0x05, 0x32, 0xe1, 0xda, 0xe8, 0x56, 0xa1, 0xcb, 0xcc, 0x6c, 0xa4, 0xb6, 0xc6, }; static const unsigned char xdh_wei448_3826_sharedsecret[] = { 0x91, 0x31, 0x7b, 0xe9, 0x45, 0x6d, 0xa5, 0x2a, 0x89, 0xb5, 0x91, 0x7c, 0x83, 0xe2, 0xdc, 0x39, 0xcb, 0x2c, 0x33, 0x3a, 0x7a, 0xd1, 0x85, 0xe9, 0x9d, 0xe8, 0x5c, 0xa7, 0x4f, 0x2a, 0xca, 0x3a, 0xa1, 0xd6, 0xa1, 0x03, 0x7d, 0x9b, 0x2b, 0x44, 0xfb, 0x96, 0x63, 0x61, 0x8c, 0x78, 0x8c, 0x92, 0x67, 0x80, 0x9c, 0x0b, 0xdb, 0xcf, 0xb6, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_3826 = { .name = "xdh_wei448_3826", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3826_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3826_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3826_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 222 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3827 for XDH, tcId is 223 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3827_peerpubkey[] = { 0x5e, 0xa1, 0xa7, 0xad, 0xe3, 0x1e, 0x31, 0x4d, 0x37, 0x33, 0x5c, 0x25, 0xae, 0x2b, 0x74, 0x8d, 0x8b, 0x22, 0xbf, 0x47, 0x11, 0xdb, 0xdb, 0x5e, 0xbe, 0x17, 0x3f, 0xad, 0xa1, 0x90, 0x70, 0x03, 0x7c, 0x93, 0x50, 0x15, 0x01, 0x68, 0x8b, 0xaa, 0xbc, 0x75, 0xe2, 0xdd, 0x13, 0x19, 0xf1, 0x7e, 0xaa, 0x67, 0x55, 0xf7, 0x17, 0xb9, 0x7e, 0x86, }; static const unsigned char xdh_wei448_3827_privkey[] = { 0xfc, 0x44, 0x95, 0xf0, 0x85, 0xe8, 0x25, 0xdf, 0xb3, 0x8e, 0xe3, 0x84, 0xc9, 0xff, 0x3d, 0xfd, 0x05, 0x85, 0x3d, 0x29, 0xf7, 0x39, 0xd3, 0x03, 0x3c, 0x8f, 0x53, 0x3e, 0x7f, 0xd3, 0x2c, 0xe8, 0x81, 0x04, 0x62, 0x3e, 0x8b, 0x00, 0x44, 0x83, 0x2c, 0x82, 0x52, 0x57, 0xe4, 0xb3, 0x76, 0x51, 0x59, 0x0a, 0x95, 0x19, 0x41, 0x67, 0xa8, 0xce, }; static const unsigned char xdh_wei448_3827_sharedsecret[] = { 0xe8, 0x19, 0x6e, 0x7b, 0x85, 0xe7, 0x57, 0xe2, 0x6e, 0x7a, 0xa8, 0x2c, 0x18, 0xe9, 0x6e, 0x4a, 0xec, 0x58, 0x89, 0xf0, 0xb0, 0x3a, 0xd8, 0xb6, 0x03, 0x63, 0x51, 0x14, 0x87, 0xb6, 0x79, 0x9c, 0xed, 0xb9, 0xc4, 0xc8, 0x79, 0xa9, 0xd9, 0x94, 0x6f, 0xe4, 0x33, 0x5a, 0x73, 0xf0, 0xe9, 0x6b, 0x39, 0xda, 0x7b, 0x95, 0xa4, 0xc9, 0xa9, 0x4e, }; static const wycheproof_xdh_test xdh_wei448_3827 = { .name = "xdh_wei448_3827", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3827_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3827_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3827_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 223 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3828 for XDH, tcId is 224 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3828_peerpubkey[] = { 0x92, 0x52, 0xa3, 0xa0, 0x8e, 0x02, 0x5d, 0x2d, 0x3a, 0x2a, 0xba, 0xf1, 0xb5, 0x77, 0x70, 0x3b, 0x34, 0xc4, 0x59, 0xbd, 0x34, 0x4d, 0xb4, 0xbd, 0x75, 0x86, 0x61, 0x1f, 0x4d, 0xa1, 0x10, 0x41, 0xbe, 0xe4, 0xc3, 0xae, 0xe3, 0x3e, 0x34, 0x38, 0x10, 0xcb, 0xaf, 0x88, 0x90, 0x2e, 0xd8, 0xd3, 0xad, 0xff, 0x25, 0x9d, 0x7d, 0x3c, 0x87, 0xd9, }; static const unsigned char xdh_wei448_3828_privkey[] = { 0x28, 0x1c, 0xb9, 0xf5, 0x2a, 0xc1, 0x40, 0xc6, 0xc5, 0xa9, 0x5c, 0x01, 0xf1, 0x0d, 0x91, 0xa9, 0x32, 0x8d, 0xb2, 0x6d, 0xed, 0xb8, 0x5d, 0xa3, 0xf0, 0x8c, 0x0e, 0xe6, 0x88, 0xfb, 0xfa, 0x5c, 0x05, 0xdd, 0x2e, 0x57, 0xb3, 0x78, 0xfd, 0xe2, 0x13, 0xd3, 0x80, 0x8d, 0x2c, 0xe4, 0xd7, 0xd3, 0xa8, 0x95, 0x8e, 0x55, 0x29, 0x1c, 0x2e, 0xef, }; static const unsigned char xdh_wei448_3828_sharedsecret[] = { 0x2a, 0x01, 0xd7, 0x62, 0xe7, 0x2a, 0xdb, 0x84, 0x7a, 0x5e, 0x99, 0x4a, 0x6e, 0x1d, 0x1a, 0x21, 0x1d, 0xd9, 0xbc, 0xa1, 0x48, 0x78, 0x04, 0xb8, 0x56, 0x3f, 0xfc, 0x40, 0xa5, 0x93, 0x84, 0xce, 0xbf, 0x76, 0xb6, 0xd3, 0x41, 0x1e, 0x1a, 0x9b, 0x53, 0xd4, 0x62, 0xac, 0xab, 0xe3, 0x59, 0xd2, 0x8d, 0x13, 0x4f, 0xe3, 0xe9, 0xad, 0x41, 0x10, }; static const wycheproof_xdh_test xdh_wei448_3828 = { .name = "xdh_wei448_3828", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3828_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3828_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3828_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 224 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3829 for XDH, tcId is 225 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3829_peerpubkey[] = { 0x44, 0x3a, 0x43, 0x33, 0xd6, 0xb7, 0x30, 0xbb, 0xf1, 0xb8, 0xd8, 0x04, 0x9b, 0x85, 0xcf, 0x64, 0x84, 0xe3, 0x92, 0x94, 0x72, 0xc1, 0x1c, 0x8a, 0x48, 0x8e, 0x91, 0x74, 0x13, 0x98, 0x92, 0x92, 0x8f, 0x58, 0xd1, 0xdd, 0x56, 0x1b, 0x23, 0x9f, 0x06, 0x9b, 0x81, 0x7c, 0x57, 0x6e, 0x8e, 0xf8, 0xa8, 0xe3, 0xd1, 0xcb, 0x30, 0x60, 0xa2, 0xe8, }; static const unsigned char xdh_wei448_3829_privkey[] = { 0xb4, 0xc0, 0xd2, 0x5c, 0xc4, 0xf1, 0x41, 0x18, 0x0f, 0xec, 0xcc, 0xdf, 0x47, 0xc0, 0xab, 0xa2, 0x6c, 0x5d, 0x4d, 0x39, 0x0b, 0x0f, 0x64, 0x51, 0xf8, 0x67, 0x85, 0xf2, 0x50, 0xeb, 0x85, 0xd3, 0x54, 0xcf, 0xd8, 0xb5, 0x26, 0x99, 0x31, 0x5c, 0xf1, 0x15, 0x35, 0x1e, 0xc8, 0x00, 0xc8, 0x41, 0xbe, 0xb5, 0x0d, 0x9a, 0x9a, 0x03, 0x71, 0xcc, }; static const unsigned char xdh_wei448_3829_sharedsecret[] = { 0x23, 0xe7, 0x37, 0x3d, 0xf1, 0x17, 0x85, 0x61, 0x2e, 0xa7, 0x48, 0x25, 0xe9, 0x34, 0xd5, 0x60, 0xbb, 0x70, 0x93, 0x2a, 0x04, 0xeb, 0x81, 0xe3, 0x6b, 0xae, 0xc1, 0x93, 0xa3, 0xb7, 0x92, 0x14, 0x08, 0xb0, 0x45, 0xab, 0xb1, 0x1f, 0x01, 0x19, 0x8c, 0x88, 0xc3, 0x90, 0x28, 0x07, 0xd7, 0x42, 0x06, 0xff, 0xc4, 0x24, 0x36, 0x20, 0x39, 0x90, }; static const wycheproof_xdh_test xdh_wei448_3829 = { .name = "xdh_wei448_3829", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3829_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3829_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3829_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 225 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3830 for XDH, tcId is 226 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3830_peerpubkey[] = { 0x11, 0x41, 0x79, 0xc8, 0x9f, 0xc4, 0x91, 0x53, 0x44, 0xd5, 0xd5, 0x3b, 0x10, 0xec, 0x30, 0x43, 0x4a, 0x54, 0x07, 0x28, 0x95, 0x73, 0xab, 0xde, 0x0e, 0x06, 0xea, 0xe9, 0x3e, 0xec, 0x47, 0x74, 0x9e, 0x98, 0xe6, 0xd2, 0xb4, 0xb5, 0x09, 0x13, 0x0c, 0x2c, 0xf5, 0x08, 0x18, 0xbd, 0xf0, 0xaa, 0x52, 0xd1, 0xaa, 0x15, 0x66, 0xd9, 0x2b, 0xf0, }; static const unsigned char xdh_wei448_3830_privkey[] = { 0xd0, 0xb6, 0xb3, 0x75, 0x58, 0x7f, 0x46, 0xa6, 0x80, 0x0a, 0xe9, 0xbd, 0x54, 0x15, 0xf9, 0x6d, 0x9e, 0x12, 0xf7, 0xdf, 0x8b, 0x6b, 0xca, 0x17, 0x18, 0x8a, 0x1c, 0xd4, 0xe3, 0x96, 0xa4, 0x70, 0xfe, 0x82, 0x96, 0xba, 0xbb, 0x8f, 0xe8, 0x44, 0x2f, 0xab, 0x1a, 0x7f, 0x1b, 0xb2, 0x6c, 0x59, 0x73, 0x94, 0x25, 0x74, 0x2b, 0x59, 0x4c, 0xdc, }; static const unsigned char xdh_wei448_3830_sharedsecret[] = { 0x2a, 0x02, 0x11, 0xb6, 0xff, 0x30, 0xf2, 0xed, 0xba, 0xa4, 0x84, 0xa3, 0x04, 0x9a, 0x18, 0xac, 0xb7, 0xcf, 0x5b, 0xfc, 0x1f, 0x75, 0x1e, 0x66, 0xcd, 0xff, 0x91, 0xa0, 0x31, 0x6a, 0x94, 0xa9, 0xf8, 0x36, 0xd8, 0x02, 0xde, 0xa1, 0x15, 0xd4, 0x8c, 0x42, 0x37, 0x23, 0x28, 0x4b, 0xf3, 0x85, 0x90, 0x94, 0xec, 0x25, 0x65, 0x11, 0xd6, 0xb9, }; static const wycheproof_xdh_test xdh_wei448_3830 = { .name = "xdh_wei448_3830", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3830_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3830_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3830_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 3, tcId is 226 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3831 for XDH, tcId is 227 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3831_peerpubkey[] = { 0xaf, 0xfe, 0xcc, 0xdd, 0x97, 0x49, 0x98, 0xae, 0xdf, 0x47, 0xea, 0x37, 0xe5, 0x67, 0x11, 0xce, 0x4d, 0x48, 0x78, 0xa3, 0x3d, 0x42, 0x0a, 0x46, 0xf1, 0x60, 0x87, 0x7b, 0x46, 0x38, 0x28, 0xbe, 0xd2, 0x8c, 0xcb, 0x1c, 0x84, 0xfb, 0x5a, 0x8c, 0x77, 0x5a, 0xe8, 0xb3, 0x1e, 0xa0, 0x66, 0xc3, 0xea, 0xaa, 0x36, 0x2f, 0xcb, 0xd1, 0x64, 0xf2, }; static const unsigned char xdh_wei448_3831_privkey[] = { 0x9c, 0x46, 0x49, 0x53, 0x01, 0xde, 0x30, 0x3e, 0x3e, 0x76, 0xd0, 0x7c, 0xe5, 0xbc, 0x54, 0x59, 0xdc, 0x31, 0xff, 0x16, 0x8e, 0xf8, 0x90, 0x42, 0x58, 0x5b, 0x65, 0x7c, 0x7a, 0xcc, 0x12, 0x02, 0xd2, 0xfb, 0xf5, 0xd6, 0xdc, 0xa3, 0xe0, 0x2c, 0x31, 0xec, 0x0d, 0xd4, 0xd5, 0xae, 0x9b, 0x76, 0x55, 0x9e, 0x58, 0x6a, 0x6e, 0x28, 0x32, 0xf2, }; static const unsigned char xdh_wei448_3831_sharedsecret[] = { 0xd3, 0x54, 0x8f, 0x0c, 0xf8, 0xbd, 0x05, 0x8c, 0x1f, 0x7e, 0x17, 0x26, 0x2f, 0xba, 0xd4, 0x5a, 0xf7, 0xfb, 0x75, 0x04, 0xc5, 0x62, 0x26, 0x2f, 0x02, 0xaa, 0xc5, 0xd2, 0x40, 0x93, 0xf4, 0x1b, 0x61, 0x4b, 0x4e, 0x63, 0xc1, 0xc7, 0xab, 0x0d, 0x73, 0xe9, 0x51, 0xc1, 0xf2, 0x7f, 0x71, 0x4c, 0xe0, 0xce, 0xc0, 0x21, 0xc6, 0x67, 0xe7, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3831 = { .name = "xdh_wei448_3831", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3831_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3831_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3831_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 3, tcId is 227 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3832 for XDH, tcId is 228 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3832_peerpubkey[] = { 0x1b, 0xc5, 0x15, 0xb8, 0x8a, 0xff, 0x3e, 0x8a, 0x83, 0xbe, 0x39, 0x44, 0x24, 0xe1, 0xd8, 0x05, 0x4f, 0x7b, 0xdb, 0x40, 0xa0, 0x6e, 0xb5, 0xc3, 0xc9, 0xd0, 0x7f, 0xc0, 0xa7, 0xf5, 0x70, 0x9b, 0xcc, 0xeb, 0x6d, 0xdc, 0x1d, 0x4f, 0x8d, 0x6f, 0x5c, 0xcd, 0xf0, 0x17, 0xe0, 0x77, 0x06, 0xfd, 0xd6, 0x12, 0x71, 0xb3, 0x59, 0x87, 0x22, 0x01, }; static const unsigned char xdh_wei448_3832_privkey[] = { 0xa8, 0x88, 0x61, 0x97, 0x6c, 0x6d, 0x17, 0x79, 0xfd, 0x8e, 0x17, 0x97, 0x6b, 0x4d, 0x69, 0xba, 0x76, 0x2d, 0x90, 0xc4, 0x03, 0xcd, 0xfa, 0x95, 0x8e, 0xf9, 0xa3, 0xd1, 0xb1, 0xf1, 0x9d, 0xc0, 0x17, 0x3e, 0x9d, 0x81, 0xbc, 0x68, 0x0c, 0x27, 0x6a, 0x69, 0x77, 0x11, 0xe5, 0x8b, 0x8f, 0x3b, 0x28, 0xee, 0x0b, 0x5d, 0xf5, 0x62, 0x35, 0x8f, }; static const unsigned char xdh_wei448_3832_sharedsecret[] = { 0xf4, 0xaf, 0x7d, 0x59, 0xa4, 0xeb, 0xaf, 0x9f, 0xe9, 0xc3, 0xbe, 0x54, 0x2f, 0x61, 0xc2, 0x71, 0xa2, 0xf4, 0x0f, 0x5a, 0x9b, 0x1c, 0x6d, 0xa1, 0xde, 0xf3, 0x9d, 0x93, 0x66, 0xc6, 0x95, 0xe0, 0xd9, 0x87, 0xd6, 0x4a, 0x8b, 0xa0, 0x23, 0x4d, 0x5a, 0x92, 0xe3, 0x88, 0xb9, 0xe8, 0xf3, 0xe1, 0x24, 0x94, 0x2a, 0xbd, 0x40, 0xb1, 0xfa, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3832 = { .name = "xdh_wei448_3832", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3832_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3832_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3832_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 228 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3833 for XDH, tcId is 229 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3833_peerpubkey[] = { 0x56, 0xf4, 0xcf, 0x0c, 0x6d, 0xdd, 0xf7, 0x82, 0xb7, 0x9c, 0x49, 0xef, 0x53, 0x72, 0xfc, 0xf5, 0x0d, 0x7c, 0x25, 0xb2, 0x53, 0x0f, 0x48, 0x73, 0xa0, 0xdc, 0x45, 0x0b, 0xfc, 0x82, 0xf6, 0xde, 0x9b, 0x7f, 0xf5, 0x2a, 0x4c, 0xe7, 0x53, 0x48, 0x39, 0x90, 0x21, 0x9d, 0xef, 0xf9, 0x98, 0x5d, 0xff, 0x38, 0x33, 0x23, 0x8f, 0x19, 0xaf, 0x37, }; static const unsigned char xdh_wei448_3833_privkey[] = { 0x10, 0xc8, 0x41, 0x04, 0xbf, 0x5c, 0xce, 0x41, 0xee, 0xc1, 0x43, 0xe4, 0xfe, 0x02, 0xb6, 0xca, 0x5a, 0x87, 0x54, 0x03, 0x4a, 0x46, 0xa3, 0x13, 0xa4, 0x8d, 0xa0, 0x6c, 0xba, 0x9f, 0x04, 0xc8, 0x4e, 0x3d, 0xe6, 0x35, 0x67, 0x3f, 0xbb, 0xb5, 0x0d, 0xe2, 0x78, 0x30, 0x30, 0x72, 0x97, 0x15, 0x9b, 0x91, 0x35, 0xf0, 0x28, 0xc3, 0x4a, 0x85, }; static const unsigned char xdh_wei448_3833_sharedsecret[] = { 0x41, 0x54, 0x8c, 0xe8, 0x0d, 0x1c, 0x09, 0xe6, 0x90, 0x3e, 0xa7, 0xb1, 0x8c, 0xc5, 0xb0, 0xb2, 0x68, 0xcb, 0x24, 0xb1, 0x2a, 0xaf, 0xd2, 0x2f, 0xd9, 0x16, 0xff, 0x40, 0x60, 0xd8, 0x9a, 0x12, 0x30, 0x22, 0xfa, 0x95, 0x08, 0x83, 0x6a, 0x08, 0x26, 0x95, 0xf5, 0x4a, 0xb5, 0x8b, 0xcc, 0x20, 0x24, 0xc9, 0x31, 0x6c, 0xe1, 0xe3, 0x2b, 0x19, }; static const wycheproof_xdh_test xdh_wei448_3833 = { .name = "xdh_wei448_3833", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3833_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3833_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3833_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 229 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3834 for XDH, tcId is 230 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3834_peerpubkey[] = { 0x43, 0x03, 0xa6, 0x39, 0xa2, 0xe1, 0x68, 0x1c, 0xc9, 0x34, 0x5f, 0x86, 0x16, 0xc3, 0xb5, 0x03, 0x9a, 0x18, 0x89, 0x71, 0x35, 0xfc, 0x68, 0x0a, 0xd9, 0x11, 0x31, 0x6f, 0xba, 0x21, 0xba, 0x7d, 0x34, 0x12, 0xf7, 0x18, 0xe3, 0x9f, 0x4e, 0x3b, 0xfe, 0xe2, 0x75, 0x82, 0xff, 0x5f, 0xf1, 0x53, 0xa6, 0xe5, 0xbe, 0x18, 0x6d, 0x92, 0x45, 0xe0, }; static const unsigned char xdh_wei448_3834_privkey[] = { 0x80, 0xc8, 0x56, 0x04, 0x0c, 0xd9, 0x01, 0x13, 0xfa, 0x51, 0xc6, 0x48, 0xfd, 0x39, 0x6e, 0x76, 0x73, 0x29, 0xbc, 0x10, 0xbb, 0x6e, 0xbd, 0x8a, 0xfb, 0x41, 0xf5, 0x05, 0x5e, 0x84, 0x5f, 0x66, 0x8e, 0xd2, 0x92, 0xec, 0xec, 0xa8, 0x4d, 0x5f, 0xfb, 0xb3, 0xf7, 0x70, 0xe0, 0xb7, 0x44, 0xaf, 0xa2, 0x8e, 0x03, 0x9f, 0xf6, 0xee, 0x55, 0x91, }; static const unsigned char xdh_wei448_3834_sharedsecret[] = { 0x30, 0x75, 0x2a, 0x13, 0xe1, 0x7b, 0x32, 0xc9, 0xf9, 0xce, 0xdb, 0x9c, 0x01, 0x2e, 0xea, 0x63, 0x97, 0x00, 0xf2, 0x70, 0xbf, 0x6a, 0x8d, 0xf3, 0x50, 0x52, 0x1c, 0x54, 0xb1, 0x26, 0x40, 0x42, 0x47, 0xdc, 0x68, 0xfc, 0xd0, 0x49, 0x3a, 0xf6, 0x1e, 0x97, 0xb9, 0xf6, 0xdb, 0xff, 0xfa, 0xad, 0x1a, 0x88, 0x35, 0xa5, 0x6f, 0x13, 0x30, 0x22, }; static const wycheproof_xdh_test xdh_wei448_3834 = { .name = "xdh_wei448_3834", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3834_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3834_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3834_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 4, tcId is 230 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3835 for XDH, tcId is 231 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3835_peerpubkey[] = { 0xb8, 0xd2, 0x9b, 0xc0, 0x8c, 0x77, 0xbd, 0xcb, 0xb3, 0x2d, 0xd4, 0x60, 0x57, 0x5f, 0x0d, 0xc3, 0xb8, 0xef, 0x5e, 0x08, 0x87, 0x51, 0xd4, 0x50, 0x6a, 0x8f, 0x16, 0x6e, 0x7f, 0x34, 0x02, 0xaa, 0x19, 0x1a, 0x7a, 0xde, 0x82, 0x49, 0xa2, 0x75, 0x9d, 0xfe, 0x70, 0x93, 0xac, 0xef, 0xef, 0xaf, 0x04, 0x72, 0x27, 0x77, 0xff, 0x5f, 0x84, 0xf5, }; static const unsigned char xdh_wei448_3835_privkey[] = { 0xcc, 0xfb, 0x76, 0xa8, 0x2b, 0x43, 0x07, 0xe5, 0x61, 0xe9, 0xf7, 0xf4, 0x2b, 0x61, 0xb1, 0x88, 0x14, 0xe7, 0x8e, 0xa2, 0x00, 0x3f, 0x21, 0xf0, 0xcc, 0x7b, 0x92, 0xb4, 0x46, 0x23, 0xbd, 0x07, 0xe3, 0x1a, 0x77, 0x61, 0x92, 0x06, 0x32, 0x4f, 0xd1, 0x66, 0x28, 0xc5, 0x54, 0x37, 0x65, 0xf6, 0xde, 0x44, 0x29, 0x2a, 0x11, 0xf1, 0x50, 0x84, }; static const unsigned char xdh_wei448_3835_sharedsecret[] = { 0xb9, 0x80, 0x60, 0x2b, 0x7f, 0xce, 0x7c, 0x33, 0xdd, 0x25, 0x4a, 0x32, 0x8a, 0x97, 0xe2, 0x33, 0x30, 0x85, 0x79, 0xb4, 0x3c, 0x40, 0xb4, 0x75, 0x94, 0x2f, 0x75, 0xdb, 0xb1, 0xc7, 0x60, 0x77, 0xe6, 0x1f, 0x4c, 0xff, 0x78, 0xde, 0x26, 0xd4, 0xc1, 0x8e, 0x7f, 0xd5, 0x6c, 0x24, 0x67, 0x6e, 0xc2, 0xa3, 0xe3, 0x0c, 0xbb, 0x0c, 0xf4, 0xec, }; static const wycheproof_xdh_test xdh_wei448_3835 = { .name = "xdh_wei448_3835", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3835_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3835_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3835_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 4, tcId is 231 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3836 for XDH, tcId is 232 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3836_peerpubkey[] = { 0x3e, 0x61, 0x64, 0xdb, 0x9f, 0x9e, 0x92, 0x74, 0xc9, 0xb8, 0xef, 0x2c, 0xfd, 0xab, 0x4c, 0xa0, 0xf5, 0x67, 0xd3, 0xf1, 0x5b, 0x33, 0xb3, 0xf5, 0x25, 0x46, 0x62, 0x96, 0x64, 0x89, 0x05, 0xd8, 0x51, 0x46, 0xbd, 0x6f, 0x9b, 0xfc, 0x63, 0x72, 0x5c, 0x22, 0x34, 0xf1, 0x8f, 0x21, 0xfd, 0x3e, 0xb3, 0x6f, 0x54, 0x06, 0xf5, 0xd0, 0xd1, 0x01, }; static const unsigned char xdh_wei448_3836_privkey[] = { 0xd8, 0x3c, 0x17, 0xb9, 0x3d, 0xb4, 0xf2, 0x9f, 0xfc, 0x95, 0x4f, 0x8e, 0x36, 0x37, 0xd3, 0x52, 0x04, 0x19, 0x20, 0xf6, 0x8b, 0xa8, 0x91, 0x4e, 0x40, 0x50, 0x31, 0x8c, 0xcd, 0xd3, 0xc6, 0xc3, 0x40, 0x2c, 0x64, 0x1a, 0x56, 0x67, 0x3d, 0x72, 0x72, 0x77, 0x74, 0x35, 0x7a, 0x82, 0x64, 0x85, 0xa8, 0x00, 0xa0, 0xa0, 0x06, 0xdf, 0x8e, 0x9c, }; static const unsigned char xdh_wei448_3836_sharedsecret[] = { 0x84, 0xef, 0xdc, 0x92, 0x07, 0x1a, 0xb9, 0xa8, 0xc4, 0xbd, 0xa2, 0x09, 0xa7, 0x0b, 0x7d, 0xf1, 0x15, 0x4e, 0xc6, 0x73, 0xae, 0x5d, 0x44, 0xdf, 0x01, 0x46, 0x0d, 0x2b, 0x37, 0x5e, 0x3a, 0x5e, 0xc5, 0x1b, 0x48, 0x5a, 0xb7, 0xb4, 0xd4, 0x49, 0xe9, 0x90, 0xc0, 0xe4, 0xe8, 0x2b, 0xd3, 0x38, 0xa1, 0x08, 0x91, 0x0f, 0x0a, 0x49, 0xed, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_3836 = { .name = "xdh_wei448_3836", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3836_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3836_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3836_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 232 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3837 for XDH, tcId is 233 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3837_peerpubkey[] = { 0x3c, 0x84, 0x5e, 0x04, 0x5d, 0xd2, 0x1f, 0x7f, 0x8e, 0x21, 0x85, 0xb6, 0xb6, 0x88, 0x4f, 0x06, 0x2b, 0x52, 0xda, 0x23, 0x63, 0x78, 0xd9, 0x0a, 0x5a, 0x87, 0x3f, 0xc8, 0x4a, 0x7a, 0x6e, 0x65, 0x26, 0x50, 0x08, 0xf4, 0x5b, 0x43, 0xcf, 0x27, 0x50, 0xa2, 0x47, 0x6b, 0xef, 0x65, 0x7c, 0x34, 0x04, 0x55, 0xdc, 0x9f, 0xae, 0x3d, 0xbb, 0x05, }; static const unsigned char xdh_wei448_3837_privkey[] = { 0x3c, 0x08, 0x7d, 0xf1, 0x21, 0xe1, 0x39, 0x54, 0xe3, 0xbb, 0x66, 0xca, 0xc9, 0x2a, 0x56, 0x18, 0xf0, 0x94, 0x01, 0x68, 0x97, 0x62, 0xdd, 0xc7, 0x10, 0x26, 0x36, 0xcc, 0xb0, 0x89, 0x4f, 0xf2, 0xfe, 0xdd, 0x94, 0x5f, 0x09, 0x64, 0x81, 0x49, 0xd9, 0x9a, 0x3e, 0xd7, 0xc7, 0xba, 0x0f, 0x08, 0xde, 0xaf, 0x52, 0x07, 0x4d, 0xd2, 0xfc, 0x89, }; static const unsigned char xdh_wei448_3837_sharedsecret[] = { 0x41, 0xd6, 0x94, 0x37, 0x44, 0xa7, 0xc0, 0xf8, 0x9e, 0x91, 0xc7, 0x02, 0x01, 0x82, 0x3d, 0x13, 0x3c, 0xa6, 0xa3, 0x2d, 0x08, 0xe8, 0xba, 0x6a, 0xc9, 0x5c, 0x48, 0xea, 0x6b, 0x37, 0x2d, 0xa0, 0x79, 0x6e, 0x63, 0x24, 0xc8, 0xff, 0x68, 0x22, 0xac, 0xbe, 0x3b, 0x1d, 0xe4, 0x60, 0x81, 0x79, 0x9c, 0x04, 0x48, 0xcf, 0xa3, 0x72, 0x6d, 0x7c, }; static const wycheproof_xdh_test xdh_wei448_3837 = { .name = "xdh_wei448_3837", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3837_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3837_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3837_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 233 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3838 for XDH, tcId is 234 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3838_peerpubkey[] = { 0xec, 0x39, 0x42, 0xb9, 0x47, 0x94, 0x7a, 0x05, 0x31, 0x67, 0x24, 0xe6, 0xb2, 0x0e, 0x50, 0xc9, 0xa9, 0x30, 0x5e, 0x9d, 0xc3, 0x5a, 0x4a, 0x06, 0x3f, 0xf6, 0xfe, 0xd3, 0x80, 0x06, 0x49, 0x4d, 0x2b, 0x20, 0xbd, 0xc9, 0x83, 0xb0, 0x35, 0x19, 0xaa, 0xf0, 0x38, 0xed, 0x8d, 0xed, 0x60, 0xb9, 0x30, 0x2b, 0x36, 0x3d, 0x34, 0x4c, 0x2a, 0x37, }; static const unsigned char xdh_wei448_3838_privkey[] = { 0x48, 0x1e, 0x7b, 0x28, 0x5a, 0x51, 0x20, 0x5a, 0xf9, 0xf1, 0xd1, 0x0a, 0xa9, 0x40, 0xe7, 0xe4, 0x7e, 0x32, 0x6e, 0xf7, 0x36, 0x6c, 0x90, 0x7d, 0x74, 0xc6, 0x59, 0x8a, 0x23, 0x5c, 0x0f, 0x27, 0xeb, 0x04, 0xef, 0xcf, 0xde, 0x78, 0x9b, 0x53, 0x04, 0x0c, 0x50, 0x1e, 0xae, 0xc5, 0x0f, 0x01, 0xdc, 0xdb, 0x3c, 0xe6, 0xf9, 0xe2, 0x92, 0x8b, }; static const unsigned char xdh_wei448_3838_sharedsecret[] = { 0x04, 0xd6, 0xb7, 0xfa, 0xb7, 0xde, 0x07, 0x39, 0xe4, 0xeb, 0x4c, 0x5f, 0x37, 0xde, 0xef, 0x59, 0x01, 0x67, 0xc8, 0x04, 0xa9, 0x58, 0xf9, 0x9b, 0xd1, 0x41, 0x02, 0xda, 0x44, 0x49, 0x09, 0x63, 0xe0, 0x11, 0x9a, 0x75, 0xb8, 0x43, 0x62, 0xcc, 0x3a, 0x19, 0x5e, 0x0b, 0x24, 0xa8, 0xfd, 0x71, 0x3a, 0x45, 0x03, 0x80, 0x80, 0x38, 0x3d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3838 = { .name = "xdh_wei448_3838", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3838_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3838_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3838_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 234 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3839 for XDH, tcId is 235 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3839_peerpubkey[] = { 0xfe, 0x29, 0xe8, 0x2e, 0x30, 0x86, 0xce, 0xed, 0x02, 0x29, 0xf6, 0x3e, 0x68, 0x03, 0xd9, 0x86, 0x41, 0x14, 0xd2, 0x66, 0xb0, 0x1d, 0x77, 0x6d, 0x8f, 0xf7, 0xb8, 0x9e, 0x5e, 0x64, 0xac, 0x47, 0x1c, 0x00, 0x4e, 0x3a, 0x99, 0xcb, 0x16, 0xcf, 0x94, 0xe6, 0xf0, 0x49, 0x3e, 0xe3, 0x53, 0x25, 0xe6, 0x9d, 0x9e, 0x1f, 0x8c, 0xbb, 0x12, 0x3d, }; static const unsigned char xdh_wei448_3839_privkey[] = { 0x50, 0x0f, 0xc2, 0x83, 0x89, 0x9a, 0x14, 0xc9, 0x35, 0x42, 0x8b, 0x14, 0x81, 0x71, 0xbb, 0xcd, 0x55, 0x34, 0x1d, 0xad, 0x96, 0xae, 0xea, 0x5e, 0x4a, 0xda, 0x76, 0xe3, 0x78, 0x29, 0x07, 0x08, 0xbf, 0x4f, 0x8f, 0x4e, 0xbb, 0x8c, 0x0b, 0x14, 0x78, 0x95, 0x61, 0xd2, 0x14, 0xb9, 0x9b, 0x99, 0x8b, 0x26, 0xf2, 0x3c, 0xd5, 0x53, 0x82, 0x9c, }; static const unsigned char xdh_wei448_3839_sharedsecret[] = { 0x85, 0x79, 0x2e, 0xec, 0x0e, 0x00, 0xae, 0x19, 0x06, 0x9b, 0x15, 0x47, 0xc8, 0xef, 0x7c, 0x68, 0x18, 0x59, 0x3b, 0x50, 0xf9, 0xb5, 0x3a, 0x18, 0x9d, 0x69, 0xea, 0x46, 0x9a, 0x3b, 0x49, 0x34, 0x2e, 0x5b, 0x4b, 0x37, 0x19, 0x4d, 0x42, 0xd8, 0x9a, 0xf2, 0x1a, 0x36, 0xc7, 0xf3, 0x7f, 0xb1, 0x2b, 0x21, 0x3b, 0x32, 0xff, 0x39, 0x0d, 0x02, }; static const wycheproof_xdh_test xdh_wei448_3839 = { .name = "xdh_wei448_3839", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3839_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3839_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3839_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 235 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3840 for XDH, tcId is 236 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3840_peerpubkey[] = { 0x2c, 0xfa, 0x4d, 0x92, 0xdd, 0x10, 0xf4, 0xf4, 0xf1, 0x9e, 0x42, 0xd9, 0x25, 0x28, 0xb4, 0x4e, 0x86, 0xa9, 0x78, 0x8c, 0xb9, 0x32, 0x6f, 0x9c, 0x43, 0x35, 0x2d, 0x41, 0xe2, 0xa2, 0x0e, 0x95, 0xba, 0x41, 0x6c, 0x76, 0xf3, 0x27, 0x13, 0x76, 0xa5, 0xef, 0xc1, 0xd4, 0x89, 0xa0, 0x21, 0x8b, 0xed, 0xa1, 0x35, 0xd5, 0xb4, 0x9a, 0xd0, 0x5c, }; static const unsigned char xdh_wei448_3840_privkey[] = { 0x94, 0x4d, 0x70, 0x46, 0x05, 0xc0, 0xb9, 0xa3, 0xe5, 0xef, 0xa5, 0xbf, 0x02, 0xda, 0xab, 0x42, 0xf7, 0xe0, 0x00, 0x25, 0x29, 0xc7, 0x30, 0x24, 0x60, 0x83, 0x60, 0xad, 0xf5, 0x88, 0x4a, 0x86, 0x49, 0xa8, 0x08, 0xd7, 0x91, 0x6e, 0x20, 0x5e, 0x1f, 0x4a, 0x1c, 0x36, 0xb3, 0xed, 0xa9, 0xfb, 0x21, 0x5e, 0x22, 0x31, 0xa7, 0x21, 0x4b, 0x8f, }; static const unsigned char xdh_wei448_3840_sharedsecret[] = { 0xbe, 0xc8, 0x91, 0x62, 0x35, 0x34, 0x2d, 0x5a, 0x63, 0x81, 0x84, 0x7f, 0xc1, 0x09, 0x73, 0x2d, 0x68, 0xe2, 0x6d, 0x0f, 0xff, 0x87, 0x8c, 0xd2, 0x68, 0xb9, 0x82, 0x13, 0xac, 0x78, 0x5e, 0x26, 0x8f, 0xb2, 0x31, 0x94, 0xe3, 0xbf, 0xd7, 0x01, 0x0f, 0xff, 0x1b, 0x2b, 0x1a, 0x43, 0x82, 0x9a, 0x16, 0x9c, 0x0e, 0x1a, 0xf0, 0x8c, 0x4f, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3840 = { .name = "xdh_wei448_3840", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3840_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3840_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3840_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 236 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3841 for XDH, tcId is 237 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3841_peerpubkey[] = { 0xe4, 0xf2, 0xc8, 0xbf, 0xf8, 0x7d, 0x70, 0xcf, 0xb1, 0xbe, 0xe7, 0xf4, 0x8c, 0x3f, 0x63, 0xf5, 0x99, 0x56, 0x89, 0xdb, 0x27, 0xb6, 0x83, 0x03, 0x99, 0x43, 0xc7, 0x0d, 0x98, 0x2e, 0x3a, 0x0a, 0x19, 0xd5, 0x54, 0xf0, 0x39, 0x53, 0xb7, 0xd9, 0x70, 0xa2, 0x97, 0xd6, 0xbd, 0x65, 0xc2, 0x89, 0x30, 0x36, 0x6e, 0x67, 0x92, 0x82, 0x2d, 0x62, }; static const unsigned char xdh_wei448_3841_privkey[] = { 0xec, 0x38, 0xa3, 0x72, 0x22, 0xb8, 0x13, 0x84, 0x8f, 0x31, 0x2c, 0xe7, 0x64, 0x4f, 0x69, 0xea, 0xf9, 0x62, 0x4d, 0x2c, 0x13, 0x68, 0x5d, 0x35, 0x0b, 0x46, 0x9c, 0x02, 0xd4, 0x30, 0xa0, 0x2f, 0xa0, 0xbe, 0xa6, 0x54, 0x58, 0xb4, 0x42, 0x7c, 0x74, 0xff, 0x49, 0xc1, 0xeb, 0xcb, 0x1d, 0xfa, 0x07, 0x3b, 0x8e, 0xb3, 0xb8, 0x07, 0xc7, 0x94, }; static const unsigned char xdh_wei448_3841_sharedsecret[] = { 0x61, 0x34, 0x5e, 0x76, 0x39, 0x62, 0x46, 0x13, 0xbd, 0xbd, 0xf0, 0x69, 0x83, 0xf2, 0x55, 0xbc, 0xd6, 0x76, 0xa7, 0x65, 0x38, 0x2a, 0xa4, 0xf3, 0x76, 0xe2, 0x3b, 0xb5, 0x3a, 0x7c, 0x1a, 0x5b, 0xfc, 0xc9, 0x0d, 0x5a, 0x79, 0xa9, 0xef, 0xff, 0x13, 0x40, 0x49, 0x0e, 0x58, 0xda, 0xd3, 0x6b, 0xfd, 0x85, 0xd6, 0x56, 0x2b, 0x03, 0xb8, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3841 = { .name = "xdh_wei448_3841", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3841_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3841_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3841_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 237 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3842 for XDH, tcId is 238 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3842_peerpubkey[] = { 0x91, 0xc7, 0xe2, 0xf3, 0xf1, 0x8b, 0x66, 0x0a, 0x3b, 0xcc, 0x10, 0x7a, 0xc1, 0x0e, 0x6f, 0x4b, 0x58, 0xfd, 0x8e, 0xf9, 0xc5, 0x7e, 0xad, 0x82, 0x39, 0x4c, 0x99, 0xff, 0x89, 0xb0, 0x69, 0x53, 0xf4, 0xfb, 0xd3, 0x99, 0x7b, 0xcb, 0xfd, 0x3f, 0x78, 0xf2, 0x8f, 0x0b, 0x0b, 0x34, 0x8a, 0xf4, 0xa3, 0x5a, 0x7f, 0x35, 0x1a, 0x29, 0xf0, 0x7d, }; static const unsigned char xdh_wei448_3842_privkey[] = { 0xf4, 0x97, 0x0a, 0x04, 0xbf, 0x57, 0xaf, 0xa4, 0x65, 0x70, 0x71, 0x6d, 0x9e, 0xc0, 0x37, 0x98, 0xc3, 0x4a, 0xe3, 0xad, 0xd1, 0x90, 0x33, 0xc7, 0xeb, 0x25, 0x75, 0x68, 0xd1, 0x9f, 0xf1, 0xe3, 0xf9, 0x08, 0xe1, 0xb6, 0xe6, 0x95, 0x07, 0x4f, 0x75, 0x2f, 0x0a, 0xd7, 0x1f, 0x27, 0x04, 0x89, 0x5b, 0xea, 0x0d, 0xa2, 0xf9, 0x07, 0xaf, 0x9b, }; static const unsigned char xdh_wei448_3842_sharedsecret[] = { 0xcd, 0x3f, 0x8e, 0xca, 0xda, 0xb8, 0xe3, 0x2b, 0xac, 0xd7, 0x21, 0x75, 0xdb, 0x84, 0x7f, 0x9f, 0xaf, 0x99, 0x2a, 0x04, 0xfc, 0x07, 0xa1, 0xb4, 0x0a, 0x18, 0x26, 0xd1, 0xa2, 0x22, 0xba, 0x00, 0x10, 0x91, 0xb6, 0xa6, 0xe4, 0x7b, 0xe2, 0x29, 0x94, 0xb6, 0x56, 0xc2, 0xc0, 0x8f, 0x6a, 0xd9, 0x0d, 0x9a, 0x66, 0xb2, 0xe1, 0x39, 0xb9, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_3842 = { .name = "xdh_wei448_3842", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3842_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3842_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3842_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 238 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3843 for XDH, tcId is 239 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3843_peerpubkey[] = { 0xc5, 0x45, 0x38, 0xc9, 0xe6, 0x2c, 0xa0, 0x3b, 0xdd, 0xdf, 0x4d, 0x87, 0x1d, 0x32, 0x48, 0x77, 0xb5, 0xaf, 0x95, 0xcb, 0x52, 0xb5, 0x3d, 0xc4, 0x38, 0x6f, 0x10, 0x5c, 0x68, 0xd8, 0x0e, 0xbd, 0x73, 0xfd, 0xb5, 0x1b, 0xc9, 0xb2, 0x66, 0x62, 0x08, 0x65, 0x8b, 0x86, 0xc3, 0xb5, 0x93, 0x0b, 0x81, 0xab, 0xfa, 0x4a, 0xc2, 0xa2, 0x13, 0x96, }; static const unsigned char xdh_wei448_3843_privkey[] = { 0x90, 0x96, 0xf6, 0x8a, 0xd3, 0x95, 0x0f, 0x01, 0x4b, 0x5e, 0xdb, 0x84, 0xca, 0x36, 0x9d, 0x2c, 0x05, 0x3f, 0xf8, 0xf0, 0xc7, 0x8e, 0x89, 0xbb, 0xb0, 0x88, 0xe7, 0xcf, 0xbe, 0x1a, 0x1b, 0xd1, 0x8a, 0xf8, 0xc5, 0xea, 0x0e, 0x72, 0x85, 0xb1, 0x6e, 0xc2, 0x73, 0x54, 0xab, 0xfd, 0xde, 0x2b, 0xc1, 0x3e, 0x95, 0x86, 0x0d, 0xab, 0xd9, 0x85, }; static const unsigned char xdh_wei448_3843_sharedsecret[] = { 0xdb, 0x72, 0x24, 0x2a, 0x51, 0x39, 0x8f, 0xac, 0xda, 0xd9, 0x9b, 0x3c, 0xe5, 0xad, 0x85, 0x6f, 0x90, 0x24, 0xb6, 0x62, 0xdf, 0x36, 0xf0, 0xaa, 0x03, 0xa9, 0x46, 0x34, 0x35, 0x54, 0xed, 0x62, 0x44, 0xf7, 0x7c, 0x6a, 0xe2, 0x00, 0xcb, 0x2c, 0x7b, 0x7b, 0x5b, 0xcb, 0xda, 0x5b, 0x81, 0x6f, 0x97, 0xf5, 0x3c, 0xa2, 0xc5, 0xa7, 0x47, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3843 = { .name = "xdh_wei448_3843", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3843_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3843_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3843_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 4, tcId is 239 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3844 for XDH, tcId is 240 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3844_peerpubkey[] = { 0x2b, 0x4c, 0xb8, 0xa2, 0xdb, 0x20, 0xb1, 0x6c, 0x50, 0x13, 0xd8, 0x3f, 0x3f, 0xe7, 0xf2, 0x34, 0x1e, 0xab, 0xc3, 0x68, 0xd4, 0xb3, 0x11, 0xdb, 0x04, 0xfe, 0xf4, 0xa7, 0x1e, 0x3c, 0x94, 0xc6, 0xb0, 0xe2, 0x64, 0xa4, 0x1f, 0xf9, 0x63, 0x94, 0x15, 0x09, 0x5c, 0x74, 0x55, 0x34, 0x47, 0xc2, 0x6a, 0xcc, 0x75, 0x1f, 0x1f, 0xd2, 0x61, 0xd2, }; static const unsigned char xdh_wei448_3844_privkey[] = { 0xc4, 0xa9, 0xea, 0x45, 0x52, 0xf0, 0xb0, 0x2f, 0xb1, 0x53, 0xa6, 0xcc, 0xdb, 0x7b, 0x10, 0x2d, 0xe9, 0xa5, 0x0e, 0xf5, 0xee, 0x46, 0x2a, 0xf0, 0x34, 0x8a, 0x6c, 0x40, 0x86, 0x86, 0x87, 0xff, 0xb2, 0x7c, 0xb3, 0xb1, 0xff, 0x24, 0x20, 0xf4, 0xc9, 0xe6, 0xb5, 0xb8, 0xc0, 0x6c, 0x5d, 0x7d, 0xa9, 0x99, 0xb9, 0x50, 0xdc, 0xc8, 0x17, 0x80, }; static const unsigned char xdh_wei448_3844_sharedsecret[] = { 0xb6, 0xf4, 0xd2, 0x6b, 0x91, 0x7a, 0x5e, 0x29, 0x9a, 0xe9, 0xdf, 0x9d, 0x96, 0x55, 0xcf, 0x2d, 0xd6, 0x15, 0x5e, 0x1a, 0x78, 0x56, 0x36, 0xc7, 0x50, 0xf2, 0x21, 0x5e, 0xd8, 0xc7, 0xc3, 0x15, 0x2e, 0x7d, 0xd7, 0xc3, 0x16, 0x65, 0x7a, 0x91, 0x0d, 0x02, 0x21, 0x86, 0x43, 0x5b, 0xbc, 0x7e, 0xf4, 0x30, 0x9d, 0xad, 0xdd, 0x73, 0x31, 0x58, }; static const wycheproof_xdh_test xdh_wei448_3844 = { .name = "xdh_wei448_3844", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3844_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3844_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3844_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 240 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3845 for XDH, tcId is 241 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3845_peerpubkey[] = { 0x48, 0xed, 0xc1, 0x3a, 0x4c, 0xb0, 0x97, 0xc3, 0x2e, 0x0a, 0xae, 0xfe, 0x25, 0x1d, 0x35, 0x1f, 0xa0, 0x97, 0x13, 0x4e, 0xbf, 0xc5, 0xaa, 0x84, 0xb6, 0x27, 0x70, 0x2c, 0xb4, 0xd5, 0xad, 0xa5, 0xda, 0x25, 0x83, 0xfc, 0x68, 0xff, 0x78, 0x05, 0x35, 0x42, 0xc7, 0x96, 0xad, 0x62, 0x53, 0x95, 0xb4, 0x31, 0xdb, 0xbe, 0x9b, 0xf1, 0x70, 0xde, }; static const unsigned char xdh_wei448_3845_privkey[] = { 0x70, 0x9d, 0x6e, 0xbd, 0xa1, 0x76, 0x61, 0xa9, 0xa6, 0xcf, 0x02, 0x83, 0xcc, 0x37, 0xcd, 0x25, 0x80, 0x2d, 0xae, 0x0c, 0x33, 0xe6, 0xa2, 0x47, 0x99, 0xb2, 0x28, 0x40, 0x2d, 0x8c, 0x8d, 0x3b, 0xf5, 0xc3, 0x79, 0xbf, 0x2e, 0x31, 0x70, 0x8a, 0x4c, 0xe7, 0xca, 0x14, 0x96, 0x4f, 0x83, 0x68, 0xa8, 0x59, 0xb7, 0x8d, 0x8d, 0x17, 0xb5, 0x9b, }; static const unsigned char xdh_wei448_3845_sharedsecret[] = { 0x4a, 0x71, 0x74, 0xf4, 0xbf, 0x4d, 0xe8, 0xc3, 0xd9, 0xc9, 0x54, 0xdd, 0xf9, 0x86, 0x5b, 0xca, 0x47, 0xb0, 0xb9, 0xd8, 0xde, 0xa5, 0x1c, 0x3a, 0xf2, 0x90, 0xbf, 0x6e, 0x3e, 0xf8, 0xee, 0xa8, 0x26, 0x30, 0x36, 0xed, 0xb7, 0x70, 0xf5, 0x63, 0x3c, 0x05, 0x08, 0xe2, 0x67, 0x0c, 0xb9, 0xef, 0x24, 0x7d, 0x99, 0xc9, 0xf9, 0x4a, 0xab, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3845 = { .name = "xdh_wei448_3845", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3845_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3845_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3845_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 241 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3846 for XDH, tcId is 242 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3846_peerpubkey[] = { 0x45, 0xb4, 0x60, 0x34, 0x8e, 0xc0, 0xaf, 0x65, 0x1d, 0x91, 0xef, 0xe8, 0x8f, 0x94, 0x69, 0x91, 0xd2, 0x73, 0xaf, 0xee, 0x61, 0x16, 0x5b, 0xf7, 0x33, 0x49, 0x1f, 0x02, 0x20, 0xe0, 0x51, 0x06, 0x87, 0xb5, 0x18, 0xf1, 0x34, 0xc4, 0xe7, 0xe8, 0xf0, 0x4f, 0x7d, 0x6b, 0xfc, 0xcc, 0xaf, 0x2d, 0x1c, 0x9e, 0x3b, 0xa5, 0xb5, 0x0f, 0x8f, 0xe1, }; static const unsigned char xdh_wei448_3846_privkey[] = { 0xcc, 0x80, 0x41, 0x7d, 0x3f, 0x9e, 0x3c, 0x94, 0x92, 0xdb, 0xb9, 0xd2, 0x5f, 0x46, 0x0b, 0x8d, 0xf4, 0x48, 0x49, 0x85, 0xb2, 0xad, 0x9f, 0xaa, 0xa6, 0x2d, 0xfd, 0x59, 0xe5, 0x73, 0x08, 0x15, 0x7e, 0x22, 0x6c, 0x47, 0x39, 0xd4, 0x60, 0xb0, 0x8d, 0xe4, 0x6c, 0xe6, 0x38, 0x01, 0xce, 0x7d, 0xa2, 0x55, 0x73, 0xc9, 0x46, 0xd0, 0x18, 0x88, }; static const unsigned char xdh_wei448_3846_sharedsecret[] = { 0xfa, 0x1b, 0x67, 0x5f, 0x6c, 0x89, 0x3e, 0xd6, 0x8f, 0xd5, 0x98, 0xff, 0xed, 0x63, 0xfc, 0x12, 0xde, 0x40, 0x61, 0x02, 0x0b, 0x90, 0xb2, 0x2b, 0x5f, 0x72, 0xe6, 0x36, 0xf0, 0x28, 0xed, 0xfd, 0xd9, 0xda, 0x42, 0x3e, 0x83, 0x40, 0x20, 0x3e, 0x83, 0x56, 0x0d, 0xcc, 0xcd, 0xd7, 0x76, 0xdb, 0x72, 0xc6, 0x1e, 0xa8, 0x8e, 0x5d, 0x1e, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3846 = { .name = "xdh_wei448_3846", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3846_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3846_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3846_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 4, tcId is 242 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3847 for XDH, tcId is 243 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3847_peerpubkey[] = { 0xb9, 0x1e, 0x57, 0x17, 0x71, 0xaa, 0xd3, 0xc4, 0x04, 0xae, 0x46, 0x93, 0xbf, 0xf7, 0xf2, 0x14, 0x0a, 0x6c, 0x04, 0x2d, 0xb3, 0x06, 0x98, 0x94, 0xae, 0xf2, 0x0c, 0x1b, 0x34, 0xdd, 0x63, 0x5c, 0x6a, 0x08, 0x12, 0x62, 0x36, 0x45, 0x4b, 0xcb, 0x8c, 0x63, 0xa4, 0x7a, 0xc9, 0x43, 0x52, 0xa0, 0x45, 0x36, 0x76, 0x9b, 0x24, 0x22, 0x60, 0x06, }; static const unsigned char xdh_wei448_3847_privkey[] = { 0x98, 0xb7, 0xa5, 0xcf, 0xe0, 0x99, 0xbd, 0x4c, 0xbb, 0x37, 0xa7, 0x24, 0xdc, 0x0a, 0x8d, 0xe6, 0xae, 0xbf, 0x1d, 0x3f, 0xa4, 0x6d, 0xd6, 0xda, 0x64, 0xff, 0x76, 0x4e, 0x63, 0x3b, 0x4d, 0xcc, 0xd8, 0xc8, 0x07, 0x70, 0x50, 0xa9, 0x23, 0x27, 0xdd, 0x73, 0x6d, 0xca, 0xf9, 0x33, 0x2d, 0xb7, 0x1a, 0x0d, 0xfc, 0x51, 0xa9, 0xca, 0x18, 0x8c, }; static const unsigned char xdh_wei448_3847_sharedsecret[] = { 0x46, 0xeb, 0x6c, 0xd4, 0x9b, 0x02, 0x52, 0x4e, 0xfc, 0x3f, 0xa5, 0xfc, 0x6a, 0xdb, 0xd9, 0xb6, 0x04, 0x7f, 0xae, 0x2f, 0xb1, 0x74, 0x3d, 0xa9, 0x97, 0x68, 0x0e, 0x0e, 0x72, 0xc3, 0xcf, 0x1e, 0x86, 0x1f, 0xde, 0x59, 0xc0, 0x59, 0x4c, 0xf0, 0xc5, 0x80, 0x72, 0x6f, 0x0c, 0xe9, 0x94, 0x9c, 0x65, 0xdd, 0x7e, 0x71, 0x72, 0xfe, 0x51, 0x36, }; static const wycheproof_xdh_test xdh_wei448_3847 = { .name = "xdh_wei448_3847", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3847_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3847_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3847_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 243 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3848 for XDH, tcId is 244 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3848_peerpubkey[] = { 0x54, 0x2b, 0xb7, 0x70, 0x5e, 0x4a, 0x83, 0x1f, 0x0b, 0xb4, 0xcc, 0xfd, 0xcd, 0xfb, 0x74, 0xe7, 0x60, 0xcd, 0x45, 0x18, 0xbe, 0x85, 0x53, 0xe0, 0x5c, 0x14, 0x75, 0x9e, 0xe7, 0xf6, 0x7d, 0x0d, 0x7e, 0xec, 0x06, 0x61, 0xa2, 0xcb, 0x96, 0x57, 0xdc, 0xdd, 0x66, 0xdc, 0xfd, 0xba, 0xe4, 0x5b, 0x3d, 0xcb, 0x1e, 0xee, 0xab, 0x15, 0x20, 0x0d, }; static const unsigned char xdh_wei448_3848_privkey[] = { 0xf8, 0x69, 0x06, 0xe9, 0x18, 0x5e, 0x34, 0x75, 0xc6, 0x17, 0x91, 0x83, 0xac, 0xde, 0x9d, 0xd7, 0x5a, 0x59, 0x8f, 0xe7, 0x9c, 0x67, 0x70, 0xa9, 0xeb, 0x25, 0xee, 0x7c, 0x3e, 0xfa, 0xb8, 0x74, 0x0a, 0xbc, 0xfd, 0x50, 0x86, 0x79, 0xe3, 0x6f, 0x69, 0xb0, 0x61, 0x54, 0x34, 0x24, 0x36, 0xae, 0x52, 0xe5, 0x75, 0x9b, 0xf0, 0x15, 0xca, 0x84, }; static const unsigned char xdh_wei448_3848_sharedsecret[] = { 0x53, 0x36, 0xf3, 0x84, 0xa8, 0x10, 0x0c, 0xd9, 0x19, 0xd2, 0x52, 0x16, 0x46, 0xb6, 0xad, 0x8f, 0x77, 0xf2, 0x55, 0xe1, 0xa7, 0xc5, 0x08, 0x89, 0xb3, 0x3f, 0x1e, 0x24, 0x8f, 0xb5, 0xb0, 0xeb, 0x1c, 0x30, 0x2d, 0x27, 0xf3, 0x23, 0x5f, 0x7f, 0xd3, 0xf5, 0x82, 0x03, 0x75, 0x8f, 0x3f, 0x0d, 0xc7, 0x9d, 0xb6, 0x99, 0x35, 0x96, 0xcc, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3848 = { .name = "xdh_wei448_3848", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3848_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3848_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3848_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 244 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3849 for XDH, tcId is 245 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3849_peerpubkey[] = { 0x8a, 0x7b, 0x26, 0xe1, 0xd0, 0x96, 0xd5, 0xab, 0xdd, 0x69, 0x05, 0xb8, 0xf3, 0x7f, 0x01, 0xe0, 0xad, 0xbc, 0xe9, 0xbd, 0x85, 0x61, 0x7e, 0xf6, 0x5e, 0x78, 0xcd, 0xff, 0x93, 0xaf, 0xab, 0xc3, 0xa1, 0x6f, 0x35, 0x61, 0xbd, 0x60, 0x5e, 0xa0, 0xca, 0xa4, 0xc6, 0x6d, 0xd6, 0x38, 0xf3, 0xca, 0xab, 0x4e, 0x76, 0x85, 0x9c, 0xfd, 0x7f, 0x44, }; static const unsigned char xdh_wei448_3849_privkey[] = { 0x74, 0x23, 0xbe, 0xdd, 0x2e, 0xbb, 0x65, 0x1a, 0xd8, 0x41, 0xb7, 0x8a, 0x89, 0x56, 0x8d, 0x05, 0xac, 0xf3, 0xbb, 0x5c, 0x17, 0x42, 0x2e, 0x16, 0x09, 0xf4, 0x06, 0x7b, 0xde, 0x59, 0x2c, 0x7d, 0xf2, 0xa0, 0x4a, 0xe3, 0xfe, 0xd7, 0xf6, 0xfc, 0xca, 0x82, 0xb7, 0x8d, 0xee, 0xc6, 0xb6, 0x20, 0x44, 0x8c, 0x18, 0x51, 0xde, 0x98, 0x56, 0x84, }; static const unsigned char xdh_wei448_3849_sharedsecret[] = { 0x6e, 0xc4, 0xc8, 0x08, 0xf1, 0xe7, 0x4d, 0x72, 0x93, 0xb4, 0xfd, 0x6a, 0x26, 0x7e, 0xcf, 0x4d, 0x57, 0xef, 0x58, 0xe6, 0x9e, 0x4e, 0xfa, 0x34, 0x27, 0xd4, 0x49, 0x49, 0x03, 0xe1, 0xbf, 0x1c, 0x10, 0x61, 0x06, 0x95, 0x37, 0x2f, 0xbe, 0x29, 0x8b, 0x33, 0x00, 0xda, 0x37, 0xf2, 0x84, 0xb6, 0x64, 0x48, 0x06, 0xcc, 0xe8, 0xb9, 0xd8, 0x52, }; static const wycheproof_xdh_test xdh_wei448_3849 = { .name = "xdh_wei448_3849", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3849_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3849_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3849_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 245 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3850 for XDH, tcId is 246 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3850_peerpubkey[] = { 0xb0, 0x1d, 0x26, 0x56, 0x5d, 0x2f, 0xd0, 0x56, 0x0c, 0xb6, 0x78, 0x6b, 0xb8, 0xcc, 0xcb, 0x6b, 0x06, 0x24, 0xd1, 0x9d, 0x9e, 0x3e, 0x60, 0x84, 0xcd, 0xd8, 0xb0, 0x2c, 0xe6, 0xbf, 0xa0, 0x60, 0x98, 0x5b, 0x1e, 0xed, 0x84, 0xed, 0xcf, 0x15, 0x84, 0x8a, 0xdf, 0xff, 0x62, 0x80, 0xef, 0x25, 0x14, 0x3c, 0xe4, 0x8a, 0x15, 0xd0, 0xd5, 0x70, }; static const unsigned char xdh_wei448_3850_privkey[] = { 0x0c, 0x27, 0x0d, 0xe1, 0x09, 0x01, 0x5b, 0xb6, 0x13, 0x3e, 0xb5, 0x48, 0xe3, 0xf1, 0xdf, 0x78, 0xcd, 0x10, 0x47, 0x4f, 0x5b, 0x35, 0xfb, 0x7b, 0x7b, 0xe5, 0x69, 0xcf, 0x66, 0xe0, 0x91, 0xcf, 0x12, 0xf4, 0x74, 0xe7, 0x57, 0xa7, 0x69, 0xb3, 0x58, 0xff, 0x27, 0x6f, 0x37, 0x69, 0xdf, 0x08, 0x11, 0x97, 0xcd, 0x15, 0xa5, 0x6d, 0x4d, 0x9d, }; static const unsigned char xdh_wei448_3850_sharedsecret[] = { 0x4c, 0xf8, 0x05, 0x8c, 0xd2, 0xa9, 0x0f, 0xa5, 0xcd, 0x19, 0x23, 0x7e, 0x19, 0xcf, 0x62, 0x0d, 0xda, 0x88, 0xf9, 0xeb, 0xac, 0x2b, 0x69, 0x75, 0xda, 0xc1, 0x82, 0x5d, 0x26, 0x68, 0xd4, 0xea, 0x1b, 0x6d, 0xca, 0xd6, 0xbe, 0x81, 0xde, 0xc5, 0x4e, 0x2a, 0xfa, 0x9c, 0x61, 0x3d, 0x7d, 0x22, 0x84, 0xa4, 0xbb, 0x61, 0x1c, 0xa2, 0x71, 0xf5, }; static const wycheproof_xdh_test xdh_wei448_3850 = { .name = "xdh_wei448_3850", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3850_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3850_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3850_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 246 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3851 for XDH, tcId is 247 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3851_peerpubkey[] = { 0x6a, 0x36, 0xb7, 0x29, 0xe0, 0x4f, 0xb9, 0xc1, 0xd3, 0x54, 0x41, 0x62, 0x2b, 0x73, 0x5f, 0xe2, 0x17, 0x87, 0x00, 0xd8, 0x28, 0x9a, 0xbb, 0x4c, 0xee, 0x07, 0xfe, 0xac, 0x47, 0xbf, 0xb8, 0xab, 0x3b, 0x5b, 0x19, 0x37, 0x10, 0x53, 0xfe, 0xa2, 0x0e, 0x4c, 0xef, 0x03, 0x6d, 0xda, 0xc5, 0xbc, 0xb5, 0x1f, 0x74, 0x36, 0xae, 0xe3, 0x4a, 0x9e, }; static const unsigned char xdh_wei448_3851_privkey[] = { 0xbc, 0xcf, 0xa0, 0x99, 0x85, 0x11, 0x63, 0xd5, 0x23, 0xb4, 0x8d, 0x2a, 0x09, 0x8e, 0xb3, 0xec, 0x43, 0x45, 0x26, 0x59, 0x57, 0x5e, 0x1d, 0x63, 0xec, 0xdf, 0x5e, 0x59, 0x94, 0x39, 0x7d, 0xe1, 0x2d, 0x42, 0xae, 0x72, 0xb7, 0x88, 0x49, 0x94, 0xda, 0xa7, 0xe7, 0x5d, 0x8a, 0x25, 0x18, 0x67, 0x3f, 0x7f, 0xa1, 0x9a, 0x7a, 0x6a, 0xf1, 0x90, }; static const unsigned char xdh_wei448_3851_sharedsecret[] = { 0xa7, 0x87, 0xfd, 0x2a, 0xcb, 0x08, 0xe0, 0xcc, 0xf9, 0xe9, 0x63, 0xb7, 0xf1, 0xf2, 0x4a, 0xfb, 0x73, 0x02, 0x49, 0x3c, 0xa8, 0xa6, 0xc5, 0xb8, 0xa4, 0x41, 0xb7, 0xf8, 0x16, 0x30, 0x77, 0x6f, 0x35, 0x90, 0x27, 0x6c, 0x79, 0xa5, 0x7f, 0xea, 0x74, 0xb3, 0x57, 0x52, 0xa5, 0xdf, 0x08, 0x70, 0xa1, 0x23, 0x2b, 0x6c, 0x7f, 0x43, 0x2c, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3851 = { .name = "xdh_wei448_3851", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3851_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3851_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3851_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 4, tcId is 247 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3852 for XDH, tcId is 248 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3852_peerpubkey[] = { 0xa8, 0xac, 0xd6, 0xc7, 0x32, 0x7e, 0xe6, 0x62, 0x2d, 0xf0, 0x85, 0xb0, 0xe2, 0xb6, 0x87, 0x76, 0xae, 0xcc, 0x68, 0xfe, 0x57, 0x9a, 0xc9, 0x01, 0x12, 0xe5, 0xd4, 0x01, 0x3e, 0x18, 0x38, 0x6c, 0x32, 0x01, 0xca, 0x53, 0x3b, 0x76, 0x38, 0xe7, 0x6c, 0x76, 0x04, 0xbe, 0x54, 0xfb, 0x93, 0x66, 0x9a, 0xbe, 0x9e, 0x9d, 0x1d, 0x5c, 0xbc, 0xd5, }; static const unsigned char xdh_wei448_3852_privkey[] = { 0x3c, 0xcc, 0xc1, 0x4a, 0xfd, 0x4c, 0x79, 0x6e, 0xcd, 0xf0, 0x41, 0x12, 0x14, 0x88, 0x0d, 0x61, 0x88, 0xc7, 0x4c, 0x99, 0x87, 0x66, 0xd1, 0x62, 0x2f, 0xdb, 0x90, 0x57, 0x3f, 0x07, 0x0e, 0x1f, 0x2b, 0x6b, 0xe5, 0x95, 0x54, 0x32, 0x29, 0xb5, 0xed, 0xf3, 0xf8, 0x8f, 0x26, 0x13, 0x9f, 0x9d, 0x3f, 0x65, 0x00, 0xe5, 0xbb, 0xba, 0x92, 0x99, }; static const unsigned char xdh_wei448_3852_sharedsecret[] = { 0x4d, 0xc8, 0x46, 0xc3, 0x35, 0xa9, 0xe3, 0x7c, 0x4b, 0x1e, 0x02, 0x8c, 0xbb, 0xf1, 0x21, 0x95, 0x7a, 0xa0, 0xb4, 0x82, 0x6c, 0x6c, 0x7e, 0xb5, 0xf1, 0x16, 0xa6, 0xd6, 0xf9, 0x48, 0xe5, 0xbf, 0xa6, 0x25, 0xa4, 0xf1, 0x7c, 0xb5, 0xf3, 0xc1, 0xeb, 0x33, 0x56, 0x1e, 0xa6, 0xb4, 0x77, 0xb7, 0xc6, 0x49, 0xc9, 0xba, 0x89, 0xfa, 0xfc, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3852 = { .name = "xdh_wei448_3852", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3852_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3852_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3852_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 4, tcId is 248 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3853 for XDH, tcId is 249 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3853_peerpubkey[] = { 0xe5, 0x45, 0x3d, 0x6c, 0x5b, 0xb8, 0x8d, 0xca, 0x66, 0x79, 0x8b, 0xb0, 0x08, 0xbf, 0xc7, 0x32, 0xa2, 0xf4, 0xd1, 0x50, 0xf1, 0x77, 0x0c, 0x12, 0xf0, 0xd4, 0xc3, 0xcf, 0xee, 0x7b, 0x62, 0xee, 0x4f, 0x64, 0x0f, 0x88, 0x8a, 0x51, 0x6a, 0x4f, 0x9b, 0x85, 0x54, 0x55, 0x9f, 0xe0, 0x4c, 0xf7, 0xcf, 0x6f, 0x5b, 0xdf, 0x95, 0xe6, 0xf5, 0x06, }; static const unsigned char xdh_wei448_3853_privkey[] = { 0x74, 0xe8, 0xd6, 0xfb, 0x8c, 0xac, 0x97, 0x14, 0xe2, 0xe3, 0xb3, 0x3e, 0x0a, 0xe9, 0x83, 0x72, 0x89, 0x07, 0xcc, 0x8e, 0xc5, 0x93, 0x21, 0x3c, 0x34, 0x04, 0x58, 0x8e, 0x9f, 0x05, 0x7b, 0x94, 0xb1, 0xc3, 0xc7, 0x47, 0x4d, 0xa2, 0x43, 0x80, 0xed, 0xc3, 0x63, 0x03, 0xc5, 0x9a, 0xca, 0x5e, 0xf8, 0x67, 0x8d, 0x89, 0x62, 0x3d, 0x8b, 0x8b, }; static const unsigned char xdh_wei448_3853_sharedsecret[] = { 0xd5, 0xce, 0xc8, 0xc6, 0xe7, 0x44, 0x69, 0x73, 0x98, 0x55, 0xb8, 0x74, 0xc6, 0x36, 0x5b, 0x92, 0x0f, 0x6d, 0xd2, 0xdf, 0x38, 0xc0, 0x2e, 0xcb, 0xdf, 0x47, 0xef, 0xe8, 0xb4, 0x3e, 0xbd, 0x7d, 0x20, 0x3c, 0x4f, 0x11, 0x85, 0xbb, 0x10, 0x1d, 0x49, 0x5f, 0xd5, 0xe6, 0x8b, 0xc8, 0x92, 0x80, 0x26, 0x7a, 0xf5, 0x81, 0x89, 0x8b, 0x03, 0x49, }; static const wycheproof_xdh_test xdh_wei448_3853 = { .name = "xdh_wei448_3853", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3853_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3853_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3853_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 249 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3854 for XDH, tcId is 250 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3854_peerpubkey[] = { 0xec, 0x5c, 0xec, 0x8d, 0xe7, 0x18, 0xb0, 0x86, 0x64, 0xf2, 0xa5, 0xf7, 0x95, 0xbe, 0x52, 0x15, 0x37, 0x12, 0xe7, 0x46, 0x76, 0x05, 0xfd, 0xe4, 0x2d, 0xcf, 0x30, 0xc7, 0xce, 0xbe, 0x4c, 0xa8, 0xe8, 0x71, 0x0c, 0xc8, 0x99, 0x75, 0x24, 0x24, 0x01, 0xe5, 0x83, 0x90, 0x59, 0xf0, 0xaa, 0xd6, 0xd6, 0x1a, 0x7a, 0x67, 0x5c, 0x45, 0x48, 0x1c, }; static const unsigned char xdh_wei448_3854_privkey[] = { 0xf0, 0x49, 0x0b, 0xe3, 0xbe, 0xfd, 0x45, 0x60, 0x48, 0x60, 0x23, 0x73, 0x1a, 0x03, 0x97, 0x08, 0x08, 0x16, 0xe5, 0x5d, 0xb0, 0x5e, 0x77, 0x7b, 0xa7, 0x8e, 0x22, 0x51, 0xcd, 0x20, 0xf3, 0x50, 0x4a, 0x16, 0x31, 0x90, 0x78, 0xd2, 0xfe, 0x73, 0x14, 0xb3, 0x0f, 0xdc, 0xef, 0x00, 0xd7, 0x80, 0x94, 0x2d, 0x13, 0xd3, 0xf4, 0xde, 0x76, 0x98, }; static const unsigned char xdh_wei448_3854_sharedsecret[] = { 0x65, 0xa9, 0x20, 0xbb, 0xf2, 0x22, 0x92, 0x0f, 0xc7, 0x54, 0xa1, 0x83, 0x96, 0x8c, 0x6b, 0x98, 0x86, 0x17, 0x45, 0x0a, 0x5b, 0x28, 0xde, 0x1b, 0x5d, 0xe0, 0xee, 0x23, 0xf6, 0x67, 0x40, 0x36, 0xdf, 0xc9, 0x09, 0xd3, 0x78, 0xb1, 0xde, 0x87, 0x20, 0x9a, 0xe3, 0x31, 0xc1, 0x67, 0xc6, 0x1a, 0x0b, 0xfd, 0xab, 0xc3, 0xd2, 0x09, 0x4e, 0x65, }; static const wycheproof_xdh_test xdh_wei448_3854 = { .name = "xdh_wei448_3854", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3854_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3854_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3854_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 250 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3855 for XDH, tcId is 251 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3855_peerpubkey[] = { 0xc8, 0x08, 0x89, 0xfb, 0x36, 0x4d, 0xc6, 0xa2, 0x3b, 0x16, 0xc0, 0x5f, 0x16, 0xbe, 0x51, 0x01, 0x0c, 0xc5, 0xbf, 0x50, 0xc8, 0xd3, 0xab, 0xb6, 0x09, 0x7f, 0xe4, 0x67, 0x92, 0x3d, 0x50, 0x52, 0x2b, 0xfc, 0xb5, 0x7a, 0xe1, 0xa8, 0xe5, 0x36, 0xab, 0x00, 0xe9, 0x7b, 0x6d, 0x69, 0x89, 0xd3, 0x54, 0x65, 0xc0, 0x0a, 0xd1, 0xfc, 0xd7, 0x57, }; static const unsigned char xdh_wei448_3855_privkey[] = { 0x14, 0xdf, 0xec, 0xdc, 0x6a, 0xe2, 0x09, 0x1a, 0x22, 0x3a, 0x3e, 0x6b, 0xea, 0x36, 0xc3, 0xca, 0xf3, 0x56, 0xb6, 0x6e, 0xd8, 0x47, 0x88, 0x21, 0xd2, 0x85, 0xa1, 0x04, 0x08, 0xed, 0xc0, 0x30, 0xc1, 0x18, 0xbc, 0x2f, 0x60, 0x99, 0x97, 0x14, 0x6f, 0xba, 0xbf, 0x34, 0x86, 0x58, 0xfa, 0x8b, 0xf3, 0x13, 0xda, 0x6e, 0xd4, 0x9c, 0xe2, 0x81, }; static const unsigned char xdh_wei448_3855_sharedsecret[] = { 0x74, 0x0a, 0x84, 0xcd, 0x54, 0xaf, 0xe2, 0x3b, 0x00, 0x60, 0x6a, 0x30, 0x09, 0xbb, 0x37, 0xa1, 0x30, 0x11, 0x8e, 0x53, 0x52, 0xc5, 0xe3, 0xc3, 0x8b, 0x51, 0x7f, 0xfa, 0x46, 0x98, 0x78, 0x98, 0x52, 0xdc, 0x15, 0x9e, 0x35, 0xd0, 0x6c, 0xe5, 0xeb, 0x68, 0xba, 0x54, 0x14, 0xb2, 0xe6, 0x51, 0x5d, 0x68, 0x3a, 0x80, 0x02, 0x81, 0x74, 0x72, }; static const wycheproof_xdh_test xdh_wei448_3855 = { .name = "xdh_wei448_3855", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3855_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3855_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3855_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 251 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3856 for XDH, tcId is 252 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3856_peerpubkey[] = { 0x0a, 0xd8, 0xa1, 0x51, 0x1e, 0x59, 0xa2, 0x38, 0xbb, 0x9b, 0xfd, 0x79, 0x04, 0x44, 0xf6, 0xeb, 0x87, 0xed, 0x22, 0xcb, 0x17, 0x0f, 0x9d, 0xcc, 0xbb, 0xcb, 0xc6, 0x4d, 0x0a, 0x66, 0x33, 0x62, 0x32, 0xcd, 0x2d, 0xca, 0x7b, 0x9c, 0xcb, 0x93, 0x44, 0x58, 0x4e, 0xf7, 0x1e, 0x18, 0x1d, 0x5f, 0x47, 0x7b, 0x88, 0x3d, 0xbd, 0x65, 0xdb, 0x7e, }; static const unsigned char xdh_wei448_3856_privkey[] = { 0x0c, 0x3b, 0xdd, 0x0e, 0xae, 0x10, 0x80, 0x13, 0x94, 0xd8, 0x1d, 0x88, 0xc5, 0x0b, 0x0c, 0x79, 0x1e, 0xe8, 0x39, 0x7a, 0x26, 0xe7, 0x0d, 0xfa, 0x02, 0xa0, 0x30, 0xeb, 0x8d, 0xed, 0xa5, 0xa2, 0x0b, 0xf6, 0x9c, 0x42, 0x6f, 0x64, 0xbf, 0xc7, 0x5c, 0x9b, 0xc3, 0x6d, 0x76, 0xa3, 0x54, 0xea, 0xc4, 0xcb, 0xc8, 0x3b, 0xa5, 0x6d, 0x8d, 0x88, }; static const unsigned char xdh_wei448_3856_sharedsecret[] = { 0x30, 0x36, 0x4d, 0xac, 0x7c, 0x97, 0x17, 0xc7, 0x79, 0x27, 0xbd, 0x11, 0x3f, 0x9d, 0x5c, 0xfb, 0x16, 0xf4, 0xe3, 0xfb, 0xeb, 0x5f, 0xe1, 0xd1, 0x73, 0x5f, 0xf7, 0x91, 0xea, 0x2c, 0x12, 0xd5, 0x40, 0x21, 0xbf, 0x52, 0xdb, 0xb2, 0xb2, 0x76, 0xdf, 0xf5, 0x0b, 0x78, 0x9e, 0x96, 0x49, 0x72, 0xb5, 0x0e, 0x4c, 0x07, 0x0e, 0xde, 0xa4, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3856 = { .name = "xdh_wei448_3856", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3856_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3856_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3856_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 4, tcId is 252 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3857 for XDH, tcId is 253 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3857_peerpubkey[] = { 0x51, 0x0b, 0xf0, 0x00, 0x66, 0x14, 0x2c, 0xe7, 0xcb, 0x50, 0x6b, 0x22, 0x7f, 0xdf, 0xd1, 0xe1, 0xc5, 0x7e, 0x9c, 0xef, 0x90, 0x18, 0x64, 0x38, 0x4a, 0xe0, 0x76, 0x40, 0x14, 0x1e, 0xd2, 0xbf, 0x70, 0x0c, 0x91, 0xb5, 0x64, 0x1d, 0x6f, 0xbe, 0x40, 0x96, 0xdd, 0x21, 0xad, 0x51, 0x73, 0x47, 0x72, 0x27, 0xe4, 0x73, 0x3b, 0xdc, 0xd3, 0xaa, }; static const unsigned char xdh_wei448_3857_privkey[] = { 0x7c, 0xba, 0xa9, 0xa6, 0x20, 0x37, 0xfb, 0x3b, 0x44, 0xda, 0x1c, 0x07, 0xad, 0xc7, 0x69, 0x85, 0xbb, 0x0c, 0x55, 0xe7, 0xfb, 0x58, 0x54, 0xed, 0xd1, 0x14, 0xa1, 0xae, 0xb3, 0x87, 0x95, 0xc4, 0xce, 0x5f, 0xc9, 0x3f, 0x6c, 0x72, 0x57, 0xf0, 0x45, 0xca, 0x9a, 0xe8, 0x52, 0x6a, 0xdb, 0xda, 0xc5, 0x7f, 0x40, 0x86, 0xb6, 0x98, 0xbb, 0x85, }; static const unsigned char xdh_wei448_3857_sharedsecret[] = { 0x71, 0x11, 0xd8, 0x4a, 0x2d, 0x5e, 0x7b, 0xfb, 0x45, 0xf1, 0xd8, 0x9a, 0x58, 0xab, 0x39, 0x27, 0xfe, 0xb3, 0x9b, 0x31, 0x6c, 0xfa, 0x35, 0x48, 0xc3, 0xf0, 0x56, 0x15, 0x3a, 0xe8, 0x2c, 0xd5, 0x20, 0xa5, 0x82, 0x78, 0xf9, 0x72, 0xc3, 0xd6, 0xdc, 0xaa, 0xdf, 0x6a, 0xe6, 0x83, 0x3f, 0x94, 0x9b, 0x2b, 0x9c, 0xb5, 0xe4, 0x34, 0x14, 0xa5, }; static const wycheproof_xdh_test xdh_wei448_3857 = { .name = "xdh_wei448_3857", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3857_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3857_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3857_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 253 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3858 for XDH, tcId is 254 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3858_peerpubkey[] = { 0x29, 0x51, 0xe6, 0xc0, 0x95, 0x0e, 0x6a, 0xd8, 0x80, 0x8a, 0x5f, 0xa3, 0x4a, 0x0a, 0x82, 0x8c, 0x04, 0xaa, 0x51, 0x3c, 0x3c, 0x79, 0x8f, 0x43, 0x15, 0xab, 0x6d, 0x4f, 0x47, 0x6f, 0x7a, 0x82, 0xa9, 0x69, 0x19, 0x7c, 0x24, 0xb8, 0xec, 0x6c, 0xa2, 0x30, 0xe6, 0xbb, 0xc6, 0xe6, 0xb8, 0xf2, 0xaf, 0x47, 0x8f, 0x46, 0x33, 0xa2, 0x7a, 0xf0, }; static const unsigned char xdh_wei448_3858_privkey[] = { 0x98, 0x84, 0x92, 0xb8, 0x2d, 0x09, 0x6f, 0xa8, 0x2e, 0x9b, 0xd1, 0x2b, 0xab, 0xe1, 0xb5, 0x27, 0xd0, 0xeb, 0xb4, 0x2d, 0x13, 0x19, 0x43, 0x87, 0xf8, 0x9e, 0xe1, 0x13, 0x07, 0x01, 0xda, 0x37, 0x04, 0x9a, 0x23, 0xc7, 0x26, 0xe2, 0x86, 0x24, 0x14, 0x4c, 0xb4, 0x9b, 0x1c, 0xcc, 0x09, 0x3a, 0x6e, 0xaf, 0x24, 0x2a, 0x27, 0xa6, 0xf0, 0x86, }; static const unsigned char xdh_wei448_3858_sharedsecret[] = { 0x42, 0x37, 0x05, 0x8a, 0x28, 0x37, 0xa7, 0x5c, 0xbb, 0xdb, 0xc5, 0x60, 0x43, 0xab, 0x3e, 0xd8, 0xcc, 0x02, 0xf5, 0x96, 0xec, 0x5c, 0xee, 0x54, 0x7a, 0x5d, 0x68, 0x2f, 0x00, 0x8d, 0xf4, 0x9e, 0x60, 0x11, 0x90, 0x1c, 0x94, 0x0e, 0x41, 0x6e, 0xef, 0x37, 0x1c, 0x80, 0xe3, 0x1f, 0xea, 0x48, 0x3f, 0x00, 0x92, 0x51, 0xf7, 0x2a, 0xad, 0x73, }; static const wycheproof_xdh_test xdh_wei448_3858 = { .name = "xdh_wei448_3858", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3858_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3858_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3858_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 4, tcId is 254 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3859 for XDH, tcId is 255 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3859_peerpubkey[] = { 0x3d, 0xa1, 0x0f, 0x7b, 0x47, 0xf0, 0x77, 0x4a, 0xeb, 0x7c, 0x2d, 0x3e, 0xc9, 0x52, 0x14, 0xb5, 0x4f, 0xb8, 0x0a, 0xb8, 0xf5, 0x35, 0xec, 0x13, 0x84, 0xac, 0xaa, 0xd0, 0x4b, 0x6d, 0x88, 0x61, 0x87, 0x2d, 0x0b, 0xc9, 0x03, 0xab, 0x9c, 0x9b, 0x61, 0xca, 0xc4, 0x67, 0xa3, 0xf6, 0x32, 0xf0, 0xe5, 0x37, 0xa6, 0x96, 0xea, 0x88, 0x28, 0x0b, }; static const unsigned char xdh_wei448_3859_privkey[] = { 0x38, 0xb1, 0x19, 0x0d, 0xd6, 0x91, 0xea, 0xc7, 0xbd, 0x5f, 0x80, 0x6b, 0x20, 0x1f, 0xdb, 0xf9, 0x0e, 0x0e, 0xf7, 0xc7, 0x2f, 0x79, 0xbf, 0x2e, 0xf3, 0xa0, 0x4e, 0xac, 0xbc, 0xd4, 0x09, 0x98, 0x4b, 0xc7, 0x65, 0xc0, 0x4f, 0x64, 0x1d, 0xa9, 0x80, 0x25, 0xe4, 0x16, 0x41, 0x55, 0x92, 0xc9, 0x1c, 0x18, 0xec, 0x3c, 0x4d, 0x39, 0x85, 0x9b, }; static const unsigned char xdh_wei448_3859_sharedsecret[] = { 0x4e, 0xda, 0x68, 0xdf, 0x39, 0xba, 0x14, 0xb0, 0x9e, 0xed, 0xd4, 0xc5, 0x2d, 0xb5, 0xa4, 0x95, 0x5b, 0x4e, 0x00, 0xb0, 0x56, 0xca, 0x18, 0x23, 0xe9, 0x3f, 0x19, 0x0b, 0x21, 0xff, 0x7f, 0xe7, 0xe0, 0x5f, 0x80, 0x89, 0xfb, 0x0c, 0x0a, 0x1f, 0xaa, 0x84, 0xff, 0xed, 0xe4, 0x2a, 0xb9, 0xac, 0x93, 0x79, 0x9b, 0x99, 0xfe, 0x18, 0x25, 0x59, }; static const wycheproof_xdh_test xdh_wei448_3859 = { .name = "xdh_wei448_3859", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3859_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3859_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3859_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 255 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3860 for XDH, tcId is 256 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3860_peerpubkey[] = { 0x83, 0xfd, 0x7a, 0xac, 0x6b, 0xe7, 0x83, 0x19, 0x80, 0xbc, 0x1f, 0x39, 0x16, 0xc3, 0xcb, 0x6b, 0xf0, 0x85, 0x1a, 0x29, 0x04, 0xab, 0x9a, 0x38, 0xca, 0xa4, 0xe7, 0xa0, 0x14, 0xfb, 0xee, 0xbe, 0x9f, 0xa0, 0x12, 0x5a, 0x39, 0xa3, 0xa2, 0x29, 0xc8, 0xdf, 0xc7, 0x5c, 0x98, 0xc3, 0x03, 0x17, 0x9e, 0x60, 0x95, 0x44, 0x69, 0xeb, 0x83, 0x0f, }; static const unsigned char xdh_wei448_3860_privkey[] = { 0xe4, 0xa4, 0x81, 0x98, 0xa8, 0x66, 0x81, 0x2b, 0x3c, 0x7a, 0xc4, 0xe2, 0x83, 0xcf, 0x2b, 0x34, 0x01, 0x33, 0xed, 0xb4, 0x88, 0x06, 0xc9, 0x5c, 0xae, 0xe3, 0x22, 0xea, 0x58, 0x30, 0x9f, 0x9d, 0x53, 0xe7, 0x5c, 0x65, 0x54, 0x05, 0x17, 0x4c, 0x50, 0xd8, 0x7c, 0x37, 0xaf, 0x69, 0xe6, 0x26, 0xbc, 0x5e, 0xb3, 0xfe, 0x48, 0x29, 0x08, 0x9a, }; static const unsigned char xdh_wei448_3860_sharedsecret[] = { 0x30, 0xd4, 0x13, 0x2a, 0x48, 0xfd, 0xa4, 0x03, 0x0d, 0xd6, 0xee, 0x8f, 0x6b, 0x92, 0x91, 0x8f, 0x95, 0x67, 0xc4, 0x0a, 0xbc, 0xd1, 0x93, 0xd7, 0x60, 0x4e, 0x55, 0x10, 0x79, 0xa7, 0xa3, 0xf8, 0x1f, 0x80, 0x25, 0x7b, 0x43, 0x85, 0x9d, 0xd9, 0x0a, 0xd2, 0x17, 0xbd, 0xb3, 0xb2, 0xe0, 0xef, 0x1b, 0x0b, 0x7e, 0x88, 0x46, 0xb9, 0xb4, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_3860 = { .name = "xdh_wei448_3860", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3860_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3860_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3860_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 256 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3861 for XDH, tcId is 257 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3861_peerpubkey[] = { 0xd3, 0x18, 0x3f, 0x95, 0x04, 0xd7, 0xa2, 0xa7, 0x13, 0x41, 0x37, 0x5a, 0xde, 0x2a, 0x68, 0xa5, 0xb2, 0xb5, 0xf5, 0x97, 0x93, 0x21, 0xee, 0x5b, 0xfa, 0x55, 0x35, 0x5b, 0x8b, 0x60, 0x2b, 0xfe, 0x5e, 0x6e, 0xa6, 0xd9, 0xa8, 0xe9, 0xd8, 0x3e, 0xd1, 0x14, 0x6a, 0x08, 0x16, 0x62, 0xb0, 0xa5, 0x2f, 0x52, 0x37, 0x4e, 0x9d, 0x93, 0xe9, 0x22, }; static const unsigned char xdh_wei448_3861_privkey[] = { 0x3c, 0x96, 0x99, 0xd1, 0x52, 0xec, 0x8f, 0x3d, 0xe3, 0x8e, 0xf3, 0x7a, 0x92, 0xa3, 0x86, 0x59, 0x28, 0x3e, 0xee, 0xfd, 0x19, 0x25, 0xf9, 0x6c, 0xac, 0x53, 0xb4, 0xb7, 0x5b, 0xaf, 0x32, 0x95, 0xdd, 0xd7, 0x08, 0xeb, 0x1b, 0x0f, 0x0a, 0xf0, 0x92, 0x57, 0x92, 0xac, 0x8a, 0xe9, 0xf8, 0x12, 0xde, 0x2b, 0x48, 0xd8, 0x7c, 0x11, 0x4a, 0x9d, }; static const unsigned char xdh_wei448_3861_sharedsecret[] = { 0x7c, 0x27, 0xfa, 0x6b, 0x65, 0x13, 0x3c, 0xd1, 0xa4, 0xa2, 0x90, 0x16, 0x03, 0x0e, 0x11, 0x20, 0x4c, 0x9c, 0xc5, 0x70, 0xcb, 0xda, 0xbe, 0xa0, 0x78, 0xea, 0xbb, 0x5a, 0x2f, 0xb9, 0x2a, 0x3a, 0xc9, 0xf7, 0x5e, 0x4a, 0x19, 0x8d, 0x29, 0x1a, 0xb2, 0xc2, 0x60, 0x4f, 0xad, 0x6b, 0x1a, 0x36, 0xda, 0x89, 0x19, 0xfc, 0xe3, 0x55, 0x60, 0xe8, }; static const wycheproof_xdh_test xdh_wei448_3861 = { .name = "xdh_wei448_3861", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3861_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3861_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3861_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 257 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3862 for XDH, tcId is 258 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3862_peerpubkey[] = { 0x40, 0xa4, 0xe6, 0x6d, 0x42, 0xe4, 0xd9, 0xa1, 0x3e, 0xd3, 0x48, 0xb3, 0x90, 0xb4, 0x06, 0xa1, 0xd7, 0x3a, 0x1a, 0xd7, 0x1a, 0x2d, 0xe9, 0xf0, 0x65, 0x69, 0x29, 0x92, 0xb0, 0x1b, 0xa6, 0x24, 0x3c, 0x01, 0x34, 0xf4, 0x15, 0x0f, 0xb9, 0xa3, 0xaa, 0xaf, 0xb6, 0xb7, 0x4f, 0x27, 0xe7, 0x3a, 0x53, 0xee, 0x96, 0xee, 0xb0, 0x95, 0x03, 0x2e, }; static const unsigned char xdh_wei448_3862_privkey[] = { 0x2c, 0x45, 0x44, 0x67, 0x14, 0xbc, 0xb9, 0x25, 0x2b, 0x29, 0xaa, 0x50, 0x50, 0x27, 0x7b, 0x43, 0xcb, 0x39, 0x77, 0x58, 0x49, 0x0f, 0x49, 0x65, 0xe7, 0x7a, 0x8b, 0x6c, 0xb9, 0x84, 0xb4, 0x51, 0x18, 0xb6, 0x23, 0x48, 0xeb, 0x49, 0x4a, 0xe9, 0x6b, 0x74, 0x43, 0x15, 0x52, 0xa9, 0x45, 0x61, 0x0b, 0x2e, 0x1f, 0x56, 0x59, 0xfb, 0xc7, 0x81, }; static const unsigned char xdh_wei448_3862_sharedsecret[] = { 0x75, 0x0b, 0x89, 0xd5, 0xbe, 0x9d, 0x34, 0xa3, 0x2b, 0x92, 0xab, 0xef, 0x98, 0x44, 0x07, 0x29, 0xa7, 0x3c, 0x73, 0x3b, 0xd6, 0x31, 0x8e, 0x38, 0x59, 0xbf, 0x88, 0x7f, 0x4b, 0x46, 0xa7, 0x04, 0x8a, 0x61, 0xeb, 0xa1, 0xe3, 0xc9, 0x88, 0x89, 0xee, 0x71, 0x2c, 0x4f, 0x24, 0x65, 0x83, 0xcb, 0xea, 0x23, 0x76, 0x82, 0x50, 0x80, 0x2d, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3862 = { .name = "xdh_wei448_3862", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3862_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3862_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3862_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 4, tcId is 258 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3863 for XDH, tcId is 259 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3863_peerpubkey[] = { 0x72, 0xf7, 0x48, 0xf5, 0x10, 0x28, 0xb0, 0xb2, 0xb3, 0x89, 0x64, 0x24, 0x71, 0x00, 0xfb, 0x55, 0x21, 0x75, 0xfa, 0xdd, 0x4a, 0xb5, 0xbc, 0xf3, 0x9d, 0xcf, 0xbd, 0xda, 0x32, 0x8b, 0xd6, 0x7f, 0xa1, 0x04, 0xe4, 0x6e, 0x7a, 0x55, 0xfb, 0x03, 0x19, 0xe4, 0xfe, 0x7c, 0x94, 0x07, 0xc8, 0x68, 0x30, 0xcb, 0x41, 0x81, 0x08, 0x62, 0x05, 0x4b, }; static const unsigned char xdh_wei448_3863_privkey[] = { 0xf0, 0xf1, 0x87, 0xeb, 0xde, 0x1b, 0xf9, 0xa1, 0xcf, 0x5f, 0xc3, 0xa9, 0xf9, 0x05, 0x2b, 0x33, 0xa7, 0xf5, 0x07, 0x2e, 0xfe, 0x84, 0xfb, 0x06, 0x02, 0xcd, 0x50, 0x0b, 0x78, 0xc8, 0xaa, 0xce, 0x23, 0x49, 0x90, 0xd3, 0xc2, 0x93, 0xcd, 0xd1, 0x9d, 0x8e, 0xf0, 0x60, 0x12, 0x28, 0x9a, 0x28, 0x0c, 0x53, 0xae, 0x81, 0x4f, 0xc4, 0x29, 0x94, }; static const unsigned char xdh_wei448_3863_sharedsecret[] = { 0x3f, 0x08, 0xf0, 0xfe, 0x4c, 0x3a, 0x6b, 0xad, 0x42, 0x5c, 0x62, 0x68, 0xb4, 0xc3, 0xeb, 0xe5, 0x98, 0x3b, 0xda, 0xfc, 0xd7, 0xb6, 0x0a, 0x02, 0xd1, 0x24, 0x7c, 0x76, 0xb2, 0xcd, 0xe2, 0xe5, 0x6c, 0x2c, 0x15, 0x2e, 0x17, 0x99, 0x59, 0x5c, 0xd1, 0x23, 0x72, 0x96, 0xbc, 0x9c, 0x1a, 0x74, 0xe1, 0x04, 0xcd, 0x9f, 0x5f, 0xb4, 0x1c, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3863 = { .name = "xdh_wei448_3863", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3863_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3863_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3863_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 259 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3864 for XDH, tcId is 260 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3864_peerpubkey[] = { 0x63, 0xb4, 0x75, 0xdd, 0x74, 0x8d, 0x69, 0xa3, 0xd9, 0xbd, 0x58, 0xb4, 0x0a, 0xad, 0x21, 0x4a, 0x49, 0x7f, 0xf6, 0xdd, 0xc1, 0x85, 0x95, 0x2d, 0xa9, 0xdf, 0x7f, 0x10, 0xf1, 0x47, 0x46, 0xd2, 0xfb, 0x3b, 0xa8, 0xa1, 0x63, 0xc6, 0x96, 0x84, 0x66, 0x0a, 0xda, 0x69, 0x5d, 0x97, 0xaa, 0x77, 0x5e, 0xfe, 0x31, 0x97, 0x83, 0x21, 0x0f, 0xb9, }; static const unsigned char xdh_wei448_3864_privkey[] = { 0xd4, 0xbe, 0x35, 0x9d, 0x94, 0x86, 0x27, 0xc6, 0x5c, 0x40, 0x66, 0x6b, 0x6f, 0xc5, 0x8d, 0xa9, 0x8a, 0x6d, 0x17, 0xa4, 0x37, 0xfc, 0x74, 0x5e, 0x1d, 0x08, 0x2c, 0x65, 0x45, 0xf5, 0xd2, 0x37, 0x1b, 0x25, 0xdf, 0x69, 0x09, 0x61, 0x95, 0x92, 0x4f, 0x45, 0x65, 0x72, 0x59, 0x43, 0xfa, 0x10, 0x89, 0xee, 0x19, 0x34, 0xf7, 0x67, 0x16, 0x93, }; static const unsigned char xdh_wei448_3864_sharedsecret[] = { 0xe6, 0x9b, 0x39, 0x17, 0xc3, 0xca, 0xf5, 0x8d, 0xfe, 0x8c, 0x9b, 0x60, 0x15, 0x44, 0xd3, 0x19, 0xa0, 0x05, 0x44, 0xf3, 0xc8, 0xba, 0x7c, 0x8c, 0x4d, 0x55, 0x71, 0x16, 0xd9, 0x41, 0x61, 0x71, 0xbb, 0x84, 0xce, 0x2d, 0xc1, 0xac, 0x72, 0x32, 0x49, 0x60, 0x50, 0x23, 0xd3, 0x9d, 0x28, 0x7f, 0x17, 0xf0, 0x23, 0x1c, 0x61, 0x1e, 0x6c, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3864 = { .name = "xdh_wei448_3864", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3864_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3864_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3864_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 4, tcId is 260 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3865 for XDH, tcId is 261 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3865_peerpubkey[] = { 0x07, 0x31, 0xcb, 0x8c, 0x77, 0xf5, 0xb9, 0xe5, 0x1a, 0x90, 0x3b, 0x86, 0x47, 0x5e, 0x41, 0xa3, 0x7a, 0xbc, 0xb0, 0xef, 0xfb, 0x89, 0x8c, 0x6c, 0x8d, 0xe7, 0x1f, 0x28, 0xc8, 0x29, 0x2b, 0xe4, 0xa2, 0xcc, 0xdf, 0xf1, 0x3b, 0x62, 0xed, 0xd2, 0x1a, 0x8f, 0xad, 0x84, 0x6d, 0x0e, 0x1d, 0x9e, 0xac, 0x18, 0xcc, 0x4d, 0xe9, 0x23, 0x2d, 0x0e, }; static const unsigned char xdh_wei448_3865_privkey[] = { 0xc4, 0x21, 0xe2, 0x0c, 0x39, 0x1c, 0x60, 0xcf, 0x4a, 0xbc, 0x0d, 0x57, 0x2f, 0x33, 0x5c, 0x36, 0x7b, 0xf0, 0x2c, 0xd5, 0x98, 0x6f, 0x38, 0xc3, 0x80, 0x5f, 0xf3, 0x9f, 0xa9, 0x66, 0x08, 0x76, 0x80, 0x06, 0x30, 0x3e, 0xf5, 0xfd, 0x11, 0x87, 0xaf, 0x2d, 0x3a, 0x66, 0x72, 0xe5, 0x18, 0x16, 0x6b, 0x44, 0x8d, 0xc7, 0x9f, 0xe7, 0x1d, 0x9f, }; static const unsigned char xdh_wei448_3865_sharedsecret[] = { 0x7a, 0x7f, 0x60, 0xd5, 0x04, 0x45, 0x29, 0x98, 0xa6, 0x15, 0x37, 0x78, 0xe4, 0x9b, 0x66, 0x39, 0x76, 0xd7, 0x5a, 0xa8, 0x63, 0xa5, 0x71, 0xb2, 0xdc, 0x8c, 0x99, 0xbd, 0x4d, 0xd6, 0x12, 0x52, 0x19, 0x3e, 0x55, 0xfa, 0x06, 0x8b, 0x45, 0x19, 0x42, 0x71, 0xb3, 0xa3, 0x96, 0x91, 0x2a, 0x2c, 0xa3, 0x68, 0xb5, 0x60, 0x55, 0xb6, 0xf1, 0xc9, }; static const wycheproof_xdh_test xdh_wei448_3865 = { .name = "xdh_wei448_3865", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3865_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3865_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3865_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 261 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3866 for XDH, tcId is 262 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3866_peerpubkey[] = { 0xe1, 0x20, 0xba, 0xc8, 0xb1, 0x25, 0x14, 0x25, 0xb2, 0x44, 0xdb, 0x72, 0x12, 0x4d, 0xd9, 0x6c, 0x2c, 0x52, 0xcc, 0xa8, 0x2b, 0x42, 0x57, 0x00, 0x07, 0x0b, 0xb8, 0xa7, 0xdf, 0x81, 0x04, 0x35, 0x18, 0x98, 0x07, 0x62, 0x02, 0x2f, 0x0f, 0xc9, 0xe0, 0x9d, 0x15, 0xfc, 0xcb, 0x06, 0xb7, 0x6f, 0x5f, 0x8a, 0x57, 0x2a, 0x4b, 0x79, 0xee, 0x15, }; static const unsigned char xdh_wei448_3866_privkey[] = { 0x30, 0x12, 0xf7, 0x85, 0x1f, 0x3c, 0xe0, 0xaa, 0x48, 0x1d, 0xc6, 0x5c, 0x32, 0x22, 0x39, 0x79, 0x75, 0x11, 0xa6, 0xee, 0x1f, 0x02, 0xb1, 0x02, 0x6d, 0x49, 0x03, 0x2e, 0xfb, 0x99, 0x85, 0x03, 0xd7, 0x25, 0x05, 0xc7, 0x26, 0x1c, 0x61, 0xcd, 0x69, 0x8b, 0xa8, 0xae, 0xc1, 0xd1, 0xb9, 0xa8, 0x60, 0xe9, 0x90, 0x8c, 0x81, 0xe5, 0x63, 0x90, }; static const unsigned char xdh_wei448_3866_sharedsecret[] = { 0xe1, 0x56, 0x0d, 0xab, 0x7b, 0xb1, 0x8f, 0x74, 0xed, 0x8a, 0x98, 0x5f, 0x51, 0x99, 0x3d, 0x65, 0x59, 0xc3, 0x12, 0xfa, 0x45, 0x3d, 0x1e, 0xe8, 0x45, 0x47, 0xf3, 0x5f, 0xa8, 0x69, 0x4e, 0x97, 0x4a, 0xb6, 0x01, 0xdb, 0xad, 0xad, 0x46, 0x58, 0xd6, 0x99, 0x97, 0x77, 0xba, 0x0d, 0xad, 0x19, 0x9a, 0xb0, 0xc2, 0x2d, 0x49, 0x51, 0x1f, 0x16, }; static const wycheproof_xdh_test xdh_wei448_3866 = { .name = "xdh_wei448_3866", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3866_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3866_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3866_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 262 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3867 for XDH, tcId is 263 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3867_peerpubkey[] = { 0xa4, 0xb4, 0x6e, 0xd5, 0xa3, 0x64, 0xeb, 0xe3, 0x50, 0x4c, 0xfe, 0x32, 0xd5, 0x97, 0xfc, 0x7d, 0xfc, 0x8d, 0xc7, 0x26, 0x8b, 0x15, 0xfd, 0x40, 0xd6, 0xa3, 0x1d, 0x75, 0xfa, 0x74, 0x45, 0x6c, 0x6f, 0x7d, 0xe8, 0x92, 0xb4, 0x8d, 0x08, 0x94, 0xaf, 0x6a, 0xf6, 0x99, 0x11, 0x44, 0xff, 0xe6, 0x21, 0x3c, 0xab, 0xf8, 0x63, 0xde, 0xc0, 0x41, }; static const unsigned char xdh_wei448_3867_privkey[] = { 0xbc, 0x87, 0x11, 0x09, 0xd0, 0x26, 0xb1, 0x41, 0x34, 0x9f, 0xd6, 0xcb, 0x97, 0xa3, 0x65, 0xba, 0xf1, 0x8d, 0x7e, 0x40, 0xc3, 0x11, 0xde, 0x98, 0x0f, 0x50, 0x21, 0x7e, 0x7f, 0xf1, 0xeb, 0x86, 0x9a, 0x5f, 0x9f, 0x29, 0xde, 0x1b, 0xd7, 0x60, 0xf4, 0x31, 0x3c, 0x01, 0x0d, 0xab, 0x9c, 0xbe, 0xa3, 0xfd, 0xb1, 0x2b, 0x95, 0xb7, 0xc9, 0x83, }; static const unsigned char xdh_wei448_3867_sharedsecret[] = { 0x28, 0x44, 0x9c, 0x1f, 0x5c, 0x54, 0x3e, 0x09, 0x41, 0x7e, 0x3d, 0xb5, 0x7b, 0xff, 0xa6, 0xc2, 0x9e, 0x0e, 0xe4, 0x39, 0x52, 0xc1, 0x0a, 0xb2, 0xbd, 0xba, 0x80, 0x6b, 0xd0, 0xbe, 0x28, 0xd2, 0xe9, 0xc4, 0x68, 0x4c, 0xe5, 0xc5, 0xcd, 0xdf, 0x2a, 0x67, 0x88, 0x33, 0xfc, 0x2f, 0x05, 0x85, 0x23, 0x02, 0xdd, 0x28, 0x30, 0x98, 0xd1, 0x3b, }; static const wycheproof_xdh_test xdh_wei448_3867 = { .name = "xdh_wei448_3867", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3867_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3867_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3867_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 263 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3868 for XDH, tcId is 264 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3868_peerpubkey[] = { 0xdc, 0x9d, 0xf7, 0x90, 0x6a, 0xc7, 0x0e, 0xeb, 0xa1, 0x3a, 0x76, 0x6f, 0xfe, 0x82, 0xdf, 0x94, 0xc8, 0x33, 0xbd, 0x1b, 0xd5, 0x2c, 0x65, 0x44, 0x9b, 0x1a, 0xba, 0x4d, 0x3c, 0x3b, 0x36, 0x06, 0x02, 0xac, 0x30, 0x48, 0x37, 0x78, 0x22, 0x92, 0x3d, 0xb8, 0x06, 0x4c, 0x7d, 0xbd, 0x68, 0xf5, 0x3f, 0xbe, 0xc5, 0xe8, 0x6a, 0xb2, 0x3c, 0x56, }; static const unsigned char xdh_wei448_3868_privkey[] = { 0x9c, 0xfa, 0x3e, 0xb1, 0x9c, 0x53, 0x80, 0x84, 0xdc, 0x9b, 0x90, 0x03, 0xb1, 0xb8, 0x0a, 0xcb, 0x5a, 0x61, 0xf6, 0xbb, 0xf4, 0x93, 0xff, 0x82, 0x85, 0xc8, 0xcb, 0xf6, 0x48, 0xcc, 0x25, 0x87, 0x7c, 0xec, 0x79, 0x2e, 0x57, 0x3e, 0xe3, 0x8f, 0x28, 0xdf, 0x15, 0x45, 0x51, 0x39, 0x2f, 0x59, 0xf3, 0x3f, 0xea, 0xa0, 0x4c, 0x72, 0x02, 0x9b, }; static const unsigned char xdh_wei448_3868_sharedsecret[] = { 0x31, 0x8a, 0x56, 0xad, 0xf9, 0x66, 0x12, 0xdd, 0x1e, 0xcc, 0x49, 0x35, 0xb4, 0xa2, 0x25, 0xae, 0x35, 0x1f, 0xcc, 0xcb, 0xd4, 0xda, 0x3e, 0x6e, 0xd1, 0x3e, 0xf8, 0x0b, 0xe8, 0x64, 0x25, 0x1f, 0x71, 0x42, 0xa8, 0xe1, 0xb0, 0x14, 0x30, 0x50, 0x8c, 0x24, 0xd8, 0xb9, 0xc4, 0x26, 0x78, 0x54, 0x86, 0x95, 0xd1, 0x39, 0x36, 0x31, 0x17, 0xb1, }; static const wycheproof_xdh_test xdh_wei448_3868 = { .name = "xdh_wei448_3868", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3868_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3868_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3868_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 264 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3869 for XDH, tcId is 265 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3869_peerpubkey[] = { 0xb1, 0xe6, 0x5a, 0x10, 0x78, 0x29, 0xd8, 0x4d, 0x3b, 0x3b, 0x7b, 0x66, 0x4b, 0xaf, 0x01, 0xdc, 0xa5, 0x51, 0x6b, 0xaa, 0xf6, 0x2d, 0x3d, 0xc3, 0x3d, 0x91, 0x7c, 0x60, 0x88, 0x33, 0xdd, 0x0d, 0x72, 0x2f, 0x11, 0x59, 0x4c, 0x08, 0xf9, 0x86, 0x99, 0xa6, 0xa2, 0x2e, 0xf7, 0x89, 0x74, 0xc1, 0x5a, 0xdc, 0x90, 0x06, 0x09, 0x52, 0x7a, 0x7a, }; static const unsigned char xdh_wei448_3869_privkey[] = { 0xf4, 0x7a, 0x0e, 0xbb, 0x03, 0xfd, 0x34, 0x50, 0x0f, 0xb0, 0xca, 0xe9, 0x53, 0x7f, 0x84, 0x50, 0x22, 0xd1, 0xfd, 0x0c, 0xa1, 0x95, 0xff, 0x57, 0x05, 0xc9, 0x47, 0x12, 0x5f, 0xcd, 0x75, 0x19, 0xc9, 0x30, 0x1e, 0x53, 0x90, 0x40, 0xd6, 0x70, 0x0f, 0x13, 0xa9, 0x3d, 0xfc, 0xd1, 0xbc, 0x90, 0x81, 0x21, 0xb9, 0x9a, 0x48, 0xfa, 0xc2, 0x9c, }; static const unsigned char xdh_wei448_3869_sharedsecret[] = { 0x82, 0xa9, 0xa3, 0xe6, 0x67, 0xc2, 0xd6, 0x0f, 0xa0, 0xfc, 0x83, 0xb3, 0x38, 0x62, 0x83, 0x7c, 0xf3, 0x68, 0x2f, 0xd9, 0x73, 0x57, 0xb1, 0x38, 0x98, 0x21, 0x15, 0x59, 0x0f, 0x92, 0xb1, 0xcc, 0xdc, 0x41, 0x50, 0x30, 0x3f, 0x4c, 0x67, 0x33, 0x04, 0x76, 0xa8, 0xda, 0xdd, 0x2b, 0x61, 0xca, 0x40, 0xbb, 0xc3, 0x86, 0x24, 0x58, 0x5f, 0x8a, }; static const wycheproof_xdh_test xdh_wei448_3869 = { .name = "xdh_wei448_3869", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3869_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3869_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3869_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for A in multiplication by 4, tcId is 265 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3870 for XDH, tcId is 266 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3870_peerpubkey[] = { 0xa9, 0xfc, 0x50, 0xd4, 0x34, 0x71, 0xbd, 0x14, 0xcf, 0x7e, 0xf4, 0x21, 0x9d, 0xc7, 0xec, 0x09, 0x34, 0x80, 0x71, 0xa8, 0xcf, 0xc0, 0x73, 0xd9, 0x0e, 0xc2, 0x67, 0x27, 0x56, 0x9e, 0xf1, 0x1c, 0x4c, 0xe6, 0x56, 0x5d, 0x90, 0x61, 0x00, 0x0b, 0xc8, 0x3f, 0xd6, 0x4a, 0xe8, 0x22, 0xc3, 0x14, 0x4e, 0xa0, 0x27, 0x7c, 0xf2, 0x71, 0xd3, 0xf6, }; static const unsigned char xdh_wei448_3870_privkey[] = { 0x18, 0x53, 0x2d, 0x04, 0xfe, 0x1e, 0x3a, 0xf6, 0xdb, 0xab, 0xbe, 0x86, 0x52, 0x49, 0x5d, 0xb6, 0x40, 0xe0, 0xb3, 0x95, 0x14, 0xfa, 0x26, 0xc2, 0x0c, 0x86, 0x7f, 0x8e, 0x85, 0x37, 0xfc, 0x93, 0x70, 0xa4, 0x23, 0x05, 0x65, 0x99, 0x44, 0xea, 0xb2, 0x09, 0x3b, 0xbf, 0xc9, 0xc5, 0xe3, 0xeb, 0x75, 0x9f, 0x07, 0x86, 0xfb, 0x05, 0x78, 0x87, }; static const unsigned char xdh_wei448_3870_sharedsecret[] = { 0x65, 0xb4, 0xfa, 0x3d, 0x4d, 0x65, 0xfe, 0xbb, 0x2c, 0x57, 0xc9, 0xf9, 0xcc, 0xbb, 0x57, 0x30, 0xb1, 0xe6, 0xc8, 0xa1, 0x9e, 0xe3, 0x7a, 0xc3, 0xa9, 0x04, 0x61, 0xe1, 0xa9, 0xa4, 0x69, 0x6a, 0x5b, 0x51, 0x29, 0xe1, 0x7b, 0x1a, 0xb4, 0x69, 0x4b, 0x67, 0xfd, 0x88, 0x53, 0xda, 0x3a, 0x75, 0x23, 0x1b, 0x6f, 0x4c, 0x2c, 0x86, 0x65, 0x48, }; static const wycheproof_xdh_test xdh_wei448_3870 = { .name = "xdh_wei448_3870", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3870_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3870_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3870_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 4, tcId is 266 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3871 for XDH, tcId is 267 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3871_peerpubkey[] = { 0x7e, 0xcc, 0x90, 0xce, 0xa3, 0x06, 0xfb, 0x13, 0x7f, 0x07, 0x2e, 0x6f, 0x3e, 0x1b, 0x20, 0x8a, 0x11, 0xb4, 0x01, 0xc6, 0xc9, 0x3b, 0xee, 0x08, 0x27, 0x69, 0xbc, 0x1f, 0x77, 0x93, 0xdd, 0xbd, 0xb1, 0x40, 0xdc, 0x97, 0x1b, 0x8f, 0x63, 0x90, 0x46, 0x86, 0xf4, 0xa5, 0xa3, 0x0a, 0xa9, 0xf8, 0x07, 0xce, 0x38, 0xb4, 0xe8, 0xf6, 0xef, 0x10, }; static const unsigned char xdh_wei448_3871_privkey[] = { 0xe0, 0x36, 0xdf, 0x73, 0xea, 0x2b, 0x42, 0xce, 0x38, 0x5d, 0xda, 0xcb, 0x37, 0xa1, 0x31, 0x23, 0x91, 0x76, 0xda, 0x91, 0x64, 0x2f, 0x9d, 0x32, 0x81, 0x90, 0x48, 0xd6, 0x90, 0xc6, 0x77, 0x6f, 0xa3, 0x3a, 0x8d, 0x9a, 0xf6, 0x62, 0x09, 0x03, 0x0e, 0x3f, 0x54, 0x3b, 0x15, 0x84, 0xb6, 0xd4, 0xa8, 0xaf, 0x02, 0xe7, 0x26, 0xf9, 0x0e, 0x92, }; static const unsigned char xdh_wei448_3871_sharedsecret[] = { 0x9d, 0x88, 0x9f, 0xfb, 0xf9, 0x65, 0xdd, 0x3d, 0x91, 0xa3, 0xb8, 0xcd, 0x89, 0xae, 0xc0, 0x0a, 0x49, 0xb0, 0x87, 0xaf, 0x17, 0x1d, 0xcc, 0xdf, 0x16, 0x7b, 0xc5, 0x90, 0x7e, 0xeb, 0x4d, 0x87, 0x10, 0xf9, 0x35, 0xc3, 0x1a, 0xb2, 0xb6, 0xfc, 0x7a, 0xe6, 0x55, 0xf0, 0xab, 0x34, 0x2d, 0x1a, 0x9d, 0x6a, 0x80, 0xcb, 0x75, 0x95, 0xa2, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3871 = { .name = "xdh_wei448_3871", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3871_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3871_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3871_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 267 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3872 for XDH, tcId is 268 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3872_peerpubkey[] = { 0x54, 0x95, 0x00, 0xe6, 0x64, 0xed, 0x20, 0x37, 0xd2, 0x07, 0x10, 0xf4, 0x27, 0xdf, 0xae, 0x6e, 0x20, 0xbe, 0x0e, 0xce, 0xbd, 0x42, 0x04, 0x20, 0x60, 0x79, 0xcb, 0x66, 0x13, 0x01, 0x2e, 0x13, 0x72, 0x5b, 0xd2, 0x36, 0x22, 0x4c, 0x68, 0x98, 0x7d, 0xf0, 0xd0, 0x8a, 0xfe, 0xb8, 0x4f, 0xb8, 0x96, 0x34, 0xf2, 0xd5, 0x11, 0x72, 0xd7, 0x5c, }; static const unsigned char xdh_wei448_3872_privkey[] = { 0x0c, 0x56, 0x46, 0x8b, 0xfd, 0x25, 0xd2, 0x4b, 0x54, 0xe2, 0x7f, 0xf3, 0xc5, 0xe6, 0x69, 0x95, 0x1c, 0x38, 0xa9, 0x87, 0x7d, 0x3e, 0xcf, 0x40, 0x02, 0x1a, 0x5e, 0xe9, 0xdd, 0xb8, 0x6a, 0xaa, 0xe3, 0x7a, 0xdf, 0x14, 0x37, 0x2e, 0x96, 0x2b, 0x4d, 0x28, 0xa5, 0xd8, 0x5b, 0x51, 0xe5, 0xb0, 0x93, 0x9c, 0x8e, 0x9b, 0x5d, 0xc7, 0xd6, 0x85, }; static const unsigned char xdh_wei448_3872_sharedsecret[] = { 0xa7, 0x6e, 0x9e, 0x26, 0x31, 0xa1, 0x01, 0x5d, 0xbd, 0x5d, 0xd8, 0xc7, 0x48, 0xaa, 0x19, 0xc0, 0x7f, 0x8b, 0x35, 0xc0, 0xce, 0xab, 0x91, 0xce, 0x6b, 0xdf, 0x9e, 0x7d, 0x8a, 0x1f, 0x30, 0x0f, 0xa4, 0xa6, 0x12, 0x18, 0xf2, 0x56, 0xe7, 0x25, 0x97, 0x75, 0x77, 0x82, 0xed, 0xd2, 0x20, 0xbb, 0x73, 0x79, 0x48, 0xb1, 0xb8, 0x00, 0x65, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3872 = { .name = "xdh_wei448_3872", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3872_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3872_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3872_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 4, tcId is 268 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3873 for XDH, tcId is 269 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3873_peerpubkey[] = { 0xa5, 0x36, 0x1d, 0x32, 0x99, 0x48, 0x82, 0xf2, 0xac, 0x7f, 0x53, 0x94, 0x44, 0x84, 0x01, 0xac, 0x01, 0xc5, 0x96, 0x28, 0xe5, 0xaa, 0x05, 0x9a, 0xf6, 0x08, 0xf6, 0x8f, 0xc3, 0x00, 0x0a, 0xf0, 0xb0, 0x54, 0x6b, 0xa1, 0xb8, 0x68, 0x24, 0x66, 0x30, 0x35, 0x8c, 0xef, 0x66, 0xe9, 0xfe, 0x7b, 0xd4, 0x3c, 0xd4, 0x18, 0xb0, 0xab, 0x05, 0x8e, }; static const unsigned char xdh_wei448_3873_privkey[] = { 0xd0, 0xe9, 0xa3, 0x8f, 0xc4, 0xca, 0x84, 0x4c, 0x58, 0xa9, 0x55, 0x37, 0x2f, 0x5d, 0xc7, 0xce, 0x69, 0xeb, 0x2d, 0x28, 0xe4, 0x82, 0x49, 0x09, 0x62, 0x3d, 0xe9, 0x71, 0x81, 0xb3, 0x73, 0xc8, 0xad, 0xe6, 0x43, 0x1f, 0x00, 0xef, 0x6f, 0x3b, 0xbd, 0x50, 0x52, 0x3d, 0xd5, 0x7f, 0x4e, 0xc5, 0x49, 0x09, 0x3a, 0xd3, 0x39, 0xdc, 0x0b, 0x92, }; static const unsigned char xdh_wei448_3873_sharedsecret[] = { 0xf2, 0x07, 0xf0, 0x56, 0x98, 0x3a, 0x0f, 0x15, 0x8b, 0x23, 0xf8, 0xa4, 0x10, 0x89, 0x9a, 0x6b, 0x31, 0x2e, 0x92, 0x39, 0x5e, 0x09, 0xec, 0xbf, 0x0b, 0x5f, 0xe3, 0xda, 0x37, 0x1e, 0x22, 0x4a, 0x80, 0x58, 0xe5, 0xa3, 0xa3, 0x1f, 0x1e, 0x2a, 0x4f, 0xff, 0xd2, 0x21, 0x34, 0xfc, 0xf0, 0x6f, 0x41, 0xba, 0x2e, 0xf6, 0xb4, 0x64, 0xb5, 0x45, }; static const wycheproof_xdh_test xdh_wei448_3873 = { .name = "xdh_wei448_3873", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3873_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3873_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3873_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 4, tcId is 269 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3874 for XDH, tcId is 270 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3874_peerpubkey[] = { 0xf4, 0x02, 0x2e, 0x9e, 0x4e, 0xd6, 0x49, 0x37, 0x79, 0x15, 0xf2, 0xdc, 0xdb, 0xd2, 0x47, 0x64, 0x43, 0xa4, 0xdf, 0x98, 0xe4, 0xb2, 0x26, 0xf1, 0x4a, 0xf7, 0x80, 0xd5, 0xfd, 0xf7, 0xae, 0x4b, 0x03, 0x01, 0x32, 0x7f, 0x6b, 0x24, 0x47, 0x4e, 0x48, 0xa3, 0xfd, 0xf2, 0x80, 0xcf, 0xd5, 0x7c, 0x48, 0x27, 0xf2, 0x34, 0xe0, 0xad, 0x2e, 0x12, }; static const unsigned char xdh_wei448_3874_privkey[] = { 0xe0, 0xf8, 0x49, 0x33, 0x65, 0x4e, 0xff, 0xcc, 0x42, 0x06, 0xa3, 0xb8, 0x60, 0x37, 0x9e, 0xb0, 0x6e, 0x60, 0xa8, 0x9d, 0xcc, 0x03, 0xab, 0x75, 0x59, 0x60, 0x1e, 0xec, 0xca, 0xb1, 0x41, 0xae, 0x51, 0x43, 0xd9, 0xb0, 0x2f, 0xae, 0xe9, 0xf7, 0x56, 0x7e, 0x2f, 0x4f, 0xe6, 0xb5, 0x99, 0xfe, 0xc5, 0x9c, 0x5d, 0xe3, 0x25, 0x52, 0x39, 0x99, }; static const unsigned char xdh_wei448_3874_sharedsecret[] = { 0xff, 0x11, 0xeb, 0x0a, 0x0e, 0xa0, 0xa0, 0xf7, 0x38, 0x14, 0x2d, 0x8c, 0xdd, 0x06, 0xdf, 0x11, 0x84, 0x00, 0xf2, 0x33, 0x0e, 0xba, 0x7f, 0xd4, 0xde, 0xf9, 0x12, 0xc7, 0x73, 0x11, 0x28, 0xb7, 0x67, 0x9a, 0x74, 0x99, 0x7c, 0xa1, 0x00, 0xde, 0xc1, 0xb5, 0x3a, 0x51, 0x55, 0x62, 0xea, 0x7c, 0x44, 0xb4, 0x45, 0x77, 0x81, 0x36, 0x95, 0x55, }; static const wycheproof_xdh_test xdh_wei448_3874 = { .name = "xdh_wei448_3874", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3874_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3874_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3874_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 270 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3875 for XDH, tcId is 271 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3875_peerpubkey[] = { 0x6e, 0x22, 0xa5, 0xa1, 0x65, 0xe4, 0x5d, 0xd3, 0xf7, 0xf0, 0x6a, 0x27, 0xec, 0x3d, 0xcf, 0x4f, 0x73, 0x36, 0xf3, 0x77, 0xbe, 0x0c, 0xad, 0x1b, 0xc3, 0x2c, 0x69, 0xea, 0x46, 0x71, 0x24, 0x5f, 0xe6, 0x0f, 0xa4, 0x7e, 0x56, 0xc7, 0xab, 0x63, 0x09, 0xda, 0x8c, 0x8e, 0x3c, 0x21, 0xea, 0xc8, 0xa1, 0x9c, 0xcc, 0x59, 0xcb, 0xc4, 0x46, 0x30, }; static const unsigned char xdh_wei448_3875_privkey[] = { 0x78, 0x3c, 0x7a, 0x71, 0x18, 0x14, 0xfb, 0xb0, 0xa2, 0x8a, 0x4a, 0xa1, 0x32, 0xa1, 0x28, 0xa3, 0xc3, 0xc4, 0x02, 0x65, 0xdb, 0xf9, 0x2e, 0x7e, 0x7b, 0x69, 0x62, 0xa0, 0x17, 0xde, 0xc3, 0xd8, 0xea, 0xd2, 0xe5, 0x13, 0x61, 0xb3, 0x19, 0x96, 0xf1, 0xc3, 0xc9, 0x90, 0x0c, 0xab, 0xe2, 0x55, 0x95, 0xde, 0x1a, 0x89, 0xd4, 0x29, 0xb4, 0x91, }; static const unsigned char xdh_wei448_3875_sharedsecret[] = { 0xc2, 0x5e, 0xdf, 0x26, 0xc6, 0x82, 0xec, 0x00, 0x94, 0xf9, 0xde, 0x6a, 0x60, 0xc7, 0x12, 0x10, 0x83, 0x54, 0x56, 0x07, 0xf6, 0xfb, 0x9e, 0x73, 0x9a, 0x6b, 0x08, 0x05, 0xf0, 0x97, 0xf6, 0x9c, 0xbd, 0x9f, 0xb4, 0xc9, 0xb2, 0x93, 0x7d, 0xa0, 0xbd, 0x74, 0x2b, 0x61, 0x43, 0x9a, 0xfc, 0x98, 0xda, 0xde, 0x15, 0x40, 0xee, 0x58, 0x15, 0x04, }; static const wycheproof_xdh_test xdh_wei448_3875 = { .name = "xdh_wei448_3875", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3875_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3875_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3875_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 271 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3876 for XDH, tcId is 272 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3876_peerpubkey[] = { 0x01, 0xde, 0x09, 0x4d, 0xed, 0x29, 0x15, 0x5f, 0x9e, 0xcc, 0xc3, 0x0c, 0x83, 0xc3, 0x29, 0xa5, 0x1d, 0x22, 0x44, 0x62, 0xc2, 0x5c, 0x7f, 0x13, 0x0b, 0xac, 0xb1, 0x9f, 0x94, 0x10, 0xaf, 0xa6, 0xfb, 0x2e, 0x3d, 0x67, 0x41, 0xb0, 0x61, 0x81, 0x1e, 0xbe, 0xb4, 0xc3, 0x44, 0x2f, 0xa5, 0x13, 0xc8, 0x76, 0x1e, 0x87, 0xda, 0x33, 0x11, 0x4f, }; static const unsigned char xdh_wei448_3876_privkey[] = { 0x38, 0xa0, 0x3d, 0x14, 0xa4, 0xae, 0x3d, 0xe5, 0xa5, 0xbf, 0x2f, 0x21, 0x01, 0x81, 0xa2, 0x9d, 0x5a, 0x4d, 0x53, 0x2b, 0x10, 0xc6, 0x0e, 0x6c, 0x87, 0x2b, 0x8d, 0x72, 0x7a, 0x19, 0x68, 0xba, 0x64, 0x79, 0x11, 0x69, 0xb0, 0x26, 0x15, 0xdc, 0x23, 0x36, 0x7b, 0x13, 0xaf, 0xdb, 0xfb, 0x06, 0x4c, 0x61, 0xe2, 0x56, 0xb2, 0xf1, 0x8a, 0x9e, }; static const unsigned char xdh_wei448_3876_sharedsecret[] = { 0xb2, 0xed, 0xb7, 0xde, 0x66, 0xc3, 0x39, 0xd5, 0x48, 0xca, 0x02, 0x1a, 0x44, 0x87, 0x7e, 0x6a, 0x3e, 0xc2, 0x4b, 0xe9, 0x6a, 0x30, 0xb7, 0xe3, 0x92, 0xb2, 0x2a, 0xd5, 0x6e, 0xf7, 0xc7, 0x5f, 0xcb, 0x70, 0xc5, 0xcc, 0x37, 0xb0, 0x17, 0xec, 0x21, 0x58, 0x43, 0x06, 0x33, 0xe3, 0xa6, 0xb0, 0x82, 0x1b, 0x87, 0xdc, 0x0d, 0xae, 0x0a, 0xbc, }; static const wycheproof_xdh_test xdh_wei448_3876 = { .name = "xdh_wei448_3876", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3876_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3876_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3876_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 272 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3877 for XDH, tcId is 273 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3877_peerpubkey[] = { 0xcb, 0xe5, 0x74, 0xa3, 0xfa, 0x63, 0x42, 0x34, 0x73, 0x64, 0xb0, 0x44, 0x9a, 0x2e, 0x33, 0xf9, 0xe8, 0x40, 0xb7, 0x47, 0x53, 0x5e, 0x81, 0x94, 0x96, 0xc5, 0x94, 0x83, 0xa2, 0xe8, 0x47, 0x46, 0xd6, 0x7c, 0x44, 0x4f, 0xca, 0xf7, 0x14, 0xb4, 0x36, 0x7a, 0xc1, 0xef, 0x1c, 0x1d, 0x9d, 0x19, 0x70, 0x4a, 0xd0, 0x36, 0x94, 0x6c, 0x44, 0x7f, }; static const unsigned char xdh_wei448_3877_privkey[] = { 0xc0, 0x3c, 0xbb, 0xd2, 0x0d, 0x8b, 0x0e, 0x9f, 0x3e, 0xf1, 0xb5, 0x1a, 0x8d, 0x02, 0xac, 0x42, 0x89, 0x9d, 0x2e, 0xa2, 0x22, 0xd0, 0x87, 0xcc, 0xc0, 0xa0, 0x25, 0xdb, 0x01, 0xa5, 0xdf, 0x3d, 0xfa, 0x2a, 0xe3, 0xfd, 0x35, 0x7e, 0xab, 0x41, 0xae, 0x98, 0x5a, 0x7b, 0xfb, 0xee, 0x52, 0xa7, 0x98, 0x26, 0xb9, 0x60, 0x68, 0x83, 0x8e, 0x9b, }; static const unsigned char xdh_wei448_3877_sharedsecret[] = { 0x65, 0x28, 0xea, 0x6e, 0xa0, 0x97, 0x1c, 0xeb, 0x0b, 0xd4, 0xad, 0xf4, 0xb5, 0x62, 0x0e, 0x93, 0x6b, 0x90, 0x9c, 0xed, 0x8f, 0x64, 0xc0, 0xe3, 0x9c, 0x6e, 0xdf, 0xa2, 0xe2, 0xee, 0x68, 0x87, 0x1e, 0x17, 0x47, 0x7a, 0x53, 0xd0, 0x2d, 0xbd, 0x3e, 0x90, 0x69, 0x10, 0x2c, 0xa8, 0xa8, 0x1c, 0xdc, 0x16, 0x67, 0x84, 0xc0, 0xc5, 0x52, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_3877 = { .name = "xdh_wei448_3877", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3877_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3877_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3877_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 273 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3878 for XDH, tcId is 274 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3878_peerpubkey[] = { 0x0a, 0x9f, 0x04, 0xb9, 0x00, 0x5d, 0xc8, 0xf6, 0x74, 0xef, 0xe9, 0xb8, 0x49, 0xab, 0x56, 0x82, 0x88, 0x3f, 0x97, 0x31, 0x9b, 0x5f, 0xae, 0x83, 0xb9, 0xf7, 0x2d, 0x73, 0x63, 0x86, 0xc9, 0xed, 0x82, 0x76, 0x30, 0xde, 0xce, 0x8c, 0xf8, 0xb1, 0xb2, 0x50, 0xb2, 0x96, 0x5f, 0x6e, 0x0e, 0x6c, 0xef, 0xe2, 0x9d, 0xd6, 0xba, 0x33, 0x80, 0x8b, }; static const unsigned char xdh_wei448_3878_privkey[] = { 0x6c, 0x80, 0x14, 0x15, 0xb2, 0x77, 0x4b, 0xad, 0x10, 0xa2, 0xb7, 0x2c, 0x22, 0x32, 0x09, 0x42, 0xbf, 0xd0, 0x99, 0x4e, 0x4a, 0x2f, 0x03, 0xfb, 0xf8, 0xf8, 0x46, 0xca, 0x4e, 0x23, 0xa9, 0x3d, 0xe2, 0x41, 0x2e, 0x97, 0x36, 0x9f, 0x23, 0x9e, 0x31, 0xb5, 0x03, 0x5e, 0xd5, 0xde, 0xa3, 0x43, 0xe5, 0x16, 0x8e, 0xbb, 0xb1, 0xf9, 0xee, 0x92, }; static const unsigned char xdh_wei448_3878_sharedsecret[] = { 0xd1, 0x19, 0x42, 0xc9, 0xa7, 0x46, 0xea, 0x84, 0x0f, 0x15, 0x84, 0xf1, 0xf6, 0x54, 0xf7, 0xce, 0xcf, 0x58, 0xef, 0x22, 0xcd, 0x0e, 0xf8, 0xac, 0x46, 0xdc, 0x83, 0xda, 0xbd, 0x1d, 0xfc, 0xa1, 0x30, 0x3d, 0x25, 0xa5, 0x1c, 0x06, 0x48, 0xb3, 0x94, 0xe5, 0x0f, 0x29, 0xeb, 0x85, 0x3c, 0xe1, 0xc9, 0xc6, 0x3f, 0xd0, 0xe3, 0x77, 0xfe, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_3878 = { .name = "xdh_wei448_3878", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3878_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3878_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3878_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 274 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3879 for XDH, tcId is 275 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3879_peerpubkey[] = { 0xac, 0xcc, 0xc2, 0xcc, 0xf2, 0xf7, 0x73, 0xec, 0x14, 0xfd, 0x79, 0xef, 0x35, 0xd6, 0x3d, 0x38, 0xf5, 0xc9, 0xf7, 0xb8, 0x62, 0xfa, 0x7b, 0x21, 0xae, 0x00, 0xb6, 0x8f, 0x55, 0x65, 0xce, 0xa1, 0x6e, 0x28, 0xda, 0xe9, 0xba, 0x2e, 0x30, 0x9e, 0x81, 0xe4, 0x9e, 0x1a, 0xe9, 0xea, 0xcc, 0x33, 0xfd, 0x5b, 0xcc, 0xe2, 0x13, 0xec, 0x74, 0xb8, }; static const unsigned char xdh_wei448_3879_privkey[] = { 0xec, 0x56, 0x75, 0xdd, 0x08, 0x8b, 0x7d, 0xd2, 0x6d, 0x1c, 0xda, 0x22, 0x7f, 0xfe, 0x78, 0xf6, 0x97, 0xd1, 0xc5, 0xd5, 0x21, 0x23, 0x91, 0xf3, 0x3c, 0xf6, 0x3c, 0x23, 0x63, 0x4d, 0xac, 0xad, 0x47, 0x30, 0xbd, 0xb4, 0x35, 0x0c, 0x4b, 0xeb, 0x1d, 0x23, 0xef, 0xfb, 0x9c, 0xd3, 0x6c, 0xf1, 0x48, 0xec, 0x67, 0xe6, 0x95, 0x75, 0xb4, 0x84, }; static const unsigned char xdh_wei448_3879_sharedsecret[] = { 0x68, 0xac, 0xae, 0x35, 0x91, 0x62, 0xc4, 0xd8, 0x3c, 0x29, 0xbe, 0x84, 0xf1, 0xa0, 0xa4, 0x1b, 0x03, 0x2f, 0xc8, 0x8f, 0x64, 0xd1, 0xeb, 0x82, 0xdc, 0x98, 0x00, 0x94, 0x77, 0xac, 0xf5, 0xa6, 0x4c, 0x2a, 0x1a, 0xc8, 0x04, 0x0e, 0xea, 0x5e, 0x13, 0xfb, 0x19, 0x09, 0x5b, 0x66, 0xef, 0xc3, 0x76, 0xc9, 0x70, 0x97, 0xe0, 0x11, 0x4d, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3879 = { .name = "xdh_wei448_3879", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3879_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3879_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3879_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 4, tcId is 275 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3880 for XDH, tcId is 276 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3880_peerpubkey[] = { 0xda, 0xd4, 0xbd, 0x4f, 0xf2, 0xb1, 0xe9, 0x35, 0x40, 0x92, 0x4e, 0xd4, 0xee, 0x44, 0xe5, 0x46, 0x50, 0xc0, 0x85, 0x34, 0xc6, 0x31, 0x4e, 0x66, 0xbe, 0x91, 0xa1, 0xe8, 0x91, 0xb2, 0x42, 0xeb, 0xd6, 0x24, 0x1f, 0x69, 0x06, 0x22, 0x63, 0x25, 0xfd, 0xff, 0xe7, 0x31, 0x10, 0x13, 0xf5, 0x50, 0x5f, 0x0b, 0x19, 0x0b, 0xdf, 0xbe, 0x57, 0x18, }; static const unsigned char xdh_wei448_3880_privkey[] = { 0x04, 0xa5, 0x09, 0x84, 0x0a, 0x65, 0x8d, 0xaf, 0xf7, 0x03, 0x74, 0xd4, 0x2d, 0xec, 0x10, 0x9c, 0x37, 0x79, 0xef, 0xba, 0x47, 0x76, 0x97, 0xfa, 0x65, 0x2f, 0x81, 0x59, 0x5c, 0x8d, 0x52, 0xa7, 0xcd, 0xd0, 0xc7, 0x1a, 0x76, 0x54, 0xc5, 0x22, 0xec, 0x61, 0x0b, 0x46, 0x9b, 0xcb, 0x3a, 0x8f, 0xfc, 0x64, 0x0b, 0x4c, 0x16, 0xbc, 0x78, 0x8c, }; static const unsigned char xdh_wei448_3880_sharedsecret[] = { 0x4c, 0x81, 0xbb, 0x6f, 0x58, 0xb3, 0x21, 0x9b, 0x99, 0xd4, 0x79, 0xbe, 0x26, 0xd7, 0xf8, 0x27, 0x45, 0x80, 0xfc, 0x86, 0x95, 0x93, 0xf3, 0x2f, 0xd0, 0x5c, 0x55, 0x56, 0x10, 0x32, 0x4d, 0x4a, 0x80, 0x57, 0xa5, 0xdf, 0x88, 0xf4, 0x74, 0x20, 0xb1, 0x33, 0x67, 0xb5, 0x3f, 0xad, 0xa6, 0x6c, 0xa6, 0xf3, 0x23, 0x79, 0x01, 0x11, 0x18, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3880 = { .name = "xdh_wei448_3880", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3880_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3880_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3880_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 276 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3881 for XDH, tcId is 277 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3881_peerpubkey[] = { 0x42, 0x16, 0xbe, 0x75, 0xfd, 0xb4, 0x37, 0xee, 0x29, 0x18, 0x7a, 0x26, 0x9f, 0x63, 0x24, 0x6e, 0x2b, 0xe1, 0xd7, 0x40, 0x12, 0x76, 0x73, 0x57, 0xec, 0x87, 0x28, 0x61, 0x5f, 0xfb, 0xc5, 0xfb, 0xc0, 0x2c, 0xcf, 0xda, 0x1f, 0x3d, 0x03, 0x20, 0x3a, 0xa7, 0xe2, 0x27, 0x04, 0x91, 0x53, 0x2f, 0x0d, 0x52, 0xd8, 0xd0, 0xab, 0xd7, 0xb2, 0x48, }; static const unsigned char xdh_wei448_3881_privkey[] = { 0x54, 0x15, 0x76, 0xd1, 0x4a, 0x69, 0x1d, 0x41, 0xd8, 0x18, 0xad, 0xa6, 0xb5, 0xc9, 0x5a, 0x38, 0x2f, 0x8a, 0xe1, 0x74, 0xce, 0xd7, 0x1c, 0x3e, 0x45, 0xd0, 0x38, 0x9f, 0x1f, 0xdf, 0x00, 0x8a, 0x61, 0x61, 0x23, 0x67, 0x5d, 0x32, 0xe5, 0x2b, 0xbc, 0x78, 0xab, 0xa8, 0x01, 0x6e, 0xb5, 0x25, 0x41, 0x9c, 0xd6, 0x75, 0xd2, 0x2d, 0x70, 0x96, }; static const unsigned char xdh_wei448_3881_sharedsecret[] = { 0x5e, 0x3e, 0x15, 0x68, 0x0a, 0xcf, 0x3a, 0x6b, 0xdb, 0x33, 0x68, 0x8d, 0xed, 0xcd, 0x6b, 0xe5, 0x10, 0x4d, 0x4d, 0xa3, 0x6b, 0xa9, 0xfc, 0x87, 0x3f, 0x28, 0xed, 0xb5, 0x38, 0x3b, 0x15, 0xae, 0x37, 0x8c, 0xbe, 0x26, 0x1b, 0x17, 0xa0, 0xbe, 0xdb, 0x67, 0x2a, 0x85, 0x9b, 0xc1, 0x44, 0x94, 0x7f, 0xee, 0x2a, 0xbe, 0xbb, 0x76, 0x27, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3881 = { .name = "xdh_wei448_3881", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3881_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3881_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3881_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 277 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3882 for XDH, tcId is 278 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3882_peerpubkey[] = { 0x6b, 0x07, 0x4b, 0x4d, 0xc2, 0xdc, 0x31, 0xc4, 0x62, 0x2b, 0x87, 0xd9, 0x07, 0x13, 0x98, 0xef, 0x9a, 0xf5, 0x43, 0x6a, 0xa7, 0x32, 0xee, 0xb4, 0x44, 0xdb, 0xab, 0xd7, 0x9e, 0xd8, 0x8b, 0x00, 0x0c, 0x4a, 0xf1, 0x64, 0x86, 0xd7, 0xfe, 0x70, 0x7f, 0x80, 0x34, 0xb1, 0xbf, 0x59, 0xf6, 0xa6, 0x19, 0x7c, 0x3f, 0x1f, 0x54, 0x9d, 0x3e, 0x61, }; static const unsigned char xdh_wei448_3882_privkey[] = { 0xf8, 0x96, 0xf9, 0xb3, 0xbf, 0x25, 0x52, 0x05, 0x75, 0x18, 0xe4, 0xf3, 0x3c, 0x6e, 0x25, 0xa6, 0xda, 0x71, 0x03, 0x7b, 0x5b, 0xeb, 0x26, 0x63, 0x3c, 0x78, 0xd6, 0x25, 0x13, 0x88, 0x33, 0xd9, 0xc6, 0xc5, 0xcd, 0x74, 0x57, 0x62, 0x23, 0xd8, 0x82, 0x5d, 0x26, 0xdd, 0x53, 0x3b, 0x11, 0x5c, 0xcd, 0x55, 0x86, 0xd5, 0xa4, 0x89, 0xe3, 0x9c, }; static const unsigned char xdh_wei448_3882_sharedsecret[] = { 0x9c, 0x17, 0xe7, 0xcb, 0x18, 0x9c, 0x0c, 0xbc, 0x7c, 0xd2, 0xce, 0x66, 0xad, 0x68, 0xc1, 0x96, 0xed, 0x7e, 0xbe, 0x25, 0x52, 0x59, 0xf1, 0xc7, 0xd5, 0x52, 0x70, 0xd0, 0x7b, 0xee, 0xce, 0xe9, 0x89, 0x61, 0xdd, 0x05, 0x87, 0xdf, 0x8c, 0x42, 0x80, 0x32, 0x01, 0xad, 0x6b, 0x5c, 0xa5, 0x17, 0x71, 0x0a, 0x57, 0x07, 0xaa, 0x13, 0x18, 0x98, }; static const wycheproof_xdh_test xdh_wei448_3882 = { .name = "xdh_wei448_3882", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3882_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3882_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3882_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 278 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3883 for XDH, tcId is 279 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3883_peerpubkey[] = { 0x00, 0xef, 0xe0, 0x8c, 0xd7, 0x69, 0x40, 0xb8, 0x10, 0x9a, 0x2f, 0x29, 0xc7, 0xb4, 0x74, 0xb2, 0x66, 0xb8, 0xa4, 0xf6, 0x39, 0x4f, 0x1d, 0xba, 0x95, 0x8f, 0x5f, 0xe3, 0xb4, 0xfa, 0x07, 0x7d, 0xb1, 0xb1, 0x68, 0x87, 0xbc, 0xc2, 0x92, 0x0d, 0xf7, 0xb0, 0x27, 0xbb, 0x78, 0xf1, 0xce, 0xf5, 0x3d, 0x7a, 0xdf, 0x8f, 0xc2, 0x88, 0x18, 0x83, }; static const unsigned char xdh_wei448_3883_privkey[] = { 0x84, 0x42, 0x6a, 0x32, 0xdf, 0x1d, 0x2e, 0x21, 0x9a, 0x6b, 0x3e, 0x74, 0x49, 0x97, 0xc5, 0x9b, 0x34, 0x4c, 0x99, 0xe5, 0xe1, 0x7d, 0xcf, 0x26, 0x99, 0xc4, 0xea, 0xaf, 0x0d, 0x37, 0x3b, 0xa7, 0x11, 0x83, 0xee, 0xfb, 0x5d, 0x6b, 0x92, 0x65, 0x5e, 0xa4, 0x01, 0x34, 0x9b, 0xd2, 0x28, 0xad, 0x15, 0xbb, 0x97, 0x3a, 0x09, 0xc0, 0xdb, 0x9a, }; static const unsigned char xdh_wei448_3883_sharedsecret[] = { 0xfd, 0xf3, 0x76, 0xe9, 0x71, 0x77, 0x18, 0x62, 0xae, 0x8a, 0xa0, 0x04, 0x57, 0x3d, 0x49, 0xa5, 0xc1, 0x7d, 0x3d, 0x01, 0xd6, 0xa5, 0xba, 0x46, 0xbe, 0xa1, 0x94, 0x3d, 0xf0, 0x85, 0x2f, 0x3f, 0x97, 0x5c, 0x1f, 0xcd, 0xb5, 0x78, 0x02, 0x53, 0xd3, 0x5c, 0x89, 0x16, 0x6f, 0xb8, 0x24, 0x61, 0x12, 0xf3, 0xa1, 0x36, 0x4c, 0xc4, 0xeb, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_3883 = { .name = "xdh_wei448_3883", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3883_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3883_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3883_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 279 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3884 for XDH, tcId is 280 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3884_peerpubkey[] = { 0x1f, 0xe1, 0xd8, 0x91, 0x5a, 0xe8, 0xbd, 0xc6, 0xe5, 0xcb, 0x11, 0xb0, 0x89, 0xa4, 0x63, 0xb7, 0x06, 0x6f, 0x65, 0x6e, 0xc7, 0xd4, 0xe4, 0x21, 0xf1, 0x09, 0xd9, 0x99, 0x29, 0xa9, 0x08, 0x8b, 0xdb, 0x4a, 0xca, 0x2f, 0x6f, 0x0e, 0x5f, 0xb6, 0x61, 0x1d, 0x55, 0x60, 0x8a, 0x06, 0xdc, 0x60, 0xcc, 0x65, 0xad, 0x11, 0xe9, 0xb3, 0x8e, 0x98, }; static const unsigned char xdh_wei448_3884_privkey[] = { 0x70, 0x08, 0x03, 0x89, 0x33, 0x89, 0xf7, 0x13, 0x1f, 0x5b, 0x97, 0x91, 0x9e, 0xea, 0xf0, 0xed, 0xb7, 0x25, 0x1f, 0x69, 0xc0, 0x5d, 0x30, 0xd6, 0x6c, 0x6d, 0xbd, 0x63, 0xcf, 0x07, 0x5a, 0x61, 0xaa, 0xcd, 0x3d, 0x40, 0x41, 0x04, 0x4b, 0x54, 0x70, 0x93, 0xf4, 0xb7, 0xfc, 0xfe, 0x34, 0x3a, 0xcb, 0x87, 0xfb, 0x13, 0xcc, 0x1b, 0xd2, 0x9b, }; static const unsigned char xdh_wei448_3884_sharedsecret[] = { 0x8d, 0x9f, 0x9c, 0x03, 0xa5, 0x8c, 0x00, 0x0c, 0x81, 0xb0, 0xf8, 0xd1, 0x92, 0xb2, 0x7c, 0x99, 0x5e, 0x02, 0xda, 0xcf, 0x6d, 0x18, 0xbd, 0xf0, 0xde, 0x5e, 0xcd, 0x82, 0x91, 0x2f, 0x38, 0xe9, 0x99, 0x18, 0xfd, 0x4b, 0x39, 0xb5, 0x5e, 0xec, 0x83, 0x5f, 0xd4, 0x36, 0x9a, 0xc1, 0x58, 0x75, 0xec, 0x78, 0xb8, 0x48, 0x18, 0x89, 0x02, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3884 = { .name = "xdh_wei448_3884", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3884_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3884_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3884_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 4, tcId is 280 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3885 for XDH, tcId is 281 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3885_peerpubkey[] = { 0xf6, 0xa0, 0xe6, 0x56, 0x18, 0x56, 0x09, 0x49, 0x73, 0xaa, 0x4f, 0x8f, 0x5d, 0xf2, 0xff, 0xfe, 0x6a, 0xb6, 0xef, 0x11, 0x4b, 0x92, 0xbb, 0x22, 0xb5, 0x78, 0x60, 0x32, 0xbe, 0x91, 0xf4, 0x90, 0x10, 0x9f, 0x9c, 0xfa, 0x53, 0x04, 0x19, 0x07, 0x94, 0x50, 0xdd, 0x8f, 0x8e, 0x27, 0xea, 0x49, 0xd4, 0x5d, 0x7c, 0x39, 0x6e, 0x60, 0x43, 0xd6, }; static const unsigned char xdh_wei448_3885_privkey[] = { 0x74, 0x8f, 0x0c, 0xe4, 0x83, 0xd2, 0x73, 0x00, 0x5c, 0xff, 0x64, 0x93, 0x31, 0x04, 0x80, 0x44, 0x1e, 0x1a, 0x0b, 0xf9, 0x67, 0x90, 0xc6, 0x22, 0x35, 0x1a, 0x0f, 0x0a, 0x23, 0x5a, 0x67, 0x82, 0xd2, 0xb4, 0x0f, 0x78, 0xd1, 0x41, 0x33, 0xf8, 0x33, 0x58, 0xec, 0xf3, 0xff, 0x17, 0x94, 0xc3, 0xfc, 0xde, 0x36, 0x6d, 0x82, 0x2a, 0xb2, 0x91, }; static const unsigned char xdh_wei448_3885_sharedsecret[] = { 0xa6, 0x70, 0x2c, 0x33, 0x26, 0x6b, 0x58, 0x51, 0x1b, 0x62, 0xc1, 0x1e, 0xbb, 0x0a, 0x4e, 0x36, 0xac, 0xce, 0xe3, 0x40, 0x6d, 0xac, 0x49, 0xce, 0x89, 0x55, 0xff, 0x6c, 0xab, 0x92, 0x3c, 0x18, 0x82, 0x81, 0xe3, 0x8c, 0x95, 0x35, 0x04, 0x6e, 0xb0, 0xed, 0x67, 0xc8, 0x0d, 0xa0, 0xf6, 0xea, 0xe7, 0x26, 0x2b, 0x59, 0x4a, 0xe0, 0x7d, 0x08, }; static const wycheproof_xdh_test xdh_wei448_3885 = { .name = "xdh_wei448_3885", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3885_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3885_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3885_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 4, tcId is 281 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3886 for XDH, tcId is 282 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3886_peerpubkey[] = { 0xcf, 0x62, 0x48, 0xd9, 0x03, 0x32, 0x60, 0x24, 0x45, 0x9a, 0x56, 0x15, 0x6e, 0xad, 0x65, 0x9e, 0x8e, 0xc1, 0xb3, 0xbc, 0x04, 0x6b, 0xa1, 0x37, 0xc3, 0xc5, 0x98, 0x6e, 0xec, 0x34, 0x72, 0x4b, 0xef, 0x55, 0x17, 0x49, 0x90, 0x72, 0xba, 0xbf, 0x99, 0x7d, 0x9a, 0xf6, 0xa1, 0x03, 0x2c, 0xa8, 0x50, 0x2a, 0x61, 0x93, 0xea, 0xd1, 0x2c, 0x46, }; static const unsigned char xdh_wei448_3886_privkey[] = { 0x5c, 0x3f, 0x8e, 0xbb, 0x85, 0xcc, 0x58, 0x69, 0xa1, 0x16, 0x17, 0x4d, 0x5e, 0xcb, 0xea, 0x01, 0x66, 0xf7, 0x94, 0x3b, 0xf3, 0x88, 0x1e, 0xad, 0x45, 0x8c, 0x31, 0xfb, 0xb8, 0xe6, 0x74, 0x48, 0x49, 0x16, 0xf7, 0x63, 0xe1, 0x39, 0x80, 0x16, 0x81, 0xeb, 0xce, 0x63, 0x0d, 0xec, 0x2b, 0x67, 0x71, 0x1d, 0x5b, 0xf9, 0x13, 0x43, 0x90, 0x95, }; static const unsigned char xdh_wei448_3886_sharedsecret[] = { 0x97, 0xff, 0xd4, 0x7b, 0xce, 0x90, 0x00, 0xac, 0xc2, 0x24, 0x75, 0xe3, 0x25, 0xf1, 0x98, 0x5a, 0x6c, 0x26, 0x99, 0x61, 0xaa, 0x11, 0xdc, 0xa3, 0x4d, 0x31, 0xa4, 0x56, 0x2e, 0x9a, 0x40, 0x18, 0x8c, 0x6f, 0x09, 0x84, 0xeb, 0x0a, 0x26, 0x2c, 0x6e, 0x11, 0x84, 0x13, 0x10, 0x82, 0x53, 0x78, 0x11, 0x88, 0x9c, 0x59, 0x71, 0xc2, 0x42, 0xcf, }; static const wycheproof_xdh_test xdh_wei448_3886 = { .name = "xdh_wei448_3886", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3886_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3886_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3886_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 4, tcId is 282 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3887 for XDH, tcId is 283 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3887_peerpubkey[] = { 0xa0, 0x78, 0x99, 0x60, 0x3b, 0x31, 0xc8, 0xb3, 0x60, 0xf9, 0x51, 0x3e, 0xe8, 0x1b, 0xed, 0x87, 0x0f, 0xb9, 0xf6, 0xbb, 0xa0, 0x8f, 0x40, 0xac, 0xa3, 0xb7, 0x88, 0x7f, 0xfe, 0x9b, 0xab, 0xd2, 0xbc, 0x4d, 0xa3, 0x72, 0x30, 0x97, 0x13, 0x9c, 0x88, 0x46, 0xbd, 0x77, 0xd1, 0x9b, 0x39, 0xfb, 0x99, 0x22, 0x50, 0x4a, 0xb9, 0x8c, 0x8f, 0x51, }; static const unsigned char xdh_wei448_3887_privkey[] = { 0x3c, 0x32, 0xbd, 0x74, 0x55, 0xed, 0x1f, 0x0e, 0xd7, 0xe6, 0x06, 0x28, 0x8c, 0xc0, 0xa6, 0x7d, 0x30, 0x82, 0x6d, 0xc4, 0xbe, 0xc3, 0xaf, 0xf5, 0xd2, 0x22, 0xc0, 0x3c, 0x22, 0xc5, 0x46, 0x17, 0xd8, 0xef, 0xb1, 0xa5, 0x9f, 0x8d, 0x94, 0x03, 0xb4, 0x4d, 0xb5, 0x3a, 0x8f, 0x95, 0x5d, 0xf7, 0xe6, 0xd5, 0x39, 0xba, 0x37, 0x4e, 0xdd, 0x8a, }; static const unsigned char xdh_wei448_3887_sharedsecret[] = { 0x92, 0xe9, 0xc9, 0x6b, 0x8b, 0x16, 0x8f, 0xe5, 0xa3, 0xa1, 0x16, 0x6f, 0x52, 0xce, 0x2d, 0x80, 0x00, 0x8b, 0x56, 0xf0, 0xac, 0xea, 0x64, 0x2c, 0x45, 0xd6, 0xb2, 0x1e, 0x22, 0x7e, 0x38, 0x33, 0x50, 0x60, 0xc2, 0x7a, 0x06, 0xf1, 0xa2, 0x6c, 0xb9, 0xf8, 0x8a, 0x65, 0x78, 0x74, 0x9c, 0xc2, 0xf4, 0xd5, 0x4f, 0x88, 0x1e, 0x71, 0x60, 0xbe, }; static const wycheproof_xdh_test xdh_wei448_3887 = { .name = "xdh_wei448_3887", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3887_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3887_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3887_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 283 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3888 for XDH, tcId is 284 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3888_peerpubkey[] = { 0x80, 0x35, 0x79, 0x25, 0x31, 0xea, 0x3c, 0x76, 0x38, 0x9f, 0x38, 0xd9, 0x7b, 0x39, 0xcb, 0xa7, 0x88, 0xad, 0x43, 0x83, 0x8a, 0x8f, 0xcb, 0x88, 0x81, 0x7a, 0xb1, 0x13, 0x7c, 0x7a, 0xa6, 0xed, 0x29, 0xf3, 0x0a, 0x2f, 0xc9, 0x15, 0x61, 0x1a, 0xf5, 0xe6, 0xe7, 0x57, 0xfa, 0x5b, 0xc7, 0xf2, 0xe1, 0xa4, 0x35, 0x20, 0xdc, 0x50, 0x83, 0x64, }; static const unsigned char xdh_wei448_3888_privkey[] = { 0x50, 0x31, 0xbc, 0xc3, 0xad, 0x19, 0xec, 0xb8, 0x00, 0x06, 0xc5, 0x4b, 0x94, 0x9b, 0x74, 0xac, 0x37, 0x5f, 0x68, 0xbb, 0xf9, 0x8a, 0xe7, 0xbe, 0x65, 0x33, 0xde, 0xc2, 0xd4, 0x51, 0x47, 0xf3, 0x1d, 0x67, 0x8e, 0xc5, 0x05, 0x0b, 0xf2, 0xf4, 0x5a, 0x92, 0xa8, 0x57, 0xa2, 0x8f, 0xac, 0x9e, 0x20, 0x17, 0x16, 0xce, 0xd4, 0x6c, 0x45, 0x85, }; static const unsigned char xdh_wei448_3888_sharedsecret[] = { 0xc2, 0x74, 0x56, 0x71, 0x70, 0xa5, 0x30, 0xa3, 0x90, 0x82, 0x31, 0x21, 0x9b, 0x1b, 0x1c, 0xbe, 0x88, 0x5c, 0x8e, 0x46, 0x42, 0x18, 0xea, 0x90, 0xc3, 0x8e, 0x89, 0x5e, 0x85, 0x87, 0xfc, 0x43, 0xd0, 0x14, 0xf5, 0xd1, 0xb7, 0xbd, 0x7d, 0x3f, 0xbd, 0xec, 0x0c, 0xa4, 0x0d, 0x62, 0xfd, 0xb8, 0x77, 0x92, 0x9b, 0x97, 0x95, 0x39, 0x29, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3888 = { .name = "xdh_wei448_3888", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3888_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3888_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3888_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 284 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3889 for XDH, tcId is 285 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3889_peerpubkey[] = { 0xd7, 0x88, 0x06, 0x7d, 0xe2, 0xe5, 0xd9, 0x86, 0x91, 0x6d, 0xcd, 0xb8, 0xbb, 0x80, 0x5d, 0x64, 0x73, 0x01, 0x9b, 0xb4, 0xa1, 0x6e, 0x03, 0xaa, 0x48, 0x0c, 0x4f, 0x7f, 0x8b, 0xd6, 0xeb, 0x6f, 0x2b, 0xf2, 0x50, 0x11, 0x6b, 0x77, 0xcb, 0x9a, 0xed, 0x51, 0x09, 0x6c, 0x1a, 0x06, 0x87, 0x68, 0xe5, 0x74, 0xd9, 0x23, 0x9c, 0x71, 0x7e, 0xc5, }; static const unsigned char xdh_wei448_3889_privkey[] = { 0x0c, 0x69, 0x7d, 0x7d, 0x3f, 0x36, 0x1b, 0x0d, 0x72, 0xab, 0x3d, 0x45, 0x76, 0x2c, 0x7a, 0xff, 0x6c, 0xb6, 0x71, 0x05, 0x07, 0x8c, 0x21, 0x73, 0x68, 0xb0, 0x81, 0xde, 0x4f, 0xd8, 0x6d, 0x78, 0xef, 0xe5, 0xea, 0xf8, 0x35, 0xf5, 0x0c, 0xe7, 0xe3, 0x25, 0x90, 0x54, 0x67, 0x44, 0x8a, 0x7a, 0x2e, 0x7f, 0xe6, 0x84, 0xdb, 0xce, 0x5a, 0x9e, }; static const unsigned char xdh_wei448_3889_sharedsecret[] = { 0x2c, 0xf2, 0xef, 0x94, 0x60, 0xcb, 0xd0, 0x3e, 0xca, 0x6e, 0x29, 0x88, 0x40, 0xa2, 0x62, 0x9d, 0x99, 0x22, 0x51, 0x66, 0xb3, 0xe5, 0xb2, 0xf7, 0x72, 0xfb, 0x70, 0xaa, 0x38, 0xd9, 0x74, 0xa0, 0x6f, 0x57, 0x0b, 0x6d, 0x13, 0x35, 0x26, 0x49, 0x42, 0x2f, 0x65, 0xd3, 0xf0, 0xf4, 0x76, 0x32, 0x0e, 0xca, 0xc9, 0x33, 0x33, 0x99, 0x54, 0xb8, }; static const wycheproof_xdh_test xdh_wei448_3889 = { .name = "xdh_wei448_3889", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3889_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3889_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3889_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 4, tcId is 285 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3890 for XDH, tcId is 286 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3890_peerpubkey[] = { 0xf0, 0xdd, 0x20, 0x3c, 0x95, 0x09, 0x9b, 0xaf, 0x75, 0x79, 0xe5, 0x59, 0xf2, 0x40, 0x4d, 0x21, 0xd2, 0x1d, 0xda, 0x49, 0xf6, 0x0f, 0x07, 0x9f, 0x77, 0x15, 0xf2, 0x0c, 0x6a, 0x5e, 0xda, 0x38, 0x1a, 0xb5, 0xf0, 0x89, 0xa7, 0x80, 0xf4, 0x01, 0x97, 0xbb, 0x03, 0xd7, 0x0f, 0x1f, 0x72, 0xef, 0xa0, 0x0e, 0x49, 0xe2, 0x8e, 0xad, 0xf9, 0x46, }; static const unsigned char xdh_wei448_3890_privkey[] = { 0xd8, 0xbf, 0x06, 0xfe, 0xc1, 0x96, 0x24, 0x31, 0x43, 0x77, 0x3d, 0x03, 0xc2, 0x3c, 0x6c, 0x0a, 0x8b, 0xbb, 0x57, 0xc2, 0x0c, 0x3c, 0x0e, 0xd5, 0x4c, 0xc1, 0x5a, 0xd5, 0x73, 0x42, 0x9c, 0xce, 0x18, 0x5a, 0x2c, 0x3c, 0x3e, 0xbf, 0x1a, 0x5a, 0x1c, 0x45, 0xfb, 0x74, 0xbc, 0xb8, 0x1b, 0xb5, 0xd4, 0xfc, 0xcf, 0x5c, 0xd4, 0x14, 0x67, 0x88, }; static const unsigned char xdh_wei448_3890_sharedsecret[] = { 0x61, 0x19, 0x03, 0x3f, 0x41, 0x96, 0x29, 0xbd, 0xd3, 0xd3, 0xd7, 0x65, 0xbf, 0x2d, 0xa2, 0xde, 0xd5, 0xe8, 0xa7, 0xbb, 0x5a, 0x81, 0xb1, 0xc2, 0xee, 0x60, 0xb4, 0x55, 0x16, 0x34, 0xfa, 0x2d, 0x27, 0xd7, 0x31, 0xf9, 0x1a, 0x25, 0xc1, 0x3e, 0x59, 0x94, 0x87, 0x87, 0xc3, 0x29, 0x19, 0x2f, 0x65, 0x86, 0x97, 0x88, 0x28, 0x12, 0x58, 0xc2, }; static const wycheproof_xdh_test xdh_wei448_3890 = { .name = "xdh_wei448_3890", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3890_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3890_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3890_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 4, tcId is 286 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3891 for XDH, tcId is 287 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3891_peerpubkey[] = { 0x0c, 0x17, 0xe3, 0xbd, 0x7c, 0x05, 0x0c, 0x2a, 0x2c, 0x29, 0x80, 0xfd, 0xb6, 0xb0, 0xde, 0x32, 0xbc, 0x5e, 0x89, 0xd6, 0xd7, 0xe3, 0x47, 0x00, 0x1a, 0xe1, 0xd8, 0x7d, 0x96, 0xc4, 0x36, 0xe4, 0x58, 0x0d, 0x96, 0xe8, 0x44, 0xe5, 0xa1, 0x59, 0xde, 0x88, 0xbb, 0x7d, 0x53, 0xd4, 0xbc, 0x04, 0xfb, 0xd4, 0xa3, 0x06, 0x22, 0xe5, 0x44, 0x57, }; static const unsigned char xdh_wei448_3891_privkey[] = { 0xc4, 0xb8, 0x78, 0x78, 0x1a, 0xe5, 0x85, 0x3e, 0x90, 0x75, 0x83, 0xd2, 0x8e, 0xae, 0x2b, 0xb2, 0xb1, 0x08, 0x47, 0x26, 0x10, 0xac, 0xe2, 0x23, 0x68, 0x14, 0xfb, 0xf1, 0x4e, 0xa9, 0xee, 0xf6, 0x52, 0x50, 0xf7, 0x9a, 0x5f, 0x2e, 0xf5, 0x3c, 0x46, 0xbb, 0x1a, 0xc1, 0x84, 0xa1, 0x68, 0x5c, 0xaf, 0xa3, 0x98, 0xa3, 0x74, 0x6c, 0xc1, 0x9e, }; static const unsigned char xdh_wei448_3891_sharedsecret[] = { 0x65, 0x0d, 0x63, 0x8d, 0x93, 0xc2, 0xea, 0xbf, 0xd5, 0xd4, 0xc2, 0x15, 0x46, 0x03, 0x51, 0xf3, 0x27, 0xe5, 0x85, 0x73, 0x89, 0x88, 0x8e, 0x4e, 0x29, 0x25, 0x76, 0xd9, 0xd9, 0x1e, 0x0f, 0xea, 0x60, 0x28, 0x9e, 0x79, 0x8a, 0xe8, 0x6a, 0x31, 0x57, 0x29, 0x6c, 0xe6, 0x89, 0x15, 0xaf, 0x53, 0xb3, 0x8c, 0xa3, 0xe8, 0x71, 0xa5, 0x0e, 0x6a, }; static const wycheproof_xdh_test xdh_wei448_3891 = { .name = "xdh_wei448_3891", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3891_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3891_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3891_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 287 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3892 for XDH, tcId is 288 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3892_peerpubkey[] = { 0x31, 0x8d, 0x8a, 0x8c, 0xf1, 0x21, 0xe3, 0x65, 0xd1, 0x8d, 0xb1, 0x70, 0xde, 0xbe, 0xa4, 0x5f, 0xfc, 0xd3, 0xb7, 0x75, 0xdd, 0xab, 0xc4, 0xc3, 0x24, 0x69, 0xae, 0xa3, 0x85, 0x7b, 0x70, 0x2f, 0x9a, 0x80, 0x59, 0x48, 0xf2, 0x1b, 0x80, 0x57, 0x3a, 0x17, 0x68, 0xb5, 0x7f, 0xb9, 0x86, 0xdc, 0xb9, 0x27, 0xfe, 0xc5, 0x53, 0x5e, 0x00, 0x62, }; static const unsigned char xdh_wei448_3892_privkey[] = { 0xa4, 0x1e, 0xd8, 0x95, 0x26, 0xf0, 0x4d, 0xa4, 0xa3, 0xf4, 0xf5, 0x7c, 0xf4, 0x47, 0x4e, 0x33, 0x5e, 0xa5, 0x25, 0xc5, 0xea, 0xb3, 0x6f, 0xfb, 0x87, 0xce, 0xe1, 0x0f, 0x85, 0xb6, 0xc4, 0xa0, 0xe5, 0x17, 0x99, 0x6f, 0x2d, 0x55, 0xa9, 0x84, 0x3e, 0x29, 0xa3, 0x2e, 0xbf, 0x34, 0x1e, 0x9f, 0x2c, 0x20, 0x59, 0x0d, 0x77, 0xc4, 0x95, 0x8c, }; static const unsigned char xdh_wei448_3892_sharedsecret[] = { 0x53, 0xe2, 0x93, 0x4c, 0xfb, 0x0d, 0xf8, 0x7d, 0xd1, 0xe0, 0xdc, 0xa0, 0x5f, 0x0b, 0xa3, 0x2c, 0x2b, 0xaf, 0x60, 0xe6, 0x32, 0xd3, 0x3e, 0xbf, 0x45, 0xd2, 0x68, 0x14, 0x47, 0xce, 0xc6, 0xdf, 0xf1, 0x64, 0xe9, 0x19, 0x06, 0x4e, 0xf2, 0xe6, 0xfe, 0x72, 0x75, 0x27, 0x0a, 0xff, 0xcb, 0xb6, 0xb1, 0xdf, 0xea, 0x0d, 0xd7, 0x3d, 0x18, 0xf9, }; static const wycheproof_xdh_test xdh_wei448_3892 = { .name = "xdh_wei448_3892", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3892_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3892_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3892_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 4, tcId is 288 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3893 for XDH, tcId is 289 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3893_peerpubkey[] = { 0x96, 0x63, 0x52, 0x65, 0x11, 0x51, 0x9a, 0xa6, 0xb2, 0x01, 0x5f, 0x25, 0x8a, 0xb0, 0x16, 0xaa, 0x2a, 0xc7, 0xae, 0x05, 0x12, 0x5e, 0xb1, 0x52, 0x8c, 0xb2, 0xe0, 0x0a, 0x8b, 0x0f, 0x0b, 0xa7, 0xab, 0x43, 0xbe, 0x08, 0xae, 0x67, 0xf0, 0x86, 0x2b, 0xc5, 0x12, 0x72, 0x54, 0xb2, 0xb2, 0x92, 0x3c, 0xc8, 0x2e, 0x32, 0xbc, 0x5d, 0x49, 0x02, }; static const unsigned char xdh_wei448_3893_privkey[] = { 0x84, 0x6d, 0xd0, 0x12, 0x51, 0x0b, 0x69, 0x86, 0x0c, 0xf9, 0x6a, 0xc5, 0x97, 0x87, 0xff, 0x8e, 0x21, 0xb4, 0x86, 0xe1, 0x10, 0xe4, 0x36, 0x52, 0xba, 0x1e, 0xda, 0x5a, 0x4a, 0x81, 0x88, 0xae, 0xf4, 0xe7, 0x66, 0x83, 0x06, 0x5c, 0x61, 0x7a, 0xdb, 0x32, 0xec, 0xf9, 0x73, 0xcf, 0x80, 0x7b, 0x5a, 0xce, 0xf2, 0xd9, 0x82, 0xdd, 0x2a, 0xb7, }; static const unsigned char xdh_wei448_3893_sharedsecret[] = { 0xb9, 0xf5, 0xa8, 0xc4, 0x63, 0xbd, 0xd4, 0x1b, 0x4d, 0xb4, 0xca, 0x69, 0x1c, 0xf5, 0x9d, 0xb2, 0x39, 0x59, 0xff, 0xe8, 0x9a, 0x43, 0x38, 0x71, 0xb5, 0x33, 0x3c, 0xc7, 0x14, 0x94, 0xf5, 0xb4, 0xc0, 0xd6, 0x9a, 0xb4, 0x07, 0x80, 0x56, 0x74, 0x03, 0x23, 0x7b, 0x02, 0x00, 0x0b, 0xb4, 0x4f, 0xa0, 0x74, 0xb8, 0xa0, 0x6a, 0xfc, 0x3e, 0xf4, }; static const wycheproof_xdh_test xdh_wei448_3893 = { .name = "xdh_wei448_3893", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3893_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3893_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3893_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 289 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3894 for XDH, tcId is 290 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3894_peerpubkey[] = { 0x39, 0xf8, 0xb7, 0xb8, 0x00, 0xdc, 0x86, 0x78, 0xc8, 0x62, 0xd0, 0xa9, 0x5c, 0x8c, 0xab, 0x7e, 0x88, 0xa0, 0x0c, 0xc1, 0x6d, 0x2d, 0x8d, 0xc7, 0x56, 0x2b, 0xe8, 0xf2, 0xbd, 0x01, 0x98, 0x10, 0xec, 0xb6, 0x8c, 0x9b, 0x01, 0xfa, 0xf9, 0xa2, 0x48, 0x77, 0xa2, 0x5e, 0xa9, 0x63, 0xe8, 0xeb, 0x23, 0x7b, 0x47, 0xf2, 0xef, 0x29, 0x25, 0x26, }; static const unsigned char xdh_wei448_3894_privkey[] = { 0x90, 0xa7, 0xd0, 0x68, 0x5d, 0xf2, 0xc5, 0xa1, 0x21, 0xe8, 0x86, 0x1a, 0x98, 0x7f, 0xbf, 0x4b, 0x56, 0x6e, 0xbb, 0xdf, 0xaf, 0xb6, 0xd1, 0x40, 0xcb, 0xa2, 0xaf, 0x9f, 0x2a, 0x24, 0x59, 0x80, 0x15, 0x79, 0x5d, 0x39, 0xd5, 0x03, 0x5a, 0x73, 0xcb, 0x28, 0x72, 0x8d, 0xd0, 0xce, 0x23, 0x7f, 0xb0, 0x50, 0x2e, 0xf6, 0xb9, 0x0f, 0xd4, 0xa3, }; static const unsigned char xdh_wei448_3894_sharedsecret[] = { 0xfd, 0x80, 0x64, 0xa2, 0xb1, 0x16, 0x51, 0x06, 0x79, 0x12, 0xee, 0x1b, 0x29, 0x9a, 0x19, 0xba, 0x76, 0x1f, 0x0d, 0x44, 0x6c, 0x26, 0xcb, 0xee, 0x6b, 0xc8, 0x5e, 0x96, 0x14, 0x9a, 0x53, 0xfc, 0x6c, 0x6f, 0xc0, 0xda, 0xbc, 0x2f, 0xaa, 0x64, 0xf0, 0x4b, 0xbe, 0x4d, 0xf0, 0x0f, 0x99, 0x48, 0x7f, 0x44, 0x47, 0x42, 0x95, 0xe1, 0x61, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_3894 = { .name = "xdh_wei448_3894", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3894_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3894_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3894_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 290 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3895 for XDH, tcId is 291 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3895_peerpubkey[] = { 0x0b, 0xf3, 0xd5, 0x0d, 0x7a, 0xcb, 0x23, 0x3b, 0xd2, 0x34, 0x13, 0xc2, 0x68, 0xe5, 0xd5, 0x90, 0xb7, 0x2c, 0x6a, 0x78, 0xb7, 0x74, 0x52, 0x13, 0x8a, 0xc0, 0x93, 0x42, 0xd7, 0x28, 0xb9, 0x7b, 0xba, 0x41, 0x61, 0xf9, 0xf3, 0x30, 0x5a, 0x1a, 0x1c, 0x2f, 0x40, 0x74, 0xe0, 0xb3, 0xdd, 0x2b, 0xcf, 0x28, 0x39, 0x70, 0x6b, 0x48, 0x60, 0x82, }; static const unsigned char xdh_wei448_3895_privkey[] = { 0xd8, 0xaa, 0x6e, 0x7c, 0xaf, 0x9e, 0x7f, 0x59, 0xf2, 0xc5, 0xc5, 0x31, 0xdf, 0x61, 0xc8, 0xfb, 0x37, 0x49, 0x42, 0x2b, 0x7a, 0x9a, 0x9e, 0x77, 0x5e, 0x00, 0xd2, 0x1b, 0xbf, 0x3b, 0x29, 0xdc, 0xf4, 0xe9, 0x03, 0x1e, 0x4e, 0x0b, 0x3a, 0x71, 0xe3, 0x9c, 0x53, 0x00, 0xa7, 0x5f, 0xba, 0x99, 0x9e, 0xca, 0x62, 0x11, 0xc8, 0x48, 0x7f, 0xba, }; static const unsigned char xdh_wei448_3895_sharedsecret[] = { 0x3e, 0xb2, 0xd5, 0x05, 0xcb, 0x9b, 0x4c, 0xa3, 0x9f, 0x1e, 0x20, 0xa6, 0xdb, 0xd7, 0xd8, 0x39, 0x35, 0x63, 0x4b, 0x13, 0x14, 0x7e, 0xcf, 0xbd, 0x39, 0xca, 0xe8, 0x2e, 0xb2, 0xe0, 0x11, 0x29, 0xfc, 0xda, 0xe9, 0xbc, 0xb0, 0xb2, 0x04, 0x99, 0x55, 0x96, 0x0b, 0x65, 0x87, 0x32, 0x1e, 0xcc, 0xc5, 0x41, 0x58, 0xdf, 0x2d, 0xc5, 0x85, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_3895 = { .name = "xdh_wei448_3895", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3895_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3895_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3895_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 291 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3896 for XDH, tcId is 292 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3896_peerpubkey[] = { 0xb4, 0x80, 0x64, 0xd6, 0xa9, 0x19, 0xa4, 0xf1, 0x6f, 0x38, 0x31, 0x54, 0x39, 0xee, 0x0f, 0xe5, 0x9b, 0xfc, 0xdd, 0x46, 0x13, 0x7a, 0x03, 0x27, 0x59, 0x5c, 0xaf, 0x9e, 0xf8, 0x40, 0x63, 0xb4, 0xdf, 0xc5, 0x0c, 0x4b, 0x9d, 0x13, 0xaf, 0x81, 0xd2, 0x3e, 0xed, 0x03, 0xad, 0x6f, 0x0b, 0x74, 0xd0, 0x16, 0x64, 0x34, 0x6f, 0xa8, 0x70, 0xb2, }; static const unsigned char xdh_wei448_3896_privkey[] = { 0x40, 0x40, 0x36, 0x3c, 0x5a, 0xb5, 0x18, 0x3e, 0xba, 0x95, 0xa6, 0xbd, 0xe2, 0x17, 0xe8, 0x27, 0x5e, 0x0f, 0x4c, 0xc6, 0x70, 0x36, 0xfa, 0x07, 0x6b, 0x19, 0x65, 0xd7, 0x49, 0x9b, 0x1d, 0xeb, 0x13, 0x3c, 0x87, 0xe3, 0x71, 0xea, 0x8c, 0x30, 0x6b, 0xa5, 0x33, 0xf6, 0xf4, 0x3c, 0x3a, 0xa9, 0xb6, 0x45, 0x0a, 0xb4, 0x69, 0x3c, 0xfb, 0xab, }; static const unsigned char xdh_wei448_3896_sharedsecret[] = { 0x5a, 0xb0, 0x1c, 0x0b, 0x22, 0x06, 0x9d, 0xe1, 0x7d, 0xc2, 0x89, 0xc5, 0xc0, 0x25, 0xd1, 0xd2, 0x6c, 0x62, 0xb5, 0xf6, 0x2d, 0x71, 0x41, 0x77, 0x4b, 0xd7, 0x90, 0x7d, 0xf7, 0xff, 0xf6, 0xcd, 0xc8, 0x99, 0xdd, 0x8c, 0x52, 0x2d, 0x3a, 0xb7, 0x4b, 0x63, 0x6c, 0x6e, 0xd6, 0x51, 0xc1, 0xc2, 0x70, 0x49, 0xc3, 0x1e, 0x1e, 0xc1, 0x66, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3896 = { .name = "xdh_wei448_3896", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3896_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3896_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3896_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 5, tcId is 292 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3897 for XDH, tcId is 293 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3897_peerpubkey[] = { 0x5c, 0x21, 0x37, 0xbe, 0xa5, 0x0f, 0x8f, 0xf7, 0x95, 0x69, 0xa6, 0xae, 0xc1, 0x9d, 0x23, 0x10, 0x16, 0x4f, 0x56, 0x52, 0xa3, 0x01, 0xbd, 0x6a, 0xb1, 0x86, 0x3d, 0xc9, 0x4e, 0xc3, 0xc3, 0x1c, 0x2c, 0xa3, 0xfa, 0xb6, 0x2f, 0x31, 0xda, 0x5e, 0x33, 0x4c, 0x05, 0x0a, 0xf9, 0x3e, 0xb3, 0xb3, 0x47, 0x64, 0x89, 0x15, 0x04, 0x19, 0xf4, 0xdb, }; static const unsigned char xdh_wei448_3897_privkey[] = { 0x50, 0x13, 0x98, 0xbb, 0x75, 0x71, 0x08, 0x79, 0xb8, 0x5d, 0xfb, 0xf5, 0xec, 0xb8, 0x50, 0xba, 0x7d, 0xd3, 0x01, 0x41, 0x7f, 0x0e, 0xcc, 0x0b, 0x58, 0x94, 0x47, 0xf6, 0xf1, 0x90, 0x55, 0xc7, 0x4e, 0xa5, 0x5b, 0x6a, 0x6b, 0x74, 0xfc, 0x59, 0x74, 0xab, 0x49, 0x88, 0x1d, 0xb2, 0xa3, 0xd6, 0xf0, 0x7f, 0x6a, 0x57, 0x43, 0x8e, 0x77, 0xb2, }; static const unsigned char xdh_wei448_3897_sharedsecret[] = { 0xe6, 0x5b, 0x36, 0xc1, 0x5b, 0x12, 0x1a, 0xe2, 0xeb, 0xfa, 0xe1, 0x2b, 0x2f, 0x37, 0x02, 0xef, 0x26, 0x14, 0xf3, 0xf6, 0x80, 0xe9, 0x70, 0x7b, 0xa2, 0xa9, 0x5b, 0x45, 0x2d, 0xdd, 0xf8, 0xb1, 0x08, 0x9c, 0x7c, 0xca, 0x74, 0xae, 0x64, 0xf0, 0xf6, 0xa0, 0xc1, 0x36, 0xd2, 0x77, 0x40, 0x62, 0xef, 0xf8, 0x80, 0x0c, 0x01, 0x60, 0xc1, 0x39, }; static const wycheproof_xdh_test xdh_wei448_3897 = { .name = "xdh_wei448_3897", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3897_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3897_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3897_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 5, tcId is 293 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3898 for XDH, tcId is 294 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3898_peerpubkey[] = { 0x6a, 0xd8, 0x46, 0xd0, 0x92, 0x81, 0x7e, 0x34, 0x1f, 0x5d, 0x13, 0x42, 0xee, 0x60, 0x03, 0xe3, 0x82, 0x2e, 0x5c, 0x30, 0x92, 0xef, 0x05, 0x99, 0xe0, 0x11, 0x49, 0x97, 0x5d, 0x7a, 0x0d, 0xc8, 0x08, 0x5c, 0xd4, 0x49, 0x09, 0x43, 0x34, 0x3f, 0x86, 0x91, 0x38, 0x15, 0x11, 0x1b, 0x96, 0x79, 0x8e, 0x37, 0x3d, 0x56, 0xc5, 0xa7, 0x28, 0x03, }; static const unsigned char xdh_wei448_3898_privkey[] = { 0x48, 0x1c, 0x15, 0x52, 0xcb, 0x3b, 0xc7, 0x9e, 0xf4, 0xef, 0x33, 0xea, 0xd3, 0x16, 0x27, 0x35, 0xe3, 0xdf, 0x3d, 0x47, 0x15, 0x0a, 0x3f, 0xdc, 0x1f, 0x00, 0x90, 0x39, 0x1b, 0x61, 0x8f, 0xa3, 0x20, 0x69, 0x35, 0x5d, 0x18, 0x11, 0x52, 0xb0, 0xbf, 0x64, 0x1c, 0xd7, 0x8b, 0x12, 0xb7, 0xb7, 0xca, 0x85, 0x62, 0x4e, 0xa0, 0x46, 0x67, 0xae, }; static const unsigned char xdh_wei448_3898_sharedsecret[] = { 0x6a, 0x1c, 0x24, 0x8b, 0x32, 0x62, 0x56, 0x04, 0xea, 0x1d, 0x53, 0x6d, 0x83, 0xe9, 0x13, 0xa4, 0xb9, 0x6a, 0x1c, 0x86, 0x9b, 0x7c, 0x09, 0xb9, 0xb7, 0xd1, 0xce, 0x31, 0x5e, 0x24, 0xc1, 0x8b, 0x7c, 0x47, 0x9b, 0xb8, 0xe9, 0x94, 0xcf, 0x1f, 0xfd, 0x54, 0x28, 0xe7, 0x78, 0x84, 0xcb, 0x06, 0x34, 0x6f, 0xb7, 0x76, 0xaf, 0x7d, 0x52, 0x50, }; static const wycheproof_xdh_test xdh_wei448_3898 = { .name = "xdh_wei448_3898", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3898_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3898_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3898_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 294 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3899 for XDH, tcId is 295 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3899_peerpubkey[] = { 0xa0, 0x68, 0xd1, 0xa8, 0xaa, 0x41, 0xb8, 0x4a, 0x48, 0x61, 0x22, 0x0d, 0xf0, 0xd7, 0x04, 0x0e, 0x04, 0x58, 0x37, 0xf1, 0x09, 0xf9, 0xed, 0x15, 0x6d, 0x63, 0x9a, 0x8a, 0xe9, 0xa8, 0x15, 0x35, 0xfe, 0x3b, 0x0a, 0xf9, 0xb8, 0xb8, 0xfa, 0x4b, 0x6c, 0xcf, 0xf3, 0xa2, 0xb1, 0xd0, 0xb4, 0x0e, 0xca, 0x97, 0x96, 0xff, 0xc9, 0xa9, 0xbe, 0x28, }; static const unsigned char xdh_wei448_3899_privkey[] = { 0x3c, 0xd4, 0xf7, 0xc0, 0x6f, 0xab, 0x74, 0x31, 0xcc, 0xaa, 0x07, 0x6f, 0x6e, 0xa2, 0x11, 0x70, 0xeb, 0x6e, 0x93, 0xa3, 0xc9, 0xec, 0xb5, 0x51, 0x66, 0xfd, 0xc4, 0x19, 0xf3, 0x21, 0xfa, 0x3b, 0xe8, 0xa3, 0x0d, 0xfc, 0x4a, 0xd8, 0xd4, 0x11, 0x86, 0xbb, 0x15, 0x5d, 0x9e, 0x73, 0x72, 0x4a, 0xd0, 0xc2, 0x67, 0xa4, 0x9b, 0x9a, 0x0c, 0xac, }; static const unsigned char xdh_wei448_3899_sharedsecret[] = { 0xe1, 0x0b, 0x5f, 0x67, 0x27, 0x53, 0x75, 0x67, 0x83, 0xc9, 0x52, 0x4f, 0x04, 0x0a, 0xc0, 0x27, 0xcc, 0x64, 0x03, 0xca, 0x02, 0x5b, 0x5d, 0x6c, 0xd3, 0x93, 0xd0, 0xe7, 0x4a, 0xa5, 0x01, 0x2b, 0xaa, 0x50, 0xc6, 0xf7, 0x20, 0xd3, 0xf5, 0x21, 0xf8, 0xbf, 0x68, 0x9e, 0x3e, 0x5e, 0x6f, 0x54, 0xd1, 0xdb, 0xf2, 0x28, 0x6d, 0x71, 0xad, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_3899 = { .name = "xdh_wei448_3899", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3899_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3899_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3899_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 295 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3900 for XDH, tcId is 296 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3900_peerpubkey[] = { 0x1d, 0x10, 0x06, 0xcf, 0x7e, 0xd9, 0x4e, 0x0a, 0xeb, 0x5b, 0x73, 0x58, 0x76, 0x99, 0xf0, 0xee, 0x7a, 0xcd, 0xee, 0x1d, 0x46, 0x8f, 0x5e, 0x10, 0xe7, 0xcb, 0xd2, 0xbd, 0xf8, 0x92, 0xe1, 0xa4, 0x38, 0x84, 0xff, 0x34, 0x8e, 0x81, 0x9e, 0x4a, 0x32, 0x64, 0xd5, 0x28, 0x26, 0xda, 0xf8, 0x6b, 0xb4, 0xe9, 0x2c, 0x1a, 0xb7, 0x8d, 0x14, 0x3d, }; static const unsigned char xdh_wei448_3900_privkey[] = { 0xac, 0x5b, 0x24, 0xe0, 0x9b, 0xb8, 0x9f, 0x2b, 0xae, 0x47, 0xfc, 0xc3, 0x85, 0x7d, 0xda, 0x33, 0x6a, 0x9f, 0xfe, 0xf7, 0xfe, 0xd7, 0xf0, 0xd8, 0x0b, 0xe2, 0xbd, 0xb5, 0x65, 0xdf, 0x21, 0xb3, 0xaf, 0x2f, 0x46, 0x9d, 0x23, 0x92, 0xb9, 0xc8, 0x69, 0x19, 0x7b, 0xb3, 0x95, 0xff, 0x0b, 0xe9, 0x42, 0xef, 0xbd, 0x2a, 0xe4, 0x40, 0x97, 0xb3, }; static const unsigned char xdh_wei448_3900_sharedsecret[] = { 0x1f, 0x6a, 0x76, 0xd8, 0x38, 0x73, 0xcf, 0xb8, 0x79, 0xdd, 0x85, 0xc7, 0x05, 0x54, 0x65, 0x8b, 0xbc, 0x6f, 0xe4, 0x23, 0x4e, 0x33, 0x80, 0x75, 0x5c, 0xe2, 0xb2, 0xa4, 0x57, 0x56, 0x83, 0x61, 0x86, 0x86, 0xab, 0x49, 0x4a, 0xc5, 0x58, 0xfa, 0x7a, 0xf9, 0xe2, 0xb7, 0x23, 0xde, 0xe9, 0xcf, 0x78, 0x3f, 0x7a, 0x7f, 0xb1, 0x7c, 0x8a, 0xcc, }; static const wycheproof_xdh_test xdh_wei448_3900 = { .name = "xdh_wei448_3900", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3900_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3900_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3900_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 296 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3901 for XDH, tcId is 297 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3901_peerpubkey[] = { 0x6c, 0x6f, 0x67, 0x67, 0x2c, 0x21, 0xe1, 0xce, 0x57, 0x4c, 0xf5, 0x7e, 0xb7, 0x59, 0x67, 0x0a, 0xc8, 0x9a, 0x70, 0xa8, 0xcf, 0x5b, 0x2f, 0xd6, 0x07, 0x52, 0x12, 0x2e, 0x78, 0x98, 0xd9, 0x14, 0x0f, 0x80, 0xa5, 0x0c, 0x48, 0x8a, 0x4d, 0xe4, 0x75, 0xd5, 0x63, 0xc9, 0x3c, 0x47, 0x93, 0x18, 0x26, 0xde, 0xef, 0x68, 0xcf, 0x68, 0xd5, 0x5d, }; static const unsigned char xdh_wei448_3901_privkey[] = { 0x50, 0x24, 0x6f, 0xb7, 0xc5, 0xc6, 0xd1, 0xfe, 0x57, 0x89, 0xd1, 0x21, 0x20, 0x6c, 0x0e, 0xfe, 0x5e, 0x55, 0xf3, 0x01, 0x3a, 0x3f, 0x58, 0xde, 0xf7, 0x7e, 0x93, 0xc6, 0x5b, 0x53, 0xdf, 0xa3, 0x25, 0x1a, 0x4c, 0x8e, 0xb6, 0x97, 0x6d, 0xc1, 0x82, 0xaf, 0x2a, 0x18, 0x64, 0x11, 0xaa, 0xca, 0x3a, 0x87, 0x09, 0xc3, 0x8e, 0xf9, 0x03, 0xb0, }; static const unsigned char xdh_wei448_3901_sharedsecret[] = { 0xe2, 0xd0, 0x4a, 0xf5, 0x98, 0xc7, 0xa0, 0x89, 0xb8, 0xac, 0x47, 0x55, 0xee, 0x0e, 0x9a, 0x62, 0x4e, 0xdf, 0xe1, 0x86, 0x66, 0xa6, 0x27, 0xde, 0xff, 0xba, 0xcb, 0xab, 0x67, 0x7c, 0xc8, 0xef, 0x4d, 0x84, 0xf2, 0x00, 0xb4, 0x97, 0xc5, 0x28, 0xd4, 0x64, 0xda, 0xa1, 0x1f, 0x61, 0x5b, 0xbd, 0x19, 0x1f, 0x44, 0x38, 0x2b, 0xb3, 0x8d, 0x5e, }; static const wycheproof_xdh_test xdh_wei448_3901 = { .name = "xdh_wei448_3901", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3901_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3901_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3901_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 297 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3902 for XDH, tcId is 298 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3902_peerpubkey[] = { 0x12, 0xe9, 0xbd, 0xc5, 0xee, 0xa1, 0x8e, 0xcd, 0x03, 0xd9, 0x90, 0x45, 0xae, 0xc4, 0x4b, 0xd3, 0x33, 0x29, 0x9e, 0x03, 0x08, 0x2f, 0x9f, 0xc8, 0x6b, 0x99, 0x7e, 0x1d, 0x21, 0x60, 0x13, 0xa3, 0x5f, 0x6a, 0x80, 0xf9, 0x67, 0xfe, 0x7a, 0x41, 0x71, 0xbe, 0x21, 0x56, 0x31, 0xe4, 0x07, 0x6c, 0x2c, 0x36, 0xc5, 0x34, 0x61, 0x8e, 0xce, 0x9a, }; static const unsigned char xdh_wei448_3902_privkey[] = { 0x28, 0x8f, 0x40, 0x6a, 0x70, 0x35, 0x8c, 0x9a, 0xaf, 0xc8, 0x96, 0x1a, 0x16, 0xc4, 0x27, 0x05, 0x83, 0x4e, 0xce, 0x4a, 0xa8, 0x2c, 0xe4, 0xa4, 0x4d, 0xac, 0x53, 0x32, 0x52, 0x69, 0x35, 0x30, 0x8a, 0x5f, 0x79, 0x36, 0x96, 0x9a, 0xc9, 0xb1, 0xb2, 0x9b, 0x4b, 0x53, 0x90, 0x17, 0x67, 0xc8, 0x7f, 0xa8, 0xda, 0x94, 0xc9, 0xce, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_3902_sharedsecret[] = { 0xb3, 0x69, 0x7a, 0x12, 0xa9, 0x9e, 0xb9, 0x10, 0x01, 0x95, 0x08, 0x96, 0xeb, 0xd1, 0x77, 0xc2, 0x87, 0xe6, 0x6c, 0xc1, 0xa4, 0x52, 0x56, 0xe0, 0x0d, 0x0d, 0xec, 0xf2, 0x6b, 0x27, 0x76, 0xd9, 0x40, 0xd6, 0x1e, 0xaf, 0xd5, 0x3b, 0x91, 0x37, 0x82, 0xda, 0xc6, 0x85, 0xf9, 0x06, 0xa5, 0x15, 0xa0, 0x82, 0xa5, 0x95, 0x68, 0x0c, 0xf0, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3902 = { .name = "xdh_wei448_3902", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3902_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3902_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3902_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 298 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3903 for XDH, tcId is 299 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3903_peerpubkey[] = { 0x3b, 0x84, 0x3f, 0x59, 0x14, 0x65, 0x4a, 0xbc, 0x39, 0xdc, 0x97, 0x5f, 0x24, 0x24, 0x53, 0x8d, 0x59, 0xba, 0xa1, 0x3b, 0x7e, 0xc4, 0x56, 0x1e, 0xcf, 0xfa, 0x41, 0x28, 0xe6, 0x3f, 0xb4, 0xc0, 0x59, 0xbc, 0xaf, 0x6d, 0x19, 0x20, 0x3d, 0xa7, 0x05, 0x48, 0x71, 0x87, 0xda, 0xc8, 0x67, 0x88, 0x1b, 0x12, 0x09, 0x6a, 0xd1, 0xaa, 0xbd, 0xbc, }; static const unsigned char xdh_wei448_3903_privkey[] = { 0xd0, 0x4f, 0x7f, 0xcd, 0xba, 0xc2, 0xd5, 0xe0, 0x3b, 0x79, 0x82, 0xef, 0x3e, 0xe9, 0x88, 0x9d, 0x38, 0x20, 0x79, 0xdd, 0x00, 0x62, 0xe2, 0x9d, 0xc2, 0x79, 0xc0, 0x9d, 0xe8, 0xbd, 0x00, 0x67, 0xcb, 0xe6, 0x75, 0x8f, 0x28, 0x21, 0xa6, 0x24, 0x9d, 0x0c, 0xb3, 0xde, 0x45, 0x81, 0x5e, 0x4c, 0x16, 0x17, 0x98, 0x25, 0x86, 0x19, 0xac, 0xa4, }; static const unsigned char xdh_wei448_3903_sharedsecret[] = { 0x6b, 0xc9, 0xc9, 0x75, 0x4f, 0x0b, 0xd8, 0x38, 0x4c, 0xfc, 0x07, 0x2b, 0x3a, 0xb3, 0xd4, 0x88, 0xb7, 0x4e, 0xc1, 0x42, 0xbe, 0x9f, 0x01, 0x5e, 0xe9, 0x26, 0xe7, 0x46, 0xb9, 0x58, 0x61, 0x2f, 0x32, 0xa9, 0x23, 0xf3, 0x5d, 0x9d, 0xfe, 0x6b, 0x9f, 0x4b, 0x75, 0x12, 0xef, 0x44, 0xab, 0x95, 0x36, 0x05, 0xd7, 0xaa, 0x21, 0xf8, 0x2f, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_3903 = { .name = "xdh_wei448_3903", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3903_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3903_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3903_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 5, tcId is 299 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3904 for XDH, tcId is 300 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3904_peerpubkey[] = { 0xc9, 0x8e, 0x2f, 0x4d, 0xf8, 0x5f, 0x68, 0x61, 0x4b, 0xbb, 0xc4, 0x76, 0x96, 0xd9, 0x18, 0xd0, 0x46, 0xde, 0x36, 0xb5, 0xee, 0xd7, 0xb8, 0xfe, 0xe1, 0x14, 0x40, 0xad, 0x1c, 0x7d, 0x9f, 0x65, 0x0d, 0x9a, 0x0c, 0x8a, 0xce, 0x00, 0x8a, 0xa5, 0xef, 0xf6, 0x7a, 0xc8, 0xae, 0x77, 0x74, 0x90, 0x0e, 0x6e, 0x2c, 0x18, 0x73, 0xa3, 0x0c, 0xbd, }; static const unsigned char xdh_wei448_3904_privkey[] = { 0x4c, 0x80, 0x8a, 0x20, 0x52, 0xa6, 0x75, 0xfb, 0x0f, 0x76, 0xfb, 0x84, 0x98, 0xa5, 0xf4, 0x79, 0x76, 0x9b, 0xdd, 0x0b, 0xbb, 0x5f, 0xdf, 0x27, 0x0c, 0x03, 0x82, 0xf1, 0xd9, 0x7d, 0x00, 0xe1, 0xcb, 0x12, 0x29, 0x07, 0xd0, 0xc1, 0x30, 0x91, 0xaa, 0xde, 0x88, 0x26, 0x64, 0xb3, 0xc8, 0xc4, 0xb9, 0xba, 0x15, 0x33, 0xfd, 0x6b, 0x6c, 0xb6, }; static const unsigned char xdh_wei448_3904_sharedsecret[] = { 0x97, 0x5c, 0x8d, 0xdc, 0x5e, 0x63, 0x77, 0xf2, 0x84, 0x2c, 0xc4, 0x8b, 0xe6, 0xfc, 0x76, 0x7f, 0x7c, 0x33, 0xbc, 0x21, 0xd0, 0xf1, 0x47, 0x26, 0xd6, 0xc5, 0x00, 0x57, 0xb1, 0xf7, 0x3c, 0xe2, 0x5a, 0x87, 0x08, 0xe9, 0x60, 0xed, 0x45, 0xe1, 0x62, 0x04, 0xa2, 0x81, 0x56, 0x7a, 0xd1, 0xf4, 0xc3, 0xa9, 0x0e, 0x3e, 0x43, 0x4b, 0x5e, 0x51, }; static const wycheproof_xdh_test xdh_wei448_3904 = { .name = "xdh_wei448_3904", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3904_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3904_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3904_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 5, tcId is 300 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3905 for XDH, tcId is 301 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3905_peerpubkey[] = { 0x9d, 0xd0, 0xc3, 0x0d, 0xe8, 0x7d, 0x1d, 0x7c, 0x52, 0x35, 0x11, 0x8f, 0x68, 0x67, 0x11, 0x34, 0x28, 0xae, 0x82, 0x82, 0x83, 0x9f, 0x75, 0x96, 0x83, 0xe6, 0x4e, 0xda, 0xba, 0x47, 0x80, 0x8b, 0xc8, 0xce, 0x16, 0x64, 0xff, 0xdf, 0x70, 0xa8, 0x47, 0x1d, 0x7b, 0xbf, 0xd1, 0xe0, 0xda, 0xca, 0x19, 0x72, 0xc3, 0xa9, 0x11, 0x8c, 0x5a, 0x04, }; static const unsigned char xdh_wei448_3905_privkey[] = { 0x30, 0xa4, 0x2f, 0x76, 0x8a, 0x8e, 0x77, 0x95, 0xf0, 0x51, 0x38, 0x2e, 0x22, 0xb0, 0xc3, 0x13, 0x42, 0xf6, 0x3c, 0x3b, 0xf0, 0x20, 0x42, 0x66, 0x13, 0xaf, 0xd2, 0x09, 0xdd, 0xb0, 0x97, 0x45, 0xc6, 0xc1, 0x67, 0x71, 0x26, 0xcc, 0x12, 0x73, 0xd3, 0x4d, 0xc5, 0x71, 0x50, 0xf2, 0xd5, 0xdc, 0x15, 0x5b, 0xbe, 0x62, 0x66, 0x08, 0xc6, 0xa8, }; static const unsigned char xdh_wei448_3905_sharedsecret[] = { 0x1f, 0x14, 0x34, 0x45, 0x74, 0x41, 0xd0, 0xda, 0xbe, 0x47, 0x35, 0xe7, 0xf9, 0x49, 0x93, 0x33, 0x00, 0xc2, 0x20, 0xe9, 0x5d, 0x94, 0xaa, 0xb1, 0xeb, 0xd3, 0xee, 0xf6, 0x0b, 0xcf, 0xdb, 0x3d, 0x5c, 0xc6, 0xd9, 0xaf, 0x29, 0xad, 0xe1, 0x21, 0xf0, 0x0b, 0x03, 0x41, 0x7f, 0xb4, 0xab, 0x31, 0xe0, 0x5e, 0x74, 0xa0, 0x7b, 0xc3, 0x72, 0xef, }; static const wycheproof_xdh_test xdh_wei448_3905 = { .name = "xdh_wei448_3905", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3905_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3905_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3905_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 301 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3906 for XDH, tcId is 302 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3906_peerpubkey[] = { 0xa3, 0x3e, 0x95, 0x47, 0xb1, 0x00, 0xfc, 0x26, 0x3e, 0x53, 0x56, 0x4f, 0x15, 0x6c, 0xc4, 0xed, 0x2f, 0x2d, 0x60, 0xec, 0xdf, 0xc3, 0x65, 0x28, 0x5a, 0xbf, 0x84, 0xf3, 0xc3, 0x67, 0xb6, 0xb4, 0xa3, 0x04, 0x8b, 0x23, 0x26, 0x01, 0x35, 0x93, 0xae, 0x14, 0x67, 0x97, 0x3a, 0x8e, 0x25, 0xad, 0x66, 0xef, 0xef, 0xf4, 0x82, 0x88, 0x0d, 0x0c, }; static const unsigned char xdh_wei448_3906_privkey[] = { 0xa4, 0x14, 0x23, 0x8d, 0xc7, 0xbf, 0x4c, 0xea, 0xf9, 0x36, 0x6d, 0x1c, 0xb2, 0xcf, 0xb8, 0x0b, 0xc2, 0x72, 0xb8, 0x2b, 0x12, 0x2e, 0x36, 0xfd, 0x51, 0x19, 0xfc, 0x53, 0xd9, 0x9b, 0x34, 0x61, 0xfe, 0x35, 0xfa, 0x49, 0xe8, 0xf9, 0x84, 0xa9, 0xb9, 0xb5, 0xf4, 0xd2, 0x13, 0x86, 0x8f, 0xdd, 0x1f, 0xaf, 0x8b, 0xc0, 0x3f, 0x94, 0x2e, 0xb7, }; static const unsigned char xdh_wei448_3906_sharedsecret[] = { 0xb3, 0xd2, 0x72, 0x1f, 0x00, 0xbe, 0x29, 0xc2, 0x08, 0x3a, 0x4d, 0xfe, 0xef, 0x8e, 0x80, 0x60, 0xc2, 0x96, 0x39, 0xac, 0x60, 0xe4, 0x12, 0x2f, 0xb9, 0x54, 0xe1, 0xcc, 0x2e, 0xa2, 0x67, 0x65, 0x45, 0x8e, 0xfa, 0xd4, 0x76, 0x68, 0xc1, 0x9c, 0x70, 0xa5, 0x1c, 0xa0, 0xd7, 0x85, 0x74, 0xb5, 0xb2, 0xfe, 0x46, 0xd8, 0xc5, 0x7f, 0x51, 0x03, }; static const wycheproof_xdh_test xdh_wei448_3906 = { .name = "xdh_wei448_3906", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3906_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3906_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3906_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 302 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3907 for XDH, tcId is 303 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3907_peerpubkey[] = { 0xe9, 0x9e, 0xc1, 0x56, 0x66, 0x55, 0x75, 0xbb, 0x7e, 0x29, 0x9a, 0x44, 0x4b, 0x2b, 0x70, 0x2b, 0x66, 0x01, 0xc8, 0xc4, 0x62, 0xad, 0x93, 0x9e, 0x58, 0xe0, 0xe2, 0x7f, 0x0b, 0xa3, 0x9c, 0x6c, 0x69, 0x5a, 0x14, 0xb7, 0xc5, 0xac, 0x55, 0xb6, 0x46, 0x30, 0x37, 0x34, 0x37, 0xf6, 0xea, 0x9b, 0x86, 0x91, 0x13, 0x2f, 0x10, 0xdc, 0xc4, 0x29, }; static const unsigned char xdh_wei448_3907_privkey[] = { 0x24, 0xbb, 0x5f, 0x75, 0x0e, 0x52, 0x52, 0xa1, 0xd6, 0x64, 0xf9, 0xe1, 0x66, 0xc5, 0x29, 0xf1, 0xe1, 0xc8, 0xcf, 0x2d, 0x29, 0x65, 0x57, 0xf4, 0xf9, 0xe8, 0xca, 0xbb, 0x9e, 0xd4, 0x8a, 0x57, 0xbb, 0xc0, 0x7d, 0xd8, 0x6d, 0x63, 0x94, 0x32, 0xda, 0x1c, 0xab, 0xd0, 0x98, 0xcc, 0x61, 0x08, 0x45, 0x16, 0x22, 0x5f, 0xc5, 0x21, 0x63, 0xb5, }; static const unsigned char xdh_wei448_3907_sharedsecret[] = { 0x32, 0xb1, 0x16, 0xd2, 0xd8, 0x76, 0xca, 0x11, 0xa1, 0x85, 0x8f, 0x87, 0x01, 0xb2, 0xf0, 0xcc, 0xdc, 0xac, 0x45, 0xe1, 0x23, 0xf4, 0x6c, 0xf1, 0xc2, 0x54, 0x4e, 0x0d, 0xe5, 0x74, 0x1c, 0x06, 0x10, 0xfc, 0xce, 0xe9, 0x59, 0x26, 0x1d, 0x6e, 0x85, 0x58, 0xa0, 0xb0, 0xa5, 0xef, 0x0d, 0x0a, 0x42, 0xb0, 0x0b, 0xd9, 0x5e, 0x24, 0x5c, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3907 = { .name = "xdh_wei448_3907", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3907_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3907_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3907_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 303 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3908 for XDH, tcId is 304 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3908_peerpubkey[] = { 0x61, 0x34, 0x2d, 0x90, 0x2b, 0x5a, 0x65, 0x98, 0xfa, 0xba, 0x1f, 0x83, 0xb9, 0x22, 0xca, 0x19, 0x07, 0x1c, 0xfc, 0x82, 0x55, 0x63, 0x52, 0xc8, 0x8d, 0x29, 0xba, 0x35, 0x09, 0x0e, 0x39, 0x5e, 0x9b, 0xeb, 0xbd, 0x8d, 0xab, 0x83, 0xe9, 0x83, 0x54, 0x9f, 0xcf, 0xc3, 0x32, 0x12, 0x49, 0x70, 0x94, 0x48, 0x6a, 0xdd, 0xac, 0xd6, 0x0d, 0x34, }; static const unsigned char xdh_wei448_3908_privkey[] = { 0x78, 0xb9, 0xbb, 0x7c, 0xe3, 0xdf, 0xe8, 0x71, 0xe7, 0x59, 0xfe, 0xbb, 0x07, 0xad, 0xc7, 0x8a, 0x7c, 0x69, 0x17, 0xd9, 0x22, 0x4b, 0x19, 0xb3, 0xda, 0x1f, 0x28, 0xa5, 0x78, 0x38, 0x85, 0x12, 0x38, 0xbc, 0x22, 0xd4, 0x66, 0x3b, 0x3d, 0x7e, 0x7f, 0x4f, 0xcd, 0x0c, 0x62, 0xf9, 0xcb, 0xc3, 0x80, 0x6f, 0x7b, 0x77, 0xaa, 0x20, 0x20, 0xbd, }; static const unsigned char xdh_wei448_3908_sharedsecret[] = { 0xc3, 0x99, 0xb4, 0x51, 0xd4, 0x72, 0x4d, 0xa2, 0x61, 0x83, 0x1c, 0x38, 0x62, 0x5a, 0x74, 0xcd, 0x58, 0x05, 0x8f, 0x20, 0x45, 0x1b, 0x52, 0x7f, 0xcb, 0xc3, 0xe5, 0x57, 0x60, 0x3e, 0x42, 0x9c, 0x47, 0x81, 0xdb, 0x0a, 0x52, 0x39, 0x71, 0xdf, 0x1d, 0x60, 0xe0, 0x4a, 0x0d, 0xed, 0x7e, 0xf9, 0x11, 0xc5, 0xd1, 0x28, 0x9f, 0x89, 0x03, 0x85, }; static const wycheproof_xdh_test xdh_wei448_3908 = { .name = "xdh_wei448_3908", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3908_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3908_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3908_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 5, tcId is 304 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3909 for XDH, tcId is 305 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3909_peerpubkey[] = { 0x67, 0x56, 0xc9, 0x7a, 0xa9, 0x9f, 0x8b, 0xdd, 0x00, 0x38, 0x51, 0xf7, 0x78, 0x72, 0xca, 0x51, 0x4e, 0xcf, 0x7c, 0xe6, 0xe4, 0xed, 0xf5, 0x1d, 0x3d, 0x41, 0xb3, 0xc5, 0x06, 0xa3, 0x4d, 0x2d, 0xac, 0x32, 0xbc, 0x8e, 0x5d, 0x12, 0xc5, 0xd2, 0x9e, 0x47, 0xa6, 0x39, 0xf2, 0xa1, 0xe3, 0x23, 0x55, 0xbb, 0x9b, 0x75, 0xb7, 0x1f, 0x3c, 0x85, }; static const unsigned char xdh_wei448_3909_privkey[] = { 0x60, 0x22, 0x22, 0x56, 0xc0, 0x60, 0xb2, 0x2f, 0x43, 0x52, 0xda, 0x8b, 0xa8, 0x5c, 0xcc, 0x99, 0x11, 0x49, 0xa9, 0xdc, 0x8c, 0xf1, 0xb2, 0x5d, 0xc8, 0x0a, 0x8a, 0xb9, 0x81, 0x5c, 0x7e, 0x59, 0x5c, 0xbc, 0x89, 0x33, 0x4a, 0x81, 0x8a, 0x00, 0x98, 0xa7, 0xdb, 0x69, 0x8a, 0xc2, 0x40, 0x08, 0x09, 0x31, 0xaa, 0xea, 0x13, 0x7c, 0xd8, 0xb7, }; static const unsigned char xdh_wei448_3909_sharedsecret[] = { 0x0f, 0x04, 0x25, 0xfa, 0x3f, 0xbf, 0x31, 0xe0, 0xd5, 0xe7, 0xbb, 0x4c, 0x2c, 0xcb, 0xa8, 0xb3, 0x0a, 0x40, 0xde, 0x39, 0xaa, 0x0c, 0x87, 0xdb, 0xed, 0xa8, 0x82, 0x99, 0x48, 0x83, 0x0f, 0x39, 0x92, 0x6e, 0x80, 0x1d, 0xe3, 0xad, 0xe2, 0x05, 0x8d, 0xa9, 0xa0, 0x5d, 0xb8, 0x08, 0xea, 0x99, 0xb7, 0xeb, 0xe3, 0xe3, 0x28, 0x54, 0x47, 0xdd, }; static const wycheproof_xdh_test xdh_wei448_3909 = { .name = "xdh_wei448_3909", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3909_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3909_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3909_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 5, tcId is 305 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3910 for XDH, tcId is 306 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3910_peerpubkey[] = { 0x37, 0x8c, 0xbd, 0x8e, 0xeb, 0x6c, 0x8e, 0x5a, 0x96, 0x7a, 0x76, 0xfb, 0x31, 0x1f, 0x38, 0xe6, 0x18, 0xec, 0x52, 0x66, 0x0d, 0x06, 0x02, 0x20, 0xba, 0xbc, 0x7e, 0x9a, 0xdf, 0x93, 0xbe, 0x90, 0xe9, 0xd5, 0x4c, 0x3f, 0x77, 0x34, 0x65, 0x04, 0x4b, 0xfc, 0x95, 0xe2, 0xeb, 0x9a, 0xde, 0x69, 0x5b, 0x0d, 0x91, 0x34, 0xef, 0xa3, 0xc2, 0x0f, }; static const unsigned char xdh_wei448_3910_privkey[] = { 0xd4, 0xb9, 0x21, 0x81, 0x9f, 0x2e, 0x67, 0x46, 0x0b, 0x2d, 0x31, 0x2a, 0x8a, 0x96, 0x2a, 0xeb, 0x3d, 0x4c, 0x7e, 0x99, 0x49, 0x04, 0xb1, 0x43, 0x6c, 0xd1, 0xaf, 0x83, 0x3f, 0x5e, 0x99, 0x97, 0xc0, 0xdc, 0xa1, 0xd7, 0x02, 0xd2, 0xa8, 0x59, 0x7a, 0x3a, 0xfb, 0xb2, 0x3d, 0x83, 0x8f, 0x38, 0x6e, 0xcd, 0xbf, 0x97, 0xf3, 0x8e, 0xd0, 0xa5, }; static const unsigned char xdh_wei448_3910_sharedsecret[] = { 0xfe, 0xa7, 0x49, 0xf4, 0xb7, 0xaf, 0x95, 0x46, 0x3b, 0x25, 0x23, 0x82, 0x69, 0xf1, 0x27, 0x9d, 0x19, 0xba, 0x6d, 0x4e, 0x09, 0xf3, 0x64, 0x59, 0xc2, 0x43, 0xf8, 0x68, 0x8d, 0x2a, 0x38, 0xba, 0x4c, 0xd2, 0xba, 0xab, 0x32, 0xb4, 0x37, 0xdd, 0x1f, 0x74, 0x5a, 0xbc, 0xd4, 0x77, 0xe3, 0x47, 0xd3, 0xda, 0xf4, 0x03, 0x12, 0xfd, 0x0c, 0x57, }; static const wycheproof_xdh_test xdh_wei448_3910 = { .name = "xdh_wei448_3910", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3910_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3910_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3910_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 306 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3911 for XDH, tcId is 307 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3911_peerpubkey[] = { 0x72, 0x9a, 0x92, 0x3f, 0xa0, 0x7c, 0x83, 0xb1, 0x8c, 0x62, 0x2b, 0x9f, 0x9f, 0x86, 0x9a, 0x2d, 0xbf, 0xd3, 0x46, 0x0a, 0x1c, 0xa3, 0x4a, 0x07, 0xa9, 0xb2, 0xdd, 0xd2, 0x55, 0xc0, 0x1c, 0xa8, 0x17, 0xa4, 0x75, 0xe4, 0xe4, 0x1b, 0xdd, 0xe0, 0x6e, 0x21, 0xc1, 0x1a, 0x73, 0xb7, 0x74, 0x0d, 0xc3, 0xbe, 0xe0, 0x07, 0x6e, 0x41, 0x58, 0x21, }; static const unsigned char xdh_wei448_3911_privkey[] = { 0xe0, 0xaa, 0xa7, 0xb6, 0x25, 0x9c, 0x53, 0xaa, 0x11, 0xe4, 0xb2, 0xf2, 0xb2, 0xb7, 0x8b, 0x8a, 0xd3, 0x6a, 0xf7, 0x8f, 0xb4, 0xf7, 0xb8, 0xaa, 0x51, 0x58, 0xf7, 0x7d, 0x76, 0x96, 0xf1, 0xf0, 0x1b, 0x51, 0x84, 0x95, 0x18, 0xa5, 0xc7, 0x98, 0xb4, 0x84, 0x79, 0x81, 0x6f, 0x88, 0x44, 0xce, 0xd2, 0xad, 0x57, 0x68, 0xae, 0xce, 0xc6, 0xbb, }; static const unsigned char xdh_wei448_3911_sharedsecret[] = { 0xd4, 0x0b, 0xc5, 0x54, 0xaf, 0x8c, 0x4a, 0x13, 0x9f, 0xf8, 0xc5, 0xd4, 0x35, 0xe8, 0x92, 0x98, 0x3b, 0x5d, 0x79, 0x86, 0xb6, 0x7b, 0x60, 0x4d, 0xbd, 0xc6, 0x5b, 0x60, 0x52, 0x57, 0x00, 0xbe, 0x60, 0x10, 0xc6, 0x59, 0x48, 0x27, 0xd6, 0x47, 0x10, 0x78, 0x98, 0x2f, 0xd3, 0x83, 0x5a, 0x18, 0x43, 0xed, 0x28, 0xcf, 0x66, 0xb3, 0xc5, 0xf7, }; static const wycheproof_xdh_test xdh_wei448_3911 = { .name = "xdh_wei448_3911", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3911_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3911_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3911_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 5, tcId is 307 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3912 for XDH, tcId is 308 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3912_peerpubkey[] = { 0x17, 0x95, 0xd9, 0x34, 0x69, 0xd7, 0x04, 0x4a, 0xba, 0xdc, 0xa6, 0x04, 0xbb, 0x8b, 0x97, 0x21, 0x4e, 0x79, 0xa5, 0xbb, 0xb1, 0x4d, 0xc1, 0x2f, 0xa9, 0xc5, 0x6e, 0x30, 0x27, 0xe4, 0xe4, 0x64, 0xac, 0x99, 0x8a, 0xb8, 0xe0, 0xdb, 0xb1, 0x15, 0x19, 0x34, 0xad, 0x3c, 0x70, 0x98, 0x30, 0xae, 0x85, 0x61, 0xcf, 0x25, 0xc2, 0x2c, 0x02, 0xc1, }; static const unsigned char xdh_wei448_3912_privkey[] = { 0x38, 0x6f, 0x45, 0x02, 0xaa, 0x94, 0xc2, 0x96, 0xec, 0xf0, 0xd4, 0xc2, 0x4d, 0x43, 0x33, 0x02, 0x88, 0x13, 0x58, 0x08, 0x31, 0x49, 0x4d, 0x43, 0xcb, 0xe0, 0x0a, 0x0f, 0xb2, 0xd8, 0x3e, 0x29, 0x6c, 0x97, 0x53, 0xa9, 0xb8, 0x80, 0x9b, 0xc8, 0x04, 0x21, 0xb5, 0xd9, 0x3e, 0xc9, 0x3e, 0x79, 0x4e, 0xe4, 0x12, 0xff, 0xac, 0xb8, 0x7c, 0xa5, }; static const unsigned char xdh_wei448_3912_sharedsecret[] = { 0xe5, 0x82, 0x50, 0x0f, 0xa1, 0x94, 0x30, 0xb1, 0x92, 0xcd, 0xa9, 0x9a, 0x08, 0x97, 0x18, 0xc9, 0x23, 0xcb, 0xd7, 0xe5, 0x4d, 0x5c, 0x19, 0x0c, 0x28, 0x54, 0x6f, 0x79, 0xf9, 0x65, 0xe8, 0x9d, 0x73, 0xf7, 0x2a, 0x4c, 0x16, 0x13, 0x62, 0x9e, 0x6c, 0x39, 0x06, 0x22, 0xae, 0x89, 0xf7, 0x07, 0xa6, 0x7b, 0x73, 0xd5, 0xb0, 0x9f, 0x9d, 0x9a, }; static const wycheproof_xdh_test xdh_wei448_3912 = { .name = "xdh_wei448_3912", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3912_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3912_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3912_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 308 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3913 for XDH, tcId is 309 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3913_peerpubkey[] = { 0xd5, 0x15, 0x03, 0x5b, 0x93, 0x52, 0x73, 0x8e, 0x6e, 0xe3, 0x6c, 0x8e, 0x2f, 0xcc, 0x99, 0x6e, 0x1c, 0xb4, 0x8c, 0x83, 0x68, 0xab, 0xe5, 0xb1, 0x29, 0xf4, 0x12, 0x63, 0x97, 0xf7, 0x33, 0x00, 0x3e, 0xb3, 0x69, 0xd7, 0x9f, 0x2e, 0xe1, 0x6c, 0xbd, 0xe9, 0x2a, 0xf4, 0xf8, 0xad, 0xc7, 0x1a, 0xa8, 0x95, 0xd0, 0x15, 0x22, 0xd7, 0xdb, 0xcd, }; static const unsigned char xdh_wei448_3913_privkey[] = { 0x00, 0x61, 0xd8, 0x3e, 0xc2, 0x04, 0x5d, 0xc6, 0x89, 0xcb, 0x25, 0xd0, 0xe3, 0xf4, 0xb0, 0x4b, 0xc7, 0x4b, 0x9f, 0x19, 0x2b, 0x66, 0xaf, 0x3c, 0xb5, 0x0b, 0x02, 0xdc, 0xb0, 0x7a, 0x5e, 0x89, 0x4d, 0x10, 0x49, 0x78, 0x89, 0x73, 0x11, 0xaf, 0xe7, 0x86, 0xd9, 0xf5, 0x72, 0xd1, 0x20, 0x68, 0xee, 0x0c, 0x55, 0xf8, 0xae, 0xa7, 0x96, 0xad, }; static const unsigned char xdh_wei448_3913_sharedsecret[] = { 0xf7, 0x67, 0x3b, 0xa8, 0x35, 0x39, 0x1a, 0x22, 0x41, 0xad, 0x03, 0x3f, 0xb6, 0x43, 0x1e, 0xd3, 0xad, 0x34, 0x6e, 0x10, 0x10, 0x4e, 0x40, 0x45, 0xa7, 0x08, 0x52, 0xcc, 0xe3, 0xcc, 0x83, 0x44, 0x10, 0x45, 0xa8, 0xa7, 0xe0, 0x5b, 0xf0, 0x31, 0x35, 0x1b, 0x50, 0xe0, 0x2d, 0xb6, 0xe0, 0x86, 0xe1, 0xc4, 0x63, 0xcb, 0xf6, 0x16, 0x6d, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_3913 = { .name = "xdh_wei448_3913", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3913_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3913_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3913_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 309 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3914 for XDH, tcId is 310 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3914_peerpubkey[] = { 0xf4, 0xdb, 0xc2, 0x89, 0x83, 0xcf, 0xd8, 0x64, 0xa3, 0xd7, 0x52, 0xda, 0xe7, 0x42, 0x48, 0x4f, 0x7e, 0xcc, 0x55, 0xb5, 0xd3, 0xb4, 0xfc, 0x4b, 0x0f, 0x48, 0x4d, 0x64, 0x00, 0x56, 0x97, 0x7c, 0x87, 0x3c, 0x5c, 0xf0, 0x15, 0x34, 0x7b, 0xc1, 0xb0, 0xbf, 0xc9, 0x4c, 0x58, 0x97, 0xfa, 0x6e, 0xbb, 0xb6, 0xc1, 0x05, 0x50, 0x61, 0x10, 0xd7, }; static const unsigned char xdh_wei448_3914_privkey[] = { 0x30, 0x50, 0xe8, 0x52, 0xb4, 0x4e, 0x68, 0xc9, 0x87, 0xda, 0xd6, 0x8e, 0x51, 0x2d, 0xcb, 0xad, 0x7f, 0xdb, 0x99, 0x9d, 0x99, 0x2c, 0x2c, 0xcc, 0x2e, 0x3c, 0xcc, 0x23, 0x9d, 0xdf, 0x44, 0x17, 0x50, 0xea, 0x0b, 0x20, 0x5d, 0x67, 0x99, 0x42, 0x25, 0x67, 0xcf, 0xa3, 0x41, 0x5c, 0x5d, 0x2c, 0x05, 0x4e, 0x2c, 0x51, 0x32, 0xcd, 0xdc, 0xa8, }; static const unsigned char xdh_wei448_3914_sharedsecret[] = { 0xfc, 0x4d, 0x51, 0x4f, 0xa4, 0x1c, 0xe0, 0x1b, 0x8f, 0x75, 0x6b, 0xc5, 0x55, 0x9e, 0xb8, 0x5d, 0xc4, 0xaf, 0xa4, 0x86, 0xe5, 0xf7, 0x2c, 0x4c, 0x69, 0x5c, 0x6c, 0x87, 0xd8, 0x98, 0x13, 0xd0, 0x8e, 0x9f, 0xbe, 0x3c, 0xcc, 0x71, 0xd0, 0xe2, 0xb3, 0x94, 0xda, 0x3a, 0xf8, 0x6c, 0x6e, 0x3f, 0x5e, 0x2f, 0x03, 0x80, 0x4a, 0xdf, 0x19, 0x37, }; static const wycheproof_xdh_test xdh_wei448_3914 = { .name = "xdh_wei448_3914", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3914_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3914_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3914_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 5, tcId is 310 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3915 for XDH, tcId is 311 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3915_peerpubkey[] = { 0xbb, 0x7f, 0xfe, 0x8b, 0xc4, 0x25, 0x6e, 0xa7, 0xbe, 0x81, 0x8f, 0xf5, 0x33, 0x9f, 0xa6, 0x1f, 0xb6, 0xf8, 0x44, 0x09, 0xb6, 0x51, 0x2a, 0x82, 0xa5, 0x06, 0x38, 0x7f, 0x9a, 0x8f, 0xc2, 0x16, 0x52, 0xf4, 0x77, 0x2d, 0x7a, 0x01, 0x8a, 0x81, 0x24, 0x18, 0x39, 0x26, 0x1c, 0xbf, 0xd2, 0xc5, 0xc7, 0x33, 0x70, 0xb8, 0x56, 0x02, 0x60, 0x12, }; static const unsigned char xdh_wei448_3915_privkey[] = { 0x38, 0xc7, 0x43, 0x50, 0x07, 0x0f, 0xbe, 0x66, 0x2e, 0xfb, 0xbe, 0xd8, 0x36, 0x85, 0xb9, 0xe2, 0x39, 0x3e, 0x6d, 0xfd, 0xa3, 0x4f, 0x52, 0x82, 0xcd, 0x9a, 0x90, 0x23, 0xba, 0x76, 0xd1, 0xa5, 0xa2, 0x2d, 0x59, 0xdb, 0x9d, 0x4d, 0x2f, 0xbd, 0xf2, 0x17, 0x03, 0xe6, 0x22, 0x94, 0xb6, 0xa1, 0xf5, 0x81, 0x07, 0x57, 0x8b, 0x63, 0x65, 0xad, }; static const unsigned char xdh_wei448_3915_sharedsecret[] = { 0xcf, 0xcd, 0x10, 0x53, 0x40, 0x65, 0xd1, 0xba, 0xa0, 0x5e, 0xe9, 0x0b, 0xaf, 0xe2, 0x65, 0x90, 0x62, 0x27, 0x8b, 0x8f, 0x6e, 0x1d, 0x12, 0xfd, 0x74, 0xc0, 0x52, 0xb6, 0xa0, 0xb8, 0x3e, 0x7a, 0x68, 0x8c, 0xed, 0xe5, 0xf2, 0xe4, 0x9b, 0x01, 0xc7, 0x8c, 0xb5, 0xc7, 0x3f, 0xe9, 0x06, 0x23, 0x94, 0x18, 0x2f, 0x4f, 0x6f, 0x39, 0x8a, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_3915 = { .name = "xdh_wei448_3915", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3915_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3915_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3915_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 311 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3916 for XDH, tcId is 312 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3916_peerpubkey[] = { 0x04, 0x1e, 0x0a, 0xa7, 0x5e, 0x8f, 0xb7, 0x41, 0xec, 0xba, 0xab, 0x1c, 0x8c, 0x35, 0x10, 0x7e, 0x28, 0xfb, 0x93, 0xbb, 0xb2, 0x80, 0x7a, 0xb6, 0x31, 0x41, 0xb0, 0xcc, 0x62, 0xbc, 0x6d, 0x60, 0x1b, 0x40, 0x91, 0xed, 0x04, 0xb7, 0x8c, 0x46, 0xb5, 0x80, 0xb7, 0x85, 0xbc, 0xd2, 0x15, 0xf6, 0x53, 0x26, 0x42, 0x1f, 0xe5, 0xf8, 0xa5, 0x84, }; static const unsigned char xdh_wei448_3916_privkey[] = { 0xf8, 0x5e, 0xe5, 0x97, 0x7b, 0x6a, 0x05, 0xbd, 0xbc, 0x53, 0x98, 0x2b, 0x1b, 0x81, 0xb9, 0xe2, 0xc2, 0x1b, 0xa6, 0xd4, 0x40, 0x93, 0xee, 0x8c, 0x6e, 0xd3, 0x0a, 0x2b, 0x63, 0xda, 0xf5, 0xab, 0x4d, 0x4b, 0xf7, 0x14, 0xe1, 0x02, 0xb7, 0xe5, 0x9f, 0x9d, 0x09, 0x66, 0x20, 0x38, 0xbe, 0x26, 0x13, 0x83, 0xc5, 0x06, 0xc1, 0x98, 0x3c, 0xa6, }; static const unsigned char xdh_wei448_3916_sharedsecret[] = { 0x20, 0x21, 0xed, 0x9f, 0xa8, 0x01, 0xd8, 0x62, 0x20, 0xa6, 0x1a, 0x33, 0xaf, 0xbb, 0x7a, 0x03, 0x67, 0x5d, 0x23, 0x42, 0x6b, 0x10, 0x75, 0x5c, 0x44, 0xe4, 0x16, 0x71, 0xbc, 0x45, 0x4b, 0x60, 0x5c, 0xab, 0x34, 0x30, 0x68, 0xc4, 0xa9, 0x70, 0xf2, 0x29, 0x71, 0x2d, 0x84, 0x67, 0x0f, 0x06, 0x12, 0xd2, 0x56, 0xec, 0x00, 0xf9, 0xf8, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_3916 = { .name = "xdh_wei448_3916", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3916_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3916_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3916_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 312 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3917 for XDH, tcId is 313 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3917_peerpubkey[] = { 0xff, 0x1e, 0x23, 0xf8, 0xe3, 0x6b, 0x5f, 0x31, 0x7f, 0x7f, 0x38, 0x33, 0x25, 0xce, 0x34, 0x81, 0xb3, 0xeb, 0x07, 0xc4, 0x61, 0x5a, 0x25, 0x31, 0xbd, 0x12, 0xea, 0xb4, 0x54, 0xac, 0xec, 0xab, 0x6a, 0x00, 0x05, 0x2e, 0x68, 0x5c, 0xb5, 0x51, 0x00, 0xd7, 0xc7, 0xf6, 0xd9, 0x18, 0x08, 0x2e, 0xcb, 0x57, 0xc6, 0x83, 0xe5, 0xb8, 0x64, 0x9c, }; static const unsigned char xdh_wei448_3917_privkey[] = { 0xbc, 0x8e, 0x01, 0x09, 0xc6, 0x7a, 0x98, 0x29, 0x0f, 0x93, 0x29, 0x68, 0x65, 0xcb, 0x7d, 0x6c, 0x67, 0x8c, 0x56, 0xd6, 0x35, 0xcf, 0x9e, 0xd1, 0x8d, 0xa3, 0xea, 0x72, 0x26, 0xe6, 0xa0, 0x2a, 0x8a, 0x3f, 0x6b, 0x1b, 0x45, 0x80, 0x7a, 0x08, 0x0d, 0x69, 0x9f, 0x1b, 0xe0, 0x78, 0x64, 0xea, 0x8c, 0x8b, 0x83, 0x94, 0xaa, 0x75, 0x1c, 0xab, }; static const unsigned char xdh_wei448_3917_sharedsecret[] = { 0x23, 0x43, 0x7b, 0x39, 0x30, 0x1e, 0xe8, 0xcf, 0xc7, 0xd3, 0x92, 0xc6, 0x28, 0x72, 0xe3, 0xdc, 0x86, 0x89, 0x6c, 0xc2, 0xcf, 0x6e, 0x4d, 0x9f, 0xe4, 0x77, 0xad, 0xe5, 0xce, 0xfd, 0x6c, 0x34, 0xb8, 0x08, 0x3a, 0x28, 0x68, 0x20, 0x4f, 0x67, 0x2e, 0xb7, 0xf0, 0x33, 0x4a, 0xd7, 0x41, 0xf3, 0xf8, 0xb9, 0xd0, 0x67, 0xa3, 0x3a, 0xbe, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3917 = { .name = "xdh_wei448_3917", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3917_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3917_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3917_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 313 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3918 for XDH, tcId is 314 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3918_peerpubkey[] = { 0x96, 0xbe, 0x7b, 0xa9, 0xc9, 0x6e, 0x0a, 0xb6, 0x09, 0xa5, 0xb3, 0x01, 0xdf, 0xf3, 0xc7, 0x30, 0x2b, 0x94, 0x48, 0x3a, 0xef, 0x83, 0xd3, 0x0b, 0xd0, 0xde, 0x25, 0xd4, 0x49, 0x4d, 0xd3, 0xa6, 0x66, 0xad, 0xa1, 0x67, 0x76, 0xb7, 0xd7, 0xfa, 0x4d, 0x75, 0x49, 0x74, 0xf4, 0x1f, 0x34, 0x84, 0x78, 0x14, 0x3d, 0x1d, 0x6d, 0x54, 0xac, 0xa7, }; static const unsigned char xdh_wei448_3918_privkey[] = { 0x24, 0x59, 0x67, 0x0e, 0x6f, 0xd0, 0xd3, 0x2c, 0x81, 0x75, 0x5a, 0x93, 0x44, 0x5a, 0xd4, 0x54, 0xc9, 0x01, 0x4f, 0xc2, 0x79, 0x77, 0x64, 0xbb, 0x28, 0xd2, 0x25, 0x21, 0x4f, 0x1c, 0xc3, 0x3c, 0x36, 0x24, 0xec, 0x10, 0xd2, 0xc6, 0xb0, 0x30, 0xa7, 0x61, 0x36, 0x43, 0x12, 0xf9, 0xc9, 0xbf, 0x16, 0xf4, 0x2a, 0xcd, 0x50, 0x52, 0x11, 0xb9, }; static const unsigned char xdh_wei448_3918_sharedsecret[] = { 0xa0, 0xa7, 0x67, 0xf9, 0x56, 0x17, 0x85, 0x90, 0x3b, 0x8a, 0x4e, 0x06, 0xd5, 0x1c, 0x95, 0xeb, 0xf3, 0x5d, 0x16, 0xdd, 0xef, 0xf4, 0x90, 0x92, 0xae, 0x1d, 0x9f, 0xc9, 0xb4, 0xa7, 0xdb, 0x32, 0x92, 0xdc, 0x35, 0x48, 0x90, 0xee, 0x4b, 0x04, 0x38, 0x72, 0xac, 0x67, 0xf7, 0x04, 0xd5, 0x80, 0x83, 0x38, 0xd8, 0xd0, 0x04, 0x8b, 0x86, 0x7f, }; static const wycheproof_xdh_test xdh_wei448_3918 = { .name = "xdh_wei448_3918", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3918_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3918_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3918_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 314 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3919 for XDH, tcId is 315 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3919_peerpubkey[] = { 0xdd, 0xc4, 0xbc, 0x16, 0xd8, 0x9b, 0x9e, 0x67, 0x19, 0xcc, 0x97, 0x9c, 0xcb, 0x33, 0x93, 0x58, 0x5b, 0x42, 0xdc, 0xb2, 0xd8, 0xed, 0xea, 0x8c, 0x4e, 0x6c, 0x61, 0x50, 0xbb, 0x67, 0x04, 0xfc, 0xa9, 0xbb, 0x48, 0x32, 0x12, 0x28, 0x12, 0x24, 0x9d, 0x67, 0x19, 0xf0, 0x45, 0x37, 0x51, 0xce, 0x24, 0x66, 0xbb, 0x11, 0x58, 0xf6, 0xf0, 0xe4, }; static const unsigned char xdh_wei448_3919_privkey[] = { 0xec, 0x9f, 0xf8, 0xce, 0xa3, 0xaa, 0x8a, 0xd6, 0xa9, 0x57, 0x01, 0x19, 0xda, 0xa1, 0x07, 0x03, 0x5f, 0xae, 0x2a, 0xae, 0x7e, 0x8b, 0x6a, 0xc7, 0xb5, 0x02, 0x39, 0x16, 0x05, 0x52, 0x91, 0x53, 0x25, 0xe0, 0x5f, 0x94, 0x66, 0xcd, 0x44, 0xa4, 0x31, 0x4a, 0xa2, 0xbd, 0x8a, 0x78, 0xb1, 0x6f, 0xc7, 0x4b, 0x18, 0xd6, 0x62, 0xdc, 0xd9, 0xa5, }; static const unsigned char xdh_wei448_3919_sharedsecret[] = { 0x5a, 0x7d, 0xc0, 0x0f, 0xb2, 0x06, 0xfe, 0xbc, 0x3a, 0xbf, 0xf3, 0x6c, 0x57, 0xed, 0x8b, 0x88, 0x8e, 0x8b, 0xe6, 0xd2, 0x79, 0xf0, 0x92, 0x54, 0xb7, 0x9b, 0x1a, 0x02, 0x0c, 0x13, 0xc4, 0x2d, 0x8c, 0x94, 0xd6, 0x4d, 0xcd, 0xa8, 0x92, 0xd3, 0x45, 0x2c, 0x00, 0x22, 0x0b, 0xd5, 0x19, 0x9b, 0x23, 0x9b, 0xbd, 0xb2, 0xad, 0x6c, 0xb0, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_3919 = { .name = "xdh_wei448_3919", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3919_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3919_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3919_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 5, tcId is 315 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3920 for XDH, tcId is 316 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3920_peerpubkey[] = { 0x6d, 0x66, 0x81, 0x44, 0xc2, 0xbb, 0x25, 0x96, 0x18, 0xfc, 0xe4, 0x97, 0x94, 0x4e, 0x68, 0xf8, 0x36, 0xf6, 0xb4, 0x34, 0x92, 0x68, 0x3e, 0x25, 0xc0, 0x86, 0x55, 0x1c, 0xd9, 0x74, 0xf1, 0xae, 0x34, 0xbe, 0x58, 0x48, 0x38, 0x23, 0xb2, 0x92, 0x18, 0x57, 0x4c, 0xe7, 0x05, 0xc6, 0x49, 0x4b, 0x5b, 0x92, 0x17, 0xc8, 0xfb, 0xcc, 0xe8, 0xe9, }; static const unsigned char xdh_wei448_3920_privkey[] = { 0xb0, 0x19, 0x30, 0x22, 0x58, 0x0d, 0x05, 0x7d, 0xaa, 0x8b, 0x92, 0x25, 0xd0, 0x85, 0x49, 0x56, 0x2f, 0x1f, 0xe3, 0x3f, 0xe4, 0x74, 0xdb, 0xb1, 0xc1, 0x77, 0xa2, 0x97, 0xc3, 0xb5, 0x4d, 0xbe, 0x3e, 0x3a, 0xcc, 0x23, 0xb9, 0xd7, 0x42, 0xe2, 0x2b, 0x00, 0x69, 0x8e, 0xd0, 0x80, 0x4d, 0x35, 0x01, 0x89, 0xd2, 0x09, 0xa9, 0xf0, 0x48, 0xab, }; static const unsigned char xdh_wei448_3920_sharedsecret[] = { 0x36, 0x45, 0x39, 0x0c, 0xe6, 0x49, 0xcf, 0x24, 0x8d, 0x8d, 0x17, 0x19, 0x34, 0x22, 0x6a, 0xe4, 0x38, 0x09, 0xbc, 0x61, 0x4b, 0x72, 0x3f, 0x61, 0x12, 0x8d, 0xca, 0x56, 0x28, 0x45, 0x28, 0x44, 0xe7, 0xe9, 0xa3, 0x76, 0x15, 0x73, 0xbf, 0x4b, 0x59, 0x2d, 0xdc, 0x0d, 0xf0, 0xa1, 0x2d, 0xff, 0x90, 0x10, 0x3f, 0xa1, 0xfa, 0x61, 0x6c, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3920 = { .name = "xdh_wei448_3920", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3920_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3920_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3920_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 316 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3921 for XDH, tcId is 317 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3921_peerpubkey[] = { 0x9b, 0xdb, 0x0b, 0x57, 0x30, 0x85, 0xb3, 0xdf, 0x64, 0x0b, 0x7e, 0xbd, 0xf3, 0x43, 0xbb, 0xed, 0xe2, 0xca, 0x09, 0xac, 0x4e, 0x75, 0xb5, 0xe9, 0xe4, 0x62, 0x4b, 0xc4, 0xf7, 0x1d, 0x68, 0xea, 0x72, 0x4d, 0xbf, 0xf4, 0x7f, 0x72, 0x42, 0x48, 0xfe, 0x5c, 0xcc, 0x28, 0x5d, 0x96, 0x0b, 0x6f, 0xc9, 0x79, 0x04, 0x30, 0xa3, 0xa5, 0x21, 0xf6, }; static const unsigned char xdh_wei448_3921_privkey[] = { 0x58, 0xed, 0xe3, 0xfd, 0x60, 0xae, 0x61, 0x9c, 0x35, 0x3e, 0x39, 0x4f, 0x2a, 0x78, 0xaf, 0x92, 0x92, 0x30, 0x56, 0x90, 0xc6, 0x92, 0x32, 0x27, 0xc2, 0xf0, 0xce, 0xa0, 0x85, 0xf8, 0xc1, 0x1e, 0x51, 0x33, 0xbb, 0x56, 0x16, 0x4e, 0x5d, 0x41, 0xfe, 0x63, 0xba, 0x22, 0x99, 0x8b, 0x0f, 0x35, 0x1b, 0x7c, 0x81, 0xa3, 0x63, 0x05, 0x95, 0xa9, }; static const unsigned char xdh_wei448_3921_sharedsecret[] = { 0x3e, 0xfc, 0x48, 0xb8, 0x50, 0x74, 0x43, 0xc4, 0x1d, 0xf8, 0xc1, 0x07, 0x7a, 0xa5, 0xc7, 0x9c, 0xa1, 0xe9, 0x88, 0x1d, 0x64, 0xb4, 0x47, 0x75, 0xf8, 0x77, 0xff, 0x7c, 0x70, 0x7f, 0xb1, 0x86, 0x2f, 0xd7, 0xf7, 0x9d, 0x50, 0x36, 0x0e, 0x6a, 0xdc, 0x19, 0xc2, 0x28, 0x26, 0xff, 0x23, 0x14, 0xdb, 0xfd, 0x16, 0x8e, 0x0e, 0xec, 0x25, 0xa8, }; static const wycheproof_xdh_test xdh_wei448_3921 = { .name = "xdh_wei448_3921", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3921_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3921_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3921_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 5, tcId is 317 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3922 for XDH, tcId is 318 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3922_peerpubkey[] = { 0xfd, 0x1e, 0xad, 0x12, 0xe7, 0x90, 0x3a, 0x0d, 0x7c, 0xfe, 0x9d, 0xef, 0x3d, 0xa3, 0x95, 0xac, 0xcf, 0x68, 0x84, 0xa5, 0x33, 0xb6, 0xf9, 0xde, 0x30, 0x74, 0x54, 0x8e, 0x04, 0x7e, 0x39, 0x4f, 0xe4, 0x1f, 0x8f, 0xca, 0x96, 0x6d, 0xf7, 0x3e, 0xcc, 0xd8, 0x1d, 0xfc, 0xcd, 0xc7, 0x13, 0x62, 0x8c, 0x9d, 0x78, 0x27, 0x56, 0x28, 0x53, 0xaa, }; static const unsigned char xdh_wei448_3922_privkey[] = { 0xc0, 0x1b, 0xe8, 0xec, 0x9f, 0x3e, 0x48, 0xf8, 0x3b, 0xd7, 0x91, 0xb5, 0x3e, 0x52, 0x11, 0xc2, 0xb4, 0xdb, 0x5f, 0xe3, 0xad, 0x07, 0xd0, 0xd2, 0xc1, 0xa8, 0xcd, 0x55, 0x6a, 0x6f, 0x5e, 0x85, 0xfa, 0xc1, 0xfc, 0x8a, 0xec, 0x68, 0xbe, 0x8d, 0x96, 0xa8, 0xea, 0xfa, 0xab, 0xbd, 0x5b, 0xde, 0x6a, 0x46, 0xda, 0x39, 0x66, 0x50, 0xf8, 0xb3, }; static const unsigned char xdh_wei448_3922_sharedsecret[] = { 0xf9, 0xe4, 0x59, 0x53, 0x3a, 0x86, 0xcc, 0xc6, 0xf9, 0xba, 0xf4, 0xc3, 0xfc, 0xc9, 0x6e, 0x5b, 0x07, 0xbc, 0x5f, 0xbd, 0xe8, 0x46, 0xa3, 0x38, 0xce, 0xc8, 0xbc, 0xa4, 0x69, 0x00, 0x11, 0xe1, 0x99, 0x5f, 0xef, 0x31, 0xfb, 0x7d, 0xd3, 0xce, 0x31, 0xf4, 0x98, 0xa8, 0x66, 0xc6, 0xb1, 0xeb, 0x59, 0x5a, 0x8f, 0x22, 0xa8, 0x45, 0x20, 0x28, }; static const wycheproof_xdh_test xdh_wei448_3922 = { .name = "xdh_wei448_3922", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3922_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3922_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3922_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 318 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3923 for XDH, tcId is 319 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3923_peerpubkey[] = { 0x65, 0x35, 0x00, 0xf4, 0x1c, 0xc9, 0x14, 0xee, 0x7b, 0x24, 0x9d, 0x29, 0x3e, 0x3e, 0x60, 0xf5, 0xb2, 0x3d, 0xd6, 0x27, 0x17, 0xde, 0x18, 0xec, 0xc0, 0x65, 0xce, 0x1c, 0x3f, 0x0e, 0x62, 0xea, 0xa5, 0x3a, 0xeb, 0x40, 0xff, 0x91, 0x4f, 0x6e, 0x28, 0x3a, 0x26, 0x4e, 0x38, 0x4f, 0x86, 0xc8, 0xda, 0x96, 0xa2, 0x87, 0x49, 0x93, 0x61, 0xd8, }; static const unsigned char xdh_wei448_3923_privkey[] = { 0x18, 0x11, 0xae, 0x99, 0xd3, 0xa3, 0x67, 0xfd, 0xe2, 0x6f, 0xef, 0xeb, 0x3a, 0xd6, 0x2c, 0x7a, 0xe2, 0x1f, 0x65, 0x00, 0xa0, 0x09, 0xd4, 0x34, 0x35, 0x7d, 0xa5, 0x9b, 0x42, 0x27, 0xe6, 0xab, 0xe2, 0x80, 0xbe, 0x9f, 0xba, 0xee, 0x96, 0x48, 0x17, 0x2e, 0xc7, 0xd5, 0x4d, 0x81, 0xfc, 0x37, 0x6a, 0x63, 0xbe, 0x59, 0x1a, 0x48, 0x9f, 0xa0, }; static const unsigned char xdh_wei448_3923_sharedsecret[] = { 0xc2, 0xbc, 0x97, 0xf6, 0x8f, 0xf5, 0xc2, 0x37, 0x08, 0xd2, 0x82, 0x88, 0x3c, 0x20, 0xc8, 0xd9, 0x07, 0x9b, 0xaf, 0x06, 0xd7, 0x2e, 0x63, 0x2b, 0x46, 0x49, 0xea, 0x11, 0x3f, 0xb2, 0x87, 0x9f, 0x86, 0x40, 0xa2, 0x1d, 0x44, 0x85, 0x1f, 0x1a, 0xbf, 0x3e, 0x48, 0x7f, 0x2d, 0x65, 0xc8, 0x44, 0x6d, 0x32, 0xf6, 0x6b, 0x5e, 0xa9, 0xff, 0xb7, }; static const wycheproof_xdh_test xdh_wei448_3923 = { .name = "xdh_wei448_3923", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3923_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3923_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3923_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 5, tcId is 319 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3924 for XDH, tcId is 320 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3924_peerpubkey[] = { 0xc1, 0x39, 0xba, 0x0b, 0xb5, 0xca, 0x96, 0x36, 0x09, 0x28, 0x6b, 0x50, 0xaf, 0xf9, 0xc3, 0xb2, 0x4c, 0x70, 0x51, 0x2c, 0x04, 0x07, 0xd9, 0x5a, 0x6a, 0xa7, 0x6f, 0x07, 0x4e, 0x4e, 0x34, 0x38, 0xab, 0x03, 0x8a, 0x9d, 0x68, 0x05, 0xe6, 0xb0, 0x1c, 0x4c, 0xa0, 0xc6, 0x23, 0xf8, 0xb5, 0x0e, 0xe5, 0xb7, 0x57, 0xa8, 0x3c, 0xfb, 0xbf, 0x02, }; static const unsigned char xdh_wei448_3924_privkey[] = { 0xdc, 0x40, 0x76, 0x80, 0x5c, 0x6d, 0x33, 0xa4, 0x54, 0xb2, 0x97, 0xd0, 0x8e, 0xbc, 0x44, 0x70, 0x12, 0xe0, 0xf4, 0x45, 0x99, 0x27, 0x31, 0x6c, 0x30, 0xcf, 0x5a, 0xae, 0x25, 0x1a, 0xc1, 0x42, 0x0c, 0xbc, 0x04, 0xf2, 0x3f, 0xd8, 0x64, 0x6f, 0x96, 0xfa, 0xed, 0x9f, 0xd4, 0x61, 0x75, 0x06, 0xf9, 0xbf, 0xe8, 0xf8, 0x80, 0x5a, 0x42, 0xdf, }; static const unsigned char xdh_wei448_3924_sharedsecret[] = { 0xb2, 0x0b, 0x6c, 0x99, 0x75, 0x13, 0x4a, 0xdc, 0x76, 0x8f, 0xcf, 0x27, 0xfd, 0x90, 0x3a, 0x17, 0xa7, 0x52, 0x56, 0x74, 0xc4, 0xf6, 0xad, 0x12, 0x60, 0x0a, 0xe5, 0xaa, 0x30, 0xf7, 0x8f, 0xad, 0x69, 0x10, 0x8c, 0x88, 0xcb, 0x8e, 0x68, 0xec, 0xbd, 0x00, 0x55, 0xbc, 0x6c, 0xa1, 0xce, 0xd4, 0x69, 0x18, 0xe4, 0x7c, 0x8a, 0x90, 0xa9, 0x4c, }; static const wycheproof_xdh_test xdh_wei448_3924 = { .name = "xdh_wei448_3924", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3924_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3924_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3924_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 320 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3925 for XDH, tcId is 321 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3925_peerpubkey[] = { 0x1a, 0x70, 0xd9, 0x23, 0xb5, 0xed, 0x73, 0xbf, 0x71, 0xa6, 0x5b, 0x47, 0xfe, 0xe7, 0xe7, 0x95, 0xb9, 0xc4, 0xcf, 0x4d, 0xb6, 0x18, 0xf6, 0x83, 0xfa, 0xc0, 0x3a, 0x70, 0xba, 0x23, 0x30, 0x02, 0x47, 0xd1, 0x4c, 0xfe, 0xba, 0xea, 0xb6, 0xb3, 0xab, 0xf0, 0xf1, 0x40, 0xe3, 0xd4, 0x8d, 0x54, 0xfd, 0x48, 0xba, 0x21, 0x3c, 0xc1, 0xfd, 0x04, }; static const unsigned char xdh_wei448_3925_privkey[] = { 0xa4, 0x8e, 0xbc, 0x73, 0x82, 0x70, 0x11, 0xfb, 0xe8, 0xd6, 0x32, 0xd8, 0xae, 0xa5, 0x7d, 0xf4, 0x4f, 0xa7, 0x03, 0xce, 0x27, 0x07, 0xb8, 0x09, 0x26, 0xad, 0x22, 0x8b, 0x5c, 0x2f, 0x25, 0x0b, 0xed, 0xbb, 0xc8, 0xf6, 0xd2, 0xd0, 0xb4, 0xe0, 0xa5, 0x6d, 0x65, 0x7e, 0xdd, 0x17, 0xee, 0x07, 0x19, 0xd0, 0xb3, 0xf1, 0x9d, 0x62, 0x16, 0xd4, }; static const unsigned char xdh_wei448_3925_sharedsecret[] = { 0x4e, 0xbf, 0xd3, 0x1f, 0x1c, 0xe1, 0xc8, 0x45, 0xfc, 0x3b, 0x36, 0x56, 0x93, 0x5c, 0x46, 0xc8, 0x8b, 0xbe, 0xf3, 0xbd, 0x23, 0x60, 0xaf, 0x50, 0x96, 0x50, 0xe0, 0x31, 0xb6, 0x5c, 0x72, 0x60, 0xaf, 0xb8, 0x46, 0xd0, 0xd6, 0x75, 0x63, 0x47, 0xc3, 0x89, 0xf7, 0x8d, 0xcf, 0x58, 0xde, 0x28, 0x0d, 0xd1, 0x0e, 0xc1, 0x40, 0xf2, 0x9e, 0x12, }; static const wycheproof_xdh_test xdh_wei448_3925 = { .name = "xdh_wei448_3925", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3925_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3925_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3925_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 321 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3926 for XDH, tcId is 322 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3926_peerpubkey[] = { 0xaa, 0x6f, 0xec, 0xaf, 0xff, 0x49, 0xda, 0xf6, 0x52, 0xe6, 0x35, 0x53, 0xbb, 0x2a, 0x24, 0xdf, 0xf2, 0xe3, 0x36, 0x09, 0x35, 0xf6, 0xe6, 0x63, 0xe5, 0xd0, 0xb9, 0x87, 0x3a, 0xfd, 0xcc, 0xd9, 0xce, 0x2f, 0xee, 0xd9, 0x70, 0x2d, 0x69, 0xec, 0x7f, 0xd2, 0x00, 0xb5, 0xf0, 0x50, 0x36, 0xd4, 0xd8, 0x38, 0xe3, 0x8a, 0xc3, 0xe3, 0x50, 0x19, }; static const unsigned char xdh_wei448_3926_privkey[] = { 0x80, 0xce, 0x00, 0xf3, 0x00, 0x61, 0x6a, 0x90, 0x39, 0xf9, 0xf7, 0xc2, 0x37, 0x92, 0xd3, 0xea, 0xd1, 0xf9, 0xf1, 0xc4, 0xcc, 0xb4, 0x97, 0xd8, 0x56, 0x3e, 0x43, 0xae, 0x26, 0xac, 0xb4, 0xea, 0x42, 0xf2, 0xd8, 0x74, 0x38, 0x92, 0x5c, 0xce, 0x52, 0x4f, 0xb7, 0x2f, 0xff, 0x48, 0x3c, 0xf0, 0x35, 0x45, 0x04, 0x3a, 0xe6, 0x1f, 0xc4, 0xdb, }; static const unsigned char xdh_wei448_3926_sharedsecret[] = { 0xd4, 0xd6, 0xb7, 0x77, 0x2f, 0x2c, 0xe6, 0x63, 0x08, 0x9a, 0x38, 0xd7, 0xa8, 0x13, 0xd9, 0x40, 0x96, 0x28, 0xaf, 0x72, 0x2e, 0x7e, 0x42, 0x65, 0x86, 0x36, 0xd8, 0x1b, 0x0d, 0x83, 0x67, 0x97, 0x5a, 0x77, 0xd0, 0x20, 0xb6, 0xc4, 0xb1, 0xbe, 0xc2, 0xb5, 0x5e, 0xa6, 0x9a, 0x08, 0x7c, 0xd1, 0xdb, 0xbf, 0x2b, 0xca, 0x33, 0xf5, 0xbc, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3926 = { .name = "xdh_wei448_3926", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3926_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3926_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3926_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 322 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3927 for XDH, tcId is 323 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3927_peerpubkey[] = { 0x82, 0x4d, 0x9b, 0xe2, 0x7c, 0xeb, 0xa9, 0x4d, 0x89, 0x86, 0xb6, 0x43, 0xf9, 0x76, 0x12, 0x36, 0xc5, 0x85, 0x5b, 0xb1, 0xb2, 0xe4, 0x52, 0x8a, 0x51, 0x1f, 0x29, 0x98, 0xb4, 0xe1, 0x6c, 0xd9, 0x3a, 0x7b, 0x18, 0x58, 0xcb, 0x55, 0x01, 0x9d, 0x77, 0x42, 0x06, 0x4d, 0x99, 0x3c, 0xa8, 0x02, 0xa3, 0xc8, 0xac, 0x17, 0x29, 0x5e, 0xcd, 0x2c, }; static const unsigned char xdh_wei448_3927_privkey[] = { 0x98, 0xcf, 0x8c, 0x51, 0x7e, 0x34, 0xd7, 0x71, 0xd9, 0xe0, 0x8c, 0xb9, 0x4d, 0xf8, 0x62, 0x80, 0xf6, 0x7e, 0x61, 0xdd, 0x7c, 0xff, 0x24, 0xbb, 0x32, 0x01, 0x37, 0xcf, 0x37, 0x0f, 0xd0, 0xb5, 0x88, 0x65, 0xdc, 0xf9, 0xbd, 0xee, 0x21, 0x8e, 0x51, 0xf5, 0x97, 0xd9, 0x13, 0xa5, 0xce, 0x25, 0xe0, 0xf9, 0x4b, 0x56, 0x61, 0x19, 0x31, 0xc5, }; static const unsigned char xdh_wei448_3927_sharedsecret[] = { 0x51, 0x7a, 0x8e, 0x2b, 0x66, 0xcf, 0xca, 0x84, 0x9c, 0x3c, 0xb8, 0xee, 0xe2, 0x8c, 0x45, 0x50, 0x50, 0xba, 0xa4, 0x79, 0x93, 0x40, 0xb4, 0x77, 0xfd, 0x6d, 0xa9, 0x5a, 0x99, 0x41, 0xdf, 0x92, 0xc7, 0xe4, 0x0b, 0x7d, 0xf7, 0x3f, 0x92, 0x0a, 0xe2, 0x2e, 0x5f, 0xc2, 0xd1, 0x45, 0x50, 0x49, 0x28, 0x42, 0x5e, 0x5e, 0x38, 0xc5, 0xcc, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3927 = { .name = "xdh_wei448_3927", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3927_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3927_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3927_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 323 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3928 for XDH, tcId is 324 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3928_peerpubkey[] = { 0xb6, 0x78, 0x75, 0xad, 0xd6, 0xc1, 0xf7, 0x61, 0x23, 0x4e, 0x35, 0x2b, 0x70, 0xc4, 0x1d, 0x23, 0x9d, 0xd1, 0xe5, 0x2a, 0x9f, 0xa1, 0x1e, 0x9e, 0x84, 0x52, 0x85, 0x26, 0x7f, 0x43, 0x6a, 0xc8, 0x1b, 0x79, 0x72, 0x06, 0x7e, 0x84, 0x3b, 0x03, 0xa4, 0xc5, 0x2c, 0x7a, 0x3b, 0x5a, 0xec, 0xa2, 0xfc, 0x6d, 0x18, 0x4b, 0x84, 0x38, 0xa6, 0x53, }; static const unsigned char xdh_wei448_3928_privkey[] = { 0x50, 0x6e, 0x86, 0xb7, 0xcc, 0xa2, 0x85, 0x83, 0x14, 0x77, 0xd9, 0x22, 0xb7, 0x86, 0x2e, 0x97, 0xda, 0x29, 0x4d, 0xf3, 0x9b, 0xbc, 0x5d, 0x96, 0x78, 0xe4, 0xd8, 0x3b, 0x2f, 0xdc, 0xe5, 0x65, 0x0c, 0x91, 0x67, 0x3c, 0xfb, 0xfa, 0xfb, 0x99, 0xb0, 0x73, 0x88, 0x00, 0x5b, 0xc6, 0xf6, 0xcf, 0x77, 0x7a, 0x24, 0x42, 0xed, 0x43, 0x74, 0xcb, }; static const unsigned char xdh_wei448_3928_sharedsecret[] = { 0xee, 0xb6, 0x2c, 0x57, 0x18, 0x97, 0x17, 0x51, 0x8c, 0x4d, 0xd0, 0x68, 0x73, 0x59, 0x3e, 0x4b, 0x12, 0xa9, 0xc5, 0x08, 0x75, 0x08, 0x0f, 0x56, 0xd7, 0x81, 0xa3, 0xed, 0x3e, 0xf7, 0xd9, 0xda, 0xf3, 0x5d, 0x86, 0xc4, 0x11, 0x1a, 0x2d, 0xbe, 0x06, 0x57, 0x8f, 0xf6, 0xd3, 0xa6, 0x5d, 0xed, 0x0b, 0x18, 0x14, 0x60, 0x06, 0xcf, 0xaa, 0x1a, }; static const wycheproof_xdh_test xdh_wei448_3928 = { .name = "xdh_wei448_3928", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3928_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3928_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3928_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 324 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3929 for XDH, tcId is 325 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3929_peerpubkey[] = { 0xe5, 0xf9, 0x76, 0x38, 0x77, 0x9e, 0x27, 0xa9, 0x73, 0x7e, 0x08, 0x21, 0xd7, 0x71, 0x15, 0x85, 0xa9, 0x3f, 0x26, 0xdd, 0x52, 0x20, 0x8e, 0xd5, 0x36, 0x37, 0xd6, 0x74, 0xec, 0xe9, 0x66, 0x4f, 0xbb, 0xf3, 0x3e, 0x1c, 0xc4, 0xa3, 0x1f, 0x64, 0x30, 0xf1, 0x27, 0xc2, 0xf6, 0x0c, 0xb7, 0x6a, 0x1d, 0xef, 0xa6, 0xb6, 0xf7, 0x52, 0x47, 0x75, }; static const unsigned char xdh_wei448_3929_privkey[] = { 0xa0, 0x45, 0x4f, 0x58, 0x1e, 0x87, 0x8d, 0x6a, 0x3e, 0x04, 0x0f, 0x47, 0x69, 0xf2, 0x6d, 0x42, 0xd4, 0xb5, 0x5c, 0x25, 0x5b, 0xdd, 0x1e, 0xb2, 0x70, 0x76, 0x5d, 0x94, 0x9c, 0x49, 0x2f, 0x1c, 0x82, 0xc4, 0xd2, 0x3f, 0xec, 0x8b, 0x72, 0xd9, 0xcb, 0xbe, 0xd2, 0xdb, 0xc4, 0x0e, 0x23, 0xeb, 0x9f, 0x2b, 0x75, 0xf4, 0x91, 0xf4, 0xe2, 0xd2, }; static const unsigned char xdh_wei448_3929_sharedsecret[] = { 0x99, 0x57, 0x23, 0x6d, 0x86, 0x1e, 0xb7, 0x81, 0xc4, 0xc2, 0xd9, 0x15, 0x71, 0xb2, 0xa7, 0xb6, 0x9a, 0x51, 0xdd, 0x7d, 0x32, 0xcb, 0x53, 0x41, 0x8c, 0x33, 0x93, 0x3b, 0x81, 0x39, 0xbe, 0x72, 0x32, 0x95, 0xd2, 0x74, 0x44, 0xe3, 0x93, 0x69, 0x8c, 0x26, 0xb2, 0xc7, 0x84, 0xeb, 0x51, 0xfb, 0x8c, 0xf5, 0x3c, 0xcd, 0x3b, 0x41, 0x47, 0xed, }; static const wycheproof_xdh_test xdh_wei448_3929 = { .name = "xdh_wei448_3929", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3929_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3929_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3929_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 325 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3930 for XDH, tcId is 326 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3930_peerpubkey[] = { 0x89, 0xc6, 0x37, 0xa3, 0x88, 0x96, 0xa8, 0xb5, 0xa3, 0xc1, 0x6e, 0x71, 0xa3, 0x5c, 0x2c, 0x18, 0xe4, 0x2d, 0x4a, 0x66, 0xd9, 0x71, 0xe3, 0x13, 0xc4, 0x62, 0xe7, 0xcc, 0x0c, 0x63, 0x2f, 0xea, 0x67, 0x0a, 0xb4, 0xc6, 0x0f, 0x49, 0xe8, 0x01, 0xd0, 0x18, 0x09, 0x70, 0x88, 0x8c, 0x33, 0x21, 0xb6, 0x61, 0xf3, 0x53, 0x1b, 0x0f, 0xe6, 0x76, }; static const unsigned char xdh_wei448_3930_privkey[] = { 0x54, 0xda, 0x02, 0x65, 0x68, 0xfc, 0x41, 0xef, 0x64, 0x9a, 0x51, 0xfd, 0x78, 0x40, 0x58, 0xf1, 0x91, 0x8c, 0x1a, 0x1f, 0x06, 0x98, 0xaa, 0xb9, 0xe5, 0x48, 0x6a, 0xec, 0xac, 0x85, 0x9d, 0x9b, 0xa2, 0x24, 0x38, 0x61, 0xdd, 0xfd, 0xfd, 0x63, 0x82, 0xdf, 0x20, 0xa4, 0x3b, 0xb0, 0x21, 0x65, 0xe3, 0x21, 0xc1, 0x98, 0x59, 0xc7, 0xe9, 0xdf, }; static const unsigned char xdh_wei448_3930_sharedsecret[] = { 0x0a, 0xcc, 0x1f, 0xf0, 0xe8, 0xd1, 0xef, 0xf3, 0xc7, 0x42, 0x1a, 0x8c, 0x0c, 0xdf, 0xd5, 0xa7, 0xa1, 0x48, 0xea, 0x53, 0x26, 0xd2, 0xaa, 0x7b, 0xd9, 0x7f, 0x93, 0x1f, 0xa4, 0x79, 0x16, 0xa5, 0xb6, 0x34, 0x61, 0x51, 0x35, 0x3d, 0x4f, 0x9e, 0x8e, 0xdb, 0x9e, 0xf0, 0xe9, 0xc3, 0xe3, 0x28, 0x19, 0x70, 0x77, 0x93, 0x6a, 0xa8, 0x09, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3930 = { .name = "xdh_wei448_3930", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3930_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3930_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3930_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 326 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3931 for XDH, tcId is 327 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3931_peerpubkey[] = { 0xda, 0x58, 0x1f, 0x73, 0x92, 0xf3, 0x4e, 0x3a, 0x7a, 0xe0, 0x90, 0x79, 0x50, 0x77, 0xc7, 0x61, 0x4c, 0xd2, 0x18, 0x5b, 0x8a, 0x61, 0x20, 0x3d, 0x10, 0x6e, 0xbd, 0xdd, 0x51, 0x65, 0x93, 0x61, 0x6e, 0x2c, 0xb3, 0xdd, 0x77, 0xf9, 0x77, 0x15, 0x97, 0xfc, 0xb2, 0x5b, 0xb4, 0xa9, 0xd8, 0x69, 0x88, 0x82, 0xc0, 0x33, 0xbe, 0xb9, 0xa1, 0x89, }; static const unsigned char xdh_wei448_3931_privkey[] = { 0x90, 0xd9, 0xb6, 0x83, 0x57, 0xd4, 0x99, 0x59, 0x74, 0xb0, 0xbb, 0x11, 0xf5, 0x24, 0x77, 0x3c, 0xfb, 0x2e, 0x49, 0x38, 0x5e, 0x31, 0x8c, 0x03, 0x63, 0x0b, 0x73, 0x38, 0x26, 0x11, 0x5e, 0x6a, 0x5b, 0x1d, 0x73, 0xb5, 0x30, 0x69, 0x50, 0xff, 0x90, 0xb9, 0x75, 0x16, 0x11, 0x4b, 0xad, 0x3e, 0xcd, 0x68, 0x59, 0xfb, 0x63, 0x93, 0x60, 0xca, }; static const unsigned char xdh_wei448_3931_sharedsecret[] = { 0x15, 0xab, 0xca, 0xad, 0xdf, 0x6b, 0x8c, 0xcd, 0x7a, 0xab, 0x0a, 0xea, 0xea, 0x64, 0x96, 0x60, 0xff, 0xc8, 0x65, 0xe5, 0x2e, 0x33, 0x91, 0x31, 0xaa, 0x33, 0x3d, 0xdc, 0x9e, 0x34, 0x3f, 0x16, 0x02, 0xb9, 0xee, 0xd6, 0xb9, 0x00, 0x15, 0x97, 0x42, 0x1e, 0xfd, 0x24, 0x57, 0xec, 0x49, 0x5c, 0xce, 0x57, 0xd8, 0x9d, 0xb4, 0xf3, 0x45, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_3931 = { .name = "xdh_wei448_3931", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3931_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3931_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3931_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 327 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3932 for XDH, tcId is 328 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3932_peerpubkey[] = { 0x65, 0xba, 0x0d, 0xd5, 0x81, 0xdb, 0xe1, 0x7a, 0x82, 0x90, 0x6e, 0x4d, 0xc5, 0x6a, 0x09, 0xdb, 0xdd, 0x54, 0xac, 0xcd, 0x86, 0xfd, 0xa4, 0x90, 0xeb, 0x61, 0x8e, 0x77, 0x27, 0x72, 0x93, 0x53, 0x3e, 0xbc, 0x70, 0xda, 0xd7, 0x02, 0x52, 0xd3, 0xbd, 0x6a, 0x12, 0x4b, 0xfd, 0x99, 0xaa, 0x3a, 0xdb, 0x83, 0x1e, 0x83, 0xc9, 0x6e, 0xdc, 0x9f, }; static const unsigned char xdh_wei448_3932_privkey[] = { 0x50, 0x21, 0xdd, 0x11, 0x1e, 0x3c, 0x8b, 0x81, 0x29, 0xf3, 0x54, 0x79, 0x85, 0xc7, 0xf2, 0x6b, 0xf3, 0x78, 0x5c, 0xd3, 0xe0, 0x50, 0xe9, 0x44, 0x82, 0x65, 0x26, 0x1f, 0xb5, 0x8e, 0xd6, 0xc5, 0xc5, 0xaf, 0x9e, 0x68, 0x78, 0xc0, 0x46, 0x18, 0xda, 0xe7, 0xec, 0xf4, 0x55, 0x43, 0xbc, 0x40, 0xcc, 0x38, 0x02, 0x08, 0x48, 0xc2, 0x10, 0xcd, }; static const unsigned char xdh_wei448_3932_sharedsecret[] = { 0x93, 0x3c, 0xca, 0x5e, 0x01, 0xcc, 0xa2, 0x97, 0x11, 0xb3, 0xb4, 0x72, 0x9a, 0xff, 0x32, 0x3a, 0xf5, 0x8f, 0x18, 0x80, 0x17, 0xd9, 0x6c, 0x15, 0xc7, 0xd1, 0x6a, 0x07, 0x83, 0x56, 0x50, 0x7b, 0x6e, 0x9c, 0xd6, 0xe0, 0x65, 0x1d, 0x0b, 0x52, 0x9f, 0x1c, 0x2c, 0xc9, 0xb9, 0x45, 0x10, 0xb8, 0xbe, 0xb3, 0x59, 0x45, 0x45, 0x2b, 0x2b, 0x17, }; static const wycheproof_xdh_test xdh_wei448_3932 = { .name = "xdh_wei448_3932", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3932_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3932_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3932_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 328 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3933 for XDH, tcId is 329 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3933_peerpubkey[] = { 0x1b, 0x68, 0x20, 0xa3, 0xf4, 0x5e, 0xd2, 0x5f, 0xbc, 0x60, 0x05, 0x26, 0x1d, 0xfc, 0xe5, 0x7a, 0xcb, 0x5d, 0x4d, 0x82, 0xcb, 0x73, 0x4b, 0x2c, 0x35, 0xeb, 0x62, 0x6c, 0xad, 0xe1, 0xea, 0x38, 0x28, 0xfd, 0x7f, 0x6f, 0x0a, 0x32, 0xbc, 0xf7, 0x93, 0x3d, 0x93, 0x7e, 0x6d, 0x0f, 0x54, 0x9a, 0x0e, 0xda, 0x36, 0xd2, 0x41, 0x61, 0x7c, 0xaa, }; static const unsigned char xdh_wei448_3933_privkey[] = { 0x78, 0x63, 0xa4, 0x08, 0xac, 0xf7, 0xb6, 0xd5, 0x2e, 0x2c, 0xb0, 0x9e, 0x9d, 0x38, 0x05, 0xbf, 0xf4, 0x81, 0x78, 0x7a, 0x99, 0x22, 0x3a, 0xec, 0x44, 0xec, 0x22, 0x42, 0xf4, 0xd5, 0x5f, 0x2c, 0x77, 0x17, 0xb6, 0x71, 0x2a, 0xad, 0x80, 0xa8, 0x4b, 0xb7, 0xf0, 0x2b, 0xbf, 0xed, 0x3f, 0xb4, 0xde, 0x72, 0x9f, 0xc1, 0x5e, 0xc2, 0xe1, 0xd3, }; static const unsigned char xdh_wei448_3933_sharedsecret[] = { 0x05, 0x7c, 0xc2, 0xab, 0x05, 0x52, 0x3b, 0x73, 0xe7, 0x4a, 0xee, 0x31, 0x51, 0xef, 0x8d, 0xbf, 0x9e, 0x79, 0x6d, 0x68, 0x19, 0x9f, 0x69, 0x92, 0x9f, 0x95, 0x12, 0x1d, 0x29, 0xc3, 0xbf, 0x43, 0xb9, 0x1b, 0xeb, 0x74, 0x94, 0xb1, 0x70, 0x39, 0x5f, 0xdf, 0x0f, 0xa1, 0x1f, 0x44, 0x56, 0x09, 0x4e, 0x27, 0x63, 0x3f, 0x9d, 0x24, 0x0a, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3933 = { .name = "xdh_wei448_3933", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3933_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3933_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3933_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 6, tcId is 329 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3934 for XDH, tcId is 330 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3934_peerpubkey[] = { 0xde, 0xfd, 0x0c, 0xb3, 0x99, 0x2f, 0x0a, 0x16, 0xe7, 0x58, 0x79, 0x19, 0x04, 0x44, 0x29, 0xbf, 0x1a, 0x91, 0x33, 0x30, 0xcc, 0x3e, 0x82, 0x54, 0x9a, 0xe4, 0xb8, 0x8c, 0x6b, 0x25, 0x50, 0xc8, 0x3d, 0x36, 0x4c, 0x7e, 0x52, 0x92, 0xb5, 0x91, 0x90, 0xec, 0xb2, 0x4d, 0x12, 0x01, 0x96, 0x32, 0x19, 0x55, 0x52, 0xcb, 0x98, 0x8c, 0x6a, 0xbc, }; static const unsigned char xdh_wei448_3934_privkey[] = { 0x58, 0x31, 0x40, 0x3b, 0xb4, 0xfe, 0x37, 0x74, 0xbc, 0xe2, 0xa7, 0x46, 0x10, 0x5c, 0x67, 0x60, 0x47, 0xee, 0x7c, 0xf6, 0x25, 0xca, 0xdb, 0xea, 0x99, 0x2b, 0x89, 0xcb, 0x5c, 0x6f, 0xd8, 0xbd, 0x43, 0xb6, 0x82, 0xf9, 0x64, 0xe7, 0xc3, 0x74, 0xda, 0xcd, 0x2d, 0xc9, 0xe6, 0x1b, 0x02, 0x0d, 0x4d, 0xa9, 0xe0, 0x35, 0xac, 0x7b, 0xf3, 0xd1, }; static const unsigned char xdh_wei448_3934_sharedsecret[] = { 0x5a, 0xbd, 0x6a, 0xa8, 0x0c, 0xfe, 0xba, 0x87, 0xfa, 0x38, 0x97, 0x14, 0x29, 0x5d, 0x16, 0xb7, 0xc0, 0x64, 0xe1, 0x60, 0x5c, 0x8d, 0xf8, 0xa3, 0xd0, 0x69, 0x46, 0x74, 0x87, 0x97, 0xae, 0x98, 0x54, 0xf7, 0x4f, 0x08, 0x96, 0x47, 0xd4, 0x69, 0x8c, 0x04, 0x8f, 0x29, 0xf9, 0x2d, 0x90, 0xc7, 0xe7, 0xbd, 0xd4, 0xf2, 0x7e, 0xf0, 0xea, 0x69, }; static const wycheproof_xdh_test xdh_wei448_3934 = { .name = "xdh_wei448_3934", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3934_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3934_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3934_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 330 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3935 for XDH, tcId is 331 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3935_peerpubkey[] = { 0x64, 0xfa, 0x39, 0x92, 0xdc, 0x42, 0x9e, 0x51, 0xcf, 0xb4, 0x47, 0xae, 0x60, 0x90, 0xbb, 0xe5, 0x39, 0xbc, 0xdc, 0xcc, 0xcf, 0xfe, 0xa8, 0xbe, 0x0c, 0x8f, 0x3f, 0x8e, 0x5f, 0x8f, 0xf7, 0x5e, 0x50, 0xb2, 0xba, 0x94, 0xf2, 0x7c, 0x30, 0x20, 0x54, 0x27, 0x87, 0x3f, 0xf9, 0x24, 0x3b, 0xaa, 0xf1, 0x62, 0xf1, 0x54, 0xa3, 0xcc, 0x1e, 0xcd, }; static const unsigned char xdh_wei448_3935_privkey[] = { 0xcc, 0x56, 0x3f, 0x16, 0xc8, 0xab, 0x58, 0x4e, 0x30, 0x76, 0x0d, 0xef, 0xc2, 0x8f, 0x5f, 0x19, 0x14, 0xd2, 0x4b, 0xad, 0xf1, 0x0e, 0x5f, 0xee, 0x39, 0xb4, 0xe4, 0xdb, 0xc5, 0x86, 0x09, 0x61, 0xfd, 0x19, 0xa3, 0xf1, 0x1d, 0xd5, 0x6c, 0xf0, 0x3e, 0xd6, 0x98, 0xa8, 0xaa, 0xba, 0x08, 0xee, 0x48, 0x12, 0xb4, 0x5c, 0xba, 0x0f, 0xd6, 0xc5, }; static const unsigned char xdh_wei448_3935_sharedsecret[] = { 0xb8, 0xa3, 0x98, 0xd6, 0x29, 0x76, 0xd6, 0x5b, 0x81, 0x79, 0xd4, 0x0a, 0x5c, 0x14, 0xfd, 0xa0, 0x07, 0x6d, 0x2a, 0x9d, 0x46, 0x26, 0xde, 0xb5, 0xd7, 0x34, 0x92, 0x0c, 0x0a, 0xc4, 0xf2, 0x83, 0xe8, 0x1d, 0x49, 0xf2, 0xdd, 0x8d, 0x6b, 0x50, 0x3f, 0x11, 0xa1, 0x86, 0xe7, 0x38, 0x13, 0x9c, 0x5a, 0x14, 0x33, 0x00, 0x3a, 0x0d, 0xa7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3935 = { .name = "xdh_wei448_3935", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3935_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3935_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3935_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 6, tcId is 331 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3936 for XDH, tcId is 332 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3936_peerpubkey[] = { 0xb1, 0x2e, 0x03, 0x9a, 0x6c, 0x92, 0x0f, 0x62, 0x6e, 0x99, 0x77, 0xdd, 0x93, 0xf0, 0x40, 0x5e, 0x30, 0x9f, 0x6d, 0x60, 0x1f, 0x51, 0xe9, 0x63, 0x26, 0x93, 0x5e, 0x6e, 0x5a, 0xc1, 0xa1, 0xda, 0xa4, 0xda, 0xfc, 0x09, 0xf9, 0xe1, 0xaa, 0x36, 0x2c, 0xa1, 0x24, 0x2a, 0xe8, 0x5c, 0xf1, 0x13, 0x39, 0xbf, 0x49, 0xc5, 0xfc, 0xdb, 0xef, 0x04, }; static const unsigned char xdh_wei448_3936_privkey[] = { 0x84, 0x5d, 0xb0, 0x49, 0xa0, 0x26, 0x01, 0xc8, 0xbf, 0xfc, 0xb3, 0x9a, 0x09, 0xf8, 0xa4, 0x1f, 0x59, 0xea, 0x7b, 0x7d, 0x7f, 0x9a, 0xb0, 0xac, 0x32, 0x01, 0xb6, 0xc9, 0xf5, 0x4c, 0x19, 0x00, 0x97, 0xef, 0xcc, 0x87, 0xe6, 0xfb, 0x66, 0x96, 0x9a, 0x86, 0xa4, 0x00, 0x51, 0xaf, 0x63, 0x79, 0xed, 0xa8, 0x46, 0xdb, 0x3a, 0x63, 0xd6, 0xc3, }; static const unsigned char xdh_wei448_3936_sharedsecret[] = { 0x4b, 0x85, 0x89, 0xcd, 0x37, 0x0b, 0x85, 0x1e, 0xec, 0xcd, 0x07, 0xb2, 0x25, 0x96, 0x3e, 0x2d, 0xc3, 0x55, 0x70, 0x47, 0x93, 0xa8, 0xe4, 0x4f, 0xfb, 0x73, 0x94, 0x45, 0xcc, 0x59, 0x07, 0xf4, 0x7b, 0xcd, 0xfb, 0x1e, 0x3a, 0xe4, 0x41, 0x23, 0x8d, 0x72, 0xf6, 0x0d, 0x42, 0x54, 0x4a, 0xee, 0x01, 0x2a, 0xa1, 0xcc, 0x17, 0x19, 0x5a, 0x61, }; static const wycheproof_xdh_test xdh_wei448_3936 = { .name = "xdh_wei448_3936", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3936_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3936_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3936_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 332 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3937 for XDH, tcId is 333 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3937_peerpubkey[] = { 0x11, 0x80, 0xa4, 0x67, 0xe0, 0x5c, 0x86, 0x8c, 0xa3, 0x3b, 0xd1, 0x81, 0x5d, 0x1d, 0xaa, 0x76, 0x5e, 0x98, 0x9d, 0x03, 0x8a, 0x34, 0x9c, 0xb0, 0xbe, 0x63, 0x9c, 0x85, 0x59, 0x17, 0x15, 0x40, 0xe9, 0xb4, 0x1d, 0xfc, 0x2e, 0xc8, 0xf7, 0xac, 0xb9, 0x4b, 0x92, 0x9a, 0x6d, 0x01, 0xbb, 0x9b, 0x67, 0x93, 0xe3, 0x51, 0x66, 0x97, 0x86, 0x5e, }; static const unsigned char xdh_wei448_3937_privkey[] = { 0x50, 0x51, 0x7d, 0x38, 0x72, 0x02, 0x9a, 0x98, 0xe9, 0xdc, 0x37, 0x49, 0x72, 0x08, 0xc0, 0xe8, 0xba, 0x00, 0x51, 0xa8, 0x51, 0x78, 0x41, 0xfb, 0x93, 0xcd, 0xa1, 0x64, 0x5c, 0xbf, 0xc8, 0x35, 0xab, 0x3f, 0x6e, 0x53, 0xd5, 0x70, 0xb5, 0xe2, 0x80, 0xd3, 0xa7, 0xcc, 0x16, 0x64, 0x1e, 0x64, 0xe1, 0x46, 0xcd, 0x7a, 0x4d, 0x70, 0x1b, 0xd3, }; static const unsigned char xdh_wei448_3937_sharedsecret[] = { 0x9f, 0xff, 0x02, 0x11, 0xe4, 0x00, 0x6e, 0xe0, 0x37, 0xf7, 0xbd, 0xa5, 0x10, 0x57, 0xac, 0x9f, 0x97, 0x3c, 0xf2, 0x11, 0x43, 0x59, 0xad, 0xb8, 0xb0, 0x94, 0x6c, 0xee, 0x04, 0x36, 0x2f, 0x22, 0x50, 0xc8, 0x41, 0x73, 0xba, 0xf0, 0xdb, 0xcd, 0xf8, 0xf0, 0xf1, 0x8f, 0xcc, 0x37, 0x09, 0x81, 0xef, 0xcb, 0x68, 0x41, 0x8d, 0xda, 0x37, 0x36, }; static const wycheproof_xdh_test xdh_wei448_3937 = { .name = "xdh_wei448_3937", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3937_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3937_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3937_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 6, tcId is 333 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3938 for XDH, tcId is 334 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3938_peerpubkey[] = { 0xbe, 0xbf, 0xf6, 0xf3, 0xa3, 0xa1, 0xf1, 0x68, 0x1a, 0x15, 0x47, 0x91, 0x2e, 0x8b, 0xa8, 0xf1, 0x80, 0x83, 0x56, 0x59, 0xf1, 0x66, 0x7c, 0xc2, 0x4f, 0x3f, 0xb3, 0x56, 0xc9, 0xb2, 0xb4, 0xb8, 0x5d, 0x9e, 0xf9, 0x56, 0x1e, 0x21, 0x0a, 0x8c, 0x74, 0xb6, 0xc0, 0xaa, 0x07, 0xee, 0xa6, 0x44, 0xe3, 0x06, 0x33, 0xdf, 0x02, 0x83, 0x86, 0x90, }; static const unsigned char xdh_wei448_3938_privkey[] = { 0xcc, 0x01, 0x12, 0x81, 0xae, 0x30, 0xb6, 0x17, 0xad, 0x79, 0x23, 0xaa, 0xce, 0xe0, 0x72, 0xfd, 0x5f, 0x9d, 0x1d, 0xa0, 0x55, 0xee, 0x7b, 0x60, 0x52, 0xcc, 0x03, 0xf7, 0x9f, 0x99, 0xc8, 0x8e, 0xec, 0xa7, 0xb5, 0xee, 0x65, 0xd8, 0x56, 0x23, 0x64, 0x2c, 0x4e, 0x92, 0xd4, 0x0b, 0xb8, 0x18, 0x50, 0xfc, 0x27, 0x0c, 0x61, 0x6f, 0x43, 0xda, }; static const unsigned char xdh_wei448_3938_sharedsecret[] = { 0x89, 0x53, 0x8a, 0xc4, 0x75, 0xd4, 0x4c, 0xf7, 0x0e, 0xa5, 0x48, 0x45, 0x16, 0x35, 0x69, 0xb7, 0xa4, 0x6f, 0x28, 0x05, 0x6b, 0xf0, 0xb0, 0x16, 0x4b, 0x76, 0x6f, 0xc9, 0x41, 0xb2, 0x3e, 0x92, 0xb9, 0x9d, 0x6e, 0xc5, 0x39, 0x1e, 0x2e, 0xb9, 0xd7, 0xf1, 0xd0, 0x4c, 0xab, 0xd6, 0x26, 0x86, 0xd2, 0xde, 0x74, 0xa2, 0xd3, 0x57, 0x02, 0x5f, }; static const wycheproof_xdh_test xdh_wei448_3938 = { .name = "xdh_wei448_3938", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3938_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3938_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3938_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for C in multiplication by 6, tcId is 334 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3939 for XDH, tcId is 335 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3939_peerpubkey[] = { 0x23, 0x55, 0xaa, 0x15, 0x22, 0x36, 0x45, 0x1f, 0xde, 0xe7, 0xa5, 0xa3, 0xb8, 0xb4, 0x38, 0x65, 0x63, 0x68, 0xe6, 0xc4, 0x92, 0xf7, 0x4f, 0x7d, 0x72, 0xc7, 0x06, 0xa7, 0x8b, 0xc6, 0x6b, 0x4a, 0xdb, 0xaa, 0xc8, 0xfb, 0x73, 0xfc, 0xe3, 0xb5, 0x90, 0x6e, 0xa1, 0x8c, 0xd5, 0xc2, 0x47, 0xc1, 0xc9, 0xce, 0xfb, 0x3f, 0x36, 0xd6, 0x8b, 0x0c, }; static const unsigned char xdh_wei448_3939_privkey[] = { 0x50, 0xd4, 0x8c, 0x9d, 0x35, 0x2d, 0x66, 0xbc, 0x02, 0x8a, 0x4b, 0x62, 0x1b, 0xd4, 0xd5, 0xa5, 0x35, 0xef, 0x0c, 0xdd, 0xac, 0xe9, 0xfd, 0xb4, 0x30, 0xab, 0x93, 0xd3, 0xdf, 0xd5, 0xe8, 0x97, 0x88, 0x28, 0xb1, 0xaf, 0x6f, 0xef, 0xfe, 0x7d, 0xb8, 0xf0, 0x83, 0xf3, 0x01, 0x4d, 0x4d, 0xc9, 0x15, 0xd6, 0x96, 0xa4, 0x9c, 0xa3, 0x5b, 0xcf, }; static const unsigned char xdh_wei448_3939_sharedsecret[] = { 0x7b, 0xa0, 0xd3, 0x22, 0x86, 0xc0, 0x48, 0x7c, 0x25, 0x7c, 0x80, 0x3b, 0xa9, 0xd3, 0x51, 0xcd, 0x29, 0xbe, 0xfa, 0x9f, 0xc7, 0x80, 0x82, 0x28, 0x47, 0xa1, 0x79, 0xd2, 0xd0, 0x93, 0x92, 0xde, 0xe6, 0x53, 0xfc, 0x73, 0x1c, 0x4b, 0xaf, 0x1f, 0xcb, 0x4a, 0xc0, 0xdb, 0x86, 0x73, 0xba, 0x92, 0x75, 0x21, 0x37, 0x50, 0x90, 0x7d, 0x20, 0xc1, }; static const wycheproof_xdh_test xdh_wei448_3939 = { .name = "xdh_wei448_3939", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3939_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3939_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3939_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 335 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3940 for XDH, tcId is 336 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3940_peerpubkey[] = { 0xf9, 0x89, 0xfb, 0x50, 0x94, 0xb0, 0x71, 0xe7, 0x56, 0x0e, 0x7f, 0xf7, 0x19, 0xd5, 0x58, 0xaf, 0x6a, 0x52, 0x56, 0x7d, 0x4c, 0x0d, 0xa9, 0x08, 0xc0, 0x77, 0x77, 0x02, 0x9d, 0x90, 0xf6, 0xc9, 0x76, 0x13, 0x41, 0x8c, 0x89, 0xb3, 0xba, 0x5c, 0x18, 0x83, 0x91, 0x21, 0x59, 0xf5, 0xb3, 0xcc, 0x15, 0xb9, 0xee, 0xe7, 0xee, 0x99, 0xfb, 0x0f, }; static const unsigned char xdh_wei448_3940_privkey[] = { 0xa0, 0xa6, 0x53, 0x86, 0x43, 0x52, 0x9a, 0x71, 0x12, 0x5c, 0xbd, 0xe7, 0x41, 0x1d, 0x4d, 0x0c, 0x6d, 0x93, 0xf0, 0x6c, 0x3f, 0xd9, 0x25, 0x85, 0x7b, 0xe3, 0x97, 0xfb, 0x8a, 0x09, 0x63, 0x08, 0x6e, 0xd1, 0xec, 0x2c, 0xc3, 0xaa, 0xc4, 0x55, 0xd7, 0xe5, 0x31, 0x9c, 0xbc, 0x3b, 0x9d, 0x61, 0xbc, 0xbc, 0x04, 0xec, 0xaa, 0xba, 0x1b, 0xde, }; static const unsigned char xdh_wei448_3940_sharedsecret[] = { 0xf2, 0xb5, 0x2d, 0x42, 0x22, 0x4f, 0x2e, 0xa8, 0x6a, 0xa9, 0x69, 0x79, 0xb8, 0x0e, 0xe6, 0x93, 0x91, 0xab, 0x04, 0x2d, 0x8b, 0xd6, 0xdb, 0xaa, 0x2c, 0xec, 0x68, 0x00, 0x16, 0x60, 0x6e, 0xa3, 0x45, 0x83, 0xe5, 0xb4, 0x61, 0xfe, 0x38, 0xb9, 0xdf, 0x61, 0x61, 0xc8, 0xa1, 0xa4, 0x3f, 0xb4, 0xfb, 0x88, 0x0b, 0xa4, 0x60, 0xaf, 0x71, 0x27, }; static const wycheproof_xdh_test xdh_wei448_3940 = { .name = "xdh_wei448_3940", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3940_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3940_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3940_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 336 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3941 for XDH, tcId is 337 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3941_peerpubkey[] = { 0x69, 0x74, 0x07, 0xb0, 0xaf, 0xaf, 0x40, 0x10, 0x7c, 0x7c, 0x5f, 0x26, 0x4c, 0xd8, 0xa7, 0x03, 0x0c, 0x71, 0x5c, 0x57, 0x6e, 0x7d, 0x83, 0xc4, 0xf5, 0xb6, 0x92, 0xfc, 0x30, 0xf8, 0x47, 0x1e, 0x25, 0xeb, 0xd8, 0x95, 0x5f, 0x3f, 0x5a, 0x74, 0xc4, 0x97, 0x0d, 0x41, 0x19, 0xa3, 0xe9, 0xbd, 0x85, 0x3f, 0xc3, 0xc5, 0x89, 0xbc, 0xe1, 0x19, }; static const unsigned char xdh_wei448_3941_privkey[] = { 0x84, 0x87, 0x3d, 0xf6, 0xb5, 0xe1, 0xbf, 0xe2, 0x6a, 0x39, 0xe2, 0x5c, 0xcc, 0xab, 0x3e, 0xa7, 0xee, 0xbf, 0xbe, 0xad, 0x47, 0x5d, 0x0f, 0xa2, 0x51, 0x4b, 0xe6, 0x8a, 0x11, 0x1e, 0x4c, 0xec, 0x6d, 0xc9, 0xa3, 0x40, 0x40, 0x99, 0xb8, 0x15, 0xde, 0x59, 0x5c, 0x5b, 0xa2, 0x3d, 0x78, 0x90, 0x58, 0x3c, 0xcb, 0x2c, 0x81, 0xd2, 0x72, 0xd4, }; static const unsigned char xdh_wei448_3941_sharedsecret[] = { 0x20, 0xfe, 0x01, 0x00, 0xaf, 0xdd, 0x1f, 0xe9, 0xd3, 0x41, 0x34, 0xfd, 0xcf, 0xd9, 0x59, 0x0a, 0xc1, 0x5e, 0x98, 0x0d, 0xf8, 0x90, 0x05, 0xf4, 0x87, 0xbb, 0xae, 0x45, 0x19, 0x8c, 0x20, 0xc2, 0xea, 0x02, 0x71, 0x01, 0xd5, 0x5d, 0xc3, 0xfe, 0xf7, 0xb6, 0x80, 0x04, 0xb5, 0x12, 0x45, 0xef, 0x62, 0xa3, 0x73, 0xc9, 0xe2, 0x35, 0xc1, 0x06, }; static const wycheproof_xdh_test xdh_wei448_3941 = { .name = "xdh_wei448_3941", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3941_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3941_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3941_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 6, tcId is 337 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3942 for XDH, tcId is 338 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3942_peerpubkey[] = { 0xdb, 0xe0, 0xa6, 0xb7, 0xd0, 0x7a, 0x46, 0x1a, 0x90, 0xf3, 0xcb, 0x09, 0xed, 0xa8, 0x44, 0xe2, 0x41, 0xf2, 0x15, 0x3a, 0x9c, 0x34, 0xe3, 0xa9, 0x00, 0xcc, 0xbd, 0xd5, 0xcb, 0x73, 0xd0, 0x88, 0x98, 0xdb, 0x2c, 0x5e, 0xb4, 0x3f, 0x81, 0xd1, 0x54, 0xb9, 0xb2, 0xba, 0x95, 0x40, 0xa5, 0xf6, 0x65, 0xde, 0x20, 0x4f, 0x28, 0xb9, 0xf4, 0x98, }; static const unsigned char xdh_wei448_3942_privkey[] = { 0x64, 0x85, 0x25, 0x2a, 0xeb, 0x24, 0x4c, 0x87, 0x22, 0xae, 0xeb, 0x74, 0x77, 0xe2, 0xc6, 0xa6, 0xab, 0x33, 0x87, 0x63, 0xb7, 0xa3, 0x05, 0x7a, 0xee, 0x86, 0x7b, 0x4b, 0x2d, 0x6d, 0xa2, 0xc3, 0x34, 0xf6, 0x28, 0x93, 0x69, 0x30, 0x48, 0x9c, 0x77, 0xd5, 0xa5, 0xf7, 0xf4, 0x62, 0xf9, 0x36, 0x3b, 0x9c, 0xfc, 0x9e, 0x31, 0x40, 0x9a, 0xdf, }; static const unsigned char xdh_wei448_3942_sharedsecret[] = { 0xb2, 0x50, 0xf4, 0x32, 0xd3, 0xd2, 0xd6, 0x6c, 0xd1, 0x75, 0xaa, 0x7d, 0xbe, 0x0b, 0x3a, 0x97, 0xf7, 0x45, 0x39, 0xb1, 0x82, 0x03, 0x0b, 0xd0, 0xd1, 0x4d, 0xa5, 0x47, 0xc2, 0xb7, 0xd6, 0x30, 0x97, 0xb3, 0x01, 0x2a, 0xfe, 0x41, 0x45, 0x25, 0x81, 0xa9, 0x8e, 0x17, 0x85, 0xe1, 0x1a, 0xc1, 0x07, 0xdc, 0x97, 0x85, 0x4b, 0x16, 0xdd, 0xdb, }; static const wycheproof_xdh_test xdh_wei448_3942 = { .name = "xdh_wei448_3942", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3942_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3942_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3942_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 338 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3943 for XDH, tcId is 339 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3943_peerpubkey[] = { 0xd4, 0x92, 0x85, 0x11, 0x28, 0x15, 0x6c, 0xd6, 0x75, 0xb4, 0xa4, 0x0d, 0x6d, 0x69, 0x2e, 0xd5, 0x9f, 0x81, 0x53, 0xb8, 0x12, 0x70, 0x29, 0xcd, 0xf2, 0x4a, 0x09, 0x0a, 0x3f, 0x19, 0xee, 0x29, 0xcd, 0x8e, 0xf7, 0x2e, 0xbd, 0x50, 0xa2, 0x13, 0x93, 0x4e, 0xba, 0x5e, 0x02, 0x3a, 0x28, 0x93, 0xae, 0x34, 0x23, 0x38, 0x79, 0xb4, 0x69, 0xa2, }; static const unsigned char xdh_wei448_3943_privkey[] = { 0xe4, 0x81, 0x8a, 0x88, 0xbc, 0x9c, 0x3e, 0xd2, 0x5b, 0xa5, 0x2f, 0x10, 0x60, 0x5c, 0x9e, 0x4c, 0x75, 0x44, 0x70, 0x52, 0x8f, 0x56, 0xc9, 0xe0, 0x2b, 0x03, 0xd3, 0x6e, 0x0c, 0xa9, 0x45, 0x74, 0xd3, 0x3d, 0x71, 0x7b, 0x3b, 0x14, 0x15, 0x54, 0x4d, 0xa3, 0x1e, 0xed, 0xe1, 0x25, 0x4e, 0x8e, 0xee, 0xcf, 0x92, 0x9c, 0x4f, 0x1a, 0x96, 0xcf, }; static const unsigned char xdh_wei448_3943_sharedsecret[] = { 0x4f, 0x4b, 0x68, 0x0d, 0x42, 0x5b, 0xf9, 0xca, 0x41, 0xf9, 0xde, 0x0a, 0xcd, 0x0f, 0xac, 0x23, 0x26, 0x57, 0xec, 0xa4, 0xf2, 0x90, 0x55, 0x38, 0x6b, 0xe8, 0xc4, 0x1e, 0x92, 0xe0, 0xb8, 0x95, 0x28, 0xde, 0x17, 0xd3, 0x4a, 0xef, 0x44, 0x28, 0xd3, 0x11, 0x6f, 0xf7, 0x6b, 0xb5, 0xab, 0x0f, 0x4a, 0x28, 0xfc, 0x0e, 0x63, 0xdb, 0xb8, 0x31, }; static const wycheproof_xdh_test xdh_wei448_3943 = { .name = "xdh_wei448_3943", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3943_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3943_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3943_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 6, tcId is 339 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3944 for XDH, tcId is 340 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3944_peerpubkey[] = { 0x9d, 0x74, 0xeb, 0x1e, 0x65, 0xb4, 0x98, 0x59, 0xff, 0xaa, 0x71, 0x1c, 0xa3, 0x35, 0x59, 0x4f, 0x5e, 0x86, 0xda, 0x02, 0x3e, 0x2a, 0x3f, 0x8b, 0x7f, 0x92, 0x93, 0x88, 0x37, 0x5f, 0x61, 0xb4, 0x05, 0xa0, 0xa8, 0x79, 0xfc, 0x05, 0xa1, 0x87, 0xf1, 0x3c, 0xb2, 0x99, 0xed, 0xa9, 0xa8, 0x0d, 0x14, 0x4d, 0xd2, 0x88, 0x59, 0xe0, 0x9d, 0x25, }; static const unsigned char xdh_wei448_3944_privkey[] = { 0xbc, 0xd5, 0x1b, 0x5d, 0x0b, 0xda, 0xc7, 0xbe, 0x40, 0x7c, 0xa2, 0x0f, 0x96, 0x34, 0x8e, 0x7e, 0xc7, 0xb5, 0x06, 0xe3, 0x71, 0x99, 0x40, 0xdf, 0x32, 0x10, 0x37, 0x73, 0x0b, 0x32, 0x3b, 0xa2, 0x31, 0x65, 0x35, 0xd4, 0x0a, 0xd2, 0xc2, 0x06, 0x3c, 0xfa, 0x00, 0x91, 0x0d, 0x14, 0x3c, 0x80, 0x5a, 0xd4, 0x0f, 0x9f, 0x6a, 0xcd, 0x9c, 0xd8, }; static const unsigned char xdh_wei448_3944_sharedsecret[] = { 0xd3, 0xd6, 0x94, 0xe1, 0x19, 0xae, 0x51, 0xe4, 0x76, 0xf4, 0x1a, 0x09, 0xf7, 0x17, 0xd3, 0xcd, 0xb1, 0x40, 0x3c, 0xc2, 0x3a, 0x5c, 0x09, 0x0e, 0x20, 0x86, 0x83, 0x9b, 0x47, 0xba, 0x61, 0xe8, 0x35, 0x69, 0x8d, 0xdd, 0xbd, 0xd4, 0xbb, 0x0e, 0x24, 0x58, 0x03, 0x0a, 0x84, 0xd7, 0x00, 0x66, 0xd8, 0x52, 0xa1, 0x04, 0x99, 0x11, 0xf0, 0x44, }; static const wycheproof_xdh_test xdh_wei448_3944 = { .name = "xdh_wei448_3944", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3944_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3944_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3944_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 340 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3945 for XDH, tcId is 341 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3945_peerpubkey[] = { 0x9e, 0x56, 0x61, 0xc3, 0x63, 0xc4, 0x50, 0x84, 0x27, 0x51, 0xf7, 0x48, 0x0c, 0x92, 0x15, 0xeb, 0x4a, 0x17, 0xdc, 0x97, 0xfe, 0xec, 0x90, 0xb8, 0x22, 0x86, 0xcd, 0x30, 0x38, 0x57, 0x72, 0x90, 0x3b, 0x0c, 0x23, 0xa8, 0x70, 0xff, 0xe5, 0xd8, 0x92, 0xa3, 0xef, 0xba, 0x21, 0x4c, 0xc8, 0x38, 0x5f, 0xf5, 0x95, 0x15, 0x88, 0x90, 0xdf, 0x31, }; static const unsigned char xdh_wei448_3945_privkey[] = { 0x14, 0x61, 0x8b, 0x40, 0xe7, 0xf8, 0x5c, 0x20, 0x61, 0xcf, 0xd1, 0xb3, 0x21, 0xb9, 0x63, 0xfe, 0x0e, 0x8a, 0x54, 0x93, 0xc6, 0x72, 0xfd, 0x2f, 0xa6, 0xa6, 0xd1, 0x0c, 0x2c, 0xec, 0x76, 0xac, 0x8c, 0xbb, 0x06, 0x27, 0x4c, 0xf3, 0x05, 0x8b, 0xe3, 0xac, 0x51, 0xc9, 0x63, 0x39, 0xff, 0x97, 0x20, 0x45, 0x74, 0x56, 0x4d, 0x17, 0x1f, 0xc7, }; static const unsigned char xdh_wei448_3945_sharedsecret[] = { 0x67, 0xc5, 0x4f, 0xb6, 0x77, 0xcc, 0x4c, 0x02, 0xc3, 0x24, 0xe1, 0xd7, 0xf0, 0xae, 0x06, 0x8a, 0x25, 0x55, 0xd1, 0x53, 0xd7, 0x05, 0x17, 0xbc, 0x1a, 0xb9, 0x03, 0x1d, 0x45, 0xa4, 0xa4, 0x41, 0x5b, 0xe0, 0xce, 0xbb, 0x35, 0x76, 0x56, 0xb9, 0x7c, 0xf5, 0xb5, 0x17, 0x6b, 0x3a, 0xea, 0x61, 0xac, 0x4d, 0xb8, 0x2d, 0xf3, 0x24, 0x11, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_3945 = { .name = "xdh_wei448_3945", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3945_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3945_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3945_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 341 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3946 for XDH, tcId is 342 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3946_peerpubkey[] = { 0xd0, 0xd2, 0x16, 0xc1, 0x49, 0xe7, 0xe5, 0x36, 0xaa, 0x68, 0x99, 0xb9, 0x8d, 0x5b, 0x04, 0xf3, 0xea, 0xe7, 0x3a, 0x38, 0xff, 0xe0, 0xc6, 0x2d, 0x90, 0x80, 0xfc, 0x6d, 0x63, 0xdd, 0xac, 0xcd, 0x3a, 0x9b, 0xf5, 0xf5, 0x4c, 0x5c, 0xe5, 0x8d, 0x96, 0x11, 0x96, 0xc5, 0xdf, 0x28, 0xbd, 0x3b, 0x7e, 0x39, 0x98, 0xb8, 0x52, 0xe3, 0x5d, 0x89, }; static const unsigned char xdh_wei448_3946_privkey[] = { 0x80, 0x74, 0x7b, 0xd0, 0xed, 0x71, 0xf6, 0x7e, 0xbc, 0xbc, 0x6c, 0x91, 0x53, 0x6c, 0x09, 0xce, 0x12, 0x4b, 0xf5, 0x4c, 0xbd, 0x89, 0x83, 0xab, 0x5f, 0xec, 0xdd, 0xba, 0xc6, 0x58, 0x23, 0x9c, 0xfb, 0x51, 0x5c, 0xd8, 0x17, 0xd3, 0xe8, 0x20, 0x8f, 0x6d, 0x0b, 0x68, 0x76, 0xb2, 0x7c, 0x31, 0x8a, 0xf8, 0xcd, 0x0d, 0xd1, 0xe5, 0x21, 0xc2, }; static const unsigned char xdh_wei448_3946_sharedsecret[] = { 0xc3, 0x9e, 0xcd, 0x28, 0x5b, 0x58, 0x41, 0xef, 0x62, 0x62, 0x0d, 0xb8, 0xfe, 0x8e, 0x76, 0x9b, 0x19, 0x5a, 0x04, 0xe7, 0xd0, 0xe8, 0x28, 0xee, 0x19, 0x09, 0x68, 0xca, 0x96, 0x7d, 0x49, 0x5d, 0x85, 0xfe, 0xf5, 0xd5, 0x20, 0x21, 0xaf, 0x32, 0x15, 0xb3, 0xb9, 0xf4, 0x65, 0x04, 0xc7, 0xeb, 0xdb, 0x14, 0x57, 0xb4, 0xcf, 0xe5, 0xab, 0x89, }; static const wycheproof_xdh_test xdh_wei448_3946 = { .name = "xdh_wei448_3946", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3946_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3946_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3946_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 342 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3947 for XDH, tcId is 343 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3947_peerpubkey[] = { 0xc7, 0xc1, 0x42, 0xb6, 0x8d, 0x6d, 0xfa, 0xde, 0x01, 0x8c, 0xf3, 0xf1, 0xd4, 0x12, 0xb8, 0x29, 0xf2, 0x20, 0x95, 0x11, 0x95, 0x30, 0x02, 0x0c, 0x2f, 0x22, 0x3e, 0x59, 0x9e, 0xc4, 0x2c, 0x42, 0x87, 0x5f, 0xd7, 0xad, 0xd6, 0x65, 0x30, 0xd0, 0xf9, 0x07, 0x2d, 0xb2, 0x66, 0xa3, 0x9f, 0x98, 0x8e, 0x57, 0xd9, 0x9f, 0xf1, 0xc3, 0xc5, 0x90, }; static const unsigned char xdh_wei448_3947_privkey[] = { 0x5c, 0x77, 0x5f, 0xe0, 0x85, 0x8a, 0x81, 0x26, 0xc8, 0xd3, 0xc4, 0x6c, 0x91, 0x75, 0xeb, 0x89, 0x4b, 0x44, 0xb6, 0x09, 0x83, 0xbf, 0x1a, 0xaa, 0xa9, 0x96, 0x41, 0x01, 0x11, 0x7b, 0xd0, 0x16, 0xb2, 0x80, 0x93, 0x9f, 0xe0, 0xc2, 0xfd, 0x12, 0x9b, 0xa3, 0xc1, 0x1f, 0x42, 0xf1, 0xc1, 0x83, 0x00, 0x33, 0xbc, 0x0f, 0xa9, 0x13, 0xd8, 0xd8, }; static const unsigned char xdh_wei448_3947_sharedsecret[] = { 0xd0, 0xd7, 0x97, 0x99, 0x44, 0xc4, 0xde, 0xfa, 0xae, 0x9f, 0x61, 0x72, 0xbb, 0xd1, 0xce, 0x11, 0x5e, 0x71, 0x0f, 0x12, 0x20, 0xb8, 0xc8, 0x86, 0xf6, 0x44, 0x77, 0x18, 0x48, 0x64, 0xd2, 0x04, 0xdf, 0x9d, 0x45, 0x19, 0x2b, 0x23, 0xa9, 0xb3, 0x8d, 0x9f, 0x6f, 0x2e, 0x1b, 0x4f, 0x4c, 0x03, 0xe0, 0xd2, 0xed, 0x0e, 0x44, 0x19, 0x6b, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_3947 = { .name = "xdh_wei448_3947", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3947_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3947_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3947_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 343 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3948 for XDH, tcId is 344 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3948_peerpubkey[] = { 0x25, 0xb1, 0x83, 0x73, 0xed, 0x30, 0xd6, 0x26, 0x30, 0xb9, 0x1a, 0xf8, 0x6a, 0xc2, 0xd4, 0xe7, 0x5a, 0xab, 0x36, 0x6d, 0xa6, 0xd5, 0x72, 0x4d, 0xe3, 0x34, 0xea, 0x40, 0xac, 0x39, 0xe3, 0x25, 0x00, 0xa1, 0xc0, 0x5e, 0x1c, 0x9d, 0x00, 0x48, 0x7d, 0x27, 0x2a, 0x0f, 0x21, 0xaf, 0x81, 0x8b, 0x02, 0xbf, 0x63, 0x48, 0xd7, 0x03, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_3948_privkey[] = { 0xd8, 0x1c, 0xd9, 0x48, 0xda, 0x26, 0x3b, 0xc3, 0xad, 0x80, 0xcd, 0xac, 0x6b, 0x7b, 0x5f, 0xde, 0xd4, 0x13, 0x13, 0xcf, 0x09, 0x21, 0x69, 0x2f, 0x7c, 0xa7, 0xc2, 0xd4, 0x8c, 0x22, 0x5c, 0x60, 0x56, 0x27, 0xbc, 0xc6, 0x1b, 0xc5, 0xa2, 0x80, 0xdb, 0x23, 0x65, 0xef, 0xc1, 0x1c, 0xb2, 0x86, 0xd2, 0x86, 0xbd, 0x8e, 0xbd, 0x36, 0xcf, 0xd4, }; static const unsigned char xdh_wei448_3948_sharedsecret[] = { 0x84, 0xbb, 0xf9, 0x15, 0x3d, 0xb2, 0xb5, 0x2c, 0x78, 0x0a, 0x2f, 0x1b, 0x27, 0x97, 0xb9, 0x89, 0x88, 0xbf, 0x45, 0xe1, 0x17, 0xd7, 0x5e, 0x07, 0x2d, 0x98, 0xd1, 0xb0, 0xa4, 0xf9, 0xc4, 0x68, 0x63, 0xda, 0xca, 0x2f, 0x98, 0x02, 0x43, 0x95, 0x59, 0x5a, 0x99, 0x60, 0x4e, 0xc9, 0x6d, 0xfe, 0x38, 0x45, 0x25, 0x4d, 0xcc, 0x4f, 0x4b, 0xe9, }; static const wycheproof_xdh_test xdh_wei448_3948 = { .name = "xdh_wei448_3948", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3948_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3948_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3948_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 344 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3949 for XDH, tcId is 345 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3949_peerpubkey[] = { 0xc2, 0xbc, 0x7a, 0xa4, 0xb3, 0xb3, 0xce, 0x53, 0x15, 0x35, 0x1a, 0x89, 0xf8, 0xc0, 0x43, 0x26, 0x60, 0x69, 0xeb, 0x19, 0x8e, 0x72, 0x4e, 0xc5, 0xa0, 0x3d, 0xdd, 0x10, 0xaa, 0x5e, 0x20, 0x6f, 0x39, 0xa4, 0x06, 0x0d, 0x5e, 0x1b, 0x7b, 0xdb, 0x1a, 0xe0, 0x42, 0xf7, 0x4d, 0xf4, 0x37, 0x66, 0x45, 0x02, 0xe2, 0x8e, 0x72, 0x48, 0x33, 0xb7, }; static const unsigned char xdh_wei448_3949_privkey[] = { 0x60, 0x5b, 0x9a, 0x97, 0x97, 0xda, 0xd5, 0x39, 0x0f, 0x24, 0x0c, 0xbc, 0x43, 0xdb, 0x3e, 0xb8, 0xe0, 0x3d, 0x93, 0xe0, 0x91, 0x0c, 0xe6, 0x1a, 0x39, 0xd9, 0x84, 0x7e, 0x47, 0xa6, 0x5c, 0x82, 0x0e, 0x04, 0x7b, 0xc0, 0x48, 0x44, 0x8a, 0x7e, 0xbc, 0x70, 0x4b, 0xdd, 0x21, 0x57, 0x55, 0x50, 0xcb, 0x0f, 0xa6, 0x95, 0x80, 0x90, 0x27, 0xdf, }; static const unsigned char xdh_wei448_3949_sharedsecret[] = { 0x09, 0x52, 0xc6, 0x07, 0x03, 0x9f, 0xc7, 0xbc, 0x65, 0x23, 0xf6, 0x68, 0x26, 0x3d, 0xd7, 0xbf, 0xc4, 0xc7, 0x3c, 0x39, 0x31, 0x91, 0x62, 0x2c, 0x6e, 0x07, 0xf6, 0x88, 0x59, 0x4a, 0xd3, 0xd6, 0x22, 0xc9, 0x9f, 0x0f, 0xe8, 0xdb, 0x4f, 0x8c, 0x57, 0xfc, 0x91, 0xac, 0x6f, 0x87, 0xfe, 0x81, 0x00, 0x32, 0xb3, 0x74, 0x4d, 0xaf, 0xf3, 0x54, }; static const wycheproof_xdh_test xdh_wei448_3949 = { .name = "xdh_wei448_3949", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3949_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3949_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3949_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 6, tcId is 345 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3950 for XDH, tcId is 346 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3950_peerpubkey[] = { 0xbd, 0x38, 0xf4, 0xa0, 0xa8, 0x28, 0x6a, 0xaa, 0xd5, 0xe7, 0x14, 0x73, 0xde, 0x5e, 0xb8, 0x06, 0x9f, 0x2e, 0xe0, 0x09, 0xc0, 0xc2, 0x42, 0xf1, 0x6f, 0x64, 0xe1, 0x9b, 0x5b, 0x4b, 0x89, 0x3a, 0x2b, 0x65, 0x98, 0x66, 0x1d, 0x05, 0xd8, 0xe0, 0x9e, 0x6c, 0xcb, 0x1c, 0x6a, 0x3a, 0x42, 0xed, 0xd2, 0x21, 0xd6, 0xae, 0x48, 0xaa, 0xc7, 0xbb, }; static const unsigned char xdh_wei448_3950_privkey[] = { 0x54, 0x61, 0x3c, 0x11, 0x58, 0x96, 0x49, 0x9e, 0xdc, 0xa8, 0xf9, 0xe7, 0x8d, 0xd6, 0x41, 0x14, 0x1e, 0x7e, 0xa4, 0x60, 0x96, 0x72, 0xd6, 0x6f, 0x43, 0x63, 0xdd, 0x49, 0x13, 0xbc, 0x6c, 0x84, 0x4f, 0x2d, 0x2c, 0xdf, 0x8b, 0xe8, 0xfd, 0xed, 0xf4, 0x58, 0xef, 0x5c, 0x4d, 0xc2, 0x80, 0x80, 0xee, 0xb3, 0xa5, 0xff, 0x52, 0x71, 0x84, 0xd2, }; static const unsigned char xdh_wei448_3950_sharedsecret[] = { 0x1d, 0xa0, 0x29, 0x3b, 0xdc, 0x16, 0xeb, 0xcc, 0x75, 0x69, 0x0e, 0x07, 0xbc, 0x71, 0x17, 0xa8, 0x00, 0x4e, 0xd4, 0xde, 0x12, 0x24, 0x33, 0x26, 0x81, 0x67, 0x5c, 0x4a, 0x1b, 0x90, 0x1e, 0x55, 0x6e, 0x14, 0xf2, 0xfd, 0xd9, 0xfe, 0x97, 0xe1, 0xfe, 0x66, 0x58, 0x39, 0x1b, 0x8f, 0x76, 0x28, 0xbb, 0x72, 0xce, 0x89, 0x3b, 0xce, 0x74, 0x15, }; static const wycheproof_xdh_test xdh_wei448_3950 = { .name = "xdh_wei448_3950", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3950_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3950_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3950_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 346 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3951 for XDH, tcId is 347 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3951_peerpubkey[] = { 0x91, 0xa2, 0x00, 0x3c, 0x42, 0xb6, 0x96, 0x62, 0x0c, 0xc1, 0x51, 0x49, 0xe4, 0x1c, 0xca, 0x55, 0xc9, 0x38, 0xa0, 0x8f, 0x01, 0xa8, 0x89, 0xec, 0xb5, 0xf7, 0xd8, 0xbf, 0xdb, 0xc2, 0x4e, 0x11, 0x07, 0x7c, 0xa9, 0x13, 0x55, 0x78, 0x4f, 0x61, 0xf6, 0x53, 0x47, 0x1a, 0x29, 0xd0, 0xe4, 0x22, 0x33, 0xd4, 0x23, 0x0c, 0x7a, 0xf7, 0x23, 0xc0, }; static const unsigned char xdh_wei448_3951_privkey[] = { 0x24, 0x76, 0x40, 0x94, 0xde, 0xa4, 0x3e, 0x4c, 0x16, 0x7c, 0xdd, 0x8d, 0x22, 0xa4, 0x63, 0x40, 0x4b, 0xbc, 0xbe, 0x84, 0x94, 0x6c, 0x09, 0x6f, 0xa2, 0x87, 0xa4, 0x5b, 0x72, 0xd0, 0x21, 0x92, 0xe6, 0x4a, 0x48, 0x2c, 0x0c, 0x81, 0xaf, 0x60, 0x6e, 0xbf, 0xab, 0x93, 0x83, 0x7d, 0x79, 0xbd, 0xba, 0xe0, 0x59, 0x2e, 0xff, 0x04, 0xdb, 0xd6, }; static const unsigned char xdh_wei448_3951_sharedsecret[] = { 0x7f, 0x06, 0x14, 0x3a, 0x73, 0x85, 0xae, 0xc3, 0xe3, 0x4c, 0xf6, 0xe9, 0x3c, 0x8e, 0x56, 0x81, 0x2e, 0xb7, 0xb5, 0x33, 0xa1, 0x3f, 0x3f, 0xdf, 0xc6, 0x52, 0x82, 0xab, 0x7e, 0xa3, 0x66, 0x89, 0x27, 0x17, 0x67, 0x74, 0xf7, 0x1c, 0x53, 0x34, 0x7d, 0x83, 0xeb, 0x87, 0x2c, 0xcb, 0xfd, 0xef, 0x3b, 0xbd, 0x53, 0xc0, 0xd0, 0xe7, 0xa2, 0x52, }; static const wycheproof_xdh_test xdh_wei448_3951 = { .name = "xdh_wei448_3951", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3951_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3951_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3951_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 347 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3952 for XDH, tcId is 348 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3952_peerpubkey[] = { 0xcb, 0x65, 0xba, 0xe2, 0x10, 0x1d, 0x1c, 0x64, 0xec, 0xdb, 0x33, 0x8a, 0xa9, 0xa9, 0x56, 0xfe, 0xb8, 0x77, 0x36, 0xb2, 0x82, 0xd0, 0x68, 0x1e, 0x63, 0x4f, 0xab, 0x7b, 0x64, 0x6f, 0x0e, 0x2d, 0xf8, 0x14, 0xec, 0x87, 0xd4, 0x25, 0xd7, 0x75, 0x11, 0xfa, 0x6a, 0xc0, 0x53, 0x23, 0x3a, 0x68, 0xfe, 0x26, 0x0e, 0x3b, 0x32, 0x3c, 0xf5, 0xc1, }; static const unsigned char xdh_wei448_3952_privkey[] = { 0x2c, 0xb5, 0xab, 0xe1, 0x12, 0x50, 0xb3, 0x26, 0x6e, 0xa5, 0x93, 0x9f, 0x24, 0xe1, 0xe6, 0xdc, 0xaa, 0x00, 0x59, 0xed, 0x53, 0xda, 0x62, 0xdb, 0xe0, 0x5e, 0x50, 0x6a, 0x51, 0x32, 0x91, 0xf9, 0x1f, 0xd5, 0xee, 0x83, 0x87, 0x66, 0x01, 0x1c, 0x97, 0xf6, 0x2f, 0x4f, 0xb7, 0xcb, 0x54, 0x75, 0xd5, 0x7b, 0x39, 0xcd, 0x5b, 0xe7, 0xd7, 0xdf, }; static const unsigned char xdh_wei448_3952_sharedsecret[] = { 0x4b, 0x7d, 0xf7, 0x24, 0x24, 0x02, 0x89, 0x0d, 0x13, 0xa2, 0x3a, 0x17, 0x58, 0x39, 0x1b, 0xdf, 0x6c, 0x5c, 0xea, 0xb3, 0xad, 0xc7, 0x69, 0xcb, 0xfc, 0xea, 0x5d, 0xf6, 0x6b, 0xb7, 0x6a, 0x8b, 0xbe, 0xfe, 0x76, 0xb0, 0x6e, 0x51, 0x47, 0x48, 0x70, 0x01, 0xa5, 0x66, 0x54, 0x93, 0x35, 0xb3, 0xea, 0x55, 0x67, 0xad, 0x90, 0x4a, 0x46, 0x3f, }; static const wycheproof_xdh_test xdh_wei448_3952 = { .name = "xdh_wei448_3952", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3952_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3952_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3952_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 6, tcId is 348 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3953 for XDH, tcId is 349 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3953_peerpubkey[] = { 0x8f, 0xdf, 0xe2, 0x0f, 0xe3, 0xeb, 0x12, 0x9d, 0xb8, 0x43, 0xa6, 0xf3, 0x1c, 0x22, 0x05, 0x93, 0x48, 0x45, 0xd4, 0xc3, 0xac, 0xcd, 0xfa, 0x9c, 0xbc, 0x0e, 0x25, 0x08, 0xaf, 0x9c, 0x5d, 0x98, 0x9c, 0xd4, 0xba, 0xd5, 0xd3, 0xe1, 0xe0, 0x4b, 0x65, 0xcb, 0xb5, 0x8e, 0x3c, 0xfa, 0x76, 0x6f, 0xb1, 0xa6, 0x1e, 0xc8, 0x1b, 0x53, 0xbc, 0x33, }; static const unsigned char xdh_wei448_3953_privkey[] = { 0x9c, 0x1a, 0xbe, 0xd8, 0xef, 0xb6, 0x02, 0xeb, 0xa9, 0xb7, 0x40, 0xe4, 0xa4, 0xe0, 0x01, 0x7d, 0x15, 0x8f, 0xfe, 0x89, 0x98, 0x7c, 0x64, 0x2d, 0x49, 0x03, 0x70, 0xb5, 0x22, 0x95, 0x9c, 0x1c, 0x96, 0x16, 0x87, 0x97, 0x35, 0x6f, 0xbb, 0x93, 0x50, 0x84, 0x92, 0x8b, 0xe5, 0x3a, 0xd5, 0x35, 0x7f, 0x6e, 0x5b, 0x78, 0x3b, 0xd9, 0xdc, 0xc6, }; static const unsigned char xdh_wei448_3953_sharedsecret[] = { 0x9a, 0x69, 0x04, 0x6c, 0x39, 0xa6, 0x18, 0x92, 0xa6, 0xb2, 0x4f, 0xac, 0xfd, 0xb0, 0x0e, 0x65, 0x9f, 0x6d, 0xb7, 0x9c, 0x06, 0x62, 0xa0, 0xbc, 0xba, 0x9c, 0x73, 0x4e, 0x7f, 0x75, 0x16, 0x0c, 0x54, 0xbc, 0x17, 0xa9, 0xc6, 0x4d, 0xa2, 0xc0, 0x3f, 0x9f, 0xe0, 0xba, 0x33, 0x4e, 0xb7, 0x5e, 0x16, 0x8b, 0xc2, 0x98, 0x06, 0xfc, 0xec, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3953 = { .name = "xdh_wei448_3953", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3953_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3953_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3953_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 349 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3954 for XDH, tcId is 350 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3954_peerpubkey[] = { 0x2f, 0x8e, 0x43, 0x95, 0x99, 0x78, 0x64, 0x54, 0x31, 0xe3, 0xc0, 0x85, 0x5c, 0xeb, 0xba, 0x34, 0xcb, 0x5e, 0xd2, 0x3c, 0x5d, 0xe8, 0x72, 0xb4, 0xb2, 0x45, 0x10, 0xad, 0x3c, 0x65, 0xa3, 0x26, 0xef, 0xfd, 0xdf, 0xbc, 0x68, 0x5c, 0xb6, 0x1e, 0x60, 0xc1, 0xa3, 0xd5, 0x9d, 0x60, 0xa3, 0xb1, 0x17, 0x5e, 0x68, 0x22, 0x80, 0x8e, 0x9f, 0x64, }; static const unsigned char xdh_wei448_3954_privkey[] = { 0x7c, 0x1d, 0x55, 0x71, 0xe6, 0x3c, 0xae, 0xa8, 0x31, 0xeb, 0x48, 0x27, 0xc4, 0xfc, 0x7a, 0x05, 0xa5, 0x76, 0xec, 0xb6, 0x62, 0xb0, 0x90, 0x50, 0xe7, 0x19, 0xe4, 0xfd, 0x7d, 0x1b, 0xd5, 0xaf, 0x78, 0x21, 0xa7, 0x22, 0x4d, 0x39, 0x05, 0x37, 0xa4, 0xf3, 0x23, 0x0c, 0x96, 0xf1, 0x68, 0x1b, 0x3c, 0xd5, 0x01, 0x96, 0xe9, 0xa3, 0x10, 0xdd, }; static const unsigned char xdh_wei448_3954_sharedsecret[] = { 0xfb, 0x28, 0x86, 0x3a, 0x88, 0x1b, 0x90, 0x89, 0x70, 0x32, 0x29, 0xac, 0xc8, 0x0e, 0x3f, 0x1e, 0x65, 0x00, 0xd6, 0x53, 0x10, 0xad, 0x80, 0x17, 0x90, 0xbc, 0x90, 0x7f, 0xf3, 0xa9, 0xbb, 0x33, 0xd0, 0x08, 0x96, 0x81, 0x22, 0xfb, 0x9e, 0x5b, 0xbe, 0x2a, 0x0a, 0xe5, 0x57, 0xee, 0x99, 0x5b, 0xa8, 0x23, 0x2c, 0x36, 0xf7, 0xe0, 0x47, 0xcb, }; static const wycheproof_xdh_test xdh_wei448_3954 = { .name = "xdh_wei448_3954", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3954_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3954_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3954_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 350 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3955 for XDH, tcId is 351 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3955_peerpubkey[] = { 0xd9, 0x7d, 0xd1, 0x83, 0xea, 0xe8, 0x1d, 0xd3, 0x4d, 0xa6, 0xd8, 0xb6, 0x6c, 0x91, 0x80, 0xa6, 0x0b, 0x2e, 0x26, 0x11, 0x2d, 0xaf, 0xdf, 0xe5, 0x6a, 0x80, 0x22, 0xc8, 0x72, 0xef, 0xe6, 0xd1, 0xc5, 0xd1, 0xb3, 0x57, 0x2c, 0x82, 0x4c, 0x69, 0xbb, 0x66, 0xd1, 0xd9, 0x1c, 0xca, 0x5e, 0x69, 0xf9, 0xdf, 0x20, 0xb4, 0xaf, 0x32, 0x6c, 0x7c, }; static const unsigned char xdh_wei448_3955_privkey[] = { 0xb0, 0xce, 0x11, 0x67, 0xca, 0x6d, 0x3d, 0xe6, 0xa5, 0x13, 0x8e, 0x60, 0x57, 0xb0, 0x8a, 0xf1, 0x01, 0x35, 0xc7, 0xe4, 0x12, 0xf4, 0x48, 0x8a, 0xb1, 0x02, 0x3b, 0xef, 0xc9, 0xf6, 0x7f, 0x12, 0x36, 0x5c, 0x30, 0x2f, 0xfe, 0x80, 0x4d, 0x5a, 0x25, 0xd0, 0x34, 0x65, 0xe0, 0x27, 0x28, 0xca, 0x06, 0xab, 0xad, 0x3e, 0x78, 0x5f, 0x69, 0xcf, }; static const unsigned char xdh_wei448_3955_sharedsecret[] = { 0xfc, 0x9f, 0xe0, 0x0b, 0x58, 0xda, 0xfa, 0x32, 0x1a, 0xe0, 0x55, 0x82, 0xde, 0x2e, 0xe2, 0x80, 0xd7, 0x11, 0xf2, 0x92, 0x9f, 0x39, 0x31, 0x9f, 0x0f, 0xda, 0x49, 0xd9, 0x97, 0x3d, 0xea, 0x0a, 0x58, 0x03, 0xe5, 0xe0, 0x37, 0x39, 0xb0, 0xd6, 0xe5, 0xe6, 0xcf, 0x4e, 0x46, 0xb1, 0xd9, 0x92, 0x1e, 0x76, 0x37, 0x6d, 0xf0, 0x08, 0x4d, 0xd2, }; static const wycheproof_xdh_test xdh_wei448_3955 = { .name = "xdh_wei448_3955", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3955_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3955_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3955_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 351 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3956 for XDH, tcId is 352 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3956_peerpubkey[] = { 0x7c, 0x35, 0x31, 0x0f, 0xc6, 0x99, 0xa6, 0x56, 0x8a, 0xa5, 0x84, 0xf6, 0xf0, 0xc8, 0x9a, 0xbc, 0x89, 0x43, 0xe6, 0x8e, 0x87, 0x32, 0x3f, 0x62, 0xcd, 0x98, 0xc6, 0xc6, 0xbb, 0x17, 0x33, 0x4b, 0x75, 0xcf, 0x57, 0x81, 0x5f, 0x24, 0xc9, 0x6d, 0x4e, 0xa2, 0x2d, 0x99, 0xdd, 0xbf, 0x61, 0xe0, 0xaa, 0x4b, 0xed, 0x81, 0xc4, 0x13, 0xf6, 0x9e, }; static const unsigned char xdh_wei448_3956_privkey[] = { 0xe4, 0x89, 0x83, 0x95, 0x9f, 0x3b, 0xb8, 0x85, 0xfd, 0x7a, 0x26, 0xe2, 0x10, 0x57, 0x7b, 0xb0, 0x7e, 0xa9, 0xda, 0x7a, 0xf2, 0x95, 0xee, 0x83, 0xaf, 0xfa, 0x64, 0xe0, 0x23, 0x28, 0x47, 0x5b, 0x3f, 0xc9, 0x9d, 0x94, 0xc5, 0x66, 0xb7, 0xcb, 0xc5, 0x82, 0xd8, 0xd9, 0xca, 0x3c, 0xa4, 0x1f, 0xf0, 0xd2, 0xde, 0xc9, 0x14, 0x4e, 0xab, 0xde, }; static const unsigned char xdh_wei448_3956_sharedsecret[] = { 0x21, 0x1a, 0xbd, 0x6c, 0xad, 0x5a, 0x8c, 0x4c, 0xc2, 0x7b, 0xee, 0x02, 0x7c, 0x00, 0x24, 0x74, 0x8f, 0xd1, 0x1d, 0x78, 0x6f, 0x01, 0x67, 0x67, 0xda, 0x72, 0x69, 0x44, 0x95, 0x71, 0xb9, 0x84, 0xd6, 0x1c, 0x50, 0x40, 0x25, 0x1d, 0x1e, 0xd6, 0xe0, 0xed, 0xea, 0x5c, 0x69, 0xaf, 0xf2, 0x35, 0x00, 0x03, 0x7f, 0x65, 0xb2, 0xca, 0x48, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_3956 = { .name = "xdh_wei448_3956", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3956_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3956_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3956_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 352 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3957 for XDH, tcId is 353 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3957_peerpubkey[] = { 0xa5, 0xd3, 0xd1, 0x92, 0x60, 0x73, 0x62, 0x9d, 0xab, 0x3a, 0x52, 0xa1, 0x89, 0xc3, 0x56, 0xc1, 0xcb, 0x2f, 0x44, 0x38, 0x92, 0xe0, 0x64, 0xad, 0x42, 0xc9, 0xe6, 0x8a, 0x3b, 0xcf, 0x74, 0x23, 0x3c, 0xb8, 0x93, 0xf3, 0x1d, 0xb0, 0x4b, 0xa7, 0x10, 0x99, 0x83, 0x63, 0x10, 0x71, 0xf4, 0x0b, 0xdc, 0x15, 0xfe, 0x8f, 0x77, 0xf8, 0x96, 0xc7, }; static const unsigned char xdh_wei448_3957_privkey[] = { 0x28, 0xa4, 0xdf, 0x2a, 0x71, 0x9b, 0x8c, 0xe1, 0x67, 0x1a, 0xb0, 0x7e, 0x9f, 0xcf, 0xd6, 0xcf, 0x2c, 0xf5, 0xca, 0x31, 0x44, 0xdb, 0x0b, 0x19, 0xf3, 0xd8, 0xde, 0x9b, 0x0a, 0x04, 0xe4, 0x31, 0x3f, 0x11, 0x5b, 0x08, 0xaf, 0x09, 0x40, 0x1b, 0x65, 0xac, 0x7d, 0x97, 0x29, 0x4e, 0x69, 0xc5, 0xf7, 0x71, 0xe0, 0x02, 0x66, 0x6b, 0xf7, 0xcf, }; static const unsigned char xdh_wei448_3957_sharedsecret[] = { 0x3f, 0x5b, 0x5c, 0x9d, 0x10, 0x78, 0x08, 0x52, 0x47, 0xcf, 0x12, 0x43, 0x1e, 0xbe, 0x54, 0xb8, 0xaa, 0xbc, 0x6d, 0xfe, 0xd5, 0x72, 0xc8, 0xf6, 0x60, 0xf2, 0x45, 0xe4, 0x5d, 0xeb, 0x65, 0x41, 0x12, 0xd7, 0x69, 0xbc, 0x81, 0xf6, 0x9d, 0x6f, 0xf9, 0xa1, 0x9e, 0x87, 0x9b, 0x41, 0xff, 0x09, 0xd6, 0x88, 0x5b, 0x3d, 0x08, 0x15, 0x50, 0x2c, }; static const wycheproof_xdh_test xdh_wei448_3957 = { .name = "xdh_wei448_3957", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3957_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3957_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3957_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 353 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3958 for XDH, tcId is 354 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3958_peerpubkey[] = { 0x86, 0x79, 0x7e, 0x52, 0x05, 0x9c, 0xe5, 0x3d, 0x0e, 0x81, 0x4b, 0xed, 0xdd, 0x2b, 0xa9, 0xcf, 0x87, 0xa4, 0x7e, 0xb7, 0x36, 0x37, 0x0f, 0x0a, 0xc4, 0x82, 0xcc, 0x29, 0x1d, 0x14, 0x26, 0x49, 0x6e, 0x9a, 0xfc, 0x74, 0x66, 0xc6, 0x54, 0x55, 0x8f, 0xe6, 0x8d, 0x6b, 0x9d, 0xe8, 0xb0, 0x4f, 0x87, 0x5d, 0x4c, 0x0d, 0x9d, 0x22, 0x31, 0xf5, }; static const unsigned char xdh_wei448_3958_privkey[] = { 0xe8, 0xba, 0xd8, 0xe1, 0x9e, 0x83, 0x08, 0x4e, 0x35, 0xfc, 0xc6, 0x9f, 0x29, 0xe7, 0xc7, 0xf4, 0x4c, 0x35, 0x4b, 0x1c, 0x29, 0x92, 0x5c, 0xff, 0xf6, 0x32, 0xf9, 0xcc, 0xaf, 0x7f, 0xf4, 0x9c, 0x91, 0x99, 0xf8, 0x60, 0x80, 0xd6, 0xb8, 0xb3, 0xe3, 0xca, 0x24, 0x13, 0x0f, 0x0d, 0x06, 0xeb, 0x54, 0x10, 0x4f, 0x3c, 0x1a, 0x18, 0x3b, 0xd7, }; static const unsigned char xdh_wei448_3958_sharedsecret[] = { 0x00, 0x3b, 0xab, 0x0e, 0x3c, 0x73, 0x9f, 0x94, 0x2e, 0x62, 0x33, 0xa8, 0xb2, 0xa8, 0xb0, 0xf2, 0x28, 0x9f, 0x1b, 0xb3, 0x7a, 0xad, 0x96, 0x61, 0x94, 0x6c, 0x17, 0x6e, 0x8a, 0xe1, 0x24, 0x71, 0xfc, 0xb4, 0x60, 0xe4, 0x92, 0x1b, 0xdc, 0x3e, 0x5d, 0x9f, 0xbc, 0x89, 0xf6, 0x95, 0x96, 0xf0, 0xa4, 0xd4, 0xdb, 0x1d, 0x17, 0xbf, 0xe1, 0x32, }; static const wycheproof_xdh_test xdh_wei448_3958 = { .name = "xdh_wei448_3958", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3958_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3958_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3958_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 6, tcId is 354 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3959 for XDH, tcId is 355 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3959_peerpubkey[] = { 0x1f, 0x24, 0xe0, 0xd9, 0xe5, 0xfb, 0x41, 0xbb, 0x67, 0x25, 0xe8, 0xea, 0x03, 0xd2, 0xee, 0x90, 0xc2, 0x46, 0x59, 0x87, 0x1b, 0x79, 0x59, 0xd1, 0xbf, 0x86, 0x54, 0x54, 0xda, 0xd4, 0xad, 0x5d, 0x8a, 0xcc, 0x26, 0x8f, 0xe2, 0xa6, 0x08, 0x92, 0x53, 0xeb, 0xff, 0x4a, 0xe7, 0xed, 0xfd, 0x91, 0x24, 0xfa, 0x7c, 0xb2, 0xb4, 0xf2, 0xe6, 0xff, }; static const unsigned char xdh_wei448_3959_privkey[] = { 0x04, 0x23, 0x02, 0xe5, 0xdd, 0x31, 0xc8, 0x1d, 0xc9, 0x1e, 0x16, 0xfc, 0x56, 0x48, 0x32, 0x48, 0xb6, 0x46, 0x2c, 0x5f, 0x0b, 0x80, 0x8f, 0x17, 0x8e, 0xac, 0xa1, 0xf4, 0x0d, 0x3c, 0x1f, 0xfc, 0x85, 0x8a, 0xef, 0x5c, 0xab, 0x1d, 0x0b, 0xd6, 0xe6, 0xf1, 0xee, 0xe4, 0x39, 0x44, 0x63, 0xc9, 0xaa, 0xff, 0x80, 0x6f, 0x7a, 0xdf, 0xed, 0xc1, }; static const unsigned char xdh_wei448_3959_sharedsecret[] = { 0xc9, 0x7f, 0xea, 0x9a, 0x53, 0x85, 0xb6, 0xfd, 0x1a, 0x3d, 0xa4, 0xf8, 0x97, 0x28, 0xf6, 0x6c, 0x16, 0x4a, 0xfd, 0xff, 0x17, 0x92, 0x55, 0x99, 0x15, 0x9d, 0x6d, 0x88, 0x44, 0x22, 0x22, 0x4f, 0x2f, 0xd8, 0xb7, 0xc5, 0x06, 0x3e, 0x1f, 0x2b, 0x7f, 0x49, 0x9a, 0x8a, 0x29, 0x10, 0xc8, 0x4e, 0x8e, 0xaf, 0x8a, 0xac, 0xaf, 0xe7, 0xea, 0x71, }; static const wycheproof_xdh_test xdh_wei448_3959 = { .name = "xdh_wei448_3959", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3959_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3959_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3959_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 6, tcId is 355 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3960 for XDH, tcId is 356 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3960_peerpubkey[] = { 0xcb, 0x2e, 0x8e, 0xab, 0x9c, 0x36, 0x8b, 0xec, 0x18, 0x2f, 0x88, 0x6d, 0x42, 0x7a, 0xd4, 0xff, 0x4f, 0x3d, 0x31, 0xb5, 0x2c, 0x49, 0x40, 0x39, 0x03, 0x6d, 0xf8, 0x25, 0x00, 0xfe, 0x71, 0xfd, 0xc8, 0x93, 0x46, 0x16, 0x79, 0xc0, 0x7b, 0xdd, 0x91, 0x8b, 0x17, 0x59, 0x66, 0xfa, 0x7c, 0xf9, 0x47, 0xc3, 0xfb, 0x54, 0x35, 0xfb, 0xd5, 0x3e, }; static const unsigned char xdh_wei448_3960_privkey[] = { 0xd4, 0x76, 0x2e, 0x92, 0xed, 0xf6, 0xa3, 0x63, 0xea, 0x9a, 0x49, 0x68, 0xbf, 0x0f, 0x11, 0x9d, 0xa8, 0x8f, 0x43, 0x49, 0x91, 0xe1, 0xc9, 0x6b, 0xe4, 0x96, 0x7e, 0xb9, 0xfe, 0x67, 0x6a, 0x3e, 0x98, 0x1d, 0x35, 0x38, 0xb4, 0x29, 0x69, 0x83, 0x9c, 0xde, 0x50, 0x97, 0xd9, 0x96, 0x4d, 0x19, 0x54, 0xde, 0xe4, 0xc9, 0x5c, 0xcd, 0x95, 0xcd, }; static const unsigned char xdh_wei448_3960_sharedsecret[] = { 0xc0, 0x74, 0x45, 0x2f, 0xf1, 0x0e, 0x18, 0x8b, 0xe0, 0x3b, 0xe2, 0xf6, 0x16, 0x4b, 0xc2, 0x97, 0xa8, 0xe3, 0xde, 0x6d, 0x22, 0xff, 0x4b, 0xa7, 0xbd, 0xfc, 0x90, 0xbd, 0xdb, 0x8a, 0x07, 0x4b, 0xa1, 0x3b, 0x20, 0x53, 0x3c, 0x8d, 0x37, 0xfb, 0x0a, 0x3f, 0x9d, 0x24, 0xa0, 0x76, 0x79, 0xf0, 0x1c, 0x10, 0x75, 0x46, 0xea, 0x92, 0xff, 0x87, }; static const wycheproof_xdh_test xdh_wei448_3960 = { .name = "xdh_wei448_3960", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3960_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3960_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3960_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 356 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3961 for XDH, tcId is 357 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3961_peerpubkey[] = { 0xa3, 0x5d, 0x62, 0x3f, 0x4e, 0xb1, 0x90, 0xd2, 0xf5, 0x18, 0x24, 0xdc, 0x97, 0xf3, 0x59, 0xd9, 0x93, 0x43, 0x40, 0x55, 0xfe, 0x18, 0xa0, 0xaa, 0x1a, 0xb0, 0x07, 0xc6, 0x00, 0x73, 0x59, 0xe1, 0x4b, 0xeb, 0xc8, 0xf6, 0xed, 0x82, 0x1f, 0xea, 0x47, 0x03, 0x53, 0x59, 0xc9, 0x7f, 0xda, 0x79, 0x3a, 0x3d, 0xc6, 0xc9, 0x97, 0x6d, 0xbe, 0x44, }; static const unsigned char xdh_wei448_3961_privkey[] = { 0x34, 0x3d, 0x69, 0xf9, 0xb1, 0x3e, 0x35, 0x7d, 0x71, 0x3b, 0x5c, 0xc8, 0x27, 0x17, 0xa5, 0xa5, 0x7a, 0xd2, 0x52, 0x9b, 0xdd, 0x81, 0xf6, 0x1e, 0xe6, 0x61, 0xcf, 0x27, 0x2e, 0xb2, 0x44, 0x89, 0xe6, 0xe6, 0x2e, 0x78, 0x2c, 0x40, 0xa9, 0x89, 0x1d, 0xe4, 0xd2, 0xa3, 0x93, 0x20, 0xc8, 0x1c, 0xfe, 0x07, 0xdf, 0xf6, 0x55, 0x85, 0xcc, 0xcd, }; static const unsigned char xdh_wei448_3961_sharedsecret[] = { 0x20, 0x32, 0x06, 0xa8, 0x7b, 0x93, 0xc0, 0x6d, 0x59, 0x31, 0xbd, 0xe7, 0x95, 0xa8, 0x0c, 0x9c, 0xa8, 0x7d, 0x25, 0xe4, 0x27, 0x44, 0x24, 0x3f, 0x39, 0x6c, 0xa2, 0x7c, 0x9e, 0x9a, 0x42, 0xce, 0xe7, 0xa7, 0xde, 0xda, 0x39, 0xe8, 0xe0, 0x66, 0x6b, 0xad, 0x66, 0xad, 0xca, 0x8f, 0x80, 0x56, 0x95, 0xa0, 0xff, 0x30, 0x38, 0x71, 0x9f, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3961 = { .name = "xdh_wei448_3961", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3961_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3961_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3961_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 6, tcId is 357 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3962 for XDH, tcId is 358 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3962_peerpubkey[] = { 0x3a, 0x1d, 0x28, 0x5d, 0x1a, 0x56, 0xa7, 0xce, 0x8f, 0x29, 0x79, 0x01, 0x78, 0xce, 0x16, 0xd4, 0xd0, 0x93, 0x49, 0xcd, 0x28, 0xe1, 0x0b, 0xd3, 0x45, 0x63, 0x4b, 0x9d, 0x07, 0x15, 0xec, 0x49, 0xf5, 0x1b, 0x00, 0x61, 0xfe, 0x51, 0x48, 0x43, 0x9f, 0x7a, 0x7b, 0x6c, 0x5b, 0x6c, 0x1d, 0x95, 0xde, 0x68, 0x38, 0xeb, 0xdf, 0xc0, 0xc3, 0x46, }; static const unsigned char xdh_wei448_3962_privkey[] = { 0x6c, 0x23, 0xd8, 0xf0, 0xe7, 0x47, 0x51, 0x69, 0xe0, 0xc7, 0xe3, 0xdf, 0xce, 0x80, 0xd1, 0xca, 0xe0, 0x48, 0x9c, 0xae, 0xf1, 0xfd, 0x1a, 0x4f, 0xf9, 0x00, 0xa1, 0x08, 0xea, 0x15, 0x41, 0xf9, 0xee, 0x72, 0x32, 0xdb, 0xe3, 0x60, 0x5a, 0x68, 0x3c, 0x78, 0x3a, 0x6a, 0xab, 0xbe, 0x8e, 0xda, 0xf9, 0x33, 0x03, 0x8f, 0xb2, 0xf1, 0x4a, 0xdf, }; static const unsigned char xdh_wei448_3962_sharedsecret[] = { 0x1e, 0xff, 0x19, 0x50, 0xbb, 0xcc, 0x94, 0x32, 0x2f, 0x02, 0xdd, 0x46, 0x39, 0x06, 0xc0, 0x9a, 0xe6, 0xd3, 0xd7, 0x51, 0x7c, 0x82, 0x58, 0xf0, 0xc6, 0x4b, 0x10, 0xc2, 0xa0, 0x25, 0xa1, 0x7d, 0x83, 0x05, 0xe5, 0x1f, 0x8e, 0x38, 0x64, 0x75, 0xd9, 0x4b, 0x17, 0x48, 0x46, 0x51, 0xf3, 0xa5, 0x2c, 0xa7, 0xef, 0x3f, 0x44, 0x0b, 0xbb, 0xfb, }; static const wycheproof_xdh_test xdh_wei448_3962 = { .name = "xdh_wei448_3962", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3962_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3962_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3962_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 6, tcId is 358 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3963 for XDH, tcId is 359 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3963_peerpubkey[] = { 0x8e, 0x7d, 0x1a, 0x85, 0xdd, 0x55, 0xe5, 0xc2, 0x1a, 0x18, 0xa6, 0x6d, 0xd1, 0x48, 0xcc, 0xbf, 0xad, 0x15, 0x1a, 0xd0, 0x94, 0xfa, 0x15, 0xa7, 0x6b, 0x00, 0x17, 0x2f, 0x30, 0xc7, 0xe2, 0x13, 0xae, 0x7f, 0xc6, 0xc1, 0x95, 0xde, 0x55, 0x8d, 0x0d, 0x1d, 0x8d, 0x61, 0xd0, 0xe1, 0xe8, 0xb8, 0x37, 0xd1, 0xdb, 0xa5, 0xc4, 0x4d, 0x90, 0x55, }; static const unsigned char xdh_wei448_3963_privkey[] = { 0x38, 0xc6, 0x76, 0xf2, 0xda, 0xd6, 0xc4, 0x3d, 0x19, 0x27, 0xe9, 0x62, 0x9e, 0xb6, 0xef, 0x80, 0x6f, 0x47, 0xf5, 0xbd, 0x8a, 0x4d, 0xdf, 0xd6, 0x16, 0x2e, 0x93, 0xc7, 0xc1, 0x80, 0xf3, 0x85, 0x72, 0x6d, 0xd4, 0xfe, 0x00, 0x9f, 0xd3, 0x80, 0xad, 0x6f, 0xed, 0x29, 0xe2, 0x09, 0x59, 0xba, 0xdf, 0x06, 0x04, 0x59, 0xf2, 0x8a, 0xe8, 0xcd, }; static const unsigned char xdh_wei448_3963_sharedsecret[] = { 0x0d, 0xac, 0xa1, 0xf8, 0x24, 0xd7, 0xb3, 0xd9, 0x60, 0x8d, 0x90, 0x57, 0x94, 0x80, 0xda, 0xf8, 0x09, 0xf9, 0x93, 0xce, 0x56, 0x49, 0x97, 0x73, 0x30, 0xc5, 0x23, 0x98, 0xfb, 0xef, 0x53, 0x16, 0x6d, 0x43, 0x24, 0x26, 0xa7, 0xec, 0x6d, 0xd6, 0xe7, 0x37, 0x95, 0xff, 0xbd, 0x53, 0xf3, 0xce, 0xf8, 0x2d, 0xf7, 0x7a, 0xd2, 0x8e, 0x9f, 0x06, }; static const wycheproof_xdh_test xdh_wei448_3963 = { .name = "xdh_wei448_3963", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3963_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3963_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3963_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 359 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3964 for XDH, tcId is 360 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3964_peerpubkey[] = { 0x8e, 0x50, 0x2e, 0xc4, 0x41, 0x68, 0xea, 0x75, 0x2a, 0x34, 0x55, 0xfe, 0x2a, 0x53, 0x9e, 0x53, 0x0b, 0x74, 0x06, 0xd6, 0xfd, 0xca, 0x11, 0x70, 0x6d, 0x54, 0x13, 0x01, 0xce, 0xd2, 0x8d, 0x6c, 0x42, 0x0e, 0xde, 0x92, 0xf8, 0xed, 0xa1, 0x02, 0xf8, 0x6a, 0xad, 0xbc, 0x0e, 0xdf, 0x27, 0x42, 0x74, 0x82, 0x58, 0xcd, 0xa2, 0x97, 0x59, 0x5c, }; static const unsigned char xdh_wei448_3964_privkey[] = { 0x18, 0x42, 0x86, 0x52, 0x9c, 0xf3, 0xb2, 0x5b, 0x75, 0x6c, 0x5d, 0x62, 0xea, 0x9b, 0x81, 0xab, 0xda, 0x33, 0xdf, 0x98, 0x8b, 0x90, 0x98, 0x3d, 0xdf, 0x1d, 0x6c, 0xa5, 0xf1, 0x9a, 0x7e, 0xe7, 0x83, 0xed, 0x55, 0x52, 0x77, 0x60, 0x75, 0xeb, 0x7b, 0x86, 0xfb, 0xc6, 0x94, 0x7d, 0x34, 0xf5, 0x04, 0x9b, 0x9e, 0xad, 0x84, 0xb5, 0xef, 0xc4, }; static const unsigned char xdh_wei448_3964_sharedsecret[] = { 0x32, 0xce, 0xda, 0xe0, 0x10, 0x35, 0x85, 0x2c, 0x0e, 0x3c, 0xb2, 0x7b, 0x49, 0x1e, 0xae, 0xc0, 0xf5, 0x99, 0xc9, 0x25, 0xf6, 0x07, 0xad, 0xe1, 0x93, 0xda, 0x94, 0x5a, 0xd0, 0xdb, 0x3d, 0xaf, 0xc9, 0xe0, 0xeb, 0xaf, 0xdc, 0xa1, 0xbf, 0xab, 0xc4, 0x74, 0x0e, 0x67, 0x2b, 0x37, 0x2a, 0x38, 0x3d, 0x77, 0x51, 0xef, 0x68, 0x7e, 0xba, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_3964 = { .name = "xdh_wei448_3964", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3964_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3964_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3964_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 6, tcId is 360 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3965 for XDH, tcId is 361 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3965_peerpubkey[] = { 0x80, 0xd8, 0xd7, 0xef, 0xb6, 0x1e, 0xe9, 0x96, 0x46, 0x34, 0x89, 0x4f, 0x64, 0xd6, 0xe7, 0x82, 0xf7, 0x78, 0x5b, 0x93, 0x88, 0x2e, 0x61, 0xd3, 0x13, 0x1e, 0x79, 0x27, 0x7b, 0x2d, 0x07, 0x62, 0xc0, 0x27, 0x89, 0x81, 0x22, 0x64, 0x97, 0x61, 0x09, 0x6a, 0x66, 0x02, 0x7b, 0x3f, 0x6b, 0x41, 0xc5, 0xd3, 0x47, 0x65, 0xc5, 0xb8, 0x46, 0xad, }; static const unsigned char xdh_wei448_3965_privkey[] = { 0xf0, 0x3e, 0x5d, 0xbb, 0x15, 0x87, 0x7c, 0xab, 0x76, 0xbb, 0x81, 0x18, 0x79, 0xa5, 0x98, 0x90, 0x83, 0xa2, 0x49, 0x1c, 0x33, 0xd5, 0xde, 0x3c, 0x13, 0xc6, 0x8f, 0xa1, 0x17, 0xd7, 0xda, 0x60, 0x83, 0x93, 0xf5, 0x55, 0xa3, 0x27, 0x86, 0x3b, 0xab, 0xe8, 0xf8, 0xb5, 0xf5, 0x24, 0xf3, 0xe5, 0x19, 0x43, 0x10, 0x54, 0xc2, 0xc8, 0x17, 0xc1, }; static const unsigned char xdh_wei448_3965_sharedsecret[] = { 0x2e, 0xf2, 0x40, 0x48, 0x03, 0x1f, 0xd4, 0xc0, 0x61, 0x5c, 0x0e, 0x27, 0x3a, 0xe3, 0x16, 0xf1, 0xcf, 0x74, 0x07, 0x32, 0xaa, 0xfa, 0xa1, 0x0f, 0x01, 0x07, 0xed, 0xb1, 0x5d, 0xf6, 0x35, 0x5b, 0x3b, 0x07, 0xe1, 0x6d, 0x7b, 0x9d, 0x3f, 0x28, 0x74, 0xf4, 0xd6, 0xe8, 0x7e, 0x56, 0xe5, 0x14, 0xa4, 0xfa, 0x7b, 0x2a, 0xab, 0x2e, 0x11, 0x0f, }; static const wycheproof_xdh_test xdh_wei448_3965 = { .name = "xdh_wei448_3965", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3965_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3965_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3965_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 361 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3966 for XDH, tcId is 362 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3966_peerpubkey[] = { 0xd7, 0xd8, 0xb5, 0x3d, 0xbd, 0x66, 0x09, 0x27, 0x9b, 0xdd, 0x62, 0x55, 0xda, 0x90, 0x05, 0xb9, 0xc9, 0xde, 0x75, 0xff, 0xbc, 0x4d, 0xbb, 0x27, 0xa6, 0x0a, 0x51, 0x59, 0xcd, 0xfc, 0xe3, 0xea, 0xb2, 0xf6, 0xe8, 0xdc, 0xb9, 0xba, 0x1a, 0x7f, 0x81, 0xb1, 0xc0, 0x7d, 0x5c, 0x82, 0x19, 0x28, 0xa7, 0x32, 0x79, 0x89, 0x3d, 0x1c, 0x3c, 0xd2, }; static const unsigned char xdh_wei448_3966_privkey[] = { 0xf8, 0x69, 0x4c, 0xd5, 0xfc, 0xa3, 0x29, 0xc6, 0xe4, 0xde, 0xfb, 0x17, 0xd4, 0x46, 0x54, 0x4a, 0x60, 0x01, 0x2d, 0xbc, 0xfa, 0x23, 0xd7, 0xd6, 0x5c, 0xaf, 0xf2, 0x81, 0xee, 0x94, 0x7a, 0x50, 0x8d, 0x34, 0xfa, 0x1f, 0xa2, 0x46, 0x93, 0x9d, 0x7c, 0x7e, 0xab, 0x93, 0xdb, 0x31, 0x50, 0xb8, 0x95, 0x8d, 0xf5, 0x60, 0xb9, 0xe4, 0x9a, 0xd0, }; static const unsigned char xdh_wei448_3966_sharedsecret[] = { 0xbf, 0xc7, 0xe3, 0x09, 0x9b, 0x4f, 0x48, 0xbd, 0x4b, 0x1b, 0x89, 0xde, 0xb5, 0x96, 0x87, 0x84, 0x7b, 0xf6, 0x01, 0x4d, 0x5a, 0xca, 0xfc, 0x24, 0x8b, 0x3b, 0x57, 0x6f, 0xaa, 0x11, 0x11, 0xba, 0xe6, 0xe8, 0x81, 0x02, 0x71, 0x05, 0xd7, 0x24, 0x0d, 0x89, 0xee, 0x6a, 0xc2, 0x00, 0xba, 0x0d, 0xfe, 0x46, 0x48, 0x6a, 0xe0, 0x7b, 0x0d, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_3966 = { .name = "xdh_wei448_3966", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3966_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3966_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3966_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 362 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3967 for XDH, tcId is 363 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3967_peerpubkey[] = { 0xef, 0x64, 0x72, 0x31, 0x7c, 0x20, 0x56, 0x6f, 0x5f, 0xec, 0xff, 0x8e, 0x18, 0x07, 0x75, 0x42, 0x43, 0x96, 0x87, 0x35, 0x4b, 0x9f, 0x9e, 0x77, 0x0f, 0x4d, 0xd7, 0x70, 0x69, 0x0b, 0x79, 0xa6, 0xd3, 0x50, 0x10, 0x00, 0xb6, 0xf5, 0x04, 0xad, 0x62, 0x8a, 0xc2, 0x00, 0xed, 0x89, 0xfd, 0x82, 0x2e, 0x13, 0x1c, 0x1c, 0x97, 0x1d, 0x82, 0xf0, }; static const unsigned char xdh_wei448_3967_privkey[] = { 0x98, 0xb2, 0xc9, 0xa0, 0xdf, 0xa3, 0x9a, 0xef, 0x17, 0x56, 0x33, 0x08, 0x9b, 0x35, 0x13, 0x30, 0x5c, 0x0d, 0x6f, 0x90, 0x69, 0x39, 0xff, 0x65, 0x1e, 0x5c, 0x59, 0xf9, 0x76, 0x29, 0x96, 0x32, 0xb1, 0x23, 0xed, 0x88, 0x27, 0x44, 0xda, 0xc5, 0xaf, 0xf2, 0x62, 0x86, 0x9a, 0xce, 0xd8, 0x4b, 0xa0, 0xd7, 0x1e, 0xa3, 0x91, 0xa4, 0xc9, 0xc9, }; static const unsigned char xdh_wei448_3967_sharedsecret[] = { 0x6a, 0x9e, 0x56, 0xff, 0x58, 0xe2, 0x9a, 0x0e, 0xf4, 0x40, 0xe5, 0x81, 0x1d, 0x5a, 0xa5, 0x14, 0x11, 0xd9, 0x31, 0x4b, 0xe2, 0xc6, 0xc0, 0xe8, 0x02, 0xa5, 0x55, 0x7b, 0x9a, 0x1e, 0xf7, 0x21, 0x8b, 0xc1, 0x17, 0x86, 0x5e, 0x85, 0xef, 0xb9, 0xcf, 0x2d, 0x7e, 0xca, 0xf9, 0x88, 0x7a, 0xed, 0xd8, 0x37, 0x93, 0x9f, 0x1a, 0xd0, 0xff, 0xd4, }; static const wycheproof_xdh_test xdh_wei448_3967 = { .name = "xdh_wei448_3967", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3967_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3967_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3967_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 6, tcId is 363 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3968 for XDH, tcId is 364 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3968_peerpubkey[] = { 0x6b, 0x70, 0x3f, 0x0d, 0x03, 0xcd, 0x81, 0xbc, 0x86, 0x27, 0x48, 0xa0, 0x47, 0xba, 0x6d, 0x7c, 0xc6, 0x61, 0x0d, 0xe2, 0xc4, 0x3b, 0xd8, 0x10, 0x59, 0x70, 0xdf, 0x02, 0xf1, 0x26, 0x25, 0x3f, 0x13, 0x74, 0x07, 0xef, 0xb1, 0x82, 0xa0, 0xed, 0xbc, 0xd3, 0xfa, 0xdd, 0x17, 0x0a, 0x33, 0xac, 0xfa, 0xdf, 0x18, 0x5f, 0xd0, 0xf3, 0x0f, 0xfb, }; static const unsigned char xdh_wei448_3968_privkey[] = { 0xa0, 0x33, 0x7e, 0x1c, 0x6e, 0xf5, 0x6a, 0xe9, 0xf2, 0xc5, 0x1f, 0x23, 0xea, 0xc2, 0x39, 0xc9, 0x50, 0x7c, 0x83, 0x12, 0x8e, 0xc9, 0xd6, 0xc8, 0x96, 0x75, 0x13, 0x28, 0xc3, 0x7d, 0x9e, 0x2c, 0x21, 0x5e, 0xb0, 0xca, 0xcc, 0x1b, 0xfc, 0xb1, 0x1e, 0xb8, 0x52, 0xff, 0xcf, 0xa3, 0x40, 0x24, 0x64, 0xb2, 0x71, 0x50, 0x45, 0xc8, 0x93, 0xd2, }; static const unsigned char xdh_wei448_3968_sharedsecret[] = { 0x46, 0x80, 0xb8, 0x74, 0xd6, 0x71, 0x8f, 0xe3, 0x66, 0x7b, 0x28, 0xd4, 0x6f, 0xda, 0xa8, 0x5b, 0x05, 0x22, 0x52, 0x0a, 0xd9, 0xe2, 0x09, 0x78, 0x8d, 0xff, 0x52, 0x42, 0x0b, 0x2e, 0x04, 0xc2, 0xea, 0xa9, 0xc9, 0x1b, 0x2d, 0xd2, 0x7e, 0xf5, 0xfd, 0x23, 0x07, 0x95, 0xe3, 0x42, 0x8f, 0xc7, 0x2f, 0x05, 0x4c, 0xb1, 0xfa, 0x46, 0x2b, 0xba, }; static const wycheproof_xdh_test xdh_wei448_3968 = { .name = "xdh_wei448_3968", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3968_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3968_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3968_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 6, tcId is 364 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3969 for XDH, tcId is 365 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3969_peerpubkey[] = { 0xc7, 0x4c, 0xb2, 0x63, 0x92, 0xf8, 0x4f, 0xab, 0xb9, 0xfe, 0x10, 0x79, 0x81, 0x74, 0xa6, 0x95, 0xca, 0x37, 0x50, 0xae, 0x72, 0x0d, 0x7e, 0xdd, 0xe1, 0xeb, 0x1b, 0xbc, 0x14, 0xde, 0x52, 0x42, 0x11, 0x9e, 0xa9, 0xde, 0x79, 0x6f, 0xa5, 0xa5, 0x38, 0xc0, 0xb6, 0x10, 0xb6, 0x5d, 0xa5, 0xa1, 0x0d, 0x47, 0xbb, 0x92, 0x31, 0x47, 0x7e, 0x0f, }; static const unsigned char xdh_wei448_3969_privkey[] = { 0x9c, 0x16, 0xc7, 0x35, 0x62, 0x84, 0xca, 0x60, 0x8f, 0x41, 0x12, 0x2d, 0xb6, 0xfd, 0x57, 0xf6, 0x7e, 0xd1, 0x4d, 0x9f, 0x82, 0x87, 0x0f, 0xe7, 0x67, 0xe6, 0x47, 0x60, 0xdd, 0x85, 0xe0, 0xc5, 0x50, 0x2d, 0x8c, 0x53, 0x17, 0xa5, 0x70, 0x72, 0x92, 0x82, 0xce, 0x5f, 0x51, 0x86, 0x40, 0xc5, 0x8c, 0xc0, 0x2e, 0xde, 0xf6, 0x38, 0xed, 0xe0, }; static const unsigned char xdh_wei448_3969_sharedsecret[] = { 0x2a, 0x74, 0x77, 0x12, 0x0b, 0xce, 0x86, 0x53, 0x3d, 0x19, 0xcd, 0x3c, 0xab, 0xc8, 0x35, 0x5b, 0xab, 0x91, 0xa1, 0x25, 0x6d, 0x9d, 0x0b, 0x54, 0x54, 0x06, 0xcc, 0x72, 0x39, 0xab, 0x9f, 0x75, 0xb6, 0x2d, 0x38, 0x19, 0x03, 0xa5, 0x1a, 0x4c, 0xa4, 0x14, 0x29, 0x20, 0xc0, 0x00, 0xfc, 0x80, 0xe4, 0x74, 0xe4, 0x1a, 0xce, 0xf9, 0xd7, 0x1b, }; static const wycheproof_xdh_test xdh_wei448_3969 = { .name = "xdh_wei448_3969", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3969_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3969_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3969_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 365 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3970 for XDH, tcId is 366 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3970_peerpubkey[] = { 0x5a, 0x07, 0xde, 0x5d, 0x53, 0xdc, 0xac, 0x22, 0xa4, 0x93, 0x5a, 0x11, 0x90, 0x9a, 0x8b, 0x5d, 0xc6, 0x62, 0x59, 0x96, 0x71, 0xe3, 0xba, 0xfc, 0x71, 0xf9, 0x8d, 0x8f, 0x64, 0x05, 0x6a, 0xb5, 0x19, 0x34, 0x8e, 0x1c, 0x8d, 0x74, 0x87, 0x00, 0x1d, 0x9b, 0xa5, 0xc0, 0x88, 0x8a, 0xef, 0x3a, 0x09, 0xe3, 0x99, 0x95, 0xc5, 0x15, 0xed, 0x1c, }; static const unsigned char xdh_wei448_3970_privkey[] = { 0x94, 0xd3, 0xf7, 0x22, 0xea, 0x49, 0xaa, 0xd9, 0xd7, 0xe6, 0x3d, 0x78, 0x4d, 0xf5, 0xa4, 0xb8, 0xea, 0xa3, 0x55, 0xbb, 0x13, 0x30, 0x81, 0xfb, 0x46, 0x6e, 0x8e, 0xbe, 0xae, 0xec, 0x80, 0xf6, 0x3a, 0xff, 0xc0, 0x3d, 0xee, 0x73, 0x32, 0xa3, 0xcf, 0x11, 0xb4, 0x44, 0x2c, 0x60, 0x27, 0x72, 0x7a, 0x65, 0x29, 0x66, 0xdf, 0x0f, 0x26, 0xf5, }; static const unsigned char xdh_wei448_3970_sharedsecret[] = { 0xa8, 0xed, 0x03, 0xdc, 0x9a, 0xc2, 0x65, 0x87, 0x90, 0xf0, 0x6a, 0xe5, 0x85, 0x8f, 0xd2, 0xc5, 0x4d, 0x25, 0x76, 0xf7, 0x79, 0x33, 0x86, 0xf8, 0xe9, 0xe6, 0xa9, 0xc2, 0x8a, 0xcd, 0xd0, 0x84, 0x0e, 0xb6, 0xfc, 0x23, 0x6b, 0x6e, 0x72, 0xfd, 0x7d, 0x23, 0x8c, 0x79, 0xd5, 0x0d, 0xc5, 0xec, 0x75, 0x8f, 0x2a, 0x1a, 0xad, 0xb4, 0x08, 0x8c, }; static const wycheproof_xdh_test xdh_wei448_3970 = { .name = "xdh_wei448_3970", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3970_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3970_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3970_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 366 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3971 for XDH, tcId is 367 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3971_peerpubkey[] = { 0xc2, 0x67, 0x4f, 0xc9, 0xde, 0xd2, 0x19, 0xe3, 0x48, 0x9e, 0x23, 0xcf, 0xcc, 0xc5, 0xe4, 0x09, 0x08, 0x5a, 0x62, 0xcc, 0xc9, 0x0e, 0x91, 0x2b, 0x4f, 0x25, 0x66, 0xe2, 0x28, 0xa2, 0x3b, 0x24, 0x36, 0x30, 0xdf, 0x20, 0x11, 0x65, 0x07, 0x13, 0x8d, 0xef, 0x1f, 0x10, 0xd7, 0xe7, 0x88, 0x1f, 0x93, 0xb1, 0x0b, 0x6e, 0x85, 0x59, 0x03, 0x57, }; static const unsigned char xdh_wei448_3971_privkey[] = { 0x84, 0xb7, 0xea, 0x45, 0x39, 0xa2, 0x5d, 0x59, 0x14, 0x12, 0x1d, 0xbb, 0x22, 0xa0, 0xaa, 0x6b, 0x6d, 0x39, 0x48, 0x79, 0x1f, 0x3e, 0xcb, 0xe6, 0xc2, 0x9e, 0x9b, 0xe7, 0x59, 0x85, 0xe1, 0x85, 0x28, 0xaa, 0xd1, 0xe8, 0xf5, 0x78, 0xeb, 0x60, 0x36, 0x7a, 0x21, 0x6c, 0xac, 0x12, 0x96, 0x82, 0x43, 0x18, 0xc6, 0xe0, 0xb0, 0xc3, 0x59, 0xfc, }; static const unsigned char xdh_wei448_3971_sharedsecret[] = { 0x94, 0xa2, 0x15, 0xb7, 0x82, 0x73, 0x1e, 0x91, 0xfb, 0x24, 0x9a, 0xf1, 0xef, 0xf1, 0x3a, 0x8a, 0x31, 0xe2, 0x66, 0x20, 0x83, 0x87, 0x45, 0xc4, 0x5f, 0xaf, 0x1b, 0x93, 0xd5, 0x2a, 0x9a, 0x2b, 0x76, 0x54, 0x96, 0x86, 0xd6, 0xdc, 0x68, 0xde, 0xa3, 0x95, 0x4e, 0x28, 0x2e, 0x25, 0xdb, 0x51, 0xba, 0x9a, 0x00, 0xdc, 0x40, 0x48, 0x61, 0xce, }; static const wycheproof_xdh_test xdh_wei448_3971 = { .name = "xdh_wei448_3971", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3971_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3971_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3971_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 7, tcId is 367 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3972 for XDH, tcId is 368 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3972_peerpubkey[] = { 0x6e, 0x2d, 0xea, 0x3b, 0x6f, 0x6f, 0xab, 0x4c, 0x40, 0xb5, 0xdd, 0x70, 0xf2, 0xa2, 0x0b, 0x4e, 0x94, 0xb8, 0x5c, 0xf6, 0x18, 0xde, 0xe1, 0x87, 0x26, 0x34, 0xfc, 0x3c, 0x11, 0xa1, 0xeb, 0xde, 0x1d, 0xec, 0x90, 0x46, 0x07, 0x3d, 0xab, 0x37, 0x99, 0x9c, 0xc4, 0xe2, 0xbb, 0x27, 0x8d, 0x9d, 0xa5, 0x39, 0xfc, 0x0c, 0x55, 0x4d, 0xd9, 0x68, }; static const unsigned char xdh_wei448_3972_privkey[] = { 0x24, 0x38, 0x8c, 0x6f, 0x8d, 0xbf, 0x84, 0x4c, 0xd9, 0xc8, 0x57, 0x5f, 0x9f, 0xc5, 0x81, 0x95, 0xb1, 0xd8, 0x5c, 0x9e, 0x87, 0x1e, 0x11, 0x83, 0x7a, 0x11, 0x98, 0xcf, 0xa6, 0x38, 0x22, 0x63, 0xd2, 0x76, 0xf1, 0xed, 0x8b, 0xe7, 0x18, 0x66, 0x86, 0xf4, 0x78, 0x67, 0x80, 0x90, 0xb4, 0xd8, 0x83, 0x82, 0x8d, 0x67, 0x99, 0x92, 0xb6, 0xf7, }; static const unsigned char xdh_wei448_3972_sharedsecret[] = { 0x90, 0x27, 0x2c, 0x81, 0x6f, 0xaa, 0x4b, 0x33, 0xc9, 0x4c, 0x02, 0x6c, 0x6b, 0xf0, 0xdb, 0x26, 0xc6, 0x85, 0x34, 0x6e, 0xc9, 0xc5, 0x84, 0x33, 0x8d, 0xf0, 0x07, 0xda, 0x8a, 0x22, 0x70, 0xe6, 0xbf, 0xe3, 0x94, 0xcc, 0xc2, 0x74, 0x8a, 0x3c, 0x69, 0xae, 0xe0, 0x3b, 0x97, 0xa4, 0x4f, 0xd6, 0x0f, 0x55, 0xd2, 0x80, 0x7a, 0xc3, 0xd3, 0x9d, }; static const wycheproof_xdh_test xdh_wei448_3972 = { .name = "xdh_wei448_3972", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3972_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3972_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3972_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 368 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3973 for XDH, tcId is 369 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3973_peerpubkey[] = { 0x74, 0x65, 0x25, 0xc0, 0xd0, 0xaa, 0x1c, 0x92, 0xbb, 0xed, 0x10, 0xc3, 0xe6, 0x5e, 0x76, 0x36, 0xf1, 0x15, 0x94, 0x4c, 0x1a, 0x1c, 0x22, 0xe0, 0x10, 0x5a, 0x77, 0xfa, 0xa2, 0x15, 0x70, 0x0e, 0x3e, 0xd2, 0x98, 0x86, 0x6a, 0xff, 0xbf, 0x38, 0xbb, 0xbd, 0x50, 0x11, 0x28, 0x5f, 0x10, 0x56, 0xad, 0x4e, 0x27, 0x7b, 0x2e, 0x05, 0x44, 0x93, }; static const unsigned char xdh_wei448_3973_privkey[] = { 0xe8, 0xf7, 0x13, 0x63, 0xb9, 0xc4, 0x20, 0x49, 0xcb, 0x42, 0x1c, 0xb6, 0x16, 0x6c, 0xe8, 0x40, 0xf4, 0x8d, 0x39, 0xcd, 0xc5, 0xa1, 0x1f, 0x8b, 0xe5, 0x27, 0x15, 0x34, 0xa5, 0x8d, 0x56, 0x4c, 0xeb, 0x7c, 0x5d, 0xb3, 0x39, 0x09, 0x81, 0x72, 0x93, 0xee, 0x17, 0xa9, 0x6c, 0x06, 0x21, 0x4e, 0x85, 0xa5, 0x16, 0x29, 0x6f, 0xbf, 0x53, 0xf5, }; static const unsigned char xdh_wei448_3973_sharedsecret[] = { 0x5d, 0x24, 0x56, 0x4b, 0x12, 0x25, 0x7f, 0x6e, 0x52, 0xf8, 0x26, 0x9a, 0x09, 0xe8, 0xb1, 0x13, 0x7e, 0xcb, 0x83, 0x2a, 0xcc, 0x34, 0x3e, 0x0a, 0x19, 0xbe, 0x45, 0x9e, 0xf2, 0xcf, 0xd2, 0x76, 0xd3, 0x9f, 0x95, 0x56, 0x49, 0x4a, 0x3e, 0x2d, 0xd5, 0xfc, 0x55, 0x00, 0xc6, 0x46, 0xef, 0xe0, 0x6f, 0x2d, 0x19, 0x20, 0xa2, 0xf3, 0x25, 0xee, }; static const wycheproof_xdh_test xdh_wei448_3973 = { .name = "xdh_wei448_3973", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3973_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3973_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3973_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 369 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3974 for XDH, tcId is 370 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3974_peerpubkey[] = { 0xcc, 0x14, 0x70, 0x70, 0x95, 0x30, 0x75, 0x5c, 0xb6, 0xfa, 0x6b, 0xd9, 0xda, 0x94, 0x72, 0x52, 0xc6, 0xdf, 0x9c, 0xdb, 0x14, 0x21, 0xa5, 0x70, 0xe0, 0xdb, 0xd2, 0x98, 0xbc, 0x56, 0xf3, 0x5f, 0x84, 0x4c, 0x9b, 0x42, 0xff, 0x60, 0xe9, 0xaf, 0x17, 0xb0, 0x06, 0x63, 0xe8, 0x8e, 0x08, 0x8f, 0x8a, 0x84, 0xc7, 0x30, 0x94, 0xe9, 0x44, 0xe7, }; static const unsigned char xdh_wei448_3974_privkey[] = { 0x2c, 0x8b, 0x77, 0x93, 0x12, 0x30, 0xba, 0xa9, 0x34, 0x0d, 0xec, 0xa7, 0x60, 0x7f, 0x72, 0x18, 0x66, 0x11, 0xe6, 0x40, 0xff, 0x3f, 0x90, 0xcd, 0xee, 0xcb, 0xf2, 0x07, 0xac, 0x31, 0xa2, 0x33, 0xcf, 0x57, 0x5f, 0xe9, 0xb9, 0xfb, 0x5f, 0x43, 0x81, 0xa2, 0xe8, 0x83, 0x60, 0xcd, 0xe2, 0xb0, 0x84, 0x71, 0x46, 0x30, 0x3f, 0xaf, 0xa6, 0xfa, }; static const unsigned char xdh_wei448_3974_sharedsecret[] = { 0xcf, 0xc1, 0xd9, 0xe2, 0x50, 0x44, 0x7d, 0x37, 0xa7, 0x0f, 0xfb, 0x67, 0x64, 0xe4, 0x24, 0x9f, 0x89, 0xa1, 0x4d, 0x16, 0x84, 0x57, 0x64, 0x17, 0x49, 0xd5, 0x1b, 0xda, 0x5f, 0x31, 0x09, 0xb5, 0x5e, 0xb6, 0x4d, 0x7e, 0x1d, 0xf1, 0x1a, 0x47, 0xc7, 0xca, 0xca, 0xc9, 0x91, 0xb8, 0x7b, 0x5b, 0xed, 0x3b, 0xe4, 0x54, 0xda, 0x3f, 0x9e, 0x9b, }; static const wycheproof_xdh_test xdh_wei448_3974 = { .name = "xdh_wei448_3974", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3974_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3974_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3974_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 7, tcId is 370 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3975 for XDH, tcId is 371 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3975_peerpubkey[] = { 0x28, 0xe2, 0x9f, 0xac, 0x5e, 0xeb, 0x6b, 0x5f, 0x19, 0xd1, 0x4f, 0x73, 0x6f, 0x09, 0x23, 0xd3, 0xca, 0x8a, 0x6f, 0x0c, 0x6d, 0xad, 0xb0, 0x99, 0x4e, 0x74, 0x23, 0xb1, 0x62, 0x13, 0x5b, 0x69, 0x64, 0xaf, 0xeb, 0xa4, 0x73, 0x09, 0xa5, 0xc3, 0x40, 0xe8, 0x64, 0xbe, 0x2d, 0x86, 0xde, 0x3f, 0x4c, 0x39, 0x65, 0xf5, 0x2e, 0xc6, 0xfb, 0x10, }; static const unsigned char xdh_wei448_3975_privkey[] = { 0xbc, 0x1e, 0x2a, 0xdc, 0xe0, 0xc4, 0x01, 0x64, 0xd0, 0x8b, 0x69, 0xc0, 0x85, 0xcb, 0x06, 0x43, 0xf9, 0x4d, 0x0f, 0xbb, 0x63, 0x40, 0xf1, 0x4a, 0x4a, 0xdf, 0xf5, 0x9d, 0x40, 0x2e, 0x96, 0xc7, 0xc6, 0xaf, 0x2d, 0xcc, 0x26, 0xd8, 0xd5, 0xdf, 0x8b, 0x90, 0xc8, 0xb2, 0x9c, 0x29, 0x81, 0xc3, 0x13, 0xc9, 0x6e, 0x89, 0xd8, 0xbb, 0x21, 0xe8, }; static const unsigned char xdh_wei448_3975_sharedsecret[] = { 0xda, 0x0f, 0x3e, 0x1d, 0xd1, 0x93, 0x73, 0x5a, 0xf9, 0x64, 0x89, 0xf5, 0x54, 0xaf, 0xef, 0x42, 0xef, 0x83, 0x7e, 0x7b, 0xcd, 0xb2, 0x07, 0xd9, 0x4e, 0xe5, 0xed, 0x41, 0x1a, 0xea, 0x06, 0x1d, 0x47, 0x86, 0x50, 0xe5, 0x5f, 0x3a, 0xe2, 0x6f, 0xe6, 0x2b, 0xd9, 0xe6, 0xf2, 0x70, 0x95, 0x96, 0xbc, 0x03, 0xf7, 0x82, 0x7a, 0x7b, 0x06, 0x18, }; static const wycheproof_xdh_test xdh_wei448_3975 = { .name = "xdh_wei448_3975", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3975_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3975_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3975_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 371 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3976 for XDH, tcId is 372 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3976_peerpubkey[] = { 0xbd, 0xc9, 0x21, 0x80, 0x54, 0xef, 0x5e, 0x3a, 0xa4, 0x40, 0x5b, 0xc7, 0x1e, 0x75, 0xe9, 0x06, 0x72, 0x60, 0xa7, 0x51, 0x06, 0x64, 0xf9, 0x1d, 0xd2, 0x88, 0x10, 0xbf, 0x2f, 0x6b, 0xec, 0x45, 0xd9, 0xb1, 0x7c, 0x96, 0xb3, 0xb5, 0x0a, 0x5e, 0xcd, 0xf6, 0x4f, 0x1e, 0xa9, 0x68, 0x28, 0xb6, 0x8c, 0x2e, 0x2c, 0x5c, 0xc2, 0x68, 0xb8, 0x45, }; static const unsigned char xdh_wei448_3976_privkey[] = { 0xbc, 0xae, 0x78, 0x6f, 0x69, 0xd6, 0x17, 0x12, 0x96, 0x2a, 0xf8, 0x9f, 0x67, 0x39, 0x72, 0xdc, 0x89, 0xa4, 0xde, 0xc5, 0x1f, 0xa7, 0x96, 0xe8, 0x25, 0xb3, 0x02, 0x05, 0xb1, 0x1c, 0xae, 0x6c, 0xc7, 0x35, 0xff, 0x5e, 0x1e, 0xe4, 0x82, 0x74, 0x01, 0x05, 0x3b, 0xb4, 0x8a, 0x9f, 0xb9, 0xfb, 0x18, 0xd9, 0xd9, 0x31, 0xf9, 0xcb, 0x56, 0xe9, }; static const unsigned char xdh_wei448_3976_sharedsecret[] = { 0x23, 0xa1, 0x0a, 0x2e, 0xf5, 0x07, 0xd3, 0x62, 0x66, 0xf3, 0x69, 0x36, 0x30, 0xfa, 0x7d, 0x0d, 0x59, 0x03, 0x26, 0xd0, 0x99, 0x4c, 0x22, 0xa2, 0xd5, 0xcf, 0x85, 0xd2, 0x24, 0xd0, 0x08, 0x54, 0xb7, 0x2b, 0x32, 0x74, 0xe9, 0xd1, 0x06, 0x10, 0x33, 0xb1, 0x1c, 0x6f, 0xdb, 0xde, 0x27, 0x37, 0x7b, 0xe3, 0x6b, 0xce, 0x38, 0xcc, 0xbf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_3976 = { .name = "xdh_wei448_3976", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3976_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3976_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3976_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 372 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3977 for XDH, tcId is 373 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3977_peerpubkey[] = { 0x7f, 0xda, 0xea, 0x8c, 0xf3, 0x83, 0x20, 0x55, 0xad, 0x8e, 0x05, 0x93, 0xa6, 0xae, 0x7f, 0x31, 0x93, 0x9d, 0xe0, 0x46, 0x3c, 0x56, 0xec, 0x32, 0x8c, 0xa9, 0x25, 0x0c, 0xff, 0x0a, 0x45, 0x63, 0x89, 0x60, 0xce, 0x55, 0x8e, 0x95, 0xd8, 0x06, 0xdd, 0x89, 0x43, 0xfb, 0x2d, 0x8e, 0xc0, 0x06, 0xcf, 0x44, 0x98, 0x75, 0xeb, 0xa0, 0x6b, 0x7e, }; static const unsigned char xdh_wei448_3977_privkey[] = { 0x68, 0xfc, 0xdc, 0xc5, 0xba, 0x2e, 0x44, 0x9b, 0x1b, 0x14, 0xd1, 0x1a, 0x27, 0x28, 0x12, 0xe8, 0xcf, 0xf2, 0xbf, 0x54, 0x8e, 0xa4, 0xf2, 0x28, 0x16, 0xd3, 0xb1, 0xfa, 0x8d, 0xa1, 0x01, 0xeb, 0x8d, 0x72, 0x5b, 0x2c, 0x86, 0x4c, 0x72, 0x84, 0x3e, 0x46, 0x45, 0xf3, 0x59, 0xea, 0x23, 0x6c, 0xc8, 0x3f, 0xf6, 0xa9, 0x3c, 0x7a, 0xbc, 0xf8, }; static const unsigned char xdh_wei448_3977_sharedsecret[] = { 0x98, 0x6e, 0x69, 0x86, 0x0b, 0xcf, 0x20, 0x59, 0xd8, 0x32, 0xb8, 0x6a, 0x15, 0xb6, 0xc5, 0x36, 0xf8, 0xb8, 0x47, 0xb7, 0x14, 0xa1, 0xdc, 0x64, 0x84, 0x87, 0xd6, 0xa4, 0xd9, 0xed, 0xb0, 0xe0, 0x04, 0xdc, 0xd9, 0x82, 0x09, 0x9f, 0x34, 0x4e, 0x23, 0xff, 0x36, 0x83, 0x12, 0xb3, 0xf2, 0xec, 0x85, 0x3f, 0x33, 0x20, 0x67, 0x43, 0x24, 0x60, }; static const wycheproof_xdh_test xdh_wei448_3977 = { .name = "xdh_wei448_3977", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3977_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3977_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3977_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 373 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3978 for XDH, tcId is 374 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3978_peerpubkey[] = { 0x07, 0x03, 0xc1, 0xc0, 0x35, 0x2e, 0x54, 0xc0, 0xcb, 0xc3, 0xc2, 0xec, 0x9f, 0x2d, 0x27, 0x97, 0xfe, 0xb2, 0x2e, 0x1f, 0x01, 0xb4, 0x3f, 0xb0, 0xda, 0x67, 0x5e, 0xba, 0x50, 0xc1, 0xa6, 0x96, 0xc9, 0x23, 0x69, 0x00, 0x61, 0xc8, 0xf3, 0x6f, 0x95, 0xab, 0x01, 0xf0, 0x8d, 0x3f, 0x6b, 0x43, 0xf1, 0xa5, 0x68, 0x8a, 0x7c, 0xe6, 0x9d, 0x7f, }; static const unsigned char xdh_wei448_3978_privkey[] = { 0x8c, 0x92, 0x48, 0x35, 0x57, 0x10, 0xe2, 0xa5, 0xb5, 0xfc, 0x05, 0x82, 0x9b, 0x97, 0xa9, 0x9b, 0xe5, 0x5a, 0x44, 0x1b, 0xc6, 0xc6, 0x17, 0xed, 0xaf, 0x5f, 0xe8, 0xb3, 0x63, 0x27, 0x04, 0x76, 0xb1, 0x51, 0x6e, 0x42, 0x49, 0x79, 0x76, 0x32, 0x67, 0xb8, 0x5c, 0xf9, 0x21, 0x2f, 0x58, 0xb0, 0x2b, 0x5f, 0x5c, 0xf0, 0xae, 0x57, 0x3c, 0xeb, }; static const unsigned char xdh_wei448_3978_sharedsecret[] = { 0x2c, 0xfe, 0x18, 0x4e, 0x46, 0x42, 0xbd, 0x7f, 0xb7, 0x82, 0x6d, 0x74, 0x86, 0x43, 0xdc, 0x1e, 0x4b, 0xad, 0xe0, 0x1e, 0xfd, 0xbb, 0x97, 0xab, 0x43, 0x75, 0xce, 0x70, 0x5d, 0x50, 0xeb, 0x5f, 0xa4, 0xb7, 0x15, 0xf8, 0xf6, 0x8c, 0xb4, 0xc2, 0xd3, 0x1f, 0x40, 0x5b, 0x9f, 0xcc, 0x7f, 0xdf, 0xaf, 0x45, 0xe2, 0x50, 0xee, 0xb4, 0x25, 0x96, }; static const wycheproof_xdh_test xdh_wei448_3978 = { .name = "xdh_wei448_3978", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3978_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3978_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3978_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 7, tcId is 374 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3979 for XDH, tcId is 375 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3979_peerpubkey[] = { 0x4d, 0xa7, 0xda, 0xb7, 0xbb, 0xd2, 0xd1, 0xe6, 0x5f, 0xa8, 0x27, 0xad, 0x65, 0x73, 0xb0, 0x58, 0xef, 0x88, 0xa6, 0x6b, 0x65, 0x58, 0xcb, 0xd5, 0x9a, 0x71, 0x05, 0x5f, 0x9f, 0x4e, 0xec, 0xb8, 0x17, 0xb4, 0xae, 0xd5, 0x62, 0xe5, 0xf7, 0x17, 0x8d, 0xa3, 0xb9, 0xe6, 0x38, 0xe6, 0xf8, 0xe0, 0xa4, 0xb2, 0x7c, 0xba, 0xd7, 0x7c, 0x7a, 0x81, }; static const unsigned char xdh_wei448_3979_privkey[] = { 0xc0, 0x53, 0x32, 0x24, 0xb8, 0x9a, 0x99, 0x1a, 0x65, 0xfe, 0x40, 0x36, 0x5e, 0x5f, 0x15, 0xaa, 0xb2, 0xbc, 0x76, 0x75, 0x3f, 0xb4, 0xa2, 0x21, 0xf1, 0x29, 0x14, 0x7a, 0xb9, 0x27, 0x4c, 0x76, 0x22, 0xc2, 0x41, 0xfb, 0x7e, 0x97, 0xdb, 0x21, 0x83, 0x56, 0xf3, 0xd0, 0x59, 0x40, 0x41, 0xba, 0x51, 0x03, 0xaf, 0x29, 0x84, 0xc5, 0xc0, 0xf5, }; static const unsigned char xdh_wei448_3979_sharedsecret[] = { 0xe8, 0xef, 0x23, 0x26, 0x55, 0x5f, 0x0f, 0xf5, 0x06, 0x2a, 0x57, 0xd4, 0x54, 0x82, 0xd5, 0x76, 0x72, 0x80, 0x20, 0x15, 0x0b, 0xd1, 0x0f, 0xa1, 0xf9, 0x5f, 0x09, 0x57, 0x47, 0x1e, 0x7b, 0xc4, 0x38, 0x85, 0x54, 0x2d, 0x04, 0x19, 0x07, 0xf5, 0xdc, 0xfe, 0x43, 0xd2, 0xaa, 0x86, 0x28, 0x61, 0x23, 0xc0, 0x04, 0x32, 0xf9, 0x8f, 0x59, 0x6f, }; static const wycheproof_xdh_test xdh_wei448_3979 = { .name = "xdh_wei448_3979", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3979_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3979_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3979_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 375 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3980 for XDH, tcId is 376 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3980_peerpubkey[] = { 0x5f, 0x95, 0xcf, 0x0a, 0xfe, 0x8f, 0x99, 0x15, 0xd9, 0x83, 0xc7, 0x17, 0x54, 0x32, 0x9e, 0xb0, 0x52, 0x77, 0x68, 0x60, 0x5b, 0xa8, 0xe5, 0x8c, 0xa2, 0xc6, 0x4a, 0x75, 0x0a, 0x52, 0x8c, 0x1a, 0x6c, 0x1a, 0xf8, 0x83, 0x7d, 0x93, 0xfc, 0x88, 0xe7, 0x2d, 0x8d, 0xdb, 0x67, 0x5f, 0xef, 0xda, 0x43, 0x85, 0x1d, 0x19, 0xf7, 0x99, 0x78, 0x85, }; static const unsigned char xdh_wei448_3980_privkey[] = { 0xe4, 0x58, 0x55, 0x7f, 0xbd, 0xec, 0x2e, 0x38, 0xa7, 0x6a, 0x03, 0xb7, 0xd7, 0x96, 0x4e, 0xe7, 0xd0, 0xa9, 0x52, 0xc3, 0xbe, 0x4f, 0x04, 0x45, 0x89, 0xa2, 0xda, 0xe9, 0x1e, 0x18, 0x44, 0xe7, 0x0b, 0x5b, 0xa2, 0x73, 0x67, 0xec, 0x7f, 0xc5, 0x48, 0x5c, 0xca, 0x82, 0xf7, 0xde, 0xdf, 0x47, 0x42, 0xa5, 0x6c, 0x7d, 0xb3, 0xe5, 0x98, 0xf3, }; static const unsigned char xdh_wei448_3980_sharedsecret[] = { 0x75, 0x31, 0xde, 0x90, 0xb1, 0x98, 0xac, 0xdb, 0x91, 0xd8, 0xd5, 0xff, 0xda, 0x2a, 0x9b, 0xd3, 0xaf, 0x0d, 0x2e, 0x04, 0x65, 0x09, 0x4d, 0xda, 0xe2, 0xdb, 0x7f, 0x9e, 0x21, 0xfb, 0x12, 0x57, 0x91, 0x20, 0x34, 0x56, 0xc6, 0x9e, 0x73, 0xa5, 0x46, 0xca, 0x38, 0x20, 0x61, 0x7a, 0x31, 0x2c, 0xd3, 0x17, 0x9c, 0xde, 0x2d, 0x7e, 0xcb, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3980 = { .name = "xdh_wei448_3980", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3980_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3980_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3980_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 7, tcId is 376 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3981 for XDH, tcId is 377 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3981_peerpubkey[] = { 0xa9, 0x1e, 0xe7, 0x64, 0xb9, 0x06, 0x93, 0x11, 0x51, 0x1b, 0xb4, 0xbd, 0xeb, 0xef, 0x48, 0x5f, 0xf2, 0xfb, 0x26, 0xe3, 0x4c, 0xa7, 0x44, 0x7b, 0x74, 0x33, 0xce, 0x92, 0xd6, 0x7e, 0xc2, 0x41, 0x95, 0x16, 0xc8, 0x87, 0x27, 0xf0, 0x7e, 0x47, 0x3b, 0xa6, 0x31, 0xa0, 0xf6, 0x68, 0x79, 0x9d, 0x86, 0x1c, 0x72, 0x46, 0xa3, 0x61, 0x73, 0x2e, }; static const unsigned char xdh_wei448_3981_privkey[] = { 0xcc, 0x78, 0x1a, 0x9d, 0xd0, 0xb1, 0x32, 0x1a, 0x4f, 0xf4, 0x4d, 0x3a, 0x97, 0xa8, 0x2f, 0xd4, 0x3b, 0x8b, 0xf4, 0xd4, 0x46, 0xa1, 0xef, 0x32, 0xa2, 0x14, 0x76, 0x48, 0xf3, 0x99, 0xd9, 0xae, 0x66, 0xcd, 0xf9, 0x55, 0x5d, 0xf5, 0xc2, 0xa9, 0xe3, 0xab, 0x33, 0x00, 0x46, 0x2a, 0x52, 0x20, 0x14, 0x11, 0x09, 0x0c, 0x76, 0x4f, 0x4e, 0xf2, }; static const unsigned char xdh_wei448_3981_sharedsecret[] = { 0xb9, 0x0c, 0x03, 0x5c, 0xfe, 0x44, 0xce, 0x40, 0x0c, 0x66, 0xe3, 0xa0, 0x90, 0x32, 0x85, 0x6d, 0x56, 0x74, 0x49, 0xbd, 0x98, 0x8d, 0xbf, 0xa0, 0x52, 0xee, 0x8f, 0xf0, 0x8b, 0xd0, 0x47, 0xc2, 0x94, 0xb7, 0xbe, 0x90, 0xb2, 0x8b, 0xa8, 0x90, 0xaf, 0x46, 0x1b, 0xaa, 0xba, 0xd2, 0xcb, 0x0e, 0x31, 0x1a, 0x12, 0xe6, 0xa2, 0xc5, 0x93, 0x3d, }; static const wycheproof_xdh_test xdh_wei448_3981 = { .name = "xdh_wei448_3981", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3981_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3981_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3981_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 7, tcId is 377 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3982 for XDH, tcId is 378 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3982_peerpubkey[] = { 0xf2, 0xf5, 0xf2, 0xc7, 0xc6, 0xe5, 0x79, 0x77, 0x67, 0x11, 0x59, 0x10, 0x82, 0xad, 0xf2, 0x9e, 0xa2, 0xec, 0x35, 0x96, 0xdb, 0x73, 0xa0, 0xda, 0xf8, 0x67, 0x0a, 0x4f, 0xab, 0x96, 0x0f, 0x74, 0xa4, 0x8e, 0xb3, 0xd3, 0xab, 0x6d, 0x6e, 0x1e, 0xa9, 0x49, 0x71, 0x80, 0x9f, 0x42, 0xb8, 0x38, 0x72, 0x8e, 0xc9, 0x9e, 0xd4, 0xe8, 0xa9, 0xaa, }; static const unsigned char xdh_wei448_3982_privkey[] = { 0xfc, 0x9d, 0xee, 0x93, 0x89, 0x06, 0x11, 0xc1, 0x15, 0x21, 0xce, 0x1f, 0x22, 0x7a, 0x66, 0xb4, 0xab, 0xd8, 0x05, 0x7c, 0x76, 0xff, 0x83, 0x82, 0x78, 0xc9, 0xa6, 0x28, 0xe4, 0x46, 0xfc, 0x20, 0xc3, 0xcd, 0xc3, 0x85, 0x61, 0x2e, 0x84, 0xd2, 0xe4, 0x70, 0xbf, 0xf8, 0x0e, 0xef, 0x57, 0x05, 0x14, 0x59, 0x5b, 0x35, 0xbc, 0x1a, 0x13, 0xe6, }; static const unsigned char xdh_wei448_3982_sharedsecret[] = { 0x3b, 0x80, 0x35, 0xf4, 0x81, 0x6c, 0xce, 0x9a, 0xdf, 0xfa, 0x75, 0x50, 0x82, 0x51, 0x96, 0x84, 0x06, 0x25, 0x29, 0xe5, 0x07, 0x46, 0x66, 0xf6, 0xc3, 0x19, 0x5a, 0xf6, 0x26, 0xb7, 0x34, 0xdd, 0x3a, 0x9c, 0xc7, 0xfd, 0xdf, 0xd0, 0x10, 0xbf, 0xb9, 0x00, 0xe9, 0x59, 0x29, 0x29, 0xa6, 0xc8, 0x72, 0x5d, 0x60, 0xdf, 0x6f, 0xcc, 0xbe, 0x05, }; static const wycheproof_xdh_test xdh_wei448_3982 = { .name = "xdh_wei448_3982", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3982_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3982_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3982_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 7, tcId is 378 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3983 for XDH, tcId is 379 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3983_peerpubkey[] = { 0x6c, 0xef, 0x89, 0x65, 0x3c, 0xcc, 0x19, 0x99, 0xa5, 0x98, 0x0a, 0x53, 0x7a, 0x2d, 0xa8, 0x26, 0xdd, 0x9d, 0xd0, 0xa3, 0xba, 0x4a, 0xa3, 0xd4, 0x0b, 0x53, 0xd4, 0xe2, 0x1e, 0xa7, 0x44, 0xb1, 0xe9, 0x89, 0x30, 0x79, 0x2b, 0x34, 0xd7, 0x4b, 0x7e, 0x81, 0x7f, 0x15, 0xbb, 0x2c, 0x06, 0x6f, 0x40, 0xbb, 0xab, 0x05, 0x7a, 0xac, 0x9a, 0x40, }; static const unsigned char xdh_wei448_3983_privkey[] = { 0xd8, 0xe1, 0x3c, 0x43, 0xed, 0x11, 0x43, 0x13, 0xd2, 0x3c, 0x04, 0xe5, 0x12, 0xad, 0x78, 0x20, 0x30, 0xcf, 0x65, 0xaa, 0x10, 0xbe, 0x0f, 0x43, 0x05, 0x03, 0x91, 0xe3, 0xfe, 0x2e, 0x3a, 0x55, 0x69, 0x7d, 0x24, 0x58, 0xff, 0xec, 0x4c, 0x8f, 0x66, 0x41, 0x4f, 0x69, 0xd9, 0x6f, 0x72, 0x5e, 0xe2, 0x37, 0xe8, 0xb7, 0x12, 0x54, 0x5c, 0xe4, }; static const unsigned char xdh_wei448_3983_sharedsecret[] = { 0xe6, 0x26, 0x59, 0x62, 0x59, 0x1d, 0x6a, 0xf3, 0x76, 0x1e, 0xc7, 0xea, 0xfb, 0x52, 0x2b, 0x0e, 0x1e, 0x49, 0x3e, 0x6d, 0xb8, 0xae, 0x41, 0xff, 0xeb, 0x89, 0xb9, 0xa0, 0xa4, 0xe8, 0xc7, 0x1a, 0x87, 0x29, 0xa7, 0xe2, 0x4e, 0xfd, 0x41, 0x3a, 0x18, 0x17, 0x8c, 0xf0, 0x6d, 0xd4, 0x0d, 0xf4, 0xde, 0x7e, 0xcd, 0x39, 0x7f, 0x00, 0xb6, 0x3a, }; static const wycheproof_xdh_test xdh_wei448_3983 = { .name = "xdh_wei448_3983", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3983_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3983_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3983_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 379 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3984 for XDH, tcId is 380 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3984_peerpubkey[] = { 0x19, 0xe5, 0x81, 0xec, 0xc7, 0x9d, 0x67, 0xd1, 0x56, 0x90, 0x89, 0x3a, 0xe6, 0x76, 0x39, 0xa6, 0x8e, 0x66, 0xb9, 0x25, 0x26, 0x77, 0xc8, 0x9a, 0xa6, 0x6b, 0x57, 0xd9, 0x69, 0xcd, 0xbf, 0x99, 0xec, 0x66, 0xec, 0x96, 0x4c, 0x02, 0x5a, 0xef, 0xa0, 0x81, 0x7f, 0xcf, 0xb7, 0x68, 0x9f, 0xb4, 0x77, 0x05, 0x51, 0x29, 0xe7, 0x7c, 0xe8, 0x92, }; static const unsigned char xdh_wei448_3984_privkey[] = { 0x94, 0x6e, 0x8d, 0x97, 0x47, 0x43, 0x26, 0xca, 0x14, 0xb1, 0xf8, 0x5b, 0x64, 0xfb, 0x22, 0xf7, 0xf6, 0xae, 0xec, 0xe2, 0x75, 0x9b, 0xfe, 0xc0, 0x33, 0x7d, 0x80, 0xab, 0xb8, 0x98, 0xd8, 0x57, 0xf9, 0xda, 0x52, 0x84, 0xff, 0x68, 0x8c, 0xec, 0x5e, 0x5d, 0xc9, 0x62, 0xeb, 0x01, 0x1f, 0x42, 0xd1, 0x57, 0x71, 0xc1, 0xaa, 0x89, 0xc4, 0xea, }; static const unsigned char xdh_wei448_3984_sharedsecret[] = { 0x33, 0x19, 0x0b, 0x5c, 0xd0, 0x3a, 0x49, 0x6f, 0xa9, 0xfb, 0xe8, 0x3f, 0x0d, 0x6c, 0x4a, 0x06, 0xe1, 0xf7, 0xc0, 0x3a, 0xb6, 0xb3, 0xf4, 0x1e, 0x83, 0x6c, 0x25, 0x20, 0xaf, 0x79, 0xd1, 0x5c, 0x8e, 0xd3, 0x64, 0xe2, 0x7d, 0x85, 0x44, 0x6d, 0x87, 0x4d, 0x08, 0x98, 0xee, 0xc5, 0xb9, 0xa5, 0xb0, 0xd7, 0x81, 0x17, 0x6c, 0xa6, 0xc3, 0x35, }; static const wycheproof_xdh_test xdh_wei448_3984 = { .name = "xdh_wei448_3984", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3984_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3984_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3984_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 7, tcId is 380 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3985 for XDH, tcId is 381 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3985_peerpubkey[] = { 0x13, 0x98, 0x9f, 0x93, 0x44, 0xc1, 0x10, 0xfb, 0x0a, 0x21, 0x6a, 0x23, 0x37, 0xc5, 0x3a, 0xde, 0xd3, 0x39, 0xd8, 0x60, 0x01, 0xe5, 0xc0, 0x0f, 0xc8, 0x83, 0x31, 0x34, 0x99, 0xb4, 0xc1, 0x17, 0x48, 0x7f, 0xf4, 0x9f, 0xcd, 0xa1, 0xc3, 0x6a, 0xc0, 0x80, 0xb2, 0xa5, 0xed, 0xf0, 0xe6, 0x28, 0x26, 0xce, 0x01, 0x6b, 0x7b, 0x68, 0xf6, 0xa0, }; static const unsigned char xdh_wei448_3985_privkey[] = { 0xcc, 0xb9, 0xda, 0x3c, 0x63, 0xe1, 0xed, 0xc2, 0x88, 0x4e, 0x19, 0xd8, 0xd1, 0x04, 0x0d, 0x9d, 0xd6, 0x82, 0x90, 0xd2, 0xec, 0xfc, 0xe7, 0xf9, 0xb1, 0xcd, 0x5c, 0xb1, 0x3d, 0xc3, 0xa5, 0xf3, 0x5d, 0x15, 0x0b, 0x39, 0x95, 0xdd, 0x76, 0xa1, 0x36, 0x33, 0xbe, 0xed, 0x2f, 0xed, 0xed, 0x76, 0x4b, 0x78, 0x73, 0xaf, 0xb6, 0x5c, 0xf6, 0xee, }; static const unsigned char xdh_wei448_3985_sharedsecret[] = { 0xdc, 0x25, 0x69, 0x06, 0xd9, 0x5f, 0x81, 0xe3, 0x0d, 0x47, 0x72, 0xc7, 0xaa, 0xd6, 0xb1, 0x4e, 0xc1, 0xe3, 0x1e, 0x62, 0x17, 0x31, 0x9a, 0x91, 0xaa, 0xc3, 0xbe, 0x8a, 0x36, 0x0e, 0x5d, 0x9a, 0x7e, 0x05, 0x15, 0xc6, 0x93, 0xfd, 0x99, 0x9f, 0x28, 0x88, 0x3d, 0x4b, 0xf8, 0xa8, 0xc6, 0x71, 0x66, 0x8a, 0xce, 0x30, 0xb7, 0x20, 0x8c, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_3985 = { .name = "xdh_wei448_3985", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3985_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3985_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3985_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 381 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3986 for XDH, tcId is 382 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3986_peerpubkey[] = { 0x92, 0x91, 0xf9, 0x26, 0x89, 0x0a, 0xa8, 0x69, 0x69, 0x97, 0x8c, 0x09, 0xe9, 0xec, 0xad, 0x96, 0x86, 0x65, 0x7f, 0x45, 0x1c, 0x93, 0x1e, 0xbe, 0x37, 0x49, 0x8d, 0xcb, 0x0e, 0x02, 0x80, 0x41, 0xe8, 0x44, 0x7f, 0x91, 0xfd, 0x87, 0x34, 0x77, 0xb4, 0x57, 0xcb, 0xd9, 0xa3, 0x93, 0x2f, 0xb2, 0x87, 0xf9, 0x45, 0xfe, 0x72, 0x13, 0xfc, 0xa4, }; static const unsigned char xdh_wei448_3986_privkey[] = { 0xf8, 0x7e, 0x2a, 0x3f, 0xea, 0x7e, 0x8a, 0xd5, 0xa3, 0xd2, 0x5b, 0xf6, 0x6d, 0xc3, 0x12, 0x36, 0x27, 0x9b, 0xdb, 0xc5, 0x9b, 0xf6, 0x1c, 0x47, 0x93, 0x0c, 0x49, 0x56, 0xf2, 0x2e, 0x02, 0xc0, 0x76, 0x7e, 0x55, 0xd1, 0xdd, 0xf3, 0x79, 0xce, 0x4e, 0x2d, 0x9c, 0x6b, 0xd3, 0x8a, 0xc6, 0x9e, 0x02, 0x4b, 0x2d, 0x9c, 0xfb, 0x18, 0x16, 0xe9, }; static const unsigned char xdh_wei448_3986_sharedsecret[] = { 0x67, 0x93, 0x1b, 0x5e, 0x94, 0x7f, 0x47, 0x9c, 0x05, 0xb0, 0x6f, 0x5d, 0x25, 0x6e, 0xa9, 0xe3, 0x55, 0x95, 0x06, 0x00, 0xc8, 0x04, 0xd9, 0xac, 0xca, 0x2e, 0x1a, 0x18, 0xc7, 0x1e, 0x54, 0xf4, 0x40, 0xaa, 0x5b, 0x1c, 0xaa, 0xae, 0x40, 0xda, 0x81, 0x52, 0x88, 0x84, 0xed, 0xd7, 0x1c, 0x59, 0x32, 0x98, 0x1b, 0x03, 0x98, 0x62, 0xe6, 0xde, }; static const wycheproof_xdh_test xdh_wei448_3986 = { .name = "xdh_wei448_3986", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3986_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3986_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3986_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 382 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3987 for XDH, tcId is 383 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3987_peerpubkey[] = { 0xe7, 0x89, 0x23, 0x79, 0x43, 0xcb, 0xb6, 0xb6, 0x38, 0xa2, 0xc9, 0x0d, 0x1c, 0x66, 0xb9, 0x28, 0x68, 0x50, 0xa6, 0xb7, 0xb4, 0x1e, 0x43, 0xc8, 0xa6, 0x52, 0x5d, 0x98, 0x04, 0x26, 0x48, 0xfe, 0x16, 0x2b, 0x61, 0xe1, 0x99, 0xba, 0x04, 0x1a, 0x95, 0xe7, 0x1d, 0x79, 0xb1, 0xbf, 0xb8, 0x11, 0x9b, 0x35, 0xa1, 0x44, 0xec, 0xea, 0xc5, 0xf4, }; static const unsigned char xdh_wei448_3987_privkey[] = { 0x78, 0xeb, 0xd7, 0x26, 0x1f, 0x71, 0xc5, 0x3b, 0x04, 0xae, 0x01, 0x87, 0xa6, 0x6c, 0x83, 0x33, 0x67, 0x38, 0x3e, 0x8c, 0x80, 0x2c, 0xf6, 0x55, 0xb2, 0x74, 0xb5, 0xbd, 0x7c, 0x5c, 0x07, 0x28, 0x72, 0xa3, 0xe5, 0xd2, 0xf7, 0xc1, 0x34, 0x47, 0x53, 0xc8, 0xec, 0xc6, 0x8b, 0xc3, 0xfc, 0xea, 0xec, 0xca, 0xca, 0xfd, 0x72, 0x91, 0x39, 0xf0, }; static const unsigned char xdh_wei448_3987_sharedsecret[] = { 0x6f, 0x8f, 0xa9, 0xae, 0xdd, 0x0e, 0x3d, 0xec, 0x31, 0x88, 0x9e, 0x77, 0x51, 0xb9, 0x37, 0x8b, 0xcc, 0x1b, 0xf2, 0xd7, 0xbb, 0x08, 0x22, 0xfe, 0x5d, 0x76, 0x36, 0x10, 0xee, 0x41, 0xd3, 0xd3, 0xe8, 0xb4, 0x04, 0x44, 0x6f, 0x45, 0x6a, 0xf9, 0xe9, 0xed, 0x1c, 0x83, 0x1e, 0x84, 0x62, 0xee, 0x1a, 0xb2, 0x4f, 0x77, 0x18, 0xc6, 0xc9, 0xff, }; static const wycheproof_xdh_test xdh_wei448_3987 = { .name = "xdh_wei448_3987", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3987_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3987_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3987_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 7, tcId is 383 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3988 for XDH, tcId is 384 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3988_peerpubkey[] = { 0x13, 0x32, 0xb9, 0xb6, 0x78, 0x2e, 0x4c, 0x90, 0x03, 0xc7, 0xfa, 0x28, 0x3b, 0xda, 0x21, 0x46, 0x83, 0x72, 0xb2, 0x52, 0x1e, 0xe7, 0xfd, 0xe4, 0x78, 0x5d, 0xde, 0x62, 0x54, 0x7a, 0x98, 0x4e, 0x95, 0x64, 0xb8, 0xcb, 0x8a, 0x88, 0x9c, 0x9f, 0x18, 0xaf, 0xd1, 0xa2, 0xaa, 0x41, 0xa8, 0x8a, 0xfc, 0x14, 0x43, 0x6b, 0x1f, 0xe0, 0x2d, 0x69, }; static const unsigned char xdh_wei448_3988_privkey[] = { 0xe0, 0xce, 0x4d, 0xea, 0xa0, 0x83, 0xdc, 0x1c, 0xa7, 0x92, 0x7b, 0xb9, 0x1f, 0x6a, 0x76, 0xe5, 0x6e, 0x3b, 0x17, 0xe9, 0x72, 0x4d, 0xc5, 0x53, 0x4c, 0xd9, 0x5e, 0x53, 0x52, 0x21, 0xcc, 0xf2, 0x30, 0xe6, 0x51, 0x10, 0xda, 0x23, 0x75, 0x77, 0x28, 0xd8, 0x0c, 0x25, 0x84, 0x3b, 0x6d, 0xfe, 0x02, 0x2e, 0xa7, 0xe6, 0x6b, 0xed, 0x39, 0xe8, }; static const unsigned char xdh_wei448_3988_sharedsecret[] = { 0x4e, 0x35, 0xa6, 0x77, 0xd7, 0x5f, 0x81, 0x40, 0x80, 0x42, 0x69, 0x54, 0xa3, 0x1b, 0x7d, 0x91, 0xc3, 0x6c, 0x58, 0x36, 0x52, 0x4e, 0xee, 0xe4, 0x13, 0x8c, 0x7c, 0x42, 0x15, 0xbb, 0x86, 0x65, 0x1a, 0x40, 0x81, 0xf7, 0x57, 0x8b, 0x70, 0x8a, 0xaf, 0x53, 0x85, 0xe8, 0xf1, 0x95, 0x07, 0xa0, 0x3a, 0xf6, 0x49, 0xf9, 0x17, 0x99, 0x08, 0xca, }; static const wycheproof_xdh_test xdh_wei448_3988 = { .name = "xdh_wei448_3988", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3988_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3988_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3988_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 7, tcId is 384 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3989 for XDH, tcId is 385 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3989_peerpubkey[] = { 0xbd, 0xd1, 0x80, 0xb5, 0xf6, 0xbb, 0x4f, 0xdc, 0xb2, 0x28, 0x8e, 0x45, 0x93, 0x8f, 0x0b, 0xfc, 0x5f, 0x9d, 0xa2, 0x58, 0x6a, 0xa8, 0xd5, 0x0d, 0x77, 0x1e, 0xbd, 0x50, 0xf5, 0x71, 0xd0, 0xea, 0xbb, 0xfe, 0xae, 0xa7, 0x7a, 0x0b, 0x6c, 0xbc, 0xd7, 0x15, 0xab, 0x56, 0x35, 0xd6, 0xc6, 0x22, 0xab, 0x2f, 0x6a, 0x68, 0x80, 0x96, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_3989_privkey[] = { 0x20, 0x40, 0x9b, 0x40, 0x15, 0xd8, 0x73, 0x1f, 0x86, 0xbe, 0x47, 0xdb, 0xc0, 0x7d, 0x26, 0x87, 0xf0, 0x9a, 0x38, 0x01, 0x39, 0x6a, 0xfd, 0x94, 0xcf, 0x39, 0xe6, 0xf7, 0x46, 0x25, 0x35, 0xd7, 0x94, 0x0e, 0xcb, 0xbc, 0xf8, 0x58, 0xb3, 0xd9, 0x8e, 0xc0, 0x95, 0xb4, 0xfd, 0x52, 0x54, 0x81, 0xb4, 0xd3, 0x2d, 0xc8, 0xb8, 0x3a, 0x76, 0xe4, }; static const unsigned char xdh_wei448_3989_sharedsecret[] = { 0xaa, 0x2a, 0xeb, 0x87, 0x18, 0x6d, 0x27, 0x52, 0x89, 0xb4, 0x73, 0x54, 0x03, 0xc3, 0xb0, 0xf4, 0x13, 0x09, 0xa8, 0x6f, 0xcb, 0x26, 0xf9, 0xb9, 0x12, 0x16, 0x0a, 0xe5, 0x5b, 0xeb, 0xe8, 0x85, 0x4b, 0x63, 0x3f, 0xe3, 0x57, 0x84, 0x63, 0xec, 0x1e, 0x74, 0x80, 0x2d, 0xeb, 0x1d, 0x76, 0x1f, 0x77, 0x23, 0x71, 0xbf, 0x6d, 0xf2, 0x4d, 0x77, }; static const wycheproof_xdh_test xdh_wei448_3989 = { .name = "xdh_wei448_3989", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3989_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3989_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3989_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 385 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3990 for XDH, tcId is 386 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3990_peerpubkey[] = { 0xd9, 0x26, 0x35, 0xc4, 0x3c, 0x6b, 0x8e, 0xe5, 0x2f, 0xc0, 0x30, 0x1c, 0x76, 0x01, 0xee, 0x9d, 0xcb, 0x10, 0x71, 0xf2, 0xf0, 0x51, 0x55, 0xc3, 0x13, 0xcc, 0x3a, 0x5e, 0xa2, 0xa0, 0x81, 0xbd, 0xfc, 0xd6, 0x1c, 0xde, 0x45, 0xb3, 0x94, 0x01, 0x7c, 0xa3, 0x2c, 0xc5, 0x14, 0xc4, 0x66, 0x5a, 0x5a, 0xc9, 0xc6, 0xcf, 0x5c, 0x29, 0xc2, 0xe6, }; static const unsigned char xdh_wei448_3990_privkey[] = { 0x6c, 0x4b, 0xaf, 0xc2, 0x7a, 0x17, 0x46, 0xea, 0xf9, 0x19, 0xe2, 0x57, 0xb6, 0xeb, 0xc6, 0x17, 0x75, 0x37, 0x8f, 0xc4, 0x08, 0x24, 0x52, 0xf4, 0x93, 0x70, 0x09, 0x68, 0x51, 0x3e, 0x17, 0x57, 0x8d, 0x9f, 0x1e, 0xe7, 0x9e, 0x7a, 0x8c, 0x52, 0x9a, 0xb9, 0x70, 0x21, 0x7a, 0xbc, 0x1c, 0x4b, 0xb5, 0xf4, 0xd1, 0x6c, 0x0a, 0x3a, 0x3b, 0xf3, }; static const unsigned char xdh_wei448_3990_sharedsecret[] = { 0x3d, 0x2a, 0x86, 0x0f, 0xb7, 0xef, 0x56, 0xdf, 0xc8, 0x5a, 0x92, 0x24, 0xde, 0x7c, 0xf2, 0x6f, 0x09, 0xe7, 0x04, 0x38, 0x1a, 0x81, 0xe9, 0x9c, 0xc1, 0xb8, 0xb1, 0x71, 0xaa, 0x95, 0x3d, 0x20, 0x1c, 0x8c, 0x6a, 0x2f, 0xd2, 0xd9, 0xba, 0x08, 0xf2, 0x88, 0x31, 0xd4, 0x23, 0xc6, 0xb8, 0xe3, 0x31, 0xa5, 0xad, 0x12, 0xf0, 0x05, 0xfe, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_3990 = { .name = "xdh_wei448_3990", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3990_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3990_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3990_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 386 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3991 for XDH, tcId is 387 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3991_peerpubkey[] = { 0x89, 0x1b, 0x7d, 0x3d, 0x80, 0x11, 0x71, 0xc4, 0xc5, 0x83, 0x95, 0x2a, 0xa9, 0x3e, 0x29, 0x80, 0xed, 0x5e, 0x29, 0xc3, 0xbb, 0xaf, 0x82, 0x26, 0xd6, 0xf7, 0x9c, 0xb6, 0x86, 0x67, 0x90, 0x58, 0x04, 0x5f, 0xd5, 0x07, 0x57, 0xaa, 0x58, 0x82, 0x75, 0x3d, 0xa4, 0x74, 0x8f, 0xf1, 0x19, 0xf6, 0xe7, 0xeb, 0xd8, 0x92, 0xbe, 0x28, 0xd9, 0xf2, }; static const unsigned char xdh_wei448_3991_privkey[] = { 0x64, 0x4f, 0xf7, 0xf2, 0x64, 0xe2, 0x1d, 0x0a, 0x84, 0x65, 0xaf, 0x22, 0x40, 0x2b, 0xa6, 0xb7, 0x35, 0x8c, 0x4c, 0x6c, 0xf2, 0x9d, 0x9a, 0xc8, 0x98, 0xce, 0x40, 0xf6, 0x6c, 0xc8, 0x60, 0xce, 0x48, 0xf1, 0xea, 0xf8, 0x6d, 0xc5, 0x44, 0x61, 0xed, 0x06, 0xf4, 0x8b, 0x3e, 0x5d, 0xae, 0x17, 0x2d, 0x21, 0x20, 0x12, 0x51, 0x47, 0x3c, 0xec, }; static const unsigned char xdh_wei448_3991_sharedsecret[] = { 0xce, 0x34, 0xa2, 0x34, 0x63, 0x77, 0x27, 0x43, 0x04, 0xdf, 0xde, 0xcd, 0x29, 0xe3, 0xd9, 0x85, 0xdb, 0x46, 0x08, 0x85, 0xad, 0x09, 0xf9, 0xaf, 0x4c, 0x22, 0xd9, 0x8f, 0xef, 0x11, 0x71, 0xc4, 0x1b, 0xdb, 0xba, 0xd0, 0xf2, 0x18, 0xb9, 0x8a, 0x9f, 0xc5, 0x73, 0x36, 0x97, 0x79, 0xc0, 0x62, 0xbb, 0x1a, 0xe3, 0x96, 0xd3, 0xe4, 0x1e, 0x81, }; static const wycheproof_xdh_test xdh_wei448_3991 = { .name = "xdh_wei448_3991", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3991_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3991_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3991_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 7, tcId is 387 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3992 for XDH, tcId is 388 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3992_peerpubkey[] = { 0x6a, 0x69, 0x95, 0xb0, 0xdd, 0x8f, 0x5e, 0x3f, 0x7f, 0x1a, 0xbe, 0x7e, 0x4f, 0x60, 0xbc, 0xad, 0xe6, 0x89, 0x93, 0x3f, 0x17, 0xc3, 0xd2, 0xf7, 0xf9, 0x39, 0x88, 0x88, 0x4e, 0x1b, 0x73, 0xb7, 0x8f, 0x6f, 0x47, 0x1d, 0x8a, 0x71, 0xe4, 0x2a, 0xce, 0x69, 0x79, 0xa4, 0xe8, 0x48, 0xf6, 0x77, 0x9b, 0xab, 0xa0, 0xff, 0x27, 0x90, 0xc9, 0x7f, }; static const unsigned char xdh_wei448_3992_privkey[] = { 0x98, 0x13, 0x04, 0x32, 0x48, 0xa6, 0x11, 0xef, 0xa9, 0xc0, 0x05, 0xfe, 0x3a, 0xda, 0x01, 0xa4, 0x1f, 0x15, 0x68, 0x49, 0x0f, 0x1f, 0x62, 0x79, 0x1e, 0xf8, 0x41, 0x4c, 0x35, 0x74, 0xd8, 0xf5, 0x26, 0xde, 0x49, 0x1e, 0xc2, 0x5c, 0xd2, 0x62, 0x81, 0xb8, 0x4d, 0xe2, 0x22, 0x2a, 0x4c, 0xc8, 0x79, 0xd1, 0xb4, 0xdf, 0x56, 0x74, 0xe2, 0xf2, }; static const unsigned char xdh_wei448_3992_sharedsecret[] = { 0x4d, 0x43, 0x25, 0xab, 0xa1, 0xd4, 0x5a, 0x6d, 0xa8, 0x5b, 0x2c, 0x27, 0xb4, 0xad, 0x6e, 0x65, 0xde, 0x71, 0x0f, 0x26, 0x4d, 0x5b, 0x5d, 0x0f, 0x24, 0x14, 0x77, 0x49, 0xfe, 0x33, 0x51, 0x00, 0x47, 0x60, 0xb0, 0xe3, 0x8c, 0x82, 0xdc, 0x44, 0x78, 0xc4, 0xdd, 0x74, 0x02, 0xc6, 0xe2, 0xe0, 0x59, 0xd5, 0x0e, 0xf6, 0x54, 0xef, 0x7a, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_3992 = { .name = "xdh_wei448_3992", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3992_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3992_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3992_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 388 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3993 for XDH, tcId is 389 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3993_peerpubkey[] = { 0x00, 0xb9, 0x57, 0x35, 0x08, 0x52, 0xc5, 0xb1, 0xdd, 0x62, 0x92, 0x21, 0xe4, 0x3f, 0x90, 0xce, 0x3c, 0xd1, 0x76, 0x1e, 0x59, 0x1e, 0x4b, 0x75, 0x44, 0xdb, 0x5d, 0x23, 0xca, 0x54, 0xca, 0x49, 0x90, 0xdf, 0xaf, 0x22, 0x70, 0x83, 0xe9, 0xcf, 0x61, 0x3e, 0x3c, 0x6a, 0xb7, 0x0d, 0x31, 0x67, 0x91, 0x12, 0x92, 0x71, 0x6d, 0x10, 0x48, 0xa9, }; static const unsigned char xdh_wei448_3993_privkey[] = { 0x74, 0x11, 0xca, 0x7f, 0x71, 0x79, 0xef, 0x67, 0x3a, 0x6e, 0x2a, 0xcb, 0x8c, 0x61, 0x4f, 0x8d, 0xcf, 0x19, 0xf5, 0x64, 0x63, 0x16, 0x65, 0x14, 0x1f, 0x69, 0xec, 0xa5, 0xe1, 0xe1, 0xe8, 0xc8, 0x28, 0x73, 0xd6, 0x57, 0xa2, 0x63, 0xf0, 0x2c, 0xfb, 0xa3, 0xc5, 0x06, 0xe7, 0x03, 0x8d, 0xb4, 0x65, 0xea, 0x28, 0xbd, 0x6e, 0x1f, 0xb7, 0xff, }; static const unsigned char xdh_wei448_3993_sharedsecret[] = { 0xe1, 0x3f, 0x6c, 0x6b, 0x4b, 0x46, 0x94, 0x46, 0x71, 0x29, 0x7e, 0x50, 0x92, 0x65, 0x21, 0xf2, 0x2a, 0xc1, 0x73, 0xc9, 0x05, 0x6d, 0x94, 0x10, 0x64, 0xcd, 0x2a, 0xa6, 0x05, 0x21, 0x38, 0x7d, 0x06, 0x08, 0xf3, 0xba, 0x2e, 0xbc, 0xe9, 0x5c, 0xf2, 0x6e, 0x9b, 0x06, 0x0e, 0x67, 0x72, 0x58, 0x55, 0xc7, 0xb5, 0xb9, 0xea, 0x35, 0x24, 0x1c, }; static const wycheproof_xdh_test xdh_wei448_3993 = { .name = "xdh_wei448_3993", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3993_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3993_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3993_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 7, tcId is 389 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3994 for XDH, tcId is 390 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3994_peerpubkey[] = { 0x9d, 0x65, 0xe5, 0x0f, 0xf2, 0xf1, 0xb0, 0x71, 0x35, 0x75, 0xcc, 0x01, 0xbd, 0x43, 0xfb, 0x35, 0x5e, 0xe9, 0xd3, 0x74, 0x2d, 0x1e, 0xd3, 0x17, 0xdf, 0x8e, 0x4d, 0x32, 0x42, 0x58, 0xdd, 0x0b, 0xeb, 0xf0, 0x78, 0x33, 0xa9, 0xf0, 0x0d, 0x5e, 0x4c, 0xfe, 0xe7, 0x46, 0x9e, 0x44, 0x60, 0x1d, 0x52, 0x70, 0x09, 0x06, 0x39, 0x41, 0x96, 0xb1, }; static const unsigned char xdh_wei448_3994_privkey[] = { 0x60, 0xb8, 0x2b, 0x40, 0x07, 0xd7, 0x0e, 0x09, 0x12, 0x52, 0x73, 0x44, 0xc1, 0x86, 0x33, 0x0f, 0x2a, 0xb0, 0x27, 0x7a, 0xa6, 0x0a, 0x1d, 0xae, 0x65, 0x60, 0xc4, 0x19, 0xb0, 0x46, 0x13, 0xbf, 0xf4, 0x30, 0x2a, 0xe8, 0x2d, 0x01, 0x96, 0xc0, 0xaa, 0x9b, 0xf5, 0x40, 0xfa, 0xe1, 0x66, 0xb8, 0xd6, 0x6f, 0xdd, 0x6a, 0xa2, 0x46, 0x50, 0xf6, }; static const unsigned char xdh_wei448_3994_sharedsecret[] = { 0x04, 0xe5, 0xb0, 0x68, 0x04, 0x8b, 0x70, 0x44, 0x6a, 0x43, 0x5b, 0xbb, 0x45, 0xb0, 0x33, 0x8f, 0x74, 0x8e, 0xfe, 0x5e, 0xf1, 0x0d, 0x43, 0x67, 0x70, 0xeb, 0x27, 0xd2, 0x91, 0xcb, 0xbc, 0x5b, 0x45, 0x25, 0x8d, 0xeb, 0xa0, 0xfe, 0xe1, 0x21, 0x40, 0x1d, 0xd3, 0x6a, 0x13, 0x49, 0xe0, 0x76, 0xb9, 0xc1, 0xb2, 0x7d, 0x3b, 0x8a, 0x46, 0x07, }; static const wycheproof_xdh_test xdh_wei448_3994 = { .name = "xdh_wei448_3994", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3994_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3994_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3994_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 390 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3995 for XDH, tcId is 391 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3995_peerpubkey[] = { 0xbb, 0xf7, 0x50, 0x4e, 0xb0, 0xa3, 0x4c, 0x8e, 0xcc, 0x11, 0x04, 0x30, 0x1c, 0x81, 0xb4, 0x91, 0xb3, 0xf7, 0xb5, 0x64, 0xa5, 0xcb, 0x69, 0x16, 0xbc, 0xdd, 0x9c, 0x8f, 0xb0, 0x88, 0xe7, 0x5e, 0x48, 0xdf, 0x31, 0x98, 0xbd, 0xad, 0x7f, 0x2c, 0xe1, 0xc6, 0x8a, 0xcc, 0x98, 0x97, 0xf0, 0x02, 0x2a, 0x86, 0xb9, 0x6a, 0x67, 0xf4, 0xd6, 0xc8, }; static const unsigned char xdh_wei448_3995_privkey[] = { 0x94, 0xf8, 0x33, 0x1a, 0x59, 0x95, 0x8a, 0xb4, 0xf0, 0xb9, 0x7d, 0xce, 0x96, 0xb0, 0x05, 0x30, 0x1a, 0xa4, 0x81, 0x96, 0xa0, 0xd5, 0x90, 0x87, 0x58, 0xc3, 0xea, 0x6d, 0x62, 0x5c, 0x76, 0xe9, 0x88, 0x47, 0x93, 0x7a, 0x6f, 0x79, 0x55, 0x80, 0x3f, 0x6c, 0xdc, 0xc9, 0xea, 0x3e, 0x62, 0xde, 0x8e, 0xa0, 0xf3, 0x0a, 0x1c, 0xfc, 0xc3, 0xe4, }; static const unsigned char xdh_wei448_3995_sharedsecret[] = { 0x36, 0xe2, 0x06, 0x5d, 0xce, 0x60, 0x37, 0xb3, 0x34, 0x12, 0x60, 0xb4, 0x48, 0x76, 0x36, 0xb9, 0x46, 0x06, 0x88, 0x73, 0x1c, 0xfb, 0x85, 0xa3, 0x95, 0x18, 0x73, 0xb2, 0x7e, 0x2f, 0x0f, 0xea, 0x5e, 0xe4, 0xd1, 0xaa, 0xf7, 0x5c, 0xdf, 0x97, 0x12, 0xef, 0xf7, 0x01, 0x82, 0x34, 0x27, 0x11, 0x11, 0x41, 0x70, 0x2d, 0xd6, 0x04, 0xd6, 0x46, }; static const wycheproof_xdh_test xdh_wei448_3995 = { .name = "xdh_wei448_3995", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3995_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3995_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3995_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 7, tcId is 391 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3996 for XDH, tcId is 392 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3996_peerpubkey[] = { 0x84, 0x36, 0xa6, 0xa8, 0xe8, 0xf1, 0xcb, 0x2d, 0x0a, 0xa5, 0x6f, 0x0b, 0x03, 0xde, 0xf5, 0x08, 0xe2, 0x3d, 0x33, 0xc2, 0xd3, 0xa3, 0x44, 0x5c, 0x82, 0xc8, 0x19, 0x77, 0xd0, 0xca, 0xca, 0xeb, 0xae, 0x19, 0x3c, 0x86, 0x73, 0x21, 0xcd, 0xdd, 0x9b, 0xb8, 0x6e, 0x0b, 0x50, 0x4a, 0x1f, 0x59, 0x2a, 0x46, 0xea, 0x8d, 0xc4, 0x20, 0xa1, 0x00, }; static const unsigned char xdh_wei448_3996_privkey[] = { 0x1c, 0x3c, 0x5b, 0xda, 0x03, 0x83, 0xf0, 0xbe, 0x2a, 0x78, 0xd1, 0xac, 0x08, 0x84, 0x33, 0x04, 0x3c, 0x51, 0x2c, 0xd4, 0xe4, 0xa5, 0xa8, 0x0a, 0x18, 0xd3, 0x18, 0x3e, 0x19, 0x88, 0xdf, 0x54, 0x85, 0xc8, 0xbe, 0xca, 0x04, 0xa7, 0xd4, 0x4b, 0xed, 0xec, 0x10, 0x27, 0x40, 0xb5, 0xde, 0x33, 0x3e, 0x1a, 0xd6, 0xe9, 0xbc, 0x63, 0xa1, 0x87, }; static const unsigned char xdh_wei448_3996_sharedsecret[] = { 0xb1, 0x96, 0xbb, 0x34, 0xea, 0x5e, 0x74, 0xb7, 0x4c, 0xaa, 0x26, 0x0e, 0x3b, 0x2c, 0x8a, 0x11, 0x0c, 0x22, 0x79, 0xaa, 0x39, 0x37, 0x82, 0x6b, 0x88, 0xbe, 0x58, 0x26, 0xb7, 0xe0, 0xa6, 0xe8, 0xf5, 0xa1, 0x15, 0x0b, 0x7c, 0x13, 0x53, 0xde, 0x1d, 0xf4, 0x7c, 0xe7, 0x27, 0xa2, 0x2f, 0xc9, 0xf4, 0x9c, 0xaa, 0xce, 0x01, 0x0a, 0x9c, 0x0e, }; static const wycheproof_xdh_test xdh_wei448_3996 = { .name = "xdh_wei448_3996", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3996_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3996_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3996_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 392 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3997 for XDH, tcId is 393 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3997_peerpubkey[] = { 0xe6, 0x7c, 0x5f, 0x08, 0xd1, 0x7d, 0x2b, 0xea, 0x11, 0x7c, 0xc4, 0xde, 0xad, 0xac, 0x22, 0x4a, 0x1a, 0xc1, 0xb1, 0x1e, 0x8f, 0xc7, 0xe6, 0x4f, 0xee, 0xc7, 0xf0, 0x8d, 0x0a, 0x5c, 0x25, 0xe2, 0x79, 0x5f, 0x44, 0xfb, 0x97, 0x56, 0x0b, 0xc1, 0xb7, 0xd9, 0x17, 0xdd, 0x70, 0x36, 0xb7, 0x54, 0x7f, 0x6e, 0xd4, 0xe0, 0x0a, 0xb9, 0x98, 0x27, }; static const unsigned char xdh_wei448_3997_privkey[] = { 0x30, 0x48, 0x7a, 0xb4, 0x34, 0x5c, 0xec, 0xd5, 0x27, 0xa8, 0x4f, 0x47, 0x51, 0xb9, 0x0c, 0xba, 0x79, 0x34, 0x24, 0xac, 0xb2, 0x98, 0xaa, 0xd2, 0xcd, 0x86, 0x2d, 0x46, 0x16, 0x5b, 0x8a, 0xfc, 0xa3, 0x02, 0xd8, 0xef, 0xa4, 0x1e, 0x43, 0x85, 0x0c, 0xf5, 0x06, 0x06, 0x1d, 0x21, 0x13, 0xe6, 0x84, 0xd3, 0x6f, 0xdb, 0x04, 0x32, 0x35, 0x8a, }; static const unsigned char xdh_wei448_3997_sharedsecret[] = { 0x89, 0xbf, 0x0c, 0x9d, 0xee, 0x1b, 0xa6, 0xab, 0xad, 0x76, 0xc9, 0xa2, 0xd5, 0x21, 0x0b, 0x62, 0x01, 0xd4, 0xca, 0x34, 0x2a, 0x56, 0xf4, 0x74, 0x54, 0x5f, 0xab, 0x3e, 0x55, 0x2b, 0x50, 0xef, 0x11, 0xe2, 0x1a, 0xec, 0x0a, 0x53, 0xc0, 0x70, 0x23, 0x85, 0x21, 0x8c, 0x68, 0x11, 0x78, 0x1d, 0x31, 0xea, 0x0b, 0x22, 0x88, 0x7f, 0x04, 0x29, }; static const wycheproof_xdh_test xdh_wei448_3997 = { .name = "xdh_wei448_3997", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3997_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3997_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3997_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 393 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3998 for XDH, tcId is 394 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3998_peerpubkey[] = { 0x3e, 0xa6, 0x19, 0xf8, 0x92, 0x8c, 0xaa, 0x40, 0x38, 0x27, 0x58, 0x77, 0xbf, 0xd9, 0x06, 0xbd, 0x08, 0x3b, 0xd1, 0xdd, 0xbd, 0xdb, 0xed, 0xf6, 0xf3, 0xb1, 0x68, 0x29, 0x12, 0x9c, 0xb3, 0xbd, 0xb1, 0x2e, 0x15, 0x6b, 0x99, 0xb1, 0xfb, 0xe6, 0xb5, 0x99, 0xf3, 0xf3, 0xf0, 0xb3, 0x1a, 0xd5, 0x1b, 0x17, 0xb2, 0xfb, 0xb0, 0x48, 0x29, 0x6a, }; static const unsigned char xdh_wei448_3998_privkey[] = { 0xc4, 0x57, 0x27, 0xd6, 0x19, 0x0f, 0x88, 0xe4, 0x1d, 0x36, 0xbe, 0xc9, 0xf3, 0x2f, 0x41, 0xaa, 0xf2, 0x6a, 0x25, 0xc6, 0xfa, 0xfe, 0x8b, 0xa0, 0xc2, 0xd5, 0x30, 0x82, 0xe5, 0x89, 0xa6, 0xcc, 0x04, 0xa4, 0x6c, 0x2a, 0xfe, 0xcb, 0xa7, 0x22, 0x83, 0xe6, 0x08, 0xa1, 0x40, 0x01, 0xec, 0xa8, 0xaa, 0x16, 0x16, 0xa8, 0x0f, 0x7f, 0x14, 0x85, }; static const unsigned char xdh_wei448_3998_sharedsecret[] = { 0x55, 0x6e, 0xc0, 0x50, 0x8a, 0x58, 0xdc, 0xb9, 0xd1, 0x4f, 0x0b, 0x33, 0x01, 0x3a, 0xa7, 0xfd, 0x18, 0xf0, 0x31, 0x4f, 0x17, 0x67, 0x19, 0x64, 0xce, 0x91, 0x45, 0xf5, 0x5a, 0x61, 0x08, 0x89, 0x5f, 0x3b, 0xaf, 0x7b, 0x6c, 0x0d, 0x31, 0x3e, 0x35, 0xed, 0xfa, 0xa1, 0xfd, 0x4a, 0x61, 0x01, 0x56, 0xf8, 0xaf, 0x71, 0x5a, 0x3c, 0xb1, 0x00, }; static const wycheproof_xdh_test xdh_wei448_3998 = { .name = "xdh_wei448_3998", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3998_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3998_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3998_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 394 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 3999 for XDH, tcId is 395 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_3999_peerpubkey[] = { 0x26, 0x5a, 0x93, 0x0b, 0x5d, 0x6f, 0xd6, 0x97, 0x7b, 0xc3, 0xec, 0x93, 0xc3, 0x02, 0x7c, 0xa9, 0x7a, 0x34, 0xb1, 0x2d, 0x43, 0xdc, 0xa8, 0x36, 0xc7, 0x97, 0x1a, 0xcc, 0x99, 0x6e, 0x0c, 0x9e, 0x25, 0x0b, 0xf0, 0x87, 0x4d, 0x1d, 0x64, 0x5b, 0x07, 0x23, 0x15, 0xaa, 0xc6, 0x1a, 0x95, 0x04, 0x17, 0x92, 0xcb, 0x55, 0x88, 0xb2, 0x9d, 0xbf, }; static const unsigned char xdh_wei448_3999_privkey[] = { 0x14, 0xf1, 0x41, 0xfb, 0xb1, 0x64, 0xd6, 0x70, 0xb9, 0x0a, 0x19, 0xc9, 0xd9, 0x70, 0xf8, 0x32, 0x7f, 0x21, 0x1e, 0x8e, 0xd8, 0x66, 0x06, 0x21, 0x08, 0x68, 0x37, 0x2c, 0x22, 0x69, 0xc8, 0x1b, 0x2b, 0x61, 0x50, 0x4b, 0x46, 0xf3, 0xf6, 0x55, 0x33, 0xef, 0x7a, 0xdb, 0x31, 0xd9, 0x7c, 0xa0, 0xdd, 0x52, 0x4b, 0x38, 0xb4, 0xdf, 0xf7, 0x8a, }; static const unsigned char xdh_wei448_3999_sharedsecret[] = { 0x4b, 0x0a, 0xf1, 0xcc, 0x0b, 0x4e, 0xe4, 0x32, 0x2c, 0x8a, 0x23, 0x98, 0x9f, 0x74, 0xd6, 0x62, 0x51, 0x94, 0xd1, 0xcc, 0x81, 0xe0, 0xa9, 0x1c, 0x68, 0x22, 0x4f, 0x07, 0x8e, 0xff, 0x2a, 0x7d, 0xef, 0x5f, 0x57, 0xd5, 0x39, 0x86, 0x93, 0x2b, 0xb4, 0x53, 0xc4, 0x5e, 0xad, 0xfd, 0xb3, 0xa5, 0x0e, 0xf3, 0x3d, 0xe3, 0xf9, 0xd7, 0x43, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_3999 = { .name = "xdh_wei448_3999", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_3999_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_3999_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_3999_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 8, tcId is 395 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4000 for XDH, tcId is 396 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4000_peerpubkey[] = { 0x11, 0xe9, 0xe4, 0xe0, 0x24, 0xc2, 0x77, 0xe1, 0x84, 0x34, 0x48, 0xa1, 0x0f, 0x21, 0x8d, 0x4e, 0x4f, 0x88, 0xb4, 0x02, 0xb2, 0x95, 0x4c, 0xb3, 0x7f, 0x8b, 0x5c, 0x33, 0xa9, 0x02, 0x93, 0x2f, 0x95, 0x41, 0xe6, 0x14, 0x86, 0xf1, 0xf4, 0xa8, 0xfb, 0xd9, 0x73, 0x8b, 0x7f, 0xff, 0xfd, 0xb3, 0x94, 0x46, 0xe7, 0x92, 0xf1, 0x2a, 0x69, 0xf1, }; static const unsigned char xdh_wei448_4000_privkey[] = { 0xa8, 0xed, 0x7c, 0x6c, 0x57, 0xd5, 0xaf, 0x99, 0x85, 0x5b, 0x98, 0x9d, 0x8c, 0x43, 0x79, 0x94, 0xb1, 0xf7, 0x2c, 0x25, 0xd2, 0x2c, 0x2a, 0xce, 0xa5, 0x04, 0x87, 0x8c, 0xc3, 0x3c, 0x57, 0x2b, 0x84, 0xcc, 0x4c, 0xbc, 0xb5, 0xf2, 0x4d, 0xc0, 0xcc, 0x7b, 0xa8, 0xce, 0x36, 0xbf, 0x31, 0x68, 0x7a, 0x27, 0xc4, 0xd0, 0x60, 0x52, 0x0f, 0x8b, }; static const unsigned char xdh_wei448_4000_sharedsecret[] = { 0xb8, 0xed, 0xce, 0xf5, 0x32, 0x24, 0x7b, 0x0d, 0xa1, 0x8f, 0x7d, 0x67, 0xf4, 0x89, 0xa9, 0x81, 0x02, 0x16, 0x84, 0xea, 0x9f, 0xb9, 0xd0, 0xa9, 0x57, 0xbc, 0x36, 0x3c, 0xd3, 0x90, 0xfc, 0x39, 0x54, 0x20, 0xd0, 0xa9, 0xb6, 0xfd, 0xf9, 0xe4, 0x0a, 0xf6, 0x5e, 0xb0, 0xd8, 0x5d, 0x19, 0x5a, 0x25, 0x23, 0x74, 0x13, 0xa7, 0xb1, 0x44, 0x59, }; static const wycheproof_xdh_test xdh_wei448_4000 = { .name = "xdh_wei448_4000", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4000_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4000_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4000_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 8, tcId is 396 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4001 for XDH, tcId is 397 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4001_peerpubkey[] = { 0x13, 0x27, 0x29, 0xb7, 0x38, 0xcd, 0x98, 0x7f, 0xfe, 0x19, 0x54, 0x35, 0x84, 0xf8, 0xfe, 0x2b, 0xe1, 0xe8, 0x01, 0xb7, 0x19, 0xd3, 0xab, 0x2c, 0x51, 0x23, 0x4f, 0xbd, 0x08, 0xd4, 0xc9, 0xf7, 0x36, 0xc7, 0xf5, 0x0b, 0x84, 0x49, 0x26, 0x7f, 0x73, 0x72, 0x97, 0xf9, 0x8b, 0x3c, 0xb7, 0x30, 0x52, 0x8a, 0xf6, 0x4f, 0x6a, 0xa0, 0xfb, 0x02, }; static const unsigned char xdh_wei448_4001_privkey[] = { 0x84, 0xe6, 0x9e, 0x44, 0x72, 0xb6, 0x69, 0xeb, 0xc6, 0xa6, 0xad, 0x1b, 0xd2, 0x11, 0x71, 0x26, 0x5d, 0x64, 0x92, 0x0f, 0x3d, 0xc9, 0xc7, 0xaa, 0x26, 0x17, 0x44, 0x62, 0xf3, 0x3d, 0x20, 0xe5, 0x0b, 0x02, 0x30, 0xce, 0xa7, 0x13, 0x57, 0x6a, 0x9b, 0xe5, 0x59, 0xb5, 0x5d, 0x63, 0xef, 0x12, 0x5d, 0xcf, 0x9f, 0x54, 0x34, 0x57, 0xff, 0x89, }; static const unsigned char xdh_wei448_4001_sharedsecret[] = { 0xc7, 0x19, 0xe3, 0x09, 0xf9, 0x40, 0x20, 0x74, 0xeb, 0x74, 0xbf, 0x18, 0x58, 0x6e, 0xa8, 0x60, 0xfd, 0x87, 0xa8, 0xd0, 0x8e, 0xeb, 0xbd, 0xba, 0xf8, 0x42, 0x08, 0x47, 0x41, 0xf3, 0x01, 0xeb, 0x74, 0xc9, 0x4a, 0xa3, 0x3d, 0xb5, 0xba, 0x1c, 0x2d, 0x8a, 0x99, 0x7a, 0xfa, 0x4f, 0xef, 0x78, 0xba, 0x76, 0x9b, 0x46, 0x8a, 0x00, 0x76, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_4001 = { .name = "xdh_wei448_4001", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4001_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4001_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4001_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 397 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4002 for XDH, tcId is 398 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4002_peerpubkey[] = { 0xcd, 0x72, 0xb7, 0x26, 0x6f, 0x8f, 0xe8, 0x8f, 0x85, 0xe9, 0xa4, 0x7e, 0xd5, 0xc0, 0xec, 0x74, 0x39, 0x41, 0xfd, 0x1b, 0x4c, 0xbf, 0x2d, 0xda, 0x96, 0xf3, 0xa6, 0x0f, 0x30, 0xf6, 0xb3, 0xc3, 0xa4, 0xe7, 0xe4, 0x2c, 0x80, 0x83, 0x31, 0x07, 0x7d, 0x5b, 0x9b, 0x8c, 0x37, 0xfa, 0x65, 0x07, 0xb1, 0x73, 0x5c, 0xe0, 0x81, 0x16, 0xc3, 0x1b, }; static const unsigned char xdh_wei448_4002_privkey[] = { 0x2c, 0x42, 0xdd, 0x62, 0xd9, 0x66, 0x51, 0x34, 0xf1, 0xdd, 0xa0, 0x82, 0x43, 0x82, 0xc8, 0xd6, 0x77, 0x3f, 0x98, 0x64, 0x95, 0xcf, 0x1b, 0x18, 0xcf, 0x02, 0xf8, 0xf4, 0x53, 0x38, 0xcd, 0xbb, 0xde, 0x6d, 0x26, 0xd5, 0xf9, 0x1f, 0x3d, 0x4e, 0x1a, 0x25, 0x0f, 0xfa, 0xfe, 0x1b, 0x5e, 0x24, 0xb8, 0x20, 0x8b, 0xa1, 0xb9, 0x12, 0x76, 0x86, }; static const unsigned char xdh_wei448_4002_sharedsecret[] = { 0x51, 0xb1, 0xd5, 0xa3, 0x34, 0x95, 0x7b, 0xb9, 0xf5, 0x39, 0x90, 0xd1, 0x88, 0xd9, 0x3e, 0xdb, 0x17, 0x86, 0xda, 0x92, 0x17, 0x83, 0xc0, 0x08, 0x70, 0x42, 0x91, 0x34, 0xd2, 0xf2, 0xef, 0x97, 0x63, 0x24, 0x4a, 0x20, 0x4a, 0x46, 0xfa, 0xc1, 0x67, 0xa0, 0x89, 0x44, 0x74, 0x34, 0x2e, 0xa7, 0x72, 0x27, 0x58, 0x99, 0xd2, 0x17, 0x42, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_4002 = { .name = "xdh_wei448_4002", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4002_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4002_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4002_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 398 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4003 for XDH, tcId is 399 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4003_peerpubkey[] = { 0xd5, 0x60, 0x21, 0x11, 0x53, 0xf1, 0x00, 0xaf, 0x3a, 0x4c, 0x0a, 0x22, 0x33, 0xf6, 0xec, 0xd7, 0xe9, 0x5c, 0xc5, 0x08, 0x6d, 0xec, 0xb3, 0xa0, 0xd1, 0x38, 0x67, 0x0e, 0xe4, 0x19, 0x55, 0xaa, 0xb9, 0x5f, 0x4a, 0x71, 0xbb, 0x84, 0x96, 0xb4, 0xdb, 0xf9, 0x8b, 0x45, 0xae, 0x6f, 0xf6, 0x7b, 0x02, 0xfb, 0xc9, 0x48, 0xb1, 0x45, 0x14, 0x2c, }; static const unsigned char xdh_wei448_4003_privkey[] = { 0x5c, 0xd3, 0xa7, 0xa6, 0xc7, 0x3d, 0xe1, 0x1e, 0xbe, 0x7d, 0x4c, 0xd3, 0xbb, 0x14, 0x6e, 0x0f, 0xf1, 0x56, 0x43, 0x76, 0x85, 0xc8, 0x1a, 0xf2, 0xac, 0x3c, 0xf6, 0x05, 0x3e, 0x4b, 0x32, 0x89, 0x01, 0x4d, 0x38, 0xda, 0xdf, 0x73, 0x2e, 0xd2, 0xf3, 0x98, 0xe4, 0x77, 0x2a, 0x34, 0x47, 0xa2, 0x58, 0xda, 0xdf, 0xdb, 0x2d, 0x7d, 0xf5, 0x87, }; static const unsigned char xdh_wei448_4003_sharedsecret[] = { 0x51, 0xdd, 0xe5, 0x72, 0x74, 0xf7, 0xff, 0xb4, 0xc0, 0x1e, 0x97, 0x1f, 0xb9, 0xf2, 0xba, 0x89, 0x11, 0xe1, 0xcf, 0x56, 0xc2, 0x03, 0x55, 0x21, 0x69, 0x01, 0xdc, 0x1d, 0x14, 0x81, 0xbf, 0xa2, 0x8b, 0x87, 0xf4, 0xb7, 0x24, 0x49, 0x53, 0x4a, 0xd6, 0x99, 0x96, 0x90, 0x0c, 0xf5, 0xe7, 0x3b, 0x8e, 0x0f, 0xa1, 0x15, 0xe8, 0x92, 0x4e, 0x19, }; static const wycheproof_xdh_test xdh_wei448_4003 = { .name = "xdh_wei448_4003", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4003_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4003_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4003_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for B in multiplication by 8, tcId is 399 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4004 for XDH, tcId is 400 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4004_peerpubkey[] = { 0xa4, 0xcc, 0xa4, 0x82, 0xc8, 0xe2, 0x1f, 0xf3, 0x00, 0x97, 0xcb, 0xc4, 0xf5, 0xe3, 0xa7, 0x07, 0x62, 0x3c, 0xd6, 0x77, 0x1b, 0x28, 0x8d, 0x8f, 0x3d, 0x11, 0x68, 0x2f, 0xa5, 0x26, 0xb4, 0xed, 0xa2, 0x7c, 0x68, 0x33, 0xd4, 0x19, 0x2b, 0xda, 0x53, 0x05, 0x2a, 0x14, 0x2c, 0x69, 0x87, 0x8f, 0xce, 0xdc, 0xc9, 0x2a, 0x5f, 0x61, 0x1a, 0xa2, }; static const unsigned char xdh_wei448_4004_privkey[] = { 0x80, 0x81, 0xae, 0xfb, 0x19, 0x87, 0x2a, 0xea, 0xad, 0x84, 0xa4, 0x06, 0xeb, 0x3f, 0xd4, 0xc2, 0x7f, 0x23, 0x1f, 0xbc, 0xa3, 0x91, 0x73, 0xba, 0xd4, 0x17, 0xa2, 0xef, 0x12, 0x3c, 0x0a, 0x89, 0x59, 0xae, 0xa6, 0xd6, 0x9f, 0xe6, 0x92, 0xeb, 0xf6, 0x96, 0x31, 0xd5, 0x3b, 0x73, 0xe3, 0xd6, 0x7f, 0x1b, 0xcb, 0xa6, 0x84, 0x9f, 0xb7, 0x83, }; static const unsigned char xdh_wei448_4004_sharedsecret[] = { 0xe1, 0xc4, 0xae, 0x75, 0xcc, 0x6f, 0x65, 0xc6, 0x52, 0xf4, 0x0d, 0xee, 0x0b, 0x7a, 0x02, 0x24, 0x8a, 0xf6, 0x60, 0x93, 0xd4, 0x03, 0xe0, 0xf5, 0xec, 0x34, 0xf3, 0xe4, 0xb6, 0xd3, 0x8d, 0x20, 0x82, 0x60, 0x2d, 0xc5, 0x1a, 0x52, 0x6e, 0xd0, 0xe9, 0xb1, 0x56, 0x9c, 0xb2, 0x0a, 0xa3, 0x44, 0x24, 0xb0, 0x21, 0x9b, 0xdd, 0xb5, 0x37, 0x56, }; static const wycheproof_xdh_test xdh_wei448_4004 = { .name = "xdh_wei448_4004", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4004_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4004_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4004_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 400 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4005 for XDH, tcId is 401 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4005_peerpubkey[] = { 0xd6, 0x88, 0x03, 0xe5, 0x6a, 0x32, 0x9b, 0x20, 0x53, 0xa0, 0x6b, 0x6f, 0x72, 0x16, 0xb3, 0xec, 0xe4, 0xec, 0x45, 0x3d, 0x62, 0x53, 0xc6, 0xdb, 0xb9, 0x01, 0x82, 0xff, 0xce, 0x7f, 0xa5, 0x95, 0x24, 0xff, 0x05, 0x4a, 0x5c, 0x3a, 0xaa, 0xb8, 0xa4, 0x41, 0x74, 0xab, 0x20, 0x38, 0x5f, 0x7a, 0x95, 0xa8, 0x57, 0x9a, 0xbc, 0xb9, 0xae, 0xa7, }; static const unsigned char xdh_wei448_4005_privkey[] = { 0x74, 0xfb, 0x2c, 0xcc, 0x2b, 0x2e, 0xfb, 0x17, 0xdd, 0xab, 0x72, 0x17, 0x50, 0xde, 0x77, 0x51, 0xf0, 0xa6, 0xbe, 0xda, 0x5d, 0xe7, 0x75, 0xb8, 0x2c, 0xbd, 0x21, 0x14, 0x90, 0xa4, 0x02, 0x0e, 0x80, 0x80, 0x8a, 0x62, 0x11, 0x4f, 0x0f, 0x1c, 0x45, 0x53, 0xf2, 0x6f, 0xbc, 0xab, 0x6c, 0xa9, 0x02, 0x64, 0x51, 0x60, 0xa3, 0xcf, 0xaa, 0x87, }; static const unsigned char xdh_wei448_4005_sharedsecret[] = { 0x45, 0x46, 0x32, 0x8d, 0x31, 0xeb, 0xd4, 0x74, 0x39, 0x22, 0x1c, 0xf9, 0x40, 0x33, 0x87, 0xcc, 0x61, 0x07, 0xd5, 0x4f, 0x67, 0xdd, 0xbe, 0xea, 0xfe, 0x3c, 0x57, 0xb7, 0x58, 0xab, 0x83, 0x86, 0xed, 0x76, 0xdc, 0xfc, 0xdd, 0x5b, 0x49, 0x92, 0x32, 0xbf, 0xbf, 0x7f, 0x15, 0xe6, 0x75, 0x0b, 0x71, 0x73, 0xdb, 0x07, 0xef, 0xb7, 0x31, 0x37, }; static const wycheproof_xdh_test xdh_wei448_4005 = { .name = "xdh_wei448_4005", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4005_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4005_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4005_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 401 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4006 for XDH, tcId is 402 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4006_peerpubkey[] = { 0x41, 0xfd, 0xa6, 0xe7, 0x50, 0x6b, 0x50, 0x85, 0x70, 0xae, 0x39, 0xd1, 0x65, 0x1d, 0x72, 0x1b, 0x8f, 0x2a, 0xc1, 0xba, 0xed, 0xa0, 0xa3, 0xba, 0x5c, 0x86, 0xc9, 0xc7, 0x17, 0x97, 0x90, 0xdd, 0xa0, 0x18, 0x5d, 0xa5, 0xde, 0x64, 0x87, 0x9c, 0x15, 0x73, 0x83, 0xf0, 0x4b, 0x9a, 0x32, 0x8a, 0xa5, 0xfb, 0xbf, 0x7e, 0x7d, 0x87, 0x0f, 0xd7, }; static const unsigned char xdh_wei448_4006_privkey[] = { 0x0c, 0x2f, 0x22, 0xe6, 0xa4, 0x7e, 0xa6, 0x08, 0xe8, 0xc0, 0xd1, 0xb0, 0x47, 0x0c, 0x45, 0xcc, 0x02, 0x5d, 0x1c, 0x07, 0x52, 0xbf, 0xe3, 0xaa, 0x36, 0xd1, 0x4f, 0x0e, 0x8f, 0x82, 0xf2, 0xe1, 0x2a, 0x27, 0xb6, 0xbd, 0x32, 0x23, 0x95, 0xa3, 0xde, 0x5b, 0x5d, 0xed, 0x46, 0xc3, 0x7b, 0xe1, 0x12, 0xd3, 0xe8, 0xd1, 0xbb, 0x86, 0xde, 0x86, }; static const unsigned char xdh_wei448_4006_sharedsecret[] = { 0xda, 0x06, 0xfa, 0x2f, 0xf0, 0x01, 0x5c, 0x46, 0x63, 0xa5, 0x9d, 0x2c, 0xde, 0x02, 0xb4, 0xd7, 0x9f, 0xad, 0x37, 0xa0, 0x54, 0x22, 0x0b, 0x15, 0x65, 0x1b, 0xe9, 0x92, 0x26, 0x65, 0x0e, 0x9f, 0x62, 0x46, 0x68, 0x34, 0x78, 0x2b, 0x3d, 0x00, 0x04, 0x31, 0x01, 0xc0, 0xff, 0x1b, 0xe3, 0x7d, 0xcc, 0x0d, 0x6f, 0x6b, 0xef, 0xe9, 0xbb, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_4006 = { .name = "xdh_wei448_4006", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4006_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4006_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4006_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for B in multiplication by 8, tcId is 402 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4007 for XDH, tcId is 403 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4007_peerpubkey[] = { 0x2c, 0x2f, 0xda, 0x82, 0x80, 0xb4, 0x16, 0x0f, 0xbb, 0x8f, 0xcd, 0xd9, 0xa4, 0x6f, 0x78, 0x7f, 0x2e, 0x9b, 0x4e, 0xcf, 0xe1, 0x14, 0x92, 0x29, 0x81, 0x7d, 0x94, 0x06, 0x85, 0xa2, 0x55, 0x94, 0x9f, 0x5d, 0x9e, 0x05, 0x44, 0x6c, 0xba, 0xf8, 0x6b, 0x2a, 0xf6, 0x2d, 0x27, 0xe5, 0xe7, 0x6c, 0x74, 0x5b, 0x39, 0xb2, 0x9b, 0x52, 0x07, 0x06, }; static const unsigned char xdh_wei448_4007_privkey[] = { 0xec, 0xd9, 0x88, 0xd9, 0x37, 0xd7, 0x19, 0x04, 0xf1, 0x58, 0x4a, 0x7c, 0xb4, 0x7d, 0xc6, 0xf9, 0xb5, 0xd1, 0xf1, 0x62, 0xf0, 0xf4, 0x0a, 0x76, 0x39, 0x3b, 0xf4, 0x80, 0x84, 0x34, 0xe2, 0x64, 0x4d, 0xeb, 0xe2, 0x30, 0x35, 0xbf, 0x4f, 0x9b, 0x59, 0x83, 0xfa, 0xf6, 0xe9, 0xf5, 0xfb, 0x9b, 0x1f, 0x4c, 0x4e, 0xc6, 0xc2, 0x5d, 0xfc, 0x88, }; static const unsigned char xdh_wei448_4007_sharedsecret[] = { 0xaa, 0x5a, 0xe8, 0x6b, 0x41, 0xec, 0x49, 0x1e, 0x1d, 0x6e, 0xfa, 0x86, 0x08, 0xf3, 0xf1, 0x07, 0x0a, 0x7f, 0xf0, 0xb6, 0x13, 0x88, 0x6a, 0xcc, 0x45, 0xc9, 0x2f, 0xcd, 0xba, 0x6a, 0x5a, 0x48, 0x09, 0x95, 0x74, 0x0d, 0x02, 0xe6, 0xb9, 0xb9, 0x62, 0xb8, 0x7e, 0x11, 0xc3, 0x3e, 0x25, 0xdf, 0xcc, 0xda, 0x8e, 0x5c, 0xb2, 0xf1, 0x52, 0x99, }; static const wycheproof_xdh_test xdh_wei448_4007 = { .name = "xdh_wei448_4007", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4007_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4007_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4007_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 403 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4008 for XDH, tcId is 404 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4008_peerpubkey[] = { 0x2b, 0xa9, 0x1c, 0xe4, 0xae, 0xfe, 0x09, 0x1a, 0xe4, 0x02, 0x92, 0xd2, 0x8c, 0x20, 0xfb, 0x24, 0x64, 0x94, 0x0c, 0xf6, 0xfb, 0x56, 0x87, 0x75, 0x42, 0xbb, 0x7b, 0xd9, 0x31, 0x49, 0x3b, 0x4e, 0xb7, 0xfd, 0xbc, 0xb6, 0x22, 0x70, 0x69, 0x34, 0x2d, 0x91, 0x3a, 0xeb, 0x29, 0xe4, 0x73, 0x27, 0xe5, 0x3e, 0x35, 0xa2, 0x42, 0x2b, 0x4d, 0x0b, }; static const unsigned char xdh_wei448_4008_privkey[] = { 0x20, 0x43, 0x3d, 0x78, 0xa9, 0x74, 0x48, 0xc2, 0xdc, 0xa9, 0xcd, 0x9c, 0xfb, 0xf1, 0xc6, 0xa5, 0x3c, 0xf6, 0xc1, 0x38, 0xd1, 0x46, 0xc5, 0x73, 0xf9, 0x50, 0xdb, 0x11, 0x72, 0x34, 0x66, 0x06, 0x6f, 0x2b, 0xb5, 0x4a, 0x04, 0x19, 0xf1, 0xb8, 0xc8, 0x42, 0xf4, 0x35, 0x4f, 0x1f, 0x10, 0xe0, 0x7c, 0x75, 0xc3, 0x77, 0xec, 0x8f, 0xc2, 0x87, }; static const unsigned char xdh_wei448_4008_sharedsecret[] = { 0xf0, 0x52, 0x7e, 0xc8, 0x7d, 0x89, 0x6e, 0xcc, 0xed, 0xb3, 0xa6, 0xca, 0xa6, 0x65, 0x72, 0xe6, 0x4a, 0xee, 0xa5, 0x15, 0xf1, 0x89, 0x01, 0x46, 0xc8, 0x3d, 0x72, 0x53, 0x58, 0x31, 0xfe, 0x7e, 0xb1, 0x2d, 0xcc, 0x43, 0x4a, 0x63, 0x83, 0x9a, 0xff, 0x89, 0xd8, 0xc8, 0x78, 0x90, 0x6f, 0xe9, 0xd9, 0x2e, 0x0e, 0xdf, 0x21, 0x8c, 0x64, 0xbb, }; static const wycheproof_xdh_test xdh_wei448_4008 = { .name = "xdh_wei448_4008", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4008_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4008_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4008_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 404 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4009 for XDH, tcId is 405 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4009_peerpubkey[] = { 0x78, 0x0c, 0x77, 0x37, 0x80, 0xe0, 0x04, 0xc3, 0x76, 0x59, 0x7d, 0x1f, 0x7d, 0x98, 0x89, 0x91, 0xc8, 0xb4, 0xc0, 0x31, 0x5d, 0x7b, 0xac, 0x91, 0xe6, 0x8d, 0xdb, 0x40, 0x51, 0xfa, 0xc4, 0x04, 0x40, 0xaf, 0x2f, 0x5b, 0x87, 0xd8, 0x4b, 0x00, 0xce, 0x2d, 0x85, 0xd6, 0x24, 0x97, 0xd0, 0xf6, 0x9d, 0xdb, 0xda, 0xe6, 0x61, 0xdf, 0x17, 0x3e, }; static const unsigned char xdh_wei448_4009_privkey[] = { 0xb8, 0x69, 0xb7, 0xf0, 0x70, 0x72, 0x4d, 0x56, 0x2a, 0xb3, 0x46, 0xb0, 0xce, 0xe9, 0x10, 0xf0, 0x10, 0x61, 0xf7, 0x79, 0x48, 0x8d, 0x6a, 0xf1, 0x89, 0xde, 0xac, 0x04, 0x36, 0xd4, 0x0f, 0x65, 0x7e, 0x20, 0xd5, 0x6b, 0x57, 0xd4, 0xd1, 0xc0, 0x52, 0x87, 0x9b, 0xe7, 0x56, 0x62, 0xe1, 0xe6, 0x4f, 0x6b, 0x1a, 0xa3, 0xc1, 0x13, 0xd3, 0x8a, }; static const unsigned char xdh_wei448_4009_sharedsecret[] = { 0x7c, 0xb3, 0x47, 0xb4, 0x36, 0xf5, 0xa8, 0x3b, 0x14, 0x9d, 0x31, 0xfd, 0x93, 0x66, 0xc5, 0xeb, 0x84, 0xa6, 0x87, 0xbb, 0x78, 0xe5, 0x1e, 0x70, 0x14, 0xbd, 0xb6, 0xc0, 0x10, 0xa1, 0x5a, 0x00, 0x0d, 0x8d, 0x5e, 0x1f, 0xeb, 0x15, 0xa9, 0x0c, 0xa3, 0xe1, 0x7f, 0xb7, 0x45, 0x5d, 0xa7, 0x49, 0x6b, 0xd4, 0x81, 0xa4, 0xe0, 0xa6, 0x64, 0x25, }; static const wycheproof_xdh_test xdh_wei448_4009 = { .name = "xdh_wei448_4009", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4009_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4009_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4009_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 405 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4010 for XDH, tcId is 406 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4010_peerpubkey[] = { 0x4e, 0x6b, 0x2e, 0x16, 0xcf, 0xdc, 0x7f, 0x73, 0x43, 0x64, 0x4d, 0x90, 0x5c, 0x19, 0x5b, 0xec, 0xf6, 0x7a, 0xa8, 0xac, 0xfd, 0xbe, 0xd6, 0x24, 0xb6, 0x9d, 0xb1, 0x9b, 0x8c, 0x1f, 0x60, 0xd1, 0x74, 0x3e, 0xc0, 0x22, 0x3c, 0x0f, 0x75, 0x4e, 0x2f, 0xdd, 0x91, 0x90, 0xa4, 0xcf, 0x4c, 0xaf, 0x8b, 0x92, 0xfd, 0x1c, 0x93, 0xec, 0xdb, 0x65, }; static const unsigned char xdh_wei448_4010_privkey[] = { 0xac, 0xf0, 0x2c, 0x2e, 0x2b, 0x37, 0x52, 0x89, 0xc5, 0x9a, 0x27, 0x0f, 0x2b, 0x59, 0xa3, 0x36, 0x7c, 0x47, 0x79, 0x5e, 0x87, 0xcb, 0xf5, 0x19, 0x93, 0xf0, 0x49, 0x93, 0x0a, 0x0c, 0x1e, 0x1e, 0x79, 0x49, 0xe7, 0x0b, 0xe8, 0x38, 0xaa, 0xa6, 0xc1, 0x80, 0x09, 0x27, 0x35, 0x4b, 0x1e, 0xcc, 0x68, 0x5a, 0xc6, 0x1d, 0x59, 0x56, 0xe9, 0x89, }; static const unsigned char xdh_wei448_4010_sharedsecret[] = { 0x64, 0xd6, 0xb9, 0xd6, 0x30, 0xdc, 0x7e, 0xb0, 0xd8, 0x29, 0xf9, 0x6c, 0x03, 0x4e, 0xca, 0xfe, 0x21, 0xfe, 0xfe, 0x7a, 0x7f, 0xe6, 0x60, 0xe4, 0xc9, 0x1c, 0x6c, 0x54, 0x0c, 0xa3, 0x15, 0x7f, 0x94, 0x4c, 0x5c, 0xce, 0xa9, 0x70, 0x7c, 0x2f, 0x86, 0xfd, 0x38, 0xd0, 0x23, 0x8c, 0x85, 0x99, 0xc8, 0x48, 0xb8, 0x03, 0x60, 0x0d, 0xb9, 0x31, }; static const wycheproof_xdh_test xdh_wei448_4010 = { .name = "xdh_wei448_4010", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4010_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4010_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4010_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 406 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4011 for XDH, tcId is 407 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4011_peerpubkey[] = { 0xe4, 0x67, 0xd4, 0x24, 0x52, 0x8b, 0x22, 0x7b, 0xd1, 0x19, 0x2c, 0x1e, 0xcf, 0x22, 0xbd, 0xfb, 0xd0, 0xf5, 0xe1, 0x6b, 0x50, 0x2d, 0x58, 0x56, 0x84, 0x8c, 0x0e, 0x56, 0x72, 0xa8, 0x56, 0x31, 0x3f, 0x3e, 0x84, 0x43, 0x96, 0x61, 0xd7, 0xd5, 0xfc, 0x95, 0xb5, 0xa5, 0x9b, 0xba, 0x3a, 0xd5, 0x31, 0x21, 0xec, 0x97, 0xad, 0x54, 0x0f, 0x95, }; static const unsigned char xdh_wei448_4011_privkey[] = { 0xdc, 0x0f, 0x97, 0x35, 0x5e, 0xf2, 0xc5, 0xd4, 0x24, 0x15, 0x86, 0x7a, 0x28, 0xe9, 0xf6, 0x96, 0x57, 0xb7, 0x8d, 0xa4, 0x18, 0x5c, 0xe5, 0x1d, 0xae, 0x61, 0xe2, 0x38, 0x71, 0x36, 0xa6, 0x2d, 0x88, 0x5c, 0x18, 0xe7, 0xe1, 0x77, 0x30, 0xa0, 0x1f, 0x4b, 0x47, 0x26, 0x7e, 0xe6, 0x93, 0xa6, 0x07, 0x38, 0xef, 0x1e, 0xa5, 0x18, 0x7b, 0x86, }; static const unsigned char xdh_wei448_4011_sharedsecret[] = { 0xfd, 0x52, 0x30, 0x23, 0x11, 0x12, 0x09, 0x0a, 0x49, 0x2e, 0x4b, 0x6b, 0x4d, 0x9f, 0x29, 0xae, 0x56, 0x5f, 0xb7, 0x52, 0x7e, 0x56, 0xfa, 0x80, 0x43, 0x47, 0xe1, 0x00, 0x47, 0xe9, 0xa5, 0x4c, 0xa4, 0x3c, 0x1e, 0x65, 0x45, 0xab, 0x5c, 0x73, 0x3a, 0x86, 0xf6, 0x68, 0x81, 0x0f, 0x0e, 0x22, 0xef, 0x5c, 0xb8, 0x74, 0x57, 0xa0, 0x1b, 0x0b, }; static const wycheproof_xdh_test xdh_wei448_4011 = { .name = "xdh_wei448_4011", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4011_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4011_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4011_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA + CB in multiplication by 8, tcId is 407 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4012 for XDH, tcId is 408 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4012_peerpubkey[] = { 0xc6, 0x9f, 0x7f, 0x36, 0x49, 0x53, 0xc3, 0xcc, 0xba, 0x79, 0x10, 0x3f, 0x5a, 0x88, 0xd9, 0xe7, 0x45, 0x21, 0x68, 0x4e, 0xb5, 0xe3, 0x6c, 0xcf, 0x8c, 0x25, 0x85, 0xdb, 0x73, 0xb8, 0x05, 0xa7, 0x9f, 0xbb, 0xa3, 0x93, 0xf8, 0x1a, 0x11, 0x56, 0xf6, 0x89, 0xa3, 0x82, 0xcb, 0xde, 0x27, 0x2c, 0x9c, 0x2b, 0x1f, 0xfa, 0x88, 0x79, 0xad, 0xad, }; static const unsigned char xdh_wei448_4012_privkey[] = { 0x9c, 0xf1, 0x09, 0x4d, 0xd4, 0x82, 0xc8, 0xfd, 0xd1, 0x11, 0x95, 0xed, 0xe3, 0x39, 0x5b, 0xb9, 0xb3, 0x3e, 0x87, 0x02, 0xb8, 0xce, 0x77, 0x11, 0x6d, 0x4e, 0xa4, 0x01, 0x89, 0x84, 0x4f, 0x54, 0xec, 0x53, 0x5c, 0x91, 0xfb, 0xfd, 0xb8, 0x2c, 0xcc, 0x7b, 0xb5, 0x44, 0x1f, 0x7f, 0xfc, 0xf5, 0x25, 0x31, 0x91, 0xdb, 0x3a, 0xf0, 0x13, 0x8d, }; static const unsigned char xdh_wei448_4012_sharedsecret[] = { 0xba, 0x66, 0x1d, 0x79, 0x28, 0x69, 0xd0, 0xd0, 0x8f, 0x07, 0xe9, 0x7b, 0x53, 0x05, 0xd5, 0x16, 0x48, 0xe4, 0xaa, 0x71, 0x43, 0xc9, 0x02, 0x8f, 0x3a, 0x2c, 0xa2, 0xf1, 0x2f, 0x60, 0x14, 0x76, 0xd8, 0x8b, 0x5d, 0xad, 0x32, 0x9f, 0xd0, 0xa7, 0x73, 0xff, 0xae, 0x21, 0x65, 0xe0, 0xe3, 0x25, 0x1f, 0x56, 0xe8, 0xe7, 0x3f, 0xbf, 0x6f, 0xfd, }; static const wycheproof_xdh_test xdh_wei448_4012 = { .name = "xdh_wei448_4012", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4012_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4012_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4012_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA + CB in multiplication by 8, tcId is 408 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4013 for XDH, tcId is 409 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4013_peerpubkey[] = { 0x9c, 0xa0, 0x54, 0xab, 0x30, 0x0f, 0x6b, 0x38, 0x9c, 0xd5, 0x3c, 0xbf, 0x01, 0x1e, 0x86, 0x66, 0xf5, 0x92, 0xf9, 0xc1, 0x4f, 0x1e, 0x13, 0x87, 0xcc, 0xf7, 0x8e, 0xc4, 0x36, 0x46, 0x2e, 0x7a, 0xc1, 0xe8, 0x11, 0x81, 0x96, 0xee, 0x73, 0x1b, 0xc2, 0xa2, 0x0b, 0x24, 0x08, 0xa6, 0xbd, 0x49, 0xd1, 0x5a, 0x8a, 0x10, 0x41, 0x62, 0xf7, 0x06, }; static const unsigned char xdh_wei448_4013_privkey[] = { 0xa8, 0xeb, 0xca, 0x65, 0xaa, 0x84, 0x59, 0xc4, 0x8a, 0xc1, 0xc1, 0x4a, 0x83, 0xb0, 0x51, 0x5e, 0x92, 0xde, 0x6c, 0x35, 0x8b, 0xb6, 0x05, 0xe3, 0x1e, 0x46, 0x66, 0x94, 0xa8, 0x26, 0xa7, 0xef, 0x99, 0x46, 0x4e, 0x42, 0x5b, 0x97, 0x81, 0x42, 0x59, 0xb4, 0x15, 0xd0, 0xa8, 0xdf, 0x83, 0xb5, 0x40, 0xec, 0x89, 0x30, 0xee, 0x41, 0x37, 0x8d, }; static const unsigned char xdh_wei448_4013_sharedsecret[] = { 0x01, 0x57, 0x37, 0x8a, 0x83, 0xd7, 0xd4, 0x4b, 0xec, 0x58, 0x6e, 0x3e, 0xdd, 0xe0, 0x3e, 0x3a, 0xb4, 0x8f, 0x06, 0xe0, 0x0d, 0x21, 0x29, 0xcb, 0x34, 0x8c, 0x18, 0x09, 0x2b, 0x9c, 0x7b, 0xf7, 0xe4, 0xe0, 0x0d, 0xf1, 0x6a, 0x65, 0x0e, 0x46, 0x76, 0xd3, 0x1c, 0x91, 0x19, 0x27, 0x5a, 0x43, 0xdc, 0x60, 0xee, 0x61, 0x20, 0xe9, 0x0d, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_4013 = { .name = "xdh_wei448_4013", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4013_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4013_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4013_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 409 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4014 for XDH, tcId is 410 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4014_peerpubkey[] = { 0xae, 0x59, 0xde, 0x0b, 0xb7, 0x5b, 0xf5, 0x87, 0x06, 0xc3, 0x3c, 0x6f, 0xe9, 0x1b, 0x27, 0xba, 0x70, 0xf9, 0xa7, 0xb8, 0x72, 0x7a, 0x90, 0x1d, 0x4e, 0xa5, 0x3d, 0xce, 0xbb, 0xcf, 0x9f, 0x96, 0x26, 0xa9, 0xad, 0x60, 0xd8, 0x18, 0xea, 0x73, 0xdf, 0x1f, 0xaa, 0x4a, 0x2b, 0xf6, 0x33, 0x36, 0x5e, 0xe3, 0x4a, 0x0f, 0xc4, 0xc7, 0xd3, 0x0b, }; static const unsigned char xdh_wei448_4014_privkey[] = { 0x7c, 0xd3, 0x6d, 0x53, 0x9a, 0x2a, 0xbb, 0xef, 0x73, 0xd9, 0x34, 0xca, 0xbb, 0xb5, 0xfb, 0xbe, 0x63, 0x20, 0x0a, 0x3e, 0x77, 0x95, 0xff, 0x30, 0x07, 0x32, 0x24, 0x5b, 0xfb, 0x11, 0xed, 0x60, 0xac, 0xee, 0x4a, 0x71, 0x33, 0x0b, 0xd9, 0x83, 0x1d, 0x91, 0xf3, 0xeb, 0x8a, 0x41, 0x49, 0x76, 0xf6, 0xf7, 0x21, 0x6c, 0x1f, 0x37, 0x63, 0x84, }; static const unsigned char xdh_wei448_4014_sharedsecret[] = { 0x27, 0x07, 0xb9, 0x4b, 0xd0, 0xc4, 0xb7, 0xaa, 0xa7, 0x77, 0x46, 0x7d, 0x15, 0xfa, 0x86, 0x24, 0x9b, 0x46, 0x06, 0xc7, 0xae, 0xb8, 0x25, 0x88, 0x14, 0xd4, 0x60, 0xd9, 0xbf, 0x59, 0x4d, 0x81, 0x2d, 0x38, 0x39, 0x54, 0x76, 0x1c, 0x95, 0xa4, 0xc6, 0x76, 0x74, 0xc4, 0xae, 0x6d, 0x09, 0xf7, 0x4c, 0xba, 0xd3, 0xd7, 0x53, 0x40, 0xc6, 0x09, }; static const wycheproof_xdh_test xdh_wei448_4014 = { .name = "xdh_wei448_4014", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4014_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4014_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4014_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 410 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4015 for XDH, tcId is 411 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4015_peerpubkey[] = { 0xe6, 0x24, 0x22, 0xb2, 0x2e, 0x12, 0x32, 0xdf, 0xb6, 0x03, 0x7d, 0xfa, 0x7c, 0xbb, 0xf5, 0x76, 0x76, 0x04, 0x66, 0x4d, 0x22, 0xad, 0x2a, 0xfa, 0xde, 0x89, 0x2c, 0xe8, 0x74, 0x71, 0xad, 0xfe, 0x32, 0xa2, 0x90, 0x20, 0x3e, 0x22, 0xdd, 0x82, 0x80, 0x93, 0x8d, 0xa1, 0x89, 0x86, 0x6e, 0x60, 0xa4, 0xf2, 0xb0, 0x97, 0x85, 0x01, 0xac, 0x1a, }; static const unsigned char xdh_wei448_4015_privkey[] = { 0xb4, 0x35, 0x5c, 0xe9, 0x25, 0x0c, 0x14, 0xe5, 0x1f, 0xad, 0x03, 0xb7, 0x85, 0xd1, 0x3d, 0xfc, 0xc9, 0xe4, 0x31, 0xdf, 0xc4, 0x0e, 0xa5, 0xde, 0x83, 0x7b, 0x42, 0x6b, 0xc0, 0xdb, 0x90, 0xd8, 0x7d, 0xce, 0xfb, 0xe9, 0x81, 0xd9, 0x39, 0xb9, 0xdc, 0x9e, 0xbe, 0xe0, 0x77, 0x21, 0x27, 0xc7, 0x32, 0x45, 0xb6, 0xda, 0x6d, 0x56, 0xa5, 0x8c, }; static const unsigned char xdh_wei448_4015_sharedsecret[] = { 0x0c, 0x40, 0x76, 0xf5, 0xf7, 0xe7, 0x8c, 0x06, 0x5d, 0x03, 0x56, 0xa5, 0x42, 0x77, 0x42, 0x96, 0xb8, 0x8e, 0x58, 0x4a, 0x3d, 0xb4, 0x99, 0x44, 0xbe, 0x07, 0xe6, 0xac, 0x44, 0x9d, 0x8a, 0x74, 0x1e, 0xfd, 0x32, 0xea, 0x46, 0xb5, 0x3f, 0xec, 0x1e, 0x49, 0x4e, 0x7e, 0x9f, 0xe2, 0xfa, 0x83, 0x1b, 0xcf, 0xfe, 0xdd, 0x27, 0xd6, 0x69, 0xc5, }; static const wycheproof_xdh_test xdh_wei448_4015 = { .name = "xdh_wei448_4015", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4015_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4015_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4015_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 411 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4016 for XDH, tcId is 412 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4016_peerpubkey[] = { 0xd2, 0xa4, 0xc7, 0x15, 0x2d, 0x46, 0x08, 0x82, 0xa8, 0x96, 0xc3, 0x25, 0x59, 0xd0, 0x46, 0xbf, 0x70, 0x1d, 0x51, 0x24, 0xcf, 0x5c, 0xef, 0xe5, 0x30, 0x77, 0x74, 0xd0, 0x4c, 0xb4, 0x49, 0xf7, 0xac, 0x18, 0x1c, 0x10, 0x80, 0x00, 0x7a, 0xbf, 0xec, 0xc1, 0x5c, 0x1b, 0xfe, 0x32, 0xbf, 0xf6, 0xdb, 0xe1, 0x24, 0xfe, 0x52, 0xca, 0x5c, 0x1e, }; static const unsigned char xdh_wei448_4016_privkey[] = { 0x5c, 0x58, 0xdd, 0xfa, 0xcc, 0x07, 0xa8, 0x96, 0x9d, 0x78, 0x30, 0xc1, 0x69, 0x11, 0x39, 0x28, 0x35, 0x1b, 0x7f, 0x9b, 0xe9, 0x4b, 0x2d, 0xe7, 0x28, 0xf6, 0x3f, 0xac, 0xc1, 0x8e, 0x27, 0x95, 0xf6, 0x91, 0xdc, 0x32, 0x96, 0x8e, 0x33, 0x10, 0xa7, 0x8a, 0x38, 0xea, 0x57, 0xd6, 0x76, 0x07, 0x28, 0x11, 0xde, 0x47, 0x7d, 0x28, 0xa0, 0x8e, }; static const unsigned char xdh_wei448_4016_sharedsecret[] = { 0x9a, 0xfd, 0x98, 0x88, 0x44, 0x0c, 0x6e, 0xab, 0x0d, 0x63, 0xb7, 0xce, 0xc4, 0x2b, 0x5f, 0x42, 0x7f, 0xcb, 0x6a, 0x12, 0xa2, 0x65, 0xfe, 0x40, 0x26, 0x36, 0x3a, 0x3d, 0x1d, 0xa1, 0x71, 0xd1, 0xa0, 0xfa, 0x00, 0x09, 0x33, 0x3d, 0x41, 0xb4, 0x73, 0xb4, 0xec, 0x08, 0x66, 0xb6, 0xd6, 0x09, 0x3c, 0xfe, 0x87, 0x94, 0x25, 0xe2, 0x1e, 0x72, }; static const wycheproof_xdh_test xdh_wei448_4016 = { .name = "xdh_wei448_4016", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4016_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4016_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4016_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 412 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4017 for XDH, tcId is 413 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4017_peerpubkey[] = { 0x57, 0x5a, 0xa8, 0x2e, 0x2e, 0xad, 0x45, 0x3e, 0x32, 0x95, 0xd7, 0x81, 0x93, 0xcb, 0xaf, 0xdf, 0xb7, 0x48, 0xbf, 0xde, 0x0a, 0xb1, 0x2b, 0x5c, 0xab, 0x36, 0x11, 0x3a, 0xc2, 0x79, 0x6b, 0xc9, 0x50, 0xa3, 0x18, 0xf5, 0x94, 0x45, 0x38, 0x52, 0xf4, 0xb2, 0xaa, 0x86, 0x17, 0x0b, 0xcc, 0x31, 0x73, 0x93, 0x81, 0xae, 0xb7, 0x8b, 0xa9, 0x2b, }; static const unsigned char xdh_wei448_4017_privkey[] = { 0x18, 0x12, 0x23, 0x06, 0xcd, 0x06, 0x38, 0xb6, 0x4a, 0x86, 0x00, 0xf0, 0x88, 0x30, 0x74, 0xa7, 0xed, 0xfc, 0xe6, 0xd6, 0x4d, 0x1e, 0x29, 0xeb, 0x0e, 0x3e, 0xfb, 0xd9, 0xca, 0x0e, 0x80, 0xb1, 0x33, 0xbc, 0x71, 0xf1, 0x81, 0x48, 0xbc, 0x11, 0xc2, 0xb1, 0xe6, 0xa2, 0x46, 0x80, 0x0d, 0xa2, 0xdc, 0xfa, 0x30, 0x05, 0xa0, 0x94, 0x68, 0x84, }; static const unsigned char xdh_wei448_4017_sharedsecret[] = { 0x29, 0x44, 0x7f, 0xa2, 0x06, 0x1b, 0x4c, 0xde, 0x87, 0x6b, 0xd0, 0x74, 0x9c, 0x6d, 0x5b, 0x5e, 0x4d, 0x94, 0x19, 0xde, 0xfb, 0xa9, 0xac, 0xe2, 0x79, 0x9e, 0x9d, 0x3e, 0xa1, 0x74, 0x03, 0x5d, 0x97, 0x7a, 0xce, 0x07, 0x83, 0x36, 0x8a, 0xc1, 0x26, 0x9f, 0x69, 0x22, 0xa6, 0x9d, 0xc4, 0x7f, 0xfb, 0x65, 0xf2, 0x13, 0x75, 0xf5, 0x69, 0x29, }; static const wycheproof_xdh_test xdh_wei448_4017 = { .name = "xdh_wei448_4017", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4017_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4017_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4017_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 413 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4018 for XDH, tcId is 414 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4018_peerpubkey[] = { 0x56, 0x29, 0xec, 0x6f, 0xcb, 0x52, 0x60, 0x01, 0x9d, 0x95, 0x51, 0xb6, 0x30, 0x85, 0xd2, 0x50, 0x00, 0xa5, 0x9c, 0x12, 0x94, 0x7b, 0xc8, 0xd8, 0x98, 0x5d, 0x68, 0xca, 0xba, 0x08, 0xef, 0xed, 0x9e, 0xde, 0x76, 0xde, 0x2f, 0x6c, 0x5b, 0x76, 0x28, 0x01, 0xc3, 0x65, 0x06, 0x15, 0xed, 0xb9, 0x6f, 0xd4, 0x73, 0xb1, 0x7c, 0xd0, 0x38, 0x2e, }; static const unsigned char xdh_wei448_4018_privkey[] = { 0x40, 0x68, 0x6a, 0xc7, 0xb2, 0x65, 0xa2, 0xdf, 0xfb, 0xb5, 0x28, 0x00, 0x28, 0x64, 0x96, 0x9a, 0x03, 0xb0, 0xc2, 0x94, 0x2c, 0x9e, 0x5f, 0xcd, 0xc5, 0xe0, 0x2e, 0xfe, 0x45, 0x2f, 0x35, 0x11, 0x0c, 0xcd, 0xe0, 0xba, 0x88, 0xc4, 0x0c, 0x6a, 0xd2, 0x34, 0x3c, 0x5a, 0x7c, 0xaf, 0xd6, 0x80, 0x50, 0x54, 0xef, 0xce, 0x3c, 0x17, 0x99, 0x8e, }; static const unsigned char xdh_wei448_4018_sharedsecret[] = { 0x67, 0x7b, 0xfe, 0x25, 0xc0, 0x04, 0x4b, 0x3b, 0x54, 0x05, 0x27, 0xe8, 0xdc, 0x78, 0xd8, 0x78, 0x27, 0xaa, 0xb6, 0x68, 0x62, 0x34, 0x6c, 0x78, 0xf7, 0xad, 0x95, 0x9e, 0x8c, 0xbd, 0x5f, 0x8b, 0xf0, 0xc6, 0x12, 0xca, 0x66, 0xdb, 0x2b, 0xba, 0xd6, 0xa0, 0xd3, 0xc8, 0xdb, 0xd0, 0xf9, 0x92, 0x22, 0x94, 0xfa, 0x28, 0x21, 0x40, 0xab, 0x06, }; static const wycheproof_xdh_test xdh_wei448_4018 = { .name = "xdh_wei448_4018", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4018_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4018_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4018_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 414 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4019 for XDH, tcId is 415 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4019_peerpubkey[] = { 0x23, 0x94, 0xf0, 0xd4, 0x2a, 0x7e, 0x06, 0x0c, 0x83, 0xf2, 0x4f, 0xe7, 0x17, 0x9f, 0x07, 0xed, 0xd1, 0x71, 0xaf, 0x1b, 0x53, 0xe8, 0x6b, 0xe7, 0x00, 0x55, 0x1a, 0x96, 0x95, 0x04, 0x78, 0x2c, 0x45, 0x93, 0x6a, 0x16, 0xc7, 0x7c, 0x0f, 0xa1, 0xe0, 0x54, 0xa6, 0x9a, 0x50, 0x99, 0x63, 0xa2, 0x42, 0xae, 0x25, 0x6f, 0x71, 0x79, 0x04, 0x35, }; static const unsigned char xdh_wei448_4019_privkey[] = { 0xf0, 0x4d, 0xfc, 0x27, 0x1f, 0xbc, 0x4a, 0x4e, 0xc8, 0xda, 0x96, 0x29, 0xde, 0x17, 0xfb, 0x6d, 0x66, 0x7e, 0x0a, 0x5f, 0x04, 0xb6, 0x99, 0x35, 0x82, 0xff, 0x32, 0xb3, 0xa7, 0xe0, 0xd4, 0xb8, 0x40, 0xee, 0x07, 0x2b, 0x5c, 0x08, 0xf9, 0x61, 0x42, 0xcc, 0x3c, 0x0d, 0xe1, 0x4a, 0x61, 0xf2, 0x59, 0x6f, 0x5c, 0x88, 0x43, 0x5e, 0xbb, 0x8b, }; static const unsigned char xdh_wei448_4019_sharedsecret[] = { 0x91, 0xde, 0xcd, 0xb8, 0x94, 0x28, 0x3a, 0xa2, 0x6e, 0x61, 0x4e, 0x31, 0x15, 0x44, 0x70, 0xc3, 0x1f, 0xde, 0x19, 0x13, 0x40, 0x57, 0x70, 0xe6, 0x53, 0x25, 0x31, 0x9f, 0x2c, 0xa2, 0x6a, 0xac, 0x71, 0xad, 0x24, 0x7d, 0xc2, 0x18, 0x5c, 0x2d, 0xaa, 0xb8, 0x21, 0x41, 0x76, 0x15, 0xed, 0x6e, 0x77, 0x28, 0xe8, 0xa9, 0xcc, 0x5f, 0xb6, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_4019 = { .name = "xdh_wei448_4019", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4019_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4019_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4019_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 415 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4020 for XDH, tcId is 416 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4020_peerpubkey[] = { 0xf9, 0xfa, 0xd4, 0x52, 0x57, 0x8f, 0x50, 0x6e, 0x18, 0xd7, 0x0c, 0x27, 0xeb, 0x00, 0x2a, 0xa6, 0x1b, 0x20, 0xb9, 0xe9, 0x05, 0xeb, 0x53, 0x10, 0x47, 0x66, 0xb2, 0x8d, 0xb2, 0x31, 0x4e, 0xe1, 0xdb, 0x36, 0x26, 0x5f, 0x6f, 0x34, 0xb4, 0x1a, 0x00, 0x8c, 0xb5, 0x79, 0x5d, 0x13, 0xbe, 0x40, 0x3a, 0xd9, 0x41, 0x88, 0x62, 0x56, 0x05, 0x3c, }; static const unsigned char xdh_wei448_4020_privkey[] = { 0x54, 0xb3, 0xdc, 0xaf, 0xdd, 0x9e, 0x0d, 0x73, 0x1e, 0xff, 0x76, 0xd2, 0x44, 0x63, 0xaf, 0xc0, 0xbf, 0x94, 0x81, 0x59, 0x7f, 0x35, 0x6d, 0x21, 0x06, 0x21, 0xaf, 0x29, 0x10, 0x48, 0xd9, 0x20, 0x75, 0x38, 0x6e, 0x80, 0xee, 0x8e, 0x78, 0xd7, 0xf5, 0x43, 0xb3, 0x05, 0xe3, 0xd2, 0xd2, 0xa4, 0x18, 0x0d, 0xee, 0x8b, 0x52, 0x8a, 0xb4, 0x87, }; static const unsigned char xdh_wei448_4020_sharedsecret[] = { 0xf5, 0xd9, 0xca, 0xbf, 0x7c, 0x1b, 0x1c, 0x64, 0xc9, 0xe2, 0xc2, 0xda, 0xf9, 0x5c, 0xcb, 0x38, 0xa7, 0x1b, 0x21, 0x28, 0xf1, 0x98, 0x7a, 0x98, 0xed, 0x5c, 0x91, 0x8b, 0xa6, 0x94, 0x86, 0xb1, 0x7e, 0x03, 0x70, 0xa9, 0x49, 0xdc, 0x17, 0x2b, 0xaf, 0x85, 0x93, 0xa1, 0xf8, 0xd3, 0x7d, 0x02, 0x2b, 0x0a, 0x0a, 0x9b, 0xc5, 0x4c, 0xae, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_4020 = { .name = "xdh_wei448_4020", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4020_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4020_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4020_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 416 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4021 for XDH, tcId is 417 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4021_peerpubkey[] = { 0xf2, 0xc4, 0xcb, 0x79, 0xda, 0x0f, 0xd6, 0xae, 0x25, 0x1a, 0x16, 0x44, 0x6e, 0x6b, 0x92, 0x14, 0xcb, 0xbf, 0x76, 0xdd, 0x91, 0x1f, 0xb4, 0x96, 0x6e, 0xa6, 0x5e, 0x1e, 0x5c, 0x72, 0x5d, 0x35, 0x40, 0x48, 0x8f, 0x22, 0xd2, 0x32, 0xdd, 0x4e, 0x55, 0x96, 0xeb, 0x7f, 0x9e, 0x6d, 0x4b, 0xba, 0xe8, 0xf1, 0xa1, 0x7a, 0x6e, 0x3d, 0x94, 0x61, }; static const unsigned char xdh_wei448_4021_privkey[] = { 0x04, 0x1b, 0x7c, 0xca, 0x67, 0x44, 0x98, 0x6f, 0x6b, 0xdf, 0x4e, 0x83, 0xb5, 0xe6, 0xa7, 0xed, 0x8a, 0xa9, 0x73, 0xbf, 0xc0, 0xb5, 0x88, 0x4e, 0x60, 0x70, 0x18, 0x7f, 0xae, 0x24, 0xf3, 0x40, 0x73, 0x63, 0xac, 0xbb, 0x1a, 0xf3, 0x7c, 0x96, 0x28, 0xf1, 0x5d, 0x9f, 0xd4, 0x9b, 0xeb, 0x51, 0x5f, 0x8a, 0x9b, 0x5e, 0x9a, 0x39, 0xf7, 0x86, }; static const unsigned char xdh_wei448_4021_sharedsecret[] = { 0xb8, 0x04, 0x81, 0x33, 0xbb, 0x5b, 0x73, 0x4e, 0xea, 0x7a, 0xa9, 0xe3, 0x5e, 0x69, 0xc5, 0x30, 0x19, 0x5d, 0xaf, 0x68, 0xa3, 0x6e, 0x04, 0x48, 0xc8, 0xc3, 0x88, 0x71, 0x1f, 0xcc, 0xee, 0xa1, 0x19, 0x18, 0x26, 0xbe, 0x00, 0x18, 0x0e, 0x0a, 0xad, 0x6e, 0xa2, 0x2d, 0x29, 0xe3, 0xae, 0x82, 0x37, 0xec, 0x78, 0xdd, 0x2e, 0x3b, 0x9d, 0x6b, }; static const wycheproof_xdh_test xdh_wei448_4021 = { .name = "xdh_wei448_4021", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4021_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4021_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4021_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 417 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4022 for XDH, tcId is 418 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4022_peerpubkey[] = { 0x67, 0x48, 0x8d, 0x65, 0xdc, 0xe8, 0x53, 0xb8, 0xa7, 0x3e, 0x4b, 0x1c, 0xc0, 0x69, 0xfa, 0xd7, 0x3d, 0x8b, 0x85, 0x56, 0x80, 0x00, 0x67, 0xae, 0xc1, 0xbf, 0x31, 0xef, 0x6a, 0xc9, 0xbf, 0x0b, 0xe6, 0x3a, 0x35, 0xba, 0x04, 0x8c, 0xca, 0x4f, 0x38, 0x43, 0x5b, 0xa5, 0x10, 0x8d, 0x9a, 0x15, 0x1f, 0xec, 0xbe, 0xdc, 0xd9, 0x48, 0xb5, 0x70, }; static const unsigned char xdh_wei448_4022_privkey[] = { 0x70, 0x60, 0xb7, 0x7e, 0xef, 0x77, 0xf8, 0xc0, 0x7c, 0xe0, 0x94, 0xf5, 0x77, 0x8f, 0x4a, 0x77, 0x46, 0x2c, 0x22, 0xe2, 0x9e, 0x14, 0xe8, 0x86, 0xfe, 0x18, 0x73, 0x98, 0xe6, 0xcd, 0x9e, 0x1c, 0xec, 0xca, 0x70, 0x72, 0x08, 0x3c, 0x90, 0xfa, 0x03, 0xad, 0x05, 0x94, 0x02, 0x19, 0x76, 0x10, 0xcd, 0x94, 0xb9, 0x08, 0xdc, 0x9a, 0xb4, 0x89, }; static const unsigned char xdh_wei448_4022_sharedsecret[] = { 0x15, 0xd3, 0x49, 0xa6, 0xb9, 0x56, 0x3a, 0x54, 0xdd, 0xa4, 0xc4, 0x7d, 0x13, 0x27, 0x68, 0xc2, 0xfc, 0x95, 0x34, 0xec, 0x9f, 0x21, 0x22, 0xb4, 0x03, 0x59, 0xdb, 0x74, 0x50, 0x2c, 0xed, 0x68, 0x0e, 0x1d, 0x22, 0x7c, 0x4f, 0xee, 0xa2, 0xea, 0x60, 0x95, 0x35, 0x56, 0x66, 0xa4, 0xa8, 0x60, 0x0d, 0x32, 0x88, 0x75, 0x2a, 0x29, 0x53, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_4022 = { .name = "xdh_wei448_4022", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4022_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4022_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4022_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 418 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4023 for XDH, tcId is 419 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4023_peerpubkey[] = { 0xc8, 0xa8, 0xd5, 0xf8, 0x7d, 0x63, 0x8f, 0xa0, 0xac, 0x76, 0x3e, 0xe1, 0xc8, 0x47, 0x06, 0xcf, 0x3b, 0xb2, 0x99, 0x6e, 0x95, 0xee, 0xd9, 0xf3, 0x78, 0xb2, 0x63, 0xcd, 0x55, 0x90, 0x19, 0x3d, 0x6e, 0x3c, 0x15, 0x92, 0xe0, 0x1d, 0x04, 0x00, 0x88, 0x13, 0xb3, 0x37, 0x70, 0x3a, 0x62, 0xde, 0xfb, 0xc8, 0x0c, 0x26, 0x57, 0x3a, 0xf9, 0xa1, }; static const unsigned char xdh_wei448_4023_privkey[] = { 0xcc, 0x64, 0x28, 0x9a, 0x20, 0x78, 0xd5, 0xed, 0x5e, 0x85, 0x48, 0xd6, 0xc0, 0x03, 0xaf, 0xe2, 0x79, 0x98, 0x10, 0x3e, 0x0b, 0xaf, 0x57, 0x0f, 0x65, 0x66, 0x24, 0xd9, 0x15, 0x6d, 0x6e, 0xee, 0xc6, 0xfd, 0x74, 0xde, 0xa9, 0x61, 0x5c, 0xa2, 0x87, 0xc1, 0xba, 0xf0, 0xf2, 0x7d, 0xdd, 0xda, 0x2c, 0xe5, 0x80, 0x69, 0xeb, 0x2e, 0x88, 0x8e, }; static const unsigned char xdh_wei448_4023_sharedsecret[] = { 0x98, 0x3a, 0x50, 0x28, 0x5e, 0x5e, 0x44, 0xbb, 0xe8, 0xde, 0x55, 0xde, 0x9c, 0x7f, 0xcb, 0xac, 0x1e, 0x2f, 0xb6, 0xaf, 0xd6, 0xfe, 0xc1, 0x89, 0xe6, 0xf3, 0xb9, 0xb8, 0xbd, 0xac, 0xa6, 0xab, 0x4b, 0x1f, 0xa9, 0xb5, 0x38, 0xb2, 0x8a, 0xda, 0xa5, 0xbf, 0x16, 0x73, 0x5a, 0x78, 0x69, 0xd8, 0x60, 0x95, 0xc5, 0x4f, 0x8a, 0xa4, 0x04, 0x60, }; static const wycheproof_xdh_test xdh_wei448_4023 = { .name = "xdh_wei448_4023", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4023_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4023_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4023_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 419 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4024 for XDH, tcId is 420 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4024_peerpubkey[] = { 0x97, 0xe2, 0x9f, 0x21, 0x18, 0x74, 0x22, 0xc9, 0x4c, 0xfd, 0xf7, 0x4a, 0xf7, 0xfb, 0xd3, 0xc3, 0xd1, 0xfc, 0x17, 0x22, 0x5a, 0xc7, 0xd8, 0xe8, 0x7b, 0xb2, 0x56, 0x3b, 0x98, 0x8a, 0xc1, 0x9c, 0xd3, 0xaf, 0xcc, 0xa7, 0x07, 0xfa, 0xb8, 0x5a, 0x65, 0x2a, 0xe1, 0xb6, 0x18, 0x86, 0xfb, 0xba, 0x75, 0xc0, 0xa6, 0xf4, 0x5f, 0x50, 0x1c, 0xdc, }; static const unsigned char xdh_wei448_4024_privkey[] = { 0xa4, 0xdc, 0xcd, 0xb2, 0xca, 0x5b, 0x7a, 0xfc, 0x13, 0x14, 0x31, 0xd5, 0xea, 0xc0, 0xac, 0x6e, 0x6f, 0x9b, 0x33, 0xee, 0x2f, 0x41, 0x34, 0xe7, 0xd7, 0x9e, 0x10, 0xce, 0xb8, 0x4a, 0x36, 0xa0, 0x0b, 0xcc, 0xb2, 0x80, 0xac, 0x18, 0x59, 0xd1, 0x2a, 0x74, 0x08, 0x62, 0xd4, 0x07, 0x4c, 0xed, 0xb6, 0x53, 0x58, 0x7b, 0xcf, 0x71, 0x09, 0x8b, }; static const unsigned char xdh_wei448_4024_sharedsecret[] = { 0xc6, 0x06, 0x1d, 0xad, 0x24, 0xc1, 0xa1, 0xc8, 0x02, 0x91, 0xb3, 0x53, 0x89, 0xe0, 0x8d, 0xe5, 0xf9, 0x57, 0x7b, 0x01, 0x34, 0x15, 0xdd, 0xf4, 0x49, 0xe3, 0x88, 0x1b, 0xcb, 0x4c, 0xc3, 0x5a, 0x11, 0x40, 0x83, 0x59, 0x40, 0x59, 0x31, 0xa1, 0x7f, 0x42, 0x66, 0x2e, 0x26, 0x30, 0x3a, 0xad, 0x0f, 0xde, 0xcc, 0xd3, 0x24, 0xd7, 0x74, 0xfc, }; static const wycheproof_xdh_test xdh_wei448_4024 = { .name = "xdh_wei448_4024", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4024_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4024_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4024_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 420 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4025 for XDH, tcId is 421 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4025_peerpubkey[] = { 0x05, 0x11, 0x83, 0xae, 0xfd, 0x0a, 0xb2, 0x1a, 0x07, 0x91, 0xc8, 0xb2, 0x91, 0x7b, 0xdf, 0x23, 0xbe, 0x5b, 0x25, 0xf1, 0xf4, 0xb3, 0x0c, 0x64, 0xc3, 0x7a, 0x25, 0x6f, 0x8c, 0xde, 0xca, 0x54, 0xcc, 0xee, 0x9d, 0xcd, 0x1e, 0x24, 0xaf, 0x24, 0x20, 0xd3, 0x2b, 0xc5, 0x57, 0x60, 0x91, 0xfd, 0x1f, 0xf3, 0xf8, 0x0d, 0xa3, 0x54, 0x36, 0xde, }; static const unsigned char xdh_wei448_4025_privkey[] = { 0x64, 0x5d, 0xfb, 0x9e, 0x66, 0xcf, 0x2a, 0x6a, 0x4e, 0x19, 0x8f, 0x19, 0xed, 0xc6, 0xfa, 0x43, 0xca, 0xf8, 0x6b, 0x1c, 0x35, 0xdf, 0xac, 0x97, 0xa5, 0x24, 0xb7, 0x0c, 0x0c, 0xd2, 0xba, 0xaf, 0x29, 0x16, 0xca, 0xc7, 0x19, 0x53, 0x61, 0x69, 0xea, 0x1f, 0x43, 0xe0, 0xe2, 0x46, 0x30, 0x65, 0x9f, 0x60, 0xd4, 0xe3, 0x32, 0x01, 0x89, 0x89, }; static const unsigned char xdh_wei448_4025_sharedsecret[] = { 0x3f, 0xea, 0x03, 0x6a, 0x64, 0x3f, 0xa9, 0x94, 0x67, 0x76, 0x3b, 0x06, 0xe0, 0x76, 0xf1, 0xc3, 0x11, 0x65, 0x3b, 0xd0, 0x86, 0x87, 0x7c, 0x87, 0xf8, 0x58, 0xb1, 0xbe, 0x2b, 0xb5, 0xcd, 0x10, 0x7b, 0xc1, 0x8b, 0x42, 0x22, 0xac, 0x1f, 0x48, 0xdc, 0x13, 0x74, 0x19, 0x38, 0x11, 0x99, 0xb4, 0xba, 0x29, 0xa7, 0xa7, 0xe9, 0x6d, 0xa0, 0x76, }; static const wycheproof_xdh_test xdh_wei448_4025 = { .name = "xdh_wei448_4025", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4025_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4025_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4025_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 421 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4026 for XDH, tcId is 422 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4026_peerpubkey[] = { 0x0f, 0x25, 0xb2, 0x4b, 0x22, 0x50, 0x81, 0x23, 0x39, 0xa4, 0x50, 0x75, 0x84, 0xd2, 0xb5, 0x74, 0xbc, 0x2b, 0xfe, 0x07, 0x4c, 0xfb, 0xa1, 0x2f, 0xdc, 0x8e, 0x61, 0x2e, 0xfb, 0xdf, 0x67, 0x48, 0x0d, 0xe3, 0x3d, 0x62, 0xdd, 0xe1, 0x3f, 0xe6, 0x18, 0x67, 0x54, 0x57, 0x1e, 0x6c, 0xf3, 0x0a, 0x8f, 0xe3, 0x2e, 0x97, 0x5d, 0x94, 0x56, 0xeb, }; static const unsigned char xdh_wei448_4026_privkey[] = { 0xcc, 0x18, 0x26, 0xcf, 0x87, 0x5e, 0x63, 0x6c, 0xd1, 0x5d, 0xbc, 0xd9, 0xb2, 0xf7, 0xc4, 0xd3, 0x3c, 0x92, 0x39, 0x65, 0x2f, 0xf4, 0x84, 0xbb, 0xe9, 0xfb, 0xf8, 0x25, 0x47, 0x91, 0xce, 0xe4, 0xdc, 0x95, 0xe7, 0x5b, 0x0d, 0x92, 0x67, 0x9e, 0xdb, 0xdf, 0x6c, 0xba, 0xfe, 0x43, 0xff, 0xb0, 0x9d, 0x0a, 0xb7, 0x35, 0x68, 0xcf, 0x3c, 0x81, }; static const unsigned char xdh_wei448_4026_sharedsecret[] = { 0x7b, 0xd1, 0x4e, 0xbc, 0x4a, 0xae, 0x16, 0x3f, 0x2c, 0x61, 0xd5, 0x16, 0xe5, 0xb6, 0x7a, 0x5d, 0xbe, 0xf4, 0x87, 0xb8, 0x98, 0x0d, 0xef, 0xe3, 0x41, 0xfb, 0x94, 0x2f, 0xa8, 0xf1, 0xeb, 0x1a, 0xa8, 0x29, 0x51, 0x89, 0xf0, 0x6c, 0xd7, 0xcc, 0x7e, 0x35, 0xe5, 0x77, 0xbd, 0x34, 0xc8, 0x07, 0x70, 0xe9, 0x63, 0x3f, 0x85, 0x0f, 0xe8, 0x68, }; static const wycheproof_xdh_test xdh_wei448_4026 = { .name = "xdh_wei448_4026", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4026_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4026_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4026_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 8, tcId is 422 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4027 for XDH, tcId is 423 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4027_peerpubkey[] = { 0x17, 0x22, 0x5d, 0xf6, 0xc6, 0x58, 0x1a, 0x4c, 0x50, 0xd3, 0x14, 0x00, 0x39, 0x5f, 0xa2, 0x11, 0xed, 0x3d, 0x14, 0x6d, 0xeb, 0xda, 0xe1, 0xc3, 0xe6, 0xb4, 0x41, 0xbb, 0x13, 0x87, 0x10, 0x42, 0xdd, 0x35, 0x85, 0x47, 0x01, 0x98, 0xdf, 0x89, 0x7b, 0xfe, 0x82, 0xc0, 0xc7, 0xef, 0xe7, 0x39, 0xa7, 0x28, 0x4f, 0x8e, 0xb4, 0x72, 0x42, 0xef, }; static const unsigned char xdh_wei448_4027_privkey[] = { 0x38, 0x11, 0x23, 0x73, 0x97, 0xab, 0x5d, 0x36, 0x4c, 0x88, 0xa6, 0x8a, 0x1e, 0xcc, 0x31, 0x09, 0x60, 0x06, 0x78, 0x9a, 0x8c, 0xee, 0x84, 0xe6, 0x9c, 0x26, 0x7f, 0x1d, 0x93, 0xc1, 0xb8, 0xef, 0xab, 0x9f, 0xab, 0x8e, 0x3d, 0x5a, 0xb5, 0x11, 0x52, 0xa0, 0xb5, 0xdc, 0x11, 0xba, 0x0a, 0x0d, 0x4d, 0xcf, 0x7c, 0x41, 0xe7, 0xd7, 0xb6, 0x89, }; static const unsigned char xdh_wei448_4027_sharedsecret[] = { 0xd9, 0x6d, 0x07, 0x7d, 0x0a, 0xc0, 0x09, 0x6b, 0xbd, 0x79, 0xba, 0x1b, 0x83, 0x76, 0x32, 0x06, 0xb4, 0x01, 0x8d, 0x76, 0x9c, 0x0e, 0xa0, 0x7e, 0xff, 0x92, 0x4c, 0x98, 0x51, 0xc0, 0x7f, 0x66, 0xb3, 0x54, 0x75, 0xf1, 0x8b, 0xfc, 0xc8, 0x82, 0xb5, 0x00, 0x6a, 0x4e, 0xcf, 0x7c, 0xcb, 0xeb, 0x69, 0x4b, 0x57, 0x62, 0xb4, 0xcf, 0x07, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_4027 = { .name = "xdh_wei448_4027", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4027_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4027_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4027_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 8, tcId is 423 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4028 for XDH, tcId is 424 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4028_peerpubkey[] = { 0x6f, 0x56, 0xf2, 0xb6, 0x5a, 0x56, 0x09, 0x2f, 0xce, 0xce, 0x41, 0x79, 0x7f, 0x1b, 0x53, 0x13, 0xa2, 0xe7, 0xae, 0x5e, 0x60, 0xb9, 0x2a, 0x22, 0x11, 0xe2, 0xd6, 0x34, 0x80, 0x8e, 0x10, 0x9c, 0xd6, 0x84, 0xd4, 0x55, 0x47, 0x63, 0xb4, 0x86, 0x4d, 0x67, 0x68, 0x1d, 0xa4, 0x8d, 0x75, 0xf5, 0xdc, 0xf8, 0x69, 0x34, 0x6a, 0x10, 0x4a, 0x0d, }; static const unsigned char xdh_wei448_4028_privkey[] = { 0x0c, 0x78, 0xfc, 0x8b, 0x60, 0x5d, 0xa2, 0xf2, 0xa8, 0x33, 0x2d, 0x0c, 0x08, 0x48, 0xac, 0xf7, 0x13, 0x3d, 0x33, 0x50, 0xff, 0xdc, 0x4b, 0x66, 0x51, 0x25, 0x70, 0x5d, 0xb9, 0x59, 0xae, 0x17, 0xd2, 0x5d, 0x2e, 0x2d, 0xfc, 0xb8, 0x58, 0xf0, 0xcf, 0x6f, 0x16, 0x16, 0x2a, 0x46, 0x17, 0x22, 0xb4, 0x09, 0x14, 0x95, 0x46, 0xa9, 0x97, 0x83, }; static const unsigned char xdh_wei448_4028_sharedsecret[] = { 0x23, 0x16, 0xe7, 0x1f, 0x15, 0xd9, 0x1b, 0xf0, 0xc3, 0xf8, 0xb3, 0x7b, 0x05, 0x37, 0xd3, 0xa4, 0x08, 0x82, 0x59, 0x99, 0x6e, 0x01, 0x83, 0x83, 0xc8, 0x10, 0xb9, 0xdd, 0xdf, 0x21, 0x1a, 0x44, 0x69, 0xae, 0x08, 0x8a, 0xbd, 0xf9, 0x31, 0x89, 0x4e, 0x22, 0x86, 0x50, 0x3e, 0x78, 0x08, 0x98, 0x48, 0x72, 0x55, 0xa1, 0x3e, 0xb5, 0xab, 0xc3, }; static const wycheproof_xdh_test xdh_wei448_4028 = { .name = "xdh_wei448_4028", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4028_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4028_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4028_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 424 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4029 for XDH, tcId is 425 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4029_peerpubkey[] = { 0x2b, 0x12, 0xcb, 0xc3, 0xbc, 0x20, 0xfc, 0x18, 0x92, 0xf5, 0xb0, 0x23, 0x6b, 0x71, 0xe7, 0x28, 0xe1, 0xe4, 0xad, 0xc7, 0x2d, 0x52, 0x61, 0xe6, 0xdf, 0x21, 0x77, 0xbb, 0x53, 0x10, 0x1d, 0x14, 0x40, 0xdb, 0xd8, 0x69, 0x9d, 0x2e, 0x83, 0xa0, 0x8e, 0x3e, 0x9e, 0x6f, 0xbe, 0xbe, 0xff, 0x59, 0xad, 0x43, 0xa4, 0x27, 0x7f, 0x97, 0x03, 0x10, }; static const unsigned char xdh_wei448_4029_privkey[] = { 0xf4, 0x70, 0x2f, 0x84, 0x13, 0xcb, 0x82, 0x78, 0x58, 0x6a, 0x79, 0xa5, 0xf4, 0xe4, 0xca, 0xae, 0x61, 0x5d, 0x5e, 0xb9, 0x88, 0x51, 0x02, 0xe7, 0x19, 0x1a, 0x61, 0x60, 0xd2, 0x12, 0xc6, 0xe0, 0xfa, 0x50, 0xa2, 0x10, 0x97, 0x83, 0x52, 0x20, 0x42, 0x72, 0xd7, 0x99, 0xe1, 0x89, 0xa2, 0x83, 0x23, 0x3c, 0xd8, 0xfc, 0x3d, 0x96, 0xf4, 0x83, }; static const unsigned char xdh_wei448_4029_sharedsecret[] = { 0x20, 0xf0, 0xa3, 0xeb, 0xaa, 0x09, 0x9b, 0xdc, 0x58, 0xa5, 0xf9, 0x08, 0x8d, 0x5c, 0x44, 0xbb, 0xe6, 0x6c, 0xdd, 0xda, 0xf4, 0xc0, 0x52, 0x1b, 0x66, 0xb3, 0x1a, 0x00, 0xa5, 0x9e, 0x70, 0x09, 0x4c, 0xe6, 0x0e, 0x35, 0x67, 0x53, 0x95, 0x55, 0x2d, 0x48, 0x2c, 0x57, 0xfc, 0x38, 0xd1, 0x1c, 0x8d, 0xe2, 0x67, 0xe5, 0x11, 0xde, 0x45, 0x58, }; static const wycheproof_xdh_test xdh_wei448_4029 = { .name = "xdh_wei448_4029", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4029_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4029_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4029_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 425 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4030 for XDH, tcId is 426 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4030_peerpubkey[] = { 0x5d, 0xeb, 0x8c, 0xb5, 0x71, 0xf9, 0xde, 0xea, 0x6f, 0x4c, 0xa6, 0xdd, 0xef, 0x78, 0x9c, 0xf0, 0x92, 0xbb, 0x7e, 0x33, 0xbb, 0xb8, 0x16, 0x0c, 0x0c, 0xc8, 0x3a, 0xff, 0xc6, 0xc0, 0x37, 0xdb, 0x17, 0xff, 0x3d, 0xbd, 0x12, 0x8e, 0x3e, 0x5d, 0x78, 0x04, 0x7d, 0xa6, 0xb9, 0xa0, 0x58, 0x51, 0xf1, 0x27, 0xdd, 0x0f, 0x27, 0xbe, 0xab, 0xaa, }; static const unsigned char xdh_wei448_4030_privkey[] = { 0xcc, 0x78, 0x89, 0xbb, 0x91, 0x35, 0x7e, 0x0c, 0xbf, 0xd5, 0x3a, 0x99, 0x47, 0x54, 0x4f, 0xab, 0x4e, 0x35, 0xf1, 0x10, 0x2d, 0xa8, 0x7d, 0x34, 0x35, 0x38, 0x70, 0x9f, 0xa4, 0x73, 0xaa, 0x82, 0x13, 0x06, 0xf2, 0x08, 0x1f, 0x56, 0x9a, 0xef, 0x83, 0x7d, 0x76, 0x94, 0x28, 0x13, 0x8d, 0x83, 0x1b, 0x9e, 0x57, 0x67, 0xb4, 0x31, 0xf7, 0x85, }; static const unsigned char xdh_wei448_4030_sharedsecret[] = { 0xa6, 0x9f, 0xd8, 0xc7, 0xa5, 0xed, 0x40, 0x1c, 0x81, 0x45, 0x50, 0xc9, 0xd1, 0x35, 0xff, 0xc4, 0x82, 0xab, 0x40, 0xe0, 0x78, 0x01, 0xab, 0x50, 0xd1, 0x08, 0x2f, 0xfb, 0xb7, 0x8e, 0x07, 0xe5, 0xe1, 0x62, 0x8f, 0xeb, 0x5a, 0x18, 0xcc, 0x25, 0x7f, 0xff, 0x43, 0x1d, 0x5e, 0x36, 0xd9, 0x99, 0xb7, 0x53, 0x70, 0x89, 0xe9, 0x07, 0x3b, 0x40, }; static const wycheproof_xdh_test xdh_wei448_4030 = { .name = "xdh_wei448_4030", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4030_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4030_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4030_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 8, tcId is 426 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4031 for XDH, tcId is 427 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4031_peerpubkey[] = { 0x90, 0x11, 0x7d, 0x3b, 0x29, 0x6d, 0xdd, 0xb7, 0xe1, 0x6f, 0xa6, 0x55, 0x84, 0x02, 0x18, 0x8f, 0xb3, 0xce, 0xd0, 0x95, 0xf6, 0xb5, 0xcf, 0xe5, 0x5a, 0x2e, 0xf7, 0x37, 0x63, 0x4f, 0xfe, 0xf7, 0xd7, 0x2e, 0x29, 0x87, 0x52, 0xfc, 0xd0, 0x5f, 0x46, 0xb0, 0x8b, 0x98, 0x38, 0xa0, 0x58, 0x37, 0x45, 0xcb, 0x4d, 0xed, 0x2a, 0xe9, 0x74, 0xb5, }; static const unsigned char xdh_wei448_4031_privkey[] = { 0x6c, 0xa1, 0x6c, 0x5c, 0x5a, 0x85, 0x3e, 0xa8, 0xec, 0x6b, 0xee, 0x34, 0x69, 0x9c, 0xe3, 0x3d, 0x98, 0x6f, 0xeb, 0xd1, 0x26, 0x1d, 0xd9, 0x01, 0x4d, 0xe1, 0x81, 0x5b, 0xd7, 0x22, 0xe4, 0xb2, 0x55, 0x4f, 0x5e, 0xe1, 0xd4, 0x5d, 0x54, 0x66, 0x3a, 0x91, 0x90, 0xb3, 0x14, 0xbf, 0xd8, 0xd9, 0xc5, 0x49, 0x2e, 0xd4, 0x74, 0xc0, 0x09, 0x88, }; static const unsigned char xdh_wei448_4031_sharedsecret[] = { 0xb4, 0x09, 0x2b, 0x95, 0x50, 0x12, 0x3a, 0x03, 0x08, 0x59, 0xd2, 0xb5, 0xd7, 0x37, 0x0b, 0xbe, 0xf9, 0x3c, 0xa2, 0x90, 0x15, 0x30, 0x25, 0x9d, 0xac, 0xc9, 0x21, 0x17, 0x8d, 0x09, 0x89, 0xd1, 0x15, 0x08, 0xed, 0xa0, 0x7e, 0x82, 0xf2, 0xab, 0x43, 0xff, 0x14, 0xbb, 0x54, 0xa8, 0x47, 0xb9, 0x08, 0xe2, 0x5e, 0xdc, 0x24, 0x52, 0x5a, 0x4d, }; static const wycheproof_xdh_test xdh_wei448_4031 = { .name = "xdh_wei448_4031", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4031_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4031_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4031_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 427 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4032 for XDH, tcId is 428 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4032_peerpubkey[] = { 0x14, 0xe7, 0x73, 0x59, 0x5d, 0x8f, 0x47, 0xd1, 0x39, 0xe8, 0x62, 0x4c, 0x8c, 0xda, 0x31, 0xca, 0x26, 0xdd, 0x88, 0x7a, 0x3b, 0x37, 0x75, 0xef, 0xde, 0xc8, 0x83, 0x18, 0x31, 0xa9, 0x89, 0x72, 0x7f, 0x8d, 0xb0, 0x08, 0x27, 0x79, 0x6a, 0x18, 0x9a, 0x8c, 0x26, 0x16, 0x15, 0x74, 0x98, 0xc6, 0x66, 0x76, 0xed, 0x7b, 0x20, 0x37, 0xf0, 0xd1, }; static const unsigned char xdh_wei448_4032_privkey[] = { 0x5c, 0xf6, 0xe2, 0x12, 0xe2, 0xa0, 0x15, 0x2e, 0x32, 0x04, 0x15, 0x08, 0x34, 0xca, 0x22, 0x07, 0xb7, 0x41, 0xf1, 0xa8, 0x27, 0xd0, 0x36, 0xaf, 0x18, 0x55, 0x27, 0xc8, 0x97, 0x66, 0x1f, 0x11, 0x51, 0x40, 0x9b, 0x64, 0xba, 0xad, 0x8c, 0xc1, 0xda, 0x9d, 0xc7, 0x5a, 0xe5, 0xaa, 0xfb, 0x8c, 0x36, 0x06, 0x2f, 0xc9, 0xb6, 0xdc, 0x9c, 0x8b, }; static const unsigned char xdh_wei448_4032_sharedsecret[] = { 0x22, 0xb9, 0x38, 0xcc, 0xed, 0x84, 0x72, 0xf3, 0x80, 0x01, 0xdb, 0xa6, 0xa2, 0xee, 0xd8, 0x56, 0xc9, 0x3f, 0x70, 0x1c, 0x4e, 0xd8, 0x1f, 0x51, 0x01, 0x89, 0xa1, 0x0b, 0xe2, 0x6d, 0x85, 0xc6, 0x95, 0x40, 0x28, 0x4b, 0xd2, 0x3e, 0xf7, 0x9e, 0x47, 0xc4, 0x47, 0x09, 0xd3, 0x06, 0x7d, 0xf3, 0xe1, 0x5a, 0x36, 0xa8, 0xa4, 0x1b, 0x85, 0x13, }; static const wycheproof_xdh_test xdh_wei448_4032 = { .name = "xdh_wei448_4032", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4032_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4032_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4032_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 428 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4033 for XDH, tcId is 429 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4033_peerpubkey[] = { 0x17, 0x18, 0x76, 0x86, 0xf0, 0x67, 0x45, 0x4a, 0xf7, 0x8c, 0x62, 0x04, 0xec, 0xea, 0x72, 0x87, 0x32, 0xc3, 0x22, 0xc8, 0x03, 0x5e, 0xf3, 0x48, 0xad, 0x1c, 0x35, 0xe7, 0x41, 0x8b, 0x9e, 0x9e, 0xf6, 0xec, 0xcc, 0x12, 0xf8, 0x80, 0x64, 0xd0, 0x62, 0x99, 0xb7, 0x64, 0x3e, 0xbf, 0x41, 0x66, 0x4b, 0xbf, 0x2c, 0x47, 0x79, 0x5f, 0x9e, 0xe4, }; static const unsigned char xdh_wei448_4033_privkey[] = { 0xd0, 0x50, 0xe8, 0x2a, 0x74, 0x80, 0x61, 0xc3, 0x23, 0x44, 0x0b, 0xa4, 0xae, 0x3d, 0x53, 0x37, 0x45, 0xe9, 0x41, 0xa3, 0xf7, 0x5e, 0xd5, 0x56, 0x91, 0x92, 0x17, 0xe0, 0x2f, 0x06, 0x90, 0x31, 0x55, 0x80, 0x7a, 0x4e, 0x60, 0xfe, 0xff, 0x4b, 0x14, 0xfd, 0xc7, 0x8f, 0xc4, 0xa2, 0x70, 0x24, 0xca, 0xaa, 0x02, 0x42, 0x62, 0xad, 0xac, 0x82, }; static const unsigned char xdh_wei448_4033_sharedsecret[] = { 0xed, 0xd3, 0x1e, 0xfe, 0x06, 0x31, 0x5a, 0x1d, 0xf5, 0x63, 0x9a, 0x85, 0xa5, 0x8d, 0xc2, 0x9b, 0xe3, 0xd1, 0x1a, 0x29, 0xab, 0x62, 0x59, 0xfb, 0x61, 0x3c, 0xa8, 0xce, 0xc1, 0xc1, 0xec, 0x96, 0x2c, 0x51, 0x5d, 0xf7, 0xd7, 0xc4, 0xa7, 0x88, 0x15, 0xad, 0x33, 0xfd, 0x04, 0xcc, 0xf9, 0xfc, 0x70, 0xac, 0xcb, 0x29, 0x64, 0x10, 0x3f, 0x37, }; static const wycheproof_xdh_test xdh_wei448_4033 = { .name = "xdh_wei448_4033", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4033_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4033_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4033_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 8, tcId is 429 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4034 for XDH, tcId is 430 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4034_peerpubkey[] = { 0x5f, 0xa4, 0x8c, 0x35, 0x57, 0x40, 0xdd, 0xee, 0xe1, 0x54, 0x2f, 0x43, 0xde, 0x26, 0xdf, 0xbf, 0x1d, 0xd8, 0x92, 0xbc, 0x2c, 0xbe, 0x21, 0x12, 0x42, 0xfd, 0x2f, 0x4f, 0xa9, 0x3f, 0xc2, 0xf8, 0x60, 0x5d, 0xd8, 0xfc, 0x88, 0xba, 0xa6, 0xa2, 0x1c, 0xae, 0xae, 0xdb, 0x99, 0xe6, 0x0c, 0x78, 0x74, 0x80, 0xcb, 0xea, 0x8e, 0x7e, 0x6f, 0x0e, }; static const unsigned char xdh_wei448_4034_privkey[] = { 0xa4, 0xa9, 0xb6, 0xc6, 0x71, 0xcc, 0xca, 0xbf, 0x86, 0xd4, 0xd7, 0x50, 0xf6, 0x2a, 0xfc, 0xdd, 0x9e, 0x7c, 0xd5, 0x3d, 0x99, 0xd7, 0x8a, 0x5b, 0x44, 0x81, 0xc3, 0xef, 0xbd, 0xdf, 0xca, 0xac, 0x42, 0x33, 0xfc, 0x49, 0xab, 0x2e, 0x50, 0x3d, 0x58, 0x18, 0x90, 0xe6, 0x3b, 0x60, 0x50, 0x10, 0xd8, 0x7f, 0x41, 0xf9, 0x08, 0x25, 0xed, 0x88, }; static const unsigned char xdh_wei448_4034_sharedsecret[] = { 0xea, 0xcc, 0xe9, 0xab, 0xd1, 0xf1, 0x53, 0x94, 0xf5, 0xcd, 0xa8, 0x84, 0xc4, 0x1e, 0xed, 0xf6, 0x38, 0xfc, 0xe5, 0x54, 0xab, 0xf1, 0x5f, 0x19, 0x41, 0x14, 0x6a, 0x6a, 0xbb, 0x38, 0x1e, 0x18, 0x6f, 0x3d, 0xe8, 0x16, 0xd9, 0xf4, 0x4a, 0x66, 0x88, 0x6e, 0x6c, 0xab, 0xf2, 0xd4, 0xe2, 0x2d, 0xbd, 0xb4, 0xfa, 0xa2, 0x18, 0x4a, 0xa4, 0x7b, }; static const wycheproof_xdh_test xdh_wei448_4034 = { .name = "xdh_wei448_4034", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4034_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4034_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4034_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 430 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4035 for XDH, tcId is 431 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4035_peerpubkey[] = { 0xe7, 0x17, 0x0c, 0x9d, 0xae, 0xd8, 0xb8, 0x4c, 0x22, 0x82, 0xf0, 0x06, 0xb3, 0xd2, 0x8c, 0x10, 0xb4, 0x5b, 0x5c, 0x1b, 0xd2, 0x39, 0x78, 0xb2, 0x34, 0x83, 0x5b, 0x21, 0xe5, 0xe0, 0x1b, 0x52, 0xb8, 0x92, 0xbb, 0x19, 0x97, 0x73, 0xea, 0xff, 0x77, 0x03, 0x66, 0xc3, 0xb2, 0x6a, 0xd1, 0x67, 0x4a, 0xcb, 0x01, 0x1f, 0x52, 0x02, 0x81, 0x11, }; static const unsigned char xdh_wei448_4035_privkey[] = { 0xa4, 0x99, 0x7a, 0x79, 0x78, 0x07, 0x34, 0x9e, 0xe8, 0xae, 0x58, 0x8e, 0x72, 0x28, 0x86, 0x46, 0x88, 0x88, 0xfa, 0x87, 0x23, 0x6d, 0xcb, 0x58, 0x75, 0xcf, 0x92, 0x66, 0xf0, 0x1b, 0x7c, 0x2e, 0x18, 0x60, 0x1a, 0xdb, 0xb8, 0xef, 0x6a, 0x3a, 0x92, 0xa5, 0x2c, 0x78, 0x84, 0x0f, 0xfd, 0x8f, 0xc2, 0x26, 0xe7, 0x2c, 0xf6, 0x52, 0x28, 0x82, }; static const unsigned char xdh_wei448_4035_sharedsecret[] = { 0x93, 0xd3, 0x83, 0x01, 0xd1, 0xa4, 0x39, 0x66, 0x71, 0xdd, 0x66, 0x4e, 0xfa, 0x08, 0x41, 0x6d, 0x8e, 0xf5, 0x09, 0x4b, 0x40, 0x8f, 0x7d, 0xd9, 0x33, 0x70, 0x83, 0x8b, 0x4f, 0xa6, 0x14, 0x6b, 0x3d, 0xd6, 0xfd, 0x19, 0xcb, 0xfe, 0xbf, 0xee, 0x1b, 0xb6, 0xe6, 0xaa, 0x96, 0x43, 0xa6, 0xb6, 0x8f, 0xc5, 0x83, 0x69, 0x02, 0x9b, 0xe9, 0x32, }; static const wycheproof_xdh_test xdh_wei448_4035 = { .name = "xdh_wei448_4035", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4035_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4035_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4035_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 431 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4036 for XDH, tcId is 432 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4036_peerpubkey[] = { 0xd7, 0x41, 0xf0, 0x5b, 0x91, 0xf7, 0xbf, 0xe5, 0x15, 0x4f, 0x58, 0xea, 0x7c, 0x7f, 0x9a, 0xa1, 0xfe, 0x10, 0xec, 0xdb, 0x5f, 0xbd, 0xed, 0xf4, 0x3b, 0x0f, 0x9f, 0x26, 0x0b, 0xef, 0x62, 0x0a, 0x02, 0xc3, 0xc6, 0x5e, 0x51, 0x07, 0x95, 0x47, 0x17, 0xbf, 0x99, 0xb4, 0x9f, 0x4a, 0xaf, 0xe2, 0x2e, 0x5f, 0xee, 0x26, 0xa1, 0xa7, 0xef, 0x23, }; static const unsigned char xdh_wei448_4036_privkey[] = { 0xe0, 0x1f, 0xe2, 0x6e, 0x43, 0x75, 0xd4, 0xf6, 0x9b, 0x32, 0x09, 0xdd, 0x68, 0x81, 0xc0, 0xd4, 0xf0, 0x1f, 0xb7, 0x72, 0x81, 0xb9, 0xb6, 0xec, 0xc3, 0x5e, 0x79, 0x80, 0x54, 0x2a, 0x10, 0xda, 0xf8, 0x38, 0xba, 0x6c, 0xd4, 0xdb, 0xa6, 0x22, 0x54, 0xab, 0xba, 0x0e, 0xd4, 0x48, 0x33, 0x79, 0x83, 0x8a, 0x0a, 0xd7, 0x35, 0x37, 0xeb, 0x86, }; static const unsigned char xdh_wei448_4036_sharedsecret[] = { 0xd0, 0x62, 0x3e, 0x44, 0x77, 0x00, 0x86, 0x6d, 0xe7, 0x68, 0x78, 0x26, 0xa8, 0xa7, 0x0b, 0xc1, 0xf1, 0x5f, 0xb8, 0x42, 0x61, 0xa2, 0x7f, 0x64, 0x0a, 0xd0, 0x3e, 0x77, 0x8c, 0x50, 0x7b, 0xc2, 0x54, 0xe0, 0x50, 0x04, 0xa0, 0x0a, 0xb2, 0xef, 0x49, 0xeb, 0x7d, 0x0c, 0x91, 0x02, 0xc6, 0x40, 0x0f, 0x67, 0x7f, 0x45, 0x25, 0x04, 0xec, 0x12, }; static const wycheproof_xdh_test xdh_wei448_4036 = { .name = "xdh_wei448_4036", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4036_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4036_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4036_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 432 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4037 for XDH, tcId is 433 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4037_peerpubkey[] = { 0x33, 0x7a, 0x44, 0xd3, 0xb0, 0x72, 0xad, 0x2a, 0x41, 0xdd, 0x41, 0x92, 0xca, 0x2f, 0xd8, 0x61, 0xaf, 0x53, 0xef, 0xd0, 0x80, 0xd0, 0xee, 0xbf, 0xca, 0xc3, 0xc6, 0x6c, 0xc9, 0x9b, 0x84, 0xbe, 0xa3, 0x36, 0xec, 0xef, 0xdd, 0xf5, 0x5e, 0x6b, 0xec, 0x33, 0x7d, 0xa3, 0x34, 0xb8, 0xeb, 0xe3, 0x8b, 0x4c, 0x39, 0x46, 0x66, 0xd2, 0xaa, 0x56, }; static const unsigned char xdh_wei448_4037_privkey[] = { 0xa0, 0x4c, 0x53, 0xb1, 0x52, 0xe8, 0xfd, 0xe1, 0x9a, 0x07, 0x96, 0xd0, 0x56, 0x75, 0x9e, 0x13, 0x48, 0xac, 0xd4, 0x3e, 0xfe, 0x3f, 0x55, 0xb1, 0xfb, 0x38, 0xd6, 0xc6, 0xd5, 0x07, 0x21, 0x1e, 0xe6, 0x64, 0x27, 0x14, 0xb3, 0x23, 0x4e, 0x6e, 0x2d, 0xbb, 0x36, 0xff, 0xb5, 0xd0, 0x2d, 0xa8, 0xa7, 0xc8, 0x01, 0x26, 0x58, 0xff, 0xae, 0x89, }; static const unsigned char xdh_wei448_4037_sharedsecret[] = { 0x6c, 0xf3, 0xf4, 0xc8, 0x9b, 0xbc, 0xdd, 0x24, 0x99, 0x41, 0x38, 0x2a, 0x6d, 0x06, 0xaf, 0xc4, 0x47, 0x5c, 0xa7, 0x2c, 0x22, 0x8d, 0x9d, 0x3c, 0xc4, 0x72, 0x1c, 0xc9, 0xe6, 0x3d, 0x94, 0x48, 0xaf, 0x90, 0x01, 0x3b, 0x4d, 0x83, 0x1a, 0x19, 0x27, 0xbe, 0x13, 0xa2, 0x50, 0x20, 0xe7, 0x25, 0xe7, 0xbe, 0xb9, 0x45, 0x50, 0xef, 0xbe, 0xa6, }; static const wycheproof_xdh_test xdh_wei448_4037 = { .name = "xdh_wei448_4037", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4037_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4037_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4037_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 433 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4038 for XDH, tcId is 434 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4038_peerpubkey[] = { 0x13, 0xde, 0x45, 0x94, 0xaf, 0xab, 0xeb, 0xbf, 0xff, 0x7c, 0x6a, 0xd2, 0x4d, 0x9e, 0x36, 0xdb, 0x41, 0x65, 0x0a, 0x66, 0xce, 0xed, 0x76, 0x63, 0xc4, 0x4a, 0x9e, 0xe3, 0x4f, 0x36, 0x04, 0xe8, 0xd6, 0xc4, 0x5b, 0xcc, 0xaa, 0xee, 0xcb, 0xa8, 0x88, 0x42, 0x44, 0xd2, 0xe7, 0x17, 0x60, 0xaf, 0xfc, 0x57, 0xe3, 0xe5, 0x1a, 0xe7, 0x75, 0x71, }; static const unsigned char xdh_wei448_4038_privkey[] = { 0xa4, 0x62, 0xce, 0xc9, 0x36, 0x92, 0x33, 0xf2, 0xaa, 0x18, 0xdb, 0x8e, 0x05, 0x9b, 0x5b, 0xe1, 0x97, 0x19, 0xbd, 0x3f, 0x8e, 0x75, 0x28, 0x81, 0x99, 0x17, 0xa9, 0x6a, 0xbe, 0xc1, 0x30, 0xa4, 0xca, 0xbb, 0xd5, 0x9a, 0xb3, 0x85, 0xbb, 0xd8, 0x8a, 0xb7, 0x25, 0xed, 0x1c, 0x2d, 0x01, 0x1e, 0x9d, 0x33, 0x1d, 0x75, 0x04, 0xd6, 0x0e, 0x8b, }; static const unsigned char xdh_wei448_4038_sharedsecret[] = { 0xec, 0xcf, 0x64, 0x2c, 0x29, 0xf9, 0x48, 0xbb, 0x35, 0x00, 0x9e, 0x6a, 0xc2, 0x60, 0x37, 0x38, 0x81, 0x82, 0xd1, 0xac, 0x54, 0xa1, 0xdc, 0xf9, 0x70, 0xea, 0xd2, 0xbe, 0xae, 0xcc, 0x71, 0x4a, 0xab, 0xf6, 0x4b, 0x6f, 0x0d, 0x4f, 0x34, 0xc7, 0xbc, 0xe6, 0xb1, 0xe0, 0x73, 0x19, 0x98, 0x4f, 0x9f, 0x15, 0x32, 0x6d, 0xf5, 0x76, 0x80, 0x8b, }; static const wycheproof_xdh_test xdh_wei448_4038 = { .name = "xdh_wei448_4038", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4038_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4038_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4038_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 434 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4039 for XDH, tcId is 435 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4039_peerpubkey[] = { 0x78, 0x49, 0x8b, 0xd7, 0x7e, 0x19, 0xd5, 0xc0, 0x3f, 0xe0, 0x9f, 0xc9, 0x92, 0x29, 0xb1, 0xa8, 0x17, 0xf7, 0x32, 0x60, 0x21, 0xe2, 0xe0, 0x7b, 0xc0, 0x91, 0x7d, 0x54, 0x79, 0x84, 0x81, 0x13, 0xe2, 0x30, 0x7e, 0x50, 0xbc, 0xcf, 0x90, 0x4a, 0x50, 0x23, 0xab, 0xb9, 0xbe, 0x03, 0x86, 0xa0, 0x18, 0xeb, 0x50, 0xbc, 0xd9, 0x9b, 0x7d, 0x93, }; static const unsigned char xdh_wei448_4039_privkey[] = { 0x74, 0xde, 0xdb, 0x25, 0xf4, 0x9d, 0xe2, 0x23, 0x65, 0x68, 0x49, 0x20, 0x08, 0xbd, 0x6c, 0xc8, 0x75, 0x5a, 0xeb, 0x73, 0x03, 0xe2, 0x40, 0xf0, 0xac, 0xc8, 0xa5, 0x99, 0x99, 0xdc, 0x94, 0x71, 0x7a, 0xe3, 0xfb, 0x4d, 0x04, 0x52, 0xf0, 0x82, 0x78, 0x4e, 0x89, 0x5b, 0xd3, 0x1b, 0xdf, 0xbd, 0xb6, 0xe7, 0x19, 0x55, 0xaf, 0x31, 0xe4, 0x83, }; static const unsigned char xdh_wei448_4039_sharedsecret[] = { 0x64, 0x16, 0xc4, 0x78, 0xb8, 0x3a, 0xba, 0x72, 0xde, 0xdc, 0xf7, 0xcd, 0xf7, 0x58, 0xf2, 0xa2, 0x19, 0xb0, 0x85, 0x60, 0x10, 0x85, 0x9a, 0xe9, 0x07, 0xfd, 0xbb, 0x06, 0xdf, 0xb2, 0xfe, 0x93, 0x63, 0x7c, 0xe1, 0x4b, 0xa1, 0x2c, 0x40, 0x75, 0x59, 0x1e, 0x3a, 0xa4, 0x39, 0xe9, 0x83, 0x5e, 0xe6, 0x53, 0x02, 0xca, 0x72, 0x26, 0xbc, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_4039 = { .name = "xdh_wei448_4039", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4039_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4039_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4039_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 435 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4040 for XDH, tcId is 436 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4040_peerpubkey[] = { 0xa1, 0x12, 0x9e, 0x2b, 0xa4, 0xe8, 0xe5, 0x77, 0xf2, 0x3f, 0x09, 0x9b, 0x99, 0x02, 0xc8, 0x3e, 0x3a, 0xb9, 0x07, 0xf5, 0x98, 0x51, 0x11, 0xf9, 0x2f, 0x1d, 0x66, 0x8f, 0x1c, 0x0f, 0x53, 0x4e, 0x00, 0x22, 0x8b, 0xbc, 0xd8, 0xf3, 0x12, 0xbf, 0x46, 0xd7, 0xe3, 0x98, 0x9c, 0x9d, 0xe6, 0x07, 0xe4, 0x98, 0x07, 0x94, 0x34, 0xa5, 0x90, 0xc8, }; static const unsigned char xdh_wei448_4040_privkey[] = { 0x1c, 0xd9, 0xf8, 0x5a, 0x2e, 0x93, 0x13, 0xdf, 0xaf, 0xa6, 0xe8, 0xcc, 0xb4, 0x5a, 0xe2, 0x6a, 0x51, 0x28, 0x8c, 0x39, 0xbd, 0xc4, 0xa0, 0xde, 0x50, 0xc7, 0x57, 0x4c, 0x7d, 0xc5, 0x0c, 0xcb, 0xb0, 0x68, 0x3d, 0xc4, 0x0c, 0x03, 0x6e, 0xbb, 0x83, 0x3b, 0x3b, 0x6d, 0x82, 0xdd, 0xfb, 0x18, 0x00, 0x64, 0x78, 0xfe, 0xcf, 0x2d, 0x98, 0x82, }; static const unsigned char xdh_wei448_4040_sharedsecret[] = { 0x99, 0x64, 0xf1, 0xfa, 0x7b, 0x34, 0xeb, 0x88, 0x89, 0xe8, 0xda, 0x93, 0xa1, 0x6a, 0x3d, 0x35, 0x45, 0xfa, 0xca, 0xa0, 0x38, 0xba, 0x15, 0x20, 0x93, 0xe2, 0x22, 0x01, 0x1c, 0x1c, 0xb0, 0xa9, 0x48, 0x7c, 0xca, 0x08, 0xe2, 0xa8, 0xe9, 0x3f, 0x44, 0x0e, 0x4c, 0x38, 0x3e, 0xb8, 0xe2, 0x6c, 0xf2, 0x5a, 0x22, 0xad, 0x35, 0x8b, 0xc6, 0xae, }; static const wycheproof_xdh_test xdh_wei448_4040 = { .name = "xdh_wei448_4040", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4040_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4040_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4040_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 8, tcId is 436 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4041 for XDH, tcId is 437 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4041_peerpubkey[] = { 0xc5, 0x0e, 0x7e, 0x03, 0xc7, 0xb6, 0xbd, 0xaf, 0x94, 0x9c, 0xfa, 0x1d, 0x16, 0x76, 0xa6, 0x32, 0x15, 0x08, 0xa4, 0x46, 0xf3, 0xee, 0x24, 0x6d, 0x78, 0x1b, 0xac, 0x57, 0x25, 0xd9, 0x31, 0xe8, 0xf0, 0xb0, 0x0a, 0x78, 0x0a, 0xba, 0xe0, 0x0b, 0x31, 0x3e, 0x66, 0xe6, 0x17, 0x0f, 0x21, 0xf3, 0xbd, 0x01, 0xb0, 0x86, 0x51, 0xd5, 0x8d, 0xe8, }; static const unsigned char xdh_wei448_4041_privkey[] = { 0x3c, 0xbb, 0x83, 0x47, 0x73, 0x92, 0x93, 0xe9, 0x9b, 0x8d, 0xa8, 0x9a, 0xc2, 0xe5, 0xa6, 0x77, 0xc7, 0x2a, 0x02, 0x21, 0x78, 0xef, 0xc9, 0x81, 0x49, 0x41, 0xb8, 0x99, 0xaf, 0x28, 0xe7, 0xa1, 0xdf, 0x9a, 0xed, 0xc7, 0x0b, 0x3e, 0xc8, 0xf5, 0xac, 0x2a, 0xd4, 0xaf, 0x9c, 0x53, 0xd5, 0x2a, 0xa5, 0xaa, 0xd8, 0xf1, 0x23, 0x46, 0xd1, 0x8e, }; static const unsigned char xdh_wei448_4041_sharedsecret[] = { 0x6d, 0x99, 0x2d, 0x27, 0x53, 0xe4, 0xac, 0xcd, 0x47, 0x8b, 0x92, 0x5e, 0xc3, 0x9d, 0x73, 0x49, 0x30, 0x5a, 0x49, 0x88, 0x9b, 0xdc, 0x7f, 0x25, 0xec, 0xf3, 0xb0, 0xa4, 0xb4, 0xc2, 0xa0, 0x3a, 0xc6, 0x2f, 0x60, 0x53, 0x3b, 0xa6, 0xe3, 0x97, 0x21, 0x71, 0x99, 0xba, 0xbf, 0x69, 0x5e, 0xea, 0x42, 0x46, 0x1f, 0x24, 0x6e, 0x9c, 0x75, 0xda, }; static const wycheproof_xdh_test xdh_wei448_4041 = { .name = "xdh_wei448_4041", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4041_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4041_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4041_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 8, tcId is 437 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4042 for XDH, tcId is 438 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4042_peerpubkey[] = { 0xe5, 0x11, 0x3d, 0x1e, 0x12, 0x9f, 0x26, 0x1b, 0xc9, 0x1e, 0x7a, 0x40, 0x9b, 0x73, 0xfe, 0x0c, 0x79, 0xf5, 0x61, 0xfd, 0xab, 0xa0, 0x9b, 0xe3, 0xb4, 0x5a, 0xa3, 0x99, 0x9e, 0xa6, 0x17, 0x4c, 0x78, 0x37, 0x60, 0x6e, 0xd9, 0xc2, 0xfb, 0x4c, 0x36, 0xa6, 0x13, 0xf7, 0x97, 0xdc, 0x76, 0x75, 0x22, 0x87, 0xbb, 0x58, 0xa9, 0xf1, 0xcb, 0x15, }; static const unsigned char xdh_wei448_4042_privkey[] = { 0x0c, 0x94, 0x26, 0xcb, 0x52, 0x09, 0xdf, 0xd0, 0x7f, 0xd3, 0x46, 0x56, 0xf1, 0x45, 0x6e, 0x6b, 0xaf, 0xa1, 0x1c, 0xad, 0x58, 0xa7, 0x62, 0xea, 0x22, 0x1a, 0x16, 0xc1, 0xba, 0x8b, 0x9d, 0x24, 0x77, 0x74, 0x27, 0x44, 0xa0, 0x63, 0x62, 0xb4, 0x06, 0x97, 0x85, 0x43, 0x05, 0xd6, 0x72, 0xd7, 0xdb, 0xbb, 0xd4, 0x84, 0x2b, 0xec, 0xa5, 0x82, }; static const unsigned char xdh_wei448_4042_sharedsecret[] = { 0xa7, 0x5d, 0x72, 0x6b, 0x54, 0xce, 0x76, 0xe9, 0xf1, 0x5d, 0x4a, 0x9f, 0x52, 0x11, 0xb6, 0x24, 0x5d, 0x68, 0xc1, 0x4c, 0xf4, 0x84, 0x6f, 0xe4, 0x70, 0xcb, 0x44, 0xb9, 0x5a, 0xf6, 0x80, 0x96, 0x57, 0x3f, 0x0d, 0x96, 0xd4, 0xfc, 0xf3, 0x0b, 0x7e, 0x19, 0x84, 0x18, 0x8f, 0xff, 0x0f, 0x3a, 0xb5, 0xc1, 0x10, 0x50, 0x0e, 0xee, 0xc4, 0xe0, }; static const wycheproof_xdh_test xdh_wei448_4042 = { .name = "xdh_wei448_4042", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4042_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4042_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4042_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 438 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4043 for XDH, tcId is 439 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4043_peerpubkey[] = { 0x56, 0x15, 0x12, 0x2b, 0x2f, 0xbb, 0x50, 0x62, 0x04, 0x09, 0x18, 0x65, 0x84, 0x1b, 0x5d, 0x28, 0xd9, 0x07, 0x55, 0x77, 0xb4, 0xaf, 0xa3, 0x38, 0xb4, 0x3f, 0xc6, 0x57, 0x9e, 0xca, 0x54, 0x76, 0xe3, 0x56, 0x78, 0x99, 0xba, 0x6b, 0x33, 0x29, 0xb4, 0x57, 0xfd, 0x46, 0xa4, 0xf3, 0xca, 0x23, 0x9e, 0x18, 0x5a, 0x73, 0x56, 0xf0, 0x68, 0x37, }; static const unsigned char xdh_wei448_4043_privkey[] = { 0x64, 0x90, 0x6d, 0x71, 0x3a, 0x86, 0x15, 0x12, 0xe1, 0x16, 0x31, 0xe1, 0x73, 0xa0, 0xae, 0xd2, 0xfd, 0x8b, 0x54, 0xb1, 0x39, 0x4e, 0x89, 0xb1, 0xd8, 0xcd, 0x08, 0x4e, 0xe6, 0xba, 0xcf, 0x81, 0xea, 0xfa, 0xed, 0x45, 0x12, 0x5d, 0xa4, 0xd0, 0xc5, 0xe2, 0xfb, 0xd8, 0xe3, 0x51, 0x8e, 0x66, 0x31, 0xae, 0xc9, 0x8d, 0xba, 0x41, 0x87, 0x83, }; static const unsigned char xdh_wei448_4043_sharedsecret[] = { 0xcc, 0x92, 0x97, 0xac, 0x7b, 0x8f, 0x07, 0xcf, 0x15, 0x4e, 0xea, 0xd3, 0xff, 0x95, 0xf0, 0xbe, 0x8e, 0xe2, 0xee, 0xea, 0xae, 0xc1, 0xd2, 0xaf, 0x9b, 0xb7, 0x70, 0xc5, 0x2a, 0x33, 0xad, 0x86, 0x5b, 0x9a, 0x18, 0x92, 0x6f, 0xf2, 0xce, 0x68, 0x9f, 0xf5, 0x8e, 0x2f, 0xb4, 0x0e, 0x0c, 0xfd, 0x1c, 0xd8, 0x68, 0xcd, 0xec, 0x77, 0x6e, 0x89, }; static const wycheproof_xdh_test xdh_wei448_4043 = { .name = "xdh_wei448_4043", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4043_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4043_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4043_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 439 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4044 for XDH, tcId is 440 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4044_peerpubkey[] = { 0x73, 0x02, 0x41, 0x13, 0x7d, 0x5a, 0x3e, 0x0a, 0x14, 0x7a, 0xb9, 0x92, 0xae, 0x96, 0xb0, 0x75, 0x6c, 0x81, 0x0d, 0x30, 0xa1, 0x03, 0xd2, 0x09, 0xda, 0x7a, 0xfe, 0x10, 0xd8, 0x0b, 0xe2, 0x72, 0x93, 0x7b, 0x0b, 0xe3, 0x70, 0xf0, 0xff, 0xd3, 0x8c, 0xca, 0x62, 0x56, 0x90, 0xa1, 0xa8, 0xe7, 0x9b, 0x95, 0xd4, 0x41, 0x7e, 0x8d, 0xa5, 0xc7, }; static const unsigned char xdh_wei448_4044_privkey[] = { 0x84, 0x32, 0xc3, 0xe5, 0x95, 0x02, 0xa3, 0x95, 0xab, 0x45, 0x04, 0x9d, 0x1c, 0x97, 0x89, 0x9b, 0x5d, 0xb6, 0xb1, 0xa3, 0x47, 0x4a, 0x08, 0xc6, 0x78, 0x5a, 0xdb, 0xfe, 0xdd, 0x8c, 0xb1, 0xed, 0xc9, 0x6f, 0x3b, 0xfb, 0xf3, 0xb2, 0xab, 0x9f, 0x38, 0x7f, 0x65, 0x29, 0x6e, 0xf4, 0xab, 0xeb, 0x4a, 0x56, 0x1a, 0x9e, 0xc6, 0x8a, 0xdb, 0x8b, }; static const unsigned char xdh_wei448_4044_sharedsecret[] = { 0x8d, 0x9d, 0x14, 0x03, 0x63, 0xa7, 0x9d, 0xc8, 0x12, 0x6a, 0xd4, 0xd3, 0xe7, 0x52, 0x64, 0xa7, 0x69, 0xfd, 0x0d, 0x08, 0x4b, 0x91, 0x0b, 0x9e, 0x1e, 0x8b, 0x5a, 0xbb, 0x84, 0x9b, 0x69, 0x2b, 0x73, 0xc2, 0xc2, 0xd9, 0x62, 0xc7, 0x55, 0xd0, 0x80, 0x8b, 0x66, 0x8d, 0x24, 0x9a, 0x52, 0xc7, 0xaf, 0x49, 0x5d, 0xd3, 0xe2, 0x9b, 0x2a, 0x6e, }; static const wycheproof_xdh_test xdh_wei448_4044 = { .name = "xdh_wei448_4044", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4044_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4044_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4044_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for CB in multiplication by 8, tcId is 440 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4045 for XDH, tcId is 441 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4045_peerpubkey[] = { 0x56, 0xfb, 0xc7, 0xa4, 0xb2, 0x6d, 0x32, 0xb4, 0x75, 0x65, 0x64, 0xb7, 0xf0, 0x74, 0x25, 0x9c, 0x13, 0x91, 0x0e, 0x57, 0x9f, 0xd6, 0x75, 0x4e, 0xb1, 0x96, 0x26, 0x47, 0xf3, 0x32, 0xbb, 0x1d, 0x92, 0x93, 0x85, 0x4f, 0x1c, 0x30, 0x5b, 0x1c, 0x3a, 0x66, 0xbb, 0x6c, 0x9a, 0x99, 0xc8, 0x98, 0x3e, 0x0f, 0xba, 0xaa, 0x1d, 0x9e, 0x2b, 0xf4, }; static const unsigned char xdh_wei448_4045_privkey[] = { 0xd4, 0x07, 0x96, 0x8b, 0x10, 0xd6, 0x95, 0x05, 0x65, 0xe5, 0x6c, 0x71, 0x6d, 0xb5, 0xfb, 0x60, 0xaa, 0xd7, 0x94, 0x27, 0x31, 0x1b, 0xba, 0x84, 0xba, 0x4a, 0xf2, 0x12, 0x8f, 0xff, 0x2f, 0xc8, 0x37, 0x0f, 0x11, 0x44, 0x08, 0x4b, 0xbc, 0x7b, 0x42, 0x0f, 0x84, 0xaf, 0xe8, 0xc3, 0x91, 0x0d, 0xe8, 0x98, 0xb9, 0x76, 0x31, 0x9f, 0x76, 0x89, }; static const unsigned char xdh_wei448_4045_sharedsecret[] = { 0x29, 0x07, 0x44, 0x85, 0xc6, 0x60, 0x20, 0xf8, 0xa2, 0x6e, 0x16, 0xaf, 0xe6, 0x8a, 0xe1, 0x30, 0x65, 0xc1, 0x3e, 0x9d, 0x16, 0x3b, 0x19, 0x79, 0x8e, 0xa9, 0x92, 0xf3, 0x8f, 0x7b, 0xae, 0x87, 0xee, 0xdc, 0xea, 0x21, 0x4b, 0x78, 0x8b, 0x95, 0x12, 0x68, 0x19, 0xa9, 0xf1, 0xe7, 0x11, 0xca, 0x9d, 0x72, 0x58, 0xb5, 0xd5, 0xe6, 0x3e, 0x30, }; static const wycheproof_xdh_test xdh_wei448_4045 = { .name = "xdh_wei448_4045", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4045_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4045_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4045_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for CB in multiplication by 8, tcId is 441 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4046 for XDH, tcId is 442 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4046_peerpubkey[] = { 0x00, 0xdf, 0x4e, 0x75, 0x40, 0xc0, 0xb9, 0xfe, 0xad, 0xfc, 0x21, 0xdf, 0xc5, 0xd9, 0xeb, 0x3a, 0x04, 0xb1, 0xe8, 0x78, 0x39, 0x63, 0x8d, 0x35, 0x0d, 0x51, 0xeb, 0x0d, 0xc4, 0x56, 0x04, 0x90, 0x1d, 0xab, 0x57, 0x82, 0x5e, 0x93, 0x7f, 0x15, 0xd7, 0xfb, 0x80, 0x89, 0xa1, 0x27, 0x87, 0x18, 0xac, 0x00, 0xd2, 0x75, 0x8f, 0xd1, 0xf4, 0x21, }; static const unsigned char xdh_wei448_4046_privkey[] = { 0xd8, 0xb1, 0xca, 0x51, 0xa6, 0xe3, 0x61, 0xd2, 0xa7, 0x1f, 0xa8, 0x4d, 0x49, 0x57, 0xf2, 0xcc, 0xfc, 0x8b, 0xb3, 0x72, 0x32, 0x0c, 0xcf, 0x74, 0xe2, 0x79, 0xf6, 0xef, 0xea, 0x2c, 0xa3, 0x61, 0x37, 0xd4, 0xdf, 0x19, 0x2d, 0x93, 0x27, 0x05, 0xb7, 0xb4, 0xed, 0x2d, 0xee, 0x3c, 0x56, 0x86, 0x03, 0xec, 0x62, 0xc7, 0x7e, 0x4a, 0xf4, 0x85, }; static const unsigned char xdh_wei448_4046_sharedsecret[] = { 0xd9, 0x83, 0x35, 0x3a, 0x16, 0x8b, 0xc2, 0x29, 0xf3, 0xb8, 0x05, 0xc0, 0xe0, 0x36, 0x98, 0x33, 0x6f, 0xea, 0x84, 0xb9, 0x22, 0x12, 0x12, 0x9d, 0xf2, 0x34, 0x40, 0x59, 0xd1, 0x38, 0xff, 0x00, 0x1a, 0x5b, 0xb5, 0x36, 0x85, 0x37, 0x3f, 0x8f, 0x93, 0x79, 0x13, 0x72, 0x16, 0x53, 0x4b, 0x05, 0x57, 0xeb, 0x34, 0x83, 0x36, 0x7d, 0x42, 0x68, }; static const wycheproof_xdh_test xdh_wei448_4046 = { .name = "xdh_wei448_4046", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4046_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4046_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4046_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 442 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4047 for XDH, tcId is 443 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4047_peerpubkey[] = { 0x5c, 0xba, 0x61, 0x48, 0x14, 0x5e, 0x5c, 0x21, 0x51, 0x77, 0x2d, 0xb6, 0x9d, 0xce, 0x9f, 0x12, 0x3e, 0xc8, 0xcb, 0x0d, 0x4e, 0x42, 0x60, 0x36, 0x15, 0xd1, 0x60, 0xb3, 0xd4, 0xa4, 0xee, 0xab, 0xe5, 0x4b, 0xf0, 0x0f, 0x55, 0x88, 0x3b, 0xc7, 0xc0, 0x09, 0xb9, 0x4d, 0x5f, 0x35, 0x9c, 0xd1, 0xac, 0xd5, 0xea, 0x14, 0x55, 0x74, 0x2e, 0x36, }; static const unsigned char xdh_wei448_4047_privkey[] = { 0xf8, 0x54, 0xe8, 0x01, 0x4b, 0xfe, 0x18, 0x70, 0xf5, 0x31, 0xf8, 0x32, 0x00, 0x36, 0x40, 0xe4, 0x43, 0x9a, 0xac, 0x4b, 0xc2, 0x3e, 0x03, 0x92, 0x0f, 0xcd, 0x65, 0x1f, 0xae, 0x12, 0x8d, 0x38, 0xe6, 0xf3, 0x6c, 0x53, 0xb9, 0x1b, 0xa8, 0x29, 0x63, 0x62, 0x3f, 0xed, 0x40, 0x16, 0x15, 0x6b, 0xa5, 0x5f, 0x61, 0xfa, 0xb6, 0x6e, 0xe6, 0x82, }; static const unsigned char xdh_wei448_4047_sharedsecret[] = { 0x3e, 0x46, 0xc5, 0xfa, 0x76, 0xd5, 0x9e, 0x0c, 0xc7, 0x98, 0x25, 0xb4, 0xd3, 0xc4, 0x9d, 0xa0, 0x18, 0x2a, 0xc8, 0xd4, 0x92, 0x50, 0xc1, 0xd9, 0x35, 0x28, 0x92, 0x0e, 0x69, 0xc5, 0x7a, 0xfd, 0x24, 0x5b, 0xa5, 0x2c, 0x11, 0x3a, 0x52, 0xdd, 0x17, 0xd8, 0x13, 0xe4, 0x02, 0x9a, 0x8b, 0x15, 0xba, 0xfc, 0xc7, 0x0b, 0x7f, 0x1c, 0x36, 0xec, }; static const wycheproof_xdh_test xdh_wei448_4047 = { .name = "xdh_wei448_4047", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4047_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4047_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4047_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for D in multiplication by 8, tcId is 443 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4048 for XDH, tcId is 444 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4048_peerpubkey[] = { 0xf5, 0xff, 0x91, 0xf7, 0xed, 0x21, 0xf4, 0x12, 0xb7, 0x58, 0x99, 0x2d, 0x15, 0x08, 0xfd, 0xdf, 0x2d, 0xdc, 0x47, 0x00, 0xac, 0x4c, 0x9f, 0xd3, 0x51, 0xe2, 0x6d, 0x52, 0x04, 0xe0, 0x7a, 0x6a, 0x5a, 0xf6, 0x72, 0x5d, 0x66, 0x1b, 0x5c, 0x54, 0xfb, 0x26, 0x4b, 0xf7, 0xc2, 0xfa, 0x8f, 0x8e, 0x98, 0xd6, 0x57, 0x9f, 0x22, 0x57, 0x95, 0xad, }; static const unsigned char xdh_wei448_4048_privkey[] = { 0x20, 0x9c, 0xee, 0x11, 0x1f, 0xcf, 0xde, 0x94, 0xbd, 0x33, 0x02, 0x0a, 0xe5, 0x51, 0x5d, 0x62, 0xe0, 0x9c, 0x69, 0x17, 0xe3, 0xe3, 0x0a, 0xfd, 0xc9, 0xa1, 0xba, 0x34, 0x9e, 0x6c, 0xd9, 0x60, 0x9d, 0xdb, 0xc8, 0xa1, 0x84, 0xef, 0xb9, 0x50, 0xce, 0x66, 0x14, 0xb3, 0x12, 0x05, 0x9e, 0xb1, 0x50, 0x87, 0x33, 0xca, 0x84, 0x63, 0x29, 0x84, }; static const unsigned char xdh_wei448_4048_sharedsecret[] = { 0x7f, 0x24, 0xac, 0xbd, 0x29, 0xc0, 0xa2, 0x3a, 0x43, 0x16, 0xa2, 0x91, 0x98, 0xba, 0xfa, 0x8e, 0x91, 0xfd, 0xcd, 0xbd, 0x06, 0x63, 0x9e, 0x55, 0xc4, 0xf3, 0xe7, 0x60, 0x2a, 0xb2, 0x72, 0x2d, 0x75, 0xeb, 0x00, 0x80, 0xf8, 0xc1, 0x1e, 0xfb, 0x11, 0x0f, 0xb9, 0x4f, 0x67, 0x26, 0x5e, 0xb4, 0xe5, 0x6a, 0xe0, 0xd9, 0x91, 0xb1, 0x71, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_4048 = { .name = "xdh_wei448_4048", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4048_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4048_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4048_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 444 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4049 for XDH, tcId is 445 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4049_peerpubkey[] = { 0xda, 0xc2, 0x84, 0x09, 0x77, 0xf3, 0x98, 0x90, 0xf4, 0xe1, 0x7e, 0xbc, 0x7c, 0x48, 0x36, 0x14, 0x16, 0x7a, 0xc2, 0xc3, 0x7a, 0x55, 0xb0, 0x5b, 0x63, 0x61, 0x81, 0x60, 0x8b, 0xc5, 0x39, 0x36, 0xdf, 0xed, 0x3b, 0x4f, 0x4f, 0x0b, 0x8f, 0xfb, 0x05, 0x0f, 0x2f, 0x18, 0x31, 0x48, 0x51, 0x65, 0x70, 0x9b, 0x80, 0xd8, 0x8a, 0xac, 0x10, 0xc2, }; static const unsigned char xdh_wei448_4049_privkey[] = { 0xcc, 0x29, 0x03, 0x0d, 0x9e, 0xa5, 0x28, 0x34, 0x11, 0xc7, 0xba, 0xd6, 0xba, 0xed, 0xb4, 0x2e, 0xd3, 0x7e, 0x26, 0xfd, 0x17, 0xd9, 0x62, 0x0a, 0x9b, 0xb4, 0xd4, 0x1b, 0x17, 0x47, 0xc3, 0xfa, 0x56, 0xc0, 0xf5, 0x0d, 0xa7, 0xb5, 0x22, 0x7b, 0xa3, 0xbb, 0x30, 0x33, 0x7c, 0x76, 0x95, 0x88, 0xb4, 0xcb, 0xda, 0x9e, 0x2b, 0xa6, 0xc1, 0x83, }; static const unsigned char xdh_wei448_4049_sharedsecret[] = { 0x82, 0x35, 0x58, 0xfa, 0x43, 0xf9, 0x9f, 0xe6, 0xe0, 0xa5, 0x57, 0x1e, 0x5a, 0xa0, 0x1f, 0x8c, 0xa1, 0xaf, 0xa7, 0x3d, 0x6b, 0x6d, 0xf9, 0xd2, 0xff, 0x81, 0x34, 0x6b, 0x0b, 0xa5, 0x1e, 0xdc, 0x3e, 0x3a, 0x29, 0x27, 0x43, 0x38, 0x90, 0x8b, 0x68, 0xa9, 0xa0, 0x3a, 0xda, 0x44, 0x2b, 0x6a, 0x1e, 0x91, 0x71, 0xb2, 0x6a, 0xbf, 0xf8, 0xc6, }; static const wycheproof_xdh_test xdh_wei448_4049 = { .name = "xdh_wei448_4049", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4049_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4049_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4049_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for D in multiplication by 8, tcId is 445 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4050 for XDH, tcId is 446 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4050_peerpubkey[] = { 0x27, 0x9a, 0x2d, 0x0a, 0x94, 0x36, 0x01, 0xa5, 0xd4, 0x0f, 0x6c, 0xb5, 0x44, 0xc3, 0x01, 0x34, 0x5b, 0x43, 0xb5, 0x8b, 0xaf, 0x9e, 0x49, 0xf4, 0xde, 0x3c, 0x1d, 0xe2, 0xbb, 0xc1, 0xec, 0x14, 0x26, 0xda, 0xb4, 0x4a, 0xfe, 0xf9, 0x97, 0x99, 0xe4, 0x28, 0x8c, 0x61, 0x51, 0x1f, 0xc4, 0xea, 0x0c, 0x2f, 0xab, 0x22, 0x8e, 0x8c, 0xce, 0x3e, }; static const unsigned char xdh_wei448_4050_privkey[] = { 0x08, 0x25, 0x01, 0x3a, 0x52, 0x0e, 0x13, 0x50, 0x9d, 0x29, 0x99, 0x7a, 0x5a, 0xa8, 0xfd, 0xe0, 0x0b, 0x77, 0x01, 0x1b, 0x3a, 0x63, 0xa5, 0x0b, 0xbe, 0xfc, 0x5b, 0x54, 0xb1, 0xe3, 0x85, 0x71, 0x98, 0xe8, 0xc9, 0xa8, 0x0f, 0x7b, 0x66, 0x14, 0xcc, 0x11, 0xe0, 0xb8, 0x5b, 0xad, 0x33, 0x7c, 0x1f, 0xe7, 0x4b, 0xf7, 0x31, 0xaf, 0xde, 0x83, }; static const unsigned char xdh_wei448_4050_sharedsecret[] = { 0xec, 0xc8, 0x4b, 0xb8, 0xf2, 0xc0, 0x86, 0x00, 0x02, 0x67, 0xd8, 0x9c, 0x1a, 0x7b, 0x21, 0x1d, 0x54, 0x15, 0x41, 0x47, 0x27, 0x06, 0x95, 0x10, 0x37, 0x50, 0xc9, 0xc1, 0x44, 0x86, 0x1a, 0x1c, 0x24, 0x28, 0xfb, 0x5f, 0x69, 0xcc, 0x2d, 0xd4, 0x9b, 0xe5, 0x7c, 0x41, 0x57, 0xa4, 0x84, 0xa7, 0x7d, 0xac, 0x9b, 0x03, 0x3d, 0xc6, 0x72, 0x81, }; static const wycheproof_xdh_test xdh_wei448_4050 = { .name = "xdh_wei448_4050", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4050_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4050_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4050_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 446 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4051 for XDH, tcId is 447 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4051_peerpubkey[] = { 0xc2, 0xa6, 0xe4, 0xd8, 0xf4, 0x8a, 0xbc, 0xdd, 0xf9, 0x40, 0xcc, 0x97, 0xaf, 0x3c, 0xf9, 0xd6, 0x34, 0xd2, 0x52, 0x81, 0x41, 0xac, 0xe9, 0xbd, 0x4f, 0xcd, 0x3b, 0xe1, 0x8d, 0xa8, 0xa3, 0x95, 0xe4, 0xaf, 0xcf, 0xbe, 0xb5, 0xc9, 0x81, 0x2b, 0x8a, 0xcf, 0x64, 0x72, 0xc3, 0x69, 0xe5, 0x68, 0x48, 0xb8, 0x78, 0xcf, 0xdf, 0x95, 0xb6, 0x48, }; static const unsigned char xdh_wei448_4051_privkey[] = { 0x64, 0x28, 0x5a, 0xb9, 0xf4, 0x6a, 0x40, 0xbf, 0xd4, 0x6b, 0x78, 0xd0, 0xad, 0x7f, 0x0e, 0xf3, 0xff, 0xfe, 0x04, 0xf3, 0xb4, 0x26, 0xbf, 0xd4, 0xe0, 0x24, 0x91, 0xe7, 0xa1, 0x3a, 0x25, 0x02, 0x72, 0x03, 0x99, 0x43, 0xa2, 0xb1, 0x04, 0xfd, 0xb8, 0xbf, 0x7b, 0x66, 0xd1, 0xe8, 0x3f, 0x11, 0x2b, 0x72, 0xf1, 0x85, 0x60, 0xd0, 0x67, 0x8d, }; static const unsigned char xdh_wei448_4051_sharedsecret[] = { 0xb3, 0xba, 0x7a, 0x3a, 0x1a, 0x79, 0x10, 0xe0, 0x94, 0x78, 0x57, 0x10, 0x4f, 0xd9, 0x0a, 0x60, 0x9f, 0x5d, 0x04, 0x80, 0x0f, 0x8c, 0x97, 0x12, 0xe6, 0x7d, 0x62, 0x15, 0xd6, 0x5d, 0x08, 0x15, 0x85, 0x8f, 0x91, 0x7c, 0xb4, 0xc9, 0x10, 0xc7, 0x9b, 0x2c, 0xb5, 0xaa, 0x6d, 0x04, 0xcb, 0x6b, 0xe6, 0xb9, 0xf4, 0x2e, 0x9b, 0x18, 0xe4, 0x39, }; static const wycheproof_xdh_test xdh_wei448_4051 = { .name = "xdh_wei448_4051", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4051_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4051_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4051_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 447 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4052 for XDH, tcId is 448 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4052_peerpubkey[] = { 0xe3, 0x49, 0x56, 0x0c, 0x1a, 0x2c, 0x1f, 0xd2, 0x9e, 0x62, 0x30, 0x91, 0xec, 0x08, 0xc1, 0x49, 0xcf, 0xcc, 0x3c, 0xbd, 0xf8, 0xec, 0x38, 0xab, 0xf3, 0xe2, 0xb4, 0xe3, 0x3a, 0xbe, 0xcf, 0x85, 0x46, 0xfe, 0x04, 0xe3, 0xd2, 0x7a, 0xb9, 0xa3, 0xb4, 0xbf, 0x90, 0xdb, 0x3d, 0xe9, 0x0e, 0xbc, 0xc5, 0x4b, 0x75, 0xd3, 0x1a, 0xc0, 0xe8, 0x51, }; static const unsigned char xdh_wei448_4052_privkey[] = { 0xc8, 0x66, 0x04, 0x42, 0x6c, 0x7a, 0x51, 0xed, 0x5c, 0xbc, 0x2f, 0xb2, 0x6c, 0x99, 0x75, 0x51, 0x88, 0xb9, 0x5c, 0x0f, 0xb2, 0x18, 0xa0, 0xf5, 0x43, 0xef, 0x34, 0x00, 0x82, 0xb4, 0x0b, 0x4a, 0x4b, 0xff, 0x68, 0x89, 0x4f, 0xd9, 0xe3, 0xb9, 0x05, 0x7b, 0x51, 0x3f, 0x00, 0xdb, 0x0f, 0x49, 0x88, 0x22, 0x1e, 0x79, 0x9c, 0x96, 0x41, 0x80, }; static const unsigned char xdh_wei448_4052_sharedsecret[] = { 0xbe, 0x9a, 0xa6, 0x91, 0x17, 0xdf, 0xdc, 0xe5, 0xc5, 0x84, 0x95, 0xb5, 0x0d, 0x9f, 0x52, 0x83, 0x8f, 0xac, 0x6f, 0x6e, 0x9b, 0x4e, 0x99, 0x24, 0x01, 0x7a, 0x40, 0xf9, 0x37, 0x5d, 0x55, 0xf5, 0x6b, 0xed, 0x07, 0x26, 0x96, 0x98, 0xb6, 0xe2, 0xef, 0xbf, 0x9c, 0xea, 0x52, 0xdd, 0x2e, 0x5c, 0xfd, 0x51, 0xee, 0x9c, 0x19, 0xcc, 0xbc, 0x9c, }; static const wycheproof_xdh_test xdh_wei448_4052 = { .name = "xdh_wei448_4052", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4052_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4052_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4052_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 448 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4053 for XDH, tcId is 449 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4053_peerpubkey[] = { 0x84, 0x7c, 0xa2, 0xc6, 0xb0, 0x59, 0x2a, 0xcc, 0xb6, 0xff, 0x64, 0x3d, 0xc2, 0xc9, 0x0e, 0x90, 0x29, 0x99, 0x3d, 0x8f, 0x77, 0x40, 0x3d, 0xec, 0xc0, 0x07, 0xf3, 0xff, 0xfb, 0x77, 0xaa, 0x35, 0xda, 0xd0, 0xd3, 0xe7, 0x5a, 0x2c, 0x58, 0x85, 0x80, 0x11, 0x3d, 0x86, 0x3a, 0xa2, 0x12, 0xec, 0xe7, 0x65, 0x57, 0xc2, 0xc7, 0xc9, 0x0b, 0x61, }; static const unsigned char xdh_wei448_4053_privkey[] = { 0xf4, 0x0b, 0xf1, 0xba, 0x70, 0x53, 0x95, 0xf0, 0x92, 0x0c, 0x0e, 0xff, 0xbd, 0x09, 0x0e, 0x67, 0x06, 0x4d, 0x20, 0xe0, 0xc6, 0x18, 0x0b, 0x37, 0x3d, 0xe9, 0x2a, 0x31, 0x76, 0x2a, 0xcf, 0x2c, 0x74, 0x55, 0xd0, 0xf3, 0x02, 0xda, 0xc9, 0x42, 0x12, 0x67, 0x7b, 0xbd, 0x9a, 0x05, 0x55, 0x18, 0xa0, 0x06, 0x70, 0x56, 0x41, 0x4f, 0x37, 0x8a, }; static const unsigned char xdh_wei448_4053_sharedsecret[] = { 0x7e, 0x34, 0xa5, 0x0e, 0x34, 0x46, 0xe4, 0xdf, 0x31, 0x3d, 0xf5, 0x0a, 0x70, 0x10, 0x61, 0x98, 0xee, 0xb7, 0xfe, 0x14, 0x49, 0x8e, 0xe2, 0x2b, 0xad, 0x93, 0x3c, 0x74, 0x58, 0xc9, 0xd8, 0xaf, 0xb5, 0x02, 0x72, 0x21, 0xac, 0x02, 0x15, 0x94, 0x43, 0x83, 0x9a, 0xae, 0x4f, 0x07, 0xcd, 0x7a, 0xc6, 0x6e, 0xb4, 0x0c, 0x0f, 0x01, 0x85, 0x95, }; static const wycheproof_xdh_test xdh_wei448_4053 = { .name = "xdh_wei448_4053", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4053_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4053_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4053_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 449 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4054 for XDH, tcId is 450 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4054_peerpubkey[] = { 0x29, 0x79, 0x01, 0x58, 0xcc, 0x57, 0x81, 0x71, 0x16, 0xda, 0xfd, 0x0b, 0xfd, 0xab, 0x37, 0x8f, 0x55, 0x2b, 0x81, 0xb5, 0x84, 0x54, 0x95, 0xbc, 0xe7, 0x80, 0x55, 0xbe, 0x1e, 0x4f, 0xd3, 0xcf, 0x18, 0x4b, 0x4c, 0x04, 0x20, 0x2a, 0xac, 0xb4, 0x48, 0x60, 0xb4, 0x79, 0xe4, 0xb2, 0xff, 0x86, 0xf4, 0x8f, 0x2b, 0x75, 0x4f, 0x14, 0xcf, 0x7c, }; static const unsigned char xdh_wei448_4054_privkey[] = { 0x48, 0x21, 0x4f, 0x09, 0xfd, 0xe0, 0x53, 0xec, 0x90, 0xe4, 0x55, 0xbe, 0x28, 0xa5, 0xf5, 0xd6, 0x1e, 0x4a, 0x0e, 0xec, 0xb2, 0xd7, 0x14, 0xf8, 0xd7, 0xca, 0x66, 0x18, 0x85, 0x4c, 0x5d, 0x70, 0x55, 0xac, 0x41, 0xa8, 0xb3, 0x61, 0xf3, 0xe4, 0xb6, 0x76, 0x43, 0x55, 0x8b, 0x22, 0x8a, 0x09, 0x4c, 0x08, 0x24, 0x8f, 0xcf, 0x31, 0xc6, 0x8b, }; static const unsigned char xdh_wei448_4054_sharedsecret[] = { 0x87, 0xde, 0xbb, 0x5b, 0x1b, 0x3a, 0x26, 0xe3, 0x5d, 0xb9, 0xeb, 0xe2, 0x15, 0xaf, 0x98, 0x05, 0xce, 0x1d, 0x04, 0x36, 0x19, 0xbb, 0xb2, 0xf6, 0xc8, 0xcf, 0x38, 0x0c, 0x62, 0x24, 0x72, 0xc3, 0x62, 0xb1, 0x96, 0xb1, 0x87, 0x77, 0x9e, 0x6c, 0xaf, 0x36, 0x46, 0xc5, 0xea, 0xcf, 0x1a, 0xaa, 0x12, 0x49, 0x6e, 0x19, 0xaf, 0x62, 0x7f, 0x2a, }; static const wycheproof_xdh_test xdh_wei448_4054 = { .name = "xdh_wei448_4054", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4054_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4054_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4054_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 8, tcId is 450 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4055 for XDH, tcId is 451 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4055_peerpubkey[] = { 0x55, 0x1b, 0x4e, 0xa2, 0x3d, 0x25, 0x73, 0x1e, 0x99, 0xe3, 0xed, 0x5c, 0x36, 0x5b, 0x49, 0xff, 0xd1, 0xe5, 0x9e, 0x8a, 0xb9, 0x9f, 0xbc, 0x3c, 0xb1, 0x18, 0x69, 0xf6, 0xa3, 0x65, 0x73, 0x6d, 0x17, 0x1c, 0x92, 0x99, 0x2d, 0x41, 0xd2, 0x88, 0x79, 0x78, 0x91, 0xfe, 0x32, 0x9b, 0xed, 0x87, 0x85, 0x9f, 0xbf, 0x13, 0x6b, 0x17, 0x9c, 0xb0, }; static const unsigned char xdh_wei448_4055_privkey[] = { 0x94, 0xd5, 0x8d, 0x10, 0xfe, 0x0d, 0x69, 0xb4, 0xc5, 0xaf, 0x5f, 0x59, 0x4e, 0xbd, 0x20, 0x51, 0xd8, 0x24, 0xf0, 0xb8, 0xb9, 0x70, 0xd0, 0x87, 0x7e, 0x8a, 0xba, 0x62, 0x79, 0x7a, 0x8d, 0x0f, 0xb1, 0x05, 0x28, 0x91, 0xf2, 0x65, 0xd8, 0xdb, 0x50, 0xca, 0xb5, 0x17, 0xa8, 0x34, 0xee, 0x21, 0x42, 0x58, 0x3b, 0xbb, 0x83, 0x1a, 0xe8, 0x87, }; static const unsigned char xdh_wei448_4055_sharedsecret[] = { 0x65, 0xf2, 0x6e, 0x62, 0xf5, 0xf6, 0x77, 0xc9, 0xd9, 0xad, 0x8c, 0x9d, 0x04, 0xef, 0x88, 0x2d, 0x3d, 0x06, 0x31, 0x74, 0x60, 0x8c, 0x90, 0x15, 0x99, 0x1b, 0xdf, 0x7b, 0x7a, 0x28, 0xec, 0x4b, 0xa0, 0x7a, 0x3b, 0x4a, 0x84, 0x65, 0x60, 0x2c, 0x71, 0xb7, 0xa4, 0x73, 0x5b, 0x53, 0x4b, 0x8a, 0x7b, 0x48, 0xed, 0xde, 0x20, 0xb1, 0xc7, 0x73, }; static const wycheproof_xdh_test xdh_wei448_4055 = { .name = "xdh_wei448_4055", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4055_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4055_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4055_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 451 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4056 for XDH, tcId is 452 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4056_peerpubkey[] = { 0xab, 0xd2, 0x35, 0x61, 0xec, 0x4c, 0xcd, 0x50, 0x06, 0x48, 0x9e, 0xaa, 0xfe, 0xb5, 0xc9, 0xde, 0x26, 0xdc, 0x0b, 0x1c, 0x9e, 0x37, 0x53, 0x68, 0x60, 0x8c, 0xaf, 0xa5, 0x44, 0x56, 0x97, 0x5a, 0xaf, 0xae, 0x03, 0x1b, 0xc0, 0x69, 0xa4, 0x56, 0xd5, 0x4e, 0xd7, 0x5d, 0x45, 0x08, 0xe4, 0x1d, 0xbe, 0xe3, 0x03, 0x18, 0x0d, 0xac, 0x5e, 0xc2, }; static const unsigned char xdh_wei448_4056_privkey[] = { 0xcc, 0x53, 0x91, 0x25, 0x93, 0x71, 0x56, 0x86, 0xde, 0x21, 0xea, 0x0b, 0x5b, 0x4c, 0x32, 0x80, 0x77, 0xc7, 0xfe, 0xa1, 0x9b, 0x02, 0x50, 0xde, 0xe4, 0x82, 0x2f, 0xad, 0x0d, 0x41, 0xe5, 0xf1, 0xf3, 0x55, 0xeb, 0xe9, 0xf1, 0xa6, 0x2c, 0xeb, 0x1f, 0x90, 0x2f, 0xfe, 0xed, 0x2b, 0xc7, 0xfb, 0x40, 0xb8, 0xc9, 0x7c, 0x36, 0x6f, 0x3a, 0x80, }; static const unsigned char xdh_wei448_4056_sharedsecret[] = { 0x36, 0x03, 0x03, 0x26, 0x03, 0x55, 0xa2, 0x05, 0x88, 0xa9, 0x24, 0xbb, 0xa2, 0x98, 0xbf, 0x7c, 0xdc, 0x34, 0x75, 0x0c, 0xcd, 0x59, 0x40, 0x23, 0x90, 0x9b, 0xb6, 0xc8, 0x10, 0x84, 0xd5, 0x98, 0x4e, 0x98, 0x57, 0x23, 0xe8, 0x55, 0x7a, 0x9c, 0xc5, 0xf1, 0xf0, 0x8c, 0x3b, 0xeb, 0x2d, 0x56, 0x47, 0x8d, 0xf2, 0x68, 0x2e, 0xfc, 0x78, 0xd5, }; static const wycheproof_xdh_test xdh_wei448_4056 = { .name = "xdh_wei448_4056", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4056_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4056_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4056_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 452 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4057 for XDH, tcId is 453 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4057_peerpubkey[] = { 0xb3, 0xd6, 0x8b, 0xee, 0x6c, 0xd3, 0xf2, 0xbb, 0xe4, 0x9b, 0xe1, 0x15, 0x93, 0x60, 0xd2, 0x6a, 0xeb, 0x1a, 0xe3, 0x2b, 0xd8, 0x05, 0x08, 0x1c, 0x24, 0xde, 0x14, 0xb2, 0xc2, 0x3d, 0x13, 0xb0, 0xe4, 0x5c, 0x2b, 0x12, 0x54, 0x36, 0xf4, 0x42, 0xd5, 0x26, 0xa5, 0x4d, 0x85, 0x82, 0xb9, 0x24, 0x33, 0xc8, 0x44, 0x92, 0x58, 0xed, 0xd4, 0xc3, }; static const unsigned char xdh_wei448_4057_privkey[] = { 0x2c, 0xa8, 0x10, 0x4c, 0x30, 0xf6, 0xcf, 0x2d, 0x86, 0x1a, 0x7e, 0xa9, 0xc6, 0x0c, 0x29, 0x91, 0x0c, 0x6c, 0x75, 0xfc, 0x78, 0x63, 0x83, 0xee, 0x2a, 0x9e, 0xf3, 0xe2, 0xe1, 0x28, 0x61, 0x52, 0x92, 0xbe, 0x2e, 0xd1, 0x67, 0x2a, 0x8a, 0x21, 0x62, 0xf1, 0x92, 0xbb, 0x7d, 0x4a, 0x3a, 0x2f, 0xa3, 0x46, 0xa4, 0x8d, 0xff, 0x10, 0xb0, 0x88, }; static const unsigned char xdh_wei448_4057_sharedsecret[] = { 0x8a, 0x14, 0xfe, 0x42, 0x6b, 0x3a, 0xbc, 0x24, 0x8f, 0x4b, 0xfc, 0x27, 0xe2, 0x69, 0x45, 0xb7, 0xe4, 0xa7, 0x84, 0x3a, 0x40, 0x28, 0x84, 0x2f, 0xcf, 0xd8, 0x99, 0xd3, 0x8c, 0xee, 0xf6, 0xab, 0x9d, 0x5c, 0x58, 0xc1, 0x7f, 0xf0, 0x4a, 0x5f, 0xb4, 0x2d, 0x12, 0xe8, 0xec, 0xb9, 0x05, 0x2b, 0xea, 0xae, 0xe8, 0x41, 0x5d, 0x88, 0xe0, 0x31, }; static const wycheproof_xdh_test xdh_wei448_4057 = { .name = "xdh_wei448_4057", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4057_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4057_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4057_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 8, tcId is 453 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4058 for XDH, tcId is 454 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4058_peerpubkey[] = { 0x4b, 0x04, 0xef, 0x0c, 0x42, 0xf1, 0x33, 0x83, 0x31, 0x06, 0xbb, 0x87, 0xa9, 0xd8, 0xa9, 0xf8, 0x0b, 0xd0, 0x5a, 0xbe, 0xb9, 0x01, 0x27, 0xfa, 0x74, 0x13, 0xca, 0x4d, 0xe0, 0x46, 0xea, 0x10, 0x1e, 0xc7, 0x96, 0x13, 0xa8, 0x76, 0x3d, 0xb2, 0xd2, 0x40, 0x50, 0xf8, 0x13, 0x7f, 0xff, 0xcd, 0xe7, 0xd3, 0x07, 0x57, 0x45, 0xc5, 0x52, 0x49, }; static const unsigned char xdh_wei448_4058_privkey[] = { 0x70, 0x96, 0x7c, 0xdd, 0xff, 0xdb, 0x1e, 0xf1, 0x5f, 0x3b, 0xf6, 0xf2, 0xae, 0x06, 0x9e, 0xe3, 0xbc, 0x14, 0x39, 0x46, 0x94, 0x5f, 0x0f, 0x81, 0x23, 0x95, 0xd0, 0x75, 0xc8, 0x6d, 0xf8, 0x88, 0x90, 0x49, 0xd5, 0xd0, 0x3b, 0x03, 0x09, 0x71, 0x67, 0xd0, 0x52, 0x39, 0x49, 0x77, 0xda, 0x36, 0x4d, 0x90, 0x18, 0x28, 0x6e, 0x9c, 0x70, 0x89, }; static const unsigned char xdh_wei448_4058_sharedsecret[] = { 0x25, 0xae, 0xd0, 0x08, 0xf8, 0xc0, 0xda, 0x48, 0xe6, 0x87, 0x69, 0xd5, 0x5a, 0x21, 0xc3, 0xd9, 0xab, 0x82, 0x9e, 0xf9, 0x3a, 0xde, 0x8a, 0x8b, 0x3f, 0xc3, 0xe2, 0xc3, 0xb0, 0x18, 0xae, 0xc2, 0x13, 0x71, 0x16, 0xca, 0xfd, 0x0b, 0x6b, 0xdc, 0x27, 0x2d, 0x8f, 0x6b, 0x5c, 0x56, 0x01, 0x5d, 0x94, 0x60, 0xd5, 0x38, 0x66, 0xd6, 0xe8, 0x55, }; static const wycheproof_xdh_test xdh_wei448_4058 = { .name = "xdh_wei448_4058", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4058_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4058_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4058_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 454 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4059 for XDH, tcId is 455 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4059_peerpubkey[] = { 0xad, 0x8b, 0x71, 0xb1, 0x90, 0xd4, 0xe8, 0x74, 0x43, 0x97, 0x48, 0x46, 0x38, 0x3a, 0xe6, 0xb4, 0x59, 0x00, 0x90, 0x42, 0xf8, 0x27, 0x89, 0x61, 0x90, 0x1a, 0x99, 0xad, 0x61, 0x62, 0x97, 0xbc, 0xf9, 0x0e, 0x76, 0x79, 0x7e, 0x42, 0xcf, 0x0c, 0xc2, 0x68, 0x72, 0x27, 0x46, 0x38, 0xf9, 0xfe, 0xd0, 0xe2, 0xbd, 0xe9, 0xa5, 0x2f, 0xdf, 0x58, }; static const unsigned char xdh_wei448_4059_privkey[] = { 0x80, 0x51, 0x74, 0x29, 0xfa, 0x2a, 0x86, 0x8a, 0x00, 0xdb, 0x56, 0x94, 0xd2, 0x44, 0xdf, 0xfe, 0xe5, 0x31, 0x9b, 0x7e, 0x74, 0x4b, 0xb0, 0x51, 0x54, 0x5a, 0xf6, 0xc8, 0x06, 0x73, 0xd5, 0x00, 0x24, 0xe8, 0x30, 0x3d, 0x04, 0x90, 0x5e, 0x35, 0x41, 0x39, 0x8e, 0xb0, 0xbc, 0xf4, 0xf5, 0x10, 0x7b, 0xe4, 0xac, 0x25, 0xec, 0x9e, 0xa9, 0x8a, }; static const unsigned char xdh_wei448_4059_sharedsecret[] = { 0x79, 0x74, 0x3c, 0xd9, 0x18, 0xaa, 0xc1, 0x46, 0x0b, 0x6d, 0x17, 0xb4, 0x2a, 0xae, 0x00, 0x34, 0xff, 0x71, 0xf6, 0x21, 0xa8, 0xf9, 0x37, 0xa0, 0xe5, 0xa7, 0xb9, 0x09, 0x13, 0xdf, 0xfa, 0xaa, 0xd2, 0x6b, 0xbd, 0xbd, 0x58, 0x77, 0x2a, 0xc1, 0x9d, 0x1c, 0x3c, 0x01, 0x3c, 0x89, 0x1f, 0x4b, 0x25, 0x02, 0x9d, 0x2f, 0x32, 0xb8, 0x51, 0xd7, }; static const wycheproof_xdh_test xdh_wei448_4059 = { .name = "xdh_wei448_4059", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4059_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4059_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4059_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 455 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4060 for XDH, tcId is 456 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4060_peerpubkey[] = { 0x3e, 0x81, 0xb3, 0x8f, 0x54, 0x45, 0xff, 0xdc, 0x2d, 0x59, 0xa8, 0x98, 0x80, 0x6d, 0xac, 0x4c, 0x88, 0xab, 0xdb, 0x9f, 0x5a, 0xf8, 0xe2, 0xcb, 0xef, 0x0f, 0x8d, 0xbe, 0x09, 0x68, 0x04, 0x01, 0x88, 0xa2, 0x85, 0x04, 0x03, 0xcc, 0x2a, 0xe7, 0xe9, 0x1d, 0x12, 0xf9, 0x28, 0x17, 0x01, 0x25, 0xdd, 0xab, 0xcd, 0xb2, 0xd5, 0x02, 0x62, 0x6c, }; static const unsigned char xdh_wei448_4060_privkey[] = { 0x10, 0xf2, 0x13, 0x45, 0x07, 0xb5, 0x4f, 0x0a, 0xc9, 0x3d, 0x13, 0x33, 0x58, 0x44, 0xdc, 0x9b, 0xcf, 0x0a, 0xb6, 0x3e, 0x37, 0x38, 0x0d, 0x26, 0x4d, 0x6a, 0x2b, 0x6a, 0xda, 0xbf, 0x28, 0x6f, 0x89, 0x2b, 0xe1, 0xc2, 0x18, 0xff, 0xe3, 0xb7, 0x81, 0xe7, 0x8c, 0x15, 0x16, 0x1a, 0xbb, 0x7c, 0x04, 0x93, 0xf3, 0x30, 0x46, 0xea, 0x86, 0x84, }; static const unsigned char xdh_wei448_4060_sharedsecret[] = { 0xc3, 0x98, 0x29, 0x33, 0xd6, 0xf8, 0x6d, 0x4d, 0xbb, 0x96, 0x38, 0x3c, 0x47, 0x44, 0x18, 0x59, 0x6f, 0xdd, 0xbd, 0x33, 0x12, 0x56, 0x50, 0x91, 0xdb, 0x1f, 0x39, 0x02, 0x4f, 0x24, 0x72, 0x3a, 0x9e, 0x99, 0x66, 0xd1, 0x8a, 0x38, 0x88, 0x70, 0x65, 0xf1, 0xcf, 0x44, 0x8b, 0xf3, 0xc8, 0xdd, 0x7a, 0xea, 0x31, 0xde, 0x06, 0xec, 0x01, 0x5a, }; static const wycheproof_xdh_test xdh_wei448_4060 = { .name = "xdh_wei448_4060", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4060_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4060_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4060_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 456 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4061 for XDH, tcId is 457 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4061_peerpubkey[] = { 0xad, 0x39, 0xdb, 0x7d, 0x0a, 0xb6, 0xf1, 0x62, 0xd5, 0x8d, 0xae, 0x64, 0xee, 0x62, 0x58, 0xbb, 0xf1, 0xf1, 0x5e, 0xc1, 0x15, 0x99, 0x64, 0xc1, 0x96, 0xe8, 0xdf, 0x94, 0x99, 0xe7, 0xba, 0x1c, 0xfd, 0xa4, 0x81, 0xfc, 0x3a, 0xb3, 0x84, 0x24, 0x1d, 0x4b, 0xf2, 0x89, 0xb7, 0xf2, 0x97, 0x82, 0xf6, 0x2e, 0xf1, 0xd4, 0x5f, 0x75, 0xc7, 0xbe, }; static const unsigned char xdh_wei448_4061_privkey[] = { 0xf0, 0x4e, 0x43, 0x32, 0x65, 0x54, 0x81, 0xdb, 0xc2, 0x0d, 0x8a, 0x42, 0x85, 0x04, 0x66, 0xa7, 0x21, 0x06, 0x32, 0x1c, 0xc0, 0xb8, 0x9c, 0x12, 0xbe, 0x6c, 0xbc, 0x15, 0xd4, 0x32, 0xab, 0x63, 0xa1, 0x2c, 0x76, 0xda, 0x18, 0xed, 0xb4, 0xef, 0xd6, 0xf2, 0xc6, 0x83, 0xda, 0xdb, 0x86, 0xe5, 0x93, 0x9c, 0x15, 0xa5, 0xa7, 0x06, 0x44, 0x89, }; static const unsigned char xdh_wei448_4061_sharedsecret[] = { 0x42, 0xbe, 0x6b, 0xff, 0x60, 0xaa, 0x63, 0xf6, 0xe0, 0x96, 0x9b, 0x91, 0x5e, 0xc0, 0xac, 0x98, 0x28, 0x3f, 0xe6, 0x2c, 0x43, 0x04, 0x50, 0x2e, 0x6b, 0xb1, 0xcb, 0x15, 0xa2, 0x59, 0x68, 0xb6, 0x44, 0x5f, 0x19, 0x31, 0x03, 0x56, 0xf2, 0xeb, 0xb5, 0xfd, 0x5e, 0x13, 0x84, 0x47, 0x96, 0x87, 0x2a, 0x6f, 0x74, 0x17, 0xcd, 0x35, 0x05, 0xfe, }; static const wycheproof_xdh_test xdh_wei448_4061 = { .name = "xdh_wei448_4061", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4061_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4061_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4061_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 457 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4062 for XDH, tcId is 458 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4062_peerpubkey[] = { 0xa9, 0x02, 0xf8, 0x73, 0x9f, 0xfa, 0xe2, 0x74, 0x15, 0x77, 0x05, 0x06, 0x60, 0xc9, 0xb7, 0x46, 0x90, 0xc5, 0x33, 0x0f, 0x88, 0xcc, 0xd0, 0x63, 0x97, 0x2a, 0xa0, 0x05, 0x14, 0xea, 0x06, 0x55, 0x07, 0x06, 0xfc, 0x83, 0x75, 0x1f, 0xb2, 0x45, 0xce, 0xdc, 0x78, 0x1d, 0x39, 0x73, 0x10, 0x8a, 0x0a, 0x0e, 0x18, 0x2c, 0x9d, 0xa2, 0x07, 0xc0, }; static const unsigned char xdh_wei448_4062_privkey[] = { 0xf8, 0xdc, 0x17, 0xe1, 0x18, 0xe0, 0x56, 0x9e, 0x5f, 0xec, 0xd8, 0x96, 0x1b, 0xda, 0xde, 0xca, 0xba, 0xe2, 0xf4, 0x2a, 0x0b, 0x40, 0xe3, 0xb2, 0x3c, 0xc5, 0x01, 0xba, 0x4f, 0x9b, 0xd3, 0x29, 0xad, 0x0b, 0xd3, 0x0b, 0xb9, 0x3d, 0xe6, 0x6b, 0x59, 0x97, 0x17, 0xcf, 0x95, 0x8e, 0x76, 0x5b, 0x69, 0x4f, 0x59, 0x74, 0xa9, 0x4e, 0x4d, 0x88, }; static const unsigned char xdh_wei448_4062_sharedsecret[] = { 0xc4, 0xf0, 0xcb, 0x9c, 0x4f, 0x3c, 0x3b, 0xa5, 0xc9, 0xc8, 0x84, 0x69, 0xd7, 0xd9, 0xfe, 0x82, 0xe9, 0x14, 0x11, 0x8e, 0x16, 0x4d, 0x28, 0xbc, 0x45, 0x09, 0xe2, 0x75, 0x32, 0x50, 0x09, 0xa0, 0x7f, 0x4a, 0x6b, 0x65, 0xc5, 0xa9, 0x73, 0x2f, 0x93, 0xeb, 0xe8, 0x02, 0xa3, 0x03, 0x9f, 0x03, 0xdb, 0x7f, 0xdb, 0x25, 0xb9, 0xcc, 0x9b, 0x6d, }; static const wycheproof_xdh_test xdh_wei448_4062 = { .name = "xdh_wei448_4062", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4062_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4062_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4062_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 458 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4063 for XDH, tcId is 459 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4063_peerpubkey[] = { 0x72, 0x2a, 0xb1, 0x1d, 0xa3, 0x7a, 0x44, 0x36, 0xee, 0xb8, 0x20, 0x46, 0xbb, 0x2b, 0xa5, 0x24, 0x58, 0x0c, 0xd7, 0x21, 0xc4, 0x9b, 0x79, 0x9b, 0x71, 0x29, 0xc6, 0x60, 0x36, 0xfa, 0xf2, 0xdf, 0x03, 0xc3, 0x96, 0xf9, 0x87, 0x14, 0xc4, 0x6f, 0x3e, 0x67, 0x48, 0xac, 0xef, 0x23, 0xc9, 0x28, 0xe8, 0x23, 0x75, 0x81, 0xc4, 0x35, 0x59, 0xd3, }; static const unsigned char xdh_wei448_4063_privkey[] = { 0xc0, 0x85, 0xe4, 0x06, 0xc8, 0x8d, 0x34, 0x18, 0xa1, 0x9a, 0xca, 0xe3, 0xe6, 0x18, 0xab, 0x18, 0x0d, 0xd9, 0xc6, 0x19, 0xae, 0xad, 0x09, 0x3f, 0xc5, 0x8f, 0x05, 0xaa, 0xe2, 0x1f, 0xa6, 0xb4, 0xed, 0x74, 0x73, 0x2b, 0x64, 0x0b, 0x6d, 0xa5, 0x9e, 0xe7, 0xb4, 0x12, 0x78, 0x30, 0xba, 0x51, 0x58, 0x89, 0x63, 0x73, 0x61, 0x34, 0x7d, 0x81, }; static const unsigned char xdh_wei448_4063_sharedsecret[] = { 0xda, 0xeb, 0xfd, 0xd9, 0xbd, 0x0d, 0xb1, 0x07, 0x48, 0xb0, 0x2f, 0xa7, 0x5b, 0x92, 0xa8, 0x79, 0x75, 0xd7, 0xae, 0x15, 0x80, 0xe3, 0xb3, 0x07, 0x64, 0xca, 0xc9, 0xc6, 0x77, 0x4e, 0xd6, 0xb7, 0x6e, 0xec, 0xaa, 0x73, 0xa7, 0x0f, 0xd3, 0xdd, 0xef, 0xc3, 0x8e, 0xe0, 0x81, 0x21, 0x18, 0x19, 0x88, 0x9c, 0x19, 0xd1, 0x63, 0x17, 0xed, 0xdc, }; static const wycheproof_xdh_test xdh_wei448_4063 = { .name = "xdh_wei448_4063", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4063_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4063_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4063_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA in multiplication by 8, tcId is 459 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4064 for XDH, tcId is 460 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4064_peerpubkey[] = { 0xe8, 0x60, 0x49, 0x68, 0x52, 0x0e, 0x86, 0xce, 0x55, 0x32, 0x34, 0x18, 0xe7, 0x40, 0x52, 0x78, 0x3b, 0xef, 0x2d, 0x38, 0xb9, 0x06, 0x1c, 0x8d, 0x35, 0x27, 0x70, 0x93, 0x82, 0x65, 0x6f, 0x3b, 0xf6, 0x29, 0x97, 0xf5, 0x1a, 0xed, 0xbf, 0x67, 0xa5, 0x6b, 0x8d, 0xe1, 0x89, 0x45, 0xff, 0xa5, 0x58, 0xaf, 0xbc, 0x24, 0x90, 0x3e, 0x1c, 0xe2, }; static const unsigned char xdh_wei448_4064_privkey[] = { 0xe4, 0x34, 0x72, 0xcc, 0xe6, 0x5a, 0x3b, 0x63, 0xe9, 0xcf, 0x5b, 0xc5, 0x83, 0x5c, 0x82, 0xe4, 0x8e, 0xa8, 0xda, 0x69, 0x05, 0xcb, 0x98, 0xff, 0xd7, 0x14, 0x17, 0xe0, 0x23, 0xaf, 0xe6, 0x05, 0xcc, 0x17, 0x50, 0x64, 0x32, 0xb8, 0xd6, 0xba, 0x79, 0x82, 0x9f, 0x69, 0xe8, 0x9d, 0x41, 0xbb, 0x7f, 0x52, 0x60, 0xb0, 0xe6, 0xe8, 0xff, 0x8c, }; static const unsigned char xdh_wei448_4064_sharedsecret[] = { 0x0e, 0x4d, 0x45, 0x7c, 0xd0, 0xe5, 0x70, 0x0d, 0x60, 0x71, 0xea, 0xb5, 0x7e, 0x4d, 0x93, 0xc1, 0x9d, 0xdc, 0x1b, 0x74, 0x10, 0x1b, 0xed, 0xa0, 0xbf, 0x8e, 0x9f, 0x57, 0x1d, 0xe8, 0x9d, 0x3d, 0x0d, 0xaf, 0x14, 0x60, 0xed, 0x4e, 0x57, 0x99, 0x0c, 0x66, 0x71, 0xd6, 0x9f, 0x07, 0x4f, 0x7a, 0xc1, 0xc0, 0xbc, 0x64, 0x99, 0x51, 0x20, 0xeb, }; static const wycheproof_xdh_test xdh_wei448_4064 = { .name = "xdh_wei448_4064", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4064_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4064_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4064_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA in multiplication by 8, tcId is 460 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4065 for XDH, tcId is 461 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4065_peerpubkey[] = { 0x38, 0xad, 0x42, 0xf2, 0x98, 0x17, 0xa8, 0xb9, 0x02, 0xb1, 0xfe, 0xc9, 0x7f, 0x91, 0x3e, 0x09, 0xa1, 0x0a, 0x45, 0x55, 0xc4, 0x11, 0xed, 0xab, 0x8d, 0x1b, 0x7b, 0x42, 0xaa, 0x06, 0xac, 0xa9, 0xf9, 0xcb, 0xa0, 0x47, 0xfb, 0x7f, 0x5f, 0xec, 0x5d, 0x49, 0x98, 0xbc, 0xf9, 0x21, 0xdf, 0x5c, 0x40, 0xd2, 0x50, 0xf7, 0x9b, 0x2f, 0xaf, 0x50, }; static const unsigned char xdh_wei448_4065_privkey[] = { 0x1c, 0x4d, 0x32, 0x4d, 0x01, 0xa6, 0xbd, 0x33, 0xa4, 0x0a, 0x54, 0x4b, 0xdb, 0x16, 0x0f, 0xbe, 0xc0, 0x4c, 0x52, 0xb6, 0x2a, 0xbd, 0xc0, 0x6b, 0x60, 0x89, 0xa8, 0x8c, 0xed, 0x16, 0xd7, 0x03, 0x0a, 0x85, 0x38, 0x72, 0x1b, 0xa5, 0x9c, 0x0f, 0x8c, 0xad, 0x87, 0x60, 0xbd, 0xad, 0xc8, 0x2c, 0x7f, 0x70, 0xbf, 0x02, 0x74, 0x30, 0x9d, 0x87, }; static const unsigned char xdh_wei448_4065_sharedsecret[] = { 0x4e, 0x61, 0x67, 0xcc, 0x89, 0x7a, 0xa7, 0x0b, 0xb8, 0x95, 0x04, 0x40, 0xa5, 0x43, 0xc5, 0x4d, 0x07, 0x7e, 0xeb, 0xf1, 0x0f, 0xda, 0xdc, 0x24, 0x85, 0xa1, 0x2e, 0x7e, 0xe0, 0x60, 0x17, 0x89, 0x9e, 0x08, 0x9d, 0xb8, 0x09, 0x2a, 0xc4, 0x4c, 0x60, 0x69, 0xe1, 0x6e, 0xd2, 0x5e, 0xb4, 0x15, 0xc3, 0x50, 0xe8, 0x23, 0xcd, 0x6a, 0xd2, 0x85, }; static const wycheproof_xdh_test xdh_wei448_4065 = { .name = "xdh_wei448_4065", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4065_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4065_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4065_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 461 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4066 for XDH, tcId is 462 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4066_peerpubkey[] = { 0x66, 0x26, 0xc9, 0xe7, 0xb4, 0xaa, 0x66, 0x21, 0xb2, 0x98, 0xe6, 0xd5, 0x94, 0x4b, 0xd0, 0xa6, 0x4d, 0x14, 0xf0, 0x2b, 0xd2, 0xdf, 0x47, 0xe2, 0x61, 0x10, 0x0a, 0xae, 0x42, 0x6a, 0xe9, 0xdd, 0xf9, 0x42, 0x3e, 0xa2, 0xe6, 0xd0, 0x98, 0x91, 0xbc, 0x00, 0x54, 0xc5, 0x9c, 0xa6, 0xfc, 0x1c, 0xf4, 0xe9, 0xf1, 0xe3, 0x06, 0x00, 0x93, 0x5d, }; static const unsigned char xdh_wei448_4066_privkey[] = { 0xcc, 0x8f, 0xc0, 0x9c, 0xac, 0x12, 0x77, 0x05, 0xcc, 0x29, 0x38, 0x9e, 0xc4, 0x67, 0x62, 0xfc, 0xbe, 0xf0, 0xb5, 0x46, 0x0a, 0x54, 0x18, 0x59, 0x44, 0x2d, 0xd4, 0xf9, 0x03, 0x17, 0xd0, 0x76, 0xcc, 0xb7, 0x86, 0x85, 0xf2, 0xbf, 0xb8, 0xa4, 0xc2, 0xdd, 0xff, 0x53, 0x12, 0x64, 0x14, 0xed, 0x3c, 0x03, 0xd5, 0x60, 0xc9, 0x81, 0xb6, 0x8f, }; static const unsigned char xdh_wei448_4066_sharedsecret[] = { 0xd1, 0x89, 0xdc, 0xd8, 0xcd, 0x60, 0x16, 0x97, 0x29, 0xdc, 0x51, 0xc1, 0x36, 0xc8, 0x90, 0xef, 0x68, 0x2c, 0xc7, 0xa0, 0xe7, 0xd3, 0x82, 0xa0, 0xea, 0x52, 0xe8, 0x73, 0x38, 0xc1, 0xa7, 0x00, 0x3a, 0x38, 0xde, 0xb0, 0xc5, 0x05, 0xdb, 0x7c, 0x55, 0xd3, 0xdc, 0xe4, 0x77, 0xd6, 0xba, 0x7a, 0xe6, 0x40, 0x55, 0xb2, 0xae, 0x11, 0x9f, 0x0c, }; static const wycheproof_xdh_test xdh_wei448_4066 = { .name = "xdh_wei448_4066", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4066_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4066_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4066_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 462 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4067 for XDH, tcId is 463 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4067_peerpubkey[] = { 0x81, 0x45, 0xf6, 0x98, 0xe5, 0xc3, 0xff, 0xe1, 0x0c, 0xc8, 0x0d, 0xc2, 0x32, 0xd0, 0x6b, 0x27, 0x7f, 0x16, 0xc9, 0x7c, 0xdf, 0x2a, 0x13, 0x59, 0x49, 0xec, 0x06, 0x1d, 0x78, 0x39, 0xc1, 0xbd, 0x79, 0xf9, 0x90, 0xf8, 0xbf, 0xc2, 0xb2, 0x4f, 0x61, 0x5a, 0xe5, 0x80, 0xa5, 0x69, 0x32, 0xe9, 0x45, 0x76, 0x28, 0x34, 0x97, 0xa6, 0xf2, 0x6f, }; static const unsigned char xdh_wei448_4067_privkey[] = { 0x00, 0xdb, 0x5c, 0x17, 0xb7, 0xf2, 0x76, 0x5d, 0x92, 0x16, 0x3a, 0x1a, 0xbf, 0xd7, 0x0b, 0x3b, 0x5a, 0x10, 0x5b, 0x5b, 0x24, 0xf7, 0xc5, 0x37, 0xeb, 0x33, 0xe1, 0xad, 0xa5, 0x06, 0xe9, 0x14, 0x9f, 0x0f, 0xa2, 0x5d, 0xed, 0x4d, 0x25, 0xfc, 0x37, 0x23, 0xa7, 0x7a, 0x96, 0xb4, 0x0e, 0x56, 0x45, 0x1e, 0xf7, 0x86, 0x09, 0xda, 0x98, 0x8d, }; static const unsigned char xdh_wei448_4067_sharedsecret[] = { 0xda, 0xf2, 0x30, 0xfd, 0x96, 0xf5, 0x99, 0xd2, 0xea, 0xd3, 0x14, 0x9b, 0xad, 0x9f, 0x5e, 0xcf, 0xe6, 0x4c, 0xbe, 0x20, 0xf7, 0x90, 0x97, 0xf1, 0xb2, 0x15, 0xda, 0x86, 0x5a, 0x46, 0xb6, 0xd7, 0x4c, 0x45, 0xae, 0x5b, 0xd6, 0x37, 0x4d, 0x4c, 0x2b, 0x72, 0x33, 0x2e, 0xde, 0xa3, 0x0d, 0xf1, 0x63, 0x83, 0xe4, 0x44, 0x7b, 0x1f, 0x35, 0xe1, }; static const wycheproof_xdh_test xdh_wei448_4067 = { .name = "xdh_wei448_4067", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4067_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4067_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4067_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for C in multiplication by 8, tcId is 463 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4068 for XDH, tcId is 464 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4068_peerpubkey[] = { 0xc3, 0x1a, 0xeb, 0x03, 0x0b, 0x50, 0x9c, 0x78, 0x44, 0xc8, 0x18, 0xa4, 0x83, 0x9f, 0x00, 0x0b, 0xde, 0x71, 0x06, 0x11, 0x28, 0x91, 0x79, 0xa4, 0x60, 0x75, 0xa9, 0x99, 0xe8, 0xcc, 0x3d, 0x10, 0xc3, 0x9a, 0xa5, 0x69, 0x7d, 0x62, 0xb4, 0x5a, 0x43, 0x77, 0x11, 0x84, 0x28, 0x8e, 0xee, 0x5a, 0x8d, 0x6a, 0x87, 0x3d, 0x74, 0x21, 0x05, 0x7b, }; static const unsigned char xdh_wei448_4068_privkey[] = { 0xf0, 0x3f, 0x05, 0x18, 0x1a, 0x81, 0x30, 0xe7, 0x21, 0x0c, 0xb5, 0x22, 0x9c, 0x8d, 0xff, 0xa4, 0x57, 0x54, 0x4e, 0xb5, 0xe1, 0xe1, 0xf8, 0x62, 0x97, 0xac, 0x23, 0xfe, 0x0e, 0xf4, 0x95, 0xca, 0xbc, 0x13, 0x67, 0xad, 0x20, 0x54, 0xc5, 0xd8, 0xee, 0xfb, 0x08, 0x34, 0x6e, 0xb5, 0xa1, 0x47, 0xba, 0x44, 0x9e, 0x89, 0x86, 0x02, 0x2b, 0x8c, }; static const unsigned char xdh_wei448_4068_sharedsecret[] = { 0xe7, 0x85, 0x1b, 0xc1, 0x3d, 0x7c, 0xb8, 0x00, 0x9c, 0x54, 0xa7, 0xd6, 0x33, 0xae, 0x82, 0xd2, 0x04, 0x10, 0x16, 0x15, 0xf3, 0x28, 0xba, 0x05, 0x09, 0x28, 0x41, 0x46, 0x9d, 0x41, 0x0a, 0x4d, 0x52, 0x7a, 0x17, 0xde, 0x91, 0x89, 0x51, 0x28, 0x58, 0x85, 0xb9, 0xd7, 0x67, 0xa0, 0xcb, 0xcc, 0x88, 0xf6, 0x9c, 0xe1, 0x50, 0xb3, 0x23, 0x71, }; static const wycheproof_xdh_test xdh_wei448_4068 = { .name = "xdh_wei448_4068", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4068_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4068_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4068_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 464 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4069 for XDH, tcId is 465 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4069_peerpubkey[] = { 0x3a, 0xb5, 0x93, 0x72, 0x4e, 0xae, 0x72, 0xc6, 0xc3, 0xf7, 0x7a, 0x71, 0xf2, 0x3a, 0xc1, 0xac, 0x52, 0xad, 0xba, 0xea, 0xb9, 0x1f, 0x20, 0x82, 0xbb, 0xe8, 0x4a, 0x58, 0xe6, 0x03, 0xd7, 0x8d, 0x84, 0xe6, 0x51, 0xa6, 0xe5, 0x88, 0x57, 0xd6, 0xcc, 0x91, 0x76, 0x7c, 0xfa, 0xa5, 0xad, 0xf0, 0xc6, 0x7e, 0xe2, 0x3f, 0x04, 0x02, 0xaa, 0x7d, }; static const unsigned char xdh_wei448_4069_privkey[] = { 0x34, 0xd7, 0xfe, 0x88, 0x6b, 0x69, 0x6e, 0x16, 0x2f, 0x35, 0xf2, 0x6d, 0x0b, 0xf7, 0x4a, 0xbf, 0x13, 0xd4, 0x0e, 0x19, 0x3c, 0x1b, 0x69, 0xad, 0x1b, 0x6a, 0xa6, 0xd1, 0x3a, 0x34, 0x08, 0x54, 0xa9, 0xa0, 0xa6, 0x2b, 0x05, 0xda, 0x18, 0x32, 0x96, 0xa6, 0x22, 0xbb, 0x48, 0xeb, 0x8e, 0xd3, 0xe6, 0x76, 0x02, 0x75, 0x02, 0x72, 0x6d, 0x8b, }; static const unsigned char xdh_wei448_4069_sharedsecret[] = { 0x36, 0x95, 0x70, 0xa9, 0x4c, 0xbf, 0x29, 0x23, 0x4a, 0x63, 0x10, 0x0e, 0xdc, 0xbf, 0x84, 0x55, 0x71, 0xd8, 0x32, 0x61, 0x16, 0xb8, 0x27, 0x00, 0x2e, 0x5d, 0xe5, 0xdc, 0xe5, 0x42, 0x93, 0xd5, 0xe9, 0x15, 0x4d, 0xb7, 0x1b, 0x04, 0x07, 0x15, 0x6a, 0x75, 0x72, 0x4b, 0xc1, 0x64, 0xd6, 0x8b, 0xf8, 0x00, 0xdb, 0x2f, 0xeb, 0xbe, 0x64, 0xa1, }; static const wycheproof_xdh_test xdh_wei448_4069 = { .name = "xdh_wei448_4069", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4069_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4069_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4069_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for DA - CB in multiplication by 8, tcId is 465 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4070 for XDH, tcId is 466 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4070_peerpubkey[] = { 0x2f, 0x40, 0x00, 0xa0, 0x10, 0xfb, 0xa8, 0x70, 0xbc, 0xb1, 0x31, 0xe7, 0x3e, 0xeb, 0x05, 0x22, 0xc2, 0x0f, 0xd5, 0x28, 0x2e, 0x33, 0x96, 0xe0, 0xde, 0x9e, 0xd2, 0x6a, 0x62, 0xb1, 0xd4, 0x37, 0x0b, 0xae, 0x26, 0x54, 0x4c, 0xff, 0x3c, 0xae, 0x78, 0xcd, 0x0b, 0x8e, 0xa2, 0x86, 0xc7, 0x4b, 0x1f, 0x7c, 0x7c, 0x7a, 0x9e, 0x73, 0x88, 0xe9, }; static const unsigned char xdh_wei448_4070_privkey[] = { 0xc8, 0x70, 0x53, 0x39, 0x02, 0xfe, 0x72, 0x8c, 0xf8, 0x8b, 0xb9, 0xb1, 0x78, 0xad, 0x0c, 0xcb, 0xb1, 0x55, 0x2a, 0xca, 0xeb, 0x41, 0xd3, 0x58, 0xd5, 0x17, 0x4a, 0x4c, 0x3e, 0xc9, 0x0a, 0xf0, 0x6b, 0x22, 0x55, 0xe5, 0xe1, 0x5c, 0xaf, 0x95, 0xcd, 0x31, 0x52, 0xb7, 0x4b, 0x59, 0x73, 0xc3, 0x39, 0x74, 0x8a, 0x36, 0x52, 0xcd, 0x98, 0x89, }; static const unsigned char xdh_wei448_4070_sharedsecret[] = { 0x50, 0xf0, 0x1d, 0x59, 0xa5, 0xcb, 0xc4, 0xc9, 0x6c, 0x32, 0xd8, 0x90, 0xe8, 0x99, 0x2a, 0x23, 0x60, 0x2d, 0xb6, 0x96, 0x6c, 0xf0, 0xd4, 0x20, 0xc2, 0x27, 0x3a, 0xbd, 0x8e, 0xeb, 0xaa, 0x2e, 0xbd, 0x54, 0x34, 0x61, 0x4b, 0x1a, 0x79, 0x17, 0x5d, 0x28, 0x4d, 0x12, 0xfd, 0x5d, 0x43, 0x5e, 0x47, 0xaf, 0xb7, 0xd4, 0x73, 0x61, 0x51, 0x39, }; static const wycheproof_xdh_test xdh_wei448_4070 = { .name = "xdh_wei448_4070", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4070_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4070_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4070_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 8, tcId is 466 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4071 for XDH, tcId is 467 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4071_peerpubkey[] = { 0x01, 0xb2, 0x37, 0xb2, 0xe5, 0x4b, 0x32, 0xd7, 0xc9, 0xba, 0x63, 0xd9, 0x7a, 0x3a, 0x27, 0x47, 0x1c, 0x24, 0x91, 0x17, 0x67, 0xf6, 0x18, 0x7c, 0x1d, 0x91, 0x4b, 0xec, 0x1f, 0x4f, 0x98, 0x34, 0x8a, 0xdf, 0x51, 0x1a, 0xd0, 0x87, 0xf8, 0xfe, 0x8a, 0xfd, 0x11, 0x07, 0xcb, 0xae, 0x81, 0x9f, 0x60, 0xea, 0x8c, 0x3c, 0xf6, 0xb7, 0xe5, 0xa1, }; static const unsigned char xdh_wei448_4071_privkey[] = { 0xf4, 0x58, 0x96, 0xc6, 0x4d, 0x14, 0xe3, 0x75, 0xb4, 0x0c, 0xa3, 0x13, 0x56, 0xb7, 0x85, 0xeb, 0x94, 0x4f, 0xc6, 0xad, 0x07, 0xc3, 0x43, 0x27, 0x98, 0x80, 0xbe, 0x61, 0x14, 0xf4, 0xbc, 0x56, 0x72, 0x6a, 0x98, 0x9c, 0x7c, 0xc2, 0x62, 0x71, 0x73, 0x35, 0xc3, 0x6a, 0xa7, 0x88, 0x06, 0xeb, 0xd8, 0x53, 0xa2, 0x2e, 0x70, 0x08, 0xba, 0x8d, }; static const unsigned char xdh_wei448_4071_sharedsecret[] = { 0xd6, 0x5b, 0x11, 0x3b, 0x36, 0x4d, 0x20, 0x15, 0x6a, 0x78, 0x43, 0x5a, 0x04, 0x66, 0x3d, 0x07, 0x8f, 0xb2, 0x08, 0x23, 0x4b, 0x74, 0x51, 0x51, 0xc9, 0x06, 0xe1, 0x12, 0xdf, 0xa7, 0xcb, 0xeb, 0x53, 0xde, 0x16, 0x32, 0x61, 0x1a, 0x6d, 0x61, 0x23, 0x40, 0x51, 0xa1, 0xd1, 0x8a, 0x86, 0x57, 0xd3, 0x72, 0x2f, 0xd6, 0xbb, 0x0d, 0xcf, 0xc0, }; static const wycheproof_xdh_test xdh_wei448_4071 = { .name = "xdh_wei448_4071", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4071_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4071_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4071_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for A in multiplication by 8, tcId is 467 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4072 for XDH, tcId is 468 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4072_peerpubkey[] = { 0x25, 0x9d, 0x5b, 0x9e, 0x98, 0x3c, 0x18, 0x8c, 0x7f, 0x80, 0x05, 0x52, 0x3f, 0x22, 0x47, 0xbb, 0xed, 0x09, 0xa4, 0xad, 0x8b, 0xa3, 0xac, 0x1c, 0x01, 0x91, 0x7c, 0x2e, 0x27, 0xcf, 0xe1, 0xb4, 0x6d, 0xd7, 0x6c, 0xd3, 0xe0, 0xb7, 0x2b, 0x18, 0x6c, 0x8f, 0xb3, 0x70, 0x19, 0x72, 0xb4, 0x93, 0x8b, 0x1f, 0x7b, 0x52, 0xe6, 0x17, 0x75, 0x06, }; static const unsigned char xdh_wei448_4072_privkey[] = { 0x30, 0xc2, 0x30, 0x49, 0x39, 0x20, 0x45, 0x12, 0x2b, 0x04, 0xad, 0x8d, 0xef, 0xd0, 0xd2, 0xd9, 0xb6, 0xb6, 0x6c, 0x27, 0xe5, 0x0a, 0x50, 0xc2, 0xd2, 0x62, 0xe9, 0xab, 0xd3, 0x57, 0x17, 0x12, 0x69, 0x25, 0xdb, 0x2a, 0xe4, 0x6a, 0x82, 0x85, 0xbd, 0xbf, 0x5a, 0x86, 0x39, 0xbb, 0x9a, 0x7d, 0x38, 0x9d, 0xcd, 0xf3, 0x7d, 0x9f, 0xc6, 0x9b, }; static const unsigned char xdh_wei448_4072_sharedsecret[] = { 0xa8, 0x7e, 0x2b, 0x37, 0x26, 0x71, 0xbc, 0x4f, 0x9f, 0xa4, 0x5e, 0xb4, 0xf4, 0x98, 0x1c, 0x24, 0x7c, 0xde, 0x7e, 0x25, 0xbd, 0xcb, 0x9e, 0xd8, 0x00, 0x74, 0x8a, 0xd6, 0xf1, 0x11, 0xf0, 0xc7, 0xad, 0xa3, 0xc4, 0xc7, 0xb3, 0x2d, 0xae, 0x7f, 0xaf, 0x67, 0x64, 0x38, 0xba, 0xde, 0x9c, 0xa1, 0xbd, 0xa8, 0x22, 0x50, 0xf8, 0xa2, 0xf1, 0x4b, }; static const wycheproof_xdh_test xdh_wei448_4072 = { .name = "xdh_wei448_4072", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4072_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4072_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4072_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 468 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4073 for XDH, tcId is 469 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4073_peerpubkey[] = { 0x50, 0xe6, 0x8f, 0x3a, 0x02, 0x97, 0xd2, 0x17, 0xa4, 0xab, 0x14, 0xf6, 0x50, 0x89, 0x9e, 0x78, 0x8e, 0x10, 0x3e, 0x4e, 0xff, 0xe6, 0x98, 0x8b, 0xc8, 0x01, 0x71, 0x9a, 0xc8, 0xa5, 0xbe, 0xbe, 0x55, 0xe3, 0xa8, 0x1e, 0xd4, 0xf1, 0xb5, 0x64, 0x19, 0x81, 0xc9, 0xde, 0xe9, 0xa8, 0xbd, 0x94, 0x6b, 0xbc, 0x43, 0x64, 0x9a, 0x10, 0xc0, 0x25, }; static const unsigned char xdh_wei448_4073_privkey[] = { 0x78, 0xeb, 0xba, 0x71, 0xf4, 0xf9, 0xbc, 0x92, 0x9d, 0xf8, 0x68, 0x56, 0xd6, 0x00, 0xe3, 0x2b, 0x87, 0x8c, 0x99, 0xaa, 0x62, 0xfb, 0x01, 0xbf, 0xeb, 0x8e, 0xae, 0xd9, 0x3e, 0xc3, 0x63, 0xbe, 0xf8, 0x2d, 0xab, 0x72, 0x72, 0x25, 0xd8, 0x2e, 0x2a, 0xd7, 0xcc, 0x11, 0x23, 0x87, 0x90, 0x1b, 0xbe, 0x89, 0xdf, 0xfb, 0xad, 0x77, 0x84, 0x9e, }; static const unsigned char xdh_wei448_4073_sharedsecret[] = { 0x8c, 0x23, 0xb9, 0x27, 0x6c, 0x81, 0x64, 0xa6, 0x44, 0x7b, 0x0b, 0x3e, 0xc3, 0x30, 0x26, 0x8c, 0x38, 0xdd, 0x55, 0x3b, 0xf2, 0x09, 0xb6, 0x3c, 0x1d, 0x73, 0x3e, 0x2b, 0x88, 0x5d, 0x5a, 0x26, 0x66, 0x7b, 0xfb, 0xd6, 0xfc, 0x29, 0x37, 0x81, 0xc9, 0xe7, 0x09, 0x09, 0xe7, 0x42, 0xdd, 0xb1, 0x8a, 0x79, 0x81, 0x40, 0xcb, 0xee, 0xb9, 0x61, }; static const wycheproof_xdh_test xdh_wei448_4073 = { .name = "xdh_wei448_4073", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4073_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4073_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4073_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 469 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4074 for XDH, tcId is 470 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4074_peerpubkey[] = { 0x16, 0x9d, 0x94, 0x58, 0xa9, 0xa9, 0x1b, 0x21, 0x4a, 0xb7, 0xe8, 0x3b, 0x97, 0x68, 0x37, 0x39, 0x99, 0xfe, 0xd6, 0x07, 0xda, 0xa9, 0x43, 0x58, 0x50, 0x37, 0x84, 0x97, 0x64, 0x5b, 0xbe, 0xb6, 0x9a, 0xab, 0x6f, 0x05, 0xfb, 0xf2, 0x4a, 0xfe, 0x51, 0x18, 0x02, 0xbc, 0x45, 0x3a, 0x29, 0x2b, 0xc7, 0x4a, 0x8d, 0xe0, 0x88, 0xef, 0x1e, 0x51, }; static const unsigned char xdh_wei448_4074_privkey[] = { 0x10, 0xc0, 0xb3, 0xb2, 0xe8, 0xb9, 0x8f, 0xce, 0x70, 0x7b, 0x31, 0x49, 0x94, 0x19, 0xe2, 0xac, 0x5f, 0x64, 0xab, 0xda, 0x25, 0x80, 0x75, 0xb6, 0x94, 0x1e, 0xe3, 0xb8, 0x28, 0xa1, 0x91, 0xa7, 0x21, 0xaf, 0x2a, 0x34, 0x4e, 0x89, 0x5c, 0x95, 0xad, 0x79, 0x4f, 0x7c, 0x4e, 0xf0, 0xf4, 0x69, 0x56, 0x05, 0x04, 0x38, 0x67, 0x8a, 0x1e, 0x9c, }; static const unsigned char xdh_wei448_4074_sharedsecret[] = { 0xf5, 0xc7, 0x6c, 0xa6, 0x09, 0x2d, 0xcf, 0x01, 0x61, 0x9b, 0x6e, 0x13, 0x89, 0x0b, 0x02, 0x96, 0xca, 0xac, 0x32, 0x92, 0xc5, 0xc9, 0xe3, 0x7b, 0x79, 0x88, 0x94, 0xf9, 0xf7, 0xbe, 0x57, 0x10, 0x77, 0xc2, 0x5f, 0xb1, 0x2d, 0x61, 0x6b, 0x63, 0xb4, 0xd5, 0xd8, 0xa9, 0x0e, 0x46, 0xf1, 0x09, 0xfc, 0x04, 0x62, 0x8e, 0x0b, 0x2c, 0x0d, 0x55, }; static const wycheproof_xdh_test xdh_wei448_4074 = { .name = "xdh_wei448_4074", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4074_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4074_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4074_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 470 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4075 for XDH, tcId is 471 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4075_peerpubkey[] = { 0x88, 0xfb, 0xf6, 0x5e, 0x02, 0x44, 0xc8, 0xb2, 0x43, 0x1b, 0xd6, 0xe6, 0x31, 0x4d, 0x50, 0x88, 0xeb, 0xcd, 0xec, 0xde, 0x77, 0xfa, 0x27, 0xbd, 0x81, 0x38, 0x36, 0xc5, 0xff, 0x8a, 0xd3, 0xd0, 0xf0, 0x43, 0x98, 0x7b, 0x88, 0x1b, 0xca, 0xd1, 0xbf, 0x1e, 0x1d, 0xa5, 0xc6, 0x32, 0x31, 0xb7, 0x2b, 0x86, 0x21, 0x23, 0xcd, 0x39, 0x1b, 0x71, }; static const unsigned char xdh_wei448_4075_privkey[] = { 0x2c, 0x47, 0xd3, 0x4c, 0xb0, 0x93, 0x51, 0x33, 0x70, 0x8b, 0x21, 0xf4, 0x22, 0x7b, 0x52, 0xb2, 0xe4, 0xad, 0x18, 0x10, 0x81, 0xc5, 0x38, 0xe8, 0x7e, 0x5c, 0x87, 0x66, 0x06, 0xdb, 0x69, 0xe0, 0x7f, 0x35, 0xb3, 0xc9, 0xf8, 0x6b, 0x42, 0xa8, 0x37, 0x2a, 0x93, 0xfb, 0x3c, 0xd6, 0x74, 0xc0, 0xe3, 0x42, 0x24, 0x2a, 0xb9, 0x10, 0xde, 0x94, }; static const unsigned char xdh_wei448_4075_sharedsecret[] = { 0x2d, 0xbe, 0xa0, 0x42, 0x84, 0xc3, 0x14, 0xc9, 0x0d, 0xe0, 0x20, 0x76, 0xf8, 0x37, 0xde, 0xfa, 0xd2, 0x8e, 0x9e, 0x8d, 0x40, 0x09, 0x51, 0x94, 0xc7, 0x05, 0xcc, 0x20, 0x65, 0x56, 0xbc, 0x8b, 0x6a, 0x21, 0x17, 0x29, 0xfe, 0xb5, 0xed, 0xf6, 0xf8, 0x6f, 0xbb, 0x9b, 0x17, 0x20, 0xb4, 0x37, 0x89, 0x78, 0xd9, 0xc9, 0xab, 0x41, 0xb8, 0xe2, }; static const wycheproof_xdh_test xdh_wei448_4075 = { .name = "xdh_wei448_4075", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4075_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4075_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4075_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 471 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4076 for XDH, tcId is 472 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4076_peerpubkey[] = { 0x6c, 0x2f, 0x2e, 0xde, 0xfb, 0xe1, 0x01, 0x8e, 0xfa, 0x83, 0xe2, 0x81, 0xbc, 0xa4, 0xc7, 0x7a, 0x6c, 0xc7, 0x69, 0xb6, 0x2e, 0x8f, 0xf5, 0x12, 0xc6, 0x69, 0xbf, 0xe5, 0x55, 0x4f, 0x70, 0xf0, 0xd8, 0x29, 0xa8, 0xfe, 0x54, 0x81, 0x15, 0xa5, 0x5a, 0x00, 0x34, 0xbb, 0x7b, 0x3e, 0x59, 0x0b, 0x28, 0x65, 0xe1, 0x0c, 0x97, 0x3e, 0x5a, 0xc0, }; static const unsigned char xdh_wei448_4076_privkey[] = { 0x3c, 0x76, 0x9b, 0xde, 0x8a, 0xcb, 0x40, 0x98, 0xaf, 0xa6, 0xdf, 0x0b, 0x7c, 0x17, 0x4f, 0x72, 0xb9, 0x46, 0x8d, 0x21, 0x6e, 0x8d, 0x60, 0xaa, 0xd8, 0x10, 0x98, 0x87, 0x25, 0x22, 0xfb, 0x60, 0xe9, 0x4e, 0xe9, 0x99, 0x2d, 0xe7, 0x0f, 0x63, 0xd5, 0xc0, 0x02, 0x4c, 0xa9, 0xb6, 0x74, 0xc0, 0xaf, 0x26, 0x2b, 0x6f, 0xcd, 0x52, 0xea, 0x9a, }; static const unsigned char xdh_wei448_4076_sharedsecret[] = { 0x8c, 0x56, 0xe7, 0x41, 0x52, 0x6a, 0xe9, 0xac, 0xb0, 0xa8, 0x53, 0x18, 0x4c, 0x6a, 0x05, 0x85, 0x89, 0x54, 0x65, 0x52, 0x36, 0x43, 0x8e, 0xbe, 0x9b, 0x7c, 0xb5, 0x58, 0x1a, 0x29, 0xf7, 0x57, 0x8f, 0x55, 0x1c, 0xa5, 0x8c, 0x23, 0xc3, 0x21, 0x26, 0xfb, 0xc7, 0x89, 0xa1, 0xa7, 0xc1, 0x92, 0x9f, 0x2d, 0xfd, 0xc2, 0x23, 0x60, 0xdc, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_4076 = { .name = "xdh_wei448_4076", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4076_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4076_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4076_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for BB in multiplication by 9, tcId is 472 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4077 for XDH, tcId is 473 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4077_peerpubkey[] = { 0xc9, 0x4f, 0xfd, 0x5e, 0xb8, 0x00, 0x8e, 0xc4, 0x94, 0x48, 0xab, 0x24, 0xa9, 0x59, 0xc4, 0x04, 0xb0, 0xd1, 0xd6, 0x62, 0xee, 0xe4, 0x67, 0x64, 0x3c, 0x69, 0x6f, 0x8f, 0x11, 0x79, 0x7f, 0xab, 0x49, 0x36, 0xf3, 0x15, 0xd7, 0xb0, 0x62, 0x4f, 0x61, 0x92, 0x1f, 0x5b, 0x3c, 0xb2, 0xdc, 0x6d, 0x2b, 0x75, 0xe9, 0x9a, 0x0d, 0xc9, 0xfb, 0xdc, }; static const unsigned char xdh_wei448_4077_privkey[] = { 0xc4, 0x71, 0x14, 0x37, 0xfb, 0xe2, 0xb5, 0x1a, 0xb1, 0x3e, 0xdd, 0x52, 0x61, 0xd8, 0x80, 0x52, 0x0b, 0xfb, 0x3c, 0x31, 0x37, 0x3d, 0x80, 0x67, 0xb6, 0x44, 0xe0, 0x8a, 0x5b, 0x35, 0x06, 0x48, 0x55, 0x9e, 0x77, 0x26, 0x69, 0x30, 0x30, 0x1b, 0xbb, 0x9f, 0xe5, 0x63, 0x27, 0x74, 0x63, 0x38, 0xf7, 0x3f, 0x82, 0x43, 0x2d, 0x8d, 0x8b, 0x9d, }; static const unsigned char xdh_wei448_4077_sharedsecret[] = { 0x0d, 0xf3, 0x6e, 0x4e, 0xac, 0x40, 0xf7, 0x44, 0xba, 0xa1, 0x38, 0xe9, 0xb8, 0x92, 0x95, 0xde, 0xcd, 0xe5, 0x3d, 0x35, 0xe4, 0xc1, 0xc2, 0x28, 0x9d, 0xb7, 0x93, 0x0f, 0x3b, 0x39, 0xd1, 0xfc, 0xf8, 0x0f, 0x87, 0x1b, 0x69, 0x1c, 0xcc, 0xf3, 0xce, 0xc6, 0xaa, 0xee, 0xc2, 0x1e, 0x67, 0x8a, 0x3d, 0x29, 0xc5, 0x48, 0x58, 0x72, 0x10, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_4077 = { .name = "xdh_wei448_4077", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4077_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4077_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4077_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 473 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4078 for XDH, tcId is 474 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4078_peerpubkey[] = { 0xa3, 0x58, 0xbd, 0x70, 0xe3, 0x11, 0xa9, 0x52, 0x96, 0x7e, 0x01, 0xd3, 0xf1, 0x93, 0xdb, 0x58, 0xb6, 0x9e, 0x2f, 0x5f, 0x7c, 0x8a, 0xc6, 0x38, 0x1b, 0x15, 0x23, 0x55, 0x67, 0x8e, 0x7b, 0x64, 0x47, 0x48, 0x3b, 0x4e, 0x2b, 0xdb, 0x00, 0x2a, 0x11, 0x3c, 0xc2, 0x34, 0x52, 0xfb, 0xe5, 0x8b, 0xfa, 0x8b, 0xf3, 0x07, 0x33, 0x8d, 0xc2, 0xeb, }; static const unsigned char xdh_wei448_4078_privkey[] = { 0x54, 0x0d, 0xbd, 0x4a, 0x7e, 0x99, 0xfc, 0xc2, 0x98, 0x29, 0x3a, 0x85, 0xc6, 0x36, 0xbd, 0x51, 0x30, 0x2a, 0xa1, 0x30, 0xf3, 0x96, 0x75, 0x60, 0xdc, 0xa8, 0x70, 0x7a, 0x7f, 0xdd, 0xb7, 0xd9, 0x97, 0xc2, 0x05, 0x62, 0xb8, 0x81, 0xe5, 0xb6, 0x80, 0x53, 0xea, 0x9e, 0x04, 0x04, 0x83, 0x21, 0x4c, 0xe8, 0xf1, 0x30, 0xc3, 0x5a, 0x58, 0x9c, }; static const unsigned char xdh_wei448_4078_sharedsecret[] = { 0xcb, 0x6c, 0x61, 0xdd, 0x09, 0xaa, 0x76, 0xec, 0x5a, 0xd6, 0xd2, 0xe3, 0x01, 0x0a, 0x04, 0x6f, 0x99, 0x53, 0x76, 0x1d, 0x23, 0x0c, 0x3d, 0xc5, 0x13, 0xfa, 0x73, 0x2a, 0x4e, 0x5e, 0x98, 0xb0, 0xec, 0xc4, 0xd3, 0xeb, 0xc7, 0xe3, 0xe5, 0x94, 0xba, 0x25, 0xf4, 0x6d, 0x1d, 0x50, 0x8a, 0xf2, 0xd3, 0xa9, 0x8e, 0x1a, 0x3b, 0xa6, 0x84, 0x26, }; static const wycheproof_xdh_test xdh_wei448_4078 = { .name = "xdh_wei448_4078", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4078_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4078_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4078_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for BB in multiplication by 9, tcId is 474 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4079 for XDH, tcId is 475 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4079_peerpubkey[] = { 0x46, 0x50, 0x12, 0xb6, 0x85, 0xf2, 0x28, 0x8d, 0xc4, 0xf7, 0x70, 0xf8, 0xbb, 0x51, 0xdc, 0xd2, 0x94, 0xe3, 0x6f, 0x51, 0x8c, 0xdf, 0xad, 0x45, 0xc6, 0x8a, 0x80, 0xb1, 0x11, 0x20, 0xe3, 0x80, 0xaa, 0xaf, 0xa9, 0xf5, 0x9c, 0x57, 0x25, 0xd4, 0x6e, 0xd3, 0xd3, 0x80, 0x58, 0xa2, 0xa4, 0x73, 0xb1, 0x12, 0x4b, 0x75, 0x41, 0x58, 0x87, 0x15, }; static const unsigned char xdh_wei448_4079_privkey[] = { 0x0c, 0x86, 0x4c, 0xbb, 0x26, 0x27, 0x5f, 0xa9, 0x46, 0xae, 0xe2, 0xae, 0x87, 0x2a, 0xa5, 0x4a, 0x82, 0x80, 0x7a, 0x70, 0x40, 0x5f, 0xb7, 0x05, 0xe9, 0x25, 0x16, 0x15, 0x2a, 0xa6, 0x68, 0x3f, 0x4e, 0xd4, 0x22, 0x39, 0xdd, 0x14, 0x73, 0x70, 0xa6, 0xb6, 0x71, 0xed, 0x67, 0x83, 0xce, 0xa5, 0xbe, 0xe2, 0x4c, 0xd4, 0x33, 0xe8, 0x64, 0x91, }; static const unsigned char xdh_wei448_4079_sharedsecret[] = { 0xc2, 0xd3, 0x31, 0x77, 0xe5, 0x2d, 0x27, 0x22, 0xd2, 0xc2, 0xe4, 0x4f, 0x2e, 0x15, 0xdd, 0x0d, 0xb3, 0x32, 0xe7, 0xde, 0x9c, 0x5e, 0x93, 0x07, 0xe7, 0xe0, 0xfb, 0xe7, 0x12, 0x1f, 0x1e, 0xc7, 0xd1, 0x48, 0x87, 0xf1, 0x9b, 0x97, 0x40, 0x96, 0x78, 0x4c, 0x45, 0x8e, 0x32, 0xf2, 0xe8, 0x10, 0x2c, 0x0a, 0x13, 0xb0, 0x0c, 0x8f, 0x61, 0x9e, }; static const wycheproof_xdh_test xdh_wei448_4079 = { .name = "xdh_wei448_4079", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4079_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4079_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4079_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 475 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4080 for XDH, tcId is 476 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4080_peerpubkey[] = { 0x0d, 0x05, 0x33, 0xc5, 0x14, 0xcc, 0x66, 0x1e, 0xd7, 0x4a, 0xff, 0x5c, 0xb9, 0x77, 0x18, 0x76, 0xb2, 0xf1, 0xb0, 0x31, 0x79, 0x45, 0x93, 0xbf, 0xd9, 0xb1, 0xf0, 0x15, 0x5b, 0x59, 0xe5, 0x3c, 0x54, 0xa1, 0x43, 0x58, 0xea, 0x01, 0x03, 0x4b, 0xf0, 0x73, 0x9b, 0x78, 0x05, 0x89, 0xc3, 0xb2, 0x14, 0xa6, 0x54, 0x93, 0xd4, 0xb2, 0x84, 0x64, }; static const unsigned char xdh_wei448_4080_privkey[] = { 0xc4, 0x36, 0x40, 0x08, 0x67, 0x58, 0x93, 0x1b, 0x8f, 0x8b, 0xdb, 0x4f, 0x8a, 0xc1, 0xe9, 0x48, 0x21, 0x6e, 0x36, 0x3b, 0x57, 0x23, 0x6b, 0x9e, 0xbf, 0xf8, 0x20, 0xc8, 0x69, 0x1d, 0xd0, 0x76, 0x50, 0x7e, 0xa6, 0x50, 0xbc, 0x7f, 0x98, 0x43, 0x84, 0x6a, 0x26, 0xd7, 0xd3, 0xa5, 0xd5, 0x57, 0x6c, 0xdd, 0xe4, 0x88, 0x68, 0xd4, 0x32, 0x9b, }; static const unsigned char xdh_wei448_4080_sharedsecret[] = { 0x92, 0x93, 0xaa, 0x34, 0x80, 0x47, 0xd1, 0x14, 0x29, 0xf8, 0xc6, 0x6d, 0x3b, 0x05, 0x07, 0x0b, 0xd5, 0x88, 0x8b, 0x22, 0x18, 0xb2, 0xe6, 0x8c, 0xd1, 0x50, 0x95, 0x2b, 0x5a, 0x71, 0x0f, 0x0f, 0x87, 0x17, 0x6c, 0xd9, 0x3c, 0x18, 0x39, 0xc3, 0xa1, 0x45, 0xd0, 0x3c, 0x49, 0x77, 0x20, 0xe6, 0xf9, 0xcd, 0xe0, 0x10, 0x4c, 0xea, 0x1c, 0x09, }; static const wycheproof_xdh_test xdh_wei448_4080 = { .name = "xdh_wei448_4080", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4080_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4080_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4080_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 476 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4081 for XDH, tcId is 477 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4081_peerpubkey[] = { 0xe2, 0xfe, 0xdb, 0x0f, 0x28, 0xab, 0x05, 0xf2, 0xf6, 0xd9, 0xd8, 0x1c, 0x4b, 0xa9, 0xc6, 0xc8, 0x15, 0xc6, 0x25, 0x42, 0xdc, 0xdb, 0x90, 0x39, 0x83, 0x4d, 0x2a, 0x28, 0x37, 0x34, 0xfb, 0x71, 0x5a, 0x90, 0xf4, 0x03, 0x85, 0x1b, 0x16, 0x25, 0x98, 0x60, 0xb5, 0x72, 0xe4, 0x35, 0x2c, 0x60, 0xbb, 0xa1, 0x87, 0x9c, 0x7e, 0xdf, 0xa4, 0x7d, }; static const unsigned char xdh_wei448_4081_privkey[] = { 0x14, 0xbf, 0x5e, 0x4a, 0xdb, 0x42, 0xa3, 0xf0, 0xf9, 0x4e, 0x75, 0x31, 0xa8, 0x1a, 0xc9, 0x94, 0xd5, 0x72, 0x9c, 0x6f, 0x51, 0xc6, 0xd8, 0xba, 0xe1, 0xc2, 0xa6, 0x9e, 0xcd, 0x76, 0x59, 0xac, 0x31, 0xb4, 0x8d, 0x35, 0xd9, 0x22, 0x85, 0x76, 0xa4, 0x8e, 0x9e, 0x65, 0x8d, 0xe2, 0xc0, 0xaa, 0x9d, 0x59, 0xef, 0x3f, 0x08, 0xd3, 0x8f, 0x97, }; static const unsigned char xdh_wei448_4081_sharedsecret[] = { 0x35, 0x17, 0xa6, 0x63, 0xcf, 0x3a, 0x34, 0xda, 0x5d, 0xa4, 0xa1, 0x0e, 0xc0, 0x55, 0x33, 0xba, 0xb7, 0xea, 0x0b, 0x22, 0x35, 0x29, 0xc4, 0x90, 0x57, 0xb9, 0xfb, 0xb9, 0x60, 0xc4, 0xdd, 0xde, 0xb2, 0x15, 0x0a, 0x52, 0x26, 0x51, 0x96, 0x4b, 0x20, 0xb6, 0x35, 0x8f, 0xea, 0xc9, 0x20, 0x3a, 0xa0, 0x14, 0xab, 0x01, 0x54, 0x8e, 0xde, 0x2b, }; static const wycheproof_xdh_test xdh_wei448_4081 = { .name = "xdh_wei448_4081", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4081_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4081_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4081_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 477 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4082 for XDH, tcId is 478 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4082_peerpubkey[] = { 0x06, 0x0a, 0x05, 0x9e, 0xc2, 0x51, 0x40, 0x62, 0x05, 0xa5, 0x70, 0x19, 0xa8, 0xec, 0xa7, 0xaa, 0xa9, 0xef, 0xdc, 0xc5, 0x32, 0x77, 0xa8, 0x9b, 0x55, 0x2e, 0x64, 0x09, 0x98, 0xad, 0x23, 0x83, 0x43, 0x1b, 0x94, 0xec, 0x58, 0xeb, 0xef, 0x0d, 0xe3, 0xa7, 0x68, 0x0f, 0xdf, 0x5e, 0x56, 0xb9, 0xd8, 0x9b, 0x91, 0x42, 0x1f, 0xf4, 0x33, 0x83, }; static const unsigned char xdh_wei448_4082_privkey[] = { 0xac, 0x93, 0xa2, 0x1d, 0x29, 0xd3, 0x71, 0x8d, 0xd0, 0x33, 0x15, 0xea, 0x0a, 0x47, 0x70, 0xc3, 0x1d, 0xdc, 0x8a, 0xce, 0x30, 0x4e, 0x3e, 0xfd, 0x6e, 0xf9, 0x3e, 0x3d, 0x1b, 0x80, 0x35, 0x29, 0x9f, 0x6b, 0xc6, 0x59, 0xba, 0xcf, 0x14, 0xc1, 0x3e, 0x84, 0x88, 0x10, 0xd7, 0xd8, 0x4d, 0x2b, 0xbb, 0xd4, 0xa1, 0x07, 0x86, 0xc8, 0x6c, 0x98, }; static const unsigned char xdh_wei448_4082_sharedsecret[] = { 0xd3, 0x6c, 0x91, 0x9a, 0xb7, 0xe5, 0x36, 0xe9, 0x58, 0xc9, 0x5e, 0xe9, 0xa7, 0x89, 0xba, 0x37, 0xaa, 0xe9, 0x97, 0x4d, 0xd3, 0xa2, 0x68, 0x07, 0x21, 0xfa, 0x69, 0x52, 0x59, 0x88, 0xa0, 0x25, 0x7c, 0x3f, 0x65, 0x4b, 0x97, 0xd4, 0x50, 0xdc, 0x88, 0xde, 0xda, 0x59, 0xd2, 0x6d, 0x8f, 0x09, 0x58, 0xf8, 0x0c, 0x75, 0x32, 0x8f, 0xba, 0x31, }; static const wycheproof_xdh_test xdh_wei448_4082 = { .name = "xdh_wei448_4082", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4082_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4082_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4082_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 478 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4083 for XDH, tcId is 479 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4083_peerpubkey[] = { 0x91, 0x82, 0x78, 0x4a, 0x25, 0x5f, 0x07, 0x27, 0xb6, 0xbc, 0x85, 0x92, 0xbd, 0xd5, 0x45, 0xdd, 0x49, 0x37, 0x10, 0xa1, 0x51, 0x45, 0xe8, 0x6e, 0x16, 0x08, 0x60, 0xc5, 0x27, 0xd9, 0x88, 0x47, 0x84, 0xd8, 0x47, 0x0a, 0x56, 0x31, 0xac, 0x8d, 0x8f, 0xe9, 0x83, 0xfa, 0x17, 0xec, 0x58, 0x5d, 0x2f, 0x3b, 0x35, 0xe6, 0x39, 0x7b, 0x6f, 0xa1, }; static const unsigned char xdh_wei448_4083_privkey[] = { 0x88, 0xae, 0x17, 0x46, 0x81, 0xb5, 0xaa, 0x06, 0x60, 0x2b, 0xf4, 0x3b, 0x06, 0x0a, 0x91, 0x5f, 0xb3, 0xbc, 0xd7, 0x8f, 0xb2, 0x3f, 0x9d, 0xa1, 0xc0, 0x2e, 0x7f, 0x9a, 0xa8, 0x85, 0x02, 0x74, 0x6e, 0xea, 0x95, 0xb1, 0x1a, 0xef, 0x6f, 0x8a, 0xd1, 0x5e, 0x49, 0x2c, 0x3c, 0xfa, 0xfa, 0xd7, 0xc0, 0x04, 0xd5, 0x92, 0x0f, 0xe1, 0x27, 0x96, }; static const unsigned char xdh_wei448_4083_sharedsecret[] = { 0xfc, 0xed, 0xdd, 0xad, 0x35, 0x58, 0x60, 0x19, 0x33, 0xbe, 0x90, 0x34, 0x41, 0x08, 0xf3, 0xd5, 0x5a, 0x2b, 0x92, 0x4f, 0xc1, 0x6e, 0x7f, 0xdd, 0xb3, 0xe2, 0x6c, 0x6d, 0xd4, 0x1c, 0xd9, 0xf6, 0xc2, 0xf6, 0xed, 0x34, 0x2b, 0x10, 0x95, 0x30, 0x55, 0xf8, 0xe3, 0x8e, 0xd2, 0x6d, 0x3e, 0x95, 0x25, 0x98, 0xeb, 0x80, 0xd1, 0x97, 0xf1, 0xa7, }; static const wycheproof_xdh_test xdh_wei448_4083 = { .name = "xdh_wei448_4083", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4083_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4083_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4083_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 479 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4084 for XDH, tcId is 480 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4084_peerpubkey[] = { 0x83, 0x1e, 0x67, 0x3a, 0xaa, 0xc4, 0x62, 0xd0, 0xb8, 0xef, 0x04, 0x72, 0xe5, 0x64, 0xb0, 0xeb, 0x85, 0x81, 0x65, 0x24, 0x2a, 0x7c, 0x30, 0xef, 0x0d, 0x89, 0x7f, 0x39, 0xb1, 0x2e, 0xd0, 0xec, 0x34, 0x6e, 0xf2, 0x02, 0x49, 0x17, 0x2c, 0x7d, 0x60, 0x1b, 0x92, 0x81, 0x81, 0x50, 0x4a, 0x2a, 0xe8, 0xcf, 0x38, 0xc5, 0x72, 0x9a, 0x1e, 0xb4, }; static const unsigned char xdh_wei448_4084_privkey[] = { 0xf8, 0x17, 0xa0, 0x22, 0x86, 0x23, 0xeb, 0xb3, 0x13, 0x1e, 0xc3, 0x3b, 0x41, 0xd9, 0x0c, 0x34, 0x7e, 0x9e, 0xfb, 0xe4, 0x6b, 0xb8, 0x10, 0x51, 0xa2, 0xfd, 0xa3, 0x0b, 0x49, 0x99, 0x3a, 0x8e, 0x88, 0x27, 0x2e, 0xc8, 0x32, 0x05, 0x22, 0x93, 0x0c, 0x20, 0x6a, 0x68, 0x4c, 0x77, 0xfd, 0xbd, 0x42, 0xce, 0xe2, 0xce, 0x47, 0x06, 0x6d, 0x93, }; static const unsigned char xdh_wei448_4084_sharedsecret[] = { 0xb5, 0x71, 0xd1, 0xba, 0x1b, 0x21, 0xa4, 0xf8, 0x22, 0x81, 0x4e, 0x47, 0x8e, 0x3c, 0xcd, 0x1f, 0x5d, 0x9d, 0xb8, 0x56, 0x3a, 0x9c, 0x14, 0x13, 0x81, 0xab, 0xd8, 0xc3, 0x96, 0x22, 0xd8, 0x66, 0xaf, 0x11, 0x1f, 0xdb, 0xd9, 0x4a, 0x97, 0xb1, 0x51, 0x78, 0x1d, 0x96, 0xfa, 0xd0, 0xd2, 0xf9, 0x21, 0x51, 0x9e, 0x77, 0x3e, 0x36, 0x79, 0x76, }; static const wycheproof_xdh_test xdh_wei448_4084 = { .name = "xdh_wei448_4084", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4084_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4084_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4084_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 480 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4085 for XDH, tcId is 481 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4085_peerpubkey[] = { 0x7e, 0x2a, 0xf5, 0xdc, 0xfa, 0xc2, 0xb3, 0xb2, 0xa9, 0x94, 0x0c, 0x41, 0x10, 0x75, 0x9a, 0x35, 0x89, 0xc4, 0x6c, 0xdd, 0x3e, 0xc1, 0x34, 0x88, 0x50, 0x02, 0xe8, 0xef, 0xf0, 0x0a, 0x02, 0x15, 0xb7, 0x44, 0xe9, 0xf6, 0xf3, 0x6d, 0xa6, 0xe0, 0xa1, 0x98, 0xd8, 0x29, 0xae, 0xb0, 0xf7, 0xb0, 0x37, 0x62, 0x79, 0x92, 0x6c, 0x64, 0x6e, 0xbd, }; static const unsigned char xdh_wei448_4085_privkey[] = { 0xf0, 0x3e, 0x20, 0x68, 0x6c, 0xc7, 0xe1, 0xe6, 0x57, 0x6d, 0x6c, 0x69, 0x0a, 0x18, 0x88, 0x15, 0x4d, 0x30, 0x71, 0xef, 0x41, 0x4f, 0xdd, 0x1b, 0x1e, 0x9d, 0xdf, 0x6a, 0xf8, 0x93, 0xd1, 0x95, 0xc6, 0x2e, 0xcf, 0x66, 0xd9, 0xcf, 0xb7, 0x96, 0x00, 0xd5, 0xd6, 0x64, 0x52, 0x7d, 0x69, 0xfb, 0xcf, 0x26, 0x76, 0xb4, 0x87, 0x23, 0x9b, 0x9a, }; static const unsigned char xdh_wei448_4085_sharedsecret[] = { 0x26, 0xf7, 0x64, 0xe8, 0x74, 0x73, 0x3b, 0xf7, 0x54, 0x15, 0x72, 0xe0, 0xc5, 0x44, 0xf6, 0xe2, 0x2a, 0xac, 0x1d, 0x33, 0xd5, 0x46, 0x4f, 0x62, 0x9a, 0xdd, 0xd6, 0xca, 0x86, 0x0b, 0x1d, 0x7c, 0xad, 0x7c, 0x83, 0xd7, 0xac, 0x67, 0x46, 0x50, 0x87, 0x35, 0x95, 0xd5, 0xa2, 0x1f, 0xac, 0xc7, 0xa8, 0xcf, 0x2d, 0xfc, 0x24, 0x9e, 0x6d, 0xc7, }; static const wycheproof_xdh_test xdh_wei448_4085 = { .name = "xdh_wei448_4085", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4085_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4085_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4085_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 481 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4086 for XDH, tcId is 482 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4086_peerpubkey[] = { 0x60, 0xef, 0xab, 0xd2, 0x57, 0x7f, 0xdc, 0xbf, 0x51, 0x90, 0x9e, 0x08, 0x2a, 0x39, 0x53, 0x38, 0x5f, 0xa8, 0x00, 0x1b, 0xca, 0xb7, 0x33, 0x55, 0xca, 0x23, 0xb7, 0x25, 0xad, 0xd5, 0x59, 0x5c, 0x31, 0x81, 0x22, 0x13, 0x30, 0x3d, 0x3b, 0xa4, 0x25, 0x89, 0xa2, 0xad, 0xc2, 0x21, 0x30, 0x80, 0xb7, 0xdf, 0x73, 0x32, 0x29, 0x5a, 0xcd, 0xd1, }; static const unsigned char xdh_wei448_4086_privkey[] = { 0xb0, 0x4c, 0x1f, 0xd2, 0xa1, 0xca, 0x66, 0xd4, 0x96, 0xbd, 0xd6, 0x64, 0x54, 0x38, 0x29, 0x18, 0x01, 0x50, 0x4e, 0xaa, 0x7b, 0xe8, 0x28, 0xe9, 0x25, 0x4c, 0xe7, 0x52, 0x08, 0x26, 0x7b, 0x13, 0xc7, 0x9e, 0xe8, 0xae, 0x8f, 0x38, 0x22, 0xba, 0x07, 0xd3, 0x4d, 0xcf, 0x23, 0xc0, 0x64, 0x2e, 0x7d, 0x66, 0x8b, 0x9e, 0xc1, 0xc0, 0x94, 0x99, }; static const unsigned char xdh_wei448_4086_sharedsecret[] = { 0xbe, 0x71, 0x31, 0x18, 0x7a, 0xeb, 0xfe, 0x8c, 0xa1, 0x03, 0xec, 0x44, 0xed, 0x43, 0xda, 0x73, 0xa8, 0x68, 0x14, 0x00, 0xfb, 0xcd, 0x5f, 0x3b, 0xae, 0x3e, 0xb0, 0x96, 0x24, 0x20, 0xe9, 0xfc, 0x9f, 0x1d, 0x2d, 0x3b, 0x0d, 0x51, 0xae, 0x9c, 0xc0, 0x99, 0x88, 0x3e, 0x44, 0xd8, 0xba, 0xe1, 0x4a, 0x91, 0x3a, 0x7a, 0x47, 0x15, 0x36, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_4086 = { .name = "xdh_wei448_4086", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4086_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4086_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4086_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for AA in multiplication by 9, tcId is 482 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4087 for XDH, tcId is 483 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4087_peerpubkey[] = { 0xe7, 0x14, 0xd2, 0xb2, 0x8b, 0x2b, 0x5e, 0xf5, 0x81, 0x5e, 0x8f, 0x3e, 0xd0, 0x55, 0x4a, 0x6e, 0x61, 0xed, 0x26, 0x86, 0x12, 0xa8, 0xf6, 0xa3, 0x76, 0x40, 0x23, 0xd0, 0x0c, 0x76, 0x09, 0x8a, 0x49, 0xea, 0xf8, 0xa5, 0xdd, 0xc4, 0x16, 0x4b, 0x1b, 0xef, 0x39, 0xab, 0x6d, 0xa8, 0x3a, 0x7e, 0xb6, 0x70, 0x3b, 0xaf, 0x3a, 0x57, 0x5d, 0xe9, }; static const unsigned char xdh_wei448_4087_privkey[] = { 0x8c, 0x2a, 0xc1, 0xa1, 0x99, 0x01, 0xb8, 0x47, 0x16, 0x42, 0xf8, 0x59, 0xe0, 0x50, 0xf1, 0x86, 0x16, 0x32, 0x3f, 0x80, 0xc7, 0x57, 0xd0, 0x88, 0x6a, 0xfc, 0x64, 0x06, 0xa4, 0x42, 0x45, 0x44, 0x15, 0xc9, 0x58, 0x17, 0x82, 0x97, 0xca, 0xe5, 0xff, 0x2f, 0xf5, 0xc3, 0x45, 0x30, 0x8b, 0x10, 0xa3, 0x2b, 0xf8, 0x32, 0x69, 0xcd, 0xfb, 0x9f, }; static const unsigned char xdh_wei448_4087_sharedsecret[] = { 0x00, 0x80, 0xc5, 0xad, 0x23, 0xc5, 0x62, 0x12, 0x92, 0x06, 0xab, 0x97, 0x4f, 0x05, 0x4e, 0x24, 0xd2, 0x39, 0xee, 0xa4, 0xdc, 0x4f, 0xcb, 0x54, 0x68, 0x03, 0x8b, 0x62, 0x98, 0xd3, 0xdc, 0x9d, 0x9f, 0xe5, 0x71, 0x73, 0xbd, 0x04, 0x0a, 0x5e, 0xa6, 0xd6, 0x21, 0x50, 0x97, 0xff, 0x88, 0x46, 0x95, 0x8c, 0xc5, 0x6d, 0xae, 0x88, 0x23, 0x39, }; static const wycheproof_xdh_test xdh_wei448_4087 = { .name = "xdh_wei448_4087", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4087_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4087_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4087_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for AA in multiplication by 9, tcId is 483 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4088 for XDH, tcId is 484 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4088_peerpubkey[] = { 0x38, 0x94, 0x95, 0xc3, 0x5c, 0x2f, 0xf3, 0xf3, 0x67, 0xa5, 0x92, 0x68, 0xee, 0xc8, 0x13, 0x02, 0x56, 0x54, 0x2f, 0x5f, 0x66, 0xfc, 0x97, 0xbd, 0x49, 0x9e, 0xf7, 0x0b, 0x15, 0x65, 0xb6, 0xe7, 0x52, 0xb6, 0x84, 0xe1, 0x86, 0x49, 0x15, 0x29, 0x1f, 0xd5, 0x2a, 0xef, 0x62, 0x8f, 0x51, 0x15, 0x4d, 0x0c, 0xd8, 0x0b, 0x72, 0x10, 0xe1, 0x26, }; static const unsigned char xdh_wei448_4088_privkey[] = { 0x78, 0xc8, 0xa7, 0xf5, 0xc5, 0x5c, 0x47, 0x55, 0x51, 0x7a, 0x6d, 0x67, 0x9b, 0x5b, 0x9e, 0xab, 0x69, 0x3b, 0xbb, 0x20, 0xb7, 0xc8, 0x7f, 0x0f, 0x14, 0x03, 0x70, 0x27, 0x89, 0xcf, 0xe0, 0x68, 0x42, 0x44, 0xc2, 0xf1, 0x9f, 0xd9, 0xdf, 0xf6, 0x7c, 0x95, 0x22, 0x88, 0x12, 0xa3, 0x08, 0x23, 0x7b, 0x4a, 0xb6, 0xaf, 0x23, 0xf0, 0xa3, 0x9a, }; static const unsigned char xdh_wei448_4088_sharedsecret[] = { 0xd5, 0x8f, 0xce, 0xfc, 0x77, 0x09, 0x28, 0x43, 0x0d, 0x62, 0x8f, 0x7f, 0x20, 0x24, 0x1f, 0x0c, 0x40, 0x18, 0x14, 0xe6, 0xfd, 0x8a, 0x54, 0xec, 0x27, 0x2b, 0x77, 0x9a, 0xc1, 0x5b, 0x08, 0xe6, 0x68, 0x96, 0x94, 0xd2, 0xda, 0xda, 0x97, 0x62, 0x05, 0x31, 0x42, 0x5d, 0x8e, 0x05, 0x29, 0xca, 0xb4, 0x0e, 0x80, 0x86, 0x5c, 0x33, 0x03, 0xc4, }; static const wycheproof_xdh_test xdh_wei448_4088 = { .name = "xdh_wei448_4088", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4088_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4088_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4088_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for E in multiplication by 9, tcId is 484 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4089 for XDH, tcId is 485 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4089_peerpubkey[] = { 0x4a, 0xd6, 0x6b, 0x90, 0xa8, 0xbe, 0xb6, 0x03, 0x4b, 0xe2, 0x83, 0x8f, 0xf7, 0xad, 0x78, 0xad, 0xf8, 0x7c, 0xc8, 0xb8, 0xe5, 0xc6, 0x3a, 0x21, 0x1f, 0x55, 0x83, 0x45, 0x91, 0xff, 0x5f, 0x5e, 0x4f, 0x82, 0xfd, 0x10, 0xda, 0x0a, 0x70, 0x83, 0x6d, 0x3c, 0x7e, 0x3c, 0xee, 0xec, 0xb7, 0xd8, 0xc8, 0xf0, 0x2c, 0x51, 0xbd, 0xfe, 0x50, 0x3e, }; static const unsigned char xdh_wei448_4089_privkey[] = { 0x30, 0xf5, 0xbf, 0xc1, 0x6c, 0xd2, 0x35, 0x01, 0x71, 0x6a, 0x6c, 0x56, 0x6a, 0x13, 0xbe, 0xe3, 0x2b, 0x08, 0x2c, 0xdb, 0xb6, 0x2f, 0x09, 0x15, 0x9e, 0x3b, 0x57, 0x23, 0xcb, 0xf5, 0x72, 0xdb, 0xa4, 0x3f, 0xc4, 0xf4, 0x34, 0x3b, 0x9d, 0x0b, 0xb1, 0x84, 0xf1, 0xf8, 0xda, 0x11, 0x0d, 0x77, 0x94, 0xab, 0x63, 0xdf, 0x23, 0xcb, 0xcf, 0x96, }; static const unsigned char xdh_wei448_4089_sharedsecret[] = { 0xfb, 0xd6, 0xc5, 0x31, 0x3c, 0x11, 0x14, 0xa5, 0x05, 0x38, 0x2b, 0x68, 0xab, 0xe7, 0xd0, 0x79, 0x86, 0x43, 0xa3, 0x07, 0x05, 0x5f, 0x4b, 0x5a, 0xb9, 0x48, 0xf5, 0x0d, 0x7f, 0x36, 0xce, 0x20, 0x1b, 0x3f, 0x52, 0x2c, 0xfa, 0x34, 0xf0, 0xa0, 0x8d, 0x00, 0x88, 0x1b, 0x6d, 0x7a, 0x67, 0x88, 0xc8, 0x83, 0x19, 0x4e, 0xe1, 0x16, 0xe8, 0x72, }; static const wycheproof_xdh_test xdh_wei448_4089 = { .name = "xdh_wei448_4089", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4089_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4089_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4089_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 485 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4090 for XDH, tcId is 486 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4090_peerpubkey[] = { 0xca, 0x86, 0xee, 0x9b, 0x71, 0x86, 0x46, 0xba, 0x0c, 0x3e, 0x0e, 0x89, 0xf0, 0x6b, 0xbe, 0x08, 0xad, 0x34, 0xe3, 0xc2, 0x69, 0x82, 0x82, 0x61, 0x19, 0x0d, 0x05, 0xb2, 0x55, 0x0a, 0x4e, 0xb1, 0x7f, 0x9c, 0xe1, 0x4c, 0xbe, 0x0c, 0x95, 0xec, 0x99, 0xa5, 0xc9, 0x0c, 0x70, 0x71, 0xf2, 0xfd, 0xdc, 0x0b, 0xdb, 0x3b, 0xb2, 0xc0, 0x49, 0x71, }; static const unsigned char xdh_wei448_4090_privkey[] = { 0x9c, 0x36, 0xb9, 0x4f, 0x80, 0xfb, 0x5a, 0x02, 0x5d, 0x61, 0xcc, 0x8f, 0x14, 0x38, 0xd9, 0x1e, 0xbc, 0x22, 0x2c, 0x34, 0x7e, 0xc6, 0xbd, 0xdc, 0x2e, 0x45, 0xbe, 0xda, 0x4a, 0xc1, 0x47, 0xb2, 0xa9, 0x1e, 0x74, 0x48, 0x12, 0x74, 0x89, 0xbc, 0x1b, 0x45, 0x45, 0x1b, 0xec, 0x84, 0x38, 0x89, 0xf3, 0x8f, 0xa4, 0x46, 0x7b, 0xe5, 0x7e, 0x9b, }; static const unsigned char xdh_wei448_4090_sharedsecret[] = { 0xda, 0xb7, 0x42, 0x1d, 0x74, 0x26, 0x92, 0x20, 0x00, 0x19, 0x34, 0x23, 0x5b, 0x2d, 0x3f, 0xe5, 0xdc, 0xf7, 0x57, 0x17, 0xb3, 0x80, 0xbe, 0x3b, 0xbf, 0xa9, 0x6a, 0x76, 0x52, 0x9e, 0xb9, 0x27, 0x09, 0xfd, 0xbc, 0xce, 0x5d, 0x30, 0x58, 0x3f, 0x5d, 0x9e, 0x99, 0x9b, 0xaa, 0x78, 0x81, 0x5b, 0x10, 0x30, 0x0d, 0x60, 0x99, 0x6b, 0x59, 0xcd, }; static const wycheproof_xdh_test xdh_wei448_4090 = { .name = "xdh_wei448_4090", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4090_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4090_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4090_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 486 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4091 for XDH, tcId is 487 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4091_peerpubkey[] = { 0xdf, 0xc3, 0x85, 0x3b, 0xd4, 0x94, 0xac, 0x80, 0xbd, 0x25, 0x07, 0x0a, 0x7e, 0x90, 0xfd, 0x89, 0xa7, 0xbf, 0x29, 0x9b, 0x63, 0x97, 0xeb, 0x2a, 0x73, 0x3c, 0x7c, 0x64, 0x29, 0xba, 0x51, 0x0a, 0xf7, 0x42, 0x26, 0xb5, 0xad, 0x52, 0x08, 0xb7, 0x51, 0x3b, 0xbc, 0x53, 0x97, 0x80, 0x63, 0x73, 0x4e, 0x2e, 0x28, 0xe0, 0x2e, 0xee, 0x14, 0x76, }; static const unsigned char xdh_wei448_4091_privkey[] = { 0xb4, 0xd8, 0xc1, 0xbd, 0x4f, 0xe2, 0x23, 0x2b, 0xfd, 0x8f, 0x3a, 0x42, 0xe4, 0xf2, 0xc6, 0x07, 0x97, 0x64, 0x89, 0xa1, 0x81, 0x14, 0x9f, 0xbd, 0x0b, 0xa8, 0xe8, 0xed, 0x68, 0xc4, 0x4f, 0x78, 0x6d, 0x05, 0xeb, 0xe8, 0x90, 0xad, 0xab, 0x4b, 0x23, 0x32, 0x62, 0xed, 0x9c, 0x48, 0x2d, 0x84, 0xcf, 0xf4, 0x2f, 0xb8, 0xbc, 0x0e, 0x1a, 0x94, }; static const unsigned char xdh_wei448_4091_sharedsecret[] = { 0x46, 0x9d, 0x5e, 0x9e, 0x2b, 0xa6, 0x76, 0xe2, 0x47, 0xaa, 0x86, 0x2e, 0xa2, 0x9b, 0xbf, 0x2b, 0xa4, 0xf8, 0xa8, 0x50, 0x09, 0x8c, 0x10, 0x32, 0x0b, 0xf4, 0xa2, 0x86, 0xbd, 0xc0, 0x9c, 0x53, 0x13, 0x14, 0x85, 0xc2, 0xdc, 0x9c, 0x36, 0x63, 0xe7, 0x66, 0x10, 0x46, 0x8f, 0x13, 0x9b, 0x58, 0x6d, 0x61, 0xdd, 0xc9, 0x24, 0x22, 0x32, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_4091 = { .name = "xdh_wei448_4091", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4091_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4091_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4091_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 487 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4092 for XDH, tcId is 488 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4092_peerpubkey[] = { 0xee, 0xfb, 0xdd, 0xe8, 0x82, 0x1e, 0x5d, 0xb1, 0xb3, 0x0d, 0x73, 0xbc, 0x76, 0xbe, 0x3e, 0x18, 0xfc, 0x91, 0xf3, 0x49, 0x81, 0x16, 0x24, 0x3e, 0x9f, 0x86, 0xcc, 0xcd, 0xc9, 0x8c, 0xc7, 0x8b, 0x18, 0x93, 0x72, 0xab, 0x66, 0x96, 0xee, 0x18, 0xd2, 0xca, 0x74, 0x90, 0x10, 0x5a, 0xd0, 0x3b, 0x5f, 0x50, 0xc2, 0x97, 0x83, 0xab, 0x3a, 0x96, }; static const unsigned char xdh_wei448_4092_privkey[] = { 0x08, 0x44, 0x42, 0xb7, 0x21, 0x82, 0xb7, 0xcc, 0x53, 0x21, 0xf6, 0x1f, 0x3c, 0xef, 0x93, 0x75, 0x14, 0xbd, 0xc1, 0x24, 0x60, 0x28, 0xa0, 0x2e, 0x8f, 0xc7, 0xf3, 0x06, 0x0d, 0x52, 0x8c, 0xc1, 0x34, 0xa5, 0x93, 0x85, 0xdd, 0x53, 0x4c, 0xe1, 0xe8, 0x2c, 0xef, 0x27, 0xcd, 0xb0, 0x0f, 0xae, 0x66, 0x43, 0xe3, 0xb2, 0x16, 0x7f, 0x1c, 0x9d, }; static const unsigned char xdh_wei448_4092_sharedsecret[] = { 0xe3, 0x01, 0x90, 0x8a, 0x8c, 0xb6, 0xd1, 0xd8, 0xef, 0x9c, 0x1c, 0x55, 0xe7, 0x27, 0x83, 0x90, 0x95, 0x07, 0x19, 0xd0, 0x89, 0xd9, 0x46, 0xca, 0x9d, 0x6e, 0x88, 0x2f, 0x8f, 0x91, 0x75, 0xc8, 0x4c, 0xad, 0xd4, 0xff, 0x2a, 0x7a, 0xbf, 0xd8, 0x04, 0xb5, 0xb7, 0x2f, 0x2a, 0x1d, 0xe7, 0x1b, 0x1a, 0x92, 0xaf, 0x20, 0xe1, 0x68, 0x07, 0x68, }; static const wycheproof_xdh_test xdh_wei448_4092 = { .name = "xdh_wei448_4092", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4092_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4092_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4092_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 488 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4093 for XDH, tcId is 489 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4093_peerpubkey[] = { 0x54, 0x2c, 0xe8, 0x33, 0xd8, 0x48, 0x92, 0x09, 0x36, 0x23, 0xf9, 0x17, 0x4a, 0x45, 0x08, 0x80, 0xc1, 0x3a, 0x66, 0x1c, 0xa0, 0x2e, 0x44, 0x00, 0x26, 0x7d, 0xf6, 0x3d, 0x66, 0x1f, 0x6a, 0xc7, 0xa8, 0x5f, 0x0f, 0x7e, 0x06, 0x1e, 0x67, 0xb3, 0x9b, 0x7f, 0x25, 0x9e, 0xff, 0xf8, 0x04, 0xfe, 0xba, 0x6d, 0x05, 0x54, 0xe8, 0xc0, 0xf4, 0xfd, }; static const unsigned char xdh_wei448_4093_privkey[] = { 0xb8, 0x15, 0x64, 0x51, 0xd5, 0x83, 0xb5, 0x08, 0xd5, 0x26, 0x5b, 0x9c, 0x37, 0x3f, 0xbc, 0xa9, 0x6f, 0xb4, 0x77, 0x0d, 0x56, 0xb8, 0x28, 0x53, 0x4a, 0xfd, 0xba, 0x29, 0xd3, 0xcb, 0x9f, 0xf0, 0x20, 0x96, 0x94, 0xfa, 0xb2, 0x1c, 0xf9, 0xcf, 0x0a, 0x61, 0xbd, 0x49, 0x83, 0x60, 0x2c, 0xc3, 0x46, 0x7a, 0x3e, 0xe3, 0xbe, 0xb5, 0x3f, 0x96, }; static const unsigned char xdh_wei448_4093_sharedsecret[] = { 0x03, 0xe7, 0x90, 0x68, 0xc4, 0x0a, 0x41, 0x33, 0xc4, 0x90, 0xed, 0xb7, 0x03, 0xdd, 0x51, 0xf8, 0x96, 0x5a, 0xd5, 0xf5, 0x9a, 0xad, 0x1b, 0x04, 0xb3, 0xe1, 0x32, 0x77, 0x50, 0x74, 0x8e, 0x64, 0x81, 0xb0, 0xb6, 0x3e, 0x54, 0xcf, 0xe1, 0x01, 0xee, 0xb6, 0x48, 0xf9, 0x30, 0x7b, 0x09, 0xb0, 0xde, 0xc1, 0xa7, 0x47, 0x2f, 0xa5, 0x72, 0xb3, }; static const wycheproof_xdh_test xdh_wei448_4093 = { .name = "xdh_wei448_4093", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4093_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4093_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4093_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for E in multiplication by 9, tcId is 489 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4094 for XDH, tcId is 490 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4094_peerpubkey[] = { 0x1e, 0xfd, 0xb8, 0x58, 0xaf, 0x19, 0x67, 0xc0, 0xe7, 0x42, 0xee, 0xbe, 0xe5, 0x63, 0x66, 0x7b, 0xfb, 0xc8, 0x96, 0x66, 0x60, 0x6e, 0x39, 0x5e, 0xcd, 0x39, 0x03, 0xb3, 0x92, 0x3b, 0x2a, 0x8f, 0x99, 0x44, 0xeb, 0x0d, 0x07, 0xfe, 0xbc, 0xe9, 0xdf, 0xe7, 0x04, 0x9a, 0xfc, 0x76, 0xb4, 0xfd, 0x1c, 0x47, 0xe9, 0x72, 0xe0, 0x57, 0x34, 0x2f, }; static const unsigned char xdh_wei448_4094_privkey[] = { 0x40, 0xbd, 0x45, 0x8c, 0xbc, 0x6b, 0xc8, 0x87, 0xd3, 0x48, 0xb4, 0xd5, 0x0a, 0xbf, 0x4c, 0xbf, 0x66, 0x50, 0xba, 0xbd, 0xca, 0x79, 0xd5, 0x46, 0x4b, 0x0b, 0xb3, 0x56, 0x7d, 0x6d, 0xc5, 0x46, 0x07, 0xcf, 0xc0, 0xef, 0xee, 0x28, 0xd0, 0x9e, 0x6f, 0xdc, 0x0c, 0x8e, 0xd4, 0xc6, 0x05, 0x0b, 0x85, 0xc9, 0x91, 0xcd, 0x5e, 0x67, 0x97, 0x9e, }; static const unsigned char xdh_wei448_4094_sharedsecret[] = { 0x6e, 0x24, 0xc3, 0x4c, 0x8a, 0x1b, 0x62, 0x69, 0x76, 0x62, 0x61, 0xfa, 0x57, 0x1f, 0x58, 0x32, 0x9f, 0x49, 0x55, 0xa8, 0x35, 0x5d, 0x8c, 0x64, 0x06, 0xc1, 0xe4, 0xf8, 0xe5, 0xeb, 0xfe, 0x3a, 0x7f, 0x6a, 0xc2, 0x03, 0x77, 0x92, 0x8e, 0x17, 0x01, 0x0c, 0xbc, 0x70, 0x6e, 0x55, 0x1a, 0xab, 0x8e, 0x8c, 0xbf, 0x85, 0xd2, 0xd1, 0xb0, 0x1f, }; static const wycheproof_xdh_test xdh_wei448_4094 = { .name = "xdh_wei448_4094", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4094_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4094_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4094_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 490 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4095 for XDH, tcId is 491 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4095_peerpubkey[] = { 0x8b, 0x87, 0x90, 0x5a, 0xda, 0x5e, 0x80, 0x16, 0x68, 0xca, 0xef, 0x67, 0x2d, 0xfe, 0x9d, 0xbb, 0xf5, 0xc1, 0x2a, 0x47, 0x0f, 0x2c, 0x0a, 0x3d, 0x17, 0x70, 0x13, 0x55, 0x5b, 0x1a, 0x94, 0xa7, 0x17, 0x12, 0xa4, 0xc8, 0x12, 0x09, 0xd1, 0x2f, 0x0b, 0x97, 0x43, 0x53, 0x2b, 0x01, 0x6f, 0x64, 0x1d, 0x7a, 0xd7, 0xc8, 0xd3, 0x6c, 0xd5, 0x42, }; static const unsigned char xdh_wei448_4095_privkey[] = { 0x8c, 0xcf, 0xeb, 0x69, 0x10, 0x24, 0x15, 0x9d, 0x42, 0xdc, 0x22, 0x2b, 0x45, 0x2d, 0x95, 0xac, 0xef, 0xf2, 0x91, 0xbb, 0x96, 0x1c, 0x85, 0x18, 0x6f, 0x65, 0x7f, 0x4f, 0xcc, 0x8a, 0xa0, 0x2e, 0xf8, 0xde, 0xe9, 0xca, 0x30, 0x61, 0xd3, 0xde, 0x6b, 0x90, 0xdf, 0x77, 0x34, 0xbd, 0x57, 0x2c, 0x2f, 0xf9, 0xcd, 0x02, 0x19, 0x02, 0x2e, 0x9e, }; static const unsigned char xdh_wei448_4095_sharedsecret[] = { 0x29, 0x96, 0xe9, 0xae, 0x7d, 0xfe, 0x36, 0x6c, 0x91, 0x9a, 0xc5, 0xf7, 0xff, 0x52, 0x6d, 0xe8, 0xf7, 0xa2, 0x43, 0xce, 0x0c, 0xdb, 0xc0, 0x26, 0x73, 0x3f, 0x9c, 0xb8, 0xe5, 0xfc, 0x48, 0x38, 0x5d, 0x0b, 0x19, 0x40, 0x10, 0x0e, 0xcb, 0x24, 0xa5, 0x37, 0x58, 0x76, 0xc8, 0xc3, 0xf3, 0x02, 0x7e, 0x13, 0x91, 0x05, 0x47, 0xe2, 0xa5, 0x24, }; static const wycheproof_xdh_test xdh_wei448_4095 = { .name = "xdh_wei448_4095", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4095_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4095_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4095_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 491 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4096 for XDH, tcId is 492 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4096_peerpubkey[] = { 0x26, 0x0a, 0x2e, 0xb9, 0x17, 0x3e, 0xf5, 0x9f, 0xab, 0x77, 0x45, 0xfc, 0xbf, 0x4a, 0x63, 0x96, 0xc7, 0x2e, 0xd2, 0x0e, 0x5b, 0x7c, 0x2b, 0x44, 0x4e, 0x1b, 0x47, 0x93, 0x05, 0x41, 0x51, 0xbf, 0xa4, 0x40, 0xbb, 0xf8, 0xf2, 0x52, 0xc1, 0xf4, 0xd3, 0xc8, 0xc7, 0xf5, 0x11, 0x79, 0x9c, 0x1a, 0xc1, 0x16, 0xdb, 0x83, 0xa4, 0xd1, 0x9f, 0x47, }; static const unsigned char xdh_wei448_4096_privkey[] = { 0xac, 0xff, 0x53, 0xe5, 0x40, 0xfd, 0x03, 0x18, 0xc5, 0x25, 0x34, 0x7b, 0xf0, 0xee, 0x29, 0xe0, 0x82, 0x08, 0xb7, 0x81, 0x6a, 0x95, 0xd3, 0x5d, 0x92, 0x37, 0xea, 0x69, 0x1f, 0xe6, 0xb7, 0xce, 0xfe, 0x98, 0xb6, 0xd4, 0x34, 0x89, 0x1c, 0xf1, 0x32, 0x81, 0xb3, 0x1b, 0x59, 0xc9, 0x6b, 0x74, 0xd2, 0x13, 0xbb, 0x67, 0x85, 0xee, 0x8c, 0x95, }; static const unsigned char xdh_wei448_4096_sharedsecret[] = { 0xa9, 0xfe, 0xbf, 0x85, 0x14, 0x28, 0x9c, 0x54, 0xf3, 0x43, 0xe5, 0xe9, 0x61, 0x87, 0x2f, 0x7c, 0x89, 0x1c, 0x12, 0x4c, 0x36, 0x0f, 0xd3, 0xd6, 0x68, 0xec, 0xdf, 0x0c, 0xe0, 0x3b, 0x35, 0xdb, 0x95, 0x1b, 0x58, 0xb3, 0xfd, 0x11, 0x34, 0x93, 0x76, 0xbc, 0xe0, 0x9e, 0xd2, 0x75, 0xcd, 0x44, 0x2b, 0xa1, 0xc8, 0xcf, 0x7a, 0x26, 0xb9, 0x75, }; static const wycheproof_xdh_test xdh_wei448_4096 = { .name = "xdh_wei448_4096", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4096_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4096_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4096_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 492 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4097 for XDH, tcId is 493 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4097_peerpubkey[] = { 0xc3, 0xb3, 0xd7, 0xb4, 0x21, 0xd3, 0xfd, 0x0a, 0x6d, 0x0f, 0x3c, 0xce, 0xbc, 0xcd, 0xc3, 0x45, 0x0f, 0xdf, 0x0b, 0x31, 0xd1, 0x8c, 0x2f, 0x10, 0xf3, 0xba, 0xe7, 0xc8, 0x0f, 0xf5, 0x88, 0x23, 0xd3, 0x15, 0x79, 0xbe, 0x9a, 0x26, 0xda, 0x99, 0x38, 0x1a, 0x3b, 0x61, 0x37, 0x0f, 0xb0, 0x7f, 0x1e, 0xe4, 0xac, 0xf6, 0x8c, 0x76, 0x15, 0x5a, }; static const unsigned char xdh_wei448_4097_privkey[] = { 0x18, 0x5b, 0xd9, 0x68, 0x16, 0x0e, 0x59, 0x4c, 0x70, 0xe8, 0x87, 0xfd, 0xee, 0x1d, 0x11, 0x25, 0x2c, 0x4e, 0x10, 0x94, 0xc3, 0x29, 0x08, 0x0b, 0xf6, 0xd6, 0x2d, 0x41, 0xf6, 0x6b, 0xb2, 0x7f, 0xd1, 0x94, 0xd8, 0xd9, 0x94, 0x17, 0xbc, 0x78, 0xbf, 0xae, 0x79, 0x54, 0xd0, 0x17, 0xee, 0x7c, 0xbf, 0x82, 0xd5, 0x71, 0x13, 0xde, 0xe5, 0x9d, }; static const unsigned char xdh_wei448_4097_sharedsecret[] = { 0x46, 0x5f, 0xaa, 0x07, 0x90, 0xf7, 0x5d, 0xbc, 0x3c, 0x5a, 0x27, 0xf8, 0xca, 0x78, 0x5b, 0x41, 0xa2, 0xf6, 0x79, 0xd6, 0x49, 0x91, 0xfc, 0xd2, 0xb8, 0xd1, 0x71, 0x0a, 0x1f, 0x17, 0x05, 0xfb, 0x1d, 0xa2, 0xfa, 0x1b, 0x6e, 0x6b, 0xe7, 0xa4, 0x0f, 0xa6, 0xc2, 0x93, 0x2c, 0x57, 0x6b, 0x61, 0xc7, 0x29, 0x49, 0x93, 0xc1, 0x77, 0xd4, 0x12, }; static const wycheproof_xdh_test xdh_wei448_4097 = { .name = "xdh_wei448_4097", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4097_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4097_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4097_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 493 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4098 for XDH, tcId is 494 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4098_peerpubkey[] = { 0x43, 0x8c, 0x6c, 0x66, 0x1f, 0xd8, 0xd3, 0x32, 0xe5, 0x63, 0xc6, 0xc0, 0x56, 0x10, 0xe1, 0xe3, 0xae, 0x21, 0xba, 0x59, 0x9b, 0x88, 0xd2, 0xdc, 0x70, 0xe6, 0x5f, 0x3f, 0xb7, 0x66, 0x45, 0x65, 0x5f, 0x01, 0x7e, 0xa4, 0x77, 0x0e, 0x6f, 0xfd, 0xdd, 0xc6, 0x4c, 0x12, 0xe0, 0x68, 0x68, 0x1e, 0xbc, 0xc5, 0x42, 0x5f, 0xde, 0xfa, 0xdd, 0x64, }; static const unsigned char xdh_wei448_4098_privkey[] = { 0x84, 0x10, 0xd8, 0xad, 0xc4, 0x9f, 0xef, 0x7d, 0xa6, 0x96, 0x68, 0xc4, 0x12, 0x34, 0xe1, 0x3e, 0x61, 0xec, 0x56, 0x15, 0x4a, 0x36, 0x76, 0x61, 0x46, 0xc6, 0x4b, 0xf7, 0xac, 0xa0, 0xda, 0x4f, 0xc8, 0x66, 0x7d, 0xf9, 0xe0, 0x38, 0x34, 0x3b, 0x52, 0x6a, 0x15, 0x79, 0x2a, 0x9c, 0x56, 0x2f, 0xe1, 0xb3, 0x4d, 0x20, 0x05, 0x60, 0x71, 0x94, }; static const unsigned char xdh_wei448_4098_sharedsecret[] = { 0x88, 0xd5, 0xa6, 0x89, 0x1b, 0x45, 0xc4, 0x14, 0x63, 0xe5, 0xb8, 0x9d, 0x1a, 0xc0, 0x75, 0xd6, 0x06, 0x83, 0x57, 0x2c, 0x68, 0x07, 0x21, 0x60, 0xc1, 0x46, 0x76, 0x65, 0xdc, 0xb9, 0xa3, 0xac, 0x23, 0x52, 0x9e, 0x19, 0x95, 0xbb, 0xb0, 0x01, 0x21, 0x8e, 0x15, 0x7d, 0x7a, 0x60, 0xab, 0x53, 0x78, 0x65, 0xe5, 0x4b, 0x05, 0xee, 0x50, 0xd8, }; static const wycheproof_xdh_test xdh_wei448_4098 = { .name = "xdh_wei448_4098", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4098_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4098_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4098_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 494 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4099 for XDH, tcId is 495 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4099_peerpubkey[] = { 0x97, 0x9b, 0x14, 0x70, 0x77, 0x68, 0x6b, 0x9a, 0x16, 0xec, 0x07, 0x38, 0x68, 0x41, 0xb9, 0x4e, 0xc1, 0xe8, 0x1d, 0x73, 0x31, 0xd7, 0x7b, 0xd4, 0xd6, 0xc4, 0x74, 0xb9, 0x71, 0x21, 0x96, 0x69, 0xf9, 0xad, 0x58, 0xe3, 0x01, 0x71, 0xb0, 0xce, 0x41, 0xf3, 0x7a, 0x4c, 0x1e, 0xac, 0x09, 0xf2, 0x0e, 0xfe, 0x17, 0x06, 0x9c, 0x7d, 0x9c, 0xca, }; static const unsigned char xdh_wei448_4099_privkey[] = { 0x44, 0x5e, 0xa2, 0xcf, 0x06, 0x62, 0x62, 0xed, 0x86, 0xf8, 0xe7, 0x58, 0x62, 0x3e, 0x12, 0x55, 0x2f, 0x39, 0x28, 0xdf, 0x35, 0xb8, 0x1a, 0xdf, 0xb5, 0x3f, 0x16, 0xfa, 0xaf, 0x4d, 0xf4, 0xc8, 0x99, 0x89, 0xcb, 0xde, 0xc7, 0x5b, 0x0b, 0x73, 0x2f, 0xd0, 0xae, 0x75, 0x62, 0xec, 0x1f, 0xa0, 0x51, 0x71, 0xa3, 0x0d, 0xc6, 0xbd, 0x04, 0x90, }; static const unsigned char xdh_wei448_4099_sharedsecret[] = { 0x2d, 0x6c, 0x09, 0x06, 0xf8, 0x43, 0x34, 0x92, 0x91, 0xe6, 0x84, 0x69, 0x66, 0x04, 0xa4, 0x61, 0xd9, 0x08, 0x60, 0x3f, 0x7f, 0x1c, 0x7e, 0x9c, 0xdb, 0x49, 0x2b, 0xe4, 0xc2, 0x57, 0xe1, 0xd6, 0x55, 0xc5, 0xca, 0x42, 0x0f, 0xbb, 0x6b, 0x25, 0xd1, 0x17, 0xeb, 0xeb, 0xbb, 0x0d, 0xb7, 0x36, 0x7e, 0x13, 0xe0, 0x91, 0x64, 0xe1, 0x5a, 0x08, }; static const wycheproof_xdh_test xdh_wei448_4099 = { .name = "xdh_wei448_4099", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4099_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4099_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4099_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 495 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4100 for XDH, tcId is 496 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4100_peerpubkey[] = { 0x86, 0x18, 0xd3, 0xf8, 0x3e, 0xa3, 0x1d, 0xdf, 0x84, 0xa8, 0x01, 0xa4, 0x3c, 0xe2, 0x2a, 0x64, 0x65, 0x0a, 0xa3, 0x35, 0x1e, 0xc4, 0xce, 0x08, 0xad, 0x0e, 0xf4, 0x53, 0x9a, 0x86, 0x37, 0x24, 0x06, 0x33, 0x24, 0x95, 0x20, 0x98, 0x0c, 0x67, 0x24, 0x47, 0x8c, 0x00, 0xbb, 0xe6, 0x31, 0xff, 0x60, 0x38, 0x48, 0x9e, 0x8d, 0x53, 0xd0, 0xd7, }; static const unsigned char xdh_wei448_4100_privkey[] = { 0x98, 0x11, 0x3c, 0x01, 0x90, 0x8a, 0xf1, 0x7d, 0xbe, 0xf2, 0x33, 0xff, 0x82, 0xe1, 0xcc, 0x9c, 0x11, 0xfa, 0xb0, 0x96, 0x05, 0x63, 0xc1, 0x3a, 0x73, 0x3a, 0x3a, 0x91, 0xbd, 0xde, 0xf1, 0x9d, 0xc7, 0xc7, 0x29, 0x0d, 0x5b, 0x34, 0x1c, 0x66, 0xd9, 0x39, 0x1b, 0xd6, 0xca, 0xac, 0x71, 0xdc, 0xb6, 0x89, 0x23, 0x43, 0x37, 0x8f, 0x47, 0x90, }; static const unsigned char xdh_wei448_4100_sharedsecret[] = { 0x30, 0x42, 0xf8, 0x85, 0x96, 0x6b, 0x30, 0x5b, 0xf6, 0x4f, 0x92, 0x9f, 0xe6, 0x61, 0xc1, 0x4e, 0xfc, 0x7a, 0x2a, 0xdb, 0x48, 0x32, 0x57, 0x59, 0xfc, 0x96, 0xfe, 0xff, 0x95, 0xfd, 0x9c, 0x03, 0x1a, 0xcf, 0xf0, 0x42, 0x00, 0xd6, 0x66, 0x1d, 0x4a, 0xa1, 0x8d, 0x0e, 0x1e, 0xfa, 0x8f, 0x63, 0x72, 0x0d, 0x29, 0xbe, 0x55, 0x91, 0x32, 0x44, }; static const wycheproof_xdh_test xdh_wei448_4100 = { .name = "xdh_wei448_4100", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4100_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4100_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4100_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for x_2 in multiplication by 9, tcId is 496 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4101 for XDH, tcId is 497 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4101_peerpubkey[] = { 0x95, 0xcb, 0x9c, 0x89, 0x22, 0x1c, 0x71, 0xca, 0x4d, 0x0f, 0x45, 0x1b, 0xf9, 0x44, 0x3b, 0xd3, 0xac, 0x79, 0x30, 0xba, 0xe5, 0xa1, 0xc4, 0xf0, 0x5d, 0x7d, 0x4d, 0x7c, 0x4e, 0xaf, 0x23, 0xa1, 0x5e, 0xca, 0x56, 0x30, 0x21, 0xa6, 0xa8, 0x00, 0x1e, 0x78, 0x99, 0x99, 0xfe, 0xeb, 0xa5, 0x5a, 0x4f, 0x2b, 0x65, 0xd3, 0x63, 0x54, 0xf5, 0xf8, }; static const unsigned char xdh_wei448_4101_privkey[] = { 0x88, 0x0e, 0x5c, 0x31, 0xe1, 0x09, 0x20, 0x8c, 0xf6, 0xea, 0xb1, 0x13, 0xe6, 0x21, 0x78, 0x61, 0x1e, 0xd8, 0xa6, 0xca, 0x8e, 0x77, 0x60, 0x23, 0x2d, 0xc8, 0x25, 0x88, 0xc5, 0x8f, 0xe7, 0xc0, 0x9c, 0xcf, 0x9e, 0x83, 0x95, 0x90, 0x6e, 0x3c, 0x49, 0xb0, 0x10, 0x35, 0x8a, 0x34, 0x3a, 0x8f, 0x38, 0xd7, 0x2d, 0x34, 0x90, 0x24, 0xb6, 0x9b, }; static const unsigned char xdh_wei448_4101_sharedsecret[] = { 0xf6, 0x58, 0xf2, 0xde, 0xe9, 0xe1, 0x8a, 0x7a, 0x35, 0x10, 0x67, 0xe1, 0xc1, 0xb9, 0xce, 0xd8, 0xd7, 0x24, 0x4c, 0x73, 0x84, 0x55, 0x30, 0xa2, 0xa8, 0x0d, 0xa8, 0xaa, 0xe7, 0x40, 0x08, 0x20, 0x29, 0xbb, 0x63, 0xda, 0xee, 0xc6, 0xf7, 0x89, 0x50, 0x6b, 0x7a, 0x4e, 0x2f, 0xa3, 0xe2, 0x7b, 0x74, 0x31, 0x3c, 0x41, 0x4b, 0xe9, 0xf5, 0xe3, }; static const wycheproof_xdh_test xdh_wei448_4101 = { .name = "xdh_wei448_4101", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4101_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4101_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4101_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for x_2 in multiplication by 9, tcId is 497 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4102 for XDH, tcId is 498 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4102_peerpubkey[] = { 0x25, 0x2c, 0x8c, 0xb1, 0x28, 0x33, 0xa8, 0xe3, 0x8f, 0xbf, 0xb4, 0x2f, 0xb2, 0x3f, 0xa7, 0x0b, 0x96, 0x3a, 0x70, 0x25, 0xf3, 0x98, 0xe7, 0xc6, 0x3c, 0x02, 0xd9, 0xf0, 0x06, 0x33, 0xd0, 0xe7, 0xbb, 0x4a, 0xb6, 0xdd, 0x63, 0x32, 0x39, 0x7b, 0xa4, 0xfe, 0xf1, 0xde, 0xcd, 0x28, 0x7c, 0x3d, 0xdb, 0x8c, 0xd5, 0xc3, 0x8d, 0xd1, 0x4e, 0x54, }; static const unsigned char xdh_wei448_4102_privkey[] = { 0xe4, 0x89, 0x48, 0xda, 0x83, 0x5c, 0x46, 0x60, 0x02, 0xce, 0x6b, 0xdd, 0x71, 0xb3, 0x8d, 0x78, 0x59, 0xa3, 0x34, 0x1d, 0xd3, 0xc4, 0xf1, 0x8a, 0x9b, 0x9b, 0xf8, 0x6f, 0xb0, 0xc9, 0xb4, 0x9a, 0x6d, 0x61, 0x0f, 0xbb, 0x7a, 0x97, 0x5d, 0x35, 0x35, 0x5c, 0xb2, 0x77, 0x0b, 0x04, 0x9a, 0xc7, 0x1c, 0x79, 0x17, 0x2a, 0x14, 0xe2, 0xe1, 0x9f, }; static const unsigned char xdh_wei448_4102_sharedsecret[] = { 0x2b, 0xf5, 0xa3, 0xd3, 0x55, 0xee, 0x3a, 0x1a, 0x41, 0x91, 0x88, 0xb7, 0x1b, 0x12, 0x3f, 0x5f, 0x55, 0x3b, 0x94, 0x43, 0x9b, 0x76, 0x29, 0x5d, 0xb7, 0xcd, 0x14, 0xe3, 0xa7, 0x8a, 0x96, 0xcc, 0xa1, 0xee, 0xba, 0xaf, 0x7f, 0x5a, 0x67, 0x94, 0xed, 0x44, 0x03, 0xa4, 0x12, 0xe0, 0xe0, 0x83, 0x63, 0x53, 0x4c, 0x27, 0xca, 0xb4, 0xdd, 0x04, }; static const wycheproof_xdh_test xdh_wei448_4102 = { .name = "xdh_wei448_4102", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4102_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4102_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4102_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 498 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4103 for XDH, tcId is 499 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4103_peerpubkey[] = { 0x91, 0xdd, 0xa7, 0xe2, 0xb2, 0xc0, 0x28, 0x92, 0x8b, 0x9a, 0x11, 0x15, 0x1c, 0x30, 0x38, 0x2a, 0x2f, 0x38, 0xf1, 0xee, 0xbf, 0x9f, 0x13, 0x3f, 0x32, 0xf1, 0x3f, 0x58, 0xc6, 0x70, 0x31, 0xad, 0x13, 0x44, 0x77, 0x13, 0x19, 0xe0, 0x1f, 0x47, 0xfb, 0x44, 0xfe, 0x0f, 0x33, 0x6f, 0xb1, 0xdb, 0xb9, 0x39, 0xa3, 0x68, 0xa2, 0x23, 0xfd, 0x89, }; static const unsigned char xdh_wei448_4103_privkey[] = { 0x5c, 0x7f, 0x46, 0x8a, 0xdd, 0x25, 0x3a, 0xb3, 0xa1, 0x12, 0x6d, 0xd8, 0xa9, 0x75, 0xcc, 0xb7, 0xf0, 0x97, 0xf7, 0xda, 0x49, 0x66, 0x9b, 0x54, 0x46, 0x7b, 0x01, 0x54, 0x55, 0x12, 0x5c, 0xfb, 0xbf, 0x70, 0x1a, 0x99, 0x21, 0x2b, 0xb3, 0x59, 0x45, 0x4a, 0x0c, 0x99, 0x5f, 0x10, 0x60, 0x07, 0x08, 0x0a, 0x43, 0x36, 0x3b, 0x9d, 0x51, 0x99, }; static const unsigned char xdh_wei448_4103_sharedsecret[] = { 0x9b, 0x74, 0x10, 0x08, 0x71, 0x86, 0x56, 0xf0, 0xcc, 0x1b, 0xd0, 0x34, 0x7b, 0x3d, 0x36, 0x38, 0x40, 0xab, 0xd4, 0x6c, 0x4e, 0x59, 0xe9, 0xf5, 0x45, 0x4d, 0x1b, 0xea, 0x24, 0xe1, 0x7a, 0x84, 0x24, 0x59, 0xfe, 0x45, 0x1c, 0xe7, 0x18, 0xd9, 0x11, 0xe3, 0x79, 0x36, 0x47, 0xa5, 0x44, 0x5b, 0xb4, 0xef, 0x96, 0x7e, 0x03, 0x6b, 0x6c, 0x2e, }; static const wycheproof_xdh_test xdh_wei448_4103 = { .name = "xdh_wei448_4103", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4103_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4103_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4103_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for z_2 in multiplication by 9, tcId is 499 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4104 for XDH, tcId is 500 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4104_peerpubkey[] = { 0x89, 0x73, 0x52, 0x9d, 0x6d, 0xd9, 0xc3, 0xd1, 0xe5, 0xf5, 0xfb, 0x94, 0xa0, 0x27, 0xa8, 0x8e, 0x1c, 0xd5, 0xb9, 0xd6, 0x69, 0xa4, 0x98, 0xbb, 0x43, 0xa2, 0xbc, 0x6a, 0xe1, 0x40, 0xe9, 0x98, 0x31, 0x9f, 0xc3, 0xfd, 0x35, 0x4f, 0x77, 0xb9, 0x4e, 0x67, 0x79, 0x2a, 0x25, 0x94, 0x6c, 0x3b, 0x54, 0x46, 0x61, 0x6f, 0xc8, 0x67, 0x1d, 0xfc, }; static const unsigned char xdh_wei448_4104_privkey[] = { 0xac, 0xcb, 0xaa, 0x63, 0x4a, 0x2b, 0xa6, 0x89, 0x89, 0xc5, 0x70, 0xa4, 0x17, 0x29, 0x41, 0x47, 0x16, 0x93, 0xbb, 0xf2, 0xcd, 0x5b, 0xf7, 0x1e, 0x23, 0xc0, 0x1a, 0x47, 0xfa, 0xba, 0xfb, 0x4f, 0xd2, 0xe1, 0x81, 0x4e, 0x9d, 0xd7, 0xbe, 0xbf, 0x45, 0x37, 0x1a, 0xed, 0x46, 0x40, 0xa0, 0x41, 0x5b, 0xc1, 0xec, 0xfc, 0xf9, 0x95, 0x1a, 0x9d, }; static const unsigned char xdh_wei448_4104_sharedsecret[] = { 0xd0, 0xdb, 0x13, 0x6f, 0x5f, 0xf5, 0xd8, 0x23, 0x4b, 0x5d, 0x0e, 0xc2, 0x3c, 0xc4, 0xdb, 0xba, 0x27, 0xd4, 0xa8, 0x81, 0xbc, 0x97, 0x3c, 0x50, 0x22, 0x42, 0x81, 0x8e, 0x9e, 0x6b, 0x31, 0x31, 0x0c, 0xe9, 0x9f, 0xd7, 0x95, 0x0e, 0xa3, 0x84, 0x2d, 0xef, 0x84, 0x2d, 0xbd, 0x63, 0xcd, 0xfa, 0xa1, 0x63, 0x77, 0x86, 0x6f, 0xdf, 0xc8, 0xd3, }; static const wycheproof_xdh_test xdh_wei448_4104 = { .name = "xdh_wei448_4104", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4104_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4104_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4104_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case for z_2 in multiplication by 9, tcId is 500 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4105 for XDH, tcId is 501 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4105_peerpubkey[] = { 0x93, 0xa8, 0xcf, 0x1a, 0xf7, 0xa6, 0x2d, 0x23, 0x95, 0x57, 0xea, 0x30, 0x22, 0x02, 0xa5, 0x07, 0xf7, 0x6a, 0xfe, 0x05, 0xd4, 0x15, 0x1a, 0x67, 0xaf, 0x47, 0x3e, 0x64, 0x79, 0xe5, 0x55, 0x86, 0x05, 0x71, 0x50, 0xa2, 0x9b, 0xe9, 0x5d, 0x12, 0x08, 0xb9, 0x93, 0xc9, 0x97, 0xc6, 0xa7, 0x75, 0xcc, 0x0b, 0x66, 0x71, 0xe0, 0xc5, 0xf6, 0x5e, }; static const unsigned char xdh_wei448_4105_privkey[] = { 0xc4, 0x16, 0x33, 0x21, 0x3e, 0x2a, 0x96, 0x9c, 0x61, 0x20, 0x39, 0x91, 0xd4, 0xe2, 0x3c, 0xf2, 0x0b, 0x83, 0x8f, 0x04, 0xb3, 0x75, 0x3a, 0xa5, 0xbd, 0xd8, 0x35, 0x52, 0x37, 0xee, 0x38, 0xbc, 0xf7, 0x55, 0x3c, 0x8e, 0xd6, 0xda, 0x13, 0x3f, 0x07, 0x33, 0xec, 0x43, 0x30, 0x0a, 0xca, 0xf4, 0x1f, 0x6c, 0x2b, 0xb7, 0x1d, 0x41, 0xba, 0x93, }; static const unsigned char xdh_wei448_4105_sharedsecret[] = { 0x3c, 0x01, 0x34, 0x09, 0xc1, 0xab, 0x90, 0xb9, 0x39, 0x5a, 0x39, 0x42, 0x5d, 0xb3, 0x14, 0xf4, 0xd0, 0xc0, 0x2e, 0x8f, 0x85, 0x99, 0xd4, 0x34, 0xb6, 0xb5, 0x18, 0x32, 0x27, 0x5d, 0x03, 0xbf, 0xa9, 0x7f, 0xa7, 0x08, 0xcc, 0x64, 0x91, 0x25, 0x5e, 0x87, 0x01, 0xfd, 0x26, 0x49, 0xf5, 0x5a, 0xcd, 0x24, 0xc2, 0x3d, 0x95, 0x65, 0xb4, 0x89, }; static const wycheproof_xdh_test xdh_wei448_4105 = { .name = "xdh_wei448_4105", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4105_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4105_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4105_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 501 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4106 for XDH, tcId is 502 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4106_peerpubkey[] = { 0xda, 0x73, 0x6a, 0x97, 0xd9, 0x03, 0x95, 0x26, 0xa2, 0x8b, 0x53, 0xff, 0xcd, 0x60, 0xc5, 0xa4, 0xa8, 0x0a, 0x72, 0x20, 0xa3, 0x9c, 0x74, 0x2c, 0xbd, 0xf7, 0xd8, 0x9b, 0x5a, 0xc5, 0xc1, 0x02, 0x1b, 0x03, 0xca, 0xd2, 0x4b, 0xd3, 0x4a, 0x73, 0x97, 0xe9, 0xf7, 0xba, 0x7f, 0x32, 0xb0, 0x96, 0x76, 0xb5, 0x26, 0x0d, 0x2f, 0xf1, 0x06, 0xef, }; static const unsigned char xdh_wei448_4106_privkey[] = { 0xa4, 0x10, 0x23, 0xf8, 0x5d, 0x15, 0xe9, 0x3f, 0xc8, 0x0e, 0x97, 0x24, 0xb2, 0x25, 0xb2, 0x6b, 0x3f, 0xbe, 0xc7, 0xae, 0x5b, 0xa8, 0xb0, 0x7f, 0x0c, 0xd6, 0x4d, 0x69, 0x20, 0xd1, 0xb8, 0x31, 0x27, 0x48, 0xfb, 0x4f, 0x52, 0x6c, 0xcb, 0x0e, 0xad, 0xa5, 0xd2, 0x13, 0x1f, 0xa4, 0x44, 0x6f, 0x12, 0x7b, 0xa1, 0x3c, 0x27, 0xe6, 0xac, 0x90, }; static const unsigned char xdh_wei448_4106_sharedsecret[] = { 0xf8, 0x35, 0x35, 0x73, 0x09, 0x1c, 0xf4, 0xcf, 0xde, 0x03, 0xd0, 0x33, 0x35, 0xa2, 0x7d, 0xda, 0x98, 0xf8, 0xc1, 0xee, 0x17, 0x0e, 0x59, 0x81, 0x50, 0x00, 0x7f, 0x16, 0xf7, 0x05, 0x77, 0xb3, 0x8a, 0xa9, 0x67, 0xd9, 0x70, 0xfd, 0xb1, 0x6f, 0x82, 0x01, 0x23, 0xdd, 0x28, 0x06, 0x68, 0x98, 0x6c, 0x57, 0xeb, 0xc6, 0x97, 0x33, 0x37, 0xf0, }; static const wycheproof_xdh_test xdh_wei448_4106 = { .name = "xdh_wei448_4106", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4106_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4106_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4106_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "special case for DA - CB in multiplication by 9, tcId is 502 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4107 for XDH, tcId is 503 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4107_peerpubkey[] = { 0xa7, 0x17, 0x42, 0xc4, 0x72, 0xd8, 0xee, 0xe6, 0x36, 0xa9, 0x74, 0xdd, 0x98, 0xf5, 0x54, 0xad, 0x2f, 0x89, 0x91, 0x1f, 0x80, 0xab, 0xdb, 0x3d, 0x8f, 0xa0, 0x3b, 0xbb, 0x98, 0x19, 0x17, 0xb1, 0x9d, 0x92, 0x55, 0x81, 0xbc, 0xce, 0x71, 0x93, 0xc8, 0x83, 0x9f, 0x6b, 0x2e, 0x0f, 0xf6, 0xc1, 0xda, 0x7c, 0x20, 0x29, 0x70, 0xb3, 0xda, 0x46, }; static const unsigned char xdh_wei448_4107_privkey[] = { 0xbe, 0x58, 0xb9, 0x58, 0xdd, 0xcc, 0x5b, 0xb1, 0xa9, 0xcc, 0xdb, 0xc4, 0x3c, 0xcc, 0x1f, 0xa7, 0xd0, 0x10, 0x2f, 0x6a, 0x70, 0x48, 0x8a, 0xd5, 0x90, 0xb3, 0xf2, 0x6f, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, }; static const unsigned char xdh_wei448_4107_sharedsecret[] = { 0xca, 0xba, 0x02, 0x71, 0xea, 0x05, 0xea, 0xbf, 0x9d, 0x92, 0x31, 0x43, 0x11, 0xce, 0xdf, 0x54, 0xdf, 0x44, 0x73, 0x96, 0x23, 0xa6, 0x00, 0x04, 0xdd, 0x62, 0xd5, 0xcc, 0xac, 0x1f, 0x43, 0x02, 0x64, 0x4b, 0x2f, 0x0b, 0x75, 0xe3, 0x5b, 0x11, 0xa1, 0x83, 0x1a, 0x87, 0x54, 0x82, 0x38, 0xb9, 0xc3, 0x6e, 0x71, 0xe5, 0xf7, 0xc5, 0x7d, 0x10, }; static const wycheproof_xdh_test xdh_wei448_4107 = { .name = "xdh_wei448_4107", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4107_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4107_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4107_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "private key == -1 (mod order), tcId is 503 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4108 for XDH, tcId is 504 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4108_peerpubkey[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const unsigned char xdh_wei448_4108_privkey[] = { 0x28, 0x31, 0xf7, 0xfd, 0x47, 0xb8, 0x95, 0x95, 0x00, 0x52, 0xaf, 0x56, 0xa8, 0xb8, 0xb9, 0x9b, 0x4f, 0x5c, 0x7d, 0xf3, 0x22, 0x6e, 0x13, 0xb3, 0x42, 0x94, 0xa1, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, }; static const unsigned char xdh_wei448_4108_sharedsecret[] = { 0xa8, 0xde, 0xa3, 0x8f, 0x7f, 0xfa, 0xe7, 0x8b, 0xb6, 0x9f, 0xbe, 0x45, 0x50, 0x26, 0x29, 0x7c, 0x98, 0x73, 0x82, 0x94, 0x94, 0xd2, 0xaa, 0x66, 0x4f, 0xad, 0x64, 0x41, 0x7f, 0xb2, 0xae, 0x8e, 0xa1, 0x38, 0x49, 0xbd, 0xab, 0x01, 0x52, 0xe1, 0xe0, 0x59, 0xf4, 0xd9, 0xba, 0x7f, 0x22, 0xcf, 0x60, 0xba, 0x13, 0x0a, 0x29, 0xf1, 0x78, 0x57, }; static const wycheproof_xdh_test xdh_wei448_4108 = { .name = "xdh_wei448_4108", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4108_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4108_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4108_sharedsecret, .sharedsecretlen = 56, .result = 0, .comment = "private key == 1 (mod order) on twist, tcId is 504 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4109 for XDH, tcId is 505 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4109_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_4109_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_4109_sharedsecret[] = { 0x52, 0x32, 0xfe, 0x84, 0x57, 0xba, 0x91, 0x0c, 0xb8, 0x86, 0xbd, 0xa0, 0xda, 0x97, 0x75, 0x4b, 0xf7, 0x13, 0x2f, 0x61, 0x48, 0x19, 0x39, 0x80, 0x86, 0x73, 0xdb, 0x29, 0xe3, 0x18, 0xcb, 0xdc, 0xe8, 0x56, 0x1c, 0x78, 0x06, 0x2a, 0xd9, 0x48, 0x64, 0xba, 0x5c, 0x82, 0x04, 0x54, 0x76, 0x6d, 0x02, 0x55, 0xbe, 0xc1, 0xdb, 0x69, 0x51, 0x47, }; static const wycheproof_xdh_test xdh_wei448_4109 = { .name = "xdh_wei448_4109", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4109_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4109_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4109_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 505 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4110 for XDH, tcId is 506 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4110_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_4110_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_4110_sharedsecret[] = { 0x34, 0x1c, 0x3a, 0xeb, 0x05, 0x51, 0x10, 0x8f, 0xc8, 0x0d, 0x22, 0xd9, 0x8c, 0x26, 0x83, 0xa6, 0xeb, 0x68, 0x96, 0x74, 0x20, 0xc1, 0xe0, 0x33, 0xfc, 0x22, 0xc4, 0x1f, 0x4f, 0x3a, 0xb8, 0xd8, 0x2d, 0x64, 0x34, 0x25, 0xd2, 0x67, 0x5f, 0x44, 0xf4, 0x2d, 0x03, 0xb9, 0x98, 0x48, 0x4e, 0x62, 0xf3, 0x5b, 0x91, 0x5c, 0x1d, 0x4b, 0xf4, 0x34, }; static const wycheproof_xdh_test xdh_wei448_4110 = { .name = "xdh_wei448_4110", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4110_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4110_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4110_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 506 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4111 for XDH, tcId is 507 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4111_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_4111_privkey[] = { 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa9, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, 0xaa, }; static const unsigned char xdh_wei448_4111_sharedsecret[] = { 0xb2, 0xba, 0x50, 0x57, 0xf1, 0xf1, 0x18, 0x3b, 0x19, 0x70, 0xb7, 0x84, 0x45, 0x37, 0x78, 0x46, 0x70, 0xda, 0x55, 0xc5, 0xe3, 0x20, 0x7d, 0xe1, 0xd0, 0xf7, 0x64, 0x27, 0xb2, 0x66, 0x38, 0x11, 0x42, 0x61, 0x07, 0x94, 0x10, 0x22, 0xd9, 0xbf, 0x85, 0xa3, 0x73, 0xa7, 0x84, 0x0e, 0xb0, 0x17, 0xcf, 0x8f, 0xa2, 0x3e, 0x53, 0x06, 0x7a, 0x7d, }; static const wycheproof_xdh_test xdh_wei448_4111 = { .name = "xdh_wei448_4111", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4111_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4111_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4111_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 507 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4112 for XDH, tcId is 508 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4112_peerpubkey[] = { 0xf8, 0xde, 0x0d, 0x52, 0x42, 0x7d, 0xdc, 0x57, 0xd9, 0xfe, 0x1d, 0x9b, 0xf9, 0xf3, 0x70, 0x4d, 0x7d, 0x43, 0xa2, 0x63, 0x33, 0x07, 0x37, 0x4a, 0x8b, 0x05, 0xbb, 0x6e, 0x42, 0x2a, 0x70, 0x85, 0xa8, 0xdb, 0xee, 0x3c, 0xcc, 0x28, 0xad, 0x32, 0x8e, 0xa3, 0xc8, 0xce, 0xa6, 0x37, 0xad, 0x3c, 0x29, 0x13, 0xae, 0x4f, 0xfc, 0x1f, 0x76, 0x38, }; static const unsigned char xdh_wei448_4112_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_4112_sharedsecret[] = { 0x56, 0x66, 0xa7, 0x22, 0x76, 0xa9, 0xc4, 0xf3, 0x84, 0x9f, 0x62, 0x88, 0x8d, 0x85, 0x90, 0xe0, 0xae, 0xe1, 0x15, 0xe9, 0xa2, 0x31, 0xb1, 0xca, 0x74, 0x3e, 0xe7, 0xa0, 0x2a, 0xf7, 0x37, 0x7e, 0x40, 0x30, 0x52, 0x10, 0x91, 0xd1, 0x73, 0x94, 0x1c, 0x9a, 0x70, 0x17, 0x53, 0xec, 0xa4, 0xd5, 0x82, 0x3f, 0xbd, 0x86, 0x74, 0x7d, 0xc0, 0xfa, }; static const wycheproof_xdh_test xdh_wei448_4112 = { .name = "xdh_wei448_4112", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4112_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4112_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4112_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 508 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4113 for XDH, tcId is 509 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4113_peerpubkey[] = { 0xdc, 0x81, 0xef, 0x19, 0x56, 0xcd, 0x12, 0x3f, 0x03, 0x4a, 0xd6, 0xbb, 0x83, 0x58, 0x49, 0xe1, 0xd4, 0x5e, 0x6f, 0xa9, 0x17, 0xc1, 0x51, 0x0f, 0x66, 0xe3, 0xd8, 0xce, 0x55, 0xf3, 0xa7, 0xd6, 0x75, 0x43, 0x14, 0xc5, 0x89, 0xa3, 0x5d, 0xd8, 0xef, 0x28, 0xc8, 0x27, 0x62, 0x03, 0xd1, 0x2c, 0x65, 0x25, 0xb8, 0xae, 0x7f, 0xec, 0x34, 0x93, }; static const unsigned char xdh_wei448_4113_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_4113_sharedsecret[] = { 0x8b, 0xd6, 0x7f, 0xe2, 0x10, 0x2f, 0x52, 0xd8, 0x61, 0xec, 0x67, 0x98, 0xed, 0x27, 0x9b, 0x0f, 0xf9, 0xa4, 0xf2, 0xa8, 0x9e, 0x83, 0x42, 0x9f, 0x69, 0x75, 0x3d, 0x2a, 0x9b, 0x1a, 0x23, 0xbd, 0x94, 0x0e, 0xa6, 0x64, 0x49, 0x0c, 0xdc, 0x32, 0xc8, 0x6e, 0x3e, 0xcb, 0xd9, 0x93, 0x84, 0x7e, 0xd3, 0xea, 0x78, 0x0c, 0x48, 0x39, 0x7f, 0xb6, }; static const wycheproof_xdh_test xdh_wei448_4113 = { .name = "xdh_wei448_4113", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4113_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4113_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4113_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 509 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /* Test 4114 for XDH, tcId is 510 in file x448_test.json */ #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) static const unsigned char xdh_wei448_4114_peerpubkey[] = { 0xa6, 0x67, 0xc6, 0xac, 0x3d, 0xe4, 0x4c, 0x8d, 0x89, 0xc8, 0xf8, 0x20, 0x25, 0xda, 0xb5, 0x04, 0x70, 0xfa, 0x2d, 0xa4, 0xef, 0xa1, 0x53, 0xfb, 0x03, 0xad, 0xb1, 0x67, 0xce, 0xf1, 0x43, 0xcd, 0xff, 0xb8, 0x25, 0xe9, 0x27, 0xe0, 0xba, 0xdf, 0xd7, 0x20, 0xf2, 0x8c, 0x10, 0x33, 0xf3, 0xe9, 0xd8, 0x6d, 0xe7, 0x15, 0x8f, 0x00, 0x71, 0x8c, }; static const unsigned char xdh_wei448_4114_privkey[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x56, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0x55, 0xd5, }; static const unsigned char xdh_wei448_4114_sharedsecret[] = { 0xb7, 0xda, 0x87, 0xa0, 0x54, 0x66, 0x89, 0xef, 0xf6, 0xfe, 0x5d, 0xbb, 0x1c, 0xad, 0x3d, 0x3f, 0x28, 0x26, 0x53, 0xaf, 0x32, 0xe2, 0xe9, 0x65, 0xb3, 0x00, 0x4b, 0x6d, 0x52, 0x73, 0xe0, 0x4b, 0xe2, 0x42, 0xaf, 0x3c, 0xbc, 0xf9, 0xbb, 0xdc, 0x69, 0xd7, 0x74, 0x00, 0x5b, 0xd8, 0x56, 0xc7, 0xf7, 0x40, 0xeb, 0xf6, 0xce, 0xf0, 0xdf, 0x0d, }; static const wycheproof_xdh_test xdh_wei448_4114 = { .name = "xdh_wei448_4114", .xdh_alg = X448, .curve = &wei448_str_params, .peerpubkey = xdh_wei448_4114_peerpubkey, .peerpubkeylen = 56, .ourpubkey = (const unsigned char*)"", .ourpubkeylen = 0, .privkey = xdh_wei448_4114_privkey, .privkeylen = 56, .sharedsecret = xdh_wei448_4114_sharedsecret, .sharedsecretlen = 56, .result = 1, .comment = "special case private key, tcId is 510 in file x448_test.json", }; #endif /* defined(WITH_X448) && defined(WITH_CURVE_WEI448) */ /*****************/ ATTRIBUTE_USED static const wycheproof_xdh_test *wycheproof_xdh_all_tests[] = { #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_0, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_3, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_4, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_5, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_6, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_7, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_8, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_9, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_10, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_11, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_12, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_13, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_14, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_15, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_16, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_17, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_18, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_19, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_20, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_21, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_22, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_23, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_24, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_25, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_26, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_27, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_28, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_29, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_30, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_31, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_32, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_33, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_34, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_35, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_36, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_37, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_38, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_39, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_40, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_41, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_42, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_43, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_44, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_45, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_46, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_47, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_48, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_49, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_50, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_51, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_52, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_53, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_54, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_55, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_56, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_57, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_58, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_59, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_60, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_61, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_62, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_63, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_64, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_65, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_66, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_67, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_68, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_69, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_70, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_71, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_72, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_73, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_74, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_75, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_76, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_77, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_78, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_79, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_80, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_81, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_82, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_83, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_84, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_85, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_86, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_87, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_88, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_89, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_90, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_91, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_92, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_93, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_94, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_95, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_96, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_97, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_98, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_99, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_100, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_101, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_102, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_103, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_104, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_105, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_106, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_107, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_108, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_109, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_110, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_111, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_112, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_113, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_114, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_115, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_116, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_117, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_118, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_119, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_120, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_121, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_122, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_123, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_124, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_125, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_126, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_127, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_128, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_129, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_130, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_131, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_132, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_133, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_134, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_135, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_136, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_137, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_138, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_139, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_140, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_141, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_142, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_143, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_144, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_145, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_146, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_147, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_148, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_149, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_150, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_151, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_152, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_153, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_154, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_155, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_156, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_157, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_158, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_159, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_160, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_161, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_162, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_163, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_164, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_165, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_166, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_167, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_168, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_169, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_170, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_171, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_172, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_173, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_174, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_175, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_176, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_177, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_178, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_179, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_180, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_181, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_182, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_183, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_184, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_185, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_186, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_187, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_188, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_189, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_190, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_191, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_192, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_193, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_194, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_195, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_196, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_197, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_198, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_199, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_200, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_201, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_202, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_203, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_204, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_205, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_206, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_207, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_208, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_209, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_210, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_211, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_212, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_213, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_214, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_215, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_216, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_217, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_218, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_219, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_220, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_221, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_222, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_223, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_224, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_225, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_226, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_227, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_228, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_229, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_230, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_231, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_232, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_233, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_234, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_235, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_236, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_237, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_238, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_239, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_240, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_241, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_242, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_243, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_244, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_245, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_246, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_247, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_248, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_249, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_250, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_251, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_252, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_253, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_254, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_255, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_256, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_257, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_258, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_259, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_260, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_261, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_262, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_263, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_264, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_265, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_266, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_267, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_268, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_269, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_270, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_271, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_272, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_273, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_274, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_275, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_276, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_277, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_278, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_279, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_280, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_281, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_282, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_283, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_284, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_285, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_286, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_287, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_288, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_289, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_290, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_291, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_292, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_293, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_294, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_295, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_296, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_297, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_298, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_299, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_300, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_301, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_302, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_303, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_304, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_305, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_306, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_307, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_308, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_309, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_310, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_311, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_312, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_313, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_314, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_315, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_316, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_317, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_318, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_319, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_320, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_321, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_322, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_323, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_324, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_325, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_326, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_327, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_328, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_329, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_330, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_331, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_332, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_333, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_334, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_335, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_336, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_337, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_338, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_339, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_340, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_341, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_342, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_343, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_344, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_345, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_346, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_347, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_348, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_349, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_350, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_351, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_352, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_353, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_354, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_355, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_356, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_357, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_358, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_359, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_360, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_361, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_362, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_363, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_364, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_365, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_366, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_367, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_368, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_369, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_370, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_371, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_372, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_373, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_374, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_375, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_376, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_377, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_378, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_379, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_380, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_381, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_382, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_383, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_384, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_385, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_386, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_387, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_388, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_389, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_390, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_391, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_392, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_393, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_394, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_395, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_396, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_397, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_398, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_399, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_400, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_401, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_402, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_403, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_404, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_405, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_406, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_407, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_408, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_409, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_410, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_411, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_412, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_413, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_414, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_415, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_416, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_417, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_418, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_419, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_420, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_421, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_422, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_423, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_424, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_425, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_426, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_427, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_428, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_429, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_430, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_431, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_432, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_433, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_434, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_435, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_436, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_437, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_438, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_439, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_440, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_441, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_442, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_443, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_444, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_445, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_446, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_447, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_448, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_449, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_450, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_451, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_452, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_453, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_454, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_455, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_456, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_457, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_458, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_459, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_460, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_461, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_462, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_463, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_464, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_465, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_466, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_467, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_468, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_469, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_470, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_471, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_472, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_473, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_474, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_475, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_476, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_477, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_478, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_479, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_480, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_481, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_482, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_483, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_484, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_485, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_486, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_487, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_488, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_489, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_490, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_491, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_492, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_493, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_494, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_495, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_496, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_497, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_498, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_499, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_500, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_501, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_502, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_503, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_504, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_505, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_506, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_507, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_508, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_509, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_510, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_511, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_512, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_513, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_514, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_515, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_516, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_517, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_518, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_519, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_520, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_521, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_522, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_523, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_524, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_525, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_526, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_527, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_528, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_529, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_530, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_531, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_532, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_533, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_534, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_535, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_536, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_537, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_538, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_539, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_540, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_541, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_542, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_543, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_544, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_545, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_546, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_547, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_548, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_549, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_550, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_551, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_552, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_553, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_554, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_555, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_556, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_557, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_558, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_559, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_560, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_561, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_562, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_563, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_564, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_565, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_566, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_567, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_568, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_569, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_570, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_571, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_572, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_573, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_574, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_575, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_576, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_577, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_578, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_579, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_580, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_581, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_582, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_583, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_584, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_585, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_586, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_587, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_588, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_589, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_590, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_591, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_592, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_593, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_594, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_595, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_596, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_597, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_598, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_599, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_600, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_601, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_602, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_603, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_604, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_605, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_606, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_607, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_608, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_609, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_610, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_611, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_612, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_613, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_614, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_615, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_616, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_617, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_618, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_619, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_620, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_621, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_622, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_623, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_624, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_625, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_626, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_627, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_628, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_629, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_630, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_631, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_632, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_633, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_634, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_635, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_636, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_637, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_638, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_639, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_640, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_641, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_642, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_643, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_644, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_645, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_646, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_647, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_648, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_649, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_650, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_651, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_652, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_653, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_654, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_655, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_656, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_657, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_658, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_659, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_660, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_661, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_662, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_663, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_664, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_665, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_666, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_667, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_668, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_669, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_670, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_671, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_672, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_673, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_674, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_675, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_676, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_677, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_678, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_679, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_680, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_681, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_682, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_683, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_684, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_685, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_686, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_687, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_688, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_689, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_690, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_691, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_692, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_693, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_694, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_695, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_696, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_697, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_698, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_699, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_700, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_701, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_702, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_703, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_704, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_705, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_706, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_707, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_708, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_709, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_710, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_711, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_712, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_713, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_714, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_715, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_716, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_717, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_718, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_719, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_720, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_721, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_722, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_723, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_724, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_725, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_726, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_727, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_728, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_729, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_730, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_731, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_732, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_733, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_734, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_735, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_736, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_737, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_738, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_739, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_740, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_741, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_742, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_743, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_744, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_745, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_746, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_747, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_748, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_749, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_750, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_751, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_752, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_753, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_754, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_755, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_756, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_757, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_758, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_759, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_760, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_761, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_762, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_763, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_764, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_765, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_766, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_767, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_768, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_769, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_770, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_771, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_772, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_773, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_774, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_775, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_776, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_777, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_778, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_779, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_780, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_781, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_782, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_783, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_784, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_785, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_786, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_787, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_788, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_789, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_790, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_791, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_792, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_793, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_794, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_795, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_796, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_797, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_798, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_799, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_800, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_801, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_802, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_803, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_804, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_805, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_806, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_807, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_808, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_809, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_810, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_811, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_812, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_813, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_814, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_815, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_816, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_817, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_818, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_819, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_820, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_821, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_822, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_823, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_824, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_825, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_826, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_827, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_828, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_829, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_830, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_831, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_832, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_833, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_834, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_835, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_836, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_837, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_838, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_839, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_840, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_841, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_842, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_843, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_844, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_845, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_846, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_847, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_848, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_849, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_850, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_851, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_852, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_853, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_854, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_855, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_856, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_857, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_858, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_859, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_860, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_861, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_862, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_863, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_864, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_865, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_866, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_867, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_868, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_869, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_870, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_871, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_872, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_873, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_874, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_875, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_876, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_877, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_878, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_879, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_880, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_881, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_882, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_883, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_884, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_885, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_886, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_887, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_888, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_889, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_890, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_891, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_892, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_893, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_894, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_895, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_896, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_897, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_898, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_899, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_900, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_901, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_902, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_903, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_904, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_905, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_906, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_907, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_908, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_909, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_910, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_911, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_912, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_913, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_914, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_915, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_916, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_917, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_918, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_919, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_920, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_921, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_922, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_923, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_924, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_925, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_926, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_927, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_928, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_929, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_930, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_931, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_932, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_933, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_934, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_935, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_936, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_937, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_938, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_939, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_940, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_941, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_942, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_943, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_944, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_945, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_946, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_947, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_948, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_949, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_950, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_951, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_952, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_953, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_954, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_955, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_956, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_957, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_958, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_959, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_960, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_961, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_962, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_963, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_964, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_965, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_966, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_967, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_968, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_969, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_970, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_971, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_972, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_973, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_974, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_975, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_976, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_977, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_978, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_979, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_980, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_981, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_982, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_983, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_984, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_985, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_986, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_987, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_988, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_989, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_990, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_991, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_992, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_993, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_994, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_995, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_996, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_997, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_998, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_999, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1000, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1001, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1002, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1003, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1004, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1005, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1006, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1007, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1008, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1009, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1010, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1011, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1012, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1013, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1014, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1015, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1016, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1017, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1018, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1019, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1020, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1021, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1022, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1023, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1024, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1025, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1026, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1027, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1028, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1029, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1030, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1031, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1032, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1033, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1034, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1035, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1036, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1037, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1038, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1039, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1040, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1041, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1042, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1043, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1044, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1045, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1046, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1047, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1048, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1049, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1050, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1051, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1052, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1053, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1054, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1055, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1056, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1057, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1058, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1059, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1060, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1061, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1062, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1063, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1064, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1065, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1066, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1067, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1068, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1069, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1070, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1071, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1072, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1073, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1074, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1075, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1076, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1077, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1078, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1079, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1080, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1081, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1082, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1083, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1084, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1085, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1086, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1087, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1088, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1089, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1090, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1091, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1092, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1093, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1094, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1095, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1096, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1097, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1098, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1099, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1100, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1101, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1102, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1103, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1104, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1105, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1106, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1107, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1108, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1109, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1110, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1111, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1112, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1113, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1114, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1115, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1116, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1117, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1118, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1119, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1120, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1121, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1122, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1123, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1124, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1125, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1126, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1127, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1128, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1129, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1130, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1131, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1132, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1133, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1134, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1135, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1136, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1137, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1138, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1139, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1140, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1141, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1142, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1143, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1144, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1145, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1146, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1147, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1148, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1149, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1150, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1151, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1152, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1153, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1154, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1155, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1156, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1157, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1158, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1159, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1160, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1161, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1162, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1163, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1164, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1165, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1166, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1167, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1168, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1169, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1170, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1171, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1172, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1173, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1174, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1175, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1176, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1177, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1178, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1179, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1180, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1181, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1182, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1183, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1184, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1185, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1186, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1187, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1188, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1189, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1190, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1191, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1192, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1193, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1194, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1195, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1196, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1197, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1198, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1199, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1200, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1201, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1202, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1203, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1204, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1205, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1206, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1207, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1208, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1209, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1210, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1211, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1212, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1213, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1214, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1215, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1216, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1217, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1218, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1219, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1220, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1221, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1222, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1223, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1224, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1225, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1226, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1227, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1228, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1229, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1230, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1231, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1232, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1233, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1234, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1235, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1236, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1237, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1238, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1239, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1240, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1241, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1242, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1243, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1244, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1245, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1246, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1247, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1248, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1249, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1250, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1251, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1252, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1253, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1254, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1255, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1256, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1257, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1258, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1259, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1260, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1261, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1262, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1263, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1264, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1265, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1266, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1267, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1268, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1269, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1270, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1271, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1272, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1273, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1274, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1275, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1276, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1277, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1278, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1279, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1280, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1281, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1282, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1283, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1284, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1285, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1286, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1287, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1288, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1289, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1290, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1291, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1292, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1293, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1294, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1295, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1296, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1297, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1298, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1299, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1300, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1301, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1302, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1303, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1304, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1305, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1306, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1307, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1308, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1309, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1310, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1311, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1312, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1313, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1314, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1315, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1316, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1317, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1318, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1319, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1320, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1321, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1322, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1323, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1324, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1325, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1326, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1327, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1328, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1329, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1330, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1331, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1332, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1333, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1334, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1335, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1336, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1337, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1338, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1339, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1340, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1341, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1342, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1343, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1344, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1345, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1346, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1347, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1348, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1349, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1350, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1351, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1352, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1353, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1354, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1355, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1356, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1357, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1358, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1359, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1360, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1361, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1362, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1363, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1364, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1365, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1366, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1367, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1368, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1369, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1370, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1371, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1372, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1373, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1374, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1375, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1376, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1377, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1378, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1379, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1380, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1381, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1382, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1383, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1384, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1385, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1386, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1387, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1388, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1389, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1390, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1391, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1392, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1393, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1394, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1395, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1396, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1397, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1398, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1399, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1400, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1401, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1402, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1403, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1404, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1405, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1406, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1407, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1408, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1409, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1410, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1411, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1412, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1413, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1414, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1415, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1416, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1417, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1418, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1419, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1420, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1421, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1422, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1423, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1424, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1425, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1426, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1427, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1428, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1429, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1430, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1431, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1432, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1433, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1434, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1435, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1436, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1437, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1438, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1439, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1440, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1441, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1442, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1443, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1444, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1445, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1446, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1447, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1448, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1449, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1450, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1451, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1452, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1453, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1454, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1455, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1456, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1457, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1458, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1459, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1460, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1461, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1462, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1463, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1464, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1465, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1466, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1467, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1468, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1469, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1470, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1471, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1472, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1473, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1474, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1475, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1476, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1477, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1478, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1479, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1480, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1481, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1482, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1483, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1484, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1485, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1486, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1487, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1488, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1489, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1490, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1491, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1492, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1493, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1494, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1495, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1496, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1497, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1498, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1499, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1500, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1501, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1502, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1503, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1504, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1505, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1506, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1507, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1508, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1509, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1510, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1511, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1512, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1513, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1514, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1515, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1516, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1517, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1518, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1519, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1520, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1521, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1522, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1523, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1524, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1525, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1526, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1527, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1528, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1529, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1530, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1531, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1532, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1533, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1534, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1535, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1536, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1537, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1538, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1539, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1540, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1541, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1542, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1543, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1544, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1545, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1546, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1547, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1548, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1549, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1550, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1551, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1552, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1553, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1554, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1555, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1556, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1557, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1558, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1559, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1560, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1561, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1562, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1563, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1564, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1565, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1566, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1567, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1568, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1569, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1570, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1571, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1572, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1573, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1574, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1575, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1576, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1577, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1578, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1579, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1580, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1581, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1582, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1583, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1584, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1585, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1586, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1587, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1588, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1589, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1590, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1591, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1592, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1593, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1594, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1595, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1596, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1597, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1598, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1599, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1600, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1601, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1602, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1603, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1604, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1605, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1606, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1607, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1608, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1609, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1610, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1611, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1612, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1613, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1614, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1615, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1616, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1617, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1618, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1619, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1620, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1621, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1622, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1623, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1624, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1625, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1626, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1627, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1628, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1629, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1630, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1631, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1632, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1633, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1634, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1635, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1636, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1637, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1638, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1639, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1640, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1641, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1642, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1643, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1644, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1645, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1646, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1647, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1648, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1649, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1650, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1651, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1652, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1653, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1654, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1655, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1656, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1657, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1658, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1659, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1660, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1661, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1662, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1663, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1664, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1665, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1666, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1667, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1668, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1669, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1670, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1671, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1672, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1673, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1674, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1675, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1676, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1677, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1678, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1679, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1680, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1681, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1682, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1683, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1684, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1685, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1686, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1687, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1688, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1689, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1690, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1691, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1692, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1693, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1694, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1695, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1696, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1697, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1698, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1699, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1700, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1701, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1702, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1703, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1704, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1705, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1706, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1707, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1708, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1709, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1710, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1711, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1712, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1713, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1714, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1715, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1716, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1717, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1718, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1719, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1720, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1721, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1722, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1723, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1724, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1725, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1726, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1727, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1728, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1729, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1730, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1731, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1732, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1733, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1734, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1735, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1736, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1737, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1738, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1739, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1740, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1741, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1742, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1743, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1744, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1745, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1746, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1747, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1748, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1749, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1750, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1751, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1752, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1753, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1754, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1755, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1756, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1757, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1758, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1759, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1760, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1761, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1762, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1763, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1764, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1765, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1766, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1767, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1768, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1769, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1770, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1771, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1772, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1773, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1774, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1775, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1776, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1777, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1778, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1779, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1780, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1781, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1782, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1783, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1784, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1785, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1786, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1787, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1788, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1789, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1790, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1791, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1792, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1793, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1794, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1795, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1796, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1797, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1798, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1799, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1800, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1801, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1802, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1803, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1804, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1805, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1806, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1807, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1808, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1809, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1810, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1811, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1812, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1813, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1814, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1815, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1816, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1817, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1818, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1819, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1820, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1821, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1822, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1823, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1824, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1825, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1826, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1827, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1828, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1829, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1830, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1831, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1832, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1833, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1834, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1835, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1836, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1837, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1838, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1839, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1840, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1841, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1842, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1843, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1844, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1845, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1846, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1847, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1848, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1849, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1850, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1851, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1852, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1853, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1854, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1855, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1856, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1857, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1858, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1859, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1860, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1861, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1862, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1863, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1864, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1865, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1866, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1867, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1868, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1869, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1870, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1871, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1872, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1873, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1874, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1875, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1876, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1877, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1878, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1879, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1880, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1881, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1882, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1883, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1884, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1885, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1886, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1887, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1888, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1889, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1890, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1891, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1892, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1893, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1894, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1895, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1896, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1897, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1898, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1899, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1900, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1901, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1902, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1903, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1904, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1905, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1906, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1907, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1908, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1909, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1910, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1911, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1912, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1913, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1914, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1915, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1916, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1917, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1918, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1919, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1920, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1921, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1922, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1923, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1924, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1925, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1926, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1927, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1928, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1929, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1930, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1931, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1932, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1933, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1934, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1935, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1936, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1937, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1938, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1939, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1940, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1941, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1942, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1943, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1944, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1945, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1946, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1947, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1948, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1949, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1950, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1951, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1952, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1953, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1954, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1955, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1956, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1957, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1958, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1959, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1960, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1961, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1962, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1963, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1964, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1965, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1966, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1967, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1968, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1969, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1970, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1971, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1972, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1973, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1974, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1975, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1976, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1977, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1978, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1979, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1980, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1981, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1982, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1983, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1984, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1985, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1986, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1987, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1988, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1989, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1990, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1991, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1992, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1993, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1994, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1995, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1996, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1997, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1998, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_1999, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2000, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2001, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2002, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2003, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2004, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2005, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2006, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2007, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2008, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2009, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2010, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2011, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2012, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2013, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2014, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2015, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2016, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2017, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2018, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2019, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2020, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2021, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2022, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2023, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2024, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2025, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2026, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2027, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2028, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2029, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2030, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2031, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2032, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2033, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2034, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2035, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2036, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2037, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2038, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2039, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2040, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2041, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2042, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2043, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2044, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2045, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2046, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2047, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2048, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2049, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2050, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2051, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2052, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2053, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2054, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2055, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2056, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2057, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2058, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2059, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2060, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2061, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2062, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2063, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2064, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2065, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2066, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2067, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2068, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2069, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2070, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2071, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2072, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2073, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2074, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2075, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2076, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2077, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2078, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2079, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2080, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2081, #endif #if defined(WITH_X25519) && defined(WITH_CURVE_WEI25519) &xdh_wei25519_2082, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2083, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2084, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2085, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2086, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2087, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2088, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2089, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2090, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2091, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2092, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2093, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2094, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2095, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2096, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2097, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2098, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2099, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2100, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2101, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2102, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2103, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2104, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2105, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2106, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2107, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2108, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2109, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2110, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2111, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2112, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2113, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2114, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2115, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2116, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2117, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2118, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2119, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2120, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2121, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2122, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2123, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2124, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2125, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2126, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2127, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2128, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2129, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2130, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2131, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2132, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2133, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2134, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2135, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2136, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2137, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2138, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2139, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2140, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2141, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2142, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2143, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2144, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2145, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2146, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2147, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2148, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2149, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2150, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2151, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2152, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2153, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2154, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2155, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2156, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2157, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2158, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2159, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2160, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2161, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2162, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2163, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2164, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2165, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2166, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2167, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2168, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2169, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2170, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2171, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2172, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2173, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2174, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2175, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2176, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2177, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2178, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2179, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2180, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2181, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2182, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2183, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2184, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2185, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2186, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2187, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2188, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2189, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2190, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2191, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2192, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2193, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2194, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2195, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2196, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2197, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2198, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2199, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2200, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2201, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2202, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2203, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2204, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2205, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2206, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2207, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2208, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2209, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2210, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2211, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2212, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2213, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2214, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2215, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2216, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2217, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2218, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2219, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2220, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2221, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2222, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2223, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2224, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2225, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2226, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2227, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2228, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2229, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2230, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2231, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2232, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2233, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2234, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2235, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2236, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2237, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2238, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2239, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2240, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2241, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2242, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2243, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2244, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2245, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2246, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2247, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2248, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2249, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2250, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2251, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2252, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2253, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2254, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2255, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2256, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2257, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2258, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2259, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2260, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2261, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2262, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2263, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2264, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2265, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2266, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2267, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2268, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2269, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2270, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2271, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2272, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2273, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2274, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2275, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2276, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2277, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2278, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2279, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2280, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2281, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2282, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2283, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2284, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2285, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2286, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2287, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2288, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2289, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2290, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2291, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2292, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2293, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2294, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2295, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2296, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2297, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2298, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2299, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2300, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2301, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2302, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2303, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2304, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2305, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2306, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2307, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2308, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2309, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2310, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2311, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2312, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2313, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2314, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2315, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2316, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2317, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2318, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2319, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2320, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2321, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2322, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2323, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2324, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2325, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2326, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2327, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2328, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2329, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2330, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2331, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2332, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2333, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2334, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2335, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2336, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2337, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2338, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2339, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2340, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2341, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2342, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2343, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2344, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2345, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2346, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2347, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2348, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2349, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2350, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2351, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2352, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2353, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2354, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2355, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2356, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2357, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2358, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2359, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2360, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2361, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2362, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2363, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2364, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2365, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2366, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2367, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2368, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2369, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2370, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2371, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2372, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2373, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2374, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2375, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2376, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2377, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2378, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2379, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2380, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2381, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2382, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2383, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2384, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2385, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2386, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2387, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2388, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2389, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2390, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2391, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2392, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2393, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2394, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2395, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2396, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2397, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2398, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2399, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2400, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2401, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2402, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2403, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2404, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2405, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2406, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2407, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2408, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2409, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2410, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2411, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2412, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2413, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2414, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2415, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2416, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2417, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2418, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2419, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2420, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2421, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2422, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2423, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2424, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2425, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2426, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2427, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2428, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2429, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2430, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2431, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2432, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2433, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2434, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2435, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2436, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2437, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2438, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2439, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2440, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2441, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2442, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2443, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2444, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2445, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2446, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2447, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2448, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2449, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2450, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2451, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2452, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2453, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2454, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2455, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2456, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2457, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2458, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2459, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2460, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2461, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2462, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2463, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2464, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2465, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2466, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2467, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2468, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2469, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2470, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2471, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2472, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2473, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2474, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2475, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2476, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2477, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2478, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2479, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2480, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2481, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2482, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2483, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2484, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2485, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2486, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2487, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2488, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2489, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2490, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2491, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2492, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2493, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2494, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2495, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2496, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2497, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2498, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2499, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2500, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2501, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2502, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2503, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2504, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2505, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2506, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2507, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2508, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2509, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2510, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2511, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2512, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2513, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2514, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2515, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2516, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2517, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2518, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2519, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2520, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2521, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2522, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2523, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2524, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2525, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2526, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2527, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2528, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2529, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2530, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2531, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2532, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2533, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2534, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2535, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2536, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2537, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2538, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2539, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2540, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2541, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2542, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2543, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2544, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2545, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2546, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2547, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2548, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2549, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2550, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2551, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2552, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2553, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2554, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2555, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2556, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2557, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2558, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2559, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2560, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2561, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2562, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2563, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2564, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2565, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2566, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2567, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2568, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2569, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2570, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2571, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2572, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2573, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2574, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2575, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2576, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2577, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2578, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2579, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2580, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2581, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2582, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2583, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2584, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2585, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2586, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2587, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2588, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2589, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2590, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2591, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2592, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2593, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2594, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2595, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2596, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2597, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2598, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2599, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2600, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2601, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2602, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2603, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2604, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2605, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2606, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2607, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2608, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2609, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2610, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2611, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2612, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2613, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2614, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2615, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2616, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2617, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2618, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2619, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2620, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2621, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2622, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2623, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2624, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2625, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2626, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2627, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2628, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2629, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2630, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2631, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2632, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2633, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2634, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2635, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2636, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2637, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2638, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2639, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2640, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2641, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2642, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2643, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2644, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2645, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2646, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2647, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2648, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2649, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2650, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2651, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2652, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2653, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2654, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2655, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2656, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2657, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2658, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2659, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2660, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2661, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2662, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2663, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2664, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2665, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2666, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2667, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2668, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2669, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2670, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2671, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2672, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2673, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2674, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2675, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2676, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2677, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2678, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2679, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2680, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2681, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2682, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2683, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2684, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2685, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2686, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2687, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2688, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2689, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2690, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2691, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2692, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2693, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2694, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2695, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2696, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2697, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2698, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2699, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2700, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2701, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2702, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2703, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2704, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2705, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2706, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2707, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2708, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2709, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2710, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2711, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2712, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2713, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2714, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2715, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2716, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2717, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2718, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2719, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2720, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2721, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2722, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2723, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2724, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2725, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2726, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2727, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2728, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2729, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2730, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2731, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2732, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2733, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2734, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2735, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2736, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2737, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2738, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2739, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2740, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2741, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2742, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2743, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2744, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2745, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2746, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2747, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2748, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2749, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2750, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2751, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2752, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2753, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2754, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2755, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2756, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2757, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2758, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2759, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2760, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2761, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2762, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2763, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2764, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2765, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2766, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2767, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2768, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2769, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2770, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2771, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2772, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2773, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2774, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2775, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2776, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2777, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2778, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2779, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2780, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2781, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2782, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2783, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2784, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2785, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2786, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2787, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2788, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2789, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2790, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2791, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2792, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2793, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2794, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2795, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2796, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2797, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2798, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2799, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2800, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2801, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2802, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2803, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2804, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2805, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2806, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2807, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2808, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2809, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2810, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2811, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2812, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2813, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2814, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2815, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2816, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2817, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2818, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2819, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2820, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2821, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2822, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2823, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2824, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2825, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2826, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2827, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2828, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2829, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2830, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2831, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2832, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2833, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2834, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2835, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2836, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2837, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2838, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2839, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2840, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2841, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2842, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2843, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2844, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2845, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2846, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2847, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2848, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2849, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2850, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2851, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2852, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2853, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2854, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2855, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2856, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2857, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2858, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2859, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2860, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2861, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2862, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2863, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2864, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2865, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2866, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2867, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2868, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2869, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2870, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2871, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2872, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2873, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2874, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2875, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2876, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2877, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2878, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2879, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2880, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2881, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2882, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2883, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2884, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2885, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2886, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2887, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2888, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2889, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2890, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2891, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2892, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2893, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2894, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2895, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2896, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2897, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2898, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2899, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2900, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2901, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2902, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2903, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2904, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2905, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2906, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2907, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2908, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2909, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2910, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2911, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2912, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2913, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2914, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2915, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2916, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2917, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2918, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2919, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2920, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2921, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2922, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2923, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2924, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2925, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2926, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2927, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2928, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2929, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2930, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2931, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2932, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2933, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2934, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2935, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2936, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2937, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2938, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2939, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2940, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2941, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2942, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2943, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2944, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2945, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2946, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2947, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2948, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2949, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2950, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2951, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2952, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2953, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2954, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2955, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2956, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2957, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2958, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2959, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2960, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2961, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2962, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2963, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2964, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2965, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2966, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2967, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2968, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2969, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2970, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2971, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2972, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2973, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2974, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2975, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2976, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2977, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2978, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2979, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2980, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2981, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2982, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2983, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2984, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2985, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2986, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2987, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2988, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2989, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2990, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2991, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2992, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2993, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2994, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2995, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2996, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2997, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2998, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_2999, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3000, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3001, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3002, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3003, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3004, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3005, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3006, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3007, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3008, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3009, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3010, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3011, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3012, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3013, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3014, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3015, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3016, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3017, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3018, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3019, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3020, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3021, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3022, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3023, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3024, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3025, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3026, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3027, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3028, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3029, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3030, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3031, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3032, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3033, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3034, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3035, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3036, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3037, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3038, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3039, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3040, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3041, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3042, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3043, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3044, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3045, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3046, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3047, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3048, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3049, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3050, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3051, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3052, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3053, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3054, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3055, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3056, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3057, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3058, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3059, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3060, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3061, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3062, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3063, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3064, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3065, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3066, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3067, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3068, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3069, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3070, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3071, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3072, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3073, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3074, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3075, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3076, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3077, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3078, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3079, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3080, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3081, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3082, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3083, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3084, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3085, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3086, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3087, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3088, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3089, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3090, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3091, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3092, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3093, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3094, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3095, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3096, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3097, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3098, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3099, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3100, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3101, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3102, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3103, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3104, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3105, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3106, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3107, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3108, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3109, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3110, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3111, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3112, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3113, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3114, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3115, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3116, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3117, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3118, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3119, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3120, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3121, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3122, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3123, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3124, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3125, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3126, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3127, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3128, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3129, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3130, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3131, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3132, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3133, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3134, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3135, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3136, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3137, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3138, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3139, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3140, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3141, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3142, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3143, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3144, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3145, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3146, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3147, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3148, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3149, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3150, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3151, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3152, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3153, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3154, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3155, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3156, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3157, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3158, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3159, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3160, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3161, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3162, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3163, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3164, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3165, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3166, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3167, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3168, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3169, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3170, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3171, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3172, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3173, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3174, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3175, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3176, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3177, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3178, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3179, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3180, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3181, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3182, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3183, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3184, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3185, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3186, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3187, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3188, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3189, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3190, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3191, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3192, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3193, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3194, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3195, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3196, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3197, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3198, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3199, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3200, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3201, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3202, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3203, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3204, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3205, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3206, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3207, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3208, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3209, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3210, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3211, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3212, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3213, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3214, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3215, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3216, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3217, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3218, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3219, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3220, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3221, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3222, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3223, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3224, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3225, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3226, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3227, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3228, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3229, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3230, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3231, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3232, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3233, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3234, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3235, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3236, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3237, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3238, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3239, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3240, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3241, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3242, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3243, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3244, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3245, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3246, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3247, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3248, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3249, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3250, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3251, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3252, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3253, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3254, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3255, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3256, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3257, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3258, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3259, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3260, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3261, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3262, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3263, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3264, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3265, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3266, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3267, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3268, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3269, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3270, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3271, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3272, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3273, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3274, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3275, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3276, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3277, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3278, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3279, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3280, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3281, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3282, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3283, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3284, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3285, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3286, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3287, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3288, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3289, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3290, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3291, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3292, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3293, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3294, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3295, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3296, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3297, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3298, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3299, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3300, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3301, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3302, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3303, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3304, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3305, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3306, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3307, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3308, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3309, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3310, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3311, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3312, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3313, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3314, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3315, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3316, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3317, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3318, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3319, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3320, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3321, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3322, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3323, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3324, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3325, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3326, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3327, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3328, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3329, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3330, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3331, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3332, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3333, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3334, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3335, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3336, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3337, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3338, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3339, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3340, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3341, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3342, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3343, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3344, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3345, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3346, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3347, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3348, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3349, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3350, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3351, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3352, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3353, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3354, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3355, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3356, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3357, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3358, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3359, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3360, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3361, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3362, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3363, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3364, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3365, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3366, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3367, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3368, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3369, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3370, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3371, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3372, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3373, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3374, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3375, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3376, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3377, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3378, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3379, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3380, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3381, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3382, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3383, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3384, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3385, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3386, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3387, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3388, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3389, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3390, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3391, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3392, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3393, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3394, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3395, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3396, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3397, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3398, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3399, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3400, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3401, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3402, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3403, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3404, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3405, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3406, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3407, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3408, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3409, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3410, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3411, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3412, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3413, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3414, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3415, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3416, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3417, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3418, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3419, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3420, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3421, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3422, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3423, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3424, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3425, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3426, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3427, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3428, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3429, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3430, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3431, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3432, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3433, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3434, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3435, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3436, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3437, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3438, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3439, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3440, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3441, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3442, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3443, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3444, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3445, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3446, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3447, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3448, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3449, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3450, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3451, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3452, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3453, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3454, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3455, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3456, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3457, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3458, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3459, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3460, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3461, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3462, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3463, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3464, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3465, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3466, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3467, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3468, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3469, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3470, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3471, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3472, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3473, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3474, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3475, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3476, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3477, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3478, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3479, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3480, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3481, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3482, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3483, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3484, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3485, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3486, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3487, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3488, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3489, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3490, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3491, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3492, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3493, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3494, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3495, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3496, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3497, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3498, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3499, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3500, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3501, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3502, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3503, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3504, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3505, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3506, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3507, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3508, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3509, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3510, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3511, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3512, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3513, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3514, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3515, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3516, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3517, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3518, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3519, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3520, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3521, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3522, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3523, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3524, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3525, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3526, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3527, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3528, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3529, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3530, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3531, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3532, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3533, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3534, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3535, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3536, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3537, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3538, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3539, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3540, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3541, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3542, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3543, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3544, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3545, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3546, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3547, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3548, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3549, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3550, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3551, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3552, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3553, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3554, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3555, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3556, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3557, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3558, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3559, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3560, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3561, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3562, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3563, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3564, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3565, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3566, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3567, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3568, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3569, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3570, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3571, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3572, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3573, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3574, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3575, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3576, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3577, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3578, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3579, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3580, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3581, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3582, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3583, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3584, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3585, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3586, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3587, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3588, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3589, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3590, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3591, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3592, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3593, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3594, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3595, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3596, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3597, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3598, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3599, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3600, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3601, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3602, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3603, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3604, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3605, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3606, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3607, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3608, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3609, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3610, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3611, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3612, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3613, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3614, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3615, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3616, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3617, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3618, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3619, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3620, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3621, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3622, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3623, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3624, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3625, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3626, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3627, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3628, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3629, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3630, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3631, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3632, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3633, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3634, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3635, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3636, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3637, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3638, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3639, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3640, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3641, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3642, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3643, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3644, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3645, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3646, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3647, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3648, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3649, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3650, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3651, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3652, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3653, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3654, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3655, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3656, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3657, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3658, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3659, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3660, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3661, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3662, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3663, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3664, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3665, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3666, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3667, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3668, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3669, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3670, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3671, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3672, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3673, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3674, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3675, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3676, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3677, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3678, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3679, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3680, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3681, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3682, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3683, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3684, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3685, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3686, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3687, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3688, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3689, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3690, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3691, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3692, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3693, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3694, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3695, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3696, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3697, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3698, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3699, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3700, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3701, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3702, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3703, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3704, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3705, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3706, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3707, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3708, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3709, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3710, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3711, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3712, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3713, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3714, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3715, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3716, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3717, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3718, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3719, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3720, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3721, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3722, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3723, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3724, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3725, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3726, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3727, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3728, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3729, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3730, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3731, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3732, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3733, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3734, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3735, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3736, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3737, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3738, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3739, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3740, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3741, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3742, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3743, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3744, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3745, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3746, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3747, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3748, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3749, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3750, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3751, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3752, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3753, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3754, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3755, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3756, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3757, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3758, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3759, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3760, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3761, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3762, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3763, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3764, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3765, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3766, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3767, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3768, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3769, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3770, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3771, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3772, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3773, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3774, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3775, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3776, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3777, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3778, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3779, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3780, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3781, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3782, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3783, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3784, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3785, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3786, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3787, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3788, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3789, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3790, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3791, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3792, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3793, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3794, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3795, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3796, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3797, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3798, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3799, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3800, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3801, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3802, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3803, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3804, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3805, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3806, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3807, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3808, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3809, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3810, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3811, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3812, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3813, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3814, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3815, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3816, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3817, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3818, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3819, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3820, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3821, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3822, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3823, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3824, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3825, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3826, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3827, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3828, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3829, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3830, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3831, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3832, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3833, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3834, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3835, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3836, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3837, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3838, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3839, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3840, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3841, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3842, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3843, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3844, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3845, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3846, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3847, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3848, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3849, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3850, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3851, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3852, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3853, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3854, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3855, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3856, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3857, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3858, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3859, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3860, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3861, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3862, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3863, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3864, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3865, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3866, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3867, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3868, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3869, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3870, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3871, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3872, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3873, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3874, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3875, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3876, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3877, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3878, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3879, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3880, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3881, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3882, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3883, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3884, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3885, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3886, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3887, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3888, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3889, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3890, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3891, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3892, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3893, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3894, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3895, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3896, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3897, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3898, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3899, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3900, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3901, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3902, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3903, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3904, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3905, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3906, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3907, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3908, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3909, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3910, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3911, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3912, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3913, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3914, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3915, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3916, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3917, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3918, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3919, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3920, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3921, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3922, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3923, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3924, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3925, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3926, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3927, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3928, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3929, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3930, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3931, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3932, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3933, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3934, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3935, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3936, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3937, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3938, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3939, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3940, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3941, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3942, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3943, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3944, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3945, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3946, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3947, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3948, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3949, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3950, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3951, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3952, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3953, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3954, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3955, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3956, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3957, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3958, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3959, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3960, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3961, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3962, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3963, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3964, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3965, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3966, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3967, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3968, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3969, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3970, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3971, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3972, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3973, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3974, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3975, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3976, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3977, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3978, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3979, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3980, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3981, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3982, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3983, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3984, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3985, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3986, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3987, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3988, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3989, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3990, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3991, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3992, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3993, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3994, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3995, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3996, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3997, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3998, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_3999, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4000, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4001, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4002, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4003, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4004, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4005, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4006, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4007, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4008, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4009, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4010, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4011, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4012, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4013, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4014, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4015, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4016, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4017, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4018, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4019, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4020, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4021, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4022, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4023, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4024, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4025, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4026, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4027, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4028, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4029, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4030, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4031, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4032, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4033, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4034, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4035, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4036, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4037, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4038, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4039, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4040, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4041, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4042, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4043, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4044, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4045, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4046, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4047, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4048, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4049, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4050, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4051, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4052, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4053, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4054, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4055, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4056, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4057, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4058, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4059, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4060, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4061, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4062, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4063, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4064, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4065, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4066, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4067, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4068, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4069, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4070, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4071, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4072, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4073, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4074, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4075, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4076, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4077, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4078, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4079, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4080, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4081, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4082, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4083, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4084, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4085, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4086, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4087, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4088, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4089, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4090, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4091, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4092, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4093, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4094, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4095, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4096, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4097, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4098, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4099, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4100, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4101, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4102, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4103, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4104, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4105, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4106, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4107, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4108, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4109, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4110, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4111, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4112, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4113, #endif #if defined(WITH_X448) && defined(WITH_CURVE_WEI448) &xdh_wei448_4114, #endif NULL, }; #define NUM_WYCHEPROOF_XDH_TESTS (sizeof(wycheproof_xdh_all_tests) / sizeof(wycheproof_xdh_test *)) /******** XDH tests extracted from x25519_asn_test.json x25519_jwk_test.json x25519_pem_test.json x25519_test.json x448_asn_test.json x448_jwk_test.json x448_pem_test.json x448_test.json is 4115, skipped = 57 **********/ #define NUM_WYCHEPROOF_XDH_TESTS_IMPORTED 4115 #define NUM_WYCHEPROOF_XDH_TESTS_SKIPPED 57 #define NUM_WYCHEPROOF_XDH_TESTS_ACCEPTABLE 2020 #define NUM_WYCHEPROOF_XDH_TESTS_VALID 2072 #define NUM_WYCHEPROOF_XDH_TESTS_INVALID 23 /* Test 0 for HMAC, tcId is 1 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_0_key[] = { 0x7e, 0xef, 0x1e, 0x40, 0x25, 0x33, 0x50, 0xeb, 0x93, 0x07, 0xcc, 0x6b, 0xd8, 0xab, 0x8d, 0xf4, 0x34, 0xbc, 0x2f, 0xaf, 0x70, 0x95, 0xe4, 0x5b, 0x50, 0xff, 0xdd, 0x64, }; static const unsigned char hmac_sha224_0_tag[] = { 0x45, 0xb4, 0x66, 0x02, 0x12, 0x14, 0xd1, 0x92, 0x45, 0x50, 0x69, 0x00, 0x53, 0x2f, 0x52, 0x72, 0xf4, 0x4b, 0x5a, 0xd9, 0xb3, 0xd8, 0x29, 0xf0, 0xf5, 0xc2, 0x10, 0x8c, }; static const wycheproof_hmac_test hmac_sha224_0 = { .name = "hmac_sha224_0", .hash = SHA224, .key = hmac_sha224_0_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_0_tag, .taglen = 28, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 1 for HMAC, tcId is 2 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_1_key[] = { 0x86, 0x48, 0xee, 0x93, 0x6c, 0x6e, 0xbc, 0x5a, 0xe4, 0xbb, 0x48, 0xc1, 0x13, 0x9a, 0x54, 0xe3, 0xac, 0x5d, 0x89, 0x7b, 0xee, 0xc4, 0x92, 0xdc, 0x4d, 0x74, 0x07, 0x52, }; static const unsigned char hmac_sha224_1_msg[] = { 0x2e, }; static const unsigned char hmac_sha224_1_tag[] = { 0x5b, 0x72, 0xe3, 0x20, 0x86, 0x79, 0xe6, 0x3f, 0x92, 0x9e, 0x6e, 0xe1, 0x9a, 0x25, 0x7d, 0x05, 0x55, 0xf2, 0x14, 0x84, 0xc7, 0xca, 0xac, 0x7c, 0x98, 0x61, 0xbe, 0x43, }; static const wycheproof_hmac_test hmac_sha224_1 = { .name = "hmac_sha224_1", .hash = SHA224, .key = hmac_sha224_1_key, .keylen = 28, .msg = hmac_sha224_1_msg, .msglen = 1, .tag = hmac_sha224_1_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 2 for HMAC, tcId is 3 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_2_key[] = { 0x22, 0x97, 0xd7, 0x8c, 0xc4, 0x5f, 0xaf, 0x9b, 0x88, 0x5b, 0x36, 0xac, 0x80, 0x20, 0x5c, 0xc0, 0x8e, 0x1b, 0x73, 0x0f, 0x26, 0x4f, 0x23, 0xf4, 0xed, 0xbb, 0xb4, 0x06, }; static const unsigned char hmac_sha224_2_msg[] = { 0x32, 0x9f, }; static const unsigned char hmac_sha224_2_tag[] = { 0x2e, 0x7a, 0x81, 0xc4, 0xe2, 0x9a, 0x43, 0x5d, 0x91, 0xe9, 0x5f, 0x37, 0xfb, 0x0a, 0x62, 0xfb, 0xe9, 0xa6, 0x9e, 0x06, 0x1f, 0x41, 0x6c, 0x1a, 0xd1, 0x7a, 0x7f, 0xca, }; static const wycheproof_hmac_test hmac_sha224_2 = { .name = "hmac_sha224_2", .hash = SHA224, .key = hmac_sha224_2_key, .keylen = 28, .msg = hmac_sha224_2_msg, .msglen = 2, .tag = hmac_sha224_2_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 3 for HMAC, tcId is 4 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_3_key[] = { 0x03, 0x61, 0xa9, 0x04, 0xf7, 0xcb, 0xd1, 0x07, 0xa6, 0x17, 0x61, 0x4a, 0xb6, 0x9d, 0x11, 0x20, 0x8e, 0xe6, 0xd4, 0x23, 0xb3, 0xae, 0x90, 0xe2, 0xbb, 0x6d, 0x7e, 0x54, }; static const unsigned char hmac_sha224_3_msg[] = { 0xe6, 0xe7, 0x65, }; static const unsigned char hmac_sha224_3_tag[] = { 0xbb, 0xfa, 0x7f, 0xf9, 0x60, 0x93, 0x1e, 0x2f, 0x5e, 0xd8, 0xc9, 0x25, 0xcd, 0x74, 0x27, 0x29, 0x90, 0xe7, 0x55, 0xf3, 0x14, 0x22, 0xe5, 0xc8, 0x58, 0x99, 0x5b, 0x73, }; static const wycheproof_hmac_test hmac_sha224_3 = { .name = "hmac_sha224_3", .hash = SHA224, .key = hmac_sha224_3_key, .keylen = 28, .msg = hmac_sha224_3_msg, .msglen = 3, .tag = hmac_sha224_3_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 4 for HMAC, tcId is 5 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_4_key[] = { 0x26, 0x4a, 0x8d, 0x21, 0x28, 0xe8, 0xfd, 0x09, 0x72, 0xd9, 0xac, 0xc6, 0x6d, 0xc2, 0x75, 0xb1, 0x28, 0x6b, 0xee, 0xb0, 0xaf, 0xf7, 0xce, 0x8e, 0x97, 0xc7, 0xb9, 0x6c, }; static const unsigned char hmac_sha224_4_msg[] = { 0x25, 0x83, 0x8e, 0x50, }; static const unsigned char hmac_sha224_4_tag[] = { 0xb2, 0x5c, 0x33, 0xbb, 0xa1, 0xa9, 0x10, 0x24, 0xf4, 0x2c, 0xfb, 0x93, 0x23, 0x2a, 0xd6, 0x85, 0xd5, 0x4b, 0xe2, 0xca, 0x31, 0x0b, 0x0f, 0xf9, 0xba, 0x51, 0x07, 0xb8, }; static const wycheproof_hmac_test hmac_sha224_4 = { .name = "hmac_sha224_4", .hash = SHA224, .key = hmac_sha224_4_key, .keylen = 28, .msg = hmac_sha224_4_msg, .msglen = 4, .tag = hmac_sha224_4_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 5 for HMAC, tcId is 6 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_5_key[] = { 0x6d, 0xde, 0x88, 0x28, 0xf0, 0x9b, 0x7a, 0xa9, 0x81, 0x08, 0x2a, 0xa1, 0x16, 0xfc, 0xa3, 0xb7, 0x34, 0x17, 0x21, 0xc0, 0x44, 0x08, 0x03, 0xf5, 0x2c, 0xc9, 0x73, 0x2e, }; static const unsigned char hmac_sha224_5_msg[] = { 0xbe, 0x81, 0x60, 0x2d, 0xa7, }; static const unsigned char hmac_sha224_5_tag[] = { 0xe5, 0x10, 0xfb, 0xf1, 0x4b, 0xd7, 0x30, 0x1f, 0x75, 0x1c, 0xc0, 0xae, 0x89, 0xf8, 0x72, 0x5a, 0x76, 0x54, 0xeb, 0xbb, 0xa6, 0xbb, 0x2f, 0x74, 0x16, 0x26, 0x47, 0x1d, }; static const wycheproof_hmac_test hmac_sha224_5 = { .name = "hmac_sha224_5", .hash = SHA224, .key = hmac_sha224_5_key, .keylen = 28, .msg = hmac_sha224_5_msg, .msglen = 5, .tag = hmac_sha224_5_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 6 for HMAC, tcId is 7 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_6_key[] = { 0x3b, 0xa1, 0x56, 0xff, 0xdc, 0x55, 0xd1, 0x55, 0xbd, 0x08, 0x51, 0x05, 0xac, 0xa6, 0x4d, 0x13, 0x04, 0x4d, 0xb6, 0x0c, 0x82, 0xcf, 0x2c, 0xd9, 0xd6, 0x1d, 0x09, 0x8f, }; static const unsigned char hmac_sha224_6_msg[] = { 0x69, 0xc7, 0x6c, 0x89, 0x37, 0xa0, }; static const unsigned char hmac_sha224_6_tag[] = { 0xa9, 0xd3, 0x87, 0x40, 0x24, 0x50, 0x38, 0xd9, 0xc2, 0x3c, 0xbb, 0x59, 0xba, 0x65, 0x13, 0xf7, 0x03, 0x4d, 0x80, 0x47, 0xa0, 0x7a, 0x90, 0x4a, 0x2a, 0x23, 0xd2, 0xfc, }; static const wycheproof_hmac_test hmac_sha224_6 = { .name = "hmac_sha224_6", .hash = SHA224, .key = hmac_sha224_6_key, .keylen = 28, .msg = hmac_sha224_6_msg, .msglen = 6, .tag = hmac_sha224_6_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 7 for HMAC, tcId is 8 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_7_key[] = { 0x9c, 0x27, 0x39, 0xba, 0xe2, 0xa8, 0x63, 0xfb, 0x02, 0x36, 0x46, 0x6b, 0xa3, 0x40, 0x8f, 0x4e, 0xec, 0x8d, 0x43, 0x20, 0x6d, 0x56, 0xbb, 0x7a, 0xa2, 0xf8, 0xf7, 0x5e, }; static const unsigned char hmac_sha224_7_msg[] = { 0xaa, 0xf4, 0xc9, 0x14, 0x6d, 0xb9, 0x48, }; static const unsigned char hmac_sha224_7_tag[] = { 0x21, 0x10, 0x39, 0x3c, 0x6b, 0xa0, 0x1f, 0x53, 0xbe, 0x20, 0x35, 0x33, 0xfb, 0xc5, 0x47, 0x1f, 0xc8, 0xf0, 0x49, 0x40, 0xfe, 0x91, 0x24, 0x11, 0x56, 0x4b, 0xa3, 0x6e, }; static const wycheproof_hmac_test hmac_sha224_7 = { .name = "hmac_sha224_7", .hash = SHA224, .key = hmac_sha224_7_key, .keylen = 28, .msg = hmac_sha224_7_msg, .msglen = 7, .tag = hmac_sha224_7_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 8 for HMAC, tcId is 9 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_8_key[] = { 0x31, 0xd9, 0xca, 0xe2, 0xc3, 0xdf, 0x06, 0x40, 0x18, 0x20, 0x9b, 0x12, 0x1f, 0x9e, 0x88, 0x39, 0x76, 0xea, 0x75, 0x79, 0x42, 0xec, 0xda, 0x9d, 0x92, 0xfd, 0xad, 0xfd, }; static const unsigned char hmac_sha224_8_msg[] = { 0xb8, 0x44, 0x28, 0x95, 0x29, 0x20, 0x6f, 0x5a, }; static const unsigned char hmac_sha224_8_tag[] = { 0x1f, 0x1d, 0xdb, 0x86, 0x80, 0xb0, 0xd9, 0x98, 0x93, 0xc4, 0x98, 0xa7, 0x72, 0xa7, 0xbe, 0xa6, 0x3c, 0x2e, 0x08, 0xc0, 0x25, 0x7a, 0x7f, 0x31, 0xe3, 0xdb, 0x2b, 0x88, }; static const wycheproof_hmac_test hmac_sha224_8 = { .name = "hmac_sha224_8", .hash = SHA224, .key = hmac_sha224_8_key, .keylen = 28, .msg = hmac_sha224_8_msg, .msglen = 8, .tag = hmac_sha224_8_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 9 for HMAC, tcId is 10 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_9_key[] = { 0x89, 0xa1, 0xb9, 0xe9, 0x00, 0x44, 0x44, 0xc1, 0xd4, 0xe9, 0x67, 0x57, 0x0c, 0x21, 0xa0, 0x55, 0x12, 0xd3, 0xf6, 0x18, 0xec, 0x16, 0x8f, 0xc3, 0xe1, 0x3e, 0xa5, 0xa2, }; static const unsigned char hmac_sha224_9_msg[] = { 0x6b, 0x42, 0xeb, 0x6d, 0x84, 0xe9, 0x0c, 0x70, 0xc2, }; static const unsigned char hmac_sha224_9_tag[] = { 0x3b, 0x6f, 0x3b, 0x09, 0xe0, 0x34, 0x24, 0xc8, 0xad, 0xc2, 0x67, 0xfc, 0xce, 0xfa, 0xf6, 0x14, 0xdb, 0x6d, 0x74, 0x97, 0x77, 0x54, 0xfc, 0xad, 0x8a, 0x8d, 0x1a, 0x9b, }; static const wycheproof_hmac_test hmac_sha224_9 = { .name = "hmac_sha224_9", .hash = SHA224, .key = hmac_sha224_9_key, .keylen = 28, .msg = hmac_sha224_9_msg, .msglen = 9, .tag = hmac_sha224_9_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 10 for HMAC, tcId is 11 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_10_key[] = { 0x43, 0x98, 0x73, 0x17, 0x52, 0xfd, 0x7a, 0xf1, 0xdb, 0x86, 0xeb, 0xcc, 0xbe, 0xe0, 0xad, 0x65, 0xeb, 0x5f, 0xaf, 0x00, 0xac, 0xe6, 0xc9, 0xaa, 0x35, 0x44, 0x1f, 0xaa, }; static const unsigned char hmac_sha224_10_msg[] = { 0x1a, 0xe2, 0xe7, 0xd9, 0x17, 0xc4, 0x80, 0x26, 0x57, 0x0d, }; static const unsigned char hmac_sha224_10_tag[] = { 0x5f, 0x19, 0x48, 0x33, 0x69, 0x53, 0x33, 0x7c, 0x38, 0x1d, 0x44, 0x9c, 0x17, 0xab, 0x5c, 0x32, 0x7c, 0x86, 0x12, 0x1a, 0x8b, 0x1e, 0x0d, 0xb1, 0x9f, 0x62, 0x4e, 0x3f, }; static const wycheproof_hmac_test hmac_sha224_10 = { .name = "hmac_sha224_10", .hash = SHA224, .key = hmac_sha224_10_key, .keylen = 28, .msg = hmac_sha224_10_msg, .msglen = 10, .tag = hmac_sha224_10_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 11 for HMAC, tcId is 12 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_11_key[] = { 0x33, 0x94, 0x60, 0xd6, 0xbb, 0x26, 0xca, 0x60, 0xeb, 0xce, 0xf1, 0x0c, 0x38, 0x58, 0x7b, 0x9e, 0x57, 0x5c, 0x39, 0x84, 0x91, 0x78, 0x2c, 0xcf, 0x9e, 0x8f, 0x68, 0x03, }; static const unsigned char hmac_sha224_11_msg[] = { 0xca, 0x03, 0xeb, 0x4f, 0x37, 0x53, 0x6b, 0x23, 0x77, 0x73, 0x8e, }; static const unsigned char hmac_sha224_11_tag[] = { 0x51, 0xc5, 0x66, 0x1c, 0x31, 0xfc, 0x7e, 0xdd, 0x09, 0xde, 0x60, 0xc9, 0x19, 0x57, 0x03, 0x68, 0x24, 0xa1, 0x97, 0x61, 0xbc, 0xc5, 0x4f, 0x1e, 0x93, 0xc4, 0x3c, 0x3c, }; static const wycheproof_hmac_test hmac_sha224_11 = { .name = "hmac_sha224_11", .hash = SHA224, .key = hmac_sha224_11_key, .keylen = 28, .msg = hmac_sha224_11_msg, .msglen = 11, .tag = hmac_sha224_11_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 12 for HMAC, tcId is 13 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_12_key[] = { 0x02, 0x5f, 0x83, 0x80, 0xd1, 0x0b, 0x82, 0x07, 0xb3, 0x62, 0x3e, 0x4a, 0x90, 0xf7, 0x9c, 0x3e, 0x75, 0x3b, 0x1b, 0xe6, 0xa3, 0x5b, 0x88, 0xb6, 0x83, 0x30, 0xa4, 0x0c, }; static const unsigned char hmac_sha224_12_msg[] = { 0xe5, 0x7d, 0xae, 0xf9, 0xed, 0xe4, 0xe9, 0x15, 0xc3, 0xa9, 0xee, 0xce, }; static const unsigned char hmac_sha224_12_tag[] = { 0x8a, 0xfd, 0xb3, 0x71, 0x71, 0x4e, 0x9d, 0x60, 0x63, 0xec, 0x9e, 0x43, 0xc8, 0xcd, 0x55, 0xe1, 0xc0, 0x32, 0xb2, 0xfd, 0xa5, 0x7f, 0x91, 0xe9, 0xec, 0x0f, 0x66, 0x01, }; static const wycheproof_hmac_test hmac_sha224_12 = { .name = "hmac_sha224_12", .hash = SHA224, .key = hmac_sha224_12_key, .keylen = 28, .msg = hmac_sha224_12_msg, .msglen = 12, .tag = hmac_sha224_12_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 13 for HMAC, tcId is 14 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_13_key[] = { 0x0b, 0xdc, 0x5f, 0x51, 0xf8, 0xa1, 0xa3, 0x5d, 0x75, 0x55, 0x4b, 0xe7, 0x0e, 0xfb, 0xcd, 0xf5, 0x1e, 0x54, 0xf3, 0x0f, 0xa4, 0x69, 0x6f, 0x72, 0x74, 0x31, 0x94, 0x1f, }; static const unsigned char hmac_sha224_13_msg[] = { 0xcc, 0x3d, 0xd1, 0xeb, 0x06, 0x90, 0xf7, 0xaf, 0x09, 0xad, 0x40, 0x8f, 0x9c, }; static const unsigned char hmac_sha224_13_tag[] = { 0xc0, 0x91, 0x89, 0x51, 0xc3, 0x42, 0x2b, 0x48, 0x50, 0x26, 0x35, 0xb6, 0xe5, 0x8c, 0x5d, 0xce, 0xe9, 0xfe, 0xa5, 0x1c, 0x9d, 0xce, 0x5c, 0x7c, 0x21, 0x5c, 0x9b, 0x93, }; static const wycheproof_hmac_test hmac_sha224_13 = { .name = "hmac_sha224_13", .hash = SHA224, .key = hmac_sha224_13_key, .keylen = 28, .msg = hmac_sha224_13_msg, .msglen = 13, .tag = hmac_sha224_13_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 14 for HMAC, tcId is 15 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_14_key[] = { 0x5a, 0xda, 0x97, 0xd9, 0x0a, 0x74, 0xa7, 0xd4, 0xa6, 0x8c, 0x54, 0x64, 0xff, 0xf2, 0x5a, 0x9b, 0x7f, 0xa2, 0xe7, 0x5d, 0x6a, 0xcf, 0x0a, 0x59, 0xf1, 0x43, 0xa2, 0xe9, }; static const unsigned char hmac_sha224_14_msg[] = { 0x3f, 0xe4, 0xed, 0xe1, 0x58, 0xaf, 0x10, 0x8e, 0x09, 0xf5, 0x43, 0xe1, 0x4a, 0xb7, }; static const unsigned char hmac_sha224_14_tag[] = { 0x18, 0x0a, 0x6b, 0x88, 0x14, 0xae, 0x34, 0x22, 0x8a, 0xe9, 0xac, 0x76, 0xda, 0x83, 0x79, 0x37, 0x6a, 0xae, 0x6f, 0x1a, 0xa0, 0x10, 0x2e, 0x8f, 0x06, 0xb0, 0x22, 0xdc, }; static const wycheproof_hmac_test hmac_sha224_14 = { .name = "hmac_sha224_14", .hash = SHA224, .key = hmac_sha224_14_key, .keylen = 28, .msg = hmac_sha224_14_msg, .msglen = 14, .tag = hmac_sha224_14_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 15 for HMAC, tcId is 16 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_15_key[] = { 0x00, 0x7a, 0xfe, 0x6b, 0x7c, 0x07, 0x01, 0xc3, 0x0c, 0xb7, 0x6b, 0x43, 0x1a, 0xfa, 0x35, 0x10, 0xc8, 0xb3, 0x1d, 0x21, 0xcf, 0xe0, 0xbb, 0xaa, 0x52, 0x89, 0xcd, 0x08, }; static const unsigned char hmac_sha224_15_msg[] = { 0xc2, 0xcf, 0x80, 0x00, 0x5c, 0x59, 0x1c, 0x1f, 0x73, 0x73, 0x69, 0xfc, 0xc2, 0x12, 0xf0, }; static const unsigned char hmac_sha224_15_tag[] = { 0xfb, 0xfd, 0xb4, 0x50, 0xa4, 0x2f, 0x9a, 0x41, 0x54, 0x14, 0x6f, 0x73, 0xc5, 0x90, 0xa0, 0xee, 0x91, 0x87, 0xaf, 0x85, 0x05, 0xd6, 0x07, 0x90, 0xa9, 0x61, 0x54, 0x47, }; static const wycheproof_hmac_test hmac_sha224_15 = { .name = "hmac_sha224_15", .hash = SHA224, .key = hmac_sha224_15_key, .keylen = 28, .msg = hmac_sha224_15_msg, .msglen = 15, .tag = hmac_sha224_15_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 16 for HMAC, tcId is 17 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_16_key[] = { 0x26, 0x49, 0x11, 0x68, 0xa3, 0x2c, 0xe8, 0xcb, 0xc4, 0xc0, 0xcd, 0x64, 0x10, 0x7e, 0x4f, 0xcc, 0x43, 0x2f, 0x07, 0xd5, 0x9c, 0x99, 0x28, 0x62, 0xe1, 0xe5, 0x5b, 0x1e, }; static const unsigned char hmac_sha224_16_msg[] = { 0x15, 0xe5, 0x10, 0x91, 0xb4, 0xf4, 0x24, 0xba, 0x1f, 0xde, 0xcb, 0x5e, 0x2f, 0xba, 0x11, 0xf6, }; static const unsigned char hmac_sha224_16_tag[] = { 0x3f, 0xa9, 0x9e, 0xe1, 0x60, 0x32, 0x8f, 0xdd, 0xc4, 0x7a, 0x7c, 0x50, 0x43, 0xe9, 0xef, 0x64, 0x5b, 0x8b, 0x07, 0x46, 0x2b, 0x71, 0xca, 0xd5, 0x8a, 0x02, 0x45, 0x17, }; static const wycheproof_hmac_test hmac_sha224_16 = { .name = "hmac_sha224_16", .hash = SHA224, .key = hmac_sha224_16_key, .keylen = 28, .msg = hmac_sha224_16_msg, .msglen = 16, .tag = hmac_sha224_16_tag, .taglen = 28, .result = 1, .comment = ", tcId is 17 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 17 for HMAC, tcId is 18 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_17_key[] = { 0x69, 0x78, 0xb6, 0xc1, 0x34, 0xdd, 0x69, 0x49, 0x83, 0x2d, 0x65, 0xe4, 0xcb, 0x9c, 0x1e, 0x1d, 0xc3, 0x6b, 0xea, 0xe4, 0xa1, 0x34, 0x90, 0x7c, 0x80, 0xda, 0x0f, 0x44, }; static const unsigned char hmac_sha224_17_msg[] = { 0x66, 0x41, 0xd8, 0x34, 0xb3, 0xfb, 0xfd, 0xb5, 0xd1, 0x78, 0x00, 0x78, 0x01, 0xf7, 0xb4, 0xe7, 0xb1, }; static const unsigned char hmac_sha224_17_tag[] = { 0x61, 0x38, 0x72, 0x30, 0x44, 0x6f, 0x31, 0xfd, 0xe8, 0x55, 0x2f, 0x22, 0xec, 0x52, 0xa7, 0xfe, 0xf8, 0x2e, 0x16, 0xd0, 0xad, 0x39, 0x9d, 0xe9, 0x39, 0xd8, 0x22, 0x9b, }; static const wycheproof_hmac_test hmac_sha224_17 = { .name = "hmac_sha224_17", .hash = SHA224, .key = hmac_sha224_17_key, .keylen = 28, .msg = hmac_sha224_17_msg, .msglen = 17, .tag = hmac_sha224_17_tag, .taglen = 28, .result = 1, .comment = ", tcId is 18 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 18 for HMAC, tcId is 19 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_18_key[] = { 0x9f, 0x9f, 0xb2, 0x80, 0xad, 0xf1, 0x2e, 0x73, 0x95, 0x48, 0xb1, 0xd6, 0x76, 0xcb, 0x79, 0x4d, 0x68, 0x5b, 0x91, 0x04, 0xe6, 0x3b, 0x61, 0x9b, 0x05, 0x5c, 0xb6, 0x0f, }; static const unsigned char hmac_sha224_18_msg[] = { 0x91, 0x51, 0x3d, 0xd6, 0xde, 0x40, 0xa1, 0xc2, 0x3f, 0x8d, 0x1e, 0xb0, 0xab, 0x8f, 0x5e, 0xa6, 0xf6, 0x83, 0x55, 0x06, 0xec, 0x75, 0x08, 0x94, }; static const unsigned char hmac_sha224_18_tag[] = { 0xe6, 0xb9, 0x2f, 0x9c, 0x03, 0x02, 0x70, 0x89, 0x7c, 0x5d, 0x27, 0x16, 0x2a, 0x5d, 0x40, 0xf6, 0xd3, 0x73, 0xff, 0x13, 0x61, 0x05, 0xd1, 0xa9, 0x0e, 0x0f, 0x9a, 0x60, }; static const wycheproof_hmac_test hmac_sha224_18 = { .name = "hmac_sha224_18", .hash = SHA224, .key = hmac_sha224_18_key, .keylen = 28, .msg = hmac_sha224_18_msg, .msglen = 24, .tag = hmac_sha224_18_tag, .taglen = 28, .result = 1, .comment = ", tcId is 19 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 19 for HMAC, tcId is 20 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_19_key[] = { 0x3b, 0x1b, 0x16, 0xe6, 0xdd, 0x2e, 0x69, 0x55, 0x9d, 0xbe, 0xb9, 0x64, 0xe1, 0x0f, 0xc9, 0x4c, 0x06, 0x84, 0x71, 0xb2, 0x37, 0x4d, 0x3a, 0x2d, 0x24, 0xd2, 0xd4, 0x66, }; static const unsigned char hmac_sha224_19_msg[] = { 0x8e, 0xcd, 0x55, 0xb5, 0x6c, 0x66, 0x8d, 0xcb, 0x8e, 0x8b, 0x1e, 0xfd, 0x69, 0x9c, 0x0e, 0x4a, 0x46, 0x42, 0x04, 0xd2, 0x9a, 0xf1, 0x40, 0xf8, 0x7d, 0x3f, 0x50, 0x75, 0x49, 0x53, 0x78, 0xa3, }; static const unsigned char hmac_sha224_19_tag[] = { 0x17, 0x58, 0x56, 0xb8, 0xf5, 0x6a, 0x8c, 0x6f, 0xbe, 0xbc, 0x36, 0x54, 0x17, 0x71, 0x54, 0x50, 0x46, 0xbb, 0x41, 0x62, 0x54, 0xf0, 0x1f, 0xf1, 0x1a, 0x21, 0x8d, 0x2e, }; static const wycheproof_hmac_test hmac_sha224_19 = { .name = "hmac_sha224_19", .hash = SHA224, .key = hmac_sha224_19_key, .keylen = 28, .msg = hmac_sha224_19_msg, .msglen = 32, .tag = hmac_sha224_19_tag, .taglen = 28, .result = 1, .comment = ", tcId is 20 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 20 for HMAC, tcId is 21 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_20_key[] = { 0xfc, 0x29, 0x63, 0x98, 0x84, 0x50, 0x63, 0xe6, 0x61, 0xbd, 0xf3, 0x6f, 0xf3, 0x61, 0x59, 0x26, 0xea, 0xcc, 0xbf, 0x06, 0x94, 0x7c, 0xd3, 0x1e, 0x66, 0x77, 0xf7, 0x10, }; static const unsigned char hmac_sha224_20_msg[] = { 0x62, 0xbd, 0x0a, 0xd7, 0x5d, 0x64, 0xc5, 0x54, 0xcb, 0x2c, 0xc1, 0x09, 0xc6, 0xe4, 0x01, 0x9f, 0xc6, 0x01, 0xc6, 0x1c, 0xab, 0xdf, 0x99, 0xf8, 0xde, 0x87, 0x1e, 0xdc, 0x17, 0xa3, 0x01, 0xb4, 0xc1, 0xf5, 0x5a, 0x15, 0xed, 0x66, 0xf9, 0x1e, 0xb4, 0x66, 0x6d, 0xd0, 0x8b, 0xc5, 0x9c, }; static const unsigned char hmac_sha224_20_tag[] = { 0xb7, 0xcf, 0x74, 0x1c, 0xf9, 0x6d, 0x6b, 0xf5, 0x7d, 0x21, 0x6c, 0x43, 0x61, 0x1c, 0x20, 0x86, 0x9c, 0xa0, 0xd0, 0x08, 0xa4, 0x54, 0x2f, 0x5c, 0x85, 0x06, 0x05, 0xbc, }; static const wycheproof_hmac_test hmac_sha224_20 = { .name = "hmac_sha224_20", .hash = SHA224, .key = hmac_sha224_20_key, .keylen = 28, .msg = hmac_sha224_20_msg, .msglen = 47, .tag = hmac_sha224_20_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 21 for HMAC, tcId is 22 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_21_key[] = { 0x6c, 0x98, 0xd1, 0xfe, 0xaf, 0xff, 0x98, 0x61, 0x35, 0x19, 0x66, 0xbc, 0x6e, 0xd1, 0x9e, 0xd4, 0x67, 0xf9, 0xdc, 0x76, 0x7f, 0xa0, 0xdf, 0x6b, 0x56, 0x95, 0x55, 0x54, }; static const unsigned char hmac_sha224_21_msg[] = { 0xe9, 0x9d, 0x51, 0xa1, 0xd9, 0xa2, 0x5c, 0x58, 0x42, 0x50, 0x1a, 0x53, 0x83, 0x13, 0x35, 0x78, 0xc8, 0xde, 0xbe, 0x50, 0x15, 0x81, 0xb1, 0x61, 0x0f, 0x75, 0x75, 0x51, 0x9b, 0xbd, 0x26, 0xf0, 0x1a, 0xb7, 0xcb, 0xe0, 0x69, 0xbf, 0xd5, 0xdf, 0x36, 0x99, 0xa2, 0xfe, 0xa5, 0xb4, 0x61, 0xa3, }; static const unsigned char hmac_sha224_21_tag[] = { 0x0f, 0xe6, 0x4f, 0xdd, 0x91, 0x29, 0x66, 0xa6, 0x54, 0x20, 0x69, 0xa2, 0x2b, 0xfd, 0x08, 0x4b, 0x48, 0x4c, 0x01, 0x5c, 0xf4, 0x34, 0xd8, 0x6b, 0xca, 0x15, 0xcd, 0xb6, }; static const wycheproof_hmac_test hmac_sha224_21 = { .name = "hmac_sha224_21", .hash = SHA224, .key = hmac_sha224_21_key, .keylen = 28, .msg = hmac_sha224_21_msg, .msglen = 48, .tag = hmac_sha224_21_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 22 for HMAC, tcId is 23 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_22_key[] = { 0x42, 0xa1, 0x64, 0xf9, 0x4e, 0x33, 0xd5, 0x74, 0x11, 0x8e, 0x0f, 0x8c, 0x93, 0x8b, 0xbc, 0x28, 0x74, 0xba, 0xb2, 0x19, 0xee, 0x7a, 0x17, 0x9f, 0x21, 0xe1, 0x3b, 0x02, }; static const unsigned char hmac_sha224_22_msg[] = { 0xe8, 0x95, 0x63, 0x96, 0x31, 0xf8, 0xb5, 0xd4, 0x8e, 0x3c, 0xe0, 0x0e, 0xb3, 0x10, 0xbf, 0x12, 0x99, 0x76, 0xff, 0xce, 0xd9, 0x6a, 0x6f, 0x30, 0xa0, 0x9d, 0x6a, 0xc1, 0xc2, 0x91, 0xf7, 0x3e, 0x93, 0x69, 0x05, 0x26, 0xd8, 0x6c, 0xc4, 0xd1, 0xa8, 0xe2, 0x1c, 0x11, 0xf5, 0xa8, 0x97, 0x93, 0x08, }; static const unsigned char hmac_sha224_22_tag[] = { 0x1e, 0xa9, 0x82, 0x22, 0x6e, 0x8d, 0x4c, 0xb7, 0xb0, 0x79, 0x22, 0x15, 0x8e, 0x53, 0x5a, 0xf2, 0x23, 0x3b, 0x4c, 0x4d, 0x39, 0xd2, 0x6b, 0x06, 0x2d, 0x6d, 0x2a, 0xae, }; static const wycheproof_hmac_test hmac_sha224_22 = { .name = "hmac_sha224_22", .hash = SHA224, .key = hmac_sha224_22_key, .keylen = 28, .msg = hmac_sha224_22_msg, .msglen = 49, .tag = hmac_sha224_22_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 23 for HMAC, tcId is 24 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_23_key[] = { 0xc1, 0xb5, 0xb9, 0x12, 0x10, 0x66, 0x7e, 0x72, 0xaa, 0x51, 0x03, 0x46, 0xe1, 0x81, 0x13, 0x58, 0x81, 0x5a, 0x33, 0x30, 0xc5, 0xed, 0x27, 0xa6, 0x95, 0xc3, 0x94, 0x51, }; static const unsigned char hmac_sha224_23_msg[] = { 0xbf, 0x10, 0x86, 0xc3, 0xea, 0x8b, 0x88, 0x40, 0x41, 0x8c, 0x69, 0x0c, 0x92, 0x15, 0x2c, 0x73, 0xa6, 0x73, 0x0b, 0xd1, 0xa0, 0x21, 0x0c, 0x8b, 0x1d, 0x25, 0xc4, 0x3a, 0x21, 0x93, 0xe7, 0x39, 0x68, 0x4f, 0x04, 0xa2, 0x5a, 0x52, 0xcc, 0x30, 0x55, 0x99, 0xf2, 0x2b, 0xa6, 0xf7, 0x0c, 0x8e, 0xd0, 0x0d, 0x10, 0xb9, 0x14, 0xa9, 0x52, 0x2a, 0x25, 0xe0, 0x6c, 0x47, 0x1e, 0xbc, 0xa2, 0xff, 0x1b, 0xb4, 0xfa, 0x67, 0x99, 0xb8, 0x51, 0x22, 0x02, 0x09, 0x78, 0xdf, 0xa6, 0x6e, 0xf1, 0x2e, 0xd2, 0x6a, 0xd3, 0x83, 0x31, 0xb2, 0x6e, 0xaf, 0x59, 0x1a, 0xfc, 0xea, 0xc9, 0x6d, 0x8c, 0x77, 0x1e, 0xae, 0x50, 0xfb, 0x7f, 0x46, 0x24, 0x23, 0x37, 0xdd, 0x00, 0x29, 0xf4, 0x81, 0x3b, 0x53, }; static const unsigned char hmac_sha224_23_tag[] = { 0x4f, 0x35, 0x5e, 0xdb, 0xe6, 0xa3, 0xc9, 0x3f, 0xa7, 0xad, 0xd3, 0x84, 0xbe, 0x89, 0x9b, 0xb4, 0xfb, 0x55, 0x38, 0x5a, 0x78, 0x81, 0x2a, 0x26, 0xcb, 0x64, 0xe4, 0x4f, }; static const wycheproof_hmac_test hmac_sha224_23 = { .name = "hmac_sha224_23", .hash = SHA224, .key = hmac_sha224_23_key, .keylen = 28, .msg = hmac_sha224_23_msg, .msglen = 112, .tag = hmac_sha224_23_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 24 for HMAC, tcId is 25 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_24_key[] = { 0x4f, 0x09, 0xd1, 0x4d, 0x40, 0xe4, 0x75, 0xb6, 0x82, 0x88, 0xc0, 0x80, 0x66, 0x8e, 0xbb, 0x1b, 0xc8, 0xc6, 0xbe, 0x31, 0x91, 0xf6, 0x66, 0x4d, 0x91, 0xa2, 0x3f, 0xcd, }; static const unsigned char hmac_sha224_24_msg[] = { 0xae, 0x8b, 0x6e, 0xcc, 0x21, 0x9b, 0x36, 0x8d, 0x22, 0xfb, 0x59, 0x6e, 0x42, 0x65, 0x2d, 0x0b, 0xff, 0xee, 0x0b, 0x20, 0xd6, 0x9c, 0xfd, 0x08, 0x9c, 0xe3, 0xdc, 0x93, 0x03, 0xba, 0x2f, 0x05, 0x4c, 0xca, 0xf5, 0xf5, 0x14, 0x7c, 0x79, 0x68, 0xa0, 0x28, 0xb1, 0x40, 0xf5, 0xe3, 0xc9, 0x27, 0x4e, 0xae, 0x2a, 0xfc, 0x61, 0xc3, 0xbb, 0x62, 0x98, 0xdc, 0x59, 0x8d, 0xf7, 0x7d, 0xec, 0x1c, 0xd2, 0xdd, 0x84, 0x21, 0x26, 0x93, 0xb0, 0x82, 0xb8, 0x13, 0x2a, 0xd0, 0xf0, 0xb1, 0x9f, 0x66, 0xdb, 0x69, 0xfa, 0x7f, 0x6b, 0xf3, 0x52, 0xb4, 0xfe, 0xac, 0x72, 0x4c, 0xe0, 0x48, 0x44, 0x0d, 0x2a, 0x42, 0xb4, 0x4d, 0x53, 0xbb, 0x62, 0xfe, 0x2a, 0xb2, 0x5f, 0x7f, 0x54, 0xbe, 0xdf, 0x9c, 0xe7, 0xdd, 0xaf, 0xd8, 0xe0, 0x93, 0x30, 0xda, 0xcc, 0x6d, 0x52, 0xee, 0x9b, 0x65, 0xf5, }; static const unsigned char hmac_sha224_24_tag[] = { 0x29, 0xba, 0x26, 0x81, 0x03, 0x01, 0x9e, 0x15, 0x8a, 0x35, 0x61, 0x4c, 0x80, 0x78, 0x0f, 0xda, 0x3f, 0x5e, 0xc3, 0xfc, 0x32, 0xc8, 0x0a, 0xaa, 0x27, 0xb4, 0x02, 0x5d, }; static const wycheproof_hmac_test hmac_sha224_24 = { .name = "hmac_sha224_24", .hash = SHA224, .key = hmac_sha224_24_key, .keylen = 28, .msg = hmac_sha224_24_msg, .msglen = 127, .tag = hmac_sha224_24_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 25 for HMAC, tcId is 26 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_25_key[] = { 0x61, 0x3f, 0x41, 0x4c, 0xd9, 0x41, 0x30, 0xbb, 0x8a, 0x62, 0x43, 0xe1, 0x2e, 0xcc, 0xd9, 0x08, 0x36, 0x80, 0x84, 0x28, 0xb4, 0xa7, 0x17, 0x78, 0x67, 0x93, 0x4d, 0xa0, }; static const unsigned char hmac_sha224_25_msg[] = { 0xf6, 0x96, 0xb9, 0x06, 0x3b, 0x64, 0x81, 0x6a, 0x45, 0x06, 0x4f, 0x48, 0xca, 0x05, 0xff, 0xe4, 0xd5, 0xcc, 0x3d, 0x0b, 0x3b, 0xeb, 0x0d, 0xd4, 0x05, 0x7b, 0x6a, 0xda, 0x99, 0x49, 0x69, 0xbf, 0x03, 0x9b, 0xfb, 0xb7, 0x2c, 0xe1, 0x97, 0x10, 0x1c, 0xc4, 0xe4, 0xb3, 0x95, 0x9b, 0x37, 0x02, 0xf0, 0x45, 0xaf, 0xb7, 0xfb, 0x31, 0x13, 0xc9, 0x97, 0x60, 0x6d, 0xca, 0xf2, 0xaa, 0xab, 0x31, 0xe0, 0x2a, 0xc6, 0xee, 0x59, 0x7d, 0xfc, 0x0f, 0x91, 0x43, 0xd0, 0xef, 0xfe, 0xdc, 0x9a, 0xe7, 0xea, 0x10, 0xe7, 0xdd, 0xb1, 0xdb, 0x86, 0x0a, 0x91, 0xaf, 0xec, 0x62, 0xc4, 0x8e, 0xd9, 0xc0, 0xa6, 0xc1, 0x0b, 0x4d, 0xa1, 0xde, 0x74, 0x8c, 0xaf, 0x7f, 0x7a, 0x5e, 0x01, 0x79, 0x9a, 0xc5, 0x70, 0x90, 0xda, 0xf4, 0xe3, 0x35, 0x2f, 0xe8, 0x59, 0xc5, 0x13, 0x1c, 0x20, 0x5d, 0x26, 0x2d, }; static const unsigned char hmac_sha224_25_tag[] = { 0x81, 0x29, 0xe2, 0x09, 0x30, 0x70, 0x16, 0x8a, 0x20, 0x89, 0x97, 0x93, 0xa0, 0x44, 0x47, 0xa7, 0xef, 0x01, 0xae, 0x72, 0x34, 0x19, 0x25, 0x6a, 0x8c, 0xb4, 0x2f, 0x6d, }; static const wycheproof_hmac_test hmac_sha224_25 = { .name = "hmac_sha224_25", .hash = SHA224, .key = hmac_sha224_25_key, .keylen = 28, .msg = hmac_sha224_25_msg, .msglen = 128, .tag = hmac_sha224_25_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 26 for HMAC, tcId is 27 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_26_key[] = { 0x5b, 0x88, 0x27, 0x53, 0x07, 0xaa, 0xf6, 0x91, 0xa0, 0xcf, 0x0c, 0x51, 0xf5, 0x05, 0x53, 0xdd, 0xa9, 0x72, 0xd1, 0x4f, 0x8a, 0xff, 0xf9, 0x8e, 0x62, 0xc2, 0xd9, 0x72, }; static const unsigned char hmac_sha224_26_msg[] = { 0x57, 0xe4, 0xef, 0xbd, 0xe1, 0xce, 0x9f, 0xee, 0x2e, 0x29, 0xdb, 0x19, 0xdf, 0xc6, 0xba, 0x3b, 0xcb, 0x17, 0xf3, 0x37, 0x65, 0xaf, 0x7f, 0x20, 0x13, 0x3b, 0xbd, 0x19, 0x10, 0xd5, 0x42, 0x14, 0x5c, 0x7d, 0xef, 0x18, 0x7a, 0x30, 0x45, 0x17, 0xb8, 0xd8, 0x95, 0x44, 0x54, 0xa9, 0x0a, 0x71, 0x7f, 0x67, 0xf9, 0xc8, 0xcc, 0x58, 0x79, 0x65, 0xfd, 0x9b, 0x43, 0xf4, 0x1e, 0xcc, 0x50, 0xb3, 0x45, 0x8d, 0x8c, 0xe9, 0xf6, 0x6b, 0x47, 0x5f, 0x1e, 0xae, 0xf4, 0xa2, 0x9b, 0xa8, 0x9a, 0x3d, 0x58, 0xe5, 0x01, 0x1c, 0x92, 0xac, 0xd1, 0x53, 0x6f, 0xcd, 0x18, 0xab, 0xec, 0x29, 0x41, 0x1b, 0x38, 0x9b, 0x64, 0xf7, 0xf3, 0x44, 0x77, 0x7e, 0xd6, 0xde, 0xae, 0x32, 0x12, 0x7a, 0xba, 0xa6, 0x9a, 0x50, 0xba, 0x22, 0xa1, 0x1d, 0x6e, 0x59, 0x35, 0x4f, 0x2f, 0xf0, 0xe3, 0xc3, 0xe3, 0x29, 0x3c, 0xdc, 0x33, 0x54, 0x11, 0xcf, 0x55, 0xb1, 0x80, 0xba, 0xb5, 0x9d, 0xa3, 0x69, 0x03, 0xa6, 0xfb, 0xa9, 0x1d, 0xf3, 0x4d, 0x2a, 0xad, 0xf7, 0x01, 0x7f, 0xf4, 0x9a, 0x4f, 0xbd, 0x73, 0xc9, 0xc7, 0x44, 0x69, 0xf2, 0x25, 0xda, 0xfc, 0x0a, 0x0c, 0x70, 0x48, 0xc2, 0xb8, 0x24, 0xcc, 0x0c, 0xba, 0x8c, 0xad, 0x8a, 0xce, 0xd1, 0x1b, 0x8c, 0xda, 0xc3, 0x24, 0x3c, 0xdb, 0x5b, 0x65, 0x4f, 0x7a, 0x15, 0xce, 0x20, 0x14, 0xe9, 0x2e, 0xe2, 0x87, 0xd0, 0x69, 0x04, 0xd7, 0x78, 0x51, 0x2a, 0x1b, 0x1f, 0x5e, 0xc0, 0xc9, 0xb0, 0x90, 0xb9, 0xab, 0x43, 0x9c, 0x44, 0x26, 0x6b, 0x6b, 0xe3, 0xd6, 0xa9, 0x89, 0x47, 0xd2, 0x6d, 0x07, 0x9e, 0x4f, 0x7e, 0x84, 0x9f, 0x3c, 0x6d, 0x93, 0xde, 0x98, 0x62, 0x4e, 0x6c, 0x5f, 0x53, 0xec, 0x02, 0xdb, 0xd3, 0x68, 0xbc, 0x24, 0xa3, 0x00, }; static const unsigned char hmac_sha224_26_tag[] = { 0x65, 0x7d, 0xd0, 0x4b, 0x97, 0x02, 0x19, 0xed, 0xd6, 0x3a, 0xbf, 0x9d, 0x4a, 0xa1, 0x08, 0x47, 0x4a, 0xa3, 0x16, 0xb6, 0xbb, 0x66, 0xbc, 0xa7, 0x6e, 0xd8, 0x06, 0xc6, }; static const wycheproof_hmac_test hmac_sha224_26 = { .name = "hmac_sha224_26", .hash = SHA224, .key = hmac_sha224_26_key, .keylen = 28, .msg = hmac_sha224_26_msg, .msglen = 255, .tag = hmac_sha224_26_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 27 for HMAC, tcId is 28 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_27_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_27_tag[] = { 0x6f, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_27 = { .name = "hmac_sha224_27", .hash = SHA224, .key = hmac_sha224_27_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_27_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 28 for HMAC, tcId is 29 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_28_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_28_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_28_tag[] = { 0x0c, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_28 = { .name = "hmac_sha224_28", .hash = SHA224, .key = hmac_sha224_28_key, .keylen = 28, .msg = hmac_sha224_28_msg, .msglen = 16, .tag = hmac_sha224_28_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 29 for HMAC, tcId is 30 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_29_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_29_tag[] = { 0x6c, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_29 = { .name = "hmac_sha224_29", .hash = SHA224, .key = hmac_sha224_29_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_29_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 30 for HMAC, tcId is 31 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_30_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_30_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_30_tag[] = { 0x0f, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_30 = { .name = "hmac_sha224_30", .hash = SHA224, .key = hmac_sha224_30_key, .keylen = 28, .msg = hmac_sha224_30_msg, .msglen = 16, .tag = hmac_sha224_30_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 31 for HMAC, tcId is 32 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_31_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_31_tag[] = { 0xee, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_31 = { .name = "hmac_sha224_31", .hash = SHA224, .key = hmac_sha224_31_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_31_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 32 for HMAC, tcId is 33 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_32_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_32_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_32_tag[] = { 0x8d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_32 = { .name = "hmac_sha224_32", .hash = SHA224, .key = hmac_sha224_32_key, .keylen = 28, .msg = hmac_sha224_32_msg, .msglen = 16, .tag = hmac_sha224_32_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 33 for HMAC, tcId is 34 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_33_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_33_tag[] = { 0x6e, 0x98, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_33 = { .name = "hmac_sha224_33", .hash = SHA224, .key = hmac_sha224_33_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_33_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 34 for HMAC, tcId is 35 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_34_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_34_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_34_tag[] = { 0x0d, 0x20, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_34 = { .name = "hmac_sha224_34", .hash = SHA224, .key = hmac_sha224_34_key, .keylen = 28, .msg = hmac_sha224_34_msg, .msglen = 16, .tag = hmac_sha224_34_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 35 for HMAC, tcId is 36 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_35_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_35_tag[] = { 0x6e, 0x99, 0xe8, 0xe2, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_35 = { .name = "hmac_sha224_35", .hash = SHA224, .key = hmac_sha224_35_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_35_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 36 for HMAC, tcId is 37 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_36_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_36_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_36_tag[] = { 0x0d, 0x21, 0x6f, 0x2e, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_36 = { .name = "hmac_sha224_36", .hash = SHA224, .key = hmac_sha224_36_key, .keylen = 28, .msg = hmac_sha224_36_msg, .msglen = 16, .tag = hmac_sha224_36_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 37 for HMAC, tcId is 38 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_37_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_37_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe4, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_37 = { .name = "hmac_sha224_37", .hash = SHA224, .key = hmac_sha224_37_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_37_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 38 for HMAC, tcId is 39 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_38_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_38_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_38_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xde, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_38 = { .name = "hmac_sha224_38", .hash = SHA224, .key = hmac_sha224_38_key, .keylen = 28, .msg = hmac_sha224_38_msg, .msglen = 16, .tag = hmac_sha224_38_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 39 for HMAC, tcId is 40 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_39_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_39_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe7, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_39 = { .name = "hmac_sha224_39", .hash = SHA224, .key = hmac_sha224_39_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_39_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 40 for HMAC, tcId is 41 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_40_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_40_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_40_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdd, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_40 = { .name = "hmac_sha224_40", .hash = SHA224, .key = hmac_sha224_40_key, .keylen = 28, .msg = hmac_sha224_40_msg, .msglen = 16, .tag = hmac_sha224_40_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 41 for HMAC, tcId is 42 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_41_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_41_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x13, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_41 = { .name = "hmac_sha224_41", .hash = SHA224, .key = hmac_sha224_41_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_41_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 42 for HMAC, tcId is 43 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_42_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_42_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_42_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0x4d, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_42 = { .name = "hmac_sha224_42", .hash = SHA224, .key = hmac_sha224_42_key, .keylen = 28, .msg = hmac_sha224_42_msg, .msglen = 16, .tag = hmac_sha224_42_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 43 for HMAC, tcId is 44 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_43_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_43_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6c, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_43 = { .name = "hmac_sha224_43", .hash = SHA224, .key = hmac_sha224_43_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_43_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 44 for HMAC, tcId is 45 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_44_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_44_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_44_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x50, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_44 = { .name = "hmac_sha224_44", .hash = SHA224, .key = hmac_sha224_44_key, .keylen = 28, .msg = hmac_sha224_44_msg, .msglen = 16, .tag = hmac_sha224_44_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 45 for HMAC, tcId is 46 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_45_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_45_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0xed, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_45 = { .name = "hmac_sha224_45", .hash = SHA224, .key = hmac_sha224_45_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_45_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 46 for HMAC, tcId is 47 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_46_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_46_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_46_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0xd1, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_46 = { .name = "hmac_sha224_46", .hash = SHA224, .key = hmac_sha224_46_key, .keylen = 28, .msg = hmac_sha224_46_msg, .msglen = 16, .tag = hmac_sha224_46_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 47 for HMAC, tcId is 48 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_47_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_47_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x58, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_47 = { .name = "hmac_sha224_47", .hash = SHA224, .key = hmac_sha224_47_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_47_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 48 for HMAC, tcId is 49 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_48_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_48_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_48_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xdc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_48 = { .name = "hmac_sha224_48", .hash = SHA224, .key = hmac_sha224_48_key, .keylen = 28, .msg = hmac_sha224_48_msg, .msglen = 16, .tag = hmac_sha224_48_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 49 for HMAC, tcId is 50 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_49_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_49_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb4, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_49 = { .name = "hmac_sha224_49", .hash = SHA224, .key = hmac_sha224_49_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_49_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 50 for HMAC, tcId is 51 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_50_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_50_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_50_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xae, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_50 = { .name = "hmac_sha224_50", .hash = SHA224, .key = hmac_sha224_50_key, .keylen = 28, .msg = hmac_sha224_50_msg, .msglen = 16, .tag = hmac_sha224_50_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 51 for HMAC, tcId is 52 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_51_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_51_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x28, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_51 = { .name = "hmac_sha224_51", .hash = SHA224, .key = hmac_sha224_51_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_51_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 52 for HMAC, tcId is 53 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_52_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_52_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_52_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x73, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_52 = { .name = "hmac_sha224_52", .hash = SHA224, .key = hmac_sha224_52_key, .keylen = 28, .msg = hmac_sha224_52_msg, .msglen = 16, .tag = hmac_sha224_52_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 53 for HMAC, tcId is 54 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_53_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_53_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x2b, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_53 = { .name = "hmac_sha224_53", .hash = SHA224, .key = hmac_sha224_53_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_53_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 54 for HMAC, tcId is 55 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_54_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_54_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_54_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x70, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_54 = { .name = "hmac_sha224_54", .hash = SHA224, .key = hmac_sha224_54_key, .keylen = 28, .msg = hmac_sha224_54_msg, .msglen = 16, .tag = hmac_sha224_54_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 55 for HMAC, tcId is 56 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_55_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_55_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0xa9, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_55 = { .name = "hmac_sha224_55", .hash = SHA224, .key = hmac_sha224_55_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_55_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 56 for HMAC, tcId is 57 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_56_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_56_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_56_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0xf2, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_56 = { .name = "hmac_sha224_56", .hash = SHA224, .key = hmac_sha224_56_key, .keylen = 28, .msg = hmac_sha224_56_msg, .msglen = 16, .tag = hmac_sha224_56_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 57 for HMAC, tcId is 58 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_57_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_57_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x13, }; static const wycheproof_hmac_test hmac_sha224_57 = { .name = "hmac_sha224_57", .hash = SHA224, .key = hmac_sha224_57_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_57_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 216 in tag, tcId is 58 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 58 for HMAC, tcId is 59 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_58_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_58_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_58_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8b, }; static const wycheproof_hmac_test hmac_sha224_58 = { .name = "hmac_sha224_58", .hash = SHA224, .key = hmac_sha224_58_key, .keylen = 28, .msg = hmac_sha224_58_msg, .msglen = 16, .tag = hmac_sha224_58_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 216 in tag, tcId is 59 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 59 for HMAC, tcId is 60 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_59_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_59_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x10, }; static const wycheproof_hmac_test hmac_sha224_59 = { .name = "hmac_sha224_59", .hash = SHA224, .key = hmac_sha224_59_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_59_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 217 in tag, tcId is 60 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 60 for HMAC, tcId is 61 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_60_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_60_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_60_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x88, }; static const wycheproof_hmac_test hmac_sha224_60 = { .name = "hmac_sha224_60", .hash = SHA224, .key = hmac_sha224_60_key, .keylen = 28, .msg = hmac_sha224_60_msg, .msglen = 16, .tag = hmac_sha224_60_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 217 in tag, tcId is 61 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 61 for HMAC, tcId is 62 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_61_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_61_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x52, }; static const wycheproof_hmac_test hmac_sha224_61 = { .name = "hmac_sha224_61", .hash = SHA224, .key = hmac_sha224_61_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_61_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 222 in tag, tcId is 62 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 62 for HMAC, tcId is 63 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_62_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_62_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_62_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0xca, }; static const wycheproof_hmac_test hmac_sha224_62 = { .name = "hmac_sha224_62", .hash = SHA224, .key = hmac_sha224_62_key, .keylen = 28, .msg = hmac_sha224_62_msg, .msglen = 16, .tag = hmac_sha224_62_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 222 in tag, tcId is 63 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 63 for HMAC, tcId is 64 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_63_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_63_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x92, }; static const wycheproof_hmac_test hmac_sha224_63 = { .name = "hmac_sha224_63", .hash = SHA224, .key = hmac_sha224_63_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_63_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 223 in tag, tcId is 64 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 64 for HMAC, tcId is 65 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_64_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_64_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_64_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x0a, }; static const wycheproof_hmac_test hmac_sha224_64 = { .name = "hmac_sha224_64", .hash = SHA224, .key = hmac_sha224_64_key, .keylen = 28, .msg = hmac_sha224_64_msg, .msglen = 16, .tag = hmac_sha224_64_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 223 in tag, tcId is 65 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 65 for HMAC, tcId is 66 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_65_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_65_tag[] = { 0x6f, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6c, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_65 = { .name = "hmac_sha224_65", .hash = SHA224, .key = hmac_sha224_65_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_65_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 66 for HMAC, tcId is 67 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_66_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_66_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_66_tag[] = { 0x0c, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x50, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_66 = { .name = "hmac_sha224_66", .hash = SHA224, .key = hmac_sha224_66_key, .keylen = 28, .msg = hmac_sha224_66_msg, .msglen = 16, .tag = hmac_sha224_66_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 67 for HMAC, tcId is 68 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_67_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_67_tag[] = { 0x6e, 0x99, 0xe8, 0xe2, 0xe5, 0x32, 0xe8, 0x13, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0x30, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_67 = { .name = "hmac_sha224_67", .hash = SHA224, .key = hmac_sha224_67_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_67_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 68 for HMAC, tcId is 69 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_68_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_68_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_68_tag[] = { 0x0d, 0x21, 0x6f, 0x2e, 0xdf, 0x30, 0x53, 0x4d, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0xf1, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_68 = { .name = "hmac_sha224_68", .hash = SHA224, .key = hmac_sha224_68_key, .keylen = 28, .msg = hmac_sha224_68_msg, .msglen = 16, .tag = hmac_sha224_68_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 69 for HMAC, tcId is 70 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_69_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_69_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x13, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, 0xb1, 0xb0, 0xab, 0x09, 0x80, 0x6b, 0x2a, 0xf0, 0x2f, 0x7c, 0xb9, 0xd3, 0x9d, 0x12, }; static const wycheproof_hmac_test hmac_sha224_69 = { .name = "hmac_sha224_69", .hash = SHA224, .key = hmac_sha224_69_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_69_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 70 for HMAC, tcId is 71 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_70_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_70_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_70_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0x4d, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, 0xc8, 0x71, 0x44, 0xab, 0xd5, 0xf2, 0xf7, 0xfa, 0x00, 0xab, 0x46, 0x67, 0xd8, 0x8a, }; static const wycheproof_hmac_test hmac_sha224_70 = { .name = "hmac_sha224_70", .hash = SHA224, .key = hmac_sha224_70_key, .keylen = 28, .msg = hmac_sha224_70_msg, .msglen = 16, .tag = hmac_sha224_70_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 71 for HMAC, tcId is 72 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_71_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_71_tag[] = { 0x91, 0x66, 0x17, 0x9d, 0x1a, 0xcd, 0x17, 0x6c, 0x92, 0x87, 0x4a, 0x0f, 0xd6, 0xf6, 0x4e, 0xcf, 0x54, 0xf6, 0x7f, 0x94, 0xd5, 0x0f, 0xd0, 0x83, 0x46, 0x2c, 0x62, 0xed, }; static const wycheproof_hmac_test hmac_sha224_71 = { .name = "hmac_sha224_71", .hash = SHA224, .key = hmac_sha224_71_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_71_tag, .taglen = 28, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 72 for HMAC, tcId is 73 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_72_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_72_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_72_tag[] = { 0xf2, 0xde, 0x90, 0x51, 0x20, 0xcf, 0xac, 0x32, 0xae, 0x03, 0x50, 0xbe, 0x8d, 0xdd, 0x37, 0x0e, 0xbb, 0x54, 0x2a, 0x0d, 0x08, 0x05, 0xff, 0x54, 0xb9, 0x98, 0x27, 0x75, }; static const wycheproof_hmac_test hmac_sha224_72 = { .name = "hmac_sha224_72", .hash = SHA224, .key = hmac_sha224_72_key, .keylen = 28, .msg = hmac_sha224_72_msg, .msglen = 16, .tag = hmac_sha224_72_tag, .taglen = 28, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 73 for HMAC, tcId is 74 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_73_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_73_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha224_73 = { .name = "hmac_sha224_73", .hash = SHA224, .key = hmac_sha224_73_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_73_tag, .taglen = 28, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 74 for HMAC, tcId is 75 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_74_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_74_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_74_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha224_74 = { .name = "hmac_sha224_74", .hash = SHA224, .key = hmac_sha224_74_key, .keylen = 28, .msg = hmac_sha224_74_msg, .msglen = 16, .tag = hmac_sha224_74_tag, .taglen = 28, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 75 for HMAC, tcId is 76 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_75_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_75_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha224_75 = { .name = "hmac_sha224_75", .hash = SHA224, .key = hmac_sha224_75_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_75_tag, .taglen = 28, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 76 for HMAC, tcId is 77 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_76_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_76_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_76_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha224_76 = { .name = "hmac_sha224_76", .hash = SHA224, .key = hmac_sha224_76_key, .keylen = 28, .msg = hmac_sha224_76_msg, .msglen = 16, .tag = hmac_sha224_76_tag, .taglen = 28, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 77 for HMAC, tcId is 78 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_77_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_77_tag[] = { 0xee, 0x19, 0x68, 0xe2, 0x65, 0xb2, 0x68, 0x13, 0xed, 0xf8, 0x35, 0x70, 0xa9, 0x89, 0x31, 0xb0, 0x2b, 0x89, 0x00, 0xeb, 0xaa, 0x70, 0xaf, 0xfc, 0x39, 0x53, 0x1d, 0x92, }; static const wycheproof_hmac_test hmac_sha224_77 = { .name = "hmac_sha224_77", .hash = SHA224, .key = hmac_sha224_77_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_77_tag, .taglen = 28, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 78 for HMAC, tcId is 79 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_78_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_78_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_78_tag[] = { 0x8d, 0xa1, 0xef, 0x2e, 0x5f, 0xb0, 0xd3, 0x4d, 0xd1, 0x7c, 0x2f, 0xc1, 0xf2, 0xa2, 0x48, 0x71, 0xc4, 0x2b, 0x55, 0x72, 0x77, 0x7a, 0x80, 0x2b, 0xc6, 0xe7, 0x58, 0x0a, }; static const wycheproof_hmac_test hmac_sha224_78 = { .name = "hmac_sha224_78", .hash = SHA224, .key = hmac_sha224_78_key, .keylen = 28, .msg = hmac_sha224_78_msg, .msglen = 16, .tag = hmac_sha224_78_tag, .taglen = 28, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 79 for HMAC, tcId is 80 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_79_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_79_tag[] = { 0x6f, 0x98, 0xe9, 0x63, 0xe4, 0x33, 0xe9, 0x92, 0x6c, 0x79, 0xb4, 0xf1, 0x28, 0x08, 0xb0, 0x31, 0xaa, 0x08, 0x81, 0x6a, 0x2b, 0xf1, 0x2e, 0x7d, 0xb8, 0xd2, 0x9c, 0x13, }; static const wycheproof_hmac_test hmac_sha224_79 = { .name = "hmac_sha224_79", .hash = SHA224, .key = hmac_sha224_79_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_79_tag, .taglen = 28, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 80 for HMAC, tcId is 81 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_80_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_80_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_80_tag[] = { 0x0c, 0x20, 0x6e, 0xaf, 0xde, 0x31, 0x52, 0xcc, 0x50, 0xfd, 0xae, 0x40, 0x73, 0x23, 0xc9, 0xf0, 0x45, 0xaa, 0xd4, 0xf3, 0xf6, 0xfb, 0x01, 0xaa, 0x47, 0x66, 0xd9, 0x8b, }; static const wycheproof_hmac_test hmac_sha224_80 = { .name = "hmac_sha224_80", .hash = SHA224, .key = hmac_sha224_80_key, .keylen = 28, .msg = hmac_sha224_80_msg, .msglen = 16, .tag = hmac_sha224_80_tag, .taglen = 28, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 81 for HMAC, tcId is 82 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_81_key[] = { 0x26, 0xf3, 0x14, 0x17, 0x0b, 0x05, 0x4d, 0xae, 0xf5, 0x34, 0x98, 0x04, 0xda, 0x18, 0xf9, 0x69, 0xc9, 0x41, 0x74, 0xba, 0xca, 0x2b, 0xee, 0xb0, 0x09, 0xd4, 0x7a, 0x23, }; static const unsigned char hmac_sha224_81_tag[] = { 0x81, 0x6d, 0x7a, 0xf2, 0x47, 0x5e, 0x94, 0x71, 0x3f, 0x2d, 0xc3, 0xaa, 0x30, 0x69, }; static const wycheproof_hmac_test hmac_sha224_81 = { .name = "hmac_sha224_81", .hash = SHA224, .key = hmac_sha224_81_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_81_tag, .taglen = 14, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 82 for HMAC, tcId is 83 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_82_key[] = { 0x17, 0x42, 0x9a, 0x62, 0x2d, 0xc1, 0x8d, 0x38, 0x71, 0x5b, 0x31, 0xf8, 0xf2, 0xb9, 0x63, 0x10, 0x8e, 0x95, 0x2a, 0x67, 0x08, 0xf3, 0xe5, 0x2d, 0x5b, 0x25, 0x84, 0x8a, }; static const unsigned char hmac_sha224_82_msg[] = { 0xda, }; static const unsigned char hmac_sha224_82_tag[] = { 0x26, 0x63, 0x07, 0x77, 0xd8, 0x5f, 0x77, 0x71, 0x87, 0x63, 0x0b, 0xb9, 0x46, 0x74, }; static const wycheproof_hmac_test hmac_sha224_82 = { .name = "hmac_sha224_82", .hash = SHA224, .key = hmac_sha224_82_key, .keylen = 28, .msg = hmac_sha224_82_msg, .msglen = 1, .tag = hmac_sha224_82_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 83 for HMAC, tcId is 84 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_83_key[] = { 0x0a, 0xcf, 0xe1, 0x2d, 0x89, 0xac, 0xd7, 0xd9, 0xca, 0x49, 0xba, 0xe6, 0x31, 0x8f, 0x35, 0xb2, 0xfb, 0xbf, 0xc8, 0x4e, 0x5d, 0x2c, 0x9d, 0x49, 0x54, 0xbe, 0xde, 0xd7, }; static const unsigned char hmac_sha224_83_msg[] = { 0x03, 0xa8, }; static const unsigned char hmac_sha224_83_tag[] = { 0xaa, 0x4c, 0x4b, 0xb6, 0x3c, 0xad, 0x66, 0xac, 0x67, 0x51, 0x50, 0xf7, 0x18, 0xb2, }; static const wycheproof_hmac_test hmac_sha224_83 = { .name = "hmac_sha224_83", .hash = SHA224, .key = hmac_sha224_83_key, .keylen = 28, .msg = hmac_sha224_83_msg, .msglen = 2, .tag = hmac_sha224_83_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 84 for HMAC, tcId is 85 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_84_key[] = { 0x5a, 0x06, 0x80, 0xf1, 0x12, 0x35, 0x4b, 0xd4, 0x67, 0x86, 0x5b, 0x19, 0xae, 0x95, 0x6b, 0x27, 0x19, 0xe2, 0x1e, 0xce, 0xe1, 0xa9, 0x13, 0xbd, 0xca, 0x29, 0x43, 0x39, }; static const unsigned char hmac_sha224_84_msg[] = { 0xa0, 0xfb, 0x73, }; static const unsigned char hmac_sha224_84_tag[] = { 0x36, 0xc7, 0xcd, 0x3f, 0x29, 0x0d, 0x1d, 0x7d, 0x33, 0x2b, 0x95, 0x1a, 0xa4, 0x71, }; static const wycheproof_hmac_test hmac_sha224_84 = { .name = "hmac_sha224_84", .hash = SHA224, .key = hmac_sha224_84_key, .keylen = 28, .msg = hmac_sha224_84_msg, .msglen = 3, .tag = hmac_sha224_84_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 85 for HMAC, tcId is 86 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_85_key[] = { 0x46, 0xfa, 0x59, 0xaa, 0x52, 0x4f, 0xe3, 0x0a, 0x0f, 0x4e, 0x39, 0x56, 0x1b, 0x56, 0x66, 0x85, 0x44, 0x40, 0xdb, 0xd9, 0x70, 0xbb, 0x59, 0x92, 0x5c, 0xe0, 0xae, 0x1a, }; static const unsigned char hmac_sha224_85_msg[] = { 0xc8, 0xb2, 0xf5, 0x57, }; static const unsigned char hmac_sha224_85_tag[] = { 0xc1, 0xa8, 0xa7, 0xd4, 0x3d, 0xf3, 0x4d, 0x91, 0x7f, 0x0c, 0xb5, 0x12, 0xc5, 0x7d, }; static const wycheproof_hmac_test hmac_sha224_85 = { .name = "hmac_sha224_85", .hash = SHA224, .key = hmac_sha224_85_key, .keylen = 28, .msg = hmac_sha224_85_msg, .msglen = 4, .tag = hmac_sha224_85_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 86 for HMAC, tcId is 87 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_86_key[] = { 0x29, 0xef, 0xc5, 0xab, 0x5d, 0x30, 0xe5, 0x35, 0x35, 0x76, 0x03, 0xf2, 0x71, 0x1b, 0x6e, 0x0a, 0xa6, 0xcf, 0x46, 0x13, 0x54, 0x6c, 0x23, 0x14, 0x44, 0x36, 0xd2, 0x13, }; static const unsigned char hmac_sha224_86_msg[] = { 0xc8, 0xd9, 0xf5, 0xb3, 0x73, }; static const unsigned char hmac_sha224_86_tag[] = { 0xa8, 0xcc, 0x7b, 0xeb, 0xef, 0x4c, 0xfc, 0xd5, 0xac, 0x2f, 0x40, 0x1a, 0x37, 0x2d, }; static const wycheproof_hmac_test hmac_sha224_86 = { .name = "hmac_sha224_86", .hash = SHA224, .key = hmac_sha224_86_key, .keylen = 28, .msg = hmac_sha224_86_msg, .msglen = 5, .tag = hmac_sha224_86_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 87 for HMAC, tcId is 88 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_87_key[] = { 0xfe, 0x60, 0xe0, 0x32, 0x20, 0x35, 0x53, 0x8f, 0x2b, 0x1d, 0xe9, 0xde, 0x38, 0x0c, 0xde, 0x35, 0xf2, 0x91, 0xde, 0xeb, 0x6e, 0x02, 0x7b, 0x5d, 0x82, 0x9e, 0xcd, 0x1e, }; static const unsigned char hmac_sha224_87_msg[] = { 0x18, 0x5e, 0x4c, 0xad, 0xa4, 0xf4, }; static const unsigned char hmac_sha224_87_tag[] = { 0x32, 0xfa, 0xa1, 0x54, 0x39, 0x6b, 0x0b, 0x62, 0x43, 0x6e, 0x6b, 0xf9, 0x37, 0xee, }; static const wycheproof_hmac_test hmac_sha224_87 = { .name = "hmac_sha224_87", .hash = SHA224, .key = hmac_sha224_87_key, .keylen = 28, .msg = hmac_sha224_87_msg, .msglen = 6, .tag = hmac_sha224_87_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 88 for HMAC, tcId is 89 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_88_key[] = { 0x1b, 0xf7, 0xfc, 0xdf, 0x37, 0x42, 0xfa, 0x77, 0x99, 0x15, 0x28, 0xcc, 0x1c, 0x67, 0x8b, 0x98, 0xbe, 0x98, 0x76, 0xa8, 0xc8, 0xc5, 0xb8, 0x09, 0xbe, 0xab, 0x7d, 0x9c, }; static const unsigned char hmac_sha224_88_msg[] = { 0x9c, 0x0f, 0x34, 0xa5, 0x65, 0x42, 0x79, }; static const unsigned char hmac_sha224_88_tag[] = { 0x08, 0x61, 0x70, 0xc4, 0x6d, 0x2b, 0x0a, 0x76, 0xc6, 0x15, 0x27, 0xc2, 0xd0, 0x52, }; static const wycheproof_hmac_test hmac_sha224_88 = { .name = "hmac_sha224_88", .hash = SHA224, .key = hmac_sha224_88_key, .keylen = 28, .msg = hmac_sha224_88_msg, .msglen = 7, .tag = hmac_sha224_88_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 89 for HMAC, tcId is 90 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_89_key[] = { 0x32, 0x53, 0x3c, 0x16, 0xf7, 0x92, 0xed, 0x0a, 0xcf, 0x8e, 0x9e, 0x60, 0xf5, 0x4a, 0xa1, 0x73, 0x93, 0x7c, 0x71, 0x94, 0xb8, 0x82, 0xec, 0xc3, 0xe6, 0x71, 0x00, 0x9f, }; static const unsigned char hmac_sha224_89_msg[] = { 0xf9, 0x68, 0xdc, 0x7a, 0x19, 0xaf, 0xe3, 0x39, }; static const unsigned char hmac_sha224_89_tag[] = { 0x3f, 0xb4, 0xeb, 0x44, 0x50, 0xac, 0x4b, 0x26, 0xa7, 0x14, 0xbc, 0xfb, 0x22, 0x4c, }; static const wycheproof_hmac_test hmac_sha224_89 = { .name = "hmac_sha224_89", .hash = SHA224, .key = hmac_sha224_89_key, .keylen = 28, .msg = hmac_sha224_89_msg, .msglen = 8, .tag = hmac_sha224_89_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 90 for HMAC, tcId is 91 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_90_key[] = { 0x3c, 0xf2, 0x8a, 0x47, 0x6c, 0xe7, 0xea, 0xec, 0xfc, 0x3f, 0xbf, 0x1b, 0x08, 0x59, 0xa0, 0x42, 0xa5, 0x68, 0x74, 0x0a, 0x58, 0x4c, 0x77, 0xcb, 0x8f, 0x96, 0x03, 0xac, }; static const unsigned char hmac_sha224_90_msg[] = { 0xdb, 0xca, 0x9e, 0x4b, 0xdd, 0x84, 0xb3, 0x89, 0x34, }; static const unsigned char hmac_sha224_90_tag[] = { 0x2c, 0xf1, 0x4e, 0xb8, 0xf4, 0xc7, 0x53, 0x7e, 0x98, 0x31, 0x98, 0x3b, 0xb5, 0xaf, }; static const wycheproof_hmac_test hmac_sha224_90 = { .name = "hmac_sha224_90", .hash = SHA224, .key = hmac_sha224_90_key, .keylen = 28, .msg = hmac_sha224_90_msg, .msglen = 9, .tag = hmac_sha224_90_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 91 for HMAC, tcId is 92 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_91_key[] = { 0xa2, 0xa8, 0x09, 0x0a, 0xef, 0x69, 0x27, 0x7f, 0x92, 0x83, 0x0e, 0xc7, 0x40, 0x4c, 0x03, 0x2f, 0x8f, 0xde, 0xbf, 0xbc, 0xea, 0xbb, 0x9e, 0x59, 0x09, 0x68, 0xa7, 0x7f, }; static const unsigned char hmac_sha224_91_msg[] = { 0x6b, 0x79, 0x0a, 0x94, 0x6a, 0x83, 0x36, 0x4c, 0x79, 0xd7, }; static const unsigned char hmac_sha224_91_tag[] = { 0xd4, 0x67, 0x20, 0x9f, 0x63, 0xa9, 0xbd, 0x3d, 0x2c, 0x53, 0x98, 0xc3, 0x05, 0xda, }; static const wycheproof_hmac_test hmac_sha224_91 = { .name = "hmac_sha224_91", .hash = SHA224, .key = hmac_sha224_91_key, .keylen = 28, .msg = hmac_sha224_91_msg, .msglen = 10, .tag = hmac_sha224_91_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 92 for HMAC, tcId is 93 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_92_key[] = { 0x6f, 0x99, 0x99, 0x29, 0xe9, 0x16, 0x72, 0xba, 0xc3, 0x5e, 0xa7, 0x0f, 0x8f, 0xf8, 0xb9, 0xae, 0xef, 0xa5, 0x48, 0x94, 0x93, 0xc9, 0x9b, 0x0d, 0x27, 0x79, 0x72, 0x07, }; static const unsigned char hmac_sha224_92_msg[] = { 0xb7, 0xda, 0xbb, 0x23, 0x7a, 0xea, 0xe2, 0xbe, 0x8b, 0x5e, 0x19, }; static const unsigned char hmac_sha224_92_tag[] = { 0x09, 0xb2, 0xbb, 0x6e, 0xae, 0xda, 0x5f, 0x02, 0x29, 0xb8, 0xc3, 0x5a, 0x2f, 0x54, }; static const wycheproof_hmac_test hmac_sha224_92 = { .name = "hmac_sha224_92", .hash = SHA224, .key = hmac_sha224_92_key, .keylen = 28, .msg = hmac_sha224_92_msg, .msglen = 11, .tag = hmac_sha224_92_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 93 for HMAC, tcId is 94 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_93_key[] = { 0x45, 0x25, 0xb9, 0x6c, 0x26, 0x3e, 0x4d, 0x2d, 0xab, 0x28, 0x90, 0xaa, 0x55, 0xf3, 0xcc, 0x50, 0x3d, 0xc1, 0x20, 0x6d, 0x9f, 0x19, 0x15, 0xa6, 0xfb, 0xa5, 0xae, 0x61, }; static const unsigned char hmac_sha224_93_msg[] = { 0xef, 0x85, 0x8f, 0x49, 0x6f, 0xcb, 0x7c, 0x3f, 0xab, 0xbf, 0xb5, 0x2e, }; static const unsigned char hmac_sha224_93_tag[] = { 0x6f, 0x5c, 0xa7, 0xef, 0xcb, 0x9a, 0x70, 0xd0, 0xab, 0xf8, 0x42, 0x5f, 0x42, 0xca, }; static const wycheproof_hmac_test hmac_sha224_93 = { .name = "hmac_sha224_93", .hash = SHA224, .key = hmac_sha224_93_key, .keylen = 28, .msg = hmac_sha224_93_msg, .msglen = 12, .tag = hmac_sha224_93_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 94 for HMAC, tcId is 95 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_94_key[] = { 0xf8, 0x94, 0x01, 0xac, 0xb0, 0xa6, 0x0d, 0x07, 0xfd, 0x73, 0x3e, 0xd5, 0x63, 0xf2, 0xee, 0x24, 0x1f, 0x4e, 0xcf, 0xea, 0x81, 0x14, 0x58, 0x7a, 0x44, 0xdf, 0xdb, 0x0c, }; static const unsigned char hmac_sha224_94_msg[] = { 0x7d, 0x3c, 0x09, 0x18, 0x08, 0x59, 0x84, 0xdf, 0x95, 0x09, 0x7a, 0xfa, 0x81, }; static const unsigned char hmac_sha224_94_tag[] = { 0xfc, 0x22, 0x7f, 0x29, 0xb5, 0x1f, 0x9c, 0x85, 0x53, 0x43, 0xdc, 0xd0, 0xea, 0x11, }; static const wycheproof_hmac_test hmac_sha224_94 = { .name = "hmac_sha224_94", .hash = SHA224, .key = hmac_sha224_94_key, .keylen = 28, .msg = hmac_sha224_94_msg, .msglen = 13, .tag = hmac_sha224_94_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 95 for HMAC, tcId is 96 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_95_key[] = { 0x58, 0xbc, 0xe8, 0xc0, 0xd1, 0x7f, 0xc7, 0x13, 0x1d, 0x2f, 0xa2, 0x26, 0x24, 0x09, 0xbb, 0x14, 0x66, 0x3a, 0x6e, 0x68, 0x01, 0x9f, 0x88, 0x29, 0x99, 0x87, 0x89, 0x3e, }; static const unsigned char hmac_sha224_95_msg[] = { 0x1c, 0xa5, 0x0c, 0xd6, 0xc3, 0xf1, 0x22, 0x5e, 0xb6, 0xc4, 0xec, 0x4d, 0x6a, 0x90, }; static const unsigned char hmac_sha224_95_tag[] = { 0x53, 0xe1, 0x03, 0xbb, 0xde, 0xd7, 0xb8, 0x25, 0xaf, 0xfa, 0x24, 0x0f, 0x85, 0x78, }; static const wycheproof_hmac_test hmac_sha224_95 = { .name = "hmac_sha224_95", .hash = SHA224, .key = hmac_sha224_95_key, .keylen = 28, .msg = hmac_sha224_95_msg, .msglen = 14, .tag = hmac_sha224_95_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 96 for HMAC, tcId is 97 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_96_key[] = { 0x65, 0x8e, 0x51, 0x0f, 0xba, 0x4e, 0x22, 0x08, 0xaf, 0xac, 0x98, 0x33, 0x3f, 0x9e, 0x24, 0x2b, 0xc1, 0x18, 0xf6, 0xe7, 0x9e, 0xf0, 0x66, 0x1d, 0x61, 0x9d, 0xd3, 0x2b, }; static const unsigned char hmac_sha224_96_msg[] = { 0x32, 0xc3, 0x85, 0xb7, 0x5a, 0xe8, 0x45, 0x58, 0xca, 0x30, 0x28, 0x81, 0xc5, 0x16, 0x39, }; static const unsigned char hmac_sha224_96_tag[] = { 0x48, 0x5f, 0x35, 0x1e, 0x2a, 0x9a, 0x82, 0x91, 0x0c, 0x3c, 0x94, 0x9e, 0x32, 0xb8, }; static const wycheproof_hmac_test hmac_sha224_96 = { .name = "hmac_sha224_96", .hash = SHA224, .key = hmac_sha224_96_key, .keylen = 28, .msg = hmac_sha224_96_msg, .msglen = 15, .tag = hmac_sha224_96_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 97 for HMAC, tcId is 98 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_97_key[] = { 0x6a, 0x41, 0xcc, 0x3c, 0xa7, 0x14, 0x2a, 0xe1, 0x4e, 0x6d, 0x97, 0x9a, 0x3f, 0x89, 0x0a, 0x33, 0x15, 0x97, 0xe5, 0x92, 0xdd, 0x74, 0x52, 0x0c, 0xe4, 0xea, 0x66, 0x0f, }; static const unsigned char hmac_sha224_97_msg[] = { 0x78, 0xe3, 0xa7, 0x70, 0xa8, 0xaa, 0xaf, 0x03, 0x9f, 0xd4, 0xc9, 0xb6, 0xa1, 0x78, 0x04, 0x11, }; static const unsigned char hmac_sha224_97_tag[] = { 0x33, 0x1a, 0x58, 0xed, 0x96, 0xfc, 0x8b, 0x9e, 0x68, 0x4a, 0xb0, 0x5f, 0x63, 0x6c, }; static const wycheproof_hmac_test hmac_sha224_97 = { .name = "hmac_sha224_97", .hash = SHA224, .key = hmac_sha224_97_key, .keylen = 28, .msg = hmac_sha224_97_msg, .msglen = 16, .tag = hmac_sha224_97_tag, .taglen = 14, .result = 1, .comment = ", tcId is 98 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 98 for HMAC, tcId is 99 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_98_key[] = { 0xb8, 0x97, 0x2b, 0x93, 0xb6, 0x83, 0x02, 0xcb, 0xaa, 0x08, 0xd3, 0x29, 0x04, 0xea, 0xe6, 0x37, 0x5a, 0x66, 0xf3, 0x50, 0x8e, 0xce, 0x3c, 0x9b, 0x22, 0x38, 0x2c, 0x7e, }; static const unsigned char hmac_sha224_98_msg[] = { 0x36, 0x87, 0xe6, 0x28, 0x7d, 0x73, 0xc9, 0xe3, 0xf6, 0x79, 0xa5, 0x0e, 0x76, 0x71, 0x24, 0x71, 0x27, }; static const unsigned char hmac_sha224_98_tag[] = { 0x27, 0xd8, 0x11, 0x39, 0x55, 0x02, 0x6d, 0x4d, 0x31, 0x80, 0x70, 0xfb, 0xfd, 0x8f, }; static const wycheproof_hmac_test hmac_sha224_98 = { .name = "hmac_sha224_98", .hash = SHA224, .key = hmac_sha224_98_key, .keylen = 28, .msg = hmac_sha224_98_msg, .msglen = 17, .tag = hmac_sha224_98_tag, .taglen = 14, .result = 1, .comment = ", tcId is 99 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 99 for HMAC, tcId is 100 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_99_key[] = { 0xbc, 0x57, 0x09, 0x32, 0xab, 0xfa, 0x11, 0x05, 0x0a, 0xd4, 0xfc, 0x80, 0xa6, 0xd5, 0xaf, 0xe3, 0x27, 0x1d, 0x86, 0xaa, 0x29, 0xdc, 0x62, 0x73, 0x8b, 0x20, 0x7d, 0x14, }; static const unsigned char hmac_sha224_99_msg[] = { 0xd5, 0x32, 0x02, 0xac, 0xd2, 0xec, 0x74, 0xd7, 0x46, 0x53, 0x1b, 0xd9, 0xad, 0x30, 0x16, 0xd0, 0x98, 0x0e, 0x01, 0x66, 0xfb, 0x42, 0x7a, 0x08, }; static const unsigned char hmac_sha224_99_tag[] = { 0x02, 0x0e, 0x3e, 0x0c, 0x29, 0x40, 0xce, 0x15, 0xee, 0xb6, 0x73, 0x92, 0x57, 0x0f, }; static const wycheproof_hmac_test hmac_sha224_99 = { .name = "hmac_sha224_99", .hash = SHA224, .key = hmac_sha224_99_key, .keylen = 28, .msg = hmac_sha224_99_msg, .msglen = 24, .tag = hmac_sha224_99_tag, .taglen = 14, .result = 1, .comment = ", tcId is 100 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 100 for HMAC, tcId is 101 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_100_key[] = { 0xc9, 0x2a, 0x06, 0x65, 0xc1, 0x2e, 0x87, 0x02, 0x6e, 0x1b, 0x34, 0x4f, 0x97, 0x1f, 0xdb, 0x0e, 0x47, 0x4d, 0x45, 0x0c, 0xba, 0x83, 0x4a, 0xae, 0x40, 0xe2, 0xd2, 0x1e, }; static const unsigned char hmac_sha224_100_msg[] = { 0x4a, 0x3a, 0x85, 0xac, 0x09, 0xf5, 0x19, 0x0a, 0xb9, 0x4f, 0x73, 0xfd, 0x91, 0xd9, 0x8f, 0x05, 0x60, 0x15, 0x26, 0x3c, 0x89, 0xed, 0x5d, 0xa2, 0x23, 0xfc, 0x46, 0x75, 0xca, 0xb2, 0x5c, 0xdd, }; static const unsigned char hmac_sha224_100_tag[] = { 0x92, 0x28, 0x53, 0xf1, 0x59, 0xc4, 0x2b, 0x9e, 0x27, 0x4f, 0xce, 0xf7, 0xbd, 0xf3, }; static const wycheproof_hmac_test hmac_sha224_100 = { .name = "hmac_sha224_100", .hash = SHA224, .key = hmac_sha224_100_key, .keylen = 28, .msg = hmac_sha224_100_msg, .msglen = 32, .tag = hmac_sha224_100_tag, .taglen = 14, .result = 1, .comment = ", tcId is 101 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 101 for HMAC, tcId is 102 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_101_key[] = { 0x6f, 0xbe, 0xf6, 0x7c, 0xfb, 0xac, 0xc9, 0x8c, 0x63, 0x25, 0x2b, 0x1c, 0xa0, 0x09, 0xa6, 0x0e, 0x8e, 0x34, 0x79, 0x76, 0x9a, 0x2d, 0x44, 0x9f, 0xb4, 0x63, 0x90, 0x64, }; static const unsigned char hmac_sha224_101_msg[] = { 0x00, 0x6e, 0x17, 0x9e, 0xac, 0xfa, 0x9e, 0x1e, 0x62, 0x8b, 0xb7, 0x82, 0x3e, 0xe9, 0x60, 0x9a, 0xe7, 0x96, 0x8b, 0x6d, 0xf9, 0x0e, 0x17, 0x6f, 0x77, 0x2a, 0x79, 0x08, 0x8d, 0x37, 0xe9, 0xb1, 0x5c, 0xab, 0x31, 0x29, 0x22, 0xaa, 0xf8, 0xfc, 0x65, 0x83, 0xa3, 0x41, 0x00, 0x2b, 0xda, }; static const unsigned char hmac_sha224_101_tag[] = { 0x0a, 0x27, 0xa1, 0x2a, 0xfb, 0xb9, 0xc3, 0x13, 0x62, 0x02, 0xe0, 0x2a, 0xe3, 0xb2, }; static const wycheproof_hmac_test hmac_sha224_101 = { .name = "hmac_sha224_101", .hash = SHA224, .key = hmac_sha224_101_key, .keylen = 28, .msg = hmac_sha224_101_msg, .msglen = 47, .tag = hmac_sha224_101_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 102 for HMAC, tcId is 103 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_102_key[] = { 0x70, 0x0b, 0x09, 0x90, 0x81, 0x74, 0xf1, 0x07, 0x2e, 0x31, 0xae, 0x8c, 0xcb, 0xda, 0x1c, 0x44, 0x60, 0xfc, 0xf2, 0x1f, 0xdf, 0x14, 0x6a, 0x11, 0x48, 0x2b, 0x21, 0x0d, }; static const unsigned char hmac_sha224_102_msg[] = { 0xf7, 0x72, 0x56, 0x4e, 0xcb, 0x10, 0x9e, 0x80, 0xee, 0xfb, 0x1d, 0x5a, 0x7f, 0x1c, 0x95, 0xe2, 0x03, 0xba, 0x4c, 0x98, 0x02, 0x33, 0xdd, 0x8d, 0x13, 0xde, 0x30, 0x46, 0x07, 0x9a, 0x6b, 0x2c, 0xa2, 0x6d, 0xc3, 0x52, 0x1e, 0x5e, 0x0c, 0x80, 0x7e, 0xae, 0x7a, 0x79, 0x87, 0x7c, 0x73, 0xe9, }; static const unsigned char hmac_sha224_102_tag[] = { 0x04, 0xc7, 0x18, 0xa4, 0xcd, 0x8b, 0x58, 0x3d, 0x5f, 0xfb, 0x81, 0x70, 0x27, 0x6c, }; static const wycheproof_hmac_test hmac_sha224_102 = { .name = "hmac_sha224_102", .hash = SHA224, .key = hmac_sha224_102_key, .keylen = 28, .msg = hmac_sha224_102_msg, .msglen = 48, .tag = hmac_sha224_102_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 103 for HMAC, tcId is 104 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_103_key[] = { 0xe1, 0x8a, 0x20, 0x24, 0x6e, 0xbe, 0x1b, 0x57, 0x96, 0xdb, 0xfe, 0x35, 0x11, 0x0e, 0xfc, 0x76, 0x37, 0xd7, 0x4a, 0x35, 0x5f, 0x0a, 0x67, 0x58, 0xd4, 0xa0, 0x0b, 0x7d, }; static const unsigned char hmac_sha224_103_msg[] = { 0x77, 0x72, 0x0d, 0xde, 0x53, 0x0e, 0x6e, 0xea, 0xa0, 0xe9, 0xaf, 0x33, 0x11, 0xf7, 0xe9, 0x91, 0x89, 0xd6, 0xc4, 0xf7, 0xd7, 0x1d, 0x0a, 0x42, 0x07, 0xd6, 0x2c, 0x76, 0x6b, 0xee, 0x32, 0x02, 0x0c, 0x92, 0xf5, 0xd5, 0xd2, 0x8d, 0x5d, 0xe4, 0xd0, 0xd9, 0xc9, 0x4b, 0x57, 0xec, 0x05, 0xf0, 0xc3, }; static const unsigned char hmac_sha224_103_tag[] = { 0x25, 0xeb, 0xc8, 0x61, 0x1f, 0x4b, 0x63, 0x6d, 0x89, 0x2f, 0x11, 0xdf, 0x2b, 0x29, }; static const wycheproof_hmac_test hmac_sha224_103 = { .name = "hmac_sha224_103", .hash = SHA224, .key = hmac_sha224_103_key, .keylen = 28, .msg = hmac_sha224_103_msg, .msglen = 49, .tag = hmac_sha224_103_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 104 for HMAC, tcId is 105 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_104_key[] = { 0x3c, 0x45, 0x85, 0xa7, 0x75, 0xbe, 0xc7, 0x6c, 0x7d, 0x8b, 0x27, 0xb8, 0x7e, 0x70, 0xa5, 0x86, 0x3a, 0x85, 0xe6, 0x11, 0x1f, 0x31, 0x61, 0xb3, 0x81, 0x5f, 0x59, 0xb4, }; static const unsigned char hmac_sha224_104_msg[] = { 0x62, 0x8c, 0x0f, 0xf8, 0xc4, 0x32, 0xd7, 0x4f, 0x4c, 0xfb, 0x77, 0xba, 0x46, 0xb7, 0xce, 0xf6, 0x7a, 0x48, 0xac, 0x05, 0x3c, 0xf0, 0xc1, 0x8b, 0xe4, 0x16, 0x48, 0x73, 0x6a, 0xbc, 0xc8, 0xc6, 0xfb, 0xe4, 0x98, 0x15, 0x29, 0xba, 0xbd, 0x4b, 0x27, 0x86, 0x6e, 0x34, 0xce, 0xd1, 0x6d, 0x8b, 0x0b, 0xec, 0x45, 0x6e, 0x14, 0x65, 0x3a, 0x14, 0x22, 0xf5, 0xa6, 0x25, 0x56, 0xd2, 0x0b, 0x0f, 0xe4, 0xe0, 0x37, 0x49, 0xd5, 0xf6, 0xe9, 0x86, 0x37, 0x50, 0x62, 0xdb, 0xdd, 0x82, 0xf6, 0xe9, 0xe1, 0xd4, 0xad, 0x54, 0x7c, 0x31, 0x53, 0x0c, 0x2a, 0x31, 0x38, 0x3c, 0x25, 0xff, 0x57, 0xe8, 0x79, 0xea, 0xe9, 0x9d, 0x9b, 0x3a, 0x0d, 0xa1, 0xf3, 0xc1, 0xda, 0xcb, 0x97, 0x50, 0x67, 0xac, }; static const unsigned char hmac_sha224_104_tag[] = { 0xde, 0xb9, 0x4b, 0x2d, 0x43, 0xe9, 0x89, 0x26, 0xaf, 0x51, 0xfc, 0x0c, 0x88, 0xdc, }; static const wycheproof_hmac_test hmac_sha224_104 = { .name = "hmac_sha224_104", .hash = SHA224, .key = hmac_sha224_104_key, .keylen = 28, .msg = hmac_sha224_104_msg, .msglen = 112, .tag = hmac_sha224_104_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 105 for HMAC, tcId is 106 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_105_key[] = { 0xac, 0xaf, 0x94, 0xcb, 0x1a, 0x8f, 0xf4, 0x67, 0x7f, 0xc5, 0x86, 0xd2, 0xbd, 0xf9, 0x81, 0xac, 0x3a, 0x65, 0x6b, 0x20, 0x82, 0x15, 0xe0, 0xa7, 0x64, 0x7b, 0x42, 0x0f, }; static const unsigned char hmac_sha224_105_msg[] = { 0x31, 0x4c, 0x2c, 0x25, 0x46, 0x5d, 0xe3, 0x42, 0x72, 0x79, 0xdb, 0xc8, 0x94, 0x36, 0x50, 0x5f, 0xee, 0x6d, 0x37, 0xd5, 0x6f, 0xbd, 0xa0, 0xe5, 0xe2, 0xa4, 0x94, 0x49, 0xd9, 0xdb, 0xf0, 0x03, 0x02, 0x7f, 0x2e, 0x4e, 0xf5, 0xc5, 0x2f, 0x7a, 0xf9, 0x3f, 0xd8, 0x01, 0x55, 0xa6, 0x6a, 0x1c, 0xd6, 0xb9, 0x88, 0x5b, 0x56, 0xd8, 0x28, 0x05, 0x8a, 0x0d, 0xe7, 0xd2, 0x47, 0xe1, 0x95, 0x80, 0xb2, 0xe8, 0xdc, 0xbd, 0xef, 0x2a, 0xe4, 0x68, 0x40, 0x56, 0x5f, 0xd8, 0xb2, 0x76, 0x56, 0x9c, 0x19, 0xd7, 0xe1, 0x85, 0x11, 0x6e, 0xa1, 0x1a, 0xd6, 0x7d, 0x5f, 0xc2, 0x7f, 0x4a, 0x68, 0x16, 0xba, 0x45, 0xbe, 0x5d, 0x14, 0xf3, 0xba, 0x43, 0x15, 0xc7, 0x4d, 0x1e, 0xdb, 0x20, 0xf2, 0x17, 0xb1, 0x16, 0xbe, 0x85, 0x2b, 0x62, 0xa7, 0xf4, 0xe3, 0x2b, 0x3e, 0x70, 0x8f, 0xf9, 0xf7, }; static const unsigned char hmac_sha224_105_tag[] = { 0x5b, 0x0d, 0x7a, 0xec, 0x7f, 0xbd, 0x19, 0x6e, 0xe6, 0x9e, 0xd3, 0x73, 0xe1, 0x31, }; static const wycheproof_hmac_test hmac_sha224_105 = { .name = "hmac_sha224_105", .hash = SHA224, .key = hmac_sha224_105_key, .keylen = 28, .msg = hmac_sha224_105_msg, .msglen = 127, .tag = hmac_sha224_105_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 106 for HMAC, tcId is 107 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_106_key[] = { 0xe4, 0x90, 0x34, 0x8a, 0xd7, 0x8f, 0xd2, 0xcd, 0x5b, 0x51, 0xf2, 0x79, 0x5b, 0x79, 0xe5, 0x80, 0x5c, 0xe1, 0xd9, 0xba, 0xf1, 0x15, 0x1d, 0xbd, 0xf9, 0x95, 0xe1, 0xb0, }; static const unsigned char hmac_sha224_106_msg[] = { 0xf6, 0xff, 0x18, 0x45, 0x84, 0x2b, 0x9e, 0x46, 0xf7, 0x9a, 0xdb, 0x10, 0x79, 0xaf, 0xf4, 0x73, 0x97, 0x39, 0x1d, 0xc2, 0x69, 0xbc, 0x0c, 0x89, 0x9b, 0xa4, 0x08, 0x7b, 0x58, 0xa6, 0x76, 0xf5, 0x40, 0x8c, 0x3f, 0x76, 0x37, 0xff, 0xc4, 0x77, 0x2a, 0xf3, 0xe4, 0x1b, 0x5c, 0xea, 0x51, 0x05, 0x8b, 0xc5, 0x28, 0xea, 0x09, 0xbb, 0x4b, 0xd7, 0x97, 0x59, 0x4c, 0x79, 0x8b, 0x0f, 0x0f, 0xf8, 0x81, 0x69, 0x5e, 0x98, 0xc0, 0x8b, 0xbb, 0x04, 0x0c, 0x12, 0xc5, 0xcb, 0xdb, 0x22, 0x8d, 0x61, 0xcc, 0x99, 0xe3, 0x32, 0xe9, 0x63, 0x12, 0x8d, 0x06, 0xe9, 0x7e, 0xd2, 0xee, 0xfd, 0xed, 0x2e, 0x1b, 0x5a, 0x03, 0x5f, 0x3b, 0xea, 0x68, 0x27, 0x3e, 0xfa, 0xc0, 0x3a, 0x89, 0x4d, 0xcf, 0x2f, 0xcc, 0x79, 0xa5, 0x69, 0x62, 0x18, 0x59, 0x54, 0x04, 0xb2, 0x75, 0x8d, 0xeb, 0x9a, 0x80, 0xee, }; static const unsigned char hmac_sha224_106_tag[] = { 0x59, 0x07, 0x27, 0xf3, 0x44, 0xd8, 0xa5, 0x40, 0xe5, 0xc5, 0xe0, 0xf4, 0xda, 0xe9, }; static const wycheproof_hmac_test hmac_sha224_106 = { .name = "hmac_sha224_106", .hash = SHA224, .key = hmac_sha224_106_key, .keylen = 28, .msg = hmac_sha224_106_msg, .msglen = 128, .tag = hmac_sha224_106_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 107 for HMAC, tcId is 108 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_107_key[] = { 0xc8, 0xe0, 0x99, 0xdb, 0xb6, 0x0a, 0x8f, 0x19, 0xd8, 0xb8, 0x68, 0x56, 0xb2, 0x1c, 0x55, 0xf3, 0x43, 0x7a, 0xe2, 0x7f, 0x77, 0xdf, 0xf9, 0x80, 0x8f, 0x12, 0xa1, 0xb5, }; static const unsigned char hmac_sha224_107_msg[] = { 0xed, 0xbc, 0x10, 0x9b, 0xf2, 0x8c, 0x8a, 0xb3, 0x2b, 0x12, 0x38, 0xef, 0xf1, 0xcd, 0x14, 0x30, 0x8c, 0xdd, 0x84, 0x5f, 0xa9, 0x19, 0xbf, 0xd8, 0xa0, 0x0c, 0x99, 0x1c, 0xf9, 0xa8, 0xd6, 0xb0, 0x5d, 0xd8, 0xcc, 0x7d, 0x23, 0x93, 0x78, 0x29, 0x49, 0xc8, 0x99, 0xde, 0x79, 0xe7, 0x71, 0xef, 0x7d, 0x85, 0x67, 0xf3, 0x22, 0x87, 0x62, 0x39, 0x63, 0x04, 0x8e, 0x6c, 0x80, 0xd9, 0x1f, 0x07, 0x78, 0xdd, 0x63, 0x31, 0x11, 0x06, 0xe9, 0xd0, 0x91, 0x3c, 0x08, 0xb7, 0xa0, 0xb7, 0x25, 0x3f, 0xa3, 0xce, 0x30, 0x7a, 0xc4, 0x0e, 0xc5, 0x5a, 0x4c, 0x44, 0x5f, 0x54, 0x55, 0xa5, 0x70, 0xfe, 0xc0, 0x90, 0xe2, 0x51, 0xe8, 0x64, 0x6b, 0xad, 0xa1, 0xa4, 0x86, 0xd4, 0x1c, 0x37, 0x94, 0xbc, 0xe5, 0x63, 0x97, 0x32, 0xf2, 0xc6, 0xcf, 0xd5, 0x80, 0x81, 0xc4, 0x79, 0xa6, 0x8c, 0x51, 0x5f, 0x5d, 0x47, 0xbc, 0x5b, 0x2f, 0x16, 0x22, 0xa0, 0x8d, 0x38, 0xa5, 0x96, 0xa8, 0x17, 0xf3, 0xd4, 0xef, 0xef, 0x80, 0x03, 0xae, 0x43, 0x0e, 0x6a, 0xe9, 0x3b, 0x0a, 0x3a, 0xe8, 0xfa, 0x95, 0xa2, 0xac, 0xe3, 0xd2, 0x4d, 0x90, 0xa9, 0xef, 0x86, 0x1d, 0xc0, 0x4c, 0x13, 0xe3, 0x8f, 0x6e, 0x52, 0x4b, 0x3a, 0xbd, 0xf9, 0xcc, 0xe4, 0xfa, 0x49, 0x07, 0x07, 0xc8, 0x0c, 0x16, 0xe2, 0x54, 0xb7, 0xa7, 0x1a, 0xf0, 0x0a, 0x12, 0xdb, 0xf4, 0x73, 0xb5, 0x0b, 0x9f, 0xe4, 0x09, 0x7e, 0xc0, 0x0a, 0xb2, 0x7e, 0x66, 0xb6, 0xf3, 0x02, 0x2b, 0x0f, 0x10, 0x1e, 0xe1, 0xa9, 0xf7, 0xfa, 0x86, 0x52, 0xe9, 0xf0, 0x95, 0xca, 0x24, 0x0a, 0x44, 0x60, 0x67, 0x44, 0x68, 0x67, 0xf7, 0x8e, 0x83, 0x52, 0xc4, 0x11, 0x07, 0x94, 0xc2, 0xe3, 0x38, 0x3d, 0xfe, 0xdf, 0xb3, 0x5e, 0x74, 0xa3, 0x3e, }; static const unsigned char hmac_sha224_107_tag[] = { 0x33, 0xe7, 0xdc, 0xb0, 0xfd, 0xe3, 0xb1, 0xc5, 0xb9, 0x25, 0x06, 0xe6, 0x35, 0xeb, }; static const wycheproof_hmac_test hmac_sha224_107 = { .name = "hmac_sha224_107", .hash = SHA224, .key = hmac_sha224_107_key, .keylen = 28, .msg = hmac_sha224_107_msg, .msglen = 255, .tag = hmac_sha224_107_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 108 for HMAC, tcId is 109 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_108_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_108_tag[] = { 0x6f, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_108 = { .name = "hmac_sha224_108", .hash = SHA224, .key = hmac_sha224_108_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_108_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 109 for HMAC, tcId is 110 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_109_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_109_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_109_tag[] = { 0x0c, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_109 = { .name = "hmac_sha224_109", .hash = SHA224, .key = hmac_sha224_109_key, .keylen = 28, .msg = hmac_sha224_109_msg, .msglen = 16, .tag = hmac_sha224_109_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 110 for HMAC, tcId is 111 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_110_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_110_tag[] = { 0x6c, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_110 = { .name = "hmac_sha224_110", .hash = SHA224, .key = hmac_sha224_110_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_110_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 111 for HMAC, tcId is 112 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_111_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_111_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_111_tag[] = { 0x0f, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_111 = { .name = "hmac_sha224_111", .hash = SHA224, .key = hmac_sha224_111_key, .keylen = 28, .msg = hmac_sha224_111_msg, .msglen = 16, .tag = hmac_sha224_111_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 112 for HMAC, tcId is 113 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_112_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_112_tag[] = { 0xee, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_112 = { .name = "hmac_sha224_112", .hash = SHA224, .key = hmac_sha224_112_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_112_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 113 for HMAC, tcId is 114 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_113_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_113_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_113_tag[] = { 0x8d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_113 = { .name = "hmac_sha224_113", .hash = SHA224, .key = hmac_sha224_113_key, .keylen = 28, .msg = hmac_sha224_113_msg, .msglen = 16, .tag = hmac_sha224_113_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 114 for HMAC, tcId is 115 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_114_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_114_tag[] = { 0x6e, 0x98, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_114 = { .name = "hmac_sha224_114", .hash = SHA224, .key = hmac_sha224_114_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_114_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 115 for HMAC, tcId is 116 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_115_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_115_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_115_tag[] = { 0x0d, 0x20, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_115 = { .name = "hmac_sha224_115", .hash = SHA224, .key = hmac_sha224_115_key, .keylen = 28, .msg = hmac_sha224_115_msg, .msglen = 16, .tag = hmac_sha224_115_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 116 for HMAC, tcId is 117 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_116_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_116_tag[] = { 0x6e, 0x99, 0xe8, 0xe2, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_116 = { .name = "hmac_sha224_116", .hash = SHA224, .key = hmac_sha224_116_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_116_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 117 for HMAC, tcId is 118 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_117_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_117_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_117_tag[] = { 0x0d, 0x21, 0x6f, 0x2e, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_117 = { .name = "hmac_sha224_117", .hash = SHA224, .key = hmac_sha224_117_key, .keylen = 28, .msg = hmac_sha224_117_msg, .msglen = 16, .tag = hmac_sha224_117_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 118 for HMAC, tcId is 119 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_118_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_118_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe4, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_118 = { .name = "hmac_sha224_118", .hash = SHA224, .key = hmac_sha224_118_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_118_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 119 for HMAC, tcId is 120 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_119_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_119_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_119_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xde, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_119 = { .name = "hmac_sha224_119", .hash = SHA224, .key = hmac_sha224_119_key, .keylen = 28, .msg = hmac_sha224_119_msg, .msglen = 16, .tag = hmac_sha224_119_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 120 for HMAC, tcId is 121 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_120_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_120_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe7, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_120 = { .name = "hmac_sha224_120", .hash = SHA224, .key = hmac_sha224_120_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_120_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 121 for HMAC, tcId is 122 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_121_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_121_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_121_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdd, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_121 = { .name = "hmac_sha224_121", .hash = SHA224, .key = hmac_sha224_121_key, .keylen = 28, .msg = hmac_sha224_121_msg, .msglen = 16, .tag = hmac_sha224_121_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 122 for HMAC, tcId is 123 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_122_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_122_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x13, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_122 = { .name = "hmac_sha224_122", .hash = SHA224, .key = hmac_sha224_122_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_122_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 123 for HMAC, tcId is 124 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_123_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_123_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_123_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0x4d, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_123 = { .name = "hmac_sha224_123", .hash = SHA224, .key = hmac_sha224_123_key, .keylen = 28, .msg = hmac_sha224_123_msg, .msglen = 16, .tag = hmac_sha224_123_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 124 for HMAC, tcId is 125 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_124_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_124_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6c, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_124 = { .name = "hmac_sha224_124", .hash = SHA224, .key = hmac_sha224_124_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_124_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 125 for HMAC, tcId is 126 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_125_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_125_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_125_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x50, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_125 = { .name = "hmac_sha224_125", .hash = SHA224, .key = hmac_sha224_125_key, .keylen = 28, .msg = hmac_sha224_125_msg, .msglen = 16, .tag = hmac_sha224_125_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 126 for HMAC, tcId is 127 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_126_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_126_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0xed, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_126 = { .name = "hmac_sha224_126", .hash = SHA224, .key = hmac_sha224_126_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_126_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 127 for HMAC, tcId is 128 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_127_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_127_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_127_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0xd1, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_127 = { .name = "hmac_sha224_127", .hash = SHA224, .key = hmac_sha224_127_key, .keylen = 28, .msg = hmac_sha224_127_msg, .msglen = 16, .tag = hmac_sha224_127_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 128 for HMAC, tcId is 129 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_128_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_128_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x58, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_128 = { .name = "hmac_sha224_128", .hash = SHA224, .key = hmac_sha224_128_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_128_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 129 for HMAC, tcId is 130 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_129_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_129_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_129_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xdc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_129 = { .name = "hmac_sha224_129", .hash = SHA224, .key = hmac_sha224_129_key, .keylen = 28, .msg = hmac_sha224_129_msg, .msglen = 16, .tag = hmac_sha224_129_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 130 for HMAC, tcId is 131 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_130_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_130_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb4, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_130 = { .name = "hmac_sha224_130", .hash = SHA224, .key = hmac_sha224_130_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_130_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 131 for HMAC, tcId is 132 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_131_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_131_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_131_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xae, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_131 = { .name = "hmac_sha224_131", .hash = SHA224, .key = hmac_sha224_131_key, .keylen = 28, .msg = hmac_sha224_131_msg, .msglen = 16, .tag = hmac_sha224_131_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 132 for HMAC, tcId is 133 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_132_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_132_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x28, 0x09, }; static const wycheproof_hmac_test hmac_sha224_132 = { .name = "hmac_sha224_132", .hash = SHA224, .key = hmac_sha224_132_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_132_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 133 for HMAC, tcId is 134 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_133_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_133_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_133_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x73, 0x22, }; static const wycheproof_hmac_test hmac_sha224_133 = { .name = "hmac_sha224_133", .hash = SHA224, .key = hmac_sha224_133_key, .keylen = 28, .msg = hmac_sha224_133_msg, .msglen = 16, .tag = hmac_sha224_133_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 134 for HMAC, tcId is 135 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_134_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_134_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x2b, 0x09, }; static const wycheproof_hmac_test hmac_sha224_134 = { .name = "hmac_sha224_134", .hash = SHA224, .key = hmac_sha224_134_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_134_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 135 for HMAC, tcId is 136 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_135_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_135_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_135_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x70, 0x22, }; static const wycheproof_hmac_test hmac_sha224_135 = { .name = "hmac_sha224_135", .hash = SHA224, .key = hmac_sha224_135_key, .keylen = 28, .msg = hmac_sha224_135_msg, .msglen = 16, .tag = hmac_sha224_135_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 136 for HMAC, tcId is 137 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_136_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_136_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0xa9, 0x09, }; static const wycheproof_hmac_test hmac_sha224_136 = { .name = "hmac_sha224_136", .hash = SHA224, .key = hmac_sha224_136_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_136_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 137 for HMAC, tcId is 138 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_137_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_137_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_137_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0xf2, 0x22, }; static const wycheproof_hmac_test hmac_sha224_137 = { .name = "hmac_sha224_137", .hash = SHA224, .key = hmac_sha224_137_key, .keylen = 28, .msg = hmac_sha224_137_msg, .msglen = 16, .tag = hmac_sha224_137_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 138 for HMAC, tcId is 139 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_138_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_138_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x08, }; static const wycheproof_hmac_test hmac_sha224_138 = { .name = "hmac_sha224_138", .hash = SHA224, .key = hmac_sha224_138_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_138_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 104 in tag, tcId is 139 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 139 for HMAC, tcId is 140 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_139_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_139_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_139_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x23, }; static const wycheproof_hmac_test hmac_sha224_139 = { .name = "hmac_sha224_139", .hash = SHA224, .key = hmac_sha224_139_key, .keylen = 28, .msg = hmac_sha224_139_msg, .msglen = 16, .tag = hmac_sha224_139_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 104 in tag, tcId is 140 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 140 for HMAC, tcId is 141 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_140_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_140_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x0b, }; static const wycheproof_hmac_test hmac_sha224_140 = { .name = "hmac_sha224_140", .hash = SHA224, .key = hmac_sha224_140_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_140_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 105 in tag, tcId is 141 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 141 for HMAC, tcId is 142 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_141_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_141_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_141_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x20, }; static const wycheproof_hmac_test hmac_sha224_141 = { .name = "hmac_sha224_141", .hash = SHA224, .key = hmac_sha224_141_key, .keylen = 28, .msg = hmac_sha224_141_msg, .msglen = 16, .tag = hmac_sha224_141_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 105 in tag, tcId is 142 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 142 for HMAC, tcId is 143 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_142_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_142_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x49, }; static const wycheproof_hmac_test hmac_sha224_142 = { .name = "hmac_sha224_142", .hash = SHA224, .key = hmac_sha224_142_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_142_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 110 in tag, tcId is 143 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 143 for HMAC, tcId is 144 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_143_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_143_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_143_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x62, }; static const wycheproof_hmac_test hmac_sha224_143 = { .name = "hmac_sha224_143", .hash = SHA224, .key = hmac_sha224_143_key, .keylen = 28, .msg = hmac_sha224_143_msg, .msglen = 16, .tag = hmac_sha224_143_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 110 in tag, tcId is 144 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 144 for HMAC, tcId is 145 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_144_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_144_tag[] = { 0x6e, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x89, }; static const wycheproof_hmac_test hmac_sha224_144 = { .name = "hmac_sha224_144", .hash = SHA224, .key = hmac_sha224_144_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_144_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 111 in tag, tcId is 145 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 145 for HMAC, tcId is 146 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_145_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_145_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_145_tag[] = { 0x0d, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0xa2, }; static const wycheproof_hmac_test hmac_sha224_145 = { .name = "hmac_sha224_145", .hash = SHA224, .key = hmac_sha224_145_key, .keylen = 28, .msg = hmac_sha224_145_msg, .msglen = 16, .tag = hmac_sha224_145_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 111 in tag, tcId is 146 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 146 for HMAC, tcId is 147 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_146_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_146_tag[] = { 0x6f, 0x99, 0xe8, 0x62, 0xe5, 0x32, 0xe8, 0x93, 0x6c, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_146 = { .name = "hmac_sha224_146", .hash = SHA224, .key = hmac_sha224_146_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_146_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 147 for HMAC, tcId is 148 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_147_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_147_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_147_tag[] = { 0x0c, 0x21, 0x6f, 0xae, 0xdf, 0x30, 0x53, 0xcd, 0x50, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_147 = { .name = "hmac_sha224_147", .hash = SHA224, .key = hmac_sha224_147_key, .keylen = 28, .msg = hmac_sha224_147_msg, .msglen = 16, .tag = hmac_sha224_147_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 148 for HMAC, tcId is 149 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_148_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_148_tag[] = { 0x6e, 0x99, 0xe8, 0xe2, 0xe5, 0x32, 0xe8, 0x13, 0x6d, 0x78, 0xb5, 0xf0, 0x29, 0x09, }; static const wycheproof_hmac_test hmac_sha224_148 = { .name = "hmac_sha224_148", .hash = SHA224, .key = hmac_sha224_148_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_148_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 149 for HMAC, tcId is 150 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_149_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_149_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_149_tag[] = { 0x0d, 0x21, 0x6f, 0x2e, 0xdf, 0x30, 0x53, 0x4d, 0x51, 0xfc, 0xaf, 0x41, 0x72, 0x22, }; static const wycheproof_hmac_test hmac_sha224_149 = { .name = "hmac_sha224_149", .hash = SHA224, .key = hmac_sha224_149_key, .keylen = 28, .msg = hmac_sha224_149_msg, .msglen = 16, .tag = hmac_sha224_149_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 150 for HMAC, tcId is 151 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_150_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_150_tag[] = { 0x91, 0x66, 0x17, 0x9d, 0x1a, 0xcd, 0x17, 0x6c, 0x92, 0x87, 0x4a, 0x0f, 0xd6, 0xf6, }; static const wycheproof_hmac_test hmac_sha224_150 = { .name = "hmac_sha224_150", .hash = SHA224, .key = hmac_sha224_150_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_150_tag, .taglen = 14, .result = -1, .comment = "all bits of tag flipped, tcId is 151 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 151 for HMAC, tcId is 152 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_151_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_151_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_151_tag[] = { 0xf2, 0xde, 0x90, 0x51, 0x20, 0xcf, 0xac, 0x32, 0xae, 0x03, 0x50, 0xbe, 0x8d, 0xdd, }; static const wycheproof_hmac_test hmac_sha224_151 = { .name = "hmac_sha224_151", .hash = SHA224, .key = hmac_sha224_151_key, .keylen = 28, .msg = hmac_sha224_151_msg, .msglen = 16, .tag = hmac_sha224_151_tag, .taglen = 14, .result = -1, .comment = "all bits of tag flipped, tcId is 152 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 152 for HMAC, tcId is 153 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_152_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_152_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha224_152 = { .name = "hmac_sha224_152", .hash = SHA224, .key = hmac_sha224_152_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_152_tag, .taglen = 14, .result = -1, .comment = "Tag changed to all zero, tcId is 153 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 153 for HMAC, tcId is 154 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_153_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_153_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_153_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha224_153 = { .name = "hmac_sha224_153", .hash = SHA224, .key = hmac_sha224_153_key, .keylen = 28, .msg = hmac_sha224_153_msg, .msglen = 16, .tag = hmac_sha224_153_tag, .taglen = 14, .result = -1, .comment = "Tag changed to all zero, tcId is 154 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 154 for HMAC, tcId is 155 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_154_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_154_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha224_154 = { .name = "hmac_sha224_154", .hash = SHA224, .key = hmac_sha224_154_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_154_tag, .taglen = 14, .result = -1, .comment = "tag changed to all 1, tcId is 155 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 155 for HMAC, tcId is 156 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_155_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_155_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_155_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha224_155 = { .name = "hmac_sha224_155", .hash = SHA224, .key = hmac_sha224_155_key, .keylen = 28, .msg = hmac_sha224_155_msg, .msglen = 16, .tag = hmac_sha224_155_tag, .taglen = 14, .result = -1, .comment = "tag changed to all 1, tcId is 156 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 156 for HMAC, tcId is 157 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_156_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_156_tag[] = { 0xee, 0x19, 0x68, 0xe2, 0x65, 0xb2, 0x68, 0x13, 0xed, 0xf8, 0x35, 0x70, 0xa9, 0x89, }; static const wycheproof_hmac_test hmac_sha224_156 = { .name = "hmac_sha224_156", .hash = SHA224, .key = hmac_sha224_156_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_156_tag, .taglen = 14, .result = -1, .comment = "msbs changed in tag, tcId is 157 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 157 for HMAC, tcId is 158 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_157_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_157_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_157_tag[] = { 0x8d, 0xa1, 0xef, 0x2e, 0x5f, 0xb0, 0xd3, 0x4d, 0xd1, 0x7c, 0x2f, 0xc1, 0xf2, 0xa2, }; static const wycheproof_hmac_test hmac_sha224_157 = { .name = "hmac_sha224_157", .hash = SHA224, .key = hmac_sha224_157_key, .keylen = 28, .msg = hmac_sha224_157_msg, .msglen = 16, .tag = hmac_sha224_157_tag, .taglen = 14, .result = -1, .comment = "msbs changed in tag, tcId is 158 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 158 for HMAC, tcId is 159 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_158_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_158_tag[] = { 0x6f, 0x98, 0xe9, 0x63, 0xe4, 0x33, 0xe9, 0x92, 0x6c, 0x79, 0xb4, 0xf1, 0x28, 0x08, }; static const wycheproof_hmac_test hmac_sha224_158 = { .name = "hmac_sha224_158", .hash = SHA224, .key = hmac_sha224_158_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_158_tag, .taglen = 14, .result = -1, .comment = "lsbs changed in tag, tcId is 159 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 159 for HMAC, tcId is 160 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_159_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha224_159_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha224_159_tag[] = { 0x0c, 0x20, 0x6e, 0xaf, 0xde, 0x31, 0x52, 0xcc, 0x50, 0xfd, 0xae, 0x40, 0x73, 0x23, }; static const wycheproof_hmac_test hmac_sha224_159 = { .name = "hmac_sha224_159", .hash = SHA224, .key = hmac_sha224_159_key, .keylen = 28, .msg = hmac_sha224_159_msg, .msglen = 16, .tag = hmac_sha224_159_tag, .taglen = 14, .result = -1, .comment = "lsbs changed in tag, tcId is 160 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 160 for HMAC, tcId is 161 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_160_key[] = { 0x77, 0xb0, 0xde, 0x54, 0xe8, 0x93, 0x64, 0x2c, 0xae, 0xac, 0x34, 0xbf, 0xd1, 0xab, }; static const unsigned char hmac_sha224_160_tag[] = { 0x20, 0x14, 0xa9, 0xf2, 0x72, 0x37, 0x8f, 0xa1, 0xc9, 0xf6, 0x74, 0x4d, 0x4d, 0xb4, 0x86, 0x1b, 0x52, 0xe6, 0x1a, 0x19, 0xeb, 0x28, 0x32, 0x0e, 0xbe, 0xe2, 0xd1, 0x74, }; static const wycheproof_hmac_test hmac_sha224_160 = { .name = "hmac_sha224_160", .hash = SHA224, .key = hmac_sha224_160_key, .keylen = 14, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_160_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 161 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 161 for HMAC, tcId is 162 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_161_key[] = { 0x73, 0x46, 0xc7, 0xe4, 0xb1, 0x18, 0xb2, 0x4e, 0x51, 0xf4, 0x51, 0x2f, 0x90, 0x6a, }; static const unsigned char hmac_sha224_161_msg[] = { 0x50, 0x6d, 0x4f, 0xaf, 0x62, 0x4f, 0x92, 0x96, 0x5a, 0xa6, 0xb5, 0xc0, 0x1e, 0x0c, 0x80, 0xa8, }; static const unsigned char hmac_sha224_161_tag[] = { 0xc4, 0xe0, 0xad, 0x2f, 0x62, 0x27, 0x98, 0x98, 0xa7, 0xed, 0xe0, 0xf7, 0x09, 0xa1, 0xcc, 0xb8, 0xc1, 0x00, 0x49, 0x41, 0xf3, 0xc5, 0x07, 0x43, 0x92, 0xe7, 0x95, 0x33, }; static const wycheproof_hmac_test hmac_sha224_161 = { .name = "hmac_sha224_161", .hash = SHA224, .key = hmac_sha224_161_key, .keylen = 14, .msg = hmac_sha224_161_msg, .msglen = 16, .tag = hmac_sha224_161_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 162 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 162 for HMAC, tcId is 163 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_162_key[] = { 0xca, 0xa8, 0x64, 0x17, 0x9f, 0x66, 0xe8, 0x26, 0xa0, 0xef, 0x3b, 0x5e, 0xdb, 0xe3, }; static const unsigned char hmac_sha224_162_msg[] = { 0x73, 0xf6, 0x42, 0x53, 0x70, 0x6c, 0xe6, 0xb5, 0x09, 0x4c, 0x24, 0xee, 0x01, 0x2e, 0xce, 0x9a, 0xc2, 0x49, 0x52, 0x83, 0xdc, 0xd8, 0xc7, 0xf1, 0x11, 0x4e, 0x81, 0xe4, 0x58, 0x7d, 0x8e, 0xa4, }; static const unsigned char hmac_sha224_162_tag[] = { 0xa1, 0x22, 0x07, 0x45, 0xbb, 0x03, 0xd9, 0x82, 0x76, 0x3b, 0xfa, 0x7c, 0xe3, 0x52, 0xb8, 0xbc, 0x87, 0x57, 0x6a, 0x0a, 0xd5, 0xd4, 0x6a, 0x0d, 0xa0, 0x8f, 0xf2, 0xd6, }; static const wycheproof_hmac_test hmac_sha224_162 = { .name = "hmac_sha224_162", .hash = SHA224, .key = hmac_sha224_162_key, .keylen = 14, .msg = hmac_sha224_162_msg, .msglen = 32, .tag = hmac_sha224_162_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 163 for HMAC, tcId is 164 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_163_key[] = { 0x66, 0x3a, 0x97, 0xd6, 0xb5, 0x49, 0x3d, 0xbf, 0xa6, 0x0c, 0x8d, 0xd0, 0x87, 0xed, }; static const unsigned char hmac_sha224_163_tag[] = { 0x0c, 0x6e, 0x21, 0xa8, 0x5e, 0x3c, 0xd2, 0xcd, 0x41, 0x3f, 0x36, 0x50, 0x7d, 0x6e, }; static const wycheproof_hmac_test hmac_sha224_163 = { .name = "hmac_sha224_163", .hash = SHA224, .key = hmac_sha224_163_key, .keylen = 14, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_163_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 164 for HMAC, tcId is 165 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_164_key[] = { 0xb0, 0x8c, 0x34, 0x5a, 0x7c, 0x71, 0x66, 0xfd, 0xd3, 0x3c, 0xe7, 0x68, 0xc1, 0xdc, }; static const unsigned char hmac_sha224_164_msg[] = { 0x99, 0x64, 0xd8, 0x0e, 0xe2, 0x33, 0x8c, 0xff, 0xe2, 0x84, 0x83, 0xaa, 0x44, 0x6a, 0x6f, 0x76, }; static const unsigned char hmac_sha224_164_tag[] = { 0xaa, 0x00, 0x30, 0x15, 0x30, 0x9f, 0x2e, 0xd6, 0xfd, 0x77, 0x52, 0xe4, 0x9c, 0x31, }; static const wycheproof_hmac_test hmac_sha224_164 = { .name = "hmac_sha224_164", .hash = SHA224, .key = hmac_sha224_164_key, .keylen = 14, .msg = hmac_sha224_164_msg, .msglen = 16, .tag = hmac_sha224_164_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 165 for HMAC, tcId is 166 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_165_key[] = { 0xfc, 0x9d, 0x28, 0x83, 0xc6, 0x75, 0x34, 0xfe, 0xfb, 0xd6, 0xed, 0x4a, 0x97, 0x98, }; static const unsigned char hmac_sha224_165_msg[] = { 0xa4, 0x98, 0x20, 0xc1, 0x94, 0xa4, 0x3d, 0xee, 0xf1, 0x1f, 0x3a, 0x0f, 0x4e, 0xaa, 0x80, 0x42, 0x54, 0x39, 0xfc, 0xa9, 0xd9, 0xf1, 0xd7, 0xc8, 0xe6, 0x65, 0xd6, 0xb1, 0x30, 0xe4, 0xe9, 0x08, }; static const unsigned char hmac_sha224_165_tag[] = { 0x1c, 0x2b, 0x96, 0x62, 0x3c, 0x91, 0xca, 0x9c, 0x50, 0x27, 0xf8, 0xf8, 0x1e, 0xde, }; static const wycheproof_hmac_test hmac_sha224_165 = { .name = "hmac_sha224_165", .hash = SHA224, .key = hmac_sha224_165_key, .keylen = 14, .msg = hmac_sha224_165_msg, .msglen = 32, .tag = hmac_sha224_165_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 166 for HMAC, tcId is 167 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_166_key[] = { 0xcf, 0xa6, 0x39, 0x65, 0x6c, 0xd4, 0x9f, 0x8d, 0x70, 0xf0, 0xb1, 0xa5, 0xa0, 0x56, 0xab, 0x4f, 0xc0, 0xae, 0xee, 0xbc, 0x91, 0x33, 0x8d, 0x06, 0x7f, 0x36, 0xc4, 0x7b, 0x60, 0x12, 0xdc, 0x8d, 0x85, 0x6b, 0x8a, 0xbc, 0xc4, 0xe1, 0xab, 0xff, 0xc9, 0x10, 0xae, 0xae, 0xe2, 0x1b, 0x4d, 0x36, 0x6e, 0x90, 0x74, 0x88, 0xff, 0xd0, 0xca, 0x55, 0xb3, 0x6a, 0x62, 0x1a, 0xee, 0x0b, 0x2e, 0x9f, 0x0c, }; static const unsigned char hmac_sha224_166_tag[] = { 0x0e, 0xf4, 0xfe, 0xda, 0xea, 0xab, 0x4a, 0xd5, 0x2c, 0x84, 0x36, 0x57, 0x04, 0x7b, 0x19, 0x78, 0x8a, 0x9f, 0xa9, 0x10, 0x61, 0xb7, 0xa1, 0x4a, 0xdd, 0xa8, 0xc4, 0x90, }; static const wycheproof_hmac_test hmac_sha224_166 = { .name = "hmac_sha224_166", .hash = SHA224, .key = hmac_sha224_166_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_166_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 167 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 167 for HMAC, tcId is 168 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_167_key[] = { 0xb3, 0x6d, 0x3d, 0x47, 0xa4, 0x58, 0x5b, 0x40, 0x1f, 0xc6, 0x4c, 0x98, 0xef, 0xf5, 0x62, 0x43, 0xd4, 0xda, 0x78, 0x86, 0x30, 0x63, 0xd8, 0x14, 0xe8, 0x8f, 0x37, 0x0b, 0x92, 0x57, 0x64, 0x06, 0xd4, 0x47, 0xfc, 0xf3, 0xd1, 0x29, 0xa1, 0xed, 0xe5, 0x7d, 0xdc, 0x56, 0xea, 0x3a, 0x0a, 0x1f, 0x10, 0x01, 0x05, 0xa9, 0x5e, 0x83, 0x13, 0x8c, 0xdf, 0x45, 0xec, 0xf2, 0xa5, 0x99, 0x2a, 0xcf, 0x90, }; static const unsigned char hmac_sha224_167_msg[] = { 0x15, 0xc7, 0x5a, 0x64, 0xb0, 0x4d, 0x09, 0x7a, 0xf2, 0x37, 0x1a, 0xf3, 0x80, 0x07, 0x9e, 0xb8, }; static const unsigned char hmac_sha224_167_tag[] = { 0x4e, 0xcb, 0x2d, 0xaa, 0x5f, 0xb0, 0x8d, 0xbd, 0x83, 0x6e, 0x92, 0xa5, 0x1e, 0x20, 0x0b, 0xb2, 0x30, 0xf5, 0x4a, 0xc2, 0xc9, 0x77, 0x8f, 0x52, 0x26, 0xb3, 0xab, 0xc9, }; static const wycheproof_hmac_test hmac_sha224_167 = { .name = "hmac_sha224_167", .hash = SHA224, .key = hmac_sha224_167_key, .keylen = 65, .msg = hmac_sha224_167_msg, .msglen = 16, .tag = hmac_sha224_167_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 168 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 168 for HMAC, tcId is 169 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_168_key[] = { 0xcf, 0x78, 0xb9, 0x91, 0x38, 0x2d, 0xb5, 0xe8, 0x66, 0x6c, 0xcb, 0x23, 0x33, 0xfb, 0x67, 0x21, 0x79, 0xb1, 0x0a, 0x75, 0xcf, 0x9e, 0x5a, 0x76, 0x99, 0xae, 0x64, 0x00, 0x05, 0xe1, 0x97, 0x72, 0xef, 0x64, 0x99, 0xa3, 0xbc, 0x97, 0xf1, 0x2e, 0x58, 0xe8, 0x35, 0xbb, 0x00, 0x17, 0xbb, 0x3b, 0x2e, 0x64, 0xc6, 0xab, 0x44, 0xa0, 0xd6, 0x19, 0xdf, 0xa0, 0x36, 0x34, 0x84, 0xd1, 0xc9, 0x91, 0xe2, }; static const unsigned char hmac_sha224_168_msg[] = { 0xf6, 0x61, 0xe5, 0x98, 0xf1, 0x80, 0xf2, 0x5d, 0xc6, 0xdd, 0x76, 0xdb, 0x8a, 0x9e, 0x0e, 0x4c, 0x9c, 0x27, 0x2b, 0x96, 0x65, 0xa6, 0xb1, 0x75, 0x65, 0x60, 0xc7, 0x23, 0xb8, 0xe0, 0x85, 0x95, }; static const unsigned char hmac_sha224_168_tag[] = { 0xcd, 0x55, 0xcd, 0xb0, 0xc4, 0xf0, 0x2b, 0x9f, 0x61, 0x48, 0x39, 0x29, 0x93, 0xb1, 0x8b, 0x4f, 0xf0, 0x0a, 0x5e, 0x73, 0xb6, 0xf3, 0xfb, 0xf8, 0x3a, 0x85, 0x4a, 0xeb, }; static const wycheproof_hmac_test hmac_sha224_168 = { .name = "hmac_sha224_168", .hash = SHA224, .key = hmac_sha224_168_key, .keylen = 65, .msg = hmac_sha224_168_msg, .msglen = 32, .tag = hmac_sha224_168_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 169 for HMAC, tcId is 170 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_169_key[] = { 0x37, 0x72, 0xff, 0x6b, 0xb4, 0xe5, 0xb2, 0x81, 0x1c, 0xfd, 0x4d, 0x6a, 0x3d, 0x34, 0xdc, 0x74, 0xbc, 0xa3, 0xdb, 0xf8, 0x9a, 0x58, 0x17, 0xb7, 0x9d, 0x84, 0x72, 0xa1, 0x38, 0x3b, 0x8c, 0x9a, 0xfb, 0x27, 0xb3, 0x00, 0x61, 0x96, 0xce, 0x99, 0x66, 0x82, 0x9e, 0xae, 0x6a, 0x31, 0x3c, 0x2d, 0x72, 0x4d, 0x99, 0x5f, 0x4d, 0xef, 0x17, 0x11, 0x7c, 0x09, 0xed, 0xcf, 0xc8, 0xc0, 0xcb, 0xbc, 0x93, }; static const unsigned char hmac_sha224_169_tag[] = { 0x40, 0xbe, 0xb1, 0xd3, 0xaa, 0xab, 0x25, 0xa4, 0x03, 0x22, 0x4e, 0x57, 0x77, 0x70, }; static const wycheproof_hmac_test hmac_sha224_169 = { .name = "hmac_sha224_169", .hash = SHA224, .key = hmac_sha224_169_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha224_169_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 170 for HMAC, tcId is 171 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_170_key[] = { 0x2b, 0xa9, 0x10, 0xbc, 0x0b, 0xca, 0x90, 0x64, 0x4c, 0xb2, 0x1e, 0x96, 0x06, 0x3e, 0x2c, 0xd8, 0x5f, 0x5d, 0xd0, 0x2f, 0xda, 0x75, 0xd3, 0x53, 0xc9, 0xb5, 0x1e, 0xaf, 0x45, 0xee, 0xe9, 0x4c, 0x16, 0x5c, 0xa6, 0x59, 0x2d, 0x6c, 0xfd, 0xd9, 0x87, 0xbf, 0xdc, 0x1c, 0xba, 0x66, 0x36, 0x3d, 0x53, 0x5a, 0x14, 0xb2, 0xf7, 0xea, 0xd8, 0x41, 0xb1, 0x7c, 0x4d, 0x76, 0xa5, 0x04, 0x91, 0x05, 0xf9, }; static const unsigned char hmac_sha224_170_msg[] = { 0x7b, 0xa4, 0x61, 0x04, 0x0d, 0xe9, 0xea, 0x3c, 0xef, 0xd4, 0x80, 0x91, 0x24, 0xf7, 0x8b, 0x39, }; static const unsigned char hmac_sha224_170_tag[] = { 0x4d, 0x28, 0xa9, 0x26, 0xdf, 0x1b, 0x18, 0x8e, 0x85, 0xd0, 0x92, 0xba, 0xcf, 0x11, }; static const wycheproof_hmac_test hmac_sha224_170 = { .name = "hmac_sha224_170", .hash = SHA224, .key = hmac_sha224_170_key, .keylen = 65, .msg = hmac_sha224_170_msg, .msglen = 16, .tag = hmac_sha224_170_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 171 for HMAC, tcId is 172 in file hmac_sha224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) static const unsigned char hmac_sha224_171_key[] = { 0x7f, 0xcf, 0x3c, 0xb1, 0xb1, 0xc5, 0xb5, 0x37, 0x49, 0x2a, 0xed, 0xe4, 0x68, 0x92, 0x84, 0xb5, 0x88, 0x19, 0x35, 0xe3, 0x53, 0x7b, 0xb7, 0x30, 0x71, 0x98, 0xd6, 0x51, 0x8e, 0x7a, 0x6a, 0xab, 0xf7, 0x0b, 0x50, 0xb4, 0x4e, 0x4a, 0x8d, 0xfe, 0xe3, 0x5e, 0x9f, 0x5c, 0xba, 0xda, 0x74, 0x47, 0xe5, 0x11, 0xa3, 0x72, 0x09, 0x39, 0x0f, 0xcd, 0x17, 0x1c, 0x62, 0x07, 0x5c, 0x6a, 0x8b, 0xf1, 0xeb, }; static const unsigned char hmac_sha224_171_msg[] = { 0x83, 0xd2, 0x9c, 0x1c, 0x4d, 0x05, 0x9d, 0xdb, 0x0d, 0x2a, 0xca, 0x78, 0x7e, 0x5b, 0x70, 0x1b, 0xac, 0x39, 0x53, 0xfb, 0x9b, 0xc7, 0x2d, 0xc8, 0x7b, 0x1e, 0xf9, 0x2a, 0x58, 0x2e, 0x97, 0x48, }; static const unsigned char hmac_sha224_171_tag[] = { 0x39, 0x2c, 0xe3, 0x8f, 0x78, 0x38, 0xb2, 0xf8, 0x71, 0x63, 0xee, 0xa0, 0x0b, 0x86, }; static const wycheproof_hmac_test hmac_sha224_171 = { .name = "hmac_sha224_171", .hash = SHA224, .key = hmac_sha224_171_key, .keylen = 65, .msg = hmac_sha224_171_msg, .msglen = 32, .tag = hmac_sha224_171_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA224) */ /* Test 172 for HMAC, tcId is 1 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_172_key[] = { 0x1e, 0x22, 0x5c, 0xaf, 0xb9, 0x03, 0x39, 0xbb, 0xa1, 0xb2, 0x40, 0x76, 0xd4, 0x20, 0x6c, 0x3e, 0x79, 0xc3, 0x55, 0x80, 0x5d, 0x85, 0x16, 0x82, 0xbc, 0x81, 0x8b, 0xaa, 0x4f, 0x5a, 0x77, 0x79, }; static const unsigned char hmac_sha256_172_tag[] = { 0xb1, 0x75, 0xb5, 0x7d, 0x89, 0xea, 0x6c, 0xb6, 0x06, 0xfb, 0x33, 0x63, 0xf2, 0x53, 0x8a, 0xbd, 0x73, 0xa4, 0xc0, 0x0b, 0x4a, 0x13, 0x86, 0x90, 0x5b, 0xac, 0x80, 0x90, 0x04, 0xcf, 0x19, 0x33, }; static const wycheproof_hmac_test hmac_sha256_172 = { .name = "hmac_sha256_172", .hash = SHA256, .key = hmac_sha256_172_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_172_tag, .taglen = 32, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 173 for HMAC, tcId is 2 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_173_key[] = { 0x81, 0x59, 0xfd, 0x15, 0x13, 0x3c, 0xd9, 0x64, 0xc9, 0xa6, 0x96, 0x4c, 0x94, 0xf0, 0xea, 0x26, 0x9a, 0x80, 0x6f, 0xd9, 0xf4, 0x3f, 0x0d, 0xa5, 0x8b, 0x6c, 0xd1, 0xb3, 0x3d, 0x18, 0x9b, 0x2a, }; static const unsigned char hmac_sha256_173_msg[] = { 0x77, }; static const unsigned char hmac_sha256_173_tag[] = { 0xdf, 0xc5, 0x10, 0x5d, 0x5e, 0xec, 0xf7, 0xae, 0x7b, 0x8b, 0x8d, 0xe3, 0x93, 0x0e, 0x76, 0x59, 0xe8, 0x4c, 0x41, 0x72, 0xf2, 0x55, 0x51, 0x42, 0xf1, 0xe5, 0x68, 0xfc, 0x18, 0x72, 0xad, 0x93, }; static const wycheproof_hmac_test hmac_sha256_173 = { .name = "hmac_sha256_173", .hash = SHA256, .key = hmac_sha256_173_key, .keylen = 32, .msg = hmac_sha256_173_msg, .msglen = 1, .tag = hmac_sha256_173_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 174 for HMAC, tcId is 3 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_174_key[] = { 0x85, 0xa7, 0xcb, 0xaa, 0xe8, 0x25, 0xbb, 0x82, 0xc9, 0xb6, 0xf6, 0xc5, 0xc2, 0xaf, 0x5a, 0xc0, 0x3d, 0x1f, 0x6d, 0xaa, 0x63, 0xd2, 0xa9, 0x3c, 0x18, 0x99, 0x48, 0xec, 0x41, 0xb9, 0xde, 0xd9, }; static const unsigned char hmac_sha256_174_msg[] = { 0xa5, 0x9b, }; static const unsigned char hmac_sha256_174_tag[] = { 0x0f, 0xe2, 0xf1, 0x3b, 0xba, 0x21, 0x98, 0xf6, 0xdd, 0xa1, 0xa0, 0x84, 0xbe, 0x92, 0x8e, 0x30, 0x4e, 0x9c, 0xb1, 0x6a, 0x56, 0xbc, 0x0b, 0x7b, 0x93, 0x9a, 0x07, 0x32, 0x80, 0x24, 0x43, 0x73, }; static const wycheproof_hmac_test hmac_sha256_174 = { .name = "hmac_sha256_174", .hash = SHA256, .key = hmac_sha256_174_key, .keylen = 32, .msg = hmac_sha256_174_msg, .msglen = 2, .tag = hmac_sha256_174_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 175 for HMAC, tcId is 4 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_175_key[] = { 0x48, 0xf3, 0x02, 0x93, 0x34, 0xe5, 0x5c, 0xfb, 0xd5, 0x74, 0xcc, 0xc7, 0x65, 0xfb, 0x2c, 0x36, 0x85, 0xaa, 0xb1, 0xf4, 0x83, 0x7d, 0x23, 0x37, 0x08, 0x74, 0xa3, 0xe6, 0x34, 0xc3, 0xa7, 0x6d, }; static const unsigned char hmac_sha256_175_msg[] = { 0xc7, 0xb8, 0xb2, }; static const unsigned char hmac_sha256_175_tag[] = { 0x6c, 0x13, 0xf7, 0x9b, 0xb2, 0xd5, 0xb6, 0xf9, 0xa3, 0x15, 0xfe, 0x8f, 0xd6, 0xcb, 0xb5, 0xcb, 0x81, 0x7a, 0x66, 0x06, 0x87, 0x00, 0x9d, 0xec, 0xcd, 0x88, 0xc3, 0x77, 0x42, 0x9e, 0x59, 0x6d, }; static const wycheproof_hmac_test hmac_sha256_175 = { .name = "hmac_sha256_175", .hash = SHA256, .key = hmac_sha256_175_key, .keylen = 32, .msg = hmac_sha256_175_msg, .msglen = 3, .tag = hmac_sha256_175_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 176 for HMAC, tcId is 5 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_176_key[] = { 0xde, 0x8b, 0x5b, 0x5b, 0x2f, 0x09, 0x64, 0x5b, 0xe4, 0x7e, 0xcb, 0x64, 0x07, 0xa4, 0xe1, 0xd9, 0xc6, 0xb3, 0x3a, 0xe3, 0xc2, 0xd2, 0x25, 0x17, 0xd3, 0x35, 0x7d, 0xa0, 0x35, 0x7a, 0x31, 0x39, }; static const unsigned char hmac_sha256_176_msg[] = { 0xcc, 0x02, 0x1d, 0x65, }; static const unsigned char hmac_sha256_176_tag[] = { 0xe8, 0x75, 0x38, 0xeb, 0x16, 0x7e, 0x62, 0xd7, 0xcb, 0x23, 0x66, 0x90, 0xff, 0x3f, 0x03, 0x4a, 0x9c, 0x12, 0xd4, 0x17, 0xaa, 0x8d, 0xfa, 0x69, 0x4d, 0x74, 0x05, 0xf9, 0xe1, 0xf8, 0x5f, 0xe8, }; static const wycheproof_hmac_test hmac_sha256_176 = { .name = "hmac_sha256_176", .hash = SHA256, .key = hmac_sha256_176_key, .keylen = 32, .msg = hmac_sha256_176_msg, .msglen = 4, .tag = hmac_sha256_176_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 177 for HMAC, tcId is 6 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_177_key[] = { 0xb7, 0x93, 0x89, 0x10, 0xf5, 0x18, 0xf1, 0x32, 0x05, 0xca, 0x14, 0x92, 0xc6, 0x69, 0x00, 0x1a, 0x14, 0xff, 0x91, 0x3c, 0x8a, 0xb4, 0xa0, 0xdc, 0x35, 0x64, 0xe7, 0x41, 0x8e, 0x91, 0x29, 0x7c, }; static const unsigned char hmac_sha256_177_msg[] = { 0xa4, 0xa6, 0xef, 0x6e, 0xbd, }; static const unsigned char hmac_sha256_177_tag[] = { 0x01, 0xa9, 0x3f, 0x4e, 0xd2, 0x16, 0xd0, 0xb2, 0x80, 0x89, 0x63, 0x01, 0xe3, 0x66, 0xaa, 0x67, 0xb2, 0x5e, 0x6b, 0x6a, 0x5a, 0x6e, 0x84, 0xf2, 0x91, 0xa1, 0x33, 0x91, 0xc6, 0xe4, 0x96, 0xc5, }; static const wycheproof_hmac_test hmac_sha256_177 = { .name = "hmac_sha256_177", .hash = SHA256, .key = hmac_sha256_177_key, .keylen = 32, .msg = hmac_sha256_177_msg, .msglen = 5, .tag = hmac_sha256_177_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 178 for HMAC, tcId is 7 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_178_key[] = { 0x1b, 0xb9, 0x97, 0xff, 0x4d, 0xe8, 0xa5, 0xa3, 0x91, 0xde, 0x5c, 0x08, 0xa3, 0x3b, 0xc2, 0xc7, 0xc2, 0x89, 0x1e, 0x47, 0xad, 0x5b, 0x9c, 0x63, 0x11, 0x01, 0x92, 0xf7, 0x8b, 0x98, 0xfe, 0x78, }; static const unsigned char hmac_sha256_178_msg[] = { 0x66, 0x7e, 0x01, 0x5d, 0xf7, 0xfc, }; static const unsigned char hmac_sha256_178_tag[] = { 0x06, 0xb5, 0xd8, 0xc5, 0x39, 0x23, 0x23, 0xa8, 0x02, 0xbc, 0x5c, 0xdd, 0x0b, 0x3c, 0x52, 0x74, 0x54, 0xa8, 0x73, 0xd9, 0x65, 0x1c, 0x36, 0x88, 0x36, 0xea, 0xa4, 0xad, 0x98, 0x2b, 0xa5, 0x46, }; static const wycheproof_hmac_test hmac_sha256_178 = { .name = "hmac_sha256_178", .hash = SHA256, .key = hmac_sha256_178_key, .keylen = 32, .msg = hmac_sha256_178_msg, .msglen = 6, .tag = hmac_sha256_178_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 179 for HMAC, tcId is 8 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_179_key[] = { 0x32, 0xfd, 0xed, 0xa3, 0x9f, 0x98, 0xb4, 0xf4, 0x42, 0x6c, 0x2d, 0x2a, 0xc0, 0x0a, 0xb5, 0xdd, 0x4b, 0xfa, 0xbb, 0x68, 0xf3, 0x11, 0x44, 0x72, 0x56, 0xed, 0x6d, 0x3d, 0x3a, 0x51, 0xb1, 0x54, }; static const unsigned char hmac_sha256_179_msg[] = { 0x41, 0x63, 0xa9, 0xf7, 0x7e, 0x41, 0xf5, }; static const unsigned char hmac_sha256_179_tag[] = { 0x1b, 0x01, 0x03, 0x72, 0x9f, 0x48, 0xc2, 0x77, 0x2b, 0xb1, 0x32, 0xae, 0xf9, 0xeb, 0xd6, 0xdd, 0x6a, 0xaf, 0xc9, 0x14, 0x5d, 0xf6, 0xd5, 0xc5, 0x14, 0xb2, 0x33, 0xee, 0x92, 0xef, 0x4a, 0x00, }; static const wycheproof_hmac_test hmac_sha256_179 = { .name = "hmac_sha256_179", .hash = SHA256, .key = hmac_sha256_179_key, .keylen = 32, .msg = hmac_sha256_179_msg, .msglen = 7, .tag = hmac_sha256_179_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 180 for HMAC, tcId is 9 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_180_key[] = { 0x23, 0x3e, 0x4f, 0xde, 0xe7, 0x0b, 0xcc, 0x20, 0x23, 0x5b, 0x69, 0x77, 0xdd, 0xfc, 0x05, 0xb0, 0xdf, 0x66, 0xf5, 0x63, 0x5d, 0x82, 0x7c, 0x66, 0xe5, 0xa6, 0x3c, 0xdb, 0x16, 0xa2, 0x49, 0x38, }; static const unsigned char hmac_sha256_180_msg[] = { 0xfd, 0xb2, 0xee, 0x4b, 0x6d, 0x1a, 0x0a, 0xc2, }; static const unsigned char hmac_sha256_180_tag[] = { 0x12, 0x0b, 0x26, 0xee, 0x13, 0x55, 0xc1, 0x34, 0xc2, 0x62, 0x51, 0x3c, 0x79, 0x22, 0xde, 0xb6, 0xc4, 0xfd, 0x90, 0x30, 0x3d, 0xe4, 0xcd, 0x61, 0xb9, 0xf9, 0xcd, 0x08, 0xf2, 0x2d, 0x6e, 0x18, }; static const wycheproof_hmac_test hmac_sha256_180 = { .name = "hmac_sha256_180", .hash = SHA256, .key = hmac_sha256_180_key, .keylen = 32, .msg = hmac_sha256_180_msg, .msglen = 8, .tag = hmac_sha256_180_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 181 for HMAC, tcId is 10 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_181_key[] = { 0xb9, 0x84, 0xc6, 0x73, 0x4e, 0x0b, 0xd1, 0x2b, 0x17, 0x37, 0xb2, 0xfc, 0x7a, 0x1b, 0x38, 0x03, 0xb4, 0xdf, 0xec, 0x40, 0x21, 0x40, 0xa5, 0x7b, 0x9e, 0xcc, 0xc3, 0x54, 0x14, 0xae, 0x66, 0x1b, }; static const unsigned char hmac_sha256_181_msg[] = { 0xde, 0xa5, 0x84, 0xd0, 0xe2, 0xa1, 0x4a, 0xd5, 0xfd, }; static const unsigned char hmac_sha256_181_tag[] = { 0x88, 0xbc, 0x22, 0x82, 0xe5, 0xfc, 0xe4, 0x7e, 0xc6, 0xd9, 0x89, 0x53, 0x95, 0xcd, 0x47, 0xff, 0xf9, 0x1a, 0x0c, 0xdc, 0x58, 0x9a, 0x8f, 0xd5, 0x6d, 0x8d, 0x34, 0x46, 0x16, 0x53, 0x3a, 0x3d, }; static const wycheproof_hmac_test hmac_sha256_181 = { .name = "hmac_sha256_181", .hash = SHA256, .key = hmac_sha256_181_key, .keylen = 32, .msg = hmac_sha256_181_msg, .msglen = 9, .tag = hmac_sha256_181_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 182 for HMAC, tcId is 11 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_182_key[] = { 0xd0, 0xca, 0xf1, 0x45, 0x6a, 0xc5, 0xe2, 0x55, 0xfa, 0x6a, 0xfd, 0x61, 0xa7, 0x9d, 0xc8, 0xc7, 0x16, 0xf5, 0x35, 0x8a, 0x29, 0x8a, 0x50, 0x82, 0x71, 0x36, 0x3f, 0xe1, 0xff, 0x98, 0x35, 0x61, }; static const unsigned char hmac_sha256_182_msg[] = { 0x18, 0x26, 0x1d, 0xc8, 0x06, 0x91, 0x3c, 0x53, 0x46, 0x66, }; static const unsigned char hmac_sha256_182_tag[] = { 0xf6, 0x78, 0xf0, 0x81, 0xd8, 0x3c, 0xf1, 0x26, 0xad, 0x6b, 0xd5, 0x2c, 0x2d, 0xff, 0xd7, 0x86, 0x21, 0x4f, 0x51, 0x9c, 0x47, 0x45, 0x2b, 0x85, 0xa9, 0x74, 0x58, 0xd0, 0xc1, 0x0c, 0x3e, 0xe5, }; static const wycheproof_hmac_test hmac_sha256_182 = { .name = "hmac_sha256_182", .hash = SHA256, .key = hmac_sha256_182_key, .keylen = 32, .msg = hmac_sha256_182_msg, .msglen = 10, .tag = hmac_sha256_182_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 183 for HMAC, tcId is 12 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_183_key[] = { 0x83, 0x5b, 0xc8, 0x24, 0x1e, 0xd8, 0x17, 0x73, 0x5e, 0xc9, 0xd3, 0xd0, 0xe2, 0xdf, 0x4c, 0x17, 0x3e, 0xe4, 0xdd, 0xed, 0x4a, 0x8e, 0xf0, 0xc0, 0x4a, 0x96, 0xc4, 0x8f, 0x11, 0x82, 0x04, 0x63, }; static const unsigned char hmac_sha256_183_msg[] = { 0x26, 0xf8, 0x08, 0x3e, 0x94, 0x4b, 0xac, 0xf0, 0x4e, 0x9a, 0x4d, }; static const unsigned char hmac_sha256_183_tag[] = { 0xe0, 0xe4, 0x6c, 0xd7, 0xd1, 0xa7, 0x5b, 0x3d, 0x10, 0x28, 0x93, 0xda, 0x64, 0xde, 0xf4, 0x6e, 0x45, 0x53, 0x08, 0x76, 0x1f, 0x1d, 0x90, 0x87, 0x86, 0x62, 0x8c, 0xa7, 0xee, 0x22, 0xa0, 0xeb, }; static const wycheproof_hmac_test hmac_sha256_183 = { .name = "hmac_sha256_183", .hash = SHA256, .key = hmac_sha256_183_key, .keylen = 32, .msg = hmac_sha256_183_msg, .msglen = 11, .tag = hmac_sha256_183_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 184 for HMAC, tcId is 13 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_184_key[] = { 0x05, 0x5f, 0x95, 0xc9, 0x46, 0x1b, 0x08, 0x09, 0x57, 0x5e, 0xcc, 0xdf, 0xa5, 0xcd, 0xd0, 0x62, 0x75, 0xf2, 0x5d, 0x30, 0x91, 0x5c, 0x4e, 0xb8, 0xdb, 0x40, 0xe1, 0xac, 0xd3, 0xab, 0x75, 0x91, }; static const unsigned char hmac_sha256_184_msg[] = { 0xbf, 0xb7, 0xd6, 0xa0, 0x8d, 0xba, 0xa5, 0x22, 0x5f, 0x32, 0x08, 0x87, }; static const unsigned char hmac_sha256_184_tag[] = { 0xe7, 0x6d, 0x5c, 0x8c, 0x07, 0x0a, 0x6b, 0x3c, 0x48, 0x24, 0xe9, 0xf3, 0x42, 0xdc, 0x30, 0x56, 0xe6, 0x38, 0x19, 0x50, 0x9e, 0x1d, 0xef, 0x98, 0xb5, 0x85, 0xae, 0xba, 0x0d, 0x63, 0x8a, 0x00, }; static const wycheproof_hmac_test hmac_sha256_184 = { .name = "hmac_sha256_184", .hash = SHA256, .key = hmac_sha256_184_key, .keylen = 32, .msg = hmac_sha256_184_msg, .msglen = 12, .tag = hmac_sha256_184_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 185 for HMAC, tcId is 14 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_185_key[] = { 0xe4, 0x0f, 0x7a, 0x3e, 0xb8, 0x8d, 0xde, 0xc4, 0xc6, 0x34, 0x7e, 0xa4, 0xd6, 0x76, 0x10, 0x75, 0x6c, 0x82, 0xc8, 0xeb, 0xcc, 0x23, 0x76, 0x29, 0xbf, 0x87, 0x3c, 0xca, 0xbc, 0x32, 0x98, 0x4a, }; static const unsigned char hmac_sha256_185_msg[] = { 0x7f, 0xe4, 0x3f, 0xeb, 0xc7, 0x84, 0x74, 0x64, 0x9e, 0x45, 0xbf, 0x99, 0xb2, }; static const unsigned char hmac_sha256_185_tag[] = { 0xaa, 0x57, 0xd0, 0x20, 0xaa, 0x24, 0xad, 0x82, 0x34, 0x72, 0xc2, 0xb8, 0x0f, 0xf2, 0xd0, 0xcf, 0x47, 0x5f, 0x7d, 0xe0, 0x06, 0x8f, 0x9a, 0x59, 0xe8, 0x11, 0x2f, 0xed, 0xe5, 0x3a, 0x35, 0x81, }; static const wycheproof_hmac_test hmac_sha256_185 = { .name = "hmac_sha256_185", .hash = SHA256, .key = hmac_sha256_185_key, .keylen = 32, .msg = hmac_sha256_185_msg, .msglen = 13, .tag = hmac_sha256_185_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 186 for HMAC, tcId is 15 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_186_key[] = { 0xb0, 0x20, 0xad, 0x1d, 0xe1, 0xc1, 0x41, 0xf7, 0xec, 0x61, 0x5e, 0xe5, 0x70, 0x15, 0x21, 0x77, 0x3f, 0x9b, 0x23, 0x2e, 0x4d, 0x06, 0x37, 0x6c, 0x38, 0x28, 0x94, 0xce, 0x51, 0xa6, 0x1f, 0x48, }; static const unsigned char hmac_sha256_186_msg[] = { 0x81, 0xc7, 0x58, 0x1a, 0x19, 0x4b, 0x5e, 0x71, 0xb4, 0x11, 0x46, 0xa5, 0x82, 0xc1, }; static const unsigned char hmac_sha256_186_tag[] = { 0xf4, 0x5c, 0x72, 0x60, 0x3c, 0xc1, 0x60, 0xc0, 0x76, 0x2f, 0x70, 0x34, 0x07, 0x84, 0x4a, 0x77, 0x81, 0xdf, 0xe0, 0xf1, 0xdd, 0xf0, 0xaa, 0xf4, 0xcc, 0xd8, 0x20, 0x5e, 0x94, 0x46, 0x9a, 0xed, }; static const wycheproof_hmac_test hmac_sha256_186 = { .name = "hmac_sha256_186", .hash = SHA256, .key = hmac_sha256_186_key, .keylen = 32, .msg = hmac_sha256_186_msg, .msglen = 14, .tag = hmac_sha256_186_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 187 for HMAC, tcId is 16 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_187_key[] = { 0x9f, 0x3f, 0xd6, 0x1a, 0x10, 0x52, 0x02, 0x64, 0x8e, 0xcf, 0xf6, 0x07, 0x4c, 0x95, 0xe5, 0x02, 0xc1, 0xc5, 0x1a, 0xcd, 0x32, 0xec, 0x53, 0x8a, 0x5c, 0xce, 0x89, 0xef, 0x84, 0x1f, 0x79, 0x89, }; static const unsigned char hmac_sha256_187_msg[] = { 0x2a, 0x76, 0xf2, 0xac, 0xda, 0xce, 0x42, 0xe3, 0xb7, 0x79, 0x72, 0x49, 0x46, 0x91, 0x2c, }; static const unsigned char hmac_sha256_187_tag[] = { 0x02, 0x26, 0xee, 0x13, 0xcc, 0x05, 0xe2, 0x34, 0x01, 0x35, 0xb3, 0xf4, 0xb2, 0x7a, 0x9d, 0xa1, 0xa1, 0x60, 0xf6, 0x17, 0x0f, 0xe8, 0x05, 0xda, 0xdd, 0x98, 0xa3, 0x71, 0x1e, 0xc9, 0xc4, 0x21, }; static const wycheproof_hmac_test hmac_sha256_187 = { .name = "hmac_sha256_187", .hash = SHA256, .key = hmac_sha256_187_key, .keylen = 32, .msg = hmac_sha256_187_msg, .msglen = 15, .tag = hmac_sha256_187_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 188 for HMAC, tcId is 17 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_188_key[] = { 0x6f, 0xa3, 0x53, 0x86, 0x8c, 0x82, 0xe5, 0xde, 0xee, 0xda, 0xc7, 0xf0, 0x94, 0x71, 0xa6, 0x1b, 0xf7, 0x49, 0xab, 0x54, 0x98, 0x23, 0x9e, 0x94, 0x7e, 0x01, 0x2e, 0xee, 0x3c, 0x82, 0xd7, 0xc4, }; static const unsigned char hmac_sha256_188_msg[] = { 0xae, 0xed, 0x3e, 0x4d, 0x4c, 0xb9, 0xbb, 0xb6, 0x0d, 0x48, 0x2e, 0x98, 0xc1, 0x26, 0xc0, 0xf5, }; static const unsigned char hmac_sha256_188_tag[] = { 0x9e, 0xd7, 0xf0, 0xe7, 0x38, 0x12, 0xa2, 0x7a, 0x87, 0xa3, 0x80, 0x8e, 0xe0, 0xc8, 0x9a, 0x64, 0x56, 0x49, 0x9e, 0x83, 0x59, 0x74, 0xba, 0x57, 0xc5, 0xaa, 0xb2, 0xa0, 0xd8, 0xc6, 0x9e, 0x93, }; static const wycheproof_hmac_test hmac_sha256_188 = { .name = "hmac_sha256_188", .hash = SHA256, .key = hmac_sha256_188_key, .keylen = 32, .msg = hmac_sha256_188_msg, .msglen = 16, .tag = hmac_sha256_188_tag, .taglen = 32, .result = 1, .comment = ", tcId is 17 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 189 for HMAC, tcId is 18 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_189_key[] = { 0x53, 0x00, 0x48, 0x94, 0x94, 0xca, 0x86, 0x22, 0x1c, 0x91, 0xd6, 0xd9, 0x53, 0x95, 0x2a, 0xe1, 0xa5, 0xe0, 0x97, 0x13, 0x9d, 0xc9, 0xcf, 0x11, 0x79, 0xc2, 0xf5, 0x64, 0x33, 0x75, 0x38, 0x24, }; static const unsigned char hmac_sha256_189_msg[] = { 0x90, 0xfe, 0xa6, 0xcf, 0x2b, 0xd8, 0x11, 0xb4, 0x49, 0xf3, 0x33, 0xee, 0x92, 0x33, 0xe5, 0x76, 0x97, }; static const unsigned char hmac_sha256_189_tag[] = { 0x5b, 0x69, 0x2c, 0xba, 0x13, 0xb5, 0x4f, 0xff, 0xc3, 0xad, 0xcb, 0xb0, 0xe0, 0x15, 0xcc, 0x01, 0x1f, 0xbf, 0xd6, 0x12, 0x35, 0x30, 0x3f, 0xf0, 0xad, 0x2a, 0x49, 0x77, 0x50, 0x83, 0xbf, 0x22, }; static const wycheproof_hmac_test hmac_sha256_189 = { .name = "hmac_sha256_189", .hash = SHA256, .key = hmac_sha256_189_key, .keylen = 32, .msg = hmac_sha256_189_msg, .msglen = 17, .tag = hmac_sha256_189_tag, .taglen = 32, .result = 1, .comment = ", tcId is 18 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 190 for HMAC, tcId is 19 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_190_key[] = { 0x38, 0x3e, 0x7c, 0x5c, 0x13, 0x47, 0x6a, 0x62, 0x26, 0x84, 0x23, 0xef, 0x05, 0x00, 0x47, 0x9f, 0x9e, 0x86, 0xe2, 0x36, 0xc5, 0xa0, 0x81, 0xc6, 0x44, 0x91, 0x89, 0xe6, 0xaf, 0xdf, 0x2a, 0xf5, }; static const unsigned char hmac_sha256_190_msg[] = { 0x32, 0x02, 0x70, 0x5a, 0xf8, 0x9f, 0x95, 0x55, 0xc5, 0x40, 0xb0, 0xe1, 0x27, 0x69, 0x11, 0xd0, 0x19, 0x71, 0xab, 0xb2, 0xc3, 0x5c, 0x78, 0xb2, }; static const unsigned char hmac_sha256_190_tag[] = { 0x4e, 0x49, 0x01, 0x59, 0x2b, 0xa4, 0x64, 0x76, 0x40, 0x8d, 0x75, 0x84, 0x35, 0xc7, 0xd1, 0xb4, 0x89, 0xd2, 0x68, 0x9a, 0xfd, 0x84, 0xce, 0xaa, 0xee, 0x78, 0xbf, 0xb9, 0x1f, 0xd9, 0x39, 0x1d, }; static const wycheproof_hmac_test hmac_sha256_190 = { .name = "hmac_sha256_190", .hash = SHA256, .key = hmac_sha256_190_key, .keylen = 32, .msg = hmac_sha256_190_msg, .msglen = 24, .tag = hmac_sha256_190_tag, .taglen = 32, .result = 1, .comment = ", tcId is 19 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 191 for HMAC, tcId is 20 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_191_key[] = { 0x18, 0x6e, 0x24, 0x8a, 0xd8, 0x24, 0xe1, 0xeb, 0x93, 0x32, 0x9a, 0x7f, 0xdc, 0xd5, 0x65, 0xb6, 0xcb, 0x4e, 0xaf, 0x3f, 0x85, 0xb9, 0x0b, 0x91, 0x07, 0x77, 0x12, 0x8d, 0x8c, 0x53, 0x8d, 0x27, }; static const unsigned char hmac_sha256_191_msg[] = { 0x92, 0xef, 0x9f, 0xf5, 0x2f, 0x46, 0xec, 0xcc, 0x7e, 0x38, 0xb9, 0xee, 0x19, 0xfd, 0x2d, 0xe3, 0xb3, 0x77, 0x26, 0xc8, 0xe6, 0xce, 0x9e, 0x1b, 0x96, 0xdb, 0x5d, 0xda, 0x4c, 0x31, 0x79, 0x02, }; static const unsigned char hmac_sha256_191_tag[] = { 0x3f, 0xc1, 0xd7, 0x3d, 0xd4, 0xa8, 0x85, 0x8c, 0x1f, 0xc3, 0xd8, 0xc4, 0xa3, 0xf3, 0x3e, 0xd5, 0xad, 0x0c, 0x70, 0x21, 0x00, 0x38, 0x39, 0x4a, 0x59, 0x02, 0xcb, 0x26, 0xfe, 0x28, 0x73, 0x48, }; static const wycheproof_hmac_test hmac_sha256_191 = { .name = "hmac_sha256_191", .hash = SHA256, .key = hmac_sha256_191_key, .keylen = 32, .msg = hmac_sha256_191_msg, .msglen = 32, .tag = hmac_sha256_191_tag, .taglen = 32, .result = 1, .comment = ", tcId is 20 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 192 for HMAC, tcId is 21 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_192_key[] = { 0x28, 0x85, 0x5c, 0x7e, 0xfc, 0x85, 0x32, 0xd9, 0x25, 0x67, 0x30, 0x09, 0x33, 0xcc, 0x1c, 0xa2, 0xd0, 0x58, 0x6f, 0x55, 0xdc, 0xc9, 0xf0, 0x54, 0xfc, 0xca, 0x2f, 0x05, 0x25, 0x4f, 0xbf, 0x7f, }; static const unsigned char hmac_sha256_192_msg[] = { 0x9c, 0x09, 0x20, 0x7f, 0xf0, 0xe6, 0xe5, 0x82, 0xcb, 0x37, 0x47, 0xdc, 0xa9, 0x54, 0xc9, 0x4d, 0x45, 0xc0, 0x5e, 0x93, 0xf1, 0xe6, 0xf2, 0x11, 0x79, 0xcf, 0x0e, 0x25, 0xb4, 0xce, 0xde, 0x74, 0xb5, 0x47, 0x9d, 0x32, 0xf5, 0x16, 0x69, 0x35, 0xc8, 0x6f, 0x04, 0x41, 0x90, 0x58, 0x65, }; static const unsigned char hmac_sha256_192_tag[] = { 0x78, 0x8c, 0x05, 0x89, 0x00, 0x0f, 0xb7, 0xf0, 0xb5, 0xd5, 0x1f, 0x15, 0x96, 0x47, 0x2b, 0xc9, 0xec, 0x41, 0x34, 0x21, 0xa4, 0x3d, 0xf9, 0x6e, 0xe3, 0x2b, 0x02, 0xb5, 0xd2, 0x75, 0xff, 0xe3, }; static const wycheproof_hmac_test hmac_sha256_192 = { .name = "hmac_sha256_192", .hash = SHA256, .key = hmac_sha256_192_key, .keylen = 32, .msg = hmac_sha256_192_msg, .msglen = 47, .tag = hmac_sha256_192_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 193 for HMAC, tcId is 22 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_193_key[] = { 0x8e, 0x54, 0x0c, 0xb3, 0x0c, 0x94, 0x83, 0x6a, 0xe2, 0xa5, 0x95, 0x0f, 0x35, 0x5d, 0x48, 0x2a, 0x70, 0x02, 0xe2, 0x55, 0x20, 0x7e, 0x94, 0xfd, 0xa3, 0xf7, 0xef, 0x1a, 0x09, 0x90, 0x13, 0xa0, }; static const unsigned char hmac_sha256_193_msg[] = { 0xd6, 0x50, 0x0f, 0x95, 0xe1, 0x12, 0x62, 0xe3, 0x08, 0xbf, 0x3d, 0xf4, 0xdf, 0x4b, 0x85, 0x5f, 0x33, 0xe8, 0x57, 0x56, 0x3d, 0x45, 0x43, 0xf1, 0x95, 0x63, 0x9a, 0x0a, 0x17, 0xb4, 0x42, 0xeb, 0x9f, 0xdc, 0xc1, 0x36, 0x7d, 0x2e, 0xee, 0x75, 0xc8, 0xf8, 0x05, 0x73, 0x0b, 0x89, 0x29, 0x0f, }; static const unsigned char hmac_sha256_193_tag[] = { 0x39, 0x69, 0x7e, 0x70, 0xce, 0x74, 0x1f, 0xeb, 0x33, 0xde, 0xdc, 0x06, 0x9f, 0x00, 0xb5, 0x62, 0x7f, 0xd9, 0xb8, 0x37, 0xd1, 0x0c, 0xbd, 0xd5, 0xb6, 0xd1, 0x9c, 0xfb, 0xd5, 0x11, 0xdd, 0x2c, }; static const wycheproof_hmac_test hmac_sha256_193 = { .name = "hmac_sha256_193", .hash = SHA256, .key = hmac_sha256_193_key, .keylen = 32, .msg = hmac_sha256_193_msg, .msglen = 48, .tag = hmac_sha256_193_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 194 for HMAC, tcId is 23 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_194_key[] = { 0x69, 0xc5, 0x0d, 0x52, 0x74, 0x35, 0x81, 0x88, 0xcf, 0xf4, 0xc0, 0xfa, 0xe7, 0x42, 0x24, 0x3d, 0x4e, 0x8a, 0x5e, 0x5b, 0xa5, 0x5d, 0x94, 0xff, 0x40, 0xed, 0xd9, 0x0f, 0x6a, 0x43, 0xdd, 0x10, }; static const unsigned char hmac_sha256_194_msg[] = { 0x1a, 0xc5, 0x25, 0x5a, 0xff, 0x05, 0x28, 0x28, 0xd8, 0xea, 0x21, 0xb3, 0x76, 0xf1, 0xeb, 0xdd, 0x4b, 0xb8, 0x79, 0x94, 0x99, 0x13, 0x90, 0x04, 0x05, 0xae, 0xbc, 0xe8, 0x3e, 0x48, 0xfe, 0xb6, 0x81, 0x3b, 0x5e, 0x9c, 0x89, 0xf9, 0x45, 0x01, 0xa8, 0xad, 0xe4, 0x1b, 0x26, 0xb8, 0x15, 0xc5, 0x21, }; static const unsigned char hmac_sha256_194_tag[] = { 0x4b, 0x0b, 0x4d, 0x04, 0x16, 0xfa, 0x2e, 0x11, 0x58, 0x6f, 0xbf, 0xa7, 0xfb, 0x11, 0x26, 0x1e, 0x69, 0x99, 0x1d, 0xfa, 0x34, 0x01, 0x9b, 0x98, 0x93, 0xd6, 0x9a, 0x2b, 0xe8, 0xc1, 0xfc, 0x80, }; static const wycheproof_hmac_test hmac_sha256_194 = { .name = "hmac_sha256_194", .hash = SHA256, .key = hmac_sha256_194_key, .keylen = 32, .msg = hmac_sha256_194_msg, .msglen = 49, .tag = hmac_sha256_194_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 195 for HMAC, tcId is 24 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_195_key[] = { 0x23, 0x20, 0x9b, 0x7c, 0x5a, 0xad, 0xcb, 0xd1, 0x3f, 0x72, 0x79, 0xaf, 0x1a, 0x86, 0xd3, 0xc7, 0xae, 0x8f, 0x17, 0x9d, 0x1b, 0xca, 0xaa, 0xd0, 0xdf, 0xf9, 0xa1, 0x53, 0x02, 0xe7, 0x8d, 0xbf, }; static const unsigned char hmac_sha256_195_msg[] = { 0x84, 0xbd, 0xac, 0x37, 0xe1, 0xaf, 0x35, 0xd9, 0x35, 0x64, 0x04, 0xe2, 0x78, 0x7d, 0x47, 0xec, 0xe5, 0x83, 0x48, 0xde, 0xa7, 0x6a, 0x4a, 0x46, 0xe8, 0xaa, 0xde, 0x34, 0x63, 0xd4, 0xdb, 0x8c, 0x94, 0xa0, 0x51, 0xbe, 0x37, 0x33, 0xb3, 0x8d, 0x75, 0x69, 0x84, 0x86, 0x5d, 0x56, 0xc6, 0x0e, 0x80, 0x25, 0xf1, 0x5e, 0x3f, 0x96, 0x8f, 0x09, 0x3e, 0x7f, 0xb7, 0xeb, 0xc7, 0xe3, 0x11, 0x89, 0xc5, 0x69, 0x2d, 0x15, 0xed, 0x42, 0x56, 0x73, 0x7b, 0x9b, 0x18, 0x94, 0xe5, 0x80, 0x95, 0x03, 0xaa, 0xa1, 0xc9, 0x98, 0x3f, 0xb0, 0x96, 0xaa, 0x21, 0x91, 0x63, 0x61, 0xee, 0xb6, 0xef, 0x45, 0x5b, 0x12, 0x97, 0x23, 0xa1, 0xa1, 0xdd, 0xf9, 0xde, 0xdd, 0xea, 0x20, 0x85, 0x29, 0xa6, 0x48, }; static const unsigned char hmac_sha256_195_tag[] = { 0x4a, 0x85, 0xc4, 0x79, 0xd1, 0x65, 0x0d, 0xbd, 0x73, 0xbc, 0x52, 0x48, 0x07, 0x4a, 0x55, 0xff, 0x50, 0x21, 0x8b, 0xdd, 0xaa, 0x8d, 0x1f, 0xdd, 0xaa, 0xf4, 0x49, 0x46, 0xdc, 0x19, 0xae, 0xfb, }; static const wycheproof_hmac_test hmac_sha256_195 = { .name = "hmac_sha256_195", .hash = SHA256, .key = hmac_sha256_195_key, .keylen = 32, .msg = hmac_sha256_195_msg, .msglen = 112, .tag = hmac_sha256_195_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 196 for HMAC, tcId is 25 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_196_key[] = { 0x7c, 0x9c, 0xc6, 0x67, 0xca, 0xe1, 0x75, 0xf4, 0x48, 0xfa, 0xa9, 0x66, 0x47, 0x31, 0x96, 0x33, 0xb2, 0xd4, 0x85, 0x31, 0x37, 0x3a, 0xe7, 0xd3, 0x16, 0xc4, 0x4d, 0xdd, 0x8b, 0x9f, 0x69, 0xcf, }; static const unsigned char hmac_sha256_196_msg[] = { 0x92, 0x33, 0xc1, 0xd7, 0x3b, 0x49, 0x8c, 0x51, 0x06, 0xff, 0x88, 0x95, 0x1e, 0x07, 0xb9, 0x65, 0x2c, 0xb0, 0xdd, 0xae, 0x74, 0x07, 0x37, 0xec, 0x20, 0x5c, 0x98, 0x76, 0xd0, 0x94, 0x97, 0x8b, 0xfc, 0x94, 0x7f, 0x7d, 0xc9, 0x37, 0x11, 0x9f, 0xd6, 0xa9, 0x39, 0x15, 0xb1, 0x9b, 0x62, 0x59, 0x58, 0xa7, 0xa2, 0x23, 0x63, 0xaa, 0x2a, 0xc3, 0x3f, 0xb8, 0x69, 0xed, 0x16, 0xb3, 0x03, 0x33, 0x6a, 0xb7, 0x40, 0xa0, 0x49, 0x8a, 0x2d, 0xf6, 0x6a, 0x65, 0x99, 0xda, 0x71, 0x00, 0x94, 0x48, 0x1a, 0x7b, 0x54, 0x4b, 0xd9, 0x55, 0xb6, 0xf9, 0x71, 0x35, 0xba, 0x46, 0x73, 0x40, 0x1d, 0xb2, 0xdb, 0x14, 0x4a, 0x6e, 0x28, 0x70, 0x41, 0xe4, 0x7a, 0x51, 0xed, 0x9b, 0x6b, 0xa9, 0x56, 0xc1, 0x35, 0x08, 0xc1, 0xc0, 0xc2, 0x53, 0x10, 0x10, 0x52, 0x39, 0xab, 0x73, 0x62, 0x9e, 0x30, }; static const unsigned char hmac_sha256_196_tag[] = { 0xca, 0x1b, 0x80, 0x44, 0x1d, 0x33, 0x39, 0x09, 0xc2, 0xbb, 0x30, 0x76, 0x96, 0x50, 0x05, 0x50, 0x51, 0xed, 0x20, 0xf1, 0x7d, 0xe8, 0xee, 0x95, 0x3c, 0xb9, 0x07, 0x0a, 0xf5, 0x6c, 0x70, 0x4f, }; static const wycheproof_hmac_test hmac_sha256_196 = { .name = "hmac_sha256_196", .hash = SHA256, .key = hmac_sha256_196_key, .keylen = 32, .msg = hmac_sha256_196_msg, .msglen = 127, .tag = hmac_sha256_196_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 197 for HMAC, tcId is 26 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_197_key[] = { 0x82, 0x31, 0x45, 0x40, 0x56, 0x4e, 0xa3, 0xce, 0x30, 0x59, 0x1e, 0x97, 0xf6, 0x8b, 0x26, 0x02, 0xde, 0x40, 0xfa, 0x29, 0xf7, 0x73, 0xc2, 0x50, 0x83, 0x27, 0x47, 0x1b, 0x83, 0x48, 0xe8, 0xc4, }; static const unsigned char hmac_sha256_197_msg[] = { 0x6a, 0x6d, 0x2f, 0x45, 0xce, 0xbf, 0x27, 0x57, 0xae, 0x16, 0xea, 0x33, 0xc6, 0x86, 0x17, 0x67, 0x1d, 0x77, 0xf8, 0xfd, 0xf8, 0x0b, 0xed, 0x8f, 0xc5, 0xcd, 0xc5, 0xc8, 0xb7, 0x08, 0x6b, 0xd2, 0x8e, 0x7e, 0xb3, 0xee, 0xcc, 0x71, 0x63, 0x49, 0x11, 0x04, 0xe5, 0x30, 0x94, 0x55, 0xe6, 0x7f, 0x83, 0x65, 0x79, 0xb8, 0x2a, 0x1d, 0xa3, 0xbf, 0x59, 0x91, 0xa8, 0xe2, 0xb2, 0xf1, 0x89, 0xa4, 0x9e, 0x05, 0x70, 0x0e, 0x46, 0xc4, 0x09, 0xed, 0x5d, 0xe7, 0x77, 0x80, 0xa5, 0xf3, 0x89, 0xe3, 0xf1, 0x3d, 0xad, 0x40, 0x6c, 0x9d, 0x55, 0x67, 0x53, 0x29, 0xc5, 0xc9, 0x21, 0xf0, 0x70, 0x34, 0x18, 0x09, 0x37, 0xc0, 0xf6, 0xef, 0x34, 0xa2, 0x30, 0x8b, 0x6f, 0xf3, 0xe1, 0xa0, 0xe9, 0xdc, 0x1e, 0xa6, 0x5f, 0x56, 0x32, 0x73, 0x0e, 0x87, 0x44, 0xd1, 0xdb, 0x2c, 0x40, 0xa6, 0x59, 0x5b, }; static const unsigned char hmac_sha256_197_tag[] = { 0x09, 0x00, 0xb3, 0xe6, 0x53, 0x5d, 0x34, 0xf9, 0x0e, 0x2c, 0x33, 0x57, 0x75, 0xe8, 0x6b, 0xf3, 0x8e, 0xe7, 0xe3, 0xd2, 0x6f, 0xb6, 0x0c, 0xd9, 0xcd, 0xf6, 0x39, 0xeb, 0x34, 0x96, 0xb9, 0x4c, }; static const wycheproof_hmac_test hmac_sha256_197 = { .name = "hmac_sha256_197", .hash = SHA256, .key = hmac_sha256_197_key, .keylen = 32, .msg = hmac_sha256_197_msg, .msglen = 128, .tag = hmac_sha256_197_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 198 for HMAC, tcId is 27 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_198_key[] = { 0xd1, 0x15, 0xac, 0xc9, 0xa6, 0x36, 0x91, 0x52, 0x41, 0x79, 0x5f, 0x48, 0x85, 0x20, 0x52, 0xe0, 0x7b, 0x51, 0x27, 0x3a, 0xe2, 0x44, 0x82, 0x51, 0xec, 0x1d, 0x0d, 0x0f, 0x98, 0x07, 0xf3, 0xdb, }; static const unsigned char hmac_sha256_198_msg[] = { 0x69, 0x6d, 0x24, 0x56, 0xde, 0x85, 0x3f, 0xa0, 0x28, 0xf4, 0x86, 0xfe, 0xf4, 0x37, 0xb6, 0xb6, 0xd1, 0xb5, 0x30, 0xa8, 0x47, 0x5e, 0x29, 0x9d, 0xb3, 0xa9, 0x00, 0x5a, 0xe9, 0xce, 0xf8, 0x40, 0x19, 0x85, 0xb7, 0xd3, 0x1e, 0x17, 0x2e, 0x8f, 0x43, 0x9c, 0xcd, 0x1a, 0xd1, 0xec, 0x44, 0xc9, 0xb8, 0x6b, 0x78, 0xf3, 0xf2, 0x43, 0xc1, 0x30, 0x5b, 0x53, 0xbc, 0x21, 0xab, 0xad, 0x7a, 0x8f, 0xc5, 0x25, 0x63, 0x11, 0xbf, 0xd3, 0x4c, 0x98, 0xe3, 0x7d, 0xfd, 0xc6, 0x49, 0xe7, 0xae, 0x4b, 0xda, 0x08, 0xcf, 0x29, 0x94, 0xb0, 0x63, 0xc0, 0xc7, 0x10, 0x6e, 0xd0, 0xb0, 0x2a, 0x1f, 0x48, 0xaf, 0x91, 0x91, 0xcb, 0xfb, 0x0d, 0x6a, 0x95, 0x3b, 0x7e, 0x04, 0x32, 0x7d, 0xfe, 0x8c, 0x93, 0x77, 0x9c, 0xb5, 0x74, 0xba, 0x9c, 0xba, 0x57, 0x5d, 0x01, 0x67, 0x4e, 0x83, 0x62, 0x1a, 0xa0, 0xc5, 0xf4, 0x00, 0xd6, 0xe6, 0xcd, 0x24, 0xb3, 0x01, 0xe3, 0x3c, 0x9f, 0x33, 0x03, 0xe7, 0x3b, 0xf3, 0x57, 0x40, 0x8c, 0x1b, 0xe8, 0x6c, 0x24, 0x89, 0xc0, 0x9d, 0xe9, 0x98, 0xff, 0x2e, 0xf3, 0x2d, 0xf5, 0x54, 0xf1, 0x24, 0x7d, 0x93, 0x13, 0xce, 0x1a, 0x71, 0x60, 0x11, 0x5d, 0x06, 0xf4, 0xc1, 0x8d, 0x65, 0x56, 0xff, 0x79, 0x86, 0xef, 0x8a, 0x55, 0xe2, 0xad, 0xcf, 0xa2, 0x7e, 0x4c, 0x69, 0xc7, 0x1c, 0xc2, 0xff, 0x01, 0x63, 0x9e, 0x9d, 0x49, 0xbd, 0x9e, 0xd0, 0x68, 0x7f, 0x53, 0x0f, 0xfe, 0xb0, 0x89, 0x01, 0x32, 0x45, 0x7d, 0xf2, 0x08, 0x80, 0x81, 0xbc, 0x4a, 0x2f, 0x7f, 0x0a, 0x9f, 0x4d, 0xce, 0xa2, 0xc8, 0x0d, 0x99, 0x1d, 0xb7, 0xf3, 0x74, 0x7a, 0x18, 0x03, 0xd7, 0x61, 0x9a, 0xaf, 0x3d, 0xd3, 0x82, 0xc6, 0x95, 0x36, 0xa0, 0xbc, 0xdb, 0x93, 0x1c, 0xbe, }; static const unsigned char hmac_sha256_198_tag[] = { 0x82, 0xf9, 0x29, 0x77, 0xf0, 0xb6, 0x05, 0xea, 0xad, 0xa5, 0x10, 0xff, 0xce, 0xb5, 0x3a, 0xd7, 0x5f, 0xde, 0x16, 0xa8, 0x02, 0x9f, 0x1b, 0x75, 0xb4, 0x06, 0xa8, 0x42, 0x70, 0xdb, 0xb8, 0xb7, }; static const wycheproof_hmac_test hmac_sha256_198 = { .name = "hmac_sha256_198", .hash = SHA256, .key = hmac_sha256_198_key, .keylen = 32, .msg = hmac_sha256_198_msg, .msglen = 255, .tag = hmac_sha256_198_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 199 for HMAC, tcId is 28 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_199_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_199_tag[] = { 0xd2, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_199 = { .name = "hmac_sha256_199", .hash = SHA256, .key = hmac_sha256_199_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_199_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 200 for HMAC, tcId is 29 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_200_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_200_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_200_tag[] = { 0xd9, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_200 = { .name = "hmac_sha256_200", .hash = SHA256, .key = hmac_sha256_200_key, .keylen = 32, .msg = hmac_sha256_200_msg, .msglen = 16, .tag = hmac_sha256_200_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 201 for HMAC, tcId is 30 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_201_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_201_tag[] = { 0xd1, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_201 = { .name = "hmac_sha256_201", .hash = SHA256, .key = hmac_sha256_201_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_201_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 202 for HMAC, tcId is 31 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_202_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_202_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_202_tag[] = { 0xda, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_202 = { .name = "hmac_sha256_202", .hash = SHA256, .key = hmac_sha256_202_key, .keylen = 32, .msg = hmac_sha256_202_msg, .msglen = 16, .tag = hmac_sha256_202_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 203 for HMAC, tcId is 32 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_203_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_203_tag[] = { 0x53, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_203 = { .name = "hmac_sha256_203", .hash = SHA256, .key = hmac_sha256_203_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_203_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 204 for HMAC, tcId is 33 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_204_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_204_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_204_tag[] = { 0x58, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_204 = { .name = "hmac_sha256_204", .hash = SHA256, .key = hmac_sha256_204_key, .keylen = 32, .msg = hmac_sha256_204_msg, .msglen = 16, .tag = hmac_sha256_204_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 205 for HMAC, tcId is 34 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_205_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_205_tag[] = { 0xd3, 0x8a, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_205 = { .name = "hmac_sha256_205", .hash = SHA256, .key = hmac_sha256_205_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_205_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 206 for HMAC, tcId is 35 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_206_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_206_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_206_tag[] = { 0xd8, 0xb8, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_206 = { .name = "hmac_sha256_206", .hash = SHA256, .key = hmac_sha256_206_key, .keylen = 32, .msg = hmac_sha256_206_msg, .msglen = 16, .tag = hmac_sha256_206_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 207 for HMAC, tcId is 36 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_207_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_207_tag[] = { 0xd3, 0x8b, 0x42, 0x89, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_207 = { .name = "hmac_sha256_207", .hash = SHA256, .key = hmac_sha256_207_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_207_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 208 for HMAC, tcId is 37 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_208_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_208_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_208_tag[] = { 0xd8, 0xb9, 0x9f, 0xa7, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_208 = { .name = "hmac_sha256_208", .hash = SHA256, .key = hmac_sha256_208_key, .keylen = 32, .msg = hmac_sha256_208_msg, .msglen = 16, .tag = hmac_sha256_208_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 209 for HMAC, tcId is 38 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_209_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_209_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6c, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_209 = { .name = "hmac_sha256_209", .hash = SHA256, .key = hmac_sha256_209_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_209_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 210 for HMAC, tcId is 39 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_210_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_210_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_210_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x08, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_210 = { .name = "hmac_sha256_210", .hash = SHA256, .key = hmac_sha256_210_key, .keylen = 32, .msg = hmac_sha256_210_msg, .msglen = 16, .tag = hmac_sha256_210_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 211 for HMAC, tcId is 40 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_211_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_211_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6f, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_211 = { .name = "hmac_sha256_211", .hash = SHA256, .key = hmac_sha256_211_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_211_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 212 for HMAC, tcId is 41 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_212_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_212_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_212_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x0b, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_212 = { .name = "hmac_sha256_212", .hash = SHA256, .key = hmac_sha256_212_key, .keylen = 32, .msg = hmac_sha256_212_msg, .msglen = 16, .tag = hmac_sha256_212_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 213 for HMAC, tcId is 42 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_213_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_213_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_213 = { .name = "hmac_sha256_213", .hash = SHA256, .key = hmac_sha256_213_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_213_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 214 for HMAC, tcId is 43 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_214_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_214_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_214_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_214 = { .name = "hmac_sha256_214", .hash = SHA256, .key = hmac_sha256_214_key, .keylen = 32, .msg = hmac_sha256_214_msg, .msglen = 16, .tag = hmac_sha256_214_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 215 for HMAC, tcId is 44 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_215_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_215_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x83, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_215 = { .name = "hmac_sha256_215", .hash = SHA256, .key = hmac_sha256_215_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_215_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 216 for HMAC, tcId is 45 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_216_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_216_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_216_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x16, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_216 = { .name = "hmac_sha256_216", .hash = SHA256, .key = hmac_sha256_216_key, .keylen = 32, .msg = hmac_sha256_216_msg, .msglen = 16, .tag = hmac_sha256_216_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 217 for HMAC, tcId is 46 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_217_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_217_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x02, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_217 = { .name = "hmac_sha256_217", .hash = SHA256, .key = hmac_sha256_217_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_217_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 218 for HMAC, tcId is 47 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_218_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_218_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_218_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x97, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_218 = { .name = "hmac_sha256_218", .hash = SHA256, .key = hmac_sha256_218_key, .keylen = 32, .msg = hmac_sha256_218_msg, .msglen = 16, .tag = hmac_sha256_218_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 219 for HMAC, tcId is 48 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_219_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_219_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x4b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_219 = { .name = "hmac_sha256_219", .hash = SHA256, .key = hmac_sha256_219_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_219_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 220 for HMAC, tcId is 49 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_220_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_220_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_220_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x0c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_220 = { .name = "hmac_sha256_220", .hash = SHA256, .key = hmac_sha256_220_key, .keylen = 32, .msg = hmac_sha256_220_msg, .msglen = 16, .tag = hmac_sha256_220_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 221 for HMAC, tcId is 50 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_221_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_221_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x45, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_221 = { .name = "hmac_sha256_221", .hash = SHA256, .key = hmac_sha256_221_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_221_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 222 for HMAC, tcId is 51 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_222_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_222_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_222_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbf, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_222 = { .name = "hmac_sha256_222", .hash = SHA256, .key = hmac_sha256_222_key, .keylen = 32, .msg = hmac_sha256_222_msg, .msglen = 16, .tag = hmac_sha256_222_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 223 for HMAC, tcId is 52 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_223_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_223_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd4, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_223 = { .name = "hmac_sha256_223", .hash = SHA256, .key = hmac_sha256_223_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_223_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 224 for HMAC, tcId is 53 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_224_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_224_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_224_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x83, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_224 = { .name = "hmac_sha256_224", .hash = SHA256, .key = hmac_sha256_224_key, .keylen = 32, .msg = hmac_sha256_224_msg, .msglen = 16, .tag = hmac_sha256_224_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 225 for HMAC, tcId is 54 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_225_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_225_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd7, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_225 = { .name = "hmac_sha256_225", .hash = SHA256, .key = hmac_sha256_225_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_225_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 226 for HMAC, tcId is 55 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_226_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_226_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_226_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x80, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_226 = { .name = "hmac_sha256_226", .hash = SHA256, .key = hmac_sha256_226_key, .keylen = 32, .msg = hmac_sha256_226_msg, .msglen = 16, .tag = hmac_sha256_226_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 227 for HMAC, tcId is 56 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_227_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_227_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0x55, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_227 = { .name = "hmac_sha256_227", .hash = SHA256, .key = hmac_sha256_227_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_227_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 228 for HMAC, tcId is 57 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_228_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_228_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_228_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x02, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_228 = { .name = "hmac_sha256_228", .hash = SHA256, .key = hmac_sha256_228_key, .keylen = 32, .msg = hmac_sha256_228_msg, .msglen = 16, .tag = hmac_sha256_228_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 229 for HMAC, tcId is 58 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_229_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_229_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xca, }; static const wycheproof_hmac_test hmac_sha256_229 = { .name = "hmac_sha256_229", .hash = SHA256, .key = hmac_sha256_229_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_229_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 58 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 230 for HMAC, tcId is 59 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_230_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_230_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_230_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4f, }; static const wycheproof_hmac_test hmac_sha256_230 = { .name = "hmac_sha256_230", .hash = SHA256, .key = hmac_sha256_230_key, .keylen = 32, .msg = hmac_sha256_230_msg, .msglen = 16, .tag = hmac_sha256_230_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 59 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 231 for HMAC, tcId is 60 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_231_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_231_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xc9, }; static const wycheproof_hmac_test hmac_sha256_231 = { .name = "hmac_sha256_231", .hash = SHA256, .key = hmac_sha256_231_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_231_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 60 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 232 for HMAC, tcId is 61 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_232_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_232_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_232_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4c, }; static const wycheproof_hmac_test hmac_sha256_232 = { .name = "hmac_sha256_232", .hash = SHA256, .key = hmac_sha256_232_key, .keylen = 32, .msg = hmac_sha256_232_msg, .msglen = 16, .tag = hmac_sha256_232_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 61 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 233 for HMAC, tcId is 62 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_233_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_233_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0x8b, }; static const wycheproof_hmac_test hmac_sha256_233 = { .name = "hmac_sha256_233", .hash = SHA256, .key = hmac_sha256_233_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_233_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 62 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 234 for HMAC, tcId is 63 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_234_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_234_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_234_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x0e, }; static const wycheproof_hmac_test hmac_sha256_234 = { .name = "hmac_sha256_234", .hash = SHA256, .key = hmac_sha256_234_key, .keylen = 32, .msg = hmac_sha256_234_msg, .msglen = 16, .tag = hmac_sha256_234_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 63 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 235 for HMAC, tcId is 64 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_235_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_235_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0x4b, }; static const wycheproof_hmac_test hmac_sha256_235 = { .name = "hmac_sha256_235", .hash = SHA256, .key = hmac_sha256_235_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_235_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 64 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 236 for HMAC, tcId is 65 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_236_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_236_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_236_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0xce, }; static const wycheproof_hmac_test hmac_sha256_236 = { .name = "hmac_sha256_236", .hash = SHA256, .key = hmac_sha256_236_key, .keylen = 32, .msg = hmac_sha256_236_msg, .msglen = 16, .tag = hmac_sha256_236_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 65 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 237 for HMAC, tcId is 66 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_237_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_237_tag[] = { 0xd2, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x83, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_237 = { .name = "hmac_sha256_237", .hash = SHA256, .key = hmac_sha256_237_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_237_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 238 for HMAC, tcId is 67 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_238_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_238_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_238_tag[] = { 0xd9, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x16, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_238 = { .name = "hmac_sha256_238", .hash = SHA256, .key = hmac_sha256_238_key, .keylen = 32, .msg = hmac_sha256_238_msg, .msglen = 16, .tag = hmac_sha256_238_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 239 for HMAC, tcId is 68 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_239_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_239_tag[] = { 0xd3, 0x8b, 0x42, 0x89, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_239 = { .name = "hmac_sha256_239", .hash = SHA256, .key = hmac_sha256_239_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_239_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 240 for HMAC, tcId is 69 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_240_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_240_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_240_tag[] = { 0xd8, 0xb9, 0x9f, 0xa7, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_240 = { .name = "hmac_sha256_240", .hash = SHA256, .key = hmac_sha256_240_key, .keylen = 32, .msg = hmac_sha256_240_msg, .msglen = 16, .tag = hmac_sha256_240_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 241 for HMAC, tcId is 70 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_241_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_241_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0x67, 0x24, 0x96, 0xa4, 0x15, 0xd3, 0xf4, 0xa1, 0xa8, 0xc8, 0x8e, 0x3b, 0xb9, 0xda, 0x8d, 0xc1, 0xcb, }; static const wycheproof_hmac_test hmac_sha256_241 = { .name = "hmac_sha256_241", .hash = SHA256, .key = hmac_sha256_241_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_241_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 242 for HMAC, tcId is 71 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_242_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_242_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_242_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0xa9, 0xb2, 0x3a, 0x0c, 0x1e, 0x9c, 0x21, 0xbd, 0x85, 0x1f, 0xf2, 0xd2, 0xc3, 0x9d, 0xbe, 0xf1, 0x4e, }; static const wycheproof_hmac_test hmac_sha256_242 = { .name = "hmac_sha256_242", .hash = SHA256, .key = hmac_sha256_242_key, .keylen = 32, .msg = hmac_sha256_242_msg, .msglen = 16, .tag = hmac_sha256_242_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 243 for HMAC, tcId is 72 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_243_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_243_tag[] = { 0x2c, 0x74, 0xbd, 0xf6, 0x92, 0x7f, 0x0b, 0xa0, 0x7d, 0x94, 0xbb, 0x56, 0x2a, 0x9f, 0x82, 0x18, 0xdb, 0x69, 0x5b, 0xea, 0x2c, 0x0b, 0x5e, 0x57, 0x37, 0x71, 0xc4, 0x46, 0x25, 0x72, 0x3e, 0x34, }; static const wycheproof_hmac_test hmac_sha256_243 = { .name = "hmac_sha256_243", .hash = SHA256, .key = hmac_sha256_243_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_243_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 244 for HMAC, tcId is 73 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_244_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_244_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_244_tag[] = { 0x27, 0x46, 0x60, 0xd8, 0xf6, 0x5c, 0x35, 0x8b, 0xe8, 0xd3, 0x41, 0x6c, 0x7d, 0xb3, 0xe0, 0xd6, 0x4d, 0xc5, 0xf3, 0xe1, 0x63, 0xde, 0x42, 0x7a, 0xe0, 0x0d, 0x2d, 0x3c, 0x62, 0x41, 0x0e, 0xb1, }; static const wycheproof_hmac_test hmac_sha256_244 = { .name = "hmac_sha256_244", .hash = SHA256, .key = hmac_sha256_244_key, .keylen = 32, .msg = hmac_sha256_244_msg, .msglen = 16, .tag = hmac_sha256_244_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 245 for HMAC, tcId is 74 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_245_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_245_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha256_245 = { .name = "hmac_sha256_245", .hash = SHA256, .key = hmac_sha256_245_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_245_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 246 for HMAC, tcId is 75 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_246_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_246_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_246_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha256_246 = { .name = "hmac_sha256_246", .hash = SHA256, .key = hmac_sha256_246_key, .keylen = 32, .msg = hmac_sha256_246_msg, .msglen = 16, .tag = hmac_sha256_246_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 247 for HMAC, tcId is 76 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_247_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_247_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha256_247 = { .name = "hmac_sha256_247", .hash = SHA256, .key = hmac_sha256_247_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_247_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 248 for HMAC, tcId is 77 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_248_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_248_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_248_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha256_248 = { .name = "hmac_sha256_248", .hash = SHA256, .key = hmac_sha256_248_key, .keylen = 32, .msg = hmac_sha256_248_msg, .msglen = 16, .tag = hmac_sha256_248_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 249 for HMAC, tcId is 78 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_249_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_249_tag[] = { 0x53, 0x0b, 0xc2, 0x89, 0xed, 0x00, 0x74, 0xdf, 0x02, 0xeb, 0xc4, 0x29, 0x55, 0xe0, 0xfd, 0x67, 0xa4, 0x16, 0x24, 0x95, 0x53, 0x74, 0x21, 0x28, 0x48, 0x0e, 0xbb, 0x39, 0x5a, 0x0d, 0x41, 0x4b, }; static const wycheproof_hmac_test hmac_sha256_249 = { .name = "hmac_sha256_249", .hash = SHA256, .key = hmac_sha256_249_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_249_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 250 for HMAC, tcId is 79 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_250_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_250_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_250_tag[] = { 0x58, 0x39, 0x1f, 0xa7, 0x89, 0x23, 0x4a, 0xf4, 0x97, 0xac, 0x3e, 0x13, 0x02, 0xcc, 0x9f, 0xa9, 0x32, 0xba, 0x8c, 0x9e, 0x1c, 0xa1, 0x3d, 0x05, 0x9f, 0x72, 0x52, 0x43, 0x1d, 0x3e, 0x71, 0xce, }; static const wycheproof_hmac_test hmac_sha256_250 = { .name = "hmac_sha256_250", .hash = SHA256, .key = hmac_sha256_250_key, .keylen = 32, .msg = hmac_sha256_250_msg, .msglen = 16, .tag = hmac_sha256_250_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 251 for HMAC, tcId is 80 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_251_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_251_tag[] = { 0xd2, 0x8a, 0x43, 0x08, 0x6c, 0x81, 0xf5, 0x5e, 0x83, 0x6a, 0x45, 0xa8, 0xd4, 0x61, 0x7c, 0xe6, 0x25, 0x97, 0xa5, 0x14, 0xd2, 0xf5, 0xa0, 0xa9, 0xc9, 0x8f, 0x3a, 0xb8, 0xdb, 0x8c, 0xc0, 0xca, }; static const wycheproof_hmac_test hmac_sha256_251 = { .name = "hmac_sha256_251", .hash = SHA256, .key = hmac_sha256_251_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_251_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 252 for HMAC, tcId is 81 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_252_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_252_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_252_tag[] = { 0xd9, 0xb8, 0x9e, 0x26, 0x08, 0xa2, 0xcb, 0x75, 0x16, 0x2d, 0xbf, 0x92, 0x83, 0x4d, 0x1e, 0x28, 0xb3, 0x3b, 0x0d, 0x1f, 0x9d, 0x20, 0xbc, 0x84, 0x1e, 0xf3, 0xd3, 0xc2, 0x9c, 0xbf, 0xf0, 0x4f, }; static const wycheproof_hmac_test hmac_sha256_252 = { .name = "hmac_sha256_252", .hash = SHA256, .key = hmac_sha256_252_key, .keylen = 32, .msg = hmac_sha256_252_msg, .msglen = 16, .tag = hmac_sha256_252_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 253 for HMAC, tcId is 82 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_253_key[] = { 0x7b, 0xf9, 0xe5, 0x36, 0xb6, 0x6a, 0x21, 0x5c, 0x22, 0x23, 0x3f, 0xe2, 0xda, 0xaa, 0x74, 0x3a, 0x89, 0x8b, 0x9a, 0xcb, 0x9f, 0x78, 0x02, 0xde, 0x70, 0xb4, 0x0e, 0x3d, 0x6e, 0x43, 0xef, 0x97, }; static const unsigned char hmac_sha256_253_tag[] = { 0xf4, 0x60, 0x55, 0x85, 0x94, 0x97, 0x47, 0xde, 0x26, 0xf3, 0xee, 0x98, 0xa7, 0x38, 0xb1, 0x72, }; static const wycheproof_hmac_test hmac_sha256_253 = { .name = "hmac_sha256_253", .hash = SHA256, .key = hmac_sha256_253_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_253_tag, .taglen = 16, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 254 for HMAC, tcId is 83 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_254_key[] = { 0xe7, 0x54, 0x07, 0x6c, 0xea, 0xb3, 0xfd, 0xaf, 0x4f, 0x9b, 0xca, 0xb7, 0xd4, 0xf0, 0xdf, 0x0c, 0xbb, 0xaf, 0xbc, 0x87, 0x73, 0x1b, 0x8f, 0x9b, 0x7c, 0xd2, 0x16, 0x64, 0x72, 0xe8, 0xee, 0xbc, }; static const unsigned char hmac_sha256_254_msg[] = { 0x40, }; static const unsigned char hmac_sha256_254_tag[] = { 0x0d, 0xc0, 0x0d, 0x72, 0x17, 0xbb, 0xaf, 0xe8, 0xd7, 0x8b, 0xf9, 0x61, 0x18, 0x9b, 0x8f, 0xd2, }; static const wycheproof_hmac_test hmac_sha256_254 = { .name = "hmac_sha256_254", .hash = SHA256, .key = hmac_sha256_254_key, .keylen = 32, .msg = hmac_sha256_254_msg, .msglen = 1, .tag = hmac_sha256_254_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 255 for HMAC, tcId is 84 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_255_key[] = { 0xea, 0x3b, 0x01, 0x6b, 0xdd, 0x38, 0x7d, 0xd6, 0x4d, 0x83, 0x7c, 0x71, 0x68, 0x38, 0x08, 0xf3, 0x35, 0xdb, 0xdc, 0x53, 0x59, 0x8a, 0x4e, 0xa8, 0xc5, 0xf9, 0x52, 0x47, 0x3f, 0xaf, 0xaf, 0x5f, }; static const unsigned char hmac_sha256_255_msg[] = { 0x66, 0x01, }; static const unsigned char hmac_sha256_255_tag[] = { 0xff, 0x29, 0x6b, 0x36, 0x8d, 0x3b, 0xf0, 0x59, 0xcc, 0x48, 0x68, 0x2f, 0x69, 0x49, 0xcc, 0xaa, }; static const wycheproof_hmac_test hmac_sha256_255 = { .name = "hmac_sha256_255", .hash = SHA256, .key = hmac_sha256_255_key, .keylen = 32, .msg = hmac_sha256_255_msg, .msglen = 2, .tag = hmac_sha256_255_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 256 for HMAC, tcId is 85 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_256_key[] = { 0x73, 0xd4, 0x70, 0x96, 0x37, 0x85, 0x7d, 0xaf, 0xab, 0x6a, 0xd8, 0xb2, 0xb0, 0xa5, 0x1b, 0x06, 0x52, 0x47, 0x17, 0xfe, 0xdf, 0x10, 0x02, 0x96, 0x64, 0x4f, 0x7c, 0xfd, 0xaa, 0xe1, 0x80, 0x5b, }; static const unsigned char hmac_sha256_256_msg[] = { 0xf1, 0xd3, 0x00, }; static const unsigned char hmac_sha256_256_tag[] = { 0x2d, 0x02, 0xbd, 0x1c, 0x25, 0xb1, 0xfe, 0x52, 0xb1, 0xea, 0xd0, 0x73, 0x74, 0xd6, 0xe8, 0x83, }; static const wycheproof_hmac_test hmac_sha256_256 = { .name = "hmac_sha256_256", .hash = SHA256, .key = hmac_sha256_256_key, .keylen = 32, .msg = hmac_sha256_256_msg, .msglen = 3, .tag = hmac_sha256_256_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 257 for HMAC, tcId is 86 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_257_key[] = { 0xd5, 0xc8, 0x1b, 0x39, 0x9d, 0x4c, 0x0d, 0x15, 0x83, 0xa1, 0x3d, 0xa5, 0x6d, 0xe6, 0xd2, 0xdc, 0x45, 0xa6, 0x6e, 0x7b, 0x47, 0xc2, 0x4a, 0xb1, 0x19, 0x2e, 0x24, 0x6d, 0xc9, 0x61, 0xdd, 0x77, }; static const unsigned char hmac_sha256_257_msg[] = { 0x2a, 0xe6, 0x3c, 0xbf, }; static const unsigned char hmac_sha256_257_tag[] = { 0x4d, 0x9e, 0x8b, 0xdd, 0xf9, 0xb7, 0xa1, 0x21, 0x83, 0x09, 0xd5, 0x98, 0x8a, 0xa1, 0xb0, 0xd9, }; static const wycheproof_hmac_test hmac_sha256_257 = { .name = "hmac_sha256_257", .hash = SHA256, .key = hmac_sha256_257_key, .keylen = 32, .msg = hmac_sha256_257_msg, .msglen = 4, .tag = hmac_sha256_257_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 258 for HMAC, tcId is 87 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_258_key[] = { 0x25, 0x21, 0x20, 0x3f, 0xa0, 0xdd, 0xdf, 0x59, 0xd8, 0x37, 0xb2, 0x83, 0x0f, 0x87, 0xb1, 0xaa, 0x61, 0xf9, 0x58, 0x15, 0x5d, 0xf3, 0xca, 0x4d, 0x1d, 0xf2, 0x45, 0x7c, 0xb4, 0x28, 0x4d, 0xc8, }; static const unsigned char hmac_sha256_258_msg[] = { 0xaf, 0x3a, 0x01, 0x5e, 0xa1, }; static const unsigned char hmac_sha256_258_tag[] = { 0xcb, 0x8a, 0x4b, 0x41, 0x33, 0x50, 0xb4, 0x2f, 0x4a, 0xc3, 0x53, 0x3c, 0xc7, 0xf4, 0x78, 0x64, }; static const wycheproof_hmac_test hmac_sha256_258 = { .name = "hmac_sha256_258", .hash = SHA256, .key = hmac_sha256_258_key, .keylen = 32, .msg = hmac_sha256_258_msg, .msglen = 5, .tag = hmac_sha256_258_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 259 for HMAC, tcId is 88 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_259_key[] = { 0x66, 0x5a, 0x02, 0xbc, 0x26, 0x5a, 0x66, 0xd0, 0x17, 0x75, 0x09, 0x1d, 0xa5, 0x67, 0x26, 0xb6, 0x66, 0x8b, 0xfd, 0x90, 0x3c, 0xb7, 0xaf, 0x66, 0xfb, 0x1b, 0x78, 0xa8, 0xa0, 0x62, 0xe4, 0x3c, }; static const unsigned char hmac_sha256_259_msg[] = { 0x3f, 0x56, 0x93, 0x5d, 0xef, 0x3f, }; static const unsigned char hmac_sha256_259_tag[] = { 0x1c, 0xfc, 0xe7, 0x45, 0xdb, 0x1c, 0xa7, 0xde, 0x9a, 0x1d, 0x44, 0x20, 0xe6, 0x12, 0xca, 0x55, }; static const wycheproof_hmac_test hmac_sha256_259 = { .name = "hmac_sha256_259", .hash = SHA256, .key = hmac_sha256_259_key, .keylen = 32, .msg = hmac_sha256_259_msg, .msglen = 6, .tag = hmac_sha256_259_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 260 for HMAC, tcId is 89 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_260_key[] = { 0xfa, 0xcd, 0x75, 0xb2, 0x22, 0x21, 0x38, 0x00, 0x47, 0x30, 0x5b, 0xc9, 0x81, 0xf5, 0x70, 0xe2, 0xa1, 0xaf, 0x38, 0x92, 0x8e, 0xa7, 0xe2, 0x05, 0x9e, 0x3a, 0xf5, 0xfc, 0x6b, 0x82, 0xb4, 0x93, }; static const unsigned char hmac_sha256_260_msg[] = { 0x57, 0xbb, 0x86, 0xbe, 0xed, 0x15, 0x6f, }; static const unsigned char hmac_sha256_260_tag[] = { 0x0b, 0xde, 0x0d, 0x0c, 0x75, 0x6d, 0xf0, 0x9d, 0x4f, 0x6d, 0xa8, 0x1b, 0x29, 0x9a, 0x3a, 0xdf, }; static const wycheproof_hmac_test hmac_sha256_260 = { .name = "hmac_sha256_260", .hash = SHA256, .key = hmac_sha256_260_key, .keylen = 32, .msg = hmac_sha256_260_msg, .msglen = 7, .tag = hmac_sha256_260_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 261 for HMAC, tcId is 90 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_261_key[] = { 0x50, 0x5a, 0xa9, 0x88, 0x19, 0x80, 0x9e, 0xf6, 0x3b, 0x9a, 0x36, 0x8a, 0x1e, 0x8b, 0xc2, 0xe9, 0x22, 0xda, 0x45, 0xb0, 0x3c, 0xe0, 0x2d, 0x9a, 0x79, 0x66, 0xb1, 0x50, 0x06, 0xdb, 0xa2, 0xd5, }; static const unsigned char hmac_sha256_261_msg[] = { 0x2e, 0x4e, 0x7e, 0xf7, 0x28, 0xfe, 0x11, 0xaf, }; static const unsigned char hmac_sha256_261_tag[] = { 0x40, 0x6a, 0x5c, 0x2b, 0xd3, 0xe6, 0xa9, 0x59, 0x5f, 0x9b, 0x7d, 0xff, 0x60, 0x8d, 0x59, 0xa7, }; static const wycheproof_hmac_test hmac_sha256_261 = { .name = "hmac_sha256_261", .hash = SHA256, .key = hmac_sha256_261_key, .keylen = 32, .msg = hmac_sha256_261_msg, .msglen = 8, .tag = hmac_sha256_261_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 262 for HMAC, tcId is 91 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_262_key[] = { 0xf9, 0x42, 0x09, 0x38, 0x42, 0x80, 0x8b, 0xa4, 0x7f, 0x64, 0xe4, 0x27, 0xf7, 0x35, 0x1d, 0xde, 0x6b, 0x95, 0x46, 0xe6, 0x6d, 0xe4, 0xe7, 0xd6, 0x0a, 0xa6, 0xf3, 0x28, 0x18, 0x27, 0x12, 0xcf, }; static const unsigned char hmac_sha256_262_msg[] = { 0x85, 0x2a, 0x21, 0xd9, 0x28, 0x48, 0xe6, 0x27, 0xc7, }; static const unsigned char hmac_sha256_262_tag[] = { 0x0b, 0x1b, 0xf9, 0xe9, 0x8d, 0x0a, 0x79, 0x4f, 0xa5, 0x5c, 0x09, 0xb6, 0x3e, 0x25, 0x79, 0x9f, }; static const wycheproof_hmac_test hmac_sha256_262 = { .name = "hmac_sha256_262", .hash = SHA256, .key = hmac_sha256_262_key, .keylen = 32, .msg = hmac_sha256_262_msg, .msglen = 9, .tag = hmac_sha256_262_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 263 for HMAC, tcId is 92 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_263_key[] = { 0x64, 0xbe, 0x16, 0x2b, 0x39, 0xc6, 0xe5, 0xf1, 0xfe, 0xd9, 0xc3, 0x2d, 0x9f, 0x67, 0x4d, 0x9a, 0x8c, 0xde, 0x6e, 0xaa, 0x24, 0x43, 0x21, 0x4d, 0x86, 0xbd, 0x4a, 0x1f, 0xb5, 0x3b, 0x81, 0xb4, }; static const unsigned char hmac_sha256_263_msg[] = { 0x19, 0x5a, 0x3b, 0x29, 0x2f, 0x93, 0xba, 0xff, 0x0a, 0x2c, }; static const unsigned char hmac_sha256_263_tag[] = { 0x71, 0xf3, 0x3f, 0x60, 0x21, 0xd9, 0x08, 0x58, 0xca, 0xdb, 0x13, 0x53, 0xd7, 0xfb, 0xe8, 0xd7, }; static const wycheproof_hmac_test hmac_sha256_263 = { .name = "hmac_sha256_263", .hash = SHA256, .key = hmac_sha256_263_key, .keylen = 32, .msg = hmac_sha256_263_msg, .msglen = 10, .tag = hmac_sha256_263_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 264 for HMAC, tcId is 93 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_264_key[] = { 0xb2, 0x59, 0xa5, 0x55, 0xd4, 0x4b, 0x8a, 0x20, 0xc5, 0x48, 0x9e, 0x2f, 0x38, 0x39, 0x2d, 0xda, 0xa6, 0xbe, 0x9e, 0x35, 0xb9, 0x83, 0x3b, 0x67, 0xe1, 0xb5, 0xfd, 0xf6, 0xcb, 0x3e, 0x4c, 0x6c, }; static const unsigned char hmac_sha256_264_msg[] = { 0xaf, 0xd7, 0x31, 0x17, 0x33, 0x0c, 0x6e, 0x85, 0x28, 0xa6, 0xe4, }; static const unsigned char hmac_sha256_264_tag[] = { 0x4b, 0x8d, 0x76, 0x37, 0x2e, 0xbe, 0x5e, 0x5c, 0xaa, 0x56, 0xca, 0x4e, 0x5c, 0x59, 0xcd, 0xd3, }; static const wycheproof_hmac_test hmac_sha256_264 = { .name = "hmac_sha256_264", .hash = SHA256, .key = hmac_sha256_264_key, .keylen = 32, .msg = hmac_sha256_264_msg, .msglen = 11, .tag = hmac_sha256_264_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 265 for HMAC, tcId is 94 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_265_key[] = { 0x2c, 0x6f, 0xc6, 0x2d, 0xaa, 0x77, 0xba, 0x8c, 0x68, 0x81, 0xb3, 0xdd, 0x69, 0x89, 0x89, 0x8f, 0xef, 0x64, 0x66, 0x63, 0xcc, 0x7b, 0x0a, 0x3d, 0xb8, 0x22, 0x8a, 0x70, 0x7b, 0x85, 0xf2, 0xdc, }; static const unsigned char hmac_sha256_265_msg[] = { 0x0f, 0xf5, 0x4d, 0x6b, 0x67, 0x59, 0x12, 0x0c, 0x2e, 0x8a, 0x51, 0xe3, }; static const unsigned char hmac_sha256_265_tag[] = { 0xc5, 0x80, 0xc5, 0x42, 0x84, 0x6a, 0x96, 0xe8, 0x4e, 0xa7, 0x77, 0x01, 0x77, 0x84, 0x55, 0xbf, }; static const wycheproof_hmac_test hmac_sha256_265 = { .name = "hmac_sha256_265", .hash = SHA256, .key = hmac_sha256_265_key, .keylen = 32, .msg = hmac_sha256_265_msg, .msglen = 12, .tag = hmac_sha256_265_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 266 for HMAC, tcId is 95 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_266_key[] = { 0xab, 0xab, 0x81, 0x5d, 0x51, 0xdf, 0x29, 0xf7, 0x40, 0xe4, 0xe2, 0x07, 0x9f, 0xb7, 0x98, 0xe0, 0x15, 0x28, 0x36, 0xe6, 0xab, 0x57, 0xd1, 0x53, 0x6a, 0xe8, 0x92, 0x9e, 0x52, 0xc0, 0x6e, 0xb8, }; static const unsigned char hmac_sha256_266_msg[] = { 0xf0, 0x05, 0x8d, 0x41, 0x2a, 0x10, 0x4e, 0x53, 0xd8, 0x20, 0xb9, 0x5a, 0x7f, }; static const unsigned char hmac_sha256_266_tag[] = { 0x13, 0xcd, 0xb0, 0x05, 0x05, 0x93, 0x38, 0xf0, 0xf2, 0x8e, 0x2d, 0x8c, 0xe1, 0xaf, 0x5d, 0x0a, }; static const wycheproof_hmac_test hmac_sha256_266 = { .name = "hmac_sha256_266", .hash = SHA256, .key = hmac_sha256_266_key, .keylen = 32, .msg = hmac_sha256_266_msg, .msglen = 13, .tag = hmac_sha256_266_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 267 for HMAC, tcId is 96 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_267_key[] = { 0x3d, 0x5d, 0xa1, 0xaf, 0x83, 0xf7, 0x28, 0x74, 0x58, 0xbf, 0xf7, 0xa7, 0x65, 0x1e, 0xa5, 0xd8, 0xdb, 0x72, 0x25, 0x94, 0x01, 0x33, 0x3f, 0x6b, 0x82, 0x09, 0x69, 0x96, 0xdd, 0x7e, 0xaf, 0x19, }; static const unsigned char hmac_sha256_267_msg[] = { 0xaa, 0xcc, 0x36, 0x97, 0x2f, 0x18, 0x30, 0x57, 0x91, 0x9f, 0xf5, 0x7b, 0x49, 0xe1, }; static const unsigned char hmac_sha256_267_tag[] = { 0xbd, 0x99, 0x3e, 0x44, 0x28, 0xcb, 0xc0, 0xe2, 0x75, 0xe4, 0xd8, 0x0b, 0x6f, 0x52, 0x03, 0x63, }; static const wycheproof_hmac_test hmac_sha256_267 = { .name = "hmac_sha256_267", .hash = SHA256, .key = hmac_sha256_267_key, .keylen = 32, .msg = hmac_sha256_267_msg, .msglen = 14, .tag = hmac_sha256_267_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 268 for HMAC, tcId is 97 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_268_key[] = { 0xc1, 0x9b, 0xdf, 0x31, 0x4c, 0x6c, 0xf6, 0x43, 0x81, 0x42, 0x54, 0x67, 0xf4, 0x2a, 0xef, 0xa1, 0x7c, 0x1c, 0xc9, 0x35, 0x8b, 0xe1, 0x6c, 0xe3, 0x1b, 0x1d, 0x21, 0x48, 0x59, 0xce, 0x86, 0xaa, }; static const unsigned char hmac_sha256_268_msg[] = { 0x5d, 0x06, 0x6a, 0x92, 0xc3, 0x00, 0xe9, 0xb6, 0xdd, 0xd6, 0x3a, 0x7c, 0x13, 0xae, 0x33, }; static const unsigned char hmac_sha256_268_tag[] = { 0x86, 0xc9, 0xf4, 0xdd, 0xe0, 0xb2, 0x57, 0xa7, 0x05, 0x3a, 0x7b, 0x03, 0xc7, 0x50, 0x44, 0x09, }; static const wycheproof_hmac_test hmac_sha256_268 = { .name = "hmac_sha256_268", .hash = SHA256, .key = hmac_sha256_268_key, .keylen = 32, .msg = hmac_sha256_268_msg, .msglen = 15, .tag = hmac_sha256_268_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 269 for HMAC, tcId is 98 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_269_key[] = { 0x61, 0x2e, 0x83, 0x78, 0x43, 0xce, 0xae, 0x7f, 0x61, 0xd4, 0x96, 0x25, 0xfa, 0xa7, 0xe7, 0x49, 0x4f, 0x92, 0x53, 0xe2, 0x0c, 0xb3, 0xad, 0xce, 0xa6, 0x86, 0x51, 0x2b, 0x04, 0x39, 0x36, 0xcd, }; static const unsigned char hmac_sha256_269_msg[] = { 0xcc, 0x37, 0xfa, 0xe1, 0x5f, 0x74, 0x5a, 0x2f, 0x40, 0xe2, 0xc8, 0xb1, 0x92, 0xf2, 0xb3, 0x8d, }; static const unsigned char hmac_sha256_269_tag[] = { 0xb9, 0x6b, 0xca, 0xca, 0xfa, 0xc3, 0x00, 0x94, 0xf1, 0x8a, 0xc5, 0x03, 0x9e, 0x7b, 0x36, 0x56, }; static const wycheproof_hmac_test hmac_sha256_269 = { .name = "hmac_sha256_269", .hash = SHA256, .key = hmac_sha256_269_key, .keylen = 32, .msg = hmac_sha256_269_msg, .msglen = 16, .tag = hmac_sha256_269_tag, .taglen = 16, .result = 1, .comment = ", tcId is 98 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 270 for HMAC, tcId is 99 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_270_key[] = { 0x73, 0x21, 0x6f, 0xaf, 0xd0, 0x02, 0x2d, 0x0d, 0x6e, 0xe2, 0x71, 0x98, 0xb2, 0x27, 0x25, 0x78, 0xfa, 0x8f, 0x04, 0xdd, 0x9f, 0x44, 0x46, 0x7f, 0xbb, 0x64, 0x37, 0xaa, 0x45, 0x64, 0x1b, 0xf7, }; static const unsigned char hmac_sha256_270_msg[] = { 0xd5, 0x24, 0x7b, 0x8f, 0x6c, 0x3e, 0xdc, 0xbf, 0xb1, 0xd5, 0x91, 0xd1, 0x3e, 0xce, 0x23, 0xd2, 0xf5, }; static const unsigned char hmac_sha256_270_tag[] = { 0x6e, 0x59, 0x7c, 0x4c, 0x38, 0x61, 0xa3, 0x80, 0xc0, 0x68, 0x54, 0xb4, 0x46, 0xfc, 0x2a, 0x87, }; static const wycheproof_hmac_test hmac_sha256_270 = { .name = "hmac_sha256_270", .hash = SHA256, .key = hmac_sha256_270_key, .keylen = 32, .msg = hmac_sha256_270_msg, .msglen = 17, .tag = hmac_sha256_270_tag, .taglen = 16, .result = 1, .comment = ", tcId is 99 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 271 for HMAC, tcId is 100 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_271_key[] = { 0x04, 0x27, 0xa7, 0x0e, 0x25, 0x75, 0x28, 0xf3, 0xab, 0x70, 0x64, 0x0b, 0xba, 0x1a, 0x5d, 0xe1, 0x2c, 0xf3, 0x88, 0x5d, 0xd4, 0xc8, 0xe2, 0x84, 0xfb, 0xbb, 0x55, 0xfe, 0xb3, 0x52, 0x94, 0xa5, }; static const unsigned char hmac_sha256_271_msg[] = { 0x13, 0x93, 0x7f, 0x85, 0x44, 0xf4, 0x42, 0x70, 0xd0, 0x11, 0x75, 0xa0, 0x11, 0xf7, 0x67, 0x0e, 0x93, 0xfa, 0x6b, 0xa7, 0xef, 0x02, 0x33, 0x6e, }; static const unsigned char hmac_sha256_271_tag[] = { 0xf7, 0x31, 0xaa, 0xf2, 0xf0, 0x40, 0x23, 0xd6, 0x21, 0xf1, 0x04, 0x95, 0x34, 0x46, 0x79, 0xa0, }; static const wycheproof_hmac_test hmac_sha256_271 = { .name = "hmac_sha256_271", .hash = SHA256, .key = hmac_sha256_271_key, .keylen = 32, .msg = hmac_sha256_271_msg, .msglen = 24, .tag = hmac_sha256_271_tag, .taglen = 16, .result = 1, .comment = ", tcId is 100 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 272 for HMAC, tcId is 101 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_272_key[] = { 0x96, 0xe1, 0xe4, 0x89, 0x6f, 0xb2, 0xcd, 0x05, 0xf1, 0x33, 0xa6, 0xa1, 0x00, 0xbc, 0x56, 0x09, 0xa7, 0xac, 0x3c, 0xa6, 0xd8, 0x17, 0x21, 0xe9, 0x22, 0xda, 0xdd, 0x69, 0xad, 0x07, 0xa8, 0x92, }; static const unsigned char hmac_sha256_272_msg[] = { 0x91, 0xa1, 0x7e, 0x4d, 0xfc, 0xc3, 0x16, 0x6a, 0x1a, 0xdd, 0x26, 0xff, 0x0e, 0x7c, 0x12, 0x05, 0x6e, 0x8a, 0x65, 0x4f, 0x28, 0xa6, 0xde, 0x24, 0xf4, 0xba, 0x73, 0x9c, 0xeb, 0x5b, 0x5b, 0x18, }; static const unsigned char hmac_sha256_272_tag[] = { 0x95, 0x24, 0x3e, 0xb1, 0xa9, 0xd4, 0x48, 0x17, 0x4a, 0xe4, 0xfc, 0xcf, 0x4a, 0x53, 0xeb, 0xfe, }; static const wycheproof_hmac_test hmac_sha256_272 = { .name = "hmac_sha256_272", .hash = SHA256, .key = hmac_sha256_272_key, .keylen = 32, .msg = hmac_sha256_272_msg, .msglen = 32, .tag = hmac_sha256_272_tag, .taglen = 16, .result = 1, .comment = ", tcId is 101 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 273 for HMAC, tcId is 102 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_273_key[] = { 0x41, 0x20, 0x15, 0x67, 0xbe, 0x4e, 0x6e, 0xa0, 0x6d, 0xe2, 0x29, 0x5f, 0xd0, 0xe6, 0xe8, 0xa7, 0xd8, 0x62, 0xbb, 0x57, 0x31, 0x18, 0x94, 0xf5, 0x25, 0xd8, 0xad, 0xea, 0xbb, 0xa4, 0xa3, 0xe4, }; static const unsigned char hmac_sha256_273_msg[] = { 0x58, 0xc8, 0xc7, 0x3b, 0xdd, 0x3f, 0x35, 0x0c, 0x97, 0x47, 0x78, 0x16, 0xea, 0xe4, 0xd0, 0x78, 0x9c, 0x93, 0x69, 0xc0, 0xe9, 0x9c, 0x24, 0x89, 0x02, 0xc7, 0x00, 0xbc, 0x29, 0xed, 0x98, 0x64, 0x25, 0x98, 0x5e, 0xb3, 0xfa, 0x55, 0x70, 0x9b, 0x73, 0xbf, 0x62, 0x0c, 0xd9, 0xb1, 0xcb, }; static const unsigned char hmac_sha256_273_tag[] = { 0x34, 0x33, 0x67, 0x20, 0x7f, 0x71, 0x42, 0x5d, 0x8f, 0x81, 0xf3, 0x11, 0x0b, 0x04, 0x05, 0xf6, }; static const wycheproof_hmac_test hmac_sha256_273 = { .name = "hmac_sha256_273", .hash = SHA256, .key = hmac_sha256_273_key, .keylen = 32, .msg = hmac_sha256_273_msg, .msglen = 47, .tag = hmac_sha256_273_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 274 for HMAC, tcId is 103 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_274_key[] = { 0x64, 0x9e, 0x37, 0x3e, 0x68, 0x1e, 0xf5, 0x2e, 0x3c, 0x10, 0xac, 0x26, 0x54, 0x84, 0x75, 0x09, 0x32, 0xa9, 0x91, 0x8f, 0x28, 0xfb, 0x82, 0x4f, 0x7c, 0xb5, 0x0a, 0xda, 0xb3, 0x97, 0x81, 0xfe, }; static const unsigned char hmac_sha256_274_msg[] = { 0x39, 0xb4, 0x47, 0xbd, 0x3a, 0x01, 0x98, 0x3c, 0x1c, 0xb7, 0x61, 0xb4, 0x56, 0xd6, 0x90, 0x00, 0x94, 0x8c, 0xeb, 0x87, 0x05, 0x62, 0xa5, 0x36, 0x12, 0x6a, 0x0d, 0x18, 0xa8, 0xe7, 0xe4, 0x9b, 0x16, 0xde, 0x8f, 0xe6, 0x72, 0xf1, 0x3d, 0x08, 0x08, 0xd8, 0xb7, 0xd9, 0x57, 0x89, 0x99, 0x17, }; static const unsigned char hmac_sha256_274_tag[] = { 0x15, 0x16, 0x18, 0xee, 0xc4, 0xf5, 0x03, 0xf3, 0xb6, 0x3b, 0x53, 0x9d, 0xe0, 0xa5, 0x89, 0x66, }; static const wycheproof_hmac_test hmac_sha256_274 = { .name = "hmac_sha256_274", .hash = SHA256, .key = hmac_sha256_274_key, .keylen = 32, .msg = hmac_sha256_274_msg, .msglen = 48, .tag = hmac_sha256_274_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 275 for HMAC, tcId is 104 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_275_key[] = { 0x7b, 0x0d, 0x23, 0x7f, 0x7b, 0x53, 0x6e, 0x2c, 0x69, 0x50, 0x99, 0x0e, 0x61, 0xb3, 0x61, 0xb3, 0x84, 0x33, 0x3d, 0xda, 0x69, 0x00, 0x45, 0xc5, 0x91, 0x32, 0x1a, 0x4e, 0x3f, 0x79, 0x74, 0x7f, }; static const unsigned char hmac_sha256_275_msg[] = { 0x3d, 0x62, 0x83, 0xd1, 0x1c, 0x02, 0x19, 0xb5, 0x25, 0x62, 0x0e, 0x9b, 0xf5, 0xb9, 0xfd, 0x88, 0x7d, 0x3f, 0x0f, 0x70, 0x7a, 0xcb, 0x1f, 0xbd, 0xff, 0xab, 0x0d, 0x97, 0xa5, 0xc6, 0xd0, 0x7f, 0xc5, 0x47, 0x76, 0x2e, 0x0e, 0x7d, 0xd7, 0xc4, 0x3a, 0xd3, 0x5f, 0xab, 0x1c, 0x79, 0x0f, 0x80, 0x47, }; static const unsigned char hmac_sha256_275_tag[] = { 0xce, 0x20, 0x1c, 0x0d, 0xcf, 0xdc, 0x3f, 0x2b, 0xef, 0x36, 0x06, 0x09, 0xa3, 0x1f, 0xb1, 0x9e, }; static const wycheproof_hmac_test hmac_sha256_275 = { .name = "hmac_sha256_275", .hash = SHA256, .key = hmac_sha256_275_key, .keylen = 32, .msg = hmac_sha256_275_msg, .msglen = 49, .tag = hmac_sha256_275_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 276 for HMAC, tcId is 105 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_276_key[] = { 0x17, 0xc9, 0x26, 0x63, 0x74, 0x1f, 0x01, 0x2e, 0x5b, 0xb6, 0x71, 0x4e, 0x61, 0x4c, 0x2d, 0x15, 0x59, 0x48, 0x61, 0x7f, 0x10, 0x93, 0x62, 0x69, 0xd9, 0x54, 0xc5, 0x8a, 0xba, 0x2a, 0xe6, 0x2d, }; static const unsigned char hmac_sha256_276_msg[] = { 0x7f, 0xdd, 0x6a, 0x15, 0xc8, 0x61, 0xd0, 0x31, 0x3f, 0x66, 0x35, 0xd7, 0x7d, 0xc5, 0x5e, 0x11, 0x5f, 0xf1, 0x8c, 0x8a, 0xb0, 0x63, 0xb5, 0xd0, 0x3e, 0xab, 0x47, 0x2e, 0xec, 0xa8, 0x7a, 0x37, 0x81, 0x88, 0xf2, 0x58, 0x13, 0x51, 0x5c, 0xf9, 0x0b, 0x6c, 0xff, 0xa9, 0x4a, 0x8f, 0xf3, 0x6b, 0x29, 0xd6, 0x56, 0x03, 0xea, 0xb3, 0xfb, 0xd2, 0xaa, 0x95, 0x00, 0xb2, 0x61, 0xe1, 0x84, 0x04, 0x98, 0x93, 0xdc, 0x6c, 0xa2, 0x01, 0x0b, 0xec, 0xac, 0x16, 0x30, 0x53, 0xf2, 0x11, 0x07, 0x0b, 0xdd, 0xa6, 0x21, 0xb8, 0xbd, 0x8a, 0xf7, 0x7e, 0x45, 0x02, 0x68, 0x60, 0x3b, 0x52, 0xdb, 0x34, 0xc9, 0x0b, 0xe8, 0x36, 0xdf, 0xeb, 0xdd, 0xef, 0x42, 0x30, 0x3f, 0x72, 0x4e, 0x63, 0xbf, 0x0f, }; static const unsigned char hmac_sha256_276_tag[] = { 0x76, 0xe8, 0xdf, 0xd9, 0x4d, 0xb4, 0xaf, 0x9d, 0x79, 0xd9, 0x71, 0x8e, 0xec, 0x46, 0xcb, 0x2d, }; static const wycheproof_hmac_test hmac_sha256_276 = { .name = "hmac_sha256_276", .hash = SHA256, .key = hmac_sha256_276_key, .keylen = 32, .msg = hmac_sha256_276_msg, .msglen = 112, .tag = hmac_sha256_276_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 277 for HMAC, tcId is 106 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_277_key[] = { 0x42, 0x4c, 0x6b, 0x22, 0x60, 0x6f, 0xcc, 0x09, 0x4a, 0xe8, 0x2f, 0xc5, 0xd3, 0xcb, 0xe4, 0x84, 0x17, 0x4c, 0x22, 0x11, 0xb3, 0xec, 0x77, 0x80, 0x91, 0xca, 0xc3, 0x4a, 0x8e, 0x38, 0xa1, 0x52, }; static const unsigned char hmac_sha256_277_msg[] = { 0xd9, 0x6f, 0xf0, 0x62, 0xe2, 0x49, 0x0e, 0x8e, 0x0c, 0x54, 0xc5, 0xa8, 0xb8, 0x9e, 0x85, 0xb2, 0x5a, 0x66, 0xd9, 0x3d, 0x7c, 0x2b, 0x93, 0xbd, 0xfe, 0xf8, 0x46, 0xb7, 0x0d, 0x38, 0x67, 0x27, 0x46, 0xa4, 0xb9, 0x88, 0xd0, 0x8f, 0x15, 0xa5, 0xc5, 0x27, 0xca, 0x4f, 0x2c, 0x80, 0xe5, 0x3f, 0x7c, 0x6a, 0xc0, 0x52, 0x1b, 0xc5, 0x7e, 0xbe, 0x38, 0x20, 0x91, 0x80, 0xcb, 0xf9, 0x34, 0xe0, 0xbb, 0xeb, 0x58, 0xcf, 0xb6, 0x3d, 0x75, 0xda, 0x64, 0xaf, 0x41, 0xd0, 0x9c, 0xe1, 0x74, 0xaf, 0x18, 0x96, 0xf4, 0x25, 0x22, 0x91, 0x0f, 0xce, 0xd3, 0x5e, 0xa0, 0x00, 0x40, 0x2e, 0x95, 0xfd, 0x3a, 0xc7, 0xaa, 0x6d, 0x5e, 0x0a, 0x6b, 0x53, 0x3b, 0x08, 0x79, 0xbc, 0x46, 0x60, 0x19, 0xb3, 0xa5, 0xe6, 0xb1, 0x6e, 0x4b, 0xd1, 0xea, 0x6c, 0xdf, 0xc9, 0xcc, 0xc1, 0xd6, 0xf0, 0xf0, }; static const unsigned char hmac_sha256_277_tag[] = { 0xed, 0xa7, 0x09, 0xc7, 0x00, 0x97, 0x14, 0xc3, 0x72, 0xd0, 0xd6, 0xa6, 0x3d, 0xfd, 0xe4, 0x69, }; static const wycheproof_hmac_test hmac_sha256_277 = { .name = "hmac_sha256_277", .hash = SHA256, .key = hmac_sha256_277_key, .keylen = 32, .msg = hmac_sha256_277_msg, .msglen = 127, .tag = hmac_sha256_277_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 278 for HMAC, tcId is 107 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_278_key[] = { 0x15, 0xd5, 0x53, 0xc8, 0xda, 0x43, 0x3d, 0x53, 0xcd, 0xc7, 0xf1, 0x50, 0x87, 0xa7, 0x03, 0x49, 0xca, 0xab, 0x57, 0xb3, 0x79, 0xa4, 0x07, 0x89, 0x28, 0xce, 0x9b, 0x99, 0x30, 0x2e, 0x31, 0xa6, }; static const unsigned char hmac_sha256_278_msg[] = { 0xd6, 0xc0, 0xc5, 0x3b, 0x73, 0xf7, 0x4f, 0xb4, 0x26, 0xad, 0xfd, 0xc1, 0x43, 0xd7, 0x0d, 0xb7, 0xf7, 0xa8, 0xf8, 0xed, 0x32, 0xa2, 0xfa, 0xef, 0x26, 0x3c, 0xf9, 0xab, 0x11, 0x75, 0x37, 0xb6, 0xb9, 0xd1, 0x72, 0x8b, 0xd1, 0x00, 0x0c, 0x1f, 0x28, 0x90, 0x6c, 0x6c, 0xe6, 0xad, 0x21, 0x86, 0x2b, 0xfa, 0x4d, 0x68, 0x9c, 0x1a, 0x8e, 0xbe, 0x38, 0x68, 0xb9, 0x92, 0x09, 0x8b, 0x7f, 0x98, 0x1b, 0x2a, 0xf5, 0x18, 0x9a, 0x6a, 0xde, 0xdf, 0xf5, 0x3a, 0x6c, 0x70, 0xc8, 0x36, 0x93, 0xf5, 0xc8, 0xd6, 0x38, 0x5a, 0x9a, 0x8a, 0x4d, 0xca, 0x01, 0x7c, 0x57, 0x16, 0xac, 0x4d, 0x5b, 0x97, 0x65, 0xc5, 0xca, 0x2a, 0xb5, 0xf9, 0x86, 0x7e, 0x02, 0x79, 0x51, 0x98, 0xc0, 0xb9, 0x52, 0x7e, 0x07, 0xd0, 0x8a, 0xf5, 0x2d, 0xbc, 0xb9, 0x1c, 0xeb, 0x3d, 0x8b, 0x41, 0x2a, 0x2b, 0x24, 0x02, }; static const unsigned char hmac_sha256_278_tag[] = { 0x8c, 0xa1, 0x40, 0x2b, 0xf8, 0xfc, 0x23, 0x44, 0x2a, 0xc2, 0x06, 0x7b, 0xe9, 0x25, 0xb8, 0x28, }; static const wycheproof_hmac_test hmac_sha256_278 = { .name = "hmac_sha256_278", .hash = SHA256, .key = hmac_sha256_278_key, .keylen = 32, .msg = hmac_sha256_278_msg, .msglen = 128, .tag = hmac_sha256_278_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 279 for HMAC, tcId is 108 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_279_key[] = { 0xff, 0xe5, 0x59, 0x46, 0x8a, 0x10, 0x31, 0xdf, 0xb3, 0xce, 0xd2, 0xe3, 0x81, 0xe7, 0x4b, 0x58, 0x21, 0xa3, 0x6d, 0x9a, 0xbf, 0x5f, 0x2e, 0x59, 0x89, 0x5a, 0x7f, 0xdc, 0xa0, 0xfa, 0x56, 0xa0, }; static const unsigned char hmac_sha256_279_msg[] = { 0x23, 0x88, 0x99, 0xa8, 0x4a, 0x3c, 0xf1, 0x52, 0x02, 0xa1, 0xfb, 0xef, 0x47, 0x41, 0xe1, 0x33, 0xfb, 0x24, 0xc0, 0x09, 0xa0, 0xcd, 0x83, 0x85, 0x4c, 0x6d, 0x1d, 0x7c, 0x92, 0x66, 0xd4, 0xc3, 0xea, 0xfe, 0x6d, 0x1d, 0xfc, 0x18, 0xf1, 0x38, 0x45, 0xcc, 0xda, 0xd7, 0xfe, 0x27, 0x76, 0x27, 0xb5, 0xfd, 0x5f, 0xf2, 0x55, 0x5c, 0xe6, 0xdf, 0xde, 0x1e, 0xe0, 0x78, 0x54, 0x0a, 0x0a, 0x35, 0x90, 0xc6, 0xd9, 0xbf, 0x2f, 0xb6, 0x3b, 0xa9, 0xaf, 0xbe, 0x93, 0x80, 0xe7, 0x97, 0xbe, 0x7c, 0xd0, 0x17, 0x64, 0x5c, 0x5a, 0x36, 0x13, 0xee, 0xf3, 0x8e, 0xf8, 0x9e, 0x3b, 0x74, 0x61, 0xe6, 0xe7, 0x00, 0xff, 0x2b, 0x4d, 0xee, 0xf5, 0x63, 0x6c, 0x9d, 0x21, 0x98, 0xb1, 0x43, 0xf7, 0x97, 0xca, 0x18, 0x20, 0xa3, 0xdc, 0xc5, 0xd4, 0x62, 0xeb, 0xf4, 0xa8, 0xc4, 0xc0, 0x9e, 0xb2, 0x02, 0xa2, 0x35, 0x92, 0xeb, 0x95, 0x24, 0x08, 0x2c, 0x79, 0xad, 0xda, 0x8f, 0xcd, 0x56, 0xd2, 0x56, 0x04, 0x1a, 0x26, 0xbf, 0x8f, 0x52, 0x39, 0x62, 0xba, 0x91, 0x1c, 0xe5, 0xa5, 0x78, 0x65, 0x70, 0xd6, 0x5b, 0xe3, 0xc4, 0xdf, 0x72, 0x2e, 0xd8, 0x83, 0x03, 0x02, 0x06, 0x5f, 0xeb, 0xdf, 0x94, 0x47, 0x15, 0x29, 0x8a, 0x1f, 0xbb, 0x7d, 0x10, 0xb6, 0x8d, 0x7d, 0xa2, 0xbf, 0x88, 0x93, 0x24, 0x31, 0x4c, 0xe5, 0x1e, 0x81, 0x5c, 0x7f, 0xbf, 0x03, 0xaa, 0x0a, 0x83, 0x58, 0xaf, 0xf3, 0xa8, 0x6e, 0xb7, 0xa3, 0x3f, 0x9a, 0x49, 0x23, 0x66, 0x0d, 0xb3, 0x04, 0x7e, 0x79, 0x3b, 0xeb, 0xb0, 0xc6, 0x91, 0x8f, 0x43, 0x95, 0xd4, 0x00, 0x38, 0x17, 0x23, 0xfd, 0xae, 0x28, 0x32, 0xc3, 0x6e, 0xfc, 0x8e, 0x36, 0x8a, 0x68, 0xf3, 0x0f, 0x63, 0x51, 0xc3, 0xbc, 0x94, 0x2c, 0xd5, 0x60, }; static const unsigned char hmac_sha256_279_tag[] = { 0xa8, 0x30, 0xb3, 0x13, 0xf4, 0x93, 0x6d, 0xea, 0x56, 0xa3, 0xae, 0xfd, 0x6a, 0x3e, 0xbe, 0x7d, }; static const wycheproof_hmac_test hmac_sha256_279 = { .name = "hmac_sha256_279", .hash = SHA256, .key = hmac_sha256_279_key, .keylen = 32, .msg = hmac_sha256_279_msg, .msglen = 255, .tag = hmac_sha256_279_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 280 for HMAC, tcId is 109 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_280_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_280_tag[] = { 0xd2, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_280 = { .name = "hmac_sha256_280", .hash = SHA256, .key = hmac_sha256_280_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_280_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 281 for HMAC, tcId is 110 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_281_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_281_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_281_tag[] = { 0xd9, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_281 = { .name = "hmac_sha256_281", .hash = SHA256, .key = hmac_sha256_281_key, .keylen = 32, .msg = hmac_sha256_281_msg, .msglen = 16, .tag = hmac_sha256_281_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 282 for HMAC, tcId is 111 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_282_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_282_tag[] = { 0xd1, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_282 = { .name = "hmac_sha256_282", .hash = SHA256, .key = hmac_sha256_282_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_282_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 283 for HMAC, tcId is 112 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_283_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_283_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_283_tag[] = { 0xda, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_283 = { .name = "hmac_sha256_283", .hash = SHA256, .key = hmac_sha256_283_key, .keylen = 32, .msg = hmac_sha256_283_msg, .msglen = 16, .tag = hmac_sha256_283_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 284 for HMAC, tcId is 113 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_284_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_284_tag[] = { 0x53, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_284 = { .name = "hmac_sha256_284", .hash = SHA256, .key = hmac_sha256_284_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_284_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 285 for HMAC, tcId is 114 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_285_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_285_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_285_tag[] = { 0x58, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_285 = { .name = "hmac_sha256_285", .hash = SHA256, .key = hmac_sha256_285_key, .keylen = 32, .msg = hmac_sha256_285_msg, .msglen = 16, .tag = hmac_sha256_285_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 286 for HMAC, tcId is 115 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_286_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_286_tag[] = { 0xd3, 0x8a, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_286 = { .name = "hmac_sha256_286", .hash = SHA256, .key = hmac_sha256_286_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_286_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 287 for HMAC, tcId is 116 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_287_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_287_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_287_tag[] = { 0xd8, 0xb8, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_287 = { .name = "hmac_sha256_287", .hash = SHA256, .key = hmac_sha256_287_key, .keylen = 32, .msg = hmac_sha256_287_msg, .msglen = 16, .tag = hmac_sha256_287_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 288 for HMAC, tcId is 117 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_288_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_288_tag[] = { 0xd3, 0x8b, 0x42, 0x89, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_288 = { .name = "hmac_sha256_288", .hash = SHA256, .key = hmac_sha256_288_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_288_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 289 for HMAC, tcId is 118 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_289_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_289_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_289_tag[] = { 0xd8, 0xb9, 0x9f, 0xa7, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_289 = { .name = "hmac_sha256_289", .hash = SHA256, .key = hmac_sha256_289_key, .keylen = 32, .msg = hmac_sha256_289_msg, .msglen = 16, .tag = hmac_sha256_289_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 290 for HMAC, tcId is 119 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_290_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_290_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6c, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_290 = { .name = "hmac_sha256_290", .hash = SHA256, .key = hmac_sha256_290_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_290_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 291 for HMAC, tcId is 120 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_291_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_291_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_291_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x08, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_291 = { .name = "hmac_sha256_291", .hash = SHA256, .key = hmac_sha256_291_key, .keylen = 32, .msg = hmac_sha256_291_msg, .msglen = 16, .tag = hmac_sha256_291_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 292 for HMAC, tcId is 121 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_292_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_292_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6f, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_292 = { .name = "hmac_sha256_292", .hash = SHA256, .key = hmac_sha256_292_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_292_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 293 for HMAC, tcId is 122 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_293_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_293_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_293_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x0b, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_293 = { .name = "hmac_sha256_293", .hash = SHA256, .key = hmac_sha256_293_key, .keylen = 32, .msg = hmac_sha256_293_msg, .msglen = 16, .tag = hmac_sha256_293_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 294 for HMAC, tcId is 123 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_294_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_294_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_294 = { .name = "hmac_sha256_294", .hash = SHA256, .key = hmac_sha256_294_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_294_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 295 for HMAC, tcId is 124 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_295_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_295_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_295_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_295 = { .name = "hmac_sha256_295", .hash = SHA256, .key = hmac_sha256_295_key, .keylen = 32, .msg = hmac_sha256_295_msg, .msglen = 16, .tag = hmac_sha256_295_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 296 for HMAC, tcId is 125 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_296_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_296_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x83, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_296 = { .name = "hmac_sha256_296", .hash = SHA256, .key = hmac_sha256_296_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_296_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 297 for HMAC, tcId is 126 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_297_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_297_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_297_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x16, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_297 = { .name = "hmac_sha256_297", .hash = SHA256, .key = hmac_sha256_297_key, .keylen = 32, .msg = hmac_sha256_297_msg, .msglen = 16, .tag = hmac_sha256_297_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 298 for HMAC, tcId is 127 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_298_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_298_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x02, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_298 = { .name = "hmac_sha256_298", .hash = SHA256, .key = hmac_sha256_298_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_298_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 299 for HMAC, tcId is 128 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_299_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_299_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_299_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x97, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_299 = { .name = "hmac_sha256_299", .hash = SHA256, .key = hmac_sha256_299_key, .keylen = 32, .msg = hmac_sha256_299_msg, .msglen = 16, .tag = hmac_sha256_299_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 300 for HMAC, tcId is 129 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_300_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_300_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x4b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_300 = { .name = "hmac_sha256_300", .hash = SHA256, .key = hmac_sha256_300_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_300_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 301 for HMAC, tcId is 130 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_301_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_301_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_301_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x0c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_301 = { .name = "hmac_sha256_301", .hash = SHA256, .key = hmac_sha256_301_key, .keylen = 32, .msg = hmac_sha256_301_msg, .msglen = 16, .tag = hmac_sha256_301_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 302 for HMAC, tcId is 131 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_302_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_302_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x45, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_302 = { .name = "hmac_sha256_302", .hash = SHA256, .key = hmac_sha256_302_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_302_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 303 for HMAC, tcId is 132 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_303_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_303_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_303_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbf, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_303 = { .name = "hmac_sha256_303", .hash = SHA256, .key = hmac_sha256_303_key, .keylen = 32, .msg = hmac_sha256_303_msg, .msglen = 16, .tag = hmac_sha256_303_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 304 for HMAC, tcId is 133 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_304_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_304_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd4, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_304 = { .name = "hmac_sha256_304", .hash = SHA256, .key = hmac_sha256_304_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_304_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 305 for HMAC, tcId is 134 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_305_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_305_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_305_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x83, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_305 = { .name = "hmac_sha256_305", .hash = SHA256, .key = hmac_sha256_305_key, .keylen = 32, .msg = hmac_sha256_305_msg, .msglen = 16, .tag = hmac_sha256_305_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 306 for HMAC, tcId is 135 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_306_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_306_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd7, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_306 = { .name = "hmac_sha256_306", .hash = SHA256, .key = hmac_sha256_306_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_306_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 307 for HMAC, tcId is 136 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_307_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_307_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_307_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x80, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_307 = { .name = "hmac_sha256_307", .hash = SHA256, .key = hmac_sha256_307_key, .keylen = 32, .msg = hmac_sha256_307_msg, .msglen = 16, .tag = hmac_sha256_307_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 308 for HMAC, tcId is 137 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_308_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_308_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0x55, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_308 = { .name = "hmac_sha256_308", .hash = SHA256, .key = hmac_sha256_308_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_308_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 309 for HMAC, tcId is 138 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_309_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_309_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_309_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x02, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_309 = { .name = "hmac_sha256_309", .hash = SHA256, .key = hmac_sha256_309_key, .keylen = 32, .msg = hmac_sha256_309_msg, .msglen = 16, .tag = hmac_sha256_309_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 310 for HMAC, tcId is 139 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_310_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_310_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe6, }; static const wycheproof_hmac_test hmac_sha256_310 = { .name = "hmac_sha256_310", .hash = SHA256, .key = hmac_sha256_310_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_310_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 120 in tag, tcId is 139 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 311 for HMAC, tcId is 140 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_311_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_311_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_311_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x28, }; static const wycheproof_hmac_test hmac_sha256_311 = { .name = "hmac_sha256_311", .hash = SHA256, .key = hmac_sha256_311_key, .keylen = 32, .msg = hmac_sha256_311_msg, .msglen = 16, .tag = hmac_sha256_311_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 120 in tag, tcId is 140 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 312 for HMAC, tcId is 141 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_312_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_312_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe5, }; static const wycheproof_hmac_test hmac_sha256_312 = { .name = "hmac_sha256_312", .hash = SHA256, .key = hmac_sha256_312_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_312_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 121 in tag, tcId is 141 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 313 for HMAC, tcId is 142 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_313_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_313_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_313_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x2b, }; static const wycheproof_hmac_test hmac_sha256_313 = { .name = "hmac_sha256_313", .hash = SHA256, .key = hmac_sha256_313_key, .keylen = 32, .msg = hmac_sha256_313_msg, .msglen = 16, .tag = hmac_sha256_313_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 121 in tag, tcId is 142 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 314 for HMAC, tcId is 143 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_314_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_314_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xa7, }; static const wycheproof_hmac_test hmac_sha256_314 = { .name = "hmac_sha256_314", .hash = SHA256, .key = hmac_sha256_314_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_314_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 126 in tag, tcId is 143 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 315 for HMAC, tcId is 144 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_315_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_315_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_315_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x69, }; static const wycheproof_hmac_test hmac_sha256_315 = { .name = "hmac_sha256_315", .hash = SHA256, .key = hmac_sha256_315_key, .keylen = 32, .msg = hmac_sha256_315_msg, .msglen = 16, .tag = hmac_sha256_315_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 126 in tag, tcId is 144 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 316 for HMAC, tcId is 145 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_316_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_316_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0x67, }; static const wycheproof_hmac_test hmac_sha256_316 = { .name = "hmac_sha256_316", .hash = SHA256, .key = hmac_sha256_316_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_316_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 127 in tag, tcId is 145 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 317 for HMAC, tcId is 146 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_317_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_317_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_317_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0xa9, }; static const wycheproof_hmac_test hmac_sha256_317 = { .name = "hmac_sha256_317", .hash = SHA256, .key = hmac_sha256_317_key, .keylen = 32, .msg = hmac_sha256_317_msg, .msglen = 16, .tag = hmac_sha256_317_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 127 in tag, tcId is 146 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 318 for HMAC, tcId is 147 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_318_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_318_tag[] = { 0xd2, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0x5f, 0x83, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_318 = { .name = "hmac_sha256_318", .hash = SHA256, .key = hmac_sha256_318_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_318_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 319 for HMAC, tcId is 148 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_319_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_319_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_319_tag[] = { 0xd9, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0x74, 0x16, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_319 = { .name = "hmac_sha256_319", .hash = SHA256, .key = hmac_sha256_319_key, .keylen = 32, .msg = hmac_sha256_319_msg, .msglen = 16, .tag = hmac_sha256_319_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 320 for HMAC, tcId is 149 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_320_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_320_tag[] = { 0xd3, 0x8b, 0x42, 0x89, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0xe7, }; static const wycheproof_hmac_test hmac_sha256_320 = { .name = "hmac_sha256_320", .hash = SHA256, .key = hmac_sha256_320_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_320_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 321 for HMAC, tcId is 150 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_321_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_321_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_321_tag[] = { 0xd8, 0xb9, 0x9f, 0xa7, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0x29, }; static const wycheproof_hmac_test hmac_sha256_321 = { .name = "hmac_sha256_321", .hash = SHA256, .key = hmac_sha256_321_key, .keylen = 32, .msg = hmac_sha256_321_msg, .msglen = 16, .tag = hmac_sha256_321_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 322 for HMAC, tcId is 151 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_322_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_322_tag[] = { 0xd3, 0x8b, 0x42, 0x09, 0x6d, 0x80, 0xf4, 0xdf, 0x82, 0x6b, 0x44, 0xa9, 0xd5, 0x60, 0x7d, 0x67, }; static const wycheproof_hmac_test hmac_sha256_322 = { .name = "hmac_sha256_322", .hash = SHA256, .key = hmac_sha256_322_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_322_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 323 for HMAC, tcId is 152 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_323_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_323_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_323_tag[] = { 0xd8, 0xb9, 0x9f, 0x27, 0x09, 0xa3, 0xca, 0xf4, 0x17, 0x2c, 0xbe, 0x93, 0x82, 0x4c, 0x1f, 0xa9, }; static const wycheproof_hmac_test hmac_sha256_323 = { .name = "hmac_sha256_323", .hash = SHA256, .key = hmac_sha256_323_key, .keylen = 32, .msg = hmac_sha256_323_msg, .msglen = 16, .tag = hmac_sha256_323_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 324 for HMAC, tcId is 153 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_324_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_324_tag[] = { 0x2c, 0x74, 0xbd, 0xf6, 0x92, 0x7f, 0x0b, 0xa0, 0x7d, 0x94, 0xbb, 0x56, 0x2a, 0x9f, 0x82, 0x18, }; static const wycheproof_hmac_test hmac_sha256_324 = { .name = "hmac_sha256_324", .hash = SHA256, .key = hmac_sha256_324_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_324_tag, .taglen = 16, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 325 for HMAC, tcId is 154 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_325_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_325_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_325_tag[] = { 0x27, 0x46, 0x60, 0xd8, 0xf6, 0x5c, 0x35, 0x8b, 0xe8, 0xd3, 0x41, 0x6c, 0x7d, 0xb3, 0xe0, 0xd6, }; static const wycheproof_hmac_test hmac_sha256_325 = { .name = "hmac_sha256_325", .hash = SHA256, .key = hmac_sha256_325_key, .keylen = 32, .msg = hmac_sha256_325_msg, .msglen = 16, .tag = hmac_sha256_325_tag, .taglen = 16, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 326 for HMAC, tcId is 155 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_326_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_326_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha256_326 = { .name = "hmac_sha256_326", .hash = SHA256, .key = hmac_sha256_326_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_326_tag, .taglen = 16, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 327 for HMAC, tcId is 156 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_327_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_327_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_327_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha256_327 = { .name = "hmac_sha256_327", .hash = SHA256, .key = hmac_sha256_327_key, .keylen = 32, .msg = hmac_sha256_327_msg, .msglen = 16, .tag = hmac_sha256_327_tag, .taglen = 16, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 328 for HMAC, tcId is 157 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_328_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_328_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha256_328 = { .name = "hmac_sha256_328", .hash = SHA256, .key = hmac_sha256_328_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_328_tag, .taglen = 16, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 329 for HMAC, tcId is 158 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_329_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_329_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_329_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha256_329 = { .name = "hmac_sha256_329", .hash = SHA256, .key = hmac_sha256_329_key, .keylen = 32, .msg = hmac_sha256_329_msg, .msglen = 16, .tag = hmac_sha256_329_tag, .taglen = 16, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 330 for HMAC, tcId is 159 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_330_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_330_tag[] = { 0x53, 0x0b, 0xc2, 0x89, 0xed, 0x00, 0x74, 0xdf, 0x02, 0xeb, 0xc4, 0x29, 0x55, 0xe0, 0xfd, 0x67, }; static const wycheproof_hmac_test hmac_sha256_330 = { .name = "hmac_sha256_330", .hash = SHA256, .key = hmac_sha256_330_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_330_tag, .taglen = 16, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 331 for HMAC, tcId is 160 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_331_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_331_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_331_tag[] = { 0x58, 0x39, 0x1f, 0xa7, 0x89, 0x23, 0x4a, 0xf4, 0x97, 0xac, 0x3e, 0x13, 0x02, 0xcc, 0x9f, 0xa9, }; static const wycheproof_hmac_test hmac_sha256_331 = { .name = "hmac_sha256_331", .hash = SHA256, .key = hmac_sha256_331_key, .keylen = 32, .msg = hmac_sha256_331_msg, .msglen = 16, .tag = hmac_sha256_331_tag, .taglen = 16, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 332 for HMAC, tcId is 161 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_332_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_332_tag[] = { 0xd2, 0x8a, 0x43, 0x08, 0x6c, 0x81, 0xf5, 0x5e, 0x83, 0x6a, 0x45, 0xa8, 0xd4, 0x61, 0x7c, 0xe6, }; static const wycheproof_hmac_test hmac_sha256_332 = { .name = "hmac_sha256_332", .hash = SHA256, .key = hmac_sha256_332_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_332_tag, .taglen = 16, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 333 for HMAC, tcId is 162 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_333_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha256_333_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha256_333_tag[] = { 0xd9, 0xb8, 0x9e, 0x26, 0x08, 0xa2, 0xcb, 0x75, 0x16, 0x2d, 0xbf, 0x92, 0x83, 0x4d, 0x1e, 0x28, }; static const wycheproof_hmac_test hmac_sha256_333 = { .name = "hmac_sha256_333", .hash = SHA256, .key = hmac_sha256_333_key, .keylen = 32, .msg = hmac_sha256_333_msg, .msglen = 16, .tag = hmac_sha256_333_tag, .taglen = 16, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 334 for HMAC, tcId is 163 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_334_key[] = { 0xa3, 0x49, 0xac, 0x0a, 0x9f, 0x9f, 0x74, 0xe4, 0x8e, 0x09, 0x9c, 0xc3, 0xdb, 0xf9, 0xa9, 0xc9, }; static const unsigned char hmac_sha256_334_tag[] = { 0x3a, 0x84, 0x37, 0xb8, 0x77, 0xb7, 0x5c, 0xc0, 0x8a, 0x4d, 0x8d, 0x75, 0x59, 0xa8, 0xfc, 0x68, 0x69, 0xa5, 0x8c, 0x71, 0x3d, 0xa6, 0x3d, 0x1d, 0x4b, 0x35, 0x0d, 0x59, 0xb5, 0x97, 0xe3, 0x0c, }; static const wycheproof_hmac_test hmac_sha256_334 = { .name = "hmac_sha256_334", .hash = SHA256, .key = hmac_sha256_334_key, .keylen = 16, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_334_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 335 for HMAC, tcId is 164 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_335_key[] = { 0xac, 0x68, 0x6b, 0xa0, 0xf1, 0xa5, 0x1b, 0x4e, 0xc4, 0xf0, 0xb3, 0x04, 0x92, 0xb7, 0xf5, 0x56, }; static const unsigned char hmac_sha256_335_msg[] = { 0x2f, 0xa4, 0x3a, 0x14, 0xae, 0x50, 0x05, 0x07, 0xde, 0xb9, 0x5a, 0xb5, 0xbd, 0x32, 0xb0, 0xfe, }; static const unsigned char hmac_sha256_335_tag[] = { 0x00, 0x85, 0x32, 0xa5, 0x3d, 0x0c, 0x0a, 0xb2, 0x20, 0x27, 0xae, 0x24, 0x90, 0x23, 0x37, 0x53, 0x74, 0xe2, 0x23, 0x9b, 0x95, 0x96, 0x09, 0xe8, 0x33, 0x9b, 0x05, 0xa1, 0x57, 0x42, 0xa6, 0x75, }; static const wycheproof_hmac_test hmac_sha256_335 = { .name = "hmac_sha256_335", .hash = SHA256, .key = hmac_sha256_335_key, .keylen = 16, .msg = hmac_sha256_335_msg, .msglen = 16, .tag = hmac_sha256_335_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 336 for HMAC, tcId is 165 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_336_key[] = { 0x73, 0xef, 0x9e, 0xf1, 0xa4, 0x22, 0x5e, 0x51, 0xe3, 0xc1, 0xdb, 0x3a, 0xce, 0x1f, 0xa2, 0x4f, }; static const unsigned char hmac_sha256_336_msg[] = { 0xff, 0xad, 0x38, 0x0d, 0x9a, 0xab, 0xb0, 0xac, 0xed, 0xe5, 0xc1, 0xbf, 0x11, 0x29, 0x25, 0xcd, 0xfc, 0x3d, 0x37, 0x9f, 0xc2, 0x37, 0x6a, 0x4f, 0xe2, 0x64, 0x44, 0x90, 0xd0, 0x43, 0x0a, 0xc3, }; static const unsigned char hmac_sha256_336_tag[] = { 0x9c, 0x7c, 0xb9, 0xf7, 0xc2, 0x07, 0xec, 0x46, 0xd1, 0xe3, 0xc5, 0x57, 0x64, 0x73, 0x1c, 0x4a, 0xb5, 0xdd, 0xba, 0xe4, 0xe1, 0x40, 0x1e, 0x52, 0xa8, 0x95, 0xdf, 0x0c, 0xff, 0x47, 0x87, 0xc9, }; static const wycheproof_hmac_test hmac_sha256_336 = { .name = "hmac_sha256_336", .hash = SHA256, .key = hmac_sha256_336_key, .keylen = 16, .msg = hmac_sha256_336_msg, .msglen = 32, .tag = hmac_sha256_336_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 337 for HMAC, tcId is 166 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_337_key[] = { 0xe3, 0x4f, 0x15, 0xc7, 0xbd, 0x81, 0x99, 0x30, 0xfe, 0x9d, 0x66, 0xe0, 0xc1, 0x66, 0xe6, 0x1c, }; static const unsigned char hmac_sha256_337_tag[] = { 0x1d, 0x76, 0x5a, 0xb9, 0xe2, 0x98, 0x92, 0xf7, 0xbf, 0xec, 0x29, 0x75, 0xad, 0x4b, 0xc2, 0xdc, }; static const wycheproof_hmac_test hmac_sha256_337 = { .name = "hmac_sha256_337", .hash = SHA256, .key = hmac_sha256_337_key, .keylen = 16, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_337_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 338 for HMAC, tcId is 167 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_338_key[] = { 0xe0, 0x9e, 0xaa, 0x5a, 0x3f, 0x5e, 0x56, 0xd2, 0x79, 0xd5, 0xe7, 0xa0, 0x33, 0x73, 0xf6, 0xea, }; static const unsigned char hmac_sha256_338_msg[] = { 0xef, 0x4e, 0xab, 0x37, 0x18, 0x1f, 0x98, 0x42, 0x3e, 0x53, 0xe9, 0x47, 0xe7, 0x05, 0x0f, 0xd0, }; static const unsigned char hmac_sha256_338_tag[] = { 0xcf, 0xc1, 0x9e, 0xc0, 0x79, 0x02, 0xec, 0x8b, 0xe4, 0x89, 0x60, 0x6d, 0x8f, 0x40, 0xd1, 0x72, }; static const wycheproof_hmac_test hmac_sha256_338 = { .name = "hmac_sha256_338", .hash = SHA256, .key = hmac_sha256_338_key, .keylen = 16, .msg = hmac_sha256_338_msg, .msglen = 16, .tag = hmac_sha256_338_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 339 for HMAC, tcId is 168 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_339_key[] = { 0x9b, 0xd3, 0x90, 0x2e, 0xd0, 0x99, 0x6c, 0x86, 0x9b, 0x57, 0x22, 0x72, 0xe7, 0x6f, 0x38, 0x89, }; static const unsigned char hmac_sha256_339_msg[] = { 0xa7, 0xba, 0x19, 0xd4, 0x9e, 0xe1, 0xea, 0x02, 0xf0, 0x98, 0xaa, 0x8e, 0x30, 0xc7, 0x40, 0xd8, 0x93, 0xa4, 0x45, 0x6c, 0xcc, 0x29, 0x40, 0x40, 0x48, 0x4e, 0xd8, 0xa0, 0x0a, 0x55, 0xf9, 0x3e, }; static const unsigned char hmac_sha256_339_tag[] = { 0xac, 0x50, 0xad, 0xad, 0x97, 0x85, 0xa8, 0x9c, 0x72, 0x82, 0xd8, 0xab, 0x88, 0x1d, 0xc6, 0x15, }; static const wycheproof_hmac_test hmac_sha256_339 = { .name = "hmac_sha256_339", .hash = SHA256, .key = hmac_sha256_339_key, .keylen = 16, .msg = hmac_sha256_339_msg, .msglen = 32, .tag = hmac_sha256_339_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 340 for HMAC, tcId is 169 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_340_key[] = { 0x8a, 0x0c, 0x46, 0xeb, 0x8a, 0x29, 0x59, 0xe3, 0x98, 0x65, 0x33, 0x00, 0x79, 0x76, 0x33, 0x41, 0xe7, 0x43, 0x9d, 0xab, 0x14, 0x96, 0x94, 0xee, 0x57, 0xe0, 0xd6, 0x1e, 0xc7, 0x3d, 0x94, 0x7e, 0x1d, 0x53, 0x01, 0xcd, 0x97, 0x4e, 0x18, 0xa5, 0xe0, 0xd1, 0xcf, 0x0d, 0x2c, 0x37, 0xe8, 0xaa, 0xdd, 0x9f, 0xd5, 0x89, 0xd5, 0x7e, 0xf3, 0x2e, 0x47, 0x02, 0x4a, 0x99, 0xbc, 0x3f, 0x70, 0xc0, 0x77, }; static const unsigned char hmac_sha256_340_tag[] = { 0xf5, 0xbf, 0xb9, 0x40, 0x56, 0x1f, 0xb4, 0xdb, 0x73, 0xeb, 0xba, 0x49, 0xbf, 0x2e, 0x48, 0x93, 0xbb, 0x0c, 0xca, 0x61, 0x8a, 0x71, 0xb7, 0xec, 0xf6, 0xac, 0xa3, 0x82, 0x31, 0xe1, 0x67, 0xea, }; static const wycheproof_hmac_test hmac_sha256_340 = { .name = "hmac_sha256_340", .hash = SHA256, .key = hmac_sha256_340_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_340_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 341 for HMAC, tcId is 170 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_341_key[] = { 0x28, 0x77, 0xeb, 0xb8, 0x1f, 0x80, 0x33, 0x4f, 0xd0, 0x05, 0x16, 0x33, 0x74, 0x46, 0xc5, 0xcf, 0x5a, 0xd4, 0xa3, 0xa2, 0xe1, 0x97, 0x26, 0x9e, 0x5b, 0x0a, 0xd1, 0x88, 0x9d, 0xfe, 0x2b, 0x4b, 0x0a, 0xaa, 0x67, 0x6f, 0xac, 0x55, 0xb3, 0x6c, 0xe3, 0xaf, 0xfc, 0x7f, 0x10, 0x92, 0xab, 0x89, 0xc5, 0x32, 0x73, 0xa8, 0x37, 0xbd, 0x5b, 0xc9, 0x4d, 0x1a, 0x9d, 0x9e, 0x5b, 0x02, 0xe9, 0x85, 0x6f, }; static const unsigned char hmac_sha256_341_msg[] = { 0xba, 0x44, 0x8d, 0xb8, 0x8f, 0x15, 0x4f, 0x77, 0x50, 0x28, 0xfd, 0xec, 0xf9, 0xe6, 0x75, 0x2d, }; static const unsigned char hmac_sha256_341_tag[] = { 0x16, 0x90, 0xed, 0x41, 0x80, 0x64, 0x28, 0x99, 0xe0, 0xde, 0xb9, 0xec, 0x22, 0x70, 0x37, 0x4e, 0x8b, 0x0a, 0x48, 0x42, 0x17, 0xf5, 0xa6, 0x82, 0xc5, 0x24, 0x31, 0x6e, 0xca, 0x21, 0x9b, 0x64, }; static const wycheproof_hmac_test hmac_sha256_341 = { .name = "hmac_sha256_341", .hash = SHA256, .key = hmac_sha256_341_key, .keylen = 65, .msg = hmac_sha256_341_msg, .msglen = 16, .tag = hmac_sha256_341_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 342 for HMAC, tcId is 171 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_342_key[] = { 0x21, 0x17, 0x8e, 0x26, 0xbc, 0x28, 0xff, 0xc2, 0x7c, 0x06, 0xf7, 0x62, 0xba, 0x19, 0x0a, 0x62, 0x70, 0x75, 0x85, 0x6d, 0x7c, 0xa6, 0xfe, 0xab, 0x79, 0xac, 0x63, 0x14, 0x9b, 0x17, 0x12, 0x6e, 0x34, 0xfd, 0x9e, 0x55, 0x90, 0xe0, 0xe9, 0x0a, 0xac, 0x80, 0x1d, 0xf0, 0x95, 0x05, 0xd8, 0xaf, 0x2d, 0xd0, 0xa2, 0x70, 0x3b, 0x35, 0x2c, 0x57, 0x3a, 0xc9, 0xd2, 0xcb, 0x06, 0x39, 0x27, 0xf2, 0xaf, }; static const unsigned char hmac_sha256_342_msg[] = { 0x7d, 0x5f, 0x1d, 0x6b, 0x99, 0x34, 0x52, 0xb1, 0xb5, 0x3a, 0x43, 0x75, 0x76, 0x0d, 0x10, 0xa2, 0x0d, 0x46, 0xa0, 0xab, 0x9e, 0xc3, 0x94, 0x3f, 0xc4, 0xb0, 0x7a, 0x2c, 0xe7, 0x35, 0xe7, 0x31, }; static const unsigned char hmac_sha256_342_tag[] = { 0xe5, 0x42, 0xac, 0x8a, 0xc8, 0xf3, 0x64, 0xba, 0xe4, 0xb7, 0xda, 0x8b, 0x7a, 0x07, 0x77, 0xdf, 0x35, 0x0f, 0x00, 0x1d, 0xe4, 0xe8, 0xcf, 0xa2, 0xd9, 0xef, 0x0b, 0x15, 0x01, 0x94, 0x96, 0xec, }; static const wycheproof_hmac_test hmac_sha256_342 = { .name = "hmac_sha256_342", .hash = SHA256, .key = hmac_sha256_342_key, .keylen = 65, .msg = hmac_sha256_342_msg, .msglen = 32, .tag = hmac_sha256_342_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 343 for HMAC, tcId is 172 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_343_key[] = { 0x81, 0x3e, 0x0c, 0x07, 0x8c, 0x22, 0x13, 0x75, 0xe8, 0x05, 0x90, 0xac, 0xe6, 0x77, 0x4e, 0xaf, 0xd2, 0xd2, 0xc2, 0x42, 0x35, 0x09, 0x88, 0xd0, 0x2e, 0xfa, 0x55, 0x0e, 0x05, 0xae, 0xcb, 0xe1, 0x00, 0xc1, 0xb8, 0xbf, 0x15, 0x4c, 0x93, 0x2c, 0xf9, 0xe5, 0x71, 0x77, 0x01, 0x5c, 0x81, 0x6c, 0x42, 0xbc, 0x7f, 0xbc, 0x71, 0xce, 0xaa, 0x53, 0x28, 0xc7, 0x31, 0x6b, 0x7f, 0x0f, 0x30, 0x33, 0x0f, }; static const unsigned char hmac_sha256_343_tag[] = { 0xbb, 0x6a, 0xb6, 0x6f, 0x51, 0xe5, 0x3f, 0xa0, 0x86, 0xc9, 0xc6, 0x1a, 0x26, 0xca, 0x27, 0xe0, }; static const wycheproof_hmac_test hmac_sha256_343 = { .name = "hmac_sha256_343", .hash = SHA256, .key = hmac_sha256_343_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha256_343_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 344 for HMAC, tcId is 173 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_344_key[] = { 0x57, 0x13, 0x34, 0x30, 0x96, 0xb0, 0xaa, 0xf0, 0x56, 0x2a, 0x6b, 0x92, 0xc1, 0xa1, 0x55, 0x35, 0x92, 0x41, 0x60, 0x47, 0x5a, 0x4e, 0x42, 0x33, 0x58, 0x91, 0x59, 0x72, 0x8c, 0x56, 0x2e, 0x3b, 0x2a, 0xd9, 0x6f, 0x74, 0x0c, 0x6a, 0x4d, 0xa2, 0xbc, 0x3f, 0x76, 0x8c, 0xe9, 0x8c, 0x9b, 0xd6, 0x6b, 0xac, 0x28, 0xd1, 0x64, 0x6f, 0xf5, 0x92, 0x02, 0x8c, 0x94, 0x0d, 0x45, 0x5f, 0x35, 0xee, 0xb4, }; static const unsigned char hmac_sha256_344_msg[] = { 0x71, 0x71, 0x2d, 0xe2, 0xfa, 0xc1, 0xfb, 0x85, 0x56, 0x73, 0xbf, 0xf7, 0x2a, 0xf6, 0x42, 0x57, }; static const unsigned char hmac_sha256_344_tag[] = { 0xc1, 0x81, 0x65, 0xb8, 0xb9, 0x7d, 0xb1, 0xca, 0x5e, 0x24, 0x86, 0xa3, 0x2b, 0x39, 0x73, 0x1e, }; static const wycheproof_hmac_test hmac_sha256_344 = { .name = "hmac_sha256_344", .hash = SHA256, .key = hmac_sha256_344_key, .keylen = 65, .msg = hmac_sha256_344_msg, .msglen = 16, .tag = hmac_sha256_344_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 345 for HMAC, tcId is 174 in file hmac_sha256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) static const unsigned char hmac_sha256_345_key[] = { 0x72, 0x08, 0xaf, 0xbe, 0xcf, 0x5f, 0x1f, 0x34, 0x82, 0x8f, 0x98, 0xb7, 0x19, 0x41, 0x4e, 0x28, 0x07, 0x16, 0xde, 0x64, 0xf5, 0xed, 0xd1, 0xae, 0x1c, 0x77, 0x41, 0x53, 0xcd, 0x20, 0x22, 0x33, 0x7b, 0xb2, 0x0f, 0xad, 0xe1, 0xb7, 0x85, 0x6f, 0x1d, 0xbf, 0xd4, 0x0e, 0x2b, 0x43, 0x07, 0xf1, 0x29, 0x3c, 0xef, 0xf1, 0x69, 0x2e, 0xe9, 0x0d, 0x8c, 0x90, 0xb5, 0xfd, 0xf9, 0x53, 0xab, 0x01, 0xa5, }; static const unsigned char hmac_sha256_345_msg[] = { 0x43, 0xb5, 0x33, 0x02, 0xb6, 0x04, 0xd6, 0x13, 0xe6, 0x2d, 0xb0, 0x02, 0x04, 0x4a, 0x47, 0x82, 0xd5, 0x72, 0xac, 0x8f, 0xbd, 0x3c, 0xd0, 0xec, 0xe9, 0x1b, 0x43, 0xbc, 0x52, 0xe1, 0x8e, 0x98, }; static const unsigned char hmac_sha256_345_tag[] = { 0x2f, 0xec, 0xfe, 0x45, 0xd7, 0x93, 0x39, 0xc5, 0x7d, 0xdd, 0xba, 0x68, 0xab, 0x34, 0xf5, 0xf1, }; static const wycheproof_hmac_test hmac_sha256_345 = { .name = "hmac_sha256_345", .hash = SHA256, .key = hmac_sha256_345_key, .keylen = 65, .msg = hmac_sha256_345_msg, .msglen = 32, .tag = hmac_sha256_345_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA256) */ /* Test 346 for HMAC, tcId is 1 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_346_key[] = { 0x7e, 0xef, 0x1e, 0x40, 0x25, 0x33, 0x50, 0xeb, 0x93, 0x07, 0xcc, 0x6b, 0xd8, 0xab, 0x8d, 0xf4, 0x34, 0xbc, 0x2f, 0xaf, 0x70, 0x95, 0xe4, 0x5b, 0x50, 0xff, 0xdd, 0x64, }; static const unsigned char hmac_sha3_224_346_tag[] = { 0xf2, 0xaa, 0x17, 0xe5, 0x49, 0x25, 0x3a, 0xc5, 0x1a, 0x93, 0x32, 0xc5, 0xc2, 0x39, 0x0f, 0xc0, 0xc5, 0x00, 0x3c, 0x40, 0xbe, 0xd2, 0x55, 0xdf, 0x43, 0x9c, 0x3d, 0x05, }; static const wycheproof_hmac_test hmac_sha3_224_346 = { .name = "hmac_sha3_224_346", .hash = SHA3_224, .key = hmac_sha3_224_346_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_346_tag, .taglen = 28, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 347 for HMAC, tcId is 2 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_347_key[] = { 0x86, 0x48, 0xee, 0x93, 0x6c, 0x6e, 0xbc, 0x5a, 0xe4, 0xbb, 0x48, 0xc1, 0x13, 0x9a, 0x54, 0xe3, 0xac, 0x5d, 0x89, 0x7b, 0xee, 0xc4, 0x92, 0xdc, 0x4d, 0x74, 0x07, 0x52, }; static const unsigned char hmac_sha3_224_347_msg[] = { 0x2e, }; static const unsigned char hmac_sha3_224_347_tag[] = { 0xe4, 0xbb, 0xe7, 0xb3, 0xa8, 0xf1, 0x73, 0x73, 0x6a, 0x1b, 0x1e, 0x58, 0x28, 0x30, 0x40, 0xbd, 0x20, 0x09, 0x0a, 0x77, 0x2b, 0xa1, 0xd1, 0xfa, 0x1f, 0x0f, 0x02, 0xce, }; static const wycheproof_hmac_test hmac_sha3_224_347 = { .name = "hmac_sha3_224_347", .hash = SHA3_224, .key = hmac_sha3_224_347_key, .keylen = 28, .msg = hmac_sha3_224_347_msg, .msglen = 1, .tag = hmac_sha3_224_347_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 348 for HMAC, tcId is 3 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_348_key[] = { 0x22, 0x97, 0xd7, 0x8c, 0xc4, 0x5f, 0xaf, 0x9b, 0x88, 0x5b, 0x36, 0xac, 0x80, 0x20, 0x5c, 0xc0, 0x8e, 0x1b, 0x73, 0x0f, 0x26, 0x4f, 0x23, 0xf4, 0xed, 0xbb, 0xb4, 0x06, }; static const unsigned char hmac_sha3_224_348_msg[] = { 0x32, 0x9f, }; static const unsigned char hmac_sha3_224_348_tag[] = { 0xec, 0x7e, 0xf1, 0x65, 0x23, 0x9a, 0x3e, 0xea, 0x8e, 0xa6, 0x31, 0x0c, 0x9b, 0x98, 0xf3, 0x3a, 0xa0, 0x36, 0x17, 0x5b, 0xe7, 0x06, 0xfc, 0x01, 0x86, 0xa8, 0x6e, 0xf9, }; static const wycheproof_hmac_test hmac_sha3_224_348 = { .name = "hmac_sha3_224_348", .hash = SHA3_224, .key = hmac_sha3_224_348_key, .keylen = 28, .msg = hmac_sha3_224_348_msg, .msglen = 2, .tag = hmac_sha3_224_348_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 349 for HMAC, tcId is 4 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_349_key[] = { 0x03, 0x61, 0xa9, 0x04, 0xf7, 0xcb, 0xd1, 0x07, 0xa6, 0x17, 0x61, 0x4a, 0xb6, 0x9d, 0x11, 0x20, 0x8e, 0xe6, 0xd4, 0x23, 0xb3, 0xae, 0x90, 0xe2, 0xbb, 0x6d, 0x7e, 0x54, }; static const unsigned char hmac_sha3_224_349_msg[] = { 0xe6, 0xe7, 0x65, }; static const unsigned char hmac_sha3_224_349_tag[] = { 0xfc, 0xbc, 0xf9, 0x84, 0x0d, 0x73, 0xb4, 0x14, 0x3f, 0xbc, 0x2a, 0x98, 0x8b, 0x80, 0x1b, 0xea, 0x02, 0x12, 0x04, 0x9e, 0x61, 0x5d, 0xd0, 0xe5, 0xfd, 0x82, 0x3b, 0x0a, }; static const wycheproof_hmac_test hmac_sha3_224_349 = { .name = "hmac_sha3_224_349", .hash = SHA3_224, .key = hmac_sha3_224_349_key, .keylen = 28, .msg = hmac_sha3_224_349_msg, .msglen = 3, .tag = hmac_sha3_224_349_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 350 for HMAC, tcId is 5 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_350_key[] = { 0x26, 0x4a, 0x8d, 0x21, 0x28, 0xe8, 0xfd, 0x09, 0x72, 0xd9, 0xac, 0xc6, 0x6d, 0xc2, 0x75, 0xb1, 0x28, 0x6b, 0xee, 0xb0, 0xaf, 0xf7, 0xce, 0x8e, 0x97, 0xc7, 0xb9, 0x6c, }; static const unsigned char hmac_sha3_224_350_msg[] = { 0x25, 0x83, 0x8e, 0x50, }; static const unsigned char hmac_sha3_224_350_tag[] = { 0xed, 0xff, 0xc6, 0x5c, 0x65, 0x7d, 0x16, 0x73, 0x0f, 0xe6, 0x3b, 0xb6, 0x32, 0x6a, 0xb7, 0xfd, 0x43, 0x66, 0x59, 0x6e, 0xd6, 0xa6, 0x2c, 0x26, 0xae, 0x43, 0xd3, 0xd8, }; static const wycheproof_hmac_test hmac_sha3_224_350 = { .name = "hmac_sha3_224_350", .hash = SHA3_224, .key = hmac_sha3_224_350_key, .keylen = 28, .msg = hmac_sha3_224_350_msg, .msglen = 4, .tag = hmac_sha3_224_350_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 351 for HMAC, tcId is 6 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_351_key[] = { 0x6d, 0xde, 0x88, 0x28, 0xf0, 0x9b, 0x7a, 0xa9, 0x81, 0x08, 0x2a, 0xa1, 0x16, 0xfc, 0xa3, 0xb7, 0x34, 0x17, 0x21, 0xc0, 0x44, 0x08, 0x03, 0xf5, 0x2c, 0xc9, 0x73, 0x2e, }; static const unsigned char hmac_sha3_224_351_msg[] = { 0xbe, 0x81, 0x60, 0x2d, 0xa7, }; static const unsigned char hmac_sha3_224_351_tag[] = { 0x6b, 0x34, 0x97, 0x64, 0xa2, 0xd6, 0xcc, 0x6c, 0xc8, 0xec, 0xdb, 0xbb, 0x25, 0x26, 0xd7, 0xcb, 0x9a, 0xcf, 0xe2, 0xab, 0xe7, 0x05, 0x7d, 0xae, 0x37, 0x55, 0xad, 0x20, }; static const wycheproof_hmac_test hmac_sha3_224_351 = { .name = "hmac_sha3_224_351", .hash = SHA3_224, .key = hmac_sha3_224_351_key, .keylen = 28, .msg = hmac_sha3_224_351_msg, .msglen = 5, .tag = hmac_sha3_224_351_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 352 for HMAC, tcId is 7 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_352_key[] = { 0x3b, 0xa1, 0x56, 0xff, 0xdc, 0x55, 0xd1, 0x55, 0xbd, 0x08, 0x51, 0x05, 0xac, 0xa6, 0x4d, 0x13, 0x04, 0x4d, 0xb6, 0x0c, 0x82, 0xcf, 0x2c, 0xd9, 0xd6, 0x1d, 0x09, 0x8f, }; static const unsigned char hmac_sha3_224_352_msg[] = { 0x69, 0xc7, 0x6c, 0x89, 0x37, 0xa0, }; static const unsigned char hmac_sha3_224_352_tag[] = { 0xf0, 0xa6, 0xbc, 0x99, 0x6b, 0xe0, 0x79, 0xf6, 0x2c, 0x2c, 0x6a, 0x73, 0x33, 0x7c, 0xe5, 0x00, 0x13, 0xa0, 0x51, 0x80, 0xa8, 0x76, 0xd3, 0x36, 0x3e, 0x07, 0xf1, 0x2a, }; static const wycheproof_hmac_test hmac_sha3_224_352 = { .name = "hmac_sha3_224_352", .hash = SHA3_224, .key = hmac_sha3_224_352_key, .keylen = 28, .msg = hmac_sha3_224_352_msg, .msglen = 6, .tag = hmac_sha3_224_352_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 353 for HMAC, tcId is 8 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_353_key[] = { 0x9c, 0x27, 0x39, 0xba, 0xe2, 0xa8, 0x63, 0xfb, 0x02, 0x36, 0x46, 0x6b, 0xa3, 0x40, 0x8f, 0x4e, 0xec, 0x8d, 0x43, 0x20, 0x6d, 0x56, 0xbb, 0x7a, 0xa2, 0xf8, 0xf7, 0x5e, }; static const unsigned char hmac_sha3_224_353_msg[] = { 0xaa, 0xf4, 0xc9, 0x14, 0x6d, 0xb9, 0x48, }; static const unsigned char hmac_sha3_224_353_tag[] = { 0xa4, 0x73, 0xdd, 0x1d, 0x6f, 0x34, 0xfb, 0x1c, 0xf2, 0x58, 0x6d, 0x1b, 0xb5, 0xa4, 0x14, 0xd2, 0x32, 0xe7, 0xdc, 0xc7, 0x39, 0x7a, 0x1e, 0xf1, 0x73, 0x5f, 0xb4, 0x6f, }; static const wycheproof_hmac_test hmac_sha3_224_353 = { .name = "hmac_sha3_224_353", .hash = SHA3_224, .key = hmac_sha3_224_353_key, .keylen = 28, .msg = hmac_sha3_224_353_msg, .msglen = 7, .tag = hmac_sha3_224_353_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 354 for HMAC, tcId is 9 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_354_key[] = { 0x31, 0xd9, 0xca, 0xe2, 0xc3, 0xdf, 0x06, 0x40, 0x18, 0x20, 0x9b, 0x12, 0x1f, 0x9e, 0x88, 0x39, 0x76, 0xea, 0x75, 0x79, 0x42, 0xec, 0xda, 0x9d, 0x92, 0xfd, 0xad, 0xfd, }; static const unsigned char hmac_sha3_224_354_msg[] = { 0xb8, 0x44, 0x28, 0x95, 0x29, 0x20, 0x6f, 0x5a, }; static const unsigned char hmac_sha3_224_354_tag[] = { 0x2e, 0x44, 0xf4, 0xd1, 0x41, 0xc3, 0x38, 0xa4, 0xc8, 0x82, 0xbe, 0x2c, 0x8d, 0x32, 0x6d, 0xda, 0x3a, 0xb5, 0x3d, 0xcb, 0x02, 0x53, 0x6a, 0x20, 0x96, 0x39, 0x27, 0x26, }; static const wycheproof_hmac_test hmac_sha3_224_354 = { .name = "hmac_sha3_224_354", .hash = SHA3_224, .key = hmac_sha3_224_354_key, .keylen = 28, .msg = hmac_sha3_224_354_msg, .msglen = 8, .tag = hmac_sha3_224_354_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 355 for HMAC, tcId is 10 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_355_key[] = { 0x89, 0xa1, 0xb9, 0xe9, 0x00, 0x44, 0x44, 0xc1, 0xd4, 0xe9, 0x67, 0x57, 0x0c, 0x21, 0xa0, 0x55, 0x12, 0xd3, 0xf6, 0x18, 0xec, 0x16, 0x8f, 0xc3, 0xe1, 0x3e, 0xa5, 0xa2, }; static const unsigned char hmac_sha3_224_355_msg[] = { 0x6b, 0x42, 0xeb, 0x6d, 0x84, 0xe9, 0x0c, 0x70, 0xc2, }; static const unsigned char hmac_sha3_224_355_tag[] = { 0x56, 0xa0, 0x78, 0x27, 0x2a, 0x84, 0xa7, 0xdd, 0x98, 0xd9, 0xfd, 0x25, 0x51, 0x67, 0x9b, 0x30, 0x8f, 0x2c, 0xa0, 0xb8, 0xa3, 0x1e, 0xc9, 0x04, 0x48, 0xff, 0xc2, 0xe4, }; static const wycheproof_hmac_test hmac_sha3_224_355 = { .name = "hmac_sha3_224_355", .hash = SHA3_224, .key = hmac_sha3_224_355_key, .keylen = 28, .msg = hmac_sha3_224_355_msg, .msglen = 9, .tag = hmac_sha3_224_355_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 356 for HMAC, tcId is 11 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_356_key[] = { 0x43, 0x98, 0x73, 0x17, 0x52, 0xfd, 0x7a, 0xf1, 0xdb, 0x86, 0xeb, 0xcc, 0xbe, 0xe0, 0xad, 0x65, 0xeb, 0x5f, 0xaf, 0x00, 0xac, 0xe6, 0xc9, 0xaa, 0x35, 0x44, 0x1f, 0xaa, }; static const unsigned char hmac_sha3_224_356_msg[] = { 0x1a, 0xe2, 0xe7, 0xd9, 0x17, 0xc4, 0x80, 0x26, 0x57, 0x0d, }; static const unsigned char hmac_sha3_224_356_tag[] = { 0x37, 0xe0, 0x90, 0xb8, 0x3d, 0x12, 0xe0, 0x66, 0x3c, 0x9e, 0xa9, 0x03, 0x7e, 0xd3, 0x2a, 0xb6, 0x7a, 0xfb, 0xfe, 0x43, 0x78, 0x36, 0x69, 0xe6, 0xf5, 0x75, 0x44, 0xe4, }; static const wycheproof_hmac_test hmac_sha3_224_356 = { .name = "hmac_sha3_224_356", .hash = SHA3_224, .key = hmac_sha3_224_356_key, .keylen = 28, .msg = hmac_sha3_224_356_msg, .msglen = 10, .tag = hmac_sha3_224_356_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 357 for HMAC, tcId is 12 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_357_key[] = { 0x33, 0x94, 0x60, 0xd6, 0xbb, 0x26, 0xca, 0x60, 0xeb, 0xce, 0xf1, 0x0c, 0x38, 0x58, 0x7b, 0x9e, 0x57, 0x5c, 0x39, 0x84, 0x91, 0x78, 0x2c, 0xcf, 0x9e, 0x8f, 0x68, 0x03, }; static const unsigned char hmac_sha3_224_357_msg[] = { 0xca, 0x03, 0xeb, 0x4f, 0x37, 0x53, 0x6b, 0x23, 0x77, 0x73, 0x8e, }; static const unsigned char hmac_sha3_224_357_tag[] = { 0xab, 0x81, 0xec, 0xca, 0x20, 0x1e, 0x69, 0xb7, 0xa6, 0xc1, 0x11, 0x02, 0x94, 0x3d, 0x14, 0x11, 0x57, 0x86, 0x5b, 0x68, 0x84, 0xb6, 0x7d, 0xa7, 0x59, 0x3b, 0x69, 0x53, }; static const wycheproof_hmac_test hmac_sha3_224_357 = { .name = "hmac_sha3_224_357", .hash = SHA3_224, .key = hmac_sha3_224_357_key, .keylen = 28, .msg = hmac_sha3_224_357_msg, .msglen = 11, .tag = hmac_sha3_224_357_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 358 for HMAC, tcId is 13 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_358_key[] = { 0x02, 0x5f, 0x83, 0x80, 0xd1, 0x0b, 0x82, 0x07, 0xb3, 0x62, 0x3e, 0x4a, 0x90, 0xf7, 0x9c, 0x3e, 0x75, 0x3b, 0x1b, 0xe6, 0xa3, 0x5b, 0x88, 0xb6, 0x83, 0x30, 0xa4, 0x0c, }; static const unsigned char hmac_sha3_224_358_msg[] = { 0xe5, 0x7d, 0xae, 0xf9, 0xed, 0xe4, 0xe9, 0x15, 0xc3, 0xa9, 0xee, 0xce, }; static const unsigned char hmac_sha3_224_358_tag[] = { 0xa2, 0x2d, 0x2b, 0x35, 0x86, 0xb2, 0xf5, 0x74, 0xeb, 0x65, 0x79, 0x8f, 0x18, 0xa0, 0x4e, 0x76, 0x39, 0x35, 0xc8, 0x8b, 0xe5, 0x39, 0x63, 0xa2, 0xe9, 0x04, 0x83, 0x8a, }; static const wycheproof_hmac_test hmac_sha3_224_358 = { .name = "hmac_sha3_224_358", .hash = SHA3_224, .key = hmac_sha3_224_358_key, .keylen = 28, .msg = hmac_sha3_224_358_msg, .msglen = 12, .tag = hmac_sha3_224_358_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 359 for HMAC, tcId is 14 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_359_key[] = { 0x0b, 0xdc, 0x5f, 0x51, 0xf8, 0xa1, 0xa3, 0x5d, 0x75, 0x55, 0x4b, 0xe7, 0x0e, 0xfb, 0xcd, 0xf5, 0x1e, 0x54, 0xf3, 0x0f, 0xa4, 0x69, 0x6f, 0x72, 0x74, 0x31, 0x94, 0x1f, }; static const unsigned char hmac_sha3_224_359_msg[] = { 0xcc, 0x3d, 0xd1, 0xeb, 0x06, 0x90, 0xf7, 0xaf, 0x09, 0xad, 0x40, 0x8f, 0x9c, }; static const unsigned char hmac_sha3_224_359_tag[] = { 0x96, 0xd7, 0xcc, 0x8b, 0xae, 0x49, 0x8a, 0x33, 0x45, 0xb0, 0x5d, 0x39, 0x9b, 0x12, 0x61, 0x62, 0xe1, 0x56, 0x92, 0x0e, 0xdd, 0xca, 0x40, 0xe6, 0xf4, 0x88, 0xf5, 0xbc, }; static const wycheproof_hmac_test hmac_sha3_224_359 = { .name = "hmac_sha3_224_359", .hash = SHA3_224, .key = hmac_sha3_224_359_key, .keylen = 28, .msg = hmac_sha3_224_359_msg, .msglen = 13, .tag = hmac_sha3_224_359_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 360 for HMAC, tcId is 15 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_360_key[] = { 0x5a, 0xda, 0x97, 0xd9, 0x0a, 0x74, 0xa7, 0xd4, 0xa6, 0x8c, 0x54, 0x64, 0xff, 0xf2, 0x5a, 0x9b, 0x7f, 0xa2, 0xe7, 0x5d, 0x6a, 0xcf, 0x0a, 0x59, 0xf1, 0x43, 0xa2, 0xe9, }; static const unsigned char hmac_sha3_224_360_msg[] = { 0x3f, 0xe4, 0xed, 0xe1, 0x58, 0xaf, 0x10, 0x8e, 0x09, 0xf5, 0x43, 0xe1, 0x4a, 0xb7, }; static const unsigned char hmac_sha3_224_360_tag[] = { 0xc5, 0xc0, 0x78, 0x16, 0x70, 0x1e, 0xec, 0xfa, 0x1d, 0x61, 0xb5, 0xc1, 0x1e, 0xd9, 0xed, 0x1d, 0x11, 0xec, 0x49, 0x5f, 0x71, 0x1e, 0xc9, 0x75, 0x2e, 0x67, 0x87, 0xba, }; static const wycheproof_hmac_test hmac_sha3_224_360 = { .name = "hmac_sha3_224_360", .hash = SHA3_224, .key = hmac_sha3_224_360_key, .keylen = 28, .msg = hmac_sha3_224_360_msg, .msglen = 14, .tag = hmac_sha3_224_360_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 361 for HMAC, tcId is 16 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_361_key[] = { 0x00, 0x7a, 0xfe, 0x6b, 0x7c, 0x07, 0x01, 0xc3, 0x0c, 0xb7, 0x6b, 0x43, 0x1a, 0xfa, 0x35, 0x10, 0xc8, 0xb3, 0x1d, 0x21, 0xcf, 0xe0, 0xbb, 0xaa, 0x52, 0x89, 0xcd, 0x08, }; static const unsigned char hmac_sha3_224_361_msg[] = { 0xc2, 0xcf, 0x80, 0x00, 0x5c, 0x59, 0x1c, 0x1f, 0x73, 0x73, 0x69, 0xfc, 0xc2, 0x12, 0xf0, }; static const unsigned char hmac_sha3_224_361_tag[] = { 0xfb, 0x65, 0x1b, 0xc4, 0xf4, 0x1a, 0xb5, 0x0d, 0x88, 0x84, 0x97, 0x39, 0x52, 0x91, 0x99, 0x51, 0x9e, 0x33, 0xe9, 0x48, 0x63, 0x5e, 0x24, 0x62, 0x35, 0xc8, 0x1a, 0xf3, }; static const wycheproof_hmac_test hmac_sha3_224_361 = { .name = "hmac_sha3_224_361", .hash = SHA3_224, .key = hmac_sha3_224_361_key, .keylen = 28, .msg = hmac_sha3_224_361_msg, .msglen = 15, .tag = hmac_sha3_224_361_tag, .taglen = 28, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 362 for HMAC, tcId is 17 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_362_key[] = { 0x26, 0x49, 0x11, 0x68, 0xa3, 0x2c, 0xe8, 0xcb, 0xc4, 0xc0, 0xcd, 0x64, 0x10, 0x7e, 0x4f, 0xcc, 0x43, 0x2f, 0x07, 0xd5, 0x9c, 0x99, 0x28, 0x62, 0xe1, 0xe5, 0x5b, 0x1e, }; static const unsigned char hmac_sha3_224_362_msg[] = { 0x15, 0xe5, 0x10, 0x91, 0xb4, 0xf4, 0x24, 0xba, 0x1f, 0xde, 0xcb, 0x5e, 0x2f, 0xba, 0x11, 0xf6, }; static const unsigned char hmac_sha3_224_362_tag[] = { 0x6c, 0xa3, 0xae, 0x8f, 0x24, 0x41, 0x20, 0xde, 0xe0, 0xb4, 0xc1, 0xd4, 0xdb, 0x3d, 0xbe, 0xd4, 0x25, 0x64, 0xc0, 0x42, 0x06, 0xfb, 0x47, 0xcf, 0xde, 0xd9, 0x76, 0x62, }; static const wycheproof_hmac_test hmac_sha3_224_362 = { .name = "hmac_sha3_224_362", .hash = SHA3_224, .key = hmac_sha3_224_362_key, .keylen = 28, .msg = hmac_sha3_224_362_msg, .msglen = 16, .tag = hmac_sha3_224_362_tag, .taglen = 28, .result = 1, .comment = ", tcId is 17 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 363 for HMAC, tcId is 18 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_363_key[] = { 0x69, 0x78, 0xb6, 0xc1, 0x34, 0xdd, 0x69, 0x49, 0x83, 0x2d, 0x65, 0xe4, 0xcb, 0x9c, 0x1e, 0x1d, 0xc3, 0x6b, 0xea, 0xe4, 0xa1, 0x34, 0x90, 0x7c, 0x80, 0xda, 0x0f, 0x44, }; static const unsigned char hmac_sha3_224_363_msg[] = { 0x66, 0x41, 0xd8, 0x34, 0xb3, 0xfb, 0xfd, 0xb5, 0xd1, 0x78, 0x00, 0x78, 0x01, 0xf7, 0xb4, 0xe7, 0xb1, }; static const unsigned char hmac_sha3_224_363_tag[] = { 0xff, 0xfc, 0x90, 0xde, 0x02, 0xcf, 0x66, 0xf6, 0xc9, 0xdc, 0x42, 0x72, 0xfa, 0xf6, 0xb5, 0xcd, 0xcb, 0x16, 0x5b, 0x32, 0x95, 0xad, 0xd1, 0xb3, 0x59, 0xf5, 0x04, 0xcd, }; static const wycheproof_hmac_test hmac_sha3_224_363 = { .name = "hmac_sha3_224_363", .hash = SHA3_224, .key = hmac_sha3_224_363_key, .keylen = 28, .msg = hmac_sha3_224_363_msg, .msglen = 17, .tag = hmac_sha3_224_363_tag, .taglen = 28, .result = 1, .comment = ", tcId is 18 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 364 for HMAC, tcId is 19 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_364_key[] = { 0x9f, 0x9f, 0xb2, 0x80, 0xad, 0xf1, 0x2e, 0x73, 0x95, 0x48, 0xb1, 0xd6, 0x76, 0xcb, 0x79, 0x4d, 0x68, 0x5b, 0x91, 0x04, 0xe6, 0x3b, 0x61, 0x9b, 0x05, 0x5c, 0xb6, 0x0f, }; static const unsigned char hmac_sha3_224_364_msg[] = { 0x91, 0x51, 0x3d, 0xd6, 0xde, 0x40, 0xa1, 0xc2, 0x3f, 0x8d, 0x1e, 0xb0, 0xab, 0x8f, 0x5e, 0xa6, 0xf6, 0x83, 0x55, 0x06, 0xec, 0x75, 0x08, 0x94, }; static const unsigned char hmac_sha3_224_364_tag[] = { 0xc4, 0x9f, 0x48, 0x5f, 0x16, 0xbb, 0xc6, 0x36, 0x95, 0xee, 0x3e, 0x52, 0x21, 0xd8, 0xb3, 0xdf, 0xda, 0x5b, 0x85, 0xaa, 0x46, 0x1d, 0xbe, 0x92, 0x5e, 0x44, 0xd1, 0x8d, }; static const wycheproof_hmac_test hmac_sha3_224_364 = { .name = "hmac_sha3_224_364", .hash = SHA3_224, .key = hmac_sha3_224_364_key, .keylen = 28, .msg = hmac_sha3_224_364_msg, .msglen = 24, .tag = hmac_sha3_224_364_tag, .taglen = 28, .result = 1, .comment = ", tcId is 19 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 365 for HMAC, tcId is 20 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_365_key[] = { 0x3b, 0x1b, 0x16, 0xe6, 0xdd, 0x2e, 0x69, 0x55, 0x9d, 0xbe, 0xb9, 0x64, 0xe1, 0x0f, 0xc9, 0x4c, 0x06, 0x84, 0x71, 0xb2, 0x37, 0x4d, 0x3a, 0x2d, 0x24, 0xd2, 0xd4, 0x66, }; static const unsigned char hmac_sha3_224_365_msg[] = { 0x8e, 0xcd, 0x55, 0xb5, 0x6c, 0x66, 0x8d, 0xcb, 0x8e, 0x8b, 0x1e, 0xfd, 0x69, 0x9c, 0x0e, 0x4a, 0x46, 0x42, 0x04, 0xd2, 0x9a, 0xf1, 0x40, 0xf8, 0x7d, 0x3f, 0x50, 0x75, 0x49, 0x53, 0x78, 0xa3, }; static const unsigned char hmac_sha3_224_365_tag[] = { 0x9d, 0x84, 0x9d, 0xee, 0x72, 0x7e, 0xed, 0x22, 0xae, 0x37, 0x9f, 0x5b, 0xbd, 0x3f, 0x77, 0xa0, 0xf3, 0x5d, 0x88, 0xf8, 0xf3, 0x9a, 0x75, 0x30, 0x13, 0xbd, 0xd4, 0xd0, }; static const wycheproof_hmac_test hmac_sha3_224_365 = { .name = "hmac_sha3_224_365", .hash = SHA3_224, .key = hmac_sha3_224_365_key, .keylen = 28, .msg = hmac_sha3_224_365_msg, .msglen = 32, .tag = hmac_sha3_224_365_tag, .taglen = 28, .result = 1, .comment = ", tcId is 20 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 366 for HMAC, tcId is 21 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_366_key[] = { 0xfc, 0x29, 0x63, 0x98, 0x84, 0x50, 0x63, 0xe6, 0x61, 0xbd, 0xf3, 0x6f, 0xf3, 0x61, 0x59, 0x26, 0xea, 0xcc, 0xbf, 0x06, 0x94, 0x7c, 0xd3, 0x1e, 0x66, 0x77, 0xf7, 0x10, }; static const unsigned char hmac_sha3_224_366_msg[] = { 0x62, 0xbd, 0x0a, 0xd7, 0x5d, 0x64, 0xc5, 0x54, 0xcb, 0x2c, 0xc1, 0x09, 0xc6, 0xe4, 0x01, 0x9f, 0xc6, 0x01, 0xc6, 0x1c, 0xab, 0xdf, 0x99, 0xf8, 0xde, 0x87, 0x1e, 0xdc, 0x17, 0xa3, 0x01, 0xb4, 0xc1, 0xf5, 0x5a, 0x15, 0xed, 0x66, 0xf9, 0x1e, 0xb4, 0x66, 0x6d, 0xd0, 0x8b, 0xc5, 0x9c, }; static const unsigned char hmac_sha3_224_366_tag[] = { 0x74, 0xdd, 0x2a, 0x66, 0x44, 0xc4, 0xee, 0x03, 0x5a, 0xe3, 0x9a, 0xd8, 0xff, 0x88, 0xc9, 0x30, 0x03, 0xee, 0xad, 0xb7, 0xdd, 0xc3, 0x04, 0x2e, 0x69, 0x97, 0x58, 0x16, }; static const wycheproof_hmac_test hmac_sha3_224_366 = { .name = "hmac_sha3_224_366", .hash = SHA3_224, .key = hmac_sha3_224_366_key, .keylen = 28, .msg = hmac_sha3_224_366_msg, .msglen = 47, .tag = hmac_sha3_224_366_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 367 for HMAC, tcId is 22 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_367_key[] = { 0x6c, 0x98, 0xd1, 0xfe, 0xaf, 0xff, 0x98, 0x61, 0x35, 0x19, 0x66, 0xbc, 0x6e, 0xd1, 0x9e, 0xd4, 0x67, 0xf9, 0xdc, 0x76, 0x7f, 0xa0, 0xdf, 0x6b, 0x56, 0x95, 0x55, 0x54, }; static const unsigned char hmac_sha3_224_367_msg[] = { 0xe9, 0x9d, 0x51, 0xa1, 0xd9, 0xa2, 0x5c, 0x58, 0x42, 0x50, 0x1a, 0x53, 0x83, 0x13, 0x35, 0x78, 0xc8, 0xde, 0xbe, 0x50, 0x15, 0x81, 0xb1, 0x61, 0x0f, 0x75, 0x75, 0x51, 0x9b, 0xbd, 0x26, 0xf0, 0x1a, 0xb7, 0xcb, 0xe0, 0x69, 0xbf, 0xd5, 0xdf, 0x36, 0x99, 0xa2, 0xfe, 0xa5, 0xb4, 0x61, 0xa3, }; static const unsigned char hmac_sha3_224_367_tag[] = { 0x66, 0xf2, 0x2e, 0x75, 0xe9, 0xcb, 0x45, 0x8a, 0xab, 0x04, 0x3c, 0x45, 0xac, 0x39, 0x14, 0xe5, 0x1d, 0x4c, 0xb6, 0xbc, 0x4c, 0x9c, 0x9b, 0xc3, 0x76, 0xb5, 0x66, 0xd9, }; static const wycheproof_hmac_test hmac_sha3_224_367 = { .name = "hmac_sha3_224_367", .hash = SHA3_224, .key = hmac_sha3_224_367_key, .keylen = 28, .msg = hmac_sha3_224_367_msg, .msglen = 48, .tag = hmac_sha3_224_367_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 368 for HMAC, tcId is 23 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_368_key[] = { 0x42, 0xa1, 0x64, 0xf9, 0x4e, 0x33, 0xd5, 0x74, 0x11, 0x8e, 0x0f, 0x8c, 0x93, 0x8b, 0xbc, 0x28, 0x74, 0xba, 0xb2, 0x19, 0xee, 0x7a, 0x17, 0x9f, 0x21, 0xe1, 0x3b, 0x02, }; static const unsigned char hmac_sha3_224_368_msg[] = { 0xe8, 0x95, 0x63, 0x96, 0x31, 0xf8, 0xb5, 0xd4, 0x8e, 0x3c, 0xe0, 0x0e, 0xb3, 0x10, 0xbf, 0x12, 0x99, 0x76, 0xff, 0xce, 0xd9, 0x6a, 0x6f, 0x30, 0xa0, 0x9d, 0x6a, 0xc1, 0xc2, 0x91, 0xf7, 0x3e, 0x93, 0x69, 0x05, 0x26, 0xd8, 0x6c, 0xc4, 0xd1, 0xa8, 0xe2, 0x1c, 0x11, 0xf5, 0xa8, 0x97, 0x93, 0x08, }; static const unsigned char hmac_sha3_224_368_tag[] = { 0xbf, 0x5f, 0x90, 0xd1, 0x2a, 0xa1, 0x28, 0x12, 0x77, 0x8b, 0xee, 0xa4, 0xce, 0xbe, 0x19, 0x72, 0xc7, 0x15, 0xa0, 0x4d, 0x90, 0xaa, 0x65, 0x1f, 0x95, 0xfe, 0x58, 0xd2, }; static const wycheproof_hmac_test hmac_sha3_224_368 = { .name = "hmac_sha3_224_368", .hash = SHA3_224, .key = hmac_sha3_224_368_key, .keylen = 28, .msg = hmac_sha3_224_368_msg, .msglen = 49, .tag = hmac_sha3_224_368_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 369 for HMAC, tcId is 24 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_369_key[] = { 0xc1, 0xb5, 0xb9, 0x12, 0x10, 0x66, 0x7e, 0x72, 0xaa, 0x51, 0x03, 0x46, 0xe1, 0x81, 0x13, 0x58, 0x81, 0x5a, 0x33, 0x30, 0xc5, 0xed, 0x27, 0xa6, 0x95, 0xc3, 0x94, 0x51, }; static const unsigned char hmac_sha3_224_369_msg[] = { 0xbf, 0x10, 0x86, 0xc3, 0xea, 0x8b, 0x88, 0x40, 0x41, 0x8c, 0x69, 0x0c, 0x92, 0x15, 0x2c, 0x73, 0xa6, 0x73, 0x0b, 0xd1, 0xa0, 0x21, 0x0c, 0x8b, 0x1d, 0x25, 0xc4, 0x3a, 0x21, 0x93, 0xe7, 0x39, 0x68, 0x4f, 0x04, 0xa2, 0x5a, 0x52, 0xcc, 0x30, 0x55, 0x99, 0xf2, 0x2b, 0xa6, 0xf7, 0x0c, 0x8e, 0xd0, 0x0d, 0x10, 0xb9, 0x14, 0xa9, 0x52, 0x2a, 0x25, 0xe0, 0x6c, 0x47, 0x1e, 0xbc, 0xa2, 0xff, 0x1b, 0xb4, 0xfa, 0x67, 0x99, 0xb8, 0x51, 0x22, 0x02, 0x09, 0x78, 0xdf, 0xa6, 0x6e, 0xf1, 0x2e, 0xd2, 0x6a, 0xd3, 0x83, 0x31, 0xb2, 0x6e, 0xaf, 0x59, 0x1a, 0xfc, 0xea, 0xc9, 0x6d, 0x8c, 0x77, 0x1e, 0xae, 0x50, 0xfb, 0x7f, 0x46, 0x24, 0x23, 0x37, 0xdd, 0x00, 0x29, 0xf4, 0x81, 0x3b, 0x53, }; static const unsigned char hmac_sha3_224_369_tag[] = { 0x37, 0xd7, 0x4b, 0xbc, 0x46, 0x66, 0x1f, 0x0e, 0x28, 0x19, 0xbf, 0x74, 0x5b, 0x13, 0x6a, 0xb9, 0xa2, 0xac, 0x58, 0x33, 0xb0, 0xb5, 0x3e, 0xc4, 0xe2, 0x5f, 0xc5, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_224_369 = { .name = "hmac_sha3_224_369", .hash = SHA3_224, .key = hmac_sha3_224_369_key, .keylen = 28, .msg = hmac_sha3_224_369_msg, .msglen = 112, .tag = hmac_sha3_224_369_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 370 for HMAC, tcId is 25 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_370_key[] = { 0x4f, 0x09, 0xd1, 0x4d, 0x40, 0xe4, 0x75, 0xb6, 0x82, 0x88, 0xc0, 0x80, 0x66, 0x8e, 0xbb, 0x1b, 0xc8, 0xc6, 0xbe, 0x31, 0x91, 0xf6, 0x66, 0x4d, 0x91, 0xa2, 0x3f, 0xcd, }; static const unsigned char hmac_sha3_224_370_msg[] = { 0xae, 0x8b, 0x6e, 0xcc, 0x21, 0x9b, 0x36, 0x8d, 0x22, 0xfb, 0x59, 0x6e, 0x42, 0x65, 0x2d, 0x0b, 0xff, 0xee, 0x0b, 0x20, 0xd6, 0x9c, 0xfd, 0x08, 0x9c, 0xe3, 0xdc, 0x93, 0x03, 0xba, 0x2f, 0x05, 0x4c, 0xca, 0xf5, 0xf5, 0x14, 0x7c, 0x79, 0x68, 0xa0, 0x28, 0xb1, 0x40, 0xf5, 0xe3, 0xc9, 0x27, 0x4e, 0xae, 0x2a, 0xfc, 0x61, 0xc3, 0xbb, 0x62, 0x98, 0xdc, 0x59, 0x8d, 0xf7, 0x7d, 0xec, 0x1c, 0xd2, 0xdd, 0x84, 0x21, 0x26, 0x93, 0xb0, 0x82, 0xb8, 0x13, 0x2a, 0xd0, 0xf0, 0xb1, 0x9f, 0x66, 0xdb, 0x69, 0xfa, 0x7f, 0x6b, 0xf3, 0x52, 0xb4, 0xfe, 0xac, 0x72, 0x4c, 0xe0, 0x48, 0x44, 0x0d, 0x2a, 0x42, 0xb4, 0x4d, 0x53, 0xbb, 0x62, 0xfe, 0x2a, 0xb2, 0x5f, 0x7f, 0x54, 0xbe, 0xdf, 0x9c, 0xe7, 0xdd, 0xaf, 0xd8, 0xe0, 0x93, 0x30, 0xda, 0xcc, 0x6d, 0x52, 0xee, 0x9b, 0x65, 0xf5, }; static const unsigned char hmac_sha3_224_370_tag[] = { 0x8c, 0xf8, 0x6e, 0xd4, 0x4a, 0xdb, 0x37, 0xc5, 0x5b, 0x7a, 0x9b, 0xe8, 0x66, 0xb8, 0x9b, 0x8f, 0xec, 0x1d, 0x77, 0x20, 0x50, 0xb5, 0x42, 0x4a, 0x5f, 0xa8, 0x90, 0xd2, }; static const wycheproof_hmac_test hmac_sha3_224_370 = { .name = "hmac_sha3_224_370", .hash = SHA3_224, .key = hmac_sha3_224_370_key, .keylen = 28, .msg = hmac_sha3_224_370_msg, .msglen = 127, .tag = hmac_sha3_224_370_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 371 for HMAC, tcId is 26 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_371_key[] = { 0x61, 0x3f, 0x41, 0x4c, 0xd9, 0x41, 0x30, 0xbb, 0x8a, 0x62, 0x43, 0xe1, 0x2e, 0xcc, 0xd9, 0x08, 0x36, 0x80, 0x84, 0x28, 0xb4, 0xa7, 0x17, 0x78, 0x67, 0x93, 0x4d, 0xa0, }; static const unsigned char hmac_sha3_224_371_msg[] = { 0xf6, 0x96, 0xb9, 0x06, 0x3b, 0x64, 0x81, 0x6a, 0x45, 0x06, 0x4f, 0x48, 0xca, 0x05, 0xff, 0xe4, 0xd5, 0xcc, 0x3d, 0x0b, 0x3b, 0xeb, 0x0d, 0xd4, 0x05, 0x7b, 0x6a, 0xda, 0x99, 0x49, 0x69, 0xbf, 0x03, 0x9b, 0xfb, 0xb7, 0x2c, 0xe1, 0x97, 0x10, 0x1c, 0xc4, 0xe4, 0xb3, 0x95, 0x9b, 0x37, 0x02, 0xf0, 0x45, 0xaf, 0xb7, 0xfb, 0x31, 0x13, 0xc9, 0x97, 0x60, 0x6d, 0xca, 0xf2, 0xaa, 0xab, 0x31, 0xe0, 0x2a, 0xc6, 0xee, 0x59, 0x7d, 0xfc, 0x0f, 0x91, 0x43, 0xd0, 0xef, 0xfe, 0xdc, 0x9a, 0xe7, 0xea, 0x10, 0xe7, 0xdd, 0xb1, 0xdb, 0x86, 0x0a, 0x91, 0xaf, 0xec, 0x62, 0xc4, 0x8e, 0xd9, 0xc0, 0xa6, 0xc1, 0x0b, 0x4d, 0xa1, 0xde, 0x74, 0x8c, 0xaf, 0x7f, 0x7a, 0x5e, 0x01, 0x79, 0x9a, 0xc5, 0x70, 0x90, 0xda, 0xf4, 0xe3, 0x35, 0x2f, 0xe8, 0x59, 0xc5, 0x13, 0x1c, 0x20, 0x5d, 0x26, 0x2d, }; static const unsigned char hmac_sha3_224_371_tag[] = { 0x0c, 0x81, 0x65, 0xba, 0x51, 0x9c, 0x38, 0xc9, 0x31, 0x09, 0x5d, 0x5d, 0x4c, 0xd1, 0x3c, 0x8f, 0xb3, 0x03, 0x52, 0x52, 0x89, 0x6f, 0x26, 0xc0, 0x58, 0x16, 0x7f, 0xe0, }; static const wycheproof_hmac_test hmac_sha3_224_371 = { .name = "hmac_sha3_224_371", .hash = SHA3_224, .key = hmac_sha3_224_371_key, .keylen = 28, .msg = hmac_sha3_224_371_msg, .msglen = 128, .tag = hmac_sha3_224_371_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 372 for HMAC, tcId is 27 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_372_key[] = { 0x5b, 0x88, 0x27, 0x53, 0x07, 0xaa, 0xf6, 0x91, 0xa0, 0xcf, 0x0c, 0x51, 0xf5, 0x05, 0x53, 0xdd, 0xa9, 0x72, 0xd1, 0x4f, 0x8a, 0xff, 0xf9, 0x8e, 0x62, 0xc2, 0xd9, 0x72, }; static const unsigned char hmac_sha3_224_372_msg[] = { 0x57, 0xe4, 0xef, 0xbd, 0xe1, 0xce, 0x9f, 0xee, 0x2e, 0x29, 0xdb, 0x19, 0xdf, 0xc6, 0xba, 0x3b, 0xcb, 0x17, 0xf3, 0x37, 0x65, 0xaf, 0x7f, 0x20, 0x13, 0x3b, 0xbd, 0x19, 0x10, 0xd5, 0x42, 0x14, 0x5c, 0x7d, 0xef, 0x18, 0x7a, 0x30, 0x45, 0x17, 0xb8, 0xd8, 0x95, 0x44, 0x54, 0xa9, 0x0a, 0x71, 0x7f, 0x67, 0xf9, 0xc8, 0xcc, 0x58, 0x79, 0x65, 0xfd, 0x9b, 0x43, 0xf4, 0x1e, 0xcc, 0x50, 0xb3, 0x45, 0x8d, 0x8c, 0xe9, 0xf6, 0x6b, 0x47, 0x5f, 0x1e, 0xae, 0xf4, 0xa2, 0x9b, 0xa8, 0x9a, 0x3d, 0x58, 0xe5, 0x01, 0x1c, 0x92, 0xac, 0xd1, 0x53, 0x6f, 0xcd, 0x18, 0xab, 0xec, 0x29, 0x41, 0x1b, 0x38, 0x9b, 0x64, 0xf7, 0xf3, 0x44, 0x77, 0x7e, 0xd6, 0xde, 0xae, 0x32, 0x12, 0x7a, 0xba, 0xa6, 0x9a, 0x50, 0xba, 0x22, 0xa1, 0x1d, 0x6e, 0x59, 0x35, 0x4f, 0x2f, 0xf0, 0xe3, 0xc3, 0xe3, 0x29, 0x3c, 0xdc, 0x33, 0x54, 0x11, 0xcf, 0x55, 0xb1, 0x80, 0xba, 0xb5, 0x9d, 0xa3, 0x69, 0x03, 0xa6, 0xfb, 0xa9, 0x1d, 0xf3, 0x4d, 0x2a, 0xad, 0xf7, 0x01, 0x7f, 0xf4, 0x9a, 0x4f, 0xbd, 0x73, 0xc9, 0xc7, 0x44, 0x69, 0xf2, 0x25, 0xda, 0xfc, 0x0a, 0x0c, 0x70, 0x48, 0xc2, 0xb8, 0x24, 0xcc, 0x0c, 0xba, 0x8c, 0xad, 0x8a, 0xce, 0xd1, 0x1b, 0x8c, 0xda, 0xc3, 0x24, 0x3c, 0xdb, 0x5b, 0x65, 0x4f, 0x7a, 0x15, 0xce, 0x20, 0x14, 0xe9, 0x2e, 0xe2, 0x87, 0xd0, 0x69, 0x04, 0xd7, 0x78, 0x51, 0x2a, 0x1b, 0x1f, 0x5e, 0xc0, 0xc9, 0xb0, 0x90, 0xb9, 0xab, 0x43, 0x9c, 0x44, 0x26, 0x6b, 0x6b, 0xe3, 0xd6, 0xa9, 0x89, 0x47, 0xd2, 0x6d, 0x07, 0x9e, 0x4f, 0x7e, 0x84, 0x9f, 0x3c, 0x6d, 0x93, 0xde, 0x98, 0x62, 0x4e, 0x6c, 0x5f, 0x53, 0xec, 0x02, 0xdb, 0xd3, 0x68, 0xbc, 0x24, 0xa3, 0x00, }; static const unsigned char hmac_sha3_224_372_tag[] = { 0x9c, 0x62, 0xc3, 0x09, 0x97, 0x76, 0x41, 0xbe, 0x25, 0xed, 0xe8, 0xf7, 0xcd, 0x22, 0x7d, 0xf7, 0x1b, 0xbf, 0x15, 0x14, 0xd2, 0x6c, 0x0d, 0xf5, 0xff, 0x3a, 0xdf, 0xe7, }; static const wycheproof_hmac_test hmac_sha3_224_372 = { .name = "hmac_sha3_224_372", .hash = SHA3_224, .key = hmac_sha3_224_372_key, .keylen = 28, .msg = hmac_sha3_224_372_msg, .msglen = 255, .tag = hmac_sha3_224_372_tag, .taglen = 28, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 373 for HMAC, tcId is 28 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_373_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_373_tag[] = { 0x42, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_373 = { .name = "hmac_sha3_224_373", .hash = SHA3_224, .key = hmac_sha3_224_373_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_373_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 374 for HMAC, tcId is 29 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_374_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_374_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_374_tag[] = { 0x14, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_374 = { .name = "hmac_sha3_224_374", .hash = SHA3_224, .key = hmac_sha3_224_374_key, .keylen = 28, .msg = hmac_sha3_224_374_msg, .msglen = 16, .tag = hmac_sha3_224_374_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 375 for HMAC, tcId is 30 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_375_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_375_tag[] = { 0x41, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_375 = { .name = "hmac_sha3_224_375", .hash = SHA3_224, .key = hmac_sha3_224_375_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_375_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 376 for HMAC, tcId is 31 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_376_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_376_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_376_tag[] = { 0x17, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_376 = { .name = "hmac_sha3_224_376", .hash = SHA3_224, .key = hmac_sha3_224_376_key, .keylen = 28, .msg = hmac_sha3_224_376_msg, .msglen = 16, .tag = hmac_sha3_224_376_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 377 for HMAC, tcId is 32 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_377_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_377_tag[] = { 0xc3, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_377 = { .name = "hmac_sha3_224_377", .hash = SHA3_224, .key = hmac_sha3_224_377_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_377_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 378 for HMAC, tcId is 33 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_378_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_378_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_378_tag[] = { 0x95, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_378 = { .name = "hmac_sha3_224_378", .hash = SHA3_224, .key = hmac_sha3_224_378_key, .keylen = 28, .msg = hmac_sha3_224_378_msg, .msglen = 16, .tag = hmac_sha3_224_378_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 379 for HMAC, tcId is 34 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_379_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_379_tag[] = { 0x43, 0xb9, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_379 = { .name = "hmac_sha3_224_379", .hash = SHA3_224, .key = hmac_sha3_224_379_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_379_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 380 for HMAC, tcId is 35 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_380_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_380_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_380_tag[] = { 0x15, 0xba, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_380 = { .name = "hmac_sha3_224_380", .hash = SHA3_224, .key = hmac_sha3_224_380_key, .keylen = 28, .msg = hmac_sha3_224_380_msg, .msglen = 16, .tag = hmac_sha3_224_380_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 381 for HMAC, tcId is 36 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_381_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_381_tag[] = { 0x43, 0xb8, 0xf9, 0xcf, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_381 = { .name = "hmac_sha3_224_381", .hash = SHA3_224, .key = hmac_sha3_224_381_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_381_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 382 for HMAC, tcId is 37 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_382_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_382_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_382_tag[] = { 0x15, 0xbb, 0xda, 0xda, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_382 = { .name = "hmac_sha3_224_382", .hash = SHA3_224, .key = hmac_sha3_224_382_key, .keylen = 28, .msg = hmac_sha3_224_382_msg, .msglen = 16, .tag = hmac_sha3_224_382_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 383 for HMAC, tcId is 38 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_383_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_383_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe2, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_383 = { .name = "hmac_sha3_224_383", .hash = SHA3_224, .key = hmac_sha3_224_383_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_383_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 384 for HMAC, tcId is 39 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_384_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_384_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_384_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe0, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_384 = { .name = "hmac_sha3_224_384", .hash = SHA3_224, .key = hmac_sha3_224_384_key, .keylen = 28, .msg = hmac_sha3_224_384_msg, .msglen = 16, .tag = hmac_sha3_224_384_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 385 for HMAC, tcId is 40 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_385_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_385_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe1, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_385 = { .name = "hmac_sha3_224_385", .hash = SHA3_224, .key = hmac_sha3_224_385_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_385_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 386 for HMAC, tcId is 41 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_386_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_386_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_386_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe3, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_386 = { .name = "hmac_sha3_224_386", .hash = SHA3_224, .key = hmac_sha3_224_386_key, .keylen = 28, .msg = hmac_sha3_224_386_msg, .msglen = 16, .tag = hmac_sha3_224_386_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 387 for HMAC, tcId is 42 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_387_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_387_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0xe2, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_387 = { .name = "hmac_sha3_224_387", .hash = SHA3_224, .key = hmac_sha3_224_387_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_387_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 388 for HMAC, tcId is 43 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_388_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_388_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_388_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0x5f, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_388 = { .name = "hmac_sha3_224_388", .hash = SHA3_224, .key = hmac_sha3_224_388_key, .keylen = 28, .msg = hmac_sha3_224_388_msg, .msglen = 16, .tag = hmac_sha3_224_388_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 389 for HMAC, tcId is 44 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_389_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_389_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x61, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_389 = { .name = "hmac_sha3_224_389", .hash = SHA3_224, .key = hmac_sha3_224_389_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_389_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 390 for HMAC, tcId is 45 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_390_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_390_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_390_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xac, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_390 = { .name = "hmac_sha3_224_390", .hash = SHA3_224, .key = hmac_sha3_224_390_key, .keylen = 28, .msg = hmac_sha3_224_390_msg, .msglen = 16, .tag = hmac_sha3_224_390_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 391 for HMAC, tcId is 46 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_391_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_391_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0xe0, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_391 = { .name = "hmac_sha3_224_391", .hash = SHA3_224, .key = hmac_sha3_224_391_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_391_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 392 for HMAC, tcId is 47 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_392_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_392_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_392_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0x2d, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_392 = { .name = "hmac_sha3_224_392", .hash = SHA3_224, .key = hmac_sha3_224_392_key, .keylen = 28, .msg = hmac_sha3_224_392_msg, .msglen = 16, .tag = hmac_sha3_224_392_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 393 for HMAC, tcId is 48 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_393_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_393_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x2c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_393 = { .name = "hmac_sha3_224_393", .hash = SHA3_224, .key = hmac_sha3_224_393_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_393_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 394 for HMAC, tcId is 49 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_394_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_394_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_394_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0xb6, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_394 = { .name = "hmac_sha3_224_394", .hash = SHA3_224, .key = hmac_sha3_224_394_key, .keylen = 28, .msg = hmac_sha3_224_394_msg, .msglen = 16, .tag = hmac_sha3_224_394_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 395 for HMAC, tcId is 50 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_395_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_395_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x96, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_395 = { .name = "hmac_sha3_224_395", .hash = SHA3_224, .key = hmac_sha3_224_395_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_395_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 396 for HMAC, tcId is 51 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_396_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_396_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_396_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x09, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_396 = { .name = "hmac_sha3_224_396", .hash = SHA3_224, .key = hmac_sha3_224_396_key, .keylen = 28, .msg = hmac_sha3_224_396_msg, .msglen = 16, .tag = hmac_sha3_224_396_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 397 for HMAC, tcId is 52 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_397_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_397_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7b, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_397 = { .name = "hmac_sha3_224_397", .hash = SHA3_224, .key = hmac_sha3_224_397_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_397_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 398 for HMAC, tcId is 53 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_398_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_398_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_398_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8e, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_398 = { .name = "hmac_sha3_224_398", .hash = SHA3_224, .key = hmac_sha3_224_398_key, .keylen = 28, .msg = hmac_sha3_224_398_msg, .msglen = 16, .tag = hmac_sha3_224_398_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 399 for HMAC, tcId is 54 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_399_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_399_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x78, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_399 = { .name = "hmac_sha3_224_399", .hash = SHA3_224, .key = hmac_sha3_224_399_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_399_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 400 for HMAC, tcId is 55 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_400_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_400_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_400_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8d, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_400 = { .name = "hmac_sha3_224_400", .hash = SHA3_224, .key = hmac_sha3_224_400_key, .keylen = 28, .msg = hmac_sha3_224_400_msg, .msglen = 16, .tag = hmac_sha3_224_400_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 401 for HMAC, tcId is 56 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_401_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_401_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0xfa, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_401 = { .name = "hmac_sha3_224_401", .hash = SHA3_224, .key = hmac_sha3_224_401_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_401_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 402 for HMAC, tcId is 57 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_402_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_402_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_402_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x0f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_402 = { .name = "hmac_sha3_224_402", .hash = SHA3_224, .key = hmac_sha3_224_402_key, .keylen = 28, .msg = hmac_sha3_224_402_msg, .msglen = 16, .tag = hmac_sha3_224_402_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 403 for HMAC, tcId is 58 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_403_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_403_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xdb, }; static const wycheproof_hmac_test hmac_sha3_224_403 = { .name = "hmac_sha3_224_403", .hash = SHA3_224, .key = hmac_sha3_224_403_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_403_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 216 in tag, tcId is 58 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 404 for HMAC, tcId is 59 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_404_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_404_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_404_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xea, }; static const wycheproof_hmac_test hmac_sha3_224_404 = { .name = "hmac_sha3_224_404", .hash = SHA3_224, .key = hmac_sha3_224_404_key, .keylen = 28, .msg = hmac_sha3_224_404_msg, .msglen = 16, .tag = hmac_sha3_224_404_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 216 in tag, tcId is 59 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 405 for HMAC, tcId is 60 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_405_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_405_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xd8, }; static const wycheproof_hmac_test hmac_sha3_224_405 = { .name = "hmac_sha3_224_405", .hash = SHA3_224, .key = hmac_sha3_224_405_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_405_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 217 in tag, tcId is 60 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 406 for HMAC, tcId is 61 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_406_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_406_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_406_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xe9, }; static const wycheproof_hmac_test hmac_sha3_224_406 = { .name = "hmac_sha3_224_406", .hash = SHA3_224, .key = hmac_sha3_224_406_key, .keylen = 28, .msg = hmac_sha3_224_406_msg, .msglen = 16, .tag = hmac_sha3_224_406_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 217 in tag, tcId is 61 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 407 for HMAC, tcId is 62 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_407_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_407_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_224_407 = { .name = "hmac_sha3_224_407", .hash = SHA3_224, .key = hmac_sha3_224_407_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_407_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 222 in tag, tcId is 62 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 408 for HMAC, tcId is 63 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_408_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_408_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_408_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xab, }; static const wycheproof_hmac_test hmac_sha3_224_408 = { .name = "hmac_sha3_224_408", .hash = SHA3_224, .key = hmac_sha3_224_408_key, .keylen = 28, .msg = hmac_sha3_224_408_msg, .msglen = 16, .tag = hmac_sha3_224_408_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 222 in tag, tcId is 63 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 409 for HMAC, tcId is 64 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_409_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_409_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0x5a, }; static const wycheproof_hmac_test hmac_sha3_224_409 = { .name = "hmac_sha3_224_409", .hash = SHA3_224, .key = hmac_sha3_224_409_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_409_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 223 in tag, tcId is 64 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 410 for HMAC, tcId is 65 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_410_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_410_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_410_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0x6b, }; static const wycheproof_hmac_test hmac_sha3_224_410 = { .name = "hmac_sha3_224_410", .hash = SHA3_224, .key = hmac_sha3_224_410_key, .keylen = 28, .msg = hmac_sha3_224_410_msg, .msglen = 16, .tag = hmac_sha3_224_410_tag, .taglen = 28, .result = -1, .comment = "Flipped bit 223 in tag, tcId is 65 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 411 for HMAC, tcId is 66 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_411_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_411_tag[] = { 0x42, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x61, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_411 = { .name = "hmac_sha3_224_411", .hash = SHA3_224, .key = hmac_sha3_224_411_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_411_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 412 for HMAC, tcId is 67 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_412_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_412_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_412_tag[] = { 0x14, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xac, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_412 = { .name = "hmac_sha3_224_412", .hash = SHA3_224, .key = hmac_sha3_224_412_key, .keylen = 28, .msg = hmac_sha3_224_412_msg, .msglen = 16, .tag = hmac_sha3_224_412_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 413 for HMAC, tcId is 68 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_413_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_413_tag[] = { 0x43, 0xb8, 0xf9, 0xcf, 0xe3, 0x1d, 0x26, 0xe2, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0x54, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_413 = { .name = "hmac_sha3_224_413", .hash = SHA3_224, .key = hmac_sha3_224_413_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_413_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 414 for HMAC, tcId is 69 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_414_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_414_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_414_tag[] = { 0x15, 0xbb, 0xda, 0xda, 0xe1, 0x1d, 0xc2, 0x5f, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x10, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_414 = { .name = "hmac_sha3_224_414", .hash = SHA3_224, .key = hmac_sha3_224_414_key, .keylen = 28, .msg = hmac_sha3_224_414_msg, .msglen = 16, .tag = hmac_sha3_224_414_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 415 for HMAC, tcId is 70 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_415_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_415_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0xe2, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, 0xd4, 0xd4, 0x22, 0xde, 0x6c, 0x5b, 0xeb, 0x14, 0xdc, 0x05, 0xf7, 0x6b, 0xa6, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_415 = { .name = "hmac_sha3_224_415", .hash = SHA3_224, .key = hmac_sha3_224_415_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_415_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 416 for HMAC, tcId is 71 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_416_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_416_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_416_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0x5f, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, 0x97, 0x90, 0x30, 0x0a, 0x5e, 0x0b, 0x56, 0x67, 0x2f, 0x61, 0x99, 0xfc, 0x62, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_224_416 = { .name = "hmac_sha3_224_416", .hash = SHA3_224, .key = hmac_sha3_224_416_key, .keylen = 28, .msg = hmac_sha3_224_416_msg, .msglen = 16, .tag = hmac_sha3_224_416_tag, .taglen = 28, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 417 for HMAC, tcId is 72 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_417_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_417_tag[] = { 0xbc, 0x47, 0x06, 0xb0, 0x1c, 0xe2, 0xd9, 0x9d, 0x9f, 0xf3, 0x68, 0xf6, 0x85, 0x5f, 0x2b, 0xab, 0xdd, 0x21, 0x93, 0xa4, 0x14, 0xeb, 0x23, 0xfa, 0x08, 0x94, 0x59, 0x25, }; static const wycheproof_hmac_test hmac_sha3_224_417 = { .name = "hmac_sha3_224_417", .hash = SHA3_224, .key = hmac_sha3_224_417_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_417_tag, .taglen = 28, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 418 for HMAC, tcId is 73 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_418_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_418_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_418_tag[] = { 0xea, 0x44, 0x25, 0xa5, 0x1e, 0xe2, 0x3d, 0x20, 0x52, 0x69, 0xf7, 0xa9, 0x70, 0xfe, 0x68, 0xef, 0xcf, 0xf5, 0xa1, 0xf4, 0xa9, 0x98, 0xd0, 0x9e, 0x66, 0x03, 0x9d, 0x14, }; static const wycheproof_hmac_test hmac_sha3_224_418 = { .name = "hmac_sha3_224_418", .hash = SHA3_224, .key = hmac_sha3_224_418_key, .keylen = 28, .msg = hmac_sha3_224_418_msg, .msglen = 16, .tag = hmac_sha3_224_418_tag, .taglen = 28, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 419 for HMAC, tcId is 74 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_419_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_419_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_419 = { .name = "hmac_sha3_224_419", .hash = SHA3_224, .key = hmac_sha3_224_419_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_419_tag, .taglen = 28, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 420 for HMAC, tcId is 75 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_420_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_420_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_420_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_420 = { .name = "hmac_sha3_224_420", .hash = SHA3_224, .key = hmac_sha3_224_420_key, .keylen = 28, .msg = hmac_sha3_224_420_msg, .msglen = 16, .tag = hmac_sha3_224_420_tag, .taglen = 28, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 421 for HMAC, tcId is 76 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_421_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_421_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_224_421 = { .name = "hmac_sha3_224_421", .hash = SHA3_224, .key = hmac_sha3_224_421_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_421_tag, .taglen = 28, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 422 for HMAC, tcId is 77 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_422_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_422_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_422_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_224_422 = { .name = "hmac_sha3_224_422", .hash = SHA3_224, .key = hmac_sha3_224_422_key, .keylen = 28, .msg = hmac_sha3_224_422_msg, .msglen = 16, .tag = hmac_sha3_224_422_tag, .taglen = 28, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 423 for HMAC, tcId is 78 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_423_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_423_tag[] = { 0xc3, 0x38, 0x79, 0xcf, 0x63, 0x9d, 0xa6, 0xe2, 0xe0, 0x8c, 0x17, 0x89, 0xfa, 0x20, 0x54, 0xd4, 0xa2, 0x5e, 0xec, 0xdb, 0x6b, 0x94, 0x5c, 0x85, 0x77, 0xeb, 0x26, 0x5a, }; static const wycheproof_hmac_test hmac_sha3_224_423 = { .name = "hmac_sha3_224_423", .hash = SHA3_224, .key = hmac_sha3_224_423_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_423_tag, .taglen = 28, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 424 for HMAC, tcId is 79 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_424_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_424_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_424_tag[] = { 0x95, 0x3b, 0x5a, 0xda, 0x61, 0x9d, 0x42, 0x5f, 0x2d, 0x16, 0x88, 0xd6, 0x0f, 0x81, 0x17, 0x90, 0xb0, 0x8a, 0xde, 0x8b, 0xd6, 0xe7, 0xaf, 0xe1, 0x19, 0x7c, 0xe2, 0x6b, }; static const wycheproof_hmac_test hmac_sha3_224_424 = { .name = "hmac_sha3_224_424", .hash = SHA3_224, .key = hmac_sha3_224_424_key, .keylen = 28, .msg = hmac_sha3_224_424_msg, .msglen = 16, .tag = hmac_sha3_224_424_tag, .taglen = 28, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 425 for HMAC, tcId is 80 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_425_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_425_tag[] = { 0x42, 0xb9, 0xf8, 0x4e, 0xe2, 0x1c, 0x27, 0x63, 0x61, 0x0d, 0x96, 0x08, 0x7b, 0xa1, 0xd5, 0x55, 0x23, 0xdf, 0x6d, 0x5a, 0xea, 0x15, 0xdd, 0x04, 0xf6, 0x6a, 0xa7, 0xdb, }; static const wycheproof_hmac_test hmac_sha3_224_425 = { .name = "hmac_sha3_224_425", .hash = SHA3_224, .key = hmac_sha3_224_425_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_425_tag, .taglen = 28, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 426 for HMAC, tcId is 81 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_426_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_426_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_426_tag[] = { 0x14, 0xba, 0xdb, 0x5b, 0xe0, 0x1c, 0xc3, 0xde, 0xac, 0x97, 0x09, 0x57, 0x8e, 0x00, 0x96, 0x11, 0x31, 0x0b, 0x5f, 0x0a, 0x57, 0x66, 0x2e, 0x60, 0x98, 0xfd, 0x63, 0xea, }; static const wycheproof_hmac_test hmac_sha3_224_426 = { .name = "hmac_sha3_224_426", .hash = SHA3_224, .key = hmac_sha3_224_426_key, .keylen = 28, .msg = hmac_sha3_224_426_msg, .msglen = 16, .tag = hmac_sha3_224_426_tag, .taglen = 28, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 427 for HMAC, tcId is 82 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_427_key[] = { 0x26, 0xf3, 0x14, 0x17, 0x0b, 0x05, 0x4d, 0xae, 0xf5, 0x34, 0x98, 0x04, 0xda, 0x18, 0xf9, 0x69, 0xc9, 0x41, 0x74, 0xba, 0xca, 0x2b, 0xee, 0xb0, 0x09, 0xd4, 0x7a, 0x23, }; static const unsigned char hmac_sha3_224_427_tag[] = { 0x32, 0xf3, 0xe1, 0x28, 0x26, 0xc2, 0xc8, 0x69, 0x66, 0x0e, 0xd7, 0xac, 0x65, 0xa5, }; static const wycheproof_hmac_test hmac_sha3_224_427 = { .name = "hmac_sha3_224_427", .hash = SHA3_224, .key = hmac_sha3_224_427_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_427_tag, .taglen = 14, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 428 for HMAC, tcId is 83 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_428_key[] = { 0x17, 0x42, 0x9a, 0x62, 0x2d, 0xc1, 0x8d, 0x38, 0x71, 0x5b, 0x31, 0xf8, 0xf2, 0xb9, 0x63, 0x10, 0x8e, 0x95, 0x2a, 0x67, 0x08, 0xf3, 0xe5, 0x2d, 0x5b, 0x25, 0x84, 0x8a, }; static const unsigned char hmac_sha3_224_428_msg[] = { 0xda, }; static const unsigned char hmac_sha3_224_428_tag[] = { 0x24, 0xca, 0xe2, 0xff, 0xb8, 0x44, 0xb1, 0x07, 0x4f, 0xbe, 0xcf, 0xa2, 0x15, 0x85, }; static const wycheproof_hmac_test hmac_sha3_224_428 = { .name = "hmac_sha3_224_428", .hash = SHA3_224, .key = hmac_sha3_224_428_key, .keylen = 28, .msg = hmac_sha3_224_428_msg, .msglen = 1, .tag = hmac_sha3_224_428_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 429 for HMAC, tcId is 84 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_429_key[] = { 0x0a, 0xcf, 0xe1, 0x2d, 0x89, 0xac, 0xd7, 0xd9, 0xca, 0x49, 0xba, 0xe6, 0x31, 0x8f, 0x35, 0xb2, 0xfb, 0xbf, 0xc8, 0x4e, 0x5d, 0x2c, 0x9d, 0x49, 0x54, 0xbe, 0xde, 0xd7, }; static const unsigned char hmac_sha3_224_429_msg[] = { 0x03, 0xa8, }; static const unsigned char hmac_sha3_224_429_tag[] = { 0x25, 0x94, 0xd6, 0x2d, 0xaa, 0xed, 0xef, 0x9e, 0x87, 0x08, 0x07, 0x13, 0xea, 0xd3, }; static const wycheproof_hmac_test hmac_sha3_224_429 = { .name = "hmac_sha3_224_429", .hash = SHA3_224, .key = hmac_sha3_224_429_key, .keylen = 28, .msg = hmac_sha3_224_429_msg, .msglen = 2, .tag = hmac_sha3_224_429_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 430 for HMAC, tcId is 85 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_430_key[] = { 0x5a, 0x06, 0x80, 0xf1, 0x12, 0x35, 0x4b, 0xd4, 0x67, 0x86, 0x5b, 0x19, 0xae, 0x95, 0x6b, 0x27, 0x19, 0xe2, 0x1e, 0xce, 0xe1, 0xa9, 0x13, 0xbd, 0xca, 0x29, 0x43, 0x39, }; static const unsigned char hmac_sha3_224_430_msg[] = { 0xa0, 0xfb, 0x73, }; static const unsigned char hmac_sha3_224_430_tag[] = { 0x51, 0x11, 0x52, 0x1c, 0x27, 0xf8, 0x23, 0x5f, 0x15, 0x4c, 0xce, 0x85, 0xd0, 0x2c, }; static const wycheproof_hmac_test hmac_sha3_224_430 = { .name = "hmac_sha3_224_430", .hash = SHA3_224, .key = hmac_sha3_224_430_key, .keylen = 28, .msg = hmac_sha3_224_430_msg, .msglen = 3, .tag = hmac_sha3_224_430_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 431 for HMAC, tcId is 86 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_431_key[] = { 0x46, 0xfa, 0x59, 0xaa, 0x52, 0x4f, 0xe3, 0x0a, 0x0f, 0x4e, 0x39, 0x56, 0x1b, 0x56, 0x66, 0x85, 0x44, 0x40, 0xdb, 0xd9, 0x70, 0xbb, 0x59, 0x92, 0x5c, 0xe0, 0xae, 0x1a, }; static const unsigned char hmac_sha3_224_431_msg[] = { 0xc8, 0xb2, 0xf5, 0x57, }; static const unsigned char hmac_sha3_224_431_tag[] = { 0x03, 0x85, 0x21, 0x39, 0x7a, 0x49, 0xe9, 0x5f, 0x43, 0xc7, 0x41, 0x27, 0x6b, 0xd0, }; static const wycheproof_hmac_test hmac_sha3_224_431 = { .name = "hmac_sha3_224_431", .hash = SHA3_224, .key = hmac_sha3_224_431_key, .keylen = 28, .msg = hmac_sha3_224_431_msg, .msglen = 4, .tag = hmac_sha3_224_431_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 432 for HMAC, tcId is 87 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_432_key[] = { 0x29, 0xef, 0xc5, 0xab, 0x5d, 0x30, 0xe5, 0x35, 0x35, 0x76, 0x03, 0xf2, 0x71, 0x1b, 0x6e, 0x0a, 0xa6, 0xcf, 0x46, 0x13, 0x54, 0x6c, 0x23, 0x14, 0x44, 0x36, 0xd2, 0x13, }; static const unsigned char hmac_sha3_224_432_msg[] = { 0xc8, 0xd9, 0xf5, 0xb3, 0x73, }; static const unsigned char hmac_sha3_224_432_tag[] = { 0xbc, 0xce, 0x4d, 0xd5, 0xa9, 0x0f, 0x1a, 0x04, 0x31, 0xd4, 0x5e, 0x8f, 0x1d, 0xcf, }; static const wycheproof_hmac_test hmac_sha3_224_432 = { .name = "hmac_sha3_224_432", .hash = SHA3_224, .key = hmac_sha3_224_432_key, .keylen = 28, .msg = hmac_sha3_224_432_msg, .msglen = 5, .tag = hmac_sha3_224_432_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 433 for HMAC, tcId is 88 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_433_key[] = { 0xfe, 0x60, 0xe0, 0x32, 0x20, 0x35, 0x53, 0x8f, 0x2b, 0x1d, 0xe9, 0xde, 0x38, 0x0c, 0xde, 0x35, 0xf2, 0x91, 0xde, 0xeb, 0x6e, 0x02, 0x7b, 0x5d, 0x82, 0x9e, 0xcd, 0x1e, }; static const unsigned char hmac_sha3_224_433_msg[] = { 0x18, 0x5e, 0x4c, 0xad, 0xa4, 0xf4, }; static const unsigned char hmac_sha3_224_433_tag[] = { 0xa1, 0x18, 0x73, 0x69, 0x1f, 0xd9, 0xff, 0xca, 0xd1, 0xf1, 0xa3, 0xf6, 0x65, 0x11, }; static const wycheproof_hmac_test hmac_sha3_224_433 = { .name = "hmac_sha3_224_433", .hash = SHA3_224, .key = hmac_sha3_224_433_key, .keylen = 28, .msg = hmac_sha3_224_433_msg, .msglen = 6, .tag = hmac_sha3_224_433_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 434 for HMAC, tcId is 89 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_434_key[] = { 0x1b, 0xf7, 0xfc, 0xdf, 0x37, 0x42, 0xfa, 0x77, 0x99, 0x15, 0x28, 0xcc, 0x1c, 0x67, 0x8b, 0x98, 0xbe, 0x98, 0x76, 0xa8, 0xc8, 0xc5, 0xb8, 0x09, 0xbe, 0xab, 0x7d, 0x9c, }; static const unsigned char hmac_sha3_224_434_msg[] = { 0x9c, 0x0f, 0x34, 0xa5, 0x65, 0x42, 0x79, }; static const unsigned char hmac_sha3_224_434_tag[] = { 0x63, 0x72, 0x2a, 0x80, 0x56, 0x84, 0xc3, 0x1a, 0x37, 0xab, 0xa7, 0xf5, 0xd7, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_224_434 = { .name = "hmac_sha3_224_434", .hash = SHA3_224, .key = hmac_sha3_224_434_key, .keylen = 28, .msg = hmac_sha3_224_434_msg, .msglen = 7, .tag = hmac_sha3_224_434_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 435 for HMAC, tcId is 90 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_435_key[] = { 0x32, 0x53, 0x3c, 0x16, 0xf7, 0x92, 0xed, 0x0a, 0xcf, 0x8e, 0x9e, 0x60, 0xf5, 0x4a, 0xa1, 0x73, 0x93, 0x7c, 0x71, 0x94, 0xb8, 0x82, 0xec, 0xc3, 0xe6, 0x71, 0x00, 0x9f, }; static const unsigned char hmac_sha3_224_435_msg[] = { 0xf9, 0x68, 0xdc, 0x7a, 0x19, 0xaf, 0xe3, 0x39, }; static const unsigned char hmac_sha3_224_435_tag[] = { 0x34, 0x86, 0x66, 0xb6, 0x82, 0x85, 0xb5, 0x17, 0x87, 0xbe, 0x5d, 0x8d, 0x50, 0xca, }; static const wycheproof_hmac_test hmac_sha3_224_435 = { .name = "hmac_sha3_224_435", .hash = SHA3_224, .key = hmac_sha3_224_435_key, .keylen = 28, .msg = hmac_sha3_224_435_msg, .msglen = 8, .tag = hmac_sha3_224_435_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 436 for HMAC, tcId is 91 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_436_key[] = { 0x3c, 0xf2, 0x8a, 0x47, 0x6c, 0xe7, 0xea, 0xec, 0xfc, 0x3f, 0xbf, 0x1b, 0x08, 0x59, 0xa0, 0x42, 0xa5, 0x68, 0x74, 0x0a, 0x58, 0x4c, 0x77, 0xcb, 0x8f, 0x96, 0x03, 0xac, }; static const unsigned char hmac_sha3_224_436_msg[] = { 0xdb, 0xca, 0x9e, 0x4b, 0xdd, 0x84, 0xb3, 0x89, 0x34, }; static const unsigned char hmac_sha3_224_436_tag[] = { 0x49, 0xa7, 0x86, 0x65, 0xd8, 0xf7, 0x7d, 0xf1, 0x4a, 0xd6, 0x60, 0x47, 0xc3, 0x77, }; static const wycheproof_hmac_test hmac_sha3_224_436 = { .name = "hmac_sha3_224_436", .hash = SHA3_224, .key = hmac_sha3_224_436_key, .keylen = 28, .msg = hmac_sha3_224_436_msg, .msglen = 9, .tag = hmac_sha3_224_436_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 437 for HMAC, tcId is 92 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_437_key[] = { 0xa2, 0xa8, 0x09, 0x0a, 0xef, 0x69, 0x27, 0x7f, 0x92, 0x83, 0x0e, 0xc7, 0x40, 0x4c, 0x03, 0x2f, 0x8f, 0xde, 0xbf, 0xbc, 0xea, 0xbb, 0x9e, 0x59, 0x09, 0x68, 0xa7, 0x7f, }; static const unsigned char hmac_sha3_224_437_msg[] = { 0x6b, 0x79, 0x0a, 0x94, 0x6a, 0x83, 0x36, 0x4c, 0x79, 0xd7, }; static const unsigned char hmac_sha3_224_437_tag[] = { 0xe7, 0xc0, 0x18, 0x3b, 0xe7, 0x0d, 0xf5, 0xd0, 0x6d, 0x28, 0x88, 0x27, 0x01, 0x2b, }; static const wycheproof_hmac_test hmac_sha3_224_437 = { .name = "hmac_sha3_224_437", .hash = SHA3_224, .key = hmac_sha3_224_437_key, .keylen = 28, .msg = hmac_sha3_224_437_msg, .msglen = 10, .tag = hmac_sha3_224_437_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 438 for HMAC, tcId is 93 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_438_key[] = { 0x6f, 0x99, 0x99, 0x29, 0xe9, 0x16, 0x72, 0xba, 0xc3, 0x5e, 0xa7, 0x0f, 0x8f, 0xf8, 0xb9, 0xae, 0xef, 0xa5, 0x48, 0x94, 0x93, 0xc9, 0x9b, 0x0d, 0x27, 0x79, 0x72, 0x07, }; static const unsigned char hmac_sha3_224_438_msg[] = { 0xb7, 0xda, 0xbb, 0x23, 0x7a, 0xea, 0xe2, 0xbe, 0x8b, 0x5e, 0x19, }; static const unsigned char hmac_sha3_224_438_tag[] = { 0x92, 0x0b, 0x9e, 0x95, 0x9d, 0x3d, 0x05, 0xbc, 0x70, 0x65, 0xd4, 0xf1, 0x26, 0xf1, }; static const wycheproof_hmac_test hmac_sha3_224_438 = { .name = "hmac_sha3_224_438", .hash = SHA3_224, .key = hmac_sha3_224_438_key, .keylen = 28, .msg = hmac_sha3_224_438_msg, .msglen = 11, .tag = hmac_sha3_224_438_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 439 for HMAC, tcId is 94 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_439_key[] = { 0x45, 0x25, 0xb9, 0x6c, 0x26, 0x3e, 0x4d, 0x2d, 0xab, 0x28, 0x90, 0xaa, 0x55, 0xf3, 0xcc, 0x50, 0x3d, 0xc1, 0x20, 0x6d, 0x9f, 0x19, 0x15, 0xa6, 0xfb, 0xa5, 0xae, 0x61, }; static const unsigned char hmac_sha3_224_439_msg[] = { 0xef, 0x85, 0x8f, 0x49, 0x6f, 0xcb, 0x7c, 0x3f, 0xab, 0xbf, 0xb5, 0x2e, }; static const unsigned char hmac_sha3_224_439_tag[] = { 0xb0, 0x87, 0x64, 0xfe, 0xc1, 0xa8, 0xa7, 0x5c, 0x3c, 0xb8, 0x12, 0x04, 0xd9, 0x32, }; static const wycheproof_hmac_test hmac_sha3_224_439 = { .name = "hmac_sha3_224_439", .hash = SHA3_224, .key = hmac_sha3_224_439_key, .keylen = 28, .msg = hmac_sha3_224_439_msg, .msglen = 12, .tag = hmac_sha3_224_439_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 440 for HMAC, tcId is 95 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_440_key[] = { 0xf8, 0x94, 0x01, 0xac, 0xb0, 0xa6, 0x0d, 0x07, 0xfd, 0x73, 0x3e, 0xd5, 0x63, 0xf2, 0xee, 0x24, 0x1f, 0x4e, 0xcf, 0xea, 0x81, 0x14, 0x58, 0x7a, 0x44, 0xdf, 0xdb, 0x0c, }; static const unsigned char hmac_sha3_224_440_msg[] = { 0x7d, 0x3c, 0x09, 0x18, 0x08, 0x59, 0x84, 0xdf, 0x95, 0x09, 0x7a, 0xfa, 0x81, }; static const unsigned char hmac_sha3_224_440_tag[] = { 0x32, 0xb9, 0xe3, 0x73, 0x30, 0x30, 0x7f, 0x47, 0xef, 0x40, 0x02, 0x77, 0xc9, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_440 = { .name = "hmac_sha3_224_440", .hash = SHA3_224, .key = hmac_sha3_224_440_key, .keylen = 28, .msg = hmac_sha3_224_440_msg, .msglen = 13, .tag = hmac_sha3_224_440_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 441 for HMAC, tcId is 96 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_441_key[] = { 0x58, 0xbc, 0xe8, 0xc0, 0xd1, 0x7f, 0xc7, 0x13, 0x1d, 0x2f, 0xa2, 0x26, 0x24, 0x09, 0xbb, 0x14, 0x66, 0x3a, 0x6e, 0x68, 0x01, 0x9f, 0x88, 0x29, 0x99, 0x87, 0x89, 0x3e, }; static const unsigned char hmac_sha3_224_441_msg[] = { 0x1c, 0xa5, 0x0c, 0xd6, 0xc3, 0xf1, 0x22, 0x5e, 0xb6, 0xc4, 0xec, 0x4d, 0x6a, 0x90, }; static const unsigned char hmac_sha3_224_441_tag[] = { 0x2a, 0xdc, 0x60, 0x55, 0x64, 0xc6, 0xda, 0x00, 0xbb, 0x3a, 0xbe, 0xbd, 0x50, 0x66, }; static const wycheproof_hmac_test hmac_sha3_224_441 = { .name = "hmac_sha3_224_441", .hash = SHA3_224, .key = hmac_sha3_224_441_key, .keylen = 28, .msg = hmac_sha3_224_441_msg, .msglen = 14, .tag = hmac_sha3_224_441_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 442 for HMAC, tcId is 97 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_442_key[] = { 0x65, 0x8e, 0x51, 0x0f, 0xba, 0x4e, 0x22, 0x08, 0xaf, 0xac, 0x98, 0x33, 0x3f, 0x9e, 0x24, 0x2b, 0xc1, 0x18, 0xf6, 0xe7, 0x9e, 0xf0, 0x66, 0x1d, 0x61, 0x9d, 0xd3, 0x2b, }; static const unsigned char hmac_sha3_224_442_msg[] = { 0x32, 0xc3, 0x85, 0xb7, 0x5a, 0xe8, 0x45, 0x58, 0xca, 0x30, 0x28, 0x81, 0xc5, 0x16, 0x39, }; static const unsigned char hmac_sha3_224_442_tag[] = { 0x38, 0x2c, 0xec, 0x4b, 0x6a, 0x5e, 0x80, 0xa6, 0xd7, 0x03, 0xef, 0x32, 0x31, 0x61, }; static const wycheproof_hmac_test hmac_sha3_224_442 = { .name = "hmac_sha3_224_442", .hash = SHA3_224, .key = hmac_sha3_224_442_key, .keylen = 28, .msg = hmac_sha3_224_442_msg, .msglen = 15, .tag = hmac_sha3_224_442_tag, .taglen = 14, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 443 for HMAC, tcId is 98 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_443_key[] = { 0x6a, 0x41, 0xcc, 0x3c, 0xa7, 0x14, 0x2a, 0xe1, 0x4e, 0x6d, 0x97, 0x9a, 0x3f, 0x89, 0x0a, 0x33, 0x15, 0x97, 0xe5, 0x92, 0xdd, 0x74, 0x52, 0x0c, 0xe4, 0xea, 0x66, 0x0f, }; static const unsigned char hmac_sha3_224_443_msg[] = { 0x78, 0xe3, 0xa7, 0x70, 0xa8, 0xaa, 0xaf, 0x03, 0x9f, 0xd4, 0xc9, 0xb6, 0xa1, 0x78, 0x04, 0x11, }; static const unsigned char hmac_sha3_224_443_tag[] = { 0xfc, 0x51, 0x22, 0x2d, 0xe8, 0x80, 0x06, 0x2b, 0xeb, 0x4f, 0xb9, 0x86, 0xba, 0x71, }; static const wycheproof_hmac_test hmac_sha3_224_443 = { .name = "hmac_sha3_224_443", .hash = SHA3_224, .key = hmac_sha3_224_443_key, .keylen = 28, .msg = hmac_sha3_224_443_msg, .msglen = 16, .tag = hmac_sha3_224_443_tag, .taglen = 14, .result = 1, .comment = ", tcId is 98 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 444 for HMAC, tcId is 99 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_444_key[] = { 0xb8, 0x97, 0x2b, 0x93, 0xb6, 0x83, 0x02, 0xcb, 0xaa, 0x08, 0xd3, 0x29, 0x04, 0xea, 0xe6, 0x37, 0x5a, 0x66, 0xf3, 0x50, 0x8e, 0xce, 0x3c, 0x9b, 0x22, 0x38, 0x2c, 0x7e, }; static const unsigned char hmac_sha3_224_444_msg[] = { 0x36, 0x87, 0xe6, 0x28, 0x7d, 0x73, 0xc9, 0xe3, 0xf6, 0x79, 0xa5, 0x0e, 0x76, 0x71, 0x24, 0x71, 0x27, }; static const unsigned char hmac_sha3_224_444_tag[] = { 0x2f, 0x9a, 0x78, 0xf5, 0x17, 0x5f, 0x17, 0x37, 0x29, 0x20, 0xc8, 0xe7, 0x63, 0x8f, }; static const wycheproof_hmac_test hmac_sha3_224_444 = { .name = "hmac_sha3_224_444", .hash = SHA3_224, .key = hmac_sha3_224_444_key, .keylen = 28, .msg = hmac_sha3_224_444_msg, .msglen = 17, .tag = hmac_sha3_224_444_tag, .taglen = 14, .result = 1, .comment = ", tcId is 99 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 445 for HMAC, tcId is 100 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_445_key[] = { 0xbc, 0x57, 0x09, 0x32, 0xab, 0xfa, 0x11, 0x05, 0x0a, 0xd4, 0xfc, 0x80, 0xa6, 0xd5, 0xaf, 0xe3, 0x27, 0x1d, 0x86, 0xaa, 0x29, 0xdc, 0x62, 0x73, 0x8b, 0x20, 0x7d, 0x14, }; static const unsigned char hmac_sha3_224_445_msg[] = { 0xd5, 0x32, 0x02, 0xac, 0xd2, 0xec, 0x74, 0xd7, 0x46, 0x53, 0x1b, 0xd9, 0xad, 0x30, 0x16, 0xd0, 0x98, 0x0e, 0x01, 0x66, 0xfb, 0x42, 0x7a, 0x08, }; static const unsigned char hmac_sha3_224_445_tag[] = { 0xed, 0xba, 0x9b, 0x44, 0x66, 0xe1, 0x14, 0x51, 0x79, 0xc5, 0x3b, 0x5e, 0xb6, 0x5c, }; static const wycheproof_hmac_test hmac_sha3_224_445 = { .name = "hmac_sha3_224_445", .hash = SHA3_224, .key = hmac_sha3_224_445_key, .keylen = 28, .msg = hmac_sha3_224_445_msg, .msglen = 24, .tag = hmac_sha3_224_445_tag, .taglen = 14, .result = 1, .comment = ", tcId is 100 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 446 for HMAC, tcId is 101 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_446_key[] = { 0xc9, 0x2a, 0x06, 0x65, 0xc1, 0x2e, 0x87, 0x02, 0x6e, 0x1b, 0x34, 0x4f, 0x97, 0x1f, 0xdb, 0x0e, 0x47, 0x4d, 0x45, 0x0c, 0xba, 0x83, 0x4a, 0xae, 0x40, 0xe2, 0xd2, 0x1e, }; static const unsigned char hmac_sha3_224_446_msg[] = { 0x4a, 0x3a, 0x85, 0xac, 0x09, 0xf5, 0x19, 0x0a, 0xb9, 0x4f, 0x73, 0xfd, 0x91, 0xd9, 0x8f, 0x05, 0x60, 0x15, 0x26, 0x3c, 0x89, 0xed, 0x5d, 0xa2, 0x23, 0xfc, 0x46, 0x75, 0xca, 0xb2, 0x5c, 0xdd, }; static const unsigned char hmac_sha3_224_446_tag[] = { 0x05, 0x75, 0x8d, 0xe1, 0xec, 0x12, 0xf0, 0x0f, 0x06, 0x9e, 0xed, 0x38, 0x7c, 0x83, }; static const wycheproof_hmac_test hmac_sha3_224_446 = { .name = "hmac_sha3_224_446", .hash = SHA3_224, .key = hmac_sha3_224_446_key, .keylen = 28, .msg = hmac_sha3_224_446_msg, .msglen = 32, .tag = hmac_sha3_224_446_tag, .taglen = 14, .result = 1, .comment = ", tcId is 101 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 447 for HMAC, tcId is 102 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_447_key[] = { 0x6f, 0xbe, 0xf6, 0x7c, 0xfb, 0xac, 0xc9, 0x8c, 0x63, 0x25, 0x2b, 0x1c, 0xa0, 0x09, 0xa6, 0x0e, 0x8e, 0x34, 0x79, 0x76, 0x9a, 0x2d, 0x44, 0x9f, 0xb4, 0x63, 0x90, 0x64, }; static const unsigned char hmac_sha3_224_447_msg[] = { 0x00, 0x6e, 0x17, 0x9e, 0xac, 0xfa, 0x9e, 0x1e, 0x62, 0x8b, 0xb7, 0x82, 0x3e, 0xe9, 0x60, 0x9a, 0xe7, 0x96, 0x8b, 0x6d, 0xf9, 0x0e, 0x17, 0x6f, 0x77, 0x2a, 0x79, 0x08, 0x8d, 0x37, 0xe9, 0xb1, 0x5c, 0xab, 0x31, 0x29, 0x22, 0xaa, 0xf8, 0xfc, 0x65, 0x83, 0xa3, 0x41, 0x00, 0x2b, 0xda, }; static const unsigned char hmac_sha3_224_447_tag[] = { 0xc3, 0x75, 0x6d, 0x9a, 0x9a, 0x1e, 0xd5, 0x6b, 0x97, 0xd7, 0xb9, 0x5e, 0x7e, 0x46, }; static const wycheproof_hmac_test hmac_sha3_224_447 = { .name = "hmac_sha3_224_447", .hash = SHA3_224, .key = hmac_sha3_224_447_key, .keylen = 28, .msg = hmac_sha3_224_447_msg, .msglen = 47, .tag = hmac_sha3_224_447_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 448 for HMAC, tcId is 103 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_448_key[] = { 0x70, 0x0b, 0x09, 0x90, 0x81, 0x74, 0xf1, 0x07, 0x2e, 0x31, 0xae, 0x8c, 0xcb, 0xda, 0x1c, 0x44, 0x60, 0xfc, 0xf2, 0x1f, 0xdf, 0x14, 0x6a, 0x11, 0x48, 0x2b, 0x21, 0x0d, }; static const unsigned char hmac_sha3_224_448_msg[] = { 0xf7, 0x72, 0x56, 0x4e, 0xcb, 0x10, 0x9e, 0x80, 0xee, 0xfb, 0x1d, 0x5a, 0x7f, 0x1c, 0x95, 0xe2, 0x03, 0xba, 0x4c, 0x98, 0x02, 0x33, 0xdd, 0x8d, 0x13, 0xde, 0x30, 0x46, 0x07, 0x9a, 0x6b, 0x2c, 0xa2, 0x6d, 0xc3, 0x52, 0x1e, 0x5e, 0x0c, 0x80, 0x7e, 0xae, 0x7a, 0x79, 0x87, 0x7c, 0x73, 0xe9, }; static const unsigned char hmac_sha3_224_448_tag[] = { 0x1f, 0x39, 0xce, 0x1f, 0xcd, 0xfc, 0x2f, 0x19, 0xa8, 0xf3, 0x45, 0x94, 0xf0, 0xb1, }; static const wycheproof_hmac_test hmac_sha3_224_448 = { .name = "hmac_sha3_224_448", .hash = SHA3_224, .key = hmac_sha3_224_448_key, .keylen = 28, .msg = hmac_sha3_224_448_msg, .msglen = 48, .tag = hmac_sha3_224_448_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 449 for HMAC, tcId is 104 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_449_key[] = { 0xe1, 0x8a, 0x20, 0x24, 0x6e, 0xbe, 0x1b, 0x57, 0x96, 0xdb, 0xfe, 0x35, 0x11, 0x0e, 0xfc, 0x76, 0x37, 0xd7, 0x4a, 0x35, 0x5f, 0x0a, 0x67, 0x58, 0xd4, 0xa0, 0x0b, 0x7d, }; static const unsigned char hmac_sha3_224_449_msg[] = { 0x77, 0x72, 0x0d, 0xde, 0x53, 0x0e, 0x6e, 0xea, 0xa0, 0xe9, 0xaf, 0x33, 0x11, 0xf7, 0xe9, 0x91, 0x89, 0xd6, 0xc4, 0xf7, 0xd7, 0x1d, 0x0a, 0x42, 0x07, 0xd6, 0x2c, 0x76, 0x6b, 0xee, 0x32, 0x02, 0x0c, 0x92, 0xf5, 0xd5, 0xd2, 0x8d, 0x5d, 0xe4, 0xd0, 0xd9, 0xc9, 0x4b, 0x57, 0xec, 0x05, 0xf0, 0xc3, }; static const unsigned char hmac_sha3_224_449_tag[] = { 0x82, 0xdc, 0xc1, 0x32, 0x75, 0xc2, 0x17, 0x8b, 0xef, 0xa2, 0x74, 0x62, 0xbf, 0xf8, }; static const wycheproof_hmac_test hmac_sha3_224_449 = { .name = "hmac_sha3_224_449", .hash = SHA3_224, .key = hmac_sha3_224_449_key, .keylen = 28, .msg = hmac_sha3_224_449_msg, .msglen = 49, .tag = hmac_sha3_224_449_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 450 for HMAC, tcId is 105 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_450_key[] = { 0x3c, 0x45, 0x85, 0xa7, 0x75, 0xbe, 0xc7, 0x6c, 0x7d, 0x8b, 0x27, 0xb8, 0x7e, 0x70, 0xa5, 0x86, 0x3a, 0x85, 0xe6, 0x11, 0x1f, 0x31, 0x61, 0xb3, 0x81, 0x5f, 0x59, 0xb4, }; static const unsigned char hmac_sha3_224_450_msg[] = { 0x62, 0x8c, 0x0f, 0xf8, 0xc4, 0x32, 0xd7, 0x4f, 0x4c, 0xfb, 0x77, 0xba, 0x46, 0xb7, 0xce, 0xf6, 0x7a, 0x48, 0xac, 0x05, 0x3c, 0xf0, 0xc1, 0x8b, 0xe4, 0x16, 0x48, 0x73, 0x6a, 0xbc, 0xc8, 0xc6, 0xfb, 0xe4, 0x98, 0x15, 0x29, 0xba, 0xbd, 0x4b, 0x27, 0x86, 0x6e, 0x34, 0xce, 0xd1, 0x6d, 0x8b, 0x0b, 0xec, 0x45, 0x6e, 0x14, 0x65, 0x3a, 0x14, 0x22, 0xf5, 0xa6, 0x25, 0x56, 0xd2, 0x0b, 0x0f, 0xe4, 0xe0, 0x37, 0x49, 0xd5, 0xf6, 0xe9, 0x86, 0x37, 0x50, 0x62, 0xdb, 0xdd, 0x82, 0xf6, 0xe9, 0xe1, 0xd4, 0xad, 0x54, 0x7c, 0x31, 0x53, 0x0c, 0x2a, 0x31, 0x38, 0x3c, 0x25, 0xff, 0x57, 0xe8, 0x79, 0xea, 0xe9, 0x9d, 0x9b, 0x3a, 0x0d, 0xa1, 0xf3, 0xc1, 0xda, 0xcb, 0x97, 0x50, 0x67, 0xac, }; static const unsigned char hmac_sha3_224_450_tag[] = { 0x5d, 0x76, 0x3c, 0x4c, 0x22, 0x4c, 0x40, 0x34, 0xde, 0x56, 0xef, 0x2a, 0xa1, 0xb2, }; static const wycheproof_hmac_test hmac_sha3_224_450 = { .name = "hmac_sha3_224_450", .hash = SHA3_224, .key = hmac_sha3_224_450_key, .keylen = 28, .msg = hmac_sha3_224_450_msg, .msglen = 112, .tag = hmac_sha3_224_450_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 451 for HMAC, tcId is 106 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_451_key[] = { 0xac, 0xaf, 0x94, 0xcb, 0x1a, 0x8f, 0xf4, 0x67, 0x7f, 0xc5, 0x86, 0xd2, 0xbd, 0xf9, 0x81, 0xac, 0x3a, 0x65, 0x6b, 0x20, 0x82, 0x15, 0xe0, 0xa7, 0x64, 0x7b, 0x42, 0x0f, }; static const unsigned char hmac_sha3_224_451_msg[] = { 0x31, 0x4c, 0x2c, 0x25, 0x46, 0x5d, 0xe3, 0x42, 0x72, 0x79, 0xdb, 0xc8, 0x94, 0x36, 0x50, 0x5f, 0xee, 0x6d, 0x37, 0xd5, 0x6f, 0xbd, 0xa0, 0xe5, 0xe2, 0xa4, 0x94, 0x49, 0xd9, 0xdb, 0xf0, 0x03, 0x02, 0x7f, 0x2e, 0x4e, 0xf5, 0xc5, 0x2f, 0x7a, 0xf9, 0x3f, 0xd8, 0x01, 0x55, 0xa6, 0x6a, 0x1c, 0xd6, 0xb9, 0x88, 0x5b, 0x56, 0xd8, 0x28, 0x05, 0x8a, 0x0d, 0xe7, 0xd2, 0x47, 0xe1, 0x95, 0x80, 0xb2, 0xe8, 0xdc, 0xbd, 0xef, 0x2a, 0xe4, 0x68, 0x40, 0x56, 0x5f, 0xd8, 0xb2, 0x76, 0x56, 0x9c, 0x19, 0xd7, 0xe1, 0x85, 0x11, 0x6e, 0xa1, 0x1a, 0xd6, 0x7d, 0x5f, 0xc2, 0x7f, 0x4a, 0x68, 0x16, 0xba, 0x45, 0xbe, 0x5d, 0x14, 0xf3, 0xba, 0x43, 0x15, 0xc7, 0x4d, 0x1e, 0xdb, 0x20, 0xf2, 0x17, 0xb1, 0x16, 0xbe, 0x85, 0x2b, 0x62, 0xa7, 0xf4, 0xe3, 0x2b, 0x3e, 0x70, 0x8f, 0xf9, 0xf7, }; static const unsigned char hmac_sha3_224_451_tag[] = { 0x88, 0x76, 0x29, 0x63, 0x66, 0xc1, 0x7d, 0x83, 0x6b, 0x26, 0x91, 0x29, 0xaf, 0x65, }; static const wycheproof_hmac_test hmac_sha3_224_451 = { .name = "hmac_sha3_224_451", .hash = SHA3_224, .key = hmac_sha3_224_451_key, .keylen = 28, .msg = hmac_sha3_224_451_msg, .msglen = 127, .tag = hmac_sha3_224_451_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 452 for HMAC, tcId is 107 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_452_key[] = { 0xe4, 0x90, 0x34, 0x8a, 0xd7, 0x8f, 0xd2, 0xcd, 0x5b, 0x51, 0xf2, 0x79, 0x5b, 0x79, 0xe5, 0x80, 0x5c, 0xe1, 0xd9, 0xba, 0xf1, 0x15, 0x1d, 0xbd, 0xf9, 0x95, 0xe1, 0xb0, }; static const unsigned char hmac_sha3_224_452_msg[] = { 0xf6, 0xff, 0x18, 0x45, 0x84, 0x2b, 0x9e, 0x46, 0xf7, 0x9a, 0xdb, 0x10, 0x79, 0xaf, 0xf4, 0x73, 0x97, 0x39, 0x1d, 0xc2, 0x69, 0xbc, 0x0c, 0x89, 0x9b, 0xa4, 0x08, 0x7b, 0x58, 0xa6, 0x76, 0xf5, 0x40, 0x8c, 0x3f, 0x76, 0x37, 0xff, 0xc4, 0x77, 0x2a, 0xf3, 0xe4, 0x1b, 0x5c, 0xea, 0x51, 0x05, 0x8b, 0xc5, 0x28, 0xea, 0x09, 0xbb, 0x4b, 0xd7, 0x97, 0x59, 0x4c, 0x79, 0x8b, 0x0f, 0x0f, 0xf8, 0x81, 0x69, 0x5e, 0x98, 0xc0, 0x8b, 0xbb, 0x04, 0x0c, 0x12, 0xc5, 0xcb, 0xdb, 0x22, 0x8d, 0x61, 0xcc, 0x99, 0xe3, 0x32, 0xe9, 0x63, 0x12, 0x8d, 0x06, 0xe9, 0x7e, 0xd2, 0xee, 0xfd, 0xed, 0x2e, 0x1b, 0x5a, 0x03, 0x5f, 0x3b, 0xea, 0x68, 0x27, 0x3e, 0xfa, 0xc0, 0x3a, 0x89, 0x4d, 0xcf, 0x2f, 0xcc, 0x79, 0xa5, 0x69, 0x62, 0x18, 0x59, 0x54, 0x04, 0xb2, 0x75, 0x8d, 0xeb, 0x9a, 0x80, 0xee, }; static const unsigned char hmac_sha3_224_452_tag[] = { 0xf6, 0x97, 0x03, 0x64, 0xf4, 0x5c, 0x8b, 0x91, 0xd5, 0x79, 0x47, 0x64, 0x97, 0x42, }; static const wycheproof_hmac_test hmac_sha3_224_452 = { .name = "hmac_sha3_224_452", .hash = SHA3_224, .key = hmac_sha3_224_452_key, .keylen = 28, .msg = hmac_sha3_224_452_msg, .msglen = 128, .tag = hmac_sha3_224_452_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 453 for HMAC, tcId is 108 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_453_key[] = { 0xc8, 0xe0, 0x99, 0xdb, 0xb6, 0x0a, 0x8f, 0x19, 0xd8, 0xb8, 0x68, 0x56, 0xb2, 0x1c, 0x55, 0xf3, 0x43, 0x7a, 0xe2, 0x7f, 0x77, 0xdf, 0xf9, 0x80, 0x8f, 0x12, 0xa1, 0xb5, }; static const unsigned char hmac_sha3_224_453_msg[] = { 0xed, 0xbc, 0x10, 0x9b, 0xf2, 0x8c, 0x8a, 0xb3, 0x2b, 0x12, 0x38, 0xef, 0xf1, 0xcd, 0x14, 0x30, 0x8c, 0xdd, 0x84, 0x5f, 0xa9, 0x19, 0xbf, 0xd8, 0xa0, 0x0c, 0x99, 0x1c, 0xf9, 0xa8, 0xd6, 0xb0, 0x5d, 0xd8, 0xcc, 0x7d, 0x23, 0x93, 0x78, 0x29, 0x49, 0xc8, 0x99, 0xde, 0x79, 0xe7, 0x71, 0xef, 0x7d, 0x85, 0x67, 0xf3, 0x22, 0x87, 0x62, 0x39, 0x63, 0x04, 0x8e, 0x6c, 0x80, 0xd9, 0x1f, 0x07, 0x78, 0xdd, 0x63, 0x31, 0x11, 0x06, 0xe9, 0xd0, 0x91, 0x3c, 0x08, 0xb7, 0xa0, 0xb7, 0x25, 0x3f, 0xa3, 0xce, 0x30, 0x7a, 0xc4, 0x0e, 0xc5, 0x5a, 0x4c, 0x44, 0x5f, 0x54, 0x55, 0xa5, 0x70, 0xfe, 0xc0, 0x90, 0xe2, 0x51, 0xe8, 0x64, 0x6b, 0xad, 0xa1, 0xa4, 0x86, 0xd4, 0x1c, 0x37, 0x94, 0xbc, 0xe5, 0x63, 0x97, 0x32, 0xf2, 0xc6, 0xcf, 0xd5, 0x80, 0x81, 0xc4, 0x79, 0xa6, 0x8c, 0x51, 0x5f, 0x5d, 0x47, 0xbc, 0x5b, 0x2f, 0x16, 0x22, 0xa0, 0x8d, 0x38, 0xa5, 0x96, 0xa8, 0x17, 0xf3, 0xd4, 0xef, 0xef, 0x80, 0x03, 0xae, 0x43, 0x0e, 0x6a, 0xe9, 0x3b, 0x0a, 0x3a, 0xe8, 0xfa, 0x95, 0xa2, 0xac, 0xe3, 0xd2, 0x4d, 0x90, 0xa9, 0xef, 0x86, 0x1d, 0xc0, 0x4c, 0x13, 0xe3, 0x8f, 0x6e, 0x52, 0x4b, 0x3a, 0xbd, 0xf9, 0xcc, 0xe4, 0xfa, 0x49, 0x07, 0x07, 0xc8, 0x0c, 0x16, 0xe2, 0x54, 0xb7, 0xa7, 0x1a, 0xf0, 0x0a, 0x12, 0xdb, 0xf4, 0x73, 0xb5, 0x0b, 0x9f, 0xe4, 0x09, 0x7e, 0xc0, 0x0a, 0xb2, 0x7e, 0x66, 0xb6, 0xf3, 0x02, 0x2b, 0x0f, 0x10, 0x1e, 0xe1, 0xa9, 0xf7, 0xfa, 0x86, 0x52, 0xe9, 0xf0, 0x95, 0xca, 0x24, 0x0a, 0x44, 0x60, 0x67, 0x44, 0x68, 0x67, 0xf7, 0x8e, 0x83, 0x52, 0xc4, 0x11, 0x07, 0x94, 0xc2, 0xe3, 0x38, 0x3d, 0xfe, 0xdf, 0xb3, 0x5e, 0x74, 0xa3, 0x3e, }; static const unsigned char hmac_sha3_224_453_tag[] = { 0x86, 0x5b, 0x85, 0x5f, 0xbb, 0xcb, 0x0f, 0xeb, 0x5d, 0xbe, 0xa3, 0x50, 0x7e, 0xfa, }; static const wycheproof_hmac_test hmac_sha3_224_453 = { .name = "hmac_sha3_224_453", .hash = SHA3_224, .key = hmac_sha3_224_453_key, .keylen = 28, .msg = hmac_sha3_224_453_msg, .msglen = 255, .tag = hmac_sha3_224_453_tag, .taglen = 14, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 454 for HMAC, tcId is 109 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_454_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_454_tag[] = { 0x42, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_454 = { .name = "hmac_sha3_224_454", .hash = SHA3_224, .key = hmac_sha3_224_454_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_454_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 455 for HMAC, tcId is 110 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_455_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_455_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_455_tag[] = { 0x14, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_455 = { .name = "hmac_sha3_224_455", .hash = SHA3_224, .key = hmac_sha3_224_455_key, .keylen = 28, .msg = hmac_sha3_224_455_msg, .msglen = 16, .tag = hmac_sha3_224_455_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 456 for HMAC, tcId is 111 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_456_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_456_tag[] = { 0x41, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_456 = { .name = "hmac_sha3_224_456", .hash = SHA3_224, .key = hmac_sha3_224_456_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_456_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 457 for HMAC, tcId is 112 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_457_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_457_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_457_tag[] = { 0x17, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_457 = { .name = "hmac_sha3_224_457", .hash = SHA3_224, .key = hmac_sha3_224_457_key, .keylen = 28, .msg = hmac_sha3_224_457_msg, .msglen = 16, .tag = hmac_sha3_224_457_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 458 for HMAC, tcId is 113 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_458_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_458_tag[] = { 0xc3, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_458 = { .name = "hmac_sha3_224_458", .hash = SHA3_224, .key = hmac_sha3_224_458_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_458_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 459 for HMAC, tcId is 114 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_459_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_459_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_459_tag[] = { 0x95, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_459 = { .name = "hmac_sha3_224_459", .hash = SHA3_224, .key = hmac_sha3_224_459_key, .keylen = 28, .msg = hmac_sha3_224_459_msg, .msglen = 16, .tag = hmac_sha3_224_459_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 460 for HMAC, tcId is 115 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_460_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_460_tag[] = { 0x43, 0xb9, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_460 = { .name = "hmac_sha3_224_460", .hash = SHA3_224, .key = hmac_sha3_224_460_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_460_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 461 for HMAC, tcId is 116 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_461_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_461_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_461_tag[] = { 0x15, 0xba, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_461 = { .name = "hmac_sha3_224_461", .hash = SHA3_224, .key = hmac_sha3_224_461_key, .keylen = 28, .msg = hmac_sha3_224_461_msg, .msglen = 16, .tag = hmac_sha3_224_461_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 462 for HMAC, tcId is 117 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_462_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_462_tag[] = { 0x43, 0xb8, 0xf9, 0xcf, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_462 = { .name = "hmac_sha3_224_462", .hash = SHA3_224, .key = hmac_sha3_224_462_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_462_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 463 for HMAC, tcId is 118 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_463_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_463_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_463_tag[] = { 0x15, 0xbb, 0xda, 0xda, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_463 = { .name = "hmac_sha3_224_463", .hash = SHA3_224, .key = hmac_sha3_224_463_key, .keylen = 28, .msg = hmac_sha3_224_463_msg, .msglen = 16, .tag = hmac_sha3_224_463_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 464 for HMAC, tcId is 119 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_464_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_464_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe2, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_464 = { .name = "hmac_sha3_224_464", .hash = SHA3_224, .key = hmac_sha3_224_464_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_464_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 465 for HMAC, tcId is 120 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_465_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_465_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_465_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe0, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_465 = { .name = "hmac_sha3_224_465", .hash = SHA3_224, .key = hmac_sha3_224_465_key, .keylen = 28, .msg = hmac_sha3_224_465_msg, .msglen = 16, .tag = hmac_sha3_224_465_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 466 for HMAC, tcId is 121 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_466_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_466_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe1, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_466 = { .name = "hmac_sha3_224_466", .hash = SHA3_224, .key = hmac_sha3_224_466_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_466_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 467 for HMAC, tcId is 122 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_467_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_467_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_467_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe3, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_467 = { .name = "hmac_sha3_224_467", .hash = SHA3_224, .key = hmac_sha3_224_467_key, .keylen = 28, .msg = hmac_sha3_224_467_msg, .msglen = 16, .tag = hmac_sha3_224_467_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 468 for HMAC, tcId is 123 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_468_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_468_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0xe2, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_468 = { .name = "hmac_sha3_224_468", .hash = SHA3_224, .key = hmac_sha3_224_468_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_468_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 469 for HMAC, tcId is 124 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_469_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_469_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_469_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0x5f, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_469 = { .name = "hmac_sha3_224_469", .hash = SHA3_224, .key = hmac_sha3_224_469_key, .keylen = 28, .msg = hmac_sha3_224_469_msg, .msglen = 16, .tag = hmac_sha3_224_469_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 470 for HMAC, tcId is 125 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_470_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_470_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x61, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_470 = { .name = "hmac_sha3_224_470", .hash = SHA3_224, .key = hmac_sha3_224_470_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_470_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 471 for HMAC, tcId is 126 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_471_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_471_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_471_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xac, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_471 = { .name = "hmac_sha3_224_471", .hash = SHA3_224, .key = hmac_sha3_224_471_key, .keylen = 28, .msg = hmac_sha3_224_471_msg, .msglen = 16, .tag = hmac_sha3_224_471_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 472 for HMAC, tcId is 127 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_472_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_472_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0xe0, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_472 = { .name = "hmac_sha3_224_472", .hash = SHA3_224, .key = hmac_sha3_224_472_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_472_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 473 for HMAC, tcId is 128 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_473_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_473_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_473_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0x2d, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_473 = { .name = "hmac_sha3_224_473", .hash = SHA3_224, .key = hmac_sha3_224_473_key, .keylen = 28, .msg = hmac_sha3_224_473_msg, .msglen = 16, .tag = hmac_sha3_224_473_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 474 for HMAC, tcId is 129 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_474_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_474_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x2c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_474 = { .name = "hmac_sha3_224_474", .hash = SHA3_224, .key = hmac_sha3_224_474_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_474_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 475 for HMAC, tcId is 130 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_475_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_475_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_475_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0xb6, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_475 = { .name = "hmac_sha3_224_475", .hash = SHA3_224, .key = hmac_sha3_224_475_key, .keylen = 28, .msg = hmac_sha3_224_475_msg, .msglen = 16, .tag = hmac_sha3_224_475_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 476 for HMAC, tcId is 131 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_476_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_476_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x96, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_476 = { .name = "hmac_sha3_224_476", .hash = SHA3_224, .key = hmac_sha3_224_476_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_476_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 477 for HMAC, tcId is 132 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_477_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_477_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_477_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x09, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_477 = { .name = "hmac_sha3_224_477", .hash = SHA3_224, .key = hmac_sha3_224_477_key, .keylen = 28, .msg = hmac_sha3_224_477_msg, .msglen = 16, .tag = hmac_sha3_224_477_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 478 for HMAC, tcId is 133 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_478_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_478_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7b, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_478 = { .name = "hmac_sha3_224_478", .hash = SHA3_224, .key = hmac_sha3_224_478_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_478_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 479 for HMAC, tcId is 134 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_479_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_479_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_479_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8e, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_479 = { .name = "hmac_sha3_224_479", .hash = SHA3_224, .key = hmac_sha3_224_479_key, .keylen = 28, .msg = hmac_sha3_224_479_msg, .msglen = 16, .tag = hmac_sha3_224_479_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 480 for HMAC, tcId is 135 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_480_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_480_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x78, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_480 = { .name = "hmac_sha3_224_480", .hash = SHA3_224, .key = hmac_sha3_224_480_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_480_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 481 for HMAC, tcId is 136 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_481_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_481_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_481_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8d, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_481 = { .name = "hmac_sha3_224_481", .hash = SHA3_224, .key = hmac_sha3_224_481_key, .keylen = 28, .msg = hmac_sha3_224_481_msg, .msglen = 16, .tag = hmac_sha3_224_481_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 482 for HMAC, tcId is 137 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_482_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_482_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0xfa, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_482 = { .name = "hmac_sha3_224_482", .hash = SHA3_224, .key = hmac_sha3_224_482_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_482_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 483 for HMAC, tcId is 138 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_483_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_483_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_483_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x0f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_483 = { .name = "hmac_sha3_224_483", .hash = SHA3_224, .key = hmac_sha3_224_483_key, .keylen = 28, .msg = hmac_sha3_224_483_msg, .msglen = 16, .tag = hmac_sha3_224_483_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 484 for HMAC, tcId is 139 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_484_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_484_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa1, }; static const wycheproof_hmac_test hmac_sha3_224_484 = { .name = "hmac_sha3_224_484", .hash = SHA3_224, .key = hmac_sha3_224_484_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_484_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 104 in tag, tcId is 139 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 485 for HMAC, tcId is 140 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_485_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_485_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_485_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_485 = { .name = "hmac_sha3_224_485", .hash = SHA3_224, .key = hmac_sha3_224_485_key, .keylen = 28, .msg = hmac_sha3_224_485_msg, .msglen = 16, .tag = hmac_sha3_224_485_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 104 in tag, tcId is 140 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 486 for HMAC, tcId is 141 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_486_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_486_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa2, }; static const wycheproof_hmac_test hmac_sha3_224_486 = { .name = "hmac_sha3_224_486", .hash = SHA3_224, .key = hmac_sha3_224_486_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_486_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 105 in tag, tcId is 141 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 487 for HMAC, tcId is 142 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_487_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_487_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_487_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x03, }; static const wycheproof_hmac_test hmac_sha3_224_487 = { .name = "hmac_sha3_224_487", .hash = SHA3_224, .key = hmac_sha3_224_487_key, .keylen = 28, .msg = hmac_sha3_224_487_msg, .msglen = 16, .tag = hmac_sha3_224_487_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 105 in tag, tcId is 142 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 488 for HMAC, tcId is 143 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_488_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_488_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xe0, }; static const wycheproof_hmac_test hmac_sha3_224_488 = { .name = "hmac_sha3_224_488", .hash = SHA3_224, .key = hmac_sha3_224_488_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_488_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 110 in tag, tcId is 143 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 489 for HMAC, tcId is 144 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_489_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_489_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_489_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x41, }; static const wycheproof_hmac_test hmac_sha3_224_489 = { .name = "hmac_sha3_224_489", .hash = SHA3_224, .key = hmac_sha3_224_489_key, .keylen = 28, .msg = hmac_sha3_224_489_msg, .msglen = 16, .tag = hmac_sha3_224_489_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 110 in tag, tcId is 144 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 490 for HMAC, tcId is 145 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_490_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_490_tag[] = { 0x43, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0x20, }; static const wycheproof_hmac_test hmac_sha3_224_490 = { .name = "hmac_sha3_224_490", .hash = SHA3_224, .key = hmac_sha3_224_490_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_490_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 111 in tag, tcId is 145 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 491 for HMAC, tcId is 146 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_491_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_491_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_491_tag[] = { 0x15, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x81, }; static const wycheproof_hmac_test hmac_sha3_224_491 = { .name = "hmac_sha3_224_491", .hash = SHA3_224, .key = hmac_sha3_224_491_key, .keylen = 28, .msg = hmac_sha3_224_491_msg, .msglen = 16, .tag = hmac_sha3_224_491_tag, .taglen = 14, .result = -1, .comment = "Flipped bit 111 in tag, tcId is 146 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 492 for HMAC, tcId is 147 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_492_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_492_tag[] = { 0x42, 0xb8, 0xf9, 0x4f, 0xe3, 0x1d, 0x26, 0x62, 0x61, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_492 = { .name = "hmac_sha3_224_492", .hash = SHA3_224, .key = hmac_sha3_224_492_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_492_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 493 for HMAC, tcId is 148 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_493_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_493_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_493_tag[] = { 0x14, 0xbb, 0xda, 0x5a, 0xe1, 0x1d, 0xc2, 0xdf, 0xac, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_493 = { .name = "hmac_sha3_224_493", .hash = SHA3_224, .key = hmac_sha3_224_493_key, .keylen = 28, .msg = hmac_sha3_224_493_msg, .msglen = 16, .tag = hmac_sha3_224_493_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 494 for HMAC, tcId is 149 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_494_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_494_tag[] = { 0x43, 0xb8, 0xf9, 0xcf, 0xe3, 0x1d, 0x26, 0xe2, 0x60, 0x0c, 0x97, 0x09, 0x7a, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_224_494 = { .name = "hmac_sha3_224_494", .hash = SHA3_224, .key = hmac_sha3_224_494_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_494_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 495 for HMAC, tcId is 150 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_495_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_495_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_495_tag[] = { 0x15, 0xbb, 0xda, 0xda, 0xe1, 0x1d, 0xc2, 0x5f, 0xad, 0x96, 0x08, 0x56, 0x8f, 0x01, }; static const wycheproof_hmac_test hmac_sha3_224_495 = { .name = "hmac_sha3_224_495", .hash = SHA3_224, .key = hmac_sha3_224_495_key, .keylen = 28, .msg = hmac_sha3_224_495_msg, .msglen = 16, .tag = hmac_sha3_224_495_tag, .taglen = 14, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 496 for HMAC, tcId is 151 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_496_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_496_tag[] = { 0xbc, 0x47, 0x06, 0xb0, 0x1c, 0xe2, 0xd9, 0x9d, 0x9f, 0xf3, 0x68, 0xf6, 0x85, 0x5f, }; static const wycheproof_hmac_test hmac_sha3_224_496 = { .name = "hmac_sha3_224_496", .hash = SHA3_224, .key = hmac_sha3_224_496_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_496_tag, .taglen = 14, .result = -1, .comment = "all bits of tag flipped, tcId is 151 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 497 for HMAC, tcId is 152 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_497_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_497_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_497_tag[] = { 0xea, 0x44, 0x25, 0xa5, 0x1e, 0xe2, 0x3d, 0x20, 0x52, 0x69, 0xf7, 0xa9, 0x70, 0xfe, }; static const wycheproof_hmac_test hmac_sha3_224_497 = { .name = "hmac_sha3_224_497", .hash = SHA3_224, .key = hmac_sha3_224_497_key, .keylen = 28, .msg = hmac_sha3_224_497_msg, .msglen = 16, .tag = hmac_sha3_224_497_tag, .taglen = 14, .result = -1, .comment = "all bits of tag flipped, tcId is 152 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 498 for HMAC, tcId is 153 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_498_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_498_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_498 = { .name = "hmac_sha3_224_498", .hash = SHA3_224, .key = hmac_sha3_224_498_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_498_tag, .taglen = 14, .result = -1, .comment = "Tag changed to all zero, tcId is 153 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 499 for HMAC, tcId is 154 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_499_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_499_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_499_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_499 = { .name = "hmac_sha3_224_499", .hash = SHA3_224, .key = hmac_sha3_224_499_key, .keylen = 28, .msg = hmac_sha3_224_499_msg, .msglen = 16, .tag = hmac_sha3_224_499_tag, .taglen = 14, .result = -1, .comment = "Tag changed to all zero, tcId is 154 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 500 for HMAC, tcId is 155 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_500_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_500_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_224_500 = { .name = "hmac_sha3_224_500", .hash = SHA3_224, .key = hmac_sha3_224_500_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_500_tag, .taglen = 14, .result = -1, .comment = "tag changed to all 1, tcId is 155 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 501 for HMAC, tcId is 156 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_501_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_501_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_501_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_224_501 = { .name = "hmac_sha3_224_501", .hash = SHA3_224, .key = hmac_sha3_224_501_key, .keylen = 28, .msg = hmac_sha3_224_501_msg, .msglen = 16, .tag = hmac_sha3_224_501_tag, .taglen = 14, .result = -1, .comment = "tag changed to all 1, tcId is 156 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 502 for HMAC, tcId is 157 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_502_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_502_tag[] = { 0xc3, 0x38, 0x79, 0xcf, 0x63, 0x9d, 0xa6, 0xe2, 0xe0, 0x8c, 0x17, 0x89, 0xfa, 0x20, }; static const wycheproof_hmac_test hmac_sha3_224_502 = { .name = "hmac_sha3_224_502", .hash = SHA3_224, .key = hmac_sha3_224_502_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_502_tag, .taglen = 14, .result = -1, .comment = "msbs changed in tag, tcId is 157 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 503 for HMAC, tcId is 158 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_503_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_503_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_503_tag[] = { 0x95, 0x3b, 0x5a, 0xda, 0x61, 0x9d, 0x42, 0x5f, 0x2d, 0x16, 0x88, 0xd6, 0x0f, 0x81, }; static const wycheproof_hmac_test hmac_sha3_224_503 = { .name = "hmac_sha3_224_503", .hash = SHA3_224, .key = hmac_sha3_224_503_key, .keylen = 28, .msg = hmac_sha3_224_503_msg, .msglen = 16, .tag = hmac_sha3_224_503_tag, .taglen = 14, .result = -1, .comment = "msbs changed in tag, tcId is 158 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 504 for HMAC, tcId is 159 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_504_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_504_tag[] = { 0x42, 0xb9, 0xf8, 0x4e, 0xe2, 0x1c, 0x27, 0x63, 0x61, 0x0d, 0x96, 0x08, 0x7b, 0xa1, }; static const wycheproof_hmac_test hmac_sha3_224_504 = { .name = "hmac_sha3_224_504", .hash = SHA3_224, .key = hmac_sha3_224_504_key, .keylen = 28, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_504_tag, .taglen = 14, .result = -1, .comment = "lsbs changed in tag, tcId is 159 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 505 for HMAC, tcId is 160 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_505_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, }; static const unsigned char hmac_sha3_224_505_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_224_505_tag[] = { 0x14, 0xba, 0xdb, 0x5b, 0xe0, 0x1c, 0xc3, 0xde, 0xac, 0x97, 0x09, 0x57, 0x8e, 0x00, }; static const wycheproof_hmac_test hmac_sha3_224_505 = { .name = "hmac_sha3_224_505", .hash = SHA3_224, .key = hmac_sha3_224_505_key, .keylen = 28, .msg = hmac_sha3_224_505_msg, .msglen = 16, .tag = hmac_sha3_224_505_tag, .taglen = 14, .result = -1, .comment = "lsbs changed in tag, tcId is 160 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 506 for HMAC, tcId is 161 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_506_key[] = { 0x77, 0xb0, 0xde, 0x54, 0xe8, 0x93, 0x64, 0x2c, 0xae, 0xac, 0x34, 0xbf, 0xd1, 0xab, }; static const unsigned char hmac_sha3_224_506_tag[] = { 0xec, 0x98, 0xa3, 0x47, 0x29, 0x19, 0x93, 0x49, 0x00, 0xec, 0xcd, 0x3e, 0x0e, 0xc3, 0xed, 0x6b, 0x9d, 0xef, 0x6f, 0x32, 0x4b, 0x02, 0xfd, 0x35, 0xe1, 0x93, 0x81, 0x94, }; static const wycheproof_hmac_test hmac_sha3_224_506 = { .name = "hmac_sha3_224_506", .hash = SHA3_224, .key = hmac_sha3_224_506_key, .keylen = 14, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_506_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 161 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 507 for HMAC, tcId is 162 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_507_key[] = { 0x73, 0x46, 0xc7, 0xe4, 0xb1, 0x18, 0xb2, 0x4e, 0x51, 0xf4, 0x51, 0x2f, 0x90, 0x6a, }; static const unsigned char hmac_sha3_224_507_msg[] = { 0x50, 0x6d, 0x4f, 0xaf, 0x62, 0x4f, 0x92, 0x96, 0x5a, 0xa6, 0xb5, 0xc0, 0x1e, 0x0c, 0x80, 0xa8, }; static const unsigned char hmac_sha3_224_507_tag[] = { 0x09, 0xa4, 0xd9, 0x75, 0x9d, 0x54, 0x4b, 0x73, 0xbf, 0xd7, 0xa6, 0x63, 0xad, 0xf5, 0xb1, 0x3c, 0x04, 0x99, 0x07, 0x3d, 0x86, 0x1f, 0x9e, 0x1a, 0xde, 0xa5, 0xdf, 0x83, }; static const wycheproof_hmac_test hmac_sha3_224_507 = { .name = "hmac_sha3_224_507", .hash = SHA3_224, .key = hmac_sha3_224_507_key, .keylen = 14, .msg = hmac_sha3_224_507_msg, .msglen = 16, .tag = hmac_sha3_224_507_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 162 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 508 for HMAC, tcId is 163 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_508_key[] = { 0xca, 0xa8, 0x64, 0x17, 0x9f, 0x66, 0xe8, 0x26, 0xa0, 0xef, 0x3b, 0x5e, 0xdb, 0xe3, }; static const unsigned char hmac_sha3_224_508_msg[] = { 0x73, 0xf6, 0x42, 0x53, 0x70, 0x6c, 0xe6, 0xb5, 0x09, 0x4c, 0x24, 0xee, 0x01, 0x2e, 0xce, 0x9a, 0xc2, 0x49, 0x52, 0x83, 0xdc, 0xd8, 0xc7, 0xf1, 0x11, 0x4e, 0x81, 0xe4, 0x58, 0x7d, 0x8e, 0xa4, }; static const unsigned char hmac_sha3_224_508_tag[] = { 0x36, 0xdb, 0x20, 0xb1, 0x4b, 0x79, 0xd6, 0x29, 0x4c, 0x98, 0x17, 0xd1, 0xab, 0xa3, 0x25, 0x64, 0x4f, 0x58, 0x52, 0x6a, 0x1c, 0xda, 0x8f, 0x6f, 0x49, 0x37, 0x11, 0xc3, }; static const wycheproof_hmac_test hmac_sha3_224_508 = { .name = "hmac_sha3_224_508", .hash = SHA3_224, .key = hmac_sha3_224_508_key, .keylen = 14, .msg = hmac_sha3_224_508_msg, .msglen = 32, .tag = hmac_sha3_224_508_tag, .taglen = 28, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 509 for HMAC, tcId is 164 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_509_key[] = { 0x66, 0x3a, 0x97, 0xd6, 0xb5, 0x49, 0x3d, 0xbf, 0xa6, 0x0c, 0x8d, 0xd0, 0x87, 0xed, }; static const unsigned char hmac_sha3_224_509_tag[] = { 0xaf, 0xa2, 0xa6, 0x93, 0xfb, 0x38, 0xa0, 0x1a, 0x7e, 0xe8, 0x09, 0xb4, 0x46, 0x24, }; static const wycheproof_hmac_test hmac_sha3_224_509 = { .name = "hmac_sha3_224_509", .hash = SHA3_224, .key = hmac_sha3_224_509_key, .keylen = 14, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_509_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 510 for HMAC, tcId is 165 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_510_key[] = { 0xb0, 0x8c, 0x34, 0x5a, 0x7c, 0x71, 0x66, 0xfd, 0xd3, 0x3c, 0xe7, 0x68, 0xc1, 0xdc, }; static const unsigned char hmac_sha3_224_510_msg[] = { 0x99, 0x64, 0xd8, 0x0e, 0xe2, 0x33, 0x8c, 0xff, 0xe2, 0x84, 0x83, 0xaa, 0x44, 0x6a, 0x6f, 0x76, }; static const unsigned char hmac_sha3_224_510_tag[] = { 0x73, 0xab, 0xc3, 0x1c, 0x5d, 0xa5, 0x60, 0x83, 0x73, 0xec, 0x9b, 0x82, 0x48, 0xc7, }; static const wycheproof_hmac_test hmac_sha3_224_510 = { .name = "hmac_sha3_224_510", .hash = SHA3_224, .key = hmac_sha3_224_510_key, .keylen = 14, .msg = hmac_sha3_224_510_msg, .msglen = 16, .tag = hmac_sha3_224_510_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 511 for HMAC, tcId is 166 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_511_key[] = { 0xfc, 0x9d, 0x28, 0x83, 0xc6, 0x75, 0x34, 0xfe, 0xfb, 0xd6, 0xed, 0x4a, 0x97, 0x98, }; static const unsigned char hmac_sha3_224_511_msg[] = { 0xa4, 0x98, 0x20, 0xc1, 0x94, 0xa4, 0x3d, 0xee, 0xf1, 0x1f, 0x3a, 0x0f, 0x4e, 0xaa, 0x80, 0x42, 0x54, 0x39, 0xfc, 0xa9, 0xd9, 0xf1, 0xd7, 0xc8, 0xe6, 0x65, 0xd6, 0xb1, 0x30, 0xe4, 0xe9, 0x08, }; static const unsigned char hmac_sha3_224_511_tag[] = { 0x9a, 0x97, 0x03, 0xea, 0x20, 0x37, 0x34, 0x5f, 0x99, 0x4a, 0x3a, 0x9d, 0x12, 0x67, }; static const wycheproof_hmac_test hmac_sha3_224_511 = { .name = "hmac_sha3_224_511", .hash = SHA3_224, .key = hmac_sha3_224_511_key, .keylen = 14, .msg = hmac_sha3_224_511_msg, .msglen = 32, .tag = hmac_sha3_224_511_tag, .taglen = 14, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 512 for HMAC, tcId is 167 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_512_key[] = { 0xcf, 0xa6, 0x39, 0x65, 0x6c, 0xd4, 0x9f, 0x8d, 0x70, 0xf0, 0xb1, 0xa5, 0xa0, 0x56, 0xab, 0x4f, 0xc0, 0xae, 0xee, 0xbc, 0x91, 0x33, 0x8d, 0x06, 0x7f, 0x36, 0xc4, 0x7b, 0x60, 0x12, 0xdc, 0x8d, 0x85, 0x6b, 0x8a, 0xbc, 0xc4, 0xe1, 0xab, 0xff, 0xc9, 0x10, 0xae, 0xae, 0xe2, 0x1b, 0x4d, 0x36, 0x6e, 0x90, 0x74, 0x88, 0xff, 0xd0, 0xca, 0x55, 0xb3, 0x6a, 0x62, 0x1a, 0xee, 0x0b, 0x2e, 0x9f, 0x0c, }; static const unsigned char hmac_sha3_224_512_tag[] = { 0x75, 0x13, 0x8f, 0x92, 0x03, 0x97, 0xe8, 0xdc, 0x25, 0xab, 0xff, 0x1b, 0xbb, 0x84, 0x4f, 0xb2, 0x6a, 0x05, 0xf3, 0x9f, 0x94, 0x56, 0xcf, 0x71, 0x57, 0x96, 0x8b, 0x2b, }; static const wycheproof_hmac_test hmac_sha3_224_512 = { .name = "hmac_sha3_224_512", .hash = SHA3_224, .key = hmac_sha3_224_512_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_512_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 167 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 513 for HMAC, tcId is 168 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_513_key[] = { 0xb3, 0x6d, 0x3d, 0x47, 0xa4, 0x58, 0x5b, 0x40, 0x1f, 0xc6, 0x4c, 0x98, 0xef, 0xf5, 0x62, 0x43, 0xd4, 0xda, 0x78, 0x86, 0x30, 0x63, 0xd8, 0x14, 0xe8, 0x8f, 0x37, 0x0b, 0x92, 0x57, 0x64, 0x06, 0xd4, 0x47, 0xfc, 0xf3, 0xd1, 0x29, 0xa1, 0xed, 0xe5, 0x7d, 0xdc, 0x56, 0xea, 0x3a, 0x0a, 0x1f, 0x10, 0x01, 0x05, 0xa9, 0x5e, 0x83, 0x13, 0x8c, 0xdf, 0x45, 0xec, 0xf2, 0xa5, 0x99, 0x2a, 0xcf, 0x90, }; static const unsigned char hmac_sha3_224_513_msg[] = { 0x15, 0xc7, 0x5a, 0x64, 0xb0, 0x4d, 0x09, 0x7a, 0xf2, 0x37, 0x1a, 0xf3, 0x80, 0x07, 0x9e, 0xb8, }; static const unsigned char hmac_sha3_224_513_tag[] = { 0x04, 0x19, 0xe7, 0x35, 0xf2, 0xed, 0x98, 0xf2, 0x6e, 0xf3, 0x6f, 0x15, 0xc3, 0x20, 0xa9, 0x25, 0x12, 0xa4, 0xc3, 0xa5, 0x33, 0x83, 0xd2, 0x55, 0x46, 0x4b, 0x70, 0xda, }; static const wycheproof_hmac_test hmac_sha3_224_513 = { .name = "hmac_sha3_224_513", .hash = SHA3_224, .key = hmac_sha3_224_513_key, .keylen = 65, .msg = hmac_sha3_224_513_msg, .msglen = 16, .tag = hmac_sha3_224_513_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 168 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 514 for HMAC, tcId is 169 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_514_key[] = { 0xcf, 0x78, 0xb9, 0x91, 0x38, 0x2d, 0xb5, 0xe8, 0x66, 0x6c, 0xcb, 0x23, 0x33, 0xfb, 0x67, 0x21, 0x79, 0xb1, 0x0a, 0x75, 0xcf, 0x9e, 0x5a, 0x76, 0x99, 0xae, 0x64, 0x00, 0x05, 0xe1, 0x97, 0x72, 0xef, 0x64, 0x99, 0xa3, 0xbc, 0x97, 0xf1, 0x2e, 0x58, 0xe8, 0x35, 0xbb, 0x00, 0x17, 0xbb, 0x3b, 0x2e, 0x64, 0xc6, 0xab, 0x44, 0xa0, 0xd6, 0x19, 0xdf, 0xa0, 0x36, 0x34, 0x84, 0xd1, 0xc9, 0x91, 0xe2, }; static const unsigned char hmac_sha3_224_514_msg[] = { 0xf6, 0x61, 0xe5, 0x98, 0xf1, 0x80, 0xf2, 0x5d, 0xc6, 0xdd, 0x76, 0xdb, 0x8a, 0x9e, 0x0e, 0x4c, 0x9c, 0x27, 0x2b, 0x96, 0x65, 0xa6, 0xb1, 0x75, 0x65, 0x60, 0xc7, 0x23, 0xb8, 0xe0, 0x85, 0x95, }; static const unsigned char hmac_sha3_224_514_tag[] = { 0xca, 0x46, 0x10, 0xa8, 0xd0, 0x81, 0xfc, 0x13, 0x3f, 0xe6, 0x65, 0x77, 0x00, 0xaf, 0x54, 0xee, 0x66, 0xfc, 0xda, 0x80, 0xf4, 0xbc, 0xe0, 0xd4, 0xbe, 0x11, 0x0b, 0x51, }; static const wycheproof_hmac_test hmac_sha3_224_514 = { .name = "hmac_sha3_224_514", .hash = SHA3_224, .key = hmac_sha3_224_514_key, .keylen = 65, .msg = hmac_sha3_224_514_msg, .msglen = 32, .tag = hmac_sha3_224_514_tag, .taglen = 28, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 515 for HMAC, tcId is 170 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_515_key[] = { 0x37, 0x72, 0xff, 0x6b, 0xb4, 0xe5, 0xb2, 0x81, 0x1c, 0xfd, 0x4d, 0x6a, 0x3d, 0x34, 0xdc, 0x74, 0xbc, 0xa3, 0xdb, 0xf8, 0x9a, 0x58, 0x17, 0xb7, 0x9d, 0x84, 0x72, 0xa1, 0x38, 0x3b, 0x8c, 0x9a, 0xfb, 0x27, 0xb3, 0x00, 0x61, 0x96, 0xce, 0x99, 0x66, 0x82, 0x9e, 0xae, 0x6a, 0x31, 0x3c, 0x2d, 0x72, 0x4d, 0x99, 0x5f, 0x4d, 0xef, 0x17, 0x11, 0x7c, 0x09, 0xed, 0xcf, 0xc8, 0xc0, 0xcb, 0xbc, 0x93, }; static const unsigned char hmac_sha3_224_515_tag[] = { 0x12, 0x43, 0xfc, 0x7e, 0xcb, 0x0f, 0xb4, 0x1e, 0x77, 0x7d, 0x22, 0x07, 0xa7, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_224_515 = { .name = "hmac_sha3_224_515", .hash = SHA3_224, .key = hmac_sha3_224_515_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_224_515_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 516 for HMAC, tcId is 171 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_516_key[] = { 0x2b, 0xa9, 0x10, 0xbc, 0x0b, 0xca, 0x90, 0x64, 0x4c, 0xb2, 0x1e, 0x96, 0x06, 0x3e, 0x2c, 0xd8, 0x5f, 0x5d, 0xd0, 0x2f, 0xda, 0x75, 0xd3, 0x53, 0xc9, 0xb5, 0x1e, 0xaf, 0x45, 0xee, 0xe9, 0x4c, 0x16, 0x5c, 0xa6, 0x59, 0x2d, 0x6c, 0xfd, 0xd9, 0x87, 0xbf, 0xdc, 0x1c, 0xba, 0x66, 0x36, 0x3d, 0x53, 0x5a, 0x14, 0xb2, 0xf7, 0xea, 0xd8, 0x41, 0xb1, 0x7c, 0x4d, 0x76, 0xa5, 0x04, 0x91, 0x05, 0xf9, }; static const unsigned char hmac_sha3_224_516_msg[] = { 0x7b, 0xa4, 0x61, 0x04, 0x0d, 0xe9, 0xea, 0x3c, 0xef, 0xd4, 0x80, 0x91, 0x24, 0xf7, 0x8b, 0x39, }; static const unsigned char hmac_sha3_224_516_tag[] = { 0x1f, 0x30, 0xf3, 0xb7, 0xa7, 0xff, 0x39, 0x71, 0x03, 0x2d, 0xef, 0x03, 0xbf, 0x73, }; static const wycheproof_hmac_test hmac_sha3_224_516 = { .name = "hmac_sha3_224_516", .hash = SHA3_224, .key = hmac_sha3_224_516_key, .keylen = 65, .msg = hmac_sha3_224_516_msg, .msglen = 16, .tag = hmac_sha3_224_516_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 517 for HMAC, tcId is 172 in file hmac_sha3_224_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) static const unsigned char hmac_sha3_224_517_key[] = { 0x7f, 0xcf, 0x3c, 0xb1, 0xb1, 0xc5, 0xb5, 0x37, 0x49, 0x2a, 0xed, 0xe4, 0x68, 0x92, 0x84, 0xb5, 0x88, 0x19, 0x35, 0xe3, 0x53, 0x7b, 0xb7, 0x30, 0x71, 0x98, 0xd6, 0x51, 0x8e, 0x7a, 0x6a, 0xab, 0xf7, 0x0b, 0x50, 0xb4, 0x4e, 0x4a, 0x8d, 0xfe, 0xe3, 0x5e, 0x9f, 0x5c, 0xba, 0xda, 0x74, 0x47, 0xe5, 0x11, 0xa3, 0x72, 0x09, 0x39, 0x0f, 0xcd, 0x17, 0x1c, 0x62, 0x07, 0x5c, 0x6a, 0x8b, 0xf1, 0xeb, }; static const unsigned char hmac_sha3_224_517_msg[] = { 0x83, 0xd2, 0x9c, 0x1c, 0x4d, 0x05, 0x9d, 0xdb, 0x0d, 0x2a, 0xca, 0x78, 0x7e, 0x5b, 0x70, 0x1b, 0xac, 0x39, 0x53, 0xfb, 0x9b, 0xc7, 0x2d, 0xc8, 0x7b, 0x1e, 0xf9, 0x2a, 0x58, 0x2e, 0x97, 0x48, }; static const unsigned char hmac_sha3_224_517_tag[] = { 0xdd, 0x10, 0x40, 0x1f, 0xac, 0x83, 0x49, 0x14, 0xf0, 0xa9, 0xa5, 0x74, 0xc6, 0x5e, }; static const wycheproof_hmac_test hmac_sha3_224_517 = { .name = "hmac_sha3_224_517", .hash = SHA3_224, .key = hmac_sha3_224_517_key, .keylen = 65, .msg = hmac_sha3_224_517_msg, .msglen = 32, .tag = hmac_sha3_224_517_tag, .taglen = 14, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha3_224_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) */ /* Test 518 for HMAC, tcId is 1 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_518_key[] = { 0x1e, 0x22, 0x5c, 0xaf, 0xb9, 0x03, 0x39, 0xbb, 0xa1, 0xb2, 0x40, 0x76, 0xd4, 0x20, 0x6c, 0x3e, 0x79, 0xc3, 0x55, 0x80, 0x5d, 0x85, 0x16, 0x82, 0xbc, 0x81, 0x8b, 0xaa, 0x4f, 0x5a, 0x77, 0x79, }; static const unsigned char hmac_sha3_256_518_tag[] = { 0xa3, 0xc5, 0x84, 0x70, 0xaf, 0xa8, 0x83, 0x5d, 0x6e, 0x23, 0x57, 0xfb, 0x7b, 0x1c, 0xd0, 0x7f, 0x8c, 0x4b, 0xc4, 0xc7, 0x87, 0x4c, 0xa5, 0x9d, 0x83, 0x16, 0x3f, 0x04, 0x6a, 0x9e, 0x22, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_256_518 = { .name = "hmac_sha3_256_518", .hash = SHA3_256, .key = hmac_sha3_256_518_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_518_tag, .taglen = 32, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 519 for HMAC, tcId is 2 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_519_key[] = { 0x81, 0x59, 0xfd, 0x15, 0x13, 0x3c, 0xd9, 0x64, 0xc9, 0xa6, 0x96, 0x4c, 0x94, 0xf0, 0xea, 0x26, 0x9a, 0x80, 0x6f, 0xd9, 0xf4, 0x3f, 0x0d, 0xa5, 0x8b, 0x6c, 0xd1, 0xb3, 0x3d, 0x18, 0x9b, 0x2a, }; static const unsigned char hmac_sha3_256_519_msg[] = { 0x77, }; static const unsigned char hmac_sha3_256_519_tag[] = { 0xf7, 0x09, 0xa3, 0x5d, 0x41, 0xe8, 0x2e, 0x36, 0x95, 0x55, 0x12, 0xbf, 0x5f, 0xc1, 0xaf, 0x0c, 0x1a, 0x9c, 0x58, 0x0f, 0xf8, 0xfc, 0x31, 0x99, 0xbc, 0xb7, 0x45, 0x40, 0x27, 0x02, 0x92, 0x82, }; static const wycheproof_hmac_test hmac_sha3_256_519 = { .name = "hmac_sha3_256_519", .hash = SHA3_256, .key = hmac_sha3_256_519_key, .keylen = 32, .msg = hmac_sha3_256_519_msg, .msglen = 1, .tag = hmac_sha3_256_519_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 520 for HMAC, tcId is 3 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_520_key[] = { 0x85, 0xa7, 0xcb, 0xaa, 0xe8, 0x25, 0xbb, 0x82, 0xc9, 0xb6, 0xf6, 0xc5, 0xc2, 0xaf, 0x5a, 0xc0, 0x3d, 0x1f, 0x6d, 0xaa, 0x63, 0xd2, 0xa9, 0x3c, 0x18, 0x99, 0x48, 0xec, 0x41, 0xb9, 0xde, 0xd9, }; static const unsigned char hmac_sha3_256_520_msg[] = { 0xa5, 0x9b, }; static const unsigned char hmac_sha3_256_520_tag[] = { 0xbd, 0x32, 0x3e, 0x49, 0x4c, 0x3d, 0x22, 0xbd, 0xe1, 0xd1, 0x1d, 0xbd, 0xe4, 0x58, 0xf8, 0x1b, 0xbe, 0x59, 0x00, 0x07, 0xb4, 0x2c, 0x4c, 0xee, 0x1c, 0xc4, 0x50, 0x30, 0xd2, 0xb7, 0x33, 0xcf, }; static const wycheproof_hmac_test hmac_sha3_256_520 = { .name = "hmac_sha3_256_520", .hash = SHA3_256, .key = hmac_sha3_256_520_key, .keylen = 32, .msg = hmac_sha3_256_520_msg, .msglen = 2, .tag = hmac_sha3_256_520_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 521 for HMAC, tcId is 4 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_521_key[] = { 0x48, 0xf3, 0x02, 0x93, 0x34, 0xe5, 0x5c, 0xfb, 0xd5, 0x74, 0xcc, 0xc7, 0x65, 0xfb, 0x2c, 0x36, 0x85, 0xaa, 0xb1, 0xf4, 0x83, 0x7d, 0x23, 0x37, 0x08, 0x74, 0xa3, 0xe6, 0x34, 0xc3, 0xa7, 0x6d, }; static const unsigned char hmac_sha3_256_521_msg[] = { 0xc7, 0xb8, 0xb2, }; static const unsigned char hmac_sha3_256_521_tag[] = { 0x7a, 0xd9, 0x28, 0xd2, 0xf7, 0xe9, 0x05, 0xaa, 0xca, 0x9b, 0xd6, 0x3d, 0x34, 0xe4, 0xb8, 0x4c, 0x58, 0xed, 0x37, 0xf4, 0x39, 0xb9, 0xb8, 0x5b, 0x33, 0xf1, 0xf4, 0x7c, 0x8b, 0xaa, 0x26, 0xda, }; static const wycheproof_hmac_test hmac_sha3_256_521 = { .name = "hmac_sha3_256_521", .hash = SHA3_256, .key = hmac_sha3_256_521_key, .keylen = 32, .msg = hmac_sha3_256_521_msg, .msglen = 3, .tag = hmac_sha3_256_521_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 522 for HMAC, tcId is 5 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_522_key[] = { 0xde, 0x8b, 0x5b, 0x5b, 0x2f, 0x09, 0x64, 0x5b, 0xe4, 0x7e, 0xcb, 0x64, 0x07, 0xa4, 0xe1, 0xd9, 0xc6, 0xb3, 0x3a, 0xe3, 0xc2, 0xd2, 0x25, 0x17, 0xd3, 0x35, 0x7d, 0xa0, 0x35, 0x7a, 0x31, 0x39, }; static const unsigned char hmac_sha3_256_522_msg[] = { 0xcc, 0x02, 0x1d, 0x65, }; static const unsigned char hmac_sha3_256_522_tag[] = { 0x8a, 0x5d, 0xb6, 0x03, 0x45, 0xaa, 0x7c, 0xc4, 0xaf, 0xb3, 0x9e, 0x64, 0x5e, 0xde, 0x87, 0xb1, 0x6e, 0x73, 0xd3, 0x7d, 0xf0, 0x45, 0x62, 0x3e, 0xc5, 0x8e, 0x9e, 0x90, 0x1f, 0x96, 0xe2, 0x24, }; static const wycheproof_hmac_test hmac_sha3_256_522 = { .name = "hmac_sha3_256_522", .hash = SHA3_256, .key = hmac_sha3_256_522_key, .keylen = 32, .msg = hmac_sha3_256_522_msg, .msglen = 4, .tag = hmac_sha3_256_522_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 523 for HMAC, tcId is 6 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_523_key[] = { 0xb7, 0x93, 0x89, 0x10, 0xf5, 0x18, 0xf1, 0x32, 0x05, 0xca, 0x14, 0x92, 0xc6, 0x69, 0x00, 0x1a, 0x14, 0xff, 0x91, 0x3c, 0x8a, 0xb4, 0xa0, 0xdc, 0x35, 0x64, 0xe7, 0x41, 0x8e, 0x91, 0x29, 0x7c, }; static const unsigned char hmac_sha3_256_523_msg[] = { 0xa4, 0xa6, 0xef, 0x6e, 0xbd, }; static const unsigned char hmac_sha3_256_523_tag[] = { 0xdf, 0xd1, 0xdd, 0xfe, 0xc9, 0xc5, 0x13, 0x3d, 0x1a, 0x2b, 0xe3, 0x3c, 0x4a, 0x97, 0x8d, 0x3b, 0xee, 0x78, 0x74, 0x08, 0x95, 0xa5, 0xb1, 0xe1, 0x5c, 0x54, 0x54, 0x28, 0x42, 0xe4, 0xc8, 0xde, }; static const wycheproof_hmac_test hmac_sha3_256_523 = { .name = "hmac_sha3_256_523", .hash = SHA3_256, .key = hmac_sha3_256_523_key, .keylen = 32, .msg = hmac_sha3_256_523_msg, .msglen = 5, .tag = hmac_sha3_256_523_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 524 for HMAC, tcId is 7 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_524_key[] = { 0x1b, 0xb9, 0x97, 0xff, 0x4d, 0xe8, 0xa5, 0xa3, 0x91, 0xde, 0x5c, 0x08, 0xa3, 0x3b, 0xc2, 0xc7, 0xc2, 0x89, 0x1e, 0x47, 0xad, 0x5b, 0x9c, 0x63, 0x11, 0x01, 0x92, 0xf7, 0x8b, 0x98, 0xfe, 0x78, }; static const unsigned char hmac_sha3_256_524_msg[] = { 0x66, 0x7e, 0x01, 0x5d, 0xf7, 0xfc, }; static const unsigned char hmac_sha3_256_524_tag[] = { 0xca, 0x5e, 0x8f, 0x03, 0x9e, 0xfc, 0x11, 0x37, 0xce, 0xfd, 0x12, 0x8c, 0x40, 0xe2, 0x75, 0xe7, 0x27, 0x81, 0x1b, 0xc2, 0xf7, 0x85, 0xf7, 0x22, 0x23, 0x43, 0xc2, 0x86, 0x6f, 0x80, 0xb4, 0x4d, }; static const wycheproof_hmac_test hmac_sha3_256_524 = { .name = "hmac_sha3_256_524", .hash = SHA3_256, .key = hmac_sha3_256_524_key, .keylen = 32, .msg = hmac_sha3_256_524_msg, .msglen = 6, .tag = hmac_sha3_256_524_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 525 for HMAC, tcId is 8 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_525_key[] = { 0x32, 0xfd, 0xed, 0xa3, 0x9f, 0x98, 0xb4, 0xf4, 0x42, 0x6c, 0x2d, 0x2a, 0xc0, 0x0a, 0xb5, 0xdd, 0x4b, 0xfa, 0xbb, 0x68, 0xf3, 0x11, 0x44, 0x72, 0x56, 0xed, 0x6d, 0x3d, 0x3a, 0x51, 0xb1, 0x54, }; static const unsigned char hmac_sha3_256_525_msg[] = { 0x41, 0x63, 0xa9, 0xf7, 0x7e, 0x41, 0xf5, }; static const unsigned char hmac_sha3_256_525_tag[] = { 0x06, 0xd3, 0x88, 0x48, 0xb9, 0x0d, 0x0a, 0x79, 0x75, 0x67, 0xcb, 0x6f, 0xa6, 0x8e, 0x3b, 0x2d, 0x97, 0x0b, 0x2c, 0x52, 0xea, 0x91, 0x14, 0x78, 0x6e, 0xb5, 0x4a, 0xa2, 0x2d, 0x40, 0x3e, 0x70, }; static const wycheproof_hmac_test hmac_sha3_256_525 = { .name = "hmac_sha3_256_525", .hash = SHA3_256, .key = hmac_sha3_256_525_key, .keylen = 32, .msg = hmac_sha3_256_525_msg, .msglen = 7, .tag = hmac_sha3_256_525_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 526 for HMAC, tcId is 9 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_526_key[] = { 0x23, 0x3e, 0x4f, 0xde, 0xe7, 0x0b, 0xcc, 0x20, 0x23, 0x5b, 0x69, 0x77, 0xdd, 0xfc, 0x05, 0xb0, 0xdf, 0x66, 0xf5, 0x63, 0x5d, 0x82, 0x7c, 0x66, 0xe5, 0xa6, 0x3c, 0xdb, 0x16, 0xa2, 0x49, 0x38, }; static const unsigned char hmac_sha3_256_526_msg[] = { 0xfd, 0xb2, 0xee, 0x4b, 0x6d, 0x1a, 0x0a, 0xc2, }; static const unsigned char hmac_sha3_256_526_tag[] = { 0x79, 0x9b, 0x30, 0x41, 0x8e, 0xc2, 0x61, 0x99, 0x36, 0xb0, 0x26, 0x0b, 0xb5, 0x02, 0x64, 0xef, 0x4c, 0x82, 0x33, 0x99, 0x74, 0x18, 0x60, 0x4d, 0x04, 0xf8, 0xe8, 0xd3, 0x18, 0xd4, 0xff, 0x3c, }; static const wycheproof_hmac_test hmac_sha3_256_526 = { .name = "hmac_sha3_256_526", .hash = SHA3_256, .key = hmac_sha3_256_526_key, .keylen = 32, .msg = hmac_sha3_256_526_msg, .msglen = 8, .tag = hmac_sha3_256_526_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 527 for HMAC, tcId is 10 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_527_key[] = { 0xb9, 0x84, 0xc6, 0x73, 0x4e, 0x0b, 0xd1, 0x2b, 0x17, 0x37, 0xb2, 0xfc, 0x7a, 0x1b, 0x38, 0x03, 0xb4, 0xdf, 0xec, 0x40, 0x21, 0x40, 0xa5, 0x7b, 0x9e, 0xcc, 0xc3, 0x54, 0x14, 0xae, 0x66, 0x1b, }; static const unsigned char hmac_sha3_256_527_msg[] = { 0xde, 0xa5, 0x84, 0xd0, 0xe2, 0xa1, 0x4a, 0xd5, 0xfd, }; static const unsigned char hmac_sha3_256_527_tag[] = { 0x68, 0x43, 0x83, 0xe2, 0x46, 0x0f, 0xd2, 0x70, 0x04, 0x45, 0x32, 0xe9, 0x5b, 0x5e, 0x83, 0xfe, 0xc5, 0x20, 0xff, 0xa9, 0x9d, 0xd2, 0xa8, 0x98, 0xaa, 0x8c, 0x88, 0xa5, 0xd7, 0x6d, 0xa0, 0x2d, }; static const wycheproof_hmac_test hmac_sha3_256_527 = { .name = "hmac_sha3_256_527", .hash = SHA3_256, .key = hmac_sha3_256_527_key, .keylen = 32, .msg = hmac_sha3_256_527_msg, .msglen = 9, .tag = hmac_sha3_256_527_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 528 for HMAC, tcId is 11 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_528_key[] = { 0xd0, 0xca, 0xf1, 0x45, 0x6a, 0xc5, 0xe2, 0x55, 0xfa, 0x6a, 0xfd, 0x61, 0xa7, 0x9d, 0xc8, 0xc7, 0x16, 0xf5, 0x35, 0x8a, 0x29, 0x8a, 0x50, 0x82, 0x71, 0x36, 0x3f, 0xe1, 0xff, 0x98, 0x35, 0x61, }; static const unsigned char hmac_sha3_256_528_msg[] = { 0x18, 0x26, 0x1d, 0xc8, 0x06, 0x91, 0x3c, 0x53, 0x46, 0x66, }; static const unsigned char hmac_sha3_256_528_tag[] = { 0x66, 0x5b, 0x8f, 0x70, 0x3c, 0x71, 0x9a, 0x6a, 0x4b, 0xfc, 0xe9, 0x75, 0x67, 0x05, 0x0a, 0xba, 0x77, 0xaa, 0xee, 0xa6, 0x6e, 0x70, 0xfd, 0x3e, 0xc3, 0x7d, 0x52, 0xb9, 0xb8, 0x0e, 0xc9, 0x37, }; static const wycheproof_hmac_test hmac_sha3_256_528 = { .name = "hmac_sha3_256_528", .hash = SHA3_256, .key = hmac_sha3_256_528_key, .keylen = 32, .msg = hmac_sha3_256_528_msg, .msglen = 10, .tag = hmac_sha3_256_528_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 529 for HMAC, tcId is 12 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_529_key[] = { 0x83, 0x5b, 0xc8, 0x24, 0x1e, 0xd8, 0x17, 0x73, 0x5e, 0xc9, 0xd3, 0xd0, 0xe2, 0xdf, 0x4c, 0x17, 0x3e, 0xe4, 0xdd, 0xed, 0x4a, 0x8e, 0xf0, 0xc0, 0x4a, 0x96, 0xc4, 0x8f, 0x11, 0x82, 0x04, 0x63, }; static const unsigned char hmac_sha3_256_529_msg[] = { 0x26, 0xf8, 0x08, 0x3e, 0x94, 0x4b, 0xac, 0xf0, 0x4e, 0x9a, 0x4d, }; static const unsigned char hmac_sha3_256_529_tag[] = { 0x52, 0x08, 0x85, 0x2f, 0x40, 0xc5, 0xfe, 0x6e, 0x97, 0xba, 0x73, 0x3a, 0x9f, 0xd0, 0xaa, 0x39, 0xe0, 0x39, 0xe1, 0xb2, 0xd2, 0x50, 0x1d, 0xa3, 0x61, 0xae, 0x0e, 0x92, 0xfc, 0xbd, 0x6e, 0x7d, }; static const wycheproof_hmac_test hmac_sha3_256_529 = { .name = "hmac_sha3_256_529", .hash = SHA3_256, .key = hmac_sha3_256_529_key, .keylen = 32, .msg = hmac_sha3_256_529_msg, .msglen = 11, .tag = hmac_sha3_256_529_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 530 for HMAC, tcId is 13 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_530_key[] = { 0x05, 0x5f, 0x95, 0xc9, 0x46, 0x1b, 0x08, 0x09, 0x57, 0x5e, 0xcc, 0xdf, 0xa5, 0xcd, 0xd0, 0x62, 0x75, 0xf2, 0x5d, 0x30, 0x91, 0x5c, 0x4e, 0xb8, 0xdb, 0x40, 0xe1, 0xac, 0xd3, 0xab, 0x75, 0x91, }; static const unsigned char hmac_sha3_256_530_msg[] = { 0xbf, 0xb7, 0xd6, 0xa0, 0x8d, 0xba, 0xa5, 0x22, 0x5f, 0x32, 0x08, 0x87, }; static const unsigned char hmac_sha3_256_530_tag[] = { 0x67, 0x89, 0x08, 0xa6, 0x02, 0xc9, 0xc2, 0x15, 0x04, 0x9a, 0x92, 0x22, 0x1f, 0x22, 0x98, 0x10, 0x39, 0xc2, 0xcf, 0xd1, 0xc6, 0x99, 0xbc, 0x36, 0x0f, 0x7d, 0xa5, 0xe6, 0xd0, 0x96, 0x7b, 0x5a, }; static const wycheproof_hmac_test hmac_sha3_256_530 = { .name = "hmac_sha3_256_530", .hash = SHA3_256, .key = hmac_sha3_256_530_key, .keylen = 32, .msg = hmac_sha3_256_530_msg, .msglen = 12, .tag = hmac_sha3_256_530_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 531 for HMAC, tcId is 14 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_531_key[] = { 0xe4, 0x0f, 0x7a, 0x3e, 0xb8, 0x8d, 0xde, 0xc4, 0xc6, 0x34, 0x7e, 0xa4, 0xd6, 0x76, 0x10, 0x75, 0x6c, 0x82, 0xc8, 0xeb, 0xcc, 0x23, 0x76, 0x29, 0xbf, 0x87, 0x3c, 0xca, 0xbc, 0x32, 0x98, 0x4a, }; static const unsigned char hmac_sha3_256_531_msg[] = { 0x7f, 0xe4, 0x3f, 0xeb, 0xc7, 0x84, 0x74, 0x64, 0x9e, 0x45, 0xbf, 0x99, 0xb2, }; static const unsigned char hmac_sha3_256_531_tag[] = { 0x80, 0xbd, 0xbf, 0x6a, 0xbc, 0x65, 0xee, 0x42, 0x23, 0xff, 0xf5, 0xe9, 0x1d, 0x61, 0xa4, 0xa3, 0xe3, 0x97, 0x32, 0x86, 0xdf, 0xb4, 0xe6, 0x2b, 0x51, 0xbf, 0xf7, 0xd2, 0xe4, 0xa4, 0xe4, 0x3c, }; static const wycheproof_hmac_test hmac_sha3_256_531 = { .name = "hmac_sha3_256_531", .hash = SHA3_256, .key = hmac_sha3_256_531_key, .keylen = 32, .msg = hmac_sha3_256_531_msg, .msglen = 13, .tag = hmac_sha3_256_531_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 532 for HMAC, tcId is 15 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_532_key[] = { 0xb0, 0x20, 0xad, 0x1d, 0xe1, 0xc1, 0x41, 0xf7, 0xec, 0x61, 0x5e, 0xe5, 0x70, 0x15, 0x21, 0x77, 0x3f, 0x9b, 0x23, 0x2e, 0x4d, 0x06, 0x37, 0x6c, 0x38, 0x28, 0x94, 0xce, 0x51, 0xa6, 0x1f, 0x48, }; static const unsigned char hmac_sha3_256_532_msg[] = { 0x81, 0xc7, 0x58, 0x1a, 0x19, 0x4b, 0x5e, 0x71, 0xb4, 0x11, 0x46, 0xa5, 0x82, 0xc1, }; static const unsigned char hmac_sha3_256_532_tag[] = { 0x4a, 0x57, 0xe7, 0xb7, 0xd4, 0x38, 0xb9, 0x3c, 0x8b, 0x79, 0x51, 0xef, 0x78, 0x9b, 0x93, 0xa1, 0x3b, 0x20, 0xd6, 0x46, 0x3f, 0xdb, 0xd4, 0xfa, 0x00, 0x26, 0x35, 0x4b, 0x99, 0x59, 0xa2, 0x73, }; static const wycheproof_hmac_test hmac_sha3_256_532 = { .name = "hmac_sha3_256_532", .hash = SHA3_256, .key = hmac_sha3_256_532_key, .keylen = 32, .msg = hmac_sha3_256_532_msg, .msglen = 14, .tag = hmac_sha3_256_532_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 533 for HMAC, tcId is 16 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_533_key[] = { 0x9f, 0x3f, 0xd6, 0x1a, 0x10, 0x52, 0x02, 0x64, 0x8e, 0xcf, 0xf6, 0x07, 0x4c, 0x95, 0xe5, 0x02, 0xc1, 0xc5, 0x1a, 0xcd, 0x32, 0xec, 0x53, 0x8a, 0x5c, 0xce, 0x89, 0xef, 0x84, 0x1f, 0x79, 0x89, }; static const unsigned char hmac_sha3_256_533_msg[] = { 0x2a, 0x76, 0xf2, 0xac, 0xda, 0xce, 0x42, 0xe3, 0xb7, 0x79, 0x72, 0x49, 0x46, 0x91, 0x2c, }; static const unsigned char hmac_sha3_256_533_tag[] = { 0xf9, 0x5b, 0x62, 0x76, 0x60, 0xec, 0xe1, 0x75, 0x30, 0x4f, 0x36, 0xa7, 0x01, 0xe6, 0x47, 0xf2, 0x6f, 0x07, 0x94, 0xb6, 0xd5, 0xe2, 0x26, 0xf2, 0xe2, 0x72, 0xef, 0x9e, 0x9b, 0xf6, 0x97, 0x44, }; static const wycheproof_hmac_test hmac_sha3_256_533 = { .name = "hmac_sha3_256_533", .hash = SHA3_256, .key = hmac_sha3_256_533_key, .keylen = 32, .msg = hmac_sha3_256_533_msg, .msglen = 15, .tag = hmac_sha3_256_533_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 534 for HMAC, tcId is 17 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_534_key[] = { 0x6f, 0xa3, 0x53, 0x86, 0x8c, 0x82, 0xe5, 0xde, 0xee, 0xda, 0xc7, 0xf0, 0x94, 0x71, 0xa6, 0x1b, 0xf7, 0x49, 0xab, 0x54, 0x98, 0x23, 0x9e, 0x94, 0x7e, 0x01, 0x2e, 0xee, 0x3c, 0x82, 0xd7, 0xc4, }; static const unsigned char hmac_sha3_256_534_msg[] = { 0xae, 0xed, 0x3e, 0x4d, 0x4c, 0xb9, 0xbb, 0xb6, 0x0d, 0x48, 0x2e, 0x98, 0xc1, 0x26, 0xc0, 0xf5, }; static const unsigned char hmac_sha3_256_534_tag[] = { 0x4c, 0x51, 0x98, 0xe6, 0x9a, 0x42, 0xdb, 0x2d, 0x77, 0xaa, 0xe9, 0x97, 0x5c, 0x96, 0x42, 0x99, 0x70, 0xa4, 0xbc, 0x64, 0xdd, 0x90, 0x6d, 0x8c, 0xb1, 0x68, 0x83, 0xa2, 0x16, 0xa3, 0xf3, 0x04, }; static const wycheproof_hmac_test hmac_sha3_256_534 = { .name = "hmac_sha3_256_534", .hash = SHA3_256, .key = hmac_sha3_256_534_key, .keylen = 32, .msg = hmac_sha3_256_534_msg, .msglen = 16, .tag = hmac_sha3_256_534_tag, .taglen = 32, .result = 1, .comment = ", tcId is 17 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 535 for HMAC, tcId is 18 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_535_key[] = { 0x53, 0x00, 0x48, 0x94, 0x94, 0xca, 0x86, 0x22, 0x1c, 0x91, 0xd6, 0xd9, 0x53, 0x95, 0x2a, 0xe1, 0xa5, 0xe0, 0x97, 0x13, 0x9d, 0xc9, 0xcf, 0x11, 0x79, 0xc2, 0xf5, 0x64, 0x33, 0x75, 0x38, 0x24, }; static const unsigned char hmac_sha3_256_535_msg[] = { 0x90, 0xfe, 0xa6, 0xcf, 0x2b, 0xd8, 0x11, 0xb4, 0x49, 0xf3, 0x33, 0xee, 0x92, 0x33, 0xe5, 0x76, 0x97, }; static const unsigned char hmac_sha3_256_535_tag[] = { 0xa8, 0xad, 0xe6, 0xe9, 0x1e, 0x97, 0xab, 0xb4, 0xcf, 0x6e, 0x92, 0xd4, 0xbc, 0xf1, 0xfb, 0x3b, 0x8f, 0x1b, 0xe3, 0xb9, 0xda, 0x4a, 0xdd, 0x09, 0xb0, 0xe4, 0x54, 0x4b, 0x97, 0x8f, 0xbe, 0x14, }; static const wycheproof_hmac_test hmac_sha3_256_535 = { .name = "hmac_sha3_256_535", .hash = SHA3_256, .key = hmac_sha3_256_535_key, .keylen = 32, .msg = hmac_sha3_256_535_msg, .msglen = 17, .tag = hmac_sha3_256_535_tag, .taglen = 32, .result = 1, .comment = ", tcId is 18 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 536 for HMAC, tcId is 19 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_536_key[] = { 0x38, 0x3e, 0x7c, 0x5c, 0x13, 0x47, 0x6a, 0x62, 0x26, 0x84, 0x23, 0xef, 0x05, 0x00, 0x47, 0x9f, 0x9e, 0x86, 0xe2, 0x36, 0xc5, 0xa0, 0x81, 0xc6, 0x44, 0x91, 0x89, 0xe6, 0xaf, 0xdf, 0x2a, 0xf5, }; static const unsigned char hmac_sha3_256_536_msg[] = { 0x32, 0x02, 0x70, 0x5a, 0xf8, 0x9f, 0x95, 0x55, 0xc5, 0x40, 0xb0, 0xe1, 0x27, 0x69, 0x11, 0xd0, 0x19, 0x71, 0xab, 0xb2, 0xc3, 0x5c, 0x78, 0xb2, }; static const unsigned char hmac_sha3_256_536_tag[] = { 0xe9, 0xb4, 0xfe, 0x81, 0x96, 0x72, 0x3d, 0xb5, 0x6d, 0x59, 0x22, 0x11, 0x97, 0xf1, 0x1a, 0x71, 0x3f, 0x21, 0xa1, 0x7f, 0xd2, 0x17, 0x78, 0x87, 0x26, 0xc4, 0xd9, 0x8a, 0x4f, 0x57, 0x30, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_256_536 = { .name = "hmac_sha3_256_536", .hash = SHA3_256, .key = hmac_sha3_256_536_key, .keylen = 32, .msg = hmac_sha3_256_536_msg, .msglen = 24, .tag = hmac_sha3_256_536_tag, .taglen = 32, .result = 1, .comment = ", tcId is 19 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 537 for HMAC, tcId is 20 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_537_key[] = { 0x18, 0x6e, 0x24, 0x8a, 0xd8, 0x24, 0xe1, 0xeb, 0x93, 0x32, 0x9a, 0x7f, 0xdc, 0xd5, 0x65, 0xb6, 0xcb, 0x4e, 0xaf, 0x3f, 0x85, 0xb9, 0x0b, 0x91, 0x07, 0x77, 0x12, 0x8d, 0x8c, 0x53, 0x8d, 0x27, }; static const unsigned char hmac_sha3_256_537_msg[] = { 0x92, 0xef, 0x9f, 0xf5, 0x2f, 0x46, 0xec, 0xcc, 0x7e, 0x38, 0xb9, 0xee, 0x19, 0xfd, 0x2d, 0xe3, 0xb3, 0x77, 0x26, 0xc8, 0xe6, 0xce, 0x9e, 0x1b, 0x96, 0xdb, 0x5d, 0xda, 0x4c, 0x31, 0x79, 0x02, }; static const unsigned char hmac_sha3_256_537_tag[] = { 0xd5, 0x65, 0xfa, 0xa1, 0x79, 0xbe, 0x14, 0xd8, 0xc6, 0x67, 0x9e, 0x00, 0x23, 0x5f, 0xda, 0x9d, 0xb5, 0xb4, 0xbc, 0x13, 0xc0, 0x0b, 0x87, 0x6b, 0xe6, 0x2c, 0xf6, 0x1c, 0x30, 0xdd, 0x83, 0x92, }; static const wycheproof_hmac_test hmac_sha3_256_537 = { .name = "hmac_sha3_256_537", .hash = SHA3_256, .key = hmac_sha3_256_537_key, .keylen = 32, .msg = hmac_sha3_256_537_msg, .msglen = 32, .tag = hmac_sha3_256_537_tag, .taglen = 32, .result = 1, .comment = ", tcId is 20 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 538 for HMAC, tcId is 21 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_538_key[] = { 0x28, 0x85, 0x5c, 0x7e, 0xfc, 0x85, 0x32, 0xd9, 0x25, 0x67, 0x30, 0x09, 0x33, 0xcc, 0x1c, 0xa2, 0xd0, 0x58, 0x6f, 0x55, 0xdc, 0xc9, 0xf0, 0x54, 0xfc, 0xca, 0x2f, 0x05, 0x25, 0x4f, 0xbf, 0x7f, }; static const unsigned char hmac_sha3_256_538_msg[] = { 0x9c, 0x09, 0x20, 0x7f, 0xf0, 0xe6, 0xe5, 0x82, 0xcb, 0x37, 0x47, 0xdc, 0xa9, 0x54, 0xc9, 0x4d, 0x45, 0xc0, 0x5e, 0x93, 0xf1, 0xe6, 0xf2, 0x11, 0x79, 0xcf, 0x0e, 0x25, 0xb4, 0xce, 0xde, 0x74, 0xb5, 0x47, 0x9d, 0x32, 0xf5, 0x16, 0x69, 0x35, 0xc8, 0x6f, 0x04, 0x41, 0x90, 0x58, 0x65, }; static const unsigned char hmac_sha3_256_538_tag[] = { 0x28, 0x76, 0x01, 0x2e, 0x6b, 0xdf, 0xc8, 0x98, 0x99, 0xb8, 0xd0, 0x80, 0xf5, 0xe3, 0xac, 0x58, 0x4c, 0x41, 0x50, 0xe5, 0xe0, 0xbb, 0xbe, 0xa3, 0xa9, 0x8b, 0xaa, 0x68, 0xd7, 0x4c, 0x78, 0x93, }; static const wycheproof_hmac_test hmac_sha3_256_538 = { .name = "hmac_sha3_256_538", .hash = SHA3_256, .key = hmac_sha3_256_538_key, .keylen = 32, .msg = hmac_sha3_256_538_msg, .msglen = 47, .tag = hmac_sha3_256_538_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 539 for HMAC, tcId is 22 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_539_key[] = { 0x8e, 0x54, 0x0c, 0xb3, 0x0c, 0x94, 0x83, 0x6a, 0xe2, 0xa5, 0x95, 0x0f, 0x35, 0x5d, 0x48, 0x2a, 0x70, 0x02, 0xe2, 0x55, 0x20, 0x7e, 0x94, 0xfd, 0xa3, 0xf7, 0xef, 0x1a, 0x09, 0x90, 0x13, 0xa0, }; static const unsigned char hmac_sha3_256_539_msg[] = { 0xd6, 0x50, 0x0f, 0x95, 0xe1, 0x12, 0x62, 0xe3, 0x08, 0xbf, 0x3d, 0xf4, 0xdf, 0x4b, 0x85, 0x5f, 0x33, 0xe8, 0x57, 0x56, 0x3d, 0x45, 0x43, 0xf1, 0x95, 0x63, 0x9a, 0x0a, 0x17, 0xb4, 0x42, 0xeb, 0x9f, 0xdc, 0xc1, 0x36, 0x7d, 0x2e, 0xee, 0x75, 0xc8, 0xf8, 0x05, 0x73, 0x0b, 0x89, 0x29, 0x0f, }; static const unsigned char hmac_sha3_256_539_tag[] = { 0x39, 0x4a, 0xd1, 0x85, 0xfc, 0x8d, 0x8b, 0x13, 0x51, 0xc4, 0xa3, 0xaa, 0x96, 0xe7, 0xf6, 0xcc, 0xd8, 0xe8, 0x17, 0xd8, 0x6f, 0x24, 0x4a, 0x42, 0x77, 0x91, 0xf8, 0x65, 0xf5, 0xaa, 0x1d, 0x3c, }; static const wycheproof_hmac_test hmac_sha3_256_539 = { .name = "hmac_sha3_256_539", .hash = SHA3_256, .key = hmac_sha3_256_539_key, .keylen = 32, .msg = hmac_sha3_256_539_msg, .msglen = 48, .tag = hmac_sha3_256_539_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 540 for HMAC, tcId is 23 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_540_key[] = { 0x69, 0xc5, 0x0d, 0x52, 0x74, 0x35, 0x81, 0x88, 0xcf, 0xf4, 0xc0, 0xfa, 0xe7, 0x42, 0x24, 0x3d, 0x4e, 0x8a, 0x5e, 0x5b, 0xa5, 0x5d, 0x94, 0xff, 0x40, 0xed, 0xd9, 0x0f, 0x6a, 0x43, 0xdd, 0x10, }; static const unsigned char hmac_sha3_256_540_msg[] = { 0x1a, 0xc5, 0x25, 0x5a, 0xff, 0x05, 0x28, 0x28, 0xd8, 0xea, 0x21, 0xb3, 0x76, 0xf1, 0xeb, 0xdd, 0x4b, 0xb8, 0x79, 0x94, 0x99, 0x13, 0x90, 0x04, 0x05, 0xae, 0xbc, 0xe8, 0x3e, 0x48, 0xfe, 0xb6, 0x81, 0x3b, 0x5e, 0x9c, 0x89, 0xf9, 0x45, 0x01, 0xa8, 0xad, 0xe4, 0x1b, 0x26, 0xb8, 0x15, 0xc5, 0x21, }; static const unsigned char hmac_sha3_256_540_tag[] = { 0x92, 0x8d, 0x84, 0xf9, 0xce, 0x34, 0xb5, 0xb5, 0xe6, 0xc1, 0xd7, 0x48, 0x6a, 0x36, 0x9f, 0x2d, 0x94, 0x18, 0x66, 0x29, 0xaa, 0xd9, 0x4d, 0x64, 0x4c, 0x16, 0x72, 0x88, 0x63, 0xeb, 0x61, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_256_540 = { .name = "hmac_sha3_256_540", .hash = SHA3_256, .key = hmac_sha3_256_540_key, .keylen = 32, .msg = hmac_sha3_256_540_msg, .msglen = 49, .tag = hmac_sha3_256_540_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 541 for HMAC, tcId is 24 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_541_key[] = { 0x23, 0x20, 0x9b, 0x7c, 0x5a, 0xad, 0xcb, 0xd1, 0x3f, 0x72, 0x79, 0xaf, 0x1a, 0x86, 0xd3, 0xc7, 0xae, 0x8f, 0x17, 0x9d, 0x1b, 0xca, 0xaa, 0xd0, 0xdf, 0xf9, 0xa1, 0x53, 0x02, 0xe7, 0x8d, 0xbf, }; static const unsigned char hmac_sha3_256_541_msg[] = { 0x84, 0xbd, 0xac, 0x37, 0xe1, 0xaf, 0x35, 0xd9, 0x35, 0x64, 0x04, 0xe2, 0x78, 0x7d, 0x47, 0xec, 0xe5, 0x83, 0x48, 0xde, 0xa7, 0x6a, 0x4a, 0x46, 0xe8, 0xaa, 0xde, 0x34, 0x63, 0xd4, 0xdb, 0x8c, 0x94, 0xa0, 0x51, 0xbe, 0x37, 0x33, 0xb3, 0x8d, 0x75, 0x69, 0x84, 0x86, 0x5d, 0x56, 0xc6, 0x0e, 0x80, 0x25, 0xf1, 0x5e, 0x3f, 0x96, 0x8f, 0x09, 0x3e, 0x7f, 0xb7, 0xeb, 0xc7, 0xe3, 0x11, 0x89, 0xc5, 0x69, 0x2d, 0x15, 0xed, 0x42, 0x56, 0x73, 0x7b, 0x9b, 0x18, 0x94, 0xe5, 0x80, 0x95, 0x03, 0xaa, 0xa1, 0xc9, 0x98, 0x3f, 0xb0, 0x96, 0xaa, 0x21, 0x91, 0x63, 0x61, 0xee, 0xb6, 0xef, 0x45, 0x5b, 0x12, 0x97, 0x23, 0xa1, 0xa1, 0xdd, 0xf9, 0xde, 0xdd, 0xea, 0x20, 0x85, 0x29, 0xa6, 0x48, }; static const unsigned char hmac_sha3_256_541_tag[] = { 0x0e, 0x40, 0x8a, 0x88, 0x4c, 0xed, 0xac, 0x6f, 0x01, 0x9d, 0xfc, 0x13, 0x36, 0x4d, 0xca, 0xf4, 0x90, 0xf3, 0xf5, 0x42, 0xb3, 0xd4, 0x79, 0x5e, 0x10, 0xbf, 0x9c, 0x55, 0x64, 0x1e, 0x3b, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_541 = { .name = "hmac_sha3_256_541", .hash = SHA3_256, .key = hmac_sha3_256_541_key, .keylen = 32, .msg = hmac_sha3_256_541_msg, .msglen = 112, .tag = hmac_sha3_256_541_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 542 for HMAC, tcId is 25 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_542_key[] = { 0x7c, 0x9c, 0xc6, 0x67, 0xca, 0xe1, 0x75, 0xf4, 0x48, 0xfa, 0xa9, 0x66, 0x47, 0x31, 0x96, 0x33, 0xb2, 0xd4, 0x85, 0x31, 0x37, 0x3a, 0xe7, 0xd3, 0x16, 0xc4, 0x4d, 0xdd, 0x8b, 0x9f, 0x69, 0xcf, }; static const unsigned char hmac_sha3_256_542_msg[] = { 0x92, 0x33, 0xc1, 0xd7, 0x3b, 0x49, 0x8c, 0x51, 0x06, 0xff, 0x88, 0x95, 0x1e, 0x07, 0xb9, 0x65, 0x2c, 0xb0, 0xdd, 0xae, 0x74, 0x07, 0x37, 0xec, 0x20, 0x5c, 0x98, 0x76, 0xd0, 0x94, 0x97, 0x8b, 0xfc, 0x94, 0x7f, 0x7d, 0xc9, 0x37, 0x11, 0x9f, 0xd6, 0xa9, 0x39, 0x15, 0xb1, 0x9b, 0x62, 0x59, 0x58, 0xa7, 0xa2, 0x23, 0x63, 0xaa, 0x2a, 0xc3, 0x3f, 0xb8, 0x69, 0xed, 0x16, 0xb3, 0x03, 0x33, 0x6a, 0xb7, 0x40, 0xa0, 0x49, 0x8a, 0x2d, 0xf6, 0x6a, 0x65, 0x99, 0xda, 0x71, 0x00, 0x94, 0x48, 0x1a, 0x7b, 0x54, 0x4b, 0xd9, 0x55, 0xb6, 0xf9, 0x71, 0x35, 0xba, 0x46, 0x73, 0x40, 0x1d, 0xb2, 0xdb, 0x14, 0x4a, 0x6e, 0x28, 0x70, 0x41, 0xe4, 0x7a, 0x51, 0xed, 0x9b, 0x6b, 0xa9, 0x56, 0xc1, 0x35, 0x08, 0xc1, 0xc0, 0xc2, 0x53, 0x10, 0x10, 0x52, 0x39, 0xab, 0x73, 0x62, 0x9e, 0x30, }; static const unsigned char hmac_sha3_256_542_tag[] = { 0x85, 0x77, 0xa5, 0x91, 0xc1, 0xcf, 0x20, 0x43, 0x34, 0xbc, 0x3f, 0x45, 0x00, 0x8d, 0xc3, 0x73, 0xd2, 0xc3, 0x66, 0xc8, 0x95, 0x9a, 0x14, 0x4d, 0xb9, 0x68, 0x1b, 0x36, 0x4a, 0x59, 0x1d, 0x54, }; static const wycheproof_hmac_test hmac_sha3_256_542 = { .name = "hmac_sha3_256_542", .hash = SHA3_256, .key = hmac_sha3_256_542_key, .keylen = 32, .msg = hmac_sha3_256_542_msg, .msglen = 127, .tag = hmac_sha3_256_542_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 543 for HMAC, tcId is 26 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_543_key[] = { 0x82, 0x31, 0x45, 0x40, 0x56, 0x4e, 0xa3, 0xce, 0x30, 0x59, 0x1e, 0x97, 0xf6, 0x8b, 0x26, 0x02, 0xde, 0x40, 0xfa, 0x29, 0xf7, 0x73, 0xc2, 0x50, 0x83, 0x27, 0x47, 0x1b, 0x83, 0x48, 0xe8, 0xc4, }; static const unsigned char hmac_sha3_256_543_msg[] = { 0x6a, 0x6d, 0x2f, 0x45, 0xce, 0xbf, 0x27, 0x57, 0xae, 0x16, 0xea, 0x33, 0xc6, 0x86, 0x17, 0x67, 0x1d, 0x77, 0xf8, 0xfd, 0xf8, 0x0b, 0xed, 0x8f, 0xc5, 0xcd, 0xc5, 0xc8, 0xb7, 0x08, 0x6b, 0xd2, 0x8e, 0x7e, 0xb3, 0xee, 0xcc, 0x71, 0x63, 0x49, 0x11, 0x04, 0xe5, 0x30, 0x94, 0x55, 0xe6, 0x7f, 0x83, 0x65, 0x79, 0xb8, 0x2a, 0x1d, 0xa3, 0xbf, 0x59, 0x91, 0xa8, 0xe2, 0xb2, 0xf1, 0x89, 0xa4, 0x9e, 0x05, 0x70, 0x0e, 0x46, 0xc4, 0x09, 0xed, 0x5d, 0xe7, 0x77, 0x80, 0xa5, 0xf3, 0x89, 0xe3, 0xf1, 0x3d, 0xad, 0x40, 0x6c, 0x9d, 0x55, 0x67, 0x53, 0x29, 0xc5, 0xc9, 0x21, 0xf0, 0x70, 0x34, 0x18, 0x09, 0x37, 0xc0, 0xf6, 0xef, 0x34, 0xa2, 0x30, 0x8b, 0x6f, 0xf3, 0xe1, 0xa0, 0xe9, 0xdc, 0x1e, 0xa6, 0x5f, 0x56, 0x32, 0x73, 0x0e, 0x87, 0x44, 0xd1, 0xdb, 0x2c, 0x40, 0xa6, 0x59, 0x5b, }; static const unsigned char hmac_sha3_256_543_tag[] = { 0x77, 0x3a, 0x53, 0x97, 0x01, 0xe5, 0x56, 0x62, 0xfe, 0x11, 0xf0, 0x16, 0x90, 0xb7, 0x0d, 0xac, 0x29, 0x36, 0x6e, 0x55, 0xac, 0x57, 0xc2, 0x51, 0x99, 0x34, 0x39, 0x97, 0x2e, 0xad, 0x7c, 0xe4, }; static const wycheproof_hmac_test hmac_sha3_256_543 = { .name = "hmac_sha3_256_543", .hash = SHA3_256, .key = hmac_sha3_256_543_key, .keylen = 32, .msg = hmac_sha3_256_543_msg, .msglen = 128, .tag = hmac_sha3_256_543_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 544 for HMAC, tcId is 27 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_544_key[] = { 0xd1, 0x15, 0xac, 0xc9, 0xa6, 0x36, 0x91, 0x52, 0x41, 0x79, 0x5f, 0x48, 0x85, 0x20, 0x52, 0xe0, 0x7b, 0x51, 0x27, 0x3a, 0xe2, 0x44, 0x82, 0x51, 0xec, 0x1d, 0x0d, 0x0f, 0x98, 0x07, 0xf3, 0xdb, }; static const unsigned char hmac_sha3_256_544_msg[] = { 0x69, 0x6d, 0x24, 0x56, 0xde, 0x85, 0x3f, 0xa0, 0x28, 0xf4, 0x86, 0xfe, 0xf4, 0x37, 0xb6, 0xb6, 0xd1, 0xb5, 0x30, 0xa8, 0x47, 0x5e, 0x29, 0x9d, 0xb3, 0xa9, 0x00, 0x5a, 0xe9, 0xce, 0xf8, 0x40, 0x19, 0x85, 0xb7, 0xd3, 0x1e, 0x17, 0x2e, 0x8f, 0x43, 0x9c, 0xcd, 0x1a, 0xd1, 0xec, 0x44, 0xc9, 0xb8, 0x6b, 0x78, 0xf3, 0xf2, 0x43, 0xc1, 0x30, 0x5b, 0x53, 0xbc, 0x21, 0xab, 0xad, 0x7a, 0x8f, 0xc5, 0x25, 0x63, 0x11, 0xbf, 0xd3, 0x4c, 0x98, 0xe3, 0x7d, 0xfd, 0xc6, 0x49, 0xe7, 0xae, 0x4b, 0xda, 0x08, 0xcf, 0x29, 0x94, 0xb0, 0x63, 0xc0, 0xc7, 0x10, 0x6e, 0xd0, 0xb0, 0x2a, 0x1f, 0x48, 0xaf, 0x91, 0x91, 0xcb, 0xfb, 0x0d, 0x6a, 0x95, 0x3b, 0x7e, 0x04, 0x32, 0x7d, 0xfe, 0x8c, 0x93, 0x77, 0x9c, 0xb5, 0x74, 0xba, 0x9c, 0xba, 0x57, 0x5d, 0x01, 0x67, 0x4e, 0x83, 0x62, 0x1a, 0xa0, 0xc5, 0xf4, 0x00, 0xd6, 0xe6, 0xcd, 0x24, 0xb3, 0x01, 0xe3, 0x3c, 0x9f, 0x33, 0x03, 0xe7, 0x3b, 0xf3, 0x57, 0x40, 0x8c, 0x1b, 0xe8, 0x6c, 0x24, 0x89, 0xc0, 0x9d, 0xe9, 0x98, 0xff, 0x2e, 0xf3, 0x2d, 0xf5, 0x54, 0xf1, 0x24, 0x7d, 0x93, 0x13, 0xce, 0x1a, 0x71, 0x60, 0x11, 0x5d, 0x06, 0xf4, 0xc1, 0x8d, 0x65, 0x56, 0xff, 0x79, 0x86, 0xef, 0x8a, 0x55, 0xe2, 0xad, 0xcf, 0xa2, 0x7e, 0x4c, 0x69, 0xc7, 0x1c, 0xc2, 0xff, 0x01, 0x63, 0x9e, 0x9d, 0x49, 0xbd, 0x9e, 0xd0, 0x68, 0x7f, 0x53, 0x0f, 0xfe, 0xb0, 0x89, 0x01, 0x32, 0x45, 0x7d, 0xf2, 0x08, 0x80, 0x81, 0xbc, 0x4a, 0x2f, 0x7f, 0x0a, 0x9f, 0x4d, 0xce, 0xa2, 0xc8, 0x0d, 0x99, 0x1d, 0xb7, 0xf3, 0x74, 0x7a, 0x18, 0x03, 0xd7, 0x61, 0x9a, 0xaf, 0x3d, 0xd3, 0x82, 0xc6, 0x95, 0x36, 0xa0, 0xbc, 0xdb, 0x93, 0x1c, 0xbe, }; static const unsigned char hmac_sha3_256_544_tag[] = { 0x2f, 0x2a, 0x86, 0x2b, 0xd0, 0xd9, 0xf3, 0x05, 0x13, 0x56, 0x29, 0x39, 0x6b, 0x05, 0x98, 0x80, 0x54, 0xe0, 0xf5, 0x10, 0x38, 0x83, 0x89, 0x22, 0x71, 0xa2, 0x0b, 0x79, 0x02, 0xe0, 0xcb, 0x86, }; static const wycheproof_hmac_test hmac_sha3_256_544 = { .name = "hmac_sha3_256_544", .hash = SHA3_256, .key = hmac_sha3_256_544_key, .keylen = 32, .msg = hmac_sha3_256_544_msg, .msglen = 255, .tag = hmac_sha3_256_544_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 545 for HMAC, tcId is 28 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_545_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_545_tag[] = { 0x51, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_545 = { .name = "hmac_sha3_256_545", .hash = SHA3_256, .key = hmac_sha3_256_545_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_545_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 546 for HMAC, tcId is 29 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_546_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_546_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_546_tag[] = { 0x0a, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_546 = { .name = "hmac_sha3_256_546", .hash = SHA3_256, .key = hmac_sha3_256_546_key, .keylen = 32, .msg = hmac_sha3_256_546_msg, .msglen = 16, .tag = hmac_sha3_256_546_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 547 for HMAC, tcId is 30 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_547_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_547_tag[] = { 0x52, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_547 = { .name = "hmac_sha3_256_547", .hash = SHA3_256, .key = hmac_sha3_256_547_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_547_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 548 for HMAC, tcId is 31 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_548_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_548_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_548_tag[] = { 0x09, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_548 = { .name = "hmac_sha3_256_548", .hash = SHA3_256, .key = hmac_sha3_256_548_key, .keylen = 32, .msg = hmac_sha3_256_548_msg, .msglen = 16, .tag = hmac_sha3_256_548_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 549 for HMAC, tcId is 32 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_549_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_549_tag[] = { 0xd0, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_549 = { .name = "hmac_sha3_256_549", .hash = SHA3_256, .key = hmac_sha3_256_549_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_549_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 550 for HMAC, tcId is 33 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_550_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_550_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_550_tag[] = { 0x8b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_550 = { .name = "hmac_sha3_256_550", .hash = SHA3_256, .key = hmac_sha3_256_550_key, .keylen = 32, .msg = hmac_sha3_256_550_msg, .msglen = 16, .tag = hmac_sha3_256_550_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 551 for HMAC, tcId is 34 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_551_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_551_tag[] = { 0x50, 0xaa, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_551 = { .name = "hmac_sha3_256_551", .hash = SHA3_256, .key = hmac_sha3_256_551_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_551_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 552 for HMAC, tcId is 35 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_552_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_552_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_552_tag[] = { 0x0b, 0x7b, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_552 = { .name = "hmac_sha3_256_552", .hash = SHA3_256, .key = hmac_sha3_256_552_key, .keylen = 32, .msg = hmac_sha3_256_552_msg, .msglen = 16, .tag = hmac_sha3_256_552_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 553 for HMAC, tcId is 36 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_553_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_553_tag[] = { 0x50, 0xab, 0x16, 0x86, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_553 = { .name = "hmac_sha3_256_553", .hash = SHA3_256, .key = hmac_sha3_256_553_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_553_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 554 for HMAC, tcId is 37 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_554_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_554_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_554_tag[] = { 0x0b, 0x7a, 0xeb, 0x1e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_554 = { .name = "hmac_sha3_256_554", .hash = SHA3_256, .key = hmac_sha3_256_554_key, .keylen = 32, .msg = hmac_sha3_256_554_msg, .msglen = 16, .tag = hmac_sha3_256_554_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 555 for HMAC, tcId is 38 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_555_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_555_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x02, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_555 = { .name = "hmac_sha3_256_555", .hash = SHA3_256, .key = hmac_sha3_256_555_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_555_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 556 for HMAC, tcId is 39 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_556_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_556_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_556_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xaa, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_556 = { .name = "hmac_sha3_256_556", .hash = SHA3_256, .key = hmac_sha3_256_556_key, .keylen = 32, .msg = hmac_sha3_256_556_msg, .msglen = 16, .tag = hmac_sha3_256_556_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 557 for HMAC, tcId is 40 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_557_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_557_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x01, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_557 = { .name = "hmac_sha3_256_557", .hash = SHA3_256, .key = hmac_sha3_256_557_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_557_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 558 for HMAC, tcId is 41 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_558_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_558_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_558_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xa9, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_558 = { .name = "hmac_sha3_256_558", .hash = SHA3_256, .key = hmac_sha3_256_558_key, .keylen = 32, .msg = hmac_sha3_256_558_msg, .msglen = 16, .tag = hmac_sha3_256_558_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 559 for HMAC, tcId is 42 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_559_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_559_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_559 = { .name = "hmac_sha3_256_559", .hash = SHA3_256, .key = hmac_sha3_256_559_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_559_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 560 for HMAC, tcId is 43 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_560_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_560_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_560_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_560 = { .name = "hmac_sha3_256_560", .hash = SHA3_256, .key = hmac_sha3_256_560_key, .keylen = 32, .msg = hmac_sha3_256_560_msg, .msglen = 16, .tag = hmac_sha3_256_560_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 561 for HMAC, tcId is 44 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_561_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_561_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4a, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_561 = { .name = "hmac_sha3_256_561", .hash = SHA3_256, .key = hmac_sha3_256_561_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_561_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 562 for HMAC, tcId is 45 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_562_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_562_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_562_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0c, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_562 = { .name = "hmac_sha3_256_562", .hash = SHA3_256, .key = hmac_sha3_256_562_key, .keylen = 32, .msg = hmac_sha3_256_562_msg, .msglen = 16, .tag = hmac_sha3_256_562_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 563 for HMAC, tcId is 46 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_563_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_563_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0xcb, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_563 = { .name = "hmac_sha3_256_563", .hash = SHA3_256, .key = hmac_sha3_256_563_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_563_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 564 for HMAC, tcId is 47 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_564_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_564_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_564_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x8d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_564 = { .name = "hmac_sha3_256_564", .hash = SHA3_256, .key = hmac_sha3_256_564_key, .keylen = 32, .msg = hmac_sha3_256_564_msg, .msglen = 16, .tag = hmac_sha3_256_564_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 565 for HMAC, tcId is 48 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_565_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_565_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x1b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_565 = { .name = "hmac_sha3_256_565", .hash = SHA3_256, .key = hmac_sha3_256_565_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_565_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 566 for HMAC, tcId is 49 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_566_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_566_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_566_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x5b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_566 = { .name = "hmac_sha3_256_566", .hash = SHA3_256, .key = hmac_sha3_256_566_key, .keylen = 32, .msg = hmac_sha3_256_566_msg, .msglen = 16, .tag = hmac_sha3_256_566_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 567 for HMAC, tcId is 50 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_567_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_567_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4a, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_567 = { .name = "hmac_sha3_256_567", .hash = SHA3_256, .key = hmac_sha3_256_567_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_567_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 568 for HMAC, tcId is 51 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_568_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_568_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_568_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd1, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_568 = { .name = "hmac_sha3_256_568", .hash = SHA3_256, .key = hmac_sha3_256_568_key, .keylen = 32, .msg = hmac_sha3_256_568_msg, .msglen = 16, .tag = hmac_sha3_256_568_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 569 for HMAC, tcId is 52 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_569_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_569_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa2, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_569 = { .name = "hmac_sha3_256_569", .hash = SHA3_256, .key = hmac_sha3_256_569_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_569_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 570 for HMAC, tcId is 53 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_570_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_570_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_570_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x26, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_570 = { .name = "hmac_sha3_256_570", .hash = SHA3_256, .key = hmac_sha3_256_570_key, .keylen = 32, .msg = hmac_sha3_256_570_msg, .msglen = 16, .tag = hmac_sha3_256_570_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 571 for HMAC, tcId is 54 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_571_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_571_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa1, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_571 = { .name = "hmac_sha3_256_571", .hash = SHA3_256, .key = hmac_sha3_256_571_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_571_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 572 for HMAC, tcId is 55 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_572_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_572_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_572_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x25, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_572 = { .name = "hmac_sha3_256_572", .hash = SHA3_256, .key = hmac_sha3_256_572_key, .keylen = 32, .msg = hmac_sha3_256_572_msg, .msglen = 16, .tag = hmac_sha3_256_572_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 573 for HMAC, tcId is 56 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_573_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_573_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0x23, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_573 = { .name = "hmac_sha3_256_573", .hash = SHA3_256, .key = hmac_sha3_256_573_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_573_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 574 for HMAC, tcId is 57 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_574_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_574_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_574_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0xa7, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_574 = { .name = "hmac_sha3_256_574", .hash = SHA3_256, .key = hmac_sha3_256_574_key, .keylen = 32, .msg = hmac_sha3_256_574_msg, .msglen = 16, .tag = hmac_sha3_256_574_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 575 for HMAC, tcId is 58 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_575_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_575_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc0, }; static const wycheproof_hmac_test hmac_sha3_256_575 = { .name = "hmac_sha3_256_575", .hash = SHA3_256, .key = hmac_sha3_256_575_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_575_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 58 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 576 for HMAC, tcId is 59 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_576_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_576_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_576_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xec, }; static const wycheproof_hmac_test hmac_sha3_256_576 = { .name = "hmac_sha3_256_576", .hash = SHA3_256, .key = hmac_sha3_256_576_key, .keylen = 32, .msg = hmac_sha3_256_576_msg, .msglen = 16, .tag = hmac_sha3_256_576_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 59 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 577 for HMAC, tcId is 60 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_577_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_577_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc3, }; static const wycheproof_hmac_test hmac_sha3_256_577 = { .name = "hmac_sha3_256_577", .hash = SHA3_256, .key = hmac_sha3_256_577_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_577_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 60 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 578 for HMAC, tcId is 61 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_578_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_578_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_578_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xef, }; static const wycheproof_hmac_test hmac_sha3_256_578 = { .name = "hmac_sha3_256_578", .hash = SHA3_256, .key = hmac_sha3_256_578_key, .keylen = 32, .msg = hmac_sha3_256_578_msg, .msglen = 16, .tag = hmac_sha3_256_578_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 61 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 579 for HMAC, tcId is 62 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_579_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_579_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0x81, }; static const wycheproof_hmac_test hmac_sha3_256_579 = { .name = "hmac_sha3_256_579", .hash = SHA3_256, .key = hmac_sha3_256_579_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_579_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 62 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 580 for HMAC, tcId is 63 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_580_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_580_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_580_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xad, }; static const wycheproof_hmac_test hmac_sha3_256_580 = { .name = "hmac_sha3_256_580", .hash = SHA3_256, .key = hmac_sha3_256_580_key, .keylen = 32, .msg = hmac_sha3_256_580_msg, .msglen = 16, .tag = hmac_sha3_256_580_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 63 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 581 for HMAC, tcId is 64 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_581_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_581_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0x41, }; static const wycheproof_hmac_test hmac_sha3_256_581 = { .name = "hmac_sha3_256_581", .hash = SHA3_256, .key = hmac_sha3_256_581_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_581_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 64 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 582 for HMAC, tcId is 65 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_582_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_582_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_582_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0x6d, }; static const wycheproof_hmac_test hmac_sha3_256_582 = { .name = "hmac_sha3_256_582", .hash = SHA3_256, .key = hmac_sha3_256_582_key, .keylen = 32, .msg = hmac_sha3_256_582_msg, .msglen = 16, .tag = hmac_sha3_256_582_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 65 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 583 for HMAC, tcId is 66 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_583_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_583_tag[] = { 0x51, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4a, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_583 = { .name = "hmac_sha3_256_583", .hash = SHA3_256, .key = hmac_sha3_256_583_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_583_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 584 for HMAC, tcId is 67 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_584_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_584_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_584_tag[] = { 0x0a, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0c, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_584 = { .name = "hmac_sha3_256_584", .hash = SHA3_256, .key = hmac_sha3_256_584_key, .keylen = 32, .msg = hmac_sha3_256_584_msg, .msglen = 16, .tag = hmac_sha3_256_584_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 585 for HMAC, tcId is 68 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_585_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_585_tag[] = { 0x50, 0xab, 0x16, 0x86, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_585 = { .name = "hmac_sha3_256_585", .hash = SHA3_256, .key = hmac_sha3_256_585_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_585_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 586 for HMAC, tcId is 69 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_586_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_586_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_586_tag[] = { 0x0b, 0x7a, 0xeb, 0x1e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_586 = { .name = "hmac_sha3_256_586", .hash = SHA3_256, .key = hmac_sha3_256_586_key, .keylen = 32, .msg = hmac_sha3_256_586_msg, .msglen = 16, .tag = hmac_sha3_256_586_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 587 for HMAC, tcId is 70 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_587_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_587_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0xae, 0x40, 0xac, 0x85, 0xe4, 0x55, 0xcd, 0xfe, 0xed, 0x4c, 0xac, 0x90, 0x2a, 0x7b, 0x8c, 0xcf, 0xc1, }; static const wycheproof_hmac_test hmac_sha3_256_587 = { .name = "hmac_sha3_256_587", .hash = SHA3_256, .key = hmac_sha3_256_587_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_587_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 588 for HMAC, tcId is 71 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_588_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_588_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_588_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0xca, 0x56, 0x14, 0x4e, 0x2a, 0x0f, 0xc0, 0xb9, 0x79, 0xd0, 0x90, 0xc1, 0x84, 0x6c, 0x14, 0xb3, 0xed, }; static const wycheproof_hmac_test hmac_sha3_256_588 = { .name = "hmac_sha3_256_588", .hash = SHA3_256, .key = hmac_sha3_256_588_key, .keylen = 32, .msg = hmac_sha3_256_588_msg, .msglen = 16, .tag = hmac_sha3_256_588_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 589 for HMAC, tcId is 72 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_589_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_589_tag[] = { 0xaf, 0x54, 0xe9, 0xf9, 0xfc, 0xbc, 0x7c, 0x01, 0xb4, 0xc4, 0xb4, 0x3f, 0x5c, 0xbe, 0x57, 0xd1, 0xbf, 0x53, 0x7a, 0x1b, 0xaa, 0x32, 0x01, 0x12, 0xb3, 0x53, 0x6f, 0xd5, 0x84, 0x73, 0x30, 0x3e, }; static const wycheproof_hmac_test hmac_sha3_256_589 = { .name = "hmac_sha3_256_589", .hash = SHA3_256, .key = hmac_sha3_256_589_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_589_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 590 for HMAC, tcId is 73 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_590_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_590_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_590_tag[] = { 0xf4, 0x85, 0x14, 0x61, 0x54, 0x64, 0xa8, 0x57, 0xf2, 0x84, 0x2f, 0x15, 0xd8, 0xd9, 0xc6, 0xb5, 0xa9, 0xeb, 0xb1, 0xd5, 0xf0, 0x3f, 0x46, 0x86, 0x2f, 0x6f, 0x3e, 0x7b, 0x93, 0xeb, 0x4c, 0x12, }; static const wycheproof_hmac_test hmac_sha3_256_590 = { .name = "hmac_sha3_256_590", .hash = SHA3_256, .key = hmac_sha3_256_590_key, .keylen = 32, .msg = hmac_sha3_256_590_msg, .msglen = 16, .tag = hmac_sha3_256_590_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 591 for HMAC, tcId is 74 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_591_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_591_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_256_591 = { .name = "hmac_sha3_256_591", .hash = SHA3_256, .key = hmac_sha3_256_591_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_591_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 592 for HMAC, tcId is 75 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_592_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_592_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_592_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_256_592 = { .name = "hmac_sha3_256_592", .hash = SHA3_256, .key = hmac_sha3_256_592_key, .keylen = 32, .msg = hmac_sha3_256_592_msg, .msglen = 16, .tag = hmac_sha3_256_592_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 593 for HMAC, tcId is 76 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_593_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_593_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_256_593 = { .name = "hmac_sha3_256_593", .hash = SHA3_256, .key = hmac_sha3_256_593_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_593_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 594 for HMAC, tcId is 77 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_594_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_594_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_594_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_256_594 = { .name = "hmac_sha3_256_594", .hash = SHA3_256, .key = hmac_sha3_256_594_key, .keylen = 32, .msg = hmac_sha3_256_594_msg, .msglen = 16, .tag = hmac_sha3_256_594_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 595 for HMAC, tcId is 78 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_595_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_595_tag[] = { 0xd0, 0x2b, 0x96, 0x86, 0x83, 0xc3, 0x03, 0x7e, 0xcb, 0xbb, 0xcb, 0x40, 0x23, 0xc1, 0x28, 0xae, 0xc0, 0x2c, 0x05, 0x64, 0xd5, 0x4d, 0x7e, 0x6d, 0xcc, 0x2c, 0x10, 0xaa, 0xfb, 0x0c, 0x4f, 0x41, }; static const wycheproof_hmac_test hmac_sha3_256_595 = { .name = "hmac_sha3_256_595", .hash = SHA3_256, .key = hmac_sha3_256_595_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_595_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 596 for HMAC, tcId is 79 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_596_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_596_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_596_tag[] = { 0x8b, 0xfa, 0x6b, 0x1e, 0x2b, 0x1b, 0xd7, 0x28, 0x8d, 0xfb, 0x50, 0x6a, 0xa7, 0xa6, 0xb9, 0xca, 0xd6, 0x94, 0xce, 0xaa, 0x8f, 0x40, 0x39, 0xf9, 0x50, 0x10, 0x41, 0x04, 0xec, 0x94, 0x33, 0x6d, }; static const wycheproof_hmac_test hmac_sha3_256_596 = { .name = "hmac_sha3_256_596", .hash = SHA3_256, .key = hmac_sha3_256_596_key, .keylen = 32, .msg = hmac_sha3_256_596_msg, .msglen = 16, .tag = hmac_sha3_256_596_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 597 for HMAC, tcId is 80 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_597_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_597_tag[] = { 0x51, 0xaa, 0x17, 0x07, 0x02, 0x42, 0x82, 0xff, 0x4a, 0x3a, 0x4a, 0xc1, 0xa2, 0x40, 0xa9, 0x2f, 0x41, 0xad, 0x84, 0xe5, 0x54, 0xcc, 0xff, 0xec, 0x4d, 0xad, 0x91, 0x2b, 0x7a, 0x8d, 0xce, 0xc0, }; static const wycheproof_hmac_test hmac_sha3_256_597 = { .name = "hmac_sha3_256_597", .hash = SHA3_256, .key = hmac_sha3_256_597_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_597_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 598 for HMAC, tcId is 81 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_598_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_598_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_598_tag[] = { 0x0a, 0x7b, 0xea, 0x9f, 0xaa, 0x9a, 0x56, 0xa9, 0x0c, 0x7a, 0xd1, 0xeb, 0x26, 0x27, 0x38, 0x4b, 0x57, 0x15, 0x4f, 0x2b, 0x0e, 0xc1, 0xb8, 0x78, 0xd1, 0x91, 0xc0, 0x85, 0x6d, 0x15, 0xb2, 0xec, }; static const wycheproof_hmac_test hmac_sha3_256_598 = { .name = "hmac_sha3_256_598", .hash = SHA3_256, .key = hmac_sha3_256_598_key, .keylen = 32, .msg = hmac_sha3_256_598_msg, .msglen = 16, .tag = hmac_sha3_256_598_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 599 for HMAC, tcId is 82 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_599_key[] = { 0x7b, 0xf9, 0xe5, 0x36, 0xb6, 0x6a, 0x21, 0x5c, 0x22, 0x23, 0x3f, 0xe2, 0xda, 0xaa, 0x74, 0x3a, 0x89, 0x8b, 0x9a, 0xcb, 0x9f, 0x78, 0x02, 0xde, 0x70, 0xb4, 0x0e, 0x3d, 0x6e, 0x43, 0xef, 0x97, }; static const unsigned char hmac_sha3_256_599_tag[] = { 0xd0, 0x87, 0x79, 0x0a, 0xfa, 0xb2, 0x54, 0x77, 0x45, 0x6d, 0x37, 0x9c, 0xab, 0x16, 0x39, 0xd1, }; static const wycheproof_hmac_test hmac_sha3_256_599 = { .name = "hmac_sha3_256_599", .hash = SHA3_256, .key = hmac_sha3_256_599_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_599_tag, .taglen = 16, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 600 for HMAC, tcId is 83 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_600_key[] = { 0xe7, 0x54, 0x07, 0x6c, 0xea, 0xb3, 0xfd, 0xaf, 0x4f, 0x9b, 0xca, 0xb7, 0xd4, 0xf0, 0xdf, 0x0c, 0xbb, 0xaf, 0xbc, 0x87, 0x73, 0x1b, 0x8f, 0x9b, 0x7c, 0xd2, 0x16, 0x64, 0x72, 0xe8, 0xee, 0xbc, }; static const unsigned char hmac_sha3_256_600_msg[] = { 0x40, }; static const unsigned char hmac_sha3_256_600_tag[] = { 0x9b, 0xd4, 0x53, 0x1b, 0x76, 0x93, 0x3c, 0x92, 0x67, 0xd5, 0xdd, 0x0e, 0xe9, 0xbc, 0x81, 0xb9, }; static const wycheproof_hmac_test hmac_sha3_256_600 = { .name = "hmac_sha3_256_600", .hash = SHA3_256, .key = hmac_sha3_256_600_key, .keylen = 32, .msg = hmac_sha3_256_600_msg, .msglen = 1, .tag = hmac_sha3_256_600_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 601 for HMAC, tcId is 84 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_601_key[] = { 0xea, 0x3b, 0x01, 0x6b, 0xdd, 0x38, 0x7d, 0xd6, 0x4d, 0x83, 0x7c, 0x71, 0x68, 0x38, 0x08, 0xf3, 0x35, 0xdb, 0xdc, 0x53, 0x59, 0x8a, 0x4e, 0xa8, 0xc5, 0xf9, 0x52, 0x47, 0x3f, 0xaf, 0xaf, 0x5f, }; static const unsigned char hmac_sha3_256_601_msg[] = { 0x66, 0x01, }; static const unsigned char hmac_sha3_256_601_tag[] = { 0x79, 0x96, 0x5f, 0x48, 0x4f, 0xff, 0x83, 0x50, 0xdd, 0xf0, 0xfc, 0xb0, 0xcc, 0x51, 0x3f, 0x13, }; static const wycheproof_hmac_test hmac_sha3_256_601 = { .name = "hmac_sha3_256_601", .hash = SHA3_256, .key = hmac_sha3_256_601_key, .keylen = 32, .msg = hmac_sha3_256_601_msg, .msglen = 2, .tag = hmac_sha3_256_601_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 602 for HMAC, tcId is 85 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_602_key[] = { 0x73, 0xd4, 0x70, 0x96, 0x37, 0x85, 0x7d, 0xaf, 0xab, 0x6a, 0xd8, 0xb2, 0xb0, 0xa5, 0x1b, 0x06, 0x52, 0x47, 0x17, 0xfe, 0xdf, 0x10, 0x02, 0x96, 0x64, 0x4f, 0x7c, 0xfd, 0xaa, 0xe1, 0x80, 0x5b, }; static const unsigned char hmac_sha3_256_602_msg[] = { 0xf1, 0xd3, 0x00, }; static const unsigned char hmac_sha3_256_602_tag[] = { 0x37, 0x74, 0x7e, 0xc7, 0x7e, 0x78, 0x44, 0xa8, 0x1c, 0x33, 0x55, 0xf9, 0xc2, 0xf7, 0x28, 0x75, }; static const wycheproof_hmac_test hmac_sha3_256_602 = { .name = "hmac_sha3_256_602", .hash = SHA3_256, .key = hmac_sha3_256_602_key, .keylen = 32, .msg = hmac_sha3_256_602_msg, .msglen = 3, .tag = hmac_sha3_256_602_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 603 for HMAC, tcId is 86 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_603_key[] = { 0xd5, 0xc8, 0x1b, 0x39, 0x9d, 0x4c, 0x0d, 0x15, 0x83, 0xa1, 0x3d, 0xa5, 0x6d, 0xe6, 0xd2, 0xdc, 0x45, 0xa6, 0x6e, 0x7b, 0x47, 0xc2, 0x4a, 0xb1, 0x19, 0x2e, 0x24, 0x6d, 0xc9, 0x61, 0xdd, 0x77, }; static const unsigned char hmac_sha3_256_603_msg[] = { 0x2a, 0xe6, 0x3c, 0xbf, }; static const unsigned char hmac_sha3_256_603_tag[] = { 0xad, 0x6d, 0x16, 0x27, 0xd7, 0xa1, 0xf6, 0x7b, 0x85, 0x53, 0x81, 0xda, 0x44, 0xfd, 0x4e, 0xc3, }; static const wycheproof_hmac_test hmac_sha3_256_603 = { .name = "hmac_sha3_256_603", .hash = SHA3_256, .key = hmac_sha3_256_603_key, .keylen = 32, .msg = hmac_sha3_256_603_msg, .msglen = 4, .tag = hmac_sha3_256_603_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 604 for HMAC, tcId is 87 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_604_key[] = { 0x25, 0x21, 0x20, 0x3f, 0xa0, 0xdd, 0xdf, 0x59, 0xd8, 0x37, 0xb2, 0x83, 0x0f, 0x87, 0xb1, 0xaa, 0x61, 0xf9, 0x58, 0x15, 0x5d, 0xf3, 0xca, 0x4d, 0x1d, 0xf2, 0x45, 0x7c, 0xb4, 0x28, 0x4d, 0xc8, }; static const unsigned char hmac_sha3_256_604_msg[] = { 0xaf, 0x3a, 0x01, 0x5e, 0xa1, }; static const unsigned char hmac_sha3_256_604_tag[] = { 0x0f, 0xca, 0x22, 0x84, 0xa5, 0xd3, 0x34, 0x6c, 0xbf, 0x9b, 0x98, 0xa6, 0x58, 0x22, 0xa8, 0xa7, }; static const wycheproof_hmac_test hmac_sha3_256_604 = { .name = "hmac_sha3_256_604", .hash = SHA3_256, .key = hmac_sha3_256_604_key, .keylen = 32, .msg = hmac_sha3_256_604_msg, .msglen = 5, .tag = hmac_sha3_256_604_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 605 for HMAC, tcId is 88 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_605_key[] = { 0x66, 0x5a, 0x02, 0xbc, 0x26, 0x5a, 0x66, 0xd0, 0x17, 0x75, 0x09, 0x1d, 0xa5, 0x67, 0x26, 0xb6, 0x66, 0x8b, 0xfd, 0x90, 0x3c, 0xb7, 0xaf, 0x66, 0xfb, 0x1b, 0x78, 0xa8, 0xa0, 0x62, 0xe4, 0x3c, }; static const unsigned char hmac_sha3_256_605_msg[] = { 0x3f, 0x56, 0x93, 0x5d, 0xef, 0x3f, }; static const unsigned char hmac_sha3_256_605_tag[] = { 0x8c, 0xd8, 0x7f, 0x6a, 0xe1, 0x61, 0x4e, 0x4a, 0x73, 0x1d, 0x52, 0xad, 0x0d, 0x87, 0x74, 0x42, }; static const wycheproof_hmac_test hmac_sha3_256_605 = { .name = "hmac_sha3_256_605", .hash = SHA3_256, .key = hmac_sha3_256_605_key, .keylen = 32, .msg = hmac_sha3_256_605_msg, .msglen = 6, .tag = hmac_sha3_256_605_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 606 for HMAC, tcId is 89 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_606_key[] = { 0xfa, 0xcd, 0x75, 0xb2, 0x22, 0x21, 0x38, 0x00, 0x47, 0x30, 0x5b, 0xc9, 0x81, 0xf5, 0x70, 0xe2, 0xa1, 0xaf, 0x38, 0x92, 0x8e, 0xa7, 0xe2, 0x05, 0x9e, 0x3a, 0xf5, 0xfc, 0x6b, 0x82, 0xb4, 0x93, }; static const unsigned char hmac_sha3_256_606_msg[] = { 0x57, 0xbb, 0x86, 0xbe, 0xed, 0x15, 0x6f, }; static const unsigned char hmac_sha3_256_606_tag[] = { 0x73, 0x94, 0x1b, 0x79, 0xcb, 0x7c, 0x9f, 0x0c, 0x7b, 0x71, 0x1b, 0xb9, 0x44, 0x41, 0xb4, 0x32, }; static const wycheproof_hmac_test hmac_sha3_256_606 = { .name = "hmac_sha3_256_606", .hash = SHA3_256, .key = hmac_sha3_256_606_key, .keylen = 32, .msg = hmac_sha3_256_606_msg, .msglen = 7, .tag = hmac_sha3_256_606_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 607 for HMAC, tcId is 90 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_607_key[] = { 0x50, 0x5a, 0xa9, 0x88, 0x19, 0x80, 0x9e, 0xf6, 0x3b, 0x9a, 0x36, 0x8a, 0x1e, 0x8b, 0xc2, 0xe9, 0x22, 0xda, 0x45, 0xb0, 0x3c, 0xe0, 0x2d, 0x9a, 0x79, 0x66, 0xb1, 0x50, 0x06, 0xdb, 0xa2, 0xd5, }; static const unsigned char hmac_sha3_256_607_msg[] = { 0x2e, 0x4e, 0x7e, 0xf7, 0x28, 0xfe, 0x11, 0xaf, }; static const unsigned char hmac_sha3_256_607_tag[] = { 0x5c, 0xf2, 0xb0, 0x4f, 0xe3, 0xaf, 0x8d, 0x26, 0x94, 0xba, 0x4e, 0x61, 0x43, 0x67, 0xc0, 0x8a, }; static const wycheproof_hmac_test hmac_sha3_256_607 = { .name = "hmac_sha3_256_607", .hash = SHA3_256, .key = hmac_sha3_256_607_key, .keylen = 32, .msg = hmac_sha3_256_607_msg, .msglen = 8, .tag = hmac_sha3_256_607_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 608 for HMAC, tcId is 91 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_608_key[] = { 0xf9, 0x42, 0x09, 0x38, 0x42, 0x80, 0x8b, 0xa4, 0x7f, 0x64, 0xe4, 0x27, 0xf7, 0x35, 0x1d, 0xde, 0x6b, 0x95, 0x46, 0xe6, 0x6d, 0xe4, 0xe7, 0xd6, 0x0a, 0xa6, 0xf3, 0x28, 0x18, 0x27, 0x12, 0xcf, }; static const unsigned char hmac_sha3_256_608_msg[] = { 0x85, 0x2a, 0x21, 0xd9, 0x28, 0x48, 0xe6, 0x27, 0xc7, }; static const unsigned char hmac_sha3_256_608_tag[] = { 0x3e, 0x06, 0xab, 0x8a, 0xb0, 0x1f, 0xff, 0xb6, 0x58, 0x65, 0xa7, 0xe8, 0xa1, 0x23, 0xb3, 0x74, }; static const wycheproof_hmac_test hmac_sha3_256_608 = { .name = "hmac_sha3_256_608", .hash = SHA3_256, .key = hmac_sha3_256_608_key, .keylen = 32, .msg = hmac_sha3_256_608_msg, .msglen = 9, .tag = hmac_sha3_256_608_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 609 for HMAC, tcId is 92 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_609_key[] = { 0x64, 0xbe, 0x16, 0x2b, 0x39, 0xc6, 0xe5, 0xf1, 0xfe, 0xd9, 0xc3, 0x2d, 0x9f, 0x67, 0x4d, 0x9a, 0x8c, 0xde, 0x6e, 0xaa, 0x24, 0x43, 0x21, 0x4d, 0x86, 0xbd, 0x4a, 0x1f, 0xb5, 0x3b, 0x81, 0xb4, }; static const unsigned char hmac_sha3_256_609_msg[] = { 0x19, 0x5a, 0x3b, 0x29, 0x2f, 0x93, 0xba, 0xff, 0x0a, 0x2c, }; static const unsigned char hmac_sha3_256_609_tag[] = { 0x80, 0xcb, 0x2a, 0xb4, 0xe5, 0x7e, 0xc5, 0x51, 0xfd, 0x73, 0xa3, 0xfc, 0xbc, 0x62, 0x25, 0x38, }; static const wycheproof_hmac_test hmac_sha3_256_609 = { .name = "hmac_sha3_256_609", .hash = SHA3_256, .key = hmac_sha3_256_609_key, .keylen = 32, .msg = hmac_sha3_256_609_msg, .msglen = 10, .tag = hmac_sha3_256_609_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 610 for HMAC, tcId is 93 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_610_key[] = { 0xb2, 0x59, 0xa5, 0x55, 0xd4, 0x4b, 0x8a, 0x20, 0xc5, 0x48, 0x9e, 0x2f, 0x38, 0x39, 0x2d, 0xda, 0xa6, 0xbe, 0x9e, 0x35, 0xb9, 0x83, 0x3b, 0x67, 0xe1, 0xb5, 0xfd, 0xf6, 0xcb, 0x3e, 0x4c, 0x6c, }; static const unsigned char hmac_sha3_256_610_msg[] = { 0xaf, 0xd7, 0x31, 0x17, 0x33, 0x0c, 0x6e, 0x85, 0x28, 0xa6, 0xe4, }; static const unsigned char hmac_sha3_256_610_tag[] = { 0x71, 0xce, 0xb6, 0xdd, 0x3c, 0xcf, 0x0c, 0x96, 0xb1, 0x5a, 0xe4, 0x2b, 0x43, 0x2c, 0x1d, 0x83, }; static const wycheproof_hmac_test hmac_sha3_256_610 = { .name = "hmac_sha3_256_610", .hash = SHA3_256, .key = hmac_sha3_256_610_key, .keylen = 32, .msg = hmac_sha3_256_610_msg, .msglen = 11, .tag = hmac_sha3_256_610_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 611 for HMAC, tcId is 94 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_611_key[] = { 0x2c, 0x6f, 0xc6, 0x2d, 0xaa, 0x77, 0xba, 0x8c, 0x68, 0x81, 0xb3, 0xdd, 0x69, 0x89, 0x89, 0x8f, 0xef, 0x64, 0x66, 0x63, 0xcc, 0x7b, 0x0a, 0x3d, 0xb8, 0x22, 0x8a, 0x70, 0x7b, 0x85, 0xf2, 0xdc, }; static const unsigned char hmac_sha3_256_611_msg[] = { 0x0f, 0xf5, 0x4d, 0x6b, 0x67, 0x59, 0x12, 0x0c, 0x2e, 0x8a, 0x51, 0xe3, }; static const unsigned char hmac_sha3_256_611_tag[] = { 0xef, 0x5e, 0x5e, 0x4a, 0x95, 0x8e, 0x78, 0x20, 0xb1, 0x3f, 0xce, 0x3d, 0x18, 0x1f, 0x2a, 0x76, }; static const wycheproof_hmac_test hmac_sha3_256_611 = { .name = "hmac_sha3_256_611", .hash = SHA3_256, .key = hmac_sha3_256_611_key, .keylen = 32, .msg = hmac_sha3_256_611_msg, .msglen = 12, .tag = hmac_sha3_256_611_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 612 for HMAC, tcId is 95 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_612_key[] = { 0xab, 0xab, 0x81, 0x5d, 0x51, 0xdf, 0x29, 0xf7, 0x40, 0xe4, 0xe2, 0x07, 0x9f, 0xb7, 0x98, 0xe0, 0x15, 0x28, 0x36, 0xe6, 0xab, 0x57, 0xd1, 0x53, 0x6a, 0xe8, 0x92, 0x9e, 0x52, 0xc0, 0x6e, 0xb8, }; static const unsigned char hmac_sha3_256_612_msg[] = { 0xf0, 0x05, 0x8d, 0x41, 0x2a, 0x10, 0x4e, 0x53, 0xd8, 0x20, 0xb9, 0x5a, 0x7f, }; static const unsigned char hmac_sha3_256_612_tag[] = { 0xd5, 0x6c, 0xba, 0xf3, 0xae, 0xe9, 0x31, 0x0f, 0x66, 0x08, 0x3f, 0x24, 0x2a, 0x37, 0xaf, 0xfe, }; static const wycheproof_hmac_test hmac_sha3_256_612 = { .name = "hmac_sha3_256_612", .hash = SHA3_256, .key = hmac_sha3_256_612_key, .keylen = 32, .msg = hmac_sha3_256_612_msg, .msglen = 13, .tag = hmac_sha3_256_612_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 613 for HMAC, tcId is 96 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_613_key[] = { 0x3d, 0x5d, 0xa1, 0xaf, 0x83, 0xf7, 0x28, 0x74, 0x58, 0xbf, 0xf7, 0xa7, 0x65, 0x1e, 0xa5, 0xd8, 0xdb, 0x72, 0x25, 0x94, 0x01, 0x33, 0x3f, 0x6b, 0x82, 0x09, 0x69, 0x96, 0xdd, 0x7e, 0xaf, 0x19, }; static const unsigned char hmac_sha3_256_613_msg[] = { 0xaa, 0xcc, 0x36, 0x97, 0x2f, 0x18, 0x30, 0x57, 0x91, 0x9f, 0xf5, 0x7b, 0x49, 0xe1, }; static const unsigned char hmac_sha3_256_613_tag[] = { 0x65, 0x20, 0xb4, 0x9b, 0x8a, 0x11, 0xab, 0xdb, 0xe5, 0xac, 0x46, 0xf4, 0xec, 0x00, 0xff, 0xbc, }; static const wycheproof_hmac_test hmac_sha3_256_613 = { .name = "hmac_sha3_256_613", .hash = SHA3_256, .key = hmac_sha3_256_613_key, .keylen = 32, .msg = hmac_sha3_256_613_msg, .msglen = 14, .tag = hmac_sha3_256_613_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 614 for HMAC, tcId is 97 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_614_key[] = { 0xc1, 0x9b, 0xdf, 0x31, 0x4c, 0x6c, 0xf6, 0x43, 0x81, 0x42, 0x54, 0x67, 0xf4, 0x2a, 0xef, 0xa1, 0x7c, 0x1c, 0xc9, 0x35, 0x8b, 0xe1, 0x6c, 0xe3, 0x1b, 0x1d, 0x21, 0x48, 0x59, 0xce, 0x86, 0xaa, }; static const unsigned char hmac_sha3_256_614_msg[] = { 0x5d, 0x06, 0x6a, 0x92, 0xc3, 0x00, 0xe9, 0xb6, 0xdd, 0xd6, 0x3a, 0x7c, 0x13, 0xae, 0x33, }; static const unsigned char hmac_sha3_256_614_tag[] = { 0x3f, 0x14, 0xe6, 0xb5, 0x5d, 0x26, 0x91, 0xa6, 0x04, 0x8b, 0x70, 0xba, 0xb7, 0xce, 0xad, 0xa6, }; static const wycheproof_hmac_test hmac_sha3_256_614 = { .name = "hmac_sha3_256_614", .hash = SHA3_256, .key = hmac_sha3_256_614_key, .keylen = 32, .msg = hmac_sha3_256_614_msg, .msglen = 15, .tag = hmac_sha3_256_614_tag, .taglen = 16, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 615 for HMAC, tcId is 98 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_615_key[] = { 0x61, 0x2e, 0x83, 0x78, 0x43, 0xce, 0xae, 0x7f, 0x61, 0xd4, 0x96, 0x25, 0xfa, 0xa7, 0xe7, 0x49, 0x4f, 0x92, 0x53, 0xe2, 0x0c, 0xb3, 0xad, 0xce, 0xa6, 0x86, 0x51, 0x2b, 0x04, 0x39, 0x36, 0xcd, }; static const unsigned char hmac_sha3_256_615_msg[] = { 0xcc, 0x37, 0xfa, 0xe1, 0x5f, 0x74, 0x5a, 0x2f, 0x40, 0xe2, 0xc8, 0xb1, 0x92, 0xf2, 0xb3, 0x8d, }; static const unsigned char hmac_sha3_256_615_tag[] = { 0x22, 0xf4, 0x8f, 0x86, 0x68, 0xf5, 0xc2, 0x50, 0x53, 0x15, 0xf0, 0xb5, 0x25, 0xcf, 0x4f, 0x95, }; static const wycheproof_hmac_test hmac_sha3_256_615 = { .name = "hmac_sha3_256_615", .hash = SHA3_256, .key = hmac_sha3_256_615_key, .keylen = 32, .msg = hmac_sha3_256_615_msg, .msglen = 16, .tag = hmac_sha3_256_615_tag, .taglen = 16, .result = 1, .comment = ", tcId is 98 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 616 for HMAC, tcId is 99 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_616_key[] = { 0x73, 0x21, 0x6f, 0xaf, 0xd0, 0x02, 0x2d, 0x0d, 0x6e, 0xe2, 0x71, 0x98, 0xb2, 0x27, 0x25, 0x78, 0xfa, 0x8f, 0x04, 0xdd, 0x9f, 0x44, 0x46, 0x7f, 0xbb, 0x64, 0x37, 0xaa, 0x45, 0x64, 0x1b, 0xf7, }; static const unsigned char hmac_sha3_256_616_msg[] = { 0xd5, 0x24, 0x7b, 0x8f, 0x6c, 0x3e, 0xdc, 0xbf, 0xb1, 0xd5, 0x91, 0xd1, 0x3e, 0xce, 0x23, 0xd2, 0xf5, }; static const unsigned char hmac_sha3_256_616_tag[] = { 0x31, 0xa2, 0xa0, 0x37, 0x23, 0xc5, 0x1e, 0x04, 0x61, 0x1a, 0xb0, 0x9d, 0x47, 0xbf, 0x25, 0x98, }; static const wycheproof_hmac_test hmac_sha3_256_616 = { .name = "hmac_sha3_256_616", .hash = SHA3_256, .key = hmac_sha3_256_616_key, .keylen = 32, .msg = hmac_sha3_256_616_msg, .msglen = 17, .tag = hmac_sha3_256_616_tag, .taglen = 16, .result = 1, .comment = ", tcId is 99 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 617 for HMAC, tcId is 100 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_617_key[] = { 0x04, 0x27, 0xa7, 0x0e, 0x25, 0x75, 0x28, 0xf3, 0xab, 0x70, 0x64, 0x0b, 0xba, 0x1a, 0x5d, 0xe1, 0x2c, 0xf3, 0x88, 0x5d, 0xd4, 0xc8, 0xe2, 0x84, 0xfb, 0xbb, 0x55, 0xfe, 0xb3, 0x52, 0x94, 0xa5, }; static const unsigned char hmac_sha3_256_617_msg[] = { 0x13, 0x93, 0x7f, 0x85, 0x44, 0xf4, 0x42, 0x70, 0xd0, 0x11, 0x75, 0xa0, 0x11, 0xf7, 0x67, 0x0e, 0x93, 0xfa, 0x6b, 0xa7, 0xef, 0x02, 0x33, 0x6e, }; static const unsigned char hmac_sha3_256_617_tag[] = { 0xed, 0x65, 0x1a, 0x97, 0x78, 0x54, 0xfb, 0x5c, 0xc5, 0x77, 0xab, 0x7d, 0xb7, 0xb5, 0x67, 0xaf, }; static const wycheproof_hmac_test hmac_sha3_256_617 = { .name = "hmac_sha3_256_617", .hash = SHA3_256, .key = hmac_sha3_256_617_key, .keylen = 32, .msg = hmac_sha3_256_617_msg, .msglen = 24, .tag = hmac_sha3_256_617_tag, .taglen = 16, .result = 1, .comment = ", tcId is 100 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 618 for HMAC, tcId is 101 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_618_key[] = { 0x96, 0xe1, 0xe4, 0x89, 0x6f, 0xb2, 0xcd, 0x05, 0xf1, 0x33, 0xa6, 0xa1, 0x00, 0xbc, 0x56, 0x09, 0xa7, 0xac, 0x3c, 0xa6, 0xd8, 0x17, 0x21, 0xe9, 0x22, 0xda, 0xdd, 0x69, 0xad, 0x07, 0xa8, 0x92, }; static const unsigned char hmac_sha3_256_618_msg[] = { 0x91, 0xa1, 0x7e, 0x4d, 0xfc, 0xc3, 0x16, 0x6a, 0x1a, 0xdd, 0x26, 0xff, 0x0e, 0x7c, 0x12, 0x05, 0x6e, 0x8a, 0x65, 0x4f, 0x28, 0xa6, 0xde, 0x24, 0xf4, 0xba, 0x73, 0x9c, 0xeb, 0x5b, 0x5b, 0x18, }; static const unsigned char hmac_sha3_256_618_tag[] = { 0xa3, 0xcd, 0xf9, 0x67, 0x78, 0xe1, 0xf9, 0xa4, 0x2a, 0x89, 0xf9, 0x14, 0x26, 0x87, 0x3f, 0xf1, }; static const wycheproof_hmac_test hmac_sha3_256_618 = { .name = "hmac_sha3_256_618", .hash = SHA3_256, .key = hmac_sha3_256_618_key, .keylen = 32, .msg = hmac_sha3_256_618_msg, .msglen = 32, .tag = hmac_sha3_256_618_tag, .taglen = 16, .result = 1, .comment = ", tcId is 101 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 619 for HMAC, tcId is 102 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_619_key[] = { 0x41, 0x20, 0x15, 0x67, 0xbe, 0x4e, 0x6e, 0xa0, 0x6d, 0xe2, 0x29, 0x5f, 0xd0, 0xe6, 0xe8, 0xa7, 0xd8, 0x62, 0xbb, 0x57, 0x31, 0x18, 0x94, 0xf5, 0x25, 0xd8, 0xad, 0xea, 0xbb, 0xa4, 0xa3, 0xe4, }; static const unsigned char hmac_sha3_256_619_msg[] = { 0x58, 0xc8, 0xc7, 0x3b, 0xdd, 0x3f, 0x35, 0x0c, 0x97, 0x47, 0x78, 0x16, 0xea, 0xe4, 0xd0, 0x78, 0x9c, 0x93, 0x69, 0xc0, 0xe9, 0x9c, 0x24, 0x89, 0x02, 0xc7, 0x00, 0xbc, 0x29, 0xed, 0x98, 0x64, 0x25, 0x98, 0x5e, 0xb3, 0xfa, 0x55, 0x70, 0x9b, 0x73, 0xbf, 0x62, 0x0c, 0xd9, 0xb1, 0xcb, }; static const unsigned char hmac_sha3_256_619_tag[] = { 0x15, 0xcf, 0x5d, 0xa2, 0x31, 0x2c, 0xfd, 0x8f, 0x9d, 0xeb, 0xdd, 0x8b, 0x3a, 0xb0, 0x7d, 0x6b, }; static const wycheproof_hmac_test hmac_sha3_256_619 = { .name = "hmac_sha3_256_619", .hash = SHA3_256, .key = hmac_sha3_256_619_key, .keylen = 32, .msg = hmac_sha3_256_619_msg, .msglen = 47, .tag = hmac_sha3_256_619_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 620 for HMAC, tcId is 103 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_620_key[] = { 0x64, 0x9e, 0x37, 0x3e, 0x68, 0x1e, 0xf5, 0x2e, 0x3c, 0x10, 0xac, 0x26, 0x54, 0x84, 0x75, 0x09, 0x32, 0xa9, 0x91, 0x8f, 0x28, 0xfb, 0x82, 0x4f, 0x7c, 0xb5, 0x0a, 0xda, 0xb3, 0x97, 0x81, 0xfe, }; static const unsigned char hmac_sha3_256_620_msg[] = { 0x39, 0xb4, 0x47, 0xbd, 0x3a, 0x01, 0x98, 0x3c, 0x1c, 0xb7, 0x61, 0xb4, 0x56, 0xd6, 0x90, 0x00, 0x94, 0x8c, 0xeb, 0x87, 0x05, 0x62, 0xa5, 0x36, 0x12, 0x6a, 0x0d, 0x18, 0xa8, 0xe7, 0xe4, 0x9b, 0x16, 0xde, 0x8f, 0xe6, 0x72, 0xf1, 0x3d, 0x08, 0x08, 0xd8, 0xb7, 0xd9, 0x57, 0x89, 0x99, 0x17, }; static const unsigned char hmac_sha3_256_620_tag[] = { 0x5d, 0xdc, 0xac, 0xb9, 0xad, 0x0b, 0x02, 0xda, 0xc9, 0x60, 0x12, 0xb4, 0xa4, 0xd1, 0x72, 0x9d, }; static const wycheproof_hmac_test hmac_sha3_256_620 = { .name = "hmac_sha3_256_620", .hash = SHA3_256, .key = hmac_sha3_256_620_key, .keylen = 32, .msg = hmac_sha3_256_620_msg, .msglen = 48, .tag = hmac_sha3_256_620_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 621 for HMAC, tcId is 104 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_621_key[] = { 0x7b, 0x0d, 0x23, 0x7f, 0x7b, 0x53, 0x6e, 0x2c, 0x69, 0x50, 0x99, 0x0e, 0x61, 0xb3, 0x61, 0xb3, 0x84, 0x33, 0x3d, 0xda, 0x69, 0x00, 0x45, 0xc5, 0x91, 0x32, 0x1a, 0x4e, 0x3f, 0x79, 0x74, 0x7f, }; static const unsigned char hmac_sha3_256_621_msg[] = { 0x3d, 0x62, 0x83, 0xd1, 0x1c, 0x02, 0x19, 0xb5, 0x25, 0x62, 0x0e, 0x9b, 0xf5, 0xb9, 0xfd, 0x88, 0x7d, 0x3f, 0x0f, 0x70, 0x7a, 0xcb, 0x1f, 0xbd, 0xff, 0xab, 0x0d, 0x97, 0xa5, 0xc6, 0xd0, 0x7f, 0xc5, 0x47, 0x76, 0x2e, 0x0e, 0x7d, 0xd7, 0xc4, 0x3a, 0xd3, 0x5f, 0xab, 0x1c, 0x79, 0x0f, 0x80, 0x47, }; static const unsigned char hmac_sha3_256_621_tag[] = { 0x78, 0x1c, 0x19, 0x6c, 0x0d, 0x71, 0xd8, 0x8e, 0x8d, 0xb7, 0x68, 0x55, 0x71, 0xad, 0x13, 0xe4, }; static const wycheproof_hmac_test hmac_sha3_256_621 = { .name = "hmac_sha3_256_621", .hash = SHA3_256, .key = hmac_sha3_256_621_key, .keylen = 32, .msg = hmac_sha3_256_621_msg, .msglen = 49, .tag = hmac_sha3_256_621_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 622 for HMAC, tcId is 105 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_622_key[] = { 0x17, 0xc9, 0x26, 0x63, 0x74, 0x1f, 0x01, 0x2e, 0x5b, 0xb6, 0x71, 0x4e, 0x61, 0x4c, 0x2d, 0x15, 0x59, 0x48, 0x61, 0x7f, 0x10, 0x93, 0x62, 0x69, 0xd9, 0x54, 0xc5, 0x8a, 0xba, 0x2a, 0xe6, 0x2d, }; static const unsigned char hmac_sha3_256_622_msg[] = { 0x7f, 0xdd, 0x6a, 0x15, 0xc8, 0x61, 0xd0, 0x31, 0x3f, 0x66, 0x35, 0xd7, 0x7d, 0xc5, 0x5e, 0x11, 0x5f, 0xf1, 0x8c, 0x8a, 0xb0, 0x63, 0xb5, 0xd0, 0x3e, 0xab, 0x47, 0x2e, 0xec, 0xa8, 0x7a, 0x37, 0x81, 0x88, 0xf2, 0x58, 0x13, 0x51, 0x5c, 0xf9, 0x0b, 0x6c, 0xff, 0xa9, 0x4a, 0x8f, 0xf3, 0x6b, 0x29, 0xd6, 0x56, 0x03, 0xea, 0xb3, 0xfb, 0xd2, 0xaa, 0x95, 0x00, 0xb2, 0x61, 0xe1, 0x84, 0x04, 0x98, 0x93, 0xdc, 0x6c, 0xa2, 0x01, 0x0b, 0xec, 0xac, 0x16, 0x30, 0x53, 0xf2, 0x11, 0x07, 0x0b, 0xdd, 0xa6, 0x21, 0xb8, 0xbd, 0x8a, 0xf7, 0x7e, 0x45, 0x02, 0x68, 0x60, 0x3b, 0x52, 0xdb, 0x34, 0xc9, 0x0b, 0xe8, 0x36, 0xdf, 0xeb, 0xdd, 0xef, 0x42, 0x30, 0x3f, 0x72, 0x4e, 0x63, 0xbf, 0x0f, }; static const unsigned char hmac_sha3_256_622_tag[] = { 0x3c, 0x31, 0xe9, 0xfa, 0x2e, 0xa6, 0x34, 0xf2, 0xbf, 0xbd, 0x0d, 0x7f, 0x6d, 0xbf, 0x29, 0xc2, }; static const wycheproof_hmac_test hmac_sha3_256_622 = { .name = "hmac_sha3_256_622", .hash = SHA3_256, .key = hmac_sha3_256_622_key, .keylen = 32, .msg = hmac_sha3_256_622_msg, .msglen = 112, .tag = hmac_sha3_256_622_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 623 for HMAC, tcId is 106 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_623_key[] = { 0x42, 0x4c, 0x6b, 0x22, 0x60, 0x6f, 0xcc, 0x09, 0x4a, 0xe8, 0x2f, 0xc5, 0xd3, 0xcb, 0xe4, 0x84, 0x17, 0x4c, 0x22, 0x11, 0xb3, 0xec, 0x77, 0x80, 0x91, 0xca, 0xc3, 0x4a, 0x8e, 0x38, 0xa1, 0x52, }; static const unsigned char hmac_sha3_256_623_msg[] = { 0xd9, 0x6f, 0xf0, 0x62, 0xe2, 0x49, 0x0e, 0x8e, 0x0c, 0x54, 0xc5, 0xa8, 0xb8, 0x9e, 0x85, 0xb2, 0x5a, 0x66, 0xd9, 0x3d, 0x7c, 0x2b, 0x93, 0xbd, 0xfe, 0xf8, 0x46, 0xb7, 0x0d, 0x38, 0x67, 0x27, 0x46, 0xa4, 0xb9, 0x88, 0xd0, 0x8f, 0x15, 0xa5, 0xc5, 0x27, 0xca, 0x4f, 0x2c, 0x80, 0xe5, 0x3f, 0x7c, 0x6a, 0xc0, 0x52, 0x1b, 0xc5, 0x7e, 0xbe, 0x38, 0x20, 0x91, 0x80, 0xcb, 0xf9, 0x34, 0xe0, 0xbb, 0xeb, 0x58, 0xcf, 0xb6, 0x3d, 0x75, 0xda, 0x64, 0xaf, 0x41, 0xd0, 0x9c, 0xe1, 0x74, 0xaf, 0x18, 0x96, 0xf4, 0x25, 0x22, 0x91, 0x0f, 0xce, 0xd3, 0x5e, 0xa0, 0x00, 0x40, 0x2e, 0x95, 0xfd, 0x3a, 0xc7, 0xaa, 0x6d, 0x5e, 0x0a, 0x6b, 0x53, 0x3b, 0x08, 0x79, 0xbc, 0x46, 0x60, 0x19, 0xb3, 0xa5, 0xe6, 0xb1, 0x6e, 0x4b, 0xd1, 0xea, 0x6c, 0xdf, 0xc9, 0xcc, 0xc1, 0xd6, 0xf0, 0xf0, }; static const unsigned char hmac_sha3_256_623_tag[] = { 0x0f, 0x93, 0x7a, 0xa5, 0xb5, 0xaa, 0x5e, 0xfa, 0x6f, 0x8c, 0x19, 0x40, 0xc9, 0xb5, 0x7b, 0x19, }; static const wycheproof_hmac_test hmac_sha3_256_623 = { .name = "hmac_sha3_256_623", .hash = SHA3_256, .key = hmac_sha3_256_623_key, .keylen = 32, .msg = hmac_sha3_256_623_msg, .msglen = 127, .tag = hmac_sha3_256_623_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 624 for HMAC, tcId is 107 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_624_key[] = { 0x15, 0xd5, 0x53, 0xc8, 0xda, 0x43, 0x3d, 0x53, 0xcd, 0xc7, 0xf1, 0x50, 0x87, 0xa7, 0x03, 0x49, 0xca, 0xab, 0x57, 0xb3, 0x79, 0xa4, 0x07, 0x89, 0x28, 0xce, 0x9b, 0x99, 0x30, 0x2e, 0x31, 0xa6, }; static const unsigned char hmac_sha3_256_624_msg[] = { 0xd6, 0xc0, 0xc5, 0x3b, 0x73, 0xf7, 0x4f, 0xb4, 0x26, 0xad, 0xfd, 0xc1, 0x43, 0xd7, 0x0d, 0xb7, 0xf7, 0xa8, 0xf8, 0xed, 0x32, 0xa2, 0xfa, 0xef, 0x26, 0x3c, 0xf9, 0xab, 0x11, 0x75, 0x37, 0xb6, 0xb9, 0xd1, 0x72, 0x8b, 0xd1, 0x00, 0x0c, 0x1f, 0x28, 0x90, 0x6c, 0x6c, 0xe6, 0xad, 0x21, 0x86, 0x2b, 0xfa, 0x4d, 0x68, 0x9c, 0x1a, 0x8e, 0xbe, 0x38, 0x68, 0xb9, 0x92, 0x09, 0x8b, 0x7f, 0x98, 0x1b, 0x2a, 0xf5, 0x18, 0x9a, 0x6a, 0xde, 0xdf, 0xf5, 0x3a, 0x6c, 0x70, 0xc8, 0x36, 0x93, 0xf5, 0xc8, 0xd6, 0x38, 0x5a, 0x9a, 0x8a, 0x4d, 0xca, 0x01, 0x7c, 0x57, 0x16, 0xac, 0x4d, 0x5b, 0x97, 0x65, 0xc5, 0xca, 0x2a, 0xb5, 0xf9, 0x86, 0x7e, 0x02, 0x79, 0x51, 0x98, 0xc0, 0xb9, 0x52, 0x7e, 0x07, 0xd0, 0x8a, 0xf5, 0x2d, 0xbc, 0xb9, 0x1c, 0xeb, 0x3d, 0x8b, 0x41, 0x2a, 0x2b, 0x24, 0x02, }; static const unsigned char hmac_sha3_256_624_tag[] = { 0xb2, 0x94, 0x8a, 0x1b, 0x6f, 0xa0, 0x55, 0x8d, 0x44, 0x3c, 0x0b, 0x8c, 0xee, 0x87, 0xc4, 0xc8, }; static const wycheproof_hmac_test hmac_sha3_256_624 = { .name = "hmac_sha3_256_624", .hash = SHA3_256, .key = hmac_sha3_256_624_key, .keylen = 32, .msg = hmac_sha3_256_624_msg, .msglen = 128, .tag = hmac_sha3_256_624_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 625 for HMAC, tcId is 108 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_625_key[] = { 0xff, 0xe5, 0x59, 0x46, 0x8a, 0x10, 0x31, 0xdf, 0xb3, 0xce, 0xd2, 0xe3, 0x81, 0xe7, 0x4b, 0x58, 0x21, 0xa3, 0x6d, 0x9a, 0xbf, 0x5f, 0x2e, 0x59, 0x89, 0x5a, 0x7f, 0xdc, 0xa0, 0xfa, 0x56, 0xa0, }; static const unsigned char hmac_sha3_256_625_msg[] = { 0x23, 0x88, 0x99, 0xa8, 0x4a, 0x3c, 0xf1, 0x52, 0x02, 0xa1, 0xfb, 0xef, 0x47, 0x41, 0xe1, 0x33, 0xfb, 0x24, 0xc0, 0x09, 0xa0, 0xcd, 0x83, 0x85, 0x4c, 0x6d, 0x1d, 0x7c, 0x92, 0x66, 0xd4, 0xc3, 0xea, 0xfe, 0x6d, 0x1d, 0xfc, 0x18, 0xf1, 0x38, 0x45, 0xcc, 0xda, 0xd7, 0xfe, 0x27, 0x76, 0x27, 0xb5, 0xfd, 0x5f, 0xf2, 0x55, 0x5c, 0xe6, 0xdf, 0xde, 0x1e, 0xe0, 0x78, 0x54, 0x0a, 0x0a, 0x35, 0x90, 0xc6, 0xd9, 0xbf, 0x2f, 0xb6, 0x3b, 0xa9, 0xaf, 0xbe, 0x93, 0x80, 0xe7, 0x97, 0xbe, 0x7c, 0xd0, 0x17, 0x64, 0x5c, 0x5a, 0x36, 0x13, 0xee, 0xf3, 0x8e, 0xf8, 0x9e, 0x3b, 0x74, 0x61, 0xe6, 0xe7, 0x00, 0xff, 0x2b, 0x4d, 0xee, 0xf5, 0x63, 0x6c, 0x9d, 0x21, 0x98, 0xb1, 0x43, 0xf7, 0x97, 0xca, 0x18, 0x20, 0xa3, 0xdc, 0xc5, 0xd4, 0x62, 0xeb, 0xf4, 0xa8, 0xc4, 0xc0, 0x9e, 0xb2, 0x02, 0xa2, 0x35, 0x92, 0xeb, 0x95, 0x24, 0x08, 0x2c, 0x79, 0xad, 0xda, 0x8f, 0xcd, 0x56, 0xd2, 0x56, 0x04, 0x1a, 0x26, 0xbf, 0x8f, 0x52, 0x39, 0x62, 0xba, 0x91, 0x1c, 0xe5, 0xa5, 0x78, 0x65, 0x70, 0xd6, 0x5b, 0xe3, 0xc4, 0xdf, 0x72, 0x2e, 0xd8, 0x83, 0x03, 0x02, 0x06, 0x5f, 0xeb, 0xdf, 0x94, 0x47, 0x15, 0x29, 0x8a, 0x1f, 0xbb, 0x7d, 0x10, 0xb6, 0x8d, 0x7d, 0xa2, 0xbf, 0x88, 0x93, 0x24, 0x31, 0x4c, 0xe5, 0x1e, 0x81, 0x5c, 0x7f, 0xbf, 0x03, 0xaa, 0x0a, 0x83, 0x58, 0xaf, 0xf3, 0xa8, 0x6e, 0xb7, 0xa3, 0x3f, 0x9a, 0x49, 0x23, 0x66, 0x0d, 0xb3, 0x04, 0x7e, 0x79, 0x3b, 0xeb, 0xb0, 0xc6, 0x91, 0x8f, 0x43, 0x95, 0xd4, 0x00, 0x38, 0x17, 0x23, 0xfd, 0xae, 0x28, 0x32, 0xc3, 0x6e, 0xfc, 0x8e, 0x36, 0x8a, 0x68, 0xf3, 0x0f, 0x63, 0x51, 0xc3, 0xbc, 0x94, 0x2c, 0xd5, 0x60, }; static const unsigned char hmac_sha3_256_625_tag[] = { 0x9c, 0x89, 0x92, 0x83, 0xac, 0xe0, 0x35, 0x20, 0xd5, 0x10, 0x9e, 0x43, 0xc3, 0x0d, 0x46, 0x98, }; static const wycheproof_hmac_test hmac_sha3_256_625 = { .name = "hmac_sha3_256_625", .hash = SHA3_256, .key = hmac_sha3_256_625_key, .keylen = 32, .msg = hmac_sha3_256_625_msg, .msglen = 255, .tag = hmac_sha3_256_625_tag, .taglen = 16, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 626 for HMAC, tcId is 109 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_626_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_626_tag[] = { 0x51, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_626 = { .name = "hmac_sha3_256_626", .hash = SHA3_256, .key = hmac_sha3_256_626_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_626_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 627 for HMAC, tcId is 110 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_627_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_627_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_627_tag[] = { 0x0a, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_627 = { .name = "hmac_sha3_256_627", .hash = SHA3_256, .key = hmac_sha3_256_627_key, .keylen = 32, .msg = hmac_sha3_256_627_msg, .msglen = 16, .tag = hmac_sha3_256_627_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 628 for HMAC, tcId is 111 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_628_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_628_tag[] = { 0x52, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_628 = { .name = "hmac_sha3_256_628", .hash = SHA3_256, .key = hmac_sha3_256_628_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_628_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 629 for HMAC, tcId is 112 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_629_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_629_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_629_tag[] = { 0x09, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_629 = { .name = "hmac_sha3_256_629", .hash = SHA3_256, .key = hmac_sha3_256_629_key, .keylen = 32, .msg = hmac_sha3_256_629_msg, .msglen = 16, .tag = hmac_sha3_256_629_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 630 for HMAC, tcId is 113 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_630_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_630_tag[] = { 0xd0, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_630 = { .name = "hmac_sha3_256_630", .hash = SHA3_256, .key = hmac_sha3_256_630_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_630_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 631 for HMAC, tcId is 114 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_631_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_631_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_631_tag[] = { 0x8b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_631 = { .name = "hmac_sha3_256_631", .hash = SHA3_256, .key = hmac_sha3_256_631_key, .keylen = 32, .msg = hmac_sha3_256_631_msg, .msglen = 16, .tag = hmac_sha3_256_631_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 632 for HMAC, tcId is 115 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_632_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_632_tag[] = { 0x50, 0xaa, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_632 = { .name = "hmac_sha3_256_632", .hash = SHA3_256, .key = hmac_sha3_256_632_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_632_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 633 for HMAC, tcId is 116 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_633_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_633_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_633_tag[] = { 0x0b, 0x7b, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_633 = { .name = "hmac_sha3_256_633", .hash = SHA3_256, .key = hmac_sha3_256_633_key, .keylen = 32, .msg = hmac_sha3_256_633_msg, .msglen = 16, .tag = hmac_sha3_256_633_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 634 for HMAC, tcId is 117 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_634_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_634_tag[] = { 0x50, 0xab, 0x16, 0x86, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_634 = { .name = "hmac_sha3_256_634", .hash = SHA3_256, .key = hmac_sha3_256_634_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_634_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 635 for HMAC, tcId is 118 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_635_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_635_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_635_tag[] = { 0x0b, 0x7a, 0xeb, 0x1e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_635 = { .name = "hmac_sha3_256_635", .hash = SHA3_256, .key = hmac_sha3_256_635_key, .keylen = 32, .msg = hmac_sha3_256_635_msg, .msglen = 16, .tag = hmac_sha3_256_635_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 636 for HMAC, tcId is 119 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_636_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_636_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x02, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_636 = { .name = "hmac_sha3_256_636", .hash = SHA3_256, .key = hmac_sha3_256_636_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_636_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 637 for HMAC, tcId is 120 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_637_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_637_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_637_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xaa, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_637 = { .name = "hmac_sha3_256_637", .hash = SHA3_256, .key = hmac_sha3_256_637_key, .keylen = 32, .msg = hmac_sha3_256_637_msg, .msglen = 16, .tag = hmac_sha3_256_637_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 638 for HMAC, tcId is 121 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_638_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_638_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x01, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_638 = { .name = "hmac_sha3_256_638", .hash = SHA3_256, .key = hmac_sha3_256_638_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_638_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 639 for HMAC, tcId is 122 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_639_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_639_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_639_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xa9, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_639 = { .name = "hmac_sha3_256_639", .hash = SHA3_256, .key = hmac_sha3_256_639_key, .keylen = 32, .msg = hmac_sha3_256_639_msg, .msglen = 16, .tag = hmac_sha3_256_639_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 640 for HMAC, tcId is 123 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_640_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_640_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_640 = { .name = "hmac_sha3_256_640", .hash = SHA3_256, .key = hmac_sha3_256_640_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_640_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 641 for HMAC, tcId is 124 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_641_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_641_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_641_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_641 = { .name = "hmac_sha3_256_641", .hash = SHA3_256, .key = hmac_sha3_256_641_key, .keylen = 32, .msg = hmac_sha3_256_641_msg, .msglen = 16, .tag = hmac_sha3_256_641_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 642 for HMAC, tcId is 125 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_642_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_642_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4a, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_642 = { .name = "hmac_sha3_256_642", .hash = SHA3_256, .key = hmac_sha3_256_642_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_642_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 643 for HMAC, tcId is 126 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_643_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_643_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_643_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0c, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_643 = { .name = "hmac_sha3_256_643", .hash = SHA3_256, .key = hmac_sha3_256_643_key, .keylen = 32, .msg = hmac_sha3_256_643_msg, .msglen = 16, .tag = hmac_sha3_256_643_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 644 for HMAC, tcId is 127 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_644_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_644_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0xcb, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_644 = { .name = "hmac_sha3_256_644", .hash = SHA3_256, .key = hmac_sha3_256_644_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_644_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 645 for HMAC, tcId is 128 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_645_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_645_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_645_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x8d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_645 = { .name = "hmac_sha3_256_645", .hash = SHA3_256, .key = hmac_sha3_256_645_key, .keylen = 32, .msg = hmac_sha3_256_645_msg, .msglen = 16, .tag = hmac_sha3_256_645_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 646 for HMAC, tcId is 129 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_646_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_646_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x1b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_646 = { .name = "hmac_sha3_256_646", .hash = SHA3_256, .key = hmac_sha3_256_646_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_646_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 647 for HMAC, tcId is 130 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_647_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_647_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_647_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x5b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_647 = { .name = "hmac_sha3_256_647", .hash = SHA3_256, .key = hmac_sha3_256_647_key, .keylen = 32, .msg = hmac_sha3_256_647_msg, .msglen = 16, .tag = hmac_sha3_256_647_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 648 for HMAC, tcId is 131 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_648_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_648_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4a, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_648 = { .name = "hmac_sha3_256_648", .hash = SHA3_256, .key = hmac_sha3_256_648_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_648_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 649 for HMAC, tcId is 132 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_649_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_649_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_649_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd1, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_649 = { .name = "hmac_sha3_256_649", .hash = SHA3_256, .key = hmac_sha3_256_649_key, .keylen = 32, .msg = hmac_sha3_256_649_msg, .msglen = 16, .tag = hmac_sha3_256_649_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 650 for HMAC, tcId is 133 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_650_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_650_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa2, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_650 = { .name = "hmac_sha3_256_650", .hash = SHA3_256, .key = hmac_sha3_256_650_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_650_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 651 for HMAC, tcId is 134 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_651_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_651_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_651_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x26, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_651 = { .name = "hmac_sha3_256_651", .hash = SHA3_256, .key = hmac_sha3_256_651_key, .keylen = 32, .msg = hmac_sha3_256_651_msg, .msglen = 16, .tag = hmac_sha3_256_651_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 652 for HMAC, tcId is 135 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_652_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_652_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa1, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_652 = { .name = "hmac_sha3_256_652", .hash = SHA3_256, .key = hmac_sha3_256_652_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_652_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 653 for HMAC, tcId is 136 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_653_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_653_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_653_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x25, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_653 = { .name = "hmac_sha3_256_653", .hash = SHA3_256, .key = hmac_sha3_256_653_key, .keylen = 32, .msg = hmac_sha3_256_653_msg, .msglen = 16, .tag = hmac_sha3_256_653_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 654 for HMAC, tcId is 137 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_654_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_654_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0x23, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_654 = { .name = "hmac_sha3_256_654", .hash = SHA3_256, .key = hmac_sha3_256_654_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_654_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 655 for HMAC, tcId is 138 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_655_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_655_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_655_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0xa7, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_655 = { .name = "hmac_sha3_256_655", .hash = SHA3_256, .key = hmac_sha3_256_655_key, .keylen = 32, .msg = hmac_sha3_256_655_msg, .msglen = 16, .tag = hmac_sha3_256_655_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 656 for HMAC, tcId is 139 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_656_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_656_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2f, }; static const wycheproof_hmac_test hmac_sha3_256_656 = { .name = "hmac_sha3_256_656", .hash = SHA3_256, .key = hmac_sha3_256_656_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_656_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 120 in tag, tcId is 139 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 657 for HMAC, tcId is 140 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_657_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_657_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_657_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4b, }; static const wycheproof_hmac_test hmac_sha3_256_657 = { .name = "hmac_sha3_256_657", .hash = SHA3_256, .key = hmac_sha3_256_657_key, .keylen = 32, .msg = hmac_sha3_256_657_msg, .msglen = 16, .tag = hmac_sha3_256_657_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 120 in tag, tcId is 140 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 658 for HMAC, tcId is 141 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_658_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_658_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2c, }; static const wycheproof_hmac_test hmac_sha3_256_658 = { .name = "hmac_sha3_256_658", .hash = SHA3_256, .key = hmac_sha3_256_658_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_658_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 121 in tag, tcId is 141 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 659 for HMAC, tcId is 142 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_659_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_659_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_659_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x48, }; static const wycheproof_hmac_test hmac_sha3_256_659 = { .name = "hmac_sha3_256_659", .hash = SHA3_256, .key = hmac_sha3_256_659_key, .keylen = 32, .msg = hmac_sha3_256_659_msg, .msglen = 16, .tag = hmac_sha3_256_659_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 121 in tag, tcId is 142 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 660 for HMAC, tcId is 143 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_660_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_660_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_256_660 = { .name = "hmac_sha3_256_660", .hash = SHA3_256, .key = hmac_sha3_256_660_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_660_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 126 in tag, tcId is 143 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 661 for HMAC, tcId is 144 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_661_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_661_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_661_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x0a, }; static const wycheproof_hmac_test hmac_sha3_256_661 = { .name = "hmac_sha3_256_661", .hash = SHA3_256, .key = hmac_sha3_256_661_key, .keylen = 32, .msg = hmac_sha3_256_661_msg, .msglen = 16, .tag = hmac_sha3_256_661_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 126 in tag, tcId is 144 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 662 for HMAC, tcId is 145 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_662_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_662_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0xae, }; static const wycheproof_hmac_test hmac_sha3_256_662 = { .name = "hmac_sha3_256_662", .hash = SHA3_256, .key = hmac_sha3_256_662_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_662_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 127 in tag, tcId is 145 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 663 for HMAC, tcId is 146 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_663_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_663_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_663_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0xca, }; static const wycheproof_hmac_test hmac_sha3_256_663 = { .name = "hmac_sha3_256_663", .hash = SHA3_256, .key = hmac_sha3_256_663_key, .keylen = 32, .msg = hmac_sha3_256_663_msg, .msglen = 16, .tag = hmac_sha3_256_663_tag, .taglen = 16, .result = -1, .comment = "Flipped bit 127 in tag, tcId is 146 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 664 for HMAC, tcId is 147 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_664_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_664_tag[] = { 0x51, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0xfe, 0x4a, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_664 = { .name = "hmac_sha3_256_664", .hash = SHA3_256, .key = hmac_sha3_256_664_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_664_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 665 for HMAC, tcId is 148 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_665_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_665_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_665_tag[] = { 0x0a, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0xa8, 0x0c, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_665 = { .name = "hmac_sha3_256_665", .hash = SHA3_256, .key = hmac_sha3_256_665_key, .keylen = 32, .msg = hmac_sha3_256_665_msg, .msglen = 16, .tag = hmac_sha3_256_665_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 666 for HMAC, tcId is 149 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_666_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_666_tag[] = { 0x50, 0xab, 0x16, 0x86, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_256_666 = { .name = "hmac_sha3_256_666", .hash = SHA3_256, .key = hmac_sha3_256_666_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_666_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 667 for HMAC, tcId is 150 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_667_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_667_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_667_tag[] = { 0x0b, 0x7a, 0xeb, 0x1e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_256_667 = { .name = "hmac_sha3_256_667", .hash = SHA3_256, .key = hmac_sha3_256_667_key, .keylen = 32, .msg = hmac_sha3_256_667_msg, .msglen = 16, .tag = hmac_sha3_256_667_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 668 for HMAC, tcId is 151 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_668_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_668_tag[] = { 0x50, 0xab, 0x16, 0x06, 0x03, 0x43, 0x83, 0x7e, 0x4b, 0x3b, 0x4b, 0xc0, 0xa3, 0x41, 0xa8, 0xae, }; static const wycheproof_hmac_test hmac_sha3_256_668 = { .name = "hmac_sha3_256_668", .hash = SHA3_256, .key = hmac_sha3_256_668_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_668_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 669 for HMAC, tcId is 152 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_669_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_669_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_669_tag[] = { 0x0b, 0x7a, 0xeb, 0x9e, 0xab, 0x9b, 0x57, 0x28, 0x0d, 0x7b, 0xd0, 0xea, 0x27, 0x26, 0x39, 0xca, }; static const wycheproof_hmac_test hmac_sha3_256_669 = { .name = "hmac_sha3_256_669", .hash = SHA3_256, .key = hmac_sha3_256_669_key, .keylen = 32, .msg = hmac_sha3_256_669_msg, .msglen = 16, .tag = hmac_sha3_256_669_tag, .taglen = 16, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 670 for HMAC, tcId is 153 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_670_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_670_tag[] = { 0xaf, 0x54, 0xe9, 0xf9, 0xfc, 0xbc, 0x7c, 0x01, 0xb4, 0xc4, 0xb4, 0x3f, 0x5c, 0xbe, 0x57, 0xd1, }; static const wycheproof_hmac_test hmac_sha3_256_670 = { .name = "hmac_sha3_256_670", .hash = SHA3_256, .key = hmac_sha3_256_670_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_670_tag, .taglen = 16, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 671 for HMAC, tcId is 154 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_671_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_671_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_671_tag[] = { 0xf4, 0x85, 0x14, 0x61, 0x54, 0x64, 0xa8, 0x57, 0xf2, 0x84, 0x2f, 0x15, 0xd8, 0xd9, 0xc6, 0xb5, }; static const wycheproof_hmac_test hmac_sha3_256_671 = { .name = "hmac_sha3_256_671", .hash = SHA3_256, .key = hmac_sha3_256_671_key, .keylen = 32, .msg = hmac_sha3_256_671_msg, .msglen = 16, .tag = hmac_sha3_256_671_tag, .taglen = 16, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 672 for HMAC, tcId is 155 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_672_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_672_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_256_672 = { .name = "hmac_sha3_256_672", .hash = SHA3_256, .key = hmac_sha3_256_672_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_672_tag, .taglen = 16, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 673 for HMAC, tcId is 156 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_673_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_673_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_673_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_256_673 = { .name = "hmac_sha3_256_673", .hash = SHA3_256, .key = hmac_sha3_256_673_key, .keylen = 32, .msg = hmac_sha3_256_673_msg, .msglen = 16, .tag = hmac_sha3_256_673_tag, .taglen = 16, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 674 for HMAC, tcId is 157 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_674_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_674_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_256_674 = { .name = "hmac_sha3_256_674", .hash = SHA3_256, .key = hmac_sha3_256_674_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_674_tag, .taglen = 16, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 675 for HMAC, tcId is 158 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_675_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_675_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_675_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_256_675 = { .name = "hmac_sha3_256_675", .hash = SHA3_256, .key = hmac_sha3_256_675_key, .keylen = 32, .msg = hmac_sha3_256_675_msg, .msglen = 16, .tag = hmac_sha3_256_675_tag, .taglen = 16, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 676 for HMAC, tcId is 159 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_676_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_676_tag[] = { 0xd0, 0x2b, 0x96, 0x86, 0x83, 0xc3, 0x03, 0x7e, 0xcb, 0xbb, 0xcb, 0x40, 0x23, 0xc1, 0x28, 0xae, }; static const wycheproof_hmac_test hmac_sha3_256_676 = { .name = "hmac_sha3_256_676", .hash = SHA3_256, .key = hmac_sha3_256_676_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_676_tag, .taglen = 16, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 677 for HMAC, tcId is 160 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_677_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_677_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_677_tag[] = { 0x8b, 0xfa, 0x6b, 0x1e, 0x2b, 0x1b, 0xd7, 0x28, 0x8d, 0xfb, 0x50, 0x6a, 0xa7, 0xa6, 0xb9, 0xca, }; static const wycheproof_hmac_test hmac_sha3_256_677 = { .name = "hmac_sha3_256_677", .hash = SHA3_256, .key = hmac_sha3_256_677_key, .keylen = 32, .msg = hmac_sha3_256_677_msg, .msglen = 16, .tag = hmac_sha3_256_677_tag, .taglen = 16, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 678 for HMAC, tcId is 161 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_678_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_678_tag[] = { 0x51, 0xaa, 0x17, 0x07, 0x02, 0x42, 0x82, 0xff, 0x4a, 0x3a, 0x4a, 0xc1, 0xa2, 0x40, 0xa9, 0x2f, }; static const wycheproof_hmac_test hmac_sha3_256_678 = { .name = "hmac_sha3_256_678", .hash = SHA3_256, .key = hmac_sha3_256_678_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_678_tag, .taglen = 16, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 679 for HMAC, tcId is 162 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_679_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, }; static const unsigned char hmac_sha3_256_679_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_256_679_tag[] = { 0x0a, 0x7b, 0xea, 0x9f, 0xaa, 0x9a, 0x56, 0xa9, 0x0c, 0x7a, 0xd1, 0xeb, 0x26, 0x27, 0x38, 0x4b, }; static const wycheproof_hmac_test hmac_sha3_256_679 = { .name = "hmac_sha3_256_679", .hash = SHA3_256, .key = hmac_sha3_256_679_key, .keylen = 32, .msg = hmac_sha3_256_679_msg, .msglen = 16, .tag = hmac_sha3_256_679_tag, .taglen = 16, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 680 for HMAC, tcId is 163 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_680_key[] = { 0xa3, 0x49, 0xac, 0x0a, 0x9f, 0x9f, 0x74, 0xe4, 0x8e, 0x09, 0x9c, 0xc3, 0xdb, 0xf9, 0xa9, 0xc9, }; static const unsigned char hmac_sha3_256_680_tag[] = { 0xee, 0x82, 0x34, 0xca, 0x22, 0xb6, 0xcb, 0xd8, 0x7c, 0xc2, 0xba, 0x49, 0x2e, 0xce, 0xa3, 0x9a, 0xeb, 0xc6, 0x34, 0x03, 0x29, 0x98, 0x96, 0x56, 0x89, 0xd3, 0x93, 0xe2, 0xd4, 0xf8, 0x86, 0x53, }; static const wycheproof_hmac_test hmac_sha3_256_680 = { .name = "hmac_sha3_256_680", .hash = SHA3_256, .key = hmac_sha3_256_680_key, .keylen = 16, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_680_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 681 for HMAC, tcId is 164 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_681_key[] = { 0xac, 0x68, 0x6b, 0xa0, 0xf1, 0xa5, 0x1b, 0x4e, 0xc4, 0xf0, 0xb3, 0x04, 0x92, 0xb7, 0xf5, 0x56, }; static const unsigned char hmac_sha3_256_681_msg[] = { 0x2f, 0xa4, 0x3a, 0x14, 0xae, 0x50, 0x05, 0x07, 0xde, 0xb9, 0x5a, 0xb5, 0xbd, 0x32, 0xb0, 0xfe, }; static const unsigned char hmac_sha3_256_681_tag[] = { 0x39, 0xea, 0xea, 0x73, 0x0a, 0x72, 0xf1, 0x9b, 0x31, 0x6d, 0xae, 0x7a, 0xe7, 0x79, 0x04, 0x00, 0x0c, 0x8e, 0x64, 0xac, 0x5b, 0xb8, 0xa1, 0xe7, 0x5e, 0xea, 0xea, 0x2e, 0x3d, 0xc3, 0xaf, 0xce, }; static const wycheproof_hmac_test hmac_sha3_256_681 = { .name = "hmac_sha3_256_681", .hash = SHA3_256, .key = hmac_sha3_256_681_key, .keylen = 16, .msg = hmac_sha3_256_681_msg, .msglen = 16, .tag = hmac_sha3_256_681_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 682 for HMAC, tcId is 165 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_682_key[] = { 0x73, 0xef, 0x9e, 0xf1, 0xa4, 0x22, 0x5e, 0x51, 0xe3, 0xc1, 0xdb, 0x3a, 0xce, 0x1f, 0xa2, 0x4f, }; static const unsigned char hmac_sha3_256_682_msg[] = { 0xff, 0xad, 0x38, 0x0d, 0x9a, 0xab, 0xb0, 0xac, 0xed, 0xe5, 0xc1, 0xbf, 0x11, 0x29, 0x25, 0xcd, 0xfc, 0x3d, 0x37, 0x9f, 0xc2, 0x37, 0x6a, 0x4f, 0xe2, 0x64, 0x44, 0x90, 0xd0, 0x43, 0x0a, 0xc3, }; static const unsigned char hmac_sha3_256_682_tag[] = { 0x4c, 0x85, 0xf6, 0x72, 0x58, 0x25, 0x62, 0x26, 0xdc, 0xdd, 0xe6, 0x26, 0xb1, 0x00, 0xda, 0xef, 0x34, 0xde, 0xdb, 0x8c, 0x38, 0xb3, 0x4b, 0xf9, 0xf3, 0xb9, 0xdb, 0x5a, 0xfe, 0x87, 0xae, 0x9b, }; static const wycheproof_hmac_test hmac_sha3_256_682 = { .name = "hmac_sha3_256_682", .hash = SHA3_256, .key = hmac_sha3_256_682_key, .keylen = 16, .msg = hmac_sha3_256_682_msg, .msglen = 32, .tag = hmac_sha3_256_682_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 683 for HMAC, tcId is 166 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_683_key[] = { 0xe3, 0x4f, 0x15, 0xc7, 0xbd, 0x81, 0x99, 0x30, 0xfe, 0x9d, 0x66, 0xe0, 0xc1, 0x66, 0xe6, 0x1c, }; static const unsigned char hmac_sha3_256_683_tag[] = { 0x87, 0x20, 0x26, 0xcd, 0x30, 0xed, 0x84, 0x82, 0xaf, 0x75, 0x08, 0xc0, 0xc5, 0x2c, 0x8c, 0xb6, }; static const wycheproof_hmac_test hmac_sha3_256_683 = { .name = "hmac_sha3_256_683", .hash = SHA3_256, .key = hmac_sha3_256_683_key, .keylen = 16, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_683_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 684 for HMAC, tcId is 167 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_684_key[] = { 0xe0, 0x9e, 0xaa, 0x5a, 0x3f, 0x5e, 0x56, 0xd2, 0x79, 0xd5, 0xe7, 0xa0, 0x33, 0x73, 0xf6, 0xea, }; static const unsigned char hmac_sha3_256_684_msg[] = { 0xef, 0x4e, 0xab, 0x37, 0x18, 0x1f, 0x98, 0x42, 0x3e, 0x53, 0xe9, 0x47, 0xe7, 0x05, 0x0f, 0xd0, }; static const unsigned char hmac_sha3_256_684_tag[] = { 0x67, 0x00, 0xcf, 0xd7, 0xfd, 0xb1, 0xc6, 0x67, 0xea, 0xd4, 0x77, 0xfb, 0x94, 0x2f, 0xf0, 0x3b, }; static const wycheproof_hmac_test hmac_sha3_256_684 = { .name = "hmac_sha3_256_684", .hash = SHA3_256, .key = hmac_sha3_256_684_key, .keylen = 16, .msg = hmac_sha3_256_684_msg, .msglen = 16, .tag = hmac_sha3_256_684_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 685 for HMAC, tcId is 168 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_685_key[] = { 0x9b, 0xd3, 0x90, 0x2e, 0xd0, 0x99, 0x6c, 0x86, 0x9b, 0x57, 0x22, 0x72, 0xe7, 0x6f, 0x38, 0x89, }; static const unsigned char hmac_sha3_256_685_msg[] = { 0xa7, 0xba, 0x19, 0xd4, 0x9e, 0xe1, 0xea, 0x02, 0xf0, 0x98, 0xaa, 0x8e, 0x30, 0xc7, 0x40, 0xd8, 0x93, 0xa4, 0x45, 0x6c, 0xcc, 0x29, 0x40, 0x40, 0x48, 0x4e, 0xd8, 0xa0, 0x0a, 0x55, 0xf9, 0x3e, }; static const unsigned char hmac_sha3_256_685_tag[] = { 0x54, 0x63, 0x2b, 0x0f, 0xfc, 0xbb, 0x37, 0x63, 0xb7, 0x0c, 0x6d, 0xd6, 0xdc, 0x38, 0xed, 0x3a, }; static const wycheproof_hmac_test hmac_sha3_256_685 = { .name = "hmac_sha3_256_685", .hash = SHA3_256, .key = hmac_sha3_256_685_key, .keylen = 16, .msg = hmac_sha3_256_685_msg, .msglen = 32, .tag = hmac_sha3_256_685_tag, .taglen = 16, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 686 for HMAC, tcId is 169 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_686_key[] = { 0x8a, 0x0c, 0x46, 0xeb, 0x8a, 0x29, 0x59, 0xe3, 0x98, 0x65, 0x33, 0x00, 0x79, 0x76, 0x33, 0x41, 0xe7, 0x43, 0x9d, 0xab, 0x14, 0x96, 0x94, 0xee, 0x57, 0xe0, 0xd6, 0x1e, 0xc7, 0x3d, 0x94, 0x7e, 0x1d, 0x53, 0x01, 0xcd, 0x97, 0x4e, 0x18, 0xa5, 0xe0, 0xd1, 0xcf, 0x0d, 0x2c, 0x37, 0xe8, 0xaa, 0xdd, 0x9f, 0xd5, 0x89, 0xd5, 0x7e, 0xf3, 0x2e, 0x47, 0x02, 0x4a, 0x99, 0xbc, 0x3f, 0x70, 0xc0, 0x77, }; static const unsigned char hmac_sha3_256_686_tag[] = { 0x7a, 0x1e, 0xa0, 0x58, 0x73, 0xf7, 0x54, 0xf9, 0x99, 0x30, 0x62, 0x24, 0x34, 0x74, 0xd3, 0x87, 0x4f, 0x4f, 0xff, 0xa8, 0x23, 0xce, 0x16, 0xa8, 0x04, 0xb2, 0x2c, 0xb1, 0x01, 0xa5, 0xb1, 0x00, }; static const wycheproof_hmac_test hmac_sha3_256_686 = { .name = "hmac_sha3_256_686", .hash = SHA3_256, .key = hmac_sha3_256_686_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_686_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 687 for HMAC, tcId is 170 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_687_key[] = { 0x28, 0x77, 0xeb, 0xb8, 0x1f, 0x80, 0x33, 0x4f, 0xd0, 0x05, 0x16, 0x33, 0x74, 0x46, 0xc5, 0xcf, 0x5a, 0xd4, 0xa3, 0xa2, 0xe1, 0x97, 0x26, 0x9e, 0x5b, 0x0a, 0xd1, 0x88, 0x9d, 0xfe, 0x2b, 0x4b, 0x0a, 0xaa, 0x67, 0x6f, 0xac, 0x55, 0xb3, 0x6c, 0xe3, 0xaf, 0xfc, 0x7f, 0x10, 0x92, 0xab, 0x89, 0xc5, 0x32, 0x73, 0xa8, 0x37, 0xbd, 0x5b, 0xc9, 0x4d, 0x1a, 0x9d, 0x9e, 0x5b, 0x02, 0xe9, 0x85, 0x6f, }; static const unsigned char hmac_sha3_256_687_msg[] = { 0xba, 0x44, 0x8d, 0xb8, 0x8f, 0x15, 0x4f, 0x77, 0x50, 0x28, 0xfd, 0xec, 0xf9, 0xe6, 0x75, 0x2d, }; static const unsigned char hmac_sha3_256_687_tag[] = { 0x17, 0x83, 0x19, 0x71, 0xb8, 0x54, 0xb2, 0x21, 0x05, 0x79, 0x09, 0x8b, 0x01, 0x9a, 0xe6, 0x2f, 0x3b, 0xf5, 0x6a, 0xff, 0xbd, 0x0e, 0xcd, 0x3b, 0xac, 0x77, 0xa0, 0x2b, 0xd7, 0x8b, 0x4f, 0x49, }; static const wycheproof_hmac_test hmac_sha3_256_687 = { .name = "hmac_sha3_256_687", .hash = SHA3_256, .key = hmac_sha3_256_687_key, .keylen = 65, .msg = hmac_sha3_256_687_msg, .msglen = 16, .tag = hmac_sha3_256_687_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 688 for HMAC, tcId is 171 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_688_key[] = { 0x21, 0x17, 0x8e, 0x26, 0xbc, 0x28, 0xff, 0xc2, 0x7c, 0x06, 0xf7, 0x62, 0xba, 0x19, 0x0a, 0x62, 0x70, 0x75, 0x85, 0x6d, 0x7c, 0xa6, 0xfe, 0xab, 0x79, 0xac, 0x63, 0x14, 0x9b, 0x17, 0x12, 0x6e, 0x34, 0xfd, 0x9e, 0x55, 0x90, 0xe0, 0xe9, 0x0a, 0xac, 0x80, 0x1d, 0xf0, 0x95, 0x05, 0xd8, 0xaf, 0x2d, 0xd0, 0xa2, 0x70, 0x3b, 0x35, 0x2c, 0x57, 0x3a, 0xc9, 0xd2, 0xcb, 0x06, 0x39, 0x27, 0xf2, 0xaf, }; static const unsigned char hmac_sha3_256_688_msg[] = { 0x7d, 0x5f, 0x1d, 0x6b, 0x99, 0x34, 0x52, 0xb1, 0xb5, 0x3a, 0x43, 0x75, 0x76, 0x0d, 0x10, 0xa2, 0x0d, 0x46, 0xa0, 0xab, 0x9e, 0xc3, 0x94, 0x3f, 0xc4, 0xb0, 0x7a, 0x2c, 0xe7, 0x35, 0xe7, 0x31, }; static const unsigned char hmac_sha3_256_688_tag[] = { 0xa1, 0x4f, 0x88, 0x64, 0xe3, 0xc7, 0x1a, 0x3d, 0xa1, 0xfd, 0x26, 0x87, 0x01, 0x54, 0x7c, 0xee, 0x12, 0xc0, 0xb1, 0xdd, 0xc4, 0xf7, 0x48, 0x0f, 0x25, 0x3b, 0x7c, 0xaf, 0xc3, 0xd0, 0x4e, 0x6a, }; static const wycheproof_hmac_test hmac_sha3_256_688 = { .name = "hmac_sha3_256_688", .hash = SHA3_256, .key = hmac_sha3_256_688_key, .keylen = 65, .msg = hmac_sha3_256_688_msg, .msglen = 32, .tag = hmac_sha3_256_688_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 689 for HMAC, tcId is 172 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_689_key[] = { 0x81, 0x3e, 0x0c, 0x07, 0x8c, 0x22, 0x13, 0x75, 0xe8, 0x05, 0x90, 0xac, 0xe6, 0x77, 0x4e, 0xaf, 0xd2, 0xd2, 0xc2, 0x42, 0x35, 0x09, 0x88, 0xd0, 0x2e, 0xfa, 0x55, 0x0e, 0x05, 0xae, 0xcb, 0xe1, 0x00, 0xc1, 0xb8, 0xbf, 0x15, 0x4c, 0x93, 0x2c, 0xf9, 0xe5, 0x71, 0x77, 0x01, 0x5c, 0x81, 0x6c, 0x42, 0xbc, 0x7f, 0xbc, 0x71, 0xce, 0xaa, 0x53, 0x28, 0xc7, 0x31, 0x6b, 0x7f, 0x0f, 0x30, 0x33, 0x0f, }; static const unsigned char hmac_sha3_256_689_tag[] = { 0x68, 0x1f, 0x84, 0x44, 0x2b, 0xd9, 0x02, 0x23, 0xbd, 0x55, 0x77, 0xa7, 0xbc, 0xe8, 0xb9, 0x3e, }; static const wycheproof_hmac_test hmac_sha3_256_689 = { .name = "hmac_sha3_256_689", .hash = SHA3_256, .key = hmac_sha3_256_689_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_256_689_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 690 for HMAC, tcId is 173 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_690_key[] = { 0x57, 0x13, 0x34, 0x30, 0x96, 0xb0, 0xaa, 0xf0, 0x56, 0x2a, 0x6b, 0x92, 0xc1, 0xa1, 0x55, 0x35, 0x92, 0x41, 0x60, 0x47, 0x5a, 0x4e, 0x42, 0x33, 0x58, 0x91, 0x59, 0x72, 0x8c, 0x56, 0x2e, 0x3b, 0x2a, 0xd9, 0x6f, 0x74, 0x0c, 0x6a, 0x4d, 0xa2, 0xbc, 0x3f, 0x76, 0x8c, 0xe9, 0x8c, 0x9b, 0xd6, 0x6b, 0xac, 0x28, 0xd1, 0x64, 0x6f, 0xf5, 0x92, 0x02, 0x8c, 0x94, 0x0d, 0x45, 0x5f, 0x35, 0xee, 0xb4, }; static const unsigned char hmac_sha3_256_690_msg[] = { 0x71, 0x71, 0x2d, 0xe2, 0xfa, 0xc1, 0xfb, 0x85, 0x56, 0x73, 0xbf, 0xf7, 0x2a, 0xf6, 0x42, 0x57, }; static const unsigned char hmac_sha3_256_690_tag[] = { 0x2e, 0x69, 0x69, 0xe5, 0x7f, 0x7b, 0x33, 0xe9, 0x6a, 0x31, 0xea, 0x19, 0x4f, 0x3e, 0x18, 0x8c, }; static const wycheproof_hmac_test hmac_sha3_256_690 = { .name = "hmac_sha3_256_690", .hash = SHA3_256, .key = hmac_sha3_256_690_key, .keylen = 65, .msg = hmac_sha3_256_690_msg, .msglen = 16, .tag = hmac_sha3_256_690_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 691 for HMAC, tcId is 174 in file hmac_sha3_256_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) static const unsigned char hmac_sha3_256_691_key[] = { 0x72, 0x08, 0xaf, 0xbe, 0xcf, 0x5f, 0x1f, 0x34, 0x82, 0x8f, 0x98, 0xb7, 0x19, 0x41, 0x4e, 0x28, 0x07, 0x16, 0xde, 0x64, 0xf5, 0xed, 0xd1, 0xae, 0x1c, 0x77, 0x41, 0x53, 0xcd, 0x20, 0x22, 0x33, 0x7b, 0xb2, 0x0f, 0xad, 0xe1, 0xb7, 0x85, 0x6f, 0x1d, 0xbf, 0xd4, 0x0e, 0x2b, 0x43, 0x07, 0xf1, 0x29, 0x3c, 0xef, 0xf1, 0x69, 0x2e, 0xe9, 0x0d, 0x8c, 0x90, 0xb5, 0xfd, 0xf9, 0x53, 0xab, 0x01, 0xa5, }; static const unsigned char hmac_sha3_256_691_msg[] = { 0x43, 0xb5, 0x33, 0x02, 0xb6, 0x04, 0xd6, 0x13, 0xe6, 0x2d, 0xb0, 0x02, 0x04, 0x4a, 0x47, 0x82, 0xd5, 0x72, 0xac, 0x8f, 0xbd, 0x3c, 0xd0, 0xec, 0xe9, 0x1b, 0x43, 0xbc, 0x52, 0xe1, 0x8e, 0x98, }; static const unsigned char hmac_sha3_256_691_tag[] = { 0xc6, 0x71, 0x2f, 0x2c, 0x1b, 0x0d, 0xf3, 0x9e, 0xca, 0x97, 0xac, 0x47, 0x2b, 0x25, 0x7e, 0xcd, }; static const wycheproof_hmac_test hmac_sha3_256_691 = { .name = "hmac_sha3_256_691", .hash = SHA3_256, .key = hmac_sha3_256_691_key, .keylen = 65, .msg = hmac_sha3_256_691_msg, .msglen = 32, .tag = hmac_sha3_256_691_tag, .taglen = 16, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha3_256_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) */ /* Test 692 for HMAC, tcId is 1 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_692_key[] = { 0xee, 0x8d, 0xf0, 0x67, 0x85, 0x7d, 0xf2, 0x30, 0x0f, 0xa7, 0x1a, 0x10, 0xc3, 0x09, 0x97, 0x17, 0x8b, 0xb3, 0x79, 0x61, 0x27, 0xb5, 0xec, 0xe5, 0xf2, 0xcc, 0xc1, 0x70, 0x93, 0x2b, 0xe0, 0xe7, 0x8e, 0xa9, 0xb0, 0xa5, 0x93, 0x6c, 0x09, 0x15, 0x7e, 0x67, 0x1c, 0xe7, 0xec, 0x9f, 0xc5, 0x10, }; static const unsigned char hmac_sha3_384_692_tag[] = { 0x7c, 0x87, 0xe3, 0xbf, 0x2a, 0x63, 0x42, 0x8c, 0x20, 0x05, 0xa8, 0x2c, 0x1e, 0xf0, 0xe0, 0x15, 0x25, 0x37, 0xce, 0x7a, 0x6f, 0x49, 0x34, 0x4f, 0x3a, 0x85, 0x27, 0x47, 0x24, 0xe0, 0x75, 0xf9, 0xc8, 0x33, 0xb6, 0xb2, 0xe6, 0xdd, 0x25, 0x7e, 0x60, 0x22, 0x2e, 0x71, 0x26, 0x31, 0x24, 0x26, }; static const wycheproof_hmac_test hmac_sha3_384_692 = { .name = "hmac_sha3_384_692", .hash = SHA3_384, .key = hmac_sha3_384_692_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_692_tag, .taglen = 48, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 693 for HMAC, tcId is 2 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_693_key[] = { 0x97, 0x66, 0x96, 0xc0, 0xdc, 0x97, 0x18, 0x2c, 0xa7, 0x71, 0x97, 0x5c, 0x39, 0x28, 0xff, 0x91, 0x68, 0xef, 0x89, 0xcd, 0x74, 0x0c, 0xd2, 0x29, 0x28, 0x58, 0xfd, 0x91, 0x60, 0x68, 0xa7, 0x02, 0xbc, 0x1d, 0xf7, 0xc6, 0xcd, 0x8e, 0xe1, 0xf0, 0xd2, 0x5e, 0x61, 0xd4, 0xc5, 0x14, 0xcc, 0x5d, }; static const unsigned char hmac_sha3_384_693_msg[] = { 0x2b, }; static const unsigned char hmac_sha3_384_693_tag[] = { 0xb9, 0xc7, 0x7f, 0x78, 0xd4, 0xe7, 0x92, 0x82, 0x19, 0x10, 0x5b, 0x1f, 0xa6, 0x4d, 0x24, 0xa9, 0x8a, 0x81, 0x81, 0x6c, 0xa0, 0xc7, 0x14, 0xd5, 0x42, 0x4d, 0x08, 0x82, 0xce, 0x7b, 0xb7, 0xbe, 0x04, 0xb5, 0xbb, 0x4a, 0xc2, 0xa0, 0x09, 0x2b, 0x4f, 0x5c, 0xe0, 0x6f, 0x04, 0xc8, 0x65, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_384_693 = { .name = "hmac_sha3_384_693", .hash = SHA3_384, .key = hmac_sha3_384_693_key, .keylen = 48, .msg = hmac_sha3_384_693_msg, .msglen = 1, .tag = hmac_sha3_384_693_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 694 for HMAC, tcId is 3 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_694_key[] = { 0xc5, 0x5e, 0xa4, 0xc6, 0x4a, 0x0a, 0x63, 0xe2, 0xd1, 0x4a, 0xd4, 0x25, 0x59, 0xba, 0x7c, 0x81, 0x6b, 0x88, 0x24, 0xd2, 0x63, 0xc2, 0xcc, 0x6a, 0x01, 0x57, 0x61, 0xb5, 0x3f, 0x68, 0x1e, 0x51, 0x43, 0x69, 0xf0, 0xdf, 0xba, 0x5c, 0xde, 0x16, 0x53, 0x20, 0xee, 0x10, 0xa9, 0x6e, 0xb1, 0xfc, }; static const unsigned char hmac_sha3_384_694_msg[] = { 0x5a, 0xbd, }; static const unsigned char hmac_sha3_384_694_tag[] = { 0xd2, 0x68, 0x83, 0xd2, 0x33, 0xad, 0x5a, 0x26, 0x25, 0x7f, 0x5e, 0xbb, 0x08, 0x8e, 0xde, 0x5a, 0x91, 0x55, 0x89, 0x4f, 0xd3, 0x31, 0xa7, 0x9f, 0x89, 0xd3, 0x31, 0xfe, 0x07, 0xd2, 0xba, 0xab, 0xd2, 0xf3, 0x73, 0x5b, 0x95, 0x9a, 0xd4, 0x8a, 0xd2, 0x90, 0xd3, 0x86, 0x64, 0xd0, 0xf8, 0xeb, }; static const wycheproof_hmac_test hmac_sha3_384_694 = { .name = "hmac_sha3_384_694", .hash = SHA3_384, .key = hmac_sha3_384_694_key, .keylen = 48, .msg = hmac_sha3_384_694_msg, .msglen = 2, .tag = hmac_sha3_384_694_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 695 for HMAC, tcId is 4 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_695_key[] = { 0x29, 0x28, 0xd4, 0x65, 0xd9, 0x2f, 0xa4, 0x00, 0x72, 0xca, 0x9d, 0x67, 0x76, 0x1b, 0xe6, 0x6e, 0x49, 0x17, 0x55, 0xe4, 0x34, 0x99, 0x00, 0x3c, 0x10, 0x57, 0xd3, 0xbe, 0xc8, 0x70, 0xf2, 0x55, 0x12, 0x6c, 0x36, 0x58, 0xd0, 0xd8, 0xa0, 0xc7, 0xd2, 0x07, 0xdf, 0x87, 0x10, 0x03, 0x7c, 0xa7, }; static const unsigned char hmac_sha3_384_695_msg[] = { 0xc4, 0x05, 0xae, }; static const unsigned char hmac_sha3_384_695_tag[] = { 0x1c, 0x99, 0x0f, 0x90, 0xe9, 0x0e, 0x65, 0xbf, 0xee, 0x62, 0x54, 0x98, 0x57, 0xbb, 0x10, 0x45, 0x52, 0x00, 0xf4, 0x25, 0xa2, 0x1b, 0xa3, 0xf4, 0xb1, 0x26, 0x36, 0x64, 0x7c, 0x39, 0x1d, 0x56, 0xb4, 0x7e, 0x63, 0xe0, 0xc1, 0x11, 0xb0, 0x78, 0xed, 0xa9, 0x03, 0x24, 0x79, 0x9d, 0xeb, 0x3a, }; static const wycheproof_hmac_test hmac_sha3_384_695 = { .name = "hmac_sha3_384_695", .hash = SHA3_384, .key = hmac_sha3_384_695_key, .keylen = 48, .msg = hmac_sha3_384_695_msg, .msglen = 3, .tag = hmac_sha3_384_695_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 696 for HMAC, tcId is 5 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_696_key[] = { 0x68, 0x6a, 0x37, 0x30, 0x08, 0x5c, 0xc9, 0x44, 0xfc, 0xeb, 0x14, 0x16, 0x28, 0x41, 0x98, 0x18, 0xe6, 0x62, 0xfe, 0x21, 0xe5, 0x2b, 0xea, 0x27, 0x48, 0xf3, 0xb7, 0x04, 0xf8, 0x0c, 0xe8, 0x01, 0x08, 0x6d, 0xb1, 0xe3, 0x06, 0x89, 0x17, 0xb2, 0x42, 0xe6, 0x2b, 0x4d, 0x6e, 0x6e, 0xd6, 0x85, }; static const unsigned char hmac_sha3_384_696_msg[] = { 0x66, 0x01, 0xc6, 0x83, }; static const unsigned char hmac_sha3_384_696_tag[] = { 0x99, 0x11, 0xd4, 0xe5, 0xf3, 0x01, 0x67, 0xec, 0x38, 0x2b, 0x7f, 0x7b, 0x39, 0x43, 0x10, 0xa7, 0xea, 0x5e, 0xcd, 0x03, 0x94, 0xed, 0xde, 0xa9, 0x43, 0x82, 0xf0, 0x5a, 0x8a, 0xf9, 0x53, 0x3b, 0x0b, 0x72, 0x02, 0x47, 0x11, 0x18, 0x0a, 0xdd, 0x60, 0x7d, 0x29, 0x0e, 0x5f, 0x46, 0x02, 0xdc, }; static const wycheproof_hmac_test hmac_sha3_384_696 = { .name = "hmac_sha3_384_696", .hash = SHA3_384, .key = hmac_sha3_384_696_key, .keylen = 48, .msg = hmac_sha3_384_696_msg, .msglen = 4, .tag = hmac_sha3_384_696_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 697 for HMAC, tcId is 6 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_697_key[] = { 0xf2, 0x2d, 0x86, 0x7b, 0x97, 0x2b, 0x23, 0x2e, 0x3f, 0x44, 0x4a, 0x48, 0x8d, 0xd7, 0x94, 0xd1, 0x70, 0x80, 0x7c, 0x70, 0xeb, 0x65, 0x0f, 0x95, 0x2b, 0x61, 0x77, 0x59, 0x6f, 0x76, 0xc5, 0x58, 0xa5, 0xd8, 0x60, 0xd6, 0xf7, 0xbe, 0x0b, 0xe9, 0xe6, 0x66, 0xf9, 0xbd, 0x53, 0x73, 0x2f, 0x8d, }; static const unsigned char hmac_sha3_384_697_msg[] = { 0x15, 0xb2, 0x93, 0x77, 0xe0, }; static const unsigned char hmac_sha3_384_697_tag[] = { 0xae, 0xc4, 0x6f, 0xb0, 0x3a, 0x28, 0xd4, 0xfa, 0x55, 0xa5, 0x49, 0x29, 0x30, 0xd1, 0xcb, 0x37, 0x31, 0xc5, 0xe8, 0x0b, 0xb0, 0xc9, 0x1f, 0x7c, 0x1e, 0x94, 0x86, 0x80, 0xaa, 0x66, 0x6a, 0x10, 0xf0, 0xbc, 0xf5, 0x38, 0x92, 0x79, 0x61, 0xef, 0x30, 0xfa, 0x24, 0x67, 0x3e, 0x9f, 0xfa, 0xf8, }; static const wycheproof_hmac_test hmac_sha3_384_697 = { .name = "hmac_sha3_384_697", .hash = SHA3_384, .key = hmac_sha3_384_697_key, .keylen = 48, .msg = hmac_sha3_384_697_msg, .msglen = 5, .tag = hmac_sha3_384_697_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 698 for HMAC, tcId is 7 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_698_key[] = { 0x3a, 0xc9, 0xab, 0xd5, 0x3d, 0xbd, 0x0f, 0xbb, 0x89, 0x1f, 0x9b, 0x5e, 0x16, 0xdd, 0x45, 0xdf, 0x99, 0x4e, 0x52, 0x83, 0x52, 0x78, 0x32, 0x70, 0x71, 0x38, 0xfc, 0x27, 0x12, 0xba, 0xd9, 0xe3, 0x47, 0x61, 0xe7, 0xd9, 0xc6, 0xd0, 0x5d, 0x46, 0xf2, 0xc8, 0x32, 0x3d, 0xdb, 0x0e, 0xfe, 0x99, }; static const unsigned char hmac_sha3_384_698_msg[] = { 0x5a, 0x34, 0x15, 0x5b, 0x11, 0x15, }; static const unsigned char hmac_sha3_384_698_tag[] = { 0xff, 0x53, 0x91, 0x30, 0x1e, 0x10, 0x5d, 0x0f, 0x18, 0xb8, 0x25, 0x6a, 0xa8, 0xe5, 0xc0, 0x3f, 0x4c, 0x57, 0xf3, 0x41, 0xe0, 0xf6, 0x11, 0x49, 0xcb, 0x62, 0xc0, 0xd2, 0x36, 0x68, 0x26, 0xb8, 0x61, 0x8b, 0x4b, 0xa2, 0x89, 0x4d, 0xe2, 0x35, 0xb7, 0x23, 0x75, 0x5c, 0x1c, 0xbc, 0x7a, 0x45, }; static const wycheproof_hmac_test hmac_sha3_384_698 = { .name = "hmac_sha3_384_698", .hash = SHA3_384, .key = hmac_sha3_384_698_key, .keylen = 48, .msg = hmac_sha3_384_698_msg, .msglen = 6, .tag = hmac_sha3_384_698_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 699 for HMAC, tcId is 8 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_699_key[] = { 0xae, 0x3a, 0xa9, 0x4f, 0xdd, 0x35, 0xe2, 0xbe, 0xf4, 0x04, 0x72, 0xd2, 0x9b, 0xda, 0xd3, 0xa4, 0x09, 0x84, 0x0e, 0xa4, 0x41, 0xc3, 0xd7, 0x02, 0x5c, 0xd7, 0x2f, 0x3e, 0x81, 0xff, 0x56, 0xda, 0x60, 0x21, 0x61, 0xd8, 0x4b, 0x23, 0xd1, 0x63, 0x40, 0x61, 0x38, 0x5b, 0xe3, 0x0c, 0x5b, 0xbd, }; static const unsigned char hmac_sha3_384_699_msg[] = { 0x8a, 0x14, 0x0d, 0x78, 0x1e, 0x71, 0x91, }; static const unsigned char hmac_sha3_384_699_tag[] = { 0xb9, 0x91, 0x81, 0xb9, 0x6e, 0x6d, 0xad, 0xcd, 0xbf, 0x20, 0x3c, 0x39, 0x2a, 0x3b, 0xfa, 0xd1, 0x01, 0x30, 0x55, 0x58, 0x37, 0xee, 0x64, 0x7a, 0x32, 0x0c, 0xa2, 0xb7, 0x23, 0x74, 0x7a, 0x5f, 0x40, 0xbc, 0x48, 0x03, 0xea, 0xdd, 0x90, 0x91, 0x41, 0x80, 0x41, 0xe9, 0x8f, 0xf1, 0x06, 0x58, }; static const wycheproof_hmac_test hmac_sha3_384_699 = { .name = "hmac_sha3_384_699", .hash = SHA3_384, .key = hmac_sha3_384_699_key, .keylen = 48, .msg = hmac_sha3_384_699_msg, .msglen = 7, .tag = hmac_sha3_384_699_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 700 for HMAC, tcId is 9 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_700_key[] = { 0x44, 0xb7, 0x98, 0x52, 0xca, 0xbc, 0xf3, 0xfe, 0x93, 0xd2, 0xff, 0xf5, 0x5d, 0x2a, 0xfe, 0x6a, 0x46, 0xc3, 0x5b, 0x7a, 0xd1, 0x95, 0x4c, 0xe0, 0x88, 0x8d, 0xe7, 0xb4, 0x59, 0xb9, 0x82, 0x72, 0x2f, 0xaf, 0x8b, 0x49, 0x0e, 0x6b, 0x00, 0xe7, 0xbc, 0xab, 0xbd, 0x36, 0xf1, 0x84, 0x43, 0xf5, }; static const unsigned char hmac_sha3_384_700_msg[] = { 0x93, 0x98, 0xcd, 0x25, 0x1d, 0xea, 0xfe, 0x8b, }; static const unsigned char hmac_sha3_384_700_tag[] = { 0x89, 0x68, 0xd5, 0xe0, 0xf3, 0xd1, 0x70, 0xc0, 0xd1, 0x97, 0x7c, 0x7d, 0xf6, 0x7a, 0x3e, 0xc0, 0xbb, 0x63, 0x7b, 0x19, 0xee, 0x73, 0x15, 0x0f, 0x84, 0xd3, 0x5c, 0x8d, 0xa9, 0xdd, 0x02, 0xfd, 0xbf, 0x56, 0x3c, 0x57, 0x37, 0x83, 0x4e, 0xdf, 0x79, 0x07, 0x65, 0xba, 0x2b, 0x47, 0x8e, 0xf0, }; static const wycheproof_hmac_test hmac_sha3_384_700 = { .name = "hmac_sha3_384_700", .hash = SHA3_384, .key = hmac_sha3_384_700_key, .keylen = 48, .msg = hmac_sha3_384_700_msg, .msglen = 8, .tag = hmac_sha3_384_700_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 701 for HMAC, tcId is 10 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_701_key[] = { 0x03, 0xfe, 0xd2, 0xf5, 0x79, 0xa3, 0xeb, 0xde, 0xce, 0xcf, 0xb1, 0x84, 0xeb, 0xe2, 0x98, 0x48, 0x76, 0x11, 0x33, 0x99, 0xc4, 0xa5, 0x93, 0xd9, 0x8b, 0x5f, 0x5e, 0x60, 0x6d, 0xd3, 0x30, 0xfb, 0x39, 0x4c, 0x28, 0x5d, 0x9e, 0xad, 0x60, 0x17, 0x48, 0x25, 0x9b, 0x49, 0x33, 0x35, 0xf8, 0xe5, }; static const unsigned char hmac_sha3_384_701_msg[] = { 0x18, 0xd8, 0x79, 0xb1, 0xf6, 0x3d, 0xf3, 0xac, 0x7a, }; static const unsigned char hmac_sha3_384_701_tag[] = { 0xc7, 0x39, 0xac, 0x7a, 0x01, 0x87, 0x77, 0x4c, 0xb6, 0xcc, 0xf8, 0x10, 0x69, 0xf7, 0x5e, 0xcd, 0xb5, 0xe0, 0x93, 0x31, 0x28, 0x16, 0x41, 0x80, 0x9e, 0x00, 0x33, 0x4d, 0xbb, 0xc5, 0x45, 0x52, 0xc0, 0x1d, 0xb0, 0x7e, 0xaf, 0xad, 0xfc, 0xc2, 0x3c, 0xdb, 0x6c, 0xa3, 0x24, 0xe2, 0xc5, 0xdb, }; static const wycheproof_hmac_test hmac_sha3_384_701 = { .name = "hmac_sha3_384_701", .hash = SHA3_384, .key = hmac_sha3_384_701_key, .keylen = 48, .msg = hmac_sha3_384_701_msg, .msglen = 9, .tag = hmac_sha3_384_701_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 702 for HMAC, tcId is 11 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_702_key[] = { 0xf4, 0xef, 0x48, 0xbf, 0x40, 0x56, 0xd3, 0x9d, 0xbb, 0xa4, 0x15, 0x40, 0x18, 0xc6, 0x3b, 0xdf, 0x29, 0x42, 0x0b, 0x99, 0x91, 0xea, 0x59, 0x4f, 0xf0, 0x5e, 0x3c, 0xc1, 0xcb, 0x02, 0xe1, 0x76, 0xd5, 0x4b, 0xa0, 0x38, 0xa6, 0xb7, 0x86, 0x92, 0x51, 0x9d, 0x67, 0x88, 0xe4, 0x95, 0xbb, 0xab, }; static const unsigned char hmac_sha3_384_702_msg[] = { 0x0a, 0x5d, 0xe1, 0x3c, 0xd9, 0xba, 0x31, 0xc9, 0x44, 0x86, }; static const unsigned char hmac_sha3_384_702_tag[] = { 0xcf, 0x21, 0xc5, 0xc7, 0xb5, 0x6a, 0xe0, 0xff, 0x5f, 0x95, 0xeb, 0xc2, 0xc7, 0xc6, 0xb9, 0xf9, 0x54, 0x20, 0xb2, 0x49, 0x12, 0x1f, 0x9a, 0x97, 0xd9, 0x01, 0xfb, 0x6c, 0x64, 0x96, 0x9e, 0xc9, 0xbe, 0x82, 0xfe, 0x2e, 0x33, 0x6c, 0x66, 0xfd, 0xda, 0x3c, 0xe3, 0x06, 0xfd, 0x42, 0x2a, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_702 = { .name = "hmac_sha3_384_702", .hash = SHA3_384, .key = hmac_sha3_384_702_key, .keylen = 48, .msg = hmac_sha3_384_702_msg, .msglen = 10, .tag = hmac_sha3_384_702_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 703 for HMAC, tcId is 12 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_703_key[] = { 0xfc, 0x77, 0x1f, 0x7c, 0xcd, 0x49, 0x9a, 0x1e, 0xd6, 0x33, 0xd8, 0x68, 0x76, 0xd7, 0x07, 0xb5, 0xf1, 0xd5, 0x3c, 0x6b, 0xcd, 0xf2, 0x1a, 0xa2, 0x90, 0x77, 0x66, 0xab, 0x3c, 0xa7, 0xfa, 0x6c, 0xdd, 0x6a, 0x9b, 0x98, 0x1b, 0x1a, 0x84, 0xa5, 0x28, 0xe8, 0x14, 0x44, 0x30, 0x3f, 0x10, 0x57, }; static const unsigned char hmac_sha3_384_703_msg[] = { 0x03, 0xba, 0x11, 0xf3, 0xf3, 0x17, 0x3b, 0x85, 0x22, 0x6b, 0x25, }; static const unsigned char hmac_sha3_384_703_tag[] = { 0x73, 0x94, 0x25, 0x56, 0xed, 0x0f, 0x29, 0x4c, 0x56, 0x74, 0x44, 0x48, 0x00, 0xc9, 0x3e, 0xba, 0x42, 0x00, 0x60, 0x83, 0xbc, 0xcb, 0xd7, 0xbb, 0xd4, 0x86, 0xa5, 0xff, 0xd5, 0x9a, 0x2b, 0xe0, 0xd8, 0x67, 0x43, 0xcd, 0xcd, 0xbf, 0x6f, 0x76, 0x3f, 0xf7, 0x63, 0xdc, 0xa1, 0x93, 0xcb, 0x0c, }; static const wycheproof_hmac_test hmac_sha3_384_703 = { .name = "hmac_sha3_384_703", .hash = SHA3_384, .key = hmac_sha3_384_703_key, .keylen = 48, .msg = hmac_sha3_384_703_msg, .msglen = 11, .tag = hmac_sha3_384_703_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 704 for HMAC, tcId is 13 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_704_key[] = { 0xb3, 0x99, 0x9d, 0xe6, 0x80, 0xb1, 0x15, 0x50, 0xe1, 0x86, 0x31, 0xc8, 0x19, 0x9f, 0x7e, 0xb8, 0xa7, 0x4e, 0x21, 0xbd, 0xc9, 0xd9, 0x7f, 0x78, 0x12, 0x45, 0xc2, 0xaf, 0x19, 0xf8, 0x54, 0x97, 0xd9, 0xf3, 0x8b, 0x25, 0x0a, 0x56, 0x4e, 0x48, 0x65, 0x0f, 0xd0, 0x0b, 0xe3, 0x65, 0xf1, 0x55, }; static const unsigned char hmac_sha3_384_704_msg[] = { 0x9c, 0x65, 0x8c, 0xb5, 0xe6, 0x01, 0xd8, 0x5d, 0xc3, 0x85, 0x78, 0x63, }; static const unsigned char hmac_sha3_384_704_tag[] = { 0xc9, 0x4c, 0x08, 0x00, 0x81, 0x45, 0x22, 0xd1, 0xfc, 0x04, 0x2d, 0x05, 0xc4, 0xbf, 0x1e, 0xf0, 0xbd, 0x73, 0xc6, 0x1b, 0xc8, 0x47, 0xbf, 0xdc, 0xf3, 0xfa, 0x48, 0x86, 0x75, 0x13, 0x81, 0x5e, 0xce, 0x45, 0x93, 0xaf, 0x5d, 0xd0, 0x3b, 0x25, 0x6e, 0x13, 0x2f, 0x5f, 0x79, 0x89, 0x45, 0x65, }; static const wycheproof_hmac_test hmac_sha3_384_704 = { .name = "hmac_sha3_384_704", .hash = SHA3_384, .key = hmac_sha3_384_704_key, .keylen = 48, .msg = hmac_sha3_384_704_msg, .msglen = 12, .tag = hmac_sha3_384_704_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 705 for HMAC, tcId is 14 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_705_key[] = { 0x88, 0x00, 0x5a, 0x62, 0x86, 0x4e, 0xa6, 0x99, 0xe1, 0x50, 0x96, 0x16, 0xec, 0x48, 0x03, 0x3e, 0x84, 0xd2, 0xe2, 0xa1, 0x3b, 0x8b, 0xc2, 0xe8, 0xa7, 0x6f, 0x2e, 0xcc, 0xbd, 0xb2, 0x07, 0xa9, 0x5a, 0xc8, 0xe2, 0xf5, 0xb5, 0xa7, 0x03, 0xb2, 0x2a, 0x0b, 0x57, 0x1e, 0x8a, 0xcc, 0x59, 0x9a, }; static const unsigned char hmac_sha3_384_705_msg[] = { 0x5a, 0x94, 0xf8, 0x45, 0x41, 0xa7, 0x94, 0xbf, 0x23, 0xd7, 0x2d, 0xb1, 0x6d, }; static const unsigned char hmac_sha3_384_705_tag[] = { 0x10, 0xa3, 0x83, 0x9d, 0xf0, 0x86, 0x54, 0x6e, 0xbf, 0xe7, 0xd5, 0xdb, 0xa2, 0x8d, 0x15, 0xea, 0x4c, 0x27, 0xc3, 0xf4, 0xf1, 0xee, 0x40, 0x2d, 0x1e, 0x0f, 0x63, 0x44, 0x39, 0x06, 0xc5, 0xe3, 0x4a, 0x96, 0x3b, 0x56, 0x90, 0x09, 0x34, 0x84, 0x80, 0x2c, 0x22, 0x8d, 0xd2, 0x6c, 0x1b, 0xd6, }; static const wycheproof_hmac_test hmac_sha3_384_705 = { .name = "hmac_sha3_384_705", .hash = SHA3_384, .key = hmac_sha3_384_705_key, .keylen = 48, .msg = hmac_sha3_384_705_msg, .msglen = 13, .tag = hmac_sha3_384_705_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 706 for HMAC, tcId is 15 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_706_key[] = { 0xb1, 0xcb, 0xda, 0x2c, 0x9a, 0x12, 0xf9, 0x23, 0x15, 0xa5, 0x10, 0x1a, 0xef, 0x31, 0x1e, 0x99, 0xd6, 0xdb, 0x00, 0x2b, 0x0e, 0x04, 0xfb, 0x53, 0xc5, 0x01, 0x06, 0xaa, 0x4d, 0x28, 0xe9, 0xa3, 0x46, 0x69, 0x7b, 0xa9, 0x70, 0x84, 0x57, 0x2e, 0xea, 0x56, 0xcc, 0xfc, 0x4a, 0xd7, 0xe5, 0x72, }; static const unsigned char hmac_sha3_384_706_msg[] = { 0xce, 0x12, 0xc0, 0xc7, 0x8e, 0x3f, 0x6b, 0x27, 0x6a, 0xc5, 0x6e, 0xd7, 0x43, 0x5e, }; static const unsigned char hmac_sha3_384_706_tag[] = { 0xa0, 0x54, 0x3a, 0x37, 0x1f, 0x01, 0x9b, 0xc1, 0x9f, 0x2f, 0xbe, 0xde, 0x34, 0xce, 0x4e, 0xfd, 0xe4, 0x39, 0x84, 0xa0, 0xc5, 0x6f, 0x45, 0x3f, 0x92, 0x3e, 0x15, 0x2a, 0xbf, 0x91, 0x4c, 0x44, 0x12, 0xf4, 0x6b, 0x64, 0xbf, 0x62, 0x6f, 0x22, 0xc3, 0x09, 0xdb, 0x40, 0x3f, 0xcb, 0x77, 0x53, }; static const wycheproof_hmac_test hmac_sha3_384_706 = { .name = "hmac_sha3_384_706", .hash = SHA3_384, .key = hmac_sha3_384_706_key, .keylen = 48, .msg = hmac_sha3_384_706_msg, .msglen = 14, .tag = hmac_sha3_384_706_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 707 for HMAC, tcId is 16 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_707_key[] = { 0x08, 0x51, 0x7e, 0x80, 0x14, 0xe0, 0x0d, 0xb5, 0xc3, 0x7f, 0x2a, 0x20, 0xf9, 0x87, 0xea, 0x2e, 0xc5, 0x2e, 0x79, 0x38, 0xde, 0x01, 0x8a, 0xd6, 0xbe, 0x25, 0x6b, 0xa2, 0x23, 0x68, 0x04, 0x14, 0x4a, 0xd2, 0xa1, 0xbc, 0xc2, 0x42, 0x73, 0x88, 0x62, 0xb4, 0x06, 0x47, 0x00, 0x7e, 0x0a, 0x2c, }; static const unsigned char hmac_sha3_384_707_msg[] = { 0x21, 0xe2, 0xa0, 0xa1, 0x67, 0x78, 0x9a, 0x6b, 0x72, 0x2d, 0x17, 0x37, 0xd9, 0x2f, 0x8b, }; static const unsigned char hmac_sha3_384_707_tag[] = { 0xbb, 0x74, 0x33, 0x79, 0x40, 0xcc, 0x10, 0x7f, 0x0c, 0xbb, 0xf1, 0x19, 0x4b, 0xf6, 0xe7, 0x84, 0xd9, 0xac, 0xd1, 0xd4, 0x92, 0xf1, 0x12, 0xe7, 0xf6, 0xd6, 0x56, 0xee, 0xca, 0x88, 0x1e, 0x09, 0xc5, 0x9f, 0xd6, 0xda, 0xe8, 0x8a, 0x9d, 0xae, 0xca, 0x6d, 0x13, 0xc8, 0xeb, 0x97, 0x82, 0xd1, }; static const wycheproof_hmac_test hmac_sha3_384_707 = { .name = "hmac_sha3_384_707", .hash = SHA3_384, .key = hmac_sha3_384_707_key, .keylen = 48, .msg = hmac_sha3_384_707_msg, .msglen = 15, .tag = hmac_sha3_384_707_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 708 for HMAC, tcId is 17 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_708_key[] = { 0x50, 0x3d, 0x74, 0x78, 0xa7, 0x73, 0xb6, 0x94, 0xd6, 0xe5, 0x52, 0xc9, 0x70, 0x3c, 0xc8, 0xbc, 0x56, 0xfd, 0x49, 0xfa, 0xfc, 0x9a, 0x17, 0xca, 0xb8, 0xb0, 0x33, 0x2d, 0xca, 0x8d, 0x49, 0x33, 0x6f, 0xa7, 0xe9, 0xec, 0x2b, 0xcb, 0x56, 0x25, 0x3f, 0xe5, 0xbb, 0x50, 0x4e, 0x3e, 0x7f, 0x7f, }; static const unsigned char hmac_sha3_384_708_msg[] = { 0xd9, 0x6e, 0x6f, 0xed, 0x89, 0x3a, 0xdd, 0xfd, 0x92, 0x37, 0xc8, 0x1c, 0x4f, 0x4e, 0x34, 0x1b, }; static const unsigned char hmac_sha3_384_708_tag[] = { 0x86, 0x51, 0xde, 0x54, 0x8c, 0x51, 0x10, 0xfe, 0x01, 0x12, 0xd2, 0x6c, 0x7e, 0x0a, 0x2f, 0x24, 0x4f, 0x84, 0xae, 0xff, 0x6b, 0xaf, 0x52, 0x67, 0xcf, 0xd3, 0xaf, 0xdb, 0x54, 0x4b, 0xb0, 0xa5, 0xc1, 0xb2, 0x9e, 0x9b, 0x78, 0xa2, 0xe9, 0x49, 0x9e, 0x2c, 0x4f, 0x62, 0xc0, 0xf1, 0x6e, 0x4a, }; static const wycheproof_hmac_test hmac_sha3_384_708 = { .name = "hmac_sha3_384_708", .hash = SHA3_384, .key = hmac_sha3_384_708_key, .keylen = 48, .msg = hmac_sha3_384_708_msg, .msglen = 16, .tag = hmac_sha3_384_708_tag, .taglen = 48, .result = 1, .comment = ", tcId is 17 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 709 for HMAC, tcId is 18 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_709_key[] = { 0x41, 0x34, 0x1b, 0xab, 0x90, 0x2e, 0x76, 0x7d, 0x4d, 0x19, 0x64, 0xc0, 0xac, 0xfe, 0xcf, 0x46, 0xef, 0xf1, 0xb0, 0x2b, 0x64, 0x55, 0xbc, 0xb2, 0x09, 0x7d, 0xe9, 0xc1, 0x54, 0xbe, 0x1f, 0x66, 0x7f, 0x21, 0xbe, 0x07, 0x6d, 0xe1, 0x8c, 0xd2, 0xc1, 0x5c, 0x00, 0x58, 0x96, 0xfc, 0xa8, 0x7f, }; static const unsigned char hmac_sha3_384_709_msg[] = { 0x4c, 0x43, 0xac, 0x7d, 0xe3, 0x63, 0x1c, 0xc8, 0x6f, 0x4d, 0xa7, 0x2f, 0xe6, 0xb6, 0xa5, 0x52, 0xf1, }; static const unsigned char hmac_sha3_384_709_tag[] = { 0x3b, 0xc4, 0x75, 0x72, 0x11, 0x53, 0x2a, 0x6c, 0x6a, 0xe9, 0x64, 0x08, 0x7e, 0xc9, 0x98, 0x5f, 0x89, 0xd0, 0x2b, 0x39, 0x25, 0xd9, 0x10, 0x64, 0xcd, 0x09, 0xe6, 0xf3, 0x9e, 0x5b, 0xea, 0x6a, 0xe4, 0x51, 0xa1, 0xf4, 0xa7, 0x23, 0xab, 0xf2, 0xc9, 0x94, 0xd6, 0x3f, 0xb5, 0xb8, 0x07, 0x72, }; static const wycheproof_hmac_test hmac_sha3_384_709 = { .name = "hmac_sha3_384_709", .hash = SHA3_384, .key = hmac_sha3_384_709_key, .keylen = 48, .msg = hmac_sha3_384_709_msg, .msglen = 17, .tag = hmac_sha3_384_709_tag, .taglen = 48, .result = 1, .comment = ", tcId is 18 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 710 for HMAC, tcId is 19 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_710_key[] = { 0xc2, 0xf8, 0x3b, 0xe1, 0xac, 0xce, 0x7b, 0x89, 0xa5, 0xf9, 0xe9, 0xea, 0x7e, 0x4c, 0x4f, 0x8b, 0x0f, 0x43, 0x19, 0x98, 0x6f, 0xbe, 0x47, 0x9f, 0xa3, 0xb4, 0xa3, 0xc2, 0x98, 0x16, 0x83, 0x62, 0x39, 0x3b, 0x56, 0xea, 0x03, 0xb5, 0xce, 0xf7, 0x7f, 0x48, 0xe5, 0xa7, 0x2a, 0xbe, 0x6d, 0x08, }; static const unsigned char hmac_sha3_384_710_msg[] = { 0x8d, 0xd0, 0xcd, 0x78, 0x6c, 0xd8, 0x00, 0xff, 0xeb, 0xec, 0x09, 0x87, 0x28, 0x92, 0x3d, 0x69, 0x24, 0x9d, 0x32, 0x23, 0xc4, 0xc5, 0x95, 0xcb, }; static const unsigned char hmac_sha3_384_710_tag[] = { 0x55, 0x2f, 0x35, 0xf9, 0x43, 0x1c, 0xb7, 0xf7, 0x6f, 0xce, 0x30, 0xc7, 0x5d, 0x1a, 0x6d, 0x22, 0x40, 0x38, 0x59, 0xe2, 0x57, 0xf6, 0x46, 0xfe, 0x52, 0xb2, 0xdc, 0x9c, 0x7c, 0xfc, 0x7f, 0x50, 0x67, 0x0f, 0xbf, 0x7b, 0xbb, 0x62, 0xf9, 0x55, 0x15, 0xf6, 0xaa, 0xe0, 0xb1, 0xd4, 0x57, 0x92, }; static const wycheproof_hmac_test hmac_sha3_384_710 = { .name = "hmac_sha3_384_710", .hash = SHA3_384, .key = hmac_sha3_384_710_key, .keylen = 48, .msg = hmac_sha3_384_710_msg, .msglen = 24, .tag = hmac_sha3_384_710_tag, .taglen = 48, .result = 1, .comment = ", tcId is 19 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 711 for HMAC, tcId is 20 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_711_key[] = { 0x6b, 0xd2, 0xae, 0xe9, 0xdd, 0x98, 0xd6, 0xb6, 0x60, 0x9f, 0xce, 0x82, 0x18, 0x1b, 0x10, 0xc2, 0x0b, 0xba, 0x86, 0x1d, 0xa6, 0x8a, 0x15, 0x90, 0x58, 0x6f, 0xab, 0x08, 0xc5, 0xe9, 0xe9, 0x0f, 0xf5, 0x84, 0x04, 0x7d, 0xb4, 0x76, 0x08, 0x28, 0x64, 0x3f, 0xea, 0x38, 0x08, 0x71, 0x60, 0xe4, }; static const unsigned char hmac_sha3_384_711_msg[] = { 0x33, 0x23, 0x6a, 0x9d, 0xe6, 0x03, 0xc1, 0xe4, 0xf5, 0xe1, 0x11, 0x64, 0x22, 0x47, 0x40, 0x62, 0x7d, 0x10, 0xf6, 0x00, 0x8e, 0xb7, 0x3e, 0xc2, 0x64, 0x23, 0x21, 0xbf, 0x0b, 0x82, 0xd5, 0x79, }; static const unsigned char hmac_sha3_384_711_tag[] = { 0xd4, 0x51, 0x74, 0xdf, 0x32, 0x41, 0xdd, 0xb1, 0xa0, 0x89, 0x01, 0x78, 0xfa, 0x4a, 0xa5, 0x45, 0x23, 0x69, 0x9b, 0x23, 0xbe, 0x61, 0xa9, 0x61, 0x66, 0x33, 0x63, 0x1a, 0x4e, 0xf5, 0xe3, 0x9b, 0xd2, 0xd8, 0x8f, 0x42, 0xbd, 0x50, 0x16, 0xaa, 0x8b, 0xc1, 0x14, 0x80, 0x56, 0xd8, 0x52, 0x7c, }; static const wycheproof_hmac_test hmac_sha3_384_711 = { .name = "hmac_sha3_384_711", .hash = SHA3_384, .key = hmac_sha3_384_711_key, .keylen = 48, .msg = hmac_sha3_384_711_msg, .msglen = 32, .tag = hmac_sha3_384_711_tag, .taglen = 48, .result = 1, .comment = ", tcId is 20 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 712 for HMAC, tcId is 21 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_712_key[] = { 0x2f, 0x98, 0xba, 0x2c, 0xea, 0xad, 0xc5, 0xba, 0x08, 0x88, 0x0a, 0x35, 0xcb, 0x00, 0x80, 0xdc, 0x87, 0x0a, 0x57, 0x34, 0xa7, 0x82, 0xeb, 0xe3, 0x1c, 0x4b, 0xab, 0x10, 0x0f, 0xf8, 0x78, 0x6d, 0xcc, 0x3b, 0xe6, 0xde, 0x18, 0x48, 0x2e, 0xa5, 0xd1, 0xb3, 0xbf, 0x14, 0xae, 0xab, 0xb4, 0x70, }; static const unsigned char hmac_sha3_384_712_msg[] = { 0x2d, 0x74, 0xa6, 0x6d, 0xac, 0xf1, 0x2e, 0xdb, 0x85, 0xef, 0x30, 0x73, 0xfe, 0xaf, 0xd1, 0x22, 0x88, 0x9c, 0xb6, 0x34, 0xad, 0xd0, 0x0f, 0xf0, 0x39, 0x5d, 0x22, 0x4b, 0x4f, 0xf8, 0xb5, 0xd5, 0xd6, 0x7c, 0xa6, 0x41, 0x9b, 0x68, 0x26, 0xab, 0xff, 0xdb, 0x41, 0xba, 0xb4, 0x27, 0xd5, }; static const unsigned char hmac_sha3_384_712_tag[] = { 0x00, 0xdd, 0x35, 0xf1, 0x0e, 0x7f, 0xc7, 0xf1, 0x64, 0x6d, 0x25, 0x0a, 0xbd, 0xf4, 0x37, 0x89, 0x3f, 0x52, 0x38, 0x9d, 0xf7, 0x61, 0xfd, 0xf2, 0x78, 0x40, 0xaa, 0x13, 0x74, 0xdb, 0x78, 0x6a, 0x22, 0x36, 0x5b, 0xe5, 0xa3, 0x3e, 0x09, 0xad, 0xaa, 0xff, 0xee, 0x19, 0x51, 0x51, 0x73, 0xd5, }; static const wycheproof_hmac_test hmac_sha3_384_712 = { .name = "hmac_sha3_384_712", .hash = SHA3_384, .key = hmac_sha3_384_712_key, .keylen = 48, .msg = hmac_sha3_384_712_msg, .msglen = 47, .tag = hmac_sha3_384_712_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 713 for HMAC, tcId is 22 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_713_key[] = { 0x5e, 0x5f, 0x60, 0xe4, 0x0d, 0x84, 0xc7, 0xca, 0x26, 0x08, 0xaf, 0x3b, 0xcc, 0x6e, 0x04, 0xab, 0xc5, 0xf8, 0xb7, 0xca, 0x73, 0x0a, 0x78, 0xaf, 0x7f, 0x6f, 0x03, 0x2e, 0x5a, 0x15, 0x01, 0x69, 0x5b, 0xd9, 0x1f, 0x3b, 0xeb, 0xb2, 0x85, 0x90, 0xaf, 0x1d, 0xb9, 0x0d, 0x83, 0x90, 0xca, 0x58, }; static const unsigned char hmac_sha3_384_713_msg[] = { 0x2e, 0xfe, 0x6a, 0x14, 0xea, 0x8d, 0x67, 0x9e, 0x62, 0xdb, 0xce, 0xdf, 0x35, 0xe6, 0x18, 0x52, 0x27, 0x8c, 0x83, 0xc5, 0x4a, 0xdb, 0xe1, 0xf1, 0xc7, 0x2c, 0xb1, 0xa7, 0x46, 0xb1, 0x1c, 0xff, 0x8c, 0xb4, 0xfc, 0x3a, 0x2c, 0x3a, 0xcd, 0x44, 0x25, 0x5d, 0x51, 0xc0, 0x20, 0xca, 0x6d, 0x47, }; static const unsigned char hmac_sha3_384_713_tag[] = { 0xf0, 0x3c, 0x73, 0x31, 0xe8, 0xc7, 0x08, 0xa2, 0x57, 0xe7, 0x55, 0x07, 0x18, 0xd9, 0x64, 0xc0, 0xf7, 0xe1, 0xac, 0x7b, 0xf5, 0x2e, 0x9d, 0xb6, 0xab, 0x6f, 0x05, 0x56, 0xb3, 0xa5, 0x75, 0xfd, 0xa6, 0xf1, 0x67, 0x86, 0x08, 0xf6, 0xe6, 0x3c, 0xa3, 0xf2, 0xeb, 0x8d, 0x37, 0x1b, 0x07, 0xde, }; static const wycheproof_hmac_test hmac_sha3_384_713 = { .name = "hmac_sha3_384_713", .hash = SHA3_384, .key = hmac_sha3_384_713_key, .keylen = 48, .msg = hmac_sha3_384_713_msg, .msglen = 48, .tag = hmac_sha3_384_713_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 714 for HMAC, tcId is 23 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_714_key[] = { 0xbc, 0x31, 0x0b, 0xc3, 0x91, 0x3d, 0x9f, 0xe5, 0x9e, 0x20, 0x12, 0xa0, 0x58, 0xc9, 0xe1, 0x50, 0x53, 0x4d, 0x25, 0x61, 0x1e, 0x36, 0x20, 0x6c, 0xf0, 0x7c, 0xca, 0xef, 0xe1, 0x53, 0xf3, 0x8e, 0xb0, 0xea, 0xad, 0x99, 0x41, 0xb6, 0x88, 0x3d, 0xfb, 0xce, 0x01, 0xbc, 0xb5, 0x19, 0x60, 0x41, }; static const unsigned char hmac_sha3_384_714_msg[] = { 0x9f, 0x07, 0x47, 0xd7, 0x39, 0x6b, 0xfb, 0xe0, 0x1c, 0xf3, 0xe8, 0x53, 0x61, 0xe5, 0x00, 0x85, 0xe0, 0xa9, 0x1a, 0x74, 0x90, 0xb9, 0x94, 0x03, 0x1d, 0x81, 0x85, 0x1b, 0x72, 0x50, 0x65, 0x99, 0x3f, 0x45, 0xda, 0xd0, 0xd6, 0x0d, 0x79, 0x4a, 0xed, 0xec, 0x7b, 0xa5, 0xd9, 0xd6, 0xdb, 0xbe, 0xe4, }; static const unsigned char hmac_sha3_384_714_tag[] = { 0xaa, 0xfe, 0x3d, 0x55, 0x3f, 0x03, 0x3f, 0x4d, 0xe7, 0x3a, 0xac, 0x4c, 0x67, 0x66, 0x58, 0x3d, 0x5b, 0x2a, 0xfa, 0x65, 0xd0, 0x37, 0x58, 0x61, 0x50, 0x66, 0x30, 0x8b, 0xc5, 0xae, 0x26, 0xed, 0x93, 0xf2, 0x8d, 0xfe, 0x6d, 0xed, 0x54, 0x10, 0x4e, 0xad, 0xfc, 0xd4, 0x3c, 0x16, 0xb2, 0x84, }; static const wycheproof_hmac_test hmac_sha3_384_714 = { .name = "hmac_sha3_384_714", .hash = SHA3_384, .key = hmac_sha3_384_714_key, .keylen = 48, .msg = hmac_sha3_384_714_msg, .msglen = 49, .tag = hmac_sha3_384_714_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 715 for HMAC, tcId is 24 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_715_key[] = { 0xdc, 0x77, 0x0c, 0x64, 0xd0, 0x0d, 0x15, 0x6e, 0x43, 0xcb, 0x74, 0x97, 0x0e, 0x3a, 0x1a, 0x2a, 0xd2, 0x8b, 0x6d, 0x9e, 0xc6, 0xb2, 0xb6, 0xe5, 0xac, 0x3e, 0x35, 0x6a, 0x99, 0xf8, 0x79, 0xcb, 0x62, 0x0f, 0x00, 0x34, 0x0c, 0x04, 0x4c, 0xc1, 0xf3, 0x1b, 0xdc, 0xcf, 0xa0, 0xdb, 0xd1, 0x77, }; static const unsigned char hmac_sha3_384_715_msg[] = { 0x40, 0x3f, 0xd8, 0xe3, 0xef, 0x51, 0xb6, 0x53, 0x9d, 0xb6, 0x58, 0xa8, 0x94, 0xbe, 0x85, 0xb5, 0x8f, 0xbc, 0x84, 0x88, 0x1e, 0x61, 0xc5, 0xe0, 0xcb, 0x13, 0xae, 0x42, 0x1a, 0x09, 0xd3, 0x1d, 0x78, 0x06, 0x03, 0x25, 0x6d, 0x39, 0x0e, 0xdd, 0x05, 0x6d, 0x19, 0x08, 0x56, 0xbe, 0x00, 0xad, 0x20, 0xa7, 0x04, 0x8f, 0x0c, 0x67, 0x41, 0x6f, 0xe8, 0xe0, 0x28, 0x84, 0x08, 0x61, 0x55, 0xf4, 0x26, 0x32, 0x62, 0xe8, 0xc1, 0x27, 0x55, 0x04, 0xd4, 0xf9, 0x1f, 0x27, 0x51, 0xd3, 0xc3, 0xdc, 0xcd, 0x44, 0x09, 0xff, 0x2b, 0x45, 0xe4, 0x1d, 0xe9, 0x3f, 0x7b, 0x10, 0x4d, 0x58, 0xf6, 0xe1, 0x5b, 0xac, 0xb6, 0x2a, 0xce, 0x97, 0x00, 0x61, 0x5e, 0xcc, 0x1b, 0x30, 0xa0, 0xcc, 0x1b, 0x35, }; static const unsigned char hmac_sha3_384_715_tag[] = { 0x34, 0x70, 0x6c, 0xd3, 0x59, 0x78, 0x60, 0x73, 0x3b, 0x5e, 0x65, 0x1f, 0x99, 0xd3, 0x50, 0xe3, 0x08, 0xf5, 0x96, 0xdd, 0xb5, 0x2b, 0x01, 0xe1, 0x85, 0xbb, 0x38, 0xa1, 0x81, 0x3b, 0xbd, 0x91, 0xe6, 0xe4, 0xc6, 0x4c, 0x4f, 0xa6, 0x83, 0xd4, 0x80, 0x3c, 0x87, 0x8f, 0xc5, 0xb4, 0x20, 0x52, }; static const wycheproof_hmac_test hmac_sha3_384_715 = { .name = "hmac_sha3_384_715", .hash = SHA3_384, .key = hmac_sha3_384_715_key, .keylen = 48, .msg = hmac_sha3_384_715_msg, .msglen = 112, .tag = hmac_sha3_384_715_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 716 for HMAC, tcId is 25 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_716_key[] = { 0xcc, 0xa9, 0x29, 0x9c, 0x7b, 0xdc, 0x26, 0xa4, 0xb5, 0x95, 0x05, 0x5c, 0x99, 0xca, 0x23, 0xbe, 0xc8, 0xed, 0x11, 0xb5, 0xde, 0xed, 0xa9, 0x1f, 0x83, 0xe2, 0x36, 0x5e, 0x73, 0x40, 0x39, 0x5c, 0xee, 0xf4, 0xe8, 0x6e, 0x5c, 0xd9, 0x1f, 0x25, 0x93, 0xbc, 0xfe, 0xc4, 0x98, 0xa6, 0x7f, 0xc9, }; static const unsigned char hmac_sha3_384_716_msg[] = { 0xa0, 0x5b, 0x40, 0xb8, 0xd3, 0xa7, 0xbc, 0x7b, 0x75, 0xb0, 0xe9, 0x73, 0x09, 0xc9, 0xbd, 0x1c, 0x9d, 0x87, 0x55, 0xc1, 0xff, 0x52, 0x45, 0xef, 0x63, 0x08, 0xa6, 0xa5, 0xca, 0xd3, 0xec, 0xfb, 0xcb, 0x63, 0x64, 0xb4, 0x1c, 0xa6, 0xf3, 0xd2, 0x4b, 0xbe, 0xe8, 0x44, 0xd6, 0x20, 0x4d, 0x10, 0x26, 0xab, 0xe3, 0x45, 0xaf, 0x7b, 0xde, 0xc1, 0x14, 0xa3, 0x73, 0xb1, 0x09, 0xaa, 0x57, 0x24, 0xb7, 0x38, 0xd5, 0x0a, 0xb7, 0xa8, 0x26, 0xc2, 0x68, 0xe8, 0x73, 0x70, 0x9f, 0x8b, 0x35, 0x13, 0x5a, 0x87, 0x00, 0x45, 0xd5, 0xfb, 0x9d, 0xaa, 0x82, 0xd3, 0xc2, 0x45, 0xb5, 0x33, 0x89, 0x17, 0x35, 0x4e, 0x72, 0xb3, 0x05, 0x8c, 0x9a, 0x4b, 0x80, 0x71, 0x17, 0x46, 0x52, 0x17, 0xd7, 0xd1, 0x4f, 0x36, 0xf8, 0xa8, 0xd4, 0xe9, 0x7b, 0xc3, 0xb9, 0x35, 0x87, 0xc9, 0x26, 0x41, 0xe7, }; static const unsigned char hmac_sha3_384_716_tag[] = { 0x53, 0x7d, 0xf9, 0xc4, 0x48, 0xeb, 0xe5, 0xad, 0x42, 0xe1, 0x56, 0x87, 0xa9, 0xfe, 0x9f, 0xd7, 0x6c, 0x3b, 0x8c, 0xd8, 0x54, 0x48, 0x10, 0x90, 0x11, 0x8c, 0x63, 0xe5, 0xe6, 0xe2, 0xbc, 0xc1, 0xa1, 0xf8, 0xdc, 0x6d, 0x78, 0x24, 0xee, 0xab, 0x48, 0x23, 0xc3, 0xab, 0x4d, 0xe5, 0x5e, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_384_716 = { .name = "hmac_sha3_384_716", .hash = SHA3_384, .key = hmac_sha3_384_716_key, .keylen = 48, .msg = hmac_sha3_384_716_msg, .msglen = 127, .tag = hmac_sha3_384_716_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 717 for HMAC, tcId is 26 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_717_key[] = { 0xc7, 0x28, 0xe6, 0x5e, 0x08, 0xd9, 0x29, 0x6f, 0xe3, 0xcd, 0xf2, 0xde, 0xdb, 0x49, 0xc8, 0x1a, 0x30, 0xb6, 0x03, 0xa6, 0x25, 0x69, 0xee, 0xce, 0x4e, 0xe5, 0xd0, 0x1e, 0x9a, 0x32, 0xae, 0x3b, 0xcb, 0x4e, 0xc1, 0x63, 0xe4, 0x55, 0xe4, 0x52, 0x58, 0x24, 0x54, 0xce, 0xef, 0xef, 0xc0, 0x46, }; static const unsigned char hmac_sha3_384_717_msg[] = { 0xe6, 0xc6, 0xba, 0xc8, 0x7c, 0x17, 0xe2, 0x69, 0xa4, 0x71, 0x43, 0x4c, 0xa9, 0x56, 0x84, 0x01, 0x45, 0x1d, 0x78, 0xc2, 0x44, 0x4a, 0x9d, 0x6e, 0xdc, 0xda, 0x3c, 0xda, 0xb5, 0x1c, 0x5b, 0xed, 0x1c, 0x19, 0xea, 0xf3, 0x43, 0x26, 0x58, 0x0f, 0xd8, 0x5a, 0xe5, 0x23, 0x6a, 0xd5, 0x1b, 0xc5, 0xda, 0xe3, 0x86, 0xb3, 0x61, 0x01, 0xf5, 0x46, 0x95, 0xc5, 0x95, 0xee, 0xed, 0xcd, 0xd0, 0x18, 0x2a, 0x4a, 0x11, 0x7f, 0x80, 0x93, 0xf4, 0xf4, 0x81, 0x2e, 0x03, 0xdb, 0x39, 0x6e, 0xde, 0x98, 0x49, 0xd1, 0x93, 0xe7, 0x72, 0x20, 0x81, 0xae, 0xec, 0x4b, 0xe6, 0xc4, 0xca, 0xf6, 0xc9, 0x79, 0xd3, 0x6e, 0xad, 0x56, 0x63, 0x4a, 0x21, 0xbe, 0x21, 0x16, 0x2e, 0xa2, 0x32, 0xde, 0xc9, 0xcf, 0xfd, 0xbd, 0x24, 0x74, 0x24, 0x58, 0x78, 0xdc, 0xa3, 0x69, 0xe8, 0x14, 0xfd, 0x02, 0x83, 0x03, }; static const unsigned char hmac_sha3_384_717_tag[] = { 0x0d, 0x5b, 0xcf, 0xf1, 0xb6, 0x50, 0xc2, 0xac, 0x70, 0x26, 0x2e, 0x1e, 0xf6, 0xb7, 0x4d, 0xcc, 0xdc, 0x5b, 0x31, 0xec, 0xfc, 0x32, 0xe2, 0xe3, 0xa8, 0x62, 0xdd, 0x61, 0xe8, 0xe6, 0x36, 0x43, 0x0e, 0x62, 0x3b, 0xfd, 0x62, 0x0a, 0x8e, 0x2a, 0xaa, 0x98, 0xc1, 0x38, 0x89, 0x95, 0x60, 0xda, }; static const wycheproof_hmac_test hmac_sha3_384_717 = { .name = "hmac_sha3_384_717", .hash = SHA3_384, .key = hmac_sha3_384_717_key, .keylen = 48, .msg = hmac_sha3_384_717_msg, .msglen = 128, .tag = hmac_sha3_384_717_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 718 for HMAC, tcId is 27 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_718_key[] = { 0x90, 0xc4, 0x21, 0x5d, 0xc3, 0xf2, 0x37, 0x43, 0x50, 0x47, 0xfe, 0xfd, 0xd8, 0x63, 0x8d, 0x33, 0x9a, 0x3f, 0xc6, 0x6f, 0xca, 0x06, 0xc5, 0x06, 0x3e, 0xac, 0xbd, 0xa0, 0x02, 0xab, 0x33, 0x5e, 0x62, 0x16, 0x05, 0xf6, 0x72, 0xf3, 0xda, 0x9f, 0x64, 0x1f, 0xae, 0x11, 0x0a, 0xfc, 0x3e, 0x7b, }; static const unsigned char hmac_sha3_384_718_msg[] = { 0x1e, 0xbc, 0x22, 0xc3, 0x03, 0x1b, 0x64, 0x61, 0x5e, 0xb6, 0xf1, 0xa0, 0x69, 0x6e, 0x33, 0xb7, 0xdf, 0x13, 0x9a, 0x4b, 0x89, 0x1d, 0x3e, 0x67, 0x21, 0xcc, 0x26, 0xc0, 0x5d, 0x55, 0xde, 0x79, 0x0d, 0xca, 0x62, 0x36, 0x68, 0xc1, 0x03, 0x08, 0x48, 0x5d, 0x38, 0xe9, 0x5e, 0xc4, 0x76, 0x9f, 0xa4, 0x43, 0x0c, 0xa3, 0xeb, 0xc2, 0x5d, 0xa9, 0xf5, 0xd3, 0x1c, 0x97, 0x26, 0x74, 0x51, 0x7d, 0x9a, 0x22, 0x22, 0xe6, 0xb9, 0x7d, 0x8d, 0xef, 0x65, 0x12, 0xaf, 0x09, 0x6c, 0x6d, 0x14, 0x80, 0xd8, 0x3a, 0x22, 0x9c, 0x84, 0xb7, 0xf2, 0x8c, 0x80, 0x18, 0x4b, 0x6b, 0xeb, 0xf3, 0xf4, 0xef, 0xf5, 0xfc, 0x4e, 0x5c, 0x6c, 0xfe, 0xa4, 0xf8, 0xeb, 0xa9, 0xa9, 0x57, 0xf7, 0x91, 0x3b, 0x20, 0xa8, 0x8a, 0xd1, 0x73, 0x4f, 0x7c, 0x38, 0x54, 0x7e, 0x93, 0x4d, 0x1d, 0xbf, 0x2d, 0x73, 0xdb, 0xd6, 0x1e, 0x31, 0xfb, 0x15, 0x83, 0xc7, 0xb6, 0x57, 0x7a, 0x17, 0x1e, 0x7d, 0x02, 0xf1, 0x90, 0x45, 0x12, 0x6a, 0xc2, 0x97, 0x3d, 0x85, 0x5b, 0xc1, 0x8d, 0x34, 0xd3, 0x23, 0x26, 0xd1, 0xe2, 0x16, 0xda, 0x58, 0x36, 0x6a, 0x60, 0x03, 0x34, 0x50, 0x09, 0x11, 0x28, 0xae, 0x26, 0xa4, 0x79, 0x06, 0x9b, 0xba, 0x7b, 0x91, 0xb2, 0xab, 0x7f, 0x3c, 0x5f, 0xbc, 0xde, 0x39, 0x1d, 0xe3, 0xca, 0x11, 0x4b, 0x95, 0x1d, 0x68, 0x52, 0xf9, 0x27, 0x95, 0xf8, 0x02, 0x3d, 0x7a, 0x29, 0xa7, 0xf4, 0xce, 0x61, 0xe9, 0x24, 0x1b, 0x4f, 0x23, 0x5d, 0x21, 0xe8, 0x99, 0x08, 0x71, 0x67, 0xab, 0x3f, 0x3a, 0x0e, 0x93, 0x21, 0xc7, 0x94, 0x2b, 0x16, 0x51, 0x78, 0x78, 0x8d, 0xf4, 0x8d, 0x3b, 0x10, 0x6b, 0x20, 0x3e, 0xc1, 0xe0, 0x1d, 0x29, 0xbd, 0xa4, 0x1a, 0x99, 0xac, 0x0d, 0x2c, 0x00, }; static const unsigned char hmac_sha3_384_718_tag[] = { 0xe1, 0x49, 0x12, 0xa4, 0xd0, 0xa3, 0xdd, 0x7f, 0xee, 0x54, 0xbe, 0x80, 0x55, 0xf7, 0x8f, 0x14, 0xa7, 0x2f, 0x1d, 0x48, 0xbe, 0xb2, 0x42, 0x26, 0x38, 0x0c, 0xef, 0xd1, 0xef, 0xc7, 0x33, 0xaa, 0xd1, 0x29, 0xe5, 0x04, 0xbe, 0xba, 0xd9, 0x8d, 0x1f, 0xf7, 0xfc, 0x30, 0x37, 0x50, 0x07, 0x3a, }; static const wycheproof_hmac_test hmac_sha3_384_718 = { .name = "hmac_sha3_384_718", .hash = SHA3_384, .key = hmac_sha3_384_718_key, .keylen = 48, .msg = hmac_sha3_384_718_msg, .msglen = 255, .tag = hmac_sha3_384_718_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 719 for HMAC, tcId is 28 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_719_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_719_tag[] = { 0xd1, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_719 = { .name = "hmac_sha3_384_719", .hash = SHA3_384, .key = hmac_sha3_384_719_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_719_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 720 for HMAC, tcId is 29 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_720_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_720_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_720_tag[] = { 0x66, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_720 = { .name = "hmac_sha3_384_720", .hash = SHA3_384, .key = hmac_sha3_384_720_key, .keylen = 48, .msg = hmac_sha3_384_720_msg, .msglen = 16, .tag = hmac_sha3_384_720_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 721 for HMAC, tcId is 30 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_721_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_721_tag[] = { 0xd2, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_721 = { .name = "hmac_sha3_384_721", .hash = SHA3_384, .key = hmac_sha3_384_721_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_721_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 722 for HMAC, tcId is 31 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_722_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_722_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_722_tag[] = { 0x65, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_722 = { .name = "hmac_sha3_384_722", .hash = SHA3_384, .key = hmac_sha3_384_722_key, .keylen = 48, .msg = hmac_sha3_384_722_msg, .msglen = 16, .tag = hmac_sha3_384_722_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 723 for HMAC, tcId is 32 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_723_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_723_tag[] = { 0x50, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_723 = { .name = "hmac_sha3_384_723", .hash = SHA3_384, .key = hmac_sha3_384_723_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_723_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 724 for HMAC, tcId is 33 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_724_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_724_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_724_tag[] = { 0xe7, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_724 = { .name = "hmac_sha3_384_724", .hash = SHA3_384, .key = hmac_sha3_384_724_key, .keylen = 48, .msg = hmac_sha3_384_724_msg, .msglen = 16, .tag = hmac_sha3_384_724_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 725 for HMAC, tcId is 34 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_725_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_725_tag[] = { 0xd0, 0x0d, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_725 = { .name = "hmac_sha3_384_725", .hash = SHA3_384, .key = hmac_sha3_384_725_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_725_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 726 for HMAC, tcId is 35 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_726_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_726_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_726_tag[] = { 0x67, 0x55, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_726 = { .name = "hmac_sha3_384_726", .hash = SHA3_384, .key = hmac_sha3_384_726_key, .keylen = 48, .msg = hmac_sha3_384_726_msg, .msglen = 16, .tag = hmac_sha3_384_726_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 727 for HMAC, tcId is 36 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_727_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_727_tag[] = { 0xd0, 0x0c, 0xe8, 0x1d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_727 = { .name = "hmac_sha3_384_727", .hash = SHA3_384, .key = hmac_sha3_384_727_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_727_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 728 for HMAC, tcId is 37 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_728_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_728_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_728_tag[] = { 0x67, 0x54, 0xfe, 0xc4, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_728 = { .name = "hmac_sha3_384_728", .hash = SHA3_384, .key = hmac_sha3_384_728_key, .keylen = 48, .msg = hmac_sha3_384_728_msg, .msglen = 16, .tag = hmac_sha3_384_728_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 729 for HMAC, tcId is 38 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_729_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_729_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x53, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_729 = { .name = "hmac_sha3_384_729", .hash = SHA3_384, .key = hmac_sha3_384_729_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_729_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 730 for HMAC, tcId is 39 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_730_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_730_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_730_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x55, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_730 = { .name = "hmac_sha3_384_730", .hash = SHA3_384, .key = hmac_sha3_384_730_key, .keylen = 48, .msg = hmac_sha3_384_730_msg, .msglen = 16, .tag = hmac_sha3_384_730_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 731 for HMAC, tcId is 40 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_731_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_731_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x50, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_731 = { .name = "hmac_sha3_384_731", .hash = SHA3_384, .key = hmac_sha3_384_731_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_731_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 732 for HMAC, tcId is 41 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_732_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_732_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_732_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x56, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_732 = { .name = "hmac_sha3_384_732", .hash = SHA3_384, .key = hmac_sha3_384_732_key, .keylen = 48, .msg = hmac_sha3_384_732_msg, .msglen = 16, .tag = hmac_sha3_384_732_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 733 for HMAC, tcId is 42 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_733_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_733_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_733 = { .name = "hmac_sha3_384_733", .hash = SHA3_384, .key = hmac_sha3_384_733_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_733_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 734 for HMAC, tcId is 43 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_734_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_734_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_734_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_734 = { .name = "hmac_sha3_384_734", .hash = SHA3_384, .key = hmac_sha3_384_734_key, .keylen = 48, .msg = hmac_sha3_384_734_msg, .msglen = 16, .tag = hmac_sha3_384_734_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 735 for HMAC, tcId is 44 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_735_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_735_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xae, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_735 = { .name = "hmac_sha3_384_735", .hash = SHA3_384, .key = hmac_sha3_384_735_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_735_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 736 for HMAC, tcId is 45 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_736_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_736_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_736_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd1, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_736 = { .name = "hmac_sha3_384_736", .hash = SHA3_384, .key = hmac_sha3_384_736_key, .keylen = 48, .msg = hmac_sha3_384_736_msg, .msglen = 16, .tag = hmac_sha3_384_736_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 737 for HMAC, tcId is 46 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_737_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_737_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0x2f, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_737 = { .name = "hmac_sha3_384_737", .hash = SHA3_384, .key = hmac_sha3_384_737_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_737_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 738 for HMAC, tcId is 47 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_738_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_738_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_738_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0x50, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_738 = { .name = "hmac_sha3_384_738", .hash = SHA3_384, .key = hmac_sha3_384_738_key, .keylen = 48, .msg = hmac_sha3_384_738_msg, .msglen = 16, .tag = hmac_sha3_384_738_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 739 for HMAC, tcId is 48 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_739_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_739_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x69, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_739 = { .name = "hmac_sha3_384_739", .hash = SHA3_384, .key = hmac_sha3_384_739_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_739_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 740 for HMAC, tcId is 49 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_740_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_740_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_740_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0x91, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_740 = { .name = "hmac_sha3_384_740", .hash = SHA3_384, .key = hmac_sha3_384_740_key, .keylen = 48, .msg = hmac_sha3_384_740_msg, .msglen = 16, .tag = hmac_sha3_384_740_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 741 for HMAC, tcId is 50 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_741_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_741_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xdb, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_741 = { .name = "hmac_sha3_384_741", .hash = SHA3_384, .key = hmac_sha3_384_741_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_741_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 742 for HMAC, tcId is 51 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_742_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_742_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_742_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x46, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_742 = { .name = "hmac_sha3_384_742", .hash = SHA3_384, .key = hmac_sha3_384_742_key, .keylen = 48, .msg = hmac_sha3_384_742_msg, .msglen = 16, .tag = hmac_sha3_384_742_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 743 for HMAC, tcId is 52 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_743_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_743_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x79, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_743 = { .name = "hmac_sha3_384_743", .hash = SHA3_384, .key = hmac_sha3_384_743_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_743_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 744 for HMAC, tcId is 53 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_744_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_744_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_744_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe7, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_744 = { .name = "hmac_sha3_384_744", .hash = SHA3_384, .key = hmac_sha3_384_744_key, .keylen = 48, .msg = hmac_sha3_384_744_msg, .msglen = 16, .tag = hmac_sha3_384_744_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 745 for HMAC, tcId is 54 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_745_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_745_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x7a, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_745 = { .name = "hmac_sha3_384_745", .hash = SHA3_384, .key = hmac_sha3_384_745_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_745_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 746 for HMAC, tcId is 55 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_746_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_746_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_746_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe4, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_746 = { .name = "hmac_sha3_384_746", .hash = SHA3_384, .key = hmac_sha3_384_746_key, .keylen = 48, .msg = hmac_sha3_384_746_msg, .msglen = 16, .tag = hmac_sha3_384_746_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 747 for HMAC, tcId is 56 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_747_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_747_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0xf8, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_747 = { .name = "hmac_sha3_384_747", .hash = SHA3_384, .key = hmac_sha3_384_747_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_747_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 748 for HMAC, tcId is 57 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_748_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_748_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_748_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0x66, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_748 = { .name = "hmac_sha3_384_748", .hash = SHA3_384, .key = hmac_sha3_384_748_key, .keylen = 48, .msg = hmac_sha3_384_748_msg, .msglen = 16, .tag = hmac_sha3_384_748_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 749 for HMAC, tcId is 58 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_749_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_749_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6f, }; static const wycheproof_hmac_test hmac_sha3_384_749 = { .name = "hmac_sha3_384_749", .hash = SHA3_384, .key = hmac_sha3_384_749_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_749_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 376 in tag, tcId is 58 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 750 for HMAC, tcId is 59 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_750_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_750_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_750_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd5, }; static const wycheproof_hmac_test hmac_sha3_384_750 = { .name = "hmac_sha3_384_750", .hash = SHA3_384, .key = hmac_sha3_384_750_key, .keylen = 48, .msg = hmac_sha3_384_750_msg, .msglen = 16, .tag = hmac_sha3_384_750_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 376 in tag, tcId is 59 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 751 for HMAC, tcId is 60 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_751_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_751_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6c, }; static const wycheproof_hmac_test hmac_sha3_384_751 = { .name = "hmac_sha3_384_751", .hash = SHA3_384, .key = hmac_sha3_384_751_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_751_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 377 in tag, tcId is 60 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 752 for HMAC, tcId is 61 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_752_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_752_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_752_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd6, }; static const wycheproof_hmac_test hmac_sha3_384_752 = { .name = "hmac_sha3_384_752", .hash = SHA3_384, .key = hmac_sha3_384_752_key, .keylen = 48, .msg = hmac_sha3_384_752_msg, .msglen = 16, .tag = hmac_sha3_384_752_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 377 in tag, tcId is 61 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 753 for HMAC, tcId is 62 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_753_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_753_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_384_753 = { .name = "hmac_sha3_384_753", .hash = SHA3_384, .key = hmac_sha3_384_753_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_753_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 382 in tag, tcId is 62 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 754 for HMAC, tcId is 63 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_754_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_754_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_754_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0x94, }; static const wycheproof_hmac_test hmac_sha3_384_754 = { .name = "hmac_sha3_384_754", .hash = SHA3_384, .key = hmac_sha3_384_754_key, .keylen = 48, .msg = hmac_sha3_384_754_msg, .msglen = 16, .tag = hmac_sha3_384_754_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 382 in tag, tcId is 63 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 755 for HMAC, tcId is 64 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_755_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_755_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0xee, }; static const wycheproof_hmac_test hmac_sha3_384_755 = { .name = "hmac_sha3_384_755", .hash = SHA3_384, .key = hmac_sha3_384_755_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_755_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 383 in tag, tcId is 64 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 756 for HMAC, tcId is 65 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_756_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_756_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_756_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0x54, }; static const wycheproof_hmac_test hmac_sha3_384_756 = { .name = "hmac_sha3_384_756", .hash = SHA3_384, .key = hmac_sha3_384_756_key, .keylen = 48, .msg = hmac_sha3_384_756_msg, .msglen = 16, .tag = hmac_sha3_384_756_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 383 in tag, tcId is 65 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 757 for HMAC, tcId is 66 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_757_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_757_tag[] = { 0xd1, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xae, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_757 = { .name = "hmac_sha3_384_757", .hash = SHA3_384, .key = hmac_sha3_384_757_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_757_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 758 for HMAC, tcId is 67 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_758_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_758_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_758_tag[] = { 0x66, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd1, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_758 = { .name = "hmac_sha3_384_758", .hash = SHA3_384, .key = hmac_sha3_384_758_key, .keylen = 48, .msg = hmac_sha3_384_758_msg, .msglen = 16, .tag = hmac_sha3_384_758_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 759 for HMAC, tcId is 68 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_759_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_759_tag[] = { 0xd0, 0x0c, 0xe8, 0x1d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_759 = { .name = "hmac_sha3_384_759", .hash = SHA3_384, .key = hmac_sha3_384_759_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_759_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 760 for HMAC, tcId is 69 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_760_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_760_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_760_tag[] = { 0x67, 0x54, 0xfe, 0xc4, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_760 = { .name = "hmac_sha3_384_760", .hash = SHA3_384, .key = hmac_sha3_384_760_key, .keylen = 48, .msg = hmac_sha3_384_760_msg, .msglen = 16, .tag = hmac_sha3_384_760_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 761 for HMAC, tcId is 70 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_761_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_761_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0x42, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, 0x1d, 0x1a, 0x9b, 0x44, 0x3a, 0x70, 0xc9, 0xa8, 0x6c, 0xfd, 0xe0, 0xa6, 0x90, 0xcd, 0x43, 0x77, 0xbe, 0x0d, 0x91, 0xac, 0xf0, 0x3f, 0xc8, 0x6e, }; static const wycheproof_hmac_test hmac_sha3_384_761 = { .name = "hmac_sha3_384_761", .hash = SHA3_384, .key = hmac_sha3_384_761_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_761_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 762 for HMAC, tcId is 71 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_762_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_762_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_762_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0xe0, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, 0x52, 0x5f, 0xe4, 0x01, 0x3f, 0x7c, 0x7a, 0x51, 0xa8, 0x38, 0x4d, 0x47, 0xaf, 0xef, 0xa1, 0xfd, 0xd5, 0x28, 0xd3, 0xfb, 0x62, 0x58, 0xbb, 0xd4, }; static const wycheproof_hmac_test hmac_sha3_384_762 = { .name = "hmac_sha3_384_762", .hash = SHA3_384, .key = hmac_sha3_384_762_key, .keylen = 48, .msg = hmac_sha3_384_762_msg, .msglen = 16, .tag = hmac_sha3_384_762_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 763 for HMAC, tcId is 72 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_763_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_763_tag[] = { 0x2f, 0xf3, 0x17, 0x62, 0xad, 0xca, 0x4d, 0xd5, 0x50, 0xb6, 0x25, 0x1f, 0x87, 0x3f, 0x37, 0x3d, 0x60, 0x3c, 0x54, 0x96, 0x62, 0x76, 0x7c, 0x81, 0xe2, 0xe5, 0x64, 0xbb, 0xc5, 0x8f, 0x36, 0x57, 0x93, 0x02, 0x1f, 0x59, 0x6f, 0x32, 0xbc, 0x88, 0x41, 0xf2, 0x6e, 0x53, 0x0f, 0xc0, 0x37, 0x91, }; static const wycheproof_hmac_test hmac_sha3_384_763 = { .name = "hmac_sha3_384_763", .hash = SHA3_384, .key = hmac_sha3_384_763_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_763_tag, .taglen = 48, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 764 for HMAC, tcId is 73 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_764_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_764_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_764_tag[] = { 0x98, 0xab, 0x01, 0xbb, 0xab, 0xd4, 0xc0, 0xe3, 0x2f, 0x4e, 0xb8, 0xd7, 0x19, 0x64, 0x40, 0x9f, 0x7c, 0x0f, 0xd3, 0x50, 0x27, 0x33, 0x3b, 0xe9, 0xad, 0xa0, 0x1b, 0xfe, 0xc0, 0x83, 0x85, 0xae, 0x57, 0xc7, 0xb2, 0xb8, 0x50, 0x10, 0x5e, 0x02, 0x2a, 0xd7, 0x2c, 0x04, 0x9d, 0xa7, 0x44, 0x2b, }; static const wycheproof_hmac_test hmac_sha3_384_764 = { .name = "hmac_sha3_384_764", .hash = SHA3_384, .key = hmac_sha3_384_764_key, .keylen = 48, .msg = hmac_sha3_384_764_msg, .msglen = 16, .tag = hmac_sha3_384_764_tag, .taglen = 48, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 765 for HMAC, tcId is 74 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_765_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_765_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_384_765 = { .name = "hmac_sha3_384_765", .hash = SHA3_384, .key = hmac_sha3_384_765_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_765_tag, .taglen = 48, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 766 for HMAC, tcId is 75 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_766_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_766_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_766_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_384_766 = { .name = "hmac_sha3_384_766", .hash = SHA3_384, .key = hmac_sha3_384_766_key, .keylen = 48, .msg = hmac_sha3_384_766_msg, .msglen = 16, .tag = hmac_sha3_384_766_tag, .taglen = 48, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 767 for HMAC, tcId is 76 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_767_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_767_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_384_767 = { .name = "hmac_sha3_384_767", .hash = SHA3_384, .key = hmac_sha3_384_767_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_767_tag, .taglen = 48, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 768 for HMAC, tcId is 77 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_768_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_768_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_768_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_384_768 = { .name = "hmac_sha3_384_768", .hash = SHA3_384, .key = hmac_sha3_384_768_key, .keylen = 48, .msg = hmac_sha3_384_768_msg, .msglen = 16, .tag = hmac_sha3_384_768_tag, .taglen = 48, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 769 for HMAC, tcId is 78 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_769_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_769_tag[] = { 0x50, 0x8c, 0x68, 0x1d, 0xd2, 0xb5, 0x32, 0xaa, 0x2f, 0xc9, 0x5a, 0x60, 0xf8, 0x40, 0x48, 0x42, 0x1f, 0x43, 0x2b, 0xe9, 0x1d, 0x09, 0x03, 0xfe, 0x9d, 0x9a, 0x1b, 0xc4, 0xba, 0xf0, 0x49, 0x28, 0xec, 0x7d, 0x60, 0x26, 0x10, 0x4d, 0xc3, 0xf7, 0x3e, 0x8d, 0x11, 0x2c, 0x70, 0xbf, 0x48, 0xee, }; static const wycheproof_hmac_test hmac_sha3_384_769 = { .name = "hmac_sha3_384_769", .hash = SHA3_384, .key = hmac_sha3_384_769_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_769_tag, .taglen = 48, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 770 for HMAC, tcId is 79 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_770_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_770_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_770_tag[] = { 0xe7, 0xd4, 0x7e, 0xc4, 0xd4, 0xab, 0xbf, 0x9c, 0x50, 0x31, 0xc7, 0xa8, 0x66, 0x1b, 0x3f, 0xe0, 0x03, 0x70, 0xac, 0x2f, 0x58, 0x4c, 0x44, 0x96, 0xd2, 0xdf, 0x64, 0x81, 0xbf, 0xfc, 0xfa, 0xd1, 0x28, 0xb8, 0xcd, 0xc7, 0x2f, 0x6f, 0x21, 0x7d, 0x55, 0xa8, 0x53, 0x7b, 0xe2, 0xd8, 0x3b, 0x54, }; static const wycheproof_hmac_test hmac_sha3_384_770 = { .name = "hmac_sha3_384_770", .hash = SHA3_384, .key = hmac_sha3_384_770_key, .keylen = 48, .msg = hmac_sha3_384_770_msg, .msglen = 16, .tag = hmac_sha3_384_770_tag, .taglen = 48, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 771 for HMAC, tcId is 80 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_771_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_771_tag[] = { 0xd1, 0x0d, 0xe9, 0x9c, 0x53, 0x34, 0xb3, 0x2b, 0xae, 0x48, 0xdb, 0xe1, 0x79, 0xc1, 0xc9, 0xc3, 0x9e, 0xc2, 0xaa, 0x68, 0x9c, 0x88, 0x82, 0x7f, 0x1c, 0x1b, 0x9a, 0x45, 0x3b, 0x71, 0xc8, 0xa9, 0x6d, 0xfc, 0xe1, 0xa7, 0x91, 0xcc, 0x42, 0x76, 0xbf, 0x0c, 0x90, 0xad, 0xf1, 0x3e, 0xc9, 0x6f, }; static const wycheproof_hmac_test hmac_sha3_384_771 = { .name = "hmac_sha3_384_771", .hash = SHA3_384, .key = hmac_sha3_384_771_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_771_tag, .taglen = 48, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 772 for HMAC, tcId is 81 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_772_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_772_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_772_tag[] = { 0x66, 0x55, 0xff, 0x45, 0x55, 0x2a, 0x3e, 0x1d, 0xd1, 0xb0, 0x46, 0x29, 0xe7, 0x9a, 0xbe, 0x61, 0x82, 0xf1, 0x2d, 0xae, 0xd9, 0xcd, 0xc5, 0x17, 0x53, 0x5e, 0xe5, 0x00, 0x3e, 0x7d, 0x7b, 0x50, 0xa9, 0x39, 0x4c, 0x46, 0xae, 0xee, 0xa0, 0xfc, 0xd4, 0x29, 0xd2, 0xfa, 0x63, 0x59, 0xba, 0xd5, }; static const wycheproof_hmac_test hmac_sha3_384_772 = { .name = "hmac_sha3_384_772", .hash = SHA3_384, .key = hmac_sha3_384_772_key, .keylen = 48, .msg = hmac_sha3_384_772_msg, .msglen = 16, .tag = hmac_sha3_384_772_tag, .taglen = 48, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 773 for HMAC, tcId is 82 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_773_key[] = { 0x1c, 0x67, 0x82, 0x67, 0xbe, 0x13, 0xac, 0xb4, 0x64, 0x93, 0x9c, 0x28, 0x96, 0xc9, 0xe9, 0xce, 0x1d, 0xeb, 0x5b, 0x30, 0x83, 0x3b, 0xdd, 0x9c, 0xa0, 0x03, 0x70, 0x88, 0x9b, 0x84, 0x41, 0x07, 0x82, 0xad, 0x52, 0xaf, 0xe2, 0x5d, 0xc1, 0x0a, 0xb7, 0xec, 0x5c, 0xf5, 0xf3, 0x47, 0x93, 0xb7, }; static const unsigned char hmac_sha3_384_773_tag[] = { 0xb1, 0xbb, 0xb6, 0x2a, 0x3d, 0x2e, 0x33, 0xab, 0x8c, 0xdc, 0x0d, 0xa0, 0x30, 0x91, 0xbb, 0x83, 0xef, 0xbb, 0xe2, 0xc4, 0x84, 0xb9, 0xee, 0x8b, }; static const wycheproof_hmac_test hmac_sha3_384_773 = { .name = "hmac_sha3_384_773", .hash = SHA3_384, .key = hmac_sha3_384_773_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_773_tag, .taglen = 24, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 774 for HMAC, tcId is 83 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_774_key[] = { 0x00, 0xb1, 0x84, 0xc2, 0xc0, 0xa4, 0x91, 0xd7, 0x64, 0xa2, 0x6f, 0x8b, 0x2e, 0x56, 0xa9, 0x65, 0x22, 0x2b, 0x36, 0x21, 0x3b, 0xdd, 0x10, 0x6a, 0xe7, 0x82, 0x30, 0x5c, 0x50, 0xf8, 0x92, 0x69, 0x90, 0x24, 0x76, 0xe5, 0xdf, 0x3f, 0xa5, 0x8e, 0x0e, 0xcf, 0xae, 0x82, 0xa9, 0x60, 0x7c, 0x8e, }; static const unsigned char hmac_sha3_384_774_msg[] = { 0x9f, }; static const unsigned char hmac_sha3_384_774_tag[] = { 0x42, 0x4d, 0x7a, 0xd3, 0xfb, 0x7a, 0xdd, 0xd0, 0x94, 0x88, 0xde, 0x8b, 0x5e, 0x59, 0x51, 0x85, 0x3e, 0xd9, 0x15, 0xa6, 0x62, 0x09, 0xce, 0x02, }; static const wycheproof_hmac_test hmac_sha3_384_774 = { .name = "hmac_sha3_384_774", .hash = SHA3_384, .key = hmac_sha3_384_774_key, .keylen = 48, .msg = hmac_sha3_384_774_msg, .msglen = 1, .tag = hmac_sha3_384_774_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 775 for HMAC, tcId is 84 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_775_key[] = { 0x05, 0x5b, 0x67, 0xed, 0xb6, 0x59, 0xe2, 0x9c, 0x10, 0xe3, 0xe9, 0xcd, 0x25, 0xaa, 0x1c, 0xd5, 0xab, 0xf0, 0x88, 0x0e, 0x20, 0x26, 0xed, 0x84, 0x36, 0xe3, 0x9b, 0x06, 0x4b, 0x73, 0x15, 0x76, 0x0c, 0xd7, 0xa9, 0x29, 0x4e, 0xe2, 0x3d, 0x47, 0x50, 0x96, 0x9c, 0xc8, 0xb5, 0xdb, 0xae, 0xd7, }; static const unsigned char hmac_sha3_384_775_msg[] = { 0x40, 0x47, }; static const unsigned char hmac_sha3_384_775_tag[] = { 0xde, 0xb3, 0x60, 0x4a, 0xbe, 0x34, 0x06, 0x49, 0x32, 0x30, 0xf8, 0x71, 0xad, 0xbb, 0x10, 0x94, 0x53, 0x71, 0xc7, 0x25, 0xd7, 0x7f, 0xf0, 0x01, }; static const wycheproof_hmac_test hmac_sha3_384_775 = { .name = "hmac_sha3_384_775", .hash = SHA3_384, .key = hmac_sha3_384_775_key, .keylen = 48, .msg = hmac_sha3_384_775_msg, .msglen = 2, .tag = hmac_sha3_384_775_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 776 for HMAC, tcId is 85 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_776_key[] = { 0x9e, 0x3c, 0x19, 0x8e, 0x93, 0x93, 0x0f, 0x07, 0x6b, 0x03, 0x5c, 0x5f, 0xa8, 0xf1, 0x0d, 0x9a, 0x65, 0xe9, 0x8c, 0x66, 0xcf, 0xb3, 0x66, 0x33, 0xe3, 0xcb, 0x33, 0x27, 0x9c, 0xdf, 0x57, 0x68, 0x8f, 0x10, 0xb7, 0x47, 0x2d, 0x1f, 0xc9, 0xd9, 0x62, 0xce, 0x69, 0x54, 0x51, 0x9b, 0xfb, 0xf6, }; static const unsigned char hmac_sha3_384_776_msg[] = { 0x88, 0xcf, 0xab, }; static const unsigned char hmac_sha3_384_776_tag[] = { 0x89, 0x52, 0xc8, 0x8b, 0xe2, 0x9d, 0x5a, 0x7a, 0xd5, 0xc2, 0x52, 0x19, 0x7a, 0x67, 0xd3, 0xaf, 0x75, 0x12, 0xaf, 0x0f, 0x32, 0x0d, 0x5e, 0xfb, }; static const wycheproof_hmac_test hmac_sha3_384_776 = { .name = "hmac_sha3_384_776", .hash = SHA3_384, .key = hmac_sha3_384_776_key, .keylen = 48, .msg = hmac_sha3_384_776_msg, .msglen = 3, .tag = hmac_sha3_384_776_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 777 for HMAC, tcId is 86 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_777_key[] = { 0xf5, 0xf5, 0x96, 0x2b, 0xda, 0x25, 0x7b, 0x38, 0xb2, 0xa2, 0x31, 0x89, 0x29, 0x12, 0x1b, 0x2e, 0xae, 0xf7, 0x92, 0xd5, 0xc6, 0xa9, 0x58, 0x5e, 0x48, 0xb8, 0x0c, 0xf5, 0x35, 0x7b, 0x29, 0xc3, 0x95, 0x1b, 0x78, 0x7e, 0xd3, 0xe0, 0x3e, 0x38, 0x5b, 0x05, 0xb8, 0xff, 0xe6, 0x86, 0x1d, 0xc3, }; static const unsigned char hmac_sha3_384_777_msg[] = { 0xd9, 0x39, 0x77, 0x53, }; static const unsigned char hmac_sha3_384_777_tag[] = { 0x3a, 0xfd, 0xa5, 0xe8, 0x2a, 0x3a, 0x0b, 0x01, 0xf6, 0xde, 0x05, 0x66, 0x33, 0x34, 0x8b, 0xff, 0x2c, 0x59, 0x83, 0x8f, 0xc1, 0x04, 0x76, 0xaf, }; static const wycheproof_hmac_test hmac_sha3_384_777 = { .name = "hmac_sha3_384_777", .hash = SHA3_384, .key = hmac_sha3_384_777_key, .keylen = 48, .msg = hmac_sha3_384_777_msg, .msglen = 4, .tag = hmac_sha3_384_777_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 778 for HMAC, tcId is 87 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_778_key[] = { 0xf6, 0x28, 0x20, 0xed, 0x5f, 0x98, 0x33, 0xfd, 0x22, 0xde, 0xe7, 0xbd, 0x49, 0xe2, 0xc9, 0xb1, 0x9f, 0xc9, 0x66, 0x88, 0x97, 0xc2, 0xc3, 0x3e, 0x6c, 0x7c, 0x1f, 0xa5, 0xc2, 0x77, 0xc3, 0xb9, 0xf5, 0x81, 0xfa, 0xef, 0x3d, 0xdc, 0x66, 0x4b, 0xa5, 0x37, 0x97, 0x5d, 0x8a, 0xfa, 0xa7, 0x07, }; static const unsigned char hmac_sha3_384_778_msg[] = { 0x9b, 0x6c, 0xc7, 0xca, 0xa4, }; static const unsigned char hmac_sha3_384_778_tag[] = { 0x0e, 0xbd, 0xc5, 0x62, 0xd3, 0xb5, 0xdf, 0x13, 0xf1, 0x37, 0x0a, 0x0a, 0x55, 0x5f, 0x30, 0xe5, 0xd7, 0x7b, 0x92, 0xa7, 0x1c, 0x88, 0x58, 0x84, }; static const wycheproof_hmac_test hmac_sha3_384_778 = { .name = "hmac_sha3_384_778", .hash = SHA3_384, .key = hmac_sha3_384_778_key, .keylen = 48, .msg = hmac_sha3_384_778_msg, .msglen = 5, .tag = hmac_sha3_384_778_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 779 for HMAC, tcId is 88 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_779_key[] = { 0xf2, 0x22, 0xa1, 0xda, 0xbf, 0x32, 0x2a, 0xff, 0x84, 0x63, 0xac, 0xee, 0x64, 0x44, 0x93, 0x93, 0x31, 0x21, 0x2b, 0xe3, 0xe1, 0x9d, 0x31, 0xf4, 0xb7, 0x3f, 0xdc, 0xc9, 0x7e, 0x29, 0x25, 0x36, 0x5e, 0xa3, 0x3c, 0x98, 0x52, 0x82, 0x80, 0x5c, 0x83, 0xdc, 0xd8, 0xfb, 0x42, 0xa0, 0xe2, 0x14, }; static const unsigned char hmac_sha3_384_779_msg[] = { 0xc8, 0x5a, 0xd7, 0x87, 0x2b, 0x76, }; static const unsigned char hmac_sha3_384_779_tag[] = { 0x4f, 0xc8, 0xb4, 0x4f, 0x25, 0xd8, 0x7a, 0x32, 0xf6, 0xe0, 0xdb, 0xb7, 0xd9, 0x85, 0x14, 0x82, 0x34, 0x4d, 0x4a, 0xf5, 0xbf, 0xd7, 0x78, 0x45, }; static const wycheproof_hmac_test hmac_sha3_384_779 = { .name = "hmac_sha3_384_779", .hash = SHA3_384, .key = hmac_sha3_384_779_key, .keylen = 48, .msg = hmac_sha3_384_779_msg, .msglen = 6, .tag = hmac_sha3_384_779_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 780 for HMAC, tcId is 89 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_780_key[] = { 0x56, 0xe8, 0x0f, 0x38, 0x99, 0xe9, 0x45, 0x31, 0x0a, 0x9d, 0x9b, 0xef, 0x3d, 0x32, 0x09, 0x1f, 0x29, 0xc1, 0x57, 0xdd, 0x46, 0xb2, 0xd4, 0x39, 0xad, 0x89, 0xd6, 0x3e, 0x14, 0xb2, 0xc2, 0x43, 0x90, 0xf7, 0x4d, 0xb4, 0xd9, 0x05, 0xf6, 0xbd, 0x03, 0xf7, 0x5c, 0x32, 0xe9, 0x12, 0x25, 0xfe, }; static const unsigned char hmac_sha3_384_780_msg[] = { 0x80, 0xba, 0x25, 0xf1, 0xc2, 0x76, 0x50, }; static const unsigned char hmac_sha3_384_780_tag[] = { 0xf1, 0x68, 0x6d, 0x7c, 0x0a, 0x80, 0x8a, 0xe4, 0xee, 0x2c, 0x4d, 0x89, 0x12, 0xb3, 0xf6, 0xe5, 0xbe, 0xa1, 0x41, 0xde, 0x7b, 0x80, 0xb5, 0x86, }; static const wycheproof_hmac_test hmac_sha3_384_780 = { .name = "hmac_sha3_384_780", .hash = SHA3_384, .key = hmac_sha3_384_780_key, .keylen = 48, .msg = hmac_sha3_384_780_msg, .msglen = 7, .tag = hmac_sha3_384_780_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 781 for HMAC, tcId is 90 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_781_key[] = { 0x6c, 0xb6, 0x26, 0x1a, 0x56, 0xa2, 0x1b, 0x2c, 0x3c, 0x13, 0x45, 0x3c, 0x15, 0x83, 0x64, 0xaa, 0xfa, 0x78, 0xf5, 0x81, 0x72, 0xa9, 0xae, 0x3e, 0xeb, 0x32, 0x8a, 0xc3, 0x88, 0x08, 0xb5, 0xc6, 0x8c, 0x11, 0x11, 0x97, 0xa3, 0x03, 0xec, 0x36, 0x84, 0x7c, 0x9a, 0x31, 0x5a, 0xc5, 0xeb, 0x5b, }; static const unsigned char hmac_sha3_384_781_msg[] = { 0x79, 0x43, 0x0d, 0xe5, 0x1d, 0x68, 0xcf, 0x34, }; static const unsigned char hmac_sha3_384_781_tag[] = { 0x7c, 0xf9, 0x3b, 0x40, 0x0c, 0xc5, 0x2b, 0x51, 0x6f, 0x12, 0xe4, 0x22, 0x70, 0xf2, 0x59, 0x1e, 0x2c, 0xb9, 0xb6, 0xf9, 0x80, 0x16, 0xfe, 0x2c, }; static const wycheproof_hmac_test hmac_sha3_384_781 = { .name = "hmac_sha3_384_781", .hash = SHA3_384, .key = hmac_sha3_384_781_key, .keylen = 48, .msg = hmac_sha3_384_781_msg, .msglen = 8, .tag = hmac_sha3_384_781_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 782 for HMAC, tcId is 91 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_782_key[] = { 0x44, 0xca, 0x1e, 0xcb, 0x49, 0x04, 0x70, 0xa8, 0x4c, 0x7e, 0x13, 0xe1, 0xf1, 0xc6, 0x9d, 0xa2, 0x1f, 0x48, 0xc3, 0x3b, 0x6f, 0x05, 0x0f, 0x48, 0xf7, 0xf2, 0x44, 0xf0, 0xfd, 0xa8, 0xb3, 0xc8, 0x55, 0x90, 0x4e, 0xd0, 0x61, 0x2e, 0x2d, 0xaf, 0xa5, 0x10, 0x5c, 0xbd, 0x7f, 0x64, 0x49, 0xeb, }; static const unsigned char hmac_sha3_384_782_msg[] = { 0x87, 0x0b, 0x98, 0x1c, 0x8a, 0xfd, 0x9f, 0xae, 0x1b, }; static const unsigned char hmac_sha3_384_782_tag[] = { 0xb5, 0x1e, 0xfe, 0x22, 0x84, 0x9c, 0xac, 0x69, 0x82, 0x1f, 0x99, 0x59, 0x06, 0xf0, 0x02, 0xc5, 0x3b, 0xfb, 0x71, 0xea, 0xdb, 0x90, 0x2e, 0x1a, }; static const wycheproof_hmac_test hmac_sha3_384_782 = { .name = "hmac_sha3_384_782", .hash = SHA3_384, .key = hmac_sha3_384_782_key, .keylen = 48, .msg = hmac_sha3_384_782_msg, .msglen = 9, .tag = hmac_sha3_384_782_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 783 for HMAC, tcId is 92 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_783_key[] = { 0xaa, 0xca, 0x68, 0x88, 0x2c, 0xfa, 0x72, 0x50, 0x98, 0x8a, 0x24, 0x7b, 0x96, 0xcf, 0xb3, 0x23, 0x2d, 0x65, 0x67, 0x37, 0x8f, 0x8f, 0xa7, 0xe7, 0xaa, 0xac, 0xa1, 0xc3, 0x86, 0xe1, 0xae, 0x15, 0xe5, 0x49, 0x57, 0xd2, 0x2b, 0xff, 0xf1, 0xe5, 0x0a, 0xe7, 0xf2, 0x1b, 0xee, 0xa1, 0x97, 0xa5, }; static const unsigned char hmac_sha3_384_783_msg[] = { 0xa6, 0xf3, 0x1b, 0x82, 0x2e, 0xc2, 0x4d, 0xa1, 0xb1, 0xe9, }; static const unsigned char hmac_sha3_384_783_tag[] = { 0x75, 0x5c, 0x63, 0x0f, 0x00, 0x38, 0xe6, 0x1b, 0x0d, 0xf6, 0x35, 0xa8, 0x69, 0x90, 0xa0, 0xef, 0xce, 0x63, 0xbe, 0x5d, 0xfa, 0x44, 0x8c, 0x68, }; static const wycheproof_hmac_test hmac_sha3_384_783 = { .name = "hmac_sha3_384_783", .hash = SHA3_384, .key = hmac_sha3_384_783_key, .keylen = 48, .msg = hmac_sha3_384_783_msg, .msglen = 10, .tag = hmac_sha3_384_783_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 784 for HMAC, tcId is 93 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_784_key[] = { 0x1b, 0x32, 0xf9, 0xb6, 0x37, 0x89, 0x34, 0xa5, 0x02, 0xdd, 0x74, 0xd8, 0xb7, 0x4a, 0x46, 0x06, 0xd5, 0xb2, 0xc9, 0xa8, 0x58, 0x7f, 0xab, 0x1c, 0xfa, 0x90, 0xd7, 0x50, 0x07, 0x73, 0x4d, 0x2b, 0x8b, 0xdf, 0xe6, 0x34, 0x81, 0x52, 0x43, 0x52, 0x6e, 0xbc, 0x0f, 0x33, 0xc0, 0x4d, 0x0d, 0x05, }; static const unsigned char hmac_sha3_384_784_msg[] = { 0x55, 0x36, 0x7c, 0x65, 0x7c, 0x79, 0x26, 0x10, 0xef, 0xdc, 0xc0, }; static const unsigned char hmac_sha3_384_784_tag[] = { 0xeb, 0x16, 0xb2, 0x97, 0x40, 0xaa, 0x41, 0xce, 0x93, 0x24, 0xd6, 0xa2, 0x9b, 0xef, 0xe8, 0x48, 0x10, 0x9c, 0x8b, 0xe1, 0x89, 0x98, 0x3b, 0x2b, }; static const wycheproof_hmac_test hmac_sha3_384_784 = { .name = "hmac_sha3_384_784", .hash = SHA3_384, .key = hmac_sha3_384_784_key, .keylen = 48, .msg = hmac_sha3_384_784_msg, .msglen = 11, .tag = hmac_sha3_384_784_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 785 for HMAC, tcId is 94 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_785_key[] = { 0x09, 0xd9, 0x1b, 0x2f, 0xa2, 0x2e, 0x68, 0xb5, 0x33, 0x5d, 0x47, 0x82, 0x35, 0xaa, 0x4e, 0x15, 0x74, 0x35, 0xc9, 0xac, 0xfe, 0xd7, 0x72, 0x21, 0x9a, 0xdf, 0xa1, 0xe9, 0xdd, 0x72, 0xf3, 0x3e, 0x1a, 0x21, 0x83, 0xa0, 0x20, 0x3a, 0x10, 0x4f, 0x80, 0xe6, 0x43, 0xcd, 0xf2, 0x9e, 0x5a, 0xff, }; static const unsigned char hmac_sha3_384_785_msg[] = { 0xb3, 0x1e, 0x25, 0x49, 0x57, 0xdb, 0x6b, 0x1b, 0x70, 0xa0, 0x6c, 0xe2, }; static const unsigned char hmac_sha3_384_785_tag[] = { 0xab, 0x2b, 0x66, 0x7e, 0x1f, 0x8a, 0x3e, 0x5f, 0xed, 0xc4, 0xda, 0x62, 0xab, 0x85, 0xc4, 0x22, 0x28, 0x0e, 0xfd, 0xd2, 0x55, 0x00, 0x54, 0x91, }; static const wycheproof_hmac_test hmac_sha3_384_785 = { .name = "hmac_sha3_384_785", .hash = SHA3_384, .key = hmac_sha3_384_785_key, .keylen = 48, .msg = hmac_sha3_384_785_msg, .msglen = 12, .tag = hmac_sha3_384_785_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 786 for HMAC, tcId is 95 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_786_key[] = { 0xd3, 0x11, 0xa8, 0x0a, 0xc8, 0x01, 0xe3, 0x63, 0x9b, 0x91, 0x85, 0x60, 0x8a, 0xf4, 0xa8, 0x5e, 0x41, 0x22, 0xe2, 0x9b, 0x5c, 0x23, 0xf0, 0x52, 0x34, 0xc3, 0x0d, 0x92, 0xd5, 0x9a, 0xd1, 0x3c, 0xb8, 0x03, 0x90, 0xe5, 0xfa, 0x0e, 0xa4, 0xa5, 0x48, 0x53, 0x22, 0x8b, 0x35, 0x66, 0x89, 0xf5, }; static const unsigned char hmac_sha3_384_786_msg[] = { 0xe6, 0xb4, 0x43, 0xdb, 0xa0, 0xda, 0xb3, 0x5d, 0x43, 0xca, 0x5d, 0x6c, 0xe6, }; static const unsigned char hmac_sha3_384_786_tag[] = { 0xec, 0x3e, 0x9d, 0x2c, 0x20, 0x8d, 0x57, 0x39, 0xd8, 0x50, 0x9a, 0xd6, 0xe8, 0x8e, 0xa8, 0x65, 0x38, 0x3d, 0x9f, 0x03, 0x4c, 0x3f, 0x80, 0xa5, }; static const wycheproof_hmac_test hmac_sha3_384_786 = { .name = "hmac_sha3_384_786", .hash = SHA3_384, .key = hmac_sha3_384_786_key, .keylen = 48, .msg = hmac_sha3_384_786_msg, .msglen = 13, .tag = hmac_sha3_384_786_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 787 for HMAC, tcId is 96 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_787_key[] = { 0x06, 0x29, 0x7e, 0x6c, 0x46, 0x55, 0x8b, 0x9b, 0x0f, 0xc3, 0x6c, 0x27, 0x2b, 0x4a, 0xe7, 0xe6, 0x5d, 0xd5, 0x36, 0xcc, 0x1d, 0x13, 0xac, 0xbf, 0xa8, 0x31, 0xfa, 0x55, 0x74, 0xb3, 0x4f, 0x99, 0xe0, 0x9a, 0xdf, 0xb7, 0xf2, 0x03, 0x21, 0xf2, 0x03, 0x07, 0x5f, 0xd2, 0x6e, 0xd2, 0xe2, 0x9d, }; static const unsigned char hmac_sha3_384_787_msg[] = { 0x30, 0x9b, 0x95, 0xe5, 0xf1, 0xec, 0x26, 0xf7, 0x07, 0x86, 0xe7, 0x4d, 0x80, 0x6d, }; static const unsigned char hmac_sha3_384_787_tag[] = { 0x8e, 0xb3, 0x7d, 0xec, 0xaa, 0xf8, 0x37, 0x6e, 0xa9, 0x4b, 0x82, 0x76, 0x7a, 0xf4, 0xc4, 0xbe, 0x78, 0xcb, 0x60, 0x7d, 0x99, 0x30, 0xa2, 0x8f, }; static const wycheproof_hmac_test hmac_sha3_384_787 = { .name = "hmac_sha3_384_787", .hash = SHA3_384, .key = hmac_sha3_384_787_key, .keylen = 48, .msg = hmac_sha3_384_787_msg, .msglen = 14, .tag = hmac_sha3_384_787_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 788 for HMAC, tcId is 97 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_788_key[] = { 0xe8, 0xb6, 0x3a, 0x25, 0xcd, 0x85, 0xad, 0x4f, 0x39, 0xe3, 0xc0, 0xe9, 0x58, 0x4e, 0xac, 0xb9, 0x4d, 0x6a, 0xe3, 0x3f, 0x98, 0x4d, 0xa2, 0x59, 0xaa, 0x53, 0x3d, 0x4d, 0x28, 0xae, 0xb3, 0x41, 0xcf, 0x3f, 0xfe, 0x49, 0xc0, 0x29, 0xe4, 0xaf, 0x6a, 0x48, 0x05, 0xf7, 0x60, 0xf3, 0x5f, 0x2c, }; static const unsigned char hmac_sha3_384_788_msg[] = { 0xd2, 0x25, 0xc2, 0x77, 0x95, 0xf8, 0x09, 0x45, 0x4b, 0xb2, 0xc5, 0x1d, 0x21, 0xf3, 0xac, }; static const unsigned char hmac_sha3_384_788_tag[] = { 0x71, 0x94, 0xc6, 0x99, 0x28, 0xeb, 0xc3, 0x38, 0xd6, 0xc3, 0x4a, 0xb5, 0xaa, 0x55, 0x06, 0xd2, 0xfc, 0x06, 0x97, 0x43, 0xd7, 0x66, 0x0c, 0x7b, }; static const wycheproof_hmac_test hmac_sha3_384_788 = { .name = "hmac_sha3_384_788", .hash = SHA3_384, .key = hmac_sha3_384_788_key, .keylen = 48, .msg = hmac_sha3_384_788_msg, .msglen = 15, .tag = hmac_sha3_384_788_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 789 for HMAC, tcId is 98 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_789_key[] = { 0xd8, 0x3a, 0x68, 0x5a, 0xce, 0x9f, 0xa0, 0xc0, 0xaa, 0x47, 0xf0, 0xc7, 0xb4, 0xf0, 0xf0, 0x07, 0x17, 0x61, 0x9a, 0x82, 0xe2, 0xee, 0xff, 0x87, 0xf5, 0x1f, 0x67, 0xd8, 0x14, 0xd5, 0x1d, 0xd9, 0xe4, 0xca, 0xd7, 0x57, 0x8a, 0x4e, 0x49, 0xb6, 0x72, 0xb5, 0xaf, 0x83, 0x94, 0x3c, 0x25, 0x83, }; static const unsigned char hmac_sha3_384_789_msg[] = { 0xab, 0xfa, 0x7f, 0x59, 0x78, 0xf7, 0x51, 0xe8, 0x7e, 0x8b, 0x5a, 0x15, 0xa6, 0xe8, 0x9f, 0x4f, }; static const unsigned char hmac_sha3_384_789_tag[] = { 0x90, 0x24, 0x7d, 0x29, 0x33, 0xf8, 0xf4, 0xa6, 0x56, 0x4a, 0xd7, 0xd2, 0x72, 0x72, 0x1f, 0xf6, 0xe7, 0x6f, 0xd4, 0xc0, 0xe3, 0xa8, 0xfa, 0xbc, }; static const wycheproof_hmac_test hmac_sha3_384_789 = { .name = "hmac_sha3_384_789", .hash = SHA3_384, .key = hmac_sha3_384_789_key, .keylen = 48, .msg = hmac_sha3_384_789_msg, .msglen = 16, .tag = hmac_sha3_384_789_tag, .taglen = 24, .result = 1, .comment = ", tcId is 98 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 790 for HMAC, tcId is 99 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_790_key[] = { 0x5b, 0xea, 0xf4, 0x06, 0xa6, 0x62, 0x7e, 0xaa, 0xfc, 0xad, 0xb6, 0xde, 0xa4, 0xe2, 0x7b, 0xa4, 0xfd, 0x87, 0x9f, 0xd3, 0xe5, 0xbf, 0xd8, 0x7e, 0xa3, 0xc8, 0xd5, 0xe0, 0xac, 0xfb, 0xbd, 0xa2, 0xc6, 0xbf, 0x00, 0x6b, 0xea, 0xf5, 0xa3, 0x03, 0x12, 0xe6, 0x90, 0x72, 0x4c, 0x47, 0x44, 0xa3, }; static const unsigned char hmac_sha3_384_790_msg[] = { 0xbc, 0x57, 0xd4, 0x67, 0xa9, 0xa2, 0xaf, 0x64, 0xad, 0x5e, 0x14, 0xb7, 0xbc, 0x08, 0x98, 0xdc, 0x63, }; static const unsigned char hmac_sha3_384_790_tag[] = { 0x7c, 0xfa, 0xae, 0x19, 0x46, 0xe4, 0x62, 0xec, 0xe0, 0x4e, 0xc2, 0xfd, 0xe8, 0xfe, 0xf1, 0xa6, 0xe9, 0xe5, 0xa5, 0xa5, 0x16, 0x57, 0xe1, 0x4e, }; static const wycheproof_hmac_test hmac_sha3_384_790 = { .name = "hmac_sha3_384_790", .hash = SHA3_384, .key = hmac_sha3_384_790_key, .keylen = 48, .msg = hmac_sha3_384_790_msg, .msglen = 17, .tag = hmac_sha3_384_790_tag, .taglen = 24, .result = 1, .comment = ", tcId is 99 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 791 for HMAC, tcId is 100 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_791_key[] = { 0x76, 0xb3, 0x6c, 0xc3, 0xb8, 0xca, 0x97, 0x57, 0x08, 0xee, 0x4b, 0x32, 0xbd, 0xbe, 0x40, 0xca, 0x13, 0xf9, 0xce, 0x38, 0x4c, 0x52, 0xc4, 0xb6, 0x60, 0x2b, 0x7f, 0xd9, 0x21, 0x64, 0xf1, 0xfd, 0x84, 0x32, 0x70, 0x6c, 0x19, 0x66, 0xf6, 0x48, 0xbf, 0x48, 0x30, 0xf4, 0xde, 0xb3, 0x47, 0x95, }; static const unsigned char hmac_sha3_384_791_msg[] = { 0xb1, 0xd0, 0x22, 0xc6, 0x53, 0x6f, 0x40, 0x1d, 0x14, 0x7d, 0xfc, 0x0d, 0x7d, 0x4e, 0x60, 0x0b, 0xb7, 0x53, 0xef, 0x0e, 0x9f, 0x24, 0x3b, 0xc3, }; static const unsigned char hmac_sha3_384_791_tag[] = { 0xf4, 0x19, 0x47, 0xef, 0x68, 0x6b, 0xb9, 0xa4, 0xaa, 0x35, 0x55, 0xf7, 0x2b, 0xb3, 0x20, 0xda, 0xb5, 0x77, 0x12, 0x3f, 0x8f, 0x7b, 0x8a, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_384_791 = { .name = "hmac_sha3_384_791", .hash = SHA3_384, .key = hmac_sha3_384_791_key, .keylen = 48, .msg = hmac_sha3_384_791_msg, .msglen = 24, .tag = hmac_sha3_384_791_tag, .taglen = 24, .result = 1, .comment = ", tcId is 100 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 792 for HMAC, tcId is 101 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_792_key[] = { 0x20, 0x56, 0x9a, 0x16, 0xf4, 0x53, 0xdd, 0x3c, 0x34, 0xdf, 0x98, 0x15, 0x52, 0x86, 0xb1, 0xca, 0x8a, 0x39, 0x2e, 0xa1, 0x64, 0xc9, 0x19, 0x31, 0x1f, 0x0d, 0xf9, 0xd3, 0x9d, 0x97, 0x60, 0x62, 0xf4, 0xf9, 0x92, 0xb9, 0x6d, 0xef, 0x38, 0x51, 0x88, 0x6e, 0x62, 0x95, 0xf2, 0x61, 0x50, 0x64, }; static const unsigned char hmac_sha3_384_792_msg[] = { 0x54, 0x02, 0xc4, 0xe6, 0x83, 0xd1, 0xa4, 0x31, 0x86, 0x8a, 0xd5, 0x28, 0xaf, 0xbf, 0x41, 0x28, 0xb0, 0xb1, 0x0c, 0xef, 0x94, 0x7d, 0x06, 0x3b, 0x34, 0xd3, 0x76, 0xd3, 0x44, 0xb7, 0x93, 0xb2, }; static const unsigned char hmac_sha3_384_792_tag[] = { 0xae, 0x11, 0xf9, 0xb8, 0x38, 0x0f, 0xfb, 0x39, 0x6a, 0xee, 0x5a, 0x64, 0x3d, 0xcd, 0x8d, 0x1c, 0xc9, 0x15, 0x44, 0xab, 0x18, 0x20, 0x1a, 0xec, }; static const wycheproof_hmac_test hmac_sha3_384_792 = { .name = "hmac_sha3_384_792", .hash = SHA3_384, .key = hmac_sha3_384_792_key, .keylen = 48, .msg = hmac_sha3_384_792_msg, .msglen = 32, .tag = hmac_sha3_384_792_tag, .taglen = 24, .result = 1, .comment = ", tcId is 101 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 793 for HMAC, tcId is 102 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_793_key[] = { 0x9e, 0xf6, 0xa5, 0x5f, 0x8a, 0x9b, 0x6b, 0x9e, 0xf1, 0xf8, 0x29, 0x61, 0x67, 0x31, 0x90, 0x78, 0x16, 0x37, 0x06, 0xae, 0x5b, 0x60, 0x89, 0x7c, 0x2d, 0xd6, 0xe3, 0x40, 0xb6, 0x7e, 0xd5, 0xd5, 0x77, 0xfb, 0x54, 0xc5, 0x54, 0x7c, 0xd5, 0xf2, 0x48, 0xf0, 0x6e, 0x70, 0x82, 0xff, 0xb8, 0x26, }; static const unsigned char hmac_sha3_384_793_msg[] = { 0x6a, 0x0d, 0x16, 0x27, 0x69, 0x41, 0xd8, 0xf0, 0x4e, 0xac, 0x2e, 0xc7, 0x23, 0xfa, 0x53, 0xb9, 0xd6, 0xb1, 0x6d, 0xa7, 0xe3, 0x0e, 0x7f, 0x2d, 0x9a, 0xd8, 0x98, 0xe7, 0xcb, 0xb7, 0x1b, 0xd3, 0xdd, 0x23, 0x4e, 0xe2, 0x28, 0x36, 0xff, 0x4a, 0xc6, 0x01, 0x1b, 0x6f, 0x12, 0xbd, 0x3a, }; static const unsigned char hmac_sha3_384_793_tag[] = { 0x57, 0xd5, 0x8a, 0xb4, 0xcb, 0xc8, 0xd5, 0x3e, 0x6c, 0x18, 0xce, 0x55, 0x6a, 0xfa, 0x2d, 0x9b, 0xcf, 0x22, 0xc1, 0xf4, 0x48, 0x6e, 0x45, 0x9c, }; static const wycheproof_hmac_test hmac_sha3_384_793 = { .name = "hmac_sha3_384_793", .hash = SHA3_384, .key = hmac_sha3_384_793_key, .keylen = 48, .msg = hmac_sha3_384_793_msg, .msglen = 47, .tag = hmac_sha3_384_793_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 794 for HMAC, tcId is 103 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_794_key[] = { 0xfb, 0x56, 0xbb, 0xbc, 0x6d, 0x75, 0x1b, 0x74, 0x4d, 0x8c, 0x1b, 0x57, 0xcc, 0x27, 0xa1, 0xd2, 0xc2, 0xf4, 0xe3, 0x8e, 0x34, 0x91, 0xf5, 0x44, 0x48, 0xcf, 0xcf, 0xb9, 0x38, 0x9b, 0x7f, 0x63, 0xfd, 0x0d, 0x41, 0x92, 0x09, 0x68, 0xef, 0x61, 0x25, 0x10, 0x62, 0x5f, 0x26, 0x37, 0xd2, 0x8d, }; static const unsigned char hmac_sha3_384_794_msg[] = { 0xcf, 0x17, 0x91, 0x51, 0x7e, 0xf5, 0xa6, 0x1c, 0x0d, 0xb6, 0x5a, 0x66, 0x8b, 0xee, 0x26, 0xfd, 0xbc, 0x97, 0x5d, 0x79, 0x9b, 0x26, 0x23, 0xcc, 0x0f, 0x3e, 0x45, 0x60, 0xe8, 0x0c, 0x70, 0x14, 0xfa, 0x9c, 0x02, 0xd5, 0x68, 0xc9, 0x8c, 0x86, 0x38, 0x5e, 0x00, 0x0f, 0xe6, 0x77, 0x6b, 0xb7, }; static const unsigned char hmac_sha3_384_794_tag[] = { 0xc4, 0xaa, 0x19, 0xf4, 0x24, 0x36, 0x45, 0xfa, 0x57, 0x31, 0xe0, 0x37, 0x68, 0xd1, 0x6d, 0x55, 0x22, 0x5a, 0xde, 0x23, 0xee, 0x7f, 0x37, 0x1b, }; static const wycheproof_hmac_test hmac_sha3_384_794 = { .name = "hmac_sha3_384_794", .hash = SHA3_384, .key = hmac_sha3_384_794_key, .keylen = 48, .msg = hmac_sha3_384_794_msg, .msglen = 48, .tag = hmac_sha3_384_794_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 795 for HMAC, tcId is 104 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_795_key[] = { 0xd0, 0x41, 0xe2, 0x4e, 0x59, 0xb3, 0x4d, 0x7a, 0x18, 0x12, 0x8a, 0x42, 0xd8, 0xa7, 0xa5, 0x2d, 0xcb, 0xa5, 0xd7, 0x9e, 0x5e, 0xd5, 0x85, 0xb5, 0x5c, 0x7c, 0x9e, 0x49, 0x46, 0xe5, 0xcc, 0xaf, 0x7e, 0x59, 0xdf, 0x0f, 0x3d, 0xa9, 0x8c, 0x7d, 0x05, 0x23, 0xe4, 0xcc, 0x8f, 0x9d, 0x7d, 0xa4, }; static const unsigned char hmac_sha3_384_795_msg[] = { 0x52, 0x79, 0x61, 0x8f, 0x1b, 0x41, 0x53, 0x49, 0x10, 0x39, 0x5a, 0x78, 0xde, 0xd9, 0x68, 0xae, 0xe3, 0x43, 0x10, 0x85, 0xb5, 0x99, 0xc4, 0xf5, 0x5e, 0xb5, 0xff, 0x8a, 0x2e, 0x87, 0x9b, 0xc4, 0x42, 0x91, 0xd9, 0x23, 0xde, 0x31, 0x00, 0x9d, 0xb1, 0xb9, 0xf7, 0xf8, 0x10, 0x95, 0xaf, 0xb3, 0xea, }; static const unsigned char hmac_sha3_384_795_tag[] = { 0xee, 0x3f, 0x29, 0x46, 0xaa, 0x04, 0xe6, 0x0b, 0x7f, 0x4b, 0x7f, 0x57, 0xee, 0x15, 0xde, 0xc5, 0xa7, 0xfc, 0xf8, 0xd1, 0x14, 0xeb, 0xc1, 0x4d, }; static const wycheproof_hmac_test hmac_sha3_384_795 = { .name = "hmac_sha3_384_795", .hash = SHA3_384, .key = hmac_sha3_384_795_key, .keylen = 48, .msg = hmac_sha3_384_795_msg, .msglen = 49, .tag = hmac_sha3_384_795_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 796 for HMAC, tcId is 105 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_796_key[] = { 0xe1, 0xce, 0x48, 0x84, 0xfd, 0x74, 0xa0, 0xe1, 0x97, 0xc6, 0x8a, 0xce, 0x3b, 0x29, 0xb5, 0x52, 0x31, 0x3a, 0xf8, 0xe4, 0x51, 0xe9, 0x8d, 0x9a, 0xb8, 0xd0, 0xe8, 0xf8, 0xee, 0x74, 0x14, 0x3e, 0x8f, 0xcb, 0x64, 0x46, 0x21, 0x7c, 0x0f, 0x31, 0x23, 0xa4, 0x26, 0xb8, 0xab, 0x6f, 0x62, 0xcb, }; static const unsigned char hmac_sha3_384_796_msg[] = { 0x71, 0x15, 0x4b, 0x9a, 0x65, 0x7b, 0x90, 0x5f, 0x88, 0x4b, 0xa5, 0x14, 0x0d, 0x5e, 0x7b, 0x92, 0x43, 0xfe, 0xc3, 0xe0, 0x3f, 0xbb, 0xdb, 0xb3, 0x60, 0xc8, 0x19, 0x49, 0x63, 0xae, 0x43, 0x17, 0x7b, 0x55, 0x02, 0xcd, 0x20, 0xf5, 0x59, 0xee, 0xef, 0xf8, 0x63, 0x8d, 0x02, 0x8c, 0x50, 0x19, 0x26, 0xeb, 0xc7, 0xed, 0xdd, 0x13, 0x2c, 0xce, 0xa2, 0x9e, 0xad, 0x7a, 0xd0, 0xc9, 0x5a, 0x30, 0xb9, 0xd3, 0x25, 0x95, 0x2c, 0xaf, 0xb0, 0xea, 0x5e, 0xc9, 0xd9, 0xd6, 0xfd, 0xeb, 0x63, 0x95, 0x0d, 0x5d, 0x69, 0xc8, 0xbb, 0xbe, 0xa7, 0x02, 0xae, 0xd1, 0xd4, 0x44, 0xda, 0x28, 0x68, 0x07, 0xff, 0xd6, 0xb3, 0x6c, 0xb4, 0x99, 0x02, 0xcb, 0xa7, 0xab, 0xf9, 0xbd, 0xa1, 0xb5, 0x77, 0xc6, }; static const unsigned char hmac_sha3_384_796_tag[] = { 0x92, 0x8a, 0xc1, 0x4f, 0x18, 0xd8, 0x7b, 0x8e, 0x1e, 0xee, 0x75, 0x9b, 0x4f, 0xfe, 0xe3, 0xc1, 0x7a, 0x29, 0x13, 0xc9, 0x14, 0xd8, 0x97, 0x4d, }; static const wycheproof_hmac_test hmac_sha3_384_796 = { .name = "hmac_sha3_384_796", .hash = SHA3_384, .key = hmac_sha3_384_796_key, .keylen = 48, .msg = hmac_sha3_384_796_msg, .msglen = 112, .tag = hmac_sha3_384_796_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 797 for HMAC, tcId is 106 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_797_key[] = { 0x8a, 0x24, 0x2c, 0x22, 0xd1, 0xb5, 0x4c, 0xe2, 0x16, 0xca, 0x03, 0xc8, 0x84, 0x55, 0xbe, 0xb1, 0x28, 0x21, 0x1a, 0x9f, 0x35, 0xaf, 0x23, 0x43, 0x70, 0x9a, 0xf7, 0xc5, 0xf4, 0x3a, 0x68, 0x14, 0x51, 0xea, 0x53, 0xa3, 0x6d, 0xe2, 0xe5, 0x04, 0x8e, 0xb4, 0x4a, 0x51, 0x68, 0x1c, 0x61, 0x20, }; static const unsigned char hmac_sha3_384_797_msg[] = { 0xab, 0x5e, 0xee, 0x6b, 0x83, 0x86, 0x91, 0x19, 0xf0, 0x0d, 0xd3, 0xcc, 0x66, 0xdd, 0xe7, 0x5c, 0xb5, 0x70, 0x05, 0x35, 0xa9, 0x0e, 0x9b, 0x3e, 0x32, 0xb3, 0x14, 0x34, 0xc2, 0x97, 0xef, 0x53, 0xf9, 0x46, 0x59, 0xd7, 0xd9, 0xb1, 0x13, 0x23, 0x16, 0x1b, 0x2e, 0x66, 0xc6, 0xb9, 0xc9, 0xad, 0x20, 0xe3, 0x13, 0x30, 0x3f, 0x81, 0xe8, 0x8e, 0x47, 0x17, 0x86, 0xc8, 0xe9, 0x36, 0x01, 0x1f, 0x78, 0x12, 0x1e, 0x39, 0x63, 0x0b, 0x2e, 0x08, 0x04, 0xfc, 0x97, 0xce, 0x5c, 0xb3, 0xa3, 0x4f, 0x26, 0x94, 0x94, 0x39, 0xfe, 0x53, 0x0a, 0xdc, 0xea, 0x6e, 0x97, 0xc7, 0x8b, 0x04, 0x2e, 0x08, 0x17, 0x25, 0x3b, 0xf7, 0x5d, 0xd5, 0x43, 0x35, 0x58, 0x41, 0x22, 0xf5, 0xed, 0xd2, 0x10, 0x34, 0x1b, 0x6d, 0x93, 0xf5, 0x8a, 0xa1, 0xb4, 0xde, 0x2a, 0xad, 0x76, 0xfe, 0xce, 0xc4, 0x4f, }; static const unsigned char hmac_sha3_384_797_tag[] = { 0x20, 0xcc, 0xf4, 0xf2, 0x22, 0xd1, 0x39, 0xd4, 0xab, 0x76, 0x23, 0xb3, 0xa3, 0x8c, 0x91, 0x54, 0x34, 0x69, 0x27, 0x00, 0x56, 0xff, 0x8c, 0x80, }; static const wycheproof_hmac_test hmac_sha3_384_797 = { .name = "hmac_sha3_384_797", .hash = SHA3_384, .key = hmac_sha3_384_797_key, .keylen = 48, .msg = hmac_sha3_384_797_msg, .msglen = 127, .tag = hmac_sha3_384_797_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 798 for HMAC, tcId is 107 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_798_key[] = { 0x31, 0x1c, 0x4b, 0xee, 0x7c, 0xf2, 0x57, 0xb7, 0x80, 0x13, 0x5a, 0x2e, 0x4a, 0x64, 0x13, 0xe6, 0x8a, 0x81, 0x6f, 0x5d, 0x84, 0x62, 0x51, 0x5d, 0xcb, 0x1c, 0x72, 0x49, 0x4b, 0x63, 0x35, 0x58, 0x1a, 0x9b, 0x60, 0xa2, 0x17, 0xb9, 0xff, 0x1c, 0x75, 0xe7, 0x76, 0x81, 0x48, 0xf8, 0xdf, 0x46, }; static const unsigned char hmac_sha3_384_798_msg[] = { 0x63, 0xcc, 0xc3, 0x84, 0x9c, 0x4c, 0x32, 0x3c, 0xb6, 0xce, 0x92, 0x68, 0x77, 0x96, 0x90, 0x48, 0xb8, 0x49, 0xee, 0x4a, 0xf1, 0x8e, 0x71, 0xee, 0xf5, 0x2f, 0xe9, 0xf2, 0x74, 0xa8, 0x67, 0x85, 0x60, 0xf9, 0xa5, 0xd4, 0x75, 0x10, 0xc3, 0xc9, 0x8c, 0x8a, 0x08, 0xed, 0x4c, 0x01, 0xa0, 0x1e, 0x0a, 0x36, 0x63, 0xef, 0x0c, 0xc6, 0xc3, 0xcd, 0xca, 0x62, 0x76, 0xd9, 0x1e, 0x99, 0xb0, 0xd4, 0x14, 0x26, 0x34, 0x98, 0xfb, 0x64, 0xad, 0x74, 0xb8, 0x20, 0xab, 0x52, 0xb3, 0x7a, 0xde, 0xaf, 0x27, 0xcb, 0x44, 0x54, 0x5e, 0xdb, 0x8f, 0x09, 0x09, 0x49, 0x92, 0x83, 0x7b, 0x8d, 0x3a, 0x0b, 0xaa, 0x2a, 0x10, 0x1a, 0x49, 0x59, 0x2e, 0xb8, 0x89, 0xdc, 0x8b, 0xac, 0xe4, 0xc7, 0x1e, 0x3e, 0xfc, 0xb9, 0xd4, 0x14, 0x9b, 0xd6, 0x70, 0xce, 0x2f, 0x77, 0x4d, 0x73, 0xc1, 0x2f, 0x2a, 0x45, }; static const unsigned char hmac_sha3_384_798_tag[] = { 0xda, 0xe6, 0x5a, 0x8c, 0x37, 0xc5, 0x45, 0x8f, 0x01, 0x77, 0x70, 0xfd, 0xbf, 0xc2, 0x02, 0x32, 0x91, 0xe0, 0x21, 0xbd, 0xdf, 0x76, 0x25, 0xc4, }; static const wycheproof_hmac_test hmac_sha3_384_798 = { .name = "hmac_sha3_384_798", .hash = SHA3_384, .key = hmac_sha3_384_798_key, .keylen = 48, .msg = hmac_sha3_384_798_msg, .msglen = 128, .tag = hmac_sha3_384_798_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 799 for HMAC, tcId is 108 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_799_key[] = { 0xfb, 0x79, 0x28, 0x67, 0xc8, 0x92, 0x8f, 0x05, 0x03, 0xaa, 0x24, 0x47, 0x7c, 0xeb, 0xf4, 0x2e, 0x0b, 0x01, 0x83, 0x46, 0xe3, 0x61, 0x97, 0x70, 0xb9, 0xe8, 0xf5, 0x09, 0x79, 0x45, 0xe2, 0xe2, 0x75, 0xad, 0x06, 0xf0, 0xc1, 0x21, 0x52, 0x36, 0x6a, 0xc0, 0x6e, 0x27, 0x8c, 0x94, 0x09, 0x0a, }; static const unsigned char hmac_sha3_384_799_msg[] = { 0x0a, 0x63, 0xe6, 0xd9, 0x1d, 0x7a, 0x6a, 0x18, 0xdb, 0xad, 0x87, 0x9f, 0xb8, 0xe2, 0x3a, 0xe3, 0x51, 0x92, 0x03, 0x91, 0xeb, 0x40, 0xfe, 0xad, 0x6c, 0xba, 0x84, 0x67, 0x68, 0xa2, 0xc6, 0x79, 0x7f, 0xf3, 0x47, 0xb4, 0x30, 0x13, 0x27, 0xb0, 0x9a, 0xfc, 0x41, 0xf7, 0xb8, 0x03, 0xaf, 0x6b, 0x61, 0xf6, 0xd9, 0xb8, 0x18, 0xe0, 0xdd, 0xcc, 0x02, 0x53, 0x6d, 0x05, 0x43, 0xdb, 0xf1, 0xa8, 0x7f, 0x2c, 0x5e, 0x02, 0x0f, 0x64, 0x59, 0x09, 0x43, 0x44, 0xb7, 0x25, 0x96, 0xd5, 0x48, 0x43, 0x5c, 0x31, 0x35, 0x44, 0xe9, 0x2c, 0x25, 0x4d, 0x54, 0xa7, 0x0a, 0x1d, 0x6f, 0x6e, 0xdd, 0x2f, 0x82, 0x54, 0x0a, 0x1e, 0xa2, 0xe8, 0x21, 0x25, 0xb0, 0x71, 0x5f, 0xa0, 0xf8, 0x90, 0xbb, 0x2b, 0xe4, 0xba, 0x00, 0x65, 0xd2, 0xba, 0x01, 0x44, 0x85, 0x46, 0x82, 0xae, 0xd0, 0x41, 0xc1, 0x03, 0x59, 0x96, 0x64, 0x8e, 0x2e, 0xd6, 0x71, 0xb7, 0x25, 0x3b, 0xa5, 0x67, 0xff, 0xb9, 0x99, 0xd9, 0x1f, 0xd8, 0xe7, 0xff, 0xce, 0x5c, 0x6d, 0xc4, 0x79, 0x07, 0x32, 0xad, 0xae, 0x44, 0x34, 0x35, 0xa4, 0x54, 0xfe, 0x6c, 0x2a, 0x7c, 0x67, 0x08, 0xd9, 0xd5, 0xb2, 0xeb, 0x92, 0x92, 0xd6, 0xfb, 0xe5, 0xe0, 0x26, 0xd6, 0x53, 0x32, 0xb3, 0x8c, 0x79, 0x25, 0xef, 0xf9, 0xbe, 0xb8, 0x90, 0x63, 0xca, 0xb6, 0x3f, 0xbe, 0xcb, 0x2a, 0xc0, 0xe1, 0xbb, 0x61, 0xa5, 0xb1, 0xe5, 0x11, 0xf9, 0x49, 0xc4, 0x3a, 0x34, 0xee, 0x26, 0xf1, 0x15, 0x6e, 0x97, 0x79, 0x3d, 0xa9, 0x7b, 0xcf, 0x5b, 0x5c, 0x67, 0x64, 0x13, 0x84, 0xf2, 0x68, 0x13, 0x1b, 0x29, 0x78, 0x57, 0xd7, 0x19, 0xee, 0xb6, 0xca, 0xfa, 0x3d, 0xbe, 0x9b, 0x8d, 0x0d, 0xa5, 0x5c, 0x98, 0x65, 0x6f, 0x20, 0xe5, 0xb3, 0x9b, }; static const unsigned char hmac_sha3_384_799_tag[] = { 0x92, 0x7b, 0xfd, 0xba, 0x4e, 0xe1, 0x1d, 0x8f, 0x15, 0x84, 0x91, 0x76, 0x48, 0x40, 0xfd, 0x64, 0xff, 0x64, 0x01, 0x40, 0x15, 0x43, 0xb5, 0x39, }; static const wycheproof_hmac_test hmac_sha3_384_799 = { .name = "hmac_sha3_384_799", .hash = SHA3_384, .key = hmac_sha3_384_799_key, .keylen = 48, .msg = hmac_sha3_384_799_msg, .msglen = 255, .tag = hmac_sha3_384_799_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 800 for HMAC, tcId is 109 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_800_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_800_tag[] = { 0xd1, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_800 = { .name = "hmac_sha3_384_800", .hash = SHA3_384, .key = hmac_sha3_384_800_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_800_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 801 for HMAC, tcId is 110 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_801_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_801_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_801_tag[] = { 0x66, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_801 = { .name = "hmac_sha3_384_801", .hash = SHA3_384, .key = hmac_sha3_384_801_key, .keylen = 48, .msg = hmac_sha3_384_801_msg, .msglen = 16, .tag = hmac_sha3_384_801_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 802 for HMAC, tcId is 111 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_802_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_802_tag[] = { 0xd2, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_802 = { .name = "hmac_sha3_384_802", .hash = SHA3_384, .key = hmac_sha3_384_802_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_802_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 803 for HMAC, tcId is 112 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_803_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_803_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_803_tag[] = { 0x65, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_803 = { .name = "hmac_sha3_384_803", .hash = SHA3_384, .key = hmac_sha3_384_803_key, .keylen = 48, .msg = hmac_sha3_384_803_msg, .msglen = 16, .tag = hmac_sha3_384_803_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 804 for HMAC, tcId is 113 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_804_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_804_tag[] = { 0x50, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_804 = { .name = "hmac_sha3_384_804", .hash = SHA3_384, .key = hmac_sha3_384_804_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_804_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 805 for HMAC, tcId is 114 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_805_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_805_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_805_tag[] = { 0xe7, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_805 = { .name = "hmac_sha3_384_805", .hash = SHA3_384, .key = hmac_sha3_384_805_key, .keylen = 48, .msg = hmac_sha3_384_805_msg, .msglen = 16, .tag = hmac_sha3_384_805_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 806 for HMAC, tcId is 115 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_806_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_806_tag[] = { 0xd0, 0x0d, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_806 = { .name = "hmac_sha3_384_806", .hash = SHA3_384, .key = hmac_sha3_384_806_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_806_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 807 for HMAC, tcId is 116 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_807_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_807_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_807_tag[] = { 0x67, 0x55, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_807 = { .name = "hmac_sha3_384_807", .hash = SHA3_384, .key = hmac_sha3_384_807_key, .keylen = 48, .msg = hmac_sha3_384_807_msg, .msglen = 16, .tag = hmac_sha3_384_807_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 808 for HMAC, tcId is 117 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_808_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_808_tag[] = { 0xd0, 0x0c, 0xe8, 0x1d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_808 = { .name = "hmac_sha3_384_808", .hash = SHA3_384, .key = hmac_sha3_384_808_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_808_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 809 for HMAC, tcId is 118 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_809_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_809_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_809_tag[] = { 0x67, 0x54, 0xfe, 0xc4, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_809 = { .name = "hmac_sha3_384_809", .hash = SHA3_384, .key = hmac_sha3_384_809_key, .keylen = 48, .msg = hmac_sha3_384_809_msg, .msglen = 16, .tag = hmac_sha3_384_809_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 810 for HMAC, tcId is 119 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_810_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_810_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x53, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_810 = { .name = "hmac_sha3_384_810", .hash = SHA3_384, .key = hmac_sha3_384_810_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_810_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 811 for HMAC, tcId is 120 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_811_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_811_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_811_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x55, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_811 = { .name = "hmac_sha3_384_811", .hash = SHA3_384, .key = hmac_sha3_384_811_key, .keylen = 48, .msg = hmac_sha3_384_811_msg, .msglen = 16, .tag = hmac_sha3_384_811_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 812 for HMAC, tcId is 121 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_812_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_812_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x50, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_812 = { .name = "hmac_sha3_384_812", .hash = SHA3_384, .key = hmac_sha3_384_812_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_812_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 813 for HMAC, tcId is 122 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_813_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_813_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_813_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x56, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_813 = { .name = "hmac_sha3_384_813", .hash = SHA3_384, .key = hmac_sha3_384_813_key, .keylen = 48, .msg = hmac_sha3_384_813_msg, .msglen = 16, .tag = hmac_sha3_384_813_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 814 for HMAC, tcId is 123 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_814_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_814_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_814 = { .name = "hmac_sha3_384_814", .hash = SHA3_384, .key = hmac_sha3_384_814_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_814_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 815 for HMAC, tcId is 124 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_815_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_815_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_815_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_815 = { .name = "hmac_sha3_384_815", .hash = SHA3_384, .key = hmac_sha3_384_815_key, .keylen = 48, .msg = hmac_sha3_384_815_msg, .msglen = 16, .tag = hmac_sha3_384_815_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 816 for HMAC, tcId is 125 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_816_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_816_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xae, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_816 = { .name = "hmac_sha3_384_816", .hash = SHA3_384, .key = hmac_sha3_384_816_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_816_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 817 for HMAC, tcId is 126 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_817_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_817_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_817_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd1, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_817 = { .name = "hmac_sha3_384_817", .hash = SHA3_384, .key = hmac_sha3_384_817_key, .keylen = 48, .msg = hmac_sha3_384_817_msg, .msglen = 16, .tag = hmac_sha3_384_817_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 818 for HMAC, tcId is 127 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_818_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_818_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0x2f, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_818 = { .name = "hmac_sha3_384_818", .hash = SHA3_384, .key = hmac_sha3_384_818_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_818_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 819 for HMAC, tcId is 128 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_819_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_819_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_819_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0x50, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_819 = { .name = "hmac_sha3_384_819", .hash = SHA3_384, .key = hmac_sha3_384_819_key, .keylen = 48, .msg = hmac_sha3_384_819_msg, .msglen = 16, .tag = hmac_sha3_384_819_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 820 for HMAC, tcId is 129 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_820_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_820_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x69, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_820 = { .name = "hmac_sha3_384_820", .hash = SHA3_384, .key = hmac_sha3_384_820_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_820_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 821 for HMAC, tcId is 130 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_821_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_821_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_821_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0x91, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_821 = { .name = "hmac_sha3_384_821", .hash = SHA3_384, .key = hmac_sha3_384_821_key, .keylen = 48, .msg = hmac_sha3_384_821_msg, .msglen = 16, .tag = hmac_sha3_384_821_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 822 for HMAC, tcId is 131 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_822_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_822_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xdb, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_822 = { .name = "hmac_sha3_384_822", .hash = SHA3_384, .key = hmac_sha3_384_822_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_822_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 823 for HMAC, tcId is 132 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_823_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_823_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_823_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x46, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_823 = { .name = "hmac_sha3_384_823", .hash = SHA3_384, .key = hmac_sha3_384_823_key, .keylen = 48, .msg = hmac_sha3_384_823_msg, .msglen = 16, .tag = hmac_sha3_384_823_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 824 for HMAC, tcId is 133 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_824_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_824_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x79, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_824 = { .name = "hmac_sha3_384_824", .hash = SHA3_384, .key = hmac_sha3_384_824_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_824_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 825 for HMAC, tcId is 134 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_825_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_825_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_825_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe7, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_825 = { .name = "hmac_sha3_384_825", .hash = SHA3_384, .key = hmac_sha3_384_825_key, .keylen = 48, .msg = hmac_sha3_384_825_msg, .msglen = 16, .tag = hmac_sha3_384_825_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 826 for HMAC, tcId is 135 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_826_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_826_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x7a, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_826 = { .name = "hmac_sha3_384_826", .hash = SHA3_384, .key = hmac_sha3_384_826_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_826_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 827 for HMAC, tcId is 136 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_827_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_827_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_827_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe4, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_827 = { .name = "hmac_sha3_384_827", .hash = SHA3_384, .key = hmac_sha3_384_827_key, .keylen = 48, .msg = hmac_sha3_384_827_msg, .msglen = 16, .tag = hmac_sha3_384_827_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 828 for HMAC, tcId is 137 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_828_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_828_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0xf8, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_828 = { .name = "hmac_sha3_384_828", .hash = SHA3_384, .key = hmac_sha3_384_828_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_828_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 829 for HMAC, tcId is 138 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_829_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_829_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_829_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0x66, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_829 = { .name = "hmac_sha3_384_829", .hash = SHA3_384, .key = hmac_sha3_384_829_key, .keylen = 48, .msg = hmac_sha3_384_829_msg, .msglen = 16, .tag = hmac_sha3_384_829_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 830 for HMAC, tcId is 139 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_830_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_830_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7f, }; static const wycheproof_hmac_test hmac_sha3_384_830 = { .name = "hmac_sha3_384_830", .hash = SHA3_384, .key = hmac_sha3_384_830_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_830_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 184 in tag, tcId is 139 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 831 for HMAC, tcId is 140 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_831_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_831_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_831_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x17, }; static const wycheproof_hmac_test hmac_sha3_384_831 = { .name = "hmac_sha3_384_831", .hash = SHA3_384, .key = hmac_sha3_384_831_key, .keylen = 48, .msg = hmac_sha3_384_831_msg, .msglen = 16, .tag = hmac_sha3_384_831_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 184 in tag, tcId is 140 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 832 for HMAC, tcId is 141 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_832_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_832_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7c, }; static const wycheproof_hmac_test hmac_sha3_384_832 = { .name = "hmac_sha3_384_832", .hash = SHA3_384, .key = hmac_sha3_384_832_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_832_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 185 in tag, tcId is 141 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 833 for HMAC, tcId is 142 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_833_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_833_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_833_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x14, }; static const wycheproof_hmac_test hmac_sha3_384_833 = { .name = "hmac_sha3_384_833", .hash = SHA3_384, .key = hmac_sha3_384_833_key, .keylen = 48, .msg = hmac_sha3_384_833_msg, .msglen = 16, .tag = hmac_sha3_384_833_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 185 in tag, tcId is 142 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 834 for HMAC, tcId is 143 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_834_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_834_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x3e, }; static const wycheproof_hmac_test hmac_sha3_384_834 = { .name = "hmac_sha3_384_834", .hash = SHA3_384, .key = hmac_sha3_384_834_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_834_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 190 in tag, tcId is 143 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 835 for HMAC, tcId is 144 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_835_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_835_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_835_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x56, }; static const wycheproof_hmac_test hmac_sha3_384_835 = { .name = "hmac_sha3_384_835", .hash = SHA3_384, .key = hmac_sha3_384_835_key, .keylen = 48, .msg = hmac_sha3_384_835_msg, .msglen = 16, .tag = hmac_sha3_384_835_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 190 in tag, tcId is 144 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 836 for HMAC, tcId is 145 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_836_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_836_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0xfe, }; static const wycheproof_hmac_test hmac_sha3_384_836 = { .name = "hmac_sha3_384_836", .hash = SHA3_384, .key = hmac_sha3_384_836_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_836_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 191 in tag, tcId is 145 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 837 for HMAC, tcId is 146 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_837_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_837_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_837_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x96, }; static const wycheproof_hmac_test hmac_sha3_384_837 = { .name = "hmac_sha3_384_837", .hash = SHA3_384, .key = hmac_sha3_384_837_key, .keylen = 48, .msg = hmac_sha3_384_837_msg, .msglen = 16, .tag = hmac_sha3_384_837_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 191 in tag, tcId is 146 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 838 for HMAC, tcId is 147 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_838_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_838_tag[] = { 0xd1, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0x2a, 0xae, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_838 = { .name = "hmac_sha3_384_838", .hash = SHA3_384, .key = hmac_sha3_384_838_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_838_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 839 for HMAC, tcId is 148 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_839_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_839_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_839_tag[] = { 0x66, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x1c, 0xd1, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_839 = { .name = "hmac_sha3_384_839", .hash = SHA3_384, .key = hmac_sha3_384_839_key, .keylen = 48, .msg = hmac_sha3_384_839_msg, .msglen = 16, .tag = hmac_sha3_384_839_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 840 for HMAC, tcId is 149 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_840_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_840_tag[] = { 0xd0, 0x0c, 0xe8, 0x1d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0xc2, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_840 = { .name = "hmac_sha3_384_840", .hash = SHA3_384, .key = hmac_sha3_384_840_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_840_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 841 for HMAC, tcId is 150 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_841_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_841_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_841_tag[] = { 0x67, 0x54, 0xfe, 0xc4, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0x60, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_841 = { .name = "hmac_sha3_384_841", .hash = SHA3_384, .key = hmac_sha3_384_841_key, .keylen = 48, .msg = hmac_sha3_384_841_msg, .msglen = 16, .tag = hmac_sha3_384_841_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 842 for HMAC, tcId is 151 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_842_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_842_tag[] = { 0xd0, 0x0c, 0xe8, 0x9d, 0x52, 0x35, 0xb2, 0xaa, 0xaf, 0x49, 0xda, 0xe0, 0x78, 0xc0, 0xc8, 0x42, 0x9f, 0xc3, 0xab, 0x69, 0x9d, 0x89, 0x83, 0x7e, }; static const wycheproof_hmac_test hmac_sha3_384_842 = { .name = "hmac_sha3_384_842", .hash = SHA3_384, .key = hmac_sha3_384_842_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_842_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 843 for HMAC, tcId is 152 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_843_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_843_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_843_tag[] = { 0x67, 0x54, 0xfe, 0x44, 0x54, 0x2b, 0x3f, 0x9c, 0xd0, 0xb1, 0x47, 0x28, 0xe6, 0x9b, 0xbf, 0xe0, 0x83, 0xf0, 0x2c, 0xaf, 0xd8, 0xcc, 0xc4, 0x16, }; static const wycheproof_hmac_test hmac_sha3_384_843 = { .name = "hmac_sha3_384_843", .hash = SHA3_384, .key = hmac_sha3_384_843_key, .keylen = 48, .msg = hmac_sha3_384_843_msg, .msglen = 16, .tag = hmac_sha3_384_843_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 844 for HMAC, tcId is 153 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_844_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_844_tag[] = { 0x2f, 0xf3, 0x17, 0x62, 0xad, 0xca, 0x4d, 0xd5, 0x50, 0xb6, 0x25, 0x1f, 0x87, 0x3f, 0x37, 0x3d, 0x60, 0x3c, 0x54, 0x96, 0x62, 0x76, 0x7c, 0x81, }; static const wycheproof_hmac_test hmac_sha3_384_844 = { .name = "hmac_sha3_384_844", .hash = SHA3_384, .key = hmac_sha3_384_844_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_844_tag, .taglen = 24, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 845 for HMAC, tcId is 154 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_845_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_845_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_845_tag[] = { 0x98, 0xab, 0x01, 0xbb, 0xab, 0xd4, 0xc0, 0xe3, 0x2f, 0x4e, 0xb8, 0xd7, 0x19, 0x64, 0x40, 0x9f, 0x7c, 0x0f, 0xd3, 0x50, 0x27, 0x33, 0x3b, 0xe9, }; static const wycheproof_hmac_test hmac_sha3_384_845 = { .name = "hmac_sha3_384_845", .hash = SHA3_384, .key = hmac_sha3_384_845_key, .keylen = 48, .msg = hmac_sha3_384_845_msg, .msglen = 16, .tag = hmac_sha3_384_845_tag, .taglen = 24, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 846 for HMAC, tcId is 155 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_846_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_846_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_384_846 = { .name = "hmac_sha3_384_846", .hash = SHA3_384, .key = hmac_sha3_384_846_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_846_tag, .taglen = 24, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 847 for HMAC, tcId is 156 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_847_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_847_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_847_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_384_847 = { .name = "hmac_sha3_384_847", .hash = SHA3_384, .key = hmac_sha3_384_847_key, .keylen = 48, .msg = hmac_sha3_384_847_msg, .msglen = 16, .tag = hmac_sha3_384_847_tag, .taglen = 24, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 848 for HMAC, tcId is 157 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_848_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_848_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_384_848 = { .name = "hmac_sha3_384_848", .hash = SHA3_384, .key = hmac_sha3_384_848_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_848_tag, .taglen = 24, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 849 for HMAC, tcId is 158 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_849_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_849_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_849_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_384_849 = { .name = "hmac_sha3_384_849", .hash = SHA3_384, .key = hmac_sha3_384_849_key, .keylen = 48, .msg = hmac_sha3_384_849_msg, .msglen = 16, .tag = hmac_sha3_384_849_tag, .taglen = 24, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 850 for HMAC, tcId is 159 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_850_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_850_tag[] = { 0x50, 0x8c, 0x68, 0x1d, 0xd2, 0xb5, 0x32, 0xaa, 0x2f, 0xc9, 0x5a, 0x60, 0xf8, 0x40, 0x48, 0x42, 0x1f, 0x43, 0x2b, 0xe9, 0x1d, 0x09, 0x03, 0xfe, }; static const wycheproof_hmac_test hmac_sha3_384_850 = { .name = "hmac_sha3_384_850", .hash = SHA3_384, .key = hmac_sha3_384_850_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_850_tag, .taglen = 24, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 851 for HMAC, tcId is 160 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_851_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_851_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_851_tag[] = { 0xe7, 0xd4, 0x7e, 0xc4, 0xd4, 0xab, 0xbf, 0x9c, 0x50, 0x31, 0xc7, 0xa8, 0x66, 0x1b, 0x3f, 0xe0, 0x03, 0x70, 0xac, 0x2f, 0x58, 0x4c, 0x44, 0x96, }; static const wycheproof_hmac_test hmac_sha3_384_851 = { .name = "hmac_sha3_384_851", .hash = SHA3_384, .key = hmac_sha3_384_851_key, .keylen = 48, .msg = hmac_sha3_384_851_msg, .msglen = 16, .tag = hmac_sha3_384_851_tag, .taglen = 24, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 852 for HMAC, tcId is 161 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_852_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_852_tag[] = { 0xd1, 0x0d, 0xe9, 0x9c, 0x53, 0x34, 0xb3, 0x2b, 0xae, 0x48, 0xdb, 0xe1, 0x79, 0xc1, 0xc9, 0xc3, 0x9e, 0xc2, 0xaa, 0x68, 0x9c, 0x88, 0x82, 0x7f, }; static const wycheproof_hmac_test hmac_sha3_384_852 = { .name = "hmac_sha3_384_852", .hash = SHA3_384, .key = hmac_sha3_384_852_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_852_tag, .taglen = 24, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 853 for HMAC, tcId is 162 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_853_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha3_384_853_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_384_853_tag[] = { 0x66, 0x55, 0xff, 0x45, 0x55, 0x2a, 0x3e, 0x1d, 0xd1, 0xb0, 0x46, 0x29, 0xe7, 0x9a, 0xbe, 0x61, 0x82, 0xf1, 0x2d, 0xae, 0xd9, 0xcd, 0xc5, 0x17, }; static const wycheproof_hmac_test hmac_sha3_384_853 = { .name = "hmac_sha3_384_853", .hash = SHA3_384, .key = hmac_sha3_384_853_key, .keylen = 48, .msg = hmac_sha3_384_853_msg, .msglen = 16, .tag = hmac_sha3_384_853_tag, .taglen = 24, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 854 for HMAC, tcId is 163 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_854_key[] = { 0x08, 0x47, 0x6e, 0x9d, 0x49, 0x49, 0x9c, 0x5f, 0x52, 0xe3, 0x7f, 0x80, 0xec, 0xe6, 0xf5, 0xa4, 0x54, 0x59, 0x94, 0x88, 0x06, 0xb4, 0x82, 0x41, }; static const unsigned char hmac_sha3_384_854_tag[] = { 0xfc, 0x51, 0x43, 0x70, 0x9d, 0x60, 0xf6, 0x65, 0x5e, 0x00, 0x9a, 0xcf, 0xea, 0x70, 0x16, 0x38, 0x63, 0x50, 0x59, 0x36, 0x22, 0xe5, 0x90, 0x56, 0x0c, 0x47, 0xe8, 0x46, 0xa3, 0xfa, 0xe8, 0xf6, 0xed, 0xc3, 0xe4, 0x33, 0x1b, 0x83, 0x05, 0x83, 0x4c, 0xae, 0x24, 0x9d, 0xba, 0x9e, 0x26, 0x9f, }; static const wycheproof_hmac_test hmac_sha3_384_854 = { .name = "hmac_sha3_384_854", .hash = SHA3_384, .key = hmac_sha3_384_854_key, .keylen = 24, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_854_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 855 for HMAC, tcId is 164 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_855_key[] = { 0x21, 0x3b, 0x44, 0xd8, 0xe1, 0xfa, 0xba, 0xff, 0x83, 0x7e, 0xf3, 0x0e, 0xe2, 0x54, 0x2f, 0x9a, 0xb8, 0x2e, 0xd7, 0x04, 0x11, 0xda, 0xe7, 0x8f, }; static const unsigned char hmac_sha3_384_855_msg[] = { 0xee, 0x0b, 0xf4, 0x85, 0x85, 0xc1, 0x86, 0xff, 0x99, 0x1b, 0x4d, 0x86, 0x07, 0x81, 0x7c, 0x9c, }; static const unsigned char hmac_sha3_384_855_tag[] = { 0xb9, 0x25, 0x5a, 0x1f, 0x98, 0xc0, 0x6f, 0xf6, 0x04, 0x87, 0x60, 0xa1, 0xb2, 0x2d, 0x63, 0xc0, 0xe8, 0xa7, 0x47, 0x9c, 0x5d, 0x45, 0x36, 0x64, 0xa6, 0x00, 0x28, 0x51, 0x2d, 0x64, 0xe1, 0x3d, 0x79, 0xf7, 0xe3, 0x9e, 0x8c, 0xb5, 0x39, 0x9d, 0x85, 0x9f, 0x1c, 0x8b, 0xe4, 0x76, 0x11, 0x72, }; static const wycheproof_hmac_test hmac_sha3_384_855 = { .name = "hmac_sha3_384_855", .hash = SHA3_384, .key = hmac_sha3_384_855_key, .keylen = 24, .msg = hmac_sha3_384_855_msg, .msglen = 16, .tag = hmac_sha3_384_855_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 856 for HMAC, tcId is 165 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_856_key[] = { 0xb4, 0xaf, 0xa9, 0xda, 0xaa, 0x8c, 0x94, 0x4d, 0x73, 0xa3, 0x88, 0x1f, 0x32, 0x21, 0xe4, 0x2b, 0x34, 0xef, 0x4e, 0x35, 0xf1, 0x84, 0xe8, 0x78, }; static const unsigned char hmac_sha3_384_856_msg[] = { 0xcf, 0x60, 0x7f, 0x6a, 0x0e, 0xb4, 0x4e, 0xcb, 0xca, 0x81, 0xb6, 0xd1, 0xfd, 0xb5, 0x95, 0xce, 0xe3, 0x5f, 0x23, 0x53, 0xda, 0x02, 0xe8, 0x2e, 0x28, 0xe1, 0x33, 0xb9, 0xde, 0xcd, 0x8f, 0xbb, }; static const unsigned char hmac_sha3_384_856_tag[] = { 0xb5, 0x66, 0x41, 0xa9, 0xd6, 0x51, 0x4b, 0x11, 0x8c, 0x70, 0xf3, 0x0a, 0x61, 0xc0, 0x8e, 0x7e, 0x7a, 0x65, 0x0a, 0xe2, 0xcf, 0xb9, 0xd7, 0x3d, 0x63, 0x3c, 0x3c, 0xc4, 0x02, 0xa0, 0xb9, 0xff, 0x75, 0xc9, 0x22, 0x4a, 0x94, 0x61, 0x08, 0x61, 0x32, 0x22, 0x25, 0xba, 0x31, 0xd9, 0xf3, 0xad, }; static const wycheproof_hmac_test hmac_sha3_384_856 = { .name = "hmac_sha3_384_856", .hash = SHA3_384, .key = hmac_sha3_384_856_key, .keylen = 24, .msg = hmac_sha3_384_856_msg, .msglen = 32, .tag = hmac_sha3_384_856_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 857 for HMAC, tcId is 166 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_857_key[] = { 0x89, 0xe4, 0x6b, 0x66, 0x20, 0x95, 0x48, 0xc8, 0x0b, 0x0c, 0x83, 0x06, 0x62, 0x22, 0x3b, 0x49, 0xb0, 0xe3, 0xb8, 0x95, 0xeb, 0x30, 0xe2, 0xfc, }; static const unsigned char hmac_sha3_384_857_tag[] = { 0xee, 0xeb, 0xe1, 0x82, 0x3f, 0xb0, 0x42, 0xcc, 0x7c, 0x56, 0xb3, 0x17, 0x48, 0xaf, 0x6a, 0x13, 0x44, 0x58, 0xea, 0xb6, 0x2f, 0xa2, 0xe0, 0xa7, }; static const wycheproof_hmac_test hmac_sha3_384_857 = { .name = "hmac_sha3_384_857", .hash = SHA3_384, .key = hmac_sha3_384_857_key, .keylen = 24, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_857_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 858 for HMAC, tcId is 167 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_858_key[] = { 0xf2, 0xc1, 0x0c, 0xe8, 0xcb, 0x1c, 0xf3, 0xb3, 0x63, 0x35, 0x44, 0x73, 0xb0, 0x27, 0xc1, 0xe5, 0x3d, 0xec, 0xce, 0xf0, 0x32, 0x33, 0xbe, 0x0c, }; static const unsigned char hmac_sha3_384_858_msg[] = { 0xe1, 0xfa, 0x10, 0xb8, 0xe3, 0x01, 0xe0, 0x34, 0x84, 0x05, 0x77, 0x0b, 0xc3, 0xfa, 0xfc, 0xb1, }; static const unsigned char hmac_sha3_384_858_tag[] = { 0x9f, 0x0e, 0x9d, 0x9b, 0xe7, 0x0c, 0x82, 0x52, 0x5f, 0x8a, 0xdd, 0x7d, 0xd1, 0x5d, 0x92, 0x5b, 0x93, 0x98, 0xd7, 0xfd, 0xbe, 0x1f, 0x21, 0x10, }; static const wycheproof_hmac_test hmac_sha3_384_858 = { .name = "hmac_sha3_384_858", .hash = SHA3_384, .key = hmac_sha3_384_858_key, .keylen = 24, .msg = hmac_sha3_384_858_msg, .msglen = 16, .tag = hmac_sha3_384_858_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 859 for HMAC, tcId is 168 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_859_key[] = { 0x92, 0xe0, 0x74, 0x44, 0x2c, 0xc4, 0xc5, 0x9e, 0x72, 0x26, 0x08, 0x08, 0xd8, 0x0d, 0x8e, 0x7b, 0x85, 0xc6, 0x33, 0x50, 0x68, 0x91, 0x7b, 0x83, }; static const unsigned char hmac_sha3_384_859_msg[] = { 0x34, 0xea, 0xe2, 0x74, 0x25, 0xac, 0xe1, 0x77, 0x71, 0xe1, 0x64, 0xcb, 0xb6, 0x34, 0x30, 0x6f, 0x35, 0x2e, 0xdc, 0x9c, 0x37, 0xbf, 0x60, 0x8b, 0xe8, 0xa7, 0x55, 0xfb, 0x94, 0x14, 0x81, 0x83, }; static const unsigned char hmac_sha3_384_859_tag[] = { 0xb7, 0x89, 0xa4, 0x37, 0x1f, 0x0a, 0xa2, 0xf6, 0x67, 0xa7, 0xad, 0xe1, 0xc5, 0x3c, 0x98, 0xb5, 0x3a, 0x39, 0xff, 0x65, 0xdf, 0xbe, 0x7d, 0x28, }; static const wycheproof_hmac_test hmac_sha3_384_859 = { .name = "hmac_sha3_384_859", .hash = SHA3_384, .key = hmac_sha3_384_859_key, .keylen = 24, .msg = hmac_sha3_384_859_msg, .msglen = 32, .tag = hmac_sha3_384_859_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 860 for HMAC, tcId is 169 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_860_key[] = { 0xdb, 0x6f, 0x99, 0x56, 0xc3, 0xf4, 0xca, 0x6e, 0x41, 0xf1, 0xf7, 0xf1, 0x46, 0x29, 0xd4, 0x4c, 0x79, 0xe0, 0x35, 0x3e, 0xdb, 0xf3, 0xe3, 0x10, 0xe6, 0x85, 0x8b, 0xbc, 0x45, 0xa7, 0xcd, 0x57, 0x77, 0x8a, 0x90, 0x53, 0xba, 0x22, 0xa1, 0x41, 0xbf, 0x58, 0xbf, 0xd4, 0x34, 0xad, 0x08, 0x64, 0x8c, 0x70, 0x41, 0xa2, 0x24, 0xb9, 0x7a, 0x0d, 0x17, 0xe0, 0xed, 0xf9, 0x4f, 0xd4, 0x0b, 0x41, 0x0a, }; static const unsigned char hmac_sha3_384_860_tag[] = { 0x25, 0x53, 0xa0, 0x44, 0x1b, 0xda, 0x89, 0xfe, 0x78, 0xa8, 0xfe, 0xf9, 0xd3, 0x34, 0xf9, 0x22, 0x24, 0xc3, 0xfd, 0x47, 0xb7, 0xeb, 0x8f, 0x18, 0xbd, 0x6b, 0xa3, 0xe7, 0xc2, 0xdd, 0xc3, 0x83, 0xab, 0x92, 0x64, 0xf5, 0x0e, 0xed, 0x7d, 0x09, 0xf5, 0xe4, 0x0a, 0x10, 0xe5, 0xcf, 0x52, 0x71, }; static const wycheproof_hmac_test hmac_sha3_384_860 = { .name = "hmac_sha3_384_860", .hash = SHA3_384, .key = hmac_sha3_384_860_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_860_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 861 for HMAC, tcId is 170 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_861_key[] = { 0xf0, 0x34, 0x04, 0xbd, 0xb3, 0xe0, 0x8f, 0x53, 0x0d, 0x4c, 0x3a, 0x5f, 0x16, 0x5d, 0x23, 0x60, 0x12, 0xa4, 0xc4, 0x5c, 0xd0, 0x63, 0xe3, 0xe4, 0x48, 0x3d, 0xa0, 0x88, 0xec, 0x0a, 0xfd, 0xb2, 0x4e, 0x96, 0x39, 0xfc, 0xca, 0xbb, 0x91, 0xf9, 0x8a, 0x49, 0xdc, 0x29, 0x72, 0xe2, 0x98, 0x14, 0x26, 0x57, 0x3e, 0xcf, 0xe6, 0x9c, 0x00, 0xc4, 0x3a, 0x2d, 0x99, 0xa3, 0x10, 0x7c, 0xef, 0x3a, 0x70, }; static const unsigned char hmac_sha3_384_861_msg[] = { 0x73, 0xed, 0x9f, 0xa2, 0xac, 0xf4, 0x9d, 0x6c, 0x98, 0xbf, 0xc7, 0xd6, 0xc5, 0xad, 0x9c, 0x56, }; static const unsigned char hmac_sha3_384_861_tag[] = { 0xc3, 0x45, 0xa7, 0x2f, 0xf4, 0xdc, 0x5a, 0x62, 0xc8, 0xfe, 0xf9, 0x12, 0xc5, 0x1f, 0x7d, 0x95, 0x81, 0x4a, 0x3b, 0x59, 0x29, 0x1d, 0xf3, 0xf3, 0x8d, 0xa2, 0x14, 0xa4, 0x64, 0x23, 0xaf, 0x89, 0xa4, 0x0f, 0x8e, 0x37, 0x04, 0x74, 0x03, 0xc9, 0x49, 0x97, 0x68, 0xb3, 0x17, 0x1a, 0x55, 0xc2, }; static const wycheproof_hmac_test hmac_sha3_384_861 = { .name = "hmac_sha3_384_861", .hash = SHA3_384, .key = hmac_sha3_384_861_key, .keylen = 65, .msg = hmac_sha3_384_861_msg, .msglen = 16, .tag = hmac_sha3_384_861_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 862 for HMAC, tcId is 171 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_862_key[] = { 0xee, 0x79, 0x9e, 0x25, 0xed, 0xb1, 0xb1, 0x84, 0x52, 0xe5, 0xed, 0x17, 0x4b, 0xc6, 0xb2, 0x18, 0x5a, 0x67, 0x54, 0x41, 0x7d, 0x6c, 0xc0, 0x5d, 0x73, 0x6d, 0x2b, 0xa9, 0xef, 0xc8, 0x36, 0x7e, 0x4b, 0x05, 0xba, 0x0a, 0x2e, 0xe5, 0x25, 0xce, 0xea, 0xb7, 0x4f, 0x98, 0x04, 0xa8, 0x47, 0x91, 0x30, 0xc3, 0x28, 0xd6, 0x71, 0xe3, 0x40, 0x70, 0xcf, 0x17, 0x4a, 0x00, 0x3a, 0x1d, 0xfb, 0x59, 0x94, }; static const unsigned char hmac_sha3_384_862_msg[] = { 0xac, 0x3e, 0x7d, 0xa7, 0xe5, 0x78, 0xb9, 0xb4, 0xdc, 0x24, 0x24, 0x03, 0x04, 0x46, 0xc7, 0xf6, 0xae, 0xbc, 0xc4, 0x71, 0x44, 0x5a, 0x9e, 0x0e, 0x6e, 0x65, 0x09, 0x9c, 0xae, 0xec, 0x5b, 0x2f, }; static const unsigned char hmac_sha3_384_862_tag[] = { 0x95, 0x6d, 0x33, 0xdd, 0xc9, 0x6b, 0xac, 0xdc, 0xb4, 0xe0, 0x05, 0x8c, 0x16, 0x1a, 0xe8, 0x12, 0xd7, 0x9d, 0x81, 0xd9, 0xf0, 0xf5, 0x97, 0xe2, 0x03, 0xaa, 0x6d, 0xae, 0x0d, 0xaa, 0xb2, 0x7a, 0xd9, 0x3c, 0x51, 0x71, 0xf5, 0x64, 0x52, 0x5f, 0xb9, 0x19, 0x26, 0xdf, 0xcf, 0xba, 0xa0, 0x9d, }; static const wycheproof_hmac_test hmac_sha3_384_862 = { .name = "hmac_sha3_384_862", .hash = SHA3_384, .key = hmac_sha3_384_862_key, .keylen = 65, .msg = hmac_sha3_384_862_msg, .msglen = 32, .tag = hmac_sha3_384_862_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 863 for HMAC, tcId is 172 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_863_key[] = { 0x06, 0x3d, 0x6e, 0x12, 0xe6, 0x70, 0x09, 0x8a, 0xda, 0xbe, 0x68, 0x19, 0x20, 0x23, 0xb6, 0x37, 0xbb, 0x6d, 0x8d, 0x71, 0x3f, 0xc8, 0x43, 0x61, 0x88, 0xc4, 0xec, 0x06, 0xfd, 0xd0, 0x84, 0xce, 0x6d, 0x19, 0x3f, 0x26, 0xc8, 0x6a, 0x95, 0x60, 0xe1, 0xab, 0xc2, 0x7d, 0x81, 0x3f, 0xce, 0x2b, 0x3e, 0xac, 0x01, 0x70, 0xfd, 0x1c, 0xb7, 0x2e, 0x19, 0x30, 0xa2, 0x77, 0x6b, 0xc8, 0x4d, 0x6c, 0x11, }; static const unsigned char hmac_sha3_384_863_tag[] = { 0x24, 0xa9, 0x85, 0x2f, 0x76, 0xff, 0xa1, 0xba, 0x3a, 0x60, 0x43, 0xcd, 0x34, 0x8f, 0x17, 0xbe, 0x03, 0x67, 0x55, 0x16, 0x21, 0x31, 0x25, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_384_863 = { .name = "hmac_sha3_384_863", .hash = SHA3_384, .key = hmac_sha3_384_863_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_384_863_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 864 for HMAC, tcId is 173 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_864_key[] = { 0x35, 0x93, 0x18, 0xe6, 0xc6, 0x27, 0x9b, 0xa9, 0xeb, 0xcb, 0x16, 0x75, 0xf5, 0xa9, 0x81, 0x95, 0xbb, 0xf5, 0xd8, 0x95, 0xda, 0x9c, 0x17, 0xb8, 0x32, 0x90, 0x38, 0xbe, 0x85, 0x7d, 0xc3, 0x95, 0xb1, 0x2a, 0xe9, 0x1a, 0x55, 0x59, 0x88, 0x76, 0x59, 0x3c, 0x1c, 0x20, 0xbc, 0x01, 0x72, 0xcf, 0x15, 0x12, 0x6b, 0x7a, 0x6b, 0xf0, 0xa2, 0x38, 0xed, 0xa3, 0x32, 0x5d, 0x6d, 0xd6, 0x06, 0x00, 0xef, }; static const unsigned char hmac_sha3_384_864_msg[] = { 0x7a, 0xd0, 0xc9, 0x09, 0x8e, 0xa1, 0x0e, 0x61, 0x5b, 0xb6, 0x72, 0xb5, 0x2c, 0x96, 0x54, 0x2d, }; static const unsigned char hmac_sha3_384_864_tag[] = { 0xb3, 0xde, 0x2a, 0xdd, 0xd5, 0xfc, 0xe9, 0x31, 0x22, 0xf0, 0xf2, 0xf3, 0x20, 0xc6, 0x07, 0xfa, 0xfa, 0xc2, 0x3b, 0x28, 0x08, 0x98, 0x06, 0x8e, }; static const wycheproof_hmac_test hmac_sha3_384_864 = { .name = "hmac_sha3_384_864", .hash = SHA3_384, .key = hmac_sha3_384_864_key, .keylen = 65, .msg = hmac_sha3_384_864_msg, .msglen = 16, .tag = hmac_sha3_384_864_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 865 for HMAC, tcId is 174 in file hmac_sha3_384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) static const unsigned char hmac_sha3_384_865_key[] = { 0xd0, 0x1c, 0xd8, 0x98, 0x08, 0x9d, 0x8a, 0x1e, 0xeb, 0x00, 0x35, 0xb0, 0xd3, 0x32, 0xda, 0x80, 0xfb, 0xd3, 0x57, 0x1b, 0x91, 0x92, 0xdb, 0x10, 0xfa, 0x6f, 0x55, 0xf6, 0x65, 0xab, 0x19, 0x2d, 0x70, 0x50, 0xca, 0xb6, 0x43, 0x99, 0x6e, 0x99, 0x25, 0x4d, 0x95, 0x73, 0xe0, 0xcf, 0x4e, 0xea, 0xa6, 0x3a, 0xfc, 0xcd, 0xef, 0xd8, 0x16, 0x14, 0xfe, 0x7b, 0x83, 0xdf, 0xe3, 0x0e, 0x3b, 0xa1, 0x9f, }; static const unsigned char hmac_sha3_384_865_msg[] = { 0xd6, 0x7c, 0x77, 0xcd, 0xd0, 0xaf, 0x5d, 0x10, 0xe8, 0xca, 0xe8, 0x87, 0xe5, 0xa6, 0x09, 0xbb, 0x76, 0xa9, 0xe5, 0x59, 0x76, 0x53, 0x77, 0x3c, 0x30, 0x3b, 0x82, 0xb9, 0x18, 0xfd, 0xc5, 0x9f, }; static const unsigned char hmac_sha3_384_865_tag[] = { 0xf6, 0x92, 0xda, 0x39, 0xc5, 0x92, 0x68, 0x28, 0x8b, 0x0f, 0x08, 0x1a, 0x7b, 0x60, 0xde, 0x61, 0x11, 0xce, 0xf7, 0x24, 0xa1, 0x4f, 0x89, 0x3a, }; static const wycheproof_hmac_test hmac_sha3_384_865 = { .name = "hmac_sha3_384_865", .hash = SHA3_384, .key = hmac_sha3_384_865_key, .keylen = 65, .msg = hmac_sha3_384_865_msg, .msglen = 32, .tag = hmac_sha3_384_865_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha3_384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) */ /* Test 866 for HMAC, tcId is 1 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_866_key[] = { 0x53, 0x65, 0x24, 0x4b, 0xb4, 0x3f, 0x23, 0xf1, 0x8d, 0xfc, 0x86, 0xc0, 0x9d, 0x62, 0xdb, 0x47, 0x41, 0x13, 0x8b, 0xec, 0x1f, 0xbd, 0xdc, 0x28, 0x2d, 0x29, 0x5e, 0x0a, 0x09, 0x8e, 0xb5, 0xc3, 0xe3, 0x7b, 0xd6, 0xf4, 0xcc, 0x16, 0xd5, 0xce, 0x7d, 0x77, 0xb1, 0xd4, 0x74, 0xa1, 0xeb, 0x4d, 0xb3, 0x13, 0xcc, 0x0c, 0x24, 0xe4, 0x89, 0x92, 0xac, 0x12, 0x51, 0x96, 0x54, 0x9d, 0xf9, 0xa8, }; static const unsigned char hmac_sha3_512_866_tag[] = { 0x83, 0x27, 0xdc, 0x85, 0xe3, 0x38, 0x98, 0xf0, 0x57, 0x24, 0xb3, 0x4a, 0x89, 0xdf, 0xc7, 0x4f, 0x25, 0x81, 0xb2, 0x28, 0x20, 0x3f, 0xf1, 0x48, 0xf7, 0xc8, 0x6a, 0xa3, 0x28, 0xe0, 0xe5, 0x33, 0x0c, 0x00, 0x01, 0x5d, 0x1d, 0x98, 0x3a, 0xb0, 0x05, 0xfb, 0xc1, 0x8d, 0x36, 0x95, 0xf2, 0xdd, 0x5f, 0x30, 0x4b, 0xab, 0x7a, 0x4b, 0x7c, 0x34, 0xf6, 0xd0, 0x10, 0xca, 0x0a, 0xf1, 0xac, 0xf5, }; static const wycheproof_hmac_test hmac_sha3_512_866 = { .name = "hmac_sha3_512_866", .hash = SHA3_512, .key = hmac_sha3_512_866_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_866_tag, .taglen = 64, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 867 for HMAC, tcId is 2 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_867_key[] = { 0x00, 0x69, 0x89, 0x77, 0xf7, 0x10, 0x2c, 0x67, 0xb5, 0x94, 0x16, 0x69, 0x19, 0xaa, 0x99, 0xdc, 0x3e, 0x58, 0xc7, 0xb6, 0x69, 0x7a, 0x64, 0x22, 0xe2, 0x38, 0xd0, 0x4d, 0x2f, 0x57, 0xb2, 0xc7, 0x4e, 0x4e, 0x84, 0xf5, 0xc4, 0xc6, 0xb7, 0x92, 0x95, 0x2d, 0xf7, 0x2f, 0x1c, 0x09, 0x24, 0x48, 0x02, 0xf0, 0xbc, 0xf8, 0x75, 0x2e, 0xfb, 0x90, 0xe8, 0x36, 0x11, 0x07, 0x03, 0xbf, 0xa2, 0x1c, }; static const unsigned char hmac_sha3_512_867_msg[] = { 0x01, }; static const unsigned char hmac_sha3_512_867_tag[] = { 0x84, 0x18, 0x5a, 0x28, 0x90, 0xb3, 0xf4, 0xc5, 0xef, 0x87, 0x23, 0xc2, 0x92, 0xdb, 0x67, 0x6c, 0x69, 0x10, 0x4e, 0x7f, 0xf7, 0xde, 0xf5, 0xec, 0xf2, 0x69, 0x28, 0xa4, 0x16, 0x26, 0xd2, 0xb1, 0x6b, 0x06, 0x3d, 0x8a, 0x9d, 0xf0, 0x39, 0x17, 0x49, 0x84, 0x67, 0xf5, 0xab, 0xd7, 0xaf, 0x3c, 0x6c, 0x73, 0x29, 0x57, 0xf6, 0x7c, 0xb8, 0x00, 0xa5, 0x17, 0xb2, 0x69, 0x63, 0x14, 0x2a, 0x1d, }; static const wycheproof_hmac_test hmac_sha3_512_867 = { .name = "hmac_sha3_512_867", .hash = SHA3_512, .key = hmac_sha3_512_867_key, .keylen = 64, .msg = hmac_sha3_512_867_msg, .msglen = 1, .tag = hmac_sha3_512_867_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 868 for HMAC, tcId is 3 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_868_key[] = { 0xed, 0x6d, 0xc6, 0x5d, 0xbe, 0xaa, 0xdb, 0xda, 0xab, 0x53, 0x0a, 0x0d, 0x35, 0xf1, 0x9f, 0x78, 0xa7, 0xbd, 0x93, 0xe6, 0x98, 0x54, 0x6c, 0x82, 0x75, 0x1b, 0xf6, 0x50, 0xc2, 0xa4, 0x4f, 0xc8, 0x52, 0x90, 0x33, 0xd0, 0x88, 0xfe, 0xbe, 0xed, 0x28, 0x8f, 0xb4, 0xc8, 0x13, 0x2a, 0x59, 0xdf, 0x02, 0x07, 0x68, 0x76, 0x40, 0xc7, 0x6d, 0xcd, 0xb2, 0x70, 0xac, 0x3a, 0xf5, 0xf0, 0x42, 0xf1, }; static const unsigned char hmac_sha3_512_868_msg[] = { 0xa7, 0x8f, }; static const unsigned char hmac_sha3_512_868_tag[] = { 0xb4, 0x80, 0x5d, 0x3a, 0x32, 0xd4, 0xdc, 0xc2, 0xe0, 0x81, 0x78, 0x88, 0x91, 0x73, 0xe6, 0x5d, 0x3f, 0xa1, 0xd3, 0xb3, 0xf3, 0xbb, 0x68, 0x8a, 0x46, 0xc8, 0x79, 0x33, 0x86, 0xe7, 0x13, 0x6e, 0x6c, 0xaa, 0x55, 0x58, 0x1e, 0x04, 0xdb, 0xc0, 0x1b, 0x56, 0x1b, 0x8f, 0xa3, 0xab, 0x6b, 0xf7, 0x11, 0x21, 0xdf, 0x6e, 0x5a, 0x51, 0xae, 0xc6, 0xb2, 0xf2, 0x53, 0xdf, 0x99, 0xd1, 0x6b, 0xf7, }; static const wycheproof_hmac_test hmac_sha3_512_868 = { .name = "hmac_sha3_512_868", .hash = SHA3_512, .key = hmac_sha3_512_868_key, .keylen = 64, .msg = hmac_sha3_512_868_msg, .msglen = 2, .tag = hmac_sha3_512_868_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 869 for HMAC, tcId is 4 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_869_key[] = { 0x46, 0x3c, 0x5e, 0x69, 0x6d, 0xa0, 0xec, 0x0d, 0x78, 0x43, 0x88, 0xbe, 0x77, 0x5d, 0x1d, 0x91, 0xd9, 0x47, 0x46, 0xaa, 0x8d, 0x3d, 0x2c, 0x20, 0x9f, 0x56, 0xac, 0x95, 0xea, 0x54, 0xe7, 0x28, 0x83, 0x29, 0xf9, 0xfb, 0x40, 0xbe, 0x4e, 0xef, 0x35, 0x54, 0x7e, 0x64, 0xc6, 0x1d, 0xc5, 0x1a, 0x4a, 0x1f, 0x33, 0x80, 0xa2, 0xb9, 0x64, 0x20, 0xf0, 0x88, 0x65, 0x5e, 0xa9, 0xd8, 0x5b, 0x97, }; static const unsigned char hmac_sha3_512_869_msg[] = { 0xe9, 0x56, 0xc1, }; static const unsigned char hmac_sha3_512_869_tag[] = { 0x30, 0xd4, 0x79, 0x4d, 0x0f, 0x07, 0x26, 0x22, 0xd4, 0xa3, 0x26, 0xdc, 0x99, 0x57, 0x97, 0x4a, 0xb5, 0xee, 0x5e, 0x40, 0x3c, 0x8e, 0x8e, 0xd6, 0x73, 0x91, 0x1b, 0x95, 0x83, 0x83, 0x31, 0xe9, 0x9f, 0xf8, 0xdf, 0xd1, 0x6d, 0xef, 0xed, 0xeb, 0x69, 0x6f, 0x1c, 0x66, 0x1a, 0x00, 0x94, 0x68, 0x5d, 0xbb, 0x6c, 0x86, 0x04, 0xc0, 0x72, 0xa1, 0xbb, 0x08, 0x8b, 0x9e, 0x8c, 0xd5, 0x5d, 0x9c, }; static const wycheproof_hmac_test hmac_sha3_512_869 = { .name = "hmac_sha3_512_869", .hash = SHA3_512, .key = hmac_sha3_512_869_key, .keylen = 64, .msg = hmac_sha3_512_869_msg, .msglen = 3, .tag = hmac_sha3_512_869_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 870 for HMAC, tcId is 5 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_870_key[] = { 0x4b, 0xc0, 0xd3, 0x2e, 0x94, 0x5c, 0xfd, 0xaf, 0xd2, 0x0d, 0x39, 0xbe, 0x38, 0x20, 0xf9, 0x64, 0x97, 0x27, 0xcb, 0xda, 0x5a, 0xb5, 0x85, 0x99, 0x53, 0xa3, 0x22, 0xcb, 0xde, 0x1a, 0xb7, 0xa5, 0x14, 0xd7, 0xdc, 0xd1, 0x4b, 0xa9, 0x09, 0x05, 0xe7, 0x09, 0x19, 0xbb, 0x86, 0xb8, 0x5c, 0xfe, 0xaa, 0x37, 0x5e, 0xe2, 0xce, 0x27, 0x03, 0x71, 0x1b, 0x93, 0x8c, 0x8f, 0x4a, 0xb5, 0xf1, 0x78, }; static const unsigned char hmac_sha3_512_870_msg[] = { 0xb2, 0xaa, 0x48, 0xb3, }; static const unsigned char hmac_sha3_512_870_tag[] = { 0x6d, 0xaf, 0x3d, 0xad, 0x42, 0x63, 0x6b, 0xfd, 0x96, 0x22, 0x46, 0xb0, 0xb3, 0x14, 0xc9, 0x39, 0xa4, 0xfd, 0x0a, 0x9a, 0xe4, 0x6e, 0xfe, 0xc8, 0x48, 0xa5, 0x6b, 0xb6, 0xb8, 0x5d, 0xe6, 0xc4, 0x7b, 0x60, 0x24, 0x36, 0x44, 0xaa, 0x5e, 0x46, 0x58, 0xa4, 0x04, 0x2f, 0x85, 0x77, 0xb3, 0x88, 0xbd, 0xf5, 0x44, 0xe1, 0x20, 0xfb, 0x32, 0xb1, 0xaf, 0x10, 0xf0, 0xf8, 0x4b, 0x8a, 0xe4, 0xca, }; static const wycheproof_hmac_test hmac_sha3_512_870 = { .name = "hmac_sha3_512_870", .hash = SHA3_512, .key = hmac_sha3_512_870_key, .keylen = 64, .msg = hmac_sha3_512_870_msg, .msglen = 4, .tag = hmac_sha3_512_870_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 871 for HMAC, tcId is 6 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_871_key[] = { 0xac, 0xa4, 0x7f, 0x63, 0x50, 0x94, 0x1a, 0x0e, 0xfd, 0x8c, 0x3b, 0xac, 0x90, 0x64, 0xa5, 0x54, 0xbe, 0x33, 0x7c, 0xde, 0x7d, 0x19, 0x2f, 0x6f, 0xbf, 0x86, 0xd1, 0xb4, 0xdb, 0x09, 0xb3, 0x65, 0x31, 0x16, 0x5c, 0xba, 0xe0, 0xa6, 0x34, 0x20, 0x6f, 0x71, 0xfa, 0x40, 0x0d, 0xf3, 0x33, 0x52, 0xff, 0xf6, 0x0e, 0x1f, 0xba, 0x40, 0x09, 0xac, 0x66, 0x71, 0xcd, 0x37, 0x31, 0x2b, 0xdd, 0x98, }; static const unsigned char hmac_sha3_512_871_msg[] = { 0xbc, 0x99, 0x3b, 0x1d, 0xb0, }; static const unsigned char hmac_sha3_512_871_tag[] = { 0xd4, 0x48, 0x31, 0x0d, 0x37, 0xfb, 0xc2, 0xc5, 0xd2, 0x6d, 0x6c, 0xec, 0xeb, 0x99, 0x9a, 0x25, 0x51, 0x79, 0x36, 0x91, 0xf3, 0x60, 0x19, 0xd8, 0x8d, 0xb9, 0x9d, 0x04, 0x1b, 0x0c, 0xdb, 0x6f, 0xbd, 0xb4, 0x0c, 0x13, 0xb7, 0x6a, 0x23, 0x57, 0x13, 0xa5, 0x9b, 0xcb, 0xd1, 0x40, 0xc9, 0x9e, 0x56, 0x12, 0xd3, 0xc2, 0xef, 0x66, 0xdc, 0x0f, 0xb4, 0x15, 0x86, 0xa6, 0xc3, 0x84, 0x27, 0x9a, }; static const wycheproof_hmac_test hmac_sha3_512_871 = { .name = "hmac_sha3_512_871", .hash = SHA3_512, .key = hmac_sha3_512_871_key, .keylen = 64, .msg = hmac_sha3_512_871_msg, .msglen = 5, .tag = hmac_sha3_512_871_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 872 for HMAC, tcId is 7 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_872_key[] = { 0xb3, 0xec, 0xae, 0x6f, 0x25, 0xc2, 0xf6, 0x99, 0xf1, 0x58, 0xb3, 0xff, 0xcd, 0x0a, 0x7a, 0x57, 0x55, 0x83, 0xe4, 0xc9, 0xcb, 0x56, 0xb5, 0xc2, 0x2e, 0xf4, 0x27, 0x3c, 0xde, 0x6c, 0x67, 0x34, 0xe8, 0x4d, 0x74, 0x00, 0x74, 0x9c, 0x17, 0xe4, 0x7e, 0x8c, 0xfc, 0xca, 0xfa, 0xf8, 0xb5, 0x0c, 0x65, 0xeb, 0x47, 0xdf, 0xeb, 0x27, 0x3d, 0x5d, 0x30, 0xa1, 0x18, 0x1e, 0x37, 0xb2, 0x7a, 0xd0, }; static const unsigned char hmac_sha3_512_872_msg[] = { 0xf0, 0x36, 0x1d, 0x58, 0x29, 0x1e, }; static const unsigned char hmac_sha3_512_872_tag[] = { 0x5d, 0x3b, 0x47, 0x45, 0x4f, 0x71, 0x94, 0x9a, 0x44, 0x1c, 0x59, 0xa2, 0x0b, 0x0a, 0x56, 0xb6, 0xb2, 0xaa, 0x4c, 0x25, 0x6e, 0x1c, 0x6e, 0x12, 0x8c, 0x5e, 0xb2, 0x01, 0xc6, 0x8e, 0x63, 0xda, 0x13, 0x0a, 0xd6, 0x95, 0x94, 0x12, 0x6f, 0xf7, 0x89, 0xfa, 0x47, 0x1e, 0x2e, 0x51, 0xde, 0x73, 0xea, 0x57, 0xf7, 0x5c, 0xe2, 0xa1, 0xe2, 0xc9, 0xd0, 0x2e, 0xab, 0xdf, 0x55, 0x15, 0x32, 0x28, }; static const wycheproof_hmac_test hmac_sha3_512_872 = { .name = "hmac_sha3_512_872", .hash = SHA3_512, .key = hmac_sha3_512_872_key, .keylen = 64, .msg = hmac_sha3_512_872_msg, .msglen = 6, .tag = hmac_sha3_512_872_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 873 for HMAC, tcId is 8 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_873_key[] = { 0x70, 0xff, 0x24, 0xa2, 0x52, 0xd6, 0x51, 0x83, 0xbd, 0xc6, 0xb7, 0xc8, 0x87, 0x51, 0xf8, 0x50, 0x82, 0x11, 0x41, 0xa6, 0x12, 0x46, 0x72, 0x7c, 0x32, 0x40, 0xb4, 0xf9, 0x60, 0x88, 0xae, 0x32, 0x78, 0x76, 0x7a, 0x82, 0x2b, 0x65, 0x73, 0x5a, 0x28, 0xcc, 0xeb, 0xe4, 0xc8, 0x74, 0xbc, 0xb2, 0xc9, 0x42, 0x88, 0x2c, 0xb2, 0x3f, 0x9d, 0xd8, 0x7f, 0xe0, 0x8f, 0xba, 0xad, 0x5a, 0xe7, 0x2f, }; static const unsigned char hmac_sha3_512_873_msg[] = { 0xe1, 0x8d, 0xa3, 0xeb, 0xf0, 0xff, 0xa4, }; static const unsigned char hmac_sha3_512_873_tag[] = { 0x25, 0x3a, 0x4f, 0x22, 0x3c, 0xac, 0x5e, 0x24, 0xb4, 0xff, 0xb9, 0xb2, 0x1a, 0x32, 0x5d, 0x76, 0x45, 0x19, 0x22, 0x03, 0xca, 0xca, 0xbf, 0xe1, 0x8d, 0x32, 0x99, 0x01, 0x0a, 0x7d, 0x20, 0x3e, 0xb1, 0xef, 0x53, 0x19, 0x54, 0x7f, 0x14, 0x08, 0x40, 0xa9, 0x74, 0x2d, 0x49, 0x07, 0xb7, 0xfa, 0xfb, 0x4d, 0x1e, 0xf1, 0xb5, 0x4f, 0x26, 0x68, 0x2a, 0xc9, 0x8e, 0x3a, 0x37, 0xc0, 0x3a, 0x89, }; static const wycheproof_hmac_test hmac_sha3_512_873 = { .name = "hmac_sha3_512_873", .hash = SHA3_512, .key = hmac_sha3_512_873_key, .keylen = 64, .msg = hmac_sha3_512_873_msg, .msglen = 7, .tag = hmac_sha3_512_873_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 874 for HMAC, tcId is 9 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_874_key[] = { 0xdd, 0x4e, 0x05, 0x93, 0x3d, 0x09, 0x71, 0x1e, 0xe8, 0x8c, 0xb4, 0xc1, 0xce, 0xb3, 0x60, 0x0b, 0x2b, 0x33, 0x80, 0x8b, 0xc0, 0x8d, 0x49, 0x93, 0x87, 0xb3, 0x31, 0xd9, 0xc7, 0xaf, 0x49, 0xbc, 0x65, 0xb5, 0x51, 0x72, 0xcf, 0x80, 0x83, 0x38, 0x5a, 0x94, 0x0e, 0x4b, 0x86, 0x4b, 0x7b, 0x4b, 0x73, 0xdd, 0xf3, 0xbd, 0x51, 0x3a, 0x6c, 0xbc, 0xac, 0x73, 0x87, 0x8a, 0x87, 0x9b, 0x4d, 0x06, }; static const unsigned char hmac_sha3_512_874_msg[] = { 0x66, 0x94, 0x80, 0x29, 0x35, 0x14, 0x32, 0xc3, }; static const unsigned char hmac_sha3_512_874_tag[] = { 0x88, 0xdb, 0x64, 0xf5, 0x80, 0xe7, 0xe2, 0xbc, 0xf9, 0x32, 0x90, 0x07, 0xe2, 0x83, 0x1c, 0x67, 0x64, 0x54, 0x13, 0x31, 0x67, 0x9e, 0xa4, 0x49, 0x3b, 0x24, 0x50, 0x7d, 0xc7, 0x2a, 0x3f, 0x9a, 0xc8, 0xfb, 0x5d, 0xac, 0x7e, 0x08, 0x79, 0x9d, 0x13, 0x9f, 0x74, 0xa0, 0xc1, 0x63, 0xcf, 0x04, 0x56, 0x55, 0x2f, 0xf1, 0x2d, 0x14, 0x78, 0x5f, 0x3d, 0xeb, 0x29, 0x27, 0x8c, 0x3b, 0xa6, 0x79, }; static const wycheproof_hmac_test hmac_sha3_512_874 = { .name = "hmac_sha3_512_874", .hash = SHA3_512, .key = hmac_sha3_512_874_key, .keylen = 64, .msg = hmac_sha3_512_874_msg, .msglen = 8, .tag = hmac_sha3_512_874_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 875 for HMAC, tcId is 10 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_875_key[] = { 0xfb, 0xd3, 0x2c, 0xaf, 0x89, 0x84, 0xfc, 0x43, 0x76, 0xd1, 0x0d, 0xaa, 0x72, 0x88, 0xdb, 0x8e, 0x6e, 0x74, 0x46, 0x4b, 0xdd, 0x94, 0xb4, 0x48, 0xad, 0xab, 0x44, 0x97, 0xb3, 0x19, 0xe9, 0xa6, 0xdc, 0xce, 0x54, 0x2f, 0x82, 0xa7, 0xff, 0x2e, 0x77, 0x5d, 0x12, 0x47, 0x7c, 0x88, 0x0e, 0x46, 0x0a, 0x9e, 0xab, 0x8e, 0xfc, 0x49, 0xfc, 0xfc, 0x8c, 0x54, 0x76, 0xcb, 0x4b, 0x08, 0x95, 0x4a, }; static const unsigned char hmac_sha3_512_875_msg[] = { 0x38, 0xa2, 0x58, 0x6a, 0x28, 0x83, 0x95, 0x3c, 0xc4, }; static const unsigned char hmac_sha3_512_875_tag[] = { 0x9a, 0x0f, 0x3c, 0x38, 0x29, 0xa1, 0x11, 0x86, 0xc6, 0x9d, 0x88, 0x43, 0x37, 0x85, 0xb7, 0x84, 0xe1, 0xdc, 0xbd, 0x95, 0x5b, 0xe6, 0x79, 0x64, 0x9a, 0x89, 0x15, 0x83, 0x96, 0xcf, 0x91, 0xfd, 0xf2, 0x6e, 0x73, 0xa2, 0x7c, 0x3b, 0xc5, 0x32, 0x5f, 0x67, 0x10, 0xc4, 0x21, 0xd8, 0xcb, 0xeb, 0x59, 0x22, 0xaf, 0x2c, 0xfe, 0xb7, 0x23, 0x2f, 0xb6, 0x92, 0x9c, 0x00, 0xd8, 0x19, 0x09, 0x22, }; static const wycheproof_hmac_test hmac_sha3_512_875 = { .name = "hmac_sha3_512_875", .hash = SHA3_512, .key = hmac_sha3_512_875_key, .keylen = 64, .msg = hmac_sha3_512_875_msg, .msglen = 9, .tag = hmac_sha3_512_875_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 876 for HMAC, tcId is 11 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_876_key[] = { 0xfd, 0x4c, 0x3f, 0x6b, 0x21, 0x37, 0x51, 0x36, 0x16, 0xc2, 0x8e, 0xd4, 0xd8, 0x63, 0x8f, 0x86, 0x7a, 0xd0, 0xb9, 0x71, 0x88, 0xb7, 0x3f, 0xc9, 0xb3, 0x6f, 0x3d, 0x52, 0xb8, 0x2d, 0x72, 0xa4, 0x9b, 0x9d, 0xc1, 0xb8, 0xb2, 0x53, 0x97, 0xeb, 0x44, 0x80, 0x54, 0xa8, 0xd3, 0x8d, 0x83, 0x8e, 0x7a, 0x88, 0xb4, 0xdf, 0x9c, 0x26, 0x3a, 0xea, 0x1b, 0x96, 0x87, 0x71, 0xd5, 0xac, 0x57, 0x56, }; static const unsigned char hmac_sha3_512_876_msg[] = { 0x86, 0xb4, 0xe6, 0x1b, 0x3b, 0x7d, 0x65, 0x00, 0x44, 0xad, }; static const unsigned char hmac_sha3_512_876_tag[] = { 0xe9, 0x7b, 0xd7, 0xa7, 0x82, 0x67, 0xac, 0x6b, 0x57, 0x5d, 0xa2, 0xf7, 0x36, 0x44, 0x48, 0xef, 0xef, 0x8d, 0xc7, 0xdd, 0x4f, 0x9a, 0x44, 0xd0, 0x45, 0x4b, 0x02, 0x1f, 0x59, 0x95, 0x7c, 0xf6, 0x20, 0xbb, 0xae, 0x47, 0xf0, 0xd3, 0xb7, 0xde, 0xc2, 0xbf, 0x4d, 0x15, 0x3b, 0xad, 0xa4, 0x72, 0x47, 0x26, 0x85, 0xa3, 0x52, 0x28, 0x97, 0x0f, 0xc9, 0x9d, 0xcc, 0xeb, 0x14, 0xf3, 0x4d, 0xd5, }; static const wycheproof_hmac_test hmac_sha3_512_876 = { .name = "hmac_sha3_512_876", .hash = SHA3_512, .key = hmac_sha3_512_876_key, .keylen = 64, .msg = hmac_sha3_512_876_msg, .msglen = 10, .tag = hmac_sha3_512_876_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 877 for HMAC, tcId is 12 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_877_key[] = { 0xf9, 0x5b, 0xae, 0xa5, 0x35, 0xf4, 0x77, 0xd2, 0x2b, 0x40, 0x5c, 0x67, 0xd9, 0x27, 0xf5, 0x9a, 0x9e, 0x04, 0x2c, 0x46, 0x29, 0x7a, 0x16, 0x81, 0xbc, 0xc1, 0x6f, 0xdb, 0xe1, 0xb2, 0xcd, 0x59, 0x67, 0x5a, 0x22, 0x13, 0x51, 0xa7, 0x80, 0x75, 0x98, 0x1e, 0x7e, 0xb4, 0x99, 0x80, 0x66, 0x76, 0x88, 0x01, 0xcb, 0xd7, 0xa8, 0x52, 0x31, 0x11, 0x4d, 0x7f, 0x27, 0xf9, 0xbd, 0xf2, 0x48, 0x99, }; static const unsigned char hmac_sha3_512_877_msg[] = { 0x5a, 0x34, 0xde, 0xe4, 0xe0, 0x98, 0x2d, 0x45, 0x8e, 0xff, 0xfb, }; static const unsigned char hmac_sha3_512_877_tag[] = { 0xf6, 0xd3, 0x82, 0xa7, 0x78, 0x2c, 0x1a, 0x63, 0xad, 0x98, 0x89, 0x7d, 0xd2, 0x61, 0x6b, 0xf2, 0x9e, 0x46, 0xb1, 0xe4, 0x30, 0xb7, 0xd6, 0x9d, 0x02, 0xdf, 0x4f, 0x64, 0x0c, 0x9c, 0x1e, 0x8f, 0xaf, 0x67, 0x76, 0x33, 0xd8, 0x6f, 0x63, 0x9f, 0x68, 0x34, 0xe1, 0x59, 0x99, 0x27, 0xd9, 0xaa, 0x23, 0xf4, 0x9f, 0xd4, 0xfb, 0x66, 0x08, 0x5e, 0xb5, 0x69, 0x68, 0xf9, 0xb7, 0xb9, 0xfb, 0x3c, }; static const wycheproof_hmac_test hmac_sha3_512_877 = { .name = "hmac_sha3_512_877", .hash = SHA3_512, .key = hmac_sha3_512_877_key, .keylen = 64, .msg = hmac_sha3_512_877_msg, .msglen = 11, .tag = hmac_sha3_512_877_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 878 for HMAC, tcId is 13 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_878_key[] = { 0x4d, 0x76, 0xae, 0x95, 0xa1, 0x23, 0x20, 0x7e, 0x01, 0xc6, 0xd2, 0x2d, 0x8b, 0x58, 0x7e, 0x63, 0xba, 0x68, 0x29, 0x63, 0xe5, 0x09, 0x61, 0xaf, 0xff, 0x53, 0x11, 0x60, 0xa9, 0xb9, 0xaa, 0xc6, 0xc7, 0x72, 0xc5, 0xe8, 0xbf, 0x91, 0x8d, 0xde, 0xcb, 0xeb, 0x56, 0x45, 0x5e, 0xa6, 0x47, 0x10, 0xe5, 0x1a, 0xc2, 0x1e, 0x3b, 0xb9, 0xaf, 0x4b, 0x24, 0xea, 0xa8, 0x53, 0x5b, 0x3c, 0x29, 0x24, }; static const unsigned char hmac_sha3_512_878_msg[] = { 0x2c, 0x31, 0xf2, 0xd9, 0x86, 0xf6, 0x8a, 0x6d, 0x6a, 0x96, 0xc4, 0xb0, }; static const unsigned char hmac_sha3_512_878_tag[] = { 0x0e, 0x40, 0x81, 0xaf, 0x61, 0xc5, 0x1d, 0xc8, 0x31, 0xba, 0x04, 0x48, 0xef, 0xa2, 0x4f, 0x0c, 0xe6, 0xe0, 0x5b, 0xdc, 0x38, 0xe1, 0x1e, 0xf0, 0x3a, 0x44, 0x56, 0x16, 0x45, 0x42, 0xf2, 0x8d, 0xc3, 0x83, 0x68, 0xd3, 0x08, 0xdd, 0xe1, 0x17, 0x08, 0x7a, 0x86, 0xae, 0xad, 0x3b, 0x4f, 0xd4, 0xad, 0x8c, 0xff, 0x00, 0xc5, 0xab, 0x93, 0x53, 0x92, 0x81, 0xbe, 0xe2, 0x7f, 0x7e, 0x5a, 0xe1, }; static const wycheproof_hmac_test hmac_sha3_512_878 = { .name = "hmac_sha3_512_878", .hash = SHA3_512, .key = hmac_sha3_512_878_key, .keylen = 64, .msg = hmac_sha3_512_878_msg, .msglen = 12, .tag = hmac_sha3_512_878_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 879 for HMAC, tcId is 14 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_879_key[] = { 0x0d, 0xa7, 0xfa, 0x1f, 0x5d, 0x21, 0x79, 0x51, 0xe3, 0xe3, 0x43, 0xcd, 0xa8, 0x1f, 0x23, 0x2d, 0xeb, 0x71, 0x76, 0x4e, 0xb4, 0x9e, 0x85, 0x10, 0xbc, 0x28, 0xdb, 0xa8, 0xeb, 0x62, 0xaf, 0xa2, 0xa9, 0x8b, 0x6f, 0x05, 0x36, 0xad, 0xb1, 0x02, 0x50, 0xc7, 0x48, 0x78, 0xfe, 0x64, 0x9f, 0x47, 0xbb, 0xaf, 0xdf, 0x3f, 0x72, 0x2f, 0xa1, 0x50, 0xf6, 0x6e, 0x83, 0xf6, 0x5f, 0x60, 0x6a, 0xb0, }; static const unsigned char hmac_sha3_512_879_msg[] = { 0x83, 0x51, 0x1d, 0xe1, 0x90, 0x66, 0x3c, 0x9c, 0x42, 0x29, 0xac, 0xe9, 0x01, }; static const unsigned char hmac_sha3_512_879_tag[] = { 0xbd, 0x10, 0x00, 0xdc, 0xd4, 0x1e, 0xd8, 0xaa, 0xc4, 0xed, 0xbb, 0x81, 0x88, 0x84, 0xdd, 0xbe, 0xa0, 0x1c, 0x0c, 0xb6, 0x0a, 0x20, 0x24, 0x27, 0xa9, 0x77, 0x48, 0x9c, 0x31, 0x0b, 0xbb, 0x10, 0xdd, 0x3a, 0x96, 0xad, 0x85, 0x87, 0x02, 0xd6, 0xac, 0x5e, 0xdb, 0x34, 0x31, 0xf7, 0x80, 0xc2, 0x20, 0x19, 0x20, 0xde, 0xaf, 0x76, 0x0c, 0x71, 0x9e, 0x64, 0xc6, 0xe3, 0x90, 0xf7, 0x91, 0x1c, }; static const wycheproof_hmac_test hmac_sha3_512_879 = { .name = "hmac_sha3_512_879", .hash = SHA3_512, .key = hmac_sha3_512_879_key, .keylen = 64, .msg = hmac_sha3_512_879_msg, .msglen = 13, .tag = hmac_sha3_512_879_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 880 for HMAC, tcId is 15 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_880_key[] = { 0xce, 0xc9, 0xe9, 0xf2, 0x5e, 0xd9, 0xa0, 0x17, 0x00, 0x4a, 0x78, 0x82, 0xb1, 0xe4, 0x4e, 0x8b, 0xd8, 0xfa, 0x32, 0x03, 0xc5, 0x0c, 0xb6, 0x05, 0x84, 0x55, 0xed, 0x4f, 0x2a, 0x03, 0x67, 0x88, 0xd4, 0x6f, 0xcd, 0x32, 0x83, 0x27, 0xd0, 0xd8, 0x6b, 0x1a, 0xba, 0xe6, 0x9f, 0x7b, 0xbb, 0x96, 0xe3, 0xd6, 0x63, 0x73, 0xec, 0x8b, 0xd4, 0x50, 0x75, 0x89, 0x08, 0x79, 0xa8, 0x3f, 0x4d, 0x33, }; static const unsigned char hmac_sha3_512_880_msg[] = { 0x80, 0xdc, 0xd8, 0xba, 0x66, 0xf9, 0x8b, 0x51, 0x09, 0x41, 0x44, 0xe9, 0xb8, 0xbd, }; static const unsigned char hmac_sha3_512_880_tag[] = { 0x99, 0x20, 0x66, 0x2e, 0x0b, 0x60, 0x07, 0x39, 0x16, 0xec, 0x0c, 0xb1, 0x7c, 0x9f, 0x0a, 0x62, 0xde, 0x7f, 0x1f, 0x19, 0x3e, 0xb6, 0xa9, 0xef, 0x52, 0x87, 0x0c, 0x93, 0xcd, 0x96, 0x97, 0xdf, 0xdc, 0x13, 0xfd, 0x2b, 0x7b, 0xa7, 0x66, 0x41, 0x38, 0xb0, 0x37, 0xf7, 0xe6, 0x30, 0x23, 0x86, 0x5b, 0xe8, 0x98, 0xc2, 0xf4, 0xbe, 0xc6, 0xbd, 0xe9, 0xea, 0x8e, 0xe1, 0xb6, 0x9b, 0x25, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_880 = { .name = "hmac_sha3_512_880", .hash = SHA3_512, .key = hmac_sha3_512_880_key, .keylen = 64, .msg = hmac_sha3_512_880_msg, .msglen = 14, .tag = hmac_sha3_512_880_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 881 for HMAC, tcId is 16 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_881_key[] = { 0xbb, 0xe2, 0x56, 0x49, 0xec, 0xdf, 0x54, 0xae, 0x00, 0x28, 0xfb, 0x92, 0x3c, 0xc8, 0xc2, 0x8e, 0xc0, 0x0e, 0x10, 0xe2, 0xd4, 0x42, 0x14, 0x59, 0x07, 0x81, 0x23, 0x8a, 0x14, 0x3b, 0x75, 0xd5, 0x4e, 0xfb, 0x03, 0x7e, 0xb9, 0xf5, 0x30, 0x82, 0xa8, 0xab, 0x3d, 0x88, 0x76, 0xda, 0xf4, 0xdb, 0xdc, 0x24, 0x83, 0xc4, 0xba, 0x22, 0x27, 0x97, 0xfe, 0x20, 0xda, 0x3b, 0x77, 0x30, 0x36, 0x8b, }; static const unsigned char hmac_sha3_512_881_msg[] = { 0x33, 0xf6, 0x30, 0x08, 0x8c, 0x0d, 0x24, 0xcd, 0xa9, 0x8c, 0xaf, 0xf1, 0xa3, 0xaf, 0xc7, }; static const unsigned char hmac_sha3_512_881_tag[] = { 0x00, 0xea, 0xa7, 0x66, 0xf4, 0xf3, 0xd9, 0x20, 0x47, 0xb5, 0xe8, 0x5e, 0xfc, 0x92, 0x88, 0xcb, 0x8a, 0x5a, 0x2b, 0x56, 0xd2, 0x26, 0x7d, 0xbf, 0xd5, 0xb1, 0x6d, 0x8c, 0x91, 0x8e, 0xd9, 0x40, 0x43, 0x14, 0xaa, 0xdd, 0xea, 0x24, 0x1b, 0xbc, 0x96, 0x6e, 0x49, 0xb2, 0x36, 0x82, 0x32, 0x12, 0x9d, 0x1e, 0xdd, 0x06, 0xd9, 0x9b, 0xf9, 0x3b, 0xc5, 0x72, 0x91, 0xb8, 0x96, 0xba, 0xe4, 0x85, }; static const wycheproof_hmac_test hmac_sha3_512_881 = { .name = "hmac_sha3_512_881", .hash = SHA3_512, .key = hmac_sha3_512_881_key, .keylen = 64, .msg = hmac_sha3_512_881_msg, .msglen = 15, .tag = hmac_sha3_512_881_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 882 for HMAC, tcId is 17 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_882_key[] = { 0xf5, 0xe2, 0xb9, 0xe2, 0x31, 0x3f, 0x4f, 0x80, 0x7c, 0xb3, 0xa9, 0x24, 0xa7, 0xd4, 0x94, 0x3f, 0xc3, 0xfb, 0x47, 0x5d, 0x8f, 0x1a, 0x1b, 0x40, 0xce, 0x09, 0xa3, 0x77, 0x70, 0xf6, 0x21, 0xaf, 0x89, 0x77, 0x72, 0x9c, 0xad, 0xf9, 0x86, 0xc9, 0x8c, 0x75, 0xf0, 0x8a, 0x4f, 0xab, 0x42, 0x80, 0x53, 0x8e, 0x09, 0xe7, 0xe5, 0x1e, 0x87, 0xa8, 0xd6, 0x2c, 0x03, 0x41, 0x1b, 0xdb, 0x8d, 0x24, }; static const unsigned char hmac_sha3_512_882_msg[] = { 0x74, 0xef, 0x62, 0x3c, 0x83, 0x27, 0x5a, 0xe9, 0x97, 0x45, 0xbf, 0xf7, 0xe6, 0x14, 0x2a, 0xfa, }; static const unsigned char hmac_sha3_512_882_tag[] = { 0x8d, 0x0a, 0xcc, 0x11, 0xd6, 0xc6, 0x99, 0x2a, 0xd1, 0x6a, 0x5e, 0x70, 0x70, 0x23, 0x6a, 0x10, 0x00, 0xb0, 0xf1, 0xcc, 0xd1, 0xc9, 0x88, 0x49, 0xee, 0xca, 0x39, 0x5a, 0x0d, 0xaf, 0x5f, 0x40, 0x4c, 0x8d, 0x27, 0x22, 0x57, 0xec, 0xbf, 0x8b, 0xd8, 0x4c, 0x42, 0xde, 0x30, 0x2f, 0xe3, 0x68, 0xd6, 0xc3, 0x08, 0xe4, 0x63, 0x9f, 0x2e, 0xcd, 0x2d, 0x91, 0xf3, 0xdd, 0xa6, 0xa0, 0xd8, 0xe6, }; static const wycheproof_hmac_test hmac_sha3_512_882 = { .name = "hmac_sha3_512_882", .hash = SHA3_512, .key = hmac_sha3_512_882_key, .keylen = 64, .msg = hmac_sha3_512_882_msg, .msglen = 16, .tag = hmac_sha3_512_882_tag, .taglen = 64, .result = 1, .comment = ", tcId is 17 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 883 for HMAC, tcId is 18 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_883_key[] = { 0x8e, 0x32, 0x3d, 0x5f, 0xb4, 0x75, 0x2d, 0x92, 0xa6, 0xd9, 0x05, 0xc5, 0x12, 0xb2, 0x87, 0xd0, 0x7b, 0x21, 0xae, 0x50, 0x00, 0x2d, 0x02, 0x6f, 0xf0, 0x38, 0x8e, 0x15, 0x93, 0xbd, 0xe9, 0x99, 0x8d, 0xd0, 0x23, 0x21, 0xe2, 0x00, 0xd1, 0x48, 0xf5, 0xfa, 0x2e, 0x82, 0x4b, 0x37, 0xe9, 0xf5, 0xa7, 0x74, 0x41, 0x79, 0x4b, 0x84, 0x0b, 0xed, 0xd5, 0x52, 0xd1, 0x05, 0x1c, 0x1d, 0xdd, 0x8c, }; static const unsigned char hmac_sha3_512_883_msg[] = { 0x4d, 0xaa, 0x22, 0x9b, 0x00, 0x9b, 0x89, 0x84, 0x35, 0x4c, 0x2e, 0xc3, 0xe7, 0x97, 0x3e, 0x00, 0x42, }; static const unsigned char hmac_sha3_512_883_tag[] = { 0xb9, 0x39, 0x5c, 0x2b, 0x7e, 0x36, 0x03, 0x85, 0xcc, 0xb3, 0xda, 0x59, 0x0b, 0x17, 0x27, 0x9e, 0x12, 0x1f, 0x92, 0xfd, 0x85, 0x66, 0x0e, 0x80, 0x2e, 0x24, 0xdd, 0x92, 0x99, 0x8b, 0x2e, 0x53, 0x1d, 0x3a, 0xa9, 0x11, 0xc3, 0xca, 0x38, 0x9b, 0x51, 0x56, 0x20, 0xb6, 0xbd, 0x3f, 0x97, 0xb6, 0x3d, 0xf7, 0xeb, 0xbd, 0x10, 0xb6, 0x39, 0x79, 0x99, 0x52, 0x92, 0x7d, 0x1c, 0x2d, 0xc3, 0x60, }; static const wycheproof_hmac_test hmac_sha3_512_883 = { .name = "hmac_sha3_512_883", .hash = SHA3_512, .key = hmac_sha3_512_883_key, .keylen = 64, .msg = hmac_sha3_512_883_msg, .msglen = 17, .tag = hmac_sha3_512_883_tag, .taglen = 64, .result = 1, .comment = ", tcId is 18 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 884 for HMAC, tcId is 19 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_884_key[] = { 0x46, 0x5b, 0xc1, 0xab, 0x21, 0x25, 0xcc, 0xa2, 0x97, 0x29, 0xd0, 0x1d, 0xf0, 0x44, 0xe3, 0x93, 0xb0, 0x67, 0x7d, 0xef, 0xdd, 0x93, 0x92, 0x80, 0xa3, 0xaa, 0x14, 0x12, 0x24, 0xef, 0xa0, 0x64, 0x57, 0xe6, 0x23, 0x05, 0x6d, 0x02, 0xf6, 0xc3, 0x6e, 0xca, 0x3d, 0xfc, 0x4a, 0x74, 0x76, 0xdd, 0x36, 0xb9, 0x7d, 0x0c, 0x2d, 0x60, 0xc7, 0x67, 0x21, 0x29, 0x18, 0x9e, 0x73, 0xb6, 0xaf, 0x8f, }; static const unsigned char hmac_sha3_512_884_msg[] = { 0xdd, 0x84, 0x59, 0x9b, 0x47, 0xba, 0x9a, 0xe9, 0xf2, 0xad, 0x0c, 0x8e, 0xac, 0x67, 0x84, 0x85, 0x43, 0x3e, 0xb6, 0xb1, 0xdf, 0xb7, 0xc9, 0x98, }; static const unsigned char hmac_sha3_512_884_tag[] = { 0x70, 0x72, 0x47, 0x1a, 0xb5, 0x04, 0x69, 0x6f, 0x06, 0x0a, 0x3b, 0xde, 0xd1, 0x0e, 0x65, 0x7e, 0x3b, 0xc6, 0xba, 0xd2, 0xe0, 0xf8, 0x23, 0x9f, 0xd4, 0xf1, 0x7e, 0x35, 0x17, 0x4c, 0x2a, 0xcb, 0xf0, 0x59, 0xaa, 0x7d, 0x85, 0xb3, 0xb3, 0xad, 0xf3, 0xd6, 0x44, 0xe0, 0xbc, 0xeb, 0xa9, 0x34, 0x90, 0xa5, 0x49, 0x48, 0x13, 0x8e, 0x74, 0x30, 0x91, 0xd5, 0x22, 0x5b, 0xdb, 0xdd, 0xf6, 0xae, }; static const wycheproof_hmac_test hmac_sha3_512_884 = { .name = "hmac_sha3_512_884", .hash = SHA3_512, .key = hmac_sha3_512_884_key, .keylen = 64, .msg = hmac_sha3_512_884_msg, .msglen = 24, .tag = hmac_sha3_512_884_tag, .taglen = 64, .result = 1, .comment = ", tcId is 19 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 885 for HMAC, tcId is 20 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_885_key[] = { 0xb9, 0x02, 0x26, 0x79, 0x8d, 0xff, 0x2f, 0xfb, 0x91, 0xd1, 0xee, 0x41, 0x03, 0xf2, 0x63, 0x97, 0xd0, 0xbf, 0x84, 0xc1, 0x3c, 0x1e, 0xc7, 0x17, 0x39, 0x2c, 0x5f, 0xe1, 0xd4, 0xd0, 0xf4, 0xdc, 0x79, 0x02, 0x36, 0xd7, 0x59, 0xfa, 0x1b, 0xe8, 0x52, 0xe3, 0x05, 0xda, 0x58, 0x5a, 0x3d, 0xbd, 0xe0, 0xd3, 0x91, 0x2b, 0xea, 0x60, 0xd6, 0xb1, 0x40, 0xc2, 0x56, 0x45, 0xeb, 0x00, 0x94, 0x3f, }; static const unsigned char hmac_sha3_512_885_msg[] = { 0xaa, 0x29, 0xc3, 0x72, 0xf1, 0x36, 0x99, 0x3c, 0x65, 0xac, 0xe5, 0xe1, 0xd6, 0x20, 0x78, 0x80, 0x6e, 0xb7, 0x87, 0x91, 0x3b, 0xb3, 0x5a, 0xf3, 0x33, 0x71, 0x05, 0x63, 0x59, 0xd3, 0x54, 0xb2, }; static const unsigned char hmac_sha3_512_885_tag[] = { 0x8d, 0x6e, 0xf6, 0xea, 0x9b, 0xf6, 0x1d, 0x3e, 0x39, 0x53, 0x5b, 0x1f, 0x37, 0x59, 0xc0, 0x1d, 0xa2, 0x8d, 0x9f, 0xf7, 0x37, 0x04, 0x91, 0xde, 0x11, 0x7a, 0x52, 0x01, 0x88, 0xe1, 0x5a, 0x15, 0x20, 0x50, 0x37, 0x1d, 0x53, 0x3f, 0xf4, 0xb9, 0x27, 0xfd, 0x91, 0xbd, 0x33, 0xa6, 0xc7, 0x40, 0x4c, 0xce, 0x34, 0xce, 0x47, 0x01, 0xfc, 0x7a, 0x8f, 0x03, 0xeb, 0xf7, 0x0a, 0xd1, 0x88, 0xba, }; static const wycheproof_hmac_test hmac_sha3_512_885 = { .name = "hmac_sha3_512_885", .hash = SHA3_512, .key = hmac_sha3_512_885_key, .keylen = 64, .msg = hmac_sha3_512_885_msg, .msglen = 32, .tag = hmac_sha3_512_885_tag, .taglen = 64, .result = 1, .comment = ", tcId is 20 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 886 for HMAC, tcId is 21 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_886_key[] = { 0xaf, 0x1b, 0xb9, 0x17, 0x75, 0xcb, 0x40, 0xc7, 0x39, 0x83, 0xf1, 0x19, 0xc9, 0x27, 0xa2, 0xce, 0x8f, 0x7b, 0x95, 0x4a, 0x62, 0x74, 0xec, 0xc1, 0xcd, 0x96, 0x01, 0x9e, 0x5c, 0x41, 0x7a, 0xf4, 0xb0, 0x94, 0x37, 0x61, 0x94, 0xea, 0xe7, 0x1c, 0x7f, 0x68, 0xf3, 0x34, 0x56, 0x54, 0xd5, 0xd9, 0xf8, 0x19, 0x8a, 0x69, 0x7b, 0x41, 0xae, 0x25, 0x1e, 0x82, 0x30, 0x8a, 0xcc, 0xd9, 0x35, 0xbd, }; static const unsigned char hmac_sha3_512_886_msg[] = { 0x75, 0xed, 0xed, 0xdf, 0xa7, 0xf1, 0xdf, 0x1d, 0xc1, 0x44, 0xfb, 0x19, 0x5b, 0x27, 0xe4, 0x54, 0x64, 0x0e, 0x3f, 0x89, 0x7c, 0xb5, 0x64, 0x22, 0x2f, 0x05, 0xe8, 0xaa, 0xb0, 0xc6, 0x02, 0x4f, 0x90, 0x47, 0x2a, 0xfe, 0xa6, 0xe7, 0x25, 0x4e, 0xd2, 0x51, 0x34, 0xea, 0x43, 0x45, 0x2a, }; static const unsigned char hmac_sha3_512_886_tag[] = { 0xcd, 0x30, 0x75, 0xb6, 0x6d, 0x5f, 0xb6, 0xd9, 0x0c, 0xd9, 0x38, 0x4c, 0xd1, 0xae, 0xea, 0x9a, 0x2c, 0x67, 0xa5, 0x9b, 0xc5, 0xa7, 0x1b, 0x9b, 0x1e, 0x5e, 0xf5, 0x40, 0x7e, 0xd5, 0x82, 0x29, 0xba, 0xa6, 0x7d, 0x3e, 0x9f, 0x98, 0x95, 0xde, 0x32, 0x0b, 0x42, 0x1a, 0x66, 0x70, 0x21, 0x02, 0x88, 0xaf, 0xe2, 0xda, 0x4a, 0xe4, 0x84, 0x5a, 0xb0, 0x69, 0x50, 0x11, 0x85, 0xb7, 0x6c, 0xa0, }; static const wycheproof_hmac_test hmac_sha3_512_886 = { .name = "hmac_sha3_512_886", .hash = SHA3_512, .key = hmac_sha3_512_886_key, .keylen = 64, .msg = hmac_sha3_512_886_msg, .msglen = 47, .tag = hmac_sha3_512_886_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 887 for HMAC, tcId is 22 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_887_key[] = { 0x51, 0x3e, 0x0e, 0x76, 0x22, 0xea, 0xbc, 0xb6, 0xbf, 0xc8, 0x16, 0x69, 0xda, 0xc9, 0x03, 0xdf, 0x46, 0xda, 0xea, 0x12, 0x40, 0xf3, 0x22, 0x48, 0xbb, 0xf4, 0xfc, 0x61, 0xf1, 0xf9, 0xb1, 0x3b, 0x2c, 0x3f, 0xe1, 0xbc, 0xc9, 0x75, 0x40, 0xd3, 0x00, 0x65, 0xbe, 0x9e, 0xee, 0x41, 0xe5, 0x17, 0x48, 0xbc, 0x42, 0xc1, 0x6a, 0x8c, 0x82, 0x69, 0xfb, 0xe2, 0xb6, 0xf6, 0x25, 0xc1, 0x92, 0x28, }; static const unsigned char hmac_sha3_512_887_msg[] = { 0x81, 0xd8, 0x65, 0x09, 0x37, 0xf5, 0x08, 0x71, 0xa6, 0x6a, 0xf7, 0x16, 0x05, 0xea, 0x4f, 0xa9, 0xd6, 0xc5, 0xd7, 0xa3, 0x75, 0x77, 0x4c, 0x22, 0x80, 0xeb, 0x34, 0xae, 0xfc, 0xee, 0x8c, 0x0e, 0xf8, 0x33, 0x45, 0xbc, 0x54, 0x7e, 0x4d, 0xe7, 0xcb, 0xea, 0x48, 0x23, 0x69, 0xb2, 0x5a, 0x93, }; static const unsigned char hmac_sha3_512_887_tag[] = { 0xf7, 0xb2, 0x63, 0xb7, 0xc2, 0x38, 0x0d, 0x0b, 0xa7, 0x08, 0x44, 0xd2, 0xe6, 0xe5, 0x6d, 0xfd, 0x68, 0xfa, 0xbf, 0x7e, 0xc9, 0xaf, 0x5c, 0x8b, 0xa8, 0x97, 0xae, 0x4e, 0x9d, 0x30, 0x8a, 0xa2, 0x8f, 0xf7, 0xa1, 0x0b, 0xa4, 0xd3, 0x75, 0x25, 0xe8, 0x58, 0x07, 0x40, 0x93, 0xae, 0x8b, 0x15, 0x90, 0x8d, 0xe2, 0x2b, 0xe7, 0x0e, 0x3f, 0x0b, 0x23, 0xdc, 0x61, 0xc3, 0x9b, 0x17, 0xab, 0x39, }; static const wycheproof_hmac_test hmac_sha3_512_887 = { .name = "hmac_sha3_512_887", .hash = SHA3_512, .key = hmac_sha3_512_887_key, .keylen = 64, .msg = hmac_sha3_512_887_msg, .msglen = 48, .tag = hmac_sha3_512_887_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 888 for HMAC, tcId is 23 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_888_key[] = { 0x62, 0x7c, 0x9a, 0x72, 0x24, 0x7d, 0x07, 0xb0, 0xce, 0xc8, 0x34, 0x62, 0x77, 0x46, 0x83, 0x11, 0xc7, 0x40, 0x1f, 0xc4, 0xce, 0xca, 0xea, 0x8e, 0x22, 0xe1, 0x3e, 0xce, 0x4b, 0x35, 0x2c, 0x8f, 0x7a, 0x7e, 0xb1, 0xba, 0x81, 0xce, 0x34, 0x8a, 0x08, 0x67, 0x04, 0x38, 0xc9, 0x7b, 0x8d, 0x9e, 0x88, 0x36, 0x14, 0xd5, 0x50, 0xf1, 0xff, 0x16, 0xd6, 0x36, 0x97, 0x5c, 0x59, 0x98, 0x8c, 0x2d, }; static const unsigned char hmac_sha3_512_888_msg[] = { 0x11, 0x8e, 0x04, 0x68, 0xcb, 0xb5, 0x2f, 0x93, 0xa3, 0x39, 0x6e, 0xbf, 0xaa, 0x11, 0x48, 0x81, 0xa9, 0x8a, 0x41, 0x01, 0xf4, 0xff, 0x91, 0x2c, 0xed, 0x47, 0xec, 0xfc, 0x73, 0xb2, 0x7f, 0x52, 0x20, 0x5b, 0x7a, 0x5d, 0x4f, 0x38, 0x99, 0x50, 0x6f, 0x9e, 0x34, 0xeb, 0xf9, 0x94, 0x60, 0xda, 0x7a, }; static const unsigned char hmac_sha3_512_888_tag[] = { 0x05, 0x0b, 0x55, 0x34, 0x6a, 0xb1, 0x12, 0xe0, 0xba, 0x62, 0x40, 0x9f, 0x3b, 0xb4, 0x8f, 0x70, 0x99, 0xa5, 0x09, 0x8e, 0x2c, 0xcb, 0x2d, 0x18, 0xe4, 0x7b, 0x51, 0x71, 0x02, 0x9f, 0x43, 0xf9, 0xa0, 0x11, 0xfa, 0x1b, 0x13, 0x4b, 0x64, 0x12, 0xfb, 0x9d, 0xf1, 0x61, 0xab, 0xf2, 0x95, 0x40, 0x5b, 0xa3, 0xe2, 0x12, 0x65, 0x7d, 0x74, 0x20, 0xee, 0x83, 0x18, 0x85, 0xe7, 0x1a, 0x32, 0x4b, }; static const wycheproof_hmac_test hmac_sha3_512_888 = { .name = "hmac_sha3_512_888", .hash = SHA3_512, .key = hmac_sha3_512_888_key, .keylen = 64, .msg = hmac_sha3_512_888_msg, .msglen = 49, .tag = hmac_sha3_512_888_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 889 for HMAC, tcId is 24 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_889_key[] = { 0x1e, 0x98, 0x1d, 0x0c, 0xbb, 0xad, 0x5b, 0xea, 0x94, 0x80, 0xd8, 0x36, 0xb4, 0x70, 0x4b, 0xf3, 0x14, 0x76, 0x63, 0xb6, 0xea, 0x59, 0xe1, 0xe0, 0xa2, 0x80, 0xfb, 0x45, 0xd9, 0xb8, 0x5d, 0x44, 0x5d, 0xc9, 0x72, 0x15, 0x9d, 0xde, 0x30, 0x1c, 0x6f, 0x1e, 0x66, 0x68, 0x1f, 0x95, 0x64, 0x2d, 0xbb, 0x9a, 0x92, 0x18, 0xc0, 0x0d, 0x0c, 0xd7, 0x24, 0xcb, 0x02, 0xf3, 0xbc, 0xae, 0xa2, 0xea, }; static const unsigned char hmac_sha3_512_889_msg[] = { 0x44, 0x0d, 0xff, 0x39, 0x06, 0x88, 0xc9, 0xfd, 0xe3, 0x1c, 0x17, 0xfd, 0xb6, 0x1c, 0x1d, 0x13, 0x89, 0x9f, 0x95, 0x44, 0xa9, 0x86, 0x32, 0x4c, 0x34, 0xd5, 0xeb, 0x07, 0xbe, 0xf9, 0xa4, 0x43, 0x62, 0x97, 0xf4, 0xa7, 0xfe, 0x16, 0xde, 0x5d, 0xd7, 0xb2, 0x4e, 0x0c, 0x7c, 0x12, 0x90, 0x51, 0xef, 0xe6, 0xf2, 0xdd, 0x0a, 0x21, 0xae, 0xc0, 0x5c, 0x3e, 0x3c, 0x8f, 0x6f, 0xa3, 0x0d, 0x9c, 0x0c, 0xbd, 0x60, 0xd8, 0x40, 0xd1, 0x4f, 0x0b, 0x2a, 0x92, 0x8b, 0xc7, 0x18, 0x9b, 0x9d, 0xe4, 0xa6, 0xa7, 0x31, 0x15, 0x1d, 0x6b, 0x31, 0xe6, 0xa0, 0xec, 0xae, 0x75, 0x09, 0x54, 0x34, 0x73, 0x7b, 0xe8, 0xc3, 0xdb, 0x11, 0xa6, 0xa6, 0x97, 0xd0, 0x61, 0x6c, 0x78, 0xb9, 0x70, 0x41, 0xde, }; static const unsigned char hmac_sha3_512_889_tag[] = { 0x4a, 0x7a, 0x1d, 0x6b, 0x15, 0xee, 0x94, 0x41, 0x03, 0x25, 0x36, 0x29, 0x80, 0xdf, 0x65, 0x9b, 0x5f, 0x72, 0x59, 0x8f, 0xaa, 0x19, 0x63, 0xc3, 0xf1, 0x29, 0x80, 0x04, 0x39, 0xe7, 0xa7, 0x14, 0x8f, 0x9f, 0x1f, 0x60, 0x31, 0xf7, 0xd0, 0xf3, 0xc0, 0xa8, 0xb8, 0xa2, 0x48, 0xc5, 0xf5, 0xea, 0x88, 0xa3, 0x54, 0x4d, 0xef, 0x2b, 0x30, 0x55, 0x30, 0x61, 0x53, 0x3e, 0xbf, 0xb4, 0x79, 0x97, }; static const wycheproof_hmac_test hmac_sha3_512_889 = { .name = "hmac_sha3_512_889", .hash = SHA3_512, .key = hmac_sha3_512_889_key, .keylen = 64, .msg = hmac_sha3_512_889_msg, .msglen = 112, .tag = hmac_sha3_512_889_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 890 for HMAC, tcId is 25 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_890_key[] = { 0xee, 0x8a, 0xea, 0x2a, 0x52, 0xeb, 0x7e, 0x0c, 0x11, 0x20, 0xab, 0x73, 0x6b, 0x1a, 0x82, 0x5b, 0x12, 0x61, 0x00, 0x63, 0xde, 0x96, 0x42, 0xc5, 0x94, 0x76, 0x6c, 0x02, 0x0c, 0xb8, 0x73, 0x14, 0xd8, 0xac, 0x94, 0xb1, 0x30, 0x72, 0xbf, 0xbf, 0x3c, 0x01, 0x9b, 0x4a, 0xac, 0xb1, 0xd2, 0x69, 0x5c, 0xdd, 0x75, 0x63, 0xa2, 0x6f, 0x57, 0x4e, 0x12, 0x55, 0x99, 0x06, 0x78, 0x4d, 0x85, 0x3c, }; static const unsigned char hmac_sha3_512_890_msg[] = { 0xa3, 0x95, 0x1f, 0x1d, 0x18, 0x13, 0x56, 0x02, 0xfd, 0xad, 0xce, 0xee, 0xf5, 0x74, 0x1c, 0x24, 0xad, 0x22, 0x75, 0x61, 0x60, 0xd0, 0xc5, 0x5e, 0x51, 0xb7, 0x88, 0xaf, 0x95, 0x2a, 0xda, 0xeb, 0x13, 0xe1, 0x8c, 0x24, 0xc6, 0xb0, 0x96, 0x72, 0xf4, 0x05, 0xd7, 0xec, 0x3d, 0x49, 0xb0, 0xbd, 0x86, 0xc7, 0xf8, 0x69, 0x1b, 0x6f, 0x69, 0xaf, 0x49, 0x17, 0x54, 0x23, 0x21, 0x5c, 0xf5, 0x7d, 0x7c, 0x08, 0xa5, 0x4a, 0xb0, 0xb0, 0x29, 0x3e, 0x68, 0x5c, 0x9a, 0xa2, 0x50, 0xf1, 0x59, 0x9d, 0x78, 0x19, 0x3a, 0x00, 0xaf, 0x82, 0x2d, 0xec, 0x4b, 0x56, 0xfd, 0xb4, 0x1f, 0x03, 0x43, 0xab, 0x2c, 0xf8, 0x5e, 0xa2, 0x7b, 0xb2, 0xe6, 0x50, 0x93, 0x0f, 0x5e, 0x8c, 0xa8, 0x36, 0x83, 0x39, 0x03, 0xb0, 0x53, 0xb3, 0xe0, 0x68, 0x99, 0xb4, 0x01, 0x2a, 0x65, 0x32, 0x97, 0x8d, 0x90, }; static const unsigned char hmac_sha3_512_890_tag[] = { 0x74, 0x1d, 0x2f, 0xef, 0x6b, 0x19, 0x49, 0x13, 0xb7, 0xb6, 0xc5, 0x43, 0x1d, 0x36, 0xcd, 0x80, 0xf5, 0x98, 0x54, 0x80, 0xb3, 0x7a, 0x81, 0x98, 0xf6, 0x0e, 0x0a, 0x96, 0xbb, 0x56, 0xd8, 0x97, 0x80, 0xb8, 0x7d, 0x8b, 0xc3, 0xfe, 0xb0, 0x3d, 0x29, 0xfe, 0xcc, 0x28, 0xdf, 0xa2, 0x85, 0xf0, 0x52, 0xee, 0xc5, 0xd0, 0xf9, 0xcf, 0xcb, 0x7c, 0x9c, 0xfe, 0xd2, 0x00, 0xae, 0x60, 0xd0, 0xf8, }; static const wycheproof_hmac_test hmac_sha3_512_890 = { .name = "hmac_sha3_512_890", .hash = SHA3_512, .key = hmac_sha3_512_890_key, .keylen = 64, .msg = hmac_sha3_512_890_msg, .msglen = 127, .tag = hmac_sha3_512_890_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 891 for HMAC, tcId is 26 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_891_key[] = { 0xec, 0xd1, 0x86, 0x1a, 0x12, 0xea, 0xee, 0x48, 0xae, 0xf1, 0xd7, 0xed, 0x27, 0x82, 0x23, 0xb5, 0x0d, 0x34, 0x16, 0xdb, 0xff, 0x81, 0xe9, 0x76, 0xc5, 0x6e, 0xcd, 0x4b, 0x1a, 0x1b, 0xc8, 0x89, 0x2b, 0x58, 0x4c, 0xbc, 0xc7, 0x23, 0x70, 0xff, 0x5e, 0x97, 0x6a, 0x6a, 0xf1, 0x79, 0x0c, 0xaa, 0x32, 0xf9, 0xea, 0x91, 0x28, 0x55, 0x91, 0x4c, 0x03, 0x15, 0x97, 0x95, 0x78, 0xfb, 0xf1, 0x65, }; static const unsigned char hmac_sha3_512_891_msg[] = { 0x57, 0x79, 0xc5, 0x63, 0x73, 0xa8, 0xe5, 0xdb, 0x43, 0xbd, 0x65, 0xc0, 0x45, 0x3c, 0xe2, 0x31, 0x44, 0x23, 0x0d, 0x43, 0x66, 0x6d, 0x71, 0x7a, 0x3b, 0x59, 0xd2, 0xe9, 0x0f, 0x0e, 0x10, 0x73, 0x23, 0x76, 0x83, 0x1d, 0x72, 0x81, 0xcb, 0x23, 0xdd, 0x55, 0x66, 0xe5, 0xf8, 0xc6, 0x27, 0xd0, 0x0d, 0x39, 0x65, 0x01, 0x39, 0xce, 0xb8, 0x7c, 0xd4, 0x7e, 0x92, 0x1d, 0x65, 0xd6, 0xc1, 0xcc, 0x77, 0x12, 0xac, 0x4b, 0xd7, 0x5b, 0xda, 0x88, 0x28, 0xe6, 0x8a, 0xbc, 0x96, 0x8f, 0x41, 0x60, 0xed, 0x91, 0xb2, 0x89, 0x46, 0xc9, 0xd7, 0x06, 0xb0, 0x36, 0x0b, 0xbb, 0xdd, 0x65, 0xf4, 0x7e, 0xf9, 0x98, 0x3c, 0x50, 0xf2, 0xd0, 0x9d, 0x05, 0xc3, 0x67, 0x4c, 0x09, 0x43, 0xea, 0x4a, 0xf5, 0x4c, 0x38, 0x10, 0x89, 0xf9, 0xb8, 0x46, 0xdd, 0x69, 0xce, 0x90, 0x8e, 0x0f, 0x6e, 0xaa, 0xaf, }; static const unsigned char hmac_sha3_512_891_tag[] = { 0xe5, 0xd8, 0x4c, 0x73, 0xdb, 0x42, 0x7d, 0xbd, 0xa2, 0x5d, 0x54, 0x6c, 0x5e, 0xf1, 0x7a, 0x1a, 0x7a, 0x7c, 0x19, 0x4b, 0x74, 0x5f, 0x42, 0xff, 0x6a, 0xbf, 0x58, 0x21, 0xbf, 0xb0, 0xa9, 0xb7, 0x78, 0xbf, 0xc2, 0xe0, 0xe7, 0x48, 0x71, 0xc7, 0xbb, 0xf6, 0x45, 0xe3, 0xa4, 0xf7, 0x35, 0xc1, 0x35, 0xd7, 0xa8, 0x3b, 0x15, 0xbf, 0xee, 0x39, 0xbd, 0x5f, 0x6c, 0xbd, 0x68, 0xc9, 0x1e, 0x4f, }; static const wycheproof_hmac_test hmac_sha3_512_891 = { .name = "hmac_sha3_512_891", .hash = SHA3_512, .key = hmac_sha3_512_891_key, .keylen = 64, .msg = hmac_sha3_512_891_msg, .msglen = 128, .tag = hmac_sha3_512_891_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 892 for HMAC, tcId is 27 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_892_key[] = { 0x71, 0xaa, 0xdb, 0xf3, 0x30, 0xea, 0x13, 0x3b, 0x46, 0xc9, 0x39, 0xd1, 0x2e, 0x60, 0x38, 0x96, 0x90, 0x2e, 0x8d, 0xf6, 0x38, 0x59, 0x7c, 0x98, 0x87, 0x2d, 0xfb, 0x5a, 0xec, 0xd5, 0x16, 0x1b, 0xc8, 0x40, 0x95, 0x22, 0x1d, 0xe3, 0x22, 0x23, 0x67, 0x01, 0x2f, 0x45, 0xc6, 0xd7, 0x07, 0x01, 0xe8, 0x62, 0xab, 0x00, 0x0e, 0x78, 0x2e, 0x91, 0xb5, 0x05, 0xb2, 0x1b, 0x4e, 0x21, 0x2c, 0x38, }; static const unsigned char hmac_sha3_512_892_msg[] = { 0xe6, 0xd7, 0xb0, 0x28, 0x0d, 0x2f, 0x7d, 0xf8, 0x3f, 0xd2, 0x65, 0x62, 0xfc, 0xde, 0xa2, 0x59, 0x7c, 0xf6, 0x87, 0xa9, 0xc9, 0xfa, 0x19, 0x4f, 0x65, 0x5c, 0x44, 0xd3, 0x27, 0x1b, 0x88, 0x1f, 0x28, 0xad, 0xc4, 0x36, 0xdb, 0x8e, 0x04, 0x37, 0xff, 0x4d, 0xc5, 0xd3, 0x83, 0x56, 0x27, 0x1c, 0x33, 0x88, 0x29, 0xc3, 0xe2, 0xd9, 0xba, 0x4a, 0xc1, 0x77, 0x7c, 0x94, 0x88, 0x69, 0x83, 0xd4, 0xb7, 0x2c, 0x27, 0x5b, 0xc0, 0x0e, 0x4f, 0x7b, 0x06, 0xc5, 0xce, 0x38, 0xa2, 0xfe, 0x54, 0x9f, 0xe5, 0x37, 0x61, 0x85, 0x7f, 0x23, 0x6d, 0xa7, 0x05, 0xfd, 0x03, 0x79, 0x0b, 0x41, 0xcc, 0x6f, 0x75, 0x9f, 0x41, 0xaa, 0x20, 0x6f, 0xec, 0xa7, 0xba, 0x54, 0x86, 0xf4, 0xfc, 0x9d, 0x09, 0xf3, 0x5c, 0x8e, 0x08, 0x87, 0x24, 0x12, 0x91, 0x88, 0x20, 0x10, 0x41, 0x4a, 0xe4, 0x1b, 0x8b, 0x38, 0x4a, 0x71, 0x5a, 0x40, 0x9b, 0xe1, 0x3d, 0xa1, 0x7b, 0xfd, 0x60, 0xd3, 0xfb, 0xd4, 0xb8, 0xcb, 0x3c, 0xc7, 0xc2, 0x60, 0x43, 0x80, 0x72, 0x64, 0xa2, 0x0b, 0x9a, 0x5c, 0x02, 0x72, 0x5e, 0x74, 0x2f, 0xff, 0x03, 0xe1, 0x80, 0x6b, 0x38, 0xaf, 0x35, 0x7e, 0xbf, 0x8c, 0x79, 0xfc, 0x4c, 0x38, 0xb0, 0x07, 0xbf, 0x06, 0x13, 0x28, 0x6c, 0xf0, 0x63, 0xe4, 0x54, 0x82, 0x37, 0x54, 0x75, 0xe6, 0xc4, 0x26, 0xd4, 0xf7, 0x00, 0x57, 0xcd, 0x92, 0xef, 0xcb, 0x2d, 0xfe, 0x86, 0xe4, 0x5b, 0xde, 0xa3, 0x99, 0x27, 0x3a, 0x5e, 0x0f, 0x14, 0x22, 0x21, 0xfa, 0xe2, 0x06, 0x80, 0x05, 0x55, 0xc0, 0x1b, 0x18, 0x53, 0x32, 0x95, 0xf5, 0x77, 0xe2, 0x3a, 0x9a, 0x7a, 0x0a, 0xa0, 0x72, 0x82, 0x30, 0x02, 0xb9, 0x09, 0x65, 0x01, 0x17, 0x4d, 0x3b, 0xc4, 0xaa, 0xc3, 0x3e, 0x0d, 0xc6, 0x00, }; static const unsigned char hmac_sha3_512_892_tag[] = { 0xe6, 0xe4, 0x64, 0x95, 0x53, 0x8a, 0x97, 0x7d, 0xc0, 0x06, 0xdc, 0xda, 0xeb, 0x11, 0x5d, 0xad, 0x0b, 0x88, 0x70, 0x6a, 0xd7, 0xb8, 0x0e, 0x46, 0xf5, 0x7e, 0xa8, 0xf9, 0x10, 0xd7, 0x5c, 0x81, 0x0e, 0xdc, 0x7e, 0x7e, 0x0b, 0x92, 0xd1, 0x29, 0x84, 0x6a, 0xec, 0x9b, 0xae, 0xf9, 0x9a, 0x2a, 0xe8, 0xb5, 0x80, 0x82, 0x50, 0x37, 0xdb, 0x60, 0x68, 0xf7, 0x60, 0x33, 0x45, 0x19, 0x68, 0x9f, }; static const wycheproof_hmac_test hmac_sha3_512_892 = { .name = "hmac_sha3_512_892", .hash = SHA3_512, .key = hmac_sha3_512_892_key, .keylen = 64, .msg = hmac_sha3_512_892_msg, .msglen = 255, .tag = hmac_sha3_512_892_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 893 for HMAC, tcId is 28 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_893_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_893_tag[] = { 0x61, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_893 = { .name = "hmac_sha3_512_893", .hash = SHA3_512, .key = hmac_sha3_512_893_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_893_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 894 for HMAC, tcId is 29 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_894_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_894_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_894_tag[] = { 0x7e, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_894 = { .name = "hmac_sha3_512_894", .hash = SHA3_512, .key = hmac_sha3_512_894_key, .keylen = 64, .msg = hmac_sha3_512_894_msg, .msglen = 16, .tag = hmac_sha3_512_894_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 895 for HMAC, tcId is 30 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_895_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_895_tag[] = { 0x62, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_895 = { .name = "hmac_sha3_512_895", .hash = SHA3_512, .key = hmac_sha3_512_895_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_895_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 896 for HMAC, tcId is 31 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_896_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_896_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_896_tag[] = { 0x7d, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_896 = { .name = "hmac_sha3_512_896", .hash = SHA3_512, .key = hmac_sha3_512_896_key, .keylen = 64, .msg = hmac_sha3_512_896_msg, .msglen = 16, .tag = hmac_sha3_512_896_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 897 for HMAC, tcId is 32 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_897_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_897_tag[] = { 0xe0, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_897 = { .name = "hmac_sha3_512_897", .hash = SHA3_512, .key = hmac_sha3_512_897_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_897_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 898 for HMAC, tcId is 33 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_898_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_898_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_898_tag[] = { 0xff, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_898 = { .name = "hmac_sha3_512_898", .hash = SHA3_512, .key = hmac_sha3_512_898_key, .keylen = 64, .msg = hmac_sha3_512_898_msg, .msglen = 16, .tag = hmac_sha3_512_898_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 899 for HMAC, tcId is 34 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_899_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_899_tag[] = { 0x60, 0x71, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_899 = { .name = "hmac_sha3_512_899", .hash = SHA3_512, .key = hmac_sha3_512_899_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_899_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 900 for HMAC, tcId is 35 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_900_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_900_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_900_tag[] = { 0x7f, 0xc9, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_900 = { .name = "hmac_sha3_512_900", .hash = SHA3_512, .key = hmac_sha3_512_900_key, .keylen = 64, .msg = hmac_sha3_512_900_msg, .msglen = 16, .tag = hmac_sha3_512_900_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 901 for HMAC, tcId is 36 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_901_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_901_tag[] = { 0x60, 0x70, 0x63, 0xf0, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_901 = { .name = "hmac_sha3_512_901", .hash = SHA3_512, .key = hmac_sha3_512_901_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_901_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 902 for HMAC, tcId is 37 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_902_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_902_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_902_tag[] = { 0x7f, 0xc8, 0xb6, 0x0b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_902 = { .name = "hmac_sha3_512_902", .hash = SHA3_512, .key = hmac_sha3_512_902_key, .keylen = 64, .msg = hmac_sha3_512_902_msg, .msglen = 16, .tag = hmac_sha3_512_902_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 903 for HMAC, tcId is 38 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_903_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_903_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1b, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_903 = { .name = "hmac_sha3_512_903", .hash = SHA3_512, .key = hmac_sha3_512_903_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_903_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 904 for HMAC, tcId is 39 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_904_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_904_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_904_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x44, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_904 = { .name = "hmac_sha3_512_904", .hash = SHA3_512, .key = hmac_sha3_512_904_key, .keylen = 64, .msg = hmac_sha3_512_904_msg, .msglen = 16, .tag = hmac_sha3_512_904_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 905 for HMAC, tcId is 40 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_905_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_905_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x18, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_905 = { .name = "hmac_sha3_512_905", .hash = SHA3_512, .key = hmac_sha3_512_905_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_905_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 906 for HMAC, tcId is 41 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_906_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_906_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_906_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x47, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_906 = { .name = "hmac_sha3_512_906", .hash = SHA3_512, .key = hmac_sha3_512_906_key, .keylen = 64, .msg = hmac_sha3_512_906_msg, .msglen = 16, .tag = hmac_sha3_512_906_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 907 for HMAC, tcId is 42 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_907_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_907_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_907 = { .name = "hmac_sha3_512_907", .hash = SHA3_512, .key = hmac_sha3_512_907_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_907_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 908 for HMAC, tcId is 43 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_908_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_908_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_908_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_908 = { .name = "hmac_sha3_512_908", .hash = SHA3_512, .key = hmac_sha3_512_908_key, .keylen = 64, .msg = hmac_sha3_512_908_msg, .msglen = 16, .tag = hmac_sha3_512_908_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 909 for HMAC, tcId is 44 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_909_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_909_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x23, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_909 = { .name = "hmac_sha3_512_909", .hash = SHA3_512, .key = hmac_sha3_512_909_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_909_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 910 for HMAC, tcId is 45 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_910_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_910_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_910_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x70, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_910 = { .name = "hmac_sha3_512_910", .hash = SHA3_512, .key = hmac_sha3_512_910_key, .keylen = 64, .msg = hmac_sha3_512_910_msg, .msglen = 16, .tag = hmac_sha3_512_910_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 911 for HMAC, tcId is 46 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_911_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_911_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0xa2, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_911 = { .name = "hmac_sha3_512_911", .hash = SHA3_512, .key = hmac_sha3_512_911_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_911_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 912 for HMAC, tcId is 47 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_912_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_912_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_912_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0xf1, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_912 = { .name = "hmac_sha3_512_912", .hash = SHA3_512, .key = hmac_sha3_512_912_key, .keylen = 64, .msg = hmac_sha3_512_912_msg, .msglen = 16, .tag = hmac_sha3_512_912_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 913 for HMAC, tcId is 48 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_913_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_913_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0xa5, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_913 = { .name = "hmac_sha3_512_913", .hash = SHA3_512, .key = hmac_sha3_512_913_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_913_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 914 for HMAC, tcId is 49 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_914_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_914_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_914_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0x9e, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_914 = { .name = "hmac_sha3_512_914", .hash = SHA3_512, .key = hmac_sha3_512_914_key, .keylen = 64, .msg = hmac_sha3_512_914_msg, .msglen = 16, .tag = hmac_sha3_512_914_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 915 for HMAC, tcId is 50 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_915_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_915_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x45, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_915 = { .name = "hmac_sha3_512_915", .hash = SHA3_512, .key = hmac_sha3_512_915_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_915_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 916 for HMAC, tcId is 51 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_916_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_916_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_916_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x12, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_916 = { .name = "hmac_sha3_512_916", .hash = SHA3_512, .key = hmac_sha3_512_916_key, .keylen = 64, .msg = hmac_sha3_512_916_msg, .msglen = 16, .tag = hmac_sha3_512_916_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 917 for HMAC, tcId is 52 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_917_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_917_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3b, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_917 = { .name = "hmac_sha3_512_917", .hash = SHA3_512, .key = hmac_sha3_512_917_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_917_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 918 for HMAC, tcId is 53 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_918_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_918_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_918_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8d, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_918 = { .name = "hmac_sha3_512_918", .hash = SHA3_512, .key = hmac_sha3_512_918_key, .keylen = 64, .msg = hmac_sha3_512_918_msg, .msglen = 16, .tag = hmac_sha3_512_918_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 919 for HMAC, tcId is 54 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_919_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_919_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x38, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_919 = { .name = "hmac_sha3_512_919", .hash = SHA3_512, .key = hmac_sha3_512_919_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_919_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 920 for HMAC, tcId is 55 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_920_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_920_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_920_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8e, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_920 = { .name = "hmac_sha3_512_920", .hash = SHA3_512, .key = hmac_sha3_512_920_key, .keylen = 64, .msg = hmac_sha3_512_920_msg, .msglen = 16, .tag = hmac_sha3_512_920_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 921 for HMAC, tcId is 56 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_921_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_921_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0xba, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_921 = { .name = "hmac_sha3_512_921", .hash = SHA3_512, .key = hmac_sha3_512_921_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_921_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 922 for HMAC, tcId is 57 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_922_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_922_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_922_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x0c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_922 = { .name = "hmac_sha3_512_922", .hash = SHA3_512, .key = hmac_sha3_512_922_key, .keylen = 64, .msg = hmac_sha3_512_922_msg, .msglen = 16, .tag = hmac_sha3_512_922_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 923 for HMAC, tcId is 58 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_923_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_923_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x75, }; static const wycheproof_hmac_test hmac_sha3_512_923 = { .name = "hmac_sha3_512_923", .hash = SHA3_512, .key = hmac_sha3_512_923_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_923_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 504 in tag, tcId is 58 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 924 for HMAC, tcId is 59 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_924_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_924_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_924_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x81, }; static const wycheproof_hmac_test hmac_sha3_512_924 = { .name = "hmac_sha3_512_924", .hash = SHA3_512, .key = hmac_sha3_512_924_key, .keylen = 64, .msg = hmac_sha3_512_924_msg, .msglen = 16, .tag = hmac_sha3_512_924_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 504 in tag, tcId is 59 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 925 for HMAC, tcId is 60 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_925_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_925_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x76, }; static const wycheproof_hmac_test hmac_sha3_512_925 = { .name = "hmac_sha3_512_925", .hash = SHA3_512, .key = hmac_sha3_512_925_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_925_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 505 in tag, tcId is 60 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 926 for HMAC, tcId is 61 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_926_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_926_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_926_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x82, }; static const wycheproof_hmac_test hmac_sha3_512_926 = { .name = "hmac_sha3_512_926", .hash = SHA3_512, .key = hmac_sha3_512_926_key, .keylen = 64, .msg = hmac_sha3_512_926_msg, .msglen = 16, .tag = hmac_sha3_512_926_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 505 in tag, tcId is 61 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 927 for HMAC, tcId is 62 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_927_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_927_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x34, }; static const wycheproof_hmac_test hmac_sha3_512_927 = { .name = "hmac_sha3_512_927", .hash = SHA3_512, .key = hmac_sha3_512_927_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_927_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 510 in tag, tcId is 62 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 928 for HMAC, tcId is 63 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_928_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_928_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_928_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0xc0, }; static const wycheproof_hmac_test hmac_sha3_512_928 = { .name = "hmac_sha3_512_928", .hash = SHA3_512, .key = hmac_sha3_512_928_key, .keylen = 64, .msg = hmac_sha3_512_928_msg, .msglen = 16, .tag = hmac_sha3_512_928_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 510 in tag, tcId is 63 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 929 for HMAC, tcId is 64 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_929_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_929_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0xf4, }; static const wycheproof_hmac_test hmac_sha3_512_929 = { .name = "hmac_sha3_512_929", .hash = SHA3_512, .key = hmac_sha3_512_929_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_929_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 511 in tag, tcId is 64 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 930 for HMAC, tcId is 65 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_930_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_930_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_930_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_930 = { .name = "hmac_sha3_512_930", .hash = SHA3_512, .key = hmac_sha3_512_930_key, .keylen = 64, .msg = hmac_sha3_512_930_msg, .msglen = 16, .tag = hmac_sha3_512_930_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 511 in tag, tcId is 65 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 931 for HMAC, tcId is 66 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_931_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_931_tag[] = { 0x61, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x23, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_931 = { .name = "hmac_sha3_512_931", .hash = SHA3_512, .key = hmac_sha3_512_931_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_931_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 932 for HMAC, tcId is 67 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_932_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_932_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_932_tag[] = { 0x7e, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x70, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_932 = { .name = "hmac_sha3_512_932", .hash = SHA3_512, .key = hmac_sha3_512_932_key, .keylen = 64, .msg = hmac_sha3_512_932_msg, .msglen = 16, .tag = hmac_sha3_512_932_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 933 for HMAC, tcId is 68 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_933_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_933_tag[] = { 0x60, 0x70, 0x63, 0xf0, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_933 = { .name = "hmac_sha3_512_933", .hash = SHA3_512, .key = hmac_sha3_512_933_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_933_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 934 for HMAC, tcId is 69 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_934_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_934_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_934_tag[] = { 0x7f, 0xc8, 0xb6, 0x0b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_934 = { .name = "hmac_sha3_512_934", .hash = SHA3_512, .key = hmac_sha3_512_934_key, .keylen = 64, .msg = hmac_sha3_512_934_msg, .msglen = 16, .tag = hmac_sha3_512_934_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 935 for HMAC, tcId is 70 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_935_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_935_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0x6e, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, 0xe5, 0x04, 0xd4, 0xc0, 0x3a, 0x1b, 0xe0, 0xe8, 0xfc, 0xe9, 0x9a, 0x20, 0x36, 0x8d, 0xc5, 0xac, 0x0f, 0x60, 0xd9, 0x0c, 0xa0, 0xc4, 0x84, 0x43, 0xf8, 0x1a, 0x51, 0xd4, 0xc8, 0xac, 0x4a, 0x74, }; static const wycheproof_hmac_test hmac_sha3_512_935 = { .name = "hmac_sha3_512_935", .hash = SHA3_512, .key = hmac_sha3_512_935_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_935_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 936 for HMAC, tcId is 71 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_936_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_936_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_936_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0x39, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, 0xc3, 0x53, 0xf0, 0xb2, 0x04, 0x0d, 0xf3, 0xff, 0xfc, 0x38, 0xbe, 0x8c, 0xaf, 0x86, 0x3c, 0x1a, 0x4b, 0x50, 0x4f, 0x0c, 0xa8, 0x9b, 0x20, 0x04, 0x51, 0xa1, 0xc3, 0x10, 0xd3, 0xe4, 0x19, 0x80, }; static const wycheproof_hmac_test hmac_sha3_512_936 = { .name = "hmac_sha3_512_936", .hash = SHA3_512, .key = hmac_sha3_512_936_key, .keylen = 64, .msg = hmac_sha3_512_936_msg, .msglen = 16, .tag = hmac_sha3_512_936_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 937 for HMAC, tcId is 72 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_937_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_937_tag[] = { 0x9f, 0x8f, 0x9c, 0x8f, 0xe5, 0xa9, 0x7a, 0xa6, 0xdd, 0x7a, 0xbb, 0x29, 0xc5, 0xd8, 0x2c, 0x11, 0x01, 0x13, 0x54, 0xaf, 0x6c, 0xc5, 0x67, 0x61, 0x75, 0xd0, 0xa5, 0x92, 0xf8, 0xbe, 0x5b, 0x9c, 0x1a, 0xfb, 0x2b, 0x3f, 0xc5, 0xe4, 0x1f, 0x17, 0x03, 0x16, 0x65, 0xdf, 0xc9, 0x72, 0x3a, 0x53, 0xf0, 0x9f, 0x26, 0xf3, 0x5f, 0x3b, 0x7b, 0xbc, 0x07, 0xe5, 0xae, 0x2b, 0x37, 0x53, 0xb5, 0x8b, }; static const wycheproof_hmac_test hmac_sha3_512_937 = { .name = "hmac_sha3_512_937", .hash = SHA3_512, .key = hmac_sha3_512_937_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_937_tag, .taglen = 64, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 938 for HMAC, tcId is 73 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_938_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_938_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_938_tag[] = { 0x80, 0x37, 0x49, 0x74, 0xba, 0xb7, 0x3e, 0xd0, 0x8e, 0x41, 0xec, 0xbd, 0x73, 0x44, 0xb5, 0x46, 0x01, 0x5d, 0x7f, 0xbd, 0xe3, 0xdf, 0x6c, 0xba, 0x24, 0x0f, 0x36, 0x7a, 0x40, 0x96, 0xef, 0x22, 0x3c, 0xac, 0x0f, 0x4d, 0xfb, 0xf2, 0x0c, 0x00, 0x03, 0xc7, 0x41, 0x73, 0x50, 0x79, 0xc3, 0xe5, 0xb4, 0xaf, 0xb0, 0xf3, 0x57, 0x64, 0xdf, 0xfb, 0xae, 0x5e, 0x3c, 0xef, 0x2c, 0x1b, 0xe6, 0x7f, }; static const wycheproof_hmac_test hmac_sha3_512_938 = { .name = "hmac_sha3_512_938", .hash = SHA3_512, .key = hmac_sha3_512_938_key, .keylen = 64, .msg = hmac_sha3_512_938_msg, .msglen = 16, .tag = hmac_sha3_512_938_tag, .taglen = 64, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 939 for HMAC, tcId is 74 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_939_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_939_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_939 = { .name = "hmac_sha3_512_939", .hash = SHA3_512, .key = hmac_sha3_512_939_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_939_tag, .taglen = 64, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 940 for HMAC, tcId is 75 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_940_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_940_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_940_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_940 = { .name = "hmac_sha3_512_940", .hash = SHA3_512, .key = hmac_sha3_512_940_key, .keylen = 64, .msg = hmac_sha3_512_940_msg, .msglen = 16, .tag = hmac_sha3_512_940_tag, .taglen = 64, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 941 for HMAC, tcId is 76 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_941_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_941_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_512_941 = { .name = "hmac_sha3_512_941", .hash = SHA3_512, .key = hmac_sha3_512_941_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_941_tag, .taglen = 64, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 942 for HMAC, tcId is 77 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_942_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_942_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_942_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_512_942 = { .name = "hmac_sha3_512_942", .hash = SHA3_512, .key = hmac_sha3_512_942_key, .keylen = 64, .msg = hmac_sha3_512_942_msg, .msglen = 16, .tag = hmac_sha3_512_942_tag, .taglen = 64, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 943 for HMAC, tcId is 78 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_943_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_943_tag[] = { 0xe0, 0xf0, 0xe3, 0xf0, 0x9a, 0xd6, 0x05, 0xd9, 0xa2, 0x05, 0xc4, 0x56, 0xba, 0xa7, 0x53, 0x6e, 0x7e, 0x6c, 0x2b, 0xd0, 0x13, 0xba, 0x18, 0x1e, 0x0a, 0xaf, 0xda, 0xed, 0x87, 0xc1, 0x24, 0xe3, 0x65, 0x84, 0x54, 0x40, 0xba, 0x9b, 0x60, 0x68, 0x7c, 0x69, 0x1a, 0xa0, 0xb6, 0x0d, 0x45, 0x2c, 0x8f, 0xe0, 0x59, 0x8c, 0x20, 0x44, 0x04, 0xc3, 0x78, 0x9a, 0xd1, 0x54, 0x48, 0x2c, 0xca, 0xf4, }; static const wycheproof_hmac_test hmac_sha3_512_943 = { .name = "hmac_sha3_512_943", .hash = SHA3_512, .key = hmac_sha3_512_943_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_943_tag, .taglen = 64, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 944 for HMAC, tcId is 79 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_944_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_944_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_944_tag[] = { 0xff, 0x48, 0x36, 0x0b, 0xc5, 0xc8, 0x41, 0xaf, 0xf1, 0x3e, 0x93, 0xc2, 0x0c, 0x3b, 0xca, 0x39, 0x7e, 0x22, 0x00, 0xc2, 0x9c, 0xa0, 0x13, 0xc5, 0x5b, 0x70, 0x49, 0x05, 0x3f, 0xe9, 0x90, 0x5d, 0x43, 0xd3, 0x70, 0x32, 0x84, 0x8d, 0x73, 0x7f, 0x7c, 0xb8, 0x3e, 0x0c, 0x2f, 0x06, 0xbc, 0x9a, 0xcb, 0xd0, 0xcf, 0x8c, 0x28, 0x1b, 0xa0, 0x84, 0xd1, 0x21, 0x43, 0x90, 0x53, 0x64, 0x99, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_944 = { .name = "hmac_sha3_512_944", .hash = SHA3_512, .key = hmac_sha3_512_944_key, .keylen = 64, .msg = hmac_sha3_512_944_msg, .msglen = 16, .tag = hmac_sha3_512_944_tag, .taglen = 64, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 945 for HMAC, tcId is 80 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_945_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_945_tag[] = { 0x61, 0x71, 0x62, 0x71, 0x1b, 0x57, 0x84, 0x58, 0x23, 0x84, 0x45, 0xd7, 0x3b, 0x26, 0xd2, 0xef, 0xff, 0xed, 0xaa, 0x51, 0x92, 0x3b, 0x99, 0x9f, 0x8b, 0x2e, 0x5b, 0x6c, 0x06, 0x40, 0xa5, 0x62, 0xe4, 0x05, 0xd5, 0xc1, 0x3b, 0x1a, 0xe1, 0xe9, 0xfd, 0xe8, 0x9b, 0x21, 0x37, 0x8c, 0xc4, 0xad, 0x0e, 0x61, 0xd8, 0x0d, 0xa1, 0xc5, 0x85, 0x42, 0xf9, 0x1b, 0x50, 0xd5, 0xc9, 0xad, 0x4b, 0x75, }; static const wycheproof_hmac_test hmac_sha3_512_945 = { .name = "hmac_sha3_512_945", .hash = SHA3_512, .key = hmac_sha3_512_945_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_945_tag, .taglen = 64, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 946 for HMAC, tcId is 81 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_946_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_946_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_946_tag[] = { 0x7e, 0xc9, 0xb7, 0x8a, 0x44, 0x49, 0xc0, 0x2e, 0x70, 0xbf, 0x12, 0x43, 0x8d, 0xba, 0x4b, 0xb8, 0xff, 0xa3, 0x81, 0x43, 0x1d, 0x21, 0x92, 0x44, 0xda, 0xf1, 0xc8, 0x84, 0xbe, 0x68, 0x11, 0xdc, 0xc2, 0x52, 0xf1, 0xb3, 0x05, 0x0c, 0xf2, 0xfe, 0xfd, 0x39, 0xbf, 0x8d, 0xae, 0x87, 0x3d, 0x1b, 0x4a, 0x51, 0x4e, 0x0d, 0xa9, 0x9a, 0x21, 0x05, 0x50, 0xa0, 0xc2, 0x11, 0xd2, 0xe5, 0x18, 0x81, }; static const wycheproof_hmac_test hmac_sha3_512_946 = { .name = "hmac_sha3_512_946", .hash = SHA3_512, .key = hmac_sha3_512_946_key, .keylen = 64, .msg = hmac_sha3_512_946_msg, .msglen = 16, .tag = hmac_sha3_512_946_tag, .taglen = 64, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 947 for HMAC, tcId is 82 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_947_key[] = { 0xee, 0xf6, 0xbc, 0xf1, 0x6e, 0xf7, 0xae, 0x17, 0x32, 0x6a, 0x33, 0xf2, 0x2d, 0x14, 0x06, 0xec, 0x1b, 0xd3, 0xf8, 0x66, 0x50, 0x5f, 0x4b, 0x2e, 0x4f, 0xe8, 0xb4, 0x5b, 0xd6, 0x2c, 0xcb, 0xd8, 0x50, 0x32, 0xa9, 0x89, 0x9f, 0xac, 0xf2, 0xdb, 0x0c, 0x93, 0xa2, 0x34, 0x5c, 0xb8, 0x89, 0x2a, 0xfb, 0x74, 0xdb, 0x54, 0x97, 0x81, 0x21, 0x1d, 0xd8, 0x88, 0x1a, 0x8c, 0x8e, 0x25, 0xc1, 0x71, }; static const unsigned char hmac_sha3_512_947_tag[] = { 0xa2, 0x40, 0x8e, 0x60, 0x44, 0xd9, 0x10, 0x93, 0xd3, 0x4c, 0x1f, 0x28, 0x3c, 0x19, 0xc0, 0x14, 0xe7, 0x39, 0xe2, 0x91, 0x1c, 0x01, 0xba, 0xa0, 0xa3, 0x07, 0x9e, 0x73, 0xd7, 0xc8, 0xe1, 0xd2, }; static const wycheproof_hmac_test hmac_sha3_512_947 = { .name = "hmac_sha3_512_947", .hash = SHA3_512, .key = hmac_sha3_512_947_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_947_tag, .taglen = 32, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 948 for HMAC, tcId is 83 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_948_key[] = { 0x83, 0x86, 0x96, 0xe6, 0x19, 0x0c, 0x87, 0x4c, 0x37, 0x17, 0xb8, 0xbe, 0x0c, 0xf0, 0x63, 0xca, 0x6d, 0x60, 0x76, 0x09, 0x87, 0xd1, 0xa3, 0x37, 0x03, 0xe7, 0xe3, 0x5e, 0xb1, 0x73, 0xe5, 0xae, 0x95, 0x4e, 0x74, 0x1a, 0x37, 0x93, 0x51, 0x39, 0xd6, 0x12, 0x14, 0x9e, 0x76, 0xf6, 0xab, 0x2a, 0x37, 0x06, 0x04, 0xf5, 0xb4, 0xa6, 0x8b, 0xee, 0x87, 0xe3, 0x09, 0x24, 0x0a, 0x9b, 0xa3, 0xd6, }; static const unsigned char hmac_sha3_512_948_msg[] = { 0xd8, }; static const unsigned char hmac_sha3_512_948_tag[] = { 0x38, 0x49, 0x76, 0x95, 0x11, 0x42, 0x08, 0xd9, 0x0a, 0xf8, 0x84, 0xf6, 0x48, 0x5e, 0x94, 0x2a, 0xf1, 0xe4, 0x29, 0x63, 0xc3, 0x2d, 0x8e, 0xa0, 0xb4, 0x6a, 0x52, 0xec, 0xa9, 0x70, 0xaf, 0xef, }; static const wycheproof_hmac_test hmac_sha3_512_948 = { .name = "hmac_sha3_512_948", .hash = SHA3_512, .key = hmac_sha3_512_948_key, .keylen = 64, .msg = hmac_sha3_512_948_msg, .msglen = 1, .tag = hmac_sha3_512_948_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 949 for HMAC, tcId is 84 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_949_key[] = { 0xfa, 0x99, 0x9e, 0xd1, 0xcf, 0xbc, 0x5c, 0x43, 0xaf, 0xb1, 0x6f, 0x22, 0xd0, 0x24, 0xe3, 0xce, 0x64, 0x5e, 0x00, 0xb0, 0x67, 0x12, 0xc9, 0x3b, 0x94, 0x61, 0x67, 0xc9, 0xc2, 0xc0, 0x37, 0xd1, 0x92, 0xf0, 0xf3, 0x00, 0x3f, 0x87, 0xc4, 0x3a, 0x71, 0x16, 0x6f, 0xe1, 0xa3, 0xc5, 0x82, 0x4c, 0x34, 0x86, 0x73, 0xa2, 0xf0, 0xf3, 0xc4, 0x75, 0x70, 0x69, 0x85, 0x94, 0x0f, 0x6b, 0x02, 0xa2, }; static const unsigned char hmac_sha3_512_949_msg[] = { 0xca, 0xd2, }; static const unsigned char hmac_sha3_512_949_tag[] = { 0x6a, 0x0d, 0x32, 0x4e, 0x2b, 0x49, 0x8d, 0x57, 0xfd, 0xcc, 0x1d, 0x4b, 0x05, 0x2d, 0xe9, 0xfb, 0xc0, 0x08, 0x66, 0x27, 0xeb, 0xd0, 0xe9, 0xcf, 0xed, 0x82, 0xdb, 0xc8, 0xb5, 0x4a, 0x0b, 0x5f, }; static const wycheproof_hmac_test hmac_sha3_512_949 = { .name = "hmac_sha3_512_949", .hash = SHA3_512, .key = hmac_sha3_512_949_key, .keylen = 64, .msg = hmac_sha3_512_949_msg, .msglen = 2, .tag = hmac_sha3_512_949_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 950 for HMAC, tcId is 85 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_950_key[] = { 0xb5, 0x3f, 0xce, 0xd8, 0xb7, 0xb4, 0xaa, 0x59, 0xd3, 0xb5, 0x6d, 0x91, 0xe1, 0x38, 0x67, 0x63, 0xc3, 0x9e, 0x35, 0x1c, 0x2f, 0x5a, 0xd6, 0xa4, 0x88, 0x5e, 0x44, 0x2a, 0xd8, 0x94, 0xd5, 0x18, 0x1c, 0x5b, 0xfe, 0x5c, 0x05, 0x28, 0x0a, 0x84, 0xad, 0x19, 0xd7, 0x58, 0xe3, 0x59, 0xbf, 0x81, 0x71, 0xfe, 0x65, 0x29, 0x88, 0xfc, 0xf9, 0xd1, 0x45, 0x8e, 0xa1, 0x73, 0x64, 0xca, 0x8f, 0xa9, }; static const unsigned char hmac_sha3_512_950_msg[] = { 0xd3, 0x39, 0x3c, }; static const unsigned char hmac_sha3_512_950_tag[] = { 0x3f, 0x23, 0xea, 0xbd, 0xb7, 0x50, 0xc1, 0x0f, 0x32, 0x32, 0xa4, 0xb3, 0x96, 0xff, 0x97, 0xe6, 0xdf, 0x1a, 0x46, 0x26, 0xc1, 0x38, 0x3c, 0xaa, 0xfb, 0xf5, 0xe6, 0xaa, 0xb0, 0xc5, 0x51, 0x0a, }; static const wycheproof_hmac_test hmac_sha3_512_950 = { .name = "hmac_sha3_512_950", .hash = SHA3_512, .key = hmac_sha3_512_950_key, .keylen = 64, .msg = hmac_sha3_512_950_msg, .msglen = 3, .tag = hmac_sha3_512_950_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 951 for HMAC, tcId is 86 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_951_key[] = { 0x3f, 0x0c, 0xbe, 0xeb, 0xe3, 0x91, 0xc6, 0x49, 0x1e, 0x77, 0xc5, 0x7a, 0x05, 0xe8, 0x5a, 0x16, 0xf0, 0xb5, 0x29, 0x4d, 0x19, 0xf9, 0xa7, 0xf3, 0x39, 0x0b, 0xaf, 0x7a, 0x20, 0x51, 0xfb, 0xf9, 0x80, 0xe0, 0x41, 0xee, 0x45, 0xc9, 0x10, 0x4a, 0x91, 0x26, 0xa6, 0xa7, 0xec, 0x18, 0x2e, 0xae, 0xc2, 0x7a, 0x99, 0xc1, 0xa7, 0xa3, 0xf5, 0xa1, 0xe8, 0xcd, 0x8f, 0xfd, 0xe6, 0x06, 0x41, 0xdc, }; static const unsigned char hmac_sha3_512_951_msg[] = { 0xbe, 0xbb, 0x03, 0x92, }; static const unsigned char hmac_sha3_512_951_tag[] = { 0xae, 0x3e, 0xe8, 0x48, 0x25, 0xec, 0x60, 0x7a, 0xdc, 0xad, 0x8a, 0xd7, 0x0c, 0xe1, 0xb6, 0xcf, 0xc7, 0x20, 0x6f, 0x4f, 0x9d, 0x50, 0x46, 0x81, 0x20, 0x73, 0xf6, 0xa3, 0xd4, 0x8e, 0xf1, 0x33, }; static const wycheproof_hmac_test hmac_sha3_512_951 = { .name = "hmac_sha3_512_951", .hash = SHA3_512, .key = hmac_sha3_512_951_key, .keylen = 64, .msg = hmac_sha3_512_951_msg, .msglen = 4, .tag = hmac_sha3_512_951_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 952 for HMAC, tcId is 87 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_952_key[] = { 0x4a, 0x7f, 0x11, 0x0b, 0x92, 0x24, 0x1b, 0xad, 0xc9, 0x07, 0xba, 0x3c, 0x61, 0x47, 0x7b, 0xab, 0x09, 0x53, 0xa8, 0x51, 0xbf, 0x32, 0x74, 0x25, 0xe8, 0x58, 0xfc, 0x72, 0x4b, 0xd3, 0x3e, 0xde, 0x2a, 0x4a, 0x50, 0x18, 0xfe, 0x71, 0xaa, 0xb4, 0x34, 0xbd, 0xa8, 0xeb, 0x24, 0x64, 0xa4, 0x15, 0x77, 0xc8, 0xd5, 0x70, 0x53, 0x0c, 0x46, 0x0f, 0x7c, 0x8b, 0xc0, 0x17, 0x2f, 0x1e, 0xe0, 0xf1, }; static const unsigned char hmac_sha3_512_952_msg[] = { 0x40, 0xa3, 0x33, 0xf4, 0xcf, }; static const unsigned char hmac_sha3_512_952_tag[] = { 0xe3, 0xa5, 0x2f, 0x93, 0x88, 0xf9, 0xaf, 0x03, 0x82, 0x98, 0xb7, 0x78, 0x12, 0x3f, 0xcd, 0xf5, 0xea, 0x58, 0x71, 0x2b, 0xc5, 0xb4, 0x6f, 0x1e, 0x4c, 0xdc, 0xae, 0x98, 0xf2, 0xab, 0x2e, 0x09, }; static const wycheproof_hmac_test hmac_sha3_512_952 = { .name = "hmac_sha3_512_952", .hash = SHA3_512, .key = hmac_sha3_512_952_key, .keylen = 64, .msg = hmac_sha3_512_952_msg, .msglen = 5, .tag = hmac_sha3_512_952_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 953 for HMAC, tcId is 88 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_953_key[] = { 0xc6, 0xc9, 0x5b, 0xf9, 0xfa, 0xca, 0xb2, 0x95, 0xce, 0xbf, 0xa4, 0xb9, 0x07, 0x85, 0x58, 0x74, 0xf5, 0x7a, 0x5c, 0x15, 0x48, 0x57, 0x6a, 0xd8, 0xba, 0xe6, 0x94, 0xa3, 0x64, 0xf5, 0xe5, 0x8d, 0xbb, 0x8c, 0x8d, 0xd4, 0x93, 0x30, 0xb2, 0xfd, 0xd1, 0xb7, 0x16, 0x57, 0xd2, 0x11, 0xdb, 0x2a, 0x65, 0x69, 0xa9, 0xf3, 0xa3, 0x56, 0xc0, 0xc5, 0xb3, 0xc4, 0xef, 0xbd, 0x5b, 0x67, 0x77, 0xcb, }; static const unsigned char hmac_sha3_512_953_msg[] = { 0x4c, 0xf9, 0x26, 0xaf, 0x47, 0x5a, }; static const unsigned char hmac_sha3_512_953_tag[] = { 0x29, 0xe2, 0x74, 0xb1, 0x85, 0x1f, 0xa2, 0x68, 0xe0, 0xe0, 0x2e, 0x3b, 0x45, 0x04, 0x69, 0xce, 0x4a, 0x69, 0x76, 0x2e, 0x45, 0xaf, 0x8a, 0xfc, 0xa5, 0x67, 0x77, 0x69, 0x67, 0x95, 0x5d, 0xe6, }; static const wycheproof_hmac_test hmac_sha3_512_953 = { .name = "hmac_sha3_512_953", .hash = SHA3_512, .key = hmac_sha3_512_953_key, .keylen = 64, .msg = hmac_sha3_512_953_msg, .msglen = 6, .tag = hmac_sha3_512_953_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 954 for HMAC, tcId is 89 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_954_key[] = { 0x0d, 0x33, 0x87, 0xfe, 0x59, 0xe8, 0xe7, 0xc4, 0x3c, 0x92, 0x8d, 0xac, 0x79, 0x13, 0x82, 0x6d, 0xec, 0x4d, 0x63, 0xac, 0x3c, 0x8e, 0xe3, 0x46, 0xba, 0x7c, 0xae, 0xd9, 0x50, 0x5b, 0x9e, 0x63, 0xff, 0x89, 0x42, 0xcd, 0xe9, 0x09, 0x97, 0xe8, 0xdb, 0xea, 0xf6, 0xe1, 0x7e, 0xe1, 0x87, 0xc0, 0xa8, 0x4a, 0x18, 0x53, 0x95, 0x2d, 0x86, 0x6c, 0x15, 0xf9, 0xa3, 0x2f, 0xce, 0xe6, 0xa8, 0x2a, }; static const unsigned char hmac_sha3_512_954_msg[] = { 0x2b, 0xa3, 0xbc, 0x3c, 0xd6, 0x4b, 0xc6, }; static const unsigned char hmac_sha3_512_954_tag[] = { 0xe0, 0x49, 0xf4, 0x80, 0x93, 0x4a, 0x3c, 0xcc, 0x5b, 0x48, 0x38, 0x74, 0xed, 0x6e, 0xb9, 0x92, 0xf9, 0x45, 0x57, 0xb3, 0x03, 0xf4, 0x47, 0x21, 0xf7, 0xba, 0x72, 0xb6, 0xc7, 0x62, 0xb1, 0x08, }; static const wycheproof_hmac_test hmac_sha3_512_954 = { .name = "hmac_sha3_512_954", .hash = SHA3_512, .key = hmac_sha3_512_954_key, .keylen = 64, .msg = hmac_sha3_512_954_msg, .msglen = 7, .tag = hmac_sha3_512_954_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 955 for HMAC, tcId is 90 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_955_key[] = { 0x3c, 0xb9, 0xce, 0x56, 0x53, 0x88, 0xa6, 0xf0, 0x45, 0x4a, 0x80, 0xad, 0xd8, 0x6c, 0x7e, 0x10, 0x7e, 0xa5, 0x37, 0xd7, 0xf4, 0x68, 0xa0, 0x64, 0x89, 0x30, 0xfc, 0x37, 0x17, 0x2c, 0xf7, 0xb4, 0xca, 0x90, 0x58, 0x03, 0x30, 0x71, 0xc3, 0x54, 0xa2, 0x0a, 0x60, 0x8e, 0x2d, 0x46, 0xe9, 0x8a, 0xfe, 0x46, 0x43, 0x5a, 0x34, 0x43, 0x62, 0x98, 0x9c, 0xba, 0xaf, 0xac, 0x18, 0x85, 0x9b, 0xba, }; static const unsigned char hmac_sha3_512_955_msg[] = { 0x33, 0xce, 0x49, 0x8e, 0x1f, 0x94, 0xf4, 0x12, }; static const unsigned char hmac_sha3_512_955_tag[] = { 0x91, 0x74, 0x9d, 0x95, 0xbc, 0x70, 0x6c, 0xb8, 0xc1, 0xf1, 0x4f, 0x6a, 0x61, 0x34, 0x2c, 0x44, 0xf5, 0x9a, 0x96, 0x36, 0x44, 0xb9, 0xfd, 0x35, 0xd5, 0x8a, 0x09, 0xe1, 0x07, 0x1e, 0x4e, 0xe7, }; static const wycheproof_hmac_test hmac_sha3_512_955 = { .name = "hmac_sha3_512_955", .hash = SHA3_512, .key = hmac_sha3_512_955_key, .keylen = 64, .msg = hmac_sha3_512_955_msg, .msglen = 8, .tag = hmac_sha3_512_955_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 956 for HMAC, tcId is 91 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_956_key[] = { 0xc2, 0x5f, 0x45, 0xce, 0xb2, 0xa5, 0x59, 0x7f, 0x36, 0x14, 0x45, 0xfa, 0x41, 0xa9, 0x01, 0x9f, 0x41, 0xa6, 0xe6, 0xd7, 0xf1, 0x44, 0x20, 0x3f, 0x29, 0xc0, 0xb9, 0xfc, 0xea, 0x36, 0x2d, 0x60, 0x89, 0x4c, 0x3c, 0xad, 0xc1, 0xce, 0x25, 0xd5, 0x3d, 0xa3, 0x62, 0xe4, 0x64, 0xc1, 0x1f, 0xc6, 0xe1, 0x69, 0xe3, 0xdb, 0x2e, 0xa1, 0xcf, 0x40, 0xfe, 0x08, 0xff, 0xfb, 0x42, 0x9b, 0x1a, 0x5b, }; static const unsigned char hmac_sha3_512_956_msg[] = { 0x81, 0x97, 0x8a, 0xf4, 0x79, 0x5c, 0x50, 0xf8, 0x9c, }; static const unsigned char hmac_sha3_512_956_tag[] = { 0x08, 0x55, 0x0f, 0x63, 0xbe, 0x59, 0x5c, 0xd9, 0xba, 0x3c, 0x66, 0xe3, 0x3b, 0x19, 0xbd, 0x27, 0x39, 0xbd, 0xfa, 0xa4, 0xee, 0xc9, 0xac, 0xdd, 0x98, 0x23, 0xa2, 0x14, 0x53, 0x8d, 0x32, 0x2e, }; static const wycheproof_hmac_test hmac_sha3_512_956 = { .name = "hmac_sha3_512_956", .hash = SHA3_512, .key = hmac_sha3_512_956_key, .keylen = 64, .msg = hmac_sha3_512_956_msg, .msglen = 9, .tag = hmac_sha3_512_956_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 957 for HMAC, tcId is 92 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_957_key[] = { 0xb4, 0x58, 0x76, 0x4e, 0xe2, 0x73, 0xf3, 0x91, 0xcb, 0x71, 0x8f, 0x64, 0xa1, 0xbc, 0xa6, 0x4c, 0x96, 0xa8, 0x70, 0xd9, 0x42, 0x6d, 0x62, 0x54, 0xee, 0x37, 0xe5, 0xc9, 0x38, 0x98, 0xd6, 0xa5, 0xef, 0x68, 0xe9, 0xd3, 0xb0, 0xe0, 0x57, 0xa3, 0xc3, 0x96, 0xfa, 0xa8, 0x34, 0xa2, 0x99, 0x26, 0xa9, 0x68, 0x0c, 0xfa, 0x90, 0x3d, 0x2a, 0x60, 0x5b, 0x85, 0x40, 0x7b, 0xb2, 0x4c, 0x8c, 0xee, }; static const unsigned char hmac_sha3_512_957_msg[] = { 0xd8, 0x04, 0xdc, 0x2a, 0x1e, 0x14, 0x6f, 0x62, 0xb6, 0x21, }; static const unsigned char hmac_sha3_512_957_tag[] = { 0xd5, 0x57, 0x27, 0x26, 0xcc, 0x75, 0x21, 0xef, 0x30, 0xe0, 0xd8, 0x39, 0x0c, 0xa5, 0x21, 0xa5, 0x7f, 0x03, 0x9d, 0xa4, 0xc4, 0x5f, 0x12, 0x75, 0xfe, 0x67, 0xc3, 0x12, 0x1c, 0x70, 0x08, 0xb5, }; static const wycheproof_hmac_test hmac_sha3_512_957 = { .name = "hmac_sha3_512_957", .hash = SHA3_512, .key = hmac_sha3_512_957_key, .keylen = 64, .msg = hmac_sha3_512_957_msg, .msglen = 10, .tag = hmac_sha3_512_957_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 958 for HMAC, tcId is 93 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_958_key[] = { 0x7c, 0xbc, 0x57, 0x78, 0xf7, 0x05, 0x95, 0xfc, 0x21, 0x1c, 0xee, 0x3a, 0x93, 0xe1, 0x7f, 0xf7, 0xf2, 0x5a, 0x1d, 0x9f, 0x37, 0x66, 0xf8, 0xeb, 0x70, 0xeb, 0x1e, 0x08, 0xc9, 0x42, 0x0a, 0x62, 0xbd, 0x89, 0xe8, 0xb7, 0xd8, 0x34, 0xcc, 0x85, 0x4d, 0x05, 0x9a, 0xfd, 0x41, 0x3e, 0x4d, 0x9c, 0x06, 0x2a, 0x53, 0x2e, 0x01, 0x59, 0x28, 0x52, 0x8c, 0x7f, 0x58, 0x12, 0xdf, 0xeb, 0xec, 0xac, }; static const unsigned char hmac_sha3_512_958_msg[] = { 0x40, 0x17, 0xe0, 0xff, 0xca, 0xac, 0x4c, 0x48, 0x5c, 0xe7, 0xec, }; static const unsigned char hmac_sha3_512_958_tag[] = { 0x7e, 0x08, 0x36, 0x62, 0x58, 0x92, 0xa3, 0x75, 0x23, 0xee, 0x17, 0x8e, 0xb1, 0x6f, 0x78, 0x53, 0x96, 0x60, 0x2f, 0xca, 0x5a, 0xdd, 0xb0, 0x00, 0x6f, 0xa6, 0x90, 0x7c, 0x53, 0x0f, 0xce, 0x0c, }; static const wycheproof_hmac_test hmac_sha3_512_958 = { .name = "hmac_sha3_512_958", .hash = SHA3_512, .key = hmac_sha3_512_958_key, .keylen = 64, .msg = hmac_sha3_512_958_msg, .msglen = 11, .tag = hmac_sha3_512_958_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 959 for HMAC, tcId is 94 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_959_key[] = { 0x93, 0x7b, 0x97, 0x11, 0xd6, 0x70, 0xda, 0xa2, 0x35, 0x99, 0x20, 0xe4, 0x7d, 0xd6, 0xd0, 0xfb, 0x75, 0x27, 0x51, 0x05, 0xb3, 0xef, 0x07, 0xbb, 0x4a, 0x31, 0xd3, 0xc4, 0xb9, 0x9b, 0xaa, 0x8f, 0xf7, 0x9e, 0xe4, 0xb4, 0xa1, 0xb4, 0xa5, 0xb2, 0x50, 0xd0, 0xfd, 0x7b, 0x47, 0x21, 0xe0, 0x4a, 0x7b, 0x06, 0x03, 0x5b, 0x1d, 0x0c, 0x9d, 0x73, 0x95, 0x97, 0x70, 0x78, 0x39, 0x01, 0x8b, 0xce, }; static const unsigned char hmac_sha3_512_959_msg[] = { 0x69, 0x91, 0x81, 0x0e, 0x97, 0x88, 0xaf, 0x7a, 0xab, 0xff, 0x8e, 0xb4, }; static const unsigned char hmac_sha3_512_959_tag[] = { 0x5b, 0x36, 0xf3, 0x77, 0x07, 0x8c, 0xe8, 0x20, 0xbd, 0x33, 0x75, 0x9a, 0x85, 0x69, 0x1e, 0xfc, 0x20, 0x53, 0x40, 0x7f, 0xd8, 0x6a, 0x3e, 0x49, 0x46, 0xda, 0x1e, 0x38, 0xa4, 0x55, 0x7a, 0xb1, }; static const wycheproof_hmac_test hmac_sha3_512_959 = { .name = "hmac_sha3_512_959", .hash = SHA3_512, .key = hmac_sha3_512_959_key, .keylen = 64, .msg = hmac_sha3_512_959_msg, .msglen = 12, .tag = hmac_sha3_512_959_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 960 for HMAC, tcId is 95 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_960_key[] = { 0xad, 0x37, 0x63, 0x0a, 0x28, 0x0b, 0x1a, 0x75, 0xeb, 0xed, 0x19, 0x84, 0x21, 0x71, 0x50, 0xa4, 0x00, 0xa5, 0x5d, 0xca, 0x23, 0x62, 0xa8, 0xea, 0xf3, 0xc9, 0x07, 0x85, 0x8d, 0x0b, 0x45, 0xdb, 0x3e, 0x20, 0x8c, 0x31, 0x6d, 0x03, 0x38, 0x54, 0xeb, 0x42, 0x84, 0xf7, 0x11, 0x17, 0xd3, 0x38, 0x76, 0xe0, 0xe2, 0x03, 0xca, 0x92, 0x2d, 0x26, 0xf9, 0xb7, 0x6d, 0x94, 0xca, 0xb0, 0xd4, 0xf3, }; static const unsigned char hmac_sha3_512_960_msg[] = { 0x7c, 0x6f, 0x2f, 0xd8, 0x3e, 0x56, 0x91, 0x82, 0x7b, 0xe3, 0x8e, 0x49, 0xa0, }; static const unsigned char hmac_sha3_512_960_tag[] = { 0xc1, 0x5a, 0x7f, 0x38, 0x00, 0x7b, 0xc3, 0x2c, 0x61, 0xd9, 0x12, 0xb3, 0x08, 0x89, 0xd6, 0xf5, 0xc6, 0x24, 0xad, 0x0e, 0x6e, 0x2e, 0x3f, 0xa4, 0x1a, 0xf2, 0xd3, 0x29, 0x5b, 0x02, 0x59, 0xb7, }; static const wycheproof_hmac_test hmac_sha3_512_960 = { .name = "hmac_sha3_512_960", .hash = SHA3_512, .key = hmac_sha3_512_960_key, .keylen = 64, .msg = hmac_sha3_512_960_msg, .msglen = 13, .tag = hmac_sha3_512_960_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 961 for HMAC, tcId is 96 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_961_key[] = { 0x52, 0x6a, 0xa2, 0x64, 0x5a, 0xb7, 0x12, 0x29, 0xe2, 0xc6, 0x0f, 0x68, 0xbd, 0x5b, 0xbc, 0xf0, 0xce, 0xa0, 0x97, 0x8a, 0x0a, 0x9c, 0x60, 0xcf, 0x69, 0x5e, 0x81, 0xfe, 0xca, 0xed, 0xec, 0xfa, 0x03, 0x62, 0xc2, 0x17, 0x47, 0xea, 0xa9, 0x95, 0x97, 0x52, 0x08, 0xca, 0x35, 0xcf, 0xa6, 0xbc, 0x2b, 0x95, 0xd1, 0xc2, 0xaf, 0xce, 0xe1, 0x12, 0x75, 0xf4, 0x3a, 0xdd, 0x6f, 0x02, 0x6d, 0x6c, }; static const unsigned char hmac_sha3_512_961_msg[] = { 0x68, 0x1b, 0xca, 0x55, 0x0f, 0xe3, 0x01, 0xf2, 0xdc, 0xc1, 0xe3, 0x8b, 0x53, 0xc1, }; static const unsigned char hmac_sha3_512_961_tag[] = { 0x87, 0xa7, 0xe6, 0x44, 0x8d, 0x64, 0xe0, 0x06, 0x33, 0x94, 0x87, 0xb2, 0xd9, 0x34, 0x09, 0xf0, 0x0f, 0x1d, 0xaf, 0xc0, 0xdb, 0xfe, 0x35, 0xa3, 0x61, 0xda, 0x26, 0x4f, 0x25, 0x1c, 0xeb, 0x71, }; static const wycheproof_hmac_test hmac_sha3_512_961 = { .name = "hmac_sha3_512_961", .hash = SHA3_512, .key = hmac_sha3_512_961_key, .keylen = 64, .msg = hmac_sha3_512_961_msg, .msglen = 14, .tag = hmac_sha3_512_961_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 962 for HMAC, tcId is 97 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_962_key[] = { 0x60, 0x26, 0xa9, 0x04, 0x7a, 0x07, 0xcc, 0xf1, 0x97, 0xfd, 0xe0, 0x9c, 0x8b, 0x9f, 0x15, 0xf3, 0x4b, 0xc5, 0x24, 0x72, 0xb7, 0xd1, 0xea, 0x46, 0x73, 0xb4, 0x91, 0x4a, 0x0e, 0x1c, 0x3a, 0xa4, 0xcf, 0xe8, 0xd6, 0xef, 0x12, 0xd4, 0xd4, 0x01, 0x9f, 0x5f, 0xf3, 0xac, 0x0a, 0xdc, 0xad, 0x73, 0x58, 0x49, 0x08, 0x74, 0x15, 0x5d, 0xaf, 0x41, 0xda, 0x2f, 0x74, 0xac, 0xa1, 0xcd, 0x89, 0x4a, }; static const unsigned char hmac_sha3_512_962_msg[] = { 0xce, 0x1d, 0x86, 0x9c, 0x53, 0x04, 0x1c, 0x5f, 0x6a, 0xcd, 0xda, 0x7a, 0x05, 0xaf, 0x15, }; static const unsigned char hmac_sha3_512_962_tag[] = { 0xb4, 0x4c, 0x98, 0x4a, 0x22, 0x41, 0x52, 0x75, 0x45, 0xd9, 0xcf, 0x75, 0x56, 0x63, 0x34, 0x6b, 0xa8, 0x28, 0x41, 0xd0, 0x39, 0xa3, 0xe2, 0xaa, 0xe5, 0x6b, 0x40, 0x02, 0x0a, 0x6b, 0xe1, 0xf4, }; static const wycheproof_hmac_test hmac_sha3_512_962 = { .name = "hmac_sha3_512_962", .hash = SHA3_512, .key = hmac_sha3_512_962_key, .keylen = 64, .msg = hmac_sha3_512_962_msg, .msglen = 15, .tag = hmac_sha3_512_962_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 963 for HMAC, tcId is 98 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_963_key[] = { 0xa0, 0x3d, 0x2c, 0x54, 0x3c, 0x30, 0x29, 0x49, 0xc5, 0x1b, 0x66, 0x2f, 0x43, 0x11, 0x4c, 0x13, 0x05, 0xa8, 0xf6, 0x96, 0x1a, 0xe4, 0x83, 0x42, 0x80, 0x3d, 0x36, 0x90, 0xdc, 0x18, 0x25, 0x5f, 0xab, 0x92, 0x49, 0x65, 0x53, 0x6a, 0x79, 0xbc, 0x38, 0x56, 0x4c, 0x7c, 0x97, 0xcb, 0x8c, 0xc0, 0x20, 0x97, 0x86, 0xe9, 0xf7, 0x63, 0x75, 0xbf, 0x18, 0x15, 0x29, 0xcf, 0x7f, 0x93, 0xd9, 0x54, }; static const unsigned char hmac_sha3_512_963_msg[] = { 0x69, 0x76, 0x17, 0xae, 0x31, 0xf1, 0x9b, 0x8a, 0x6a, 0xd4, 0xb8, 0x48, 0x9b, 0xfc, 0x3d, 0xb1, }; static const unsigned char hmac_sha3_512_963_tag[] = { 0x18, 0x27, 0x37, 0x5e, 0xc9, 0xd3, 0x25, 0x81, 0xad, 0xfe, 0x23, 0x47, 0x98, 0x4e, 0x33, 0xc0, 0xfd, 0x95, 0x36, 0x2d, 0x15, 0x8f, 0xe6, 0xa7, 0xca, 0x07, 0xe0, 0x84, 0x55, 0x7e, 0x2b, 0x40, }; static const wycheproof_hmac_test hmac_sha3_512_963 = { .name = "hmac_sha3_512_963", .hash = SHA3_512, .key = hmac_sha3_512_963_key, .keylen = 64, .msg = hmac_sha3_512_963_msg, .msglen = 16, .tag = hmac_sha3_512_963_tag, .taglen = 32, .result = 1, .comment = ", tcId is 98 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 964 for HMAC, tcId is 99 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_964_key[] = { 0x25, 0x84, 0x36, 0x65, 0xd3, 0x9c, 0x3a, 0xe9, 0xa7, 0xb3, 0xe4, 0x42, 0x7e, 0x2b, 0xf7, 0x78, 0x52, 0x81, 0xfd, 0x25, 0x94, 0xbd, 0xde, 0x67, 0x86, 0x0c, 0xa9, 0xb8, 0xfa, 0x11, 0x64, 0x64, 0x69, 0xd1, 0x64, 0x5a, 0xe8, 0xca, 0x38, 0x25, 0xb8, 0xc5, 0x51, 0xf9, 0xea, 0xc3, 0xda, 0x06, 0x60, 0xd8, 0xc2, 0xe2, 0xe3, 0xbd, 0x23, 0xd3, 0x43, 0x95, 0xc6, 0x77, 0x5d, 0xcd, 0xfd, 0x2e, }; static const unsigned char hmac_sha3_512_964_msg[] = { 0x74, 0x08, 0x2c, 0xc5, 0xd1, 0x4d, 0xb1, 0x96, 0x74, 0x42, 0xd6, 0x6a, 0xac, 0x60, 0x92, 0xbd, 0x23, }; static const unsigned char hmac_sha3_512_964_tag[] = { 0x6b, 0xd2, 0xe4, 0xc2, 0xfb, 0x8c, 0x48, 0x49, 0x06, 0x5e, 0xbc, 0x92, 0x1b, 0x4f, 0xbe, 0xa6, 0xde, 0x5a, 0xf8, 0x48, 0xfc, 0x9d, 0x22, 0xce, 0x60, 0xb1, 0xa3, 0xed, 0x53, 0x6b, 0x4e, 0xea, }; static const wycheproof_hmac_test hmac_sha3_512_964 = { .name = "hmac_sha3_512_964", .hash = SHA3_512, .key = hmac_sha3_512_964_key, .keylen = 64, .msg = hmac_sha3_512_964_msg, .msglen = 17, .tag = hmac_sha3_512_964_tag, .taglen = 32, .result = 1, .comment = ", tcId is 99 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 965 for HMAC, tcId is 100 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_965_key[] = { 0x48, 0x31, 0xab, 0x49, 0x62, 0xa2, 0xd2, 0x43, 0x60, 0x91, 0xcb, 0xbf, 0x38, 0x8d, 0x2b, 0xa0, 0x42, 0xb4, 0x72, 0xa2, 0x62, 0xed, 0x83, 0x73, 0xc8, 0x5d, 0x04, 0x7c, 0x70, 0x2a, 0xdf, 0x73, 0xa8, 0x7e, 0xb0, 0x97, 0xe7, 0x2d, 0x91, 0xd0, 0x89, 0xb7, 0xd1, 0x50, 0x4a, 0x7f, 0x7d, 0x8a, 0xbb, 0x3b, 0xc2, 0xc4, 0x4c, 0x13, 0x40, 0xd6, 0xc1, 0x6c, 0x84, 0xea, 0x92, 0x69, 0xe6, 0x4b, }; static const unsigned char hmac_sha3_512_965_msg[] = { 0x28, 0x03, 0xc2, 0xf4, 0xe5, 0xb4, 0xbf, 0xcc, 0xd2, 0xb4, 0x07, 0x46, 0x9a, 0x6c, 0xb5, 0xef, 0x21, 0xfd, 0x14, 0xa6, 0x82, 0x63, 0x63, 0x97, }; static const unsigned char hmac_sha3_512_965_tag[] = { 0xab, 0x65, 0x70, 0xdd, 0x52, 0x67, 0x00, 0x51, 0xd6, 0x87, 0x95, 0x91, 0x61, 0x8a, 0x58, 0x2a, 0x15, 0xd5, 0xbb, 0xac, 0x99, 0x5a, 0x09, 0xd6, 0xae, 0xb9, 0x7e, 0x52, 0xbb, 0xca, 0x22, 0x96, }; static const wycheproof_hmac_test hmac_sha3_512_965 = { .name = "hmac_sha3_512_965", .hash = SHA3_512, .key = hmac_sha3_512_965_key, .keylen = 64, .msg = hmac_sha3_512_965_msg, .msglen = 24, .tag = hmac_sha3_512_965_tag, .taglen = 32, .result = 1, .comment = ", tcId is 100 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 966 for HMAC, tcId is 101 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_966_key[] = { 0x44, 0x9b, 0xb5, 0x7d, 0x04, 0x65, 0x51, 0xe1, 0x81, 0x9b, 0x3c, 0x99, 0x41, 0x22, 0xc3, 0x60, 0x59, 0x54, 0x31, 0x7d, 0x0d, 0x76, 0x21, 0x22, 0x84, 0xa3, 0x32, 0x8c, 0x22, 0x67, 0x32, 0xcb, 0xf4, 0xec, 0xb4, 0x42, 0xa5, 0x82, 0xc8, 0x42, 0x38, 0x88, 0xaa, 0xed, 0x94, 0x6e, 0x5e, 0xec, 0x2b, 0xe6, 0x6e, 0x12, 0x7f, 0x1e, 0x2e, 0x29, 0xb6, 0x6e, 0x68, 0xb9, 0xb4, 0xbe, 0xc4, 0xd1, }; static const unsigned char hmac_sha3_512_966_msg[] = { 0x79, 0x00, 0x4e, 0x64, 0x43, 0x89, 0xa1, 0x1b, 0x70, 0x9b, 0xc0, 0xa2, 0x3c, 0xb8, 0x59, 0x2f, 0x9f, 0xc7, 0x96, 0x0b, 0xfa, 0x46, 0x13, 0x2c, 0xc1, 0xff, 0xb9, 0x74, 0x7d, 0xf3, 0x7d, 0xec, }; static const unsigned char hmac_sha3_512_966_tag[] = { 0x02, 0x3f, 0xfa, 0xeb, 0x8e, 0xe5, 0x0e, 0xb1, 0x86, 0x9f, 0x51, 0x38, 0x40, 0x11, 0xaf, 0x14, 0xc9, 0xc9, 0x96, 0x10, 0x05, 0x8a, 0x9c, 0xc3, 0xba, 0x87, 0x1e, 0x3c, 0x56, 0xfd, 0x2e, 0xd3, }; static const wycheproof_hmac_test hmac_sha3_512_966 = { .name = "hmac_sha3_512_966", .hash = SHA3_512, .key = hmac_sha3_512_966_key, .keylen = 64, .msg = hmac_sha3_512_966_msg, .msglen = 32, .tag = hmac_sha3_512_966_tag, .taglen = 32, .result = 1, .comment = ", tcId is 101 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 967 for HMAC, tcId is 102 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_967_key[] = { 0xff, 0x97, 0xb7, 0x70, 0x20, 0x86, 0x1a, 0x0c, 0xe0, 0x0e, 0xff, 0x8d, 0xe9, 0xe7, 0x01, 0xae, 0xa8, 0xc6, 0xde, 0x0f, 0xff, 0xd9, 0xb4, 0xc1, 0x34, 0x2a, 0x41, 0x6d, 0x35, 0x7f, 0xce, 0x35, 0xa7, 0x01, 0x6c, 0x64, 0xcc, 0xd3, 0x8e, 0x2b, 0xdf, 0x67, 0x48, 0x02, 0x28, 0x1c, 0x22, 0x34, 0x15, 0x3d, 0xd8, 0x3a, 0xac, 0xb9, 0x48, 0x96, 0x6d, 0xc8, 0x7e, 0xa4, 0x71, 0x8f, 0xff, 0x75, }; static const unsigned char hmac_sha3_512_967_msg[] = { 0xd7, 0xe2, 0xd2, 0x43, 0x7b, 0x70, 0x67, 0xa3, 0x0f, 0x04, 0x52, 0x90, 0x41, 0x96, 0x0e, 0x04, 0x1e, 0x28, 0x17, 0x37, 0xd1, 0xe0, 0xda, 0xa8, 0xcd, 0x50, 0xcc, 0x0b, 0x26, 0x47, 0x16, 0xe1, 0x17, 0xaa, 0x2f, 0xe9, 0xa7, 0xe3, 0x9c, 0x2f, 0x17, 0x8c, 0x60, 0x7f, 0xaa, 0x50, 0xc2, }; static const unsigned char hmac_sha3_512_967_tag[] = { 0xce, 0xe0, 0x96, 0xbb, 0xd6, 0x6c, 0xb2, 0xa5, 0x00, 0xf2, 0x79, 0xaa, 0x34, 0x41, 0x8e, 0x7c, 0x69, 0x0d, 0xd1, 0xf4, 0x6d, 0xbe, 0x23, 0x48, 0xd1, 0xfd, 0x04, 0x19, 0x0e, 0xd7, 0x8c, 0xd5, }; static const wycheproof_hmac_test hmac_sha3_512_967 = { .name = "hmac_sha3_512_967", .hash = SHA3_512, .key = hmac_sha3_512_967_key, .keylen = 64, .msg = hmac_sha3_512_967_msg, .msglen = 47, .tag = hmac_sha3_512_967_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 968 for HMAC, tcId is 103 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_968_key[] = { 0xf4, 0xda, 0xf3, 0x70, 0xc4, 0xf4, 0x37, 0xd8, 0xa8, 0x53, 0x91, 0xec, 0x45, 0x5e, 0x34, 0x54, 0x0b, 0xe8, 0xd3, 0x2d, 0xf8, 0xdf, 0xac, 0x05, 0xb1, 0x66, 0xae, 0x72, 0xec, 0x1c, 0xc6, 0x08, 0xf8, 0xc1, 0x77, 0xb3, 0x0d, 0xde, 0x8b, 0xf0, 0x7c, 0x9d, 0x43, 0x47, 0x32, 0xc2, 0x6a, 0x6e, 0x53, 0x0b, 0x18, 0x2c, 0x7a, 0xb2, 0x10, 0x93, 0xeb, 0x79, 0xd0, 0xbb, 0x5b, 0xe8, 0x5e, 0x53, }; static const unsigned char hmac_sha3_512_968_msg[] = { 0xf6, 0x04, 0x18, 0xf6, 0xc5, 0x4a, 0x25, 0xfa, 0xbf, 0x51, 0x82, 0x73, 0x08, 0x86, 0x19, 0xc0, 0x74, 0x1c, 0x1c, 0x71, 0x87, 0xde, 0x93, 0xa0, 0xcf, 0x6a, 0x03, 0xf4, 0x56, 0x5f, 0x17, 0x65, 0xde, 0x65, 0x67, 0x54, 0x54, 0x1b, 0x86, 0x01, 0x37, 0xf3, 0xf8, 0x45, 0x5d, 0xe7, 0xc4, 0x03, }; static const unsigned char hmac_sha3_512_968_tag[] = { 0x3b, 0x26, 0x0d, 0x9b, 0xb6, 0xd9, 0xb1, 0x84, 0x41, 0xe0, 0x7e, 0x96, 0xc3, 0xf3, 0xf1, 0x9a, 0x97, 0xfa, 0xec, 0x00, 0x5e, 0x98, 0xad, 0x3b, 0x35, 0x66, 0x48, 0x67, 0x24, 0xde, 0xc6, 0x95, }; static const wycheproof_hmac_test hmac_sha3_512_968 = { .name = "hmac_sha3_512_968", .hash = SHA3_512, .key = hmac_sha3_512_968_key, .keylen = 64, .msg = hmac_sha3_512_968_msg, .msglen = 48, .tag = hmac_sha3_512_968_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 969 for HMAC, tcId is 104 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_969_key[] = { 0x3b, 0xe9, 0x5e, 0x87, 0x94, 0x21, 0xed, 0x78, 0x56, 0x26, 0x9e, 0xef, 0x39, 0xa2, 0x07, 0x0f, 0xae, 0x40, 0x6c, 0xec, 0x5e, 0x30, 0xb5, 0x0d, 0x92, 0x79, 0x2d, 0xf5, 0xa3, 0x7d, 0xe9, 0x85, 0x95, 0x68, 0x4e, 0xaa, 0x92, 0x05, 0x58, 0x7c, 0xa6, 0x07, 0xee, 0xac, 0x8f, 0x96, 0x59, 0x2f, 0x45, 0x8f, 0x63, 0x43, 0x4b, 0x7d, 0xc8, 0x25, 0x96, 0xd3, 0xe4, 0xa1, 0xa1, 0x6c, 0x3d, 0x59, }; static const unsigned char hmac_sha3_512_969_msg[] = { 0xc6, 0x4f, 0x7c, 0x97, 0x0a, 0x44, 0x1c, 0x6c, 0x50, 0x38, 0x38, 0xa4, 0x91, 0x30, 0x8c, 0x78, 0x30, 0x99, 0xea, 0xc5, 0x2b, 0xd3, 0x5a, 0x21, 0x79, 0x78, 0xa6, 0x4d, 0xce, 0xc8, 0x4d, 0x34, 0x18, 0x6a, 0xb3, 0xb7, 0x4f, 0x20, 0x28, 0x5d, 0x6f, 0xea, 0x21, 0x65, 0xea, 0xb4, 0xda, 0x3d, 0x2c, }; static const unsigned char hmac_sha3_512_969_tag[] = { 0x67, 0x32, 0x9f, 0x88, 0xb1, 0xe9, 0x9c, 0x97, 0x8e, 0xf5, 0x0b, 0x2b, 0xcc, 0xf8, 0xa4, 0x05, 0xd4, 0xf9, 0xea, 0x3f, 0x0d, 0x10, 0x70, 0x3f, 0xe4, 0xb3, 0x35, 0xa8, 0x29, 0xf7, 0x60, 0x08, }; static const wycheproof_hmac_test hmac_sha3_512_969 = { .name = "hmac_sha3_512_969", .hash = SHA3_512, .key = hmac_sha3_512_969_key, .keylen = 64, .msg = hmac_sha3_512_969_msg, .msglen = 49, .tag = hmac_sha3_512_969_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 970 for HMAC, tcId is 105 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_970_key[] = { 0xb5, 0xeb, 0x53, 0x58, 0x6b, 0x94, 0x85, 0x87, 0xdb, 0x3d, 0xd4, 0x6c, 0x43, 0xad, 0x65, 0x49, 0x8a, 0x50, 0x79, 0x15, 0x75, 0x62, 0xe4, 0x07, 0x4c, 0x9c, 0x20, 0xd0, 0x97, 0xd0, 0xc9, 0x7f, 0x19, 0xdb, 0x46, 0x61, 0xfb, 0x2d, 0xd1, 0x1b, 0x87, 0xa5, 0xcc, 0xba, 0x2c, 0x34, 0x56, 0x42, 0x61, 0x8f, 0x56, 0x1d, 0x00, 0xbf, 0x87, 0xdf, 0xfc, 0x66, 0x76, 0x2e, 0x45, 0xe0, 0x15, 0x6f, }; static const unsigned char hmac_sha3_512_970_msg[] = { 0x9e, 0x8e, 0xbf, 0x96, 0x42, 0x99, 0x55, 0xd6, 0x0b, 0x92, 0x5a, 0x41, 0x11, 0x74, 0x5e, 0xc7, 0x02, 0x8d, 0xe2, 0x4e, 0x69, 0x4a, 0x6d, 0x2e, 0xee, 0x1d, 0xbd, 0x5e, 0x82, 0x0a, 0xb9, 0xf0, 0x0b, 0xea, 0xfd, 0xe0, 0x9f, 0x95, 0x09, 0x59, 0x33, 0xa0, 0x2f, 0x25, 0x12, 0x97, 0x28, 0x2b, 0x0c, 0xf6, 0x7c, 0x51, 0x83, 0x97, 0x65, 0x58, 0x41, 0xf2, 0x30, 0xe1, 0xd9, 0xae, 0x5b, 0xa9, 0x31, 0x50, 0xd4, 0x37, 0x5d, 0xc7, 0xc0, 0x73, 0x8b, 0x99, 0x85, 0x0b, 0x07, 0xd5, 0xa4, 0x42, 0x99, 0x4e, 0x68, 0xdc, 0x81, 0x3d, 0x55, 0xed, 0xef, 0xa6, 0xcd, 0x06, 0x3c, 0xcb, 0x20, 0x27, 0x11, 0xd9, 0x7b, 0xa6, 0x74, 0xef, 0xa0, 0x2d, 0xdb, 0xdc, 0x69, 0x23, 0x41, 0xe7, 0x7c, 0xfa, }; static const unsigned char hmac_sha3_512_970_tag[] = { 0x52, 0xbb, 0x6b, 0x6d, 0x00, 0x18, 0x13, 0x51, 0x87, 0xe7, 0x26, 0x58, 0x83, 0x81, 0x5d, 0x90, 0x4a, 0x57, 0x43, 0x4e, 0x68, 0xa0, 0xa8, 0x68, 0x67, 0x60, 0x59, 0xad, 0xfb, 0x57, 0x27, 0xb5, }; static const wycheproof_hmac_test hmac_sha3_512_970 = { .name = "hmac_sha3_512_970", .hash = SHA3_512, .key = hmac_sha3_512_970_key, .keylen = 64, .msg = hmac_sha3_512_970_msg, .msglen = 112, .tag = hmac_sha3_512_970_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 971 for HMAC, tcId is 106 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_971_key[] = { 0xfb, 0xc6, 0x78, 0x23, 0x5d, 0x59, 0x69, 0x80, 0x26, 0x87, 0x30, 0xa7, 0xaa, 0x8a, 0x3c, 0x25, 0x09, 0x5f, 0x1d, 0xbc, 0xf7, 0xf8, 0x30, 0x99, 0x07, 0x16, 0xa5, 0x10, 0xc4, 0x4e, 0x62, 0xb1, 0xae, 0x8c, 0xe0, 0x95, 0xc6, 0x5e, 0x18, 0x52, 0xbd, 0x8a, 0x09, 0xf2, 0x5a, 0xb9, 0x34, 0x15, 0xae, 0x73, 0x6f, 0x22, 0xb2, 0xc6, 0x8e, 0xcd, 0xf3, 0xc0, 0xf7, 0x1e, 0x15, 0xa0, 0x57, 0xdc, }; static const unsigned char hmac_sha3_512_971_msg[] = { 0xef, 0x39, 0x57, 0x38, 0xf2, 0xb3, 0xbd, 0x7a, 0x06, 0x49, 0xee, 0xa7, 0x5e, 0x73, 0x4e, 0x5c, 0x79, 0xba, 0xf2, 0x13, 0x58, 0xc7, 0xae, 0x96, 0xc6, 0x3a, 0x58, 0xe2, 0x60, 0x26, 0x6c, 0x7b, 0xfa, 0x86, 0x96, 0x64, 0xc5, 0xd1, 0x0e, 0x87, 0xc2, 0x6d, 0x0f, 0x5e, 0xdb, 0x3b, 0x5f, 0x73, 0x90, 0x0c, 0x1d, 0x9a, 0x96, 0xa5, 0xa2, 0xc2, 0x91, 0x25, 0x06, 0xc1, 0x9d, 0xff, 0x04, 0xe9, 0x00, 0xb8, 0xd5, 0xd6, 0x3e, 0x1b, 0xb6, 0x06, 0xfe, 0x3d, 0x5a, 0x22, 0x9b, 0x64, 0x2b, 0x1a, 0xc5, 0x9e, 0x08, 0xa4, 0x68, 0x7a, 0x7a, 0xad, 0xe3, 0xde, 0x16, 0xd1, 0x83, 0x13, 0x1d, 0xdd, 0x02, 0xda, 0x98, 0x8f, 0xf8, 0x26, 0xe8, 0x8b, 0x74, 0xba, 0x0c, 0x5c, 0x41, 0xcf, 0xcd, 0x85, 0x70, 0xcc, 0xa5, 0x9f, 0xb3, 0x30, 0x4d, 0x58, 0x8f, 0x7f, 0x7e, 0x63, 0xda, 0xd4, 0x7a, }; static const unsigned char hmac_sha3_512_971_tag[] = { 0xfe, 0x95, 0x7b, 0x5c, 0x1a, 0x0f, 0x33, 0x7e, 0x9f, 0x11, 0x9c, 0x8e, 0xb8, 0x39, 0x8d, 0x2c, 0x5b, 0xde, 0xdb, 0xd1, 0xf8, 0x4a, 0xf7, 0x85, 0xb5, 0xd3, 0x65, 0xe0, 0x7d, 0x47, 0x40, 0xb4, }; static const wycheproof_hmac_test hmac_sha3_512_971 = { .name = "hmac_sha3_512_971", .hash = SHA3_512, .key = hmac_sha3_512_971_key, .keylen = 64, .msg = hmac_sha3_512_971_msg, .msglen = 127, .tag = hmac_sha3_512_971_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 972 for HMAC, tcId is 107 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_972_key[] = { 0xd8, 0x43, 0x7b, 0x09, 0x3e, 0x17, 0x0a, 0xfc, 0x30, 0xfb, 0x68, 0xd8, 0x73, 0xdb, 0x6d, 0xd6, 0x7e, 0xe0, 0x37, 0x2b, 0x6c, 0x5f, 0xeb, 0x12, 0x4d, 0x54, 0x8a, 0xbb, 0xd9, 0x33, 0x04, 0xa0, 0x82, 0x23, 0x5a, 0x17, 0x0a, 0x9d, 0x32, 0x62, 0x68, 0xd0, 0xcf, 0xc3, 0x42, 0x64, 0xd8, 0xeb, 0xcf, 0xcb, 0xcc, 0x0d, 0xc0, 0xea, 0x77, 0x67, 0xb6, 0x50, 0xdb, 0xcf, 0xc7, 0x84, 0x8f, 0x91, }; static const unsigned char hmac_sha3_512_972_msg[] = { 0x0f, 0xb9, 0x1b, 0xb0, 0x43, 0xcf, 0x3d, 0x49, 0x34, 0x14, 0x82, 0xea, 0xcb, 0xab, 0x92, 0xda, 0x92, 0x11, 0x7b, 0xb6, 0xec, 0x03, 0xb5, 0x18, 0xa9, 0x3c, 0x9d, 0x59, 0xe5, 0x47, 0x02, 0xc6, 0xa2, 0x1a, 0xde, 0x4f, 0x25, 0x58, 0x70, 0xcb, 0x52, 0xda, 0x4a, 0x24, 0xb3, 0x68, 0x56, 0xb0, 0xcb, 0xf8, 0xb1, 0x22, 0xd2, 0xfd, 0x5b, 0x02, 0x19, 0xae, 0xac, 0xb6, 0xe2, 0x92, 0xc9, 0x58, 0x63, 0x92, 0x17, 0x89, 0x09, 0x2d, 0x5d, 0x65, 0xd5, 0xa9, 0x38, 0x92, 0x31, 0x67, 0x0e, 0x38, 0xbe, 0x31, 0xd8, 0xb7, 0x66, 0x30, 0x65, 0x0c, 0x77, 0xed, 0xc2, 0x37, 0x73, 0xd5, 0xec, 0x91, 0x89, 0x91, 0x55, 0x60, 0xef, 0x6f, 0x45, 0xa4, 0x27, 0x5f, 0x85, 0x95, 0x7d, 0x87, 0x62, 0x91, 0x6d, 0x81, 0x47, 0xef, 0x43, 0xea, 0x6f, 0x43, 0x8d, 0x06, 0x62, 0x27, 0x35, 0x4d, 0xf2, 0x6c, }; static const unsigned char hmac_sha3_512_972_tag[] = { 0x5e, 0x08, 0xa2, 0xce, 0xf9, 0x37, 0x0a, 0x6f, 0x04, 0x07, 0x88, 0xb7, 0x16, 0xe2, 0x7b, 0x60, 0x94, 0xe4, 0xd9, 0xf6, 0x54, 0x9f, 0xfd, 0x6f, 0x69, 0xea, 0xd6, 0x61, 0x0d, 0xbd, 0x7a, 0xc6, }; static const wycheproof_hmac_test hmac_sha3_512_972 = { .name = "hmac_sha3_512_972", .hash = SHA3_512, .key = hmac_sha3_512_972_key, .keylen = 64, .msg = hmac_sha3_512_972_msg, .msglen = 128, .tag = hmac_sha3_512_972_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 973 for HMAC, tcId is 108 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_973_key[] = { 0xd2, 0x92, 0x25, 0xe3, 0x04, 0x2b, 0x43, 0xd4, 0xeb, 0x7a, 0x93, 0x99, 0xf2, 0x24, 0x42, 0x4b, 0x5b, 0x4d, 0xd9, 0x90, 0x31, 0xc8, 0xab, 0xf6, 0x09, 0xd3, 0xa6, 0xe3, 0x17, 0x58, 0x97, 0x13, 0x4c, 0xc7, 0xba, 0x8a, 0x6b, 0xe2, 0x5d, 0x43, 0x6d, 0x41, 0xa7, 0x57, 0xa2, 0xda, 0xa4, 0xe1, 0xb0, 0x3f, 0x7c, 0x30, 0x53, 0xee, 0x8c, 0xad, 0xa1, 0x95, 0x31, 0xd4, 0x8d, 0xab, 0x93, 0xe0, }; static const unsigned char hmac_sha3_512_973_msg[] = { 0x1f, 0xda, 0xd8, 0xcd, 0x37, 0xe1, 0x15, 0xef, 0x81, 0x31, 0xd4, 0x61, 0x9b, 0x5d, 0x61, 0xa9, 0x82, 0x7a, 0x11, 0xb9, 0xc2, 0x5c, 0x5b, 0x82, 0x20, 0xb0, 0x02, 0xd5, 0xb7, 0xf6, 0xe2, 0xbc, 0x30, 0xa7, 0xe2, 0xf3, 0xd1, 0x03, 0xdb, 0xca, 0xf8, 0x49, 0xa2, 0x55, 0xc2, 0x0e, 0xc5, 0xd1, 0xb4, 0x0a, 0x62, 0x3e, 0x39, 0x8d, 0x76, 0xc5, 0xb7, 0xf0, 0x7f, 0xe3, 0x05, 0x18, 0x1c, 0xd5, 0xbe, 0xe2, 0x9d, 0xe3, 0x36, 0x0f, 0xed, 0x55, 0xf6, 0x90, 0x63, 0xe6, 0xa8, 0xfd, 0x2e, 0xf3, 0x12, 0x91, 0xe4, 0xd7, 0xc3, 0x90, 0x84, 0x49, 0x46, 0x6b, 0x4f, 0xf1, 0x16, 0x69, 0x59, 0xff, 0x1f, 0x2e, 0x86, 0xeb, 0x48, 0xa7, 0xed, 0x11, 0xbd, 0xce, 0xc2, 0xfc, 0x2d, 0xfb, 0x66, 0x84, 0xb3, 0x6b, 0x8d, 0x0b, 0x68, 0xe0, 0xf1, 0xb2, 0x3e, 0xf1, 0x1b, 0xf5, 0x90, 0x7d, 0x4a, 0x2b, 0x16, 0x2c, 0xec, 0x26, 0xf3, 0x1b, 0x6d, 0x5d, 0x98, 0x92, 0xa2, 0x7b, 0x3f, 0xad, 0x7a, 0x55, 0x49, 0x85, 0x8d, 0xad, 0x53, 0x0b, 0xae, 0x19, 0x3d, 0x9b, 0x60, 0xd4, 0x2d, 0x7a, 0xd2, 0xa6, 0x64, 0x76, 0xa3, 0xba, 0x4b, 0xf7, 0xa2, 0x7f, 0xf9, 0xd0, 0xf8, 0x85, 0xa5, 0x40, 0xbf, 0x18, 0x1c, 0xaa, 0xd7, 0x1a, 0x23, 0x5e, 0xb3, 0x48, 0xa2, 0x3d, 0x05, 0x3b, 0xa2, 0xdb, 0x7a, 0xed, 0x8d, 0x7d, 0x01, 0xd9, 0x6d, 0xc9, 0xf7, 0x80, 0xe2, 0xe4, 0x26, 0xc7, 0x2b, 0xb6, 0x3f, 0xcb, 0x3f, 0xff, 0x44, 0xc1, 0x4b, 0xb7, 0xb0, 0xf8, 0xaf, 0x35, 0x52, 0xd6, 0x7e, 0xe6, 0x76, 0x10, 0x92, 0xc7, 0x57, 0x62, 0x7d, 0x19, 0xc0, 0x80, 0x49, 0x9c, 0x24, 0x7d, 0x13, 0xb4, 0x31, 0x69, 0x93, 0x97, 0x15, 0x9b, 0x1b, 0x71, 0xc6, 0x27, 0x45, 0x84, 0x95, 0x9d, 0x5c, 0x30, 0xf0, }; static const unsigned char hmac_sha3_512_973_tag[] = { 0x3b, 0x28, 0xef, 0x1a, 0xfe, 0xba, 0x82, 0xc4, 0x12, 0x39, 0x56, 0xe6, 0xb9, 0x02, 0x10, 0x79, 0x84, 0xb2, 0x93, 0x8d, 0x82, 0x91, 0x2e, 0x84, 0x86, 0x8c, 0x19, 0x57, 0x68, 0x76, 0x90, 0x86, }; static const wycheproof_hmac_test hmac_sha3_512_973 = { .name = "hmac_sha3_512_973", .hash = SHA3_512, .key = hmac_sha3_512_973_key, .keylen = 64, .msg = hmac_sha3_512_973_msg, .msglen = 255, .tag = hmac_sha3_512_973_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 974 for HMAC, tcId is 109 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_974_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_974_tag[] = { 0x61, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_974 = { .name = "hmac_sha3_512_974", .hash = SHA3_512, .key = hmac_sha3_512_974_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_974_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 975 for HMAC, tcId is 110 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_975_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_975_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_975_tag[] = { 0x7e, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_975 = { .name = "hmac_sha3_512_975", .hash = SHA3_512, .key = hmac_sha3_512_975_key, .keylen = 64, .msg = hmac_sha3_512_975_msg, .msglen = 16, .tag = hmac_sha3_512_975_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 976 for HMAC, tcId is 111 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_976_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_976_tag[] = { 0x62, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_976 = { .name = "hmac_sha3_512_976", .hash = SHA3_512, .key = hmac_sha3_512_976_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_976_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 977 for HMAC, tcId is 112 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_977_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_977_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_977_tag[] = { 0x7d, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_977 = { .name = "hmac_sha3_512_977", .hash = SHA3_512, .key = hmac_sha3_512_977_key, .keylen = 64, .msg = hmac_sha3_512_977_msg, .msglen = 16, .tag = hmac_sha3_512_977_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 978 for HMAC, tcId is 113 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_978_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_978_tag[] = { 0xe0, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_978 = { .name = "hmac_sha3_512_978", .hash = SHA3_512, .key = hmac_sha3_512_978_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_978_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 979 for HMAC, tcId is 114 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_979_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_979_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_979_tag[] = { 0xff, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_979 = { .name = "hmac_sha3_512_979", .hash = SHA3_512, .key = hmac_sha3_512_979_key, .keylen = 64, .msg = hmac_sha3_512_979_msg, .msglen = 16, .tag = hmac_sha3_512_979_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 980 for HMAC, tcId is 115 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_980_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_980_tag[] = { 0x60, 0x71, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_980 = { .name = "hmac_sha3_512_980", .hash = SHA3_512, .key = hmac_sha3_512_980_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_980_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 981 for HMAC, tcId is 116 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_981_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_981_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_981_tag[] = { 0x7f, 0xc9, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_981 = { .name = "hmac_sha3_512_981", .hash = SHA3_512, .key = hmac_sha3_512_981_key, .keylen = 64, .msg = hmac_sha3_512_981_msg, .msglen = 16, .tag = hmac_sha3_512_981_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 982 for HMAC, tcId is 117 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_982_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_982_tag[] = { 0x60, 0x70, 0x63, 0xf0, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_982 = { .name = "hmac_sha3_512_982", .hash = SHA3_512, .key = hmac_sha3_512_982_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_982_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 983 for HMAC, tcId is 118 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_983_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_983_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_983_tag[] = { 0x7f, 0xc8, 0xb6, 0x0b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_983 = { .name = "hmac_sha3_512_983", .hash = SHA3_512, .key = hmac_sha3_512_983_key, .keylen = 64, .msg = hmac_sha3_512_983_msg, .msglen = 16, .tag = hmac_sha3_512_983_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 984 for HMAC, tcId is 119 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_984_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_984_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1b, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_984 = { .name = "hmac_sha3_512_984", .hash = SHA3_512, .key = hmac_sha3_512_984_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_984_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 985 for HMAC, tcId is 120 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_985_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_985_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_985_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x44, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_985 = { .name = "hmac_sha3_512_985", .hash = SHA3_512, .key = hmac_sha3_512_985_key, .keylen = 64, .msg = hmac_sha3_512_985_msg, .msglen = 16, .tag = hmac_sha3_512_985_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 986 for HMAC, tcId is 121 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_986_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_986_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x18, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_986 = { .name = "hmac_sha3_512_986", .hash = SHA3_512, .key = hmac_sha3_512_986_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_986_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 987 for HMAC, tcId is 122 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_987_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_987_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_987_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x47, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_987 = { .name = "hmac_sha3_512_987", .hash = SHA3_512, .key = hmac_sha3_512_987_key, .keylen = 64, .msg = hmac_sha3_512_987_msg, .msglen = 16, .tag = hmac_sha3_512_987_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 988 for HMAC, tcId is 123 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_988_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_988_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_988 = { .name = "hmac_sha3_512_988", .hash = SHA3_512, .key = hmac_sha3_512_988_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_988_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 989 for HMAC, tcId is 124 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_989_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_989_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_989_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_989 = { .name = "hmac_sha3_512_989", .hash = SHA3_512, .key = hmac_sha3_512_989_key, .keylen = 64, .msg = hmac_sha3_512_989_msg, .msglen = 16, .tag = hmac_sha3_512_989_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 990 for HMAC, tcId is 125 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_990_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_990_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x23, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_990 = { .name = "hmac_sha3_512_990", .hash = SHA3_512, .key = hmac_sha3_512_990_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_990_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 991 for HMAC, tcId is 126 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_991_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_991_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_991_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x70, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_991 = { .name = "hmac_sha3_512_991", .hash = SHA3_512, .key = hmac_sha3_512_991_key, .keylen = 64, .msg = hmac_sha3_512_991_msg, .msglen = 16, .tag = hmac_sha3_512_991_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 992 for HMAC, tcId is 127 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_992_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_992_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0xa2, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_992 = { .name = "hmac_sha3_512_992", .hash = SHA3_512, .key = hmac_sha3_512_992_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_992_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 993 for HMAC, tcId is 128 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_993_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_993_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_993_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0xf1, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_993 = { .name = "hmac_sha3_512_993", .hash = SHA3_512, .key = hmac_sha3_512_993_key, .keylen = 64, .msg = hmac_sha3_512_993_msg, .msglen = 16, .tag = hmac_sha3_512_993_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 994 for HMAC, tcId is 129 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_994_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_994_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0xa5, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_994 = { .name = "hmac_sha3_512_994", .hash = SHA3_512, .key = hmac_sha3_512_994_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_994_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 995 for HMAC, tcId is 130 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_995_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_995_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_995_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0x9e, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_995 = { .name = "hmac_sha3_512_995", .hash = SHA3_512, .key = hmac_sha3_512_995_key, .keylen = 64, .msg = hmac_sha3_512_995_msg, .msglen = 16, .tag = hmac_sha3_512_995_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 996 for HMAC, tcId is 131 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_996_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_996_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x45, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_996 = { .name = "hmac_sha3_512_996", .hash = SHA3_512, .key = hmac_sha3_512_996_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_996_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 997 for HMAC, tcId is 132 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_997_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_997_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_997_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x12, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_997 = { .name = "hmac_sha3_512_997", .hash = SHA3_512, .key = hmac_sha3_512_997_key, .keylen = 64, .msg = hmac_sha3_512_997_msg, .msglen = 16, .tag = hmac_sha3_512_997_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 998 for HMAC, tcId is 133 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_998_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_998_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3b, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_998 = { .name = "hmac_sha3_512_998", .hash = SHA3_512, .key = hmac_sha3_512_998_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_998_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 999 for HMAC, tcId is 134 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_999_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_999_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_999_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8d, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_999 = { .name = "hmac_sha3_512_999", .hash = SHA3_512, .key = hmac_sha3_512_999_key, .keylen = 64, .msg = hmac_sha3_512_999_msg, .msglen = 16, .tag = hmac_sha3_512_999_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1000 for HMAC, tcId is 135 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1000_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1000_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x38, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_1000 = { .name = "hmac_sha3_512_1000", .hash = SHA3_512, .key = hmac_sha3_512_1000_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1000_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1001 for HMAC, tcId is 136 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1001_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1001_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1001_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8e, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_1001 = { .name = "hmac_sha3_512_1001", .hash = SHA3_512, .key = hmac_sha3_512_1001_key, .keylen = 64, .msg = hmac_sha3_512_1001_msg, .msglen = 16, .tag = hmac_sha3_512_1001_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1002 for HMAC, tcId is 137 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1002_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1002_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0xba, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_1002 = { .name = "hmac_sha3_512_1002", .hash = SHA3_512, .key = hmac_sha3_512_1002_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1002_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1003 for HMAC, tcId is 138 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1003_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1003_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1003_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x0c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_1003 = { .name = "hmac_sha3_512_1003", .hash = SHA3_512, .key = hmac_sha3_512_1003_key, .keylen = 64, .msg = hmac_sha3_512_1003_msg, .msglen = 16, .tag = hmac_sha3_512_1003_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1004 for HMAC, tcId is 139 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1004_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1004_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x62, }; static const wycheproof_hmac_test hmac_sha3_512_1004 = { .name = "hmac_sha3_512_1004", .hash = SHA3_512, .key = hmac_sha3_512_1004_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1004_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 139 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1005 for HMAC, tcId is 140 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1005_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1005_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1005_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdc, }; static const wycheproof_hmac_test hmac_sha3_512_1005 = { .name = "hmac_sha3_512_1005", .hash = SHA3_512, .key = hmac_sha3_512_1005_key, .keylen = 64, .msg = hmac_sha3_512_1005_msg, .msglen = 16, .tag = hmac_sha3_512_1005_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 140 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1006 for HMAC, tcId is 141 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1006_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1006_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x61, }; static const wycheproof_hmac_test hmac_sha3_512_1006 = { .name = "hmac_sha3_512_1006", .hash = SHA3_512, .key = hmac_sha3_512_1006_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1006_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 141 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1007 for HMAC, tcId is 142 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1007_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1007_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1007_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdf, }; static const wycheproof_hmac_test hmac_sha3_512_1007 = { .name = "hmac_sha3_512_1007", .hash = SHA3_512, .key = hmac_sha3_512_1007_key, .keylen = 64, .msg = hmac_sha3_512_1007_msg, .msglen = 16, .tag = hmac_sha3_512_1007_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 142 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1008 for HMAC, tcId is 143 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1008_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1008_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x23, }; static const wycheproof_hmac_test hmac_sha3_512_1008 = { .name = "hmac_sha3_512_1008", .hash = SHA3_512, .key = hmac_sha3_512_1008_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1008_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 143 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1009 for HMAC, tcId is 144 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1009_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1009_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1009_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0x9d, }; static const wycheproof_hmac_test hmac_sha3_512_1009 = { .name = "hmac_sha3_512_1009", .hash = SHA3_512, .key = hmac_sha3_512_1009_key, .keylen = 64, .msg = hmac_sha3_512_1009_msg, .msglen = 16, .tag = hmac_sha3_512_1009_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 144 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1010 for HMAC, tcId is 145 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1010_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1010_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0xe3, }; static const wycheproof_hmac_test hmac_sha3_512_1010 = { .name = "hmac_sha3_512_1010", .hash = SHA3_512, .key = hmac_sha3_512_1010_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1010_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 145 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1011 for HMAC, tcId is 146 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1011_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1011_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1011_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0x5d, }; static const wycheproof_hmac_test hmac_sha3_512_1011 = { .name = "hmac_sha3_512_1011", .hash = SHA3_512, .key = hmac_sha3_512_1011_key, .keylen = 64, .msg = hmac_sha3_512_1011_msg, .msglen = 16, .tag = hmac_sha3_512_1011_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 146 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1012 for HMAC, tcId is 147 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1012_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1012_tag[] = { 0x61, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0x59, 0x23, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_1012 = { .name = "hmac_sha3_512_1012", .hash = SHA3_512, .key = hmac_sha3_512_1012_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1012_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1013 for HMAC, tcId is 148 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1013_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1013_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1013_tag[] = { 0x7e, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0x2f, 0x70, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_1013 = { .name = "hmac_sha3_512_1013", .hash = SHA3_512, .key = hmac_sha3_512_1013_key, .keylen = 64, .msg = hmac_sha3_512_1013_msg, .msglen = 16, .tag = hmac_sha3_512_1013_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1014 for HMAC, tcId is 149 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1014_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1014_tag[] = { 0x60, 0x70, 0x63, 0xf0, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0xee, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_1014 = { .name = "hmac_sha3_512_1014", .hash = SHA3_512, .key = hmac_sha3_512_1014_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1014_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1015 for HMAC, tcId is 150 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1015_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1015_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1015_tag[] = { 0x7f, 0xc8, 0xb6, 0x0b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0xb9, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_1015 = { .name = "hmac_sha3_512_1015", .hash = SHA3_512, .key = hmac_sha3_512_1015_key, .keylen = 64, .msg = hmac_sha3_512_1015_msg, .msglen = 16, .tag = hmac_sha3_512_1015_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1016 for HMAC, tcId is 151 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1016_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1016_tag[] = { 0x60, 0x70, 0x63, 0x70, 0x1a, 0x56, 0x85, 0xd9, 0x22, 0x85, 0x44, 0xd6, 0x3a, 0x27, 0xd3, 0x6e, 0xfe, 0xec, 0xab, 0x50, 0x93, 0x3a, 0x98, 0x9e, 0x8a, 0x2f, 0x5a, 0x6d, 0x07, 0x41, 0xa4, 0x63, }; static const wycheproof_hmac_test hmac_sha3_512_1016 = { .name = "hmac_sha3_512_1016", .hash = SHA3_512, .key = hmac_sha3_512_1016_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1016_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1017 for HMAC, tcId is 152 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1017_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1017_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1017_tag[] = { 0x7f, 0xc8, 0xb6, 0x8b, 0x45, 0x48, 0xc1, 0xaf, 0x71, 0xbe, 0x13, 0x42, 0x8c, 0xbb, 0x4a, 0x39, 0xfe, 0xa2, 0x80, 0x42, 0x1c, 0x20, 0x93, 0x45, 0xdb, 0xf0, 0xc9, 0x85, 0xbf, 0x69, 0x10, 0xdd, }; static const wycheproof_hmac_test hmac_sha3_512_1017 = { .name = "hmac_sha3_512_1017", .hash = SHA3_512, .key = hmac_sha3_512_1017_key, .keylen = 64, .msg = hmac_sha3_512_1017_msg, .msglen = 16, .tag = hmac_sha3_512_1017_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1018 for HMAC, tcId is 153 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1018_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1018_tag[] = { 0x9f, 0x8f, 0x9c, 0x8f, 0xe5, 0xa9, 0x7a, 0xa6, 0xdd, 0x7a, 0xbb, 0x29, 0xc5, 0xd8, 0x2c, 0x11, 0x01, 0x13, 0x54, 0xaf, 0x6c, 0xc5, 0x67, 0x61, 0x75, 0xd0, 0xa5, 0x92, 0xf8, 0xbe, 0x5b, 0x9c, }; static const wycheproof_hmac_test hmac_sha3_512_1018 = { .name = "hmac_sha3_512_1018", .hash = SHA3_512, .key = hmac_sha3_512_1018_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1018_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1019 for HMAC, tcId is 154 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1019_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1019_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1019_tag[] = { 0x80, 0x37, 0x49, 0x74, 0xba, 0xb7, 0x3e, 0xd0, 0x8e, 0x41, 0xec, 0xbd, 0x73, 0x44, 0xb5, 0x46, 0x01, 0x5d, 0x7f, 0xbd, 0xe3, 0xdf, 0x6c, 0xba, 0x24, 0x0f, 0x36, 0x7a, 0x40, 0x96, 0xef, 0x22, }; static const wycheproof_hmac_test hmac_sha3_512_1019 = { .name = "hmac_sha3_512_1019", .hash = SHA3_512, .key = hmac_sha3_512_1019_key, .keylen = 64, .msg = hmac_sha3_512_1019_msg, .msglen = 16, .tag = hmac_sha3_512_1019_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1020 for HMAC, tcId is 155 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1020_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1020_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_1020 = { .name = "hmac_sha3_512_1020", .hash = SHA3_512, .key = hmac_sha3_512_1020_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1020_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1021 for HMAC, tcId is 156 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1021_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1021_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1021_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha3_512_1021 = { .name = "hmac_sha3_512_1021", .hash = SHA3_512, .key = hmac_sha3_512_1021_key, .keylen = 64, .msg = hmac_sha3_512_1021_msg, .msglen = 16, .tag = hmac_sha3_512_1021_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1022 for HMAC, tcId is 157 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1022_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1022_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_512_1022 = { .name = "hmac_sha3_512_1022", .hash = SHA3_512, .key = hmac_sha3_512_1022_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1022_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1023 for HMAC, tcId is 158 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1023_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1023_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1023_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha3_512_1023 = { .name = "hmac_sha3_512_1023", .hash = SHA3_512, .key = hmac_sha3_512_1023_key, .keylen = 64, .msg = hmac_sha3_512_1023_msg, .msglen = 16, .tag = hmac_sha3_512_1023_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1024 for HMAC, tcId is 159 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1024_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1024_tag[] = { 0xe0, 0xf0, 0xe3, 0xf0, 0x9a, 0xd6, 0x05, 0xd9, 0xa2, 0x05, 0xc4, 0x56, 0xba, 0xa7, 0x53, 0x6e, 0x7e, 0x6c, 0x2b, 0xd0, 0x13, 0xba, 0x18, 0x1e, 0x0a, 0xaf, 0xda, 0xed, 0x87, 0xc1, 0x24, 0xe3, }; static const wycheproof_hmac_test hmac_sha3_512_1024 = { .name = "hmac_sha3_512_1024", .hash = SHA3_512, .key = hmac_sha3_512_1024_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1024_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1025 for HMAC, tcId is 160 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1025_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1025_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1025_tag[] = { 0xff, 0x48, 0x36, 0x0b, 0xc5, 0xc8, 0x41, 0xaf, 0xf1, 0x3e, 0x93, 0xc2, 0x0c, 0x3b, 0xca, 0x39, 0x7e, 0x22, 0x00, 0xc2, 0x9c, 0xa0, 0x13, 0xc5, 0x5b, 0x70, 0x49, 0x05, 0x3f, 0xe9, 0x90, 0x5d, }; static const wycheproof_hmac_test hmac_sha3_512_1025 = { .name = "hmac_sha3_512_1025", .hash = SHA3_512, .key = hmac_sha3_512_1025_key, .keylen = 64, .msg = hmac_sha3_512_1025_msg, .msglen = 16, .tag = hmac_sha3_512_1025_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1026 for HMAC, tcId is 161 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1026_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1026_tag[] = { 0x61, 0x71, 0x62, 0x71, 0x1b, 0x57, 0x84, 0x58, 0x23, 0x84, 0x45, 0xd7, 0x3b, 0x26, 0xd2, 0xef, 0xff, 0xed, 0xaa, 0x51, 0x92, 0x3b, 0x99, 0x9f, 0x8b, 0x2e, 0x5b, 0x6c, 0x06, 0x40, 0xa5, 0x62, }; static const wycheproof_hmac_test hmac_sha3_512_1026 = { .name = "hmac_sha3_512_1026", .hash = SHA3_512, .key = hmac_sha3_512_1026_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1026_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1027 for HMAC, tcId is 162 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1027_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha3_512_1027_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha3_512_1027_tag[] = { 0x7e, 0xc9, 0xb7, 0x8a, 0x44, 0x49, 0xc0, 0x2e, 0x70, 0xbf, 0x12, 0x43, 0x8d, 0xba, 0x4b, 0xb8, 0xff, 0xa3, 0x81, 0x43, 0x1d, 0x21, 0x92, 0x44, 0xda, 0xf1, 0xc8, 0x84, 0xbe, 0x68, 0x11, 0xdc, }; static const wycheproof_hmac_test hmac_sha3_512_1027 = { .name = "hmac_sha3_512_1027", .hash = SHA3_512, .key = hmac_sha3_512_1027_key, .keylen = 64, .msg = hmac_sha3_512_1027_msg, .msglen = 16, .tag = hmac_sha3_512_1027_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1028 for HMAC, tcId is 163 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1028_key[] = { 0x14, 0xd9, 0x37, 0x59, 0xfc, 0x28, 0xf3, 0x31, 0x9a, 0xb7, 0x4b, 0x81, 0x67, 0xc9, 0x74, 0xe8, 0x00, 0xf0, 0x32, 0x34, 0x4d, 0xc2, 0x74, 0x7e, 0xc0, 0xf4, 0x94, 0x50, 0x61, 0xa4, 0x78, 0x27, }; static const unsigned char hmac_sha3_512_1028_tag[] = { 0xbf, 0xbc, 0x9e, 0x09, 0x58, 0x22, 0x74, 0x5f, 0x9b, 0xae, 0x15, 0xee, 0x34, 0x18, 0xf3, 0x30, 0xe6, 0x38, 0x91, 0xa2, 0x97, 0x2f, 0xbf, 0xe1, 0x04, 0x51, 0x65, 0xd8, 0xb5, 0xfb, 0xd2, 0x88, 0x06, 0x19, 0x73, 0xed, 0x40, 0xba, 0x31, 0x0b, 0x85, 0xe7, 0xe6, 0xda, 0xfb, 0x9d, 0xfb, 0x4c, 0x29, 0xc4, 0xde, 0x79, 0x69, 0x49, 0x9c, 0x67, 0xaa, 0x2c, 0xca, 0xa4, 0x8c, 0x63, 0x17, 0x8f, }; static const wycheproof_hmac_test hmac_sha3_512_1028 = { .name = "hmac_sha3_512_1028", .hash = SHA3_512, .key = hmac_sha3_512_1028_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1028_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1029 for HMAC, tcId is 164 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1029_key[] = { 0x9f, 0xa3, 0x71, 0xf3, 0x6f, 0xb2, 0x73, 0xd5, 0x14, 0xfd, 0x62, 0x8c, 0xb9, 0x38, 0x06, 0x7a, 0x4b, 0xae, 0x32, 0xa1, 0x9a, 0x1e, 0x04, 0x5a, 0x7d, 0x6d, 0x7f, 0x6d, 0xe3, 0x75, 0x1c, 0xbf, }; static const unsigned char hmac_sha3_512_1029_msg[] = { 0x31, 0x1b, 0xbf, 0x72, 0x2d, 0x32, 0x2c, 0xd7, 0xa0, 0x71, 0x0f, 0x48, 0x0f, 0xc6, 0x65, 0x18, }; static const unsigned char hmac_sha3_512_1029_tag[] = { 0x5d, 0x66, 0x19, 0xbd, 0x88, 0xbd, 0xd1, 0x8a, 0xaa, 0xfe, 0x2c, 0x37, 0x73, 0xd8, 0xa9, 0x2e, 0x66, 0x17, 0xe7, 0x41, 0x19, 0x6d, 0x0c, 0x2e, 0x9d, 0x52, 0x71, 0xfb, 0x9a, 0xbe, 0xbb, 0x72, 0xb5, 0x20, 0xbc, 0xe1, 0xe1, 0xf1, 0x47, 0xd8, 0x61, 0xbe, 0x15, 0x73, 0x4a, 0xb2, 0x5c, 0x93, 0x43, 0x7e, 0x10, 0x58, 0xbb, 0x44, 0xdd, 0xdb, 0x81, 0x04, 0x18, 0x55, 0x21, 0x78, 0x50, 0x99, }; static const wycheproof_hmac_test hmac_sha3_512_1029 = { .name = "hmac_sha3_512_1029", .hash = SHA3_512, .key = hmac_sha3_512_1029_key, .keylen = 32, .msg = hmac_sha3_512_1029_msg, .msglen = 16, .tag = hmac_sha3_512_1029_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1030 for HMAC, tcId is 165 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1030_key[] = { 0x63, 0x13, 0xf1, 0x52, 0x6b, 0xc2, 0x20, 0xf2, 0x0d, 0xde, 0x1e, 0x64, 0xce, 0xd8, 0x59, 0x72, 0x79, 0x58, 0x6d, 0x1e, 0x15, 0xaa, 0xd0, 0x5a, 0xd5, 0x91, 0xd8, 0x41, 0xb3, 0x69, 0x28, 0x4f, }; static const unsigned char hmac_sha3_512_1030_msg[] = { 0xf7, 0x44, 0xfa, 0x39, 0x33, 0xe1, 0x6d, 0x8b, 0xf5, 0x24, 0xaf, 0xae, 0xb3, 0x4c, 0x71, 0x56, 0x53, 0xa9, 0xcf, 0xb0, 0x1f, 0xa4, 0x5f, 0xe1, 0xfb, 0x68, 0xe7, 0x01, 0xfe, 0x14, 0x87, 0xca, }; static const unsigned char hmac_sha3_512_1030_tag[] = { 0x20, 0xdf, 0x7e, 0x32, 0x0e, 0xf6, 0x2f, 0xd4, 0xb3, 0x47, 0x19, 0x3d, 0xe8, 0x68, 0x51, 0x6a, 0x0b, 0x4c, 0x24, 0x55, 0x46, 0xf1, 0xe6, 0xb4, 0x3f, 0x5a, 0xc4, 0x2f, 0x1c, 0xff, 0x66, 0xa5, 0x6d, 0x21, 0x4b, 0x1b, 0xbf, 0x7d, 0x32, 0x84, 0x9f, 0xee, 0x3a, 0x2c, 0x6d, 0xee, 0x8a, 0x8f, 0xe2, 0x09, 0xe6, 0xe2, 0x8c, 0x6e, 0x24, 0x16, 0xb9, 0xcf, 0x95, 0xeb, 0xc1, 0x0f, 0xc8, 0xb8, }; static const wycheproof_hmac_test hmac_sha3_512_1030 = { .name = "hmac_sha3_512_1030", .hash = SHA3_512, .key = hmac_sha3_512_1030_key, .keylen = 32, .msg = hmac_sha3_512_1030_msg, .msglen = 32, .tag = hmac_sha3_512_1030_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1031 for HMAC, tcId is 166 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1031_key[] = { 0x1e, 0x22, 0x5c, 0xaf, 0xb9, 0x03, 0x39, 0xbb, 0xa1, 0xb2, 0x40, 0x76, 0xd4, 0x20, 0x6c, 0x3e, 0x79, 0xc3, 0x55, 0x80, 0x5d, 0x85, 0x16, 0x82, 0xbc, 0x81, 0x8b, 0xaa, 0x4f, 0x5a, 0x77, 0x79, }; static const unsigned char hmac_sha3_512_1031_tag[] = { 0x4e, 0x35, 0xe7, 0xb4, 0xb0, 0x02, 0x9d, 0x62, 0xe3, 0xa7, 0x65, 0xc2, 0xa4, 0x1d, 0x19, 0xf5, 0x12, 0xd7, 0x74, 0x68, 0xf8, 0xa4, 0x38, 0x60, 0xf9, 0x33, 0xf1, 0x33, 0x06, 0xbf, 0x62, 0x04, }; static const wycheproof_hmac_test hmac_sha3_512_1031 = { .name = "hmac_sha3_512_1031", .hash = SHA3_512, .key = hmac_sha3_512_1031_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1031_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1032 for HMAC, tcId is 167 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1032_key[] = { 0x6f, 0xa3, 0x53, 0x86, 0x8c, 0x82, 0xe5, 0xde, 0xee, 0xda, 0xc7, 0xf0, 0x94, 0x71, 0xa6, 0x1b, 0xf7, 0x49, 0xab, 0x54, 0x98, 0x23, 0x9e, 0x94, 0x7e, 0x01, 0x2e, 0xee, 0x3c, 0x82, 0xd7, 0xc4, }; static const unsigned char hmac_sha3_512_1032_msg[] = { 0xae, 0xed, 0x3e, 0x4d, 0x4c, 0xb9, 0xbb, 0xb6, 0x0d, 0x48, 0x2e, 0x98, 0xc1, 0x26, 0xc0, 0xf5, }; static const unsigned char hmac_sha3_512_1032_tag[] = { 0x4b, 0x08, 0x47, 0x9a, 0x99, 0x96, 0x47, 0x44, 0x88, 0x1a, 0x02, 0xf3, 0x24, 0x35, 0xb6, 0x0b, 0xf8, 0x3e, 0xa5, 0x03, 0x68, 0x35, 0xa0, 0xbe, 0x2b, 0x3c, 0x65, 0x44, 0xd5, 0x02, 0xcd, 0x95, }; static const wycheproof_hmac_test hmac_sha3_512_1032 = { .name = "hmac_sha3_512_1032", .hash = SHA3_512, .key = hmac_sha3_512_1032_key, .keylen = 32, .msg = hmac_sha3_512_1032_msg, .msglen = 16, .tag = hmac_sha3_512_1032_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1033 for HMAC, tcId is 168 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1033_key[] = { 0x18, 0x6e, 0x24, 0x8a, 0xd8, 0x24, 0xe1, 0xeb, 0x93, 0x32, 0x9a, 0x7f, 0xdc, 0xd5, 0x65, 0xb6, 0xcb, 0x4e, 0xaf, 0x3f, 0x85, 0xb9, 0x0b, 0x91, 0x07, 0x77, 0x12, 0x8d, 0x8c, 0x53, 0x8d, 0x27, }; static const unsigned char hmac_sha3_512_1033_msg[] = { 0x92, 0xef, 0x9f, 0xf5, 0x2f, 0x46, 0xec, 0xcc, 0x7e, 0x38, 0xb9, 0xee, 0x19, 0xfd, 0x2d, 0xe3, 0xb3, 0x77, 0x26, 0xc8, 0xe6, 0xce, 0x9e, 0x1b, 0x96, 0xdb, 0x5d, 0xda, 0x4c, 0x31, 0x79, 0x02, }; static const unsigned char hmac_sha3_512_1033_tag[] = { 0x31, 0x8c, 0xc3, 0xd4, 0xa8, 0xa1, 0x08, 0x30, 0x97, 0x54, 0x58, 0xcf, 0x98, 0x41, 0x96, 0x98, 0x0c, 0x0f, 0x3f, 0x5f, 0xf0, 0x40, 0xe3, 0x47, 0x8a, 0xe2, 0x9b, 0x28, 0x76, 0x63, 0x75, 0x2f, }; static const wycheproof_hmac_test hmac_sha3_512_1033 = { .name = "hmac_sha3_512_1033", .hash = SHA3_512, .key = hmac_sha3_512_1033_key, .keylen = 32, .msg = hmac_sha3_512_1033_msg, .msglen = 32, .tag = hmac_sha3_512_1033_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1034 for HMAC, tcId is 169 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1034_key[] = { 0xdd, 0x1e, 0x0b, 0xdb, 0xb6, 0xb6, 0x08, 0x62, 0x17, 0x64, 0x84, 0xf3, 0x66, 0x9d, 0xa5, 0x31, 0x45, 0x5f, 0x1c, 0xd7, 0x14, 0xf9, 0x99, 0xc2, 0x9f, 0x08, 0xb8, 0x51, 0x05, 0x5f, 0xee, 0x8d, 0x72, 0x18, 0x6d, 0x37, 0x6c, 0x23, 0x6f, 0x4e, 0x16, 0xcb, 0xa7, 0xa2, 0x5c, 0xba, 0x87, 0x9f, 0xb2, 0x75, 0x3d, 0xec, 0xa4, 0x45, 0x9a, 0xae, 0xbc, 0x6f, 0x6d, 0xe6, 0x25, 0xd9, 0x9a, 0xf3, 0x30, }; static const unsigned char hmac_sha3_512_1034_tag[] = { 0xdc, 0xa1, 0xd2, 0x87, 0x76, 0xd6, 0x36, 0x77, 0x3d, 0x43, 0x97, 0xb7, 0x92, 0x32, 0x3d, 0x31, 0x5d, 0xab, 0x2f, 0xdb, 0xf7, 0x02, 0x7e, 0x9c, 0xe6, 0xb2, 0x16, 0xdb, 0x7a, 0x35, 0x50, 0x56, 0x86, 0xa1, 0xea, 0x0a, 0x41, 0x0a, 0x14, 0x73, 0xc7, 0xc0, 0xca, 0x73, 0x7b, 0x4e, 0xce, 0x05, 0xc8, 0x2e, 0x8a, 0xa5, 0x20, 0x3d, 0xb9, 0x86, 0x36, 0x77, 0x49, 0x50, 0x13, 0xdb, 0xfd, 0x48, }; static const wycheproof_hmac_test hmac_sha3_512_1034 = { .name = "hmac_sha3_512_1034", .hash = SHA3_512, .key = hmac_sha3_512_1034_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1034_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1035 for HMAC, tcId is 170 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1035_key[] = { 0x43, 0x2b, 0x31, 0x1e, 0xbc, 0xfd, 0x46, 0xec, 0xfc, 0xd3, 0xcc, 0x70, 0x6e, 0xbd, 0x05, 0xc7, 0x87, 0xdf, 0xbe, 0x18, 0x55, 0xfd, 0xcf, 0xce, 0x8d, 0x50, 0xc9, 0xa0, 0x0f, 0x72, 0xb6, 0x5a, 0x8d, 0x42, 0xac, 0xec, 0x33, 0x5b, 0x4e, 0x07, 0xd5, 0x44, 0xc9, 0x2f, 0xd7, 0xb1, 0xd3, 0x85, 0x43, 0xac, 0x6e, 0x0f, 0xc0, 0x4c, 0x26, 0xd8, 0x8d, 0xe8, 0xdd, 0x97, 0x4a, 0xf6, 0x9e, 0x24, 0xd7, }; static const unsigned char hmac_sha3_512_1035_msg[] = { 0x36, 0xb1, 0xfb, 0xe8, 0xf1, 0x33, 0x5e, 0x7c, 0x03, 0x99, 0xc2, 0x47, 0x30, 0x90, 0x64, 0x20, }; static const unsigned char hmac_sha3_512_1035_tag[] = { 0xc0, 0xce, 0x83, 0x19, 0x30, 0x45, 0x5d, 0x18, 0x91, 0x7c, 0x4e, 0x4f, 0x09, 0x7f, 0x20, 0x00, 0xdb, 0x8b, 0x29, 0x50, 0x41, 0xce, 0x82, 0x2c, 0xfe, 0x67, 0xb9, 0x10, 0x6f, 0xab, 0xf4, 0x80, 0x09, 0x16, 0xf7, 0x5f, 0xa0, 0x0f, 0xb9, 0xc4, 0x9e, 0xb7, 0xcf, 0xb7, 0xae, 0xae, 0xf3, 0x17, 0x0a, 0x45, 0x75, 0xdb, 0x66, 0x16, 0x1d, 0x20, 0x35, 0xef, 0xbc, 0x13, 0x29, 0x57, 0xf1, 0xb3, }; static const wycheproof_hmac_test hmac_sha3_512_1035 = { .name = "hmac_sha3_512_1035", .hash = SHA3_512, .key = hmac_sha3_512_1035_key, .keylen = 65, .msg = hmac_sha3_512_1035_msg, .msglen = 16, .tag = hmac_sha3_512_1035_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1036 for HMAC, tcId is 171 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1036_key[] = { 0x17, 0xf7, 0x20, 0xf0, 0x9d, 0xf5, 0x97, 0x2a, 0xf9, 0xb9, 0xc6, 0x3e, 0x10, 0x04, 0x32, 0x84, 0x60, 0x89, 0x00, 0xd5, 0x0b, 0x79, 0x55, 0xdb, 0x3b, 0x4e, 0x26, 0x79, 0xcb, 0x41, 0x20, 0xbe, 0x2c, 0x9b, 0x9e, 0x2a, 0xa1, 0xa5, 0x74, 0x3e, 0xb5, 0x19, 0x79, 0x28, 0x22, 0xc3, 0x26, 0xb4, 0xd8, 0x90, 0xb5, 0x55, 0x4d, 0x1c, 0xb0, 0xeb, 0x71, 0x08, 0x1b, 0x75, 0x69, 0xa2, 0xf0, 0x4d, 0xf7, }; static const unsigned char hmac_sha3_512_1036_msg[] = { 0x57, 0x16, 0x7c, 0x25, 0x24, 0xa5, 0x52, 0x89, 0x68, 0x7b, 0x83, 0xa4, 0x0d, 0x3a, 0x69, 0xbc, 0x90, 0xad, 0xc5, 0x3a, 0xd2, 0x47, 0x02, 0x0b, 0x88, 0x89, 0x7f, 0x9b, 0x95, 0xd1, 0x51, 0x6d, }; static const unsigned char hmac_sha3_512_1036_tag[] = { 0x67, 0x75, 0x30, 0xc1, 0x7b, 0x88, 0x8f, 0x41, 0x6a, 0x30, 0x3f, 0x32, 0xa3, 0xa8, 0xb0, 0xd7, 0x07, 0xea, 0xfb, 0xb6, 0x58, 0x45, 0xcc, 0xfe, 0x0b, 0x96, 0x3b, 0x76, 0x66, 0x60, 0x13, 0x85, 0xe0, 0xda, 0xf2, 0x1b, 0x0a, 0xff, 0xa1, 0x07, 0x01, 0x09, 0xe0, 0x81, 0x21, 0x35, 0xb7, 0xe5, 0x1e, 0x00, 0x11, 0x68, 0xe0, 0x8d, 0x17, 0xda, 0x11, 0x06, 0xe4, 0x0d, 0x47, 0xf0, 0x84, 0xf4, }; static const wycheproof_hmac_test hmac_sha3_512_1036 = { .name = "hmac_sha3_512_1036", .hash = SHA3_512, .key = hmac_sha3_512_1036_key, .keylen = 65, .msg = hmac_sha3_512_1036_msg, .msglen = 32, .tag = hmac_sha3_512_1036_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1037 for HMAC, tcId is 172 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1037_key[] = { 0x8a, 0x0c, 0x46, 0xeb, 0x8a, 0x29, 0x59, 0xe3, 0x98, 0x65, 0x33, 0x00, 0x79, 0x76, 0x33, 0x41, 0xe7, 0x43, 0x9d, 0xab, 0x14, 0x96, 0x94, 0xee, 0x57, 0xe0, 0xd6, 0x1e, 0xc7, 0x3d, 0x94, 0x7e, 0x1d, 0x53, 0x01, 0xcd, 0x97, 0x4e, 0x18, 0xa5, 0xe0, 0xd1, 0xcf, 0x0d, 0x2c, 0x37, 0xe8, 0xaa, 0xdd, 0x9f, 0xd5, 0x89, 0xd5, 0x7e, 0xf3, 0x2e, 0x47, 0x02, 0x4a, 0x99, 0xbc, 0x3f, 0x70, 0xc0, 0x77, }; static const unsigned char hmac_sha3_512_1037_tag[] = { 0x0f, 0xd5, 0x26, 0x5e, 0xe5, 0xf7, 0x87, 0x92, 0x5a, 0x82, 0x7b, 0x5f, 0x68, 0xf9, 0xf4, 0x54, 0x60, 0xaf, 0xd2, 0x32, 0xdb, 0x4a, 0x7a, 0xd6, 0xa0, 0x9c, 0x81, 0x7d, 0xac, 0x9f, 0x1c, 0x68, }; static const wycheproof_hmac_test hmac_sha3_512_1037 = { .name = "hmac_sha3_512_1037", .hash = SHA3_512, .key = hmac_sha3_512_1037_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha3_512_1037_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1038 for HMAC, tcId is 173 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1038_key[] = { 0x28, 0x77, 0xeb, 0xb8, 0x1f, 0x80, 0x33, 0x4f, 0xd0, 0x05, 0x16, 0x33, 0x74, 0x46, 0xc5, 0xcf, 0x5a, 0xd4, 0xa3, 0xa2, 0xe1, 0x97, 0x26, 0x9e, 0x5b, 0x0a, 0xd1, 0x88, 0x9d, 0xfe, 0x2b, 0x4b, 0x0a, 0xaa, 0x67, 0x6f, 0xac, 0x55, 0xb3, 0x6c, 0xe3, 0xaf, 0xfc, 0x7f, 0x10, 0x92, 0xab, 0x89, 0xc5, 0x32, 0x73, 0xa8, 0x37, 0xbd, 0x5b, 0xc9, 0x4d, 0x1a, 0x9d, 0x9e, 0x5b, 0x02, 0xe9, 0x85, 0x6f, }; static const unsigned char hmac_sha3_512_1038_msg[] = { 0xba, 0x44, 0x8d, 0xb8, 0x8f, 0x15, 0x4f, 0x77, 0x50, 0x28, 0xfd, 0xec, 0xf9, 0xe6, 0x75, 0x2d, }; static const unsigned char hmac_sha3_512_1038_tag[] = { 0x1e, 0xa7, 0x8b, 0xfb, 0x22, 0x19, 0x33, 0xdd, 0xb7, 0xdc, 0xf5, 0xb0, 0x8f, 0x0e, 0xf3, 0x47, 0x71, 0x14, 0x3e, 0x2c, 0xab, 0xc6, 0xb0, 0xb8, 0xd4, 0x55, 0x2f, 0xa1, 0x28, 0x6d, 0xd5, 0xce, }; static const wycheproof_hmac_test hmac_sha3_512_1038 = { .name = "hmac_sha3_512_1038", .hash = SHA3_512, .key = hmac_sha3_512_1038_key, .keylen = 65, .msg = hmac_sha3_512_1038_msg, .msglen = 16, .tag = hmac_sha3_512_1038_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1039 for HMAC, tcId is 174 in file hmac_sha3_512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) static const unsigned char hmac_sha3_512_1039_key[] = { 0x21, 0x17, 0x8e, 0x26, 0xbc, 0x28, 0xff, 0xc2, 0x7c, 0x06, 0xf7, 0x62, 0xba, 0x19, 0x0a, 0x62, 0x70, 0x75, 0x85, 0x6d, 0x7c, 0xa6, 0xfe, 0xab, 0x79, 0xac, 0x63, 0x14, 0x9b, 0x17, 0x12, 0x6e, 0x34, 0xfd, 0x9e, 0x55, 0x90, 0xe0, 0xe9, 0x0a, 0xac, 0x80, 0x1d, 0xf0, 0x95, 0x05, 0xd8, 0xaf, 0x2d, 0xd0, 0xa2, 0x70, 0x3b, 0x35, 0x2c, 0x57, 0x3a, 0xc9, 0xd2, 0xcb, 0x06, 0x39, 0x27, 0xf2, 0xaf, }; static const unsigned char hmac_sha3_512_1039_msg[] = { 0x7d, 0x5f, 0x1d, 0x6b, 0x99, 0x34, 0x52, 0xb1, 0xb5, 0x3a, 0x43, 0x75, 0x76, 0x0d, 0x10, 0xa2, 0x0d, 0x46, 0xa0, 0xab, 0x9e, 0xc3, 0x94, 0x3f, 0xc4, 0xb0, 0x7a, 0x2c, 0xe7, 0x35, 0xe7, 0x31, }; static const unsigned char hmac_sha3_512_1039_tag[] = { 0xe8, 0xdb, 0x4b, 0x99, 0x25, 0xad, 0x01, 0x39, 0x9a, 0x25, 0xbe, 0x1b, 0x2e, 0x9b, 0x08, 0x28, 0x8f, 0x50, 0xbb, 0xe7, 0xec, 0xe1, 0x8a, 0x27, 0x91, 0x34, 0x80, 0x6b, 0xef, 0x69, 0xd9, 0xbe, }; static const wycheproof_hmac_test hmac_sha3_512_1039 = { .name = "hmac_sha3_512_1039", .hash = SHA3_512, .key = hmac_sha3_512_1039_key, .keylen = 65, .msg = hmac_sha3_512_1039_msg, .msglen = 32, .tag = hmac_sha3_512_1039_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha3_512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) */ /* Test 1040 for HMAC, tcId is 1 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1040_key[] = { 0xee, 0x8d, 0xf0, 0x67, 0x85, 0x7d, 0xf2, 0x30, 0x0f, 0xa7, 0x1a, 0x10, 0xc3, 0x09, 0x97, 0x17, 0x8b, 0xb3, 0x79, 0x61, 0x27, 0xb5, 0xec, 0xe5, 0xf2, 0xcc, 0xc1, 0x70, 0x93, 0x2b, 0xe0, 0xe7, 0x8e, 0xa9, 0xb0, 0xa5, 0x93, 0x6c, 0x09, 0x15, 0x7e, 0x67, 0x1c, 0xe7, 0xec, 0x9f, 0xc5, 0x10, }; static const unsigned char hmac_sha384_1040_tag[] = { 0xa6, 0x55, 0x18, 0x4d, 0xaf, 0x33, 0x46, 0xff, 0xc6, 0x62, 0x9d, 0x49, 0x3c, 0x84, 0x42, 0x64, 0x4e, 0x49, 0x96, 0xa2, 0x79, 0x9e, 0x42, 0xe3, 0x30, 0x6f, 0xa6, 0xf5, 0xb0, 0x96, 0x7b, 0x6c, 0xf3, 0xa6, 0xf8, 0x19, 0xba, 0xb8, 0x9b, 0xce, 0x29, 0x7d, 0x1d, 0x1a, 0x59, 0x07, 0xb2, 0xd0, }; static const wycheproof_hmac_test hmac_sha384_1040 = { .name = "hmac_sha384_1040", .hash = SHA384, .key = hmac_sha384_1040_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1040_tag, .taglen = 48, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1041 for HMAC, tcId is 2 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1041_key[] = { 0x97, 0x66, 0x96, 0xc0, 0xdc, 0x97, 0x18, 0x2c, 0xa7, 0x71, 0x97, 0x5c, 0x39, 0x28, 0xff, 0x91, 0x68, 0xef, 0x89, 0xcd, 0x74, 0x0c, 0xd2, 0x29, 0x28, 0x58, 0xfd, 0x91, 0x60, 0x68, 0xa7, 0x02, 0xbc, 0x1d, 0xf7, 0xc6, 0xcd, 0x8e, 0xe1, 0xf0, 0xd2, 0x5e, 0x61, 0xd4, 0xc5, 0x14, 0xcc, 0x5d, }; static const unsigned char hmac_sha384_1041_msg[] = { 0x2b, }; static const unsigned char hmac_sha384_1041_tag[] = { 0x36, 0x3e, 0x89, 0x73, 0xfe, 0xdc, 0xf7, 0x89, 0x20, 0x13, 0xdf, 0xae, 0x0b, 0x70, 0x65, 0xd6, 0x1d, 0x80, 0xb9, 0x8c, 0x63, 0x5b, 0xc0, 0x9e, 0xd8, 0x60, 0xa0, 0x14, 0x73, 0xb9, 0xbc, 0xd0, 0xdc, 0x55, 0x0d, 0xbf, 0x66, 0xcf, 0x0d, 0x60, 0x1f, 0xe9, 0xcb, 0xf3, 0xae, 0x59, 0x62, 0x0d, }; static const wycheproof_hmac_test hmac_sha384_1041 = { .name = "hmac_sha384_1041", .hash = SHA384, .key = hmac_sha384_1041_key, .keylen = 48, .msg = hmac_sha384_1041_msg, .msglen = 1, .tag = hmac_sha384_1041_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1042 for HMAC, tcId is 3 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1042_key[] = { 0xc5, 0x5e, 0xa4, 0xc6, 0x4a, 0x0a, 0x63, 0xe2, 0xd1, 0x4a, 0xd4, 0x25, 0x59, 0xba, 0x7c, 0x81, 0x6b, 0x88, 0x24, 0xd2, 0x63, 0xc2, 0xcc, 0x6a, 0x01, 0x57, 0x61, 0xb5, 0x3f, 0x68, 0x1e, 0x51, 0x43, 0x69, 0xf0, 0xdf, 0xba, 0x5c, 0xde, 0x16, 0x53, 0x20, 0xee, 0x10, 0xa9, 0x6e, 0xb1, 0xfc, }; static const unsigned char hmac_sha384_1042_msg[] = { 0x5a, 0xbd, }; static const unsigned char hmac_sha384_1042_tag[] = { 0xcc, 0xc2, 0x92, 0x5f, 0x16, 0x4a, 0x7d, 0x96, 0x62, 0xf1, 0xe7, 0x6b, 0xca, 0xf6, 0x34, 0x54, 0x92, 0xbb, 0x09, 0x1d, 0x4d, 0x2d, 0x77, 0x5a, 0xf2, 0x17, 0x8a, 0x4b, 0xcc, 0x1c, 0xa2, 0x1d, 0xcf, 0x8b, 0x3b, 0xf8, 0xf0, 0x56, 0x82, 0x37, 0x70, 0x78, 0x2f, 0x25, 0xa4, 0x19, 0xbb, 0x3e, }; static const wycheproof_hmac_test hmac_sha384_1042 = { .name = "hmac_sha384_1042", .hash = SHA384, .key = hmac_sha384_1042_key, .keylen = 48, .msg = hmac_sha384_1042_msg, .msglen = 2, .tag = hmac_sha384_1042_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1043 for HMAC, tcId is 4 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1043_key[] = { 0x29, 0x28, 0xd4, 0x65, 0xd9, 0x2f, 0xa4, 0x00, 0x72, 0xca, 0x9d, 0x67, 0x76, 0x1b, 0xe6, 0x6e, 0x49, 0x17, 0x55, 0xe4, 0x34, 0x99, 0x00, 0x3c, 0x10, 0x57, 0xd3, 0xbe, 0xc8, 0x70, 0xf2, 0x55, 0x12, 0x6c, 0x36, 0x58, 0xd0, 0xd8, 0xa0, 0xc7, 0xd2, 0x07, 0xdf, 0x87, 0x10, 0x03, 0x7c, 0xa7, }; static const unsigned char hmac_sha384_1043_msg[] = { 0xc4, 0x05, 0xae, }; static const unsigned char hmac_sha384_1043_tag[] = { 0xd9, 0xe1, 0x9c, 0x67, 0x2a, 0x46, 0x6e, 0x4c, 0x83, 0xa8, 0x49, 0x90, 0x57, 0x28, 0xc4, 0xbe, 0x1d, 0xb9, 0x9b, 0xdd, 0x26, 0x09, 0x46, 0xd9, 0xff, 0x52, 0x93, 0x97, 0x79, 0x00, 0x2d, 0xcc, 0x46, 0x0c, 0x57, 0x6f, 0x02, 0xb4, 0x0d, 0xda, 0x07, 0x17, 0x18, 0x2b, 0xe9, 0x6b, 0x54, 0x11, }; static const wycheproof_hmac_test hmac_sha384_1043 = { .name = "hmac_sha384_1043", .hash = SHA384, .key = hmac_sha384_1043_key, .keylen = 48, .msg = hmac_sha384_1043_msg, .msglen = 3, .tag = hmac_sha384_1043_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1044 for HMAC, tcId is 5 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1044_key[] = { 0x68, 0x6a, 0x37, 0x30, 0x08, 0x5c, 0xc9, 0x44, 0xfc, 0xeb, 0x14, 0x16, 0x28, 0x41, 0x98, 0x18, 0xe6, 0x62, 0xfe, 0x21, 0xe5, 0x2b, 0xea, 0x27, 0x48, 0xf3, 0xb7, 0x04, 0xf8, 0x0c, 0xe8, 0x01, 0x08, 0x6d, 0xb1, 0xe3, 0x06, 0x89, 0x17, 0xb2, 0x42, 0xe6, 0x2b, 0x4d, 0x6e, 0x6e, 0xd6, 0x85, }; static const unsigned char hmac_sha384_1044_msg[] = { 0x66, 0x01, 0xc6, 0x83, }; static const unsigned char hmac_sha384_1044_tag[] = { 0x10, 0xdc, 0x39, 0x10, 0x39, 0x83, 0xb3, 0xa6, 0xbe, 0x37, 0x6a, 0x8e, 0xda, 0x7b, 0x6f, 0x36, 0x3c, 0xb9, 0x1e, 0xfe, 0x11, 0xb0, 0x27, 0xa6, 0x24, 0x40, 0xae, 0x13, 0x6b, 0xd6, 0x6f, 0x98, 0xb0, 0xa1, 0xd8, 0xb8, 0xf2, 0x39, 0x90, 0x99, 0x49, 0x20, 0x21, 0x07, 0x6a, 0xfa, 0x14, 0xa0, }; static const wycheproof_hmac_test hmac_sha384_1044 = { .name = "hmac_sha384_1044", .hash = SHA384, .key = hmac_sha384_1044_key, .keylen = 48, .msg = hmac_sha384_1044_msg, .msglen = 4, .tag = hmac_sha384_1044_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1045 for HMAC, tcId is 6 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1045_key[] = { 0xf2, 0x2d, 0x86, 0x7b, 0x97, 0x2b, 0x23, 0x2e, 0x3f, 0x44, 0x4a, 0x48, 0x8d, 0xd7, 0x94, 0xd1, 0x70, 0x80, 0x7c, 0x70, 0xeb, 0x65, 0x0f, 0x95, 0x2b, 0x61, 0x77, 0x59, 0x6f, 0x76, 0xc5, 0x58, 0xa5, 0xd8, 0x60, 0xd6, 0xf7, 0xbe, 0x0b, 0xe9, 0xe6, 0x66, 0xf9, 0xbd, 0x53, 0x73, 0x2f, 0x8d, }; static const unsigned char hmac_sha384_1045_msg[] = { 0x15, 0xb2, 0x93, 0x77, 0xe0, }; static const unsigned char hmac_sha384_1045_tag[] = { 0xe0, 0x2e, 0x4e, 0x20, 0xb5, 0xf1, 0xe5, 0xf0, 0x69, 0x13, 0xbc, 0x97, 0x45, 0xc9, 0x06, 0x9c, 0x09, 0xec, 0x13, 0x69, 0xf1, 0xa2, 0x96, 0xad, 0x1d, 0x07, 0xc0, 0x4c, 0xc4, 0xf9, 0xcb, 0x47, 0x41, 0x24, 0x8d, 0x7b, 0xa0, 0x97, 0xcd, 0x3b, 0xa0, 0xe7, 0x5d, 0x24, 0x09, 0xd6, 0xa0, 0x1b, }; static const wycheproof_hmac_test hmac_sha384_1045 = { .name = "hmac_sha384_1045", .hash = SHA384, .key = hmac_sha384_1045_key, .keylen = 48, .msg = hmac_sha384_1045_msg, .msglen = 5, .tag = hmac_sha384_1045_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1046 for HMAC, tcId is 7 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1046_key[] = { 0x3a, 0xc9, 0xab, 0xd5, 0x3d, 0xbd, 0x0f, 0xbb, 0x89, 0x1f, 0x9b, 0x5e, 0x16, 0xdd, 0x45, 0xdf, 0x99, 0x4e, 0x52, 0x83, 0x52, 0x78, 0x32, 0x70, 0x71, 0x38, 0xfc, 0x27, 0x12, 0xba, 0xd9, 0xe3, 0x47, 0x61, 0xe7, 0xd9, 0xc6, 0xd0, 0x5d, 0x46, 0xf2, 0xc8, 0x32, 0x3d, 0xdb, 0x0e, 0xfe, 0x99, }; static const unsigned char hmac_sha384_1046_msg[] = { 0x5a, 0x34, 0x15, 0x5b, 0x11, 0x15, }; static const unsigned char hmac_sha384_1046_tag[] = { 0x78, 0xc5, 0x3d, 0xd1, 0xa2, 0x43, 0x11, 0x74, 0x62, 0x8f, 0x5f, 0x48, 0x67, 0xfa, 0x77, 0x7a, 0xfa, 0x6d, 0xf1, 0xb3, 0x62, 0x69, 0xbb, 0xa1, 0x14, 0xd0, 0x16, 0xd1, 0x06, 0x5f, 0xcb, 0x02, 0x11, 0x70, 0xba, 0xad, 0x09, 0xb4, 0xa5, 0x28, 0xf4, 0x05, 0x73, 0x90, 0x3a, 0x65, 0xf5, 0x40, }; static const wycheproof_hmac_test hmac_sha384_1046 = { .name = "hmac_sha384_1046", .hash = SHA384, .key = hmac_sha384_1046_key, .keylen = 48, .msg = hmac_sha384_1046_msg, .msglen = 6, .tag = hmac_sha384_1046_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1047 for HMAC, tcId is 8 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1047_key[] = { 0xae, 0x3a, 0xa9, 0x4f, 0xdd, 0x35, 0xe2, 0xbe, 0xf4, 0x04, 0x72, 0xd2, 0x9b, 0xda, 0xd3, 0xa4, 0x09, 0x84, 0x0e, 0xa4, 0x41, 0xc3, 0xd7, 0x02, 0x5c, 0xd7, 0x2f, 0x3e, 0x81, 0xff, 0x56, 0xda, 0x60, 0x21, 0x61, 0xd8, 0x4b, 0x23, 0xd1, 0x63, 0x40, 0x61, 0x38, 0x5b, 0xe3, 0x0c, 0x5b, 0xbd, }; static const unsigned char hmac_sha384_1047_msg[] = { 0x8a, 0x14, 0x0d, 0x78, 0x1e, 0x71, 0x91, }; static const unsigned char hmac_sha384_1047_tag[] = { 0xfd, 0x22, 0xba, 0x89, 0x6c, 0xb1, 0x14, 0x7b, 0xb8, 0x6f, 0x8a, 0xd5, 0x1c, 0x25, 0x3b, 0x79, 0x26, 0x57, 0xc0, 0xbe, 0xcc, 0x91, 0x3e, 0x90, 0x10, 0x4d, 0xa0, 0xf1, 0x39, 0xf9, 0xb0, 0x8c, 0x91, 0x69, 0x70, 0x6f, 0x15, 0x31, 0xa2, 0xc6, 0xc0, 0x3d, 0x6b, 0xd7, 0x2a, 0x77, 0xef, 0xf2, }; static const wycheproof_hmac_test hmac_sha384_1047 = { .name = "hmac_sha384_1047", .hash = SHA384, .key = hmac_sha384_1047_key, .keylen = 48, .msg = hmac_sha384_1047_msg, .msglen = 7, .tag = hmac_sha384_1047_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1048 for HMAC, tcId is 9 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1048_key[] = { 0x44, 0xb7, 0x98, 0x52, 0xca, 0xbc, 0xf3, 0xfe, 0x93, 0xd2, 0xff, 0xf5, 0x5d, 0x2a, 0xfe, 0x6a, 0x46, 0xc3, 0x5b, 0x7a, 0xd1, 0x95, 0x4c, 0xe0, 0x88, 0x8d, 0xe7, 0xb4, 0x59, 0xb9, 0x82, 0x72, 0x2f, 0xaf, 0x8b, 0x49, 0x0e, 0x6b, 0x00, 0xe7, 0xbc, 0xab, 0xbd, 0x36, 0xf1, 0x84, 0x43, 0xf5, }; static const unsigned char hmac_sha384_1048_msg[] = { 0x93, 0x98, 0xcd, 0x25, 0x1d, 0xea, 0xfe, 0x8b, }; static const unsigned char hmac_sha384_1048_tag[] = { 0x56, 0x12, 0x8f, 0xb4, 0x38, 0xa9, 0x3f, 0x6f, 0x48, 0xf4, 0x7c, 0x0f, 0x4c, 0x75, 0x49, 0xf8, 0x00, 0x8a, 0x8e, 0x69, 0xbb, 0xdb, 0xf0, 0x88, 0x6e, 0xc4, 0x0f, 0x86, 0xe7, 0x87, 0x00, 0x34, 0xef, 0x90, 0x90, 0xd2, 0xb0, 0x40, 0x57, 0x39, 0x1f, 0x1d, 0xef, 0x5b, 0x25, 0xe8, 0xf0, 0xad, }; static const wycheproof_hmac_test hmac_sha384_1048 = { .name = "hmac_sha384_1048", .hash = SHA384, .key = hmac_sha384_1048_key, .keylen = 48, .msg = hmac_sha384_1048_msg, .msglen = 8, .tag = hmac_sha384_1048_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1049 for HMAC, tcId is 10 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1049_key[] = { 0x03, 0xfe, 0xd2, 0xf5, 0x79, 0xa3, 0xeb, 0xde, 0xce, 0xcf, 0xb1, 0x84, 0xeb, 0xe2, 0x98, 0x48, 0x76, 0x11, 0x33, 0x99, 0xc4, 0xa5, 0x93, 0xd9, 0x8b, 0x5f, 0x5e, 0x60, 0x6d, 0xd3, 0x30, 0xfb, 0x39, 0x4c, 0x28, 0x5d, 0x9e, 0xad, 0x60, 0x17, 0x48, 0x25, 0x9b, 0x49, 0x33, 0x35, 0xf8, 0xe5, }; static const unsigned char hmac_sha384_1049_msg[] = { 0x18, 0xd8, 0x79, 0xb1, 0xf6, 0x3d, 0xf3, 0xac, 0x7a, }; static const unsigned char hmac_sha384_1049_tag[] = { 0xa0, 0xe3, 0xb5, 0x66, 0x0e, 0xeb, 0x5f, 0xc4, 0xa5, 0xdd, 0x48, 0xe7, 0x25, 0xb0, 0x9a, 0x0e, 0x28, 0x2b, 0x22, 0xbb, 0xe2, 0x69, 0x3d, 0x8b, 0x89, 0x3d, 0xdf, 0x0f, 0x21, 0x16, 0x45, 0x0e, 0x08, 0x75, 0x92, 0x54, 0x07, 0xe9, 0x09, 0xfd, 0xe0, 0xf1, 0xf7, 0x28, 0xf6, 0x08, 0xfb, 0xa9, }; static const wycheproof_hmac_test hmac_sha384_1049 = { .name = "hmac_sha384_1049", .hash = SHA384, .key = hmac_sha384_1049_key, .keylen = 48, .msg = hmac_sha384_1049_msg, .msglen = 9, .tag = hmac_sha384_1049_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1050 for HMAC, tcId is 11 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1050_key[] = { 0xf4, 0xef, 0x48, 0xbf, 0x40, 0x56, 0xd3, 0x9d, 0xbb, 0xa4, 0x15, 0x40, 0x18, 0xc6, 0x3b, 0xdf, 0x29, 0x42, 0x0b, 0x99, 0x91, 0xea, 0x59, 0x4f, 0xf0, 0x5e, 0x3c, 0xc1, 0xcb, 0x02, 0xe1, 0x76, 0xd5, 0x4b, 0xa0, 0x38, 0xa6, 0xb7, 0x86, 0x92, 0x51, 0x9d, 0x67, 0x88, 0xe4, 0x95, 0xbb, 0xab, }; static const unsigned char hmac_sha384_1050_msg[] = { 0x0a, 0x5d, 0xe1, 0x3c, 0xd9, 0xba, 0x31, 0xc9, 0x44, 0x86, }; static const unsigned char hmac_sha384_1050_tag[] = { 0xe9, 0xa1, 0x21, 0x9e, 0x86, 0x98, 0x3d, 0x69, 0xe3, 0x36, 0x06, 0x8b, 0x28, 0x03, 0x09, 0xf9, 0x74, 0xab, 0x61, 0xf2, 0x59, 0x68, 0xfc, 0x63, 0x52, 0x32, 0x4b, 0xa4, 0x9c, 0x36, 0xce, 0x42, 0xc5, 0x78, 0x67, 0x6a, 0x3a, 0x31, 0xef, 0x11, 0xe9, 0x60, 0xd6, 0x77, 0x13, 0x86, 0x65, 0x0e, }; static const wycheproof_hmac_test hmac_sha384_1050 = { .name = "hmac_sha384_1050", .hash = SHA384, .key = hmac_sha384_1050_key, .keylen = 48, .msg = hmac_sha384_1050_msg, .msglen = 10, .tag = hmac_sha384_1050_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1051 for HMAC, tcId is 12 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1051_key[] = { 0xfc, 0x77, 0x1f, 0x7c, 0xcd, 0x49, 0x9a, 0x1e, 0xd6, 0x33, 0xd8, 0x68, 0x76, 0xd7, 0x07, 0xb5, 0xf1, 0xd5, 0x3c, 0x6b, 0xcd, 0xf2, 0x1a, 0xa2, 0x90, 0x77, 0x66, 0xab, 0x3c, 0xa7, 0xfa, 0x6c, 0xdd, 0x6a, 0x9b, 0x98, 0x1b, 0x1a, 0x84, 0xa5, 0x28, 0xe8, 0x14, 0x44, 0x30, 0x3f, 0x10, 0x57, }; static const unsigned char hmac_sha384_1051_msg[] = { 0x03, 0xba, 0x11, 0xf3, 0xf3, 0x17, 0x3b, 0x85, 0x22, 0x6b, 0x25, }; static const unsigned char hmac_sha384_1051_tag[] = { 0xcf, 0xb4, 0x97, 0x1d, 0x54, 0x49, 0xdb, 0x36, 0x4e, 0x2c, 0x8d, 0x0d, 0x42, 0x9a, 0x07, 0x67, 0x05, 0x0d, 0x48, 0x0a, 0x53, 0x97, 0xf0, 0xdc, 0xc7, 0x42, 0x94, 0xf5, 0x2e, 0xa9, 0x62, 0x60, 0xa5, 0x7f, 0xe6, 0xca, 0xd1, 0x44, 0x09, 0xad, 0x67, 0xda, 0x6f, 0xbe, 0xbf, 0x2d, 0xa0, 0xd8, }; static const wycheproof_hmac_test hmac_sha384_1051 = { .name = "hmac_sha384_1051", .hash = SHA384, .key = hmac_sha384_1051_key, .keylen = 48, .msg = hmac_sha384_1051_msg, .msglen = 11, .tag = hmac_sha384_1051_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1052 for HMAC, tcId is 13 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1052_key[] = { 0xb3, 0x99, 0x9d, 0xe6, 0x80, 0xb1, 0x15, 0x50, 0xe1, 0x86, 0x31, 0xc8, 0x19, 0x9f, 0x7e, 0xb8, 0xa7, 0x4e, 0x21, 0xbd, 0xc9, 0xd9, 0x7f, 0x78, 0x12, 0x45, 0xc2, 0xaf, 0x19, 0xf8, 0x54, 0x97, 0xd9, 0xf3, 0x8b, 0x25, 0x0a, 0x56, 0x4e, 0x48, 0x65, 0x0f, 0xd0, 0x0b, 0xe3, 0x65, 0xf1, 0x55, }; static const unsigned char hmac_sha384_1052_msg[] = { 0x9c, 0x65, 0x8c, 0xb5, 0xe6, 0x01, 0xd8, 0x5d, 0xc3, 0x85, 0x78, 0x63, }; static const unsigned char hmac_sha384_1052_tag[] = { 0xd5, 0x47, 0xe4, 0xcb, 0xd5, 0x6e, 0x82, 0xb4, 0x7d, 0x2e, 0xc9, 0x3e, 0xeb, 0x6b, 0x34, 0x92, 0x4e, 0xbd, 0xa4, 0x61, 0xfb, 0x60, 0xe4, 0x75, 0xbf, 0x32, 0x8d, 0x23, 0x68, 0x61, 0x8f, 0x55, 0xfb, 0xf7, 0xb0, 0xe2, 0xeb, 0x1f, 0xf5, 0x42, 0xc4, 0xeb, 0x7e, 0xef, 0xbf, 0xc8, 0xbd, 0x2b, }; static const wycheproof_hmac_test hmac_sha384_1052 = { .name = "hmac_sha384_1052", .hash = SHA384, .key = hmac_sha384_1052_key, .keylen = 48, .msg = hmac_sha384_1052_msg, .msglen = 12, .tag = hmac_sha384_1052_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1053 for HMAC, tcId is 14 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1053_key[] = { 0x88, 0x00, 0x5a, 0x62, 0x86, 0x4e, 0xa6, 0x99, 0xe1, 0x50, 0x96, 0x16, 0xec, 0x48, 0x03, 0x3e, 0x84, 0xd2, 0xe2, 0xa1, 0x3b, 0x8b, 0xc2, 0xe8, 0xa7, 0x6f, 0x2e, 0xcc, 0xbd, 0xb2, 0x07, 0xa9, 0x5a, 0xc8, 0xe2, 0xf5, 0xb5, 0xa7, 0x03, 0xb2, 0x2a, 0x0b, 0x57, 0x1e, 0x8a, 0xcc, 0x59, 0x9a, }; static const unsigned char hmac_sha384_1053_msg[] = { 0x5a, 0x94, 0xf8, 0x45, 0x41, 0xa7, 0x94, 0xbf, 0x23, 0xd7, 0x2d, 0xb1, 0x6d, }; static const unsigned char hmac_sha384_1053_tag[] = { 0xd6, 0xb7, 0x3e, 0xe6, 0x7e, 0x88, 0xa2, 0x0f, 0xce, 0xb5, 0x52, 0x0b, 0xe9, 0x25, 0x94, 0xda, 0xf1, 0xb3, 0x78, 0x6c, 0x71, 0x87, 0x53, 0x5c, 0xcb, 0x1f, 0x0b, 0x92, 0x6d, 0xae, 0x11, 0xad, 0xde, 0x6e, 0x86, 0x97, 0xba, 0x80, 0x3b, 0x15, 0x90, 0x19, 0x84, 0x9d, 0xf3, 0xc9, 0xd2, 0xc7, }; static const wycheproof_hmac_test hmac_sha384_1053 = { .name = "hmac_sha384_1053", .hash = SHA384, .key = hmac_sha384_1053_key, .keylen = 48, .msg = hmac_sha384_1053_msg, .msglen = 13, .tag = hmac_sha384_1053_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1054 for HMAC, tcId is 15 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1054_key[] = { 0xb1, 0xcb, 0xda, 0x2c, 0x9a, 0x12, 0xf9, 0x23, 0x15, 0xa5, 0x10, 0x1a, 0xef, 0x31, 0x1e, 0x99, 0xd6, 0xdb, 0x00, 0x2b, 0x0e, 0x04, 0xfb, 0x53, 0xc5, 0x01, 0x06, 0xaa, 0x4d, 0x28, 0xe9, 0xa3, 0x46, 0x69, 0x7b, 0xa9, 0x70, 0x84, 0x57, 0x2e, 0xea, 0x56, 0xcc, 0xfc, 0x4a, 0xd7, 0xe5, 0x72, }; static const unsigned char hmac_sha384_1054_msg[] = { 0xce, 0x12, 0xc0, 0xc7, 0x8e, 0x3f, 0x6b, 0x27, 0x6a, 0xc5, 0x6e, 0xd7, 0x43, 0x5e, }; static const unsigned char hmac_sha384_1054_tag[] = { 0x5c, 0x08, 0x02, 0xcd, 0x0e, 0xd8, 0x23, 0x80, 0xe4, 0xc2, 0xa6, 0x1d, 0x14, 0x6e, 0xd7, 0x27, 0x62, 0x61, 0x3d, 0xe8, 0x9e, 0xb4, 0xab, 0x9f, 0xe7, 0x1d, 0xa9, 0xad, 0x3d, 0x79, 0xe1, 0xd2, 0x32, 0x1c, 0xae, 0x18, 0x62, 0x92, 0xf7, 0xc5, 0x2a, 0xb6, 0x39, 0xd3, 0xba, 0x6a, 0xa8, 0x5a, }; static const wycheproof_hmac_test hmac_sha384_1054 = { .name = "hmac_sha384_1054", .hash = SHA384, .key = hmac_sha384_1054_key, .keylen = 48, .msg = hmac_sha384_1054_msg, .msglen = 14, .tag = hmac_sha384_1054_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1055 for HMAC, tcId is 16 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1055_key[] = { 0x08, 0x51, 0x7e, 0x80, 0x14, 0xe0, 0x0d, 0xb5, 0xc3, 0x7f, 0x2a, 0x20, 0xf9, 0x87, 0xea, 0x2e, 0xc5, 0x2e, 0x79, 0x38, 0xde, 0x01, 0x8a, 0xd6, 0xbe, 0x25, 0x6b, 0xa2, 0x23, 0x68, 0x04, 0x14, 0x4a, 0xd2, 0xa1, 0xbc, 0xc2, 0x42, 0x73, 0x88, 0x62, 0xb4, 0x06, 0x47, 0x00, 0x7e, 0x0a, 0x2c, }; static const unsigned char hmac_sha384_1055_msg[] = { 0x21, 0xe2, 0xa0, 0xa1, 0x67, 0x78, 0x9a, 0x6b, 0x72, 0x2d, 0x17, 0x37, 0xd9, 0x2f, 0x8b, }; static const unsigned char hmac_sha384_1055_tag[] = { 0x22, 0x64, 0xd3, 0xc9, 0xb8, 0x35, 0xae, 0xdf, 0x69, 0x9d, 0x5f, 0xbf, 0xc0, 0x5d, 0x46, 0xf0, 0x85, 0x59, 0x14, 0x41, 0xdf, 0x75, 0xaa, 0x2b, 0x28, 0x73, 0xf6, 0xc8, 0xa1, 0x1a, 0x08, 0x56, 0xa2, 0xb7, 0x9a, 0xe1, 0x1e, 0xa0, 0xa9, 0x16, 0x09, 0xdb, 0xd5, 0x64, 0xa0, 0xbe, 0xd4, 0x56, }; static const wycheproof_hmac_test hmac_sha384_1055 = { .name = "hmac_sha384_1055", .hash = SHA384, .key = hmac_sha384_1055_key, .keylen = 48, .msg = hmac_sha384_1055_msg, .msglen = 15, .tag = hmac_sha384_1055_tag, .taglen = 48, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1056 for HMAC, tcId is 17 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1056_key[] = { 0x50, 0x3d, 0x74, 0x78, 0xa7, 0x73, 0xb6, 0x94, 0xd6, 0xe5, 0x52, 0xc9, 0x70, 0x3c, 0xc8, 0xbc, 0x56, 0xfd, 0x49, 0xfa, 0xfc, 0x9a, 0x17, 0xca, 0xb8, 0xb0, 0x33, 0x2d, 0xca, 0x8d, 0x49, 0x33, 0x6f, 0xa7, 0xe9, 0xec, 0x2b, 0xcb, 0x56, 0x25, 0x3f, 0xe5, 0xbb, 0x50, 0x4e, 0x3e, 0x7f, 0x7f, }; static const unsigned char hmac_sha384_1056_msg[] = { 0xd9, 0x6e, 0x6f, 0xed, 0x89, 0x3a, 0xdd, 0xfd, 0x92, 0x37, 0xc8, 0x1c, 0x4f, 0x4e, 0x34, 0x1b, }; static const unsigned char hmac_sha384_1056_tag[] = { 0x19, 0x38, 0x97, 0x66, 0x78, 0x99, 0x12, 0x26, 0x0f, 0x3f, 0x97, 0x57, 0xdf, 0x36, 0x51, 0x66, 0x38, 0x29, 0xc3, 0x58, 0xbb, 0x48, 0xb2, 0x2c, 0x1c, 0x63, 0x13, 0x20, 0x70, 0xdf, 0x31, 0x89, 0x05, 0xbe, 0xff, 0xd4, 0x5f, 0x51, 0xe4, 0xdf, 0xcb, 0x3e, 0x78, 0x5f, 0x44, 0xcf, 0x91, 0x06, }; static const wycheproof_hmac_test hmac_sha384_1056 = { .name = "hmac_sha384_1056", .hash = SHA384, .key = hmac_sha384_1056_key, .keylen = 48, .msg = hmac_sha384_1056_msg, .msglen = 16, .tag = hmac_sha384_1056_tag, .taglen = 48, .result = 1, .comment = ", tcId is 17 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1057 for HMAC, tcId is 18 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1057_key[] = { 0x41, 0x34, 0x1b, 0xab, 0x90, 0x2e, 0x76, 0x7d, 0x4d, 0x19, 0x64, 0xc0, 0xac, 0xfe, 0xcf, 0x46, 0xef, 0xf1, 0xb0, 0x2b, 0x64, 0x55, 0xbc, 0xb2, 0x09, 0x7d, 0xe9, 0xc1, 0x54, 0xbe, 0x1f, 0x66, 0x7f, 0x21, 0xbe, 0x07, 0x6d, 0xe1, 0x8c, 0xd2, 0xc1, 0x5c, 0x00, 0x58, 0x96, 0xfc, 0xa8, 0x7f, }; static const unsigned char hmac_sha384_1057_msg[] = { 0x4c, 0x43, 0xac, 0x7d, 0xe3, 0x63, 0x1c, 0xc8, 0x6f, 0x4d, 0xa7, 0x2f, 0xe6, 0xb6, 0xa5, 0x52, 0xf1, }; static const unsigned char hmac_sha384_1057_tag[] = { 0x3c, 0x31, 0x04, 0xf2, 0x4b, 0x70, 0x70, 0xcc, 0x32, 0x77, 0xd9, 0xae, 0x64, 0x0d, 0x41, 0x62, 0x98, 0xfc, 0x91, 0x7a, 0x0c, 0x1c, 0xdc, 0x3c, 0x2e, 0x7b, 0x6d, 0xa7, 0x57, 0x06, 0xfd, 0x2a, 0xe2, 0x34, 0xef, 0xd5, 0x51, 0xaf, 0x12, 0xae, 0x29, 0x14, 0x47, 0x04, 0x79, 0x3e, 0x2f, 0x6a, }; static const wycheproof_hmac_test hmac_sha384_1057 = { .name = "hmac_sha384_1057", .hash = SHA384, .key = hmac_sha384_1057_key, .keylen = 48, .msg = hmac_sha384_1057_msg, .msglen = 17, .tag = hmac_sha384_1057_tag, .taglen = 48, .result = 1, .comment = ", tcId is 18 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1058 for HMAC, tcId is 19 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1058_key[] = { 0xc2, 0xf8, 0x3b, 0xe1, 0xac, 0xce, 0x7b, 0x89, 0xa5, 0xf9, 0xe9, 0xea, 0x7e, 0x4c, 0x4f, 0x8b, 0x0f, 0x43, 0x19, 0x98, 0x6f, 0xbe, 0x47, 0x9f, 0xa3, 0xb4, 0xa3, 0xc2, 0x98, 0x16, 0x83, 0x62, 0x39, 0x3b, 0x56, 0xea, 0x03, 0xb5, 0xce, 0xf7, 0x7f, 0x48, 0xe5, 0xa7, 0x2a, 0xbe, 0x6d, 0x08, }; static const unsigned char hmac_sha384_1058_msg[] = { 0x8d, 0xd0, 0xcd, 0x78, 0x6c, 0xd8, 0x00, 0xff, 0xeb, 0xec, 0x09, 0x87, 0x28, 0x92, 0x3d, 0x69, 0x24, 0x9d, 0x32, 0x23, 0xc4, 0xc5, 0x95, 0xcb, }; static const unsigned char hmac_sha384_1058_tag[] = { 0x75, 0x1c, 0x6c, 0x7d, 0x00, 0xfe, 0xf5, 0xe4, 0xed, 0xc9, 0x93, 0x91, 0x5f, 0xba, 0x69, 0x49, 0x43, 0xa7, 0xee, 0x3a, 0x2c, 0x8e, 0x5b, 0x70, 0x0d, 0x0e, 0xe5, 0x36, 0xbf, 0x85, 0xfb, 0x11, 0x7a, 0x9c, 0xd6, 0xc4, 0x56, 0x48, 0x5c, 0xd6, 0x70, 0xf7, 0xa0, 0xb4, 0x90, 0xc8, 0x3e, 0x61, }; static const wycheproof_hmac_test hmac_sha384_1058 = { .name = "hmac_sha384_1058", .hash = SHA384, .key = hmac_sha384_1058_key, .keylen = 48, .msg = hmac_sha384_1058_msg, .msglen = 24, .tag = hmac_sha384_1058_tag, .taglen = 48, .result = 1, .comment = ", tcId is 19 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1059 for HMAC, tcId is 20 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1059_key[] = { 0x6b, 0xd2, 0xae, 0xe9, 0xdd, 0x98, 0xd6, 0xb6, 0x60, 0x9f, 0xce, 0x82, 0x18, 0x1b, 0x10, 0xc2, 0x0b, 0xba, 0x86, 0x1d, 0xa6, 0x8a, 0x15, 0x90, 0x58, 0x6f, 0xab, 0x08, 0xc5, 0xe9, 0xe9, 0x0f, 0xf5, 0x84, 0x04, 0x7d, 0xb4, 0x76, 0x08, 0x28, 0x64, 0x3f, 0xea, 0x38, 0x08, 0x71, 0x60, 0xe4, }; static const unsigned char hmac_sha384_1059_msg[] = { 0x33, 0x23, 0x6a, 0x9d, 0xe6, 0x03, 0xc1, 0xe4, 0xf5, 0xe1, 0x11, 0x64, 0x22, 0x47, 0x40, 0x62, 0x7d, 0x10, 0xf6, 0x00, 0x8e, 0xb7, 0x3e, 0xc2, 0x64, 0x23, 0x21, 0xbf, 0x0b, 0x82, 0xd5, 0x79, }; static const unsigned char hmac_sha384_1059_tag[] = { 0xe4, 0xcd, 0x8b, 0x88, 0x68, 0xbb, 0x07, 0x8e, 0xd5, 0xd6, 0x93, 0x8e, 0x40, 0xd9, 0xff, 0x4b, 0xf6, 0x1a, 0x49, 0x94, 0xbe, 0x40, 0xa5, 0xf2, 0xb5, 0x44, 0x64, 0x63, 0xe5, 0xdb, 0x90, 0x51, 0x6b, 0xcc, 0xdd, 0x19, 0xf1, 0x6c, 0x92, 0xe3, 0xf8, 0x39, 0xb9, 0xd6, 0xde, 0x68, 0xb2, 0xa9, }; static const wycheproof_hmac_test hmac_sha384_1059 = { .name = "hmac_sha384_1059", .hash = SHA384, .key = hmac_sha384_1059_key, .keylen = 48, .msg = hmac_sha384_1059_msg, .msglen = 32, .tag = hmac_sha384_1059_tag, .taglen = 48, .result = 1, .comment = ", tcId is 20 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1060 for HMAC, tcId is 21 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1060_key[] = { 0x2f, 0x98, 0xba, 0x2c, 0xea, 0xad, 0xc5, 0xba, 0x08, 0x88, 0x0a, 0x35, 0xcb, 0x00, 0x80, 0xdc, 0x87, 0x0a, 0x57, 0x34, 0xa7, 0x82, 0xeb, 0xe3, 0x1c, 0x4b, 0xab, 0x10, 0x0f, 0xf8, 0x78, 0x6d, 0xcc, 0x3b, 0xe6, 0xde, 0x18, 0x48, 0x2e, 0xa5, 0xd1, 0xb3, 0xbf, 0x14, 0xae, 0xab, 0xb4, 0x70, }; static const unsigned char hmac_sha384_1060_msg[] = { 0x2d, 0x74, 0xa6, 0x6d, 0xac, 0xf1, 0x2e, 0xdb, 0x85, 0xef, 0x30, 0x73, 0xfe, 0xaf, 0xd1, 0x22, 0x88, 0x9c, 0xb6, 0x34, 0xad, 0xd0, 0x0f, 0xf0, 0x39, 0x5d, 0x22, 0x4b, 0x4f, 0xf8, 0xb5, 0xd5, 0xd6, 0x7c, 0xa6, 0x41, 0x9b, 0x68, 0x26, 0xab, 0xff, 0xdb, 0x41, 0xba, 0xb4, 0x27, 0xd5, }; static const unsigned char hmac_sha384_1060_tag[] = { 0xa8, 0xea, 0x72, 0x10, 0x08, 0x59, 0xf4, 0xb7, 0xb6, 0xf2, 0xfe, 0x59, 0x62, 0x48, 0xf1, 0x72, 0x9b, 0xcd, 0xf0, 0x60, 0x6c, 0x90, 0x0a, 0xb5, 0x2e, 0x51, 0xea, 0xb5, 0x48, 0xd2, 0x6e, 0x1e, 0xb6, 0x34, 0xa4, 0x2e, 0x5f, 0xc7, 0xcc, 0xc1, 0x83, 0x56, 0xc0, 0xd2, 0x83, 0x59, 0x7e, 0xe2, }; static const wycheproof_hmac_test hmac_sha384_1060 = { .name = "hmac_sha384_1060", .hash = SHA384, .key = hmac_sha384_1060_key, .keylen = 48, .msg = hmac_sha384_1060_msg, .msglen = 47, .tag = hmac_sha384_1060_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1061 for HMAC, tcId is 22 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1061_key[] = { 0x5e, 0x5f, 0x60, 0xe4, 0x0d, 0x84, 0xc7, 0xca, 0x26, 0x08, 0xaf, 0x3b, 0xcc, 0x6e, 0x04, 0xab, 0xc5, 0xf8, 0xb7, 0xca, 0x73, 0x0a, 0x78, 0xaf, 0x7f, 0x6f, 0x03, 0x2e, 0x5a, 0x15, 0x01, 0x69, 0x5b, 0xd9, 0x1f, 0x3b, 0xeb, 0xb2, 0x85, 0x90, 0xaf, 0x1d, 0xb9, 0x0d, 0x83, 0x90, 0xca, 0x58, }; static const unsigned char hmac_sha384_1061_msg[] = { 0x2e, 0xfe, 0x6a, 0x14, 0xea, 0x8d, 0x67, 0x9e, 0x62, 0xdb, 0xce, 0xdf, 0x35, 0xe6, 0x18, 0x52, 0x27, 0x8c, 0x83, 0xc5, 0x4a, 0xdb, 0xe1, 0xf1, 0xc7, 0x2c, 0xb1, 0xa7, 0x46, 0xb1, 0x1c, 0xff, 0x8c, 0xb4, 0xfc, 0x3a, 0x2c, 0x3a, 0xcd, 0x44, 0x25, 0x5d, 0x51, 0xc0, 0x20, 0xca, 0x6d, 0x47, }; static const unsigned char hmac_sha384_1061_tag[] = { 0x6e, 0x8c, 0x95, 0xa4, 0x09, 0x7e, 0xa1, 0x3d, 0x06, 0x4e, 0xd1, 0x08, 0x09, 0xa3, 0x3b, 0x56, 0x9a, 0x6a, 0x84, 0x20, 0x51, 0x58, 0xbd, 0x69, 0x2f, 0xf8, 0x2b, 0xc4, 0xb7, 0x0b, 0x47, 0xa6, 0x0e, 0xd3, 0x32, 0xf2, 0xf5, 0xbc, 0xa5, 0x21, 0x1a, 0x1c, 0xc8, 0x9c, 0x06, 0xf9, 0xc5, 0x95, }; static const wycheproof_hmac_test hmac_sha384_1061 = { .name = "hmac_sha384_1061", .hash = SHA384, .key = hmac_sha384_1061_key, .keylen = 48, .msg = hmac_sha384_1061_msg, .msglen = 48, .tag = hmac_sha384_1061_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1062 for HMAC, tcId is 23 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1062_key[] = { 0xbc, 0x31, 0x0b, 0xc3, 0x91, 0x3d, 0x9f, 0xe5, 0x9e, 0x20, 0x12, 0xa0, 0x58, 0xc9, 0xe1, 0x50, 0x53, 0x4d, 0x25, 0x61, 0x1e, 0x36, 0x20, 0x6c, 0xf0, 0x7c, 0xca, 0xef, 0xe1, 0x53, 0xf3, 0x8e, 0xb0, 0xea, 0xad, 0x99, 0x41, 0xb6, 0x88, 0x3d, 0xfb, 0xce, 0x01, 0xbc, 0xb5, 0x19, 0x60, 0x41, }; static const unsigned char hmac_sha384_1062_msg[] = { 0x9f, 0x07, 0x47, 0xd7, 0x39, 0x6b, 0xfb, 0xe0, 0x1c, 0xf3, 0xe8, 0x53, 0x61, 0xe5, 0x00, 0x85, 0xe0, 0xa9, 0x1a, 0x74, 0x90, 0xb9, 0x94, 0x03, 0x1d, 0x81, 0x85, 0x1b, 0x72, 0x50, 0x65, 0x99, 0x3f, 0x45, 0xda, 0xd0, 0xd6, 0x0d, 0x79, 0x4a, 0xed, 0xec, 0x7b, 0xa5, 0xd9, 0xd6, 0xdb, 0xbe, 0xe4, }; static const unsigned char hmac_sha384_1062_tag[] = { 0x3a, 0x86, 0x49, 0x8f, 0x78, 0xc3, 0xfb, 0x7e, 0xb3, 0xb7, 0xb3, 0xd8, 0x2f, 0x67, 0x7d, 0x2d, 0xfe, 0x01, 0x16, 0x6f, 0xe7, 0x6e, 0x23, 0x20, 0x83, 0x33, 0x4d, 0x74, 0xf1, 0x15, 0x88, 0xfd, 0x08, 0x96, 0x37, 0xc9, 0x47, 0x61, 0xe9, 0xcf, 0xe8, 0x36, 0x43, 0x60, 0x05, 0xde, 0xae, 0xf7, }; static const wycheproof_hmac_test hmac_sha384_1062 = { .name = "hmac_sha384_1062", .hash = SHA384, .key = hmac_sha384_1062_key, .keylen = 48, .msg = hmac_sha384_1062_msg, .msglen = 49, .tag = hmac_sha384_1062_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1063 for HMAC, tcId is 24 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1063_key[] = { 0xdc, 0x77, 0x0c, 0x64, 0xd0, 0x0d, 0x15, 0x6e, 0x43, 0xcb, 0x74, 0x97, 0x0e, 0x3a, 0x1a, 0x2a, 0xd2, 0x8b, 0x6d, 0x9e, 0xc6, 0xb2, 0xb6, 0xe5, 0xac, 0x3e, 0x35, 0x6a, 0x99, 0xf8, 0x79, 0xcb, 0x62, 0x0f, 0x00, 0x34, 0x0c, 0x04, 0x4c, 0xc1, 0xf3, 0x1b, 0xdc, 0xcf, 0xa0, 0xdb, 0xd1, 0x77, }; static const unsigned char hmac_sha384_1063_msg[] = { 0x40, 0x3f, 0xd8, 0xe3, 0xef, 0x51, 0xb6, 0x53, 0x9d, 0xb6, 0x58, 0xa8, 0x94, 0xbe, 0x85, 0xb5, 0x8f, 0xbc, 0x84, 0x88, 0x1e, 0x61, 0xc5, 0xe0, 0xcb, 0x13, 0xae, 0x42, 0x1a, 0x09, 0xd3, 0x1d, 0x78, 0x06, 0x03, 0x25, 0x6d, 0x39, 0x0e, 0xdd, 0x05, 0x6d, 0x19, 0x08, 0x56, 0xbe, 0x00, 0xad, 0x20, 0xa7, 0x04, 0x8f, 0x0c, 0x67, 0x41, 0x6f, 0xe8, 0xe0, 0x28, 0x84, 0x08, 0x61, 0x55, 0xf4, 0x26, 0x32, 0x62, 0xe8, 0xc1, 0x27, 0x55, 0x04, 0xd4, 0xf9, 0x1f, 0x27, 0x51, 0xd3, 0xc3, 0xdc, 0xcd, 0x44, 0x09, 0xff, 0x2b, 0x45, 0xe4, 0x1d, 0xe9, 0x3f, 0x7b, 0x10, 0x4d, 0x58, 0xf6, 0xe1, 0x5b, 0xac, 0xb6, 0x2a, 0xce, 0x97, 0x00, 0x61, 0x5e, 0xcc, 0x1b, 0x30, 0xa0, 0xcc, 0x1b, 0x35, }; static const unsigned char hmac_sha384_1063_tag[] = { 0x1c, 0x4f, 0x64, 0x74, 0xf3, 0x9e, 0x6e, 0xab, 0xbe, 0x7a, 0x99, 0xfa, 0xa2, 0x34, 0xf4, 0x98, 0x33, 0x44, 0x41, 0x30, 0xac, 0xf0, 0x1d, 0xae, 0x68, 0xd6, 0x82, 0x51, 0xa9, 0x30, 0x41, 0x99, 0x60, 0xb0, 0xfb, 0x5f, 0x48, 0x36, 0x01, 0x49, 0xe0, 0x5d, 0x12, 0x09, 0x94, 0x1c, 0xc9, 0xec, }; static const wycheproof_hmac_test hmac_sha384_1063 = { .name = "hmac_sha384_1063", .hash = SHA384, .key = hmac_sha384_1063_key, .keylen = 48, .msg = hmac_sha384_1063_msg, .msglen = 112, .tag = hmac_sha384_1063_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1064 for HMAC, tcId is 25 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1064_key[] = { 0xcc, 0xa9, 0x29, 0x9c, 0x7b, 0xdc, 0x26, 0xa4, 0xb5, 0x95, 0x05, 0x5c, 0x99, 0xca, 0x23, 0xbe, 0xc8, 0xed, 0x11, 0xb5, 0xde, 0xed, 0xa9, 0x1f, 0x83, 0xe2, 0x36, 0x5e, 0x73, 0x40, 0x39, 0x5c, 0xee, 0xf4, 0xe8, 0x6e, 0x5c, 0xd9, 0x1f, 0x25, 0x93, 0xbc, 0xfe, 0xc4, 0x98, 0xa6, 0x7f, 0xc9, }; static const unsigned char hmac_sha384_1064_msg[] = { 0xa0, 0x5b, 0x40, 0xb8, 0xd3, 0xa7, 0xbc, 0x7b, 0x75, 0xb0, 0xe9, 0x73, 0x09, 0xc9, 0xbd, 0x1c, 0x9d, 0x87, 0x55, 0xc1, 0xff, 0x52, 0x45, 0xef, 0x63, 0x08, 0xa6, 0xa5, 0xca, 0xd3, 0xec, 0xfb, 0xcb, 0x63, 0x64, 0xb4, 0x1c, 0xa6, 0xf3, 0xd2, 0x4b, 0xbe, 0xe8, 0x44, 0xd6, 0x20, 0x4d, 0x10, 0x26, 0xab, 0xe3, 0x45, 0xaf, 0x7b, 0xde, 0xc1, 0x14, 0xa3, 0x73, 0xb1, 0x09, 0xaa, 0x57, 0x24, 0xb7, 0x38, 0xd5, 0x0a, 0xb7, 0xa8, 0x26, 0xc2, 0x68, 0xe8, 0x73, 0x70, 0x9f, 0x8b, 0x35, 0x13, 0x5a, 0x87, 0x00, 0x45, 0xd5, 0xfb, 0x9d, 0xaa, 0x82, 0xd3, 0xc2, 0x45, 0xb5, 0x33, 0x89, 0x17, 0x35, 0x4e, 0x72, 0xb3, 0x05, 0x8c, 0x9a, 0x4b, 0x80, 0x71, 0x17, 0x46, 0x52, 0x17, 0xd7, 0xd1, 0x4f, 0x36, 0xf8, 0xa8, 0xd4, 0xe9, 0x7b, 0xc3, 0xb9, 0x35, 0x87, 0xc9, 0x26, 0x41, 0xe7, }; static const unsigned char hmac_sha384_1064_tag[] = { 0x1b, 0x6b, 0x5b, 0xa8, 0x48, 0xbc, 0x13, 0xdd, 0x46, 0xc3, 0x51, 0x77, 0xae, 0x9f, 0xf9, 0xbd, 0x2d, 0x6c, 0xa5, 0xf4, 0xc9, 0x37, 0x39, 0x64, 0xd3, 0x18, 0x24, 0x83, 0xd9, 0x80, 0xb4, 0x65, 0x45, 0x27, 0xf3, 0x6d, 0x7c, 0xc5, 0x1b, 0x9e, 0x2e, 0xfe, 0x7e, 0xd9, 0x7a, 0x82, 0xe3, 0xbe, }; static const wycheproof_hmac_test hmac_sha384_1064 = { .name = "hmac_sha384_1064", .hash = SHA384, .key = hmac_sha384_1064_key, .keylen = 48, .msg = hmac_sha384_1064_msg, .msglen = 127, .tag = hmac_sha384_1064_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1065 for HMAC, tcId is 26 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1065_key[] = { 0xc7, 0x28, 0xe6, 0x5e, 0x08, 0xd9, 0x29, 0x6f, 0xe3, 0xcd, 0xf2, 0xde, 0xdb, 0x49, 0xc8, 0x1a, 0x30, 0xb6, 0x03, 0xa6, 0x25, 0x69, 0xee, 0xce, 0x4e, 0xe5, 0xd0, 0x1e, 0x9a, 0x32, 0xae, 0x3b, 0xcb, 0x4e, 0xc1, 0x63, 0xe4, 0x55, 0xe4, 0x52, 0x58, 0x24, 0x54, 0xce, 0xef, 0xef, 0xc0, 0x46, }; static const unsigned char hmac_sha384_1065_msg[] = { 0xe6, 0xc6, 0xba, 0xc8, 0x7c, 0x17, 0xe2, 0x69, 0xa4, 0x71, 0x43, 0x4c, 0xa9, 0x56, 0x84, 0x01, 0x45, 0x1d, 0x78, 0xc2, 0x44, 0x4a, 0x9d, 0x6e, 0xdc, 0xda, 0x3c, 0xda, 0xb5, 0x1c, 0x5b, 0xed, 0x1c, 0x19, 0xea, 0xf3, 0x43, 0x26, 0x58, 0x0f, 0xd8, 0x5a, 0xe5, 0x23, 0x6a, 0xd5, 0x1b, 0xc5, 0xda, 0xe3, 0x86, 0xb3, 0x61, 0x01, 0xf5, 0x46, 0x95, 0xc5, 0x95, 0xee, 0xed, 0xcd, 0xd0, 0x18, 0x2a, 0x4a, 0x11, 0x7f, 0x80, 0x93, 0xf4, 0xf4, 0x81, 0x2e, 0x03, 0xdb, 0x39, 0x6e, 0xde, 0x98, 0x49, 0xd1, 0x93, 0xe7, 0x72, 0x20, 0x81, 0xae, 0xec, 0x4b, 0xe6, 0xc4, 0xca, 0xf6, 0xc9, 0x79, 0xd3, 0x6e, 0xad, 0x56, 0x63, 0x4a, 0x21, 0xbe, 0x21, 0x16, 0x2e, 0xa2, 0x32, 0xde, 0xc9, 0xcf, 0xfd, 0xbd, 0x24, 0x74, 0x24, 0x58, 0x78, 0xdc, 0xa3, 0x69, 0xe8, 0x14, 0xfd, 0x02, 0x83, 0x03, }; static const unsigned char hmac_sha384_1065_tag[] = { 0x53, 0x39, 0x20, 0xa0, 0x13, 0xcf, 0x00, 0x6a, 0xa2, 0x9b, 0x26, 0xf7, 0x4b, 0x6d, 0xd2, 0x93, 0x63, 0x42, 0x93, 0x08, 0x99, 0x86, 0xaa, 0x24, 0x92, 0x71, 0xc4, 0x26, 0xb9, 0x42, 0xdc, 0x6b, 0xae, 0x32, 0xb2, 0x64, 0x16, 0x16, 0x67, 0x2f, 0x3d, 0x75, 0x96, 0x88, 0x66, 0xe1, 0x82, 0xe5, }; static const wycheproof_hmac_test hmac_sha384_1065 = { .name = "hmac_sha384_1065", .hash = SHA384, .key = hmac_sha384_1065_key, .keylen = 48, .msg = hmac_sha384_1065_msg, .msglen = 128, .tag = hmac_sha384_1065_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1066 for HMAC, tcId is 27 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1066_key[] = { 0x90, 0xc4, 0x21, 0x5d, 0xc3, 0xf2, 0x37, 0x43, 0x50, 0x47, 0xfe, 0xfd, 0xd8, 0x63, 0x8d, 0x33, 0x9a, 0x3f, 0xc6, 0x6f, 0xca, 0x06, 0xc5, 0x06, 0x3e, 0xac, 0xbd, 0xa0, 0x02, 0xab, 0x33, 0x5e, 0x62, 0x16, 0x05, 0xf6, 0x72, 0xf3, 0xda, 0x9f, 0x64, 0x1f, 0xae, 0x11, 0x0a, 0xfc, 0x3e, 0x7b, }; static const unsigned char hmac_sha384_1066_msg[] = { 0x1e, 0xbc, 0x22, 0xc3, 0x03, 0x1b, 0x64, 0x61, 0x5e, 0xb6, 0xf1, 0xa0, 0x69, 0x6e, 0x33, 0xb7, 0xdf, 0x13, 0x9a, 0x4b, 0x89, 0x1d, 0x3e, 0x67, 0x21, 0xcc, 0x26, 0xc0, 0x5d, 0x55, 0xde, 0x79, 0x0d, 0xca, 0x62, 0x36, 0x68, 0xc1, 0x03, 0x08, 0x48, 0x5d, 0x38, 0xe9, 0x5e, 0xc4, 0x76, 0x9f, 0xa4, 0x43, 0x0c, 0xa3, 0xeb, 0xc2, 0x5d, 0xa9, 0xf5, 0xd3, 0x1c, 0x97, 0x26, 0x74, 0x51, 0x7d, 0x9a, 0x22, 0x22, 0xe6, 0xb9, 0x7d, 0x8d, 0xef, 0x65, 0x12, 0xaf, 0x09, 0x6c, 0x6d, 0x14, 0x80, 0xd8, 0x3a, 0x22, 0x9c, 0x84, 0xb7, 0xf2, 0x8c, 0x80, 0x18, 0x4b, 0x6b, 0xeb, 0xf3, 0xf4, 0xef, 0xf5, 0xfc, 0x4e, 0x5c, 0x6c, 0xfe, 0xa4, 0xf8, 0xeb, 0xa9, 0xa9, 0x57, 0xf7, 0x91, 0x3b, 0x20, 0xa8, 0x8a, 0xd1, 0x73, 0x4f, 0x7c, 0x38, 0x54, 0x7e, 0x93, 0x4d, 0x1d, 0xbf, 0x2d, 0x73, 0xdb, 0xd6, 0x1e, 0x31, 0xfb, 0x15, 0x83, 0xc7, 0xb6, 0x57, 0x7a, 0x17, 0x1e, 0x7d, 0x02, 0xf1, 0x90, 0x45, 0x12, 0x6a, 0xc2, 0x97, 0x3d, 0x85, 0x5b, 0xc1, 0x8d, 0x34, 0xd3, 0x23, 0x26, 0xd1, 0xe2, 0x16, 0xda, 0x58, 0x36, 0x6a, 0x60, 0x03, 0x34, 0x50, 0x09, 0x11, 0x28, 0xae, 0x26, 0xa4, 0x79, 0x06, 0x9b, 0xba, 0x7b, 0x91, 0xb2, 0xab, 0x7f, 0x3c, 0x5f, 0xbc, 0xde, 0x39, 0x1d, 0xe3, 0xca, 0x11, 0x4b, 0x95, 0x1d, 0x68, 0x52, 0xf9, 0x27, 0x95, 0xf8, 0x02, 0x3d, 0x7a, 0x29, 0xa7, 0xf4, 0xce, 0x61, 0xe9, 0x24, 0x1b, 0x4f, 0x23, 0x5d, 0x21, 0xe8, 0x99, 0x08, 0x71, 0x67, 0xab, 0x3f, 0x3a, 0x0e, 0x93, 0x21, 0xc7, 0x94, 0x2b, 0x16, 0x51, 0x78, 0x78, 0x8d, 0xf4, 0x8d, 0x3b, 0x10, 0x6b, 0x20, 0x3e, 0xc1, 0xe0, 0x1d, 0x29, 0xbd, 0xa4, 0x1a, 0x99, 0xac, 0x0d, 0x2c, 0x00, }; static const unsigned char hmac_sha384_1066_tag[] = { 0xc5, 0x2b, 0x91, 0xda, 0xed, 0x6e, 0xe4, 0x64, 0x16, 0xf2, 0xdb, 0x78, 0x97, 0x82, 0x51, 0xcb, 0x33, 0x4e, 0x5d, 0x8e, 0x00, 0xb3, 0x2a, 0xe0, 0x6e, 0x36, 0x5f, 0x45, 0x5d, 0x28, 0xde, 0x40, 0x6a, 0x9c, 0xce, 0x2f, 0x9f, 0x29, 0x37, 0x8f, 0x22, 0x98, 0x22, 0xdb, 0xf2, 0x6b, 0xfd, 0xad, }; static const wycheproof_hmac_test hmac_sha384_1066 = { .name = "hmac_sha384_1066", .hash = SHA384, .key = hmac_sha384_1066_key, .keylen = 48, .msg = hmac_sha384_1066_msg, .msglen = 255, .tag = hmac_sha384_1066_tag, .taglen = 48, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1067 for HMAC, tcId is 28 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1067_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1067_tag[] = { 0x45, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1067 = { .name = "hmac_sha384_1067", .hash = SHA384, .key = hmac_sha384_1067_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1067_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1068 for HMAC, tcId is 29 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1068_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1068_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1068_tag[] = { 0xa8, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1068 = { .name = "hmac_sha384_1068", .hash = SHA384, .key = hmac_sha384_1068_key, .keylen = 48, .msg = hmac_sha384_1068_msg, .msglen = 16, .tag = hmac_sha384_1068_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1069 for HMAC, tcId is 30 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1069_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1069_tag[] = { 0x46, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1069 = { .name = "hmac_sha384_1069", .hash = SHA384, .key = hmac_sha384_1069_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1069_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1070 for HMAC, tcId is 31 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1070_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1070_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1070_tag[] = { 0xab, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1070 = { .name = "hmac_sha384_1070", .hash = SHA384, .key = hmac_sha384_1070_key, .keylen = 48, .msg = hmac_sha384_1070_msg, .msglen = 16, .tag = hmac_sha384_1070_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1071 for HMAC, tcId is 32 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1071_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1071_tag[] = { 0xc4, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1071 = { .name = "hmac_sha384_1071", .hash = SHA384, .key = hmac_sha384_1071_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1071_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1072 for HMAC, tcId is 33 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1072_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1072_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1072_tag[] = { 0x29, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1072 = { .name = "hmac_sha384_1072", .hash = SHA384, .key = hmac_sha384_1072_key, .keylen = 48, .msg = hmac_sha384_1072_msg, .msglen = 16, .tag = hmac_sha384_1072_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1073 for HMAC, tcId is 34 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1073_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1073_tag[] = { 0x44, 0xbf, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1073 = { .name = "hmac_sha384_1073", .hash = SHA384, .key = hmac_sha384_1073_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1073_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1074 for HMAC, tcId is 35 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1074_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1074_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1074_tag[] = { 0xa9, 0x4c, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1074 = { .name = "hmac_sha384_1074", .hash = SHA384, .key = hmac_sha384_1074_key, .keylen = 48, .msg = hmac_sha384_1074_msg, .msglen = 16, .tag = hmac_sha384_1074_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1075 for HMAC, tcId is 36 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1075_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1075_tag[] = { 0x44, 0xbe, 0x81, 0x44, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1075 = { .name = "hmac_sha384_1075", .hash = SHA384, .key = hmac_sha384_1075_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1075_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1076 for HMAC, tcId is 37 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1076_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1076_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1076_tag[] = { 0xa9, 0x4d, 0x07, 0x7f, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1076 = { .name = "hmac_sha384_1076", .hash = SHA384, .key = hmac_sha384_1076_key, .keylen = 48, .msg = hmac_sha384_1076_msg, .msglen = 16, .tag = hmac_sha384_1076_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1077 for HMAC, tcId is 38 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1077_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1077_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x14, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1077 = { .name = "hmac_sha384_1077", .hash = SHA384, .key = hmac_sha384_1077_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1077_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1078 for HMAC, tcId is 39 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1078_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1078_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1078_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x91, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1078 = { .name = "hmac_sha384_1078", .hash = SHA384, .key = hmac_sha384_1078_key, .keylen = 48, .msg = hmac_sha384_1078_msg, .msglen = 16, .tag = hmac_sha384_1078_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1079 for HMAC, tcId is 40 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1079_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1079_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x17, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1079 = { .name = "hmac_sha384_1079", .hash = SHA384, .key = hmac_sha384_1079_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1079_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1080 for HMAC, tcId is 41 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1080_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1080_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1080_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x92, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1080 = { .name = "hmac_sha384_1080", .hash = SHA384, .key = hmac_sha384_1080_key, .keylen = 48, .msg = hmac_sha384_1080_msg, .msglen = 16, .tag = hmac_sha384_1080_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1081 for HMAC, tcId is 42 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1081_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1081_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1081 = { .name = "hmac_sha384_1081", .hash = SHA384, .key = hmac_sha384_1081_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1081_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1082 for HMAC, tcId is 43 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1082_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1082_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1082_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1082 = { .name = "hmac_sha384_1082", .hash = SHA384, .key = hmac_sha384_1082_key, .keylen = 48, .msg = hmac_sha384_1082_msg, .msglen = 16, .tag = hmac_sha384_1082_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1083 for HMAC, tcId is 44 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1083_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1083_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7b, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1083 = { .name = "hmac_sha384_1083", .hash = SHA384, .key = hmac_sha384_1083_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1083_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1084 for HMAC, tcId is 45 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1084_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1084_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1084_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x65, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1084 = { .name = "hmac_sha384_1084", .hash = SHA384, .key = hmac_sha384_1084_key, .keylen = 48, .msg = hmac_sha384_1084_msg, .msglen = 16, .tag = hmac_sha384_1084_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1085 for HMAC, tcId is 46 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1085_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1085_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0xfa, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1085 = { .name = "hmac_sha384_1085", .hash = SHA384, .key = hmac_sha384_1085_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1085_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1086 for HMAC, tcId is 47 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1086_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1086_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1086_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0xe4, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1086 = { .name = "hmac_sha384_1086", .hash = SHA384, .key = hmac_sha384_1086_key, .keylen = 48, .msg = hmac_sha384_1086_msg, .msglen = 16, .tag = hmac_sha384_1086_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1087 for HMAC, tcId is 48 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1087_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1087_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x42, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1087 = { .name = "hmac_sha384_1087", .hash = SHA384, .key = hmac_sha384_1087_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1087_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1088 for HMAC, tcId is 49 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1088_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1088_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1088_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0x90, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1088 = { .name = "hmac_sha384_1088", .hash = SHA384, .key = hmac_sha384_1088_key, .keylen = 48, .msg = hmac_sha384_1088_msg, .msglen = 16, .tag = hmac_sha384_1088_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1089 for HMAC, tcId is 50 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1089_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1089_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa5, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1089 = { .name = "hmac_sha384_1089", .hash = SHA384, .key = hmac_sha384_1089_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1089_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1090 for HMAC, tcId is 51 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1090_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1090_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1090_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x37, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1090 = { .name = "hmac_sha384_1090", .hash = SHA384, .key = hmac_sha384_1090_key, .keylen = 48, .msg = hmac_sha384_1090_msg, .msglen = 16, .tag = hmac_sha384_1090_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1091 for HMAC, tcId is 52 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1091_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1091_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x89, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1091 = { .name = "hmac_sha384_1091", .hash = SHA384, .key = hmac_sha384_1091_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1091_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1092 for HMAC, tcId is 53 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1092_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1092_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1092_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd6, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1092 = { .name = "hmac_sha384_1092", .hash = SHA384, .key = hmac_sha384_1092_key, .keylen = 48, .msg = hmac_sha384_1092_msg, .msglen = 16, .tag = hmac_sha384_1092_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1093 for HMAC, tcId is 54 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1093_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1093_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x8a, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1093 = { .name = "hmac_sha384_1093", .hash = SHA384, .key = hmac_sha384_1093_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1093_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1094 for HMAC, tcId is 55 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1094_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1094_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1094_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd5, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1094 = { .name = "hmac_sha384_1094", .hash = SHA384, .key = hmac_sha384_1094_key, .keylen = 48, .msg = hmac_sha384_1094_msg, .msglen = 16, .tag = hmac_sha384_1094_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1095 for HMAC, tcId is 56 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1095_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1095_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x08, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1095 = { .name = "hmac_sha384_1095", .hash = SHA384, .key = hmac_sha384_1095_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1095_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1096 for HMAC, tcId is 57 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1096_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1096_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1096_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0x57, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1096 = { .name = "hmac_sha384_1096", .hash = SHA384, .key = hmac_sha384_1096_key, .keylen = 48, .msg = hmac_sha384_1096_msg, .msglen = 16, .tag = hmac_sha384_1096_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1097 for HMAC, tcId is 58 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1097_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1097_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x67, }; static const wycheproof_hmac_test hmac_sha384_1097 = { .name = "hmac_sha384_1097", .hash = SHA384, .key = hmac_sha384_1097_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1097_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 376 in tag, tcId is 58 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1098 for HMAC, tcId is 59 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1098_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1098_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1098_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x17, }; static const wycheproof_hmac_test hmac_sha384_1098 = { .name = "hmac_sha384_1098", .hash = SHA384, .key = hmac_sha384_1098_key, .keylen = 48, .msg = hmac_sha384_1098_msg, .msglen = 16, .tag = hmac_sha384_1098_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 376 in tag, tcId is 59 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1099 for HMAC, tcId is 60 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1099_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1099_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x64, }; static const wycheproof_hmac_test hmac_sha384_1099 = { .name = "hmac_sha384_1099", .hash = SHA384, .key = hmac_sha384_1099_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1099_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 377 in tag, tcId is 60 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1100 for HMAC, tcId is 61 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1100_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1100_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1100_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x14, }; static const wycheproof_hmac_test hmac_sha384_1100 = { .name = "hmac_sha384_1100", .hash = SHA384, .key = hmac_sha384_1100_key, .keylen = 48, .msg = hmac_sha384_1100_msg, .msglen = 16, .tag = hmac_sha384_1100_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 377 in tag, tcId is 61 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1101 for HMAC, tcId is 62 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1101_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1101_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x26, }; static const wycheproof_hmac_test hmac_sha384_1101 = { .name = "hmac_sha384_1101", .hash = SHA384, .key = hmac_sha384_1101_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1101_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 382 in tag, tcId is 62 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1102 for HMAC, tcId is 63 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1102_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1102_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1102_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x56, }; static const wycheproof_hmac_test hmac_sha384_1102 = { .name = "hmac_sha384_1102", .hash = SHA384, .key = hmac_sha384_1102_key, .keylen = 48, .msg = hmac_sha384_1102_msg, .msglen = 16, .tag = hmac_sha384_1102_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 382 in tag, tcId is 63 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1103 for HMAC, tcId is 64 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1103_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1103_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0xe6, }; static const wycheproof_hmac_test hmac_sha384_1103 = { .name = "hmac_sha384_1103", .hash = SHA384, .key = hmac_sha384_1103_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1103_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 383 in tag, tcId is 64 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1104 for HMAC, tcId is 65 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1104_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1104_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1104_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x96, }; static const wycheproof_hmac_test hmac_sha384_1104 = { .name = "hmac_sha384_1104", .hash = SHA384, .key = hmac_sha384_1104_key, .keylen = 48, .msg = hmac_sha384_1104_msg, .msglen = 16, .tag = hmac_sha384_1104_tag, .taglen = 48, .result = -1, .comment = "Flipped bit 383 in tag, tcId is 65 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1105 for HMAC, tcId is 66 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1105_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1105_tag[] = { 0x45, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7b, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1105 = { .name = "hmac_sha384_1105", .hash = SHA384, .key = hmac_sha384_1105_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1105_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1106 for HMAC, tcId is 67 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1106_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1106_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1106_tag[] = { 0xa8, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x65, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1106 = { .name = "hmac_sha384_1106", .hash = SHA384, .key = hmac_sha384_1106_key, .keylen = 48, .msg = hmac_sha384_1106_msg, .msglen = 16, .tag = hmac_sha384_1106_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1107 for HMAC, tcId is 68 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1107_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1107_tag[] = { 0x44, 0xbe, 0x81, 0x44, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1107 = { .name = "hmac_sha384_1107", .hash = SHA384, .key = hmac_sha384_1107_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1107_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1108 for HMAC, tcId is 69 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1108_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1108_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1108_tag[] = { 0xa9, 0x4d, 0x07, 0x7f, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1108 = { .name = "hmac_sha384_1108", .hash = SHA384, .key = hmac_sha384_1108_key, .keylen = 48, .msg = hmac_sha384_1108_msg, .msglen = 16, .tag = hmac_sha384_1108_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1109 for HMAC, tcId is 70 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1109_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1109_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0x7b, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, 0x92, 0xc1, 0xfc, 0x36, 0xf1, 0x98, 0xc0, 0xb3, 0xa7, 0x14, 0x92, 0x18, 0x48, 0xd5, 0xe0, 0x3d, 0xf1, 0xc4, 0x84, 0x9b, 0xb8, 0x31, 0x0c, 0x66, }; static const wycheproof_hmac_test hmac_sha384_1109 = { .name = "hmac_sha384_1109", .hash = SHA384, .key = hmac_sha384_1109_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1109_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1110 for HMAC, tcId is 71 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1110_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1110_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1110_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x82, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, 0xdd, 0xe7, 0x66, 0x74, 0x89, 0x64, 0x00, 0xf9, 0x7b, 0x84, 0x08, 0xbf, 0xef, 0xa6, 0xee, 0x86, 0xc7, 0x16, 0xbf, 0xa4, 0xa4, 0x60, 0xd2, 0x16, }; static const wycheproof_hmac_test hmac_sha384_1110 = { .name = "hmac_sha384_1110", .hash = SHA384, .key = hmac_sha384_1110_key, .keylen = 48, .msg = hmac_sha384_1110_msg, .msglen = 16, .tag = hmac_sha384_1110_tag, .taglen = 48, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1111 for HMAC, tcId is 72 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1111_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1111_tag[] = { 0xbb, 0x41, 0x7e, 0x3b, 0xea, 0x2d, 0x7c, 0x54, 0x85, 0x9d, 0x5b, 0xae, 0x77, 0x1a, 0x25, 0x04, 0x34, 0x68, 0x25, 0x9f, 0x94, 0x2a, 0x4e, 0x93, 0x6d, 0x3e, 0x03, 0xc9, 0x0e, 0x67, 0x3f, 0x4c, 0x58, 0xeb, 0x6d, 0xe7, 0xb7, 0x2a, 0x1f, 0xc2, 0x0e, 0x3b, 0x7b, 0x64, 0x47, 0xce, 0xf3, 0x99, }; static const wycheproof_hmac_test hmac_sha384_1111 = { .name = "hmac_sha384_1111", .hash = SHA384, .key = hmac_sha384_1111_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1111_tag, .taglen = 48, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1112 for HMAC, tcId is 73 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1112_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1112_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1112_tag[] = { 0x56, 0xb2, 0xf8, 0x00, 0x6f, 0x4c, 0xc7, 0x1f, 0x9b, 0x4f, 0xc9, 0xfc, 0x28, 0x94, 0x30, 0xfd, 0xeb, 0x4e, 0x04, 0x77, 0x39, 0x94, 0x6b, 0xea, 0x22, 0x18, 0x99, 0x8b, 0x76, 0x9b, 0xff, 0x06, 0x84, 0x7b, 0xf7, 0x40, 0x10, 0x59, 0x11, 0x79, 0x38, 0xe9, 0x40, 0x5b, 0x5b, 0x9f, 0x2d, 0xe9, }; static const wycheproof_hmac_test hmac_sha384_1112 = { .name = "hmac_sha384_1112", .hash = SHA384, .key = hmac_sha384_1112_key, .keylen = 48, .msg = hmac_sha384_1112_msg, .msglen = 16, .tag = hmac_sha384_1112_tag, .taglen = 48, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1113 for HMAC, tcId is 74 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1113_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1113_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha384_1113 = { .name = "hmac_sha384_1113", .hash = SHA384, .key = hmac_sha384_1113_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1113_tag, .taglen = 48, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1114 for HMAC, tcId is 75 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1114_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1114_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1114_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha384_1114 = { .name = "hmac_sha384_1114", .hash = SHA384, .key = hmac_sha384_1114_key, .keylen = 48, .msg = hmac_sha384_1114_msg, .msglen = 16, .tag = hmac_sha384_1114_tag, .taglen = 48, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1115 for HMAC, tcId is 76 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1115_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1115_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha384_1115 = { .name = "hmac_sha384_1115", .hash = SHA384, .key = hmac_sha384_1115_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1115_tag, .taglen = 48, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1116 for HMAC, tcId is 77 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1116_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1116_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1116_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha384_1116 = { .name = "hmac_sha384_1116", .hash = SHA384, .key = hmac_sha384_1116_key, .keylen = 48, .msg = hmac_sha384_1116_msg, .msglen = 16, .tag = hmac_sha384_1116_tag, .taglen = 48, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1117 for HMAC, tcId is 78 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1117_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1117_tag[] = { 0xc4, 0x3e, 0x01, 0x44, 0x95, 0x52, 0x03, 0x2b, 0xfa, 0xe2, 0x24, 0xd1, 0x08, 0x65, 0x5a, 0x7b, 0x4b, 0x17, 0x5a, 0xe0, 0xeb, 0x55, 0x31, 0xec, 0x12, 0x41, 0x7c, 0xb6, 0x71, 0x18, 0x40, 0x33, 0x27, 0x94, 0x12, 0x98, 0xc8, 0x55, 0x60, 0xbd, 0x71, 0x44, 0x04, 0x1b, 0x38, 0xb1, 0x8c, 0xe6, }; static const wycheproof_hmac_test hmac_sha384_1117 = { .name = "hmac_sha384_1117", .hash = SHA384, .key = hmac_sha384_1117_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1117_tag, .taglen = 48, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1118 for HMAC, tcId is 79 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1118_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1118_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1118_tag[] = { 0x29, 0xcd, 0x87, 0x7f, 0x10, 0x33, 0xb8, 0x60, 0xe4, 0x30, 0xb6, 0x83, 0x57, 0xeb, 0x4f, 0x82, 0x94, 0x31, 0x7b, 0x08, 0x46, 0xeb, 0x14, 0x95, 0x5d, 0x67, 0xe6, 0xf4, 0x09, 0xe4, 0x80, 0x79, 0xfb, 0x04, 0x88, 0x3f, 0x6f, 0x26, 0x6e, 0x06, 0x47, 0x96, 0x3f, 0x24, 0x24, 0xe0, 0x52, 0x96, }; static const wycheproof_hmac_test hmac_sha384_1118 = { .name = "hmac_sha384_1118", .hash = SHA384, .key = hmac_sha384_1118_key, .keylen = 48, .msg = hmac_sha384_1118_msg, .msglen = 16, .tag = hmac_sha384_1118_tag, .taglen = 48, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1119 for HMAC, tcId is 80 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1119_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1119_tag[] = { 0x45, 0xbf, 0x80, 0xc5, 0x14, 0xd3, 0x82, 0xaa, 0x7b, 0x63, 0xa5, 0x50, 0x89, 0xe4, 0xdb, 0xfa, 0xca, 0x96, 0xdb, 0x61, 0x6a, 0xd4, 0xb0, 0x6d, 0x93, 0xc0, 0xfd, 0x37, 0xf0, 0x99, 0xc1, 0xb2, 0xa6, 0x15, 0x93, 0x19, 0x49, 0xd4, 0xe1, 0x3c, 0xf0, 0xc5, 0x85, 0x9a, 0xb9, 0x30, 0x0d, 0x67, }; static const wycheproof_hmac_test hmac_sha384_1119 = { .name = "hmac_sha384_1119", .hash = SHA384, .key = hmac_sha384_1119_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1119_tag, .taglen = 48, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1120 for HMAC, tcId is 81 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1120_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1120_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1120_tag[] = { 0xa8, 0x4c, 0x06, 0xfe, 0x91, 0xb2, 0x39, 0xe1, 0x65, 0xb1, 0x37, 0x02, 0xd6, 0x6a, 0xce, 0x03, 0x15, 0xb0, 0xfa, 0x89, 0xc7, 0x6a, 0x95, 0x14, 0xdc, 0xe6, 0x67, 0x75, 0x88, 0x65, 0x01, 0xf8, 0x7a, 0x85, 0x09, 0xbe, 0xee, 0xa7, 0xef, 0x87, 0xc6, 0x17, 0xbe, 0xa5, 0xa5, 0x61, 0xd3, 0x17, }; static const wycheproof_hmac_test hmac_sha384_1120 = { .name = "hmac_sha384_1120", .hash = SHA384, .key = hmac_sha384_1120_key, .keylen = 48, .msg = hmac_sha384_1120_msg, .msglen = 16, .tag = hmac_sha384_1120_tag, .taglen = 48, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1121 for HMAC, tcId is 82 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1121_key[] = { 0x1c, 0x67, 0x82, 0x67, 0xbe, 0x13, 0xac, 0xb4, 0x64, 0x93, 0x9c, 0x28, 0x96, 0xc9, 0xe9, 0xce, 0x1d, 0xeb, 0x5b, 0x30, 0x83, 0x3b, 0xdd, 0x9c, 0xa0, 0x03, 0x70, 0x88, 0x9b, 0x84, 0x41, 0x07, 0x82, 0xad, 0x52, 0xaf, 0xe2, 0x5d, 0xc1, 0x0a, 0xb7, 0xec, 0x5c, 0xf5, 0xf3, 0x47, 0x93, 0xb7, }; static const unsigned char hmac_sha384_1121_tag[] = { 0x6d, 0xd5, 0x66, 0xbe, 0x67, 0x8c, 0x1e, 0x63, 0x59, 0xab, 0x31, 0xb6, 0x35, 0xcc, 0x16, 0x01, 0x60, 0xa0, 0xc5, 0xa9, 0xc4, 0x9a, 0x0a, 0xc5, }; static const wycheproof_hmac_test hmac_sha384_1121 = { .name = "hmac_sha384_1121", .hash = SHA384, .key = hmac_sha384_1121_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1121_tag, .taglen = 24, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1122 for HMAC, tcId is 83 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1122_key[] = { 0x00, 0xb1, 0x84, 0xc2, 0xc0, 0xa4, 0x91, 0xd7, 0x64, 0xa2, 0x6f, 0x8b, 0x2e, 0x56, 0xa9, 0x65, 0x22, 0x2b, 0x36, 0x21, 0x3b, 0xdd, 0x10, 0x6a, 0xe7, 0x82, 0x30, 0x5c, 0x50, 0xf8, 0x92, 0x69, 0x90, 0x24, 0x76, 0xe5, 0xdf, 0x3f, 0xa5, 0x8e, 0x0e, 0xcf, 0xae, 0x82, 0xa9, 0x60, 0x7c, 0x8e, }; static const unsigned char hmac_sha384_1122_msg[] = { 0x9f, }; static const unsigned char hmac_sha384_1122_tag[] = { 0x5a, 0xff, 0xf4, 0xb0, 0x09, 0xca, 0x9c, 0x9e, 0x5d, 0xcd, 0x84, 0xf0, 0x56, 0x07, 0xe7, 0xa7, 0xd4, 0x3e, 0xe4, 0x3b, 0x42, 0x49, 0x89, 0x89, }; static const wycheproof_hmac_test hmac_sha384_1122 = { .name = "hmac_sha384_1122", .hash = SHA384, .key = hmac_sha384_1122_key, .keylen = 48, .msg = hmac_sha384_1122_msg, .msglen = 1, .tag = hmac_sha384_1122_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1123 for HMAC, tcId is 84 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1123_key[] = { 0x05, 0x5b, 0x67, 0xed, 0xb6, 0x59, 0xe2, 0x9c, 0x10, 0xe3, 0xe9, 0xcd, 0x25, 0xaa, 0x1c, 0xd5, 0xab, 0xf0, 0x88, 0x0e, 0x20, 0x26, 0xed, 0x84, 0x36, 0xe3, 0x9b, 0x06, 0x4b, 0x73, 0x15, 0x76, 0x0c, 0xd7, 0xa9, 0x29, 0x4e, 0xe2, 0x3d, 0x47, 0x50, 0x96, 0x9c, 0xc8, 0xb5, 0xdb, 0xae, 0xd7, }; static const unsigned char hmac_sha384_1123_msg[] = { 0x40, 0x47, }; static const unsigned char hmac_sha384_1123_tag[] = { 0x4d, 0x08, 0xba, 0xef, 0x96, 0x9e, 0xed, 0x23, 0xb8, 0x14, 0x47, 0x2a, 0xcf, 0xf0, 0x8d, 0x08, 0xfd, 0x34, 0x91, 0xa7, 0x28, 0x77, 0x8a, 0x1c, }; static const wycheproof_hmac_test hmac_sha384_1123 = { .name = "hmac_sha384_1123", .hash = SHA384, .key = hmac_sha384_1123_key, .keylen = 48, .msg = hmac_sha384_1123_msg, .msglen = 2, .tag = hmac_sha384_1123_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1124 for HMAC, tcId is 85 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1124_key[] = { 0x9e, 0x3c, 0x19, 0x8e, 0x93, 0x93, 0x0f, 0x07, 0x6b, 0x03, 0x5c, 0x5f, 0xa8, 0xf1, 0x0d, 0x9a, 0x65, 0xe9, 0x8c, 0x66, 0xcf, 0xb3, 0x66, 0x33, 0xe3, 0xcb, 0x33, 0x27, 0x9c, 0xdf, 0x57, 0x68, 0x8f, 0x10, 0xb7, 0x47, 0x2d, 0x1f, 0xc9, 0xd9, 0x62, 0xce, 0x69, 0x54, 0x51, 0x9b, 0xfb, 0xf6, }; static const unsigned char hmac_sha384_1124_msg[] = { 0x88, 0xcf, 0xab, }; static const unsigned char hmac_sha384_1124_tag[] = { 0x1c, 0xde, 0x37, 0x65, 0xba, 0x5a, 0x15, 0xb1, 0xd0, 0x18, 0x21, 0x36, 0xa7, 0x2c, 0x60, 0x3a, 0xcd, 0x3b, 0x90, 0x4c, 0xea, 0xc8, 0xf7, 0xad, }; static const wycheproof_hmac_test hmac_sha384_1124 = { .name = "hmac_sha384_1124", .hash = SHA384, .key = hmac_sha384_1124_key, .keylen = 48, .msg = hmac_sha384_1124_msg, .msglen = 3, .tag = hmac_sha384_1124_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1125 for HMAC, tcId is 86 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1125_key[] = { 0xf5, 0xf5, 0x96, 0x2b, 0xda, 0x25, 0x7b, 0x38, 0xb2, 0xa2, 0x31, 0x89, 0x29, 0x12, 0x1b, 0x2e, 0xae, 0xf7, 0x92, 0xd5, 0xc6, 0xa9, 0x58, 0x5e, 0x48, 0xb8, 0x0c, 0xf5, 0x35, 0x7b, 0x29, 0xc3, 0x95, 0x1b, 0x78, 0x7e, 0xd3, 0xe0, 0x3e, 0x38, 0x5b, 0x05, 0xb8, 0xff, 0xe6, 0x86, 0x1d, 0xc3, }; static const unsigned char hmac_sha384_1125_msg[] = { 0xd9, 0x39, 0x77, 0x53, }; static const unsigned char hmac_sha384_1125_tag[] = { 0x46, 0x38, 0xe4, 0x42, 0x7e, 0x60, 0x84, 0xb7, 0x6c, 0x53, 0xed, 0x9d, 0x6e, 0x91, 0x61, 0x62, 0xfc, 0xb8, 0xb9, 0x62, 0xc3, 0xd6, 0x16, 0xf1, }; static const wycheproof_hmac_test hmac_sha384_1125 = { .name = "hmac_sha384_1125", .hash = SHA384, .key = hmac_sha384_1125_key, .keylen = 48, .msg = hmac_sha384_1125_msg, .msglen = 4, .tag = hmac_sha384_1125_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1126 for HMAC, tcId is 87 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1126_key[] = { 0xf6, 0x28, 0x20, 0xed, 0x5f, 0x98, 0x33, 0xfd, 0x22, 0xde, 0xe7, 0xbd, 0x49, 0xe2, 0xc9, 0xb1, 0x9f, 0xc9, 0x66, 0x88, 0x97, 0xc2, 0xc3, 0x3e, 0x6c, 0x7c, 0x1f, 0xa5, 0xc2, 0x77, 0xc3, 0xb9, 0xf5, 0x81, 0xfa, 0xef, 0x3d, 0xdc, 0x66, 0x4b, 0xa5, 0x37, 0x97, 0x5d, 0x8a, 0xfa, 0xa7, 0x07, }; static const unsigned char hmac_sha384_1126_msg[] = { 0x9b, 0x6c, 0xc7, 0xca, 0xa4, }; static const unsigned char hmac_sha384_1126_tag[] = { 0xf6, 0xe2, 0x72, 0xa7, 0xa6, 0x23, 0x5f, 0x60, 0xb7, 0x2b, 0x4c, 0x74, 0x24, 0xcf, 0x32, 0xa0, 0x7f, 0x98, 0xea, 0x59, 0x26, 0x65, 0xba, 0xd8, }; static const wycheproof_hmac_test hmac_sha384_1126 = { .name = "hmac_sha384_1126", .hash = SHA384, .key = hmac_sha384_1126_key, .keylen = 48, .msg = hmac_sha384_1126_msg, .msglen = 5, .tag = hmac_sha384_1126_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1127 for HMAC, tcId is 88 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1127_key[] = { 0xf2, 0x22, 0xa1, 0xda, 0xbf, 0x32, 0x2a, 0xff, 0x84, 0x63, 0xac, 0xee, 0x64, 0x44, 0x93, 0x93, 0x31, 0x21, 0x2b, 0xe3, 0xe1, 0x9d, 0x31, 0xf4, 0xb7, 0x3f, 0xdc, 0xc9, 0x7e, 0x29, 0x25, 0x36, 0x5e, 0xa3, 0x3c, 0x98, 0x52, 0x82, 0x80, 0x5c, 0x83, 0xdc, 0xd8, 0xfb, 0x42, 0xa0, 0xe2, 0x14, }; static const unsigned char hmac_sha384_1127_msg[] = { 0xc8, 0x5a, 0xd7, 0x87, 0x2b, 0x76, }; static const unsigned char hmac_sha384_1127_tag[] = { 0x93, 0x3f, 0x0f, 0xa6, 0x1d, 0x44, 0x66, 0xb5, 0xba, 0xf5, 0xa6, 0x01, 0xf6, 0xb9, 0x6d, 0x81, 0xa9, 0x7e, 0x81, 0xc5, 0x12, 0xd8, 0x22, 0xe6, }; static const wycheproof_hmac_test hmac_sha384_1127 = { .name = "hmac_sha384_1127", .hash = SHA384, .key = hmac_sha384_1127_key, .keylen = 48, .msg = hmac_sha384_1127_msg, .msglen = 6, .tag = hmac_sha384_1127_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1128 for HMAC, tcId is 89 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1128_key[] = { 0x56, 0xe8, 0x0f, 0x38, 0x99, 0xe9, 0x45, 0x31, 0x0a, 0x9d, 0x9b, 0xef, 0x3d, 0x32, 0x09, 0x1f, 0x29, 0xc1, 0x57, 0xdd, 0x46, 0xb2, 0xd4, 0x39, 0xad, 0x89, 0xd6, 0x3e, 0x14, 0xb2, 0xc2, 0x43, 0x90, 0xf7, 0x4d, 0xb4, 0xd9, 0x05, 0xf6, 0xbd, 0x03, 0xf7, 0x5c, 0x32, 0xe9, 0x12, 0x25, 0xfe, }; static const unsigned char hmac_sha384_1128_msg[] = { 0x80, 0xba, 0x25, 0xf1, 0xc2, 0x76, 0x50, }; static const unsigned char hmac_sha384_1128_tag[] = { 0xa1, 0xa6, 0xe2, 0x48, 0xb4, 0x08, 0x64, 0xdd, 0xf8, 0x3b, 0x00, 0xc5, 0x2a, 0xe2, 0xc3, 0x03, 0xb7, 0xe7, 0x6f, 0xba, 0x05, 0x48, 0xd4, 0xd4, }; static const wycheproof_hmac_test hmac_sha384_1128 = { .name = "hmac_sha384_1128", .hash = SHA384, .key = hmac_sha384_1128_key, .keylen = 48, .msg = hmac_sha384_1128_msg, .msglen = 7, .tag = hmac_sha384_1128_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1129 for HMAC, tcId is 90 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1129_key[] = { 0x6c, 0xb6, 0x26, 0x1a, 0x56, 0xa2, 0x1b, 0x2c, 0x3c, 0x13, 0x45, 0x3c, 0x15, 0x83, 0x64, 0xaa, 0xfa, 0x78, 0xf5, 0x81, 0x72, 0xa9, 0xae, 0x3e, 0xeb, 0x32, 0x8a, 0xc3, 0x88, 0x08, 0xb5, 0xc6, 0x8c, 0x11, 0x11, 0x97, 0xa3, 0x03, 0xec, 0x36, 0x84, 0x7c, 0x9a, 0x31, 0x5a, 0xc5, 0xeb, 0x5b, }; static const unsigned char hmac_sha384_1129_msg[] = { 0x79, 0x43, 0x0d, 0xe5, 0x1d, 0x68, 0xcf, 0x34, }; static const unsigned char hmac_sha384_1129_tag[] = { 0x33, 0x59, 0x3a, 0x80, 0xda, 0x45, 0x5e, 0x58, 0x0c, 0xcc, 0x5e, 0xe9, 0xb6, 0x0e, 0xdc, 0xd1, 0x46, 0x84, 0x60, 0x53, 0x97, 0x88, 0xfc, 0x41, }; static const wycheproof_hmac_test hmac_sha384_1129 = { .name = "hmac_sha384_1129", .hash = SHA384, .key = hmac_sha384_1129_key, .keylen = 48, .msg = hmac_sha384_1129_msg, .msglen = 8, .tag = hmac_sha384_1129_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1130 for HMAC, tcId is 91 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1130_key[] = { 0x44, 0xca, 0x1e, 0xcb, 0x49, 0x04, 0x70, 0xa8, 0x4c, 0x7e, 0x13, 0xe1, 0xf1, 0xc6, 0x9d, 0xa2, 0x1f, 0x48, 0xc3, 0x3b, 0x6f, 0x05, 0x0f, 0x48, 0xf7, 0xf2, 0x44, 0xf0, 0xfd, 0xa8, 0xb3, 0xc8, 0x55, 0x90, 0x4e, 0xd0, 0x61, 0x2e, 0x2d, 0xaf, 0xa5, 0x10, 0x5c, 0xbd, 0x7f, 0x64, 0x49, 0xeb, }; static const unsigned char hmac_sha384_1130_msg[] = { 0x87, 0x0b, 0x98, 0x1c, 0x8a, 0xfd, 0x9f, 0xae, 0x1b, }; static const unsigned char hmac_sha384_1130_tag[] = { 0x93, 0x0f, 0x2e, 0x40, 0x1e, 0x3a, 0xaf, 0xb4, 0x6a, 0x0c, 0x40, 0x29, 0x00, 0x2f, 0x4e, 0xf1, 0xab, 0x9f, 0xe8, 0x38, 0xbc, 0x00, 0xc7, 0x9e, }; static const wycheproof_hmac_test hmac_sha384_1130 = { .name = "hmac_sha384_1130", .hash = SHA384, .key = hmac_sha384_1130_key, .keylen = 48, .msg = hmac_sha384_1130_msg, .msglen = 9, .tag = hmac_sha384_1130_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1131 for HMAC, tcId is 92 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1131_key[] = { 0xaa, 0xca, 0x68, 0x88, 0x2c, 0xfa, 0x72, 0x50, 0x98, 0x8a, 0x24, 0x7b, 0x96, 0xcf, 0xb3, 0x23, 0x2d, 0x65, 0x67, 0x37, 0x8f, 0x8f, 0xa7, 0xe7, 0xaa, 0xac, 0xa1, 0xc3, 0x86, 0xe1, 0xae, 0x15, 0xe5, 0x49, 0x57, 0xd2, 0x2b, 0xff, 0xf1, 0xe5, 0x0a, 0xe7, 0xf2, 0x1b, 0xee, 0xa1, 0x97, 0xa5, }; static const unsigned char hmac_sha384_1131_msg[] = { 0xa6, 0xf3, 0x1b, 0x82, 0x2e, 0xc2, 0x4d, 0xa1, 0xb1, 0xe9, }; static const unsigned char hmac_sha384_1131_tag[] = { 0xa9, 0xc2, 0xd6, 0x8f, 0x0a, 0xd1, 0xba, 0x50, 0x08, 0x9b, 0x16, 0x9c, 0x86, 0xd9, 0x65, 0xf9, 0x7f, 0x52, 0x38, 0x8a, 0x48, 0xac, 0xe7, 0x44, }; static const wycheproof_hmac_test hmac_sha384_1131 = { .name = "hmac_sha384_1131", .hash = SHA384, .key = hmac_sha384_1131_key, .keylen = 48, .msg = hmac_sha384_1131_msg, .msglen = 10, .tag = hmac_sha384_1131_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1132 for HMAC, tcId is 93 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1132_key[] = { 0x1b, 0x32, 0xf9, 0xb6, 0x37, 0x89, 0x34, 0xa5, 0x02, 0xdd, 0x74, 0xd8, 0xb7, 0x4a, 0x46, 0x06, 0xd5, 0xb2, 0xc9, 0xa8, 0x58, 0x7f, 0xab, 0x1c, 0xfa, 0x90, 0xd7, 0x50, 0x07, 0x73, 0x4d, 0x2b, 0x8b, 0xdf, 0xe6, 0x34, 0x81, 0x52, 0x43, 0x52, 0x6e, 0xbc, 0x0f, 0x33, 0xc0, 0x4d, 0x0d, 0x05, }; static const unsigned char hmac_sha384_1132_msg[] = { 0x55, 0x36, 0x7c, 0x65, 0x7c, 0x79, 0x26, 0x10, 0xef, 0xdc, 0xc0, }; static const unsigned char hmac_sha384_1132_tag[] = { 0x93, 0x40, 0x83, 0xc8, 0x59, 0x45, 0x91, 0xda, 0x78, 0x3f, 0x0d, 0xa2, 0x8f, 0x4b, 0x58, 0xad, 0xb6, 0x04, 0xe9, 0xcc, 0x76, 0xb9, 0x9e, 0xfe, }; static const wycheproof_hmac_test hmac_sha384_1132 = { .name = "hmac_sha384_1132", .hash = SHA384, .key = hmac_sha384_1132_key, .keylen = 48, .msg = hmac_sha384_1132_msg, .msglen = 11, .tag = hmac_sha384_1132_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1133 for HMAC, tcId is 94 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1133_key[] = { 0x09, 0xd9, 0x1b, 0x2f, 0xa2, 0x2e, 0x68, 0xb5, 0x33, 0x5d, 0x47, 0x82, 0x35, 0xaa, 0x4e, 0x15, 0x74, 0x35, 0xc9, 0xac, 0xfe, 0xd7, 0x72, 0x21, 0x9a, 0xdf, 0xa1, 0xe9, 0xdd, 0x72, 0xf3, 0x3e, 0x1a, 0x21, 0x83, 0xa0, 0x20, 0x3a, 0x10, 0x4f, 0x80, 0xe6, 0x43, 0xcd, 0xf2, 0x9e, 0x5a, 0xff, }; static const unsigned char hmac_sha384_1133_msg[] = { 0xb3, 0x1e, 0x25, 0x49, 0x57, 0xdb, 0x6b, 0x1b, 0x70, 0xa0, 0x6c, 0xe2, }; static const unsigned char hmac_sha384_1133_tag[] = { 0x7d, 0x45, 0xf3, 0x89, 0x94, 0x55, 0x78, 0x7e, 0x71, 0x16, 0xb5, 0x70, 0xdf, 0x8f, 0x77, 0x87, 0xf6, 0x72, 0xd5, 0x82, 0x1d, 0x6f, 0x75, 0xfe, }; static const wycheproof_hmac_test hmac_sha384_1133 = { .name = "hmac_sha384_1133", .hash = SHA384, .key = hmac_sha384_1133_key, .keylen = 48, .msg = hmac_sha384_1133_msg, .msglen = 12, .tag = hmac_sha384_1133_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1134 for HMAC, tcId is 95 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1134_key[] = { 0xd3, 0x11, 0xa8, 0x0a, 0xc8, 0x01, 0xe3, 0x63, 0x9b, 0x91, 0x85, 0x60, 0x8a, 0xf4, 0xa8, 0x5e, 0x41, 0x22, 0xe2, 0x9b, 0x5c, 0x23, 0xf0, 0x52, 0x34, 0xc3, 0x0d, 0x92, 0xd5, 0x9a, 0xd1, 0x3c, 0xb8, 0x03, 0x90, 0xe5, 0xfa, 0x0e, 0xa4, 0xa5, 0x48, 0x53, 0x22, 0x8b, 0x35, 0x66, 0x89, 0xf5, }; static const unsigned char hmac_sha384_1134_msg[] = { 0xe6, 0xb4, 0x43, 0xdb, 0xa0, 0xda, 0xb3, 0x5d, 0x43, 0xca, 0x5d, 0x6c, 0xe6, }; static const unsigned char hmac_sha384_1134_tag[] = { 0x27, 0x29, 0x70, 0x96, 0xf5, 0x8f, 0x59, 0x83, 0x91, 0xc5, 0x77, 0x78, 0x12, 0x99, 0x49, 0xb9, 0x46, 0x28, 0xbf, 0x17, 0xbb, 0x24, 0x22, 0xd1, }; static const wycheproof_hmac_test hmac_sha384_1134 = { .name = "hmac_sha384_1134", .hash = SHA384, .key = hmac_sha384_1134_key, .keylen = 48, .msg = hmac_sha384_1134_msg, .msglen = 13, .tag = hmac_sha384_1134_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1135 for HMAC, tcId is 96 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1135_key[] = { 0x06, 0x29, 0x7e, 0x6c, 0x46, 0x55, 0x8b, 0x9b, 0x0f, 0xc3, 0x6c, 0x27, 0x2b, 0x4a, 0xe7, 0xe6, 0x5d, 0xd5, 0x36, 0xcc, 0x1d, 0x13, 0xac, 0xbf, 0xa8, 0x31, 0xfa, 0x55, 0x74, 0xb3, 0x4f, 0x99, 0xe0, 0x9a, 0xdf, 0xb7, 0xf2, 0x03, 0x21, 0xf2, 0x03, 0x07, 0x5f, 0xd2, 0x6e, 0xd2, 0xe2, 0x9d, }; static const unsigned char hmac_sha384_1135_msg[] = { 0x30, 0x9b, 0x95, 0xe5, 0xf1, 0xec, 0x26, 0xf7, 0x07, 0x86, 0xe7, 0x4d, 0x80, 0x6d, }; static const unsigned char hmac_sha384_1135_tag[] = { 0xaa, 0xbf, 0xf2, 0x6f, 0xc4, 0x4a, 0x40, 0xf0, 0xb8, 0x7a, 0x40, 0xc1, 0x75, 0xc1, 0x7e, 0xa7, 0x14, 0x0f, 0x84, 0x67, 0xdc, 0xdb, 0x95, 0xcd, }; static const wycheproof_hmac_test hmac_sha384_1135 = { .name = "hmac_sha384_1135", .hash = SHA384, .key = hmac_sha384_1135_key, .keylen = 48, .msg = hmac_sha384_1135_msg, .msglen = 14, .tag = hmac_sha384_1135_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1136 for HMAC, tcId is 97 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1136_key[] = { 0xe8, 0xb6, 0x3a, 0x25, 0xcd, 0x85, 0xad, 0x4f, 0x39, 0xe3, 0xc0, 0xe9, 0x58, 0x4e, 0xac, 0xb9, 0x4d, 0x6a, 0xe3, 0x3f, 0x98, 0x4d, 0xa2, 0x59, 0xaa, 0x53, 0x3d, 0x4d, 0x28, 0xae, 0xb3, 0x41, 0xcf, 0x3f, 0xfe, 0x49, 0xc0, 0x29, 0xe4, 0xaf, 0x6a, 0x48, 0x05, 0xf7, 0x60, 0xf3, 0x5f, 0x2c, }; static const unsigned char hmac_sha384_1136_msg[] = { 0xd2, 0x25, 0xc2, 0x77, 0x95, 0xf8, 0x09, 0x45, 0x4b, 0xb2, 0xc5, 0x1d, 0x21, 0xf3, 0xac, }; static const unsigned char hmac_sha384_1136_tag[] = { 0x0e, 0x12, 0xb7, 0x58, 0x01, 0x5a, 0xc8, 0x97, 0x97, 0xd5, 0x54, 0x70, 0xf3, 0x98, 0x2c, 0x13, 0xa5, 0xff, 0x14, 0x83, 0x27, 0x60, 0x83, 0xd2, }; static const wycheproof_hmac_test hmac_sha384_1136 = { .name = "hmac_sha384_1136", .hash = SHA384, .key = hmac_sha384_1136_key, .keylen = 48, .msg = hmac_sha384_1136_msg, .msglen = 15, .tag = hmac_sha384_1136_tag, .taglen = 24, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1137 for HMAC, tcId is 98 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1137_key[] = { 0xd8, 0x3a, 0x68, 0x5a, 0xce, 0x9f, 0xa0, 0xc0, 0xaa, 0x47, 0xf0, 0xc7, 0xb4, 0xf0, 0xf0, 0x07, 0x17, 0x61, 0x9a, 0x82, 0xe2, 0xee, 0xff, 0x87, 0xf5, 0x1f, 0x67, 0xd8, 0x14, 0xd5, 0x1d, 0xd9, 0xe4, 0xca, 0xd7, 0x57, 0x8a, 0x4e, 0x49, 0xb6, 0x72, 0xb5, 0xaf, 0x83, 0x94, 0x3c, 0x25, 0x83, }; static const unsigned char hmac_sha384_1137_msg[] = { 0xab, 0xfa, 0x7f, 0x59, 0x78, 0xf7, 0x51, 0xe8, 0x7e, 0x8b, 0x5a, 0x15, 0xa6, 0xe8, 0x9f, 0x4f, }; static const unsigned char hmac_sha384_1137_tag[] = { 0xe4, 0xe6, 0xba, 0x04, 0x1b, 0xbb, 0x7a, 0x47, 0xec, 0x84, 0x82, 0xb2, 0x04, 0x34, 0x55, 0xc1, 0x19, 0xfb, 0xdb, 0x38, 0x9a, 0x39, 0x45, 0xa0, }; static const wycheproof_hmac_test hmac_sha384_1137 = { .name = "hmac_sha384_1137", .hash = SHA384, .key = hmac_sha384_1137_key, .keylen = 48, .msg = hmac_sha384_1137_msg, .msglen = 16, .tag = hmac_sha384_1137_tag, .taglen = 24, .result = 1, .comment = ", tcId is 98 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1138 for HMAC, tcId is 99 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1138_key[] = { 0x5b, 0xea, 0xf4, 0x06, 0xa6, 0x62, 0x7e, 0xaa, 0xfc, 0xad, 0xb6, 0xde, 0xa4, 0xe2, 0x7b, 0xa4, 0xfd, 0x87, 0x9f, 0xd3, 0xe5, 0xbf, 0xd8, 0x7e, 0xa3, 0xc8, 0xd5, 0xe0, 0xac, 0xfb, 0xbd, 0xa2, 0xc6, 0xbf, 0x00, 0x6b, 0xea, 0xf5, 0xa3, 0x03, 0x12, 0xe6, 0x90, 0x72, 0x4c, 0x47, 0x44, 0xa3, }; static const unsigned char hmac_sha384_1138_msg[] = { 0xbc, 0x57, 0xd4, 0x67, 0xa9, 0xa2, 0xaf, 0x64, 0xad, 0x5e, 0x14, 0xb7, 0xbc, 0x08, 0x98, 0xdc, 0x63, }; static const unsigned char hmac_sha384_1138_tag[] = { 0x3f, 0xab, 0x1a, 0x7a, 0x19, 0x23, 0x59, 0xb6, 0x33, 0x3a, 0x96, 0x99, 0xb7, 0x56, 0x12, 0x21, 0x1a, 0x38, 0xb6, 0xdc, 0xca, 0xb4, 0x57, 0x2d, }; static const wycheproof_hmac_test hmac_sha384_1138 = { .name = "hmac_sha384_1138", .hash = SHA384, .key = hmac_sha384_1138_key, .keylen = 48, .msg = hmac_sha384_1138_msg, .msglen = 17, .tag = hmac_sha384_1138_tag, .taglen = 24, .result = 1, .comment = ", tcId is 99 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1139 for HMAC, tcId is 100 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1139_key[] = { 0x76, 0xb3, 0x6c, 0xc3, 0xb8, 0xca, 0x97, 0x57, 0x08, 0xee, 0x4b, 0x32, 0xbd, 0xbe, 0x40, 0xca, 0x13, 0xf9, 0xce, 0x38, 0x4c, 0x52, 0xc4, 0xb6, 0x60, 0x2b, 0x7f, 0xd9, 0x21, 0x64, 0xf1, 0xfd, 0x84, 0x32, 0x70, 0x6c, 0x19, 0x66, 0xf6, 0x48, 0xbf, 0x48, 0x30, 0xf4, 0xde, 0xb3, 0x47, 0x95, }; static const unsigned char hmac_sha384_1139_msg[] = { 0xb1, 0xd0, 0x22, 0xc6, 0x53, 0x6f, 0x40, 0x1d, 0x14, 0x7d, 0xfc, 0x0d, 0x7d, 0x4e, 0x60, 0x0b, 0xb7, 0x53, 0xef, 0x0e, 0x9f, 0x24, 0x3b, 0xc3, }; static const unsigned char hmac_sha384_1139_tag[] = { 0xc9, 0x1e, 0xb3, 0xf3, 0x62, 0x04, 0x9c, 0x53, 0x36, 0xc5, 0x07, 0x4c, 0xb8, 0x87, 0xed, 0xcb, 0x27, 0xaa, 0xc1, 0xef, 0x65, 0x75, 0xa9, 0x2d, }; static const wycheproof_hmac_test hmac_sha384_1139 = { .name = "hmac_sha384_1139", .hash = SHA384, .key = hmac_sha384_1139_key, .keylen = 48, .msg = hmac_sha384_1139_msg, .msglen = 24, .tag = hmac_sha384_1139_tag, .taglen = 24, .result = 1, .comment = ", tcId is 100 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1140 for HMAC, tcId is 101 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1140_key[] = { 0x20, 0x56, 0x9a, 0x16, 0xf4, 0x53, 0xdd, 0x3c, 0x34, 0xdf, 0x98, 0x15, 0x52, 0x86, 0xb1, 0xca, 0x8a, 0x39, 0x2e, 0xa1, 0x64, 0xc9, 0x19, 0x31, 0x1f, 0x0d, 0xf9, 0xd3, 0x9d, 0x97, 0x60, 0x62, 0xf4, 0xf9, 0x92, 0xb9, 0x6d, 0xef, 0x38, 0x51, 0x88, 0x6e, 0x62, 0x95, 0xf2, 0x61, 0x50, 0x64, }; static const unsigned char hmac_sha384_1140_msg[] = { 0x54, 0x02, 0xc4, 0xe6, 0x83, 0xd1, 0xa4, 0x31, 0x86, 0x8a, 0xd5, 0x28, 0xaf, 0xbf, 0x41, 0x28, 0xb0, 0xb1, 0x0c, 0xef, 0x94, 0x7d, 0x06, 0x3b, 0x34, 0xd3, 0x76, 0xd3, 0x44, 0xb7, 0x93, 0xb2, }; static const unsigned char hmac_sha384_1140_tag[] = { 0x27, 0x72, 0x80, 0x59, 0x69, 0x6a, 0xed, 0x5b, 0xb0, 0x0a, 0x13, 0xc1, 0xdb, 0x10, 0x06, 0x91, 0xd4, 0xa2, 0x1e, 0xbe, 0xa0, 0xa8, 0xe4, 0xc3, }; static const wycheproof_hmac_test hmac_sha384_1140 = { .name = "hmac_sha384_1140", .hash = SHA384, .key = hmac_sha384_1140_key, .keylen = 48, .msg = hmac_sha384_1140_msg, .msglen = 32, .tag = hmac_sha384_1140_tag, .taglen = 24, .result = 1, .comment = ", tcId is 101 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1141 for HMAC, tcId is 102 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1141_key[] = { 0x9e, 0xf6, 0xa5, 0x5f, 0x8a, 0x9b, 0x6b, 0x9e, 0xf1, 0xf8, 0x29, 0x61, 0x67, 0x31, 0x90, 0x78, 0x16, 0x37, 0x06, 0xae, 0x5b, 0x60, 0x89, 0x7c, 0x2d, 0xd6, 0xe3, 0x40, 0xb6, 0x7e, 0xd5, 0xd5, 0x77, 0xfb, 0x54, 0xc5, 0x54, 0x7c, 0xd5, 0xf2, 0x48, 0xf0, 0x6e, 0x70, 0x82, 0xff, 0xb8, 0x26, }; static const unsigned char hmac_sha384_1141_msg[] = { 0x6a, 0x0d, 0x16, 0x27, 0x69, 0x41, 0xd8, 0xf0, 0x4e, 0xac, 0x2e, 0xc7, 0x23, 0xfa, 0x53, 0xb9, 0xd6, 0xb1, 0x6d, 0xa7, 0xe3, 0x0e, 0x7f, 0x2d, 0x9a, 0xd8, 0x98, 0xe7, 0xcb, 0xb7, 0x1b, 0xd3, 0xdd, 0x23, 0x4e, 0xe2, 0x28, 0x36, 0xff, 0x4a, 0xc6, 0x01, 0x1b, 0x6f, 0x12, 0xbd, 0x3a, }; static const unsigned char hmac_sha384_1141_tag[] = { 0xce, 0xf5, 0xd9, 0x00, 0xee, 0xf0, 0xab, 0xef, 0xc6, 0x25, 0xc1, 0xd2, 0x86, 0x2a, 0x3f, 0x42, 0x99, 0x8c, 0xe8, 0xb1, 0xe0, 0x07, 0xd2, 0xb8, }; static const wycheproof_hmac_test hmac_sha384_1141 = { .name = "hmac_sha384_1141", .hash = SHA384, .key = hmac_sha384_1141_key, .keylen = 48, .msg = hmac_sha384_1141_msg, .msglen = 47, .tag = hmac_sha384_1141_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1142 for HMAC, tcId is 103 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1142_key[] = { 0xfb, 0x56, 0xbb, 0xbc, 0x6d, 0x75, 0x1b, 0x74, 0x4d, 0x8c, 0x1b, 0x57, 0xcc, 0x27, 0xa1, 0xd2, 0xc2, 0xf4, 0xe3, 0x8e, 0x34, 0x91, 0xf5, 0x44, 0x48, 0xcf, 0xcf, 0xb9, 0x38, 0x9b, 0x7f, 0x63, 0xfd, 0x0d, 0x41, 0x92, 0x09, 0x68, 0xef, 0x61, 0x25, 0x10, 0x62, 0x5f, 0x26, 0x37, 0xd2, 0x8d, }; static const unsigned char hmac_sha384_1142_msg[] = { 0xcf, 0x17, 0x91, 0x51, 0x7e, 0xf5, 0xa6, 0x1c, 0x0d, 0xb6, 0x5a, 0x66, 0x8b, 0xee, 0x26, 0xfd, 0xbc, 0x97, 0x5d, 0x79, 0x9b, 0x26, 0x23, 0xcc, 0x0f, 0x3e, 0x45, 0x60, 0xe8, 0x0c, 0x70, 0x14, 0xfa, 0x9c, 0x02, 0xd5, 0x68, 0xc9, 0x8c, 0x86, 0x38, 0x5e, 0x00, 0x0f, 0xe6, 0x77, 0x6b, 0xb7, }; static const unsigned char hmac_sha384_1142_tag[] = { 0x88, 0xe9, 0x9a, 0xcc, 0xc9, 0xc2, 0x3c, 0x9c, 0x8c, 0x11, 0x10, 0xe7, 0x47, 0x0c, 0xad, 0xe0, 0x31, 0x78, 0x17, 0x91, 0x6d, 0x85, 0x05, 0xf5, }; static const wycheproof_hmac_test hmac_sha384_1142 = { .name = "hmac_sha384_1142", .hash = SHA384, .key = hmac_sha384_1142_key, .keylen = 48, .msg = hmac_sha384_1142_msg, .msglen = 48, .tag = hmac_sha384_1142_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1143 for HMAC, tcId is 104 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1143_key[] = { 0xd0, 0x41, 0xe2, 0x4e, 0x59, 0xb3, 0x4d, 0x7a, 0x18, 0x12, 0x8a, 0x42, 0xd8, 0xa7, 0xa5, 0x2d, 0xcb, 0xa5, 0xd7, 0x9e, 0x5e, 0xd5, 0x85, 0xb5, 0x5c, 0x7c, 0x9e, 0x49, 0x46, 0xe5, 0xcc, 0xaf, 0x7e, 0x59, 0xdf, 0x0f, 0x3d, 0xa9, 0x8c, 0x7d, 0x05, 0x23, 0xe4, 0xcc, 0x8f, 0x9d, 0x7d, 0xa4, }; static const unsigned char hmac_sha384_1143_msg[] = { 0x52, 0x79, 0x61, 0x8f, 0x1b, 0x41, 0x53, 0x49, 0x10, 0x39, 0x5a, 0x78, 0xde, 0xd9, 0x68, 0xae, 0xe3, 0x43, 0x10, 0x85, 0xb5, 0x99, 0xc4, 0xf5, 0x5e, 0xb5, 0xff, 0x8a, 0x2e, 0x87, 0x9b, 0xc4, 0x42, 0x91, 0xd9, 0x23, 0xde, 0x31, 0x00, 0x9d, 0xb1, 0xb9, 0xf7, 0xf8, 0x10, 0x95, 0xaf, 0xb3, 0xea, }; static const unsigned char hmac_sha384_1143_tag[] = { 0x85, 0x00, 0xf6, 0x03, 0xce, 0x85, 0xc0, 0x30, 0xcf, 0xa0, 0x57, 0x31, 0x75, 0x8b, 0x6b, 0xe3, 0x31, 0x7b, 0x6f, 0xe8, 0xe9, 0x9b, 0x7d, 0x48, }; static const wycheproof_hmac_test hmac_sha384_1143 = { .name = "hmac_sha384_1143", .hash = SHA384, .key = hmac_sha384_1143_key, .keylen = 48, .msg = hmac_sha384_1143_msg, .msglen = 49, .tag = hmac_sha384_1143_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1144 for HMAC, tcId is 105 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1144_key[] = { 0xe1, 0xce, 0x48, 0x84, 0xfd, 0x74, 0xa0, 0xe1, 0x97, 0xc6, 0x8a, 0xce, 0x3b, 0x29, 0xb5, 0x52, 0x31, 0x3a, 0xf8, 0xe4, 0x51, 0xe9, 0x8d, 0x9a, 0xb8, 0xd0, 0xe8, 0xf8, 0xee, 0x74, 0x14, 0x3e, 0x8f, 0xcb, 0x64, 0x46, 0x21, 0x7c, 0x0f, 0x31, 0x23, 0xa4, 0x26, 0xb8, 0xab, 0x6f, 0x62, 0xcb, }; static const unsigned char hmac_sha384_1144_msg[] = { 0x71, 0x15, 0x4b, 0x9a, 0x65, 0x7b, 0x90, 0x5f, 0x88, 0x4b, 0xa5, 0x14, 0x0d, 0x5e, 0x7b, 0x92, 0x43, 0xfe, 0xc3, 0xe0, 0x3f, 0xbb, 0xdb, 0xb3, 0x60, 0xc8, 0x19, 0x49, 0x63, 0xae, 0x43, 0x17, 0x7b, 0x55, 0x02, 0xcd, 0x20, 0xf5, 0x59, 0xee, 0xef, 0xf8, 0x63, 0x8d, 0x02, 0x8c, 0x50, 0x19, 0x26, 0xeb, 0xc7, 0xed, 0xdd, 0x13, 0x2c, 0xce, 0xa2, 0x9e, 0xad, 0x7a, 0xd0, 0xc9, 0x5a, 0x30, 0xb9, 0xd3, 0x25, 0x95, 0x2c, 0xaf, 0xb0, 0xea, 0x5e, 0xc9, 0xd9, 0xd6, 0xfd, 0xeb, 0x63, 0x95, 0x0d, 0x5d, 0x69, 0xc8, 0xbb, 0xbe, 0xa7, 0x02, 0xae, 0xd1, 0xd4, 0x44, 0xda, 0x28, 0x68, 0x07, 0xff, 0xd6, 0xb3, 0x6c, 0xb4, 0x99, 0x02, 0xcb, 0xa7, 0xab, 0xf9, 0xbd, 0xa1, 0xb5, 0x77, 0xc6, }; static const unsigned char hmac_sha384_1144_tag[] = { 0xc7, 0xe9, 0xae, 0x2a, 0x81, 0xde, 0x32, 0x28, 0x0b, 0x51, 0x8d, 0x05, 0x5c, 0x2c, 0x9d, 0x7f, 0x0f, 0x5d, 0xb6, 0xd0, 0x6a, 0xd0, 0xe4, 0xae, }; static const wycheproof_hmac_test hmac_sha384_1144 = { .name = "hmac_sha384_1144", .hash = SHA384, .key = hmac_sha384_1144_key, .keylen = 48, .msg = hmac_sha384_1144_msg, .msglen = 112, .tag = hmac_sha384_1144_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1145 for HMAC, tcId is 106 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1145_key[] = { 0x8a, 0x24, 0x2c, 0x22, 0xd1, 0xb5, 0x4c, 0xe2, 0x16, 0xca, 0x03, 0xc8, 0x84, 0x55, 0xbe, 0xb1, 0x28, 0x21, 0x1a, 0x9f, 0x35, 0xaf, 0x23, 0x43, 0x70, 0x9a, 0xf7, 0xc5, 0xf4, 0x3a, 0x68, 0x14, 0x51, 0xea, 0x53, 0xa3, 0x6d, 0xe2, 0xe5, 0x04, 0x8e, 0xb4, 0x4a, 0x51, 0x68, 0x1c, 0x61, 0x20, }; static const unsigned char hmac_sha384_1145_msg[] = { 0xab, 0x5e, 0xee, 0x6b, 0x83, 0x86, 0x91, 0x19, 0xf0, 0x0d, 0xd3, 0xcc, 0x66, 0xdd, 0xe7, 0x5c, 0xb5, 0x70, 0x05, 0x35, 0xa9, 0x0e, 0x9b, 0x3e, 0x32, 0xb3, 0x14, 0x34, 0xc2, 0x97, 0xef, 0x53, 0xf9, 0x46, 0x59, 0xd7, 0xd9, 0xb1, 0x13, 0x23, 0x16, 0x1b, 0x2e, 0x66, 0xc6, 0xb9, 0xc9, 0xad, 0x20, 0xe3, 0x13, 0x30, 0x3f, 0x81, 0xe8, 0x8e, 0x47, 0x17, 0x86, 0xc8, 0xe9, 0x36, 0x01, 0x1f, 0x78, 0x12, 0x1e, 0x39, 0x63, 0x0b, 0x2e, 0x08, 0x04, 0xfc, 0x97, 0xce, 0x5c, 0xb3, 0xa3, 0x4f, 0x26, 0x94, 0x94, 0x39, 0xfe, 0x53, 0x0a, 0xdc, 0xea, 0x6e, 0x97, 0xc7, 0x8b, 0x04, 0x2e, 0x08, 0x17, 0x25, 0x3b, 0xf7, 0x5d, 0xd5, 0x43, 0x35, 0x58, 0x41, 0x22, 0xf5, 0xed, 0xd2, 0x10, 0x34, 0x1b, 0x6d, 0x93, 0xf5, 0x8a, 0xa1, 0xb4, 0xde, 0x2a, 0xad, 0x76, 0xfe, 0xce, 0xc4, 0x4f, }; static const unsigned char hmac_sha384_1145_tag[] = { 0x77, 0x39, 0x2b, 0x18, 0x57, 0x7b, 0xa8, 0x81, 0x9f, 0xbd, 0x76, 0xfc, 0x73, 0xd4, 0x50, 0x29, 0xe5, 0x5e, 0x7e, 0xbe, 0xcd, 0x58, 0xa3, 0x20, }; static const wycheproof_hmac_test hmac_sha384_1145 = { .name = "hmac_sha384_1145", .hash = SHA384, .key = hmac_sha384_1145_key, .keylen = 48, .msg = hmac_sha384_1145_msg, .msglen = 127, .tag = hmac_sha384_1145_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1146 for HMAC, tcId is 107 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1146_key[] = { 0x31, 0x1c, 0x4b, 0xee, 0x7c, 0xf2, 0x57, 0xb7, 0x80, 0x13, 0x5a, 0x2e, 0x4a, 0x64, 0x13, 0xe6, 0x8a, 0x81, 0x6f, 0x5d, 0x84, 0x62, 0x51, 0x5d, 0xcb, 0x1c, 0x72, 0x49, 0x4b, 0x63, 0x35, 0x58, 0x1a, 0x9b, 0x60, 0xa2, 0x17, 0xb9, 0xff, 0x1c, 0x75, 0xe7, 0x76, 0x81, 0x48, 0xf8, 0xdf, 0x46, }; static const unsigned char hmac_sha384_1146_msg[] = { 0x63, 0xcc, 0xc3, 0x84, 0x9c, 0x4c, 0x32, 0x3c, 0xb6, 0xce, 0x92, 0x68, 0x77, 0x96, 0x90, 0x48, 0xb8, 0x49, 0xee, 0x4a, 0xf1, 0x8e, 0x71, 0xee, 0xf5, 0x2f, 0xe9, 0xf2, 0x74, 0xa8, 0x67, 0x85, 0x60, 0xf9, 0xa5, 0xd4, 0x75, 0x10, 0xc3, 0xc9, 0x8c, 0x8a, 0x08, 0xed, 0x4c, 0x01, 0xa0, 0x1e, 0x0a, 0x36, 0x63, 0xef, 0x0c, 0xc6, 0xc3, 0xcd, 0xca, 0x62, 0x76, 0xd9, 0x1e, 0x99, 0xb0, 0xd4, 0x14, 0x26, 0x34, 0x98, 0xfb, 0x64, 0xad, 0x74, 0xb8, 0x20, 0xab, 0x52, 0xb3, 0x7a, 0xde, 0xaf, 0x27, 0xcb, 0x44, 0x54, 0x5e, 0xdb, 0x8f, 0x09, 0x09, 0x49, 0x92, 0x83, 0x7b, 0x8d, 0x3a, 0x0b, 0xaa, 0x2a, 0x10, 0x1a, 0x49, 0x59, 0x2e, 0xb8, 0x89, 0xdc, 0x8b, 0xac, 0xe4, 0xc7, 0x1e, 0x3e, 0xfc, 0xb9, 0xd4, 0x14, 0x9b, 0xd6, 0x70, 0xce, 0x2f, 0x77, 0x4d, 0x73, 0xc1, 0x2f, 0x2a, 0x45, }; static const unsigned char hmac_sha384_1146_tag[] = { 0x94, 0x67, 0x4a, 0xae, 0xfc, 0x06, 0xee, 0xad, 0x22, 0xd1, 0x53, 0x17, 0x90, 0x0f, 0xa2, 0x6c, 0x8d, 0xf8, 0xcd, 0xfb, 0x25, 0x2b, 0xca, 0xae, }; static const wycheproof_hmac_test hmac_sha384_1146 = { .name = "hmac_sha384_1146", .hash = SHA384, .key = hmac_sha384_1146_key, .keylen = 48, .msg = hmac_sha384_1146_msg, .msglen = 128, .tag = hmac_sha384_1146_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1147 for HMAC, tcId is 108 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1147_key[] = { 0xfb, 0x79, 0x28, 0x67, 0xc8, 0x92, 0x8f, 0x05, 0x03, 0xaa, 0x24, 0x47, 0x7c, 0xeb, 0xf4, 0x2e, 0x0b, 0x01, 0x83, 0x46, 0xe3, 0x61, 0x97, 0x70, 0xb9, 0xe8, 0xf5, 0x09, 0x79, 0x45, 0xe2, 0xe2, 0x75, 0xad, 0x06, 0xf0, 0xc1, 0x21, 0x52, 0x36, 0x6a, 0xc0, 0x6e, 0x27, 0x8c, 0x94, 0x09, 0x0a, }; static const unsigned char hmac_sha384_1147_msg[] = { 0x0a, 0x63, 0xe6, 0xd9, 0x1d, 0x7a, 0x6a, 0x18, 0xdb, 0xad, 0x87, 0x9f, 0xb8, 0xe2, 0x3a, 0xe3, 0x51, 0x92, 0x03, 0x91, 0xeb, 0x40, 0xfe, 0xad, 0x6c, 0xba, 0x84, 0x67, 0x68, 0xa2, 0xc6, 0x79, 0x7f, 0xf3, 0x47, 0xb4, 0x30, 0x13, 0x27, 0xb0, 0x9a, 0xfc, 0x41, 0xf7, 0xb8, 0x03, 0xaf, 0x6b, 0x61, 0xf6, 0xd9, 0xb8, 0x18, 0xe0, 0xdd, 0xcc, 0x02, 0x53, 0x6d, 0x05, 0x43, 0xdb, 0xf1, 0xa8, 0x7f, 0x2c, 0x5e, 0x02, 0x0f, 0x64, 0x59, 0x09, 0x43, 0x44, 0xb7, 0x25, 0x96, 0xd5, 0x48, 0x43, 0x5c, 0x31, 0x35, 0x44, 0xe9, 0x2c, 0x25, 0x4d, 0x54, 0xa7, 0x0a, 0x1d, 0x6f, 0x6e, 0xdd, 0x2f, 0x82, 0x54, 0x0a, 0x1e, 0xa2, 0xe8, 0x21, 0x25, 0xb0, 0x71, 0x5f, 0xa0, 0xf8, 0x90, 0xbb, 0x2b, 0xe4, 0xba, 0x00, 0x65, 0xd2, 0xba, 0x01, 0x44, 0x85, 0x46, 0x82, 0xae, 0xd0, 0x41, 0xc1, 0x03, 0x59, 0x96, 0x64, 0x8e, 0x2e, 0xd6, 0x71, 0xb7, 0x25, 0x3b, 0xa5, 0x67, 0xff, 0xb9, 0x99, 0xd9, 0x1f, 0xd8, 0xe7, 0xff, 0xce, 0x5c, 0x6d, 0xc4, 0x79, 0x07, 0x32, 0xad, 0xae, 0x44, 0x34, 0x35, 0xa4, 0x54, 0xfe, 0x6c, 0x2a, 0x7c, 0x67, 0x08, 0xd9, 0xd5, 0xb2, 0xeb, 0x92, 0x92, 0xd6, 0xfb, 0xe5, 0xe0, 0x26, 0xd6, 0x53, 0x32, 0xb3, 0x8c, 0x79, 0x25, 0xef, 0xf9, 0xbe, 0xb8, 0x90, 0x63, 0xca, 0xb6, 0x3f, 0xbe, 0xcb, 0x2a, 0xc0, 0xe1, 0xbb, 0x61, 0xa5, 0xb1, 0xe5, 0x11, 0xf9, 0x49, 0xc4, 0x3a, 0x34, 0xee, 0x26, 0xf1, 0x15, 0x6e, 0x97, 0x79, 0x3d, 0xa9, 0x7b, 0xcf, 0x5b, 0x5c, 0x67, 0x64, 0x13, 0x84, 0xf2, 0x68, 0x13, 0x1b, 0x29, 0x78, 0x57, 0xd7, 0x19, 0xee, 0xb6, 0xca, 0xfa, 0x3d, 0xbe, 0x9b, 0x8d, 0x0d, 0xa5, 0x5c, 0x98, 0x65, 0x6f, 0x20, 0xe5, 0xb3, 0x9b, }; static const unsigned char hmac_sha384_1147_tag[] = { 0x1a, 0xaa, 0xff, 0x96, 0x6c, 0x0a, 0x84, 0xba, 0xc7, 0x91, 0xab, 0x9e, 0x0b, 0x9b, 0x50, 0x5d, 0x39, 0x30, 0x73, 0x66, 0x57, 0x32, 0xa7, 0x4a, }; static const wycheproof_hmac_test hmac_sha384_1147 = { .name = "hmac_sha384_1147", .hash = SHA384, .key = hmac_sha384_1147_key, .keylen = 48, .msg = hmac_sha384_1147_msg, .msglen = 255, .tag = hmac_sha384_1147_tag, .taglen = 24, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1148 for HMAC, tcId is 109 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1148_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1148_tag[] = { 0x45, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1148 = { .name = "hmac_sha384_1148", .hash = SHA384, .key = hmac_sha384_1148_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1148_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1149 for HMAC, tcId is 110 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1149_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1149_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1149_tag[] = { 0xa8, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1149 = { .name = "hmac_sha384_1149", .hash = SHA384, .key = hmac_sha384_1149_key, .keylen = 48, .msg = hmac_sha384_1149_msg, .msglen = 16, .tag = hmac_sha384_1149_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1150 for HMAC, tcId is 111 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1150_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1150_tag[] = { 0x46, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1150 = { .name = "hmac_sha384_1150", .hash = SHA384, .key = hmac_sha384_1150_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1150_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1151 for HMAC, tcId is 112 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1151_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1151_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1151_tag[] = { 0xab, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1151 = { .name = "hmac_sha384_1151", .hash = SHA384, .key = hmac_sha384_1151_key, .keylen = 48, .msg = hmac_sha384_1151_msg, .msglen = 16, .tag = hmac_sha384_1151_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1152 for HMAC, tcId is 113 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1152_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1152_tag[] = { 0xc4, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1152 = { .name = "hmac_sha384_1152", .hash = SHA384, .key = hmac_sha384_1152_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1152_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1153 for HMAC, tcId is 114 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1153_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1153_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1153_tag[] = { 0x29, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1153 = { .name = "hmac_sha384_1153", .hash = SHA384, .key = hmac_sha384_1153_key, .keylen = 48, .msg = hmac_sha384_1153_msg, .msglen = 16, .tag = hmac_sha384_1153_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1154 for HMAC, tcId is 115 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1154_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1154_tag[] = { 0x44, 0xbf, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1154 = { .name = "hmac_sha384_1154", .hash = SHA384, .key = hmac_sha384_1154_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1154_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1155 for HMAC, tcId is 116 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1155_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1155_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1155_tag[] = { 0xa9, 0x4c, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1155 = { .name = "hmac_sha384_1155", .hash = SHA384, .key = hmac_sha384_1155_key, .keylen = 48, .msg = hmac_sha384_1155_msg, .msglen = 16, .tag = hmac_sha384_1155_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1156 for HMAC, tcId is 117 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1156_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1156_tag[] = { 0x44, 0xbe, 0x81, 0x44, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1156 = { .name = "hmac_sha384_1156", .hash = SHA384, .key = hmac_sha384_1156_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1156_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1157 for HMAC, tcId is 118 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1157_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1157_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1157_tag[] = { 0xa9, 0x4d, 0x07, 0x7f, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1157 = { .name = "hmac_sha384_1157", .hash = SHA384, .key = hmac_sha384_1157_key, .keylen = 48, .msg = hmac_sha384_1157_msg, .msglen = 16, .tag = hmac_sha384_1157_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1158 for HMAC, tcId is 119 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1158_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1158_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x14, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1158 = { .name = "hmac_sha384_1158", .hash = SHA384, .key = hmac_sha384_1158_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1158_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1159 for HMAC, tcId is 120 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1159_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1159_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1159_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x91, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1159 = { .name = "hmac_sha384_1159", .hash = SHA384, .key = hmac_sha384_1159_key, .keylen = 48, .msg = hmac_sha384_1159_msg, .msglen = 16, .tag = hmac_sha384_1159_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1160 for HMAC, tcId is 121 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1160_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1160_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x17, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1160 = { .name = "hmac_sha384_1160", .hash = SHA384, .key = hmac_sha384_1160_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1160_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1161 for HMAC, tcId is 122 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1161_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1161_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1161_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x92, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1161 = { .name = "hmac_sha384_1161", .hash = SHA384, .key = hmac_sha384_1161_key, .keylen = 48, .msg = hmac_sha384_1161_msg, .msglen = 16, .tag = hmac_sha384_1161_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1162 for HMAC, tcId is 123 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1162_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1162_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1162 = { .name = "hmac_sha384_1162", .hash = SHA384, .key = hmac_sha384_1162_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1162_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1163 for HMAC, tcId is 124 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1163_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1163_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1163_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1163 = { .name = "hmac_sha384_1163", .hash = SHA384, .key = hmac_sha384_1163_key, .keylen = 48, .msg = hmac_sha384_1163_msg, .msglen = 16, .tag = hmac_sha384_1163_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1164 for HMAC, tcId is 125 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1164_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1164_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7b, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1164 = { .name = "hmac_sha384_1164", .hash = SHA384, .key = hmac_sha384_1164_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1164_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1165 for HMAC, tcId is 126 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1165_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1165_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1165_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x65, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1165 = { .name = "hmac_sha384_1165", .hash = SHA384, .key = hmac_sha384_1165_key, .keylen = 48, .msg = hmac_sha384_1165_msg, .msglen = 16, .tag = hmac_sha384_1165_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1166 for HMAC, tcId is 127 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1166_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1166_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0xfa, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1166 = { .name = "hmac_sha384_1166", .hash = SHA384, .key = hmac_sha384_1166_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1166_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1167 for HMAC, tcId is 128 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1167_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1167_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1167_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0xe4, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1167 = { .name = "hmac_sha384_1167", .hash = SHA384, .key = hmac_sha384_1167_key, .keylen = 48, .msg = hmac_sha384_1167_msg, .msglen = 16, .tag = hmac_sha384_1167_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1168 for HMAC, tcId is 129 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1168_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1168_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x42, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1168 = { .name = "hmac_sha384_1168", .hash = SHA384, .key = hmac_sha384_1168_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1168_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1169 for HMAC, tcId is 130 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1169_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1169_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1169_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0x90, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1169 = { .name = "hmac_sha384_1169", .hash = SHA384, .key = hmac_sha384_1169_key, .keylen = 48, .msg = hmac_sha384_1169_msg, .msglen = 16, .tag = hmac_sha384_1169_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1170 for HMAC, tcId is 131 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1170_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1170_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa5, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1170 = { .name = "hmac_sha384_1170", .hash = SHA384, .key = hmac_sha384_1170_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1170_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1171 for HMAC, tcId is 132 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1171_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1171_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1171_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x37, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1171 = { .name = "hmac_sha384_1171", .hash = SHA384, .key = hmac_sha384_1171_key, .keylen = 48, .msg = hmac_sha384_1171_msg, .msglen = 16, .tag = hmac_sha384_1171_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1172 for HMAC, tcId is 133 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1172_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1172_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x89, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1172 = { .name = "hmac_sha384_1172", .hash = SHA384, .key = hmac_sha384_1172_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1172_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1173 for HMAC, tcId is 134 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1173_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1173_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1173_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd6, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1173 = { .name = "hmac_sha384_1173", .hash = SHA384, .key = hmac_sha384_1173_key, .keylen = 48, .msg = hmac_sha384_1173_msg, .msglen = 16, .tag = hmac_sha384_1173_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1174 for HMAC, tcId is 135 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1174_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1174_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x8a, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1174 = { .name = "hmac_sha384_1174", .hash = SHA384, .key = hmac_sha384_1174_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1174_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1175 for HMAC, tcId is 136 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1175_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1175_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1175_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd5, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1175 = { .name = "hmac_sha384_1175", .hash = SHA384, .key = hmac_sha384_1175_key, .keylen = 48, .msg = hmac_sha384_1175_msg, .msglen = 16, .tag = hmac_sha384_1175_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1176 for HMAC, tcId is 137 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1176_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1176_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x08, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1176 = { .name = "hmac_sha384_1176", .hash = SHA384, .key = hmac_sha384_1176_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1176_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1177 for HMAC, tcId is 138 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1177_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1177_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1177_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0x57, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1177 = { .name = "hmac_sha384_1177", .hash = SHA384, .key = hmac_sha384_1177_key, .keylen = 48, .msg = hmac_sha384_1177_msg, .msglen = 16, .tag = hmac_sha384_1177_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1178 for HMAC, tcId is 139 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1178_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1178_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6d, }; static const wycheproof_hmac_test hmac_sha384_1178 = { .name = "hmac_sha384_1178", .hash = SHA384, .key = hmac_sha384_1178_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1178_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 184 in tag, tcId is 139 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1179 for HMAC, tcId is 140 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1179_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1179_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1179_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x14, }; static const wycheproof_hmac_test hmac_sha384_1179 = { .name = "hmac_sha384_1179", .hash = SHA384, .key = hmac_sha384_1179_key, .keylen = 48, .msg = hmac_sha384_1179_msg, .msglen = 16, .tag = hmac_sha384_1179_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 184 in tag, tcId is 140 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1180 for HMAC, tcId is 141 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1180_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1180_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6e, }; static const wycheproof_hmac_test hmac_sha384_1180 = { .name = "hmac_sha384_1180", .hash = SHA384, .key = hmac_sha384_1180_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1180_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 185 in tag, tcId is 141 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1181 for HMAC, tcId is 142 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1181_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1181_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1181_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x17, }; static const wycheproof_hmac_test hmac_sha384_1181 = { .name = "hmac_sha384_1181", .hash = SHA384, .key = hmac_sha384_1181_key, .keylen = 48, .msg = hmac_sha384_1181_msg, .msglen = 16, .tag = hmac_sha384_1181_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 185 in tag, tcId is 142 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1182 for HMAC, tcId is 143 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1182_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1182_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x2c, }; static const wycheproof_hmac_test hmac_sha384_1182 = { .name = "hmac_sha384_1182", .hash = SHA384, .key = hmac_sha384_1182_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1182_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 190 in tag, tcId is 143 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1183 for HMAC, tcId is 144 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1183_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1183_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1183_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x55, }; static const wycheproof_hmac_test hmac_sha384_1183 = { .name = "hmac_sha384_1183", .hash = SHA384, .key = hmac_sha384_1183_key, .keylen = 48, .msg = hmac_sha384_1183_msg, .msglen = 16, .tag = hmac_sha384_1183_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 190 in tag, tcId is 144 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1184 for HMAC, tcId is 145 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1184_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1184_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0xec, }; static const wycheproof_hmac_test hmac_sha384_1184 = { .name = "hmac_sha384_1184", .hash = SHA384, .key = hmac_sha384_1184_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1184_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 191 in tag, tcId is 145 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1185 for HMAC, tcId is 146 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1185_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1185_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1185_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x95, }; static const wycheproof_hmac_test hmac_sha384_1185 = { .name = "hmac_sha384_1185", .hash = SHA384, .key = hmac_sha384_1185_key, .keylen = 48, .msg = hmac_sha384_1185_msg, .msglen = 16, .tag = hmac_sha384_1185_tag, .taglen = 24, .result = -1, .comment = "Flipped bit 191 in tag, tcId is 146 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1186 for HMAC, tcId is 147 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1186_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1186_tag[] = { 0x45, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0xab, 0x7b, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1186 = { .name = "hmac_sha384_1186", .hash = SHA384, .key = hmac_sha384_1186_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1186_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1187 for HMAC, tcId is 148 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1187_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1187_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1187_tag[] = { 0xa8, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0xe0, 0x65, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1187 = { .name = "hmac_sha384_1187", .hash = SHA384, .key = hmac_sha384_1187_key, .keylen = 48, .msg = hmac_sha384_1187_msg, .msglen = 16, .tag = hmac_sha384_1187_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1188 for HMAC, tcId is 149 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1188_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1188_tag[] = { 0x44, 0xbe, 0x81, 0x44, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0xfb, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1188 = { .name = "hmac_sha384_1188", .hash = SHA384, .key = hmac_sha384_1188_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1188_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1189 for HMAC, tcId is 150 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1189_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1189_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1189_tag[] = { 0xa9, 0x4d, 0x07, 0x7f, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x02, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1189 = { .name = "hmac_sha384_1189", .hash = SHA384, .key = hmac_sha384_1189_key, .keylen = 48, .msg = hmac_sha384_1189_msg, .msglen = 16, .tag = hmac_sha384_1189_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1190 for HMAC, tcId is 151 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1190_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1190_tag[] = { 0x44, 0xbe, 0x81, 0xc4, 0x15, 0xd2, 0x83, 0x2b, 0x7a, 0x62, 0xa4, 0x51, 0x88, 0xe5, 0xda, 0x7b, 0xcb, 0x97, 0xda, 0x60, 0x6b, 0xd5, 0xb1, 0x6c, }; static const wycheproof_hmac_test hmac_sha384_1190 = { .name = "hmac_sha384_1190", .hash = SHA384, .key = hmac_sha384_1190_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1190_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1191 for HMAC, tcId is 152 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1191_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1191_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1191_tag[] = { 0xa9, 0x4d, 0x07, 0xff, 0x90, 0xb3, 0x38, 0x60, 0x64, 0xb0, 0x36, 0x03, 0xd7, 0x6b, 0xcf, 0x82, 0x14, 0xb1, 0xfb, 0x88, 0xc6, 0x6b, 0x94, 0x15, }; static const wycheproof_hmac_test hmac_sha384_1191 = { .name = "hmac_sha384_1191", .hash = SHA384, .key = hmac_sha384_1191_key, .keylen = 48, .msg = hmac_sha384_1191_msg, .msglen = 16, .tag = hmac_sha384_1191_tag, .taglen = 24, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1192 for HMAC, tcId is 153 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1192_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1192_tag[] = { 0xbb, 0x41, 0x7e, 0x3b, 0xea, 0x2d, 0x7c, 0x54, 0x85, 0x9d, 0x5b, 0xae, 0x77, 0x1a, 0x25, 0x04, 0x34, 0x68, 0x25, 0x9f, 0x94, 0x2a, 0x4e, 0x93, }; static const wycheproof_hmac_test hmac_sha384_1192 = { .name = "hmac_sha384_1192", .hash = SHA384, .key = hmac_sha384_1192_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1192_tag, .taglen = 24, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1193 for HMAC, tcId is 154 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1193_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1193_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1193_tag[] = { 0x56, 0xb2, 0xf8, 0x00, 0x6f, 0x4c, 0xc7, 0x1f, 0x9b, 0x4f, 0xc9, 0xfc, 0x28, 0x94, 0x30, 0xfd, 0xeb, 0x4e, 0x04, 0x77, 0x39, 0x94, 0x6b, 0xea, }; static const wycheproof_hmac_test hmac_sha384_1193 = { .name = "hmac_sha384_1193", .hash = SHA384, .key = hmac_sha384_1193_key, .keylen = 48, .msg = hmac_sha384_1193_msg, .msglen = 16, .tag = hmac_sha384_1193_tag, .taglen = 24, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1194 for HMAC, tcId is 155 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1194_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1194_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha384_1194 = { .name = "hmac_sha384_1194", .hash = SHA384, .key = hmac_sha384_1194_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1194_tag, .taglen = 24, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1195 for HMAC, tcId is 156 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1195_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1195_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1195_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha384_1195 = { .name = "hmac_sha384_1195", .hash = SHA384, .key = hmac_sha384_1195_key, .keylen = 48, .msg = hmac_sha384_1195_msg, .msglen = 16, .tag = hmac_sha384_1195_tag, .taglen = 24, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1196 for HMAC, tcId is 157 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1196_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1196_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha384_1196 = { .name = "hmac_sha384_1196", .hash = SHA384, .key = hmac_sha384_1196_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1196_tag, .taglen = 24, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1197 for HMAC, tcId is 158 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1197_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1197_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1197_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha384_1197 = { .name = "hmac_sha384_1197", .hash = SHA384, .key = hmac_sha384_1197_key, .keylen = 48, .msg = hmac_sha384_1197_msg, .msglen = 16, .tag = hmac_sha384_1197_tag, .taglen = 24, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1198 for HMAC, tcId is 159 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1198_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1198_tag[] = { 0xc4, 0x3e, 0x01, 0x44, 0x95, 0x52, 0x03, 0x2b, 0xfa, 0xe2, 0x24, 0xd1, 0x08, 0x65, 0x5a, 0x7b, 0x4b, 0x17, 0x5a, 0xe0, 0xeb, 0x55, 0x31, 0xec, }; static const wycheproof_hmac_test hmac_sha384_1198 = { .name = "hmac_sha384_1198", .hash = SHA384, .key = hmac_sha384_1198_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1198_tag, .taglen = 24, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1199 for HMAC, tcId is 160 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1199_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1199_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1199_tag[] = { 0x29, 0xcd, 0x87, 0x7f, 0x10, 0x33, 0xb8, 0x60, 0xe4, 0x30, 0xb6, 0x83, 0x57, 0xeb, 0x4f, 0x82, 0x94, 0x31, 0x7b, 0x08, 0x46, 0xeb, 0x14, 0x95, }; static const wycheproof_hmac_test hmac_sha384_1199 = { .name = "hmac_sha384_1199", .hash = SHA384, .key = hmac_sha384_1199_key, .keylen = 48, .msg = hmac_sha384_1199_msg, .msglen = 16, .tag = hmac_sha384_1199_tag, .taglen = 24, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1200 for HMAC, tcId is 161 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1200_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1200_tag[] = { 0x45, 0xbf, 0x80, 0xc5, 0x14, 0xd3, 0x82, 0xaa, 0x7b, 0x63, 0xa5, 0x50, 0x89, 0xe4, 0xdb, 0xfa, 0xca, 0x96, 0xdb, 0x61, 0x6a, 0xd4, 0xb0, 0x6d, }; static const wycheproof_hmac_test hmac_sha384_1200 = { .name = "hmac_sha384_1200", .hash = SHA384, .key = hmac_sha384_1200_key, .keylen = 48, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1200_tag, .taglen = 24, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1201 for HMAC, tcId is 162 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1201_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, }; static const unsigned char hmac_sha384_1201_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha384_1201_tag[] = { 0xa8, 0x4c, 0x06, 0xfe, 0x91, 0xb2, 0x39, 0xe1, 0x65, 0xb1, 0x37, 0x02, 0xd6, 0x6a, 0xce, 0x03, 0x15, 0xb0, 0xfa, 0x89, 0xc7, 0x6a, 0x95, 0x14, }; static const wycheproof_hmac_test hmac_sha384_1201 = { .name = "hmac_sha384_1201", .hash = SHA384, .key = hmac_sha384_1201_key, .keylen = 48, .msg = hmac_sha384_1201_msg, .msglen = 16, .tag = hmac_sha384_1201_tag, .taglen = 24, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1202 for HMAC, tcId is 163 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1202_key[] = { 0x08, 0x47, 0x6e, 0x9d, 0x49, 0x49, 0x9c, 0x5f, 0x52, 0xe3, 0x7f, 0x80, 0xec, 0xe6, 0xf5, 0xa4, 0x54, 0x59, 0x94, 0x88, 0x06, 0xb4, 0x82, 0x41, }; static const unsigned char hmac_sha384_1202_tag[] = { 0x1b, 0x6c, 0xfc, 0x87, 0x09, 0xaa, 0xb8, 0x07, 0x54, 0x65, 0xf3, 0x2e, 0x13, 0xb0, 0xb0, 0xf7, 0x96, 0xcc, 0x34, 0xd9, 0x3d, 0x7b, 0xed, 0x09, 0x0f, 0x29, 0x7d, 0xcf, 0x9f, 0xb7, 0x5e, 0x0d, 0x8e, 0x28, 0x5b, 0x15, 0x00, 0xb7, 0x32, 0xd5, 0x54, 0xac, 0x97, 0xba, 0x45, 0xf3, 0x3e, 0x47, }; static const wycheproof_hmac_test hmac_sha384_1202 = { .name = "hmac_sha384_1202", .hash = SHA384, .key = hmac_sha384_1202_key, .keylen = 24, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1202_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1203 for HMAC, tcId is 164 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1203_key[] = { 0x21, 0x3b, 0x44, 0xd8, 0xe1, 0xfa, 0xba, 0xff, 0x83, 0x7e, 0xf3, 0x0e, 0xe2, 0x54, 0x2f, 0x9a, 0xb8, 0x2e, 0xd7, 0x04, 0x11, 0xda, 0xe7, 0x8f, }; static const unsigned char hmac_sha384_1203_msg[] = { 0xee, 0x0b, 0xf4, 0x85, 0x85, 0xc1, 0x86, 0xff, 0x99, 0x1b, 0x4d, 0x86, 0x07, 0x81, 0x7c, 0x9c, }; static const unsigned char hmac_sha384_1203_tag[] = { 0x54, 0xf4, 0x01, 0x0d, 0x50, 0xf8, 0x0b, 0xcd, 0xb4, 0xb8, 0x4d, 0x56, 0xbc, 0x4e, 0xf3, 0x0e, 0x4c, 0x68, 0xf7, 0x51, 0x28, 0x21, 0x4c, 0xf4, 0x46, 0xb5, 0x14, 0x5f, 0x6f, 0xff, 0x13, 0x26, 0xa2, 0x09, 0x94, 0x5f, 0xc2, 0x1a, 0xb5, 0xe1, 0xf5, 0xd9, 0x17, 0x55, 0x9e, 0xa9, 0xb8, 0x00, }; static const wycheproof_hmac_test hmac_sha384_1203 = { .name = "hmac_sha384_1203", .hash = SHA384, .key = hmac_sha384_1203_key, .keylen = 24, .msg = hmac_sha384_1203_msg, .msglen = 16, .tag = hmac_sha384_1203_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1204 for HMAC, tcId is 165 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1204_key[] = { 0xb4, 0xaf, 0xa9, 0xda, 0xaa, 0x8c, 0x94, 0x4d, 0x73, 0xa3, 0x88, 0x1f, 0x32, 0x21, 0xe4, 0x2b, 0x34, 0xef, 0x4e, 0x35, 0xf1, 0x84, 0xe8, 0x78, }; static const unsigned char hmac_sha384_1204_msg[] = { 0xcf, 0x60, 0x7f, 0x6a, 0x0e, 0xb4, 0x4e, 0xcb, 0xca, 0x81, 0xb6, 0xd1, 0xfd, 0xb5, 0x95, 0xce, 0xe3, 0x5f, 0x23, 0x53, 0xda, 0x02, 0xe8, 0x2e, 0x28, 0xe1, 0x33, 0xb9, 0xde, 0xcd, 0x8f, 0xbb, }; static const unsigned char hmac_sha384_1204_tag[] = { 0xd0, 0x64, 0xa5, 0x1f, 0xb1, 0x09, 0xc3, 0xb1, 0xd4, 0x43, 0xf1, 0x3f, 0x41, 0xe9, 0x0e, 0x14, 0x19, 0x8f, 0x84, 0x60, 0x80, 0x46, 0x45, 0x47, 0x80, 0x6d, 0x46, 0xa8, 0x15, 0x1c, 0x4e, 0x38, 0x55, 0xa8, 0x1f, 0x4a, 0xf4, 0x09, 0x15, 0x60, 0x90, 0x95, 0xdd, 0x72, 0xf8, 0x69, 0xaa, 0x1b, }; static const wycheproof_hmac_test hmac_sha384_1204 = { .name = "hmac_sha384_1204", .hash = SHA384, .key = hmac_sha384_1204_key, .keylen = 24, .msg = hmac_sha384_1204_msg, .msglen = 32, .tag = hmac_sha384_1204_tag, .taglen = 48, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1205 for HMAC, tcId is 166 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1205_key[] = { 0x89, 0xe4, 0x6b, 0x66, 0x20, 0x95, 0x48, 0xc8, 0x0b, 0x0c, 0x83, 0x06, 0x62, 0x22, 0x3b, 0x49, 0xb0, 0xe3, 0xb8, 0x95, 0xeb, 0x30, 0xe2, 0xfc, }; static const unsigned char hmac_sha384_1205_tag[] = { 0x4b, 0x01, 0x2c, 0x0c, 0x0d, 0xa4, 0x4e, 0xde, 0x2a, 0x42, 0x7e, 0x85, 0xac, 0xe8, 0xec, 0xc5, 0x4b, 0x37, 0x9e, 0x9e, 0x24, 0xf0, 0x8d, 0x41, }; static const wycheproof_hmac_test hmac_sha384_1205 = { .name = "hmac_sha384_1205", .hash = SHA384, .key = hmac_sha384_1205_key, .keylen = 24, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1205_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1206 for HMAC, tcId is 167 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1206_key[] = { 0xf2, 0xc1, 0x0c, 0xe8, 0xcb, 0x1c, 0xf3, 0xb3, 0x63, 0x35, 0x44, 0x73, 0xb0, 0x27, 0xc1, 0xe5, 0x3d, 0xec, 0xce, 0xf0, 0x32, 0x33, 0xbe, 0x0c, }; static const unsigned char hmac_sha384_1206_msg[] = { 0xe1, 0xfa, 0x10, 0xb8, 0xe3, 0x01, 0xe0, 0x34, 0x84, 0x05, 0x77, 0x0b, 0xc3, 0xfa, 0xfc, 0xb1, }; static const unsigned char hmac_sha384_1206_tag[] = { 0x2d, 0x08, 0x8a, 0xf2, 0x9c, 0xc7, 0x44, 0xe3, 0x47, 0x12, 0x4f, 0xbe, 0x41, 0x00, 0xcb, 0xcd, 0xeb, 0xba, 0xe0, 0x37, 0xed, 0x9b, 0xf6, 0x9d, }; static const wycheproof_hmac_test hmac_sha384_1206 = { .name = "hmac_sha384_1206", .hash = SHA384, .key = hmac_sha384_1206_key, .keylen = 24, .msg = hmac_sha384_1206_msg, .msglen = 16, .tag = hmac_sha384_1206_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1207 for HMAC, tcId is 168 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1207_key[] = { 0x92, 0xe0, 0x74, 0x44, 0x2c, 0xc4, 0xc5, 0x9e, 0x72, 0x26, 0x08, 0x08, 0xd8, 0x0d, 0x8e, 0x7b, 0x85, 0xc6, 0x33, 0x50, 0x68, 0x91, 0x7b, 0x83, }; static const unsigned char hmac_sha384_1207_msg[] = { 0x34, 0xea, 0xe2, 0x74, 0x25, 0xac, 0xe1, 0x77, 0x71, 0xe1, 0x64, 0xcb, 0xb6, 0x34, 0x30, 0x6f, 0x35, 0x2e, 0xdc, 0x9c, 0x37, 0xbf, 0x60, 0x8b, 0xe8, 0xa7, 0x55, 0xfb, 0x94, 0x14, 0x81, 0x83, }; static const unsigned char hmac_sha384_1207_tag[] = { 0xb7, 0xe6, 0xb7, 0xbb, 0x29, 0xc0, 0x2e, 0x46, 0x35, 0xdb, 0xdc, 0x50, 0xd8, 0xbe, 0x71, 0xe2, 0xdd, 0xf0, 0xa5, 0x44, 0x47, 0x1d, 0xe2, 0x85, }; static const wycheproof_hmac_test hmac_sha384_1207 = { .name = "hmac_sha384_1207", .hash = SHA384, .key = hmac_sha384_1207_key, .keylen = 24, .msg = hmac_sha384_1207_msg, .msglen = 32, .tag = hmac_sha384_1207_tag, .taglen = 24, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1208 for HMAC, tcId is 169 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1208_key[] = { 0xdb, 0x6f, 0x99, 0x56, 0xc3, 0xf4, 0xca, 0x6e, 0x41, 0xf1, 0xf7, 0xf1, 0x46, 0x29, 0xd4, 0x4c, 0x79, 0xe0, 0x35, 0x3e, 0xdb, 0xf3, 0xe3, 0x10, 0xe6, 0x85, 0x8b, 0xbc, 0x45, 0xa7, 0xcd, 0x57, 0x77, 0x8a, 0x90, 0x53, 0xba, 0x22, 0xa1, 0x41, 0xbf, 0x58, 0xbf, 0xd4, 0x34, 0xad, 0x08, 0x64, 0x8c, 0x70, 0x41, 0xa2, 0x24, 0xb9, 0x7a, 0x0d, 0x17, 0xe0, 0xed, 0xf9, 0x4f, 0xd4, 0x0b, 0x41, 0x0a, }; static const unsigned char hmac_sha384_1208_tag[] = { 0x0c, 0xb1, 0xb2, 0x96, 0x25, 0x5b, 0xb2, 0x59, 0xf3, 0xb6, 0x01, 0xb4, 0x9b, 0x35, 0x52, 0x4a, 0x5e, 0xca, 0x6c, 0x52, 0x36, 0x07, 0x54, 0xd3, 0xd9, 0x6d, 0xd5, 0x21, 0xc9, 0x05, 0xb1, 0xc1, 0x82, 0x1d, 0x74, 0x96, 0x59, 0x67, 0xd8, 0xe8, 0x6d, 0x50, 0xde, 0x95, 0x0f, 0xe4, 0xd6, 0x35, }; static const wycheproof_hmac_test hmac_sha384_1208 = { .name = "hmac_sha384_1208", .hash = SHA384, .key = hmac_sha384_1208_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1208_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1209 for HMAC, tcId is 170 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1209_key[] = { 0xf0, 0x34, 0x04, 0xbd, 0xb3, 0xe0, 0x8f, 0x53, 0x0d, 0x4c, 0x3a, 0x5f, 0x16, 0x5d, 0x23, 0x60, 0x12, 0xa4, 0xc4, 0x5c, 0xd0, 0x63, 0xe3, 0xe4, 0x48, 0x3d, 0xa0, 0x88, 0xec, 0x0a, 0xfd, 0xb2, 0x4e, 0x96, 0x39, 0xfc, 0xca, 0xbb, 0x91, 0xf9, 0x8a, 0x49, 0xdc, 0x29, 0x72, 0xe2, 0x98, 0x14, 0x26, 0x57, 0x3e, 0xcf, 0xe6, 0x9c, 0x00, 0xc4, 0x3a, 0x2d, 0x99, 0xa3, 0x10, 0x7c, 0xef, 0x3a, 0x70, }; static const unsigned char hmac_sha384_1209_msg[] = { 0x73, 0xed, 0x9f, 0xa2, 0xac, 0xf4, 0x9d, 0x6c, 0x98, 0xbf, 0xc7, 0xd6, 0xc5, 0xad, 0x9c, 0x56, }; static const unsigned char hmac_sha384_1209_tag[] = { 0xb6, 0x13, 0x2e, 0x52, 0x16, 0xf7, 0x11, 0xee, 0xeb, 0x44, 0xda, 0x3d, 0x92, 0x98, 0x3f, 0xe5, 0xb6, 0xde, 0x5c, 0xd9, 0x41, 0x0b, 0xe7, 0x1d, 0xb8, 0xd3, 0xb0, 0x72, 0x28, 0x34, 0x16, 0x86, 0xaa, 0x60, 0xe7, 0x08, 0x1e, 0x95, 0xf2, 0xe4, 0xb6, 0x9b, 0xb7, 0xcd, 0x96, 0x48, 0xbc, 0x0b, }; static const wycheproof_hmac_test hmac_sha384_1209 = { .name = "hmac_sha384_1209", .hash = SHA384, .key = hmac_sha384_1209_key, .keylen = 65, .msg = hmac_sha384_1209_msg, .msglen = 16, .tag = hmac_sha384_1209_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1210 for HMAC, tcId is 171 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1210_key[] = { 0xee, 0x79, 0x9e, 0x25, 0xed, 0xb1, 0xb1, 0x84, 0x52, 0xe5, 0xed, 0x17, 0x4b, 0xc6, 0xb2, 0x18, 0x5a, 0x67, 0x54, 0x41, 0x7d, 0x6c, 0xc0, 0x5d, 0x73, 0x6d, 0x2b, 0xa9, 0xef, 0xc8, 0x36, 0x7e, 0x4b, 0x05, 0xba, 0x0a, 0x2e, 0xe5, 0x25, 0xce, 0xea, 0xb7, 0x4f, 0x98, 0x04, 0xa8, 0x47, 0x91, 0x30, 0xc3, 0x28, 0xd6, 0x71, 0xe3, 0x40, 0x70, 0xcf, 0x17, 0x4a, 0x00, 0x3a, 0x1d, 0xfb, 0x59, 0x94, }; static const unsigned char hmac_sha384_1210_msg[] = { 0xac, 0x3e, 0x7d, 0xa7, 0xe5, 0x78, 0xb9, 0xb4, 0xdc, 0x24, 0x24, 0x03, 0x04, 0x46, 0xc7, 0xf6, 0xae, 0xbc, 0xc4, 0x71, 0x44, 0x5a, 0x9e, 0x0e, 0x6e, 0x65, 0x09, 0x9c, 0xae, 0xec, 0x5b, 0x2f, }; static const unsigned char hmac_sha384_1210_tag[] = { 0xc8, 0x60, 0x7f, 0xca, 0x18, 0x88, 0x41, 0x81, 0x66, 0xc5, 0x50, 0xdd, 0x58, 0xd7, 0xa3, 0x97, 0x6a, 0x6e, 0xcd, 0x0e, 0x4c, 0xa9, 0x9b, 0x02, 0xfb, 0x18, 0x78, 0x00, 0xa9, 0xc9, 0xef, 0x90, 0x9a, 0x6c, 0x14, 0x97, 0xc0, 0x65, 0x2d, 0x4d, 0xca, 0x82, 0x40, 0x5a, 0xb0, 0x7f, 0x5e, 0xed, }; static const wycheproof_hmac_test hmac_sha384_1210 = { .name = "hmac_sha384_1210", .hash = SHA384, .key = hmac_sha384_1210_key, .keylen = 65, .msg = hmac_sha384_1210_msg, .msglen = 32, .tag = hmac_sha384_1210_tag, .taglen = 48, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1211 for HMAC, tcId is 172 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1211_key[] = { 0x06, 0x3d, 0x6e, 0x12, 0xe6, 0x70, 0x09, 0x8a, 0xda, 0xbe, 0x68, 0x19, 0x20, 0x23, 0xb6, 0x37, 0xbb, 0x6d, 0x8d, 0x71, 0x3f, 0xc8, 0x43, 0x61, 0x88, 0xc4, 0xec, 0x06, 0xfd, 0xd0, 0x84, 0xce, 0x6d, 0x19, 0x3f, 0x26, 0xc8, 0x6a, 0x95, 0x60, 0xe1, 0xab, 0xc2, 0x7d, 0x81, 0x3f, 0xce, 0x2b, 0x3e, 0xac, 0x01, 0x70, 0xfd, 0x1c, 0xb7, 0x2e, 0x19, 0x30, 0xa2, 0x77, 0x6b, 0xc8, 0x4d, 0x6c, 0x11, }; static const unsigned char hmac_sha384_1211_tag[] = { 0x9d, 0xc2, 0xac, 0xbf, 0xa2, 0x8a, 0x7a, 0xc5, 0xf2, 0xa5, 0xbd, 0xd4, 0xb1, 0xb2, 0xdb, 0xc8, 0x06, 0xc4, 0x8f, 0x96, 0xce, 0x95, 0x0e, 0xb5, }; static const wycheproof_hmac_test hmac_sha384_1211 = { .name = "hmac_sha384_1211", .hash = SHA384, .key = hmac_sha384_1211_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha384_1211_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1212 for HMAC, tcId is 173 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1212_key[] = { 0x35, 0x93, 0x18, 0xe6, 0xc6, 0x27, 0x9b, 0xa9, 0xeb, 0xcb, 0x16, 0x75, 0xf5, 0xa9, 0x81, 0x95, 0xbb, 0xf5, 0xd8, 0x95, 0xda, 0x9c, 0x17, 0xb8, 0x32, 0x90, 0x38, 0xbe, 0x85, 0x7d, 0xc3, 0x95, 0xb1, 0x2a, 0xe9, 0x1a, 0x55, 0x59, 0x88, 0x76, 0x59, 0x3c, 0x1c, 0x20, 0xbc, 0x01, 0x72, 0xcf, 0x15, 0x12, 0x6b, 0x7a, 0x6b, 0xf0, 0xa2, 0x38, 0xed, 0xa3, 0x32, 0x5d, 0x6d, 0xd6, 0x06, 0x00, 0xef, }; static const unsigned char hmac_sha384_1212_msg[] = { 0x7a, 0xd0, 0xc9, 0x09, 0x8e, 0xa1, 0x0e, 0x61, 0x5b, 0xb6, 0x72, 0xb5, 0x2c, 0x96, 0x54, 0x2d, }; static const unsigned char hmac_sha384_1212_tag[] = { 0x41, 0x63, 0x73, 0x7c, 0x21, 0x9f, 0x7c, 0x5e, 0x74, 0x38, 0x43, 0xdc, 0x3d, 0x36, 0x01, 0x9c, 0x65, 0x85, 0xea, 0x5d, 0x4e, 0x7c, 0xf2, 0x4f, }; static const wycheproof_hmac_test hmac_sha384_1212 = { .name = "hmac_sha384_1212", .hash = SHA384, .key = hmac_sha384_1212_key, .keylen = 65, .msg = hmac_sha384_1212_msg, .msglen = 16, .tag = hmac_sha384_1212_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1213 for HMAC, tcId is 174 in file hmac_sha384_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) static const unsigned char hmac_sha384_1213_key[] = { 0xd0, 0x1c, 0xd8, 0x98, 0x08, 0x9d, 0x8a, 0x1e, 0xeb, 0x00, 0x35, 0xb0, 0xd3, 0x32, 0xda, 0x80, 0xfb, 0xd3, 0x57, 0x1b, 0x91, 0x92, 0xdb, 0x10, 0xfa, 0x6f, 0x55, 0xf6, 0x65, 0xab, 0x19, 0x2d, 0x70, 0x50, 0xca, 0xb6, 0x43, 0x99, 0x6e, 0x99, 0x25, 0x4d, 0x95, 0x73, 0xe0, 0xcf, 0x4e, 0xea, 0xa6, 0x3a, 0xfc, 0xcd, 0xef, 0xd8, 0x16, 0x14, 0xfe, 0x7b, 0x83, 0xdf, 0xe3, 0x0e, 0x3b, 0xa1, 0x9f, }; static const unsigned char hmac_sha384_1213_msg[] = { 0xd6, 0x7c, 0x77, 0xcd, 0xd0, 0xaf, 0x5d, 0x10, 0xe8, 0xca, 0xe8, 0x87, 0xe5, 0xa6, 0x09, 0xbb, 0x76, 0xa9, 0xe5, 0x59, 0x76, 0x53, 0x77, 0x3c, 0x30, 0x3b, 0x82, 0xb9, 0x18, 0xfd, 0xc5, 0x9f, }; static const unsigned char hmac_sha384_1213_tag[] = { 0xe7, 0xdf, 0x52, 0x7a, 0x98, 0x80, 0x80, 0x74, 0x9e, 0xe2, 0x15, 0xba, 0x0f, 0x82, 0x07, 0x83, 0x8d, 0xf3, 0x8a, 0x37, 0x70, 0x7a, 0x63, 0x30, }; static const wycheproof_hmac_test hmac_sha384_1213 = { .name = "hmac_sha384_1213", .hash = SHA384, .key = hmac_sha384_1213_key, .keylen = 65, .msg = hmac_sha384_1213_msg, .msglen = 32, .tag = hmac_sha384_1213_tag, .taglen = 24, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha384_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA384) */ /* Test 1214 for HMAC, tcId is 1 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1214_key[] = { 0x53, 0x65, 0x24, 0x4b, 0xb4, 0x3f, 0x23, 0xf1, 0x8d, 0xfc, 0x86, 0xc0, 0x9d, 0x62, 0xdb, 0x47, 0x41, 0x13, 0x8b, 0xec, 0x1f, 0xbd, 0xdc, 0x28, 0x2d, 0x29, 0x5e, 0x0a, 0x09, 0x8e, 0xb5, 0xc3, 0xe3, 0x7b, 0xd6, 0xf4, 0xcc, 0x16, 0xd5, 0xce, 0x7d, 0x77, 0xb1, 0xd4, 0x74, 0xa1, 0xeb, 0x4d, 0xb3, 0x13, 0xcc, 0x0c, 0x24, 0xe4, 0x89, 0x92, 0xac, 0x12, 0x51, 0x96, 0x54, 0x9d, 0xf9, 0xa8, }; static const unsigned char hmac_sha512_1214_tag[] = { 0xd0, 0xa5, 0x56, 0xbd, 0x1a, 0xfa, 0x8d, 0xf1, 0xeb, 0xf9, 0xe3, 0xee, 0x68, 0x3a, 0x8a, 0x24, 0x50, 0xa7, 0xc8, 0x3e, 0xba, 0x2d, 0xaf, 0x2e, 0x2f, 0xf2, 0xf9, 0x53, 0xf0, 0xcd, 0x64, 0xda, 0x21, 0x6e, 0x67, 0x13, 0x4c, 0xf5, 0x55, 0x78, 0xb2, 0x05, 0xc8, 0xa1, 0xe2, 0x41, 0xba, 0x13, 0x69, 0x51, 0x6a, 0x5e, 0xf4, 0x29, 0x8b, 0x9c, 0x1d, 0x31, 0xe9, 0xd5, 0x9f, 0xc0, 0x4f, 0xe4, }; static const wycheproof_hmac_test hmac_sha512_1214 = { .name = "hmac_sha512_1214", .hash = SHA512, .key = hmac_sha512_1214_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1214_tag, .taglen = 64, .result = 1, .comment = "empty message, tcId is 1 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1215 for HMAC, tcId is 2 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1215_key[] = { 0x00, 0x69, 0x89, 0x77, 0xf7, 0x10, 0x2c, 0x67, 0xb5, 0x94, 0x16, 0x69, 0x19, 0xaa, 0x99, 0xdc, 0x3e, 0x58, 0xc7, 0xb6, 0x69, 0x7a, 0x64, 0x22, 0xe2, 0x38, 0xd0, 0x4d, 0x2f, 0x57, 0xb2, 0xc7, 0x4e, 0x4e, 0x84, 0xf5, 0xc4, 0xc6, 0xb7, 0x92, 0x95, 0x2d, 0xf7, 0x2f, 0x1c, 0x09, 0x24, 0x48, 0x02, 0xf0, 0xbc, 0xf8, 0x75, 0x2e, 0xfb, 0x90, 0xe8, 0x36, 0x11, 0x07, 0x03, 0xbf, 0xa2, 0x1c, }; static const unsigned char hmac_sha512_1215_msg[] = { 0x01, }; static const unsigned char hmac_sha512_1215_tag[] = { 0x4d, 0x16, 0x09, 0xcc, 0x2c, 0x2f, 0x1a, 0xb5, 0xdd, 0xc3, 0x58, 0x15, 0xae, 0x1b, 0x5d, 0xc0, 0x46, 0xf2, 0x26, 0xbd, 0xe1, 0x7e, 0xc3, 0x7a, 0x4c, 0x89, 0xec, 0x46, 0xfb, 0xd3, 0x1a, 0xf2, 0xae, 0xb8, 0x10, 0xb1, 0x96, 0xdf, 0xfd, 0xd1, 0x19, 0x24, 0xd3, 0x77, 0x2b, 0xef, 0x26, 0xa7, 0xa5, 0x42, 0xe0, 0xa1, 0x67, 0x3b, 0x76, 0xb9, 0x15, 0xd4, 0x1c, 0xbd, 0x3d, 0xf0, 0xf6, 0xa6, }; static const wycheproof_hmac_test hmac_sha512_1215 = { .name = "hmac_sha512_1215", .hash = SHA512, .key = hmac_sha512_1215_key, .keylen = 64, .msg = hmac_sha512_1215_msg, .msglen = 1, .tag = hmac_sha512_1215_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 2 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1216 for HMAC, tcId is 3 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1216_key[] = { 0xed, 0x6d, 0xc6, 0x5d, 0xbe, 0xaa, 0xdb, 0xda, 0xab, 0x53, 0x0a, 0x0d, 0x35, 0xf1, 0x9f, 0x78, 0xa7, 0xbd, 0x93, 0xe6, 0x98, 0x54, 0x6c, 0x82, 0x75, 0x1b, 0xf6, 0x50, 0xc2, 0xa4, 0x4f, 0xc8, 0x52, 0x90, 0x33, 0xd0, 0x88, 0xfe, 0xbe, 0xed, 0x28, 0x8f, 0xb4, 0xc8, 0x13, 0x2a, 0x59, 0xdf, 0x02, 0x07, 0x68, 0x76, 0x40, 0xc7, 0x6d, 0xcd, 0xb2, 0x70, 0xac, 0x3a, 0xf5, 0xf0, 0x42, 0xf1, }; static const unsigned char hmac_sha512_1216_msg[] = { 0xa7, 0x8f, }; static const unsigned char hmac_sha512_1216_tag[] = { 0x07, 0x57, 0xb2, 0x7e, 0x12, 0x05, 0x59, 0xd6, 0x4c, 0xd3, 0xd6, 0xe3, 0xcb, 0x40, 0xd4, 0x97, 0x84, 0x53, 0x75, 0x81, 0x51, 0x81, 0xbd, 0x9b, 0x4e, 0x74, 0xf2, 0x18, 0x9d, 0x09, 0xd0, 0x1a, 0x1b, 0x3e, 0xad, 0x53, 0x70, 0x13, 0x80, 0xd9, 0x88, 0x95, 0x8e, 0xd2, 0x2b, 0xc3, 0x79, 0xac, 0xe9, 0xd4, 0x7c, 0xbc, 0xac, 0x1d, 0x49, 0xbf, 0xa7, 0xe1, 0x4f, 0x1f, 0x44, 0x80, 0x4c, 0x30, }; static const wycheproof_hmac_test hmac_sha512_1216 = { .name = "hmac_sha512_1216", .hash = SHA512, .key = hmac_sha512_1216_key, .keylen = 64, .msg = hmac_sha512_1216_msg, .msglen = 2, .tag = hmac_sha512_1216_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 3 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1217 for HMAC, tcId is 4 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1217_key[] = { 0x46, 0x3c, 0x5e, 0x69, 0x6d, 0xa0, 0xec, 0x0d, 0x78, 0x43, 0x88, 0xbe, 0x77, 0x5d, 0x1d, 0x91, 0xd9, 0x47, 0x46, 0xaa, 0x8d, 0x3d, 0x2c, 0x20, 0x9f, 0x56, 0xac, 0x95, 0xea, 0x54, 0xe7, 0x28, 0x83, 0x29, 0xf9, 0xfb, 0x40, 0xbe, 0x4e, 0xef, 0x35, 0x54, 0x7e, 0x64, 0xc6, 0x1d, 0xc5, 0x1a, 0x4a, 0x1f, 0x33, 0x80, 0xa2, 0xb9, 0x64, 0x20, 0xf0, 0x88, 0x65, 0x5e, 0xa9, 0xd8, 0x5b, 0x97, }; static const unsigned char hmac_sha512_1217_msg[] = { 0xe9, 0x56, 0xc1, }; static const unsigned char hmac_sha512_1217_tag[] = { 0xac, 0x4b, 0x15, 0x09, 0x39, 0x18, 0x14, 0xae, 0x5c, 0xb5, 0xa1, 0x23, 0xe7, 0xa0, 0x60, 0x60, 0x15, 0x75, 0xc1, 0x1d, 0x81, 0xb5, 0x63, 0xbd, 0xc5, 0x2f, 0xeb, 0xe6, 0xbb, 0x2c, 0x74, 0x7b, 0x85, 0xee, 0xdd, 0xcb, 0x67, 0x48, 0xc9, 0x81, 0x47, 0xa4, 0x6a, 0x1c, 0xc9, 0xbe, 0x67, 0x76, 0xd1, 0xa8, 0xe8, 0x2a, 0xe4, 0x89, 0x6b, 0x9c, 0x18, 0xda, 0x2f, 0xf3, 0x51, 0xc5, 0x67, 0x95, }; static const wycheproof_hmac_test hmac_sha512_1217 = { .name = "hmac_sha512_1217", .hash = SHA512, .key = hmac_sha512_1217_key, .keylen = 64, .msg = hmac_sha512_1217_msg, .msglen = 3, .tag = hmac_sha512_1217_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 4 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1218 for HMAC, tcId is 5 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1218_key[] = { 0x4b, 0xc0, 0xd3, 0x2e, 0x94, 0x5c, 0xfd, 0xaf, 0xd2, 0x0d, 0x39, 0xbe, 0x38, 0x20, 0xf9, 0x64, 0x97, 0x27, 0xcb, 0xda, 0x5a, 0xb5, 0x85, 0x99, 0x53, 0xa3, 0x22, 0xcb, 0xde, 0x1a, 0xb7, 0xa5, 0x14, 0xd7, 0xdc, 0xd1, 0x4b, 0xa9, 0x09, 0x05, 0xe7, 0x09, 0x19, 0xbb, 0x86, 0xb8, 0x5c, 0xfe, 0xaa, 0x37, 0x5e, 0xe2, 0xce, 0x27, 0x03, 0x71, 0x1b, 0x93, 0x8c, 0x8f, 0x4a, 0xb5, 0xf1, 0x78, }; static const unsigned char hmac_sha512_1218_msg[] = { 0xb2, 0xaa, 0x48, 0xb3, }; static const unsigned char hmac_sha512_1218_tag[] = { 0xc4, 0xec, 0xdb, 0xd2, 0xef, 0xb1, 0x76, 0x40, 0xce, 0x67, 0x07, 0xe2, 0xe9, 0xd0, 0xee, 0x5b, 0xfb, 0x98, 0xb9, 0x15, 0x84, 0xbc, 0x86, 0xab, 0x38, 0x64, 0x37, 0xea, 0xa3, 0x7b, 0x0f, 0x2e, 0xb7, 0x05, 0x00, 0x36, 0x11, 0x05, 0x41, 0x6c, 0x0d, 0xce, 0xcf, 0xf3, 0x89, 0xdc, 0x94, 0xc7, 0x23, 0xfc, 0xff, 0x18, 0xcb, 0x80, 0x17, 0x40, 0x96, 0x23, 0x12, 0x00, 0x7a, 0x19, 0x5a, 0x23, }; static const wycheproof_hmac_test hmac_sha512_1218 = { .name = "hmac_sha512_1218", .hash = SHA512, .key = hmac_sha512_1218_key, .keylen = 64, .msg = hmac_sha512_1218_msg, .msglen = 4, .tag = hmac_sha512_1218_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 5 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1219 for HMAC, tcId is 6 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1219_key[] = { 0xac, 0xa4, 0x7f, 0x63, 0x50, 0x94, 0x1a, 0x0e, 0xfd, 0x8c, 0x3b, 0xac, 0x90, 0x64, 0xa5, 0x54, 0xbe, 0x33, 0x7c, 0xde, 0x7d, 0x19, 0x2f, 0x6f, 0xbf, 0x86, 0xd1, 0xb4, 0xdb, 0x09, 0xb3, 0x65, 0x31, 0x16, 0x5c, 0xba, 0xe0, 0xa6, 0x34, 0x20, 0x6f, 0x71, 0xfa, 0x40, 0x0d, 0xf3, 0x33, 0x52, 0xff, 0xf6, 0x0e, 0x1f, 0xba, 0x40, 0x09, 0xac, 0x66, 0x71, 0xcd, 0x37, 0x31, 0x2b, 0xdd, 0x98, }; static const unsigned char hmac_sha512_1219_msg[] = { 0xbc, 0x99, 0x3b, 0x1d, 0xb0, }; static const unsigned char hmac_sha512_1219_tag[] = { 0x89, 0xaf, 0x2f, 0x57, 0x46, 0xca, 0xb8, 0x9f, 0xda, 0x69, 0x93, 0xe0, 0x0f, 0x1b, 0xf0, 0xcc, 0x70, 0xa7, 0x71, 0x88, 0x94, 0x5b, 0xb7, 0xb5, 0x40, 0x9b, 0x53, 0x6a, 0xec, 0x55, 0x33, 0xad, 0x50, 0x1d, 0xb6, 0xec, 0xfa, 0x3e, 0x51, 0x6b, 0x58, 0x0b, 0x7d, 0xf9, 0xc8, 0xea, 0xdb, 0x3c, 0xf5, 0x56, 0xcc, 0xc0, 0x16, 0x68, 0xbe, 0x98, 0x43, 0x35, 0xbd, 0x5a, 0x62, 0x55, 0xd5, 0x66, }; static const wycheproof_hmac_test hmac_sha512_1219 = { .name = "hmac_sha512_1219", .hash = SHA512, .key = hmac_sha512_1219_key, .keylen = 64, .msg = hmac_sha512_1219_msg, .msglen = 5, .tag = hmac_sha512_1219_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 6 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1220 for HMAC, tcId is 7 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1220_key[] = { 0xb3, 0xec, 0xae, 0x6f, 0x25, 0xc2, 0xf6, 0x99, 0xf1, 0x58, 0xb3, 0xff, 0xcd, 0x0a, 0x7a, 0x57, 0x55, 0x83, 0xe4, 0xc9, 0xcb, 0x56, 0xb5, 0xc2, 0x2e, 0xf4, 0x27, 0x3c, 0xde, 0x6c, 0x67, 0x34, 0xe8, 0x4d, 0x74, 0x00, 0x74, 0x9c, 0x17, 0xe4, 0x7e, 0x8c, 0xfc, 0xca, 0xfa, 0xf8, 0xb5, 0x0c, 0x65, 0xeb, 0x47, 0xdf, 0xeb, 0x27, 0x3d, 0x5d, 0x30, 0xa1, 0x18, 0x1e, 0x37, 0xb2, 0x7a, 0xd0, }; static const unsigned char hmac_sha512_1220_msg[] = { 0xf0, 0x36, 0x1d, 0x58, 0x29, 0x1e, }; static const unsigned char hmac_sha512_1220_tag[] = { 0x40, 0x37, 0xa5, 0x7a, 0xa2, 0x79, 0xb5, 0xa0, 0x7a, 0xbe, 0x93, 0x89, 0xdc, 0xf5, 0x08, 0xbe, 0x94, 0x95, 0xa8, 0x25, 0x7d, 0xcb, 0x3f, 0xeb, 0xa3, 0xf0, 0x80, 0x1c, 0xd5, 0x75, 0x74, 0xc3, 0x0b, 0xfd, 0xdc, 0x6d, 0xf5, 0xdf, 0x65, 0x67, 0xcd, 0x57, 0x2c, 0x4e, 0x82, 0x73, 0x5f, 0xd4, 0xe6, 0x7b, 0x65, 0xe8, 0x5b, 0x03, 0x0f, 0x18, 0x3a, 0x7f, 0x44, 0x57, 0xfb, 0x7d, 0x2c, 0x3d, }; static const wycheproof_hmac_test hmac_sha512_1220 = { .name = "hmac_sha512_1220", .hash = SHA512, .key = hmac_sha512_1220_key, .keylen = 64, .msg = hmac_sha512_1220_msg, .msglen = 6, .tag = hmac_sha512_1220_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 7 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1221 for HMAC, tcId is 8 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1221_key[] = { 0x70, 0xff, 0x24, 0xa2, 0x52, 0xd6, 0x51, 0x83, 0xbd, 0xc6, 0xb7, 0xc8, 0x87, 0x51, 0xf8, 0x50, 0x82, 0x11, 0x41, 0xa6, 0x12, 0x46, 0x72, 0x7c, 0x32, 0x40, 0xb4, 0xf9, 0x60, 0x88, 0xae, 0x32, 0x78, 0x76, 0x7a, 0x82, 0x2b, 0x65, 0x73, 0x5a, 0x28, 0xcc, 0xeb, 0xe4, 0xc8, 0x74, 0xbc, 0xb2, 0xc9, 0x42, 0x88, 0x2c, 0xb2, 0x3f, 0x9d, 0xd8, 0x7f, 0xe0, 0x8f, 0xba, 0xad, 0x5a, 0xe7, 0x2f, }; static const unsigned char hmac_sha512_1221_msg[] = { 0xe1, 0x8d, 0xa3, 0xeb, 0xf0, 0xff, 0xa4, }; static const unsigned char hmac_sha512_1221_tag[] = { 0x87, 0x8d, 0x48, 0x87, 0x54, 0xbc, 0x79, 0x6c, 0x70, 0xe1, 0x1d, 0x5d, 0xb7, 0x7a, 0xcd, 0xa2, 0xe1, 0x79, 0x6d, 0x86, 0x14, 0x6e, 0x27, 0xd8, 0x62, 0x58, 0x67, 0x40, 0xc4, 0xd4, 0x88, 0xed, 0x12, 0x23, 0x9e, 0x6f, 0xb4, 0xab, 0x29, 0x25, 0xaf, 0xc8, 0x81, 0x68, 0x60, 0x9e, 0xdc, 0x04, 0x8f, 0x85, 0x72, 0x53, 0x6f, 0xae, 0x96, 0xe1, 0x49, 0xd7, 0x3d, 0x23, 0x0b, 0x18, 0xdb, 0x66, }; static const wycheproof_hmac_test hmac_sha512_1221 = { .name = "hmac_sha512_1221", .hash = SHA512, .key = hmac_sha512_1221_key, .keylen = 64, .msg = hmac_sha512_1221_msg, .msglen = 7, .tag = hmac_sha512_1221_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 8 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1222 for HMAC, tcId is 9 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1222_key[] = { 0xdd, 0x4e, 0x05, 0x93, 0x3d, 0x09, 0x71, 0x1e, 0xe8, 0x8c, 0xb4, 0xc1, 0xce, 0xb3, 0x60, 0x0b, 0x2b, 0x33, 0x80, 0x8b, 0xc0, 0x8d, 0x49, 0x93, 0x87, 0xb3, 0x31, 0xd9, 0xc7, 0xaf, 0x49, 0xbc, 0x65, 0xb5, 0x51, 0x72, 0xcf, 0x80, 0x83, 0x38, 0x5a, 0x94, 0x0e, 0x4b, 0x86, 0x4b, 0x7b, 0x4b, 0x73, 0xdd, 0xf3, 0xbd, 0x51, 0x3a, 0x6c, 0xbc, 0xac, 0x73, 0x87, 0x8a, 0x87, 0x9b, 0x4d, 0x06, }; static const unsigned char hmac_sha512_1222_msg[] = { 0x66, 0x94, 0x80, 0x29, 0x35, 0x14, 0x32, 0xc3, }; static const unsigned char hmac_sha512_1222_tag[] = { 0x99, 0x68, 0xa1, 0x6e, 0xff, 0x2b, 0x4e, 0xee, 0xcb, 0x2f, 0x9d, 0x11, 0xfc, 0xb1, 0x05, 0xe8, 0xd8, 0xca, 0x59, 0xed, 0x4e, 0x69, 0x13, 0x1c, 0x9d, 0xe5, 0x99, 0xcd, 0x81, 0x55, 0xfa, 0x4f, 0x33, 0xde, 0xf1, 0x19, 0x5a, 0x6b, 0x45, 0x22, 0x63, 0xaa, 0xd9, 0x26, 0x5e, 0x16, 0xd4, 0x95, 0x18, 0x41, 0xd7, 0xcd, 0x33, 0xc7, 0x4c, 0x47, 0x5d, 0xa0, 0x44, 0x97, 0xc0, 0x29, 0x22, 0xea, }; static const wycheproof_hmac_test hmac_sha512_1222 = { .name = "hmac_sha512_1222", .hash = SHA512, .key = hmac_sha512_1222_key, .keylen = 64, .msg = hmac_sha512_1222_msg, .msglen = 8, .tag = hmac_sha512_1222_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 9 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1223 for HMAC, tcId is 10 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1223_key[] = { 0xfb, 0xd3, 0x2c, 0xaf, 0x89, 0x84, 0xfc, 0x43, 0x76, 0xd1, 0x0d, 0xaa, 0x72, 0x88, 0xdb, 0x8e, 0x6e, 0x74, 0x46, 0x4b, 0xdd, 0x94, 0xb4, 0x48, 0xad, 0xab, 0x44, 0x97, 0xb3, 0x19, 0xe9, 0xa6, 0xdc, 0xce, 0x54, 0x2f, 0x82, 0xa7, 0xff, 0x2e, 0x77, 0x5d, 0x12, 0x47, 0x7c, 0x88, 0x0e, 0x46, 0x0a, 0x9e, 0xab, 0x8e, 0xfc, 0x49, 0xfc, 0xfc, 0x8c, 0x54, 0x76, 0xcb, 0x4b, 0x08, 0x95, 0x4a, }; static const unsigned char hmac_sha512_1223_msg[] = { 0x38, 0xa2, 0x58, 0x6a, 0x28, 0x83, 0x95, 0x3c, 0xc4, }; static const unsigned char hmac_sha512_1223_tag[] = { 0xe0, 0xc6, 0x9b, 0xd0, 0x34, 0xcd, 0xec, 0x5b, 0x48, 0x15, 0x0f, 0xdf, 0x3a, 0x43, 0x83, 0x45, 0x6a, 0x76, 0x26, 0xd4, 0x40, 0x5d, 0xf5, 0x2d, 0xc6, 0xc2, 0xbc, 0x8f, 0xe9, 0x3b, 0xd8, 0x7e, 0x36, 0x9e, 0x06, 0xa7, 0x81, 0xed, 0x80, 0xba, 0x8b, 0x1f, 0xe1, 0x14, 0x6c, 0x4d, 0xf8, 0x2b, 0x6a, 0x51, 0x44, 0x12, 0x35, 0x8b, 0x31, 0xb7, 0x7b, 0x9b, 0x79, 0xc7, 0xa9, 0x1e, 0xc9, 0xe4, }; static const wycheproof_hmac_test hmac_sha512_1223 = { .name = "hmac_sha512_1223", .hash = SHA512, .key = hmac_sha512_1223_key, .keylen = 64, .msg = hmac_sha512_1223_msg, .msglen = 9, .tag = hmac_sha512_1223_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 10 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1224 for HMAC, tcId is 11 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1224_key[] = { 0xfd, 0x4c, 0x3f, 0x6b, 0x21, 0x37, 0x51, 0x36, 0x16, 0xc2, 0x8e, 0xd4, 0xd8, 0x63, 0x8f, 0x86, 0x7a, 0xd0, 0xb9, 0x71, 0x88, 0xb7, 0x3f, 0xc9, 0xb3, 0x6f, 0x3d, 0x52, 0xb8, 0x2d, 0x72, 0xa4, 0x9b, 0x9d, 0xc1, 0xb8, 0xb2, 0x53, 0x97, 0xeb, 0x44, 0x80, 0x54, 0xa8, 0xd3, 0x8d, 0x83, 0x8e, 0x7a, 0x88, 0xb4, 0xdf, 0x9c, 0x26, 0x3a, 0xea, 0x1b, 0x96, 0x87, 0x71, 0xd5, 0xac, 0x57, 0x56, }; static const unsigned char hmac_sha512_1224_msg[] = { 0x86, 0xb4, 0xe6, 0x1b, 0x3b, 0x7d, 0x65, 0x00, 0x44, 0xad, }; static const unsigned char hmac_sha512_1224_tag[] = { 0x29, 0x34, 0x5d, 0x7d, 0xa4, 0x4e, 0x2f, 0x22, 0x8e, 0x8d, 0x50, 0x2e, 0x29, 0xfb, 0x65, 0x5d, 0xa3, 0x67, 0x6a, 0x48, 0x1f, 0x99, 0x47, 0xc8, 0x48, 0x25, 0x02, 0xce, 0x07, 0x0b, 0x3d, 0xa5, 0x06, 0x55, 0x89, 0xd8, 0x4c, 0x02, 0xa0, 0x5c, 0xd7, 0x74, 0xb4, 0xbd, 0x5a, 0x15, 0xb6, 0x68, 0xc5, 0x9b, 0xaf, 0xc1, 0x92, 0x69, 0x5a, 0xec, 0x43, 0xe5, 0xdf, 0x3a, 0x82, 0x30, 0x17, 0x45, }; static const wycheproof_hmac_test hmac_sha512_1224 = { .name = "hmac_sha512_1224", .hash = SHA512, .key = hmac_sha512_1224_key, .keylen = 64, .msg = hmac_sha512_1224_msg, .msglen = 10, .tag = hmac_sha512_1224_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 11 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1225 for HMAC, tcId is 12 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1225_key[] = { 0xf9, 0x5b, 0xae, 0xa5, 0x35, 0xf4, 0x77, 0xd2, 0x2b, 0x40, 0x5c, 0x67, 0xd9, 0x27, 0xf5, 0x9a, 0x9e, 0x04, 0x2c, 0x46, 0x29, 0x7a, 0x16, 0x81, 0xbc, 0xc1, 0x6f, 0xdb, 0xe1, 0xb2, 0xcd, 0x59, 0x67, 0x5a, 0x22, 0x13, 0x51, 0xa7, 0x80, 0x75, 0x98, 0x1e, 0x7e, 0xb4, 0x99, 0x80, 0x66, 0x76, 0x88, 0x01, 0xcb, 0xd7, 0xa8, 0x52, 0x31, 0x11, 0x4d, 0x7f, 0x27, 0xf9, 0xbd, 0xf2, 0x48, 0x99, }; static const unsigned char hmac_sha512_1225_msg[] = { 0x5a, 0x34, 0xde, 0xe4, 0xe0, 0x98, 0x2d, 0x45, 0x8e, 0xff, 0xfb, }; static const unsigned char hmac_sha512_1225_tag[] = { 0x63, 0x86, 0x7b, 0xb3, 0xe8, 0x2b, 0xd4, 0xa5, 0xf7, 0x15, 0xb3, 0xdd, 0x67, 0xba, 0x36, 0x25, 0x66, 0x6e, 0x45, 0x8c, 0x5e, 0x3d, 0x75, 0x80, 0x47, 0x09, 0xf8, 0x0b, 0x6d, 0xde, 0x6f, 0x77, 0x4e, 0xa2, 0x23, 0xba, 0x9e, 0x25, 0x36, 0xc6, 0x0a, 0xb6, 0x36, 0xdd, 0x12, 0xd0, 0x7b, 0x21, 0x72, 0x34, 0xa4, 0x90, 0xea, 0x9c, 0xae, 0x4f, 0xe6, 0x73, 0x21, 0x5d, 0x33, 0xf8, 0xc5, 0x7a, }; static const wycheproof_hmac_test hmac_sha512_1225 = { .name = "hmac_sha512_1225", .hash = SHA512, .key = hmac_sha512_1225_key, .keylen = 64, .msg = hmac_sha512_1225_msg, .msglen = 11, .tag = hmac_sha512_1225_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 12 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1226 for HMAC, tcId is 13 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1226_key[] = { 0x4d, 0x76, 0xae, 0x95, 0xa1, 0x23, 0x20, 0x7e, 0x01, 0xc6, 0xd2, 0x2d, 0x8b, 0x58, 0x7e, 0x63, 0xba, 0x68, 0x29, 0x63, 0xe5, 0x09, 0x61, 0xaf, 0xff, 0x53, 0x11, 0x60, 0xa9, 0xb9, 0xaa, 0xc6, 0xc7, 0x72, 0xc5, 0xe8, 0xbf, 0x91, 0x8d, 0xde, 0xcb, 0xeb, 0x56, 0x45, 0x5e, 0xa6, 0x47, 0x10, 0xe5, 0x1a, 0xc2, 0x1e, 0x3b, 0xb9, 0xaf, 0x4b, 0x24, 0xea, 0xa8, 0x53, 0x5b, 0x3c, 0x29, 0x24, }; static const unsigned char hmac_sha512_1226_msg[] = { 0x2c, 0x31, 0xf2, 0xd9, 0x86, 0xf6, 0x8a, 0x6d, 0x6a, 0x96, 0xc4, 0xb0, }; static const unsigned char hmac_sha512_1226_tag[] = { 0x9d, 0x4f, 0x95, 0x49, 0xac, 0x13, 0x4a, 0x6f, 0x60, 0xf1, 0x7f, 0xd0, 0xfb, 0xc8, 0x0f, 0x55, 0x42, 0x6a, 0xfa, 0x73, 0xcd, 0xaf, 0x84, 0xa8, 0x06, 0xd9, 0x8d, 0xff, 0xfc, 0x94, 0x26, 0x31, 0x78, 0x11, 0x6f, 0x76, 0xaa, 0xdc, 0xa9, 0x5a, 0x92, 0x43, 0xa9, 0x12, 0x8f, 0x5f, 0x66, 0xd3, 0xe7, 0xf3, 0x3e, 0x72, 0x60, 0x3d, 0x4b, 0x35, 0xab, 0x90, 0xab, 0x7d, 0x1e, 0x87, 0x0a, 0xd7, }; static const wycheproof_hmac_test hmac_sha512_1226 = { .name = "hmac_sha512_1226", .hash = SHA512, .key = hmac_sha512_1226_key, .keylen = 64, .msg = hmac_sha512_1226_msg, .msglen = 12, .tag = hmac_sha512_1226_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 13 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1227 for HMAC, tcId is 14 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1227_key[] = { 0x0d, 0xa7, 0xfa, 0x1f, 0x5d, 0x21, 0x79, 0x51, 0xe3, 0xe3, 0x43, 0xcd, 0xa8, 0x1f, 0x23, 0x2d, 0xeb, 0x71, 0x76, 0x4e, 0xb4, 0x9e, 0x85, 0x10, 0xbc, 0x28, 0xdb, 0xa8, 0xeb, 0x62, 0xaf, 0xa2, 0xa9, 0x8b, 0x6f, 0x05, 0x36, 0xad, 0xb1, 0x02, 0x50, 0xc7, 0x48, 0x78, 0xfe, 0x64, 0x9f, 0x47, 0xbb, 0xaf, 0xdf, 0x3f, 0x72, 0x2f, 0xa1, 0x50, 0xf6, 0x6e, 0x83, 0xf6, 0x5f, 0x60, 0x6a, 0xb0, }; static const unsigned char hmac_sha512_1227_msg[] = { 0x83, 0x51, 0x1d, 0xe1, 0x90, 0x66, 0x3c, 0x9c, 0x42, 0x29, 0xac, 0xe9, 0x01, }; static const unsigned char hmac_sha512_1227_tag[] = { 0x11, 0xbd, 0x76, 0xba, 0x2f, 0xd5, 0x68, 0x4e, 0x3f, 0xaa, 0xdd, 0x44, 0xab, 0xc0, 0x5d, 0x32, 0x66, 0x14, 0x72, 0xae, 0x4c, 0x75, 0xfd, 0x69, 0xe6, 0x2e, 0x47, 0xa2, 0xd4, 0x62, 0xe4, 0x83, 0xab, 0x5f, 0xd3, 0x74, 0x07, 0x0e, 0x64, 0x80, 0x17, 0x25, 0x09, 0x34, 0xd4, 0x86, 0xfe, 0xd5, 0x5e, 0x68, 0xf4, 0x33, 0x85, 0x47, 0xfb, 0x5d, 0xc5, 0x4d, 0x4b, 0xed, 0x89, 0x4c, 0x1c, 0x2f, }; static const wycheproof_hmac_test hmac_sha512_1227 = { .name = "hmac_sha512_1227", .hash = SHA512, .key = hmac_sha512_1227_key, .keylen = 64, .msg = hmac_sha512_1227_msg, .msglen = 13, .tag = hmac_sha512_1227_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 14 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1228 for HMAC, tcId is 15 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1228_key[] = { 0xce, 0xc9, 0xe9, 0xf2, 0x5e, 0xd9, 0xa0, 0x17, 0x00, 0x4a, 0x78, 0x82, 0xb1, 0xe4, 0x4e, 0x8b, 0xd8, 0xfa, 0x32, 0x03, 0xc5, 0x0c, 0xb6, 0x05, 0x84, 0x55, 0xed, 0x4f, 0x2a, 0x03, 0x67, 0x88, 0xd4, 0x6f, 0xcd, 0x32, 0x83, 0x27, 0xd0, 0xd8, 0x6b, 0x1a, 0xba, 0xe6, 0x9f, 0x7b, 0xbb, 0x96, 0xe3, 0xd6, 0x63, 0x73, 0xec, 0x8b, 0xd4, 0x50, 0x75, 0x89, 0x08, 0x79, 0xa8, 0x3f, 0x4d, 0x33, }; static const unsigned char hmac_sha512_1228_msg[] = { 0x80, 0xdc, 0xd8, 0xba, 0x66, 0xf9, 0x8b, 0x51, 0x09, 0x41, 0x44, 0xe9, 0xb8, 0xbd, }; static const unsigned char hmac_sha512_1228_tag[] = { 0xc6, 0x9f, 0x17, 0x87, 0xbf, 0x78, 0x04, 0xbf, 0xff, 0xd9, 0xda, 0x7e, 0x62, 0xf5, 0x8c, 0x1c, 0x9f, 0x59, 0x9c, 0xca, 0xe2, 0xed, 0x4f, 0xc6, 0xab, 0xda, 0x1b, 0xe4, 0x86, 0x20, 0xaf, 0xc7, 0x97, 0xd5, 0x9d, 0x4a, 0xdb, 0x39, 0x6e, 0x1f, 0xa5, 0xd1, 0x8b, 0x8c, 0x1a, 0xa1, 0xc7, 0xc1, 0x52, 0x18, 0xa9, 0xf9, 0xe3, 0xaa, 0xb2, 0x26, 0x11, 0x9a, 0xda, 0xd7, 0x42, 0x64, 0x10, 0x89, }; static const wycheproof_hmac_test hmac_sha512_1228 = { .name = "hmac_sha512_1228", .hash = SHA512, .key = hmac_sha512_1228_key, .keylen = 64, .msg = hmac_sha512_1228_msg, .msglen = 14, .tag = hmac_sha512_1228_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 15 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1229 for HMAC, tcId is 16 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1229_key[] = { 0xbb, 0xe2, 0x56, 0x49, 0xec, 0xdf, 0x54, 0xae, 0x00, 0x28, 0xfb, 0x92, 0x3c, 0xc8, 0xc2, 0x8e, 0xc0, 0x0e, 0x10, 0xe2, 0xd4, 0x42, 0x14, 0x59, 0x07, 0x81, 0x23, 0x8a, 0x14, 0x3b, 0x75, 0xd5, 0x4e, 0xfb, 0x03, 0x7e, 0xb9, 0xf5, 0x30, 0x82, 0xa8, 0xab, 0x3d, 0x88, 0x76, 0xda, 0xf4, 0xdb, 0xdc, 0x24, 0x83, 0xc4, 0xba, 0x22, 0x27, 0x97, 0xfe, 0x20, 0xda, 0x3b, 0x77, 0x30, 0x36, 0x8b, }; static const unsigned char hmac_sha512_1229_msg[] = { 0x33, 0xf6, 0x30, 0x08, 0x8c, 0x0d, 0x24, 0xcd, 0xa9, 0x8c, 0xaf, 0xf1, 0xa3, 0xaf, 0xc7, }; static const unsigned char hmac_sha512_1229_tag[] = { 0xc8, 0x03, 0xca, 0x83, 0x3e, 0x85, 0x14, 0x18, 0xa3, 0xd9, 0xed, 0x76, 0x4f, 0x8c, 0x83, 0xf4, 0x81, 0x06, 0x01, 0x41, 0xeb, 0x1b, 0x2b, 0xf6, 0x4d, 0x7e, 0xe7, 0x99, 0x1b, 0x04, 0x1c, 0x48, 0xbf, 0xc7, 0x47, 0xbc, 0xe1, 0x3d, 0x69, 0x72, 0x2f, 0x63, 0x94, 0x40, 0x85, 0xce, 0xf8, 0xe7, 0xa1, 0x66, 0x27, 0x05, 0x30, 0xfe, 0x31, 0xa2, 0xa5, 0x25, 0xa9, 0x9b, 0x8a, 0x75, 0xf1, 0xb1, }; static const wycheproof_hmac_test hmac_sha512_1229 = { .name = "hmac_sha512_1229", .hash = SHA512, .key = hmac_sha512_1229_key, .keylen = 64, .msg = hmac_sha512_1229_msg, .msglen = 15, .tag = hmac_sha512_1229_tag, .taglen = 64, .result = 1, .comment = "short message, tcId is 16 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1230 for HMAC, tcId is 17 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1230_key[] = { 0xf5, 0xe2, 0xb9, 0xe2, 0x31, 0x3f, 0x4f, 0x80, 0x7c, 0xb3, 0xa9, 0x24, 0xa7, 0xd4, 0x94, 0x3f, 0xc3, 0xfb, 0x47, 0x5d, 0x8f, 0x1a, 0x1b, 0x40, 0xce, 0x09, 0xa3, 0x77, 0x70, 0xf6, 0x21, 0xaf, 0x89, 0x77, 0x72, 0x9c, 0xad, 0xf9, 0x86, 0xc9, 0x8c, 0x75, 0xf0, 0x8a, 0x4f, 0xab, 0x42, 0x80, 0x53, 0x8e, 0x09, 0xe7, 0xe5, 0x1e, 0x87, 0xa8, 0xd6, 0x2c, 0x03, 0x41, 0x1b, 0xdb, 0x8d, 0x24, }; static const unsigned char hmac_sha512_1230_msg[] = { 0x74, 0xef, 0x62, 0x3c, 0x83, 0x27, 0x5a, 0xe9, 0x97, 0x45, 0xbf, 0xf7, 0xe6, 0x14, 0x2a, 0xfa, }; static const unsigned char hmac_sha512_1230_tag[] = { 0x47, 0x10, 0x55, 0xf7, 0xa2, 0xd4, 0x47, 0x58, 0xe7, 0xd7, 0x83, 0x7d, 0xb8, 0x5c, 0x33, 0x62, 0x6b, 0x83, 0x06, 0x76, 0x0e, 0xb4, 0x5e, 0x18, 0xd4, 0xba, 0x8d, 0xfb, 0xcd, 0x0d, 0x42, 0x79, 0xfc, 0xf8, 0xb5, 0x39, 0xef, 0x7b, 0x16, 0x5e, 0xea, 0xbf, 0x54, 0x57, 0xee, 0x2c, 0x41, 0xe5, 0x2d, 0x07, 0xe9, 0x12, 0x1d, 0xa0, 0x2c, 0x98, 0x8f, 0x08, 0x16, 0x2f, 0x86, 0xbd, 0xf2, 0x08, }; static const wycheproof_hmac_test hmac_sha512_1230 = { .name = "hmac_sha512_1230", .hash = SHA512, .key = hmac_sha512_1230_key, .keylen = 64, .msg = hmac_sha512_1230_msg, .msglen = 16, .tag = hmac_sha512_1230_tag, .taglen = 64, .result = 1, .comment = ", tcId is 17 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1231 for HMAC, tcId is 18 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1231_key[] = { 0x8e, 0x32, 0x3d, 0x5f, 0xb4, 0x75, 0x2d, 0x92, 0xa6, 0xd9, 0x05, 0xc5, 0x12, 0xb2, 0x87, 0xd0, 0x7b, 0x21, 0xae, 0x50, 0x00, 0x2d, 0x02, 0x6f, 0xf0, 0x38, 0x8e, 0x15, 0x93, 0xbd, 0xe9, 0x99, 0x8d, 0xd0, 0x23, 0x21, 0xe2, 0x00, 0xd1, 0x48, 0xf5, 0xfa, 0x2e, 0x82, 0x4b, 0x37, 0xe9, 0xf5, 0xa7, 0x74, 0x41, 0x79, 0x4b, 0x84, 0x0b, 0xed, 0xd5, 0x52, 0xd1, 0x05, 0x1c, 0x1d, 0xdd, 0x8c, }; static const unsigned char hmac_sha512_1231_msg[] = { 0x4d, 0xaa, 0x22, 0x9b, 0x00, 0x9b, 0x89, 0x84, 0x35, 0x4c, 0x2e, 0xc3, 0xe7, 0x97, 0x3e, 0x00, 0x42, }; static const unsigned char hmac_sha512_1231_tag[] = { 0x93, 0xa2, 0x13, 0x7c, 0xc8, 0x4e, 0x2f, 0xa1, 0x43, 0x9d, 0x7c, 0x23, 0x97, 0x67, 0xb3, 0xce, 0x65, 0x3d, 0x63, 0x4c, 0x58, 0xa4, 0x59, 0x0e, 0xb6, 0x1a, 0xf9, 0xd3, 0xef, 0x98, 0x64, 0x45, 0x22, 0x0a, 0xff, 0x35, 0x54, 0xde, 0x45, 0xa1, 0xb0, 0x93, 0x3f, 0xa0, 0x6d, 0x3d, 0x64, 0x46, 0x04, 0x18, 0x91, 0x09, 0x77, 0xd8, 0xd9, 0xdd, 0xb2, 0xeb, 0x04, 0x96, 0x3c, 0x81, 0x68, 0x41, }; static const wycheproof_hmac_test hmac_sha512_1231 = { .name = "hmac_sha512_1231", .hash = SHA512, .key = hmac_sha512_1231_key, .keylen = 64, .msg = hmac_sha512_1231_msg, .msglen = 17, .tag = hmac_sha512_1231_tag, .taglen = 64, .result = 1, .comment = ", tcId is 18 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1232 for HMAC, tcId is 19 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1232_key[] = { 0x46, 0x5b, 0xc1, 0xab, 0x21, 0x25, 0xcc, 0xa2, 0x97, 0x29, 0xd0, 0x1d, 0xf0, 0x44, 0xe3, 0x93, 0xb0, 0x67, 0x7d, 0xef, 0xdd, 0x93, 0x92, 0x80, 0xa3, 0xaa, 0x14, 0x12, 0x24, 0xef, 0xa0, 0x64, 0x57, 0xe6, 0x23, 0x05, 0x6d, 0x02, 0xf6, 0xc3, 0x6e, 0xca, 0x3d, 0xfc, 0x4a, 0x74, 0x76, 0xdd, 0x36, 0xb9, 0x7d, 0x0c, 0x2d, 0x60, 0xc7, 0x67, 0x21, 0x29, 0x18, 0x9e, 0x73, 0xb6, 0xaf, 0x8f, }; static const unsigned char hmac_sha512_1232_msg[] = { 0xdd, 0x84, 0x59, 0x9b, 0x47, 0xba, 0x9a, 0xe9, 0xf2, 0xad, 0x0c, 0x8e, 0xac, 0x67, 0x84, 0x85, 0x43, 0x3e, 0xb6, 0xb1, 0xdf, 0xb7, 0xc9, 0x98, }; static const unsigned char hmac_sha512_1232_tag[] = { 0x9f, 0xff, 0x43, 0xa8, 0x3c, 0x71, 0x83, 0x32, 0x11, 0xf9, 0xd6, 0x0e, 0xee, 0xf4, 0x16, 0x69, 0x65, 0xc4, 0x1a, 0x37, 0xc7, 0x66, 0x34, 0xb1, 0xbd, 0xf9, 0xc5, 0x29, 0x1d, 0xf7, 0x5d, 0xc8, 0x77, 0x66, 0x8f, 0x22, 0x87, 0xbc, 0xf8, 0x10, 0x8e, 0xa9, 0xe0, 0x3d, 0x06, 0x1a, 0x70, 0x8d, 0xb2, 0xdb, 0x08, 0x68, 0x7e, 0xda, 0x61, 0xfa, 0x97, 0xb1, 0xca, 0x92, 0xdc, 0xf2, 0x2b, 0x92, }; static const wycheproof_hmac_test hmac_sha512_1232 = { .name = "hmac_sha512_1232", .hash = SHA512, .key = hmac_sha512_1232_key, .keylen = 64, .msg = hmac_sha512_1232_msg, .msglen = 24, .tag = hmac_sha512_1232_tag, .taglen = 64, .result = 1, .comment = ", tcId is 19 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1233 for HMAC, tcId is 20 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1233_key[] = { 0xb9, 0x02, 0x26, 0x79, 0x8d, 0xff, 0x2f, 0xfb, 0x91, 0xd1, 0xee, 0x41, 0x03, 0xf2, 0x63, 0x97, 0xd0, 0xbf, 0x84, 0xc1, 0x3c, 0x1e, 0xc7, 0x17, 0x39, 0x2c, 0x5f, 0xe1, 0xd4, 0xd0, 0xf4, 0xdc, 0x79, 0x02, 0x36, 0xd7, 0x59, 0xfa, 0x1b, 0xe8, 0x52, 0xe3, 0x05, 0xda, 0x58, 0x5a, 0x3d, 0xbd, 0xe0, 0xd3, 0x91, 0x2b, 0xea, 0x60, 0xd6, 0xb1, 0x40, 0xc2, 0x56, 0x45, 0xeb, 0x00, 0x94, 0x3f, }; static const unsigned char hmac_sha512_1233_msg[] = { 0xaa, 0x29, 0xc3, 0x72, 0xf1, 0x36, 0x99, 0x3c, 0x65, 0xac, 0xe5, 0xe1, 0xd6, 0x20, 0x78, 0x80, 0x6e, 0xb7, 0x87, 0x91, 0x3b, 0xb3, 0x5a, 0xf3, 0x33, 0x71, 0x05, 0x63, 0x59, 0xd3, 0x54, 0xb2, }; static const unsigned char hmac_sha512_1233_tag[] = { 0x49, 0x3a, 0x72, 0x75, 0x36, 0xb0, 0x7d, 0x43, 0x4a, 0x7f, 0xc8, 0xdf, 0x6b, 0x70, 0x98, 0x91, 0x48, 0xa8, 0xd9, 0x4c, 0xad, 0xb9, 0x76, 0x1a, 0xd8, 0x45, 0xac, 0x5f, 0xde, 0x20, 0x68, 0xf9, 0x56, 0x5e, 0x68, 0x60, 0x7b, 0x53, 0x1b, 0x0f, 0x30, 0x7d, 0x7c, 0x17, 0xce, 0x0a, 0x2b, 0xa6, 0x9f, 0xb1, 0xac, 0x1b, 0x0c, 0x71, 0x6f, 0x93, 0x90, 0x4e, 0xec, 0x75, 0x66, 0x9e, 0x70, 0xb7, }; static const wycheproof_hmac_test hmac_sha512_1233 = { .name = "hmac_sha512_1233", .hash = SHA512, .key = hmac_sha512_1233_key, .keylen = 64, .msg = hmac_sha512_1233_msg, .msglen = 32, .tag = hmac_sha512_1233_tag, .taglen = 64, .result = 1, .comment = ", tcId is 20 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1234 for HMAC, tcId is 21 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1234_key[] = { 0xaf, 0x1b, 0xb9, 0x17, 0x75, 0xcb, 0x40, 0xc7, 0x39, 0x83, 0xf1, 0x19, 0xc9, 0x27, 0xa2, 0xce, 0x8f, 0x7b, 0x95, 0x4a, 0x62, 0x74, 0xec, 0xc1, 0xcd, 0x96, 0x01, 0x9e, 0x5c, 0x41, 0x7a, 0xf4, 0xb0, 0x94, 0x37, 0x61, 0x94, 0xea, 0xe7, 0x1c, 0x7f, 0x68, 0xf3, 0x34, 0x56, 0x54, 0xd5, 0xd9, 0xf8, 0x19, 0x8a, 0x69, 0x7b, 0x41, 0xae, 0x25, 0x1e, 0x82, 0x30, 0x8a, 0xcc, 0xd9, 0x35, 0xbd, }; static const unsigned char hmac_sha512_1234_msg[] = { 0x75, 0xed, 0xed, 0xdf, 0xa7, 0xf1, 0xdf, 0x1d, 0xc1, 0x44, 0xfb, 0x19, 0x5b, 0x27, 0xe4, 0x54, 0x64, 0x0e, 0x3f, 0x89, 0x7c, 0xb5, 0x64, 0x22, 0x2f, 0x05, 0xe8, 0xaa, 0xb0, 0xc6, 0x02, 0x4f, 0x90, 0x47, 0x2a, 0xfe, 0xa6, 0xe7, 0x25, 0x4e, 0xd2, 0x51, 0x34, 0xea, 0x43, 0x45, 0x2a, }; static const unsigned char hmac_sha512_1234_tag[] = { 0xb5, 0x3d, 0x56, 0x40, 0x86, 0xa7, 0x45, 0xb1, 0x0d, 0x88, 0xa4, 0x8b, 0x50, 0xed, 0x8b, 0x53, 0xf4, 0xc8, 0x3f, 0xd1, 0x2b, 0xf5, 0x6a, 0x75, 0x10, 0x80, 0x74, 0xde, 0x9b, 0x34, 0x3c, 0xdf, 0x06, 0x68, 0xce, 0x8b, 0x6a, 0x3d, 0x88, 0x4b, 0xa2, 0xda, 0x5f, 0x4c, 0x95, 0x7f, 0x13, 0x19, 0xe2, 0x6c, 0x08, 0x13, 0xc9, 0x9a, 0x42, 0x69, 0xc1, 0x71, 0xad, 0x80, 0x98, 0x10, 0x13, 0xa2, }; static const wycheproof_hmac_test hmac_sha512_1234 = { .name = "hmac_sha512_1234", .hash = SHA512, .key = hmac_sha512_1234_key, .keylen = 64, .msg = hmac_sha512_1234_msg, .msglen = 47, .tag = hmac_sha512_1234_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 21 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1235 for HMAC, tcId is 22 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1235_key[] = { 0x51, 0x3e, 0x0e, 0x76, 0x22, 0xea, 0xbc, 0xb6, 0xbf, 0xc8, 0x16, 0x69, 0xda, 0xc9, 0x03, 0xdf, 0x46, 0xda, 0xea, 0x12, 0x40, 0xf3, 0x22, 0x48, 0xbb, 0xf4, 0xfc, 0x61, 0xf1, 0xf9, 0xb1, 0x3b, 0x2c, 0x3f, 0xe1, 0xbc, 0xc9, 0x75, 0x40, 0xd3, 0x00, 0x65, 0xbe, 0x9e, 0xee, 0x41, 0xe5, 0x17, 0x48, 0xbc, 0x42, 0xc1, 0x6a, 0x8c, 0x82, 0x69, 0xfb, 0xe2, 0xb6, 0xf6, 0x25, 0xc1, 0x92, 0x28, }; static const unsigned char hmac_sha512_1235_msg[] = { 0x81, 0xd8, 0x65, 0x09, 0x37, 0xf5, 0x08, 0x71, 0xa6, 0x6a, 0xf7, 0x16, 0x05, 0xea, 0x4f, 0xa9, 0xd6, 0xc5, 0xd7, 0xa3, 0x75, 0x77, 0x4c, 0x22, 0x80, 0xeb, 0x34, 0xae, 0xfc, 0xee, 0x8c, 0x0e, 0xf8, 0x33, 0x45, 0xbc, 0x54, 0x7e, 0x4d, 0xe7, 0xcb, 0xea, 0x48, 0x23, 0x69, 0xb2, 0x5a, 0x93, }; static const unsigned char hmac_sha512_1235_tag[] = { 0x9d, 0x94, 0x2e, 0x45, 0x85, 0x74, 0x2b, 0xa1, 0x18, 0xbd, 0xa6, 0xe1, 0x32, 0x51, 0x0a, 0xf3, 0xb9, 0x29, 0x70, 0x47, 0xd3, 0x64, 0xf7, 0x6b, 0x2a, 0x0d, 0x1f, 0xc8, 0x03, 0x84, 0x9b, 0x06, 0xcc, 0xac, 0x0e, 0xaa, 0x42, 0x79, 0x34, 0x05, 0x5c, 0x9d, 0x2e, 0x5a, 0x5d, 0xa1, 0x9c, 0xf1, 0x72, 0x99, 0xff, 0xda, 0xb6, 0x50, 0x89, 0x58, 0x0d, 0x10, 0xff, 0x72, 0x07, 0xc9, 0xed, 0x03, }; static const wycheproof_hmac_test hmac_sha512_1235 = { .name = "hmac_sha512_1235", .hash = SHA512, .key = hmac_sha512_1235_key, .keylen = 64, .msg = hmac_sha512_1235_msg, .msglen = 48, .tag = hmac_sha512_1235_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 22 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1236 for HMAC, tcId is 23 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1236_key[] = { 0x62, 0x7c, 0x9a, 0x72, 0x24, 0x7d, 0x07, 0xb0, 0xce, 0xc8, 0x34, 0x62, 0x77, 0x46, 0x83, 0x11, 0xc7, 0x40, 0x1f, 0xc4, 0xce, 0xca, 0xea, 0x8e, 0x22, 0xe1, 0x3e, 0xce, 0x4b, 0x35, 0x2c, 0x8f, 0x7a, 0x7e, 0xb1, 0xba, 0x81, 0xce, 0x34, 0x8a, 0x08, 0x67, 0x04, 0x38, 0xc9, 0x7b, 0x8d, 0x9e, 0x88, 0x36, 0x14, 0xd5, 0x50, 0xf1, 0xff, 0x16, 0xd6, 0x36, 0x97, 0x5c, 0x59, 0x98, 0x8c, 0x2d, }; static const unsigned char hmac_sha512_1236_msg[] = { 0x11, 0x8e, 0x04, 0x68, 0xcb, 0xb5, 0x2f, 0x93, 0xa3, 0x39, 0x6e, 0xbf, 0xaa, 0x11, 0x48, 0x81, 0xa9, 0x8a, 0x41, 0x01, 0xf4, 0xff, 0x91, 0x2c, 0xed, 0x47, 0xec, 0xfc, 0x73, 0xb2, 0x7f, 0x52, 0x20, 0x5b, 0x7a, 0x5d, 0x4f, 0x38, 0x99, 0x50, 0x6f, 0x9e, 0x34, 0xeb, 0xf9, 0x94, 0x60, 0xda, 0x7a, }; static const unsigned char hmac_sha512_1236_tag[] = { 0xa1, 0x86, 0xe0, 0x8c, 0x77, 0x31, 0xd4, 0xbb, 0xb1, 0xd5, 0x34, 0x2a, 0x10, 0x5e, 0xf4, 0x8f, 0x53, 0x53, 0xc5, 0xc5, 0x42, 0x27, 0x7d, 0xe6, 0x07, 0x83, 0x1f, 0xcb, 0xbc, 0x8d, 0x0b, 0x9f, 0xd5, 0x09, 0xc7, 0x4b, 0xf9, 0xe3, 0x52, 0xee, 0x73, 0x97, 0x92, 0xee, 0x3c, 0xd6, 0x38, 0x2f, 0x96, 0xe7, 0x0a, 0xdb, 0x58, 0x9f, 0xdf, 0x1f, 0xb0, 0x31, 0xd4, 0x3e, 0xef, 0x1a, 0x59, 0x5f, }; static const wycheproof_hmac_test hmac_sha512_1236 = { .name = "hmac_sha512_1236", .hash = SHA512, .key = hmac_sha512_1236_key, .keylen = 64, .msg = hmac_sha512_1236_msg, .msglen = 49, .tag = hmac_sha512_1236_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 23 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1237 for HMAC, tcId is 24 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1237_key[] = { 0x1e, 0x98, 0x1d, 0x0c, 0xbb, 0xad, 0x5b, 0xea, 0x94, 0x80, 0xd8, 0x36, 0xb4, 0x70, 0x4b, 0xf3, 0x14, 0x76, 0x63, 0xb6, 0xea, 0x59, 0xe1, 0xe0, 0xa2, 0x80, 0xfb, 0x45, 0xd9, 0xb8, 0x5d, 0x44, 0x5d, 0xc9, 0x72, 0x15, 0x9d, 0xde, 0x30, 0x1c, 0x6f, 0x1e, 0x66, 0x68, 0x1f, 0x95, 0x64, 0x2d, 0xbb, 0x9a, 0x92, 0x18, 0xc0, 0x0d, 0x0c, 0xd7, 0x24, 0xcb, 0x02, 0xf3, 0xbc, 0xae, 0xa2, 0xea, }; static const unsigned char hmac_sha512_1237_msg[] = { 0x44, 0x0d, 0xff, 0x39, 0x06, 0x88, 0xc9, 0xfd, 0xe3, 0x1c, 0x17, 0xfd, 0xb6, 0x1c, 0x1d, 0x13, 0x89, 0x9f, 0x95, 0x44, 0xa9, 0x86, 0x32, 0x4c, 0x34, 0xd5, 0xeb, 0x07, 0xbe, 0xf9, 0xa4, 0x43, 0x62, 0x97, 0xf4, 0xa7, 0xfe, 0x16, 0xde, 0x5d, 0xd7, 0xb2, 0x4e, 0x0c, 0x7c, 0x12, 0x90, 0x51, 0xef, 0xe6, 0xf2, 0xdd, 0x0a, 0x21, 0xae, 0xc0, 0x5c, 0x3e, 0x3c, 0x8f, 0x6f, 0xa3, 0x0d, 0x9c, 0x0c, 0xbd, 0x60, 0xd8, 0x40, 0xd1, 0x4f, 0x0b, 0x2a, 0x92, 0x8b, 0xc7, 0x18, 0x9b, 0x9d, 0xe4, 0xa6, 0xa7, 0x31, 0x15, 0x1d, 0x6b, 0x31, 0xe6, 0xa0, 0xec, 0xae, 0x75, 0x09, 0x54, 0x34, 0x73, 0x7b, 0xe8, 0xc3, 0xdb, 0x11, 0xa6, 0xa6, 0x97, 0xd0, 0x61, 0x6c, 0x78, 0xb9, 0x70, 0x41, 0xde, }; static const unsigned char hmac_sha512_1237_tag[] = { 0xc5, 0x2e, 0xb5, 0xd1, 0x8e, 0x90, 0x68, 0x72, 0x48, 0x34, 0x2a, 0x84, 0xdc, 0x02, 0x41, 0xc6, 0x80, 0xe9, 0x92, 0xb8, 0x8b, 0x14, 0x09, 0x27, 0x5d, 0xf7, 0xe3, 0x47, 0xc9, 0x91, 0x69, 0xa5, 0x0c, 0xd7, 0x80, 0xeb, 0x47, 0x26, 0xad, 0x75, 0x9e, 0x2a, 0x02, 0x7f, 0xb0, 0x91, 0x35, 0x4e, 0x3d, 0x7c, 0x7a, 0xba, 0x8a, 0x21, 0xf8, 0xac, 0xd1, 0xd0, 0xe2, 0x12, 0x36, 0xaf, 0x5f, 0x98, }; static const wycheproof_hmac_test hmac_sha512_1237 = { .name = "hmac_sha512_1237", .hash = SHA512, .key = hmac_sha512_1237_key, .keylen = 64, .msg = hmac_sha512_1237_msg, .msglen = 112, .tag = hmac_sha512_1237_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 24 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1238 for HMAC, tcId is 25 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1238_key[] = { 0xee, 0x8a, 0xea, 0x2a, 0x52, 0xeb, 0x7e, 0x0c, 0x11, 0x20, 0xab, 0x73, 0x6b, 0x1a, 0x82, 0x5b, 0x12, 0x61, 0x00, 0x63, 0xde, 0x96, 0x42, 0xc5, 0x94, 0x76, 0x6c, 0x02, 0x0c, 0xb8, 0x73, 0x14, 0xd8, 0xac, 0x94, 0xb1, 0x30, 0x72, 0xbf, 0xbf, 0x3c, 0x01, 0x9b, 0x4a, 0xac, 0xb1, 0xd2, 0x69, 0x5c, 0xdd, 0x75, 0x63, 0xa2, 0x6f, 0x57, 0x4e, 0x12, 0x55, 0x99, 0x06, 0x78, 0x4d, 0x85, 0x3c, }; static const unsigned char hmac_sha512_1238_msg[] = { 0xa3, 0x95, 0x1f, 0x1d, 0x18, 0x13, 0x56, 0x02, 0xfd, 0xad, 0xce, 0xee, 0xf5, 0x74, 0x1c, 0x24, 0xad, 0x22, 0x75, 0x61, 0x60, 0xd0, 0xc5, 0x5e, 0x51, 0xb7, 0x88, 0xaf, 0x95, 0x2a, 0xda, 0xeb, 0x13, 0xe1, 0x8c, 0x24, 0xc6, 0xb0, 0x96, 0x72, 0xf4, 0x05, 0xd7, 0xec, 0x3d, 0x49, 0xb0, 0xbd, 0x86, 0xc7, 0xf8, 0x69, 0x1b, 0x6f, 0x69, 0xaf, 0x49, 0x17, 0x54, 0x23, 0x21, 0x5c, 0xf5, 0x7d, 0x7c, 0x08, 0xa5, 0x4a, 0xb0, 0xb0, 0x29, 0x3e, 0x68, 0x5c, 0x9a, 0xa2, 0x50, 0xf1, 0x59, 0x9d, 0x78, 0x19, 0x3a, 0x00, 0xaf, 0x82, 0x2d, 0xec, 0x4b, 0x56, 0xfd, 0xb4, 0x1f, 0x03, 0x43, 0xab, 0x2c, 0xf8, 0x5e, 0xa2, 0x7b, 0xb2, 0xe6, 0x50, 0x93, 0x0f, 0x5e, 0x8c, 0xa8, 0x36, 0x83, 0x39, 0x03, 0xb0, 0x53, 0xb3, 0xe0, 0x68, 0x99, 0xb4, 0x01, 0x2a, 0x65, 0x32, 0x97, 0x8d, 0x90, }; static const unsigned char hmac_sha512_1238_tag[] = { 0xd3, 0x67, 0x8c, 0xa7, 0xc5, 0xc1, 0xaa, 0x21, 0xf1, 0x2e, 0xcc, 0xc2, 0x1a, 0x1a, 0xdd, 0x0b, 0x3e, 0xb1, 0x2c, 0xcd, 0x13, 0x40, 0x33, 0x57, 0x04, 0x68, 0x19, 0x1e, 0x51, 0xb0, 0x58, 0xc6, 0x1f, 0x2a, 0x7d, 0x88, 0xf2, 0xca, 0x6c, 0x65, 0x2c, 0x29, 0xc6, 0x5c, 0x49, 0x1b, 0xf1, 0xf0, 0x25, 0x2b, 0xc1, 0x57, 0xbd, 0xd7, 0x74, 0x36, 0xff, 0x55, 0x20, 0x4e, 0xac, 0x6d, 0xfb, 0x0d, }; static const wycheproof_hmac_test hmac_sha512_1238 = { .name = "hmac_sha512_1238", .hash = SHA512, .key = hmac_sha512_1238_key, .keylen = 64, .msg = hmac_sha512_1238_msg, .msglen = 127, .tag = hmac_sha512_1238_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 25 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1239 for HMAC, tcId is 26 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1239_key[] = { 0xec, 0xd1, 0x86, 0x1a, 0x12, 0xea, 0xee, 0x48, 0xae, 0xf1, 0xd7, 0xed, 0x27, 0x82, 0x23, 0xb5, 0x0d, 0x34, 0x16, 0xdb, 0xff, 0x81, 0xe9, 0x76, 0xc5, 0x6e, 0xcd, 0x4b, 0x1a, 0x1b, 0xc8, 0x89, 0x2b, 0x58, 0x4c, 0xbc, 0xc7, 0x23, 0x70, 0xff, 0x5e, 0x97, 0x6a, 0x6a, 0xf1, 0x79, 0x0c, 0xaa, 0x32, 0xf9, 0xea, 0x91, 0x28, 0x55, 0x91, 0x4c, 0x03, 0x15, 0x97, 0x95, 0x78, 0xfb, 0xf1, 0x65, }; static const unsigned char hmac_sha512_1239_msg[] = { 0x57, 0x79, 0xc5, 0x63, 0x73, 0xa8, 0xe5, 0xdb, 0x43, 0xbd, 0x65, 0xc0, 0x45, 0x3c, 0xe2, 0x31, 0x44, 0x23, 0x0d, 0x43, 0x66, 0x6d, 0x71, 0x7a, 0x3b, 0x59, 0xd2, 0xe9, 0x0f, 0x0e, 0x10, 0x73, 0x23, 0x76, 0x83, 0x1d, 0x72, 0x81, 0xcb, 0x23, 0xdd, 0x55, 0x66, 0xe5, 0xf8, 0xc6, 0x27, 0xd0, 0x0d, 0x39, 0x65, 0x01, 0x39, 0xce, 0xb8, 0x7c, 0xd4, 0x7e, 0x92, 0x1d, 0x65, 0xd6, 0xc1, 0xcc, 0x77, 0x12, 0xac, 0x4b, 0xd7, 0x5b, 0xda, 0x88, 0x28, 0xe6, 0x8a, 0xbc, 0x96, 0x8f, 0x41, 0x60, 0xed, 0x91, 0xb2, 0x89, 0x46, 0xc9, 0xd7, 0x06, 0xb0, 0x36, 0x0b, 0xbb, 0xdd, 0x65, 0xf4, 0x7e, 0xf9, 0x98, 0x3c, 0x50, 0xf2, 0xd0, 0x9d, 0x05, 0xc3, 0x67, 0x4c, 0x09, 0x43, 0xea, 0x4a, 0xf5, 0x4c, 0x38, 0x10, 0x89, 0xf9, 0xb8, 0x46, 0xdd, 0x69, 0xce, 0x90, 0x8e, 0x0f, 0x6e, 0xaa, 0xaf, }; static const unsigned char hmac_sha512_1239_tag[] = { 0xd3, 0x77, 0xe4, 0xef, 0xc3, 0x9f, 0x25, 0xca, 0x75, 0x14, 0x52, 0xe7, 0x9d, 0xcb, 0x56, 0x61, 0xf8, 0xad, 0xcc, 0x06, 0x57, 0x0b, 0xd3, 0xf7, 0x10, 0xe0, 0x38, 0x54, 0xe0, 0x32, 0x28, 0x6c, 0xa4, 0x77, 0xe6, 0xa6, 0x20, 0x64, 0x79, 0x58, 0xfd, 0x31, 0x70, 0x64, 0x63, 0xb5, 0x42, 0xdd, 0xf6, 0x17, 0x75, 0x78, 0x75, 0xf3, 0x49, 0xc6, 0x11, 0x09, 0x35, 0x8d, 0x04, 0xf6, 0xdc, 0x58, }; static const wycheproof_hmac_test hmac_sha512_1239 = { .name = "hmac_sha512_1239", .hash = SHA512, .key = hmac_sha512_1239_key, .keylen = 64, .msg = hmac_sha512_1239_msg, .msglen = 128, .tag = hmac_sha512_1239_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 26 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1240 for HMAC, tcId is 27 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1240_key[] = { 0x71, 0xaa, 0xdb, 0xf3, 0x30, 0xea, 0x13, 0x3b, 0x46, 0xc9, 0x39, 0xd1, 0x2e, 0x60, 0x38, 0x96, 0x90, 0x2e, 0x8d, 0xf6, 0x38, 0x59, 0x7c, 0x98, 0x87, 0x2d, 0xfb, 0x5a, 0xec, 0xd5, 0x16, 0x1b, 0xc8, 0x40, 0x95, 0x22, 0x1d, 0xe3, 0x22, 0x23, 0x67, 0x01, 0x2f, 0x45, 0xc6, 0xd7, 0x07, 0x01, 0xe8, 0x62, 0xab, 0x00, 0x0e, 0x78, 0x2e, 0x91, 0xb5, 0x05, 0xb2, 0x1b, 0x4e, 0x21, 0x2c, 0x38, }; static const unsigned char hmac_sha512_1240_msg[] = { 0xe6, 0xd7, 0xb0, 0x28, 0x0d, 0x2f, 0x7d, 0xf8, 0x3f, 0xd2, 0x65, 0x62, 0xfc, 0xde, 0xa2, 0x59, 0x7c, 0xf6, 0x87, 0xa9, 0xc9, 0xfa, 0x19, 0x4f, 0x65, 0x5c, 0x44, 0xd3, 0x27, 0x1b, 0x88, 0x1f, 0x28, 0xad, 0xc4, 0x36, 0xdb, 0x8e, 0x04, 0x37, 0xff, 0x4d, 0xc5, 0xd3, 0x83, 0x56, 0x27, 0x1c, 0x33, 0x88, 0x29, 0xc3, 0xe2, 0xd9, 0xba, 0x4a, 0xc1, 0x77, 0x7c, 0x94, 0x88, 0x69, 0x83, 0xd4, 0xb7, 0x2c, 0x27, 0x5b, 0xc0, 0x0e, 0x4f, 0x7b, 0x06, 0xc5, 0xce, 0x38, 0xa2, 0xfe, 0x54, 0x9f, 0xe5, 0x37, 0x61, 0x85, 0x7f, 0x23, 0x6d, 0xa7, 0x05, 0xfd, 0x03, 0x79, 0x0b, 0x41, 0xcc, 0x6f, 0x75, 0x9f, 0x41, 0xaa, 0x20, 0x6f, 0xec, 0xa7, 0xba, 0x54, 0x86, 0xf4, 0xfc, 0x9d, 0x09, 0xf3, 0x5c, 0x8e, 0x08, 0x87, 0x24, 0x12, 0x91, 0x88, 0x20, 0x10, 0x41, 0x4a, 0xe4, 0x1b, 0x8b, 0x38, 0x4a, 0x71, 0x5a, 0x40, 0x9b, 0xe1, 0x3d, 0xa1, 0x7b, 0xfd, 0x60, 0xd3, 0xfb, 0xd4, 0xb8, 0xcb, 0x3c, 0xc7, 0xc2, 0x60, 0x43, 0x80, 0x72, 0x64, 0xa2, 0x0b, 0x9a, 0x5c, 0x02, 0x72, 0x5e, 0x74, 0x2f, 0xff, 0x03, 0xe1, 0x80, 0x6b, 0x38, 0xaf, 0x35, 0x7e, 0xbf, 0x8c, 0x79, 0xfc, 0x4c, 0x38, 0xb0, 0x07, 0xbf, 0x06, 0x13, 0x28, 0x6c, 0xf0, 0x63, 0xe4, 0x54, 0x82, 0x37, 0x54, 0x75, 0xe6, 0xc4, 0x26, 0xd4, 0xf7, 0x00, 0x57, 0xcd, 0x92, 0xef, 0xcb, 0x2d, 0xfe, 0x86, 0xe4, 0x5b, 0xde, 0xa3, 0x99, 0x27, 0x3a, 0x5e, 0x0f, 0x14, 0x22, 0x21, 0xfa, 0xe2, 0x06, 0x80, 0x05, 0x55, 0xc0, 0x1b, 0x18, 0x53, 0x32, 0x95, 0xf5, 0x77, 0xe2, 0x3a, 0x9a, 0x7a, 0x0a, 0xa0, 0x72, 0x82, 0x30, 0x02, 0xb9, 0x09, 0x65, 0x01, 0x17, 0x4d, 0x3b, 0xc4, 0xaa, 0xc3, 0x3e, 0x0d, 0xc6, 0x00, }; static const unsigned char hmac_sha512_1240_tag[] = { 0x0c, 0x1c, 0xbb, 0x2f, 0x19, 0x6d, 0x3d, 0x1a, 0xf5, 0xf9, 0x82, 0xa3, 0x30, 0xbf, 0x1d, 0x9a, 0xcc, 0xaa, 0xda, 0x72, 0xcf, 0x6c, 0x25, 0x46, 0x58, 0xcb, 0x32, 0xbf, 0xd8, 0x70, 0x54, 0x81, 0xab, 0xd2, 0xe1, 0x63, 0xa7, 0x33, 0x38, 0x70, 0x0f, 0x0d, 0x96, 0x1c, 0xa0, 0x2a, 0x31, 0xb6, 0x00, 0xdf, 0x04, 0xfa, 0xf3, 0x11, 0xcd, 0x06, 0x49, 0x85, 0x57, 0x83, 0x11, 0x02, 0xf8, 0x0f, }; static const wycheproof_hmac_test hmac_sha512_1240 = { .name = "hmac_sha512_1240", .hash = SHA512, .key = hmac_sha512_1240_key, .keylen = 64, .msg = hmac_sha512_1240_msg, .msglen = 255, .tag = hmac_sha512_1240_tag, .taglen = 64, .result = 1, .comment = "long message, tcId is 27 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1241 for HMAC, tcId is 28 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1241_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1241_tag[] = { 0xd3, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1241 = { .name = "hmac_sha512_1241", .hash = SHA512, .key = hmac_sha512_1241_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1241_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 28 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1242 for HMAC, tcId is 29 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1242_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1242_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1242_tag[] = { 0xbe, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1242 = { .name = "hmac_sha512_1242", .hash = SHA512, .key = hmac_sha512_1242_key, .keylen = 64, .msg = hmac_sha512_1242_msg, .msglen = 16, .tag = hmac_sha512_1242_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 29 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1243 for HMAC, tcId is 30 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1243_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1243_tag[] = { 0xd0, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1243 = { .name = "hmac_sha512_1243", .hash = SHA512, .key = hmac_sha512_1243_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1243_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 30 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1244 for HMAC, tcId is 31 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1244_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1244_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1244_tag[] = { 0xbd, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1244 = { .name = "hmac_sha512_1244", .hash = SHA512, .key = hmac_sha512_1244_key, .keylen = 64, .msg = hmac_sha512_1244_msg, .msglen = 16, .tag = hmac_sha512_1244_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 31 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1245 for HMAC, tcId is 32 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1245_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1245_tag[] = { 0x52, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1245 = { .name = "hmac_sha512_1245", .hash = SHA512, .key = hmac_sha512_1245_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1245_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 32 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1246 for HMAC, tcId is 33 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1246_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1246_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1246_tag[] = { 0x3f, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1246 = { .name = "hmac_sha512_1246", .hash = SHA512, .key = hmac_sha512_1246_key, .keylen = 64, .msg = hmac_sha512_1246_msg, .msglen = 16, .tag = hmac_sha512_1246_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 33 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1247 for HMAC, tcId is 34 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1247_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1247_tag[] = { 0xd2, 0x9a, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1247 = { .name = "hmac_sha512_1247", .hash = SHA512, .key = hmac_sha512_1247_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1247_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 34 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1248 for HMAC, tcId is 35 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1248_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1248_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1248_tag[] = { 0xbf, 0x31, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1248 = { .name = "hmac_sha512_1248", .hash = SHA512, .key = hmac_sha512_1248_key, .keylen = 64, .msg = hmac_sha512_1248_msg, .msglen = 16, .tag = hmac_sha512_1248_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 35 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1249 for HMAC, tcId is 36 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1249_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1249_tag[] = { 0xd2, 0x9b, 0x9e, 0xbf, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1249 = { .name = "hmac_sha512_1249", .hash = SHA512, .key = hmac_sha512_1249_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1249_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 36 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1250 for HMAC, tcId is 37 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1250_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1250_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1250_tag[] = { 0xbf, 0x30, 0x1c, 0x3f, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1250 = { .name = "hmac_sha512_1250", .hash = SHA512, .key = hmac_sha512_1250_key, .keylen = 64, .msg = hmac_sha512_1250_msg, .msglen = 16, .tag = hmac_sha512_1250_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 37 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1251 for HMAC, tcId is 38 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1251_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1251_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x86, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1251 = { .name = "hmac_sha512_1251", .hash = SHA512, .key = hmac_sha512_1251_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1251_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 38 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1252 for HMAC, tcId is 39 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1252_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1252_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1252_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb4, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1252 = { .name = "hmac_sha512_1252", .hash = SHA512, .key = hmac_sha512_1252_key, .keylen = 64, .msg = hmac_sha512_1252_msg, .msglen = 16, .tag = hmac_sha512_1252_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 39 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1253 for HMAC, tcId is 40 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1253_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1253_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x85, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1253 = { .name = "hmac_sha512_1253", .hash = SHA512, .key = hmac_sha512_1253_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1253_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 40 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1254 for HMAC, tcId is 41 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1254_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1254_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1254_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb7, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1254 = { .name = "hmac_sha512_1254", .hash = SHA512, .key = hmac_sha512_1254_key, .keylen = 64, .msg = hmac_sha512_1254_msg, .msglen = 16, .tag = hmac_sha512_1254_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 41 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1255 for HMAC, tcId is 42 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1255_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1255_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1255 = { .name = "hmac_sha512_1255", .hash = SHA512, .key = hmac_sha512_1255_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1255_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 42 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1256 for HMAC, tcId is 43 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1256_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1256_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1256_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1256 = { .name = "hmac_sha512_1256", .hash = SHA512, .key = hmac_sha512_1256_key, .keylen = 64, .msg = hmac_sha512_1256_msg, .msglen = 16, .tag = hmac_sha512_1256_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 43 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1257 for HMAC, tcId is 44 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1257_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1257_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf2, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1257 = { .name = "hmac_sha512_1257", .hash = SHA512, .key = hmac_sha512_1257_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1257_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 44 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1258 for HMAC, tcId is 45 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1258_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1258_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1258_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x22, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1258 = { .name = "hmac_sha512_1258", .hash = SHA512, .key = hmac_sha512_1258_key, .keylen = 64, .msg = hmac_sha512_1258_msg, .msglen = 16, .tag = hmac_sha512_1258_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 45 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1259 for HMAC, tcId is 46 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1259_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1259_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0x73, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1259 = { .name = "hmac_sha512_1259", .hash = SHA512, .key = hmac_sha512_1259_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1259_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 46 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1260 for HMAC, tcId is 47 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1260_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1260_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1260_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0xa3, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1260 = { .name = "hmac_sha512_1260", .hash = SHA512, .key = hmac_sha512_1260_key, .keylen = 64, .msg = hmac_sha512_1260_msg, .msglen = 16, .tag = hmac_sha512_1260_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 47 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1261 for HMAC, tcId is 48 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1261_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1261_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x61, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1261 = { .name = "hmac_sha512_1261", .hash = SHA512, .key = hmac_sha512_1261_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1261_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 48 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1262 for HMAC, tcId is 49 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1262_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1262_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1262_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xd1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1262 = { .name = "hmac_sha512_1262", .hash = SHA512, .key = hmac_sha512_1262_key, .keylen = 64, .msg = hmac_sha512_1262_msg, .msglen = 16, .tag = hmac_sha512_1262_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 49 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1263 for HMAC, tcId is 50 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1263_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1263_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x08, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1263 = { .name = "hmac_sha512_1263", .hash = SHA512, .key = hmac_sha512_1263_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1263_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 50 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1264 for HMAC, tcId is 51 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1264_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1264_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1264_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x67, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1264 = { .name = "hmac_sha512_1264", .hash = SHA512, .key = hmac_sha512_1264_key, .keylen = 64, .msg = hmac_sha512_1264_msg, .msglen = 16, .tag = hmac_sha512_1264_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 51 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1265 for HMAC, tcId is 52 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1265_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1265_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc6, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1265 = { .name = "hmac_sha512_1265", .hash = SHA512, .key = hmac_sha512_1265_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1265_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 52 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1266 for HMAC, tcId is 53 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1266_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1266_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1266_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x49, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1266 = { .name = "hmac_sha512_1266", .hash = SHA512, .key = hmac_sha512_1266_key, .keylen = 64, .msg = hmac_sha512_1266_msg, .msglen = 16, .tag = hmac_sha512_1266_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 53 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1267 for HMAC, tcId is 54 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1267_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1267_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc5, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1267 = { .name = "hmac_sha512_1267", .hash = SHA512, .key = hmac_sha512_1267_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1267_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 54 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1268 for HMAC, tcId is 55 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1268_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1268_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1268_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x4a, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1268 = { .name = "hmac_sha512_1268", .hash = SHA512, .key = hmac_sha512_1268_key, .keylen = 64, .msg = hmac_sha512_1268_msg, .msglen = 16, .tag = hmac_sha512_1268_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 55 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1269 for HMAC, tcId is 56 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1269_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1269_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0x47, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1269 = { .name = "hmac_sha512_1269", .hash = SHA512, .key = hmac_sha512_1269_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1269_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 56 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1270 for HMAC, tcId is 57 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1270_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1270_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1270_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0xc8, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1270 = { .name = "hmac_sha512_1270", .hash = SHA512, .key = hmac_sha512_1270_key, .keylen = 64, .msg = hmac_sha512_1270_msg, .msglen = 16, .tag = hmac_sha512_1270_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 57 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1271 for HMAC, tcId is 58 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1271_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1271_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8d, }; static const wycheproof_hmac_test hmac_sha512_1271 = { .name = "hmac_sha512_1271", .hash = SHA512, .key = hmac_sha512_1271_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1271_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 504 in tag, tcId is 58 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1272 for HMAC, tcId is 59 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1272_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1272_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1272_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x53, }; static const wycheproof_hmac_test hmac_sha512_1272 = { .name = "hmac_sha512_1272", .hash = SHA512, .key = hmac_sha512_1272_key, .keylen = 64, .msg = hmac_sha512_1272_msg, .msglen = 16, .tag = hmac_sha512_1272_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 504 in tag, tcId is 59 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1273 for HMAC, tcId is 60 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1273_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1273_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8e, }; static const wycheproof_hmac_test hmac_sha512_1273 = { .name = "hmac_sha512_1273", .hash = SHA512, .key = hmac_sha512_1273_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1273_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 505 in tag, tcId is 60 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1274 for HMAC, tcId is 61 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1274_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1274_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1274_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x50, }; static const wycheproof_hmac_test hmac_sha512_1274 = { .name = "hmac_sha512_1274", .hash = SHA512, .key = hmac_sha512_1274_key, .keylen = 64, .msg = hmac_sha512_1274_msg, .msglen = 16, .tag = hmac_sha512_1274_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 505 in tag, tcId is 61 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1275 for HMAC, tcId is 62 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1275_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1275_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0xcc, }; static const wycheproof_hmac_test hmac_sha512_1275 = { .name = "hmac_sha512_1275", .hash = SHA512, .key = hmac_sha512_1275_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1275_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 510 in tag, tcId is 62 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1276 for HMAC, tcId is 63 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1276_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1276_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1276_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x12, }; static const wycheproof_hmac_test hmac_sha512_1276 = { .name = "hmac_sha512_1276", .hash = SHA512, .key = hmac_sha512_1276_key, .keylen = 64, .msg = hmac_sha512_1276_msg, .msglen = 16, .tag = hmac_sha512_1276_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 510 in tag, tcId is 63 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1277 for HMAC, tcId is 64 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1277_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1277_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x0c, }; static const wycheproof_hmac_test hmac_sha512_1277 = { .name = "hmac_sha512_1277", .hash = SHA512, .key = hmac_sha512_1277_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1277_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 511 in tag, tcId is 64 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1278 for HMAC, tcId is 65 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1278_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1278_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1278_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0xd2, }; static const wycheproof_hmac_test hmac_sha512_1278 = { .name = "hmac_sha512_1278", .hash = SHA512, .key = hmac_sha512_1278_key, .keylen = 64, .msg = hmac_sha512_1278_msg, .msglen = 16, .tag = hmac_sha512_1278_tag, .taglen = 64, .result = -1, .comment = "Flipped bit 511 in tag, tcId is 65 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1279 for HMAC, tcId is 66 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1279_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1279_tag[] = { 0xd3, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf2, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1279 = { .name = "hmac_sha512_1279", .hash = SHA512, .key = hmac_sha512_1279_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1279_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 66 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1280 for HMAC, tcId is 67 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1280_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1280_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1280_tag[] = { 0xbe, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x22, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1280 = { .name = "hmac_sha512_1280", .hash = SHA512, .key = hmac_sha512_1280_key, .keylen = 64, .msg = hmac_sha512_1280_msg, .msglen = 16, .tag = hmac_sha512_1280_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 67 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1281 for HMAC, tcId is 68 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1281_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1281_tag[] = { 0xd2, 0x9b, 0x9e, 0xbf, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1281 = { .name = "hmac_sha512_1281", .hash = SHA512, .key = hmac_sha512_1281_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1281_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 68 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1282 for HMAC, tcId is 69 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1282_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1282_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1282_tag[] = { 0xbf, 0x30, 0x1c, 0x3f, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1282 = { .name = "hmac_sha512_1282", .hash = SHA512, .key = hmac_sha512_1282_key, .keylen = 64, .msg = hmac_sha512_1282_msg, .msglen = 16, .tag = hmac_sha512_1282_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 69 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1283 for HMAC, tcId is 70 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1283_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1283_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0x2b, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, 0x12, 0x2e, 0x58, 0x27, 0x2a, 0x31, 0x67, 0x97, 0x20, 0xb2, 0x54, 0xcb, 0xd6, 0x3a, 0x7c, 0x6d, 0x69, 0x6b, 0xf9, 0x28, 0x3f, 0x9c, 0x68, 0x97, 0xe7, 0xd7, 0x92, 0x48, 0x3b, 0xb0, 0x38, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1283 = { .name = "hmac_sha512_1283", .hash = SHA512, .key = hmac_sha512_1283_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1283_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 70 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1284 for HMAC, tcId is 71 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1284_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1284_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1284_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x16, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, 0xe7, 0xe2, 0xdc, 0xa7, 0xb0, 0x11, 0xbf, 0x4c, 0xec, 0x4c, 0x7e, 0x7d, 0x6c, 0xc4, 0x1b, 0xc1, 0x0c, 0x3b, 0xe3, 0x6e, 0x83, 0x20, 0xc5, 0x0a, 0xaf, 0x6c, 0x35, 0xf0, 0x4a, 0xc8, 0xca, 0x52, }; static const wycheproof_hmac_test hmac_sha512_1284 = { .name = "hmac_sha512_1284", .hash = SHA512, .key = hmac_sha512_1284_key, .keylen = 64, .msg = hmac_sha512_1284_msg, .msglen = 16, .tag = hmac_sha512_1284_tag, .taglen = 64, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 71 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1285 for HMAC, tcId is 72 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1285_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1285_tag[] = { 0x2d, 0x64, 0x61, 0xc0, 0x78, 0x7f, 0x69, 0x79, 0x0c, 0xbe, 0xf6, 0x04, 0x38, 0xe7, 0x29, 0x54, 0x44, 0xf6, 0x3d, 0x87, 0x30, 0xfa, 0x5d, 0xf9, 0x52, 0x0d, 0xeb, 0x9c, 0x1e, 0xe8, 0xfc, 0x9d, 0xed, 0xd1, 0xa7, 0xd8, 0xd5, 0xce, 0x98, 0x68, 0xdf, 0x4d, 0xab, 0x34, 0x29, 0xc5, 0x83, 0x92, 0x96, 0x94, 0x06, 0xd7, 0xc0, 0x63, 0x97, 0x68, 0x18, 0x28, 0x6d, 0xb7, 0xc4, 0x4f, 0xc7, 0x73, }; static const wycheproof_hmac_test hmac_sha512_1285 = { .name = "hmac_sha512_1285", .hash = SHA512, .key = hmac_sha512_1285_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1285_tag, .taglen = 64, .result = -1, .comment = "all bits of tag flipped, tcId is 72 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1286 for HMAC, tcId is 73 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1286_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1286_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1286_tag[] = { 0x40, 0xcf, 0xe3, 0x40, 0x4a, 0x99, 0x8d, 0xf1, 0xdc, 0x0e, 0x99, 0x1d, 0xb7, 0x9a, 0x3c, 0x69, 0x0d, 0xe9, 0xe6, 0x38, 0x3e, 0xaf, 0xcc, 0x33, 0x91, 0x71, 0x44, 0x33, 0x73, 0xa3, 0xa4, 0x5c, 0x18, 0x1d, 0x23, 0x58, 0x4f, 0xee, 0x40, 0xb3, 0x13, 0xb3, 0x81, 0x82, 0x93, 0x3b, 0xe4, 0x3e, 0xf3, 0xc4, 0x1c, 0x91, 0x7c, 0xdf, 0x3a, 0xf5, 0x50, 0x93, 0xca, 0x0f, 0xb5, 0x37, 0x35, 0xad, }; static const wycheproof_hmac_test hmac_sha512_1286 = { .name = "hmac_sha512_1286", .hash = SHA512, .key = hmac_sha512_1286_key, .keylen = 64, .msg = hmac_sha512_1286_msg, .msglen = 16, .tag = hmac_sha512_1286_tag, .taglen = 64, .result = -1, .comment = "all bits of tag flipped, tcId is 73 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1287 for HMAC, tcId is 74 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1287_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1287_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha512_1287 = { .name = "hmac_sha512_1287", .hash = SHA512, .key = hmac_sha512_1287_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1287_tag, .taglen = 64, .result = -1, .comment = "Tag changed to all zero, tcId is 74 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1288 for HMAC, tcId is 75 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1288_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1288_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1288_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha512_1288 = { .name = "hmac_sha512_1288", .hash = SHA512, .key = hmac_sha512_1288_key, .keylen = 64, .msg = hmac_sha512_1288_msg, .msglen = 16, .tag = hmac_sha512_1288_tag, .taglen = 64, .result = -1, .comment = "Tag changed to all zero, tcId is 75 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1289 for HMAC, tcId is 76 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1289_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1289_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha512_1289 = { .name = "hmac_sha512_1289", .hash = SHA512, .key = hmac_sha512_1289_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1289_tag, .taglen = 64, .result = -1, .comment = "tag changed to all 1, tcId is 76 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1290 for HMAC, tcId is 77 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1290_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1290_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1290_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha512_1290 = { .name = "hmac_sha512_1290", .hash = SHA512, .key = hmac_sha512_1290_key, .keylen = 64, .msg = hmac_sha512_1290_msg, .msglen = 16, .tag = hmac_sha512_1290_tag, .taglen = 64, .result = -1, .comment = "tag changed to all 1, tcId is 77 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1291 for HMAC, tcId is 78 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1291_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1291_tag[] = { 0x52, 0x1b, 0x1e, 0xbf, 0x07, 0x00, 0x16, 0x06, 0x73, 0xc1, 0x89, 0x7b, 0x47, 0x98, 0x56, 0x2b, 0x3b, 0x89, 0x42, 0xf8, 0x4f, 0x85, 0x22, 0x86, 0x2d, 0x72, 0x94, 0xe3, 0x61, 0x97, 0x83, 0xe2, 0x92, 0xae, 0xd8, 0xa7, 0xaa, 0xb1, 0xe7, 0x17, 0xa0, 0x32, 0xd4, 0x4b, 0x56, 0xba, 0xfc, 0xed, 0xe9, 0xeb, 0x79, 0xa8, 0xbf, 0x1c, 0xe8, 0x17, 0x67, 0x57, 0x12, 0xc8, 0xbb, 0x30, 0xb8, 0x0c, }; static const wycheproof_hmac_test hmac_sha512_1291 = { .name = "hmac_sha512_1291", .hash = SHA512, .key = hmac_sha512_1291_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1291_tag, .taglen = 64, .result = -1, .comment = "msbs changed in tag, tcId is 78 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1292 for HMAC, tcId is 79 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1292_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1292_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1292_tag[] = { 0x3f, 0xb0, 0x9c, 0x3f, 0x35, 0xe6, 0xf2, 0x8e, 0xa3, 0x71, 0xe6, 0x62, 0xc8, 0xe5, 0x43, 0x16, 0x72, 0x96, 0x99, 0x47, 0x41, 0xd0, 0xb3, 0x4c, 0xee, 0x0e, 0x3b, 0x4c, 0x0c, 0xdc, 0xdb, 0x23, 0x67, 0x62, 0x5c, 0x27, 0x30, 0x91, 0x3f, 0xcc, 0x6c, 0xcc, 0xfe, 0xfd, 0xec, 0x44, 0x9b, 0x41, 0x8c, 0xbb, 0x63, 0xee, 0x03, 0xa0, 0x45, 0x8a, 0x2f, 0xec, 0xb5, 0x70, 0xca, 0x48, 0x4a, 0xd2, }; static const wycheproof_hmac_test hmac_sha512_1292 = { .name = "hmac_sha512_1292", .hash = SHA512, .key = hmac_sha512_1292_key, .keylen = 64, .msg = hmac_sha512_1292_msg, .msglen = 16, .tag = hmac_sha512_1292_tag, .taglen = 64, .result = -1, .comment = "msbs changed in tag, tcId is 79 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1293 for HMAC, tcId is 80 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1293_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1293_tag[] = { 0xd3, 0x9a, 0x9f, 0x3e, 0x86, 0x81, 0x97, 0x87, 0xf2, 0x40, 0x08, 0xfa, 0xc6, 0x19, 0xd7, 0xaa, 0xba, 0x08, 0xc3, 0x79, 0xce, 0x04, 0xa3, 0x07, 0xac, 0xf3, 0x15, 0x62, 0xe0, 0x16, 0x02, 0x63, 0x13, 0x2f, 0x59, 0x26, 0x2b, 0x30, 0x66, 0x96, 0x21, 0xb3, 0x55, 0xca, 0xd7, 0x3b, 0x7d, 0x6c, 0x68, 0x6a, 0xf8, 0x29, 0x3e, 0x9d, 0x69, 0x96, 0xe6, 0xd6, 0x93, 0x49, 0x3a, 0xb1, 0x39, 0x8d, }; static const wycheproof_hmac_test hmac_sha512_1293 = { .name = "hmac_sha512_1293", .hash = SHA512, .key = hmac_sha512_1293_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1293_tag, .taglen = 64, .result = -1, .comment = "lsbs changed in tag, tcId is 80 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1294 for HMAC, tcId is 81 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1294_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1294_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1294_tag[] = { 0xbe, 0x31, 0x1d, 0xbe, 0xb4, 0x67, 0x73, 0x0f, 0x22, 0xf0, 0x67, 0xe3, 0x49, 0x64, 0xc2, 0x97, 0xf3, 0x17, 0x18, 0xc6, 0xc0, 0x51, 0x32, 0xcd, 0x6f, 0x8f, 0xba, 0xcd, 0x8d, 0x5d, 0x5a, 0xa2, 0xe6, 0xe3, 0xdd, 0xa6, 0xb1, 0x10, 0xbe, 0x4d, 0xed, 0x4d, 0x7f, 0x7c, 0x6d, 0xc5, 0x1a, 0xc0, 0x0d, 0x3a, 0xe2, 0x6f, 0x82, 0x21, 0xc4, 0x0b, 0xae, 0x6d, 0x34, 0xf1, 0x4b, 0xc9, 0xcb, 0x53, }; static const wycheproof_hmac_test hmac_sha512_1294 = { .name = "hmac_sha512_1294", .hash = SHA512, .key = hmac_sha512_1294_key, .keylen = 64, .msg = hmac_sha512_1294_msg, .msglen = 16, .tag = hmac_sha512_1294_tag, .taglen = 64, .result = -1, .comment = "lsbs changed in tag, tcId is 81 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1295 for HMAC, tcId is 82 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1295_key[] = { 0xee, 0xf6, 0xbc, 0xf1, 0x6e, 0xf7, 0xae, 0x17, 0x32, 0x6a, 0x33, 0xf2, 0x2d, 0x14, 0x06, 0xec, 0x1b, 0xd3, 0xf8, 0x66, 0x50, 0x5f, 0x4b, 0x2e, 0x4f, 0xe8, 0xb4, 0x5b, 0xd6, 0x2c, 0xcb, 0xd8, 0x50, 0x32, 0xa9, 0x89, 0x9f, 0xac, 0xf2, 0xdb, 0x0c, 0x93, 0xa2, 0x34, 0x5c, 0xb8, 0x89, 0x2a, 0xfb, 0x74, 0xdb, 0x54, 0x97, 0x81, 0x21, 0x1d, 0xd8, 0x88, 0x1a, 0x8c, 0x8e, 0x25, 0xc1, 0x71, }; static const unsigned char hmac_sha512_1295_tag[] = { 0x75, 0xf6, 0x97, 0x5e, 0x35, 0x00, 0xbe, 0x4f, 0xbf, 0xee, 0x1b, 0xc9, 0x56, 0x44, 0x74, 0x5c, 0xe9, 0xf8, 0xd4, 0x7b, 0x6f, 0x38, 0x18, 0xa4, 0x8f, 0xf3, 0x4e, 0x8c, 0x2b, 0x18, 0x6b, 0xa6, }; static const wycheproof_hmac_test hmac_sha512_1295 = { .name = "hmac_sha512_1295", .hash = SHA512, .key = hmac_sha512_1295_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1295_tag, .taglen = 32, .result = 1, .comment = "empty message, tcId is 82 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1296 for HMAC, tcId is 83 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1296_key[] = { 0x83, 0x86, 0x96, 0xe6, 0x19, 0x0c, 0x87, 0x4c, 0x37, 0x17, 0xb8, 0xbe, 0x0c, 0xf0, 0x63, 0xca, 0x6d, 0x60, 0x76, 0x09, 0x87, 0xd1, 0xa3, 0x37, 0x03, 0xe7, 0xe3, 0x5e, 0xb1, 0x73, 0xe5, 0xae, 0x95, 0x4e, 0x74, 0x1a, 0x37, 0x93, 0x51, 0x39, 0xd6, 0x12, 0x14, 0x9e, 0x76, 0xf6, 0xab, 0x2a, 0x37, 0x06, 0x04, 0xf5, 0xb4, 0xa6, 0x8b, 0xee, 0x87, 0xe3, 0x09, 0x24, 0x0a, 0x9b, 0xa3, 0xd6, }; static const unsigned char hmac_sha512_1296_msg[] = { 0xd8, }; static const unsigned char hmac_sha512_1296_tag[] = { 0x5b, 0xcf, 0x44, 0x53, 0x9d, 0x87, 0x83, 0xbb, 0x70, 0x8e, 0x7f, 0x5d, 0xaf, 0xc4, 0xd6, 0x83, 0xbc, 0xaa, 0x0d, 0x24, 0x0c, 0x90, 0x26, 0x75, 0xbd, 0xde, 0x05, 0x9f, 0x94, 0x4d, 0xac, 0xde, }; static const wycheproof_hmac_test hmac_sha512_1296 = { .name = "hmac_sha512_1296", .hash = SHA512, .key = hmac_sha512_1296_key, .keylen = 64, .msg = hmac_sha512_1296_msg, .msglen = 1, .tag = hmac_sha512_1296_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 83 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1297 for HMAC, tcId is 84 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1297_key[] = { 0xfa, 0x99, 0x9e, 0xd1, 0xcf, 0xbc, 0x5c, 0x43, 0xaf, 0xb1, 0x6f, 0x22, 0xd0, 0x24, 0xe3, 0xce, 0x64, 0x5e, 0x00, 0xb0, 0x67, 0x12, 0xc9, 0x3b, 0x94, 0x61, 0x67, 0xc9, 0xc2, 0xc0, 0x37, 0xd1, 0x92, 0xf0, 0xf3, 0x00, 0x3f, 0x87, 0xc4, 0x3a, 0x71, 0x16, 0x6f, 0xe1, 0xa3, 0xc5, 0x82, 0x4c, 0x34, 0x86, 0x73, 0xa2, 0xf0, 0xf3, 0xc4, 0x75, 0x70, 0x69, 0x85, 0x94, 0x0f, 0x6b, 0x02, 0xa2, }; static const unsigned char hmac_sha512_1297_msg[] = { 0xca, 0xd2, }; static const unsigned char hmac_sha512_1297_tag[] = { 0x9a, 0x93, 0xf4, 0x72, 0x8a, 0xa5, 0x94, 0x1d, 0xa1, 0x60, 0xec, 0x70, 0x7f, 0x14, 0xb7, 0xe9, 0xee, 0x1e, 0x76, 0x8c, 0x7f, 0x62, 0x72, 0x69, 0x54, 0x34, 0x30, 0xd2, 0xfc, 0x68, 0x1e, 0x90, }; static const wycheproof_hmac_test hmac_sha512_1297 = { .name = "hmac_sha512_1297", .hash = SHA512, .key = hmac_sha512_1297_key, .keylen = 64, .msg = hmac_sha512_1297_msg, .msglen = 2, .tag = hmac_sha512_1297_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 84 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1298 for HMAC, tcId is 85 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1298_key[] = { 0xb5, 0x3f, 0xce, 0xd8, 0xb7, 0xb4, 0xaa, 0x59, 0xd3, 0xb5, 0x6d, 0x91, 0xe1, 0x38, 0x67, 0x63, 0xc3, 0x9e, 0x35, 0x1c, 0x2f, 0x5a, 0xd6, 0xa4, 0x88, 0x5e, 0x44, 0x2a, 0xd8, 0x94, 0xd5, 0x18, 0x1c, 0x5b, 0xfe, 0x5c, 0x05, 0x28, 0x0a, 0x84, 0xad, 0x19, 0xd7, 0x58, 0xe3, 0x59, 0xbf, 0x81, 0x71, 0xfe, 0x65, 0x29, 0x88, 0xfc, 0xf9, 0xd1, 0x45, 0x8e, 0xa1, 0x73, 0x64, 0xca, 0x8f, 0xa9, }; static const unsigned char hmac_sha512_1298_msg[] = { 0xd3, 0x39, 0x3c, }; static const unsigned char hmac_sha512_1298_tag[] = { 0x02, 0xc4, 0x96, 0x8e, 0x86, 0xd1, 0xc6, 0x28, 0x37, 0xa4, 0x16, 0x50, 0xd3, 0x19, 0x9c, 0xa6, 0xb3, 0xc5, 0x9b, 0x82, 0x27, 0xf5, 0x5e, 0x0b, 0xa4, 0x0e, 0x5e, 0x39, 0x04, 0xab, 0x51, 0x2a, }; static const wycheproof_hmac_test hmac_sha512_1298 = { .name = "hmac_sha512_1298", .hash = SHA512, .key = hmac_sha512_1298_key, .keylen = 64, .msg = hmac_sha512_1298_msg, .msglen = 3, .tag = hmac_sha512_1298_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 85 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1299 for HMAC, tcId is 86 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1299_key[] = { 0x3f, 0x0c, 0xbe, 0xeb, 0xe3, 0x91, 0xc6, 0x49, 0x1e, 0x77, 0xc5, 0x7a, 0x05, 0xe8, 0x5a, 0x16, 0xf0, 0xb5, 0x29, 0x4d, 0x19, 0xf9, 0xa7, 0xf3, 0x39, 0x0b, 0xaf, 0x7a, 0x20, 0x51, 0xfb, 0xf9, 0x80, 0xe0, 0x41, 0xee, 0x45, 0xc9, 0x10, 0x4a, 0x91, 0x26, 0xa6, 0xa7, 0xec, 0x18, 0x2e, 0xae, 0xc2, 0x7a, 0x99, 0xc1, 0xa7, 0xa3, 0xf5, 0xa1, 0xe8, 0xcd, 0x8f, 0xfd, 0xe6, 0x06, 0x41, 0xdc, }; static const unsigned char hmac_sha512_1299_msg[] = { 0xbe, 0xbb, 0x03, 0x92, }; static const unsigned char hmac_sha512_1299_tag[] = { 0x8d, 0x68, 0xdd, 0x7d, 0x67, 0x76, 0x3e, 0x8e, 0xaf, 0xee, 0x00, 0x29, 0xd0, 0x1e, 0x96, 0xe6, 0xa0, 0x9c, 0x4b, 0xa0, 0x9e, 0x57, 0xa2, 0xe5, 0xbd, 0xe3, 0xba, 0xcc, 0xa2, 0x13, 0xc6, 0x95, }; static const wycheproof_hmac_test hmac_sha512_1299 = { .name = "hmac_sha512_1299", .hash = SHA512, .key = hmac_sha512_1299_key, .keylen = 64, .msg = hmac_sha512_1299_msg, .msglen = 4, .tag = hmac_sha512_1299_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 86 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1300 for HMAC, tcId is 87 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1300_key[] = { 0x4a, 0x7f, 0x11, 0x0b, 0x92, 0x24, 0x1b, 0xad, 0xc9, 0x07, 0xba, 0x3c, 0x61, 0x47, 0x7b, 0xab, 0x09, 0x53, 0xa8, 0x51, 0xbf, 0x32, 0x74, 0x25, 0xe8, 0x58, 0xfc, 0x72, 0x4b, 0xd3, 0x3e, 0xde, 0x2a, 0x4a, 0x50, 0x18, 0xfe, 0x71, 0xaa, 0xb4, 0x34, 0xbd, 0xa8, 0xeb, 0x24, 0x64, 0xa4, 0x15, 0x77, 0xc8, 0xd5, 0x70, 0x53, 0x0c, 0x46, 0x0f, 0x7c, 0x8b, 0xc0, 0x17, 0x2f, 0x1e, 0xe0, 0xf1, }; static const unsigned char hmac_sha512_1300_msg[] = { 0x40, 0xa3, 0x33, 0xf4, 0xcf, }; static const unsigned char hmac_sha512_1300_tag[] = { 0x5f, 0xed, 0xa3, 0x36, 0x6c, 0xe9, 0xf5, 0xac, 0x34, 0x02, 0xc9, 0x77, 0xa4, 0x06, 0x2d, 0x33, 0xc0, 0x9e, 0x2c, 0x9a, 0x3d, 0x0c, 0x2d, 0xcd, 0xa0, 0xc8, 0xd6, 0x7b, 0x4b, 0xbd, 0x1a, 0x37, }; static const wycheproof_hmac_test hmac_sha512_1300 = { .name = "hmac_sha512_1300", .hash = SHA512, .key = hmac_sha512_1300_key, .keylen = 64, .msg = hmac_sha512_1300_msg, .msglen = 5, .tag = hmac_sha512_1300_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 87 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1301 for HMAC, tcId is 88 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1301_key[] = { 0xc6, 0xc9, 0x5b, 0xf9, 0xfa, 0xca, 0xb2, 0x95, 0xce, 0xbf, 0xa4, 0xb9, 0x07, 0x85, 0x58, 0x74, 0xf5, 0x7a, 0x5c, 0x15, 0x48, 0x57, 0x6a, 0xd8, 0xba, 0xe6, 0x94, 0xa3, 0x64, 0xf5, 0xe5, 0x8d, 0xbb, 0x8c, 0x8d, 0xd4, 0x93, 0x30, 0xb2, 0xfd, 0xd1, 0xb7, 0x16, 0x57, 0xd2, 0x11, 0xdb, 0x2a, 0x65, 0x69, 0xa9, 0xf3, 0xa3, 0x56, 0xc0, 0xc5, 0xb3, 0xc4, 0xef, 0xbd, 0x5b, 0x67, 0x77, 0xcb, }; static const unsigned char hmac_sha512_1301_msg[] = { 0x4c, 0xf9, 0x26, 0xaf, 0x47, 0x5a, }; static const unsigned char hmac_sha512_1301_tag[] = { 0x0a, 0x74, 0x8a, 0xa3, 0x37, 0x62, 0xd3, 0x74, 0xaa, 0x04, 0xb6, 0x17, 0xb5, 0x8d, 0x12, 0x9a, 0xd1, 0xaa, 0xf2, 0x52, 0xa4, 0x04, 0x63, 0xfd, 0x62, 0xce, 0x92, 0x4e, 0x21, 0xe6, 0xd5, 0x2c, }; static const wycheproof_hmac_test hmac_sha512_1301 = { .name = "hmac_sha512_1301", .hash = SHA512, .key = hmac_sha512_1301_key, .keylen = 64, .msg = hmac_sha512_1301_msg, .msglen = 6, .tag = hmac_sha512_1301_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 88 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1302 for HMAC, tcId is 89 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1302_key[] = { 0x0d, 0x33, 0x87, 0xfe, 0x59, 0xe8, 0xe7, 0xc4, 0x3c, 0x92, 0x8d, 0xac, 0x79, 0x13, 0x82, 0x6d, 0xec, 0x4d, 0x63, 0xac, 0x3c, 0x8e, 0xe3, 0x46, 0xba, 0x7c, 0xae, 0xd9, 0x50, 0x5b, 0x9e, 0x63, 0xff, 0x89, 0x42, 0xcd, 0xe9, 0x09, 0x97, 0xe8, 0xdb, 0xea, 0xf6, 0xe1, 0x7e, 0xe1, 0x87, 0xc0, 0xa8, 0x4a, 0x18, 0x53, 0x95, 0x2d, 0x86, 0x6c, 0x15, 0xf9, 0xa3, 0x2f, 0xce, 0xe6, 0xa8, 0x2a, }; static const unsigned char hmac_sha512_1302_msg[] = { 0x2b, 0xa3, 0xbc, 0x3c, 0xd6, 0x4b, 0xc6, }; static const unsigned char hmac_sha512_1302_tag[] = { 0xcc, 0x7e, 0x97, 0x63, 0x08, 0x84, 0xbd, 0x8a, 0xd5, 0x6f, 0x6d, 0x96, 0xfd, 0x34, 0x69, 0x0e, 0xab, 0x6c, 0x8a, 0xd5, 0x55, 0x6b, 0x51, 0x9d, 0xb3, 0xbc, 0x3c, 0x60, 0x83, 0xc8, 0x2d, 0x3c, }; static const wycheproof_hmac_test hmac_sha512_1302 = { .name = "hmac_sha512_1302", .hash = SHA512, .key = hmac_sha512_1302_key, .keylen = 64, .msg = hmac_sha512_1302_msg, .msglen = 7, .tag = hmac_sha512_1302_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 89 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1303 for HMAC, tcId is 90 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1303_key[] = { 0x3c, 0xb9, 0xce, 0x56, 0x53, 0x88, 0xa6, 0xf0, 0x45, 0x4a, 0x80, 0xad, 0xd8, 0x6c, 0x7e, 0x10, 0x7e, 0xa5, 0x37, 0xd7, 0xf4, 0x68, 0xa0, 0x64, 0x89, 0x30, 0xfc, 0x37, 0x17, 0x2c, 0xf7, 0xb4, 0xca, 0x90, 0x58, 0x03, 0x30, 0x71, 0xc3, 0x54, 0xa2, 0x0a, 0x60, 0x8e, 0x2d, 0x46, 0xe9, 0x8a, 0xfe, 0x46, 0x43, 0x5a, 0x34, 0x43, 0x62, 0x98, 0x9c, 0xba, 0xaf, 0xac, 0x18, 0x85, 0x9b, 0xba, }; static const unsigned char hmac_sha512_1303_msg[] = { 0x33, 0xce, 0x49, 0x8e, 0x1f, 0x94, 0xf4, 0x12, }; static const unsigned char hmac_sha512_1303_tag[] = { 0x76, 0x33, 0x5e, 0xe2, 0x3e, 0xe1, 0xdc, 0x25, 0x88, 0x12, 0xbe, 0x37, 0x3b, 0xb5, 0xf9, 0x59, 0x18, 0xba, 0xbe, 0xd0, 0xb6, 0x9e, 0x56, 0x5e, 0x00, 0xee, 0x3a, 0xf7, 0x76, 0xc5, 0xa5, 0xfc, }; static const wycheproof_hmac_test hmac_sha512_1303 = { .name = "hmac_sha512_1303", .hash = SHA512, .key = hmac_sha512_1303_key, .keylen = 64, .msg = hmac_sha512_1303_msg, .msglen = 8, .tag = hmac_sha512_1303_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 90 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1304 for HMAC, tcId is 91 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1304_key[] = { 0xc2, 0x5f, 0x45, 0xce, 0xb2, 0xa5, 0x59, 0x7f, 0x36, 0x14, 0x45, 0xfa, 0x41, 0xa9, 0x01, 0x9f, 0x41, 0xa6, 0xe6, 0xd7, 0xf1, 0x44, 0x20, 0x3f, 0x29, 0xc0, 0xb9, 0xfc, 0xea, 0x36, 0x2d, 0x60, 0x89, 0x4c, 0x3c, 0xad, 0xc1, 0xce, 0x25, 0xd5, 0x3d, 0xa3, 0x62, 0xe4, 0x64, 0xc1, 0x1f, 0xc6, 0xe1, 0x69, 0xe3, 0xdb, 0x2e, 0xa1, 0xcf, 0x40, 0xfe, 0x08, 0xff, 0xfb, 0x42, 0x9b, 0x1a, 0x5b, }; static const unsigned char hmac_sha512_1304_msg[] = { 0x81, 0x97, 0x8a, 0xf4, 0x79, 0x5c, 0x50, 0xf8, 0x9c, }; static const unsigned char hmac_sha512_1304_tag[] = { 0xbf, 0x73, 0x21, 0x85, 0x44, 0xd8, 0x45, 0x8e, 0x6a, 0xd0, 0x07, 0x27, 0xb2, 0x36, 0xf8, 0x33, 0xd2, 0x81, 0x72, 0x3d, 0x7d, 0xca, 0xe4, 0xd1, 0x01, 0x9b, 0x70, 0xb9, 0xd6, 0xe8, 0xbc, 0x4d, }; static const wycheproof_hmac_test hmac_sha512_1304 = { .name = "hmac_sha512_1304", .hash = SHA512, .key = hmac_sha512_1304_key, .keylen = 64, .msg = hmac_sha512_1304_msg, .msglen = 9, .tag = hmac_sha512_1304_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 91 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1305 for HMAC, tcId is 92 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1305_key[] = { 0xb4, 0x58, 0x76, 0x4e, 0xe2, 0x73, 0xf3, 0x91, 0xcb, 0x71, 0x8f, 0x64, 0xa1, 0xbc, 0xa6, 0x4c, 0x96, 0xa8, 0x70, 0xd9, 0x42, 0x6d, 0x62, 0x54, 0xee, 0x37, 0xe5, 0xc9, 0x38, 0x98, 0xd6, 0xa5, 0xef, 0x68, 0xe9, 0xd3, 0xb0, 0xe0, 0x57, 0xa3, 0xc3, 0x96, 0xfa, 0xa8, 0x34, 0xa2, 0x99, 0x26, 0xa9, 0x68, 0x0c, 0xfa, 0x90, 0x3d, 0x2a, 0x60, 0x5b, 0x85, 0x40, 0x7b, 0xb2, 0x4c, 0x8c, 0xee, }; static const unsigned char hmac_sha512_1305_msg[] = { 0xd8, 0x04, 0xdc, 0x2a, 0x1e, 0x14, 0x6f, 0x62, 0xb6, 0x21, }; static const unsigned char hmac_sha512_1305_tag[] = { 0x5b, 0x25, 0x84, 0x34, 0x16, 0x46, 0x7b, 0x9e, 0x0a, 0x24, 0xcf, 0xab, 0x67, 0xd8, 0xfc, 0x27, 0xe0, 0x62, 0x3f, 0xf9, 0xe0, 0x1b, 0x22, 0x04, 0xb5, 0xaf, 0xdf, 0x3e, 0x9c, 0xc0, 0x5d, 0x1b, }; static const wycheproof_hmac_test hmac_sha512_1305 = { .name = "hmac_sha512_1305", .hash = SHA512, .key = hmac_sha512_1305_key, .keylen = 64, .msg = hmac_sha512_1305_msg, .msglen = 10, .tag = hmac_sha512_1305_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 92 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1306 for HMAC, tcId is 93 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1306_key[] = { 0x7c, 0xbc, 0x57, 0x78, 0xf7, 0x05, 0x95, 0xfc, 0x21, 0x1c, 0xee, 0x3a, 0x93, 0xe1, 0x7f, 0xf7, 0xf2, 0x5a, 0x1d, 0x9f, 0x37, 0x66, 0xf8, 0xeb, 0x70, 0xeb, 0x1e, 0x08, 0xc9, 0x42, 0x0a, 0x62, 0xbd, 0x89, 0xe8, 0xb7, 0xd8, 0x34, 0xcc, 0x85, 0x4d, 0x05, 0x9a, 0xfd, 0x41, 0x3e, 0x4d, 0x9c, 0x06, 0x2a, 0x53, 0x2e, 0x01, 0x59, 0x28, 0x52, 0x8c, 0x7f, 0x58, 0x12, 0xdf, 0xeb, 0xec, 0xac, }; static const unsigned char hmac_sha512_1306_msg[] = { 0x40, 0x17, 0xe0, 0xff, 0xca, 0xac, 0x4c, 0x48, 0x5c, 0xe7, 0xec, }; static const unsigned char hmac_sha512_1306_tag[] = { 0x66, 0xb4, 0x19, 0x1b, 0x37, 0xa6, 0xf7, 0x88, 0x09, 0xc4, 0x34, 0x73, 0x6e, 0xd6, 0xac, 0x22, 0x73, 0xc0, 0x4a, 0x11, 0x21, 0x96, 0x36, 0xe9, 0x26, 0x71, 0xea, 0x05, 0xbf, 0x6d, 0xc2, 0x99, }; static const wycheproof_hmac_test hmac_sha512_1306 = { .name = "hmac_sha512_1306", .hash = SHA512, .key = hmac_sha512_1306_key, .keylen = 64, .msg = hmac_sha512_1306_msg, .msglen = 11, .tag = hmac_sha512_1306_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 93 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1307 for HMAC, tcId is 94 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1307_key[] = { 0x93, 0x7b, 0x97, 0x11, 0xd6, 0x70, 0xda, 0xa2, 0x35, 0x99, 0x20, 0xe4, 0x7d, 0xd6, 0xd0, 0xfb, 0x75, 0x27, 0x51, 0x05, 0xb3, 0xef, 0x07, 0xbb, 0x4a, 0x31, 0xd3, 0xc4, 0xb9, 0x9b, 0xaa, 0x8f, 0xf7, 0x9e, 0xe4, 0xb4, 0xa1, 0xb4, 0xa5, 0xb2, 0x50, 0xd0, 0xfd, 0x7b, 0x47, 0x21, 0xe0, 0x4a, 0x7b, 0x06, 0x03, 0x5b, 0x1d, 0x0c, 0x9d, 0x73, 0x95, 0x97, 0x70, 0x78, 0x39, 0x01, 0x8b, 0xce, }; static const unsigned char hmac_sha512_1307_msg[] = { 0x69, 0x91, 0x81, 0x0e, 0x97, 0x88, 0xaf, 0x7a, 0xab, 0xff, 0x8e, 0xb4, }; static const unsigned char hmac_sha512_1307_tag[] = { 0x23, 0x52, 0x2d, 0xe8, 0x0f, 0xf6, 0xa3, 0xa6, 0xd8, 0xfc, 0x1b, 0xf9, 0xb6, 0x32, 0xe1, 0x60, 0x0d, 0xf5, 0x3c, 0x59, 0xf3, 0x85, 0x89, 0xa6, 0xf2, 0xae, 0x9b, 0x95, 0xd9, 0x40, 0xa3, 0x40, }; static const wycheproof_hmac_test hmac_sha512_1307 = { .name = "hmac_sha512_1307", .hash = SHA512, .key = hmac_sha512_1307_key, .keylen = 64, .msg = hmac_sha512_1307_msg, .msglen = 12, .tag = hmac_sha512_1307_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 94 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1308 for HMAC, tcId is 95 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1308_key[] = { 0xad, 0x37, 0x63, 0x0a, 0x28, 0x0b, 0x1a, 0x75, 0xeb, 0xed, 0x19, 0x84, 0x21, 0x71, 0x50, 0xa4, 0x00, 0xa5, 0x5d, 0xca, 0x23, 0x62, 0xa8, 0xea, 0xf3, 0xc9, 0x07, 0x85, 0x8d, 0x0b, 0x45, 0xdb, 0x3e, 0x20, 0x8c, 0x31, 0x6d, 0x03, 0x38, 0x54, 0xeb, 0x42, 0x84, 0xf7, 0x11, 0x17, 0xd3, 0x38, 0x76, 0xe0, 0xe2, 0x03, 0xca, 0x92, 0x2d, 0x26, 0xf9, 0xb7, 0x6d, 0x94, 0xca, 0xb0, 0xd4, 0xf3, }; static const unsigned char hmac_sha512_1308_msg[] = { 0x7c, 0x6f, 0x2f, 0xd8, 0x3e, 0x56, 0x91, 0x82, 0x7b, 0xe3, 0x8e, 0x49, 0xa0, }; static const unsigned char hmac_sha512_1308_tag[] = { 0xb6, 0x09, 0xc0, 0xb5, 0xd3, 0x59, 0x06, 0x1a, 0xc0, 0x66, 0xbd, 0x3b, 0xcc, 0xab, 0xc9, 0x84, 0x93, 0xfd, 0x33, 0xba, 0xc8, 0xfe, 0x0e, 0x3f, 0x2e, 0x2b, 0x47, 0x58, 0xcb, 0x65, 0x78, 0xb0, }; static const wycheproof_hmac_test hmac_sha512_1308 = { .name = "hmac_sha512_1308", .hash = SHA512, .key = hmac_sha512_1308_key, .keylen = 64, .msg = hmac_sha512_1308_msg, .msglen = 13, .tag = hmac_sha512_1308_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 95 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1309 for HMAC, tcId is 96 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1309_key[] = { 0x52, 0x6a, 0xa2, 0x64, 0x5a, 0xb7, 0x12, 0x29, 0xe2, 0xc6, 0x0f, 0x68, 0xbd, 0x5b, 0xbc, 0xf0, 0xce, 0xa0, 0x97, 0x8a, 0x0a, 0x9c, 0x60, 0xcf, 0x69, 0x5e, 0x81, 0xfe, 0xca, 0xed, 0xec, 0xfa, 0x03, 0x62, 0xc2, 0x17, 0x47, 0xea, 0xa9, 0x95, 0x97, 0x52, 0x08, 0xca, 0x35, 0xcf, 0xa6, 0xbc, 0x2b, 0x95, 0xd1, 0xc2, 0xaf, 0xce, 0xe1, 0x12, 0x75, 0xf4, 0x3a, 0xdd, 0x6f, 0x02, 0x6d, 0x6c, }; static const unsigned char hmac_sha512_1309_msg[] = { 0x68, 0x1b, 0xca, 0x55, 0x0f, 0xe3, 0x01, 0xf2, 0xdc, 0xc1, 0xe3, 0x8b, 0x53, 0xc1, }; static const unsigned char hmac_sha512_1309_tag[] = { 0x1f, 0x1f, 0x50, 0xda, 0xcb, 0x3d, 0xc3, 0x5b, 0x90, 0x42, 0x9c, 0x0f, 0x9b, 0x31, 0xed, 0xd2, 0x39, 0xa6, 0xaf, 0x4c, 0x09, 0xd5, 0x10, 0x95, 0xcb, 0x39, 0xff, 0x11, 0xc7, 0xc2, 0x65, 0x98, }; static const wycheproof_hmac_test hmac_sha512_1309 = { .name = "hmac_sha512_1309", .hash = SHA512, .key = hmac_sha512_1309_key, .keylen = 64, .msg = hmac_sha512_1309_msg, .msglen = 14, .tag = hmac_sha512_1309_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 96 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1310 for HMAC, tcId is 97 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1310_key[] = { 0x60, 0x26, 0xa9, 0x04, 0x7a, 0x07, 0xcc, 0xf1, 0x97, 0xfd, 0xe0, 0x9c, 0x8b, 0x9f, 0x15, 0xf3, 0x4b, 0xc5, 0x24, 0x72, 0xb7, 0xd1, 0xea, 0x46, 0x73, 0xb4, 0x91, 0x4a, 0x0e, 0x1c, 0x3a, 0xa4, 0xcf, 0xe8, 0xd6, 0xef, 0x12, 0xd4, 0xd4, 0x01, 0x9f, 0x5f, 0xf3, 0xac, 0x0a, 0xdc, 0xad, 0x73, 0x58, 0x49, 0x08, 0x74, 0x15, 0x5d, 0xaf, 0x41, 0xda, 0x2f, 0x74, 0xac, 0xa1, 0xcd, 0x89, 0x4a, }; static const unsigned char hmac_sha512_1310_msg[] = { 0xce, 0x1d, 0x86, 0x9c, 0x53, 0x04, 0x1c, 0x5f, 0x6a, 0xcd, 0xda, 0x7a, 0x05, 0xaf, 0x15, }; static const unsigned char hmac_sha512_1310_tag[] = { 0xbd, 0x2d, 0x67, 0x8c, 0xea, 0xdd, 0x71, 0x68, 0x0f, 0x99, 0x87, 0xc8, 0x8d, 0x24, 0xc4, 0x93, 0x35, 0xcb, 0x98, 0x5a, 0xf0, 0xbc, 0xf8, 0xe2, 0x3f, 0xe8, 0x10, 0xe8, 0x3a, 0x92, 0x0f, 0x13, }; static const wycheproof_hmac_test hmac_sha512_1310 = { .name = "hmac_sha512_1310", .hash = SHA512, .key = hmac_sha512_1310_key, .keylen = 64, .msg = hmac_sha512_1310_msg, .msglen = 15, .tag = hmac_sha512_1310_tag, .taglen = 32, .result = 1, .comment = "short message, tcId is 97 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1311 for HMAC, tcId is 98 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1311_key[] = { 0xa0, 0x3d, 0x2c, 0x54, 0x3c, 0x30, 0x29, 0x49, 0xc5, 0x1b, 0x66, 0x2f, 0x43, 0x11, 0x4c, 0x13, 0x05, 0xa8, 0xf6, 0x96, 0x1a, 0xe4, 0x83, 0x42, 0x80, 0x3d, 0x36, 0x90, 0xdc, 0x18, 0x25, 0x5f, 0xab, 0x92, 0x49, 0x65, 0x53, 0x6a, 0x79, 0xbc, 0x38, 0x56, 0x4c, 0x7c, 0x97, 0xcb, 0x8c, 0xc0, 0x20, 0x97, 0x86, 0xe9, 0xf7, 0x63, 0x75, 0xbf, 0x18, 0x15, 0x29, 0xcf, 0x7f, 0x93, 0xd9, 0x54, }; static const unsigned char hmac_sha512_1311_msg[] = { 0x69, 0x76, 0x17, 0xae, 0x31, 0xf1, 0x9b, 0x8a, 0x6a, 0xd4, 0xb8, 0x48, 0x9b, 0xfc, 0x3d, 0xb1, }; static const unsigned char hmac_sha512_1311_tag[] = { 0x57, 0x7d, 0x62, 0xd7, 0x27, 0x9b, 0x39, 0xa0, 0xd7, 0x1e, 0x2f, 0x80, 0x83, 0x34, 0x25, 0xed, 0x43, 0xe4, 0xa1, 0x62, 0x33, 0xee, 0xb5, 0xd2, 0x51, 0xf7, 0x66, 0xdb, 0x0b, 0xf7, 0xa5, 0x8c, }; static const wycheproof_hmac_test hmac_sha512_1311 = { .name = "hmac_sha512_1311", .hash = SHA512, .key = hmac_sha512_1311_key, .keylen = 64, .msg = hmac_sha512_1311_msg, .msglen = 16, .tag = hmac_sha512_1311_tag, .taglen = 32, .result = 1, .comment = ", tcId is 98 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1312 for HMAC, tcId is 99 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1312_key[] = { 0x25, 0x84, 0x36, 0x65, 0xd3, 0x9c, 0x3a, 0xe9, 0xa7, 0xb3, 0xe4, 0x42, 0x7e, 0x2b, 0xf7, 0x78, 0x52, 0x81, 0xfd, 0x25, 0x94, 0xbd, 0xde, 0x67, 0x86, 0x0c, 0xa9, 0xb8, 0xfa, 0x11, 0x64, 0x64, 0x69, 0xd1, 0x64, 0x5a, 0xe8, 0xca, 0x38, 0x25, 0xb8, 0xc5, 0x51, 0xf9, 0xea, 0xc3, 0xda, 0x06, 0x60, 0xd8, 0xc2, 0xe2, 0xe3, 0xbd, 0x23, 0xd3, 0x43, 0x95, 0xc6, 0x77, 0x5d, 0xcd, 0xfd, 0x2e, }; static const unsigned char hmac_sha512_1312_msg[] = { 0x74, 0x08, 0x2c, 0xc5, 0xd1, 0x4d, 0xb1, 0x96, 0x74, 0x42, 0xd6, 0x6a, 0xac, 0x60, 0x92, 0xbd, 0x23, }; static const unsigned char hmac_sha512_1312_tag[] = { 0xb3, 0x73, 0xac, 0x5f, 0xb1, 0x98, 0x2b, 0x9d, 0x47, 0xd2, 0x88, 0x44, 0xe9, 0x69, 0xd5, 0x16, 0x80, 0xdc, 0x81, 0xd2, 0x1d, 0x55, 0x6c, 0x26, 0x71, 0xc2, 0x9c, 0x11, 0xdf, 0xa6, 0xe3, 0x40, }; static const wycheproof_hmac_test hmac_sha512_1312 = { .name = "hmac_sha512_1312", .hash = SHA512, .key = hmac_sha512_1312_key, .keylen = 64, .msg = hmac_sha512_1312_msg, .msglen = 17, .tag = hmac_sha512_1312_tag, .taglen = 32, .result = 1, .comment = ", tcId is 99 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1313 for HMAC, tcId is 100 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1313_key[] = { 0x48, 0x31, 0xab, 0x49, 0x62, 0xa2, 0xd2, 0x43, 0x60, 0x91, 0xcb, 0xbf, 0x38, 0x8d, 0x2b, 0xa0, 0x42, 0xb4, 0x72, 0xa2, 0x62, 0xed, 0x83, 0x73, 0xc8, 0x5d, 0x04, 0x7c, 0x70, 0x2a, 0xdf, 0x73, 0xa8, 0x7e, 0xb0, 0x97, 0xe7, 0x2d, 0x91, 0xd0, 0x89, 0xb7, 0xd1, 0x50, 0x4a, 0x7f, 0x7d, 0x8a, 0xbb, 0x3b, 0xc2, 0xc4, 0x4c, 0x13, 0x40, 0xd6, 0xc1, 0x6c, 0x84, 0xea, 0x92, 0x69, 0xe6, 0x4b, }; static const unsigned char hmac_sha512_1313_msg[] = { 0x28, 0x03, 0xc2, 0xf4, 0xe5, 0xb4, 0xbf, 0xcc, 0xd2, 0xb4, 0x07, 0x46, 0x9a, 0x6c, 0xb5, 0xef, 0x21, 0xfd, 0x14, 0xa6, 0x82, 0x63, 0x63, 0x97, }; static const unsigned char hmac_sha512_1313_tag[] = { 0x64, 0x1f, 0x29, 0x92, 0x5c, 0x06, 0xaa, 0x01, 0x08, 0x6c, 0x8b, 0xce, 0x89, 0xd9, 0x9e, 0x14, 0x56, 0xdc, 0x2a, 0xd4, 0xb1, 0xd3, 0x36, 0x44, 0x42, 0x18, 0x7c, 0xe4, 0x39, 0x28, 0x38, 0xee, }; static const wycheproof_hmac_test hmac_sha512_1313 = { .name = "hmac_sha512_1313", .hash = SHA512, .key = hmac_sha512_1313_key, .keylen = 64, .msg = hmac_sha512_1313_msg, .msglen = 24, .tag = hmac_sha512_1313_tag, .taglen = 32, .result = 1, .comment = ", tcId is 100 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1314 for HMAC, tcId is 101 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1314_key[] = { 0x44, 0x9b, 0xb5, 0x7d, 0x04, 0x65, 0x51, 0xe1, 0x81, 0x9b, 0x3c, 0x99, 0x41, 0x22, 0xc3, 0x60, 0x59, 0x54, 0x31, 0x7d, 0x0d, 0x76, 0x21, 0x22, 0x84, 0xa3, 0x32, 0x8c, 0x22, 0x67, 0x32, 0xcb, 0xf4, 0xec, 0xb4, 0x42, 0xa5, 0x82, 0xc8, 0x42, 0x38, 0x88, 0xaa, 0xed, 0x94, 0x6e, 0x5e, 0xec, 0x2b, 0xe6, 0x6e, 0x12, 0x7f, 0x1e, 0x2e, 0x29, 0xb6, 0x6e, 0x68, 0xb9, 0xb4, 0xbe, 0xc4, 0xd1, }; static const unsigned char hmac_sha512_1314_msg[] = { 0x79, 0x00, 0x4e, 0x64, 0x43, 0x89, 0xa1, 0x1b, 0x70, 0x9b, 0xc0, 0xa2, 0x3c, 0xb8, 0x59, 0x2f, 0x9f, 0xc7, 0x96, 0x0b, 0xfa, 0x46, 0x13, 0x2c, 0xc1, 0xff, 0xb9, 0x74, 0x7d, 0xf3, 0x7d, 0xec, }; static const unsigned char hmac_sha512_1314_tag[] = { 0xc0, 0x54, 0x66, 0x7d, 0x99, 0x2c, 0xc1, 0xe8, 0x4f, 0xa5, 0xb1, 0x3f, 0x64, 0x02, 0x12, 0x5b, 0x4b, 0xb6, 0xfd, 0x29, 0x00, 0xdb, 0xcd, 0xaf, 0x8b, 0x86, 0x44, 0xc8, 0x2e, 0xda, 0xdc, 0x2b, }; static const wycheproof_hmac_test hmac_sha512_1314 = { .name = "hmac_sha512_1314", .hash = SHA512, .key = hmac_sha512_1314_key, .keylen = 64, .msg = hmac_sha512_1314_msg, .msglen = 32, .tag = hmac_sha512_1314_tag, .taglen = 32, .result = 1, .comment = ", tcId is 101 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1315 for HMAC, tcId is 102 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1315_key[] = { 0xff, 0x97, 0xb7, 0x70, 0x20, 0x86, 0x1a, 0x0c, 0xe0, 0x0e, 0xff, 0x8d, 0xe9, 0xe7, 0x01, 0xae, 0xa8, 0xc6, 0xde, 0x0f, 0xff, 0xd9, 0xb4, 0xc1, 0x34, 0x2a, 0x41, 0x6d, 0x35, 0x7f, 0xce, 0x35, 0xa7, 0x01, 0x6c, 0x64, 0xcc, 0xd3, 0x8e, 0x2b, 0xdf, 0x67, 0x48, 0x02, 0x28, 0x1c, 0x22, 0x34, 0x15, 0x3d, 0xd8, 0x3a, 0xac, 0xb9, 0x48, 0x96, 0x6d, 0xc8, 0x7e, 0xa4, 0x71, 0x8f, 0xff, 0x75, }; static const unsigned char hmac_sha512_1315_msg[] = { 0xd7, 0xe2, 0xd2, 0x43, 0x7b, 0x70, 0x67, 0xa3, 0x0f, 0x04, 0x52, 0x90, 0x41, 0x96, 0x0e, 0x04, 0x1e, 0x28, 0x17, 0x37, 0xd1, 0xe0, 0xda, 0xa8, 0xcd, 0x50, 0xcc, 0x0b, 0x26, 0x47, 0x16, 0xe1, 0x17, 0xaa, 0x2f, 0xe9, 0xa7, 0xe3, 0x9c, 0x2f, 0x17, 0x8c, 0x60, 0x7f, 0xaa, 0x50, 0xc2, }; static const unsigned char hmac_sha512_1315_tag[] = { 0x06, 0x2e, 0x9c, 0x46, 0x09, 0xa3, 0xb1, 0xd5, 0xdf, 0x27, 0x7a, 0x33, 0xac, 0x1c, 0x75, 0x01, 0xdf, 0x81, 0xec, 0x1d, 0xdf, 0x46, 0x0b, 0x08, 0x50, 0xa2, 0xaa, 0x33, 0x2d, 0x07, 0xbf, 0xcb, }; static const wycheproof_hmac_test hmac_sha512_1315 = { .name = "hmac_sha512_1315", .hash = SHA512, .key = hmac_sha512_1315_key, .keylen = 64, .msg = hmac_sha512_1315_msg, .msglen = 47, .tag = hmac_sha512_1315_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 102 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1316 for HMAC, tcId is 103 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1316_key[] = { 0xf4, 0xda, 0xf3, 0x70, 0xc4, 0xf4, 0x37, 0xd8, 0xa8, 0x53, 0x91, 0xec, 0x45, 0x5e, 0x34, 0x54, 0x0b, 0xe8, 0xd3, 0x2d, 0xf8, 0xdf, 0xac, 0x05, 0xb1, 0x66, 0xae, 0x72, 0xec, 0x1c, 0xc6, 0x08, 0xf8, 0xc1, 0x77, 0xb3, 0x0d, 0xde, 0x8b, 0xf0, 0x7c, 0x9d, 0x43, 0x47, 0x32, 0xc2, 0x6a, 0x6e, 0x53, 0x0b, 0x18, 0x2c, 0x7a, 0xb2, 0x10, 0x93, 0xeb, 0x79, 0xd0, 0xbb, 0x5b, 0xe8, 0x5e, 0x53, }; static const unsigned char hmac_sha512_1316_msg[] = { 0xf6, 0x04, 0x18, 0xf6, 0xc5, 0x4a, 0x25, 0xfa, 0xbf, 0x51, 0x82, 0x73, 0x08, 0x86, 0x19, 0xc0, 0x74, 0x1c, 0x1c, 0x71, 0x87, 0xde, 0x93, 0xa0, 0xcf, 0x6a, 0x03, 0xf4, 0x56, 0x5f, 0x17, 0x65, 0xde, 0x65, 0x67, 0x54, 0x54, 0x1b, 0x86, 0x01, 0x37, 0xf3, 0xf8, 0x45, 0x5d, 0xe7, 0xc4, 0x03, }; static const unsigned char hmac_sha512_1316_tag[] = { 0x4d, 0x4a, 0x56, 0x8d, 0xd2, 0x6d, 0x27, 0x26, 0x7d, 0x07, 0x72, 0x54, 0x0e, 0xbb, 0x0b, 0x94, 0xd4, 0x4f, 0xbb, 0xb1, 0x5a, 0x1b, 0xb7, 0x49, 0xa5, 0x70, 0xed, 0x63, 0x13, 0xee, 0x69, 0x5b, }; static const wycheproof_hmac_test hmac_sha512_1316 = { .name = "hmac_sha512_1316", .hash = SHA512, .key = hmac_sha512_1316_key, .keylen = 64, .msg = hmac_sha512_1316_msg, .msglen = 48, .tag = hmac_sha512_1316_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 103 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1317 for HMAC, tcId is 104 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1317_key[] = { 0x3b, 0xe9, 0x5e, 0x87, 0x94, 0x21, 0xed, 0x78, 0x56, 0x26, 0x9e, 0xef, 0x39, 0xa2, 0x07, 0x0f, 0xae, 0x40, 0x6c, 0xec, 0x5e, 0x30, 0xb5, 0x0d, 0x92, 0x79, 0x2d, 0xf5, 0xa3, 0x7d, 0xe9, 0x85, 0x95, 0x68, 0x4e, 0xaa, 0x92, 0x05, 0x58, 0x7c, 0xa6, 0x07, 0xee, 0xac, 0x8f, 0x96, 0x59, 0x2f, 0x45, 0x8f, 0x63, 0x43, 0x4b, 0x7d, 0xc8, 0x25, 0x96, 0xd3, 0xe4, 0xa1, 0xa1, 0x6c, 0x3d, 0x59, }; static const unsigned char hmac_sha512_1317_msg[] = { 0xc6, 0x4f, 0x7c, 0x97, 0x0a, 0x44, 0x1c, 0x6c, 0x50, 0x38, 0x38, 0xa4, 0x91, 0x30, 0x8c, 0x78, 0x30, 0x99, 0xea, 0xc5, 0x2b, 0xd3, 0x5a, 0x21, 0x79, 0x78, 0xa6, 0x4d, 0xce, 0xc8, 0x4d, 0x34, 0x18, 0x6a, 0xb3, 0xb7, 0x4f, 0x20, 0x28, 0x5d, 0x6f, 0xea, 0x21, 0x65, 0xea, 0xb4, 0xda, 0x3d, 0x2c, }; static const unsigned char hmac_sha512_1317_tag[] = { 0x4e, 0xa9, 0xe2, 0xf0, 0x88, 0x70, 0xc3, 0x0c, 0xb6, 0x8d, 0x41, 0x98, 0x16, 0xde, 0xb6, 0x81, 0xcf, 0xd6, 0xba, 0x62, 0x90, 0x6e, 0x6b, 0x4a, 0x80, 0x88, 0xef, 0xcd, 0x9f, 0xa4, 0xed, 0xf9, }; static const wycheproof_hmac_test hmac_sha512_1317 = { .name = "hmac_sha512_1317", .hash = SHA512, .key = hmac_sha512_1317_key, .keylen = 64, .msg = hmac_sha512_1317_msg, .msglen = 49, .tag = hmac_sha512_1317_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 104 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1318 for HMAC, tcId is 105 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1318_key[] = { 0xb5, 0xeb, 0x53, 0x58, 0x6b, 0x94, 0x85, 0x87, 0xdb, 0x3d, 0xd4, 0x6c, 0x43, 0xad, 0x65, 0x49, 0x8a, 0x50, 0x79, 0x15, 0x75, 0x62, 0xe4, 0x07, 0x4c, 0x9c, 0x20, 0xd0, 0x97, 0xd0, 0xc9, 0x7f, 0x19, 0xdb, 0x46, 0x61, 0xfb, 0x2d, 0xd1, 0x1b, 0x87, 0xa5, 0xcc, 0xba, 0x2c, 0x34, 0x56, 0x42, 0x61, 0x8f, 0x56, 0x1d, 0x00, 0xbf, 0x87, 0xdf, 0xfc, 0x66, 0x76, 0x2e, 0x45, 0xe0, 0x15, 0x6f, }; static const unsigned char hmac_sha512_1318_msg[] = { 0x9e, 0x8e, 0xbf, 0x96, 0x42, 0x99, 0x55, 0xd6, 0x0b, 0x92, 0x5a, 0x41, 0x11, 0x74, 0x5e, 0xc7, 0x02, 0x8d, 0xe2, 0x4e, 0x69, 0x4a, 0x6d, 0x2e, 0xee, 0x1d, 0xbd, 0x5e, 0x82, 0x0a, 0xb9, 0xf0, 0x0b, 0xea, 0xfd, 0xe0, 0x9f, 0x95, 0x09, 0x59, 0x33, 0xa0, 0x2f, 0x25, 0x12, 0x97, 0x28, 0x2b, 0x0c, 0xf6, 0x7c, 0x51, 0x83, 0x97, 0x65, 0x58, 0x41, 0xf2, 0x30, 0xe1, 0xd9, 0xae, 0x5b, 0xa9, 0x31, 0x50, 0xd4, 0x37, 0x5d, 0xc7, 0xc0, 0x73, 0x8b, 0x99, 0x85, 0x0b, 0x07, 0xd5, 0xa4, 0x42, 0x99, 0x4e, 0x68, 0xdc, 0x81, 0x3d, 0x55, 0xed, 0xef, 0xa6, 0xcd, 0x06, 0x3c, 0xcb, 0x20, 0x27, 0x11, 0xd9, 0x7b, 0xa6, 0x74, 0xef, 0xa0, 0x2d, 0xdb, 0xdc, 0x69, 0x23, 0x41, 0xe7, 0x7c, 0xfa, }; static const unsigned char hmac_sha512_1318_tag[] = { 0x6a, 0x5b, 0x62, 0x72, 0xdf, 0x7f, 0xb6, 0x31, 0x52, 0x93, 0xce, 0x22, 0x48, 0x35, 0x11, 0xd7, 0x00, 0xa8, 0x3c, 0x34, 0xdb, 0x6b, 0x0e, 0xe4, 0x39, 0x8b, 0x4a, 0x77, 0x02, 0x41, 0xfc, 0xf2, }; static const wycheproof_hmac_test hmac_sha512_1318 = { .name = "hmac_sha512_1318", .hash = SHA512, .key = hmac_sha512_1318_key, .keylen = 64, .msg = hmac_sha512_1318_msg, .msglen = 112, .tag = hmac_sha512_1318_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 105 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1319 for HMAC, tcId is 106 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1319_key[] = { 0xfb, 0xc6, 0x78, 0x23, 0x5d, 0x59, 0x69, 0x80, 0x26, 0x87, 0x30, 0xa7, 0xaa, 0x8a, 0x3c, 0x25, 0x09, 0x5f, 0x1d, 0xbc, 0xf7, 0xf8, 0x30, 0x99, 0x07, 0x16, 0xa5, 0x10, 0xc4, 0x4e, 0x62, 0xb1, 0xae, 0x8c, 0xe0, 0x95, 0xc6, 0x5e, 0x18, 0x52, 0xbd, 0x8a, 0x09, 0xf2, 0x5a, 0xb9, 0x34, 0x15, 0xae, 0x73, 0x6f, 0x22, 0xb2, 0xc6, 0x8e, 0xcd, 0xf3, 0xc0, 0xf7, 0x1e, 0x15, 0xa0, 0x57, 0xdc, }; static const unsigned char hmac_sha512_1319_msg[] = { 0xef, 0x39, 0x57, 0x38, 0xf2, 0xb3, 0xbd, 0x7a, 0x06, 0x49, 0xee, 0xa7, 0x5e, 0x73, 0x4e, 0x5c, 0x79, 0xba, 0xf2, 0x13, 0x58, 0xc7, 0xae, 0x96, 0xc6, 0x3a, 0x58, 0xe2, 0x60, 0x26, 0x6c, 0x7b, 0xfa, 0x86, 0x96, 0x64, 0xc5, 0xd1, 0x0e, 0x87, 0xc2, 0x6d, 0x0f, 0x5e, 0xdb, 0x3b, 0x5f, 0x73, 0x90, 0x0c, 0x1d, 0x9a, 0x96, 0xa5, 0xa2, 0xc2, 0x91, 0x25, 0x06, 0xc1, 0x9d, 0xff, 0x04, 0xe9, 0x00, 0xb8, 0xd5, 0xd6, 0x3e, 0x1b, 0xb6, 0x06, 0xfe, 0x3d, 0x5a, 0x22, 0x9b, 0x64, 0x2b, 0x1a, 0xc5, 0x9e, 0x08, 0xa4, 0x68, 0x7a, 0x7a, 0xad, 0xe3, 0xde, 0x16, 0xd1, 0x83, 0x13, 0x1d, 0xdd, 0x02, 0xda, 0x98, 0x8f, 0xf8, 0x26, 0xe8, 0x8b, 0x74, 0xba, 0x0c, 0x5c, 0x41, 0xcf, 0xcd, 0x85, 0x70, 0xcc, 0xa5, 0x9f, 0xb3, 0x30, 0x4d, 0x58, 0x8f, 0x7f, 0x7e, 0x63, 0xda, 0xd4, 0x7a, }; static const unsigned char hmac_sha512_1319_tag[] = { 0x84, 0xdf, 0x33, 0x38, 0xf5, 0x02, 0xe6, 0x58, 0x66, 0xcf, 0x20, 0x77, 0xf6, 0x77, 0x63, 0x41, 0xa8, 0x9d, 0xd2, 0x23, 0x49, 0x61, 0xb4, 0x74, 0xd5, 0xb7, 0x43, 0x8d, 0x18, 0x36, 0xfd, 0x6b, }; static const wycheproof_hmac_test hmac_sha512_1319 = { .name = "hmac_sha512_1319", .hash = SHA512, .key = hmac_sha512_1319_key, .keylen = 64, .msg = hmac_sha512_1319_msg, .msglen = 127, .tag = hmac_sha512_1319_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 106 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1320 for HMAC, tcId is 107 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1320_key[] = { 0xd8, 0x43, 0x7b, 0x09, 0x3e, 0x17, 0x0a, 0xfc, 0x30, 0xfb, 0x68, 0xd8, 0x73, 0xdb, 0x6d, 0xd6, 0x7e, 0xe0, 0x37, 0x2b, 0x6c, 0x5f, 0xeb, 0x12, 0x4d, 0x54, 0x8a, 0xbb, 0xd9, 0x33, 0x04, 0xa0, 0x82, 0x23, 0x5a, 0x17, 0x0a, 0x9d, 0x32, 0x62, 0x68, 0xd0, 0xcf, 0xc3, 0x42, 0x64, 0xd8, 0xeb, 0xcf, 0xcb, 0xcc, 0x0d, 0xc0, 0xea, 0x77, 0x67, 0xb6, 0x50, 0xdb, 0xcf, 0xc7, 0x84, 0x8f, 0x91, }; static const unsigned char hmac_sha512_1320_msg[] = { 0x0f, 0xb9, 0x1b, 0xb0, 0x43, 0xcf, 0x3d, 0x49, 0x34, 0x14, 0x82, 0xea, 0xcb, 0xab, 0x92, 0xda, 0x92, 0x11, 0x7b, 0xb6, 0xec, 0x03, 0xb5, 0x18, 0xa9, 0x3c, 0x9d, 0x59, 0xe5, 0x47, 0x02, 0xc6, 0xa2, 0x1a, 0xde, 0x4f, 0x25, 0x58, 0x70, 0xcb, 0x52, 0xda, 0x4a, 0x24, 0xb3, 0x68, 0x56, 0xb0, 0xcb, 0xf8, 0xb1, 0x22, 0xd2, 0xfd, 0x5b, 0x02, 0x19, 0xae, 0xac, 0xb6, 0xe2, 0x92, 0xc9, 0x58, 0x63, 0x92, 0x17, 0x89, 0x09, 0x2d, 0x5d, 0x65, 0xd5, 0xa9, 0x38, 0x92, 0x31, 0x67, 0x0e, 0x38, 0xbe, 0x31, 0xd8, 0xb7, 0x66, 0x30, 0x65, 0x0c, 0x77, 0xed, 0xc2, 0x37, 0x73, 0xd5, 0xec, 0x91, 0x89, 0x91, 0x55, 0x60, 0xef, 0x6f, 0x45, 0xa4, 0x27, 0x5f, 0x85, 0x95, 0x7d, 0x87, 0x62, 0x91, 0x6d, 0x81, 0x47, 0xef, 0x43, 0xea, 0x6f, 0x43, 0x8d, 0x06, 0x62, 0x27, 0x35, 0x4d, 0xf2, 0x6c, }; static const unsigned char hmac_sha512_1320_tag[] = { 0x4b, 0x9b, 0x51, 0xf2, 0xc7, 0xd7, 0x25, 0x26, 0x9a, 0x5b, 0xd7, 0x35, 0xd4, 0x25, 0x1c, 0xbf, 0xda, 0x71, 0xea, 0x5c, 0xf5, 0xc0, 0x46, 0x37, 0x9b, 0x43, 0x9d, 0xdf, 0xf7, 0x66, 0xd2, 0x1a, }; static const wycheproof_hmac_test hmac_sha512_1320 = { .name = "hmac_sha512_1320", .hash = SHA512, .key = hmac_sha512_1320_key, .keylen = 64, .msg = hmac_sha512_1320_msg, .msglen = 128, .tag = hmac_sha512_1320_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 107 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1321 for HMAC, tcId is 108 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1321_key[] = { 0xd2, 0x92, 0x25, 0xe3, 0x04, 0x2b, 0x43, 0xd4, 0xeb, 0x7a, 0x93, 0x99, 0xf2, 0x24, 0x42, 0x4b, 0x5b, 0x4d, 0xd9, 0x90, 0x31, 0xc8, 0xab, 0xf6, 0x09, 0xd3, 0xa6, 0xe3, 0x17, 0x58, 0x97, 0x13, 0x4c, 0xc7, 0xba, 0x8a, 0x6b, 0xe2, 0x5d, 0x43, 0x6d, 0x41, 0xa7, 0x57, 0xa2, 0xda, 0xa4, 0xe1, 0xb0, 0x3f, 0x7c, 0x30, 0x53, 0xee, 0x8c, 0xad, 0xa1, 0x95, 0x31, 0xd4, 0x8d, 0xab, 0x93, 0xe0, }; static const unsigned char hmac_sha512_1321_msg[] = { 0x1f, 0xda, 0xd8, 0xcd, 0x37, 0xe1, 0x15, 0xef, 0x81, 0x31, 0xd4, 0x61, 0x9b, 0x5d, 0x61, 0xa9, 0x82, 0x7a, 0x11, 0xb9, 0xc2, 0x5c, 0x5b, 0x82, 0x20, 0xb0, 0x02, 0xd5, 0xb7, 0xf6, 0xe2, 0xbc, 0x30, 0xa7, 0xe2, 0xf3, 0xd1, 0x03, 0xdb, 0xca, 0xf8, 0x49, 0xa2, 0x55, 0xc2, 0x0e, 0xc5, 0xd1, 0xb4, 0x0a, 0x62, 0x3e, 0x39, 0x8d, 0x76, 0xc5, 0xb7, 0xf0, 0x7f, 0xe3, 0x05, 0x18, 0x1c, 0xd5, 0xbe, 0xe2, 0x9d, 0xe3, 0x36, 0x0f, 0xed, 0x55, 0xf6, 0x90, 0x63, 0xe6, 0xa8, 0xfd, 0x2e, 0xf3, 0x12, 0x91, 0xe4, 0xd7, 0xc3, 0x90, 0x84, 0x49, 0x46, 0x6b, 0x4f, 0xf1, 0x16, 0x69, 0x59, 0xff, 0x1f, 0x2e, 0x86, 0xeb, 0x48, 0xa7, 0xed, 0x11, 0xbd, 0xce, 0xc2, 0xfc, 0x2d, 0xfb, 0x66, 0x84, 0xb3, 0x6b, 0x8d, 0x0b, 0x68, 0xe0, 0xf1, 0xb2, 0x3e, 0xf1, 0x1b, 0xf5, 0x90, 0x7d, 0x4a, 0x2b, 0x16, 0x2c, 0xec, 0x26, 0xf3, 0x1b, 0x6d, 0x5d, 0x98, 0x92, 0xa2, 0x7b, 0x3f, 0xad, 0x7a, 0x55, 0x49, 0x85, 0x8d, 0xad, 0x53, 0x0b, 0xae, 0x19, 0x3d, 0x9b, 0x60, 0xd4, 0x2d, 0x7a, 0xd2, 0xa6, 0x64, 0x76, 0xa3, 0xba, 0x4b, 0xf7, 0xa2, 0x7f, 0xf9, 0xd0, 0xf8, 0x85, 0xa5, 0x40, 0xbf, 0x18, 0x1c, 0xaa, 0xd7, 0x1a, 0x23, 0x5e, 0xb3, 0x48, 0xa2, 0x3d, 0x05, 0x3b, 0xa2, 0xdb, 0x7a, 0xed, 0x8d, 0x7d, 0x01, 0xd9, 0x6d, 0xc9, 0xf7, 0x80, 0xe2, 0xe4, 0x26, 0xc7, 0x2b, 0xb6, 0x3f, 0xcb, 0x3f, 0xff, 0x44, 0xc1, 0x4b, 0xb7, 0xb0, 0xf8, 0xaf, 0x35, 0x52, 0xd6, 0x7e, 0xe6, 0x76, 0x10, 0x92, 0xc7, 0x57, 0x62, 0x7d, 0x19, 0xc0, 0x80, 0x49, 0x9c, 0x24, 0x7d, 0x13, 0xb4, 0x31, 0x69, 0x93, 0x97, 0x15, 0x9b, 0x1b, 0x71, 0xc6, 0x27, 0x45, 0x84, 0x95, 0x9d, 0x5c, 0x30, 0xf0, }; static const unsigned char hmac_sha512_1321_tag[] = { 0xf9, 0xad, 0x00, 0x42, 0x0c, 0xe9, 0x09, 0xcd, 0x05, 0x0f, 0xdb, 0x84, 0xdc, 0xc7, 0x0f, 0x00, 0xdf, 0x97, 0x92, 0x89, 0x68, 0xd0, 0xac, 0xa5, 0x1d, 0xb2, 0x78, 0x4f, 0x03, 0x94, 0x89, 0x8d, }; static const wycheproof_hmac_test hmac_sha512_1321 = { .name = "hmac_sha512_1321", .hash = SHA512, .key = hmac_sha512_1321_key, .keylen = 64, .msg = hmac_sha512_1321_msg, .msglen = 255, .tag = hmac_sha512_1321_tag, .taglen = 32, .result = 1, .comment = "long message, tcId is 108 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1322 for HMAC, tcId is 109 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1322_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1322_tag[] = { 0xd3, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1322 = { .name = "hmac_sha512_1322", .hash = SHA512, .key = hmac_sha512_1322_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1322_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 109 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1323 for HMAC, tcId is 110 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1323_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1323_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1323_tag[] = { 0xbe, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1323 = { .name = "hmac_sha512_1323", .hash = SHA512, .key = hmac_sha512_1323_key, .keylen = 64, .msg = hmac_sha512_1323_msg, .msglen = 16, .tag = hmac_sha512_1323_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 0 in tag, tcId is 110 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1324 for HMAC, tcId is 111 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1324_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1324_tag[] = { 0xd0, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1324 = { .name = "hmac_sha512_1324", .hash = SHA512, .key = hmac_sha512_1324_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1324_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 111 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1325 for HMAC, tcId is 112 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1325_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1325_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1325_tag[] = { 0xbd, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1325 = { .name = "hmac_sha512_1325", .hash = SHA512, .key = hmac_sha512_1325_key, .keylen = 64, .msg = hmac_sha512_1325_msg, .msglen = 16, .tag = hmac_sha512_1325_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 1 in tag, tcId is 112 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1326 for HMAC, tcId is 113 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1326_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1326_tag[] = { 0x52, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1326 = { .name = "hmac_sha512_1326", .hash = SHA512, .key = hmac_sha512_1326_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1326_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 113 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1327 for HMAC, tcId is 114 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1327_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1327_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1327_tag[] = { 0x3f, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1327 = { .name = "hmac_sha512_1327", .hash = SHA512, .key = hmac_sha512_1327_key, .keylen = 64, .msg = hmac_sha512_1327_msg, .msglen = 16, .tag = hmac_sha512_1327_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 7 in tag, tcId is 114 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1328 for HMAC, tcId is 115 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1328_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1328_tag[] = { 0xd2, 0x9a, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1328 = { .name = "hmac_sha512_1328", .hash = SHA512, .key = hmac_sha512_1328_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1328_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 115 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1329 for HMAC, tcId is 116 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1329_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1329_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1329_tag[] = { 0xbf, 0x31, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1329 = { .name = "hmac_sha512_1329", .hash = SHA512, .key = hmac_sha512_1329_key, .keylen = 64, .msg = hmac_sha512_1329_msg, .msglen = 16, .tag = hmac_sha512_1329_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 8 in tag, tcId is 116 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1330 for HMAC, tcId is 117 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1330_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1330_tag[] = { 0xd2, 0x9b, 0x9e, 0xbf, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1330 = { .name = "hmac_sha512_1330", .hash = SHA512, .key = hmac_sha512_1330_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1330_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 117 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1331 for HMAC, tcId is 118 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1331_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1331_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1331_tag[] = { 0xbf, 0x30, 0x1c, 0x3f, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1331 = { .name = "hmac_sha512_1331", .hash = SHA512, .key = hmac_sha512_1331_key, .keylen = 64, .msg = hmac_sha512_1331_msg, .msglen = 16, .tag = hmac_sha512_1331_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 31 in tag, tcId is 118 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1332 for HMAC, tcId is 119 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1332_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1332_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x86, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1332 = { .name = "hmac_sha512_1332", .hash = SHA512, .key = hmac_sha512_1332_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1332_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 119 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1333 for HMAC, tcId is 120 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1333_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1333_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1333_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb4, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1333 = { .name = "hmac_sha512_1333", .hash = SHA512, .key = hmac_sha512_1333_key, .keylen = 64, .msg = hmac_sha512_1333_msg, .msglen = 16, .tag = hmac_sha512_1333_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 32 in tag, tcId is 120 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1334 for HMAC, tcId is 121 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1334_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1334_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x85, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1334 = { .name = "hmac_sha512_1334", .hash = SHA512, .key = hmac_sha512_1334_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1334_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 121 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1335 for HMAC, tcId is 122 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1335_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1335_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1335_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb7, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1335 = { .name = "hmac_sha512_1335", .hash = SHA512, .key = hmac_sha512_1335_key, .keylen = 64, .msg = hmac_sha512_1335_msg, .msglen = 16, .tag = hmac_sha512_1335_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 33 in tag, tcId is 122 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1336 for HMAC, tcId is 123 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1336_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1336_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1336 = { .name = "hmac_sha512_1336", .hash = SHA512, .key = hmac_sha512_1336_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1336_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 123 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1337 for HMAC, tcId is 124 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1337_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1337_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1337_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1337 = { .name = "hmac_sha512_1337", .hash = SHA512, .key = hmac_sha512_1337_key, .keylen = 64, .msg = hmac_sha512_1337_msg, .msglen = 16, .tag = hmac_sha512_1337_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 63 in tag, tcId is 124 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1338 for HMAC, tcId is 125 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1338_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1338_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf2, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1338 = { .name = "hmac_sha512_1338", .hash = SHA512, .key = hmac_sha512_1338_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1338_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 125 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1339 for HMAC, tcId is 126 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1339_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1339_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1339_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x22, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1339 = { .name = "hmac_sha512_1339", .hash = SHA512, .key = hmac_sha512_1339_key, .keylen = 64, .msg = hmac_sha512_1339_msg, .msglen = 16, .tag = hmac_sha512_1339_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 64 in tag, tcId is 126 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1340 for HMAC, tcId is 127 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1340_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1340_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0x73, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1340 = { .name = "hmac_sha512_1340", .hash = SHA512, .key = hmac_sha512_1340_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1340_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 127 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1341 for HMAC, tcId is 128 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1341_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1341_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1341_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0xa3, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1341 = { .name = "hmac_sha512_1341", .hash = SHA512, .key = hmac_sha512_1341_key, .keylen = 64, .msg = hmac_sha512_1341_msg, .msglen = 16, .tag = hmac_sha512_1341_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 71 in tag, tcId is 128 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1342 for HMAC, tcId is 129 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1342_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1342_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x61, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1342 = { .name = "hmac_sha512_1342", .hash = SHA512, .key = hmac_sha512_1342_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1342_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 129 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1343 for HMAC, tcId is 130 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1343_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1343_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1343_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xd1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1343 = { .name = "hmac_sha512_1343", .hash = SHA512, .key = hmac_sha512_1343_key, .keylen = 64, .msg = hmac_sha512_1343_msg, .msglen = 16, .tag = hmac_sha512_1343_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 77 in tag, tcId is 130 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1344 for HMAC, tcId is 131 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1344_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1344_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x08, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1344 = { .name = "hmac_sha512_1344", .hash = SHA512, .key = hmac_sha512_1344_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1344_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 131 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1345 for HMAC, tcId is 132 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1345_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1345_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1345_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x67, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1345 = { .name = "hmac_sha512_1345", .hash = SHA512, .key = hmac_sha512_1345_key, .keylen = 64, .msg = hmac_sha512_1345_msg, .msglen = 16, .tag = hmac_sha512_1345_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 80 in tag, tcId is 132 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1346 for HMAC, tcId is 133 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1346_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1346_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc6, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1346 = { .name = "hmac_sha512_1346", .hash = SHA512, .key = hmac_sha512_1346_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1346_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 133 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1347 for HMAC, tcId is 134 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1347_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1347_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1347_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x49, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1347 = { .name = "hmac_sha512_1347", .hash = SHA512, .key = hmac_sha512_1347_key, .keylen = 64, .msg = hmac_sha512_1347_msg, .msglen = 16, .tag = hmac_sha512_1347_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 96 in tag, tcId is 134 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1348 for HMAC, tcId is 135 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1348_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1348_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc5, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1348 = { .name = "hmac_sha512_1348", .hash = SHA512, .key = hmac_sha512_1348_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1348_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 135 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1349 for HMAC, tcId is 136 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1349_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1349_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1349_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x4a, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1349 = { .name = "hmac_sha512_1349", .hash = SHA512, .key = hmac_sha512_1349_key, .keylen = 64, .msg = hmac_sha512_1349_msg, .msglen = 16, .tag = hmac_sha512_1349_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 97 in tag, tcId is 136 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1350 for HMAC, tcId is 137 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1350_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1350_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0x47, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1350 = { .name = "hmac_sha512_1350", .hash = SHA512, .key = hmac_sha512_1350_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1350_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 137 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1351 for HMAC, tcId is 138 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1351_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1351_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1351_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0xc8, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1351 = { .name = "hmac_sha512_1351", .hash = SHA512, .key = hmac_sha512_1351_key, .keylen = 64, .msg = hmac_sha512_1351_msg, .msglen = 16, .tag = hmac_sha512_1351_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 103 in tag, tcId is 138 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1352 for HMAC, tcId is 139 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1352_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1352_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x63, }; static const wycheproof_hmac_test hmac_sha512_1352 = { .name = "hmac_sha512_1352", .hash = SHA512, .key = hmac_sha512_1352_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1352_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 139 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1353 for HMAC, tcId is 140 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1353_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1353_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1353_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa2, }; static const wycheproof_hmac_test hmac_sha512_1353 = { .name = "hmac_sha512_1353", .hash = SHA512, .key = hmac_sha512_1353_key, .keylen = 64, .msg = hmac_sha512_1353_msg, .msglen = 16, .tag = hmac_sha512_1353_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 248 in tag, tcId is 140 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1354 for HMAC, tcId is 141 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1354_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1354_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x60, }; static const wycheproof_hmac_test hmac_sha512_1354 = { .name = "hmac_sha512_1354", .hash = SHA512, .key = hmac_sha512_1354_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1354_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 141 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1355 for HMAC, tcId is 142 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1355_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1355_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1355_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa1, }; static const wycheproof_hmac_test hmac_sha512_1355 = { .name = "hmac_sha512_1355", .hash = SHA512, .key = hmac_sha512_1355_key, .keylen = 64, .msg = hmac_sha512_1355_msg, .msglen = 16, .tag = hmac_sha512_1355_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 249 in tag, tcId is 142 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1356 for HMAC, tcId is 143 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1356_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1356_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x22, }; static const wycheproof_hmac_test hmac_sha512_1356 = { .name = "hmac_sha512_1356", .hash = SHA512, .key = hmac_sha512_1356_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1356_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 143 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1357 for HMAC, tcId is 144 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1357_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1357_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1357_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xe3, }; static const wycheproof_hmac_test hmac_sha512_1357 = { .name = "hmac_sha512_1357", .hash = SHA512, .key = hmac_sha512_1357_key, .keylen = 64, .msg = hmac_sha512_1357_msg, .msglen = 16, .tag = hmac_sha512_1357_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 254 in tag, tcId is 144 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1358 for HMAC, tcId is 145 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1358_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1358_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0xe2, }; static const wycheproof_hmac_test hmac_sha512_1358 = { .name = "hmac_sha512_1358", .hash = SHA512, .key = hmac_sha512_1358_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1358_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 145 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1359 for HMAC, tcId is 146 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1359_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1359_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1359_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0x23, }; static const wycheproof_hmac_test hmac_sha512_1359 = { .name = "hmac_sha512_1359", .hash = SHA512, .key = hmac_sha512_1359_key, .keylen = 64, .msg = hmac_sha512_1359_msg, .msglen = 16, .tag = hmac_sha512_1359_tag, .taglen = 32, .result = -1, .comment = "Flipped bit 255 in tag, tcId is 146 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1360 for HMAC, tcId is 147 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1360_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1360_tag[] = { 0xd3, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x86, 0xf2, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1360 = { .name = "hmac_sha512_1360", .hash = SHA512, .key = hmac_sha512_1360_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1360_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 147 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1361 for HMAC, tcId is 148 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1361_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1361_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1361_tag[] = { 0xbe, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x0e, 0x22, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1361 = { .name = "hmac_sha512_1361", .hash = SHA512, .key = hmac_sha512_1361_key, .keylen = 64, .msg = hmac_sha512_1361_msg, .msglen = 16, .tag = hmac_sha512_1361_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 0 and 64 in tag, tcId is 148 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1362 for HMAC, tcId is 149 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1362_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1362_tag[] = { 0xd2, 0x9b, 0x9e, 0xbf, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0xab, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1362 = { .name = "hmac_sha512_1362", .hash = SHA512, .key = hmac_sha512_1362_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1362_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 149 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1363 for HMAC, tcId is 150 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1363_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1363_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1363_tag[] = { 0xbf, 0x30, 0x1c, 0x3f, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x96, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1363 = { .name = "hmac_sha512_1363", .hash = SHA512, .key = hmac_sha512_1363_key, .keylen = 64, .msg = hmac_sha512_1363_msg, .msglen = 16, .tag = hmac_sha512_1363_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 31 and 63 in tag, tcId is 150 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1364 for HMAC, tcId is 151 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1364_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1364_tag[] = { 0xd2, 0x9b, 0x9e, 0x3f, 0x87, 0x80, 0x96, 0x06, 0xf3, 0x41, 0x09, 0xfb, 0xc7, 0x18, 0xd6, 0x2b, 0xbb, 0x09, 0xc2, 0x78, 0xcf, 0x05, 0xa2, 0x06, 0xad, 0xf2, 0x14, 0x63, 0xe1, 0x17, 0x03, 0x62, }; static const wycheproof_hmac_test hmac_sha512_1364 = { .name = "hmac_sha512_1364", .hash = SHA512, .key = hmac_sha512_1364_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1364_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 151 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1365 for HMAC, tcId is 152 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1365_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1365_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1365_tag[] = { 0xbf, 0x30, 0x1c, 0xbf, 0xb5, 0x66, 0x72, 0x8e, 0x23, 0xf1, 0x66, 0xe2, 0x48, 0x65, 0xc3, 0x16, 0xf2, 0x16, 0x19, 0xc7, 0xc1, 0x50, 0x33, 0xcc, 0x6e, 0x8e, 0xbb, 0xcc, 0x8c, 0x5c, 0x5b, 0xa3, }; static const wycheproof_hmac_test hmac_sha512_1365 = { .name = "hmac_sha512_1365", .hash = SHA512, .key = hmac_sha512_1365_key, .keylen = 64, .msg = hmac_sha512_1365_msg, .msglen = 16, .tag = hmac_sha512_1365_tag, .taglen = 32, .result = -1, .comment = "Flipped bits 63 and 127 in tag, tcId is 152 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1366 for HMAC, tcId is 153 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1366_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1366_tag[] = { 0x2d, 0x64, 0x61, 0xc0, 0x78, 0x7f, 0x69, 0x79, 0x0c, 0xbe, 0xf6, 0x04, 0x38, 0xe7, 0x29, 0x54, 0x44, 0xf6, 0x3d, 0x87, 0x30, 0xfa, 0x5d, 0xf9, 0x52, 0x0d, 0xeb, 0x9c, 0x1e, 0xe8, 0xfc, 0x9d, }; static const wycheproof_hmac_test hmac_sha512_1366 = { .name = "hmac_sha512_1366", .hash = SHA512, .key = hmac_sha512_1366_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1366_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 153 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1367 for HMAC, tcId is 154 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1367_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1367_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1367_tag[] = { 0x40, 0xcf, 0xe3, 0x40, 0x4a, 0x99, 0x8d, 0xf1, 0xdc, 0x0e, 0x99, 0x1d, 0xb7, 0x9a, 0x3c, 0x69, 0x0d, 0xe9, 0xe6, 0x38, 0x3e, 0xaf, 0xcc, 0x33, 0x91, 0x71, 0x44, 0x33, 0x73, 0xa3, 0xa4, 0x5c, }; static const wycheproof_hmac_test hmac_sha512_1367 = { .name = "hmac_sha512_1367", .hash = SHA512, .key = hmac_sha512_1367_key, .keylen = 64, .msg = hmac_sha512_1367_msg, .msglen = 16, .tag = hmac_sha512_1367_tag, .taglen = 32, .result = -1, .comment = "all bits of tag flipped, tcId is 154 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1368 for HMAC, tcId is 155 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1368_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1368_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha512_1368 = { .name = "hmac_sha512_1368", .hash = SHA512, .key = hmac_sha512_1368_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1368_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 155 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1369 for HMAC, tcId is 156 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1369_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1369_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1369_tag[] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; static const wycheproof_hmac_test hmac_sha512_1369 = { .name = "hmac_sha512_1369", .hash = SHA512, .key = hmac_sha512_1369_key, .keylen = 64, .msg = hmac_sha512_1369_msg, .msglen = 16, .tag = hmac_sha512_1369_tag, .taglen = 32, .result = -1, .comment = "Tag changed to all zero, tcId is 156 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1370 for HMAC, tcId is 157 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1370_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1370_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha512_1370 = { .name = "hmac_sha512_1370", .hash = SHA512, .key = hmac_sha512_1370_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1370_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 157 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1371 for HMAC, tcId is 158 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1371_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1371_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1371_tag[] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, }; static const wycheproof_hmac_test hmac_sha512_1371 = { .name = "hmac_sha512_1371", .hash = SHA512, .key = hmac_sha512_1371_key, .keylen = 64, .msg = hmac_sha512_1371_msg, .msglen = 16, .tag = hmac_sha512_1371_tag, .taglen = 32, .result = -1, .comment = "tag changed to all 1, tcId is 158 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1372 for HMAC, tcId is 159 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1372_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1372_tag[] = { 0x52, 0x1b, 0x1e, 0xbf, 0x07, 0x00, 0x16, 0x06, 0x73, 0xc1, 0x89, 0x7b, 0x47, 0x98, 0x56, 0x2b, 0x3b, 0x89, 0x42, 0xf8, 0x4f, 0x85, 0x22, 0x86, 0x2d, 0x72, 0x94, 0xe3, 0x61, 0x97, 0x83, 0xe2, }; static const wycheproof_hmac_test hmac_sha512_1372 = { .name = "hmac_sha512_1372", .hash = SHA512, .key = hmac_sha512_1372_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1372_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 159 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1373 for HMAC, tcId is 160 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1373_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1373_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1373_tag[] = { 0x3f, 0xb0, 0x9c, 0x3f, 0x35, 0xe6, 0xf2, 0x8e, 0xa3, 0x71, 0xe6, 0x62, 0xc8, 0xe5, 0x43, 0x16, 0x72, 0x96, 0x99, 0x47, 0x41, 0xd0, 0xb3, 0x4c, 0xee, 0x0e, 0x3b, 0x4c, 0x0c, 0xdc, 0xdb, 0x23, }; static const wycheproof_hmac_test hmac_sha512_1373 = { .name = "hmac_sha512_1373", .hash = SHA512, .key = hmac_sha512_1373_key, .keylen = 64, .msg = hmac_sha512_1373_msg, .msglen = 16, .tag = hmac_sha512_1373_tag, .taglen = 32, .result = -1, .comment = "msbs changed in tag, tcId is 160 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1374 for HMAC, tcId is 161 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1374_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1374_tag[] = { 0xd3, 0x9a, 0x9f, 0x3e, 0x86, 0x81, 0x97, 0x87, 0xf2, 0x40, 0x08, 0xfa, 0xc6, 0x19, 0xd7, 0xaa, 0xba, 0x08, 0xc3, 0x79, 0xce, 0x04, 0xa3, 0x07, 0xac, 0xf3, 0x15, 0x62, 0xe0, 0x16, 0x02, 0x63, }; static const wycheproof_hmac_test hmac_sha512_1374 = { .name = "hmac_sha512_1374", .hash = SHA512, .key = hmac_sha512_1374_key, .keylen = 64, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1374_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 161 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1375 for HMAC, tcId is 162 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1375_key[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x1e, 0x1f, 0x20, 0x21, 0x22, 0x23, 0x24, 0x25, 0x26, 0x27, 0x28, 0x29, 0x2a, 0x2b, 0x2c, 0x2d, 0x2e, 0x2f, 0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39, 0x3a, 0x3b, 0x3c, 0x3d, 0x3e, 0x3f, }; static const unsigned char hmac_sha512_1375_msg[] = { 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 0x0f, }; static const unsigned char hmac_sha512_1375_tag[] = { 0xbe, 0x31, 0x1d, 0xbe, 0xb4, 0x67, 0x73, 0x0f, 0x22, 0xf0, 0x67, 0xe3, 0x49, 0x64, 0xc2, 0x97, 0xf3, 0x17, 0x18, 0xc6, 0xc0, 0x51, 0x32, 0xcd, 0x6f, 0x8f, 0xba, 0xcd, 0x8d, 0x5d, 0x5a, 0xa2, }; static const wycheproof_hmac_test hmac_sha512_1375 = { .name = "hmac_sha512_1375", .hash = SHA512, .key = hmac_sha512_1375_key, .keylen = 64, .msg = hmac_sha512_1375_msg, .msglen = 16, .tag = hmac_sha512_1375_tag, .taglen = 32, .result = -1, .comment = "lsbs changed in tag, tcId is 162 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1376 for HMAC, tcId is 163 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1376_key[] = { 0x14, 0xd9, 0x37, 0x59, 0xfc, 0x28, 0xf3, 0x31, 0x9a, 0xb7, 0x4b, 0x81, 0x67, 0xc9, 0x74, 0xe8, 0x00, 0xf0, 0x32, 0x34, 0x4d, 0xc2, 0x74, 0x7e, 0xc0, 0xf4, 0x94, 0x50, 0x61, 0xa4, 0x78, 0x27, }; static const unsigned char hmac_sha512_1376_tag[] = { 0x68, 0x93, 0x4d, 0xbe, 0x94, 0x8d, 0x9a, 0x77, 0xa5, 0xe0, 0xa9, 0x2e, 0xd9, 0x82, 0x54, 0xfa, 0x3b, 0x6c, 0x93, 0xc8, 0xbf, 0x5e, 0xea, 0xa9, 0x12, 0xb7, 0xdf, 0xdf, 0x76, 0x2b, 0x37, 0x19, 0x2c, 0x5d, 0x85, 0x23, 0xbc, 0xab, 0x9a, 0xd7, 0x1b, 0x09, 0xbf, 0x96, 0xd8, 0x45, 0x41, 0x88, 0xd0, 0x01, 0xc7, 0xf2, 0x07, 0x7e, 0xb6, 0x41, 0x19, 0x9f, 0x57, 0x31, 0xb9, 0xf9, 0x46, 0x69, }; static const wycheproof_hmac_test hmac_sha512_1376 = { .name = "hmac_sha512_1376", .hash = SHA512, .key = hmac_sha512_1376_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1376_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 163 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1377 for HMAC, tcId is 164 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1377_key[] = { 0x9f, 0xa3, 0x71, 0xf3, 0x6f, 0xb2, 0x73, 0xd5, 0x14, 0xfd, 0x62, 0x8c, 0xb9, 0x38, 0x06, 0x7a, 0x4b, 0xae, 0x32, 0xa1, 0x9a, 0x1e, 0x04, 0x5a, 0x7d, 0x6d, 0x7f, 0x6d, 0xe3, 0x75, 0x1c, 0xbf, }; static const unsigned char hmac_sha512_1377_msg[] = { 0x31, 0x1b, 0xbf, 0x72, 0x2d, 0x32, 0x2c, 0xd7, 0xa0, 0x71, 0x0f, 0x48, 0x0f, 0xc6, 0x65, 0x18, }; static const unsigned char hmac_sha512_1377_tag[] = { 0x16, 0x34, 0x5f, 0x6a, 0x6c, 0xa6, 0xe7, 0x8d, 0x4c, 0xca, 0xc3, 0x0b, 0x48, 0xd7, 0x66, 0x91, 0xd6, 0x44, 0x24, 0x20, 0xef, 0xa1, 0x13, 0xc1, 0x5e, 0xf1, 0x27, 0xb5, 0x38, 0xb5, 0xb0, 0x24, 0x01, 0x8b, 0x7d, 0x2d, 0xb4, 0xbc, 0x3e, 0xd3, 0x42, 0x42, 0x51, 0xab, 0x6b, 0x8b, 0x6c, 0x3c, 0xb1, 0x08, 0xb0, 0xbe, 0xda, 0x84, 0x2d, 0xc3, 0xe6, 0x8e, 0x63, 0x40, 0x02, 0x87, 0xe5, 0xcd, }; static const wycheproof_hmac_test hmac_sha512_1377 = { .name = "hmac_sha512_1377", .hash = SHA512, .key = hmac_sha512_1377_key, .keylen = 32, .msg = hmac_sha512_1377_msg, .msglen = 16, .tag = hmac_sha512_1377_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 164 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1378 for HMAC, tcId is 165 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1378_key[] = { 0x63, 0x13, 0xf1, 0x52, 0x6b, 0xc2, 0x20, 0xf2, 0x0d, 0xde, 0x1e, 0x64, 0xce, 0xd8, 0x59, 0x72, 0x79, 0x58, 0x6d, 0x1e, 0x15, 0xaa, 0xd0, 0x5a, 0xd5, 0x91, 0xd8, 0x41, 0xb3, 0x69, 0x28, 0x4f, }; static const unsigned char hmac_sha512_1378_msg[] = { 0xf7, 0x44, 0xfa, 0x39, 0x33, 0xe1, 0x6d, 0x8b, 0xf5, 0x24, 0xaf, 0xae, 0xb3, 0x4c, 0x71, 0x56, 0x53, 0xa9, 0xcf, 0xb0, 0x1f, 0xa4, 0x5f, 0xe1, 0xfb, 0x68, 0xe7, 0x01, 0xfe, 0x14, 0x87, 0xca, }; static const unsigned char hmac_sha512_1378_tag[] = { 0xb8, 0x8d, 0x1b, 0xa0, 0x3e, 0x27, 0x99, 0x20, 0x0a, 0x44, 0x75, 0x50, 0xd1, 0x8e, 0x31, 0x06, 0x97, 0xa5, 0x79, 0x74, 0xf5, 0x13, 0xdf, 0x77, 0xeb, 0x07, 0xbb, 0xe3, 0x15, 0xba, 0x5f, 0xef, 0x39, 0x7e, 0xeb, 0x81, 0xad, 0x90, 0x71, 0x68, 0x0b, 0xcc, 0x6c, 0x70, 0xf6, 0xb2, 0x52, 0xad, 0xe3, 0x5b, 0x4a, 0x40, 0x40, 0x27, 0x9e, 0xc0, 0x1b, 0x86, 0xe4, 0x0b, 0x98, 0x77, 0x0e, 0x39, }; static const wycheproof_hmac_test hmac_sha512_1378 = { .name = "hmac_sha512_1378", .hash = SHA512, .key = hmac_sha512_1378_key, .keylen = 32, .msg = hmac_sha512_1378_msg, .msglen = 32, .tag = hmac_sha512_1378_tag, .taglen = 64, .result = 1, .comment = "short key, tcId is 165 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1379 for HMAC, tcId is 166 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1379_key[] = { 0x1e, 0x22, 0x5c, 0xaf, 0xb9, 0x03, 0x39, 0xbb, 0xa1, 0xb2, 0x40, 0x76, 0xd4, 0x20, 0x6c, 0x3e, 0x79, 0xc3, 0x55, 0x80, 0x5d, 0x85, 0x16, 0x82, 0xbc, 0x81, 0x8b, 0xaa, 0x4f, 0x5a, 0x77, 0x79, }; static const unsigned char hmac_sha512_1379_tag[] = { 0x23, 0xd4, 0x82, 0xa0, 0x5c, 0x90, 0x7e, 0xeb, 0x34, 0x6b, 0xa9, 0x8f, 0x83, 0xdb, 0x0f, 0x63, 0xc2, 0xad, 0xfb, 0xd5, 0xb2, 0x94, 0x0f, 0x33, 0xc7, 0x96, 0x4c, 0x7f, 0x17, 0x99, 0xf1, 0x80, }; static const wycheproof_hmac_test hmac_sha512_1379 = { .name = "hmac_sha512_1379", .hash = SHA512, .key = hmac_sha512_1379_key, .keylen = 32, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1379_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 166 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1380 for HMAC, tcId is 167 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1380_key[] = { 0x6f, 0xa3, 0x53, 0x86, 0x8c, 0x82, 0xe5, 0xde, 0xee, 0xda, 0xc7, 0xf0, 0x94, 0x71, 0xa6, 0x1b, 0xf7, 0x49, 0xab, 0x54, 0x98, 0x23, 0x9e, 0x94, 0x7e, 0x01, 0x2e, 0xee, 0x3c, 0x82, 0xd7, 0xc4, }; static const unsigned char hmac_sha512_1380_msg[] = { 0xae, 0xed, 0x3e, 0x4d, 0x4c, 0xb9, 0xbb, 0xb6, 0x0d, 0x48, 0x2e, 0x98, 0xc1, 0x26, 0xc0, 0xf5, }; static const unsigned char hmac_sha512_1380_tag[] = { 0x1c, 0xf9, 0xd2, 0xc9, 0xc1, 0xb5, 0x5a, 0x45, 0x19, 0x0b, 0x5b, 0xeb, 0x59, 0x0c, 0xd4, 0xcc, 0x95, 0xe3, 0x85, 0x3d, 0xf8, 0xaa, 0xf9, 0xf4, 0xfe, 0xf9, 0xbb, 0xbb, 0xd7, 0x24, 0x35, 0xff, }; static const wycheproof_hmac_test hmac_sha512_1380 = { .name = "hmac_sha512_1380", .hash = SHA512, .key = hmac_sha512_1380_key, .keylen = 32, .msg = hmac_sha512_1380_msg, .msglen = 16, .tag = hmac_sha512_1380_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 167 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1381 for HMAC, tcId is 168 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1381_key[] = { 0x18, 0x6e, 0x24, 0x8a, 0xd8, 0x24, 0xe1, 0xeb, 0x93, 0x32, 0x9a, 0x7f, 0xdc, 0xd5, 0x65, 0xb6, 0xcb, 0x4e, 0xaf, 0x3f, 0x85, 0xb9, 0x0b, 0x91, 0x07, 0x77, 0x12, 0x8d, 0x8c, 0x53, 0x8d, 0x27, }; static const unsigned char hmac_sha512_1381_msg[] = { 0x92, 0xef, 0x9f, 0xf5, 0x2f, 0x46, 0xec, 0xcc, 0x7e, 0x38, 0xb9, 0xee, 0x19, 0xfd, 0x2d, 0xe3, 0xb3, 0x77, 0x26, 0xc8, 0xe6, 0xce, 0x9e, 0x1b, 0x96, 0xdb, 0x5d, 0xda, 0x4c, 0x31, 0x79, 0x02, }; static const unsigned char hmac_sha512_1381_tag[] = { 0xd1, 0x27, 0xb7, 0x38, 0x5b, 0xad, 0xf0, 0xc7, 0x6f, 0x2b, 0x3d, 0x8a, 0xa9, 0xc7, 0x22, 0x33, 0x35, 0x92, 0xe0, 0x1f, 0x46, 0x2f, 0xed, 0xd3, 0x5e, 0xc6, 0x64, 0xa6, 0xf6, 0xd5, 0x2d, 0x74, }; static const wycheproof_hmac_test hmac_sha512_1381 = { .name = "hmac_sha512_1381", .hash = SHA512, .key = hmac_sha512_1381_key, .keylen = 32, .msg = hmac_sha512_1381_msg, .msglen = 32, .tag = hmac_sha512_1381_tag, .taglen = 32, .result = 1, .comment = "short key, tcId is 168 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1382 for HMAC, tcId is 169 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1382_key[] = { 0xdd, 0x1e, 0x0b, 0xdb, 0xb6, 0xb6, 0x08, 0x62, 0x17, 0x64, 0x84, 0xf3, 0x66, 0x9d, 0xa5, 0x31, 0x45, 0x5f, 0x1c, 0xd7, 0x14, 0xf9, 0x99, 0xc2, 0x9f, 0x08, 0xb8, 0x51, 0x05, 0x5f, 0xee, 0x8d, 0x72, 0x18, 0x6d, 0x37, 0x6c, 0x23, 0x6f, 0x4e, 0x16, 0xcb, 0xa7, 0xa2, 0x5c, 0xba, 0x87, 0x9f, 0xb2, 0x75, 0x3d, 0xec, 0xa4, 0x45, 0x9a, 0xae, 0xbc, 0x6f, 0x6d, 0xe6, 0x25, 0xd9, 0x9a, 0xf3, 0x30, }; static const unsigned char hmac_sha512_1382_tag[] = { 0x7e, 0x4f, 0x7d, 0x84, 0x4b, 0x3b, 0xa0, 0xe0, 0x25, 0xb6, 0x6d, 0xe7, 0xcc, 0x62, 0x27, 0xbc, 0x50, 0xd4, 0xe1, 0x74, 0x93, 0x02, 0x51, 0xbf, 0xff, 0x3d, 0xf3, 0x6c, 0x39, 0x00, 0xb5, 0xb7, 0x6b, 0x00, 0x09, 0x5a, 0x89, 0x6d, 0x0f, 0x96, 0x84, 0x2e, 0x37, 0xb6, 0x13, 0x4d, 0xf4, 0x07, 0x60, 0x30, 0x76, 0x99, 0x53, 0x4d, 0x66, 0x70, 0xf1, 0x38, 0x97, 0x4e, 0xe1, 0xc5, 0x8d, 0x94, }; static const wycheproof_hmac_test hmac_sha512_1382 = { .name = "hmac_sha512_1382", .hash = SHA512, .key = hmac_sha512_1382_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1382_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 169 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1383 for HMAC, tcId is 170 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1383_key[] = { 0x43, 0x2b, 0x31, 0x1e, 0xbc, 0xfd, 0x46, 0xec, 0xfc, 0xd3, 0xcc, 0x70, 0x6e, 0xbd, 0x05, 0xc7, 0x87, 0xdf, 0xbe, 0x18, 0x55, 0xfd, 0xcf, 0xce, 0x8d, 0x50, 0xc9, 0xa0, 0x0f, 0x72, 0xb6, 0x5a, 0x8d, 0x42, 0xac, 0xec, 0x33, 0x5b, 0x4e, 0x07, 0xd5, 0x44, 0xc9, 0x2f, 0xd7, 0xb1, 0xd3, 0x85, 0x43, 0xac, 0x6e, 0x0f, 0xc0, 0x4c, 0x26, 0xd8, 0x8d, 0xe8, 0xdd, 0x97, 0x4a, 0xf6, 0x9e, 0x24, 0xd7, }; static const unsigned char hmac_sha512_1383_msg[] = { 0x36, 0xb1, 0xfb, 0xe8, 0xf1, 0x33, 0x5e, 0x7c, 0x03, 0x99, 0xc2, 0x47, 0x30, 0x90, 0x64, 0x20, }; static const unsigned char hmac_sha512_1383_tag[] = { 0x2c, 0xfb, 0x68, 0x8f, 0x30, 0xb1, 0x05, 0x34, 0xda, 0x93, 0x77, 0xa4, 0xb3, 0xfb, 0xee, 0x1d, 0xec, 0x16, 0x1c, 0xb2, 0x88, 0xac, 0x8b, 0x75, 0x87, 0x93, 0x83, 0x8b, 0x45, 0xab, 0x95, 0x39, 0x79, 0xda, 0xdf, 0x27, 0x81, 0x7f, 0x47, 0x7c, 0x9e, 0xbf, 0x23, 0xcf, 0xdc, 0xba, 0xcb, 0x60, 0xb8, 0x10, 0x38, 0xe0, 0x8b, 0xc4, 0xfc, 0x31, 0x80, 0xbd, 0x2a, 0x1e, 0xe8, 0x05, 0x97, 0x6a, }; static const wycheproof_hmac_test hmac_sha512_1383 = { .name = "hmac_sha512_1383", .hash = SHA512, .key = hmac_sha512_1383_key, .keylen = 65, .msg = hmac_sha512_1383_msg, .msglen = 16, .tag = hmac_sha512_1383_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 170 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1384 for HMAC, tcId is 171 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1384_key[] = { 0x17, 0xf7, 0x20, 0xf0, 0x9d, 0xf5, 0x97, 0x2a, 0xf9, 0xb9, 0xc6, 0x3e, 0x10, 0x04, 0x32, 0x84, 0x60, 0x89, 0x00, 0xd5, 0x0b, 0x79, 0x55, 0xdb, 0x3b, 0x4e, 0x26, 0x79, 0xcb, 0x41, 0x20, 0xbe, 0x2c, 0x9b, 0x9e, 0x2a, 0xa1, 0xa5, 0x74, 0x3e, 0xb5, 0x19, 0x79, 0x28, 0x22, 0xc3, 0x26, 0xb4, 0xd8, 0x90, 0xb5, 0x55, 0x4d, 0x1c, 0xb0, 0xeb, 0x71, 0x08, 0x1b, 0x75, 0x69, 0xa2, 0xf0, 0x4d, 0xf7, }; static const unsigned char hmac_sha512_1384_msg[] = { 0x57, 0x16, 0x7c, 0x25, 0x24, 0xa5, 0x52, 0x89, 0x68, 0x7b, 0x83, 0xa4, 0x0d, 0x3a, 0x69, 0xbc, 0x90, 0xad, 0xc5, 0x3a, 0xd2, 0x47, 0x02, 0x0b, 0x88, 0x89, 0x7f, 0x9b, 0x95, 0xd1, 0x51, 0x6d, }; static const unsigned char hmac_sha512_1384_tag[] = { 0x4f, 0x70, 0x26, 0x7b, 0x98, 0xfc, 0xeb, 0x4f, 0x66, 0x29, 0x01, 0xbd, 0x18, 0xfb, 0x4c, 0x81, 0xac, 0x16, 0x42, 0x81, 0xdd, 0x0e, 0xce, 0x43, 0x02, 0x8a, 0x3c, 0x2a, 0x65, 0xca, 0x21, 0x3a, 0xed, 0xf1, 0xbd, 0x20, 0x7f, 0x09, 0x39, 0xbd, 0x87, 0x9b, 0xbe, 0x20, 0xfd, 0x09, 0xcd, 0xeb, 0x20, 0x24, 0x6e, 0x65, 0x39, 0x76, 0x6a, 0xdd, 0x08, 0xb3, 0xad, 0xc5, 0x14, 0x3d, 0x2b, 0xd9, }; static const wycheproof_hmac_test hmac_sha512_1384 = { .name = "hmac_sha512_1384", .hash = SHA512, .key = hmac_sha512_1384_key, .keylen = 65, .msg = hmac_sha512_1384_msg, .msglen = 32, .tag = hmac_sha512_1384_tag, .taglen = 64, .result = 1, .comment = "long key, tcId is 171 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1385 for HMAC, tcId is 172 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1385_key[] = { 0x8a, 0x0c, 0x46, 0xeb, 0x8a, 0x29, 0x59, 0xe3, 0x98, 0x65, 0x33, 0x00, 0x79, 0x76, 0x33, 0x41, 0xe7, 0x43, 0x9d, 0xab, 0x14, 0x96, 0x94, 0xee, 0x57, 0xe0, 0xd6, 0x1e, 0xc7, 0x3d, 0x94, 0x7e, 0x1d, 0x53, 0x01, 0xcd, 0x97, 0x4e, 0x18, 0xa5, 0xe0, 0xd1, 0xcf, 0x0d, 0x2c, 0x37, 0xe8, 0xaa, 0xdd, 0x9f, 0xd5, 0x89, 0xd5, 0x7e, 0xf3, 0x2e, 0x47, 0x02, 0x4a, 0x99, 0xbc, 0x3f, 0x70, 0xc0, 0x77, }; static const unsigned char hmac_sha512_1385_tag[] = { 0xe1, 0x65, 0x7f, 0x44, 0xbf, 0x84, 0x89, 0x5e, 0x6d, 0xb0, 0x81, 0x0a, 0x2c, 0xca, 0x61, 0xa6, 0xe1, 0x05, 0xe1, 0x2e, 0xc0, 0x06, 0xf0, 0xb5, 0x96, 0x10, 0x20, 0x30, 0x1b, 0x57, 0x74, 0x4e, }; static const wycheproof_hmac_test hmac_sha512_1385 = { .name = "hmac_sha512_1385", .hash = SHA512, .key = hmac_sha512_1385_key, .keylen = 65, .msg = (const unsigned char*)"", .msglen = 0, .tag = hmac_sha512_1385_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 172 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1386 for HMAC, tcId is 173 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1386_key[] = { 0x28, 0x77, 0xeb, 0xb8, 0x1f, 0x80, 0x33, 0x4f, 0xd0, 0x05, 0x16, 0x33, 0x74, 0x46, 0xc5, 0xcf, 0x5a, 0xd4, 0xa3, 0xa2, 0xe1, 0x97, 0x26, 0x9e, 0x5b, 0x0a, 0xd1, 0x88, 0x9d, 0xfe, 0x2b, 0x4b, 0x0a, 0xaa, 0x67, 0x6f, 0xac, 0x55, 0xb3, 0x6c, 0xe3, 0xaf, 0xfc, 0x7f, 0x10, 0x92, 0xab, 0x89, 0xc5, 0x32, 0x73, 0xa8, 0x37, 0xbd, 0x5b, 0xc9, 0x4d, 0x1a, 0x9d, 0x9e, 0x5b, 0x02, 0xe9, 0x85, 0x6f, }; static const unsigned char hmac_sha512_1386_msg[] = { 0xba, 0x44, 0x8d, 0xb8, 0x8f, 0x15, 0x4f, 0x77, 0x50, 0x28, 0xfd, 0xec, 0xf9, 0xe6, 0x75, 0x2d, }; static const unsigned char hmac_sha512_1386_tag[] = { 0x33, 0xd5, 0xa2, 0xd1, 0x99, 0x8a, 0x58, 0x68, 0x49, 0xee, 0xbf, 0x81, 0x34, 0x72, 0x84, 0x85, 0xfc, 0xfc, 0x71, 0x24, 0x8f, 0x4a, 0x98, 0xe6, 0x22, 0xf8, 0x3b, 0x96, 0x78, 0x44, 0xc4, 0x0e, }; static const wycheproof_hmac_test hmac_sha512_1386 = { .name = "hmac_sha512_1386", .hash = SHA512, .key = hmac_sha512_1386_key, .keylen = 65, .msg = hmac_sha512_1386_msg, .msglen = 16, .tag = hmac_sha512_1386_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 173 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /* Test 1387 for HMAC, tcId is 174 in file hmac_sha512_test.json */ #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) static const unsigned char hmac_sha512_1387_key[] = { 0x21, 0x17, 0x8e, 0x26, 0xbc, 0x28, 0xff, 0xc2, 0x7c, 0x06, 0xf7, 0x62, 0xba, 0x19, 0x0a, 0x62, 0x70, 0x75, 0x85, 0x6d, 0x7c, 0xa6, 0xfe, 0xab, 0x79, 0xac, 0x63, 0x14, 0x9b, 0x17, 0x12, 0x6e, 0x34, 0xfd, 0x9e, 0x55, 0x90, 0xe0, 0xe9, 0x0a, 0xac, 0x80, 0x1d, 0xf0, 0x95, 0x05, 0xd8, 0xaf, 0x2d, 0xd0, 0xa2, 0x70, 0x3b, 0x35, 0x2c, 0x57, 0x3a, 0xc9, 0xd2, 0xcb, 0x06, 0x39, 0x27, 0xf2, 0xaf, }; static const unsigned char hmac_sha512_1387_msg[] = { 0x7d, 0x5f, 0x1d, 0x6b, 0x99, 0x34, 0x52, 0xb1, 0xb5, 0x3a, 0x43, 0x75, 0x76, 0x0d, 0x10, 0xa2, 0x0d, 0x46, 0xa0, 0xab, 0x9e, 0xc3, 0x94, 0x3f, 0xc4, 0xb0, 0x7a, 0x2c, 0xe7, 0x35, 0xe7, 0x31, }; static const unsigned char hmac_sha512_1387_tag[] = { 0x88, 0xd5, 0x79, 0xc2, 0x80, 0x19, 0x05, 0xb8, 0x18, 0x07, 0x0c, 0xce, 0xbd, 0x2c, 0x71, 0x92, 0xf9, 0x7b, 0xb3, 0xe7, 0xac, 0xdc, 0xaf, 0x61, 0x3c, 0xec, 0xc7, 0x4d, 0x0e, 0x41, 0x12, 0x32, }; static const wycheproof_hmac_test hmac_sha512_1387 = { .name = "hmac_sha512_1387", .hash = SHA512, .key = hmac_sha512_1387_key, .keylen = 65, .msg = hmac_sha512_1387_msg, .msglen = 32, .tag = hmac_sha512_1387_tag, .taglen = 32, .result = 1, .comment = "long key, tcId is 174 in file hmac_sha512_test.json", }; #endif /* defined(WITH_HMAC) && defined(WITH_HASH_SHA512) */ /*****************/ ATTRIBUTE_USED static const wycheproof_hmac_test *wycheproof_hmac_all_tests[] = { #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_0, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_1, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_2, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_3, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_4, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_5, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_6, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_7, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_8, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_9, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_10, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_11, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_12, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_13, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_14, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_15, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_16, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_17, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_18, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_19, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_20, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_21, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_22, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_23, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_24, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_25, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_26, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_27, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_28, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_29, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_30, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_31, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_32, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_33, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_34, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_35, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_36, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_37, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_38, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_39, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_40, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_41, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_42, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_43, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_44, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_45, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_46, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_47, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_48, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_49, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_50, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_51, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_52, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_53, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_54, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_55, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_56, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_57, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_58, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_59, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_60, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_61, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_62, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_63, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_64, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_65, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_66, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_67, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_68, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_69, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_70, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_71, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_72, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_73, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_74, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_75, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_76, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_77, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_78, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_79, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_80, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_81, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_82, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_83, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_84, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_85, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_86, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_87, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_88, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_89, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_90, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_91, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_92, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_93, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_94, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_95, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_96, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_97, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_98, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_99, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_100, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_101, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_102, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_103, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_104, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_105, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_106, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_107, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_108, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_109, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_110, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_111, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_112, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_113, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_114, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_115, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_116, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_117, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_118, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_119, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_120, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_121, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_122, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_123, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_124, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_125, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_126, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_127, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_128, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_129, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_130, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_131, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_132, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_133, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_134, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_135, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_136, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_137, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_138, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_139, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_140, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_141, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_142, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_143, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_144, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_145, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_146, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_147, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_148, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_149, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_150, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_151, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_152, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_153, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_154, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_155, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_156, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_157, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_158, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_159, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_160, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_161, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_162, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_163, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_164, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_165, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_166, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_167, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_168, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_169, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_170, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA224) &hmac_sha224_171, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_172, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_173, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_174, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_175, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_176, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_177, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_178, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_179, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_180, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_181, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_182, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_183, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_184, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_185, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_186, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_187, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_188, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_189, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_190, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_191, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_192, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_193, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_194, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_195, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_196, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_197, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_198, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_199, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_200, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_201, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_202, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_203, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_204, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_205, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_206, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_207, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_208, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_209, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_210, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_211, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_212, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_213, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_214, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_215, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_216, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_217, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_218, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_219, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_220, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_221, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_222, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_223, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_224, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_225, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_226, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_227, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_228, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_229, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_230, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_231, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_232, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_233, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_234, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_235, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_236, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_237, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_238, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_239, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_240, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_241, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_242, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_243, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_244, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_245, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_246, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_247, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_248, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_249, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_250, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_251, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_252, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_253, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_254, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_255, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_256, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_257, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_258, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_259, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_260, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_261, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_262, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_263, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_264, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_265, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_266, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_267, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_268, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_269, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_270, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_271, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_272, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_273, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_274, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_275, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_276, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_277, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_278, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_279, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_280, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_281, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_282, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_283, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_284, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_285, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_286, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_287, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_288, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_289, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_290, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_291, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_292, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_293, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_294, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_295, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_296, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_297, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_298, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_299, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_300, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_301, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_302, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_303, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_304, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_305, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_306, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_307, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_308, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_309, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_310, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_311, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_312, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_313, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_314, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_315, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_316, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_317, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_318, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_319, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_320, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_321, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_322, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_323, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_324, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_325, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_326, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_327, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_328, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_329, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_330, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_331, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_332, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_333, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_334, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_335, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_336, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_337, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_338, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_339, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_340, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_341, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_342, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_343, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_344, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA256) &hmac_sha256_345, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_346, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_347, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_348, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_349, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_350, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_351, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_352, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_353, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_354, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_355, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_356, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_357, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_358, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_359, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_360, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_361, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_362, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_363, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_364, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_365, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_366, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_367, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_368, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_369, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_370, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_371, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_372, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_373, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_374, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_375, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_376, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_377, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_378, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_379, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_380, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_381, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_382, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_383, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_384, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_385, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_386, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_387, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_388, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_389, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_390, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_391, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_392, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_393, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_394, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_395, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_396, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_397, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_398, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_399, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_400, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_401, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_402, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_403, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_404, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_405, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_406, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_407, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_408, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_409, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_410, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_411, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_412, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_413, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_414, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_415, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_416, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_417, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_418, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_419, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_420, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_421, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_422, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_423, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_424, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_425, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_426, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_427, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_428, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_429, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_430, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_431, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_432, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_433, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_434, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_435, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_436, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_437, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_438, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_439, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_440, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_441, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_442, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_443, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_444, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_445, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_446, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_447, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_448, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_449, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_450, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_451, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_452, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_453, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_454, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_455, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_456, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_457, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_458, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_459, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_460, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_461, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_462, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_463, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_464, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_465, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_466, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_467, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_468, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_469, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_470, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_471, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_472, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_473, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_474, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_475, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_476, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_477, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_478, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_479, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_480, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_481, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_482, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_483, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_484, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_485, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_486, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_487, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_488, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_489, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_490, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_491, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_492, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_493, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_494, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_495, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_496, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_497, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_498, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_499, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_500, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_501, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_502, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_503, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_504, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_505, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_506, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_507, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_508, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_509, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_510, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_511, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_512, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_513, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_514, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_515, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_516, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_224) &hmac_sha3_224_517, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_518, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_519, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_520, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_521, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_522, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_523, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_524, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_525, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_526, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_527, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_528, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_529, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_530, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_531, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_532, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_533, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_534, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_535, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_536, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_537, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_538, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_539, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_540, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_541, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_542, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_543, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_544, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_545, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_546, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_547, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_548, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_549, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_550, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_551, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_552, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_553, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_554, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_555, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_556, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_557, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_558, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_559, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_560, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_561, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_562, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_563, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_564, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_565, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_566, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_567, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_568, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_569, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_570, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_571, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_572, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_573, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_574, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_575, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_576, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_577, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_578, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_579, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_580, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_581, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_582, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_583, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_584, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_585, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_586, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_587, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_588, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_589, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_590, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_591, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_592, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_593, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_594, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_595, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_596, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_597, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_598, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_599, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_600, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_601, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_602, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_603, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_604, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_605, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_606, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_607, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_608, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_609, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_610, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_611, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_612, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_613, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_614, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_615, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_616, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_617, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_618, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_619, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_620, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_621, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_622, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_623, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_624, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_625, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_626, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_627, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_628, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_629, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_630, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_631, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_632, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_633, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_634, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_635, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_636, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_637, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_638, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_639, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_640, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_641, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_642, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_643, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_644, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_645, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_646, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_647, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_648, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_649, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_650, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_651, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_652, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_653, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_654, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_655, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_656, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_657, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_658, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_659, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_660, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_661, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_662, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_663, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_664, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_665, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_666, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_667, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_668, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_669, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_670, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_671, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_672, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_673, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_674, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_675, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_676, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_677, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_678, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_679, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_680, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_681, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_682, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_683, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_684, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_685, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_686, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_687, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_688, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_689, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_690, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_256) &hmac_sha3_256_691, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_692, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_693, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_694, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_695, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_696, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_697, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_698, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_699, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_700, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_701, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_702, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_703, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_704, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_705, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_706, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_707, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_708, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_709, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_710, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_711, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_712, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_713, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_714, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_715, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_716, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_717, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_718, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_719, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_720, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_721, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_722, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_723, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_724, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_725, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_726, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_727, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_728, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_729, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_730, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_731, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_732, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_733, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_734, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_735, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_736, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_737, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_738, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_739, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_740, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_741, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_742, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_743, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_744, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_745, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_746, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_747, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_748, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_749, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_750, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_751, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_752, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_753, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_754, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_755, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_756, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_757, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_758, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_759, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_760, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_761, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_762, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_763, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_764, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_765, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_766, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_767, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_768, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_769, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_770, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_771, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_772, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_773, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_774, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_775, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_776, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_777, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_778, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_779, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_780, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_781, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_782, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_783, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_784, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_785, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_786, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_787, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_788, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_789, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_790, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_791, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_792, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_793, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_794, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_795, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_796, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_797, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_798, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_799, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_800, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_801, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_802, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_803, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_804, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_805, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_806, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_807, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_808, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_809, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_810, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_811, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_812, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_813, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_814, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_815, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_816, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_817, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_818, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_819, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_820, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_821, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_822, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_823, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_824, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_825, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_826, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_827, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_828, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_829, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_830, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_831, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_832, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_833, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_834, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_835, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_836, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_837, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_838, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_839, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_840, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_841, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_842, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_843, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_844, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_845, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_846, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_847, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_848, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_849, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_850, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_851, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_852, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_853, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_854, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_855, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_856, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_857, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_858, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_859, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_860, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_861, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_862, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_863, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_864, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_384) &hmac_sha3_384_865, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_866, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_867, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_868, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_869, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_870, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_871, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_872, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_873, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_874, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_875, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_876, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_877, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_878, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_879, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_880, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_881, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_882, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_883, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_884, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_885, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_886, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_887, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_888, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_889, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_890, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_891, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_892, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_893, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_894, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_895, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_896, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_897, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_898, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_899, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_900, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_901, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_902, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_903, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_904, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_905, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_906, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_907, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_908, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_909, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_910, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_911, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_912, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_913, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_914, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_915, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_916, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_917, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_918, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_919, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_920, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_921, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_922, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_923, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_924, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_925, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_926, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_927, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_928, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_929, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_930, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_931, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_932, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_933, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_934, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_935, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_936, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_937, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_938, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_939, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_940, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_941, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_942, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_943, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_944, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_945, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_946, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_947, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_948, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_949, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_950, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_951, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_952, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_953, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_954, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_955, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_956, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_957, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_958, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_959, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_960, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_961, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_962, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_963, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_964, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_965, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_966, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_967, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_968, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_969, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_970, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_971, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_972, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_973, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_974, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_975, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_976, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_977, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_978, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_979, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_980, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_981, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_982, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_983, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_984, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_985, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_986, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_987, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_988, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_989, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_990, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_991, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_992, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_993, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_994, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_995, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_996, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_997, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_998, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_999, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1000, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1001, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1002, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1003, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1004, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1005, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1006, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1007, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1008, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1009, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1010, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1011, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1012, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1013, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1014, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1015, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1016, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1017, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1018, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1019, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1020, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1021, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1022, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1023, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1024, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1025, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1026, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1027, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1028, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1029, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1030, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1031, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1032, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1033, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1034, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1035, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1036, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1037, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1038, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA3_512) &hmac_sha3_512_1039, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1040, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1041, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1042, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1043, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1044, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1045, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1046, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1047, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1048, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1049, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1050, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1051, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1052, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1053, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1054, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1055, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1056, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1057, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1058, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1059, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1060, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1061, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1062, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1063, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1064, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1065, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1066, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1067, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1068, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1069, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1070, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1071, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1072, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1073, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1074, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1075, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1076, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1077, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1078, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1079, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1080, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1081, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1082, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1083, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1084, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1085, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1086, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1087, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1088, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1089, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1090, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1091, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1092, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1093, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1094, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1095, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1096, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1097, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1098, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1099, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1100, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1101, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1102, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1103, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1104, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1105, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1106, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1107, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1108, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1109, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1110, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1111, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1112, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1113, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1114, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1115, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1116, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1117, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1118, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1119, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1120, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1121, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1122, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1123, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1124, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1125, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1126, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1127, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1128, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1129, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1130, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1131, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1132, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1133, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1134, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1135, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1136, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1137, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1138, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1139, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1140, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1141, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1142, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1143, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1144, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1145, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1146, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1147, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1148, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1149, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1150, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1151, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1152, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1153, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1154, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1155, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1156, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1157, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1158, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1159, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1160, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1161, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1162, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1163, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1164, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1165, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1166, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1167, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1168, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1169, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1170, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1171, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1172, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1173, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1174, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1175, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1176, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1177, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1178, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1179, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1180, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1181, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1182, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1183, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1184, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1185, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1186, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1187, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1188, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1189, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1190, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1191, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1192, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1193, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1194, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1195, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1196, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1197, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1198, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1199, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1200, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1201, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1202, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1203, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1204, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1205, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1206, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1207, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1208, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1209, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1210, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1211, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1212, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA384) &hmac_sha384_1213, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1214, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1215, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1216, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1217, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1218, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1219, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1220, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1221, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1222, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1223, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1224, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1225, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1226, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1227, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1228, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1229, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1230, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1231, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1232, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1233, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1234, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1235, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1236, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1237, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1238, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1239, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1240, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1241, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1242, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1243, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1244, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1245, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1246, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1247, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1248, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1249, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1250, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1251, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1252, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1253, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1254, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1255, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1256, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1257, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1258, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1259, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1260, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1261, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1262, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1263, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1264, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1265, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1266, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1267, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1268, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1269, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1270, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1271, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1272, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1273, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1274, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1275, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1276, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1277, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1278, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1279, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1280, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1281, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1282, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1283, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1284, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1285, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1286, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1287, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1288, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1289, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1290, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1291, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1292, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1293, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1294, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1295, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1296, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1297, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1298, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1299, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1300, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1301, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1302, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1303, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1304, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1305, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1306, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1307, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1308, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1309, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1310, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1311, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1312, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1313, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1314, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1315, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1316, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1317, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1318, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1319, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1320, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1321, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1322, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1323, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1324, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1325, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1326, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1327, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1328, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1329, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1330, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1331, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1332, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1333, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1334, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1335, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1336, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1337, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1338, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1339, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1340, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1341, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1342, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1343, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1344, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1345, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1346, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1347, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1348, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1349, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1350, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1351, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1352, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1353, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1354, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1355, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1356, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1357, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1358, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1359, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1360, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1361, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1362, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1363, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1364, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1365, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1366, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1367, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1368, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1369, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1370, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1371, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1372, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1373, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1374, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1375, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1376, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1377, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1378, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1379, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1380, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1381, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1382, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1383, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1384, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1385, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1386, #endif #if defined(WITH_HMAC) && defined(WITH_HASH_SHA512) &hmac_sha512_1387, #endif NULL, }; #define NUM_WYCHEPROOF_HMAC_TESTS (sizeof(wycheproof_hmac_all_tests) / sizeof(wycheproof_hmac_test *)) /******** HMAC tests extracted from hmac_sha224_test.json hmac_sha256_test.json hmac_sha3_224_test.json hmac_sha3_256_test.json hmac_sha3_384_test.json hmac_sha3_512_test.json hmac_sha384_test.json hmac_sha512_test.json is 1388, skipped = 0 **********/ #define NUM_WYCHEPROOF_HMAC_TESTS_IMPORTED 1388 #define NUM_WYCHEPROOF_HMAC_TESTS_SKIPPED 0 #define NUM_WYCHEPROOF_HMAC_TESTS_ACCEPTABLE 0 #define NUM_WYCHEPROOF_HMAC_TESTS_VALID 528 #define NUM_WYCHEPROOF_HMAC_TESTS_INVALID 860